kernel-rt-debug-devel-4.18.0-522.rt7.311.el8 E>E  HOEEEEeQ{K U]")nqkJ[%44Bqsi2:NQ-M>M@i8t[۸#=ݤ1X U^Ѓ n}!&~*`RP1A~խes ;_-d@oR凌-gc60-2<}K+=k`|]s4j._@Ib>Yef,cAҨs)D*6@L`eko,N w8gSdWyQ|0e/A%V*uϻNqR-㘍~aL;q.7uj^k/їa:}#-sQ?םYzLk+&Q^1ܣf$4uK|J6RU 5C` F]b{2!?D*,aUm& ie4;4i]I==}ċ|?`>D[6ޱXLCpt,YFWW`*vdff687ba3367c6b92473998edbcba124a558e24c0c7d66b34755a0b7d485ffa47c00e6935fd68d8e6c5282e59d7b35dca31faf170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300328ba349a41ab0c10a7a2ab858410c870cd179adeb320a5361573171701f285a3adfb43c980dbef73bfb100620c611c02306a13e0eafb88dfbf11b220e64db8d835febb98d73ea636840aadc1246516d28c9751c317a7c113306a56bffdafdb9dad0302047c435bb500683066023100a4c165c1ac04b42b0747bcdb0b3bc01885f2ebffa15c5648fe5f9b075a1d4c6e619f70a7a51164521c539b3e88bf9204023100fc7240fa5b89cce3699e5a9a06820f9697ac43c20de36637b841d2b671b1d842f7653aaac3cfcdcb8eda7c2bc748e4b40302047c435bb500673065023100d3982fc1effe740a05a4b3ea2ba42d1fa81bccc7277daa5968ac067f16752eabf69ccaca45b35d95858f388dbd581cf1023031eaad06fced20b425938c9c3af9c0f88917ee2cc6da9434849ff765fcc258a34090dc648bfbb0d9ebc671d906c069470302047c435bb5006730650231008b120ca037bff25f94092439b4b934d254270318411c80dd0cc12482bb61abdf2e3797429fcd839817d754859600da9a02304c1a1b128131ea220d515a965c8582992ffe0dea93dbd4e0b3118431f6b5309bedbb846d9eea41c52c14af638f94d1b80302047c435bb500673065023100b81809c2912aab133ddccfc1bf216f55f45e1fc01e66392322482552312c787c1dc1c74d0ef18b3f479c181b13d98b8c02303c8982b4dceb2537a48dc1c8d1e5086a8fcb09fd56b2abfd7c7221d53f8b0ba793b6b3a27f7a4525771a2a9165d885280302047c435bb500663064023050481ad126050445131cf6360df82ce6fb1e50592d9d11fbeca853b5a3d849fe416f9c6b72457496e8d60fac106500ac02303d6a568f605875491d0bbf036a6fab5ce37ce44129cc5ed6bc4666ebbec3d75a75298a01bac54baeb81365726f19ac390302047c435bb500673065023100dbb345c61923af39c37f91e6b1deb827dec985b7da6f2a38e761446cc2c5e20dc4ca34bae6d01803643c4f2f91647d1a023036f5f5646094c3507176f6f2286a79f1264378d6c77b8b051deb6272a5f1ab3e49d0cfbc31bb43c17b6a95e5c06d65650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029b67b4f8f5909acd0450f17c0e5add3a345f5d09736bd0e111537d8b88fa87904f3ccc6621aad595877490ac059df05023100d17b2ba6ab4c03e045372130a80491fd8118c302e8453bb73a4ddf8b7a1d7d1ca819153e00445702d431f0fbf22fdaa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbe336c12523c69f3e3ae47de752a8929a00d590a6e1fad626018e42c7af7381922d53bbbb86a14419f43e7a7d451454023100f6af1a0c68adc1660b6d28aa1230f7fddaec96c1996f0a9c3822da80cff1734fbcd95b5f03bc5c97f4242b01d7b4a0130302047c435bb500663064023046feb9d9c03d19480ec995290f5ed675028808f5fc4e3ccea97cf98309f09d8e991c7ab2729ddd9b34048249ec67d26802307d8de35646206dfb00dc80875794559b5b05a6754316cba7b9a0ab34e86bfb080e3b10ada1500d6c12029de666e985580302047c435bb500683066023100811444d9909577ffc86fd7aadf477ce6612a0b5ba39c1d6044359424232429fd4f88e1cb346082114163c88cd6f5b3d4023100d97ee0bc198f2b6f52ce82274784a42f5342d198defcd9bb9a7b54fb1bab98caec232179492200152e4f2f1b4388a0200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ef91c50f888bde054d57b5f7f9808a7cd4d328a2f50f75ad1c22e39f77891f6a577666e7918b5f08db39c3f8e3c62bf02303011cac73f4e982ce5ed168ec0ec626f463018b0aba79d239d2bd6dcb9f439b856403d04336a364ae0680ceea04b139f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008e0b9cb1d40ebf5d9fb88e1364261de0157ef1ffb8302a884bffb8a1f423d38a23796b30237b748c2f5b92f403f9dc602300b7506aece9791c7d0372c6500a122854bb5d0736e0b45322a4ef9a73940085da630f6dd6a68732488f1060a9d20eb6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d932461dcf4e418f2954ad372e93207172dbc5f73897caa0b6a1d7f4b5feb313b572654a8ce695df021d4f300efb12ec023100ef5a0d7d2278595a23d7c4923a40e6deb7de3ae0b7f5e3bbaebb23a9cba0003d19da3d22a47821e25714047a4a85b1a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302803a47838fb6e70c7b9cbf103519906fbe6640ad38834407c05360fd1d5fb9969e3a0f0053ce45c5e848e801e81b8da023100c9208b4f20994eeb66b3214a31b202fe9df29e3c32198c5fdc51c06e4ba2a3d813d9d697b55ed57414102419ebf72f290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230150216636a72e40a642b0e72c9aaa39d0fd0558444163baf8267669920c9fb074871e808806e766219d504d9d908861702301e99c7419811e68f365e55af7e937df7edbc7a11e1494ec2a2f5f2237c449c959d0d3f0aa8050dddad5765a5ff30e3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bef768600f5ad7167d75c6b2b9c0f4bb86a0e49178aa7cc8b1d35fef654b3da2f148b102da109b8224b5e7f3b5baa7a02301bdeddba55f3619a554ca7d12b444b01b0c2f20667feb67051ac969f8a4c5e50d7fc3cbc7aaee027ff01a571576e09c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230155e70826278bec79ec922eea5ff31040f22eb1d1df59ac3f3fb368c2e28edc625718741a1c40c5a8c983453c121322002310097f60bf2d60b42d6f5c6b62dcccdcf375a8df7178e5010b0959228c59a690e5bd946b6703c374f58bfcda354bd49d2a40302047c435bb5006830660231009de40aad4ffadbb3d0f97c7b8b7e465a77fcb615c20ecb2b7113aae9cde1580518dba63cb654e646b4b161e19edca776023100c3feedff71150488694e86c5c0021738c84f916f7040182b9be6a4cfaf1299172b49305295b0d37dd3fb365072a6a69b0302047c435bb500673065023057a74a48d637f2448d4de76dc6b018ac4a683544ff81ebb68f61f65dd02d58196640686b54c9bab2a3124e5ef4d02eab023100b9c493d2e0085f695c60ba51bacc77c9333af757be514e74b2623f9e0eb615fb5c526128c72dcae297df75713f8b02e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf54d5eb53bbbd1ccb332bc7b647c095d828f23aab8f82e167e503936e68f3a2c935785b59e67b602ffba1868adcc826023002d865ddc9604b6e70e3900c465a2e41bc80892a32f2f1c7b254dcddf521647241fb0b4edea05579963547c88a6dcf010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c4804eab4070ade9f33c696415b5664821468fbcf7c3bf4ec0f8ccc26f38d7964e6745cfca5b4b32dd04e6c0062adbd023062dddef0832ff8053bd3c61d1ad54f7b5b42043dc6533d0de02b4e0e96d64a5c8b055213ac60ef6f66fa0d1189e4f9700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093e74b735f84df45ee48a2a4dc6218cec079823d7f01963040ab46357f87ce55c5939fde389d152269a332ee5800fabc023067c72ef561193f381d1689a9345aec7d342cb88ff386dbba3f105f424ebad700ea335386e08feeabd74fad5faf7e73ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230597a373af636085e5fd89224ba3a9b2761eeb800c74cd95c00ad4e91e21efbdcfc2e8657d2507807bf0ae08d2c8359cb023100e7c7fc7600afae37cb760dbb5a1443e58817b8b2fd5a2c1200c32b1e49fcd66a3f526bc77f07ab0e2d48fac37467b71b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061f79e2df25ad7e57726a3c825303c666724b358a0ff66ee73747a3c89943b629f77d4900cbe5a2ffcd16b9daba4f10102307ac2dad3d7b59e5babc6ebb2466ee97a1eec44a8382ae654af745dd72296a389dbc370efac311a03f7a585c41998aecf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7d3dd67d7b9c1ec52995efffc03f0fdc3e8dbd85d7d34be0b214edc4b11f93ef1bea05ae3447af6589ae27dbf3e23e80231009ed9353c9fb2f84974e2cd73033ec287f92360b79fa39c46a314a41c0c4eec82e20111edcdc1e5c36f7f6f15c99495920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fb52c4757e2f9af693c38c6f44f02ffa839116dc75c0a59d9b954843c52d631b63d80c52acca03c04387cff0522bc376023100cbe7fadaf8421ad970661d88325a97aa424ef0ee14cfb4e475743ac151532eb9f7e07e4b055ee0d7ef113489e289b2990302047c435bb50067306502303dddd602886f54fbfb0558ec3b8372ca9631674cc4f51dc848a8a31e2b67318e826179889753b0e28f78ec8f3e7690f9023100e67a190648738969e0767944012ea3574503f3e870d98f0df6429feff8957efcc05b99ae96472cb919c9ae87c7eead450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304f1f69525f3b2ab0dc0c4e0fd4f98c65c1c99e9bc0a7b3c4ea016deecb446542cc5e41a1ba94d32f734c321870979b1102307e920994ab5a3dc9b95989196ef7b62552c0a47a5071b3b208e153f50426c6701cd950eb3ee39c2732014627cf2fa6260302047c435bb50067306502307c6d9d44d43fd8305ead45147e321fd308ccac8316ff6f5c7aa8b4b5a6d01893bdebc91941eb989dc571cdcac0ca57a202310086ac3b2ac77ff2f46691a6a3f83828a90a5634b25f9e2ed81e8a00dbd78eefcc4d4869bb07816fa2ab5e74b4407a9bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f0021798fe2b66e62b8d97796a00b9336135bb5ed71c16a9e4dc0c2ddac02d7a7e1f9bc0c16838873b03cd18eade711602307e7f0702dfc3e8af69c1a1ebf5ce74d681a156adf0fb27d98d6c773924898cf61d62ee4f033cb912f8118cdbc22bd46e0302047c435bb50067306502301b4df54407cf6e2669f43529fba9d490f71ea8fd4eaf74faeb1e3a1ec9070549042bdc82f59af96bd32607e1d34b7ba30231008ee74ad64c23fe77b1e66e51ab5c559a1ff3b20cb30388d2e8fc98301c071d245f363505c106a0ba36a889959c1490a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305929453e328a874df9a138748c892f01ca9325657725eac810b78c643d0296ef42c1feda303c6401283ce3d5c89ee2eb023100aa30f66b46126fe8dc0001203f9e7a59d8338fc78d00a4eb4461592b06480dabac0d67c03e2e2d14d00268d9deec83fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd923538e155ac4d8247ac84521a005cb3b862c2f1f9859b58e19a8feab0c487bfc8b7db71a0bbf075ec46fd6063abbb0230113c1e8532143ab65256ee90cc172b79c5c0023921759c103e8a388c4a5486f55beac915b1f47f55f0baf92f6752d7a20302047c435bb500673065023100c080f48daa22e7b2652bb5e3962d7c5bca1fbed717d4198fd41fcfd28062b6912863f3c3e3e1348bbe37899edf5ddfd902307debb01df7eb97e856c562624df0f8b1c08924e18c5d7ba37f7605e01c21ea352fc24df4309043d9af2e49d43fad180c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a661c997376292a31c0c7e7ca413292438a4d1e493357b80f6a62b73d9aaa3c432b97e4455e0f71b220f6c2d07ce3648023100a344ee93adac6089935188871740d2f5237894efc726fbf01e8c44a8eead4ed8841479aa2eb2f92dd9e4fc38483427230302047c435bb50067306502303ea7d7483a422639f1a6afc27002778e6c26b049db6b7f1e5edeff1d2e3839066bc27830aa2f1b279a45055ac5be417d023100c898f7c56ca38257ffcae512e80488e45478b3ef52ae56b80aac69921df6fe7ce94ed983ca3937405f6dd31a98f24e4c0302047c435bb500673065023078885bcc213bc58c297c7133fd1c9a777ff34e408fe5ef0534d12a0238f5d6e0edcabaa821dd9eb71d46f7cab58db62f02310088774b12dcc10666b98c795705fef24cb5ff968b4e0b58ddaa95e167585972e299e3fc0cb0a031faa5ceaf60d339f5350302047c435bb500683066023100a400542fffa269e755eb8147584eb3e34803568339d813f6776542fc6713db036ea5286cb8d88288a9f30d9780564514023100e413db5a9a667e1cec0a11324f0a15b4473e2bed071273c81e5e8b8935950051ad82c62b645e1c3e8d6273e26b4d9f7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310085ae9a6bfa4143b1fdb17bce99e7c3750f9388d8c3137fcaf5269ea5678bde73f668f9d869116960b0ba493492ef5f58023100ba06aae9db487c827e96f1236e93d711fcfc4734c5c43d453e5bcec403d12cb6bfe216cbd6ba1cc1342348a57beb1c770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230314258309f3ee0b3fdc077c0aa810e5895b7f54a7bcd26d0ac26cb6369891c46655eeb00f26ab7d4b2b62eea4684962302305ec1de0d490397489c8e0994b1e6ac3dc1759e0bc00833aa835ac5e58b0e579ceaab6d171d49c43365f24b4ad25069e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023049514bdcae9d8275b5d3718535b39d78831bfe4120a37a0c9597fc04017c4c496a74cfedbf85abbd50b494a6293a6bb002306313dd033a1fca8e32ecc3da6a1ca552505ce348a56c7d1d9a9e9b37a3b47cd37e77f3fd10dc34add55a9dcd89c8b2d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a874b29e41fcff5ab1753f25d28744f410550dccd39fc20ddbe48c7076b9f409794f0c5b40fafa8adfe3283e92a901e023100d182546dfba88bbc844a4eedd06b51d5884dcb7c54665e60462dd5de57a7dfd82aa78f585a2e8fc6912579261edbfec50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a78bd7b58b531920faae1f0de255aa63da5f20e4a05b3878ebbec86602caf2c28f2dd25d8958de93418c07810dd32e8b023100a90c7a8dca4dfdd33a394454d51e0a09f391501c06ec9908d79a9241f0a00139efcdc5a6c0fe17d1b481da9a0adb409b0302047c435bb50068306602310084b4c9f59efa24ee0face7da18bef74bb42bae05c097986eba1740c0b439e380777de72981f3f540f629f29c8daed7c6023100fc94f8cb783232e23665aca19131302fad672ae2b54985bf8d3b01d9144359f1647815788524231f130db6d8ce2317b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aadf85ed3785a3fce481268cd39297f3ce333595571e4298c3cdb93adae4cff0b0a5ae6b675832c641102b148aa2f0b8023100f0a6e7757cad69ac65f9fc9a1d657f2e4de432a69f20c82e6ebd1aee10e905a0eedce126ffe5fea79c2e803ea1ce92b80302047c435bb5006630640230145d96ebb89a57a60ef651c9c742ad7e2392ddedddb761bbe312d27cd87c1dc472b0429c2d2e98fd656840fdc77d282e023031229d82d0b744e2eed8485726e8209058c10728229a9574f9674d96b7dd717e1d531451563c61f1f8bed9d918246e3f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae36e3393bd350f5411ec43d70dee1edf1b491e8937a19e452c02be13f413908df49636a2c3449b1d743358bd791b27f023100ca9cf5bb8c771802e714b4049c09b2f9cd9ac969ab6572ab34572bfd18398e38bf955eaf6077bd231266339d604572ef0302047c435bb500673065023100e1f9b5fda10349900ccdd71638dca7f4823801ad3350487cca2b70e2c2296cce9a2050acd080fa88a3b0f890f69757c20230771b75324d27979d8e068a812ad76acbb098fab6d890ff9c71dbc7db9073e9e16608ab870f76741a60c23ace276e02100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088ad7072b9c352a5bb0a1cb9a7c11684191f59dcbacfa2c4ce76433659e3d46ff34c6be1f4ce22ce24a4d3ab86aab856023100df1878e1b173a61809c0113d1b81dfd4704b99ef9ee587a40d7c720abe96e3b1b496732cce58f4c5e7a946fcb6b131f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015b6e7f14e0ff4547a49d95dd508696b119bcd5f406636b9be6eb2f263d0a7e3e277b16150f0b8f77d07acec3731359c023100eb5c783e83a23ceb96ff183db10776cf3a573c28d2041569c716b92cd5befd57c6cac17e94af486cddf14901d4d4dea20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032bc240c9fc31683295e998d59050a72ca5252716cf1ace5559eb7de078ca4bfd6397009fca33151a86ed19b521928ac0230150fec236df770904c9b67d5d856c478a4e8b4d77325afd53757c1fed9e38b58d1964d560f38275b6f62a58edff3f48b0302047c435bb500673065023100dffdb99321f67ea6e2b07de769bd2aa72624e3f6b403c91ab2779cd07867a47c765e1fb262932d8c42c1b2b80d939e2102302d872fdabbd05f122a2210c44f2f6cd0a8829d7cfc5e1bf3ec717187ba4a3c9ed244cfb6c1dd9215fed953f751bb43aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f48f58efdab2fdd67310c4847bad441801f18619a96de20d95c4e08d866a883c541be7223f5c33a07da19b46200c546202302408eb505853c0d6a5f934c5af68154848f90e871d623c9ea958a23be7c7d37f682312dccb5884089cc24f3efca58a7e0302047c435bb5006730650230033b39ed4cf51bd9603786e8caa362b076542fb07b033c9c8da1d9ff80cd3b4f916cd264981f7051d20ba9fa0e4cd033023100c964bd659023172334c95abfaa1a8d66f5ba49913000560b73f502270576f53bb0e26e33e242fba5f58ce14d2dd3c5620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070e33e2f553f9e2f6c1410baa59001741d55fb35bd430d259b8d6f90ccba7167aade31dfcbfd9d929772db0fe7e7c72f023100efa456a2871cc866860274e7cd2f636bcfce6c0aa9a5991ac200910c7aefa3e573831b5ec614416e98495b9e09ababd10302047c435bb500673065023100d7d69b60a45814feaceb5531dcfacb9326ada68dbd5bd8aa43f1edf07968087ace0d277d9db2ae1426b35fdf87ae15c202306e91625d19ed532b4b97e2ccf43bb81f0ed7dc274641ad64ee2d71bc20a3a6b343c8b0a7657168f7dd2768f5185174970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb9b46ab3238c154eae659a572d1788d848f885afb0fce508f89c0fa0360cc914200ddcecfa1119ff8412d7f8818892d023100e6b07703961ff0bcc6301a9961192e7f8bcbcc3e32616edeb97488658fbe0b36cac06b0be642a77eb05f49a6fa35381f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c20b6e9e6c97e22c16c2f0b28c8141e2cf532f505b751e05dfeef4a60dfe6a4f69eb328f28f5fb154eafc30d0bc5013002310091dec806bcfc4eea8f23b66198e629b1465522d70a520672f80bfdf8f801e4f7592cc9a4d6c2a514fd7c2f1b7365dc460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012ac28442a2ff8d6fcb8b48c5eb3983aab78ffd197247580517ae1941cf9869974d46e6df7ad910d51743f3ec395acbc02302a48e3c50d55f525e6c34337160c1809b2e45dc7709719a72c91a4652a11df2612c05136581a3320e0b7d30aaa9cd1ae0302047c435bb50066306402301d3211bcd654f657ae2dcf5e594637bff2e3fb6355a0980bfe40c489f361480ce2524c2af40746de4d151e839ac3995b02300c5314b8fdf945b7ff3d1a2f9767d95db155196c59bb014814efea33931ae375c72222916f25e42de183dd9fe542698b0302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100825f1744795907556bafaf34e6a4110e0bd13f5bce313bd5c9c2d232bb6f79436d4f247a4cb09514ceca78bbd37cf1f6023066431b248fcbb1e0d15bc9f6687c7536659ee3e5d7bdfaa18ee1bba970a5ae44e6ab14e4a243e558d1eec30d74443c5d0302047c435bb500673065023100f10595996c0c645e9c6f2041bc42304f6066bf01e389ceeefedd1f28f785566a7147430aa45f8b0a4daa691636e3df3b023004cc97040d2d278b7c93f8a90eaeafd701c2b469046fcb10f698b3218f01e9950d173119803e0c58700c7ba171bc14c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0c47922466bf41317202108fedf63a474ce701fddcff128e85f493fc02db78553b4cfa04a309c48e171846b0cc74cfe023100a4c54e137f438cf95dcc465536d62737b62830b8b04728d2e4147281bd9c378b4eee07bcdfd4726d0b60fa19fa62719e0302047c435bb500663064023005dc7ba210c190ffe5db34f48f6412fb7742080c86a8afea067f2f1c247062117b67146f58ef8859fc0adb582b086cfc023023cd3c18144a57a7342bee1e7774a36e31be6de48d4a05d7f9502080bb5b98f96f73aa41d4e4038c0cdb608f4d3708d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cda8deccc234c38c2229379514e83b8b2d2cb4b2d8dd9d66a7f05c4515f188afb234bfee57ca98d663feae258a249b9b0230389de7f67fbce91e31ac71fd6b48617b9f795db251709f2eb011490690d4389a59aa3b9cc0dd36021875f3088d0c2bd80302047c435bb500683066023100c4667fd543c6086bdbed8eb9c7038c88941db631891640d0baec3a0c26bc5748dc957539f3c18bb166baaf0f91e71aa1023100fce01130aad4407e168062e5060082a4bbfb7daa55ff3fb1602d4068577e724c043d28ab0f0751e83167ddd4385ae3f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302958b2c9f431db3cdc722e819fd4ffdae0e4c6a299001540b9d49cd19223313b39beeac1c41ebe4e56a639049012447802301e69caf8c3f2f4027763883435aebfed8a88cbc1b68b696c7390cc68996e5c6c58c2ac0767ac97c21e07a4be38d35f540302047c435bb50067306502304ea6c489a19dd47282442377115c8f0ba33fa8a43ed1f852cb4f06d02dd01a3bf22b7b70c3027e79cf4a94927f353bd4023100844e90b01550a581e129aceaaa64b5bcbc9f14a8e7740a5a56c60971d55dc894b4907c5f2f58f563e2effde32d25790e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041829dd67856d766a8b4c4598858452de65e4bdefcf636c55ec8f0b71cf795ce24c1e0d0fcb9bf9f9d5c3659ca39f36302307f1cbfe37434c9cd36e775e426a6cac1e1d3db996cc9e632bad729635998369dd40ff032e80c7092a5688311cd4652220302047c435bb500673065023059819691488aca9918690d53a29cd30217a4d4a1b6d08aa847f6d32114a114aa84219bb77318d666e114b5e1b1ef8944023100cbf013a364cc0b5015c4a62c600c7719321493c2dac16c74d18c11b6dbd30469e797d4cd8a917b684ca994608f574ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230789c9d6caa84f4deefe2dfcc0de83515676f8843d6cae71db7e809c17307a2dc42bcf32c4ffa0a4172f4f1f3163db9a5023100897695b15a8a43a6ecfe5eed61ecb54f24e658fd4d43cac678af989bc30e7c2acb7cfe9c22528b6dbcc2f5004cee80f30302047c435bb5006730650230545a73f202dd8c122d41dd71deb6099a382aa4891fe45dc26473eced5023b08954497fc084d0f40e324915e1141c47d6023100fd72ab20f9676b0d1a5de9d7842a3ea03f73ddb375f36f45bc828c021014ab269df1b20ce67dcd89390e4bbcf50791630302047c435bb500673065023100e1f94a04e3c7814e0c5c80df620da9e88be35972489f072dcb386358962cd792d0739ccc356195ac07fca4ae42609bfa0230307db805d389e5e909b6a2df36ea290dcdda03fbf03fcb3e2c43dfa59f15c63239e772a5961081d6c0a543e35c0f00fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a784b4645085dddd71c21e993eb251a7771bd96db0089997164af358ace62308e59568d6e4dd7754236b06046762ee3023100ed7734ac5790c36d78caa5f76c56e45cc1a8ddd420b6abea04099fc8d070b62189514def3a9ffe6eda8e7b0017098bb10302047c435bb50066306402307ef4891c36e19100abb8a0739d4b1fb319b4efb7be77a00cf0176e3e4e76672bd538e1ad377c0a418d217459d100e78702306bb7cfda8a25f547ea019a3e4333224b84c628ecf096695e217d95897fb8dc9e99042d27e1860d8dfb9c905476814fd60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074f040c1e716d6be0399ab6a9da601eea050960ebcdf134176625f78b8c52c585809a8c2121b211bb4725238a74f3bfa023100d0215bbf2c421eee9b5762130dfaa8036ef1c508d054bfeb2393705c9fbff000e420ebd1c367c8d68239e2ba0b2655dd0302047c435bb50066306402305ee06504e7bef869c69ff8d0c6e3a5516c61d07122abeff3ffa2577fa471941232f4b8da2fdd7ed573670ce2cda214a202307134cac1a4e6d7831f90552877d55940183e3c5c235f4729544fbd952f106faef83d15871b0a39024feab93b2e50cc710302047c435bb50067306502306b717e451772b15ef7974b1c41d7c9b48a324e2c21fc358104078a5e559b7d8d91ae76072790f508eaae012d81e648540231008a68acc63a4dd3af9e1ae55529bf8d05371ed22d1b18f1189f26ddd3ff9a19ec3666cabddd257f11066c1693bc820c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230669485549c1eb6b0d168416b58516e53d33f21e16d37784b3aa650e1167550c4af91232f7f622dd5f2c975320aefd8e102301dd94a385facd661e275682bb563c0bd37de15a376b3e52d3b5b6c8df3b1d03fe69f7a4d766616e5ba540bde3581d6890302047c435bb500673065023046bbe975e6626fcd7fb8e309b7cf68f6abaa4edf187c42c17f10d5c92de61505154dc9628471195f9c388c0d0f4f641d023100f9a877458850e8fb26597a8186a7a488c712a5a2fc4d358edcc1730b0da1219ceac7148b71bf12f55cab41762537ef1f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306092f84f6d3b3ad889998a2bbd58cb024a6e9bc4bc82df4607b72c64bd2b69f62c2df27d7be0e7c3ff11c129795e680c023100af963ae10ced79f72b2e36c2ef2820b07e87eb30c05f344fe2e59f664f3066e63caf01a719b093644ab9a1e9073b29340302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305e98199879b470fd02ebb9a700757289d3c6927943c93b84ca22f235c01cd15b858929a2dcd9995d5fa6f5da6e6249c5023011c81ae63e87063240f8b8b7a752e83998f677001054ccb8e99509a70d75ad2ef423378e76ef825800fa9360148a4b210302047c435bb500673065023100da135b8eea8dd199f1c508e1282bc2679a8f0425b44a16bd265aa05592cf5f3bb733a4c99b5b4c5e0bcce8f62a368af602306184398c890433bcc1c8fd3c88425132ecc2b5aec169b3c32c8a050b905a4c2a90bc542b89c50f921df130a834dc72ec0302047c435bb500673065023015c3b1e81c92aadf59e09bcb72450f10eda6e4b32749cced1f22a583bd191fa156be8a17c9f779f285aa633c5b1561340231008a1c206f74933f7c359db62de50f79ceb472ba6b26949fbade4e23f6eea7df4977de1af5e2d1fd4a1c7f47fb5891e1180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fdf566ba2db968650a6488f6f30f7d68c0c40c496decd04a51632cef1a3178f70ef04e940d85076bbf773a9ab7198b1023100d4ec249983677d06cf039cb4d32522416ce6fe1ebdef0a0dcd9e57267b88837326428f188c9df40219590b395b2c09bd0302047c435bb500683066023100bec624520fd3018520ca70fd231f07942b31aa320c3bdbd14be3e26c95b7de2cc687f00ce79c2131c2b7714d87f6cbd3023100a029e65deaa8d6b1e7de0430f8cfe2f85f7de421fb838d9fd5ba1fc457403640c9caf11b385a9c6df6d00c5cbcd467770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fa7aa09f77e8da2511f086f7fbed86c822e3d695d3c0c89553c54433ab4132aabf73bfb7b9a40f6a4bd157d2be607f7102305d512465d3483a98b72fc49281681d94338862e177f0aeb27a196d690a15ec6c60e0bd638bd7ef1e40193418396ea57c0302047c435bb500673065023100ccd0457fc9bff2250c8874c04360f859ab28acff9667d6e243f71177a972d914ccbbdf46525076042b1b0579fe6cd4a502304e9ccbf62b5119eefb3167e082f557fe984f150666bfedde4fed06d8821d2ad9d85a8cf2e0881debbea9b5f9d9ef801f0302047c435bb50066306402302a82c1f5676d0c872c18267f19b9895ac613258239ff5eadbbb324004e0d4c06fc50b6d74dd932e1b3e8a3ebe97572170230018565f327272054914cc0edf3ddc156f7b62a47606e0779bc0a638a1a398212e1d813fea04bb956e47bd5450467ec3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea5e48f9c4ad9ba5c515e592614e37eee0881140906c6ff4dddb76446f0d0d8fd419f4ebf0fca71a15cd34e1280e95c602306d32bd2e4717cb678bba03af5fd595bb8d30cc36f5e809b56722063e9ee6ece2f057288edb30c10bd87a20384346cd400302047c435bb500673065023031b2c0ccd9580b59098cc3dedb460d6a40f19a6e187ca280bc0af7b96d1197c3fbb60dac0f5e08087e65f12b19280205023100f7c83eca4e29310bbb16c49cd212e6065d86bc684b452b8d3ce0ad9129a7f193931b57c5b7bb8b3c581457dd0447c16f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b610c14f20b0eba9d92d0620e1800cc9aa1940c2cf148fa1919af670dd8c7ec2e4b6e0c28e536b16a3f3f5c6c0d410dd023030b616af31189bd1b2a1c1a964881fa239d34b571403ab05fe6e097ba4787c3af16b27a8246e1498638e26069d8b7d340302047c435bb500683066023100d9b931678c475935775de15d3e39fdc5b1dbd3e2c122681dc3acad5df54904b69716f1423faa57cc76e53a33c4f1fb9402310080cc700f071dc34e97b2c253e807198012e7f22e5a9a77c0cab4b11f6df7b06bfdec52b0a0b7ea47019d2ed2d5c145a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b68649a12b7f6b5a8b21e71bc2a2c84dab85ae12a321317c9f3c930797e1fe4c07fe1af2f5821c27467f41635274ab2023062a87368cdef9fec6667477330d60ddae1f76835db1a8e2a4a564b3ce970324420b1ef1099366fb21486a8e30a082b1f0302047c435bb500673065023100c9ebec5bd814ba8435ae02b2d8317979e51aebd184ed6f2a55d2f902284ab9f26018bd64fd2cb1434e34554a13a92e2a02302559890b47a071b079d0d3ffe51e9667175055622812df81673d7f4fd152121a447a35a141c50fbde0f61145e5d092bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ee89dea71a1cedc96956fb12e9f6b1dbb617f56e31b515303011f4aaed504c5cd9b635af7e7eff1cb0523066de58212023051a2e20d42743cb22e886e5cac25ca6ee9d34c34a47e873d2d8c1b22d78320f646b992f61ca60390231650bd75ef807c0302047c435bb50067306502310094ec036b154cca9e9dfeeadf0c95dc7a83821413501f546a06dc2bfb7e2129e0a06a83259744c7133845d7c5c5c04bee023060a04eeb1b10025851e6e7ea523fe472e71434f9e72eedcfc8bd3bf9bbdfb551d4f90600ef298797f2c8c56b8fe8fdbd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4d30f93176706260307f79a40450f8e96cc69b258b53880cad7bfb7f520537dff08fe2d6712f522613d3756446c920a023071d5fdd1306ceee17e38d007ae748f8156e29c374cbf78004fcac7b0374c06aed201ecea87b9374d485c3296a377f16b0302047c435bb50067306502300eb48f4a6e15b98fe06450f2da1a1dbefc2727007478031287129819ae7f94829016e4bed7059c1d7abbfcf07edcaa6f023100c71ca54c6248b2e0fc03e17385c50f15b48bfa698a9359561013b7e365e9bc04183cf841d37aae3770063af0adec48490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310098bc433a9c441254005e572ad84b3e71faf5259e30b4103c338e01d065bb68ee6e99103eb8a2252a5ad198ff1f6878a10230438a6741a45e4b7ab3394d4b978ebfc1aa8859be21d15c9e498312dba3f177ed4ba038a3ac57d4d1acd8bdc6a3c0cabe0302047c435bb50066306402307bffc4a6c33c53925e9776f996fefbfaed68ae50b57b47934594c0bac8c522f3a28f250aebd18e82e9e2ffc76e77a958023078a446eb5591a784f55c62d58fd6f25ebd0bd17260b6131d5601cdca456a348861ad64f9c141d9cff7672208a8c75b150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f691b2565e102ffa39e3cf0b77dd2ef625e0c5fb90d369a0a3016aadca20658f66040208e3ae5a6360d49d7aafbfb5502310097cd8f71e882ce7915627d3a797d5aa90d8f08e63231e11c55f766239a1aa28864ffd7b354c88bb1a9b630c8d24d24350302047c435bb50066306402300ac0ce381ce892daf821f87243e22547ecc35716447348fdd66cd5c0139cbe606432b5649a3a27c500df1bbf83cc8b310230384f267e81ba5900150b92391a9d64768b0c7c192eb10b3307ae7d696c1a0e6282e19d1d60324556dc6de6c7dbb603360302047c435bb500683066023100c0dfafb609c343811436727dcd21aac7280d2c5c2b797b52987bc896b8b7f1a7b683d745917fb92ab9e9487aa3c8da9a023100ef54534e86cdc4baa4daaeb19d5d09eaa3fc36d0f4ae965ee93fca22fdfd74d07e61093b812d3fd69cd59cc76d65d73c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d2b62776d2a5eff9a1c27d5d9023bd707c8f755e040ec41a9e40fe3c382ba4d645e0412caa7ffa72f665427f9794ba6023100dec6d7e5c3f73b5f97d09cfe7d0d9f603322c44d844340db8c8d8a201d2a745eece01cbbcc35deddee401ab63c1b25d50302047c435bb500663064022f5e3743773ab716dbe695f8607688612e04e216be5da6e82a485f65c6f682dc72fe8ee56d9d053d7988ae123c667bfa023100a17cb7505dfdb4304bae8694bc16d827ce514f1c5567c59abb336b885a00be902dcce6df1b8f126be2bc95c05319532d0302047c435bb500673065023100a4ce7f8af120d2e96d37f0fe8b5e548858310cf5f66b6e969befb67d4278e2978d2e5e51f309f4cb229c1fdc6d701703023073f5078bf328827fe74e21335953c0d4cb9ef7e063c62a626a9923eaf67b2052cdb809fbac4e0612c159f3b17347c5950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230039c3864951952df109af6c77e5af75fc89364db8cb1c695a41a3303263c34521521c2d783d44d487a393650f5581ad602310086da0a1d5a940c2b18c0eaea2200bf01dfd37676b352fa6a575fc7cc4702eab0706609edbd09a7237adb2d70cc91a14a0302047c435bb5006630640230514a91fb7ebf7cee5c80b3aa37a90dd572f34b468ee8dcdce07e0b3738c6925f93c322c4efe60df06b3855af28ac309f0230386ae9f72dfc78a18f00a152fe131c42b84b296451004ff6f496779d2440a99495d1e1230d8058ab84e888f2bc609e4c0302047c435bb50067306502306b717e451772b15ef7974b1c41d7c9b48a324e2c21fc358104078a5e559b7d8d91ae76072790f508eaae012d81e648540231008a68acc63a4dd3af9e1ae55529bf8d05371ed22d1b18f1189f26ddd3ff9a19ec3666cabddd257f11066c1693bc820c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ab682b42ce51eacbde4cb18e2107a5f8b5d26ddbf4daddabedfe1c3d8c2d456bd93aa4c7f9afd7cf9bd79ed0cb9981bf02300beee991d5f7891137a1c400030cdc4c6aff592251f0ee544432cd07fbac16db79427bd1d4c96cce7fead7daf79320780302047c435bb500673065023029649afc93b4db48dab7ba6cc4293335408459ce8544a03726b2081d1f7283b90761317cc68e5c2e0903c416323be3ed023100a7e449ec6e4a87b56b4f62816a4c781c8808d8b42814ee9a4123595f8f14ded39004d7e4d41a7b7bf065138ced29d7e90302047c435bb500683066023100d2233e7b5c2e2692bfaf726c1cfb85dba864fbd1f1f71ff8067d09c8623b6e4d024fd136fb796e29f8ccc0008b2d8dbd023100dc870048560490ee6dfc2ce1f1abba8b87657c2f795bad41de658a2c09599d87161a571babb9137c16008d55ba1441580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230709dec311d7ded9338c8f5fc8e5a5ee3db854e926d6b784f369a9afc795971b73a844c102ffcb29fb225b9f1ed968656023100b695af872ad10c10b3a442f4a47ebb02452ffac3c631575766a0b6ea64f888820c37ea02332a62153ebede07b18a361f0302047c435bb500683066023100fa871c31d08e5c4c67839a68cf356a1bd74ad9a8688d72141a5720c7cc0a96f83668369a847e145e5470617c1268d8f1023100e5159aa5a7dbae24bc0b271620473025e85aa6e512cae5c3d88b09071c756c612360470420629f12fad1362074f7157b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd4f6de05130ec6882456c96b8051f7f319bcaa1800996913b52c99abb637d06628d0e72ab9bb8fb72262755457165ca023100dd702750f9d7114ea7fce0c521025720dc6df71c1a3ba935228e5d25edab70093baf709977d6e7652899b52f717e928f0302047c435bb5006730650230528aaacd93897ff43e23cbff186c78a815b58436bbecfdb63e75e3f9601487f792ba68eff78a07dccad65bcb8f57693a023100db6286583cbdc57582225ffff2003a12d91671a41f178f4a1a4151c5696ea4bc8638a7f7f08f44063addfdabc5e378ed0302047c435bb5006830660231009218d2ec1cfc7a9847fe47a6b39a4463bf775b5fd24bf075c4821597f371b10285223b5e33b5ce065df8dd9d5bc91689023100f233afdbf360c9417f961b1ea4f2e0a5c20a6db17ee8dd7fef0b7c3e44f75ba9790efc0cfa2c9d513e19804d86e191940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e5e2b3c3a74ac1b8cde0403a50f499111e9d5cb6274d2e65e04b311e457ab6c777a58e4b1a3dcd86cfd7960e2941a9c023015e56e3b875a48b88cc359a084ac2f29115193bfe766372e1b13fddf5e1eb333bfaf04129d13f54989afb6c9e53630040302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079eb381337ba6474fad63a4ec129dc5eb71d0fcfd34f16943a4f2c89cf73b693b77851d5c1c248ca61b3a9d97785cb0002303c8ebb7bd9f223c82851730b123f4f7046b8071a9d771e70187d1a61d2adcb83b8c5d8aa6ae41a1a60d4f0c02943e16b0302047c435bb50067306502304ad97c9a748416bc05f6bdb7946ad88406d850e671af8043c1cc94f59af0c5081c1e4707ebaa9c1036349bd48b92ec1b023100afbcf7cb912d36044789e4221c7f2b1ff697abc03c07981f9293b69c746389d4f50e6b11f816df4fe0b5a9895d0c5c170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230360abc871a0dc76ac351a5148d429baf4121a12f846cc32646ff189e7eaee2cc6408f55bcddfc22ac6593f3c854ab0a4023100992fabb099ae8a4be57209f47afba96681f6699cfe73008d9479dcb73a1746a0fa0eb5d0014b1798093f6dcf6d30c4dd0302047c435bb500683066023100e3f5280335330745185bd62a004f7b6694894f5471bcb0c6e591fa9cf91e1645a453df04fec97ef07e3c6055083a4e19023100c163d04327f585e227343139cd11d84d02d158b11151781b2bac24a14ce07d2c38d73ec7e6e5655c752d903fedbbc6790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5adf95d91c89435007ecb1c5dd9982fb51541b1b30bbbb88650586569a98f0cce2f6f63fa3f261900ce6853cfb50fc90231008d4dafe48cfcf3ee53c71c40f04d78408233616cfe056c7d008a63be1a56ed7c8d71c7a03e84639f9c4f393a74a190260302047c435bb50067306502307a2da43b72f83cd6275e2d5d8c23fb86401f2eda88d6700d0cfe52af43a567d7257e168f09eb776d397d2ef6d0a67bec023100ac419d9c451355becfcfd981e13bdb801652d04ec059efd38adc5bfbb36e6988bc9ae5a3567c8a8797aecc0e5a0a31350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd8ae8c68e2b151fff2c7b6773c1e07f2ceff05b63410e017467dbad0d0839642e68c8c281ad46959eeeb5cf9cf5b71c023100d133363b0627b0859b641557979860b83c6ac05d02a62acc86108aee39fd92973e77ef288ab43c1a7cace57901986adc0302047c435bb500673065023001056c0a97d14ed201812bd1334d54bf831d2361ac5bb9f8845bd46e521fd18c61078a4a05e765f4fe876ff7be02160c023100f8ea6f83c178cd776f4183f5406f466c49f010cf605cc6259b59a33804fd79e89737175d59895eb8abc452436b017d160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a441a3c3bd7ee6bd7bd7bc79367ed48d9af154380e2604c5d28181c0dcc3838cf826936aabc00ec624e458cbdd1c4450230291dcf569912b738cb0db2598d42b54c6f8f2b28dfa8ac75791a1c81a80e08acdc65c0e2bf96ef1898fd321364d4fabe0302047c435bb500683066023100cdcf969af32d76ff24ed0410678a3c8236a5724cc588ecf22bdf2c50d19db2f92b703b8697cb713215a6149a5e83a3bc023100f54625d00045f5995b0de29f31fcab0d090101b2074881c738ce600224ddeaf0ae2cefada550b12a0a56852aec34b87d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f10ebdcd9953217da1a4e481decfb6782ab377d55023a4d226a6f79a1b62f3784a68343ddef30289b9c6f81c97934a2c023100b1aa995ffd6509ac340a3df2a073589fede891d93d3ab95b71d1a9128b9fedd3942ea5d36febb4c270e04a4cf834ef000302047c435bb500673065023100bbc43959a276e76c7d196784c1262c0a3a0b5f98be266f3a7bc957c0662e60e50355669007c2f5b75727b583be4f4b6902302bc0400fd28a7025309aa8d9aee1c0e6a7ddbac764916909b03991d351ee8ac1306387ec74c9e751fe33796508ca09210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230176f97440de57322abc59888f993d7ed4bf6d50e41fd644decd6a6169f26a68c4ac743a2bda6bd6e6c909833cf406c7702303640f986f83b18753e73db7998c7314fd4ce0c8b856e747ece63e50e1347248efa30d58ff1f1824bdbb6c0429a0f56610302047c435bb500673065023100c38b4310d91f70c555e7dadfc4559f23d44e44e7cd6a05e9cf851c34fbab2f1717d8d2259555e76f21c459a8f24b802c02302d8750165d48871eda6e2419b3e09b642be6effe27438d860bb7a82ed793aacad4087c1c6bfa50350ec9d9e73b5ff1920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010614fff142bcb8be6b5a62d0ee23ff08be068398c4d4adedb3b2e03cb365c70952b61c059990fa2afd5c06c6e7e35a00230069aadab3e13a28c60afe7738e5c3312265416d5e0d8ea21e6bd726dedbac9f9e129fc516d8943e1c6657ac962eac40a0302047c435bb500683066023100ffd2bf56697ffacbe96027397024b7911b815b27e9ecd6dedc2f41f55d3fc7915698d3342986713be005b8ba29d016f6023100b0164dc3a15ad3393360b9ee35630606de5a7dd9c3c11715d55d06219400b5b148ecf0d165d5bb9d27debcea49516a280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c3d791cd83ca611e7b831e05b078af410ff75d3d3fa542f91ebe0a562c2fa78d6cd37cb5cf15e89ed0967effe992a1bf023100dd961c88610c7a36a0a130ae7413c64a9762bcc6fb031eb9ae3265e6a513746dceaa337d553b23632d7aa55356cfd3ed0302047c435bb50065306302303d2c3b6723e4bf978978297ad2561ff7776b2aa701a40822f93cd48a831f1003c7e87453f260e4cd8df505e4ac8416af022f124c34676e03666b922e39ea036d84be0793423c75c22246ff9fe6e83779205136bf264d1a2846885960bc50ab3c7d0302047c435bb500673065023100bc896753ecb447edb1d506088d3f3751c0c7d9eb7b525b5d5a0ef75a3c80fc7a025fc82c0bc987dd980cd2faf3d1dcff023059694f2f70c09e9d93068e45b2de0915904901fed74e992c9a311c528d28a54260c7046eaf90e5509b2b6efa62f265e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bfc227dfb15b8ed043178e22bd5ee3836b6b114c05bc777deed521236395672c19e74b876e58415ec76bd97deb754c0d023100d1532e2d9b790806fb23b67028dc18bf1d1382c043aa8756fa1a7aab963de448c808c1632cdf144fe2bde10a5818a0aa0302047c435bb500673065023100b868c65602b9ef3275d33de34e55f7667ad52426c0f468f7b9b91e9178934cb28c89562c6fb1a9e23766df10bbcf27cf0230404d273d107ab2f2a154f741d21b67e9ce66f85f1c05ca37d07ae4ec02f6dcbbb92908486d0ee61c5ac8b2f8490fd63c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5a82c55539aa3b057092e6e8a0b5128e88137e7b68b78e854807c1c46c821d264e213f5b121f22a7c23c6bd0bd59ad1023100dd17f0f3cbc9f98a08fa262dc8e72eea4c490ee9c350d26f62765a8c21989e743c1c456371d356a35562a229b5d381a50302047c435bb5006630640230143489298f5142ba10c1f2981c672b858eb1b5fa5f0670cffcd2576f91b68e31ea2fa6ccd02a641ece088fa9a3bfbb9d02303a06b42e4bdcf8b8ebfeb573a3a6753b2b9af95bf4abd6b79936a537986e84200081f753f9145a2e6cfb5194cb0f610c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d07e9b773d94c6e2fe24f78b313a5df9a2e77ec89e857cb5b20e67c6d5f42c3d463e930ddc75270da85849ba690c7535023100f4a6c27d25791a09786d7a62191489ce71c9da1fdebdd75c864b5ebb832c1d1cc84f1d5236c9d13c18b9e9b32bcdcc300302047c435bb500683066023100a9d1bd7cfe78871825e0483ba65ba0c5b82c708dc334c61548f0d770cc06bab90f7ce0251c9071811bfb7fbe034432a7023100902f6ad6362a92df164c52a28970914ebaa23979d2360fa2d5b43a18e6887ef3d8b02894bdd849673c7221e65902046e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076fd0f5bccbb2f917e2d4cb3d6ade2c35e9b1d45b38bd89baed9981795c62192ea283fe7c651f3c1a01b2ea1639f187d023100a02205a23621eb1e2269c105f7b3f659b010b1a486cef92a3f16d65f0921c7e5037260db8732fdbb8bf64f3588b690960302047c435bb500683066023100a06485a26e7496ffa41baac02a9e27ede9b96dbcc69dfaa7b17c5f746a09d29e47e1b4310d277bd3c950b9b8072161fb023100f2db77356e0578b3436d1ed64a3df2fa3ec9e963db25c9b24bbf54f29695037a2a129e596c6ed5e296939546a6d72a550302047c435bb500673065023100f994d42a1c45f2b97f0cf3c4ddafe611e753cdd78d92f770ae35f6a9d719614cab69a6124a29df5e5e62cca1cb18057802307ee7a4b7b2ce16c878d751eaaa79fd4030173a854e388fd9e335e8c5798518fd42244407578e64112b3b85d3cf0ebfd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075f8c36bdef8e95ac90ae895f5985399b133dc12c8548b4cb7a3523231436baa09ab5c112c0febe5615cbe7387dc6da9023100b1d890e955ada1f5dbefd7bcd830427f009ac5928582d158a3b89495af70cb699257347576a84dc012d6e4fb075402020302047c435bb500673065023100876aac1d99892d049398426b7d9ac1ed0e7462063b190c00102e1a26389a820f99b85b47ea38033192efeb164786cc0a02303af980d269a6fdc82c65071da42add1dd70d4fb21febb2e0736db702aefb94e62ece5040e660eb39d1ed9d75ece986b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f29d2bf1a22710281af37008330f49a4674c704fc302ac88e928683d358e3c06f1d63f360a96a0f9a79f633d6a9bb7f502302a8f7f153b4b957dc97646fa7d2b858825e87ba6cb4d039fef7821c58a95a03e625c1ebaba65164fde7bc67ba06ac6c60302047c435bb50066306402307fef5a26ee457b6f44e9d8f444bfe288c4f7d9b3bc3be10540dc945a32281537f8de50652ce276deba7747f23b69a000023022b0c27385cc87baa8063a203de3a7c7070ab0f498ca25dfc29b18cfc8e25d61db1ebbec90630b959462620ee4906a8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230174753d4498a7be87d7c87b4dbc753448e09b966ae8073483520a059802e2d1a34a4c5719855e4dbb2b508957751c09402310098de793fc8c1ad3026cfa1225620ef1d10af876ffb480545654ea83c016956de3a727a94bedbd59854e9faaa028a05210302047c435bb50067306502310082717dd93acd39c8fa4f997f027d6742869e3697080c29b56b815db73d9b987d0da7d41c8e09847aa9d38afc3f166cab0230484de1c3a9d9e8a20a31e4070a020123527978a532fd478d310387ffc2345e4458493cc0cc1b17049fc261099a84d0440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090be107578f321ae124a12c1f0fb3de8483b276b2794156ce668314057d69c273f9aab27708c932c2ce7c3e50d118dcd023100e7644fdf0d434ea2329bf621a2334f6c51f377fd26ecf25bcbd22bee93f831b0ffcf04b326d281c59413f3e8432d6ebe0302047c435bb500683066023100d0dc1a2c38684a00bc5e3f917d3d9468563c98789162dbff2bc47a78d857b578dc28726160e88bd75c978f362e013550023100d3887e85656e9d2aa68e362ef73bb61e975d8a55cfa40a659554133b64c174faa9c1f65c7fe787434fb4b7b59f0fd5410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059ba8f01c20d96ffc73cb2b04c49ba4e7ebecf6ec2e4e1420379b4718b9c809032b8ae222cd6a526a067c5a62f1434f4023100bf46d796d68d823b2e74772b25902a998d860c75cb8eb000ec019a20627c8a99a839b6cd1c5858a3028bcf452d7153af0302047c435bb500673065023100b9bbab210cd2086bdd962c1bfa6020f3672da421bc7d105d0c995e8d43a0f8e1c43fa1a6e1175a910bf4d74f7a2c7fed023003bc5e01710016b6bd03988ae452171090326fe1b8d73ae04c0c483a85d3369037f2da256107a31ad9e22a8ad95eae230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec25868f84e260074970521b0e95c2deccd275dcab64b5720999e5bb5526ebfa5cd7b63377dadeb656b341e5f524b9a60230492b7c724ae141ae69f807cfb86402fef4453421f512ef67b4a3f011de4fd87266b1413652b367eb5341ef8076b7e33c0302047c435bb500663064023036472e4f65d896c21bffa689160955842d424c4fafc8cfb756b6d2f0138d4b57509f50c56ce5361746feadf55ff85201023076c9e8f82a6fad0cdecb90ca99e3990eb8c1dfcffc4cc7b9bbfecd2e45be074a7ee8f89f336402876c8aa135b2c56e060302047c435bb50067306502301c7362ea31631a2b7d9773cd89fae53e3f5f1d0fd045ffcac96a182a9f7e07d884eba0b5c2b79b79e7fe3a71c7553bb5023100a67205d3c17ebf0c33a8c12a5b3a68c95ac0d1a91a1d318c797bb2bf03019a7a6da08f6999496c83ca876f84240b35520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024a3dcc9d9118282f98424c80048e2d2e4006a69703e2541ce6d151cb5400db41eb348fa4ae65743f5d63203d7177c6e023100b80f48a77753171191a8bf845798ce6b0533ebaff9ed740bcd7564a9862ad070e7dbfcd0f562bbc74794ccb313d70fec0302047c435bb5006730650231009e396fcf4f83469e44106b3ac4751d1b3f0582ec9ce034e3d2e65a47420c879dc8ee47821c5135b5a0c87a847b5ac768023004f2e5508e5685d6c4298ccbb6844fe645452a5abfc4d323b4f64ee5309f5b1e9dad8527627ddee6558c9aeebe7e5c740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b465268c770fbebae3a86df20373ee90fde291528cba420fd43209813daad5fca81a3d7c25fb9a24d956e62a48fff5e902306660bd573971f21d1ff25b861a31dc228c4fd54e0dfc702589540c06e4a327d51249bf70d6c2c082e0574927e8b14bac0302047c435bb50067306502310090df06f9499ac1df6c042e92779868ef8f5586777b1983248dd07b0e45bfed386606910db33db5d863e5058906f7d0640230783ff510e4b287c0ec181709229910ac91fd01bfd296f354cdd7350ba5fc8392b616499f91e7578239a5659973165c750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230752e321a98ba312eabf5b5a88ff68dcb9f83c5e91d79531e5df2dd5e75e8e91901ba50d491df4d5bb21f26f46229e8be02305fa30b12edbb6a1b9c934c913e7cbd20e7a2c1f1616068a95afe30bb8acf40f1c2e3bcc005c1a2c9a696516dfa2f0dd00302047c435bb500673065023014ec71914677d88e73e252dc3bdbd392cc7a0c8d4996b0d3ecaa68b3d2a18bc1b9e5a985a41edef70056a435342def56023100d70050f4acffbd15e2cb5def7bcc8e7f844575182fff1aa0303d3fd6a5b90948ac45b4f2c9c7eab397e1332ac345efd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024a3dcd5739adf003727fa13a45863ee4df6bf91d6eb3102c7b9dd503cfe9eac2fef9237d625441269c8727cc48c6ca802310090714eebcad5e9d5e8280c2c56c56e40b023afba62695ab27ba703a0ee28dfa3e083d22e633c245c9fb275c68fa1437d0302047c435bb500683066023100b2e8d9781063f76b30738bb915672602fab5fac7076d27e08cf9bc633191ba71d04d1f37c8c352f9cc7a8ebf05c64cf4023100a3ea4004546b9ca8cb87724335db74d3de2ef968825fb52c07e4971400d6436b2454fcee82a4dffbd286ccb3f6faf2190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c40e694066ed7424296b71ec71772cdca1634aa80d53a2f11b9c6482985d1f082b17d8794a6945d04592076575b944cb02307d94da2ca61d660a14df298350bbf49e1920fe85fa3af9ce1041955961a0c4936983e86522ea5974b6d157abc9ddc1030302047c435bb5006630640230211ee1b9f426ad4d226a51202f50c80aeebb561ec39ceb8bc6d5127e7b34981f99e1913fd523c0ec5b98e0067cf60c550230105dde0dfab3bccae53567fbd6e03325a12fc4a755c5364a941368f20269e5f0ef1995c2ac85a9353f519923b1368f810302047c435bb500663064023067100682f992ec11d290dfc897b3717258f94398d48f3edf4ddd5f83638feaa87000ef2a3db4d255548ed1207d4506d202305510e83d648a8294d2291fd412ffc39663d680def764ba4e14b07208cb1a9173ee761cec6c7e052101b7f99ddeef70bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093679fe38beff76f302e1f4f94d90959bc61a25e34449b40ea53f2de680e8b62b4cff362f1128c186b7055a8d94cf0ce02303598535bd6a6d2521b4fa988a7a8b3b63fa22811d925ebd3ccd141a442b4b7c2c0bdc21d6138b958df222d87f5f628540302047c435bb5006730650230227a7322e6a3a0c132ee0e263960cbe9d8818dbe7a05c3de73f8bf97db54f373bcdd3b476309e1d86caa2a663716de8f023100d6890905c36c2a3b7e6e948de47c9bae1eb2a8b74e855ebea747e09fd1b55b39a2ed4b9c0640655db9e49ed51bf546610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009cf8f2d6be972917e9c794ac7010138dd0f109f57930b4285e5fb5824b26510af56a35ce564b3c12e8418309ebaf0f9a023029cd5d53843bc1213be60dde33a88823a45a88749cce977403a9cce1392b20fcb787be8f019a682f13ce69634b2d07990302047c435bb500683066023100d01fbfdb2ad42c719c42ebc54d2d7207e284ff55de37e4e760eaf1f81e8d601c25a885d6b58551fc012ca9c382d5446f023100fb662908373f393d53357900ad4d1f19647641a87382d353b0b16cc19fa66be5aa624172622067996843907678d3b9360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059e0af7fbf9746932bba811c64fd0f5caa01f8c4d935ae807c3704836f3e12a6f8eb05b18393abc3d2942b78db658b0a023100eebf6d6b1b83fc6865b500bb17f317fe40c5558cf9a5a89ed07d0f15ae5f3a6710d44dfffc81ffba2dbd1e7b8efdefc80302047c435bb500673065023100d646550e616a859d9a3e9739d68d2a36e29e4a648c96344e79edece8255662324153c3ed5ef1539e8bb418c84d733d6d023069dedce4f3557bf3d3bf76dd4b5c359065b4a9c74d1f07628d41962bcad520744d0644698c848010ba9b46bb54561f8d0302047c435bb50067306502307ce3689c66f7d2b0fc14073b34c539fd6eea19f0a6bc76c9f54ed360ad7b1881e8fbe11897bfbb05b4eb04290a8000a5023100cba624a7e226cb0281907917fc3480bb05e11457d2a3db9a88193cca591d7551f19ffcf6b3f542be1ad1033a1f4aff0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dd5de17b85c67c76d09561c684b10d327cc47261a8517068572723116705f26698643cfd8bbcc4d9846bec775b905134023100c3f0663df1b0de8a25621234bc27537e22e678d6a10ba62b7eee469151e51ff65c6eea6e2a138f65cc5b60eec9f5072e0302047c435bb500663064023026dd752d74651e34114e42acc884e9a254317adc615b4d5afcc03995a7960c6981da71355657e6deb16fa74ab785985102300e6f4f0fd3fcb06b1965947e956f6f30d431dcf2cf7e4942835d514b5c3e1701d04619dfd61fb72acba31d6894bfdc7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300430e6f398439b37a48e513126624c4e648a05dc811385982ff57220901f39c75a43f2e566a04ce35d078f523483edf9023021dea3bcdeb07bf137eb18eb671b1b913862dc1363e4bcfc468bc1457ad92a54a07520a1684c18e205b7a767ecd46ce60302047c435bb50067306502304ba923119c8c9e7bd82906b6b2fff94f923cf4102b31c5a9ec3a794ab419294f37d8bab0a3c82338d7ac4f8105a3b419023100c6654ca8ed700524c4475cf078703b4f3169d971e66ec0f267df03bb81717f22fb596d0694a14b4a2ddc16a63b132e240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025542119aa97184b712288174bab11075a9856ff61a0267f25947245f8c8baa6e3d85595e26f0aa527ef7e102091ed5f023100f63336a051cdb0b4704021c3825fea147bd4b0abf64b13b2bbaf6ad9139fc63c51daf14d8069e8913615d63163b1f3e80302047c435bb50067306502305257d8c4d0725c0785d6d578aff677b00254abac3927e89ffac5c38533b36a9bbb80b4dba572c120c7a24579a6d3f3a60231008aecc55f4f42b770183510f905e3a334ae0325c531c6960ba02b5990071be7d1af17515c8a0ae560daf15951dacf03230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2d5ddfa8b4ed0c1368ea0f21a6fedfd7d00d2d9052751213dc6d22b5412b9477b169cf70c13ace36e2565fbda752746023042d007c6c65e9bb50ba7cb1969aee5897d6d83036df0172164e6da0a66688719046c810133fe902dc6b8ab7deb8999d60302047c435bb50067306502310090b38a344f60af3b24810318712fa13eeabdf12066d974141f49926c3b7af097450262a44563ff9aa7849c09e82db921023017c3890a7138c9e6a544b885d0820432b38088036ea7eb45a298d833a1fc78034eed6d2af8a3032d3fd41f21fe4658580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310095b4ff72dff389f432c306dface868d68ca8d9ba807b575fcc95cab1101a9868ce9f00c518c417910f76ee6ce2bab2cc023100b9cb3e656266cbee56de29b8caffadf2be56bbc010d451753cc669f1ee167714bd6b153532880ce03843f0e05a5a5df20302047c435bb50066306402304e5e2b3c3a74ac1b8cde0403a50f499111e9d5cb6274d2e65e04b311e457ab6c777a58e4b1a3dcd86cfd7960e2941a9c023015e56e3b875a48b88cc359a084ac2f29115193bfe766372e1b13fddf5e1eb333bfaf04129d13f54989afb6c9e53630040302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a206459fbcae2f884fa6914d469b80262650d6d6d55b039779caac89afdb712e696981113dece555dfe73d0db5c09af20230786b130f3be4fc25f15a62b6939c7161a061787690c1f9ef6397c2f36d412155a1db41f00e5d74318dde1b69566bcbe70302047c435bb500683066023100db5aefba377118d5872d13c749aa8ba4a5e8de37436ca28ec32fb88444d61c1e4aeb7b1cb5b822634970e980ed26524a023100db1c4dc97ef05d555e240421a097b5395633c87ccde6574f29d13fc51fb3f23b7a94a12c8f87cf6bdebad6633e99b66e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a843599d6619a7018bc861b768dab3f99097008cac23c556042b7dfc168f9b05638e2496dc845218a8631e3faeb57639023100ac926a52288b512abc5410d1611b729ad9b67c56b658c9f528ff091684e2224dd9553f8c64364b89ebdb5e1c8a88baf40302047c435bb5006630640230490a1aae9dddb6a3f3cc4d45c79c26c1e9043677069612328c393fcb016919c6e34ef7edcdcf79391590192dba2a7729023045d94f6c71fab7221115dc23f8c77dc6a3594f78d6991abe813bb7aef29f68c8319c99fac3716d1734fd5067e9a24ae90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230473969c47463dcec0f406711329a1b5df43a142a5c9654cd8c305f2732dbd1107fcbb94ad73f8c232e406ae2378b96b2023100ec4866d8482e4546dd09700e3589302026d3a4b0ce0b566db19eab1a31cba5bab6ae259afaa6c3cdffcabf63488a5ab00302047c435bb50067306502303311a0037ac358286f525bf8a3a46688df7488379dffca4f977fc458cb102f0f0443f2b2e791874069d9b46fc82992cd023100eeea9be7b2eba0c1be787b3ebbc79028e2690be46f71d7d627ae52ed5a045b923d795c304c4609b0d0aaab220b996e1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054dabe1838c37409397f2071f95990f4950317bd9523b6ab6abc012631d1e253872018063ce846628f74ce9c9d74a0a0023030974ea11964d99e10c17b669b9bb1d773d908dc5dda6c2e91943b8984caa71a86daa0c1af8d146c32f6bf137b072fe20302047c435bb50068306602310086fd49367268486d907d055ebc5ec3d9e3d83d48b29ee0a2242ea77936be745e2cec41f2e577bc409d57415bd77d1f62023100b82a6582cebd12acd8fce94d7da23d1db8e105554027b87b9bab4b02cc34daec5c5ff124a1f86cac5cbf5edb60411e4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eba86dfba7ad0cbeb5adb3075bdf00ff2beb4c1b45213eb1fbf33a5685e711ec8116dd126957543011f72b951523f003023100d569e2eab3eb0c40f56dbd4bd8b30d021afbdb1eb2d2991da2796a18bab5109216eacbc05c9ac829a95363c55555c9dd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015e858f966dc492c7eabc51153f92c06f52190e84daef6cd51ec619531acfab193cfbc4ee617c8e32ba1e10b0094d84902307eddb4a8496359e23856d62fd2285bf46311487bd0eabac09bbfe2391f4c02bc65edde76efe01a757cab5af71a40b38e0302047c435bb500673065023100f7a9f0ba91a806343f7289de57aa6a05c5cefedfbfeff045053a67a6a0d1a1a437741249f4813d5e8abc143b9646e26802304cb701f3a4c29942ebcd40d5159d93e497cbb5b286f6ec48b9e5f3f36d5030911253595c68bd0770ca24e80bb89bd4040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4a5df3c062d7c68a0a0e7e871600c5f1a89bebd786775e699cf89acb9c6ccf72a151bcac174fd85adafd46fdbe7c3fb0230556493d043925f83b522e95dcb81f7cddba449be676a6afd7cfd5dc146d32dd3b601c8a25a40189636582881c618acce0302047c435bb5006630640230307655741e5f9b65305477222bfc7fbc39a51dfd268685931f007564637a125595f0cc8a3edb2c3a67f98573f00bbb18023075d255c6f8d35eefedabb8be773b3b1d948bb6790bd262f3d106d69d7acb7eb2619b573d14ade3cf76f8dfe7092157fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306131c7d4527fc98430ec4e7baeeac369401474c72d60edbd8040f7121548520b0beddba65632d04df9f339fcad0bd5a70231008071190586643e31d04f92aebd49946f3cebf494eb6c7ed3074e8476bf2a40ef76bbd2fa4c4fd7ba8cff01716ccc5ecb0302047c435bb500673065023100d1c6d444ebfb912747e39f5cad74481add05e60df705d13a5913a18a0ba7cbeecc72231fc7ea520b560fc5c587a3786302307e3f38acc08aadd2e7a08b392c45b386326b80547397f56bea189b8cad3ce81cb4549f275919b12830d0ef50b86d26f20302047c435bb50067306502310095ad27696bd1db825eda73b7165be6469cef723d27203916725e09d979bb4c8efe4f8992757b3e2c994ed4cc64da11750230527ee5f184b099a9d31c30e30b2de3c333adee2edc3bc03691923a1b2e241a050e80f3fe9d85ded32e0f090722c914db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f16892efa119eb88a5f06993b69d3359a7e24a37cb1ed7faa87f3d3b55e765b4ee57e56b823f9070ed87adec911226e0231008d0f7da5a4039f330e06bf68f7398d14b0df3f3f69d241215dbeab732681e58f3ef49ec9775e6122f53a35c905de87880302047c435bb500673065023036e84eb71ca03a3098fbe4ce350dfc9d57290dd32c0d82b851df3cdd3012635db3ff455463dc0596cf2039d9933d4bba023100d3facd4b9846a50adebb8b5ee55ae5f2ceb8cd5764f85bff285d2a25910d0a3733cef68034b903f0024702af24c7f3bb0302047c435bb500673065023100fb6af1d2be3ee035c74887f30cc308d0c3e0ae4d00c9079cdbca78caec200e38ead35d70cfc00c69fd4aa5beb2f80d8f023054ce63254bf36aa7c7abe0cfa1501991fbdab9424e44120a6febb4b5b9660f92b674e2e8a99dac43cd3b82df010c36150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de97a226c6b220c8c3f2b93207c9013e21a05fb23ea3f2edd289e95a5c7dac92c6390793e28692dd113eb46107c111f30230677277a973d5f2f55056681b80408cef1e01e0e54e6f59a8cb02ac6b7b29563046810ecb81bc9dc6d7436653653360950302047c435bb500683066023100cf26d438629b178be138586ea53616d7e7aa6a20bea4dd33f489fb20edccb482619adc059df5a7f80608911688b9a631023100f1c6864d047444925257de4488324ed468cd14f99be221db2eda34e8ce22a1c31613bf161913a79e5d061485400898d30302047c435bb50066306402303c31a35fc341728a9406a0f9ce32d52d480ccfb4f7ad5cdabbfcbf1f789d875b92ea45af638a4bf3873a34e131fa7c5602301dd0aa48351faf30227086782c340171e0d16a6a9537c5771f4b4ff2dd39fb69a47220470acd7a977802a8c2a50cc3910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230396c72ea1fe04984d5d304a32aa2f45acc8ba9a51587aaf25f4476fcbed2e3f79c37778ab1cea068eef93c3a346dcf1d0230258fc688848bec67683fb5cfc68a7dbe8181bb08e573fa6606e69365b1408c933f4f75447c3286e8a8d9cf6ac2f927b30302047c435bb50067306502302557c4bd70e9ee5bdc255172a19ec87e536d3cfdf15c4dae0aba802c7ca626d7bb558dd007ebbf39389068aa150d688e0231008d9090cc67ce8f796ba250cc3eda0398c28dcccc285791ab21817eb84d7072dc0f39b10c7dab035069d152cc82eba71d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c9daee9688aecbf684f602ef9887aa97ca8c1fe372ef00af14588ac61df1d76f818f90015b6da6689dde122dc1056f8023100d9322a5e08e7d78d053b26555149d80f1c9947b52a4744263f7156738eb4247ee22ad92e845048795058a8fe2e856b010302047c435bb5006830660231008d33c0500b530019fb89ae3bbb5a413f3cc4d3d438ffc641e99a11e4c19ab3559d506934a7df786c41554d678b13dfeb023100864280b83826d474fd8c09455f09ce2e263f44452a4a3de17f5f0d029872223b3c2bec59770dce87c6cff64e155400620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100913f081866facbdcad812b13ec961c5c0e459cbc310fbd00d592e393e2c7c5420e4578d52623ef9504ca98142fb5674e02304f779188729f6df9fcc79ce6827e5bb92733f0e795180ef9f8ba6d8facf32f3c7a31fc6aebd31ca3c157f7cef141bdea0302047c435bb500663064023031a29789d31b872afff4c4122868f7f5836e4baa92da06102e3aeaf286364e8b2f05c697b1f221c793dba80535018f81023052c5fab72eb624bbf13679176e2ef0b3f358bfcc9e250086468778a287ea5c17210e042be9b5ef1bf7f4c7840e5414720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310096064dc9d63b75d6308e8ddd6035cdd118afcfff73748e0f3c03a936a4b4310f7b24e611a7646d2e5fc082af150145c50230286e6595e81e3325b37f87c23250d2459e1bfec6836e35a36e5ea07ef0aadc1eaa7c86865473aa2e73880ef1004ae9350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f9ab80d26911c61c757e4b4f833a04d715444489205512ca4f487e3e41bd9816130388eabe8cfddb8ef976ef196900e202304a0724b6a10706a2cba6a71fe696cc5694aa1215e8df75bb5d1955e1fd5e9c8c029fa01fefe998022a5de5f1fea6533f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303284c00b3197fe97da1eed7b4b3b2cbddb1d3bfbcab19b8ead665a69e8fe44b77b0c008bd756135f721e019e7b667e7c023100a662219676f3edba71c1e89626bccdaa884563a93f78e9cf2f0f1d29504dcd8bdd0dfb700e178ca88d335b39e915decc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ab5b2c4ed2d16f2abb895380ca9574191c3661ae38b701d713d32072caa0c1d667106242bcad77233dc77ecad6255e4023100fd6cc923e8b979b3ca0802244167d9e231317e548939edcebb90a073740d82fa5fc5b609629c55ca04a67a2cd088e01f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160955fa7f8beb5ed7ffca0806c53b2500a0bf26521c084bcf564253624df6e6f07012cf055f71d66629550bd2d6ba4702310085d646ab7bca305cef7dc4a6d009641707bf3a6d9b75915fd6dafc41c926abb6720bb9c55d359445987812401330dbe60302047c435bb500673065023100ffe39f0461225cb7cb8af8d9b76b21e80d36eb34d14adacbde96d399c4015cf2abca36597c72dc0cf077c1dc5120a73602306fe31415a4bff2228344b43f045f29a3b2a8bfd15a62115f3def7d7b2036f8a88e68f13141f9fe3f986f5f40ec4ca0a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc15104755f4924b25d8269884257be926d7286690bac85416c915c30bd4f30b183969a40ab7bb200d6a966009809e13023073a98b468463200bc3b90e1262780ce60691b1a4878a3f80cbcb841f8373b978ee36bf56683b8d9165cd304adfb3e3ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100832e8ad9e75d8eb6110848afff2c4094934af7a55e5cb6ba48650b15f5d0c193e16e7846d2a1e9510b01605993ac8a0c0230185e49bb65b65e4961066a88b2bc455855eeb4e836b5d80ca714d8521c3948df120a867dbe8ac657a4d9e6ce5f952cfe0302047c435bb50067306502300470db722cb3fe67a6da968742e2d3640b5b4deaff96a4a9fe086fad4ade93a01c0b698c4ad1c0224142456374b3b16d0231008706ec255e3f0511b97ec9c32322bdb4ba20260235212d0cf44f57c12a966117bfa0e0d3b6024d6fc724116a13de3b7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230403da73f9bf875350c4204e5888fc2ad78a2e96e0a8e4d4c9151bb7ee80723047e897581577d1a3a93bcdd1c412cfe940231008cdad82335868ddeed35bd37d0d8d88df5ae82f0f84fa4555924a11aa9217b5d2ce50e42e5d8bdd23c382c5bc31285320302047c435bb500673065023100f6481504c9b1054a2f6cb7c0d1fb689af955f8bd8c9e85e1d0075a95e5564b6f20e17f17fc53efb354a617405ac809e302304af5b532f50a9ce4e654f45175bbae54f136db2bb269ad232f4e1296addd541796cf65447f5e57e3f389e88f96a707fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100902a992d843261483750ec0b5df9bd3f8321ee3dbf03165f9198a695cc5ea2cc0f38973bf9b6c8d3778b25a46c5877dc023100a4e472cbbe17f1479f1adef5730657ec95b271abf97c5ce5a484df287e91c34366073f610161a96a4063ea95284db34d0302047c435bb500673065023100c63e4500102ee207047315b5ef83345b3f270830fa5c48711538c73660282929025384a55b38e2b141f85a09e8f24446023055389bb8dc21432e5ae6e57446d129542e44fbac578683f1a10818760c28a2be428c6b3cf67edd1d54711200d85cf96b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023001cd02339cfe554ed2881cc10e37be998c5785960caca12c878bcac706407891c0521360934aea03d1bc226301f45a4a023039411ae6f59712f7bee70884b37d0f42ba740f3d3e3521a35482ed0721742285bcd63ce2e4525fd734f49e0c86b24e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300a5efe649e9ac6897af9321b44e76f5a328178511e4c789b1a186e9af33dbbb2ab24628d43143bc2e7c545e5b368efec023045b36571a1df1e33a6d35f942675e39ea5d876a35cb0ce02ea4b087a47bdacb92e53e4f5845b0bdcbb69c39dcf57ea2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301194013abba7efb84f5033fbdcff8d9c0804d440e18d65f91032de20e758143158e0da75f898a7803df2bc7724bef706023100b8989fa66c9a0d83a124fc733f042ef8cc0cc19c17ac37480285d805b3450b1ab29364ba2a7aa834a9381b1e8fb8adae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe2f21a56dfcd04d227448ef1ef0c7e5abfca01ef3e1fd4d90954102be5320bbb1064a6775baa580ab2fc1886b1561640231009e9a953ff7355f89de0c0d5d97263d6601a4d10e110ef31c202f45d1eaec8bd28bee152820cf0c1703f007fcc3c887a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230478e7a0fd16516f4b1e24347431c2eb70f8ee2155d145cdba0df9aacc3b569c7ae9f0558d349e8629c36865b94ac2448023100bce65e2cf7ce80f475f1c1c02e20cbf5156b0612dec731fbb7ed5edee8c8bb6f60ccba0b469cfda71b371f2a50d8fbf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db6f200562a982bc9dd3d063d6202ae50f89bcac3233677f88245441d06a688bdb69a217cb92bef6e6ab526bf3e7682c0230744ecbfd701277c90c7131df99ff1ad355024e41b4e72b59de412370e8ce881a614986f7880cfca3d767ea3a98fee03f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6bc9b8fa0ff37f7f04927f7f41f8d5a48bf36ceafc9917fac131f781fec8c2a06ceaf6cb588b4adbbbd7cf706206a4f023100dd3cd57d892db066abc6cb59574047a93ffda575b324b8fa3c260aba669653ffadaeae6cfa8604e201be61fdafb7f1db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3c32b1d92b75ec0af78ddedaceaa754cc89a32a00a99ebef279c838835a3389d14977847ec0001b73d5deb0bc8b7ee2023100851e006d8248994d7fc5a7b8dfa16753db716cfaed7efaf518c6094a707eb83157a6d1fbe1efc63ca2341287c51ee87b0302047c435bb5006630640230588d20938ab59e335d6eb1f5f03654f1a6713b32d9331206a07064d7d6784e58dba7fe5f7f882bc1fa84cd9a9844a5d502303e4749c5d6fd4743de5cea0b6c4064f79c846ca711d7619314e6b14133ec8b31164aeb184582d2d92f1f331a26b7e02b0302047c435bb500663064023074776d835f9baf0959a42fe86311f8b1f46e12a75d0e18a2374ec97e7281f8fb54a3edeef481764f4371a1cbb2436fb702303a713811d7fcb643882ce3290587e21346a501faf91f41a39d40a4e6c82231d0369b3509518087018b106bb07a8048c50302047c435bb500673065023016b8de8bb55946ef1b4ca0b251572eb478b6dbf48f8866548e362c49e839fad407e8a923eab85ed8c90e852a0224dde0023100ebeafa94ea05cdf94248615a3d60553c089d0861d32070261dcaad9a7735cb333b68c09565b9b8686c21dfca363f33d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b1e2b20f081f544e3c713e8c933612bf21af1cd7a1c5a8294894aa42c1b5a81f62eb807b4bb2d8152ba3ea67afcb44c02300a176f69bc1ea3072c7e1f7499bce49c2fb9c36335ef6f7493da9bcb0e6ecc6d9e9eb22a8052bd71f7a292f696269b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038d76760af38b489a32047ed91a3b99efd489defe741f2e68504823996b80eff9df13b35034d58d6a1e6b16111a758950230295f453f981aea3e7856f39bdc4b6972ab444493b6bebf731e098a95b72ab7811ffbaccbc9e7f65b0fa4481f4221e6050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8226ceaeafb0a13093633fa1fbd336c41bb085756c671b51ad2491efeb7a861616f96d56f0e5cb77fe85222f10c168002301dc7e48795b6d22bfc982274537e380dbb2d68203ae6fa70416d877a92203221a02445a210b06dfcb06693d9ec46b5420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303ab70d72a0eaed3d1819e1e4824eab6b19f35d2e7c89592e75f34368e37766179eea9f115d6d18c77c5bddbc9cd15b190230529d5bf3f82c78b6a89cf31832c860ec3c0c376760fc222e680daf99756aa9171d172a2a9a152b1e68ed1dc068e57dad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306476ed1d83850aeaad39bb850d1ec3da4ebbd8da6b8e93d9a85fdc4ccf71c41f708934696c6fe7ede072d970542bfa320230144636b8375b368ae2086d4c1fba3bdd1e71ffb1a92ed30e5361529a85b5b760395e94248df5f7226a8c58f29a1fac5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d62a5229762fb7c5b0c764f15a0dac55c47c01c6bb3dc9467a2e5b1b0fce87f1c97fb409c8383ee20085887d27016c30230759967b02f821e6775bb273e5ea0e1ee034f3de59110e33461f8d752605939032202b41b130f1cee3f5ba98e42ad87890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230715442714d917a7a75769984fc18cd011ad08cb90dfc56d87a33210a6e21a87d4af6b3f60bbed3823b9da5fb7a36414d023100e4a80e9530c29aa1d2bca35de93b69cb70c90558dd94ead9b9c128a83a557917eba0f32c92d96a9eb5d3696b5d8dc3f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c20f5287c69622938217b801b5172ad1e982f6ac2a9f8b792c945da481f359dc2a3f5ea39ed07de39c4c81b315aa1b5023100ceac6f7331a67b85c41b541a48057aa5ac66a59cc732ffbfa38598e820f9ba2a11bf2c3d5964ed238070be14c8201f740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230412e0645f4e644ece7168f24dd1669663ad266f4990b9a63be77716f4157d88f65dd90447256b86d54cdbdcada25695a0230029cd296204849b87b8c2eeed5f37d48c2b2a78ffd349bc50fc79a0d52bc1e79f93017b30a3229827ab10995e539c11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027ba4474a634f5eea4062b865d08d7a928750e2797ed1dafc685e2464fffc7e65fa6879fd41f965ec133e0c9af464f2f0230790d4223f87ac5168ce5891879626a5b644d85a3702296dbbb3693a40c4e1f18e071cf1c68eacd495d707a1855c8c74b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d75067d655108e49f13df4913db1bc430acec8bb9a84b828609478e0c64c49ed85d617427fd1416628714a98d2cc604d02310090d06e52e6aa6b0d48bc9d7575a8c21e8229420520c67d099d909df6de5fa2a623c395478a6542751d373088f537f9cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ff3fb789c37c3a3b907da5874755fa14c636ed6b7e00b747a9f0aa922809d7052cc689bbe1d8f4121258f1339a1503102306d04a99a82f9dbbdf2c35621fee513e65b12644d47b3d0653daa86b5ec3c62de16da99cf772ac98a345a221a976da6da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100844b6bdbfc24ff2373c91535a889f563fa702a6fa8258d0e4388ecef8d48248f9c95a8bb8fd5fe08363dab6e128446bf02306d3116aa911e366609d8005870f9380cf097eb036c837920871ca0c68406493bcef96603c81db1bbd78c844e04d4ee900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305898576a52f7cdcfd916aebb30cb661383aa4a6e10267e3d7f019c3f4b772f63146761040195980f131bee4943eb61f2023100a368f0502bfebcd5eaf0588c20c99d95b3e5ee3e58a2347b6f19a47d0eb117338be5c3cb095f01ce1b32449f4bb592770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b345cc6b467714307f6dfe9d61f01608124a6974794ef5e95a8f491b70fecd05313c40c3d51feff8bf157f6db5a3baba0230437ea36a83c0d52379a5a5627971b1f42bf1c6098c0f36c9fd3c7e058131bec67fa3bdb093cb6d4c6f7051e61efbd3ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013526077f4088bd97b9e144c188732719ecc3b58c309d56561080412fb53a0a3e89937bab0419170d5169a552a53ed06023100ebebc9b32fd9c7a2bd1755461cc0a23d6c7c9f61bedb37cdd6e9f6d62fd8437e7e99663187a1e7c1bdefc75bb800a91a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100879599639c22ef1995248701b8ffcf9c820e87b556f125da836c84829e4552a406855737a91f4e3388b623f31629a5a302300acf8b212d458049b99a3b7239d6a2998543986fbc8a1a96a1f323fc908d3a74557efa7fedc9d9daace024b67bf58edb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045e87c840a46ea91a6ae915966c062b2c1c37bf375348c6145a1722b7e1da6afc117c9b8ced11250fb3b8eef1d42987b023021aa7d2a125675487c9ee437025994565dec3276db959f817e79a9f16f6186654afed0bd0071988606e44105b597bf9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f58b788e8ec44292dfe297574c0a5ce478e515b6e81d52ea5ebf670b9f813ecc2edb41affed019fa43c81847196fb1b902300f768ba2a7338fb83d12500e4d446fd76ab7e1893e5a87527aef792f5775cbf2b765af8182ce34456a1bb38a4351c6190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a62b13c3b51ed78efb4d10bd5b738e4752bf2ca34ce526e0d2c7e9ad8c6d733d80e41628dfda794aa02c8cbfc0d8b9ff02300e822bac526a0709dfa44c3d902973fd963e00a2e87816b38e4921fb4d7e646e8d5022870ccfeb4180b6f8fb438dee040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a1a4ef0e9d5831acaffbb9bbece16602dc743efb0a0a9b8ba359114bf50080b0fe88313908a3ba1c6764c8d9f2a7fcd023063e51da6735fa70c33cc9c9d8578556272b0e58d1b2628c9e429a33dc9202babec89a863b50d494669fba8a8b37f9c5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a5785071d70eb7bafca2eef49d37a0b703715f65f10f7db6b0899e4753fba113262d2edd65895379eb2abcbd6032d26023100bca3bcd83c84e6dbcf5b818a4becdb22eb00c221f58724e6eb2c3195bab1a6865d773a756d3fc3550a9b2c909b72ac0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306afa3a82a178b446965b49c9761f5da33d14573afd075faaf33818d0b3d051061fda6f009ab11456c0128f1c43d751df023010118fe6828965957b5fe358ab0e63a3f8e52d6e7f36d1cfa9863c2ec25c0e1bd21baea7627b55a27722554e9e90c13f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a27e6cb1fe454716dfbb16788eeaf95bf39cd257ecaed98409f511d75b10b32a3c8651889c9f64ed67c63fa681a220b02307da56d1f3d00e5d34ac583a02e6ffd85da169b6641cc34b3c9ca0c00dbc8186db024074c6203e2d726e06f19356e5db30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec2f0dbceb9f8333a95f631ae704dd345865f7025a4d185f90515f3da30a62a2efa3d24cdd34bdb1f8c3f6903d6552330230763d6ea1d80d00750ab3da0e64b39d2956b6a9dc719b8f13fd6cda93da9404af8fcf91dae8d44db51b8eae7da8922bbf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3c0b54795b9486d9923faab35b996b995a02754fc1bf03433a6446520266ba6f31f17dcc891fa14e301981a7d5131f402300df003c7d68dc51a1178aceed077477ca48fdb0da8715f1d655390ac5d091a209638bf1caa0b1b131cba1194eb51c7ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bb5884b98cce570b7427b0dd8789ec4853f18b2178f23fb05e0de6d18408d188ffb1b41071fb6cd3e97504ced2f7b509023024e90836226bc06a3716994b1f20d735cdf671ea7adb7fa02290ad841ba476a7f840c91760bd06caea612bbf874b8a690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0641c6ba355cdd82063ce964bb733a6ed6def4c18e1fdcf7c40499ab73fe151a3a324b47b665a9fcbfa41b177fb961902307906153712b801a3e33059567eace12ba55004d5f05f21ba99a1bc4abcc6830f3655985c78f4a0b37c35d18b667f1e110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023019aea02006b235bcf70b1b7a0446469fa7875951241613b72728ae6572582009114393c1531aa40c44f3c836d634201e0230300e684854a2c04b7936b6e76a2ffb1147f0d730f2dca0822e1b927f69c53250f736bff9577bf69e66c76e2083ce00350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ffd05bdc871157ad5819e76e031b01a8f377e04438d1c4d6d6ca502102eaeaeda0c15f70291ed98bb64fe191393bacd0230239eef93800dc6099aeda732a74a24812dec447ff92f77afc48d4b0e350a35671cd92434593c955203d507bc90519c6a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad9ac1827fa804230f303f32b9a060bd8806c193320e76e29e9f7f1c45e468bc5dcc87aea1de3f05c6cf22bb34703197023029026ced149312d3be5b76cbe1adccdf8f11ed3f4b448da970a9c481a6629f23966b1bd24489a7db08282d87c82b2c5c0302047c435bb500683066023100a6b7620b44f9a7f17fcc0e8961c7dd7ca7b84e0489ce47bd366e69796795959e292b348e973c74da81400a6392bc96b7023100afd2bdd1036d7477c0571b37de56eadd4b7661c06d07de40857a808d378f92f36c166f387134fd9fb6e6798161efcf1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f1979083964da07d9fcb9f8e39fb1c3799640d119939178a0f4884e010e14083b3d228f2e2bb1631af8061c73f2e7e6023100b2e0ebc604872aadb98703ac59bf6e3e9c349f8252c63197673c78b7fc55bcc9878642a514e45f228106b8d935b76f630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f7144345934ef2a8d204ac7f2c3953152746c58368a129b2dcbe18b2d3145f7bb991c4045b73b8b17ef2fcd800c4e9f023100e17227e55de59efc4f3c19f627048aed6ff79f837c7ec10bf0237e1571d4159000fba17e8c00ed54d53d64e5907297040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009be6bbe1ae6af91cbce51d50d7b8012ac44745ee62e2bb70ac991b59e39ecc21871fa8bb5019f4084c607720a13c7780231008797ae43796e73be5d8d2c9dff1639029f439d599de9490031574fefaee34409945af78a347dbac0c3347376518843ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230775aa622f845dd7bd4c849d8a56e6768f3d3cc930475feff0ce9ddf9a3ac4df2741dc73a52c8ec65edc588bb5fa36fc1023045d6962ba38884510476ad491e547282786bcfaf1f975a55e3be74bd7b13c6a505c062cf1dd19a5a00a8359f55bcefe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d021f679d676343deb7a2a971901eb221f25974fb1eced6ff63ec05f209d9f6b8d467bcc8b7fb08135fbde9614040da023100969e59aef92de68d34cd0ba0a5ac0eb9bcccc912a95cf09924abe86daf6d6ab3b5d18ce6be2452d58a238ce16149c9430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8c56adccd09d3debf546e04b1fd8a8eeae9b07e65fc6b7ec481d8ebc95f82270f87cafce58d468304d48b3cbe3c261d02306e4f0d63f4a06752e7d16868d8a1dbb1796ff0b2d40d9c14473a993484a98f29df16c575284509e39d71fc6617091cd80302047c435bb500663064023063eb8ede3682db8166a4ed5abf682676894015a0298ec6e5339d2d121fec01243ae1302520731b2cecfd94ef5a7c488402304f9d64c2703f676ba36ee822160989c774138c16d23bf14c027d555c9c0f75783f83ce03840c1ac4dcbe122de5a614d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230645f769243da2ea655021edd2c292e4d4538d1f97906c88149a53f56bedc7bd4b921e05452dab8e32b802cbbb4a6c009023039cb2a47d553d392f2ea363b1d395468da4b756daf17f0073e7fcab8a0200a386c4e65cce05891ef5fc17016b7051f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302018147eb5c138164573606d074c8bf7c4b0684f982d697d0c863f2453fe7d5446a797ef09c3f566e549dce93ff81326023002c88a97a47e8858f82dc47f612c5babedb047d39572228f25c156672e3190bc1288a51bf52bba5ff2645466d25e013c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100813a8103d6cd54f4f2725af5a7cf3502f7319fa4efb74b3bd8d9afc9fa36f8fc1327cbdf0e36681d1a8d73f318ca7f5a023040d7445b9ade4cd1dc37fc5c0f1acc017b8b6647dd65b9f1a990912861eba80d818fa47f62f42ada9191aaf81fe623060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f227b8adef8aebe2aba3ecf78e6f2b0e069ca22ff8cf44e9c66387355f50a5a369c6766eea7adb42e1b99e8f0eeeb7920230425b5fcc629d55035aa993168ab3cb1d26434ca375f7a86510c34a365ac757550595378743cef59c6d3073cf945dd47d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e94ae39f8286abf915da918dd33134535e815d2c6df982c41b6de91f2c96dc84a17a6793ff3eb9ee0e1bed81bc7e44202305705c2ebdbcfd1ba0e75f7c152b1c83ff112784aee28c5add903e95a9a42f7b8589ef1888508bc687739f91e1fa4fbc40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c94f4c56fa2fe9e3149e67efb593f7865e191e1938f81cec4046b6e0f33b1b5dbb820736467a157e96e18fc1d5b7543023100a23f1ad744cc4cc3116ba2f3fdfdaf90f783c2d6627f6c014cb5c7d36acd7dae5f0960f013475fc633735fa0b2180c0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ec712d887d2227a5d46023fe79b37b15e1b0c4bf43becdef3acc2ffdfdb2d662e4909e6066506095a8d0b6f50a1a43902300729bde734eb498517b6792b5765806db9a1382ab4b29750a723df59ce92519ba0eebdc45d7e7b8f80b7c10e34e52ec60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db76d726e0e415bc20bd64c67405c0195559a9ca050ca28de24d4dc08aca554757717d3ddd80b14a4e4b78611687eae502307e7f5c710ccd5c5197a4638af5a2f5568bb777033db97db9327bfc5c680d26ac94eb42e93818cd4de3b6f9bdae3a8eba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a98dbc62fe94399925061b9e7929a4c74940f19bc4a02be7089d0c53e575c0af2f26b15a2c4b6f53d44344990c48d4102301e6936838ac37279efea284c0d5a93ec68683b24d0f832f2a1d97980bf2d9539ac2bacc543e02173c2595266cc23f4f00302047c435bb500663064023069a4c8ae3f847ee6812600c76843d2f84224ae9f4da0d738db28626c1c341d8252f8d0f4e633464eedef2c44e801a86202304950d06d7b7eec5c12366aa53203e2860592f797348c0ad362e4e13181b71700c664c5d7b456d5ee64b6a1783b0254f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303c25aacf1c9d4760589bba076bb2b299a6f77add7599e92dde9299daf03bb4b0e1281a3d1233e4fd794d7498dbfbbb560230024802386f66401434fd9343d0231287aac3fd86080e92cb7ece4bdd84c4384752af1dd915f0ca0eca82fd89af20d3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023067094b628ae8390a34ec6963f6421b8ab2535a4a92aa7a5b8d89f3124c3d701a389e1ef068c5981db185c57db28f10c50230498331152d67536abdfa2be03e6195cd261e2aad665744dc96db21bb31d29376f3069780a101dd52db5f094261ff3d940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023005e10bf64f50cafa6f395e5febf577251bc93aac35a0b2711977afe89c6d3b2af13bb9bffc213b65a9d8ca24c5483a0d023100a5ef8e8c3b96385c959012664683baadcc61dccbb7bf57446a2fe4fdcb38f7a724110815df7a4e7d075ac3419afb81c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305198fc6608116ff6626024e1a7d4194405b8af26b36b807cf0b9aba3104273aa32e863685c2a174c8013b5cb53724ef90230583591d75fa881d233fb4aa82994a1d5e6589391381a9cc123ede0d0b6ed2790700edf72de8cbf89265a52b59ebf1de00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ceaec55725576a5d5a7accafcdd39c6fb97dac0c68d0e1ca27bf510ba35fd8c6377fe865e8cdf1cdf24aa9516dcde2d102307a39768872b8f2979f736e9903d901cd445a65da46d43d24962196554e983ebace8f4d8cde1d46ec124ac046b42960e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ddb7d202073f8e5d42086cdacdad80f392a67e61d96f35222df8fb33185efd02833f3af3b30a435ca3d6a419ce75d1c023034e82458d867742b5c42aa177429a35c962a37834d33c226d59653f1912a7e50a3f9304b914f6b4e3248deb445f678750302047c435bb50067306502305d7f08c10a87eb998cf71d6e54017b7a99c1a74861a165e704756ed4f1322eba45faa3d70e0f979315ace384faabd2ee023100836189f1c2e90328712dc7e5ff41619c44afce777308a8f893199fcd380ef6563bdad4dffaccf654d475fd97984c6a070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3df8b92c82cc4cc940efa7f4a81c6753e8e8fbca6c1aeae033043986ea80ce175327c2f28630f9498b397318fbe1727023100cee49236801dad40f79bf402a702cdf4f9dde1105f844087f792543d3fd5de13aa3c2a8c55ae3095ded1dd86267c79c90302047c435bb500673065023038b3ed76aa0783ea8baee3c0df5348a0a7cc61dd84b266da969213382365c7b9e87159172137c3278f3e4725ba3ed2aa0231008bf93fea0e4d6c35e7ae44129f1d5bf4187c7f788829c5d61470a0811a060a814ba3fad38134b26907f011aea3d17f970302047c435bb5006630640230101f8f9a11655bd7059b19e50443d6b72000f69015c73c1a3fe704e46351844c13700c51a9da8e0733ee42bdf3fb1f4e023033316a8a74f5a587bd3923f9f97ef42cb1b199d0be17b657ee1dcaaf71d5d0f3b02618ca0e29e2abb0b764ce4b4e8a450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a37526413be2832529bfa5c386fbe14c89da823453a4a474582043cc014e258b8d5f41315e2871cce937ae5ac5adc95e0231008ac432155e2403452021bccae9ecf449ee90b1fd8e275c704d270872f2b461e6875d63d58e4e52a0f2f969618c7df53e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ca65d810ed3e88d363d389c644490ee109a6b9ca389159e9e5ac00805315fa64894d083b907bbdb23a73264316ea2654023034dd9bfba8a825647a2203c177fa9ee790e25ade0f2811054f32a0ae44d334d0bed5b4123bcaad6ec83fb34761ee26680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e9ee607aa955c3e442611b4316d6adf2d1e35cc1e2ab23ce9e383a11088db2d836fbc26d1933c527c8c8a462cf3680d023100aa1a1319cb360e97e6711ea70c00d1e2bbd37d9c1bbd45c0484533161bf9af87ecc29983284c932182d09871a777fe4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e937b51635040dec1658efb19d9d03aaafe7431a4d9393636a6adf4acc8171c4f9c846e8310ad28ca8dab761a1f75c002301b8821288c337e8e51946da23befbbf454110a8c5e3cd7cc675629d0bfd583115fdd2e1907f67769f1125ef5998177c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f088a66b736f7a8d66967f0a99f0071c33adc91857add9d70353fc9581075b1c8e2330d05fdceb2edd058ee65cedb881023100c52008ed52563ac7ca542f8038b670893013512f5bee0877a424bccbcc645d718bcd16e245d56f89eacdfe114cfa3f900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031ebfb3fa3dd281f067003e60b3442aebe203f56385b69bdecfdd91c7a2b65dabcb3e3a325c63bf4a278c94ed600b9160231009ff181c901259b75d62001819d5d7350b65f46ee0964feafce76c3e6c784ee2a4378016483f2146c5b41b977da62efb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004428c8d45de2529f69cdc5f1e34967164dc29110a220809a170565abcad427c8d5d1cff313ba1ab3d9c005567f6fb68023062b7798930f0f14632b04c87d4764974cd65a5c4b10c387301414451f46bcbc20a26b54aa25809c4730ce270efa0dc700302047c435bb50066306402300414a6e8027710826bb8630acfa7d8399bb394d6c983fc72c19574a5d8e50e2ac80b7b4d7c7c7b07476fd35ff72ba1ea023023060f49401aeee2f5d0c8a3506533fb9b2999597449cd3ec6204ab128c0c57f04fbd7f0d2bea10ad03dee2fbf6f4bcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fcde24076f34b68bc3af55ea0c6c745cd68d88ffc4f99817a9ed2e5b31e17f428660d42a0444fb68514400eaeaf56a3f02307eae0da319e9fc5d04ee992cd4a44ca13cee5326a38033f277d2420328e526061dfba18129d06b44d266e540ce05c65f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082e9cb422e4f7261fea86810e47098c7d407723490c2240f9e345e2d3e5f07e781f12eee68dbe68d2bf7adcff0f63f07023032182b2ab5c8e5058345d384d1d29bdcb4c072508ef480999b2efc1c41101ba8a49727430a6c19447a2c9fa6b71078d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c668d18e28d8dd9956c7c16083e2226b2f17b8a0266a43c6c60e6210ee34ec0b8da6961df2dc33009a99bb6efa3e383023003c7159cb44767080b44080c54e1f22453bbe9a9ef475f9464c799bef0e4435088d3f6023ede6ddd7490c70f71323f1c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf1bb14058638491930ba57405d098190842421c8bcf3518013415b3f5a96776afc492cbbb0702752cb5fb3e32632e890230521154a4fad3a36d6fd5504a97cd26e9e105ed384eaa510ada454d1a04df2659c823ae95622890bb624802e936e25b8b0302047c435bb50068306602310080792d581eca52ae26e092bc23a6a5da01f1ad8b2ae8e04fb3b36aca101a0b10bd98a5f4459a097aea69918d37f4952f02310081699a1f8ee994a14672fd0d38b5845fdd5d5590a43d04569bf79a890fdf32804b4532e9ee9a99fa89fa44e0ab34de410302047c435bb500673065023100da868d849163bfaf3a61f96d19db1aafca3d8c9ff5bd916286ee454f187a9251f7a1e20b6fc0ebebaa09bdff12fcda680230684b36906a6c8b00a30deb440f74e456fc9689b4e37bb33f923cefb2531e08bc252c3d6e51d91fedac394dd9b9e51b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060e113b426546b7e02e0d7b39b745c73117e2823bb42b7d60037e74bb4a5da0ee7ab2cc704710b4df5efd62b1f3c291b023041e34ebffbb182ae4550dca0ff4efcd4c83467952130f505d3f95e36a32813c0c18e54634c1cf3deb652588f092805cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7704a97374b47560183c4fa3c0c4065329ac9dce1a290f61f5b50283200f18ab008a3589a2eee8282e386819fe8157c023100d6e155d7023892893bd34b2b68f961b6e42cdfd4b2965866ddfbd375b28b5baddfe20b950a3b21addd08e25945f4019a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065653c1706354cfaef158588f0dab21a159e898c6b37f53eee4ec5dc85e6781f8fe76d416184551999fdd54a801014d0023100cfd38bd2d2a601311c864cbec0167b1cf4c06b753d28c7cd4fcdb4bb6dd43b8fae5d5c13a038f24e3fa4d1c3e61ab0510302047c435bb500673065023100e8e5a8dbb32a5c34e7d12d40c5dbe71a94b0858b4878b73f230bcc9a358c99343d23f86ad2a0c992fa09f43db7142708023027c6c59ed6fda866275cefeffbeba20b8f1bb16ebff2682e1e3f1b7846fc2cc8281989a524d55175029d6015fb4647ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd37b3ee55ce9f0618776bfd0d91feac382972b50030e8ce2112066394939028564a8658d47cb8547d88e17b5d3f8ae002304bf7b4a006cdc63378a72b70a96927bea08ac78cae901e2bbd540962083bd84f8a0225e32ed6722bb438daa4d1cfe6940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100856dcf7d3cd2536491d68d919fab1d07d31d8577202272bd443a7048b06a6744ae70d5694fef01d1a4f108ebf01fa64a023100c97e0734f0e690dee8748e415f377c0d8742131f366b89c9b5d6ffbac9d672c8d805ae5e03f77d0c9fb7fa6aa9c628690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067f6dfa20dee349d64b9f77b75394c2c4e81f42f96a45bdd8b4c01932528958065cd89628cf06397a63ba48d54d27b4802310080bcb902ef879800df827c9938c1d10fbed5de770696a7ad6d187ee8b81f1cf1779cfec4a34d56908d6eb44ed9266dd70302047c435bb50067306502306e199990832596694eb3be8536decd06580ed55f2c115119e7375c3ec3d11aaf80b11bf974020793bcf31a7633a5b14e0231009318ac8e4c838075e9ff3fd18c2d287a4c5dd225b41147297a26ef21d18348035e0cd9603eb199020497839676f78e100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e14ed9f2dbf878126038a583e9f6c0ef67558aeb40e2b0e08cfb8e0c93551bdfadd574fc5b6a9f739fae6ab7e749f258023100aa2c2281683025935d297e926a3d174f620f713fd4d3adc8b035c4104e7438fae8968e0df553614e64db535feeea48dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008f8d8a98204ec3acfb18e61ab8135ff8306b1f9390352689b3cbf5d8c86a809b23196d1dbee0a3e753a5d0456f7e2f210230049e760cd0c0345b687b65d35030f22deb7f57f3460ca03f593dff715c13c2be74c3d8ac9b3ce0dc31b3d09f7b58e0c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023063b8e69dbd63460cf7f5c99280f06c2234c2b033b95f81b71deb05a162c418dd320115f35e2d8cb59db3fff0b185b5f602300663862b5024b2627c77af9e4c13081d6b1bded458029bcf0f9ed60a0e0a49cd344597f5e2d60227fe3430e75f1ebea60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304fc3c7c59037d51f23cd03a8c3559641f6be05315df33c6c804e689848974efeb85388cb5d21f01105fa0271093c29c2023018649065123350d5e286d97f248feed80465cf34aeb2dd3aab9cf7cd047510bb20608114c620bc0789038789a5a211d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094ff754e69b9c06e09384a53587f9833d209a48e53255b91c19b983f265a57c761f1a28321b880e3f574c6d5dee88bc90230631577329c9af55bd361034d2b542ba6edea0a99a93e73f55ce074911c4222930601366e847a1bfab1912a7563e73ae50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050c151c1919d71bc03e3ee74bf0934fcc198347da7ceef36c4f9b181e24fcacfde1c7bda2bc13a2a399c4c8f5b3d6a8502303fe88e3d6e46aaf5cb65ad19328352de18d7395e773807024dce9b88220cdbad318bfc74241014eaf8d2d39537d3192d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be2c625ff3f51ff74a03763e67748b989646449f57d2d31d047d41d64c183cd5bd1b47962c6ac24e586b7a266acdadcb02301c5c1bfc5029dc849b4bd86891d6eb5435aa71991f55a422b1c7381101752fccf7329e13267d55fd5b9a0bba4caa32700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230362a160a80b4759b1c5b6fd5d951008deef57d1aceddfc0788913cf8dc3d7290ea03b035a4b6d4c302dc591db45a970b023100a3d21d75f2cc2115efec36e11c37a352055a39a34d043464e330337ae4e9b871dd18faf5114e511bd0f18d5164c61dc30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100883142be34e6e5a4ef5ed7e8d7f9df372efc26de6b0b88967b40288ae104cc5de08ee81f4848900644c575e961bd11f6023009fef70c0d2b47ab0a076e47c5c0f54b1eb85965f548e10fefb322992bdb92b45cda1ddcd140b54e5b63c665a7bb13750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230512df9851dae2d90c445738cf8a576a0341046a56de33ceb0802ab5b0422a4521dc1648443d60695067f80984aff4402023100cf15fec413481dc77a3c4838b30eca15caae2b3df97b7b71ba5e08b49882ef89ef04673e5e6935f1c89c0a12b89718200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008656bda24c2524544e347b53b22f99dcf7bf43df42eecf2d43a8add2f045f70ebfc5f7a8d9eec763d2c05ec66201167023014504261bf66cf03aa165a4310b805f164e4a8221c9b5c5c55799a21a853c4424e72fd9366112ea37c18c1451da956040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa72a94b5c3044c4afe308821169423b7645ae08f315090c82bbfb23868ecd61a2969c7b7c72d5bda7f049568f47be08023100d607a91d642db113cd6c5f0d8e4a76e1af22f46d79abced0791e4f973a9229737dd318b9142c5377944489ca36798f330302047c435bb500673065023100fefce81303ee2acc8ed26c6320db70565b1ed538d86b84a13ab95559dff6948763b948be40f34cbff7529396ba5b043f0230640a63229bca8c8bb94150cde30496032f144ca1be8e49625333a88f287f3daa53d49a151941d409eb912d9a080d83b40302047c435bb500673065023079e7d7675ec3d4313032307d267e698340552ec1e40c1fc887a98e071b25c0a869e0e91930f128669a31d3234bc01e9002310081575e109a87aa9af3adcb0658c9bead2a595bab8f9fbb6b72762aeb413e6310c5ee352c85787d5be0084516f73364bd0302047c435bb50066306402302b17e8ab0abca8c1f9fd702c2a4dd1ea5fca93d0b9b22a9091348e2fa467554386bdf13674b908642f1de72cc211b5820230561b5d6542437523c5181d467a9988a77256bb9f64c80582ba172012e8180f75942aa66ab22f0d9a07f62d988fdc89c70302047c435bb5006830660231008d450313324eefd9b790ad2c2aab80b1812b841332fd47e5532a801b1baf1ff956f19c143be6ffcdd4a72a7643b51e69023100b26b3cd19db5a80f56b77464f64bd57a9b9de414b71869f886755f82c76260f01aff7896a496e7ab6990130e4a0f87ea0302047c435bb500683066023100c2a5b90a61506794a11def030f36fd50fe8f7db47bfc525cf74cedafeaf232e399fadbca6c24dd09f96f1455c842d7a6023100ee7dbcb23d8f47a69e7d4c5808b9bf58ff1c1ab3d23e1f3a67b9fc0e65a1abbdd1e36824fd3ffb0e1a43e1a983ae29720302047c435bb5006730650231009ac388257ea4fefdb50279cb6f6533993d1a5ed9d8dd65b807888c04cbf1f58215e2ad4ba23b9c2cd8d7fa611a124ab8023021ab91327284a8e7f5913b5c266cdff2175f1d368acbc50cd1819668820ebfb3820173fb03391e9d72f332b8033626870302047c435bb500673065023100ace31561fa09bfdf89c07bacf93be1ad483d3669d450760328bfcc5a5932e1d5a8349ebe6550d62c93622083664c7c7c023006c787c4c148213a73c5aa428c254284cadd4e6b22d669c6481c1b514c2783ddc41eb8ccbd65857b0b5aba300f83f1a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efd42fa21e87851cf9fb51c17ea5c15ab000ef2894c55a69a6e3c0f1007eece03a2fb75bec68dc44ee76a0194b12ac2d023076b04bd3e18730b5262f7949789946b9c57ffc5327f87f82ff5dd66bb4a9581f39448c3efcb356930ee18852146b87d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100883f782636e0680a363262057777adee2861828e39d08fc438226aee496c44d85fc65b5d12f9f3b4c51743db5488d7c3023027c2b5a837a891c24e6dbddaf0e7efe3ce6b8bb421dd79bebeb67694cae8d609016115ee070ecc768bde41475ff0a0680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230374dbff1b50941b51d83d60f0813c038609f44470ac3e3d28d76dc8cf459078933f7989067946c960ee237f84b01a384023028b31c8a21c30950aa9ed7dcb453af20ad7365371a6181f346e4c712121f94ab891f09e00ab66ac2df8473668f04b9520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306df74ad48bc450aabe3099f53e2dbe02e04cd79a5194a2c3e61afc3ef24b140cc90c7a2456c3acdef11b32e38b710c3b02301603a5c65b20592f9ec90a5bd55826fb1bf84fff5785e68df93e78af3af6d3b3235344a4d5d44af53fc3843cc9f5f3230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100db82856198b90d089d989e2fba721a12cbced47f772e592931358ed3a767bef1ceeeac92fbeea5deb17ce8829a360cf0023100e5e3ab5b4fd081b0b4ecec9c79fda78e2728cb38d3cc34cf85055c2bc594d3b3c84c87ea15a232664462a78a0fba6a530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305d404dd416d8b96f0e41c526d1fe568cfaf28333f56e5b8d3c1e65ea0f6a7be51b74d5f3285f6621fcb5a32ca3319dc8023100a761115fd9e90c2787c23ba96e64fa65f72c696dab76b9b117952318e1d30a74bb634f253d505e8a0431f0ea425dcb2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5bab41c87a3c66806ca1c6ba2f9a6b556dbc29eb83ad40b4ff88c9bd7935f46a11d50285a8a743c4be677de2eefed0b023100f5c6cfe1bee3e22df66a02c86c3c76700b62d07737f2d15879580909ddf3005d15bc89aa8bbe89c2ad9bbdc1d70e7a230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e558b1871dcd039fcc56d691799116949431086a77814ba06f151f74cb233ae10126baff2845ecf8fa46bd296b44178023100dc176e485287d56d49eea228d809abb8a479ddcf4691a84671949591f0281a53e90968703be91a631280f4c5b62929140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7541e613bbc86762be6b172420796cffc8cfa538cf56d3f40304be661dccc41fe0a4263dbad1ad827dbfdc39cf6f2850230578aa91cdc2c0d3504851b96c6cb1d144c06f0712ce86a936089fd140e3c0cdd4f3d3265e150c3490632e1bf02a01eb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075f4813cb58a6d88becd60da2cf1719160c667f39efa67cd326547c42d4e24adf8de89b9d785e6fae76825a8e1473db1023100d85f2d15e0eb937134a3e17910d07a62288df653a00b21d38da9a24f19df2b4a550ddcc87201f6934374668e7f9008610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6b613d9cdb41febacbd57b489e04a096878d16ced36b9a1dc5035cfd86cf1238f7c3d36e24372f79f645267f0619e4702306676b174d4d0b3abbca0f684aa76b537958072d19dd5a53db87569442443daaf81c2e115f4d7f95c786211631e0522530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a65ec7b60d6b051dfbf4d56ccb906792306856e429cf924ef420f7495789acb8b9eaab3c095ee0a1fc54449de4bf2e2c023100e20ea2453635302cd0b71a79e740b637b15305554268404a56cafd2d02da7850befdfdb03751db8d598f718ef8d8f3040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038b4dc4658d9baa2ca8f899e66d77d80bfca96d375e1ff2073c17d2e8a0a132d584f3d09d3671f30fec731474658e8ed02306dbbb504f2201b1f96577dfa5d6176130b8aee7b44081b85cc6edc59597dd0ab9d5ed9c159d1b3e708fd4fe2fc6d36dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307374689aa84b1c6892426849f1b74d803d21d57f0525000129f5917b6f00b60ef3aedbbaf6dfa66fcc9749bd1c5609f0023100f76586296f8849a37413312b2aa8385543802950ba58c1708a28e285923a7f9f0cab88649fb536f61f851e1754990ec50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100facc4c9ee36f22818099a6e75dbd406ed10744ca9c0115a42f55b925b393a0db5e728d96c15edf05bac4859adeb69d8e023100aa8c5dd5ad7b401e5f2e47ef87872fda084c43b19b28c725232902b718a232d41f4bab51ee910adc2549965832fd0bb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e952d8022a14f001e1d9c704e8debda5e3a8bf675678a0950686abd2d91f9d0c0e100a9aa93b781cf23aa086072d27a02303ada904ba838287a4313504f4cd476894afc2a6c19359fe6d87e38cd456fd3bc10a2d1046e666071347bba16d4a3b5e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023022e46ae806f1acb80d11b1816694f0757eb5a16b444e66a79781cae5a78d2320fdb75f4ec56d0209e854756414b2c25f023100e49f81f64b0a1b012addc1375b38182840f0b6b959fe042b4e33c91f1a762b8174123d342e500c0d453be6147d739da60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300171330219cd4c8ba6e727ca689c0c830cd3ef6367049a414e19aa5898c9681630d9cc7639378c12738f5349cbe1a241023073b68dbb2d1c271a468bc1172368e485d30f79c8e43666016ed9908a1509760e3b453c668f8b992912a53a3b780dfe300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8e180887601fce3fea3a997193848caa7b7510c06a11961700837a083945672c32185a25e3abd8e398734e7a70c0f43023100f8d9d321bb441035f054c82afc3c91dbd8e5c903087c3fa46e9c58324e3e93ead8f4470e11179d0fe706849c7251ae130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304c2ef7baf62db7d5494022c3443e4e30d2d0f85fc4edfbcd36c7c00ce0dfce9b4e77ae77e73f20e76d23d56c49040c82023100842023930618b66d7a73f60403c210a054d071f2b3a67f666d3f7fc154750c99d4ade51bac1e2f1d9a505e185cb7e0650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c34fa7b3e3aba7a2b27139f4bf7c01eac5bb7f15af388f99e3f84e10dab75e571bb96f1d5d464fede9825316cd3452e9023025791108df4583799616dfb5480620e16fee4120043eb87d01a1a8c2fd8f2fab0aa61da1932f4116b3e5167085cf19800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3d5e29ac84f38026d4b78b491d17b24bd85f406a49b35bc9cfbcd885c209c033475d546dca10bb90e30b606cd43c1f3023100e2444a1ee66dd02941279677f20a4ca72fbc09f504c8ef2a537104059b3634cfcc3141b3455a3b40c0c8c9e75dca12a60302047c435bb500663064023025e2264ed8e246554f80bbac95c608a4a39b2bea184380ad82e1907f4247f1da9d723e0b6c83809f75c7ae3cd428e0d5023005c091c07d5b5ea1e8ea50f2ccc2c857fa78c178cee6e32a4d187e9f2fda8541e8b8c78e1de110e0dad0b10dc84705e60302047c435bb500683066023100d6f856d90aa816b1698002ecde727baad9aa91bd0acfad944fe41150de0766fc5fcbf759eba76069880aac5f8f703896023100c39bb6d6893832ed4916de5a9a58585d21475d195325286f3cf581441a976089ff987164135208bdefffd883a4424e830302047c435bb500683066023100f5ae646634fbd9ab7d8b117db663ea4b176938019270799707323049fa4f23ad6228af6950e4121ab8ed6391a0de0cce023100c91fca3187c2fb844e88410575390966d0e7928e2f79e38bf9346884d66652143215fbb0da161904c5ac0eef76ad54000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d61be502d076b6fcbf1ecc76cede8e9ca79ca55798db5d709783933b53de54b1b3333069f2043466a134a255fb3c928e023048dd79591598bddca25a49e57eaad900626cf36a9627bf838386cc80c18a3cd0905cb38e9173ca2d2557bca0b47a0e990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300b354fa1e2be82504b056ed3135540e408774dc22ca1aa948711c52042afe5ec50048861e5fa4124559fbbb75cf5702802310083b0002304a723c6ebaebf40950c8687770f344ccda7a13feeda470e42d96d81ff3ae707c89b50edbd455df37c7bfbcc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040321401a36ea6c5fb229ef00744a6a6ea02d22c35049633d9cfbb76a6fed1e33ca8291f4d6d511562091592d8726c51023100d307284e9fea0fd225f261790ce8569d457f0f03bc7aa4ab8e38c8e51d698e5c4f9289bb25c0004dc1f7159aad9e9b780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230566f86cd9e820c62d317d9c41f985b85f0d43cde31e6ad828fc0890b60a33f6dad040d360772e0ad0fa708af7ea7c2bc02305566ef64f759c4e6de39fd8fbda0717a96d629b1e04e49eebec7410fdd590d69e203aec8cbd8cb0a690232f8ec0462de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059d8cd415d515dda2837929ad39ee5a8a2b35408f164b1be9b0865b55d232d76b9e7ec5edf57c14ecbb258499a154561023100dea9df3a12955734431d3269a5039224adcd683c5c5c82c11df432c9039ee432bb22592a2458404614e26f90d36ca4ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ea1a6bd48e11c9c6e8dded47d3c6084f673a06d399af15c96d91329828f0cf774c5410df365c05c15e564973f84ae0a02305ee64343487125ebe2b5d535f9f9f65009b39edebf958be88b35639950c621d266edff201e014fbca82ca6748cfda4ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e0bb24cd5eef636b8b6bcb952bb73e00be22e2ba5fcf88cf31ec5f504c37fb29f697b9b91ec842047709a92df16db06023100bccb5396f8f8de659dff6912ef977b74e6b3a3444e2151a484167dc4429a657d2f8720d88f68115c2d233abef72ab6e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100981edc28b906f53657c18e68854f34cfd648eeb3da17d3c6e9c98bd41dffb23fc9c443d401e67484a42484aec4977a710230525c4e13daf1da53700782ec5fc17b685cd3dfba981bacfd108e9e9e24bd5e34273504377a6a5e5ab97f87e79c9a0c720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5729e00d1e07bce071e3a060fc87a32003c06f52dec980682fd6967a231aa436fa07b1d77bd1fc87acf9515f7c8eafe023027836e2426882f56044b78bd4b2b4f8ac4db8c8c7464e3fc284f7ba8e691cc172b7c2b63b6e2ec96dfabc0034d353deb0302047c435bb500673065023100813674ffaecc3b672a1ea6116d24e70fb44d3068070407518b7ae34e17f56cfe2dd9d8488c1a4e84364367a1aa3a15c202302bdab733af58a8365d36bb6ff52068d1c6ae4451d1aff879b93421ab01a31c0f04883af4fa3f3ea941e57747a8c8adea0302047c435bb500663064023039ed21b35169ad82a6830e169b4c39cefb128c6ee716f0dfc514d5884aeb1cea3d447e5da1f65eaf4efbfbc54fdb5376023062e12d026fec9f56bae646dfb6ebf562f238d7d2f4a5020f4b03b24186ab1d8f460e9cc2ccb4f19d038f75cedc99e1360302047c435bb500683066023100fd98b477e010053f1ae6419bceed0c8157b5fcd2aba18d3ac22d5c9eb068d3bddc10e4ca12f15be852ccc0b3ad51696a023100a45539638e7b214dc2c437e85cc9b2c82c9f8048d53b6ee8ac15a91386738338127bff15d2e21f7749abc3932a4e2e0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e6ee6ba7249ba3d2ac09895a24e4f2c6dfa95064e7e39bc96beba99490dd200c30cd137a4cbe751eba3a035cf1ba6de023100b0c64cb2e2802f2b35b6e8524c27427bb3b632413d08ac467ce0ae4445dd89eaea38451b8f03ba50ef85d9bca919d78c0302047c435bb500673065023100aaaf09133598c0167fa756ed5367fa7a8d64d21ef044db485f65e650327bb9ee47ecdc2943593bd73cc030a2994ab4ad023011cb373f2219d15f5686206aa1b59c9a8f9d381920aa2fc0d891e32cca215879e7e2b0f6e4e97a1380a6cd48eef83efb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc1c6f2c098249496ed24edfcae7e3e745d90ffba3a2eaed07f8066f73056c05b128cd296bcf808ac8b2652978376778023031b91493fc8a63a9a9c475372832141ba179db9a468324e6fcc2adef70cd5494aa21666a9b7f5297e003d8a1f81dad850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bc0eb77e968d82d0adcbb6106b363235f6ae86f23bd7f52622bced500f9b39a014f2b2aac94b2ee1aef2a8e353feec10231008e74b5cb063dbb74a40a61ccd218c99462c13234b4548726d77c1b8a3960377fa7ef5b5a7dd894c271010d5c6a309a390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053e09254b424811a4582741fac75ec7b881659e094531353a5752d213d57c8d4446e01428fe4d0c887225dfb24b1c95f023076bc24a0168e6d6e142ff54ec71d410840a0c767ee4169156c886292318615d8ae0e0ff35cd1f1646401e62394234c7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305473d547d63e666c53f59e0d9cf560c5e42e1b0f9c9bc86471c2730efe4c7a00be04f8451b8c8942f52863faf16c382f02304904916defa5395d38517c0f2268d958538356ed9e0afd1a9a699ee67db4509a4353057d8e584907a5f4aca51efe18480302047c435bb50067306502302a71edb9ae8e40478515fd91c6a6ca5afb7d09333f8fd4d5c366045fada2d40782515decc4d04526d21bd08a8abfcbfb023100f3cd2cc5fc3320277e09d5598e43b94df97fcd0a95ad0227711edba2d5deb4ed0a47e5a38a84d580a7c9af6acfea8db00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2f4073012a09b583b12889e1566ec61dfd7091d269eae025de572af257bd018017e11a2969ef3d5a1028cffdde6060a023039535fdf9b02b042dbb6f00c78ee0180b6ae70fa833db47045a40b97df60b05b75773cc7e870d9a15a104d4ec7848bcf0302047c435bb50067306502300f4f63a8b121f4e98629294368691ae9f29f0d5e3973be6f37918e076706016ff58a351e2a37f425cce3ea88238a725f023100d4f0f16a34f6645fe6cdc56db1b81f683f60532bb10fad378ff0e539a3050fd64af71750ca72a9ad905e8aac134ddbf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100abd8a4ae9e25a7a6ba8bfb690e164b77e2a9e6da6fc7723d3c41a8e0b5b2094468d4acda51f4d1a340c7c519c342f841023020f9b48bff2862a8cf0facf7507572707fa7f8a8ae5c460b0ab5bafaa681a40ebd853bb437ce228a7ddfe4118daba8070302047c435bb5006730650231008bd310ffdf8fcf74f1db9afc769a03fb44ceb33dd48fd2c0815923a83b3a83ab9f0743cf14a7bff168f1f4c605bdc09f02301704d459c95a37de3769c142548436321ea8da709a314034e759ba25c319b7d17041860f1118cf75e2b89f1b9f3bb2270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230533443114942f24841f0b418781afb5ebf26dfab09cdc5a37c84d498486ca897ee8e571d8d8953a4bcca7638963afec50231008bccc26c8f18b02c901a4c0483d5d740f02d7024de7d0a12c0c29c81b4d620713e9febc5062dc3f8cb4b7b9947bed5960302047c435bb500673065023079561c1d124e5d32914ba66c773ccf89d3766b6f5d95ee5a6b610a8352fccd9cf33635be68f3cab55eb50a1a634dbd3a023100f982045b865cbc15aca9469985ed89ab83a692e322480a4970411c5b2a84e67db53e0bbb6ff6b058735f9d56f27015f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302aa94ec6099173d5ea7c14915c917dfdfa3c2897f2096556729635173885f8d4f9135ca441994179380068c2f84ffaa9023100c02cfa989171b8f6bc194b411929c3d80f3969e96a1822e6f2bea4d57a611a4cfcc05c1c5c3b5c39e6857fac4dca04d00302047c435bb500683066023100cb0ce335222e42c2be78fb533c66c04a5d02c27d97f962a8a3fc00d051190334840e7090bd46a009abe6cb81d16df67f023100e129bd227a37f70f19355570f8306ce45742490e91cc63a4e2c025f69dbef94b40799c886ee221c5d6868624a2abc3480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e296d28b300c0f10031be87ddacf435487a4a033114bbc507e7e85349a36a5b25d92fd7744f58bfc3db56b300eef6da402310080d501c3058ae7659b00b1cbfb7f476350d9680c575ac8543fc925655bbb26ded20d4bae1525aa9fd60695b6a65289bb0302047c435bb50067306502306f37579ea135279bb08955a539f2ec8b058971de866fdda73b76cdb7e1147c960b1e122c0ca34904e1507024448296db0231009750a3aa8e891c99aa8c784c52c8de30c9dbce1fb7c601fd74f4d11e606cce9ec6ac04a961fb24de83b9e201bde3a75d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e8e487d726dec6d1ee3a21cb0f33cd01328a79574a4974f0431e12416101c48a9e30f814610a74695fc19cb566beda480230277bd6a08ca916d5be254ff03f1e0e2857f5ab6f6213e9a94da417375666ca7cb2e094ce9537c1d0195945be15aeae490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230799f28019daa83dac12ee2f8c94dcdd9b4e89fc76611f6b9bd69f942282a3abd6c114f5db0a95e551763ed90bbbadfec023100b0304251ea3412a4e70213c37849a962e78ee857a9cb868e3a7fefc979370b2b92b988e7ff7f41268cdd689ef7a9e2b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230725e5f321012788fab4d03dea43f1d6b9abf462eb39fdd3488dae6867d2b1c5108a786bc037bab92f179a2dffff129090231008e3293211101aa122ee6e5f58c8c1f3a00f1bd7b96a0519947c8facf5dcd9f563073ce07eb350fadd5239518ce800b440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd5ce010d26eff750e24890dcef66713d6f9bd238996029275da92e6ca892388920e46ef62ba5429911ca83c9dccd3d9023100e651f92881b0b4574f4135fba325bd26be8f90f3de7135abd04d32a258e8f7b5c8735f09e43a7d370361116eb0808ecd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dde2868eebdeb2f59f3906356606c7d85a69a6ed338d80af3e0bc1dec1a1bee2a6c360b444a78a68919a1bac67d175da023100ac26880a052efe3f1593995cbae224780bdc2ce507d3197e2f8db7feedd0c398f167b9ae1d0ac43ba0cf9b6a69eedbd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf15f7d91d366efa14b15cfeb8c7b93e6ff0a6642939481ee3a91b9e76fe4b36639a55e215e39c5892a9e5c88a42e55602307c23b898a7a7c41fadcb2396ed582bfcdb4fcac53b8f02f42c5c72cb850c19b770798011373d0c48b5dcd69ad1ea4d370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061e0b29c5b5d7e37163c1fc9b6c9d5c0f509e64ddf77565c5b7225dbf13e2ac9c5a07ad6804391fa0469ee1d74e7f6ce023002e70937445e3f79cf8be247e982100ca5afc1882d9602e3649b23aa1f7289cc83b97939f671803a01942088753a6d650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b078b5867d64e353410723dd5c661971be361f38ea93d153794e576d0c2219c9014771729f17645ba3d909fc1ce45b99023100e3fde6b92157c7738aab4a9872834428af616e06892202b06d2445526ce30ea45ed3daa3af8bd3ba134217c8d2ec3c7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c20fc6ef30102f39990f096f2ebe566eac0e0615ef7d8638dc7965acc5aeb9a38a32689734fedc9934498fadc7799a7a02307d98b9d094fee72f5600b51c4c70b22060380e27cb02289139e2491bf98945da51c915ba31695bc7bd5eef4265e681cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b91be588fb967952fe2e48f8702170688d3bd6f77db83f9fb0eb4c4e90c3619d0fae68b34385a07bb10151df8cb9bc0023038176e1574e69c0ed18aebc2f175ff4b84d70c9a78f69a34853941b59335bd0ebd70e27b393af2e06d8ddc7cfb2a80660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b6da3348a4d4c0241a189a1b23003d622550792acd20b4d04536c1260b49db69db2405a9dc6c573cd28fe97b6eaff0f0231009cde6d99abe79b2882b170eee4aa8d158859ff05b0819314300672e430491c1fba8028589a08085b07749b83adce57700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f408f633b5f26d18aa419cc12f1f26c9565ccc2ca3eef050f315fbac64ec232bfde55b4c41fa4db51bb392faa8b5080b02304105343f318cd5cdaedd49099fdded09c232c0d244165630d8a38b804a7696a6aee813a3d63e7e382e8681b1973366970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008591060723c956d5e532b31aac5a97cafaebf7be66524359794320d9678e34eb72d1665dfc8ce7d9e2270b79ad7b126c023100b6e5fe2bdb226cd1e555b194a5cc15f1352ba172375c0562eb7a99e7e83a37295291c4c4c6fece6ac8d6d913d1d49cc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023038d257de324896517da5fa528e787de37e9183de5d4d6381d6e1adb4fbf53027c25b7817a814c17a512e80f8f3151db302301c469b1f1f4b4372485e0b34333c81626ec368233d8ed389ea5b32b383dfaddadcf04798e9c554c3355a4e9c9a4323eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014d779ca1d9a7d09aab161791d4d9419a16fc915aa1304bd7bd11942a3fccfa188e81e8a8412096ba10067d0317f231c02310098a2ad45f0162c79967222d978597e7dfdfe6a11ada62630c9b86db586843bb95caa42fd12cdd34f8591b40ce56d86f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b2e7dec6bea34599eb75177bd498625d9a2ec34ec3762722e0f0935da52465f35d40fd3c3a345782a5e1784720360a23023100a5ad567e37f4cb1321868f8b58c26862b474071706ea21c88c1fafff8fafb1813167d528d9d548eaec5c94c708c4293a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c33646601eb63a88e6448c6f2e16aeac7310ebdef8642287e8c0010ead56e00db0430b78e28b1c6145f150bacea5535d023002f2e575f8c5bbe7e47707b71e00e20e3270322204153c670482a90c10f3affece8f944f528be4149273802d655f5abd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300866adf12343af5d4c40c3264ce45034328d4379fa607794eccf9d3736f07098fa07ed031a8986ffb12f0d17d20646760230594cef6c74eb9cd32f898b63b12ee9bc2af768051da3209b875931b77a87364c35baf7cb55d9e73a40fe705120901fe00302047c435bb500683066023100824787cf54913f2810a83c9ef98fe46620f8e6a123e6f23a2c765defab64fd3ae64e85e4a52562a741fc392fc0f445ae023100f2c941bbd4dc0a6a3e7e7ca9d9775d6f9db78a68adb2d2191e44a70041a8b6a1592c1e9d6fedfd55d9157d2cbab1e81f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b3e2e9658726eaae926024c1390ea7ba227a4bd5c5b70f62f0c0eaf5e00053439273b7b2a2a191aa1d3b65c54ad721502306d8fd9e2a3152b88816679d887363f7a4963782868d902d661f660e9d0d1c9fcc33878073c4084b4698d1c68c62fdb920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c45f8f7a6b92f903371af75a1a4446c3fe6e203dc81f121eea4d0eb465c4dfa2446477da1846bf9b178d8888f4051c302310098fdddfb3d732e3e2b1a2b4dca9cb7f38244c647b4f338fe4e62a87a985a710c155f449e485d6e1745d463ce8e4bfd3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cf28a008a938d9adaf2905f60ccd8681f96de72f513e2ae947a25d95f61e589fa2b967dd6b23b941a625eab1fae4e3a0023100e34a5a5ed6575f6e6105396230581234c23c66997f53e5babadcebca07ddfd17ace7f448be4386025ee43fcc86a77f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230156fe5019f02f4455a7465d224ed1fe0198349cbb973bd621c323847ce24fe3284142afb0b9f3c5241ffa535132ca317023100fb4f3c59904753d1d92113a23d989a805f5f9d8e41019c1d6acd880cb1fb501cb898f4437a6622bef87e4d16f09906220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091a26c1d42211c15f1498df28a1423587d85baeefea9366f576b889d638a0ca5eb4337a229461ceccf6c3b121d23ce58023100ab8056591f72ad23453fc6f0eb1c894706dfd71f86fd0a4ab77be2c128b6dca5319b972e1e27e455a51973313729eccb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a6151300c194fe018a7f12145192b3ad0ddc21d9a523b849bb73b15ad97505fa6e870479b260d01e6d1f53f17fa51070231008df8d199fad324182e94d2aadfe59c21a00b985df3c94bedbc2a64dfa36d49a9defe4bfdce9ff7e8abd26057c62db9740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080b7b6070587307a050a988e52ee1642cbafe54471b17b311cb34f06d82b9e7b6003710658654e47e8fc791a8e3f96160231009388938df9d55a463c57fa3009e9b6f156db3737385e33d74542119874956893b0898ab97d7c983d882ad2dad7f28c120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021e49b392dff41d0df8ac15a811d98324442fa33e12af9c5ed8d428cbc8cef712f396252af240964d51710fc941e4a94023100cbf64a8b7ee240dbaacc42f631e6702cfb881a24abcd4938e0ddd85ae5775dd446e173c0b371df7f9d92032e591857190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c5be6d0bcd0bf7ce9bb5f598181f915240d5515655391fcb6bd0e41e7bde5de3a6a55c637b300b70b69a35cebf9e36e0230776f06dd6e68fade0c1247b1c73cf49bb043a4062b9001e393c99b4870c68f48b792c5e97d9ce6df3d5f7eebccc5a5e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b42a191001053389db7cc0ff3d0ee049c1040c56684a14098386bec26ca31b50a1b46507909189e46e00d45d75e13f4e02310083161d7e456ed28685562875d2bab523074baa56e05e59ff1e8c10af05a180a3581415a54f360c0e4b974f5af99145b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab34e08b8969d45b7c8de11c8ad241edf4f52f6ea4ac4c6d6b2630be4d246728a7b5537ed19da62666a1f4ae906cb094023100db91d682c83cb329588aa3293faf351a330ac2869a25974e9dc5c6a4c12d596307831f3e8a6c424d3988dffe23266db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068cf9dd859c88bd64e2adcc834b84f67eae45885854be25e75e5261e3872d9584860d7375bd2193a0d397bcaeb9c5ca5023046e2cdf36e93e0c90df12d863c7a5ed80c767973a4bd9809b090fc1f2ebad682f4776fab427c997c561b8ff6efca708b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009e6c2595e066672862dad49701c63ee5d1798a1254d1411bec8e8d5a3a123b764ec2a997e340fefc6074b18392bd3bce023028304897cfe329f42d0bc35cff8c433569a5e7df6c4084818342a1eb7f37f8db6cbd6e126c6055b285b804a48a0140350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cce534f136d31442be07907d22bdfb020d79cc4e5a269e6811c0257ec4f88e7a354cea634694e8145d00f94670bcc19f023078a7e8cac909571052e53c6aa7beaa3f4d6376c1f3b29d59685e12363ad78dfde05cccec9a6c07a5a1a35b6bf2e59c8e0302047c435bb500673065023100f190d6c621102441a042d1e2f2084f04af68edca1e7b8cbac63d70dbd3b9f9af588382b4a146a06aa8fdd558326cc49802302f384c873147b0a02d0c0d090b1993098e1a9b27b76bf48792348c9d10bce8b27e3549947bb12d4e60737a2245f101280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023009c6bd134fa56ddded77792ebd78ca4505cbb3b69a34a40ebc8d30c997748170ee8457e8a91d9d6a91286d9c330e0b260230250a5d9d74e0a8c622f6a0377d6b8164f0dc9d3ef60593a8f82e7e6ef69764dd576a13f008fff715be49fe7d14f7dd8d0302047c435bb500663064023028cd9496ab4f075eb60e2aca8271325921954dac2f8a089728a01749ece313677aadabb06b779ed48ebfb44e5466473e02305a03f8d6e8010dd94e25b2db3e3919946f0a7af5e298c085560221e3f7025b578dd93b287cdc7bdcb87784e6420aede70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305614973e3c76cd59a48c4a8942d213e539c57a124f4c40de1e215b0d2c369bcc463d70ef0fb9a15974ff73bb21d6dc00023100c6480f92acb53ee52251ca90b9eaa4fd4783ccfd9e8385219450853b32d5fa1b047c0e047f94bc08420d5c309845f4af0302047c435bb500673065023100b77cc065d933817d31c00f25f33198a465326fa37e65e128436c4ac405615fd257fd452b73c37db162379db85d02088202301beb7ba490f829889aff1d684b58e3e9862cee340fa0585bbcb795c577c4922a275ecbb3043b677f79a358ed1b85791b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301aab98c973c282190380f74a30fe338040fc957afc50c117529278256fdd1f3dc6a99ea9d429cce3815ccd98bd015d33023100b5df8a41c10c1b21d0d3505f0594017cfa81d53da4a816968e0ebed975a07d6a80a6f725353a7b5b1ca9e409d6475b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3293495cef4057abf3edf33c01fae21a5ecf225355c4d221e8a7ca65d9b11521f77b61aaaa94d4330bc4c387e3d5fa902305a5040775858b8167d6d99632792229e95ad9e84eee5346e1b31906e556c2c03ef82cef500d57b1602898841d2f67ffa0302047c435bb500683066023100b2c7dd4725ff8e7d6cdb931d5bca5ff702a31922369d9fc2113083c4c5491e074b3931a0fbf64c2da70112044debadd80231008a3226e51490e1aa55924133e8a7c43733c97f2c63f1c084386da558ac61a8ca070dfc1c2742c1568e01517f92e4831a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c804ef852edcfb340b81cb9533bd3771efe2f99c2a586d2d735b2da13467b096a9acd59136817fcee568ec5729a6daf02300ed003bdf369d09a602d214a8de1ed4604b6c3f70bb7d6e7952eadc50c09db506c17b187c9da5b61c73f14710e9397ca0302047c435bb500683066023100c78675e0daec7f2b79747fa570beb74785bf7a64012c306c209bb37531f3076cff92015b85b4e0662b20ce4921a87b8a0231008d4fa458245acddcbc64e17c7be93aa8df73ea30907c17d11b718b0e628018e36031ce9a8c08aae3f0a581a7de6a91870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008d46de2535906d094f16df5ac878ba4532d719601fc2f2e89f9cebe5c486fae797a27613a24e94fdbf770b7383fea4b023018ae6d9c75e288434318031d615fb818741a1a5a2b30c0e3d23fafc3657a891e35445e7ab77ac61d72883e856c39bdb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042293271ca7a280bf4591db3e99d0514caefdc392f207e522f7421980369988233395a735ac1743bac87d2b55df3616d023100f2591fb5535642c911e11307083a9e191c234d60648680a003f12fd0c184a20bb332818b147f079bed9caa693414c0bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f4eca30643f6f2361f0e9b7f818012d3a26975dd6fb166c9daaf65082f8773005b95c55ca7e65ada84d0cf406174710230549360d6068633fe8e9f590c049d58144335d151869fbdce962f3b127bb3d625a560b2fd3f58cd0c51894b3f9a7280b30302047c435bb500673065023016315908fd02a9662d6b353f93cbab2cad61b615c3e48bc8bcee069d0160ed83272626cc8a82852b919c71df331898a50231008cab533f973a79997b150da01c0c3d3440bdca12e609e24451f2b1d00d1be429a1223be7b4e4a9d77f195e825fdbca360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0a159d58034e65145650ece1d1dae176dc44d998076ed0586736c5b04265e46dfc343d2877404d268601d132603d2c4023100a2bae152429a3cf9fd7d4d864aa3d0f31c12ba31a40d87360c007738bd39b0a8b05f652b86395206b3213cadbc19104d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100edf51249b9d9155281dffa1fba3fe982ad42baecf63b5536dcee589283fa9b0c4386dcf360d6136887331bad29062e1102302ad16719193c00e30baa9599619fa3683e0b0cbbfcd1abde564c142de62ec2bcafe45d205d8d0545cc159470b6f893080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230388a9e513b19d1b5cf30bc281eca395fb4cd63fa0b67e62089f65c1bbd32eb71488cd33535e9e28d7dd0a165f9c17cc4023100e51caeda0a283d60e4a8205036baf6a03679f37d534c2f6968a87478b3cde275813784a0a458505dfa0d2c71259cb1180302047c435bb500683066023100edd65704347da809fc1de7c9875554c6d14efe448f44ec01f93d16fe3f9bb0adeb13abb952271b45f46d7a619e225266023100f9fd0cab6688147ec3809702e64422fc7a9a6c56420ee446208843cd6fecf4ddac65c7fd9b7fbd2cef9e3a630f1bbec70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad2e3dc8620af31ef6929570110a2991374c5719ab8b7271ae5fc3bdfb4ed9acbc98ba27f053f0c4f629bf5bee74bab8023012fb2543b52af7519f8ec76ffe08643b67b973497810afd753288c821e44e57b61a38e791ba75bb0b689c85ea1c28ebd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d68baff834bab8d48e16618a370bd05d234adb90bfc3278912f0647151d01f23d7a310192b131018c46e0cb30a1ec2a02303641df1a9f31aeda57cc7be9175384db6e4f2faac77b80c4537823cba625f6e9c1719701f41ec4dc8e6cab69011b90160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f50f7a7acfa48c564e5f2e63d39c826c8eebd47adf8a205c89bc111f67e10341da9f9f367fe1a393699d5c5ee2ffa544023100f340f6671472edea4753f8dfd2b3fcef623e61d6705497180968e18a49071d20f5a1b83e70508b6eacddb8df3642dae00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ffc3e60aed338132cab2cf25aa78b36c1b02ab9c0f7219f9dd24e63f25a7c48a9479c9fd73219369976723f5fe300ea0230419302dbd7fb67b9c320c1e911cd187da450d0c53e3057b078730a6f8cb172215b9bb0fbfc32180576fef490a5cb30be0302047c435bb50066306402305196d7636f5cb2cd26219e7bb3980f82245bf1b96a1b7bb02bc2b83c75862777a3717811d20c2b1c075217bc37e4c514023012bdb3da6948a12672bebd8fd6dd5bea918d92c54ca118565c96148f42d40abbb22900d08919d3574efe34752c4cd5910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307cc2d8617e7bf8d7a2c8aed93328902001ff79808fa9bf4823ac5d125f6d0066e49c75014178067e6c2d3517e3fbc9e6023100d6cf77ed2a2ba49832fd7f3eaef3722c5f1154b942837bae08b43baf75942164214e48d557ca38e0bd02e34a474a516e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbe4f615a89223bdf5d60a835a090be5871a2f1e1247ff28dbe1d6b8a370d1aee6196e0daa9631e70742ab0aadf4fe02023100c457552ff699cadfb0a004ff815fcbc91934b26dd6cb9dc15b496dc87ac4c9b304e7c37b41c92e7ef1875fb2560473950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cba1716950b9459b76427ec70028e60eeab9ce11bca9b5c4a0c6ca47b4b9118ebabb8a860fab78581e573ba1b364deb4023100dcd1f2ecbb40e9810b2571a58a19cc1d7dfd96c84b6efd12f369a4919d75a0731390945b12ddc6ce47ad7f1a3eabd29b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230383e221046aebc6af18e78cf87d4dae009f1cb21b2d34caf5e9ea802a51b1fcc794e8923a50f72bf8a9440e71a65e354023075844fb0eb2a87a384b9de9a2160776f393b7d719b10de7ed7f73893c736030435d7bb70d2ec0711b1ed9b97a3e0999e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1b002e522616edabe2a4b98d2feb3b74be3d1864ebcb975cef9419389645de5ed351330f30ffba336ba916e8994f162023100d174b46ac812b7038f6e2bfb67ba032b722a7cd036a7df69b9519b55e90a48a7d5e598ce5985db0a292d0280f1835bc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2274f98b829dcc20dd7205fe5809f7b917bd00b3aab530d8bbf05d63205b7f9ab8a80e5740c8ff4f9932c5eb7cf95e302306e0a89058c854ebc869608fb8f719f0536e1145c9e426924b7fdd7c3a7e8c844c55746a7a7be96e93f47b93df5fb771e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023048f239b51ef714766b7e04b76b0f8d0688b404182594250e9a5bb8a574d82453d445e81df778ddc5f1d899fb285254e1023100c2a25294fd7c8caf2cdfa26daf71629de0084d5cb0dc963709f279e2d0d74611b235da5919e97676810b8f05fc2018670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bb407066dcaaf18cc64d63c56533a0ccb9bdefdbff362fa92b1d1b9c8d9b878435cdb532f094629ffa253ead92b6662c02304fdfb288e18d6a5cee21fe0aabbcd356b127405a3de5aeecdf8ae8bede23a3d2f251daeb6f8e6cf6526e67016ad0283d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230239588f1dc39aa57727aee6aad7e816da0702abdd0423552b807ccbf02395a5caa474675179414b0b480588589c389300230463129f058b64f18fc516f15e79145c98fb4c9ed404b0101ba4ce368254139d68abd668245e941f7434d8753455bb0140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f41e23dd13be42ec863d97cf047c4ac03f26e55805c776a39205148ac91bd8f2694a6de962b6e15f503ea1671ca343b02306eba07e475def561b09449a392f365248c0973372d5092566a4425a32cc063ca53d06e277ebc1c2f3261187bb05f7bb00302047c435bb500663064023000c44aba165c766748880c02af50e8a4dc96caaee26b1598d8d29e664b81d5b75ee79ac7c81833bbf94baed92240f3b5023067efd7c7c16e4390aa66f18fecca3307afa802dab6d1211c25ec7e8a3953342055034d25326c7fa56f93216fc4eb781e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a6d61415277f86c4809df910cd98cd1a5947390665c801c88292841e1e81ecf0f6404b4fcc5636ab2a3f387d527faf50231009cfdf583a0aa9bdeeb01571b6b051d547782679da01b8af3c43ea85ef4d8cbee2a8cf76436ed8b0a64971b1bee3030aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f55e13eff0a29f2f3b5e1ff081a69ebb1cc8c9902b2dca242a62f7edceb098e737857fabe7ddf15afff00c377a25f40230722b66c2ae6b7aa089e643891f4cbf33ac6daf8bbc8d7570f6fd9b2691d2784531ae41a37926f2230f99dc6f999972fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302de643663f9403f7fc0c62cef37498b11e6e0cce6efefa48aeecc2ea391aea7bb7530cfd5fa3a5a0c52eff2449d877c8023100a524a7236d294d887809b9b7626a60a58ebf44aa147a458f9552a902a5b4d6272d7ce10905178d96db56f24c7b64b6ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023059afb911d942958107ae33cfc3f1282a2110caf75c0a1e6a84c00657c5474b4746a36b46b14de1a6375e73c8a2b9f3bc02300e1112ffe1f964f771f1c571ea49d122e6a28fba7a72c19d5c9701a9e3e107261c4942e37140b4b65db3300b65edb21b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea2fb13e460d3de3b41abe7a288270ef540ea95135f4bdcdd42c91e7e2b5a3c398c508cfde990872ab3df363f9b745fe0230252b999c3fd4d434ad568d65b77cb783c5691580dcb96bbb409cb8c4033f0a26b397d733f03f85688f73f884a4b987950302047c435bb50066306402307527f2561a95722ef1605fb266005570005fa95794982555242fbe3668c174005ee5ac67887dfc839d27f4c20fed32d10230202de358eabecfe1944025652694038e10cd70cc79670c1b8f0ebca331c47de5157e585bb5dfee822baa32c14e7647f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305bcd93d5898697bdad0e74ae2e37aa70319efec606ecfd23b1ed908742746032fd8f35cdc7d8ec5850454df8e7f8fa9e02306c839e4f23e3e8ba4e5b11df0cff871e7a43b6aba1be47aa1d81d52b431be299f1607801afe5ceaccb2a9c7df8553dd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007ffe933fea3018aa33ad5d67c3b57ada5d33a1400d2901e082b98b5cb39378cc37b2ae78782c287b9412d08cc323dad023100ade5fecc40a085b05a86aa9dfdf1a3f31f440b315127a7939c7f0a672d9f113ded5a5d409ecf3804f537b294676952750302047c435bb50067306502306f9541acf4c39e776551d32eb872935589bfa0ccd43c965fa820a767a33464b2d5a9c8e2edc410a9045c2d56c3e0e60c023100ce7e42da1a0fc983370262d2e63b3bf9428784195f5775a9b3548c36b80083ab3918e66b013cb52d46758c170f7887240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b194215b2397f28dc843af53cfe9d28b40a0f68c1bd7b1da2419aa5f405dc2f510eadb1c7ef233b24fb8f529b50386a3023030e3c688b8715b6b4effcbd6d8ceb9cb2ad02cd096c578cfa032f0b3a97572ff62c5eaa96f062a69afe2ca05a3c75bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070ca0a5ba2dc75354d69d4d94f3ec16df9c73c8febd12b2a2ecb6e1afe415520f677f9b0700aa651e5f9ccc6fa3de69902303b10db40ed9885103debc9d9679832562b91516f68b504d96a0a532a57ef27551f0719381b68d3da26a4b72aaca1a5e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e5de9b2195ba9a14ac4fd2921dccab3a839b8ff52bd6a9a6fcbf2939fa9ef9b705b1defb91c80b21c4c537fa8f2c5e502300aa02650996f8b26c1601e15ab762bcc92c69a57dee91ede1efc2d7461ba90dee21b684838f45bdabd7904f02e300bc00302047c435bb500673065023100dbfe8d4658427f3dd882bce415c45b813d48272cf19dfcf568a17a2ffc172f449ce74602df546b74fae84bf2bd054cfc023036b8e7c6df2681a2fed2ab2211748337e951636ffc1b418641098b08f844a42ba6c9e293875359e726cdca7178bcbf000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a145cfe5726b4c484acd95dbfb65959a2de7b6b97b8b32a4181f31302a02241824e892e3ce009ce6026c476a0102e2480231009784d12de3c14c3d289e7ff6fc65630b25ab4440b3cfbfa9a394f69d828ac67ee8353b56f85a434db64d2e5ff1b16eaa0302047c435bb500673065023100c5dc6b32c697052cef6f90b1ebf43ebfd7fb88056bd81211fb38bf007a714dd732f804274d0b975dadde7bb5cfd0b3ed02300e294ceca4b29d5560c99c13c7d16ce0ac1615f60e1bed7e92aa29a60e53a2818610d7190d6f838606efb484b3fe6e3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a67ca8a5ca86a9f19a3c537bb59e0943d0cd9d600eb82d21864a26adf982b09d41546ff06fc4f3de358593716e96cb86023100af023b1d9b112178bf1d363746028fe997c1f72eb3b63b53d27beb1d38cc55cf41af6995d00622ea054298654e0e39b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce5e54dcb458d9ded0c85d99f0288cb7801a3e9cf590b1a1848397d2048ab0654bf109e9b439a728ca99268f8511fc6d0230485b2b81c4a10baf706d472f532ffa0fa8a456ce02d86df7796451b5eea2ed7ce3c15dc85105d9347271dd27786bebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a9e360a740cce516f631b4463b12de891e5817c01bad587c9a50953a2f5505127549357e8ded5cc6873495a1fee610350231008a164dd7d6adc49c8209f4dac6c9fa83720f5f76fe4d7f03cc248cc6177cb87775798a0d9da86eb4306fea1129b6602d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f5041940b18e0ddc6de848017f87cb79913031edb7507f08a8a8ae5d06fa6759414e9f3f2b7a971075ce04221dba3262023100a098a16cbcc43a843f7e1c873479238d474459654e95c7e0eb446b00db3e5711c0cdbe0bd4fde19e2362066cbe324f0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087b45f36c862b6b5039fbc458939c35a658ff1b829c3e8d82b6d5fd8babe3e97848180ccc7af235b065320d2e5b5c22d0230178ef5c425c47ae3bb353c96158202148b656e7545e6bfa82a4320c2bca235f7078ada40276b140c7de4157df682dbf20302047c435bb500673065023100c3033cf6e3638cfa7b4171eaba08b76541b1122b33a46eb44b7c85acbdc0b9281cbf5442f6846668de129ccb0ddee24d0230328a71eba605d291d6610e2b40622a716de6ba371c95400441ee364752de163b293ca42fac6ed9a395078724105f58650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304779fa510e4107808649efd9f00b846d1cb21284f58924057ca4780336d1481da08c39e5dfc318ed9f965f31ef7ce2d3023100cc09e91996243e73b9a17aac4af04b475011be14b06f02533aadda24c500317aa6b62e0af2579630cb655c8817057b6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057daf77917b0888495df4de8194889cc003f40be50d3d6874da76e22d8695d7571b74cc73fede8aacfb7bb813d4b4872023100bb37326eef4ee569fc49608d06f63cc36f4fc7778cad461127cd85ff6de2b56f0870b30c9d19e6c78f0d011da68fa6fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f9fa86756280ffdd9850694de39c03a21c725282fbc2273a0dc0f1e9cc0bd5652e4c3a9fcffc33677447c069614a98e023100fa44e721b67bced661353a3f2df124953894db5cb746050c75ed690f8305b82a71cb4e169e2c86ac17e00078248098d70302047c435bb50066306402303662e91f2b1c0df19193f46212238def558e284a8ade5269e560cc03c74c2f23ac7bbc155ac51d0861b6f6093f6fce6302302dc4ee5ef7b2edfa0c3f6665a4a08e9a0b75a0348b50352e2aad56ee2c22c338e1ed991200327463b112abf7fd937b590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084fe3284a74d34ee81d60df637cfc8d398e3f2ce9af86e176e9a81ba5d8dffcdf4dd819e123339a5d1f58d490a06572d023100b3409b108abb8014fb2b4d1cac03e218168794eb72e959486448135b79e3b0285b7de29751582a273edb9eaccc2cdf650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d132f8c10bab3f2445874670f51176a886b3f24e41f046de85a740da7c13eeca4c52f568595dedc4e018222f2ba2de5023100959649b5c5b65df6993e1db43bb23e87a8635e2e65e06a508359e6f6178c3e50c3ad27a3197a819ff4a73421fc19d1270302047c435bb50067306502310084f09451e4066ffbb28070690d7cfd148e663b0ceee0ac0c3af3f2b579593b142b2c0feec89aff4516e9986ac8956f4b02300e2ab94fab5133c9734d5b4fbd0ed620967c46a025aee9e8f64f2b15b52601c7282fd21e627c67aa8dcdc349fcab343f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e037309c40855f92dad38f7ab8b6a3f03bbb36e6343a122151e33a7dc3ddc16a28b103f76b3dc841ddc3b327f1c36d3902305ee511a9f62ec8fd12a7c085a2c4378309fedf358e7baf94f25d25ff42cf8700b9f3523ca0bb24b8650077fb95e61c710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303cbfbec49dd9a986bce837cfdee9a6c0ec1dd10bd3616cb5160581ff8d5768d4f622985b49dc01eb33bba85dea48065302307fc727fac02bd0f9a64d97e1e79b7eec372bb64020d59207b48fb0f48940d7e86c3318a02425f443115a5db20c6ba04c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e037309c40855f92dad38f7ab8b6a3f03bbb36e6343a122151e33a7dc3ddc16a28b103f76b3dc841ddc3b327f1c36d3902305ee511a9f62ec8fd12a7c085a2c4378309fedf358e7baf94f25d25ff42cf8700b9f3523ca0bb24b8650077fb95e61c710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100851b89e232658df45ee7b33304396d3ec95e6051ad2825477c47ec65f450c2b09da18b8f42efdda667d46b47a0ca7618023100dac3fb39a78f8ccac98e681d1e4a076de29b6d7ecfa36077b407440d26cc136d735065f56a998a455112429a977d75750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027c71563abe9d3ce44e00a2e79e61d74101dfee89cfa1a13cf073b112a6ecd315ed03c39e687dbd2ef22788358254bf3023100fa59d22e99077e57fc6a1f7eb3ae6a67cf7999120d8be94ca114a2ee60dcbbf6fedc2a6a0177af0c9095c03ca20dbc140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ed7a4598a14c85701e739fbff0b47d2cd9064701418002122731b83a0b2d9c9318d24072a6f27bdcaa60c5f72f8180340230366a6d29df08ade432b89f88edf86563b5dda4f013d20c3499b3058059468e93e700ffb8e382f729440f49b1e861740b0302047c435bb500673065023008c40b02c22f217276d10acaafbd5fa16120baaa4192e7ebe3f6568a5c8636fd111036b0e07b5a5fcd16a9aadb7e6e6e023100b7fea3ded9f6eaf99084de1e45efce4cb0bd21f0bca75a4617a30323a5ceaf8b5b2ba7a3924c53276e4f6b32ac6c78e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e0d4f0b57da6b02cabee76689e02ed9404de22aa57b50a2fee7058bd0345452474f0e02f9a9f26147144da1b175f79d023100f51cc2dbd1eb73ddf98aad061b784f1cca49eaff1842b63f2af9b56f3590e312f2d4817220c630586f0c19aac9c8bb0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039311bb42df1aa9d57a43a0af0cc26e615aecd2e9193045f66a04f205f40f54bb4a5a51f590d3baea9ee440c3b6bca2702301b6e3e32cffd1f05311791024ebff85da44e5a9255cf5002bcd8fea480a9b992b32e187d35ffa3ccb7a8b0a5106046e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d982bea397482e8755828b48c3a033aac901e2db12cbd65cc4bdedbd6a1c3de61c207b43ce457a3b2159e020ae8def8d0230554ed2b6c3de5d40c5904de90d9f7fae35122d6f11137c80dce2a9d7f135c1c491622a1d3ec5c0bffaa63e36299129690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d982bea397482e8755828b48c3a033aac901e2db12cbd65cc4bdedbd6a1c3de61c207b43ce457a3b2159e020ae8def8d0230554ed2b6c3de5d40c5904de90d9f7fae35122d6f11137c80dce2a9d7f135c1c491622a1d3ec5c0bffaa63e36299129690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023005a174dbd68c17babe42fa8af21f250e121be8cc4f5d38cef951f9772990eb5c5a5b2002e1db4339a956ca3243d3fb6f023024c88a1f42ab97b41734c1085e54e6b45f7da637f74a405a9d9e1c1cf20f7649e462f1ece4c5efef44ea772e0a2597e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230471da892825e5771994a3b1e3c7206c183c06e330fafa0a17446622d8cf417e05bbc5a30feae3646cc7619f0c92ebc93023100d2ef3b282fae412a82e33cf019eccafc1bc4a8ce8f37faa31869a6d74cd493c8544005363284b3232a72266b7710c62c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300361e7b0c829a70b4ecdc8e5ac296788d06c71cbaca652f4138307da6b8bf8d434b5c28fad3aa37cfd36e6d903d9b579023100fe2313a6e782ae66ccc5745ba5733220189d349752dd9e0b2e6b8de8aa3130e18fb0f45a5d7850379e2117f011de3a5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b24f5bef4a9eac9ee890f73cb52b6c6c8f56ae91ba8d88751c627f16ed547f36eba47e41c8ec8b2b344097bf893f85202305aef33e102d71ec0b4b8b9e02cbbd2fb5572af0d285abad95a022a5947aca4e2b53fa0c63874a69b232b2ee9ebd3ed5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023004e636a193bb27d9fd7906019688ae92cf3f9cc46346e0194a9d0d33ce1e19c9c70ccfa36fa55152749bd2f05d12d7110231008e16c7309db4efbb81e3b3c72ebd0318be601f83f86bbf073ee7580cb3bd634d9bcb88b22e1629e352b37074e8936e9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ca94c6922cf3a96bfd5b38dc3e922f7bd57b7583b63062b0c3b9d27e9bd0d8e075d287fb3cfcdb1d4c39cac91b02b8702301acf4eae94a63f52372087d6fc5f916c4c81498320e1058d007481b2a3992c8b97881ddc01a84cfd28d4c32fd8df1e340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c8631c8e0d446d0fe4dbc4ef1c9cd8cef8e4fd09692c28ec3cbe516ac8ad30e2523d9e7bb7c23f153386a7f69dcb5cb0230643765e5c105cf903352651460f54dc73ce2de0e7783e8677af5da28d626afb6aca9b0885b75f421af11750503a27b900302047c435bb500683066023100de7d1b1bc3154742087e2224c975c3ce7510aa2287c6b2071017eb4d4642e9e9bc40fe045a241363d299160a2d20e1c9023100a20bfa51717f8f8544f802e4ac404f376fb6c1851422bc87104a75b3bdf6b34e8a2ea8fc2389757e910bf720873f274f0302047c435bb500673065023100ed131e372f1f9975e30090dca3ae80abc9c481187ecec95319b0115d907bdc7fc8852652e90369cf360005ee14b0009c023054e68fe68c1b54abfb57f82d603a25f6000a5435db914b2ec8ccc8c0cefed27eb6f904e7b6505e48642f0421d5fd98950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302956f4849075ec182d3b48870e00adf8c67eb9a0bcacb52f5c02286f992d31b7285105b1a19d115ece513cb748cb7dd9023100f5e8682602072f1b4e8476c2160b371bcf7e7d8c40a07331026534a3722fdc0cec032452182961308ca70ed7a540f54b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b984ed8dac140c2227d7210ac525b4ccec514c8afe2f8100212f72bb82f22398f40dada9f93a9fe9e1a0f5d4686308b2023033bdee19668914c523ef3952b64b868764e380ef6fe90763d08df8f65cdc1939d934e702e234d3d3efeb61c660d543ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b85dccdf3d5ca11258426d90733f849638bb69edfbfb80b9786a735f7536abcb3d78897794027035888076eeb7f98790023013aa67f09503b4f528e64082b9e0d9d04f3055851fee977feeeb53f051607613c2798f13732e96a1842b817894abca540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230282d5e4e9f3c7749985ed8227d12fa6c94f08217f01280b747d29cd3efb0412e5cabee52844e20f30ec5b02c440864eb02310095e737749c856ae55acd66ea4df32775492797987d1538b3015edec245ef915b288202f11e26faca84f313d4d8ea958c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d6738ab3fcc1a84e0485627158832b9e1a4fb91e0a2abe941f28be19f5d8429cbf03d67fe4ecda4c3b1aeaafe732cc0b02300dc4962dd970248340993050b9332f42df3a7a2fffd6b49f7be9262436ec7b5c485c8c1fe8de81fb5476c842e2312f0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aaebd9a99c4841de733e16bbd704540235339530247ad7a330a553e712efcd54f4fd43b96c28ce9d2c35a6bad7a4eb8a0231009eafc6486c2f64620103950feb0c32d18e6dd71aa4ab7b09a32effbe97d1a5d466a7122e31bf9bebdc70881185621de90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009aed515758a0b9e4189e1e026bb7fd9efb8a3f6688bf4d39c47faa7a3b1d652f7495eb7dc4276fd9d72d04b393ab8b64023100f7e2a7b0108f7b75b9e4f319cf6947ec3fbf4338dccf9bb821fc0de0f8b3d927f2e8e920e88ac5117950d2b5c45497d40302047c435bb500673065023072d90aa2b68ee2079ffc3fc3054207a76ba78e339b455f21e578a1380d7de61d5583df561945d9749d7599aeab082327023100a64dd036ec170035d735ba873a632f8383b1231b53f47b22d94b808b19521eab92ea793b474ca979b97746d91deab5570302047c435bb500673065023100c24b82fe56bd5d34c2ae322a1a0cb666d4d2b47146e870f36d2507deead31ee3281a2d801e335c2fb65cb591d9b658520230350b37ea2495d8314c13eb17f0a73bfc5ef85e28f24490b3c80d9c34f024275f6634abb7bcd01c7c79aef8a5ae63f0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310094aa5cfe43b07d1bed3524e58498f5701ab7763930967f0e20aaa7890201e60b1ed8cd746acc7c8b379194203d8645a5023100e259c35239e1b3fbae89366364ba8da1873f367d6840efa512d4084b4c8eb57778f2ede38b66912b788d3ed45d823af20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e6281fdd3e6067cce02120ddf84fdae6a019640657eacdb9b44f531615f329ea689ade749e67066e141314bc6b58a17902303739ac20f4aeaecda485987745029f61ad7f77b0ef87754696fc99efa46fe6dd18753e491c25e948f4b88814a8214dbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062a242dd03a62f47c52dfda7d34dfc50e0793c2ed2623d7f9f0afc2c0a8f623f200f3971d1cbdf8455e02139eb89949802302c9cb09f2b5a9dba80e119b26fb65f991529014666ffe4be35461519540e36f8b7b67489615e83dbde4485b2bca833570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd26d95663f7218b8d1e2d4231ca60ff8f0e4659e073666d3565530d07494a1017735e17f86e85dc2338c383f1a03a1e02303d7197b7a33a80830a142fde8cc5249cafdb8f50d73bd49c585041b727e7c7c61f67b68a70b886e90df653724bdbfea30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b847e77d5ce228befe41978add815d2c70d3d04881de8859f8162eab01b4a91ec9bc38fe5b6bf97e711b06938c3cb5a02301f98195a31c2dca5854150bc8b611bd03eca1b631ac9edd8fc6549d3602d4c89ba0ebb5919222e541663c95dd343b5920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306f209e1a130935a69f75ae4f376bea4c2b2682093cfa5a2d67884480a55767163d6cc1900605c4976388949b6237b74402306c028bd19ea99968baf509c4a69f227504a4baae558f7790ac567c3288ffeb57eb81678af8ea162df252bbb782a49bf80302047c435bb50067306502307e49bd02715298eca640b0e8003cc45f1f86ffb363a2f7746f49d75e313dfd5942b24e9260487ccfa036f83a1edcc738023100d27d5002771e92aacb63cd9bbf67e22cda2d362de31cfcb29a17f121fa355d04505e5d304757981279cf251352cbf4a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2b8abc6c3d4567dacd43b9f10f5571716b6ea1ad6f17446c2935f72957ef8237780e75d939cd3250592b48c0c5da8fc02301776ddd49a3d69bd1af64dfcf2b3c0be7a8f02baacd7ff059d36cd80717fb1837e23f68155cf1f0c7cdb816258cbcde20302047c435bb500683066023100f3132d501ed1b5e559df2bf9df2e9a4d80faeda0641d988c50128afbb8e6740e6c4a953294af2cad109df83da5bce392023100ff8cd039be3d252199e22cbd823e4d9fd898a7810040e74e0f9a103bf081733e78b0712318c0f18956c67ea4e43d00d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ff65bba59c5f97b278d83bde31680cf583876c0aeb620ebca8269d338465af4578328cb866ab2d27960b9558a6f5e8702307725992bd7416bfcc306b509e7b9cf6a0518c72932d79f2b5a93a42a95ab10909e0812a685f763303f4eda77d25b00280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1762ecafb3530311f5fb46049f4b6467458d7e30b72a147055fb580839d8ca9e03e24cc6057d18645cceecfda2dc72202301f6d68e91ce9f7e29d01713a442afca1c6c9afbe8a11fb36bf9b05b3b49b188771f6173389f0f05fe4da9e0a84d9a1880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304acdeaee1d0d04c7e3269cc87a2aa2567bb3d51d023cc8f6f58228d86278fa2d25ab346ab5747a5e296f6c68ea0d3a94023079af8a2d3e3b6aedbdbe098ad9f0babab5a00c247fb03b5bb3d9f130ac9cf3d64fdab267d7e2fa06b2febe839f8ef96a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015f2bc4364af5e1cb3ca1acfc0ae101ccf8ad2204a4e8ebd9cb26c7665fe9cb34e54562318eb772b5fade4400390d338023100b3126d96d0a543137830ec501ec75bd3779ec6769c7616115122c35afa51a824b316f8542ce4f09fbf2300403fb2f9280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093a26b5bf3bfe006783de6c8e3483549beb44ec9eb51c10d7178154b25c5e9e9e16dc923e630f37295cf4166d4eda2ec0230705f4a61b3655bf8baafcb5de96d55e60ef7136079300e7bd15b3ab0302619094a540b52c2dcf94851690b185e0fc4410302047c435bb5006730650230705a002f567ad398b744318c8436d14afb372bf4151cd7dc80badea82fbdc26b5f40ddccf8d284b23039950d938f22ab023100c0795e0790733474d55d8b338a36d17dc11f2d10c4a94dbe8bd09c87e874f2cce5295e98bfbe75b035cd917acaba97fe0302047c435bb500673065023100d2d0ea03191833cf7eb4a89f6998060c8eeffa2c3161025180fc4661dd63f7b85e4d13352f5eb3fea35b72568987d717023076663db693be707a432b9954dc2a37c47f7fa687c26e21e1182ffcc8cdd1cab9fe72ff43b7c1676fd4dfcdcc45e171a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0fde2db2367e1adbde19103e55894fe229b9af461bda469b61b383c839bd08f895dc2155f05cd8f53c67ba5d8f13c9d02305dc781699120a8295a88312410b3744ca489f838df9c1d14491b0e69498281814ec22d2b69a527adeb55e7f8ae91493f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054cb76f1b038e6cbb1d2cf6dd69fc88aeb2f2c62ac4f0556de600b655990f5453a6ff29c24333cc6cca9ee3dc412fee702310087e84fc2cdff6dc227f0a42b7a4a19a8f578398c441b3908e09e7fc6dddc8bd0821a1acb5f76e8c74977c91cd0de9e460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084bca2cdf7ed4f46cbd070f63e47a318f2ef92ba8b51c6ecc81d66b6c5e85390f9b4eff36323c810c345cab7c9914f6f023100e6754e57b6e66a749c5830e2bb7bd55969a60c3ee057a3e473591dcb69088a4116d173a0a7577279717d800140d545090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efc72e3243739067a6ae9f6534ead9c00dff052bf65b3d462a6de87629754a8dbc74795df97243576115b313b10bef002304671739a5ffe8f761ba231249317844142b6c6afd6b81f1b4075b1214942466add7873694244cf27ce8ec2de6e4b7f720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4cc191a08b6a8ecc1ed9074bc0c4a33cb2507f4b6c9073fb30071b44d2c7a649d2bd4d12b1cabfefc68f2eb6e51dc0802305bc0df5ccf1ec27a89aa88ba9c9dfe0da6337902ab13807636ccd96885eb9ed6bb80277f7d1f1c62fa9b7d0f0781ee3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009cf9dc3133abdec1fd1c4a0ef83f61d018e44a4710b49714bad912544ed95e31031e1731338a329856ce4b68a5bd52a1023100ea01b1f435101251629745a573af5695d7b4770d311129607e38150f1959180b2f7e421b873b2c43cc97dd7b5c0360e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301164ce7e46f9bb43fb13ecd18b20a8f1f30d57763349dc80d17451df3fabbc95ecceef9ba7bf0e4288825817ad97bdd1023100f77e1a5fde53c9652c716f80734adcb9b706fed4b6a4b5bbc9ec708e5abe272b5f0da147a7ca2817e6d14d39665f6b380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d2a2a778ea76251992ffdac4c7c8896691f5c5f96c7577de213b6995ae09354503e27d2b75d9547dd206269168cb7190230508dc9316d1120c8dd58454cb852fe2a29beb02668b68c3a10c4c0518bf32c92797f2808985f462d68d29eb9c3b439da0302047c435bb500683066023100b61a7e0472a3275d8bb66808c8146838855b67086fa2e90a06acda914f223196ff9951ec7c271719514b930a306f6171023100f7e20b628d9253e8964835fd38c703e957a4d988954efa9b98801e845d6a6478916b5542a83573fe465843f14eb5967c0302047c435bb5006730650231008e32aced57495ff7100ea01e1c098675fb512202464beff47aa6c6cd00a46265e1184d7650bd49a6e5e6f0db1fed0c7902306a21ce02a77b0015a9a99401d004895c471cb4848f8fdb4d0d88504a5f3f1bfc6b7eb2043e5e25695336aaa8dec467ff0302047c435bb500673065023069b0022ec340eb9b27ece14eb83295801423622dcf2022699b423075ba27a8639187f707e644a47d84fe60819bf3409f023100a40ea776d6e1f76eb3b9263e5de855d6de88044474826f2d44444ce0e8bb53bd1771f07814b835e43789e6e1158ef41c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b81b2f30df0c429d8131911ba8feafc424c08acc25c2457b23631db3b46d4a5bb0c5cc1bbe301a95871a92fcac5b24a02306e913a21fd66695e315eb6c5211a2cc4f2debc3a21df590cb7f426e95781161375dcc22d5360503f1f82fd3d0a4a17f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023069985714e37739a635a9198777b9ba0e4fe9e5c5e985af3cb40d8d75d5353b3205b016f3782634397b47f309577f4bc1023067f3a78fbca2875ec111aa330a747a92a9b03c9572ec660567fb17e5ad2ca9e045a4185bb3bd9d600246c94cb52bc9fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd7af23d50593ccf91fd7855ed7a8e0683cd66e6a441dfb45ab189c20b424828057112101a0a59b68535f1d314e30ba7023005e8d9790b22118280d9b13e09253a9d2eeaf9edd78d514cb60877509e86bd6aae81a3baf69f843af15cc2e9be05e1200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010fd9e94f9902c8b09c70b9665e719b33b9adf1698a84af91e4e2b3fe680b1fd7a5b2dac7bdd0d1fd3614f4c70d59ab602300aaa94b2facf65deb2ed2f51fd6e805e6d2ae3af94a21ba12f3c17ac3876a8b1573da708fe78ad7c35cb7210dfb24b890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084acb2f9dfb3dabf548ae066a7d3bc8600ef2aa591204f2e9fd82d6a4a541ff5883d6c06ea2ca6aa32b6adba7b02d90a023100c54822f0732bed6da08d6c8997ce571eb031f7a62948eeaf2c5529387d30541f9fefddbcb1c2ed2413a1d5bdfaeba5c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056392c23e2a4fe197137106d17a9df110b74087edb44a3345edb0bd9a6b15c3c16cc68f60ce462115689585f967155b20230621d545cadd22f9e30e7d04726c14d2ee5cd380622f913fea68465ef9eea937331ed9f17c18803710d31149369eb95eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079d087aae957fdea1c38e6ba1d75966cb786593e0cce420978e156fbc8c3cb43f2c9a0d0abe158226082abb61d86fd6d023029fe80c626f05be2c6a0dd1c4cc5f8fa2eccfce099d855643e5621e4bc66d9485b0136947318b3a262d91530fc236b890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4e5e5e4370f520e7e4516012c2190d685e8641c5da01136213ad7596c89ed3395a17c90c04181956e31a1949899fb0d023100da1913316cb714df2552dc399316a7f3c8ecc1dc3012f837473366ad056e5f6207b8f439f15e8906ff82298c24bcf0dd0302047c435bb500683066023100a72c49733aab36ebec9184be6aa504ee322c3b2e5ea413cb6e1187eac52059c6ed0ff671396b6ff685e7519b5e1e6339023100e457b6fb9ded6182125358ce327e7a7ac80b8a5be7292a9177663719cb9ebd10c105a67d765659382b52da5903aabecc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcb145c5538d748742e9f296d0bcb0f1bed0d41ade627b08635b81b6669b74299e1d95dd2056e62cd1eca47c891b3814023100a0b557a397e35a066de7289d8be683b12538c3a65d31655d48c1f2796028a26dc284a3610124b56da13051b93ca0af4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057b83b64eb04c36ce1b467d2951cbbe480afa1360098dc87a42827bc23101a8b16cdf1329c4fc0b9d08bc7b033e30db00230154872416f2c1017cc26817553bec2f64ad4c7aaceb795e073746d320605bdfc7ebb07bbda0fcc1481ebd542721c4be60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008bf463a672883fcc3258ea32b43b1676906581c7bf682a3d98a784fbb8e353543089ba83c9c6ce2de298c5ba45f172002305da4aa631f9161547f3b346becca6dabd9b2d91fdcabe911823dbf6e055b4c2a476bd3eaf33a3d4774628a890fb98cf30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023075eb61aaf8d0fa1ec70208432ce88c6dfed3e1f6d0ca5f9183854aad67594b73b4ed39a72211c52643e9534b67783626023054f02655f8639852d67c47088bae24d336e8efdb051d942fb91a09479719d00d9817a0f6e3ac2dcea48328b4e29146d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300a936ad31608f20161cf1a0446755d8b3bd3dbb009cc2f6088a1753623b47c4da442bc1c45018787762e2007a2114e2c0230133d1d40553e9b3cc29c0978437f2fbe7aeefb0e0541c38129aa6cba8b00a6f7a81215892edd1f54c7c608d5bd703f180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023030d2b2073a45019f5af7af82b36484aa62c0837810bf91104b19d0fc484462c5fbffd9681912faa8fdd247d9caf9692602301af3a9a85a6cc6bfb61c34fabf1620218e09c424f6443541c067ed5e4a117a9087163cd4c2b75b13a0368af40d08caca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100807d235634486be51ba0f4c803a2c2716148ec98179b1da204b1ae683798fc4bf45b23c8c725f3b8648db07e62514e9f023100ba6218681f6319bf234fb9b2a3f5bbce564aff53df32df734b65fec2cd4adbc0a052d74ecf1fa8eb4a22aff255f007c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100839fa58b060dec264f56d1ddfeacd33ce870caf09463d02a4f855c906b93c2d303807cf2b52c0d041b55a4395dd942cf02306680c926e13311858b40eb05bd88841318a3297cbf79a81ebe13d1cb9f026634d429312980f17655466baf16d75b91f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009fdea26cca128873ab01a0fa90f3e92d13bbf7385ac372f470005c383359a522bc2f0ab1102318ca3c2f911da5e962f5023100fef6a9d15e7c1ea0da3cb66345692a38e737b0eb4dbb12f2a12ea5940c0f2c1c0bd7e8d5772d6c47c0d59e0dc6e122e90302047c435bb500673065023100dd88c851635d68f423d32102733605a988a4404d75a80b162c88931f1bef016e542c88a293532cb34590a724dc7a401902303ca0891bd0a6cb7157eb41448787bd9f4c8aa383f9d6f9e3e362c9c5259206c635ab8e553907e6eae744614719dfe1f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100930361079085a8799e1008f7b937fc38c9eb5445f646cb3ff54e9ffb568f991a55f3b269525cf8c57c53506420ce55290230385de4e2e0f37997078c3ce24e0253d7a63756f836f5b7201baa44f3b0984c47ec30b3e2d29506c62f3ea584466a01690302047c435bb500663064023068ebfeb307056940fe4d9f1e075f372e4a41db50ab4d507fa26703390e64f317d5fd548f96de0144c8dab48ca5357a32023070869f8dbeba47740d2f735eee9cbda0031b40809076bea70f157b10ce9c75d6e992a3866f5324bf50018c3fdf70ecdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1eff4369d655ad04b03427fa49464bb74d53bbda8abe72316d058b9d3ea3d803760175b3c631f6592dbd2ffd239317f0231009419ce26d1aadcd1d44907f519435ba05631de08f356738f97ba615350b1cb16b07ed425ee45eef8543cca65ef47bd0f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230791c11776929ccd25cd97053765f5ec8764d60718eb985353f514703d394710702d5ca2ee27d2507a41de746d858fe28023100b4f79aa3c47acc505cfd0f8c267e77785a32a1ebf81c52ca632b868918df94372c1fbbb20571516a4bc0fa91a7931e280302047c435bb500673065023100ffcfa46c5bec0b033010e352a47c6c70664eccd0e74fde94e981136d028d739610ed39516511a0202e8904f286789eb0023024bb3699e8c990e53292d94cfa975d1560bef8532189ff827b8d25c2406ce9fd6d41545159300ef06ff92da987a1ed7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a10161a6245d9ca1b4e149be7e69a5bcfdc5b90c16732ad39371515d08fc42e7a82b7154d6146b363fc184bdf82e6bf023100d440da228553e815f6dfb41f91eaf8896bc52f4458633ecb5ea6f5157fb6a2b11d991d556b2620aa52dc1d1cffb0a1640302047c435bb50066306402302585ad1a76f202b5906547e48eed8403f62c01c4e4d3f9135a69ec71c5988e49c4c23be3db9bc1929a42cf277b51156002305665a1dff1967a228f85e22362e6c74236fab79b6fe598c7013685c31fbeef5bd823fcb47e1b4e97daf006b9f3c438720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230205241fb5e7732b7c1b6541197c2e0ec3edf1481844c4ee6f31e5e5e43bec9723cae177525ea1e946a94e3ec19b77f82023100f136a14187eeeef577e2201ed903939aa8b81fc8af9e2cab605939cf418a581af77dcf4c1b98a68134b62f7c6f2161400302047c435bb500683066023100ff8268131f488a0b5f0d12e01ee70092b7a731ccc14c76c6236b318c37a2476774614f50681d22b9a93e9e845ec456f9023100ed4da4e9a1385c8422216196cfaac6ecbd26c503e6c80b24a08dd5203d1d109bf1c67144208c989a6d3092e9cd9aedc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f4ce4705e25740fd4c7e4b48528e5c7e8520179649f8fa082065b9d9038ff2407206ddf47632080017e83b2ad55aaa06023100e627b93a0003a73330591b96f1e6bde164e7c8ca8961548ae6c42795b99171a35d3bd95f3223b2340e8c60d8bc9563900302047c435bb500683066023100e60d6b4b42ca739f7e81ec6ed379e42aa08c4ff3273af4324d17c50d0964ff5d14d396c1d6cb998128dcdd2bf5d38b46023100e362bddcffbe8dd70b26dfa0795bfb30203350e8b48a6f86ff6bc5565359829ffcbb97e78e4e8741a877c304547112290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100929db3ee7693ea3c9f4ac212e2f6baa54537699e402c093a31a57ed0518aec07a4d00c7be1a9199b5bc5e26288914a4c023100809c7093eaf1a14b02198a4cd5aefb3e7ea2ffa128d22ec626bd3ca4386728327fb0f5c4460dcf79bd85d997563933ad0302047c435bb50067306502310090ddf1309718ad237a76b8604c205dbabb7ebe2ad0b90a27c7a3cf5e84c5321026f17211e59100c1ec16fb3bbf8d257c02300897f23954d55ea2b1740522274b193b68b4845b0cda2020650dafc1d9dfa8d046383e5874e47f6db23cb1fabc9add710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306252c24211b6cf8cd22922934394e89b7b39f6ab3e3edfb29c9227a0a4698e121af8a848def0c223691913cf8fee0582023100f26fbd7385227780745bb0212e1478422227d1e09f0633722eb17f0d4d8c7a118bd5b6458336281b42893be259ccb3b40302047c435bb500663064023028a17892f2b7be1b50decedbf6cb6a2b754ec43793816d340243c1aa9340ab363b6f843265bda1c492defc3d6506482802302f114354a7adccb8cb3c1c4cbd3610239705f0a04ba131dcd423229628a7639e0f8c0c6e10363bea6efcb86f5420cb020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303a61c137b9e72530e53f59ed41c419b28fdc7e4c62f38e5cfd8961737fb3aeaa49971ea6f62bf1119f07864a57b65d8d02307a1e1d86eec8f59a1beb8d46a4ee4e445a66512af2ec31b905942f55993fd63fa7fd41aa6082c2a71f52be9b9124da360302047c435bb500683066023100c260375b3e040135eec5abb5e61498c827c37de6ebdc09fcce74825ed73add80f02f9fb638f20c0259ca39a46d500e19023100d4569345436a963f843ddc40b2eccfece947a83d94926ffeca57377f175e3da3212486d00ae71c9d73dc2af892c31d920302047c435bb500683066023100c5f8f94da6315471c31995f60c57bdf4f17bdb5c6ef14b39e67da6ef6515f9c45c2684e0881cdb21117b54760968d76d023100d04d8074d171608b958d063fbb380efc537d0f1117d3a4d89a994db6e7c119172117db5e6d5afbeee60ec6d7a27dca850302047c435bb500683066023100ac37fb24a8609ab4f64c313a39bf80f386d2e8d9a9a3b857d2bcc8a86f89c4aa17c2cf303a867af0314a7cb68ca5509e0231009ebbb9c44bcff9d626cc55256b0ad8a797744859f626dd1c1c47065dbdc12710fd9badbaa530e8379c46300d6b573b4f0302047c435bb5006730650231008b734acda7f1cd8c94ec0a19778cd5578d7364ba37c62d95c4012c383f1301f1932b5421cf6189284fc689aa820483e4023015bbae36508234a79139d54186dc13881fab6f05e8b50c57dfd13a8d2608fa696b18abd11eda14dd2861262cc004fb600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032077020360e126e6ab7a18af913974c2daf7d25c600f4b09ce583eedad55ed4e27b5d63359d0a1e9a26efc4772dd75102306089e7d76c1a163bb7895cb9f8652ff81ab2c567654edd17cad48f20e1ccf2139f2363df321920f65656022cb072e4c90302047c435bb5006630640230385fa047e17205015de32cb89101e612eac77214458a7e810476dc8536183bb4fbcb97ed8240b8d21e73a8ce05a3d70b02307428b79350d0926b35a2a6a440507324312448be7ae12b97618447736fa6081be4b51b5466ef46cd0afec6df125261320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230749553ae1d72b052ca434874514b7852d451abd67135428e4596a5217f88e4b7b5117330dea5603035900ff18992e735023100fc54f4ee1f0978ccce261fa0e9e8548ceec7fc79ba1885509d42690045d1e09075db56eeeae2a4b9202a2f5720f018510302047c435bb500673065023100e36b95433e9049c4a3a8dea74ee12be9e153b2386761145ecf0f3f232579a70acd4b514ccb5ecfe2135731daa702f96f0230537971e74f8bba5e74ac6ba4a779e82cffd7f61278eb13875ab8dea14707ca85a492732bef8614419706ba5a55b8e9a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ba26b6cab7c0f9fd91d389ee28f1c67fd5a7b806fef102a756bd061c276d8ca38683304177d1901dd8f7f0a676033dc023100adc740840b241e5ba3abcf7abdedd070d6fdd4136fbaaf5efe17f2d8d22fda938251e07edc9de7d1be668c878ea166c10302047c435bb50067306502310096ae4ede066d692940b4252f1d240e8bc581e85c94cd3d848a76bcfdff8de322f2675d143363f9f4d02d11784019dd5402304c5b720671f8cde9f3fbc38f18ded980c99b3a8322dff16236343cd23727b829c732c37dfc57def1b4c1cd2b6877fd5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306dbbcaa9503b71560a9fba057b09dc6bb39d29145a7a5992002b5cf289ecb919e313cbbdac54150804ee469e98cec8ab02310091548ddd80cf51be083683a3bc646cfd87ea5850483e1f84906fec215fc7bb860dad0699e248e12b6316ba156444d3560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fc59c6d111ab2d76cdc6059c7f22c948f5eb3d211452bbea1631acb260d13c87917ea13d533de0aeef7397fec950ef6023100f315042638966fb52410b68e86a31ee71ef5c5eca1023017f6705684b4c356f2028f90f3ee80b3a3742e7ab5b5247d020302047c435bb500683066023100b884a77f72996340975e2d6813f34b5fea69452c1f1cb57bbacd015f408d81a44601df16e69ee6455a565642268d2260023100c92e46b472cefc1c4a76034543aeda7a6f397dc4bf4ddd2f21feabd660d274458716f743d4a79ae7e16c3aa67426d8ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c5a939d66989b79898a5799e11748b82039e2b44d264ab7259a5a646e26f9cc9ed7ecdf2cec3085b7e47cff8d56aabde023100febf48e2d431725c21ea39aec38a80611799fc0f7046bcb75cb6389ffb282b1fc18328a35f772ecda4d8ae204b5494660302047c435bb500683066023100fb75844807c9487eca4e5fbabc3363ab7956c1c1d01d96f19a493122dc1e8478570bd0d8f251cf7c68b7bd002a10f256023100ee58e1243720d67f1f1f3233839c0b9f87dff02af6b032006712522058c964eb75dde612ed9e7324a11662233babe3ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e8ea866ac2f3d2e1e25040ff856dc5bb94dc00abca2d8e1a9668ef951b2bd168e83b49435b8d1b486113130f7e2a54e023100b3b2966d542549ba721bf0ca9777ec4160dc15d119998ef4d77c7e01f403597526e259a44993aad4c47f160af6b54b050302047c435bb5006830660231008e1063c8b674bffae5edc0f7ce50ad5cbceea5aac26b0a5baa818aad7da6b92f656449af81b53f426da3d3a719083b36023100c5fd54919fd5f8bfefeafef35e7762f86be58f5aa20bd4ee1a705268b14c1e252786ce3de2dafbfc946c843ae79979fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c15b8309f77ec0b8127fecbc1d63b9e5762d98a8d01780ea3167e06caa53e07bea3da94361b0a01a44b6a4d26ef9b6cb023049633f970d1787cddd1a0662edae43c49c2518bef0e6a5ff3f68983cad6b5213a93088741bd775e704a5c4e5fd0d83ee0302047c435bb500673065023004a49aa46da1dfdd343590e5272c6a20b9fbb14f012db047ef19811970ec4ea800a7b9ada3723421db5a69c6744662c3023100b13a4ee2b51372007abd26c11747f95b84b80708158728c7e4f51192dcefb78966de291e23763c4873a79a0dea27cc170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008442b8932b194da66e8e2addd7443672d2f9ff19b3c856299b985baabd6b53cdda027644ddf8f106bf89a8205316df3102303dae6a5a190498b9ba944b6f7252e63af6222cf03beabdffcd292a8279bdf401c91ae90489c2e95b5a6bc7690deab19b0302047c435bb500673065023100ca7c214e0d1def9dced18c94e35eaad260e060d6c52d54c4b1b557b92a959d50e435a187c71ab43f16319319852fe68b02304bcde6f5481e82e0e96a624c585b6080eddbbad4050f8bb26a6d7bbbd6c7f2252a9b86ba5705918ea093f487e7e700f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310098c01712573d61e8b503b8731aa0bdb8edad147a34a47679e0818255482f9083eb83ac27d518cfc12d79a7efbff9f6ff0230468a3865aefb59a5b74674654b7d3f2a83fd2397dfac184efbf68143f50910190d83392f157a2da95f4318b581a73e0b0302047c435bb50066306402301f532bb898b06286246226cd03567c8f7046d71034e487b5b8f14cfdf3de72419541f5c017d2e50fe5c8325f0913a7b702302930e6521b703633a6835e98db50e4eb8b449f850ce5e7a66d187fe0e9a562fb3cd89672611411815ef74969a58cf2490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230153f783b764be97d39a8ce72a4761f33a5f4239dcc7d4e0df28bf21b6b424bfa8473d10df668a96c8ea6822f3bc7fc70023100cdac71522f539d40b09ca9d23e4457c926391859e372e627d7fb502ce67303eecbf97f7f71bf9e93b13afe02b6538bde0302047c435bb500673065023100cbb9016b8692502d985e344d684bc00509992aec4a88c9bfb20f00223f1db2794a900c97a9a55ea41903bd19d797fa80023028edeaebd9d741eb7df1209b3f9f4330c8cdc7145e2251e780455f0598a59133abdce97a32bf8f42a9c2ce28bb5a50940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c84523d821fa988484eb4fd42862880bcc4e61678d24e5bee651b2cad6c6d278662b01841e5ae8ab29c108f0b71de800231009c0db5df5304ad901bc5656a7dba1a1bbd6eff03f1338704aaaf26bfb6f935de68a2741244f53cae6ff4520d441732bc0302047c435bb500663064023012eb9d8a99a5236ea978b8f6c46c786ec293904e53f08dfa5e95b9bc8148c6eefde02213aeb6ce21fec3ee5c4d645c860230338ebc3fb74af4accd457fc59d5d44d662b70851a5f1cd755d6529adb5ae130051ffcd8a149299723ba1d8e22bcf7b9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300688cee3ae3a8d4e4a7bc954cb5d977f32af02f288e8a9f2f18be41a986b1e5897dbccc9eadb361653c68dfc82843a7402301872c6e5246f0da453923f84b9da6553573a839bfe9144561ebc9af62718a824770e0db3f843f129743d6802d5bb90350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230779bbfba57328432b822655eb224fc3a17f56284f2b0406cc4473dc543bac4b3519c6b8a3e37c142f956bccbb6024fa9023100dab4e1fe4e323eeec307e6918657c308907672bf807d82aadc6f82e784d1f9403882d1c9539ad7c3d27fd82ad400c1a80302047c435bb500673065023100b5cc1f70b16ef685a324345c352fdc75b30ca5c5454e934dcfe30e5df5549677410b3e5dae809a5e4b8c7510182f87aa02307369dd9f916ef6c9adc91e63f6d10b23425191c48d3c9bb5e93eab40c3da6558ed6efc90813a60bc8a7cc7915c3faf300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1f622a82dc843c1febac5e3ed301835cd194ffefcc1cafbf2d278eb388c85499723cd12654e8fea25da94ad5578d3860230590e05b6a4ca4b21b7fed3f2309a98ed1180afe7c69b6d727cb0e148ede3c3a6389bb117426bb687db2caf7e15e4e3b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301326512c78db792d1ebc241edf01e59bcbaf9c1b00e9dba30d543a21ca102a263e5efd6ab57cb038887ed70db8aa4e2302304b5001933d419783af82634934e9f6e30c409aa293c026473c554af884abeab5eee951854eaf203fc1e5e71f5c88ae8a0302047c435bb5006630640230407a08b1227b1deac8f06c3ddd3349dce9437e6931a6f1f32b542054d1bd3d964fd9d346387cb1356723473f28ae446b02307cf76dee1cd0e8d5d8afc961a5b057afecd7a6778deef6c12a872d200df57f59217ea7ad5499b4e3573e99134a8a21b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303638b0871aaf1fe79667e3d874d65d9b70319b764fa1cc9bca01a54961eac1bd70def587274b99be9163b50860b653f1023100c1609b02f57b368fe10e8549b0e33ed6e070f296be59e739111ceac34c45aed6cd3d83d472e94d013316b1f69ae39bdb0302047c435bb5006730650231008117eb0085c0745e938259e56af81fb86f3b98f50a1b7d7f78007dd4c44f8fe7b288b4607e034151a45363e6c8e3402502303f78676fa6b35939b74e74a8badc316773467a4a0249f59fb610910cd26d708952367d9ffffd2b50e374fe73b9feab320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a52843db92e05bb23ba40d706d1cbcc73702a60cf96c0ee51b3198835d3ddb78536e577fbf4fa3fc977f14f6c9d6b2002306b705087e3c9ae32ef88d4a804e44d65bf4b395bda864dbeac62d0923f8b275c55a61fa47b06b17220d96bb2998379120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100842501de6a1cdba60a48bc09fdf33854f66f89b1b646887b7bdcdfc30704699e830481ca1b893c4c1072c9667536f51b0230207eb371c780eb3c42029fde3a09afecfb11ab72cba7904750cceccc0dd15ce23bd3efe5be4dea1ef2c6871f8d2ec2410302047c435bb50066306402304f9d91d6611fdef6e491a012b894ff07158ccfb7078a06e12c731e17cd9f09a141046c8d558808bd563be0f720a2529902307a387707fec41b8a2b24dcc57c4986b1de834358115a0329de69adb46f4b403fa45ac890d96d63919379025c2f73b5550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305090d09f99375457ae3befbe04dcf2771a600265aed7c742a24c852622543eecd2709f3d6b99079e036408276fd2329202307e4bdda29d48d9fa09c33af23b6d5b983bb75012167c4c068be6f2010268acac58e9810d75a58f35867b25868e1447e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a654e9e33a6f3d53bc30a3c95103d44f460936027bf2c0d4b2fed465db8633636cbc5f2f320b4f24cecda99ab3f725e702306c8d164c144e7ba24ef4fac412d30a6ade048e3b7333b0792165f488c8e2ae0fbadd924d775ee5fb8dba6493cc9369c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d855f3d27adcb7ffa5d62947ecfbd7de6a4bede80f85e3d420831adacdcc757002efc80744d1497f9be32971e8c4635c023100a77fdd27f9d01c227e034e72e4453a73707a354e146c9411ec422ccaa004706a0311c904c811ce2524176a77c884fd790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a02298dc643bbbc87e33b2c40517e28debb93730f50c72b583115654c75672a48dce230509b76da46cec813b024b7a91023007ace6e09f0e5c3192de2ba8542ddf0c293e418737a90db2b3ea0d36787015583e45cd08ea92a74beb72b391c6a362ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed57a58ddcd9613e0d1ffc5dc04b20127952cb781d043dc8fca842bca1c32877e402858b96486f43af46a76fb3513738023100b02e32e6d74497a52ae62163fa33564366532f13f8917011c4fddaa1e0b08d68cf6d531abff2be5421ad79aa4e3b5a1d0302047c435bb500683066023100c79e2a856a1aa9fbb0ffa27ade1db6f1c95c2eb52eea538b4671c258ecc587a42ca8ffd49463c787aed3150382417e6f023100a303c8502edb707619cf2792412a247eb9d5049329c99684df8b5d24d766d040e7f8f1d7caada169d4ecb47441cb4fb50302047c435bb500683066023100c6738921540527492f678c0e567b693b2463fdf146b97eacbc8970057b267e62f29ba8466a31dcf2fc2ab8d5821cf918023100df481b19e3ac447a3ba74c03329efb02fde2bbdec7cfdb0b686c723979148fe87e08889131a4749583b5facd84979fd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6801fe13022715b9bf098ea9d6223d314b8941a12658e5a3025f2e2d78cbb8b75bf82d14a0804ed3f27498bd81b3b2502302a19ab5513a8cfb1eea5f091688cb7ccc05388b9c2390441e583a3fb40893f98df2193dd97001c416734dea9d26c03970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230629c42f51ccbedf9fee9db075fc20c5f97cb3210d5097c30623c269345dd6920d37f2b15b23750ccf22dda31e6231d7902307c1ad6f980eb30ae2a6ca95e90c9bb88357d86721d37cb02cb6d546411428f97b237a8d5535ad8a49cd875dfba93b4d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd82c3fc798b32d1d1d6c98d0ce6cea7ae7c5e5d89ba3ea3f4e7e6618c0a7f2e493b77174d575678fc0bd42cc8bd74e70230694655f1b3c2c8696f59c0843bb97ac38ad66802e193d1d0c077820ae09eab5f8a77a2d1c5efa4a5fbcf5b3acacbd2e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a06da73acc789f9644625e7dc8f23cf293f4a22322cf9f0488ae17bdedcd9e1e14dfb9bf18255207c7391324965251e702310098988ca0bb74c0ec108909ecef5e9a7683580fbefb1277c9a91a9da86b929e1887c0edf5c88d9558c67224058ca5a77f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db8f1c9a42b89bdd43cfe718a2ccfa5af04781ca67fd6de9e742bf45f8b44bf2192e68c49028a85aa952548146370e650230729ae4fa1b5da80c824b1df2a1a9b7d47c237f5cff1f77d4b3055b9d64673003dd12bb2bbb4db2a7d381bde316a3e1fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230411821a8c1a99ef5ade7b41ffcefc50e40367ac70f0020143c72e20a8b696e587e7a008c09a178c5341d1c2641786f50023072477443e99c14655d6a23b05b04219d492685870a987cfbae1aa957647bcee57c816c4cd1b129373f9753e29417a8940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c207aa930f48e4e149ef0f295b680abf93f5f28b5b79c7158a383126543fc4c3d97767522e649d5a517fb08f715fcfb9023100b9620aff28f9e3cb0a9c3e39061a2b5475297bc9f0aa07f1076d9cca173d0cf6c8ae7c10694a11df52664769fa77ce3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008436f08b6809c25e3c92f5af06c4c9e5c6144f20b88e4bca39b5276d722f93349948526fcf056e979aae70b75f5b0fa70231009a1620f461688c1d54313531bfbc49c040b4f1abf78f1438cfdb71edac4edb33658ab3afd457d0f70f09e6359cc9ec2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009909a358e4cbb67f24b9b38060c7622aa066e25015666c9e6000baaab16b4911967cda67511d09cccb883e57e184bc340230213ce5d0b46168c82b02ae042f1eb46242561337b04b4480e365f8d34928e67f92cbdc125263c63170c208404441794d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302265a85ee998425e7d58c4729ce2fa0eccd660ba55430a47f20a5b66ee7547a2b17bc0c9bab8740ca781809569f0af1c023100f37a36de2547ace009fc0cb74797c49b78cc909052f64acbb78ff7657afbeefdadaa31de2df8d3d77b4855d14478a7ab0302047c435bb500663064023028bd99a8a7c77fdbd58aa8309cae9399dde2b4927888e80edd55ef4971a2ca043bae330d1ac35dddf557522b487381f9023044fe2721def959744675430d608515d6f1ae38dccb5fb8ef0742392799ea105142366ba5178b56d772b086e6c8da3fbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f30c28091d4bc58963ed243f02c63ecb474014483213c0b6a27244ebda4ba114784a78aea1a97f921b758b1ffe312f8f0231009d74a2cfa2a5b4242e21e886d6edcdb9318e650dd77b77d9a1743eb6612e4111f557e8ed3a5c77f2e34dc13aed8a954e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d1cad2b6d2910cc6ec653938b956c1c532e7f7d01a922ea0363dfbcac499db69ddc8f45fae8f51d50b0b221b5374a3a5023010963ffed154d2e623d16978dbd3c0b8057535e575da4f5a7a1553145c4e45a88d6f6f6d3b0508fd51d391a2bf4ee00e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbaf65907a668c047890051c2b5726cbe522d0fb087e1f3681cc3e5d0374fa66178368894162bac01c872087d3cac055023100ff505c8feb2997349b78baafbd82dea5ee088ad7600c9862ad9880db82f45f348630af570e4e7e3b84a561b8239de9b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ced7e3d4712a5b8901cfa14ec1171f19ba24f4573febeab75ad1be12cb856d1ef50644c4c5b4db40d3ad1687f2015477023100a317ab647d517f187580ffb35b795120d5012b4ebb531028149dc154c5b3aeb95666fe1cb3621ab6e0f4448b6c6fdba70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fee53fbd5ed0a3343ad4278e09df4306919fef8c1e5f8790ed1e48ab7b4cb8583ba3d3e58d3a7456b5e580e833d444df02310084cafc5672fc369a8362ed2c4888bf266ee8a34fe26599d96ebfbf37f5fe233ffcc07ed6baa615e009312eaef33c22c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd95569c6a31c88d62b06e1b3736fe163de68ca801557b446ccc715cc3fd1b485e7cc966f1cb75b084ea5cc77cbf750c02304df2c7c04002b56edf9d925e04e0324520211a599f8aec61c67abfc2b24de8fd1446310ee07d2d7f01eda6ab2f4d4c4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301171a431303107293dc0c4b42691b9c1d1985143455a07f88ff7a77750fc58fe5f26b40930e8bb29f560e824e2b8706f0230797ca1a2d4d0f6ac366c8a8a893ba8c1e8640e231b68e1313c0caf3a16e7f558b21352634df9718721293cd8966dc8ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ad387943449f9a4ccb5ffb3c516ef52d45c3aa09b0744d741b4c722a91e075ab8c9ad19db38d37a3fda921927e0ec58023100a742724d8090be81e12b55986fcda99b624375f0eac81040418ff974c9c359dc9bdb4c913fe80ed471182c0ef12a62330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbb7b05669fcab08e82a917aaf91b6bd167f38b75adc0c36b3745c087001e3120ad644928bbee4249931c8f804c2a657023100a337898b652fd856765b031b5a116c14654afc9b6226a99698c833a431945524902e5827a958b0ad7c45d0a750f2a0a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008be5fd3a92d3579831e4d87fb87120b5da331f177de4c6b24409428d55883fe4be6172b74b4ffe96859a9cb4458cc7b02310099ed16f3a226d8c63f3b14e0b3da250ded409093475bb20855900afe2e2fd93b4fc0c38f78839ceed4c1339ed79cf6d70302047c435bb500663064023022612696ebb21d00f2b1b9a3c3d6fdb6793246c3fc701af1156b132b252d11e50732bbeb370e06dfecc3ca48b6ec998602306cad294924d22b7459c6a6c6e8f9a62e87e27708cef72be56fd7ceee7ebaa78e570baaa4e5d9d924104458e8d0dca2980302047c435bb500683066023100a3e3ac87d672cd69b32a1b0b212243d7ed96721ea54962c6d7c7a85739c32611a823f7b76c07dac09b879856c7546d38023100cd22b5c06048a30f126d936262676954dfeb9c700fc145691285e27733aa2813e882bc39e7c88cd5dfe6d9c59e5b33290302047c435bb500663064023001eb44b098a88ff9494372750376d430886f47d0801f3e90096e0ea198013cd9d97d6d47ccc35438c69b7c68d7f9b60a02302bfce49537d9f8b19926c1cc19ea287e92ff085549676d8443f58d7c26d5e951d00db54627fd05b0167b47a879bdeca80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018368215233dacf893e0929c61eb851a3b8a5cb04d6f8a8cf01a31dea313eba29e213e88cb0b4b0414f5d8df3d56f6da023029f23f9c3243ce8bc4d7bfdf171872ed70c33e8bab52f364b49596737820ab66f647aee90eae28eef85a82dd756d5d9a0302047c435bb500673065023100c981a8905f32a01fbfee331a17b81414973385f54cfe6ffd330455a1ce1a4e82e4a2ddb26591343b588a749c85587978023002fc783b11f6e4d7f32eb8b3d128339c37af61972bf3d74ce56192887c7dc2112808ec32e54027f411125b8468f254720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b845c46f0824c056a8b70e9b661cee55764b71e17775504174c5477fa74a7be3722665804902c806a30a043f6c17b04602302835424be74f2c94aff1c5b6bc61dbedcf1e57f1e286a1c9a2bfc866cbcc33ab8146d72abc627cbfc03ba20270aa56a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d5c1656551cb3c5a7e1b72a0f635dd499a2f4bd2d1812a8686dc5ceda458f32529e1bffd0caa6b0e1809a074e434410023100c1c1b3b2591ef2098836892bc0445f678316092978369bc2bf628139b2130fe5519c79cb284574f2561b25173a85a61b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d3b252cc0d547f61105eee5f659081612d38f0935aca025717bd2b1e17f639793bba8a1ad6ca3ab4ef92c87f17af436023053a4f0fb92721213612671691e8633193c03bb9637725df117ba98745e0c26afe90c2b784bf257de5fc40dca612601940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301dcf3f678053404004f20dbc02f6d5a7cf4927fc8404ed9a6b835f549d74509dbe3ed2135ecd358b6be5e436144a66b702304a01a796a89019922d86959d05b28025e74d0a2b0fa3abdfb8396040970f65731f124ae82cb102b7e47d5ddfc0766f360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230249fe44f9fdec557a5885a29882fbcde9d4c94a4a3d45563409f3c0c394a3cf8fa5603c84c123dc57a81f7c46325a84f02305864e5e20b62a44ff1cdf10a709ef14bdd5589110f64f17c47bd39c3c3a19eb22b769f9f7e86af46eb25ec7619599edc0302047c435bb500663064023018179c8db8894ba1126028a9dd4ecb6b1e0029b80a71aa5cae3d355b3bac5f9a3ba518589f9ee93312289b0cc7c5ddda02306feda1c2c398059120ae140b4d0bca44cd92e5a37ec9ef06d5b46fc1ac2e4bfe1872d1811177d5c22694076175572e110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d366701b1ca0e3444d405bb75fd5327489370b2f0da9e6a5765c23b1f50676e2ad8b2b66294a892300c304fb15610e78023100fb4068c1e94405c292bcba53b7b35d3c4aefdd1829d3b67285479b60a5142dab06b4ad8d44ee9dda72e4d9b6f4f5a9e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230231d115b403ced77d7eb1343a5abe4bb277ef2225ff7d9af699970b3941889be2a7730d636c632a747d9bd36f04763c30230294fc22a75eb7d864c0a110055997ef681b442b74c9fe136c7397b038a3ef01bcb9faf41a48534bf3981eb8337c925680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e22529a98ef398279b1cb1c52d1353b248a81d9573ccd79a6cc619008cbd999e1e238164506ce29df5d9b3dca998cd2d02300451c719679f6f7025bea8d63b2dfb91dd429ff131a9f478926ffaa496a954016afb7f07fb49d8edda529eab01d60e030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d9c873fae843ccb4aaa55a58ebc3ea651805d18e325e47621e511283bce96be8d6815d9c91aee0fa94990d998135e4602310093685a42013dd093be6ce5d996af09bbe3c3120c3802631737725899b64e73d5320b3775bc9fbf94f23034613b1d75570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306d9d0c3b1ae59a74eb8fb2c03bb8e25a222a35e94cec14681d8097d2789d0a8e15bf66c8d26bc8ac8863ae92dfeb58860230546cfb2dc9163871ae096c0411b881625975abc433d7b883d936cfe74ecc2f9e39fcee68f40c928a8f45ebf9911cb7f00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c212dc691fad2d10b99694c3614710dbbab80b335e89beafe03c7c40daad7a4e8ea6c05b87227f069f8a429816041faa02300f7b3da31e9a7748c77dbc5d723b0589dd0283016740b6f670437daacd9c040add50383eb67de93aa783fe938f7ab1560302047c435bb50066306402305b0914d67e9466223517ffe136dfe8bf322a67bee890c3af2637f6670942c0098323db9545e5fbe9f559ed101edfc3d20230273ed326bac1732d61870f3de1e2804cb3a77b00499c92a9af1777e710072c4f739a6037c77675532676fd35283e14ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039e72638169da49cb6854706e2020464ab9e1f9f40904d7e457350bc13b1bc4167f6482cf8bec3c836994b88c75c3e3502306176b7dd295d77cc4ce2420eace622d7a373fb60689ee92390e20e2b2dc90fa00f4439015eb81ecaf8f7e51a925a13d50302047c435bb5006630640230326aa358be7491259b92495254b2063c973bce7e7610301fa690c20c5f078dac9f2e60a7d9de52b8469d7e689a21bf7902307e51903660fd03704e048677927b64abc4419de7e3076f4fbf34d5157f90c19f56d0a4bd80743267173fea0bbe3ae7730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb77a24d5264fcc2865409f16b118663a3843fdf4f84e78f03bd1fd06c4c0b64ddb6a48054b303de89cfccb9109688790231008a7096ec4f4e02f0f096ff99a0d07dc7944f34e17483f11a372695a525616ac42e846ae106b568b94e4fe760b81bcea70302047c435bb500673065023100af217c7654e51c05ac773b1a5fd53e472f70578b173f14a956427006dac7468324f8967d76f077a4b8c08f82af2a8c8a02301099e392880dbeb6013fcbdd8e3a9a4e14f7e8a7239366ce0e02de226cde4edd1511ed27a69272013278c43c5645c7120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056314efc532c7a5870b39aa63af3872d47b30297ca25e8cc22621e25b9d01ff47d5ea6ffbeb5a46a4808d8e005898aa602307a80df92710a8839494cc588d5435556c80eb7989bc04f38b7f906d39a47c313a0d58fa138b54a3f12dc42c1d428eb2f0302047c435bb50067306502302ecbc1ae4310d971d8c45f6d8e80f8c8ab15cdf02a9bad3388093323b5239925aafbc0996bca010ea3f1e8171f55a89902310092b926b6d88f70cdf12d19cfb5b094c2ef19ad6b7c60345277b2599e524a73c09b64fc041344108cde58d53fe91357900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5547ccf25fc135d3a777536c99c111cdd6b79931769b5c6e296785fd374005877491fe8b8179adeb5a649656cbde93b023100c0e0f60784485590da6794293b4fbd6da62cbf249f53d31a28fc7d884ce629cc80de1cef875e037d6a80cca9f26aa3ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b23f6461a407ae1472bdf456b00b59a66a1752bc9df31942f3fe7b6d687d50d31ac100e376cd559e43fce27868c13344023100f1e01ba47d879e0f5de68a3c4009223d0c65bae36ed1e99ec98438673110e21662d2d7e5f91a3ba0691dd4c3f7b9b65c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035c46d82b7eded4f17fe0c6865a647d8f521d0f696bfff3e31e378fd444270e84a805b43df71ddf6cccde08fe4f7509002310080b7653a6335db00e4daa08a058f126e7b23c6a0bf6d42039fd865e9886a4ac68f4304b903ecf847dc4cabc8dc2ec3280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d23dc8793bc1eba2b3191cc2006d1006816647f5fb1855ea19fd91be4713c49a67b23cd87f2b27fbf2264f406f1d60102301de5d94c188ed71b3be08047b75c2c04de6bf298bccc81fc12721d6913ca7b34b9aed8d9a97bb89be5b6f24d24c0d8fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100920c0c3d4aaff665858fe6f7447331807885e0a01edfc82be25204158d11ab2ce3c85d1024d5de3ba65ad4348646e37c0230422a4d275dfa741d837910bb86bf2e0d82619504ea56a0b3ad5e538553653fb27ec5139fa41f485763cd34c507ab58e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064503e872f193a91dc7b86a37d4369a8a015be242d9365390982c4194b18ecd943eddefdb607ea939225a3ddc1b99da502301fc1bc7650abe9d09bf88b740cab67ba5fc48307c3bbd5a8645cca4f8c0a24f450a11143dfe5a75117b72c0cc30836bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230659d50f2f30a9c3401763e97d27304f3f0f6f4331bf89571ddf1f2440057a245e99c11591fb22fb0a61f8ee04a8430140230386b9028ff212beccdf16cee8c6158f4bf21152b57cfa3637cea194ee52e285479ef0b82c977c84d6d8c0634954cacb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4bf0adff6564c7156ddee972db0033bd403ec7170bda4de3c3ac1aa283327c03e2fad5ed41a278587f51fc68aac6ceb0230180c153a23e09a1321b289d982591b8d8b62a627231d363e6defe07354004004a3e8a7b1547dea25fe90297706a4280d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c9cf53faf1de33445451398fd425ba5bb83fff6de1198a0b05e9917c3f9c6418cd2874cbe42fa6ba4f9d6fa5040b327e023100f12439bb8f44143c21042ab4474e9c09c3fa9f964c499aab37cabccd11ade6b6e87ffcab6d53722b1ebd98409e6a0bcd0302047c435bb50067306502305e06a37c8fbda1124bafb70d7953ef4ec568cb3b7df38668234f83d6f83166f7552038677a8987ce23cc52a7ec7409cd023100b441eddc25a1c147bfe3a5d762afee3a4bae0254276cab657c671eb0f9e2990dba6297f6dbc7066630210f0f710c68320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f9ed6c0afdb9d84b087ae56013d1c75a5a3325a633db2d68123194320e019f164f959dcc3ba8e8bd6a3dfa29dd922d5023100dcc6d0ef034928273ba1ba4ac96437e35a74b9c3b5b66ee91b022073be5d69cb552924b35ccc726f721ebfadda3fca590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c66ea3a89dd51bfc5cfde9c6a1eaaf97fd8f07c740c80801345bd10baaf57fcbb9de2b86146d83892796898faa783a1023100b1ffe89b4980cb98c0a7f8f089c35f5ec5e664473123fb858222e39b8c14e18c6cfbe9e77db92bb6fdd7cdc024117f530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008eb8898968cbdb2705ed460d98e9adf6410776adf53ae668a51bd8aaa377a4390c47a9d3a8979bab129e949122251e2c02306bf4ab5b90c7912dcba7d74c82cd0b679e9685616c7c38e09c2415a95f7a8682dcdc5f37b19eecb5de1c00cb589f9b610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3fa0e8cc1018da3d97710a26b75161cd2906ab50c5d9b696da839e0587409de281a3e6b75cf3f0bddf8908b9dc89862023100b62afe5525ac3beeb3ee678b963b1519ae65aba0a52bdb4e15bdb7cb52f0fee6b4c6f0ee9a0dc1a7cf48fd165f22964e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009370df232d1dead3009c0aab828acf49127fc0bdd0b7f61c8cc0ac20434e16fb74f71416a2fcbeb52f99dbe6eaa7d0ce023017205d19e19eb7a40966fa23abbf310b9937fa8eda55b4a66cec1cd890605998d81343c8b195287d2ca6a68b56ca82030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230018dd78c33bf46b66e7f5b41031dc5fedabe01666bef5afb26955221f59604b2dbe02c91c7a6eb8d5b2512f7c8619bd4023016d5995e8109fba6c263dc2fa69e7245f76a34c8422ab4c0c5cac268132c16d7d39a89232c26719a305b23581da436ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307117993b56c34d6964a78439e1d59c668f48c0d984d88eddbc376641ad48cdee5adf26765fdb49734fb2473f3ae89575023027969d1f663f0d287d6d09df1a1bb23e7e036bba6c38973d734bbf32bd5fd74f84736081e1e570fb261eada9b5d9faea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230576a743431163655329335134a101a77c618ffa926f6e994e8da0d4050faeac3c73c13d4dd5c93e6c6189dd54dde9785023100f34c1e848869f2da087bda920d33e58eaa594524ac356cc5879764342e51c52d76b1850cbacaf8f1cbbcee969c5145150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230471aee2d09d4f9c58159de442fb158003763ae771ad1d3e1db96ae9047d01d8e08b02383b5f3685259f86f12d7d09955023100c1dc0024cd6af15da0618f866f3bdbdc9cd9e72dfa9c5c2e8f4813182df113eed1d03dfeb12dd0e4fa6c0dde0ecc12160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5c9de3dcea330cdf817ea5bcbfb57636d015ac518b947ac222249b8e2890b44183c220eddb491de53e2d774094bc72f02305ac8f90b9b79abbec6b8efef747594df8780c3259e307a74e78223bd74d7ae4ca2fb6f7ff3b2c53b2a0e78d2745260730302047c435bb500663064023076693e5749e5b54f053a452c5285c1149a949cf964b92b1f3afc68e518d865ea2c1218c2a24a4c4fe7550152d2add2bd0230302f4caf0def39b32d73ee1a2558a212e65f0a2d41b44fe114d7361da7421e5858802527b04c26e255d5edb13494c5d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f2022c894d990415e67e136b97b32cf42796bd58c46164a099f234e53759976007d33dece66ff2fcdf3b5fc32f63d71023100f3c5cd05ba53877fafc7f37d0ca9a5e9e6d70086057628e7f0cc52dcfa1974cfbe8aa7484307618a49c4009eb45bb03b0302047c435bb500683066023100c9e4dd8d300abc50ca7ce5f3ddc2110e99d5b535452e74471ed50ee796419df4eb446e6cddee96d032780bb867e0198c023100966fad057adaaf4b366e45b8dff2c8775ed20fa984ed7395f170877ce780b3480e7e667cd3093bffaf8d45dd45e9b7cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020f6e2480f2945d1526ed6cc589bebc0ce08d4fe9a5889f64a0ab809ef16803b59c47db5e960763ba2eb3c3128bf373b02300dbf3542255a853d19fc9b55e0364a4325a07dbcf5655491df59e157dec7dbc85ed2871e286e777d09d609566f43df870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a8d5815af070357c4fa6a6c8f3e3ce50f2cca314118b16f0d123c414cca821a89f109ed437b6a7175c2f875d528b512f02304410a999bf9dce1a131e30fe359008ee0c9c46474e98c10a3d61a4fc1fa18751ec922ed3a9bd516dfaed3d65308defdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b43204f48d1c3c980e4fc102192ab6ada7e36a9dafd6934d3a0c4acd3ad6d0c642b7769dbd8128033f3dc5790ce55d77023100f0ed2b5a9071680f9a7736da7eee33e2f57d700b34590f9f6b147316214de6020ef30e68196727411f0d8a3ae2734e890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051e6b4830d33934ca448bb02187a5830c88c6bfe62c7d7debbbf62dac71357657366877de4e28ba674d4390b3c7289c8023100bc18356e1d3197bf445a421da05a4e94448fd16d981c7cc1fb70cd635ef4eb250f584005c1a73ece8c01a3373ebdfc9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c83e98aa592f2d2da65ce65d7b68113f720b62166e64f8cf81e2ed509d48cb9f78cb92459b78c390628cba371a64c9f02303231e6627c6dbb2a67cdfe86b6a6a5d0c74457db6396a3e467cb833eade31ff9ff77fae8bb2fd509361dae9481d4146c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5e4c2aa3a7731a079c879ac2bcbf35ea26218b13b1605cb86337c5c895dd9b19fb0ce3c8e7c5d8e0f31e69a04e78a07023100c266d276b47360c06b41f75cbd88fcda468d5c91ebd23a967656c7c1aadc3a82836d567e8dea4b2ec0b8e75dfb1695b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cd67e3dc8b50f3e6cf81802ced7f98ea41bd33af332071d1468832e79a2c869adb10b44f218763cd165e2e96d60221102305dc7c72b2bf4fcec2612fe769cdf2a84cbbfb08248245e3875fa97d6d793c7cef681c6cdb728018b97926e2066da10e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f44a1980108bd34dbc13eaaab944ed172fd7c0cfdccd082a7031312edd88ec45ae65c1ab4581520a6db689640d9a38c0231009d598b829fc06cd7fb067e7f44d02ae40f6660fe7ab65eb525de137669ea605ec078fa41db04f1eceeaa85df7ea80bdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097e8958753d0c7798a67ba4ebcbfc9f62ae66d7feab936e5ee9514ce4b96a55e4ca3b7603f350971b566e549d43d668702302f17ec7dc258aacb0c158646c4560c242ee8e3f9f61e2c277f0843896dbfa596323d045077fb563dc441149e42dd20e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5e7d130e5beb307bd43dbe23753e11aa02c2ce869680253eab9de400468f1d58e5ad39d12babce3a82b531feb60018602310089b81d45e32d1621b5e322dfeb920800db461085de5db57739e5668148d56d50d08993b9d4bd46a90b3a5c7383b3effb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080b31acdc89197472da631b19c689c4375a2f6ff8dd9d2697efe45a39c2cec959ff3e1e3c80f011bd0d145fd092cf6d3023100e90f96640f643d79a322595746e8785b3a881ee66b5150bc9e59c28f585706ccc4ea8e685159c20acd68c812f7529f1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008cfd99c9349c49c5d8a3f0b96f4409d463b4ce7cc7313f7fd166f8f3550c4fb0b0726e6ec392d047284c899be63722bf0230395bbece008094a237608b9599058b1e73bdd31f7242f1cf800b65c008b86fc1818fa60e00acbe8fea7bce2206ffe5e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230627defa9ae707921badde7260a8b1bcb34c9eef98a34457e7a76af946c8b184d63b98d296a80c676130800d128546e9e023100a46294dde338809c41b67ffe18cca3d67ac57fefc2bb72e548d961edc3a76367e80554c75eade814f3f437969b396a810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230351cfd996a3ec2d05ada5464a3f25b44b37b6977eaeed0e3416b44fd826eecf762645bd50be79cd5ccaccf6c5cfb5552023100ba2867fddf0911f1a2a173434b4f76ee0e7e9ac0e890d10db29c1f51b042542cb7ae8b5b5cd15991c8d1fb681b7163620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230166aaf29328ff3108534c4f61d2a414af26f2ff448277789ade3c82c38bbf28d26caa13926794d7e0f2c63f4e82d26e4023028c8b0788329f4dca7f73ba15e31a83123d59ba846ff0eafc981d45416946eabf36d41f7624e95e1aefaac87722125ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073288fadeb633f4b5ab42ca8caabe4bebd5835e41716807092bcb63228dcababb94bbad5c98a2a9858cc79ccaab9c4f2023100d1b36b966454c52dfd8209832b0a47885db1b2446c9befb5539c981b29ed6e739709b6e9484ab91d52256d89afe4b9040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009118df5f59b714c7a78f34a3bbc1ec17bcd980eddb3fba32cb91a2c09d2b12eeb1de779a4bcfc671616d87c3951e445702310087b9b1e1a24b39d2af2951f90f8f91c3604f6e9becbbfd6838a395e69ea5afca37f6baec0bb16b18a86ac0bcd0ce08a60302047c435bb50067306502303a11298287b43d179664712f700b32126dbb59c6c0e020070021a567bb4867170bf6f9d4daab11602bb8ab66ee3ae229023100def1f22ddbf6446a8ad638b3ecc57beeecaa084858c401e2a1d10ff0ae6c748b8a8c655128ff48b215cb64c03d6c075c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307084f294a69b2822d819e037cb2eab4db1b0659f1a8446fe2c479fff81d600ad1d3038e1bd8610123eb9eafcc0fd7c50023064942d542938c539c7fa97df30a947e36ce56c033866a0c25210f0c4e6f225792155b898e22cbac6c77c23121b2e85c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009696b817f79ce236e90f4c7e6459ffdb71470766ec5849f1e4e2ca696313e50f90b35baa4edf7c5f11570da8427cd5c3023047709eb6c8d6397e141b7ef54b2684f7356d2e8b9b648585819e3626f255b4170938adb63e32ea3e330be72106446b0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044183c102d79af7411f8e048ab09b4bcabce56c200ccd3d93d05706fc8593cfd47bf9091ac6d0ef85693df4eba31cff902302b504b54164ff42dea51b09b7cecd4089de2853aed746d7979e44d84b10735344ccdd4b1aa7f34d559a186736a7c3c020302047c435bb500683066023100abc07d18636cfcc67fa0a14401f09abb2cfcd8f0003d05b5c61787dc021fb50384b693a4272fbe0837b501b60ce2587c023100be259af4833074eab4f314dbd15b5d15779ca67cfd33183190c860f69bad3e9c87097645003e9b00552265351e2768770302047c435bb50066306402300ca011092c95444ce9ffb7bcf8ce984f9196bef2a23518b0f6e4d671986354aff6311bda0997c79624e059538f801e6902306e4b7ecc3cb5315cd467bf0555eff7c5bad5a7e307e63b65fcd2021c53b928e9ac56bc5adab19f5b2bb8731e882471140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023052e33e112b20447995df6287e2d8dd6ba4852f1c6983284fab21609cf276886b1fdf48edceb7f7cfd1b3ef2df9892e9d023100a0114a579307d537c0e15ce37ed84143bbdef7659dcd12172abcb3f0b0a4967b36f4003b8adf5c6c6083fd0efc3a1c1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012b7d8ae64a3d8586fdba378926617057c79b95af927677e163240a719b971bfe430aa2c33cbf205a9a518fc82282309023100a46008bc5b4129928bba4fd14c4272db32d56a9d43e573f5362beb5525bf5004a6c74d9a3adc4e20eb4715d1e07c02650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e25def8407fc249a73f3c0c8d45c9f89d5c184a34d40811a30fff3f84f97d93023140e28992251a75e3659dfff7b8fb02304962fd0b13b8b7890b0ce37b5de393807f652142e84bffcf4e27d022a051bb86db250515914e6666972ef3b3503fef550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307708c48ee0458c1f07ee58f5e4285b7b0024271c27629f8161bae8992457fbd0bb1cba63b810bde006c3e65bae827a2b02302f9744a92e9a4e3417abc200ff04b7487f72fda9f42757e1d83babfe21dcd0bda118cf29b330413ebe35fdf0c8bbc8f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310081fc73030e96e399310421c4346077f1c1df6f0668bc11cf59599b82b0cd81f53a176c9bd8b544da5c6a3a2952f5c792023015192df47bd54efbb21f24e78f14d0f61ccee288460e17aeda7d468aab327c23982a799e8441da6f2ea4174a14017d940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e67531b1a1afc7893000b619672445b2dd7c7059b567279cf9055f67f52c9f10de5f2d4de99606b616554b77a63ce1d0230023bb42290d7a7eb179b27be99ed4adff267e0bf1f51a6988205157266768b92274e21453323efd2858f58b0d895f87c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ddf645fbfa0dde073b120c24d1343d104c2e49a9d57df9720667e728a20507d0a684f5644eb0e04d8f1fefa59f23f1702303581cb6faf43e292e0e0b49e779a5abee5168634af7ac6b12a2a434d93edb0c6093d6f7354ce9086c5789af04d7919960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ba716e02ed1f756852ccdff56853844b173b0929285007a5c8fb5812802ce137f25ea7a7a3cb71a5539d8136216b722023100d7f0f16d95957f9dc4cbef8c5d066e2db16f38187fcba994148b5eb60ea7943322bfda05bfcac98e426a9e20c1321b6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302096f826f67a7c02bcbced6655e6291e1fc6649eee39e4658d3a98504c7e52c113ed49760b7d8f681689e59d10b185f302304844090eeeeaf2e1aed60ad0b8ab61e8c4af7eb89bef2a08e2000f191aba0acb035bab69db54d980635c2ba1310ad7570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ca2f31b2fcce08b22de2f85025fddcd7bb8542a9a8bbf488d5089973306c8e0979cd73ed8f9ceb57bb735304067cd3502306d2e242cc7a038b09598268ada512cda09dd1492caef4c069bd11aaa457c4ab201e92c979360c100755c9916bf50deb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094d5e750cb796c636eebf554476445fbda2151adcd29d5c0b1e5a6f2244fd261bc612f955df3780fc5f4b67f79fc878c0230532e78867c5cf676d88920e3b939802776fdd15d6b6b92c4a0374cd7f64c0fc50640d98ac3bf6d25f3f78615bd0fab620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302479434b585e0c78d0d5e58a8f7094d76ec717ee582035ccf92bb7e09f4d1a29f123886dece57bd0181664970ed414e002310097dfa46da8129c2c866c5fc6b7901352a781c1c96071cba2091e4e340ce4288018fae5367dfbe3df1aff02eaa2cd17a70302047c435bb5006730650231009e34769f0624b98a99e5e37c9c36066fe1d477bc1491c450feabb37c527cc8f62f0f24c5182d55c156975af433abf8d202307723c2e6cad8322e0ff645505340f828c09607504e9a80a3d54a3525722af91cebd07096153aa458c7bb1b7ed575577f0302047c435bb500683066023100f54539d4cd59fd1f2cdc3e208d8adeb0d8c0a9c35b45cf594748911acdd349717061965038133f844a2fa24413daf640023100bf8bd73987b173862ad968f51190785a20fbe94ad4694d548dbb3b08487adfcef1f1be741743ca9bb8946eed9f8c95f70302047c435bb500673065023100c70fdbaddd709d953bd5e0c7f6229908f6304219b37b57e51f306c995727f043e61a75001fad074b6b617a7f382689a0023023298f6cd70ebf47be5b5935d5c55f1f24e6f5f222fc0498f78e5179a54e68a2cf132df42927acc9afce2b077d70e75d0302047c435bb5006730650230032dfda44c971c86283d85a3a2cb73548def3a9f319d32901e49f5c416a29352821376c31ab8c48b8b3588a5bdf01eba023100eae3b4d228eada61231035b4addd7e7e36635693cd896b4e527b4d9460c6183e38270f172fa29106be7c52719edb10820302047c435bb500673065023100f7d82b3ad1dbe7ca321014fa4d9694ecf04b006aab76e9be9be699524968720d7597d61c2e3fca2e7f68ee2ca3692d47023002216364f4e32a43d66696d99fb8fd3c9a73fb099569e2b69c1834f60ecfbd46db37df227cd1b78413414ad6ed31c9ce0302047c435bb50067306502310088524215b49ab42d1a22253def9cb29eb4787df12d819970923f7fec9b97602e10efb5f1d17da3de5a352238a57ae14002302500af4aa74ed18d12c33bf1091e021c8c5e5aad7c31172da8b0fe9db28f645fcdce736b510f2cf9ca1f017c12b8e0710302047c435bb500673065023100bbb64ca3570b550288562e5a0e4111538198c7df5493d33945a0c93c049b7c7e0de4fece5ec0b3668a23825cda86dcbc02306124359797a8da7340583b8346d6f2835e96966758ebdd709ecd420fdc6daa6d9fddcc6035b43543b32c11cd2dd49a6b0302047c435bb500683066023100d0ba2341d860baec4b5a40d8c23bb14228fe56bb8969bf66b4eee138f5e13273b68bc5352e11ca5a4a63781fb205615b02310094fc4dffd6fc25f14d1d16f59e50389a62a64db7e59374a474f062f1049cb8642898bf8a1bb984a8d139cd0686fc6b190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef651c0c14bd4635102c4169e1a0f9a75c1a37288fa6c30f68990130f8adcadfc34b47550d604219ad1e7887777d48bb023000ff26c898352547608e1c7ac730c20bc8eef6161ea863ec3cdd5489b3e3b0f88d16bb7715597ab4fda6df62c911d28c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ad09d7b2b6df57b3b4cc564c5ec76a697fe928716a066faa5114ab1274ba2a054b46f35a07bf8748c1bc318a5aa53c002305e53e9354b7646b2611a2ef383686336c4dfe59c2c950a1aa2049c2e5d86ce11314e2b4ca492bf0b7fdf72d5004cb4b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301970e247c402fc00a42da5033eea73e99eb0d9e8b932ef651658f4b9c8f54c8888fc3dd0d5a9cd94d4fc089dfa64c0db02304475c321832d1f54d58b77c6cfb09e6ae8eb17b8dfbf26a58997078394cdb51317e6dc1f08f89047b65515120b4e5bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017c539b47a38e3fe934be0d735f90cc09ff788b42d8ad88ff007414906788c6c9e79c6431fa9989ab07ba358186f5e0202301e491c3b29b2165b72222c32f55b3c43c55ae345e1a2533c170822ccf779aa1d6fbfa9719dbed095e17a41ef47a44c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d6ffc3af7f8d7af54e3ee9b40a807abe7bf1c42d519e481b2ab751a5d58f0fede462de90934383d91e41f54025302ad60230676709ea0d6b5ccc628dff59c7f00a20177092358050707d79f10e4cc7be6d053e84bbb0e15d51d4511b62566aeada570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023021a70ba90dd3934ce3216e8e0070346d5e9310808af129222db04e8b45d7f4497a13bbc6f66e9e0bb1c38af304f6f1b8023035261fd34f1493449315e854b8e5c8e11610dc6e876be0cae6e6e9dbc76834393b1bc25b3849bbf8f990dcf8368a05680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023014c8358a0413eed9ed6b1123b4734a3d405fa18048b1333595cb842112926a1867481e014b133ff01e87f4ca64c06d7702306e91d135bcd316105fb993e210d6a9ff48e01a4f6dffb78d97fb8635bec94bc1e40dbbba1322463bb0636af65b9393e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e2784ca80838d200637f96416b87a13e80e099f3516fe118cc49f5cae1bce33538dc5ac3801743c822401b1d72582e6702301a16faca3c24f0a5abfdcd08fe87efd35ffe12c9a08f184a71ab8781534d2173f91e30813b172bea5fd1b063c7e22be90302047c435bb500683066023100c97716b2794891d42eecb322ae9d15c729e7be48f7d798f62c77bd97c0744e44dea4a6994d1fbadfa17f26489c7e315e0231009ee9cc0022d30052ec60cfc58483e71abb7a83ae683f69fbdec48fd81ddaccd09edbf9064c0c6be909eac4f4225dbd8c0302047c435bb5006630640230018a78a5e8562e5eb8ee9c5324066640e04228d6a0aaa65b683956b6e3230a4ed6e6f5a1f63100ee02e5a2910e7bff22023024483ca5532276a4d29149a271454f6c42a8f3a943c3269239305806356429b0795969ca2d89b1eef9d1fe530a78cdf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307bd5026c0b4c53e886807f6b2fb15b54f3cde8cbd36f72dbae6a7b4124e30d20faaa30786f9dbbc13cd9a4a1324225b5023100f553ab3af40231cb535ad8d86708089c7f56a94a61f937ddf06799e5a7f5f8ed3365d0fafb467a1d22abdabaf1e760410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df408a90740f6bd9d174c60c0c3c567205ede4fbe30cfd3e019f984e0738430320d4c34384e5b11f533c0d091f87e215023100a128b3347a75126b5febea2bad65a87a1e2d646b9a66e1109394103508a546e42155119c127b743a6f24c67ab4f4c39b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230397ab617852a1c473bd074feaebdab17f6448a690f7d0d8c4fba77b99e035ce51bab587f063468cf2c2d0a5bfe3b845a023100a955e14f4f5611af618335084f7d85eba6c5ea57a69e76fdda70fcd50211797b68aa13ceb0b903b537124e5717c19fe60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1bda4b27a6b65cd97909e5a639c875ed5c8c325180757f9a5d901102e84d0ffb8239496364fc9395b0cb7cc82dc784a0230488995a924d282a6e1add94ad2a9a6ce12d86fdfa218f74bfdb50e782349daa1ab6bf3d01929aad6a4a85b085f5c1cf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d45522d259c1e86a400867a693b676c0d36ce71ec909a53ee97a16cd220b0c02d3bafef0b02c8e7690c15580b94d071e02300c1789649af1c477de7e0753f4d74776c3463761a74854d7b5ffeab993206961f96cc522aa3bedeb11c0ef09688865a80302047c435bb500673065023100d3bf36ac32bae2985ad6ee691cfda9e0074b058df19c3f10f6095b432587de04c2965cfc7aba481242dd065319fab96302302be98267102d966adae903404f15500b08e16aec8aaeb57539800bd9448ba6c95cc1ccdbd0e5b848afc58da92829d6600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230605f94fde9ee4e57797e56f8576560a7ce83336bef63344a022d744c6ec28f6d078d608d1c1cb4e4199fff44a39b1c100231009946e8f326a8e82d1b11335d27aa6bc4afacc37fc31fce0e451e754523f75dbf273ea2c60a6c6f627304e3406a79d1e00302047c435bb500683066023100ae9dcfe4ba71f21df7ee673fb63cb16226690318a8d86bfb6f603c75a5e0fddcf92cb8ee3f712ba1eefe64ead963b2f5023100c94799e1f5232d9338d9b1a9f1d3c0ace59d156e71741bce43dd43b4790f3034c8e27b22ee65a124d75f99067cfd4b1a0302047c435bb500663064023061e9330f5a0ddc09b46d6bd6ea6dc0299f7127f69fdbbffb65f8f651531b9065fa64d9696d37d26a86e925a587bdb1ad02304ca0dff435d7f73ed56e788518b41cc44ff89c1b84e0fd182d69894974af1a4ba79b0532202eacc4041ca6ecd87ef38f0302047c435bb50068306602310095cbb124d8c74b455d3e748dab152fce96f0b034ad6232fcd0dcfd8b2153adbd71ab8a2574cf0fa62fe5f756f1864a42023100a1807c3afa493fedc13bfb5939c96077bb0ec654aa5cf15f67652f38fd73487e322810b4ab8519aec1851cf2359b93de0302047c435bb500673065023100bf2a12d0640831dbf36fe1e08e413ecdc72a095706ad0a15dd0b10927e057d044ec4e44fe7c304a3ec9ea0b804911da1023032954f0a9700c46e6f1464cabb5578adf4f026983948c0f31fc27f690fe1f00e85c60f09378a99073169241ba1e054f80302047c435bb50066306402304f39363848a245e3201b973158a11a3e02bc8215a1508444a8522dbe5293847194fa14815b68d251a7286a8fe703c74f02304833c00725ebb2b597629bc3edc1c531cffefb7f6980cf059b6399e80db8027ea49912b7a3743cdeea8d61ca8b4bba4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100965613117bfdae8d8c94c6339b1ad1956c06599b6e2a0e65e6bed5fe066b576abf251547eb5f96712f2d2cce370bca9a02302004f3264aa0321bfb3a0543951da66a54ca1f1b7b67d5f5f696e25d5c76c9650cbb4f2bd9b9204dd43c8484f6a19ccd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ff3b63a8459eee90196c4645d74bbb2c8eb9d0a74a4f94b546315ea49054da7d0a615146657bc8fcbc05fb441bb6e9e02303f26935c8c5a45b79825ea584cbd3677c09101245e915f886d5f070164b1b00d1a8ebf4c8efadc61ccc9381a365ee1f90302047c435bb500683066023100a87ce46c3f65ff47930d421cc02d40b94cd83abe8ac652256915e1983ff772444b36fa61470389407e8ea173820ed0c9023100a229d97cdeadc07eba67e2b1f75f14b0b87daf10332f64a30cd0a1380b2d8c005ad92b074ec15b64d6e06fd00478cec00302047c435bb500673065023100856a2d5b5c85ce196a6a12ab54cecac5d4539266fc18e8eb7c32b72bd0756a5c8964738984bf37d0f46bd277c36ac03702305d5b59ebf059dd4090ac126f79ccba07a7465779c5a5a738478dad1a4d020160ec3c4105dbbf0ea8916276f6dbf560790302047c435bb500683066023100afadf0547f11e56113e7d1f6ec6feab2dcbdedfb7c71fe8a9bd9c4b7f1de5a71f4c004f7b0c59c60ce740956aaa4dfec023100bf5a79eb028f1008b7f7f20e843b827c2cf338b919f607766bce7c77a0980c0bb05c9c2ff11559b0a05ae90731e866f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023072c5121adc11c2833b6b580d5bcb3c250cccdd42756835ff098aff7f0e205f8f687c12b3e6720484a70d026be7c0127002304b9867bb7cc900b47f1d0ef7834dbdde96aaad8361b12739c0b68f2c1252c8ebd17aba55e32a23807663d56944983a590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304148b6fbbb5810ae03bc558212c571f59ed662596b88b947ed40832b3c4747a21b685ae516852677e2699e580322a90e02302095bc92428a6654ff2a02ec2bc07e54ae84f9950424a0fc8aacae69bff08ef915ee128d7fc7fe37aa8c826dfbfcda740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009671a3d2311e5f3b496bb49a61755fe8cd26fb6c7ac71a2633b91868535343fa2e0b1956d775c362e21a8f4fa578bb7b0230653c1d170668f5965ce4976092531303975547623f98dc133d9945f3a9a0cba546d3e64f0a13f7b49776d67f84113a3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0bbd83292a05d107889f884df5a22235e79a8f4fa36d3895353dfe1ccab45b2bc29b8525bdde33ed5f896b731a2140a023100869a113e42800f13e552f93b29d20d2b824a8ba95e43b8581bb0fdc472b65fa8b7349f5841461dac2d5ef0b7b233ef8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037777d9133c323a0ac2e60cf03be6c3078ed7946793e2dc89854fc246e5ba5831c504b3f3377f52d3ae61479ce3f5d1802310096efff89b67f9dc09f42fcdb2e423b88f4c116db382c7ef6233588b4d8301e94b8e718297161529c7b7e7afd1facbc330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048ee8d77cd0ff5d840fef9c48eab17c1f1c3372be0fb5e97d1b0c0115f9f180defbcd0ecd9d4c3ca14c738dc1e688333023044a3ed613877fbd876f49c8c0d4235edfd05c19641a21dc851eb13b20662883f040103b36f61c6dee1d56e903711cd450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029f95ea98a083146d8f350c8965d1703150a76dabfe0e5d8918bcdae9d887d99cbb78876219bda861264bd3f740c61f4023100d3c0ea3e20536bc36cc6b104c7ba08717aaac3cfeffc12fa84c30248275d394e4698f4ce3e5c4172d31d8c5b8e7cfcdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c04c57ed528eb7cfec27d17dfe85b89257c26797eda7d0ac459409f80558bf35db890056df7a26c5971215d8aee747d102304a3ff0a7d4330f951ed6a45e9fb61d71ddf9a81c3818002e6d7c8d1bef92f1ae962f2f55179098378eb935995e28ee880302047c435bb500683066023100c471c051faf5074937cb63b3afcbbb68794585bb3a1bfdf552a87086ad465a9a97500a580cce5aa8528fe333357f25eb023100c3e72985526eb005422789b188fdf4ea81b1923d8396db8d81491fd8027dac2b7985dafb56a7b2958fae8dfc64f89b3e0302047c435bb50066306402305cba139205fb53a256a047c91c7290a42879c3186ffc5e020501803b76cfcfd605ccd7f39aa641ba58158346178ec12d02304f19d32c95fcc95e54ca6c417bb728b5f0d7dfb721f08f2ab1370ed42580a3338e04fb3fb298ad35cdb6e7710df0c81c0302047c435bb500673065023100a3fbd6126242abb1995f5b14a964f3d97e479879ffcbf467ef570f442ec9a8b7b4b634f6d5c2b8dabc210bafce68c1ff023015810a0c0b775730fd4348bd6075694ecb61a42cb3ef58ab76b2b2d5897d93a54bba10188acdae3f3022332eacb7c2a00302047c435bb500663064023008fa355918a9c3a54df571c1c21a69a161409ec2f00c9402ffdb825b39f1b76c660b243c607b4e80bc071706d801bda60230384e2f1e4364c34618c8f127425c13520127bc5349980e5535157a36383b2ef8b265383154a3421b280cea7277eb75d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013b9502d49175917400ed4d95d1297a4b1d56905aa4a3d9d4b67920564f6d5a2aea69a943950fb43cce88a162fd8571402310080b3e9544212a543deed0f9aafb66ab43c06e262b14de3626c60ccce5072e8732e743e0e6a659eff50e7bdc76015b0590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023005b0145a2f83ca14a125e80ff6fdce79ffe15705b7036f434ba9dfc531c7281428d4270b8c9251825ec53f1ccd081fcc023100a27a0961f878eea5668f8f460de94eb2ab7411155ebf4f64944ac60b58dcf46821639a69822a5328d45955dd396c179b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b7eaf1f83b3310530eda5eebf2383298eeb3f54d1a45bed73ee0fe6465c0de038918e308c4c755dddd3dfc10411925f02304d2ae1d3cb1acea9f077c21d0b5a5420058e705f04430d2da98f58bf3efeda18f1644a948d636c1699a1b4d98e42abae0302047c435bb500673065023046b246cec645a28ec2328679b52d0bee437422cba0e0556ffc77a0c1a34bbf51d9e43a715686d727f6114f6302ae66e6023100f02d50b0c0de8d6c265667ead9995209023ef94591d5c6b56de00e2d7de26c5059123513bb5167047128c0241c7a9cda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009390e8ffabce4eff7f30d59ff03fd377f05009c401bcd5968d1d6e87667b989b1172a9f2d38f5dfaac4dd0fe8d7a5e25023100a00ad52ba9a9f36cde241b599a5a89d4c812f3ed3eb8b8578b300cb9ee4241d6e682c895afa4759922a932f1c52bbd120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042332749d7b299f0b08fdfb390ec714d81aa77c94c509d4278484538e8a6346329f3f8b979c2b570c79e91b6851c96270231008910521e6fcdd546d0a5e34182b8d7d76de54236d569d64a0fe9300a1bc54c4840747ad8b2e014a7cd6830f4b78d00110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba8febc3e37439911c0629d659c4d5ac5c3e70d82439ef6a39f97f09747f03016106e07a5c5f083750d7e387e5abffa3023064c3d3e7e568e125a8dcc790829c4faf18406385270ad1bdb7433a91856862fd5716a639f0ea85c6bfe8d55b6819ff240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060b273a5795d1174326dff586a861bca549e7ea1ff5d998cf856ba48f158dff5f90815a57f5056939eb856038af122d502307933decdf81bedfb5ef77cff32d4133b7678237f87e08c3b0e58c083fc11af752533cd0af73c128dca8d5799e5b5aa020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd45f140df5b3889077cae5b108cac37961f667cf3d1cfa3241c6b930fd8a2c6120bb36e30ca6a85fa0551e6b642f5f8023024cb9792478cc697b6a18031839cbe230196b479a13e74a91a44bd5f9be524b88f4e06cd765d5aea235906e1fcc00b050302047c435bb500663064022f0f27a86d753de6ed229330371fb89f896f5b493c1d45e5f1f57295232591bc85d9700497ff4d09203fd8551d207412023100ce90a30dfa86056d1e2fd47ce093bec0bff1a8f76b489756af8024794e75decaf15adb6199a4218c4efda217da098f0b0302047c435bb5006730650230575814ffecfcb1b2b81fb2c8e3a78acec94cdffd9826e9f8615d42256e3db10f9a2ac5ea887a2cf6301a65fffed1b947023100b11fb44b491b7cadd6c888b9025d53adfeefac66470355d21d1e5799129956552ad06ffba0681f24570aededc593e4d30302047c435bb50066306402307cf8c8a61a3bb1caf2493f18694bccf586e0578cec2cc37642c39d7c0c59a2e2ca78fd3390c0a01314e29923730c39b202307049a5de91c185a61ef1294280f45b2cfd40ac41e4fbeaa11870bd8ba870e953e6d5e30836e86a849d4afe4eda90b05c0302047c435bb500673065023100b411fb8a6bceab5ced2fb79f5790025ef4f3d9b72d41c8a5ba7f40a59eae0823f8472d4ff32aa753d8e0817c6dbdad8b023024505e752bf2f99d1e48824c14aa42d0b27cb122f1c74fdbcd013bf7fbff8643c5e753e60b9042228e97a8a11f35d35e0302047c435bb50067306502310081bab4659c03fb9d68c8b2dcaeac780cc5d553f484207bc2e0c501bc5982f5aeff13d7e9d1ba8dce6cfcc183338e7479023003b1b760d6e00058be2b89c583f75e8b16c5ea90a122658a2ede9adc7c703dac2a44879bb2f5feb9866381bcab6641990302047c435bb50067306502310093992c4594cb14057a1a88ab3ca813aeac6ea15b1c64f3fff8484ccc3383f61e1a750be6c028d1ed18c20e4bb83ab1d3023025221d6bf35ef954a25c2b153970b985924205671498c381cdb6597474fce3ed8648a7fcb206465338eac5f5ea95e53b0302047c435bb500673065023002c6e8219db6330d3063ecf281f80ae5988f477bb4fa95c5d429bec72d7497deeeae909d8695161aa09ea93da7804b20023100d489009ce839e0c40deda649bb5e093c0e2c49c640062492229b6173c7a01dc2f3ae8804191203f3e1e93217f56c07bb0302047c435bb500683066023100d50f0b5f4d8b3dc6a157f57c4ba8902e3ee9d2093591937c26651ceab0ab45ac1e063184df1c460edc74a2064b90bfce023100b0c68d20c38c4be0177ed9da4edd1cd0538fb375189a649b54297e34c0feac52cc371ba4c9accdb96c004371d9db4cb00302047c435bb500683066023100c9b94b1d73cb1c62fb565b0dcb1f4771ac44248b1f56c820f0c12b2ce825c6de07dcfcb7cbcb85de481dd39abbbd3b2102310084af748b786ad5e3f695bce9520ca13100405f20c5e2a8d2c7570d420ef4adb2964d73716f74af1a65a26d3846e515fe0302047c435bb500673065023100c907d56ec339ca11b9c7a5f49a18e036b185a47454029d9032deecbce20a3fddf4393ee0c42fd894c033f96b0ab2f9020230647153cd44618f7842985277b73a37ac48a9f05c579bc8db821fb082101cfc99c78646f41bec7ce0cce5dab3756a9c6c0302047c435bb5006630640230359e532b29fc3906190703d8a52d31ee75ec50a84a61a8ba8a44b966d79ea33affa86e8e6640dc52204693cf816823a00230133fedc33f34eada615d2629b9ea8265d0f6d413ed3d1165c188a7df19a9a0cac7556d22fd7d0daddd6f9119afda6dcd0302047c435bb500683066023100de906f3d69fbfc85f69765f525d3ccba085d3c78e29ca8ce19852f611499acbf2e8417699c20797d475ca0c0ab315748023100dc34946ed053cba119fd263fe90db329987f2fac6dcdafd34f5b1954b99de03eaa9b878e8dfa074e46f51ce2d3de8c9f0302047c435bb500663064023059e84b9a470e8c153174c5ee6019ec818e48b3244748d79ec7bf1740b59361a472e9e5dc1464ada4f75d62850f3de6f002302e61a05e85cb314f52793783479af514559b609356c2695ab906ffa32f45151ebcf98e5a671d4ced4af1e7a3fb5003d00302047c435bb50067306502302daba70bc781a941f4ea4ddb704c32b715ac0757c62cf72d321b3a87c11a485be229ed56439347c1006b310b0f692837023100ef024b905b19e66a7c9e59ebcad14b65c426d623ae79a77d109f83ad1c7eb0597ff8ac59b95bf84d1abc77bfb470d19d0302047c435bb50066306402302ce8fe9b5c323e61e8e5ced770f46b8abc5be552c11874f4cc4ca1fce2b204c18bf555aba5d8f4339c8ce8809ebe8ec002301685265c7728a0022de1cfcce0bf4e76049a790e391279d0f04ef72c4eb28e46d176ecdc0a5bd5d42440d8d516b7c8c20302047c435bb500683066023100bed4023c7604fadf7bd49e6b18f22fb6bfa09280aae9e813e375a050635e39c9af4112dd1af85520967d4fec5c5ea068023100b73a74baf1695b82c747c154d06fed3689ca34f5b4a3895f5cf47eff81b629d3789b0ea8aeb05481658e72a0f627337a0302047c435bb500673065023100fdd6cd5a612f56b4143dc205f0d67477da7b0dba28ac3b8873bcd6b83ab7d0e8cb0880d9a55f53aa1ad5928bf68cf6800230137f9d7046e743f0eba132071e9722ae8c56caac02aad6119c230ca695ed50bea6a8a52980df9820b822c8b2d20007d00302047c435bb500683066023100fa93faaf94c7778c6ce18d06a2172464166a9103b923b24669fcc4c5558c4f6998b27d7448043fdbe936cdce8c49d75c023100fb95c6f21108e2ab2a9762a5b99db4b8a1564136d3c52d1dee121e99270abdc7a001fd949ecabc01ccddd0c6feb44efd0302047c435bb500683066023100fcb2bd20e21d30b814568bb2728d21e5f0914b409642c5a2a468d9883e64927630d188cbd6482f894477fc76db37df7f023100b1216986d1991ad478cb2085c26d80c83067c463edcae915566789f1d6327a1d891d80fcdd371ade017964bfdc8132960302047c435bb500663064023005d2c53ad0d9bab680f46627f9a332430e37c628054f1237cec4621428607a9a6b38588c335c3959d29ca7192363567902304755f082bbe900e9de9e4ee391d22f9bfe9790e26cbe107ebfbba313cce2f9bc791959c5ae1c92e5d797958cf44fee410302047c435bb500683066023100bd47ea2cae4adbfedc2b2533acaa2407183e50e17251721a27cc3d1be6dd7ae3a312f4f0e107a20acaea9503ee873032023100c75f77672186e18b2220d3516964a868e7d3c6987b0e698faa6168da71edca508dae3dd17e93f99276ed91109eec37710302047c435bb500673065023019da897d178d1938151a4a7d5aa2989d6297a8cc327be66600b36782240a3dd2475a6321b6fe0c06240d26b647e94d2f023100e70f04425fdb856ab6c79b444e92b6a8258f3861030ad8ebe46fea1c0aa5ddedb2e6870c2430a581a9b3f6b6a2cb17640302047c435bb50067306502310092608355d6739692d233f25cee01a3a7b7a014eb27549133d17d19f87ec8e2fe94e002a563c4b7f2548ecf60740fec9402306650f7dc81bb47c929262c2df45efe7ac221976bdea54c54efc7045841e0480046cc513cb0e304c1a316e7dd36635e5d0302047c435bb500663064023049a77f42cc4093a4c88c14fb1fb97782dba3b40b838ff62a66f14ff69d293fc5db0399f1574b0e15704b5adb33d48380023056bba6e91534eb25dd1327c68535f4e19dd2e931a2d58754e4ad2428fa55d266b327f032ad6a93bb8ab71b5408da7d610302047c435bb50066306402307c540c3c328160ead074c978b1731ab0a67322e543f89b2c31e975db17c4c1eef7fc4734dd06550e1f49112aca040036023049803fd7e8bdd1444b824d263b735d32fd3aed99438822321910815cc8638fd6e520cb6e49501503cc3328f1f555404a0302047c435bb5006830660231009aced502e64d5cc7a6d793d914912f2e3e7c48f7d74522cc2230daee7bcdd9902912d5c38c5fabd9dbdd9aa13fdd78c1023100960af21c9b82dd5884541091b3ecc417ca71311b5d35bb3ec4ca4e96e43989673b74d217d7ea627d814969f3cebb8d5e0302047c435bb500663064023033003f5a884ff0a7345821141d6b74275238bf4b3d18685ac06329c6b60286767f52caae483407dffea05e9bd54cf3bb02303ad2bab91985e6cffb4d4c310de5e805dbebaecc7ec9d438eb5eb89b77e6e98e7d886f3a571f05201c192c9ac63a82e70302047c435bb500673065023030784791fbb48b5a82ce1c432781ff1a19f54018209dae9c657a4c9af545520b932368a15b72c0a48c4c77d14cf2cb7e023100eed5f0517150de7424376967ce5bfb57519f199edff4689efebb63644b53dd522fa653e8ff4a1a1e5bc7f13a90103d7c0302047c435bb50066306402302e2bc18e58757a3e5b5b9211bbc9cecde72cbe1874013d3edd411f20ce5550f19814cc16ee31617d0de40127c94ac93e0230043aed50bb0cb6a1efdaeb26832cf5bfab263a8078204d4138c09b5fbce834702995c78619a6cd02d11fcba3cc28acf30302047c435bb50066306402303e09fca1bb5a1bd735232a48bc53f71b4cb22a429d4c9bbfc1d19906ea0d6df98ad3d8b3b1c86ff57ffce9ec906feb2f02302908d08199d56ea973e527d01cde8b3d726231ab38a43a66ceb324a9d5fe9d42a2a4e475ab827f190571f564290081050302047c435bb500673065023100f1fe8e34400b8c97fd368a225bba6d58cef2eebcb8efeeadb0012ab8ad1c1fcd3c8ac20451f01197eeb11b9af19158710230791c5e9b1d1b9604adb8f6029bf8a1abe0c63c69e2f756a90c641992ffdf359ec9ece5c7d5ec7dbc9733304d870b180e0302047c435bb500663064023060042ea4ebd97d0ce1d7ef30b39285a9f12f706fd5719a6beb506f35c17e2b0da6637a6834d47047e2f89037367c1ccf02305e86cc4da49a842fe0095d6e2219e0300b3ebf2e48d221d2426e91aa0245192daab97b529bd1d448ff487a8a8f50f7d30302047c435bb500683066023100888b84d9280ca384f9df1744a98b68ce45bf69affe6d92c7c50b7ed101b5a1546e2e72d68ffdded56359f3e935d1fb36023100a4dec2229ab198d31dc85a01ec0caa6bbd6443270cb4aee7eb754afd7a360cb1753286ec999b47d4ba57fe6ec572aecc0302047c435bb500663064023040d63af754339b53281fa2a7ec1cb4defd33deeb985b0db219d47deb5c24e64b96314bbf892d0a743c61fd9f195d693702305582d806f5be5ab8275c6b7789820bc207441b8b0859a1151c4f7198f50f7663b775fd77d00df5937a6ad439cacb1f470302047c435bb50068306602310094aa754f5871546588e45afdd913f6628ec1942506e0a2ae5901452aa90101d5e185abb613de7396528d38b48608290b023100ffa0fc6374b4d81e6876c878e71a6b75a5042c38c600482ae687eaf34f5714cc1b1d63ce45b33a8be8b48313f35746400302047c435bb5006730650230426c82d6f8c5c65dc53498c11e9392353d49650537b3f2196a33f3c69b4b66251e1f8bd2ce109433d466df0665b4246a023100b20a7c066cf62126d3d6072dda6dca442a155da2b6c0a57c042b5f56c13436bf5115bb8ac3c15d772eb5acf93e86d13b0302047c435bb500673065023100e172cf05b8cd709b878f64093fbda3bb3ebf768afd4fb58b100074b8145fed190bb456ccfcc93463d86cb85e4944350f023030c570c7c83d0b93cf8389e097cb507fa7b1835f9342d1eb80875a18279e60a9f0d8e3193001bd0569d3d304734bfca10302047c435bb500663064023007178dec9b607555047c572425c0633031211c9751ce7842d7032ae82c6c739d7a5674d9613742b5e24c21fbee44101102305828522044f6b371e6bf154f51cd8f1e6c01340db7d49957e806cc74904f9318b64cd8516cbf7feea17c79b2dd7386060302047c435bb50067306502307faf84b3cbd33cc30d8ccddd8311f37b092d5129847565e6679d7a33e2df1ba2e0ea4dac295f597c45b31fba4709e1fe023100efaec67d411bbebfc6f74ae388da0a6fff847b4fba3db3517964fedd86eeb8253fe0afa30f1b32aab4d48b71fa4656b90302047c435bb5006630640230493312cb5e712642bb80911276c75fba9bcdfc73fcc72c80c3e5bd7bdf359e86f4756698e37e78ba4912766d81e65f90023005740e43848f7824666692ca697d4f70ae45ee8d2e68bab013709d95e991b19ac0ce07bb22278f3ad84d22f18e48ecc20302047c435bb500673065023100e364d31472cb2b8bf9c8c6d3e209c74b9f47ab98773a2df7bced585f745f3caec92206548de06773bd7dd5924820d46a023064ff5885f57d2f4ad8d77905a69e01eead53fd092e4e5f6a214e854b56f42f4065aa80f756e158d1af4e75a64ca721610302047c435bb500673065023100b7593bcd8c8605e66d8cdec87d249f9d9c805e2117d268e1fa77036407b7f02f34707bd8b8dade6c9435f1a92045391502300b336773102617819774b6e6be48ca1469c71c3875eef64d7476195f4ff33c919bd7f78211cd6072611a8847cbd78ddf0302047c435bb5006730650230066ec46361eec3ea995e114bb1d46791f59ea992aa1cc11876c04546b11a6fb2f83d2ed30c5a3c983a41846c24770499023100b34fb2cfee70c21ec95cf41220053f6bb2e1f761139fd8fe826e23b882de3401b89e3211666d974d56687538a280ca770302047c435bb500673065023100cc6f9c7d05e7075f592d294fb4fa0aff78b5163d18fde26ad7b9c9bb768da3d37017c7d64e43f64df6591975d631b9c602306ea1d38729030a41f95c652c5a46a27ad477780c63cf07da08e442e77f3274c1c06a133413c85d7863d5600b51b095f90302047c435bb50066306402307d2a2cb272a9a577ed6311dffb656861f50a4f92f8b8f708eecba22c14c258af2af26d54283b57130aad9cd6834d78ee023058ab1f99291a5dfc13694878180d317e5474267ea4dc7e104434a7c4c4a969d3d14dde4e60887ebc13321f2c9bd550f60302047c435bb50067306502304d1edb5bba33887a66cdfd1d16353a8b5a17e8bb48e0d01dbdcc2ea00f005dfa24564bb2f67a84041d31df46f5fa5802023100884557b1605cb6129078b8773fd18663deaff002cfdc8b5cb7cfae2b15041fb87e579ac873cc1c1c8a489291e9a70af00302047c435bb50067306502307be8dd7f0d11a62acdab3294f878523315c1cb1f34cf0910dec5985b4f8d4c93a8f368bd8274454c18e59e1e4dbf43de0231008a16361d0a995856e3b98c371788ff6e6adb6102a46b164458489c1cc5f301e66d9357fef143328028f1e4314f848b4e0302047c435bb50067306502300d977621a583c5c628a55de71fab5b439ca9d8c3ea63a74752bf3df67faf192d5d08e684097873fd9a1191ca234400ab0231008bb4d77c8a60ff21a2297bfca0ca47b0365e6a25cf923247bce3ca2d00f0aff78139e82d8425f3d95940e23bfca98fad0302047c435bb500673065023100949277195fb6243641ca1baa19832c9fda0af6811c1a87591ab9f1945a0245896db9f3fcf9149c8c671d228182bbb4ad02303535d1c2b768479bd0c9a38be506c504ab85b8377bed7253a45dabe8739def2fa734cfa2fd878e3d49a3abd4e6ff09980302047c435bb50067306502310092418376b3d6a43b51a5b3d46d13045465ad77b707780fdbfefc9d7f430d618c6fedbaddbb9620693098fd4ad920262d0230167ecf120898213c9d633ce204fa3666c4257af32aad0f9437668adcddeb3c862f6d47e39ef6c187119009cc1ec35a970302047c435bb500673065023100ce79f268ff766ecd76005e5575cfb4444a1d6aaecf4f6fc8e8ee0633becb0a99c4eaed358d4c7e6defc6a123f89a19e502300fc3253d94b306d061808917c0828666e30a1baa7ce7b803004bd8fa19447c56bd20eba9baa2557a8f96df5a8ae0e69d0302047c435bb50067306502301bf9246c8bc5193b4cffabd90c4cd993a9ad7e4171001406ff8cd8ca0b4ea7a7dd48c05fa3a8090dbb3c307055b6b382023100fe74408f38334ba5578a1845b9dfb3ac81f691afdd974a88d08903e86741ea72d99254039fa3a01c565d9d6a5691a81e0302047c435bb5006830660231008684020a47c21ec8723e7e711c35d76019b9c3f782034754eac15d2bf3096a4b637ebe1789e1e0df17cf3efbda15b92c023100d7c4ef3cbf3e22895ede73589f01207818faf1dad4fe3ac2182e2225a90a89d6c18700d8b669199be910d9ca27ab4bb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3ed2cde34212f588e7dd055d2a7ecc0d48806ffea16a9b3ffebce259b69b2d264f6d919f25b346c766a925666ce6be702303075af36bc412befb746849e32ed7893849d7a115cd491533197c255638f956dbbea44b9b2458221e48d96858c5cc3440302047c435bb500663064023077ea0cad47e738feced7d6d28d1bbbc1c44df5d3358c33ec4dc4a1ee31cca0b547932bf0e50f104f5e52edaaac418fd3023069087e5ffd52cb3ef9a4fcbc38672d1511338b7f6bffedd0dfffd1b0953b1227979714764290bf833feb403d7a58cafc0302047c435bb50067306502307a5d6c9ff266e813a2b8b3331240ebc9cf8c601b3aa6cba59d09031d41df7cc06f4f243fea7b4b061d9d346fb0ef8933023100debd4b9f1a2ad935e6d9cef12c6d10bd45ff82aa2e500b5bf39bd73b6e196d27c71bc1c744c47e5267354016b7a798df0302047c435bb500683066023100d71b2fd75bc9501bf08ff93d7a61e3f38c966b5d27eb7fab890a44f6e9e661dd13f6ee0de7cd26708ea016435c5beebc023100cda4cc9688dd5f7ac49bf747802488d7d80b60e5a54b6421dda74c7d57c754aeba88bb44280641b9655690c4f6f856cb0302047c435bb500683066023100b67c162e9ddea63643e5c62a5575b569c51fc5b8c090cf68bcdb6ad649c2900ae28f48bb29dadefb9a9dce3f7e27276e0231009bf6c76e04a91c26504e767ff2223be89097264bdf92b1cca6a0313c9b8833490d55f9a2dee27e307fd09fb54994957c0302047c435bb500673065023100ced211b94c0a5efbf02cd8a862ba2abfd35baf2b435861571455430a0329abf289c86c602b08163fe01380e363ee5b1402303160afe342792f780ed7c1a6ede6fdfe189f28273c132ed890ca0653c84414ce4984a5e5dff2e2dc9c5529b8a6bf3cc50302047c435bb5006730650231008dd1a81c1d96bd9e2b29af13e41e7f0bee4bd6e10d33b8f78b1a666d65f0d9928bc04f464e25cb58d5ad7ab91ceeaa1f0230061b1c633a912ee9cf9a142ec5ecb0525830b5b487aad389ddaf6081de091409eb584cec56bc6d7b7820746a9029f3400302047c435bb500673065023047dabafdff239e02b9be9d45ea648ad668d680956ed776576568db1dfac656955e3c87a2cf503006b455d3789c8c99d6023100dbb72bf04372bb1ddffeaad18be7ca8d85bf1d7c5ceaa1ca43fc4aacfac501e3237b4def5283a145df0654f3633aead50302047c435bb50066306402302f77b81b514d8b36923355903f219e3230e8c1c815bd020d7b1749af40fa6ba78f8d78d618a9226dd3a9c479c8b6d2d602300f6656e38c00903b91a74aa92fd61e218c1eadc04485a614e0ad7861c7295cbd97a58fcbe4eb462e822e1741404b8f2f0302047c435bb50067306502306aed5d060e2a685eeab4f07ade3e7ec18dff959e1f37295a20b2cf1a56d3fbef0d56ca01f536a7eab7831428fef6c4a6023100c204b777174e491c7876b306f2d4ca3b2392f1f3f77d0c34118cb813b76e0646070d422e1690668eabc4d0b78f6d93560302047c435bb5006730650230494ab8c8f612987343709f6f3cae09eff2e2127221095731dad334cecb1a25cd7a01e17e4c693219acfb25539112cd70023100e747c534c297c5bab711245ab90d557e943e45b93e4b042e13748d12fdf416d987150fe49185ea4ad8a970bf42bf614d0302047c435bb500683066023100ac9eb7f99e13e40bc587f19e56285e5135986f1a948761b1378ef4c7623757d9dd77f0cb15dfb8493ab9476b3bce12a7023100f7dc955819de5a28ae4bae0227b3825e0f7f973b06d6829ab9d22dd84041abff1fdff1f0df0bbc3e42d0c3dbdd37fa420302047c435bb5006630640230097059049851af606959ae7cf42878cf2e7c9fa3de751b7fd0ecfee219a67b425f4f707f7053ed4c61be629a726a20650230485da12f648f5a8ed72fe25c77b7f9df3d27848e60347e5f46597ab9dd0168e5b9ba1f688784de6195525e518dfd9b240302047c435bb50067306502300c06e7f086be9eb0c1343b7dceab148d82ab1348e7e0bd750e94b133a8e0e7b5249ca7197b2f4f64c47f659747570ab80231008e0cc9dfcfd6df708dfdc42fb03f56282f04d0eaa3614b277a23bfb79d9e75968a43680acbabdeafa3621bf7eb5abdb30302047c435bb500663064023072594943a36bd689d4c1a7a537dbd22ecb1b8382fe5f35f8db16dca2f35d0841b053560cde3f1e1f083a9dccf87cf89902307b59d0c95ec186be0a089003e67fd4b7759e4ef8c370d8f395009e445542ef24189d112cbabf174ceddf12cddc8449fc0302047c435bb500673065023026f2f0bc7ca6969f5043e746e1df3002a3981fbd705a2af17fa51c85c9b86fb74877e5f8102adc0aa4be10ea80ad0a38023100c60f3d7f084dfe5fa2202f6249e94ba73d683c0c4f821867952b1672f68091bf02006f5a5e922c297b763d32497551e60302047c435bb500683066023100991bd095b8c62de9a12aa6ac8be4b480e9b734f5bc55d5689f18092d31b637ace9ca3118ae9bc93be11d0e5261f18188023100db60a447f895ef38a92c9b155ee3eb92a613e3035edd6868ad39f1694b4959fe93f9ea1f2828258f3fdb9f4720246de00302047c435bb500683066023100de7941c0302078075e7c0495d688388a56a403090574bc2aaea5b3d7d83327aa141d77863f537cebc2a274dd6e5b5bac023100b381eab17f99699c1067f685c7da1c23f1f4bbc9ee8968456993576e9c9378e0d0eb30136d65ff10e1da7238f4a361df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302de0fe5d75135d116f93c43cbe57669deaa7fbb169839871f9c60f659c71e4c6c674d5bff680bba699a8e9dde16a4b58023035e9a66eb3f08f79633851fd4f25549b7ae351fcded6e694a1a6db2b592df86f9a1958d49fac9bf0aabbf0fb4f7e43250302047c435bb500683066023100a6449d1fef9a14a0f9b88b80637312a6739387c60fa6e6274f00381d010dba29c5a3c3b0cba1b09df3bbc3090d919af0023100b354d73fc2beff7d47fd5d4501b0ef664a56640204761e59b40eebde004ccc706761013980c086934ed2f525dfbea6490302047c435bb500673065023036fe020b5dc08c62d8904e5d9be67485f9846a7a34c1e4564a62234b17889ba329b1df30695061a82982eccfbaa97be7023100d348a4b71523f3e7b183979be837fa5932e255a357d761ee3fc0d1ad1b5f288cfe5dae6234132a8dfb3172a4d10a8c350302047c435bb50066306402305ed5b5981188cfd65ad2ab857f8dec9aec01098363793c312bec9df557fbcb35d67a9df9680d84e2537067d6b270d96b02300a7ee2264ae14a33d3097ccad9486e04a6e0cfb8a157e5a4a90d8fbdc096db98edbc3c8831d552727f8bfd72d69c741c0302047c435bb50066306402306a4f77bb73bbd104b748a0de4a6d1b741d8256844c090fabc8bb1706b95989f8cbfb1e21039faafbe893d35c5ab59098023003c2e88fcc98f2085faa75db966341d7f43a62e247f9077ffd4b441516bcf695a534aa92bf9e4c9f50eb12ae9593dfa30302047c435bb5006630640230082ea5b1dd699030fc004be7a29fe34f5ae5529c62efab9853b5f180acd65e5de6860b3f5c9c703d08d9d0ae0ac0c77c02304e9ad8c15216029512a6ee1ebab26baf3c8aaeefa6d9d91d270a729ec1953ee4db188648a0c7636c9e75e49912c05cf50302047c435bb500683066023100ba82ea32bc734e2ee3a5e66c1dc599d5094bd8f1d89782af1f1fb6cf4edf2a43108071dd20d7f7e259875f5c629d4d82023100b51c88ffe33b96e0cacdfd083ff637d2417809fd2a49f2f52678201f4d3de23d64773c5e452f31d109b087e06bf361900302047c435bb50066306402305e775335c41c348f001217e836d75afeeee456e113b5af1230f256494f87471233eed359693e63546ca11c180d47e5f502300137220eff706ca6a6662ec36e9480900aab90cc7f36a821f7e4b5fb3775f765e3ea21d3ea6e036792ea582f3577ad5b0302047c435bb500673065023100ffac34dcdaf70498853a4f6171f0279ee22dfc7bf177f5aefb60ec3b3c65ae43e7c34f2b258d97098968969eb06749f702306a6c5419e4de3580a5d4d89cea82f13841a8599b5986a1126aa32ab852013303e2933d9378b5216e64017226346c99b00302047c435bb50067306502306b730e2ff5c6aca7bc188ba9648a394b68a55a98b3ad4940e8bc794929ff3765de44fc0f0f12657e3c938f878f8ac6b10231008a5f9e29166210eff615f56b376342b63b549f9183e5c7a76b7b6caff95e4f0b8e26636accb8d5277fd5b521e386b65f0302047c435bb500683066023100f254cf32cdc33839f4cd33fff6fd9c9b062b3c2c30a484a95bd45b21f6e9452d781ac35cce554aad18aca6c5c28be1a1023100f469ea69ce595600f86bc5352baeaa340a1e229593a59243de90e600637afd2d683ab30703de46247b7fb4f02adf970d0302047c435bb5006630640230654b18bbf0a39455ddcaa190f1b5483cff3de22883d4f65a28317e25dc0aae40dae8d87ba92a016130c3500f7a5a45d502303ab48c48a7b4af36a4feecd8f9e09ec459e9310dcf0f46b7520ef15afe33c224b0ae02f43825e653cd5f364a113f46360302047c435bb500663064023062c91fe1bf8a740583a47e455809bd29c163ece81132bcfad1c05688abd26bf0604d7a424a9280b6950d44a144c016260230063f959aa739494f588c151da025edb072c92bad756b4bb8c881a706dd93859ebc7069d633bf5f55731ddf3d5a8a1ea00302047c435bb500683066023100eba442c77cbb9116ef8283611c6fd58a1b8d0e0f8abf2fd381a4473eb919356ad702760a1dd06dac3aa9d4b5298c1b2802310098d7d2a346cf73757f8bdd4a999041a8861e160d9472fb0c399661be6d6eca709547076205054bee8ba804dc00dc80340302047c435bb500663064023075024d8f7f584549664f9f9a37231671dc8030e81a709f7ab07de5de8b32e804265e6ae995b0c9ba919b792ed9d190f002304c37fdc3640d1a1e79d0e91e780038cb60c9a1eb2962f2f49748e3c3487d0c75de9333f1d14ee21bf8a478c3383f3ba40302047c435bb500683066023100a68d8bcefff9d120bf431cc1e11ba5b67cc5330e0f874821c889ede81e16b474149179b6e2071850252d27d917beb5e9023100a804ee29e9d7f447ca26643bef0f20d8fe6b97a3dc32d8a31bbb1b1b96e2c6513e7704c300e2d50524ed3b25cd8f327e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fcecd343ae9c2257ea95c6f059e7fad37c2f434a83fd2e90a826183c139286cfc6d1ee90e410c97c28711941e1b0aa402306022be6c954654c0a3ffd6089188efb0aaae3aec0a938bbdc9944fa8aa575e0c518f218509e7abd475c6a7ecd34a19bd0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502303910298d3396c91be140857e9cd1d098e0bb7807c2c27dc936abc96d1b5d6efd2aa83753550f8c1f1f25a8be1b5fb202023100b8d2e6e1daff4f11f0e22a7a1b24f141d30ceeeec4b042fa26c99d4f07a0619afdac2a7d4144e76e59a08140b502fa0b0302047c435bb500673065023100c165f007ddc09717b12e86ab77bfecb9fcdf8433dcfbda8da80a97592e0af068b801cd285f98d4d59d5d21f7f3c4bcf70230616b912411f81f2a75dcee216eaf713ed30b085d6b203b500dbb1699e8824f0d7ec8c31b355e2114161d8b268850ad360302047c435bb500673065023100d52fdd44685b1333980f4c110217a7b41e95d29319db89840394922c91dbba75ec59b3e042ba4354995c0ef767e6ef3402307b72e3e985220edd6c8bd954e123a47cd886b55715feaf087e07b882ac72b9284f07f159598a1e03acbb22a9d5827db40302047c435bb50066306402303b4bb7a4c5092edaaba501781438796d4daafe65c0386c97db05da30c7d7719c9f43e9d915efae8cd0b832cd22f4364f02304292d2cd2747c7433056bef17aeb32cde12c715aee2e6782420d0cf5413b13b2bebca4c3ebce80d146c5c363e087abb00302047c435bb500683066023100d725e6e6b10f6d942812564637c770f76f0d9296076be895ee98894e82dd5205b8c2f3a7292dfff05c8fadf105f32ae5023100e8c3edd89161883bfa74269089835c7a94b12c88ad08d4e1133c49c0dc7c34e9cd39817a4c019cd83c8a87a3c726bf6f0302047c435bb50067306502301f03ecbdda35c6cda5eccaccf3f41d239a0aac7fcbd42b9e66e14b86745dad71ed472bda8ed152be22c7801774a36f4f023100a3ca4443242656269ccc3fe8ae0bc3894c3b1f2be3f349f400d3289788abf9cb7febf8979e2651bf771aa85943d951780302047c435bb500673065023100f2c62fa73d90a4ffea999ce01876120ce33f102d56d8c515d123f61b5342c6ee8cc1031764c9f11f5f9c8f7e48d0b5f8023056c8fe69263af011b0e3e9eb8464cdbfe9e3aa74f53845121b938a3faa3b5e224c9566802474c340819e7a26fe9d367a0302047c435bb500673065023100d08995678e59c958b77af03b42d60c90bc31673aa75bc83f406ee6dcb176888a0fdfb0d13a3d9f9918cb3a5b9305b94e023051a982cf2c251764fe7051962c230b73b58d48348c0461e17b1c826400ba339e28de38156b64b515cae1f1cd5b645c410302047c435bb50067306502306b261c94759df64fd58f0a8ecdfab9df8ef81e9dc4f4f521eb1727c11abb7a58ed386c8298c53c177006aa13f3c52750023100a681322dc15430e5b192a5f43fc3565e4da28cd99f55f28c969e320ab1f74720c6279ce4c1676f09dc34d8452be374800302047c435bb500673065023100c98b71efac3977da200c42097e7e1ebe8eda6b9e3cebb0a087f14297943443ad3d5bea51595c6980560fb0a0de1f2da00230343ac4d88f465842f158219409c9432e541ed20110cc71afad0ba11cf00a900629529ff8929fd1e8614860b3752c9b380302047c435bb50067306502310083625d3f9d00032e813837ecc310ccd4944e1fa1f69ac8a63cbf8e6cf2c5bb99db289da5cae55f4228e69a9d9d12aed0023025590b11a0f599d38e464722030b665f75c00bc900c24fb5abe740bf443e724ac13905530404a1c1252e76c19c7e5c9a0302047c435bb500673065023024ac728d645d389a95c05ff4d12925421c9a6dd742030c3bedb993e6498a441a6d01b461bd12fb923b5e26ebe70701d3023100fc01073981687d8a5e45997831b9267bb504d8ccd88f3a9e260a96acd2403b22cad81320c5055e810d605062987c2e840302047c435bb5006730650231008812fd028b93db2580a3aaa9c3c71a242a754b78c244de7ccea76e22271e7db4cc6a2cdb556409b3092cc2d7badf820002302971f0d9c2f6d57209d9930fa42021291eb3677c0a0b720283ddd3079403236c7bc888ff0b723026e3bbc3dd8f33c48b0302047c435bb50066306402300250732c6b277e56b3c0a263d5f23750cf40dd488407df9a062ae709873bc35f951bddd95cda70e4227e803138534c4e023057503dea3934f7b5b3b933590f1712f41e40d89f768b512141e4f739c62d8dec5f6154dfd12ff3c2a3f4827eaf662da10302047c435bb50067306502305a84de781b49924d87beea655f6978e2ffc05d62e0dd672941bdf767289aa32409262a084fca1141a755ba5e5193739d023100eee763a0df9ad32d5fd8c84e7aa304b32e76822b3f3796281cd827d1e26c743ae13c8e9e98f9ae0536721797ca6ec8020302047c435bb50066306402305dbf802d7c95dcab8dc07198b50617beb3a794f8aa6d5d2d8375c31e6f110746387cc152f353132eb45e10de681884cc02301a4b77167e805928eee12885e392a86b997ab715bbb778cfd9de20ade93b9dda15a19fb44c56da5b5a23ff2fa381af9c0302047c435bb500673065023049f9602a7d8ee836ece123e5ed3d70d13a9eb462d401cf8ac5e8e919eb550674bf98377b152a2caf918fc43bc0a1a472023100d2f91dac21a3aca00996a6bf8bb414442e618f15e8e42e275d6588c881ecb5b33cddd962d0b7cedabd90d777823f70200302047c435bb500683066023100bb539abe6743a902816e495e48fb7fc52343c4a96455234c211b512b3d952eb0c1cc9147cc2f051784eaae4ce031d9d1023100897d1fe5b78c8e27f7bf61670c16e33105b79876bf0e9743a5fb2bfd086d457e2cdc7b64023d270ae5784af6fcfad8850302047c435bb5006730650230707b21a378a8cc4fb8831b4a28a235012c9d7b5f2c306ebed549414b10b50397f2f6542b003f92e1ab0feafbe5f9c2300231008daa172a2ab4890d4043c0576cfe9f2f5dc47b7961c3fd036c84057a8404202e9d4b5f319870b2617198a0dc87a66c4e0302047c435bb500683066023100d8aebbfd2722c11f5e041b3f04e6dff911c933f5242fc042bf4dbde1bdfcd6b88849cc15349ca8c5250f46b794699ce7023100fe63ac415e9beaf52b9aa6aa423ad32806d758f75d7153c9ac3a4e545d15a122439736db3ed62024c8a990c0fd7130f20302047c435bb500673065023100d27354241fd69787d2e020b041ebbb5ad4dccffaf2d8a22cfbcd946976f4cf47a84d9a75205e7a74b07746dcca0c7aa20230726b3d908ed3f6287037ada5f4613e24d7b9ff0523b26b91ef409f7d50b13c3d339fba44e3995a7f4a63f2eff9a193e40302047c435bb500673065023006dc5d0ae9b98d90605d6aa1d598df575fd89c01899062c9c73919d30de9e8aa128936cdc3ecf5ebc42bc743b099318f023100ea60ad89abad3dab67fe75e1dbc3cb6d1232591878a5d607a9f95c7debb2530287b726cdad1a7eb4f40b217cffab86590302047c435bb500683066023100dbe064ba4967635d30e3647c9d5eedfaadee06fda798b9e91ec35cebeb996c778896e24d41bbd49dbbdb0a3918f22dcc02310091a3c1449f64662c26bb568cd42fea766f5387e64759134b621cb6a7b0c04176eb286a37ee67b07c86c3baa03e31495f0302047c435bb500673065023100c84892242b36c4c7597e74e4f53b30d982e258bcc537cee5f3fa65a24bfb726d341ca24903946003d6349db7259f2f9f023052054de3afb14547b86f8a8392cf2dc43ac1ec1b79f15a08baad1ec01f26b0d1e493009cb1c9cfc5509fe2be4842705b0302047c435bb50067306502310086d9b29169be8ead309e624986db4a2cd80a07e6eba6d9d03b15062fed9e236d2c1b08d96d2461226de52b1558c7a62f0230433b99ca71e7a9cc5f306359e906b2f66409875afbe4a0f2ce32eea4746fb26bafac2a6cedc3c854b6bb1a5521daa6790302047c435bb500673065023100c6a48d989f60dcb0157686256e83625b9731c57ded6126d821d8acedb771ce1b8ee074e74c8b76a0a7591613e4cfec0f023038e91afbbce33f0d78c229b7878aa08ff68ebfbb64aae7f1f3dea0e4d4ada533275cc4aec07a94241d88687ebe94b65a0302047c435bb500683066023100f0d38887ac21d0f64c42b11219ee14f03cefea1fe663ac835664e6447ed0b81c86ab99402014ae1050fecf0f3acc2b86023100d6263b39604bf23f2bad5824d754c8dce407f542de612eae1b12e90109f5697d836f9a567c000de330a58b27907d5d230302047c435bb500683066023100c702389fdb9ca68da22b1710704f9107a778e615ec5676da38bcc6c1000a972d15c9feb883ab99195267f33b414cb2270231008992c7cdde6c9d615df6c6b07ed80b0d648fff538d2faf828b7a7c2de3c2dbfe224ab91b86f116a1efd5a796487312e80302047c435bb500663064023071cbdf82a06214ef131c9dcebdde78e8f92bc1ca9a3d0eed93ab2eada28c6276098e7a3a3ea3575811aea3d4f87d6a2b02300de80bf2770ec1eda8092119a2d37e5856192ed28943707995cade62ad08278bafe40fef5b109cd6e800da6b190d6dc00302047c435bb500673065023100890efa3f95ff19bc9b06bd304b0c157992442771d7a61573f23cc21862b28cb8259eefaf82eab77b99e69c36e7b9f2e502306af2d788cae912b88ebd5e70becee30bf01a724602d028475e7f879db0767b79dc7c18775be8a80e30e2e720433bf6a80302047c435bb50066306402304905a8e459f082052fe3f6f0486fc831d3e11a68e6a8b83df24c8ea00571394da8cc15433863ad9a90241be8c5a5f541023035396146f79c39425cbf28dba1cc076ca78d02c768b89d0ecfd959b28c7d22e3d6c680b215135650aa3684c96d7480e40302047c435bb500683066023100b809bcc3f0ffddb946c29f8253e636d468c92816525712c2a60e5d5ec186af164df12db45b8dbc3669a1984ce4d5bf3d0231008bd626c79591410fd844190c682ec96da1a3ffe168a72b5f5295a423b704a2764135b35d37ea39e80f4c955ff4fc83ef0302047c435bb50066306402303a9610ab0da4cf0b3154d6cfaab0cf085faede5542e5505d41e5ce7e6b9681bb543663a0373921d33aa595a2d99dda2b02300fd5bfe2e3965dfc9875034cbd41ca3aa9f4b5b0a2dd5ce455bdba769b603eefbc2ea802a75020acf95c84ad17a115d20302047c435bb50068306602310084e63f504fe1714a254f7ece761509aca28e5e3849c129691e0a55915488cc3c08477dda80a5184a660aa8593258b764023100c051a59d8cecec4002ba5ba7f06f01f1cc88db075d3f876d5e18698ff4105e3173e16ef88f95c0f76c949857abd1029b0302047c435bb500673065023100d6d972eaa62417c84920f325fb50f8ceb1dcbbc6d5eaba473139fa38e00573140cd38d25bc9f797a0bd909d37597e1bf02302b57117a5c5e6731bf5e471801b82b39765c0fc5c9fb32ee4e4672bee5c4fbbfee60922a8418d8f5e2db32c61dc618cf0302047c435bb500673065023100b50c168a4cc42635745bd87ae24b5d5d110ba0836c0f415781730a580c35574a69147b9757047b94dd554c3b611e3dea02307489a1b1895b5ff056c3c603330cd814c26c943da4b56ed1afa4b9d17e04a336283ddae55e0e8f1bcdf32c7cc166feae0302047c435bb50067306502304fff29d5755a4dccfea4ed359bbfc3b03b8a65d590e73dbcaa9e7462dd25d7deade1c5060483e88d7fa98ddece39d32c0231009df9f564273d90d6000ad6d55d08cddd1549c0ba64571fda5273dfd90afe93cbe37b44671c84f2d28f36ca2cc467c07d0302047c435bb500683066023100ffef70a9f400a035ca8528e68c35b700cb8e867696412f6897c0d14577750fe335be924508374865e69dabb5041c627c023100cb2a621702bb3d24b5adda31d38aad3b15525b5b8bbc27d5ce7eb940e1437a04b9c83afcc04d807bd5e14ee4d56156380302047c435bb500663064023013aa8007a3a6f0b051d47997929165adcff128682605e5bb8603fcabd58dcd28a2e2189bbf2dfae7b49188fdcf9c10bc02301b0ff3e74f36c710d7af23e9fa2755507fb1d19cd0ecc97192d16dd8972ea6d6e8092cbe2c36b761c1f19210bcc1668f0302047c435bb500663064023031fb7539e91ddfccc9ed3117b13305d06fe6e26313c8cd8079dc13485307c51b26140c07fed377f49185c3aea0e78034023030893107e52018d71070830da909c03cba99db7b1ac3d3c242bed61beed79ca10e4acf42c1c0e0002210c5d167dc48600302047c435bb5006730650230401e56679de5ed8e1809656f319865a29177f5020cfb1418cfe1b5341cce0067beaab38a4281b1e0c207ea6ea67fa3ba023100bb904904c1bdd023ef9bee84b4f8164af2756deb7883cf86b176127f9fa16095736a16d059d2675834a87e8f3264b83d0302047c435bb500683066023100a2d9aa74dd46ef2bd3b77818210fb0fa5ec0c8a470eb2dd5cedf3757fd451439537d2c5b0c1f292bb6fc86e0879975d9023100e67c935d7287420940873a2ba837fd9c5edf0c9ef17fa35b0df0daac73766f0fe65e8d6f9a2f5d480e1ad51824aa27f80302047c435bb5006630640230418a261897b44b4b4939de521e66f9a01879845c236b954711ab381e3440670c6a11a2f34be9737166e3083a4c1dabed02305bcd908eb174345e6b32219d75bcfb28c4166cdbc8e96bec9ef9e47bd545b691b17bf08c6b3ff582b183b015c6a882ac0302047c435bb50066306402302902a8bd4fd1c38755b6d3c8787bd8e06d2e297720bcb44754eea363ba82ae408870de1ff20e7f5c66d3a868a92be636023054fbe68b5d6d19eafd6ed9b9d7181a7fb3f7fe866805a123f5c67963f1368c1f00050fc9bc78bc4222467f6d7e4927c90302047c435bb500663064023039a2a8820ceb689086fe96d17214436f139f2dbc5e72c1e5032a56ad776599bd017ad54618499e9ef4b38004e4afc313023074daa2dd7acf9c5ada46cabbd6c956d4ccfc5e0aaff5df811a74530465078da80e6c1cccc0620e698bd0f0c4601474500302047c435bb500673065023100abe6f1305a258108083cd406ceec2a4ace81345e127be2d3d96f466b2222eb0d5ebd8ba4089e46ffad42e20cb41b678d02300dfafe9168dcd9904d6f3111f1e89795ab74ce801f0f024259f9d2a8107f365ce44cc2bea0ce1c874fcbd330ca08eb520302047c435bb500673065023004aaf1e97a9e4ec0b1a833d99c60db1b970c48c964a7294691454869bdd2208403471975eb7e1a3c7074c0935e3244d9023100b104f4e3b2b390468c1c00cd619975f4dcd82395b3e10328fe9c8732d0ac5b55ea7fa2692dfd8384167bf22bba09e0e10302047c435bb500673065023100b6148a5a2148ca8e9653e3715160953718734525c2295162cd9e706fff97c187efccd5167d7260bc984e92a08148ad4a02304bc2a8f6711cb5c2727ea510c26c1e3e6b570aae20cb6d91d274496afcf52d2d2a8e5181e4dd2c2f08ca401442618b3c0302047c435bb500673065023064a3eefafb845da887728c992fe1795a88b310090b0ea8482a0c96bb5bf09e0caecdf918b5310293eb8f1708f54442f9023100e9dd98348206ac553bd93e4b0852815d55498a06152c4cdef16e81a258dc3b01392cf986ece2e71e4aca4462e0ccee9d0302047c435bb500663064023015a698c3607e57de0f089946541a7044140bedde073fe8fba6101eec5a5f644f8effd838f2cc7749c80c7569c79d1423023049b85b683298dc308a74615e6e3cfe8160a75529f7c247004e16ac1888eb9310e3bcee760eb70a1dd12ffb72fae0d8e30302047c435bb500673065023032e591250f1deaa0d1f5ff8d5288b10c05b5525cd9855ee4cceb3168b47e63debbe77d3787b56690eaed4373740099480231008047dfee7a8fc9da635bb6450c922b6525fe7d4eae46d559b1a2eb1a0e8b408de9c48449faf3a0848e086e5f2ba748c80302047c435bb500673065023100a8606d21cec480adec7b3aff69221fabb5bb9dab416545f8940d1b49d6be3f6244cad4640b5a09e85139a7c9775e879102303979d9b412a7a9dee71f302de8111e99bfe7c8af108fb36282969ffb3cc70cf91bb51edb2a3a359e7ba1213fb59b177f0302047c435bb500663064023028ea9ea2be51d1ef94e81e67c3f29fd4b3c2620f8c4e7d5834aa18ce6e9c4f512e0bbc55b224c2b9e43948d2babca1f802301e4d4be3a8b85c781ca3ac5ad0c5eb8f2c14e1e510829f7866d4a57a78be075b7d0aab1b06ef710a2a5efdc61bb7683c0302047c435bb50066306402303c22ee97b8e6a3f24836efcdb89dd78e8c68d358d5d46cc93a15bcdfb7405b40e9749d334f4e8fb4c54cb1fc37c274e3023017dd3f952853e4a12dcd6fd222f31a12bdd599238208920dff40a7a08d6dee005f79f45a7f2b84c9e7e5e4224a4782250302047c435bb5006630640230462fb23eefc3b66733bd2edd1e98a353ac46659c4d3eb1fe8271ae804c661324a348ed34a5f7755bc3b0358253da2de2023073c936c3d7bb80f0e5a4246f7a2e8440952ca88cab723f4da593b94822c482a0a0acd1551becff2176947b31cc8bf0ea0302047c435bb500683066023100aaeb3a7fcd5e02848d1e97c3bd6b59564ebfc846c6ff4686951f766e51012b8dd9e6f47683cd4d18fde7f31117ee10a1023100bbcfc9ec685e99ed47c001b5509d86b59be7dfe5919c97caf0b32842d2b4e8c6fc8d323505b7d5b90dca15d38d6318800302047c435bb500683066023100d970aa4148324fcbc0ecdc431bf5ab42658492e887042e7bd6a1a70cfe6b5c228bc000672ad26a15c4c4abaab43395c3023100f33474592790508ac839ff399a40bf1364b9515e4a2d59635bb999e263de4207448f190ae7eee40cc127dbe4da4b4d4c0302047c435bb50067306502310099e1a95b70db351fb2f739bdf8b15d388beecbc31432bc59ee8427a09eb00a4a1223d44abff414b582a8b09e37aaeaba023065628eb81565f88289f2fb78d3a74815d0374c6f9ad6b4e6ab15124af56f9faa727ed9abce77f2cfa224b9617445f7f20302047c435bb50067306502302b1d66c670a36dcb3302b3ab86f20d038e68b87289ad9fe0620e97826f38e2ea66d6c186a1134468ea13b2b55a446be7023100d80f63bb93c6e0f5e6e9004c5f65971c844b0769e831483c72df0de1376fbef5739e2fbcb861cdc85c7e5cca7a19b17e0302047c435bb50068306602310093130b588843e6717628733980f501139b7d3127c12ca03910f207824b0b9d89c0a33b4d01bd430be61ebc78f897df71023100d234b7d4f63ce7e643a8bed5e884c81df80b0279fda07ee0bc8d2921bb2baff57d53d9a2b6517fec7e076061a4cb49490302047c435bb500673065023100f310908174c90413ad14e861f0b43df135bdfd40374785da4a70bd069c13d6494056b00df3d7f2074ca693acfddf951302301db8404319c2cf7e6c45dc54185e4ce66c3b86fe17f8d3f0eca97e76a2cff5a74d73033f8822919efae9db580d53a1e40302047c435bb500673065023003a844b4bddd1d6c937c558e565c9ea09a6cbe28818f47523f3376aafb745ccca06d1f2707fc74ccf4a1e686e25ca37d023100d4f4c98357d79282a4522a0d6876cfcb9cfa1150e92da7330efe8d93496f580ebf28b70f94c9537bc6ca22da65b9c1520302047c435bb500673065023100eaf5e61b03137a545572255a849914b630302b3dc997c2548ca6f62a5f8495a9f4aab164b8df4aa5d3e81afb8ee9faca023063ae32ffb996c1de66d79e560788e9fda13d40518ff892453da615fa8fb7ec00214617a7765d19634818547ebc18a4a80302047c435bb50067306502302d17390685c9a76540242f860ef262d36dc6605ec71cba7ca16eace828e7052a3a1fea15ceeb1b5a4e3b0a8b1cdef82c023100ad25c17e61f08e8e4a508aa5d9c56cce1385a2b9d5667f2f0f537d62626136747ab3d1a750399faf8cf3672404d2cb2f0302047c435bb500673065023100a5a2ca7c9ba44ecfd841553672a34e2d5dd4051abd160ddf6a6f28012789cd08b2588fd079818980213f7af62e66ac960230574a9d8efa507c98f6cfcdc8d20aee8656b26bd48da1522dea99a6797a90e7fc81f21c9867b4ec1cfafe1c55ea9cc2300302047c435bb5006830660231009042fd159f2e33766a791e6fc013e6b80b978c52564c676fc3a0515648580dbb33fd03d99be6ac1f8f0d94a48390221402310081c01958d94c56bc763abffb3c5a92cd1d62fcc2ac0387b78352e3d4f137269cb8adcffcfad913fb2b14d6516d6731710302047c435bb500683066023100acef81d397ba535869be4b6c16385a587cfb5eb2adf2e564a49731ef1a31bab33efaaa20b2d632cb7a91b41b78d875310231009f579c6c3ad65c2ac6d03839f12612cc25dd09cf0e915f6af4d168ad3bc8672045d608c5dd0282657eab71a1018676330302047c435bb500673065023100d746629625928cbb317bd17b51f2b0e0277bcbe3ab0e8dc6c346ee13f970fae6aeb404cedc8d9ad31ef25dafb80e668602303487e2b9ecfe3c0ac2190276d73d2a0e3d0a9a285b9c4f414de9049ab4d3130c2fb8ae5c17e909ea75d64385a10b7a020302047c435bb500683066023100913df61bbf3b851a1ca8997f1b8d485506ac36a201054d48b364ffb080587626d2b2f1b9deeae0391a6aaab4d98eba7e023100ebc3378da22607b4e393de7054f19ac2dfaf102531f179a7d4e5a09feb3fca76b11f4ed9a049f84bbf150f04d2c522820302047c435bb500673065023100e99450bda425a3ff1129981b592b7d1d3a4aa9e82567d67bbe3247b9b7c5c905dc2c899e69f08b4875a8de0dcdfaae1002304d0b0465ff03dc7dce48a8de15ecef0ba543793fdc9e2a9f3f4a9f2f305ccde11e29a6e12353a8d7ee764d57cbb14bb40302047c435bb500683066023100c02e7fe715d32b9fe7babb46f8b5efffce5214e767b61b1b4f854c7f6aed272c36db5c5e28f8e0b4f471f7eb365d839c023100ba26eb3cec34f9fec0acec00281c0ae13bb5f8af797d3ba86c467995bbc7fdd7cf3aed556566b0dea29216b1ebb7fae70302047c435bb500673065023100ea4ff67a89031a47226b94b42c18a71283c2dc29bffbf3599ff11e2a5298e2d90a2a53399ef6ee5e671d76ea0f1442cf0230521b984d30c0e84c6cdfa65e5c4ad76d9c958f0c44f77ae0fc4582bbcc0e7deb7b2e6f8cea4241510784b06988b1ab710302047c435bb500683066023100b9718ee3d7519bab024bfb6cff467c56d93d208e99792e937f7cd1b6926212e9b6107967f1e0dacc13314adefc7d56bf023100b49c8db6cf831a79dc2645bdbcbce52ebdb50a832cf8a2c47c5f25e9f2f4ebfadd9e7c903c2e3e8657805f57ad2edfbd0302047c435bb5006730650230450ff5eaf7c45508acf43a25a43a8fe0697c5074d216dbdfae592efadadaf9c1f2117c010dfdea2fb94e29ed2a62da54023100a80a8d50800a711eaacf62a75ecdf0c0884f8a964abd9efa7e30632b66a668f68774d99dabfc1bb7bfda2d1f238927150302047c435bb50067306502304663357ed169c4173cf4fa58c41fa568e9005e3be5042903e6893b7498e0398c5b93d87e5461cbe2437b2b94ae45a4b4023100a48a1b07f522b0bd89a3a53b28db68ac779e14175a11b99e4eb772e79558226a3965802724b7153018bc41afc27b55c90302047c435bb50066306402303a74e850d379720191e2af1fa196765a38cdfd929543e13bb6b9bfd9345be0ee543e09fc4e99c13add35dc987040a6bc023011fea0031f34cd96fedddf9eeee1147d3c6b557244f0b8f4998d9332eedbf2ca1d9e63249fc9f623e2b432cda05ad5420302047c435bb500673065023069646967be7d4d12729f3a7dd9c9498e60ccfa22b3d4aec478fa5280e0c4e753ec22f97b2c51d80c7dd2401a7f855a17023100f1ae390182ea95a2bc73af76bdf36ffc6a47b42fb2df9233e5504ae37f3e71d1f1d4335e743a1307a9fabe17a98781480302047c435bb500663064023013f1ed54f7766c7dd3a54cd89f352d85072c2040ee996aac4c17a87816625324f63c2a75b74d13df6566c004bd86b556023059a0ed2de4b0b81f2817917876c5f1d06b9d59be6cbf658b7cab18bdd75e2317bff04d9d11bd89d89de9565766ac08d10302047c435bb50066306402307efc805fbf39c07f7eab15bea8cc17ee593137069c29b1e3388c36bf942a6cb59cb61f7e36dd83e373ed6735155310110230500a7d6cf8a942ce75ca3a67295acd510ca5c084566476ee848d0256bf4bdf24b0b15e17b518cdd1ea6dff575e03b6ed0302047c435bb50067306502306793c4c3e8f54a1612cf789ae54a68fa88358d098da47d2601248be64ad238bfe81e4f999c4ff41b386f70a3f771b0bb0231009e07b767d05c66ec4cf273a46d9fdf95ecfca365f4e85e4a27b2bff117d5aa0aca9922570660e7b4315b09e5ea979f490302047c435bb500683066023100eb4551146b2e44ec7f94ef4bc30028bc7e11aa1050df106c8a71fab7e188c7f490ac86d865f0a3de252907bc5e7a02ae023100b6f692a2101c648f7e491bd3e48a0885178f43295a40e99bc59cfcd8feb30a7c5c20553752ca332a092195564d43d6ed0302047c435bb500673065023100eb41870b2d03eca21497755e28f57d74829b8aa56b73d5926e6fe3bb2d0d484c66f639d5c780feeb6b5a5ab84922050502304380e6dbec64d677ad468187190f216b7d46373e83b0e01271bb26ab608c8e32d157c5054508c128b97c0537b35fa6790302047c435bb500683066023100bdaee43f907f032d07fa032cb11def990d2985ffcf286994e3e3f5f39f5ee42739d642d612f2816f90c144730385de5d023100ce3d016f8271285c2ef865c0bae7f3be3daf5896883f40cd9f7d684a107f54ca7c72da33cb613b02fba25d0b89085a610302047c435bb500673065023018a7bbfd1d8f3a88c6b63e2c410202cd04b1c8da7fdff78c784d64bd44c599396b236d74c06ec4ad9a02700e9123585b023100e972b7f5da6a4e32790be59b9847eec0cc8a5d09aa60bdeea8a92283b829f1fba854b42c8f32916feab46449477bb5770302047c435bb500683066023100cfcf6fe39cdfd6230bd9aa423644f3710fcf3edc99e475bf431c4e04bcca64b4830adfff6112ebe2568fefbcbeffed94023100e42b2563197bb4ce70ac14ab3de49b88b41f33c06b4f0e4767f4ed26fd9f618f3f83a06ed25b3a711a68829c10d2f0ef0302047c435bb5006630640230034efa76aa62f1a8d1740b4485926be067ee1af38c0e12a4506848f59035ead615b62c1daa0bcdf0d1d9ceac598a52fa0230393bdc3bf8e7811f2727616daa0546cf0f6bdc38aa0920b601d06abcb35773ad991d7be1d1c1cca79df1750c135ff4800302047c435bb500673065023006b4ca924e2bc9583c35336b9fbf4469d6f866111d58ee5b6450a031600b0944aab70714906afc92b2a80121a1544ebb023100f945a949f4fb5622a75c521d7727b3443bd5b0191e2d880ba51e6205d1f4cb31b198e752222b2d75c237bb97f2ec27580302047c435bb50067306502304960d5456c8e917d2088d52de7cb524d0c22bb37c3b88f0c25b6a646280a53271ab572f52f5b5429618aa87ae75b3f0c023100d3153c539745625a29dc04d68790312c229d83110abbd4f9ea669a93617e8aa88957a55d9302ead76dc4b8e5b907391c0302047c435bb50067306502310092f8cac90d22a01e56c85d3b56ba063bfa7b43ccd991e933c0ab31f4ea7ab83eab685b445cb79410427d68007ab2c5ad0230137cd8978566ca541cf36e77ed8049b76a925302651f2a25e010c18baa6fa80fae642e9e81578e0a8f15538f591739300302047c435bb5006830660231008fab6c2a9fa1607c90a3f365b2093f67b630d9c38f5e7d4ba8c579b6286da0aafc84c1a313b5e911b4b9193cfc87694e023100fedb960be2660c65b37644b1b9a277bbaa9f93edda9443c7f72962f189c771dbd6a52032e0a9eed4790fa6571f890a050302047c435bb50066306402303ca6952e4fd3630b2abe7d116e99d0ba7807935a8d22a693396ce4336c077e6335d29674f92a1999bde81e0df9033e0802304844fb4cbbd38aac2b8630f74fd2f5532f0603d626fd0d00e9f959133f73f8bde1168066080ded5bb7259c09f7eb04330302047c435bb5006630640230163ec78f0b52db0fdd2165c9047fd830c753500691cc70941f8d713866dc374f12510db67d8f54cd2dfbbb1e59103c7d023051d0ddd300606f4a65b4186b204968a5b27dfc26e7d217bca5355c9896e37ed7f9865cea8a95d5aa1d9e5cd024401a100302047c435bb500683066023100a4505c96be70f786e316022570ae0cf2a6c14d9125288f87140360001eabe07fb195bcb621d95ca1588e7aa727351c4d0231008674edd99fd41d6a79a8a93900fd276a71b38249dad5e8f2f0b4312cffc6b68272138a04b04d4fc9ff117072a53471db0302047c435bb500673065023017a0b0d6086cc6809d57fddb4fc144606181e874729f26f5d96b33cf5a82e8b6caea3d3969b620d3a6f487436f76f984023100df0a4801409dc8646f58aa86d18cfbc1cbfeaaf1ef419a6c37e9ccf75c54d1da1a59ec7805d64c125475f127052ff2790302047c435bb500683066023100e6a8d4807a954fbc76809fcfe754693a55cdb394abe0c29747f7704227fe3d7e64c3fb8ac031fb00f309454cf8484e7a023100d9bb044774da0667bfcb64b9ad504805df625085df8e4bb1b192ab910f8a1b2e43f5bbe14b07601a3bbe1bd8e296da780302047c435bb5006630640230227083860fd570d6144ec7c63194879d6175aad4b7a2a7718847b6bdce91dadf98d8e181a25e57d540c4cba22914b2fe0230554aa34caf99ad9802ffd9c90244e38d71fb9c896def907e2fd5ca9d7d5b27d87337a7239135ba14aeb58b3e8155e28b0302047c435bb50067306502302778b91805c2c11bd2c402adf92d680e7bfb2ed98d0fa6a979542000822b8b75bc89afce45d0921a7f17288f15cb1f1b023100b533356e7c938094f6a70edc4411bab6632811ca12b52d00e9d48af0f1d1f90d82198c1f24dfdade07aa099e90995ff70302047c435bb500673065023100fc5f490af29e7c975c6f6ed6991158baa5748d9500436d529a7d5fac6a7f139d9cb6a6841a6acfe60214dde99220be3402306d26d24861dc66ddeab93b26d1984ebc3bfbc7c7383357e07c49c8bc06b970446984c83bf7cf1a0398851c077b9988640302047c435bb500683066023100dadcea68426190907ce931912d01e008b96c554f3e92d4eee4159c5562e814fc932910c4d2e0d68fa2f573c8c1916154023100ad54881672bf88f3460901d6aa0ac4d67d055f4ceac6c6c539b8e7bc45999f6085aea150594895e359ff906c99f9f1130302047c435bb5006830660231009c7e775ca5a6ea5ea71c57fb4c8d5f5caa28d826eef8156784e0d1653b89c407a6b51646a9a495a2ac37cc81baead03f023100d92bbaa61b3160fdf1605fddc2a0796cc5108a76ef79ef8303f5b6a96f0464b1fdeef866a83834186d50a2f2f072149d0302047c435bb500673065023100aaa05d802e0a0112843ad5cec9864f951e35fb6432b6ea67da78e10f1d5e47d393ba43361d9db163dddcf36c3e546dfa02305ea7f026796f23001131334e5d61f64d9ce2f4d921a46a887cb704333dd9d9dd61cb915ce7a26484d84cc28a0eb10a790302047c435bb500673065023100f958d6f53568a1391e95a1fcfaf86b3e4eed6f14528ffaa968e63716ff9bafa3105bb5ecc681ed223a2d63748e346af802305a52c5859426fb65ae64abc5fbda9b2e96b79ed584532d763e4fab39cb303042d626f595cfd5ef7f8497fcac189b19ad0302047c435bb500683066023100e5a3e05b4264c68c5eb40fd9df465629d797ea7da871fe2a8a2e78e13f25c274f8399a7b5b38fd6090b38fcabf00cb2702310087adb7d787ce4cc1f932ec622a36c9c93ab0780781f055204002b0d44fd822ffe0f799c9a3ccf10bf034b35c733d0fbc0302047c435bb50066306402301131d3473dc993dc0d3d1b713e9597badb6ec80a8239c43d357e07ea6d771b71f658d0b4994f9b8121fa067f5e01ed5b02301a017a93e5f45d63f46e7e5714293b7a1ed1ae8d695376ea7df525ab1ce6f2d80c6ddfe074644b43ee9f179d415ec0510302047c435bb5006830660231008faa6b7d2fde10be051541e27dee932770502719bd304d00de8ec474a70342725c8aaf6e02a7bb9f1c69e4989ea7ea9d023100a987559db7430cddb0c7fd9f632aeb6941fb9c60b8a3e36f5ffc1cb3054f2d391cc6eba37b8657aa3bbd580a772ec7fc0302047c435bb50066306402304e843a90409092a51076b69a28b911fbfa897239cd2ea262d084cfbcc3afd63f3fab1976d0b97bc4b47078451b8ff5fb02302fbbd7e3dfa349f4d5b986299aeab4256c45dffbf86ace702eafcf1714c0669b2191fb10887be7ce2a7692582c0689a00302047c435bb500663064023005fc71cf19f947ef58d0d2e90dbc97f3c83f2219eed46eb7e73c5f6305fbe99ff2292986b90ef676324f4ee2baaaf0d502306e61cba1ae86df89dcd3de5406f280e7fced08f978caf4939eaae2793c63896dea0262d2412988d1cba9e3f5af9ff3d40302047c435bb500683066023100ccf68c5a13e5bf4b112fd5be611bceb3e711f7fa90b3551138ab36d7962a6d565c42b9419c03c39661a6a8ed4bbd14ad023100d82b162af386a1537a87f689df5c70d1136e073b2e4b20fa9295274366f51be6105cf04d89a1e98e9ccd794a5470e4890302047c435bb500673065023030d60beecbc2558d01a8e6c9f58018f66d78a09c18fb022b7afb45b1ce487e7717e55b6ab4707947dd1d912e413fe40a023100dcbef4268bc11b2ee2d4e9bd19c268dba1519b5eb7585563dfbb09452626bf3ca320c6433cf3e609ec6ee12ed3a719910302047c435bb50066306402301fd68810d116dda33a2af2c6b3b1c514163195dd085212af82631be32c976884793c14f016b56dde76c9b399f170a4640230290e99382ca8b2725d3452e0bf8e5489a4366cebafe03550e4588e8696428e1dacbfd153f2b7f336701415abfb6c9b690302047c435bb50067306502300b181e7d7ecc227314a1d57fa920963c8a63f638ba75add3797c8d332652b3ba8356a35eb58f381b39b68a90ef00a57d0231009c0835b7890bd6d108da1de4dd98fa1dcb4bf4464dcbdb00118bf117661367a77a4e0c7ecb552f08d5917a1bbb2428b50302047c435bb500683066023100c50ffc5b38559bb7622d56b6984c69e9293c6370bdf4eeafa96cb50e193d46540d47f88aaa30e6972d6b3a72701345900231009443d97b872c800b3d249ddf901898879fbe8c8cefd1189faea9e6f812a179d49403e8d02eb3c0815b950b0de9e805eb0302047c435bb500673065023100ec2ddb5df74bc44873d894ffac83de7c68058286943e8578a680a5cdc8d0e80b2c5783b4a8f78cf15c763f5ee390b53002305bf50cc4c515c00c845c5486681c5927b3d38ea913c7326d0600b84632caaa1210f08fdb9852907f1d799e822282cf560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079d274a3d577ac93ac4102bf587f202e557fc3ad580ee94c4d7af13edc7682b3b21ae3750fd05c9e72d7020a4ea895d602305540a0800afacd3649e8b5947ecc9db7e15ad6507a3691f75e954faed8633f8e7b7b272f797c1f21eaa7b9ddab9de5a00302047c435bb5006630640230714a8d6c55be7e2cbe8865e3de38e79c229aa2596c9d188711a077999a4be31ed598c8a3c17a3c6aaffaab431fdec4cd02305dbae89e0b897020c13508b0b3ca8a4441332f2ca461947c6ce2b8be52f5c7ac07d0094aa0d779570ec0f4f8f52a94db0302047c435bb500673065023100adf2d4f52ec5534e83be2ba819378779e04fdad8109d8e2f62c88737f09bc4fd8fcf0c2a01cce178dd13e5527923b58e02304f2122b89e035d92ff1d2affbd83d6a7e90da6b4b7226adc42f147c79d00e0c4849f6464ce7871bc7a506f5694b65b690302047c435bb5006730650231009742e2379d6ac298ab74664f7bba4c34ffe0b4c7307677f786d5061ed846b4ce8bbebe5fd5f1c4330eb38d6a18150190023068717a290fcfa078d135602aba7918c9ded5d350a1adcf0c725c6dcd704e2ccdb0550be0e3ea1f5bdc5ef002366f96e80302047c435bb5006630640230388d4c79959ebcc4ba68d585c54b718406ec8abed1ecbe66f665ee58a7632ee17d12bad3057129844af1226a5a2787ce02301ae8e4b14c2540b88be75d39fce33585be91acebd42bf73ea71b311823983e1837754f2f8b3583a034f91b5e5ba158b50302047c435bb5006730650231008eb4dd95a761fc978499c40d61d4b4e21ca5a61110f70fe38724b06026753aa22364c4680aa80c614733e26a11b9de0f02305114d9ece56fb2020ff7f0be7f435b36986c42424792cd42d7f62f41daf45683ffa99948068a5bccd7a94e1b0193cec10302047c435bb500683066023100965e8dad56e5c1b602e77cffd53fadb7523b86c90672ad3b6e08619892ff9ce53e0ed13d2c22c73b697ce8bc40142753023100b06f16ae9f2712df986ee33b7220552e9c81732d511f484515381bcc12ec474181ff7f5d0216368ed1c286c3728365030302047c435bb5006730650230283ee8843cc330304095f08fa96495d10d21045cc4fc7d0984f37a6db24d605ea1a6eb019aa2ab97a112d0b4daf7522e023100a4b39fd7a83e987400883de71fd33fad71b0b41c3585434130616b89fbe69a52a4e2d127b5847a69bb3572eef5a4be860302047c435bb500673065023056c9bf50c3d9393df6ac49cc5c56aa4f122c77828b0072e8da4cba8a4984bb202e7875c03a40c92ab35501a7740be7f7023100eef43d67c4ff38de8f89cefb61bb4eed5a6a054c7c278f12fcad8f8087b82e12de7d8889227b1ffa0e00104fa23465360302047c435bb50067306502301d131770923afec7e70c33b733123aa40a6939786a8fe56a361b4f2038c5884736b829f2302377e719adfcedc7cbaac4023100ac78c9c0bca792a7787ac0cbd743cb94cdfc41c369a40dbc1c33210f7bd3c34f007d6139679f025797e112e70b5da1cc0302047c435bb50067306502305c38d35e6ee316c188131e531d737e90a19f83c094114d34e0d71cddfce0763ba39a037ea2f3351588908a83d4c4058b023100e5bc1077a57054f81a14f0af23387ca7eee90799d29a016433f1d3398dbee60ec2d4d15c1dcf559c4ef3e524bb053c420302047c435bb500673065023028d958f7513e1ee07ab44be14ee6e1edb920e513dd232584e54f519584d8c74bb77f77afc5ddef5e81ae728889b02cc5023100abb42270cf09b719f55b5aa484b27f436b0c4f127a35cce1cca74b0269beaf6ee717faa68e3b872361a9a46516b887c10302047c435bb50067306502305d11650646890266f2bb1ddef071f323bf5be50cdf2e2674710c088bc9619527095797e17b34eb8147f8284fc659e5a8023100cd920c76ee0c2b0eef65528fb99a847f60cd70481fabdfc9e20da265d31136f0bc2ea7f89b42664b7ddace9bd962d0ce0302047c435bb5006630640230609cef5ca63b79d0962e573b75c4a1fd59c52bbd6f454a0005b902574a332f9812720b256fa75a04140006f9d75d60d6023061130ff02c9f553159abf0a8afeca4aab5b69eec097e348204f2668b1e32ddde4981c670462ab78826373b15fcbf79810302047c435bb50066306402303d61df8420c366405860e8eea5d2ac4d891ceb8f4ab0e43edcde354a7e2f3e8f423b8563bc3ea63e179a56e09097942602306b9a8309fc88a7ecbb4ae0846526c674db70eccd30bd2db17cf0ef40fe8060b0928c857890ba17a3ceb46d44bb2577b50302047c435bb500673065023100826fe0f9aa0fc5bb8137b95e9226304ae3b9d4fe3484e9164b50c95d50f500c464d7e018864ab3a4706a1447849d5e9f0230373060ed73a14e5262b4a43ee1c68818b67daeaf6e90ea7f020477575da6848d2cc945d6d3b870c9ce27ad4a5f4bc3790302047c435bb50066306402305ed305ddabc2e6d66b8500cd974b0a0fec5ff34e465540313379e8557d270c21e5f43cf989253cd3c26bb2be817eb97a023052b2be0172ae2a59ddbaad527b278f846d814b4a466c68c34a4defb1ee8924b95701f52f18cdc1b46869c3ee514c2f910302047c435bb50067306502302912da30146420e8c16195e1f2fdb821ab506e6de5b60cfda1dc5b1e9bbe57199868d5b7a1bc7e589d3db9db3a0f08b9023100ce171c64afadec51207e595103ba58efe07fc2ab918edc234707db66056dcd09dc2fbc9722f378f79d594fb26ce71bc60302047c435bb500683066023100c95ff058c8e80f3509598f607ccbe304fecb8b0ddbea66279040edd705ffd6fa75a7fbcf89f3283b3b172b69915afbf2023100d599d2ff2744885c4314d89b16b5110f8c6607aa74a7d89fcae98b43ddc7fcf292cc76380d5ea2b51fe746e42e81dae20302047c435bb500683066023100d41d5f421be7e932b477c1dc754aad03c6829b6c964e776298f5f4ac43a1ec7d73069530cc71ede26083085a7b1a96da023100e229417d0038b3787c5e44fca7d4e35606660b8be8ba9d5e132dabd03594ef0df9b6c7521e413034996aa205e5ad82f20302047c435bb500663064023013c867abc1dfa4bdfc121b7c66133dbfb48618da63d2cd230df7ed2654f716321ba06819e33568a03ea3d27a89b3ede102307c60d5acc89fb4da9366b4236e6c11e2b977524ba0361148ec690dc636f98d2eea97a4e2026c9b26f82f43de2636d17f0302047c435bb500673065023061ae412537b98faa006d08080bbded60833d357802347418a26fab5a93993a86c9378f0b4fed4d53e31c56ee07430e96023100e9f92e63e007943a81ecdc7aa0032a42f59991a809338fcaa8bf6719c870c520d62dc5dc4d848ed05d02191ba97c3cce0302047c435bb500673065023100c534af159786a81f544f27f687a166c9f95a4fc1e0b3e168f1e529725fea6208f545a3d6a969120df6b16bacac28d25e02305ce806660a0a0c7f447a85830ba62c67237bcc7a35b060ef4ea158902c5110cc1ba025e5ce8e1e2f919f62622e4b63090302047c435bb50067306502304f7d4aaa581818fcee0129d489756639f74313c722fcd32be8002fc9d6cda726f4632e8e6b8147cbfe1aeca13ba17add02310096430aa2d52e8e4f3a96235e7aed3a1b4ae43ca705edc7d0c4c684e7f94fefaedbe9fd6bde5e45bc7155befee48831830302047c435bb500683066023100e4096b76cc09ae734268fba6ed7220633cd1f5ffef58d66d0ef6333cb2d62acce4214d2171590f06ed62f48faeb729a9023100a3838e48556a65c9c86f807601135490e2ed9594b3ff17f7f1e3b71b0e829be09dbe8b41b1c967c31518bab8fef295450302047c435bb500673065023100f8c7686ce63344dc723f7a5bdab931f24ed5edc33af16a6972150ec5f43d5035733cfc5bd2d62c118aa4a9f8e9f06e6c023018a10762c28f48e35b7ba722e7e9e39f72ef5a2a6fad874783c3d2ea776874239a92dd7e50bfdfd5e0f25acfdbfeee3a0302047c435bb50068306602310088139c187afa5c25558821105ca33e68d94e29f90eb0a3f0c83684c0c1efafb468bc4b580c651bcb733fc07a8f77e28b023100924debf9bf56a45d572bff8a3942914e3fe00b39f7fdc42c16c514a646bac19a91ead5b882c2a397dcd75c904283dbf90302047c435bb500683066023100fae213496c61c2fded3e9516a89dd8838247a3795c22ce811c9385e02593a377733c01335bc69cc2586d917e82c7bdb2023100c6bca2a7d00529dbadb639b7d004b7d2ded4230473c319ac161453a9b08a66673407057346cbe99ce6503e41a73064500302047c435bb5006730650230765b2ae0de4ae5c77291f1936b75a9228352f98095dde073a3c4f4375279a045067f59d8fb798ff30f4a4a2ad7855b8d023100f2cfcd1149baf32100d7071dda4180be695cd0b625f54174a7747f4abdf8697f125ee702e7a932c919ca187e8b30b5da0302047c435bb500683066023100992fa9dffb4ba2e0a63d8fb539a7b0a9f6a3b9c0a5969f8cbefab63cdd02df28cef7ca0f69211d695959768a1ed13701023100ecc921cbed618f94a9e73b5aeb9ce444fe122b450ad00eac07a0a8cb190220ca9025ff2bc575acf69f1bd139b70b62470302047c435bb500663064023033bc9247059437b0c1175ae1d8c6e8900f6c4894cb0394f1d6221cab3e32a72f7de99a3ffb4eb11e5dbf8532d3dc6c9402304dede2ef19570fae23cc1f870460b3a84cb64031f692a0690ba6160b797050db7e4262aecacb681c313b138d38c440dc0302047c435bb50066306402300b9ebd40358464aa3039d1257414e71231785cc4ce0402064b0cadca59aaf97c3ca2134b92aeef7624a7a356f1d48ce30230594b42d8436787385307292ffce21910bb274581158b69a35df0c2d71f4046c99c2b309549e52cdfc6e6e76fe9dc05940302047c435bb500673065023100964eb025f2ac5e462673c76f79edee16fd6e84a61a08030c62598af36f9c2433c3a65712b5111260eaa234fcf79bf3b102307a0d3a8f51ddb1da5f200ef3ebd49394b4d75b54d81e836b604ff99170df2d52f23f5b36dd32213c2fbd340773312d690302047c435bb500683066023100e4d595b4122d734f9e3e3f908570946ebf7e5ec658a39806f7ba27c84d9e23bfdbde329eaf291989596d94082c850bbe023100ffa72119d9428ca8813772b4a7efe1b588e582cf5d9562660f0af14ec04dc9ab9704e609c0fbc0899d27dff7993a3f1a0302047c435bb500673065023033568587079d7da3db2c590f8cc6907dfe15f95c4a89a35642852a2dc46e3f46462f494b259848f5ad37240eb3092e2d023100a24fd38da94763efa109add9f223cdcd3e19ff9f4c60cdb2c0817291658c007d5aeeecc5324f0d62ea48889bf0bcfe4b0302047c435bb50067306502304cf2002f9462789bdb07f4748b7e27b3b9721d3f1ccb150fdf8863aa73bd06b94ceda7fbae0ebadf39036a5d2da3a9ed023100f7b8436c335c5b810116448b271535854b3896a5b62d5bb2ae616cd496f8517b8007a0318d293de26a06bfaa5947dc700302047c435bb500673065023064923bdddd780f3ae4fb7e1113f6689cd5923d97f3b5314975a8ed564c5f53560e51c43fbc46705c2e8c32282d77d7650231008d0348c36e9888b2cb75cab99e4f14034cf84e54bd0a786bce69b960d13ff059dfb2b85cfea7829395226453a09fa05c0302047c435bb500683066023100f7948edb2001aff75b42a43a498459765c1c736b48b38fa20a567404950f16099145bc2466ea99bf2f034b07cd61c9f9023100e9b0dfc4f1ee87d44d46d9c5ccb3d04995beba5bbc6f5b8253f05f367c4646aa4774e9218b753d689b39a8a16f68edb70302047c435bb5006830660231008ea26c1366bcc032eb3e02121787551f6aaf3e840eb9c146b3859f34b895627d862a21c95be721e7809324a6e3cb6501023100f87ad5493a14cefd9937bd2f57957185949ca1ca053715fd246cffcf660749470e91e372650f724dbf3e06de1dac72f90302047c435bb50067306502306b95e6b9e6abc3c7eb270280dfc356839ce8e22990e54ff465bcd1823e43c0af1574ddd57444514e754fe1eb5ff06eb9023100970e5090ad66df30b8ca1ef725d7333bc7529bc27ea9077ebef2710c08de073b5d8a656a837b35c20810765cbcc82ca10302047c435bb5006730650230538c6df5cdde61ce57a367f2643b10becf5bc474f63726e9a06b3eeeb030a8cec4730286bbc6728beb050564344b2cf3023100c88e88a052f58e67bf8f3d3e1445520f98442e392a47aceb45890711b11f301061dc47ef4572c10bbf95b065232251510302047c435bb5006630640230239b7e065d5436704e855964c4038bb5eb046610cede8567908094b31ad5c007db8411bbb3bb20df1cdb58d127f4efd1023012686f69c0867558c2b61efb786f175a325baafa78c5d4aa6eec1082ae4fbf53e8e88c6b1851558d173548f561b2451c0302047c435bb50066306402301df2a4762b58f2ff5842f54be2fd93ee7f90b3366e825259ba45040ccf917d1b7b14aa670a942ce3193a2f99f66c530b02307f97eaec4863349805c98da3862c02b2360ec813cf6d9ede7939a91242c2a522abdce5845e20019e8460b858aaa3f2720302047c435bb50066306402303a615a04b365047e2efcd8bb9f3a1eb5314a45fb157cdf5e23bf9bf898c87406daa526d383ac84372ee22e31ec99684802304db7941ce160c7382e7ac2b8a3220e0e221f724a55e35c5339e9693804265e693a8c42c81ca2de6969e2fb257eaf02490302047c435bb500673065023100e77af6410e1a6bf21d145f34ee25ac26afcdc059a7f832ba8388632672baee269e6392c853b611dfc27d8402535902470230290e679c21d1f377cf8346d401a3a67225d892ee309ae77927404a9c9cc64a313afd6f5f94c0791ec17dfc7fce6c0e620302047c435bb500673065023100dd60b1ec8f74e9f3e50e34be290201f36896b0312a962c71a2b8ac149c3b2eb56c44125d91a18d3ff81d89ed262ef2920230494de111bf77bc52cb44d47751b90c73732028962c4d334296521d84ac6dcb833e9f64b634c223ac2900e3d42daceed30302047c435bb50067306502303dc0638f59d58b0a9f60e081571528a04f05f0a695e6af0455d0408faf34f94cca619b292733c638f9e83dbe684d4d6f023100d3d52ab38566b3d2ab4306b8de569f8cbd67414b40068105488513564631697e74899d49200571e073e362dc9b19010e0302047c435bb50066306402307b270f6a60c6d5985bdc2fe24ea6e94e32087fea86786c84d5aaac202cbb2730c05bfe8eee5b9411ee720fa5f54fb41002301a736b4afb037c775fae248a9b5c932dbef85b171e38e7651b6d7d86dd522bcd36c94ca37dbed20ea9756a95d76ab3c40302047c435bb500673065023100ade7f2dd0d1260d810a2f3977ec4d45253936907cd3c2e29df07ab89e87f3ca02705ed498ead864e41e11ba9dbc9de14023077ee0019e91c661cc23ec57d667990b7eb8d9bae3709682b58b594f9282a9710dc2b303cc37ca4592c0f7a1d332798ca0302047c435bb500683066023100dda925c5aa590934471d9b124d7a724ffd8e802a0d91c29f360a61f8a2ae685b3fd8650dca035ddc8a8a3e20522ca7eb023100f2b449c4f2c4cace89f5440d2c1f2255099c64dbb775fc3546ab65b717415681b8c6f02d473e3d80ad84f40cd56f3ab40302047c435bb500683066023100922a698c7f24f4ef9c9e1571fb73c133867daa5573fd51dffae18fce06cb124f37af04f310ee87574afe4bd970673b23023100e5b7a6a0a91c70b1a99892dc8fc4438de92246805926c4964bee50c9a6ea8b569fd65de98cf3b299f37e3dedb70fe6ed0302047c435bb50067306502302a08c4997d41f74742298bb555e24705287bf4a448f3cc475e26d8837933184d77bb01f7b0e196d5f47e702eb8f9335e023100f47592e4af4805df4da4ce3fed12b9cdd7e825b1bf50ef8b298e8466a397769ecf9ce4e3b7de032170e309af602197d40302047c435bb50067306502304a4f6ea35c017aaa4e708108b4f64e15d708bbef168237c097dd51aa674d838fbbec16fa2104a64a018339ed41b2434e0231008d564c7bf868a8a6b810b257d1e3e202345c862be0ec93c1de3de46d83def960fbd6b1bef4a50a658b33ce86026853ea0302047c435bb500673065023100942ef3c6268feeb2c5fd6662a608350c148a87ed57c1f16db3b6c2275d711838277a4e8f608f248dd023335c847e85a10230263b11eb96bf20167fbf28bb387c37cc60eb3bdd58c8685cbcba52acf9e0e09145c2f7afcd9e1521786cfb8ed853ba0c0302047c435bb500673065023100b699c6fc21424751b48ed7e87a0c760d83694054a8127a387a5ea79a6c4a9f9a67fd74fcf779d45e8965df58ab1af67902306888e871a922af07d3368dbf43b2a69b54debc3d4d5cdfc92a6c87c65dab4db3b4b6c283099020e28060efdac1d028b10302047c435bb50067306502306d66d88a924b8b64669c5a33b4aa760fc258808b17f29b7976e363b05bd207b62f4563e2544ad86c1e1abab51a9fda4302310083c2c1d19957b7d34d628fd8f3cdb8cff41b372c5ca24dc4cdcad6aff93872f5abdabf670533e8c634cf8ae698a5f8eb0302047c435bb50066306402306a11306d1ec3596682b4a5ab6ec2fc387cb643e73ab09cdf1253d61eb5305af02324c902e30ed7bc3d8e0971ca693a880230129326c6288de9c25d51ee6677af9783444b711ea65738078f38d2b64d18095a0e4a8aad8f2a185bb73c5388bbbd27d70302047c435bb500673065023100b9a1c7de4db76490e59148195187d6798c1190ab47fe7e834778ca5653425a0f3a97533d5ab9a1112d20bf76a018c90602304934b2b048389745b0988f590eb56ba92565451492a9e652d8886f8eafa241135f0e06c902d3cac38ad85d71ce113c060302047c435bb5006830660231008cadb3f5da03497e36de2de73c642e9299d763fa84da74560f9c8287081609945ac1d95258cc38badf7f58cd9ecda2090231008e8254bb7ac8bc49287c595d4c9bffa9cc3e584ca1783e1aca142a6783f101bd8599325e90181f5c68b850cdfd388ec80302047c435bb500683066023100b9367330a6b88d3c27539845156e5313872af1967c73ecaca465ea2b4a245b50110841e7a8a3864613e174f6baf795c1023100b172ca0a7177a858a23e95dbfc848bc450ddad4b2507043444edac0bedba250121934b94e09d2376cfe88f9037005b630302047c435bb50066306402300213b9cc5ab7f8b8509878be5f7f05a822caf09b229a9e28e24838c535c0ba2122e0d1ea49947d852a76edd17dd995fa02305a763b8e7f93b59dee79381731e2d96df6fae8aa8826abedf23ffc5f1849ed1034f183e268aabf0181f7bfad9408be020302047c435bb500683066023100991fa57dd4dea6afcbacc6e53733e021f6e3e43dc920178e3295525d472d2f1f99ef733b93574a0504b1e8eddb2da1ee023100bb07e6879b64d598e8a525e0a730be15811d6cbb436be42fec63dbe30fbb2a275272eb587ef4a5eea869032cad0cfddc0302047c435bb500673065023100897d8b4dbe302b7787dd7004ed445b46c0811451c519629029d8cc1a0ca41d0e6173d048dd2fcd699153a1b7101df29d02306d893c551da6ca5264781fae525a72113474b9b2e86a7df4b708544fe18c48bc26bf85a26049a667c03dfdd3dfcacb1a0302047c435bb5006730650230301655880c4c5adc9354b73ec0d11515ee1d37a6597a731349cb914c80038dbc6b86cfe1f8b3022d4750995e758ec328023100e1906af7f1f40d188f05fafcb6eb7acaaf28a0e5fe760d563931d12de27910752020c92f8fa8c4357843f3323bec19570302047c435bb50068306602310094d266d7268db2ad425c60e15457fe3bfe1b94cf6104b1ab731d1867a40981d19d279ef4cd05be1c3a2068d48b028b0d023100ee6371e1f37b831fbfa62412c9fedba11c3d84491318230124d373cb4917aa231787b7988a51547b314e2672466785ef0302047c435bb50066306402306f1d15061bc48c010b9c66e628f4443d274f7698d7a0ca7cf48e12f8409694abbd7d2cc8fc791a3f6d05681591898def02304ae6c4c280622be3fe84b074002147ecbb46047f0c29e7ad4d7bee8315955484ce1784b66d844ec746e535673479de4d0302047c435bb5006630640230432e7e496482648a68f26a0b3ba0150bcc5843e6c18d8afa068d5c79254ec58d710740a8bfa4c4e7dbc2d09ef86e598402303374b79241e538fee32af2c35fe32c4a97a3495a33c92f3894b645caacf1bd8852f23b8197fe8f3cf835f598d88af8540302047c435bb500683066023100e43c5847de9d211ff5c525e7ef70506a9744046a45ef4cbd635fc13ea39178a992c7c115ea34065a2427724650693084023100d3bb02aa8f6fbf9998afbd5837057aabd1f5a2ac1a3b0b7a40b9bb78128b704a50b99695a0cf4372c31d462097b17c9f0302047c435bb500673065023052fc3921d6dc7e7a4d4c2ca8111873d394ad3c3a86ae8d8f0057614d991239064b79f6bcae04c9cfcae093351d9738c4023100865d77120a29ec01399dd3fdfe075ba8f8d05bf929009f82a944095835755ae442c79f50e36c480b2865b0f36030047c0302047c435bb5006630640230173524ccf5c9b82c44493bfe87f1e56e7912d4e50d5b26f6debaa4f21cd66bd8ac19d7aebcb288fe4e9733fcaa05f8c902301f95c652dd20d5c0619b7c04ca9fc56311bba61a464ac67c7ed9a8b610feed473fc96212b76c64fb2738f77f69f897e50302047c435bb50066306402303bc4c1365b9f02eb3e3196d59ad5d6b6b1fe10bad9649f1c71f4f98fc4ca9d17e4abbe3e722a775f66dd497bc1cf46e602300ba338fc5db3b2a33d8986194d5e4ad2380330f4b6a030785fe6487b14b07d2bf2ea4b386f6ed285e42fa264048694720302047c435bb500683066023100ba72e9ab8c6c37199e6b1e53b37b3c1473c2d0fdcca4ccf3cd429754a415ebe3caffac6959980d0d7ff2e02429cace1a023100feb6ada782753dae065714e61ea6778a29eec43f95603c4feaed750a3d45603e38807bbc1ff2feebfbbfb437898a44540302047c435bb500663064023050f97086936de0df33dc87dd1af0da9cb43f76c4f8fb53d6b14e69fd3cb581b1f3280137042bcb0c5db8cff0a00bdc4002306f54e290e4c4a08c18eecd909d2294a486e6bf6c959bdbd1fcfc4d847b79b61efb78e762162d5ce5b3437956b2c80c480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006cf780bd7cccd06e9b3379a492615b18366128d6a70f1d7ff34ce3fa753956251896ae290a02d24e1ee2468606688d50230100c9ed9130698a1f52fa752daeb67226f776c84dc7083ec9e41a38b55a37cb08594581a54c678541f02005650305d6f0302047c435bb500673065023100f04fe96946ab56984544b3ee37b8d66edb2cd452192c975e382a3191982b4802f3b161d8ae1c8d990930b96049d1f8c602305c0effab12c7045cb3420036835c1e366e56fec701601fe63b92efd9cd392f9e863eabf097b6c0217a19e4edd7cfa1940302047c435bb50066306402303d07674e065208db095dfe8fe8c0e011f1122709d99d2e5bde6ce300c23dc73676e74315df709ca43dc8eed3254da1dd023031b43cece09fcc61c479b354d2e6d8132e62d3216dfe13fba67746c73791be9245e95262be057be0aebb6d523fc6f2ef0302047c435bb50066306402300135780159c70ff188c9cf6ab4f8f799f7eee8cbfb061a76731ce012a0ad3ec7356d42e94943d1238e0445d96e37fd5d02302fb8318713041c6cd74e00c1d4aada2b096b62fa0d86c4893276a43446f3e6a51e5a759bfab84eb47694331a08392e660302047c435bb500683066023100faca2a3192243b80d46dc56d62df4eed6d2fad536765f8f26b0598cbe95044728272754f08432aea7a8a7434bee573940231009b51c20523ad1b4fe30af22a2d3db3dfc025de37adef66d5ad2a6a5df68f66b1070b73a7c68dde066e07675e82512a5f0302047c435bb5006730650230618e980961b4cc4b916cd6f0a76293bd073aac912b1c70f75df6d028f0dee670103cbedde05e0ee44c8f40d3881a1029023100d85a8545921bf24d8f3aac3737045e708a31f76fa8a94da030a75b3c668df7adacf49233ddbbf08bba90159e838b68bc0302047c435bb50066306402301bd2b80d64d01615bcac02c5facacb0a180aa22475455f297bcfe190544dfcd72508771c68efd87311e2ae0c239cf2ad02302092be5557966ce93824ba98be70d609da0120ef91d653bc066c12b7a1eb14fe583597a3552d3bfce304bd8438f33fd70302047c435bb500683066023100fbd528ae9337e4efbab30b0d17944accb533d6ec5f4df100baa72936dd7d76de5e9e9a26504ff9b3668d17ee6e494c26023100f867b2685fd8d7f796cf947f9db6562b4c33781931c97dca9170058eb03cdb4eaedaa922b7214eebd86e3fc4ac0323e90302047c435bb50067306502302c47af78943b3f3f2609728ab2528994e972e796ed4bd58b4144165a28ae9cdcb823fbf29a5bbf96437830f6241afdb4023100f33c15442101969fe6f507dfaee1275d03a422676d3aec01c919c512b5432779a2251e0fc8ea440a4fb1ccb82f9efbc40302047c435bb500683066023100e788ab9d947db1ff1b681a54ff50c7c3a6ee70e78bf88b4e8fa6beb7d44a10f9744c95060af6ff3c2c9aa93f4fff5f70023100a016a0fb955b4426e5afc31c1257b0c4dbe8ea881de318dd77ffb511f8d434666eaa6fc9990ccf524646aaa63f37a1b70302047c435bb500673065023100c2325cf3d9ad378b23c6409ca3d97105c15a8abc8be32da8d393a4b90d01e38acf3127613cf88c0747f3fc0f3fd20ebc023042a20ccfe6579d1b1fa7999ee1b988de3288a5c52dcedabea7629dba181ba16e614e6a4ac0986dddb2271ada6ca9529c0302047c435bb500683066023100b6503f8af2860550be68b898d990c515d04147c1c29bed5f7832b3faa5c5f38c5af2663d6edff18841e0e5da635587b5023100d21bef2aff5a79956e4ffb0a6130adb9b9f9c3c8eef6eceb3a15a9a9128ef43cf8197fa99bc945cb7ada2d1d46c7feb30302047c435bb50067306502301698fef541b4276a654d0bd0d1a142ea3efb765ba1832e8e5745f43597edf0c944874e6f7d8b80cf85602e8c81505502023100e00f2c17daf86a97952deca73eebebdeea33e638653c3f4bd06d459cc341982f9e38e6ea890f29475c0af2a4586d19bf0302047c435bb50067306502307469dab92dc4e4a2d3bd0233114a8c65d26448edee9077c7cb6e995f9927f758c527f7bcb41053af09768c46a9701640023100d4238b8347d4748f1ef83c3330c1a07ca49903b1267810ad29d8b9ea091e9f70db7d1e5f33300c9feef0bb1313f175460302047c435bb50067306502306d67d12db532c73731216009046c8a7eca29ac14b2d9a521a7b925c9817e993c6144e143252e916b576aa259d203187d023100cdf453c76191d08acb39422176ed9cee084f2e440232810f0ee6d0a45e8ea876a201be87dab5278dca3c728e726ad6ae0302047c435bb500673065023100c009761e819826dd41e2a3d61d2ce703d95d7895400a38327c89f01fd9f17ca1154616c3b685328270bc7c17a3bbc85302306c7edd2ce28c43dcf7fe9135d00161d0db2401d59d3178d8313d7c607e98b2309fbfbad01839c71857f811c45f98e2a50302047c435bb500663064023020f2f233af11b3c497cfc31bea7b6f86ae0b4fd32c5bfe0747edc18b13cc23c4c64e752428e8183f5cb24d42a794d28502305f7f448db95d56c73832f53b1ae79687bc85d1513c0343061e4bdad36961613de5ad1c314423df9e6123db8015fc5ee70302047c435bb500673065023100fae92c4515a9924a9988ef64a35f4e7f08c9023c106d947ad650c58b066dc1f4911790f750124135c9581c5b3443617e023008216952d75b8f24dcfd0106189fe377fe2482dbd24560c965823a835ce68d7f612ed9f28ef4418a0e7f766e78cb760a0302047c435bb500683066023100f59ca06f08521d028fc65e166753f945baf78deec56986d55ddc6284ac0104835e00c00b16b665be4313fa289f4dbf28023100bd5df3477f2d17717eb5c6e495ce682fb2ae38e651eee44ff6f3272f4c44311ef5b8e49e5b0417c9a972dddd7333c0590302047c435bb500673065023100cfc0b1de206b86de059b3b204b5b081111d7a26b459af92db23096fb27ddccbb65d0a7286834a5933f3963793f41705402304c0506abda86942d524cd3c9ff8a531bfa94c84928a6c3d2b2f6431981f2b24db7cae4ace0d382bcaa305ac30c1715a10302047c435bb50066306402307c25d8f339e53cbb92e864f20d9231517bb60548e39406c364603e7e715a32ea95720b758bd3f1455af8840edf85807402301cb8f439cbc38e97c2d5bcaef7d0847b2310e861279b60e1897a44326f9ba63fa5e1b62bdf26370d15ed7339454d40860302047c435bb500683066023100cc969623d0374bff83998dd069bcde7e4024b622d83dd99b02166956dd60e8199618097207fd426270549273ac871457023100a7e5f92b99b740007dc13eebd71610cb3f24a84ddfde71b0057b4eb641504bc7ad47e0ae1167ccc57b59dee9d1406de20302047c435bb50067306502307dba1850914a6fd8fa2a65e9165f4c2a6c3eb12e5be64ca442cb627a4a737d215b12a4a8f8235098deb6a41a7225d79b023100f39ed6f774c52637351a85bdf7398c26accdb1c92d40e2e0ff3cfb7fec5607ffab9fbef7df11fed832cab2c08d552bbc0302047c435bb5006730650230573db39b3a53a74f862b1d0b334dc22d970338ef3eacfcf8d13d9a6cfdd32b247743feebacfacf98e697f9049b6a17b3023100bb5bca7e0a83eeba779711de2161ac5232e649b1a3ec77dcd43f67914de3ec643dd8460f0c505ad82361c417a5fbbed50302047c435bb50066306402305ba4e3ed01fa3760def95ec29cdd60bb50166b6af84460b3f0ac35a6c702d90336e5084e1576d051f8ff9699c5ea9e4a023035011acfaccff3057942d8493e6945df88b905b0bb15a30f0350ac0f525eb0443f232a315f0e47852c6f2723ea209e660302047c435bb5006730650230784f2293e93c7c7e1fbdef71682d4e4fc21e5dbde5b22b5801b7c9db33228506b0ff72c461897f51a2c13bcfc6fc4d5e023100dcd40ed440d8382d4c1032b708d25d193fe3ae2b8e170d75f63013b53546f3cfdc63d73da07d7d2217d74646b9b089e10302047c435bb500673065023100dcb9ce84eeed01335fc7bccac0e67c959f371b3e6a1b46f9501229fd7104565795c0fb0bf87567920ef07b38e9a44a1f023002164d5745dc26636abfd9f11898eedb8f95ecae17795d8a430417b50aac23c26392fd5e2e29e615955d7ba34ae5697e0302047c435bb500673065023100bf17b05c6ffcd15ae028d30f5f1af9b77099f5a0d82d6204b44994062298ee38be34e2f5522818323a882655bfab97be023051af42af300b3b84fde85bf779160db649d76d5bc1bd7b52254874954621db3210c5fd74e9ca2124915c15b01e0997710302047c435bb50066306402301121ab9a879a1882e18a5a489b301717ed3c6fe8b1c60163ed42e429bfbec09fd6b54c1a13ccb3d9ccf07419888a1bd2023035bed8a0601ca5243234a5a2d9f37dba5b6dee117d7134160d3c53667ef89622e07d6fe2f40527bc76f35edf457ea8650302047c435bb500683066023100d6f961a356f0b6f07c6defa3f381493f04dd1aa67e75abbe899f0ff6e058030985633359515bfd995244f5f0097d1d850231009a338edb98758e2b6c236c197dd41f50f5cecbfc700785868424a2620cc2b281b8665e09308f8c8322612091c56d58ad0302047c435bb500673065023100ad83c3de9c3574018a5ec0ac4278a4f71f22e70a9e50ecaf36f201b6257abb064f12a15caad670cdfe63ff53d0564108023004013cc6163066a4bf419d54e7d25e0abf484c464b8fee1332fcd276587760b4a0ced98f97c4672995ac523310b2d0440302047c435bb500673065023062505d1de36519942c04d33fc92b86ea9b11c15ff039b5f9a6e7665a99fdd568feb2ce6f2979dd51d7a9c5bbd18bc2530231008eba8d3cae306707effa70c520baa64e849c5e55559bcdee7b9fb41ba923097fa319b7524f6b14d26e080778bebb47f10302047c435bb500673065023049ca9c4dadcdf6d54475b8d8a25a3eb9e0ee10984e03a71085bf5ec468fbebd4df5f20b006cffaf2ed6338309df29d43023100f5f644dbec2a5b8ee0841800b98248789467b39b8f9e90989bfe8639dce38c3c8a0786a586cc0b4227c537b779145c250302047c435bb5006830660231008160887cdf11cef51122a31d5dcbd0f79db0481ae7e40f0818d42e8a99288c014ff1e0fda304114c5da7df8efb13a5bf023100b004e069e78bd7555535a66210320167fa07df6526cca12012377343182c5095bc20445577a0ad405e33d3054837dcc70302047c435bb500683066023100a4f58c36487dcf3ba084579206f116fd0b7c5266c26ee537c80d02a2becdda755d3bd556b07f7e5543607cebb490460e0231008c85aed95aba85826e9c9fcf851b893412bdc408bb53f136c1d7d288914b7da5df5c106de2411a467a980ee455aad11d0302047c435bb500673065023002a5cb71da93a0dcdbdfa2aa24d4312afa05990c7a1ae4c3e8b9a0349bc87c5f6e59adc798716dcbc9c5dd404979fc29023100bff2ddab79c5907c78ffd77628198f9d0cca313f4a5da18b58ddd70b3ac57995b6ad55fba5dd5478c335c2e4967751590302047c435bb50066306402303d02cb27935761e21b6a3d8f2b1f9d5343d1330f80a08866dbac73a712992c31d397697f9d979c31cea7f22fa6c90fc0023074508840fab6162c7c16d6468345c87fd043a374a90bb758b3dcc848179562b4d3411e67fef75990bf259334b39636470302047c435bb5006830660231009d7b4ba11fc126272c6ae2db041c61e98791d05a304cb1abccf5d6804a40410e10ec0904acfc6d7b506498cfca56fc56023100cced5ecc7169d406de8d216fa7a1974b5faa474bca30507d6f31b3aa9e26c0b53c06969f11d57c234b41dc6ab52acc810302047c435bb500683066023100cdcd0f4794de99324717cc296e77e405fad1a63f40ee332bcd2f83ebae23c80416a23a30dbf1c0c645ef160da9dce8b5023100e43c1deb33e9b2716984b5c2ad5b52c31972147de51f50e0fae4567271a6d6e607f94732bc87213ae1e8ee7b69ad9b360302047c435bb500673065023100b93330f8989a8fe41a391ec6bb17d7bce02567eeb985fa2130c0c583077bc92c546fc57826a7ac473969b0777a84fb8a02304c449ceda156a854b1f4cfb7f1514e83b7336868ef85ad09fc7383bc9f0d590d96af862ff137254cda96f906a2f337460302047c435bb500683066023100f6f0bea8ce009b3c691a4e7674e3c65bb2fc87fd555a92f50b79c29ce5e4faffdb58055e6cd8d69f34373f6ee5a88066023100bc7c395fa91f72c1cccd149e0d94770c305e8cf7c8ed18cb1a1edf602f505989394e14fd4150b95edca65f9c29a8512a0302047c435bb500683066023100f872dfee794001ecbf337d5ae39259c76d070f35029932864888da72670fb5a4181b70b12205afb8768711d67ad45ba6023100cb780b78e3cb8ba6623625dee89ba73e19026f70b86316d19dd6fa9970ee551c2f33d3021fced5bc6ac7fc3dc4ad084d0302047c435bb50067306502303c1347f7e52090667dc3810694627ec491baa8254a56ad25d6b12fd686986520467d50902377002b2395ee0eab470c7d0231008ceb51b98b8782579e33d744566919e32e2c7f11b244afd5797ffb3105938a566ba80a77518789b8bc117ed49a8a2e6a0302047c435bb5006730650230736b2bbc30bb01c9b1935f985b359c651e2e1c67e95d241d8d463d35691fc023f433a56d5b830c9f6bf4c320849ab832023100fc855521274eb14e021eb29f573909aaf6b0c0c864a21a251206e04419ea6c8d12867e61ce4776a27f3e286dd66cc9670302047c435bb50066306402303c36343ac1625d7fade20cd3d0e1222916041ce07b654950679b89ea98abb6924ea1f027ce81dadc5193789e1f5cc58702303d433b14cdfa3743e90a048afeee7a3968bbf1c85578b24cd26376dce5599859dc6c0438587a55a273f815b2d3162abd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015cc79066c69e94cd859dbc1b246b2c8bf063ff6473eccf6ca4b9e213a51359b12eb832cb95223e5278aad9a241a68f202303467948677787458275a36555e4b2259c1a97fbbb8a0f456bb98845849b157bbd79ebb042ec4fb7a4607489f3c1e99940302047c435bb500683066023100fcef5c4c90185af771ab1d8f54c216baa8405c492d480dfd3521195cfc953b6d80aa829782ddf69e386f09614b18b340023100c7f57a8b7e9bfd27ab1b520da716f4d86199c18d0907d195f66c6475905e844c9b396fead86759fa85681e8cfea2989a0302047c435bb50066306402303da700ddf6787c7099eeded460f5fcfd974c92105f0dec400fb1a9c87951da755bf47afc67b70243c4eb4c7014083da802307292daa1237dcbf30a3e5b9d5280f954960a4992fe3b1d19bde3ba87dc1c62b0d1aa646d6d5a7ce80488e134d637a5ad0302047c435bb5006730650230665178ebee61f2336708304bb3a1758252a25f21354ff32372cdffa76bf3cda253a02226f008d8a695fb7aaa954be78e023100f6a1d3dd3cdfb9ffafec5cc2702994c01c5e5727f2b6fdac7914a9deada90598afd23d224caea13c10b869fe57147eff0302047c435bb50066306402306df4f450ae07c1df400ed5fd6f3949d41cc438bc112a9ad3f307242f9b300e5f8f872aebac63f8435dc042b82ee859db02307f84a4d48c015b3ac701ab1c63d203c61ad1c0a596d37dbd6aeec855533f676efdc6af4a886e31f58309b71f9c585bca0302047c435bb500683066023100806feb5c42acfc58cb73daa9cf6452f23299499cb37180b5e9854fc8d45c5bd09e78fe1d63fb5f0d5eb7011e632d333b023100bb952220455f9dc838f0a728c911c222655963df77ee15bc49faca346ce3c6e9acb216abb231d0f5f6ce31d4910dede30302047c435bb5006630640230246acaab13640e44bb1341a7b3ca675d64ae8f5599396a68720457a0812a21e26fe8f34cd865c2511978c4466d624e0202300a11e2e7ab78e1a897430a85c2f24466cae96687247ee666d738b7eb0fc9f059971e05e72057dba2d6e486c8e67423f20302047c435bb5006830660231009be49d2e84bf31e9593e01c63731aa9fd16d9bd5461d7984629026c677a379537486cf3fcaa446085afb135e2a91d04b023100a82bbd19c7ee156053d56e1b51960102f41a2bec60306e2de584c29656235fd6aab90fca2bd4b38123490830618b1a980302047c435bb5006730650231008be70567889bbc23ac286afc53bd4def19deacd7c9952682eba4f9e9fb87b1ee5a70b4b554c5e42d31892e4e5987e440023073192fcf95b4b283873f77b1b807e209d9c43e07a71427ef782b5b51583954e2bb4a4a48d497cc2ac6d0fa5ba8c966e90302047c435bb500673065023100f8d582ab88168d10631e96fff9028b0ecbb058d67ea6d7c187fc7ca1d505315ce8a695a4d9c772cf7f74f16ef55f56450230720a8a2c0facd98f47250a5cef5586b3409e1a1e3771a22a55f509aaafb1dfcd691f76945ef89ab24658383c2a03a4440302047c435bb500683066023100b6aa569ac1fdb9ce34a0526227d46bf427d43231da0fb9d27a210bc11efdcd6218d74492388a06974ae861fd291d9bf0023100c1d773fd7102249b9d78645c40352bfcc2a9eb816f41f036e85c3d6ff85f9634e7a47e764c8767113a1fc9b7c768f0510302047c435bb500683066023100b1b5aee34fcb6fd527515575ee51ed2074888209b3e286a01fabd68b11397dc5f2ccf7f9c4466560eb92c48d32bcc1e8023100fa14d3cc909e068b2bff2ca2188a6ca25b929da936d54d9bbbf817320091316455d9500402bb3b266ff342bf84d11b5b0302047c435bb5006830660231009f00e6b797975761ea8201340aab792b49017ac2929eb6561f1a7096f3e8f5a11237fc195d45f10c42514e283df36900023100ee687ac9f10a04022ce4acb2b64fe55b5a6beb7a54e2dffaa5e0cc781aa61f44b62c35212c050281fe7476488c3c634f0302047c435bb500673065023100e8ef990e836813c0fd42eee331ce4043c2ffb1fc7dd2aae685dd136c797c5ba6caf6abc321d0a443e53ec8170d76c91702304985790784969c14fe3af63b9b6b5f21d7f2962c58bbe5551d8c51f482a8b58df45226ad0ad76a8f93efed0c03d4697a0302047c435bb500683066023100eae48c3dfdbfcd4afc53dfec32611812c5c343b13099f2bb2dfade7a94c39bd2df1d9079453ceb35513df85c205804460231008528885812c0e571dfde1ca8915e7c505a3b94ebcb93356a30f0d6604bca5bb578e02f21a2a36856424188dd8e1993780302047c435bb500673065023100bcf541c88d1423bd28396d99259f1dc99d00ae4acdc59a5e08c417afcc89d2c3e4c07b46c513f0e13a38da9308e2f8b202303589928ac936b30accb32beabe07bc87be9f635d3ea9701e7ab844e8cf7e4c45db9953fadd632a3c8c403826eeddc8070302047c435bb50067306502307332e906266dae9c01eb410ea48f17867d083acb95fbf55c75633c2d0b6506da009164f9c91f2c63e201365b341cc7790231008c1311ff64e4005c5a37786af447d15dc1882bbfb23c28cf7ce6a34a53ee8f71a510ebd2c72b844cb049eed4f48020bf0302047c435bb50067306502305adf651b357124b5167eb59ead2b0532f298567eb12cd781110e94656b9622020117e92096a36d964423324896d77da2023100fbefd55503577ef961bb1b809e6d575e1c4cf9070d0179a574c6d9af2dfe05675d0652355fe4da5a35cc023c25242b480302047c435bb50066306402300276613e3f8f02e79f674d0be9089220bdda503838169a7d2cb35c8edb8e2db9e230ca3822daeae8ee270f04f46883ab023043c6e9bd67ccd731e571db28a24054e657593a11727ca70d6aaf44c321de267482dc76e3689b99bb2c0c040c73f9f2e50302047c435bb5006830660231009907e8f4516b2404e16092e715d9b2199b364cb1e6f66edb6863c7fce886c05add108f0a97460736bb81a2a0d3b0ab19023100a9c18021e85376aad11c7b0ef920f003eb77fdedb1c73e2e14c496f54ab5f5106042202e33909cadc9cc8b7861ffed450302047c435bb5006830660231008fdf7f1502a62c6ce99c0bd91bf3f8da0721435645d73d4151b40b90bffca65a83a06c8d70ea12db0c0023c0324ead240231008336dc562d83c8f7bea56b0a93369c5a21eb1212db81a1dd4762fba0b25c27e881f3a20db5f0cee85e6c1aa114c0a9400302047c435bb500673065023023fee4c4510ae3830664b0b274c72304dcefcbd4e27127f40c4f3f40738fb2c017264ad49aedd44d393e27dea4b0e396023100f71c9a567d2b2102c620f65e0af1275b380dcf3e8d97b7550b3a92b11d8fc18e2b5b0dc3012a81b566717e4be44d7e740302047c435bb500683066023100c9e5a19838d9299c79635681e1916c144e38ab7a81d54807723656bb27a802be64f49d4d1e4df4f9466b0d0209fb9a63023100bd99471ae8b693aba53d86648a108b2d9f4aa3588e36440697033f45d6c263343e0ebec92febf0fe7624c2a6edaad4ba0302047c435bb50067306502310087d1f463fb7aebd8d4ee4503bd415b6e3a6615935ba4fabe9dc9e5c333b70d784ec5897861c320d70c53dc45dee39efd0230485f964c7969828da577f41579b355dc4ad4a40cc635cbb12f940ec240ba72272cfbd2b70acd9aa7583392f28ad8f7b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f1f05922056f0935fa3584cb8f37faaab667ced08a6f51fb1ce2adf28a09f729ec5b798832061d49e3912f7df6431ec02306503b1901b3c5b24817745c2dd343cdd36054b8d457264d9111c64c606d6ddb48ff501abc74f4c3d15ae49f72053910f0302047c435bb50066306402302ba9bf95c4569d782114528cb556723467191db0d8ccec2cb71204007c350224511fe7c90b1173094816267263a17e10023075192a9d7d6629cd7a88f69950263fdc8d23cd0f69a1f9935e5f8acdc8919d2c4c258aec59932f69ad083443b37e1cca0302047c435bb50067306502300fed10afc4e2dfb869f4b7fac47cffed02d80b6d79271985dd01486dc91baaffb04282fc740d32d234ec93936f064267023100a213d78cd2f034cb1465c3617dad41e256cddb2243fea87a5b889c3635629fda3feda4f69ca8e5946ce60a71085b0d2f0302047c435bb500683066023100d87b1113ff9bb09c029ef3d363d86296285a9e747a23768b6684f3f05d6a8feda023e6ff464d19ab9894cef4d47286a7023100c521e7922f746894e3faccaeb9db2090c26c50b58ef9558753824bd897a241e0520bc4b6d77aa1a6e7fc54168f1d46550302047c435bb500673065023100df9e50b29ed9160be7cdd1df9e3038e277c900f2b9f5dd6db4e29f1a0571f5c12b529520772e8f6a0434fe36f1cd18ba02305994f881280452ae1520d152d1985889de6f7919ce29a1331ebf0f8ba796b722097cf05b35e994a364bfa49c532a1f440302047c435bb500683066023100af6efd242cce7674461a954fc8a7585a2d73504a197b586df8993e3fc02eae8f676fa58da4d9822de0e278a0a95456bd023100843d494dc9a2c4843523c7d86a5cc3e6abc4b9e1eb88b4e94e168267486af9c1e550b8228dfc031da04794c1547676de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef92b798bf2e5785d56efbb4abd77f808d2ea9cefa915fb6438cfa4aa4fac151414257bb3c24689fa9b5394a44d59806023100b39c25be37bee7369bc18c5052d0f4e1dcfd728f9cc0c5c0e5734bfc4fa98c6bc52f1d69c657382809f6c9c97928d5760302047c435bb500673065023100e9e74c083b2d6b355ef7ebb6651760819614f3e44357ee396053213badc2ffbd48bd8d8c9b9afb534a4ebb6ae6297caf02304f7f9eea461eb963e0f088a4189d912c5044848f757bb4955596f3b0930fdea7ee66261ea1f8ee87f0ed5263fb4880c90302047c435bb500663064023041ed6db42f5606f8be598d17ff04281ab8adb3d9e68a6f72b9b3b618ea38e7f2705e918d6c0f26535570d64cd5815383023024283d9b31ee2a972a29b917ac6adb652709ea3ca4f4d98449925271b473ce9ef818674072f06c1000737d921644faba0302047c435bb5006630640230399713f3a63b4f5d9a193c3c70e5ff5626e1248ea495faeaa5340fa14a012a5e0c18e29895a6a7211b439f497a0b20d002304dbf90e9ff9def39daf86d48cf7c05022600963f165d7a6618d3a95c224d7ced758a6b02905e140dbb8fbe5608e9250b0302047c435bb5006730650230039c56c83c499e637d1c445719c1ceefa5e1093585f4255b54f4fd024d7da94e4d425e390090b3211f4c1c4245a88d75023100de09df7e2beca73f39be5110954a54847df5d6ae0a11d23eeefd9805558605a6fc7efa2c410ef1ed496bd04d2fa0b07a0302047c435bb500673065023100dedadf24c0f13db1066594dcd0e6062e54a546c665b44aa292a8e99bc40ca4fdce1a3dc83892525388dcb51672d654640230658292ac289d5ad5c784b70ad9285fdace151d8a16601e6599e36601ae9dcabcb3f3474230ce63be40b85d6a9dc908650302047c435bb500673065023039aeeb589c425562b1bd1204aaba00f6181dcd9c84c3421d7e609a572441e23880415bbbb5d7630da15efd38dab2fcda023100d2fa4db95c4739d9bfac68eb02d921c4be9fe04abb83d02920276984de88df4eebb7327ecb88cca6e2837320350e9c490302047c435bb500673065023100a968f4ead38bacbbf98424eb26513b6484f1e53dfc105756a4cfcc7d8646d9a410e712f4f02d0313f9c99113a7a692700230295262757f81ad85dc8f6e803f01d9f396cdf57ddecda235a759ab2ffde29a59b880534adf61fe19b295159afef15fd20302047c435bb50066306402304e871bdbc6a236c47f920d9cc169fc18bbac89b836be1f22765add8e5a8d657f61a653b29355c937b825899f595c205302302e982a465bbca7c5ee5a8dbdb68deaac57ff9c86ef14163dac0bca54945ecf6b57433f8fe4fdb3ad850e1ed3bb5906d00302047c435bb5006730650231008c97e2006f1b533236680ada2fdf93011e8cad1b4b733569b4530cdfa8bfe4ba9a29a7b3cb300f53b9585b1fd965e94802306dfabb3c8fc0a86a72eebe71fae04e24c2f0dc0fbc78bf0439b1ac04f8130aa8816f5fb4056373108964a05e8c0cca930302047c435bb50067306502303955f60513d12411122e8a3ae1133669eac1191fa16f00ffa05077dad30e04ff34a06efe1d5d94e6470a63dad8382415023100e49f3bfe463ed91e969e92dd421b1496c317386811331347f3c99d6cc50685cd33ea8d00a0a5a848ed516c8a891a362a0302047c435bb50067306502302cf593778182f6074d7baefc5c4f73610dbe5c2d771c7aa9f0a6bfeaa2436ac091533dc1dc85680efa695f532316d766023100fc5988c48e0cd248222c865ddc4dc3bee575e85921e5df4322840c7bc21909171de53e7830615194e179ee3ad32699700302047c435bb50066306402307f2a552b2374690c5f6158f4b6efdadb5a52eb353c61f387d0527e661b0e0e7787e5909753fd83b4bae150f157117a0102305f1e3ecd6224df8ea70cb0749390dcfb1fd71971d3d477eabdf4c441c3f716c8c598070a432567244a5ebe214c17e4e50302047c435bb500673065023100e6170f9f084adf29e4f4022b21ec40622e47b1f0e1d512140b6ee53a831a2b54686bc57057f907779efb6ec54525a81602307be5376ade7f6e3f8d0e722d0c1c18e78010d5f7474638aa4754d8fe4a02057f4a17610b14c8a8185ae0241fe06397d70302047c435bb500673065023100e541c76d3276fa5de5da9ee60f08f537f6e66aae1aa9735e187fba87f85a726875a6b186b818de47b0f10d33fb394b070230611f3fb38d2a3f8c5d0d844ec0b58c7cf92ec35584fbe3d624fe69be0006f0ff15fe518c027dd9334e1d5aa7f9e754830302047c435bb500683066023100de14f6e66250f445a6419976fe474e6b33f4ca427848c8623bee752b5a53bf65fa58e2b41347d942be9cb61f3e40540f023100d0a1aa49ed9c6561853204c52d430d35daa8d3bfaf5597a88227cb1717f87afef3d46ea6d0a34b210260e22cc96e2c100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303284cd9740a42a6ea20e20966b58739f1814b23edf1a89e26103afb24a81276f96b11213bab8e7b90434368b52da380b023100ed014038e8d7b4ab210752e9a417aff48fb3e45ed07c13faef010144a66263d6ebb49f8b100087eb7d24083a8b9567f20302047c435bb500683066023100eb1c02257f22dd691c0cf8d2512f7dc657ce20093f3b19f40a1fe9ecdc46166f8b1e755841a3825327ee451f453e16f9023100ffc2e7f77563ce3231f9db533d255b90ed71b632cb7befb6ac1bbbec7646dcaac1aa1ed61bfc8472cd5f3667cb8fd7430302047c435bb50068306602310094453235fca73c2350fc64795c55b535ae03f115d8aa32444d139a7f705f99f5ce07211375c18fe3a8698e9eef1bc8f8023100b371346d4f979fbe26b996ee5b57398c76de2bac7b9590b68f5083c0c38d525cf9512d4411c6d9bb5b7202ffe4c6b5510302047c435bb500683066023100bb71040b2dd2cdcc9ffb5599727658c1701f1309a4d2d270e388bb2caa6de3c9c33365e3f1a6104f971cac4ac1bc2a24023100c347a7e968277a5b77f31d640bf14509fbf92a0d6af9116075543db0ab4e1ec8308c2efb8ed2d89c56e7f0af0fd21ebd0302047c435bb50066306402307a4d34e50a882024f36a5631994b289923347ff439a225031edab8cbdf299f45bc1bf03be61f5a5f90a744c04b9e7a7102307d63a0154d75aae326bca482cca122cbd940c8a2dc87ef8d86e50c96979da46050b55643b6a463a33d2cd76395c004230302047c435bb500683066023100908b29492ff4817438207ebd2016792510ba2f040c654b1d7e6e7172aeda4282bd84b53f70b8a6742c586cad931edc7f023100aad87fb50f890fc83626f811878e4867b98591ef83febcd4c138ad73c56821cbd07e0ea9d41b2e5978dc6d70c4273e690302047c435bb500673065023100f252352ef3325cf9eab3dc28d423d2a33a1dd9cea2a3d2282433922714f3185273ff87b69c641485dc756e96630fd59e02307900aa8f8ec50e6e6fad5d86ead0d7e255f229d8a64410d7902ca79172701262750ea465281be6ac6040857f031e8aa80302047c435bb500663064023077046282fd3f6ef2912319b07842e36738103f07983f08daad8eaac2bd7c55a8b8eff9413025381b0cf1f0cab9b30d72023014c8600ab348009495242d05657dc7d8bb653f3b569a63bb790c954ac6f94d277523d93e025437ab5b61ea3f7ab231930302047c435bb500673065023100a10eb86a785edc2cefac8bfacd4a55bdf2b98df62cb54d59ee9c1fdc517751cad4813cca44fb17e703cdf4d300c8371002303be0dc7aa73d2c9fbeb974221f480f4c1dae40e52d180078191606c44f90504af3f1d95aa7b234034f9ece00e913f5140302047c435bb500673065023100dc8acee95e782b01220b4c34856bd0acfdac716ff529fb191f08c273061969992d4b2c3b8979b11397fe676a8855e9fc02302b4f459c31ab4dfbc909ca93e02cb3b17bca02f09d19cf160765cab102aac10c6112832b6bfa3e24034c12a3fe927a1c0302047c435bb500673065023100e672462709da6d08f649ce2610cad3387c135b7387abc4a0c00ed782e5440379c21aae147507407305c2ad8b52e35fe102306363d2b920351645875f850a4981e8c91109c0f47ab868eecf6ea70fd83df56b60244eda6c6b15270b17453475dbca960302047c435bb50066306402301438091fe110c0bd64394605ccb5da5df59c84d378de5f95a1a3df370a57a551aa2fa195e668ef5343620799b6b48d4b023048218f92c6bf2c74ff0e6b814472187b5ad383d83c55b239e87557adbc6386f6e351ffc34f059454587fe63cbcd0de770302047c435bb5006730650230694e16aaef161e16fe8a88f04bb64e4e4889a551dcff2f764cf498facb6a223b29789bf06b9be7a3d509b51ac892cd8602310095464bd9e7d60191888a62b1c9d20d6a48b8632f8470f4ee25aed8829e8e9e375967c74c46f05d2401c5b554234949840302047c435bb5006630640230493ba07015794ec668b513eb06633380c5f3128524f2472d6bfebec101f33377aae46364820b9eee4125ca6579a8e4070230260f835345e709482869d6f0d258701ff36f149cdd015601b0e48a403337b01117ab24599ff6944e5d466721daac74040302047c435bb500663064023064390fe415dc351d1f12328a687bb90a459285523fa14e8d71e01ac7c580b8c8bf958982d551d0c8a16cbf7e486c3c3a0230332b9d054181da77a00962f57c59bd0776f324b651dde4d35727f2b4cb28cc0b12ee846c88bfe5734a939a386c6c41110302047c435bb50066306402306df43cff6a2a9292638666adf5ddddea0cb1932e2282bca2c543e8670b541edeed1face4e77554f7f81d16544d8a554202307cd3a71f956a59464c11446f03ca76f1b10cfd9a0e8d4b9f6d6fa6be8b4652f551fa3d2655c941905047fe15d317ab2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307bac28146a1aa34fd215e1246d8a3f9ae65a52238699e873ffa68b7e28ec51a7a614d7c19202cd3e2b877030ca26295002302fd89d53ac90d0ac438312f8f1d2e7a4ddd103aaaf5eecd87bd1c1c9896cb493ee2c622426700ae78933e1ee14f6df280302047c435bb5006730650230510ec1996ad03ce54f4ecd3b14de5c98f66d35d4b1525231808d87c53bd527f3584efa1a935920a510d067ea47e20dd00231008525283f4733314a56c52747c878aa1930dffc81727d5f5172a92224036be438c2bdf72c15bbcd288810dd206349ea9f0302047c435bb500673065023001986a12a5f080800ffa62db08e78224b442660d3e6b2b7095cdfc43eed9f7f3b7f2a2dc7523b5e0e4c3677b631b2678023100aebcbedb1e2ae3dec0c02cb3211d17e82d04ff79a9f3364fc769bd3535545ed6c9eeac790754222a4fbb90226f1312980302047c435bb5006730650230022aa40ef039064ce8d327bfc0e369dc703225f2094b53226acd999d7a4e2b501fb74d2d8fd2347ff19a708f5076886c023100977be4a85588d63741541425dde1fd1cd0d2983866def1b839710eee9d4afec8e33f3e17e4d5c9307defbe48666c6a060302047c435bb500673065023100caac3b57e895237ce198943e68c5ff5335400cf56403474f6006bd83516d3ed9467941eef3aea687fe69ff16f19bf41a02307d0b173eda9734eac38d1f9faecf304aa61ecaa9b54148fa36fa2a5f0f1561af78bdc41542c1dd49752ea9af5830f0570302047c435bb5006730650231009c33b92785a7c5d87c6aa985bbae051aa6fb0b6afa10f3a9fb24f03316fa13efb897b076e9044defdef5e81deed2e12d02304c41d7d1150175150a81e1d1f8ebab878f3ecf214390bdc633d4cbef2ee1c1fce3c09d1b3f79caf43ca1bb7a69c9c8360302047c435bb5006630640230740a746bb33648f4cc5d21cdcadf322b6ee34166cf4003547448ba324d990dca21b1a94e68e5e8a44993ea194847fa200230328a2cfc4ba6ac9b40b01ade36262e30fce97ff8a6e53701d49d65bca2ade8354b745804d494222fc2499b8bc8869d580302047c435bb5006730650231009afcccb4a97064283e837a557e61699e3c087cd702cee56d38e8c73fa1d51e0771faf90c5e5f2e0eb9729c8cec463d0a02307a0afcea6db64ac4a783cce070e008a8e74eb19280ec6d0d6b7a97a8be4b4c67ae1087c7aa67c6719944898ce321b1570302047c435bb500683066023100d8362435e4c2ea8051146af24306fa426340d518ca8fb0b691045787177b5088b6face4a12bc12a50a9ac9d11ea2c02f0231008855585b3b27afad3e5c51cf51a3f3abc4dc3f57e22aa313aa78567897d4b2618888000d42c004cf04ea96910d265b4d0302047c435bb5006630640230102ffca5d4d65f3646df671dd9225c7d21dced11d13924ac2764a78bc2f99a4d2ca1e7de148dc7cd2e1565c0afd140cf023051bd4197c49cdbc61f18f9538c705a11e8c855c9cbe26986daf85b581dfd68106e83028064250a29734abf80d6fa079a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df241734c57d7eb32f5d6ab5c1fc6f7a333cd07725e379e260dfc6ded365434fe5f7a920398f71e5910b209d5da2fd64023100f12714596aa98efb847468f9a723a29268df4309c36c6accc80e3408f43de44146060df3b6b6581e7b56fd9ccc639cef0302047c435bb50067306502301597b2cb86f0dd2322da474319e48927e5ef20ccfc1a691556fd3329dd856ca0ee1049bcd60d5c1ea1e55b7430a7e079023100b497683dcbc924696847893fef6ad152a151cb7bb552aa571ce71985f95a6386a8fb5ac8f4f07a6fef08ab5ca5d0ffc10302047c435bb500683066023100d119021b3adeeb135f9a8af43c4c942bc5ecc5efd6b6ce8b2f83b3938888508d83327fa5707344dc70f97bda4590f820023100d85e6888b492d2c708a9fa85d0161439a3afe1043deb0f586e54df2fdef2c5dd9e3d2f3f64cd452c00afd827e20218a40302047c435bb500673065023100b43347b2b3894d62fca4f00fe527c31f0a99e87949de08640fc23a9849c7a4ff24dccbfb090307f730e2940dff157e86023028000ba1e8b755adddd58f725eb78b44bd0a4dfe8b635b93edb91ae74e006d80948afb4817e413beea56dd05c9b5f8460302047c435bb50067306502310094102336367ce9672fc3e2b7a75cc261c26b412c8f001b5b8cd78cb95fd6fa6e608356ffb9c9c7b594848e86567520d202304e077ac861bcf6d154307ff42cf186bc820b01afa167826eb23f04d580256a5da9c6c9306022e0bf84b8e745b40ec7430302047c435bb500683066023100b3d4a7a132db2679cc3491ed4205c6a326b03d83bfcb167dcf56255c73872dc990ba7b27bfd236d01ed19ada9f88aae8023100f15b081703089a8be0b691e13b17f74121bfbb813452d40f0def12d6e665db199bd88b3f3171f56031dbf16fe73663340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230655954ee7f198421fd710073a6933a1e4ce934d158c4b675e95f81358a86c2ae241151f41569bfb41f6fcf5bafdaf0fd02305f0683651a730bb843da26a071f6172152fb97b536827880bf95526b314992c5ff917adc0c7c99bb383f448097ff33a80302047c435bb50067306502307adaed948430eddeaadcf7055bde67f41f1ca5bd2312ecdfeb07102226ce3c55b304c7beba6ac8eba06a04d09b6a1d5a02310091c12bb4d84ebfb1a485ccaa8b40387bf4507bbdaa2af30be5edf2ebf6ff27d5cc7ec547f7d4d91d7cc2f8a6a53089640302047c435bb50066306402303b1ca31c6ce50734da2fba0734810f850423f405d142ea4381ff2bc279c36a05dfbc6f557bcb9cf56a380a08f3ded0c102303ceba09390cbae92c82dff1f6918f352bb752cc99b3f959ff97bf74c0c34f47599b029bf9201b5f293531784cf2606620302047c435bb50066306402301c60f793740e50d69daf3008a6e8859401f641a45052ebbe7600c56bd2dbd6007a58717ae484186b71683e1f1357ff840230783ab7d9b9febe07692dbe658ca7960dbf8853d0acafea4ebc343462d845196e137377293a344c226ea7b216da7c80c10302047c435bb50067306502301977e9c34de801fe928184f49c4c4b772fd2e8f1a7c72bcf6c4545dd178ceff7abf84aa3328fd4ca18d2eefd510379ed023100e7b10521917014951da2b7f638598241dd91946c3475074a0bfb8226e0453d8b79c85bb5a58f6d10d7fd3da12e0e34d60302047c435bb500673065023040a07fd36b5753869d727cdac2cd71331cb7920293734ccf5c67dd927091092f74c387a794a87b345f7cf66f00e580b9023100baab2c7d7bca5f18d63ff12070405151b473a12f166d4ca5ec88678cdf9062da726e0ed6402dd53139247767ef6e14810302047c435bb500673065023100c49a9dc345b975476e85b02fde3d203980bbac95e3f7ac17b06675fb9f7545685319c5994b86d2030823f17f96334b1502301d2c0cb06a90d5aa5b6f091257c2b846060e63b38c2db957cdb39605214bef889a30f564a7771eb83a22e41c0732b32e0302047c435bb500683066023100e2a23ae961db9c7d253062ac848128b275fe4b5202273b20bb881efd4645ac3bd37018d6a26a3acc722290da1ec1461d02310096b8023afdd1c29f0ba91f810acff10257ea21fd8d971ac528fb157c923148c7ec8759417eee780d5f3b7fd57a46bc790302047c435bb500673065023100df3644953edd1dbd9bf81555b3fe718550859436ef4902a74b087be827549d0588b8b16d063e522f4575719ef55e724f023015c070081db35adc1369203c695ec9b3a92889984c9bf33d69da2b774cfb95e1ca9d1ccfb8f3eccc1d55cfcaedb3927c0302047c435bb5006730650230317a03e064bf54060de9c81ebbc29366e463d841c5d6987659f3f4b08c07e8f640ddccb54a695a47e2111b2603c33f2c023100ed0af7858774a4b41453141d4c6a643b616fda439a1db2a2eb517d9b125a22eacf052be44979a214f1e3a44d7d67f3cc0302047c435bb500673065023100d72e8027e8bbc34f368073176130dd3c53d0cbe3bf34cd0d4b8c177696cefb46183ced260d48b07f79c0074d2187c2fc023054ca75b941f19da2cf1aeeac8eabbacf747dc8412287e6ea5e760319696c2986a990518ab56d3e02abadb9075a81ade50302047c435bb500673065023100ab9bfdfbe6c218e640b8a6fe8b4f6881418e45c24cbff1b83df9704f37ba7d8646a9466fcdaa1c7770de7b52f009f5c20230393a6e43a8da6192aa4e8c2537d1d57a4764cc9f6a42fe404c834b2819c3e9bc1a3228a7bd3164a31fd838b0accfbaae0302047c435bb500673065023100b5974128506a9b6bd63ee0bbdb552fa3a0d767fe73de6780e04590ff9f784a76895c15c00b15f58fba016994d2d9c8fc0230209d88540f4bac4ef44646243e7aed72e75cc2e68153df05017d299ed7b4d7dd0beead433c07fc8bfba123d21894a5f60302047c435bb500683066023100fe96c8c68213a798fd1264f2adf82511776243b60269acfc8a4207a161bc0b9a97f0bcf26cc67e5c89694564bb7bc6b1023100bee507e8ce7ef11b2bc17fbe8af228a2513ab3982ce03dfc942e42774ff7b5d4d71623e23de31eb0af54a828d67f6c5f0302047c435bb500673065023100d506d2f78fbabde16283e6c6ce7373b03f9aedfe69d08a9066c6b3d034e3837f95417a7bda355c08da31391e619887fc0230387e864c14aa95fb5e6e6f22b9faf768b47e52a250fad47fdcb782ac343ab605de8088e1cb8657a5156b624f07b483570302047c435bb500673065023065e6803539fd7c1394f8324de773d30ee71bdbc34402974deab1aa97fa4ded2b49150e24f925676cf36ee7a4d249d6160231008a9300a438553046e8ba7c08feabea444ee11b42cc16c7a6f5d68f532c88667d7b48d6ab1ee427028d97667b4d713a340302047c435bb50067306502303efe35524a570276bf6fe7d58a2c6907bae6fda8e83db0b80601cb33c9d7ccfb336b4e3c266257331bf66f1d2f656a87023100b1f602f54370270758a672df00a6810077ed15394530d19dd9a0dfe9538a3ffd2334266dd903c81078abbf10a4dc7a9d0302047c435bb500673065023100922ef58ed4468458ed78887d6ff0d428361f9648c3bdbcafc7258a0104e46891c703193686a2384f8db24415efbbd87b02304d60a63c5a11401881eb68434c9c7a142a7054f3a8fde1c67b465a86ed85c9b4adf2f5b4aec73f50a88931dc2464ca750302047c435bb50067306502304f4f1c6642cbd903e61f23a4b8d0429637c850a2ebe80c0c46047547e2cb6c5e245066efb1db1e3f77508e162ee8e675023100ec504b67b10d608967eceefb2c2c0491c17fd36554470433afaf219f43f23b806c734afc97b2715b2c272c7f744572730302047c435bb500673065023100f4244c83af4bbde6eca6d287cb00bc9ff67aa6da8f17e795b356f17e59f07d4a63e87212879ed482ced251dbc6c4db57023078bf00e2ba998100081853ddd3ff529b71708838a0829122d1eba13d6e9b27cdc81e7c5483ef111f6ea5620807be17e20302047c435bb50066306402301aca0f7c6784f35ad225dbca36eaf0e06cd2082bcbcb9eee6efd5be0f04e0ee8f616f6a78bb5eb33c939d32fdf1f6d7f023045adf2052d0308c1ed8f58fda6babec6c030de1748c073ce23072733f2a977b9be24458e2cd965cc930d945e7a9af8680302047c435bb500673065023100e5f4cf8e7113bc0cb1d028e65f65907f599d9ae749d9ae071999848080b341f1a2f61d384c1cdd1803b93def5cf49176023075389a96695c46d97cc19b5eeeb2d4659d2de1c40394cc4f0f69c93d1eb8a9a98bbb92848f92e9e566b870cbac5e8b7e0302047c435bb500683066023100820da96f60346db7891374e67a54733646583aefca2bfa33b93715a1b813f0156ecfe05c1acaad302a2b54451e1fcf9d02310084eb22a0526c9daca62da7099b7fe04042dbbe3fed9a5efe61b47c3b496aca2dc592f0cb0ba39fce58a79831e60d7cf50302047c435bb50067306502303736f1140c47ec1351a794115998f599afa80a2f0c6827e19bc07dddfb7932f2731d5a956ba74acae58cffd41fc4ec09023100e8e21ae28610ab3a91d1116357f7cbd8a2b211483ba2915ea7e83f679b1c420fe196ccf6d32753e0d19a1497493218000302047c435bb500683066023100b9b13ea6ec630b3ccfa981d3c4184dfff10d2047e3f7155131df54c7641b71a5371fdfe756b8d262dc168327d8d04d83023100ffb75b747c38a15c1eaa9c3168b258ff6199f4a7f5ed5b3162577a528b678e162aa7fbc5dbf27da81d61528f780d374a0302047c435bb50067306502307e6129851f24519f0ebdcd3dfc154a5d129480f1865f0214321e609787d9174efee41f5f1e55b4072c58d9da2df6d4bf023100def875cc73192a719b03bf1422661fde5a3091bdeac4038389cdfc5048eceaa6da42b873b7232f43de99536736d126c30302047c435bb500683066023100dc7c1cc0b9b85aeae90ffd18021acb8d2c03b43ef7133a0bc450360f8e298317013580245d9386709a52ce5152b3c80a023100ed6608ad9ccde5501aa4dc1074bbcba5ac2bfac093c9a41c136bdcc356950b61f553511909c5041e25011a2feca9a7080302047c435bb50067306502307f69a7b200719f647ff1bb2b443a9e9a8a92fb2ca04ab2ea13bdaf1083779f0c59a109450ff4618759aebaf2d537219f023100836dc831299e9d63231a58aa6471c8443215f2a70bde7c9710d7136acee32baaacea5a5fe25a8996017d4f829b2c263d0302047c435bb5006730650230021b8bda920944999deeeb8dc90049b0b0ca3fb1b3eb75760ec85d13f0728c3b251abf9e114956c3337e2c3732b11e25023100c93d181458b5e35d674a55a3ecab7ce521ccd31774c40f9c351a95dec9c5b0c99dff9ee1a4d1192584c4236cb701e8240302047c435bb500673065023100f214a0f8f50b456bd85784ad7d6e8ccb053d89cb94cc186857c7542f3015d0036f50c695c6b42b5cdeeae0ade40c31350230023b1ad42d438d264a6953ec687e8b3a7e789472c63a08150935b8082fc74230641e86fb45e8fb66f63f6c0a6b8b7b5d0302047c435bb500683066023100bc83fb31ec18ab2ea00d10e1f2ea04b8ee61aa7ed94e0fea5bf0283300924330dba69e24850992040bce34f543a0a342023100fe3183b04ab2a823bdcd2d6ed06785f278a2147bf9e9a79569be221590e4473a015e3b7d8a1965a06e4ebf197755e2820302047c435bb50067306502301fc8eb879754f9fb9d4ce426e737a6c47626e991607327e28a4252eddffc8ebcb4e2ee8ee115eac7f3704a5cc5697cc0023100e7a19347cd35790af98e14c6eaa258032c96de250786d5bc666bbe66463f7f0a8d2adcd601274ce138cadffecb65f5150302047c435bb500683066023100e44edda3f240ec3be9f43049a2952c6b4aab13ead148f89fbb342c53947e1fe704b42db3fbf0db483fa128b5e8350886023100cf87f99251c1e4ba9ef0341cb93dfdd2b96fc572a0179ea1b40e68fc46a11fb17f6d1de9fd4a07efa5a96f1248e4c9330302047c435bb500683066023100f18bd93eb75aaa439814f2053710e9117a160b952acddf13642b8f1814edaf2a1d44c0b0964567a480014d04e9777cc6023100b2dae58e6ac56fc7f7f768291de8b8f0a2d90e5fbaa5f3e1d596dd4736a5f1301eaba95fe9661db4cb497e3953273e9b0302047c435bb50067306502305cc6a40f23bab171dbb839dee3fbf999aae5b2b38277f59f0fc897352ccf1853c43a2f8f3c18c2ef3a4831e5f5eaf679023100c78ee39fe7cc7dbb6315fba6b16fdd578942b13b8749c73fa918b52ab89e5e2c53d83863967952250d750f04e01ec8980302047c435bb500673065023100ea567ada4a31a73852564f59e6d2d731de9fed424449dad92297c0d9a1a341793dc076a8c2977fa496c78a4e51e956e4023048a60c504a35a6957139f70eb15b4b5d6ceea28ad2b552008779037873f77c20ff1978991270e1235fa155e0c81a94940302047c435bb500673065023100a076caad3e273bc1f6fabfa031f3490f7327d85200d4c4c51961792660c7887ed911cd783929659b37daebb866d7d880023017e7a701e32b4c7582a9c8f262c0a820e2161876a9dbb8587598c9ef63263d9e377403dc2033f59205b99dabbcc3306d0302047c435bb500673065023100fc0b894f05b81b24c7bfbe7ef5cd5fdf98df3be3132d62d41af275893128048bf463002227e909c90ae1d74d46d92128023054699b2c2a72d399330471ca34d9652fc1f8a913d8d783300695a715308f4d44d51aa37947d8229fdb999d153dcaf3540302047c435bb50066306402305e9052ae21e6ae33dcc190460c4fdb2e8d58967b2b564553d8deb6e10315ec59a1a2d6e178a587b1283ae51655701214023043a3d1be7c5f1d4574acd6f10caf38006826e9040087c21e2dac212490214b4c93ce2ea040ec5de75358f262dcba013e0302047c435bb5006730650230679fd2c434e81ce59626271c51f885c7e96c39590dd5469bc973261200602649115d62105be0295029aa934dc24751c8023100f08ee3531415ed92e971d9e15089a93dd41968e01e9c3e71beadc118ff1955dcef1f8f800460c25f6aea5266138d32070302047c435bb500663064023054fc94d73506ad8577889565ce4af18ac805c6ad8714eea8b0227c12f5c1e365a138cd07b745d5e42f353ae8b38f292802305ddaa08b9574ffce8fe13d4f38ee847db6e54753b53ae64a7757af3be9f64d95d7eb3124008b34933aaeb9d794100c090302047c435bb500673065023100aec93dfd1002ac2340e9ccfc0124c4f1bd290413e6da2a7d532b5e4f85ad30bcfb37a5ad47d553de33e44e2b9b5bc18102300a5cf85265f7fb22a8de0c9c7467616003d1d3b36382afdb9ae577765017c08ae165a46d4acbb2781bea64eda1b1fcbc0302047c435bb500683066023100c7d4d41e8e977113b07adbe80e011908df847ac338c0ca07bfaf18f27fe0b1b226c23fe522a1e799ff81f409292d94f5023100fed9d92e16756547832a70a4a84e787f62c492a837f5aac452b81b5082d2e939cc9a90bc617e43bdd20d5dcbc7d840850302047c435bb500663064023036a565a069bc01b016a85c9ec1f979fbd8cb38f87bbb30d4d237b9822fd4dc1d79be9543b2750aaee7cfe91cb1833b9302301887c877c53d4d87004a9f9816ff1c0bd4175eb72c864ee3a06604f29d17b5628f15cb42c2a0ca37379b93f5373d4d770302047c435bb500683066023100e058a8d93b9b9ad2986c016cc8f0fe6435225c94c6b1366b382ca6824a12d165d295e145cc482f150e59f2bdba3d4650023100f04b0ae269b1ac36a2390733cc8d627e0bd688f33e2661359e7b0ab2c04de1cef50b2127d8a052846476e7291331f2920302047c435bb500683066023100d2de7fffc62d2cc9a1f64ca18ce9f0337d3c5995ca22453a820a64f57ac093a627a548faeeeb137a0eaad1be4f74f9de023100dc7287a038a394be4559b52f4cac4d037a84080d923335bf2ba40bfcbc679a761575dd9f1d84dc941173c5dcd077b3e10302047c435bb500683066023100aa4c33498422aebdfee9f3fb5bb8a7dac118243cbd3e7b8495e17eab8df11c2f2a5e9a4c774e477df093f3a106fd0630023100d3230cf2f7f9af2e55530dc83fc4315cafae7ce2882143c6204008f38d935387c2403fb5847249c3bc82943665084f1f0302047c435bb5006830660231009d608be19ba04321025d1bf40c1293ea7b5d9c32b074167fb74f01b98a91d49e493387a391795700ee7749af040f6790023100a3201c0773535ab3d9bf5292a72b090a5782d7ac957f02335e2b812930aca2379e8e68be8e836c298672b640975a15d90302047c435bb500673065023100a80e12176bf298c3b55def36ce6c74542b29a7c43da8b3a3b82f629f97aab7c00e7a68e69f8badbd5e2910581717b68b02306b76c3048083497b011ffdb49b3a7bb0457241689e036d104589f0edd02ae8e09318216589eaac94ca627b7ecc4072760302047c435bb500683066023100c64d56bb6709c9d1c7eea00390b430b2262c7b3f172df1d3615abcf110af3482fc75bc212e7baf7ee8b9728c5942e1bd023100a5f555a053728c6213405dc4cdde985a03db7df5569591f193df22b4e44025caca7c25e3cb15cfc6ffe18a3ca9e0a52d0302047c435bb500663064023071e4c07de612db9c1b4c138f09eb9f384ea908d1cc74702ff666c4a3a31f1d46c049bca85b52a1a75ed25a681dec8a720230142f26d7ba8b71644613a16142b0c0c329b054e6fd6665dd62633b2894b0066bf30e05c218bd2a22ef27bba5da1ce2210302047c435bb500673065023100eee9983da69d001041bc9f81c6ba44a05407f35363051199283927c54c1b459bcc7d1453cb6260c0068429434df6e912023005fb7cec89bf0c9237e87a662eded4dfa51ed40756595d85fa26f342eb02193f74cfd53b614b56eb5ca87acbd5193ce60302047c435bb5006830660231009b40df879a45924b258cbc98f414796bdb2dcb98ec9e1fc7700724f2d8ead561b22ae21f8a47d2cef3e75bc240f5d5be023100bca488d05c84b006793e220d2b8d1371d889f7bda96472cbfe872b686482533d4b51522eed17fbe9e294d20477b14b3d0302047c435bb500673065023100e07e66880801da3d4c9cf417e4fac2ba83e7f4b03bdf14370f189d3ec8f4578ffb8f88362a3fb0c7361f391743f7388702302a834635eacda98ec4ab9a57f7927576e5dd78a59c9c6715e7b0188033f7ff23cb36c19d8c59a59ab904df5398941b880302047c435bb500663064023063949e44174b5337b10cd82fd71f37258389339cb909037bcab96d5fc7a7338cb44c731077343ef89b2f2b25dbd7cd07023026aa117f5590f66361a8e58b982128aa6cbbdae92ac1225e824c351c0538d04b009ea3f5fbed71d20388daae3928cd170302047c435bb50068306602310094e3814d9ed5242f94c11e1c2c2da8d2c9fd5356dcb22bf2632f12e88e26a1352833d2dae1ab060f06263e774697933a023100df5408262bfa9a361757cd64e353fe43a4b20bd6fc253ffb0a83576892bbc811a359a306b3b7ef20395d7de99d73ed4a0302047c435bb50066306402304908c91bc4a2f50e1ba721b8e81bc808cdc9d3658875d91cf1dd2939c2de617435f73d25e2bf691387ec71b388a1844d02306611ab47a6c10fe427d79eeebd2d939164546ebab6f4e4b2fc7e0910db2dde0df6932d35f687a74472ae77482ee61dd90302047c435bb500673065023029dbcbae16d5499f292a1371da20661dca36c945b40565b73baa2a5bd9d96732145ae63616601424a79bed8d086c52e3023100956fd45c57a674613e797b6a15f6acb29d49824123c6a5de20c38e397b97c71688a45cba1df18620a8e5c2ccd3919db80302047c435bb50067306502305216e7c03344c92a10177576e667a43e13fe8a8d1586c63bad6ca9d36b85a3b4cd634deb7ebfcc5708de53a4c0a419b6023100f5944cce88913fc2f2f663bac1e05f1b63ad501a70e891a24cec193cb53b26ec811bd4b82ebaaccfe5f71165bee2447e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d097e5f2d9647ae1a830e4fed395fe7863060e2c825f5c782790fe7f7a704aa22ebc285178f13ecd8afbf7fe0930562c023100a2d7d42661895997c08e1047420d8f36f3434202d6cb507e05c03763466f569e1d82251807ed06a428660b05a7ceeab10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023079b0dea748dab94782f7fd1c0a279524902a21834db30647bf0e86609b16466aa471d3af76ef8834f8a6ac05d4ec08f9023100cad9fa65686fca9a791a9fd6bbb3210befd9bdb37b45adb1f157e097aad8e3696c67150b7da4f4ca2e2bd554e1b1d3b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068be3db64b99f66a33e0fbbc60b4172852a8ba1a693d01db08f963fdf6e3aac5ef79d055bc529f835a1fc2d32a1e79cf023034856aebe9dc336916a5c92184a1a4a381cd662d6b1c76e482f2346d910328f969ef42f69352005c6a0ab119339217ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b87f43aee4aa6e1cade97f6878090a0321fbedb6a1a9fa6e60e8d92965ba1399b6e4287c4c8611bc2114a202126509a5023029838a25a5016e86ef3894e6a9b7a2d35bfa7579951621d2a4f99f2f0f21d3b575bcf7aa47d99c7190d9ec225cbba7b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302606f90ec3dcc15681ca6db5c6ce970c4e5b54efe19f25969002613ef19c6f1c301ca09db2cbe9c764fe7833b7e84cc2023100f4d1a97bdadac19bf453a5a0468fcb119e54088217add9254d4e9d86f5aec1c9763bdb6e1045d4dccc0322c066b7099b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023025aed1af090b36f62ab2d3698c70e62c975c491e1583cb34a2248c56c5bf69856e9f3a1c0632d413dd42b5c42dbc23cd02301d710bee1975149bb6fcbc9bcedc7819aefa44ae92c6fa4e9076e34528aeb886fc5bc5b6f5831fec5f30fa69017898320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c666fe8b79136bbbeca9fbf2b000753a4f9d8d96129b986187241eb5ae036276826640377a84a76deb32fce5be6436c0230027e798161d1a905e1aa54763d5f07114188910971213857719c40b26fa3968079e09e35be98068d730014635ce5bdb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f29502f1daf7c32a65d8b2040feb59634b452a001d3e6f7c3f2f263f6aa8b001fb0c82b2d0a9f41548d15a17307c91bc023100c31c98ee5c08aa79d0d27041e6af232c40ebd78ddc36a98a54c0644cc41b7a95100b1c2c3ba91248b787f5f21ae3acd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067496180ea1bb14bdd3f4cc38ca598a0a164a4e8d1cd5b8ba5f2dc8ce25bd0c104c2625028f68f224b1be6aa02e02f65023100a0ede58dec9c38e6d6ccc98fdb852948ec19c800d8e3777a33cc5879851c1c212bc759cc838173f50d6c10b6e3db74090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aef309c93128ddcc7a92b3832a071bd20d0533d068e7d9f0df1a2a8b9748e62fbd3d86ea32b8de84365b45b63d95e609023100b2d5be9360c8aa8b88eaffbff049d5b1e46cb67b291af2a8ca5ab1e04e5dd78431d3115e2710fc5c6081c3ea16f387430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3d072401f8dd2f2d3bc65e03f20e3daa56e21f3013a8f9165e4c86413f6a1766aaf5af1b374a98174d74eece48c8c8b023100a5ee0beca3e5b64e04b5f07dce6fc70d31328f0d1ce0a8fbf93a221307a8f65d1e3a7780a439ce1bb3cb4228e35bc4430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8e3a5add4cf97f2afb710d339c2b50bc13efc7a2fa57b62fb466e995f0753537f76b9ddc31c6673b8f38f8afd114b80023100e83176150667ed9f4799e069163546869cfdb14af79e5054a74f36595efe59096e370a9ab9eb6e9d0bcd76f9f3319e9f0302047c435bb5006730650230586037f7cd4499d5f82b086ea80b9a300b4930434c85096d16f751718bbd070d2c0d0fde0f0668cd2a80c5edd4b72a4a023100c06544b27a7443edc03b1dfd1495d52a50b7b2a5ee748efa1d9dd786b70d9a066fa42d6beb7fa9d780312f89d66c046e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0f09bfa1dbd95ea60fc35e3f9dd44ccb939773f7c578dc7750cc88e5bfa1a7659790973b7c66e9204293c3408fb355b023100a7348d1c5fb45e53446140f4589f1f638bdb50d47ccedf75ba1eef1f3c58eb6680581aae8a62c0eab766871712683ad70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230768d2a7a26b4ec508ee51539c28ba30cba9e77f20af0ce0e80a1398312b5856bc9f67e98f7d7c84a7cb875e75aede2bf02307fea1959bfdda932cb8cea8d26e4b6ef8f79109256199e188ec94d28a995762db6e804948534c4e988073d52dbaee9ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301cc90a02ffb47a3426bec638dc7bbad2fef6d3e61ef31f46f0762d34a43b5fd89abc93c194a2086281c44377a6b59d170230064f072217fb5a1fb4a6ad289d1147851b2186d6c92db0ca763fd1fd402b3a39b7919d36b40e7014ee68eac7754c49ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aa635a2515e08f421651b3c30fffdcfa485311ca6cc2cedc853f44f044cdf10664f635449eac240edee512ede3d2232023100dc3d362436b335904fb5089a9ad46200269e339c73cc056b31e09286ad11fd4c954cfb0a8ba019e31cb21ed4dc4d23bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f855775f442e0f239848739314f43aa4c445ff69de262fee6e0add6729b486cbd9e58f233a67e7b9d7a91c98403a500d023100aae7b4e8b40c1b37b83e9440000343cb829fddecd496fdc1d5afa7e8e6093b89e92c3a0649c36f36c2e6e4e3d72ea9240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f90ecffbda76be5bae812534c3fa03a054d1249174b999c8b039215fa4ae59a5936897d31ba443dc986bd52516a4605e023025cead2d22195a0a5fcc842552d79b91dd1b9f3d9afda1a3ee572d4c7d8b1d3ad85710d906261679729c8444977970c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017e2867572127dd741c632fd08969542f2d847cfdc03e4dad1b0466e21cec33ecb7195fdde14bd0a446eab0f607dde3f023100aef7bf88163d7ced193776fbe6b64acca9d61bb2fadbddbddd7483d195738913394734075bd2c1fc2c65837cd96f39390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c4403b8a9c13a07d17bebd56d6a344417780559aefc475516981f83eeb7a16d04b16d989d636a10436729f731b8c551d023100fa7d2d1a8a4cdfd463254b71bee46c48ed60b1a917e9142bca94ef9ac547a381f98442ffdb25517e3ef036bbe84a2b9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c37d558fd5fb6f6e7c6289532f9ae198effef8548a0795b8badee67874e7cebdbd538479196bf9bebe8afa2234e724a023041f51bd41e4fa5b9d50742428a4b7d75ff98889b7b5d2d26fbf33e82c34d57dc66686943f7b6f037c2d52920ec01dc450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301692e1faab1e636e6825584e5982de1bdb8606d5e09374b9366288f99c11bf12ca5de5616bd528a8a4e1d842d5672b1f023100ba07f3c6e6ca10b7624f120c581bd9b4a2cc8a8ea67e6b0d948b6f29fb1fcf19e8cbd3b0415fdd718ed7c8924dce9bd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306be2c463e567e0a0fe596255695e1da50b77b97b02e545b7dec388c3ffb5b1e5c975dfb0a3e4d8787a0a25f0fe4de418023100ff2bcf42ec0d0396500d8dd123ea733ed9d02c7c8f86754fa70183dc5b86044c6552c1d60da2b52a25cb442f517e2bb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301924678e2914a0c3fb00977823ea582caa98bd17201a7656f1e718cbba10d87fac9fb57bba116019a7ba894dabd94a54023100c9c12ca170e6c715e9277fb3991f91a94409b8512f9071d9a5b4dc7082cf092f7c92f03352332d17954992e0087bbedd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f889b37c88085196c6280f8a7a8e2f14ebb79512923dc3b7e359cffdf15338ef10431da5ea2c5027f998f21207d9eb5c023011b76acb8b38fcad33a853c7e77f9935a3873e91a9668cdf45abfc8132d9ab507e50e2ccf966e341d7f543bd2f46770f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305de246196a0b7f242e2274220cb8d6e098f44ede26cad9a3bafd8e50f471151fb166641f44796aa6bab0701d8296b71b023053239b9153e2918df38b3fce3c57634e0354dca71ead81e294e8d29619e7e49b8ff566ff08d231e627c95df71356da410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e08ff8546d31a75f2ae5f264a9cad3e3c34fa9448898ffb64096dcb9eb11d058ac149cb51ace482ad64bd09aca4c639e023100f2649d66b54f7e7554d0094b62f7e1acf2dfd6a0939dda3b3a429962a3843794a00f7e0b2a710a5934cdf108e420ebaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a60a886a37e288d79442d0a84481ede8beed9adc68b3efea545f3c0cacb9896b5243fa57e5099e7657e234f1d4d1b8902305d8a3ccaec562d76eac53e4ce16b9bf0b9264549baaa43dda403035859683f28050be6923dc6b85bbe33f98de42f8b4e0302047c435bb5006830660231008b806b298628165876f04ff5851a6867bbc1c852c188cd80c0e0a20c3d548f8816aa3bafd725a8812a9b53b6ef002425023100b5b9e30162b1597789bf2e2c29c9559ffbd5cb9bacdf132388c12a0fc7f3a890370c894ad1cc588bd9bf53c48fd73ced0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bff0790d6024cf4042af5b798861b44c81f9e0354c263f3c0107967c385352291480b9095c05787c5000cf9ca8560f55023100e1b6c5fb61c248734ba38ab695aea9ae474069da68bcbae9a27a872956ed4452484da3238598f4e3bc2f540a8ec1381b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf78cd31bf0dabd9cd09e2730528cd9653aff02ba23dfe42fdacfdea7b5a6be3c77242a0bac097ca2660dfd76736f22c023100fb315ca59989949c01f8197baf743b9446fe3aa23a8f536e5ecc21a05d9588932b72c4f1b289a0c8a1e606b222beafea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2e9d2b9a157a3c017af43f2f5cbe703ec40e18c2118ec48b4d467e9eebeed83062418112cc1bbd44e38dc498c83e351023100a9bb2743168a6a2ec3308ec48357b6f1568b38fd0e4678e9523412ea6715bfa13b5e03f4f907479c4fa477cc1f2afb950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c3625fe0c13053fded05872c713230becad7628ae7fbdc5feb247bd2c332771352ff5d205519878d95cd26a950194ad023100c7513f4b6eeac02b09a24d846dd5885804079fcee5adc3a6d851b822773bdf9f5fb69d93b837662db017e22e95b51c2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c62bf20607f8435b71c4fca4866073d590e0bae269667f50a6585613ed1530c53a732947be9cea7a5dedb088a1494f7e023100a56597aab14f496364eac53a7f12e0d9ff97534214d6ddef11ea7fbeec6201137f109f109579e482100a21ff1bc854c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100af1506778f5f546975c4a536f0cd8b8c7a7749c6ddad3bce941681950ea9070d3957445a9ea01047f3f318abef7af15a023061225d3c82abf328e0d5e82bd6e891342f2f958edd29940cd9954c8b7d86bc47eda82b3b13bdfc9c420c7c14fed5ece70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b40158a7e379ba10f7df51b83be336d9b578fe9c3e3d6e8299cee51a721e731376187306ffa6d8ed9470a6de4f427d47023100894b0f39a49a31c5757ea5b4ff66095dcae885672de411a0b258baf8d234b2518af253306d6e2ecdfefbe827537f36920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310097697db87833139f5f0509825b97b8a436942c006137254a3bec7bbb960e8ea3506bdc9915600602b662be68d097e529023100bb963c12b137723df43e1cc6bece5b506041cd91c7ec48dfc38fb3642d09f6ad2484dfe59e4662fe03e3eebac32d6e7e0302047c435bb5006630640230635572a98e16e9285ad84218e9dc40892856c1315bc2e68e2b823b110c09c235d756058bfb22d36b2095ddf786ad3676023037708c554e8453bb72e41939f689e44cd66430c82c3a95bc42c34fe071d2dd1840e6d592b54de18f0171dc55befa2b6c0302047c435bb5006730650230198dea91b44dcb5ad21aa3fed4f191ea2e84146f6c912ffc919c294c254b7d914e9c3c643135e3c6c5fdabd8946016ff0231009fb44fcd15d89ac7e79ee4ae3cbc8093473fe1a31406458e6ab98be5bcdffbfde2170cf2d2b34067dfe2f358684beb920302047c435bb5006730650230560bbc92fbd02baa1b011b032bf601767becfaf52b1a2e99f5deac0fdf398c7ec00f6d9accfc4184c1dafc89db08dbfc023100b30e5528dd2fa6256fc564c93dca573ec847d4f94b521eaa5c8004263d0dc1b7118cd063421e85d4f05e82a67e7c47d00302047c435bb500673065023051c126510d43f3cab43b071ce38bf7034db0e8276a5177443ab0a42c6a3aa98bf21f8e2409716cdac7b71d11de7f5914023100df6e27e66975fb37ddb29742fb50a69678a3b00608b41dddf81f747517773bd6c222a110541836e8d550907bfb8457a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230238cad26ed8288548371759dd33f0418ac539e1095357e822d6ba6500b07efa463f61a2f67a8658ebec2e0a9ea95bfe80230759a1f09838a236ebd432aec1dac61d86d4b4f6871d552e33894ae7afe0b6c34a89e0a58ca4ce7893fb4c5366abb93050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093550c4d25d5be5fe758902ce18cd713e5f2c83f1abdea6d1d6e288e59d86faf25ee61d47b1937e10ab8175953cc0a1a02304024f9fcd9932b13fbb75006c50f15292266555ab9ee19f48ac2ee9e63f365f8c5f4a0c06c748c0f5e1e2e5ddfa2b8580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090ed7d7654da9196e3ac8fe18a6edb4f6510872a3535bfbd0f4b04e89ac9e739fb2da8b4b0e1c3ec3d1b94d189ea492d023100c45ed4966a54c6476b33fac642c0eaaaf650268494b2febc075f3f3f385dbb00622fd9b87279cd183ce6d8a8e710dc770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303007ae46ba427de4ad8dcc07f08da79d32310e0944c9199e30f071b71b7e0775091b11bdf4b3fe1c1391c59e9ed3323b02306c685f0e2d0ce17d1fb4dc7336c8023e508138522ec33c8ed1ab0575ba8e6d3633f27455a16f646fc8e7ca82c38637350302047c435bb50066306402301ca66547b3f41e8b22f2b88f26ade9e5a58a8eb3e9971bf073977e56f1054aa38a82f590c54fa3cad58ebab0f97252c402305aba6d645034841edeaa98d84dc6214c9ed954fe3870a51a38033d475e87b7361392a446690f9593f2e01e8fe30aafc10302047c435bb500673065023100a1d450452037a085fb1d7861176ee45aa3245e5f629a12ff9361536379c3c1ecfd4b751c1e25dd42a20d6c33c45a74cc02300422b385f77bbb3bc34eb570d8160e82cf71799b3a307294643765e0e3b24304f8941a797cace9724450d4392a03617e0302047c435bb500663064023012e8b502d720555351451d9f05ce7ba2de40d45a31419cfc2cb532916515846b5291fd6fc772d2237b7c701f10324aa40230415394e12c7acc3874dcb23bb1288271334cb3cbb246670150a1d8e15df81d77f7e6e98be5a252f64a173a05e728d89e0302047c435bb50067306502305c683277781852d5894c24146d640be2642e8b5fc1b09ce340313403b3f98389952d131afe71abee137139aec7f61817023100be04d8ead340e359a6830d88b7979d9f097dbf0ce118624623d2ffcb352e1b3218a4e289877728adab6d9e48ea6cf94d0302047c435bb500673065023100d52d6e51717dc4fd7ac292efe4f2b043cc98660c60b41de65b6bffceca42412d5158535bfaf92e9b83f60821b3836515023066f6c4ecc3e31939159d39cef8d5828414756c5373c8ba755c9a4fc93d214ad83215f806af3f4c1848c264b90b0d6b570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003082ce02d8f1af69c8d2a95a00208d985368eabc18a421b82fc2437c8954d7a2817be9cd4db438c43868bfdda1b1a81023100e19cfa8c2a190833de4a505480b00bd4dc04dcab61536b63ebdcb878dea7a21d54bb607d8ed07d96053a37950af8a5cb0302047c435bb500663064023014caa5c003eca2bf2c01290418aaf4f68916718f63b774acd34d2c61a7c8fb9690235222c4c3f75c8d8b136644123e2e02305bc3db843d5fdcf51fd8d4431ef969ae6747811cdcc07d8862d1dd4c9009adbde3c6b79ec6fa43b13da398fc755211880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230573bee8ad17ab606d460efc30590504395d5ce759754e271ac03a0b427c68c9e2eebc3b49c77201c7de686471d43c6cc02304963eb958192c4a5b293c1cc5cac21725d7c185d42be6c8f3ed8f547704c054ee621191f03c4b3c0ef12ee7990c340160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2b043d5c5a588c5d0ad83a3a5e2591da54e2ae268b9156fc01b678835264b155945378f5b033d24619c18909867cfcf02310089aa067b0380499b09545e0bb20afe03d005aabbd55239bebaa9d9adc4b48938a13b409c26387047b8504374260d53bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304feb3774b9d68e13f31f1148e02a0f043e5bc6f63fe89da5a7cd67d03e9740cd10d5cd0aa58a30967ecc1c98bba46ace023100ab303ba003ab0f1506d66803e47295e4cd6a9ecf2660dcb22834623d84445bb4705ac8aa5208e1c71f9fcd61b35dcf980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230495b5ef83e28241473129773cc8c97b3feecdb7aac17d3ed35882ceb9214e5252a8c51705e03a2cc20fc2f6c88a9340e023050044894050ca66e1ab710047a84f4c5d1b13faca4fddcf977a01de9e8b053e68f33b511f3bda961ec9317c2d44df4230302047c435bb500673065023100988b259383a5a328c639dd7373cce7dfacc0950693df0b1a4ad8e27bde8387e8300bcd6a850e6cc314c251bdf74bd56302306f3d099871fbfd14fc313d195093dc080cdb991530b44e850f91d0935c9623a1903184315c039b87f454d460968394fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100abf328b3796e467b5a93b98cbcb47781ff90cb8dc4e7260204026f7295fc1ba441ee78085d9468ce5f668aef2bc12e6e02300e7c234deef8ebc29d8c045bee9af3bca132b1f48c2ec6e025f70214632a988cf2df04d6140850f6dc40792e7791e9640302047c435bb500683066023100eb94540e5584371872141882230e19993a3a2a267c7d9b108361f90276201cac8911856308aedeaaf87df0b743fe23d8023100f8e5f13b5c181e745912c91bc4b4f55cc53cc493c1428607e67b4dadb6dfe8f9b2e471c7ef43616a6bcb45053cca2de00302047c435bb50067306502310086c5d71ec8ab0c5a01efd4820b2016467e1ec7c76d8ca9e8e65193ea12e9af521fbca15de9c2b5bff374dd9e459a8c1f0230730a2ebc8305e02d03ed9685977ce7283ccace8d2813561cefb41a6a3fcb6653b8368bd1614a6df1bfa4a69990eaf8a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304795943a4aaee41e08bafa10f90e72c8a3584932e205946c989e543a0929a4243a787cad7113a1a1e2e41563982f9e7f0231008424948dea7f1b198e896c434a41a929e5b7144d3483ad175524123204aa53c4ec7a83f7ecd8a61ef36c1e49a59f7b190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cac35c8f9b53eba2795c2c60bd81a3e26e28637e4e176830b04f5b0d8f98d0bf8ed99874905ae80a5b198c015e37d1102305718975282cdfb3cbb379544c089f721f9dea7ed6488d5617c302955504265394158da70116fe344574f9cf7c7dc6b8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ac6a0899e9f333bac31b60390bc698a3b832c6187f1dda2dcec186904225cdc7df8e4955a719e8048f490e167ff23ab023100ea91eb0c0a39393d8323d27ebe4c624851b056ab725ef656987ea77b5e224687b0845cde851992b0e1be438dc37c249a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056572f2d8d26a07447fc94060867a6af8e77896bd29e7ea0c10b4777320f19d59535449f107add54dab62b4ea5d6fe36023100e6bdb470b9a59aa25409ec4c496b547e0b3bb9e66e267c23b518f767fe2e7045009e90d8f73b05aaaedc41149f0f53460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051eff3b400d0847c5cb5abf0b346366f852b52df45cbfaefbb7595a344d6bd6ee73f1e329fe9c8023ee8368669dd520102305cc207bbc690b0bd764686d8d4a0f93b1e389031f803d021b57056de156d9d8592fa5a2b8c9535bd3f84c2930805d9d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302dc5b15e6e853de2e6fa4ccf34b750a89552ca14f1ef4ff5b2165804acf5087a087597598c42b33a95f8094b1a2049c3023100d7e281bd0e1337dbbaf1faf20809935c1b6e2bd36e52537b182f819cb931d6014cb3c2e64c1f41d92073e1b908c8d33e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008502d1e6b8f80b5d89c6c555387774127061140888ee81d7cfe863398c125d7f72afee891b01d0b8bcbe9cdf1f4eef7702303d3f6467606bbb99812d8980c1fe2847a907c554e070edc14316b8c8dff6646b44d0c57beb8760c255a5279c07118cdf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ebdf2b0bd80d89be2c55699a96c97e459ac0163a11e48500fc359a352ff56a4125b779b93ac12f216edeb3252e2fdca023100c194855588d00a55b88033f90610fcd182fb2e0c6becbdea2978df176af03628457ec20d1d561fd5f1e7412ff386dd370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d78b30e34147f062582a2a282f9dfe5a612f07fdff353666538b44d1795027c06b1763dfbb1b1e2e1e792e4e9ace16602306fcd8fdf47ff1b7acd84f708a2852cbcc7ad819dc8026785c1732b6758cce8e931a0626a3b1c2515f8414da7850aa1ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d8a7d169227c81ba701d9a9906db2869e6c853fbbbcd815e0e14cfac41a50ab13c181b1b7020d7528ad276391c93980b0230106c18fad12e57d91faaecc995b9f16c0a13408b2087402e560b9c6fa0a68e94e2eb1b905eb3c88281540276efbe01c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c570a97cc7d683d37bad2d0d9c6df017ef96877d94a69468a35a6c904680226c3e34d680b0bd19cf7faa3d3dfeefccf102301ab6c6031a245bf37a3ae739508b7dad20615792fd748e7feb92f1e4fb09f340b5749918c5451d0dbdc8d4ab1f293d770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306666285994bed44be4ae4ee9b69fe69ba07e58c48ffceaf5be0dfa8d271929559ed9245f6da3cb0ae33265abb9b38338023100c7cd2ab7dfb7dccf841653b17c8c2602a5c64f8109f8164f2f55bc1bc63f6cc4605a400bdd3189b853eedc58ca807dc50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230300a4c7d574c8c8be9500b9b8871ea4f41d789ae802e6f0c1a96ca9a4018af1d49c3dd6dbc2cf0318f4f3a364aa9b88a023051bd3ed9efbbc66455ca1854cb65cf23d8f4d6b5cf167326d88c4723776a2266548e9e20e35de4bdd238c04b12d866f20302047c435bb50067306502300082c57a761e40fd29fdd38d0d7cbe505bc035508f8de5c3eb22dea1ddab548790ed9a2440a25a4d3b1961de7996e4c6023100a8d6a520efc1317e51c486baa419c7dc96d43b2e849880c072fe0bfaaa5eed47f2d537f5d8e167faee91569417ac2e6b0302047c435bb5006730650230369a9f2930968db7d6b8257d7f599e603965126c994e79e3f03350358ce043f0c8a5e0759cf5603a3982052830ea8095023100a2d99db9d66718aebb3d78c48fa0a2262a48cd82e2cfc8be3170d13a94b7d8336e12ec950893976d4be920295b95b7bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d21e8764eefae5e53292cb18af2934ca05379506e3b31eb465afcc4268baadc8247cf723cb532c10135a74f26187f6302304f9e01a55fa28e0da5b6b8ffd31951a718998a5491b826fa48244346090e21a6b5c65302ef7eace515e4934e3011433f0302047c435bb500673065023100bd444bf705ff7447fb159262424690cf14e968834239b3919ddc3cd555b8a4d566dc3dff045af52ba9e8109a3df6327d02305841af28260b9cb33cbf187374831a185d5a80034639a2332311014b51d77e505ee8c365503e333f453f09aef1f9a7010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100afd6e88fa105bb976b20bd910ecf048a1a435b2b18d134dbfac4ff95af810ff841feabf056a561448cce6ca93ce87083023100aa9666899b67944e334a9e6b2b762aaf4f061986e66b611c8a95042f3bf0a9c075ef87e33d4e5f0082b2726fc2a9e9fd0302047c435bb50067306502303f9026205ababc3d65adb71fdf115a3a83e9988aef5613d16181bb18efff4dec6fd314b7b2fcc870396c7ad7a44003f0023100c9ce78889b55b35bb60f2bf2063ce2d03345b666f02c584470a73e972ac2698553148c4507538fd3dcc6c69646a646c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057a905be0cbc1fe79f0c7aeec539731675b667280df203e8a52b4bf83debb4525317ca0ec1e28981010206806cf958f80230570b6cb04a16b68a9897b49101f0e5df4c38760a1453f75604a6b5c64b4f207abf9ed2c4eaacd78d31d6388e39c1ac430302047c435bb500683066023100c07b8808139037aefc20d4518e531425f98b55665b956d555f0e791d870024fb0a627e1408d3622d71132f8bec3e4c70023100c43ecf69f5586d75f076d3e66aac0cb595fa22d66bceb6984543234fdf374e2cad00f26689d971d936f549467c8fea7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0e00578068755254cbc22e4824cfb0c7a8534fa22901fa4fd9364eee615fdc5e4ec3f50235e2e255b0a591572a88aff023100dee7fecbed7b959bb8cf6f29d1c35cbcf574b759a5f6a0c68f211413b1496c49504b5dc940eed1690f0f6dc526df0c660302047c435bb50066306402303b80caa031fcf2bc1cb59add36dd511bf1e097d6f0f1615be525433eb7932f3e69461b16704ea3f1aad85778345a6bc10230763e37972bc398e36ec9356cf07aea618701f9be7b6ceaa5c93658076b7202a8206307adbf3b525bc1a59520bfc3af540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008734e5d89e640a05c1955be52df5f10b2b92580234fa359e67d0d41111f7035412cbb3e5c2bc59bd089d0c5c2d9a5480023021b4b1c181c268a22389c76f03389ce019679d03b296a66e7daf4bc57cd187ba12c31b768f58368e51b57d933de909e00302047c435bb500673065023017d7bb2cd9a8411fe9e2d39ed2aa77fe51bc4f302b9ef278b85b5ea46b945c7e9cf49c61019febe8663b453eeba30ceb023100b857cf8ec1e129442eaf6ab31522535b6d03f3944552213e28f548f0d192f1d7dec5438549d82a9c53def348a99036fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074e2dc1a494236dc7396caa260b36789d7a8831f58634c4439cfb006f771a51b0ac4e54a6a870224fa8ea3235a318c5f02305a8a39dd183410556ddfaf4c164ea3e731dd5f243e1d70132d0690731ad29e8e03c0a40c7f09a07d5a38b761cd3723d50302047c435bb500673065023100ec08f697fc9ed26cf2a7d7f281ad5c68920d2f62ea345eb002245b2341fdd6ae937efb9bcbede77da2104d7b55a5af3902306cd9d1e510bf0c2304352dad4cf7a88712941980221ffa2d5118315a58de577bb0b84747dd3bd31ed3620e61d00af5730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c057743f68973b3041e6cca403acb87e7353e2f1bedebfe9495164a4f065c912ca571018e92eb4630e9aa145c4b2f6b023100f75b63c56c42d29644ee6928d318494b3fd3d13c450d8c166999042be7900abe19274701a447fda69bb70de400dbdaf80302047c435bb500673065023100c6c995641414543ef2168354f37781ded6d265f3d47bfb3e8bf9e4f93afe842d2abebd43a955f9f20574c19f7ee3303502303823b21455c78de3f35bdf7e7488b6f7f9d6c3ba28d1046ebe3e9173259da9951c1536d0961b5fad3f50660ce6ead23e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073451653cce9f47ed7cf07882169d28b59f697144a8356afa6386e82a22f3e69c3a0b4de74567e153a0e5d4a1395b342023004b020ce8bf867ac7feb066b709138a328e08f379e4cc87a8eec77cbccb156bd1cc41caf46ea5564379f1e4cb056801a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae4e01dd94252e43e758e071846aeb12b7c5cfad9884de94f88896ad8ad84c53448511e58b3e42a7b26f683a29245198023100f028e46fded524f90acc2d4049a2efaed98f739008c882de7680dfc81f335a18fc265f1de0c97a51b4c1bc5858eaa94f0302047c435bb500683066023100e18e32fe7d9606dc9a6d398edb000c2e3ebcc9c1d22eade4f971b4d5104cdd3ddf4c07cb90332e184c4c2c55842435c5023100c77ab1991f0144216577ec59e9839d716060579b3fe24aeded34838b52c2eeba9366a177aad9384f738c0b31c56889480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a805f8ab0c01ba992d9c76b072c5f3f771c93e2feb107e675c95b837f1efb455c6fbf2e167c98046c2ffc2eb782e067d023100ac148f919e7bdd8f7c92927778a8349cccd0b9c241b3de19fb33fa6a263550631eabe6e79c6356f45209ac9f89b3be1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304162d95906fb9c841468db3119b94da6a9f2f01dd98102b44b1668a60c1be5ab9ae619bd217159fb9cb326eee50b454302310097a8d1d24744dd95d7c8b45ae0e4baaea411fe458b1df6ed56ae602ac6a2a9fec8fb4a249725ea0f7434e84d60db63bf0302047c435bb5006730650230722a80f5524feb09c89470a32c3d7a8abe20459953555067a4f2531808ee2c18d516e42c3eb83e50a1c08e59ad45fb8202310085c4dd2a6e570503d8aba99618e359e33ffec57543169de4d438f71e129827b7dc3acf9817f86895da1d1b4abe95e9060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307fda3d48279871446d17f36deddf8d0a3633987a8922436c553bfaf0e24756bc900bd5ab0c46ad8fb6c8f2faba6405740230393e8241b39eac9eaeacaa870ba12b6f018d54f61f53cdb463ce0dcdbbcd8f421552558ac3205a3f9b4c6db0b369f1210302047c435bb500673065023100e24a9c95191d0bc5d4e7ec0b37b5d9c3fb7134fa1b8c5d7ef15087fe27839291dedd2e688fb6389dcdebc2eff2cc3af402301448e4e84f0611c6c97bb7586f28db0b7588f3d636e7604a76aac5c0c3b42b810c53a7df4a04412b57c5a54cd6a5f2330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230238da1bc2eeb95324de15ecf628b7762e998c81d9681bf6efbac447bb24d36ca934a05683bbe65a5a9af1d6c9d93942902302d8783871dabbdcfe8c2419acad3096c7623c6b7d9d8393407cb12eec10ade2950df1dcd007ae29cf233a1223794bd2e0302047c435bb50067306502304e9dfbd397a11fd20ff06f047cca263c27d95813ec6f8e0aaa8bb8d6169ccd88fcff61d4ea4b5c16f9c473b9f3b63ee7023100823cb518ebd0c9244f42804d99789d540052a0c6a34979de2867613fedbff5cb3c27e2aea6a3bd6f6567688af0b0160a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305469159b106ee165ab59875be3c1e69a2ff7ba51af4d27a122a82a364b7e45d40ddc82a38063fd96c731e780b44e1e7a0231009710a7c3865822ac4b93c0d0d2a775bb9cd744db60db5eb8c6621818f498d58db71654dc06a9d9b9f8591e18a8be6c220302047c435bb50067306502303bb500ddc6414b78dcc3ef6f1c6ea4c4851a6b6b9e98c856c3de6e71a95c9b4bbe5b55d48d50561ac99945f1bfaa2882023100d0da046a7efccf6524eea11948f2010ac25189a58de05f685795abdce17ffcd1529ab0cb0cd63f30d30db988bf2060590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc7e6fc347e2a9d28e9411733eaf6dcc0d15483986f0ec1ee9d830f7a1360c7ddf664e2a1d558450ff823795777bba04023100b7019e325a5d4000123b1678fff12986cad7fa414c7aba0332462d4743136a33b0a0ce4f4ce25f482a2ae4a83ab478d70302047c435bb5006630640230172a326b50c34b1e8e02a4181281f6d436661994164bd6f931de68a9081ec544c1cef21cae18f4c44c26c6803f3b2a2a02306333220426b945b5783e35148846335ce1e342142c485f7e3c93af8900ab65bff35e7ba9e36a9dfa69440920232c3cd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230525743250b35f7f40627c1cd6f1b2557ccf69065db88b830c7163cf4c466adc7d350eb7d17c5633a6ce211fcb742f586023067a0056309f258cc39cd0b00f68bfae5db82743b3eed974fbcd7ebb8e4e6f7ede873a59b7e173781fa65ec7835cf446b0302047c435bb50066306402303f38b588a1fe4e507c72d24e8e970f7648e56acecbe6b97d596921df88be28cb3009f163ef7ae11c29054eb096295ade0230481248353ab14a5bee51ae9c5388f22a0533e497535c906cb89271f5fba5de5cfcf24aa2f1af1d8c437e2b21924dbb460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e20b050460f7b1d18084cc0d909256e2b287b625dfe894d19396a4cba2c44b4c45750612e680aa9f4199bdef42a184c302301fc10fbea13c7e28925854e4f1bc3c8dfd9513b95cd35ac48c12cf5fb0068f547dad2584947930b568e2a615fc3716190302047c435bb500673065023100fe25e4704021ece25a08af531eaa6e643d711b6c40b5fda8d9904fa20e15165e8c2321e52259d1b576415996a8437eee023058c721d50eaf14a37e2957ec86e6b77ffc3e9741e467e077a215c7bb8f28c78f2ce227ffd3eda3aca16affbf81dfd4160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230651959449630f17f72b9b876f5513e834e242a5afcb586f79ea362f0d051cd1422ecbd78a5c763be0369ab7c2332497502300d24903568d9510b0dfacf04dc51ea24b411b7b1b72b6b0d93f33f18591d59452558cfbc97a5c22f6deae7385f8999c60302047c435bb500663064023052f126fcbf4bb8ebe8bd29317f8ad397de200f2d8de6e89c9e3f0fc193c4fed0a963244aa8957d484ee39c82abc8975802301cc327d15125b3c467e6b68769abc6f0c70745cb2b891c2faa69030162e4f57d6f59726492dcf383afad3d040286fff10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ab66b926bdadb4b565e76a777216adc8a1f394d257a2b112435d579fa02dbe5168f5cad589e5a257193f443ce80b97d0231009ce1c3ba7cf9f48bf0bcc82b2e54c3c127894eab2b29e526ef38338213498156468a94f9a0194745293b509b3b2270900302047c435bb500673065023008ea6105443853f12890220c4d95a697ba4190f11e7031176091006c8bc0f039fcf4d4f063b451e50d3a235e5097316e023100e2b3cc27a173a9cb17736756eb3df6384daa280d5bbc6a1b1762f4b0cbe9224907eb133a40b729ebd996402b9be7683b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1d4aca1b779afa3946ef80654d33db1e4ae0178cc00755a6064be0875f929e032f10d7f4673a23d912ece1b2c6518680230054636ed4826aa2637fbb995a71e0820fc378e085bf58be36680936cd69583a26f5aa623412b48c32e7c27d5b9694fcc0302047c435bb50067306502302879944357a7c46525f412046683035f00ca207ebdbc325ed29aa79eabb1dedc9767094f0380169f2ed2c6490617f549023100bec8608fb82a6b53d2d157abd9e695bbd59e74ff9538242bab2a3aeb8cf30fd49c1137e57fd39bc494d0a29931efbb7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c4b7c2891c484cb22ec58aebe68ccde025bb0b06e7f7d08166305e863120124d1e0ad3baf9d5b4668de6a1cfef55c6c0231008e097553b8b4584644e794bd5850880a9a234ca860082f0f131152faf61479bedab060d3ea3d49bf4b0545c3fb2156ab0302047c435bb5006730650230035265698bce52fc7c8d1caaac1bc0342de9a1212d04df1dc1a302ee013aa00d97b172ae9490aff4223d13aad0490642023100f58993a87603170028dcbbb0ef80cec233c1eae562d3518feeda8344413680db1d2cde79275d87ee87f88e08db58ee7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074bb9c636622887e16508f99a0d18720661fb30a2e2382c56ac6be6fa4600d9f9a4bb07caa686830b6bd5e6f77c5027c023100db8e61e97d802456c88e4d56b022046d191d5fee4e748788375aecf0f0b8ae29b8de6cff7ec84262b6dcd468f90e4fbb0302047c435bb50067306502307232aa22e51aff8d877676df0d062e9d3315af38673b009c078d673d933183742360b509a994f488fad8dbc6550ed53e023100dd3e2321bc8cd4f287ff4f9a4199814f84c595bb17eb944022ec1bd8caa9115691a3d70c6c97b239917857482e81b18a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f042445b4f3acc5cd4a7c9a2b31564319fb916350bc097d0a7d2c5a408d4dbed2f769f28c7aed82e7031825c2d28a2c0231009ca05e9e0ddf44950a5a78df4908b5354926a6f2510c440181a0c95323f72e36b6f31e9595beb18ebe0282393667090f0302047c435bb5006730650230634de01f16d5a709b7772155a9f4a70155ba0385c91aa14164ce47da69dcf36ff40d3e5e7bfebd23e807ad009af43340023100ab0a2baa0514ca63518f92bd5f054dd955d11a4bb12ecee3afbf8cac908f957e838d0d7308b1d1723e66fed2b9b5efa30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a5f61a69fd596f94c3343fd460e54ef89a5d82839c942eeaabb34123fcbb1b53b1b17db373361f67a1685737fe4fca0023100e69d9d59076fa3da662212482ce7157ca647a3410834fd6066c2c209b5889ec392b5aeeb27c0e0661ca76c3a1b76c53e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100da5d4f827d11fb7196253e05055a91308183eaaafcfb1a9c392a873d357e6ac39395a023f204f99b187ccf1d8a41614102307d60d69b67247dafd0a7a153a101a64e1deb0c037ee290e69453b4b1e0d36890e3de806128dc7f38a5d1e4d2a4d625ac0302047c435bb500673065023004184af00ce1e704775ecf5bafff91a7ba1a85ab37a35205b6d1a353c4c073d4be681c8da8237c65130234bd1f3474c8023100d9f17b7f0a7ea15e8d2670bc90452956ab2766f039aa5b0f5a7f39466c823ae42b8cd5e231a3dc6efeed17edafbad5a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310096f364b73305e804b89bb1b7c927bee1a51500d795af32cc4b8d8177c1d956be7f5077a004d688b5b29e6c831b47fff40230074c86b887e5c93dff57b056522debf9ea6a8e0ed8aca9c05158b593b6bd1b19dadcec36cb6fdc29c35ffbe359e6944a0302047c435bb500673065023100e91a5f7ce58efcedc140e2ade4feb37275e2881d0e8e6ecdc67fcd526916c9ca214f2e024cbbed93cb2968d3ecbfd57502305d74307f19fc08c22fece29ebdaa5e8323acc9d7321851c3421549d0106e71297aaca8f300dc3e2d404aea119c8d04d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d8828b5a406238a70becab2b64a42c5dc725ff4bd944ff718a314476f1a688509c7d6f948af30e635d567dc43a52201023100e8ab504d7fd91d06f0140942955614ee9c424514ae5c2588d878fb407c8d52a4e6738bd805f1005872fd21a7e3d84d500302047c435bb500683066023100b803ac1b98f1d05f673625369d6f9d2746bda641a423169ad77e8fb2021dd3ebfe1fcba60267484ab2704193d487a6d70231009d14fb281beb532b85e883cffe322499ecdc8c3b32a9fdedd273b81bb012dcaea0a35df9cf3acbd95410f462642d8d870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023013a9fc029a55d3db454744f4ef1a03fb0b482763a3719c5f1003c2b237abf9f9ae2c1c0d029be6f15dd65823036b0e0c02300aeeb807ec58ec0264aaee77c640f7f5180b94199c12144dd7fa9bfb09ea2e292aed182c4850342d835ae8743eee77c70302047c435bb50067306502301d604d1fee92dced0657919b08722a57734ca27cf48f26101b9a311edb357457cec52741925af41c352b59e75ef56e6c02310089f873c4a105b6752cb4ce5a2c8b3a25d06de836dfa8181a4852612d71a5ed455b07712d70a4ce0d2f3a972d5989a1a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023043262b2e1dc8feaa770d8f02d2d3ee9c01418a03748e8393c0d0233c539426dd33b5323e01a933c876c5978058e291e002307f38eb947c4c85ed373bf636df8880054752306cc3a2708408a1b3888af8a469a594b0424a58225249133e0dbc4597b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b77d760da5ac13bb5d8f8898c32bcaac11f80d49c95251eaf0e5b4096218def575ea424ba0244c510c3d62e8734701502303201226fb97ad23472d079a77d6f65e7d1724962daf85683508c2e400a8f84864186a7340520dc5f1f02df1373a6f7b80302047c435bb50066306402307752dd1212745f60f279d413732f96cf6200e89ebb1053fa1f1494687a4b2d8f0e9ad747f257a9c28010e92dcf8a982b023037bbbc0893de2577489d07ebe4a475b440adafd530be22734af8c29aacc6ecb7fef744f3ecb7e4e04db62034100662c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e9440ca6b24c3998c163e09ea001b9875e94490c044806ce87d1fedfe3077b8b18edf5590fea23e4095f0578e35e857c02303b640d25441feb01d0903601e5e66dc771ce9d12efa067840b566de1b35925a414c62ae11a8f05034239573ba26bcfb70302047c435bb500683066023100bbb2526ec4a895834f3477cab0e7faad9a2f9d983a3d42d14f178f178329c99e7f03e0eba2de8075705c417149bec636023100e328d102316102c7e6f6312e36488212b19209834d1d91a88e58a4462ac535dbebc670e145a123fd5472f430b8d37f330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9e22b55adf3ee59edb2f815861fe80ed5c3005a4c62953c8ef681bde6f93c3abf12f466939465620b1fcebbd44588c7023100be053775043399a0260e4fe03a498d09e0e9eb066cf595176d4115873c786e2e9fd908db2ae6e32276e3b6950939ac8c0302047c435bb500663064023054ee2786e34ac50e94679618b83dd898f9d2f83d552de88b96ccd6dfbb117c9473164e09cf867d934184b5c2f17886a4023003bae34168ac8be406f3c1981ea16abf6dd4eab2d0e57a5818575a4a2094b79351150f7dd626288bc7039460416172730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030d58a1ff2fc331a8eea0a00452385ebeed109d58f33046876e99279e79e1267238d76cd6a0d275aae892c6c0e396c56023100b86465348141d7b32db363284ef10559d7e1f6bdc9793ff4eabf0c4bf6a853d1d0c6bdeba447812c315c772a8680e5640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032081ab2529b0465130f4f2f5d436d7a245e3653359b2f473094f15e42583bc6b33f1e62a63c5bab9c03aeeb2317849e02304cf37b2ed23ecae06c2cc35cbf1f1c449b4dd14c4c262513261feb7e0432e0fdf4a78b38b7d3f99b7fe1824f069bba660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c60fe48389699faf61e3435518eba3e5ec44a4c6e6aff95bb38e6a4276b50f6787362a79c9d5d76823f347e34b769ba102304224ef17112373bd39df7ee08d70e8209f1db53890eb767fb229174b6450c4349c72a3fd695c5dac9d4e5a23f730de240302047c435bb5006630640230291a6b4c137849eefa5f7c76fd614fdedc63235379cc757352d3ac4fb63d3068923c59159f34eb70e7948e6cb06c8c4502303bb56126d8f936ea93588246661928f301561b0cffba3d6c8dc903f97feb11f337dcfa2f787b125ae0ac951b5ec5ee780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ecaca6f948a18d1530dec0a235312334c9adc4d387b0926921cdc79ac03556ca1ea62837b6aad4a26a703ea7a15a70e0231008e432b4c600464c6ceb4262877778ee9028c3f8a955ca66f356f07ad5d5e17759122707cd093103abe9fffdc81e852330302047c435bb500663064023013d8f8cbc1d2500bd41bf22f9da03c3fcea1363f2c96284be4d4097f0f28880054cc7517434b435c63d89be368d080c702303d913d426c85db91a4f6ff96b989866488100774e090f7a2673f9895e5483168d5bbcc0f65ec0aeb8daed75db3b701c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d72d861a938f2c872865bd448196c874999f121fbc3cf51d9eb6804bbc4eda0433e2d9d431805223e1f58b55657e72700231008ae12189943906a447172a351025c2d9da95a59c8133ef10414ddaecc398c94c0650a9efcd43603cd9cc5ed9097868820302047c435bb500683066023100dc1e1b450c196288abc22e8bfff9569ca539613c3d2b8db655f13103e8e20a135dd5b9596bedb31817196ba50d764cc8023100dc0deef76abc5629fdcbe76076f9fd18afca111c5a0696470fc63ed8d3a3774ee1a87319e252aa679e64cb6354cdc56f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011c8b82c71704492e0abe8543ba20797f5a5d8fdc3d9c0c21f15950894101089494022d3d4c3d952a230f9c017fdcff5023100e327bbc4dc0b34eb3bfb0e0b68d6be6de5e5ae0aa8d959ae2f554d2fbe66229cf31ece52e7bc7c5e033ef3335077b79a0302047c435bb50066306402307eaf78a1b1315d7e901a45a17e76c960bfa4fce16aa02d5bb65494d43955c29c8be7122c7ff2e01f221a436b506954df0230094a5ca33144a464492dfaff8fae0edf48ba512eae792d40f078824ba0b260d79fc7c729607d85fcaff870c31c5531560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023003b417cec76ba16e55f68927bb93dcea928337c7ebd1dca3af6423d3ee8a47e3094201455604ab7888bd0b825873079a02304e45fff8fc9ffeea1b85d3d6432f1d627fc484777ddd5f7e256f7f68147e4cac7a5727a39072af9bf8272a330a7539d80302047c435bb50066306402302be9a976a2d098908dee5f4081473d34fd1d5b776b4876c4c84ff6377ffc56b70d8cd6d49e5b8586b024e80b818c88ac023020a710ddb22ec291a350e78171bcd10149eb33978c1f491ab082cbfe4352f59104bd24f22615b5279a036fce1664d3860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f056cfb8ddcb3e4c21415f15bee4820e2e26c531a9b6f3fe343b02771a40f46672757dbbbad33bcf76b9f0ce9e41b4c0230629babecf470fb5668ae2d1004584238ac97fb1f540cff18ad6dad79dd7daf0981a864ba89a3d4bd6431593218a8ce6e0302047c435bb500683066023100da2d406cfd36cd3416eefec36d1cd4995251719b480ecb87f2dd74bbbf9fc75e140e1d214bf0fc3976d7e274c9cebb7702310080a718e7b3cd8be2bfaa33dfe69ea01b2d844020c609d2cf46817d74e3e4b75c293a2b49b03a840090b87236859292d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f0d5c96ae822c4588ddda1c2ed97eb1ee863d03f933e03ca0a2620f096052defdd6702dca54bd4b1dc4aadc27fa33ad023100ddcedfbef94d7692810674f4cabd02062698a391093b344fb9c853f004e1b890a7825b12b25ce52ab132b8010f636f1b0302047c435bb500683066023100e265d12fcf547f1b3bb409d85c18b881afb1db05bf9a73f001a2a3d922e437a10883296d447ad25b083a50135a9c5e4e023100f817f490d6ddd37e91e8bb67d23e696ade5418c736946235407ddf35b132e4449bf8dcb1969bf344bd1fddd6679d94920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100814246049a2041cfe9553385fd148e4b681e960892114044e0d783ca387a1fd9e104054cc1b8b6400f3c531a15ca9a53023100c3cf40509516113b2f3e54c4a1debd6cc4af1ae4e3f46280253f25534f630b723f0a21d3aac08ec2d5845402b3d7b3300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f6a12f428eaea6a9085e342ee47877f712ee2ec5ff17e66b2be37792edd5a12aae85f27ee32544b576908c5d2c393af023011b328d6cc39a68c653a0b72ede6435ee412d80cafcd4f28f4745711528f31ff357ce85dd942e13afba54a164a2009530302047c435bb500673065023100fc449c09e42c8a94c570d79a3684318b356462469b2096bd35ba8301516e6d96e6c4e3d369bd55a6726a863d2ba5164e02307f240fa0baaed38eb72727212e25431ca73296d832c2c17f5a7ccbc88816f1bdc7db110bf8ea26b4511a5b2f5652242e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aab604d4a2c7c39be2ba8485ae211f0c66d8e0f1f12c3221d851d5086d1a22f7f7b74b0d57ceb988e6152fcf8bee535d02307faac53cdea03c139bce32d03eba40700aba18f292cb3038200a9c75be086de2ec63b6bc4674b12b63dc70d332e1964a0302047c435bb5006630640230420a216219473b362ffd6cbb7692ed3a652cf8d1f3f72280108fc95c619fe8a883536a610b04ba26b39e8c7b7fd8cada02302a11d1b59c7298ad95393b7afbdbf8b883cb47baa57aa91e43974eab9f591916a3e4c8cdf77d209954e3d6a8d4c435eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304952f754d3922674ca55deacc8413a987d88c32c637b203993b7253c05b82e09aeec6d7132845187bfd77f31621cab40023018a3a5eece4fca276f7e7ccdc372b3cc301f23b849d9f3eb32e06d24f995ba71fa6c6cea8daeb55f526a9225010a60ba0302047c435bb500683066023100d057cf6d73e73ab61584247afb6397e37183589b38feeb51653a6c274c06e06ba2969f641ee7c2097e665492bf392768023100ad2bc59773c5723e9671091c50062ff8dbbd00555e2f6c6613d7acad6b66cf06c1c3270f1c78248f24e3774b36a51c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd4cebf38378602830b059f144b23d924fbd5b05915197234b5d2fc38fb9edfd063c0802adbd4fd3b1f7bc462b4d82b6023038f647beafbb279538ec4999d974c2e0b3d1e52a403570cc3aaf4a468f0e8e845a183b2b4874127f22f1240b960887170302047c435bb50067306502307dba0c38302b6e13c1d27646d55be3c68192f5512a0627c3f20e0808fb9a89396725d63d050309c833a285b823ca8d87023100f3742a670cbebe57e8263e47658598ce38670f76c27f3c9d9c7021a175b65f3f49428d3b7a753020c7a278bc61056d0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c08a98a17dd287c0ba672ec695c2d5468f54f7830b2e6a2ddc52884afa7f3af609478f0713a4a9dc788491205c8aa8d70231009c5db4fee2914e400ab8a9c5ec06834379cc70fe66138b605afeab05f52d7bd64685b1ff9e8bb6ecb4167c01101d6aa10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062ae7aa3039eb2357e450990d244d1128b849c2452579ce78e5c03c60341a0fd22fa792a8f216a96f4e81c6db0fb890802304cdbf0d4852b6388a9b5603c2a140064cc9b97cf50ac32f0a3b05189dae5a093dc24d706ef6a8edba0ce905645e85a0b0302047c435bb5006730650231009a7b846272cde8660f73e58c6919bd3f687ade5ef5b9643a6a84a40a314e811b58f8ed8a0e95b7998aac8e8069dc270802305822e8cb841532057004437b77aa1df4db641430f505c5c1cce4ff1b6521cf5f9e0293dbff0a448d435e21ac556e7cca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047d0037e70972c8144fafff486213e43b2d37c77716d2bce75ff89f7437aa33c447d57bb9430259a91d392aabc48e44f0230402901fd925ca2ec764e7aafff9f8e66f9b2be1f260bbb5b29422e97c8a3deae2633669880955fa6ca34fc856a427d510302047c435bb500683066023100803b49c619a9e195a419bfd500c0c666c813bd7ade6ed682494427f3499cc7eaa94d0a4154d8ac967043913b0b8148d5023100abdeb45be59eaece3952cc64d3e0719b5247a4df039bc9e8a3a4987f9dc2e852ad06b0f005fa06bc19308887d1c9cb350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302725842fe26202415bb25baa20244c02e10a6f59cff263956afc646ca54ea1bdb31acc7ae9d50482965bd114e780c52702304929bedbb6877ef97e9eead489bba63c348e32168d13855868bec9489f40a8fdb374ec0de55c2228753e48c6dbed6a230302047c435bb500673065023010d4f7b116d2223fb5496c1e66c6dac38bc5aa70b005c020815bfdb6dd300d0e6fd4c4ddd09f715497d1d5b769f701ee023100e9608dcf4d156b0dc652a2e54971dd25b9136964decbde5379f38906e4703fbf1a7a04e796d29179b9e036a7ca2516280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e347f870a57067d0d18a5609fd5dc40da28f79c41c52b4e25c3152cb6a4ce264aa5963da171d99eb8d58512abefe6cbb02306e88eac79b8e6497d8885189bbcb098e1665591499ed8f9a4c7852de04d051e70e38b84da8b315bf230721527527106f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e50d4f8788e7c7108f80be57145c0ca574ee9204359ad99a642a744c17fa561c5c3d9e80f98b7c75b855013a62ba75490230139bb51a5ca5cf5f954a39f3fa43f30ee9d3a9cc9b9272b8898307d4f0c623773095434ac408edf792ac48213419889a0302047c435bb500673065023100bb0224f88922ea075c299f4b7bc91143361bf50b8af355e5432e4a2241bf6a618ad2092106c3b3d2914a4f4b1b21ec4802301744509043c17beef9d79c086f9a77f5c8156686e04d9cc6e17da4e41a6a4edbc76952b3689fbf3f0ae4eded67de2c9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f39fec81d2e921017eeb0e91ae4f5feceed0e06392a385472be87bc240a27a9ee9327ff411942fc0c66bdb74649684ed023100d0fc37b4b2a6378b8259e3c99c2c530782abd7d76de3b3ce30f533c5943aa27a3f8827a624412fa71fba938f104aa5780302047c435bb50067306502306924e65a91b88e5a9a5a1dd7e2d46f6ce3c8ad5d79247266de8a955ba54e28e6e77c4a4c83ac4b694b1d2ff45152dcf3023100df18b554595cb3fd7a320f4d44331ec156b26e8eb6b33b06e4e0e5fc0c91b71155d3800bdd920ea12ab5308fb531ff6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088db13f3aa23d2ba7aef978c2a4af414c376ab50b45a2c99f1fde3506279caf9f60a7fdc92fbf5f02b110a2bff9b31fd0230024330ba3ae79f0034c9d8be3662fd992d0222e21f3e4a7cabd0a000352eb2edc3b1e1a531536b7b873db6f2788f302b0302047c435bb50067306502303168faa3ba32d45b0cfdbc0727dfe27eb7c66a594e38bd6595e46d64b00afd5cc70f568149e93d86b40a0dec20f6a775023100c96fcb83facd02482bf3442342841536a2b0b820de14434f38bfb9a809b19be07ef6928aa23e25b4ec81086ac0bb832e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50065306302304322f05f9b312f767f54a23faac2e222d5091d1167bbec0d335fdd0ef881e95be479ce853c9aaf3e84ae38f9275514c0022f0193fb2fb96497126514a7474951570e60c59fcd4693f8f22519524e8a976e2ff2cce809f5129fb4373c1805c79e690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c787a413fc82a01a01ec59e492b0878b39e87ba0b659396317711dbfffbadb726bfa1bdfe35b0131166f241c3234972d0230292215e93db8c3de863a2da401183614b9cb9b04fda4d18b1187c2cc09c3d02a65d79ee5a5947c98177005ff78ec153b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b22ab5bbeac2b2b577d1c6e6efa39804ddfbe93269aae9627dd0c193b28c4cb08aea900a146145d37fa6356e6a959df023054254fefd80c0faa1ce2a8fdc48418ffd4160970a828ca6bc6a3b7d6f5e7fa0eb5367caee8686bc256c956ab2a0429da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300620151c0d4724fb8b68cbfeccf8e9b134b6a689b418382571cc8e12593e53011a45fa7d491f706e2e9b74564c25ef3502310098ce4cdda7ea0abb2bd90245401e40a44151452a9a9f6cdafe2458970695015369ff0f0a29b11988460b9f9131b2feb70302047c435bb500683066023100ad7a3c42187e6953c1fc4382f8c5eb8e6f8266d11ad230befed0898a81502fc1dad951242e3b4680be8e960ac4ceff8f023100d5ee6fae6dc283c3bdd1de7c7a74f713ccb5e31fba378ab78cc67c48a045973b0c0492144fc094022ec4591ed244d2980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302a8d71094f5ab261a96ba02ab5f937f08cedf2ecb56ba567ef7cda11f634fb08d3820a5a87fa5f5cf8239d21dc65a821023100b068bef38b9507c31b94e1502cb27d75e3cefa5e7dd56efc422ce541e7fbb01723b8464467f63a7f1c227068d2631d450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b4a955c0357bd871c59bb1f5d51ffa4c6d6aced91de14e95db5095b9d25958e5ed5a398dfdf33751e0b9fb388fae9dbe023100f450c033b3b792f15931ccdb9a7a4cd05a167dd3895c43bccdaab295850da404892062a3f1d11a479098a07bde49fa1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023010d4e09a89f7a34414cd2eb9eacd8b392f0c0a51f4a673a899dd86796c09f03475ca87cb5153478cc8149b9f530597390231008fe219c810b702f09e0f5ca0e37f0633d138b77865384b9c98d6373c16a32e0c24baec1c27828959524682d3d88e4a880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecffc2ffd93bef986261985e17a42eda25cba498563c5fa862ab209e5a75f386bc360ddbd411b9efab99ee92c9440135023100ea5bf5db216cdd43080a0037cf861d30b3ff46cfb96a87d2d1387ba03c6d8dc8eb7eb445cf267a3ebf3320ecbc8d3c2c0302047c435bb5006730650230009907e2dc3f4267e4e6f10376e03dd6fff351232a4a7e3cc30a0b8153153da99ca18a296171bde0824a87c9357652020231008d081562b8e2297c8a63d8b2edd7e55b3a3fedb665fb9e69d0cc6818a7f8cf1e06e3ea2f973213c382b0f2655a34352e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd0611d8956e61626e763c45a9d60828ea48f41e1b505e32e791772fa58de7f0968161e2b2ff4f2f45e0db83c1d4dedf023100aa0cb7faa4863947d0eb811ad4d78da7bafa334f5908d9df50f9b2fdf24ba682d99d63d86bb4a550c232f64ebd1f855d0302047c435bb500673065023047d44074a61cf26b51605d8cd9da6f7412f9d07cf54d512a02d4ba2d5812c4f3fef257de850b81601b67f097142e1b06023100c72aba2592e176b41bc1490aa2bd5783c8e97335aea3a7ca9078a4504b058772f7e6455449db904584918410c11c889c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007da1e03afc9bd6cdf26fe2be0557a42b4ff656144e2a741e137ee931911a9e518cac975205956876a084f49c67ff108023100aa20866a32efc249b56ef25d4ec441094816ee3289c952501a2754b2bd2f24e90ed57394d3e1e3b2039ef7445edeea7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b3c4ec5ea1dff027660a21009ffbaf767173aa77b4f3b1bc4a6e3644daf602dd231efca11cb1eeace2665ad08a83d2702307f214b2fab5e6466943c902ee45fa2442af9566e4b8513c885b83dee1681009cdd01c2578f0b5ecbf9a33d41442192960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305733c53a5e2439447ccbe0b41c4cf6b9544b969642ebeded7cf3705de43a4ac3e67c7d346819e9327b7f0ce2031082230230049149142ca3391c1b5f062ddf19a9f548ceea0ac2472a20d1883f037f02ecaa2c26072e125399eae098471e1b6569540302047c435bb50065306302304eaedadc1089afdfcc35a4d490535cbc0699b733f0160cf5b976e491479666516ed920a915e20488c668519710199e07022f7e2f2e5604f7d6fce133648759a9d8c8c5d0b0d1e9d1bf02c1c10bc20a19447721be70933a754ece59c4ab92695f360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f257d0303bdb5f7740455f942bddf619623d5c7f442d902388085eaf22679263c00a5da00749acacabaf8884c99903e0230797c666af68efbc73a086c027c5a81540fe350b7865c52f1438c45f44691b9ede4292b210c5c15994c1f62d2ff6d0be80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b485c51451a00c1be4ff1d6d07291bdaddc691387ad703d106ec585d8558903282291e8193705f83c5100d25cfdfda602301d214f0aa123b36c6480fa9fc9307c59c43fc26be7b3fee6d1f50f7246997bef4633687dda8d42fc0f431b0fb6c67db80302047c435bb500673065023100ddd5bb20e8ba21b9dcb57123484de80232a3c44b2fb19e33f6249b474c5e09d14001b4371db2b088ef3cf36ac2d04b3b02300a0067eebf7adc78dba781b2104a512c4e09697fed3bc0d2d914eb15857241b4c62d27d2162f7af8d8906d32fe88da0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023000e28f91a3074489d3d3898fe83744d713c774b582bdd5f2f2737b5e1b2718b8f89e9b9469d54c19677020945f097388023035f0e0d65573e04a971f3b63fbd7b38c61eb14af6a8fe93010ef3b140c7f9f58e5e4f5e4369894f74589c569f4122e710302047c435bb500683066023100b784e61e4ad51924e6eb95c2ec014c57790c933078aea9fff2545e003f3ee36ec7fca851fa125650fdaee121b712f209023100ad7d533bc8f352fd299ab5821d2e09b8033b0a92b938ad612a965e0d55156ce6d7ad386027c9d535de3a5ec9069073450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe13a97c01936d52a7bffe399374b5ef3aaa0eb3fd47fd88ddb0ba7e89f521c6227106434e9850043a29175e8af0ff3d023023a0ccf09e2a4d4ff9e3277552b71ea851bfd7ad994385b14e7c1208cde825ec110eecefa7a02818a4c41372a1c487720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306eb8d28ee5075d5da4aadbd7e0bf42d998b173ba42a2fa9a3710fcba045ffe770550bc3ea4e937fa63f62761ecf8a8e70231008fee0842ff0fc0c938a895ff23079c7d74e054f0afa9408303156cd1978cf98f3e5baa39b705b327ae77d4bb0e43a83c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1247aecfccc51954c4e791fcd96e2569125d440708b0092fe3c725da3a5c86e36779e18d161f07a958675624123d049023100b202ffbef5d8efaf386d249dc2427587b106bf18441689dd6676edae1f1dfaccd0f1e04450318ed745f382b117cf8fc10302047c435bb500673065023100fa8274be7931a5e058d53e6dd308e25feb09ec94687be3ef5452feed0ddebdc3da6ff84d45b73d11af38409e1b1e47a4023012ba3934f9a70684fbf7057a541edcdf5a7b60ca02f6c37010385b4a8d89950bbff7738e694f03805420dca760f0bcd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038af799f7dd4081320618d1fac7c9ff0974a10a8e20823e4512cfabd5f68b259ed0023944d560a149f1e0f7b0171c5f3023100c488994525446af0a6b14d22d8603f21ac48248e52083f896d4ba767a8da2f26943a39d5f9603153c16c1169669f81df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aad37e4d9e741f83d7e8bed6de565e7767d131b1d6fe9c35e3772e115085a8a7e635bde5819b427796c65ba44075c46a02307c41a48781be49ea0ed42483da00a7844885facd6edd99c94065016c1d6914df47a55f016aa5ad9ecdbf142c784aa33d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310092bb867137a6b82c8e39d09824927b42b7bea0776dc7a49b39d5de3c6b24c9750dd1de74cf9b4d4470a3713fb8f00f73023033d355f4c9ea38412c211f4f95255711710c47514c5d38b3341a22cb8d8175e9824ba9d0840bf0a60f069c085d1152e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303fbe6d7e50cfdb4f931b27466835fc05cfc7805ca13a87a14029becfeff36d8a3a07d2f9a68f8ced5a5760d6dfa26ee002300724dae850b79d4500a1b84692d56bdd2760755bc9b7a717b6c39de789bd5e4b72fd43c5c921ed6ab6980f7d7db852ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302634b43d6703d3dc711e7e469f3c2ae88216f7e8457eaf2f418a9b379d565c4fc266e5aba2f0affdd06946e00b055ed5023017177c513b5d4fd0d3c5a0753acbeb22e34cbbc67b76160e4b1187315239c3f3b0829b914cf18da05349ff26ee035fc90302047c435bb500683066023100b5f4702f3c91feb1614b255b6d973ae04449e95d0637ef95e34b5511d7084f91c3e277487599827402fc1416ae738709023100e4d19d6c5037b62bbce9fe21fc080be4b379660c4173b884887bb4f9b950816b2fa59c38cc4bbc2588e8caa4e8d2f2700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a8771fd2261171e8143a07bc15ada7916f4b3a83c710ae2c728b9a5964c7f0d5e58b2a46f85c5393cd7bf36548591cb023054e642c539b71e67057dad85d5e33a69f22658bc996dfa6bab39ffa261556a4df05550cb344f8131f7ef8dc49805d3850302047c435bb500673065023100ea2ce886c943c5dc0822ce84d9fc64ef368bc5171144b63ede038b706d9a470998962b5c26f16cc90122a885ebd65b5b02307452c08506d8ce7de0006cfb964037eddee833cac33cc54a239f62f2006ab37f6cac6adac3c1f6054fecba4b7c418af40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec6fe52d2be94acf838124c90f4e6ab10794b137875d41185fea5ccd0dd740a2aeafc5855cc2e803f220e84eebe72310023076ff49a80a3052e593920fc999a7fc4ee0be04e41b02169bcd52831ffc8b5e616a515cc49f63245b61677b7760427c200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6db1b4546416492e37b1b863276c4cb5a3c3804aa2fbb59c6e68f55ce240d3661a11789b23be575daba3d0c620acb7f023100eab2e9bb8be2543d52918d87fc7d79b6ed641079b03eec6dbfb2361bb492362db07e5ac7607c650c0945f68ef9731ab60302047c435bb500673065023100c9efc4cad59fa6e3499e4618f28e88ed61dfec877df4911a9799f1f13d8c13bd6d7c506ed142ba022d1d8b67e3b1832b023041f383924f5697b093524f8c2f096b4397f322a83e86ae4155ada48450e07ea08f036b479c91f0b6b26a6a36d64404e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a8b8ed5dfaabb6631b50b2d5e334aa04feb6ea90090860c9de58c78e8a0248ccee9a111e24baae79c0ada3853007e5a023100f1ba6aa85eb500a3fc3da00c4daa827fb81a5d74841b8b432d9b721a864cd2a4d7f02799c3844ede0f576ecda76006730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023079de4fcdc42e07cd82f753428ffd21301deddfcee4710b2b493929873673556cbf79b2ad060e3c4dfabbfa2c1acb6ca4023100d5cd9425e2373b8ac8755c3e8d9eab951217ff62bf4dc2fbe450b04afcf018cd1d48207e4faa67703257f694e925be620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cd46b726677d127517ab46e50b1cc326a8a37e0d680e094352d99900d04f7f04fb26f9bc7e4cab6c15689f6b7cb222e02305bd91698dd362a8778fce2553f63606df8352ea6864b3468493d418014ad167f5873c334947d3af2044797320944b4f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230579a103dde1a805cec94cf02d1c591daa479b66766868332dcbb6eb3f6df4ac543c7f9bb264fe5c1492dbe93c3c6eef30230437f0f54612f694169dde44a9b7eb76acf5405c3e44b9713142421a5ba192864212cbae6d0102017f29a005c8e2ca6d50302047c435bb50066306402302eec53cb3c90acb0c0b717c09a11ce73ad4eede530814485728b35180a3072a070386bf53515d61092e0d99b738ebc1402303ef742b69867c1e4fe98eea40644c73d34374f78754ee9791398477e2de3fe365dd68b48ef937c066b5f711a1c2737a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d59fe14a3a0814d687d88ca4b5a4a9357bab56b3e80042a113c49978c785d9d7e9ad3a119bb8104016241c947cd78d5202306394bccef422772b4ff93ec329c11e2c28590a6247c3a6509b715cd97d8b67fb758af6119223d161e1eb1265a086f71d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a35fd55088917c489b6b631afaed86c00dccea64672861da9a52ed3834dae8413cd71a483ed22703dfaf6fafb343a8890231008559a390ad0aa85c938402ccc1bd96d3355edc58023db8a916ae5c684704408841c256a353d5ec4e420f33396a78e60d0302047c435bb5006730650230424eb1f5cef12db8e31094571c3e370378611933119daefc37ff932a755c28966d06fcc5758729367d1b65f92d5d6da1023100b2a5b84c41a7fba55e6ad461d9e5ee366eed1b26b511f5c4ab3528b9bc3f2e46d43dcfc07dfdcc351465e8a3e5f257c70302047c435bb500683066023100958dc59fbce7402dfa7d78cda64c09da9f724ab6359b32939c77c988244e810fef12d62d456df3c365c5acd468c6ec6d023100a249442edfba24b1ed4c7d2ba5630469d7c5592c78ef6d4c8bb9db96512c55f72f4bbcb268c14fb3d83d7ce8b588a3a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a8fae3563444f7857cf60a22bc75591e78c609322df842e244042a2232822cd8e0c9a4d03017a3a97c579df59da1b518023100986ea505ef1b9446b595fbc334eb22afe04c853088c3593098ef47648cc64eecc0fc619bdd4506b147ae856a3f10173b0302047c435bb500673065023100fc6d08c054a4f7f8145673178ca7c17b8e348e9303e6905cae619f23307f21d9660cba10d4d340f6e956eaeaa145551e0230607092aeb00e8701e7e5f61679cb9053fd78b2c9144737d9b313a179fc42421a240458a0434c3a3fd544bf83d8abf62a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff032a188acc26838ca4a6e7154ff5fae6ccc19fdb95d36f6f634420d6410083a2283b391b7341351c1e8d6a7d3dcd41023069682bf1c89045701d2f55d88618afd4fdfdba4474b0ca2847b084e52caef37e19bda7ba1a5cb2081af6c2cddae957380302047c435bb50066306402305f5faacb3c9a4a2844a914153d3a26d75b54f6605fa26eb1e0683826f6fc94f7ba0532b47ff6021edf6c40a3533ddc1902304b9719af57d572733782a2ddfafb7ea39b32704f2f96e7f4126bfb4156f81220f0dcb1b516c48bde2ab36ebd0fbf9e010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023031b36b34b5f1b1938bb38a3d517966d633041e927f728ebf85c712b9fb5aa6f47527d3885a5114df2825dd5eea1bd9d502300087a69867c84652b06e9d69e1b46e44d059bf6ed02d2bfdd8c0d493234a1fb410a024c08df7ebbe75ef0d69b6c0a0860302047c435bb50066306402303721013358a8ee6f9a1f277cb64e900cfbf92d577728840f81e9dc12d0edc74829a9988d1fa31aa13d1472da9cfe4170023064ab2bbe984392f438b24dee1c77dc08a7310f1088f516864e2ecf82e240c4564fe128e878328fbff6b493c7b80ec7730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac34dedefe4d96e7b241752eb5bd2e30a80e28ccf351c1ddbcecd81e436854abdcd9063dc53da35dab33c83071df7b8d023079a877a07c680aa2d62b786b276c311ef4721fd807c1cf24c003999e781df07da29db4c79e3a58043fb627c7e11239110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d0c9429a48c26680f3016ce3c6966cf3dab01161cb239fee545962250b8f5d96bce6febadcb8393e823f20412c1ba89f023100bf501b1debabdae4a6ba7d8887286c9cc54c1f3a95dccbbce49d94f2d5725c0104285024f0eb87616fbb7dffc533acba0302047c435bb50067306502303c50d7ecc6f79c1b1a19013bec62ad7c6f4cbe1417641eee79f497bc26d85c891d4717d26b0536ef32a8960027f39ce9023100ba0b17455a6bd1ee8e9b933fe9a3d9c89b5a3331971846c8870736860603163dfd6c6d4f2d6554ffcda04feadf5cf37a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc2570ebe8af32d6480f33b42991db8d62649b63ed1db5ad2a7c52d4c8576a79b18edc7ccbe74ddaf9cebd524769aa91023100c84757ad7604a188cfc8be10886b07d6405e0fbdb720c8239144dbe52236b0b55f31d36d021132cccd7a5063c5295d590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d14c9434cd1034beaa8fc1e1fe1644bb74eeb5f48e0ae38089e81e4e51f1f883668a3b978b4740b0a32cc4d921eedd4f023100ea0ac49af5c884acd2dab6193f648a14c199e524399f9701f1f9c3bf53cbedd91b31f40ea0b7091370b17d96901e10fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d517cc69853342e45f3a96b51b8f705601d38c67364042ad840eecaf67b34cfadae7dce934f6db2dc53ef1cb6c44503902302ced052fabc4d5eab1f43210b8e2a53ccb712e8980c99c47dbb4797dfcd2a26f3f8357ab9595b46be2de32e9dfe8553f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efdb1817cf2c5d1572b73178800637d5e6ce9a36dd07f564f4e13a58af8a0fd454a6c39a6b6832b0cb4675f1ce09e4c4023033901726948af974c0c957cf37b348398516a0eeb7eb8d2d640e3280b38c9c1d15d63d7a1d30177d802a5884da9242bf0302047c435bb500683066023100b019772861f6ae77a138536f0b6c01f619836e113998e73ab491148fe07f6eb02c3a516965655c83ebc570d734a055ac023100f15ac19ee6db72a3017854a1e9fd92c7902662d4af3731e25f79e7544e17492de699525d6f6c71da0322dc35b5ee316e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076aa9c844c8213b911357513cd405ec5a7d6b675f8a5b11a94cc83adb29eb457d7b6c2bf4f48ab2de87778a262d7378e023057d8fcd323c78e4a7b07e2d8db351d51811d8d0e66bec9bf9b39049493f025cacef0aea490e6baa389b6f8b7bd1fe6b00302047c435bb500683066023100c575a4c33b76a3d462fb678f07b5e701f147f58736590e3d7665241b3bae64a9dfd5c0db776f8ad18ba8fc914540864c023100ae6173122a01f4ccc87e04d65b43d8a050c561266a3fe9168a06c5b2b9a24966e983de5a9ea487502617ff890ecbf3450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301713a0ae49d47184c1a2e8f3cb83e2fbadfd3d9b53f1953211b97a2006a91be13fd4238d1d3dacf42cffcbdcebe173f5023100f4166131a17cf9d5bf824fea1ff8c50f83a53b33ad9ad4f43d7705503f933e39b9a8308de9b6f8eb7e7c53ec45c77dee0302047c435bb500683066023100b3f4a9a3f14fffddfa086160cf25fae50b22a51c95157ac3b6e77e8dac6492bb6354b36b17796a931f57213d9507d995023100dfa89323ecc5047744b626459d00747ab11aaabddf24f17e33c0eb008226f36e528355e37ad4653c36364b1f9234e4240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230704b0759ebd2ae4ab312024e333a21ac311c0cae26c547b055833a7d6a936aa8d193aecd6705c0a28ed605a08cd1194e023020ff087f5856119bd4360eeb053ad980655b54d129b73e3d8a88792ed3b2e4c3782ac8f55272bb53e395d08e981a12fa0302047c435bb500683066023100ee9787f7df4cda6d4a80bab4048460ecc414ff2ecdda27b9b5b3e08d86d0d020e4672183deffe30446c75476bb0fcbfc023100b12a263f747d22979aed1f90cb5cfd28adc7c98d1efb501041a96c8732f009583f5c17e7aa16f9c29ae758363edae4630302047c435bb50067306502305c703d8ff13bbb362ff9498e9c640eeedface5984183e3e7d9052e0a2ebe5d0f98bc966657dedfd2ceedf77d7d182de702310092e1641c99ddc7e1bf2bc4b41d5398297f8e996df746f29b77496e60a50a0f82fba31a019aa99fa6648379e0bdded8a70302047c435bb500683066023100d1e098c5b3cb44e3c977fb88974e647fc2fa9cdce911ff9c17654f86627c021b03a7a392400111b6c0d0e72f00920c2e023100819c6b2d83c2b3932c145b1aa2cf51bda8eccc4f80e0469e4c5b781060b524d32abdc8a2259f765b74472d802a3eea3c0302047c435bb500663064023043eb3290a1fceef9b5abc73977d9f50a03b14d12c7d83750cc03a1d249d4acbe7a1414787db76bb6416eab5ea80afc4d023054c988052aa7ba20bc8a5f4760a6510d7a1ec38d6e4d386baaa53e41e789ea35ce2f7bb3e3a90bd6a0c61653655f4b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e8c398856d784b30d32ccdbb7c7f7add8c47d9d25caeaaae938c66ef74716d71cb761dcbc94d7aec05b5e17435776be5023100e88d1eba1b7beac38665b4125410fc7add15b022e001ec632251554039e09a932996ddbc4523d1608db65e5a1874ce9e0302047c435bb50067306502301c0c3a832e4cfc5bbd6453d5f55d2c862d09a6811a4f5547576da894eee8d9121b28c6308edd5b1dd5303a8a5b99909a023100e780a6b5a26250705dcba9fe8b686a33b002336c100bd26e5a91985180a5a92b07ebe5bf82b16169cf08040deeb58f1f0302047c435bb5006730650230113f38eb1c337680e873dcd63816f4638cbc9ccef8df7ba4325ae00dbc86d734d34e1362cd0714c62afc208c4fa7ee28023100c6ecfd384fd1515ff96a4070afcf96bf5509dbb9b48af00218f6244d9d9007cd7db27d561d899a5d61493712f338a2970302047c435bb50066306402307411dbfded45209f7934d64a967c72f89f83dd45daebeb8eeeb511143b3f4f7bc808248fd5903e91c43c9d5c2ce26096023021179c51a5ab04e5ba5ef1ef0ae91e9f98aafd2b1201696e2d2007798c01e6a768fef25920a7980f8910496807e439e70302047c435bb500683066023100f8a233d423cce80fbde65b45b567b7543f650318facc90b1bdf0d08070db2d2a84bcd0174c1f822d64fa80b5f2490142023100f3fd876f7a40a79934a76a18d16324f0f225dde5ac131e62ac48d253b638377214f29c249156c559a978d2ae45a417010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310082681c1b36dee2c40105b07fdee03a54bc71207f8fa89e70ac7197058a387a03d874a35380d0716083e41c17a1b9b6fb0231009a57dd1051724e3288f0c193e8704f472939a393366fe1c74287c1ba9a789caf6892a2cec35e82d1ed574bbbdf9afb030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cfb42990466b0877a8ff4a2158c79e1fffd05090c7ae772f5c17e30b58c6298803e6ebd3914a655149719b68983dd51c023100bf303d841e661079ca68e274359bfba4f2c65ea991112dab124d2722701fb723c9696610ccce8010a2a90f550cd680d40302047c435bb500673065023100994c716e1c3c5fd7a93666f849b1af5d8d3a46d2ac5e76fee890efc36fa4e8978ea52c5d3005879deb54c49a8ca51cb20230193ac77328130cc8211f8724dfa160c2a1d371ed6b05985afe180c0eae86c36e969b9e3826c5f627163a7f24aae3315a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa7e2ab72c92048d2dd70ea1737017911717fe7b38b904fe1dd954bbc15e1bcc57474b7cc9b6885bd881270cae0a4cf00230387fa7fb1957977fed78d9fff0686dae73fc3b53c1d55b447f9cad8d21237b00873e29420601c91b04e035798df19bbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a19fd2d5e4bd62485a8514552b3c01ff63c375e535193e4d4b84c94aa60cb7bdb48fa25fcf63400cfadf954ae5333fa02305045405bc6da0c42bf9bff44cc6b7f44a34660b60b5bd6cb7c2fe237206c8429e22d788e744b3ead2795f10f9d74e5ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c796e1d264ad0b26823a007f64ec765e28b9e26a2e0326e8f70f689468e2a2279214136d650d69be3e90863b610a5e29023046548cf881965785b739037c373db9955718ba1a283f9b9d0fbb75ac388bddd69868cb1aafd6bb8d311c544bb36b0d440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e043f910a8b78153d5ede7d60cfdff132772ac2531f66721bfaaf6fdabd9e3b38589304ab3b3cf92b4d40357e03f500023100c5b52b8a181202a3146c260d57e13b4febc7e2ba6312a08e1f39fa65ad99f29282f92ac238b9b36b7207761ee0855be60302047c435bb500673065023032cd3be6ef916f77947ceb0fb44888e796961aa754bf5e89bd839612472fe44c72a5af244970679170aa3c22aee06032023100ea6b61e3d0831f638c561135566bc053113423ad4cdf1dfafef81b2fd811bacb7481e2e9b382a8ec06682d65977a8a410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f159f5e5f7e2b28df6dc3a23e9cc2bbea87f53fa0eec2b37a054224236697743a133a9b9ea7a87f876cdef981fadfc0023100f7878f1e63ac9339d69abe393a1608dad218f192b3c0824b7e0bd01ca65365b625962d4fdfaec8a4ee7f5b0e57a9147a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306850706f774fa5858544811c20542ea2ab324b5cf465bbafa4d0f477d30f48751879c5c6eb90999c0b996dd50914f54b0231008329dc11438b7051596922153ea753a0f9d475180a2da6f94e501d2aeee431d933981a5873934d51a6352701d70055ff0302047c435bb50066306402300a55e5b178b1bbd37c0e3ee53dfcf15d487a7e89dd3a7a0b08745d84888acfb854bc9799de916817014770a0689c501a0230484849a759a31e6d144271db0a6d889be9123791284746782d51bc80f7e8e42498a97d121c1100b4e2a8070cff9451890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3faa532318fd4715fc2f255c373a8981554caaa0d7bbbbb9e1af38645198f6587dfeec7bbdda2e8ba2f72d9a6ac45a30231008303d038894563f06b7a81f8c2e0df769a2b81d12e5681573481e0411acbbac1e85f64e084c0115a7df6b0e4efd086710302047c435bb50067306502306ff0ac4c0eac466a41553768e80f7800c37cb736a4be80ba6533c1e1bc1f003336b75a9c4a1d9aa617c53a068a822087023100d77daaa13e8010d1b4cdb22fd14d79a8cbfadf840fcb32298152d1dd1d97b8dde94ea2b54ec4fbaf52e8bdf4bd7f5f7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009a64218d4a625c644d25199f4b944054363d2fd55604ac9634ed60fe79ff54d23aabcd7dbccf611878d02c46543f4cc023100a113b22fa1813e96130b3284d24164826d78cae584365733e95b01a109607a9c43b65e33d884a033437bd5e4229c47080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300debd182aaabc5ec5abcfd7ce326fef40d1881d0fd3bbd78f6ea7097e6a2c9dda3d975d1f7ad596510c9122b41813d4f023100d79565b53a2014e8bdf9aa07c36e1004862388d9729cb6057df6ed280e14dea6e38f7b400bdb3371217a8512530c95d10302047c435bb500663064023024f4fe73aaef9e1066e482956f53478c3073ab87d5fff8d35f76c9096efd310df8f08b73a0e8f05bbc7f22d7cfbc9f2c0230758dc453282e3bff97f9b1f575d076af2431dabac04f9817fc85b493e025e37bed7dc96fa28f345057d4aebd2728bf820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020e2d9f690f36e5ebe938b0f25fb8c96c7e00b39ce81d18a70a8850cc650095ddcc42b6f2b1563b7caafde3dce9d38d7023100dc8c89382372385f96ccbcb23ee3ec6da7dca9e2a9a6c9dad6cfb7f46d8c4726adf79882f14747621fcbfac46c8c91e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6334e6c53463542b66f6ea4fe137dcd1594dce04c085d9e5f10ddff29066ecba9d86d3a49c6fea6ff821dbd9ac1ae31023021dedb46d6536a66c1a2a2cbddbdbd2ae4e408b3ebc3b285f0fea0a92ddfb1ff426fb24b60aa62b1a12dc421339188c90302047c435bb5006630640230368f0208aa6d318ff77c6979f245fbaf541e519cb2401710b8c51fd5e628b372db7fce234a91683e21b6f4cbe17d1763023067b4e199abf62a0e273b4fb5a263b38739e89c19424bf9f94b4b4ac1ae4561d525106c98cc5b2d4b5042a3c4448f708b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230345c1ac6335613474bf08a128e23c016af723a63f7cd145b48fb8e48f7fcff3cc885bbf37077927b866f84af6028253c023100ec8b318b822bb43572189b3b2eb3a569a5c89012f4f866d6da64d4b5e43ba7d80a6189db0194f07a22ae4791410836530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bab26bc266ce6a40119e5c359e05783f9b2f334da5e05d17228826158e5e1a964ed6c1829a2019180ffee61a12a7c83b023100980996db9277addd16858108e3cf4896b4279a18cb5bbd3437bc11132d0ee532324a17aca63181ca857dc3f9b7eb37b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306392247a598f0cfed558382a47797e8ff298774da7eaecfe09a28ea2e724f898af36889c6697758617d45fb51d78648102307aeb8faa1a9930d7e550041bd53b56a36baa50be90fd6a8e41fbf706f9c01f072894819993d7afe66ff38ce76df0c9070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017c836362c6953825b784d5201c51078ae83499976096c08cb3a92b20b61923b63ab9e77014e5374e7c2d2c7cd0b384802306d53e077c53e40380742c35c2fb794a106911dcdbb6d74e7d3b362470f70538283104667cd83565300ead6b7367d3c390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230500eeb4d3a2d15eb514863db96a008813c3449f2e377b36f7b801257b89623600679be4dcaed5c9797f89651bb9ea97a023100d9cf7c415f8adaf7913bd6f1cd83533c7390dc3083feda9a1f19fea35b1bb237a15c6c0ee60261aff083085981ea02540302047c435bb5006730650231008d35c5894c3ee39db3019ee8e71c3c9fb832ffe32638386a792d235509cd8d8e16a6f782556274daecccc8e6a859f95602306c45160208bdc5c0ec25dae6189e1342ad6b2160fbe575d24a1fa08780ad2fdf4be3e6ef28da5dffc41b361d3bc52b240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b43b4392ff52d594fa3f2e9394e9acc7d840fe34606d0eff013a99b0b466d5ba8923a5fd7c2125cd5376f2c7ebf3ea10023100fd036227dc5aeae1a29d50f462e7a157c515b317743b0c56e2412aa64c0a3f2704c5998daf94b0ff9977a3c1be8af64c0302047c435bb50066306402305abb8bd5a8286abc04c027eccc3f73cc5e3e6e9326262b6dc7ba9a6fdafeadbca7e9cd79b83f6a82e7012fa10bc7fc5f02303b45c0a2e871c165004c6445646eb708d72821939cb2cf722d52219dacaa07e4c886de545bd847426def89f3317aede10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003fb444ef3af0407a331c19cfb9ac9ed215765eabca91b955de6d69f1d38a101c7a9b40b6cbcb0e8dfb0e59697d10fc4023100ac6c5767a36e8ef297ee35baf7c4c0ab8e64adaadc40f24467ed02cd851bbed5b5f83b0346ebec5feec3198a8205f3c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304c0bf7b4d7f3657389a3c93603a664b4229dab54889a0e2aa4ddba0bf5d4815ef36594c8c3c08f9dfefa080f989fd97f023100b6f0004527fb01a2e986688c03c52196b41cd5606306603f2c4b94329c53c154bb9e32e00489a6bbc72e05a9e7dab86b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a58df33b963a303e9c23bf47c4efa9c5a0238d85a5da0cbd868e6b45761e2b54e315eabf091b6835221cf69ccac0c61402304806ef190b7e345d8ead513b21b8c75ffd47af8d6c63eafc85c864370a5ca33abdf5692b5c8d9890217f64c75e3925770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070ea2df80dd97f9ad8e72a12d823ca12ece9085cb2d3aa617c72e13232f0bb3899f3aa17cd82e737d754578cc5feda6402301ff56b8888d46051daea4841ec9e6f4f9c8f97814256ce2bc53bafd386f117d129eaf108b1268e7fc57266d5c86a2bda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073a0029b5645fd5bc5609b4d0993cf6d54461b5414bb24d1b6867d14c8e85ac059e3438845abb13866104fe6d5af2c1f023100c72c534575b3879b02179dc043f0a8c331d12d91e990e66b2c970c8659b941208aa69e6dda7ff47aacafa001ed1aa7da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a7aeae4fb244764127817ebeb3533dfced911ae5b20473bfed7f6c73dd40083a9e78b43df6088fe628c272f82e0454702307735729c47b907855843e0439cc7a846bc5a0d332946d4a7a4ca9a63957a386d4c765dd67c8e3bd2e8c9b112d427e7e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301352d351a02efdb048ddd9fbaead2c29ee0d1d036f3eada2a0e4a9fb0c0f96aa92a975be3740d28049b243cc63c8075602310084772552d52c4f80367961d70a539c4cae0dcfa2132dea96fa8e4f8f30dcafabac174d5d9bcc128fc47f76fbb2b28be00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047698b5bea96afaa62116cc773e8c4dfa1b1cc364421e54296ec1838a221b89d3ece391d04383d50a8c6b2a03c6a37d602310095507ffa6b6b0601e4757736eba5c5a47591552c6d10dd876744fd1d28846d2a4d2fc9ee800246a23de4711009aecd260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f51af1fdd6e54d999e06e5b3a518186517f784e268a589c5b5ecd957013618e98a60beaa9ac80651bf914a17f1f915d402303e638c0a856f04ce1ff1ee63ac45328355f56fc2c7b75ea2c5d55fb6a5c5209b3d4a8c15ef9d00282154934c6921c1a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb7ca3219f6a9c4c27fab1fb147277df68f3b2135af872a453a175bff795b68a6495c44d416be7c97eec54d7680e588102304e6e8b4306b40639765549e98e8762841ad0fd145d7d77b13020029ea931118075712f21c353533b2622b2d3bcc0bd370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a25227aee54a37846e7c483336ec897c6e2d20858f4bbca2561409a1fbcc16eb3571be993c02345237096d22312382a023100d7d8330936e87f5a1685a692a376da7682164a9b79351861cb00673af1f8784fd03dc7cd0ffb1239c03d2c3df2eac10a0302047c435bb50067306502302ce87e5f2c7eaf9841868d28df8a61efa74592525f11e674aacd96b1da95a33ac7d1260afa7618d55bc187c353811e96023100b1cf0a1ce59e5afcb78658fb032de41cf54fe484d3c9bf9a0d38c3a8f0981303185f17fbed70ab23c11f21c248640bb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f1c5fe1494ca41f35f46c1626cdb0d58065b657d0ced967941b61c1bbff6a9d402c9eb42d43952e6c3edaa7c4977e7a0230056af26022f71ce1258eea776f3262f17ddb751bdac4bfeed6d518bde4c2272ccd5d432096c696c6334bbba4d2f851aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a59657296d61e27ef9bf84974aff0fae885e747b5b80a2d832545bc811176f83d46221929d49d1321658ae8f119666780231009f0d3fbc1447254a54e28005b1f960e460848ed3be339dc222df97e81d8bdb965415e7203c515b9d77a8e0798f4febde0302047c435bb500673065023100fa2fc3ccd920bac2b63a3d93c37e6b80ea039e8cb10fce5b6cfbd885b598cf4a28b2ab9475eecd0995223400692c48a502305ed79fec19f3ab6b4481c88eabd2972a38ddc2ade1c6b0ec46861a8a0384465bc55168bc9bd38395ba414a3b38d84c9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100facdb7a74eebc645163ef4426d9286dc10a63ceabd13a94e782f22b03acad3d6177f009fe36290b9fed5e62c2520a5d90231009646fe715c8c7bdb21a542c0fbe60e188f693ae84ca2a5ee20c8f92794a91e7265d48f0680814b81abc0c75a0d8b5f030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bac05924e7d0f8ae710df6ae3370f05b67f12dd395f97d8bf75add43e787f75352986b02c6aa14c7a12c6369d963cc40023013eacbc7171d8802ab3aab14b2632846eca4310900b772886d100c55c6f39f2bce866d41b95b11f714f7c957996762bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023013a6359fc992b46223e12c450ada6b67ecd1b15a733a6ca464a90b489fd107d236759a4e03ffe5c48e5f6b957e90f84d02302cc0a0c8eddb2c8e4c967918a435ee75f25fca93604e174aa1b52ddc4b4c4754cf75f6efbdf783a243ce3ea2a2d499c00302047c435bb500673065023061b9d2a367ed2a46660df69dd82d18ec522f177d342ac4e31ffe5f9c3af3b5fa33f6a114ee6476d241fd28fe9c09edbd023100c6e9f618529bd59ec0ead56ab55ba23b552f0886b9f578ff5265f967fb49c493c0e8dbabc7cc8e550d4fddb318a547800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cdafcbfbd56ae6186c9d16f72ca6cfc8b7c3129c10f3d852a8c98db0984621c607f0f7d49a7fb05f4a4c56a6f03c9823023100a44a4292b46412d7f8ce284f4f3454065f20cb5f4d1d14d8b8488b8366a325b4601ab9661b4ed3e038d18a547cd086ff0302047c435bb500673065023100fdc96ac0b06b805127f75ae0fe405d2defcfa04bb0da85a68beacf7a6731de994fc8d5a7187efbe6343be192f36c4716023057a2631143f188a3f6a188dcb7963739085c4f2e98aaa2a9a596a447943ce0ce2df27c85b493d40c6c3d3f16f9561cc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b85a85406db9d0c739e4c5fb2efbc2f1ba71856040cdd6f62fd2c8deb8598958540dbf011acf7fab8dd3a56724e53e1d023100b3fd381030ab7c01e46f29c00ef12b6815d74e5e18bb5ab8dcf1cb2111ab78e91d48880269a96a0b64b5e01aa75dc3490302047c435bb500673065023100de0cdce71b2cf89a81ff2ed411e9b394eb922d7f68a0f85d8256343dcc5f4311e748c06284d4282217ffbd194997370702302d29816ac01d1fccb81fdff57e4ae8fdbbc233a4fb0d2f678f3580c0dcdc425df46107b34a86cc6a2e55de76805251380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028cfa94147d557c59b733a234ac73fb5e8d5a67130518b33f64bdc545d880bb50b94a9324a4d38e587addbc0676bc80802306c5dd7d9786712b3c9b9434ab01dde301971fc2cacafc82526dff19311ed440b55b4b12a4eec3907838310e803230f430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3dbd66a00b608e7c534ed2ba5246020a71eb6d4741e6157bafe51fa486159fb78ef2f3c91e221215f4db169678b4690023100ac4ed45f3460e906d9149b6f213604c3e78e73225c4b704d5eaaae3d9e4ef076c2155cc7eac195a072561acdbeb3c97f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bb8fbb34305f92e8032ad76d1b4f203ba82a2ea7f7b431eda29454d051e329d9dbc0c739758ff7a59e1b10b78f3aa2f023100b3db86a5bd2fb8222c1a2d0641da120018a036d6647eea998e68505167000a5a77f7fff40a2f08056348feb5349d77f60302047c435bb5006830660231009d078b99ffc08fb4a1a4f15195af54f1ccb042a6e9d6606defd5d0fa60dee27ab43a4b8fe11c90864002b5da98d12495023100a1eab9466a94034564d329e95ecb7ff391e0ddbe05f393cbc8e616aa315d2a2591bd1c4c9338d699cfdb68cbadbd3fa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fd7b1677df2d496feec08a15c4580385d952d3ff680b2ddc1eebbfc88763383cf32bec5affbc0c6fbfdd2ec6a5a5aed023015bfb1e7896c858b530d28a322046d7f55521947201d302e6136caeac56f150632a5febeec1b0acc826cab6ef08d076f0302047c435bb5006830660231008c72e2ea48228dc4080017e0ee2cf1a849cb1db3bece3855576ca097f8cf3392ce373a82e7339b51cb5e6e82d16690b0023100dd5ad6e52302dfc5f99b9a03164f9d0cea3aa169afa043b7adda24cf1b7add97dcf3bb9366295d543446faea25b398760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea740053f04325539490f3b1849b7e514d9b73aa559f5d04a1f56c2a3d50d0b4f75f798f1452616adbc105db4c250e5023100d537fb8f6ba4efba305125fe608b85ba16ddbfd1d6ac178a919e18dd756c8544dbee62c05e21387af7db87fded7ec4d40302047c435bb500673065023100862aae5a68271a644607021c105d4a279aa33ba9d937fd0e832495a2a8a2a4624e98534c5a3586b7bd877bc542ebd89c0230622f17fcc19b1f8cf6911aabd73d8d736d465738c3bb22c0db016418d1ad932752c6d825f50ac44898f4bb6449d6da4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029fa437f37a4c053bf0b9a3d324c5d195152774acb3d6f38eabe839d7ffd073db1a6de4a53757c0a53750b48b62693f5023100e1df7a954213afc8c5d374f4840c8efa1959ab940310e6eb89d81dc8957214df5ba5749191cb3a285c256975518fc9410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230655b97c693ff93d39ca3e6589608664c60c59c6d555c6429f2e2dd8b342e618b8aa062cc928d5f28de15e67ee1669388023100fdb6d683a17b43162dc0df1b8d2574640d49d719905ee7e46cda075188556eff9021363f3ec8f87ef20fdd1523cf359a0302047c435bb500683066023100c3739ed75a68d553192871feadc83a1f1e51be949556ad0a053e7dc66cec51070d959c7b5288be05509259c8b45765ff023100b94220822eb027050f621ca82350daed23f8277babb4a19a734c42a6dbe1400ad30d447e414d35066c2099daab5ecb8e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ae02dbff86a91a2097ffd8c1af1f1680f09bf45754c1e5c3116c527a2811dd1fc42460111c233777844871a0188dfbbc02300402a6434fcc163dc193bec7581c777956a65bb6df444d66672834a825abecff30a3e5735e47ea193e12f90ccc223c5e0302047c435bb500683066023100b06e1cd094097582a3a3f7a7112308e57e1beb3df0dae72f787d4ef5ee818f59dfdf930f91d7aaafc7cba931560cd76002310089c6bffba6562b8df18844a54e24abb27c286e324aa20db298ffa56fb50469641e15c7170567e57d0cd14a6d996ce8c10302047c435bb500683066023100e61952f64238a862191e395097cdc19573954bfc44bdd76f733ef783a2432bf38dcdea1063f4e07a7662dd8787cef292023100ca19275fe487227e378dc1695c4a6d75b0f3fd870fe988acf3787caf73ce33e90c54b1770a6361b24e53f5fc5c075b490302047c435bb50067306502300890ed44eddf7187aaa61fa31bcff8e49bc5799b7560a33d67a339e1fa2ab73d24e0ae3bb69d5308b2e4144137d92a6f023100d1565c0344d0ef7f77ffbc7e117d39deeaaa250670281d2d59a492ef7310e1e6e124f934c2380b565263a0f9410080a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ead988469ee59b585f537cf1110d0ec6807e7936ab8790a271688bb003867933b4812f0524f6110475aa6cb2d6c9bfff02301411facb09c2ea4196f05cddbfa184ee4d50f6b51eb8b785e2819fee5a1ecdbe49de772247befe695e0b938dc674c6420302047c435bb50066306402303c6824527f3c4d9aee41a34cfaffe83e55ddf376ae7c9e70a823862cfbb2d5e20e029b7fb45c1a0cd5224646cde99fc6023020e1a9c0aee74f7f956a9308c6637b5e1105f817a4420d798dfed3c1118124773f6aaf2c565b3935d7525eb74454f37f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c3891d5ec98ca4802c2c3cd273c33958067ae95389b7444cadd80f7433667cb4c20e94df901d0d7775b6cd2c84d8cdf023025445097104203d0121fba6042ece36d44d9391168983d5a92cb9fbc89812e9a72d4b658fa074ef509548fa2d5db5c0a0302047c435bb500673065023061f56a81ee0d5cb5111f77f7c09ecc6f3b482e6ebad5233c7b29a956a649ae6d3b7f42b1383c78e725a5c3bcaa69fc39023100fdbe3a0621f921908cd18644bb08ff845907def9354041c33d016f82fa3cdeac430809d0cbaf1ca8c6259fa5b1a0ccf60302047c435bb500683066023100ec13962a1042faa8f0bb4aa5a3457cdf653643b18174ebbb8f9cd76f555d71bbc5e2a500753638b92d2acde7f773960202310096c309516b09c8ba2fc71a4ef754cd7fd60c304c0ab6dadee1f54967bbeaf1440afe62dff06b81bd14ccab2bf50f1add0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023065c50ae966375ed703d9d2a8a26321b6a1b2f2d5cafc665d1507ae0a674a22314fa53775dcdcff41d9534924e363538f023045e994e0a2207b0769f157879a692ee9b9917d62c1c44a3669b74e30b2b0bfc99d68f794d9984d02298acb256831865e0302047c435bb500683066023100f451ac91c33d5b84e5f2164729a13548fff0d153b6b1e8033a8802f2511f1c613bbaecd3486275efe041c2838418e513023100c4ecc8e8e312a5b5ad47cccca2e295c3b281aabb420dffc44b1353a38d5a2f072105a48cd53e6456dc9eeca549a641a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301819b1b88b3c023ab722bcac2b08aec5bbc6525c71c32561a53ad5944ac23610d8bdd5330a079136799e148580e1cd960231009ede67cb8be70378472cf490db9f01063bbd105f7872fa37dd389eae7f871365045365ff3e575291c9a7aacd1b7881030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3b428b091c9b0f7bb3d399f1e2c6d25fe0e115c56424d9541449d574ffc88683c8c17591f965be06a6cb546561befd00230267a92f5e716f261838709dce4a72e0caec53ba8e59ed201cce514146fd3f17a8bc40328d918a20a9e1664c2cbffb01f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cdf31e2b5aa41336354325c60e9b21983585a0e5b4084417e6fb6b2cff9874d4d69912b8e8113aeba3a6fb092e0e7a090230472dcbaec001080de0be4d5a4e682b46523656395a61d413e18e2f4872acecc5354d19aaaa1a1bb633495370da6ad09a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e9aeb2433bd8a16d3263713243825c572e6c1c63d23dae078a981a46bfb8bbcac76a62f59ad725c53a8008ee2a23e3e0230182fe8c109dadf70c1a38c039d87fedd3afae327becc70f5c5ed86caf053c02641fcfd63b2a3cd275f083c6dcfd11fde0302047c435bb50066306402304eaa9385ee45ff0324d5989655f20e6010607efeca2fa28d09366f5cb9fe11b74f9e31f80219466aa7345422eea4786902304ea873d12e93b5b2eaa75d8d8a6f4770f33b866018329d416017febcb15acbda490030ed4319e17faa2497493a1680ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301546aa71c5bb590286b1a3846c716d726d3fab62991021e84900d2854c3d533b50144c10824d80b944eccc167a37dc100231009703a405c26b02970c8435a0f0af5407ccdfda94aaf6299dd2249420ff1f73b31320426d0da4f2678ab1ebed601e9c240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d115ad2ccd6f99829a7030faba770781482aa3e2daba1df7501d106de644ff07e2bd193b258823906ef444370d045ce1023033acb8fbad1a1ba4de7d92d5df60f93813b539ed334c8b3c57c12599f39efd05d2cd297eab168d5af3a21339f721a3f30302047c435bb500683066023100ec5d7b017d96c742a8b785674f4e9f83fb7aa1144664424623d4773aecfbc8ca42424c516be170190b9448b1c9f2f26e023100ce74338644ac7f4d1f90362a294327ce7fc94cf071c5151a6ed63e6398aac54019c69aad6d1dc44d69911c5712e7f3450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc6955e2726d238224c1384a1304c3549ab9d0e1ef55fe09a9e83180967668023dba0aeac945ef6fedbb7f48ed62514b023100d81f1533e33cac93f78ce1e493db8ef387b2b55679126633b1fa4fdf7ef99d49c6f3231e40ca190d4bdbd2586c3bc0000302047c435bb500673065023023f4b3af6d065166aadb5fb3c6600f1ae6204386db88f0f817525804827fe75621b3542f9bdb867b1e523c37dff676930231008d765e4f7fd38bac1a2c8c6a929d53e43977ee7f3334513de8d28577ddb747c563908250fa6554824f2f12c278fbb7ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d144cdda16f55b561c61265ecfc21354df9cd1e130066041e1523a2f4b76dcd5c3efb8527ade30d1a58bf1f6910df76023100bef7d9fecd880058053f328cfee6e6bfeebaee96dfb4a91e61198b3612012a731ed5bfa33ba1d2a0ab077041c1061c710302047c435bb500673065023100935fb3f40a554adb588a2baf627918b897a2053eac8555329f822bc26473aa037c5d0ee5417d998d2cea5273192112a60230766bd3d6565134b33c9f102e2a578bdab565d919915c034290592c2a462872d43605be53fda0d461f635ac8871e6a3cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d30bd86ca1083d1467e57222705fcc8ab503fd57c3e8af7db9eafe1a1b6693f6f8a0d7462673cea33e5b4edd2faeec8e02307bb2dcefe9bd0ac776bf2c4aaa8023b85d658724f67f192f65d95624ed9c3a0808fb879336fe5b6083da2e248f4e2a1c0302047c435bb50067306502307ca9f2199501dc53155143862c20495f2241168302adabc410e5f2095ff2b9658addcaeffa199b83679cdb62d3655b5e023100b3df03d26b613bb6a661f9056fe15579a8e9555608dd3caee3aae162916770e0a97b9c748ce021ad0a4e71cbd9a469fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a491fdf87c0ff1b42aeb3d01287b59da081f29d96e46fbe2db9a3b69bde17797bd603be69b41794d7f7ce8df37dddc3902307dc16feaaca092e766301898fc8848af00ac3aad2e7d1f1fb4b309e4200c7413e9680de9561646bfd65b1c4f6003ff720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bdb36ea6b142d34d4579b6697f92f4d98b968c5be5214b20c5cccc854035147412cf5107337c2b45270d0b811f891e55023100aaeb5b19177d4353079e165e8b3f0129b31015744ec6cb49f067131235ed9627c267ea425f181c625f306343ad59052c0302047c435bb500673065023018ef4d9c99ca97fd0bd084b7bf6b6495e2b8e696eb04504eee2cb2a643e9ff3d5ec66f08ccb386ac5c0528b2e292b6a9023100f5237de612c4604497ed6d8f8516a70ab537dcd09feff64ff3428833306791137d6c906aa9362117e67b812577fbd19e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821a614263525d5a386b8d95b2acf36f285361ad412d304404d6a3c57c328b59df1009a3a49b3628439ffc8779bef374023100e0514650a00475b67545322f746c67df176b2829caa516ade5c2ec7d70a1652fba2c659d35765e9d77a2e91ba11eb1b70302047c435bb500673065023100b460f6b6f096b158a9ce5f2b8ed637389dbf81146dd2996b171f4f837b2c9be281a1f307643c280ffbdd8a811459098a0230782a6d2307c0f8628231460c349f28021540fe199f92a89db7b519d88172a252a7fd6af3a2a8e6c96031fb34dcb8ba2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230398dce3d8f7fc5d468155f8b80366bdde91ca8e23bd5b0ad8b54d8850ad18e9283c9e6271d06bc1585427f2178a65011023051fed96a16bbb0695ba4cfda556b0b0047eed612a20b2ed90f057d25b34b4bfe3d75a8e1c33e75c0c011c9264b7e0fc50302047c435bb50067306502307f45ef03e0864bb7a66539549873c7915bb2cfe49ef3e4a6d24da0ce34d0b99d79ac5954e6995af3ea6c154b6e0016b9023100ddd365b44fca5aaf56b0e41f4706ee556c0ea2b98ef53e2f3de1210e6c71a5d6671d89812fdc9f06e79c3bf6c69725f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bf42c728f984fbfe5727f458e60690359d1b0b34e4d66c20ec737431bb4806b43a3bcc1032822cdafc2488ede2c336e02305d481758eec0336c4cdf200298b2532626722aa4bc2b6563e20c01bebcdd35ea278f3c3b256314d2e5901eed981606a60302047c435bb500683066023100e176fa8b801d6b8d7eba2e3fc82af33cea40744fbd4768eb6cbe721456794ad14db82bb94d4a82d7817b0c65acbdc050023100dd1f5e5e1d0aee4e91ceaf09a9aa0c7a97c1f82ea1fcf9c076fd7b9f06d57602aff8f11d5e52f397315e37cf9727e0690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024cc94dec4f83e2bab2a4865ed237f377fc13d61178dc4fe3ec8c05a3ff6bf60d141592d0cce8786372de61df0a32d46023100fb5fde4687d5e93f663c956454899ccbf133bf0c07667067673b224233af789f56bf000c4e24cf5c2f38021263a015cd0302047c435bb50067306502300a070d6f44a377d36c10c56df57bb895e596966de5d96c81f8a16133089081082401f6eb7c1bf2069ce4c8c4fe48fd71023100958eb4a3a712cbaaa23cd74bebb9036987b4467710174f5fbb6d9fbfac3f51512bf29cd1064968ecb33c6363442a11de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100975dc6cfa79932e4558b97fc6e92e14c239d9f8487c2910cb6a3cbb10fb2998ff08865fb741635d2854268c4282cafb002302e43ce70474eaa314da2711144f275cc58833f6234b096fa9c89cfe9c6f79d344eca9ef9f3b40ea138792adf2b7acb380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305892033d3e2099c1c1fb7ed9393c00ef7963a8a33d957c17615faa1cd66d0e5a053a2f2e8b1280ccd9af51eddcc1c596023100b51ae7807958b05a5e5669f91af25ddce3cde977c7dd8394565c93b7d2f4f326331ba59d90d00410732094d48727abde0302047c435bb50067306502303f0cf6f52418bf124b7f71fe7752fcb89b9d23f09dd3ce6abcab89aca491de1cbe5890a5a8aa73cf7ee0bc05f8e6900d023100b9c8b5eb12c1a329089b276a62baa6bf36e5da31d98f3adeacb672a903b22002e7d67a7d2035486ecf1ea4c15efa34a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd8c4458864fb2ddddb1d724e079b6607925f91cb699a6139fc6b0152b9890a5bdef824af5571f13118184c37e21e2a8023030ef1097e01aaca66d11816fa6914004c0bd0cbb678a29b604b530f0c7bc40481c18d2c75b04e20f0dee510d7a731e530302047c435bb500673065023044deb4474d2beded0b64dfeed3ca0a895b7f438f746c7cfe6f23df6d46f88f27477a46cb6ea76aeea56234b1aac67708023100d85c4db37404b851f17881172fbaa13987c438f9408f3507383a1ded7b37a5224d04f7c6aca558da88497a11a39e5e000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301eb9d0c4f74ce5caa54637384695ea50ef0c7c011d33ec999e7466bce8f5f1e0e2c7b30e6abc47464c61f088188fc2c0023100cf6332799546febf4379662125d97098b3ab1c3f6f03925304269437996153dfa19bebc33924193007eac616bcf3c5350302047c435bb5006730650230770aac5d65a865653f76db55d49fe02b85b7286e6b7549466007afed2453fbc705804e873b8e8d623edef8bf7fff424f023100907da0c1a8dd670321254358c04154041b7723f241e71e94934d395325ad605b2d8f294bff65a83114a6e5d87ea3b6aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305e2ca0ec40699f2287147af20b2036bd85ee542f348c728f7c403153d680110d68b746b8432005b96ab55a209755944d02304b5cb54c46a0a84e3dbf14faebf2af3bc9092418246a43ca8900f19a927308e782bf8cbeeb81f814f4fb159bf0802aba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008d7eaf683c9fbbed269e345b575b94991ecb1231812dc27c21f66279c9cb40907a822f10f7f9d86de90b5eb885adf7102310097401f818bde80721858db4a001f0b3bb65652509149b7a8272164ab53c311c62800139e1d4bcc5bcb1a4ac595a13c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e509d91e7ad93df2da63cf7404ed2bf6790d0d42d30ff6b8a51c1dbb53cfd0f118158556349a7b56679cf1210ce3ed2a02307b9979701f31ab8b108e7131790fb775b085191811c6f5f1e0c34e4d98217c9359f0ac08013bb66ad203d80935316e120302047c435bb500663064023022e2451c90b0d5f910266ab49533f941cf754aaab8f696f3c0923cd83c02f8ea593563ee202a7ec1a14819b0c774856902300ed2c6d96ebe9bfa240ee45e1b4353415fefc13c8012ebbc5e4c56f29247a1bf77f4e30369be401bc4369f21e432e19d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230020d9a92a35b5a669547febf1206292f5f98f453c3f4861eecd81cb4d061965a359a9854e11fe03aa93d5dcf30ae0e02023100b2fd4932382e69cdb89d72261036584f176e103719b191468b169e5120515d494adfa353c8f2b4f6ed6d6b9cc5b802030302047c435bb50067306502303d656079fc5553518da4f9cc43d9f635de88fec20d437a74c71d7d01b4c36278da834d4cf3d75ba9daf3ae87ee481e35023100c6b0c77fa19edb44853c29f438c74a1917631d16cd9b10d3172bcebc5c6a1230d45929b18575e5f680fd586d8eddf7aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d87cea495212ae62cf63e3bf0e00896d660b66a214c2e2e3f4fc92141d57529269d54cd9ad1c878e060529269e43546d023045262407c1bd0980eb1af4db999a3db2dd2990ab10a3f50eadea985628d96c4849c9ab5750ce9e3091baec7cee7529a50302047c435bb500683066023100b8dac700bef7e2bfb57f3392937f5fba047e414263031333d11cf0ced027683bf2f2655566c6e3c228b9379fab61b74c023100e1d10406aaa918796a8feee28fb8bf5fb3df73669e44556d5b21338c465067dabc541987b94b4e0a7510ddbb55cca11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b380757a4a2e4e7a36f963e6c6876bdb13cd46d6391e0926e6badb4069df6fa8b2f834984781f272a081ced4a36ed0440230421eaef3646ae0ee933157a1d7f655f669557dc5f4e6e314e327878f930d6105739f67912b33bb5299472a451cb6ea500302047c435bb500673065023100cd30b4f05222801bf56040de1a7e1ba9c0b550fb958b370be88000730dc66e3c15ce805c15cc293edba1dd27fdaa057302305b64e6724a2f350a288afb72f34893d111e9b062b3d637aa0abe651310f68bae644279c7a1a1c2a0056dd681bba93f0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055ad278c4421588dcd501602292e27397fda5e450c9e932ccccda9ec3d4cf597799cb163962dc7b6f0d7fd9837134fa9023014106dd48502646ec7d7dfe773bd000bba78840bd15911146978d707fa1e95431f29e34cdeac9b18dc9ee6139dd2838b0302047c435bb50067306502306a9afb6c8fc40b5dbee56556f9921afbd616b0378df98dcb3c4845fe5c50987e274f66af461deeb2484626815105621d023100f8fe634ced36b0a74e5f364819ec3e550fa769a5a369c00d1acd6b751ef0a7385f18c5e0f06fb55287fe6a3bcc14e23c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082dcc1ea11465ec28a2c98ac4a2763b092135e0e1f0b12762f673549c44446345ca7119c9d1cadd9c58a78eaf8dc1fa502307f83d7bead3bae9de1b6698b03e9de1cddd5623d75b4b5feddb71d54e1bf812223bad091c44fd725e39416d82f00e6c10302047c435bb500663064023037dfb123538a52616fbf52977f2813e33d4be8ba0d2c36ca0b4efe826ba9c42bba13b0f5f12eb8ebc279a36fd97a3c55023009eb030257fcfee762b7257ce6dd9879a55c87d035671a6109d5a778b25cc731a88584e681859fb49a44509005dbf44d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a19498ed4e83914669b801d8e8202338f62ae655398f64f7f35d9dac33b0b1d680af5d1de6c47ceafd6925d4149f67b02307d3458d51ebf72adedc8cbecf07133659bd20e157c2a9ec5eb597c66cc107718aa80ed79ef691b4fec6d6e9fdd01a0db0302047c435bb5006730650231009daec1e5b54486a9df5f6ed79d5fc2a857f9fd2426803d06b4830af3fa2eb87fcfe3b7f1f1172f508f32608c4b5c8c8b02300fcecdf2066dfc5de159f22f2dafb2437072bd4ebad2d1b8919424eb468c7fe494f20e84351d1cbc018f1e68b1e060d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230364b5013d336f23dc152db186165b707dbeeeddcb7fce4ac7780a23b04ab8a157ba4bae3810e4f6612a2dd6ef03cf7bd02302993fe36995ad6e8cc473c41a467190d3efda61cc9a38caf3d260c00c7a41b704c8e105df294ba6afd86995e80e62e720302047c435bb50067306502305e45f2377eb98e3fd419f82e4626d2758b826354e4d8adeaea79359393966b839623dad8dd93c47cf32edcb55049d245023100f957bb76c3bb3a343098459eec7aca70e1027cf56ce6af9016d6e1aca982e328bc5fab0f16bdebf482bc4051c1c650d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b8c44c0eb5edbe121461ebea0ed3e7eb7de033b09cd21a5dcc3db8e65bc279fb5a100d1668c79264b70bf4b45e93e5502302d0169c0b7c6558fbff912e2aff75da26e1b36835cf8aba5666c91451f6bca224162a48ad971b3795343c9a2ca3e8e810302047c435bb500673065023100e45415c7ca4d8d6590d864323ab4c8ce1740401c0456bb515f3430727299f361458e96a05dc5b31a58245690f82ce2f902303eadd2b5d1eb4e20e2a77a5968d124ea9652377a38a8a0277c8e53bb2d53c7c8fd525d208d4507c9c622fc118aa736250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023001534d1c3e84d690d4cc37200994ff89e73c84ca61dac1bcb3d76c5077964f1d808279d19d7bb2352e34dc67d9ee8acd023026e57c7fedf434bf0b08fe8440aeb7514d66211b2f34b96b4380113eda5608bffc37be5b8b418d0bcc39123faf9ece4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c5ab94518fd93d4c163e3a41b087338d23c6c7a8cc4a6ccf7498a77bcccbfd87101d8f4f6572a2423f81136deded2f202302d1cb9dde6ba07d2462ad7df44681c8e2ba38e3c56d087200a3249830de031eff752672f3df17816eb58cff5ee4538380302047c435bb5006730650230494b18fc72b7680336f055e90a6366ac3cb7e6eb89cdf6715666a4ae2a2d18ef066b6e9d834b4a551e35816daf5240c8023100d3213e9a6e6edafef8f7fcd22527a7217a83c363d9770397f2d4e66504f3cde8b22384159076abd9490cabfaa282d4370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230401de861be7d6328b912984eef116b9fc767e051cb65b7c85b928d931e7c836596bcfbae0340c0df582fcd61c59e1463023100da80cfe5c5e7b9294c422ff0416c4eafc60b91a3900193f78f63c07664939ea4db95eac843114d315f3a0a8ff6c2fc340302047c435bb50067306502303946a3ee5e832736a54a624dbdc89262eec4870c46548aa30ee83cf75ae86bb612b65fa911dd8852b08e09e2fd122822023100a28f23b7dbf30f5660b9e912f4e81530f3613cf2ee390f45248d0e0395a3e6b1170c684dbd0744720cdbf9b346db879f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023061e8839f5caa4d38f815fc7b06a054706eef715281cb600892f101941846629d535463f93b95569034e485c75cad7b12023061f6494067e61d6d29177028d12a8a1465e4de068fc57e54c7f4b43f1fe9fa6832632aab57bb55d213582e23cea7b44d0302047c435bb500673065023011893ff3aabab9c758b00cfac7ee75986f12184265b2195d2a906ff533b16ce6b1ba63f9e9f78558588dfe9086c37a1a02310099c8b7fcfb7b8e17dccc28e7567af2708cf4ff2aa2c4efbf4aab27c0441d1d9189a6dab26d471897ff76585642c4b44b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aef18cb1f088669305fca7778711b3e5b1d2a6d8210f3c20ad6da24d0f02e5bf1a26f8029f00fba2b6c418f2fd483d2b02301c46f2868ea34d89d2112c2327627f24b2f9a45abcd155f3c49e24b6ceda98b81279943ce12a041ca0f24cb7a742385c0302047c435bb5006630640230093a7fb1c6eb23fe60e01e2bc720b8d9cb6637a4889a7237393b251974226475cbe5bc63ac6d8a3143e589c3de6103bd02303c8641c845ac4a7f65f73e62533997f8e8e5806266c1898caba48e1117a2d726537c730bf27a40e7c478e34ba71bffd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c881a3c954c990436d1ac31e5260726c0414f8d6e0e255f4b6c289619add9f2d10fc2df5fc14ed55fa39ee5e6faa76d10230023d350e2ed2fbf10f3ab5aecbb59159bdc9971d212a83a617391f711aa714523ee59c25a0d602812ed2e8130fdb48f20302047c435bb5006730650230792eb5a9a309432d087b9c969b0ca9656b3ce3f970c6cd35d044eda0e284f7246e9cdc37706c4851b5f2e54acb862509023100857579e8faa1b2c4ad1b6c26141f0818be9ba20c478aaa1f48a96f2762fb0af922cc8c8e1b6a23f1ae8c545e54da2d1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c52b3c80d2110b0d6d15591ab3cab08f14fe25cc60dfc621f716fd3c3bfe5b473c6e9c5ecba516aace1afc3c5aad3bcb023062d51eb4fd093ac83d19434f01a5a44de35b913030a10b816f93db57e9dc87b899620a45c5623b2490ca2f272891a5eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f50cbf99e47644bb91984f1b8f4cdc78cfd35ba4dee9aae2db12978a9394acfb4396070c4c1f1b44d73471741c18f0f02300fa8aeb077ff4934739a346f7aa6850cbdb81746d2bb43c112f5d8c177fe376575dc048d58d9fb1c72b915cf889a2cd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fae92cfdd85e0a81a05fdd271f143a2224079b29ad1608a2a4aa92b59dd6e98f84b78620912ebf82d7db4b170f2624f02300179f842bf9be49711aebbe862ed68c4c96b8df257cf9ecf16385f38d1de182681203d8dc1c70c3fa2c5133a01682fa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8342bc56abaa24bd0fe2d34b90f58bdd62ff1ab21b7db839bcecff84c41df84a168e421b2a9550fa9259183f41ad12b023100d50490aa651433a53da45dbbfb0101c532334c215ae2207a5f858f88aee8faa665eb560e95133dfe61f3bb9213ed995a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4a9e19b7c42f90c326c75b4cb4fe4cf4055dce47d42db8754c0f6b365236b3ba2e551c52baaeccdcb9b127b80d592f202310094fcebfbe2f90ea010ce680ad93744be27183f378bb1fba3824ac911b4637b9305e3ace221344157597a1e3b86903f930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a6f017538b202057741bc3df4368e91ed7725b7012caa97e8995170e16f5cc9aeb163ac5632db3fcaa6e8a81063c7cf023009da2759b7117e15ac2656466db199433e35e60ad57c249e6ad28589db7fce2e16ee5435dc33b1c78e9d433eb7fbda970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088400e37d36e8118849e74e9c323b0443fffbe489acbed9181325638d5284e339249b737b014ff1437986d5a1a98f6670230139f8bb7c1c3f0d592cba503046f843e2843e517eb58ae35b667665e763369046966afdba3b6eba96840fd9ae97715ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230155c45e3118574620cdf0a5ef8a4d79b92d09cf8173d9d7bf2d1638f774f0badad009b0c55c23eec172bec4cf0d0934802302697289abe7976c9a60bd4bd9a8f8dc9fece7f4f1b067bfe50ebc199837e58ef7b94732f4891cb271ef21843b0e520350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230445987df5eae9e4cee68fda5f7f75c0a39925669ff16a31998642054211946b161bc6b68b7efe6da1a605567e17ff36d023100aca1016011c2444ebc9a95b6c4abead220f6ff51e2be2cbfdd30411090421e1caa89fb5f1c4320af23bb517066e2e8290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230128922bf4d849d65e11b7907449ecf1431c976232897f3fd87af373d6541dd9b5d47ace6d20d3db9b31488d3d52186d0023100a108a83690c626b6f27b5bbb3494bc27a9ede0c3ca974ca3901a5e4831bd902cb72e66299ceff6c459c342d0350e5e2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f50135c6795c202f42a8108f5e2497fd1296505c26c95dbaa837badb5d423457e884ab2783b2d23dead10ef9f9b76e8b0231008b5a7fe67b7391100bcbd0958ddb174d12769d90d9686f1107cfa9a58298d45f61e3a4c856e448e95f3e0def0a07ef170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100967c91d88123739b6d79e900fde4ba526df52ee09fceb5ebabf9fdc5e8c8256920e3de1080005d3a72aaf70b2999e3f102300c7b77a6975e61b4c8afea6a1644a22b2054c5fb2fd1c46549f411545ddd1def38b7a0947515d7a976e08258d324ea590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4d36e651975bb2d9535d7cedf6164d94ac0b810ec07f3083d247ebc2f168e70c785bd6e4fdaabf32ea453f96009455502304cdadba4b97c05a4d017e7b23528fd3dc1b4e001a979c8363d9087a3d4feec68a687b00cf314ef813498ee86516b239d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230751e404bd03ee7e7051cd73fb06b2682d3b68a5014aa4cef0a4429f519def7e38f24e2ec2487f4c28ac5b8b4ec1fc435023100d34e988660d0d2a6ada5e718b13d19f0437b46fa8e0da80e0057c917fb3641001fbc99160331026e748da29dc7bc37950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bfc4551d9eb34f2b529e3c114ca3887e7822be59a8eab8d4a66dc2e3789721774619c1c445c9c050e3f1b94d5c1f66f023100f30ec2fec7cdba76a4a0a9c2243d0141f6b892335b4b896d8e0c1a33c2150889f01011ec57ab90d989baa6a38077f3bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a4cfdc6ee105341c252b6d250c3df9e981011f8e7f320b303511015abc7ff76561e69968c881b83a8b50197d95e4f6e023100bfbff950ba9e118b997101ecea0360a6c81cad9f6248a4d407f038292801eb456b6423efba07a4f2163683081157ff690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088760b44e0279966bd9cebca31f3be74660a0b21d0dae695e37a66bab11923452714e0e3fe8cdbad41c293ea58e252570231009de8b08fd88fde2614a120e07e672c84a3a4a1589fd6f93dc98541ae97ff5283ea247868d6e987480ce8abd2da83a2830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c543ceec4d61658982b3fc7fe8b68b4f87b97246b77bb3bb484536e30fcf7f06eb02a25ead6d44994adbd91f589eddb023100cd2f270827b6b23d9866268c031e4881a150450ff7650b49254ad2991b6dfd2e7bc27a173f1fdd21ef7c64442e3ec1bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023072be37e39bfcb97c61ea030b565878c1a19ada662bbce3b9131e35ea4b0bc8881d49c825e84305b373063e1044c8981c02306d3e7c85afd2294442d48dd538233d130f9491b0372bda901fda90bcbf430f20ca5d6f6e83b8e8bf57fc57bd61eb0f2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa699823f8e44db614d08933bc20e4a51c94b7ada36e8c019b3a187d083af2429fe66a1d57f97b411059f465eb94ac86023100a2065e688ff9c8e4714546dded13e96f2a6493b7ad055d0f9d695e4e9c8596b5911a4f286ea508b9f44d24ff6315494e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303919831f36af7336e27d0da7bf9fd7850d348795950527af2e30cd7657107e7da8c37b6f04811d172aed6577822924b6023100eb47ed850e660273276f61fa5df9c19fded1213f97519001e15eb60801ca4b29b2c6af6123919fec30f0d51b1509a46d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100867f6c92aec1cc4d68fbebe87b29abe70788fc682aeee0cda370fcc73d4fc4f71f194533d16c691be97d881b78d0f8d602306fbc581bd20cdaedafdee1f3e1d3cffedbe2accd65995747af84a84cc103fcb00e6bde63e7e6764dd55f2c6287394a060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c9563eb0e08c52d14b09cd14fb2b4719b7dada5ede6bf66c0c2e3beb3152a11957bb2db38c1bfd0aeb62bc13f0907e5023073e56f315887e893c663d2af5e02974a1fc7355baacd9b4742d50e745d21b51b4e46ab9c2aa9622f59f4d68bc47aabe60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b837f289fe28e7a0f6b162521c0738738da3eced51f422dd162739e1ddb9e526985b47b71b439733b82b1a17826d1eaf023100ae952d97f93b7275b9e0d62c54e994964770e3eea8f8907c2f431038d8e4610332e5a311daa0d0bcd1c01328aaeb11290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e07e4b2ba909fea9f1ddcba4e6f76c7d10513221d7d8bd154f94142fbcc64ee5384ddc0dc207e995c4f89e29301905aa02301bb98590c4fd454976da9a22e61048dc4aa6b08d8a927dd746fa0943f067d431a1e349e8fc3e013980b02ab06d89a1bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5e633ccfa7ee852c7b4b5901a5be287b25df304d84a084362b49587aca0067ddecce02f3eebaf8f80a4b6c96509c1fc02305e6d08a5009c511d8c0911ff4221f72e5713c4623594f414d2c408d99489d351001075950bf81ff9d86ff43a23deb9cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a8049a37d8128e490d7d2b24c3f77239b0bc448b15a2629e8cfe51815f9689022ee145ef1e37f46dce6aa84ab6b3e2f023100b7c9ce7ecefe43f3853a50276a93c0e7e16cd4b458900ef315a6d633213b7b461a49108f6f92a197ce35c9853cccfc140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d4083d34acd023c3736ad0584a52bcefa2d0503ea8bca1eb0c0f2909fb97e153814ea7b7f9290402bed3aaa5f699cba02300eb4324d844ebf478d9f745c9f95cc30cab70fe5a10aea07e548eed0885878619265af294404b721318018961cb7ac010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100818f485fa9653a7b659919fafe857e97bd8edba9772a50f05eef49a15b26c03eb4432e8af5ede75632108838b0f8163a0231008e8021a0fd932dc5b6b29f2b353b69884e6092772f0a8750b2000c168f0d0d157c118a84719eeead920155a942163f010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9f1b041905c7607c1d0765b858c9c2cad727d6b9216a7372e6ee55262c7a6c002286a2a3b6cbc7e329fb545e7138ec0023100e9155e4b4f6bfdf31f3a37f184bd01b4661e62552e52e3343eca621a9baebacede7dc609a6884e9a3aa206943f9186660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304dc162534f09221e018b2915c22867f6927dac0bd109877966dab49a3a344e33a72fec620f5ef4c3601a1e391a12e7d4023077e3717bc0e7502348021c44694a16227a7283108bfe6f13e3788c1033e8ad388043996925f8a0819b5a8b8076a827c20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea8758dd9f18da0f91f6d6f67c883cfe376f9a5baeb18a66fc0bf9ae1412bd9440afbff29c65788a343cb686d5d1b2a602306beb898ce540409b33fc3fcd3be8ae2bee5f3f3e62d2587a9d0ecfbc1ed2d32a0bd2852e1e9d1497bd63fb2dfb2fcaf30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304529c740a20d9c48685a820599f58ba69224e4ea086dc33bea95743f98dbcc5d3117a20ba696a404a00ea99536a460b1023053dcccc5e70e1ddcbcef710ac0755dff9040ac5a997a1dc34e6994453c2a888205889e3b6587f8babaa5757485805fd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091a186fe6bf529704633cd28e2819bf094328e0658af1f7924bbe879e8fab8abc92a88e2e6054fe13218586594e46354023057d766591a5a5b51589ed9480ec2596b1f8eb50dd5303bb8df9dacee84d7b728f09818f2680ce50fcc01e120e6fe9c030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100874473899a4b9543820e3c6ca3f8e0cd438e9ca03c61f4d5ba26b1f28ae561a8f65e687e66c06790f55ffc223f994446023042f38d0e5fbc5deca6046258797824b97cdc773af4bf5f95510a4bcd61591027f63c21b6e499a2ae67074f3890b544750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce6f92b58998b156611560cf2ff1d3d878e72386c3f3f6a8904e178e204c84b5a5440a21d554944329653be2966b213302305ddc240d094b4286f01c6b28c282495f55b860b9eb161f60c825430259f58a1920bd92533c9f08592b5f8d0352b818770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230293733f9cbc42e8c35aae31612d7a4f3f896bf6c748216bda8f5601a011faa7a9f0986c0453f054f8293eeda4c20aae6023100fc21263ad8488e4b42fbf42d19a4bec463620f1908fce3edc23dcf9d15dcba367c034662da7823dcfa16f6f239ca6d5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bc47450a6abada07dff1dc843183391f23e3ec1031a1de031e090a19c7280f68e42a84d55025c2f0bed38ada39c2299023100a7ad320d3eb001fe90f468525a3a347185175adec906c4745c04cf02190743370baae4d0932950f3bf52b88a376b28860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029270540b28bce00617e333ce241ad4100c334a19bf3e2d1cef1bbd2cb03d34ed4ada1d3967b53d2ae0f759bc367789602300d4b553ac507312fc173ca4461426764fb860726e389f9a9896133c569eefcd14a4dec9246cd50fedf984389e54adb1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bada26bec52abe546fe4ae353e32407479928141edddef13c1b5d28a5a1e1dc147884ecffeee2498100ac6b85ca87b5002303116be4ec83fb36b14d8b28bcd40b1350b5f53d5c77d0a405f7c1e687d9fff6ed196393057826c2d2cd9a79b66a644e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f90b2a1b8bc594499c7a219ba9890488afe20b18ac2938032031f0bda93543fdf032b1896dd9e54d3aeafaa6f29f353023100f93ebf662c75c22d53331b808b617c2eee01b3e6a9e869f49b23747eb568347266ba9bf71ac0dfd2da69fa5ab30d288b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e35b71b9bec4d3e9cfe67d78777df0ce8f4b7d8e6a5b3845463df367c24e010bba4951fcd93432e743948d301122e12023021cc278a2d7d4f1e19f7f98d802b69a754c2fadd16c4fd2e325a35ac144410e82bb77cb2fce56a73e780a248ccfdc9600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230103de07071c0ad75e20406aff290fb753021c93bb2121087b19d6d2f2d61a4bb183c6d3f313c49f7929fed40ac0c826c023100f7606c511e4ec61fd93ae7be7916cc50030a0d91b77b8544713a8e38981ffbeeff5b99a6ade0d9ffc6fd20fb824a12890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ccfd968f3141eeb85e66c7f81c08b9227cae22415ea3c43cbc42710abc6c95dfc031e4917387a5112cfac27dbfff69e202310099dc62224b21677c32a9cb5068d45f5506541319af6716f2f9e38153c930f349719d78cb0dcc426c50a4b073853ae4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100eea66ad06a86a80ad903951ff16003415af37f56bbcd5e4917f41082854bd0266fcd3c8208c2e202bd8d660ab90468720230086ecd73f1f7daba009595d05cd16de4717cb49d5fd7977a233e3032174239729c61e91e86e33ad9d1d0b5d3feff11ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029d92336e537f21fd67bb2ac69e7af39550bf0b735b9b76921f0ce2ca41a308ff8736855b35d17cbec29890caa2f1f32023015cca529085d788e674afefd9ca2a15098b7a0e0ce5d0f87d230b8fad11072a70560e285c789cb9ad65ac8c871c0fa4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066b059478acee65f62ae7148b4ae3b722d4830014415bfab17c2d5b8710329bf6484b7e3b9d35d3e53a922daa4a7d450023050eb38916a47d309e7b5052fa352343cb7ba6839979ce72f6a4f943a4152014eb21488ccb73efe23bcfc06e5556fc5bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbef2a1c4c1bf5246ca3070c428c1cf9d65d2a80db9ac9001513b0e175b27e98935504f83c7ed15f9091228ae7e87d5c023100a604bc603765de84a81355fc8f7b7f0bb8a65809a8103e13ab5b5d2730795b48e919eb830901cbc2f9698d422af5f7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015d080f2b2ad85283bc4292d1c7974d8e2033cb903888f5e50f2069d2b957240e3e558e7765277d5b2c83c2af0e12ea402302cc78078596582ad6b0be583e854c690bc4c3691cacf939229176cc25115e93d5c3b2f7e25738ff2509acf3fc5aa03340302047c435bb500683066023100f3722a64dd536ebf53c495b3af8d287c9ef08fedbfa76d0c3a49809407ad4bf5d8b52682bc6299727448bef643c9e05d023100be85f5f6db6892e21eee72d7173a3abb8faf650d4aa9d23ee6747a9fa36dcf311fe7e7a21c5e55225a54ff721d78fe880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c7bc7fa27a21a103c3279cf626f1db610bb0f4da3543b66379a8a8b3cf54436a300dd6ba3b54c0305a98155142d0a480230698bb5d5cfbe831f2ef64c12eb3d2273a18dcbb20ab0fb45b10e225144f8f55d9b858fef4c71efbe002c7e92a3ad627f0302047c435bb500683066023100bde08a887d921c4c8544cafdaa9a4f6beb3eeff46aa73ecfed227de9edc64aae4ddde2237c6bab645ef18a73adbcef23023100e1eb2e0fb7728a6b6bb37ae75d7c22db944625e49a7b8721ed5f2a393a0a59164a4257581133335b80a8e6848d53746e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091e52c78d95629049b335d6cb8c99195e21ff31d53d00be88011d21f49de6ad4466c872007c42d150df441ea06515d22023100d74f69ad272bd5dec3a292c9c8b5395488d0c055fbf674480720c455b06f87305c808b2d461f996097ffe3e13c3287680302047c435bb500673065023100c64d054fe22827a76eabd529fe29d070fb17253c5c1aa9d5d65ebef95907598d5c294291a2045076105c6c426751f94c0230286c2020344307facd7d242fa5a7961ebd06f0a49cbde55bc27d852e563d7b74069508c9d72fe23a178c3f4561ad0bb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e917dec244812335f0ffbda9560bce3da742846d8d383e013de52a9204487611caec7bc97144122c2d3e3978375e2bde023100e412e0b6d3193452e19b2a479e29a8eff74031700ae5600e6ba924f323e12316d98cac0a45c252822ed10151cb33f6850302047c435bb500683066023100e14f4cb5df47fdd4a4425e38385a39edc1431bd07fa2f56799fddac845758816c1fa75622ff96c95d5607802aa04a5af023100f62c0831a29a5fb9c150bd2315dc05fe5005b9497ebedcf74a3c88c3858c574c58d8de36542920feedcb949bf3ad613a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d06d29dc6cbcafff4f14c327dc976abc5e4c25b56315d266e492ca52243301d79e7bbb2ba2fd6f33ca79b44f2dd3746023100979c0db22cc2502a53e858c63ec264fbcba34b1ba7ce0caebd05aa8bec1727dd00d1a928d78b4178024e171aa638cf8d0302047c435bb50066306402300dd9e1d11774044adcc3f13727bceafa1f1d64149f67507c81b5c2c494d96945f4d3ac41440e2c743fab6d1b5a98fe3d023048cacdec97613cf970b3d891ef49d98934216805dbbc4d567cdb67d817662b761e92f9e2f0accc3be42903d227a083d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009238bdd5478d7861ac93b5525a0ab6770c0eade0ed9f4ffcbb4b975640f83dfa68806bda84036b57623f9f533d3259e023100dbf5d4e8aca81d0a49522f321cb5bb0889073fb6c5d03b6e21c45044bd8c0114ce69b79a0817833921458543a5dbb5f40302047c435bb50068306602310082d97bf5fbff048b39d5176ea17b41b6ce18b20bb42815f22c6da897061602513b5de764f3bbe9e9f92469537447c18e02310093f288fe803f9c8cced10f659b7fd7b902676034053ba2f9cd03c5027866222501608cebe7ff728497706e6ba8bdc54a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdf1bca4b9ed9468438f3d0ba572a4a2e4f3d725c5709396fefd48526faa824b65c8eefef71602b128134392948dcfa4023063509b4145e3b341b80f7de16766373ac00412495abf6031e40bf4c05cf2850f38022885453538b9a89af3255ed76be40302047c435bb5006730650231009387a3de0fdaf55877badb9007887ab52fc370eaaef27ba890c559a31813147d75c3521dc1d0ee59ab8ed5b6e612506f023065647901220c0e5c8d8a42fd983407ce4ffd02a6149e15c370575692f665587435cbaff51f0646e90aec6f6daa0e19c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f0783ce4f7db8919cc5b4e7dc36dbe9d403ecd6245888a5d0e9bdb68adeb3a7bb80538886b8d940b390686a30b095400230168e6b1566ea34c0b35782fcfc69df7742b92a85663c194e8574c05858250c26077670dbda3a3c3c2fc126fb696115530302047c435bb500673065023100fd6e8af111616a8ea852340444ab3ed9fc791581cadb16e659ae60eaa68a38211b3d4c6fde4812d8c30d32ee6bb63202023025ebbd5f3b8bd8ba84fc170fb89c0e17f475019a326a2d0af0cb2b5d58c0a75ea662f6bb46667f763348020eb6cfa4f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032e493e3d8be661a865f5b0bd4dcf006b476d6a317c9f6231a7746e3d6a87ce0996594dd66040f5e5154fda16ec4a1d5023012789b4038a6a6202fe9731a4acae3d3de662c75db22eb0ae5bb6913c6f80e62cef6b674cdd7a2b3ccefc4c17439a3f70302047c435bb500673065023020ce64d702403e740616478a18575975bb894c6fc75d5ead52dfe3fccec4cb5e19d81c459fc0145cbc24e46b24ec52da023100bdbb11ae323a81f553a55647b585b3a07d875e531a04d26e799be1decfa452fd2ef86190e0d1e6e67f3ca59abe25aed00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070371399b9416c85ae12fc0982372f1dfdae3a68005d604e7b402cafcadb15045983cce4b6350d94945a29f1685433f3023100b661316d78104ad81aac31755ded0704dc4e27aa121d6abf587092af7342f6a0f62aa6ad42f9490e90106a25514278720302047c435bb500663064022f75aeabcf5f5a6c5f2da20f452e7bbad798dab8dfcfae51a90540fa46ad0a85aaae167360ea24e254785f41070315f7023100cba15e1abdbd6edcce4284b77b8197f37a5182656cd2b1634f5df8d88b88d052a12d4b4f4dd390aba2a4fc9378327c670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe273c42d9063848f34d3feb7fa416c3037769bc2fdf3a4bc1a2abeb2369dc9a8c5eebd1d53dfa094376900ede4064ee023004fc8507266c3db1f19668957cc524c285c4175b3f455723efc460ffa2f4dce59d8d2fd07d9f261735955099fb6360880302047c435bb500673065023100e78d26ebf6d98de33006ce194730876566983b265139a6dd1687baedd67d195d00b7db0edf81ea1ac19c6a817ee6e665023068030eeb218b758451097b6a6e024ce55e74bdc7b69bd4d3ff56404338fef9f919be8dacf552d5f1b414b4161f25d1300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008defd1f53bbbffa6e6499a302b5b2045f9c7a69b0ae2663b220025581a277015be0d744c95ccd544a1fdcf017b9725410230518d92a40325fcb4e6e99c181ca4eb4ded0f074dfe9873860bf7d16f8eb0cffea6ed7bdd036253390d4f35455840055b0302047c435bb50067306502305ca9c2b75682526630634a459f519c6e52a47948e2bd81de59c19d97c6a31f1c071d21cf2555142a9c0dbe9a3545ec7002310098e9582996f9faf5dbe132d69a36b5fa3694f0df78a4ece12635da831110db4adb1da257059768f952d27f213be356440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0376231e7f59784aee173ebb84e858fac244b08c16771dbdfd03b02992fb591a70180838febdc6040ce4c7c0c5e81d402305b64c6d898add92568ab26da89136aa64a9bf3e98b71031a60a03bf91cdb294dbb236ffa5ecabe5263c5b3ae1cefa7d30302047c435bb500673065023066936403af63257ee5c74f181bfe622491efa2f9b66107237009fccf1570b946aa87c67e8c8c2400ba8fb7df176e5e2e023100b706fc86233cddc26642b03431b3a75505556d0a5593c0a3c3622160aaf66222fcc0bef1b0ced30b7d11c0b446990ec40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077d81e9ac2ed9c80423827988cb5104bd0a8fa4d2bc875af09dd88a71af39a22df2db83ba424d3637675f2b7259ff18d0230008e9c30c327e0298f5a6c67f7b1a3568ed7e0b793c41b827e7e5dd4d59683ca0fec94cde3bdbf2058525a9f9711d4c60302047c435bb500673065023100d1e5958b363fd17c3454db2734df5229e832fb86cce2dfbd03b81c7c82c108aee8f66e44e9fa66c929365aefd1856d2202303f82bc1162978fcae057304b4c057ac5c8059c086b53e77f5ccb48522821f56dbfa103ffb1348ab31bea9fffda5088950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230416f74fbf7038a16c796b8e4beaa0759042d5b7f96af8eaa71d968650a09b640fc4e3e16de6852e5baeffc54ba09d95702301febdbe25292edd84c1428fa7adeb27a817661f68c82a285ce6298126b6783fff196281a1b549863760902a2a11919d20302047c435bb500683066023100d287adfa732b46c7a5c328dbf8ccee4901ef5c0fc6d833b4e6a61f1af100b22ff366f257f5d2b536d506e852b46c9c6f023100f65cfd62727c78b492466330ed6d34ac7e503d54ea53a7b1b97052e984385d72faabd27cecd95ac3e27d1d22b29034c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073eb95b0bc9f78fb1f5d07440ebd2dd115ed5a9a2da447844166466556f6bfa28225a321406b70b24be517840bd3bc41023100ef5f353dc85f0f4a2644973f8fd1e2818cca5b995ef60e5c1010e209d7dfc4f133d96a3a6025623060b9ea95406de1690302047c435bb50067306502310095cd5a8610a5604c1a63c83e377bed30464ca79e87b7735b11ade4f0523f6f72f6ef6c6a9c594e229887b9b8c7ab7604023030ef5705d4c55baa34678fbf70c25dd9f233e4fb8f523c52ccbb4a855f8c1f02da654d1dfd9a06efdc610fe21e8c0a0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306fd5a706fe803df4175ebbd3fc40860ffc2cf8572b719197ddd1be0216f2627da5e49f4c5f472e803f68c300089b2962023100fe9d341c1d2cf5ec65978d9e6577c1a25899aa996d4e8b3d5841e1c21b3a90b650304391246d420560e4ff8f3502df790302047c435bb5006830660231008d57709ef8b7dc1743f2112fa8d4c67b49090b6f3c5281a13c3e64ed8f21de79257530aaada68052bc1b6c10550104ed023100f5f4f25d5eed9d5fe44e1db6744d0b5d4e07a268715f325e34679c44f2e5b298e8d788be854dd423e4d17740d002d3a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064022f471bce1d521446687636547b104cddea010e946b25212bd1e5e35a38ba28d01a57cb1e9b584c51122f79de965de6fb023100f4eba0e991d66bbdae416b70748f04840b88e6cc1a91159d6c988aed36ddf1ff3765842e6521a43d07496287968e0eea0302047c435bb500683066023100a7163d2676764ef77be5d27779a379eaa49646e2dbbaaa3e3452d1b096fde8535c16b5e3cd2db6167e54ee5fe1e28aba023100bec56065a9ea692487b3d7bc6529e51646a1cc842d668125f3be980c12cc296a75685a5d07e424ce9420ead953b86cfe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230448b307b639769358247d1ea748fbc9a7cd73d2772ee9c078fb1fdffd289331a089d9744e0921d30d6b4b59e70d02e5a0231008c69eec000dc3835956c05a3a359adc5ec0ac681f3edfda3747a7c89ad7549cfbfea1ac78539172901b9da4579f571090302047c435bb500663064023008da0913dadafe0f901ac516db34fcfc0184180ffa8cd70d696f7b3bc2e49ff60605516e87d0055d174feafe84d9556d0230010f3ebe3f5baec97795906e8c338b7213418bdc7fbab1398bc010a85f0f91887f4655417d2cf0d6707ba80b686a1b5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230411ae7538cfa6cc494cb2a54cfb6afafc35c78f515ab294f7785a47874c3b7554d1c897c0e1afe1a1d8c485896d2881c023041966ecfd4d996842518e459927e6dafb67ec953b529fe1da0037eba3f745b5ceef13c9fc58104414a0c65c217c176f00302047c435bb5006730650231009af03d80ea63e2ba11c3e2f535f09307f53a0f95d7a365bc464a6a6be4ba28909d3d232e76c2daedd473248aba2c478b0230061159299ec958f06d977cde4ff1faa0675af43e088fdc4cf6fa0565b4ec4d7e36ccba96bd3772e70458e7ff5c3ac1f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093db9ad211b802bb6fc8d40e84634dc5ad33f0d598e06545b1aac717d2f78b924055d8557239729c15bfbe4ab21b5a3a023025b0efe58aac78e896b5f0acba827fc85d9dc716aba2856b2a920c31d87bb5bbadf23808502a3db4565c1d7667730b7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303a0d44d5847989190eb96ff89a978d276c99bcd6502170503bc0acd5ab72b50b706d1591652c2a59b26eb4700301a0a5023049c20cbaccafc25435640e25953e0cdd5fb4f8a10f2884558cd493fa80e014d8390bc0fe2eb5eb2568663099187964fe0302047c435bb5006630640230101a058848ea4da6756cec03172b07704478cc79c9c13687f50ef5d912bee73e274f51716f8ff90ca93eb55e5cdeaea902305024c3b272f003aa47191c634656dd9398b492a21b0efbefa278769edbad2394c16f97a303154bb29ac07c37c6246abb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230393643a9433b3d06fb029937f372918c21c1cc55aa2595de2a1f892e9bd4ac72e897c8245b498bf41443e9d7d77db886023100899af573002fd70ab340a149fea623ce69669bab22d9453c3eb77b1f96c2479fe955fae21e1c5ee7dd53ef7b0102c2870302047c435bb50066306402305663c9e3227264158ee9b86851a5abc763734ccc5d52b4825ee002fd299cd456ae8ba58e05b48e604ff63e52e2c50c4a023047f591652930ab7fc4a8508a6e35bf8ccf4f19777b661fa26fce5d9e2fe9f053679f06ff58f4efabb4e78152e32d02180302047c435bb500683066023100e0f10183f0f7de36e173aa306ba38dfcb15344e16eb58d715baaad64a8c3489d81b6ea1ee7e2391322a49a30d408a39e0231009aa4dd1de0625e67df0b82bbce8f99d6fd2968fffffe59572a4eb3fb86fc85656adc2e07abc07fb14c78340ec18368070302047c435bb5006730650230778a69f358573e2f6c395845e0cd93d765575d4fa9fd73e97c8decdb7a95cf7070eba629029d35c48b500ff4f53efe4a023100c6891c3af4d8b2e8a97daa7d92ee6b84bf167d73a401144ee1f941c470542e0f593b0c275c4f1077145c6293ddc12a910302047c435bb500683066023100aed100520d127d0ce4b94880695160b022054be25d61292c507829f2090eb7c5f3f2ebc6a900f3954524ad662ab7a91b023100b3a5fc82f2b24320ca792e21e4b6b031b9579910013f410191fc83110618a135c7a70c7ac2893c3f122a101698208d3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff1793272113b42d3c578cdeb93c72cc2e683afe34d52cac42025480e9b1a88469acd94826f382e200c10914cd86217a02307cd1ed2b6d0819776944af675fbe3a036e86a8c3363373e3ef57af2fb4c704d8803a0771b1f81b9ebff62cea97f5dd120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ccfb830803c0c3523a47c5879d9fd8703744a931e3e799355fd73471d5c9d83b30ae00921167c31aec068f7a12bc39f023100ba123cf79d228960d2fe739e6fcd3847a0101af1a3e65e950f9b204aea63c8ddca233abbe489657781e2170e455e6a240302047c435bb500663064023035a326ceb43aad42fef795bedcba1b3527a810b13b7af52fba4fc217963d78c49ed84e629333bca52a3c9b276fc386de02302828a05a0d39432d3fa167d56db6c6a876a46c0f327a0df508e14c2a74e5b8f8d2c2e4a5fe0d20e8ea5c3c41a6ff842d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018136ab47cafd94c4f034f4a8b5b76cd170eea104818811e33fd5cead64151c54f34abf77932194a4acc7d37a602c6b502301e147cf84ca9d5006aa2b4d6ed508a1a573cc5163104f9a252a67bc9a5232f0abd7bcdfd114ceaa3dc3b8bd4c52cb7eb0302047c435bb50067306502304ff7661e6c8ad93a568740aac150d26b2e206f48cd6d149fcfc8dec190da7786ee7bb6f615944389483754eced3b678f023100dd77d79e614eba4004a4a33942ca143a45315517345b1e31f41d65f1cb8218dc5a0a4d82baee31bb7ceeb731b82a7afc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303963be45cdcf6d6f21207dd2b6955e4bf2ec8bbe0ca08ab51b4c6d5d052b1d74c60eb16f18989feb99d3cfe93e1d498b0230418e3b8f3422bb4696263e516bc08e2a8913ee2d5b9f07858222944eb8d7b6d59d87c61572e11871a88bae2d6bb3eb800302047c435bb5006630640230374d2b3e21ff8f3271e18cbecd51f78408eefd9e90dd2c8f7568f761ea496d87bfd24117a88adfac974febd8c00e82b00230532d5aa24b130dd0bac346d27ccb084ac5708c0204beef1667715da44637794bfbd7247c30a8d652091dfb15a88bf3dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100daaaed2ffc4114bb826791eb342c0533961ded7b5f2105c802e8bcd469f513110b4daaaebff1b2e96431a15507fec3f602302f60d508efdbd2d9b9909a465eb7508b51fda7a70c9c39e548e74b6a34a3a180ac25567b2fb2631800e6f487392867970302047c435bb500663064023063742985e96c7c8efaa416dfc32859d34d6db5dc269eecbff36bed6ad6d2fdc0d169821d9020e6f307535a0a8da1478c02300e2d3f9d8ea446f2958717829fb0290805b663d1dced4845caaca4c6e3e3083a3e1e63b88a2833f03864546f9b5baa230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fea0c834b039bc3f6aeae66ea1305fb41fccd0180ed8b5af68f2d08d559289290ab1804c2c7769d912ac63690247fad8023100acec836df345de5b3f1e085130cb923ad5c9949e8b8356c7cae3b8de7c377f4c3f2b5d601816bea140b1c62bee572b7c0302047c435bb500683066023100e0eaf239d496f11aa9bff062407db04c26448ffc0687d66d5cb40d76e5245e24631686746f990f1613f63097779569a70231009aa0ccb2c2f9f91fc811f89309cadaae41395a1dc4e77a37478af747045108f21c74b55364f0030c5ca319b05534897b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099eda6926aa29e5a0ccce005e434a231ffa3ebcf6cc97f2432a789dbd6c98ae2529e9b7c4cea5647e2652c07a1ec94ca0231009a9311ad6637ebbd60fefe1498272c497ab99b0a0887bf6afd2409c54c40f9c1d3fa327f7d1b58fd41cd3ec6cacd01cf0302047c435bb50067306502303aa934b286c78102649f067dda1ce2c440ef5465f2956b0611f2bf5c0363d98ddb2427a44733206185f8dabd9c6274d202310099409142d4fc165a9cc2ff44e79e0a004f82e8f54f6b91ba931c8d0d1cf03d2c9cf68f89d4979793f0186c481f3c2ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cabf9a66d1ad4cc731ffa73c3a5b65587c31033e25c52d46c665943ac5e72d31bd6e6e79b47af405e3e6f9a1d0687303023100cd0fe7060c50556a3764730c9209eb5968af23af037bde2545edd22339596e060788702cc99850320e7f8f4198771b0a0302047c435bb50066306402301157f545c277f6bb85055f853846e2d9d7eb3004c0d704449f0bcd9fbe5c03c9a89753ddfbd9dd21aa877e702fa352e802303f82e50ef61eee1b0c91ce61141275a2f3e9a2224637b906db8cee431a9d6e69a7dc8889d7720d3affd712905a9fc1c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1888d978ddba5f7cb799b04b1b8afed1eadebb2c77df61d05e7c5d6df32c6529cc7f711fe870b07f40047fcaa7a412402300bd271e42528c4328701ede13f5b5a464af9a8427acd9300655776b5c7d6511a991a501b5392b6069d2063b96678735c0302047c435bb500673065023015d984f836712bece34fed2fea03610f8971b0d4b12f5f60045b51204ee0e17ac157b56c76956f06ae560806894e2b13023100f7ef5106e50886394a1acdc439f34917727c054d4264fb20ea7c8daf47432f1fca4f4f58b6a319e87a11a3a5f65b61800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ea1c56bdabb1f09f2fb37c8026218b71f9506530169ed3a162b5c423597f9ea1d3382de270860167ac16223ee1e3a870023100f4da89d89ddb3ba05ae6d3f7864a89cff0efad887ea044ff664c41c6d1246503a55ff5d85131ab5dc437fd69cc7f4d840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009627c536c9b52d26d03d3c15cce9b73c1548309963d55139f706a86d899b358d47ae90d21401d3a74b895b7618dc287c02304af0bf1d0eb5eb1f4c1a138516f41ce77319ab152a194a08daba32653a998f3a76894f05c79ab47e77829cab5e6926490302047c435bb500673065023100ddd1d30376cc8b7611525d685735764f7aefeb1b1dadfcd611c0f8f8441dccd864045866537f3e1e036f50fe1c10168b0230324a8f0a1f652cee8b74f20c8225fe02add7e81681d01744ad1b241463a885aaa4151a91be721fdd6884edb59f976f900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f88722ebac6a5a9468d5c5679fc8aee16205b9baa0a9e6ce0461c9b69099096aadda1f2086ff966c75991598f9b61d49023100b1cde1d50781e60d6944fc5327102bcba4cafb6e1a4d11b4991c8633119c4f8e47880d5cbbc2f6492f50777419bd784f0302047c435bb50067306502305f8e5695e91aec4dc90172167fd5e28d59359977e1a0f32e58dbc30f0dc9425116b24f0ba8e893ce9a886a5da507f390023100dd47c6b3e7b862742914f01faafec1b36ac3f4e344f4cdee48c7ed443ea11b6bc0858dca7ed50ecdab389d0cfb490f230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230711d6d184b05e562f66a0373783cd9d69efe2860583eec17553e5493e3fd0e7a2ca294b5bc6b6e5d80d83ce02d7c163302306d11436a8ee3949c2849c4569f32bb4e26aabca286157ca4685d29432ee489a1f6f64ac618ae528c85c66dcbf61aa1dd0302047c435bb50066306402305f0dab249a919f80eff11dfdb350ea793cad409c8db0ba991d97ba76f251cb854a2eb6400ddb86c3b8e87af8cb7e7e41023070cd64e0193f1d0493726124bb4966a4e94debe3789403b8ec2361ca539628bbd641840531632677e9792b793517cfcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e5ce63a3f4c7a800f2a4796a0b35c126b03b2a18be7cad913891206d282885796d0913c4e667acd5ed30ff9182c9cf10230169cdeeed704ef205d086b8d063804e129c4dd1da80b8f8bd630edabee8ab17bd0941c9a6cb7a4eafe10f7313a6608730302047c435bb500683066023100db90260e05adad3bcdaba3cec09d7092b307fbdce8eb225456cd7e707eb5b9f57fba46da1d69b848be09ec6ba7380f0a023100a1802a041b98db64a51e9ce2d5bd6ccb05800176d14f9fd5193f8705359697d2ee45d46c48f6eeaa0cae338c603c0e6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b6cfc7c23f6812eb789064f06f16d8c51ad01b885c4749e312725782a04ec06c61e8be4a8cda4b4bcc78b55577c0f7d0023100c99df6026716bd593a121b53fd1ef39cab96a8babc8a2c535d8803313a11417f6e9100c069bd81e44b136978741c9b530302047c435bb50067306502305b8de1b00266d27de0194a0f3c52edfc4e0fe9cf31667657a683315cff0301ce5ad36fee13fbf639b28bb8000b4a1ade023100860b8aadcdaed0f9ca0f602a307e2a767ca7bb98b02d6e289c2d6bab4cab2d84069156d2e954d0d948a69c90a20bc0ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd8824533bd8436c1de56d80ca84f979a6e17b23ed0298480a50196761552975a8beb386416338d74ed8b9149ad2ceed023025d3711fb9754b5e6a7ed7b8085afaa6a32a74a71d533ffebdca2694e526f4fb6102a47b3766f9990bf2740cc25b15870302047c435bb5006730650230589012814bf0eee97095645437a198a3023203c6c5d7ca6b92ca767f699e5a64aa1f65d9e4027cd55c41d6bcab4077a1023100d922c6244b7aa9f1914d40fb904ee286e4bf3515f04392a8080e94faa9a59e3f4c3bd2a1137d07d2953189bbec79a0e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7e9634c169e9c97ba162c78fa847c07b655baecc639d6e21584f8aeca0077c6d65d4bd680f1289f7a65c145bee47054023049f6a1d5e9f96b52663ebeb4883545c633af9c0d3aa5ebc30c8ffcd471a9d2ea10f715b14e8728b37a01a8a476e76bee0302047c435bb500673065023072c1dea55472902acde08e9930ea0a1f0821056306dea2dd2fbbfd54890c6035c8a9a00efb142f48959514d9cd483b27023100d927cb5e14607bed7d08f88eeedcb5b3bcfd4250565fac5c4234d4e825ae26291be70bcb9a59c17ba4efa9e2746147ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ebea7c28cf80457a647c324f6638844fa1e56a894155e527e9cbf8c7c930bc6fbc4b4c37a4cfa4f4a4551e4ba5edff4023100ce2c8488ed1b76c0be074e11e7ea078af435e2e3da101abdac3a8e3bb736b0e6bf87a3a787306407b0509b49a817dfaf0302047c435bb500683066023100a72f0e8881cb2da88102b5c772510ceea95a901d963eb9b5fe4f977cf1d5edb871fd0e8b3dc36729a9e7e2402bdec7cd023100f3c044833dea906ad1e8127f5388c3f4c2768b8d824ccf6a6b4c47721acafc24c37b7137ea84cdd8885c12b635a3d3980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c6f3f42ae3e446e59e913630236c2e3fd21320152fc7d1267bc0228f5592b009ce319b080e1cc66ee013d37b65170261023100a494bc0fbebef9006cfeb5cfb550b300a7250307e6b161142dd420eb763968f20cbd482e0a2ff392bdf68b7022e90c450302047c435bb500683066023100c0193dc94873e6cb33e0bd27acb09c4012e34e4a67e1662a253446d9031a8c9ec501f7da9591219f6ebbd4f8696ab29a023100ecb69bfea99c0939a471d558f7872da15cc00e54552272281c77f4b5f6e4e6589d36df497847d564a60063bdf3afef6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302acf94f956c23a3474933a1e45db06cc7934504f20ee4add13e6cfe0666a2b9650d5314074bc13cb5504fec99a665aa5023100b3cdbe06c0e855e8f5aeaf94816e3684f025d7d0c9b642993be98c8b1f4da2e592c50cf7c87e64d8bf1e104f21ca49b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302f18397811d06f3225cb6a2fedc7790c06125b5b5986977be6ea2bb03c31312832233bf1a1c8caa18d886dfff3f4ae6802306adc7df4f70553cff67efd40e6e9d9f0ccdbf06201b9847255eb9d548863406ff43f75df1c71cc6b2dc9ad405a74b0130302047c435bb500673065023012fb59fcb3dac8d64932d12adffffb848083874784a5930cd2af2910b8b3776c23cd8cfde11542dc2544f115874ef00602310089385cb4b5fa771bc4bfbf694d3131d54590d984a1a0cd1bf172bceda5a4edf895b63b773ea9872e865e72437e1e96080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d3550f8be66d9aba090d7d88cfde0441342e6fc523105639ff04873de233581a6c8f461973a1a9c8068ed3555ebc27a023063880dd425cb883121edb84f3d55f8ec3fe99ef09b1df62021293272a60d9371d780738762561ef88a74c5650483b8680302047c435bb50067306502306d75462f8ab55d1cc1c455410228ea3f79e6cff18509a6e8749c5903bd1fb50026f4e70823605f19014b4d2065cd40120231008c8212fd324e3740e41da8c9aa73328caddb63f30c023affdf1ab8f400e671816826787bd24d86f8cf8e5d9dbaa766280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304644d5f749320c54c85a3bda421362b1d5e05b0874ad8e4da81aec7bdb930a4c56187bc19420c39a0b9b4573d0f0ae8a02305043c956e8bd2c9c10d2653e70c0e9186c81b03e48ecb58230885cd3857a387bcaee80c67dbe247fdf7eb130f199be8f0302047c435bb500683066023100fefed7ecd1d4fddaed95537a5b2374cd67cc6a916b07ad9aa951637768a06b35b482562daf354f6e5c57a4c5153c3d81023100cfb26cc9cdc15fa86c58646924777875ddb3c923498ea27d7fcabd128e59100c03f3a5836735c9690bb1a949c86c54390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041c5132384a71b679abb920a8545c3e45fb1bbe75fdb671049d0114b09bb372f3877fdac67255918449916d1d614ee860230330fcd0dd2fa77204e3b1890f9529caa31c7fd9e59806b7634e49796c3842af5ed4828aaef126d5f1237408e2b84985f0302047c435bb50067306502302a7297c26ea8a9b8cc9c8bd16e53c384b621442a8246fc104ad7c1504352f37448721c005239df0aaaaad3b123cf9ce1023100e806a065fc4c1661bd16f9769463284198cd6470a81f8c8a842bdb0b7067d59b326774f5a521dea1256490545a4116760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310097decbc2b0022c0d514e0c542582f9e1d4decf40ab4f37b96c826672a8e9bc05c3f643bd9a3f4b9991953cf841d73cdf023100eb5d57d2eaff447af252775d7842e5eb67b0ab72682302fd16d1eaa249c9df0507ef87ba355298cd832f51bf68946e150302047c435bb50067306502303b02871057e5336497819c91ec57b781370fbf9ccfa0109486b8a5162e417c3b018e3647bcabf8c5b957e13c5f4324f50231009a32c59610995ab48438b0c2e34cae1401cfd80da029fb4922dbf68d0b29c444671a611261de04fd29c6a3a1f6a79f140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac3528f6ec266e2daeb9d9f17d42d89bb648e158d80c08506525688768fe71e1784d4d5015e902efbae9fd131e2b902a0230705d9bcae8bfbdcb7161acf7941e248fef8681f1a44d8799c7f30f1e0af5452f9a91c6b324e1cba40d44c9fe89d79dd30302047c435bb50066306402307fb6a819c3da8c36fe1429f368939006047ca24bcf447ee595eb170faa186a6ec2f9c2cd8523c7ed53fa0c0f261b466702303d7b2214ae95099981d6d53c4f437f99e33b79bb661a9c1a5033c939b8b2da21df94378f74e060dd84339aa4fc64c4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303374205a5b76e4b86facaefba504175bbcaa3134a2e81b742b0b8cf90d0f2ae070d1d687058f1c9dfb9ae909e88fd5e30231008454385fe32362fe3b9875de96c39b08e1f9dce4f999a6404218fd0358fc6c07abfebe080732c514161eca2f41f377310302047c435bb500683066023100b128d9182fae04b2cbccd68c09146a37f526c13ab418785fefdecd4736ce2d1b0338e7ae3270823ec3d23000a274640a023100ea815a88fc41725150515af80eb7e12a06e493e09b173dd76b4b244e370d04b476f7a4df0c83d39563f4b7571c9761060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef740568145f61592452dcd7ea12af26ee1d4cdfa21476423f83b2ee66c82a90f152148c66e5e861f0b5c7bf572c80840230266b7ff9cc392d6e279eaed92e88f6a03e099e62d2b6383855b00ef7eb5d871b5342229d85fe28610ad435b313ce75bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301eaf0d3ca19a99e24bdaf66fcc88e89ba4d67a7abf9ea33a4073b605cbd3dc816c81618a0b0478026d6d6498f3e0f534023021cec337f682477865eb209da6e59fa3d26eda9188350d6bb4e176f90ed316793d2c69cbffeda223d0287fdb6aa19f680302047c435bb50066306402307c6ae50eb6b2560344f077a6bf638352275ebfa11addb65906277c7aa3262087d43e1a591341758277577c9d2ce1059f0230524f418f69ac3cbefe55f39dae9e7f5fbd560b1fc0df62fcad692a88480b63211c4ba8a0c6bb935516df0e6a1ad005930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aeeeb145ae3d20db9a917ac7d40d70ef3151afccdf0c864c4e13fc879006a3fd1acf4386c99a205108ea8db0024e341023100f92f9753443327f3f739bedb7e922c699bc85f5b312d274c6c68ad809229a657f1afc322edfcfc8087f17b45b320fc370302047c435bb5006730650231008164f9ed6defe160badca2815ef2a2c8ec8aaf63f75ad2b3f3195f6eaa9bdb312e3a7b546a0eb0cdf085022fc44edf2402307d3cacec78e268c426adadd8cae6a58ab0ffa385f8248c293341523c1bb95c01f8afec2fa7a8f92fe48a195aab2fec0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076f7bdaa86d827e28c992da835ef83c8b2b095dfb84a93b27a69b089fb06e70bc0f6f2af4f2747a6f222fc966f154681023100b8163650fad276cc26390ce5843926e34f1af3474623df0768156530196cb169740b3f6166c0bbbe3aef153b986f53a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1e554d0037efa86b3e8e2756e958b48aab6413cf6dcf49a10f492cbdf23a07e6648d04e8b23311b6ec6c18e86ba13bb0230055034c65c1c0035b1bc840008d11afab831fc3a78d159d3e1f0d24dcfc00b9600940f1e74ae88c653856a489d40c5420302047c435bb50067306502304d2e1d4d04848292e315de5d666fd7dcd60fb287dcf21984928e27e46b982fb0301f1972c675319184031cdeb2cfbdb1023100cc3897b5d81d62bd86f73ab9acbdf295dac9514e311abc350ad6580a84683c1bd3b32a8afed822e0da9b1fc816beb6c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009483096cc93b588b82449cf3bd7f3345ed88467d49d67da47078e661080301736896cb1804cf7072c0512d4479a90cfe023100c8b36db2f96eabf4a2e24f08d3f01cb7eb840e85fb9a049a71dfb71224c48931ab43a173e813622e8b0f46bb78305e4f0302047c435bb500683066023100b8196913cbd820394272ea4354074558c2ca770c91c0f607bc9b1d7de0b25eeb1537d693896f8b0dafac1c3f88665041023100b4aaa592eaf90c3fa87bedab9512d5655fcf53ebfb54fda27ffeac5f8585decd0b933e583676c81769e79cc447e927c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b53d1aa9f60fc8c0adfea2aa5c5156d26004fc25d659ef2bb90dc425c1ee90296946a7e4ad564e309cba4735d82c9d9023100ecb877f73ca9673ea2ef48f798d33aca4babae23b9911293deb2bc44c6d41aa01715c69bbe1a74f7532008bfbf65bf9a0302047c435bb50066306402300312e176df00554a98ff6ea458cf04c9730ef7adc7614560c07142d15f33d85774d4d1cd4d91ff4518ee600cab58b0e802305e49dc129a6a2fc371dd0c862bbb7c37ba70ea38dd1a24b2df633d13d118e9d405cee8c6aa785f1dd6e224795d08a3ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2bfbe2e10953167e3df6624d35e38168b40398ef4cbf0c10a589f489b048dc9c14d9fd3b7a91c586f89642ecf6f691d023062359c6e2c77fb3b81d15a04a3e9ef95b9dc9185cf643a97c70b4569a6ca442e1c41b49ba26ca6de0ee92603c3004ec20302047c435bb500673065023100e3c6ee1b7b7eb9ce7921ec7694775c74bf3d04bf272fce46805dc16f30412d0e0329ebedc851bb2b2844db1451b00779023033a373169ae5f3285c7a77b4daa62f0fef809f58e52b69ad39289117e2eefcd0917cd2c988b6f5825d46cdbf9410a2db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f6c8e3e904395a774f7f3e0b9aeca5dadef2efab8df2f3fef6897a1114636ac2172b4ed250439183c95c6158ef4eeb602307ce885e907d041a663730b98591e51a3747888892eb931119b88569a2c063c13f3592f02ad4afd5a7a202c4533cb3f110302047c435bb500683066023100f41d29de1c66f8aacf3672d271c6094facaa1b93f3412bd1f6d2448f27991d309f27bc488529f632d7c631fd973f3013023100e1ad35292ed1a11d9930f383a90b988f85a6dca3607ffb242b4bedee291a350015a5b5f6c386c71a412831c8763260ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030f081d8f8402a2a7207f4603f8ca75168ca195a2f2ffd08b171f8e8a17fe73f77f9752f7956a3da21b43e78fa5fcda7023100efd42bb8d7173844677aaa43b02e352d7de8ad777702defacd19d04fb0781a9d00c94ce539888a497e8586f3416ae6db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301bf4f8c5efe47d6df6da7d8fbac632657db210fbaba3ed88b9e6db860e9b7379f536dee9c44e4e59e4e59d1ff9fd6a6c023047099aa7d3ffc04520b0a6472ba92ef7c6bdbf8aacb8cae6716557c85346ef2f2378f747b9ab5ca2fca35f073ac681e60302047c435bb500673065023100f91d33cd9cf864c59fab7b3e8e74c18fe09ed2bb1b3f9ad8196707befe240eebfb017ecfd4002d440d1d26e0b108641e023063058ec4c8ebfc079d8fa470cbf08153f53169170541961150ea1211764fa5b1578777289de0489ec108e6aa4b32c8600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075068ecb1aca6ed6796ec016c7ebf350897a0c69552028cd9baf54744948fc52d0b875d092180627b53b3a94c2755ddc023100cfc79792fb49bf23d6db3fa20376a0af976acf8c617459da505dc185ac301a50d143da8bcddbb76030a77429ccfe8a4c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2b246787c127c581cb350888e75eda8cf5764e9d495f038fd82ed72c8aff4eacd1685c995e594a7c71a607bcff0492e023048655dba1a1e91ea6cef4366f0f5161e789e86199f600a3c2f7cecc721bbac3e0816cb36e1ea92fc5e1baa8fba7935730302047c435bb5006730650231009ae6c1f03a401180420e9451483899627c956db202b0df612a81dc1f431ea15535652365d5dd17c134e2973fd63610480230337808c16a9042b48d537c632f159949f1d7ce9d776fc8486b5b5d1ddce9862e73b1ceb373563db26f77cc599bb4735c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100888594ce6c82a1b84dbb5899cae9e5200ef810d1db923d72a87c2c0753fc1a985d5625e490e8e4487046aa52a2d3b8f70231008e8bea5a9d2e0cf5d1ed3beae5b839a89ece9a9b67c85b2c93f089d4adaaf2f8eef4d64469850c075c4ee0d2d04e05430302047c435bb500673065023100b1ec19c6e698c0bfb734a6d07136435fd440e0b86b16735ac605c9d80e2e781831f9794179e1a7b99465f94c7b8c104b02302b863d0ab8fc59ef55b5546ac8562d50028b5462efaa2c595ceb862884290a2aa477d5c98229d19b596024e106505ebb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd6456eafebcecdc8d84d1833c16d8e53408fc2bc85a9b4c36a9c5db3e578dee0be082019259b327fe09c5ae6cfd603f023100d03bbc15dfc2c729dfc7bd6c914188938f508d72a83357baf90916e721bae6592cd7b9f751978b252d8e63096f7524760302047c435bb50067306502300bab861120777c60de157746878029265791e7b1659b616a8b418a59e0827374f2c6394df5fabe0f492dfd5517694b93023100cfcc1f7d10a189bcb1dd33478c94ceb822a923e108026d63c5f73980ae225ce9af094714552599ba204e76ffe816c0590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088718e1c2ae37416d1b55a359cf5d64f5176d9e89c9f8a3ca660215cb8ba598902ed8bc02cd2e2c3dd8d69814da6f75f02300df8c6ed6ab22e05bd365689061c533ac584b566762a038c77e483543776ee11f6d59c6503f923fe76d7c7a2147772760302047c435bb500673065023100c5647625a63652a1080459c93d9e24f3f343a8c712a33e06ce27df9fea0cacd590fe31f310594bdcbd432fc0c8e5406d02306cc50ca97e325ae9769f2a773ae18596b3c41d06b647411ff1715416eff27d8320564d0997200f05f8c8091fe568e8230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e7d0c00767506d18e7e99b638434876ccceae575d30b4a7fc260b75816f069b2c044c236c2d31f2218ad47b40a86a2102300caf91e600bfb802bedbe2018d7eaf6e0a4b1cafe4faf3af093cf88667db27d52d9909c9fe4a64b9038b37d4c01486ef0302047c435bb500683066023100b3b4ba82d883fe5994249d7fa70379fa5f89009f3affa06d4956f997bf6727ac4f5f233d106b7e96c301b11287d106ce02310092e7f4c84ccd8f44eab0e7d4ec1a86416f2ebdb02316d6048948ba38bddf38ef5e7467a9e74f58666dc60a2f7ac6d2c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306f3e6e0c98c43811229deb92d4ae5dba1e6d3505a83972dd77925f4ad4083c77b02ed47c7d9d207608def7c952e520df023014a83e266404e6f2c85e1a0b8bd8a7d43af31843a158b4240132c4618170445ac3658f90adbf47e4d0f61a76f1ce1ba00302047c435bb500673065023100e1033b3a1eb89aae27a5bf1d090f01aeb240bdad4e658d1ee78eba970c242ef0ca687ee8b4719a0bb335290bc477aeca0230435deae4f4cf794f1d4f4c45ebcef820dd3036f60c5be5185a19ecb6840ab5742c4322e51d7f2863fc57017375cae9f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045b6e8efc76d15ebbb93d8d3e13b2f00b5e4bbee83d6cb2af088d858ffa7640db347be7fd42e3b336e441bf4d5f9681602303de62257a7091f42013e8f7cfee7bee8cd7fc5736c024e2ec4b173e175f83fd2daee2d55a54640aab57528563eb1091c0302047c435bb500673065023100c99577817140aef7666133eba80f4e143ad025f202f4a4ff11efb559cda569890cca93f4675693143eac40094d4fa7680230645fc2fa887a25f3c709226a127f7b09c369a7a1db48e58830d34edc3d9db29f970ed3c4a99af5134c59ee2286e6f7e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aa861ed53f072fec7d860415a8c5710cecfb0d03f15bdab55afda65b0cac01b0228e4f262ae470b3c3546d3f96ac9c61023100b277c8f60d4e20ce278127e4504c74a089aee84a3c6a0c4bab19f42638d7a982f483479656ddd7222d3bbe4b1d5935170302047c435bb50066306402306af9a7607fec78fd038e3fd406cc57a3400cb98b6195eb6fa2411a57594ee891449ad3187825ea380f1fc3fec99bbf8a02307e84aa5114938720dcff5175404b66f4b611491870005130ea4dc0aaadf01e94f94b38ffba367014022fb2d055975ca20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008295d40f85875f13535d0c9c82fb4a61bfa4cd257dfa3da183c7eae2c47db7f65fc0ae2ca4b72627771b12c61bfe7eae0230351faaf997474b5fbd6c0db1d0ce09765113f4c0910751c434181c367124052bc40144b6beb61c0a2fed1b970d0639b80302047c435bb500663064023009f107b9dd1595f5c81f99ac0a666f8330d989f162946a796d2441bdd07d796cdad2ec1c74fc62e086e28629d49d727b02303f82c1c49cfd846a0746ee0330c19379c41180654053535c9d7ee971074c99a96452cda6aa31435deaa25fe194510e8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6fa8178ae3b575e845eda40c3fe84b6b95068a0776524c0823f1d73943fabd7ce84649991ee6d0669afcb673e94ba780231008b490239f650ea2f4e30a343581f48695e2451125172eeea0f209399f475b65108a51df3663b6f07ab326eecac5c748b0302047c435bb500683066023100c482cec080931f2d188c03a8e7178456bdf0edf4af7fe7d5f86aee73fe0212481c42694f61481ae0c73c6f0e4ebe7e98023100e9cbc22633eb522372f7e06042e2e8aaf2a9c9d3d3aaa1c496b4f73a69667ca1e4d19876837991709b58051e16f5e4e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c635aebc6fcb4dd0597ada126a1fa3e3b78df92ed1540dc756eb7eda1bfa1908478393cd892724c47c8f22532bd0ca4f02303dbc27c5df12bd81f897ba53c1da1123e3c61de8ffc0cb385863c46b646c3ea918d9af95a56833b2324d7ab409c6f7130302047c435bb500663064023068d5a52e6bac15f41f9d3aa45a4c45c5183e37a07883999ff59f9dca0b6adb9dd771eefccdbd07828e2b2f834077713802305c2529a8030d39cce5ecab4d9f0006914e402eacce584c0fa9666e57c0f6e5bd1b8e9117bcffe132e79d424c1b7734150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230679952914c1a26f16a8491c355c1d6e8f0dd5e946b5977a04e67a92ebd27374b3f70930a5bcf95188c3dbce8ca4555ee0230746704774356e4c353484f022319ddf19f94e701d6efc170cf268f4e93d0b82f85ad3364fb50335a2ba5db41caad204b0302047c435bb500673065023100fde2608c44fb7bbe62c47652673c0f199fb30a74e1a55bf27c62631d942cbb9581eede99faed16f83293983c5492499302305121d2803a91ee1730aa58e9d92c5b279fc6cd7a148b92a58441d76436987eca0c4ffe29759391aa2245a6dcbbac11590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023058d74809f23b18b5738ba692f1e0d3f43ef52dccb54a6fa640aee3171834ba25906922752869c42d4de83fe4bed192cb02300503e9e909e6879b3225d07e39c3745b83fdf40c3e61b0cf2f21a4297f1d2ffa65b34ece0ce965644bd8e7f916dfc6bb0302047c435bb500683066023100ab5d282239d31e4566d11ee1bda784fda6b5444fec0ebb8fcc1bd33042cfdec233b8aab027d996dbc8cbed90399dfafb02310094f9178f73f67ef3da0b4e74b07ef3e93d131d1562ca19f6c77d3af61c7172ffe09f77a47e2aa71d8fa703a0d61c4b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f1ff1599141fa79dd8f4bf5cfde7537d13de96f583a8e5bd9727bec9839a7994b3556b1d9d5cbcc957b3b0e437f71ba0231008660da6deca053a4fd285e44e6b69610ef05ab9ae4bd6416c2b22a03a3a54e180a83d21aa472720440d096e1e79b46fe0302047c435bb50066306402300c22bf27c35672252ed679e80a1e3473d0c54632d096f5e729fdb363eada4bb52b925a878856115cf3c6f6d68897704802303225c6940bf220a7c81c5535e7ff1cd40a37151e37917a9b5f42fcea3637e26c6dee61cd098f9a675485f0e5663dde880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5528b8c6cf7fe5181b1fb503409c56557b2b82e103ee8101bc2c3a815e5e24fc29b29e39798d5628b34f8f89e375af302310098028c5116d06de73dd68edf6f91bfd60d0e1452e06a32257e24aa6014e342ef0f5d240e534a53a9a7acfa991dd1bcf30302047c435bb50067306502304f7cdeb1f48cbf7c9f190e1b61ba401a0ac0f8d8f368667ebdc0a97532791c5ba5c57fdba8ecc45ae73577e8c05650560231009c02a757d241cb4927ea7ac5d91ad39f8343116f5915651483b1bcf47afc56eab3be8c431b8c7d9f623e1a0dd255fbe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a45d92cf3b0c5d99feb5f1f1df09b74d1b942f43bcf22f455974a70f5ee85a835f688a89c6a5b60bf91bf93518c5ee6e023100b4c35e2c1e9133e1958fbfc21b8cb6f0b0eb82b71b966dd0efd549e2fb978bd0c671121fbac6edf71d03323bbf81e36d0302047c435bb50067306502304832e850d9a6ab33c8560d8f5b9be91e95c3eabc2fda329e6cfd438413730e2baf6f179a05aaac69383c92a86ffe911e023100ba5f86320dc27ca00afe14c6422856645908a46b11b7b1f0b4669453ea18e96cd1f4799daa9c170a163dac59aa5b8f3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4f8db010f338b7c9e136562e37aabeb8c2d7d001412c7d5c8cb11686dec1f8ee858a145df1bd4f51ff6384aff7e417e023100806c87f0b020515e5733184bfd31ceb13720eeb78d6e273943e22056724640fed78314de5980d601c021e32035cd76360302047c435bb500683066023100fe151357ae8f89b957df7ffa18fed2ecb3abb6eb5725081ffc869127d850af785cf249cc20819cedf489e03de328f0f2023100d6fc205c5a7723b9656de4d86f352f84d6ee7650a84479094c17e9637413b77ee3ec8afc11c40fedd6c197b6d4fd53640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304fc90e01771c159c38b17e5547ed9b0a3608a916d9c95470fc266ece74f6dfb0fdf8c4487a142cd76c46ff0831e17693023066707785eb1a1eff28445e7304ef8254c3bc76bf69eedfb110445637a2e5e9c9de6756da84fb49c4c04b98d3d2ae4e900302047c435bb50066306402307d25f750244d26e88829e83632410cd96af38a881e6d8b14989c757cec5fa84211c5acbb8cfbf10324ce8932231d7d71023040a3a4c0317a747c16f744018e025473184cfd39bf5a2b6d1ba3fec5d60b4947e2d71b1ae32a9d2960e44551beff5caa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230205dd442576bd53897dfe3beda8de261a016ede5850e3f0d3402999a10557122a57755327e125c6d432213ade6fdb25d023100fe113da0756d584ba1046aeab3dfef350839fef0488a0e193ea33f0a864f895279615c94efa95779a1459f71bda62de60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160a2d9ca6c1a99f30f1d72e683dafd2a8f50e2119c27a56bbc5dc65727728b6a46a3220e1e81e12ea4ccbe77d408e24023100b6c96b8b90105a7df8dadc1a4869442c7b16797d02f781e9a496f53ca2a93cc8d7bee1905ed1d25e4c4184a7c08f58940302047c435bb500683066023100d791444e8acb267a0f47a1360fe466aea68b7360c2d0bb22288204128e7c234aba3fdecd0f54b02fcaa713e742f89678023100c08d8fa783618b7b1e052e59a66f3d939f2d9134250f7b37d3dd2061d91f7201a276ccf8972c3910531765eb74aed63e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a68c38dd7abbb3db23c11abe59dfe5f765828f7f6422e47ce69dcb38ed491ba37608ed2ee6059e620b847ea55f4da9b70230545b93289ee432e3130d41fc59cc8ec78e073bacc4668aef3755bff49d6797ec36693a96bdd778e3a22e2f1d2700337d0302047c435bb5006730650230316f08a99c1e55c293c6ff3f5a8d5f5411b89a37fc23fa7c7184a536f3b91c26c7a2d05ac10a331aba851feafe6c746c023100c2cb45953a89be5c4baedf336537577ba171e282743c6fd672fcc905181c15f9fd7614969b8f3fdf302c617f89a8679d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc9bbe89021f3079032d6f8c78e06e9410291d7365b8d318ec11aeaca4cc18837bc4df96355a2816f88c93fba2e45076023100fb23ccc7aeab54fd40454386a1e57e6ce31d1e39cd547b0a606b99c93f0dacfcd80a397e7eab3bea18ff6159b56aef7a0302047c435bb500673065023100d24ba6036e30540c8511f4210e5d433635c4dd2ba1324fa66933e521323ea5939fedccd6496dd0d227194d820a7c270302302f21d43c1aa363aebc37b7512cb522f04a646b9395f1e61ad0d5fc13b9722e2d2fd5d923f8e12d8386ba9f0f149851c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c6051d406ff54009f66f2dbdd4d8659f359c36ba4b744a349801c66ecb1707fc46bb3c05b7086ab02683e5864cebaaf402301f6cd9c526437a161189a9f4a7f89cff5a20128577b52d697159654e87a392d8ce0b8f54856167d082d301acc07ce8ca0302047c435bb50066306402305d9bc69354c02ce1519d465040b30fa803db8ba2f2d9240b7c3f7e04f03727a03f1d044a97cf3cf77dd3c39434c904510230527670d8fffe0bfb8d6e9e542c11baa2c30da270f9628541cf4974a9cb43cfda8bd6731806578cbd9d1433fa0351cc940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a40c4f2876e9d35e9de67b6881e864e1fa560722e1d7a20633f2e592f92fbaf75a4bea6fa0ebd35bb2001eccb98e73d02306ea694334a6c043d82a9f76209f35c3e2d7d5083124729b4a10357fd9db4c43c8b82055e47b8c208e902a7822b4d24150302047c435bb500683066023100ff3f0e4a048cdc77905e65895c892413b71b9ddcbb53096ebff3ce6af3456a7c1a0a73ed7c32c180082932f3847c76fa023100aa4effe869809c75284a107ba7335280a71c5f8c2d4880b9f4ec5658be081d8179099cc190ae560cee604484613754f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ba485c01b0abfbd4c04757dbd6c3e36181c0b29e1b497179773394c96755797818deccd90bd70f2ba65606a0985efca0230723a7dde0401a4fa364a80954e14060ee562d65084a3e5796d4d4f71803fd934a1ca0653963a3ffcb20f457bb146518c0302047c435bb50067306502307bdff24000a1ae2727b9f633c33562036d5553907e03cd2a836f7ae7487fa04a3ec91ff5b2023b1b8750622cf22edfaa023100f56d06726397528330b2f2c92b71f42675b1694c6149fe2e59d8e3a324e0e6f319ccf14a7866c0453b52e4c7677f240e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8978e61db6559d93dc721bcdc87f71e9cd8ec11015e9939d34b734cedccc34350c204c7a2322ff85c972686545f41220230573d72e074c617dc70a9d4aa5f7ded7287049cccaa6c6434f91981810d2be9264a6d93c3aef509ebe20e5445e7828de00302047c435bb50067306502307a69cdd3e0dc6f5c787bd4aa26c9629a0b58a594f90a3f624d7008c3bcdc6a31f54398a04f494ef209b848fcbc148754023100f20a0937c04ec07f5c66cbf75908b06cdfbc349435ca3ce3cc730ee86b6f92f0219b4341ccc85d80c3c13b5d8df64dad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307567ad28aacac0867794301c8584b2b17c35df37919ddaf4aa253bacfa55659b53b3b5055e6f60d0f184ab910b40c244023029970ac8415c03d1357a2a1df584ca5b44f80cd0f5bbd20a9352c283d73c86bbd10fd976c339371841ba76eb45a60ea20302047c435bb50066306402307a15ccb10b22c82e6f721805e788c04dabc9c41b656d2a914b90c2c368fa09df2113273f2f9eb51434c2df322686643b023013796e8c8340df8fd19bd0e4b5112ce6212199fbf9b3b410e23d865e3dcc1dcb7d00bb43fa34d31bcd890e6a308b21a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fbbe576abeaf4c7f8099a7b0fa8136b9e14964a07f9a600e015b18557dc2b3d3995a676bff3719cc89c0cee1a028a2a02302cde4e7533283ff520b2fe2a13b8f1e139ea22fb0f719b0c95277246ec59de94012e4b3108b45e37d66b4d17f5be4fd20302047c435bb5006830660231009dd3441ed89b3c7c39e0af2c5f51401235a2ddb9ad9f5ee8c3cc017253805d6e2cfbecf8676ab19ee8e2c6411702c31102310097b73d6419975198d1335b4af52984a3a42670b03725c9437a92a9c0299a0b12e01c8cee1495cba5b7eecbf6525fa1fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100903f717061b02ad80da4fb8262049869e40eec144eabe2eaae285e0041268710ec81d87a39b2259775b9c4f9b2abad05023100829e7d38efe16cb568870f02f5df3352a6822321465516a04d45adbbdeb94ae9f991dde14c9451876384c72ac9085dc80302047c435bb50066306402305cd5430f6cbf92c7ec0e89a9014c2d534e8d2f904dec3e9a981f738c5c09ab23f91ced294aa4133e9b00a7c7376bd1c5023058fba0624152b2da69bffcb6a29bb735e0fa9902fa0f124c4393683084d6b2a974c69ff8c3cc9d5bf24b8e628d79342f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc44e30951af0386f698b3960aad54fbb41a919ead845018326b524c6640c6d9aa444ecbfe069c04097176f390eadcd70230289c5003cee76339052565f74fceeb88788cbf0284df122c8c9e22f9f3cab942e8fe5d2115a5e3fbdbc959f34a3c5b4c0302047c435bb500673065023012dcf19626279795a363dbeec265efcd813f581818a0705bf6894c9da120513823bee008dce1a2e7a53979aca6b32509023100f29eab214c326d0fa73cb7f5859e138bf58b8e9ad16f9aeb798a07df3be1cb904abee1cc0304f62b7e74c2315df526660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e4936d2e6f3fffb811b2f1a4865981860d246f25fe8f01fcc9fac2b7caa2c50a8a27ebbe24834b7d4deaf799d6947d7902302a6e3a8fb2c939f7a1671b449ce066a357a82b68dee425048902a97c38c71dd82664d3746b8f19295438c28fc43ccf550302047c435bb50068306602310096c54fd586fa9f460ebeb7b0cddc951eb446977289762dbddfa96072cdd433c1b412232fe4c121626101aa09e8c828e7023100b9f692af38433a4127b21671926a29f64b29ca7b818eaa071fc9a6a78b625463018826d8d5b24ab5b9581b1d9920633e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023046e904bfce72ee4084c8b7d5d936f8ec1f29e42470a3b2656718e9de525f5fc06030fac7061cc21544d1a9bd4db2fc760230026fd36188a4c3a21af908ba7632c519a39fc822ba53eff8f9326cbef4ac228773485a783d2d92a409f28892e17c3da60302047c435bb500673065023100ab12bbe5b333599089d776d4dfe20ec5fa96e4cdd49028541536f087fb31d6e6a3e3b5b950ec99645abdfe94f085b6b3023025a500ec0a8190b061c2aa8120f1ee5ff39da0004e7e767597ad74a1b7ab7ab3e91737a139c6a4cfab7df4b0c723c0ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd252aa4b00c6edb0c9924a84b31c3d08d86932668bc88c026c36d60140a18d1f780b577702b64afab73f984394250ba023100d10b0059be04c78126f7e79f7567b4c0b1ea1f5fb4fd974fce13b15144ba8006df2b8a9e750401934d58a5a1229ed37e0302047c435bb50068306602310094d25d051aed838de90c8f7a76a6325143ef80ab20ae9107ab24b83aff9eb276b5a6012403ac1a2b0bf05fba58162fa20231008834a15492eb170fce2cd84a1a273c34db5468e7625f9e659908aea9b5f9f2b04224a6e58c23cd731b3d9f276e3364ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c39453a53802ce3a5ddadd9e41338c658c123175f91abf5be76d0cb7bab926cd74c8acd133251415281b448744b17ff023100dcfced214d0e2690a97d65f21b4e36ce640538cc3af04a4a15e37506258a1d14c50f8a4697cb232a2286ec28671694f60302047c435bb50066306402306b3defb166724658bcf0a273aeb4f6a596afbf93bdcd35d16f1c446da0d43ead9f33fe69d14497663bb488d6010671880230052434bdef5eabeffc992a609a0fc30286d580508c5d4b35e9266f0f1424e6b96a6c4a9c5d7645d1cf587788765343b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dee9ec041c1cdb95fc8cb0e8009a4ac14b92c1f9ebdb76adc775f58f34d8215979ed9ea0f8ecef0049b6ba28b1d1b57023039d2bf0267902c3b636db2e5ed0269cd8125d86f39141c0bb139115005fafa3edb6871358ed8090bd812d2693bae4b270302047c435bb500683066023100d9ea3d4923915ae0b00bac5d24e3e272984b8438d06d17c149b026688ac13736403e6906f099a237399e1186c792fad1023100bf60be155266b54ef72a783e7620bcbf984ac7638ed8ee5e63afc261758278fb7be9424e081b187d52d36eaefab7d15a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022496f3f6ec5b40ff8826d43457215b9256cc3fc806c1d6b4c8ff8f6305418b9637e24edc1e61b08ad259535f250e6850230744b461ccc4f0e3dfc5b52ee63a947e610e1d6511e1ef7484e0a941141f95f0a35c8e3db66ea0945d546ed9b6339d8c90302047c435bb5006830660231008a9b0bfcf2cf01092073d8b103e66d30d2e7d95701817d9470b15f79a4824c1343f5a246966dec8771c4c2e9f349ffe9023100ce57fb508abe37fda7c07a364b40ce7d37db5526529a7e27b89afd9930b41d39531832dc4b64d815cfe0460a773487140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230273efc936d740cc8bbf84a6ef1cf4b47de44ee63ccadeef54a3f0c3187d1d4164c8c5a2c8238f306d573e482f91b0e60023100b660ff9b728c7fac6d5ec80d15be20bd4fb633eba02e1d772f5739c5f70e07c11105cb41ba232a9a9586f1be191ee8fc0302047c435bb500673065023100852eba440fdbd367f6532fd6bb9e68b9ddb8f61c99277c3d729253adf2408d53b241e1e70d3dec72905fccb28b57e73402303b4603db1ccfe6c265ce31bb3a8ab5cc764ba79c65ad324a452dbd7a66ef41f4ffbfa2f23494d62cbc5bc5de3d4593470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dba140ef8eca85a1d63329bf79d0054311390fcccdbe9229068a68c4bbe82b1fac9d9128b720b1ec37619d8d95f3a4d10230355b82df052de9e7658de5f4a092ae4c3037b6836ccdb8dec86f4d239b8edac55dec861f7dc93a1d2fc7c0aae17be1040302047c435bb50065306302301be3a1fa4d77a40017557fc31fa9017136edff942fe36b069991380b6cfb743a61411bf1f93792a61fc6cf05b185e618022f60dca3aef048b905d85e292d20308a85ee9ed724211eebe7f07ba73d1593b76d91b5f840f88ff0bce83733a91144770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085efc6f0c2c3898c894a5fb4f119467c379a1141bda741b1f8dda1c708dbdd194e9cfab06e031d7ae242e8e76f95211802302da2381a51b4d86229336a3a5320b12c6bfb76140f5f11866946961b4a026174b928a1bdae2b6e377cd39ec0d3e662490302047c435bb500683066023100a8c73147f658122d196a14a72746de27f85e1745469f9ee91a19c0b32dbc186f45a3f712304ec90b7ba28a53ae1e614a0231009e577fb0599d7419dd55ea916f382734ccabe2c8b03534b8cc31ce3d04e1bd50417c6372c87b1d107e1b273f54023f780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6bd1aa9cf419dd3be51109024257b719966fd5c993903a35acabf9be8b178ab1d379f6680a115dec662bfde0334bdeb023069d17a027853fb00a8df9d33a775321385396b6ad215bf645a723a627040466c8279cce05bd31eeb0afd74ceb6f29cb30302047c435bb500673065023100db8328843fb20aa3cb3e8ff711b6b52d2be1819e005a6208da63c832dcb2e64ee4742bd68f81a057369a97d6d534829102306f07824f08ba358f44bfc391a4c20338b14c7c7156ceaf398335f2f5abc2bf14642cde727be2fcd557c7060283aee61c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230468dc905719bc5bba99b3edb5b9131fc245ec11555a5127327ad84b6f6b19dcdcd1db18238c0b0515a80d5e17ce94438023020e4bb5b54328d39a053352e21140b427d624ef405a779a25c827e038eac331020a5b9c454ed7708358f43fb668dcfc70302047c435bb50067306502306bb2641b69acec797e029cdd8edd7d7901b492ace9995b0c53a74a304b319ebd43bcead70a01933b07068087f7f1e5c1023100ca745738df2827d008ef5c3539140fac47a9128da979e842028b8952156a5e0cc6d608f96e617d75f8442684f207e8160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d2f65cbce76272eabcd2e4a46734ccaa25067449418653f16af883a2b284f03074dd73d1c09b30c8141539eb2adf7f7023100aa2386952af337713abe5ee964810fc97d3d1658aef274f30c86f86c598e79a59a598eb325bcdc551560fe95526dfdf00302047c435bb50067306502301b346c8ed0a2a483a855e24b384756a8f0c01b1c2e553b5a9a250859afc45c0d4471591063658b959ac95e8275ba2850023100e36ab0b03ae09a5c1c6e1b628586c1ca1b33e732420a2ace698aae328426ddab49899b8e7b3dd2aa6310c37d07c8f8c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008777f439e89a65430fd2b8b80333df005190af950b669cd3893fda038e25c691851aaf989a7fd6b4138a55a8204de77e023100c1a93d3182b5c4ce111f5a21ba9ee0cb2b96abab194c611bcd2e3510d91866c6e7cb7543a03d5d0231a0b79977185fbd0302047c435bb500683066023100b9b99b31eb325a378330ded94be0d58dae29864a7ec66f781fe3f4c23166b1487f852e00855d0ccab2c41ef1f3f6b8a3023100c4f5eddeee718290998f519fa800c4875a2243624c8d0a9add17cf907ec656cd4361ec20ba7ba03f3b9138068e0c5a5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008419d43501fdc1f9c8dba2d8136795e5e7c4c1b0af9032f56e9fcc369f292120f89663a9474bb12f2e4df3064d8c3d9d023100e53c664b2b7e32495961bca6938cbcadf622112ce94a34cfc54c39b02ec0ae07ff1fb8b2d265220095e39eb79919d1af0302047c435bb500683066023100c31b66f68fedbe619fae96dfe24f9ac37a78a3f065c3c4c53e6689c8e11dbc6c62c42bcd276490322fdfb3bbfad0c0ea023100df225d2ef55b01203890453cd1cd6bf0d485c42846e7ee2d2cc3ffbbeb314f204d0fe4af1dbc5e93702d5f30f0fd7aa80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c66b7e6cf5d7a5ba62ba38bd9ba59b86d2ad21b9b186dc5291291aa0516024d275e749815a6d22bd04e9a620702127d02310088a5622b5a442bf40eb1fa3aca6dc7ed6f7f1177aa6ca53d40977a86b93a772928fb68befbd8386e29c7fff26e0c92b50302047c435bb500673065023100b2abd3eea4b395385522bdef1227385eac9cb976ae4fe4b32d8219d36bed174a1ac7597571e7677e678c509454107dc70230443abfd3ef360e14dfdae2fc9db44d6e8973abb0ccf4b7461479c9fe34013a7ad91721e305a6bbf4c299400cf107333b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305308e027549815bc5bcb15dcb76bead0c52a5054ddaf57ace0adf7a0c061bdcdb5f6f81adb45872b72f3966bee24c40102303fa50b06d5d32ca4bbc11b2f92bea290148160659f21a6ef98ddfeb2447712a6fff7167b393261b4abf57293fdc513160302047c435bb500683066023100a64338533bf87e7fb68ae40284389f10637c562170a1ab109a39cc044cc30263bc927a03435e9927a9ae14acdde01edf023100cd07beb46e1249b49fc2369e5da18da732851d57475233f88e96b33c868643aa8d31b52f8f95acfeb8ea90059bf47e930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c9a330393d15ffce4d68c510b752adc2b9bc7feea20d3e854ce5583e1778fe334eeafbb69321f45348440b37ef373f1023020f761273491ff2fdf2b156787e2310e500afd3907fa72801e3b4fbaef0e0450d9335b727325604d493e894c5d25fa490302047c435bb500673065023100b0c7cb90e42a66a3799a5ae2f41cfeba68e69bb33c306815c994ebbbf88a665bd3c5abc2f7eea8142b1399e969c54ac702303a7390d7e1b5df9025bd4b74b304b45a3069cd7f0f2f2e3d44e9c7a81615e28ae56c215dcaf064d75a3f59c40b2634b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303537552e6ac3ba373fb899a8d800088414b6d9a81f0ad17d3118558d0fc7c5064357c6df30053291ac2dc5864159eac2023100cab161ede1dd0a664f559adcf614d15c32058f58dbadc7d5212ff770e12191bc9c1c38118250ea7b4aac18a87b418acd0302047c435bb50067306502304100d4dcf31badcfd08baf68095c0db40c5f1c6eaaf5eff8d2f6eab9c6fbdd5a5a302e11229d0db23b1ac6e38da48d2b02310082f77cc194a3b7596bf3190ce4080332abc0956d9cb900a4c7df8a8fd09805304fd2a4056623323a89e1f486d1bd69990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cacd44d15e20a7a00ef8f3099381212daa248ee8669c58a362f9070bf1076ccca8165896dbe09a25b2c0b0af722ad4402300cc6547a6d08fa42dd4bdffb3c3a25b89836dde8f58b0f790ee2a004171c06b135330e3d534e3adcb6dd88fd2fb8cd9f0302047c435bb500683066023100b3cbf45f6ef00fda8ee17569e8ddbbb94be7e7c08de419d98617825cf6941003cdb5abd8f625868fc4debc181d3eb4b8023100e3186141e7a4c1bc2d28a60c6df9a1752726b8961d97797558f4aa5704bd0d62aac15d25593298ff69eeb192348a12300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e784b6e61a227703edb904a21887e762d4b4fd4e57a2fa51faaf0a675ba1b69b659864f8a547a36d822dcc3f8c751b6023100aa1add7434466c0aa2cf22e714db130d4ae44da3df8d40c4d5fb99fa27be0e7a5db1af999ee3da3a29ac7e81b3343c740302047c435bb50066306402307a310d1b38003929334f06ae2b3fcae35e14ec9c6a426bd43c5dd693d467e61995ac41128e09fb673e53fc99a342a778023012bbe9d2737c66bc77b6b037eff95450befbcd18869ad5db975c16e8be849a39828291fc032a862014c11f1be02901d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9c98d601e9e788790e702fb484c97434c03023178346d1ad19a6df4d759701d0bde2da86a8891cc073c568caabd0e5202310086e58222bf2c56397c022a81c2697f1216415d4b31f88e0996fa9bdaf15e88d22592d228d6b84555cd7ec2e25cd8df9d0302047c435bb500673065023100b570076a76731af788cf31e48e42d6d942a17ac8a6fcef678683d065e77edf8c352f498ef2ad27992ac6b7b70feae310023020b00ec14b4f1016c20795cb0482a422c7e7b3a8465e265041a46b42abaef6c3d1c8e9eebeed404b54c8aa9b5181c3130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a81ef650c73af897e2bcc84853bdc0c5a79a16b170ca312cb14f5dc4c07ed62edc6214b78c4bebbd6591fff5187056d023028e577e92ec3a79c6c0f57beb319193037f35e867a23c70a6049c8f663f3659c29d41e948530dabfaeb82ae54a0ba1cd0302047c435bb50067306502300434a00204a0e74fdf659078b1ea15b66737eed47de9be01b5b304f2f9fb0b2232fb6644a9ed9dbab45bac8ff0367914023100b6cea5d65e7c434e11a420007a45ecc3035514a2a0776be66761ee3a9169dfa8a42236f7f27f7e42e90af17a45dd096e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300764c1cf58c862a799a5e5cbf0ea54da8553c68b3afcec2d895f653bf7023926a723770c024dff52b62a456b1f234b9502300fa7d4bb4c1d7ad681d942bb9a09cc825dca229f6c86f365102fbf0c159ea62acf117c47dd91c00bcbb797cdb7f22e800302047c435bb50067306502300eb6db5b17ddd3e30961e2a8bcfeda4d02a9206107ee99a9088fe7f84086b7ce4fe3be18b332683aac36bf03d07cc67b023100b8effdc43fd06908e2ea8adbddc945f375aabdc66f338b1da1a34a7cf894ffbabd8f72489a455589fdc1142a17e95aed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100920557e41bafb4ab5c6fc9f66c9a2ff2988467dac247d01e5fe9a8c59a116cf86022433c9e37f863e5e40069f775285e023100f47c9b01f7d90e8028ff9071ed7ca905008dc4e0e2c54aa714a5ee2445c0c7cd282e8880c05ddfc75f9a2112224df8a70302047c435bb5006830660231009278b0290117fb11e71cedbfa4b2510ff73036cfa56755af48f9d7690ae8e2e0fbb243087e810b841e46ab28a94d8faa023100c664f6646cc067d3a0350c4e5d7db881324872eb0528a709a9e4ed257c3ed8dd419d8c9a89e67c80c6d3c78c2cd721400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a50aa921b792b7eb0f99dc43cbcaf36db8a4a0e251e7d4a0ac35590af73f8834efed765652debd7d758a0e258f8c2e2023100c4ae73280345a0a810d63c594d4ac069f6e1aa048c254819472bee5418cafa6e789cdaf42af764766d0f5f92bab0736f0302047c435bb5006730650231009c42c197272440eb0a6521b3a74500d08e09c311dfc1546b543278a2f4c880e0e0051581fccbf6bdba41a9c20631906202307e7ba4e011194ff201a669fdfc1ed3769012cc4b72abb519133880b3812d1eb1af13044c066086bf791ca6b7884a96cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009708f18a4e5592e4190a38911f2537e98fc30e466da91c967cd84974ec645b03b0f17c810201b9508ed909b73811da63023100ab3d8615582dce0e1a367d04c35147f7b670d3ef360b70302572420ee0caaf9a93da7f22a06bac30505fdca48f227e190302047c435bb50067306502300d1373f5fd6e5aade06097d5cea0ea4140d8d2d6aa57dd293d78ed6f4b4d8e23578404fade45c498ddcc325a7f13069f023100f006cef07b2fa6228bb2481f67c0d8c3a86fad332be542a3ce5e1b92a51b12c4d6ed62c2427482760e6882486332dee30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230396bdd81dd2b7229ae91a66473fcb1e678c33f218ca0e8ffd4143c84498f1641bd4576320cdd4c8c49340aff84d9857f023100aafbb7cf8551db4f15ecf7e7b445c350755d9fbc2eb6ca26bc545bd7ca63b0c1410dddedbfb9d16d1eebec0568da43ef0302047c435bb500673065023060fc86e12290dd7e8e2612789a9836ff426473b8919efc76334748bbcf2937c5b07109c0ffe4cfc37499229863ca203f023100b4e7cc142ea241f5469456b05b2f172171c6412f7a6bb8bc35e4348446ba32fc94bbef20f3bea6183a300a54d2b782040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100883d935d6a193080504ee097da860a22a9c007138cc01d0a0ef092db86fdf4f9f6984bcd9c2a25540a255d6c623e3864023100da0e7b0a3fd8b7f4125c14183074cad80a7bd371eb0f7099ef4055a12e8e4b5c14e98f0f4cdd44dc0b0d3968ca8124b90302047c435bb50066306402304e07e448e4f1a4ac7e6fa4a94cb09ae409a4c41dc19ce99302f5c7bd2a181d03ee278ed5c6b9061eb979f8dc44ce8dea02301e63ed8c9fa915cf010a3ca69c567582ae9892a052f0e4615649fbcc27dd913cf51a54f41ba7520ec71b9e70fda32cfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d60434f41a730c3dc3cd38b0966fd617f5d5dfb7da8f4c73865e6b0f1d0649daf12094a4f2c805dc55bb144b15b3b739023100c61c279a15a99473dd050a1652483eefe0fc8e3101945ae673ecb326d39fb3d0d29a33d8301a3df9eb90b69cbaa7fc4a0302047c435bb5006730650230070cd65453e0d6b249bdcf26b447321471bc11f24981d0d967f62a5e593eda91aa99b01abc12fafeeb1ab848aa58763902310088e3491fb6a368d37ce78e65f982e22ce293926e5204b981c4fb9192c10520a0af73f6205e09ee7e52dc9a02292d19a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023041b0933c49fb66b9f7f2b0af04dabc1e29377676fd2a0894754b9a5d2abe561ab53ed850b7e9423d9e881f4a789f3ef60230778461d27513177da03172d0252a0a85838ec0685563486051320a8343d4455c6fbe843d8d8062f8fbb3f8de7601ddda0302047c435bb50066306402301b60ecdb565ed3c10f5b5e6f141013e773e1c678d2c183e81e43b16023e9556800df98bcb97eb330853572392b96ea2e023000eadad601905beab3418926b1c721881ab19c7bd27f91404c9d43a338c9d122eba71dc810f3bee79c2b515c946ceeb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060fb9e7e6cc4972d458a4e44d0b1444b587d518add38b3b57d43879dc0a54952f5fbe17fefd547825085bb4cccd35a650230352cd449ee0fb5dd50e661f8524dbf2ed2ac6b7e5b9c66c7e4db05de875dca2f1c85cc59f57cd266bab40cdcda9e5d490302047c435bb500673065023028c7aa5a969ac81b84ac9a028d94c08ec476bdf645be932edb44944d2bd6fe3a2932776cbe81d8bc6467408fd0bc8bde0231008b580fb4d0affd1ebed1e4c371c185989d8689eeb447b2fe557d40bf649641080c72118852bc25c8ea954eec014287420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306859c9930ad75275d36fb08ae2df4e6d5703adae52515126931586fbe4b08ab5783789981bec94b93ca048c85d5c0d55023100cd16b602c51a2d01e7ff0dbf853c97a96aa4e1f6acec3d09f5e63e81e15c2cb7b19818e5d8298475b6a51ccca4af45780302047c435bb500673065023100f23662155ba8a492130326266f3ed90b1aa2e68e9ab318643c988b456fb8d11f95ed608d44d5e813345ba4bf0a05038c02306d0436b8743bade2921f857f06b620aab7da9cf8ff2e3dc019a36ebc390ead783db8566f58857ff824add3a302ee2e820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300dfe48ea4ad9f2771624e1b21e919dd87ef52400696afe252743b3b657300c4ae027c2805ddbdf7103c1ae8f056d0b0202310085abd908e9c041e9b693904fa83b27b78050c5240cdf88c1e7a3610f45b526b46fd3ddb93c6867e8b09261454936876f0302047c435bb500683066023100862b50486011b16f8db415ba6d9e5ffbb4309610fdb13128b11f10c3056f54ef0a6701c791097630dd70ea727fb3f5850231009ad65bd35d8b81e31978e6ea62a45fa689ce7129410823dbdea2cf7f18a7803ab6984b2421b39e7b97d1043c26135c460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ce543f4fbb21a1f411eb648335cc4c79a03b30a1b11d5b7a15823ddb8106e701be0b2035fabc877a4603b05f334a89f02300a2aa3b2bb0b3d9b65c907b59e25cf9da34b3d56736a27634e60f1c685eece7a4b1d4e935f51ba3f1d0250a66578a3b10302047c435bb500673065023100bf0daedc7b1f3da780be4fe75cbcfc0db7877f6b3c2aa484bbb27320e33fc55ca33f4251c3e1c3b5ffe6ca9d44fc965e02306a263faa89a650c3c90274f1e0a19959b165f01dd0e374553239575d366aafeff6be1d077c5019d88c4e6dc2301bad610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306eb0e86c88130c8aafbb29ca741025410fa910816a2220d35efb3b5b3434477b35cdf01c1bf3a7092670c0bca9ac2b9a023077c38b630e4616f86a23276eb8955cf35a46cec212452b4988a8d4dc71ce20aed9fe773c43407cc368446ac1a585d5660302047c435bb500673065023100ed1200ecc58afdfddec21639444965ecb6e292cf4a92b8dadf2820198760c72f43c7e953b65989d8af3559dce7f584a302302133ac19c465e334c8d322ce5c10b8cdc575b1f11ebb054c64d8adf37f75cf26a3dcfa465a573a5dd3e9d2494082eb830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300943b8f61696618644483e7b3c2bf4f3108cadf99b7d07ff2085a767bd82ca6c284ea8651e341f42b63e8c957bbfd7cf023100ee654917dfdcbc372ca7ba8a228e691c7de888753d15c4c323ef31591c19abb7e023ce3b1328dcd668feb4f44ebb4f240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091fc0ace8c1d8f5a80f2f1cc63a172dcaeb1fa9f23dd63b93561dc2a2cb7dd74de3cd8250f74afa035d7112d6b7afc6a02302f484a061ca7bd043b113b9d383451315fca93d788d7d6684c1f06cc160948c168a16f8337c135c278543b2b7d3b94010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230490f6b715cc71d7e9c07e796e1ee4e192d2cdbaf0a2ff85d097fdb27909c401644032da9938cc417607f3d3df1226a3b023100c762bb5e1cb6a06b07db98a573e14f1ce6d20315fb86b8f64cae86c8fd3bccce9cdf233f49d7ee47f1eccbb55177c6100302047c435bb500673065023100d3f91c4197d96047f4026520e7a3978037dc1bbcdbb44df6d0ce3ab00a907ae6f7da6d848c43e88f4c71f954666e76280230692149dbdb67bf5fea5e2145ee4557d841c633246d5456dfb38f7b07d14c0ac5b1952e8983912b9e6c709f7c2f4d88850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075508e5775af5450495369eaa96b66f839f8f3795f90d95b9a77e5744be8a52f1281947533fbc0eddc59a1b8ade7b4fd02310090dfb1c0369555fbe5b1a8a5cc53aa85897ca1d824856a98de181000d51a2c35a1eb2051cbc39e61df4f24d4645ba5a40302047c435bb50067306502304dc4ef2b0dc3090a243dcd19cb66a1d8e4c8c2b3459ae195af3eebb2d4f4754d660080dd956e74bb4ed08e2a56f592e7023100f975150a6b92c0841df971976e76b9adc224eca56e8ed6f6e0512330fcd701f8d4bbd79fbbe302f81f10187417fae9ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b049438c9a895d4129a6dbc970c57009ce44fd4fbc9966b82db581d44f3c25c29becaf52ae8b67589b3ac4569b24d5b023100802514ed9262502c09c6eb4147eff24e87fa80d4eec5479df7d82c2cc31678747435f2c03e66560dc36b7a72548d24f40302047c435bb500683066023100db0f86501ddf2e233bb6abcfde0a1db2b6677d13ec87c1e32bcaf42ecfd67e2dbdc8571ccfff569e88811590d33a6ff60231009360aab39872b7ab6b6bf0edbfe3f6d438b96ce8621f3a30ff7e30cfd9a71af76918a03f225a81d2305d13e11798460f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d1da74dcfba60e0ad10cc39fc6ddf836d1b6806d6eb2318d5338cd6819862071c7cd80d828be16810cce6ea501f3bc3023051a4f537224d3096afcd4eed94f4b0028e13cdc0954bc8117d62fc1085c840302ce79e196ff93be19ea4cc9244a206f60302047c435bb50067306502302f56ad38f0ca752474ef8c4667f850537bcf2c543bbb1ccc9c44a39ed6b3a2693a2aecc4fac994e24e6a06f1a19cf27502310088f0e0f17c3cf364540872fb2a18040855dca9d6a76749da02ba466c1b40e378c2477c67f2b568e98e233b46cdd2315c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b7088af6c7df7dfe3a86403c613366f3e3d5d789c05ca809e867c69e68dad5e3cb1bb2ac3a834b20c1e1884fa5ec9fb023100efd5d7808a41f127aa152fd5125447fd76cfd523917b275bc130ad07d272947c725d227c5ef32ddbe693e7069f19224f0302047c435bb50067306502301149e016493eae35ce50d7b4a59bb4b7c3e41bd7baf8ac8da8041d90888e123b42378b298c03839cf7ca9b3660ee4667023100b993fb16295468bc8bcd5fe0702ce16caa91434e7ba4d96fd7199ea5ab193876e58388dc4731aed01517a14c89b1d72b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ba6f2b912d12ccc2e343a231bdb1919ec586a40985c7a66870539458bcd77509269550ec987ffea153087972de4d5b3023061eb9d0e69e03d233cdc957c1220998723208799f930736b5d6206c116696d410c6b183ed86410c5becf64cb398078b30302047c435bb500673065023011ce34bd56d66447033cb09a574c577d146b11813d436140002edcce99e3d49deecffb13daf7cebb74c5572091b61778023100bf61d9d8b55bc9bf1c5cc3723a07d6c347ad3bcecc92119bf4238a7848ef5c594b0de016fc69162b39a07d6c938892760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023024b462af0736e6ea1d02bff9e819107f1ce1641dea4f97c09d763f98e2218984f304335d49e796549982d32add2dce0902300162c878f2a45df7870ac9d6ca79b7a847087386362d6d555a915c16b50ee40149488b300bb239139e96db8ddebb88250302047c435bb5006630640230770bbe66c83ea4aa707c86209918805afc80b073f43ab8fcac3c9d0f6b3282fdcf7dcc7e6ddad7f8fe329c0b7f5d0b5a02306996cc9b5768199f1c21297a7f507bf9544cdf08e5d4831503f10a364428b893316d8b28190a1489ca14cfb1aaa7e9bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230341091b8f5622c33f58ac27f1208f01c8148b679d3e6f21f02dd91c97ca3ff4d99e4f580504a491157d39f3bb4b5dbe102307b812dda232934395431eb9b187b616e4f7c1fe270d0d62fc3d6e5902fcbabbf15218ef402cecb5083f1a75bf12a11d10302047c435bb500673065023019e36b3744c5d864e050f9c377b046898412745c33486cc46db30862deb8b17b70e077a804def09f3674a5ab9b12919d023100cb5622ad21b38bd013cc63a9f9f7f211e294c073ec0d3a640d1fa74ecadc4faa02f16680ea6b444d175503d2e6a30ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b36bba347c62418560200dfd4a7b2e29e252a3dc4718fe7427da698aecf03faa0734667dc367e06c52babfbeed5433ff023100d37bfedc63fbde93dbada5d39d0eb2dba2972915cbff44843a685ae943a7c3dee85261ffab0c9bf9384c3e23350ea9ba0302047c435bb500663064023003bd9402c1e66ec5530476e8b9d00d66cd328ff14a6ecfb93a9e9008724e29745c50d2868299df923ef4279c3d7db580023021ffc47c16cd665d1b51f049c0ef8264d4d8b2cb1645090b7bd0d600f7fd22ca2ad5d57ae823de65db4fa35c29bd63450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f928c1d5b862902336c15ae29d74d05c6a9b9c9e29ab96bbaeae142a0eb9844c1104cb9dea78e39fab8e42a3cd15d45802303f13694d5c4b4b2608ca9c5e62409285d716fdf7f360658ff98ca99ca9505842811da8e36a1309c7c2e5b7a93720e1a70302047c435bb500663064023053d0271cfd644d8f495ab95c12e0b02ef974b19acf43cf1d0aecf6e744a8acf856f88ad6e26ff65a662cfd3e1c63a38902305ec079a054c99436bfcf8bd8b8ad937870098882f86d67ae3682de5c9f4865a514fc67a97a94f232d8562e937617809b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023052933754d310a0f5516ab57e043b461ca31e48a562d475aac792c4d1e82a7813e9162c7f8092ca5af8208eadf09ada2f0230777f9865fdb1de78025a7f8b5a867681cd339a92db0a872734fc2195a85ad4655694430990a4ee6820c577d8df17e9bb0302047c435bb500673065023100eaee08dd06b4bb7ec04c0a8c521ac93df3d5529fd325bff8d98a58edb3b9dd27e26ff26065d8adc037364e12e93fcfbb0230197a04704e4af478c969c998eb1054f6f9a24579eea69e4475fbc315c4290a1a5b894d0943eac9123d4aaa4e14ecb46b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b32b5060c34e7cc05bbb8898a2bb7441f46033b91af01fbc2104ed489d0053637e141bb421fff4b068730ef85f29c7e602301ab92c35f9aee0e418718aabbe8e30fadac229d271d05062e009ee0029ffe026d86a79954b5b9c687a5149c4a75730740302047c435bb500683066023100bd1913821ec54fb8dac78420e68e300302f5baa8c74f4cc89e2e0ec92965febc2a392536ee7a6a62b2a7d0055e201dac023100dea54667388a139bd8a42cb31e3ff5e130cde76d35e83e86321f5736ba6976b92101e3d1de36ef731ff5cf63657609340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f3e3bd0696ee845c69bd454e48f98a32b4b5cd499926c00cdda724bc4bb4cf4ceffcc12fdf08cafc28aa320f6f6ed01023100d1ec9c77395a4fae0b3b4ba388b25e194ed1238ea860370e44bbcf0467fec6177e27a60bb37172410695e4fbd1e4d1b50302047c435bb500683066023100c0cdc90da019301e9f29eaff457ca9757726645533256594131a8a50c128b869f94ccbf97c4677aba4c8d40d31f8cd14023100b101ba1a1e8690cd2d5a5d6948b74572e7ddb2cb7441881b47c6b2cbd65c596751fbdcd7086e9370a07ef8bf2d8cb9370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303893f82096efe474d82e08ef9c92c7fb5ed8856a580cbc36d980fe9ab8f339d6703f9f9951f087c5f5534e36cfcefefc023100857b8d3ce1a848d880c96b51d002c20ba74e93250e6b10c72f93977c7d0d72709338ee75c39e711215ae370b7b01758f0302047c435bb5006730650230614465365eb4a4869c307f2fb7f0a7ef37d50bdac3369138f0f10ad35b7a206aa43e84205a8fd3b0849419b8c6855a6c023100e80074c0485e1438125ae6701fa0bc54f5006f181472f932ed03a5af282e304ca4f935860304f27e2c23f31d256ff6a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305aefb9d0f41ff4e414d723d9d60a96c1f0d4d7b3e2af2bce538e60c2dfcc0aee401618eff1d87746090c3b937986b2a7023100d7caf723e75293fa3d76a12eccbe81c9025f54a83bfac0dc41e654646428ce672464ad1a7ebd1050409ab23467f0e9cf0302047c435bb5006630640230274d314585a0882f2ca87996396080145890bbe753ee8dc69bf7a2e8ef47e3ca274492edd2346ef8508876520fad1abf023015ec0ea7ae97e5ac802f7367d448172428a653e106cbb2c553e8e862b6f839671769d64f6d3e4cf14b5197a9944914af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ea1329730f27cb7e9acaa484bef1ecadf4522bbbf473bac7a462bfcb669d4dbe565117435bafcc9d7090d4d383c4238023042be3e658730613ab41fa0e380455cd8d08e7f1985faf585a4397b21694dd15f1ba8396f5c0d6a6211ae4c8ccbdce06e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fe780779ebd048a4ca3fef5f1e9fda7184edd2e75d5060a92c622a1caf31dcd519bf9bd0447ac6d615240e0a5cc468c023100c6ff99238f62ae5de9437dfedb435c24e6d661f46283a6bfa49d745fa2487c9f8b6c8bedd1054d73a0efb61001733f890302047c435bb50066306402307f7083f0fe525418248281115c7e029e0f803c290bb4bb2411cf05695e309da8c50d8e9ed5386adece60061e0aadf10902303e655da31f1b071f2d71618b2478d8dd2723f3fb3ad6294ee0d2c488bf53053d7459a3ecd595631312364e1f00aa1c480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e60578a772c14360aaf54d51dcac37f071c7b152a4bd75c9a677b91f5d408ce4355454d2917eb2e08d7d34e39427490b023020892d6fe8436f94a02550e0df1b46d4945aac6e742b10a361dad0fdbc6bc1f32fb776f2355657b1e1a28e8e7f9cd4f10302047c435bb5006730650230695399d9803993ef8a224676aeef57dc7bd4163d15cbd80feee27c622743c50b2bd82a2f259c65d9105fd2520e2b2b3c023100a8ce45039736905a1497995a1efac54cfd6c1a680461c4137f5bebf2bd4598d6f3c46367b54da8e692f35722d2e3bb6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cb325091bc89fdec78643ea0cbe8b5597867caf91fb191e469701fffe07196f1fc32b7f19d1d0eed7c7941c2b3434400230514774a75f6fa8a49a2fe3841c219210e37b3843ed44bf62c3d44e231c7cd7b3a3a304a3a45b6483b9c9d0dfa22db02d0302047c435bb50067306502306ab0d5e93ebe5a1f9e2cc851180572b89979d41a4c270cf1e410551d125cd47b67a118540511a0cf9b15a2c971a415ec023100f70f9e5b02f0bea9e4ac291e318bf07f70b9d691ff490c7821a3eb3080cc48e344f05cf3df41a001e8ebd8fa532716b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017aecd8e291fa197f20b2c4d3c8facc87aa15e757d37870b70936e9b4f1f3a5fbbbd0e1bb145683895c69b9f180ce622023100bfcc7869f369c7dab337124c70f187a6d433442cdc4fa0c1786eb3f90dfa197bde270e7fa29c16388142f8ccc07599230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a3451ecc25343ed96945ee6faf7f8bdc8ec92e2bc484e6ea20fd4694aa8f6b3d97ef8ed07fa813dcf17b15fd6224a03023027ed7f291dc7d67c4661fa9b8b62c2a405cf507e1a8f5bd864789a5593ed191f34c98d5f618a74c288d5dc0686e1fc480302047c435bb500683066023100e9ab5ef89bb1d123c52d96e087c72539b0363f6e2cd7ff5fa6880bfad2ca1a3638742680ccb988cb6e9f9f8d736cbe5702310082109ff8977e2298434c50bd1e03c6a44f8d0406cb80e93c61c468d2796bc31025fae79e0f7642967933f51c6a0bc0fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310098bdc8b94af9d98ec2909407e1b38421342b462d0e6f8149aba88c0a28ad03add54e8ba4755c021735d6e632ee0dfd87023100d98fac322910d9fb8143cd7b7c684004fa2aebfda163aa9e5bcec268be4372d0045db137f75c16f3621c9a23d3d666020302047c435bb50066306402302550bce4ae61b0ebdccd9df2b694147fe2025c08559c4388bd97ae4d3728a6cfedc84c8e8d07ab3c66b802c16923249b02305d5955faabb169e73cbad96f76a2b4f3ef9e8fe8eba16bc678fb9bb673a82f9cedb3ea9f7f70736e1641181bb2d93d820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230198f046abb61219fbf5e9fe16abad2c7ed46a84b5704fd966813f56878e291c474112a8a0ec9650fae2163821ccb7513023100cf8c62c4cf7b03393f5750bf68c98b80ba5e3b7b4f18fe8828b4a20d301b2acf46fad34af43bbb9292cf6f18b8a872ba0302047c435bb500683066023100ad8e906169dcaa19a9155212738408e3de71abd700799682cbd35a1adecd1551b171a5378de69022d082f0228c3ad7e5023100f92df4f4ab4425bd24f15b1759c22dc0a2dca90bf67c76f6083d45d70200289e99808a630f2e1b45578076d261d6c7800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310092b9457d60dc9b537d3e14c508b8d1225f116484b2fe68dd4f8f27b3b149ccc5084ac694a3743a61419099cea2f48b20023067ec38f1d46b14cd4972645c5384efcace1b884d6829d84cee4aba4269d8e989b75ce15ac907169f9536258fbf0841ae0302047c435bb5006630640230299eb151f865233d7c58476851445e7f6c770c9418eaa02be2fdfaa6c2ed4778fe814c8b0edf136b669f3834c14c77b502306296534f52ca37ce46c561c36a0ab52578065b602a3b14d6d59c3ab100fb02de4fb89f1df34e90499b32470b72ba38ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230643caa2b5ca91c9db3e71ef0680a0aeda251f2b1218d75ea4045145346fb5db61d8acc785ed4943fc39856252b376df802304ffdbc9b78884ca2779d0da769568752d21ae4ceaa664b079929d08182e8ffa438dca640b8365b329ee09184d3dfc1590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd4fed0b8bea3c4a6919323d6f3b3c149995303b8137d3983f9f6be54820e00a66868cdfe07a006f1a02ab762729583102300d0d7e970438c143b8a341ff6e91058699cb33f8bba2232bf92f34e4ddc3050172f0ef107b81d3a1c51efad08cfa4c470302047c435bb500673065023100895dbbad4f62cffa039508200324cc4288fb2f03667f40372744efee7497b75ba4d177a5ec90a6fa591bcbdda7ac15d7023074c461e971c3f951fe16562ecdf39f42b66043d3bf0388dbf13eede2f58ba4c564a5ed6b1b36da7d234e348b94d4b9f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bab3761fcc31c4e951a82c7c4d36dcd866ad782c1301124cacb3a8941642f04af4b1e47640bb08c1e03dfeecb64c485c023033ffdb5118b75234150e24a2ecea4642bcd1ca1407d0c4a2085e6d3a1da3f1d1ccf2c70d37a35b03bc8dff6a4dabf7240302047c435bb50067306502304c0cd7999e6542edfb213baaa7c9cfdc7afce0a732b0282041a7cd3bfc213784eba6f11d10a2d91500d05e51d0875f51023100e2672de43c313d67a598577513e4134d2ad2217bf196b40fe17a845716957b8eb6d003e8d45ea4be7f3a4bdbfc23738e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1ba3d5af4f59d2eee79d90a1ef445fce4b91d902fef75eab82e39733f3c5c8fec17c8825c518697a34177fc27c7099702300e263876aeae979ec8d3f737d7ecc86f18e1af9a57f855b0354c0cdbef8498adea2ea9be0a6e5800caf598b84f71a45f0302047c435bb500683066023100f87208fcce9cd2ddee5b7a399acc3234a8dd08b6985667f5f0c64b94c5cbc5c2d11aa72e77f52309e0fb27d209281ecf023100c7ae13020f06607cf18f76b9d8211b5604055c5456fef579281390807fe1b1a888ef25768117f2feecf281a3e4cccdb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce89d3563e1039314b6f77d180dd9dd9231f64bf1d415723414e925f0814beb2f2afd31599a234981bf88aec0a63e97a023100a3e30eddb166b63c25516bd1f2fc14bab6b86a8f885d2b717eef94821fcb84bd3ff8bf467060c67e275b9ccb193651d10302047c435bb500683066023100e121f46ddac61a41cb3cf3bb267288ab510904beee68482e5465bc461b37cf0392e1fc6b7c292216c3534f8a7e65e55e023100eb3cdb6ac4c67048fa6655dc4cf79a7176f242c09d5542354f1bff7f4c029262319d190d5dcf1166ddcf1bc4cfcd970d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306af6b2ae6a80ead9e9ed6122ed62ed3ae100d8f640115e26b3cc27a4be64a7b107c930e608ea77b4eb18218cb90cc8ef023100ca9ddc799d21ed4ec901a26943e719330b049b6a20b9457e59ba8919d300508575430c26d47467e3a8091431a9030c170302047c435bb5006630640230705e269c7d553ba2c719872fa4431fb207f572efd1917d3b76edad9e2145ea9bdce6db9e1e8b830798f442128d3caf4402300d301bb21822b4a7acc91bd53bd74bfbaf5d485c5e600d2a35876ed762c9901f299abfb47f4214073022c41a5e05a6ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dff54e0cff88b90b19cfdb545a3b4d2457c2e58fe4699d1668426b89ed5357302844dac148af2e96ab6424871f0c9427023012d14b5eee6d3edfece9e8c48d09d97685f2d902ba4396489cd5485da41b53eba1a34afc3ecf22e1df96a387e743aa560302047c435bb50066306402307f973f8713ee30a3f77b4c830086f487345094f513ada812857504f70500ea0f2e08754e0d164be2e383a72149c290470230697eb4fd18778170f537566c2792414de10c557ac7800ced6f7209117b0dd4992c6490903b3f2d6843136d9597909e3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa5efef58d3e22509538caac2f8cb6969294b957105359fe4034eefa8275750d43ff6368f069a6d0aae10d32bba22b08023100d7d6f081db9f02fdbf2c47927baeec4ba42cb2af11b5a8e1a55e0b5a75ce3b1ca228eee5d463d269d817be4a8bddc8be0302047c435bb50067306502301bc510c0fb4a7e109fccf881847db58ab2a2698d79e19bfd594330b89b25bf98158fa73f1a2295956c800409845eea19023100fc99668715b461ed865d444cd01e2350916e8388cd5aec11f59c2971733229574f1a12189d76c700f4274ae862d5500e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023075e14296779cf8750d21ab2602e99c5f44ff193937c13e2575db8c03840fffb137aa8fd95ed6a78a4b2c60a96fff013302303a267e2d06500d2fe1574a93eb22f9a568cf4c0578610afa648e891f8f6834ede133b32b3c7aeeadcef5312c4a64a3fe0302047c435bb50066306402304c8d7e33d1d9710b8780b0d8457bfa97d9569bd66d59513fbd23cec2e5c4a78384ec45faece0445205c3fb3fdf6f1bf202305bcfd29659883e8456e78d95fdeab55260a4884674e5288f0195fbf0e53f86211aa001bf6a2e7942069c7a8ef14004000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230123e983284ddfe94dfdc1eca01311f0671cd671551a7347188c81f5f238a094c9430ee39e3b0c3a9de642c6c620744c3023100c3136e57b8f4caf7b896b6e10b818916534e0f291bee929a825d758e529e24c275e0d375ed228bc0c7b7597b171435dd0302047c435bb500683066023100a2c09243f80e059633fd9078c053f1209b9ddf5d466be41201e58fab1a07d9b659aa2ddcd59758cce350cf81c486e5c0023100f6ff8c7340e836ff92ad845b34bbb55939047ad7da480743157249407121fe89eb348e846e243e0c6b5b675d97d3b51b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302728e94c80b614b0940d0755056e8ce05e0d517ea78fe5ab5966b8bc4a1796f27832958af5a7002c18185a28a94c6d4b023100ad2ea5f7041b81e26bcb6fb7daaa9fd1f17e7b12e343a013a19286b92a457431a81595c71c40033d2e7a7237809c4a260302047c435bb500683066023100ec3a680d66b0ce39c57d9c36e5dd5e74c692ec368755d9b279935efd7674b232abd7bc0f173b2df8cda0f18e08a78b1202310098c6a637647c82a36d22cebdff8286e019a51cae1bd0cc6b4eb6034ebb29547aed61ec629be1eea131065a644e44f9600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230402ef60c16e509f4f8a2b0355b582fb13360b5203765c4b4eca53a194233c1706b3ba19334ae1830a91c2403705d362802304f84cd74c7909cbaf964eee4113eb3cb9e1faf0cdf76db5331bd6e91d0f2485f26487a802107a66f1af35d188cbdb12f0302047c435bb500683066023100c1cb84ea382361963eac345bfffccd0bff6be7d9c5d1f3653ce4efb1f561c278980c566335227e10f5b51779a7fc048902310086a9488e6f01c7a8186fb3101dca3aeaa2b1303986424394b945fbd53cb41f35a7d735629013295f2bf40481f63c47e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310081e33b375b0fc140e0d2a493cfaef1a4e0075685dc7155a813dc5d4cef9eabb21132971a605229ded7b33defb73f043f0231009b2f4a2e17b9ba541dea18150bf615f38e374f5f86609886c9ebf56d0f5725e6d656fa2b0541357fe1895456db58a2f70302047c435bb500673065023100d89a97ef8089913c95f21667671ee1bd6bb22b3830c267819b43157877b91721a0839dfaf091becb65a27b4189dd6dc6023032e772745a33c3f3374af4b9aa92124512f2e289d5b42d15c27ebfda327198cb287c905126096a58e863ab857e9d52bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230303f794ecf04d1038a2cde24f5474ec5ca57c1557ad06695726841bbd549b3d65501042984793e6ef33f65a49f325a01023100cde4d16fd5b331ed5ce729f6b19ef7599716d47f96fedeb4330e3f89eacecaa620bc8fe8d8e27b625526afad798b96160302047c435bb5006630640230179da50c017f74b4cabe4d0dbd4b13b78aade03caea123df65ee8100843b63953baf4509e71a9943643b838c031a039402302957209e3d93416c1ffd1d820f64c1bf2f7a37ac06d204eec10030f0a5f15c5e9b0c7e68f7a134d171a6839b278f8f170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cfda2c02cd7cc03f1ab3f296f37fbea4887db61c04f28c6e4d734c6a292c692718159a6c1244c4d718538be90aef9f4d023100fb580cc9f5e3a4ba8a8f27ce41b0f3c02d14ad44dc9eb7a72018d9dd68080c0fd5b7ef39f83333871bf87ba5a1f6256f0302047c435bb5006830660231009acae679bf0126b54e6907afea20eefa0eb47141e361add998cecc06d22a9ca11bcb681cb5bc0e26d230211010b05f46023100d37f1302f9048ee2111fc0024b92e7272261a60ffe99714728f5e6e113113a2584983ed524fb5fc668b4edc9b6c4b1da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bb21748081c40b5ce6d80de2f46ed06319f562e22cd5b4106d0cf590dda4ac53302c57390e1a7a1f1b529b54f045f213023100d1aa2516d2e8b2cf0ee39b63bba99e1e1167a44a62285f2688b927b7e9abed11a94b366d3d869cfdbf5d2fd53fc87bc30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efa7176645eb5e78c1369214e103cb118a976a305a8e897eeaea4603b6a60d0c2bde18f01306b2fa9a58d46ada79d8202302d73142f93d41dc828e1e763f212640aeac8eb838ea14d33ecfa7a42a78a0c09f3b90d8ccacd330cf014876118c4a4db0302047c435bb5006630640230768a23067208789f30e321fec7dc2acbd278163a4d6c288d4a77e0a2ee7121681275bb4649961606383e769e47d70e2d02306467eebb46d223c48abb21138b6eb9af2475c6c2a3d1c3225ad74dd32fb1f01810e803cec418269a85bea925a91107210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230476d44db3a813bba09651919b2a12c5323fca1d42893b84d06930f481ad5788465ccfd78a942d77a29d86079382eae5802307e2b6d6a65e78e904f5833d16bc2d9e4f8757c747e4bbdc3e45503a70e5284ed94801523c77e1fe24650f861653627e40302047c435bb500673065023100cc5dd6af5d5bf436cae2e7c655e14de1da2caf09229664031cc600bca23a4ced3e3d158206f0dd0451ad7e35bf04d413023079088454dd5933380ed876029b6b1aae59f17c503d3071eff7e74992ac23e972ce913a1aa8af461a5847a5ff402b09b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bccdf22bf15d4444fc202ddf7aab4805833f96457380c26bdb921ad6bf896fff64043faab9e2c314564ec98ff4bc01a0023063055b9a8a5ac60c09d0c404a65b91c56897cfb53723b47412a533d38c6106ed5bd55a735f27c6e4d5dae7c6c779cc140302047c435bb5006830660231008717b0d3319e3a4dc9f2ce511738252d9cada4dfacccab010e45df56c96e7f14bab45179be6af3a13a0dbf3e81c5b472023100bbc773ed4172c15831da4cfb5cbc98ff74d1f2093debe7f0a34aa0fe5001d2d999ab85f16975c31f8ac13b82ca8085080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306258fe3357df63869574f1716ee8712fbfec358572dfbcabbb35d9300e9e6fe1bfd413fa0f6d0bc2dcdb945e3c5a2caf023100b28bd4019a185aa44223d195c9b93fa3398419d5d8c236ef86d9a3c93b08638df667b6c81fcfc9e200158fcc19921ed10302047c435bb500673065023061b74f9bdec65a4531d0bc00922032f507687505984ef503710c81b8a4b97e2fe1a503307847b41262878187d2c91cda023100d9c22ef0c685950a8a635bc80233ea14848fa7ad5e830640957396d9d0c0d4ce6310b4a33161099f5a195005655a6ae50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ccdcffb163b8c544dfd08a38e0c5fbf04063ef4ee3d0eb7214332cff4ae7ad69a0a5cc27f80ca7b3b427a76abb2492fb023006bfa024b18492991b03c5588c22893ea44912da3a62098f7751ed4fda848bbb40600bbf6c25616d002645d5183441a70302047c435bb500683066023100f9684890c9f97346fbf0a825ca2cb5d4d4ac2a766a1f7d562103dfd6a849245e3e6b559488ed37568dad9980c5736866023100fab4933f40b264343e9093bde4c58ebecd9189a4cdff24712b596a28eb9deac5226a307e8faa1d934758921f812864380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae59252d82b02c87e1534376288ce033ab12825658c6601d656e76fb4165318a1b0701afc8fe421f69542eb10d788637023100e7f3b7516e2e5829b138a06b844bce74533da8d1d2f2b367d2e441e82fbaaeba816e142c50c83df4380dd36b62a7f80f0302047c435bb500683066023100ddd411c9d21a848381e8b659215d7f07dfde9d5ad28b95a070fa9b896be410015ed934ba381b1dfaa2a90edef42b1f060231009225997bac4a087adc2f9f96f95f3b94fdd4ee446beb918e0e299b4d4befb04d969c4f1dcff57004ccb7058f28197d5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d456b59637ce9a9c2797e855283b0d53dfc814f60232c10a9eda3512ac117eeff8fe47bf9013f55b0bed44d30f43814c023100fbf2bb7f3ce08ad06326619b46e757bb8cedc31d8a0dc4e6cec0c7e37650fb53e4f7861496efa9121e17357f8ba28c3e0302047c435bb500663064023018785e781fb9e5d9c399691223be0dacd18ff9644474ba172a6e8be3ffa4abda16219e50db0bf4956adb3462a2c1015c023069be6f4ebad0d5940c90a35d285e928d442c47567c4edf34e317b1d7d70ae67530b27420488e59ab88929ad89c478bae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c20f7657e06102c8b490616c12398eb10ea71d1fa3b75117ed3f366644aa466298beb8657cee301705bc9f2b3e5dc3a0230191b631d44b7c70ae0cd6e96553753cdd35af28eaea44bb3710f809b614ea509b9778f6813548ebb2eb67d2c3d75f1ee0302047c435bb500673065023100bbb7ea17a48f6a609f76ada73b6f4526fde776a4ab66aed866f65dd46051606f615be634970deb2a5665b3d377391b8502301c5e9aa18584dcb2e019fa44c3e000e76ab2317e5cfda2b8a053493c24ca426aa10b7e2b0d76a94e6d23242ffc7010fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037c955b5e6c31d643a83193f00768beb1b7bffb5bffbd6f3a0d64924023d4dce61816d03b51d0095c2f9d514f7f90d0b023100ba6f5222c83b1143d04b25519a8030d884407dc924e3c24ce1fdef71006dfe05e5d2fadb6e7436adf616b0e69f0711330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f20143df5084d0f9024e72d716753474ce7d1ba30510276bdd425aa180a08748d358fae4cc965b7863189e17eccf6f4f02301a7c5dc7e31869ba50a602df90be51aeb8be4ab5de7dc8f30150c803cf7e2bc33058f9ecdf90ce6770e7e157a3a5264e0302047c435bb5006630640230120490c2de495ec590001bc03ebff4734a0b9dc7518ce0dce955604181d7068c388edc33ceddc9f032c8f7d464829266023046b6b30171254b6eba29ab5b180402943731d245a86e51d5c6460f4a0ad310bf8bed1da9fb117c810531db95a0f467490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301be57f4c66bc8beeda24684a0fea5905ee3610662b46680cac83b134c609d49476ca5c11e9b019f989aec653fcce991a023100cc707d95b9a99150549a5016f571cd3e0b1b51f17fbc30ae16baf5e3f43ec5a160fb8bbd1afe39f07679b454fc552f2d0302047c435bb5006730650231008b4fbe16d855bdddf49c727082d951df327aebcbcd8fe66ec89b43900e49c368642d0094e2aa0d5c2b86cd1fbb40763302306c1f576a36ae7c12482abc3174557a65413c7168976564b05b6ddb8a02cc16def8b3b69cf89fe2cb6d9a09f824d6c5f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7da792cbb574cc1aa307838ea6205a634d6f0e91ea3c15d8002a2392de6a5c8dc9050bb5bc5faf5b2152503ccf2b218023100c8492377f3b36e9da652874e4953c5dc9052795c56ded93a2d4321562fb3191bd075dcd1625c1c48875842096cff39d10302047c435bb50067306502301597f120a3ac5cc0b3180aec33350685f45d8854d0fb26c729cc13e548e9c2d927f41ae21ac00fd018430be804d524b9023100b0e7b935d0ca9882e87a54325464d136c177d3781cb987fef27476d917e6496fb2e9739c048a71eb588890a09d1422170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5740f19342959dc983230a577199f7c58ebfab3c994a1b6d1ccdfdf3f782803955eda70159b2ef66b4fc231b6a1f82b023100f822024de07d0e0c1c4a0811bc9278b738b09b96c89638f20a98d159320c54d1be06d2d2c0944b78a4f8623377ebab370302047c435bb500673065023100de7091ad7c0339b45fdb332aeced50a0461679a717de0b308034e58cb9a89b18b865e026915ed1b6ae6b2a9a0d9b401d02304df6e58aa6be0f8f35b21818d3d6cebdb982ee28512202a77cbad4fbc5ede5bae4bbf35fc4d3763dc301f41f0770e50e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0b12ac9a4a1bcc8d002689c23cac70a98380c2864dc5647829641c01977104c0cc90e2589ba38096bc8e95cc9cf4b31023063d2e3ccc7c588d263553cdbd056831d83d564a16bcda97fc7fb7bb0d45fd4e98ea2658c706304383519b3daba0cf9f10302047c435bb500673065023100a15eef65ef476eed48b0e2134bc0904d15aa908efb46206694e0e8e2b9da2d6ebf29ddee1d9099517fe47995332864e3023041bcd936e61430fdb258badf4ce25db94e7a250a127549651952a731604f864868e204515c4100247aba4a906901877c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304bf71bff1598d209f80436b3171db06bb912e63d9acc50e1b7f3638b468b0a8a8ea57392d954e290a070786c56599657023100e871971c20c171ec213ca724d2eae2b41b66ae99e9c34120d441c9657a71ae6a410b7d9690b9c94d068ff1eb11cbdafa0302047c435bb500673065023003591bff5235049f8f2a489a817d3128db057cc118c8321b235984a482f9a87597839c33c54cfdd8f526d4288c1a276f023100cca6beb7da2a4cc670014d2d65d7add68baaf4811cebebee49d4a516bc94b05e4d323e2907790154eaccd86638ebe9500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053069cd0fdcbb53f5168a68d904491f7e4fdea4f8270ff3bb27ace13d0560ccb29a056dbf64480eebb04309732007c1b02306a224adfc804c3f80c4d0e8b32e82e649ef24c3d4f9659deb799d53c93cd16ebdca2bb5735dba34d473692afc1c90d4c0302047c435bb50067306502304ef8eeb40db4b6e9cf542217fa8a91cf8e54341c546ba4da8f8294533d8ff93c5d65d4aa334603e7cd32c230a9671f0902310082cc06c2fe94d519c67600a0c9e1d32665898a95855e8e0da9aca93347dd9ea201977dc441455a3fc27dfd09af2310520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e5fffbda028ca2e932764012f387c4b915e6b9a686a9c37607df4fde73c51112e7d2908466adc8b19de6e67b60103500231009155fb2c6bc2fba49a724f0f0fef9edff021f7bbfb19dfe66b8a9003230da746a80a5b0602de39ac6360f701c268ed320302047c435bb5006630640230697b9b849efc433b3db79e46729872a82377f34ae83df49e0e6d51263147e5eb7b8b6cc05af2a59785eb091372afb2f8023024ec5c7e37e16d1248caa9c2fb855cdce19252c1b9111f94cc22581c02da69cfa73b56f61eb330384d22588e200211c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bc2563f7fa5d48c09b88fe5ea414457ad273865fe4c3133b12a6623432be1507f842343c246a44484e46d9d859ea011023100bae2f6cd7b5dfd5d8194f5cba0eaab3e3b1774b701be0a844210184afba6ad9ce827e4e7057c25ed0b6685315a2e3e3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a39cfaa86e4f5feae45de9e111c33e231d05a9b7569090584e78de1795bdd3372589397a7c1bccb51dee8f8804a47a002300a678b212c10a9eafe95d6576fae54b24a85cbb0ed732954c2b627afef581235855ab6630eb44dea58d61cb8113ab0a80302047c435bb500673065023100d750618b2a9ead5abd4b51e5f852ae5a8bce5fdb20f620ba9f1d8a565b223f0dfc0216e1efd2fd592595f91cbf3c04f802301dfe749b83f7d7b436a61ecfb7f88c9250488cc4a36279c27dbf66f87f0b5e422c505f105a733d28c6e8558d138850ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230790f740f7de2642e59759643665568dbd8b5d4c46208a368293c5cdd87d178a1ae0a93100a57053b212d7911a9615b3a023100efbc3e69a8e386939be630e1ceff5cd440303bc37c89135e764b8fb2292a525055e97db051e39a121c9d08120200f46c0302047c435bb500673065023100d860f16fb01ddeb23146dcd5d075207b89e307b2ce160f5b71bad2f53593213146d06959bb98af1c7a8885755b1964ba02303cea47bf18c2f57e312730be94714b1b2d0a4b82064e0d3120a18c22764d191dac58396bf44991c8a01181f1277179250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a80656cef9296119f3240165fe1fbaa0f2bc41f209c84270b287faab4d3d9cd08434f90a28826c5a04c85ee09adab93602305fa7ec4a1d1bb3a83fddc8bb7f67e4d487216f548d3a7221e805799d6d11462483cce883414ed05ae898489df890c6e20302047c435bb50066306402300c06aa0bf0acb66234a572df52626a1a395b132b26ca4cbab0eb6f36524a8c347db58ddef42a0b06db7cc77d878caa5f023040f1b1d3819280ce67f9e70eeee1b0c69366259098b07e7ce25afdaf3e42ee5952971c72c8cd5504a7cbf2fd8a3f4aee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa44cbbb6888ed81c05d5d21d6dc57b71dae0709a9876a15a2897d8c1c080cfd90ea17e84f71cfe1b07bda7c47383bcb02304e9a66e6027c7a294ad90d5c858c120bbf262fb8bb2bfa0d745d396f7cbcf0ece8d58bd5feb595e1613d46a60487b0020302047c435bb5006730650230111d781cf98126d80e551c486fa38a56a52661b49644c7e33ab93a44f3d03962c46f93a738164c4c5d88af299c7eeb60023100e3f08218ad599d641056cf4e804f7d5687c9cc822d2cceb88b033ff5c7e2c4012e33b256cab2fd2257d335a2f961f2f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b98560c46c09f2bb2a889681978944b7a26ed3508b1b9f31e1c83e5420ffa4a8b65cf2973ae375cd12059a8e456874f5023100e7e6f4a16c26b815d63521a0d661e615c58811fb3fc42ff3409f793b4b9b568e2518dc6283682dddac4235d9ae5b57730302047c435bb50067306502304ff38ef39dcff25e3b7477c6f24342eb8542d83b002bc78cb25f806bc4ea2b2f71e4c6b366fc3c9f161131f328e6aa79023100f4c2b568e46302e24f2183f567a992cf81780f1f5125532461ecbee7d64785b72c4f5f18882d575f102dfecf3c1264170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a468256e839c1cd6b5805d056469ae7b7ad6cbe006b1e1cb1755c8cbe8762472a12d0a582cdaa27749f49809d3cfc0e0230381be86970020f81940a4fe5b75a75d83b1d7cb0f6f5233f8eda6498eb6c521c47a6df0f718b8f18fdf4b7eda83afe0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ad1358d1a229d5873a698b88043003b09805f4f186095f90846c538b06647f0b047d250b893efffe87fa2663ef71592023100bd84cc3d0cb27b29e514d26295b75e2cfbc369cf9f7e3f3ee10705112c10504c3810deaa892ea7bd71a177d431a9dde00302047c435bb500673065023100e25c81c10ccc483913b0ba6855b49cb37ef830383176d46321b373692457fe694fd21e9072364b9d7ed189fa1ade2ea10230698f8505a5d0d5908b327bd63546e1a3a5a5e90180759a3009b6c3b0f3747fcad4c5b9f051b4e0161d0228dcf05330190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310093839038621baf6acbc8ad82fe396f5aa37c62cc783b46c7f2c545d647380fd5d901bfd9bcd38ceb6b85958038b6f5d1023100d95f76f0be9b905406d467ebd59b4915646e040ce45109f74e3146b2c1e2e05c5d145663acdaa99d63e2240d69cdf32d0302047c435bb50067306502302d7daa15b1a945d113154fe991d377061d3516d74676213143ef7b3b6bfdabc8960e8a4a305ab16beac128816b733294023100af2729261126bbd2e2f19859353f17b03adedeb2e5cc0880802b418bcd28f42e2017405bf86e79bf520a22a4fc13d32a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c381796ad632cc5687b14ff751af864052d70efaebf2ba948c2443593ab327e770d2930e9eac6ee97aeb748dddbfc8302310098341f1d1f2564ade5bb35e659bf0a3e4fad0f263f33c2563461392955464124162d267b6575dae15021cee0254879ca0302047c435bb5006630640230441a2b9f00d72341ab73311178977e0e3ca713a4ff385120738dc31a3a1256ba09b2fbb6938c2bf2c7f75e0f09990ada02307a1509f0d1d8e3e6f9af7775f1633502b6539128b946600f72eabe33b31568864f48776ac81cdb5dc14e2f95d72a2ce60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300da61ab05c091d41876a635ed41549be6403151205364e20061b300aebae48db1ea474aa34d8347a863316b9a25036f2023100aab2c24c7ac5ccc95e907f219d7ad977bbfa551fe81cb565dcbf628b1ae8eb028db741869bb7dfd0722a32adabfcb9520302047c435bb500663064023063b9eeb61c0b5eaf671f0801f0068f41b064332d3e8cccb5096bc3ae3a7b4d233eb432778ce769b31e566ef31830ddd902300a981b789a33a63d56b77e36316d0fbf9becfbeb3a329f2431a190b60b1eae2170dec9883c873b30cadbf03d3fe4e1fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d7e75a4ccacd37ab09943d714f712c4b930fb367405c0f8b45f229b376677dc2254b15d310b3c2158facf5e92fa2f6402307a10d78af919b2381df8aae314cc11eb7b81fd59a8bce12c90f2322850b1e24a01b933c0c98c91ee32532b508293ca720302047c435bb50067306502306d2f38b4d2502b4476e533e6463f6626815df5ceee4e76ff1ee151aa10800cf784b10a59aca587e7aef7474a816edf11023100b843770ea476c91fa049893243d76970b6b64c080c030a8728e18acfdcb0ff3e829825c85c24c065e9d67e4b6628f1f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304158b69c2a5a3d391f095a4828ac4f8234159d048e6ffba25ebc870c5ec2a1499e97730c83d85c78e550fc499a14730c02304289cef7bb3248f665b221cf51abdcf2743470762f74fe412a05757261d466a4cbb1f72f5a1c5f24eb746cccd7329f290302047c435bb500663064023070620cc61bf9fb517ea561432dc2292025c9ecc89c29518a84a7778127a8535769733750d2c3e575d120ad693b8af4b502303922485ffe801580eceb7aedb5ffb2cae9c28e5b5ce45e452c89041cc065899900b9464576bb2e6ca4b76b1b4b3bd5530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2f5acdc1fb238c90ac748f6314fe999bbf9d06558ebcb4c463b97b39d4b75957acdd421a3589d4b7e11f04f64c72b3302301d4bb9289db8e6083543238eba515c1e64ac9b79b661b1214e5e792a8e1dc8546a31453e91e8cf7a2193c7173fb9e94d0302047c435bb500673065023100acbbc2f726660018494e3e51577f80e4362d6a4c166ff5c71ccb28642860c531e5e60be0d01d4e29afa22130dbbd75c702301ad699abbcf9e70a473631545397867a9124ec9cac9743e981f6cde5deafdbd4c81ee643b7442562abb1222bdfff38140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b108f8922a06652a5771eadb6743f0b03d45524da692b9de2126032f8d6744aae506246d6a1462429b729e4363227b60230233bd6c3cfa1f493dcca3d0dbd8b642053b4461705ef66d57673bf534d9a44184e2736568eb37cc904013711f5cff7770302047c435bb500673065023100b7e6944010ff058b503e5299ad0b6bca23aa94823555691e6242e97f026d66bb6acf969c5c4234b23725126ecae082b202300abe309334be81e2acda303d28d31100f9c0711678d8bae009f7a5a3ba670a6de9dfdcdfc4ddeca23ca25b6ca9b7d3af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304cdec69aa43974cb062665b5f0275e30ed3a5ef0f1210d82bd69ffe8accba627ec0ab507cf2bf20e6cfad1a6381b1a600231008551b35704a41cd68eff6658d2f8695ee9f8353a368617d0cb01498989d06a4be0842b945c64f902b7826f736a0e24de0302047c435bb500683066023100af42659150cc6129fa02fbeaf6eb73909fb1bd6701e43065544d6d4fcacf4ee080b3f18fc0ca2d0f206e24746f52c5e6023100accfe00d2aed7b340bb845db3264e0555f3388ac1d2063c0a66fb1aec667d897076869794dac9ebff18ddc188d3622ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be57e99cf2ebc4bfe1e3adee576bb6d69ce9f12c8b3f041ece43720be5ed049117c2857e7985dfa8b476fd40ad30cbfc023100a2efb40fcb29e31fa08bc09976fee3ff796d517fb6837ed6a6d6270497688d5eb0de1cda3c96c8207bf775aafeb07b3c0302047c435bb500683066023100fb99a8b59a5aff70201f6eda527eba010364068857c8d64f30cd02fa667aa3cde18ebfd31f65cd5da12c1ebe088c96c8023100dd7c8eb98c0143159bf8705b32a25cabdf6a1d2d7a16e1326a90edf2cbba5e9a07ef26667b6abfb8ba5f337e8d9cdb980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de60b680e4694d8e9195bf72257ce0b34f37cc8cef989e7e0182d292d24f46ea52c90796639c100f3bc548725972a3ac0230106f493c0c8ef600a6c8f7929e756968cc692956879e00158d830565a45fd9a28647da082b5ac5299b6789d05b3f86020302047c435bb500663064023036a3fff9f94316bdbaedff1b69900adcb0a2d3a8febbbce60f98a5afe775d243fa6eb5631f436fa13cbe845f9b40c21102301cf30fe8a44694166c88080f9e6bfbda7c48d76bdf0f443c41bfe6475b072079784c31b52b105142a659c28e26ab18710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304e639e0b1c423283bb056ef0ae7a140cae5231d39e7315f50bc51c114b8969e2a35806f5b907b01b2cba5a78f992029b0231009b0b024cbdbda7776d393fcf683eae63636b733ab89b30bb245505ece94761eee121f28c26b2b3f8e1d9641a3cbfa6080302047c435bb50066306402302cec35decc14e78be1d4763791110d52742dda07cd9a59a9a4de5d3a84c90b4900a4ea77c06d8100b9f81f590e38a6b6023014f925e4d6a167a9fe288448932a745b55a2325374bc75184cb0f6dfcda549776806d4824d3616f946dd047cbb42b19f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c78e3ee771f20bfc41bcc16e987caa8219dc15fe3655e23c532aa863b2eb09cf0ae4db5e2e4dab7bfadbed6fccec89c023100e17c5a634e13733fa4b8878a37868ce3962cd98d8e7f641ce3d463e6c126424763c9ea3f9e7b12644d9488239dd5aeee0302047c435bb50068306602310090c98a77c0f59cbdce12aef1aeb28779bc2536b8b313ec01a582714ba56f40f584657d204aea4a9c443c19ba4d4733b6023100f16dd2a1067c3ae34bb60feacb4a74780d564088e7f4674a33c99d603d693daae4578339c48ec4652f8e786181408fbb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014cd33fc4c7c770bc11788acafea44e384fbd35ec1d591b33772457114de0963236593660d5f991ac30e2f339483562702310098f5a62a5c90b5c2ea3a264bc28260ffbcbf2a60132b0208a721b84960dc500eb767daf2cc988cff32005e52f6f7776c0302047c435bb500683066023100bcc92bd0941ecc1401944b630167e003fcf050bd28bed5609ceb3f8f2f12707d3b6824f8abbe37fb65b1d6862e4d2cbf023100cf47f8bc3613de6b445f742876fd0b0f9184153031072596f2854731074fdfa35b3fab59eda90849ef07f3e308fa191d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a62876c661f372e2a4a2dee0c4fd0389afd35be68eec4eae3138391a85c511387acb617971ae5bbb2e6531d24269765f023100a004c3bd27a52f03f797fb28f263946d708f1cc744e1399b35d7408986a0317b79194d575e85f2ff4355039e801a275a0302047c435bb500673065023036026b731279ae11ca1b52e841289940c873f0fd2c26c38ee578f83a091fefca90a03d33f66caed13bb52adb692cd5210231008becd32d9a6339916dcef8167cc0ebf18dc345ee74fbf53bce67d5bd4db1b6f756ddbaa0a2d3a960035f7f33388068080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100821c940aaf53d72d5f8644799826fe2ba4998a5a2ac8e8981a7bbf7f65a4d3e97f85f2fa8738cc9111d9cf4f7c51d15e023012d1560f862afe82b1ae96951ee93a7b3eb80eb3a86a9355d89c503b1c21c8618064a4ea616d7b5a8e3bbad744cdc0b70302047c435bb50067306502303e6483b25c2744d61acb31bc2df7990b9adf4a057c53522fb205d3477ee3cb25dae30d0226980a88183c89223f5e94e8023100cd977211f01a62f4048a87031238ef049956cbd75ad6c2362f37c1ce453b2199eb230d9619fe6b567300bb8a2963e93f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230192147771218c553ba78790966bca7cada52f81492800d475d4de41c695f697f14a516fb2134d1fa3f3aaf62b58598ec02300e1493cbf221a880f931103e9b9eee2687a5cb053bf93f8edc037f626bd8bf2247965110a3d511761aed863f7e7a69440302047c435bb500673065023100a79f83754d69042f62da0bbba8ce94551383b996d42514eaee4f3eceb0dd6e7663690e21034746c5c775ec270c9c0d8802301f63928511c505dfbdd81bf9f99cfc7206f807a3bc57e795e625afd8f2176c12ea81f5db01734b10c31c38b05e3c9ac10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac2989af3871fda8efbd5d131bc51e38a02ddd890824626929e54746b192a82d09efc4d11ab69818bccf38d06ca110bd023100d4f965106ab07a12cb4aed8e95e235ed770f4ff164a520e6fbd8bd966976ba93a0651f802fa85517cc5317bad03a02d40302047c435bb500673065023100ffafc56d19e76b86a7b4b41d8136449cda137f92200dc631f53e3db73eed8b54c9749664668b018b1d69af7248e8a1920230684ff2a983a7f4dde7fb8144ef48b9499d011e2257571a5707854b64158a8125e8e5fab85bac11a922d71af78e22b75e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d12f12c785434e4b5ea3082bf94f51096a9c53e71657cd46b89afc937667876869d886bb54ae9a0499451c6368eb5dc02303bfeac28a88e5954476560cc1f78b0dc92609982c7f07a4c0fa41874833c09bb3d4c8e360f966f85978fdcf60984dbf30302047c435bb5006630640230489aa907afc6f070308d657af59256abdc263be037ceec46d93801bf2d237ba9245c0f857e889c1c1569f7c4c1fc87c902303cddc364eee3642d64b13b52e4d6fd40de0bbb8c70f87a500cade2f8345fa9a6e33e8f199ee00eb3fb98e4ad7146608a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100de3fce7019df7897177148c7d2103e382a16e0615ff585b005bde8c9b3477942cf18585cb9a74b34099ccc4f555f0146023100a8636e592bc9fa52953c393d3c202f78557eab3ea4fb521db297632759bb15c13d415ae3a3cae3e87e642df4644c81520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085686493bd3c26c43d85abab8672a4eecb70ce918e086d449af4df46692337c6080a14807e9ea77d821606fd29d64b44023027e73fcf1a66058491c23adbe8a6df937c8e749ad09ea1692239a9c5a72f2f4da48421de6f91bb2fcb3ae19dcbb566550302047c435bb500673065023100c37cfce061fff5041dcf35558dfe277d795ba21ca7b84f9b38310b4f96e5a91fd1bb1c61034c7e7e5be14c3ab95fe15702303c9abc85e30e6baab2f05d38267d26bb040a4008e986aee8e7ecc9529e3be780daed01cc8988dd493fd8fb4f9616f5b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230578f12336efdce5f84ed4e863bd93547bd7f43b96c5b56cbb4b13a8bb1150cc507873237edc3519af9e72159e70a2318023029923ed852275e03268997323cb2003fb8d2e7e8a6a42b10de6c0cbcf402651090e9361dd794effa50533924d08cdf590302047c435bb5006530630230631aeeff2ecaf664cd696739c28c0c3b37cb503e33821246d38dcb4b74b30252a463f3230d211c5db3e11132cf1a2c0a022f12fb910739d03f279a1982de590da8af2d91913c786656bf7aeb8dc90699884f18d9532f8864eb6c32294c3b9369830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302df574adf9d8c9dfa753776ae96aaa6cfef32e95be444637d1128645ca9219d1a57a4d519c6866f2c00d6f022e50c8df023062d980809244c1c36ee5fd3b2f97206db34124e3c400f69a6e59daaa946f7b23441845b9fd5e6242d71cf532a0f718280302047c435bb500683066023100a130db449a8b1bb7778acce8af89e44ffb09378bdd1e146c3ec866f697aa2cd71e2af37c3519e7a7349970601eadbf23023100d1d45067824c8e28d38046ca32b09d44804187e793323463d47b9210569e7a118718c6377057517c9e798615123325b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008304d06950afe6d894127aa2734487bed8cf857966be16ec501a47c11953a5207b08fd7d73613a4fa0ce008fda758044023100b328115cc2171fa79bf10e9eb46ab7abd3972aa22f223bd363b5e77c89d477d7483f0079be86cb6e992f0f4b45877bc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048ac3cfb637bf71087e2eceb6aacf29b5cd4643f46e007a869aeee5390d186333243a98bc3b93999f6f550b91bcc4c5a023032eb0936ac2ea0ff6b8bcef37044add9ab78de214d8190776d449816f606c9ffa3aaa0c407e6a4d6e625bef577bc254a0302047c435bb500683066023100c5d355cd938899916060b90dae403fda6e5900d00ba3b49ebcc1fd5fee4c8bd58affa9ed4f6a3a14623661a64a99c0d7023100b39c9066407b44312d7a368bca9f2c869700359dd552cb5421b33fdf7c895140a57c114b72da3749ea1f8202be76574b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2dd828333a09f5a6c9b06f956c3223fc0a3e4dd0f95e62f9fcffa714ee7a446e972104057a3e9782ec70160fd2e006b02305171a8d540074655464d9d51b0a1a7a1eb147812255bb7344ab66afee78b52dcd7924d29c5279e757e8ddbf22e116cb70302047c435bb500663064023078d798b4e7aa7715f857e2c9588302332fc8b29b1d02d2bed1700e674919697eca1686707fc7aeaa0691a0b03563d7d202305f35f46b2fbb7462f2dffdda850723e3c0979e289892417ad1ca07f04f3ed17ed833d27e222c458780f445c042b6d8d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d45ec53baf4d4bbc8c9c4ff8e87eb1dba37190cf44e27d2449bc02900249cf94168579202e91f977df3dda2cd446b4ab0230134c7373d832e7dbd24c9ac9159708f77257cff6c349470b94ee83eddac09d02140b90b3023dde245339d2bd324dcb770302047c435bb5006630640230140fd9f39a01cf70b5cc0bab8e4f9caa153e38385f2170766f61fd242026d5a7400392b03670deffc0549f47fb0dbf2302304df79dc99b4206fb2580885a54faa26feb53a7b5b4a6690668510cc53b4f710809a808d716fa3773d6939218e56ccf9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c6a747a6ce48ddaf2c072c9fc9c655141f2af41ca80d77d9c85468ed178309be4f6c0e3a8eac2052c929735c4e7c018023070204719acdbd2b6c2533cfc4e9892d063af05721201d3fc8241d882903a6ab51fc86f94a43d0309ff006336e5771a480302047c435bb50067306502306ae3e8a8eb07f9d428e47e7c86fab520e7b0f20752e995e9443616d293481313cc35558debfabf2b3ab7f69102d0265b023100c71f0b960a09650d6227bae4dfc8f3536a61ed8d38194f9de57a5d749c9225c350c7568d138689fcd76571411e8cf5290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045b81c1aaf7dce3e4c2bdc31416f99a16d4c39915dd8e5cfeb1e4856909eb45df7b67370bf2574487877de517384b9e7023058dc6ee7bd270cf04470d5a7ef097ef9d152fcbe734429c930a7aa1e2c462f2e186518543f690784dc96828c3e8be0e00302047c435bb5006630640230271ea965b59d5b73d7182bedb8f5de56e218c161a7b12b07fe31e701d091c2fed7a57fa30f3b09da973ad4d1254e02ae02304e14d560e193f950bb3e8515c6c1839bf78fc4689816d67a658aa6483bd5b6fd200b95076b358a8b274aa535eb7cad460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea14fa37f65fa3fcef23d2b279963f6f9bfe5362b16e94b69de09da0a83ebe58fe53bb448d236749e5cfb7dd312b989402306dbb492bc9b83da0c2a683c7807eb820d5383e1d975efb3c3ee8d9e036512238be8230ebd9f8f3881de6e7724da2c4530302047c435bb50066306402300ba6c5872ac09ddd0326f5297c2d361fbfc9d5cab8aecc7875be47990c32d309ecb4d26dd2139b73767475cc4a8ef58c0230649d4771eefb39e597d4482ea3f739d8a519aed852edf9e7936b5e21dcaabab4459762846245b29981e3114e44404db60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f8d1ece422a12629931536137509d50ef2e6018e6a4fd787405d16fbf6132bea61d8a636795796a49a7cdca26987f5f0230607c03964213e1f71065b4c916d1616a4f5fd40096af219ddf5e7d59799ab1ac5cb0a894faed79d34d0ae852c2168c020302047c435bb5006630640230064a06a1c6cb9e0134f2a0381167955786a5640b13d62ff1f934f4ec878008865ff857415dada4f967994e7855ecc98402302ad51d916e4878ccbeb33614f15047627b6e8cbaeb4dba388c7628302f215741e4d97a65865d63acd537f65c835e44de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ade8279d3cb390d63bbda5c4c76051dba694a1d33bb89016597ab1629da13638eef0868468a0214a6a23cd2389473b64023100b8517f1ef3d49fba6cb0246d59681ba78be132720d1f28fd6e226e9a2c522f3d5f9a62471fcf1ab8a8f25bd95b27e9760302047c435bb50066306402302ed861f31f71e61397cac989927e6db80cae14934f3332e75714d201101f6363727a923243765e07af9a5d63c1a0f4dd02307a99da0d9623f289b3726fa16ded3a869f9690536314322f550ba45c3119f85f85dd689e2595cdd628c4f4b7ee1791f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5ecd93a51f4a8789f77dd3e507fa4ea999327e4eae1345c98e86d11fa865e01a175488fc6e63227cb7457e8a8feea04023053322b76268924833de9c8a4e849dd1545bf78d2789552385d61617f3ac084b39bb57fee57216d80f924cebbe0dc7dac0302047c435bb500683066023100c98bf05a248cf402ea03126a59269608852484585823c0abba1d79dba405491e9adedb52da941cf77be9fc3a0c87f0bf02310089d68726e57cac04dec2c4d57db3d24613712394c76e3854cce48b0a6fab3ba68bce2e62409af61ff669ece27403db4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d0bc56755954a2aa7d607d810328d7d172fd79943f5668c1b10462ca30caf303cd11089590cc21c4886c242657c20a702304e1ad5569ae46f706b4e28033151efefb78b6f0888afb3fbc3c7a38f2ee4a7f9c31a8d85d6748f909149ae03ec5b4b360302047c435bb500683066023100abd109826ad6b345da4d86a42c73c051c7f18c5c4480d81ef8c741880273ce2f6836efe8ea047155a9b6fc4238c5db620231009b08464b51e17e5322bb4c0ce21df1b93e1d1d24739071b895870c7df28a8f45f4f1ab295e722a3163d4668a03d62ac90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230153f80fb24c16e64bfdb7b853f3ac144c3bfb65793b0b6a3b63038cd1f7701318a859b89abb550fb4737b29f3ae22fa302305d54fe54b97b6e142cf9e82e7e92892160dd98f486ad63505b158685ff12dfc4a2fbf274ed9baa822ed5b05ab426f76a0302047c435bb5006630640230377ce35dfd50ef8c3d81c484f4fc94c7506c6f24ce35c052781ceff11c279d3a6a229f3f33f1f08d366fae10ba008fcd02301c2cbf975064ef26249881f8e25e43c835d1e725161e4da7ddf8bae90dabd0e518554ddf0ae88af9246f57ff8f0506010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307a9674e95d663ddaf61ef9ba0fe3790c350d39b0254563da8c346e73a6454b3bedc22bdb78cf5a47506b67fa704bbcf9023100c15a3ac46e4a5e9ee1c081e7744f476d593b59b20e338cf32956ccae605cd5d999925b7bb11456bd46dd5bb67f05845d0302047c435bb500673065023100c7cd8c1ebcb28baa9bf6e4af269aadbb20d9bc658fa9397cc8271455f3207f184246fb645a07c17e2dbe3e90304c599402303a3bc0d62871cf9897b79b30f3b694ea793f025c16efefa18357acc9095f857f7fc477043bc5b38b00173fd8597c707b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087cfb2708acd4f11a534efb49b9bb7432d69e11454e50416e7210bb9950f3bca78a3b427094e9bcb37cdb1b24411206c023100f272b3ba6a95c16353c4d53d87fde5f75832c7ee245f50a3840e8cd710490ca6e912a177ec00a66fd5c9682a9c79296d0302047c435bb500673065023025ef89840ac8e9b75331ff6f78abf50a293a046ef4b938c93be6d8199085e8ea233075f71ff9d4aaa5f9d527bee4dce9023100e7c26aac19e11ba654b6339db14ca8fdd515a7caac0cdecb92c3152c0844a63d4031b1f0eb78b8eae1032bf5aec875720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b9e96d9b4930e08d9a990fed3f1c011914136adb45141d1356465ff4e613ac235230b41ceef08932b1834b299175acde02307e26787cd351fd5d8ec10d5c17fb591502adb776a8b543e4eebe0a11ea9125331e57ee4b93f146f24747f0ad7ac835040302047c435bb50067306502303a0a4bbba512301ffb990dfa7116f684483795f248336b1cad564f7c84785b023586063f2265b1c8139878acabcab33a023100ad5acd936ba9040ead3b638f4669189c4d88a6347832c070e400fc3dae3a8b1bf38795dae15f003fb76bf3d0f6cda1660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1434fa36b9fabac2a9b095c475a99fcb7b07f4074864582465fd20197b213bb6066aef6943ec51dda307dbac6ee3ae002301e963759068b68830dfd1adbea47cb75c2773f7f8c107cfbb9f6023de9dda5326aa61052bf8dd2bfa105cb2cbe7abd920302047c435bb500673065023052a9dfb3f774a121680c0a7690be23039ac12297e29bf23865cdff8b6ffa15d0b4ab36e448ccabce09f17fbb9f2d0c6d02310087649c24fa0cc654030aeb48edef5daa42f95c8714cec6518549f819558f55a0725c5876977ddb54a93a16d7205a45df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020716b6ec6a2180cd47d4945757f3e339b60baf60a29d54808d081519c5d462cb762383f0f35bee1573a2fb7a077940d023100c2a44fe36ca3a41397395ba018a65317467021e96502883eb18502f2b353c343820574415a2825aacc87a6ca459a354a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032ce44e6156e8bb0248e19ddcb502b6b78e27b4720f784a4f2b58f55b7a342bbd40d6256af8d763df402ffb22cc9ad9802307825a709383924bcbf01a6c3dc3851f3a85b549a0c11f068e52f1919cb627dd84430d735db1d73747bef2c417ecb0ae60302047c435bb500683066023100ac3b38601b9a9e6638f1d403b9c0798e885b9761ae044dbeef42dc0c1f80a6b513617fca96d75a3dd38c9e6f64f96bd8023100ff285875b68d3f6f2d82dabf226c32ba45973474188ba2916856e4ec4dbc70a94f96e7b6566a40ffc02e8c7df29bfff20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310093235a79565e8db22e973b791c672ead2af42a2c6be56e8125ed80794fe14d9268682410f976e8d952ccebe3136b0e310231008f25c25ffcf7541f02ab05e03aee1b8d9d8924173e548ede354255ada95df91df5ec0c9e3fbeff91c359a23947928ed00302047c435bb500683066023100a9288fc91ebf75f2dc86729b403ce9f9588a0d6d9400db9eec6c61f8e56b09b20fcbc290fbd00522a9663bf879fdec4a023100f648a2eba7cf183cf38f6c7d6676ed6ea026a06b3e482c0fd4c1ce183c4de6986b87e0e58c0e799d67b4b5748f62e3c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cadb3f8ca753951a5e0873fba701b70bb58f965d5bdf6201a77be7ec2222304c20287a918b895dc10b9c96ddd86390110230797fb74fd5f517226af0f7ceeaae236baf9e1e1407417e971cc23898e9c13755b6c561ae0e5856f0d03aade7173bce3f0302047c435bb500673065023100f38e08e92e8c3f73a8714be4c0664b9bd914c2f609328b12891c3bfdf4f16f5b32e97904cbb38240a6e1ae20dcfce01302307510d97e4af6443c882577090ecb8e84736ef09d69e5492dabd1a14407ebb2ee85867b623beb48a91e434d74936a92660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec1c10590e2c2b52f8cba4c0bf2053046bde277006384fe3a50aa3ae74ba62bc81762f13affd3a8f61e79d934d9572f6023100e77ee580e265e4be31b2bdd937e4c52b2f611fc5aaa94d120deb1ebd5a91cff46baa9bd44e83227514d847bf582c52d20302047c435bb500663064023029e377a95758ead319db28f17b55274a314cee05db50132b9f6658a1c81fdf25da10e7490ff002612756b8b30e5a9ccf02301dec243a7316d492682b4bee4e0bafd024066977be88a5f297c876553b5fc2bf0875b0c5a169f92efb31a6ffc87ed4720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f3694ea452ceeaa38c7e7d807bbbb33d8514911b7d25c1fe8e3ee8f8df20ebb4ddf1442afd570297608a7f09d4c3e00a02301355a04ac203c84a0a55d82383ed94920531f2494451e28c7bb36bbcae9ec563f667333ff49c52a6c60d9db41556d3ad0302047c435bb500673065023100e7044a60c0a2273a61d27840ed332a6d8e7d349482a9bc055a518431a4d6d063d84c5e0f4a0295d796e4014fd28afb730230137e1209a0e8bfb3c6b141e24944026af6f7900fad6dd22deb8d502cbb541c088acb2f860ae484f94618fa5536d4e9dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023069c7e3e541c222bb05a68d4120064d30b0f9355a3993de8ed97a713740d84d430ce064ef029aeb5155b1aef9c689d68e023100bf67bcfc1bd0fc59131a7f91f9ffda80313ac953a41ca665eeea5ca39f6fc179cd2f4d9b7549fb114697982036cd73de0302047c435bb500663064023000eba53f5dfffc950aba6a4087453a458015c0093d6fd503077e16a6224c7f82d810f703a672a7bb21fb04e0ba07bbd7023062a0c0e37c1e1679459d9f83341f8f3472a50cb2a56e5130d72b7607db44da434d588aa47f712a6c494f0b2f0c0933bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ae7118fb737f23dca8492cc96d199372bdaa23d9e7ac3e2dfd4767e7ca82da6ebbe3319274697b9973aa133af46fd870230501584bb2fc3a29a3bae5021354495313b2613a79097fa99bd8e2cba5cb8dd3a0d88b8bb23f626f25577773d4e79d97f0302047c435bb5006730650231008030e93de775bdada33abaa02771d5d237898b3f902b1ace2d474586ab26e5aba5692bc977d91c54b077da583d344042023004c6241b48b35c52db951c2546c243a95823c4357321dfdbfb4f698762bcc3282300e52847cd27524a597a97c934dcb20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023016ed9edc8ca601067097426608248b2011cb6445f265c6b68cb71a09dbd62b6f0c0ca46cfe82e30405977717698a4e3d02307ac369cefe18cd0c771414f9780fec642777e0a4a08e8b306b98f830c35a33e8b03dcc5f5d2d69f1d4eb5c47cc017c770302047c435bb500683066023100da0f42c1d1259ca740ea2576ef38d6c79dc670c4cfaa31ff9387f0167120a8cc416e21685f0a491fb385e1306b5d1c8f023100fbbbfbd5ad16b5cd1e870f93b6018d216c2d4ab14f8ae545161a0374d6b179f075d41ae252fdd27954ee548ea4ef62b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302a1041894c44d4513cb16316f09e211772a16fbee44b925f4d6728824b1c388c2b56f8ffc177ebe1536f70843ae24df6023056d96e5dd8d940c2f3ba9bb87a8af8faae008459cf1a61dd45776981b3af7725d5080409061abce90a1945b4e0c186330302047c435bb500683066023100a8edf0bafe48cc1796276134b5f718fccaae8aed0b25818206bcacf4898bd73bd7de828e8eb70c932ac3e87fdc2a1859023100ccdc2519b4b844bc8e0c9b8616be4f528686465f25dde13835fc2ce11fad3ec3df6653e51aa4862b04ca8d1b0b0666e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a76689224565effc8b42bf3f3fcd9c01c58933dd301ee5045785f955692ed4c0eac5fdb33fb5d8408b82a6f7d5d0629023021941fbd681fb6e7920eeb1987a1d41465b59a0dbb75ae4e0ff4585784a468d8aede4cd4945fd89813787adfaa83e92e0302047c435bb5006730650230745ef6107b9ddac9b7691678f4c61dbf6139a41da7be589036bad6b264f021bacd8a714b003f948277a0292b494cc218023100fb8e45d19d4cf3da37177bd885f4c2765669965ecf21b6ca1710d7740db72593777e283c1e23a98a99910c4977a1c0d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051c950e9e76a6b3ec2e1ae060c647ea960c89242c62ec21c4ecb98f0ce178bf074e7ab2bd7f55ead174b2fc71169cc3c0230525fc50e76a264a9d561b26a82bea5231def5ca93746b1cfed999a5b6635230c10f9dbbd15795bd8c0e5578e2cb1238e0302047c435bb50067306502302d4ae70026f44420b3c26994f26dd1309326fd84609e967e30cdccf5d6e58e4c390e0a98bacb0df3beb1796dd42a1cdc023100bee59d926bc34e641fea3a5ab3ee48bda6b48983deee7bbd4a06c111f0d694c13eeba6906b38b8e4b93dcac2b30f914b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5d7c84c29eb1a2a235804943cf2770573665fb4a0785c27cff22b69b5369ad83b3eb1012252bd4fe97333915bdf8e2002301a2fb492377baaa92ff329d87546280b829a0f37ffe5704d54d51d26c194b1d1314f40577671b23fb7cc5cb3d73789e70302047c435bb50066306402304225c6a6a37f765b009050b8bc2d2ccc315531bac9b5d2e2dfbda93bacaa3dcd472f337a003ef3adf976e8c997ffb95e02307cf8eecc37e2c134af4bac3b3572ed2322f3b4317e56587bfd73788bcc2699bb96450875ac3af17beeebadcf20109c4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230442909818c66538ad0af0510b99d64e922145f3d4bd0dc89eb673bd4ff4d924dd864a29638a020a1c4a4e86025c470450230551586b0b1fe7e379fd7eeecd31985414ff64c62002205dde1b1d34b42584004da5d3be1edca18ce9c84a317b0b1b9170302047c435bb500673065023100c14abda86d2764eb396075e0feb38fc3e812e1b6de73cb5bace7d0bb22d890aed8f9565076994a3ddbc78fc75210c954023009e0d5ae301479f2c5718b07d3282e348d9d13d7fa59e9c0434f0b2bfd07d3f8b313114a706e94195368f6736be1de080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a685620b3919234e30e8cf5243f4c3d3aaf63337eedf4638bd6fbe4eb84018f032ea6d1abded107f05061adfa78190ad0230266a3da4e77b693389cddd02921731cde0cf81a0c026428da98d161119dca71910b8138ab35b6a0fe3ac98369cc21c460302047c435bb5006630640230733c662712468616edc5209eb4a21aa568e5c094d0b01f6ffe52f35d6b1e5853a08d58f72119aa6e05a82002d8f8e18d02304e8e607ba0e888738f27c0bc9f98d90f9209c993da2c596615c674ad0a36dfdb826aaea2890d197bcbe56fa3926413aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304dc873c8ad4775b2a5a21652642bd96b46888c256648f55b5e76d4e9bfd14cd381f1e3ef95de25b58120741dc0594d61023100808f4d0bdd4228e2ccaf9b07904eec3d7eb4f9714efdee76d967d3d04ff1ecd3a53859694fd202d067f82653921426fd0302047c435bb5006630640230652a9b1e421176dc8f601539cb88749b2424d3bd4d0ff307ebd94124d6f506a39cd14ca92a80200ebed73efc89969c0202300c54adac401d71b15a52042febba358468b6ec04b2c407c83fcf4df3ae954bba0024818f3a93f110f014f048db73cf5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4dc5f8c7220a4f6ee3b3e0ada1080321c3622daee7353266ff7af08d8a9284c07b2eeb9d95e4db909be2f1c9e256c4a0230466cff92d6073c5173d6f4e58a9745e286fc21425e0fcc73e2b5e7844f6c46eb4393209fcd99fdf967de2961f25257be0302047c435bb500673065023100dbc158fec9a949314c0b660c01cd1e3b8a9c7b07b4397fd14e86428a7fec0c816b1ec8aba7324d3012efce80fe199b4502303ac28db2e0da7434434ee8c67f2e7fa1fdfde80521752dd2ebec96974a9cc304e46e9ed0a587b6bf9df111a5e7354b340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047781c119901b86e9b021aa93c83cd9bd71545525fc48848e07c895ed8534fc76a2a8de0bd0f5033a9d857c3e9cddc17023000be02a503d3701afde74fc8bf6c357c3e745dfe2570eca922ffa6c5a7c6f3a2b9a64aea7896c8ea5f4d798f0f6bf9d30302047c435bb5006730650230100c8560397948560dfafba76c8eee45a4f0b5fc6e091661618b449f350afbc3bbf1fa2be0d31a29e454c7ead01abff1023100a28b131b879f25ede828a7e75aaea13679914f3cefa19b411ed07c831005225d221cb9a74edf43a163f6b1d17de189d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100857b3fcc9f3bf36514ac9b1535586777b1e8fdf9bdd09939594feaf4b81d04df8a032798f8ee91c16985d00b113d1fb802303006ae9c425c74e4a92b58ca31c44caac0a8bfba15bcbcce41804442df804f955f1364a7a66b7e12b18857478fbb784c0302047c435bb500683066023100df6768593bfcd0b4f827585f24f8ba7765eb88c7eeae5a43636657b1e8ca37a9125fbc8d9d135d27690f560305f5cfc102310096983fab92c49143c422426392273de0a722b1fc85de07cdc9494ac2b2260a81ab8e27355de691b66f774a1f7f7d456e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa205c9c012461429d0531998d49977de0e310292a245d6b32070ef929953166b392af24b8addbf6215816528977b5ab023042eeec7d9c1323337842c6efc7cb97082974a91ff209f5c6f7a8361f88acdebe06f5000df6f2d10bea125622694638770302047c435bb500673065023054465c60d0c12b3629f0d2d38be0163267a77c628e07afd75e9568b1ed8903b7a70b195b14f21656606862989e553fa20231009ce42c70ca8a774921153b34e7e2de18d2d550b3224208b05aa14857179941f7d9261f954ca125240863ac9a693368e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ea760a4112ceca2d341f3a8921040d0c3ded79f926b1c675c55c789e386d98d508a5fcbad91c9a5019c8834b94370f2023043cb01a77ab445062ce95b0db8ec22d6c3420e2f29269bffb7a9aeb47438441b5c09742e6badde7a547c1d7d52366dc20302047c435bb5006830660231009d9db3a5ca62b7098c437f028db77418d66c5c5c19d100b8e96f0e44c3e893b7b6be238a35ad3b6766d9cccd161fef40023100f47ff9b70d9c602c69d287e49c9476f366dcd05f073933b8b630687f34c7f1ac0e4a6d399a5f8b66455071095e4699330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab88e59eba4d67b85168ba56a3ff95df60371c68c1f3dbfd0f5abad8f1626be86579337353a27303ebdf0ba5ce30a9eb023100ed77bc82708ad71295c3a0f9b177b994bd97e0f662bdba36dcccc210fcded47ad15fd6accc5f4a3fcea93e6554b149cf0302047c435bb500673065023050c105239f034346cc3ae28c5bbe0236ecc25d1c2e8ea7a8a0f312c87fc91920296afac11b56238c2c0ce498acbfd267023100c6c13f62bc0825a37a15e9436fdf30b821bd792cb4aa52f5afc40a240a6e6ddac29f2924f4cd7dc25ea3246dda5b18f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dd8a9dd0e8049d46d3246d52ab028686fea8acfcdca17da4539174f60b74f6d2cc9fd427c1ee5127707aac070e559e34023013556b69fdc800ad08776169527abbc29b3a3f90cfd89885b8e23d4215ed8ad0b954b34651ea8cdb22cf13630d975b780302047c435bb500683066023100cba68642eaccc2478fe7e45b67a4090398501ff45b4120d6929cfb8948d73f79535ab48415b48c9f553f531026709f30023100c1deb52ab385115257d9d19f8cef548bd52d36bc6665d3539e5010ee11b6850e6bedde87f2092a2e390047130909549c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a00acb1c56c4fe7d82b4f4702e3236308b87dc76b4670ee4ed324a9f257b168cc1362aa4bfbc9b0dd8436b9bc5f582b0231009c24f45e30bebf250fc89797cbe1dab21aae6933bd4b5b3eb32c15e85829053d214774ee10cd30d0efef6e2b85291db80302047c435bb50066306402303e1ae3967989cffa809a5d1df409247f4b16d2d1c671a16aff79e47633096c645b16820f2798cc255c7e092d5b1bad4002303b55ee329335a2c6ef6c96fca10ca6adfda6ef3063dc1f6bad8b9acce4c12206f6e360397e2fd05864d3d3c6862bedc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062db9106ea72767df9a66d9711c4995927528445ffc7f990ec1636bb42b8ccb84c94b3b4f6fd903ed88fe9572f8fdd5402310097abb5e10cacb0ef8930b4dce617a651ae5f00ee4e4c2a1d6373bfed58af3f25e5f523a92672a5fcfabeebe6ac9adb670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb72ca63b6ca4bcd44f20a87a4960cf57d20ac3e5a9042394f849fdaedb9cd5e77f5a609dab4c17fd6c3119b68f0a4dc0230492d4257180ba1a1afb9a8caed5c9ffa95e3753e1262fc27523ed44d4376e46799caa1d174d291a8aaf96af8307eb2c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f607e716a6cdb1bb23e1d2a0b425ef88a72e728b7d48c1dc11c980238817d29ec0b6e67daea2ecd29951615e2ffd45f0231009b3ee3c0d56ef49ca2ec273ba05bd4de6a0e97e0325d4135a571d0add738e35439522f82431c25a22dfb673d031865f80302047c435bb5006830660231009cf2119a0f7cfff96acbe777b520d77ce85c8d309094f5886f30004644912a37682a14ae582bf0e988426050f524da72023100d6dec016e8095135d693ee914fc2c40fbd086953fc59ec50efdaa3d51332bbd15fea692ede3a1eef13c7171f82402fce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f4fcd1288dcc60df1aeeb512bf8de5c697d89dd1a03369f453f1b09e08123122cb2410a656aecc453f8d9a68ed4098a023100a0dc394d0f0456d7c96b69575f43fc4527d96c80b1755d315845b13b90a921c8959b07f9ddacb0a58e44dd3924f7deac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230171f43258f1ede38c1ae3d18b05ef9329356877d558786038bb9ceb3216a37d1683736ab8305f7bec574c150137f96f6023100b954d71b96411a529bc83df43e44ff010acf3a902d73fc66a8d900469009321b2dc9e18491d989e62c0b446a5392eb040302047c435bb500673065023100a050f10f5761380dcaa45daa5bba801fc2b5d4efe2a119b12e6a2dc36ef7e30a0e982397411561e590583cd1cc34f8c4023062fd714624415b2f9a2deb70756a62409a2fa9e41260f17ed7c395d4331c4364bc6a76d84251073d9c6e0fa34bc2896a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bd7649a17cce911927344bddacbd469e7b0c56831b18e97a2d4eb8938c1dbe8577bc2846d07d3de8d900c724efee60b0231009d9ba62705dac6c69ae0b1c4351c8b1d4159732a4976fa4bf9db307676f4ef3c03f69f7584aa27533cff7140ff4334620302047c435bb50067306502305255ffe6292f6286bbf05cfe8c86190381171ec4846c501936274e75bb422fb279c3e4a8be94c711e9901d5ffd50531f023100ddfbda556b538400278ca132f2673fb5658990594df74d3d59335a5ded8e0c23fb2d02da46680252a0e1d32d814213650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c95fce6a13a1fd619a1d1ed77dd0229bb937e9139bae464093f3dfb73d69b8a0e682409200aeb52499b0de814106482602302245b52c4d7f30925f49000618363d5d215bef9ef9c402f8f085d70b5c68dec0749e7348b3060b4ac2fac6156203c8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c6e8b8b08850ba4bb173f6e0e68a74b72a586f1c9dbe45dcd4dc62b9d5390e1b1e62f938a73f449beb6f264a2b4dcd9023100f11dfd05a410929322786bc6acb422b421217af59eb7c0efdbd98cbe2f0a0a806d2dde219e2943842b8d08896ff7b2300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302cf57c23568dd7a9087a7ab0072ff062aad5f4793d029d849c3c70491941a4eb5947e26d3a8bd943a11c465f271969bb02301aa83410972a6d8e50ca52b9c3839616588488ad1093e4163dd23e65719b9ca8f9e1ae6ca80f776c6905da0446efe6630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009cb3c929800ac2508864a946b807ba7cab615d6430f5197df497504b635e187ae94cf38ae38a553c33c43a5520f6fc8f023100a9e8d17525adf1708b392c5a33c80aaace198ad26f15348434c1d46938f0a1001321e3e8ba650abd3edbd2d246a74db30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf19a1443ab6cf8709b4541662fedc7b239f1df5ad770e8fe2b5b4267c253a76fbed0d4521f4f3848482a4ac0725bbf20230588acd25b0183ab6b073c73cdfba07fccd0452ee75e0aec10e7b1da9fd37127ed592d3107834e754a561c20cd1bef9f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088706bfb7e462f2c7337249e645d3d7577953ffa7451e45cf2b4b5a4ba126a5d55eb82f66264f834116d77e4788ea6d302300a429a8e6176cf934a8d61278a6e714448c6618eddc41693c0caa082b450ddf8868b4884652b39f4cdd8a17fc75c212e0302047c435bb500683066023100c1c9edbbe4c83c463d395494b4b0b722c79bcc14a81c61a6ea8b3b417958118d221ced306c45738793deded5840ca35c023100e241909ec4911106a59ec4647910dd6211b34c618948f757aba49885ebee33c5efe83f18009a55350379b253398d46ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100effc33651f47ef2d4fbd14e3a4e6aaf7ba9e2744d7e8c5617210a1beac94190f44cf59c68085fab2b0aa4c77f4a46fc0023100d36012801335f9eee1641b1c185157073fff11509b88cecfe6ec1cee0b9a0698e4098582677a98704c9389cf40c250a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076ba8032e80f1b53f2f8c8ad14787f80c9c78e1b73b2effd57bfefbda7bc6de2365486053d1da799774ec4794b30a08a02304df842e240bbeb1dc4b8f910ed397cb68d1a854ba622cf6ee85455d966e4d53afb6440ee0757fe55adbe03dc77ebd6aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad0a5aac5be14a81b38dfa81bbe8c0dac16c2bda109caea656e30d1b4cce5638f650068c341e6a717333722df8b6d00802303c5fc2b127dc820aa193fb27a14210deb82fa392631ff3166e01e70f7c2fb498ab1d45dc6594b7220f294212ee4172910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a5918346e0a587111935274fdb49d414ea1a68eeedd7ce5d019da3fa6b5e01600c7a0ee093c36c9fec76cf1d3dde986c02306504ea61197dcccf2589657946ecde92060d8967465899053ff34030dd25096a4e2e6c03ab35bf1bb4da39a4f4393a940302047c435bb5006830660231008996151b242ca4ba64bec66f1f40c6af58b8210e5a4d2d3470f45b5946341f8273f6400e784523f1d48018d616a46122023100afed168a50cfcee20186cb123f4834220325d29d5cb6ce6ed20132c5b8245d58772b0a3cc1552ca2b036802d13c652810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aea21b53a1d2e032e5946adab09b9da1efcb2dbf84eb69151accb903e10279e02fee673851d3641356464a499abe3d0102306e3cedb0c5e564b6d2004bfffa4fe1f3e1098617fded781e0c5248aacb131199a5e216e70a0e801bfaa04b982b501c3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a479440e3635769f62b6cacfd7d755025d885619107a6899c3e2a6ba5581774af27d45fa9da71fc222fe3dea7b1659a023100f64be9106e653bc8e5028354f8ec9fc16ec8d7bf4b1e64b97e0ac7ef90b9c07d9661be984610b09889cd965e6441c66f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304197bb68d229cf20ff9036511ee523ee3c2b8156791f6f4ec7d19f9cf5ddae6640abe6496f49bab69c01e4b552a729f302302c190662036b9d945f2e4ca7d71a881f4cf2f5635ef4e509461fb4bde9389c2221063ac8776675878903940080ca86ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300aaacd902778c7b8ab47939c82e41e50c0969323ef031ac90cc176e13c96c5514b20d6086086118a5de3396089ba3efc023033009dc7e911cf567b3adf63da9618432c35d441bcce2fe50414813b3df4a10266e293346fd33df9adfb2d8a215576240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230769497f6e63dcd6beef7478689d93f321ca54a706551c2dbfb479ae211ad235949541463583d3469c8dae8e94d2bcc3a023032d3f962b706ed543c9e0cf777678063fac1390ea0dd9b99e9f52c9b9093875c8a1aa751d1df4ed2cff9f3725366ad750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c70df032b271eb90d72bff07eca3f1d46b3d081443fd1ac3ef2ba955adfb2c7e282201640e48ec5d0d3ff523b2cb6522023100a82fcfa1ccea1a143f52b80bacddd057e0011ff7d2954430bc0678f6e8a75c08655ad83c7120a92677c295eb826ec45e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073e8427b28fe121b317982c1653368360181871bf401d40a77acde03065f62f617d5f31f39b278d8c401b46a1a0ed28302303d397cfc686fa8f18d01da10f7bba144130d2836c587e936f96cd884cc61e3a47e6c33688acf7e9766ec576b3b0b87880302047c435bb500673065023100882b6fe4b5f56c1e861151a088ce41b76f2218379c84340cf75437c481ded00951d58465461e834f8dfea1ff02f116b302300bb4d04ae7bb0b0ab79fdaecebbdaad0b96ffddbe115cd057b6c38f8a83c7cc8df7c0eabe33113f2de80b310f8a3f8810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a6185e4861ca45b59f9dfe978f7a9d58bcf3832eaa97b9a45508f9d203deb9cded77478b1ba6b08d3fdb1c8a732004b2023100b3d30724943c00de73646be827db08050ef51617f2ddf6a521c5b428503c355dcc21db71bcefb3bb7ac0a3962aaf4db20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e4281e45ae82c10666ddf0faec75d83c138cdd0d334ca30c0733f742ef8db07104e089bda07264c9daf45a6bbd5e25b02310082bb3334efd399b3e4e7fbaf020e04886dc82d380b0465b9ee3874e51de714d7e9171e7cb0a578f0e3d19aceab173f050302047c435bb500673065023100ba5222d0ee657c29199b9a4a9eeed31f8566d160c71defcf54d4c9ceb0f4c9343ec7acf784a0eda0e130d8ad4a290b1f023075242c5a965a7ef3181b1a1775011d4b8816186718601abe9cb88f4cfd1f58ceb76a25cb83fc8e17d1f4d0c79382525c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230130b05b5f326f04600c6678b77d8e5414a08c5e08c1966dc19be36ac560e58443998e58b134eebdc11867fe5fd33908802307bc1be38ed94e8e9c21565d7f393a5093a25a7015609aacbfd0e21b7dbc26d022052f6ac9bfb6191b18b7cb7f4d126740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230761456ac017a3509a2400c8fa6197317fcddd8a3295fc72650cddb64265517635e03bf0399f0695fcb9fdffc949e82b9023022ae22ec8fbddcec319e396f7c2964b7ddbe1e3b7da67cf838045eca4c699cdd7c172904291c5c47e27ad1d8601da09b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230058ed9eb42b1de02d0184be3b97534cc4ac3aaec391766d25304e5d99343a604395c56d02e6791a548b3acc92400b7b802303da33809b6eeb709c71ef167e980965589428bc9122672aa8846a08b5853004a1591c8bbd3cce0b9a91747c839c524390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ffd153e626ee4f61fcd036bbcd5749631852c50f01fa875520138429d2f8b611e94e604c80a225fc8a0e541e4c7784d023057d6e88811e213542eafafc22ce5d4a041715b5371cf328ed0f3dedc167bb643f1a5e61b7cee13c17b1417db72a3f9a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e20f53aab12879462a16ffe718ace0605c30251669434e99cd9b5851b0face34aa066ad011573122ef401580324e876f023100f7e77f0247c3e907f97d80b4c25184d39c5b6c825a43eb2266109ce4191022c90e4fe7e5d95ff6952e28e5efdbf390080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307aad740014244d006badc6b1a4fb2f3a97eea0c4703e0bc2368f51abd69be30859f35d3ccb1da7c3563b2ce6624e8d3202302940f71311f4a7df98e73273996d9d5c2e8e19f7d85cd1093ab47de4e26595f115293a75101ed2d8ac13eceddd2ef6830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301815b8ee46cca90fdc6bb53eefb42c9c5f7bfe7221bb2c23ddb2a3f1d07aec532ef14a1191926ccd59d6fad9b1333112023056c7179d6951566c9e0a41a7642585c1e04be04c4f5398f177dfc1e17b8fa672673f4afc3745a09426de29b84fbffe1d0302047c435bb5006730650230084206c354d2c7ffc7865fddebe644e5ebdf8988cc7b63d9754e7574d52d87839a0336ed06e5fafcde7f9942bd983bc6023100a63057e91455203aae314c1114bc48fa7a3f2cdc5cf64cfbf696325b07da9f826f3d8ef49868d7dc50ff0ff3d0a5d9660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7189869b8df8608899e70df19e342c01cd52056d30ba4cac7d6d60f6005b1f3b4777d4879ccc6f2b1f61849f3575fbb02302a509538a51fbe53e2171d0d64cf6a6e33b11743f61b73164d328b9611543b441ff4fb340ac974d1f8d55f3971d96bc80302047c435bb500673065023100f364df1d0070e401156a0f1c043cc458cc5693baaee4f83bdff49ae2e73af21b6566761ef9d97853e7795a89d8f9568302300be911d80a8929dc8998aad934baee10dced605dab93d845dac2dc05b1eb45233748bc17d4be35b85c4cbd2ee6ea521f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100968aacfa670b0eb65f991d0d4c73179f9b1b29a7bb8839c1569a7ba8b11d74db811143c2dc93b0186526d869e2ffbd49023049ce0f5a905e2b67cf3b9336da4c5321438555c6e76ece7efe3d7892e16660e85e0b7b912e828ef7cb301c47117faaaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080c19a1a0b72a40c046760d6449448e0c91bd6df0d1292911f5bb511f208ae78e1cfa367a35e77980a45680ed65197b0023100f3eb667ed3592004cb927b248d098c890009a58880d92f5df74531aa6425b9cd486b0ede0ccb06aa4a6d726cd2fdc4900302047c435bb500663064023070ace7f9cba7ac7679e3c3600204f2d7158c8b8f021b3d988b273c3133637f2dbfecce1084bc5db4d78fc6fb95d64a4e02305e371c28e868890f793ab6d3197ce68ddd788373b03e5bb7a965e6744887191ab03e63daf3a20bd3326fd4b0b4ea239b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb54655c66fb22bbae529d86e950f860b13ba595da9843495925866aca5903e8d6308367d90eda49f6fbcdb37c3cbc6a0230421f2853c6f02411c02466cdd4ff55c9e1eb3caf479472811c44c6e837c45436a6c141954f0387042d7c9edc5af8b8490302047c435bb500683066023100c461d47528c6809518575f5ac0ee858452f8d9ce4cf91cf74f3d2464438f7e6df1f228fbcfb671e4c5ee40c38ee9689a023100a90622f01a4c2750039507d3d84586d36f06094e0d0b4ffdb9921798c9805a6697aa646b416661465f45aa040b90a9a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304d93281054c68546edf34777a9e7cda179487b939a5d97251b618b44936c1363a1cf2cc5a290fa98ddfb577ac24edc800230665fb7ee9869e6555f17b39bb829949b1bf08efee26c21c97667d020d133b8409ab01fa65c51edf4c3a1c24fccbbdceb0302047c435bb50066306402301dad5e4f98f55277434000f052271239007b5e6c72644ee46ff69c971f0154f485dc055fdb1ec03e782b879a9e17cf460230593e7477c16db60c57b738ac444bb5ba037508b28b3b2408d744e653a46b6899ad613d2631d9a9f8b2c4f56e6bce2f560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093c5f983c8712e9a0c1eba896312a1e5f143940057cd8f4d9d96bf30feacb49e7cfeb719d8e9862e6c65fbff8665bec2023055452782a12e06a74c2f031429b8615f8ef23a790ae4403bef99ac10205153704d57d899fb7a3f4232182648d8645ba00302047c435bb500673065023100e97b2c9eb9754629001b4bbb41e70ba1329d98121324131b7de8137f7ad74429bef06667c4134c3a1d69176630d58fbc0230096b7faeb75fc778fba4dd934f8fc1ab5411e255ec9035bd7db2e1e3fc1bfc702e1b45eeb0bc5a015d20a7262effecc70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038696f5f1e18ca2a6dbcbe9a377b96a68d0d6b41662fbe795ee498c77b27ba362c67600fc581065e498ab0cc8253ceec023100b21350981a0ee03a04c8eebc2325222039643178f8dce6a11285b4aa030c71b6d0f6d83a73ad6a0848b312231e9a19ac0302047c435bb5006630640230330300449fe6b161139aad5489ba82183b77ed7501e70f5d79a435a291a182931f4e3ca6d0cd7ae5bd88bc9564212cda02301dc0a72812e8901b7bc8c536a2e5e815ee31bb439f118a4fff008c9566778dae297b19bb16c023a6d3fffff660015c040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b981457b868781f41054aa5e90e924cbd08a2d7742fd817db18ee53e2911f0bb1839ea0345907d80300abfec16471bd023100adeb7543c3527132c21c4264404bf9c7429be012c9107a0818b389febf8bbe8ddd83a0d4a5cf26a0de5e9fccc13e9b010302047c435bb50067306502303f4babaababd9d14037d9553b8f1241c54f4488210ff819d6f298fb4a61a0c3e8078ecae442f4ea931e2da795bfb0503023100ddde1957fb3ebb62bbbf7dd81d06a79ec338ceb69066c94c648ce6fa156716cddf7f9961d9b7727e8bc61c693a44c7170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa7ead7281006b5e66396e2b0c17f99b94a4a811266f4dd55bec20983efd4d51d96a38d1f0226f39196bc76e6fd3c404023021b1a4ec63c9ef091bbdc0a1259ecbed6806c85656fc4afd664f949892698dd0c02dffd0434c32c5afc57e2fd56f731a0302047c435bb50067306502301333f17c82458ff06b0c3cf6dbceadc6b18e4c419c000a4d0dfab389cbb308562cc1d0c1b94f07a8623f8d4b773d45c90231008e0569a74044a023e1e0294e217f7d26f95b280f355514715f385826e31ed2d002a0f7e5177ed58f33c09a6318037c400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ceed9860bdd2cf63a77580efc0bda51ac93040a986bd00f0d7bbb3a08dfccb61462a7f2fabb44a83aa0a5f7d5b4f925b0230313ccc8b564d6c6b0161d8a72b66625618f171dacbdbc3a1503326cda65143f7e467a09e2d9ff502ed4fe0240d0bb1780302047c435bb50068306602310096fc00641bf0e7d662c02e3e5b2bde90d7f9ca1913cb21b379a3a2a1dbb4424287b8ec963982caadcc79a5315d158329023100820dda251e6768f0f4c40d596be05bef832d49861470e380f7e43bce8cd31769b10e934c9908fde0ca8afef7352110a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b3e870f62b641b87ef9e609bbb7acd2843be78fa9ed9e0008ea1b93c1a6e392ce0217dc4b8b785dd8b6fefa9cef7d01d02307446183acb4886f90ee90822215ccd9afdaa7384d1d2b08da702f75497f18f79e7b057934baaeb02795638f988b26b480302047c435bb5006730650231008a1ebfe87140f1e041a774ae01a0a2a2ff2b36829b5bfa8b80c6a4aa4091f7aa3c9b0fadd7f2e9c4802dcf42e9ced5cd023022db0de779bc28b368f2b95bb5587bc8209d8d810ea1060af7728c520d098d1032c5ece44812a4242e956c0768ef4cb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307c087d3c1b0f1c7e7bae7c53909d7c32b7ba23d1dbf111b2e133dd58d8fec8f8656a1334b138a423dec9f8f932df401b023041ed831e73f85484b23a71a712ac8020ac6cfc2448901b1502827f37d99b71ed4872028c230096317f8e927dc0a12d600302047c435bb50066306402302f49c6940a0fd2190609d3a6f217c55f4831211279fa5456ea8caad3576c540ff19fcfac95e82be6793cd1e1e7ce8acf023007533eed6e4c82a5524683ee53d0829a57d644e02adcd4d06e228b758855150a58d30879e6031d72d1a591ac078f893e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7ef99d89668629a9d586b7b4c2feb15d9ca17e382411387e94f2595920e1e4dbbc835c3f54574d7d3442d28632c985b023100b70a8f517c1f1767a8fe633385991abd4ab3ec1afbeab00fffdd85cc1d0c491b5b9d71cc2de7e5015dead84af2d23a730302047c435bb50066306402305ac9d7fbc17b988a4fedaa26d4da244a6f5466c900bad5ce0ec0b99c94bf241d5195e9bfe6523eb92f0b39e09b362f1c02307f7d7e63d83fb6d8d875b751bd1997b3106d94f798158d3aa5caed53b59e0268bf41c0668bf1d8bedfeecdef7eeb77580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d8eb5379209befc2a1d90c3a81ad8defa66f331c05a4a89c639875bfd70ecddf12c568ad3904e39d5094829577cef5910230266b342d3d23936c9985e287b6d91d57703a174bf0fab41e705feb45272bfa3dad309eb9cb546335f15ce15cb500fcd90302047c435bb500663064023021318706a50ed4283366f017ab95ea6c4eda9f5e4b07d6d5b48bad3226693f2840c71872d222c44989ecb3685dec6e5f023023f5c9924c0a2b6b08fd9d1fd34988c184ee206d4aa85f19319cc3dc69b5379da20005baaeea8f80364ec40074d75bcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100978fbf4396918bf2ca16f0011421dab5fe14b4b4b9c50336165cf43009a01fdbc5e9373125c758a46f1c5d9bc8215d030231008909e482b9fb45fd6ad9ffbad85f8369eb081bf9d53dd069dec5f895805e68e175eb65e6c5be23e9ff4e4071e95312a70302047c435bb500673065023024cc407b0422ee2d7a167f85c3cf6286f48063c5e310d717dbbff26806832bd4e327fdeed1e2df0ff5d5149ecddba2330231009f97f4eba1b31b5d70d0fc976fe089493998a455cf8daba543957912a6fca6f5221cadbf826ec1936f8d4db196c263080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e98b50a0d32cb8be2479a39c7effaaa6bfc02f7385004b359dccdf77f89189799e44f1425f70c7033391ef42463a8cb023100a2279621dfda00b90096dad8c58357b5c5cd21dfee60719762058087b1b1940195ce8b1a426523cb31aee36727f66a120302047c435bb5006730650231009feeb62b32d9de1503585dd85e9a19c1fdfc980e1117f2f50a12179cea4e9166c7275f6b59746db59dfcb56edcef040802301475d5b4005e44d2a791ba31ca8026614992f382cb0b78ec7823cdd7659b7c0dff9574355bdb34100cd0b5bd8ba955ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a1183380b710fb90ccb03efb6a6195af0a3891c4d9437b70a361e0b5d49a9b5bb0849d874139ddc63d7a058a859ceed0231009280daacdd5b444a8bb587eca457e42c074de2dbab89076fd0eb4c24e68051d68549c4908229d0d80c45894d409d04ea0302047c435bb50067306502301e9181b7d8b9e8826807e06e50652878b03872d7aa8fac70a20cffb6321eafa653ff644d0e9354580eeb799a3618ce42023100b811b7401f69244ccfe386b48a94a1de4fce88f47756883161d4cf443fe40af0ee702aa63879ba3425657f1d8b17999f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a6ce0f0a48b5ca7a1180cdff8da683a6e1377fc7ebecb59b6d566ef8e2de160b037e605bf8cdf49beb6efd8d24fc93e02304b2ad41a28ce41285e3986a0a6fa69cde6479236d4d2ba287b704161387be3d4d23a13715f659f6f3a0e10f6dc29f3740302047c435bb5006830660231008411e7b5bcc8f7b079c48b9d17625a971be360df89695b70f4860b34e584b598d306e83b0a22906546ee633b46ddaea30231009e32a104c669fd4ab320e263feb501af0bd1710b5b340953de136f584b9276c05084edf2122e3525b0a3e744a4a03d790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302026dca07b560060d0a13bc1342712509c47d07436db80edecf213623be6ed94819889a16cce4445e9f475e5bd028c93023100c78d51d7b309ed089d8cb762afeb749fccdb966267c3e80df60cf04d5eb3baa00e9c21672fa406b5c8d7d66a933034eb0302047c435bb5006830660231009557808989ff48d03e6e06ac23452154b3a96c2e5e486fb8055b6aca12e7343b3f100a7edce5835844dd032244d2a7fd023100a10bbeace088712bcacdc07608facfc401a938cc63b2c27ef602d2c79ebe5821d929994db84a7fed891767c3d717a93d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c8f5f06196bf299e579cb9b99de03592c5b5174787ef4a385935072811cffb793022125c9fe46c68ea3fc3c7b7356aa7023047a524c52a841b172e84da80bdc1f02953c971dc671b3c145a86cb627bcc7e117ddcc880c1d04164668270adcf9693e50302047c435bb50066306402301e71b777af9d9e0205c7a038ca26ff8ab7fafd728c1a7d87ed3d398dfd616fbea1ec200076b331b85ba0ed9cb694704e0230518fc0b53b5560b351cc60cc0a026291007223f06a47a3bc7d769e8ef700c7928cc6adae1003f3c4122e0db48213c0630302047c435bb500673065023100c52a121cf1cac5f77c8bbe605929700d85d9e5223976183b293b0b4ab723b026ebd50d6b87c28c19ce9135296708096f02302e44c10bd3e5dd5c9acdcf00c622d96cdc7f7dff1549f1fcc21615e71dbe4910cf47eb5b0488c038bd97ac6bf5c8966c0302047c435bb500663064023057da013e90a7baf0b0c2c532f7490e86134b43817fe0956f6eba9a6e1f77bc0e1b4c304eba14d9e5b6c99ead7343b2e2023007a508b22cc4e155246833bd58d7eedcd4889583ada001a856fc6acfd80cbc48f35a1c2e788bdba8b3f376c73a501fae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100955c7fb423ec3941c7a2096f8c412de10bc0006e6b7bba4a9d08b0782f711dee3f56852c059d78b2f619664c02a7cb4d0230481d266dab9f9de3b0037a1bac6639102de1064adea075f19d9f336d2cbf3abb99f658bdde8761ec0289b3c664a6a0d10302047c435bb50067306502310098b9ba77262e1521f99bbf7d718ea678ddd7d9f966636f10fd40da792a87ede9e7529689133916edd4b615d73c80fb4c0230718fe6074814ffebbc15924f031e4ae37573ff2d5daeec0ee177b148663d1e4660e660da99e7c226d45210b51594f2e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008db469996f1b32ce8a9a126d4b1c0c420787dd9c025ea510f79f8eb48676b5cb08cd656f10a091b22761b8b98b0a26320231009049034a04dc8df5c947f176c7096a74072fe1b9e6f72f3d5be6a90c4c351e6b02713884be8f2b63942bc3440ef896250302047c435bb500673065023100a2e10ebf09b93cc706e06839ad4f2d51502571972f465d017e631478162718320078b3a0a36cb608a8e69019853db67a02301bef6a71cbe45775d862dafb33f8b2073d9198c9d49da4e88c900a363116a195b87cf750b485713cb7bc038037d6a3b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230056850912e15da50b7becb29bb144ca36de27b9da1b67b5842dae9a69303381ca4fb9a370508f3ffd7e79e6e3ac67d8c023100c73648e4df675d765fa3fdd395ea07982f16a811d28300232e63ff45faefd698d4c7ca454e6e51708621f81e2f52c1a60302047c435bb500673065023100863b524e1d16ec2cf7684aea14f558f988591916d5bc93baa08e74dde5995397725d6a1b7129a0e64de28e1873ce88bc02305dbf53c773bd1660c30c0f844510553664b23c284e86dd9bf622edf4dfc7264a4d505c4e76143563fba49ded3790deed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1b1fc14ed2239aa8f5eb6a281e7c6e6507212e4bc1c6b5b85f7eeb8877a8c92ebe43a2161dd9187d8e60a74916ce66302305186932cff2ef0266f51cd27c25a2b84e0fc68ff88d495262474480da30b8e24aaaa02ae497a2fabb286dd39b9eccd610302047c435bb500673065023100e00c175f75e40979ffbf942b62709a569fdbc0bce75875a1dc39ffb7755d5606be46362fe7632e9588cd910ccc504c8c023045576c18fe360e770af30d115ae0a29854b839a2d223b0ecb87af4c23ec50ee3df290cd319a984c22d9796811c4eb3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dfda3edbd2cf886e79404526fbc56e5eb1f32bdd5e0bb151e80dc050aacb1019ce53f3ee95edc3966e3188b0aeaba413023100f3bb802be38f66dd29849a9aeb16e7cce2ec7c262b1a1eef8dbe6ce500c959e3044b96a5ecd036b20d203c7338c74bae0302047c435bb500673065023100a05aea5a46235430ec85e34f0b3e0dee2cb0fda4f29c2c000ea03b102c9e47269a37481dab9d756d2df98978a54b71c502301ead4d3accda7d8edfb20dfa1b495456ce2a64f05b9c258609c5a625481e3899b28b9a7eedc53bee65969fd3a123ce0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a1fb303b358733d17e22f151d0608f2185ee809fe15b11c0bba8f24199df3a7246cae5a12a55f15888c00ef056f867b023100db553317e4ebd27d7a9756aeee125b962f6f1c70659a22062972d082f36c2fd96c028849f0456d50b2480adc6ed2bcb70302047c435bb500673065023100ca159927ecc4d518b0e78a8d067613c2ec85956dc29be43c8732323d3d4d21fd6538fa3451893bb8021985f83abc282202301a05e12c4a23f78e930f058ed993bb618c2de81bb5b24eedefc56cf601dc83654cb2e9f4d6243f66c3639120042f27130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a979bd1787cbb7f08698899f81b54e8b6e06e621ef97c3cf5244936484ef7484b28700b93315a789db2876598203ea6023100c41ebeddb178f7be98250852f4ee9db8185be25c76460d241c6279ef513f89df4140dff2851bc6abb73e7fef1416b4790302047c435bb5006830660231009328111b7c99a71bbad0ec2645362ebf842007829f51bcbca6aea1937e013f62e8ccc0009f597537b8cec38caedbe283023100fbc7e9e73339b459f2df873ea26a442edf2c0c996fe3c2dc634b1bad9d93aad0db1c23e4145b6aa9302b803d73f836240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008516f4d592aa279ca5a940116a6d9f75f93580ec8808f8ab9f521f17b456d0dfeb6ce68891715b6b54c22f37d44bb311023003a9ed6a4d36daceadef3e1af4fd0427b48c0df8b3a7f5929be71efa2df36776f44ad76a62ae1381394d2b8f6ab4effd0302047c435bb500683066023100fafd43cb6287e4f0766cd13e405ec9f0c5583a6f7135460e24b38ef477ce2f6bb622523a35dc678fc137e9864bb235ba023100a48cd629c396d0f98cc380895680482b639e5311c64431a23336b760410712d2802909147c214d448e3128c5e1865ed70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cc900e5798f086d2f19e49634cb3abd7df4113b5b444bd329666841de4d88ecf2cc62511f98559a6b033fd39d0c71e023100b709126cbbdefac4de15d316543952b7cf98333a954279665d2d8f9e43bffa8be0624d75fc69e48f30215a1ae66c97370302047c435bb500683066023100b7c2c73e659ab02f1e6fe7b820791e431e41ab1ce10e50cc1a7d388b5a72359e3cdaf236e9cf227909af92f802bf9241023100ca66fceaea59296098940ae4f76dac2c4f56acb7a2a6b322b241084a0cdee8f528e2299eb7dd05b67f2e8296f100593a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba100b3556f24eb41cde8b99848354831eb15e48156c2e0303299cdc62fc356361c23d212578e6a9f9bf45f26bd8c75702300219e34fd99acf80b4af7e15d9bb5fc16310181fa1b6f1a8d3f33d4e3ca40e40e027560a33ec0bd9836c2854c2c5c1fe0302047c435bb500673065023100853f014af0e8284f4f720d507b5e2055c52403814e152c83687d7d4caa03a1cd7126a3a01e1b0969831f641b9092b7ce0230113c50b511c73120ee9bef1d02a1e5211386c5b0bc5608512dc762756804ac392f9b55515f24a6c948c597a8c31284b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230774185df1045369ec5bb4229a465743474fc671e932733cd1d84e1fb4b2957c63c07de8140b34e3df303156eb71cf11002300cb1b736f652a7e3c6c6ae3876e4f2c15793ea9c391fb6c3535e3de13068a98cc1b7eb42abd80ddd32e507470ffd33360302047c435bb500683066023100d69e048b49fb360e1cb42a5929580327050af046dcf09fa0f0cc5cf4ed0c3320032aae62d54ac98b1366acaedd41857f023100b34d13dd1db5f138ba9bd9d1a1524e16b3f7d6df127be61f41a5b7e6dbb95c302047bb939bbb19f3453e194e9b9d6b280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230200a89c2518f59021d131828e275b17603db95ec5cf33af26555ff53e56a0bb2c9cb91a682cf96850805eed3764a48a5023100f2dcd56427ffca7c722acfa325f1c2a3b3cb773a57dae3a8ef8a145060930c400a620c36d1c6686e4981664e312ffc090302047c435bb500683066023100ec77605339aa067cf83e6fec5bc797def4a10fc42e08ae995fe10aed402d95f4dd33262d6d1d7047e315d36c61e89dc50231009a1bb0a1b57facc62e73696ba77f669fd023d84b5583a62659401dbcf0c1f3333c818101d9f1091211fc340e18ab30210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307007905961126fea5901b768d2c48d2e2d327041d9763bad7eb8fee40eec50d9f400dc642770177065006b96496f1edf02306a0f9098e47c40eff709749c6ff7be85eb3c205bee44b6aecb977d3a22fcde13408bf2f192e3b5c574bc559a7050e7fa0302047c435bb500673065023053df23691dc716cb4995cc2be8b3dadfe6513231f1eb046bc7d3aff781f6d7bd41deaaf4a657d30da1314940b64fd6e002310094c6b78a6b2c052dd5ca12d5b704231cc746d20d44cd4fbd85b5505a060e7be0475ebd147b2a22624bb6f63acdd134fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302aa8c5400fc6bea2060aefbc303704f839de49425bcd7bafb75df63a64495ee6909056c1c5c6365334311fd8a471883102304c80364ae7c7d36aa5ced80e11de5a4ef6466c5717341775d48bb79304c7b1354210fa4a2ec7899bee6461879362534e0302047c435bb500683066023100e99321f9adc6f3a76d6b874db39bf133e252bc6891961f234dd4c29f0e00dd5c5b949b455e24731970f6d21f6a78f7fc023100cfba52e554a2fa7e2a44658bb13c0b1e3c9d856cf1c46786c41b0f1626c18b4f75dcd064272b8c744d6adf009048d50a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c8a7cf00f58552f1193f7e83109a4c2d42c4b234c9d2a5b5e4028a73bb7ca5032f16c003183711a76e25370438037b7c0230233201b706946e5e28198d010ed59147248f8f4d4b678757dcf7dc91ff2089017085ddb560ee8c6aeb04e5417c94c4080302047c435bb500673065023010122968a044e27c589d2d6a6d5e13cabd19a410c8352ff6d47223e1eb29e966fa73b924d507004082ec9bebf9000ef6023100d3e81549aa3e0d7227ba903e7214f5f71cd3b0e1d97d2a4d9b7be5e81b7bc8eb7eeb3445907ae7a04b93cd7d5dbce56d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301faba3d3186e0cb36f70b9608210a4846395ffc19e45eda0aa25e6dd2c241951abadb7acd86332a4c87c3727a52b8828023066d5f4591ab3bacd5f3c7c74130f2b9862156e1fa3dd426533d7f579709a7e19bfe3c960b2b3d3bd7b1d4a7b0f53e4130302047c435bb500683066023100e38f2a31d57699a1daf1f4fb92a78f81b8963475cf78ec6a235bec6cd7b2e25054ce28075339e4ddb37813a3a0bb0442023100bc38ad775dd431c1c000f72873782f8bfa040ed748037bdef2c1043306f617845598d720396cb13cb78b580429644f810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6d64eec9abb287c094fd8e79767f81b4ebfc0f632482b68f0f5a42d47aed5f477a31ecac5e47b1a9c35adcd080871110230463486fc8e17e08a05996d01839583b9afa5a1e29a58af1c359593ac0ea33d565b985e3f85d325ea577f06aca83dd2e20302047c435bb500683066023100a699915cb60bce763b6f2bb83787b5542816b86f4a412b811edb1db416c9c1ed8b5b948a768bcfc59f5338d075902ac5023100e6b57206cfeac88e15d4860c20ef5be9da32b21cc9abf69347d2be4419eb946c3e86e9d971e7839198eda1d1e12bd0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ec31fcec17d42f238c8631c9d2f54852122eefe24368988fc9f21c71a4889184d5f5656dc7696a0774db649cee3780402306402d44d1d9874967bf4a9e80c78ddabcb1cee0081f880118f4cbb4151e767aecc1c31b1acd3198174d62ef6431ce0410302047c435bb500673065023100a97bf9118d7c42554b73af34a414470720bd7b726cb403f2ed0c99feb5fc7a46e80b3c2a63fe80523965a682d0e9f18802302ba42c07bd3f5a32627f27c8bb7c43578aeecb1ddbbd2c092fd33b9ac4935a0cd509e13c13b0f57be9befcc2be260ccb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230273b3084e9d7cf4fce759b4a3cb46601bc3e22af33215f74ff4c29566ceec799c25c875d4fa52dcc2a1d95a21c528aea023039032b3a3af3b84412af3c0b47dc1ae512238d2c1cde76b86f984906837430c38e7c7db876ccebb685c25c01c62804570302047c435bb500673065023100cbdaa8a645f895e1163fa6adc885073530a5f89a2336446a5253fd6b2332e9421becc89afb702371786d1f2d00b4ceba02307e56d036accee473787724f97251a7da0168fb2495bc25351cfaf1c9dd8938fcd0940804fcc012c035bab5d3c5e7eb110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031444ffed1c583ff99e54f8e697b2c28c103c80001466345b5cb92f9160de0bdeffc5bba0a2fa7a824efc1e507fe38b702310093478049a33ace158b4de642c7ac2599558d85d1835a82acff51b42b932ecae3a1fa3738ce9a1bbefc80ba488390fae70302047c435bb500673065023034699114d131bb07c0289e04ff1bcf2b7047642b4fc65fcfc8959c75bf68786ca23c51d96d34f1fe5e836932e4d03c8f023100db0567e5e7f1249f1bbee0f0ad97fb28fde99db20ff4a9a1d002725e6bab94199b7c89d3d945e1489cb0508b08dbbfe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310081141499f1f76dbaccbf3159df37a0ebd747f32b020ec0607d002efe985b408328277ac2be7ea603ad1f62729320faa902303619ed770d65610170ce1b8d6b88e38d6bc76738e55551d395c5fa6bf8ba8879c2431d19b20708b7d798a6f95aae45170302047c435bb500683066023100edb254e1b2dd182a7e00be949f139c3e380f27ac0cb447b89078144c07021c72d6af9e8eeb66a53af912d893e0d0dce2023100875c171bc250227391f4af4dd543313aa738d2da24b1a9bcdd91e352c1ecfe7821d84e18faa935ffda483af5f35511c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087f5969dccf4790aeb257aefafb6a9d850b19fafd634dda34d2a1500fd7de972449285d8d2ed1b1c639221ebb532d290023100bacdb64ca5e26cddfc417c863b6119cf85c81a6ee974c0ca58c658c03d95f0b8f4c6f30dd645dc58086d0d984a7157b30302047c435bb500673065023100a6ef90cf49994787a6f8d2adc998bc799fa77949867735a8acc738a9e336f19024f30cd6f628f0ff30633e7da0a94b84023020835c6dbbd04779c7d329ec0a029abe34ffcd38609f62dc963d321230b8ac5371861be711b3b9786eb1d73bdbdceb9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de3c42e0e400ec9c27e9794d70f6709669d4b8a02034313ba286bf2603799777f52ef9904d3ad5e65c051a48314e927c02303eb512f2f698afcb8783e93c5d9900138aa9cd0c19a660be0fbc7dc6cdcd653abc4b2fc236475bd3479e8ece64731ded0302047c435bb500683066023100fe09c2ddf85a69e64f64e8bd2dd1f45d223d0260e6f639a7f478bc3f9c7fea50e8d1f81008bc586aa4841204dc20fac9023100ebfe1cb99edf9508a166a4265be0360a2a0e622e9b31511fb24ea5de9a1565ec462441b33cb48aea99d79e28ee1174c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026ed866d58620ef62f1688a64b8bfd053efe9833c55e0af43b73a9bc01489262b8605c4871023693ec2851fb2c0418b0023067401592cd77f855c33f6edf279ddce9570df19b31fcb76153d4986993408710c1494fb6d9398014eef89909dd38da910302047c435bb50066306402305cac913723be33f6604d178f2981af0257059ef72b0d179492c2e6da347b98c76e91f1cdc90496f03ab887ce336c59480230258903c03606412596dd8cf7564895a020f566e89f959ee70f9a53b44ac9a9bfa55075422686aa84a2da1397e79de6480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230595348c48ba5cf0a330f92102e6e95ffb94f17f18f0f160fae75db77f61aaa404a30549f65d2ff9431b209aacb6fdc3402301d1a579e367f7d87f1c5a2147dd12d152c28260f4327a90396493528a0a654a73c72c7ffe4a2a6013a588c06b123877b0302047c435bb50067306502305288841528ea6d703bd772a0b978d22aaf5cc53bdaf5bd0babdf735bed0515d9f422f968ae7e1b69df83886b41ce46d2023100c971a9776ec763f5440bf2c0d997ee39066c1b5aca8e5e23e783896c1474d245f9887129ab74d16b5e6f4a8a31c1c4870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f9886b777cbdd979d79afcff2ef365acde8d78879057368fae73ac448f4db902abea8529f830d6d3ceec7ebb7855d06023100b2648dcf3dd6aed56674321321d1909c60058dd4aa191a0c193f92ec115d3160ce3d0e1dd0ab8ea7f10222648c50b5110302047c435bb500683066023100ac48e1edd2822c6a018e6a082ba7cc127602062552621b63251fbdfb68e3d544bf53f1bce3afe5c80617575421d09004023100fcb9625ecf7fb36477fa8a59803366609860eddc638e96b26ba2035330718671f2f63c34693f29f860c23ce00eda61f60302047c435bb500683066023100f7ea20436cf8565a9c5d7cc76b142e14874411acbe1162f0f1d064493fc9d73f088e220fc33bb31555a14957669b6869023100ccc7d9aec5c54bb81143dcdb76251a6550e94f20b703506b7ebeba72d107bb5c3f8cb187bfea9b885785d8e4be694be90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306138e2cab23c579ab0e39aa33a5d42d283619c5f657ecc022f50dc784c29da7668c5726019dfd5715ea3f2f80bec822e023100a1860a69e56dfaeb0b89a71c9cee76f1931365e2c3f5cd5bf7e958893a86221f013eeac882b8ac3ef2af77f31a1548c70302047c435bb500673065023100dc1b1c04fdbe84ae35d4895846022f94899f59b3818ea4835e5025ff16c7c65b28609d6e2e4e93e50a04e22d863199f1023033f5770e1db122bcd944387f072836662ad63f624af9af92948f7549fe3aee5087449aa1c913537ebf349633df8ef3d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff227d0ad27f5ab8964e91ff331cb48f5ed57833e402c1429d1988c3c88fb7ad3af479c4fc7b3020a071c303ae1fe49902305fac5acf8c27f362e6989af8e690cca627c6638df13f7eec5fc6ee04915fc993d1a2a03fd4fb60b54ac3b5d41edd670e0302047c435bb500663064023015c21d7dcb4c36c862677a60f843557ab524a3caf18e54d1283e9c7348717e728716f2882ee63e8a2604831f1c7b029002307574bc1548f649723451c93fd2f21b84dac029a9474596fbc8e954c84e3ad96aae6187bd24dca9de54978afa2b15c6cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcd909776017748e7d96d918026783fa2c1c4d007ddb48593526629158b8de366d4a870a3163e41e6e23b1d2748f41d0023100eb6a94d30d9afbefcc16a2a067d5e6ce865e55a9e7ec93156bec03de21914b4120b36fd49c3d3c0bd33509efcbd8d3de0302047c435bb500673065023100bb705f29550c62a746ba57f61995e0ea277f903ba381a02b704faa9273b118cb33eb49ef86deaf9cf2e12fc27b059da002305f96aead92e8eadfb6a9bd95887dccd5ad1cef68f472460d989c89d32a42295787b0c1e028b1551436712aadad1fcada0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb3471608769c83f88486f7b4f8acb95705bf37c165929d907decd49f3b47b90482f4af02f50dbd6a77fbced8064968e02300b43dba8f668a55941bedd5390e37adcbe63de30e9d455bc92b8ffc09c62c731fd2be566f36f4f7be049ef9fcbb19f8c0302047c435bb500683066023100b5056b837c0e13f952eea6d3558fe01a90d12238c0048ebf018aba03e90cb8650d484f6910f76fe1b26dd16e7881927302310097eeaa63dede7a0c40f63e0e732a10cfb5d880839b9fb9da6b5e3bcd5fc738ad39a324e16963caff5a8eaea1ceefcd730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100acd26b8b5ba373a8801b1ec4f056070d3d4f587574f2e3ebacf28ba1f35e9d50828c35ecc4afdd53cd870578669116ee023100d9cda74a09c6d16ab6812c1ae3d2e74cb1120e2f2bab3fa076ebd4f2d65ba66659789b94458b7641a4ddc63790573b740302047c435bb500683066023100bd5b8444b6235dd41c76abab2cc0a7ac093b35b334bff3fef97e1d475052752c9d8193940ef71970486436910965f4fc023100c3ce4fbeefcee734db1fa9cc044894574b9cb3e5391b5689628b6b824cf94d5349b0bb2b50455e16537752839bdb5d7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306eab50901f512d2da0602c93b7c129611e0c4e88c87d51e5e075212ddababa68b0c6203c48e48f883e1eab1f9fbaab56023100910e94a55fb0c7f455966263d6b27247105f5c83949214a7d61e442ea36db0886c1d6ab60c714cec4043dfac90ebfded0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307de70954ada1b90a81863b5bad67297f305364fc5c5235365c09adc0173805eb9a718f1021cd1f470655c436cebff24a023100b3e17c856f98697e34746bfb6029ed0d503ddc9871b33bae7b2bf84112803172d548d8db93c16aaa905e8d74e44cbe650302047c435bb50067306502304206ca3a41d71cc453955f20868e8ffedfbdee5c8b03d8a1b0fc9c7d3007297c1e0f0ae28f8e5b5a7296b67c7b2a90c0023100ad588aa93b8ef7e5a0d2da6a4051ac7feb5866ce25282e7ce99c81eb1a82ca1b879ac58576c28fae08a146d831f0f7470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed17f166c6dc2936c95f5ccd3b50ced8e5719174cf19115c51db15b7c69596ef8bb665cc823bb153d8a63d5628c8bd72023100b581f31dacecac7e6f42b10c27de4ae50654f02d52f70a15a88b5b1502c081616ba37a3971d09c77f677f46250adf8f10302047c435bb500683066023100ba312c2c7f944fec968a620e1e5acf6ac9aaefada3113a4e1d3849455f350dcb96e9da87bf473372116ffaaf19d5501d023100ea2729e3e5c9d9528af80df072a384f923fb921b0b130d8fa8e27f800258eedcf16f77ffd2ad044eff9ad0f5fd076f390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fdebcfbd2c4b83531d733e07b80e5b0c7d61e00a68e51c31fd323633c1b2d22978f6c50e627eac3d7eb106de363de0f023100f3b522eed82bd8ec96428336f333bfc2a54d3a39983a7ffbcc61c51a6a69deabb1a4e000b93e561a25acafe526218d680302047c435bb5006730650230751f166ef546ced2caf6ce1b947069419ecf7c6deb6c7d137caab029fc41745a41d0aa97a54ecc5d0b99eab051f02827023100aeed183e8ca4f84628177ff4f03b764c799bcf3bc847d61cb407e2d7e15e3b6b55f7d679aef28765c115c2e1ab99c8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034a5511c173d0000fa31cb8cf053467bdd8684fa81e4d4674336f5eac9dc9dd6fa9dbfe78434ad3b84a46b6e122b66f602302fd744b42722261d368bbf37da44b4aa0b85ae529287451b3074e8be0b2de5baee9079675cefe936721eadc3c0b529660302047c435bb50067306502305e35396c876d9588a777a41a96ce4f21726cb6faa9048f3e6641447de83eba54b49b8630ab8aa48f322fdc3315551fb8023100b619adbfe4da012ba811c19b2f4a2b708bc3aa71accc7ef2c12425c0758e585c1fdb9ab18a73867d2e580aa7f5f408960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a81ca206b9e5bf8c029626ae5662aa4fcd01101948f80b6e92c6e3d95e3369a6efa18515762bf5329109e8b44b0e931023100f7bd7d0da1b0fa84b71086edc8dd61768ee00f531679cbdc60240cee708be29e43197e4872264702a107611e66768e280302047c435bb50066306402301a238d59ef384302693fcd784c523ef342c1e7602a89be08e839221801ea1c4ebe1924f72f6b1de79f48102d01f518ba0230530b5d8ed2a90bf8f7d9687a27248fb2dd49276d92e8e77d281b37766dfbe21f4c404eb091ff6e9552bcdbf8270e65e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4d802809ecb5aa98951dce589dcd4698745e348a428ff6909c3f9c7fd5d56e011185c61c07afa2839855050929c2e1d023065eb9b74b191cef42bed3cd5133f4e6abc04bd47117f6cfb82c454b3cf8c5a0440c087bb6d181a9e9dea2883fe8abca90302047c435bb500683066023100bf108c38d3214655f6128b3b1fce974065958df10621be465ec2a24c3231e34029cbeb6bb2a13a37b9355481ef862deb023100a414846707038d71b395972f95df901f80d1a74731b6cd32cbd3358fd1b5af9efdefb7c1220a5c6e0e9120615dfe58820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c69ae0a70964662083ffb2ad31702301b99a9f58a00a020a607c5d7690c50801e7226032f9c648692388bd07ebb082d8023100db3644d9a975777839f72c0d272b8aac06ee25780d6fe9df531506a14684be7733d6c21edcf5a791e613866fdd51ba8a0302047c435bb500683066023100d407350a7e1012a88526d96a7f7d83075488fbaf44a7b162271eca5cb6a70897192768b5331a75a0df932b5eb0953810023100817942973c6c59865fe2fe953d500ad1bb4e099c9fd7b788bd102cf86c6e1d957f46a620bebc38cd68c4b8194436ffec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dde481354912d0ece6eb87b8d5a6f56485a9c5d1862ed1a4876390eb7dda73a832346ded5c1bab0dfebb27a2a0b674e30230226811db49853ad09bb79aa9cfa90a2d697535104e149f41f00bf51a4e434e4e700154a0b687ceebb32e7703f190a1ec0302047c435bb5006730650230222debc3550e6248704d741c43c9978acf080671c8f58bf1da233958d73b62c2ff0c3f9173e7778cb862c67f85dc3aae0231008738ab94e246b3b948f312d63ca1fe0402eb85385166aa12ca77c65eba8ad1b79b1c46a256f52e4efbfd5b25deb3580e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5d4d6cdd630784855f765bd00ac6cb74a6fe44ce5c99de20c978012524adeb1582a65e764c98707787d5212064fd6f3023020ec27f1c0420cb0be1454763685a38f70183e5fe0f068225887c417f3e43a353e485b6ce0d7f5dd7dc4ab69669669f60302047c435bb500663064023053388e3ffb1bb0bd54babb5fc6336f93071011111e599beed70043e6339e54dc3e30ff9574b0a45cc8fc5ade60af68c90230268601e8c8c2ec13ec6603b4df8fd83f849117cc4138b464aad5603a20ef981db20f5fe42be6d7f8d1fd070c22500cd10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004972a6370b1414ea07b9b1418ea2af79021db481fb52a9503ab453bb271a34fe0cf3159c212aea3ac378b0331b59adc02300714e0fae7e1bf5f97624e3a14906bb5fec7e98e6105612ff2ae8b6cd9a125f19f5e32fe054032d2da7a68793d5a64bf0302047c435bb50067306502301e088b4aa14f6db6fbced890fdd1708f40029ca56d0bc683c24226e71311314e8738f67f30fef98e34a9b85545b3413c0231009cd90576502fd339523d24f6a218b183af99bff9971af5dcea3277c5f028f3d4f8af141239184570d1dd8e02706900e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051a91d160f92b1c2da818dab67e9db6aef4c222059b048f952fbd56504aaa95840181c2e7a9494e42a6140995bf7e0d5023023a7f05b31ab54373f1f301afebb2e74092dc496b9f7b4e5ed7a489764e22b71f37912ca22af3c20f0872ee0af5015350302047c435bb5006630640230589277990d2743c3eaf98db4f49d21d81c0156b4a0aade24c79bba429c3ffcc201ffa33f332cba060fbe073b1add528d023055277c21d00780ef671507ad15069f08f6999b6d2f2d4bd832f104e5d36064e78a6b11a54329957933aaf0719337dd870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f918a973be78b838e1a79806a031971a9ba407641d9fa38065840a8cde556239d88b56d061a70ac5c2d0d55bf56d3b9023100d3fd5e38c0d3afeaee887470700f75c61d8e74ef208cc4c87319cf47faea51f548d407b6bce6538f329641b7109244ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bea67c944b1b889241650a11d546829139c071549ceb9b44fda7990fd289d30c32d79eaf6f056a57462313b539446990231009d179484f11b40fb323f74b45e423819ac79a931facd3d2a08727f50777aa53e8bb68500ca29151cab7202c33853f7370302047c435bb5006630640230121764f54056c11a2bcd6ac9b1f274345c0b12fbc24a2beca5ff5889e21d9bc9274b1f717f49f7f8a3bbbc44b23c3e800230133ed814316046d7c703b778c286356a813bc99fe15826daf9c11ffe0d30a3107e9001af60ae5c25ad92346afa251f930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099de2a251109d56275dbf89a1af99bf9b779fa74eaf8b70fadffb402790b3a60746e7450fda719d8fc0abaa80b36c19202300b67e677fd0a03ccd0f8f5ddb0e3ffb2a11af0a5813f3fa7fa873a49118590d926a5e0f6aebae559523523ff0360ead40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b80343f4ad22bd3f496a98d0c430e3e8bcaddf56fcb6ae0e975b140a916c4a12e45887f8280fc9e6e18493d7b1c5aa0b023100d53fc6323fd915019d4a1a679981bfc559acde18dfda7349b0f8f9be94900f5d68488ecab4db6f9dc9aba40f923cb1100302047c435bb50067306502302513a4a176fb1861763935141d2d0072359613d1b9982c88d7b759b3c6c252d8994c2b4386e8f98afff3f8547fec53030231008a347c9b89a6b7eb5600fcec9ef115495820d216de20250a280c58f6f0f6725436706a74d819ae0c3230c17fbad3f62c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdcffffaedec4bec3f1edecb1ace25953a2ea9973f6c1cb08657c8722dd8459c86b74446925e2be2ef52068822e7eee8023072e33624aa7b52f2f1360f33e259050252c4392e45fd3b8e8e2e5942d306c065401dda16c8bcf9715b7a18cb600101860302047c435bb500683066023100830a58197abaaaa9c88f7570bef8545a7e563be8d2955b6520f1515f96f62e4d635063043f5e818237a99612371d2ac6023100d512f9f93f8db033142fa363d7a27bb55999e0bb8cacdf062d504e0ac808a00e99ccf5aa0ca2619e87d51f7d74f9ceb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230575540e01ee14ce02095a969da1af18bfaa6b36e6905fe4e20a4e24ee1023ce667774abd00bbd606cce2428a285e4cc2023100cc936e175702232b57421597c71186055b8b769671d7875b129dbcc8adcfc8806a60ea9ec2f72820d822b9ffdae8a88c0302047c435bb500673065023057337fa9b587ecc2a3ee9df8813eb6e86021be49411c5f2632195601307a4885983a92e27397853233a5e63eaf7603e8023100f9c0179175ff4074bbc7b86a3856feea524fe47a74ae99e38f96c90d5ff36a640dec8a494bf71336a49fc6e31ce438d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023034e06d2b0dc307f5e517d97ccf925f84f807aac3e1925a6e5cd8c5cc959ee056f25e4c0113c9657335b9e1d321244ba4023100dcacafb24bb3ba51498e8bf9e2ca133f0b2fc750eeeecb3e0c730dc4b18a06a3af8c04d9ed87c0478e756a74f8fd13ea0302047c435bb5006730650230788bec09cf609561187cec56f09d9a81bff3b9b6b20055f2b97353ce3b6cda05e44442254f4ebb0dc552262b29f10ea9023100ac9aa103f6d2efb85060be9459e2765a6df15bdc309876c7c66ac9c5f70080c9102df2ce3a3f4ac918af940541c5ebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230520cc62c7dae35aa788b7cc58e770bd7cdb50351c01c3aec21424c26b19687c931426987f16df634dcd44c649954e90a0230046fd43054f0bf2e44e4f5a055fba032966690d13ef310988c5bf23c8267966b4931c96ba2e69f18a853b5e92eb8f4620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7b4716a32e086ced9e139a3dff925b900944b98b9785b5f096d93bedd809226fb5f3c773dd97449d669e01144d09a0c02310089b299615337bbdcc2ba3c487dc07b45e63f2899abc27e6358faa746591aacad64fcc88c01748cdca0aeb46327f90efe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e10030889197f31ed94e51024dcb6b7a9be87f061e85f238b2db4f74b47a626fa2adbda2f371fc723ddbc7373f9956a102302fc5a1e94dafd5a0c6c11cf6fec024fae5018689d8de54effa900d364fa4c980f1f60b6f72e14dc9a989dd41bfff23e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008338cdf25a9388555707abdf5456851804591371cde5696bf8d5069f39f8b6501deadda0b47e61c35fb96090de649a69023100c5bda76af23106eca3e5ae0e0c99520b1dbc580a65d21aa7ec9ecc733976958e7d632fce46a699efe63f59098b2f7ac30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2b7221f73a37dec102de377ade5f298fc97d012efdb7ef089f9d106deb797a7b8b9c1513ffb706ba223423dce7495a7023100db82555cf501b40b29449fe5d3407c729c420ed3a76eed66fb189004e388215091d36b2d142f75cd945d74ebf83338cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100916694e6667c961cfb0b5962516573d0ec1bf269103954eda42ff01a56f6a9b4ed7262adffe5cb28ae157b5ec7303f26023068522ba6c07ab3a22682f1318c2679bab339c258ac7cacdbd5c3b84209087b6e7f2e15f31edcb65ce9bb5f57990a9cd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4ce48bab9da8cb81f711ebba14fc94f6df2f548937703d2c12fd8bc46d04c01ad5d2a85cb6f18d284c72ef134e12c52023100abb475bd86f0b6bbc9f66311839007708bfaba8ba8ff46be8ea37585faf4af874f62e185a812b4f8984284f322019fec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306c5226e5410923d00754bc19216999434848da8eb63fb7ad23cb0db0287a71c59bd9579d539013fba29b8cb962f845f302310086fda95cda5287461224e1e3b06f8f972700c3efd774f291b03187e9f0d1b5062beeaaea6f8c8d35ad6a65d76d2b81720302047c435bb500683066023100cdd4023dd499c397bc32d0b79ab2a8a60d53c40d44ed2e6a9711e4f8090b83229d03b26786adc4a457368affb2fe55e3023100cb96ace5be10a7f336991d875445c1114b8772384591201928392f6ed921dfa75f7bb0372f770df0495dc1844890b4660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efd7dec5dfd274e7d4552e5224242b8c080bafbc6a32c98cd0106384dde7bcc683223e650ee832f8047dfea2260d0028023028ea8a6acce91cd8f9b1fd1e36202b3c8753e0b7baf940a78ed1e85c9cac6a048f745e8a8b7d87140813c6a7ecb7a9ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b709dfbbced53644653cc89a2aa903076e8d5a72d0d14fb6380a58bb7e113c4477dd2a105997e52c0cb3631871b072902310081506750f23ed538bd3f8faa7b80b5fa8bf7d29e3d48df00e160f66688846ddc8fbe5a1ff934f9efbb5b6a4b46ccb2220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a504d4b1e9da4749fe5911d4f5e7e1d04fbbc7e24c1befee347b71c72246b08cf89d4ed86b05bc53b493e192f452242c023100d509a299701fd32930242b432ecee183a9af234ad36f942e3815703c563823441af23e17684cb79cb4a703816146e4d60302047c435bb500683066023100bd3e53e21441171826bc6fd5a11d8b3e5d0ec1802f0fd7621b08ac5f39920384a1193e066782c47704fc56b819233631023100b5fdb12405a1e90cff7f7264b8ef661039d62da60b083a15c070f71ef85ad62a2a4948fd7f9679ed1e5b714525a731660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a5b3d33bd30c987424885d19471ac9139c9fc72c7bda05fdaf22f364e154229f19db04efd528fa1c8eec88297cfc3a10231008b4e06b497906b8f4b533888a346b8f9959b87696a163db5fdc68d118dae64c0bf2d3e808bbe45ca78c8f7b8c2a56dc70302047c435bb500683066023100a2fea9e27d00d9a99dc626e2262a79ffbbd49ba2135fa88f0e4425451f8ddef7195684208d6b06ea667ff1ed38141004023100a678d529328052f9194f13dfb52033fb608a9f05a22a787410410efc295804df7f234013a9617411700595134acd766e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b8c1bd165b42ffba246de89efd8a05be260012660d1b8383af78c1b3fc1974f33541fd15733e05dbecff3b23ba3042c023100bda3346e4ad0c31931b9f6d1f3632d558768890ae9aaff0dd7219b595a4f7fe886193a421d8d556c55464f7a7733bbd40302047c435bb500673065023100910e1d0b7ef7a636d36ee64fc025208290bd36f59e7e6f299c8e151a4b90dcdc8e9260a679ea8b0b381485d2970ae25c02300adfdc8721d5908f8b5bf429b9168c86949e3e8718a4f6a7d80933ae8644a6436009e1641ee0edd497327dfd294940310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230196f0d05fd4dd6219c3d218e1858ff30bc2c74e6d3610cfd08db6fbad071b39adf9e0c6afb072173f99120abe73223d402307590d5e3b493a73bc6b3ed49a68a07a87d3f423e184ac3450e089c710a6e9f4cf23efae6466bedc9de0440808e877dd20302047c435bb500683066023100a61ecf3bd8f6ccbd2adf843b7efe9ac7eeea94a5bdfc4cd2560cca28040bd1a1cb2629fb516f525a85c109640f0771910231008ec560209a0f430acf697f19df987ab4644252676da364dad48e226da7e745b360e08366965a65007235b9afb8e5617f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301f43e7b5f2a72213657b9b0626a17d038bcc29040aa5478ce69dba911c456da645c21c285b00284834b858821825d634023100a90006138fad3aab295edf41cfc5ef96caab57b83b8aa11c1ec0594916e0e1e5487f0b29466fefc057ecb31ef55033a60302047c435bb50067306502307af378c311558f81a34af34697342686d77cfb13de42c33b14243268769a0655e964f5bfa86f20ca90d2c7bce334e71e023100db9b98e56ec3e46ee61308b9aae0f971447182f9066ea14b27c049de5bcb844c82705e2047d83bb09074cbe0a1bceb9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d5e09d368ed6c7d3febf03b1c8852d2e9cefabbf80d80b6f53273f589421f6b715de0c962b460e01396fcb3bd4983ed0230652a615a4b92bc31f19196f053f9680578b8635c3f76f44fdae3d76886a38f22ce0aa19a4062c33ad48a2b6b0e1d52100302047c435bb500683066023100cc9c1034c247adf3d5ec49ecd0988b09c6bb566dce973cc11cc6514d1bf2910bc781608a0e012ff02b78c7ee19b5fbae023100c5edd8930b9b88af3c70bc1db56f2ff4384f7cb3354a187f2acf2281c3d3a921f8ea4dde350a336120f703c03d8f2d490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304141f2abe0eeac25a33bc001193bcf133a48aa6f4642e64c2155be30a46aa64da1fc226ebc3e983578599f8b4b942b5502305c42ecfe531acec948bb079a9e877c11159c0a744f4667077bc430404845235f1319770698d91d274414c94606b832330302047c435bb500683066023100d4e3b7967c62d996f85370b4c53dc3731eee257453b8f94017203845aafbb08290c9106c364c5a75e48a37baf690c492023100c365cda8ea71aafe65e652a746390f3bd51578dac09810c74e73d1dcead5939472f08e23a79c9ac4705a5e648aead8e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100da516da7d6ea60327b11a4ddd5fb372b8aafcca5e0a0d39a463100200140b69f91ec826bae10f37fc718bf74f025e5b5023100b289b011f89e749c5393a6f41424a55255f9e4cf0eec290b5e04dc4a5d393ab4f7252850014a97d85b7f142ac35a55390302047c435bb500673065023100ea6400e58a96a16bedd06840d03d67b7f618b60f93c69468ca7cf029fc9d9c7bfe7fc89a4b70434245343ea2c9bdeedb023054449f9a6898c9a71d2456cc417b574ded54be0ce0c784a1e376711f9cdec4d084ccf4aa2c8642f278f483717a63b0520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008b4aa550387f83694859fb0f719ced662007d788ccffd72e0f4d01f6ad215d8af71caf18b319ae3d994e0baca6e4a41a0231008a813503688e2331f2c53633fbd560bde9fb0fa270cd115ed11b0e6f969337bf5f01c1f4f213d5896dcbccfebba3008a0302047c435bb500673065023021bd3b981aa4583cfe54356a6395f032ebb9dd1d7a77a2d5c6c0abe888618b724712cd77dc5e6cf7e3f9fceb1d96dbff023100e0403b9472f4da45d08e91b8fa5ba7969eb0ade8ce86255c40c533d53747725d2b93b837fd4826046417fb20b31106480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d34f26098d45ee8ce6fbdc6f8e06a85f3a70afb7290b626ae78fe59f62fad170ff30efe28287a3c93ab8bb496649a13023100d4d34619e967acdfd32fbc0c141590b647a38266b9bac57ec8e8a0c3cb47a358e842e19f2a50411e9ebc70f3103976550302047c435bb5006730650230611c4dd00bb5e491d2f7024b19ad907140260e89d33d446ce5f608c828d0279c149e14d3e9c828944ac4ccd1e079bc79023100e30af06c3913cc13971198eefb8af85878b6f8c9638a4bb7b75a16153eb99e9196a4221e4b38ca4871f7fd7f3f0ec9d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a3396fd832f643fec731d7c44c96285cbd3001d61794485f8b61433358a6960d43fa0a4995e4d94b644fed2d348da0202306f8827f15ed79ac844796a2ff8b24e7fdedb117d8ab1bf4732fd10a5eb409d15858cef85ee91d449be31d08b76a15de90302047c435bb500673065023027046b5d7fea8fbf36f6ffc8bde862a7e5453b57e985bf425954cea8545fc377da3e3dae74f5bd193fd88901a8788ae0023100fdb41cf8e1d62082441953f801b59f67d6539554688be85f94a8ad35ea7ac617b3a6de66dbf07d3787d1fa1fe5fa49f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f86bf421b7ade790c0d6994e7f430b3ee665b58f0f16019384491f07432b30bfca7fb5ca7747fc1ff51897d221d791a702301869b1541c9365fad8d51e0589dd881a080adfe7eefbc155a47fd5d2124240849916f0d4419b7068f9b883de5e995a290302047c435bb50068306602310094c0fa70d5e161434a46dc2fb6c0734463e210d8673b04be8d79988b31f2b9fedd1b4d8725224c2b1a2c3129bc55996b023100f26cffddd06b00509af3f496ce3d0f5e927419b16d4b92a4e3d503128c70459af90fa7181f192f9509e1af7fff9de3f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230540a06b07b458f7489bacaeefb460d98fd79c5db2d428106d4a29b4e616be2433470f6440c72b5d2c33729d460c5cbe1023100a926947baeaecb724e1202ad60769ad05f3c13ceeb57f5d789728dff3989e092971b6d8e585d6916604775c701dfa21b0302047c435bb500683066023100a532865f1f0181896d4805f93ee2f5908487bee4cb15de7fe680d6334b49c4030e3f26dc1ebc8cd349972a4b0b2aae35023100fbb3d1791f97af198d796299e242877ccf3699826ef31b6de3e49c5ae46da51827f435cde95819bb9e212a56e2cdc1230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307dc6fc5345b592eea664a4601fbd59938fac36b33a31432d8ecdf70181eabcd1969a63b184538128ff8a55988df3d4e9023100b0951deb2eccde193515aef03633e6260f4fb261f077308ee5e9cdaf47d6ba5825b07c976056ff966a898d934ab5d7fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6f02c68d419f6ea2087c666dce77795f9d8d5959f5861f4f787f9753788048311df7473212899eb7a2be5e6ca78aebf02301bf77702dba618990d0823feee479aea58b0d9180d5b403d2ffe188480fa79132d018d19ad2788f938a47bfea711946d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c73be1e6823b554bfe46e380cb35bb5cb871dd09b37986f56b40ace9bb72bc39e8483f4a8000703198bf3247577926102310091a59666b14ca0c86fc403a441a0eaa5642f06deec78e2549311250f5294b492c1c2cd4d325ac54a287fb7ff333d98a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023019380226f8564312297de1397ec5ca43b907b75ff2db7442568667f4d50549b7904c063c55b30372cc7e83e6793f714a023026e6e9b10dc1d8fccd9c6ebfb1f8bf3902f0cc65a7a960fb86bb7fc8bdf5aae37ea0ee5b11377fc198af9b7a8cc6f7bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009bae24a1701a62bd23e53c8879d1191feccacc2fea694d64227bd2f08039226095db38db6451d047adc1e98d65620e05023033bb96cab221e8a7db9416e0889c92240046d66fdf6592c98661ca50a7eccfc929210b4efeee1c7320aeb62edd67f0fe0302047c435bb500663064023054cc07e7b41e1f94598f8f3724b30730067e0604f8a32798ecc1fb0c13009ceca4e7cab012e6a3aa31e25e0fbeebb5e602306b8e80e376989269d13478d4fd242440d5cd415040450d82756be073d833cfc8791dfb3ab32314eb637c169b21048b7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062129012f66c062e3f004f72ac6c27599ab1d9e4d200c0cbcefe336668b445d4c692d731797c8efd6982aa9b08b8425c023100b90cd6d959c5b7da79c7cb6e6c992134efeb0b07f59179f6a5b2ef99596a9ed824b02b8153708419bca4b473d8d676d20302047c435bb5006630640230042b13eab8ad4b7c6594e81b041bca44c0df007e5069400474e265a0b004a922d4f411b38794569e2aca2494e97a662602303fd1c0970fb27ce507562b5df6e8755c49177ef98253a5aeebfe4d1c25ddd68aa01d3b6dff94ac45418dcdeaaabebc730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023078d662f6a34f6caa22b47f437b0f97483fa0d7239fa2bc29539b0026fe25f61647ad18bc9b871febab1edb7663d3569902305e26e7f4abce9370784d9d33da9cf98ed317d97fa497364c290a5c885cd2ba866a4e06f3b53b133ec6f3ddb2a08652000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070b5677c949a5187f20caebf07799e7a6e010487e3364c6c1241840091e42febcc257fd5d08ec3cf60b1b3a00bcb33200230417559ccdfa50f1daf26ee402992c3bcb58e043e439441cd040346bb88eed1b07299e527e18d295c63d2ff6dd69107e20302047c435bb500663064023073adf727250163da50354331515e4a00e901adbed54b6e6e8549bb159e7043e51b2ae58206e7ecb22104aec13cd838f70230245dc12663c0e12d4196459eeac272501240161d687ddc50e9205a2bb098766223a5dab2d88f3b9af673d5d35aeb92fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008f28d010deab68284dbe610f95bf896aa02ca024b88411892b9a7c51b728db5f6ab9623359c115e1c6b5f390fff32fd202301624c3a1a20fd1311b3dee5db8c6cd6ddffa4b57bcd7505bcd94e77555b2e315e0f70c569b409c96c9c7ef335c39bb120302047c435bb500673065023100d6ec2bf0daedfae635b523d1cc2d2bbaa7bc802330c3f26f93d2926933a9cb342a52e1c95d9970d5a3b4b36c5700a28f02303f8e1faf05b5f83fed270619999953a5bbef349a19b90a323a5b9c063ad59697fa9546927966b9de3aedd07fa4ec61e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe5698d3cb2ad6c850ab89398102ce1a6d0c2abea24c90c362405c06bb1244aed9bfeb2ba4cf8a5b220be2ed1b9175b1023100844a9d92adeff33b0baf4ddca8375cff1b195e23b19b437ca36e35780b324898dcf0cb7c2a43c9f3e46089a335499bd80302047c435bb50066306402306e97e55361bcf6292510025aff4ac5347a8427222c1c5eff441d7e2ad105f70050ecca28e89d611f921f1f45e123361f02302c0e4684c3992a655210d4cc6830eae7d722356aed8796f33fd7be54642bffe08ea1a21946ccfb7b17b09b93474866c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230237555552a0e84ea45a76ec816f43691aa5f9b5d769a4bd914007552b1e203694c31f11ee6b203f3172e3e53fb7d62d60231008aafa89853e80d666e8f1e8841224e66a5b93e88566b2b16a9bf8f9e450fd40901b6aee79030935ac120155e2b9d02aa0302047c435bb500683066023100a431a7e6fdaa4ac1cb57443591dbf38ee4cf299394700b8962ba406841b25251b5306fce98147ea24905eff65c0fd78b023100f933cca26312ae7eeb707a0a639cc43c7472b515306adb1254a3bd7cad8d47ebaba4aae3d73c3bf4dfd8c64a75142bc20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efefafc973f88ed06c810de3df0573bb354be340b6d0a9672d1fa9bf05dab9db5c3224727c6ed395ce91b5c3f5dade08023100dcc96f0289344ac1f94ad77a4f597ef59247f406147d961b44e05b4c1458ba300d0610451dd729668e24ba71ed66d64f0302047c435bb500673065023041ae9cf2b0603580bfb348677687ad0578eac1a72c909316e4ab99395922c0f2b4c8eec2035f228ebc8a16b177e78fdb023100ffe2fa9d530b28c0b372663f7d124aa6f9bfe5d6da56115d53eba20e387885566a0dc45233062d3e8ed6b5a9d2dea8370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100900df90b534e9c6c4263a84ecf10eb2db64667c28f4eb66f7c865015073d3e87cf4bac26fe05d8475ed8ed803279c974023100beb32253b7809b25c9f3ac3b002e9ea26027bf91525334d6e8ea44178b818edb04575988a1c7cb0542672860455738070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230062ee17d674229323a811e74cc2e328c50329fe0c756d0754bb7da8d8a6bb4475bc7fb481ebda978aad50e5dae77a53f02305e5fd2625c595c549b009eecb80c0dc428f0b0541c1eaf8b07c092b31606fde401a9a10d31e7ca90db36272d6eab2ac90302047c435bb500673065023100beb6bc20eb4f5f5d27e61f79809a2867c5b2e1554da29d71600e1939eb091ff4044b9871149c107bf33518979c4b50c70230095a47dda00f45b9024b73e763fad42e063a034de5a1f8ecd6cddb9f8304e0aafefa659f77fe8aaf58e8c4f2d6d0d0b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3203f7e667b767855dc0778182d9422756711bfce9d35b5b5b58adb6ad69d3b3f3a963d7169fe74fe1d195879a26e03023062e6b0253cef850afb22c44ae8c77cac9dd4c730ae0d1cf4a939a6b4a9111cf20799500ecdf7ef71d493dda705cd6d5e0302047c435bb5006730650230620d2a59981de0da664d9971967986870ecfbb356e17cb1acf927cdcdcdaa477ad7bb909360e37d54b02446da1c7f1e3023100ea28826333e3cf9b080bcef370c48ed4e836471d63ed9f8355c40d5c3e9606ed9695cec0387e3ebaff1eb395e462cb1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230066f177b672a3d0ee8dd400bf19542d39cb7fa15997bff3684c1f9b36ad266f18b58512474b25f4249fea417b54bb182023100879cb311ee44424a5731329f89dd07f30dd831226c63d34dbb22e3168ed44ef379635bc284101fb7649d75a06b4c0e800302047c435bb500673065023003d46e7541fb7c8d4fb71971f159ba8f4f0e809254f825c1c742537cb9cb1cb5119e4432ab621f94cf9a776846bbd2e802310092bea91bfaf13df5492ad4b6001a2521f1c8a861e246faf3ff43cdf40718c9013edb0d58af2ac68941969186ce84e6f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b1a1358ef3b277bf7057a37dda2e5155d45e08514c9a5df9ef409f117aa81a3bf19be9beacce25e21eb4673494c15c4023100b8003bcd38db33fbd8ce6cc16d80dda9dbe290d2065368a07927f4fa7fb5d14b37e02bb81f6b46f6c55d78a163c519620302047c435bb50066306402301f14ab8e4a2d880694130f09e591cb045092ec5bac3f97f2a11ab867f2c8cd9b9f6a7c82597e018dc8d02e7efda35569023071c8003019d36c2e5ad2abfb55c82ee77f2dca9cc87847656e13b2c9d9531dcd9d24e7f0d3c90ef4048c9a909ad0a1960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013fd83064c7b21497e4146ba194072740dd1efb06e0d4835e7500927dfc0014ad4a857b00eec68f845c29d8bc17bf622023100ec4be226088a6b4acc78f7556038d52a079b1ad7deb02d1e643acb052576c5ab8d8d40677a03dd613aaeb39036ad088b0302047c435bb500673065023100c7d613ae6fcb9bb92d6a762399cdee9c958a1259c495f087ab3d2cb76fb4c031b5f1b95515ca409408e6b8a0e42de96602300793277a39ed6c6c01a4d677f436f00d57db8a991435a236b264884f7dbd7f2e281b9bfeb51f3c41cb3cfad029fd7b6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065571f7f52eabf5755f5222f456b2919572d28b5091d4ab033dbe0c516576e3c7045921967c7176b3d952950d79e81e4023100cd0dd0e1c3a53e1aaf507ccea03af8cec2d577b555dfe994b4cf45bc5590ae0f24163816eab8cbd7946c0ea42fe4617c0302047c435bb500673065023100e9d9fd0cd1d252953b93ffc83d2b1abe136bf76581cb311e854bdcbf9db1845028720f9220811e3cc581ea8646cc782102303b8c4227e6bb3bd5eeff5822006563916c72b81aca87752df9c1c4ef1b809fa2ab10d13243f284f80a68fae8f4c160770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310080fa5cf236133c6ad39216a95951c6866d6c4c4438846dcac9720f19cf6f59e31b8052fb948c4c719d701eb322104453023019b95d2564f90ae22a87d768189d11e2a30b6fec377e609b75b384a34c34dad3a7f50246ce2b965a3aa424c559cf0af20302047c435bb500673065023100be1e6f97fd651b211968dc3b7e3d051eac342bf1ff4db3c7893a99520c54693dcf7c4a3f25b56168c72abfac61c94cc502307cf69efd6816692067394d52eebab9cf9a92b39e1f3429667bab2dab9e64e66bb068f1af2d422b13e99327a9cc45a3f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d32494554255ab7d605a21ff2d7c4a2c0207b925144c4c3eb22086cbdffc1adb2ab5d29aad259b18720676265122aea20230488e8e0008d4d2ed1758ce417607294463bf2d60af94cb4fa80083416d920aed31fe2f65c0a541ee4cda388c9f844dc80302047c435bb50067306502307ee3ad0955ab5e541f71a1e5f8c1a3685ec1862b402f2392bf1166c03fba7c0c416720fe9e77b3ec03097b661ed8afd8023100ecd8ca4e8d6aa09fba5d6e8e10f6c5830159e2babdd32c58eba50e68c65338e88ae691035a4c1097d14f5a1ce194d4470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302626cbff908d51e0627a4ab6300a17dd5a387e1229fe862201053ade2cb97d231d5283828bfda623266b73ef5453c110023100911f50a25a114289dad2afced9fdc1fcef3194cc56c2fa1188f4a2a087102450c0379ebef09aca50cb2938acf297c92d0302047c435bb500683066023100b1040c32b9dbdc66af060f665107b086e96d9b5e15604a729e63781af50d4944ba25180f00d30fc04d80d2d8c7f42bf102310089005bb5b74d4241a3e935d8cfbc9bf3faeae1a079ee6fff61306e756f16039599239553e2d495d2ac90c744b0a674c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230598be465fa6e2d7cf98f5a1f7aa0ec787eead3b92e9d040fd956ee3fb537071346bb49f39f92922b88c8615498fbf92402300b2f1cff476b19319b75c11176fec86b576671417cde8fb328410fe62a9c04a0d196ff4e689bcea16ab33169b0084d8d0302047c435bb500663064023037c46615452b8c235292c903e7794ff27a58d95aed042230f2bb55305120eadaf54212608ccc3d13994f5c0bf9fa514902305c3c35dee815cedf825ff6a49eb89c4b6bca4ced9f5f6b5878cd4a7913d3ab53225557e7fd5ecaaec713e5b8f0ea4e860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c2f637a3fd1dd71fefc993d3971e6e18b24c4110780a114278ac99fe6e11827462f37418387cd01389866e7694ef4e2023029e823a89f80b3f2d8e8f8808daf9cf4f065adb0558e9842d8130a34645c0b45db3a5bc29ac2516f0a7c753408c25e540302047c435bb500683066023100c88434f3db2333f7c4f17266e941c0c0596521549de392475d68092b8f9efb7b63e4c9566f4c081c5bfabe6fc84c895b023100fef85a0f16d6a7bff04959f689624115a19df9f070b5e80e283481c1fb14289e02b124742b8a31a0eef11ddb859ef3540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305eb100bea832179c90531cb59595a163da7cb753b1607e8018ef81fc6f12ec35cf7fcc3f64586ef13e45511a644b62e502301754fce4e564119ae50d8f6090f8f020b4d6b3a6b278364688ef2932057212f154263ef014d7e797318a0788aa5bd35d0302047c435bb5006630640230430f8a8871584eadbae03505b40e212cf5d44c63b1b4051f0d8ccfd048b2806355ee7b73bc7f75b3bdeeb5888692fc79023052e690e439929df5a4f49924010bf80f9cc6e8674055280d4b2d7e4c8b5f188e0226a671771b5ab3e439b30fe5e302650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305fe68fed8cca14a2b6d046c54f44c681cefa2becd5c2d59c02d606d888c1f64a2568fa72a35bd00e4e42535059664181023100e2c4daf668fb24be1f247724593e41b0bf3deee1b242aa1812859bdf3aa5555eb0d8a164f75b622b8c6ff0ec400d154b0302047c435bb500663064023078cfc5aa84030e12ceffa56da8f72beb32262ecde1a5ac4cc9c88630225d9bc32b90d253f5e18e26f3b21eb16e3bade202303d662dd4d8339639dacfa671cb603379f1d63759bcb9056eec2990ceb453ccbec7766c1b61825099d23133d0809ab12f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013c44c54a586c1131d9c8ec685f5885177d05c076362edcd4140bf0a691c348c0fe6275a9a3a182fcec0ec0b781dad46023100f68b230d88535989247a0f786f9c771b1e55201d4f5e02c57472d35e14e0e80da86087d37899d6a245417a6cdeac3bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303cb3ecfaea2cb95d58af391c73302fb5cdf21d63ed82bd6cec787a785043ffde6955b56daf00837a8b2710555c5f4722023069a85483cfda7cbb9c060fc7f2ffcd08ce7e8119b7f439b8b68d1f3a78c47244dd297c8a745276a2d275fa0aa4a051160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b325a6b192b8704ad6e90d015313c594afd8bea6fc38556f7521308327260006c404951c4132b82807c9ba2e86065e110230028f51224d08d46ce3bcfbee1fa64605bee45c919f6560552ec60b23de087e6c69917905931ffbaa8c7e7254a8dccc940302047c435bb500673065023050c58df0878b2a8bb19a940b3d344d97bc2351d5a2e407df6c9be4da655a9e37eeb624e52b1fe4c4e9d94de6b55a3291023100cbd88966641f2c1728d2285985769268dfeb3fa5c0797a41e97710db6858a5041db10590f654039562dba33edc42c1320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c29e0cf015d2680b0728bf98c31cfae742ecbdfedabc38a2b9f9eec4f618eeed6cbde6b4d0c9963c81a895102d71835f0230279865c82982d5301ce82d30a30b9d6c0e364de9997b6f07222d351abfcc667f16baf9efef263d7f1b380cb31a013ce00302047c435bb500683066023100ae460d66f57c34b9e00407a2f82a45e7e726e02e8b70e28d46443fc539974821207e0f357f44b7b22a42e23bd4f13d2b02310086b77f969d9fd7492760dc4f4cf60263ae0669bd8bbb65c56c6e0211164782eea8d8e3fc858629ac3d47799c4a7db0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023024643be4852b24fe9208a49cde5ee5a99348d485979fe13931aa31d8411259874d3e5a2bcc5cc0be6ab1c143f6c70522023100fb08b72254ef2d0907bcd6a12cd3ff003ad89102644123368c132c63d8ad8589ec2e4bd82369a252349f831325b94e450302047c435bb5006630640230564728280d6f3a1c85f40409a3f7d061fb9042c2cb8e87bf2a9c7dd784448311dd9e3b657803510cd7263edc0568b9dc023015be956e206ccdcf483df1ecc94c4c398fb755428bb92419a6f673671d7ac141805b70b879ae5e607f4a18b42524f9270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5e0cfc5cfb7ff4c73c42ca7eb4daddca2557d7bb871fce579762a04fa33f75b27d2179017c3ce828eb89e68c50e6b27023100e26a99f7b9851d47d198d088a3c391a6c996e5024c147ee0763523ca2b7bbb357d42cad9132274294f6072f53993464f0302047c435bb50066306402306700ab740fe71ab9f811dc3b230c2a865517be751ed62e4b2252ef4a67a7e6563824f03342d3d24f183dd8aba9c785cf02301b14cbb8d550af329204f14e67b07c7cfa30e145f4049ccf1792cc30c7121616bdb7e0a9ca8d428c06e5c819875fcb7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306fd0b63946dc22a7b6001c399a520e3c4491cd0b91072e41c830d6be08a04318a5a2483e59cbc28e7021d3ba97387d9f023100e7be7dfacd32446de33209e19bbc5a2b4f0f886308d680f0a73f01a776bfae107ca8e43b1e2cf3c24be174e740ccf1e00302047c435bb500683066023100c6574ba1113af97cd6f92a4824f36acda8cf81ef63c0fde4e0624af90ece842bea5a6af6cb4af6ac86b9d5f56ec38ca0023100fac088d418db665a4180bb33a78e6f14519927f306f18835358f7e0d8f4371f52bffe18bcc2cda7c8201999fe70588d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087e2a4ac315670c9c22c778c62130ef82080304a2ad3f89545454ed32689d1b699bf02bf27ad3f272e849c4af0d259d902305ecbce40435a77f0ea3fad09d6f6e884870217606b544af0cf0b566ab2253df9fceda70a621fa318155f3601bdaaee410302047c435bb50067306502305f3efe7a50b20e4bfff3bdd32de8703a86ca4fa9be2abb13270296bc04bbfc0d6c76bbaa367fb051b9bbb31ffeeff627023100c23782af68b58a1b4a1f26c606f0cdeb676dee1d77a231935cf99f4219f71c6b037e213d0e0e836bcc8430ebd4c969f40302047c435bb500663064023011138be352f9135bfedabb19aeb417db945a09c299e848b04f6618fd45a48a4f6e719408f9d5be94c9fc82bc381a9833023071691cabc02947479edd96413b2d73e1b9e9bd19986d4ad673a80363ac69c9acb9e979eb4975d54b5f9b14dfb76cb6be0302047c435bb500683066023100d4cc0a1851a0b5ed1de59aad7c5940c35ff7f9786acf2dbce55b563c322f50d274d9c1879a7fefbd0464102bf745fc2b023100d7c2a70b745bc420c2f650cdb2f99f076a8dc6e0da1eb052d51045490baa8cb675887c84e45ce8df0d2ccc864b21b4090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a14f7b3d1450c8644338c33af9ab65069f4506ce2f5d1d6d3fcfb30d604d34f2fb23558a46cac5133e3fa197a2933a34023047300ad515298b20e4586c86a96342bcc76cc6c593943bc018016f846638adc1e4a8768172e67b878777041cd5e7372f0302047c435bb500683066023100e239638e1aa3d9c73250651c30c8edfac4e4aee59eebbf8e230218a45c631f13ede0a7e362ca7aaeb62f767385b8ccdf0231009a8a823cbc038c841e48887e8d9e7d5d881e8b0a9838501ce1f51d5ee89f2c37e74695023b14425301ab56023b7eda570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af684262c5f3bae2ae048a2c3c02591dc6d6778def6a31c069fb8cd6b94530ee39d8308ea6be06e8b110b23b59c0adab023100b087a769565cea15786d3ef79b090a72d5ff2da21cfa90a240734c3f80e475fec96aca1179850e49714d2764d3d6e3d60302047c435bb50066306402305d9f2bddce557c3d796a181e5e59cb2369fb1873c574e6e89fc582d048d5e81d619dca04e43c63a4243712f61ecefefd0230526208f5a31c1154c9744fcda96353e16201e2ca97bf8bc8c655cac334d69b803d201a6ca9266c54b61e2cfd0a4ca7c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab67949a56cc03191e8825919e492f83263385a6ab0e141aa6e92a9aa6cdd29b018bd43404065fda72ac470832e8111b0231008134e6c92e53e8771a7767f90a902cad80790a00c5a083d90edccbb611b4c3a8363694758ca5b8aab03d59b29da088300302047c435bb500673065023005c3f29cb48cf04f1626fa604c59abe7c76a5a6e06a9c9255330ca02ae3eba322eaae496089135811e13b78e14cc7b01023100bfa987d31403772cb43d68154c307f3988bde3de27da890ce9c3fd3d8b44bd9ca5f8905d6fe17334bb191972012d31b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c51294077313182959ba1b59d64458f811c99a10391f0ab802f40c57da710cd36accc0eace26b343ba054845bc2a44a302304da6697a216ae245b15d5ab88974ff8d9cdbcf1606013b0ca91461f9dc670ff6547e6ab482134791de92f3b41f0c4b8f0302047c435bb500683066023100d7bf8535979772d50aeb871f4120cd39c84ab5eb66309ab10e820cc8906c02e6367704544436ff7d228425c4ded2620c023100a0590a813fb313e72750404922955af007641d0a46c23dbbf1dfd6f504e7000a2109a66f06001100899cae0bb430bba10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fc5c2d12d62540bbc401642c4e77a421e0f213c8b17b8715afe2efe15fb67a8e66f84d561cb70a2e28c87ece582598c023100b7aa839c313d1d4c2bc8124bb6b33b478b2b2a50fe52eb2f17f4f9a7867c79f1fcd61a87d0be164e3145aa0f36b27a9e0302047c435bb50067306502310084a4bfd6e78e455a0b51deb798a33a10cc1e5d6ed7b4f80d63b2ece9e54e61d7b05223544846150a1c19fde26e18d6de02304c111843c3df4dcc2de00c5e3df027b3159f5607b6ea587b757bd29f8fa5a697aa719d9b485bb79e87e9e2fb5286a01a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8e8d8cf3526c46779e6e5d429f8b52674a9b950c9d7daafff79ee43a0b0a78efcdd255ea8133d519166302e3aa2c2f1023034ed476540f26f4f3df6b15c0837450129b75b1eaafffb5a6a347c00c3329ae7dc67e35704dd4a0c0225e46ea09c53800302047c435bb50067306502310095c188ebc60c4d5fc3b4e1a2b5b11a42882c231712f9fd0f3c0b4460a4e7c8e2f6006a9341924db868814143862700de02307d23be1a6268fa06e5a58a8c4263d5abb95799f67f3279d058e7a6c3cba4a0dd13c2721fa1094db40267f604e30533640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a7bcba5428ec544f8c77d58e7ab3241e181c413e2e878af30bf5ecf1f78918b556f690a83bdf301d4d58b8f7637d20a0231009bd262193ddd33996ef70e3fa6fee5146012d7831b66d38a6a3a6fd9a51923dc7767cfb9b887bedd8fdab556313a6bfd0302047c435bb50066306402301a6efa542213cbf04a7d95119764e89bb32967683cefda0741bc34d84d6f296618331b539efecaf6f5d584b400c0d7f70230597885aaf2849945ad76167ae6a8299ff427a267506f68b57811d686cd5a15281444660010572104fc9e7d6cbadd39b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac56c7083dcbd4712de10a29f553b4709b5c70afecf3dc11df77022c84612936238527400d4ee68cae1321ae770e781502300d906d8d434d7d3f20425d5e9b508caa7e4e4ef80df4f5ce5c366616d0e7c8ad7d4381304cbc139c60ca46771e98bd860302047c435bb500683066023100805de0000138ba21e388491ef3798b80c65d997afac5ab097d7f4c1150b6d15c831f25707ba0827dbe00e0db5277bc670231009b3cfdfb9be05ebf0d04846804c247eead0fa893603c2f4f37d1d90bad2925f8e19663c4eab42ba840bc911b1d02ec120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100925081bbe6a7e70f98ca7bd71130c44d3eae83589c54731b7571f098b257fa929797e02102d174fa6fdb06c98b7968e9023042ee83766df6cdf788a9573d6380716b59d41f801f134c6ed08e1a485144f59cefeb92bc69e49e36e5504c709fc1d4810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f303954c30d9b33c9bac6c90085f4695472e866a31a3251433f2aef2d2e811b51aab7255e67cdd58940e1ad29de74e023100aed4d3a91aa467ce7646f00ce426d40eb0c018074d7532a475060841f1f0f33ab6dd2c5cace0685c2592ae2db27714d80302047c435bb500673065023006cbadac5bdf23a5aa324be8364f8b5b1ac7636d4e7046783d43be884e1b4adf5a9adf0ddb2dabe65184b515a086fb89023100f9fa966fb6a122395f93da7961179a2eb80d96c39b609f72ac8e6aa1420421fd156c5157551f89d2ec340dfeb53a673d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306041785ba5c175b872bad57ab0ff880ad5e84e5e6bba462a33ff1a993c89f48ba65299edb0379aaf140e01d25f7825e3023100b3c98403fd8f28733048af70e215d7da52aa72339f6443bd6b6d888f55f3900feff1a518c921b302459c04206da85ff00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050095ac8685d834cb8086b8650a7bf3d37abbd3533cb0703035bc78528ef340ae37f6efc37f2fb17f80b301edb01425902306f71052df93fb8ecc21ae25a9927dcf4b2191d613c0d7aab15a50f64fbd685fb917167287bcdeccdf678a91e1744fe540302047c435bb500683066023100d71fb04805c37554dd6c7241396a66f630c62c83ff9d41f4043f0f19dd3cc84cf9b37561aa49bffc1ebb339b83b83ef70231009339f2582a0505a7da59c75a034e001fdbd4c84c9a305c7794851ac906deaf818871a8d76b14b2734d6515702457bda40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003736851a4059515faeb717c49deeff449bb0be1a71e853e7e453b700ed6443cf0b145242ecc9d2b21a181beee7b6a430231009130bc209edd188dd0acec0ad13867cd7d01a8880400860066c9d4b484f4d4cb189aefed92b6f39452704057e577ddf30302047c435bb5006730650231008cfe4d043dbf4bae3b49deae84e44f883405c0d15f04df01bd92fad3a16b5968a682f5f5a922a8af2b007f7e7581f2a802300c77a806cd07edbf23ddefbb7ba0cf7bf7a4faffdab587f75446063b2fcc4030ea3304f88186ea4058f7a34b407a782d0302047c435bb500683066023100920b662660367a76c74eccf839accae74512e21c2280625c661818334c0e1abbbc86a65023819880dddb597e439c8f69023100a1a54dad05c236ab8236247aad59594c3e1f710e1fda0ce248d0d6800b46fe564e1e8266a10eba354c996abc66bebb6c0302047c435bb50066306402300e31bfeca12e00b3e606aadfe349ea46c3b88e2827f586a5ee6e43f230e9aa870bf650e978241f48a68188e8d5affda602301b1d84a4df424b8caff8b59a02ba5260d8211d26f1ee807cc088bde071050884fcf56d7e9b70f7874e8f5189292b5b2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230214e5d4795bfc75636251fbb23591cfd079493ff61a9a550c3ef6248e72459766a0792ddc2d156682d4d5f9bba91111802306031d80325bd7acf527487ece18b57eeb385f2f041c5719954f35c9526036c04cb783253e19cb4e6631e8274b3e52a720302047c435bb500673065023100985ef9e47d05bda1917d0457f1c4ffd4fb8d076c1a78ec3aaa63e9721ec6052e68525da4c4f49224409510738ef0b6a102302ea73183d3688f593df159455d0afebe6c8b0623c38d8e98e09553c1153e8bb5060425bb4a9dc9085e9d9485584081210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306720b2c5b85cfcd734eb24f0f7ce54c32af175d559e67257913f0fa28000254a08e686f6104da5120577bab5d2877c5f023100ff45f3a2af3d5b00fbc66a9535f0631107c46210e7345f74c273bdd3605262b39fb65e42ab37cbfa1603ef59a34019050302047c435bb500683066023100ec0209e581c1585ef48a623b3b144a29928a72a6ecce70d1386815e3029f3f6ee1c9d12067d0c1ef6435fd5a7867244d023100b00b45fb562601b78c7f891c14eb799f0347b2a9f663dff842a7b62d3e1eecf163eff59717504485a0cc3ff33cabb8010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304e43e349e0c748a05d51db93d7de58d3abebd0cb898480f3dbe4b2e15806695801137c3dfafc9732760216baaafc883a023100c305ae1a485a82ddf7f9aafba12b7daa0958bd9b473c825579718cf1d80ef4f369436bae13aae23ece2cbf0d1b2685cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a8b27ea5152720c683453d56ea928a56ca272853dc59674051d915d93f443170878a5b9dc7cbfda03fa4824b5f4a3fa023100c30ea01ebc183d194b44b0c5a5c56378ea338068a4b72ad4fffbfdc82ddde9739ab562bfa4e2285040caccddaa3a801f0302047c435bb500673065023049b6645d09cc4f0b01b29d97d4917644f01faa5fc9a2ddab9fa40c2a623f2b1b1e9e29bf60b94cd3cbc4a32a51748050023100cb8440f85a6abac4777b0ccdf314ec1b5b4c686a7b33cd163bed5fcfb5da7407acb80b5e67889613a4487aad77a21cb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230569e35702682a8b8731c30a937bd865be8e07ed9471b96748766423cd38879ca0c3587fb7a38eb776380fff80dec604502304c907834bf1c685ac0866d4c3c2c6806ec495755f66857d0ab2e05f29f0894076602ef4a02957badb87869a4fc892c040302047c435bb500673065023031d01ffed975ca2e7319a158f6afc67e3e233cca79237a28d70c7d18f35248aec1d3db3bd82ad9f76462b50c71544e6f0231009db7ee1d5488e278d8da91146eb591e6a6c864c96ec59f6c58321bc76cebbf519ab7bde761386fab8cf418b9cd43ac670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b201f5116d0399e4f2749bb18139ad65c4ffc941b478ca3bb4e6590b62928635d383a9d7fc29b515619add7b7f63148023100abe9de80313836c20f01b24866f2d912d7fb9f377fd49fd8628ea3dc97ceda9bdcb3ef8cdfb03e53b21457369d69efb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f62da2e00d39582cb216ecfaa5b98f65d0d7d4fcef852e19e7179346c63b9be18309f601f78c4b72c5fa4299076b79b0023049556c3c984f6155536b7f820f36719db073e854d90afcc40adf28ca6731dabb960620da6750ad55ac5bf466f4bc7aa50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efc1d1576265664e1a2f7c36bf65ca7c6f970776b865eeebd4465e880087c3b20f0f7d96211e3ffea39b2f8fc05a96840230547b6a1e5d0e1669e3f8a7a718856e69f265863264b018518cedcc717c89b89b9f0476e5b8ef7a4d607f9c97ddbedbcf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302143682219d29f260b84eca79583b41ca31d736607c0953fa53764c867277159a002b7ecbb21e0790696c4515391659b0231008761fbe104c357c3dd9b2ed33624b72e01fe24563b97c637546e0e010bd9ebc8c80cc39691b65089e38f25ccd3d7850d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f82bf5b93b6c8f5b2950eda0e36584fc1e52e07d9a078124f419708224992ecf3ffd055b5cb4dde20ce5a0377ae86a830230741ee445ddcb79cd45ffd8f2205c559f343746e07316363d14a634d1ab5714c3f6374c62e5b4d884f84fd136dd247da10302047c435bb500683066023100e01fe21766c2dc19938d6e30275f408e4a7cdb0d37c19d0daad1f0abf824186dac1516dcac903f110ffb96f95727d0ba0231008ef44300900c69825fb672fa4743be5dbac12522a2fa6736dc9465f92aada94f686233e658841d43397a4af330bd3b5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c6dfb6294be734dc5d3b34e5ec56577acbaf030785554fe36a0549b5ca0a32d260e438f0b6cea94255560e6c22ebf160230203c4f96d9dae44a4b9d740af238cd4a5503d672661ff1871b48e8c0a18c68c9c51a5d082011a27ec5faf67aa1d48ac60302047c435bb50067306502304e9b41e8b711b04567311b9cac185fcbfdd457b1ef322b49e5588d7791e3040e6817c31a352e7d1fc3a6673fb85b59e9023100c9ce6fa432c27f82c4c9f25d798d72b6255c37f5f37ad554a2ddf0347cc05daa6b6781c62c3991efab647b5db5227c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302fe3017ca406458fd5b7d41611627f77223c4304a91b290c7d1768c3e2594094342fc4c4d0113c724507b6622f3786cb023100dcff37865d289cf47aee44c568decefadf6bf0863870a0c376fffcdf77a39b8836afe5999f8797574b5da7ffe30ce41d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dd39b7990587b524bb90deef1b3171a1b8f2ba982b69e619937bb4b01e5835f611f9b72425c6ed681462d965caff17b023001a8eaa13ccd5ef0276cf795b93eaff4b8afe3f896b8e7e55f39842435dd0258cf3afd3c455023be5c4cc3991c7915280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b47173367bf38f23db4cff2a1270beeefe81be35bea97d379d520576c4974d0dc15a87867748344c18d7660c4ae9d38302303afd4a503784ae4ee55231f20af70e1b9a8cc29af8135e6635acf765b6b5259bf4a9e2e23e6fa0250eb04645885417b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305a41f789a82804f19277c301a79156368b950084b8159d6daef34824d0018b323efb3bf3b18fee1b763a6dfdf0213f010230278a39c522348cd189dcdf739800b893ef90d8ce734d41c5e18cbb309c498f7688190c0d31793227bf52ff59c095eb890302047c435bb500663064023025cfa650f0e6ecc318d017aee9cc5c80e2e11d11ea130adf5bed87f89ca6cd0bfa0b2ea58c6e9258e7237d7f5085988b02303f2e91bbbf6d4eb91a0492ac0d8672b176d5ca32da60faef71df6b2a284d2d38e39c244a3dce366913534f97546dc8a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bcd3ddb60e610adebcc092201945f83a25eab0469569469211e5eab3edc85534b5424a7eb2ce21fa246b1a6f12a5b1ac023100d542fd3ddefc6db91eb58fa7ea28e6a1e07f587ff53a5955c63c23a40973c6c45645af548ff3cc7504fa9bd4043f4d750302047c435bb50068306602310088c5482c685533833df0d8c6b9b746dc5c871d3d7c4eac27e692cbf2958790639db76ad58a14a94567df9e7b7670976c023100a414965c4178b64d55b38cb8dd651950522b3faab64fcf4b0f889fb3486c259ad8acca1976a7af664545fc32a00736bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3e22a5b35ef6b56442fd628a978cd25a45c13236016fcc321a3fbc057fcbc788cf0720da4b99bedf0274c16df48850802301440b3c9505ba32683ecbf444c3c52ea5b40b9d71f204ffd9b0f54d970da37a6cdbd21ee9cc3b916cedcf7c0e14abf400302047c435bb500663064023038f87c493303fa2716424842b46ee88d55c8ee3470ca6fc1b343776b0e27b16283f7866b9d213543ac95ff1ecd3fe2c80230516db1be42ac9e862db49873358d2e4d9bb75c11fb09f7706a6d8a651c32163371e393162233f6b06a17eeb3510834c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007080e1aa23b970e023def759aea3845952ed440b81f9e6a6b126557b56023507c3e893ca0b069b04c83fde10ba1772d023100adeae8c375fe0dba50c6f0fb5fa09475dc4636bf8a4163818cbb00c82d286066228b69dab61f429b6bc922b98f439d740302047c435bb500663064023030b8f6dadcafa3d321704c00fd2dd216fb18d24567bbaf1bfe8b3b265c0daf144c5c7569f3bb99e2ab4ed930633b00140230532e82085791a960dc0a7cb0781e924d38e8b73349b0a8181ee6f7cb0338160990660f1fec1986036e6b945fd95820490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030a318bb540286ecabd8217597294bb08021916e1227a3aa5b7d565ab08c5d8327210e2a5701d91cb87f179327ff461b023100a87e03549345a0c22a3461bd4284d5b5046f2e6989a195a46c03b8fc4ce10cfc115bf2f40ae3c612341303f9db9363ac0302047c435bb500683066023100cfe78e409ec05305e7de759922712da61add1923fb896dc473d05080d57050bece1dc74ea99d9cb1e6a96a30ad97428902310084c3778a4387e30d6258fdeefbd4eda307d3ca28fdc3ce97af51920417e06727f2dee966c8e40bdb42ad92702cd654250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e2d907c36e0b57a2de92f18ff571d733201bc6d3420829754169eeecd1deb7b600381b8e0894d545f100629ba306624023100fd6a1db91f43dce5024ebe42b64d8c9e4dd459009819cf8cd46ab84f3ad586b22303a3fa38783f9102b6dfc27a8429590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ca4332abe17b4999fe31817619fee5c9929bab7424d8908c9901ec87b6ebae759ab30322227e0985d04852aebf463bf8023100e7cc1fc0b22a9e41f8f32dfaa555c8f827be42f07984e46648693cf6e5e99b303a18ba7b66924690764608767339860b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072f9742b91dfbc727d6e7b6dca5506ecbb7f1b8513bb9ee9e63816df41ae9acd3a94fd16db6f7966bad722449afd8b9f02310094b018c40bc131d885dc1795c2d2ac773445954ec270483d9d7af41972e82befdc154118bb7fc2569a69c00633b3aee10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fa169920352827c80341771324bd568ea54119c85a0b468d538306da8dee6e954f9569973ca0c36acc31e1a332a430402302731deda457e24afb5d043c6fe4e271b87b6e7315d0eb01d0c4988b7555ab45bf531f60f4f0d005e36374e3e6607f11d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb78f6122cf5419ca602e111d8e66a05ec9a4c2292679f9b358435b51393d58b2937d1c6033d56d487e00e4ce9a4b5b702307021e09260a2326bc8294e369b9703557d680b404a8afc868692c14d22c641c450ad512e17939f5d028bdf02ad3334e30302047c435bb500673065023100c525c08cfb43b3381962e31107775c678d7753952ffe1890f037293eae50511e6d26579b96db88de47c59184224c2c980230018f1df1f7766ff48662f3a46bbd49787760d304eff6de38efab172b812529befb5826822fa7ef924f29947ac5c572440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305ad5522fdce36c5dfa3ed9337bd944cb6fd65122431a6c4af1def7d13adb275f4caccb8e460dcd58a7cbe408bf219fc2023100a9ac8b298a3fa3e29bf8a4a7eb6ce38676ad812890eb7247284737fed4eb289bac9091dd0b982386c48063933a8a46e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b507b8430e1ab7bcaaf7cc700ef69e928b20dde8e00f7ab6a9a31f486f66d0949b3e681b2559022b9cfe02f1cc69361f02305c882eafb3d450a3c0f2dcae01d7f155be3dcb889c3b36e202eab8a507708c88db52a84bdd865075d9c3c355ab975f7b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054cd24ae4da4b06e01901fd749863a406d9a1d67b9eae003e6b228b9d828eb4dd1e3734d9462b589dee6138d81c7f04b023075839fb9dbe552d5333c1f31d4a02e300d36c48cea6bcbf08607b22ea48a3c3d6f54f670509bb42e9921004b042d1ced0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023018e6703ecf82ea1b54519682263df348fafcdc36cee0c79e3102338c3017d35ea2883faeeca205406e82c0d734063b0d02310095654fa38cda38c2dd8fb79bd1aadd02a585bbc49cf7758901f5756ecac054b10e01b2b3249b884f870a87980cf6057b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b88258d922e67fc5a7be1b20ebddd5c376e3d41f150186eba7ae2b6beb36242f9280ea8080a65d3e138b6ad1e9d70013023064672d62c80be0743d8a82262b4ec58bc5de0f3401445c8bb1a3e9c33914c02c82a2741f6af1fe242eb9847a415b624e0302047c435bb50066306402305dd192c438b69d082d1a541f3022ffc8c4b784408347873748adddf1ca580fcebaa70d8886b733a0ec8b442a2c9165f402307480f4bda22673d9a90419e045086541acb86590e78381e8e7e8b68e3517e8c53d0f4aa4ce57afba2a74f08541f1a5040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023078b49acf9a809678b3a614a1fc4bcda5999f122b2128885d63142012ca2e956bc17cdd641d32ee38e9388032fab9083c023100fc3f04fa4c09e756b72901873cdee6344ad3746d8e0ee5964b641ceb13b504c8d63e66a833a26368e4a18300399878dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300f5aea14d6730ec43637b7fc84313c86871cd7c80d59f613e4721f1bcde4d4ca65cda865682d276f6b8e4f67d0fada810230542419e3b20d297882a3e7fa1b24f72676bb6928e9e8dfe35c80b396106e2e9dd0a34c3f6702b1bae584cb3f4cb3d5900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e46159bc63c4518dbc2ddae3eb3e3f760e911e9ae82a5f9edcca29770f5fd65299777d8ab0153aebf64cf2237771352102304b12f66af94d0fd0f784ceeda5217f8de36d28933d0441605f7d8516c281ce79fc20e10db326f06922ffd3be3bd3d4d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303072b59087decb517d8b858d049ae11af2f48f6d556ca67bda0c7152766c1945ffe37de2ff5dc3d7d6c9c533b35aafe1023100cfe170a8f7fc2afd98f73f34f172a7034fc95414180426c1629dd3918405c44a377305141f78eca589daa7a9e3a682170302047c435bb500683066023100d83d01780161317ea33e6aa036c99f4d289c7107e9f2567f15b24e520a478c48ca9aa6df7c00be63462cbe308e4d6c58023100a065a2c65a25a0004e06a79e625e8122743443fb362d7cfda4c4493960665b03fd6fc07d9d2ae9a8aae19f6ce39e0a310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012cc199ae88730f8d7b616d4d617570cfcccaf22766497fb6997607c752ad66f562a78c40c04a89ec3d98e484d2e853602300952c22809e1d930ce67c74bab5749ad9d8409998af9987c1cfb1f24fc3493bbb9abe9bc2a1531f34504aa521eee5e3d0302047c435bb500683066023100a960db3f883f42c9559e1d23f9bb1b6cb5bd9a52dda036c4f4d25b90ae269eaca0b534afebea222e6d2ee55de9898982023100eb993ff0e267615e255d30ab11ce204f09e9a65944a1d5d97c9388dbbfca34c4a1e299fe7a9846fe41f966c66e0bd8ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301eefdf45e94d715079fc4bd52b08a8be296dd97fdd78b49834b6dbb5ce27a568bcfd9215773ff0797263d881b2101de9023069f6745008a5d42aec037fa907232a21483a0bf795a161c8dcbdad3f6611f2a3fe1b9a2e0e3c0508603f40f53380464c0302047c435bb50067306502307263c4f8fad53815e64c3a481510a2209db23926f95313f8fa467ae12e370ab86f717612935bc8bc1b35ea907b4ef0f1023100dc6ea48762d38eca089a8de949df4c0b9ee6edcbfb149fddab066ae2607455da09a82b766a2df815ae52315152015f010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303af692858d66b5a9b8b1f09b01ed82c3634ee4f8f3fec084417fa2375b196497253449cf6b7c70ad4bd8367fbe1ac6ff023100b51df75f572eaa47c49ae759bef2fa7438a0ca636e52667a16850bb67a3c25abd344efa5f9e63f7ccad9a7fc7f8970020302047c435bb50066306402305f2a7411b2c56ca6871976dd09740cf454e035dc3047fe924a04f6c9fbc7f62f7b94a2a4c31cce08eb83f01b43e343f502302d6898ac6c7b9544e35e7d12095b055a99a0ac5221e83304bbe05285b53498bb813c49727ade976b25b31c262a9929a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100adf6aba46dbabb3f229b4f937c2f338af333630be2464fcae54eaa991e70b85d3e5e7275da8d157469f217fbebd9fa6b023100bfc23e982162988e11b466adfdf5a0fa1940746926181ca8e6d4eaf8466075b83954f46b74f02cb44628d26aa89b074d0302047c435bb500683066023100b07cf6ad441aa52d3f600ea60538e2e521dbb155677a480efa622978bcc89b638692e46fcb0ff6b2e93051369f7ac74e023100e94ab91317cdf38a7a7a9a8538b6d7b856c1bcdb70a7fd49b6ca37afc239c41c3a5da84b29db9a50015073f7a03134170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7ee192cc74fcee64a01b0561cc39553d60bc7f27b333544c10077f1ae1c9792c1cb1caee59d1b2f6d12dd291ee37bd1023100abe8efa554ea152b0a035544d3b64533efbc881da40db807ea9d3806b9bb9ed871ccfdf2adf10528027688422cbc66370302047c435bb50066306402303694a74e54a3feca25422f2292fa9a7f240e7ab0ed7fe902a82bb6e2e6386cc5395097ca8f582093a56a3a5e7f262bd802305eb028d148ba4ac91565230149e7783f825162d4011153479d7a8f46b546293110c6c4a2511eb4495ab7622fd599d8db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d58b128a64b85ae600f66b85a6621dafdae0ef1fe0f5fad98ba65b8569b72a92bef410cdc4c3c7fc3d2b70556f7f043d0230796ab1f5a0e9d4ef507755f0af3e1e43a368b1557a9cb842661a919e41a0977d1c55e1208645c112eb7c526ee33e64ee0302047c435bb500673065023019b444b3f37efd49dd4179bff0a09833518a2b1a48a2cfd28c204604ec41b770bdc10aa64523d3782475b5b13d0a8f4a023100d686b57d8757495e0241db35ce54469fe04549166d852f6939c12d661023c4d0f4c46ce49f79be643b08b28696ab52280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034ea96036b3738d348532ed9c8378acb88d869e7c6fcb2732c79c98f609d22d5045af95fa8f34377e3195110383596a9023042a510e9a55ef97b216232f792118376f0ad1275a750b03be74079909da8ff9721b6b4493e8580c83d3ae90156f92d750302047c435bb500673065023100b4f6b06c922c3490b4be6e876007cd7a31cd527c4306a291910fc7052dfba20aba890c7ca3e648ce01100c82d574f5870230740e2fb68a1c672c8bf9bd0fd74afdb9c2e000f4113e8589624af6bd5ceef451659ad82a234e0c07530bb00ca7ee07f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015fb05e605b6e3b19ae45bbd59d87f651b367ad2f6fca4d1398ba913e91ae51263fef6eb6f221141eba2e5fe8336a22d02302183705c076dd42501c65b2c25090f3fb0c41a8e0f3711959b22b6ef903a8434db62ce4ec5f215168f231bb2460649ae0302047c435bb500673065023100c51046f6de1862e1913c396bb2f5426c04b23187a1b9408baa96e65b4c75d3eee0edc69bc3316259752330ac6287bc7602305976cec1801ebc7d35636ce73b1b6ef9c208d9a8c21efc765299531e53ba03b74afaebb19b34a7929fc6a7ccc439c4270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fabcf76cfdb53761f522c424e6c5b4c8c3fc024d2acf4683ae82464ee4b6bd23081c90d63c37caa9998b9e76dc05b0e023100cbf126087a31380bc3c38474b25c5bb9197d62fe15d033ac8cd29a15fbfef10ff5ade8020ab9b9f308a4e863bbf04b720302047c435bb50066306402305036ff545fcb820d6ffb75d4eb4cd3acb8929b2cfef1e50cf971ff4d5d9114b18c2cd5513db6092576fd11b74f2d11820230623dfc4cf7256488d9d26626677461e2ab723f0af9021356df6f74c7e18f148c272c9739e2c45cc8323dd77f70d4dce30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304801ad7c265e693281c717c105f5dd339f572ec4895f30f8c582ed2fce1443287c400d2e0502073e897496b6e53fd135023100a43942165b6daad1f0ec5a882ac8eee04f5ac7953bdf7a9b5416631dcaca68fdde92ffe16ea1f7f915f8699bbb87f9990302047c435bb500673065023100c73142b7912b4185bd056ebb7d0b124035e4284217659a93b45a7e5d0fee2329e645f5897bf538e678516c4ec8e98bb2023064907151e0a53a2007bf1591ce0856cc97a3a6a66d7135f9b470449232dfaeddc8d77f01b7201604306fd8e8a572db4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310093e47a53bb41bf4681e2df9f250e2ca350089319d7863df66067f73b73152e623430a9f4fb34bea67e82da44c890baee02301d904cc8bac1d0485e7abfd2f8a79af278eb029870f20e0cd651a1ce7da7a6e2da54dbf849f3f45f4358e4350dfa8de30302047c435bb5006630640230436410e611066227d191d48b3d173f3ca4729414b934e0452d991f3a0c58219b22639fea7bfc33ad89a274bb9b61cf6f02300865a8285c1a14b53f6f2eb445d08137b5d79771d4c2504c29689b8c7d9724d2b7b4f9420e46f3e81661043d8210bcbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6f1cd561ac42222357d4cffcf12e07da70c09309358977f380eeec420d6ec005f23811bc062345101415764b3464e98023023569f4b002d143b6893225b769d0dbe04ac04b0c0e4112589ee104213b9daf187892d0ab303c6c40cc00cd4a5349adb0302047c435bb50066306402302fed3a9b03efda872703815d3edbea434ad216618c4f7935a39307f58b9ab3807fcda6855af642aec9d21c7978d0843802302a28c04717ffca88f33682c7b4c28e0a51c48004181b99f5ccf9c1566005a87784f6f5baebb3158e15e8b9d2e4efa5f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023050dd3ca6835828314e5e27f45b2783a998854b9ed461cf99599c01fd661071f4597779ab6288b5433ab7b9818f8a51ed023100bd5e5d8a04835616ce72254d6300bf5d2c0d71bfbdfa0e1995ad1c0956f8040e27363ba9b6ce248ebe2098200f8409f10302047c435bb50068306602310090e6316959fbc191ae2ebf8debb6e666a8cbe90e45ae6556142d84889a282eecc9cd7c050ebc6c2ad3c07800e5e14d84023100c50cec6300d31d08e4bec0f3a79f8bbc439e58826252e39b32da665bc3acbb198b3b757fdb417b3ce5211fd0d71a23ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306daa905b2fd5d0fe56d7de0368494c29fe65feffc003f147c7cbe40ebc8d37ed1807ab13d5a8ba55b8f4168c7e5cca9a023100b4c69469cbca10dfe7c41b9019b9f65c52f92be0785f140d649bf27ca31641d383f9518fcfeed95b8637eadb527556830302047c435bb500673065023100885f7a41603a941b433126d91296af8f78b49a2c1a64ca3a8bf749c60de768f7e255bd584538fb9b99d80556d62734130230212325896a67866b5c993a938a17b161469619baa907f307f43e4e07c267396fd025b6c2831eb63f6e56c696bd2098c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305f9dfbe7095aaf79287dfcc5c8a8ac01ef06d06498cbfd177fb4eb161b08ff5a6639e44679dc6b4286370794497bcaf0023015f2cb360e66a5ff0a13e37c2b99a8f66ce563f0ca5a5c64783a67c77cbc6f7f675cda5fa346b804a2f8d65c6cf10ef50302047c435bb500683066023100fd81a80d966f2fc16f5317e30164ab07d73ed67047263aac9d43bba0b5c34c07a954320ac48fe4ae1dab9c34fcbd870e02310094606a0f75c715be72eb6c023dd06b1eae095365c7850a8c784ce4b8295938f175a344a0cc0746d086ea92231945fd4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302502c6db3617e4259d7db83dcc842d94e22a9726b8469eb6c976182b57c1052d73ab3ebe25620052f265216c0cdf1cf202310098e19031a079d96e616a9db075d5e5158811a32df8939c975eebc0d542a986f902fe0e03485b2060bb63b65bc5424fa70302047c435bb500683066023100fe01a5ed3c7add849066b037a09f9cd7af1f1199494ceb8605d0159e6a5164273e2ecf6e8347aff1f084d876734206590231009b06cde5a869ae929f432b5d5bb678f7cc832b2f519cd9b2d7c1bbfb5f728a5a9c153b6609f0fddc8aff0e95485e8d440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f6502a5ee57b05cde976ef2a5b652fd31dfe264a3ef800b968b64ed2d2dc7b895f3f9b275ce32eb185c7a739a70540f023100ba7b64cbce32c6392d8537aec65bb4b3442f80147bd992160e40ffd346d63bee4d532f416deaa0566ff4db04d44b14c50302047c435bb500683066023100fb5e4bdd4d338bfd2dff502719b16fbc55e388a23abd2b62d6c78181eec8ce573c90f4628b107659c2b976a0d634f2f2023100909e8ec7dde68fa90c0652f3f7ba24cd64530a6637659060e561ca614f4705e92fc9f8db03a98ddf4453013eda9e0de40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7552853a7d8d9bd5f6b7dd7714861b84bf94e180c74bedcd8e0e29f9796173291380b7b9c4172278639aa927a9b7e10023100c6da775a6299632821b6888737212fb73545498a59765f8c2a8e29e2fbc30d37d902186ea11e31cbf93979b89502a65c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303be49b0b5adf124a107e3ebb053eaa575f2536c9372d7c9a7ec3ef5c8067f7d9264938ac315e78b497ad094c9c8a73320230195dd2b60b3d0b19085ecd0920a673071e9b65db89b2783b5caa2ae8de39efd580e8b74ec86c3447ba64b23d50b332f90302047c435bb500663064023019ea3be134d05d99a81680aa17bde48ab55105a6320a3bdf148bce48ed8f851569aa825cd2e72f347bc7bc18e6c5751502300da4764b67b6589baf903b0849c510d91e0be7d115a3efa2e5a70faaacb9cc7008701d35278e8b7ca89f1a701fbabcdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ab576538078be70724aa8ed086f9530e14164a01e1a8dc8fdb51eb088bb9576a8be64d38598c1cfb2c69286f38f11f7023100a8fc7364c7ef6f4a45cf2330825517a44956a72b5c57c81100babe63294ab2eeef07eb5dd12abef32951172d08747ccc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e60c8ac1d9704004bfd27fe7c82219a1d874f87d71ec0dc6b97ecfdd9d38f5f9a70de6ecc0833f8c1524539686f6b85023036f3a6d1df6a0c5802079a0bdbbcbd3d07e7d7be09e488aa9fd4dca72d6c487d570cb5af65a490c8b8c268edd6c726940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057c93bd5c05c7d0ea0b4711d4f075640f6ebbfa4f5128fe79dda4da5573c3ec8ca02e348bb3913b4558fb1fae7d7c86d023100c791865b62e9be195be7af86d342e119635635c5f5e7e52b117756640258fc2ca9fbb92a139858caea824b55b30896b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230512bd37e421d63be5cbabf0b30ab1275b6e2b61591863699de37e8a4604ea1ebcf0952b146e48d3eebc8e0aa0a4103b6023051f73e2648b012bc483e01839b31f620c1019e14aaa869ae8f0ba58bb04af2052aa20801f35d5b3081e504642f7ce1d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec97f382b91aaf6fb7cb0989aae2c4d8330e3192ad248caaec71348652e03e64646133058fda8d196c83f3e53102249c02305f6f8e44d50372eec517d97523b7722c104af668a6ff551538f1775c64ad38f5fd5efbc5b790298dbcc68b2a01d391140302047c435bb500673065023017f37ce3e1a14373db53c6236c581417413f439505c1ddbe37734b12e9ab7f4d1a711d6a9610859fb6ef7efb6144b5a0023100da38747f2ed3e01bc4865d628816d2006631a4f31f456454ad9665ef3d6b89c75b2bb097939c9efdac54641dcb551b900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d249a3f8a3fbb651c25859ebe6a5f5480b516a800394ff922d77f6bb3584777e6fd15bccd504c26e0e331588062551130230278d5c5dde2aa1680e12bd6432eec3fc460bce275dc695f20ca9ae0869e8779d606cd2518411772bb41c6731f02dc6d30302047c435bb500673065023100ed972024cc093a8034f9d790981628436f2cd2c40cedb372622c27e6c7d0c23c83640ea6b5db1329891ed87a4a2b48fd023054965b518fe9425ca7493242a116724293581cc929a3029843842d4f3108ab74c22472ba279e4103a4672fec612c4e0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bf9b0fc446b733f5e8384d6a2bb6bea82152f68b08362914c9085e2e516c788f539a88e4d2f874a53b1ceb2dcd26a840231009959e1a3e9ae442c9505989e9971891592b009d51739dbe0483b0291534beaf2796c2f5b220f4b2bd4c0f313d4ab49070302047c435bb500683066023100ab317b8e133e120fe5e8ebb933ccf0fba78d4876fa2098ee61169bf4a31858d4b48c5c16f850f78b31b9cb45aa632f44023100b95e8d98672f81578f34c8ca52c003ec4bdb5c8ddb4bd7000d51b9fa5b402c401522e66b140f9ba6b405f2aafb245e690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbd8b047eec1d6981a1b95768cee8bdc38ca8ad2a8c402f55bc759f67dcb9e3f4125f84ac0d2aabf62a23aecfb2eb65a023100c2a4cef65bf7399150e17238d2758ea0e10b1096e6f8a3f705206ce35e66cebb699b75f10e7615c05f74f16253ee8f630302047c435bb50067306502303296f3d87736366e542b5b300ccdd99114b0a0b83e823993f8fc53c7bb14b1b2c6e2d52d6b902da20ef5dbaee401a8c3023100e18ef8a033e3ec53b9fbde193e6d83a76f72882b4fd54a887d20026f174a257c4f6b752b6c4a045d5a6d707fe851dafb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100909b3189413a5088fedf436e0a6f76f505aa18de7d1553ffdd4ccd5e73ff7dc46539ba1a5549d54984a084e38f548a91023100f7e7747fff9f589860fcddf8534a0e66888a0bca99c70552ab400b14e0c461603aa77ecf437a014ad70db923633ee6a80302047c435bb500673065023100a3f4873908d6c328d06bd9784ffd608b3e25ef25dcc87390ab0e6e2c3675a5937d8cc68a793a2b0b30ba2eb89961ec9a0230659811aa910b3db5ccf76da403f0efa61c87743f04c8abb8554247e8cb012852889d70f2ec82ec57028c20642b2db0b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dfd74afae41cd5f2ddf99c5f133e3d4d4605892ebbf39847b9adfc98eacfda8521b13232bd3fa050340f73a731198226023010a882957696eff0db076217f1226060b62e547ba2ab8022c733008a3ff57f78fe62289ff28dacc4f18e331b5f268a150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c217b5db0e9331bc7fde47d19771b17d20a3559f6f6b94b20d8c31e262e5036e17add74a0cac5567d199494d72ea5a8b023100d7459b9d16ea96209667e173d61936030d43742e3cb1098b28755f43934852bdcb2a0532e3070ec5c8c81326f0ef82bf0302047c435bb50067306502301a1e4434a7aa267e75e39f1fca83d56a6b9e1f8a8cbcff70af86d4bf1a867987d8bb4e681dfa82cc9b33780345e5ba0102310092a9727ef6368416dc19c35cf619cda19d439ac89f8165d652089c76b8fdc79f87f94ff72c0f89d8d6524e2839a7e0170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f5c9722fd1daa33a507f29b0cf0109cacb711084990242d5a77775421dbc120cf5511ea99ca5813c09a0b02515714d50230170ee72bcff0061bcae2f3c9219f728d60b4b853e79c81037879b549eca1d5adf0e153196a53d8459823c2b3d34fd0300302047c435bb5006630640230595049ab556c78a11b094b01dd4b15c27956d1865ff13aea6fc47f07054616c478da761f6aa3a08e1d6b40e84a126e2c0230018dce25ccee5e802f16d1a43f28767336cf54be5090f3124c3c03ba2306ceab4137743a1b4a87e79dff23f51e9f8f920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e69bda272d449bdeafd46344fed8b8254f382bce01656815140b1b11f2465e076392580194caae37bea5a1022c584c4023034cac2837d55af83e38b249bdb1b11395a23e7f0744262fd9f1c1a6b8a073f5e1c3abe3c3b443b07a45cbb59e80a58550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c859fc75932dba32c6bcc30c84aa5025a5c581949c2ebb637478067a2e1a76383d434f9c834ff002fcbbbd8042d978490230791e2212f2ba4619c8eee5501bdbbf494d3c619b54812fe7f076e7984aeff55e360b45aa8c428ecc2c6dafc4fbbf4ec70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0aa19ff1a1819ec0fbb97232ebbe28556828a9abb2436c8bdab5ff16684cf0657c95e1734e0fe34f7c22ef0d28794fe023051dc6a9426c3a08cbac60d6bc7a88497855e7360af7349ff5bc3c366efd835eb44683cf898a55075df0227e93514dd780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d84977e1a8d50d889ec986984cc5a8e472cc7ec641a3d27b8d87db914555ee85737ce9c7822c6725092d09cc88dd254702310090fe55d444dd1c053f809cc627dcb4ae792c09851aba2bec8636e725a84aad15fa6729c847c37e36326a3d3147fa67f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1ab1501e41239d06d2785639539d852cd430e27ac985457258da3f673cbbaac06211b9d66ff064c2e27bd2fe2914b78023052d69d9fe0dab8da0cedd639c34fcb52073bfe767798b7a5864c34587872184bf780d4b7d6363188649253b76a793abe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d86e364c01ac76e33964cd7caf42775aa511d7abbe07b9bea4439797a13a016a95b57b04d21b6a72b53cb4785b3bd0d802300a0d640ee1cf4c7909b571dc96231f355c424f27c942ad3441c4f840b0b05fdff6508fc6e0620c42f9b149f3191a62610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f1f0cc3ec22a0214c5116ceffea129b9d034da12d013f7fe114cf4ead874306eed489abd332408625b5d4c1a685a00b023100a9a0391a4ecb4c42a2f1d5c077d48ece8391cc2b64ec2ab9ebff859bdd9652defb60f0ccbb5c3367d29e3018237fbbab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c5bd87f375191d649ff65511450f2b4de1121b4ec117de36a63142d378ad5901a8d697beee6c33e7f16c89f81cea948023040e1b815219766d0e6ef1c16850959215917ffcb7208c7c65e9380f99543711cd771942037785e7058e39df7162823a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f9d6f8d1d583056f32c905918de7a3121b526c4043f571cdbedb22f52612f98f05b9f6f2a40d66bd32a3d20fd9d2d4cc023100d8457d3941948e6083a68f45a5e18bdbdf9d73525892a3d32b636b945b27c9ddd1d328e9583177833d6755936d313cd60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f982ac7ac5429a5acf7d3fbae0d5ec2bbb03b7263249ec028e9a5c4ad216f17981e8e0382360ea3c37402781348c0c7023100e1d638e57fa3c7627a1dc07490e936c89a837663d44b40a476bdf61b2d0788378b40fa2eabc377d4cb2a7dd68e735b710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302fa01ef1c9f397f05dd93695405047f08f8707f1bb1f06d63992fce5e148f0b6030381ab4567e3cb0b3cbeff03e9990202305c5d3be1e69bdb6fb21d55d90478a0c77bffbd19474eb97875b37718746f6bc312936fc608d93e6341d623d9830c9d920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f228adc1f8e1d0714a597e746c2711926e8333cb2dcf1fc03f0c479331b086bd1952a9a9a67201c66ba1f78fc4f3688c02300d24bb686b8a43cfb3ba7b872ca4d3e4aae57b784175bbe247f58f1e9bfec88b283a78128fb72b11f46da8c2ca035c9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aaed1b32ff4fd2911742edfd541474b87068fc0cd06e7b06b8d22b75638afd74eff30e89400da73162d857c1352c49a9023100ff378ed305ee0bc0ac001dcfe028c94ce826f730fe7dd79152a8280c7a949a6a6f1c0f4055cb84fe9405a170a8b6b6120302047c435bb5006730650231008baad6c1ab4804fff86475d8da30f0d3ee238ff4e8f6832485e33d78e97505306267170bea3fd25dcb8e8e3d191ffb91023063982a45fb0227fb1915e419d1bcee4a29610dcc4b838803435b33136ffce66f998606bf49b1e328e657aa77b99bdcd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023001dfdf970a92fce312ff1c97a4ddb7ce4499148f1cb4c061e4cd7f1dec93515dce55785e23d64240bff8c48fda2c45e4023100d5d3f63e73a2a5caf01d45cea114417dbf4e811ad39fa7ee1a4648e9234578945f9e8711efe8f151a6c928f1561ea1ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf5b66b5da89b9ea7cfe4118aed63fe29bf2d065b791c33db6545b19e9d7d040dc4306427a9a4e9148b5e9c84e92641b0230363e59a2c119e63873e2fcc3dbc15aa59c2a37dd75faeab06de578db1a7e870eb94aa0ccf50c0a310261c4b3d7fcde990302047c435bb500673065023100e283fa2ffc568d672a34d1976715e724056b1bd2883ca6b585b8e2a37dd398f46b2b00793a65c94e9226a11a9809e09a02304b222d86df6969afefdc519b49235a4f13d35d5323c45194984c0873d58f6fea33131261ccd37fa923c13bdffbc43e930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f6bc4a1e8f0de4e023f7bf8468db658ac2f9074d3f337ded31da776e6c7c0b7d7424b87bd76e506301985abeb893040023036cbe1bc667f0470a98a89c67de1b2c4348662f3c50da9374281bcaebcb9720aba9db3022c1fc05d73405bb4731153ee0302047c435bb5006730650230053de194386fb5151c697c9e385fcbfa6dd1fe51d5cde8779f6f7df6a21c9fd0bf532e17457cb6c7ac4a4b14c63995d70231008c354c0a6d7783e00942d6880ec09c90eda00ea88a44329945723a3977149c5ced54cc0cd8da3edd9622d2145898c8440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec289467082230a0b0226070af21bc2d53686fd56fff1810720e1adb3f114a4f480db7bdb1b3845387dddf1daddb027a0231009556ade3ec3b2f7598d6a56d1e265ee444388baf61666c02e29f8dc46f6b0a376597ab71e82ff0c4c0faf3089caae3200302047c435bb500673065023028a5171dd6a8dea655238087202ff7ca8f9249624e896aad07317bd8447590aa435dc576b91750924f3a83ac0ccd8e1b023100a136f564343aa8b2ebaeca1b84edcfd75bf057331c7e78f2e287f36330c69c17b8bda38b76fa4e161e516c75cae530490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0edd70961663a269a6b25509d54e0028a673c88c917b7175a237a6b7169d6b51b70842f141fb5d674939eab4ccddf04023100bcea6d7e218d2269478ca6672d9d14fdd9cdfc3c4e85d781ebfcaca11f4a8126fb26658d3308c259f12fd583953fad8a0302047c435bb500663064023052149e58aa4c85d280ef13b507a88b89bd7e9acdd22ead4a991822cef9ee8e32ccaddbdfdad97797b46c4e366d75193d02307886ef3073f17cc0262aa0adba0cb8b5459f9b1c0185d4e5921958449733dfe40197756a24b1d4e346256fb5f4185fbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230386c799f0b19d8d2f6bc68de483a0ef79e15c85e9b7747163cf63db8fc7678a02ef360a78aff66bb9332f5238cdb306c02302a9432ac22ba44d222b1b2f4a93638dd626ca57524fb98a2186577db1f1a1101ed5bad4c7fdee5107b3576ac1bd4f2050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230527679f4f8f04e7e30b164ccc8e397c44b3eb2ba808483c387a03313531bfabad055bd4b7f8c1920b7a473edd258a53d023009e4661317846968a54c73afec295e316b4c4585b7b0e52540633df993fefc5c08c93a49fc7fbeb256d5b1f137efc9860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230746b9929a7ba25c535b69ed437ffe535f043b96a40dacd51fd7bb2a5c6b65cd1d8c1ceeb992d12514336533ad72dbf7202303977ead77014de85927b32d4b7ebcddd86252216231fb9467b26da781162b4217a0bfe242f0cfe8cf0bb8d45e4850ee00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230527679f4f8f04e7e30b164ccc8e397c44b3eb2ba808483c387a03313531bfabad055bd4b7f8c1920b7a473edd258a53d023009e4661317846968a54c73afec295e316b4c4585b7b0e52540633df993fefc5c08c93a49fc7fbeb256d5b1f137efc9860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304728dcc105321690370093e71db9e3f83d10b1e6d56a5536b0ef028fdc877867c07b9af138a101552f45be70d564e04402310084f1d70db3b17e20325cc3c80d33cd9446c8590d692ed895abb6f6f1d0307f5e44d28fba7c096672411093769d10f3cb0302047c435bb5006630640230662d49e198eb5133e5e874bd442281fb4a2b84591ca1c7fec183b8c5b023b7fdba2a829df367e6af6870227eaf67f99c02307297411b4f9a15e2405afda1942db76ffe6412a64bd0a7e95805f3059a73dbad0a58346fc048799a9a4ab3b755dbb7640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fd5a84467ad4baf7ae42f800f932e3be884fda3f17c0b43b9b8681e20365e97eec72c7c14ce600d4196767e3c9a5b840230420711ba5a0df89ccfc9249d082933883077d350e336cbb22bce3f73fed5f3d5b1d9abec8c5d1f67caff49ad9f1be91b0302047c435bb500673065023100982766bf8b1208a43ee95ca612d7773d9d639649fda8869cc831a2e5889344d3d123839124263bfbc1cf16899b8450ee02306eda547e72279064101aa0d0584b7b2a0def2b8861b2716451930b1b67c809b2c5acb2298450b86b4f542cfc1d94d93e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e0a2bafacca6e62daabcc7d352e21c0069ec5c9fc29dc3a66c26331fd924333e6ac1561b55b9053f11da99c177a7385023100e0b8938437f2aa14342678f3cce88e65a35477078c14714e3495c9c643233acdf1011d64b9621f276c1315d9cbd9c50d0302047c435bb50067306502304058c77f283e86bd2b113480228a0a6eea9e24b090463b911f87f308fb6bd1ff9e7ca1f647bb2bcc90721b29f1899ecc023100a918f2876d162293be728c151316176efd7c3542d2baa7cc8893e20b3745cf3d14a3f55d76cd5df0510921cb9cb1a37a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023062f9ff8649c86a629517b0544cd3c25076666360f04412c9951cea1bbbd37397bda7dcd65ea278495a343e84878a60a402310094dcba6acc188998287278bf9f3a32d9bec81c7f5386174e21cc79f9650b46350343dff093dc3f560f6d75963851627c0302047c435bb500673065023100b9a42ca21c7554193092baf110cdb53c5f39551fa7e4b82e637ec2f59338e39b04bf1f152de5a53fc14e73ee35a007fc02304301d4190e5e8ebf0f5f8adf84f2907f350494cf66ffaa083d5cf8c0f7e51d06ff3f4c77a0a6817ac74938fa510826140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230059e5ccf3e261e6c5b6d3282ff7f59a311e289778b9138f503eeed642958ee4c07e7445f157e56f4d1885d72256475de023100950b8dead0e065d920ece680a690f6edcf21c637fe8a6bb7ca22b15a55a5e6b5284419a9ac11179be87e59ada441bbb70302047c435bb500683066023100aec389d260ada176c6a497cfaa4e76897f33a3c6eeb322450d2d8f2d8148123e6b38c411453848187751d80aaecf49e20231008cb885901934d6dc7c4eeff6dd931307d74a6a1541123857ad6a6ed12b29beeb31e75f9bd925068e85480f99f2b157cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066faa2ca7b09e4820f60ea44a7ed9b35f677092d511b695c73c2908bb17cad4db2b35b94ff89499e19871f28bb36600e023024f3c91252c6ccadea2ed00e594879489ff92d4725a619cf7b6a6e420c12739872268013f3e2360b99dd63eb70eb9d290302047c435bb50067306502303b321ceeee9802ca28dc02dee1f6b720596070db52404bab921b1fa3acccb05eb599ca67f080b6abb7af1ac15f16d1d2023100dd1f1d72c45f3b60e169cb4f31e44ded152eb73fcf790952a9fe32b9b5278b056d4ab6c616938c36fb831ae8a46a161f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1cc060919c2cee50d35ee90d48ef17a3464c63fa33641be61b1eb1a1d09173154886dae73c5600fa0644060d706828a023100df0c8e7adcbc0058eb197501e170d416a3764452ed57b7a25dfcac4fbeebe5a2c313dcd81d238f98d678f7905fa1d92e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306dda923f26522c6176e30b9db6f90a8082b02e30ff855928e7c337a58d11f559635ea5b77d3edbf0a36ab9cb5859cfce0231009e7dc1dce066653f91f4667d4340f0dc009d2ecdc48637497d49c2c8a3280afd6e3efad2c6f7e3fc797919c9672fdc5f0302047c435bb500663064023002b08c40600510e83b23ad7ecc80551efa3096f64f3bae085f4b4884767ce7d585676cc1b8b0895d1d3a9101e21d006702301f3ff8ddc2e39ec0d6fc5e4a6de170593ab0c81279fb848e107f01d84fa4071fac810d9496f4c37e58744d496b7cddf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c9abf71c5e69d6792643490d48bd1f429b722876a0f1197dba557acad75b275c8994425fe27c1d0d061f86af1266c69302303e2abee39c22771532a6260ff21d8ce602ff86030f02ab3f66c043b294b169ffaf89b4b6071ad1c88e4e6bb02c3308530302047c435bb500673065023068058fe2a8b8befa5662ca8a545437f6cc34270824892453da3ad53730074067c730647e9d7268290c5d8f38102aef1b023100804233fb8ba0fe12a7a9e5299e06b5108aa8b47794a7b3d9a28fdb5bcc17d78552e2b7dd4cdb5a74c935fee08e679b710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e9df9bf92caf297fb9336e756edfaf46281bf99f0e6c1378670a93d9bea1e4cda84a82e4f7131978ff60a1cd4e099245023079b86b80fc7772ebe5ca5062aa40ed84ac2839438d1e3f3a2835b5b4cb1825dc1e97b719e35b4524ffe5351ee48ecb250302047c435bb500663064023045f2086df5182329be19f6d120aea3ea5674eb42cd2d0616a201a46dcec0395a15c830058a349d315dcd8cdf1e37c8c9023065d1c33357e40d167148b73a689b7c2268d2e13e3c26024f69099668e0fb16c4bd40733d9892e489b436f83389a295030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ba75e6807e78442d734e8f5406019467b35abb66017d7fc521ee4a25e180ed2dc25cd5377042656bf7955dda5d847860230093912c663f028539c1505b49127daccf787894f71775bdc4c7fc744f01676e31204afd55c9e90c978c2abb3c80ecd9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230094cd14102054184c7d1376cc16399f20c8ed349c667fac8b2e4c923e7445a8047bcc68513146bb23ea54374cc26949b02305d8ef2ff2eec79709d346dbaad0193d827116a0466ef9603a33055f5eb09d347414f23f2aa1d48cda6efc97e72882ff50302047c435bb500673065023100fbc1f3cf66bf3ea0a8aed446929a0a1571460bcd091e84d970b605a3739c3168e1ffd2a44aaaf09bc0abafdfdd6f066c0230407a84c4f82ec127840d1a09a7d36093fc6c45130107b8579cd7e031611a2f9d27e475a0da27facecc897485b1eb40eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e25310615711e3030c982e74888db044f734060aa097b54dafaff2dc68e4c6dece8b014213d39b942e8d6d76f1b34fc5023100b8bd728a355b5d7ca1a65b1c773fbf778eefaccbe646fa5423ec095b4e02be34ae96caef29f114c49bc5704794ffd8be0302047c435bb50067306502303e2abeac0f944e01d48734755ad24eef5c3c8b6acba4a45c47bfa83b72a45f24789ae1a9d8653c57d68068e585714d0d023100d4d587e8af2875eed96876b97d83b4f8ac7b3785b928818c4f99b8c78768432a55b542f5949d02dd5717c7e4387d12600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1e60240cbbc4345fb16fa2a607d5acee81e36555f545f70d2533272a0f0ec5903db5c774be239369a54b3b3dd7c7410023029d2eaaec1de229d187dbc6ffe5c18e070b7bd99abddd0d836652e415a2ecb7360a3c8e841836f5d0b1a79b629a0a1520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbdc29dfd8afc081a25e62a1b02750d89b5929643ec942bc6ec951779dc5e4a6543c453c2b3ae442736fdfb782307d14023100c649dbc1ca1667037737bbf27463fe149d30d687fe0ccf3fc1d00fe612551e0a78486dbb6f97e16eca4b37f223a59be60302047c435bb50067306502310099fbdc46f64774cf38f8170e26398e8dc914b7a13525b688a5428525639aa2fc923982a05712ad5d3df9d7125897b086023003215dac9a750d47c7082851b2d6c994b035f46e1ef5239a08077508b4c01162a690c49199c6dacb90a24a19bf34d3bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f03f2d288247095508480cc318d93afca5a42a17241cc5bc6b0fb8799485ac9f52353027a2b55c1707c804e2b5d640602306bdc4c1fb648725570c1942027c280252e4ccf5048ddf45d7f4d5bf3b487ceaeabb614ee4a1b4308757e570558cd984d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107649714cdaec2293741dfdc41607b6c6846e0c8074ea9994f14abd262bc301bc149a0a5bc8c78fe7a6186a55311de9023100a18c437c8a9bef790a2cb718a371a04f9892c72ae430bcf719f14b9268151e9d1385da4b47f2af91c4a1f76f121d8c430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ddb450f47aa73afeeb40cafaf9a0c330913d97e1cfed7fb2ce5ea31f19694311ba395bf6d21e720a82cd8c85ebedd5902305e34a57020ce879fc2ae84b25e7325563d841114ac9c0e099a2ed8ac2531bf1e40bca4c9f9c93fcb0f9ab7ce27aeacca0302047c435bb50066306402302c3f96c2653c340aafc319dc4439b6b70609f0c82f5b105998867fe7e99879addf042a28ae47a189ac06e50bb669dcf502306c4d981c903e7e86be6aec64a2f72a668554c64ac7478de2f413030984b7a3a3a6dfd34075d20c3b4bf1c3515731449e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a32d838fc18e7be5f25c6e7c7da354da87975a94a63650ee6f86e178d83464cbd6b8be7fb324b5e0cb57aaa303b9f656023100ee5e1b29592e94a93dacc848f8fd695f9affdc481edb7ce01d690ecacb6219a61f8a7f4fdc482c1030de2325e722cf2d0302047c435bb5006730650231008fe511ca072ad7399e91877f8f4eef9341c9d79323fd1ba255b223db2997643f57a773e4e9cbdb4f703448384e227d0f02306879a297602d0e16b793ba490ec165f4c763b41ca337f983f018cb692b410db71d6c2e723f2e0b1ead4ec7efa43967370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026ed7db7e80f598b3042476e29477723e36b3b9b9b75e08ce572e16438a6ee5cf0b58c288629e6d21a444e9c35d34e8902301dcdccb0d8eea4c07ff61865e2a6060ce4111c6b81bafe74d4b4484107f6308558df7eca58ca5cc4d0bdb082d8838eb70302047c435bb50066306402302d164de02c571e51fa36d6beb84e6ad571dfdf4ed4cef0bb9378a38aab97139e7794ff74489752127436ef7f85ee31ef0230413fcc851e5264e784785ae771f580ed53b65dd9021ad09a4117af3298b66efe54dc480d4f5bb3177dde12801e2333120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a44cb44ba66c300307fc9a8f9e88024ff3a75d0ec115ccbb51e7444a391071435232f2b4fcc49ac6e9c77c9f692952c02302951c62c6bea1277064f643bcafaadccae658243ef2232fa351c78fb546587154b8555b442e5a47486bbd62a747585a10302047c435bb50066306402304f500d0d12a34077440888aa81742cd306739272f3e86068ee562ec6a7a92c72d6f647c3c32473642f78ca398e9dcac80230740b96f078120dc699fae8b65af65a4fa1ea435d65f5d74498fd82dffc0d38dd08b9ee22bc76a55d4944eac10156b4dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d41154bb7c11374b2fe64a2ba8e0a142bd18243f638d4ffc18e04949c56c5473903cf513b2673ef5956d7f9cd1e824d3023100a320285203c4908086da0df0864160770a301412bb613fad7019e6921e289ac78abd579576067c01d202f7bea3c8b97a0302047c435bb5006730650230231984efd6e36c30ec8c6d74fa5cd298912167f6d9ef647022ac20a59bed0aac26b8c761ae430775f8ac13c27da03941023100d22644e5c989acc600ad82714e0777039445c6ffd54aaa58cada81e97583c152abb78ea5f0a1153338fd4904ed0e9cdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f33853d9b6b2b2a6e57af7f85df2de74289d4fe93869ce717d65d39ad45153b32a6a7405271bb72f8e856e093f43fab023100b19712dc81d535d12ff2e58966cb20ab5e04590969816c83935d7a393542447fc3eafd24c52ef8223155889eb858b5080302047c435bb50067306502306dcee081b08875307d314ba6459e89a93d2aa11e26e06077f67f3ab16102061514b0011d0887f844ee4847739af3abb7023100960e36fbcf84c2ac59a759f1f940c9601c35cf0b3bd62e9be25dbc8b47957c93fd7eb50b9c163ac7426fc21108f259030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023071acc4c55cf80e4d74bac686c979a0e11a43b374ebd8b4e827eec39e7c622aa02bc0f3a73c74a3d3b3763f9fa5be4a3802302f4ac376625d26eb93b4e7542b0ae5eaedb9a6ccb7cbd62e4e71c4f7d1c9d5badaa5c79ae3283add3fbc6f1d82007ae10302047c435bb500683066023100be60f82e7c4ae8fd0915e0a165eb2f3e181c72c9e996d89002de2ddf5367a0581b642ab1833dde43bcf225ba84c6ffb90231008825e3a6f0412ac0d7e48585f695df58442d42642e74a94ba60a0d05afff2fa7cc6551c0274a5de56aab4f6f074ac6870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cbd4673c36c8d6502b23af1e3ba4c0c50f9da9cc81e0f4d0329bcba8963915fd0971a1857a3299e688597a68bc44cc6e023100d770e234f4de92f28d696c31e2b4496b09023b1b11216807fb52dbec80ac87706a76c9d4354bae9b962d190d6d69b8d00302047c435bb5006630640230037fc0bf4f7cdce52fcd8e4dbdf3f25e19f476a8964f1f5e1a8a04a830cd03d479215ded948cbedee03d6b2806660992023040509fc80e0fbbd3b3035d29f64ccb30daae444f9aeb2aa7617ef28af9932543985a1e82f79f00c2fe91c79498b244e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b0f0c04b0e6f753dafea40c3a6cb06b1180c29f2224909335c417f2dbdc43fc6788f3d28f7b5ddfcc5939b453e765da5023100b6ed08aa7102245daf4426447ecc173178c01c073652726923311de82318ca2d3f1a07695e6fba1239dbb7cb8b26b2d50302047c435bb50067306502310093b76be2aafdb14f25c992fabf3e34d4c8c97a1acbc433924a98b89827df04a34c59c086f7173462fa16ff693842161b023043e79d2d36229223eb34aee1a4f1e3818b1d716bc9ce681fb58a8889fdb915e4c69d850e21ce0cb0c4d6c7c3ed633a370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300628336d3b259ff61de8348a4b01348ce1b58ea9090da3d85a9b7c3ddf727acf640821f04d530fb5c5dfe8d08e52831d023100fd17165cacad99f8cbcdaf147de7ae78233221c62a0bc41db4449a1804f8c0df28343f7c4af0760b22335cd6ffafc4780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300efd402416a3290e51841c79309c04e898ecdc9d4bb69874e26364db06e6053beae95e2fd809b35297bc8a52ca081428023100f0b670bf50ce26797caa162cbb0a0cd1c2197532ebc76970269fe437fea51d9381aed6fd9081059480f901325d393bfb0302047c435bb5006630640230581a80f47bd0c2c49668deac54574ca6e947a8a5566dc19613a31aabc1ba429336123a43b99dd37233033863cce000a802300255a23a2ab3b3cd6e314b6b0d41d4d8846a53d6e2f5eabd9049d23a7954fd76b0b3fab483b44bcd75d9a3ecf67a8b2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea7f4738c499eb8e144ce719a3ffe3b4262071631178bc12f46c5172b899851225572fad955909456ffbfb240c81144023100e78fae629d066da4d14f44e6f7d75b44744766d6fc6327c7f6139e948bbed3e59a8647f7961cc099a269ede3fe246a270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306648011570a7dae32ee53967b968af374e0318c8fb0fcc6d51a3c0c56dad680b8b5d7022eff69de006ceeedfa4ec70c4023100912738068e9af069c3c3554af6d7ba16066dfece9c592ab67aa9d00881b16ff54d452b3c0e596d27c1b5d7dcd293b4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100882b6b82c812597d17b0910909282f61b6c609a735de693262fa8655bf8d1d06cf7ebbb2f24957ddfad7643d502786ed023100c97fee74889a951f277361630d6176494dc30ecc75faeb9c0d73d2b00aefb8dbd69c518813ef5afa19c9258d170b59e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f74e9f5763376adef6c455565674ed1636c9f5b03dfe02ef6bb7e0601e6b47c8291794fd356f182e72d534aaa4b2fd9023100b8815e6074b247624cbfa08bd52e40a408c869172c57f48c1c305cecb37c40bfcd61be14ccf945193c2adb0d03a828bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efacf5cbcbfbe4464b0e6c96fe5ce3b26104eb12c1f21ee976040af820eb924d291e4c07c5779f22e47289db850ca93b023068e3b46e7ad37757a0ec9755cd57b5b672b426c1c852b8f9334cd5c6ba02deef2365f812c9ebbbf82413fe8c36dc03710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100985d1e7013a70caf983564792cc210db057feb62f1c30ba03d695001f6b5247f7e1796768f67e0daa80381c4156d39a102300773188bf1dacf5370d5f0cf4b2e692d7816c2b89c8b3f4d48e1c1b0b7aca8c009d2e2eb6df2244c4a457ea76b0e5e5e0302047c435bb50067306502301deba1bb9e9388d429efe6388d81c098f3aa210fe8334c32484088f8a8878029c68ab078a2680c49c872a9c29265534b023100c65c8efa1cbc5b15ba6f5f63529938c9cb5961a8a868aa8b17bef9001b4832488cea560864343b89387416705ede1dd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e8b0c831541318aeb3383dd10efc0d9080a5000370a1b13ad3b4df592e28ad6568ba02bfdcdaa96dd92b7f9e68df2b56023100b79e679c0e5490492d504c74d97c43d02e67681e95a7f444229a922a52ba7b37e2ace34a2c04551d273e481f045f2bfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4f6b9a37128c00acbdf5eb2888e7e5256cc72ae1e41f6c5a967d4602f9adf9d5ab4f3a39f69910a09238cb9ee175f8b02305c383b1fb7aa648e65ce3683df185370a036cc4fa27f6c3675a4ed5a2675e627823929455fe906a51a289e24a725db390302047c435bb50066306402306a2aca995a4d5e073e1ef98390e524e06c8bfbe5003fda765e4114c01052349b39d10c6e6d1a866368e9ff9edaab4fb502303506705ddbd3486eddc07ef2fe3da63445146219109f9c759da7f8a7a3432d2cae99fde9765ba9727573e8d357f5aaa20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd06bca2f9149b66e4bbd619a70fb6f624f7152ecabee837ffc46d6144cf041ccaf82daafe3d4851140779d87d9900e60230596d880221b4a6c6af5803e4bd3058b7c1752e3f9a06a1c7982a35f2f1e1df1ee5fc6f6b79d0fed199d629fe2d893fca0302047c435bb500683066023100ef43fd854c215b12e03c9d99d22329296f32fe06f3da62c26847ce41f3704c7009115331f6ed2577b6068a33a0b2d3c6023100aa97a21a3cac18ef0e3e03669de71623dd30b6182afcf696ed5855a854e338cfe2d3aedd4eaca6e34514d20555e23ad90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8df2f3251f8ac7f70b667bcd1d9cf0e82baf7ddc27578c01867b73d0992157bc123cda3bdfd2a3a23125f15d246cb9502310095694ec10df9ecce05d8cc94932d51cf7f5cfa2e75d266bfa5ad51a83bfccd9311c2e0fd5a569c419faf7482a55a73020302047c435bb500663064023100fe5bc83f30744458316c99bc2f754ce6cea7836d443583cc7efb66d168e95fc895078cfb3f7d63ea8a3a93e30d4e4f1a022f724e82d67be83957fcb6eb63366f63bca75e6e50cdd23b5972cb89e8de1f1d36866531bd8bae610e1f7fb51ae4a9b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230226667098b55ca2f03ef3ae03b816cc4cb933ce8871cbbda90665d71bf433cbaf2bf14ef972d74342b9dfee21fb1ed11023070ad971a092f446a4e9c613fc49ab75b9d2578bb775626c3e0cb7ca80f042236a44f7ee418b0b5554daafb39fa7258100302047c435bb50066306402303d6a95490164fedacead90851a19e3347a2aeef2ea6f26f2a4658a3a7ebaa8b82504261ac36d4704d505619394fbd0ac02302fc7ec4cdc4c8139af53e1705870799afa3521e3e1977a776b2f222b806f80d4040ca486a02150c6e4d605aa82aee6da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cad0b8b0909e32db614fa5c3ed3d3dff67080f44bc1888a805e8c601cda3a13a23b12b875b215014b18aec89dcc82c93023100b3c39f8eeac75201f3bcec1ee924d78adab18b6a620098efb5695897452c73fefb29e06438cd95f5987587bf440d4d5a0302047c435bb500663064023040956766c995df938b9ce7b97b6423d54ab5bfc9babd3922289317dc8e2b368c6d4904858a80585bb65d54d137081a15023034665a8db05837f2d97b7ecc60c40b62b9b8b00ea979eb7eb5e2c63b5c90d62f18261d37ff7638655ac767032ccbd91f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023070c93d0280d5fd2601ed81cccb456ec161711c2d408936a45bc820eb7e436812b14facc4064638d874d9794a1d9db4fb0230277e4e60cf0258987ed298524cef2a9511e336860fc4cffcda78524c4bbc6978be079b2e7ea6398c2ec2692cff5907ab0302047c435bb5006730650231009bbc81c68d5c69a8d71412aaa0582924c9ddb1e7d31d8759563a837b3d1d6120c01e9ad674b1f2e55b7d5b5316759e4c0230138ee83f416612a2c778a51ccd7d7d22288e817b18a4ff7dfde250fe923236a5c18c5de29a7bea9793473672db4cc7440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e607bb7100a04a78a7fadd8b27be95d0fa2451672f65c690283f927c64f52307e9077047bb273a1d5280b902c77b6fcc02310096d25e00da7a9c2e7d8d4953d787356c136d7c857102b6214a9ca5153d4299bb7f8cda53c46dd88c7b270e183d919bfe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a6451eb37dcbd1ead46547144eb24f9fb891ee9bb893549031eb10bac973916e918ea63cc6bd45f1a24b04d2b12ea3402303ed43530abf474de3377340a8b8f0b5983aa217cc71a82cb73392bc2ccc8e04a577bb99490a8169dcaf2dccd0ac100050302047c435bb50067306502301834a84a7f49387493ab1b67c9c799eddd9c4a729a8805cc5c346c65cc3783b7417d3cad08320a042abafdd71abd01c3023100f75ec757ab4afd89bd4b8189201363f356b68c4122e3e07bc5b67469c1511122c5b4f13d0b1e35195e5c744e108c8cee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009efcf88a5d399fff2ac3d046bb687b6b17fb933bda3b140b559a4deac0ad9e90737a64675115d408f512a004076ba77e02301b85abc4c47166d6a479c20f5baea2f76f88902ba7644c301af65d9971bd9559f71c1bc53f38ed4f11919dc2ddff87140302047c435bb500683066023100851c9e49720678714a1f74b3f42ce66fc7c4b3b240f27e30921b7650265329275eb239e5a19716537e3d7de92c710505023100f1ce08efed53698e053797d6769932f52a0e3c12f9ba810e5fc49240c1c6ff964d3b0757a2de490013a20d6579430a7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5f62327524505f4e67c68ccc6585fbe5572cb4a92643ed87afcc4d68ceb9ee7a6a42ddfc150de875ff8a7fd3f62bbc802301401fd98571eb318cc4388d7af02a170151bfcab0de4a3ff5354403d40e6a7582abf1fc4a5fe1a97273c0ff5c3f052230302047c435bb5006730650230280ea9674e2efb17caadbaf11a2db3e77ab3c48834412cec63a60963b3d8e4cc8218a4ebc54f02f8bb7fffcbd9c81eaa023100c80b5a392cb28a9850f435dbc423ff1a5fb310958c632e5c72d3f23eb7ad46b10f4d5fb574bff38f06f6708bf9815a370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028b60fd10419aeda900b67ed0875dd5b8df004084d822dc6196b57ef681dd7e239cb69ba0006158faf6e5e3b1da4e0e3023100d383d4270acd431a954c49cd1f129e95685ef8c4a89c34f060af71155423c22e99d3ff95b19b017ed56cf09d7626f9350302047c435bb500673065023054e06e052f3d0f6fbcd949e82e93a9799d0313b84b69b9a3d1957218d46729baf5269ad3172f2c64536f7099c489962d023100c052e74d2c9233535fce1427025df9402b06995cba81aecafc955400a53b994a1b9b7e65c7c78cd90a9c43f5fa8f14660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a86b7734a985757d75687e4f98f159f4648744e539eaaac13e579f9d60d991cbcfda41dadfed981a0e2063bc0d5a6593023050569432b54e07d36d04f1105b596ce4115ae8b6c9815d63d7a7dbfab188296987be6542751cfbb74a222e78525cb7810302047c435bb5006730650231008802c475275362bbf43d8539c81bcb7cf3de018ab146c0535913cd7fe113c9d53a345a237080228874d9f7de99d6fbb002306e793b0669703373c953b8d94c4a345fa104e90b82daae8b97939f1887c6a9f811a37b794de09c92715e45c3d3e6b52d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e2f465d84fc4fddafa7f4134e312029a9376d5dd2c7bddd989eb1a745dc586e5938e788b7c4586b223404302db0ac04c02301a7fa848bf7b6f30b751b072850afc083f4d24648fa967a1bd9affce4dc5a5ed818085ef75027abc8e9ab0e41b102b590302047c435bb500683066023100cd0cb1c4792851889a92d4c0bf839daf89ae13a55517f8941ab960c96b46176aa9f6783192b59fad787a84aa9bfb55f9023100a3bf872bdb6506b921c6d488fbe6b2d86c174197faa0320ba579362e3c69bcf9a90987a5c1355273e0b51e7888eb52720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029b548e037b2eb780c4fb5d69beb5efec1d2a3f50a74a73a74e761975e65bf42be2fefd615c542bb263287471122a688023077c537a20ae39af034a404c728649ffc122730f2b89b7e6b1c4a4a8c5e7a486ec7fd0392860ad18a7102c9fc4502c9830302047c435bb50066306402301db01eae73fc5898a9486d37b10596421d27546533e54a934338f60bf9c8b51fc2a79b30ec1adaf25236eae66c41be6202300dac7fad07cdd0602e71577e34f95a1a2a30ffec21f4dcdc28e1bf8d68b1784626b8bebd8dfe8c51e5291aeaadf09a8f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e50f546b2b09bb7e220af5163cbcd38f72a7c8dd50485fbcc1cf5de3630141d2d5056948954f588c4f1f379ba6df854023100ee8c2c9eed036bb897d61dcead18a0db19f1e0d75eee7fc49789a34cfba69c4c897241212db6ca7c8609548cb94473620302047c435bb500683066023100c00370916f71986c9cf379e873729e25ca3e7b4646d9dc01c5ae86bdf88d9818750d994bb9980c36267c8a7d6c1cda19023100af29c20edbe7bd56eb6542e03bc68a10dc68698a818f8350cf2d709a47227b5bc8af47aae39d3931644360b4dafda2960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015b014b366fac95f7013707b2929bd880b14376979cd570257cb35305db03ef34e3ce3aed64d5be36cef9ca2483735c9023100beff4c8eac1eb4d092ce45b19adbf4702059577e87cf0b585a4aae03add6f30e452398f5d5566527d93be9d8bac02a1f0302047c435bb500673065023061f4b60b93b8d69bcd868eef136a1d77b3e6b9dec5cd4515ddbfa0e34d970939559bec2589b2553787dfcace4a0801f9023100964d6767175b98f1ef961d88137cf72a24fdc3bdd56429f9c4331a7bc2f75b8e9fbcb8f308321bf6e238bcf6abd315120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036fedd3571d7e5784eab5458a2556287f50ff6fa2d8af28ad706f87f06697294440d02ac654930693d6de0a1a1c0e19702310097519fbc896d7230cc2a5aa1f1d358cc7c4aa4a1aff3ebde87b23d05c0bca20bef24e495028ffb292a2bc833620288ab0302047c435bb5006830660231008ef4ed3c40abe98fa7264f12f77b63b5980b054accf5603004fc75dd1d76e3e42700b660a32f544c102714fa8ebb421a02310099c9f2596f548c98a4674f18a13ea791899b43379cf49ad2fa085eab3302a2cdb7ac51f493903760aad1080da58e8d320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028d0cd6e8489d8a2bdf05524308427592d77ab8d3ac0e7a887d4c9b395a284ceefe73e152c0f3920ea7b1b9175ac66e30231009a50607a6d2b588f13cf2926704884b4bf5a6ec5ec0e08747e9bb8d7640d072b30b848616100204d916b1774e7b992460302047c435bb500673065023100a5cbfa2ece70459b61c4391c164ba1470aff764c5a477fba618615f5a9ea4aa8f53900f469843f4c18c7ddc7acd3f10e0230726e324c2af7cc557191d590e07d8f4082920eb7cbbbbcaec47d14300755ed6e9aa3030c9eb7aeced3316749e88515000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecb12cc08c3b488e6f624c89118c4846c41f464b315b0764deec6469416c683c7777f8d0d02c38dab5a5f5239a8851aa023100efc6d933c272d000c14c0e5ee67ccd57908bd182550beea2792b7f6c1fd9828c4472cec7db1db3ff0753f9c86f2df5400302047c435bb5006830660231009e14009792762d26a9aac594723a399d1829372cda368ebd8f4f13f13dc5e517ec3109497391fa3b55435f175fcae30402310091e57acc39c9f29cb5e45bbbe9fb73325208d6d60817f8ea609f273f19b12b766919213ab7872a38bf4c3d00120ad54d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4e34e9af3c8c36222f6c3cdd3ca7311fdf122ec70b3d6a410727d0a0b9e07745b9e47e498fc7507525dd95809b01dc4023100e7074a59e59b28846c61cdbf4949a177ffa80920468460c7b82ba3e058ba4f67e280d82799b8a941420cccc5c6aebb860302047c435bb5006730650230208a73fd1719a6b268f407765ac5f70f932f6cc08338f331615b9230554c7b63c761850ac275e5b3cab3560ccc75b26e0231008e9bcd6ae2f8e837c3703121fbd6be1210d20346b640e6d07ad0ac0d99a06e116c9a1268b4abeed82a3f7d80f7df33080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230588f7ba5e889b9c016056010831c8bc8a6cb74d6ec5dad890c853f0d47cc7892a4f1b71dd5d8988ca3996ab55d221b9702305009006558fc81b5b60bdb1882a7cd48311973db35418b8b944eb707386443fa970528098a443b913e4c06d4dcdb5dda0302047c435bb500673065023100a8821be13deea2b475da3e635868e65c14bab49e880857a9ea923df35513483d9fc15c8c5885d0993e334b0b6c1d6aa2023018ebe27ef282ea738585629986d4255313f174382433e6aff6ccf4113e38a0664cf9d8ac7b5c4ea7817b2d88f218bfa60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300bfe1917e78461bdf97e0103124fa6b827b9c1962ad7a2a13744135b5dbfb3858cf9e697919d5d2ab61edb2609a7f25e023026958a457a6fc15084dfdb64b0e7aa1bb832752310b2c1c0d5c5de295de3423f8452ca1af11720fbc94e2a458fe751f30302047c435bb500683066023100a31698542c5e9cee613a553cf149ffd3b67a646a1b4e2d21500ca5458d137bf5f5e0013139e2bde739639db8e2ebcf98023100fd7e406ba636a2006e55c2261ef07a3db7a283f39b322ee45c907f6e5e911291d6c10d186993f14a876c1d061c65b3030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b26a36b3dabb9b15592967d8f4e946186a9f292586e2b102bc064d96aa6a7a1c636d6d77964f254fdaaaf0e5ca3067fc023061d94f5b1bb7e5fb015ff7aa41f7ff82d237bc553df5b50590f40780d13078d9beda9d76b0af1f7d523af04a660ac0a90302047c435bb50066306402301667f018f95ab0261332ce367f2d87a96c1ce10bcbdae74f72c5cbb2c5191244fc437836c76340db43e250aa2e8112450230377f2d76fc465bb9503e6616d9786998536b70cb1e1f08c0dc9e1ed925e9f17caf55739ad4b4488acb7fde6a2827bd180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4d8cd34191fcf5c3c9f91139194b3c43de07f5344613fe875f69f269a7c23891f64b010ba6cc1ab0cd6012b3435d731023068d1d05d8128af25ea64bb4b44c38a0e72f0c0f5cc5dc21ea75cba4d415e2d7c537d69b54eb6949ec39911b4a0c28b130302047c435bb500673065023100f689e97134dedc4540ea9971957cef81d71670f8c295addeeec494c4a486f87e6a5e8dc49dc6e690f9b3da7f7386e56d02306eae2a3d6930685fc9b718990c3cdbe3b67269f6bf5304a79eb0199bf30f3f8973de62600e566241b74c7c6a34c1b2ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b75dc3e125a3654003c3df1e46c4ce78d2a77071475673dfec778a8960a8361e9e2c4bd894d85f1bcaf8bf25cfc48eb002303d356fd780097496298a3f91178470ab5016797762ee810720e6720f1f6586a34f7061628b0c39fd21b719c8bfdaa11a0302047c435bb500673065023100c96af927de39a8b21b1f1cee12cda743c42514a1e9f6eecf332ff5ebe3731333923138153af6c78ef906ee8cd0c89d290230354727455520abd824f5aa7cb03087c89e469d57601277b036035085dd4bd735d79820d833dd0dc064429f9fccbb0de60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023007c7e157ac18234c73a4c5e330de690b4892cb619113ae5b4249af20a12edfb70c0b018be669e620e237938994ca31cb023032ee571129b4cdcd31555403a58d178cc3598f3247cc7176426a3cc283bed72b12d570535800e616347937ace874d9410302047c435bb500683066023100ef04526b07d0f0752430f765aa13a1298cbf08303b0f3dbd7c2607959e09dd24c9e473403eff554a4a36c2e19b431e5e023100a53926ebe0aad11f3dbeb2b9563086dbac38f2094323c7fdeacc7f70948075137cc7ced817ebabb75b0c3f39607816870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ff097191a9864622403eeb372e5d1951c4f197fbb6d99b7933e84e6346cd0241e2dcf8043b2014cddf04529760c8d43f0231009b63f938667994db73866626fec3efdfc1d74780fff10f250d0fc981cbb1881a15495c4f3f356c84b402a21c0dc7a4d90302047c435bb500673065023100bfc3409e7fc83fdc53e0a83a01862c814f376c5e1738f2f626a81a0dc31daac34f5119be8b49a4d735ee8691a0aa1eea0230262c9522229db2533b892da90273732bcccf306d7ced75ea544a3f717e48a0bcf2bbcb130f22b68dafae52e97a8298850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e375df8117e364f15a32826ef0a6408fb47b2e68b977282973401d1051d27f6596a02ab1487cff8ac24688412ea85f41023008b96892421e24955f79e6b051b7d47b064f188703daa97c457493bd8a79563b4f4a04aa95ef3d817558f6cd8f22a0850302047c435bb500683066023100eb649370fba8b15921a896017dd397af36663a9391a01bcc36ee366eca3e238ff65848390f114818fee1176117286f98023100a7b0b3ccb0f1947bfda0b284be6d19591ab0373a05eed976773230f80e57a909556cb759c991e66e340b3e55830676200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dabb0706c472e7343fe06131d0d0b2abf46d60bedac0ce8d077f40a0306ec32837433cc33e2419a2b147ab04e3630c33023100a5986bbafe003496310372a60013ce88e2db6d7e7f6a1135604d952ad611b9cb7ef745e115264c51b12766940e5d45c40302047c435bb500673065023100c6c78b9c75049a26792ac4cb9c08b805d5570d4fd05941fe9bda8f3586aea8646ad440d723dde182ab4b8cc7d0694443023002add4b20ad32d680d800b7268ff73812d53c501d002fd644aad98fe7f0108556ab687526ab87f7f43ce0a33d4ff9bee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0ba6e8a7e254cb3ee8901d3a0b8c2cf0aa490eb05a904cf2a0d2ea57fe3dccc88c5ad6493a6d0c76fb671e113f4a62902306ed890b243e2f78e8d1deec5ff58fa99cc9ed305eab7ffbfb42cc18f39ff1993159ed75e622dbd90e68abf436d7e93910302047c435bb500683066023100b10b28005c12add1963272ca5c2f76eaa278daf82fbc863c356c5916ed53d360887add849b2057d004ddb581c924599e023100dd627e6fbab99d85b10e7efe8ff674dbf1d574e2e688f484e6ee5be40d1fce837fb24abdde8ee83467db78e9d1b8cbd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304292feb3c20563b2eea842fa1fe2cc5c06d5d55797019b7c3a37038b63c39a96587039da6a8c6bd248863761d592fb9f023100f56e576dc464fc9f890d53dc86e21f68dcece71f19879b8ded4851fc90b076ac9c96927ede08789c0393676040b0f3d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d5270e82c3fbf95253b5c2ef7eae144edec55bed4298b0fc36bba8492ef4f1e4fd123b85985ac943a82ca6d66e218ee1023100ad9c4085db4e04bb9d584391f55b4fead17ed72ed47619f866944c38eb1e77ff0f82b84abe6536f13495a09819ca181f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301dfbab24c37e6aa54cc035fd6694c52f3604f05e3e509ad81cc3048eeee2ccdc5a45da2dca53b1dd5239892777a7d19d023100d7ae4574c13fa8580da49f334b045f758dcc1ab9c1d28999221c858c46bfd5a244febfb6a86b393859cc50b554b913960302047c435bb500673065023100c8308f4219ece02ad6692a957c73ec841169952c8af9308a96680daea9dbef9b2dac340dfadd0c95ea317d4bc17979590230429a6a7643fb3834fc016461a010d15689042b1c2c954e7d1f2615e32d40d36361863d57acdf26cfee7992cb46f283110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060d9cf423d025caa8dd9170dc2938533345872c1b752de43f889148c42c9c4df29f77c74cd865bf31b4ff41f3382e12e023100cf6a25f96a30d3551a66603b04895a63e91ae35df4e34024e8f935015d18f43a8494497daf2f34c5b84746af2d4b39310302047c435bb50067306502306406edf99f2eab831ed2ae4fd62e89bd5d01f6a1bafc5b63dfb6dc7e74cd97662d91691801e6fe75b114b59588e228bd0231008845560796a951f1406bee21d76dee2fae8d9f1227fed5ef2117d6f19d42e325affe042dfe5e2ff2c6be63175067cba70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305898cc0ecf6ad4a2c6f1ca15ce9a476912f6dea3a7540eebbd690ff79b210db0f5b3ac5d05147d0671aed9fdb10d66e902310082464cb1e33d5a753c6d164950803e8c2d66a196db0e58e9d11f07ec6c272bc0d149c0b1ddaf239ad8f84df0125489d80302047c435bb500673065023016bd62f3b484773e1fe21fe0dd9afab583b3e8ad47ca5a969c1b75a4fb59e5047eb1200daf5d24b967e06483f61ac474023100ec19ed6d551fa6b4ee758691a7527cc15819db7c0c5f558cd4c500dfba10269dea91a00ef15f6bebb77b762d1ad3afb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ab67223c7091f3606786e73a1196d9f7d88979037304293905465eeed3b978470ef27a2ae2bcb6b89e080f181b3920b602305e0e0519ca2f6619e835da787104e28215acb9b2d4b453854de8cc38add8b0a05cda24353fcde8ac8f72a15e0dbb14de0302047c435bb500683066023100c5063e46a2adaf52ffb718ad000c884f6e6f122321de754cfee8afd5aa3da371df1a032fa898dde9ce9dbdcd299d8c84023100c3c475d1f9bf7a16065830fcf5b31f7c426536d1395fd2f8d027d101124424da351e4bee358860b31cace6fec713c21f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c099a2a42490ed5869e2c869a9c039e476f98f94e144b112b72c800a25cd5accc4f00593c5d841890a9c90375eedc0cf0230053eb40ae3c499d1a38d90f4715d68d53a0ffc5903fd0d35c9b737dfa9fce52a805b578045b0b42eb20e3bb1f491f2060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5ad68c6a21fbcf2cc71fa24753eca2f041bd7e7d567b801728911c3b31861eedef6dc64f19a0bddf1657fea980ff6a902307aa86a9299b5a29114c3c66a5f4bb6b646162b7ee4d179bf28d2204a0db190bf56acf28e90ac9e93771211a8f12f1e280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100815c3934a41e4a9de02c7dcaee9949dcf5482f96edf6619a2c824518a0bce72f0d197756b39f4ebe42113dfff0c4b85c02300e9b21744c7ef56990e8cc49b085a795574b9945542e02c1c8f4c16732123b245e98965a0c1cb97753033b8524b72e5a0302047c435bb500683066023100ecdb20700ab23386ce487b424c4accd21c9d00e99be458cf581b5334d68637e6a7e8e6e557d53c19b818dd1b609bfebf023100b4c841f1f7214765df2c3885724d624bb823a65cb4daa3c1868a7344b14a4427db311f56122fbe6bf397fd125e9247520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4dcd44d604a32a199d19f8eb91216ff9e67e14b845dd12d377aebbccd44a9b6baf764d87c0898e0321e4cdf3be2c48302304a3d038b6075258678642f13afd8fbbcc5de58b5786282ff3ba329ae1452fb7c7b16ca6f60ead9395b30fb06b9425bc40302047c435bb50067306502302c78386b0b8b48551ca6a3496ab502427217d757956b4509dc7183dce9a8a9296935097951d42909e2563e2059cb950d023100ababc7195f58660418bec428347a10e63355451cac87485c3d7c98f6469a9d5c2385474ce50feab0059893d2da19cea30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307716922ded52cbe7b0e0d389e6caef1962ee0a39e7df3418d52fc17d8072659d9e4bceb4cf8ef5e9010c95729678f21402301fcd94a44b4a5ef7840d40cbd04100d0050189d06804492367e2594334badcd54369e422d7f3d4a92ddaea3ebbed778d0302047c435bb500683066023100d41b19dc707ffe593250040b1ac96182b82e02384af4e5e9ab56b4551b694b376ade61462f8db02f8d7b505238339cff023100c0fb12831ea7cb5376c5451733e3cf8401b9aa28c6f4ead58f1d4c4d66c87aa9410bb293c208ac1efa95106aeb22a2c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdb7de7d4cee61047c7ec41594b6a38d3f910bfa68e56c6dfa6627aa07f7aa22cec5f88284e3f1bb3b1c3aa8644b50d6023077a1075d91513c2188b0040b80b969c5cbf2fe6965cb6dfe0c086c0732dcbae4a9afbfa88f9e169479f6541ebb5196dc0302047c435bb5006730650230467650ead7517f05ee8bb7726a05685f4a35e1dede926e882fd21fbae6cd00a2c5b0363322902e7bc9123cf26727d724023100fb83993046ab5fafed08fa97a881d23ce5bc9ca03d135937714793a71c894022c225d307952ee82431d01d9024a12f8f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7702460fcd946561ecdc158c74b870d4d3b6fbe54c6bf98bb611a38b6d5a81a55ff10815f331a7a0c2a623651da1579023079d53d0c9b20e8acc10be5bd23134bf2e18395e0f4de93b73b813ccbf35ec4c1cf6113a3277d235ffba2f90405ecf5f60302047c435bb5006830660231008faa4ff32c46de19adbfc1eb262890dddd7f599ee4ad1b2d4f9fb75025edf775bdfb320770d9a0e5fade9e7a70e79ed3023100baee34b71938572341f17b1adf9f786ea3929a50bc1623581f51821d4117c2751c5d92a4ad2da9da25556da2aee0176b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060b6082a0001cdcaca4f8bc7c3c12a87a60be12a0f8041ebe523a6868b87d9dc3220dbe502a8c465827836e9fe06789502302af5dff14226ea7ea4df52177f7b8d72f3fe8275b1f7218ee6400b9ef9a1b854991060823b9ab7744e5adb00d33207900302047c435bb500663064023021ce3bbc9393f59618c285be1531e16abced8bcdf544ea1d4816c624793a706d5abb320b04fcb9726fc0ed307b9d09130230102a83d1eb6238a6bedb10b43be1ae23f8e73a7b3d7cd3a44c4b2e9e7eabfb9523b2cc4143151aaf8da268529ed7d9830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302a5fc21256eea6d479730771206d92409999cc20ea1b088c59792aa3c54f3a6449cab3a00d92cd3b9b06f19f9f8bb182023100b6d136a7855ea00b4d39a193ce70861996beacb194c4d77de3ecfcc033e268cdf9861a44e58b3a358aeeaa4db4504d060302047c435bb500683066023100ae0c12830695a1e180b9dc979ff477324e6a5d6708aaffb9ff27701144848a07e537006a280f8f32158c6164590bd34c0231008092e5629fa11b1b1c94938e7d6d1a7be1e2aad5e8925d04e5f8ed583b1f601ece398ca6523f3ec1f2393a55f58277cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303df6869c80491bca035cefa58c30add27ca3134d585da3f7af02d1eefe3f60dcfa9298d308abb20b30d9df4ed5066bcf023100e7e0a23a31414484a096dbdf24ffa903e1952e7e584ff8853dcb9bfb9d2f3cdfa266df103225fe43c699534b44fdc8840302047c435bb500673065023100dcabac4d4afea3db818a9dbf19b6bc84974e29730cf7f31dff2c53bf8a42731e3bc01737f74670761d2258c15ac15d7c02305d4e6055bde3864e65a6c563ecb44d22c4e49d0db4ba97b71c8bacd88d1255f23c8dafb28d75924af750e7c5e05c5c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d05ef35c9d8282fa3bdb8f3480c62cecfe118d4e39656f21db6a4c3bbb06fb65eeb9cc51f7b8a67783507924020317002301bc4046a76bdca9c5fd1505786a5874345343d5eb8eaf43e9c9c0de62dd4dc1e7a43cf6ba7ab87e188448ec8267f34b60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303448e80d650b5b5ea58181e07c7ec6019c6c431c168404d2968d2f37ab89abdfcf906d2c12402b8b0204ca0fa4ff8ef80231008e94ac78016ab1b6df964a6f1a863b6c8a5b4a5bc96d92cf8d9baed4fce82afd701b03cb78f23bba4ec78e4c0304c0230302047c435bb50067306502310093d7f450ac2b88ad5c8253c2ff9b8adfb0ee705b49fa21196775ed7a921725891ba476185471ff9c24a5b01a9522e1ef02306575e88eaf0f31894fc9f32154ad95a6898fae145206332fb9718c8bc0dcf2d2f6337d13b394ae28b9a18dfcacbb68580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307dbe83c08d602f49d839bac4d09f7465decb08e75777d8a165a08db3f528381e4253bfd1f00d4f34125beef9edb1bfb702307ee1f6210bbbfdd4ae3b3f49c7cdca763e1130d33a4af97edd52a1bf471a1c533ef9c4619e6bb1ec79b06a172d02c1d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023052530519c6e9845a238e750964085c7cf0d444c6a5bc6b91a5dbb8bacbdeb0de5fc8da50d9fe3ef07ad9042f943bad2b023100cb31eb117f9279d32724369b71532441743934647cf01e4c1714f409874702cb30a160c222f091f4ea55fd4aa9624d030302047c435bb500683066023100e498b3b3d5d817485c669c2894b37ed4b212c4f469b08861aa0d7fbf6f178a6e7ebb2d682efaac8f8b25bd2042d9804e023100ab7ae6ec556ddf2cc94a8cefc72eabffbd36ea163e4d2d3cb53a64b3c2b46f1bbb5a9c942138c0bd598e2812deec1c090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023057feb5939e32dc53907d06573b6b671ebc3dd0ce7d15df4c6e5cf9076ffbe129094d975e069b2685c520c377dc3dc8bc02306caa9f5c5709fb7737dc770402f772e6b7e7fd12431d4cc1a9677360583e0881d7654caab9ddc72e6dad8129aeb326c70302047c435bb50066306402304a0b1c7cf81ad8e1429186a7ea397f8e7b1c2d5a7d36347e1c57b203ce098867f6a0593220a31d8204588919a16584e802304453db59f986fb9ea02b5adb3ab6fe80853cf2616f490090229250d6877a3f60cb3309aff0d46d00bd9d2ab66b6810830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d1e4123e7734a2d23ca67f41a3f763b2a071e33554093e375603748da9577edca3fd7cfd0c49c925b0089bbf846e90a023100b50ed01e9f35e463010f07b79d0678539eb38878738844afd9ba9dd113fa16a83c57283553a8efbcfd842dd171d8e7680302047c435bb50067306502303e1c52cd9cbe1544d72be75f69568e065ea682a7347fd594542095e8277e7b56cf353ef11da8b8c8765d88b29b388204023100f60f17efb75ea51952a3669275159c457e30891a26b1343876d51429997824e909560312a1818466ad2611a925de719c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009d144ecc8fbb058fee7c4d28a4cf314fd802da0561c28782260dfa0b21e4608394080fb1dabceb6e428bf5c62cc94cba023100c29022b34825ced9d9d99abbf6680050ca7faf2934af375f08ef7a8d0111847128bdfd216157fc6c596a975f5bde96040302047c435bb500683066023100d7b52d0dd2585355d312f27e1aa04e870b8bdb937a494339601f7a4877a9214e8a0b93fd7dc354fbc2435c1366bb25cd023100c3d575056eb811266eff276abf0a6a2e2d1cd2979bfd4f81162d0c801b9acad088c00a3952007f3a1ef8fc822419a5510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008446909f930a0f948eceda73a1994fac8cbf3512b90726676ae718a0d8e56cdeb1fde61d9b90682335fe6083a5ca54e602301ca3c91de50e5d6577881039d23c968ca1449e90c2240be6309f038d584a752f7334fa006c8de9d5f61735ef1a66d3a60302047c435bb500673065023100cf68d93cad1a947ee0db89b894fb5437b89ef7d2f8fc32a8805ef4e317f82132093ab2efe72a6b9cba45d942bb98b85e02305ae2c2f10c34d84a74441ed361c6b533a07ffa077cd2a3cc12edae422ab6a60cbc96235f3e4a8f333d2aa8e1e1b0c79f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed9af223e4fe1e25e1ab0c4d364faf3204d904552298428d8ed1c11985da5ef32aca984b6727704ba366d0c04b324f55023100b4cd496241b07d89f609c488b72a153a40b80da681d9cb343dd2858060e3e561046c0801c4f3d4ffbd563a32bf027ee80302047c435bb500683066023100c69d3ec52a10555cd61f5d74c3bb6113a9f6474a9d3566400b0a25c6a8cca053514ff0f04a000d3afd629c679a7bbdd6023100f28691bc5112daedaf8c45c6977d9fe64e7952871296283f85073548c5cc31ea5d4041a460b60c969f0f8471b49036bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1efae0a9a837c17496a623a27adc493d7fa641d54786afc7d05b04afc17dbe0a167ca0108fb2805033f478588a233c1023100c2e5f8e8a28011ed373e6ecd929807d2ed990764673f80c0154380a530e007dd7758578853134a6432b083294b3646460302047c435bb500683066023100933576d70f7007291cd576f92e1ec45c2b24bd4fcf48301632743104c1db3e316285a3a2990903f0258d626d45b64acf023100d55da0921b5ae4f52962aea649691bd0a3963eee24e99a9d52c7112a6b8d9fc8123a942bdf2c103c6393126e4b066ec20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c0fdf8386e1bed2dba08742dafb9438073e024c492d3b1b4f6b0e63ee3f3fdb82ea9d49fe391a1d7c2446f4ec968c366023100e27d841556a2993d44155d4d282c6ba2dab436427b61ece3b890112aefa150332c2a582f4e8c8da6ee956ebf7c7468070302047c435bb50067306502304d32bc99336379142087cc023480cf2ccc4323ee1b31c800dc56ce01060ce4d4124767d902c621e5099b7cff0df8a167023100abd1ef8dc339aec05573042aa8b6494cdac0530535ae92f5ef3ac15e3cb366ed5c800d665a150e51f4fb8a20b3e69f8d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230760a02c01bc19238e3c17b0303682ed641663d54bedce2d914e5b6b9c2c1f29dbec89b96225e22f917706819cfad814d023100bb4b619b6ae038c027e0398277c6b0aae77ceaca2b10efa35717d247a5850a34cfb2c3c6f65b148f0fbae43d629075270302047c435bb500673065023100cd09108af7e0c1487441a2196794e53a7765dcaef8761a791c73bf2031241dea4f0a6006b43cd77891e7d8f731e6e998023031f1a1aa784d52980d411b7686085ffb6f1db913b475bb59bde9b493bfd4a2f2760dd4d754ac7c73ab98fe8742f34d1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023057d2defd682327eb831f4b5aac750da557914a7c79f5779ca78dbf42e288c346e87ec21c1fb9ea2ed86fe898b2ad2ce90231009b0871862e15a043d0e05e7b606c82537bac20536a0a3dac39676ae42de29321e3b024649032e62abdb6907d73c8a3f80302047c435bb50066306402301c0af6223e56efc109a9a81bf083ea42df89c5b197e19fbc8d97d5807bb93a2a62d1297bbeb76aa40fa5f0d628399cdb02302700f63a1d51547c73c15579b4c2116ac96f37d1b26b95fec7b238092df5976476220e53706e1a759a7eff37daa1c4030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307fde670193516f90bf155cfec2acba0d092fdaad87863c223e03e7410c830a4270e13f3bdd084c23e3e2fa4aec78a92b023100d7f9b6cd2619e1ddbb9c4876ca1ff7a5e94de9664d45b18b2e6302d2d777fd174fcab79342d31dd5153769082a5901320302047c435bb50066306402303c7f516f54692b2fda3fb7882cb83e976363b044a8cfacf981474a0df8b6e78398819f6dc767bb880d0c523e2e79731f02304a8d073b3c07c1b312073a73e968e01eda89308f8fa84f527e317e77375b9f461141e4e83c67856cb7aec96ba40566500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f3dc0a2b529cc26a0611a94474c08941d414f787ac49fd97317f5f160d2b629300003ad653477031b285f60a33b3b4102300d4dc13aed4c70aefce276077751815dbf21ec79816e14b88e96e3c59be778f5f4c071e793cfda6d3864e3e3f64791740302047c435bb50066306402300f06e786dbcdff075b8144fa1cab681fdb7dc411ae2a60babf434ffbccc960e01c8ddd30b5ab027978333ce03940d03902307fe30a0789f99375ab3a28597a85bf7d56d413808bb2ea793d6d2c73a5cfd0455fad47f3c59e46d74d5dd0b94f72b2f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d44fb2ad2b8cedcdcb5e7f26c43d65945c86773a00611ca903c8289f8c337bac473f56c1c71db73cf8623af04f6df3ba0230161f51029dd19975ab046d036df7f05e3bac6d35c3be7d25f932dd12c89b307d4538907c9496211628c4a9396b2663580302047c435bb500683066023100ae9f5e2d64d8c3034e3bcf80361e2297cb2b17c6323665aa563a62767c790d3e1885feb4277efaed2c594ffda9f2411802310091103a395168b853e3ca5113b454b3458096218c3a9c58257afd75ae1d09a07410454b7bc57d5659b374ac4e3ff2e7270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b81310b0eb19a243a9cce1a68f61d5a116961262e9808a41184609e697af39e9a047513ff7f4134bd7398d824432e367023100c666fade8f62267eff351c0653e4337353428ce8fbac3094e6410eacff05d7cb8d464cdd29cf0551ae267ff26e5239f70302047c435bb500673065023100cf6bfddaa94f0ab98a575fe2c40634ad6967c00c89a2bc98d85285303d55b351ecfd06e43fb1046fa19bbd3f3b8c145b023079d5c5799ee510e97961874d89f7398ea50e6753da6c138f2e9571bdf11d851c262720f6bc59d1d745aa42ea97f0085a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e334a1e1ccfb8e95100f0ddfa563d34ea040801bd6c480333b42188a3e56202e707b8248b7c34bec86b2cde2c6ecd05a0231009d264faa6dbbfa70eea7bb4ea0e150bb8026821575d66861c79dbc1dba5f59c7c94418328cf7506a8935e6076eadaf720302047c435bb500683066023100fba337b33c9a123126d74be9222c7036110f57fd31131419b56817018b39633b8d4288286c7a2c2ff4e0af69c6c90718023100d1fac13c4424052021e0ba1356e94064e59e2832cb9834f1cbfa41d7116fab833cf59db2c28bf9a71057ba42bbf9f8da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a4dccdd0af6c3ec1c8bd621be0ae2623d7a59505ea5908005eb6239fe36895dc136a16e4da854baac73f2689eccd48df023100b7966225d4f13f119182eb4152178e69cb38df30889695cfeb1c3b7ec6534513f340f08471043f7ca02a387f616941140302047c435bb5006730650231009be53c5034f50f72ddd9fbe8a072787352fd97f011624cf9c6d6cf9be740a0529786378563eca2663154f29e3b2320f9023008c922890f46b92687913f79041136d76cde69593241ba07202306f07e6f56f82ec6f24488e20d9f6ff99a956a4971590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023054fd0bce7154a1e2e7341653e9668b545827f648bc861516ae3d1586eef72c2232b6ac8be8563961447b37b0b6dd5bc702307750799bfcb68b45a0c404c2af93c147a6b24208362e03376dc44f5d5ef1ce53c07e2cdc1c1605fc3a4e2015abf517310302047c435bb500673065023067725da7454b3178a93bbec86832d8b71de2474ffcb48cff75d3559aae61542556d013828c42a8199047efd7f9ae7c01023100c19410179f522a41d982727fd2e9da692813f1de36903717a05ada6554b62f3fb583037dc1d53cb253e0a537cd29a2d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c3c86779479d630f8a8ea1a801cf85cda4c924044787fe75f7c30208f192bffd0e68ff95a1932b3a377deac74d11681023100cdde0770a1ff38a5f4d0f8c98944f4c674ff81d39b3a855967969015aee62a5e8408cca9bd48cc4be6af1abf0b793eac0302047c435bb50067306502305fcbafc44c8dc5750de46598ae8fe63e32a656a8e57db45e3ece11ea591fc87b7f7fd192dec5d27f47de05252208b18e023100cb8cb4c4d123166f1cd3d192f61de07a8f785bb19aa193863d4929ff16632c694abb52798b2a9dae7bc1963e976b74d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b447ade4c4092c59d7039d3c2c2b9f48fd9a6c1d1ad61f5cad4199894b8c5d0d061d25dc29571f2ecc6213d561983bae02306edf68a7e9c3ab00ec7f6647f12658bd3d3cb5d2358ba78261648c9d535d1e80985fad5e41b6fa61041711b64af9b7bd0302047c435bb500673065023100cb134200664d540e947c427db6c9e14973ae5fe5ee408ea19030a2edabaade7edf11ce98b0637c3ac640968bf11ef7bb0230631a192432a237bbfc4f955df36c5eaebbde462af472e88d84fecde703c24edb43851bc5e59e91647f113a847fa562c20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cebd44eedc0eb07c381854fa46c9d00a68cb6d3ce33b6d3a6807e40668823caf7bd2b441605a32e97c732db1ec817f023100f1ea771a6609fc37bac9f24c9b2a40fa2467fb7e502deef805c1986af8ce9925c6d0a212e8095253dd193772604f0be50302047c435bb5006630640230397ebd5c5006bb32f51f9a5b810b4b1fc2b5de6a3e93224616dee58ba9846eb59a6bcf97189eaf87033e8afdbdd39388023054a16dbdf44b6a747d5948146f9ad1445358143f1d2157d38c1e6177d945013a6c43454ea208dd355682ddcc514dbb000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc8ddbf041a97f685ee541631314df8a3d449efde94e2021d749826bdca646fc6cdd0aad57856ef668e111e7ea7ed4ca023019245aa34e8b9f7fccf8c430f6ff906e8a3a4320dd56f9eb2507ada52f07367ea0706969aadbc838a2c3a6100e918c830302047c435bb500683066023100988bd97b35427d174aa8d524e12dc125e3c6c7bf04fbb3386f92a7a06237280d0580a35b0d3f3b90aa02e73e319d86ae023100e4b4d0ae8db7fcdb1fafed1dc8328ca783764950eaf9e19ee514a58b1b64030070b8317c611376acb200d9fefee4507f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002aaab863ca2d90f9c57e7c74b7a58a00c13132b147bc78eca7218217275af3034cc11cfc5638724be57b80f23e09593023058a180766c00aaad361ac1c806dd89e6dda6afe41b62de2fa1f26d0804f092bf2cac12d406074dc3348b43858ed3bf7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e732bf5ffbf2a6c56bc8f7bdb948561e82ef12c1b4cc61398e2be1986cf03124875ad420949ab4272d7e36734e0fb9e023068e75d985a3227b753ff34e2d67fa50e2aefb9f4c0cc7e6c12727ba1e934a32e4c29affe3238430d8b3397426d6692950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009480eeefbd6dc866dd3df34519fec4d0d251df0c12b368fa7f5723ae83a588764d02247c94e777bb50b81f84985fe3c6023100fe486e2087e130ec2e14570522d8d02bfb1f98bcb20beef5177b8d88e407c4ee20792821db41de43661520e31e0666220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c843bdc075e66b3db921061712cfab4b7d4e544336bd9ec2f934e83d387052bd6586c339b8dd05f8b9f85336bd4a83310231008f84350aa56e9ebeb6eb8a5fe3c525fe00652f1ee696e158307277528166257b1ba6c6b7f1087d36f2dd90fe017134ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c717828ba87f5c9ed350a1d0ac824c6fc0bb624a97867ff62066405be27b5006d5bdd426857f7469b087cc2d415cbc1023100e8b6d7831f0d54a07dc7666f1d892759f59ab61b8f4458d29f490314361c8e3c4fc11ff6d2592aed79e20ab6d8b780630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022e1a41e0bdfd399d74164065bfac04b3c7ee4242aaad1519bc1d27104174dd0b97042a758e7ca51cfd63bb64550a93202306e97a9fe92ea4ad7b5d7e83588a2aadbcd49b19c812a6835bece8b5761d288a3299b9ab783d73eca8e1f8de90b682b0d0302047c435bb500663064023027ad785787325e6dde2d43b1e81aff55534574e2be7ea34b09df363e71a3f3a2760c6fd1bbffcf7a53975a4af72bb186023030bb282b9a9768dfed8fbde71a725975860f727fc402ced836974e314e0dfc810c5e16aa3af4dfcb251b2b1f3be404950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009e94af9cbb1fc6d526de22f9e36a26c20b1752828d9aa80a526e15568ef45b80949a2922d7b3f02afd5f7dc5eabeac0002305ccd1bfee8029f416909a3d1ee4881150b43c48725c4a555457290b2b84f0ea44ad2df35deee853b6a1775ca83c583a90302047c435bb50067306502306840180d9fc9a422ada89bbaf0d407a0d404384d606e12154b9c7bc1de575de8625714456790b3eda15010a7275eed2b023100968d14090fb18f8279285698ea3fe463e3388a2d4f23e218dd44cd50fd5b6a814368ab3c4b9bc38cbe5e9d7c15a7b6bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e38e92af15add23db7d073687f485a1d208ae553d7aee216146c6ff1ed0d310206e86366994207930230d7966930bed023017cc5bc18c07caef6059d849982aa48453fa4e2ea170883ab48bac31db65fcc8e5d827d19d83bd95244fc5bdab9fe77b0302047c435bb500683066023100d76f007ed8dd381d6dc55f4547e6689b7310c555e43cfb2dbc2093f29a45bdddf6983f0c7240d769211854baf2222d7e023100b201e0e645b0d87326203b0eaff5b62c783d1bf7924457d7fa435e8cf05b08f01ba0dac8a47a4eff65d152ddef3fc4da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304d2a22c8e8fc28d5b7aaec73d80c499e763fb8b7b3ffee62d2993446d7a881f3c9319d4426cc6cadbba06c36ae93e12f02301468a3ef4e05bc3b46ab357198bad79bb22987e8642232c81e9c540ef6beb120d81dffdcb99dcbc509019d7aa6cab81b0302047c435bb500683066023100c56f11d376531d516f851a3da8a326ec615ec9e00fd51455076776bbc10c6643b75ef47b01cb8a6a28ac8123139d9d6302310087293c4c19b0dc75b670edfb283a4898b77f03ab795778b6c12d25583e0c05902565b6d4dd6ea297d697d8e0eb3180350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023032c5935348e8d7b441140e94f096c456fe19ff9fee90c57acbbb65871546d878457256e479005d396bb5ea14148e72ad02300ab2619ee1d92a4bc3db0a21be24dc92f9f835f78a05c72decac13a9a25d6de947a410f0e76a68b41a965f0be6006b130302047c435bb50067306502303f7856907fa9cf36e5686e8d5ce55ad0eca8bbfffb4a5ad67beb8e4f959377051468e076c7e94fd84ebc1489d4e23c2b023100e3160367c469225fa878d71419f580ae5500bb2fd3e6b5c061265cdca0da26405f8e016ed1d6f1eacd45cd09c864a1bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230626155c3aaf002108e4c73cb162c3cc97f8c9ef7010d236a6157ba3ebcdb0b72764c77c6e9bb7cb42da5f0c8e8b5289a023100f78bb304e6cd5e54dd11e4f02db0958b552fbfdf379fd0ba1264fa70e5bff38e4ea05e7d2c83955c0f57608043c6e21c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c17662963be20b4f7eac99c3048e7b319b7507f8b950dce625ffd45804d8029817f77cf06e1063bacd37e72bd662b090230015f719dce040e4e8c74205e0e0a13de941ef6bf8565e47b105baea17719ae14b5541f526f49ce6d6d50d1dc57d423880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8aeb26ea9c1b98f8029a2744d6e34bfeb39932bbcbc77e60c0f946841bfa030a85cbd3880e34b3e55366ef7cd1074cc02310083e8cfd38f13c0d7885fc11fe907dc5d0ce2175ddbf915a264d2bd8dbd0161806ed85314af4433bdf0f064d53ec0fbb70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017251f291376c1a86c3c8cb88663f34303667c694ff6e3ccc831fa93449fd5327e8135317a383eab8eaa0cd3deeaa7e402301750104c35441acee9cdd4f4791dac0d34f930b1f468ca4cede5ecb43e6e455b36e3abdfc8380aae4be80d717370a6920302047c435bb50067306502303b0e6091644f063e534551220ef7c940212eaf4ebc24a764925e429d3dda200388c837c90c9f23c1de511040efaceb64023100f0c0345327dde4b353f717fbf6c7e50edd05e940286244873b7ab7fdb8aefccaa503b46e82fe215629a1675e0e98a1b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9c652434ffd17e1fb70c673690ceae3fe5264ed40cf813df7919714a8a5e1ccd2befa67d8248eee457d9cfb58b84ffd0231009157beaa624460ab685d8ee69ee46c1fea343466fe4865a81019c8c7c5229178c45aebd6f6a7dd9b4177e7114e7aa42f0302047c435bb500683066023100b343215e83e1a4ec63dd7651bb72801c02991921af1ada3b3ffb369237438d84efb67623ba2e8eb0e54ffc4f4fb2528a023100fdbc1cab934b4c5a166a854ebba5607550d967c4c99a4d4ca8461d84491784c0687d4c6aaa4b748caf9b6187f781dec90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4a5be7484c8f37b0ac14cf572b35a37cbe4f08a3dde0e4876879d83c90165e2ab267fa3013effbf1f02b80279bcb1a50231009d10f3f77cf8e9fe86028205a2833129a7034caf888b9ba61f51d9dca2da80363e5d0de7fb7d3e8b14e9751bd3ac96010302047c435bb5006730650230561149426a5a233ce2d98a66d74a60f3b8e38d307c7a4820e42bca0a363daea93bc9f5f865787cab40aa229621e85e4f023100b773126032fb059f3bb41552652dd454aa8230e6253b3b449b32d66c599790230d1e2ca84713bad85956090c8fd329d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307decf3bc80e52c6d9fd5f49597afbb84ad648f52d928c6bb9e403d88726a1f2d218352bada0ad1d28cdefb0fbcaefae0023000bdb2ef39213b42b7f7a22c7806f89a4edb086ab8e23d3feaac655695c130ccfcf75255383e48da326a56a830dab45a0302047c435bb500673065023002c7c04f162cca8b2af8d74cc00e5d9f1fa630d0a22bd50d65a6cd632a6634d9f4474115e726208131e43898c26c8add023100bd8a519f4ce99ed4a6673ce45d257e457a00329339f308b1fd967449fb34950c817c950dc6b0c4ca0528c26196e307490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d11e51970720ec7ce6d77f93b4783af3b55c03c87052b70a890e20af1977f3412fcd228225541d16cbce99853d1cf0b023079aa51eff249242b5d80d8777b91a5f204e816b9f51c0c6f0e193152827cdcd92edad9cf989384c9d3cf9241bc84907f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fab9d15385de198c9d49e1148e3e3b9c7e6e3774b40949e022e1ad1da231d9aeecffce114561d0cb4b9daaa2dd6a1af7023100b0669db7b580d2d9804710d1399d8d9fb60f58374b38625b0c586a1558e386ea80ad76172d57038b6ba54a2b2cf3f70b0302047c435bb500673065023047346ca4586532d71ce022bc834cdad5a9220bc24299f767ce0213137ecf494f94f98371397694df1e953b4282ed68d6023100b1a2278a87478ab41a9b361f042061e5df578eada9235cea0ece94d1a855035d17ab58c3d91d45346fcf36de0184c7b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b1dfb867129771287ea33167ced4568c667e19b4c24ff90b745813f2ae7bc8dce9a701f2e4400b6dccbedffe0616418023045ed92450e990ba56ca4f4ca2c21fe0fe9f6f18e02a6d30d4a1198becfb43a79d1480ab5cea5c43b3b8291b123ea14be0302047c435bb50067306502310092f90e723acb58bb3f241c4817f2d3df19501576839a164e7df61847af975a3394b38d63a312549fe42c283d3da1a6cd02302c54637b869048b01399a601900d483719b72d5beb159cfea73e1dd4887aa63148448a87b639b767b8448e483df981610302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b1adae8cd07fecc4fbba90b9d0ff102b8e1904e99e281996c5bc4cdef2d86d97b1f1686e13b148a1de2a4a000c52e5b10230152f67dec664428993bdd0c5cdfc6be4312bfc26a9ccdbf35b037e01d6622a8beeec23f59b2474aa860a5f9a9423644f0302047c435bb500673065023065ce713325083519ce0967f2c022e6e486b9883eac69e80da3a1ba1127a1092916b3f4c00a44f337c435888e2374c132023100abbe9d3f26e2d5517f39bd25d6ed8672809df3fd3b0bf530bd878020af234fe620494da187d83bdaec886792c5efdce40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aa6aaf82d7bb4a29e6ac7ab84919f87e5d34dcb38b6ff524c9826471301db58a65a282dd29cb3bde1bac68ef215185f023100b9807d3c5aad3fae6786d4e27cd98e593e97a80ac5990c889f65346a36c3f3202c167cac2ddfe6e70b20401a588f7d970302047c435bb500673065023070ef84cd792d765a4b792d0c3bc7644cebda93ecea97f96c5894104acb4baa1ceaeaee9a83222db6bcdcaaadaac0d5590231008160cc6459e3b0058e846192f375720f4631dc3662e6b159fdb2476662d533daefd3d2e1e8c2de413d167cf4d4c5b3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008bf131228b3fd43daffe1dc5e6bd761cf452af5203f8430354e2dfabc8f10e68a4ad0142d108ced2a61055758fe5aca8023100b6664746321e9bd9c963ee44e3f4096c3db7b13649377c75660e20616807d28306da719fb92ff061b7e61546eb1fb3cd0302047c435bb500663064023035d4763ef77483e8c4c94be982f491c1105747fa298138660b3d6c08a317a1f578b4a596f59a579ff6063e0e09b9c75e023072920a7294ca60e41db316950e72de7bc4b89af107cd532e7b0f6c1ececc84082501b4ecfd434b8b5253d133169a2de10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306fe0528ba0d8b06e517c56052a47880bbbf7d3c5345724f7bb3b2b6544c5c7e1415c3b21b8cb266a0808377a82dcc18b02306534682396e10f92dc321349bed25c5cac44dba26571d9c5e659cb3ce4ac9c4faafbcbcf0c04a058c5ef485085348e110302047c435bb5006730650231009d30df1b0957720dbc9a8a2f4265f1d21371c0a2e3f8efe146210ecc440f86002cb74ac642d52d74c0db8484661ced2e02305029e32b9f135ed32b49075e36f494567bdca736b2a28f79430fa78b9b1132c30cf94efa343bddb786e31c8a0b4558f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230125fcdff91f4b074d6d6c347b187286aca9684d2c7f81d10118be333a2823b205d82f8c0cdd37efb6cdd856c6aef2a030230158a5cd9c2e44454db3b3f8e5297437c5b9fc0ca9feeeb6c30f085eb6a2693ce191013e12da9d0d3997bbf0509588cc50302047c435bb500673065023100a6fd7bd0b1ce5e74de1abf8c995b123853d52a3bff6ca7b9b5cfbbf3c49c2f8c669b16fdbca3ba94c9bbfad64a4ec0a402302118e29c440dffecedecb35c247669e7076f84936e9286cf9cc65d62380d45223444274366c8a460e515217289f352890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a0b44d1e624cd35da121bad4b71f4f6b31dfbb675a73f2b8f62ec1fb35f9a8ee6022bbb230a57104d3823f6719e2e84023072379de856fcc156329173cbd30e33d59b5ec1d30984f1be5fea579f5e753880e646d31660fbe75f9265917271f8a0ef0302047c435bb50067306502307360d23792f62bd79236598b2b3991e1f0f88927f2ff044bdaa68b12db2f2c497b19ffff9743b6e8d1718960bedc0047023100822d5df99d913f45bf85b1bd16638ae6cc0679ab8d24f3cf2aa254a00a1d0dc30255adb35add007df394b96db940dc220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023075e11ec6c5f8ef7de27d60985cd8855264941ac38fca3b698c327916b1446524155f93a18781be525654ee4c159fa620023100832309ec5eefef650a7b2c5b1d6fbdbdc09416368a2d92909bc7b613a5ffc7ca43fa2bbeb5b815d4388522a6853ff0140302047c435bb500663064023030b24dc47635e47f7ffd08e617d3bd7b43ac80e5c5a03afb90ec394792f6cf95b11c6ba1215b9c1df40db67426a77b1b02303c39ad37218ef9382f42738efbcb78d43070eebda5f2da5bc9c4db1c3fced6ec9b0319e65d07c5c28ef13ccbce8436320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023046e232391435e18f046e3185d20fde38255934a789dd0b1cc77a74c78db53fb8b3819a836d8a2333926d8419187ab9ae02310092d1b003107854afd577fb0880ceeaa93715455cec0f95ba7d6c59d003d6c0ccab4f9fb1a020d0746a69b9d41250199d0302047c435bb500673065023067b6df05e3ee0b2ab9f5e0e2c40ed682e06cd8fed7c7e131ea7421f984877260129aa7d2185cbc51f3ccd7e50b05f36b023100a629260bf66471622d2558be48c5be168519c88379542e233cede095cff0b1c4981691f8d1aefe2e3ea14fc7199c48790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f0d5aa899f54622b72aa146986d03e1d1ab5b15785b7d2a5e8762e1d62a6e6363d6740e674a8552350ea0e6ad2a104023100c68cdeae9a619df289276a6b12d02c3326311114ea45ce729a085e29b5f8cc117627f547fde03749b914e2fcaea402b10302047c435bb500673065023100bd54cd61bc0d0b7583ec307ddb29cf7f518e0d24d0a5b3e6395c5f46ed0e85c22babe2ac4350270c658c94cd0cf158ad02305da269b61fa9b151c104cf4f5f2455aaade95495aa36b67e0c53734bb1240bd6b9a77bc3a9a8d9561614dc0bd48bad560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be1a88446ec3eb9e7ccf11ebf167119ad49a82f2ac750b3bcbdaaca711592db530ca0d32ee0dfbd88f7f3c6543fe185102302eed23cf5bc63c8c609a1c0fa4b6324856fa390688dc9c693fa6cc8386d7b37a2a1c2acaef25ef8df4a6c6ebe62d46bd0302047c435bb500663064023071e4efcb4bdad5ce685a8be966df63d26b10213443612060443354455dddef34ff676ac481e43efec75de8447c26d5b502306c82308607bdff9b4e174187cd2903909316ee29c4b2ab549bc9339faf7fb801488e3ab757781c07f3b71a2ec9db1d770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023069af8b2201b87ff4a3a1a45908f5225f8aa93052cb1a9a499ace22b3521d58573dfd23f2df815af4d823ace60d2f108a023059c563a0709165d08f5b0dffbd2b6af09b046aa3eea4a337f6334eab065c15674294701f6d7d4a613a9459a3f5deec7b0302047c435bb50066306402302a50d6bb2fcde64a7af6a4b937a36f72e22e8a3167f17d108ad53186bb5e63d3befcb4200fc69d86384f53cc904067420230393e0f63a30c23366f285f212eb4ed0605f317294b94d9193277faa6c27f5ba1a02d4ac84a206d8cd974cc39d61e0ccc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230459e733e4b45bf64a9829d6b23f64eb477195911dd95e59d51f450dbbdf72ee5a880a57875c06fed89f628764438a186023072842eedfc07e7d608a59be76f9f3e9bc552858c592824479b22ed11252d138f24fc6962bbf3740f2bdbba77adc465a50302047c435bb500673065023100b791ff30663e32e5541e2c7e975fbac5392468dd5bd8663c434a91dcee07a4f94d62f1837dc7b8e2f2037e78192cae1002304bea7c94077cb00cfcebc12571c0f2ce777d71539d8eb1f15c68bb2296c42c600d55a353c9420333b30b0a8945b9d1070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023069e565165cc3184675bc233a8867750b782b64b112943eba848dce46d172eb5e68dd786f257e92ac88ff284aef6e3033023100cc67456eced0a606c5be1a5eb55e5167ad5060f29aab96004a3dac9839490d1ac4b68ce24c277c0c88ca03f64e8018010302047c435bb50066306402306df01d542f067c36e6a19fe0cd2a1c0944ed5df5ee2c13ead3c09689a92717d169865122ef0cda2e184b49b6edb9ba7602302f2a48f9005de84dfc78aafc9c22cfb5ee8050dea2d6d7cf45837785654e1770daf7618aaecf5bc5a0216c761ed6f3900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c74764766c357b10c975a8fc1d14c128ef754b57f9e0fc087ed2597081ea529487d1d3838bc424308a4c441abc2f193b0230089568db1898929e13f41bb64951580e10ad9e720563c536dda6fdf560275d1203cfd2937aa395b4157e78e1bdf0f3270302047c435bb50067306502310094dd9193c2a744f60740b9867272d43908bcb4e23f3744994365c7cf51986b634dd0c092f0e5072d2eb1b1df7cdd0ff50230041b731849f56db83aa577a78068efdad0557264046afe6ccef2644bfd561dc4f88243c0011a6c0728e546d66b45da300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100deee5fe8af397d2256345d042098a6d2fcc2d8058cd1caddb47199fa4ab1e84ae2649bde151bcee4063dc0c258e64bb7023100d3e5a4c46a1f84aeabcee15bc03407099e443a5f3eee972fe14739b3950f2dc5dcc65e1614e7c8b4d29df1be7348d6530302047c435bb50067306502304e7484360152071f85c988270b13caf7fac669712aad930508d1754e67a244da55ddcd455cd6613902a242e0ede5035e023100cfa64f764a69fded21345a3eae2141f18c51fd9e6851c8827b0d834d405fce7bc887e68505a5e7facc78ce3c0be448920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2ef5a8a841dc7b63d207cc78b7ce00fc9d9f465f17a5c6b29a9cc82b07c0f065954997cfb4913ee7b5f72dbe7261e2302310089e871ce8cfa83b57a9c8d32c35c5f21bc68800110f375599d5fbd6b70c9b7d5e21649a05907ba322b0fa1dba4abeb410302047c435bb50066306402305fef77791a1529c2b722fe639e6ac4fa83f23d671709ad723b71c81b3b3ea71889f12ee9f2ae006dd978e814b91a6397023012257f98560cd54de1abd8685bdb051db0e0c48647d1f8b78efb13bea413ebfb39461661b38b3d48ecbefea13d6333e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb1213231736420a2bc4e9f2a323f6dafa06a5bceaa984869b939302027f4e441c702dcf76128f0eed1f4ea9c5eb482002301d84848ca8079deac07d6aa20e0c8c648473c8d5380e2ad19d03ee36eb3ac997fdff2fff5ce20bf664f3d0eb4a39cb880302047c435bb50066306402302143a331f5dedc298461512211aeacaf00b71c8a15663678c33dbccb300b2e414f147ae63cb609239060cda14e98a27402306882e15070937467aa4ceccb7fd3e1556e980f9ce3dd01d600a09b4aa2e70d597fa1da4b1f42a47ee2a3f9c6876f2ad50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100857d7ab7aeb69e4f150c4288763a8f60447727f6b498fbf10739a0e7e2e9ce3511a1f3e9bad2e83d57c2470417c0612602310099eb365906efa18bc5941a4e4a5574a35c2e0f7b9b689e661fc954f577b8ec0cf23833623abbfe1c3957a696184689b50302047c435bb500683066023100d5d2b25e4c776bd1c1c9e251cff564bd135499b5a273226db52fed2e2e26edfae89e5928ec8c33bd0a270379194bc7bb023100d3f7b6b230cc9abd5c2a52eb2ce4ec5bc93e0a6eda4dbfa9a576e1126b656fc9fae336f72de7e63c7dc35a9de11ef70f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e693e2d811b55761714da00363b85ffe91fdcb8f9bd08df73a3258dbf1a9c266343e999499784566babba2f0e33e58ca023100800b6668f09c6512774eca3e5fea1c272a05c25df1993a1b2fd23e03e014d3492f3542c057b75844f878a8fc9f3fff8f0302047c435bb5006830660231009dddbe743be4d9260df8a54137003085593048df8bde35081b17ae992250de911d26562af4ec1440dccda83f8ff39061023100d1f3a133f72ed6369f9e303e70e10c911e98cdfa267bc7c50d8a1c9395ce782ca289e76a9cf5d25a218be6c3d5eb0c2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091f71ddb668df092c40709c52c32e86789711972011346fa0c56fc5cee3c66298b74f9b7afa233324c1a354ce6a48efd023100e145b990babdf131f9c37a35514cce45040aeb498319a9a08df28efe8565717c593d5e45bbfdb178ae1836ce642158090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008041e5e3bd147c614adf22967fc9459ae3524c9d8d930a4c2ac22b576b77fb38e5adebf5ec37496040225096c54c1f4802303f69b8a21988ef68efcd49cb5fcc43044d5dbad7e9096fa376f6e13ac853cae1124a3038116c52d11073e65f161781b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cca23c00d43e3058065c8d052770725d06d1c1274d2e96dbc2660185497018c009174da528dcc88df55f808f590505f702302e7ed84f240255ac605f675c80e6be62d426a05d1c58a0119bd483e06c6caaf127a5f9a92f9def33673da307fd1a481f0302047c435bb5006730650231008daa3f8b793aae8528511342d72bcf6dd0688632e34187b9093c12ff173317a2bc2586e73629777c3ed16a1e28d6286f02307ab4405e304a5f0bc5ef00f159a4ca678b8a2da3f8b3c829eacee3a27dc3932374b365f219169736f08c6b7b3074ddb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c3f85917b01244a544949d49e2de0f9d8097484c2343357fe07fd83b767d609dffc7d0e92bd1b4ee86d9b2a18e1d484023100f7e2483c22921feac50aeac88f103d4db5d036c35b4d71bc520781ebd02958757ed8c3e947cf1c738e6738c0465fbe190302047c435bb5006630640230485f90bd1ee1941644feec9f089191282ccd64ebfa5997d4530b800b23f2df1edbc92082e6799c2b39a8d86660a4676c0230748e1e8bdd6380b72135b34285402add0809a9440c89fb564f874b7e334f7bac720513cfcba1c49e8d9de49a123cbf5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e89bd7a7c2fc99150f279446dbb8db95205633a1b8363d91945dfaf5d739a2865eefb011f05864b7d7ce1f2124ac1b9023100f0c84f5584f91f27f0a25e95d09c4b9a3a61f3c34a201e72292b4c0ea4e278ebe9a9a3d9b11733486e9a5467939aaa950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d67a197043a8f230968d80e378d358792909924b06ea12fe65dfa685669a7d43e5b59bfd1e8502c1e35928ba51a48790230516f30ae9545b4b060e479e0773b09ade003d1f716928a98a8ca1c087a101fa8dcf9c50019cf01442e210a948fafd8a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bbaa6cc13b4b0d6d4db5afff00edaee47b96f89377cbd60b43d10b7ffb7ee1a4d60da1e4198ac9a961ad98cd3cb5f46f023004393dfecf17f222674049bfce2743059278c84feeb8b764be4d49bb08838b2ca38ebeda7588c1affb6e533762e475890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100db377f53d28a8577db3b667d74e537edd3abff46751f10e1778ec3248327e218d7cc91b928aa54198eaa0cd0a0d7c8b4023100f70d951d8c05deca5fc3f70900eba07f31a75b8ab61e3988c0922fc948925f85d3e8986b588b8dd355ea6c180d1258600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306618b440b826f2fb0559316e79b5f9df069d556d4e3917680f2b279718578de55bacd6e14eb4b579e567f248aa2917fa023100a8c8cbe8dd9b614f602387acc2a9a1cd4f8d9e8cb2d6d94879c2caa1c7637612f6c7de74e6d83310d38e12f4a2e3e1d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a77bedea6d60af73a2a5660d16a507c8675f44d3ddf4b908feeadbc77896e89efa1872237c3e85ac91239fedc5b67321023100d9783023b4e75e7f98631f8d86272b41fa8515f2c36d8ebc026732f2f0db6d7c42ff3e796b2226164f423926392ad80a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304106a63b62373eb1677391ac756188db08759b770ccacf482a7bfcb7ee73ccb9e1e00f69c095c1ace50aa03faaeae7c1023100b893704d392d6174ed478bd1515a56f2c6a961211c7e4a751532c3f6e517189905a71b9d9ebe35c7a3bcd31160886d160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230696e992e517de1a0ba8cb553417f12e78edac5411e5c0133c040ef5610da1bf3f1d51d2dd15eb4b86f19f8d7a89cf21c023005baa32b9aad324e335187823aea6284c7c4d300e6650a87d6a8713f0fb7d1da90afd986277ff9f0b752186a7fd0a2410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023067d67c8af148fba1379a9d568b575bae62d43edb898a8bc28c06e82c4ab17c467a2595397037c99c0d771aeca8edc1440230354f54fb38197443cdfb07af006d29459b7dafc085d7ecb232285df6b18b0c57336304d73f122dc782281e34bf2b46180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302aef666ebb2e802daccda775fe230a02fbc15f517053ca14feb095f91fbdd2c2f28262593974a737fb10bc9d8914f51c023049bed3e4ee4f61a3d7890698bf02e54aa184824562b4d48dd910856d9ebf9171a8a321149ce83e6db63f6a354608a04f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100adacd50268aa2d9077797fb158afc9558b7949af9b306c7ff3bb81ee641974547467f2d42a56136377751e0ad9e7018a0231009adb5a1d7958f52f96e63dc95b01dc78f098c7bd0817efd1f858cc1cc4259f34974adac2d1e7d192207065812334b4850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097c838b1374f1e6a7d083a9678838a17a64d70692bc909870aff7cc18735fdb231ad17d9cf4976e6afa1acff25272bbe023008aebfbcc9050f9ca685d7b7b5c8d1b6e7115ccceb44fd1b123b9eb3024477ec320e11ed24c4c4c76050a8a9c1bebea80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b22d84329ac06afa8cd3621f1da9a7a39551b1c925e6c4356cf7b0a97315e50a03ecfbb83410552cdbd9a2ec288f8760230273abf459107956c02619d9f0a76c166effd5d80f1150e813af29eec8095c7e87e2d7c27423851b7ec87f51e67c903820302047c435bb50066306402304d54e608714db846d774433ef3cd7aa3eace2a7e1aea0d182f9df3bf916802a7e24a1e0d913b488d1c08c1e44ef87e4b023044b1a16f5a8af1554b3a25bf80f337cd80b8f37947e50492491a1fc91ee992a8e45029b1bf7a21ad42eb8fd0040d0bd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023033bce95beb84ccc0e56cca46f3df1e08bf2cda75284251c65e38b34af9e0cc904d2940da5f7a7bbaa8ee2570c08ce1ff023100e62b6315231da682d1025659579be0748bf0d31a31080e1704493b87e8dcd4c509fb00ba285b8f5b4c45f48c8d5fd4de0302047c435bb5006730650231009c11222db2f79f807b29b526c583d52f3acb566d078486b5b7c53588dcda231104d7e3d2271c705c438ec6b8aba8d02c02300241d798239c88cf89e878dbba00ddc6ce5384e0b0fcca71a299974b0e042f238dca8f5c661455b8ad603d52e3921a570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ea65a9da1f8396b021f30eb91a2f0fe2ce825cfa2a3586520b26484b1a52434bc025f1320ec6819b089686f4515edc502307cde22507fa9f03c8138bb4d585f5cec50a00b30ac65919f57e0c67fb3e5de64c09ce2dd512727173ee7a3bbeffaa3ea0302047c435bb5006730650230625fb67bb39bc73459f0b05eadc805e5129e124702fb33e4c63e54a966cb669a02bbffe4218db56b24c8a03e152a1d8f023100e887c263b4f9151b9227dfd6ca4aaf301005059d22136b44c6231a9390efbad75d6819533b5b4b5aae4de9ada3555fc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305944bf45e9ab57da5db6bf8b1090b8c68eb1ad04777b6412048879eeeb025002f2c93f45880fd2dbaec5909ad31ebd2802306f0827581b84ed681f71a5eef379160e69fe2b187de5da2473d57cb6cbfd924eb4ef3f40cb3f047d6aae6b9b1f6a1f960302047c435bb5006730650230551ea15f40bdb882c8c23cfc1161ce9d57f430a635425e8d62eb0399410505415fc43874d88e3c5e532669a7ab352093023100fbe09691a0072e19a8be041d3ebadf669a86582fdde2ead121dd7fba70ed0e911a70726c1782294fe33152da5b6e1cff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302584baea9ba51fa9e4035602b3dd9172cce9d94e7d92e17874f70bda52055ae254101d32aa014e7edd42fa8a704814450231008f1c5881f0fb165c0ff0f5ae9a3bd6660dc3f0862f5be1114671e5fcccbeb0ea66320461648efb50cab4d3a20c8068460302047c435bb500663064023004b2dbef3d0690cebb3066a0c6e2cc528d731c550151c3c3c8dadf191d6e0eddb96fd141c77d32cb03c8128f6eb2ad05023048330fae82bd55b881d7c0363c11fb3e00beb0a3377b346f6548332014a7982dc962e708da56a96f6a4499bd03a013df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fbf4b094359982a8f3e735967feca7cf8b5a85df6d5a878272a49ad4882d03b2a661b566309f8f3d2ef56a7261f3df5802301352d2eeee62d49644d0a9634601bc6e9d2253c88279a89e44e00446be1da439ead12e3716638a8a5630fd22bbc278f00302047c435bb500673065023100ff4182cef4e6aebbb745f889549e0bdc16d77b802b79f3aee00edc6dbfa43d840ab1a830cd8e667db4ba58ddc99aa3340230084a31f8d289a260c4c6db824103ead8f74cae2a97740b732d917b44b24f377b00a71e1d2e609e86b74b7a88a5b859de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3110a2ed417163eedf757a5d1731cf8d6091cb8dade46e983f555093d524a4d59220fc8cc01f598b495e27fee408d4d023044f5bbbbd2fdbe2f302738fe11a54170b16d0ab1b347836274d0efac601d346e18e2d7a88fcd3407a8394ec13a07c6800302047c435bb500683066023100e4e48dc2e8898f8aa38059a62068724729151d777639e9bd203334fcc02f2f377119a5c42eabef0ec7967da52c36a4ba023100b149ecadb7af60f9f46e08e0792fad5348ebe54d26d9b0019a1c064ac0779e9195e42d42cd0a19d72e39e14f8f18f3320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100913b8d258a9252590458573d0acbf3cff0cce4f9d15329ff658727369a549ba1907994d515631b7fea37707a17b8d2d0023100a64b51e7c65e353c6baf7edb6a622b2584de54d57f80279ae33d4573143f4bf219d875cd55eb5b20bca98a62ec120ab00302047c435bb500673065023100af33f57c22545060ee3ce2d38c7d450d140832aa0bf1b0a4b6fb087d195f31482712de4ab885cfd9842b1b681efd7b1a02304b91f72dc9beed789e9ca58d0002091cf74a34cdaf1ee241c322d18183f6570c1c751b52c5a02cc44a15d9fcc098fe9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008fa59f0b5b6fd259a8da3eae7a27a632ee3761b197acc17fc38d45f4b80b9e0fd98f74b5bb42e5bba6aacbba23ceb4f0023060027de87bba3388bad3a4c7d96b51b9ed1aaf9383992b93100fe9aed2dbb2d4de69d5b6fb2b36a5f057befd4d81e1760302047c435bb500663064023024fe5f8ef1ad2f82db66d5e9abe35ee9e7e1c242e6912f0b28ef591f1ef792e81cd9753bb46c284b2cef0eda1aed668b0230272b83dce8b64b457b10e3607c8dbce74f10477e02b6bdb6cbb2ded26329d00dc153a7c98a93631f8eea2befd024f8e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100893480c28278958b460a9bbbff068b86b3d6127b56780c7b0a18056e709dcc6bf24058f4032acc9405801353923aeddc023035f28ea609005398c3a22e8fca0d4cfbce2ef526012d37c6792617c54fbd8c0634f6f5ad9fa91b9c6919d2286489f6360302047c435bb500673065023026c2bbf5dba48079064472082baa54da57d517d43d6e8b6b08d82afb685acaf7bffd521e363417717746aef5f71e542d023100f0301fff276d86fac804f3c31b3e3f4859b778fc7aa129411293cd20a30ea941144648104982e9376f0805702b2794050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c00154a72b830334203d4fab12ccebae0daa88a288287494996b0c5d09d2ca6a0298d76467a98ac9307a5d3156751ae8023041f032b53547a72ffbc99675345a51702bee94ffeb070c99d540455719ac22fa7d5dc441d5be64514c66501be6cae1250302047c435bb50067306502302ddd0d88c1cc2a3b29dfadda01e9487ddcd952f1da8c6385e949b50606ce9628cfd43a588dd07a4a0789c413559a86440231008023bf206029feb96802d53c788211026ea6c4e3f9a000f02b5dfe518db3d588e9f4d55375c7b450229ac2686b9bd23a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230097e2d367a1ec35af8f78a110bdded564b41633f64165b6e05bb5d3bc02aa1aa74cd75e43be776bba019c0c0ef681c3702305c92dc82b001f706d694193483a0f60e145eb2c29217994f95563754051eb0180c5b135b98b0f7f15201242ff09c6e020302047c435bb500683066023100a1b3f02fb1763d2021148105a5e436c65d2430af525683fc6017c4363bf73f2489e1527b1f20ffc4e9dff0d724dda33b0231008d3f7a683274c5fa983fed044349d58b7dc9b4c12216cac17321c53a0714fabaa12aa6835078c1426a19f24d162b20dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d66d6ec85006ec17d6f6776e7852e78432d20f370d9506165a71b2ac19b97b55f32f3890d803008e1b9ac22ecf77cfb023014bfd0805a9b24dfc16c527e37f6846823c02a9fa12c7d1543da3a73d61d17f14862d386dfff8ec99d2ec119d62294100302047c435bb500673065023075c7fc2527780b48e2df213578ded24db1cd68c7fc7c5c7301e268380f86ae5547343ebe4a2f0d35920a092e1cb73650023100dd41062ed9a4ccbe189581d5cc16248545cfe2a93c888541d4a34d7e012b643e6d5a8bac91b6a397907fd401d93930820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230340a81382eb6e90bd6ef2544ec4cea764d825c3e7b7a7621abcfef31f069d7a1e5223a8508e143819ecdcf7570c6caac023060a78ab32b715df1671dfe8f7e7e3db83edf86492c149dee773881af130ab0e651b410a44d894aa6eff274758700a9770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e37129722895cedda4a2608311038a10d419bd9bd1a921d9ce716433cc362d02f52cd2bc6200151cf48994b5407ad6a8023100e5a1bb4f2be304a1717d1f2303a533966508eab96ec8d190842ac32e60d9aea46f646e1d97374006faa29bf8ddc75d9b0302047c435bb50066306402307f093144def244940e57e2e5208daa6ecc52733bf0bed6643bf32a9782889de23556a66635adcf01b36f92e9504203e0023068c56458d7ed4497a86f96eacf59abd0e076c48d1ee2b5cc606e37a302be606a556e49393a73bdb9407fdccd94d711740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039ea8ff247a550cec73875dc979dda572b7d97495efa81bce1b2c8f50bedb6237e3f7f56319402d4f0fad6b8780eaa1a023100b984c5c63a1b8f31d8b3d8996b47aa344b98cc5eeba93a86c7415c877d27f29bc3702d39232e349d4325072a9327c1950302047c435bb500683066023100f5d221bd775c08ae5910bdba102a972f7bfd829066fb9e040ccb4ae74ebd20342d85fd9edbb7035dc1f34b1e309800330231008427fe6f275d35428ac33167c44571fac9ac2f361bb50e797facf8d2d3e18b4eab83802a2c418252d27da2f3e68e22f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100db93fffbedab22c4e25794030e6cb0386622f8a56eea64a277e830c5663f8ed69cd66629bcc135928856660b4f71b1c2023065a8dfd77e724b923f604b049eb0ddaa06feffe78e26d5399ae9ed9ae5f08dd36684f0c79eafa0e50adaa6e37c56cb6d0302047c435bb50066306402304b5752a5ac08f0b8af633a2f8e7272d3e6c5cac66ba3a3cc785e8e524d0376e0baf5504264d11eb5a117a414d44f8906023057b0ba73fdc71025ac671432023372c891e026a98cc3e424aa4ad9adea99a04be3dbac063dced88de08c1b89a3c983a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c2e88778fbf1296b9d1fa6c20b70901c0900649ed54103ef9f4f4d6d9ccefdb50e9ee7fe12ce9fa4d1b6b16bdc4582702305b919eacd65bac387903aa194415f22a9c669faf920ad9ebe6cdb0449562009d939ce62e0499a94b411a8008f65ae6cb0302047c435bb50067306502305d66b9716895dd97fd05f84206426e0180553234d30cf194fb3eff5e7fb72b7e54899a42ae3961d0ce9fe172fecf3b67023100fa47fa57ecf76ebca12aae70a455dedc95129375a1a59f822b53422b6bd5569b06f89573ab3bf18852cdcb7539ef67370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305419f09311e202dc2122274dd26140fcf978c6e2fe87e7381ec202a80f8b2ddd0c820b16463bcac9745c69d8035fb14d02305ea55cda1e8d962d36316a6463a6f722d1f26e63368ed2b554c3517147fafbcab7b5260806d6f0d37687457268a3297b0302047c435bb500683066023100c14c5475876eae3a6d5253e81564c5f0ceaeae4e0f2071a75a235a1704057f161e13424a840c699a3daebb3fde4dd5d8023100c8f2faa3e676c7f077ca6903234cdee70d7967c11ecbc9c6730bc3a6f92a2c0f214dae346276033576a48cea4f91daea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b4ef2b78485d0a07dcfef453dce3ac1383f78bb82a17a6e17f8ec0b13ea45157e36a4495b72b950e87b653cee70e202023100db35edd15f167ee4fc5c1357ee03418a19018d585de80110faf7bd206d534b2f41f6c1e6e1f2e0e20b7613d9ba61965b0302047c435bb50067306502306eb841a3353ca3459c1eb8cc593d7cd85352d7d09fcbe0756eb1f1a678dc9ca6a09b2b27c8e341756198bca8b400b53d0231008441d7bc744ac03ef4dfe8dae45778b28e1603ce6e58e1cc96bdf5cf9f324c935d4ac547822122398aae971036922a030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a3976ecd8e89219fac53415741adab2aebfc9c1ee45d28bfa0ebc81ae86a0377eb0a20ee7014c50db4212f5ef94ab7c02306a05324bb2ba589912937e4cea81686f0887177311a17a6cda1a8724ace1fa899a54fa8bc4238cd7a2c9b39717c4ad9c0302047c435bb500673065023100af3705401c5b1cdd6ea96b8572ca500a8413fa56c57004e91dd19ee2fb01a45cdd4048e1b23c906befee23c17a924b1b023025b5b379ecddb1be56a7ee1d7e4ad970c3541bf76a9315b417b45b1b16fd8179057388d6f38a96ca74ec5dc2e72041b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c64b0011f2cca8c167898d22d6a8465f9d3785b3770c3856bc3c48ddd8ee90b399f101eea26663a74035ece8404dbd8c023100b0dace80578c5749ecaf1f11cc6dd44154fee976fc503a70892a761b48f73dee7fd37f8a7614be11a035ebb3bc19fb2a0302047c435bb5006830660231008d722b78efa8ad1530475656ed3401586945b26d0dd5f91cb06361fb992f74ab1c3c1e4306e0dd794ed68c653fc706a602310084f6a1848c649a1e216d08d28757b36da39808ea2d4ba2d45d1914ff0cc8cc1c8cb70271a1dc4d3183db6de9f3e6620a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eef72ce30676fc65095734bfba87db85584365099de893129f97c488705f6ba3e32884fd29d06f61623018971b1010ee023100e4aca7edc0cf2ffbbcada0b21073a53ca017ae402e3447a9309ff6a46ca3fbb74457f6b5d18b9118966912ff00df684f0302047c435bb5006730650230589efc38f07350c8079165b9e50bbe0fea6577feeab98ba5b247fdc2484f5b7c6724c55c44837931c5e58e256e82f22f023100c6d46fe97183d47a2e6b9cb398a2fcdd5a89159a7e96fb70073108be03849b487a77add7bade49a2c80408269ab507d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b7b08576dda53e6050a7e3492b286c62b2f64446007da4e7b9a81cb8a84cd5eb95ec1910f6f288c397070168f75db907023056992dcb2bd8fb9c304a308387cd274fbb1e04718fbf9de5e8222cc4cfd239a4e27697f58d2d38c385f6ff2ee850eb550302047c435bb5006730650231008c8a199b73cf82e2e5a5ae9d92ede1c5cbc45b839fb3d9f53069f9999abd30834971d3391abea33f5eccee865bbdf4dd02303090029e8e382b010dfb42fb17e7e9f33cbdf9f11364e9d1f75c9b467f36791608ca02fbce8b6dd43d3928b44949b8070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302c237a3aa3d93ca9a422dc44d2e022e6651d02b4f22c9bbb2e58eb39937392cff2aa9b49a1121f1b891d4b0773a437d302307dc5302c037c59b836619b622e0151d7925129134d1c5b4c4cf41fbf75a72274b0a564d99b61ad5f901a230e6c7833b00302047c435bb500673065023041337d533f3a3e0d644a4420eadcd885ae61281888fabd95bfd65278c7a59ac2241c4db491eec3c3fdfa8a9b6865be9a023100fa4c95a195aa334a9d9c40c98c5c24dd739bb5d44e90d83074a87743f1d6e3b42f7c524a0f6aba3004d391fdff7126100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306077b2725fc7e9f1bab6c8ffacce0d38d3ab710a138d18ba9cf87f114ef52c966a3b7991e83a307cb2439f09c37afcfc023100d27ec70b39b556e6962bb303fca26b1c3588cfd6223a770f259495139907856d1e09d2cefe3e3e4e369ed7ddc4fb617e0302047c435bb500673065023060e95f6527613253b404cdeea255eb60853e6e9b0d4c1134f7495635aa2d499445720d3ecc6ed2e0784ae6df729c40bb023100ad9296effe18646bc662b1109d1b1074e7d3cf40f5a94ec91d08af30438c5c0dad1939994d7c62882bf713b18ceed78b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023039000ce6ffa9c51622a6e05fe81e777efc12abbef1512a64b7be483680b69e21fa149fb6464ea1892333c0cabba8acde0230769640faf45b0ba3a8530c16fc7f81d72fbbea2edf12c0cd58a217362d69a1f8fa745f7e394cf737ce4f309ebb4ca8710302047c435bb500673065023100ea2dc0d5a78c4f1daab56769ef540013040d0d05247b243afd4ff2555cc5f1070c894a6c11f648b32f8b808804109e8b0230567d9f898f97b0c824af8e70883a28372cdcafd3eff0ef583bbd3ec852284a7e579f2b470f918d61308962d67a2154d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087134717c2a6babeaac95a5f96e14bfefa089266713216c87886679deb11eb10800ef973b56c03395955257d28579eb9023100f59b1493f3014c07202629ba2b07a8b6b13ef04ad9388d816156dc3e1bb57661b70dfc2d7290b38a819794bd12eb87f40302047c435bb500673065023100be13480ff10587aba9c7f448a7ff516d5861245d4b344e07003f5705bdd357ec903a8a425974f9a3b91ddb440e437a8a02300c76eb642be8ff99749542de30e6a4d90876b9450b2ae6643de3b307c94cb06b243227d11a5b1d46f72b1fd29446c3980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303c9557fe4c2a8c1c3ee6003c42435607a9e0770ef4ec3778c703dbc00f1f7ae8127fc5e87dd0c369e809855b46e97e1a02307f3460068087afe9d6a096689b174b95ced3afca3c805cbe5dbc92e682b09e603424d499ee0745614f64ad4bb44b530c0302047c435bb500663064023065e0a2b44abca6f2bb0f9f048aaeed7715d4d5e423d6d6a156e390ea9d76351687d831defab69d58440bfdfbf80a79a0023078db6187976bbde94df1c27727e1bc2ad63733a1d418ccc7972b7abe06d64ba8ef390bff7d53e746c786eaa4d6519bac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230026d6ff5bd8699f565374badd1619b29ff099cc0b9fa7470ca73806dc1ef5ba60d816133e3a36d45c73863024ab3ee4a023100c45869fca1ce020e079668d0e21b9ec49021db7f0a4c52c22108ef4044be875b51f85988c82f07af0cf6d338b9068d380302047c435bb500683066023100f1688463f01c2808865ad4ebbbed4138108809b8020f43ac5ade4aa28889e2ca56f35f73b96e9c8322c56e1aa02018be0231009f9bf7d2164f62b13a46ecc0acffeeffc1d66823a83e46c563baee734384768c543d4e4883850ee0a8dc163d9e9987fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b899552ebef4cd6af7921baa347fa47c42a5aed53b4e42fdce11ee54ddc33118cc4dd200d592292a863044ae3e7b49c02300845ede39ce3aa920f7f831e91f2114a0465e232c6715bf4fb6622126a7a9f0157807a1393d3f386d88aa098e9b115430302047c435bb500673065023100e91de74aa2d1e5867fa1642284be4a8b0886eae22ed7c9db41120dfb9906cb9d07dd8c5216c694804fb3c7403cb88a73023030bbbe0f1f588d5202b18c4da08342c557f1f1c14a695567c27a9d2fa29a2804f8f702e732b34fed47b7d80241dbae080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305be7fed586e6693fdc1ae9515e21c055e612d10c8266efa9b50644252f0d97a0667f58dc55aac49f3ee98030ce92b45d023100d2b123d005ee2df96bb8fc5dc4fb29668023115790fb232a565e1ce0eab1c29e5e0c766b6bf383e1ad3da92ed03818bd0302047c435bb50066306402307fd006aea2a8a8f787d0888ae5669fa138a3cfe36a5f02b805ac1b1f419d39ace298067f774166b5d2b0deb71234bc500230455ea296895e827da9166259fe4d0c3b258e1b968fbcd55887c7aafc821d3f8dc65ddf64f311a53315e908741f28b4200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd70e2c954a50dee88da7acdeb5f425882aea333548168b072bf4b57ac8899867f75375d60927fafc813c67fa1598d88023079024283e70ec3aef7500a50116dec9dcae80f8e6812b10354ca77e0c81b1878b8c37709ea301ccf1d3d381950d2f7000302047c435bb500673065023100fcbc431a2eed4345a06e091e7bd528c907e7fb46e9c8f4f6c8dafe167841ea28323f062139d7269b2c02f7849806d9b90230235158f9282ec35887a080ee6e529a7aacd50e2916d5dd3a79988cdc4a18204fe57b6cc36021d93dab39e7ec76aa25e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043a7cb66dc2f341af34db43722f4a54d61627c27bb664249f0f3f8c82130b40d75c7a9d9c74c6d691d341df80b8c0c710231008d7273ac6dcb639088fffff00857bf9744c5fb44af2ab513be58a9344a929df6c5144686d2cb821c0f9831e174c3927a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100acc145eb8faeedee3e236b566b05cbe8c07201188b8fd9a06b525f4877169efd1f70f51c75ed10ff2a4a47b01a954edc0231009692de6d6cadffde381d2d50dc6e1e57af4991500afc2e49aed8e7afbb04e7996255c0bf8aa25b8c26d1e204b9456d5e0302047c435bb500683066023100aea72262a889ff1f04d501704b50c6a93041a48d12eaa50cf1f7aaff9feb765f35c5b5f8a635a2daabda6d78317ad226023100c3f0ec1a9c9e3a553c0781ec4c9b2bf3845d650620935d167cad19ccbc60738642d578a917506071f75107fd6c38f3f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5318a008af8f919ae34f11b45cff97ea00396a63ae1119184331d08bfcc60f17f4752e1bf3a1f02be88ed24c50b660e023100eb3fa9761fcb169cb7453f019ea0d940fe2f7f9338cfee45971ed0eac4ac8eb18d1fbe9b1ef6a21eb12cf3710f3ddef80302047c435bb50067306502303b6b9f457b8e21fec60d0255a4b3c6ed669ad1b830ba206ef39537bb01f116669993a64c6bcfa9030f7440e0d835cd7c023100d57788603e0b8c5e81c47fd44ba72925bd84c388fb18a8de57c213c8e3d53640234cf287980c97669782fa6e59998a810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d1d9aaacc25e1bc681a63124e23c4d5c94d2613f2098a2f47e9a3f69e47eb1fb2cff25a5c3841349a441322686a70b1202301edefe53cf652f86214db2d9afc49483de6297854dfe2a871d960973c8298cb4a1b68444920cff6afc458b0019a9426a0302047c435bb5006630640230109f261e575e9ed571847e20ad600ae8d9dcc477f2709dcdacb270a352e2dfb21eab8c74d096ba8d4760aa140430c92e023014d0f500e8b5267b5798b77293377b1b185b225808b56422e9bd38acd6e4cdbcb3789b693804730d07567e1483bdd17b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023045ac30e92f877bf1f2b0f85eaa62cea6262144aaa7043823154fd77f7d86b698bd55ee7bb0f2361ba66c45d7ab615414023100e83f8ab83d65696b1e7e89bd30b045ead22970fcff651915a4b5d5a634f6c82f9bdff7cae40a5c9f32e4e30d186cbdf70302047c435bb5006730650230244f8623fa6c5a46b145528db750958dc3b699a6b847d4f443af844df80754de5301510b0acb39f25046279d37a1bdd3023100e5cafd2c6793aa6e878445d74b73bd8802652345f009f9c5fd9c6f6305472df8d5883e60dea296459022458c6ce8c8320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0d54e0a54f3dcbfd5784e3def8690654eecf032943fa6a1f5943fdf5209c593dfa68f010146369191571850426cdaaa0231009a69f29f93066ceeb425712584156f399a822bab60941eee8e532ac67ecbe43ad2e140d3c7532960da3fa127a362d1890302047c435bb500683066023100a3cc39a7812bbe29477479d1b04a25665ac03daf3c2380a1bda401b162518e0361a148965fbdb27f17cb40b814aed57e0231008ba77c5b23bc9fe37f85dcac60ee5b832413db249a3dca33f9c0bfc69b7db4659bd0fd02cd72c64aa5e2800fe4a3e8fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023037e026f9346c7a9848511ad3623c7197fe1d8a3bf3e1f67888021ba2bb06c3f795fbdb7d75dca8036c529bf09be1b711023100af5942a32d0cf859e29deea63977dce82e8aefcb00df4b4b1bd16508c9fce06199a86e7f78c2cc18b3f463faa65e310d0302047c435bb50067306502302ab7c5ecd2a17027b5efd267346696ce1916a5b864970266641083ef69c034129720f9a6d17031bb8c0ab51ce1130072023100a53d1efe5b2cfa91d887c637d45d1294fe60f9295e69771a81a13283b8aa904a6e822c839c872818f4ab11c10c2787c60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa9c9017b8f4cfcfa3079bd8de9800c8d2c1b0f7967e3752990705e21031a0cfba69921bdc18471fd78f55503a25f06c02301451d557f4b74926448d93fac884d34a8a9b9a023c2cb7a5a736e44a9cc4cabce61af15610ad8049222148a35b046ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230395fd9e82c8ae978332cca4211026a224920eea0f4e517ab46b81b7cd5b24b39148db98d1aee6ce246da4e196924332302310094c1bd288b6ff58a91a910b6b25d56cb0a16bbe8b6072ef50408801e3213bfb9d739ad8772e9795c3663e624ddc0e2710302047c435bb500683066023100ec59928e1ce669a81c7bb289671b865a7c1278cdb47117cdf821eba22128906ff8daeb268e79b972005de217d0654c73023100878f82866a518fc53d148261fbfe02cb941646589caee7c13586313944357fb611366e2e4474c1623513f3aa77aea4e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230479b0586ec0af99f8de539145d5ad67e0ac2f057914a288864d4e04ba01cf372dfbcfd4c6b4464694599905ebd7609d002301eb608d5d1d7eea7fd5969d9eadb91eb687d990f2504cf5789ce871aac45c72c6d002012b9a5f0f479aef956080a635b0302047c435bb50066306402300d951927766016ccb2f8d3ca2408230c455a249f2545fa7f45d1d0c243eccd37d4a16cbd1956aa0c9f0f45a27964f528023042e2289ea85da0184fa5520ef4c00ef404e7b84acd4b027abaee9a5da40bbd6678ebbf67ae22bb8ddb9d1ac0099ff1760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c5282891181a0c06015cd65f50d24a001f6567bbc626786e72d46724e5348a4228b47d7f6c4f06bc9de3af904247e7fc023100bc218c81ad9f231c5e9d5c678c6a9260bc7c3dd3282d7bb3e47e91b3cc3b7b30a3a388a5f4a5e68bfa1e10fcf57e2f0b0302047c435bb500673065023024e725b1a58ce8eea3d4fee5e7900346b690b2609da4fc54f4df993499d1aa759e303f30de1c1c6522f0a861836fabe8023100f3bb7513a20d96ed1b5ab7b0d8a5c92c3f3f7f3d8994289f194df5cfaed69863b2a177b429ccbcbde36192d1135150340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e43a497fdaa6a8b078f8f2e164436d987ac9523176c3ff718faa1c5d7001fa72c1f44e2fed89a2817939b31da2533ee02303a426acfda9a7791e307a5e3a0017846d88a1e1338ecaba2cbf533e4c43f6535567dcb590851cf50cbca67cd984f52c30302047c435bb500673065023100d3db6574459f81012203bb00a7c47d9f55217185a0d66764c98759fc363fad3522b4f2da32fa2728b55fbb5239b306e80230037b9be58df2aaa8f934cf50218486367e4b5a0f8d3a5976f0cff8e625426a52e55e84d714bd2aedf282cc996a09c90b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fbc630083e930632f99f380a4b50b11c34bb92404cfc3a69a071e44201543be21c4619ba3b251a699774d7623cf3543f023100fc9f793a7e03a1856dbc63c91dc4222a4702bd616bac0e0d465b7a162c7335b98d039897319bdcddae3e27feef042c950302047c435bb500683066023100a99726bcfa8dc30b9e1d58a53b55cf242b2f8b4594f6c6d9e98f8bb00fa597764d93be2ea98c051c04b1a60f99618bb9023100d6e6097a7c8bbdc61addd2ab786d4a7d6e4f17fd1720ed7ac001ec193b3a960410b08d0aed3629ab0181faeef28058e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7d0a516b866e0c4fed14d0521da3881948f1aeb107b13492090dd3be91aec910342460ac6a4adfae07e4a9825e3aab2023100b02c8bf4ba9e8532eadd87a5123b27dbba0d5d93522706de6f5327ae249a64e892de74c9a966545f0820efd12a0de8820302047c435bb500683066023100dd93c4c5415fe8b26a51aa8284a51b446b04a29df73d1a007f085e3e43339acef00a6957541025793cdfee362e638505023100aa99367d1d87132e03b3bb0c9392a7dfd0f7ee188ca8e02ed5e3ba6791e216a8e5229bf0b68013e03827d68691d5faa70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a6cb2e6e442a08b47adc63ecf117384b52c335760e12a29175bfd2e6d8bd8896f8c6c93ad48317edca425257cd3d468023065f52f6d265763c25422fedd5bc09dbc234c7b2ea39a282314ceb1e8f4d306f6378265d9037856d408d7a698c76f5c8f0302047c435bb500673065023100f3fb3d74d47e5a2ecf88c1787100c10fc1211b3f1daf11c7bfca12cdb92e2e0a84e09007345230272cb023d5117968c20230774568cdfee87a2f467a9e98cf79ca1acd58fa9f6101c66d57b0d6104853c79ffb8dea20ddcfcb0edb574f21f2cf73ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d3a9f260391bd38042495eaf5d04bd8260f637eb9fdb8d37a64185dbcf6d27ded7ebab25b9424b60f394d7edbd128f9023065bef0b73dddd32c722b4d841213c3c8811117b03c3bf21b0fa81c15e03c43fc9536387be2c766580f9141f14cc953d70302047c435bb500673065023100ee74af8230ba8e7d803ce6073ff53b7f6714dc418e006c6fb7d123fd5a14c697b3536e2260b3c50e9040896c5934a0e702304a3f20b46bb4eacc74ee2c31b76950f7c2d6ddb4e5a9a6c259832e7ed774be9218aed92ce93be731a845f03bfd3d696c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b0de7e02e96036113b3211a2f6240255325b022d444bb96700b7f28fd960147b2c065394ba447a7878aae36409438e70231008a65a2b54653f607f95679c0f50f4ecdc684cd15a0268d8861f05e0cf464e99432e6e7bd8f7bc9a409bfbdb65977f36b0302047c435bb500663064023014804799457b81db7054a049f66a5ce5fbb123f86260d7c5887602f7b231ba596ffa205e1c0b38f7994beb298722275402300d80c206e8cca9e43d1bb77b3a3594cf9455b938b51e19773c92e21d18dd4d583d2b5f228648abbcc7528c7b7dd07b540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d4510b7ec162e9b1db07c5cb6d87e1f234a283c977056141fdcb077b692461ff8c078a7a6031ba1a0d76d35308d77fb302300cfd51502fa135a220b8bf43d9c734abb27124a25b712766c8694be8e19a49bc4980fd9dc3505cf3b6d3c1cc1baf86c70302047c435bb50067306502300e787ab97e9ac1e62bb8a55712a0944a74ed3cccf5abb5c8f3680cfbf714e026ba6797f7ad35d4106a8161d7d17fefce02310089af53d307baf05b86d27414692ae6d762d36a6f97cdb33f42d92f7bbb6331140aa777a4cc78ba532d720f6a28bc1ae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c228c1c3b1562db27d4ea33706efdf6049f9e40aec2e50e43f948e2be6419867bd491e80039e600dcc1231b9c2edf31c023100c4c325f13f77486e53f7c35fc80f7559089cb3d81ca0df268dae034a58251d1c1e7a1e67383ab391d2ea784355d5882c0302047c435bb50066306402303a64791e7ddbc8c1142e621ffe9224ba60ecce3c4822225f934d84b77a4f6e729242bf48f600ef4d2bded1b965cc8dd2023051105cc2ebeefce27b35156252e9fc7698185a59837db9239d592263bff740fcc2712aae52c0ffda05ca6b1e5c55514c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d38bbeda1c9fd8912d4a4e78152c67189a17e63da470ce6f647c307184b76fa3a859bb8d1c4f32df61985bec1caaad32023100a369739bd4f908216d61996f2dde444795ae0a92c3a0182b7c7a009a1a640abcbd8aee26c475e597c0b72c9391f5650d0302047c435bb5006830660231008c8e6a31e0aa99cdb274a68fa2983afd06371526a5ce62fe54a0e10e3c28008301f3c1fc7212895dde1b17f29afc6012023100b3eccf6a8fede74b3ee92875692c710f765acd3af686ffdb5314966f5be604e90e89f71083458d0a4a4216ca2147df370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076e4af2a154cff6293840785da837a8748b9dd0428d114253b5df4edc068bfa63b149ba3aab235432ee2a2cf0788ebd4023100dd8d455a33313396904719f064949d9979853fcdef0fd99e7a5adbe31477e052d54a67f345b7f14857ce790473d395480302047c435bb50067306502304f40d6796c215b2d313bc50c0ca2884a11add0611e3d0c6db46adac5f0d38a4e3e9b57c6a768899a095af9003bca1014023100daf94294a752a9b3038df1abb49d28803af6c31d18cabb8abd57f299f0da5feb57e21a24e8bb81168081d9c6788041880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1981bcc2ecb1bd4d303e2eb7dcefc0a92c908c9b5aee0c575ca8306f9f22a921def9d910546c4050ffea3fa7c70f405023006051ed8ee96834858ba107275532ff43e4122c0c24ae2b68fb12d1bfa436bd410dc57886d8d103b384a22366ccb29ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c88e962c9245d13ac0afaf0812d835d0f4c3da9eb3ba656fe5bf6c83d971c7be5363c61edb52f03cfe2aaca7457dec5102306921f87e09e4544642c1e1943cd86d5334d884ab0c7ad78eb4a17726a5f77d113622cf307e1565e00481c3b1912e12120302047c435bb50066306402302f024d32a575a9739191ec36475d5e73330ba1646d3bb163e5f481509a650c0bb83a57b4cbe4b0805d68e7192c615d2902307499cda00c6830a4934d1472fab4ec1f83e58abd2737c634c7d2d5404565db81e54b25a90d7d6756d106537a013ec2af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100971e1b68736bb92f1300e29b43a965f35ee76ee56934cedd5dfe3832caf190d3d8c92107c1bbf6334e906b6ef59b9cd3023051369658649848d48e5a16c6ff3420b5e2e5ab51bc824fb5e9a364af91850126b4be2c1cbb425f570195c42f1082801d0302047c435bb50067306502310081af2bc2b6a414c3fe88c454b2281923d0305ad4856fa331ba5a27e09d7e7984bc74cd9293e2214b1a59a34199aef20c023024fedc70c79d21730f315bf30a99b4451de7b2d57b87fecefd59a48fd91b7bde2732d0b37e0067d86ab557f6cb26beaa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230320b0d27124beec7dd64a957f576e3852ba40adbfb9fe354b902f99e611b2ecd563bb4eb9cf7133ddcdea715b21dcc48023100e5a52d300d0fa7181a039bd606d2dd16d506fc5803f541f592ad4ecc9505bd4ffc8caa3c187f665657b398c8cbcb960e0302047c435bb500673065023019244ee7f31273be2d99c6330a487a3240f04da0f602ca464c1647cc453072ad8bde7f3ce68cb5dac3265bd9de4134f60231009e79c8cd847b44a78b83881b1815c1c1f1d170807a29ea7eb138c8d6401f9ff39c57dcc74b4f313e9a1a24bff2ab859b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100841e462f8aebea05109cd3ab2ddb267c9e532dff42575cb7d54e9ed0ee05b78e6186b9a4ee55e4d4ef1da5c64c425712023100e387fd123f31981974c5578f96ee871fad402aeb4795e34c779fba328a006a06081b9b171be439687676c351912c51840302047c435bb500673065023100822345aba713da90b6a93aeec3e7895bdfa04eafe9391de4c19ad0e0cc4702ad658a9e3ecebeb233637b75c28ce9e524023065d6ed22e8472b2e1678248349cc2b8a40856396d5d83a27f9ad3e2d20f66eadab02ac11b417b74159102751ff95f3f00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8a222236cdc701b1575e9054b5274bf2e422937304ef267734408fba78f7de307ae2e792981d7979d14f946e56b60bc023100ab9eb38b13488528e796d5d86b956e3197791daa07aba6cb04ff4ca5415b6cd669a064e9cb784b60166ec6e32373527a0302047c435bb500663064023025856a0a6212080305d903563d59c4e0b645f6fa941822aa62d7d6976e47c2747a947920e6dea07abd4fccc71e80ebeb023002248a49955504f993868914e32500d3848e6ad42dd71272e361ef38700ad22376d1f5433e3d589f6c7920c138c4b1fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f5ce796c6788c6575ef0ffb8ffc6004e0939489701afab59617a63dfa007fce7e28937f07b6df9f4c11169760ff0144023100f1641dee9ff6461384634e14258c732119a88619f497a6ba9ee4ab61276bbe2979078a86e32ae09540c8a653b5e6fc740302047c435bb50066306402304cf2f7c68529940122be9b56afabbeace4f53496aabcad08af82d1a1c1d839cbd2f680c2d4186b6555e6cbcf0491d7ad02304d3370fa0386e1b411240eed25a4163d1dbcb8a4dc381374d358ebdc7498dd3fb44a519342bede0d270b47a3abfa35320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014dfb21f3c67dba8932b9a605973957937e39a33c1e01d3571d20cc7524810aae18c6abee63e7c7a9b38cd25b5136ecf023100918b5e61c7729bab78e46799ab2a6bd0f0dc38389cdccd37527e83917a8ce60fe34a6fae672aa889cb49281fd0063b990302047c435bb5006830660231009987d85b2d762711c26422d4fb7852f9940cb8a83191054d79a4fc736d28b8a49c7994f3c8ecf8fc2bbe178d75719ba4023100bf35f05efe84d91829c49bea1d6d80c0009bb66e75c9bde0738ba1e5b7655ce71b60bd07d1c1c99afecf0cf061e90eca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023012157ee893ba7b9bb9f9b336fa09f179e8e316362fba20082be30ec47c467dd3e55eb963f3cc0ccfbab4c77d75e92f86023049137fb8ea6be927e0ef44c290e62cd0fb11ce1d1e40eede2928bf5911204d9f42b4195f061a065ab83b829db9f180500302047c435bb500673065023062b6f77836af487499914f0dcab6c19ceb899b012ddc38f2b8f902a559523f636bfc27a280967c0fee45afde421d122e023100eb2287d66fdf208d2d4df771832690b60490b1328124706e92413ebeac91e93547cd70eb1c537cada317e9102b191c730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ee1c184995b64cc41a4ff61053e09d6efe05c88a209d6acb7b9f3f50d2d9d2c662846981eed70832e4fa13c18d7484c023045d698e5304391f1e5d4946d79714f72ee189eb51f222f12b0b4e3862358db4dde5dcabcc360c876b56bf7481ba14ec10302047c435bb500683066023100f07f7b4a3adec9fe035bc9c66485bc57a8438eecb4918f6b2c5aa5a705891ff5609a7b4c2e15ca431a130db7dd691abf0231009c1784cafc6e48879153b65b280f7a22742940ec5a2a167acf5e9703cf5421c9f3b505078927c386eb6ea4df4c7ccd740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230324878e8191bf4890f3b83e6e850d7162f90d2b5548d14d32e367b42796604cb1f039a920c75d365f9ece143080ef81d023100f9c58fa4f9dc895416181bf8c8c1ebd0d06cb59233ac52083c08c0c0457fc22e39aab062fe0b55f7abbb0a3e28c9819c0302047c435bb50066306402302f60a555b24c3386fb3ca1f0147a497fefb4d5f3b4c9baf9a38bdd43acb36295287963bb1b6c607910fe7eb61017976c023077c287a5f05353be15250935f701e75a685c90e31d3586c7d01bac97b78a2155003dd57e641ace291d61dba8de3a58580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230571fbf6f1aacc831b6d003f6482ca819a17490d88030dc9cd6d94c6f73be8ffc81a7cfd0921815b64a9b0311fb6a5259023100a82666c471ed993d1c47ef93953c6382f2c744380d07700ba35d1975ebb9c055aeed0820f32b74b11d527afa19db32430302047c435bb500683066023100d877e68333720249cdfbeef0623dc31a7ce2e6045f4d934fe5f60c0949adce5474b796bcc4f5a4afcbacfd93248be21e023100f87b159372be6171e71dfbd7982e68e0163131bf0e004fcf0ce02a791a27fd9085f0c4f9f422e5c4fb870d97940766830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230400f6be05fea2b26491585cd8adf7857c84a0b533220913bd14846eede692dc666b9d84d1cdfc0d6e13099199f5964c4023100b14dee34331ffc4859c1d247b9439a16e84561a0aa6b8adbedf59f2f67479a03036e549a29b9d6ad5e4bf279459caaab0302047c435bb50067306502301d87a5b90b47350a20fda616e59b89b914cf1f0c596e45bd99652e3c73dcef96e842c5360f54949d72f41d225b9028c20231008ac7d928e0ff3fd3809f557ce252edaa83955db3d2df93b17295ec817f47e70cec83af012d7996525b459170cea8bdca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008da08bbdf02fc96a522cff3be57e4c610eadde7d5a40bb4ac634d83ec13e422f60c90a14c3d53bf95973e4ac67cb66a02303ca476ff7045baaa0b771ab67f97b6fddff4fdc68068cb6583f4d55489d8b7a80fbfa8f289e84d6a018294893ef6c6c50302047c435bb500673065023026710dcd028aa0ce612a063c36bb8d6789be23dd16b2ca7d909e94167f148d48d7b5fff0066271899f04f907206ceaec023100ecc89ac51f9e12635dfeabf84ce15a73ace8edf555ab2f2f474501c97fae3f43eec9fdc28db6a6dd4293f4d032ba97ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af41d12ad04b6597b8fb7d78bd90251a802a78b2afbf65115e2e48d84a196f2409fa227750060510e554f0b3eb39a802023100c082fe5c6a8d94f59328d016e9d63ad1a647ae299f185b498c9a6790becbede9702508b284626f32f86269cf43b899dc0302047c435bb50066306402306ed4d9047164bce522267ccc689490c7fa965f40e7ce8f1dd5525446afcdfd95a1abd92ef88a16fe4006257cb10882eb023044a4b95465e192f2e29c31de85c296ee090ac8ba2b736f218efb022f988aae06a2091ea22af40e761bd592363a1541210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c2d1b015dc0752760f4ee706574899bcecfe967076c1c506712acc65636c23358ecdb557af171e810583aec0f87e35db02302b3acb176c07e5992d50dc96c001c692156f14935448a018e034a2d687d7a590d66993df45e4b80462a0cfb77b428fea0302047c435bb500673065023100b94952a3600627b4f0a01315a7a4ca6b9c919b7cf4ce0a3c4b6a589f415fd64d6592b302a0246f314a3e4d96d6e3d9a702306b341c02cf039b9fff4d5647cb24db776dd5a50a0d516dc9bee87df4c273ed0c2b8a71830f95a3557ad825be956aff1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092bee08ddc5bb31625d4cbcba4f0f4b75f54c3d4333d7df42e8e5f7540c00dd7dbb6dab519586e8c00683245351dfc30023100d161bb6588b761b872fcae9bab8db6692ff0c61c546b306709cd08b79f391e70a768fc61c15d0d42c5ed9250b021c67f0302047c435bb500673065023100edccee094d6dd8142d68870abda7870721c4cf8943ea456f6b20ced9082867b9c0d77273279f7f9efef0bd9b604333e20230559ab628c8d027d9dd42d5d65d2334d7da3f06eb1fe41512d48931e21777f0182e74f6a1304907e079e381fb281c37230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100964c134dde13b47d9324a270c51a35bc13fa3f22842fa9e9aaad0cff658659af5ae7cba7147aa2b6b45fb748f316c2570230269bcf4abd32edb214dfedfd931e8059f0c4eef39c1cfe39e24bbd4cf1c8da1567f1b8f4002fe0bf7c068a6288da79b90302047c435bb5006830660231008967e7cf586c9223a64e1e800f58c2ea9213547068f7eb44357ae83c4a62fe5dbb57aac1813d012ad9f0f8818b83ad4e023100fbec4bab29ecd067125ccea50288e47eabfc2184c69ec4feb429268656c5391e39c5fdfcf0865083cd811ce8bb2c0b270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f0e37ba3e3497c00c6feacc6056fc01ac142c7daebf852685e4eca807ae96e258facf29640427394c3d14277204156f023012e91feef39e4cbd1771a709244c4ada3f487f17b343c60626518ffd79764f4c2b59185dfeec25313c4cca4213bafd240302047c435bb500683066023100e231263fc2e331f72687f5a738d48151d97320a859958b5c3ce73f0ce6ffebdc3c1cf650ff8edc0a9e6e4d3572a4bf1402310088a62256cf29f01f5513a19ff01da136dc2eb31bf7797d999f430f75370298daa744bb666f5e91e42f53a6ffc9d769f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7d2d52ee56b27e6bd384f8ed9ed40d25791b7c4421471f99f71d5e709a1fa8f8aa4564bfb7b592ff359ffd3b2f583db023046b5ba629ac81bb548d522592b3e27a94f8fdcca20cbe7d570458c740d64cdc2c9878af6b92c3fa94bc6533a7f91a1680302047c435bb50067306502303a05f65985edcebd5d2f9c8e03b17bf9a2336eee6127961b9ae2a09aee1bcc4c0aa2614882e20eb76fd73968e81c1d940231008a35bfd8c5be46c77ae74105f10eb696ea6c29b96e918da50d734b36a011f9b48a445b7f68492d5ba28f7ff0e108caf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c97c7a56365e29623feb20aa72cda63b324eb51d1bfc93e93aab9c79ea73628a76c6a0a61e7baa060e2e4e6a437884450231009578946b752fa82b64ddf79b2c6edec3f167d5d9855ded87add00a660a9c45da5e63b3aeffe81cce8dcfd4ddb819e59d0302047c435bb50066306402307050caad99e22c675037c304fe7c5ed4037b9864a3a45af1e56e96cb054bfe96a553e1369c3ab99c88451383e9dcd76602303af1d55947899e72dfa4992ba9b67a3791cec2fb955e464b20386f9d1c89dfb608c32767f81b1abf3a911e2351db11d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e79ff2f046dc6aac617f222011bfa07541f281d323cc2d0f4495fbc0129c6174f761afc0cc70b8fcab305402c838b5ed02303a7b109d714a14f60a3c150bf4db246f5f6652a3c3fc5c702d19514065bbb4df424b3ae9ca5033678da3233494cfda6e0302047c435bb500673065023100d384d4f3456b631c8e96dd6219a35fc744269660ed4320aa3d3ae6095a76be49c2a72a7061782f7b893d3ef39a9c14a50230723ecdae8ef254b9753035394b0cc8431fc88fd05ec24f28db99b2f11dd2eaccd38d706fa381b865dfd63b37d409640f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7813cb23f0ea2f5229794e3206c7d3cd119d09a818160e1e475ae25336be9434b8846fa2e676340d723d7087ce993090230337236cc04b988ae1ca991316b93945991ebfdcd467e83decf36639ddcbb14bb9eed30ca974bf9ad383e760839cbd8330302047c435bb5006730650230051824cb076d593f1ffd9694a99a7a0e56340b1993c7b7329694b5946691d843f17d9680806affe6088382ea22d3ac61023100afa93cdfd3fd8de5fa3993ae544cf5f7de9a3c6c714c59563f070fc899b5fe3f68c4d6dc996d9cd163e84ed45fb50ae30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b5e91c05c8257d0e8c2ea4cb98e382904df448650e24946f7941adc4cd311d54618ac3fe31999c436eaaf1167b15d1802304b8bb149ab139a29dec816e3338b73e2906e27c2de568aa1f4dc13e200d5ec433d8edd7f54cfc31327a2baf7176fc3b40302047c435bb50067306502301fe21e201181114904fffdd1e36d08bd8350f45d18c7ee2096b6499e007bead1b065f237520795329d34008b24f892e2023100f92431fdf1d7fee8db75f6c7a03c4ca660aef0384636dbdef75c83fd5fad3c826cd5846724b976614e1000f0ba818da00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230149e07eca3ad704f8c8fd0b6dd779f9f0fead417c7023a360ba1921b8b0760884d91bc4b9641fbbac62f9105ee23c2be023040bd17bbbb5249814d2fb70a022b162b72c7dadb970c35b41cf7237eb426ee702f6d470738bcea3b80b568e1fceefb6d0302047c435bb50067306502307dccd4ed1b5784e4f613352600c12ba860b25c6c1407ddb73c25fbcb4879c859936f7ae0f9b0ef0173c9d111274d3158023100d880195c15ba70e257787c695077c9c8a1d85d1c9c960444811fe0a25c35fdbffe301fb871f7a08b44cd59aeae09abf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302e76e0784e958b34bb5809a89fa4fb8add89f2a50992921dbc44a1718f019eb26ae46ceae6acb6b689b4361f5a1ee63c023100c030a4fc5f73913f877333e3c58cfb7c8342d60320dc453c0c08a5eef8db259d5c02c7e51615e2eb4aedc25964ddf29a0302047c435bb500683066023100f86649a03697f442e45dc1633747504d4e13d6c12dade0c48cacfae6b93dc1b371497801186180b1fb5e75373092caaa023100a954f8aa13ec90f752739bbd533f0d8c0b901c69755a57bee3d8561fdac92b0896536a1478c3da349f9500c9bc55bca50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d276a5fcdd7d6bf69e230cd1325446d580da76d49cc041cb98c19cbb2fc2bb8f21612ced2e74883f50d466656370149d023100c8f7b5d93a2e97f7404611a21b3a52703e48a5c2f9d0f007cc062e9dfc80060c8001c36086305fe0f9a6463ca9af19850302047c435bb500683066023100bf3a5816abb8b19c0c0a11b256a39b7f356c8f68d8557a608a20d7264b42c167b9ffe33dc500518f04a3f729f3b66c4e023100e7b4ed0ff5afe70502a512cf4b3b08171df6abc43b18f367e8ccea767eb6e87a8fab4ef7c634571349f840bc017528950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b21087a56309772f93b99f29baa6e0c7ebaae2d496d322cae4d2ad59c38c050329b4b9c227dcbdaafdb9f9466df7661023100a5a70c75671fc388dd6a206b4e93637df1b42bbcd27bde78c51b3e58d1ab59a5583a67eae40e307555d29f86af275a760302047c435bb500673065023100f7eaa53a0582e896c77254529a57922e7f2646e9bb109a3f49eb279126e1dfcc9ce49f2f874f46a386783b0afdf25a2b02300ad40758b1b81ee8f09729d64b2bf093ff05e9630f76bbcd169900d6dbdc51e0f3e9d0b69a8e659ff77e28facb8642110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023008e785271168f08677c4aa35f51d59fb8d9aee8f577b56ae1bc2b5ee60ebfe1519e04d18159df3f807ef7527389162fd02300e66cd8d57bc4c709e92d7793589a474b2f72f00de4a776d6dfe0b394938e11d33f2898eabeb2b832dcf99e3ae40d5ad0302047c435bb50066306402301cf558eca0f75cc0fb11acb88b1babf090d85124ef68f1ae58c72ef9522d9816a1b8aad2236f80fb81cfd2bed662e3da02301de273507a1610d47b40a167c67471268c7a5ac57d01da660ae8473298bb17b014284b2dda677f8b6f2f533151edee330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023015945e09548f40a4bfe2dd3cba4bc45428f973c21cbdf768523bd0a90acb85e72161ed4ecac0aebe729dfec8b38e6723023100d9485d36b8818ef1776f0e7812e6fe2abce811aaa1a717c532ed19afbad28ccde1d5385d59896c6a8fa231c3f1e990120302047c435bb500673065023100d618706d4e970cd40f2f0a3232dbdb226f81eba532bdfd9de54d310ffc440e6c9e10f991ae5927885015495c2377c6c00230239d71e0a33b3938229ab1cafb45217217f5b76182394a2fad0e5b5baf64bdb58439a9b82d73f23ababde271eec93f870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b58c7d4e00218823dcde3c1dddfb9c2abc21d77a328322eff89e1739ea20fac2e72468bd8fdb136bf6a77e065c49b1ad023100e3c55df4af92ba328b19b6e0f122dbc4cae395d451ecac6195ee96bcbce89afc1fabc50841e91d4422213df803ef14400302047c435bb5006630640230573c3906c41cd3cc38c1ae6c4fd3960be48fceb9bf0785a3b913c72ab7e11c0c702d016e13aa155f4a5a6bfb365b0fcb0230633dec042eb03339b53d9471c399d487a61243741e984fc70e28932b2d25c47c27b2934562dc040a21c6a3392ff219be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf861e92bd18b6190f4eee8f9eb4b5cd5e5e9d7102c4b1acf1a64ec2274538629f3fccfda374efc4837277a523ecfa1f02305c839e12c38c9f936434b216d9d6688bb97a7392d12ffe4130b5d68913b3bcb6c8d1958f0fae1918a5b868cdd31312b90302047c435bb500673065023100c6e5b912bd5d222013f328f90a39fefa8c85d72c9030c7efc260636228511c73fc8c9455f3f70f40ccadad2e16e649cd023055e16535447952a2b9cfe961bb1128b5bce6135322ce81dc55c9400d2ec7030b0c1606051ebb4dc71551634d94ac21930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023019bb74b2c4361be9e99b3518c5615592b1a08a1f84b0e78c9347b337e55dbffb329dae8a4d5d43271ba6e2839ef82fad023100e7615f6a5b7d7ce2d18fb8dc6d357a9c526c503cc1235e1b5c0bd215a764d3280574609e814b9122470ca0e7d65f51040302047c435bb5006630640230774a0300f757816760a58daec61b06584e1c7a2f99706244c64deab2a34ec0487e3e385827b67096749cd7e29b9c1d29023061dba458ed5e46f4cec514395c38696511d996896877e5f5f5793e1977f6a20a82ba67aa38eb1f38180d3b6e455662990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb8ebae3fbf8546f5a0418ff40553efb3e3b9ff0577ba398fb8e1527eaa0745c9a6a41502ce9e14eb9c13cbd16b05bfa023100a6083910a8062aaefce6ba73b759d17a1745eddbbff752f7606d7981112db347e14dc3820bddfdf6fbfc73bb991b126c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bbaaaa5a5b6ce6824943b2ac9bcdfdc568731c9b700100970aad1a475fed43e8cd2b526699529240f06e2f86bee91317023100d879b9ba15a82f8dbd5d85a4930cb927eba4e275987cce47305fb6aed72b4653aeacb7e78baf38dc82bc61776e8cc29b0302047c435bb500673065023100d2f18043a6f77213090b0b9277a4db54494fe68fe6afb77b9acedfdd877520b64d56da9a36a7ae6a2ab6a9c8f2d38ba002301ec2dfe3d57f7d170866be99ee7f14f05f97decf59eacb9daab6888ae27489cdae091ac62286617f4153212110dd83210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020c73847355482b4e24c01e5e31dd5ea8ce2a54a950f095d47d65c407bb3ddabfa92eb539b02765a354e29f6a1485fb802300e541ae083bdc246fd0d4c092b409725975fdcdba3c8bd5243dd4db9038f835677e032983a3f757de6f16dc287721fd40302047c435bb500673065023100d5ebd39f3f3fecf4b34d78bf96d45c63f8e2442af2eb7731fa5a2780ff52642da769fa3347702fcfca7abcd9baf83d47023071dd97d110e75d72cf0e9d75ca4cf10640110714719fc621e06e27ff646dd37fc4f2dd368306ef26a761ce18d0912d900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310091d1d185fe9f601e7a4e84d4ebc882d66b9c06e1aca4b067d9753f9f751ce79df3281614db3e11a17e6705fb3228d69f02310094820aaa2d7d654a3cfd639c6d034301583f4dd224aa6ffa3679917c9c851f494cc2c05ede550037e36aa2c873c1c6a50302047c435bb5006830660231009d1bafb873f03aea2190cd79cdd4785d92868758b75aca42c0e9dfd920043237f788041ce29c371063e59b8d526f9f58023100f9552f39f8b7db02b7572590ce89e91cf61f6988025e3e1775957d0a5690e1f7335e21b151b0710f2832a2720efa88970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230262573c8f7f8c4d8af407e9eb80ba05cfde3c55d4f67698d516a09489bafac6d8a90d15165e72f7485716fa8ca4a93f0023100f82a862fca411be00e16c42067b1a664e6860cfe3daffac70d371c0d9fbbe071367b4d7ca8b19dbaf323f77202892af80302047c435bb500663064023100c53a34a855f6248fdb5d9af54409c31970617bed4dfdab14175feb8dc457d6fa0555c131673c98b073cc3e10d49d35df022f0c5f215d0f7fc4bbec386336ba18226c0d7b37a0a0034f65f6c1ea3ddc4a4f92f2492c6501023562048a79bdb25b530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c7ad43660792ad7a8e5a25823d6c160277fef66bd335fa07cb50095c650444e1a79ec223b931c8905910674969657c69023100ddfcafb5eb38581aec37f90b322188f4ac7039c9c4a28cbe2232b448ae61920ea6bd891b13a57d09720961a5ca910e170302047c435bb5006730650230435b73e46b1d82a400242992fe8128b53dcacfbc30c8298b75d60e804645740766e7f971d5ae8a031e93c9227e4db3310231008fe3c625765567efaf4569d4302a9763a9c48565cafc96c27049dd50d0a24675c12df43dddce8866558fdea9de8e4b920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230088249c418060fe708a5777b054742d1b439ba1cd0ed18cc4ae8562a6b0eec7caaf24c03a0f2f7aecc18ea566c067f4e023100c9b4586db6abafc45fcbe06869f47dd2fa7a83d039aa5db141e5e78c2d697a78ab7ba5c4cc064e0b0f9c91b6fbfb05170302047c435bb500673065023100880475b992951ba2d7aba8b148c9e6dc7e296fb9056891e3c362abcc50ca5d541cf00915d088a6b915bff16c23da695a023038f34e006fc77aefae5126f0388981e5c98b5a42351fd374ff700c45f5e0fd81f2a8c87fbf68a4048b4dff9b32c7db270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d95d74ea6b67f45a55e7a4b94236738f1643653bb11af1a07560275fa183f5fa17ead06f14169936f1aa0b16b78190db0231009ad5546333040eacd10895119a9f27bae38ef16ff6e1eb585a70d3be00ea5c819e997c2c97100ec7e0e4258e685c3af80302047c435bb500663064023042248beb0100b5a108de7bef90a7efc475731559fe334c79d55a2fa3b8bad310793b3ddc1e457b1f12634af3d982349702307181ba6022fa6b9de28d3b538d6a109d1d842f9da7ef271464b46f1a14fcafbdd86d0813f4cfe81918a54957d83c0d650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023017930a181024552f58cbd25b6e952c21b5075e8373dadb47df6fa26bc24a1af3eb67ea59286553e605c85e20536e414c02306951aebecaf31a4d0b38cc02c409d04fcc9d183427dc8893f6e74bf073b00fe679a1f61fd3f2f6873b62452758393ac50302047c435bb500683066023100e50abb5727298e5023a5a640d8a0490edb55fbbc7ef80b46f91e23c90a905be597716c6f71e671b709a620d0342260d3023100ca8fcb2edd16a49dc665485ac033568a6558d5d4ae7d26c122b69215a64aea564935d86bc622e3227b733d3136827dd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040cabedbdc983ab486a11871c0f9b66ec9026491719ac71bcf67f5ef2042c703a1e10f9969612ef195769272e7e712fb023100a20ac92f15c3cf886f2af9e163cbf45f3e1a62b787d9f63c73a810b3c9591b818d2b50da99916097c66b3182500b93ef0302047c435bb50067306502310099e448546d1e41bd58b0220da8cfd890db5047d4878528051dc63a034f0518ae998928e66a1341997d193ad69345e39402300cf6ba60ab166f554f97d0d8574e76794832736821da868fa9d7e10ae1d5d009a74ca62afbe541dc1a6ea6227c3b879e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301741ddcd8b0b295a663f1ea6df475180fa62ada92a5602bd295421bab509511fee9a69ea80f55eba43211ab23c661c4a023078f513190a519e7e73376b8359b03eb4ebb0af18a92aa08468de11be2e030c115c53ce6daeea6170180fcd537fce8d750302047c435bb500683066023100b50af638f818bddbde5dfcee30999cbcec20eeb23be7919e8ec666d10d214a4c3930c877198f882e7230e5424f41b151023100df8de2292f8fd4a4c2322b690ac8b42a0713c35d2ae254c269bd7a08ff4d5c86f6c95c3dd0229fe28ee8d9826ef21edd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008351afc0810a76a485e428255f3bb1d4eb8be65dbceeabb270aa168a1cb99c9a75849856055391212602b41501182e05023100ad1820616c7a3a464902ae9c6974ddf695bccb2cf6cc9d898ea3a49056706b814e6f8664e132652b1a44000a0e1fdc170302047c435bb5006730650231009acf09f56b0e9920387cc568ce8f983659a0fe55b5d8919f7394c5851186474c7fc2d6e699ef641e9caf39fd4d9966780230418872f0dfe1de8eb661060e72b2621cfe264ecfb5f3a97458e2d8507f66440d3d2ed0ce55c0737e48741c68d48959b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023059887086650f9646ec57ed844e6c110139ef6668a156e84045f86d57fb2a4f2318a58a33efbf7b0394dd66739596b08f02301bf6773741ff90f14801188efdb2ad16bc7a6eba21240a08fc07ffacf1f25014068a1cd98f14955acdec3b0b9e9c2a7a0302047c435bb5006630640230186f3e11826b260ecd18515dd3b0cd328bc8ca7467163cbcd4afb218ad991d832da84df5c82e709b2ac065a79cb829160230176bdc80a15bb89da45047b6ee43d401336563a631914bbb522f72069524a8f9881df0a6260aa08e8a546ed0762e043d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d30f15ff9d4fcfaf02797a8a2895c2f39419404dcdefa1a57bd56adbe483dcc0c34fd66f3f7ebe2502cdc7f578ecd1a002306e4c7e4af9ad2bb9910137486098e04763b02355ddbc6f9b31c83df15acd3f447f49105f9cd49cc27b6941ae44fa15b80302047c435bb500673065023100f4e8b89b4ed351f232957d3902f970f896720d31c78fa9697114c33e5c6fe352f87bf4b20939f54167f46f8537bd11f2023050a2bcc207e641953671d0cda24b0edd9d53bf99affbb5ebb9683eb53bf896d18a9da239018a9e8a739acfaa6e593a410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ad29cf25592b7ae6a2ccccef8ae29d5037e9ffa6024db1dfee3976e222674eeded9cc448bd96ee777faf18d9f3800a6023100d5c1e59658d4cffc84d3061c05e522f9f9a612d084682ef4e8f4d7343a83db6726fe60f7230ae14c4d12469663c204940302047c435bb5006830660231009e9e1c98cc21364a57a581f5cc3f21e65d69d32782b2840be8dc546a4fed9d7f457c1614de26ff158452e5179bff439c023100da16815c4f010cd742387f32b70560e12658e7b8266c0e1ac581df118624dc19d1e7b24c87e9056fc41908145bb8918e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096ee3c4357c5ff2af73d2a3d469926d15c81848f0376c4c311e5b3d1011b85704abd28ae7d95ece943e355cd510b816702310087c95f8d442e50bc3a36c91da41fd582acc42b969d6439b15de82959e30a0e92a5d185dcd56157c1d59e25e868bf23870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230462e21fbe289884af89af3a519fef045f9c78805d3b437676d2a81096df8bc78779beef4e4c93dcf6a0bf4a27f5a8f45023100ace56803f6d9772d0176a15c4830a3c84aa0c8b0c6dc125cce9e38be28f0c05331e214e48f1119076a9bfc4029ebbda00302047c435bb5006830660231008f64f0f44207a336eb69a8bfcad6d4af9f7815f2b79af6ecf36bb76d805afbbc4b6741a8a3454b19198bd27adb099f66023100e9ae7b8d07c9cdfdc5de4f0dadce77a70a7c57bcd9ce2dafe55482820190bfbdb7a9cc2704f21e1d13e234a7946beac50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d59f88dd4866d92f60b0f9de9e480d620ca6945af507714fb3a00bfce65ec26f91f03d5483d2ed0279bdedd752e73793023100c0ba6874b66615fe86cbce6054dc15ec20addec34890f1d1a9801db93fae53a9c8feaa03f9cd660d07be622349798ab00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039ce6d80158089ffeb65b7be0773ad14a2787efbfa73ab8c226131a3ea6cea37e55d6b5b9f2403c3d679200371dd7abc023100f9bb2c0eacc9c49b8774da149e6d685a2808a460176c65906698cd63b99737292c6276e4eb078bed1d03186a452fb8cc0302047c435bb5006730650231008004c488e728413bba84c57dd4d4531e58b60c4e9621ce1a45368512176bd915e3e07aee73d04af93bf478bf48ba6dfe02300d53d0fa672f125fa65c950720d1df63b9696ac2fbe27887bd13f0545a7a9d70afe4125fdae17dd0152ee9b79ce190b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100df2e7afb67e4c5a631734573dfe799a6725d29e49990510e4720d51e877fe51f39478efbbfa77e4600c42350b71b4356023100838012709b994d4bce06299fb9993b8fdba606cef8875fdebb12dae59d86a12f89b39ffb3266651184250196da5e71870302047c435bb500683066023100f4afef6f536325dcafece2570ad68933ac517e0a24d9dd856e4d841371a25759d6a25cb56c05f20ce4e077fd07e247cd02310086d54bb03e155dc382b78463d7938a2cc31dfd7d92cb4944f8c4fd55e53a441eccbab121953137d5f303e555ec44f9df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023033eac2f2cc5bf370a0860e7667e2595e58bec8d42d71e6ba6442d7f1faec4c53222484f2a0b03ba00cde16379b1d2dbb0231009ffeb5e07212a50933e3f685b415f4ae0371c81e87656b09d3ea16f1d3021df6faf61636d94b21f600060f9a5ee7d6110302047c435bb500673065023100abd70d7bc7c7a60b38ff164ba2fca8e053f333ac3245f748193c7ca331e2b259e74cbe0967db619a4819deba3214df81023007f764a1409e335e1470b03d6b5fd4e4a67772ae064bfa230e20ecb1d104c9f857a65dcec2546a43c2295b9593ed9a670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300fdef0eda61db6897d963b373c98e93bfc3e7a5b4943cbd8398b7ca0f9b0e8d0163b9706f1e8455dca341ca753381f0202306412b193384595bf0c5b74315e830240c19b4667d5e77955792e6d7fae53742ec74652ea12cab159f5b2673ea88cd13b0302047c435bb500683066023100b3de0392f875ccdd0fdfcd6a60905c9d272d3e749bb7fe16a1c702ac99d89d14012ea9be0d4e8cc66472dc028afee9e8023100a0a4beef67e07b439b2f01122c09891d43a28cec0f2cddc6fe7ee9e12431951f3d9bd6e05dae6efc2b96451ebbe9cff60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e9785262f0fe224529c6bef5ff9909c813dfb56b73ed7817d5839a5108b902362d78cca63c48de912c06a5ab20e3dda02303de207a5e73d59b8b760a9840b465043d7b72f705d0d6d7123748c171fe1786e3600ca8fad6c44491c63d1f2d7807c360302047c435bb5006630640230070d4b664db549bb13ce016887744e4f893fb1ff1e5a40ae2817896f82f7b39c18967399a8fcf216843317d672c4085f023007a68b301cde249187e0fcc2014a33c0c600f304e03a8d8934670fd3ce269b6fd12044cb89a416e40fd55b7a06a4e9b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230666da8aaeb2004a76c77ae6d4d75e0fb50103e59100294f8c63626f4f87c198b37b8c4a058f52d36c65528ac3631c5ea023100d17461b3ed9abfd2e34aa81a19ed10df1fa541121a42503c2d156dbc9c8957ad0606c3dccc50d6b0237cd4b2aea910180302047c435bb500673065023100e1dfa40c2692a8990317ddef191ef7153a95de149235c5a65f9514fe04670ed015ff9e67deb97449ba1c5cb53b91760d0230495d8907ab3949f78d59375d738f5d01465b5ff138a3e0e0ca6c8ba20a19ff4bfef7ccbb1f9669253f10491693d486550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009961c517bcf9d15167d7081545bf678a38625be255fd42a7125c9fe8caa39c309ca03a7da807e217772dabf065dfc1dc02305a6af0f5d793444387cf1ddad84fdd7549959715b8951bbfd06e650a45b6f763881134895eaf76c5897827baac6b50dd0302047c435bb500683066023100ae86413683983a5186f6b044e7272ca1dfb068e1ecabbd44ad3370c891dad0f6c3e025160fe635e4ddd950a9681fad28023100cafbab95d08ec5e243e82ce04ec5e00be67a0c366a0f368c089417c631c5f883a1745631340697cc5efb8397c4c8caaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a90d1f7835d072ac0c369f1166a03555ed87d80d7776a18e17ba1de799b23f28011c5bbeab662bd59af9e993a4463f102307b9736c20cd654d82b282cca49bf66217d541f62fde5afd97aa8c823de45c24479e86e1abba653901a0322e21b49579a0302047c435bb500663064023014efe8306c17f3c0dea1157de0a40d0730b8b8fa57c419e3e3cbd521c30b8404045ad6226066cbb8aecaadf414b0a17b0230247fdec0cab48bde62c54f8dd09bf25bcb257d7f03cd093a2f3c788f2ea96f6dc26ffbe6b3eeee19b698b234e85d87170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf414146840e98ab2cdb0b96f2d52f9a19016de5f5be03a5b58673bcdc22bc92a4b7159962aca10a924be2f0b0d801be023016aaf7f1d336499856b2113ce774bebd1910739c9f4b01d56e6e2805044b345ec5e73b96b88159dd3eb2ec19cb3a4dda0302047c435bb50067306502310092374ebb51056916aec02c535aa5ed28f619b6c1e76f00aa23cb0e4218c7c52099cbac02183d26a89625edde115fc3db023071b3aea3ed9dff121bc4d9f6acd1ba814259f865144d33d85331cf6b878beff1b97de07108d32c51dc9cde98817926b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003601faa8169cad8906b0236b1019d87e5b5732125ad05a99fff688ee1cfe1e45f856444f0a8d1ac45aea7339cb27df5023100e1bcbe58ecf923143b599cb10ba69335a922485d7689dad7eb1b041f294ec02481f4fdd4d75affb68384794145cf85c90302047c435bb50067306502302dca2e8c834cc3129bc50ffcba0deea917c3749867204caa3c8a54f96072844de885b8894563096215492e8e0192a6b1023100ccab07dda578b44cba5d38d5ff9140f1e7923300868f2fa42cfb842a90a27f71074facb15ece31f83990465dfe3c30a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303caee31eb7ac880a14ca96bd860163e91375281be3e8e9771047da45b3172600bf46bfdc23a06d119c50fceaef04367b023100fb4fbf6dc0b2d2f9f34297ac2bf41bfd6162c02b7ca645ea19ea4d83038c0323686a5e73681687599ff2b40ffb1336550302047c435bb500673065023017f0536589057cf90f7b6d6c1946023d168924868eb3b315a235fc63378f16f325765084ffa15814872516abe9cff008023100d4a2e83db248492f1139df60fe81934a7979409bb7ee10c79e0103e410ce13f5b0a22c149ab2a71d1615582cefdeac350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efc7be9175f85e9921d750811ca9f50ef9f12a3b28a7125cb25b95ef7bb9217b8c6f9aacc585114763dd97b83ad347a5023100ee7fa3faf62d4c991fdb32db023c3f4a28712735d9d98d44e804c07d186a0f8bd941532ef24a83fb1707664025bc6be90302047c435bb500683066023100f0b98d7c568927b6339290ac9d5a17e19367e74a063e239d333b06d486c234e043ae7bc4eee846755dec01992a7241d5023100e80f280d7875f3c6a090dc918633ac438ade795f90ef18dadea4daef1eaab3bbc9a31b5cae720b1eaf83beeb1283c6c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8f5fc0caaa78e2e0e6d867730b94c72c07a2b2010cfa16d4e4c336370ab26cae539d55dc190b8751639b5145a4acec802301bbaf693bb996133dacd7629319a67cd7d7b0d789c990e913055d4e044ec6da697f1eb9523accaa90f336210f3add6730302047c435bb50067306502302e17406df5d55f47f8bffc8e1eb914dc320f0f47a9cdf3caf72897063c70d51cb29b828888595abecf962bdda9b1b2d2023100de09fbf1ca95cc01137ae1bdf8b1cb57e8930e273a84ebc44778d52775e8daad6e1763adb9843a217fdcc6fbc1414eda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a4942858a24a71a18305621aabea4ae9402bc8c598a3712c08131df7e6efa55db89b97163fac3e7a6a0fd8e11d1b8b20231009d50e29d39cc3a81a8dec0d3497bc891b131b04eafd2cf7302c829a9166343a74fe7ea61c903d02697e351a878a8f75e0302047c435bb500683066023100d32888ff638422ab067b63ddb6ba8db6fdfd2a99cb75e2863fae26e562b54424dc99fb88de03206d38a49b8f834a92930231009c07090f2240fc4f30e2484f67db1e6752a74af62e8685dbed3215df947428af961a554cd649e2f0fb91cdb8ae48392d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027faf50fed0d9052f60bda614cb0ac1bac4a2193f61aea708ee53624b5eb1fea6fe04bb945e0823e8a16199b54180d0a023012a79bf9ccd49d986da713c9e277a7726f14645ab2ee6e1ddf0d1114bc4fa95a5aa120c22f701dc6bfd78a4edce900ed0302047c435bb500673065023100e63997bd028670861afab8952b1e647602a6e51296c8402a87f9027fe59db51c4d90bf16011bf07b711eb446cb9494d10230624f2b3dcf7a119ff92af91d3cdaf0787b7a46d87883419c53dc57231f1741b457ac50bb86d66cfa96541728e96252ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230347a9588311a90913d4d56918b13cd9398f4a0b23b5ae9212b172165497f97662abecce4bc37c7d925b9cdbcca165b3e02302f45410d79e661aba6055ebb6ed63f52564956aa14932b3a50b123bb6f9f9f84e9afcaed3f3cc58094f7fe26d6959aa10302047c435bb500683066023100c42f46127196d3deb6884aba79d167fee95449c4babaccee7e0482ba29e802d7768ecd2427ac23b2e3165c72f69055ad023100cb7cd994e19c8ccce23df93b030a89ed79339f0abd79437b028a27f11e97a33b3acea8c09df6fe89ebe6709534e191850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027b976e9a69f677cabe793ed76bfb9e536b1d445ad2774c18902ff88dd5a8edade5ab8ef76e7a6b6aa4e6a47cc0435f4023100d34bdc4a4fc526eff47a1d63a9382eb65d3b8e7928a8bf34fb7dbf69ad2d00fc2ba3b609b656b83a3a79a91d73303e1e0302047c435bb500683066023100c5e6353873f0e1f8eed496b4ef4361866469cae07376c44a44058ef8a38e0b533bcd01cfab898c92228e45c3deeed120023100d3c3f3fd9f92f08daa449681e12ff780e29e92d139703151f3f3ee0dbdba34c2646605b3bed808b6eaeeb6067ed716240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b4417e84bd5d069810643eec8f8b4931604ca9646fdfe81bef50fc9df8b5476661109ec349ea060930b3de3c0aa3f34c02305e291624a5c34795154dcb6b41c5233c8957d6c1e913d564ac39e3edbcebb01e900c874639d3136694ab502f53ff93b10302047c435bb500673065023036ec09851a74944b620cad63234c316f9a041e2c7deca4094e7a8e3b7d9c376c631b74a8176884c996a311aa23af11cc023100da051a133cc72e393b935e96e4f6a2aecffaa70bd7d7c6ce2d706bb2ac150c2cd2d1b5cf460062934ba80ec3fdb5b8e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230366fd86b0e3ac92aefbd0c9d8ad9225c681d81951cd2cb1286567148ed74ed599184e43985c824af02c165d806b4d1b5023007f57c07f3fc218528ccf67c550372de64188114161a22e3ce801902ae843936fd243b0104e36e181291a8f4da5f83550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303768169a55ea97041d6e938993c078fa936d4f85e15a4074172399c287faa0fdcd1a01efd5020ca0cdcf9800d5f7a0cc02303d03b74c0e8fe9066a879c80b836362b7c1394d576a580e292a82e848677f020ec215a4d490599fe577af1cf57d008450302047c435bb5006730650231008502a656461c201e4b933d7c2b8885c9fd55d6e7e0fbff36fcf573292aea2c7c601adf0b983e3ef0e4259268c4310fe5023058402b353f92a0dd0907bd03beb6cd659b9b450609b6325e416f0ef801cc617d22890a0d3034c964582d90c07deb59180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a4c5b54b8be8f52bb55f87a8e1cf0527c2d7e6e825f94442258c190eb9f3f8107e21d5a46b8702006ed679e0e2c622f02310096fe7b9a47e5ef07294a36ad4ee2f0858e466be93c2d3a79867d2a09b442c516ae817e31c8819b259dc3f7359bfe5ce70302047c435bb5006630640230114e48c7fdf4c36a76d5d48bda4193c784d2aae8c183d4765b3b7a108f180e74a6688515ad7b962a1c537cf9ae022d2002305e4dab5d3272f5c799bae629dc6c811c754ca01759a6c2ac93b6d8a67b437d7c36cef460a6bd3e5055ab1b3eebfd2f5f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230252e926e21d90fe0c4efdc88d2d4c00c17f5f8dda8da86308a85a5e8b07d8e44f121c379c49b6d68072e6fc574799d870231008e41eb7f15320014eaa2b5920b000678076b8fb982b162b3d633bf2e6ddeec57b46d3b995c4780acbf9d63f72679d3040302047c435bb5006730650231009cca3ca33645c27e4fb80e767228c0bf3379a0d24f86dc92418db4634f623313dfe767e50144358b74eda21db1c6af2902305856f28234354900403386d4be2a18c75574bd7816f19e35e0e894ae42f0a0af597cae7f3f5625eb9563be4a69bc6efb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea17299890f768f9e79317f18438dbf71149751271c8f4c2a40f81aea692e95ffcff8417e7459095da084019699fb46002306349d34271cd5ed9c8ae7edef4eb1adcb89b7b404fb9debb822a5ec354f8da99768e70dd9dd89af74b9ae55274fdeba80302047c435bb50067306502302044133794f4a7c5608e1b05fc50c7ec0efdddc1c13becc439b0e2fa41b3909091a6c3b4fd4de0290c91e6cb2da9c9ba023100db12baf7c49447c7786a59ae951e34cc0f909c74700b280bc1daaea0d1c0dd922770b962c9a5099f32f8501f9f4d8bdf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd917350fbd213ff9fa30ccb0c8e170ada95d304390e8fbf291a08763cf56546534c80fa1b6218aac5fdbfe3e105e7ea023038bd6a8bddcb081a744132463275bbe13eaaef9585a4c45de3029a9665d28cda7c0b1cf60b8837ca8d743388cacd3aa10302047c435bb500673065023100be7c2d60ad3a0aea94b49a3752356e2d7319e22904db040298cb0bd5e56d1066d5aa621db5c9cb7072bb87fb5f81ee1302302f527231eb264a8f796f0cf257c872307f389b9c285b6cbcd67093d263bbd0b7ed70a7f172da3826230b4671e148c0ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d9f573d3baf09f0a1847eca816ff6a6a7a09f598c2b076f15844fbf5672fdc3733ea09dddfc15821e42d4e02b3d38320230048ff693cd6ed157c1b5546a1f95e7e713ca65e972c4c5bddddb5e894394b5fbd437820321b66faba44a957beae52ca00302047c435bb50068306602310083cfa7dcdca15df9e4143c0d3a79c710318d241136ed089edd4c7584db54f90f2cc213beb1e7829594fa9257e5ae6fb6023100b7dd7ddeebc434cfaaa7dbc9db7a8fdaa76bdc34c0ba2ca60e6d5e39de20b1eb16124ed397deadf0b131ad9795808c270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009f5e242dd81bc77ea571fa94d4a2db0ee1954b8276eec3f83869eaa0818ffc8023312916aaf2ed8012a1d4bb6330a9880230558e86e8653c852b5ddc636314dbb18724b67d1e27abb5ed68922c26f3f698d618d0fbb75e6d787dff6d2acbda48a53e0302047c435bb5006730650231009525eee2d89cafb1c5912103a32c0b6056d43fea2ce9c7b341daa7f19e14a2918adb1f6319925773ef83fda5a36a1b6e023055034921931f9bfc9fa1b43b5565f9d2fc765775ab5ab76f4d5c2d25cb838a20ce94ec39ab7fe6cd89a6bca24322798c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ee07934da75ee47b479858275558c4e9987cb4c61fc5a125343d4c0509236a75d2735d9a55e09695943a7bb275252a2023100a45f507e3001b6798be8c807f4407c564a7fcefe84323731c541eedb462950742b499347f80780390842d8a0366c339a0302047c435bb500683066023100f9997f0936a2ef300eed1957d270c2989fd0914b19946b23a931609ffb146c17cb2bca06a1b8c8b9e5b9ac81b57353ce023100e893b623c5ce5fe7a009de9b71489d5fb7248bb5fbce09ec9ec90d409950227aa802c390c0e460aaf00ba20975a8efdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b88377dcf9e782dbf89989dc3fbefc2067e0094e3a3dd2ef561d23e75f591d98220dd917c14f369b6b56a9c08fedcb0d023100f77d82b7c231780a3ef0e7c252c3192ea74b114a2793c763ffa0ca2dbb23106c74ce29a26f4f4c9406ff3054aae343fe0302047c435bb500683066023100d45f84614835c8715cf1d28e07e2b5e55ad7028818449a1cca30dc7a38de387576c2cd3b8431ec1aaca07860d26c99060231009fafe2c070d05eb9db9c3c826c1a799cc8ba74cbfb0dd21e643b77e577d5372e8abb55593227fe94f3531882fc54ab530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303331b2a82331b29915060eb5914bcc2011289645986cc522452ef9d10b7d2ff8f46de56481d5e27e7c3513be9e3055ac023100db328a815bcee965676f055552f5c677767ad098ceb10ddb74158dfa6a513dd2115c3ca628b31829a4451fdbf5d576e70302047c435bb500673065023100a805183f4a12b07656cf6298286e9e6aceea543ba5f604bd899f88e8b546e485d26ea95f3cf930d78036b314965f0db80230533083d0e2708a81ab2ce0d6edef5aeeb147ee28bb745adb3264ad57422c89fddb49e8c474e15206483f658cc5a81d810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e92ca4d8ae0bf06407718cbe330046ffa0412a7a647fb16bc836cf22f73904c4e2abf7e3ce150d5edeb4259dd9c40528023100869713c6a71cae9c629c895406f9e6fce518f1a992227af962b5ed7fbdc809b4051e049605ef1ae3da21246e1c5634f60302047c435bb5006830660231009a153e0c4ad5796857e792afdf181a93f69fd684944ab0a312d29f638f135d88ac958d78acce723de513c7f4f84adb44023100b26fbf40ddf6443493a085eed48416a408c162bafe50b314a263b687af5e3a4ff9cb6b7a98e78a1d542eed56c70e47c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300977a816da0d8897f96efb83c05843eeebf664604fcee0af631114bba0fa124eb9f50768be2b10bf01b696b105f10ff5023100c8865171bbcebbf5493cba3361c0456d48d2576b13d86239e8149607e418500ede1f3a230be45105a07fbe28454112d30302047c435bb500683066023100e274dc80d7d99bb0e9eeb7e19b202d7fa8b2073975335f5e6d2d8cf1a8f73ec243ab5fa2d4da259ea311573a914b807c0231008dac0bc2547884687f1b13d6d467afe08b9d7959afa9b3fb4baccb01a5d1712ada88bd24b6d2230f49e6f612553a18d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a681570cab079d03132e75e662f1446e7916999eadf562022fe26cd4c9838ba8dd066579c39acc4958c4accb615704e802302a0d3d963d1af037fadabfe4f1bbb65caa39b7e4a9dd348d25ee23776d63bbeeb76a0e6121f4410f60d04fff54f023650302047c435bb50067306502306bbeb75d4065ec056d0f462af36cdd3b59ebc4778d4aef010355c9750e206fef7badacfc87c2247c533f6e08b2c3de99023100b244e4dfea422a0e65b5a281fe819bc23a6b1c9597495d89b8fa9c62377632e1cbe1b3ba37f395cde815011e17a942d70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d435863d93716db2463956b6ca2531784bb5df12a8a5a0ab0f886de58b89fa5813c12c63ca781bffc1dcf4057f3425d4023100d88243e6cd7821c9787faaed6384f2bc1864c586ca0f659b168bcddf7bec1ddaf03232c5e1a5c11061820acb697207920302047c435bb50066306402304eedb145305d9f6d2e9c73dd0dd7474b728f79d21483c059a78de1e0abd8f2398723e57884784ee5d1f3e73b7c776f37023028fab8b65569918ec188a1f3a49054edadffee4bc59ec1eea50dc3c8e90e30ac1d886d4704985f7f5b306af5b5646d910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f62d4e10997ec85793b34a01f75d2637b7f80a5902db925184e9311a4dadecec5c9e360cb717aec63b4c9c6b48569a2f023046416b140d763f96bc4c7f429a6d8e3dd4de21245b99aa5228a304919f059940fe0c6005c3072f8bcf5320c5623d73130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023013141289e799e965e65d4f319086865fcbfdedc119d0a28ad51d3d33772bcd4281bb74be9bb406b781d73c9e8a2a4476023100eba8adbd3b1565296099ef17ec17797ac89b22d006f7718a5062765871d6da1bbc5734867561ac25038c0d99d9049fb80302047c435bb500673065023100e9f3c47865d42543bf5033a35fae6016297a394d33ff615d74e8e9a9812ad5b9fe6049aae51af0c22e55e7255db8f03602302f27fa928ab5b4c5808e9e7137fa0760eaedcd1397961e3839e64af2c3474536a5de4fe734e8b342331987bbf757419c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305744b5bd83eca33ae7cbddc8a4e9d4891e1073c785bc0b8f3bad73cb925a0609f4aa049db64b7bd7396b6ad945baadb402310087c352c0e737c2f145391cb5517e02cc7251fcdd250f81814d3c903dd4e35665bb37c79b7ca9141db5688f3c4b8e74720302047c435bb500673065023100da37e280190043683ba45ded9f5dc4a070bda91fc7459d401c657a9d936da8bc967aed7466287400450b3b37402c1272023075a5b7f05e691b0d4afbdea199fe535aff88d9b98696f77b6afd5419b921b4d9ce3a72bd293c7c828943e2ac64bce1a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d0729cdd88608b70b551272326dffa31fe1ac1d09f55ebd8bdf7dfd55028a2140de57a9d25fc08a797e79f1e870b8f8023032aedc37a734ab00deb6f2cd50a709acd2831d4c3e20851d46dd920e31d47d8b0a729cfba3621cb89ed15b27423b053f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb154570b62da1dc754f546143054a5169412c7503be01130afd1215f2bf85595e98a5482a167c27f935c100150e5d99023100c370e69742f6b2b25decc39123d23c8dfec08224f414290776e28cae35c7fbc85110f2e0d1db0aa582b3e41be759f3f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fef74dd3e18909273747d806c6e8e29dda428eda9b7b9df3e57fdc771362e695ecc13855fd7edf50f0ef882da5a2b4f102306db903833d4b16945a8ade3e9da4e3f9278a40e07e427f4f9e5e24a4fe38d2962155d8fb96e73903bfa49b06ba21a9010302047c435bb50066306402300210be64667961a9b2593814e0a05b0f26a017f865cc42f0d09dac92392863c6bd2a2e9bef7295274d8c35851553d5ff02306d54bddc6e70266c4bb3ba1e7bfd0b3b5c340fbc9a901effa12edec84521fb838607f64874a976f3ffc9e84e2e61667a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307902bae2011e2bf0e1de5a2a50b5a6467fba8a0ab138f3d32def6c86cddac2dcd5a9c9f32ce7236f8e1c4d75e9a3d56e023100d71502149e835ca6b0006d5a8a870ae459174fa4a111d47639d9c3af4e39ae52c9ccf482a7e7292f2f74865a71e34cd00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f5bdefef7bf0156aeb9d86fdc7d32c8d6586bd117a605960c70e9e3a52f5eaca59d33b865b11ba7186b7a2b0b55e0b2023018d7d37e2039e268dbf6801bd433fba0452313dc36f369139988908eb65019430f0e1cfdf8e030da81fe126fd95f97df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ea1ad97c920be3bd885f6bd57fc5e248a014accea42a5e883ddc4f0aacf7ea6cb747edb803db6a0dc30d2644e39b7567023100b6659fcd5762be90111db3c992d140893232149f659a39e0510665854d93d7194e049983404562fdc0934ab49b1d58100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051a405008e03e2255c0b7aff54afce264831c3ead56ddd562b884df76b5ed61970c10347d9c9aea0a7bcb5f7f69742b20231008e2b9ed7c170a4504a186230fc088e1e3df751d387c6349d834f5c7983f719ddaa5366819e5fb2b90e0334569a2183210302047c435bb500683066023100c87c6acbdafc7b7bbcc2af38604129168d133c99daae933591e437744c43f4858fb9533b37cf5a83c0950761b99c0323023100d6e43212f5699f37ded21c549730d240d3b314da8f1bf41da58474ec1616520d486e03bed9f73273d1da74087a8a68910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d19100c88ed396eec461474bbdb1bf474b9ef6c3010014961d6303d35fb178ee90afb94625ce2289152bc618a78f2cd602304e550d04803a42cae6b60e339e66c2071ea6aefcbc05009502003a7164994ae00c576ad0b99d5762a21ddbc40db43a110302047c435bb50066306402303f92484e5ba1660d4f512542e8481a103155e11f7586e2b826a1e54d304987c8b41f4890eaaa2ce2846e93dca0cee3120230725323fcb861bb8ce7e8675d60f5629c3a38a11a229340aa9e077dc14229dd2154289f51773348b4ca8d8f558b4e5f630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a1c7df56e8937ae114c54fb7beeee80aaaf8d390e0eee6c64715cbfc13292923cb46ec7cc091bcfaf60bdf7835e0835802304a2d2d2fb0fd00fb51ea7e55ad39dff6468de2d9b17f94ff8ddccf54781c86226b23efe5c4731cc7e40260ba96bad8970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c2d1d00d90e2962e6499ce65ecc7f7ce311a9461073cc88b3aaa9427156717eb964e5a7a37cf78d8aa2d8404fad533c02304eb0cf5f49505929a6ebdfb10344fa62469bf1f1070962e2eda7cf925ff7946f1f1367ceeae37209bc6c92ebde6e0f2f0302047c435bb50066306402306980cfbd780fd9ac8787b5d0da078551836c8d37ed495f757c9786c3d194f46f1f3cc83785289d826933cd5471406ef902307812d3e20ce2ce472ef447a3e1830c597b3f080841ee61f9ae69903dadd332be1837be66db171bb4616d0f8afbaf9d2e0302047c435bb500663064023005b95f589cbea3ae2ce4441320a1b013d393e0072f558ac92cb534ed2d86c4330a3714a6d8ba61fc48d5f7a2dd049d2002302566240604f6c3f0aaf946117793bb4ec74182cda1ac7e3d0ee2f2d885ede489d47e9322f50011935c085ec52f12fea00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040c4ade0359d35b1ad24f1d2b053eb63d073716c6f01b703f9c34cdf27de6c5b3c80eb7a905b3d01a8569d07052dcdd6023100f7b3f33bafb9807b11df1d526c8050ebaa6993bc555d45ee7a9d63a242d6cd1e440603d61f30ffa812eb172615f4d9eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009728a7f3c5744b128cdb4499104fbbc980420a7e44081ba3f7841d596c01a240f7f1df6380561ea8a62f097f801507d402306851feb46edb5a5335d4e0aa2ed7b02bb573b33c11ddb324c273bf1728df630f25446d71cd5c1356f1951e92be6708e00302047c435bb500673065023100fe938ff52814b2bb1dfd963e0a00a755155407d6be53a28795beeab47b61d1c0373f0977f6bb5e86ceb965b4ec0be9370230338dbde7f239964d2d3303d52b1097c554056efbffe4c389d0547176ba30b08546fcd8fdd26d797076653738977011390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f92e54e67339cf74319cf21e8dee0e0d9e2a0f8b6d92240839e8ca47581ca28d90d652a8a10416bca06d72ff52089664023100ae75f5c2831682f409543a4b0a56f58819d88028776455083bb3ed0d2c67200eebc5bf5d9cf2b008056fee810fca10fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5e7e22c0a095153ab67f5e2b8bfef8a7095b2c95f94d3c988cdc81eb44f88924ce246425da44c50d50d6b6bf5fcb4d8023073853041e8896a0a640a227a9ad3d5e475881d5a02ccea18f58dcd78ea32ad20e624d1ac2d4bdc21a9e086cb6d2493010302047c435bb5006830660231008cd81586afc7758eb6e23e0564ad422cb2bd63976ba2d6fd3a1ea4dc941e3f5ec5693127a25c56fd15aaa60fa27505c3023100dfd1b577babfcd9198088ba7244f0c2ff713af84c66b0027a7aff59c16c23fd8537cfd6fe8600046e9a300651e2517a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009c7c76bb6d348472a66940eed98dfed3de8907df49643d4a2b9bc332467e28a0d71ee1146e9d358a69960f59a00c6de802310087a5abfb2c894a86496eb717b4615e0a48a82e766b52a7bd596f3e44858f35c430680dab59a883bf10bcb3992a9dd1660302047c435bb500683066023100d6035dd89fc0a2825e22a9575c4f4728bb749b21acee0861edc98cfe1943868a4a985889d3bd5cd65dc49f74979649a1023100e014f1fbf3892b565ff7553f80e8014d8d642799e11daaab6ccf9e1618d4bb4043a9cd432852c9c193b3dd7780257c970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022c80d398dcd3fd2da8a95a608cd9b216a7494778de4af725b35c4722054416c18d473cb2476144ce687bb6ad61be8630230302036ae496c6da220e4658d97cb127a9ba73a95b7e8932b53bf8ae3db08f1221567a5b041381da7bdf92f5ac0d8abce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd4c68d93f90beb336ffb0a32159bb34fb2721405da1ca2bb056e342965566e30d1d6766dda88a05b3954202a1714fef023100d4306c4c199ccdaeb45fb6b66a7732152bf07a7389efede5c0bacc846e70bdc057a3645672a5bde786468ed0b749d8670302047c435bb5006630640230655bc039e8a25ea68c82b0cd0d712ceb0e00733d2b31910be28c91bf839d2d8c1ded2cb1f6e5fb65776164a95e73d36102305d110a2236d41464367045e885b8c3a550988e46cbc9f1d0e5bc957098a0391f791589011f69332737f50f279a5edc490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ba785d42682dc35d07770449dae303a3344c02e8394175e88f3790b998411272b7e4535f6bc8467acd8d52857846bec0231008d8fa047cfab9f98fc39e1c81510d2be3db8ab1f0d2fc08ba09570492a9c9b8896545059264623714874b1be81cd6df50302047c435bb50066306402304c1d34d0a45daa4cabcd6c2e469aac659c05b707e71d17b1492ffd382557d66bbeb3caeeeed70f221922dd96998794b2023064dd0c05c4b0fdce047cce876b6dc490e47ccb89d670058308344230f4f3b319ede9fd7524728ac8489692000e19e7cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023061d14d16c0cc30a071e0cf80b703d5c9d8a9d419d9046deddc0444aae162fb12fae5ab88c7af8f79d7c74362b9e5563a023100b39c89f5bded465753286d76554c3ba48d85d0b5784bf24e6b54d696314ecb7240a89ca6fb9170daa9931b86af43566f0302047c435bb50066306402303c5afa8172277f2a0e4a7e5412d98dc78d8a5a8d633e6c77b809f88fb55acd268fc2175827d9cf646ebf1ba77a5b894702304c950fb957fa18edffc6f85213ad777ddf1aba52ea4295952e3be4fba8098b8b9e2a29fb4b693d493c93c2921ece99540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aebf485b98e65b12761be69d5e946ba5dc5d46d815146b81616e0280ed1a3831cf3cba52e02afdb84e67a807b3b9ba89023100c245252e5aaf0c12664a71063b319a32385363a6bfb9fc11d6867c1f433ccc172f582cecfb20cefd90ed3d361bbffc650302047c435bb500673065023060ce4ec4dd8f6f923e11b0192695768e457bb2dffe43d459026e7afec4d04c4659d38f67c3491294f7021f6c9dad5763023100f673007a6afe17c382396b0a34598af9978e5db198b450e1647527e3d3c3c04029f764564fa40fcc1c753f8748e231e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023008d6d152a19f4335236d0b4ee3bc93ba4a9dd581f8840644f2cd0a14cb89260965dce2f500736d2967a53b353ca8211802310085a90969585fdc26d7cde1250c32f4479302aeb7ce5e893fe90868de8cc096c3f523b7749e634ea1784c4104a1d89c180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e2bd49d9a1952e249b4ec9211a12c128c4dd568ff1a98b4fe0f35c094b91d4153190ebbfe45ee5e0a5692e1097f07c4d023100edad93066ac439d59f15970cc6944bcf3846785d3c7acb8a4cfd06050ece512397b99fd2c84089514674cf735e39d46c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cbb3cc39e3652f481d9454a917af1854c3605ab45f087e67b8ccd539493821db53ea1e29dfa5ce3467ea49f83def99db02301902c04c0c8fe4516b189dd27a6b58df71889f7af83fb0545eb5084954bb36b0f3fc720ea981551b4d6c32567d2ea74e0302047c435bb500663064023004d3cd34d1f4a7f8a27493d412c7a159344a905f50ca87286c2dcb598b9f3f72ef7282bc0d979b173f3f066a839049af023016a8e208f84253cf7751c30436f1d2236858b2669f82cb39e8de058068fe95fd5bfe2b1d3901e8fe10a04975eb899aa00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302783527f35ff62a313c46222ef008594d2f14f6015d0d9f5dc1c2ffba9c20097cb1a955bfc0399bd6f1e0fc69db71b0f023100d5a276a6c4719ffdd7550bbf67155cbaee1eb08b67967b2ed6923e4f04672edae9ca46a1b305e27f1cef6ab60467946d0302047c435bb50066306402304088b597cde50c434a45c9b9d58e9bb46e585a2bfaf4707bf1e39c90219502640030ebaa989eb44e28affdffd65741fa0230694d57b268252aa678fb38e14d3051980a54e8b4e0a86a4bc861c0e42dd2a03e77c57b4e684ed93e14418a65a994adf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2fbe25dba5d3ee9a42a38d616a6af78060014ca27ef78ed98c490fbc8a9d461700f0abb6a00d522d413b60d82de1e57023100c9a11536a87074dfae59e303048e793c69506465f30c6b00cbe8ec3755d21c87236d537dea9d521be2cf52ee34b314e60302047c435bb5006730650231009c4e95bd04727aad1fd89ebd8ae238ac98114317ea79d99d9364212269758dae657c809ea798c663df0b1459d255d71a0230151758e280e34f26d2eb9840218e41eb8381df4369dfa3660cd4210bf1858d6581e4fbda2ae7c5cac8682b1a1f0b6e360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012416046b0b3d29312432bf3f7111953c485e8ec07ec3f68ff93488f255b1a686297c4c86f3326ff0373590cba66f883023100fc65d1a28149f3392c7b0b08796e15a405f66098b7a93522d7a67f69ae59d968234e673c80f54d4bcdfc6da5c4ec52040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012676b5e05e88d3637cdba43f6a9cd5be5c4b27544d6768551ca7256632aa5dfc0a44dadc75a727cc6f1089368fa04aa023100ebcb97d075c348fed558496cd213cff4ee1ba5d3bfd3888963102a9bf9b27c8c21575f3cda3f864096de8c4111c71fea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8952112087dac6aca57c8ea34a7ae2946c807d3e4aaacb26cffd1354d98a025bab9c73364fafcb4fce9cfa516486b10023100db63c3c113d19e2a53732cd0d421b0b7d0a4178c7f04c30073b5a74c071bb8edb0b86e26c4a7aafbaaa11a3e03ded9a30302047c435bb50066306402304f2edae9ac9cd0cd725fa401a586a24dc2cd6d28b30ad774bdea3897889ecf163e8b62c46b800bd8b74b24f349a0d8d002306e917019c15dd1247beac6e282d98cc3e24f8c31757834c93df26411ff9f5a293f236c32bab1a8be8cef127153a13e200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d4515843390719ce7c41d12791d3c0b8f58f116964554a5efa0aa938c9e9e823b14bf1bad348fb48b9c05675bdcaa460230681171bf2c6c355a842906c4f26c558e64389868e7eb62f57e07812fd340255ebd66efe99c73c167d643bf213bfe75090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ce34180c4449353665e4491ce07cc77ec7e25a6ffb07a2f5834589c2cc472573e8eba22757a93b5ace8164abb362f13023100f7b72f4854ec61ad082ebb0009ce8b7ea21694a75c565c8f9e1c1fea855d158c769d0594d0ee432c325f9a2819c19a180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f624f4c8a64475e88d97d7878a14d78397da623e09a8f7a62a3b0e99a9168facb2aa5e9f0df27d3744ba779e016e79e023071a2dd7301b102b940f48a932363c398f28ce577bef5bc953b0cb35effb741e631d08721bf99a0deef609c9ae48838040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056f2ea73e25f05f14227a6bd2b9bd54c233af422e07450f68a6b0acf90fcb14b35182e412da73ec01328be1a567ba83d0231008ebb7c1aef2eb24eaa945ec811d261a2fddf2730a1c81f07d4573121ab768fd24751e8881b51f5b4d9c93147484d31a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301813fc7271362403a5845597bde7f57e0b9df8c6c8cc113895dae53d4260141ce4fc2ee4fd1a9924b89b4799c9ea833e0230442b9237834edddf30626cb869ad97444d5c74cdbe3c5a846637934c571f32bb4b2ba522c96f5fc4e59113162fca6a2d0302047c435bb500663064023027302c853e97680c6034f6367c2da0b3dc10f4a092d35c69e04792978259de6d9439b88056eedc64c0329636122c8639023051415ed22de0ab27c98cbf513185abfac27998d5ce66cae67d7c3ce69af4bde7af3c063ffd69ccb43ad4368a75f6ce8d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023040f6bd550eb9fbd270516e77ea3f74761d706f0f9402f9eacbf60c36d8b65b55d65fae0299d007b337fadd89abb22d1c02301691c1c8811fe08b51ac34adb178f9cc8586363d5075038ff46799df1ecc9f043885fde5dd52bccb3830023a9c09a2070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b3303fa189154d65bb3ed3b455a80b56b4af72e9201e29e4697ac791ccef459fe72785f1034ec1456fa138ed51f2118202303172e40a9ae702f5418f70e04f547abd1ed366cdb9933e86adb39e1afb72853b0847c5ba6bb339282ea9df452e3651ee0302047c435bb500663064023058bf2343d3c04eb7b6b6b329ef9a1218a8ca8fae0303ff6b1bcc0f0168ebb70bf5ae15ad82e9f7d423f45b281d70037f02304c47c28e0fc5991620a30d213c66547a116e1fdc31453f115903c03df6acead1a14be1af47d41ab89af1cc24e70e024b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307afdb6beea1a2da33bd02e88e1ef1e32ab5d473b5d890e7abd33a3a19af49d706d91ead3a12590de19001e05145f170d023100da2048c0164c0243db66dfa9d6c947b32aef0ed62581bbfc1ec70e59cde2099f8659eac96ba9e16dc98a1a5bc1fe8edf0302047c435bb50066306402304bd1738034f43bdb7666214ad2526a41e092d2fe00f6330e3bd5f23c81934cab752e7883eb26b02637f325796603573e0230374145b6c003b247e5c89c4837f4b86c2298cc71f1af227e1fcb49342e71688dff9fbc4bb66ee071bb1bf438dda1eb5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230349d0fe0bf329ef20405a4f6e9f2cb02d0e8724f67fa7911489cd209b83e288b21df512387b4558b97aa5bb1ecf03751023100b9022e77333ead3faf1d3cfa7fb8e5be913c3ec087e4345fde5423e2631fb79fb3f67e77c9af67aa221afdaaebd575dc0302047c435bb500673065023100ec20e3a3c6914892877766d2c66cc376f16f29a057ac94f01ab979834e194be771be6488b834ff5b6ef5748902f8c974023060d1dc45784b0cb070269a86afaa576599f6721a78be9fdecd6aa44b2cd535acc046343ebc51ee85428cf5597647af050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dbbda3b88b13e674e0f4b23ab1904450eea79f3440337dff37d5faff960bff753b10875fa4469e15ea3af67d2dd5752f023100b81478bf0bae60d63bc52cee9878d864897e43e2006606df0601c2fe98b3c8ae5509cc524fccfb442ae9752db443d0be0302047c435bb500683066023100cdad574dbbbd63522fc6abc2429a3b29eb674878eb462f253601c1b11e3e3354cfceddc03d3e053ea2764d294201ea74023100bbcb22a1dd44de5b2c1257cfe1ec507548d5cd006322b5fc984c1fd240a32658c86a3e9f0e3356f79a695fbe334e9ca20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301943c2476bbd67b795cc856017d8dc06f00d919d69b8aca251b1e89bb786148df56e009782a6fc609391f016ab115877023004c9837d58fcb3acd2d08dbd103792d7028b1863345eb3625bed5089983b6856c5c2bd4d5bb689a831e5be7c808eaa490302047c435bb500683066023100a105afe16a06ab9cf21cd3a26a27c663f45fc68cd94860471dd9841782d2599a2b54732facc7499a100641a3fef40228023100b3952a4de69b1766167b6d4a8c159460c397427a6a99f4809045d8ea5f552999203257fb8831368d5de2648f893559ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf74b830e18f79c3c23d076175513d14b461bbc527c4207bc91748a762b74fe6c00cb8e91d63026a5370efa8b1e7f8f1023073afad7c870329024a8ee596e3bc77101ad384b61aeaccf67bc250bfad7fc95dffb0af29636e867f92438f251ae115c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230589a06fbb6a629b134757d43285a54c9d67c92f99d7debc18d591e11d06292ff878abccc1b1f1beae354edce21787a7e023100a4a646899a3128edd5b783d0f1007ed9cfe69df75ad3f6662ea8d21aae884b76b1403f16fdf62e5e64a922e31a3fd3440302047c435bb5006630640230042c73f2a83e26f57e764e342323831f5c42d65a7b1c4b27691075ba6d7d42334b375bbfecb8e055fad62708856a420602307552b61529155adae069f9d7eb65cf70b1ecb207e975c8067cc12664050bec6b65ba08d2eab1381ef38475a905408d7f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071f0fa6a19861dc57778d99167c68beea040fdf620f07ccedeaddef3ee62ffd9589b457759c3333030a9800a50634624023100d23e3ff3ff1ed7877ed40055eb28a66d50ca1db03dd77e57922871a4ffed025f18d298383483ad7f780b86aa822759a30302047c435bb500673065023100f04b4ae37a7c8d56e58c8ce50e7a4a85f40bd696727ba8aaccdf8eb549d8511b0588ee2db1538c91ad52825224e28c4602300af9145d42eb8cb0b555a91e054ed55387bc03e19407ab99f98729ccb86cf224f410e4e3010faccfdb0604c3bbef424a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef23ca8ad8b8064c6a8f1d37ea5a74909a9f070fe39fc264bbdc02995fc0a8d31f59e8ae8e2c87dd9f77f9ec2aa01f84023100ca4b46a3e3fc9e29cda804d366c3972a099ff398bffc485c7dd9436cac00c93bb7e6d470bbc82b255bb18bcdf177a5c60302047c435bb5006730650230768e03fba240ff6fe639993203656b355d785633186d14a55dcf7299cf5e8b6eeef195542a9ae7c5bb7736bcade7e446023100f3df7d06e3f9c0ddae05409b06f381dfded6b16b884cff6a8c270029296280832328f4eecab8a3a24488c08df82a5c4e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f8010308c8ccbf60ea2e08148f46551051ab959fc51309b84871aa12d0b0eda0e17d3954e93abd5f2f2c4bc6d2375300230684ba1c0253be230dc73dcd2aaa2dd8b09121d2bbdeed6766d10dde2ef048706864d8626aeb896515a528fb4bc7909a60302047c435bb500673065023100ba1f68020ea2b5c74160411c900631d9d061ef5d53ffd925604dbeb58f1e76f18bbe9f39d94da7229ad406c11b40d18102305c338c60c48755e7c5938e8087ef07f4e575c893f9c961c2d0e9cf2c88057f7f8fc4714ee0556a5ab51a6dbb1c0988800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027ffc5b7783270b54abfc47e74ec364e64d88472e0649f61630483a1b31dec2996ac65a46bf3ceef12e919369850f5fd023100c5a1e618fc7519f4f210271509b6e36395daa0c7819ef9360bde63cb74782bd7728ea07947d73f3b21fd3d3aa75f8f690302047c435bb5006730650230385aa5ed2577b14c787dbeeb700895c124bdcdf38cfd84cfc9f38dd01f3d23a40ebca64ec4baf41d6471be83e0b491d3023100ae76f8bf0308afd1fd24f561e036471386421ff8804ee8f74529b937f9215d8f750f20602b9a4c79dd0cde7346caf6a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e510b285946cd287f04a358446fd37ad7e5b696802ba4ed7bb8bb6a28fc05e3b9dd956763c7387a571f8ffd14585f042023100f2aaf8d2d21918c78617908f6ef12a3bb34d653ab2467a147dd49532880c443a91ec3ece3cce95971c8c95e9bfe4c6d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d48556d9a0c5e16d2b25ce543f3f36bc0a043509034e3c52eb51b8915ebf7606ce09ea5c981539d19855273a2d55fc9023066f829033c4d7a8f893375cb0ee27eb23281685c5bb801ccb497b71f631672f7d585f2a30d07f7081ca023190978d1780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060f08c5646bf463c4df15e56ed69392e12fa1ee52266d366e11feb68e0bf7b008e45f83fe4e6becf05a18b4d27a384fd023100e33fcb65ecd10ecb35c837a87874efdeccf350fabf5b6893557158f25a4deb27e340adc43c39fbd7de6f7be055d7f9450302047c435bb500683066023100da11dd0fcb4f795e425b10a92d9c407a6498a34feb0d359393b37f42b6201a78870dc09f89713d0d80519cef762832ae0231008bdb8a7e3e6b7bf48daed47d70ef4a5088040888b0c357618b01c0515c5b05b6bf75b1b7ef98b2b2ccf4627eee25d4170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023043e1cad00bf4e359a0bac35a79b2321c0302d781181388f12d26522beed443738aae0b43e068d90125e375b2fb37161e02305b3f30c10b82df2eb65b96f989d7472ae6f1cf17a43908df3ce2c88eda39d1dc01a403accda2db9345fb9e9a3852ef290302047c435bb500673065023071ab62a55499bc1f604e46856cf7d233cb5ca607085be8d3715cd8d9851ba9a9f690c30cf6e546f5d1fcf72cbf3067d6023100c0b80612894f66b684c42c1b9e4f325eefe2e95db7d3319db3525409a987dbe616769acc7a10f78df3ca23512806b7f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b90b10162aac720f0bbb3cc1ec1b6b6ed6ea7978fc04ba6eb4d2e997c24268d7b1698d3d10b24313e58694d0c17a34fc023100998223d0fcc3fceac4ce88acb9fd757e7201290e500e3995b1c458b149a117db7b13aa3da08cd839e2c912a96bf8b4f30302047c435bb500673065023020977f0521d38513ae3c84a632306dddfc7db6a969aa141c599f4349f2d943964bcb72bd0fd7f74ca49464ef92cf82ad023100f3309ca57b852bcc3ff41ee429df77701f187249ff609a5dc3e09e51065b9f8a334da0f8e551f79b3cf78ca31615c7850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305272972623edb40a80082a9dbc3a50b289f2ff450822865bbede584a55d111dfd856bea28f1c1121707876d389586bb7023100d4eb67f0b8f5457829891c26fc47c9432feed4c6e788ec2a9d7b1f531034d5d4534411671c2528cdd712500452207ff50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac3425374cc5769d27e024c2049a286b992bfb11d3701f57e83737f12403742fe0af72d0182f17a9e2b48a2daef1a9da023100d48b681013f3829f860755f9fe47373329433c1a58319757099916e1278bf3afdc0106e833c23468e36c67d7d9e5e7740302047c435bb50066306402305aa2e1b6551ab074f0fd0cc7554e0cc4ac2b30f1c52ce2cab8a4fe71363ce602289fce3b969a9aa159a53f7a0aa82c280230486a15aa81b22566ddc1408ace8049dcfb923d136f28a0fff4dd0a9e813d8091932758d33b8b9d73b8ca8a631bf0f3a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d41b3b8152867a445ced6172035b1c5f18ff30ccd0671b41f2afe2c3f717cf89297e4d7ae5276358f4465146c42e82a402306492a78ba978ac3dd205ead5af6a17fb38f394a4e93b51bd05f0fa5f63a359a53dd9c3562f9de5793d6e049b1db1dddd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dea5a5ea48c488fa8423e7bf101b492434808ead8a154b1a2b3704d55e0c2cc921aedd5fb167da9a3e79fda90efeb1f023013bc348a92c46fd0c2bfdf901dafab9b8cf3e44f502717c45e92cb4cacc17b7366804e1a8865799f2145695a663af9220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a89fe76ba23e7a72bdfa9920b42d554a9652aafeea8ab287b5f8acf4bf2089ea06eb103a91b5107c5f6e72f7b29862f102300c7a57721d1687c7764c69b3939df9b8c701e8c78b327109f7db940629bbad4b5696d33ec42cea1e9db2e3eb869abf520302047c435bb50067306502305f31e887621ad92b50f704b0d9c43f978766fabdba34d43d46fc057b2afed80dc1b22f492612996460861127c2f123ef023100addea913ea81023b69b3ee06acc6dbecd783876c1c7178cf54cbcef59a838fedbbe4f4d80e33a9c4f7e170b23345d5130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e6e938f94746115a6555f317129b23db6c15a4ad1c444feaba9f321f42dae4cc6009b86bc34d8c9d552db9eac7991625023013ec3017317ed82dee5b1e2ee15576b031959ad192ca0899a838fbc1ee439d2a40b22a9a832e5724d0423a7dbdcac15e0302047c435bb500683066023100d38dea9a2b2d2229bae067ea42994e44b8e473bba8aa2d623ae1823c7ebb0b7de6ee969606c59ebdec78bd6760a7ec53023100a02c53bc15067cc03296bd639f38731f133b83456957f11d1ed092085ce78cdc4e66700a6303387d84f68d7ff3746de10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b610d55b57caacb46b02b84ed24a5efed251ba37f6e3788948a9a1dc73f91e642374fea800f56238ad740da0554a1ad3023003e17a0133b4708f7986e2c4e131823ed6ffe0cd7695b56239071a0f8ce92a73cfc76075f6e1b01da1d62dd2bf3722300302047c435bb50066306402307b041ada56a8d86c20b22709d2a8205e9393c26454ed9f29fabdd73bdb9bf593c20435c399f0756debf2b94db5652e25023024f58b8f370fbd9812f550d7b0c45e93d98faff6a7c425dd92ac965f074e80cc555dbaeff6ec3bfc8cdf9a64e1952ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044aa2a28fcb8bfa2574dd59e0ef2cf002151232c6a27cd9bacb8f5921359bf2245af96f7647d769484e36ef76c31745302310099d315bd116965554dbf517a42fa836cdd964f09ee53edbfeb017526a98e9053c80b4c08e42f88541113fb8d317bf9460302047c435bb50066306402307714b7c3fa5a10353291edeb4a071a7eb924e6c323b74c90e48a4a5b5640b3619e725820a6057b813f6cbe3dc5fef8e902304ce49ebe8878868c62fc774f951237cb3adecbe76388bf012ec9a848a1acd2d79f7188d4f6e75b9c473bd98baaee3a5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100be2f5fc8ad79c6df56680ff6336a1a1a1e0f873713473a40becbce169a4be03e8fedd43630ee759cd09d29f7c28a1bd7023012c97a33f2cf19881f11fa6245f325c9e52eb7f9b09af3cc25b04f0ed388b87fc12eb30cb84a416af2b8c6b18a256dd70302047c435bb500683066023100d8739de3a6952ebb202f960e585d71f83f3a66107dcf9681ba37d9eb52a3d279100146a84c49da25e40fdf9e755878ba023100a13fc6509306679d34e90f782c2ccaa4cb5c84401ed16d8881a107833cdee7eccc7340c5b1081d30a7da60b81b5493400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be72105302f0a53da28e96f1722d63a56b5b2f7f05aaa145a1082cc54a32ad19dd8c02439170d890ea93ba707d7f5f83023100dfd85afaca3025d4e771d4e4c51432c2f229053e1133ce57b995366777f22b31e3a027a29d590f7eafbc8121dc40b51b0302047c435bb5006730650230278efe3cda37ac5c0c7fad6155d940d3c312a4ca781a31af9d739cbbec24aa2c62dd4170721ecd3593bb58f5930995fe023100d0cb0ee60dbe7b9449d16a566b59c2b3603cb22f985bbd92924d2cd66031d52565668474995c656be00c74def6e86b200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a69c14a9b56c3fccee78406069790fe8ce31fd473c8b2a67b015a02eefd416edb50678ea9180441b068e3f4cba99f4ee0231009c74016d720a6dd5d107aa14a2773605d739b0b09c93c077a3e39d4885fe7000cab2e02e9f8a4fc19312d0194338a44e0302047c435bb50066306402304a4b292189b1133a077a56e9d07a4917f4c68c1e0a67fe837399ad4231925aee96200104ec6db290ce8e876fa317496d02307ce46374f249a5f7795d067526c8081b0b40496e6bf3330688499c9b38e0c126e1e0a5a1973c0ef91b997426a81570b50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f7ea9223badbd290d1cd121da62f8c761c4aaad723248de8c97206ad24755ca1001e2a79e503535be1ffe3d6b21a45b02302b52b299429d0342d1a930a1584fe6783d635db6bec9a4e720e79edab30b59d788ebe0a4f590c2dd7e0b49b768fb05ce0302047c435bb500673065023100c576e1314219c055b21adfb6fc78a370a88890d13c8b872bc3ce8c22b3dd86001afe08587c3a0fe9a3d1d2127ffa066c02300e09c0dac9f7a4eb8fee863956a3f05947cbe1d82f105fcbd6b1ba5e7810552446fa234f22ea40959164fc9bcc5102030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7e7de2753e791a624348164b5050461775c2b54bffcc5a80a23ff16674afafaacbfcecbb594104230244f10e918ff5f023007c90b95e3a36966d437735f03a246a929d5f5cde6ad17bf54a2bb84fdaaf88fd39ff3fcf7ef6ae451c9d0d2d95e03220302047c435bb500683066023100e2b11967de5062e01c29570ad2319f0969efbf6fa93fcd790caad9d694c30847aa31e0df47367bc16464d2d36cbb8e8c023100ad5064670d602485b42f7917e7c213af8ee9ecf3d75c2ffe0838e7c0b7420b5a072f92c2f8280994cfeb2a2dba87038a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdcd53a15f01f99665eaaac91f4cb9e28b83f9e5d60274e5e754ce1a00ecf650543acc77d3f4faf105b7235a9e5220e602307d74c32b5fb107437cc7d3366ebc253f9c71df5bc88809d1cf9bdd08494b3aa2fffc2086533bbee494299d2da92ad5f80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f4d7650ea155a9a06b13b20c22e1256a80b6e8aa168e150cf4dafdf526d8f4f2e741b2765487db79236385cc69ec85e023100f4dd1c12db90d411b8dde02c6df26f97b2a984b19431687d4ffbdc8a8c6cc06ebf87512e85786f71cf3bdbb5b70fa07c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d32e5750536000f6baa210450651cad0a3928871cc3bc5c25e30f1c50d80ad72fa41150072c7bde79ff562a51b925201023100c586da2d1fa3b587067a27a5b26338ebefcd46c8ed6981130771f35109df3a65cb8b4d1fb05eca36e25f6c0ef04b2ac60302047c435bb500683066023100f6a30eb041a10742efd5573d864f2199ca460d10bd772ef8f8d93c9eaef0a4b67b33b49e7409b23cfb7ae3c7df904821023100e95e2485268886013fb0f02ca35cc222217ddeb8719ca5daab20a00ee48c499f915f6e66b587c945f2b398daf8571a5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ba9606832a49b149f41651a6f9970a3f9f3bd62c26f51c0fb6af9dc72f7a077f9c38d18eabaf9af756c26172533b283023100893968f6de8b283e21585dff95136dec11d26985573c191dbddff0ef7164f4036db9095bff643e779fd36b197865c12c0302047c435bb50066306402301be70f8d0d7850f8e11c79a52759569b83ce87b51ca440bfa1d00625a16e7f2c817191f36c6a91b613ccf6f52cd5c26702303adc62bbfb933f6b21d0c434a6d141348ec04c83f8b01610c474ce5c0279869597471c425d451c6f25b99baaf60c9c680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230710d948089dddf5fe2484e81904fc5cbdaf4b934208fff997959b8324b6e73ce9b258ec425646529800a328130db7193023100c7eb593982e04ec6945c4d056ff90e392ca42aaeedc34ccc8498ee469e4876f5e71d1a9497fc5e15bc3ad22ca2e39f410302047c435bb5006730650231008eabfd55d26c79062a5e30f43270568a603c5cfb18b4238577576b3995225248911c4f7cf8be97125e9470c150ad82aa02300c093f339fce2c90c3fb3be1a53a5875bd6fdb4971a19a1edab315e5c6017d438407924fade0dae3a9c157bc9387b5af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d6463076f7f250143606cd69b92b8da7e2ad6ad2059f90523a969caea98a2530d03986181106512dab1db998e244f211023100ba7a05d451b31d059a677a5953225b0ff6c284faf3c4c40d6c3534cc86836421382fa5c8eb95ad1962667600d40861b00302047c435bb50066306402303ba6d084ecee5be3f7a9b1306d05579d474f8d09db3361bdd549e3f5c2f50da5cddc6257d6c23e7621611fe32b7af03902307576bd15ad236490d182e2963ce251b65b49e37e80d15f47c2d0c5f12b4be05b22bb429a6420f68b354d8e28a39388710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306dc69a268627e0299366ebdddd5b5431ef5941645e9ee0a62e3954594b166a6ac45656defb93d2f30af3d3ec0383780402304a09fa70458bc012241061c1dfecfd9d9342863a82bd2bd4d45429e5019649339da874fec503ae199bb488dc0b60d4fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a3c3663ba5c454e5a06b7bc81dba67e49d3421c9e01368fdbf3d262a52b7c2804655e30b6f39d952579483f7a7c6ed4f02310089b7c08e5c980f76872978da0d39d801bc88920431a19e1c917c2091659f78d73e1284282e2e4d0748477145a89595c50302047c435bb50066306402304f905b34eb04b0075e340051969b28a0ac8353ad01c2ba3802b9e77c840d26c32ef6bf6948e01e33ea3f88218505159b02305e76388573225f4a105a9b0ecfd084a91558700ba14c9de8819b1385ecd7e7a8e2b436c0d9054eae4c804d0cb571ab200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230050c48a83446d4a25dcac8f1f1b0ab09c105cc31822dabcf2f69559112fd3a6fe0a46461daba53134b8d77d9346df9910230578fcc782254ebe167d63dd61db286376194a30edaae913aab83ae1e93cad76d54877081a4b681b3e027d0db4f4b6c9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073765035ebb03140d67a9127dc035441febf1fa6addb0996172d4896f954c0683585200a2c141da75a5ddce28f6ad3cd023100beae2863395fffc07a8cf20d5a1d84404b4a833a1055b8a60c9f225d915d482aed58e22e52b4ca3b3a9c799d7e9b1a610302047c435bb50066306402300148083e9e1845aa3aa64733b03e4a7ea4e89835d2432a88b745b5ac7e8af4106832a23ba329b8e894b8b34ee1dc08a9023030f4b72997e5a67d3d0a487fbf7c8f296d0a287e38224fade1feb0403bfa919ac87b5bd981a305a03ceff047a035cc300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303c51aaff499cd846656972c5e49975f1a14ad377c192986f452b40b7880082fb8282dd20913624ff6bf63dc7785751f8023100fb0b29dc73595d607847b2f756fcb6d500daa14d328973495b1d5d752e46bbe366aeaf35b81bf3f1a31ee371d87abdc80302047c435bb500663064023035b9dee4678c7710062075ff2304775fb3eaeac8335b09efbeca6dceca5cca03f92ca9b48cbefdd4b322724d362515e2023060897b4fced7b5fa5859719778f5c5e1406aef0b770bd4a12c73aeab1abdcae56d728ab387d7dd6c203ee525c32615be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e9186c4adc9eb899e8fce9475288063f29f122ced58bb933b1a9b73878cb1ea36757375a0dc3454edb14e32fa5411260230100258b1b9198898dc1e8eb851764a20c746bd82d660a8114bf2b8b4be7c7178c4cf8aaaf0e5e9dfcf3b8ecbf5e1b82c0302047c435bb50067306502306647a95c1fb0bac19d9fa349c71b88021c6f6f9f57742e2965d78c98dad6aca147158a323d53ef64f6fb8b5b83673999023100fabc7d55f0ddb90c076c8617b07560588d4fda9c62654fff93b8fe1c151b20b6aac1db26fa27541841308ff7e210eb990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ecedb8248f24b03285f588f296aa859a44a178a4680ccf95b6ae08ae65252939deb6a7ccb99ab73c59f2e0c5616430ac023029222dd8f6080741fd0e1d27229d10c02f7211adf071f02d8fd490a6e90170b220ea94242ae9377d064a69af8e0c5ea70302047c435bb500673065023100e85834aa6e138748f8d09bbd176a35729606332c8ec7025e12feae2b8e080b6e5ae8eef83fe90d87a75929b8af21af6602302927b1319e0d89b1b5104d7d5c8a18ea2bfa22eaa32a47bd11baaa17fff24c4706561aad518b49aeb8eab105d872d7520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008046644ca23913e22d9268acf15e71cfae6488d14c12906942ba44873b8d65232a077d7c6b60891271f6ee90eaf9e578023100ed3a7dc4cec3e5351ece67157c912e4e12c532ae2e02146d881330686dffdd3cb170638612255eb3f23a08adf7fc88510302047c435bb500663064023049f47c59bf6642673c382a6a332a0001bf697a4f3fa02996b34b05a5416e5752459531498451d32d7273e50d96f820230230020163cd98c55375bcbeb229099d59d0daf50b7bdfd8c37462ea23aa93e22b14c58b77c5421323d9c6022dab1e864bf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f56c97c62efd8e78cdc7c3063d7f6d9d649daef5d8fa45a041089ee45ca17adccfe1954a82c6d804e53b1779e98b680023100c356e34bbb15c868c932de053ca558cd73b0d835a051d7a7754ae7e420dea7804ddcecf415fee3a6e2e4f10837f4f2da0302047c435bb500683066023100f8a14760abca61c5b69f2984768c55af8769b5f4ab6b9353b7fe1809943dc8540652471c871311cb11458daee2ff4f07023100ef459c39a1d04c8ec02a13a874959e7a1437236d6b795ff80730a9d56d42fb3292d33f19efc845889488030c106f15ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100faa54eb4ac5a169da96ea4a86bd758c4e9416c7678565147dc8a45f0b71cd9b69b72f00ed4e9a42da8cb20f9e044d7b0023100d8aef54ae43a6233cf93ab66860832dad751184bf95293905eec90288b1a78cb22a0026f7564f80457b83830d2f4dadd0302047c435bb500673065023100f654719bb8ff11a29574f0d2198f09b1aae31352ac330b7f2335c786178bc6e4730927c79acca719c63615bd4d92df530230528d70e636249bed6e7f63c9d11638a6649dec88bfe4829c3bd09ba6214cdf908e00b27b764ba61bb49cc563ae9558980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf0fc77a6ca96fafee3872119e066a3ba84b0ca29b9df575f67b62a8c34325974f2ae834430d84714c48b420d54d99b00230292192085901dd1239183eca2855527ee03373ada3530196c9b05da6a4654bf3db653da36d681ca7d4b116c78e61baf40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305ef41ec45ed76c62893acf57fd4adc4a04be1a0e31b835c4b98a2764201c44ef5deec34d59620c937540b516a79a5816023100ad07ed8816767955d65e79c7629fe89074aa0f4cc490ae5a28cf8620433ff3b3ff5b45dcceece4cfcbd5e9cff1b6f72c0302047c435bb500673065023100d4a5e60a193d364981fe7a7fb04f8618be0f9a8ea6b4d1c8f92529b65ef9213b9f8e017984c4b9a26c79a8625e07989402303e76df32daf13ccba0a1bf1d4aa02db5006caac5374e98fa84adb1f3b4dddcbc91d3062247ceda99b19084bd7bd987740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230453141715ab841daaec30ea1a80f8ac7a38eba6c4280f6776cf9d67e9125c182e50855fa1682571f0d6ece3953db35c9023100d3737f5fe520c659da3fcc22c6ad58b8270c41cf66b1b1ea8b6150312bdc008594154c9c82d0221002200accc0ff00900302047c435bb5006830660231009f16f3ffebaa4de2fff0088a6f9a90a9143d67ffeac8479b59ce0df9c0e7d26dc2825dd60529497d73c194e7900fa84b02310094fe7ceefbab38321d1807ecb6025148968dfb2a40c09dd255f8ce63fe3c9db360a45f9455c1aa8cb0e513e91f57f01a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043a92ca13ed95d739f3eae4bde9c8e230d458340825372ab9e0e829d10a0442e81ad07d02502bd401de358cfb0655ada023100be502be2aeb44141196ce1e79a5a966c0ffd77c1f64ce6efd910393ceaafb18e5c0f253dd231a3bf592b5b2fe74bbef80302047c435bb50067306502300e4a5c56e8a0280d99028d21acc50bddeb176e826dce049638b15d885fe229351b727594ee5c901ef61736870b7e0845023100cd2b82624db13bb44a2ff4e109a3caac63442ed6cb7a21f31359f4f3a3d5a145b1d18f1f33cb5b9bd4242d5093a924040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c3e7025bbf3d7a57bfe939ee2317430241bf8a525d5baa1c7e8eb8ce55564efd21595ceb60576b393693363bdb41f9bc023076992551ccea31903506ea1330400b0cf9605ef014ec07f52add8ac44880e10e61a9ff27407e1befbf511a3b137bae5b0302047c435bb50066306402306c3f3172af4726d8cbc5f54ba073ff74941585abdb1e809a7c5ac3dd6beb7b2e7b6de665cb556eaaa4e3228724a22c0602303ad8db298b4fd9cc5ecb5be887aae6523912c5a9f4d0d09c69985a292f0863cc9ac26dcbc5e50acbf0421c49bafab43f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1886c7e082cc2fb974ea28e1fab34d6a6f56282301bb11e8c945a73c51c4f6b6b405ae46b1a42cf190c0d33cea932ae023100d15834cbf38404725693a141c1ac1596eeb1367b75c9bd2a2e08c06f7ce01a3c3ae3abba857cbf32659eb33d2d17a5200302047c435bb5006730650231008e44ea221dcc08e6007ff8872be2227eeab20d15c4c0208629d401b3ff06a2a3ac1f9454f94fbd0c4e5d6812cf9905a0023002400b14d0f78b6bcaac3d8a958012fc1638c6736914f37abdb55c25a6fa07164149c41677f8b1f0de1c73e65442c7fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100966c8785f5e0f4b329b2e711cb530233f6e3656f2260587604317a80edfc3a4c03373f5d7e5bc609ec16dc4a3d04adbe023046e72b258a1283b15c96ff260b3abaa0ea1500099418985718ebe0aad9a306840516e21febaa2c536c2580f2706507c20302047c435bb500673065023100b12edf1dbe243982759dc940acfac7052f8696f89b14ab45d683938aa7d92d38dbac90db731cae72a582d91ba5ed7136023078edbdc6cfad798078507281762d261c3cdc84bb0920baf339ed87536aaf4343f2684a597b6dd07d6662aeea27450aab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023079038c0d99b0a349217990fdc85a040c0a0630a382df46cc168d54d87e39c6b32050e68d9f91d8bc3797ce53008855fd0230331a3de06d2498bba0e43d29ebed9664d2c5378540f30dd097953770fecc523e368c906b0e86a0278d6d195a0cd9f71a0302047c435bb500673065023100ce0da3571f251e82774a135baaf2816bf73106410152e360ccda61d844993492479f768c81a544d1160bdc6ff5c0bfcc02302b5263af8fdb9bfd04d289c99aac024044de51cc270e68bc921696e3f24eb067bed9641cc43ff3768f589fd20b1f80fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303996c7236ddb38db54db08fe9395e8f10f4c7abff3ea72553eff80cab167158f5fe2c71dca642768461892b0a9049499023100c893776cea0822e675769346898985b2e23e6af7a188ddf1f1896aa70a68df08124951cdd99c38c0d0c89d81ae89960b0302047c435bb5006630640230384aa57a2c9de93baa8d73a129cc1014369c93d76a401e4da5490a9042a4bfb9d4647ee7c7474e0f85971a54bebe1e6702307e73686fc679954a30bc9373af71877ed7d826450da91796a713c1a7ced7bf8182005da4ffc31f1fe39fa8454939845a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6e73f75898178865c17b0090816d22d71e196bd633fa779d5a3d09b12e9db736ce3e2e19706c47e313769cfa2838cf402302ce4d54266c1a5f5ada0ba4c1f8f247251e2b1b358264cdb6f82f521d1b19274953fb8ae7ff03ba3c56bfc986bbe9ae00302047c435bb5006630640230475a7d1b58490fe7dcb2a36535bdc9780beebfcfcd7fe82f3125b4d379d033ebb22f9c8be9c201dd145dc9cb06da8ee102306af3489962012c407bd29933980adf9a96ed4a60f0b7fc2384f40e8653002302db75487f1d01e868d681fd72254d47ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc309941a9fa07fa81ba3ba2b2711b9a5e0401a880df39ee0425e75cd719a9d8fdf31e6c37060bf3e96871726022df7a0231008cc7084ae8a11e83d7774ba5584f7f38de5ac0e2530481eb2645577a22ad013ba8ac98cf9ad91617ccdfeeed28b1e6510302047c435bb500673065023100bf7bbe033c6206c3a413275349e36b385eb6fa91dddab22b0b891cb032a38d1b0d03149f744a27a736ef9fba449891aa023045cf8b456277f646b3e2f91a0d8452125a53c07c715c86835ab51c72a7d43523498137f3a8639cdc37593fd9b2f6ac2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9103b3c5570f73a41f16c2f1d3268423f93454b98c3b30bbeb69705e9d0822529b55cc8d81ad1b223dfed9f7d901608023100a00333fbc3b82e1b151b9ea0759837cd41b4ba49b425602f9e1150d70748aeab1d606a552cbab473121556777cd5e38f0302047c435bb500683066023100c81610edd6355e14bbf49542701d70e181880d09c7cf17cef1f4748826c8ae2dbb4e88d27c5a62bf85f5282eb81b11ea023100d717c12e2778d4360b7808045be8d1c60b6ea197a489de9db8b391dca70bc26a7f5e07424e9b12325f20041c24d1a8ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023020b7af6174aa60ff042ecbb1f0c65c7ee54caa91967fe035e4d45bcc2f5a1c28114f92c6a245cffeaa5b696d8ba62b7e0230462359d2f47c58bee103fa72cf7a6579c216127e6adce2181cbbb0fe47015dc506cebcb8fd274e890c388d76522a112d0302047c435bb50067306502305f1ab395f02a2f330d1019108e3f82c97fa1ce0743ba2ff4f998bbceef524d85a210bc0859f778d10bf9cae6f5e543410231008d09fb027e25c6f22da6f09282b33b16275a2c46850ad79db80389763386f067bfde27a0cc6d10c16f55db38dcdff1130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230319e2dea1749be53413653db7c04377f0fa8c06462d5f2e7694d99cd01154ce5e81e13b72b110b8efcefbe42837697b5023100808175d1fb6d74fa21608ce2c79a3078ba91c7fb3fa5b672fbb522a8977897e5f8631b5cee87a19dbc4b04be49cf7f200302047c435bb500673065023100d1bc7aca91f1e5a67261b00fcfd54e3e52108145cad26a92970b173ab1ca11a6e2d9974c252215c1047035552f45c4b0023079d3670d7753590c39970f46cf11a45b38cf12c6cb4cb5a355a18693c15fb8d906b0760f32dc2a694a2b16ab1ffb77c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230221c9fc6f17b6f982cddb0d4f801a1326c95922fb666790924e1e3d3183a75153cbc68d029e3977f917f288c5d0189e1023005af6e4abb57e91b15528c8ee49cfc39a6ebc6bc7364dd1d0256fc00812c755de432a835a052ffcb1e44ff4c281671b00302047c435bb50068306602310083e0cab25243a66c7ebd4fe44ec63e6a957f19541035a357d3b2c9694dee73f1d389df7f4059995b47a417d49239e5a0023100df132dcd58af13be2d319f5c6c24bda9ed61c861341ca9eefc48d1c03d8b922d77f8c20d487c3f17928bb755249eab970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307f0e719426493ee84d20fe668db30f44ac10a68c77764ed55257d875f7ad27e244932a48b425bea3cfd98fa6990fdd06023027b9d9041e4f643f00095eb524ed33de9ce7aa0fe850587d824e00bb0845d2cd7c5797402170b314ce5ee87794d77d0f0302047c435bb500673065023072a36ef101a08f3ad998d6620ff71e9acd1216f33f1a9d2daa8c0b07cf4adf473122d789877eb0c169dbf3e74e85a49b023100a8820e4a51c5972e9f744cfc60c68528dd05c9c3aac3965960519abb76c4e1cc724100de3aa3ecfb3b44989fd92e13e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b32592d860a5ada536abfd040510b34a48f4ad3f945e629d81475905b7d44f9d2ac0d441db250cba80ddee98ff85424023100a7fe09b2123fa0e6e074ed96f920212a249c843a48232f0c99b88c032b5b32bf1a5edb10739f6a86b7795bef6a3188e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307e19dc41fdba04998f40d678e7b6d39cc32506b6cbb925a5529bf79f45175d7dce5dcd519eb62f1829c46a26950dc798023038900503972ab145c610dd96c69b4b95130636bc3bd35fab7b26cb0c665a5ebaa6e838369b62bb72f7e80b031870611d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba314b3226160e6d33212292fa3622f408c31e5bfbd33b8c55a5113f0038d2a38e99791f7072e749cd2d7ef964dc5b7902310099bf29086d30220e24e6152bf4d003cf2f5b9a9481d9325ddfa2a9e338cfffae2b7c770eba29c1dfedeacdafc11c82cf0302047c435bb500673065023100cbd9a19ba0a80f6236c5352c55fd20637aae839e23c2e313459527e87712629ff8fc518f34929cb5a98690e49e69f07c02301582d31cd2d82b3c9fbab963cdbdd195bf083c6464df09849d0b73098bea695bca5e5896c96b00d6b985a890bbb519170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd2ee43fc4cdfec5f9f1f5b18137a9f5981e7638047985a19168fa1603cf152a7924e407dc9514f7a93235b3722e06bc02305d8de522ef412abf9b35afa3ead46dcddb04b7f4b47d618b66c80186563eb84a5a143f7b47cbb93f16e28433bb2f0d450302047c435bb50066306402300ac8bbe0a39e05968d0383fc4909ca7da8e95c2106d4adb376fe3cc3d8aa03ecb772da44473ec3e517e9e64d4b08b781023074de9cb9c06b13235cffbc7796a6cf804fb3a4d327f3a844512ed3da56e934d9bcf8862e44b40d0bab3b119522b0e7830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301bd03333917bf88a0af3e741b18fa3220a7b70451494fcfbd0b2ce6514edfff65d5961eb839adc21549a38933d3b172f023100a30d1fdb469b13907efdcac4be2e70955b10416ffd393a58e233e2c6eafe0a90f651786883b1042498fa6ca09bd20b860302047c435bb50068306602310084e8f58bdcf4ac6e3ef9eacaf76e171942779901c8e44d26091711998ad04f7efc1ec61d0a7bfde9e6833740a7ccb81a023100c48e36905cdc5946eb42227ddeafa170d1c46831fda9cc820a0df14c7a4522bee72ff9e0f201f1339fc36e6ae57afb850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac7dcbdeb6a6fb369b8c9fcbca559b072bf9916ad40c221157f15678cf7d2b7fd0bf29b7ccc35b0e544b2793081c108402304fdeac194ec609847ae1a263a312b9fcda85b750deb7f216e8b8fc8c5ccbdb80cf4f9fbf5fb4e222e1b4628f634a74b60302047c435bb5006830660231009defc74d65cebc66045efb42b0c0ec7d26234656d062cf26a15d7213e52eed8e2374e0eb8a12a8182e54adbff06ba8d0023100c100fd78bdd240b961aad9bc84cc62c6cb82423cf01a774404fc29bcd16b75ae0a8793816f2c8fc50332ced2164c9dae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d6bc5da9f6f6de323e74b64ab4e8a8c1f7cfa1d9f9a5cb74c2469b8c8e709d5bf762e608b18bdc25ddb6688c81dc6900230786de295a5a00798707721df3117459dbc8d769211851dbcd196491442ee92949865f7faf50fd2aeff820dd1cd9e32020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ec6a6a4684b6671e7873c62e2cfbb18e902cb983fe5bfbe0f6e33ebc41d3fcac91bfafbfdf6e3cc95409c13b2324d10f0230298d2925ff57d2177bc97eb12e40015159b26a7285bb1eacaf62a51cb84f3f887efe9a354b7ddd51ded1472128e326640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301cb58d74abe03dce4bdbe97beb45fc312de991f32986da8dbaa0d1f14890451dfaa07f56eaa201295e33d3990ed992fc02300b14aaaa6b7911dc36a49014fdb44a56d14e0642f8642a1f6f2354a2883dced3b1254e7a8e3df8cee01faa74c8915cda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a8f75ffead018ee242e950309d022fdd9cd66a9543c73b79b12418c6b55064e9a1e62bfd3569fc8d783ecc45fb08193602305ce0825fcc430830728d4877febea2693667a706147499528173b36d53d5e78df1877aa619edcaa0a6d741840f1cc1380302047c435bb50066306402306cc1085e1a18d056832cb48c9246e955524810f4ef5336b9fd520041b208c723eee5cb125c4952c18a109af463abca9102302d95693c9147d408340283334673a97b5f913434ad703aef8fa46f55293fe9175158a56c01e352bc3771094159ae329b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002f7fce7bca6dab5300b4bfb86df0d47d478c68605d32a612876ddddc888e27660768c5280a113fc8b24a4f40c5846dd0230601f7a6ddf0a90bd1cb27142a92d51b3173f392dc13896704ead6b346b7bc6e72eec39801827b6da86c7491fb87ae31a0302047c435bb50067306502304d6cbb7a945037cc0c27329d57ef7d7fad7d7e579d6f7f68e4737bd8abc9510c039785975bc1be298a97cc8683a1129c023100caf3bec0c75f44210c68e60f3f7d24fdc6d866d1446676ffe70d03bd7cb95d3af865538ec15b3fbae0b60ac160b618730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056bbd1cd6a1bfac1da15eeb323e5dee88ebb3a9cf5dfd1969244ba29c33ed2bf976b12b01946d69c7d85bd9426c1d903023100ee6153c0fbb8eb08fcc8a75735be04be6a907518edfd504635df534a4c2ace008df2ec05b67db5b827e3f502df3b558d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302941bc06e326ad6ad92275c348d3f1163c9c9b8b5ea8ed44f992beafdfa9bd60205cfb6eafb4179a1d443a7cb69290bc0230337f8b91bfff2887d061117c322c20fa37d6b09136151cc63249311b95a867657c0eda90a147896cf48d01aa7ceb438f0302047c435bb500673065023100d579e611d11309e08594cf7d5b90a146ae7b5a904d18542bc1d7b55be66e92b52845663e31c89857a079e3b15d3a3bd202307d714dba24071dad1c7fe846c76a1a0a5ec7b3297f3f4017d4129928591aa890cae4f187725e56eb4df8b087f995110f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a629873b7fcb4ab230d18f0cdd7ceec7aebe1d1a3c33c395e816b8173d864916c11f60c5a9311b1746b44f9175b9ac9b0230692ecfb14286ec3892b35a3c75a4ef174aa741e3acb740a5145862e4d1d79a53205a35fec2e1abadb28252cb20ac397e0302047c435bb5006630640231008350d96c336dbe1b1e18bd280f8fad8b09a51059565bbfe4d2f4e995f449cbb37c07685b3f07acc1bca28d1ec5ec9178022f428c6a4a7cd4c1dfb14038cb37598ff16c0d5b4edf24540a2123286307df52aab96238c279153e6e69e2dd350ff7fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dde7eb1bcf87a0fa569ca5040584fb1d77e63811094adfbc788295d3e857b69349a991eff770df499c9e9bd883912bd902302ed79918bea13dbee4236679a38ddf05d60172074c2da31d222b35b696f0b63ada3ee3b215fe53add3d9e0609d49a5280302047c435bb500673065023054264bf7e25c95996724e7fa38e8d15181ece7f3aaada2f1d2a495863fb1c345cfe8d6719a52b455de39fdfa20cdb70a023100f573120209563eb3e1e7180563da38d77ca68258a24b295fd8b675088414a01ab94bbf78137772c24bbc3d15a3b3e8060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008676e0f16b2c6d0e5e6362f09f7b75d2569dcf4917494cfdb95184f4d9d0c634c73b376a006490b78dcb0bc9dde220d7023100de0e1dc2cf70c9bebca6f74e5d06f886c3db701d43195abcc85e0cf8c266b30897dd8a4fc9d2e4c9583e6b43237843930302047c435bb50067306502307116b5cc59a94c168ebaed5c0bb1916d7c5b4cdbc399652b3a9411631505c3600db4075f0b5f77e0592df507548ca389023100d4fb25e20bd35b03f6ce98a197fb19463bff12b6c87d28479ff4f644d587beb121951ed83a4a47076c118af1de1001bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301fc6e5e20e5c73200baf938dead6a69dabf94ab8aa59ae75e875f34695cff0f75265b8f95523280b818cb186ceb1dc210230746fc461d2fd5a9b7a198e9cb8c2774f7e9245dc5ff23b1a4066e52e878f8acc14fe77d9130396a0b5a7f333fbaf85e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100facade2d8d3b61f9e37297c9b62ac79842fbc7f85d5cd5caf550e385fc1155575c793951c846fb050f9c94fe19b566c4023013c9c00c0b0b8daf92c337676d3dd75f9a38455d14460f43dd5eb5e2579db170e9c758de41f19e5186959dc031ff11660302047c435bb50066306402302708effdae399903e76615b4598510ae00c4efc164a5b03841e156aa4f3cc4f6582de0a839ffc3c6d6e58ed52889f79b02305655bd668dd7c56d58bbde26b54f418ac9091e6262227cf86a764e3927aaa09ef9c393268c68a2424b3353c1e5c3d73d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100919353da0533127c4dec9003659f645e227dcd15fbff3e3e0e64af9aa2d754de7ed4ac387cd4af299f2b8dbf80e1e643023100e7a070cc5e3393d5866b5c10e58e3217abcf6782e22dc094a5ae957288af22436894afa753cae87db7f93f588165acd00302047c435bb500673065023100a966ba8f43e63ffa14bf86c89a9e410afe39f0280136ce53d63da293e18ed657ac061266756247154835ac91c9565e5b023001041c994badad892592c2a2cd5b916b775b77650c201b2161aabb78a33629caa6d893d6dd69e1360d1e89bd218e6e6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304eacca8c4c5184fbf5912f99f7be9c6c352d133ddaea0f30e645eff68eda08af7e520f9a4379c854abade38ee0017cd0023100c4882cc9b41503b5ca2df6b2a61a400653a8d59e06d062ac892ab06f268369b2441cd66f32e5286c3f559507f7e9ea370302047c435bb500683066023100a853c7d2f2aa5fbac9df6cfcb370dc9112e7cd6667d173ce42413f0e4099dcf984e181789cf04e6418067a74f69713af023100aafd2aa49ee593427f4c6868dfb5accaff1782248effa0f314ab8a8d99e752473c56b8ea1a1fec22e0fe1265439b697b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009dda40b093d6e05c8927c0e62d4038c5a1ce2b96d8b2713f45c1abe3e5da02c000af1676fa0dfe588671c8f5ea2e6e62023016e55fa5a17c145a3f606876a962aec0200f8a40251029133f1bcd092aca1da75caf537dcb511161820ce4da9f19f3740302047c435bb50067306502304cbd15e858ab3ad8f2ddb178fe42fe0e4f6899b6291dbb02d80694490cba6225aa958421f4f78f75259f8a22a1aea6bb023100a27b492cce06eb592eb451fe600cbc7b6601ae128b611690a37bc5c4912f7790419fd10d5974e3ba0966bb973ea7e80a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055bcfe8c68c9b6d4443d8b9c67a3cdb61604ce02c64a279bbbcee3cf119e146a1962d901e7b188b455b62b8108d02a43023100fce330dc336a2fb0845d2c0f0f9a910251143234e78750c05db27e00f46d290796ed17ec516eaf31be5dfb978a0c54dc0302047c435bb500683066023100d5857ab2bcf816f99e5b2c636f438f4e256f24682361735114b7b48d08a110322c705313575434b4ff0d961dbe44bb72023100f55c9296d5a37a891c5482fa4d03c462d8f2d095aad962afa79623dcf8b3575dc7fdf53511061664362574ecd1b85abc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302002c4526084c6d2693b4c33266a503ba061859403a83b2db3130cdd48cb02eddfd9d2688abbc129e66d7d2b40f92624023023f1420f3a596d05f40d2affc109f7ec7cce1935ba210375753fc9a763ef06b209093e28702c2dab7c118cbe13b4425a0302047c435bb50067306502306f3740882bc3537c30ed93af5c0b17fc0e440e8667ab3ceccd45ea3795f179ed088e4d9bfca769432b357d444f8093f8023100e1103dac9595e5073dcdae4e1362a9d7531049f6fe2fa73e5e76868aa53cc07904754c053de1387643612160d1fc28910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074fd53227907a62c033b60b273884ace1eddd4c26fc5715158561147e06d156a3d89fd6a9e1e00032e30fa0ca10017ce023046e152148675c24d78bfad91fa62172828f308680e0794a4e3fc120e4bbdb839e193f80ca0bd12d6d145115e11940cfa0302047c435bb50066306402301c9eead1f32f17b234e7c310923501e248452aa753d29a29bdda72a820c7957f0f9ccda045f59481991f4bfc6ee7ae22023001659405f61dcab9531b1abe3a6a263e40983db7e9a7a1c4c32a6322fdcf3f1237abd4a1c6cd2095881f83e783e2a4320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e09df53083f6e0f43edcf976969b3ffdb7b48f5990d616507bf0d82ee5e115a5a2581a5bef875dc5a166f4093c24588023021bcfa9e568347ef108d889de24f8c0df7926fa76f7041321b02ad67aae97df5c72b0b16fba67afdf4b85d42b31194650302047c435bb50066306402305cd1091fd068a675252e07a4d10e1bf9e21e268769b940e09af82a60f830a96baa58611bcc121908df4b92c3aadb661c0230744f0a72081a3454b9210b4f9a5a6a156fb0f6d7bc94f2d2dc305fc8cfa678c4d2d1590e16b56a302cdbe5a6879293d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230209dbe2ccf49e422e08a544fe18c050e41ecb519be50a1087d096a17fb243a813241ea8ce09405f1ce57bbe70febe16e023100bee70750e22f07ad361369247ba37ef81097dc79a00c6f8b4c5b66fdfcf4b975dc48cfdb6b46cc34308aeb1293bfac810302047c435bb50067306502304c242593ad09f76505951cf46df2106d02d50f78794eb650a27de93009ec0e55b4353b2f0f808433471b80d0aee2529302310085d0d02a3d9c15cd95b4bd69cf715f3a9c3a8d754a6a89a3ea13f8f72a126616b17db3db86bc66b8050f6de33137bf600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b678654d8b8d9fe49c95b97dbcd592a33e1061219403fee15f322e1b94d73ea64e58e524306b99d9d30f121318f097f3023021a6357a8dcbf3e069487c283a4fce806dbab3e2cd250acdfd003925616e578e66b986eb4ce9138bb0232610409480dd0302047c435bb50066306402305754ad2be985e2e5f0d4e284656ae8457254eb0128107a646467b8fd59d2a8c3d950f772098a4b61385119cae6da330402307485b12cc09cc511276ce5c032decf99a18dbce8e0d3110f353dd7f70d74dd2f8fa75175c3f09cdd3788c87b0eeaf4da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b57d6ca49c3c71df172eb1b92478aeadb05718cdbcc020d3863d843d0d0537016ccb0ed69a9647103d9f45f02c11979a023070a76709d3d24f55a15f9822d2eeb656481e9c788a2b4f082b1edf5783747134231d45e185b9bdb9b88f23dd4345a0850302047c435bb5006730650231008998c25d09bd1a846ae73e797c1ddac8d1de5ab52d294812fc9ff098ecc6c9d2dece785b7825d04bd233994867c70252023027c3819d62c3683252144cc8736680ed140653b41300fcb6fe2a63bda07424ea2116949f7f2e307b1c6f135cb1d979140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e07b12c7a57b369db2244dccb8e4ccbd1aa15b822b944fc9a2fce1067fd17d46419d5a579f1cb7b5f6e6f34c5533cce2023100be223c1363bf4054eb9eac851d41c70f58eac4c0978ab8360a878623e3cb65e5e6cfe1e24c85fabb74c810a536f6c1980302047c435bb50067306502302ff25a9e1560e211ba244454166297908728e1779d7d88144cf6ae98fbc972b8128c9de32390846e400a6406e7794b3a023100db301461f50db43888a372ce94045c505dc50d33325124e7d121a91e6a024fc1f77a7958500a4bc50bbf3d9fe0482d2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303d1daf28f02142972f7454def19b1737e514656ea7c938c5b5ae8568d622a4d824b4c688865adfb865169eaa33e56852023100b19369d7c658fe123b44715258f5ebb7f49ea34bf9cdb4d3660f5e3f518e94af312b4175029c0475aace9c6f119147ee0302047c435bb50067306502310080d05caf0580390c186a92337bf1f5358340cd340b0a8c325d77962f4f40b3755a1de49c82f157f6bed40647502bb4bb02307296124af14c94ae7c82e805f68237ac103a4e45e1be7c1680b36fd844bc2a0f5def3f0065fc4340c99e4b6ca08c37cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0277035a745d33b2bdeb518f0f82631f20be38b513afc94db1be591bca22e86c896c6e5d6233910c8d37eebed4622b602301013eea360f23bcf2287eb036bc3b9c75d2cfa19351075a363252a0ddf0155e846a477c8b37d2af5393c01e831ea1d2b0302047c435bb50067306502301e05d00e5a2c5f29336687b2d6d7aa2c4bdaeda5df864c6580062fee8a7a1108945b15c5bb5d50c5692f5c82a997af29023100e9a2f6f671fe04613d3ab766caf9f7b9fd5937132f46ecf69311792855b791668076aa4ecbe6be62fe675f1249f7fac10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c81cb7bd05d9942a413a1287d2543b9f3824e683687d47ff21c5a5ef355431fa5d0145ae1d11e60cc6400bedf462d103023100aacb72001aaac99a029bf077b2238f7b13715ea01bd1e8cf21e38adb9165bd8bb092039982dc427a0188846e0a982f3f0302047c435bb500663064023023ac2101ef0db312f6ac6a0a6ecb54f8a350526722f877c9652c7867fca491ca103ad3b37ff98b91c4cf675c84ca1a5e0230252e86f474f1e8a57ed4553e9fc19e3d21811e6adba97597121a607b896b91854c6bdf84643e8b583082afda3a943cb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302e49030654dd2c87ee43a5df13972093c5b674ca2f48684fb1ae51e5d9ad09e7287215e3f4516e16575554ed13814fa502302de13960c0353f464bc68255bc4ca8de6d35c64571c4a31bc8128112e375c3e81bfc394a3504990a7825bbb94df21d4f0302047c435bb5006630640230112e9d3995880d870c3c822169e15e31e4cd570c28f757108c7dc04969d66b63454593ec2550fffb2f00f340614e6310023020a8792a7775e8aa9b1978412f724bf4f061b9f5d02cf425a529a72cc0099b11f6124d5141a73810ed04102b3b191c180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d6b4e3f7dbce0f2c9755251c1b373d9e9e5b49f1e480bd7766599f0bc3ba6ec5000fe9f279deefa7eb192000a9b89be023100dbfd6950a4068d6dda3ea54ec898db1f997fdb5189dab534f26305b967d94c18515be0c26df3d22f2b650f0f96f02f2b0302047c435bb5006630640230447ffe1a99861e5964fcd1f9a5ade07dcabb3c22ce5b49c37e9cd2c01d3a94024990f13c65a4dc05f8649775b917fedf023079d366fda844899dc545d68bc7932c5784344d4c1bbca88931af0f15a2c6a3da2ced092473718394bc6fc67f118e65050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306054a89a16abfc51af7f0979598fbbad233bbdd14288ef5daa3147a45033c8a17722fb06e1dbc73ff4560567d7af56d202303f10f42be12444be70d9681aa186159f4f22fd700ac250843969feed79122e759d4d66baf633f5e0aba5b6f93ab7a9c30302047c435bb5006630640230584acea6154a89463c923da259d43952d58e4600e3d4568eba42713ef5ad33aed8ea5fd253421d00cc8b10bbf5a06b80023073c2d0f65d097d64c5d475504467e17cc89e2b780d346fa9a2fd90e7a6de72e47320f9a65575d1f760988258c13cdd990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025c261b1766b95f32d8eb3db19c3ad088c99287442a43fa1156632d617adc75c8c16e37cce40fa1c325097ab530c487d023100d1849edc46c45f0de0be6445c49e516e82727c4b7a769ab059a9616f86be27948b174aec047cbd71a0c589dcf0d71b640302047c435bb50067306502300d25a7758eb27667f12b5358370569070fd80a4d5721b4fe4c2308b2dc0a50bb7cb453de07c0e836007be30143eb70f1023100b9ae9f8d27688e6d73e5d7ea200154093b2ffea3f7be805dc025913dec68d7fd61aa29945598fe519d40c52d39514ac30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230723e62d192b6cdbcece8e747b3e5b8900a1407f9f91924b3c9e2065c7462e194b6ce646e87732d8e1ca7c98671e2064302300b38a91f184a1a985a228e34bb81ec6d0bea75351170d0f4ea9f07112d7ebe9fe3c794306259aead17d4a97a2050905f0302047c435bb5006830660231009aa51ccff1416ec1a9f8beb621a0936d9ad1432fc38d832efa9c0aa610cab76a1a051d8632434e587aa0258a62c7eeb8023100f0d3263149229d442f1137c7182b87e316718cc368eafda4495c36c6f60de5a476455f5183bf9a9a09be40510c73e84e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fc414e71b745754bf603d37e0aa7490e771c37849fe8bd55ff2b2d58e8cc661030f91a4d7b1e54eb42f2a4a9ac7cfab023100e541c0edcd256e683bd0896c36661df446e12e916e0f04b77ef4fa0c9d6cd956f639c97517f7f28d6ff2e9e323dc82680302047c435bb500663064023014c6cbb0875eddd5c44f437c7c67ff19cd00d79ad4b4aaab4b8110c2b52dc41755c3b39855e8df1206ea5a6a7c272c7f023028680facd88ee8006ca7e4543a364034d4244f0e1e45243cb1be8ac5c95b0c1ecdac284f972a8ffbc6e241565486790b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c208e3784bdab2ea7c5f6477ce0bce98a57ad61fbfcb5da9644c7a92d809fc204483a38909083248fc5a46db71550e0d023036b431956e06bd120a77d1e4fd203bf086b377e6bc9b3106bf9dd7fb6adfcbe6b939d17f516df1807f87d48720752ac70302047c435bb500683066023100a29681936b0b3c51db3a6c58376776254a05b49ddfdfe3bfc7d69b6b7cc7ecd7cd3c1e3fb61af40c861a49625c10526c023100da1bb79aff2d2ccbb2823879ea748e82fa79581cbfe7dd47682c907298ded6351e2c0980021f4ec7b8d0f47c88a93d320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d224bc84714c009395df348dd8f0906318ffacda5a01b9c77be1ed18e8273879c5b8f3f4bbeca704f905ba8438202a8023100af01d12947a5986f9530bf04df18bc2eb15019ea28b6902b2f7102780f70f50f4f2e66611023667f98ded6f4d5017fb40302047c435bb500663064023100a38148f41e9e78c29bb766a1f3df062fe7fcd53ea69461dd424ef23b5f13c2ebfc67c37d3346fbf33a095402e4c85c54022f2789e766ee8e09886741dc7d17fb5e6c4541d83cadc7c332a7d5b492bef7a489cfc0c506ef83afd7ffb402476a04660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e719756c5900e71f3aa2920a3c2e7839a162f1f7df0b23a7e65c6648b21abf880559855b1dbb1aa2fab10d5c1bf708f023100eb8d9040448bb5caaa05fa0980c032c9dc4550f03b921ce5669cb3fd080aa8bc0a9ca89e6b5f696e04c87d61760e98370302047c435bb500673065023100a064c0ac4e9bd43c4d6f2aac651539bcef5b534b69047cb9f87e0f5a0ad0d2556f6b3db4087102711a50be7f105bf5d30230279c5abf1e243fb1deb4a25b293c7a7966575e4c9c768e691778b3a37a8c821d51b24a2c44074cc9bd51c3a4433adce70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c4b80b2fcd1282f65e781bc33727bccde174dad479390ba35f8d4126d3b5d7ea3dc180ed6d51630eb136282b9cc187802307f35fc1db8fa0e793134a19159a226e111d844e1cf7255fe6b1dc9f3c44add525a2a9bcbb0dc2c45614485b2f43406660302047c435bb500683066023100fab00082c72b6909edcbc1ab236ce7e847e85d42e0211702902f0d06c56cd0b54a445f3655dc1e933b857144d61fb2bb023100b25fb8d5103d28bd3b2ed6a621fd98639b8a7e99904d988491b3b37ec05d12ac597cbeff13cc34d1297c0c6d75f960750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067523e31dde654b30fd131558b988e22e05239e0f68145fb4e50549ced9a0d8e3579fbe0761cb273decc59f3cda5cdb10231009002006c6d612f21e5bf8e621d5cb34be8653c40e24436dd25e37ef34b0b369845683ebed66a91abf40365b71e4296d10302047c435bb50066306402300237b45dc625e18f137a1c5a9970e0855c3b08a5460491bc6f50068d878bc4ca5b10a3b329396b3eb9898f0fff6f564302304d05aad46535f489e5678b119ce628610cc618114c81a6cadf4c001c1b4c30de60869e06ae591583900f5f7bbeb91bff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100885a52cd116222ed53a44e3b377f0ddf9d0c1620709a14331a80e4d619ff5d3fc4dfe54d36179f14f819dd34b4613f5a023100f3ef69117aee7d28c30d0bb35b4ce6f53157f2d7e677d8022584a3d265c7c3f6439b0441ed3865510cb3c73495785ff50302047c435bb50067306502300894209251b196d68db0d21df590babe8c4cf2ec993678af3314b8c3696f20cc86bf3d37bb5785e4bc0281eba69264da023100e3cd2a6d9d7488757fe95f1a09222470192125ba05d4c0274641a0e660585f275a84d4faed9c52669c71cee7a4bbadcc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230725fca2b76ef7754200bd0685bfd070b3a58d3a42fb34b2d5a619d7b8d70899a3d7ea02faa34f8414dca799868cfc0d402310098341ceaada54067be7d8a6c7d4ecd354e4c84b778cfdea4ab85a0d059df0a9922a2ced88b82c5933ed1a275f9c6ba830302047c435bb5006730650230155d2990c33496fc3d9441ec4aa9406f7804fcda951dd2a84d2c7de3b1f258a4c6f3013463b2647e91a6941106ab03cf0231008266de41dda5dded25761251fc44893faab4fb7af3409616d41b299823696528b8649d129a6752333ea937e882403a760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300fc0f8cacacedae85f7716114eede95edfc40ca047957ce66761a0263d38d54fee06018b987b118cb545c27842f9c26e02310085ae75761dc1d7adc60c308218fa34b8882b560c67f5d0e01c0703aed4b344689fa0e425b5eb7125c6e6eb8ed65da3020302047c435bb500683066023100c8b46a5cfd93de44355021a5c9e38e1a5d6d1b1b723c11f89e0561b8267dd95eb1088bf776b3fe757dfa01c587f1f0f6023100c74178bdaf7a1d942f3196bf587971ad61a1a5a3a62c6efdc3ecdc9fa043eccbc8eac7854f95f1a45a345c3c41fb1e710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303be797dc99e996e182887008fee545c8280ee9b6c50dd7d5bf05220141b08152284db2e3f643d100281937bc953781d5023100d523f0becc5ca27b875ff3b5071f0fb57d1bd86bb3052ff05d26505447d88555ddb89a049d6b7779bc49589d4543c3cb0302047c435bb500683066023100d7789fd36d60556cfd606626604ae7960cf4cd9944bc26d9bc552b09829ae6d90bcf3c2ff94b66812891a6682aedd6f4023100ac4b7e6126c6b62f1911cf20fe6a83e20761be536504f82c0794ae7e5248f02ed79dca934387feb927790a19624f60ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023027f1accbaf0faa035130ebbf94535235e3409c9da12dc43b3a3a12c0cf7bcd73f1fdd5e5fb045bf1faca6ce0566a416302303c379060cc71bdccf257da9e28647fceeb865a7b0df418a7a34820eeec17456f1a8e9fcd3c214a7b266c5504c3d2cd510302047c435bb500683066023100b0d00ac938acfb8fb6f216a95a1b4ac3981c32b7201d32f2a59990ee720d9a0ebe4f3bad155a5f2b97aea3be46c86f8802310091056098110cebefd906aad218723f40a705238293773e03f0848cc605bf2700afc6de8e0abca6758d95b1515b6b2a070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305d02907a46b9de6430490ce9c3a3085ae967ad43b8cddd69959924ca584e9c82ff4341e01c9ff4e5efbda7d41da430a5023100f7e22263e975d8d6dd8e0c7e1b67a73fa3188e8aad75c0a518b48b2b845dba2da212d08685bcc626f1a854ac799f6b220302047c435bb5006730650231009e23eaf38c94e0040a859fbd462f8bcfac38a0f31af7197eeac2d85bda231304aa92a082a18648f9c782ecb499e1665f023047542b7102383cdd0f4409131b4d0eb06bb295e56ccd85809dbcaf9564213c5e4aaf3a50c821069d38eae2b3d6fc1b6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b4d6299b52d30b21454503dbd9c933a80a78511835766feb179f59fa2adb5f1937e9d0244ca93e5a95c0b276838393d0231009f3bde22a9d3e8ca7dfb3cde6e05151dcaefa82af3a5befcd3c3e6f3c4c9a3f095ab5014d477984d0b468f66ed3d1a230302047c435bb50068306602310084ce58da0eb1d249a7b56ad8540c63ac6afa01693b045934c9118ee4b75197ded993f18e1cd398b2bce8d52d856e18a602310080cacad661eda6d2c5caef7187eed77c5dff8a4c83effc9f2453bb20e979c75353e3ade0f43e5ce39e660ad0c1fdf7a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7758e9065d1961ae989d5ed1c75bb33a4c881a9e6ad57350b21bc2baa6095bdbca05f926bb416853b5129b7a31acb1b0230767c542c9888075b979d7556bf55cfd0ae5c3e21699b886c75c7a8572fd4a4809165db1634a59ccc1b3e0311af91f5560302047c435bb5006830660231008cf0d436a86286c37f069ec9a64a1f433d7e481fcc964d469d47c60ca0b3754ba704f6c907290dc9a322bde5ff34a38e023100adbc849d7341c596ca74a4c487399d04a31d091bc3783cccd37c79325a13bfe268ac1932e0f85c20684de97d4a5ada5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097a565bd50a95d057c17f038938b91c742d4d6ca2300b4c819913e39b0ede25df16e6103d5e4780e5c65cdf7e15745cc023004fb06a88a532081ff2fe228e701a4e1fb69071b9b722ed91aaa949aba8222dcefc4cae4525aa1c3bea21feb77be21260302047c435bb500673065023100ae5dee9c919c6b640bdcace58a9138e66480822d14022bac5e85522d53213554be381ddaed6c2ce65d81f2a2c4a093a8023059ec1153cc4967ac23b2f10b9288e8e0bbe39dbf3118af4cef0ccebabdceafe52390ff5d40777f81a6d9d7dbda0c2a330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303e4dbfe3bfbc32aa39643bb8c383aac91924f852eab96c6da586bd6e108789d35432f0c87efcdce87554cb5b437f067802310089085d1a521c1f4cec3b0e79f45efac777181c7cef785a0c4974196adb297265ed88707ebb380edc3e11c3904a63cc8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d44e40a97b8eed3d80a9a5cf719ebc437d219c57d43553abd9a222f65aed90c89ccdf1618215dd5d05fa64e48257f0f102303a4915f1ad260663d962ce8430200ebefb21eb5d9717b069fb4874609acee0d66279c2ef1017e69c3e075a60d831fc980302047c435bb50066306402307fe3a7c6c86b644c33d12f4c96e2d54fcd4c5b56b0fc47c041b0b8a87c870383cd4fe6dbc8a8aae0cdf8ba6f2d740f6502302815c7fe387c658ae19962c916725dd9fceaa385f54aca188533dc1f2e170a3530455b54c14c7389a10cdcc576ceb7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023067f1d42a419d99ac9f817a6e52e20db189da8609c29a580cb3caab2ee5c28afd31e800e24f55d9dfc582c73331fa959c023100c40532d91c4a36c2b8cda3ee077c5478369704ce57ee13bb7ee2fd58251cddec137d15c7c86ffb8f103ee58cb2bea3ee0302047c435bb50066306402301f5285ae60e4329d66808e7b14f8fb800ddcf32ef9dae586e0390ecb2e85cba6f2414ce53a2b02eb5dbcaa2f30d0f80d02303bb2569a62b49b7f78bed83477363dc270b5f91449b994ab6540de917176c4bc95162de45ec3452f3a2e56eca3bc9ecd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305729e6d80e9ab5c6566e052000e24f023ae7ee3da1bff573c77bb21df6d0d667f4a656e711126471e7e909f17b2da8e8023020a56b004bb3ce2aaf175633054415e4f570409e34411b9374a678b965f94c075093acfa6fb0459251fef986bf4768070302047c435bb500673065023006bd82ad0502dd6171fa4cc6d0a17cfdc4060a3a6cc1097b51441f6ec030209620e7741cbe571aaebf1e1232b425aa3a023100deab78ff4ec8f5026c839a7a88121090187af023ccd44a22eb9d1e026137942f6c4a69b1ffaa2dfff2c52bb1300455d40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307552ef6b322ce1384d3798dd431bc69249055cfd1cffbbf3807ccebec26b0da6cb53183da5f49e8717bf4c7f48bb8ab7023100d5d78813e4f73154150b9a4e197b2fa8281272759c54c12f22349421d009b9b5c8e263318c982953449bd7b36b740a5d0302047c435bb500683066023100b004de0bc4875b55a748423b555e7001450d21c7613c8c2cb851ff3e29a1338a2da23c7242949413e7b4a8e08fee25dd02310088f37edebaf48da2b4d44a621fff46676d8f0da0e06dfa5ba1da58b99016755cfa9f0f44f9eafd21e84ea860619e59da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d10db8aea8e3c3e6fdb16fca4732fc4ec5859cdcd29c70541a85c6c44cb84363c4a24f1619c85108e8512cdb609f6455023100a9cefee076fe4fc071cfcb43b2371b69c35cceb9ef1030d144c86687e2a8fdcb209a792432ad55356582e17ea0aa06e00302047c435bb50067306502310091352d369a05f7f644de481248533cb1b9f060813dfca6615121773c74c52992d8bffb4615374a189eae54221aa3ede7023040f9fcda4d77a917a8525b9c68abcdb9cc8d1f6cbf0df1694aeed10d9b38a00e680bd80f5dbf5cd06e7718549e95bb0e0302047c435bb50067306502307b990aad969a631c907001f6089a18c53a1d66241e04e4ece34a35b0f755a425467f730320ca4efb0e2627501f7376d8023100d4e1e3d86730676056ec9503d16822a116bcb1bbea9e73a12dd8cb8de8bb0bc80f2a183ff7ad0f6f62f9fec8389075620302047c435bb500673065023100a07e9869a22878e84c52a4583ee7cd2c49fd5b51fd9b2e9affe35e55e35800bc437f15418fce7d72518d1e123fd7d4e4023036d053f1876f664a76abde53f35135eccaf4b820f9c215a3071f0b293cbb916dedf4c9716becaad4dcdab476ab1593c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230703debbc4195b63368329a53f8b2f3c738b6f0b996c5b5803c8e888edc4c99e42141a2630b6172283738070f103426de023019e2dea8a4e347e48fe39758101e6ac68ae39f22b12eae1ca408741f4c3857fdd4d0b8c5cad3a63c0f311f1ecf0ec9380302047c435bb50067306502304f07f3908c4506077a330081eb65f7ea555a33bff40d4f8938efe5beb47b9fb3cfd66cdb08f190837c9e376fb5e4c629023100ef26878064218841c738e90d8b22d0867007eca9d404180e1fe3dbedf9fb093520ae11a4b54cf0cefe70b3028f603c740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5f46e8930bdcd703b6263e9e4e648ac49b0a8d7e0a46fa7b001b7d69d16d6a4bb67716224ff38dc56c23f33a4ae0d540230640b7992fd1bc7c8d207c2e9a701b15eabf1fe89e6d0f2e386acf1796058f81f35dd96b4d53a49290b74243be59608540302047c435bb500673065023100a96975f66c6b69032432dd55212661b7444de29a9922247b7b403430d0ea7fbd30a02afe0046fde6292d91c3451b6335023033a740aa38771c0d1f475d97f65da5a572010d8c212631321a1bb2ab26a49bf906b98a7ac7fbeffdb2b4dd39d571110a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304112651ea5aec57608bacd5b4c47d38eb83206139f71c1e6fce0bab109abd6c5d8529c8d6671fdbfe666e31ab5e6313f023051b686bf8e46e71350e8a9c7807490e9b2cc82e2afa3977a1d8e20718cd3ac6c6abf92d01e42f6dbe4e1617f45be6b040302047c435bb5006630640230650448464ccb75fda28b8238c299a39082e12c8130061a2b77f8a99f78fd4d6a0a26fdee2b0ccd3e9f3facfae9cbd94f02304d61dcdf69b3385fa6949801bc4f2c2afbf4eb9448fb04df5516a9ea6cbb1cdc2703415382bb282049e686d38eaa58be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb4e738ed20a0ae456e4ff68e3cec96a7c951c53d27e9b7193bb245ffdddabbd4bcddd5974cd598711abbfbd288ea8db023100ef39df71b80524cced2ddd79486ccadbc6f169519778777de55287a4d24fb76bf709713a413f7c7be4260ba7dfd1a7440302047c435bb50066306402300887eb89e9b02b28d8a410667d8d2887c860dcc5d5d98edc5a8a2930f53fc668d8e8a8ea95c1cac93032cd6ed92b392702302a006db88b3be45083d6b08ec5d0b6c07897e7f55d1b64c5f7289c5ab738cb032c76e15826547fa00c23585aeddb1eb80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230632efb891136221c3a832b3e97d59048bb40fc5711a64a274578cda777500a8d77b346e41556c7d09c6e88f00233ef970230023e021d3725fa63cd867594ee7bb27ee593c9a100090cdf3889f786776a0748ff5d2142fe8f22c01cb97b4c71d40df60302047c435bb50067306502303116dc3f1e1b9ed6ffd9366730dd7b90dd5ee343151823d537da5be56868395ebe6bb26122ed805e5ba171c4026e45be023100bc86007472cf98d64b27266c7f89397956d9231d586cf41e269e114210293929296ce6ff6592593d29cfaa8ffcca1b2b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e792d7e0a35f5d2bfe91dae0e0112f49326ff40799fdb39d8d91f17edbe25b028aa621bfd3121c4faa3348cea75f651023031d64340a2648b8774bc7b94c7b5cb159b8b0486a45180e26d7d6210f92343a14adc1dc932bd276e7a025e0b1ad1ef340302047c435bb50067306502310089ab546d692b7068f590674b3a9870f05941f7fa98f76adb6f17d96895bdd12c6fd16c50120292b830f678a67cda699c023070713742e3ca93d7f9425521be565b4738a37bdc7c6a4fa3229f09041bf43f5990f587b733936aba2684a1b66908a5180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023060f4bc4c10e19d36ec9031cd2a3f777e82e6eb10db22f8f7272ef75f9e92b2e90b12cc97962d4a204359518b45b7371602302c0511739b5ecb4927739e8ec1b3be473d5b1b020e398b76690d231ef404ff7a8fd7dde96d6e8b156132e44abef352c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e58fd773c6988b551ee9e1adfe1374dc3ba866bab33dd190cf6c2e1f37b66bf88fa0bf8339f5fd70a8c2b2dcc41058a0230291e20206fdeba2252e725f5ef9d4bfbc8dd2bd7f5dec71c33d70af536da9548632ce903f001c172eaac7c601a4fb29b0302047c435bb500673065023100e5575f7857716cb95bc473fa5d57727ddd126169d12872b89beebd4530730d150be0d6f774f95959ca804b985bb6d77f023020e108e07afbf55900ee837341eeea2f441735b6eb14ca9a362c9e32aefdbf13a4c88c738bf7ab8c0a16807f8a88dd540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f78f3baeea65e59fe473852b761532a337341a12947bfbae3d2e175226182651347151018f7e0b4b3da05d8b07245c8b023100a01e6b38c1aa90bad97deae7092e29ded3447738ace3e605d04a9d8d9279a7ef403201b8841af8ad5d1a273cf91cf04f0302047c435bb50066306402307a9dfa76a6050f87c409bd04f52191e586feb3e9c7277014469a71a03285d0ae0617992379f119af50de47413efad5310230794fad5f4fa26c585971ca886b1b1f0c66396c532422e267833db233a495fad0eedf5f860cb99d0336eeefad8e7788400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d49f0b9cfdd32f585e24c522d2b8249e9ee58357f1d5ed983c47dfcd82d80c644e39f5b0f3c4914958488c7f740ef676023100ca41d2767c69c689248a329e6cbed26fc965bd11b7971ec3bb760d5f1a28f002c85b23e1d3eeea8ba1e65c4583aa74560302047c435bb500683066023100f82466e634b7b852fea428ad90c16668bed86b74c86481327ae24e5cd8aaa6e1f84a4171e891a1a26aa8b4ab77c36e09023100c3d8d512e817d990caa57e4b09b524310db97d21701c91a33d94f8d9668583aa781f4644fc134689bd36dda529b2ac650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e8acf3aa1a892d7198a576f5c96547301b2cefd26a55f2e1750358fad95e10f707c973044a0345a4046e596836a9fbb02310097c5dc53561cdc1eb2001c75d230dc0fe7e08b2026bc4a8681d888e6dc8436bdfe8a520a0d469db4bc4e9ef29f72bdaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304f5f68d03087127399428c5b1c8ed16f02829b57d5b98e2ee34cbd238e44e551999769e86bf9044b53df7f1a77d1adb602302646f35429b6250cf6bbc2bc1097c81bbc4e4bad3533b2cc06d0c257ef23769153cccbc038ed7a86b23db769c533e36b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ccbe119a733cfef7696b524fcade0e48cdb15efd7496042d55622ac5ac7bd122ed27317a7d345511ade9e494660e2ce02304dc95aa42b6c2d8affee432756191207c09e7e872ee3eec5dcc0970b09dfe1f64bff781c76397eccd15d44517ec37f5f0302047c435bb50067306502300ce8f7e0cd2c977dd92aa76e85d7302460d243f50910d019166723d764db03faab9ec0a96a15b5fb0dcc39e49f073ad80231009e1832a4951daf66b265a643039367f2e4f4031e23b62fe250760af63119b191d5f85291c13e955f1f919220e35b7a0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023033e6476c39f4ebe27f35c35ec631d6115cc72d734a727e321b18e55c5d1a532c23bc273db514f085b353db8f479ececd023006923ce5e73136fd0f9269ce887d7f1a4a7adf859e2d1bab02737504eb6632939383ecbd316a69cfc891fe72deb9d0fc0302047c435bb5006730650231008df34334ef570ac96c6d5182da9a2b9f2d318b5f58ba299cb811e61b250428dd268c6016344529d950014a56057928110230455ee54f1820f1b9ddcfd22492389da3ea0f7ea7b1cc1fe46151b2e7b27e5dfb228d90016178a0104be7cd9c0ceac4510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b4d14e5bd25cdecb30747c0838bae3cddc69fbfee94b075a68cb811213e34a6fa870be32678fc6e78ea1a38b85bfef4023074cba6fc889536fe17e2f650c9d77a5e6cc046438f4bb4d0dff8d03b714338087aa1f592a1f99c03fc2bf6f35b68d31b0302047c435bb500673065023100fb9ef441d3be776a6ea29372bd62a13235323b908dac33f165a0e1dc7e72472515fbe75ae1586f03a4ab8f9492b7fbd5023060c1467d3c93b676774c637dac32e2abbd156068617364118ef2054ed1edc7599fb63876deedbb48fccfad4b6c2ab3030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100840778f9409f28a25bfbdf45f37d25367aa433a104ff5bb93ec69c234267bec9b54e5fd1e8b2d7126ccafb24f5c380c602310092abe8b2d966b0d4a91bd1bb06b0b31247c998de723469fe02e6ad34491bf2a2707b44ec5f095bf2cafbcc1c35790fb80302047c435bb50066306402300432c2845bb0272e0f1abf80f0cd98d0b9704214c7427506e3112e41ed4e0faf4fe1473a313a288feb9279ea758fa107023062cf9a3fd2d03f912bad214a767f368b75bacf5f63127d10ab446230e7d1c2b5aac98631bc4b77a5b18c8a08a1765fb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302bfb275c7cb5737912e4a10ed78829299070719b8e4af6fb24059f42ed3805cb975afb2085b72bdd8d9eac4051ebd972023037161b50364691ba6830441fa847f57b076646362cca25ac0e81eda58b891c706a682bde785070cbbbd6c59f004cfde70302047c435bb50066306402303b1f0d58090c5f4fc656b519e9fd93e6b138d8f4bf40f262750b7a05070a75a72f0474014559b525928b1f0240bd590f023031e507eb7eb74669626354894609eb4bb1cc3252f55c606278f848198eb0798cb5e24d5bd6f32a2d010e9471f4fd8b180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f17e61aa11e21c800da7c4fcc5b976e28bf70b2e77ded2076f72fbceb1fb537eb6d623a7078e97f4d127d59f2743b9f02310089f137760e33ae8f07e7e61c4de44518f4c325da2e9bac5335a578ceaa3cca2519e895c052085659084c0c78ee9bd5460302047c435bb500683066023100aecf706dfb6909a4fd253ab4ff4c93a30424a44fc277fb9f91046b67b8f3f32a6f3af7a6f6ae2cd0f3a38b93ae306abc023100e901c209da780e45a6073cd21c3328b97f25339722824a2d7531dec2a67e9c043ffd0dd0e5ebb55c894cf5db63f6bbe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bfeb295a5387fe94e19f238b5021da8b9a0033ffd5ad068e2c7410b47b30b94397d3375eca5f2de9e96347cd9bc61fba02301f23444878d92e7a391fc66a588aedbfc59d9486c2ef57b1fe9ad11a125cae2da374677a26fcce5b90327d819f2305550302047c435bb5006730650230309b9843cedc68cf7d23e67fa086462243d60019b59a0cf1a1fb072c971de063f43408bd79176aeeba850de7812725b7023100831916e167207d151e308a0732cdc4200402d54c072c4377703b3157e7488e43f7dd87b3c6684f6815d2388a6dcf14850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230217e049259dd24ad4fb60aa0b4e2e93cd205e4f66dac020b62a5a1fdea582cad853f0c25b80e636e360e8e115b04d5dd0231009df8418d533af8d84926224a6c5ae214a406fda5c5d5edb77b7f8cddf988ae192cf571996ca339813ec182dade3201da0302047c435bb500683066023100d157f44aed8dcf2d326302866eaf02128be08cfb0b426e4c370c03a0eaa2c8e2e7e5eafe9119c6caddeb57dbc735cc27023100a8b3013b392767f971cff90cbef0420ce4b6a8286572e7746162043f6f54affa07e76da36a98779476a0523bf7ced4cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a87f30dd742c41f4494a8af3e8c6b7b70b51c2322a509e48e656ae076a13c4e6b0ac3d46557caea04dc9c84bdfd9db1802303fd5ba96ec6db98891bca0a7590b27c566fe62680bb512109edfa0f6b0e0c638cc12ccfe53b5fcecb160bed87d9b3e4c0302047c435bb500673065023014900d5f210a341a406bb11f7edbf200d56b7c942640f7dbd54f004f3e4ee81574694ca72a1513bac44555e51c1493d50231009de10f17d7828381de141b2255c8ff12c9bb1355cf3fc735e0b826836b55b31bf023223abed9a01fba79ae51fcff93320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088e4d0ed7531243ef3837b5efe4a17d176e14aafa5de199c76e7ee91319f8115c43c4982f8affc60d93d35d38054ad830231008f9c154a580d5d5030dd4aff14edbc027631fac31569ce9a8f1f62ec5e4ae522f2ecab308df382075c841d2e90ce40cd0302047c435bb5006730650231008a7699a80b58a3edde27e8998d85367927e978304e2688e22fbb7728cfa1c6466f5c010f032713046d66c31b24de82a302306a2872aa0197bdd13b62c4b161deaad94ecae356be289d95ce16e7ebed704514ba9607a08839081e642302a95fad60e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e96f9b373f8a3087cb7def5954bdf3fe2b486a36ac5ae018ede5e8a4fc055ed62b6abcee32e2908e8fb2aaa22a3387bc02300d55cb51f9ceaf458548365dd8c55823a99991b9cd8577aaac70b46fb92f8740c712b4787ff20664bd39cacd74d08ba10302047c435bb500663064023077f2fe2bd544b30fe5f1b925d811aeac602670fc64689b17e698fdec751a23876da29a2dc116dd6c0fe52ed77cf88ef8023024989b0d8b12df48950d54acb70f040c223a55d2028ce57da03a2cf49011ece8d43b26fbc23586ba0b0cc9d778e5776b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306e8eed857e94bb7c3e48eff095750ee2539bbd6697c9c887d7fa222a32f493e0edb7951e31bd70c8875362269a0b92ab023100e506eca9b58b1b609f26d9f89ae692e2f9f94d33394bd54fc6cdd8698db89cbb6284695386089b9c192e8b9ff266611e0302047c435bb500673065023100cf4b80ad5046e5f0a7db142306922009754be345467f0091ecd8bd5d813ad15ce49a31dbcc565002ed296963ccc0b64f02306db9a7a2432b17c5fa33b91fbceca6c784f1fe2dddde536a6b3eb851478ed6793bfa4739103f673f32b80400b2c4a0340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056e070a39e2dfbc10f481d0146f908954800fd64f1ea1b240e83b8aa4e08a520b1a48fbfdf713ffa5f66ed102156168c023100f5b4fd543b46a4ba04556f3e6652eaf1e8123d040b34f5955593bc9f5fd1b90e6c90b2735dd92055de368285ac35a47b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fdb4bfdb0da3d7afdaadf239d9348d52a27cc4ded45bc58c1ff5ab10439b50e84064c68ccca17400226f5eb024f5c8d602305dbcca3d4d79fa7bf342a2012fa1e2584b9ef50bbe340f7d14d94808b4265621d2c3f5b186cc69a483edd0f34e870d950302047c435bb50066306402303b47fb3323390dff5a47ef783ed3aa4fb5fb87ac76c6aac8fd14df49f572f921cfa20abf5bf7ddbe6870e463e463fa5102303161ba6d6cda8a55f04fb56604ff71994083042e9a23ae3334b37665fce778470d5ae2d16fb8cb8d486c6010defa34740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306935c9c9399cf3c90a9f2538c020a554974a6591f14df09e773fd1d1c65fe77862f059ac1fed885c376953173c4a8ba40230450aaa7a791aeb14dff782d7b5da74d80010bbf3bdc865719b6fc807a361d4bb823d0dedf527e7e71fff5b41265ed6b70302047c435bb500683066023100f9c9fe0e55a8fdc034d0a34e136d35f64841b86664663200634a75356a41369d8361f97aedecc6429488414dedecf98702310099cef4cbe520e7bd20dfeaad098c6a52fb96ebf4bdac4d64d4f8d507c760c4cda29fddeee640ab7d26e76b8a1ba73d930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230431908ea91cfce4a1cb46447aaf887f5ceba0a6fd4296e16465fc1bc6a8c46171c7a56593c3dcef5dfaedce6139b789b02310089b7f9bb86c3b1ac3ba405848429d18ff836a51261c9ec51dda87e1b50b64323039ae289f570bdcd895d7f59848b43750302047c435bb500683066023100f13f5fb3dc9c9636c07be5b20876d6f8c73fa9d5cfe1aec82ce2a686f3d002a14fd8c661753e1fa6fb08df246e76e009023100efbae124c5c1db01d0e40558d549822a5baf2379867f6bb59fa3970a2ec2789d28e3973436fe0562998b5dfed8493cd70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec647eb4c3adb814b9ac369f4c36ef10b214cb686b6b110efdb862593d267eeb858387c43b4479e66eacad0ecb3d1d4c023100e67391c3c1485a6a4f64f38883215627ce29eece67226c859b93598065dfbcdf3b5feb5e14a3b8c71752a0bf9ebdb1510302047c435bb5006730650230785337147b71d67f92d69fcb4eda996cb5d93ac1348879228bce7ba4e3b6bc97a81ccf6096ae84b2f7cd7a2da3631464023100b03c48e429e9f7fd00720696f26c1b1f11a7ee21ee84557de8846b686976731d77d41aea63700dbbcd7b290b584495410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004ccffaf601d02f90463c8463f1780462ce875b6e42ee856743c24148b83c4b4205c1d2e60faef594d2b2ec161e8c2df02302a8cb6f3f1825c863914df2e5fe738ffa795dcf55bab3f9cccd63a3315efca5bb512b523b285d19406136132881a086e0302047c435bb500673065023100f53dc46f2517b7cd6853c6866b090ef651c332cd167a14c4e9f39b37b09433890a61b6fa4d0bf2dfffb7a1a25d0b7213023039225380a7e147a038f2ee8276ea22b9d1a0f83c2e2f8322069dacd6ca5f9ffe1edce640934cc4cb679f936538a95a7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305755e2920f7bf97d7da38b4a9ecc217ba74554b4e8547d17f3bb684ed16a9ff420da813b1dd1d03829c96bc092834785023100a883d91d506817c53aefdb959b35d2848b473b83999a6ed6499dab18fd5ee4718e52f8f1e4cf9c84e9ec84c30f23ae1f0302047c435bb50067306502302107d21225b86c44d9534bfdfb3d2cabd464f17041ac502f090bc9093828d619f9121f7f92defa79d8e57b7c680cf78a023100e22ff6d8da15124cc43692d15775a8b516f784f9781a1ec132460c3290c959a0020b5c9210dab3557aee446443a1aada0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aade04c9897dd587d85b4af8ba9f39934574a330248e483a73d6e3e3d14cbd84f3a8cec53cbca8e97d01a2ed3bc7604202310085bd839c66f34843c1bb75a0ad33dc88a0ec99b4e499beee27fc34f0ba169b722179e1ba14bc3a4c6672f1e0c247e8460302047c435bb500673065023043faacc48c175e2e91cf0aa52447b687a8315d01a5f7e75a8cde6c1a4998ff6b377139fb81e9d2218f047931dc5e7b42023100944abc5338e3121cf72a47d0cefe96b782b60fd8951a3c335df19e1b99807a0cf4ffde4a24e28bc59091b028d6fcd8fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d77d88588b1efa5a3886da5de4d5ce17ba5f697c71f490e754483b0000371ebf99a3f7c92126c1daec4b899f65c6111d02306b0dae70c427e47c08630e10cbd6d29a5814dabbc6223ceaedc78307db1d9f9dec8cc4b1de5922c5614c4381824c3fa40302047c435bb500683066023100bed7b1f3d5a27f3ad501626ced9e49d1cb4fe64241a0468539cb1e5088b705125739133e413e0909fea0aa1c50826757023100d6e2a5fb9b1b137630153b59761bb42dd26ab032cfecc3abc3c196eabce50f80158e989de531f88d487d2f14ff3157bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e096ad19f7bdbb9bc30eaa47b4183dccb90f093b2a99b484d0f26128e0e3f0dea55cebd32743fad3044fbedca6c1b36023100a5857e053f2eb9263e6f60775c40f72ca71e99687539c0a3c7c35c39f20f9fe2a33b84af3c7b17088a12b2bdab1a0d570302047c435bb50066306402304a562b154ab54d064731a9dffdb7a74e9fa01214dc4a3594775a69693c33e75dd02eed9d1eea9784838dfc947f0a654c02300d3f155a92b33b8b09b0862e45e45500fa001c459fbf5f6e403e217fe9bb5eed4bfb107459994f63c7720e3fbc2815df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c85a8563385389f047a1549606e1aa06ff2e648e612579e9de0682740e5155d33d0c94aaaf5acda8b34606cb9c1d767c023100fe5e015c1443d581833b6faf2328f3d02e4c0677ccd05da8a8241623c68fdf0b318f7a28e3e991f6b88c01d6551c1af40302047c435bb500673065023100943cacf72e06ce1b662488226437ddbd4596831e5c777f3904bf244f539136d02b9323e5560313772eb0f5fb9289961202302cf2c51e1a71b9b11c89071f51697a964c1dfd0964f2978b1543bb318f871b3e76d6ff2ff9570263cc08dc7cea4866730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f8a46a97d0d09eca8c8b853cc7410f5f0939fe0bcc867258e68ecc8b3023cb38e478eaf789d9b0d350d6cdfda08a7c4023100e06aa494c1f295d61401177b2bd5e00e83434786c7e9cb933df475304bb664f5334f09ee6a29b3b7fc2ae6decb27dd740302047c435bb50067306502301d23421c82a3f3bd0068c5f4e154b29c0bf75f9cfd763afc7d6ce6e1af20adca46589af317d4e28e13cf052bec34174a023100a707c6f7da690fa3e89c6ad64bfc725a00d15b071a8136b63f2e5081cac2573ac1e8795f00e3da1cecc4de9d62e107cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb140da27e626014bfb40603191a36197c90895e7d3571909e690df05f31934f9aed9e2b97c311e51b599e819ddf46fe023008ad4fdfb6a09d317256ec0f2bd6f22b8112a66aa63f67a53e468e97ffae979ee5f51166c262e4fbc105b9d44e18fdbc0302047c435bb50066306402302a7d7738a21d36cf01423e2c18596fc5462f2d93886c8b29c0591857612f4b9fe25f6f2e6d5e6bb0fcaa3615182e099c02306cec43c9111f0d82169b5ce3e1f0607fa1911fab2f496fe249656fe0759e67a287ab44436dbf92181043b9cb16638c560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023027a6832ff951619ec6edcfd16d0b5ac86c581d5817007a3a17aae3908b4dbb7896d82931ccc406ed8b4d3a530fda119d023100fba1b8b93bfdee0fd7db2b876975fa9610c69d0813501b7a1ef1d65361831a6a993ba6f890bd3091bb18b758501fccd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d15b1635563aa2ef3eeac46d67e6946a1214117c0f59af0ff85c125cb85c44c45e9c142893d99ec7f78c085a5f9c21d3023100a3bd821f33ea4673fae6a4c3bbaeb1e53adcf9c84c3659a5810491c01fbe4055389628b985fbeb216c91f31d4381c4ae0302047c435bb500673065023100e01b86a83a504e2359a1a961dab55bd47a522a5ea953c23bcdf6479bfcf82dff67d97963d46e187a81189e9bfd006bff02305a8a947fc128515173df1e94647a1972fe8e1154f6f22d879d0a87c0eb0c190b9aaa70d4e9f2fd3f0188b0fef3817e780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023009b921f70451084df3c8e79491f3f6c9dd794bc50e99c3b4eb891101d2c59484c9d38535996b28ccef43ff8d8cdaa79f02310096290e08af7e4979ee997298edf7527eab753e1ecad52a36954f7b2c78bd206aa25135c88c66fd54a24250b0496543500302047c435bb500683066023100c4b0d0d440b0ff50031bd2f19ce97d59d5d99422f70d25d332ead5b64a661740231fcdca6613b3ecda97368b18ae0105023100a97afb36c3d464902cd5c1c2718e33757ff7ee1ae9661c8b51b2530aedc49a516facb9ad375a5e56262ea69a8d9559d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100beaa564c3d47fc5b89526bdf91ae3bb8c7e931b29157e6a456304bbcadd1dd5e07aed67ebda052a54eef88a11a47a754023100ca25281f063e3d4953cbc94d7585cb7b965354e1a609b7b5cd4d02cb9c116f27fcd5317d6bc0b1e5d1ff9aeb1e1bf78f0302047c435bb5006830660231009209ec26ac7e037c58174f90f30a21a99a62baf382d865a64c09e73a61d283c5493aa95c21e75ecad61edae97bde3d09023100947d26ba207af0bc9309541fb4a1c8aafa00bccb0a84134147d49b6ce7025c9132adcebdae75eaf180cd61c87c21846c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b21588c51c6ed7ebdd8e26abc6c36362f8287c7c4e79dce4d44c3d022c8bd9a861f4f2fbced77fbff88497e520975109023100d4fe3a0696f8f2b8868bbac0d9003ad3ae4a468c076390d77c7f8a5cc1de0ae211b7c3734172c7d53a22f72bee241d360302047c435bb5006630640230728e87871ed1e348ac30729e0a0adfd77e7453cd6a526b5a4248498a13b706b6f0f4c874b5125fe5574084ddf0d710df023023150c683be1773f31b040a583646e58753d6c3d3801b8ad48f6c9ee57484c3d43d43234f0f0e3887a8c89f204d0eead0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303684d1717d1a15cc9d886d78e17f20c6143135dc1bb7f4bc10a0bfb9e62343b936688b9ff60e7d2725f90e3fb9923f9f02306233582326f8f64b34bfe3ba0cf95bd770e9051b2f9eefb6f4ae796a8b9708120c93bcc33c54ee654eb68f7b0f4add800302047c435bb500673065023100e21051c0606d968d74ed4352d0bf77ece614a8d5785b1a032fab507c1799c52df8365bc2e3e808fa47e54ecb1790262a023079bd5e2710d8ef3bd81582c923217d2e31a57a3b10adff568f3a8a52806592965cecbfad71938977053a0ef08c37ccce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fee7ffa542b1e3cd2737c87d74800f95c5dc44eec467007f6235b9ecb5d0c3a9113920d591e531a43dd62d7924715dac0231009a98d67b30bfadba5ca69603d7d301baa231c36bc3a619d1848554ec5f75c92b4b1861f7acc4319c522fa12dff04d22b0302047c435bb500673065023020a2928a133f864ffa69debcdd9c204f2b18101c133a717865551fd0ae23a7d0782454fd49fc0892b706f63733e54c32023100878607d32f415141a6c93e6967f5cd5bf6bb9c39f61aaa916bdd9d64f3f7574af5c233fab5fe316dff076266d2a0e5820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c93b0506ac1ffadb6db05f5d2f6860aaa5ddb3470c0204d78c31c6ddc10dcd60476a88b2b9121d921ac42490faab221602302e588f58ef5315ab2df76b33d86dc17f223d857bb4973684cee67e73a0bdc3d085c5ee56c57d2391a5aaeacb7470d8280302047c435bb500673065023100d684210e0a330c0df12d5c05999e06f4bab3328936dbec8899e574c83b8a21cf4d353f0c7cf866bbdb8dfa338420f610023074cfbeb57a3d5bbf748ccefb1c2f1ffdff02cb1375f75e9ad5d564e7096b887e11fcf8fa9d08f44af45b4815ebc794750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fd5dbdc033ec0ca3d62feaaa785a977c2aa23e27f335d0d1ba137ada439d3955a4cd3e5cc72d1db82802481e94aed6960230262c67a7a1fa632ecb72b8dbcfef7df95c3c3200451436df28dc9ab1cc4467c62556834eec51d5e9629655a6f0eb15780302047c435bb5006830660231009c3b551662e9e22e13e8b87f79e8b793a5bc0750d0f4d16e1b2e6a97b69fddbb30a015ddefa66e6dc94e284cf472a4950231008044f192febb40c512cc7f09a472a550cc2e0e464d2b4ac79560579c1533929d1f53548eeb10d4fc966de15a9243507b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099d57a1c4aef74ddd1fa69c1447798e4d57b9b28124bcd6255c3d77b13f88841ebc9cf06bd881c22109fafcbd254a39f02300feced38d0ea033ec6628dd31c70bea18aa9bb237fb43288f5ed10831239133c33436e4a97f6893c02c94c61a1e7872c0302047c435bb500673065023100c9c0a92d1409f094071a249901533ab82f78a5b8f482be2fbc1e4f961c3125d4e7cb7da94e9420e29beeb0ba9f3a446502301127a375d161f847207697936b5f34733935e8f6bea31e2153869bc1190294acc3733f49c2d544d17d8e9f249b818df90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100df718a343cbc8966591910e6098a6eccc9d4e911389f800f966c94947f32e9be59b10d8ea70101fe08a0ad8e3f4cc818023049a6127381e76a3c86347596d2b2eae0237ded77cd67e6f1012b7d7cbc830e5e10a837bd16169177769e80776db0a7620302047c435bb500673065023100e5a1b29b19187794adadf8de5a906edaa7bb7b0424ac2c234238be416ebb2218972c145ec57b39c9ccecd05743c5b81f023035cf4cc88166d816f1e84df92220e2e3a13b066f857f22e213db452ff0975e6cd7194f05c602eb4dfe59bc7ebfdd1ee40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304141ec5c34ba5a18382310a225ed9495303c884591fdc170c8293bc8be40196cfb20a449935c9e15d8405907749a3e6f02306a37d34dd51237f26b6e7b09aa72ff49b1a3a41d7371d6b71b9c911b825967ee54d1a24ded37c0862dda0b8cd4fccebc0302047c435bb50067306502305ae55779509a7c38736ba57dd305d8623ea57c65227b83aece3a23a5ed7aba4b1443d85bdd68059813da79314f683c5d02310096e9efa8eda320cf4db45bfa2d15d662a8b62f0d4a49072e632e2f768d45fd07827b37481e1500bbda5390117902ca510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047ad120099217488699691f099ffd37538628ba86ec18daffe9dcdcf835c6b0e93479a29291adb712a675ba0ae49c4b902300466ce95e65d19729b7b4208abc619db0badc25e8139bfe99006b1a2f12ac27538bf4ae9ae8fcdcd8511cc6d6d77931f0302047c435bb500663064023024495c07a930d5356b2d7d15287ca7f8c88d04f2871e8cd260820101d70d0a5f6037372fff85fc237f4618d5b8e4b628023008bf0068d50b5a22e692c74ccfa34620b7f1b695ab1eb0fc4c9be1dd0bd6e3fc9def2faada470341154b11d54c82dbd40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f3635bbb51453a98396ac22833405ce2cad83975de838ee6cc1015604b9f81c5b45e65847a22d4cbcb93d8f18c522d002301cc7ecafb9d2566612aa6dcbd3d4f6ec8003e6f2c0afbd2c94be9ba75c837128bc8e40a06b1d38a68ae793e9f9a092260302047c435bb5006630640230509ff48976755bdaaac86bc91fd6c59b48c7aae930c51dd15963ba7d63e75d13ca64cc2604735884be9e37e37cc56abf02302ae0e23bc92455a046aafd1f362d0ad2c90390c4336945fd0c58f794ff5f1cc63c8e20c80c86fff880d4c8d6d3439e890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b81f78d3b830587f0686f301148de8ef7ad1df6aed7eb440dcaec842c5a0c523efabeea8134694c4b206603eca8e1a2023004a37cb18f2eb79c88cf8f6fc957f42375e6ea42db1748e4a9f5f622f7f97710bb45175307ad7d3406c36b17536bad9a0302047c435bb5006730650230467c3eadabd7d89cedc9b44b55cec8c6c651c53b773553f4fd8662ee9aefcf00c404d00d644c296e0f2bd11e95c6d324023100d8217a48595bbcf18c236b20397ba33702aa1d51218f06308831531b2aed5c6b29830c15556fae5cd661dc868d3bfcce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023053b0ff5f195229bead938c587244c479c86a71760744654d1a6c862eab49e71ec323d41e04f54ab2f802582b78831eba02301cf9f493c37d3b629310e8cf51c58f14ecd22c55d3b2342711abd7b763a74eaf0f397a93c38fb9a16ee77b0ab6aaa3700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090013ff92230055fd1f6f456324ad508e6ca64465b9ef77eb5fba3c0547c1ed5b975e29a1554c04923003b114a78111e023100c33d0bd663d625a8fe7fe5ff883b7a0a7fca0645c241b7c5a3559c54ceb23d8fbc5722d9c9b08f17609cc40090f215de0302047c435bb5006630640230088c0cb8b10dab6b979e4291372d7f777e6b3e4d8b259f1212e31fa1c72ee73002f1f390f904ed6d39d11235194147c602306e2783446a012e51909a43148a34e808d9ff2ba3c2b68e73c3350233b6e62d51891487608b67f9ed6edf9fc6c383b49a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020480b987be51b064e88534084a4d36cc0553e8eedef37919c8a552259e020e314fe842308927ae312f963d5fec27806023100b07777f2801e8a3332e7f9ed590e830cac56ceb34f34f3040a00aa8f4080554cb2a62957fccd6af3fd12afc2f2ff31c30302047c435bb500673065023100c632b812c8f6d81fe539a80ac2f4d9a6f1e20363421904ae72e410a2a4b99ac1f7fcfc6c98f4cb0132feab6743f87133023036d8ae4ad9f9eaf77fb5b243c45f53ba668d9acbbd2a2eb984da340bfd3b354902efe4a2949a5910cfcac4b3490ae6850302047c435bb50066306402300f9b72c4842329a56462bce90da7c25d13140734b153fa440b65040dc3d0a4323fe9bd443ee4c956c67076cdeb508d6a02305db37d89d856e8b9df35bd3db125d8a7cc3717943234127380eecf697a637fc2cc79d8af0737d3e0e29985ebbf423f180302047c435bb5006730650230451253c7d70b3a952fa538822f3ab584f4533770d5131b6b2e0d29e67a704ccff3dbd4bdf87e0587727f278524dd53a4023100d4cbd1341d45130b35583a5c0f3a3db17ea621cb19e4954b2825b99de48422c6faab80db8ab8406bd6106a4a9db1fc650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f6c1777878a353d637580a558ea99f04d8916ece433983997016a7f06d9cf663b11dea969f86af29d7e471e51d0f647d023100d0712e7b30226ed8afa694997e029c40cae41d22d3126132832420a06f15a5e6640e6de203bcb8802b65a6614504d6310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae84f625bb82a4ca2d16106bb0a091dfb3f6a98071500c91b1cddfc97e52d33ca6645ec0a5565c745787cf045375f7b2023100b1c04c6599eee137e932d87fdd7738c64052c00b005f1096cc8bbecf47d8cba0f444229a807d57a7c17351d8344004070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023022e60bb47bc260e22a658f4f41b8730be5f8617c9a93813d24ba76d54f0f4b6b5912403a06ac5bc16b8c344b35b9eac602307f8b2f1b211074332cc048f96f388bb0d3501f42eae5f0f336f6be4dc5139d7c503c4f84042ba8425eeed81596b73cde0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230227e4dafc828d4248372881d284922c36e94b47183a741ccfe325d2a811ea8adca771d0d864ed0a610d98fa4ac296ed60230329f0eb4b4db4cfa62bbdc35d0b7f01483aa60394f2ba5c2157dff71b6a9ac5702712054adcc8d9db94cfa98f3d80aa30302047c435bb500673065023100d570d0b6dfe647e82d4d1bf4cd3f838573cbc5d2d1ffc6bec71c712ddb8f26ae9d302b7e2324e54a2e15ca52d05f518002303c970743eae99465960c08af76cd657026b133c70c3c206d285198c5c0eae13e3eb65b96f21410de524c819f0bf872ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b6887ca69fe30fa502d79c0438ca2e5cc82e89487c7ee4a46793e1c598e87964288af4701f5f4cbeb06e857e906e5c9c02307c06556c3955e65a5776b2e428899281cdfe983adc2750e0c6cc001cb1786758c38792689df6281dbdebe9d4596ea41b0302047c435bb5006630640230398f2bb8e388a1386b8afa0e5e975336faf14779912e34ab0d52929a5adb83fe8a3d07a13ad334ed50220aae377cc9e102301a9714da22148e9e6ba118e8e6486f86dd8b5d7e44f3c7a74b805eeb5a891bfe37a051e203a08df97fa4599da8febb400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c03e48c2fdf2c61315b3d19352fcc026c41be01755342cbf68d5bdb623f873fd835637055b6eac01d3864084f927c3e023100b1451778ac4c01896ca7d8a99b6aae80db49a58153071a36eb41e122d4dfce47adf56296084f77190b045f731d194d520302047c435bb50067306502303459b4889f99160db142d0bacce65f67d17827b40eb6bbe3f74676883e828261a68939b596b05742ffe732bc74bb921e023100fce6efc9071b76802e560845e40202801dfcd3e50a774e804ee4acd5485d57eeceb3112fe790189f398e9369035cf5df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f7250930ec1d7e2ddc6923a293e52959b363ec103d99ff7f9ad03f4765bee18f7b974918028c7b7005ea2f321b2c985023100995c662e2119a7baf049a036354840c6e1fb372ce86a4ac266e52f00c3084384d35288f2c44eca4ea9322d128f39a0350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2280745fc05337e5f298ba53b5aca9e4bd5588df72c0b8074576d57fb6172b871568bbffe775ddb9b404aef8dc7ff3b023100a0a5e3dda0411ac820aecad858c4e1c7671b2b0efc8007118eff0eb9c1ce9ca3cd5a611d1762a39ff02339d2e7d1a5ae0302047c435bb5006730650230080750ea7ad2b087d87681c578c2d9ef60292573d019ae1591b49afcc24502b674001acdacb840a63bb93279400890e1023100a616692c08e096caf4eb6b851d53d8369dbd1e7f9296fd7f033e930616779eb50257e176cf9acf9bde4a989909d58db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c245fa3422b9b3a8721853a0e938581298731417f6a1d638bf2a88817e56352dfbedd126d396a8809d4222a519c922c8023019941cac61535700b8c103e9aca668de46b0809b8d60b5181334ac7470c04521798425b43e5f04970bf9f63092da47750302047c435bb500683066023100f7d053aaf3640a43d3c41e3bf885c297792a7ef539c38f52f1d4f74881dd4f6eb29ba3295b4e95f8c19fcebd9e7f1c2f023100ba3735a3d55e3c78f5a5803defe27cc9a629ec5e588f9aa9183dc1515a79adecfa6b89727919adc07949dff28c82d5760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230586da51a82fd5853bc29ef9f65594b00ba30b081b231a6e718cffe6c00c2a0ad4455e5b3a942aa3d4241f45f47fe1e66023100fc9138b7ac1008d3b021bb6ebcf5952da65e1f17a47dc385422a93598fe1a9cd9d30e3d3cc4583ef925701209fa1e7360302047c435bb500683066023100ee78fa7a60af39dd571ef8739b9731e2b698b48ab0b7fa54d52d482dd05c4c3cea9d14aba2ed287df410cef4273f424802310096a7ec9ff61d2876f38c19a68a207e14ff3e2f28efd47d4d0009d5f65f61a24fb82b0bc4dd983d59343debae808be80c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301b88a294cc848a4a531b958a4d96cc4aedc98b48faa021541b15a06abe10240908904e29f8dc2f2ae3e42392b5c95136023100ef59d72385fbef5cbc8205390b3110207f9b70f80a930fd4916366b04b24f2bd194425cad29eaeeb7451fcd393a373e50302047c435bb500673065023009b00ff85221d4f3ae1241389b43077ca34a97a468672c7773e30f7713639dde481e2df83a885d4ac280fa3df45033f3023100982934466e44f9eea4dbe51a92db9e970348fbce16ccaafeb36149dcd45a1c28492ef5a49b9074f3f6b80f612330723a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f891fb9a1229e636bcc9f257b2955a9be8f30271b9f02b88c34e2a19fc41fb176dbe60b0f1da8ff60533c1e1521e488023100a30a50f25a5b648daf2b7998e70489a9218ccbf8b3356109bb82aca8cbaa81565b3c89c2accd9b8e788961650bb230b60302047c435bb500683066023100aa6d26536e40b2dec0dbc609a6d90b61680067a22269d6a5df73d4d30f419764bbfac59fad3b805f200c5ca86f1ef67e023100d00f972f2ac7a30273aebc5fe8040f0d6e2755c2799db39d8c01b8b5f82ca642c6bf06a42531f3952fc2d4af88cad60a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c32d3df457738c1c91f6c410f64302cdf61cdcd55b4dd7668e2dd423e2c98a794c2f8c03c03887b41ce7dbd208add9d70231009263c8d6456a67a76d73ac581ee6ff53fbaf4f0ec3cf6357fc387b4ffa0750660a30a7e6ed2809f5d9f11ae49c3f45e40302047c435bb500683066023100faf876d3f85f4cd9ec6b20ac185423709aeaa7c1e9a5dc461efdff160ba99b837df083123e049f154b80e3f720e3018e023100e674e97daac9eb95061310e9ff9d2a36d2b4883772ad177226d37e51450b5fc959ee960cdc38c747c9b4f753ba8db2ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301b349122ab7473e3b5e673dc14f0e47af95814d0bd72b6a91ced2b4ca5cf253e61220936234b317535d43deca6986188023100e4e56e8653972a89fcf0382f87185122a030784ced6e3cbd7b750448d59713f5ec7b920f0ced9150ec865e18ca5ba1370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010b36ed7fc3660b96df50ce7e82887643f4a7788c5d5c516198d9aa7b8d12ea024ba0944f0fac4fcb3e0b6d02f49d9c60230761bd4147c22942892b43b1a5aaf2ff63712fc3611daf538463a9b1d96e7e839d03cbf9e679d330f9e92c5b54336b9d30302047c435bb500683066023100aaca6752fa3d5d8e5a9e80055fc941f6f08017061fc3dbc767c84427bfb89bc5fc6966be9d6179a6c149a1c81c8422ec023100b6a481572eda466929ed29f139ca8a283cd9f59773816d1ff525c70f7ce21d505eebba66cfbed9ba0e95d9f30473783f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306bd04c2bd499185724473e1b76ec77a58c4f02aa008f57e84633df48a0e7788502ccf9ac4c8091b7f6a799229f72c5c00231009b7d2a5ef22213959a0f852cf4e101cdf775684622dd0dae1c2377b90e404ab63ee3d4edbb4ce2fcfe6b7b77e923b2380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bd5c9960c774d1dbd4b9d410b12c70ad7306f415d049b00ad0ee4aeee7b931ddf01473cd78b19eb46a985aad5701f59b023100fadf2dcde2e2dfc5b12a1e28bda434f866748ca862086c1549381f9cf2812deca195147e7bc904fa5e99060369843c070302047c435bb500683066023100be2cf641b07299de886ebe492ab75521b711149f62df2e28c299c499202128872741885b1713bfa44bb6ff95548cf5b9023100831fb8e033415a7a848e5a32d705e356c8af69e1423c0adc0d81470d402a874ebed18cec525ee70bf21fc830eb7700880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cbd4a132c7f27e9481cfbd66606faa209ffe79ddaf345cb8841b0b6544c97162109b5e57a7b5a77bb13e3b378bc369e60230625bc1e7b15b1a914c06942a2e1b1b1f28ec3eb772e134d02985d2cd26edf5c0c81cc3fa846d602f01c328f2340c572d0302047c435bb5006630640230586c58d3588087d3482dffc897da0d947dc2735ff3a5af33db875a578c3057eef6d400e09e39cc5db8cea026ae41ae76023018f536da99fcfeba345310443bffb18ae6efd431487dd629e6907a4821fa163c8db2a0fbaa2f0cf2a93da2d4deecde460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230437051ef78da3a3d018f3d677de15655078763ec926497bc168a743cbc90f94f1444125dfe584df582580e5f3d4ab84f023100b1226911c42d6df3c1fd3d8951748b8f1f6a84f436606776534348e0f9d4d795c7268c84f4017e92fda69de793835ea40302047c435bb50067306502302d41cbd019f84a19ec2c38cbf1a234e1d14f5c0aa455b02ee0ebf37fc41a7cbd72d185c10548cd535762a97cc601d4d2023100aa677d9ec56d35740d6e1323f0c3e93e1702323b7093ee8fad55594d8dc92ac20b6d0d0758eceffb9eb4fb55d99569d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de89d533a823ffff2afe40d0b9dda5250ccd0b09db2b56669ae4059122e68804897f1731197d78fb24a8dafb41bf462b023004e8e95f4026834797f17609b73eff44dcf253e14b80ef6e8da5b549130b57a2ba3717f11b73a62c261b563fbcba1cee0302047c435bb50067306502301cdf32e7eca8be1ca167db8ccf70382dc5bb1a4252497c74c5c94150273fd6087d29721de7da9c7119a7bf9902d366f4023100da343a42fd91ed4ff335ad8b1fddb1c009c4b172ea71850d00ff6504c37b4571aa43ebf3c9383e86340b0df317ca194c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a9011f9b519ea3f1a6f9bb375187ace824953c1af0943134977774e49e265d3c3bfd85c731e36796a0fb7edb296c573023100e7c963eed6c2e72b5bf3630438fce2db9b5abfb8352b6e58947145cf3a0d15c8fbc0cf8f1d7bc36caa5d120cc88f3dc60302047c435bb500673065023100b05f0e436f0a9bcc44eaa4ab456457adb99cb01d5d6a3cc56ee77331771aa293814b8baa2ca52ede094271447afe9fad02303c9bd06ccbb7eb9c22d7bded71b6b64ad6c05ea13cf853d8ff70c3a6e0e771d1c17f77debdd15c51c9dc020bdad142010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026dcf6549509a67a48599134ad074b5c79cc558530bf8fec37609c8af087704c4c26b1ed2ccecbb1438d69261b2aefa802303fa9e332996ef7b80cb3bf5db5a33532ff01f91132ee77758af183eba39a5d1973b6f96b522aa8a12f63f913378058360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b7375e3084a4fa16336901d1eb369c141a321ca78f01331799c5d711afdad904110da4e2d3358fc21d306bda57cd21000230698ba6d3ce72a7868408d7db3304b180d264f4677d346c3732257e53593e5e2764387db7965e86f99364501f34280ae00302047c435bb500673065023100f2d516310ac3ddad396eb02da2a5817f974264b0a8c2eab64c9ab491d3b4d4c8da917f0707a2bab39bad6b0180e3b783023074c9845ae81aa26586087fe2622986902efdccb9c7fe6c03420e670f0abf7d4b38b3c874c53e2518a7da362f9d24d94c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5ed063f7ef90bea7f0fbd7c3fa0d29c71ab869aa60f1220133e91d918bfe54b7a0ef08d82a15d1ce88bb8a4b00bd8600231009d05f649855f2b527c27afa62091a62c27c8a90e0f97cd21b919ec2d09b971db214cc143dea60e8215f41f490d0edb180302047c435bb500673065023078e4bc43ecac55c0b27d87e85e42ddd6a96d8bf780fa1dd1d4c6602386f815bdf54d91f89ba454274046f1268f57a106023100e47b57090866af3b391ce6e55bb0d0348f2c3f8ca146e83c903d94d20ef3322f7363a09bf8da5eed6b919f7703653a3c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9f4243955727ccf277c63a09014375496a01628775e3d65b7ddeaf8d7a046b807a1cb56a47e2d89fa094275435b246e023100aec8584d5a026a8e0cbe1fe597b33e6be7584c26015649a35eaa6adc557f5bac69ed841fb4df8dc1d7154b66d73564210302047c435bb50066306402306925325ec3397fe4df24845ac83be8e1188bbb2251b596d6ecc49566fee5257f3b4cee756a29955d62b977e9689d217602304159d9cd0b53546f8ce616bc9b08a315fc37a6ea598e954e5b47f5753a2ea91f1dc8375af3997064982ff2eb17d89cbb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8a7302d367061f54ebf18bddd1c1a2e15e305857bd53ef08ca667386084a1faedd9252efc7003c486650057191b9d8e0231008ba61590f144ad1b2469690a900719d43e3d983be060148843088abfac9142f672f84c29627ce0f155feaea7b222ea510302047c435bb50067306502301ae66a4ed43995b5ea63285257def5d02b33b81628f04cf4fdcb0ba48c2e3864f2d4173c0a0e0f8b16fe5d1509a989cb023100dd873e7dd49f5b0ebe69689f80df9f9b0fb7f046ec4c2e37a98d39015310048be541cf20d54c68d21355fea90659a6e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c0b85a0806fc8871c34bf6179017a3ef43f7f7640ccae9b6a2ab0d729a3cbac9d1d9d87059499de925ea72dd93c0a6a0023100fb4a1b264092e1e376a407e0c3d0414b6100c6fc1eacf3505d0dbdb49559d1ab8c5bdcc5606c42190e6379461a2700690302047c435bb50067306502307b4c7ab9a1df29953e023a6097f389996b1d26fbb982d96327a110b51c8a38f97227a8e7a5423898835e71ebae94d003023100aa8539af46a75e374db3238f611473479d1110f9a2284b257e101289df3d720ee305ccc273e779ea575e9b2093faba300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230382fa2170251b386761c4c9454d55e0c547e3060b3a963f12435f048ca3d9a6109b634bbd01e0f842c96061f224e36000230302947998c2a82d321aeb45a233ab458982f051aeb2a35a2fb4fac67362333bc90efa8ebb2e170b24e07be2c067e9e0b0302047c435bb50067306502303fff2fb714aff55b550aa5cd46ba2ea54cd5c97d36b4acaf6698c66af52de86c814524285aaf509a300e9405c6b3216c023100d76472e5818821dc195824904fd0c2cfe0358556091fd2bce29bbfafa3a1b2fcf160bc02726ab29beb839801c3633ed70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023045c137c3d31bf138fe763f7ad2434e161b3791abec521b561c1302f4f195456cf85141d0466b854545e698dfcc8b28f3023079ed77c07cad18dd04eb7dc80977f542dc228e16c1ae841413fbf5f789186cce1ddfd9b3e0fb848d7c3132fd8140ed9a0302047c435bb5006730650230200419052eb7af60052e723d3280a69e3627df699ab985fc5a39c4d086ee32d85a502237212b85d7a34df66ade900f69023100ef6f09f03af080fade2d48aa3ac4d565992550455d79786eddb8ce6f2e8d88960481dacca58a3e04c0e0c3e980af5f2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e636128686f994577161b7a973bb51841648861caa7b2bfa7db663081fe2da4beaadbcf6714f55bb6522029a0c0ce46b023025e5be8d17566d2106accd365d12a1a67855abf71f380a4e04a9ec8bbe2885bef91b1a8fb75c4cb0cc52f8b14948cd780302047c435bb500673065023016836ac3814c2aba070c76986e92637b22b6a17ea2cc4ce493b8bd93b3b38a8beca9c3f1dda566978a3b144c2fdb1868023100858acd16e62fe596e2b609b8f72e8644def91d19729c103bd2ee980004b2adc2c8f1ea157efbca29ab8ce38d31124f590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d03d5aa05267d494b34ab7e06f74156b8c2fc569569c1e737011bedeace1c5f1756627d547a8a0cb6ca402ed01c99b30023016a297aa803c0f252ecae394164aeada29f1fec827b7d2464ca1b741b4effd08c8c0f4cd41a8cbcf52a3473b20af4ff00302047c435bb500663064023059f0759c8058b422a11924a8e12edd449a6a526aca12c4d7adf10ddfdd1bed4da8468329f360a056d104144329dabd4902303bcfb09c94a307f3d0de3ade5d83f4564fac63fd32cde2a05aa2cd474d8fc9524b1e5c3f205912dc6dfca0655dc18d070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b798f48da0c58faf5dffe475c19dc7c5052f02d13f1729c9629f342672caed62cb597a51b3bdddae93f4dead64e9b17802301f07d0a23bd0319c81ad94a2443b398d544537b0d9b929cf6638e2a87e903549d2188d7b948d85fd6ac8e70271f300df0302047c435bb500683066023100e8674b472f01e37cf56b2b8bf8d5c0ddc629058e74ea799fecea8d514120f0278488c37573285b4a7a90beca48fbf029023100bd81ed26a142a41b161f206f4b32e0921faa21591957fd57bb05fae476cdcff6aede1c8460085056a77388bcfee060f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb3e20f195aaa9f21d7c85ca027b73c77be971b189d2b7394f313892062f57c9c4c0918c858008bf7afc0d945435c249023100e95137d0eb84de53f583f2302f33053de0b461e90d850b716843350a066fe69883c2f456a3a32a5c7f63950fc5a7106d0302047c435bb50067306502305368dbb936ffcf7d66a5ecf53db67ece9b3196b9bb8d0dbbfa13a20643e9ae0304e3ee93098f2950ea16b74506aae1b40231009598524a6236e13c6521bcdc095b6a83e842df2db6aeacdfdb884d3aaa7036de96eee7830c1f2b64d8102401ea2ee02e0302047c435bb500683066023100cfe08c21e10e1b1d545caf9ce5fd8e7777029764411c4ec18387f3dc34c044bfc2f672f20cf5cbce57f65644e2297be9023100ffa6cacaa176ef8951da9aa26de99aa57c4d6a1057429503374efca7ffa2b9f2f90c43704224db98a1c0d4dd2b97dd320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dede996419007d823f520e0481acaab7960dc7abf0d937d67fde509651cd65c1843ced8550d01b324a9e3791ee9b27de023100ad03c49bb2b86da32bcd54f175183cd3ffe2653864fa4a2a9c0096ee205369b9e0821f71cfd11cce9d623a2b4014348c0302047c435bb50068306602310084bdea37b2919038c46df0404b27312c1bdc439737b5fd29b310119d8df2132d29e391622b05ceeed47851bbb78e152a023100b92549b62b275c76eaa33f945d8b4509b4f1893eacfb3089520e1ddada4fe3fef9adb9ca756e490221aa32243d2dc6d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c02a6d25eeee14356600e543f4e714a789d2e440bb00025f3080e67b5e0eeebbd40506d632283034ca0cffeb005bf8a30231008005207067ef7114ca72d23a4daa8b6fdc7641accb362ec15e8d861ff8d3dc4d68fa5fda8b452e61a3dfb6c6218639420302047c435bb50067306502301d5de1e8d1b85b47ad4e47d0826237dcbc788e3de2ae1ba597b398cfb4d4e44fcb226772d971e589d298566319dd3955023100aae598052fd69479c31c67b7f546200cd7a030d50c73b12d63e9225da943af118e7327723c324c7bf17d604014fbb0750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306a5a61e4291533aad393071d83b47f1483af02d39885d26810716cdf64d7ceaeb142f67f389970d99c287fd1596f7ab902300450024aa6e2eb81be067c1ca43a1638b3dacba25c96ede4ab641766d947bc56ee697df0ebbd9bb1d77a5b53f55f4a080302047c435bb5006830660231008b345811efcbff81aa3da4f630678bc337fdcf916c4047f23680db9a2c4645611c242c0ecb20bfbad5e316c5017db29702310099a07047fc2c4cb185ef4f96254b4f4d71fad76a62202b4c74fa0fc33024f4ff3b8c7d129fab04ee571d8b961ae568950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ef27e12b57a961de61c9848c5610c5c84148a0b40e2155fa9ef4d332aae5909357d2e094c8c691a8161012d5fea4e19023000b173ac8afcfbd7af42a14b44d33189b8e5017cdd61df9ce8d7e16dd774ae6ba8bad9e266cb2940efda1af813c6e48c0302047c435bb50067306502304f54a909cce81b4ce531c79ca8aac25976011ce01a01c3a0d1c18f0014c50e86152066e1ec31940ca56a7b75ff5855100231009453ef63713bd39a29ec1f8196cc92affeb56239784b61992caa2056bb547176cbec937af990cfb7e62e496dd40227b00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e1c83e127795e162e114eebaaa429504c87aba15acd1e6e701a562bb40b3256f7d3b239074d59daec08940bb2fb834c90230500e161b6b39c4b9961f483184a43c10705d6c5d414b21df3b49a17b7acea0453d43ea4d01551b90b9e306c10b4792420302047c435bb50067306502306330a48baaae82c3c1ae6b4e2f1de243b2fe0cafffc3d9a2015de345e8b0b8df63f25996e65e0ee088d764e1bc5456cb023100e16ff97c076a892911bc016b9bd260973e29bcb1caabb34c1b93d89d97c3cf05326606bf6279de38c5838088087beab40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ed1fb7a1afb630dae59336e507dc1be2f36c845a64e695e66d0a36106ba5b38e447f0eaedc682bf073774c31b5b5574023100cff411ac66f6e811d7540ba3789018961907791bf136899ad106e380b27742bbc749c57d005582d4248a98adebf6e1660302047c435bb5006630640230342a19ed50e115fa2a4bbf8636e0940164155d3382b433d692bd356b4900196010dfa2df6ec38e6767657eb12e6942e702306e64417310b17cc3e03b850ae017e98652042586b7938c201b62165814465671fbac73814a4ab0e65d366758e0ca75290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc3e3acc2a127895967b9a7544e7f9122b1a6e32e23ee225c1d47b66af09012d34871268efdb12e19a323906736ee307023100c07f04a80b8a2610ed50c52ec0028eb7b4230848fd31e62c807e2c03001ed24387bfec95f8a84ece36982c1a9fc268310302047c435bb500673065023100c04e2ef6d791c4bf614057609e8fd4985798f2b2da5c3527ba48a3186f967b48f41971ab07a66595c2d63adb50661c390230171ab50245e0da320a9e60ba169d54390a36bce132ee37872f1ad94927125d51be621dd5028882ae95596efa8d60839d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006775719586754ac0d4a1405ce34b50c7f77f1be7d6f3bc5b7ae0ebf8541c57aae7ae31bd63370ef69e5f4f9410e84c6023015a766fa196cf8faf75741815a9dc1d231e94d17131d96888c70f7a4d07e18a75d77cf1cf385ad8986b009e5a4412eb10302047c435bb500673065023100ad2993ec1a618ce2e31c9bdd4edebec38d39e1aeded03dcf722dd6ddd9546397682a28534f9856ba394730b33b621ca302305c66a2b3f4582319f5a241b4332ea28b87cd0e5b96f497a16d8bc787b9e428f5c4e618e8836088ea0c84952bf8045cf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064054f6697002f23667763c615f2729d84743d4de49e90d44970c22ed9bd0417b06163b6fec3af322637aa52107e4473023077df784b2b7f9615eb2b8c4eb38490019575fa054a780f625da43c1af3aff1aade87fc7e7c0f7beb167c4e6ef71ca3ad0302047c435bb500683066023100a543230b92ca02d2d620de68dc4fb54ef1f94efde27b84da4f14e1891aed756ec316e3031475163dd7d50732e87bac76023100fb584f65138c34a8e3508de1d9d5cf25f5eca24390a80cd3f3af3eebb2e2e9a81bf2c65ccb022b67e41443bbe88b793d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e3c649c6aad28666dff0e32c54baba7d47394976c07dd14f3ff7290e8d2a1e0715bd56e6a43f944d4ac3d300bbb4d490023100b7369b5fff2bc4c0bed71218cd74842a0640d00c4023139c3b6a726a946c8ba67908e6287c7eead5a2b099d77c78daf30302047c435bb50067306502306ee1f5a13bf8c5f5e3edf221d4090a232cae33d0add3dbf6eb6a0939397f6f90ba9ae4fbd0a836767adb2f6f197b4e99023100e35a63588c3af1c81e66868c789f6aa4d1448924ff8d85a99344ac9563c0b3f291d298d11b51daa8fb8f04302be2367a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b8c91a2589a05a0d91f510639a0598a239c117e42a260a60d6267bfb393c19147bde79ea639bf66ba375e4bd09faa2802305a10689b7128d13a7407dc00aa1ddbbd3dc83758dad37fcaf1c70d8719ba344996c1977ee5520769b4f46d18c08d9a800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306465c4bb420906ab050f4b8c890b4acdd7a6d430e901810db810f4a8eeaba116ebca021dc8c888ecbf41179b17f7ee88023100d97d0991c8739341b41ba30c44fe7a7feb75e47ec15985951396b0a1e27b3ab95e81063532e33e68099700ea9e866e800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a188d88aff17dafb4981b39d72288b0d5a7066bc35b0b9d2f322d6d649d85f71d65ebba79a730812e9464b4d9b334b59023100dbd81511ce494fa98ddfb2e7f27c554772f6c0ebf573ec7a73d4c8a3114b161531b7e7cf070380ba840cb05523e04b450302047c435bb500663064023044e39eabe5ecb073c44bdf2964429a8efff5aaf078c2b26ef1ca46075f56c57614208904b2b41a4436a2ceadd41d5cc60230599dea7478076ecef58a1fbaa905d74f20f7d3b9ca92dede85608605bfc990bf191f8cc8eec032bc1421759e5911a12f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821ea834a5a6d42c40a938c396bc4e64b90ad515992e746a2ef04a637db38fa4d9afa5c000bbf7296be02d91d25b66f4023100b966f4dab7ab9fc8e8d64980a121f3cb30342f7cacc6ce79a0c15b6ace07d2f0d7cc3527db8c0f3f5257c8c4ada0ab2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cefd3d6fcfe5ddb55907d9b67da98890eba2b2a47f914f9f8a06aaea48f8db48ef92f62deb8c81758b71ec9718a5b21d02305477901a95836683a8313fc5e0c00f4029e3af4b5d72fa9b4bab943ae4361e794bdf0370c2d952864644453a0e3052f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021c41211dc85b233da6617ec49cf378a8a5717b7346ccb132ac9de830f989c037993ba0a7f40f5dd1aafeb951183b7c0023100f2c24c2e4f58a2731e4438a4553a26bafaaa35c830379a4b91eb51d181f1bf811d47a12376b946b4d584adf6bc46d8290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a2fc30d27c69128cd6d64da068ca33e40c9454ea3bb81e3635a7e8b9c047da2ecb773dddec91b5f4493b141ab0898e0c023100b54833c9fb95e61d3f8acd0f01445d65ab9fac53b68b4bb8a8bfb8073098c78f00e48a94623f44d1c9b22a83085641d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011f0450e57ef83283fbcbf525da4a8bfc0faeb95827ac2d01c3a8fae911daa5d0e8578c5ad7413d530ff606aa09e128f023100f1347efb04a21b2a1290226a28a65e11d758b9146d9dbdcdf6a0fac0b5d5a4f066c30d6592dd8c84959cdc8ed2e7dd810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026469a44bb057941b27d585f7cf71e47eb14fa0e1239639bb7d197cefc6fb42f416bdef9ec0c03ee00843a7e80a188c202306bba3e69240ef99574220b9b20cbe93e33ecf92e95aa0472f6ee30a9814bc789c36bb9514b6f793370ef51eae754eb830302047c435bb500673065023018d3ff48851e54f376416e842c8cd00c31be7c552728454294fa92fcf15a2ff4e9b5e0925510b01d30c6206b08fb514f023100ac6548351e7c3b3e169191065d15a983522ce1549304b8571d1e78b034c6dcd5539c5f1e56a039519f3bd8b5a09526d50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307aaca3db1ea19a9ce19efd55b42a2c43259d03608e569f3faf89a9d95f8e62f78bda6ad2f09f1d1293c9ddc128d20d86023100feea2e817c630faecd11c363b7d56c42af7ddbdfefbf9af30ca4c3dc59c4f31f375e6f5def73d63a6882da4efebcbf7d0302047c435bb50067306502306ae40de354c1ca1337b8ce9ba45bf2a64b695c9a2ab855c264359247de59c73ce5c1a18c15089da39314b46dac37bd4d02310083fd65d669cd01e755aee37f9c9fbcdab6ebeed808129063a2bf9a2ee0fd09cbbfc47fc6024fd1f74e0f5ca826f0a1c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bb85549603113f95b7bc1b2480fc5ae0bf4051175d7a82ddd267d12f207e997c7829c8e9e8503eae723b24f288857f7c023100ad83e1c931a43ffe6c857d25f196008f1e20fdf82fa73f8a5812d5054f9905e9afd9d33325167ed6ec46c937b0799e3a0302047c435bb500673065023066d762bac11a25c1923d4de6b1cca74750335f4f56db541a2fc75f9818b4a836909c083898581638c1bf5df133ca836e023100bb45e94eaa727f50ba5252b099064ed5a08afca5f93d075879c869fc2fcf91e2fd5bcd909708f984d7b34fc072c7af190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb1cf61398a6e721684dd0515e72cc65a5b3806e8d8ac67a8fac5ecfaa36ac0596a69dc7666a45c7ea50f2618bfc122802302d5177afa48df8ce8d9ed0ffd9846a58d7e8ad171c77826cf182037c9e0c4da45d6699eab8f252894809b907615c0c9c0302047c435bb500673065023100fb0896e80c9c62e7b3e605067eafe092673c96daba8a0c79db86a3003c36f5b4b82f654af539b2acf97cf8e2ce1584ce023057839e38e6e2b5498f297c6928a65ee5f1ade755ce929f95e2896c83f9795f6ada085b35287fbbf3a41ff05023d8f4bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310095d17efbae75becb3cc0036105ac4fd65b5502d23e5730373238bfbf9cc0db64e97eea0f0443a6a6376e5d9cc26468c502301134c2ac94dafeba6f9331859b846a817ac05cf235bf1a190d8c9725f83694ce12a4421760b322623880ffa1738cc7c10302047c435bb500673065023062c25c83c6c8d9374ccd0db35d24497332c9827b3781c0c0f05433de508b90727671e3dd6a4229b8c6f33b7ad7e0e6ed023100df21ffbce3c9fbdce539417d67558ed4ee654ed1c4b5caba47f0be3489a9177d4566b9e49dbd11f493ef967b0c25de650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8e186b7442721dc859c5f4e4cc89cbc688d2872f620c9a3f42f64889efb559019c55e1ed6fb1daaadf523f94ea762c0023100c2ab0e56ee494abead3df54006e77c14be7abd9d58e16bc104cc37a9db97074102fca093d9852d21300d8eca40948c320302047c435bb50067306502301c4ed298362176ed09b6d9cf1d27bda860f90f22d27ab9bd15d95530414acb44e88494da1baea410fc153b46eb37a222023100a6baefdcbf617e94ccf03d98a740aa5d9b2e788ef289a6d088d816a94dbb896d12bc8fe5885a469c7fabaaf20a30161e0302047c435bb50068306602310094d06167e86f17303322e16677e931d6d2a66c84d3c1a50348c4b8761440f2cb70e4c1d43957ce003b3e1924bc086025023100dba5d4a5b5abe1127861a7b9d0cdb8a3552bc92038bd2d2ef218dfadbe42fef36b587d06e67ac6b5908535007f4d61990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d59523fedec7eb5169740bfadad4465468955eeac5e10cb1f95c0f3d8198ef2c46d91d8dadf91559c161ba5f906c9fd023100a5e8adbe512a91d901afde23f12e1485233c7418160c26a29fd366d24a7219dc6899e02dc20538c624a37d538b282fc90302047c435bb5006730650231009bdf1f9f126ea38712538f59a6aac71cc81f7a63ed572679567dbb9b44b28ce80cb5ee8f1048a284f3b352a4fd36af5502300f048573d03392cd8c5f60b698455f64e450398c2ce21535e18b73541c10878d046375d5fc66ba06e1554c2a0a65eb300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a2078ee785c6fad5e6e094cd17063242e5057f760721852b429bba43d04ba40ef7a5f062117769f9ceeae1020e86224023016c623e82fee21385a6406575e3e3e3b97abd64ca39ecb0b760f192931f014fecaf35fd7d4d9d0204d8e6c34c8fe88580302047c435bb500683066023100d5e767c59a432b1b79433fe7cc1b4f31ffe4c28c2e444c70775e9d2eb6b648cdc7eb1af53deae3e69f685e35e4762174023100de29f49bf6e573d493f776a85f0a0b268cc4bb6255d216848ee800a8713d2dfa997ca3d692bd79b7fcbc5e773c4896ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230331117e9dc300b28ae20cbfd0a25b900fc8d6e118f3895ea62c20b973d60c7b1a27005bd71ae08fb3bb823ed7d42372302303c6e2b593c3cc454e45ffd798d120fdd347d92adf138c9d5285bbaa0e619eef7948e6950c1ba4d3377b9fdc1e27c65e70302047c435bb500663064023007c142584ac1c544cd6c49b52ec9ca3c94f4766645582362da448cf8f092f1c5148d462a7f38b005790aa6b556f829dd02306a91c8b4396623ffd6be65cbe01c91c63dd44997e711a6af8d68343478daf91c74e3943b21cfd72a7629ab6c3c0f9b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307063afdd92cea69395d6fcd1509f016bfe8dafa1de87aced5761b759644d29dff4213a823041a985808d40d7795c8e89023067e5f41cb8d90218e558f6f8cb0d56c896a9095dbec811558d018f306067e14616ffead48b0ed42521b0c90986c4c7dc0302047c435bb500683066023100e7c761aed4648c098818230ac3cc43bed3dee8c284635c45375810839d80dcc020a5dff2bcbd030c52464ec346101bbf023100d1b2cc1a4537ac35eb3c218714a6d68a5b708e254434be0c2594b1407228f4eaf615cf9229b4755b63504feaba47404d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044f27adee6a339e1182d2034428faedd594ec065b5a0feef3b8d2346f22f649556659d76a52ca165670511b552d2abcb02306b94c80ffc7c9139ac1a5ed6f35c83ad19a783bd1aeae7c05a2298d096466d01480019656f3bfa96cdfb4e9e190bc10e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f80df14cbc2aa5a6d3238e20a7eb381de2510726bcbb2c03bc0e24819a9016edd99867a1c429ab3ec529fb362a75b8a7023100a5448bca4ce3c98d65ab313e93d805aa579b11105e144e03d09d6a3e935bfe49fc26161558e89f416f277b2c8e86f5950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023026bd6d267bdbc55826a85a3c86cdcb1720bace0bdda3df52e94e3e14fe6ebf6bf3827581694ea747f6aab6453afba1470230190196968602c8ec1a1fd4b024dfc47b584739a88f698c770b66c0656a64ae0999b4b3a30e6dfa7bb4d7854d54cba3400302047c435bb500683066023100cf9367d194a7a73967a6c51264f6d070745431bccae1095dd2530944d46acc0d997664d2ef86801c042519c4409be844023100c58d03741fc58183ac1c6fa4537b781ebf29c959c71a385addcaf6cff46e399efd10b773afce54ce4a2be93d9891716e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ebcaafe15b20c4bb19f725c9b5c325d75bfa57bae82c77c2ea6775584ef925d17d51c7489d1174bdc5d9f6bbeca5dbca023059b04e926816f99b18634b8bce5de7fe838787958889e90c6e109ffe1cfd4be5882269f154dc661a4529537f9ea715270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230419295a60b8fc36630e818dcfaa1b4ed7324e66f028ae43464d3fa2cce33bb37598190232ce68578842427297f354da702307143a34d91b048988f35c3c0126d14b7f5bc7007e8087c6ab5fb967e74774be244c3c21775776a2c78e408009c043a4d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072c57568c33af208414ed574ee17c9ff631c44b34f4b190c437118f5323add1297f647a3e4f5462c4cc42a695cac7bbe023100aa1d6cf582f8bf8c0c89355c819dc43ffb51a172a70923fb9fd3488ba13217183fbea40be22a89fadb00e195a95b59b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e203be2025b28771861f55dfb5efea87ffc270e32b3ea276d6055acfdf3f2dc0885909f3ecb4ac06291128f14320e49d023100a3da678dceac0cdc67a7b17dee11c291faa12270a33007a5c39647e9dd4a207a213b99440cdd0af190dce452493e5e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302db170a2b10e3b58f6bf74df21f5bcbbefadadf191f88d254d51b24dceeef08966ea1057ce806ae96af389612cad477a023100f146ca587aeec71794c55fec38eb19594963191c5c8791b2459f239936b28b44451ddd93e75b746627afaf29442d7cd30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023068303ac1dea40b8ba3ccb935e6b8de2052c144966b526580aabe64d1c5054ebead89c1945d6f90f14f945ed4baa5a4ed023100b84b70152815cb3ab0b3004075ebe49ee20d8be6d26ce2ef77e9196ed29b1d6958b74f447e5aaa54a12c989c73a0b0720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3c34d15d4fce896e5f5651d4863469b2d49e952a858f24790ee0064545284a6d8f2d179f2dad8fc154392eb6d49f0d7023100a5be70a5a77e078260aab9e423504514b978e35f69031caf43b6ae073409cf1ca66e1595d7ff84b5246fe855cfa646aa0302047c435bb50066306402307eb71564753689182a9a8fd1d54c89a4886d3a14f33a8d051e943f39183069631ac0907f5406d23aea3bcb4532ad2f8b02306841a7f8c3e82d51d8142c56d494c52a89d7f294328eda70f4e07a853cbf5c25073397a028b9ca5d0ef377764a689e410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ba77019f1676d92a45e672d7a1ca0c192da82d0a412f9cae73eb90285712b636509ba48f1157580f937cd2139d984d4102302eae73c69455164c107b39547576d013fddff45e97d3cc677097da214ea2f6d56d8b54fd1fcd85434534276d1cb8c8a90302047c435bb500673065023039d4c07deccd7ffcc087732135658020a261f58b8732636641b732bdabda9370baf2be6a48a384ed7fadce80fbf436c2023100982f70426083b2100f147dbe825a2c4cead9cdda496ff9cf7c7b12ba3ff189737ac1fe53bbf562eb171089707cc02b1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ca40725e43ab560ac670ee70d72fbf0f70992e5a54eb5559f3dd5cbb02d1be041e63c899d099c53d36305c2a1d504f300230625041cbbe75b132c683e2a4c560c3ca0ce129d343d16f7e8a9b1545a6fcb5c303001916490097e829cdc7bafbd5cdad0302047c435bb500683066023100cfbfa789b0ee8328751b0dfe7f862dc16064306608d930cdb27fe5ff1fd6eb7f55314eebe0be220a91a604085c3474c7023100a99096f98c51b632db74be7dd2a6cf1d0f65058347a98d5cead9973ff925f95df7a329aaa02a51507c031c8ef12fa5c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037aee8a6185b40c5ef2f00e94749a4ee96908551f4eaa6041f17751635dbc369a881435d20b41c0b6b2047ace85676380230147ab18db1d5bafc122ee2f95442a458b9129b69b88581a064820557e796e95ac9c7ef499087ed9bbed1ce24307d53980302047c435bb500683066023100c1b12aac83cdbc30fae2fb9561e64d4afd68a8d5a75fa291ce0f6ff154c8187478d925a5664613df793e1accb92ac7bd023100e718110b4d2be1c8b154c3f23fc140c714e951681246645d5c0f5ca8888bb8b40eceba24ee740cb31576b329012985a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305f47e9425cb9f023bcf67cf137d1aa1dbd10f60911788a869a6aca6fee79d4a822409c0810fbece77e9c106d896218a9023100fb70868d1d86ccb7cebc2e35103e6e548bb8f90c52a2fdd10f82b5f9e6ab9658785dd8d280de8c39cf4b018c8f614e050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ec88479e6a934ab9c679676769acefd5c2cf46c98a5437bd682b7db89ce8ae45fff7f89f52b0aa1b33124b069d26dd2023100e31d8c7a21645f0d1fd2a24cdfb5f4413fc983908cb210ddc41515ce7f7f6cdb0ec6c6075efd1223fe323988e2a8846d0302047c435bb5006630640230126ed618a8aeddd16eaad4dfc0a870e346cd4ec46343c0e78c0046635b0f68d22f99701aa31623c805f23b1c1578ec7602303acb9b9f61ff8f84e5a59dd4df278ed82adab42d357d67ae86b641e99e7bc8d0f45d4f56b86cd289751a9589889a3c790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0f47afb627a166c6f3db997872564074e2a72da088e915e0ac923aa62a870d55bfc9d79a3ff7f028c2ca6518303ba9a0230730a6eaa2f00bb1282ec0909c6e0ddc51bdc5b66f1c393cb1d7266a5f9996820f0233f95a4d6832dc13c475077eb72620302047c435bb5006730650230236f76147399ae4377b06feb2af5b91601a4152f528c27a3ccd713a91a57ce14b5680de6360ee9c278da6d245faa2b91023100d3b531bbb37b451cd62ed86deb4cb6f8934c8f312779dc8bc6fab5d13bfaf5734bd2b4147a7b2a7cce5398940709a92f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301486bdcfb6c322a50c884fb3a10e926a62f7a2d5c3d7f93e0fe46094f0ab26baeed6cb84d452cf1488e58bcdfd9cb0a202301cc77d2f0cea42fb328694cfe02f3f9ee1871b5d8d4b0ba3fb8afc51c15fbd5b154df4bf91dd46de1584542f0537fee10302047c435bb500673065023059dd91f1ae3cfcc489542e295aeb754397cc109dfa066b288e25b57fcf8802357e602cbd651df6143f5d41a186bd24a5023100d72bbc26b587a6367fd4374c12a2ad47a332d1fa2bd95748aad9f88470ac201b74375ce5431fc37475645413d2d085030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076e1b672cef5504c98790ed8cd093779402639a7eaf0355bee60bbfc665b0eba8727fd114a16c8b070c44dafb6450f68023035b97743cacc40817647a03cec999faba223ecfe88f7c3af4215a549818cdf496cc6f588ddbea7cf1951036600365e750302047c435bb50068306602310087203027198425467f50ac90c58cbc3a0bb527c0a785e79668fac0c16c27d39b06f1fc0a57a29c31e0aed7c3b820423a023100ed6b6cac847169eaa62229fbf6113b0afd2171dc44d063d477efae49e47d3ae8d1a1f56a8380c0df50dde6697cb120ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d253ca19d0c666b9bc34bba44bba15416cdf03a711e2ebf19cacbc2ca4bc5c5d17d92dc6497e08cce66cd37e53e9d81a023100b6c3864e71efb4539722b992d12d4470c1f58df689dcb94709b37d97919aa142fd7ec7464a8eba8f7169faab76d3029c0302047c435bb500683066023100c5a72bb7eb7cec4da764f7a8c17521d23462ec0dac3aff3c240fb0dfa418ba13ae92406011da4852264b7a4ce599265c023100d95665d9d1fafc6d081f976e25b5998e7c83ba332e3f6314d9a95337cafad1b1c4ffb21bb35d1d731de9e1099c19584d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003c0ac78c2ecebbe8dc6eb52c873a5678c33e9f8182126f953a7d6a47ed0d99171794bf03406c13af06dd58b5e699163023100bcb53474357eb8f14f2a087e3069dbf5e9de18240d4376eb1e6e53c909afc8cc911b152e39c1a7df477e82a7b9a675310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023011dcd178406f8529f02ff70a2d7792ffc49bb9c54939460393bdd3df80bdc7918266ebf49930173da4389f349c7ce19902307a0371b15b9623f4b43239bbc39119bcdd36340a6b7292b17202f981317f56e701d761742cd915bf480f887247e1318b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023004db93a0fac0ea7365f17ef03fe76c7c7dafef78f2f8eb8bce3b4976552f1257b777802449a99a8c721c612cc759e08b023100b3a4fe919dc4df00b48b3680bf267338a04b1a7839740539cf61dd1aad0b67559cc2195a1d8aa27a2fd7b484abb11bed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad56f874a3c2925eaa012493c43f674d36169e5c63ab3ed7a86ea8bccd92e30c57443cc1659d1dc194b8ba7634d79a0402301ea5cbc899909ad1fd1085fe74d71b062a4dc7ee03c8d372f454f535425a00174ae472a1218d3fe707887c158e9c4c790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230462cc39e97176b3ce58c2c57f3ebe43c9515495e87e7f76b550dd67f37c79c3abad7aa61644355b2241096d61fd4cf3902307060e23bb10a97e68e5c95df562d319050916d50229def203842974a4b5ab271e0e13601f88c754f187b3ad76d5f5dee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ca1e088a000d923713295fb6fc174614059dfdaa06a9354b0917816943b0d2a784da0f14376c99be73ae1db6e648e950230230dda122b4a65b8ae0911b1c47bdbaf3cbba419cf018dbf779d0f26e74ecfd84e9a21c1afdb6d375f1a9ba3af77581c0302047c435bb500673065023100d05e95670c175954a31b6759ac13df20c52c30294add0c19d3d22c6fb5e76dde7278a0022263f6c552d7e222ac218ee802302a29b0d4ba0f76e984b1480ae36efd12c78afbe0c6e3dee776ccfb68445719b5ca314780c365044a447aeedb9e514db70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064b4e65bc0d8d0743f2e48766c93af3976677adc65a60e36f9f150ba7c9759875c0f67c246e270a22e83cb3e9bb493b5023005f55b38c0ebb0b9da5793652b5590515c12b2280180ca400bf05e9350759d48aed42568cb0619059be546c440008f960302047c435bb50067306502305955cc4e35a5dde89a0eeb1bf879bc4b376a9fc4c2bce40c75f395178253e2fd61fabb6ac79ced915f75b5ca0e60bc5f02310090675c4c7ab6a787a9446b9e57e2db6ba8cdab6fce135794bb253f9ca76541064d9a0fc6891cce730527510cc660fed80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023034075e1f9131fdb226541f261ff9ca55b6fdfe99c3998f7996c4bc26db698b234e05c21e99b7df968da7da3338df6624023078c1c8df9e88e723a9f80d342065c1c679866447bd91b4dbc4f98c66106e90e0d9372bf9bb5818ddef3ccf9b51d8a2210302047c435bb50068306602310099868bf9317e28a186aa4770cbb02887b505b0b9747401ba1fec86c891b703e970f6fe12080cdd0e4d3be379ac942e8f0231009e33ece06d5835c45a48808137255d3f47258e7b74a06b00847989190a59b1f2f460e005c14cc1dca6d55eb077b72faf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4c6ac984a0c2318ee049a5166fca017d816563a038f4b5858482e1323502b2f445f9e5cd0bc0e4951a7980effb4d5a2023030bfc0a56909940855bfaa751c39970695f0336aa8ad41b5ba715035ae0006a0bd84a9390c3dedf899332e3604d8496d0302047c435bb500663064023047ffe52df7631ed331c65a5ab6ab66cf5a0ddcad9810da49512a0abdf905d1c4a9494e8b94c940a069cc71653c9adf050230314a4be5dd04d1758395338cbee6e48a0e21112cfc2c2b518f0c971b939d53377219caab4011666ed4d5a820779e0d810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230651d390f55866b65b140d24bf4349e8888c5d54b6912a24f26585aa70160ba6c84857a25602f346bdd2713f3a530790b0230077911840b15caedd9ea96e029fba9f42645876cb2bbc5a7ba3c088b9672e4be90ec4a18ed2bb2044d236bfad47e379b0302047c435bb500683066023100c596e4c38ff2bcd531176c984421f72e1c9dd4ccc2775a1f164d792e396f05db3c0ba57fef8a487e97485d0fe7c65bdc0231009cc35df92e45acaed17c4962bff504d794718ada4fd8dce0b8c55bf5ac3253beea366b9964ea9db6ac087146d18818b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300965ca2ea2cabd4c510095fafe964898358482f26ed9c09e6754a27c7d89ed72f76900408e08680d8ac14157f6bdb227023100ef4425a8c493057136daf42364b1e887f6cabed9c65f58881b1e6ed973ab724afd601b24834f9bad6854835ef48fea050302047c435bb500663064023016a2c70c607049e8931eb920636af7965916378262547854980737edd6b25d43cebb4b09632686f9a1776ed57c628e0002301534d6bbb0c2a4122bc9fc5ba044f2e1becd413025af611abd39c1d104c002c51229d3913efc5b9a1788c7ef2452fc810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f617efb247c48c58dc315df10b535071cbea10689a19446b50097255cfbec7798d3151ad05e2211130d272f2870864b0230094ef8bfe93e7624f8dfbe4dfffaf51b09801ceae9769284b618a7c57ea802899a4b557440ef3924769503c5a75ee4410302047c435bb50066306402306901b9f9a51a480364669cf3bdd1140e30a9c3b53cfe48cbf841f050f4bc28071d79bf60db381c585c7f784a9493f3e902304534bcb22357c46f2a073b29bd2cd4357baf29be4160e9df12ce3209e3fb38369398d9cd91b64fa5dbef655f2b79dc480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230018d9ff8738867d608375429c40b0a9ad058bbfb5718ac77d419904a53afe33afac94c1e2b19df96dcc34fe04f94737402310095fc2c140e503f2c6a2e63bd93bdb112e0e9173180250b97e5790d29f70966da1cff6c45b9054fa30b75a7fa5438afad0302047c435bb50067306502307482179ce7dc65a4fe7a1813a90cec077ce5949c2b0df73f33a50d587341f8e14bc1050ecaf837830036cfb34a82c0480231009bc9c048eadbb4f2231df392ec0b48c4609e0d3637c7c346038dc7f1d2f8eb78b88b9cece9651c989436a74c2c8136d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014ad62c5e726d1cbd5da7c50bc682f66497ad101d2dfa4700c940a5a87e61537e7bddcc5baf8aa279c627247ba94335b023100a85f975fb82845a1388f56688f649d7bf37486c89fe31db8b89f78a10ee7c884002244772cd506d8a3261e00448097370302047c435bb50067306502306ced2ed4ebdb3a5a5702a99e65ebe2706d52f1b7fdce2bdf2ad49c4b0f3eaf2bd16fa9d04fff767b4b79cde8b0115642023100e6a9e89f05f2e70d12df77e9fe44cc1215204847293228694cd2d266e8c2e6bf4fda1e1cbdcb3a0ff5c08414b966190a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eed737588d42b5b0fb5974e52658f5f6dc3931fee06d96ce582322d05e4adabdcd85105bb2de3cd878d8666f752756f2023100d5221ae1fda253efd81eb628c8c21bff6ead03987ac3268483bc07c49a9fbe8f7f58ab9fe06291b94cbfba40faee8ee30302047c435bb500683066023100f7f0b30d9f4622604ee684aa7475080a22b683aff29a79fd4f58d3e61c6a8edd2b256898822b62fe36cb371f43f2c10a023100af16568843783a1e0e9502fc7686fc446dea67ab2e8ac3662fad76540fea81663c03ac705c4d3d16c7c076a0e68025690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b224f2310ee96b6a69275c15ff8a75867e04d9c7a3a202a9917a71dd81795469a7bfb8335a3bbb2ffae12fe2f22a7da023100b527edab3e58eb0cc3f5943bb3d4a2acdd9f81232be039d618c9296d7fca51c7b811715487d35cc8c17865a15dcee5e00302047c435bb500673065023100f977fa54fbb13a42b1b6d86ab3b5687d5c2c32db30192eb79c6a1bb44a4cd78f5a728519dc387ea61ce8866ad95cb5510230667d1e0e4a9a0666385eac07a1cdf277c22d82a43c56679072b759a35f83eb7b2344877a401703fc4cc1750f959537660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023058338498230a92c6fbd15a679cab7e38531d7ba529e9540d01fdfcd2e4a41717b730ff06592a7342a3eef94117109383023100d13a779f76c8f0c6142ff87a82e32ebcbe6955136666a6af607ddd165e4b12a51d77271fd7050883ff076fa88c73d95b0302047c435bb500673065023040d2c7ae5052855d405e07f1665970567480cf14415d8122d6cd0790a56d05bf7d11f63917a8cbe2cb4fe8a5666dbac3023100978e4cef46350c6f0cb0e43b33ca36f1cceaad65a198dcbe98bb4a1809cf407b97f3c25f9adedaa6a2201f02d7f6dee90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce5cf6e6f2e02c5d83fec5e493f952d08ccbb07a93a81c8ed570eed174a4f75c8eb877fb009099256b25a07344691c48023100f7d7596bd653a9dd22535885eab9ac0f1ecbd97034e6386b2ba8ca8c75dd42c5db2955d3a0ec1269b498a8fe98a9520b0302047c435bb500683066023100fd51f5f42f9d4f891b13f284ba9b5e9f88741364301276d6955ce6f7383a87d904be4a5f7d8786edd316b19b8cf5921b023100c3ba06cd4590db90fcd7433151c54518ccde8410bc9b3c13552c8e72a8b01d538b102f8ed87494b57408354188af65ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009eeec997fdef19115da4d27b5af7ca00169648575d0076976e7d31a2b0073759e940a2f17eed64d9a330754a42af159c0230325d408db9f73d44473c07443832ce3bf555681e178dfed3d9905cb1c46fcf00166e042739440c7a60270fae224961a60302047c435bb50067306502300bf5a1033d11b3b0eec6a469f455c03ad0c8e58bcc17b56d8ca782d451c32a5b81347cc674b2e18f6cab3ca0450b94c8023100e0c2c7324ae35e1aa80ba3f16741fa628680bc1575bad5c0603f074ce227dd797be247f5de16d33949d7331ce938364c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef94edd680ab3b512a42c30a9cb32ec1842629f3fe54f1b20249a0dcd26df163f6f5451dffb130e5492cd672f3ef9a7d023055813d3d6ba95c4e3eaa28aae0c62c4a858abade3f65f16ebc51700133d31dde4a8afb4f950c32bc5f2b67ae891b824b0302047c435bb5006630640230715417e3d231661147d85608506d0057176da2b28fb43c899287b7ba745894c2247bcb3651167bb66ac705532e65b27e0230395568d06ab6d6762f52e92db1ee2c36b503a136f75626d57f797435aad2965adb25a55c3c3acfb96083dc6d2815f3100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230364eff3f90ef43f58c464faccb37c0ca113b5f1ff58444e3bbdb195a27f96967e054d405ca462b331f2fbd58bfc8960f02304c92231f18c72ae2f86b7de4c62fc76546c09130bc1637e53afd96aa73f850afcf6c89475c684cf705d4d880f2d0df2b0302047c435bb500673065023100aac15f862f8adb4ed7ec3f523f37c814281dde633e3c35619a866a6b59fbbeae7116df5bf94d193f69d01df9e8c46be60230421e855eb4cd41a34a8e3c8b1b19b1a7e5ffbb31710e97e2eb490f99d7cddbc2144b95842f4c1aac6084e19a443077890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3b7fa8582413e34e5d49466a454851ae51aec937b793760f8be879451e74bd36d04c7d902487e8f0821699f712fb0c9023100f0cdc28fb77cafce67adad867764c9b2da13cc6423d072de768859a20580d4f04df0181a3d4879208cf86b16baa274a10302047c435bb50067306502303aabdfc4a07117f52ab643538ba2e65f56c9912262d84394b46924ade66df600d1d97bf2ad47cf5f10cea7b72c56eba9023100ff1c2824718248a22ece6e4cadc59b33acf34fb03d0d710c1ab508e8412d810a62dd3ff09363dbb9c618824cd8ff7dd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003f3bcd4942650ed1784242d35922b07f7c377f58c515058e664eb73aa85b248ccc69ff87cb95af5ae299d22d692e5b20231008d8fcf862032e3157f924b7648917734f6e108a468af452c467b1f284836a3f49edb93b0b290b1553602400bdbd545a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100add7c63d00b5bfdefb3d226d4cd99cf933f2f764ed6e86c07996dcb140c631ebf18c50e25fd829f6ea999c5d3947636a02310084d5d6041563693865fc7c93d79ed7de3191c3080ee9d358d5b3717d5b611fb4678e0356aa6660a20bab8fd3360096080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b1d1d7b9ded3af392d206f3350a81763362562c2e7211c14a95893e7c4d12e86b7a27ae0f5895f2066130d512881c36023100e48764083a6f79f644c4ed1e2f832ee4bf93f8f1080e859fb90c64d40f905b0452a428756ed202c3917f2e9a5fc610d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306267a242afa95c59e11562fb9cf6df4177f9630e4c06abf964bc5dec7dc957897f5cab2b4e2076bcf95de52b03b2350402302a959330bee7933ede872c86462701c91a71ed5ae1467cf9f8dcafd7e47a13941535adf320ce23f71d741cf3df68996f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230583e52a5408fe9d0093c9d1e2fcdfdc59e2e8ae9cb7b60bc4d15214243155ba07f9046e0f2b67836aef6308f63d1d4fc023100c3302bf7636e7736cba8f7693372b3a9f4a7feb4bdc9bbf9551700e1d99434ff15c5610c9266529a5c13b3577eaae70c0302047c435bb500673065023054b99d0d008e0249bfb3cf5903ef89ae896fb116ef35aa4fb60887523a1b35fca8b0c67311caf4b59a0618c9216a442a023100b77d62a75cae075bb5846e11f21526f10f0fff03463045c65a4a326a1fcf5543fd3bd4407c61cb887395e27ed02dced70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055d7dc40084d37db3055e832559a0d0fb2bf9ce7d855e0e1bef5b40659f9c1c90e15ceaaeec556464dcdc59e3e5dc168023053fec3ceb8077d01847db1909ce5a3bf5d89e9275b803fffa64984284a85acd0f505ea271b3f730a5ae02db7d4fd5dea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b9c1968af6a365f2c7b744d9063a1e1d96b2f2af7953a8688608ecb71672c8ef1e8bcf41e974a7af94f1d59b24a5b5600230593ee7caf1d85166ed14256c3ea480220e3dd3d8620deef4020c88badce227f6406218d91d4acb6ce303b2e9ef0190b60302047c435bb500683066023100952a5320fb7f19aa40234c628546c8b70004cfbd73ab5e80bee9e12bebde440188174014ad5561bd85ac506245ad2703023100c27d74b3da44e480b9802209e9b9905ca988abe28c8588a8f5972c2c961ec34b8f17f78207c9249ee33651040e3505840302047c435bb50066306402301779f665f0046bc3ced5496cc366b947abcc56f23b43f82d2ff34e71ea769487a4279d21884f7603621da922bb699d6d0230196fe3c17886181af41c8f19489ba1484a05334a9cf56ccc482c30e3cb9e4a3ae4da6fb4b1067f299989b14cc2a157ec0302047c435bb500663064023049ebe4baa0c6dd1826e7d05e6d90a198c78668ade2ed34060b1940b7b82400990d06da3ecc1f0b7ff5473880ce8001250230790acd1a10e508fb2af82d2a2286ccfc07f6ee1e82b462540eccb722d2a499696476a59baf9e0dcbfaf11baf087aa24d0302047c435bb50066306402302b220053bf13957d2255eaa495f243311078a67b76c7006b4ace9b85c310e40fb832d07ef6d84e10b8bf399adb800b5702301fc2c75b3ef1ea1fe2c2192d6b32b1e3bf1b3bb69a07496207945abbeea18e01424f1b87e20402d66f1589cff44e87cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100deac45222e4943f2f4d75d8bea206722ee2b778afbfd793ff7524686c28f5cff5f8dab7e71c60ed8a179988b95ada69b023100fd0d363619e2fc93f97b06fdcfb512ffa6448ab075c7ff34e86e30b6015264c5838152f3e8401c21e420c62704d3e6f00302047c435bb500683066023100ac0427989813a5accf837970e0aab9a27bf5286ffc267f710f59d1640a6fb321d7a4d80d47fd133b150f8b611015c82a0231009999a82909f3ccd4b8c584165e7fbdb313f56f93b48b80f7f3f174a7221066cebaad47a9c28574ed4ed8f26767436f6a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230160d8ead92436e0c8be110dbf7676294ecaaf9efea3447854d03ddecb09af31d26921aed7bb60c78608348ede78199c2023100e0f77446a7bb810f3b34444a2535df226008e2864eb8b9af8ba037790818c2f6c8985b0adb3a226feecc10f0cb374a8c0302047c435bb500683066023100fe0134c4dc245ad398cb024e1683c5e48e0d6753daf27450c6505609c002aa1e37124900f499ab0dba35a46874a6e92f023100eb7da40e011c268c8835ba49dcbf77265b084aeb5e27eacfa8934060b46962b4676321de771cf4a1cef72fe02af39fe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7897d9cf37bb6be54eeddb1a0f80c782ff4efbb1715dadd260c8535190bcdd3071562b01c4b8e11098a689874bcc625023100af1255fc3c52a89071128808e2eb2d300dbb3b784f263cba6d645df2ca0679d7b7f2d512dca704d44e63ff46dc8b2d440302047c435bb500673065023100d924fec754fbce5ca9d4c8be35c22f9bb44b0f81f38e2e7f84d16d51d681c28c6d05bc80781a6037f89d9c55817fa0bb0230638986e0e605900c857fccea5bc2be0ba3b3afc30abc69e099c48d6ed1f9ee4fc75480f82eec21fa0243528d0f1e2a9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303dcd0a47b4d0b3a896c484d946bc2cbd16267b0eb391f752b21e1bd8cf95e253a8159ca3435c6b6402baf3d23f1b1f6f023100b6c6fd6c6d06617245ebfc3418f108f441a16151e9047bd5a267b05c587adf0a1c35e5c0d7559a936fe681d1469038e50302047c435bb500673065023100c5046972cbcc85775d2b2e8d2901f9827c95edb45c8f3c6bc73963704bc13c4d28f58812153d057c3926a4b924c6953e02305d318b23b1676118ffc0145b4fb0a1ca008658716d519343c171f20c88ca193cd4046ea6bc6cf1236fb15efab700ca1c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ac7fef153d1c6be6ea0ed0bdba228dba6513a5bc842a1a0ad539af6320446418750fa9d22115ac3a78d813af810d2d9b023036f76503d0d27f64c47bbd2646707ea59d01c4e54805274153d6f812e6e358f31a558b0895bbff1b0288520bce3a074e0302047c435bb500683066023100ab97dbdad77610c00ee9b0bee1191e12deed1dd7a3f1b89be9df24f1b0ba4795dd899ec71b0282f85bdff7c784f9bcfa02310089e2f2d398db85262513e692bc829bf15242070ea1d1b5517642f41ab1a3e99f29364e4a4f705b8f7676af30f06db50b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2e45e79fee168f08d87ac086d805504fc5d7281287bdd1faa65fbcc2c1aa6f87dd920fd06e6ebb1bd35c0036a87ced6023100a6c23a22a38a6f1a2cf5ca0a3d2754205a18b7d334c5152d0f9909107958182dbc29f1be1bcaf0eeee99b7884c6318e10302047c435bb500673065023100995b8a2dfc486ff305b3b88bfd8e15e00a28cce19ae9fc26ccf51279016cee832de6a7b291164147ba15a4aefe77bad702301017cf99e7b6c6cd33706fbd98b1214455a2bf1bf2a6ed4395b552887006dfa9de18c543f4128f5f83de424e429697370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d5d46ac398e8e1dc3cb3438dd471efe2fc47e4ddb4a8b50a9d7c15e1605ac9c452310de98af9af8156c31adf906d4ddf02303bb32cfde66c3384bbd2ffad6a0477a9c3dfe63fa397223e953778cb5415817a921eb8bd1ccf48ab718c1ddee68369ba0302047c435bb500673065023039f4fbb5cba93254459931443502c998543936f73ebb0ff2942fb2701202e1adc15c54c8b2346f48953581f7b4ab370b023100d59034b33e20ded246ea0d973152384fe5fc282b2f62836efebaa28c3a6310c2511d6b1c9b1ddaa65a3a2df4e08879180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023076cd765f481560fa1dd1643b8ec7d805fdd53aa5dda60a41a1c1d334d92723a93b19ad80814e7a07a2b6468531027d2c023042910a6700651508f41ac77580bc3f14c965867b7327672f4c8babb0d9fae896ef9be04a136f125ebaf8de0944fd4f430302047c435bb50066306402302e5af8e417521ef79363ef895ef8dd6a8607dd804269f6308da5e99f746a1b14c47c4d0b7670a53845fc1bb2f81285fc023025c96450cdd102f846296a318ef2ac59899b1b0b77d105335ae49f6c366be1449ebf590cab4c952e576601f335d171810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ba53c210d0e8feee8225f3064ca31ce52f7779ce7b3126dca5674c4d23acc56fca59cd84fc38816b72bdcf86b5f6445023100e402dfb587fae62e69326dcb170474630952a7b74783af3e09b7edb0338e2482d153c163ccffea2b3172f4691b4c98d60302047c435bb5006630640230638928b5af98e546f7140ddf64889f33d1e6a6c93f1d633b76b2fdaa183f04bff90375e21c65d02ac71dbd12e00a4f2f023041f82ecaf0ea91b8d41df0500a0e936f78a4a5abebfee6f4218c78a1a284445f338692f49ccf473859f64ac2221ff40d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ac4d2a8a91468a4c040eae479c3f14f4c45cdd64740e2079cff88f83aa1097d659ea5e307247886b2c185c9223edc3802301c0f317db6832eb05a403228c738e2c0a881f6d8457953e5fffe07469ead929fa1517fb833fcc9570760dbcece2207570302047c435bb50067306502300e543abf3d07ae7e29e3202c4090826f2b9d96e7a505c4b0fda48fdfb320171de4be8e2edd9589934061828ea3aec279023100a21ff037319d108619653f61529b447836d0badbc2f5a5b68d231bad92f7aa1fb9174a4217ab28d4dc05995aefaf7e8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301405c2b37992dd5c1a023de335ba246ecdd0fbb9532ca8c808bee537a32439d910b386c6fc5e0a28407e333d8f5ab0b2023053a1ba6de8acc46571d53d18fd3810d77c4fffb397ea2fefbae404878f0ca79e95792d3f51c7ff7c776a32344d821f2b0302047c435bb500673065023037357a01ede5730524088450abf9c95a03f86a1428b1a102be61ff9e75af8ad52a6493665cd924423d44a75817289774023100cbb6ebb9bc45d9d2d654cbbc3dae8e09c975f69368b38bcefd2ad47ef0532756daf72b9112603ef4871e03548734b24a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a3cf738c1431bf062ce3096c215bfd56e70b27d159a78ef7a79cf8ec58c4bac98f8d08dbecc0d72da4be9130bdbab880230252b5722530a66c85f62c5c3664e56cc8cc2e44ede39ef82ee01151205a8b2a33f237fdf382c80a0d6d4c14e712ad5b20302047c435bb5006730650230579df0b8e962265ae92d6f9d2212ac0db31a8d13fc908d99d6f4d37c8735bee135e3d81a39748828432c29ef8692dcb8023100a198937f89fbd16152261518100d1bb7d67ac488e647653fc25f44070cb096259ed57ea4f1b0d6923f87c318059ad12b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230088e9458d6eb202191e9d38e44c156ff66fdd3e74b1e7cb40adcc10aac95ed92a8cab5b983b26aeb85e75a0ed9194e2602304203f482598dffaba2bdfc5d6b69d52241799cd3ce3f46f77934b8739cd8e3b69de3ff050dc4e3b9e7a382603701dc570302047c435bb500683066023100ebb9ddbdec0528449e696210a480f3896f1b93f9da48b3b49566c994d04bb406c3fdc54f5cc19cc48606486be2bd8f30023100f19f8ea97f2e7ed1699ad2b95f09d68b3559c0b4607591c3ae29415dea7aefd29bf1186ef482c9a05dea0179eea7d8110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7139545b962405bdd7e8e46c5af8e7c1ef791f5b1b4f69be562d1133087636731867d95248584b0184a0130db163a9d02306439a9cc221691748fda4c8894817c2e78c191ba96930b21dbcce6b11217a79f0a22b96677beefebf8ae10c9aa6298840302047c435bb50066306402300ff41090432fccc3ddff02ade8eed691262f33cbbf4a6e5c6c82ab841e371a27ca89ca2dcbcd03086853bed4700850b20230364faf05563ff710dea766f1d0624deb78815b65f8df995e5a71f89b1f22018909d155a2f0f64079c0e4533db940e8b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076b0580ed8e69e4406034477e57fff37d3ae03a1bda26681501e262eac5b2227c9d4a4860153321b31907fe530968d2b023100e2d0d3986cd744fa146b62a6430428c81bdfdcaa59d73c1028edecd56c022419014fa3fd4a5ff0217f21f97c6311a0d20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ef747a0b48d5c9f147954704666bb94add6e22cc16fc0f782f418bd71c865ec4df61e3d94a88691485a1c0d9f369c51023069d876874c2429b9ac62878937e2e95b14ed90d9fd1888ed361c7f4b784e938046ddeb899745bfaeb410b258da16b1060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303d7b7c6b17ed8aa8cb34c022de2652f880a0a87626296047429b66e4af0cd599961b21445f24649231e6545911d05e3d023056b9c8c42b87cc832602205aeaa13b84069b83c7f53e8fda15badb67c7cfc0c9b20bca84ce68290b43a4f6aee97c65bd0302047c435bb500683066023100c846a9e2ea5b58660633258e71657b934c099221342401edf16212fe889cd5e425952cf9f144c1212aba850e17662bcd023100e547244bdade550adc33d69647b03fbf999395b44dbabbcbf88e65b5a60107c3af07aa6d9215762c5bf4210593f5f39e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230350a72eb133ca4e3806fd779485d3bdb74a54f7b5cb99cc8cbbac876c418bb076e74bdef878f409ee5775baabe7eeb4902305d3be4fa211b791136ded3b2eb791b305eab3df2e6ed674972f9a414d0f03573371a1f0e9af86aa3f9b7a14ff1d8a74a0302047c435bb50067306502304858d6c2a58918bf2eb83fc6aec75f85f49de121b567be724823f6e2923cafb01d67c701b8e1533fb8a431a8a9867ce0023100adb02c67b17f1fe96ad90d3053de3b9b6e55b6de9c058d8f1a4844c52b8b0da640786282005378a655b8bb1f06e5adbd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf1ce9c39556fae8506dcc58d39df9bbf624e8e8319be7c2254d63c841cbc1f2626b2a7b19dadf8816226e6cbdcba41d02302396fe94edb01dc53af7f84ba0066e603ed17c05f6abc46a4bce3162f699e4c1ffdf5e82d60df7240799dc4c731732ea0302047c435bb5006730650230412718b7da9adfa27621d7e4ee80ded01c82f0492ac474ee6f90a5f7dd70f06827550ab661a992da9a1ae3a777d4e36b023100a98f9da4b015e1163506e68955f40b1cfbea1d35876a3120b2d726b6de6ce9db99e8c2de646b1bceca508eb2c51e68be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bdfc4116e3557a0532b744dbedf00171203f4422ff08bddbbf84d5f1c26a1b87e7e60a51a84aa8f4bbb503e464a179702310095a4ba78be21036f5abc4779baa17147ee87e4b4a20f6b6f5a4f6a68d2848459e71a4ce362640f534635ba94d57cf8ae0302047c435bb500673065023100ea4ab79a2759096a997519ed4bd7c8429d13ac3f599ce777ea1093f0a4d6ca88be5736558bd50c438b65a87a1b7d5103023047079fb5cbd9f53e2d53022889c7ed9b3efad45a0af092cf555ae36323d8d7bc29e6746e3eb26484d626add0308b38dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ce19ad4613be2631d2494252f289cd5592d87a83399354d74b504714a0997aade7ed71a37ce398a843907139d807c497023100e63173e7715d83a8882b36fd89b114a584137348adb83efa6c9eb2b90d68eecbf44e32ceedfd7d0079bf6745d6c1e7530302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100821b5b2608f8300663ecd24f563913dc76d42400a8bb85db7caf4716cc5c1fb3c618a06bbc2ebdd336f78771a37897c2023100cd0baaf0c30238a3593e41d6e5351190ead83a386086ce6b76d82233a3e8e8a4b0bf0de2caeaae6b8234d5ea12e99eb50302047c435bb50067306502310097e69cd01426d547336678ce4f7f2d95918152af0698fadb6ea0dbae3162469e96cb7dbed7d7f3c5d48b95b4801fd1680230260e35c8a4b9f63f40d7ce9f3b0fb7365fcaeda6f4e32180922d4e7fe7e74d3c8a9b303b4827c3c3f7f6ccc7863408fc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310087ecfa33392dea016a39becfd93109522e20dcccebd46f0df9b7ad5d7b5642111f72d51114ea345e3f67ef7de6cf3f2502304eb79a9079c2a6d730738b64ae0688f98814d0a6b99cf072e3f40d5a5be74deacc6be9724968693534e2dee4e407059e0302047c435bb50067306502306d61225e3eaa7ad223ed3792ea0ac77cfbcd64dbf5f05c8084b43e40b2beedd9cc4ffc6179bf4639762fcc1a8d34a321023100869c2c88899199a27f5b7ce0ba358f41625ec00084ab29d42c4c7c8506160c41989c65d0ca9ae4b39fdedb362fbcdc6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100980250900d4770264f586e7b1af86a8eff1bfc22ed2aefba37bfaa017cea05698ab562e8258d9bcac18f0dbda30735360230064ca492dc980074786fbc73c630c432134be396dffe66e36b41ab1f296d7d8a0e42fb8b3dfa5ea3e119c1ec676ebeef0302047c435bb500663064023012458e6f1f8018c60513921b176a0c48fa5cfac90d0641c28a4da261b29734e05917bf7a7bd73b5c47ef6290d9e9c52a02307d04b8fbb39193179afe68aec45d00c4c73b915f9f4a4a079d053ffd63ca17b16abaad6c4be1c548416bfddf3f0343470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302660e15c168176deae6b376e46809c66f4a26b2a28b1d14bf35c90ed0117330049f423d5438ac7315ed6f607f55d25220231009d631b38be92cc293b33a39faee9af1489f5e7edb7522090ed6f8d250d0a0553954f6c2879c87e6382e77ec31f5e73030302047c435bb500683066023100ed0125fcfe71b0d2243b2960efced792c6ba011d68aa7f6dd99842a08a2378f09eac7fc184f5800f0f00e8519be2c4140231008652036a02d2114a5e3cca0e320b817dec5cdba9dd2185a512b8bb75d25aa996c6d85bba62ed584f4f093e4e20ccfd170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303454edd51e7d12ede080ebfc2486b834fce6662799f8716a3f1f00f73e51743348fa0f3331cb367e5ee01db756536af802307aee37ec96eb9cc94cc3ad0226f8451f55e73bb46c848dc0cb8cb77ccac913bf2c4e503f602959aad795f0833ce420890302047c435bb50066306402305852d0c3d355c6139943d45aaff618b0677bbbcd1253fce0c3d619134134cbf09c11ed7db8760c942dc737409c70ac5f02302be63bf7749cf90dce821409b85789880287c1366954a0e888189cff0dd6801e7243d8c8cf3a9e4b51748c369d7915460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e7d2dde861bdd90d84358f54a5597434f953d8fc066c1e1ffc813a6a0843e464b90b3024708715ed7f90ce720ab4935502301c0dade6dd322bae84a86199f82670c23f8e2fcb72262d0a32e3c93142e7041051f2ab0b3007229bafd5a20aefbb52920302047c435bb50066306402303fba7624b6af2cc5bcfe46de5aed2a693612537983c5e5703fbfd9b291c41d6e4d605972f727c782c225330ad8135d5102300ca00634840d683ce0da1dc70f8a8c950d93d5c086bf15cd914e567ca7c04da2f09c125eff32cefd18730263afb67caf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230578f3e35177d4f7fcb23e676133211a95adc4c358c79c80e726093f23cd8cac0b37c0313a19f0fa39659304d84747564023037c8927ffdd934635e2ca09fba2a9781e268e4bb27d932d5d044f00b3049b1bbba9fa95c712ffddf269746a9a9b41ff80302047c435bb500683066023100f8a96da38fb6120fa54ddf788500cf14032ec6cbd766893bae327c6539d927c47c58e408bf15ae005ee3a408600ef3fe023100f88e3fece752e788a8330841a866677b7546661927eaf559dd3436b247218b69080fe474511af05d874dcc6797b56fdd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e85a9af5007a0ca4694f227813ec669cf056bcf44258fb0d90ed19b9a1ecbb0081a3bc3d3103c129822f11d3997dd3c10230389b9ac5c5df4d7aba94ff6affbc835f1f18985b5e0eb32dfc0cf2412ba5b925c5971d7baa3ee80fe40da0ca98fbbf980302047c435bb500663064023053e3dc4af163ccf21f4eb2018bcaabe1c6e4faeb47c9ca0f59eea725b78dc081bec7ed6eb6d174823e944d8770ea5b1b023000a73439e5c69e63f7d07da5c991467b4d9e279f6a6de69ff971757eb2b59015f29a228e93caa74cdf4cd4ad32c626ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b971c0aff4d5e00459dfdfb26bf03dfcf48ada0cb84b3dc69da37e3905f4df2fb0cc90cbed10fd457eadda4618b33860230133b1e039ad2969909553824602fc59d9168d49465fca7444498f1e1ceb5ee9977992c6b46800425009fc76fc3c0029c0302047c435bb500663064023058325c85afcf59c16e0071707baf3f3cbddb9d01f06f889741b78ffaffe4faf23678c22d1fe66ed8c16dc736e813b7fb023021b37dd00985b6045f2a53f50902268580021894945e20b3d14b46a2d7fadfb651fa062fc6bcd1a85e1a5bbc5254668f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c80a528fca5073af61531eb893bcb707838fbf99918ef1d4865560c3b47b2db05a575671cd7539b3b7784f48b468d4be02301a28924b8fb3ca98af4d17cdfec38dce981bf52caed214ace22c61c3043985f569b856f55ea93ade84d240627af6abb90302047c435bb500683066023100f369251f67daa6deef6561b2c8474603e799115131e596efe8a29e23f062d4868e4e08895a0b62b09d9e1b9732c06ebc023100a68cde3e72d7b32a7fde185721f7ca82ddb611201d204f7764458c0a5504373931923ed2c530d98fcee8eddd077033f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023066018616223bffdd2da5764a054bf8457741975388ef17632804f7be80a440d75a07514e1825654c17691efa617bcb450230739a4252aa065337d63100bbf74ff25d74185aed630fa5464445e2b3862b2b364e9b20c9eb251d0ae2cd5b47e4ff40430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304bfbae5f7194dae0962815cab2903af8b96b76855266fe063c8078546fe78c12f9aa9fa10e5bb40fcda8ad6b882a9ac9023100a632691c3e76556bdeeda58721d30d5f0072f37daa2a6b8efc03378ab813194c44027a5d3e08ad6fa5615ec88191529c0302047c435bb500673065023100bd6c1f0be7c1bfcef523092c987c3e6cfa35b8394776d285d24f3494d246dea8d957a742bf1a5c1e184169f0b6b7699302302e42622a5023a6c890a30a83210cdd28f778c8c3a1de98450d1f8997b581efd0ce1dafa766b9c5d6fe03aa6b8996db7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b3f7089f0606973f648c99c434d9339fea812fa30a21a50c529376d26d15ed18b927e924e7a682f8dea3872a6ae95ec023053c674edcf270fd50959dc36f15b8d980acb5bf513f955394ee9a76a9d027bad9fa3ac768ced682a7e9f11695f25c7150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d536021d33084af2766d935835504b53444612d6c405fac36948cfb5339cf513fd376900c0e15b35ae6a3b9c7ac37c620231008f713d11a8ccdf5abc3bd3351d18713bf41b0aa6ef145fcd643de5652dfa285d12fb45d10fd94adb6bcd628d1a7e4d2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307f6b8da3f06228b1177e62d5135668b17f0935d7221b6536ced1d4cf3b63f80e5f54ced574580b2b17157182524c031f023100cf48301a1142a3cbb8aed0c5292e1550f6ecb14825f1b1588abc92ecabcd3d852bd82a2bd64de0726be8b1551e3d5ba40302047c435bb500683066023100c17c099688febbe7222f45599361532222d169fb90b2de0f2c3904efcf6491d5d0ce1be9a9fc776abba41ee3773de30f0231009c2ed1af8006cd0ee2826cff77b6d74fd364b90a792cf05809d16a2fffd9c86e09377e7edcc89afe4ee0089b9fe675e70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085c9001f1042ff4778a8ea14c7b918f41491e6a5562894160c9e483488a08f7626d8d0e22f4d88696324b72ccd6739b602303b5d97435f729a6e1f8cbd22d087eb8b5d8af3937ac12e212faa3d3fff05a3e90fb1f902785e2bcc565fa6484cddf26d0302047c435bb500673065023100c5552d035057ade318cb4d3ef4b3fd6d54c145817746681e27c2d5c2c1a0b41435564a19d01c2d80fe090e55f5648a8d0230532deb6eaee1cd39f52937b010a782d3cb9700a9bd7ec85adb8d57707c8ad96b442f36b8e2536095f9d7e6c7a3c182dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009e334e16d4e83a8c4ac433eb03aed4c79170e4d443892be692663a134e2832d455fbd73b0d132571cfe509f466fd8dc3023100d07f1cb7c33ac0ec85248adeba98f2fc18ab484511238352d6c98548dba7f7309fd1095e554a9ff7ae1d401f2a5f8cdf0302047c435bb500683066023100eaa08938374b0e054819a84287ca736ebd2899fff790006dca42cf3807688d8f403f5150a289052e39d90c681fc565ea023100dddeefa820dc9c6efcf96236cb6a574bbe5486390bba5f6859c43f0813d646d6b1e8c4b9ed5a600dcdcba00c0f334deb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009eae255861e188497dfd40ccefbafc2b3c45c0db932044a877da6d29e3f4df60ca25655a5a6e0458d88f1af13be6278f023100ed3f074b76a2fb67433dcbf1c4906e7f5a7d6d756064394c7d11a8b4afa0f1bf78c3a934e8494934d0c3264382d987c70302047c435bb500673065023100c8b8b68ae445aaf3d20347f280f5ab87b5c4dbf5e8af631f8e2c832096ae42d45d446e676c28cfbfb8b3fa7de559a69702302e3f47b20d9dd8c76c10e23dd3570fd2df2179fe2b545b9c61769d58e4f05eb741809292438e30d3235c4698717b315d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230690f9727d8bb5f0475a635053f4e45fb982f4cc508816a382104fd9a8b4f56c8d5b9191aa2c64cc3652c8e6642237817023100faa43fea8a52d69e15103fbd7221fc90c59f41dfebfb1644f7b28c3476a68cc45eb80c7997c5bb9545a01f565e7711af0302047c435bb50066306402306aeba9e0474eae67adb770032b3f6d1c464a0d03fef5dcd0adaff9a2b87b040416eedf5bd3e8311f742032206d62bd1a02303b2373c20321e555751c62401d25c8ca3a52e3cda13bb70f7f2bbe5b2887f15bdc16f57f73e784fd2d73d57c0c069e180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301cfa162b452ef0075f41c658433369f6b0180679d9f3d9622d0496a76adff83bcf80273e84f1bec657c450f71a829b14023100c51c9a00f65fcb705c543d32b00bd60321b0e1221297d2e2505b55f52fdf6bcbd9d6970b3857aeb6120df27f29dab20f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ed2e80f6d1a256336c9449e8c1a434f8b1ee3cb8a3e4509767a073025e4c5342a6ab03fc990fff7da964c2864a6a315023022eb0be1adc2f52100106b299d19f55764d0778ff456994c176f3de06162b41909ebff7288c6c829fdf09d09c79fbc650302047c435bb5006730650230499d0c18aacc7ef88cbc5ff0c632b20eca117db075ba63094259da7f91d972b7585813ffde0d804bec9107633aedfe7d023100a116b29d8fa2a54f50e2252dcb0af1ea915b654a16c362b079148718a8fc60293da5b5feb9f5bdcc8828ac2e5cc612740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230723e163cc66e8c8399f6c017286e1fdabafb25262ff8740588b504aa9d8432c1d76902b13b753b9cbc9943872dffc3af023100ef59495980facd6ee13b0d715a5b0ef2abe441634e14cc4224e5c125d9c936eee3646446b5e24c2648040c8b55f392290302047c435bb50067306502304f9b26c8f1e5d150f4653c84c87b6ed80e124911c8a44a43934119bc7e0d3fced49bb02c71e6b143c399396478b384b9023100965ba3238fa78ab9563e55117e6c86d6ca0980692fe7a06698f7994776a92ef5e8dc15706a61847ec4c27d752c279d880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd63d02bbe3942efd0900cf24464c6f4105828e41af320832dfca2a22cf768f93d0f85b33ccb68acd4dd381d2fcf83b6023100cf049384f23a8c18834e64deacc1854ea85f78841c75de70829035a5accd58d1c0304ba1b0043ffc775c219a000acabd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023005e9130d82dd497b3d65aadcab4b4d522933958b07dc003dfcc594e7360c298dedd57fc7ffc241a1fde9ae8f924f7707023027eaf3e0045ed6ad138fef3bf9d3b1e4c7d5447338a8a71c931627b0ece33d7f973168bb99f693bd3d85c4aef8978c940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dbb1aaebf92758568c348f6075daad4682b9f10460d0f6a36040a78cb5c0a9b21239db6dfd015fc01819fec01f6c6189023100ef08a629429f2c061ad6a196d7352f5b729798137dabf0063d68dcf6611d2ce341b59941fec1596f5edebb76b07af97b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023021e0c395b2862aad621ac9918de68bf3214c32ea8252f5d759ee40d0156d537e5ac2ae4c857a4e49a47b3f3c0056078e023100cd906263275a3ffdfd352dc4953dcc123bdb2b439a812b24990c3cc94a3de6e4ca9ef528b93dcc6e75a0b7d28e5f85300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042a07ce3a3323d646493011226a4081607d66f1511f248d3e4c03d3466cca6417b7be3ad2be9176c7ef122db66ff526a02310081b4172f76b43886482dd92ab9d34b6b52f6ce68cefcc970f7736d8a5ccd67cb2848f394b7a8d46c419ba029badf32e10302047c435bb500663064023022309094ea346a81b62d40879f19f7eb56ad39e7c842349c24efc8487165373bc5739f45c44fe4fb5297abbe055c9913023021c0f0616b0ccbf1bddea57719bdd819e662f9427ee93746ca6396530dfe3e85b4eacab428fa0e3a1c8f55850249e58c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009b2ffb924cc8a06d591e45a3e80523cedd2691561bb813c5601d4630aa4491ff5bad3697219b841fb553002daa4e4e30023067a2810881815415f0fba18d8ffc78517a2344cc59587f9d22d09d69a0ad2a3b98e1dbf78aa58cb77582d24c3199d6290302047c435bb5006830660231008ebc5042dfd94081135e814053d084eaa5501e18fa37dbe76e7bf324f6bfac82f6faff794054e50f3574896f22232208023100c2241b027042a4b600a704ca246548d9de31abaac92bfdb9774a19349049aa4c732a283a963721d6b3951b5c0ce658e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305aa712408d0d9b6849e83048d620e83997c63e158d54b4d9e713c26af9d47a404a967ab4f70957f12a0f083dff9f82d9023100bac4795cac98022cb06fd2e4f1e660e524929477c5824e636851abdf8f0ee6f627ebbb100c858199ffef27ae765f52cc0302047c435bb500673065023100f5e8907dd0326edf390c9b2b4682f0def12b13bfb2b8b8280d9ca85df637cc149c00ebb8abdaec50a95ac572e1f1d68f023042392963f06a2f6b30197e0e61954411ba0f03652c22614002eb53bce48c814790eb42157619ac8304ae26132bdb58d30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b192b65fe16b2298ff8bcc19f76f304096ade7cf5155ca0f94b3938f03702c8c86cc851ba0afbf252116fe9bc4cbdab402307d20d7ff4df1562e39720dd41b1bec9116f2867ca91ef1beb8873be4c7936456329de60091da30fa3153432ec546be8c0302047c435bb500663064023042a452e445fa5cc71c32fe9c6230418b4a93c953edcc957c058b26fc0439e84013e9db4f97fd4219ffcd6498ff5c208b02307c99dc87ada5afd92633ceaf7f5dcdc0a2f3ca0acc424286f1e4fb8b205f1b0bd2c5c1cf378cc46b71f8a7caf7ad52230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100922e84f2611106cdb7bb911aa75e94536eee8e5111af631854ed9a72e50da7a870f4bfd51eb796660448f7216a4bc05b023100b5d12a396ba27da27972606b31df7a4e959cb7884113cfe61cb3792aa7fb3c31aff4da580af669795a5d5e85bf37f3d40302047c435bb500683066023100c2aec7e9e36f249d035015a7d62d4f78c50d43d0eb33d549f89acc37010a229cd9eb6849cd7cd88f1bbd6753346daa1a023100df102e9cb1f48a1b2176034da3144348d468f8cd31065187f40b6af1a9851e5b7abd8fcf628990a2c320dca034a051820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e1da03b22e2c6b02a69e560b6f446bb853d985d03cdfea167cbb3c3e96f9e13097b829ed5882c6e4dd8f5daf2ae7d6fa023100a8029f39fe6b38bec7aa0f1a90060a1c28c753424dc4815b36fda3e77d9422f6708039605f453cabe347894e055241590302047c435bb5006630640230327328c4423f644b9ae44a23973b72b8017740bf8c405ee3a8f9048afd86086f0eba1ead669354158b1dc6b678b78720023056e4d27a13afffcc27f2e5900a852a2e39165ce57b368a1894ae911b619ec6f9ab97854b580b35cc8485bf92c0c5effb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096f494632e83381aef4072579861bb394499bd584b0778e7543e4ebc6ada93f74d055e15d6a90d59ff3165e11940deea023100b12c85e4c4b9d2834857dafffc35233b1b3b9d76240d328ff3c28a6626ae989bd69e57017e505fa88de08d7a57320c500302047c435bb50066306402302d78b5280e44bfb00bd75f32e53253360aa69effab37b46493687dcd44813cc1105a175bad4a335ce26154ed158a69a002300e98b64e66fdf9c1de3f7ba5eccda211b57f70723a4991853d2adf152cce03b6746017f2a80a595a72e02836fd7314780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b75ee219ee8ddce20e9c35102599dc3d92b328096c7a6dc528d1c965bef9231fe9749935b6910c4ac6b9b6ba92170c0a0230291cfc15341ab6b5185f736216acae55fa8562d99bac02a6bc76bc7f60343b509fcacbf743f0d6d76aecb3f6263febd20302047c435bb500663064023032df6b14506de7e233afff3eaa43900bef37030d0a0d8a7670a4781e90ee0d6bb565ba0b97f8819a918e38d69734433c02306f04021de3eeb2131afc0d09ab6f06647c397a667ef52f486ba67951a2fb4989a9277a67f067c2a54421472543f3fab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091fa2a0faf7f7d88715b54ab7503d7d0c9289d97a8a74ab3a6ee1f3a112039aff362e7b7b49688c540f5875bce8aa02a02301e2d67b00d051a21a64f091550af0d8e5b6d279e1248bf9f878642b7120779b27742345619d23479dda7f032b712863c0302047c435bb500683066023100bd1a74263634b816c7db5d0be6bf34044688937c401ce92f9e1776607364e89c855ce8e4ca797e268749bda2fc1a4fb9023100a7b78151ba871138e495d586f883a63a68886fc41e1f863318e6c9a481a8fff62586ee13353883245e080cad48f5e82c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c9222c0fa98f3e7ace6938547a12f629bda32677d03a244d69f4100a3d826f387b2c44a8608b29496ffd951b1d73bec023061756a4c18c289b35ccb9df3d874b01ed4b2e970f82f6ac17cadf7e0c6ba0fc98e49f3ea3dd1c0a8ce17b2f4aafcd1bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300bd8c6751a7d3da78c25dd473e1796e93eafd02cfdbc61c0abf4aed27017d2670bae43d7de3a1b1f7a3abb5102c08e6b023100940357dc42b22f6a1348b8092bd7b5e1b23af3bb07a100d2d2f54dcedd589bb964baf493c3783584d55a2b7277a9ce4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c23cb2bf1358937685c684474cf250a0cf23821aff575ade92f4e22d262ff954219658f333e51e30c7eea740d05caeb50230789d237fea3cc4a405558adfd34612aeebe9f7541e8b1a5548c8297ca53acf79b14c08ee69190e593b9e4593483ba8300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077899532741e5d9f57686b670a991fc5b6294e6c66c405e5fc3c08fbc85daa94c6f2be2b8da6906c676fc18a152fd70002302237eb545078d4cfad29162369034bdecd8ff44456a2c443a7269b0385108b1a5f6203bd05a54ffc30231933b6bf67310302047c435bb50066306402306aad1e2f4160fe3376fecce266dd99c95e42b7f88f4b0ef7d27fe7da47de914ed649f540f350fad4787ba7953db711a5023032ff35645debdd6d35d465f390442cd156ba15a0cf96fbb95d7665992960a63ec69ac5ba0306ff31ed71e68ca0f218400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cb3f03c963dbf0b8e5a5863656e791491eb8a236503b0292668d666360187d4e277a62fdcfb9eb23932b0411b2861dd0023100ca493dbf30c2222059ef262af204636c1ad782a05de0740f25010a9aab6cee6c0c273a05799cd35f2a40608dacdbec320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028c52db4c57cbc54795b1a9258bef348df3735c24b23b5a4ee45f93039c04f210b9603693f93da8e3489f29e1cc22b590230570048831ce54f665e189af7fa8d6299e55c5289b558ef6ab9f0dfe2ebad4958321a24b34aed5ed5acf963595ebf06ae0302047c435bb500673065023100d3aed60264fc8938f4bb6202a8a5af147f0c6de6862065a5624c2a6641bb4932c607456e6f542195a03b8bac80e2f34a02301f387b7abbfa0b0677b8a7dd3f1bc0d52c639b40bfd88dc50fe3236e39e6bfc0446f4b04ceb80f60da92f4df440f74100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a616c626774edec6b7380b89a92449e70d4ff95d97012e385ed5ccd400d059a9b5e8d707f0ffba79040270bdb8c1f85a023043f97e259656777751361f78efb4b6bd355940848826295f364f1a1b207ca8de83b284389059f921d5bd43bcb77660b90302047c435bb500673065023100eb458966cf3d5399332b434f7a45377f416c6400d4e7fc4a511be6b9252d01f3424e172ede394d41297151066a02d674023018d00dd8a77f4bf5545b83be04176da5e11a855023828081697e4db067034391e7a6a177d980df4126364d85140c7e9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ed934f4bb4c91826329846cfbb14af688d247bc23b9d999ea4c5b2e3c2f536f5af49324633392dea931efd0e6304489023100ef5729cfad3fbe754b0ba897fbd88d1bff6af90d70c4d2ce1701b3f5df3ed3f9943a96fc645bf294b21713c8eb4314210302047c435bb500673065023100b1448b05d81d108a6ffd2f4357b3ab3f1dd443d2a3c6f6c8d915331c3569c4d39f3105f7e894e18058a637d71fe1833c0230018e5d738f072f6e2b6855924fabbe140fda59c6f929e7035e5058f804ad66efb8592be1173f8564a245c294db4ace930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b66edb3a60881873a16fbaedf3edba4e587ae82397233aeb43fe89becb54c6087a0e99b9de9508e9c08f12cc7de9446023077f7a2641e444f06b2accddd4013063d1767d5a54459b265f43eb08c520b45e98e5055e9b00821eaf4beed2f1225ec8f0302047c435bb500673065023100bc83bfa9841bd7e622a7dcdb3f7aab18d90137c01d548f63949be4edba7be14d2fc34de885833eaa521f5dc02f6ccd2802306d6c691ccb8593b2fafe7fb2930a81c9f43fa964b6cdbe61baf452e7220f64e3f5a298165af1134673eb660d277817260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1c62b4c74a8eeb9b3eb9c64c7c9ead230b19bc0a59f06dab4f9134703c328997120e93a75a500e0bfda946c830dcce102310098a323ac7f91d9e7d86d4414884f88a3ef10f55440a18789004a7effb691b002ee8596b08d7b5165b6f979eca44459410302047c435bb50068306602310084286778910a1dc76298c01583daa830bb961399f5d2057a803133fa5d7a14c3e07a343af6af3b7962d5ae6068ac6601023100d956d8b81e60f5ea393c88aac98e3f0f92d5f3f36f653912d9796654d8c320f1e72f4264fc3e0add484e7b7b2cff7bba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5c5dfea3f6ffe9653ae01c7b554ef8f5f3f9dbf009bfb409e5b1f173e830e591daf037cfb36eea3ff4695b8e1373dba023100aa9cf411c6ac0d6b24d36c1d27cd26b94e46880992639ea70fd76f3ad564b35af97022fe64549b9821ea70f2a11bdcc80302047c435bb500683066023100bc2f1e237f93b764bbcaf769e5ae4d4a8aa654df2e936f2011e913e3c4f3855d969c93fc90027f0aeb40a3cff38a2fb3023100a681982590c6b110d730172c7149a37301ffc327797d7a52bb53bbc82c4133c670e607b20fc206b4d7fd91409e2fbdf70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f18f93bb11a3a65508cc58dcce402fffb9312ea44e80571faa8aba694274e1d257ab8dc788dfc335778bf0cb80dbeff8023021e9ef8bb2499c30d5fca8a7ec58bbef783bc34972c93b58324e0eb31bce1d7a022281703536d2779bf6b86899ab8f200302047c435bb500673065023100ac35083c7cfb9e9c04e33dccedd7876fe29a202f614036724b0eecf21b110094efac139755353b3dbae18b0d55033a030230479c5a8636a5b72bf675ec8db60ca5b1000137ac233cd36c2516e24f89c85daeac7e118bdab4a3946e130fc8f16ee4a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300db97ba907aa9e18d369710deae6b6f2d97f205572612df3eb9138909d029a98f1a5ae2b651799081056606ade4bec37023100da8698e4be349244486843f0e982b4414a60be721cf4386d5abae47c83d65b3b571b38426f1d639c821932c7d5b3e47b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d67dc9d7cca4eac8949dd730c03b1d4d21c9976777473daa8fbd215a2415e4781202f48d88b7b4e165f0603ca3b2bbf102310082f7ebe12e877d03fefafb35e0a83fd20d80ab58cb889473e0c3d2e6114c731e0dddfb41f8a5c4216316fda375987f680302047c435bb50067306502302c9fd747d824dcabf0c511b78070c03e9e71439753b9f80fc889f4532ef7813015b822352a94dd29639d009b9ce1aa1c023100f70d39e97b2b389c7d56101ea8ccbb4fb481fc257e791d79cbbb6b904923c3f611f6749e05cf01f4df418820c58cc8970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008fd6e178e697fe2377dfd6b66332efde2b54fbdd30efcf7fc27df59901a22601e0bb9ba1fde67cab965c138f95d5ef2f023011ac57ac4f0ec1e8ad728f5aeeaac4dd770637ff4d682930c0c89325125d7ab68d2856aa8f6aa2ec656fd36c72cb5b0b0302047c435bb5006730650231008881ec549fc9f1cac84240066498db7930255c9866a2f36a4954153c0efc68bcd1ca812f9b11b413f5380093684702220230578da89d3407a980d7acd1f7b76d5e2fb514e7a9c17d6b183805b768522f44180a6bb43bfa21d0a4c5c35fff8b5a31490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0dcd41452c0f12c2cf88741a8cd20ebfd96a2fce5b97bd61ebc4145ab3b0c7deec2141f3de1fe4ae8f190ae82c8ded30231009a0f82b3a1c2f101553892bdf13f68b5f2f82584eb08529bd01fec40254805c6ff02a227baf31fe9bed5b25cd46997cf0302047c435bb500673065023100d44b19b9ed796827893106d57183c1a9f577a8689c393dc8d2056b4a9eead077c0ffee3e5658bc31b8863b4a44fa57e602307e31ac2abc9e01c1629939b975766086030517f94d09dda1be55d18d7f3ef9e9e7c4c7f9802f91f6084a1f97f132a7ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310082e8aa360359f2a1864c437fba892dee5e46fd02b057c0e653ca4083b5b30ca84709f939852d2ab89ab6ada942677284023100a3139ebbb604c42147750eb3fd8b43474ddd27100f8338dc6d7e4d8969d813d7937024669c0febdf82610e72d28c75b30302047c435bb500683066023100a5a8bafde1acf88ca44a97fa320de0c34eccbc8804140d6af9f78b9699868785a44b8622f0ae16ea38e6b1dd946fc9b9023100e9dad8205ca40cb6a161c446c1af58c1bc1a50757508d8fc88c783d33bccd8e05a1dccda5f411210d22fdad4f7fc1fae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230370d85b82fdbc75e0faabdeead14c10a672a9276b7b8c961afb9886c520a6264849d8760e38207ebfd9f6ee7c923465202302fab248c6278c48d2624d29d0da97d6c7123a43442b73659b717b7870b4b41ca0699180418537bd9bb3f3f80510aca610302047c435bb50068306602310090bd07849c9052c1bac2c04c4777cacaf8448e92d1c9e0720ecf46b3b02069e50a93183d6725c584ef355a93fe1e8de4023100b781b4ffdcf246643f3151bf11748ea8aff9b38b503fce9608652035133a31affc422eb39a103d0997eb5589475d5cc90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b6dacea73cedd7f1c7c1629ef56ef86355c784816bb7e38f57d7dda6b248734f3b79b434c4996d4f6b4c82acece4daa023100cdf633f6f82b6748a0dda863cd1b6c2bc0969f920ad66991169776ccc6e8531503cda7720b1d243ecf77686c9e95782c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e27fc1dfc687558f8f0d5b49082da28aae8f15ae6ab2f1776f020137610e34e51caede15915f1ec9b42382ee5e4831b023044f49491a1f7e5c27eabe1989563e5d7f519d777aa2d55894b85152ad080cb2f2a0218bcc42b046f5b900a2f862b8de10302047c435bb5006730650230304aabe24e00fad62eeb535d02541e4fcb8c2860f9cb153538a987af2732b08b54e1903c9a5718c9cd280df9a9c46a48023100d83fc5ebb6d936d76d4ae3a0cc138900781b2f58e63115d8ee682af9a09988aa3a4b240d2dba4dcfd2b9cf6bd063e78d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310083810d79b39a5a0d75ae63d6a65b6e294ec830dfeabf347ef3e9cdf2a9b76f3b97f09151695ce2886f7d39c9cab1b650023068c906ae6e338db3dbe4b8c302a053239a3ef0d0080ac6199a6ef4fbed9b821535f63501ea9bd95e8bdacb9b453f0e5a0302047c435bb500663064023047f921dac6cd595444a0ffee8ff4107f4e50c0868c47c83659ac02cf27925fbb4824a27e2d6bed5c64c9660e9806831c02303998b30c933d5bbc278e25f5f2566d15d7aa6cd81036536d253abab180554f432b7cd95acf001070580b69e3fd90a1000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307329186ac114e8a6eaa0e66760499d7b5028e031b8be304a9eaa3399229d9865532c47eaf0f84903d31ba0bbaeafd738023100fccc4319326bb77914e6b17af25e7a14c86edd7eff28b4b7342cb68bcde0e2f701c0b82e61ee36808b1651663b3981ff0302047c435bb500683066023100da6a2c19637042aeef784bdfccdf1ed3b2982a086f1df37d8f0c20007674cec216b0d57ed1aefec7ad54ae964a0965800231009b74645bed9d591f34f05991f84d7b34cb9299f827de84db890aa8b85e6566738103776d45718443d0b5c89b29b29e0d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230144e384c32b3ac47d55690568bd6119eef8c23fdb774f10f97c2d3a60609cc0a9c0304e4e356a0986d81c102a00fd8d50230412b3fa7cbf4f19ffe3e2e2d2b7c848cee73918f4d5c9bf61baf301f394e2bfe3da43a21f10a992f2472b3c000cea6890302047c435bb50067306502303a6a38a47b907ee712c0a6ae1e44661952548fecf31ab0085efda5faca5d661030f25e05ca9294c1af9a949da3f0ceec023100dd1897789e5eeaf91f64f7a352e325110be2518e543e9caec3d04184c5fa04d483c16f9897697856406fd5602468851a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305056a9d55ae85283741ca188ebc875109549421f5ae5bb2f1a6325cdad50938c6f5a84b97f31035b0e00ef67fc091d8e023100acf6848af3f6bb1e4cdcc05ae94424243f62ca9f07bc35125eba9b2229b6465bd2fd917a6588aa0d58c6f440371e4fe70302047c435bb50067306502301e116e36010ac0d6121390e8810c4d6e0022c8f0cc2659c8ff71db530c81e1ee8f5c4b9ffcfe2317561b37e5feb9b8da023100d8d0c6812ab21ab70809aeacfd786a97ef28bdbf4200de1cf3277a8907655c7edf9bf458703ecb29286e5c68d7c5d0670302047c435bb50067306502310093f58b3ba205029debf410f87789b47a50b24f4f1d9010cefb10156d3ddcceaeadeec800cde205ae5c1f5787d1d244a802303f90de2a640ccffb9d9989bac11073103c7103d8eea81eb74ac205a4120e870832cb45518ebdff1e5e1570403bd9a02e0302047c435bb5006730650230785c158180c506641291abeda07a2cb5c767ffcea3ac5739daeaca481531ddb47c8a0a031f99dea95800a6445c1046e0023100ca600201e76ac8177e9a5ecd27d14eb966fc0cc26c4be7e378c72742344712daaf04e5916b3c4dccbaf8e09a9a52add90302047c435bb500673065023100f3930dad5e85af69e14bd4f745a6291e938f88f3f0b43aab51232686ce1c8b94cf62deb62b5fb403bc216b5bea1b5f740230160a7c62c48e7960fde82ca79fbafc62ceaa30bc5ea1a880ae31c6ce28964fdb034d6b56914be84e94f950925b1e4ddc0302047c435bb5006630640230415712188f18e4afbddb83bb37d36d5ad92f4a6497efbe2f49e693aa08e848c08e969749ac09b9f815ab6a4adb1379bf02302879aa43a32513fa52c842c672b04b22e0f739d17a987aec2afbb1eed30894b59e3ca29a40339f20bf48a61b340f2bb00302047c435bb50066306402307f7f94296b8c2e4b89c52e3cf68f2140793700db9c801f9616d801f760d33b79a33e10e2650299c0da47cbca1232fb9102307e153acb87d8dfb644bb9577c8046843477e6fd71a31050cc7537399f2470392f379e497d74257f19e8f795564b1ef270302047c435bb500683066023100b28fca6dc30533d0090e90a49d71179fb85cb2d9e57bd62bf1416ac3626323711132f29dcc07c3ecbd2be8ed448e4adc023100e0336744e911c1e981264ac507f036374ca9bbfb8cc591221af4e2d6502fbfcf4248aee3b92ea9fb487ab9e5eab39ce80302047c435bb50066306402303709f409223dbd47e6f2a11102cef6dc7ef2fd7fe6a9b6de8ef71e2cd8677b1bee102d83f8e9746e66e7d69222fdf7040230281efca76e125c7a428a407fb6973236dc373bb1f0dfd97d885e28a563be419869eb6b0d2711ab5cd17e8243d0e8ab270302047c435bb500673065023100f57d4aafc88e7fd327e4a6a5acce45ce9e35a738bc6cd8c5301b9249de281f8317bb050419a8223bab84fbd09897780f02306b85cb5633243635f3d5f06037ba499039e4daf283050741bc1cb6d3ec054a45958602878e8abdb7285657b07a4cc2960302047c435bb500673065023100e17938ae5a9b360706e46ca8106698a98b872af8538b72e6baad96d157caa5543e2865e565202315dec07acd057768400230499ba5f21bf851d8904af6eb79ec9f791bb5e4f793ea1f8e1332e69f351c92e3988f2da68d8798a8c26ac8bd6453b0ce0302047c435bb500673065023100d9ff21653e45925f0aae61918198617a2663c12f4f925f327ba7bc7f44a4f6697ad47050cc54773277b42903b1f666e40230340f10601a3a732a05a0917d01bca23ec2cf735098d31655e2efb2c796647ca319823c63a3e967d8add03f965b522cfd0302047c435bb500673065023029098b597dcd2bebabd0dbbe09298f9e6c42630e3d77fe2a318a02bc618600a748f0b92e2aa3f4ede84884b4af8757800231008ad33aeb0ae4241a636ce2e1185a827350e927702fe83b213a0caf46e1853b7da1549dad46a46e0d4eee364cea4dbf040302047c435bb5006630640230663e93bc4b27e2104489aaebf047045febfe680927ee8f3105907b5246fcc8aa6bf83a989772455605f907f11dcb5107023038bb06c5cedf60617d2adace0adf78ab041bed4c9fb93f50340663d89e1a5a239d4c6ec3184a96b97058ebdb8f2a27bd0302047c435bb50066306402304ccf81dbb6357daecde1be48583e1a3b27b4e554e59421d40307d35c6edfff778874f6b21c04166651422e840c39b18c02305f145485035dbfdfa92639af55d7dedac2f91d800111e1141d0d5599240c9ab3d84e68a65c388739b068331b72cdeec90302047c435bb500683066023100e7f97ed7dbf8817e30c302778960dfbefdc2e83d20b76c0bf4904c0123ca775503482872263f434eefe9240bf810b3d102310082a15add6ec4625dc7f7ee15866807e7f334b687197e64b3f561948d80c3ece048ba9e8ad93aca97790328db29d347240302047c435bb500673065023100b7123ff5da72a3d84abed8efa5512220f78b4c762b7ebcb701315dfb2770b5aad5253b8799cc16a5e9e557b48663ea0702300e454cf001203a32324cf7ac630e4db1a5ecf15538220ce8d722dcd2975e041b7eacfadd1a355f2c78c23e650372195f0302047c435bb500673065023100e2f92e9898df6af85f60a7d3a960093a375cce71d1c21973607a4c1b779faa58b7b413bda139e125ce348fc6e391509402306598b473535b18e7eae119dfad1925c4b3884ae74c065fa463d0985acb7368ec86568a90366522304f0a4787597529650302047c435bb500673065023036b49ecf718f6fdea106851054dce72096f89ed29f93d24e90ac8eda8e8d208168c77fa58d4833ff9dc37b2c040a98ec023100e3a27f69d78db760f8ed493784d28ca34428a1de1938ce9374ecae86cb1ff3ef3cba358cf896c6b34836f3887de0fac00302047c435bb5006630640230661b904c62cd646d92404d3bbb425c0c41758f22ac4c144d43a5f8a6f41ffe51a1683e4fa7576e245aabe04474777d7e0230417b9d09bcd6821ab0aaf5023e37448e91eb2edc32c82a1fa3dfe413aa5249656273014f71626ccd377528e625105fa30302047c435bb5006630640230150f0c665cfdf42be36fb749895d7fb98e9c1a54bda2e3e032b5f41ee5103d83521a0a5702a71ab35afa5d37238eb56c023074492370bb52ca25efece858eb176248c78d47585069f77ea19423778c8aba0c2703b836f883e252604c16037cdcedc90302047c435bb500663064023034bdae0ceb71bb3326bcb2147ce1bfb89977c054b19b55e0f751c4cb434c5b9ddeb483e1115ed50bbc08fe8f1146468f023047198f891dffdf8c62958a8873a5ab164dfb130c67e794abc3423345500a704edbbfdbcaff6b621330312ea461dae24c0302047c435bb5006730650230313164873b8cd5c9e150c75a8bc579bb79072b9925ca0cf49d619abdeb32e6c8a282aff9dd1e7235d43d5c1b8afec46b023100fb7f508aece3f227cf14f542ffac59b52be62f1144230586c01e7e6bd54d3a083b3c1952963c82222ca8705240bfaa190302047c435bb50066306402303343e9be4394707d47dfa7a9811c563ae5fedcb3a556e62aa11d88012d0dfd3852602f33ad327f0b0dc16f26b8a23c260230492348ca4ca34be641549d2df07edb9d4241d9c6dd53da5d7d7d999bdfbdce91e5ec9b41fcc94b291e4a2275b06ae22a0302047c435bb5006730650231009245505a6e0ca5aad875d32cfb22ee9f5a4fdae1c90bc0ca28fe12caba0706f03bd573e6c7b23f670c811a7997a1eb3e023070b383214f786efb9a4fe2d806d358b021d088c4100de3d31eec162a2a20deb0d841220bf293fbfd65175c00a24429b70302047c435bb500683066023100f8d44f862e9e32bc397ceb58898b39b3c00e6a3cc05ddfb24905f0eed3f3f12ef21bd8f0ed748c4dc6c01997e47726a9023100a8048d55cf77fea27acaff7733098e638a64a0b41e7a888801d193b3f4d6796d82820b13bd81c4a71b47e9a7d517408b0302047c435bb500673065023100ba371a84d5da9f0ba79cb5f55effb3563085ff9137c1daeb66e5574ed606eeabcdd10818a643724845d31b90144c69fe023029cfb982d7caeb096bbd5cdd26e92ccb4302e3e4e9d489040b74da7ae304bc391480b11e57b39a44351e22614f06de230302047c435bb500683066023100e277b7eaf9cae16c56d188691bc98afaf787429c70475a80cbd31d34ce288adebe33ca1415f52558df3ad1278aabe05b023100bfe6b27e9f07158454a8c70927aba3c9caa03e46a7b4ee58350ef2ee61b737961aacb15d33f4b0637455ea6c2c5f9a890302047c435bb500683066023100cfbb0ba9e94b2adc50febd1a1528c3ca7df15c82b711ac91c54a122312cf7a700efa1a5fbe15edc05ce64f5a6c9c0db60231008b485ce9d158311c42cae94643f9b510c65abf8babf6eefa8510103298bd6365760b700707e7ab22788db7e493a5df040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100da1a7f2ee9c411f9b72fb6e2838493e60dc8ce7ceeea45ad6e274f5ee2d1326beacf841efe32c2d0fff97567fb00d3be023100a0f8d191f27b9f860d07089c685870fd123e51d6e8459b425ce6435538f7894722cdd9c2e43e597894e42708b86d2edc0302047c435bb50066306402305bbd30e2faa36632c90bf639ecc5f65ad1c98adda393b1ae64a9a6a7ba90900fe687cfb0c2e4c9d85f1fae92d9a7b25e02300c9859420b842d9a0867414dfe4e6d91e3e6e60abcdb7fcde605e33b9592c58741f073bcc1e0a4228ab156a4ba0ca1dc0302047c435bb500683066023100b05e8ed2d7c63aad61d19d9f8a4c0e6bef5296685af498816cb2947ee3de7caf3786251768c2ca25bb2a6fc3a2dafce9023100adb1cdedc46303f1fc2afa6f716f117cbf474e8d5226eb05fe837c30a95e20c0f8b3ebb79586247bde2f13f170c0ba440302047c435bb500663064023020f3ae80a98ccbe799a60a1a18942890eb036d1a9effa8f692c0ca4decb575158a95b3629430f886ecf9b79b81a50a58023043f208aeaa86331e79c00f15fe87630a3cb5751bdcc9d214f6e9ea87eb99d1217e41fe6167c9c033c9096b6965460c750302047c435bb500673065023100f5bca931dacdec8f080948a79bf3d95ea33f8feeffeca90c0c799697ffa6994626f88c9dd5b16a550c38bbf04ef64a9d02305c4c948492a2224c41f2a03e98cd384b4b17684a9befe700b4844b36f14c83380a8bbee1f193d649784e0d8c77fa26b10302047c435bb500673065023010cc7fb91e299b981cacbdae7ea19cb5c96b7d99b01cb1fe3ff378d4faf9e6c6966ca4cd18bd3733c40575e4b87dd45e02310096b092f1c8b28ec2d269fa1a64222e2bc9c340cc927aa0d3fcd3d275b48920109c35e4222fc8999bc0bf06b67b0761560302047c435bb500673065023100b13066b18d89bb8d8cbaf28c02daa2315e923ea8770aa8a7547a4a2bcb3a2fa76eb2e1d92726f2b293d144d64f8454c6023049732a7fe1566394e6f5cb2dd7c275ac40dc284a747989ebb261b1a5b16de1082af8397376eee3c7fe4f23f4bcd928a70302047c435bb5006630640230460445adcd1b4dd2b17354a52ec6b536b7687977ad3f1dee09ab3b14d1b331ce5ac98a8974df336268a378531bf07a5e023036bcadc8a7742eb86e85922e9bab864ad4b0c37623f0369557a77bef6c90d328f334cc4cf840cf909ecea5c528ddb61c0302047c435bb500663064023063a789bd90c096b12209d82c478ba641faf2ab4b4995d8d0571f357823f584fccc5f453ff81fd761001260f5ef484e7c02303f08bab9f1b7e500470efda62668eb4bd93c4ea2c4b1cea1455097e0f7dbe9e50e0f94784268f7db93db03e91c9e43760302047c435bb50067306502305b37df4cbe00ae4c3e7c0ae4615a32a1c03f3a45ac8bb19b1dfc997182c2585a3277629f31ea5a8f471b859052ff8a66023100e3ca11412ef33e0c2f283ee33262b8c843078039cf8f6e46a0bb00a5eeb4c30a1690401caed59e05cec80e3fbbaaa0b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008cc46824b387cd51d1a0d0abe8cdbda82e49ee226a6737b803064757f2b5cb2f5896cff8b480513db9f53220ac3cb9e702305245b936e2691d0e1813937b4b7f3ede193a84063ff89e3df402380886f30ad4b30e4899deae972da8e10753ada9a1700302047c435bb500673065023100b2b8d5725f481043c3604cbb978b680182493b3bce9fa58b9bfaceac3ff064e34c389d91b4820b12d13f3e9b9724ea32023079fdbdc06f46aeeb78b660e77cc1255b50c6fe479f3c1000c57f4c8a853179ec9d4750af464a53290c709fe0cbe76ec80302047c435bb500683066023100bed4023c7604fadf7bd49e6b18f22fb6bfa09280aae9e813e375a050635e39c9af4112dd1af85520967d4fec5c5ea068023100b73a74baf1695b82c747c154d06fed3689ca34f5b4a3895f5cf47eff81b629d3789b0ea8aeb05481658e72a0f627337a0302047c435bb50066306402303c89f0640ac30240dc724d14393a32a48fe1b95262e41f5c05b4d505aa13ab928e0d7274e2968b7a26b78aa2618cd3db02306c1ed4377679e20d8a68544f5f680544c4c012c3ef81da1fc2ba86d4c16fd974427016c4a682b173d57114dab3eb56a20302047c435bb500673065023100846ea25cefc41b35b8cc5de7165517915da0b455bf0d19e77bafb846bb8e5a1af68fee5621b46594c70c6219eefb5b3102305840191a33c78dc73fcf0de7c67c4b39b7fdd824c29ff391537ce3c41d1db0a3e49e80a74fdb76f61f3393c36ac8a88e0302047c435bb500673065023023dc8575756c5acd02c279593581706b195697d54f9f11990667e38b5c748957b1c1cadb53413fd30fef28060bbf64180231008e32a9844906753fdcf6d6b193043237f8cf5a2b4c7e2f6582eec76d1a1720e2b82d852f92650d40fae7d9aa71c809800302047c435bb5006630640230245c6be718878c5efaaa8c3dc7cd81d977588f3e764ca88efa93c4d092283fc8e44d196655cf134bf516835f2da50eaa023079e9291542dbcc464cb1d193833f5b169aa11f730c1f8b873b4ecfcbffda3756b865de98f1563419e12f44f73809b5d50302047c435bb500673065023100aeaee9cc2c7a986aecbcffb6c79b7e77a9ee828a25e90b36125a4e2b00b841668d2fe652b7c4cf88935835aeed1bc7fb0230040010989e647b36a45b6adab48b8eb0079d0ad62296217c4ad8ab63fe7803d74685ab6073c731f447412779aced4a8d0302047c435bb500673065023100a3223f955be3df68c8ad760e8edaf2ed6b8b90c2c93099e5e004303e6c83acb6a0c3c1e9a621f613fa1de51718d03b03023039d9820d93f4868ec2ae22abd9e9697fbfd13f3173d145e46c13f5ad7f9ba38c9412b7dcba28258d78efb774793b39a00302047c435bb500683066023100eda1e9bf656c848de4a75573a91f7bc696c0c2a467852cf5626272df7df64c1c98f794d3176c7721936b24c55316d3aa023100b9ee32ddd64b17bbadf3633c6392726ba0dc0dcfb058a00609b9b539d02db25b9a500f252e57aabb76d1ac94463da9790302047c435bb50067306502304c316ff954917be84dd2714a2612ed4ed3f7bb2977ef6ff5a8d05e0037ed3359b6ae1c8566d72aff719f607f0d5e5ee6023100b52bf6f9738a846367f34a9376a2341faadf088c71247ec029f8eef7bb714ff8dc3c740e9569b36e067c9b5aa0966a5a0302047c435bb5006730650231008473c0279ed0a950e6a019efa9cc5b3d157d26afab0c93771832a014c32a77edd37a1f8c43db0c0283767f92d9021ced023037bd1043c65e094eff6e611b593131f6f82e4abe89b31256833004a1f79717c4a4150d547102e5dffe2e2146f0abc1310302047c435bb500673065023100a64fd05b0a2ac495ab853d7a925c5b919015b3dbc565acd03961369003176d753e2ef90d466dce759268c52f5eb5c05302306e9a576299d5b362174fee11306734ba7b9c01553a4eab16d175afe1e6c48550015cd1d555097e3a025e23857bcfd7640302047c435bb500673065023100c9cdc0abc5738ace0f3ed9f79df6e27e4447aae5848b058139d96c14f0aa423a026397c0c8c14ec945240019172678aa02300f792caa6d2a4e5f17ce89f9673cb8979e54794481a636d961c8f4ee9e1bd4ed97b1e05dc41f5fd273fbf7255f32ef6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e36585ad2bf5f2b4b347c6c00cbfe0c9e2336564b96b82b96a7ca88955bf08b28e4d57c4e1b325977d6b03719170091b0230216889ddcff978f5baabef3be558c61ce60905852524e8b82716c411b52c57c370123c6c1ea08365bce497f70b82eab40302047c435bb500673065023041bc2cfd7763bf6fa077502a8fbfb57084638fc8f2f7d7586581bc09a844945fb63e5e11ef3ae05c2402f56605a32f3d023100ed58f2a39b22789eec00039351135d230173f2cf21c971cf19238f0a9d69bb9d1cae6309cf110dd04235bf3a811bb3790302047c435bb500673065023100ad9b4b8c1403cc6da4de7eb6e946474c03441d4af86f9ecfd1fd6fe8941cfffb99694618813d2f0695c2df3de58dac68023018e7533328bce5b1e61eeca87d8ee50472a3363ffc08ab5269c5e9553d6bfa72c375698e9df9a488cac68c2e640864980302047c435bb50066306402302f0d4fd07f7dac0ee2e93d327757a134ebd63ea8afe12cf5c5fd0b8c688fad8eae322768f050065a7ede6f63fde875f102301bb2dc6aa758369780aca7040204aa4df4ed05efb6dbcd919d956d2c455f5aa183578ce1590947207bd55ab27bbc5bc50302047c435bb50067306502301ea795e871008b6b652a21bbc1b564d318f2c233cf7332e74e1aa371467456b6f3a072ca6940b4642964aac8e9e1cf680231009a209104b532f7d209f2f4177731e3f2ef90683d72555c15b014f1b565ddede65d23b8fab510f6b3cf2d8d4b354042230302047c435bb500683066023100ae1fe7fa1768325158f873e694c6e7cc1ad2218a83b18f82ba219e5e6cc7a2658f896eb55bee640c256e394741b4758b023100dd47cd3e05f5a5fdbef9ad35416a418af2b648fbac8fb7d3e8ccd907b4c264f8dbd282b4d4ea3e5ffe727fc3b178a2320302047c435bb500673065023100d7bda4b8180636399573847ca6af23fe4b3c94df5d9b9c7c3d87bf7e9ed8a8ab3c2e3ac0b6fd2d2c56eda29180c005fb02307497950b1129c07b6fc4f59001db0a79528d4bede1f52ddd0a2696b056b607c9a46e030954d71472ec18fea7853664560302047c435bb500683066023100b3433273d724ab14e3b35738cf0dde0ca8748d3ab65150270f5b7cb5f55c8bc51ed9e35cbe7e65d1513f0e11f3db99bc023100c0b0058679183f0715af68cfac546d15e9f43a383d1088bdffe0288d4cc96e1b3f562452ce30677ced0f24e8fbcff2060302047c435bb500683066023100aeb0cf78b4a0a4d66916961f47c2b3c59434f62efe3dc570d0ad22665ad5bf1dc598cbec712f9dc35823f42012a96cc0023100ead992fb4dd5680048f0739633b7a79816b976a368043242a002cd19d565f6a0d20d7d19a86992d46cabf2ea6c647d6d0302047c435bb5006730650230328e67a866ae2b49575f62fd567cd6742708c4cc014a50db793a6ef7c29023e971bae35b476fc8ba05e75ccf108b2c54023100a8bcd4190e13c06e50204de49ddd5db20139724382fee90acac5bd9bb3699838325cf3686499cbe1315ed9e5fa20189c0302047c435bb500683066023100e699fcf4eb2d0a5f54e403f8e35df941f21ede42887365ff54b2dd7018c82c1de622ce0e6ccc4736434cc612a15718780231008474e39e67a2cdb16c8c0231e052e4ea89c07efb0d3ff9f5a61e27f7164446063bbc61f7be0552d089de5e6fa8f6ea310302047c435bb50067306502302d8773525baec3545644d00edb893c91c622e3c4ebb6373c66674a1041b62804d57a3bb07adcf1e7e624628f95e2fbd6023100a44ebde1349fe88b30a3675d78a74f9440415568d15dfca74493472d368282c3dd53f9a3c9865ae372d5f9ff43ccb8170302047c435bb500673065023100b17878f00d73574af078ec193db5aaa4189ae2dc74e1210bd17a35d2af7c68b1cd312e1ad2a5354eb218ace3fff9f43f023060535d4ef1dc3698b4e68b5dc8464214a6d7f65c3ffea5764cab8d6f3f58a76c9a7a68a234bc6ff0c2a8bf405d800e190302047c435bb500663064023046af87d0ab5d3985539d7a78335fdfbdd6cf4bbf04fdec64548d2c05254fcf76e1e72e04ce0155623686194bd9edce6702301fd259755a01015cb3a09c6a2cdfef24d736a00c6dc060d047cf5ab1471d0c02a4418cf4f20bc3a290f7374575124c320302047c435bb500683066023100c8e9268f62e0c058665bf37f3448997f7e6107074ac6271f21fbc1f4f0658947fb16909cd5602e45c766b2f37cdb3d2d023100e39f768243ed49a7704c780c124353295faa81b25b9456d4d8099eb0a1e60e2159fd2709f768cd7e36f7bb2dac2a1cc80302047c435bb500663064023010ec43c171527e6542ff10684b8b34ba78705cf826ba72420435b56c7e8144087111c6b10c1ba2f451cec095e4e41ef402305ec38a3c3671285a9974f32bff46c1425c03db1ec61cf221886a94a356cf2a49a5eff245e76fd6356e3953b645ec3f540302047c435bb5006730650231009e9fae888b05d6180b717c27732c15fb0357ba2cda067f6bb337c6dcbb7fb839d60d2bd8340a5ea6db1170b478c435fc023062001ad82e2d08b64ef3f8a3878f1974690c111a1ac97be50e1fc8b628a71c2691c17d5760eab12a64c0befb977b38300302047c435bb500683066023100ce2afa3607e55d775acdab452128d9f45ba7e24c876e0dcb07c72a43982781314ec6ee56038b71333a8157dbbed5461d0231009eb772facd1da4a7e9055de3fe77574fb4f6be5b36b76603d6e835418275ec1b10ed4edcee30915543a7e316b9bc75550302047c435bb50067306502301c1682b034ca7b8637f4a82093078308080aa8ef45e843cc177391aabcb24a62a6d5931ffd3198c107e7e2a6a545280b023100bdb385153b584aa8422c344d8dda57ae1aee78231bc2fbecdf471b050df8149c75105ee035aa7478c5b333ee721284f20302047c435bb50067306502306d0e7ac3cbc4f8d808aaa770cefaa7c7c6c6004bdd540686fcc1ef8598a34a53377e4c9983ead8b3e325edc4f89606f4023100c7550b5ec5ee09e4db18ccda53caf5e032fa1f8a38df9c86f6a836fa165f56350fcca522a6585acc473287a3ec47d7df0302047c435bb500673065023100982fbe017691989e39439faf16e1fae0c3cf5d4a198158b319da388934caac304ecf5bf668f423a08a8d296490b96a8302303bfe864345d5af78054e8dc89d01af066d7eda23534f4f391ff4871870a41262bdeaaaa1aec0cab411d1ab58c22b76dc0302047c435bb5006830660231008f8ee6fb5241971ae41a32636bb1e41897fcad26620d11b4f0fb1a5b793ec070af1d3e01f2654cc616dc896b435e14c402310094d89cc4868d52cb68ff428b95e0199e1aabb7d8d47589412c5003e2d002019c08617d594cc79cd85990a241d73673690302047c435bb50067306502305ebc8695432d6e7057218672ec9c30ce3397773ae7474959050d5184c519fdac2a1638635a90c05f7efb49870e62128f023100ea20786c4a181e6977c714af7bd4c32673f788f5f66ee2fbd3eabd4ca537ddef47611bcfad2643a800fde903cc764d270302047c435bb500673065023100eac963192af2455bfe0f89832cd4112cd674db6b64a735bac8e8d8f685061b58bc9018797c0529fbef239ec93889e4f202305a05a682d3395166976b435a21d8eabca6112775ceff48b22e47bb3a20eadea774fe0d70052a56339efd9747980deb8b0302047c435bb500673065023100d6e2e93a0962469a2e26bb73a7817a9336de863087fdbf387e09198629450c94546bf093ae96c5a356fbbc05ebc24042023052f94acd4a2bd5ebfcbbe7e1dfd4afaa5e979e32fa064bb59e5e26a00d8eadbdee0af3432d72f9e3ce192b4fe916aca10302047c435bb50067306502303d6c81bb34df6c6bf2d847263f8bdb7f164f1fab69a355b9abcd4980925333af1780f60261782f1e3edacb82f00344c2023100aa0b13a45286019db94af5db4e7dec6bf9d169697caaae370adc0345e4a295429168fec4a145487c503195ce87f387de0302047c435bb500683066023100ad8796f652ba7d8a4e50a4b70af4a2f7756b165c488af1a00f647202cc36da96ff370bd512b0f9a1090eabc878202a69023100a18d7056ec26680a3c99d9f19e98de751f152d27c2b2c9d5d0ce75eed58e8a37ba5d16c42dc90f8e74a4971cd5eace090302047c435bb500663064023068ffe344cb383ae8b8a229f0c3edfb63db73a33e52cc8b996165a4dfd411da6f5ac666290d8db2039c90576a9c8ec80e02306247b9000e2176c9641fb29b0283fcd35d0ff318225dad2439e0e6db9527ce6509f00db0297f16fd9c9d4734d458471e0302047c435bb50067306502304ea443dd066069573e6d16b102419efe514026a421730690505d0ce02dcdd3cbbea5b71da61e97663d061387dcd5362b023100f1973f7cd1a8fc585f6fe05f5c5293d8d17fd2770da869077e58d0f1faf6aed6ca7736b2df7eccba025e185580e01f610302047c435bb50067306502305896dd3c2e55b07e6fa5b1684511a38f4cccfb91141fe4f8f4e0d1b1dadf2bea9699fd80078f4c626e1fe475ecebfc3a023100aae010e900e7e66f44984eb88fa1de10032cf1945cef1933467c27311bb05d9d4a8fb1556b547d95627110a589fd92f50302047c435bb50067306502305568f9df76f908162205846d4d3744cf27a51f982e9b048cf8dace0da1e68f5c66485fe02464d683489a48e667036962023100be4df37329a1c5e0a92d84125eb945e708d50979d570247eae23f88bedafddfe17c566cc818f7f17dcf58f63df9eba4b0302047c435bb5006830660231008131325aa1924b6a5b59adc63f06b4186bb35ced17b67e9635b869647b95764960e489182e51aba753b0a704350988aa023100f4f589baf11509eed8818b261ec8256532a5ef73f8b4ffaa3af7022c102bb9f4b2fad887d8dd3c145048c77dfa31cfdb0302047c435bb50067306502300083a6dd49d341886c41de66b6e8a6f595a074bdc695e9b74eac9e8f0e4d8b00d3da38e5d560e8daca636f5dd1b02171023100b87cfcb121577806820fd51bbbb2a5290dbf8bca99833060d0d50123ac8af8c7c3e78ab557c9aa3a5aca1bf135c6eea30302047c435bb500673065023100e9dfb70aa42d0788a1f1a927c811d54284b9b8ea780469e22f305a3ec5162c434df114cc884970026ea972ebf72dbec602306970b581a2701f4f9365435f08afef8d863bdc09226b72e37fb683f9ecc89563e71d62f56bb7986ac68feb1c92e073a70302047c435bb500683066023100c9b5d61e968a237f45315a543866668f017bdaf3ee12e589f33a5b01cc002ec02f5f3a84293a9bc69eeb3bb6ef927518023100c0e3dfac8ac7329dff983ab237c4954d074b74bc89cce6346031a151d1474ba0d85fdcec3906df25bf15b52ebb8d357f0302047c435bb50067306502302a43fcf0c6e5bb3f65d94092e34448e81e1e19829dc74606a3509379a8cf52189501f8cb6f61678b0356463144d5a030023100b6440607f4d419c9197d8a2ac4fe8ac45c1e6dbc722eb09599d439acaf328a3f8a70c728f441dfb942529a67d4ce5b630302047c435bb5006630640230351ca67876102dfd72fcb5b78b6c9ef2d25a276717e9493bc7b5fd7f5c9a3cb159560f7ab5d8664e0e9f0e0d6cadf77d0230127e1e44cd97c88710e03e4a9587004435f9453209c6756cbe2f8ad0e72d7273969f31b4c782f881ded019eabd617d050302047c435bb5006730650230226dcf375bb1b43551f310db017ec4e4a4c942eee1f59d684bea8e4b899aed4b7735c8d75e366a92f2b380def1783a31023100c72ac25c9f170921d0fd7f12449a63b43371694136a734bcf244bd59e6a4696633f8b92aa6591a2b9ef09c78bcaa3d370302047c435bb50067306502310097351e84fbf9bc153c370b4d1f629e23409ec57ba4ce18a3209b072cc73b4dcc49077b2b8656ac2dc233b58ef14f4433023033ed13ce62ba1ae5419587e36271d110766c24d3e653c32c9a39b5d779cdb0c558ddc4bff4c186e1ce0577ffcbe9b39c0302047c435bb500673065023100f22ad382af88adfab1c34394bbeac57b7643bdd5e149e7eb4b0d4c5e2011c55cf0342a50de64d209336178c7cef3224102307448f54a782e4fdb1cceaac12876fa82a805cbf665ae31274b6b148e22dfb8f3faace7728da7af45be6240196b6143820302047c435bb500673065023050fed1e646a82fac30589b25f604878654a1ed71cec49b9f7ae6753b426ce175e08789b7fd11c066e6239537ee5a3c4a0231008b7735563bc5487a52e70d1029a5495ca9074e661cacfc1dbeaf0c8878c3e6d51d1eca47169bb53d00c079aae25605e70302047c435bb50067306502301af20a19ed26ee8ac72b1bb72d31a037d0c7cf73966c4566c99f363eeb90e34e2826883cb66346b3d41a2224c76aba29023100c61a81edf319fbf43ef3b148b5c1c587fea0104a0d8237a251d99cdef3b9f17de6f45cddeb555aece7b334ba948838230302047c435bb500673065023054c1bf145814c926834461bced8933bcbc72da7d3dafb75e80f3a711838b0d80474daa56eb8267aad042f34f77036e9202310097fdac14e41dfd611674e3f4f921ddad983d60ee870427d3b38f59272cf8ca47928cac137ac6af446006033a09db0e290302047c435bb500663064023000c73355bedaddee0f573aa82f92886db11eef781d33d5d63b13a0aac11ee66829bf3359093a341983764be4b8bc366502300db2a9b7aa82492d02a833ea9fb95069401336dc62774a25de1b7a9a48f055257bb351206dc4fd2c07170d828c9407db0302047c435bb500673065023025308a2a3d7ab6e6ae988083f71cc47179758b02795a4ee1c1f660bbf0fa12635c69b2fa117b1aea2642393055c79a4e023100a0317ac9e6868e11acee2ee1b791d4fd58a1c4a8c8f5ff418ad3e835086974ad74ed8750ad336172a7b1c14e595f9b8f0302047c435bb5006630640230495e10c822ccc030e825ca114cc21977bf4dd86558b52a0b4e56cdcbf9eaa831b79e6d5e13af5dc87ca1df4770f4688d02304443c3f201fb76b02e6f5baf01a4f5a2c46f7d79e2610a722b89fc1a8b47595fccba85616d276b3d1e86f00c4c6e475c0302047c435bb500673065023100adce5ccd2bee458b852c10e594eaead219257a0ec728b3c22e432ac23daa8ce14f73d375bacf0c8a8d29be255549b06f023058630781c86237ed71164b5d1717aa791887a8d92879651effb3088c1800f8203de27bec057bafb33e51edaff6113a4f0302047c435bb500683066023100d1e1def5cd62d27ef99f3ad879556d973a965ed6f406724055cb4bc5b60473aa2cc96455a1f1e24cf0c5b09ee0a2b3f6023100a8875e8687bcd0fa5e28ed07cc6cbfb5869b0b554e24d8e89ea753ebfe8b04e9968a877ea87fd036160111a95ef4e5e50302047c435bb50067306502300c1ca0764884cc760a868c55c6444fc007fcaa03dcfb878e4fcefc81995446c9337c0a34c39e5b95d7c2fe0ebd9a2d14023100808fadfa42adf3802c6edb489072e035062f0418b230c240e5e9e6bc2bd675ea8dad1c8e38e36e68dcf8cc3ada0d744e0302047c435bb500673065023100a6e04d0d64ccaacded2af300037539ac31cecdcc78c277434b8d74a094e09a3d9f4e4525ace01a8f9b2aea702921e1b90230511ee89ee0f73281d54f5cb9304149b42365430e99d67f974c888a6c97fd2376bd29fbf93c003b82238a3d916dfb99120302047c435bb500683066023100dd6225a960f4668c067336db9d99745e7f29937faaa63e60e596fcb0b54c243dfcbe2558ebf8b322a39203d4314c8801023100d53242d97204f44a778517843fe875bf6e07f8bf126fc3768980713676999347dd807620f83bf71416c56515745a27f10302047c435bb50067306502310097b909b0c9c8a36fcd16106dc339337e753fda965d94452f0383423dc378b01be7fd1b68ec30653c351c1dbd6e05829f0230097d97534915ed9d05ca429f57739adc8614e922eb6d5b341ba4148e021ed90899b6cdc3450ec76f608fe8b887f045aa0302047c435bb50067306502306624f73bf4fb152992756fb800c61e714e21c9e143456b2c0371413abcf82804283201dd28a786963353fda17012bff1023100adb07ffa9add7ba7ccc378e177f2e2127c78d596024d3aa359787f7e74bbeb10e8e9d85d5136cda0c56ddc696a402e530302047c435bb500673065023072f1fabaaab0fac713d9e2c83d8a86eb2645a8b2eca7e22e9117cc170d7bbe6da1b30c088c51c92b41222510484edd40023100c8e9d91c401e3e4bd4d91d0924504d816c8ce05eb72e2474bb52328550b9780102a149196d901e691b954042331f7a630302047c435bb500673065023100d252d6bb168b6782487090fed9f3bbaf10de49f474d1b02f1cd25a68207af5af0216ae25acb6a42dd34f3a649647119b02303a965d569f670c25e7bf33d50e7d4b6feb823d0e419fb7baec2b0dd0bc608c3a714123fe318fc839c085ada903929b9e0302047c435bb500673065023100e1cfd2fab23757b3adab48ff020ac569df991057b708450ae6dc0064199391d342fd572aeec0ab62730dbf5693aa53e1023004f7b39956fa62aee04425ac281661dc95933605d815d774c9d3b565df70d4196c154e147bf0ac453e5ff0c0b44fab680302047c435bb50066306402301d550d0c358cb4760f06ab1315e02532f8d593ff8daa6b24bd4e108e715c510fc5d92ef0c913f1eac32a8b8fc27f558802302b49284b1b92e1a4751ff2b7f482a131d7b839b09ccaa55577b371570479a072b28de60db5394547d0949f2a6a6804d40302047c435bb5006730650230025609fbed2af4d6d6166e53296dfa226bcc175e8a87e4f1a03c21b9968117fdb4a6125fc2d97a8c2392a92084b91255023100da88ac3b1150fe72048db5028d555656ed090c569cf736a98de979b70a687ad47ebf8f66306b3706f0659c5076d5e90c0302047c435bb500673065023035787d28a056a00272844075a025f84854a485f02aaf02cc644908f8b7a0c1ecfd2333697622b9742313c2cd94581869023100c02025cdede6f4955433543b1f3da6f10611dbe700217f185cba4a6b01ffe531ce6c09be0ec1907385c152ccc465437d0302047c435bb500673065023031986109db089f6dc17e55e2a81fa464904452f8a709126c074d4cdd0e8cdcb8143efba21914acfbe2c3c9810ce88c7d023100c8805c48c81fe6d77f000060ea3c45f81e71044f1e1f510acf1c4b210d3683ab85b38b9bf99c3199e27f34d851aaa5cf0302047c435bb500673065023100903b44cd8fbf36aef81c1e9b948506172eea776d9654c2a94b59eb8857dfedc4a3f58ef3e542d9a9257959e2d0ac6f1d023049d54ebe2ca823ccf4a5f75ca6b8bf2a966e644890113eeb0774b219b67ca163b047da2c1cc2ab7855028229853960550302047c435bb50067306502306a2ea3675fb9696ea2355763eed9681c1f7918eabdd66e96c933708002afd87c8145ad9a79f9c20ea9a60d4dd451d588023100fa3b9c15e6978206db805ae7387a5d207eb0609fc400ea082e376b3580d31e2c35c47c0d469db02a554b9dbc699ef9a50302047c435bb500673065023100ba01596db374b43f7ec22dcf4c175e7da0d440762135dca16480b3fec308ae649ddfdbd605d2af7f2efcca6ab90872bc023045d549afa9d1d463afec17494787bbbfa96c3bed6c11613cbe86c307746ec60c5b29c11406a5e1cacde498d530285c030302047c435bb50066306402302a3038cbd498b583a1ceeb05393a33f29fa79a3f4cf33965e87433239d17fbc9ca021553c50df9e59a429b528410edd302300a351b3ce5dad5294bee45f25a3783de44d4ad4a26f373df5673ed7c533e0785b63f6fda2594c17026e67cd0383044910302047c435bb500673065023055ddf04d190e50e6e9ad6b0e2bead79cec7d7e7d550b38736070ed4eee4f004867e394816499d4c9cacd2831273bdab2023100e121bf28c0efd4ec5dd6a83e9b2afcd9eb3ea801aacfd42bfbdc87f7e1c1180694104255b42cc0bbca4a1b87fe9682280302047c435bb50067306502300a332339509abe25540535ac720a49d70d7ce6345ce46eb428711c79d4979eeda778e3e51b102411b297f440c3e8da6f02310087488b33c0c491b1dffe23456eaface16388c0e159e5765a8e4c608067d8d01aa7bc67cac5fe6d790ae6abfe245171330302047c435bb5006830660231008f107cd08439b242e8cfeaf5d38e6874e4b85e3c14bfe6d5d0e74ca81b8932c5039eaea78ae02f7dc2bbd8739822a0ec0231009a824ccc477b922f853f399af3f1c28da004a655841078f210f1a1954fc3471233e93c8025d15b36b2f7a60c7bf472410302047c435bb50066306402304593742e4a616d56b0bc63915ad14521191261f80847e75f3dd5b457a4ae75253f3369d4b2f4c03391d772d9b48cd0a102300b2e8dc869913e1a3150cdb7c9766c1d9a8bea829c5b08e72ed41d0b0f73046abd84dcff3afa49a74c167232bfaf1ed90302047c435bb500683066023100ccccc942f8431c31b6ae047420dc6ab58e3004ba6539582def5281dfd467a9020b82705f4ec3385a5e0cf5af119a5826023100dffb95b98b5ad067352a484c6467cb1096fc924641d3c8249d51d7f4b0598e8863893fed736c3abaab55f0761c69b6cd0302047c435bb500673065023100a34bffa19fa35955285a8e9916996f7ac184dcf434b038b76a47f856891f46b45d76fd91b6415cd2873200b5b0c108420230435faeb28d4187b61b909e3a0bc81455086bdd14b60698287b4c941da8c0b44bacbeb642308739a0c53b249c0e470cf90302047c435bb500663064023012f02cd44acc6aa9e0b28f4939c49f8d68a910790663aae8ae81003c42202b9f61d9cffb6872cdf3ef1c39ea4a5ab5bf0230680331f70a22ceff8d53c96ad9c3752872eca9446dc339a3ae3dc36aef109dc7cceb8bcc8b65da3bd239c4ce2dfa6d0e0302047c435bb500673065023100e221d28baf3d87fc7a2d958d5d0fe48d5394ca6c0de98cc9ad0b8c234742e41ffd6299a63ec50440e0e574741d0874cb02300ace36bb982067422336e043af1f8857bf28f1242d6ac2f59587413ecf57ce7e6c461f601bc285e719dbb13e0e9eb41e0302047c435bb500663064023075c2882d296d418afc81f108b32c19435c734a268082377d56fafe3fe37f419b47536ef0dc8eb884c21a999d3d2b4ed202301a3ca13ae0d6ef70c51cc3aaf3df43ba39f09c19a64c2f8915d97697693213ba0908e1abfd0078cf83c51a41250d40d90302047c435bb50066306402307bb0ba057516575727faadd620e3d3d2800780de666109d8a0d663ceefa070e65f677562ca9bb95416e9b58e7807780d02300947151f0c5ccb22b9ed8123d046d8bc68a2df6f8b2e6d2f2c6468ab5a1e27883767a32e2c4d3b24f8539432438fb55f0302047c435bb5006830660231009af6b1b26ece676a39a5795ca7f07d2c69ea32304d09e8acf084b7f60866ca308a3ec4223bd9c3e29f8bce42fa78d33c023100d1cdbd7daa21e7ea310463d2fedb5dfb50278bb614ddffa4ff38df5b19e6d548dfc790d099d13e1b2de170bbcd0ddd4f0302047c435bb5006730650231008256fd0c8212560dd6795929a8e2d00d30c071c0c51e3bbaa42f2a30b4f42c648a1245cb3d86a6b29f6e32b5a869a3c4023053b10c6d4f16bf1d43f68446a56c6204fac8c9d12ce292a6bed9b2e54f669c8f8cae58b0bf46fe3311895916ace7cef60302047c435bb500673065023100af6513d7ae2345d2d69e825f57df11de8f7ea3d264c6303a629ef9426aa8466ce8aaf300b782458d31cdf374ced87c25023031ac1120f36652d28956f8d17697a69ca55613ef91d2b4fad9822e063a9ebca2c588f8a2011be11e63aba7a7978afda40302047c435bb500673065023100fdf4d7161999a3373a80cec449fd0266cb75b9481b9e97c906e985b562082aba99fe20be3230e01e57499da0ec8c3de2023078c46e299182d55e02b1570421821c6599ff0a02829801c290f666ead4f26b258c2dbbd0527b871742576135105dd75c0302047c435bb500663064023023867a04fcfec43a24d5089acb463304ba337880413e1abfaf207c09c33d216b05f340ebf90dd78ae104272186462cda023067480152064f7fa815a2f7e531bb73550fcad7af23ca95a9257e721e2d1907ca7ba489fd190ee13d63d24ae3b0ef23900302047c435bb500673065023100d99e49ba198c72ec54b192288fe2d6cada1c41f271e1d540b557fd82dacb5fd86a5bdcf84d8692582af5d1986e5b792802307e798c9ea7bd76970e356a512d4489f1baca9e8680696d80ceea4eeeb2688ec935148f781781c391779cfdb196849fb20302047c435bb500663064023020dc4054dcf9589612a6f20f511c356e5379dce35521acade8ff856a2847984b9e759d21098da213ef0cfd8af5c2d37f023070822ca37990a742c31c2f470ad8b4749bf03ae22d781b2755af5d14e816daf13827a4de8249a333536aa7e3d19ed40b0302047c435bb500673065023100928d8078c9d8660a3cf296088da2661f48d357df49ceaa7e3c952dbe8cbd0da72cbf91706f54eaec0a4e9b68d35e6063023076384ce71b6a81ad7d30f7a00cee13a50f6896ddb1ae9d70a01479b13ac4da2c5c30829520aa6a487f932ab610e0b2f30302047c435bb500683066023100bd241d9359fd84ee937c29ac4b47536fea1730671267cccdc4a120fd1f9f28b9736ea3f724f2fd331efa073950d85ff5023100dc683830734ad74af86107a66580cbc759c5d171366cf1194a8f44052e28b1d53d8189d9554f0b7b074313d7d2cf01cb0302047c435bb50067306502303f25f5e83f888e8228e6960d6cb1bcf20ad6c6f4797d375dbd2c743ad1221842ed189c9c1e8b3ac153e3d2c5f512d1be023100b540131fcbceb5cab156bd9f0ff248077207a353baa8f943d3f9bec85cfbac668a68503d3d21b9af620ceb47843a60ed0302047c435bb500673065023100d9dd2c8a09810651ee5774938dc97ce512c8b58a48c86b2460e855f3b6966ae47c81f56eec7145261362f247d8f61b6f02306084387a7777b8c62afd231c4c4de62ac5bd7a799435bb4167e42d54b3cc2ea61ea9d92a6971b41f0a2c8cf032fc7a250302047c435bb5006630640230407ca73f115d94602767a5451c7b84b07e98b514272b7dab7b10e99d8e69c7752ce2b4ca345a993d170d6024dce4a97a0230557c315ce56516015518c6c1f1434722a7bdcc0e9443fedd43d9a0609decd28957fd07442eb33b04f085339d250d32a20302047c435bb50067306502302698768d8e76944b1760fcb3e20aa01ac4143f5222bd87b6fa58605381e694d37500b81c899cadef3a4cb62c3fbfa850023100f9b7da082011c58c94b8eebb99c81b87055ef3b208746efa4a93e903ca85ca92c44b91853e177778e61b01939b0214f30302047c435bb5006730650230190e5ac1f4b87ca05f25ee8b7590c3aeb8cc12ff77876dc43cc6d778c6010aee66e3e93ca629da19896a39a51fd3884f023100c5439382a08c86c866209ff2947aa6a29b6a1ed78e1945eb775ac6bd2a8460a6ab79706d2e7f0b210b0436d81b8ba4700302047c435bb5006730650231008d21231cbcf4d36697126edbb883ee48752a475a8fb1f70ca5a35dc23b10f38ffdae646f25adacd0b6534435e6179528023012d0876ec6fb87b219b2c4aa7618a9205c5330dc540b0aecbaf0c52e6a69a533af5e754c609719f402db70aceb3fd6b10302047c435bb500683066023100e43e7923f61b9dd548f5b1d904fc3f24b38407699e1ae85b3021722734fb2f9d98e2402d33b7de3445f7546b2fb40186023100aa7dbb67f0ebe5dea9c98fafeb1029ee6efb77f283484b1aadf2f581dca8f234d2e29a94a46751a22ac530c77147c4cc0302047c435bb500673065023100efbe15b02c896d606d8b7ff82b9df27218e7383756c9ee26d8fc66c3e5b6e18d1b6b15bce6f25601fb81d97e9e0ba80c0230699ff1357a8b0edf68eda33ba243f6bce7250e5ff526f7a9f4ded4d307582fb1ef3a77d94e99f671fd6cbf0d9ae945f20302047c435bb500673065023052380c9ff4cc8b12df6cabbf20282900762beb81676f22333d7909722e8ad9238899aef960e6d2dab7e5ea0712648f64023100934526c07fc32a8fd06c692fcb4a6faaa9dca312d9c95a1f434225552ef092299a92f81ac47c2965f6fcf5608f3ee1400302047c435bb5006830660231009e6b524aac9cf239778c7840dfd61005b1f31eb692c444ccdc8b56a32e32ec41eb65cd9daf0ba48f4a5fda7d25555c9a023100e1d19ee73b352d96b39656d53b2cdf64db44b17be23ef6a8baae0de65b36ffac74fb8fc37fdd0505324b3a08a3d399310302047c435bb500683066023100d66f7ee64a512aeb02f5bb7bf82a36018a398afd949a8e22db2df34591a3ce7d9279af3284f107fccc0a03e67314aaf1023100b320488e3253605b7b17deee7d77fc18228a07d72aefdfd348ce2f1aa177e35359d1a3e3c1d6ed3b9799d8b6d668afaa0302047c435bb500673065023100de10930ef3b7674e6c90d04f487a7b75c7c4575cca6623e6fc2b19b6f1bb99c4d057e1a76a15076cb956f9b2b8b86663023074b56b3806ccd8baa6e69663eaf14705e63be13071f99c3889d642349314d2e35d3973c1ed014a66a2fdf23cd48861f40302047c435bb5006630640230617a4b21051e055dfded97b5c231fc74c00454b065b1e1d106327f43816fbe542b90f643913f482c21bb4311b8e537f202307c9b481bc353f7b1f93deede3d30e4c327f53d8c6b1a9d4f586b084b92492323128fed9af1653c99ed5bfb059a2390870302047c435bb50067306502303905ea4e305ca805da10a13e2efd8ac12fd68be4273e368633dcb67e8752cebe6a27c0639b25c90b34239a81361ecd56023100bb78935c8a83500e40622117ea0024b5bfda7b15ec434a1fa33a0b0aaea5769e0732f214d64bf92a26ea95a6a7f822900302047c435bb500673065023100ae426915bc4e7bee179267d983619c98a96de7ecbe55aa04ff765ab1bce41ec8f0887f865203ff598a3f9a14d87b2e4c02304a506b6f001840a49c26ad38a9e2a6cd30d248d9f75e85af1c1e769d91e1d876ffec0050cf180e951f97f3aa7d951e580302047c435bb500663064023046a75811dd84e5a7a266198efa88e5fb4d5a2939b974a7b59651a128ec49cd7b8a8d12b9c83684fc1fe9b3556238326602307d18e28386ad72615e0329a2d038ae658618eda7c0ef2270e19ab77b497cc173a5efdae15f123d6e34527a7416d1ea450302047c435bb5006830660231008982c3fd77b3c6b62dfb2154efbc399978be75eb950713284532530d962b16be42de212fd86facb39efb3433993931f80231009a0a316a7a15106da040174522bb5848902689629c3a23c6b1e56dbcf3a63e787ed42215c465dabea4ee5d307ffe16410302047c435bb5006730650231008ae0a842925e11db88ad6eaefee3c3e4d34b8d4e989199b6346f830163594577e625b1f266c8c6630f8f0dc76e3bf50002303dd0277941841e1b516fdd433bb2ff56a1bc535275cfcbe0d15f57e6670a74dca395791f569cf394e1193d7ac98668580302047c435bb500673065023100f7c57c8046a223e8e17b37df25efec01210211ef940965320560b9a81e579b320652ec7077821422e969719ed2ba76a40230075d3af86951b29ce1e1416b9edd84294cb37d8b13c91d86f371ca24ad21adf29e3d673fc4f6ad1ab10e02bacd837d010302047c435bb500663064023043121fa3497a4c9720036b50c8f9cd15b11801b93adfcbc4245bfc2e37958de6101cef9c54308c540dcd232ea124b8e602300b6577c85376678d9bf72931c5699ea3e6bc181349ba960aa3dde2e3ea8e33002115fd6a1b3bab8de4e9545fbb092ad70302047c435bb5006630640230293a9e99a78a8235789685a2fe78a7f7650e0ea589044d3d65d869c85bbd917a1f3482247becd593d77a761c0490f0aa02306fbd9feb95f4ad2fc35f9638adcb0e1a9c5276b88dbf3f4459a574174ddfee2983a32488fa1a19b5d1997ed1cf1eba9b0302047c435bb500673065023100a4c76d946a4e76705c33aaed150ff1d04f30e15755593920cf7522f43f758afc047026c4c8645479587e1b3fc3acf06502300994970eb10600bcbdef71c546e0d0fda77bcb25646293deee780a60e27134b478023a27053204c1b22512767b0a65b70302047c435bb50067306502306b863b5f31e56c0c7c732a021748153b69bd3d1029959efdf49362e4616e5218a4944915fc41bbf7a74673fd6936deb2023100acad0adfc7dd4b9785f25db81b1b724a7cf0d18d4bf601490a91061197934a9dcacbf5c6d76f2fd86afbb1c3d568af420302047c435bb500683066023100f47b81659d73930536525c53dc78f220ad997128f6a52956a153d8feb3caf7001a12127fdadd6d63587758c2281417cb023100f7082a320b241f4c1ca1dfc92e78d098dc3c9f79db04e93209d5d0f3701d5d77fe55382c6592e976756ad2688b94fce10302047c435bb50067306502300c647fd7509cc7f728373a04604272e32a30c5b7de44d33843f93ece1fbd1c5cb0f83b697bd7ac59e3bb41a3dfa01db2023100bb82b42e1490d629115bc307cf5dcae07c63a55e37c5c9740b267ccaa623b27ae8976230280994ac7e916db952ada9a60302047c435bb50067306502307e737fa52425424c81be91a4ef6e1f70769b98edce86c3d0fc61c7c6695a2ca4eaef4d3de85a92f4f656da5525579a55023100a5562557324a227528566948c6308d6ea0addc7f87ca5da0ffa24a1d5b71d3f81da111167d9a437a86cf19f3e9a3593f0302047c435bb5006630640230014bc8c3d9df1f33ac6a7299cded6fc43900d22598ec7b7013be6157105c6ad2a503bd259bea171eae56b79a47b909f402305ab5dcd363c06296d81615cf77fa3609774e62017c0e86ea37fe49b5fdff83734de5869205f14f6ec66e3361deb3b4530302047c435bb50066306402302ea3954c5edfede62b4accce2b08746667ac11014ba9eb5ef72a854f9d4b193a59e5dca1b6c82dc2e7139dd06ba128dd02304f14b57bc14144096bd6cfea8e0cf6c645bb3c923056af6867263dec80781dfc0a6b57ee3d64609517e87b714ebe46c10302047c435bb500683066023100e3e5930a71110dd51c8e5537d81f9438adc406b9ac772f84e4de711bc6841a218a6b3f1fde42694e656877ade9460515023100e55679d3780b4d30fc9f2b8e7c577c4f9a5a61a80406d5e1fcc323312b36603d7cb37fa0f5edcc35cdbd9adc6655f12f0302047c435bb500673065023100a5c9b889642be26c31fb1da68574d55e23564ff2774d7bf2ab0d06f11f982af37220e6c310bd7a2440e5855500afc48f023050113fb33af406f3fc69dc9f8e2ada430529d3f16fc5b7a5cbd8ec575adc97c0e1287f86cfe8349b0d8c94aaff9b7b9c0302047c435bb50067306502301a86b301c3a6c47caa8c2ede35a8567d620604202bc4e131f8d254ae967d0c1e136fc5e717e89da632241286cfcd9aa3023100c965a1db7b9bf3e4581e98f451ac41679a9791970cb0584b2c8d075f4fecfaefde5fde423ae340f23747fdf39f4189b90302047c435bb500673065023100f0dc15559dcbeae14833877eecfe636d8c67975a53f1f8755e7edf336c37e088c16c0bcdbcc30b4e917dd6559239083802301ab311c1d57659425c2bbf9fe1a376f75fdce73724ada59cb6b9c5fecccd2e6d2bb0b4b36c38470b405060c933344bce0302047c435bb50068306602310091296b42df3f6935a92cd236b069f7662c9e674e28c092a5019ce91e729060b20470934a4100b17fbf8821aa1eedf806023100ece27d9c62591272fb190343b929651235068ce74488c5b3f6185f55985ea9dd7f7188b55bc6ddb50de284d7fee7ec930302047c435bb500673065023100af9b9d5f0634c8d59c6113bc6d74e94bb710a111e6fcb3ff90aad41c6ece5b5463deaf13d64ef50f983e89a040f2740f02307b3baaddb51c92452af350a532122bed16cdfe4070f878f4ed8d8e9e067469cd3a2ec577578233101a67bd8dbc5997810302047c435bb50067306502310099fd0db40f132848fe5520d448e80572ae4248e7b0cbfcae20b3322c23d5ac6146f2a22f6d059f990792027e2ff072d402301241ed8fee6c9a918513a0b3544622721eea2985b911c70d145b8bee1e0d83f11e60693e2589a82504ba8f03e8eff5f00302047c435bb50067306502303bca91bafc9891754e50c90488853486459f1a9c54ca3e70b3b28d79096a842a1412c19256250e2aaa202bd32033fcc102310094ea9b82ead8819dab11e3f023f59b4704a87f876ef65b962de1d9fabfb7fdac85c370555176b316c5daeacc6990ef690302047c435bb500683066023100db4fefb9ad1026e3283f00c9a6393029a0faf06ae73f16eef1af9036825e6b789d96fa7a26eb67566c4f0fa063034481023100fb6be3ea0727d23072cff8de54c9f0d3058eaf65baac4917fd5bec80d7e10b315b9e7b26237a17cd3d7f4ebd2f53c5250302047c435bb500683066023100eba8ee149d188d6dc48d2d239e9e08bc92e41453455f0ae64595fb363f13878e443d6d9d7d7ae0fbb4d150385c42e6b3023100f8e9587d6d9de0467a42808ed07c89ae21cbc2c701af598153d85a5b9dc597e96390e1e7801095812f8319e616067f000302047c435bb50067306502307889a9ae5e5b9912aadba9e9fa2333f5cabddd66914e48ed5c29e4bd012f1c9392d3a4ec04022e948d250e8a34a0db7d023100cee3411dd3dc6959b1f99f4951ccacad2d0493f5cf71d25217d9fc72def9eb2ec33fe15ceafa9d886ef05a63f585f05e0302047c435bb500673065023022f1c7d8fab89834c5643ad98f5d8ab7748bf86cf55032269ae018942b648d418b06006e1c946b8c461376295d6fa7ba023100ff813fed598c7b5099591dbbbb58be145260b148b2d503d5a22978cfecc4527866fc9b2c64ca3fe6f2004c54ac6ab3630302047c435bb5006630640230690c1393c69abae092344a42e040c0e218dbcd8146a2632c8cf56fee7aea70f0ab84ba2a15cd314067b7da30753290e402306f2e42e4978c0f42f765d062c8e57320eeae5c12a6daadcfa8b3a30f79edab5c55abfb84f5dbbef61af6107b6bd5f2a40302047c435bb50067306502303a5e768bb3009fefc824a7aa62e60a946571b2282b0d7de31ac4722e813b3254698c9d3851b90886d9551c8d60df9e05023100d90f78102e938510a056f05eaf3e3436eeaafe0eebb9d484987983ac56c4d9930755176a809efa62e9abd761f523c6820302047c435bb500683066023100e83fad34332ca26651af2f8b4a4d373428b0ec76e333e90fc7a7aad936889c15676db6ed5e9c995006d0715c0ea84362023100df02145ef3fa09f5f0d72c707e97295c297ed229197ade9e1b09ceccb7e541ba31e939b408e494cb59f36630270254250302047c435bb50067306502301f62abd472585c2065718cfb4e7a66fcae47bf6fe18b0bbf58a5629c604cd6eba5812461d6b702f6c0d88e8b77e7d3d5023100db9196c3f9badb4dc7c8d0bba9daf897d82d4a40996e030fef03cef94d382b757069b5ec0827f235e2fcb2cec6a846510302047c435bb50066306402302be55895ba5d16b0ada6d1624f6cccc5dccfa86ce1a925c0bde568b67b21aeb5bc3d59e077adb239af2d796d8fa95f660230450506c58d845f2fab182d778f1bc08477e6e63b00fe871dc9c471bf5f2560ac36476be9649ce4d4bc1c2e58560036a60302047c435bb50067306502305c2c5236f7fa1ed8aaa26f23248e1ba6af881e1eee1e998c358f2b9f7caafbdba4d47c344181f3cc1db22d47c1ba6c54023100de18888ada6e701a54d3388371b91827ceacfb7944472336c316fab39741b2bcf666486b505e84a673a60e09527bd6c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fc36dab0222bd10763020fb6ce5812f1f50f1273175d49decc2b0f5c8e2b17446791d3e7df4989c038eda764756592e2023059105dad2c072fe0207a6cdac88d238cc6e057d7d529fc369451305895d533b5787c61d4880f7ce97ca2a441f17c43db0302047c435bb500673065023100f0837d565efc3e6c42da9f3342568efebc0b3b3f79931613b2c42d9a061eb42bc3d7ad526a971a01fd8dedf728dc8cd8023013a69c276fd5fb3e43611f43edf031d5a7796b057c2825b4b701220d5e948af6d8e968b5295639febc2539e04c85cf650302047c435bb500673065023100a609ef33e7246b41313dbbe41f542d01b4d58623a28f140da9d8348251d754326cff92a4e0604a15afa8db99d97f76e8023048a1fe2182bdca8aa8153ec507c9faf83b0fb18b8e0530ea3d818cb38fdca4ef89c2e7b53d76bd4e46a0bc662d5fbbcc0302047c435bb50066306402307350dacb56c07f92c386fbc6f8e24c96f16679294189d107bb4dc02b5273d4dcacb9d83856c4965f865de7e0ccda9efe023065db87f218b6d9cb011e633cd6c2340353b8552321103f337d91f1159b5e7dc08dc44d5bbe987e5d9a341a53c8ba2a790302047c435bb50067306502306b3c22951f8bd9286e7ea0d6b0ef9507da79e7db812157affaace97152923d3c7cc7521cc8c07548bc459a77583370f0023100bb9e54b9df3aa797df457da31fe8a14d75b0e99d9ececa84d25dc68dc6cc4e6d00671762a9f3218f6b3a4537af54d2c90302047c435bb50066306402304fdec419c7e6d058dc0ca8b32cbd0e8286b70fa10bb4ec2a36b6d327d014b88d25cffb5f32cdaa0e7d12c2f11310d51302303e6028f08eac9bfbe710ccf57c06d7e6f92ceaa1b7f42c70e08a37f49360ef0c098669547eeab476df11b8e451315d9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301bd0ebccd5bd6fc28094095d4a7c77719e3628245997feb41af778d74296036fe9490b1e1f9003559c0114e327afcadc023100f9d1458ba01f3dce49504bab84929ff4b650843c710b63360aed054e02c0af09b90f9ab0f1d96bf97dd3a919c396e9e70302047c435bb500683066023100ee3961dda4a1311a368f069efd45cd937ab24e2b7fd2a9f3499e8e52ff917b34ead242dd8e91024adc595a6900a29bc6023100f329b5df0d2a7c4ad5fb99ad8b86e2c78ad702e4aa6d4d2c42d85bcc33ed744bfe302e870e3184a598081d246a4dcd910302047c435bb500673065023017edcbe6bbbc60bc3502d9cab228cf1616eebf4bfb596a88b0924d5f070587f2c497aa2ad91da4a8ed0bf98aea092e8c0231009eb5516c769ff6e080e3b80a815cd381e536a52cc08cc48e218f571d53842b73fbee3d0deeb68e9bc68805a3e07c62a00302047c435bb500673065023019fc5ba76fc34dd8013c3f5fb871094ecdaa646ba4cd731294e4561426ad8e3d3766062ee78b8914971a348fe6f88fc7023100df115860240b365853894363ab2c79dcfd921d96c2cbe0d26883394171ecb058108d18f600864bc91c537d0f1aceea1f0302047c435bb50066306402306d9d9f1385223cc848da84ae415634400ec3f7e3264b368ca895fb8347249c4ca611cd2bd748566a09f674129034ba63023026488ea44c5209b9bde07b2fc4243c4da5ff03a1fe7b190cb6dfa2dbf6588b41abb1186f806ddf86a84a43a1c7df4aad0302047c435bb50067306502306a99f79853c2dd041e89b2ea9e19d8157348683052010cb6ddcd901d48463d3c699b1c01753d47dc7e51b4811fcab4270231008166175445e788fd210adbedae6f60d4a5e9e52888e6edffa2af6f5275f46fdbb3da66db46f01cec4db00d60c2ac2b9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402300328ba349a41ab0c10a7a2ab858410c870cd179adeb320a5361573171701f285a3adfb43c980dbef73bfb100620c611c02306a13e0eafb88dfbf11b220e64db8d835febb98d73ea636840aadc1246516d28c9751c317a7c113306a56bffdafdb9dad0302047c435bb5006630640230615263183ef9ec9e4323799d242066fd48a6b351d196499f44e0c5fdecbec5a5a27cc8a348bc2d88eb6c46802f2df103023030ef44a4c16551f929f0bb595974373d73bcee8511cbec2260861fb4d992c1993a366bdf5425828a57151ed16d55465e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230601718b1a5824e6c7bddadcb2aab54672722e8f0bbddc4cc11dd2e4c008c90cf2ce83a3fb1d546e9ffe2310acf0b0ca7023000e953e90fc30e97899b1dd716e484435e4177c5a22a23c6ff4ed530b3dc01a9224270906918fa4bf498d4dbf35c2d090302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502304f30a169e7280b5818e65d35ab2ef2bbe21e9e9b3f8b75f50452a7f0501e3320d1979e9eeeed4e0694e0c8b537788b95023100d2137547047672833dcc116185189448949ae6b24b7ad711487e49cb3bce913600465553300ac0d8b0fd29bdddf5f8590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301990d03cc63736c5874f9061eb8499c7327f1bf00db56da180357c9cd60c7007b5d7ec1b1b8e53fdf24dc72bffeaf311023100a0bd348a2b37591b3f0d047e37a7076f70f98103e8e2ee344eada36a138df9dfad19e91bc7af9e93fdea016be3c267530302047c435bb50067306502303923686bcde1b1919585a1cddab49654a91df85dcba594e30a23feacc6a48bd4d0de60da55a1cbc203e92c8c77eb4820023100a45270de3cd9fb0fb3eb2fae2e150b367f2279e71656293c645876be4ecbbb77b756d2c2211679826619a8369126fe3b0302047c435bb500663064023065280a5e08c4a66d47d82909ab57776edad69ffb4015ef42e8efb85e0029d5dded975f1ec6e4af7e059dc9cb97ee21b20230189f1b8a941465a72247bf98153f01c8f5d3cfebcb9cd7b90d4b4291b3f0ff2460f97618d7f3f854cdffb93f59e4d7410302047c435bb500683066023100f3a0be14f7b2dbf266ac7e631f03d089e8f0772af6463c93c5130ec554c5910a935aa4d7d79e8da9a09a99065efc313a023100f23b00cad3cba83a6b6a9d7fcc231fe8db5968e0a0ed1cef5ed3ade51651634e2d869ea4715da9bf2b55259e128a24f00302047c435bb500673065023100bfb4d42dc37788c3922154c5ed6ffa7216118fd4f5b2d978ad5f9c646db0270ae36bce1c883c39ce557c42064c25844a02304b0b1c9463f046427e4cb49769f2159237b20498f5e67d792c7c1df74ac98cae0600a577e5491bae2b92be15f14270e90302047c435bb500663064023060ac7c9687a133bf9f41d3af8acc05ace59a6bc156484c26876964a9662fcbb657c2ca8533a9b4e9905224de8c5d7fe302306e8d208279dabd070ffe8f13ab00a287cac3e7eb329a947d2b642d2c8560a7593e55f5b66c3a21b7bec3d359b1267b9c0302047c435bb500683066023100b7c7a879d7a9f130c96bef7fede211cf51e25b4eb155537c5e20eb675003fcddbef877235cf30e2613850e5fe5397c4e023100e0ddcfa04d61dfcf5270ff60f557d1424a6f76a8827cd133b97ddd3849776b23aaf79ed1a41912d04c5ce108861231f80302047c435bb500683066023100dbcec9058427f6ccfb99331d30a6e174e90cd79c6d449c5b7bd484ad9549fedcd61366a8fa62627b058cc79d375df8bc023100e29f5fcfde26074e67e8f070653186a5f366fb4a66e98fc67f9e4dfe92939dc878e58962198d6eeb11914a79fa140bf30302047c435bb5006630640230492ef3126ee35ed8a099a2b9b3e7dab2402614e907d74f2637d3ca1a0b39c69af89231527aadca4eff6426666d8511a70230045cac96a5a38ca347f7ed370af8e66dc4574ddc4d07b73381bd4ec1589dfc6a460ef397a62682ed1cbb130970e6f5260302047c435bb500663064023067ab488ed5ccda230f13fbb41ba2c5a8f855be5c979eb985be994a135f38a6aec5849fcdd9eaf3c837d7bd2c84dcbfa10230226f75fbdc154b97bcd0d90cf4e1b0b39d27d9b5f25fd4d8f0984a6fd01f17aed238a6fad1e8c1ada70e95e4037eda140302047c435bb500683066023100cb4fd44ab90c4b207afab5bfcb5efade3d928ff19d529e9d58b8963924d12c71c89801658ea7e21d07107e1e8b808c3d023100e4c4a21cdb440e3ca52bf28193b3b50ea74ac8374d999dbee1757aba3c9189f75485e13c6a0bd584224691cb7f3707190302047c435bb50066306402305749f3c931edc1dd3d498b7ca325c24aa1c0ec5280eef7c1a30d1c9799b6058519222381037bc8bc9348c62472146c72023076aa8cb75b2c391aee8cd1244c5a4111f917f7fd857e67b4a78257bd3f5690ab2e6619f103b2251a4fa0bd6cec6e7c580302047c435bb5006630640230191a8a5657c6f9ab103918222580486b5d298c8bf8bbcb8b5d87fdcfcab56baccbb122f55ba635322d8e5e84e2f7ced70230141572a01136858e68c401ce70206045ba772fafd0d4ec9f06b5183c477b01fb0e8e87f052d953c875d84a08271aa0a50302047c435bb50067306502306497c9b7b1caee03b517d7a9ae46af50922da44d40daac08f9e819f82aa60d90200f9e79a8f75f4052f0029ed77becad023100890b1a9122bb18dc62f1a72c4d793bc3d0fd1c53d8af8a450e6c78062d2b7fd7b795008c387c523b5b0dd0584b859cf20302047c435bb500673065023032f3c10a32517789602a15dd86297408a4985307a5bbe9105714124e260247778158c154cbf11baff06696c45ffc6108023100b48f4c2e660dfc2a53bf3e3869ac23962cbf1217ac6ce9f08d21f99b98a0c70d1c82b59f019b693a585042e7ff367c8d0302047c435bb500683066023100cec1c33a690ec6d2a12f56aec882b3f07a60e8f4b56c53a4159016b0e524c94781cad19c7ec2cf4d1a19c27f6471423e023100ae88311a1c8774f5bdbe1f4d79597f008e317d1342195e1b960072913c5abc1e86c2e8700b2959cb30816c302486dacb0302047c435bb50066306402301b2978e66c5162eb3bead6a01fc3b8cd425ba2ce377a24dae75b022e7469925116cb571672b93664d0b189b9d4412461023010a6e5c02a89209a360c6ac513d43f0bf5f3e40a2b03d3ee82228982fe1a68876893129b4bd4fe2e900868fb3f37dfe90302047c435bb500673065023100db9bbbca9af10f86fe2d4402422792d2a3825070a47a713c78979beaf3a9fa5b6faefaa91fdd99d6ba30f890a8fe377d0230697f9466755c9a00f902b8a570c9ebfc8fff78c5d0dfd9fffb26d6590eb02eac7a6d433ae6ed0546e142626d3d2a504b0302047c435bb50066306402304f4a47e71c5c4d66cce14415de7945b132b5c5bda2580a26b4a9e42c89fa71323be7b708b131fc0b491d5c8a066769160230670973b911aa7083d182559e121f0ebbb604842ef9ed360f6370bd38c99ac482426b5908b18f52456a68bfec6f37d7aa0302047c435bb500673065023100fb25b09d80ec70c190a93f29b40745a06231bd889b7bb201877bd705e8ae93afd943697b5fadf56118354d2b03e82b4102306b53c8ef9d673db272f8237dbc0e4163b75276b48cedb01c0368cec85ef4bf5a313171937d1ed505528ed238dbb776620302047c435bb50066306402307cec09e046f5410b97850d6f1896d803e86ff3f405c2ab4ac6cafb76bcbad7a9a483eafabb43e84fc0d9da578966ca5502306a9dcf1a811cb9243ac2b7e7a0976f33879898fa5b941830b524b2cf6980fd731f1a7e7a72a81e2cf2d8f849af89297a0302047c435bb500663064023078294d124b8960076b57519c7d52b806472e509e2023e3bc8e35e253e1860c4c843dc5a94a08284bbb31f1219fecd815023020aa6e3408bc9b77220392eb354fa861b770707edfe06b6018b7bc950133a909d051c58639e65a56dbc2204e06a30e0c0302047c435bb5006630640230594eebd967d849861268c8093fda3bf280c29644327e4733ac36835aa6bf490fbf4d75de927d623481985b8862b9c7ce023019a2eb79cc4b920ba2a98b1915e2bce01258d24403bdc7c90c79609dc1537e2ed285d6e9b074f4f64fc0f938e1d84cc00302047c435bb500663064023066d4639fe6de04ff2ec09f5ef5621ab78e8cb8207a759f94be43647c86d7c0a366399e0c1d4dfb3f56c34258c8093a05023038518a29236efe8953213bd8e1d5e720956b96c7f84c3a9117c1447fd1ee5d7e52a80474b6641c4425a2bf36bec2e7610302047c435bb50066306402302e1d54af0ad8e2e3d72d9e60d69324eea86068309dc2848cff7a32b5f852a031197c7034d9e5d488e2521be751b707b0023050e5b629aeb5d4d393485bdfe367c8d359c263ca61274b93bc48fc80c78f23ebd53c34df114a631ab6d474be768437000302047c435bb500673065023024c42209c5345832cbd37046b2e189b3ad2c28b4164cbc23efc6c0afeb7b892f2fbd7addafab259ab01fd484d5fa5c9a023100e6614a9cb09051a33c1d7dd74503401f9cd30cf5728ddabaac56bda787f3410fe9917d9a2f04051f3800e1a0140cb7270302047c435bb50067306502303980b97fcbb79afcbc44925e073fbe648581eb8684e1c1b00bb3bba546a37f018fa26383aa9d0e6efa164632cd46cdee023100dc39c35be3de776d8e82bae21fadb906b5cfb70826560859db48eca4a6f6b4f2972977c0fb7d8a453931241b5fe26b170302047c435bb500683066023100f7e1a3c5b973beac14a1edc5b16f727533bc5f4623e01a56bcf0858a13a6900f9e192be4c30b3ab2ec6c6710de8a4482023100e26eb86aa9b41146b66005517f727d037e179f7084f4d79c928ba4ba911f0f16b8a0919c1109fdabd62c65761f29adc20302047c435bb50068306602310095baedfa889ee3692173d27b3dc9d67731306bec111ed98227a5102655a929ed70420f40c8f0fd99b22fe3bdd4de50ab023100b12f870c4d4850470432400eda3ada123c348949ad968417cac28976d12b085b7dc3b5d75458c1fd1d0089008d498ff40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305367a4baee3b6bb8da2636687d4da84c563f86e6ee9792b713b7c759b407922abb22fc79c2fbe951dd82ad1097336edd0230311582c1dd4b60978afea298862764330b3b333e5c5eb803c4e656ff935144969a52f91ddcd76471bf56688fc827987a0302047c435bb5006830660231008480394f81fffef9babc27b289cbd4081ed2933797e36fad16a9f4393eed076e347ee45ad872744327bcff8b6c1c1c8c023100cdf9dbc78a0164ddbe0c1ae56dfa4e40169823585959870eb69b249de6247c601b4346d5a3e5db1e7fb5f444dcc904e90302047c435bb50066306402305df4eebe1fff6d2100b6e55bcb449bc976725e5b9b134764a68d9b449c7f25ca790b96dbef764946db9e1d410755dcb702302d97faede4c740d5dad89e0fadfa2dcf8073f93548b0af9bce4f1efeffcb61e71550ba97e1888345a298991b6c3f4fdb0302047c435bb5006730650230669648155f4d4c6e1723f9c2833f0effd30cfce0dcec5c580a89adfb40656420473b9dee3af1779d6745d409b541cfd2023100ebbd32b06ee034fa36c7cfed0f51260b3a50370af2525e655c972a0a1d788a5758d4aab922b8cb230440dcad26889fcc0302047c435bb5006730650230227a40e2250950cf0a1bee07bda303ffb00fad970d74faeba9bdd7424cf20f11431ce758ae13bcc77c3bc5c3f5e6dcb2023100b9e051988c5a6b30cf7e2195ebb604f442f2c58b79498971a6a65b43ff80df8c1a344e22852651bbe1277cdcddd614da0302047c435bb500663064022f0965a188230318a779c04a3826a658bfecf3dcc84a68f6db5675a369bef406dc6dcf88b7d979513eb5e2989f3e5ad902310095f48cd20fce274fe7f3eba607a5d230b587f0745db7165802599bb06024eef82f0166bee3cee9acbb8004f3b74085ab0302047c435bb500673065023100e7d871925f3fab1219ecea58eb6312e7f746a4cf70ed0ed97adca3d32739774b8c862839aabc7d8cd33567ff7e71ff2102306a882587c79c9db4be7a5342685960b1d46a9e656948987060a012e111d9ece9a5fce4692d299afd4e4420fcc68455450302047c435bb5006630640230694e6efed94d2b7ab8c8c51d4a003eb55ac74d83bba7d6b37cb50fc90f240f68294e043f51d0abdea66baccc7be8e012023027cfe47e7cb4ecf421448f86715935266e720eb4a20740157603bd539b517a87a1fe45f1ef0907f9d46aeadbcc161e530302047c435bb500673065023100ac8731fe5352182ebc14b6006d7715da6917be049224f0f5f1241a256b1e11475255dde5f8d824a6489596c4ee43d57e0230788c086b8170f419f08dcdbf7e4181d9afe599f443fd53508b33532f24a2c53d7990a0e693dfdf764a2b0abcb55700f30302047c435bb500673065023100e0e0776d0eb7b81b2ae49d1bba43668cfe2a7504ba1d3774881552cf286e0e75554e72c6dc97be2554a769da06e2ab890230260799fb7647cb24ad5643a823c6149f2bb0241976be3b931cd1845699f3f01f72626d8d58d5bdbaa60d6f8766fad4020302047c435bb5006830660231009f8c1392b0d81884e2d15329cfb378e5d093bafc43f68dede6f616c213d108d38f9f7bd52f21d464a0f1aac4057458a6023100e6cb2fc85404f08db2dce8789faab2646f8a4eb07e91836280de4e85698b114ecbb0fc4b34d33a07ebeb545ad251efb30302047c435bb500683066023100da4eaecad5f5666550a06c8941e033a310a894ba995bd77004e90fe17cf12c52da9214368fb411b85bf5d2c905b465e0023100c96a93ca347cea1a335cfdca330e315b5459d7109c30285c2b7dcee7e2a65e565be4028527433cd92731bfe7e3fadd6f0302047c435bb500673065023032237d449545cf2413047f5df98951ccecf03928b3b44e188215c5b3aff1141c0fd1641a67ed80c17f4605bb849d3919023100a95984657f5411dfcd7058d7ce7b6e99ab0c96de01733b66d934f9c3ce53c2b7c606c70fddc6f0538e08ae47673541cc0302047c435bb50066306402301bd42eddbaf9df4c657031ea5e33c2c75ca3cb257a7b9e6e3fa49de4fe5bd764bac1c1c6127b3f19f80d707fdda379cd0230437e58d2f89f05c5728cc6e78c85cf47fd391db462f792d5c0bdd9c384b513ffbf8fab369616899eda1c3f7c0f7f677b0302047c435bb500683066023100f2055544ac26e8e5383e229eaabbd01463271a1967b68f49068d9d8b284b7dcd88c4a8b3159ec2e5c4bea9475d81c227023100909c8be7b3cac7d79dc6f01f2b8be6bbc5232768a92c9cf1bd47f524337e346f7f19dbf79a307e696fea660dcc7020900302047c435bb50066306402302c5bc94a83afb1ad58dbaa709790206ad40ddeb3adac63f4d737268f378bd602030eb8c5010a956b51867698b24169b002303901fe08c820e40d27387f647faa0cb8f539f9b56e8cc310395125af4c779ec277e1b2c5b4e8eeebfd69ac16500bf2b00302047c435bb500663064023060c10f5c3bdb2f480e30925bba883ebb51d420c974a0e10c2706ecb063e642011e0b54097f748880c1c784dc9725aa0c023056b0524579b0259a5e6168579913743061e235887e8ed7e874efbf61f834be85a3eb7ab104483ac013129d8542998f250302047c435bb500673065023100ab4c50a8f6c62f61a63b61a16e51d86083952978759f2e06499644db897c08751a460707dac7794b3a5d5520ca070db502302ef9c6c5b73d9bc3289dd4925346834a7c9148d0768f348186de57f96e2ddf3c297248cd90f16268904d72348e1d41ab0302047c435bb50066306402300db6230406389c7969b4033408933a7d3f2a494e3504771f020d985090b6b086d78bd0cde4909c061c0a9f815116f18502300b89da1141bfac86779f481c709cdef8233345358a91377b1b8f21b297e53d6a0286370791b09d904b6c8ccdcdef02f50302047c435bb500673065023100f613ce8c8f91146ed05d70ae0f3216b826fa68ce25ebbd9a36878f9b0ee6d2cce3f5e5334f6e00edfc638818325b42a1023041913783624d7f22842a9097a314ea100da7fccae4124eaadfb5577d7101ac03aac122e96ce0181ce1e48d29ecd1f7a20302047c435bb500673065023100aa2e68f3652995291e6f1b3b33721d40fea96db8f03ef2d709ee1f2f3e4b5aa85a82b4d8f73e810e17af13c5fe08e7e502305e3332383b9896c87331be2215867193763d9678ee74c7350bbc45ff3efd8b44c2afa96a21d0438e219dd754b0feeac30302047c435bb500673065023100ce69d493fb3810ca8e01ea0e4b8b3f1e73517136d65c567dc3bc043fa13e8fc448ec863433f89ebf541b7aad23782c5402303713f29ebc11bd6e6f1dd872e17cbb0e95d6d5ea2eafd8e871088fe0b366e75e39d4f34b87c61944761c3e43abca02de0302047c435bb500683066023100dc3e7e86824f557d9a9f73e061df4c56b66b02cbff9a91145b116d161724dfd1105ba8ba43e19060aae9103351b16b31023100e91b14a217e1706073f7c35b1713fff2d3ba9b2df2cfb68b57c8afb448df57e6be141c130a76cf617869a8cc06d5f1fe0302047c435bb500673065023100ab4f006bc57f6e8a64aaedfeb6eaa5fc3418e265869235f76595e098fcb702d7b2ae03ee5557ef98e85c45bee0cb979702303c1018e808fecc58697f8fabb3cb74f134483465f9bc114a3e19349e5e39140651fb9ffe51c8f0b0e5b85d4527b769780302047c435bb500673065023100f3369aed67a5e1a45516b8d6a0c41260413fdfc453e32a7d2d753a52910e08bd78889397d0ba8d8e44e9a2fb855e77c50230190cd19b9905cbd6e07e4dbd586f0189f49118278c0b219de11c3757bc0cb929dfe05294e3688899f095d3e07ae3bc550302047c435bb5006630640230690b3312d837a3a1954c406250541d17066f168bde00f5a4113b7870397dabf74530e878a0a4490cd24f8d839dbe4c730230356dd4e9d22101464bafe5a44abd14466ecc039fd2017b98805912eb0b976c43080bdd05f21613b93921c7c62831515a0302047c435bb50066306402307aeab0c5a9ccc16108ad8e44b4543a93586e66ca49ce05ba94a15b611fc8a4034d9281bf2b59cd1ad2be0201764b08ec02306d913354f3a99ae8123357744e331f2742ba363b5c17c73c0e9c2f8da80408f00b3ff727cc38a1ca75cc43109ba808920302047c435bb50067306502301fc8eec21ca734ef4613651a5f202c19f93b53059078451780d6a0dde4c9890261f7ff13d559e8217aa543a05a675483023100cec9156ed3b0651fd05122ae34cea3b1f879972e911fe55a3ba58bba0f6522e71118f18dec46df951e0ea9e94709bfc00302047c435bb50067306502301864ad74165ae7443b8801671da2248775991d461ec4a5ecc496bcefd2a3dc3c42c2087c1982fef6842003ce9b1d826e023100a45f4ba053553f00f89d82fd208399b95f258d9cfb4d718486ed6da2fc8b8ff3461a98a32be0d992b478948c0ca52e790302047c435bb500673065023100e6bf1b9ee08f7bcba5d51b7ebbad9d5061838c946a969ab90fd3405d57a167e4d691db5deb957e943df78d415503081a023050c19cd3415f75842f03a498a96ea3a4ca0ccc1ad031371c82dcf31e81aec69559c4d35259818cfd033fbcf29765d9030302047c435bb5006830660231008afee129ec936c4b1b6cfde0868c5071a29a7b48bf3d0eace828c1d1333c6799c9983fa240b00b560b08aa0b9dae414b023100f50fb209ad3bdee9aa91386a7396c22f7ddbcc8e1e009a988377e8adc8aa6fbce914e20bd86240ba2dd3d8e49db4068c0302047c435bb500673065023005a4551203504d4f0ba4961aca8c3fdf82781c8dc0aad33c440a3bd9974bc11f856400cf4dba18ff39734974bf5d1e51023100db1d9c8aa118ebefe6215f66fa1e2b335afa337829f4d07a48d8649444d083b567471460805f0f1262834c8557ad1f230302047c435bb500673065023070b3e43b946cd4e42e6682c551b1c6fdf6b599c7ec6e9aa555ecefbcc02da45428dec85c2339b62f52b5f92f0f545710023100f20f2b04e4c49bb7f55da3fbf0fa3633020ef332f17c2861f4b0893c25f99434adde7ee489b1b326a5c50c22058253400302047c435bb5006630640230178a33b5bebfcf2e9962fec8ba1220c844e34fef8d3e0c1c487482daa4f8ca721242a8b2cd8d4e1bfabf9869c6dcfd3202304767017f8097b2c0d95ca33434c25f9aa01b9f6b25b14384886553bfa75275f4a2eb8106359568821809683a31396fe60302047c435bb5006830660231009cab4e8a6e7623a583ce04fbe43d011131c9c718e338a001b55284c55dd0dd838f764accd01657ba976e3843631e3db80231008d73db5bdd0766192bcf7870116e5208c20074f15a70760dcd8b6bc5ac12338df13d06f2ded40a02c5988cff32f997210302047c435bb500673065023100b8e9fa5617b4ed85afe9db9c5cfa7890ab4e1c5f9219d2524f755dfd7d78d6fdd07ead56f13def7c995f0c7650b5df8202301fb008612e9d8491a9cba208e51448e5f0ca1b7a2ad8c341724493aa0d40fac7e6f288a8a777160bdb9c1e3db830a2b60302047c435bb50067306502302fbe9b8b71934203b672a51c50fa4972eb9d40954314325aee54e28a63a97321bf6df7dd5f8d638dba8fe795ec8e1e12023100d2ad5e9243da34cb96ad98794a24e98a3fc20e908656c77d38bd386a6ec1adfef767d6301fe97664108405e215e1f8960302047c435bb500673065023100e617e437470979698eaf687764f3f5a480450cfa271d227c64734840e519f60c143a1e2cc2f47d8e062154ec70189aa202307662ea268c7957121f8bc83d8f69a777e038aa7d67231410905819936cab97fd86d429d532b2d1ad86a980e1e3a0b9590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100920d3cd3920daefb107974d95280bdcfabeb6cd3c35591d30df85609f616adcef475ab483f48a6f2f8fa6a8a40f0580f023100aee0e16b660b65d131d6e9f6c3cb53a53dd8893dc90de0a0fb53fba7aac0ad069ec9d81e486cc9b26cc78fe6b7a3ec550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e235d7122fb6e7be4e150ee42b612b35668446fea06f559115192d54d0f5efba097c4510357575c384f1804a97fc2505023100a007a35ce6b2d6240b767fd1c4efd2969290bfc08e30775ed2d57bf2e90b9555d43835a26dee7701b31a5d876d7835040302047c435bb50066306402303e07e880a57ea0be416dfc34423491e26511c81360bfc55edebd2c7bde440f1bfcf75f94f2d0e101a054711c69c910df0230020b9d837cf6f8c42b6e84cca29709c5993138bb287f702e3d4c5c66e80aa4f77ad6d41fa16f4867028f0dbccb5c24f10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074e47752e3e3e3a1ea2277dd7f883fe277447dda8b8354d02d1a34bac608e779941cbb72c2dd64b955970bbc02aaea81023100f7ae1522589e1d52a098b4602c12618b3469811a33565b875520f1a7beaa693817674bc84a3f67d22c6d4a60eb437d390302047c435bb500683066023100bde6734c46bf377d0916d12f41e9f4f84e602c2d3c3c92353d8048248246570f4d48e7356218f5e15f883419c288a42f023100fc3c248886557a34ae69dbe45a2321082f524569a2020198f6cdff6fa219da8b05cc68a123d7898d823a163f676bf2660302047c435bb500673065023100e8d44d3311201c797ab70c9e0ab7ff7ddab247b76b06d9271a710df3be15ea7fc5ecac69e9ef0b37ff97a62ad85d58b6023037cb93f0dcb43c8edaf33f45ed005fc1817e3cbe41ea972c0023d1da2a342054a9b733e7c5ac3ca0db0800880c46311d0302047c435bb500673065023026028be1f935c59e5cb5c362ea4cce08f59005b07f4432b7eec6c36ecd7c5db11ecd6d656d2ca7a8b5c2599a6eef3324023100c98e0581cf045df60a5bcc565767815770698c64506b9ed61081d180bf06d32ff6c243a2e5e835d813f9eb87d5cab00c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100efa52af57c325a30659a06edc55171ec512c96929228ff79075d39367f0103dca714a1f78301a4a81a6e1126bcce6c6d02310092f39ce1fddc9a894998167c15b06017e518b17cdca76684fc79e1580dfd1c2c3ec435c8778171788a3291bb9a2f4a6b0302047c435bb500673065023027a3c82672b1594e757d7a638b9450947aa9fe5b318a57352a9c0cba9b42c046f1f8d0c665e708ea4804b6e1fa9db8ec023100aece4bb7fb999153fd88d77d8afe4ec54f3de6b9d2ebca0f3839dad85350793d7c436c3f4e829e384767717288fe6a990302047c435bb50066306402307dee12b8668ca03126df250196f4bda16f75787d60769b4b06791f29366559e662a1f8a95a6792b6b3980f43aaec97b902302e03f8dbc2cbd25ace21e17a3f2a8e15028579025c59ac6f28020ecfc03615323c149b15cc72971b5c315148d57919780302047c435bb500683066023100be3262928f3b2dc3f0d183544c26f199e7ce198eb5614d857093a0640347ee4ab6476aa13d775f5d3a42ab7b74afa7740231009f1faca6c70829e286097702c3cf5ffdff5d0ebbd80785df303524d134ffeee778a523e11d74ba4c649055450a5189620302047c435bb500673065023054256f96343ca3d63182237d209eb2c06774cc6a36ddfe98e815267f9e3874b2cdc705542acc0e6fd62e63193f21c930023100d414a8219715bbab52077856bfb1dbf747937076b1b9262d69e6174caacc7745941c3adbfea1dcc7f4d52eeca2fc1e930302047c435bb500673065023100a3003b0029860233bdf1661749621712e15ed7eec3cd55a709f924954d9a37977600baf34cb232532a6e8d93ec0b492102305433788db5c132db20893030d1d78a36959a76d7055f555193d71b8da2b6e05bfc2176e81c66bc23a6d0286de528ae0c0302047c435bb500683066023100c8a597f90bedd7d0b04ee3fe1be4f47fd2524f01140c1a68087f15565acd1682264fff14243a5394b119cb7baf9e0ce1023100e4a5f9b6cd815316ed6586048629704eae59a8f5b51cd925674fb7a5606ed4314fcafde4df5cbd9c1638ecd912137bb80302047c435bb5006630640230205aac6bf071130d621e7d49bc75a2fbcf4d55c831b31850a6e4f96fc6b62a83126cdbb5e091153032310619a72ca1e202302a47a2a22971c007b0133c728417eee95d3757dafca7791ca899d202c06f20932d4eb75268b8053adbb07dcf9eab1da80302047c435bb50066306402303f967d0948a83d87015d1c34979596ce749a6aac777aecee8ba4e65812f8f53bb2da9c8e4441d4a6f9b612bb4eafa3c8023005254f36241580084d99463a54dc5189db40f8230c11b3e54163d04d04589ba661bf0679adea10aa76f64150396ea6800302047c435bb500683066023100b51911cfd32664cdd8ee548b3d15d57742d4c606ce2acda260ee7a5ed9d00aa9e7064905cfb7c7355b16e4d0c88812ab0231009f8c8c23616138967a5d33b39bec6ec6f115c0c10ae23ab540c9271328dd47d51727f2bbf16fac8fed7169feffde85340302047c435bb50066306402303c17ebe7a95bb7428caaaff2f2bc800c8b61cd4459ee31927d53c3cf67187bfd94ee31bcc83bdfe1df5b4e13c41f226602301fc847a2be12a67f16f59fae21577ebeda5bf0ecd8bafd9ca8bfe627c6242d5a9f7fde2074d6bf9a08ec30fda9b6b0930302047c435bb500673065023100dcdbb950eaf5561654cb43e142258815627a2c69fc47957d0137dc7d55f969a6accee3ddfabe856c3820f1fe0ab80ebf02301397255af587fbbac221296a11814c2454b36f8f317cb33c80235854bcb3db81e21f1a0b8c9a123870351cccc0636c970302047c435bb50066306402307d7625defb819b3579889d8005aa506c8476970297c643f38c35e2c155057b7b9a1c3b2de4210a61f472ef04b211513d02302a33e6f9776465713eb0e19640f1259a18c9fe1eaf12be478209e990e0485ebd149eeec6de7e971131319d4ee5e0775f0302047c435bb500683066023100bd97a2c56654f547f02e8bdd94e3b437b70ba279e7244b0c4deb5457bb25793d41ceb9c3ddd624f5dc753ac48a1ff298023100f3b9b3fb95d958ff74fefdefbe59da58bd810e31f1e6b0a9aa1d7e9da72a65a1f191bd37bae08f208455fd3f6d73684f0302047c435bb500673065023100b2339647dd6e65122b07339300cc0d62d1593e36cd456cdaad4e9bfb220d1a5a61656f82a8339d98e06c4d40e78c4d9d02300d428ef472aa8197e319f6722aa9983bbf9d39c685d0e638d9326cac35effe2bdb68de8c76fa35ded8938e5068d4da580302047c435bb500683066023100803c27ee882cfdd21dbb45367799cb68e055fe2dcea2a9b85f7ca445f57a12ef0bafd4a9e8048f18de2ac183c758032202310089fc886610aef30eb18924d56ddca2ef989103d821af04c93e0f448b56981e1126544750d04879950715a51db5dd98f20302047c435bb500683066023100f742eaeac62cf42498c6c9fc6475c9233b86c38ec0227d054ab962344799ac62c0e075a50d02e8a3c6d5c74ba3b8feeb023100e893b65a4a63650342aa1f22c756db298d3feb561006930309695c45008de71eb8f42302e598570176ccb6dd2bf774820302047c435bb50067306502302025a9627ac5c64ff92d0f030df3a675be2e15cd74b023e5204d893942d9bc4573e212a9bf39587aa82d5ead83991300023100f94d571c80e185deed115c7dc1418c4c6688b75361c31cbc9b417c4f7757de77f4f2876168a0eee3d77cff798f1464ac0302047c435bb500683066023100b105611b45a3bb03fb70a455284e031e09ba835d83d3e6adeb49827244cbc354706cb746f1f864fe8fa2fdaf0140ee01023100b320080ae4fbad2922fadaea8a1502abebcbd5cd27138ae4c08dcba78f6040640dc41752a52a75de162201df52fbc7ac0302047c435bb500673065023100db0d7093c1a4ef36de3d266f43283b16c79a213a0598c68424253ac06584f485b48970202eb278af0021121b1cda99720230203b31b64014210960b9622ecd734312c70df6f269bf05eb7a95e8bcfa79adbbfe3bc994b5578cfc2e789b295874165f0302047c435bb50066306402305ede14b95d2ec8aff19bcc582972ec854d08354a0966df2fd8693f8c8057494c349ab18afbce82ee54cbce0f0748fa7f023073d9c8e02a15cf7ae67c1edcdd0c5ee3991b51d47724191b8e5a517051376da767f95ce4565dfa7f843421d82bcebf900302047c435bb50066306402300cce6e2d9ecfac28dc1112d3adb978ea3b996fdb6d8d6982674d58795747af474376a1ec4ef7f3f6009a7c366f3986be023049372028509131c6b6cab786e0d16be285de48afa3d7a016e7383ec2ee361492ce814082b7fb825b9d8d803b56dbfa760302047c435bb500683066023100e48c57c430bb2de0ea976fa2840d33d8299972e268b2fbbd7a59eb3a080d5f8f90cd80ab14cb0f01f672851c6d97f538023100acb0e5b8da63140a5c473989aa4a60df8cea29bf1b4890234d87c45eede40536501f6421567a28bf31ee16fba7e7268c0302047c435bb500673065023013b726cc7da18072b0bca2cf96f872652ff4f7ffbc634aa7be6f8a3696a8d96ad2810a6f0169c21d1b8ce20d4d726edd02310086026cdaed91bd99e88cb1b1a5604b01c097b7d8042466720550db2b4cb8140440ddbc8c0161238d9d95d53e43ed9d110302047c435bb50067306502310093c7c5474e9023f606676524694aa4b4807df0df21bef3547970dab345c310842a210d5a280fdc58669adcceff78a55302301339c335bb83895e44b55a7dd471cd5092d2981ef2e475f807602dcf49e5c914d987b30c3231b7b00bfbe89aadec5ca30302047c435bb5006630640230117518c250494d968c66b53bf61462ced63262923f49542be0dee69995223c34239561cf744483495d03f69b3d3217db02305699b5632bf5d4c540f9cd9a393c5410aacf52d542871670779df912ce5c65af10bad341f00e7c21227fa52f6ea5add50302047c435bb500683066023100feb4a0f3d4f2956407493332353dbfe8e135e2a9d3977129ba3e103e47caaaa3ec4143937e20e1a8400a982c2c59d8fe023100966746c66818ea9289588faf0bf89b74d23b1c73a5fa4cbf6f3de49d21e953b56ba808e0602527270a516a4240b8d7f40302047c435bb500683066023100a138dbc7815e5826205cf1df315ed2c6d0c4dea3309bb914ab9bc91ea0a796e130d1737652697332b1817a17b2c840d5023100b2c04cfa97e233f919f2407141a309179869f4a5d1a66fd974e488232f864da51be72cd3581a3cbc1e4af1c8d697d28d0302047c435bb5006630640230321e8274bfe4487f7a85dafd0f9d105b4ffdcdef983bf2498adfabd28534d96f15c65fa3eb2b0830117bde24b2b57b2a02301fc21c1ed069c536384aec9f7f05eff050c39792a5f57fb80a2246505bfed069203f7ed3525c554c4337db0329489ebd0302047c435bb5006730650230643745ffe96bc2d319434a8d28d415e3be962a5f0d7c249f55a5fa8b26eedc9987d41ada1278288306bab5adb7f577b4023100eb0e7d6581035c62d07196fd97a696c047dec1fcc3251eed082b94fddc30c051402326496cd6e41f31906c7d28cda42a0302047c435bb500683066023100ab825aa90bea1479db20fb8d786f834a1f3b39a89656b1b439769fa9322738dc06377c87784eb27c34f74e91c63db6cb023100ce0fa0537ef440747219685f537d66483c6f18d93c4e76522eb2443c4521eb04b2989bd142c164f9907abf360cb9a16a0302047c435bb500673065023100a1a7bd69485d1d190fb7ecf0c69e68ab36faa0e5a356112b2b6ccef602fe8277179b49e1499f20de38842115e4b85d45023037fa8a118dfcbb6c1d91c8ee9b48c2096875795e5fe06590a6ba5b4f37a4e7550e3231e07d3c06e18fbad989e91e0ddc0302047c435bb50067306502307b55b2b7698fd17c187b9fb6098e792a5db57e0f078e119ef91b25a66bf6ae385d5dbfddae8469b74c11de6b66c0c677023100af3eb6e4b696f075e77799d0ac52f8a086c8e4a41d215dccd14f4c16076732abf2e78eaad83feaff8301b1b43b3681910302047c435bb500673065023100b1585c1202078ef9d5acfcd130ee9d549b93f27ff645d71434a684c486158b9a41a7b12a878b3dd97f1a7c60263bc378023052f9c78075d783d47e341d6b70bd69adb53e86ee874b81cee6365df63dd9504767de96635b745233be88cd208becfc8b0302047c435bb5006630640230506af489896d3589f51a496144b0ae9eb97b1d6b03e9fba05d9618cb269429b185104360fad8715c15f1a96c55cb8b7d02307f969d58cce1d505eccea10a5433f6248df65904182ef665cc7a95b90bd7f1fbffcb38fe8d7432d10d16e74a70c21b860302047c435bb50067306502300320d52e6e2c853b436075ea8576b8ad24f4399feb5eb643c6c583f22f9c6261c83657ef78b94b26e01cfee962b5c92f0231009fb15f642fffb43ef0b9708e7febfefb2a3c57cd429f6de7861310a620e2e226c9d1d817fa910858b9bf8ca96e367e750302047c435bb50067306502304d2000baf910727c2768d37c5968d8f97a1f28ae8333d789fc70e6ec8a846bc43a680f83600ea1e9fa3811c7c4026a220231009b5fda6a52075db91c8776dbe0402d6c58ea550121b2d96385fe8f0edc470b620efafe83fbb466e46cfd7441cfbd65d70302047c435bb500673065023100b91d2d4b54d3c5078de4f8aceecf5f3185fb04440e2f8ee0a68cc4802e6c6e2279dc0502fd8285302e294fab6e92d07f02302e26cc194172e0efd3b518931838ea23d32fcfab084e3a4491ac147834c4a2136140aa04f397468b2fead5931afd08c80302047c435bb500673065023100a26331d0afc5d38a5ef9d7a1e77f18f376f4e73b8babaa6fe77cd7dfac40e808c1cedae67df5e7cbad410bd8553d19cd023050044c35786f66396db5b3789c17de011461b5bd9c2f2144c7236b5b989a3b29a301ce3cd9db31ac9a0c6d89b8de7cc70302047c435bb500673065023100a3e94239b1db5f7f453ed3df87260e4b969df282d2d3a1efdc8cfe8ab6d04f8030eb62c010616adb355da99222a807b902304341e1ad277265ab0faddb1a77f05309b572cd54b58d5eb425ae25859262210e107647789ad418d430da21f3dc6dc3450302047c435bb50066306402304987dce1ad843ef8f1cb6e86ea8fc8004a7d5dde9a728c37a808de41814d28277d6311caf22470c46f367b683e7b7e9302304da2f6d2e5091ddf948298ef859e7b0fb566d16d05dd02641e5398287fb98d68e7ae502e63d659fbd37e836eca8cd3560302047c435bb500683066023100b7b40cddedf6dafc5c3259204a9da29e15a50ac24b9d110d2a7e77592e2367e58b6b23b4808eb4f712c7bab7a2378985023100cb719984bbde6116ac898ae5b181f685c95c9812c41f63362169b3dad191099559a42d912c21c5de513d1636995de9270302047c435bb50067306502300c3bab6b7906e84fa22f1c59346e24df0ea6ef6061c78a7f9a524f5d0867ae143e217045b78219ca2e1dd84861f2d7bf0231008bbd97bb9d893407a2a918e2e518bd85e62572faa78bf6df0c40d612f4a7b5bb474245f094925917befeef7b72c04fa80302047c435bb500683066023100c628893b6005164cd9ad1d7b58d44bca78e380c93960d3ce03a64d32164d950a19a02574e0fe90bfce708d518c9d98ac023100dfd6d51e70b2ae10361d49695e57056ac8d59711e978da606ec2b43195bb62a1ff174598dccab47060d9f35a3b125c360302047c435bb500673065023100c522cbbcd319186513337edb3ddbf13c6fb53739f8d519532b9d82831aae90c7f8bc9ac1ef881eaf5d4266094cd591c002301e5ad3204e75b3bb18e0c6d0ca5a8cc3894804bdd6099190c33a5037e840eae4a250f1cd2dfedd4e0b31b4fe4565651c0302047c435bb50067306502300490be235ac6732a64827c67c2fe4f6a99fcc21160b1d9e79979b0cf4661641fac8c78d27e9a51b1f605adafbc32f7ec023100b582293f18a973fd3007f2480b75b333bf1a59d5b02dee499c2150ef370271686e878f47c69b55fbb16d89bb1620d0e70302047c435bb50066306402303149d0f6430fbbba5969742234434e0127acbcd5d5f55fde5ecf41aa3235db0bb694d45ae9858d19d205dbaf4d42ead1023033fae2e7e40ace7c169e96f3e92a5202ca8863160c47ce040b6b97f80180a94b763421e3a40e7ebdb1043c77600b08110302047c435bb50067306502303c371cd5f72b2ff9b5070a2269cc0ce062ba4d1e4aae6153ea9017cff257d3336b80bea72dfbeeb3a566500272463090023100962d0043a70707b8e9d8c3001738aebe78aee8ca10ab34f8dc9c40c25420519042c26b3a22416df20bdd4be68635f6bf0302047c435bb500683066023100a2127f2b3e2baea0c7d40f98acefb93d155a9254d7aadea38ab3b3b68bb6442a2d90791949e28db29d6939ef35f46c160231008ae62669913dd4528bef224fbce46fc157f04634a0ecd1b3e58545bc60e45c1a6ff87b5e4aacb7143c64eea7c766091f0302047c435bb500673065023100f2631739a1bd6325832410dd2d6100cd179c2586a94a2c23a40a341f16aaf0f41b1995fb433e005d69eda375d9bbd29e02302864615423a444fec944ccbe3cf5af5c77ae0a6753a1c0d4f3f3271bbb4056a608c97af10eba15e20fe818ba526eb9ee0302047c435bb5006730650231008d6d96d123ac78536ca4259867254b695c693a9ac68cca10372010b8d3b327e1ef1456ae05f8032b0377e18af0fe557602302944ca665e72f6ff9e002dbed6d4f8470be9d801c84b2322cc298b66f62b0b78f16a646105a562f7d2e60883764a9a140302047c435bb500663064023059d7946d830c7ac19d4fd6eb52d15baea70a8bc00c44f9825ed18b5647fa1c704c71a93407deffcef359239c1181347902307c4c382f059b95f38309b458b2a00ec9ceef8398230fd4451ad16bc01bdbcc8f8f4fde14582819b947b36f43d02ae0bc0302047c435bb500673065023100c227d8b5094ded4d3bbe36f13cb6d9846d000f76e507c9f23a32489e5068eceb42179a18ff6733479a2018e9387d750d02301958ea9112856be127abd731a0edf7cc2f2df9605637d976c6c1a257966857a00ecb1ed0bb12ba7d0d86c664288391340302047c435bb500673065023018e4a264be0ac35a95c86eaf00b11fa40d93ecce7769e5f7d78c1d08d8ec8f5858bd75fc2d90dabe3750bd330c89d886023100ef069c479a563657d5fbe9aab30f170bc0bbc133a7415d0c4d2e1f4924f543f13f3ebd8b867d941f7b01311fb83a27cf0302047c435bb50066306402302e50df478e0877ead2f07ef207125f9e150f760766f148d735148c2b45d9d4a838beb774a14a0409c55ce77d6c4bf6420230347a91bca7a5a5c47d6757c076b93acd132d1957ec138f79f578c6100ac18eaae9703b9c267d9abcb123dd524fa679170302047c435bb500683066023100b0361b69219e8e31ad73f7a5658863b0779dc66ed1234c46d6e54d8e1b05c76b088f73a5ec8c651064adc57c532311a1023100ab3e89dc9541316f4fe06aaba87f4094eb60d24531c71d60a832afb42d9ae4790e4d26db0f0533af7e04382363c6549c0302047c435bb500673065023006d76894898a06cda7bcf18408b74c8c7560ef9a34d655665cae78d6ca2ef8f6184103dc918c5160c0458b8a0f6857ff023100bde201dc16066a14de1add5ac744e3406d051b1d325b6dc54cbaf7c9c76dcd49e8c30dbc4c82e4fcfb161d8ecacc89550302047c435bb500683066023100a24edf79484c3cb332c641629edf113c49c97baa0c58e2d7d3120b3caf3b6ebdd9fffea05ad84367dd0793b1bb16ada2023100c188740e3415a860257680d7f7a09c228f7288ac42ffd3667d4e8a875e915f792a4d638561c22c969dcce7d0d9db6cac0302047c435bb500683066023100cec221ada7874b7b76372f87a774ef9bc878f9682440f5b8fa71c94bcf1c04bc5a12c05d9b95b8cf6f17d7c06899b117023100a772cd59260ec7097831e56a07c0c3bd642d2a2ab85695d8a4309d4ae5f2b6af7fb04e8122867356ba3a71c0a7d30c3d0302047c435bb5006730650230008879f5501f98ebfe5e43774a100efd385a036938eb7c1403595e3d4927f8cce45eade15e4ad485f051c4939c1a8d80023100c644265088de6aef0215350530cd364994c3c98f8397b751a31a34b7559f0c68c51d65c645a102494f5bae92009fc5ac0302047c435bb500683066023100e27b160102d634a7156365cf85735a042d13d61d0b501ead5d80330f4866601b659a4ea3a16cd2a88d9eab11ca87b603023100905df980dc4c19161bbd255cfa99ed6f3c2b7372670127daca80faf9b45c6a5d6e1fb7c2395fa9fa354edf8e6c83c34c0302047c435bb500673065023100c2ef576869f0f6785761d7d65e2e34be45ac71a75af04f174b52d7f7a0fececb4974dc3849287e87dd915043de0a0d3a023035d8b38319c3352f6a6d7e1199894e2256824a38ff996c37be3b27626d1dbfac1d48c9ee89d4d4f4b203f2a3654281eb0302047c435bb500683066023100e3a16588dfc0a67417bc24f591aa8457b320694f11329e24e98ca610cfce465058e2db7bb49f41c1f54670c8b70334760231008f9512cf5d8082faf1a8aae1db88a46307061a13d65022aa757eaa40b61baa6c674500e7f823f4c9316de0fe8bce4a710302047c435bb500673065023100e8bd38e1054077613cbc2c1c3ca1cd6bdcf64bb4f5e5966bd36a9eaf6d8fd0de791c7ec745c43826875e8b9dc92f820302305f9011d0b76b429b601be3c193b8248080de09194e3c7492b254803ad11ecef925ae9fcc78e58c0adcd00b829a250c130302047c435bb500673065023100b844a8c6c0a912b726be758c994b967e770d33e51faef44483a9c4e31f7de28dcfa061bcb2537dbb25fcd882cc884f3a023068c5bce1d3f5f57d4e2d2ba3d29d9c2589e85b95f3b8287c1de251291d204cd1f0b4efcd6ba7562bf14242d42692476b0302047c435bb5006630640230669e408551f19735efd6b09f3a444812ab0b6ee5698302f9adecaf718ebc7665a292325f5ea5c6570926af59904127010230040ffe9e7f00dbad5d21c82c00ab6e006108be489f3abe0b071828e107cb4c81e7ee0b4a928e18ac6d0b889ee80e38c50302047c435bb500683066023100aaed30942bac5ae0948cf9ca1be446618fd0139cd6aff8a4bb451149a8ae57765722be5269916de2507fe103662c49e0023100987f3fa84bc9b53046537c929847b5ea826df59a9e06e17f893d97f8afdc5e419632dd7087dc262e253a632d80ee9b5d0302047c435bb500673065023100ad721c3c2f43a5e8570ed7a2b71d27eb5526d56b29afc7efbb55fac62687a11c438235f650f4396b5edbee76bd9bdb1702304586d70f6b5192c89d9e90ca929204d735746e209de31b3b1e275e88dfdb9630fe72d8cd007538ecb488ccdfac7c532f0302047c435bb5006730650230009a65d80e73e28fe2ac61358e0ad1d65d7d7ce37e8d2435eadeb88cd552c2912dab45ed310852fa04e1c7fbd0ae17de0231008da5856e92ee028aa406de0c3ec65a36ea413cb3b88c687a14583cf69d09705588cc9ff3138e3bf018070f6ee10ad4160302047c435bb5006730650230351d97e35b0cb21f42cc05f22437d37641b01e007f576fedbf1c5e3f103417cff076f83e6f5262ed175b013e1136256b023100b8e3dcd8eb33a193214df29f19269deac09811d458275868ecf66901e56f32264dbe24c05ee7309c0bde249fb654d7250302047c435bb5006630640230193981cd5b7289f7b7078b3e34b43ef403bca641f6c2de8a88d7bee2093649795e4fb58a1c374392575321c2c805685002307b434d70256511ef4247658c4c2a496a0aeab5b83ee4c455ab0bd95f5daf69c028781e797b7a1c822e469bf0e5541c1e0302047c435bb500683066023100a5e733a668122476eed2c6ed09ed1c76140fe3ae085c6163d3d6a92b520012556f0699be0296511a7face322e2e1a41c0231009881ecece656785c25df7ae9c557c28f6ccbdcd0314f2a703f866ced763956d8f57200a045f446a860a47d2cca105e540302047c435bb500673065023051d81012dd72774226e50ad9c0c04c47d9174f6c3794c448f315a60c9a6341ff95c640a423d93e71d45c5e46c6ae5edd023100a25814ed618419b44f4d1b396545e47d89f47914ef0c9459150a6d6dcd54533e40a73af6754a728690c752e92e501aed0302047c435bb50067306502310083d3c66f8871633e5253cfb63b4c0de1dac520c998169452ca742faadbe4a66eeac0bdbf97e9a17e7f87f30df0555c1002306dbcdd76da36be0c7b808ece17e2569fa2af975d4116ae03e880755325fbee91e35544f13f9b2d28e3561ddd84e63c920302047c435bb50066306402304546a5b7832004121df757c79f12ae35e0f3372ffd35fd639a9cb9811c8dc3781e18a1fb03bf3e08fd99eb6285a0600702305e21f70c9268eceafc16e2985ef876437f1c6da209891abd38dd6aeb8c35ff9810f580272ce00cf62dd48184aa8f4b9d0302047c435bb50067306502304a6c7be5137f69e68c8555dc37e03a6df5ac85386579a32e07c24c9bdb89f7a0631f970c370a2ec677322d47685bcb6a023100eb057d65284ebaf8830b6a1030b35e6beb8e8d0a69b4c3f61f680cba240486ddbae00e114d883e9a879011e40f43d4c60302047c435bb50067306502301f2c1781151102d4e6589e6ea9547269c94001bd004b84740c734eb927988a65780a2505c1dc729611e3d50a8e712c7702310084bb3be0a92ca4cf87f20aca1137f6a1b6a350185467c38799905f79e99c26246bb230814140920f84fc41d9a395869f0302047c435bb500673065023028d2f9d5f35185fc25580fe6df8e64825b752b8557974cdbf9beec5a089b69560931ad4d4aa5eddf961c960de656eee1023100ab3a65fa230e6d6d4959c06c3af791498c33783cb11e11da8df68fc63065e85a8c2ddf7ecd36fe29b7d28a59de03e3860302047c435bb50066306402305d0bb8d1704bd6be3fa8b74ef886084d2726cf7b466f47530081cf0cba5007f2caabb8c93ce0cf7a9180b263a54f2fcd0230211e2227cbc5b1b616103fdec984945e67f6d3551f07e6f907cd35f20f9d072a1b27261f3dd11e10380cb18c7668f9e30302047c435bb50066306402306fd619ae494b7a3ee612530da07d03a7adbb64c29647e5cfa5a1861a5f4fdff7cd35002b4b263ec8c9cfd14ab0b30d6e02305366fa12915ad04fb25f52f09e5a356e88838548ee7b10048dd44edf2dbdced2ecc63d1084bcd80f5247300ac1cc640f0302047c435bb50066306402307432c20229eaef5a6bfe52c760a99731a68db55502963c01d2d6ae5ddcdf4b4de7bfdd095fe9c3d5395c1b5593c5f79a023023610f47ae8391deec4da859c35b4379176a8bfe83512cfb6e4dbc8159a39ed5152949f7129ed4a1d70f54baf75330490302047c435bb50067306502300d6048f72570763177daa117dedb42679250d046228e19af7510f1ba94ee544d803e307c6988f8d5045f16aaca936c50023100c839c602ba45d4cc1fac438c8bb5c43322cc122bf87b4773fff4bc6fc7883d2b02a2affa5e6718514b4b41bc807258670302047c435bb50066306402303b4295237b68bd11e4dd80dcdc005cfa5f962e189c0473bf3bd157138aa7604dc4974e80a212876f3fb0ad06bf54c6b602303f1fcfd8d8d972d170d30ad608c52e6efbe15508a352d16c9896d6abed6d253e4dc85d3b6cdb727d0d364647bd06d6210302047c435bb50067306502310088ef38e4d8fe6bcd77f82c603a9c81ec973368c6960bee22f7e1d108223a825c71eda2de7bcff64a814f0475d2b7acda023017cf0b131fc937a6ce2fe2ea37631bd89a05d745fc968b1e5b938feb300c6369b695d6795f47eaf40898a2748a0d1cb20302047c435bb500663064023025b7a7be98ac0e14cf22d68649d0cebb10062d4bfab2c611e99625d21ed5f59624eaf17aaf388f1b5a7e4a055c80521d0230212885635c89a48d89be8c88104b1b7f6bba64b34e83e5539e75a5954727d7eb9867c220ea95dbd50b9d384ef0fc75af0302047c435bb500673065023005793528a4200944ced079c3d22f36372ab6b703046fa3a4e972f5fccca4a267a9da92a30359c9111ffed6719ef24969023100c5f137e664017a47c436fed2e371b626c141c612cfff6a95e3bb6b8b5daa6f1ca11954d3b549e3f7debc71519b23846a0302047c435bb500683066023100ceb86aa54529c83918a9880782faaf95ccdf563ad191192e74a42fc01417ea9cd5cb800bcbec402121fc7679b1399654023100d31be0adc3e85872259dd2ec80ed3847bfe92a0302bffe86c00705f3094811f61bee23573ecc0da951b68c16cb9c5cbc0302047c435bb500673065023100c980eb263d7aab7ac01920eee61ec0785caada6a5e3779177ebdc3be305b2179725cb9a0ccfc892e710b883c34766a0802304f918476a125974e0e72b557ff3b222203453fef37d74c4b2a8038cfd0561012c9bf358efecff24f98e920ffbffc9c8d0302047c435bb500683066023100ccdbec3d44f1daf3b6e161edf7eeaffc495b2bcf118506dad7fbb3539e1d5e7fd17c6e6c8f2909845185ece855af2d3f023100826047a679b4955706f9f68a6c5a11b0f094220528c9a9ca7f32e4b3bf49e396ac72ed8a10f044e0b0710cb6742fb9d40302047c435bb500673065023000e43457d40d66d67fe977361f086c13bed7e239197d4c8a84e1116c3b08056c8d35800e2c43ff2972845946675b700e023100b4474bc62c9b1c37493aa05a25a4598789eb9dbee268de7decf9d93b86727f148bc708483d0eebd78faeaf3fbaa3b7660302047c435bb500673065023100a75f0c64ac8daec6a294dcaf4217fe2d317386326510ccae2c7015eaad57f36ce60a63c287767f8dbfe1a6f95389fc87023006c95cf9fa82f122db5c4ff4e2151ef82ee410a3ba227fe2edc0cadbe3101dee1eb59f9582db0d979dd154ba0e70620a0302047c435bb500663064023014196fcd303685df35e1d168d0919021d5d4b47be14cc6c7c9eb6820efba964e9ec4a2f44e4f8974ed3a722f86c769c402302514fd6003d4436baf1f01d0b2b0cc73e86b63cb689092c05e3811f70f0a9afea22293a6ded52f606b703d79e8d4ce420302047c435bb500673065023053cbc01581c9bddbd9374b7ba591b16bb896765c15f90f2c88da9d1e4b1eacc736c2bd0097c3dd57f473502a6645dd0e023100ad567cbde9118e1abd291caf066da019de1533984acde34d4b6fd72df9541d2f7ffbe89de7639f8bf4d3cbafc64689720302047c435bb500683066023100a73dc4fdfd19b98eb8d30607fe65eb63733f809c1d5c50b7b19dc327e1a6d424cdbce000a68c689dce9a2068bea3f168023100bf8727f993feff56229ff2e924c5ed774b55c5c4955fdbf3a083cd6f24d8756c2f4295b6363f16936c62edd773e2d6f60302047c435bb500673065023100fb7b93ffb2a2232986838261a85f33892f4bea78742f2405f39ff310095a2cff63725c3676bd8d8483de3760d0bf8f180230352f8bf22ea6e4fd59d937da13ecda6910d27d7c1284270feea94c4f999e12142d901326e68418202804f2c0eae0d1630302047c435bb500683066023100ffef76ba33761a9a1792bbba31aa4840ed216406dea33e5f752607952b358f1a073ef4f4ccaf705c182aa7d6363edc43023100bbd797026c35ad076fe6ac920892a0bf6cbb6e9e6a5d01f580c5d36293a2d946ab575c78681ab260c7db7ea07abe93a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100af6e407894167d6083193300a299d417c2f44db046fc40c82acaf7bbc5c2b7de048cd613c5367e4de7cc74a96771bebd023100d1a9af3afbda9935fd9dffd42a704d14455f3af95e4e4d934e144d4718000b3b65c718636dfec461b2310776b6df3bc70302047c435bb50066306402302831cb72e8198dfb3eaa11fe33862f3f94cf4eb13d440e5128bb931349253b5ed1f42bc9793d5d273e47b68d07c45646023070b609ac58f2855d267c06c1f8e9470fe841701a6e0611b065afca181195d2882db1cb148890dd6fc1ad854e06b6d84f0302047c435bb5006630640230491e195125bea36a56ee2e907f2afeb2186c3e362f17142b119ed33c2bce445b31762a3aae1afd591818ce23bc7125d502305419935946298463fd3e63961358e8ef814814d08cd0be6674f85d3a9268d748aa16626da1573ba262d0d90982e076f80302047c435bb5006730650230415ca875ea0f522694b610b50ed74d1827228ca8ea689169d7c47f09435429d62c013addf845f415a91f8b588c4e3cb802310095371ae10aa2534c5b8d9bf95ef464e833df8997e6b592e4657708d1a09c7f746afea3470228b901634cdfa629a997a80302047c435bb5006630640230185d1a509288d3916f7324192f65b1b3887bbb21234ad444db08d58e6fa5cc8b2a3fbbfffc4759231c3531ac2c05e3e402306568467e4342b3242052b888ca1ecd987b5e445a11e567df8b8b472078e4ecf3f1919fbb590b5b9ab36ffd75f62d9c450302047c435bb500683066023100bdb998a24814adb7c2dd7dcd1951404d0c5303d45e958ef23fb76b6e2d280790228648cc4c4f657d453acdfa265aa5b902310099c51193cba65224d713e6ca747321cea22a02359f553be844901ecddfb061a840c6cc34b67861f3db088cdf9d925c8f0302047c435bb500663064023066428cdc717a8ebe4df9bd8988f96b0f9e57176e3742aae41c03d3c88bef7b865d874cfcb39b7a7420cb66209235903a02302c6de8c8e05138a2a0fad82deca735e5404cdeb7644b8954e019b73966751ac145652211fa50bf0363face51f63fc2400302047c435bb5006730650231008437f00764d6187790eb4aa284923a6382709ac8f157ab73768775542cfe70cffe3899f202eaf699b0837912352f89dd02305967cbc015407bfb4836076968640bedca9a175eb3a8e71b2ae643062230780cb8123137958ee2de8496bd31a5ffd9d00302047c435bb50067306502305089668d583fac422722379769472860243d1f94fb9970eba5943f47de94621bc61a331496142b24a749127a8bbaa683023100f9822ed1cd0ca1ee13b5e36fb4393811013f249dd27c9a82a6d747cf27d0dfe9fd6655b6f62b5ba5b70f2c143a472ba20302047c435bb50066306402304bb798a08240bcdfd67f7d1ab3b6e0826a32547f84d3bdd5ff310c037d384a7449b61ab152796ac3eeb457f9b7e98c71023072bafe7cffe38c6f19a470b9457f730d13478aea4436d0b53103b6b1d373b111dd3d80ab1a0cfe1d5a59c974c8e5f58d0302047c435bb500683066023100adcf341692f1ef623cf5ee1c9fcd6cc72583348212bf14c14f42183601a941c9811e1f89dfb1726cfcf0cd1c138c3b6d0231009fe46d78e77a30a74ad1c9556fe701f22f8a174f1c8cd2e0788e2b00f1d6d3c97e08a43dd72caf44a5cd1d12cdef67060302047c435bb50067306502303018c0289de0ee3f657684fcdaaade3c71e8ab3eeba68ca0fa1a429411ce10e72001e2ccb0fc6189868d8c77685ec8f2023100b2b9854044c4b3ee68e51236340e1e7c70802166256f4c0afceb986a4ede38f8882461519ce2dc4d7bab0416eb1083920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c6bd7ee448d3630b6d038137598ddd048cecd12bb4dd0ae883fd86a3488378cd49369c8daa50494bd047523a51cba3e023100b1a207925542907fe2b51b001db0e5337fab2087c1e7ef1737f4da8b706d7114d871f2a1baa5bf57e7af622bfd3129890302047c435bb500683066023100ceb4c9eac25aa75be97f13017da97a00eb306da79ab6481525b0a86cca14b5c34adb4a6c96d8d112af9c3120e1e98d1c023100c111efe0cc7a710db3b7e0bd7f3a7f2d18f74b70ad24d84ed771cdaedd15d64d234b8049b5b42b16f503ea686fae09150302047c435bb50066306402300dbb25a9894aa15acb53d19d896be95fa80e93f1712e75524e408cb948e4ec8746a68e5fa77480dd0c9a55797cba376902307ca1748a35beb76820482ce1183bb8aea9f99d704bd47f6ca74083bdd96c5a7c40e2e914f2eccf4fa030e7602e4e72c10302047c435bb5006730650230713f4e33f70340b75c5d508ef5ebb0743c96a2ba2691cab9be081fa1cc109a4fa93f2fadeb04936e8ba74616a2baf908023100fb728ec82689bf2fa7d40515ce9de28b41e3b22353760dc5d7a26c7222b82767a2eeea5f8f89fe1fcb4b1f55ede698c10302047c435bb5006730650230195d7b6923c6e4753549aff0e0fdea08472e0f2f5a6b72528f2e2feabe0088ffb211e9f8a5e65dc0ddaddca4063cd806023100a3b85b7926d21fcf0747dba96a23629378760d466eecf5b470784f8e855dec0fb80e2ef74781a64cea3a0035122ec36e0302047c435bb500673065023061804eda1f1620ebfc73864fc8ae24998ee7cf67b3355e0e9f6654ded8e75515d98e9afd243bdd16dc940715bd75318f023100bdbd1b4bbc7193d9c188d51e63dfa343876c03ad57140b70f1a3f9dbf4ac01566bdfff2391b2566d23c3dbd4f82717c60302047c435bb5006630640230731ed6562ff7266107bf63da2814420e6a33cfe918e77f6fdd57cc7c90bb37a5d2c07f21082e904e0ac4b6bd6e9b742702305d8aab25d63e03d1ff8e4dc93c3755ccfb39c7a027ff226c01e69667aeaa2c0872cbac2cf6fbd3f5ecb5d02825d56d390302047c435bb5006730650230622594f4bb40c6f2fa1afae72129bf1f4d916d407c341bf8098e3056ba2bbc71dc63ea3339de10be6556bed535c6c09c02310085f17d6844b53f86a5fa3f0cb454a06186feea3430d2d0d00db7d84418cd56ef0f7019cd3407ecb36271294b502994d80302047c435bb500683066023100fde8d65724ab47efdfbc996137e7f8b721c3a9d821b275792ca0a45d2280a5ca68ce3d6321def7d8f97035625334c3ef023100adee394bdaf42c529bd7e32a9cedb5a733febe32c06ba7d2085037c99a74855f5a377cf9a92f78bc145a0b835a9b35f50302047c435bb500683066023100a2881f597bb5ab9080409ad6afe80de3ad1afc6386f09802a32046a8e5bc493d820769890f6ffd056774dcd68aed1c37023100e61b09575e6479c7c3e9fbe937f8c662321fc035b8ffa7490f3c5900d50bec70930a8c06147a6924c9fb8da27d82e0ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100caa7b3db0924764969f4401bc70164dd30a728b9c8322c448b5b41b6c64d85ee8fcb3d04d60431fca6b19d81f87dfef6023100ac27eeea00f49cd90782dfab8ffddb33bce48db08c157c06bee56a22b0b8c028e5a0ba498a640a7a1bd677a3d575d4520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301e8ceecf621a0957fa829d1d8e332a1e93c9210a36a39001e132d7732f11e0b69f801b2d08d2e213a8c6c1fdf2d3e0c5023002904fb19d4409eddd8911d59972a1a6fc78f4d72f9c91a5891051ad173fbb408459b88c8d6c41b65879df9d4e8e225b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f6121a1c023ba1ff290b8af96bfb59e0f4a23e2faee766279792dd21c3a7b1ab076e01253a92d4cbcdfd7aa4ef3201ca023100a2ef92cb777248909cf366e5d1f631ee718c724e0bf9e32350909d8d83075f7268fa28c9368a3f6e0e02c0a7219abd920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049ce45ab3b13c8337af2785926d973663e6a43cfe57b50902a08623ddf3e43aff8560782fb60fdd6494365c6b21f4323023100a1e764fc5add3df6df9fe4dda90f4b69206c85059bb715535a25a6816b64c256d4e63fe0335367a1df92be098fbabe340302047c435bb50066306402301a82d095e9e0e5d032d9ff150834215780bd147f28678518eee21c7c1cf92a0862c7a498319f172babc675334382adc702303769f2b29485dada9e4a77b7939bf380acc99e53ae670e5691de5c80a4ff5ae752989a16665c110df2daad8b3b49b9490302047c435bb500673065023029880b0229f57a2151877b288dad067824bc622d7c9b2f117e9ece54eefafb0743809c3741e8a551d5c15e8735cea134023100800c5c74166182cfba0308e183d699d424ad7f3e3f3a59c8606b92cf49b15cdfbe2efd88f377914482be2d1bb3a068ef0302047c435bb500673065023100a29549e6afbff3269e873ab0258e8f21a52a0bbcfed33503a5a01d136fe3383555e729d0e3dba79da33f8116f91cc2a002304c8c386cf85587110dee3d1ea2e0bf33a72dae3060972118612f817e52474c88c48dd4e772b3efb8f12c4b473a7cceaf0302047c435bb500673065023100d7adafbf6f9884dcbc38eb171144839fef0953b425c8ac83b0c9e5fb9f29436b8d785fe448d5eb2bb4467d441708869e0230445b2414e6e42c2108c7fc95ce5f197b0c53e7cc251429948dbfa5d94adb67ef044df4ec62918a882d9f1db1d9c27da50302047c435bb500673065023100e3741c94945079221d4983d7a096dfef797ccc7b43e7ae25d8cf80670c8a3e2aad21fc40cbe1e0247afd9ed0790303bc023043ef519eda1ccd134a8ebee11cfa65cb25a0c8689d76845212e2cd4a4fb7b25b2470654e6355c59ffd3d8a3ef3c8ac5a0302047c435bb500673065023100988fbd79f0f936f07d25c30e4894bdeb168167227d1d9b783727e8df49494873090c057f61e066766c6d34cf54f75d0b0230297d72b825396a25c4c68dd2744edbf94e92fcba0c23a71c41fd3569ea01107bfb0d193c8a269abbd8eea1ec88d57fd70302047c435bb5006730650230111ce680de6de8a814c886c9089b3f264e36aa46e9ff0bad226683f8bf73fbbbd4543eb0e3f9f0e8b46ec072981bb3a4023100e6665391d7206903fd995ba39f03c18718e84f80c570f2276d79a9acc16e08ebc45a0af1e378b548e5bd530d532871b20302047c435bb500673065023100e9b5031c5216041deabf691c00625a1ce5c072801caf131d409658cbc16b0ebfdfafb1f3f9835df9793aa8739cd1952a02301f802f95682044fc176ca06602adceddc3cdcf7ed9e4ed339a66de83352f18e67d00007234149098790d0e5c41fef0c90302047c435bb500663064023039e5fcc02509f186f6b95e8067be5fc2bc35e3dc3b9f78011cdfdc01eca51db796758412c68f100e3919d31f8422996c02307343b3dffaa4392671304838046347f3d332414d82d7710653008ae0d3b7226e010fd1d71aef7dd06e8344c5fae877f10302047c435bb50067306502301c05645b3894876762608b76a64b0bbb79227595f82d2e4fc36e3e3d2f416a82198290a78efb3a7b9e5e115de68e7e51023100bd99b6eae217150b06ca7599854e71876db9cfcba1cd68772f16ba5dcf45f23141264e8cbb287ee38c3452180645b7f50302047c435bb500673065023025aab203ce3ab130d293073752db78253f534d903f4af51c4aa96e81cea004562182e68c8fb8c4f48d872581de6e83b0023100e0ae32a733956fdeab35770bbdb6650d80f4d2f64bfe603f5fd36f80ec26abdbbf042c4b233af2f3ca3037c3751d04d70302047c435bb5006730650230732f05e6d27aa604471d2b8eb74f9448014826c94bdc3470e968f7b26e290faa5f6aa4a74b1c0c71337394f89dada4d9023100f491d4e4205d14fa90fd34e40ccc4cb04a402bf2de2f2b6467f27c29cd4f5d7f6ef9689e4711cf2f5ee59964aeef82f90302047c435bb500673065023048390f649e7b24127630467f6351f90d6d64a3fa8f051d50ee1ac2043a59901290c8a4592b3635a2dbd8b9db97253862023100ba7c20df98682a2c65c1bc6ede051ec0abaca57c5e3d4522722b360129fd649326c44dd8bc0a15e6a03fd4f1e32254030302047c435bb5006630640230471d2302b77ded6979a8dbd2dacc841c3ef8db7e233a3266c25bb8ac8b463d3e1ada9b1a9b383f825d8cdaa79723bb8c02303298fff2e1b8cc18daca686b707018cde69ff0d247e73a3f10f27a53281f98d007e98f015a344bc791201f055f49eb560302047c435bb500673065023062ef0935c2217b64c22b7a22f06156703aa155e923bc8d3826bc84726f2550a2561763c206fe0846a9f26409df24096c02310080b680eeefdbbe424a3ade30c7c470e1b829e37d0250b4a0aacefad79250c1b9c510d15ffcfc181bd5a5d713b88c9d320302047c435bb50067306502306c53ea13cc617834a7412c237486886f3ea7f5868f75f95a2fb258328305022523f5a8313199f96df0234ce8b4f88735023100c40f4c62f8ce9d9280eaae6738ea59cf9524447b1d683fb5600a389e54e40a77b75af4cf806331ae99eb23f635326e1c0302047c435bb500683066023100c867653141190d7a378c1b800c2dd7451575b49fc0d271c3cdaa51a42a61f5f8b26e6c1a6100b57788bce31b390c3e70023100fa7e8cdf2bde8e44b384adb4a8f792fae07162e5c298afd51010ab0814f9de3ee6cff0c390a99ab604c06bc609ef9c9b0302047c435bb500673065023100f3b5219223d97096d19a845b87b52ec9b63ee524bee49770500384d206776549eda941198bcf530a41134ed5ea84242b02307364326298e7a051ad2a448f8ad32b3776e9121da48605f5f8d84cb3f589a48c5cef4dd3fae0d1f8bafd4d44d025f5660302047c435bb50067306502310085fb0827acbaac9c8f28a7c51edfa7e787b6650ac5f3ed529352b64cfd3d40a2c1b5f50c02e69cb14f3e0ba8a4d1841b02304a51c4aa98aade033ba62aefa5a5655d9a33578d30153a7bbd9bf2c0b38062e95b82198c59155dd0d5710b10434c2bc20302047c435bb500673065023100c60ca21c00eb1f9f4466468147a01b0ff4bbfaf80469b8b0009e1fec3ed7c92aa16181e46e07758826483c419136388202303cb19c58c9ff621d9859363ef23a80179e57e617d81cf6d94636523934f854c5e7dc4327cd8935437966e6b5f258fdb20302047c435bb500673065023010f9d471570b58537e6dc91233c312f5e1ec07cb9e3fea651f0a95d6b762eda7640544a72361c5af93b76caaace81ef602310094299c13d44daa8a5f3ecc28d1202a7c7b2775c9279f72f95ba054c287a74675ab3e4a8636600d2f9823925d4bd1b2490302047c435bb500663064023032bc30e4568f60c5dad1bbac7004b5e9e8c78014b7f5cb8843d421ae4dfcea9b1707b7799951ed39572c635eab6a7fea023052f0178faadb757b557cd7e465d23a965b328952e33ca7d66f75323376d7afe751c573395151ce2242e7d2b0126a157c0302047c435bb500683066023100b3939eb94226203ddd71d8ee259aca1556ef9193ce28070f9eded66dd8984b6f36e44ff3dc633afbed50c7b5a2ac79b4023100b6a8be1bc0d7811e7fff8a158d47c0d0df51a9fcb2db23f0dca19969dc182ddc3b363e9dc4585b3ead3d47936c1c74170302047c435bb50066306402305d2342ceef8566ba199090a14dc267d6159e7c7dc83dab87eeddd9b01818012ca46f0c592ebef8682105da2d41af827f02305e395f6b448838449985cf9496d139bddceff24a71008c88d870d82e5e758a6b93d528c01e3767b3b64314f0f906aaed0302047c435bb50066306402302b277b85192108709631d4f39e2b477decb17d066179e77f6ae05a02ddc7c55970089ea2f5ee5960ab02dcf5204d43c60230363f2a1b55bdb78dafedea98b6e1e794ae3e1e8e3f0f5318ab90c1496debb3467dc2de7f6ac65bff123054c018e9131f0302047c435bb500683066023100d9b1b0aae25971cb3497825dae17613c9012ebbe2972994cc8471ebf914c498f3e64a9b259baf11312f56a7393309172023100caa29f185640459999a3e685fe7a3f57dcb7186ed662f87fc6fdc623453404751d147c88c2a6530c9655f9ce608d5fdb0302047c435bb50068306602310098c063d69f63a1c46ac4d3e308832ed582bd6a9a4d88ec18b03e20c8fa094bf6efbfdf696dc9c786202edb5b2e323efb0231008ce176a0966b0af37f3977fa6de3516b9e72678fbb7e4804453b06eeae2fb8f6223878b12747f1e9475784661d7d87990302047c435bb5006730650231008e49e3cf87d6d3fb1871c7ac2647dc1a3ba0d7a28a5015f08477b5a69deb22a0c02851024c40f085b29b40f6be9c91ef02300daac8f41ed42a781f95174e4f1bb7a0f2d1441e9bf04fcfce75aed17b3b3e0aa904ea1897bdc13f93ba893288d144640302047c435bb500673065023100bc74fe9fef7085c764c457adde82aa1c01dc67484b218cc4f95f07723d296833574176efe7624acc8bb127448a692ac302302a0c25ea06b0362cd7e17bb2c7643c9017d5741905b171f96913a9ff9f94df57915850e75d378da601478960cd9655440302047c435bb50067306502310089266f514d69df80a0606462bac3047201dd31d7154b6a29e55f8fe8217c771e81295fdb97fa1c160733450a949c251c0230169454e611207d1882a03f4d2a21965d7fc5967cc21fae785a6da40eaadf912c4b80f96ae4132017c0a047dbcbdfb1ad0302047c435bb500673065023100e188800e836ff792090d891bee189f00f1b1d277265d24e6f19bbb15b73d668cba19b893c5b7beb351144d6eda9aac760230694d6dc7ae343f87349b4dc298b5a516a38af5a00b8c37fb1e7624ca5acdbf8d60f74c8852fa2ad0e9d58a44126995130302047c435bb500683066023100ee0547b6dae79717b9c6acac1aaa127379325da8700de278be286964f8bc64e47c08e379e066a88674f9efed89c8b5fd02310087066c892655185ed09f8ff75add84cd54d8f225bad7ebf99308f695d04517c6d0515ab7dd17360bbb7a0f694f3777370302047c435bb50067306502307723ab77e06265b3a04c06dcd6c76b71ef9626d8a593ebccd6df90016196fc29e91d291d9bc821ad0b62b5b6657e63b0023100d23b4e1ef336f24f4f55332431744cff95d4888921c2d8d3d6be7dec03daea627345a6dc6279f4a7a63dd2ecbd6f155b0302047c435bb500673065023100dbad37813c615b1f3c189bd341ab6a42f7329be91d33737560fc686100f2932203739ee9d0e3eefe8de04d32ef20fa2b023079729ac6c207b0979b27a663574b2096d844ff04709082efa5bb4bb8ba435a821d532ab6a122390c895ee8808c4361230302047c435bb50066306402306b95afa895040d1029a6f128f167979cf32a05868a547103420dc517dd009bddb1906305b890fbc7c408bcb17582f64502302298180b9f1949f16bd9557b5853cd0e70296077aebdd43927d8967015b6e9760dd842e89b2e8ec19fb9c458d91fa0e80302047c435bb500673065023037b132016861fd9bfcb4ae9165193392cee56ceb32c7df8cd0c67618eb84010e454f78c217efb5c5ef4e16b58e88040902310096745f942e69211119ee73afeec372e97c6e3f053eb7b1d52a9c7cedea20c6f978836bfabffa8ea60dc3e0c86a9c9ab30302047c435bb500683066023100f37b10540868d36ee8975b69f3ff7b79ecfcd42cba1cfcb70a79a1d0ba42f07e6130b9ec3ff5e8822d7a71203540e1080231009c3ddc7632336d8a3fedea98df321dcc3b6175cbc346bc72ebf73357bf71ba9dd628bcf9b948501757749d7f62d6894e0302047c435bb500673065023100f0e750b1e9c4eb2d06a27cccf9a2e6b346c05125b0dc59d1fb648892300da46bd0a547fe8715a67e03dda40b092d3370023014cc52e95a62593ce45e21e8e60e1a6a0fc746790411d75911485e8aa709576af1e7a77d184b78dfcbcada7104da6d7c0302047c435bb500683066023100cf91e8de1b2eeb26fe6993a360b4ad2131006912a6878c07a6e85141f8ba02e87c6e9c67c9cce8390408994f48f9bd03023100804feb743fc89b222ca341354f0030c1aefd9b9a1832b9f78bb5d9a899fd4f4816543f215a37e789bf9c1eb009d092840302047c435bb500683066023100fc9b49ed4e247c6aafc90fe1a5ed5c54dea8cc17dc82f9217ddc07e5110bace3000613b422ec40f4755b9fd1fd6f3104023100e20c06c040c9bb452d51e5783e8737255ef5e177bbe03bdfe1fa048324d7a88d0f0cf1b3150e9f49a96a0650d2cd4bf60302047c435bb500673065023100f9bd25a0816bf6a696e7aa5bb028f3191d666743df57186fd96b2aedcc0d8bddd12f55f94054f316a4dc4268ed55afa902301ec042773f33d2c000ba630a3ddf801e5a5acfdad2302c6c69a411546e7ac026f4886badc80bdbaccbee5ee62f9838b00302047c435bb500663064023057e65c4ee06ae3593687a0cea7af3ed6ae40e7028e83aa50259629de9fede79d6439b1127dcd458e8fdffb43771c093402302dfb9f0bea23f6c3cdeb3de8721ec4be8591753012bae06d96682d294479078be45d74dc1b2a17c0ab33120b21f26b2f0302047c435bb500683066023100977c5ab319e709a053952d5c9de3328cbaddb8e9bc3fee446f51046d91bc132e28cada0ddd243db6c0acfd6720690b850231009f28e29ce8e9ef3e0979879c016174c25f2d088a4ba5e776b8eb5b5f6710ba84424b3d2cdf5a87356ff28925d6d0c8230302047c435bb500683066023100c2d9a2f03560042a33265e51b55a94d7d9f4106f000ac1f92e1e6b66676f09faf919b7b5c24243980e5ff5d0666d2edd023100e27f20c8faa46f505b733d758c51b8e31588192304ccd116583566e47206e73bfc117b84342cac7e39fc7469b42865080302047c435bb5006630640230707aa1dbe01bfa001eb013e2eb6d77458f7c9b5f77551b7be007fe553b4b50665a188d130e1ed6b752f18b4c8c6eeaf0023055809f05d23a6a2d1c740f05d5224503f10e225921f17b7775f526b32ec3aa1c1366fab1e6ddbbfdee71a687dfc7ab830302047c435bb50067306502306a39451e19f4c727ce39feb825386c9314a24426402651723a28921eca5f47cdf3cd2670daad463d05ee88a9a2213dd2023100e42ec3949ff91241ab0b670dc808e92df4f52388c10f2d00d0a739f331b3ce0c1f8ce56980f12e7adf506199bb7f0cd00302047c435bb50067306502306060f951993ab72e1b6f200c9c008e9390563bceb7ecc245538b9a06f2985a031eb6b42cf3c1131ec79156c60651b235023100af301ddc81242cb96ca8ce1fb9b1f7ae6b82e7ad86490756d6742b2d8d41bc89dce2d4b4c4ccc32c5cd301dbac073bf80302047c435bb5006630640230440bb4a40efc886e495a87826ab976751554e53723f422f6eec1cff6dadd00aebc26c5259baf8301018465ed42b2351f02300277315fcee8656f9357bcf81a0ce9e5d7720b99b89cf162d817dd8a3855203a1c21e14749b47f8b0e36e56f9dc46b240302047c435bb500663064023030fca05a946287b9cbe6f1194ae12f92e2902a5cfd40744c95202ff0a88a6517111b630fec78ad048b4f7a5c835b340b02304aedc76c30ea961a9906c59dad4c7a9974be5b5b71d3d3793430a4036714ec621b34974ceac039ee53b0568684267b9f0302047c435bb5006830660231009dcc6f30ded91ce1b03c074c00079f0683f9e50646f427dbe2d69e18442055050a0a17a8748c71f0fa08e60382b7deb8023100ffb0e0bbe954f47b6b162a6f8c9ae7ce31849cfd921b88ba760a49352afab7318cea931ff1df5da59ccaade5f508f89a0302047c435bb500673065023100c56873d03ba5d9abf09722b70228380105835daca16aa9eb7c585ecf8f5b90b5dcc29cfa698333464f265f131855f8c202301a517a91d7b431e8d1029a57253de4324c44634f05e88f9de714d19ae5eddf4c02d92e1a135a41aa8eebb275236e12940302047c435bb500683066023100ab998ea073fabca9142c05078622164cc7058161977367b416f8e6bd1364137af1d6fe17576aeb8f033fdad0cb74d880023100a9b9c8bc6aec2ca02ee429c4127e8c18b5978edddc8aac98d18a2b8a8d3e0a7fa596381168765adb1bd856ca856647bf0302047c435bb50067306502301fece8024df3f5ff376f2a54060e23fd07b9163c5cd0c8ed213de98deb6484d4e185b46dadf9dfea353220759beb473e02310090f491a859e0cb37acf0d7b3d61b3edfce3d6fd02cc289f79582e530b7e3ebf333bab8ef29f550af74de85c2e4c99cbc0302047c435bb500683066023100969b3f8d8153630963a36540d32e264d4191e3129b256b5b082b6e1e0ba42507b0569c2ed055521c9513a1c23a0b41f4023100bdb38796fdb264d890df6e6e283d9ed1d9daeb78f2fefcc89841be54a0808156df9fb8c85a5487619450b301a1e8a5f20302047c435bb50066306402300bc8138d712b90c62d39036b3d66a3b8e413dc8d98a5fd04fc484ec8849d8fc34615a045b68a44e38df7087415062b870230594098bece68439d413f046ccb715806b1b508b54d5bad00aa89817a87467d9318a8650db3b964106dc089a4e91e3b550302047c435bb50066306402307d3c53dbe1726503b631b93433abc9ad542e884e71e84ac7c14724418503793f393b45a99aaaf3d0744339293e601ad1023073ca1b5255e78e82ea8a27381c5e3a05a8475138646b3adb3a46ff5e93394d81887879e776eda01e9f4cfb7a9696c9f40302047c435bb500683066023100cf50c4a2097d9fcf2480d1cf2ae42a82754bda4f99833872cca31b92de7d38f79d32cc3697a1ebd6bc01644fff27385f023100bd6ea300f64ade3c1d408d0c105e9553e637a27dfe7b677b48ffea28397b7a2d750dcc55409f7bd0c5daf22ca3f381d50302047c435bb50067306502302bf449195aededcd8ed83460da191983ca4a38c084b79c1df9ea0256b37c1c2c3127486ffd0200427ae29fb3a88620ca023100ef0fee2ce23bc925489b304d2c6884c3542b5ad642e0d0f04f50561678412b6fabdfbeb70a16aa9dd7947d84b749291a0302047c435bb500683066023100da1da08a9d058b883ff0a17b5bc2bb460117dee04f447f97238f62bfd5edd4b91304d964bcfa67b24570d825e7c137b20231008b848c3a65f235696eb359b627bd62425368298033d7f095d538f65e9cbf3bfb410893d601ee57a3ebc248e1ad9a79e20302047c435bb50067306502301d9f7766c34f3463057da588763a06ffdf79ad14781aff4f8f450ab1810893d15e755dfb61f5271c2987a4c45d7de1160231008f635fbdea649dcb04fa62fa877e15ad50edc6bc5ec8595e7d44325dee32a9c60e7936c6921b6ca1fb7aa3b3a14a24760302047c435bb500683066023100cc954b221f285c8949e68eaeec5cbb518794bc586f9c9966f5537ef0641bfad5aa2c2480f21969f412da5ea46e519851023100b86ecc822db916d09673219a082106cd0078c54b0ad47a5168219ee51da65e622377675e0c02c8c44bb6cb9c8fedec0b0302047c435bb50067306502306c10e7af4dc6fa0af66be0a8eb5a383d6fe5a1e3e3804724e1c5af949b8cad46c34c1fc7892724dc624bf4eb92c6a33e023100821c6eb5713336368b2e552261e580f5be6b8349a14b4ad063c514e4feb953739d9880585fc5655afd63a57f30ab73450302047c435bb5006630640230305ec2e8562b8bc9af514e3965530e147f95920bce9d0a67071b896f441622ad68ec017418ae1987d1bda2fbc650ef3c0230331d571539ac623e9e8b130f41e399461d21af4935c2e1eb8fe86a1a523d8de67a3595fb056a9cfcd4e7597c53eaf98c0302047c435bb500673065023074342e6238632e2885019ed0948aed1ee6031f61c971cada9ca6cd1371a0278aaf33e669a759bab6f47aa1bec1924564023100d45ff4927a9bcb4b3d8c35ea1622e457ea0c19b8af1a0001398c61315b1a39f5b92893a8826cd5eda1544e7b15644cd80302047c435bb50067306502305ca9a7dc30b2841ac0678249d9e91332ea5f3b299b738f7c875e7493a8bb06f2d8a40c6f0941a309b29c06caa3a79bc50231009e91a0f6ef7e471c17c9c9ed4511326fe5ed67cf7691cb0701f0a8b12ee10ccb492784f24b448cd632172a27f60a58530302047c435bb50066306402306f76967e54fc8eea55abb6f943389b32ed22ca70aa51b0d32ed051a0d35ee9accd48f1f966075a35b2299d5ceb97efd202303c36f3b8a2a0f26847abefb9e8330250e4ba937073e80f9d61338019facea80ce26a431f791fd5f0bd68d030ff4786a10302047c435bb50068306602310091dbede691632b3f96cdf92651112659119eddcb47a8f037a3bf60eae83050ef7718faaa91d8788bd07610a77e17870a023100ee9caecdcc7f323482e815d368bc10c81ae1d93537ab6b39cd3630cba500e7007bf6774210a67718ff98d3388a7c3b460302047c435bb500683066023100f508aa0e289c60a11781de9e001ad9a08fd656e22419e12e406deb1d102c6c886f1bc32e5363e9185763993909b335a5023100cd50b5d98510baa19b9e9ece18124dc1227d2139c8d1fccbb3e24cf0baba61766c9ce79f3e75141cb5a06188c6867eab0302047c435bb5006630640230263f95311d7434015ee37c0fce5d65e0e1a494c540e1f914b82e08135cfaacc9d45bded9144935511e5971f590904428023008724a89039f422375e3ad2467efd5970ce6ba143251a5eb1ea81c54094a39c4160f8188a26b0a5cb02f7175a2e685760302047c435bb500663064023060518147b7bbb75364a7598e0915d1520c9ff4db89048936ac1335f2f33dc8f8313a9c341651fee90f940641e3cceced02302a4286e12b944b6b6961d6f2a24b0bcb441166255091c7fabe0bac5ba7e3d4dabe37f130dfae44fdf2ec48028a0d742c0302047c435bb500673065023100d1c0178106b601faa1f436f328c38e307feb886bd1534a9fb80a94eabf5a7023e04234664791025f133763cfb4db97df0230118ecc3ac8fb37c35f4c51112aee2f9b807418719f9eb06ddbd7959e94a0f4644531b68456b005dcba92d40aa20490b60302047c435bb50066306402300d6fdebd54578573678f0cf6ec73b050b021218e3cead29212d465cafc75501e092f8311978f6e4f1a07f430a8f9c900023057dab91ab5d7827524b5b05e02c3af844879bba592f67a8c35437832ef6a4be0b813b5b8b104160ecdc327de1fe8e4aa0302047c435bb50066306402301c684a03a93fa6db546ca0b69eec6fa199b12e8e91f49a0eecfd12098f903146e44c36a1e2e119685623fb035e7c2653023011c17c57595c3adef8a331392946157eb5eb649b25788185e43016a6fcc7e1b68a558d4164db3c44d55665bb1381af000302047c435bb500673065023062567ee83a5424b5f39cd3e3ca47ae84bc2d6721ee73945fc622e80cb806c6c96993d50d79a683d7a5fdad3bc6a931760231008f5bfe812de42c1ac3ce97f93e98ff2afe97651146dfe6182c2ef1c6460fd6e70b79d66a97a5e2858125d1a29c11458a0302047c435bb5006630640230505e3d5c034a43382d4e4a7ac0147d503c2127c3b308bb12bf03ace3d3421d2007988f9741558b6f3e24d7cd4320478502300146967f7f7e25ab7d3495ff46dcec81f76c5d39861c426dd4624d3fb065b6f6c67b4b909f19a0a48e87c1c960b206210302047c435bb500673065023100caa52b84465e8a895cec5d3edaf716e06c6bb838cbbec9a12974ffc10db356bcd0b8dda00ad8e55528777c3c2cbd1d9d02306dcbd60c88c9a58bd69446126759ed90aa98932f7f20bdeb4bc0b2b8c8b302f21862d6dbd5c8b5f82a79b3b7c27282670302047c435bb500663064023055c9f4aa30934f59e88b34f87f628fd9b4f2b00c0328da94ed44012bb564649ebe4dff060e85ab7c098a639cb764eb1f02300c6a08f6ec9f0e677bbf69c8b489de4fea8e1f2a2bce9a036f4f5f2a3bcee1269c5a478eb2642411a141ede59239e2590302047c435bb500683066023100bb468bd3bc9d8567ad88679ab589a2e2025ca292fc145e0b9115518b3e0d2dd144f4da41c8e51ff0a4f39cc631cb1b8a023100a798e18c75c69ab310182dc92f0746a614a56f647ee666d3abe4c90e0f1eeda3758b74211625a3bf09c7f63fa8e107d80302047c435bb5006630640230339558bf6c2c070cd206dc892059b2c4ee4612b689804e3ad6eab186573956566da2615e1ca0d163be537b68becf8b12023077c370749320e413dacc11098c9e07e4388839166ba34ef8f926373688a086c1d0508aaa6101f0a38986adc3fec1c1320302047c435bb5006630640230111be4633b4afb030f1b1704956181e106f437f10021bb357d2e9914c21b072a58cd6b564cf0ea4aa8df50e39825f81e02300c6386a23cc02865883dd2f0f5528dabc30f02a55b3e19f2a6c62be8d4bd974649a49072b41d905c0d468b1f1fb389350302047c435bb500673065023100b112b6d5ec7434a03f750b3b7a87c988c95bf101f1239fa42155f34f86b10e5533481404d071eecf6e2f3edda46878ab023059a7df714d25ac5f8493594fa67e6144b2471ac2c43de83ebaf8823f2e849ec5001a23d6292087097dfd350c8e24b0280302047c435bb50066306402305fdfec8915b92c8f32ddd76e011db4c37689a6526a735f98f2c30d913a4bb2a3b3f6397bf7917866bb83cfb84a54f69b02305390f9640f5a92446b53ce774a1f13f1c8f887fed6a19581726783285fb44289a0c185612cda1382b12940d15f9d05270302047c435bb5006630640230469ff5c1a6b8e43de8c9f11de75f85aa888d24cb55b34b9704cdc5e67394c62d46aa9c045825ac192a2dcc645745cb5a02301a94f277d49d4a74320b9270b175851b18431beb14a8500bc774cc15ba5c92aded26c042023480c455a8b9a8c459455f0302047c435bb500683066023100a102d6eafe9566baedd43afec7aaf7af2285e898b4baad75844469256306e8216595dffca5d4b605aa074116ea2b851e023100aa7e599440aef760bd22b0c50fd474a4536e2f3660a2d2e5d65f70ee95594bac5e7868cb54f43f71c5032603d242e8df0302047c435bb500673065023047dcfc487c83360dd5edb23e32acd6c7d61d759ba72c5793b628f354b1b23ee7f17e6c016bd3b06973664aa293242a53023100db332ab6285ffa07536de670be88e0046220e71a87af97f274392045ab18d90cc8da9180385b2230d70990a9ad4766990302047c435bb5006630640230169a524c5b07a6520e77e8d1587fd181edae7c20d22a2cdec08e8269a0cd9c3007e32679d26438c9b737ebddb86e101d0230664893108b43b4894691a9f152be297908dbc2255ce1caafb2770568e0c549f7e95610f0e82a623098fd85c3154b415e0302047c435bb50066306402302d72c1f1e51cb659d477c31ffe3732783cfd09827ab47618159c2f176046f090cc9f917ce69bf66a22feaac83c0bf8b802306cebae54d3fb9be4321c3a9f6e9fabade1975ccfcb3a58fbec7c25a133cbdc286a7c7c999cbd22c5402503a4551be09e0302047c435bb500673065023067b096aa2d5b13c525ca63a8f905c712e2f52d479b3feb046f63a61368aff63d2494bca66d1764498560d5c608c7f260023100c5258e35f0753fb9a3c9ba2acdf74868957927b27f6c017f6f2af0b132ba14ae6c08b989f0b2d6dac1a5d1d40e8d466e0302047c435bb500683066023100a823a191a2e28a346fef08abfdc042e5664e45c1fa06a3869b763c25819a55e038f41eb88b4f52061f2ccbd5927cebb6023100a82631f60fcd2578b20f31b61a495f2bcc259678a67f3098dc31f9ce5fa25dc5e08c3d8d3fe717e2778fb4188b136f940302047c435bb500663064023010cc7035dc5342d31c9066ae5fcadadccaa5160bbbd0fdbbe411f685bd271b07c47ee4ca2358b0f72a97fc0d9eb59ab7023078b4d180abf66fd4523c56eef51c2ca76f86933eba467958aa09db34595638901be6303185d26a2b089e021aedee3c330302047c435bb50067306502305cd475f0349404047bd478e1f14744f2e651e9cd3c2eb82f9527a3caa963b20467be45b37458bb31385d63e16fc1fa98023100a452b73c7983cf995371aeff439df611d9272f2c4026a06b16b18a8456a21f968bfcfde36aa83424c2c8ed210939f3740302047c435bb500683066023100fae55b230b830a9d4c3eb17a2061e7f5d69485522b4936d2e46a13de211974050de2c3061742a12aeb35479a74eb70d6023100fbc6621be99e6ade6a1e69f8d1dea1c73b54d132e8af058f5f119a71e08cafd42aa55a7e470eed365679e330ad99270f0302047c435bb500673065023100ebc678cca24eeca1507fff306b71f81c0bf63c0caba61afa66f610fdd2a507bdfc5f7381baa0c4d6320490bdede89ad602307a8ec730e1405fbe4d4239e03a2d83b430ea2f296e9515b543b29cf83d6b8be3d9a9b846c27ef21f1115fd27b06e7a8d0302047c435bb500663064023018a5a73dc95e3a1fcee3d5e7e835cca98456a787ba06cdb16edcd5de179720ed8cdaa82c6a25b0713ae3b6135142c2f4023004ac831fb70e4afe6e5a2c06351692aba78143da39c27b8b0bc9b0147f3b67d50ceff5afbddd143c1f32958bef310a9a0302047c435bb5006730650231009a66760cee48fbedbe9887b391c0f6202b5800fb01cf0be66bde67c57e9a03af7a64a257adc8df33846ef4dd0fac0b010230663061621046660514e3e8fb1a7e22fb35dd24afb76439727dc32cb785a2e22b03cec765aa9d65c6d159bc6402a7bab40302047c435bb50067306502300d3e6b573b724bb8bc65658ff5e59b1cfec5d28dc194b5d757cc23db162cbeab4064a5dadbf3ce4b80ba986151072661023100e2d91d2a421a5ed16a09c4dfd33885be605d46e3c2a8f946a595ad94821c0cfcf8d677cd3b1cbba8a6e71635895f90aa0302047c435bb500673065023100ea212a7fca1cd2254df230b42b79a90468b6ce6c9a588c76febf52ef4a3cefb9b4bef7a600c7457882173fb5185f14b00230483119ac287fbe59b23ab5d815242875bc891c5a087b151f67f2aa807bf0b68b4073cc3d74554007b12523ce6af2bc540302047c435bb500673065023100fb034e0c4bc7b1862e5b61452fc804e78aab274260ce0121871bd7fa0c091fdd04fd0b01b828c01f4c93d037100609150230403d28e98167fa3b8b687fc3b230e608f0a0dfe2bd1718635f0b16f34a4362ba180cef996b22ee60d4e269d8b2844ead0302047c435bb500673065023100d5009c512e552b94e2ec04ca5c58d5f0f817afe2e4bdee2296861ab644e94cfe0cbefc5c37a4a4684b59cf8bf9164f4c0230782a3a9b7f987ab4f74c73148dd409900a80265f7b27df72f64e7a409cca61ba9b8d5b415edec6b2d6197db05c5a55ae0302047c435bb500673065023100a4f4a8928d02027caa4d45f1c6aeb7a627c4fb4e6793b09d95157545491a33291ce13cea5b3afb0f495c7bfe03dfe6a90230666063476db470e7719cbafc20b7fd32efe4cd23e1c69122457e609bf2ef7a8a1472ca7b352e95f232f59e62d392ab4b0302047c435bb500683066023100da4a4baa96f1355524c2260a6f9363add484d0e77c015124c8c49e8c5f0779729bda84c8d0caeb2ad9770f06dfa38a5d023100b51a38d7d85e9525b5e6ea5c87fcbaad570735f6cbf829377a69e4589d01cbc7287b46d971e7d026d73b4f6c8e39ae2b0302047c435bb500673065023100af97a291d5eb63ccbb8b5fcce1970bf1f6d3464a215b79bad651d409aee1a974d79a7dbc467af41c1c1e8dd824d2d71b023079bc1198bc56172db559ae0ba7c8f7a0b90b680f7301e34f556d8c075f326b4e912677208fe6d252cfdfa3b09a044df20302047c435bb500683066023100ba6eb09a88c7b11257ca18248aac8d35c585514a2cb8feff946081a508631a817c2d76951151a4f30d1654a9751e9c79023100e1aa26cf0a4f10d216afd7dee7491c3d0633dabd579c877987fa0a3ba209196c742652126b65960b823fa1b521a603b10302047c435bb500683066023100ec0eeba36245e05a1fa33f47f07e4b24231870d446627e72b22536f17fad4d4937ac716d0dbeeb816dac09b5aef7345e023100fe3f6a91a380f9e1ced55f3bcb7883f89480992827e83e6355eddf6dcb941d905dfa4e77f9bcd894823e8438dadd51c40302047c435bb50066306402302f4a70c0020697787522c029134958b32419a3cf33c77bbe304df3cd2115b0a5de9aeacf52713f6e02aefeab6fd975a802307e73f089e5a62662a5037f6273af7a299749a6901e8a9217b6c5562e221854cafc90625f7eb3211811662e1288e59d870302047c435bb500673065023100876fdb8fa43d77f57d265bac2721fbac9011ec0e2f92e638655dfb9c5eb322038c786e2ecf3354e19f95960c65727dc802300d2fb26660b934a7cfdda39cc0425425a06ed0878486729908cad86f926fb9b0e0dc212e003da9fcf4a82d9a4a9e2fbf0302047c435bb5006830660231008655b1c64dd00c39126dc7c568130a9a8cb35bec534b807451c7a5b81a539e6d325bb2ce5e5f73c7b848bde62d435d590231009fe88d826142a16f4ea9bfe20264c5622bf84f1575afff4766376acdd7a62362d24036e30ea8d1f5aeee57b4fc761d590302047c435bb500673065023100ac15758a06de1a9b1b7ee9847582ceefdbd6a11e53af9f0d184b5b47d06b22e6d43bb644d2977dfb46e4c2d63e1b0bb2023074017ebcef7078b54de4c6529e963fdc23f12ad2f7d71a5524833dae8a2548d1ea3edaf64f74b3dba9b2cbe96258c5fd0302047c435bb5006830660231008c953eae1d9f45881836a4b49ffc9b1b57656e495061f295045fd37b4da92ef125ede6e3ebcdba5bc4d86b6331f35816023100da101fa3436b2feb4b9507db502bbcc3cf65cb1e2ecc2e5f5c345def03e56703eb9758db832daa2408a70e2bf5c95b120302047c435bb50067306502303d67716473b90f24398c85f6dce9e6af15b92e5f4663a052ab7921bd5a3a581a53eedfe35ded8d382dcbc9f823f274df023100fdb3cc09d14db7505f90e9156b0450989110fb57246de32f0214272b82a37abe673b50b65ef92e19998aaa112c13841e0302047c435bb500673065023100f9b5d5d0e50998d1f7f3a9082f460295cc423ed44521ec69743e5ec340d204c80019b4009281502e8d28a3f16dadd2da023067ba4513075eccaea655ef5729a32ae1a474e417912fbb6f0656b0ef2664f07f196ef3a1e579898a7916e05f18af34d60302047c435bb500683066023100d6acf99aeb89dae4284f92e8d2469c4da287f93115b20d12eb3f0a0e866cb9549dba703858b6e90f857622447c59b222023100e30b97ed459ab5582eaa828aa0e6f83a723bd9ce43680eea364baeb2ceef4589ba2074f7e25a10970369c533a8dd7f660302047c435bb500683066023100a4fced2798be01f2b19bb55a5512f0bebffa7ff885970ea2ec7b364e03700d9bbfcd3367b2a4f17e480adc07e9ee030d0231009b664a7646ebed7ab45595732a5a9226786a497cd22db2d3b1299f56b4b919f38c4e5724dfc2dd8eff8f2209ff8d9e430302047c435bb5006730650230063fb41b4812481daeb1f4214f0ee6b9b3711874ab8b7839c8863f708e41adb272d2dbc2c61f5b690d5b8f146488fa3a023100f8a70f4da395618b1556753b2effaffe988b4d9226f0d10643b8b126fcbba16268ccd7ca205fd66c382c299a13fd237f0302047c435bb500683066023100d20983a43b1d22d150006760c6b2e9344300a1dc357412756795f320645370c7bab51f129bfeb69d618e7a4db7d76d67023100ed0384ae5a3395e9de033347a7c5b2b957d62831f8511d4dad2327ab5d305f9ca1ab34de14bb030a64a7d9ce631ef7ca0302047c435bb500673065023059f25e38ee6f34d679c9c9c0c82c213ae7fa5fdfa04e983551504ba6f56cc62eab86ad5965d43a6a96dd1bcaa66a13d0023100d901871cc196f4c61096c9da98db45801ad34fe43d5e0f95aafb8a1e1a5958ed50ffc01b5675ee55845136c8b1242e890302047c435bb500673065023100b9a57f6e01026ac906531729d72573ad4734282ca3be3bc8d4b26f5692babc0190219d31c8c6e88b54045ee4fd3295e10230492bd165aca86bd79aadffea0b84da6b739206c9d2e8ae82a6af6146e26571d4657ed665172af3d51db35dc63675dc830302047c435bb500683066023100bddbe1f5aff013f4f7f861ef8687ab0513629ad032ab54af11df7ca4ab802fc43eac1f0e72495c0f7e05e30c369a59ec023100aff5c45959194e06a775f236e5c60b2b4cc62ae3fed0e06b7d5717cdd515f1f9c97bfba1e30fc1d09489f705243925b90302047c435bb5006830660231008819999f95583b0f0973655460ac46d15324e46fda745d14bd5f803117620eae3c0da0dbfb20e48f5bbaed6d341da6a5023100e6126d733c63868f30628336b2590f20b3a211888f0fe99fb5adb017144bad55240fdb94aabec5ba5da0ca0ee9a7c5650302047c435bb500673065023100c5d0b238a286c9639f3245957be2865cb1fd2e47822e997ac49397511ec442bebcad5887c6c43c97f943e51dcfc9a67e02305fa87e3df3546bf8fb01cf476f89025f8e1c8128d6f06b0d623b2413eb4eafb1085c1e54d4a562bfaa263269e243deb60302047c435bb5006630640230424f34b1b938f2b54dc1892f961227303f71cd312fd157684fc2e812dc71c0d4c85a0b2d144fe2cc84705329afef26f502305f0967e5e53632e5e98bdd535c907c5139800fd1abf6019e7c8c5bcaccba08cd12fcbb0490a672976c5f4a869e98539a0302047c435bb500683066023100f421993c4236e7c4448fc50d39bf2dc3647710652226a98d87703aa8d0606b28eed14761f9f48bba07a97b1a8059c148023100cb7c0dce927ccd2d7ccfae27659bf1c829a03ec824e8ed25044019e3a4c0f40ae8422b7f0c6a86a1b4f6fce8164c219a0302047c435bb5006830660231008d5bbfa60e3de2229b9efa8cb354760c828f1a0ef5104862f6efab115ba797d2819c286418d5f9a03cfe83ea8b520a5d023100f0a7b7487092506e63b5621830a42a0a80f6215da9fe8c7b7117ae310158ef2dcc1fae421885527c62a9bd252e588e000302047c435bb500673065023100fa06b918a09a27b84eaddc21a0841307f8846ae78538b563b70736555396932bb378e1dfc1628cf293ff2a793577a9cc02302fa96c9bffe41b352ccb4ef30e78ca2d6ee8e524af1e5f9bafaff25d221b6a3a8a6cc7476c8320ecca8c00acac6687790302047c435bb50067306502300eb0e5e87f1fac0470f6336dda9f0c60d81b9a7e8f32baed1218b52c1175fdd5de3d9e22f5fdead4eadf5c6259f16523023100dbc1fcbbba99c376056f6474ac5a19047b8ec18f3b136791e6c5acea89d6032222d2b905bd9dd266ac869fb69bb320330302047c435bb500663064023011b5012dbc9eabfb8544b5897f5234ed9f85beb52c238cf77a1b413e4cf920ba86493764862716eae7eac020870b1ee502302013abaa69defb326b0c14463fc27bcfc2a68297ecf5747beb194f2344fb7599072a1e715d8ee7de3b366877143de3710302047c435bb500673065023100af9307008408054aefdb30a4fff38d133ca398f4989ebfd7cb74afaeba5a356333eeaafd42f6b3e0901d31cf1aca548e023066f14ca2d19c671c041a9323671fee6d885d35f67b28c276e53f37f4d2d7a6bea03c2b38191b5b1d7464c70347eeb6300302047c435bb50066306402307f0c1f17fd0bd26d421cf6df3190b3e5bb010396aca20b6f741e53a5cd9798b3553304dbd0b982fa333f2de7f52087df023040218ca7f8eb4ecf8624f6de885db141e1f6dbc64cc717a65c01f50052fea9476de4125f8915cae2a7ca0fb471fad8360302047c435bb5006630640230478811606ea0a2df46f69112c549e462cb714db8aeb7b2f4f35e7240cf1081a51e21758e3b405dd27048100d34f094d302304e920e6367b84f673f6ddad512584ad310b19e8c02eac5fdd49f36c063c86c59818503d7db46609ac6332ef441e430240302047c435bb500663064023038f54f62af39e56df4a145062656198347e2f9cde76c8efe15e6abd78a5e48c575022c5d27164d9421d337f71e86a29702300090092bcd222bfcefc4cd2457946d5ca70404475bf139003d007391f689fe73a3a9245812ecf1bbab1b0cd0dd62c92b0302047c435bb500673065023027e605c380db9b5c7900f2ccba92ddad9c26e7d56b615fa8380ce706e5236d85160b7ea20ba264aa35d28c86b2bbe327023100ef4529a88b85b02b149b45ba34f50007604f1fa02d08408004db5b630b37399057150217b9fc35e778b0910a5ccaf4a00302047c435bb5006730650231009c19b761d23b55b31be3eb599c1c2545c33c58e9f24690d702c017ee257275e4a9bef8dbade194e155cb996909446df402304ef242079eb18ffcb81aa75b432ca992d89764a52c6325ceb5f10dcf315e4ca5f765a29bcbbd6f52b552c352bae96aca0302047c435bb500673065023072e9c9b095fde924f52054646e9f09fe4efbfcdb75e515f03330fb2b1bc180a9e3d765c041731de6e4d679f38ed06b20023100a647a4f43b103b1b90b4945fd945368a65e83bfb316c1665ef94417c2607128fb8f92d6a06b01f38cd39b24d1449c1720302047c435bb5006730650231008c4c28a50e46b94509ae1840d4f9fb76b662c2cbe574925046c87b89106359366c142a9eb2e37ca46c31c37b7fa0068e02302d34bc90f124e5821e7e4d8dd850090fc3c04ea298ed6ab7278d780714ec3373a6f5caaab95a93a520f1f5f4d9bd6d8d0302047c435bb50067306502301242fadb3f78affebf098989f2a09d1a1d28f7098ac2f74555715e04c742840e94a66135b6e4a6548cb8a7d412184ac9023100ef8873fc2de857b9b2857dd0abc94426ce9d8bf8a82a35ae42cf1e0cfcc2846d642df137e3c817179831e26e6beb80600302047c435bb5006730650230346497f56eac5590afa0e615b52700535709ea979c5e12f3a50f12d394083bc9a8b0b3b7c17423f39749a027f3a1049c023100bf020bcc4adba61cd4fa1651d6898bc3ed24db72b4029d3c73bd160600543fe87b318902b1c781e96ba5c503e62a4e080302047c435bb5006830660231009f2418649e65861b0ef66f4d9b741b99d098949f4bb7ce6daeea989069f2fb2b91536665afae43d72491544d80dfcf80023100e797f96c5c621d78101a33ca17bb3c1310c8b7af8949a0b2b23a8a08da19f28533805acc373647c62d6e6f086bcc27730302047c435bb500683066023100c2bf76db78a8dde651c9357c01333aca3bb7330900fa7159d24c3b53b4fb74c3c963f4c16553c8933a387eea188477bb023100fed84391cdd4cad15db6c2deaa33384fa1c4de275874bcfa24dfe2d2ff1a2f3b3574c046e9743463ad077a6b5bbb02140302047c435bb500683066023100c2a9d95c8a74ab0301ed470a882564c1f511ef711259071109bcdf1f847c3fc3dbdea26fd3d25c5ed509698c9e1c826d02310086bbdfe00d843cee3a5666bf065b2029ffa2aef9170feeeb334ccbcbf6c294460854150f89016758d8d99ba4f7fd46e50302047c435bb500673065023010e27fcf3085cf1952c63ed401429af4ef1543d9fe25cd528bffaad9b820ff2bbebc71e1e75cb97371fbe3accc547f50023100f96f7d9164c8523baac04c0ab1cb526237bbfcbf483b6357d4495b5ce1720b51bbee15f765565df7279648f389117a810302047c435bb50066306402303ab5a9b9e9961198d3622e8134b59c713deb4b150cfba1755d78f197fc9dbd7340f3993a490d8b7666c9523bd2006953023075f6bce2eec331511225de6e8d734b45920be04d84661f4ef540f8140959d0f4c49e70afc609ee6bba2c9e87d0e898300302047c435bb50066306402300e015b5da117b7e41d8299b207fc6b84f97e89edb3d5b6ce836a98759254bb8c37303a388a9f171f9ebd09197cc96f7702303768e41bc964e1fb1823506d93697b35adf1dd6ce541091be69235a6cd60c056d62608448f94a5e6d4b74d3152f979460302047c435bb500673065023071c1c28c4644cc13b1a08eea6f8fc47aaea9540ddd0912d27fa92f90dfa10e619b371ab049c13b46e9b678dd1205483d0231009f606ea4b49ab3f28064355bc1b8db345113dba66ddfa239d9bc5fbd0bb455954c166baa88fdabcfd55ea9c0a251d0040302047c435bb5006630640230142adf8acd9ed36dc544d378fcc40c5848d7ff547d825fca2ba42a8de4bd6cab8372235a9a6029e2c2d1a72cb83d26d4023035d06b82c6653361352b2afaf5493af05d4b11669441937b1e1db587dd0891dcff130f7c16bdbdb00b670321f883ea4f0302047c435bb500683066023100b0d1ad3479d59ad419339d279da8099d005dd39816b981082e6b2a62df9e32b2839300f78b99ae58ec19afc110ab882f023100e53a75bcb3b55ff024fe907735bdb62734c493210d4ca217b08bf1c5a73e4bee1de1e94fb2dee1efb611794bc8505c930302047c435bb500683066023100aa610bf6b89d2530612eee29c9043bc24b762c3ad2b0d3667da006be73e54884a5476d22065838d9655982b175e67e3c023100c4460c9523ef77569b0931da1aaa354c0402765c2c77faef23601665a6be6283d6d6fb7dc83989180d869c0172024e060302047c435bb500673065023100daea3713a81fc3539b97d4ce36e7b4a5b764a1f4461316edafa4cc995730cc8be0d3b8c8e98021bd2c9c0c1e6f74f3ef023060b50db791f192f4134092d4033eb0d9e52d1866eb9d47d1eb369f51621127cc548e1bc64a0f2b56da43bba093c4ce180302047c435bb500683066023100b33100a5516af4ecdefb327335de31a47dbf8c40009b2dd275bf2b2ca211aab1174947bfd06c446a2a4f884c3c622052023100b57111d136abe81fc20cc78915d2b78f1e5c0bf3420784498e7f13e486b95b232393c7872fff88200d604e96b898d1dc0302047c435bb5006630640230531813c1332078493bc9cf3c2d1269cc6a53af6ce124db132ace15a325ee35b178699a2cebe4861b853ed533ccfd4b7d023058f5cf8c6935c34c3aeaca59239bd2a0e24bcd8e4c2076846ec22500542e749524e2da0088dc0e02952814d381f20da40302047c435bb500673065023100fc77b2cc2d27d9cfe7c2486408e8b35481c178663c41191ba79a8337105eeddb77733c9ef2e74f0b1d07b5cb6573032c02300b2a8c2b34a99a7c3099b80453435459ade427c157681a8cc3cb283928bcab3c5c01f3064383d4ebf03e28c44a2c63580302047c435bb500663064023038f4e3dffcc8d290e38eb6672d836cf9491719e5055e6c8018528ae530effc473a94fa3685ade378f29e9352f7ce76b50230513937f5c2ce70348af6db42ca842a638a8992aef13a11313a29a89d5b5bc00f360d1bb4591bfc988aeb11c8d755a8930302047c435bb500683066023100f4686e49b627f0ad1b32f92c8d5b717f305e38166e51a659d6e50c53671723121606948694157abc57b9f8f5cf9d997c023100f8136487b2bd7f2884026cd4bc9b1f8031868ea567734ad543613e5d82051daf6469d1568f419ecbed07aa1a0f8be2380302047c435bb500673065023033a01834dd7afa52fc982593876a6bc5d1f8fabbe8ecf9bfcc0cce3efd6f7352b4ddac4543358a0fd709dfb53eddcf8b023100d0c73f2243806d6cf4c1559432639ce3f8993903931491f1957406bc30704a4c3a10b5eced03bc2a1251b04c23bda3f60302047c435bb500673065023100b16e8cbaae8c89dc6ec4c79ac870a9c2eb52a51c7ccb904dc9d03408d6d2bc017306d875ac49f3d15c02872eedc3baa6023030b4e11f1956d8be5aab76c123a941ed158e1f153c821841de1694864d17ffeaa411013a9b94424c58e82de4edf84ea70302047c435bb500673065023100af073b157f49facf3fc2dc452238e013b96f3dbe4a1f4eb98757fea439105f1139b8ed86b0265277cc9fe61050b2cd59023038a88e17234d36eb5ed2d0781bbda70bba8061d71330bf04379304cf517636692b47d8418dfa53ebc05515ee5a9b7d150302047c435bb50067306502305b1e7bb13fec36a623ef3b98be720188be4505c26df8cb8637a5bf8d041629f1433dc80a293657702cdfa8fa8da16826023100d35a3722ad602b39ea1217e6361f571d1c375adb4ff9a750b40672214e25096436a12e3d79a3425a58c9888e3c499e9a0302047c435bb500683066023100d62ca0dcb21fac9f199a48052261ce06f0003a7f1b6516f81c6013db68216473a3ad01788932919a6c90fb0578931ee70231008728fee45c5c08b2d27b8521d530ea6fd3c861beaf6070788c1887f88fcc335c355db8798eeb189bafac4f39c12e58b50302047c435bb50067306502302ae246257a0420efc317dbb59e4400c3425da989f28887447564644e0406421320179576a5a8dbb07967631b054f32790231009fda2fc5114278ed0a9c0edd1356d7864224c0363a73e9c13a1a56943d317404d0a1ece307db895ca529577f44d8c36d0302047c435bb5006730650230040940a1f2b98bd691f36d471f74efbb984469d7bb6783fbd50392a2dea6886fe8f2901e3606bae45172eca842d95bc5023100b7bc374db7f8201068eeb586992b9049cab8078e13318c111f48fe04d3a2fb834e63ef54c36112cc26f4141d28b3f6460302047c435bb500673065023100f2ce0b640a3443857d5f7f7e6dbdcdde164a8e53829f997d26a55ab5bdda122043fb7a6f15b1751a4077d4dbb407687e0230702acde304bf63abfc9f710195dcf7a6fc2b07cf92b8efe49176e9215ce64380b440481c87a05e8a3eb3c9c84af03ce90302047c435bb50068306602310087a702a86909ede949d02df38a1f8cd18a2599b25e9fdff3747e15554154e57a1727298dfdb446021db6f335c19d90ca02310084e8519139f7e1e16548bcd9673b10d265c8df2f9d977bbe145720debb692890960d684afce02b65eece0e13576ef2d60302047c435bb50066306402301a860f68cff8d66cbc547ca2b07ee56e42d7cda0169b56a075a4da81ad3627ea60b599b3b0d3d2ab705b18883f902e09023056889f887dd4660424466c79fae8b8c228dcca3663fb555c25713916b0281ddf21c2c0b1553e4698095e628c971df2be0302047c435bb5006730650230623f3cd1df6e195b2efba62e8d0c9d6bf072148efcb9ac7e02e1d6536a52caccba3807995187cfa80bf0aff9d0a0a45b023100cefdfafa767be799c86e663cd510270150ae0fdd896fdee027e43d024723edf0553402c2c01b48491c8da148430bcde60302047c435bb5006730650231008682120ac32e1c1d4320329f5e5f127a61143b73667fc81a8d0c8ba9542da7a2256ae1e411bb56db2aee0dbd234c37da023004dec61cf787fcf3cba2c51202c8e862f2d4596aa1330cc79a93c289d9840cbfa6a5769d28af287031f18a54be884c3b0302047c435bb50066306402307104f1212edc63e59a4202ea5c1f0057f6431f5e64a7d7156c8ad694f2cc91c7bf16dca453db8d8b2628d2ad5912d14402300e16fe36e0160e9f281d47576bf0d944ff5d360bd6d6f34bf7b54d6bb32bcb7770014bfc26e87b502476b8d8bf84d6790302047c435bb50066306402303904e5ccbb2da4110bb1c0753823b554313e3d65d670e1ca5f472ea8175ad862c75f2bcdd86934da3438c10d46b543ca023058fe8bd22088a0f093a775ab7308c4a3d20ef4026db3898d128f2dc438892f684691f4da5f88192f443e40ab5ae37b060302047c435bb500673065023030917d1d735ced132aae33bfc3f27aaf672b8488f6c552da5129d7c328808f048a1311272a9b17eb25748d4f07efed6a0231008e1edb03b09ac5b27ae4276d4c28829389d20908ca8b6117fc931fe8432184fb82070ddcbebebf9c7a691e0b621fa27d0302047c435bb5006830660231008a6ce9d96c9cef2fb79da20e00b20d7552a877810b3a3f7623ba1578881e3799525c8c695774b9bd97e2683f49873674023100d83b8560eb99399eb3f47f10c5fdbd0dab0c3c7d0f3371638bb05687e3fd56a1671b18275059dc16e3600b67cd30bc2f0302047c435bb500673065023041891e0b5f5ac3351a20e289ce52ca2eb668d7e82a2a672e2c6d552b15c7a8e31e95d1778c7e6062bfe689d2957def7a023100f146a6795fd1808f7ad3abca1f849dcbfd0e8fae768ff603c28e084dad0226140f326bfe505f5fc1c3eeb146da3975320302047c435bb500663064023058a6753e23a66bbfd1963f2f68e3611df3e74d5348c5f74f686fe17f8bd2e5c6bc8e77a0e50a641946812812772da6b10230284412d9420cec19d96f2e0b9ae1b777b33e856f2806ba93a813b4e886cb634d17c43ac2904463ec801bc65dc82dab9a0302047c435bb500673065023100dae067b93b242dbeda57b61a8b7c93f0affcbf8c354a0caa76a83348b2f675561930870a1862beeb343140e8b49122e802301d1f2864b3029733143660d30296adfdb5f2646003266af847e5e7ec3b637b3908de43384aa97a2c7fd91d404a0ec5b40302047c435bb50067306502303ae776e3304d47d846599f420d7aa12bb4c4acd018b2c4e920a6a0ebb4ad82455e6e87c25523a2759e2411d2937c4385023100e2a6be5e2e65d383069ca345bd8b2311ce6d142f5e57cc3fb077f5e96842eb5218411003fab09c7827213c5c31b11cd40302047c435bb500673065023075650ebcb92409a6ef55158dbbcb951bf5d81c22b8c94be39da6cf6e13715489696fa0332dfb1c443be7d9f6c590074f023100d8fc434f19094e2daf898633677657d1859367b6ad1427693b4c530a6b81f33b2bbbc30e9a345222f439db20153949c00302047c435bb50066306402307424d2c3dc08c6d7740aec45fb333e10ea4193485f0feeaf6003f5e23355e2360aab4b3d2fbc9b21d6555a869b7acd5902300883d88f52be3513ef6d87cf23e61db85e4298e90ed932be369990aa59f6bd49063d11501b048efd87fc433c2c35c2f40302047c435bb500683066023100844f3ec2e030cf1d2a249084d5e07f5ac292a27a65c1524c52721d87a5341bcf82bbf016ed39b52862be7ade323532d3023100a7ced1508eae571b54616e43198e5be690a170b64390ebde1d4904b325310edbc4325a566438a76c9a937483f286f1140302047c435bb500663064023033ec98d6eae8dd33bc502cd4c1e93dc46fe3b174595dc562e600b9f0c5f4650f2fda21d37ac720d0dc5ae5e6f37a81a302306b6c5999055043d4b6d78121b8f9bda21bed436ef2d9b76c310f55881c6f9b6408dbb4eba04553c7359767cd8782575a0302047c435bb50066306402301112761c8d7f8c761ad7b0ede4719b9b5890ddff7aa9d57a322e42e10f4de35a13de8a3d72375a4365129bc83030ca00023077cd8c36c61db5acd0f6d18041bf196184d15fb6a6e7afb1e255bebb2091e980b24252383bc6722604081fc6ff54729c0302047c435bb50066306402302de04ac0e107842c2cbef7b3de22e24fa59a8b4ff89266cd10f4af2d9642aea54a15a427a18f0c816c4b805ceb3d36bc0230449f10a39fb3bda9599ed09e1e2d1be34075feb5476a1acf699f8bd87fd7567943f85cb2b418fd1d37fddf278679014d0302047c435bb500673065023100c59c4d3cdb0d43d91786af7d7699d5ca7a674e05a8d99d703957a11f518a9dcff5dd89e24960754a707b512fc8753d78023033dc4995c46cbd3205d123528b8a20fdbfc6b3f2653c7b0bc8672ca611b75c83a44e125315a710d74aea52bbde3495480302047c435bb50067306502307f5a26bf0eadca8734c8e584724b22532d6ac6a788c1ddc200a63e2986024903e101570de53d1b0802f10ae8afd400e5023100aedb933083ebf181af1a15fb0e375b097451e8b83564b496ca4c3b7b8a4ff265045b76374a9cfb7d55afc0eff25aa14e0302047c435bb500673065023100a01c8dc485528f050160a6b5bcef7ef366004adf4cb0e9837d28ba61f41dfc4e2cc573180fdc40004c8bd51f98c43bad02304889c9b7556dafd75587795557447aabbcba792ad32004722666c00d4c3a4344b5e69615899627e01f3abfe0777fb8ae0302047c435bb50066306402306d7bbced902d98893654058b00c2511776d54afe96ae069d15eefdd75b300d460feac2c2063d319ebe357f5fb9012a6102300241e3c841d94f8aac36d1dc483cc38e98b8fc5b7d76770c331676bddf7efe2c66bd17a2e693ac60c1294f9a854a2e3a0302047c435bb5006730650230017f4ac6bb0f933ade88a519dc66041eda2c9cd0610a5e45782f686409e4735962731fbed8f48f7e98e0530ec86f456d023100984c85ab45ea158f8d917d6e6be7b23ce70230bd269a6900795542c39a34f24d182793e073810ce403be3b567e1490920302047c435bb500663064023037171443a2ebfd88af5205542f14c661b29f83f4afefcc2d6735a991936f00a7eb1039da1da76bd82e7446dbda16920502304bedf5948a5eb7fe8167c50d7331c5e4b8f66e32f1faf29f33e6d0bdeffb9cb087645748052dd5da59355d6697c7cfc70302047c435bb50066306402305dfde2275c3b2a538eff13e8e416e8b9b749f80b06089a547bd0191f2ef7c8399e2d6352e880acfff4f60fc40738dcb902302af59bd43cc7b66643abfa99e7df167e28048a5f387515a5bbca5aa0781e363ebea080a277ec04e256f5a9990e30b4770302047c435bb500673065023100fa3ebd29fc8b39fed791141de58f9048772a966e543ed41dfc36f8bc1ef33c83a2455f8e87ccb11643ab256105bfa2c5023056b1db9a5d8692505f7c7f3cca302178966cb2d4f6e08e5ee2fd1fea1dda1d19819dd8cd7a5a7b72cd6a505b8e798dd40302047c435bb500673065023100e2d4b3afc4b6a184b9ec6f936d3fac3412afe9e6b8fdfada209d4661e7ce74c5b6ef314e3343be5e1c177e2e7bfa4a8402303351dab1e65d821f294b5e938dbeabf9ed9d23b34cbbc188b6a3ef6accc222f5da5d41bf9c8c04d7fdbd44ef4bbf33f40302047c435bb5006730650231008dbf2dbe3e309e82fc259bb5d1cc79fe36e0f87fb8054b264014a281674790a7d89b77583472f6f727d9f03835a458ba023012d9de4656cbfa6a90a6c21e41f9436fe468bbe31d33cfb58c1ede9b3e917746fe5b9c667a7dc19b49ed6e2d291ec7460302047c435bb500683066023100d829bb6e93f25e90bd7bc68114981e4b06750f99e20484546307bba09826950fbf560664e1312b09c97c813817572957023100ae9169ff9311c84016cb15e15b165d72a8b23c86d070a6d0af6f697b4486af587c6551d1d7b048a37a80a7d96215a4910302047c435bb50066306402302121c0fef0ab076e1de1b43f7c5d9a104737678fd81d11fcbfbd2e80310fdbd31b1e9ba5fe709e0f827e0fed6cb4768102303a1f5886f0b3b0f68512593f104bc6a64357924d21b9e5adb32182aa1fe5ef108a8a10f180d73deb47aca07384cae2e30302047c435bb500673065023100e19252e480b218b83fe4bd06ef92abb0b9680af9304f9d2284762805ebada15bf9320b1475b9344973849bc8cb15e1f1023072c5cc5a637fea01aa4f836c8b31494846763f5e6f9e91ca09e4120336ff42b4a2140d40d46f4294bc8762ba135ec6370302047c435bb500673065023100b1d332ce2ce505fa505ccf6fa8d2ca90877e8b21a6bee019b086e113c118566ec7344d2a9c7c0e12ef394e52635bd24802300c1dfafcacdafb2a4e306f505286ad9cfba2a12915ad2d86cd2911c7c5e0a77490e72846daf4c1f55256136ee15b565f0302047c435bb500673065023036a7c7894a8782a7c1f12dd83d13c453b4a44bdef475c05a500ff998f2360182966c382176f425816b2e60cedf5db38b023100d19aa20ec111ada3898cd1e73bcf5b5d74df8a6804cb302daf91422142a9566602a4734f42b9f63694e800e8ac28f3dc0302047c435bb500663064023011ff9d689bdbdebdf5479bf686c46e66b6693e2408fc08531d89dd2314c8da3cf98f133aec7cfb7798a727ba37a5609302303234d05aefa11cd71ea443fe2f2df7234eaa7165d55c409f85c09c1b8a57ee4a5114ad8eabc8a6d3bf81ef7ce2de858c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b32218b8e4f0b11003c3650856dc11e7592e24c7c1cbc5beae9b62ec92f909d561f3accd7bc73bce011dc91739df7c8402307d7485a164b89d589d14d850bbfbda7ed6145e6fbc6022a5c07d4cdef3890c90bfb853fa3895e2af5300a5d7566964c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cec21a31360fcaf6184f2fa0c1fe4df20a5a4f936558a2ab08df4b95c0c8a175fca3dc3c60db1cbd66876b42248a3d5a02303430c4ca3cc16f2c2d7ceb07e407e36740842d0933f384cfc8560ed7f8bba7e82731808da0de4c43a356f849c21dbed30302047c435bb50067306502303d6f3890ebd21b45222fdf478b27d9599b5d01dc99bdad09138c0545a00f28a228ad1ad4e1dd169d7baaea1625bfa65102310080f495c0f90c062001b0dcd71d229b32eb66d22ccf73190d3dc82f37439e9924890cf28f3c9f93c36eb3f2e4efbae6d60302047c435bb50067306502306eb3db01d34a7023069256c3f25941794ae0a932f954e08239223ba9ccd4385975a0d688af4c83e88a3467e0522af099023100ccf9e84a292b7cfef751b2a3155135b729c10aabb8a99b533fc2bdcf897c001e86411ff05b318047acba09654e1cb92a0302047c435bb50066306402300af2d988fb1c49bd4441b3ddacad5c3acd87b346b025cb9d960c5bd425bbacc0eef3955df2f0c05d0b9b16820482b98c02305163cde4805bc232727a1c97ae38120c72447d0ecb209bd6723eaf9e1702ec6e48347a63c8f23b35ed8a67754c748dd80302047c435bb5006730650230495dfb8d4e3c9009f623c177d48d81376753e36a5ba16d51a6ea8123824de61e4f6a6d7bbbfaacb28c2c6ed971770deb023100b8ff2ab8eeb2a08371cc659827dd805d12e72f16a22c3bbfa3d0f8792e0da3dcee4ef65557cc4584538b16e117d9b9bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307cfdff475f1bc895905be34c3ebc09cf9507af360dc9eb395a305a7b602f6c27eb19e140b09d7b0ec71512e62aef4123023100d4acc27c5ef3418db6b09b561552bbea4e61ec2d7beda0a90581546c68954a2142957b0d287e3d47f390b75f5e7684e90302047c435bb50067306502306936381b1e715354474bae090169fba6277d14afd39702070dfb53e59b4f4b1fb567838af527bedecf15095a0495018e023100c5b8ce7c724103eedd708fbd19654ba1b7cd8c90731cb7054eccfa22896bbce013a0416f6e419b9b8304b43329a7214f0302047c435bb5006830660231009a1a9581f34786a632f058256bb107e110677b2f5411da45928f1d4333bee31a3b0332c50c5ea01d7c1ab07af6ebe60b023100b28cc1fd7d79826baf6b34d8bd93d67d487c53c27ce1bba34317cb2fb20c27d71f3fd32174698d49ed151e887f3273ca0302047c435bb500683066023100ed6078df0797a6ba31b5868df34e85c015c4afd81d6aae9a2a08558d0c74a86d892b1e5838d5929e4b3f94d7cdd60ad0023100b805635cc5a9d10a73ac0dea872509b9acab8bda008e0d3079155f780a64eb77cc365c2adc20163885d36a63b8417ea90302047c435bb500673065023100a9d77cb7654758f726daad2e63921e3fb1d789c46bd978c2fc178d76503461609c6563c4c4f396be9f5fe3ab36f52776023077a0b3d5c83fba206834409374fa969be325c63c6651759ae3514565ee001caedd92fb7e0c10b3c2bcc5f396fc45f25d0302047c435bb50066306402300b2f2a1d8087726432cfd279f954a88862fae92412ab913375f9af831d774716ab1e64527b704bcd72fba324e9d2db630230660c1477845dd7e733dd7b8f8144e6ee65620b54e41be360e0297cf26c2bf6fbb689ed5f7a628c9752e3fd13c3ddbad20302047c435bb500683066023100def9461bf41ba0698d7c2210c747821e95a0da01fb1b6df2e49cee288f12b10635b0073aa3d62759184e883b7ac9c8d7023100dfb0c32aad85c456515adbb958dbd73147446b32d7cd29d97bbcc4f3569da2bbf97666ac8311e9faf21b7f71a9e58c7d0302047c435bb50066306402304131cc67d02d5df0a874069c5e5487de7996dc12f1ff7ffd20c40f8122c1f4e0fe85f7461a1030a6449d66821260351902307e76ef017c972e3892321abb297a7044d683787db9cf55be7057828f3431d110df35e615eae432dc11a946b6f710b8dc0302047c435bb5006630640230619aa1d9fb5d8a40e2a5ae38992e461b7f96e63fc19f3dbe13ce53337c09acea78e7f588dcc6dc0d56824525d3ebfa3f02303bfc6b7eaf282dce7ec0aa8b523c16d495004d2e301a51d071e87577b2f32c38f75f6945e62ed63e94f372175df5e3f00302047c435bb500683066023100f340fd2ee6fc849bf20cf2eb24b36cc073cf60f004393fb73fedf5bf4a624b768fa21ec317aee86031d58d00f88683d2023100c012b77ec7766808715e5dede0bcc9318632862258655bb7bab52a2381758127b33d6a6c9645adeec74611d194fe0d050302047c435bb500663064023013f4acb0ec883a55b6ca247bbb1abe1954d1d49319dfb7e6fdd9a1a948483c3c2ff03c89f11f0e495ec3ff40d6c1cef102304bd686e8a968f483d28ae9b7cd550049797dfb25bb12cb8595737dc1628b75e1047abfc3570b309acd9f7c3b667e049b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b3c92eab905ec71682cedade0466fc5a92babc338cdb13beb9974174ecc4fd17cc9d232f681cfe03e1465ed37bffaf4023039b62f6b4d689f2358f7cbdb1fc6ec5ae39ac9410b99b66046f6c4b1718328f39f9e6f75fd13d140c68e26b43c3949ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304764cf5b3150b74a9027601ec598a605df9bfd8245ce966179e74ed5c5e9a13395bba8da8203edfe316c912a2b5c72dd023100ab83929d3273ce8b2e79eabb12e6555894fd1ee69986e6772e1e049630924afa5d6bd6f564d237aa987a497128221a500302047c435bb500683066023100b5e314f6b5f3a26b43f210ce9b447169edd392a415236553da53b711f415aaad3eac03a623b7d4279be18801fa60eadc023100c71d6e786aff22537127879396b04eaccf4eede46a28ca5dc5a09af92a11deadbdf3ef5d9ed187cf731a631b39f5f7a70302047c435bb50066306402303d1c0363530b045ac3522dc9778f5ae264c182d767da6d7a8c5c17aed01e0c15d2577d49448868efade4c593299d760102300423a95974cc1cdd4a7361620ef460f0d8d8bac61e2c3e6fbba9620bc15fda5f71b09008b03773f4d7d6ee510328a5e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d463f2893230b60b75765f543c5117cce50039c6372656554bba6ea2658fc99a7d6100fffe3052f66055a0baaea1c76d0230287e57986f578c51fb2b570aa65e06cfc5252bfbddcf47a458cf11995cc20e6a8855a2f4507f3e31fa8f37ab2cad962c0302047c435bb50067306502310099fa176b42c035b5007666ec06ab4dcb2535424a68dbf09a6d6a6581d7f2fac77e1882c8adff386b75954e6e2386166f02301a4a8df65eeef9133b26c6099112bded856dfc410e052a00ab6a77f156cc05d75ce1a6866369e3296b2d5cf4d4e54b1a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230363e4a13040b77787c5a093f32989d1601617f849997c11eae58749c34ce933da6e2f6aa4a2c70d35aa8e623564f864a023100f0b8f8b385c842277037e478c3ede8bfa2851f09bd14a287bb530b8294e606935686701f70136de534d41c55b1a534640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb94171a799943bdbb4744f357694448a3578c1f3c90e53a84e9e6bf1af3b92f450fa9bf67ce5c63499f2f990273c78902301719ed37c3be59b61a969909f1f85c5ae890e68dcec719c9469052a606e559817bba98e97b12ad388cc9ab6c370062010302047c435bb500673065023045ca5b377f0b95a7fd5c01c16d1199086283943bdf5f4b7cb232886cbbbcffe330d12061c2b78894691754505187b66a023100ef17aabb5f6de513ba9321159b3d97c579e427be8a3c2c398a36d9086a0c42d9b42cedd78fd00e93df5de5421c35cf640302047c435bb5006830660231009a990d5e98751925b7921d050b86f71cd8b7cf0ffccee8feca1358cb64b44800b34a64337e0da56d098c7a241adb6352023100b7a9c955606b3a710c2f9c0207958ac62358ff96d81dfd9e54a05e91af0af0f7a5bb9cbb029eaf4999fe78b91e1841140302047c435bb5006730650230714dd9fe4087bad1ef8f6484a2a324cd584a086bd38968435d1a1af597837dea6a0d12656801fd8537b51476dcb02baa023100ff8afab4e814e46f129f1111cdcbd63ffad129768dcfca2b4e6d4a33dec61883705aef6e2ea6f00a3f88eda0263409e30302047c435bb50066306402303c8aaa67ba3189e45d4e944b95c77c44fe21cb810d8e37a45b85b0cc6ace363c1e3cb03edec839b36e57b1d8c6d38eac02302cbb93b85e4db955a44035ca33c77e9f113d4eefe1a8389334edab716bc6de4ec047ca43b325f5b1b1443d86cf66f74b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3ef6d3721283f7ee3faec7420a540772876068a7f58b792d7a1a165cd04e92fa4484b0d50fead8f03678a08ee140a0802301143d87ecae43aa04cdc29671d2a6a94886ccc25c535af54eca2857083e0693a431116c310598c1417293ddf35ed80580302047c435bb500673065023078ec06e766c444135c07b1be46aead8ae593e2f16904e9df36d01bf60572150f97cd8a63691dd5ebdee2e279aafbdd1f023100cc6a07a9b021ad38712bafd1ec77979dea0b10df87c917a74d072e3aed43314947e87de99f741ddff9b3cbc632814c490302047c435bb500673065023023bca15db5cd51c8b4ac3eb59b3e4d3d99f7e77d234f53f9570ba17df88936a1812074c09e29f78ba65de574dfc2f33e0231008e1c55166a23df5f19a419b6e9829f7d960f2294901bd7c77a0118d1823c63d7a62470e972d687410c81978ba382e5110302047c435bb500673065023009fca608fa8351000b2c999b4c18860c3fa64a02af28303d53928dfda711d90a7b327cb2734e93ed8feaeb5b0bf7036c023100b14761cf1557a8f690721c477f0d1d31db00bbccb59d4bbfc4125cc534b760fde5099406c96c0ed2048c340764ee7ab90302047c435bb5006630640230502373fbf8eb34f266078c993eeb922d80aa2882fb6070bdcc3e89226c4d09ad056e84ec9887339b91b197217fd0a13f023010689e55066697721f9530978721c55e1dc86e8403af6ae3beceba506b2bd7316a20cb498e321f85990697866edb50290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d248e9ebea68546a34fac10e1b87914fcab7709f85fa512283014e00829b99004a3354877bafa3eca2c0aaf969318ba023100f890b73628e6aea02ed3a025f62e5cb0ee42483483d8a06610739f298d8a1f088bdc834eae0b1f4d47c3ce0cca481cec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f151b6e1d0a5fa9da48f049d79e79cadf3aaa6b1ffe667b065f4995990a58611ce997f01bfedb9382ee6ce485b46a3dc023000c4a6f109d6b27f54c55d71daa735e75f9e353b1403600c34f299efb45d3fcbfcb45c19c5d76928b0f7370a33b8054c0302047c435bb500663064023066699da28194284a5a86e1e8b17ac5169e964c2e0125a41d1ab987c21ff9d684ada20f90b93de96270122bec6ff774b102304b7f3ab63be2600e13783397a11256f8b55ceea36ff6801acf894182f01a0c20e05aa811d94adac7dc0be62b8236f39f0302047c435bb5006830660231009476d1e18157837714b54141743f12cef92a6b959941f174c9fd677ad3867f76dd1bae42649ad10f59fd39ab6dc83627023100f9a8a65bb2f74411967726451781fa7b8fdb9460e14d0fd6491013f800436c2491d1feb00ce37cf75b03aa4fb96accbf0302047c435bb500673065023100ef85354a0e0027530729ebe19e04b17c9b65e6e4df373acd41abe1b916ee0d88467ad2a3929aa2070d9c10bcbce968ab02304e319de085071ab9746c61bcd731185d815d6421ac792f4b77b807d1f2a96c862114ef1bd12aa654da13efda4e3183e60302047c435bb50067306502303c492695a7c2b4cdc1ed7f471b8f7a416db594fff8450ebb027586a0a303a832fa053946292cf87c5fb60d303eb8814d023100954544c8078c81d2944ce4695bcf995a5d2e231b6f3ff36f63f3aa692b7129f94590fbc00dc6e47c3bfcdbd7c04c39fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cad24ce0868306bc89ab209e91611cac8f88ae5bee92e9352444206880ffcbba8bdb34f4dbb221b136a330c393aa88d0023100d1844ba520a4bc0c3b2c93841b6b65bf813d04d50ae4d4cd48b70aa1e6a99e54b1c71a180c9c498e7f713b904c218aab0302047c435bb50066306402300890f4586054157d3b2aafa8380471eeaf1c77bad2de4b28797a93543df3905ec8af27486d01ed623007f50afbbf421d023045b44dfa907477526cea81cd796e1fb4b5752baf8be9cf1d6f26cc8cbad81f9af0a24dba26c0450dcf0aad567a478a4a0302047c435bb500673065023100c6c6f4822223a901de4cf3c2ce6d428c69fe4419edfbf5d23c174e298ca0575c852cd9f80dc3a1a743c5d430a4446d5d0230414371f1b54090aeb4253857297f50315a75d3b21ffbfb7d0c88e614c479b4958a25672e5fb222c804fd5393f32e19a00302047c435bb500673065023100995dd71a901fb677c5fcc052c05c60e3d28242cee853e6ff78efac45b66efffe1e7e9679a98a3e2113737547fc8c035e023006a795bffba6af0e50e8e6b6040fcd01a9da467c3967abca3dbf7f0bdfed407daffa896f6edfb83e6a132193f0940dc80302047c435bb500673065023078eaf78ac85cbfd27ef571aaef89613229a53e709288df022bff380ac76e9069b9e5bf2fef37f73f7cc26bd452fc0ec5023100fe1afccac118d0d78778475f8f3d9f740ef9de970bb5c73acb2eb0d9e8e97f5efafbeb66c841576d7b950b746c94014b0302047c435bb500673065023045fbbdac2cbf9bff2915e01b57a6fb350a4a2d442d2ac4be78dbd225c02749f80dcd23c82572006d2347b4312abddc33023100875daa8b692f2219a53ef1ee9736d11b2ea78a577a5625a6343b6b63299002fa0f5cc03a8cbacda93627ee905a4a09c40302047c435bb500673065023100ed35788b024e621627ecc337c2cf2f61cbe7dd7fe5a577a8f10679ec8b53fa627d6c85c74e1669440cc91b632f9a7c0c023007eebe55eb4ffad78b24b105383cc3ce7b12c2bcf888019d5ce3e1eea23009d5fdb960d1c5488eed3272ed43c50d80a50302047c435bb500683066023100b527bd79a423ead8277d2f0799ac6986805f2ca57e2cbf5b38743c482da5d0dc4806fbb7274e700cd7e7bbadc10aaa6d023100d1c0a24a34cd359575cd41e334c05d8f2f452fa064091c243d49cf61e783d1694f9e129e0c217edc28af0b8365de2fb00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305bbe1e7b42728462c9de434cd7ab7c4d79f5678f82efe9060ad01c952dc3c7e6bc7e28d34ce16b43bcc5cc84fc13f002023100da21b152dce7b4549090f9dac18ee6f349e4053c4297a76215662de964701018788bf410c3da64063e4440684ab814db0302047c435bb50067306502302036765b3878c94ff739fc2c53e137fc7eda8f66292be1c364b5c2a65fd8adf91191f27e360622153c71d0f874b37286023100857b6ea3aa440255bc1a8715ba3828251d994cda82795ac3c361bb21723d0f581206e4f59d54538a40715687fd5c28780302047c435bb500683066023100b39d0c77008ed46f4d4d5adc53449748135841e364648d422fbdc213b74b2e6d7c26309c809cc5e1405f08e97a8cfdaa023100ffbcee608704bdbe16ebfbe44152ad919de1ca3ceb22b950f1f8ed034ab67d4fe282ac401c53b80f96d3120e46cf35470302047c435bb5006730650230393d7d487d85ca8db171a4cd3107ba901d5379d744616b768e587f04b846595534a6f2da5a3d6db4e5d377ecd8d6c5a002310083119b72309c2a399240f013e816ff4e73efacdbb15759605c76148d6328eb8c02dcdb4f9ff7064e211daf3738fc90240302047c435bb5006630640230606b781224f4daa2ce10c4f31a4cfdc4c47ea37ee4fb440bac9d7e0bf1ec8804f5694afb87dce4e0f08a470d2c90ef8d02302e2f1117167cf144ed3311a6ed806c40d88a8cfc3429a483156fcb351e44aac7db50853423e825b7b30c0b10b97408f20302047c435bb500683066023100f0cfe8d2ca799405db8019029e908afdbe0f6121cfbf0ac3da94ef049a62f5d598a349d42408cbccfd48298e6376acf2023100e6b5e1c3daf777162d147c7f0822c06d2375dbf2112af4058f8e97967438ced70b346d3d613e96d7498a4a0142df09bc0302047c435bb500663064023022a6357544e21b466809e09e1641a15ba20bc1fd3ead7dc7979f64228387a8c338c93757cfb0fcd3be750ec0352a293a02304063dbfa25d955d832322ae0336db59045c1216fc74eacffaee12f3b683fc64ce6429cecd42681759d7bef85ca81f3c10302047c435bb50067306502302667d609e844f6b7fe4888f1499d20d695883da18d558daed6773a1495127f830c817236e4fabab0df3357d0ff87013b023100ceaeb5c2fae2f9be3f0ebb5c12360c2b0c6215658d4663ecd5113e103469917a21a78281ef394d24a9e46123804522670302047c435bb5006730650230106ddaf278b9b155ea927834c33fac741a626b805b4b4e5327dc081c334be5cec057b8c96654578fba8b1b6659e7da030231008ec533c19cd4337712d39ab003d32142a78a3272b75119882004192aa1adbcc27ce3d7e04a021ea312fdb17f30535fbf0302047c435bb500673065023100ecf8d66fcdce10243b65c78cc80422e66d7c09271a046f626c513e5c7941f4cd46dcf0bfaf6d50f50b1a9259dc2f62f102305d0d30337e256f930ef952687605e6470fb4fde3513b2417112042d6331b7a03bde4d5ad4c30e0a50c4c7b2ce8a1ab9f0302047c435bb500673065023100ccec0fc4f67624d6c87d9e303e7f9d11bf1d5e1c5e515080b3592e967a1ac89e6fe8930d5e684ac854bfba1a96f000a2023045494213d986a2bb97258976e82ad6afa48d3b1d81615b8d18630f384e0b7545f3683f03f1db861f00d2edf34ae924030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f3a22cc13937fbbfd9ee3a02a941f071873cc0e308a29b90c6ad8c85d6c0e3fc87ba8d53e55cd9ae4e5e9ced171263a4023100eb7e2e6639c88ac2b2b93711a9f895547ae5666081eeb066eb8b8e439b86c52f60be947aa1678f493d4f9578f1de12350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303611922c193f3ee1d1467ab3b54bcd82ba3055281f9349bb1dd141d7d05a4cbbdf4ed41d179985faf441ef5f59534757023021d7b32187085c6a3f5630685fe8529ed8b059bccbe4100ac40a02371b6ea998d3ecd10fa6fd6fbbba12a14c22ed0bb30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bdb17fe82ac4df274a8dc5be12c13923578851f803d4e45ad5e789b5d58cb026cf72f9bbcdd248ef8e59b161b189978d02306086cddc67cae41740eb84b2308ee459ef0011fdb96f7297e99579653bc454f0e4f751a68e35afe4ba42bbed6ad160160302047c435bb500673065023100c3dc0e76282f7b0a673cc618c687a00ad3f372654f8c1c500f4876978451172928fa441eb55801c5d4c40a1907e9c7e2023001edb26ce38ab020d5b3bf3bc32b24a3c362e47a168b79bd3e5956e65dff4eee6c0398c539dd852f26fe66aa59368c390302047c435bb500683066023100d09bea67abe97f27f9dfa1fe371d0f759b8be7368d53d5cbd0aa309eda1ee1dc403988aa0743e6ac46d424dc858c3c26023100e80507e75ce8b7270d8749e6b11a448e640b70ec24652a30563e1348cdd13ad3a49c5a644a9dceaa4a340457ca97472f0302047c435bb500683066023100bbf4e465323bc2d87e8374b06182e7f7960dbe2876c9d2a55a0e7145a1881113215a45902c2ebb0c85a34927f7179cfa023100d6ab2a02d06bb1828ac911752c06d0a6de8560804bff160e0b38126a3ba1fd67b0adecfb20e7886448dde5fac6b48c530302047c435bb500683066023100830597154d6ee6177a0276448334404c685feb6fd7a6f9ce03211d4725fa8e2441ef8e57e6594c9928a8fa329f79d01b023100b0fe99ddf110650c89f71c3c9817d1b9d48cbe56e1cd2d5a0c0762ff5023e20b49c13d2d616eeca9960eb2123514c46b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc2f640b09fae966f9202f8486b68f371732d9b48f01b8bd91ac8ce5b4004d1440a2569f6ba24001390b19ad610fd601023100895d273b59acf34d5ab68a308e9374f3df7b8f6834cc4c5b2be20e7a7612fa3d2447cdfd2079ce2a3d6554e4b94b86720302047c435bb5006630640230384b11d3ec715eb95fd4c2582c1dd2cadb55f420e21e08a5e03efe31f5888ad6d5096fbc270f8cfd5ab1e120dcf07c0e023010ebedbc648f81e11d30a9d9930f76e53a24acd266eef428111137f02da26e9d98f46467c8cfb8be86c1cc42c50cbe6b0302047c435bb500663064023072b1dd217e3174c715fd81226ce044c01b1f92e7d092c7dab91c86ce81fefc09dd4f72850e8e81a61147869a8afed02f02303e5d746078b9f1e7e57d544fb50402b7202b124ca7b0cc6c8d3346e080e61e231faae46be8facfdff442a8e85875a83d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d6ed77065914859345947749c778778f19a047b6939ca78fdd5c8798fd312d5e77483c8befe86ce8e5a2a5373c9d80c5023100ddc63e4d7e054b46115331bb4b48cb825a85db049635bb3204b4e61141a0f490f1cee89459a8a41df119ea1cc3efb9500302047c435bb500673065023100fd164c319d52e72862ea7951a1796736774ad43153458f950be46279433401d684cedd0551c495b05953f42534a5ad66023051fcba18ca2ff6d830e15dc714f369554d0e3159d2e17c0752023b223c84731e498a8ef0b6b5c3153ad870e6e0e2d8890302047c435bb5006730650231008efb93ba3ce5371a2747a3bbe29e8e544277519a1f070e89838a4a800a82a2bb1066b61bf1782c36fe9109c62ee1186702300ff4696222bf0d9efdafe01817e189d8790774416f928d1d3ad8d233368b1f123514121ff26d40192229085a8d191cf90302047c435bb500663064023067fe29345c6372647da572f4f8a5d732d7965ed142c7387e455e4b5266000a4d995eb61f07db752d4d4ccd1a0f0fd308023066b5cf885bbc6d2d606e1231d57e0f9b45ff1846c8ec57b37eba91b39d2eba6dbbd64a9fa96c8b7e4f810ae95cbdfa780302047c435bb50066306402307dc302137f645e1c92f1a974bdc6442edc99e11075560809b0fc3dfe67c8ded665f107e47e5d6e1f53e81b961a45e09002301d5530e440d9e01bcda60877b124d137252157ed8fd45a8509fef0f96c1863bed4de59c4bac83acc62a4ce36f67c9c700302047c435bb50067306502306a375f37616f0d20b5dbd73da80f94ce818766342db9ca29b707a1c437751fe5c3c016ce5389a55da80ff97095d964e40231009e611b15cb54542e082d2a47743d362d51209dd719d6d118d3d38d67b9b918ac4535ea3d5764446d50592395bd781eaa0302047c435bb5006630640230717d63a96389b5ef2a05a2176c36b14d396f6522cac701f8ffc2f40649a3ad64bca2c0cdbd537cd41a6a55ab6c8a9c4602300ddb7f8a72c781f4aa19d03794685c08698a6f89b6fe0e6ffe1dcbbcb85ab6ef55460e4779ec5f8125ec9d9de2453b4a0302047c435bb5006630640230088e40ff31e746d1f8321c9e086d96123fae5580203e472062fd019d23d542912749c65633c6e464a71e4df33899064f0230215908746bae153f410bae143a2d3d0c3e302a86be0aee23203777080e075953ee20039e33d9f05d695efc12bc6a990b0302047c435bb500673065023100dd27cde5091c70af490c751ed461c878afc2ae3afae4026949df86a803a157b7b3507b278b09546a988ff44c95b5a9d50230292883405626f721c079facdc2ea5b1a6369dca77f3c033e7500de4baa21da9cd612f61709a439ede6767dd4448e3dd00302047c435bb50066306402302ae4f0167609d7227e3d84a517e561db048c4aee1a361e37b0f9df90e78423e0602058f047dc8b7824446a6fd46d1eab0230301fd93bb20c03a8897d1a9ed3e510f13c3cbe018941a48197453e81a77fe5ba2245248280c1155934162d700c8d94e60302047c435bb500683066023100895a74a813938b11f3b13948b89747e52fcb25287796a3791acc27eaebe9093e638bd260bf77d4526de27e3a44ac72cf023100821b1a93cadf6b1a17078c99e0115842bf681bd804e30d17b2659601a788454c24513c825b80d4d257a6e851c7a28dae0302047c435bb500683066023100ab060afdd461511e70acbbd6724bc3690f6b175b6f83f904cf1f6effaaaf80804b130a3fa237ed1b211f303614f39c7e023100ef4cc8fdecac73793f141868440ac3052068f8959c7c433d946d72de70c86ce464a8944f9d8bab2d640eff5b16d089d10302047c435bb50067306502307afc3db8d6145ca81056aadf6d5988047d886845802a388823f1e57b5040a45a1423493e195c5798c482da7a9fbc33ef023100d849937ffbb1deb884883f890e264e7d56686bca0f3ea1d4acd20dba36a708f3f2fef20fd193620d045ba07fecd655c00302047c435bb500673065023005c3f20cf5a9fd037081a0988bcba12c662ec9e579c0e4a5fb0057dcc397e628837be5b954c37380f7e45c83d73ac093023100f0e58396159a36cd0ae4b3b10329566833d54425748118202378220523a36219ff37611a79f415e1b1ba28a60e631a980302047c435bb50067306502307c94b6fd439131c6533fc219123a0b28e164d3228c71c8586c5d1f87b67d9538b0b65f10879163bf94a25a041fbf71dd023100bd097a61e7ad7448436a5f0cac3e01b27bc886aac4c73f4776835b6d1f37f747d88af09b4898b7c0daebfd38361ccf660302047c435bb500683066023100fbeed97c02e9d9b2cda8387982f2f4dd63caf070b7f24b76fe3f7acdc0f91e211ffbde413bbad52d8c3ab43e9de61bf8023100fde46549153b79fd756fb30491155e2ec74c88c6278c8c49f41e587c8e1bd1f7143d9456dbd606d9cb09c3a4b46d995a0302047c435bb500683066023100d6da3e8bfdb1f1ff6fedafaa9a6f103d99db990874dd59607d18fb43087552384adb4e2008e4c2cd80989df5636b5908023100d979edd3808a8f626656b13764d186dd73d18da5b99838aaa4b947764138b83c686df863f9e00c091db11dbbc16740dd0302047c435bb5006630640230646af2d1e95dfcf056e676fd6b10bb01da4397f583a17ce5a0b0a7004e9dbe26499302ced9b393aee640dfa0d954e2c102302513d7455812b259e81ad0e67d2760184ff656b8ab4e92361371ad6ae5f463659de9a72ddc85ed850d439b54481af01a0302047c435bb500673065023100f289f3a0f0c5724fa2d006096e0c4c1853a6f2bc91c4185eef4377c8c960e8d5b69e6cf2eeba3187c8e7be24e9a01ec702306a6cd61461dbfc4afce220cf9a2cbd50fd0ebcad840d3ecbe9dd233644eeccd44333a1d3176a048a208bfed2550a37c30302047c435bb500673065023020e132d531c4bb0ff3407fa2eb4347bf64f1abc9765919dd9fc7ea697d4a918449e051f8eb36fdcb2e9c6107bf9bcc26023100c2a1d11b4e6b158b04406788dc87d785fc3cfa32fe1341f6bafbfc8dda24375d4b2094901c35ec43e85729940ec29cf20302047c435bb5006630640230497c4b68c2e045986b5894c3a274982509a90833ebc9b413ba4af34b74da9d34d9af2ee1e289f1e6cd3e6550564393a102306d3e26b7df44327ecb309f5b230f42c7c73bca6a7d4ce343db5e66f7b1b1b4857fd78294186eb9195181379a17ea18970302047c435bb500683066023100e921add9439f2a86f7af659ee03bb522543d1af46b57b1d90bd513ee0bdee5a076d9b7c39eebc745ea791ebb89bece5d023100c812dffef36a242044b45567dd680724f299e61636fb14f0f6b5621e5ae5a3dc2e8fda3f8ba040d85e27cb4033990a730302047c435bb50066306402302feb652f9d3f2d62e9ee52838188bcabaee04d74dbfab4ef0467fcbf833d196640a9fcd9cf87c7d195df95a86ee9159c0230616ef8b3f69702ad87f39c7f07cc39dd19ec5794917094b8d3be851e0cf24a7fde34908bae17a3c75a41b10911e78cdc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa5c9a8b76495dd545357279c5dfa0d10643577b4624b277ab92691139ba82b9a412c3d329ba2d7c13797f6f662abf99023070196a2c8a6afbd78e537f5ac0a93543c5168ece5764607098ef56a4c0b2fa1238d5379f4119aef45a6b4f32167a0c580302047c435bb500673065023100f95e2df02e112c135ed7f73a1964940c03cca7e2a98c59640399adcc3b22a75a9b43736d1465f38e61fb5c777e6a135d02301777d3f91fad2a3aa0cbcdebcd16106ce38cb5da86fc30d1d224854019f9b2df2c3d17a01b7125d81bbf76dfea8229570302047c435bb500663064023077423af1636f6e13e08ea13e4314f2b7cdb9c3ba5a1f679bd892936bc44e09be29a4ef9d641822e35898dda3272ebd1f0230422345e876066b4b61e864c74923aa3991b5caff0c9fc0503e1a4092fd7a40d9fd30c27f0a4593a01f892b647e9d87c20302047c435bb500683066023100d7f1a8a37b925584e1121c643881a30967edc818227a90be5842abc4d349f3dfc56c34577ddc3ed39de1be8b91473048023100f17b9f3e5df5cd7cd6601452381510d244b0335b612a084f7b3ec09ed8eb062b54f9a81d40a11b350296509f1b09a7810302047c435bb500683066023100b2420688070f0a063812abd0169f81ad5ec433041f7688a7a33910b6bd7d3e2992b681d77818e6590bc3b7b2d0e7721a023100fe294d4dc262a65a8935400594df8ec68aa02de59ad30f280816e18377ce25086ad076a8cc80555bbf9cce45b93bf0890302047c435bb50067306502307470a7497e9deccf5917576f692b03e94ab9b2f969357476d1ac9108674095cc594b909a83339ec7e9fbfa450fd7e1bc023100a6fda6d65af1b14e309677f8e3aa9aeecc82e278ad5598f9927d1d5dbe2c2201db78e6b1cb5ace4ac9698f4fd3569ea80302047c435bb50068306602310090679936a9d15a29c066cf5797fc2143085e565d7702bd124c86841f1f7c79feb8859ce477118abfa6ef4f0541ae6b0f023100b14ce1752597e03b709dbbc862e90fa09d7cf65d64581873f877487c1ccbe3ebe5a15f64b2829254a394884f4dd240bf0302047c435bb50067306502310087b095d83b6987e293bdc0bfe3cce7722bc49cd36a61d58c228cce8fe8dfc0cd5d0e1a910331c94db79a76f7d748d3900230763b99815351d64359caad0ea88a44417e0acd37612c175c07ca55927af47bdd57ae3180232db72cf6a5aa81f935be350302047c435bb500673065023100df7734c957fe99485b1fbb7097bee6f44d936e82054bfb9d6ac4d76818a90f6422f4b63e6821f4f78f60fb14ef7ae19302302074d300799b9784b67d02a00b253a9d52ab30ade9789b0eb898e491e5c9ef4278a0bf8349ca8a2c68c7c47eb2d7dd7c0302047c435bb500673065023100b2b75acb087d89692d40b73cd6a478e23816bcafd99c14afeb5e00b651d40ea8e342fe4b397965e40af33f748780477302304094d5703739490a9b33a7d0b75a345c2e38aca618c6fffa4db4df429a4396973e945936a7ea3cb4b36f9993eb0d6b070302047c435bb500683066023100f631e429d8b10d96a0ef7508acd2c326cb77acc87da08211b4c2b8067db8c1fb9ef3f5f2a7d13cc938a77ac06ba70f4b0231009fdea218fcd6eaf77b3769c120898b82e524bb64025c8a2c7bbfed59c86e10e1e6e0e365e0f2c00e9b50e292362f1d880302047c435bb500683066023100f60a960cea6cfd774e7ca16e25f2b483b15153229baeb054b0a2ab427f40ccb2da8123da3235765544087ff2cb8e057c023100bab289afe2cc50af969d05f7971cb82c9b6a5a469664d8b191dc1db9f6ef9fa9650a1243b5333d65dc0983a68fdff7030302047c435bb50067306502301e7557f0db4cc477b278ea4b903d9cde8b181142a4d33cc8d2d2f3a4ce959a2264246e4d91ddf3190536ac2bbdcc034502310098b6650652088a7db94cc7a73177e248f23805ece527c3e7822d97879a9cd8179095d3313eec84d6cd71f3a04ccbc62a0302047c435bb500683066023100d57a1f38d8e36bd3c65a3c8905999acd113e1a2f9fd1c4e7a2ece32176aa148140108a42a2b3fb72791f91aa480a39a60231008aa407b3c2a4f65c0d681792b470b6025a1a5aef52ccd69ecc9cb6bb7698a18e631d854fe2cbab15df988f28da3a5ad80302047c435bb500683066023100b5e7382480d33189de9b3581e01a3e45f9efe3e8b6d2dadec790ec3773b6ef68b8cca10a82494466a19a405208cd6d77023100c9b29cbe5635e1a66ae0d0c2d7a0690705421da7dfdb8b470d6ce4226e6a2e7a06c04cebbfa1f183724191397474b5740302047c435bb50066306402300b84cbe4c274ab59ad727b666edb40c5ff9c33b2ff6199ab9b23ddcbf0d55277203c5fc66100b3e2b2508c1b79957848023034c4859fc1de374f8e9c4e4d65dff14420a1540ff32e090b5d86d7336a8dc8b2aa58427344d306baf9c00892bcf1f1000302047c435bb50067306502301d8aefbce0d8a3c9d5dee7c8fdea79cbaaac84591a24bc7862b7ada6a50d68745b3e40fadb65043881749b2221a33805023100e064cad96537d86dacbd2818dc850ba8cc6f5d1e62591ad8158f9ed2444a04564f005722188ac96219aef11d0dfdf6020302047c435bb500673065023100e29ca39072a563d0d7579e3c3443c634bf22632cd46beab62fa867ae7561a234a224e7a647b187ccdc585145028d7efc02302e3d15c77860a9e07dafbcc7aedf422d1252556c06b69d3f9c8e6756757bd5ad6a867c983887ab81c0b54d90a3f6d2110302047c435bb5006730650230215977c61d94867298ae3d24568d7918132ebac8af4dbc6ff0ea2baa320df1b94fcc09d85d50832dd91ac7e0531bac5302310082ebeee821d4686e7bf492d1f7043855ea451dad78cb975d6b7cacb96e9bccc2fe51e1ff82fce9151656416db1dee8ff0302047c435bb500673065023003dd283da73fa5cc5bbcf9a82e0d676c87364995be3a3da90b90273e729a28be5d2384934eca9ffe5123e16b3d72c3d3023100a8a71d84f2ca4534dd8d4e8db520c303b5e118bcbde5d3ebffd01d8e449315b2ee169fc3e6fd1d0ca9e11ac63f21108d0302047c435bb500683066023100d4309c0ba2bd2565ef7fc61dd1ef51975995d02ebcdf3bc16f16e7a42729eb56c2cab07f71ef269c71c5b63d794180f60231009a303bfbce573dedfb70616cd87e8b156dee85d988124fba90e2095c206c55523a96d66c6c1cad3ff31480d5ecd2a5470302047c435bb5006730650230529c155ea1eecd95fa198c73ce185acf9f227ebacb3c87727a86c4e1c31e7c977813ac8c0d8d4f4c8cebe59fc44544b402310089e0c0a6256fa9482beb9456f3f516e99d3047c15a832783431c3751f97675deac0417497710dc3cdbf5ab0714280a3f0302047c435bb5006830660231008557683bee10042821bfbdfc12918a28d53145a9d1a832b9e21895124e10983984dcb0330770cd878aa5d6a9a4007d61023100d5040f5a6cffe1b54b7578f2d6434a305feec2f04edb88f3792be13b71de7c84fc1e9a898098c978f8240ef6b76bc0520302047c435bb500673065023100da11b81a1aafe3edc179248d495faca03164cd244cd0ad2109d401ebdc1b43fad7d968932766567d6a5c60dc298dac1e02300b4ca499ac884db26594a4a0a941cbc4e2db30c76edc67057bc18f2407eb837d096e6a5abd735ac1494754025cd213570302047c435bb50067306502306d4eb262e896ae84b601199c922dcd61e2b12ae80d9e8aa3ab57add83d7b70ee9420ea44c4f1b467b2a4cc9acaef814b0231009785381e28d84fd13e5e42aa0fcbe8c821900f235404a29f08a987e3aed31337d8b3c208cba32783005ef666ccb75b2b0302047c435bb500673065023100edc030d2f2e2bcc48714fcbdc7e512aaa1118fea8e7a387be645ee5f7848de6e04c19cf5bbcef14b332b09eaac0e92eb0230643775a829d39dfaeb1609f5a56b8dd9302c059338a37c2551d29af6483c78c9e53025d87a3b7768bb371f72edc98f990302047c435bb500663064023034517a306f6cd03b4f551a08d30784f2411ca2bbd1a2618fb0d5313480812a4ba3e3b158b5a59226f200e53b8e70b128023068db9f1234e50d45ae87b2b97f0b6e446d9b2b0d992d5dd358827ddd0cb3314d5823c6f3cb02cbe98d8cebbfe8b680470302047c435bb500683066023100c7270a1f9232780d9f5d237dff3104443f3e2990001eb09db0681c91252b4969840e0ffd58d15f6fb23a5a9c0578dc6a023100bc9b48a4f00ac83c3fab76c0448c25f37035cc699b57ed37a9ba2df3d801d156c8190a27c43c5d710b70593b75a89b720302047c435bb500663064023027b1211e71afd053ec06c7bc332786157af7aded22b3e7e2229533cf740a5a50082306063ea7e0402e20e7ae1a4450ef023045e266e758cba87cd65421d170f2d82ad00f8f4b342d249ecc43f0b21d398e2ee6f54096bbfaeb3b352fa45a086873ab0302047c435bb500673065023050cb4a488ba4ef2af9d1a35896a5695e9aee101d4277804a83a16e5aaa00056dfd20feb5d66bdf6eef90d11b841dffbd0231008565a094648e4a57f1d60c5dc71c1b9c958a2b8aee73729f8dabf875a609e79edadde65dafc9fd06543ac15975b1a8d50302047c435bb500673065023100d6f80f7fce9999348d5d92cfd9102ee2862d679a37318b889e8ed0b235fae8defcc029253000f98ed4db70db304e38d70230635a03376b1833b9361191bd2d899f5f0bf9e8d89c3d2f55b92edce12e555eae0ada29252d7692ed99a25205a278f0ed0302047c435bb5006730650230136f295bfe43a3d3121cdf98cbaf145a64e56215accaba5091a1100f0fa6442861aa7ea68e2fadde19c3bdf0a62a961b023100a57521c44e31dc0dac8f9303086e594109740e605d8d6eacae8f26ae374ca917f564a74c0e24b54b8587a7f9300c73dd0302047c435bb50067306502303d7131d4bb54221feb537de30d438ddff0f3df7223b1fa34e052700fa9308de36ab442b9fa8ab6f5c307f3ad6f807c8f023100964b8fa39daaaae44f9eb0461d7c3e8d19facca988b54b2b3b6d7688a638b364c5a0f5893b4366f4cf3b656b18ff1ca50302047c435bb500683066023100a6f69658eed248c21b3c6163ddc4162f3059e02e31098c85bd6809303b7262f2d332f758cedae6bbf36bc49a7bb7c91e023100a04e5f28089b58d83921a8ca2164c71099ac32433fc7a20fc9c400aae75a81c83fd7a7fe4c031ea91bcde249a9f985a30302047c435bb500683066023100ffb3bd9b7e8c09e021c38f0900a02f2c0cb11a82bf957188284b021312f4159aae2b698186e8fd60d5498c76759d340e023100fdbb8e20166a7fe0be1132928c2bc877e0bb8795e13350b19709f38025b4ff38176992aeeb7f5607fe4091b6fc3fca3a0302047c435bb500673065023100d56a4df426d7e2ad4044b0093c6ade48572dca3d1f13f2f0a106427963bc580f4486443d072eae038a663b4a5a978b83023021799bdb062143d2b7babf1f0f5983c151b94897c5dab3d0023d52378310ee72e216cdc16df870ccbe9343e32e809d940302047c435bb500683066023100d457d3821491a1f195d66381fe58c33a8a73214ec019887a5de5500236be5d0d06a73b573e9bb0a072f7710ca9cc97f4023100ce377f9f8b03c6d868af85d15e252a03f88dae0b27b07ca47d8e5eee5fb2b2939f40fbb8275c1e40041c428bf5039be30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee491ecb1b85b85f9cee7457e0a6e3d9178145e071a1f35ce52934ca473376d0ede54cb62be9e923c816ef6e77d2aae6023100befc19d1657dd39db5ea34291b97478a4359363f5052d6783b91e515e86ff3471b2d69a64ea0308604cb0f9cf5a68d5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304f4ecc552459744730c4436bfac555ea751e93ad68f12c11d2d5c1ec1184ea3e23b91aa3f0657d57f7860b8cb05a2f7d0231009aba3015c17282d4d2adcc6e0a0125cc2ed5af6d3d94bc89a92ec81750f5327bcb04daba392d0cb230cd04bb60dae68a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ebb5f7decf59be7f4d743b5895c2a1bae9fef241f311acad324d6837c5591d2daec1e9684bc043b737c946d0244dbbed02305476de64df5dacc4b187a1ee22eb59776981200cb243bdb06657f27d79f5b492fd31505806700e569173d710d89f53420302047c435bb500673065023100c2c40e6edda263292264909014a1eb34e77654a508359da988c14921c3624dbc562860abc212cf2a8ac06127a3cd4f3f023065d83aab7765db2e806d13ff83ee580e0b12c51e3b06aa4af4e7ab71d2bbae3fdfb409ccbf2d70a11d3bd849ca177d910302047c435bb50066306402304987f70efceef82ea4d397dab2ca230792c851c2ed02f4ee0b39652815f37e1ac9c77fd76e64e0f7c3a1f14bf83190fe02303df0bb08a01ad9d2fc400bcc7bb4d612bd299085151c556c3b16a13b2ade5c29becff50afe76418ba70b2ea541bf38c80302047c435bb500673065023100d5bd138c98e3ed5d9128163bb01e442211d8308038fe8b7982f416494a95c533435b98143c8e7b6d451e00c52958148f023006fffbd30c092b1bac4e72f5d8ccb367c1e514534806c4d3639abfce63c5fd1f15ee4ed43d76938a7f2f55e433ac1c750302047c435bb500673065023100b9af192445f1c1e0ff3c27eec066da06ca157c4532733855194001d38ef744916556e5722c70a1f24fa3f506610886ea02306a53e5e9d0a26c0d7fb3a7824f06b4b75791bedd76be91dc8b68e4b27181465ecb693e56aba787d58432c12608847e340302047c435bb50066306402305990bc51d4a7e2717ba43a3a336de483b5de2072acc6fde47524d708a7149807da4a684d07282633a0c32977e67fecd202300678cef2da2fb5980019c3497af836722dd2f5a11d3dd5173bc554fef660e43ba49b39ead4fb9b1577af6f3abc856db70302047c435bb5006730650230544a065fbeb6ba2ed09fc8bfd9ab7aa7ef36726c0b431796077f9eb7a0f861c9df2921299abf937b2fe04d4c4f575374023100f30201830a2d6136e5b81b1c67fbf534d50d0c32222fbf0a6930e041d2f35ef154ed0803f8f8b5a486aa368edf18f78d0302047c435bb500683066023100c9e90163af3a086eb45d34b90073a2fd728a20665681c215920033e2b324cebe748c68d3d1fd979e3520a1f8f17882e7023100fd38b4b558e7eaa3af10a4f7efc3543361312a0bec46210f101858d354d6205d154c19f9dfeb6c9bcecf81792055285a0302047c435bb50067306502310085e4d759a5a3f5f89fce6b38fb4e471b8f63ba5f52e7cbc1c87868d6bc3db55ac7c076be7f97f1de45f80fb60d075bd202305b1a001ef00fe8491ffdf5992975907dc020fd2f73fe5799b3753f8f9faeb655b81115e0fc20675fdf6e3bc6b2c8f04c0302047c435bb500673065023100d7f74ed31bc405cc5e1840aa6c55c730ad1dc4735b91a7670b69f9411562d732568fd5e9d1f66d808d686124e825be680230729c045adcce24db628f01c17c8c061aa1401ff3b0717ae6d5857b00af1702d155b29be7317ac4db0523d9412b2e7f310302047c435bb500673065023100ace5b60228cd4fa01f5da33b46b12342f0ddea8c7df5bb99c2d0c4650f524fe958f4e5a6f0e3e61e0c155fb36b51d0ae02306a5166969c01c20f3377816c630833b7fd40ac709a1b4fe7038bea91cfe9bdabcf6a5c183bf65274cd9652a40ad6707d0302047c435bb500673065023100b6fa5014574b6868b89b2aab578e26da4c8d4d09774c1578329e28a420c8d9438c3ffed25d41fb65812220b50b0ea32b02305487491f1873292eb2baaaaa8a9dac31be51728274603017132e7ffc30dc2058773ab7e5caebc4a6c8943df0e79b5d1a0302047c435bb500673065023005dc9f001c353e9b7ef6aa653b4592ef26a68403adab41e8c0bb33fa7549fde88d1109440d07016a4ae2865d8e977879023100cfcb040f2f002ec59240052e0ce3b65a5fd0dd2c7b2ed10e4595b22e97c0e8ff00688e87db72f612648e83c3647109b10302047c435bb50067306502305a16675c282fb886b743fc9895198b48ec40b66ba0e63c7d70da8ae3af8ce112b57b9cfa745b3440a9f80d1b01fd83440231009540b9ca1f4d481f030947bb0a0ab9c630cecbbf7771baab2855bfd305305327c75af22e3093baedfbf3835dea74793d0302047c435bb500683066023100dd213062074ebe967bad5e580cd5749ca487c28acecf43ce12c333b15c97f69bf1c3ce59844a91ca0eabe70bd95ac9f3023100d1c08b235ac872043c2677899a0a4c4b09834c3b23d193b8a3a076c00f2016bb40d909b402392ab5a944d3467bdb5a340302047c435bb500673065023100c466bf081faefe4e8a588af6c4cc176911c08782853ea254336a0e64605d64bbee23f9f349b339e9783bdaebd8f6d69002300836986f4e33b4212fc9d92ec97b09b6d5fe3f45a473f6a0c23951bf1456d876059e2e4f6f048ea09d1b9cc7e2133fa20302047c435bb5006730650231009c7afaa886295f28d050a9da77e89473baa88177e1cf3b5a41e740fc2dcf5ae98cba31e6d54cc4a27e9520b11947d89a02307be8daf412ad65fe36ae3d6eff90402380841fdee9dca03c4d14dc77f99c90015917fe78c466e72ff284b7c67f819c780302047c435bb500683066023100d70147acad40f6cd5d9b9703dea18c75b1fcfd61994359acbc76185b95faa1e031a782c634d8e88cfc476635db8350ee023100800298389b4272560364132a15ce28c43800a81f586a5ce0927b69b0c928ce9017eaef6216ffcd430187863bd86a9c600302047c435bb500673065023100f712a19456f40e1c89410180cd88ebf71c8dfcf476dfd1ad65a417dcc0626d941209f4ceabd90af497362ce62772a1a5023071d03cf57e0cc4da5e9e40787848de468e331a420627caecea57bd961b5e44e7d3c2628555ced68ddf372a90dedb5af30302047c435bb500683066023100d57b9c5a814802d4762b84006bcc0d60c5e5f60c7cee0184e3f2ddafedfe342f3af5ddae6eaac68f5df391824391313b023100879b3aa849c533bc7fd93f0e2f3d97e310e79d119477fbfa16d24cd95f2b515550bd137f1ee5b1bfcffd6d89aff26e760302047c435bb5006730650230421a0df54ad220697cf2e841f859377cfb4150f80b1a8e4d249ba5a106204ab7efeaa75526f28627c481875e0ee05f1b023100a3f87d13ec00c765800aecbfa40af3f91bd3d71eef8763a4390cde3f099c3a0e0c0cb2154f7ee60a1101aca67869c1730302047c435bb5006630640230653bd4e92d8cd13025a206ab6d3dca7ded69d19bd06a61f08b51f7492bc228c893f3939f1aefb153ee8c289fa03afed50230722c65edce850219b1fc58b980d789afcecaf6b86d04ae82c9fbdeb9a479ca7b4378fd28517f7342ab36e85fcfdfd93d0302047c435bb500673065023076edf2145be728344a61fc4f4771f029269cbd2f0a255427abc227abccd0869519affc1117105cacedd7ab534f187ac5023100ded6dbea8246ab3f948df3386b56eff13c02b377292446ebe34ed489939ab768cc5677845782d9c804442fbc342def2a0302047c435bb500683066023100e639fb16e67849ade0159751195af3aa6c0bc2bfbca951a28c0f471602cde1cafcae6b7e9ed187a153a691497ae35c2c023100957beb4192bceb74a4f5b065301a593b6468ad2d0cafe3749b2ed3ea5926035380a7b065f409e07009d8da79166fb5550302047c435bb500683066023100f49c8c05072e377c8eaba2b6ec633ec007c072e6faec19a65698d48b46c37b3de47b1b3b5257bff7dca85f4b0ba2d516023100e18b4f761fc84a8a7279b06226cca3394522a78a67526d2a9ba7f7abc50d953f8b284be72f4d4bbaa08ec850cc75760e0302047c435bb500663064023056f0936dfb595a25d4ec0e06f1bbbb28922f30c3c3b35b4e440e734651afb3d085ee606e708c53f98bad818aa3683c5102304338e646c5420cdccc70938d4e1a21a8274f325281f42d8637e16094e328eee97248f008e1bc79b43c53cd1cbe835d810302047c435bb5006730650231009c11c7c74609b1a44a8d9035abf55e8dfa4d481f3b923b2c3be45503d3b0c9694038841f343868e88138bd84711f82fb0230557158b5744d103c1f7e42c69b8901ba88cf54787346276899fde604410b5abc1e62b4cd3d07637ca05c10166c74dbdf0302047c435bb500683066023100e1e3eb5aa8825dc57dc1c409107678e8441fad0284d98ca09fa9ff35e4c045f5cd2f389cd38945c9364fdf0a521a120a023100a309f69f9409deeb796e682d20bfc334fbdc231d1b8656f766a202f9eb0b3713eace71f5cb092d8e70efe715ec30fa070302047c435bb5006730650231009737b075d6d046eb66b93edf3cd7337bbf2481940ce55d010e6fba18582bb9b548f38a271b487a884938bc837e5b21e002302f5480f818244b034424abfa2df6264d838906ee6b5e8150cd94f276272e3eb908ca2e824b0fa3fba0da8c1273c335810302047c435bb500683066023100dc5d7eebea7667e9419b4b70c62e3de3e090cb73a46fa6ca9e7b7fc490eaf32785fedcb6531b53a25c45835164c5f8ce023100c3660166f4928bef556ecd755e64acfc2c65c94338a3427f6751825682a58c7476435752e0bd7983b2074c4c10152f5a0302047c435bb50067306502304ea2e30497a96dd6d33fb718a688cb5f92d06c9d8b0f0df35a9b8ca412ca39e665ad016aefb34ab667480da26931a0cc0231009da95f12c8e0d43fdc90036090332ed0a53fd7f1e57f51fc4be53846ed710aa5947ffd4c0aabe0d836534d0abffc81bf0302047c435bb500673065023100f87a2e2f1dcfe1d96dbdb1578c0bdb030cd99885398a279db9d9accfec7cdafcebc7a1cce0413626599b4f782133867202303bab1738046c726ae94f7da07ee096621c42a6758378b6086652a08c2643b06c48a3e039238a736f42baa31dc61b2ed00302047c435bb500663064023004640f95ce73cfba41b8a2347d042a11708550705c85febeba6ea2d5633fc20e4d7b4952d90647bd2b6d01bbf123451302306add4a9cd4d9607301be09f85c45298954e18e284dfd2bc726da9b860e7055aa6dcb81a9b98590131c0139415838eb110302047c435bb500673065023100acf3be3a16177d7e1c7f0893b54cd44b46324eab5e1d3002bbdac2f48161affe3b0c03f80da7a2685f45fdeeeda87d2502305b7e5222f6fa9829cdf2ff1fd69f646ce35d7d79697249258e094e6603d8a77ab4d11fb8c45402c5e739f7bb8697cd620302047c435bb50066306402305ec16416354acc1f70eb70229aa3c765efadde340de54672ff57768f979d5059520ab55c5049e4c9dff97e081b1ee4dc0230627eb79239fe897d29386e39cb2591108777418e060ac09cd002e8e038eda2cdad29c37725c090e6741275cc1930c9cb0302047c435bb5006830660231008727df37da1bc5f733926961b5e54559e298a6cc66f5e8ad6cae13aa66ce8b274d9621eb77c1fde03b28b3eda8597eac023100ad2eaf00231a132eeb64b5cb2d44b806bd0638d8647bf58dc025d0b7c3a26551e32a3ef601298177091f5fb7033392840302047c435bb50067306502304ca76c6d433ac880ea63f140d63a144b8cdb377996b003ece5a4d842f9d8dc3faa2d2c87badeea342d91671c68ddee6a023100d10739e0070457c4f6af67714c8e0e2626e00dfc7a12deffbf0221717dd08420b1a88b08f30421cf6e8561d9a60310880302047c435bb500673065023100fe7023b84130ec884afb7255d4eaab224e92e84d421c7ad4dd8662d1325dc0f26eb4bce0255e46af39ace40d8db676e0023071d40ef91604097edef534e3f8b52640b68abf0cdba0a1376733f32d67afb455cf942ad7576b513439e6b89a2653363f0302047c435bb500683066023100d58eabc329bed1396a144f28c05ab296cc1561ed3e8ee81e590987b13ca59018c761ab7031df7f8a7ba8f00cf44cde1d023100ee76aa0b0bf4775ca355d073359d51f5dbbb1c6cdbe8f207f17d308bed37a864ddc14e0b0b3ed20b4a967b0f186aeb480302047c435bb500673065023100829a0af0929dcd527cb715ce7343d1809276c91559db3fa6b3c8bc8a12b8f4e0652e73045cdf1b530e5fdeb882eae781023011e6eb88ea6991922ea2d7c63f36655a13b9f5fd10c903f5486f16416caf66ecdded769251e341cb23249946b57df6f00302047c435bb500683066023100910bce02288012763f950eb776cecb014c56f262b3ff67a5619f9aa0950188ac675a0b97eef329a9aabca6bb9cfe7f460231008414d046d94512983e5340909afbeeda5b29519f79a377413ae852e34c376885edfd8c77967fbaa2b40c949919eb720f0302047c435bb5006630640230190a1d82796f1bccb83f7f704adfe6fb6ee4bb3b762a68f93a64f1cf7d0aad0236e0c662735412c0e0aa1287e9722b3c02306b6c318259518dcc547867c1c02902cad4d4a75aabae1ed470a3f0c5e8d43bfee33f02bbb48ae538829c5acfd8fc94ae0302047c435bb5006730650230681191f2ef3da91b160cda0984919705d70f7ca2cdc9a0f69f27c06a2985bbc925c6ecbd7be3315d2536e3efbb9b5a23023100b936c814110ad648f87f24337ee89d2e0b224f72233678191cb6fc91212f7b836c483bd59115f58fc8c78659859fe6470302047c435bb50066306402303a74b416d812f6657026b9a9007ca14b684f83a7e87c1418234fdde9be6d052dc3829e678626b2575fb42c46fa376fe4023016c85dcfc54ec5f50f0997403f4f9282965e00d739bee54bf42aa1f00f74d3a3dfeec4da3de13b2cf23aafe04ab7962d0302047c435bb50066306402301ce83d9ec4de710219ea8f86c32086f373c52c85100ae4f7e4edfaa650905a081f2e18537be390c696472ee369bbf2de023031b2c79c4bcfe3c849c7534c63377ebfb4e08ba071103a2ed4f274bf784149a09678fe871441156b9c5206c5cf9cfadf0302047c435bb500673065023100a96822577ca83ff362740ef37b633472158fabdfd47474bfc9ae509c928c61fa21fe611c301f3f900bcdd847374765d90230023ff08605228c5ae52969755295f4330bc97cea6a42837115ce8bbcf236e30c68359237baee2ffeabe42f64fa0d208a0302047c435bb500673065023100b43ac238023ecd717fa14d0a4d737a1b7fa815214ab51231e4a421f595718da549d93f98765d435fab4cbe4f3aed728d023048d7ec7396d127ec6ca6822c7f1b1ba1be14aa272907def08bc663629bdd7c826a0c1fb4acd3cfca3481c954f0ed3cf90302047c435bb50067306502301aabe5cc380407bf228b32c5f9e72588e2663ebc5d075cb54860782f88829ca2e17369fc8ebc3d98d1201540d282bc73023100e7f67aecdd7c5e3c57045c62dbed79a67e16044cc11515a2c19c280238357202fd96ca1ef718adf1940504199c228f7c0302047c435bb500683066023100a7aebbcf43b591399810f2c40e11cfff8f798a949a8174c5eee0bca2e4f38cb08f745c8ec6e83d636fd7b95b0f62cdcb023100aaba3b6fb0fa628cb04446edcaaaefd4a66cb242549195846c2915bec4b10f19248d28835f925b321d20525bade77c890302047c435bb500673065023100dd0410583bb8e53877b6c4c8f397f94fa2928269d9b688cd78e1069ca8b9b284e03a8d37409116a6d87c4009932405f602306c4cf9e06961191071cd13a94d3a8f60833f547b0c61893376f20c4b686e663368479b655e8d26f2cbd59094fdd2a2550302047c435bb500673065023100e63ae9e74cbadd5216f33b5f19351e7e1ffa9a4ab295bc080e62308cd394bf0ef7e5bb9b55f17dbe85c5b46beaffa3b2023041b49507dc52466f1215604b54105ee3e826daab539ed10e3a93c07d77d791a2cdb200d981f6e4c4aec6b58e62cf8d170302047c435bb50067306502303b8be82885f574334963ff72ff2fb3c642a97342b8ee209c8eec4e0e50cc69c4d0a62b8c9bc06e4431e0b3651b46262a023100f4e4b1acda609bb002f0a24d711d5324b586d9a197ca880af603fc5709ca4304951a75aba738017b5b5da915552caa4c0302047c435bb50067306502306d0401b418bdb95a1cd62509bd5a25fc96f7480fc442fceb426f3e8fcee1e4a7559bb79ea67f9a331de4e3b0cd6102ff023100bddf3081455374079cef268d02c2866edb8acb3dd75761800b01fbe833d65272d775c090db5eac4465fc811c472309ca0302047c435bb5006830660231009c5e95c51deb9dcac413875dd67cbea0488316c90b01ec3e449948221dd1c08e7748628c26648567f6b2366b41c7da81023100e4f161b50207d051c400e0d606152e2e12108ef01c1ec3b03e4f9af18343e994fe55dd0b6be077164b56252f9b0d6a900302047c435bb500673065023100ff866e450a092b6c76a8f840b4c1c5400614ec213def3b95d0ce283eb9924bbbac96f3f5b5bc282191b133fd4d506fe70230235abe7797f2c25154b8ea48c01ec2b6cae8842d60ea4e3d6f514d474946859042cfa948fab6e4461f1dd39a96816adc0302047c435bb50066306402305629ab5f6233da0060ed976f35d45a528ca729fdc74eca95ef6ab47d40fd732c5fd916aca2e6f72e51ebdf7e7fa0471802304d8d372b5aedce105fbbe8b92c86ae38757fa27b5740eb43c2f23e113dfe172635c59f8a16bb2d3d834be4317a08aad10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310084b16408373c80614e7295f8b7f7b58714791745710ce2d4d8df529f9cbe7b7252a5e21b7c20dbb59a997e65bbd4a2290230749980a57fdd10126306007995b22b8b2b044272ab2707e8d3e1cb2ebb4dd8ddf473c4f70b188d07c96b576695c3ce7e0302047c435bb500683066023100848e3a05106949f96b2490642d20fa315df4316131bbfc3006c04f828f75cc7843ac67eb691e1875ed4c2376d3284bd8023100b180c504c5749b85a5581cbb91607f92d5126ed6f7b3668a369a10cd3f74df09177b6dd59e458313062da89ec0418fba0302047c435bb500683066023100f872579be55be429d1c58038567a711169628ff9bb8c2a3be550cc86ba00f601f2e5560f68e995c02a694b0ad1bd550a023100c0693a55172d3e5c4fd5b5d865f432c52874025f6f08a9b7992063340333f8edafab9627c93d516e7904ef9565aca2050302047c435bb500673065023100c54d344161dc4c8130116aa719771c773e8795f668c972f426562d687ffe662bc6e014a5d2fe852735a8fea1d3b84f45023023eb56dad8c8123e6c69090f71a10fca44ec3aa2ccc2fc17b7a1dffeb6a7a9e0fc75b039fdc35f0b8a8f394baf07b4210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028fd09bc0f118df8a6759ba5739c9d20c5a41591d40e9820956e565baf36f038831e1ba3b94a2ce9ccf08e2cd138177f0230156e24e33921c2b97357a3d6d66167ae7597d49c7742f1e54eeb622707638de625253edf3e46ad076b428d44c2c640910302047c435bb500683066023100a3fb5f67ff3cc3514d2c295aa88bf956c182e2a4e10110158bf074b9a2516cd2883cb7e88bef73fabc037727712bfd13023100faa7a50f19a4bef40264c725dc238e6f8d25f94bfc128ac01b2592aa1f8394bebf82cb390ceca74f0498bc2c806e87f20302047c435bb500673065023100efbb61ff8d27f246ad32862a8d40f342247c00465822e89bd73ecc4e69e2d8049a15d4d672c1b4e6e0b895d32512e07d02305e9a35fa4eafea714948fdce0ad8b22d1319e7514f46108418a6525e084a6d28c1fe5b18734685e8e91570af417463420302047c435bb50066306402301d1387bf6eb0d2b5604c2a1fe605760f5a86bce81e3c12e469d2b5ef6f7385ee9ad11b7e317e69a2aa7262e8a64674cc023018c96740d3f90e44be0b9802b27566c031f592040145a9bcd3622abe6819e5cb472ea34aa29b9dbbc2e21cc8c6da18950302047c435bb5006630640230455a8a21bd8c4155925ff4a58afdda222afe971de50006ee444746e6eb835d3b6509b0cf8d16cddaf9282d5eeec3584402306752047d797751bd4f4cad8251f83144ba18449a7a0e7fa5bae111087d180357aa2b18d5be18c78f51e9e8993523707d0302047c435bb500683066023100fd7d4dc666d0a2d7ebf49e16d5f470e882afe37844b8ad12cdaf3af8a5eca5da97ab5aa5bfa999edb999658c5dbd9349023100bcdf1d4502ec62b22dbd15aa44d29a474a1872d80ab077aea004ccf0daa857d0ff89a4c307e90f58ecaaad6fee6f0b4f0302047c435bb5006730650230027da41887f3f2bf5cfeeef4aaea7109848bdf0e6c15b2e21f5471ebaadd9b1f9d3f807649db28367d17c65533f94d2f0231009189eeb5eec603cf98c7dfbf52a63ca94def730987214daebc20b654453cfc9758ce1ccc90221fb97fc066f4f5ebdbff0302047c435bb500663064023038308acc9081c1a71398248aaa8137b3cce49f3da3ac0eea8b869ddea5a3c63318a5bc7bc7c3883422b202ccebc16a60023078403098dd3bb17bdac6f908859ee442d067e67e2d65b1e441ffa1a4d68f0d1769a382390c722ed6d826b8bc671278b30302047c435bb500673065023100fe99b5631b360f3ade73be5bd8ffc44aabcc9e7d3de20760d304c122f41358a035693b4e9e905518133742296d959fdc023070883e16f47f18bf045cd7cd1f838d9637c57a6ecf8ff4265d859ca16f3be613f8938184066fae8bcef6117dcccd0f4d0302047c435bb50067306502310099a04eac1baa7b009b508e1263bfa0734fc666fb2bbe94ab73ccb52cd3e56172791c988c7fdeb928a331c75091107cc20230027a7be2e3642fba394d0fed8ed9a3922e396f66410c61bd32020840dbf0c30c9d04b4391ebfe935527b177c4d58b8b50302047c435bb500683066023100ee53451513b138215efde2e44cb6d444cf8c572e158d71fc0768793f4b169218e891d7d5ed9e1374ec339d323229745b023100e96cbdbf5bebfb9b5679a739dc08fdbd4c0ab1ccbf199f153f0651f70b07873c67a4d0b429505bc1a5fbf6fc0a0ceced0302047c435bb5006830660231009cc93bd3416bdaa9fcaa2150802be982584c062f073759bcd04b2d2c12055df1dbf5bb34b9728aee65731263f7b92f1e02310089817c30011f8e1d9979e192d2fcff9dc0f9fa04c2fc75e1e1aff21990a41e32eed7431947643de68af04dc66d0e187b0302047c435bb500683066023100f855ef44c967c7038c063b7e19cfc67af31288fb8a37979fc42f2d96e18a786a09b4b415fbbc535e449e80e5a781e72302310086a36ab651aec11132c0077eba10560c0e74927d2b89417d0ab77b2e8920648e1345495204b313dabaa17fa389ef6bb50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f100c2cf7a56e00825bff506ecc26a0db4797a0e914aeb2af527ada694b945b07a92fe5aecf967662a8c1f6aafe62068023100ee76e00a290ac8b9e56807f200ab0bec97fc7232cd2da2640b824f0fe553b66b08d31758cda0c661817499c3d54fe6f40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023060812034f66fc5eb9cec5d0b686f15cda84426ac98ba7926d449ed35f8da8d96d3e90b0880c8f828f477b958e35346d8023100df39cd5f65213d7336046a5fa6b16f9f2fa9e64d26f9e6683528b2150b08721fa065da570e6a8fd118a7dee97d34ea7a0302047c435bb500663064023018d74fed1c5d8505d1d0de35731d622af0e5ffda55a32ecd291652d06aa6608ec46cec0e4e2a7b55a28d31558d4998940230601a67597977e49e1caec208b2953a52fabf3aa6dc232d7711b4a20a255282752c8c4cd5c45b1d8bc42b9817e2ec64d90302047c435bb500673065023100940645478b6a847b6ffdb71f08b56d1f2db9261405ca9e347edf7779392b6eed4bf6f06e3fe1ec7f081a6f9caa7046260230552046a1247703605c56ad6ac5c2530f80fa5bc8217c549853c2d48ee94a43324f0dd56fcfcd3e5e42e124e453dcbd060302047c435bb500683066023100c1255fa6226bc105a4a6afbb1ec36bdb6bbb195bfa898b3f1da6aedf4aff53f6c8aa3d8c5ae9085d1689dea01d8eb219023100bb3fae2ea73f3efdd556b8de4bd48e1a19d5c246011fda3c4671e5ecb64f9f47bf8ffe91629dbeb62c13c109078829b30302047c435bb500673065023052c474741b339d9520cf3bf3fded34ed984d5a046bb63ca63f26acebe11b48a88dcd040867db279628a542abe5f71bb6023100ccafbf13883cbf213cde749e003dc9e61f13ba91b7ebca9e27a8d5918dc3ef00b88b858f6e040c53db5aa77d02f353d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302db182133d63e1c5d725c19098f19a838a16db46b1d06ce86fc2805203d92e27b275d7db2c6fc9025d743ba49da4575502306cb6639733255b95623983199bed5b168c29c9cfcb771ba0a416a91118bf2d43941f449bc264fb57f72801bc4a8553710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f33a833b3182bcb3639efdfd99d22c3c6168e6245a354c631f1e5abbdd7da676dbf0bb51a9dd34882b43f5cbaeb2e948023052727c9a25c3deb911399ea4d8a3b09d3c0b1cf6ea845f322e3d30be47fa52a51ac365d1d24a39d584dc84848702f9840302047c435bb50066306402307be3f8a96cd76b1b386bbf8661e8173fbc956f85ea284a107ac6fff836eb61778a8449bfff4a7f2faa0542ed8557ea2002300ca167553d082f7d9f09ad838af5450da32e2cb0bad8c92e969b8cbcfc4f6e231160f22733dbdcc1d5a1c7dabad7e7af0302047c435bb50066306402300c12ca0cfbbc90ca8ef8308fb1fbb02f952eec7b3f9649e5788f907f31a7881bb86c54f2519ac921ae8e26122bec4139023017266bf0fdd1713cd40d393eb730ce86dd644c8f51285b1486305050d72c1755c69d03a43086474f630ba847eca1927c0302047c435bb50066306402304fd53ea79110c50abbf5b81a294c5721c4071a3f61153d64059215bec372c4d0eb73ab2148a440446eeaab0d1517ff360230085b895777467925e3eaa2a50bb2387db36a7844a7921fe0b2a54bdec1dad0021dfc2660051b97b4c66a471477fea17f0302047c435bb50066306402306a71c3ca97ecc554ad98696ad26b7045afe9cc9745f042d2467b8e9790a510284e4fa7ce942f1bbbec9794e93a0a737802300a408eaef1ca5035a058facb8137fabc07f7cff29067a15b8ebe5433bef97c72faa1c45a90ef1e0e8b40eb30adf36bde0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e0a3c3b64572fee29682e71e0a54c7c8da5ed1612a9ef4ed8e01be457485b14d87afec93b9e7564a0ee8f01613e7d93023054b9f31b307f642b2bed11e72b04be7881928a2a25cdfdd7f062c1e3b17df2e0315c806f1b0af02e6d50dd7e6f1925810302047c435bb500673065023100a35b6fce85c70e81fb3ce16387ab603b0ec2bbfaf724d27b06778470da57b79d45818b3f4bd9c3d05789819c6aaa39ce023042787459451d38f10bcae9c9031aa23a8391c08862d0b133c5d4fda013ad9287da6334d3153f69840fb9d531167744b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c96bf7dae4f1bc167928ae0c11d1bb0b48aed4de998914739ef9390551a8ca9082cf1d8f7e8b3133e22ac6c66fa353b023100bd161ada8eb993955d5d511abf3173efb288ddc0a63976ec2f6529b9143381db9959895e79996cc718bddcd90b07d09a0302047c435bb500683066023100b7cbbbae7ef6a86fcaf882c6893f492c5f04ad40b4226bc47925e82a7094638e21dc6abe27a02f1f62728fc50e5b11ce023100ed08a9e48ba1a4e6319c76a4102561dc9d406cd48d9de19621e82a5d6de63b0e66a41c0a7f538e41a8fa94126447e1da0302047c435bb500673065023100ce42d8b1969a38fa462fb34933fd689a3d1b73ced593ea49e72c5d04ca11c99b016fc75e461798b360af1ac67aedf7e302306fe19244d2bd103d8cd897488692c01b7e30a43c22b851b937512aed0ef1807522a4d14c974be538b506f630633cd58c0302047c435bb500663064023025cd88c517f48b4fda3900e87ec65323553d5d2a1dd3450100b3102d111c7e752279bfaf1beaf821ba1541cc9f2e0c1f0230044ce3fb05c9f11c2a27b50ef65559c67d4cbe94a773acda1fff95767c92fbcb60068a3171f498856038e76b17f032710302047c435bb50067306502310095e329c194ebbe544876b1837bbd4c51eae7857b8b046d96d3872fff20c9347c639f5cd84d5c812b6868ab9b374e499e023001f86627828d94d383a070db5a92b60ce1f2343596ab1c5a14358b2f00b537296a5599fbc8d9bbaa2545ee13f17233220302047c435bb500663064023021a4593a116e1f6920b2bdecc84cd3a41a23446492ff5babd14e95c260867e669f9d388b5e668521ea538e03a0ce1d290230338193297cce70c4a21039cb30c924beac8c4dbaee4092f9517caa5abc8f1e6116087df54d6e983306e32d38075e66630302047c435bb50067306502310099043c557cf0d9d0e80a881579413d36f057574f269c7b708eb78f482bb99f75a09d000e40f6e555e8aec05ffe9ec14f02304fc79889bf06f7fd115e14d8fd3e99653366ab011260a66db750f795b44a93a087daba9a75c1af8e29f2e5190ec86f830302047c435bb5006730650230692fb9f170c84d2f1cc7ebdf17c6c737af5d7a98a1eab2e430107fa22ac8d16bba561b99a5af22ccf3166205f5494acb023100d17d7d04f77794318d187cfe7f0c417b4ca4759ca109ee0fde55cfd51dc4d6c8c20cd75ed87ba7bff4b42905c17813e60302047c435bb50066306402306aa9232fe164fe99aa737157d2d7489768a878a060aabca8157e2c22e42ac701e838170c4edd002b1d995e9c2b9784550230647c8f2293021229a857808039515cd3728663c37d8ee248248e59e08f9b794933ce2a5d39660197e02c2cb56d3823b70302047c435bb500673065023100aff6865dc8363f49bfa3047c82cea1f57dc78f6315520fb10adf418f9eb6835bda47949e801546d2c7e9dfc34d24e9fb023038a1b1b47ea92d89f208b273d2ad84fd7acb639ee08a4a720cf490789740549cfe3c9c7ebb768b07fc89788c458b02f10302047c435bb500673065023100af1902bfe415692f46402a0b401ed99b7d5f8e4729b35f559d9b64890e475f637f0ee0fda74e9132507d8650bc5cc91d02302509d47f40b6d6dcdcf13457d9c02daff837095285725d9ad0a3879d8c20f5cdb533921bb125c93ac4a41623ca0cdb510302047c435bb500673065023100f9abdfb2f15775bd257e4f69802d5c4d9e5d38fa1328af76ff25d0cfc81851cdfce259ca51f374ee9cb691e0a9b0fd54023017421380347f59358d33b494eecdbf3adbf5d692a8c8b1bdc2f8a81b5321da296fd889275440da3487e45dfc81007fbb0302047c435bb500683066023100950389c0867fa5e14102f595fc36ada51772b5e0978fd66b47ab5941cef88ea82c614aa49874d9b33692ab307fa8e754023100c7e1befd1b1fa47d98ae999df590b1614d1f5469e429cec0b94fa577bcf7e7703c9c9b6ebdd583e0b52cf1e0d1d0f65e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301d3aa46c286c5d31249a854fef120fcb89da93ea86e1d68ce06ef6d701efaea8814445d92caeed76ce68520e4c172bae0231008f257283353ab13529bb68427e43330fc89a9cb52540260580cc9e33069f233b7c43aaacd6a5c154eaec9b003090a0680302047c435bb50067306502300abcc6c8d5bb291b6b837636235590452dec853c7ba6804bc6288f2830255b7b47507227a59332d1b7a220eec74ca352023100c633465982ae4ce9838b9921acad571adc5d7d552a2e72c33712e596941cd523ebb11c4d841b58dd94c8e9d4723dc85f0302047c435bb50066306402307789d2254d31869f5f4b8ba00181d2acfe97d6e7c84a7ae63a4fcec9159bc6dd98a96dc81284db4d33646fc192281d7c0230671ab1b2b878af95ea2382b7433da2ca5ed89a9e2eea3be2d1f6a9150d819ca5f596c753a26c31f692f032550264d7d90302047c435bb500683066023100e4704079a135dc33fd71120221f7464931f93ee1f7ee24344e98b69ebce3a0b565c1620472cace3224c70a5d88873880023100f1e2699ac36b291f24a1058c7c4a84e0be96bf5a96078dcd6fa9fb7c63d25a88472872dba9258524c25955de98925c390302047c435bb500663064023067ba1de1c18fb1ee7e3c2af1b1444791d2ae2171d35d1cecc530fd5baa5c24f7db3aa215f240689cdb3ad6f77cef818302305b3ee98ff1fd102a5a766092e18cc6a84af0afb7d8d07f989be9a52aebd201b7668b73fb1ad65d5019ff36cebb8111cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074038cb2e9c82825adfd70e26b948c28d6f05cda6ca419e0e383d3fa459358ec0ad78a1b9e40cd2558038ec2747b27a5023100f119dba317b143d933afb5ed0e5b0fe0280be94c7792e632ba1e44e69643daaa1a1c4547edb333037cf5baa98c6574050302047c435bb5006730650231009fef11bf6d25ab38cd647264b87a5a969a4d8ffec6302b3c96be6defe423c3c138a9333c1b3484546f303cda8425f09f023066dddfcb4b241fee47b3965412171a0aec06e228c2448a39f2fd3f8fe73f38f8b2e033b2cd76709412d5f4bd6dcdae810302047c435bb5006630640230124bf373c51655ff696aa87738ad80035f2cc74fc3906b49d184b8137df13737509313f3c9bf59aec25082932e05f76902301a6141f307efbcb01f98b4eb213b7d05a7adbb4c6976c32efeb8d27f383d958d5b38581ce01cef2ce36f5eae0dbc28d40302047c435bb500683066023100d04c70496756e5968ca3f5fd135846913b97975664a675e551fc61a19aef8b5f79e0622e636c536fae3015e49d5b7bac023100b40004862dd9a4076dac6312ff51aed021680a27aad14c45dd8c02c3495c8cf0c3a59fd8659c6e53de9468762ffa6ef40302047c435bb500683066023100ad4efb3ba62ba444235652ee13cb8d31edac0c9cfeb3d0f533448d3017a2f17266b428759c0674d9f067ae51413b06e3023100d3e5199029fcd8e75bf22d0e5105a88cff6ee4e0a9c9125bca856b79484def5978cf27e478077b074ffbbaae292bccb60302047c435bb5006830660231008555d04a523ebd1f53e27d2c05046cef666560b35d5893f19b16035ee8b8d2bcf309bb8c17f9645e3147d5bd9b6069bf023100ed69abdd495881e7c5ff10700d0199dd3983d26c4bf90bf7498156e29be04603a3d599de7a94c9d3abcccb38da749fcb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dc460e12d636879d8ef430bbed560dfa13689602bf71c4865d2d0173f711d4697d173e846bf788d606850707e7cb6621023071cf5885584a11fc4e737387f09e34eed99783f31a6e83f4fca6dfda56d96a62e388343d980bf75231dff60fe8c891f50302047c435bb500673065023072ef0a26180804b20b17178fed89ac057176ca3e9807b87a49dd3b6c2ea61d9ad53a8afafba181874589a6ada9527fc5023100a5a15f6072311c7c4473e19a4bb10baa4e47c28fa953b5e7bf3434d68def49642a402c0f144b853958aa9499c0d68fd70302047c435bb500673065023042cb87917c02119b74019c3b688b4dba023731c1cf740ca605a9e66b9e2a19c80be43e6283075b2a5f86297ed6f67683023100ec40c031fcd42009d54a442d3b961c6c893df1e723b424d5e28fadfeab225c659ce70e7d31d4b5a3d0e11d7daed4749a0302047c435bb500673065023003f0f6e579d006c866fceb3d94e8bf0858e20bfbc211a2321e9559851f6e4541a5bdec67df0ced72373341c08709c654023100e12d06cab8a2117ae7bced3f7953e07a24ee7f974173414978c0851b091c33311004043d28186f66e49eb0c737f56e850302047c435bb500663064023024bcf65fcfcfb5b71f67d9667cb3df585c3a84c617043364229a814547332cd18fe44456d6052ad2d32ed7a8e9da662202307ec8f940f314292997568ebb2191d3a740f9b90e58550091221671d9b27caf60b39c9279a9096bfeae3a7bba1227a8b80302047c435bb50066306402301d688ef4eacdc58cc9b1773d59789402c9a70831c5bc7d1b3e29645e75cb02b5c2505ab7bc25deedfa8d79fcf1aab61a023034f5caee643ecf563f362b231b1441c660cf9b505f1e223145166144470bc8a76ab145a3dc453f36e8738aa8ef7b480e0302047c435bb500663064023062080de498c3448533d9cad44b423ef5c068e3b6c61295244ddc5d6f3021fcfaf364c875d749d1e28ba64cc1dfef4a5902304e27507792d3f1160f4913869799013e8d05a7bfe9d9a14f354df2fd3ea92917e6478adca4bf2d61f95f4837627213370302047c435bb500683066023100c8491224790cedc27773e71f9a1d3790c84432dc7d31eadd72ae8486cc048bb4348c8cc6385c92f4ab31b8e7af23bad2023100e871a26fc38094f4e801778904577df4da10b6253486c2a0612d5b60ac9ee3f248ea1cb3e56bc5254d2bf860436a98140302047c435bb500683066023100878be33ad984b796aecb0b154dec2f5b5ec115e9d7ae174ed799bf36eca48d613990e83260f7ae79311c268116951f4c0231008874ab93b9891251a7893e300cf76c7c456d4daf702d145a6d8608a4cf2b2104a30f012272bd987755c5c385c2d332760302047c435bb50066306402303fcb2d0c23ded89e763b46252750c588cf01deb3c37f767a59e0033f538ade6d00077ac9f8e8a4125b747de081644cd902307eb2516babdd0a2defe629eef71a975b0d1c31c6edde3c0934df9d16675be36ec5405a8e51ca20f9e0dae7cf0b2ad53e0302047c435bb500683066023100cffcebde7986ee3bdf2d81e87fbf836ae8aa664dbf9bf4ac88c40a5b730d097ea6e256dff9fd508b3147a4cae66e18db023100d9773bf4b8c16727920fcda281e3ec13f6605db5db8f7a2952abfb91de62614574634804f96b7176017cd1ba4aa272830302047c435bb500663064023011cb171371d4970dffc3e5b7d1dc9e234468fc8dd77f0bf54ce7c343849114bfe4a92cc0935efe53570c77cb4c9c6b0c023006be0fe0aa1b1789fec01846b2d68951f183f81a81c3c63132c6621d4cb4bc018cab039027f9db9fa03bfdb792a3265c0302047c435bb500673065023100b81f0370fc5c3b73bee831a163905c0c1097f3a0346f688716d9c1ef88d6908329c262c08325784a979f2c29d63e61100230152337358cbd08a1e740047c8eb7ae817f32ab7f659788a053cba06acad9fda75c9e6f42fdda40ffa6b445bdaa6d4cb00302047c435bb5006830660231009d4262f29f8386d82d51e8c8071db9976080e98d09ed07cee328683dbb74f5ef16cab2f66d6d0519df6f84a68855704f023100b10941a7a7a50267cb576a2f04c9c53c2c67c0679732fe7057e8c2620d8a947b1e4522e20adfe3e3f022b64ac345de9f0302047c435bb50066306402303137febf400ef68d2d70bff0560c3fd6a376287aa5f107754c4f0bfc60d43dc629b8621c8608edebba64edef04d8c12c02301d6f0bd6d3c5c31e26f5c64abc08c2b3650285046d4d9a64f9b529bb473bda4952405fdf9adeacfba6a1cfa52656eb120302047c435bb500683066023100c027f6f0c85dfbbe5ab297e00e25e9c8387348d068d63ba863f6c6f1311c1205cf507ec7ab73313847c860e8741704ed023100d3f40912d4c86ed6662b791481664cd994dc91ad392ab0f43cb0ed30d7eeff8539eec44bf891979eb35178fbad16c22c0302047c435bb500683066023100ea6bd71fb028f05562cbe934a8d638d6146d2c47a74ecf3e08ac024f651339854658916235ddb9af7756caa604008fb3023100b218a882ab878278081985be0a993855eca57e60a039d459eaff59c91467051f7a344be1cddc403cfd4968835f61d2a70302047c435bb5006730650231008b070f5c27ffa0264d650c988545cf0d4254502228e515f598fea73eefe44aa33dd969d82a7a7f57820750b755bd12ad023030e23b30d5b3009e8de8f1450d769e74d0825ce3f6a0f176e1b1f731f42a7d8e4fac181af0e28b36fde123c60668e91e0302047c435bb500663064023009b34999e4ff52192e9d2dcb48bde0d14da0de0c7c44826e92f687fdbea7192f0ba53451b6519e5b7a30f3550fb93b4e0230266e54c00ea95fcaa1b751ca9fd3ef8fa4555109fc673adccddab63be90aaedc396ebf19e2962536cf9ad55bf28491de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300103715abce7fdedf5f0e27f5c7e2cc8ab349b4c1da4d3c0d3457851338b464d3ec3606e83499463c72673b0406e164b023078cbe0cd35e4bc0b4da4fdfb6d5969bc793e0d3c76ba708282b06a3775132c62cd99bacba5804f64517b247ed7b1cdd80302047c435bb500673065023100dc8e2c5b8b77c5a7cb9a04bb71d4fe4096554653546427fc2fa296a3589b6d44784a4b5c0f66babddf53c7b5bcd74d6a02304ef0754be9d8993248158e53631121bba88f74fb3b98110c6782f7d014bb45b1a06a5fca84835c4176f77524744b7dc20302047c435bb500683066023100e456e990f17b72b9c9d56515de3697aa7c5761d63c0d3c76f0bb05f501fc3da430595227ddc8d4de1ef1d4555bd8374c023100e188362a8a2ed74cef8097b1cd21f3289e2b41ad49372a9108f70089931485fbe1ea5bd78f5231ca2ca274b69641c9e50302047c435bb500673065023054f63e60d7f1a14803de2da1fc09e8445ae59e1958218360d7b1fe06706f36f3a33b541149cb77490581781f15f1ce0c023100b719785e9e4d0aa036df374ae29429b06ab73aff218595e98e07dcd0d4302858085895e530aa3a16db16631777e342900302047c435bb50067306502300d9410a350ae694da76e7058441bafc51270342aaf85449d859676bce23e924731326e611ecbbea36f66b80af91ed853023100ec4c5f038dd638bb8e132f4415135a2c594323f2e579cc4568ebf954912c2f2ce48fc7003aefbbe90faf4f421b6af3c40302047c435bb500673065023100a31bfe3ef08ac3acfaea8d169dd6ff0b548bcbb7a50b6f6a473c588e5b8a64cfa8decbf0bf517f77c8df424a9e444efa02302616981aa35f1f55c3aee66523e20c5f42cb5f26f1b4b20fb0011c632680537a79a96131647fed1d51458428b703473f0302047c435bb50067306502300bec8600cc30273708c6e7a6d43bd5c77497d4bfa154ccac00ce22e8ec2108f67c13c36905fdfe8793b3c274a8ecb15e023100c2a6453d3c896ef2b00b32089074ac5c5f0352db26b221c001e18bcb8f50336b4370fb5b8c833c5cd613d035054b043a0302047c435bb500673065023100a46380888d3c0c9e0ac6ab4a28e20a86cf54d3f7cb929c89b0336ec29c3149fc07ccb39cbc76292b801d001b35a3b95202307e4270ae5dd69fb9483355654cc07643851d19169854233f8670609a0776b04c4ec05f21afd0c22305e74a9044e7e14b0302047c435bb500673065023100c146187e5983c9c4a7ae463b4df3ef27605d7e7de1bd01b8e4322f6a726d2438279a3289815fd8ba329cb7c77aee950d02303350d34dc8658a70a4f815777c5d5c5f1048741ce31f9fbee7e33577f82eeb9c21994fe18f2381f951b9907a698a5b210302047c435bb500683066023100cbd99be38ec4c0fe6f2927e56e9baa275e975a41a7fe94a4d8a91adfbe9cfd2ab6799c78f4d38fae0db77f1328bdcdd4023100e51d874ba4ea25c90879dd41347c3c62fc55248ea5d1bf5b46e369226f2f05da7642f7c70bf144af9bc9c7f3cdd91bcc0302047c435bb500673065023100887ac77e42cffb36698fe55362a87d0d805195e2e979c487448e1fa218416581270470b73aa050d0640ace3c31fe9354023012ca4ed123de176200a038a4df3cd4aaeccbaf97bf07fab7b9cd93acff304f64d2a98a2694f72e95490d49c24e0adf030302047c435bb50067306502310083811864ba8b24c0847090fc7b9b940489eb3a032e49bcc7cbc51171f4c55c7c3499c9d35d52663ab3bbff7b809d135d02305e58f76ac53cda73545e9fd427aaefa293d8a2cd0d7687f7245d026c6378f578b202ea3b1fab188a39979e669ca0f9690302047c435bb50067306502310084373f6ea4c690bc18bf45210e9d4d48e543f5defed3cf395754244299ad211940f8ea06ac1f2fdc093724179ca0b0e0023010d943f8713de10eec4756834bc703a6e42419fc1713c243380dbc37a061b726d2bc0ed40d69540aeb84e21fb60809500302047c435bb500673065023100d18fa9eb8fa2f7b4a3561da697c3b72574be18196af0ad9f43036cd842134ecf8b6e1e79c80c3a26eed465d1a5a3c8a802300e54be183f633fcd676ffd86d0cc67d6406577794d9dd937b3c6d291c4a88c7eff52f38879cef55297af06e56dd9b8ad0302047c435bb5006830660231008b804effdfbe8c88050aec22030c68bdde6f49a06463e0489c7310f4b861ce4319eecb715d8f2c71598392daf8109649023100bfe3dfad695e9281d1a0f9439b00db36280d7c17b17192bf5c2d3886512c841ac339b09053157116dc6a6e1f0957f4300302047c435bb50067306502302534ba42a135fec34ddfb1fc85174105ed8512c61d71feecc0c3ef5608c6680b9066f6826c6e6c5ed33807deb237099d023100863822944a1c3fca95b957f7cd95057327e88d621c5c5c0f3794d6f6d2a906f504458f2508a104bd0c8bc587f3ebeb750302047c435bb500673065023100d32e67ef97ef0980d2bc32775a59175014347c7f29d9f81fbfaef71f0792c5611cec04cd5a48ffc3f815c1a9a8cf86170230487652c7a708f28a77da487a3062b234c98d7fded963d18d6603c03e23d3b6644ab97a1044862e0407cdd68540b94e5b0302047c435bb500673065023100be9e972a634c588753c8a5dc48a2291b3d1c7e9d6cde5b64fecbfb7a8f522bdc7c17952352f69a1364d88fc0068c514b02300c20a61270cff680e425f619817bf4be9410c6b18c7e6233266ba36868d77f138a36fa3372900a92efe8668c243c62a70302047c435bb5006730650231008117ec08aaf9534818b92adf04bc0458e9a3f1e2500e59588253fe62a927be6a9fb6b3ee5f666ecabd12277a4b3d834c0230614c9f5fdbc2bfe9ac505cea0774f9e7d8c65ab7769e1111e4cff5320b627c662f654eb0f01b6217e409c64f16917f410302047c435bb500683066023100dd51643b4c81dd04dd96901efaf200491ce4cc206f9b0fca5e368bef615495b37684fc5506976809472e42b24770b66d023100b420c0dc89e0bb6938fef9d3594cb7107db199a1538537939bf7609948711b1c97ee79c0340ba628bd27dcad214a50a90302047c435bb5006830660231008a33ecb45b94e0bb0eaf58f1f7b7485935ece654e4599c110023ee4d60b9f33c43d7cfbfa10be4aedb123a4e3e0c24a7023100e0e40695a66231c98aee2b71bd63fd0b6a8dc104d00c1ec40f6afa0fca0358dc42f0110d9de4c7f64af345bb1bb0b94f0302047c435bb50066306402305a2d282fae63f26d7c29ccbd97a3f237896ee77a565f09c2d4d88d58ea751ca636701d7e41dbc0469dab09ec2217c1b302304e3881c7a4985f8c00db95eaeb9a236053c6e51f16ae59a1f34cb1665ed4501de5390067743e9687eb769047b80478310302047c435bb500683066023100ec1b02b25d1e859a1877e8c8849ef41152261868463e1df652fc513ccacd768d37c22863daadf61090825e4a7d6f740f023100bae15588da73b8695a9da399bd3c2f9eedc9ab1646cbb415576e407eb2c816220fbe4c34f491868edcc0ecb0a34c16550302047c435bb50067306502310084ac83ddfb885748ef395984f40f00d6c0a2e191b6a6c82ceaf1c53a2cc66e9611ee3a5d16050e96812e9bcfc47042fb0230286a6e5cd924f5514fe06fc17b148e702ea5a2c2d78bcb4e94d35407b539becbd67381fa5a69e7c48c9d8d39af9876680302047c435bb500673065023100a2d7f164d4654c0a2b9cb81a9409f76f5e664e4665408d341aeb535e68cbe9ff93aa10c1a897f058c391803e692317790230383faa0748f2af5229242596f092ff4990de1edc09cc66b26d917a17d70e7c2f177a6f505c35fa6f6252f54bca581ab40302047c435bb500663064023071f76e985a7c3b705ccd398fcd0bcab28f520753a8656053765eb3c0bc6a15ebcc02fd364c38b48faec8fc58f3a981370230796439003815644764193542aa73ea3d885cbf5f3ef567e9fc165ae66681e7e3961a6b11be03b3eb23c7fa4d49ea30350302047c435bb500683066023100c5bf1301827af465594b4df3fa278ce9f9711fb4df0eaf6a5d7bd9f3231ec10073f6a5e0f3e7a116d3564faa6e60a325023100bb6ba56e050712cd6626f660feb1e1ee13989ae41ebb5e18295dad6bd41f1111cd1849570026fa4f6eee973924e923b40302047c435bb50067306502301ddd462d2982ea3ab92614ff2d3c81275962530c5d8cf42841a0673c963df609256d776a0ae7904e0f3c4d0c1c680c52023100c7e3d958ef62a487d8f24c66c0db198e0ebf890c32eec02ff3baf03e34b814c7436a436eb6051dd146e3ed8bcb228fb10302047c435bb50066306402305064c83bc72edc0b80c08cf09d7d1b74377e89a472ee16048a6aef03ec95959c9000739abe21c306fa786189a04a360c023055aa88ba075d5d6671786ab4db3c5c66f6bebd1c1fd7a1b181232893651048cb236d5dbf89653d1715200df09cf84ce20302047c435bb500673065023100b4d4993a257ae015d78782f63972fc1c2d14dd00a89ecd4c0c39db0035fe9f356318e0683b7fac39b68a60fb5b87b4d40230011fb735b1e50d14e806e9bfaf196f6548e45b2c29ef1e00f0f6952c8c4f05aa52764748b643205cb0d9aae2447a34570302047c435bb500673065023100fae22df379ee7d81c720afd98645499491033b3d9f61e06df7e9266ae975b3006c3c22fbcf2ec6db9146f1f6e6611e03023057a5e61fd3ae68b95ae9dc5a605e964045cc39f9a6d3e99497f3c7f445e2da1d8e3c1c3c07a7f2506371af991f7c086e0302047c435bb50066306402307aed611ba2bc0f0b0bd4fce644ad167f5ed18f88a484c791ea5b05741106326321350ab8beed2e13f4ee400679772df602300ad5464cf340db9b4dfb65937649e5cd15e18786c00bfc24c0f4480922502db257fc3d855a718b9e3887143556fa7f0b0302047c435bb500673065023037b1116f9a7cb3fff7e842aaee283baaf63cc7d002fbab8ca0d2088f8cca751dba66a45d2b6832c02ba7a4498a585c8902310082974c1ef039bc5c557cd451c5a4258f7a0faf4fdb81ee54699a749bb14d2ff7711a101a7f09c7809ca38f935002434d0302047c435bb50067306502306c3841f2fc0dcb3ca67944d33c0faaaa8738835039629636c3505e1a60bf10c8fb97bde74b18248102aa4e0709ed9292023100ee95d7c121fe49268312f86a6e983ca37da0949d9dc2380763e3eb8859b30186c99ab898745de78b6c2e77f10577810e0302047c435bb50067306502305c5b0f0267f4688966f70f87b4ea65b5e3a257e217aecf0329cd15c1796d4bd08bc4bce8f9ec149922eeae7e30a220d9023100b552c6d40f5a3ebe2edc03e58ac8fccd219dc5e9a4bd905ccec5a395cf03f501091f247b44f52808b42679f8483a3b220302047c435bb50067306502302104a3f43b6e53b0145a24c44deec7cb06ce644298ec0de0dd34b42850d684608ab34b7e031c0c9d1490b170582eda2a023100fdd0edc2ccb1885009dd65ba8cb01514f3482698b17afc07e9ceb7e0b864108236bea16517db661a5c3597971ff3edcc0302047c435bb50067306502302ab41abab591e09498e770fb8c05223e74a4d97ef2afa57b698cb978b385801627038e7dcaa456bedc6be5acbbd986c6023100f00fa8f5ca76ffaf69dbb904d1c96162614a361f52ab17f5a5e3a00af879187d0f87f118f97b9611d69c28295e3f01b20302047c435bb5006630640230271fdb9ea7b5a60d106b954fd6ac6bc6579543093974f2a685abaca594378b44598498936bbd9cd8feb4ae8ed17ea17d02300ca1fcc57e90cfeb35e0396a517a87821304b086181bfde1f3ececc4c412c2d7a64ec48d5b66f52d9deecbaea05bcfd30302047c435bb500673065023008e015ae95217fca2064cee4b698cd88dac3bfb830491bebcd81ec8d3d3035835237c08b815bdcef92d6abf68f8c0726023100d941b0d440fa0f8a230c4015e2a739eadd382cf6cf3b84390e00f714171d613f741a52d59a7e99caf9d757fed4582acc0302047c435bb50067306502310096d244405789e1adc3d45394a08195912c0603f035173acd46b5a6147076dac89fea75bb096afbfe64690df7b1e995b6023033eeec137be5fbcfe3c906c8fee6006b12abc42c668e1dbb610d9bcf561678c881807e442952ac398757e7ec0aa7b2d80302047c435bb500663064023022d7b377c4d9a2b046a2d2bbe91bf16b826009223cb937129303e9b0e41a0c00431df401af9ce3ba50865ffb07a8d4e40230503dee462f6c6a491298a300e6b6e158310d4147ab1655f135c738cbbdd9a8482b1ea3d19349ddcf2ba6746f5fa094090302047c435bb500673065023100b7ae976e9fd005556801082c9124f8c20b107250002622c2ac691226885b0945528e0e353ad021da824106fdd8dae929023047a7d938742cb1dfef625dd91bd11f90a1b540c7b8628b99c3c33e6a7da3e6ea278163d53a414187cbfb2061b8dbf23b0302047c435bb500673065023100d545cfb2abb8023ce49e5b00c363fbf57cd19d3185827c548c00f5f56bfc1437aa99a7639d0288e56645e16d7d1188ba02304e29e54398a2ce71eaccafbab47dca0bf91076b4471bc31c350522160018b0070b6cefb933b4648ed247eb6b96066f780302047c435bb500673065023100cbf4b2bb72eb0b8944a4e572b89e9356b0e48c807a2511b2186ad63ae12a91cf164b782d7449ab3a5278f4b4e4cb1d7d02305edf3baed3c48c067636e0aea783560f12dc46eea4290f39b55689e5de9c04dca0d5c9052791799eee2b72711fb5288d0302047c435bb500683066023100cf70c3e21de0072511f0cc1614471a3dca1429f395b2269e0350d7057ca95b2e1da9b3d56f13286bf87c5f943f39cb67023100db6460b64f04a15588365ab8ec8bace3b0fcd83bc5ec1bca5e3ecf1181618e179e013630df729a9f9dc49f036128c87d0302047c435bb50066306402302857e880b30a19f5bd0886853d6cd5e4a7033ed1602b77b8e4a0da60918c01e679d638d81120a8ac09a5c137c971cb080230613ffaa3e868d6970a2b845c99b51738700e3b76d270cbba1f726ea2f4f76582ff01516c0ded672556895bc21f0eaafb0302047c435bb5006730650231008638ab6140952818ec49b985d93bc1e589fd3cf511409c84f6b581f4f8bd9b973f5f1a5943f181c84154c1a11f0925cc0230326f4463e017fa1e7bf67a23a04494163ee6af61c1acf91fee87a9698ac0e134d83398bd372f9f2e9eca619452f69b9f0302047c435bb5006730650231008c9858c763d87cc0e298988dbc9241eb2f30082198e2af134fe74ba36523afb69521d8431e24b6fb34239e0652b1f8960230169c38fd4fe34bb9614d734ecd07020f348e486cc50902fcc090a0f2b3ab0e71e8681f3a4647abec6d79da597f76ffb50302047c435bb50067306502302249cf51477cc36c6f105d15ceb95f6cef5c45aa7301e293feaa3b36cdf096bf95ed97a368f6bdccc24d7103408542b3023100ab5e0b7c7d19df736811b3dfe3575415d64876360c09d29460b682a52da48afae225e41a3100d966472cb7ddfa777a410302047c435bb500683066023100ffdae1ba83fc3150d02f099bdafca272db106f8a61e5cef0f401ed022ff76fc4da8c604717a1b0b68bca78430304a3f20231008394f6aa079b2873e09df5b385e46ac3bc2ba079f180eb8937c108915a4e283e056b82c1d179964629876747c5064c5c0302047c435bb50067306502310093731d1ae907a0e53abffedf590536e98618f302383a3a862dd3d60499d1de1c81bfb099d73194d634e4b901cff70b2202307ec1dc8c6f5315f2c15434c82197e22d136c51a2fc32c486cf083da8d2af640ab7f77eae6392372c612088f4ff51b0cb0302047c435bb50067306502303e6995a90df3d3ce6bd8b4f11f37100597f80734eac75670b8a9204896576c2059d42c54e3bfb9a9cf070366d2e24730023100b3cff97ca76fe571af19dc8fb260d3c580ee0408f0781dbc242f5a6e8631da06506772f364674737ca2d9de68e78f29b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0ddfe5763de3ebfbc1311436b21c198603131de4a58368deefbfbf2d3bf256f6f3906ec4ecdb1759b449907fa68cdfa023100a58123543f6b3160b497630ef37cc5ee19f31e9e18cf0fd1d84107ff9c90557d62b1e539819eceebb285b262ee5edc9d0302047c435bb500673065023021bb36d121d8ca64707648c1514a2878eece89ec29137e8f08fff4c5055dfd4baa4a8307387d7de65c775f2fd1e2a1370231008e51dccb96a0f676638125b6023ff7e74707f6f6591a2ba65f92efbb11241e02d44a4f6b49f855eea8302a5888f9e4860302047c435bb50067306502306840d016a87c0400c21958a49438c70b9c2f7651c7bb70c236f6a2fcfa9bb5bd2aeb95a8811e4834d382bdb888eb898902310081e661fd150d2ef8185fb557a97225f76a4022e4752d61b82b53e2d00df5f2cd9cadd5ae11957eabaf60434a0391a36c0302047c435bb50067306502310083f784dc5edbc9660987f21edecb839af20ce44a84f31e49c4fd40f510f998ffdbd6ce0e0468aae79123f2bfbc3d943f0230570b66b30500f37b45d15380009b63d0213886bc0f6d8331bc5126166159d5a7970a7afd76b298d824173ee0a2123b440302047c435bb500683066023100f50b2719e8e2a0b83017e1c2f14d9e62771d0633a91e847571c9b48cbb80052088541420773cd6e6a8533cd87bf58f75023100c096e3109f33300b58dafbe9730f3aa078beba45032ca8bf78a3507063369194facc5fa6f58167e4088542c468240fde0302047c435bb50067306502307e4c8277691f0a100103bac40abedc75039815ca4a23e307f3176d9c5dc7394c2d73de533158be54b4c31ec34ea5f854023100d8193bab94a755e569caf1ddbee194a448b85df284722439f78e136790f24001f1ab6751daa1ac4b558a194e9ccd92e30302047c435bb5006730650230282badee48f9d558961dc8e24ca7bf802e192241120057f3828220edf4cafa1aaf6549e7b9feb0c4c48ca8c1b6d49d94023100e23b96649f6c9fbd4990042921cff2185f903620d8e24fff320ef80faa51fa14cc80973e870a407f3aa255df6358a29f0302047c435bb50067306502302ba84cd2beb58a919f8b72b7f8e9acae445b99c26ee33c3d4be18d0f6e86cb3311ee9f196cbf35d9a891e8978368dc03023100fb9e4da437341e35b5c1b2ce5e7daafcb1dfa69291051c50d6355faa1d313fc16b112a884470eb5ed9e2c5d4a511875f0302047c435bb500683066023100954da8a10a273c90fdc85160c14a8ea05a9c537550c7cb4313c9d2f51cfd4ff2f9898b85b52ca23e138c545877ec3a50023100c719181f749f25c71ba36d5dd4fdcba27490de0bdf738bd95a1babdfca013811c8ef820b2a1827e5a8d94365b4bbd2cd0302047c435bb500673065023063370ed63c0d6b1c2e3378a809c09febc6d3bf9bf26697a3332f72835c38f228c4d100dd8c59c667f3f8fa503046bfb4023100c36823ff3c32c5b1beef7f332adfa1c9322f51b9424df53beda609140395f360959247f04094db546a204383d3a105ce0302047c435bb500683066023100c9581053ebd6801e6f09298231758a54a67b39bd92d2fbbafb254a8b6c1f271e264a6adf34b8681e7c4bfe9ae45b3a2c023100a68dfe1b764a83c090b25adf66893615bd0bbe87f9019a48a4991d2f94c4942fc1f35a972044d8d84bfe42456d4be2ac0302047c435bb50067306502302218bf35a4a04f8f5f58226c877a2d6d2f6eeba7361445d316e570e7238054c4738e137013601187b19eae87b990605b0231008f069b5811c1e79816361e596a0938a6cced07760b331ea188c1e1cdae932ce2588a8960960cde31e7b104b81ac99b220302047c435bb500683066023100dcb9c6df7168e4005a6e459705ae6d1ffa79f7a1d34492f2d5c908c09a140b4d32bb65c0f95f2d92a4f59974651b4724023100ae98d840beb046fa30d98085dfd13c8fd5802163a67efbfbd4a97f9e92a86e7bd0cfe3879f03af20e96759fc495f7b410302047c435bb500683066023100833e8ac7bc82dd0c56569eee49932a7f682dfa79e1cc1c38d032a4c894610b1be4d4df89a4b7c893e8964b5c2ce56def0231008e425bb4c00be899d2e651c72d6a775fd24c618419fea589e5b261f8227992037c7c19d5d66582419615d72ab14d3fe80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008f805c4b31725b65fe09c68aa39a2c094251de15b738adb7c44da1d9279cc9a0e172a161195925a0629275f931921aae023100f082e95ff3b4c26631d679d878267374061f1a59f23a1f2f6ed0accb7be068d4af6c1a18326cd0c8053084df137fd1730302047c435bb500673065023072f6a151757ec7304b312d1d3f5e47b8a69f13d3dffcad464099be2158266d51220b2c28903968cb2d2481f4055bcb2102310098c4efd984025a730ca9ea125b8a31a72b54b822fa67ba571053f65a2b499e2c7f0d607b503450d78479ec56060ba8920302047c435bb500683066023100fbeb145346cdbd43eda4b1360a890f5e83fb26419e59694dc795965a0b36aa6263b34b0f7c513c766688bb954e2362e5023100f18551f02f173123616ecc8f61a84064d78d6ac341ef14f486e51bafadb0cb7726a6e32399a8857c9dbf84a6c1d4bc250302047c435bb500653063022f5b35581aa8e0fd218f1981c572d4a797f69535d585cf59751dcef7967b598ec3df50c5dddac5ccec7c8b7565e3678302300826b1a89882badc3da3301560fa1d9ce8a97336c41f3a5fd356a5e56577756095d177a2ef583f8d41b730c7b0b0396c0302047c435bb500663064023012f1d172a232e9a5eb739bfde5a77337664e532b374dd50de5f6ac4ec95f44fbf3e99b6d33a07ed6ffe51e170bf7bda1023074f699494aeab5cec22b5c46fa3d43273932b0e4d61a61cbdb6cc65f0586083c56d503e5139e98e0743a29d4d397cd020302047c435bb500683066023100d592f042f16633260eafcc0b7cd511208378aa5b72963cd094350c2046671a1dc51748a0a88b1e64d67bcba691b050d2023100d2b291d610af10aa100dcab78b6731a4ca95d7c4344bb48f9de2092d2bbac62867daff62d552f8566f8b80b19ba51aff0302047c435bb500663064023027e0da3226560ac8a3845987e81efbe65f5410a45f52b00b3be5ab47fbf5c20e07a76422b58aed6d0212d50c6c4615f8023031425414fca09e1693eede3122654ee5511a5e7311d34ae862070d9c9a55601dbf92a52af8848959c2f3650957d2d06d0302047c435bb50066306402303046c1b0b83e5e07aa671ccb62a9319df6e52accabc90b117e81cd47ab57011bb08903bd38e24cd68abed6de819e3fa50230216a50ea0be7bc9a9132b534a478ceb7368c1bb0e67554b791765022eff0fc2c1c0752fc979379a3c5a98350861e058e0302047c435bb5006730650231008b1230aa3f33ec810c6f6da75ba40389d288f56d5323a69fbb03205fa59a95b4a07fd7084fb22a9a98d92fbe2e815b05023039d9a8130b12925a58cb52705f2258e792564e996093313cdd423ee71815a669783a1ec547976786331f7e6ec99acc660302047c435bb50066306402301e5358b12083e17706f492d3b0c3d8ab8765d664a68160ac5b89a037818ddf2546a8b580c46b27b9346ca80ed5f2459702302dac83c7cff264489d2e545387448bfdddea4ddf80954eb2430d2ca4e40e4d6657d9647a5c7a20e24c1758c50f868ec00302047c435bb500683066023100d01333266191c3b65ca769d8e89219cdcf9832d3e6324dc5e4d19bf22efb8db6971712c4296015a6367508dd0620593a023100fe5c7d35ab6652a142a60cb01b6a4be49dc44b003d775479b0e31d80612332005610b6dac3a0a57984a5477029f05b170302047c435bb50066306402300c7567db4b952c4c2ff0825823f3d19c711cd128dbe84bb4720f75fcab8bbcae701df331d89aa330da239397cbe04d8b02304d3d66e014fb88a2cf468c653a67096cca5017c435b835435682410b7df558dfa3b7c133c20aab0857a8f640af5d94270302047c435bb500673065023100b332ec4adb101a6255ff9a9c9ea783aa5871a684598b7428a1dbf9db963e76b5d6998acdd03fda3a1859d351e332b57f023058f58c358efe7ace07fa07ea3c9078b3c4188b6ccb5facc89065329c0c3a48d08511b516919e627a5eef817d381c9f500302047c435bb500683066023100ddef624cba1a7e544e9622fddd25049268f7bd3ce20425a1feb07efd279959e407b42cfd534b85f1b48d0e9e37a104b7023100b146863a908e0982afac0cfdfa46008c77473adc9384b39702228a952d21d7431e5b5c353ab2d29c6d1af943bf348d030302047c435bb5006730650230366abdb8ec355f073cd3324c368481eb7b14fe1af0db4b793952dbcb2d6967d0a3b090643a28e64ab5c2b58069a935b5023100dca79cb51fe1ea50fe35e5cd52a105092faad7e8b34df3ec3aabf3f87c7ff3f12b99bcb9c8e24ee19ac0b7c4850f4f290302047c435bb50068306602310083aff83ae7994af376b5c491653f11de22efbfe67fbb553353212939fb22810ad7ee9963e25ea72ddfdaa0a56c56f63302310089b83c79eaccb16b24343dd8408667229237e08951e8bb020824af6b8250e556274987d98306cb17a5070baad8d13ac60302047c435bb50066306402307866e4e75403bdda636b7e768be9c865074ef2d4e280c036545b97bde692f4522f4be9739f979dbbf6a112e0a16b3a63023076c331f1b4000b4daa3e374856e1c38acaf8b05c3b84c4bbbe130e6989dfb90ea6943f9ae6691b6be2380fbca3c7b9520302047c435bb500683066023100a9e6ebff82b7ef48d2f27f0b834c064d522d10e576614105cef8930375607fd1fc495a67c9a4a8478c798832cc438cf9023100904dc00feaa58813902163752409d7fecc00b55d6772ec8ed3bb34a803fbe3e2723dbeccb55d1ae9272627489e6e79270302047c435bb500673065023100d714398cb837e42911f767cfe36e0753c335e5d3c621946f2a1da718b383e786454a2205049df5551024832df7525f3c023007eba7f6785c405f97b196ea4bd83d8550b6e16b6c0c4f76c3efcbc1aadc537fa613027450ef8b73ed74221a761111050302047c435bb50067306502304e92a25bdcfcca1277f8c4542b298d3a40f33050c9c4b316c7d00cb618341bb73422a0c92f048ef182bc163e594aa28b023100804da1a7203385e52c8a07d320b993c9679b12aeb552a7e9292e42461f95af714e55f8a663156c37eda6353513212c210302047c435bb500673065023060258c355daa5d4248bbb0751e9fad338ad41726d721eeb314efe37eb8fb424a8f06e15437d73db1acdc4faef76ab095023100f26e5cf83de9ebe9fdacedb79668bd3b967ff5c819f9b273ffd2980db6b6097f84e6c008a5674db65d245a5502d71b5b0302047c435bb500673065023100f21cbd1ee4d05d36b1fea4d3143a3ef7b9069e8eeeee130f807d4ca3f0aa69cfa9b68cef65b0e2ac07ea39452fd720ef0230718a776e1c25dbc45e4ca3b5b3d3bc1e29f8e4c40e7509fe0f3a8b1eb9221663ac33a5cc1b6aec3b64143a8ab2c1741b0302047c435bb50067306502305c6a935ccd54e9f17aa6cc84932ded4fac5ee8c80f367911a328744db8a5d231b6640c163fbd8ee583e3f6b89979f457023100d22bd4e8939cb90999661afe8b34e74e4d99e98f04493a00a4cb49383923db5eb36add9a6f70ffeb5afb37ef74d252a10302047c435bb5006730650231009fcf25f644871303658c6ab0c663538497c52e277738aeb2b1895940895444b5b38a832e0ba4d50d549bfc15eda59e70023077871acf6ed7bf9a8dde21ea5dcdaf68b286a65b8abd0c6af7ad671b91f02dc0d1f43d9d38d1356200e86928e38744800302047c435bb500683066023100e1fdabbb8056c63859495156497194c181082fe9f6fcfd104c2b2a02bbf594ae194c51ea4a5c7fe5623ba647c7564f95023100b02eda82604f3bbc6ecfa303db50c80dfa96dd4f7655bd1ebcc19dee6e5a3bd6771f4e3d6e2cdd15dcd0275aedb5eca40302047c435bb50066306402302e3443376625805e11d891b1b4d9d2bd46d81e2d80f1311c877d73384a5bfd6fad9497cb43d2968fd4dbfd73af13315b02307e12ab81b90440cee54d1385aabf89ca73100cbac47f9e30c70ff6106d2d515f00e6cac48934eb9a4324c33f5deefef70302047c435bb50067306502310094ae494054a9fc71a1b07dc19b547d21a764983add2fde98f243099d72c53f62f093df99d6b26531d7c403bff8a39ef802307da803f6f521d96fcfe2e170b652863cc5e9733a7583dac6779890fee86757f048c72e759166e3d502bb10deb8aa1d2a0302047c435bb5006630640230124d6b3daa80bb15fd316d688367abddecf60aaab922abb5340107a4816ede8b64e2a7c4e66d38643c3b504da5ce52540230683dbac2530d5f52285a34e31c9185ae9287356766627f3142be39ca455e8074408c88734fea56df900206caca74cbce0302047c435bb5006730650231009a3f9d6b6e7602c270c9d7f2cd36ca43a2903c3236d5243852fefed4923ea83c3381bb31ff71bcd07f22a5698a71c5d90230090a6e9c47bb74545dfe4a7976eb4e84d38f5c691e9eb3ecdbd29d17234c0e39fbb5f803a41ad6cd82fa71c46dcf15670302047c435bb50067306502300eadf4bcfe7746985897679774291b244c1aab0f20f6df1d415bb38e9971ebf2cc96842758626b1006b3a153b8b768860231009fe81e69e4310f6becb75d88197b0c2b62700b2bfaa2b851ec9e603f4f764a1826c38798655554b49249101b7c9406610302047c435bb500663064023059807e5e6d33849f1b30c71d9b453742ea4e9cc5b1ccb570fc5082f611457c21c1eae7991608ae906c890ea29b338c430230570a81ad22832f5149db532ba59aaaa12688c9762a9501ffdb736226d379aee9ea54838257fc5014529581c4b375e0430302047c435bb50066306402307d360da4b8b02f9bdd985747ead9ac0ca59de5ffe73b696af9415c378367fd4ca2ea4b8b43b0f23778d0f69c6721143e0230027cecf09072c12f023500e900f3350321c446df58b5c6f1274d4eabf3485a5ceca16b340918115af84f062d134e99ae0302047c435bb500673065023100c521b0a2a9dab101ac12e04ce945a5604d8c4edbe6604e1c8e6241cd00c501664abce7bee10724d611f9c8d21b32447d0230530f83a3d7c98fa31bda467f6a08533e359f20622a7453bfaffa0875f0a8aa3e2d6353a4cf3d213b28ce0f4dbf44379c0302047c435bb500683066023100d210fd1ecd732f47330e49fc73b7d55275c020592fe950f4c8adee40363a4dd2db1f821f1b255b03e12090dbebce6e0a023100d31f6d983a2776b804d2c6bce04eb1c51dc95cfe96daac377919d69220e58e694536ad455959baea17315afe4fd9526c0302047c435bb500683066023100df672ae82e0d8786b864eb5ee2460bc088aa8d19d011b829ef4cfbc383a6f819213b1fcd1066c4b66f8e1a2ca0dfd1bd023100c79d65d9f10da744211b2bd911d3df0156655271210a5be31bf8ad3b20b13e2001eae0943cf58266a2d5a226c6aaa89b0302047c435bb5006630640230754c8e10bf45b979952cc813f92f0ae12aa6e309c0b3af00092d5665fe35c79606b1d51ae558b3b24f5545de0bbc005402304e6ad122f6a23238710a8eb8be5c0f1ef10b3104a67c42a09be60bbec3ca1527c91fe4cbf3d0586391ab1755a5c1ad8e0302047c435bb50067306502307341889c6f7bf806e56ce9114c94cdcc847a9a239e1689541f183d85013164614fb56f3e88d5a6e6a676e00e21a77f55023100a55944f6d51cee119c72ab45920c819a1275841ee3da9a4cbade198599c4d480044685996655e386e534b90f545af0f90302047c435bb500683066023100b59e13fa9d05b0ca0775f3eda8e099d4916d1257a0a4f55429b23edd4ec35b1799fab79b614b5c3faefc0ba3fe59250b023100a3e36641bd001fb27b287b738634cd3fb06435d73aa1a8461c1b59f434e31a3a1b92e7c0ce47015966caf51a2ca8a4070302047c435bb5006730650230458f6ea33af6c68b910624f85c669dcb31dc931c42e6ba36eed34b3be44c51741f948b1102dbc2662e292b2335d3edd7023100d384f5a810e7aa2d7d9edb571b8fd7ddaf44b2e253708b8bb73d7e07012635e97ce80cca8f63bade80e5ad4712c5a8230302047c435bb500673065023100c3eade2e547a38557ca869657fb27bacab5bc4da7d1d6feb1a4cda26f6c52f24e240310feb4c25de541525ec219a51e2023012ab11dd7dfc8e601742e2f9a41cf54239b77f7ae77c2b152c1b2b93e45f99b96f525e336c2188c0b375d860e39e893c0302047c435bb5006730650230083e0a56933303d6dede8483738c7a119f2d73aa0587d1f492eb7110da74cc539439bdb0649722317bb11562f127df34023100db055395859ba8421a8c0e95c6210142c80254eb3e58855c9bb255dca6dad155a7d5d1e91b45d1e704370b1b49a2490b0302047c435bb5006830660231009916133c3e58a5c49e897509f5af49ef608fdc64fc36ac9bfb59084968c17d1dea91cbab40048018dbb8e84fc7137977023100cdcd3591906325602ca08075c078e787295d038f79775eacfd1eb9ffe73c7df8a8428f00f27b9f3f41320e4ca61e97100302047c435bb500683066023100b24dc08b4aa6be207f9904c93876f26a8f7548d031e972694264133f16df1ce27f522532bdafdd1a072032ae781f06bc023100944d63dd047845e33c6fceb9466075218000a5b48c598f53ae864abb836d9f8e57103e30dfe62e8097ca2b076b7357a30302047c435bb5006830660231009378a73175197ac64090fd9387130ec927865a3ea625776ebe4cac5cf54754cf8bc85b396d5e8ecf5e50edad541c9e23023100b079c816a25ea122d7e0d01ca01c5e985caeb7c2bb4d8490558ef1b3e7a9bd60ae3a944eb80f22358c4e2e7948af0ae10302047c435bb50066306402301c91b7098d9a750e5720cd604ca65841e31f2c1cd430adcc77c5d66212bb2b033d78cbf365f5700b79eacc230d7fcbba02300ba4318830dec24c3d7ffeae2effc46116361cdf2ae19261407c802a9baee1e1c71a5346445cfe819545664b8e02d5260302047c435bb50067306502301ece547f5f9fcd1b864afa01e7495ef75b3ceac30b345f36e48c1636f698e9d936514e05a432afdd484f228ad7de8df8023100b9146ea469560c395aa90e772f8798a5c3d0fcf1f137f17a78c762c3bda68d96ccf3aadd4619bcfa0d2d5f58b4381ba60302047c435bb500683066023100906ec869305ddf92bd08acfa8c89ab07b6cb2676a32f3662c29a023d8567e6499c4d25d72bbc77ea8368e3054a7b99c7023100a9dcdaac8abea684be4eef91536f2919398b34ce22e97dd96aa9fc8024ccf0bd736706f2920076b7865169fa06b2e3240302047c435bb500663064023074753f71ef81b281c770dbd5780195118a0091aa46b12b3fedc8231df2227616cc9b660062833654321219dcc7969b0802302554f34a0f1fbcf11f007a02baa9168078f3f5158ea7f46ae735382f7025122c65cdb62c822e0fc8fd1cec0d32f69fd70302047c435bb500673065023100ebb845200faa05cb30deeb5c9c2cab1dfc8d1d214bdcee7e61905acd30f4afb219f68b10731cfa607cd4170182295e1502303f8195056947f54f9c7451d67c37f94e36627132371644754338a9bb99f7ece42b74b958456def50bee226f4eaa508470302047c435bb500673065023100bc00acf756e604d68aea751945de29d260a2a1bc2f612290dd3e47aae50a5584f0717ca1251ae02ef2227c1893bd8d1102302ac309a3673c374fd5f20f7f86689e62857f8290fc3279100364790b73a2f16a89537ae8e1240e986f57c0e010704b0a0302047c435bb500683066023100b638e5b446bf9c37758c54d0816f5eaaad632e2ea19d846c375b1f669eee0b4b469b019f099c636a5c010df257ede90e0231008ea9d8d0d020074668438a71f2e440ae542979b3d106084e75f380982fcb97a51f0067688c35a9950fe74f329a2aad4a0302047c435bb5006830660231008691c76011b2f49da0bbd1b18e9bedb1a367f83ed70d6f633d47ae8515a2945b039d5efb6e3720440478c49d6e848f11023100d3b9902dfecca92b41bca785142476d9208796f87ba3acc54ef042f7b1005feec64976e8d41758e1ee63f173fecb9e5a0302047c435bb50067306502301fa525c45bd71a63e2cdbfcf7a93b23f2938aa2ad4add18b3fdd6e8cffa624df95e4764c064f1ab1ff480f4fc82920c602310087207b67d67cc09fb66a9429438c82648361a6edb643be46e9bcc3de753c82ea4624fa61a3e873f44b33e78e81d4afb80302047c435bb50066306402307c0d69a18bb9f9cf9766d56ac8e6d5d5c35ebc9260e9b3b73e0442467939110d34441058d594ef250f419ae9039266980230486f90922f9868252fada2e77391984a461423b66748c836361f852dcc1e7a4f928f8918e91c46ea861c070c39437cac0302047c435bb50067306502301261a75ac2cd330a3a1ce1759b835e5d0959d08965c52c2b00972d27fab84e380f11d624095985e2f4e1e6a7c3326ffa0231009bd53fd7c7cf92cdf9dc2456044475047483de0896a79bd2fc74fc122c7095cd28f290f82789229fcfe2bb49cbb613c90302047c435bb5006730650231009385c6192b0df22e3d81aa81a255f72786fe5cf3ef6584242dc42c8ad367fb647f68e1216450d9143c9999ed5bca611c02307415064f5dd80d78e3664aed2158a2a75eb4e3067511459c9b2fba68eba075184efd9a2b5057e715f81479b55f60aaf00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099dbcbae5e3360e443385ceca84433fc1bd8785ddfbf402cd128eb4161f926577bdf111563004e0f53ce76ff6a0869f2023100fde96220b39e1a02f947c4b03cd51b6a5a0083c4d56a3a97d95db679dd2a1ccb669a3bdb65ee5965f533157b76df59160302047c435bb500673065023100ad65f3f73c7cb684ccd17203296542bc211e39de8e0d371fec36ba97f3790605b8a66a4f8623e81d9f0d7005464cf51a0230065f56feb04be6a312b40c1dfbe9e573d51d650975ea328a624204bdfcf03507dc3a683458e9d20ba83ae3884d072e860302047c435bb50067306502303a686790b9349462c953998388e38c2f8d0d5bc8cb9102de0761353ad1b09a5f32ef9e1210ae38aa2a1454d152eb8df3023100def3aa59538095135643b6dc1c7cc2d0714adae51178b41139a29f23d3605e96b5dc14a61bb01b0f2807c3a30a00d2780302047c435bb500683066023100b1152de0eac423828479cecdac567b080ea22c8ea9b32333773605e22c44773b79383a22fa7ddf91a5b26ad8d3e2ba2c0231008e070e09de8410eea731ac82a99afbd564db65761b999845fdefab24d08dadbb6362f575ed540d2ce8da235a26d5b3260302047c435bb50067306502306211aee3fbe4b39f265a3ce67982b8e442509eb1f79cd166c8da4dc58b6c9d06651ee5cf97b5cdc05d772ed906fd04d8023100838f8b9ed886cd811ff321760363b5ff9245b326470ac7bf8fd5ed3fe93441020e57a3ccba49a4c70e5fe735c1440c4f0302047c435bb500673065023100aee147ca2d2afa471882d12b45bf7f4946dd59f1af142bebb2c2b383b8e71a712a4aaffcc25bbe9869fed4906f42881202301de6e28d042c18ea48cfda16d6bef0f122ab1511b87a5e7d215961dfb4462a4a84ab6cdd2320da8b69873c5817a0302d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230434768f5c646c54bf9817b2d1638cf24634d7662dff84290d5abb3ff9d7ee05a57041eef90c4a7e2cd27d63150518534023100f012d108b26dbe4a5cc0a731b76ff6f692f2b9416045b1c5267c3d6a11b09f69b1b23411b334874b23d842a55dc8140c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce13ddcf23ff0bd929052cf71dc4c12075aa9f51fe242262aaf16c6aa5e8ab689fdd33e2e7440ec73129886a854c1f7602300b71ca7692755b4c2df35b7342013d784421ca71fe50c17aa8803a207e2e9c774c4417d06619fb6d8e581474d87fc8e70302047c435bb5006730650230476d770431ed5100470980924f1c9677abebb5f951f0b9919959236be5f04a5476b13dd9958b86e7817f441c87e0dce9023100e08ad3ef1da77bba2373df7604168a68f9604fa711ad798f1719f711109c494e5ef383944e25fe75bc0bab0093a4a21e0302047c435bb50066306402301ff4d039bb99568eb787185d0bc2340e05f63feb387b2b208e9a287ee51426777a00910c8c51a99cb67b09fe762a460202303f7508318620724a9b240fb7aeded9570ffce5bd15b00007c8dbd9ed418b5082d113bfefa0a9cab795dca5ecaaa99a590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b22b23e90793a18ef14a26679683d24f405e159e35ab86605dc2d811f058ed00b8a10b530b5939a4bc8df282fb46b52023004c98a795e2d6528d90f2c09633eb0e058b856c3ec264a268be9061ec0a9bf20f6ead13180f68a6c2d0792caae1df7e60302047c435bb5006630640230040a6c54855467ba26fd8d3460a189b8ff80c315e36b6c66a7e028a53f1f5734c8ad8782d11958d67e0fa580a7eb2324023026ae3f54286e256377f57c741c55cf6a31f5e762790e0d4b149dbcaa32e0f90842b5686deb859b5a6045b96318e98d3d0302047c435bb500663064023046fe605be6ce8a6fab08023833f15a8c76f2edfe4850210e2154e396ea08df7fb2410cbadf1c8e9e5f70f046a5455c4a0230189bd864b6624151a0a792f899792020e5ec14e2e5fa2198c304d5b9e5cc63d4dfa797972e0aa9f4a72b02b5db1680090302047c435bb50067306502310087c6d652b50950da5ad3e4b09eca9f6c61071c94685abf32f61b22c9863e1244a75f3d3b03d77e95301e958259ac9dc10230624fe9e877f53bb2d85a70118ef648a9454d01a3cfe4ca1dd4a34323e7a7aaa11420c2267731dbed9e5b41db7a4e5d950302047c435bb500673065023100afa52842c25e6ae5c652f835421523fe7b8f028aba02402e5aa6d087facb7450d949ed4b6cf3d364171033fa8bd58371023072fb61f45a8351590e8c7791e82c60dcaa86fbaef25618aff64aa50f7d7cc5fa279d1de27d302eef42bc191104f5c0550302047c435bb50067306502307497cad19277ab2e18be2278e844ef89dc0a6d7537f200b9be2d35b0ee07e08f9b78d1996bb25f69f95e7d06682e1ad1023100d14403d7968a16bcf018c42fd786fa38a1021071eb64da2d6de06f84f0ccea9f5cc2c44f5638cfb798dc76364337b2e90302047c435bb500673065023100c95932831c13d1f98b6741bcb7122e17560ae53db6b32de13da6a1c20169811b11d851f3f54c95b261280a9615536f6202301fdde138fc51936b52d32c606f9a7750cdd6374479531f0121a6583acec3a025e3d340d87bf0fcd9e4363cf63199cfbc0302047c435bb50067306502310083250618bfda306cff3649f290b10df972409a719f31bd2b4e440ebe841253ecadd80e33569d22fe63e5381e415420a8023030b710f36763d09b7c8bf9af1deb0d3b744e7978c374efa60884ca88024608210f83b4e47d7379550f9fc5b442f12a9f0302047c435bb500673065023071093baac711d192ad0398f88c48fd8ed063ae8e9ac516d8a1a73703f48ea34708adee27d2580433bf50d230ed3f3f1c0231009076221d17b84e0b71f02612894c9a086bde6f969609352ddb73c6f947e29168e318483b040781c4d789c4754f0afd3b0302047c435bb500683066023100d1983999956ae8760ee291eeb9fb384f4b062371772987db34fcc9451c679f8c4fc2538f41fb1e55ea01e74431912108023100984719c2cdb2cdaa13e5b5b9f6bc920669f32f4fa8520f5d7f6534445261ad40627cf255fa4098a5efd0b44a5587b7190302047c435bb5006630640230249c4fcd542029e435509037b5159fea2b7107535338a429cbe90486d505336c783d0236336c16c94cbddd8d67cfb76902306e21ee4d4cfd7266a9ed2230cdb73b2e4bb4d1c08baf88a8e07825cb226caf807e378e6837bef101369116a6cf0a77f30302047c435bb500673065023100ec7eed32e30e333b6fdffce89bc66ed61e7ba2af6381e6fa5f4c6df9e94130228302619b0da464ee8d7879e5252fcd7102307630484f4d40e8f4fe80396faea11a014a33b586f4d77e4924f376b9aa370ebf91ee7f6c62848abefa507ad03cff6e140302047c435bb500683066023100b5246568558ec7b032f400ea37d3d16680433e9cf96f8b845b58839ee57afa9da3a1adf6bf37a4c4333a3c3558948707023100a9c1a037d0d036e677c2f45a27346de423899bd59d9df496e3632a6802c0d03ddf6cef45bbdc399d00353d80a8cfcae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d2f1923a10539987c0b74dfa78eecbb19ec7238b344efffebd232b376db3fa1e645bb052d37b4af4b790c5e9d299d064023026b7a1e73aea567b620498dc68cc032e9cf83b0ed35f1af6c99ae84663d459beb7fd39c27312f601e2b103dd764b65030302047c435bb50067306502301b6a66536e8279e77a6ce04e684e254740ac78c493136a5c22f878b5fe30e13d6d068ed424c6bdbad63430bee49075e8023100ad50c4fb1a99d44abd47686b00bd73384de4bdac797a782c55ee4adfba4ac3949d5d5772c5678a56f931874c46c4a3200302047c435bb500673065023100d175c935d46d2114627c6c2cd27a5f4dfab692f14df05d8b0c1565465422aa6dc575eb16d40a5d2d859b55abacaa47dd02304e5514dec736003f454845e0e80f57e3312665913fc21608882c7080494420cd32e0147f40479f4af71702403f0690270302047c435bb50068306602310095492aca22c721c1603eecf357994ec0002ad854902835970f4aa53d2be449ae92d01150e11f2ae33bf1cb08549b0e5c0231009170ba2046de9a3e246e914f1f8de2378323029a9b36d225386d548ee01e8b62aff085249f2ebf463f35ef6464879fb90302047c435bb500663064023018a2f9a22351f0914807250ad309c4a378786a2e5adc9324c3ce5548f5ef62c5b0906b17f29f87b4785c90f7b8066a45023065057568f1c279a3c62eadf2e8f5af42f81ea14f8f67bdff47b2b7f57fe0a64e350819ef653640e843b5f166645601fc0302047c435bb50067306502301e4647a82509ce1b7d19f7415c08bc0200391bda93e7aee65c40ddf99fedfe415183d9ba833d36e5ff3469f7c8f58e1b0231009f7bb66b5d2bdf917669622d27d2dc3cbdb9f1066120801be10ac3f714ee989f22d505051222ea6b25581d41e60d51e50302047c435bb50066306402307e5b4db637db7b9caabef0fb7b0943625361c26d5b331b98f638a9f76c4f4d0e365e972db731c5bb5272991a4686fc9902302be5a330111a50ad6e8e1b5464a961bacb574f7646188615d652808fee4af43aa58fb9f443890b4be49008bf136b35100302047c435bb50067306502310096c742282288b5e8b7cc3a5167431fa83f8b5d8d024260cf862e9a06238d2748425d9e7e0dd5765a365d9319c45e8dec0230351b2ff179efb35a14c0ae971939451955098f451526f119c67de8fa7b337ef0f0771517e31cd359d70e1faf8f24a8aa0302047c435bb50068306602310089b514a98f935cd1318f507c78290a987d074fc477f4326879c6ed8210f17fffa3f4537784abd7444bac11606158c05e023100f6fc533ccb8d0ccb447111ddf88d7cddc7d1ebe9ae5c547679a204b77da567b124cc7fde49cbb5655090ee72057d44a20302047c435bb50066306402305271e1a716a30db3e83987ee3de26b9639860c3b186b643cfd7640099f27265e5e0e13ec3d68cc8a8b51b903ff8b26d202300ebadb722afcd507dfde5e816b37a803a6edc35c4b394b7d6e742308c2067e36c653376c03308debd131d404b9b3a0150302047c435bb500683066023100a9bbcf72b0d438d485416b9ecaed5ad64170ee8770d9513096a442155d35d1690ed04d7ab5af29e31f17586310f4047c023100b1fc8a75f84a1ceba22e2dbc2de89cd5caf6153ea30d8234f038c057cadeea7819154878ce0b7860a0c5863188d6e4db0302047c435bb500683066023100881cbad0a71e07db66244a235f9d73e43f98aac4fd0dc1874ca818e0347ecc54e5f41f4d618c99ffbdea035586dcdf0e023100a3eb0f87f000c24592c6e8d407b29394941bc5fd70f7c88a62fbec07aff5d347e1f4e5e15f6c49481206700ca5f920ee0302047c435bb500683066023100aab97f91f6364e7a496cd2fee68445d945c28c3dcc6c1b7f76c7543654b89083983ac0bec4c15249c77136e6913e324d023100a111cb3229125f2fbbc07065fcc20c1ebd377fc181ccb463683c573010dc4a1ccde9bb47395f1a570d5fc64cf73953a80302047c435bb500683066023100b3d7785cadc406b6ee72c3a5a5d8d3e5ac858dac16c3a5914162e6de9a8a0de3983b408a1a6a4c721e7ae30f2a190f6e02310081114c73fc52035e2d4208b139a1f6fff1cc9d5eee4bcc86365d2f4180891bd4b9ef9584d00088f6641fe1c5c5e4eb7c0302047c435bb500653063022f3a47b989957738ee6c7807fa7d04f6bc1ce7a20edc08cedd683b3fb0fc81b376f0b94e4dca082c388705de8e702eae023014d731cdbc835d99ff8d4acc3b02c09a31e72b2c4b0d2e5144d10db943bffc8fd3ab9e5bb1b1dfbad2899109d024d7480302047c435bb5006730650230019328c61fe096d3db38a8fdb542e341cba634b4693a5211ca02637d86bd6a5cb1abd00e0f32c83f4f091b9147f3daeb023100b22c51a69af75035caea079cf5ce85cd8a0725827b4ed379afa32420487f7e947b01a4a79fd0ce9277f24395f5013a980302047c435bb50066306402301925e90bdd047e79ea88e9032c4b77a4ff082d4d6b71274fe655a6f520804a985a8680a73a545fed211356ad8016ea88023071b72c96a3ac789d02e56f36681fd611c5eb73c5fca1bf22c29447cdfbfb4f854ef55d86124e4b054543f60b26a631fc0302047c435bb50066306402305d88e3cb287ab7c10a036be375fa5ca5738a5cb46e18696e86a853cf6f93ff600fdb4ffb7e6ce6c34b623d58944eb38102301e60509b9d2b3ad780d44a5f265daca1b966b1e20c9c0e9eaa8d012f31e7f6969e1d517d12ca3d9e7b10baa1e5b4045a0302047c435bb5006830660231009ea1f8eeb6e2f0d4b78f6ed825218124ac87c437bd5770896d806bc1e69b722f1b503a5b001332ddb56a2c4d741c62e70231009cd2f9068ee27b9380addd5ea6d3a2bd3c1dfe65f9f63034ba7a3a6d768782b508924e7ae0081e86cff8975a9481155a0302047c435bb5006730650231009da5d836f6e4706a838b3b5c39424c8f611b00d3b8bd38622b4c061e33675aaef906331b65657c481d4fc7088a59f7630230435afd9a75c4d3c754e7a0a3f11f74d5fc53f1fdfdbad8af2593e90d52df3384b9da373aafb1fc2ad61236b0f6d56f560302047c435bb50067306502305d5983c714d0f0e03d211100dae5ff22e0bb4789aab4c55d253292700117f0ca509b69ad911a4edc76ab2d14fde96f11023100b0e659017db3f6b9322ed6f9830b15fcb78d7014ac2d7a3a5996b39615361735eda9b018bd66e1ff9d6ae71b85dc493d0302047c435bb500673065023055825eb219998117d42a626f02ac5083196f7341fb09ec070e06cd3afb04e06c668d030d21b73535ccb7b221eadd1964023100ade123e78fe8a15311aa60d570d71c08c9ed542ed1b2c657f1cc7dd5adcc41d5a0c9ccf639a9ab4258217a3c9f993b8d0302047c435bb5006630640230579b86246133a5ed2973721c7f68cd780c2eb17a9cc573fa113ef411e5ad8783a593ad5c42fe91d547a6cab5a8b4e69602301016ba9c3e7f04d195509757196a906ceda6da7bb24555c7f7a10b53ca99499fdd6819c8e1fb46e51ae063f5b7e35dd60302047c435bb50067306502305bb24e808f883c7cce8a939a906ee781d95672e19d409fa4cc4ef62f8f4a2816dc108e760f1acc39c668bdd6b312a00a023100df4f445be5c8ebfdc8cd8e85624dfd545397a5b611989c22cb74af09d60904a4c8013c944e5f2625f868581dd7a762930302047c435bb5006630640230171676cc07c3758e29c7032034b624517660847cc6183203b6615cb895d3e3dd64079dd3bae0ae9925f7bd013e497cac02302c2f44a4996228b15e84ab1eb279718eef373f8e0f0819fa6c2ab90affbc79970631d5237847021a21da61777f7cd2170302047c435bb50067306502310086c7c1a060d265c969a5d03bf3da4ced49f72af3657e60857a10cbdd5f428456e00ecc03db920caa2b5bd9813e410096023025f3d27bb6e1fb2b9b3dd9941d919098a08f8441c22d8ef936d1d1afc1aabc3fb47010e8a59377ad8eb7468de395cf570302047c435bb50066306402301942ce3c68130b64fe7a1c58ea0578b9cea66c130d9d230603a6b9f94485200a353ff0f2847553d7f30d4cf0c8d8b2cb023078e44aa576f541c1360cb37d86b1d58201ca354be4be52b48045855917ac345bc9cc339e0f70db581c39fe9a790c5a950302047c435bb500673065023024c3aff924768f2bcb1cd85c8acc03fbc8a3fdbb1f7f68fa38332f24e83d8d9a41059dbc8659e0df3662fb643315174e0231008e70741ab9acdcd87430d2af66cee339ed2d0823db1e31d0b922d1f955d6b7447e88d987dc269b3b26827ba4cbdd455d0302047c435bb500673065023100f5e64bca658dd65c6ed68d4b9e75876549371ea388a75013944961f5fbb770e3a1548a24883f47ecc647c74780cb7b0d02306fe9b2ff2e7eda37ae4e3b1c0c237b20eaf5619d29513f57c8827ad70c7ff5c0314c148d6b6f1d9c0d8f8eb6cb1ba1ef0302047c435bb50068306602310080e60b888ed2a4cc2bf625e72eaa06cfece9114c99bd428755f7fafb503fbb083d226010e439e8bda0e53fabb6b5efbb023100c48d21457dd2876c4b42c44216a4b809e0eee8068990f3ea786132cfd1e2a8c1a0bbba22423aab58d1a4ec8b9e8848a00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2526b0e2d70398c33e5c688d7d14c911b2f30b9af0a2324819cf8bb9e17305541d5517bdc90fa8c9c7aad9b63a2e60e023100840773211d7029536b95ccf200de34a2c9a5df4a444b0240466fbdd7d81036b2b313a6771de48f3f46eb5efaea0c1c090302047c435bb50066306402302530dcb5dd7d4a36e1583d1b3c74ebcd74444c6bc9e3740513e15806849c1c8aba4189c514b074ca5c86f9cc19de856b02307bdd799827a39659a601185d0e0cce967a0516bc715eb4352ae71666bd8954c9b6cd9a2dcf8edacb522eb0e7ff3f5c890302047c435bb50067306502304d1fc639cf0e23cee5ef02dcc1549bc1283b6ad8895d4513459a8557c39cca13ebd9a1c9aea3e76ba702e6e2c807617a023100d288e2a9113b1d4709638f16bea3cf731c025fc0911667ae208aeb8b1b8e9d3bb2eac0659d9c716d65794f809b0b65950302047c435bb50066306402303f72861ff61ad0f30f6f26f93f0bcfbe4a11a4cce58dc9e02a6d273b1f6472b1a88d0f4bd9c0b4ca2537cfa4793d5c6202306dc072a573473a0fcbce7dc6107e8d4b17bfe00ed81de62d6dc4ddf35189129bc167af110f52f0e9bee34fc98d48403f0302047c435bb5006830660231009f5f576b524630b60f97b03d7e2efa1da854d19a25edb9c418ff582fefb4b33999d1b8497170e8df96fe7bb7735ad220023100aae00c60c71091e8d01c6268a68e45cbe885b5ed6824070e90071ccbc274d6a30c51403812b60383f80d2530c89b71230302047c435bb500673065023100a02914413f0f14a382fe1d621b667d972f55438c1464d7b95bf1a33b57f08a6e9d420697e9bae4e52818499febd5ef78023055213d29727131d4bde3c4901326feae4210d5564e1a5f9f59a6fcd29a0885176967f5cece89123a4dc6c447ce8629040302047c435bb500673065023100ebab0992bbc9a3427c6fb874ad4bfdf42f71108e7ebbef7b94d9afe647ba0e89841f589ab414d073ea6d8bb9376d79ba023022bd7b6be21a0a2dc8a293bdf1efd8dda7d2bd886e7953f25c3f75218a1c80b4e5c7b84b5ce88dba407cfe27567bc2260302047c435bb500673065023100927674f94e63379ae650ca7f8fad12d6544b65540d90c03b591dd614ca707bc75290549e1b4c88a86054d1065c9e51de023010989c17f9772c2065711a73db62dfe37c9e6d5d2a1d123e639e1e38b7b7b61bf169bc812012cbd6a7dfb5d70986eadf0302047c435bb50067306502302c0a8a4dbc1bde84846054d5ee552a3d0b24f6d2037205595fab089dd4c74252d59b6d6d5a4eb4f5ef2485ef85f9ca440231009ebec2fce4e5c3de7830b83c06a52f982ce75f7d331bd8959bc0ac44fd42e2e47bb99601fdb0f9aecfe90a1e73bd8ba20302047c435bb50067306502304004c092fc985fcc0582a6d204780e7cc97e47d2b84ea644b1767c0095d51723e34a9392c2dd52097ac24aaaaeb67df402310084e581e9fed62eab5c797782c9b1b19bd553632902bf73729ff7b96772ee4b57c4ea270edf03e4eb37969e94b57f80090302047c435bb50067306502302bcecde947dfe3691bd5682226a45be45619284fd332bdb276e8c7332957816aa986bbf407e9e6e2d8f489ae3e3f283f0231009a3fe00cf2694abdae64fa92471697978f60bb3bbd0d6cfd82aabd56c7067fa07005744142a92ec26759964792345f4a0302047c435bb500683066023100d294abf5284ec8eececdf13f49831909e61a38202a55983239003d2fe9275f8c6d33d1aa5dc061aa3498a1dece9cf857023100a713ae7c91261381dc42c15e8fde65e02e2691e7bfccf7de278217e9edd0eaa53d653721e1db584d717015efe573e7960302047c435bb5006630640230619f038d9f6b70fc7db23b2338c51f9974dd2f0cb6fb05b6c83057f2890decf486f1245ee96f424e566dc96ea460a3cc0230400dc6ffdfa6bce8cc6305cae243cb023651a807821575f9c3b256eb86476a5ea6c33ce27b0bf39e2ecc20b4328580a60302047c435bb500683066023100e3aab3ebb752ce579035be689706e9b8a494fa6faefb4a6198abbe6ef48320625891f61d0368cbd63fb2a9c9df3d5511023100fe6e666e094bb52afd1eab8665b2223575cff3fcc94fdb213cb2a37b2854732544b2cf42dcadd19a1aca2060863c6d340302047c435bb500673065023100f3f5fb56be093b15c3c38e967d36a814a34406e2d3122dec4661193fb3165bdfd803bf31ab3da26c2d97c103629c34a20230347a4492264ab744c50896fbd93e2eca8a0c9400a432693fd9c5b6f7c0688e0349b3b2e7d41a98e158af2bc327960b330302047c435bb500673065023100f1170fe6e1631238a4a7bcb88edac54c5c7d2f4d6ae65fb20f7fef091eac0acb9c2221d7ef1898c748ba5ed8086b966502302b7b0b1b425d7f623fc74812c9fec21f3d3332d721065ccbaa05986eef0cf4c8639f680be875e740a2098d6ac51c91e80302047c435bb50067306502306466bd1c1be81e6b90ffc6e077cb2cea41f95fbef4d7246d41e61696edc3080882b0b4858b568371e76de2023f864ba7023100ec1001a96b813baf2b04788dcc383ab00c62f6f68e68cfbab0468100c26013d4e615d547131ee7e576859b1f35b998160302047c435bb50067306502306e115fec92f3a28fc24bc55675cdc24745585af150967d1b15e61c12e49064c8485d9a0815342efa88b70fc3735db4640231008a61ff589af7170ac1c1bc87e618643c9b9dcc2f2a1b927a08a16bbca018e71ea0bd75cdbacc42f819e0425884f94e320302047c435bb500673065023100f63b3113ea3f851a7912bf431c05ad2bfb29e0f216762c9d45b87ea588a8e45c87b0f305e7e4bf2d2b428ceb5796fdfd023020b5889ef2371fa2fe9b82da8ceb02a3d08d20f2a3dbf06625452c798c13cd9d5d0099b203f3efef7d7db2c81ddb66240302047c435bb500673065023100bf7b05ac6550c9cac6c6ef95ae411ac57049e611f674c98aba8da2064a6731236f2b2aee94b25466eece621a0ff914ab0230103979f48d3242a5c170746cfab28d5225c5da94000ef363f04ad2a35eb215e8e23fa85a46a6eb21bcb63ed90e41f44f0302047c435bb50067306502300b08043230e9e68675e598c052de94d64ff9b6029e5f557b4aae2838161eb90ff1d43d74e40cd9ef3219da8c8ee4519b023100e3b7bf0b84412757b4be8494dccf30595e56400ce64bb94e10384f8330e342087923c6efbb168ce30148cbc06f27134a0302047c435bb500663064023065c614e923d72185bf237aac9e492a0fcecf3bec004aba54751ea965c89ef12cd867676ed933b067d3b02de6d839308c02306a886a8454119d40ec74adb4ef9fbd5fea9822dfbf89c5a982071e6aaafedf0c93dadc94d843d9e12eac8ecd1cb0c6550302047c435bb500673065023016d4a7e82cfecc5570fac12fc619171a9c3367bc3e64248529fec57dad7029e60842f0f25dee7b027fdc932496c11ec5023100f74fb08c50bf5fceab82cddad852f5ecfa5e3e26c79671e376ecda00a2cc77ffbc308c4bfc2e0de1eba0fac9c37bafeb0302047c435bb50067306502301d53fc43c2d0d24c967a1303a7605100c5dceba9c8c381c94e812f5bca736b1bc9dc710e90034ce97a52dbef75ab673a02310089b55a003b74201d249a2085cfb3ddd439a12322e38d602d233b5d62ff371191a26004fd400aed9d1e76142253491b180302047c435bb500683066023100861d1d8d2c3ba21c36073debc4bd032d225a21f3969b071f91700ece13117f333282a055e9fdfac74f57da641e9e720e023100fd3429042ed01462fb306124dd46615996ccce3be92c6c8d92552b9374b8f7dff42ad311781f4b581b06c7272d6547650302047c435bb500663064023062004ff0b05340c1d0c38624e0f7fa52a714d5213c4ca8ee3267306b6e68217a8a059cf9098943e2a5e4e6ac0193c345023045a383ac8d38e94d95b4eaf3f1c1a662a83514867be0f5c758941f3756af0eb6cbc712167945f27bbed2086f4b03dc740302047c435bb500683066023100d67e9fccf029936490f05ae9de2c72af830b3ac9ba3d307275c31187fad42c3e86b9128e955d1c64c8e966ca7f2c7a88023100bfb8134bd56371ef6ef76494a6c634661d04f6b8b7e41081541e1af0cdf341d3b997123def8897e8cedd9dff84d54eb80302047c435bb500673065023100cea400725d52c23ac7c14530980e34634f9a5314ecf78dfed9dd7a1a72f1cb11d477fef45ab381712361480f39ef4d03023037e0e3d487109c3898a7526d1ceb4b6f13b0359420eb1b9aea3862187f1a0daa2558124c31528d470b9b2214536a5b5f0302047c435bb50067306502306a673e42f0d39a6787fe5eb70d494fc957ad4dbefa9d5b73e542f8533b33b90903d72f5a38fab26437b521557109034a0231008720502c1b74378c5d294c4022ce1cda53d54e38b3c8a44f82e3b1ebf72cf4be17eabcbec4203e21ac159a30e19d97240302047c435bb500683066023100d6043e09dfea0d555ef554dcb3436c5ea1a9159cebaf4cdfb20f0b3816dc4a7cc246cb663066cfb434b77e05fc7fef79023100f7f1c5309ac36cf9ba78b7b3c97cd126f6848912f4b9bc4deb1244a24a3a320651ea5e204925cba2d183b5f1dbd7b8c50302047c435bb500673065023100da1c5b9bbd59ff1f0c50e8efc1547f5ee9de64779a872344c8c16474d121706b5eeaccc636e43893e55c0112d93e535202300f55b478a6207edf00c9c071151000e6dc65aa932e315a4020c29824cb0706d3c38b43d556f12dd130f129310d44cd590302047c435bb50066306402301f5c20b093717a32e42f2499b85457f7b1360e1138b5a8adcbde9e2871b54aba51355ef746038f29068bfd3b36104ee702301fddf3a198c60e1c3084e347b8bf0e33a72688a22c9b428efa1e5cbd57cb89cf9669f75f1d0bd19337d7726d80cf8bbe0302047c435bb500683066023100d607632aa6663ee9e57f569383b838220f273b4758aed3ccfe1bf09bbf1497d80d877d450384de4a0ca63fa92f0d637b023100a53aeeafb7c6f576db9b4a0a60096d7aa8069c923993338127a1bd4b6641274cbebb245cc79e1c37c126a02baf35f8a90302047c435bb500663064023065f9bfe50cd70c1f8775a6d36272e46588d7e6300e29b98da5c56dee6452bb992616553f65d9a6484ffe8179d45e1d2b02305feb0bebd6fb608b63d721282c032f3173142d38fbb135b08be6ed89c894f642a19456a40e184b87f2eb6454f468d7f90302047c435bb500683066023100abd10fb998321ad92b9c9bdd92209e9f68598345d8c5706bb688af40cca5db206009106178bf9e649cc088f510077e35023100b08481f24ed67fea7712fb2a7a6d3257da9b0f0ed24f03e63434ab31473ba047197dc9b5f157691dfa5e2f0142d16dad0302047c435bb50067306502301bae1cafeddfbb33961ff2a75faa0f2ef5bfd217a8306732ba6610ede8803cc0a5820de102d7f5f838f3812bef06bb7e023100c66dfa75bd3ef27b8b408777f5a03d3a4e74332dc17672e131c442ef736871b932ebf116eaee66cf74740826310de2170302047c435bb500673065023028f4bcf481d4f6b18dd7410a2dfbc811cc60427d38d0b98acef02518e4135acf0e2da69de83e8ebabc8eb11c0504405402310084f7c4c71bfd847db3bd14976520f6851d7ee940d79af35d3ceeb93173d8548bef1eacbbea4d12ecbc68218d7ba570510302047c435bb50067306502302d6e21787a7f1e9e9b8c2ed9e511b1dad43eec297263bfe6257fadaf716b65d251d90c2e4fd23e355e1c98c34627aa25023100adc1d6e8cb5b23eec26536ef901865e1e7965c91ecaca3fac49f95199d35edf22f3a8526e0116e46983a009f58eb076e0302047c435bb500673065023100e683c077b6c9d9c170ad2979a8adddf7f26c1167a33a6ed75eb61a85884089debeb56887b4fa6eb060afed1f376ae1f602305d77a3940c0d3be6bc221bc251a114b9393bc7ec5ac98e1be633d58111a84b655cf769c2e2209c6cd154e0c551acb2950302047c435bb5006730650231009b8bf7fd58465956e1d62176a29b98e9ef8dde402b0c591f122e09c6d6708d637f0d3552e37bf06ac81cec6a7934fd5b02302b0afa4dfe71cf46909f2dd09bea888bfee729f3113e8c5bf1fccfbf5c17dcb56c0c9d981c645b16dfed3555fd726fdd0302047c435bb500663064023011bcc78e237ab6bf9c1b1cd1a4c45f638e760c67124022419935fe0bbe832162b51869e7bd206f567b446a8e63d7dafd023072de9e551b9391ec0ff9e308ac9f2dbde7d6b411ab9c5103bbdc56fd539400c741edf22e0a8b32e6441046459835ba7a0302047c435bb50067306502307645daf7411341e9d1c4c9ac3a8b430a318ebacd35437efb9e44a3362939d181af1e93148dc2eda4a68f70ee8fd49c66023100d2de94c15703d32ebd195d41c56ea18c4afde7ae4f5b547074fabe3892e5f49f242c97c2ced22f88eda0e3d5ef5dffe40302047c435bb500673065023100ace5be1c0500735ecf6fc3cccff6a0cca0efba5f1ded45c4ada396bd18188c6940d628d1cb9a762fa475f269a06d800702303fd3970885ffa4b9bfc2ee0f08a06fced7f5f1083980df93f781ced0c7f80c5f3d4929297162e2e8d25461b05c642bf00302047c435bb500673065023100ffc9051e468a501e36f5a29d12c928ac4f5bf05ef90ea6a47f72d984b9de4a64e86bd874d44f706a5b54fce3218ce7a00230265af0e54385d6fff2a9ffd56cbf0c513fbd69bc50b44ada1fc6f6c4ef791cc1cfc307c837e6b8eac765392fb23d1faf0302047c435bb500673065023037fad3127d794835f3c8deb2318e801594fffa0d7c687565210c75f2a1c0ee4e262ca3cfe6ccb4d5fad56e6c7755a0b4023100f9c71591094b9660442f51d247bfea5aea531b27d4fe5f10e5878d7d407403ae63864773015020c1b4fbe3bc2adced870302047c435bb500673065023100c304e7e9d91c2d1d632411e4451df425a5c8c52b3d164d613b985a599d34ca96e48a9d7c9fac54b76df8f6664e52ade602303a4de140a1719ccdeac464706d601f197efd7d4e7fc7c0a393f16e8e632b750c63fa695c7bbc8ed07dfadae3747b446a0302047c435bb500663064023069b8a5452e769cca8b0e3dfb17038ca683cef2f0d60f2446bef782a9ebc6d23acb2c3ddc31ed201abcfb0ef95e74f8ad023053aec89add8eb198e8c612dad4996e9701da33e2bfca2580d5603a9b80eeb3c9224b37bf3fd4fae164a317cb405a21e90302047c435bb500683066023100dd3d618c970e62a9f2fa025232bdd8de1bd5ff2a873e46e9810c3776e4d122b7f0a0a8ddf5d380422e357500a8534a700231008b7f4084ee61f231883b6fad9b494917ccbb92c9a52db1e89f0c401d08e050da9cb7ad7af306ef9ba3038fe3fccf49f00302047c435bb5006730650231009ee575cffc445ec2a0f6790aa11ff7362373e94ac728ddb02dd84eb229b04e46fab347f6cf0de08aa668f956530fd71e0230712e613b5b1418bb0a1d23b3c493d94fe7048fe036b84975c7da2a861503ff51b4ee28484ad9d32b1b1c0fd30e72f0a60302047c435bb500673065023044f118b3beea26a15f9dfa480c242263d929f0ff0506bca56ec708312f12707229cff57ff845d1a325d36d6d97f5cc11023100a62687cb8b6e564f495a9dcbad64d0d2a8ff624414c4c615804ba1b357f73a6b18507cf56febf39712b538c0f547d7060302047c435bb500673065023100d8cf449180a33f075586553ab795d06ca945c8c8b4299cd3db105f2845e47c84b6a7807ce868bb1ae10deffb8a42b9fb02305e2eb4be374a2107d168e32d711a23e3884b80bf086f53da9e0fee8474b0416e84c68adb076b03dc8bce36e0811307880302047c435bb5006630640230386499747105554bb29f62efde866ba9e53045cd79196235f615147a6cd59d471e5d0d8dc6248635690704d38bc72b99023070adfea13a5a81ecc11d2fee718deeaefe825dd5284154032fc44ee5ea45a1b937012180488f570a5c6fe76ce45e58aa0302047c435bb500673065023100d3a009d1d1504598f51f40d51398e765ffc6343059acbdd08831a5cc760354c8b93f8472c75f3c834dbfd0d3bcfd9e7602305bccab11e9ec56f96156b69f088d4bf724787dced709cc37dd5fe710e0c55f377e37b9c548059deeda7f8623de6f85b10302047c435bb500673065023057af723ac89c20f5a908949ca601318ce3b0225d1ebc7206d778cdbe057cea1e40d114fbb02abe866c58486b88d67947023100e85a39615ea195ee7acb55c53ce03ad257167dd0df6cb1ef1b03909e308e5df894cb68a819f09870e85e7095052852390302047c435bb500683066023100be50bfc44930810a2380ebf8e9de0242201cc5bb582cb145dceb5851c26e4c4fc4b1002c0fc709a4cc7232c7adcbba7a023100a4117db9d1d9da7cf2992493556336dceabb9e652018408af089cc77b758553960d0aa10b53309d14d5659e16adf474f0302047c435bb50066306402300c97ddb573269ea22b4c9f0da6e83d097d4e58ea6f00913d179342b717fb41f42a109ac3f14dae68570786e705e3627102307cabfa204e652aa7123bb567f59282b23f34da102ed7acfc0e7a5ef5af133b1ab207751a4808d7b236c5f57e13c8ba870302047c435bb500673065023100c75fa6958a8678e5babd702d8cbc7223c4a4434e9ed61b762009a6649f701785d18119dbcc42b86b1df4694dc9bfd86802300d2a30e2fd393535ac406584edd3c877dca69c72c8f4c088b04de96c2826604e35fe3de1dbabfb682cb9a9b3ed07d7b10302047c435bb50066306402301ceeedcb368feb40642e45b8e9b74fdd9702090a3753c7caa2ce83abc792b9f63c378385218e663752776d6a3f1a6e9c023036ec582baf7b45062284d13f0b5376829bcdb39e8896d038102c0b4a12fb56941d506aa0f4d35433b29df48dab3161d80302047c435bb500673065023100fa963614d301d016b1ea1fbd4849c74d33084aa5ea06d6c25e3cc9788a87e45b184ee91dcb2b5513b5081dea3dd7c2d30230515cae1da82248bec00fd34861e951a3446c8354e2ee83a3d5ed6e732cab4d718d2ac5c4f839c5846c1265a9a8ac67470302047c435bb500673065023076224dbfdd27287a41f64165c6eeadfc0b9e0a81ad0c796603cd6c40d4a53d6ba05da5e9cf742553c49867351790ad7002310088e8452ef9752946a5499016d74ae6c53ab6ae4849ced2c1335f1ddaedf0452e20f3aef96630fd3321311413efe25f580302047c435bb500663064023014a06144ca98cb8ac129d43395475a1e58531bdbcd458bc777cac176baf37b8262d979dfa728245192672e6e7ce710d90230675f6cf5c469a7bfc65d7d753c41d43047c082b118d97f5af875de1c0be8d276862c04e6f8aa346bfa04f51561b1e40b0302047c435bb500673065023100d05b79cba622e98e83ca92543783f046c217cacf24a6dcb04b9766c9fe8da174d9ec6818861548bb34fb570102b31687023007b467696a714b1b462c7229f5bd2c68a3c2416e2c62ace027bf463334647e65adfdb1b1f166a78407ecfd61e747e9cf0302047c435bb50067306502301f661419f63bf4c6c9340ac35cbccfd30db9871a33198f8f64023f12b9a5a806783cd98699e71315718cf19645be0dd90231009b0466dccf6e91b0d8647134ccd3d26eafefb83457898510819ef1e6afefbe4223fd1888b79e67b44a751131d1aacbc60302047c435bb50067306502305e13c373b90173225ba98428ccf828555662cd618b09fb0b8af3c9dbf1a652ca1ea3cf312ba5a10e8a2df6c57abcda12023100eb25f2387f85e5daff509f54b6d9de727fd410d23ef6c406ee0ab379f9e9b02bbb8fd9d26101d46e57bd80d61c7537990302047c435bb50066306402301b07898f27640b70a1bce105476c981d3e9e8a033587990a65a20194f4637639a44451b1416297960db3e56c304c844402306abd2bfcf82c3397ad1ffd44a45dd4b695b4b5d2cf3b3202970eb79a7109c5f3f9bb84774da544fd033efe432d21f7560302047c435bb500673065023100da91f7d7dcaf0bb1528d7e105d473716e6cfd6615ec357d9829f7f8098a0e3a87a88c6f49c532f0c76313cdbe2259eb102307b3ecccbc3a605a18a528b0dcfc4aa58591da493c30564f0aaeb8af55529f14eec7c4b9dfab22510150937f85e3f20ca0302047c435bb500683066023100b896d0659c18cc7916090794d142b7f4cbb8b2cfc2ca734936d9376452b366f6867047fcacdd047456db86f5bde6d3be023100f05dfb6e1003ecff774d41cf00ef280e513edc9b51c66658f59e027efc8ce042bbad5e49d1ad1b267cceba718fbecb780302047c435bb500663064023023c4adeecd1710feb05255cb2cc511c5f8803839dafd89881972820c74d983d81ad950b5768321394ad5c77123ae1b3802302a1c44388547ce20b1c9cc6d34ec026ac5a5c88df262552bd607dcd5167034ec8ec9ccd6248a65bb0ff93c4e1e2ba2880302047c435bb50067306502310082c52372d96c65106dc4a42cc5d025e643be12dd2b85dbb703f6384e3d03d881293f6ee9396fd7e2ffe10cfbdc4c094d02305716d4b3db3ad2f8284a2efa7495674d586b7a6ed7e43954dd1d733649da41a0eeb68626ad57b5b6395f802f5cba02160302047c435bb50066306402300782431effc4780dc0bfd6f65f8d3ca1f9accf02b8c9b623c9ae85f1af1625d1fa4e8b78249a8bcba1ec975c0db4ab0302306207371f21a72637abcbdf72c27c4867d1971a65e6c2818dc2885e33208d12a8f7988b5e3ba49b27ece4caf1d608736d0302047c435bb500683066023100a977cf97233077de301d88450b093b894973633755d8d3d6e9472d851e0edd894c31da5c228626f85310dd437d92da78023100e544ca7965078953a263a8c4ac4eab2626cacb671df6873d5d471d616510ce22a88395417a64bf15ae8e153ba5d167070302047c435bb500663064023006a5752f8ad2f81cb1f5e6b9c96ac484f3721a05454bd6c2d0247869dba562d9058496327bf9f2bff4ff7cbdd70d482802307b2c33dfc94e02479d974115a12f811946fd230be330222f16f63c5fae6a501f56dffaff28c73b96cc4c7ee01acfb8f00302047c435bb500683066023100e8289308117cfea30d5cb6308a6564915f84376fa8fc3df0d5e7be92f2707b36a635dc7914c1d52ddce37dbabdd5d8890231008a8a31df93338d3d43f9ee26dde35125ece7133c59fe8cd70113d3de3a114e48fe181dd6eddc2c3eb378a756348f90130302047c435bb500673065023065032818f3bfc34a80bba834543d6cee4e98a52f7d7aa10b5a104a3074b81ed06c62cce9c4e20b68773b3f5120f45ef902310083136de1bc2e01d572741823d456dd7f48634b9f1629c307f10ceb4a3d918b9cf0d9a691fcd018e88a86e2d1859997f30302047c435bb500663064023056bec513ab0d3598dae6c4fc77e9e4d5804b23fc136ef06e1497891dc469f6cf06fe30a4c1c665b0620a3589055428d702302924d5394a3643f00a2136cf5065e00f0a06771832b65f9be35126d842e614ca265d88210df0a3e1d24d3c4f02c0d90c0302047c435bb50067306502303d0cfe66ded60cc5e689fa330f155e84bd71b04b4db016c5c175d26479a7818aa4de8d8d11ae0ec658b0700b5a584b86023100a6105d60d88a9a38dff5059e2ea5cb98a200e7837e37a8abbcaa9a62998e1a1f39c0b127808368afafb1fbfcb3dccfb20302047c435bb500673065023100d3a0444182a4fa09e95e0563ca0cc875769738036ae19683c0753e5bcebe2fc91424a9eef43ded47162e0a8204d0b53002301cfe3c23e3c8c25445099eb82f0cebd9132b070a78cbdb097ee427b02409dcc5af4eed32ff41976a442d8a865c700ca40302047c435bb500663064023077fcb22e991b67ea7bd5c4572af44403139e4d3f0c65c6143246fb3b55e8e1126313c26c01ffb9bc390e7d21103ff14c02307d3c85ceb084d83f7db6958a8dc645ad781a7ef69a054853a9913a7a407030aa50a4446913ca136753210ae33a2362880302047c435bb500683066023100f13ce1217058ff86bd6eaa1bf1ac0e7044df6513b89abde07b3a03f98560a33e51a79b013856470c777ef74bb4a266fa023100950d3859ca8d36e45f272c6b999bc00cd826d880cebe99523ae1e58b8380cc6d7cb34e472b9a9cb7ce885779ed00a16b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023064dc13331e219857201e1f5176e1ccc1ee3a0fb0b985a87f70bd9f949e72905bf283926e56b12c6d5f4d2f08dc9226990230536d13e600c42ba25a0243254fc45e627ebff9be548861f75f476a5aa3af9ba278464367cbc8c2bb66f54ccc1caa54e60302047c435bb500673065023042b907b8c13eada01b298136ceb96f9a3acf05dc88b0b97c374989dae3bc230f5e9a6b0f453e89d31f51ba7b03733c32023100fd1c87073430ec2fa33e4e58d9eca24e5a7e3842739f78c3838af307461ce202238de43aaef50ecb26874cf9c27bc1720302047c435bb50067306502300c3cfb3f54aa36b49470875cf0f7bf6ea7eaaa1d0abc104a8f99c9464c5ef0b3232c26db842457c05da2604571317464023100b507e6a3c8c363a1ae2b39181ef3b3737e76ec98e73e04c7e65679c636db08801427ed145c2c88f0e553bf8c4930e3b20302047c435bb500673065023038a39a3c76d991a568b9bfc014fe6d4fa82c27f1e90f71a536380411da89d1dae65f5e54857cff44e1031bff38a7b060023100848cc84765bd03f0b6189e56704d2ff668c9b14fcfc1992c17e27beec112cad180ce6ff558a26234b9bad67456c1b2cb0302047c435bb500683066023100ea29364d656589574b5b38aee2a0e6eaa51a0fcab6f4106f63f8620b3ef42eef11c8ccfb335c385c626096cd92e347620231008d3653632d4b697777720924682a2faf76ab9499b7d93f2705bdac27599efe7d1798dd7b93468801fe47d713785644350302047c435bb500683066023100b965f01eeb220e74ce94290d656f16bd8b72572bf9b1590da2888c09b6ce3dc971e9b8645933bba618205c0933fbe59d0231009b24124e27d8a8ed4b67977903f7c4d2f29231de1a034eff2bc5ab29451c689a388c21d9d02329ca18f4514f8a58eee10302047c435bb500683066023100d7a5fd02b25765975ac0161bce6e269199a73e001463b571888532b057855a1aec6dad4a5c3c14f2116eb405bd8d07c1023100be62a5794898ea019fd6379990454807967db3d061bc6881938ca2bde3affe2930cf9f8a97ec2a6b4f35dffc7b4de93b0302047c435bb500663064023047843920d5f9d48d4d2387bca9fa487a7fbb561f6869f20e105aabba79d3e14e3925c41970438a3f4c2fb812370c4aa302306c206c86937944f6be5bf90858d021157e00b07b1eb9bdc1c743466ff0946d0a62c2fbab04905b90a9f48239e2d12fab0302047c435bb50068306602310097b5d05925d47751aed7ae4a01464ea43de6a6abfc5f8b763880eaffda2245de1695a60e1288696c94483a069b962ac002310095e2d2aa999797b8bad14fdc70a35b3a90fef6e1a11ac8fc1cd0c7058c3baae648d9473a3f63146946eac7798450fbad0302047c435bb50067306502302436008ae5a55b47c1bc7725f11256eb6f0651dce0de1fe8bd26d0c0f27784ff91a1db1c0a9b0efe0d34185d92579610023100e1e6965f33d22e206d648387ec65ce4b6dd482432c17ffff2d70613a091b5470a97f66e1a70ed4cacf42af20d79166850302047c435bb500683066023100e552a18352bbe9f40027b9d8f21b808df5660b20ea23277a953689edf1af438a441777d852a26df9c7c73fbfdeaec7c5023100b58984b0927cab6cab9af6bb4500315ff10c459aecb082ff24bfa29300aa3d9dfb27ca25a301e8069e0ce9ea2709bd720302047c435bb50067306502310084212767e2875fad10ae2e2f6c59efc7af995882a51d90623369513e14e5f749cf3695a1e7a2fdcf4d8e2a54ed070cb5023030cd274d298c23313e664208dd7452a2edb85d913abe04dd9490e4d21d9d0a2805abbdebb13cfdc1298387ca42d00a3a0302047c435bb50067306502302627ba34c04f8c12f607535755c75ae6518d622354a9bed44b4aca1d8850fa12a423fcf1cf82a25308148cda66e4201a023100a83982ba994947f2f5ac4a1960632cdbd423ef4a8c159557917d27beb9ff3109b2e2476b193e1ea25b980e7d989e5c960302047c435bb5006730650230150129611551136ad02c2c073ef91f9d0c509aaa81a51553a47b0f9bef6bed1e25fa6600fb87ee76d159877573a7074e023100f42b3af058e0728857d4a80f759a19f0f6ecd5ed1b1fa5f56eed1c723ec1ac221723258d485ef318e7074001879604e30302047c435bb500663064023008aa06c570d134018036e8ea1750c4ae4ef6108f690c8489397a320dba64a0f69ef60644877fecc352ec56ec945e1dc80230014de4d5230a075ea04056e5c80f9dbd79e0e00de31b97f6322a06906bc44f4b20687e2063970556fa795597dd75c44a0302047c435bb500673065023072204d9fef20efb3c4917d4abc32217c82079cc5a5733cc06353db67a87bb28612bea087831496a8ad274bd9f74775620231009289e32d3afc791f125da5d5a7638701c6ddc8cafe08b6ccd79d5ee7d3b21721bf5895e5114ee9a23064b662bce3b53b0302047c435bb5006730650231009c07d890d34b18a5bace97866834afab3733adde5283fe9c389cfafc12a1d95d2a4e892076e410beb7e409587d50de9e02306c013aa16186da2cd685e9a9ecda8d5e253d7413cb62f2849e676fe2a7fee8c55a86fb774b9ff98432480ec361a5c7450302047c435bb50066306402300caab21b6726e450c60902baf0bcfc257fab0aa8051986f6c33040185b5fe591fc129409789ae61db60687892ba4bd3c02301075cca841200baad514e14749359e6a2a7e49b8b01f3e65486a726182c56a0fd7ad0a485083afab97ba8d76b1603c2e0302047c435bb500673065023100a2e48bad855ed9cdb254c966bc68e2e4aadd40ea9b7af80d3d30ed45809fb0c18c19696f4fb2111082f195f7061fc39f02305d328fc3a8b9b04408b3b14d42ce6ee48aae88309f00cbb3e1808ff07b0e32ab23d26dbd27830bc7201aa8d6176600150302047c435bb50066306402300e16d9221cde3582d38623afda4127da55f1455de347132ee94e0df15ba0f099dc85d00c8c9d61df0bfd15dcc167633902306567d146339a27437df07b7dbd7e75caeedc757e65d4f303f5d4fafc693c283b732952369520df065345d73d020a74470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0ad8ed89bd25ad82dce2d421268b09fe3599843068fd9c349bfcdf0f51ccb3706911dedf68f23753cebedc444b41349023100af41d6a63a0079f405c20e24f0c25e7dfe9970ba192fc03d78ce179cee5be23b0f98953552c4b9e7fa668588fb4e27320302047c435bb50067306502303113894d837d1b6f6ed1a3b610de1607487f9cc2a062d03834dd378d62f6c43ecffcecc55b42a6178528207327488a11023100e0dbf3e556121489668834453007439523abf120fa44f631eaf00d2e63b4d5dac402447cd8d79cee67731baadb7ce08f0302047c435bb5006630640230390ac51f0e282246f6300d31a50b836962a08efd897de3e7a394aea0528f3d8190f186dc01709e193903e5916790aa8d0230653a771978eb637b487744553846aa54bd032ac711ce569d2c5ef060e530dd76869bcd99a77f7697e2455e037c90b50c0302047c435bb500683066023100d87db1db3f9aeb78025930f3ca6c1534583ffc738c7d1a2fce915c528352993833dce671ef016eddcabfdaf5134248be023100f167359cc0abdbb78cf9d013f32a5ea07b84502f1ccbff171165a39e57bb239cb31bb041e7c20cf51b160ea98fb938300302047c435bb5006830660231008a5c3817c1886fbbdc6889e07ebc2340a71e8d9df6eecac51bddc25f37af79e15bc48d0104893fc273272f58cda64023023100e1f8c4ae0b3a9e4213fea3cacb38370b7600d91ff5e7e07207988b7b5e682b1550350b43a6fefda8f54179e90a54686a0302047c435bb50067306502300d7da9095beef1a86173e16bf5cf004465adc0237b6ead8570ac10e7c1b5c0fc8c4d836d74a4a7746c724ef6acab681e023100d78cad155f10985a47e436e2656e4ef0699c809001e67edb3464e34726f1cf9ab00c48f9eb680a3bcb8fd35214ed313a0302047c435bb500673065023070a5234a7e7b099c1194e2c9701343f0cc3ffcf3a01876218a8217fc07e89ea88143cdc237f5321965f8962729acc8f6023100c109b08deb2f16052f66db41a50cf54590b06604383f121d76765a72711a0bd98ad9dab6ad070b922b37dc239ecf10140302047c435bb50066306402307dcd9ea5678e9894dbec37ebaa2123a6540b44586727383412a721ae0e2fd0697e0de2b2d2dd1b0ba69a10b47d72dbd5023050be945f54987019b09d636bddaa65236c80e25434a6ab5b34407af4c377ff4362d381728e3b84a98eda4c35674ec8170302047c435bb50066306402302c096d7d24a14a0f2441e5d38cc98907f202c115683de49ed42e488607c36bff404bd3f09399648eaf8d019d07c5da6802304c217715f8b32e4814fdcb4110ef71bf66fa5f2337deb42b68277b7cae2e37354d0a0e9d813896b833bf2fb8761fc3a30302047c435bb500663064023015ed4eca7d44df82de1e412eff9ca008156ca8f13c688d2c28f7f8221145652bf1e8bbaf55d3bfbe1c453b49e5a6aaf402303e602e77bb579981e3adb485c3e0875b44e1c047f25a52d5cefe8f601c8a95474308e2b159fd23b77bb3cf0db3dc4d600302047c435bb500673065023100c102b1165d2ffb64354be21f331c977adbbbce24b935ee2c99e3c1e4008202d8e1f93817a9286ae48d0dec7a6f046f06023017d7ae04d3e25e5175299cc3ad988a39ea7f685975cf8f744e1a94e31b9319185b7616c43ceda86d16d35e9abbeb9cd70302047c435bb500673065023077a56f33b0d9eadb68ec8614a9feddcd17f4b06a121038a0879b0201bf96ee3dd44cd7a97f9d6cb5246807e2a07c641c023100f87da67de4ef2d14de4c7fdad2d1f2e5612ab3f68face5bc2a9fdfc289b94378d33ccadd520cb69ab19941c5f2f354380302047c435bb500683066023100c3c76fd300e95d9eec77efd33b5b89f25666badf5669b731aa0f48ef3177532b2a4cebb92ec2eed61a4c378633049cf60231009f759b5bb8e47831cd09ef629d5378dfd61878adffebed8fa414a32f6f88a341c1f0971b41db1b488833ccc19a5f3c9c0302047c435bb500683066023100d55eb6cfc73540046f7e90794f23f4d212109c35b090ee3785d2a2923f759774fe6e2dc2aaac3421608cc4d996bd814c023100952b63d07ac840d1c253fb37588d8cff4c941ef4b6540c25e8406330bb6fdcdc57812bb2eb30c17bdab41c7bf1c3f5f30302047c435bb500673065023023b7cbb234ab2a89edb181f65f54e1abf40bcc1b2ae2b98eb441d243860aadf40edc57208ab011486d1d4ea49526b3d5023100e523c0abcc9b2e8c8b85e81f598a7420ed8b232f423bf38c404f819e6a81da07dd1e5c53e1bde4549983d363721edaa60302047c435bb500673065023100af4e3bd9d63abda44d13354cabf0006c54ad80b29e82f7e7af55f0cbcea2a6b59acfa08cd2d25d71af6229b5152a5f3502302f3a2f07aff69b81dcf7f03f35f36588b8cdb463f66e3ed2c209f6549dde4a6200278c3413cf6e94b5e174ca6c506eee0302047c435bb5006730650230498dd3a15a98f4d0b3601e9ce64afc12bf8e8fc83dcd26067cf29353c7f2192e310d4bdbcd455d9057c141236e0614ca023100b3cc0e99ca3c26d4e50ae5fd2d0c39d5f9d4bc8405d052f700b19fe3c56f068a73150c9aab011f197ac9d8eedd873a8b0302047c435bb50066306402303cdb5c74d59858ece3f0950503ab15988064b3905ad09c99dcf99cf29ee9374c0a871191889e101a6b08a9fd7f32fc970230427d73b0dac68ebd688d3660459371971dc913274eeecbc0e0b68f114735bede893bd685d67806ae25f9e204fab9911f0302047c435bb50067306502301181bdbe67b323ee8bf67f4a0690cab1a1c48b77aed3171df79ad06d1727a34ea1d253fcdca523ebb4a77e7f6749d0d7023100a0476054b27bbe24d5a05e2dd2a68d9efc5cdf9eabf324666547c5de111e7767c9ab426c41d23b6d8a597d086298294e0302047c435bb50067306502305e423f6e5ef62e04a240f942de0fceb09fb1608e36a4193c15fc630d69f1e9c4ad9e339d4fbc38325dfd2bf23f14cc1c023100a3aba95fecd6d0040e7e809eaaeff2dace6fff7dc1cc0ddc8e637de46007efe54565dda951c0a9a0b78d849f000fda9b0302047c435bb500673065023100c5eab83f86e00600e51afbde4320a8282f91979a7f14a1473d718701ca4b88ca0c6c98bb58721a911854955ca07b518d02303ec46ce85abaf81be8c7603db7315eb4826ff0a72a3a4a33d2c74062958b3476b649ded379913aaa42b5fb14d579eb220302047c435bb500663064023052523348436153da89bd6f302caf0eef27625f951a6c4aefbe1d5a0a62915e3107d56943529d305b1fba13d1c18c66f80230251dbbcf64b34b17946b2443ae1ce39007e7282145d30106720076840f90d8c382a91e916aa299bfe76a9c97c3731fcc0302047c435bb50066306402303a59eda4a6e2165f78870c4154429724c16d1975edc58f9c19f2e8c25cbc12a7695e05356260aadca982aab80238dd0b023067b352b52d32ab8190b0b3f796285836989c532c73049b48bba216b3bb7b7101415669828f38301fb9967d1abc458a960302047c435bb500673065023051739713f6272e4aac83c032d6f045a689e00d0d48fa074b97e1a703a70902cb54659c120ef520ccbf621c18e653848d023100bcf2834c9c1df69ab224b947cc1ac917a732201f224c9335d5183e698aa8491a32f19b00700f0278f855565d7aeaaaee0302047c435bb500673065023019203cd877b38de3587866869d67d53fb501a8bf7989b9bab5e721263eacf5eccc2a2ce37fcb16a6be11d6c0f95b9e9e023100d3e88a234cbe504e3264e0dbd3bb7a2463bdc143844cb869a02a74db9ab740d8f7fb83ab4a0de1346e446568a6898ff40302047c435bb50067306502307df0e693343224dd4f06aa0bbcf84f815c3f39a8bba8c32d81082d3a77173fce43df246178f198f666d03af6a9814a39023100fc9fe564024d14a8c37d73e0d2b6fc4c52b6486ff4ae0b39e8b5f7b534d32dc2d1b63bcbed9d3282c8bcf8c12aaf10b60302047c435bb500683066023100d95de4c3ca92cad3774523b939274609ed5e7e107773fe00588e74287367707142afb5bb378217d6831f3718742de883023100a9af48b5f7734384813773eb4078913b40eaabcfdcc21062fbb0a5eedc88af9bc213012f00be473938692a3b0efb8dfe0302047c435bb500673065023100ebd3a0dbb7ab38c5e308627855cdaa257765b99808e9d528a644c9067d2d1e3dc46d3614b328af97906088912058dd2e023061e8dcd34358b680300af2fc408158a532fc073e70f619a10a4ddb8a99371aa019807ec576d8875ebf68ecd7f706da270302047c435bb5006630640230610f728ff8a48cfdf48192872bc84a7136fb4b6ee42b62222950e4dd069fe070f3cffc2177f75cc7c53d93cca54c7964023067de8d63d883c51a9569588b602a43f24d8d6d7c5cf3a8fd825428ab8bccf035b1eab3c172fc71c53d1dbb7713f6b9440302047c435bb500673065023100c3fdbb0af2dde933e87d8666f70e8e4fecc6d4bbc6c48236035c4bbfccf0ff66a56ba6dd0bc9e5d55e964e85f222a1240230278f03ebf32ad82e3151824c708255e331b5089171b4d7ab3af89c8a6a1c35465c9d490ee3c9f2b526ed2c80729d0feb0302047c435bb5006730650230713f9a964636d90c6ae3a8a2e501c4b08db5a82f198431ca9b7bd5ed7dc358e94aa885843f36110cfb4edc6f20529e77023100866499d6e2e8571def4d938104686940660be57455c0cd5713253674791835be59d26d286fc365c74888aaf1c4c608400302047c435bb500663064023050d9224af1b368d63cf3688b11c808476fc64cbfdfb4540c2768d24a6e43c4e8d9541198867a397df174cf5bd4b959e802306c4ddc770a628e296a070002a5d07483cd46e7cf5f49ee425d420014647220dec6e22cc3ee79d7601db02fdb2dac1a070302047c435bb500663064023041bc71fd6c5b92a5fcbb23c8f65daff8dc535fc70b2d5c42b30f11ce4dc684103c6e215144d902c97451eab3bf7db8c502302a3a086adf0f42a1a990a53784104e8492abd5363c9f8d8e8130c54075f14d3de052bb9af749c6586fbe6bfa94a588050302047c435bb500673065023100d915fa56fda0935e06b2274d3c95a15ecc48819525b0e9bfcec2100f6853a6d70a2372778ef142fc0ed53e6e3166cbe602300ef39c8a5af14d313ea4873d478a79f348dc7ce57939b7bcc1068e9ace057fe391137a26f9d7d18ba8de9ebcc412fc290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300e6a33598d7b47334ff566a6a8155d34a72bcffd796a6a54c3627ba0be94bd7dff904530a13aaca65bc95591cb06155e023015248dd811493fc632f3cdc2f4a261f22514cd058947a18635e02dc8ecd17f2c27a25856e6b197f1286c8d71ec1c9afe0302047c435bb50067306502305983e2a28ce99e81bac7c081dadf39657bd48c84408e1105f711d24e6aeef54908e9f03f2905471d7a7ef586a18e70da023100daa67a4897a046267e34837b6df8951011d02efdc9f6df4701311c9dd82ea11a984a33c910ce207dbe5b1a1e4d5de6cc0302047c435bb500673065023036859dd9706b68450c280c72780f5e4706d77b9608ec4f530ab18dfacb2353f2156e7b04cf452edc72c90cf7744debd4023100a2ef70b567793e90196f071dde06e0581a71192b818dbb732edadd25ed2148c6bb83af77126c57d376ed05912823824b0302047c435bb50067306502304ee4b71324a0940bde9e526be53e2c7c21486c529440f7d6b00af298496031a4b70893d9de96d5dda029e37f3495db86023100f86be7e4697adef3f24e437d1480f01c021b60bba37728e7694480e28c3b148d05527d1414f54f8a58c0cbe3c45c99cf0302047c435bb500673065023100a5cb2dae1f206026822463f72b476138099ec3be68c25a9b0697256856dc963a060a37647e3155c0e1307fcbe88e629602304f5ccca3d9fc184a40d91a4c0436411f9d2e4a390f84cf9e9a11fab31ff2fb1989597da8733aa3dd0f60ac90516c4d7b0302047c435bb500673065023100a94595f1296145d9107d1a3302bf5be80007ce5d53d37b16820b5eaa686fb6a62c9d3ce09002534f44746e026b782e800230760559274a63153c3c935922b6041f40b0792cb5ffb0d9fcb901becf55fbcf10b0503f42900e7eea9bb5b58640396b340302047c435bb50067306502306663ef26732bc0593e5729761875da86428b26e1af02b71cce4b263b8796d68c2d4cf20e006433b6c22b236795a0879d023100ad48cc8ca9e8060b5ce0db246711545df8e1686855e7d6b0564ffb86276b4f83ee22478d457302f000f754761faf60c40302047c435bb50066306402305b8523bd2d267dda7bfecf65856affc3105724e9d643fc6042a420a63b7821d3b731818075abf03bc74e923c7b995580023019bd687b06d1c276023f1a6e6d04455a94b9e597dbca448fd46993341c93376b21bc58f755f2a279ac5467ed663b464a0302047c435bb500683066023100d75dfb092d40dd45269a18d27cebbefd7c07e991de3992c95f8c1d57faee548702b9e882902cbf298210fb63aeabd618023100abaf83a14e66a13cceff8ce8e2d8fb9a036027c81e8f43ce154f4c72f55419fc86c4de7985d942c7cd819bc8cfa83a140302047c435bb50067306502302469293c8d5d1adc6c1c7178d589a1036fe10688171339a7e3c23181159fcbedefbd25203195840602e2055e8f201b1f02310091bdc78682daf21b00383d3fe6972afcb0a98f7387f63ac4dbc85195af466b93a13a672f797353f9ccb04ea7ac33a8520302047c435bb50066306402307a5da3752304416d83adbe74b800d308811e02ae8e2877e663a33652fc3e001f2b99ec25905b5f405d651537df9b93ea023045127a01753f85e5649fa43d6b50ffd21d8da278c07587336ba801d630647aabc1aa7b7fa9d085927bf08839826795f50302047c435bb500683066023100d5a7f969ba7374732d1183de3bc0ae42b412303475c863e9494124b0037356b3a40d523bf495aee8b8a53e7dfd0aa3f2023100a40ba322479e542f0620a3974cd0602af40b2d31e2565b1f2e86cdb377578921236fff988ec7f8d8cc6ace97f9d94fea0302047c435bb500673065023100bcdc903f6aef9ab02f828d1357ec75220c116adb20835fd412ac294f6d94b59f0139733e32f018d360dcb3fbb0644700023001a3c0e09faa8881a844be5b2d53c757460f3a6ff9910e4825d1472226d8bfeb23dda6a8620bfab8f3d374c29c79c3fb0302047c435bb50067306502306ff0e575382f30d2df2c771bb43b3de350930546823a619293a93ec8db767dd506118a7b1e8c894034a36ab1495cf2bc023100e9c542245bf193bb1419a3d33f61cfebb0c77f241d01efbc1cb3d90d2145db09e6e66f95a7072767b6b5497d3fe429cd0302047c435bb50066306402301a771c15bd838aff77d701d08ef6d255974029bbe22cb96c06a1dbd385b78badbe4d20afa804fe263afb77fc343b8902023021e85bbfb2513edcd06367efd0bb88aebdcfe7f0cb2788b681ae8f41f610d8650db87953b895da9be4b7eeac778342140302047c435bb500683066023100ef5f6f507bad94902f76426b231c32cae7d9c62a012239e33f559fc93aa6ac55a88c8b254627c1d6133777dffeb434450231009fb4d063748f3ad0bc3c6a7f078c62e715a2bf3db89abf0483e6f67f0b77d36f8e9c272b79a1830bea00452404fa61880302047c435bb50066306402307fbc251add2b4de8218fce6aac9d79b1f6debfeebc3daf229d7b66a226ae0093df48c03f659380f6a37ee0b6bac73d8d023068fb0b3c9b29361999933f56806440ea5c9beee95f56b426d1d60a48f7853d7e690587e90bdf0a6378ed648d86944d510302047c435bb50068306602310086441cd0438f7142f772e50cd7bd35410dac48eddebef71624b02b9dd0f9a36209cb871c6ba4e0b4ac0c5d71a4bbe8880231009a23e5318278d367f2d97866d2a6939dc9e27419413a0b58b1155f3f069ebb3983cb39bad17af151afad08732fbc93a40302047c435bb5006730650231009f9faa6833182ba52ac042c01164346a4892d43f3f790939b1d958bc873169185cb8fbc98584ff7099cb29e423a98ce502305e70f2c1760327318c817a380cdd773800b35719d17d47b2760e2a753a3a325627d5138802002c3a4aa04ee385e307800302047c435bb500673065023078779ea2aed9a4b1eeb1cea13f77701cd001545bb6925f7a9dfd16daac769502298843127f56156bcb1142aeec4004d2023100b937308f01d16639ddf5a2d0e181db0041edddb2433f12d3d76a209c3b600f8ccd5207ecd054d383867dec2bb9c029a20302047c435bb500683066023100e5da9df6126345a1b3babba6b1bd38c838f7be4aab85cd6f4cb722a5b5254f13a6e1e73b92b7cd25e3674e6890026b6a023100ae32bbcb85b503abd2f81e78e5bea6e9c047ff31be8e136258e1b7ee72745179b31ef3550edc50eb5468e1086b4db5c10302047c435bb5006730650230732cb0075666c85510777a9b6c89a250084a4fa3dd61d0e0bb7ed8811fbd6117b2a503ec1f59c63ec10ecb9d6362bf80023100d92b9abd6cbdb9d7ccfe628093b77ebde264b910cc4d1f7ec56e811c358025dec790caddae977094e6cfb757955e39fe0302047c435bb500673065023100c35f115691859093a2d9ea082af6ec26c25293c48a4af7b1d6e0e23c32bcf12888be30e240a3f653a77beb0eb42c2c3e0230064773ea316de4af1c52f881fac6868b931e2c44a380c6e82cdd96bab9d3870e4fbbf253be7a76d92f488234bb4168870302047c435bb500673065023100eeb3c043bf7725194b49208eb5d4fca627078d0fd2e03cb18b7202c5645c68d5fa3132e0563f5f84d97b57c262a8c5bd02300297725d4aa1db82ad02378423db8ee4a3cf032c61a9bb758ebcaa1cf755b4212d5e383ec7905ceb67589bb4121ae86e0302047c435bb500663064023048832c995fd7d0931d9e35ed0d4af4a8a965ebf5b341b6c18ae787323d6ca309f2be9b4adbed8ae2823abadeb86827f8023040612e68b3f70e2f7bd049a5625ac2d088020bf89b3cfd1d4fdbe6ae988cc716afa20863e7584f2b6c43c9cfb61b78e00302047c435bb500683066023100b7c400c2aa2cefa1c709d5894a036c794c15d5dac0923ca86f43bcdfbe3391af90738f1b46e9bc1bca8fa4db5f1bd71d023100a4fc6585b95d9d7df72068e192d6f379119fd4dc040046329d7f92dc04992e60d9e6324c587b39c9568996a85a614e0a0302047c435bb500683066023100c895f59d08028a7711f4b51950764feba8ace3111dbb5dd15ed22e7b6c00c774eede70a719ad1a4d71ea8b79da7ecc59023100acbfa4870dfab07b52a4a67b9f0e3ffbaf669356fde90fdb2890f146ceac4a8dad370b28664575d13fe91b55e90f43c10302047c435bb5006830660231009c1cd882c6f72d8ea69a770caceae9c875f248c8b299816a7bafb0daeb9320e60b33c391a63d68f015eff0114e9961d9023100fcc67f7de9d3927c41b5a3ca1f06026bd66fc400110b5c1500eaf6086578a5157ffd4790eb4c08953797a24dfa50974f0302047c435bb5006630640230374034c59cf031ac89199f04f39300c4062ee47606ca7681ab453e98be2837cd093b00c3d48e44d20e41a9d9bf81b5b902306d8956de7bec3f3c33a0919324596dede627f640ab81b26be96537d90b0041659d76cf2f52c4328a15869108026194e90302047c435bb500673065023100949a4df4a6be413c1187403ec9c33d9875f325d7841cc47492035ce7a1de21c4dc0d9f5275e7adbfea733f364f3ae163023036aa6ac58fa3348c318de2a2c7332ecda96d095e89d33750246229d9390d169e7afcd4296b6f78f31902be5912ef06700302047c435bb500683066023100cd2aefafc5369748c84815e999caf8a392c94b99482296989889854f32a075b0b371d9fb1e82ded62e25ab9603d7684f023100bed504c15bb7ac912261b03ff2d8044716eefe44077c92e9f2251c6bddb23f421da639da6459f12926389bf1d95cc5570302047c435bb50066306402301e219f99ad32cc284371435a8cf9931f999c5c922b4178037f8dca3f0e0f1c67430ef54fc546cc1f363d5b1311faee85023079c7bdba07f511a3a9768efbb135a1f4a088ec9035b3e017335267686a7f930e1b2498851e3c7dbeb7a75448a54322f60302047c435bb5006630640230484175017c03d39465f8711c7e12f7001bc029ecb46cf7fa30380d792030dab3430ee848947e0bc35fcb66150c8a44e8023051b4ad2a6987d23d821360c854e017f1bcbf92f08ac17b2c8c23543d59d69e72876b823288d88917df286ca96537d4870302047c435bb500673065023100fc3d48d0e27d17125d2854293e6c42bde9e2c94a9043237ac6f076195aa14e566ed0af75b678de3e8ab1c00b095b5b7302305f2f752736ae0fe05788034ede17aa3f27cd52ddd194061a37aaa66f80b3621a9770eca235ac3ef5fba2d23555763cfd0302047c435bb500673065023100b5a6d2e67958bd938eba1d3a13351966ba3aedc71b692643e31d09731466eed592828365b2562e8b9e2254f20da695410230327d4c1e84a21e8572dce193282d6c8e2d07f716d3270767ae30cb7a1e5360e95ac8249cd22ce6984bb4a771fa06c61a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0b6b467cb75e21f72aff53a96deb0cf182594e71ab1094be8a9045d0a1270da13135a2c0fbf4394932bb15feab2ad97023040d5911cf6d6766167490b5807a2393376dc57c28490c70f20fce974b524428be0cfc40cdf6455f9770eb15eaa268c7c0302047c435bb5006730650230197416b8b8c9e15c018bc15022e17e126febb4d6a6a8147285e6f5013a0b94beb3d78ba64cca975a8ec7c5b973bf6d2f02310082395ec1e08d8d0ad2fce9cb0882698739a92bb0f15c7b77a391018bca1110a6e1cc86c3e23e1c7fa42941f920beebdc0302047c435bb5006830660231009c9c37fbd37af4b4ac7252212c3c966c794349ed7414a10ce79094f1c4560f3284d0c2d9fedea9334a44d1a21afabc910231009662e7d522ceba36b556d8eab5b6243e22d24d5b3edc35e3712c5824c6458670d4fce979a889f45e6c18f7148c899ddd0302047c435bb500673065023100a22246db0b6c6d44497b03e051448d7c9c264c5545c42577e254884f6860a9bf6108bab27a41b1d4f2947b57324d9c88023004622b27505add1a5fee9ce1957c7e70111d6392b231d6c4408bdc672431470da2e90c338fd5a6692e597cf5f63eff750302047c435bb500673065023100e6bc997a73da3aee2c1a7a1a916c9ebf5f33a5e4fe7a6306b1b6188215b43a202937afa08d09181a5dcc9a83995a37e40230743d05bb7f48204aa6d1a2bca7191b19085827ef6bf5fe23204add8fb34f333b57b2fc1a2e8f835a69a18d3a37dc419e0302047c435bb500663064023011bf9dc1e66b46d3d9cec80814d53015d2d9cb4dd225f1a0fd7535305e0aca9270745b249ed8c92fc52fd8b11cb3ca0d023022932c706386472e086cf37cf6dde71102364acaa674d55182acf161207fb1f11285e7cec4193051cbc273e296e8bde00302047c435bb5006630640230645d15f467bd566e07776983e0030690cd2ce2abfd216ff1b7d39e4f8d6a3e87295df78a40282ffd537060301a112cda023027b74ee3f3d3bd9a05fedabde332de349fec46d43f410dcef34eb3ab2a955510fab4a844364cf027c82986a59b69733e0302047c435bb50068306602310095948dd5c01ebd1f8e477c17884e58bd03cd112aff7f478e43e549f199132b6b0b0f8c89cb3c1b8a577e4d1b9a48ad0f02310095be893d9cc42d0ac8df328ff3df3208374257afe28d8829754efbb17eacf63827da192eeaf679fd5d90df2edd97a8f10302047c435bb5006630640230793230108bc8d4acee6051cbe0fef08c17aa2b0733e62e4ea2549eaf4e856591ad5805f73bc705f1aa44c3075d6e021202303853a51529079e38e813c8329669d6144cda40675200141ad5830dcfbd14b6797bf543448c2bdab19e8677e8833dab5d0302047c435bb500663064023073d54b833a618d28b11e1b746e3576c10abf0d14d45e090a42bed90e158c4b3deca7610d3020c0a773f4b80873bd2799023064d21991c692d4f91f2cbab1b08a8a68f1e88437dbf4035bcdc4b1c1a9a3b5015c4f468b95629aa0bb9204b1f29a9f8a0302047c435bb500683066023100823961ef44b0098d5e4e691e56468e7b85ce1251ea95a207aeae192310b492400d78665b54e180b8ce68fcd8e991a6b8023100ce56692b7825d8adcb6d19d9d6eb4bbd8739cfa33fef7b88bdc8c3ea9bf7a73f582a4c03c69d9563594cd1866340a7930302047c435bb500663064023070ee297b1e9794c5c78b1a8f8baaa4c7cc066b68e0d60d23a7161a647b460a391870f387e519bcd20d26e27bb03172f502304a77cc91d45dbd7a731509e0d0de8d4dac042a2d59473d1959e30091271797184f6fa071f0f0eca2c4ae3b3d5af7598f0302047c435bb500673065023100dcc65b5150194e81514bccd9cc813000759736633aac4bd21bf61522b44624b5c6a9272af81a054372fe27dd53d0f0e202305eb7d981eb753219dd07299e4692990206900dc104d15b5608ed94728d178efcb4d0afc5a193e4096773eb2517bb4e1b0302047c435bb500663064023023fb17042dc3c2a36febd5736b73948053bf46b7fd3da4b6acd4596f1cf50d614baa61211f86462a1eec1022166c2fc002301c9e6f121fdf6393176d17870575c132774a8b5e99a2a83fef2f392ed0ff87d9ce7e8df8eee1b160e619590535e30add0302047c435bb50067306502301cf81b3ab02576b5c47fdc8f0a6d5dbc8e2b9668b45348f28081bf163bf04bf16c43911ff303a6bb4e93cb39b1fd8426023100b03285ca5dcd91096639db1f5a5fdbf91e04e808b2759c48f65b8fad9c3f4e28a4f5c827c74a4b8548a09634d09931600302047c435bb500683066023100ad2775b64e2cae2c188921433b898bbc93c2fc94bb438843e5a43596d4b907bf6cf2870ee5e81594fbc26deb1b8f35f3023100a72fc39fd4220601beddeba00c0f280a6773f55065b673bc5ac236381a88b4344cddb4995da87d2fd9e94af69e1284360302047c435bb500683066023100926f972bbb1789109a0c6f3d071de87761ea03459b8bf2cf328e40cbdebe5fcfff385b9a896cfc272d8fe3ead875a98d023100d6ddfe24b5cdc940da56ed138115e2c60cdb50611d48ae5a2af109c2883c109df899fdf10de4fd2e1d113020a969b91f0302047c435bb50067306502305ed6d97ae04ee50e943ee9dba7b38d109858a0bfe168a962b67300fe7fe6f04d8cf15804a0a0f2221a221d03d92db23d023100ccec4ddbf712c15eb30b4e733c81406f04391025109a67a81cb49ac5cd3fc33e003fc135c4c4123e53b6ee8989eee2800302047c435bb50067306502310087dfcc2de7e19fddcc1647d62b1d7b1238b95abc9f5f7c1d6a01ee21a41d069eab955e4f1d0a81b59bfaa7f11c98e92602303f6a0a2c69d4f2e34c9a211e5011023a6bed0cb13346f7194fb4f8a1e90a6bc8bdf0f1e2f0bacd8a352b287d4ff5e2200302047c435bb500683066023100cc8034a6d8c9b0f073fb20eaa660a9066c7c71a59dc4c1a2ebe49e19919662675321d9a86d30e9e3795fede5d26d7b8d023100fa83cc61eca0ab217650b1f6d50c92f932cbfd15bd2c50bb604695fbfe1aaf2911ca68cb19ae3a3e206f2f5310d740930302047c435bb500673065023100da67393515df33d017719d68262eb8f166692f877deb99dae6ccb86bc91ddaf51137c05c482f8ad9eeaebfc91a1216bf0230519e7b1f9d5b0d5ea133cd8610921ab0655ca0665966e723f6969623ebd46bfcf21ccded068fb0262fe614b2310dc98f0302047c435bb50066306402306a76b174f296245dd99a4ecb81931af39f5d70d4acf0ad34585f59179c0026b710c9d9491494af431655eee488f93ee602304be11ee6342b44acaad5bbd8e8f341dca8036cf58aef057dac7e1dabcc00220de1a12642e4c89f8c2ad42c2f4ddbfcc10302047c435bb500673065023100e54de4f0d720c76147595719f0ebb0be51f16da1bcdc2a150ba7f6fa8fbb693d570a757ba661777ed03d4565b21025d102306cc48c2cfb1ee68844cc868d3c08f634b5c0b80b9d2ffcdc86e90a617d0bf677c45a314c9c1f392486a4c9591313e65b0302047c435bb500683066023100c7db2efe50aa3f25c02dadd927a2d2cff99153124e05307a06eca49d368d1259f5b8c71747b73e5ad630a358b7b3ffe9023100de42f7f15679ac558c687f697a75e0ae393efffcd652f67e7961951bdf20e0b920b3b68f0165c5bff0c31cb5bcaff0a80302047c435bb500673065023100beba452beab0c0f76535d50068ec61ede5c1ed255d3e7a2a644c9808a22c4784a42dc4b1a6b750950bbd589273d68187023028c79f3c0b12b26e1b80fd0094b09867b94b17699ace7ebeb6c595e319ba60e144395bc5c8505dced1d9d4ba0042eaf90302047c435bb500683066023100f6c76a5f6040bc3b8e06c1921beda83e3263eb2a5fc791f111d6ebefd566c6079da8092d5e94e9416662d752e2141563023100f50b123bc3f8e618cde6920218c4f5cef7a276cfd3030b3bb31b69bc042cfa1090ea1d378e18fd6cf5a75a5228d73b300302047c435bb500683066023100bd599694f0351302f7060ab019098b4c55ffe5e3147c7318b37e090b6c7fd49143a847196da00ed3def5e1e45ee1c2d8023100b068d52924c41edd156564f503991ecadd0598af6a60f8c4ed646cef2ea4adf6f77df184bb1ca001d1109e607bfab40e0302047c435bb500683066023100a84ab6b031ae0dfeff459c3f26879a3db776da4b00b0e81d83b4cdf415556fa8b11e662dcd1ef903bfa80ccefa6d7b2a023100a421b787c7ee21710ee6446a8000c2f250bd1ec39aa3d88cdf07503b25160b451a22a6a4614a00e0244aff8af4a273870302047c435bb500663064023011db2cfab5634b3801176190555ee2c1e47282f5f6a6835b324e3efb656fdf048e6fae2e57a39ec19f507a94ffcdc6b602306decb4721a026af08365945b69ed0c42e4459e4b7a61767f4dd1f2478f9b7b6cfef4c3793ffe0175ec7615c87401b8a50302047c435bb5006730650231009fec2db9b945cdb26d9aec5fe36f76640d8614a81b0dbf4051b68154f0fa6bf135957882778cfa4286383dbcd4a62d80023055348331c5dce6b710d4b15f82de6383513d536079be75f74f932c5763812a9c31f52165a07978be851e81e92c17ff9d0302047c435bb5006830660231008f683cc59be93492cd5b19ec9c0a315a924cc258a816e368b8b7fd14a8e49ddea6d5c0d4672622582d51bc517f3d2a1e023100f17f765f6182fc78f4ee9c6e4b7389f61ea17847e4e2d0bf9980c446881f3787964294d4741757a824060abcd0ff22380302047c435bb5006830660231008849549a41d92a098166731947f079714c4739c2921723e06e5e03c2bda9ca10615edb45b96dcc3bb67d413aaed14932023100a0d631c6c54a6e54d2907b3a051c6662df4962cc621b2c4334c44a0c9ee55831bf51485d9d6a94def1b7086a483b77750302047c435bb500673065023100a3b3257d98fbbbd99786fbc6a35908aad64105af8fab7430f7fe09902ab7de772f3658a0e40b943276589b5013981c49023058ec9979e4ee0ea85e383cef2627d730be0c4f9c5ef453d7abb8bef5837504cb5915b24493554f2cb6ba45b2777082640302047c435bb500683066023100a3fc7067a685cb44f4caf780a5ba0476c20235e44f0a7b52a0d533c0074889d563d10a4d1856df5e7fb8c9f97ea399e6023100e403f1ab4b3855fcd182c7c287ecf19db7818a82283d4ed1fe7b55082a38f85e054e7964bb51aa9a7669d86f616c68bf0302047c435bb500683066023100e62de1ab0f0da27c48da064baf61345dbdabb58a8c2bdab12c46502aa08b96d871f9f65540c92cd761c3ca852d062cea023100a8f960e9aca165739ef72d75385f565404226cdca641a87d4a94cedb9a8543f3540653f961553a7a299428df3b8b55f40302047c435bb5006730650231008fd818ee9c087b95df95dffc10b11a631fa3421188fcfce248ca648378b09cb133a743515089333de210fdd8cc1a4f6102302392feaceba8990ef033066cc0998561bae6429b0f3d97047191f5af3129f98f539e7d09e5009f96dab079c92d9eea840302047c435bb500683066023100cb7d6767c295b492f4ce94eeba1499636fa2b58b8c78f15f45186c8350f5d967484d348c2eb0cb43a6045430bf7e1aab023100d87018b10a9263da0c0e74b6ea0469f41821800499f282cf14f88d62d38ebe60e7a068ce46e1a20bb1b8d1ee552bb32e0302047c435bb500683066023100c4a4b4fa4425b313563c7196f2e1abe86e5cb0898d9e451ae9700fb49fbaaa754093399eb2ba8a97e95bf8950bb33bb302310088caad5b45b6ea643c5c2a68da04aa139d5d9f6382a1144de7c7ed7ddf710ab05021db3d4c4f90dafd6d6d11c1e802f00302047c435bb50066306402301d7410ac3de70956bf7715807a541cd55733c1141c9becb930329d54023be1b20c6a506e0ac9b6b6b278a7c582047eff02307972b1ed16bfbce7e2c7823f734877aae25db1d852fdd2192a9d1ace467640d796a5e12f29f46b79a40ac6fd7f0d15c40302047c435bb500673065023100e8f4bb4613aa0d42fac439f8d2d861062a1f0486e99220c8322070b910044235a3134c780c4aae2df16156fa43e1ebf3023072baf352659ab3b0ba70eff11e3de3e6124def370b2e6f6a363c408b5471c1f31adade393cce59f1e78369406248e2ea0302047c435bb50068306602310086016532d30870f5287bc050472efca3b77843785a77d442a7c04f6b3fc314b496eff72383db41936dc03d383ca4e8ad0231009688c29c1f4bb63b712d8406180b9023ed50c949970a3138edb842f0824321cd50c04d21f307b20e74bfab324e76cf260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230679ad57a1bccab668062b781ba24241f4cfe8d5cf351cd022a6e03a2769bed85e4ddb2b6b3ec3d3f481585cc5a04f627023100a5f23560cce5efc511eb8d604416661c0f305afafa4917455bf0d16c706707cfdaaf50b412b9c08337c6fad19b60a0070302047c435bb50067306502306cca07e576d0488035a026ea9fe71cba0ba14ab4db351b226acb3aa7b06c7d0196dbb2dce1fe3c9efef3c28930511fec023100d9bfffcb0724cd458b3162b8f3c471e02d7399c06c7a328c104742f32d9f72077e26e6e4b9ba6bc7267d91af7203c6ca0302047c435bb50067306502305680dff3fb9c554d804ced8d496bdbc82f829756eca4ae16942830232b277fe78d73351b7cb0b8659f5c58c4d42c217c023100fcd474b5021d858461cadb3108d99f2c3bc65e2adf46f1b2430e3474b8e217d95036d4c044c0dda2a6485ddcefde3ed90302047c435bb500673065023045e4d2be854fbef748880c7466b62be6a2289329aab47953e8fa3cec0db43d5b6a2d5eb633e92ff2150b0771e3ef8a98023100816255cca010efc9e62b3fb6178d92cd6e9fadd956d0625921c2b06600ed6e02aed1ffb2774eb34e0b69059ba107412b0302047c435bb50067306502306a31393e11b1125b9299968a558fc1540c1a32229d66cb4a6d01f47ad5cc07b7f1bd2248899fe466984ac02003ab901e023100c867c4b69c089bd2e24ad0ae9ea92df5aba36086d5dd3e27fe77672439f73574210868bf82b3773fd625ee98f798f6d80302047c435bb500673065023100e5606575beaa139323e327bf4718644dd95627d11a7f09eca01f6451cc54af9af47404ca341cf9aa2eb3933f8c57ed2d02301394febe0e6aaddd46c64ecbd1ce2da938e50787610ac94fde41056d329724d3f154c04d98e3f4697ba0fca9db5087760302047c435bb500673065023100eb963a7676bf52b3f838ef9d88b4a0d30cb752d6cf5a938ddb07b6204b4a3845baae24371509de52d9da0c6d8d1663060230760180e77c7099123151f689e0aad36b6c473d415694b65ece8b18b0c57cbecab4341c6205343b252eb6d72d2f6351020302047c435bb50067306502305f347965641f00058a9659ee57dcf8538a100eff9e935ed411a55c6743f836a09129afdecdbce66f88e2285ac6c3cc64023100c0a21b6db475d6ca323f118b9cd07da5efd8bf19c2e377a6f0dcc1d4c4d1701347fefcd7ef1320f7e55eaec80e5445c70302047c435bb50067306502303e56d4b19791beacdfd5bab36977a787f8de17b4909d1ea837130733a0ad3ccc647934b253b553aa24eeac69710c60e2023100eba99ebb58e3e0d6f08c0442db4f96cc5cf4a7317df795cde6bc9048b1b64444ccd043044f8f094c1bd2ae22b1218b7e0302047c435bb500683066023100c264fc224d51f451488c376d1deb0fa546b578e5c38bd3d902a675721857e2c1a8caab490571c1ca9fcf7357a7987069023100d005068478b6fc15de6898926eec7ae79f9a2ae2557a1582388e2be9368326bd49d4c5f6f09207299f5ab7fb86127f460302047c435bb50067306502303e815d89a66577d56d81acfa5f28c6e530fdfaf73ce870478830cd753fc067b685da5510a3135be385b74cb900ee9f6d02310090fa33250573a1dbee174de6e3a882f1a50d2ea337ea1b59ebd2734c02b5533581f31bafa4b9c9e2b7c38da30ea975ae0302047c435bb50067306502301e763e8c34ab7a8d64217b7abc70b68f14247b8d62d76d44f5896e30289ed51748e99c7edad6586997f4d002d0ff869402310092f617dce9cfff17f72884086e2a4840d406c06b6ad5f6730c9ec74a215b0d4776e0b600c72010cf12d2f1ae2290e72b0302047c435bb500663064023037bd59e30234b2c9dadc57b875188bfe565faf6842182ff248dea3ccb2325b28ad63368228eb03f6d844fc3c45d77f9402300901b3428e4aeb26d392f8cf928408a672ee53981b9a2178047043a9000fc75c84946ab1f10b4635d0aedb9f7db86ea30302047c435bb5006630640230607b3e9dc695efdb065a2fa3122ad11a1b3451670580270334755622b874c448c32791c8df51de251cdf6dcf76db14cf023003aa68bbeaa37d0ce2d48ac09ff1a0b6e7051f6af67d8b72b04f22f0887bb84b8acb0ac3ff60c1721fdffc15f3cf08960302047c435bb5006730650230695a4ff902afafbaaf257c72b10a23598e18faafecb291960223e87d1bae3a118b920c06c5c255924d9fd4656eaa79de023100cae62f53578437ae728da52d7e1dfd47a4a26fe28f8458bbfe315a1e7862d01be083cb8fe0225f874c826c1afc3dd4cd0302047c435bb500663064023100ceec03029ddc9b344c7029a614772f8c7deb04352ddd20d1a9296409f2cdb40d465e669b530f3841d7525cf1d8c60dcd022f3c39ee136c4b3709d23d6fa10f3ec5d07cbcc3fc015aac4cbc0094d14a00b84cae8f4accc2339ff779b9e87dc188230302047c435bb500663064023038fbf809cec26e110f11acfc6d075c9e9d3de6ef3a560c4cc89e64632eecb9e9611b2f0583b0329b8271362b60d4f5e402304dd665e4b2d42522e5c683060487bae6ea6679999db26e62b0081cc05dece1c3d51b342dc37de457ee7fe1e6ecf6d6d20302047c435bb50066306402300f9a1827ba1b4a873df002b7543437b55853d2ed29029c8cfd018ebd52617b44635fcef9602c1350b881b67284e6365002301441d34176ac4d6006fab2a2870bac9056b3bf5f1a07b7197336ee8c1732fc6450740f3a19ef341bc57d26e969410b310302047c435bb500663064023063fe0fb2270746ce2a3356b2a782b930a50404ab516191f6ba9e168f51d9a8de9e14b73cd65e04208034ed1a2de3a06802302665b06234eea264230f26e3e5b04bab9a40e814f6fc5d0f33d977243ce771295fcbfd4def392a6c8c2f87461ecc30fb0302047c435bb50067306502306fe68b5c39a13a5f4ab0e4c1e2af609fbec42b996eb3f8844c096ee0175eddc2d798e272f1c2ae39fa94fb2e65f439020231009fd8e4915b350b7a73915c91001759afd81bc32038409e0ca9caa53175af347826f7fe8a70a1c3bb6bf822a5e23bc2ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ddac061237ead7e3b74bc1a7809a6f7e020124d455629004701bf2f7cc08fffdc9e019df2ddc3f35462fc4d1bc116eeb023028ea543b81cac266902bf0736e950e2ccae210c4d839d9859962e8165957b90164a8f1820034c48468332a3a832e94fe0302047c435bb500673065023022b0f77252ec410b50ca2e0bce128fa4dd73c79a4595ff99b1c4a26b83ba15fb55551e8f36a1ebea9af81d964efafb05023100ab50016ba4458d5410853ad976fa2b282c3df9040388769e374d535794eae19457c204589270cb5a28023a2c4a6af7fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebbf8f3fe7abd007f65fd3aaeee4e12deafac5f3cfe6d06d4296fb96744ac415b3a1181d4149ce1d5f013953c535aaf6023100e7a96f6b0044d119d827c5e645dc2c9279611bd74c05eafbdb02e3d97a3d2d77608c7f21b994779b25047bd303d917370302047c435bb500683066023100d5ea2117444637dd6064a970b96836188ed9c03aaae8b62a7b5f96603ab49a42edea0c0ad87caab7cde9fd6b7461f2b20231008d89f97fd6292a148efa82fa346d6783b2bb45cc207d51a325a0b2d7663ea4f9dd2ac9afa3bc0b024c3cc1efccfa4d9b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9d3caca76c4d1aa4d71a2fdae845fee90f2cb6a98f8e31ffbace69e9bfc09382f2055c2f4c2677295649bc544ab9c8b023100d524f7c83fae346725c1bef07e4cb6d13302268e201714e1cf389d5b062cb86441436631e7736415317ae43ee341c1ad0302047c435bb5006730650230226056e9e48c26610d8025b015182fefa46fdb72c5c12f8679a47e5e829effa4af9174372dc1d57ef9d4984bc34d8804023100b3aabeb6c2eefffe5ffd4a598eb45fc2ad11b5b0e67c23341b99b8cb7a4281d08af94c7720be5489056ed7e87d2267960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023007f048b10b88321f4af24a568895bb693fcb59bcb9252a6538cf4098d5f3a1e6aec373e89295e644415a9d354da5f0fb023100dbda82167d5f5b32b0423acdec07b791219b54543c50e11670019f7a49914c0d50a0e04224203e19a3322eb8f59a31540302047c435bb500673065023100fe99d3a0ad5ddba81e6e0629d9558f0fff2c02034c78ad1af3e4d18cbe3dede00bf9238c8ff5251860741cf7e82177a50230210734ec2766149f091e12ca3f43a62cad8bcd7ed536ca930ce3f9cf67e28c07e62ebe5b672c47d6cc537b51d7cf1fed0302047c435bb500683066023100844c237057ce158b1aed6afdcb5c20cfb2c66e60974161a1e2e3fcf1437912fa9f90c60caf4b8a4098d37d275a2777be023100c5ebaa005e5cbb92319863173a2d458fbb8601c89e9206f5892c72c75b360dce18ee334cffc79908e4b58657511697870302047c435bb50067306502307eab9c676ded39518dcf192d418106d1ad37f85a7690e04a8431b18582cc7bcf3c23acba3cdf71fd2361d8cf1d971e0102310095b7d386d7d6d2279feb12ee83e0b8a63bc2efb39007386ebb62f7bda74b159dd726ddde7e0ffbf8df8527c7c6ba89200302047c435bb50067306502301400a480aeae64adf91f8ccc68dda2f655fdccc09537f6c32c43042ea0e4deb12b0e98877b309ee64890d8158b6928f10231009509b8bdda7413844a18c8bae0465883565d5930552be169b49f8491d96c43c3ba54d18bb7f06278fbe89b68dd14d5770302047c435bb50067306502301164a9ad9c024d6067ec5c1d3150e9086c88b2fcf3e98623e8046dc14fb460f84af73d9b691430af0cfc1bb8fe51053802310087a0710e9f5ab0509ac1968796752ca2146000b7a33800503e1ae58c0a341d64f011b8f612046c96b0db3debf6170a730302047c435bb5006630640230799a8aa28e35c1eca50dea2021366703471231e7554813f20c41ece55a8e1784a4a5acf243d386c3c4173e2839524372023015d91a97a98cbfaa7a5f8619d327a8d3d521da504c6f86e3854549938a7e0dafc641090481560b751cd077b5ca2a06ec0302047c435bb500673065023100b742a18b4763b0fde1a2dc50c6230dc0703ff8f924dc63bee664a74e185b84dd64bcb3c529fec74deeb6de957b2765a802304f9e3d74eae846103144b1dd2749f2f1fb2197bbbaa2525cffd6caedfa55e5c18b634d10810a3c87e62a786eeecfb6770302047c435bb50067306502301cf4db70814b652d6c460f4caa8641dd25d09e9e4484fca8a143fd488e3cc043e8346b147e27d987d41c4dc34230f67a023100da0870b93bb8b23908fe6ca44c56158fed117bc33358928cc1a0cc3e3616cad07dc42d9645e00a1a4d807edd10915aa10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230484bc9493fb7e6de74c58a9f119c81daa9e4c2720110597dba0cd2ec99983dd37f186b95c03bd28194968a21b411cbd9023100d562570f82d6144e39c2c3a48d41140b13310342081d1f5c2832c83c524abc58dc896d2b3a02f4db9ceb2407684751dd0302047c435bb500683066023100ec8391fe78940830a632393fbb8182c38ad2d175cbc0400fc67b31db0aecf5215bb86167b9f84e18835c235d8debc3ec023100a706f04967e6a7408a77df57761ab0bdfd7eaff4467cad2d82fad66b338002b32e4bab85e113ec5e605fc916e87af7150302047c435bb500673065023100df64a385e0cf57128894d270d28e366082edc8f012a22fd8874071703a7875c3afa7bb599b34d7f16dffc4f98b94a8b802303bd180794fe5daf40288a8834610f1f74d0c74a65961dd51ae3ebac76096ae5c4c2f5e719eef83add10db46dd3927a270302047c435bb50066306402300f9cc2dd53e3813f1153bc3ba264c11923ff9c974c3a6adaa29a7da00ba3dad6de6f956be9212d56f47a3840ca5896ee02307ce3535ef33f05bb83566f4668f3674636d0f617574e67faba4de4fcff51ca796a5151e88fcf2e2ed34f14db5f220f300302047c435bb50066306402304bb3ab02e6b8a0b259f2161730a5252aa41e155040aa4305ede62234e6aa580ec525c06920540dc2ccf64f9b977eacac02306962382b89d1915cc5273654be2cf8e41f1bf8bcae066ecf6ae3878f2a48ae40780b35bc3df03d9622ebea65d759a9a70302047c435bb500683066023100f6752552457054be471e8307de4c1f6289aea903b8c6db20ee9380b054bc5aaab3c7affa93d23fcea200fac9e90729070231009c1029aed05acce29cd5a3c53f2db3662203073fb7e5376159b9ec46e8527c6bfca67ba673f57bf20180a46ffa0d7f280302047c435bb500683066023100d9b299982aed7d7e75777c4612cdc0dc3dcec816d10c7eb47fd767b91687593119ac30206093b761595bdfe313184129023100f33a46202489e9150d8374d8c5d810e6ff2e4733d2ca36b2adc904ef3d6691b45a54281e95ec8d09f77cd5cd135a261c0302047c435bb50067306502310085da6c6bf945ee5cf41f6fdc3b9aa680c69e9ec39cab2e65ed92392c1fc2602263eac00ef183dc4e6ec372fd80a87fbb023078dffe987f3449d6c4ad4311265559e015aa7236b755d6dc8d4ca2a597f7e87cf73eafed1fae0057bcf57e3ed90eef310302047c435bb500663064023014d568b1a7e737b9d8b7a4dfc3efaac78755491360f7faa1bebb234c2f254ea2f528908e57bcd0591d74baedf7fd1e3d02301ec924a75251cc29a860af9e323703d9c14112d6a67bdb8fc256be1a167109cbbf6c44ee4f2c02ddc7e4b56368110b590302047c435bb500673065023100dcf6596f8c14c395db9badd1ff594c8d3b7727a93b2cf01d1d27b0f1c3c37aa45f6df090671574bbc41c52b68039bc5c02302302ba9f47ccb4f1e681121256523ac8c89cf56ad5bec3ab2cc5e29db73d3d736f9ea70275c7d80c7cd9de0874f9889a0302047c435bb500673065023100aac80606c1f9c2a8137f67c5f637fa70db9dbd4f3bc57d3ee29e2ef90d65795b489bf439e85d390860fe7b690e91fcae023054f3109a53b77f0b06be410dcff883bed885203562311cbc420a327f09005dbf6d898ef73ba55f54f36bbefc7cbeddcb0302047c435bb500673065023100f0fb0bd5f9f010188764cac0b1bcf78f350088da2998bd8eb4cea99f1d222f5dbd22318a1d42b30faa50ebbcbb03da1a02307b1d01ec83820258353640e291d44c0961348ba6e9d430bfee772f166c967fc1b705475e730060fa901cbdf3b17b52660302047c435bb500663064023028481b719a64c5f172a76ae7bdf480b4656ede0653d4feace8f72837d37c0646a102f4dec1bd43abaa7a89710ba39a1f0230570a675c2cb2c481f2a66c4ccdde5d8ed362b3c5133a8a7151e4f9c53b90a84052412d67c462cf695605b06a5ad91c580302047c435bb500673065023047b6d3d9b0f1bc91182efe9d22b54b10106e3a81d62c9af2b3ca88496fee250c66bcabb45b46022c3babc9c65f63b3d20231009e339d16a1a8fa0acb633afc323e0e1516df02ffe42e0ffe6ddb22e7818a5a19aca76c8ffc130ddd05e33c47ab0b49480302047c435bb50067306502304d4bb342ffa5c90906fa31bea880a7537eb98f1234480e59687829728d4148af7a958aefba84dd8a4d3bc6b05a87160a023100cbb7688616ef4d575cb5a8f4873faf9f629e6c8abbbc4dbc47128c5672e9f60d283da4e11ff9cca7f2fb5176fa4f6dc60302047c435bb500663064023011bed3d66911e4031d72daa5be1761e9b4a03d7c619d470ff3eaeb9004065d8207228760fcffe5467b224ea86c20b89e023007cbce88c316effd9bd30e76b8fbc394dcc8cd1fd5b012bffd7fe3cc576af3bf4bb367f2ce8c0e7eadf619e28425578f0302047c435bb500663064023005eaa47831a98b8774f268e218aee75a541e3736a831fdf14168929b80a4aaa22188c3a2871babe403a8e46918cd96a502301c0198e3f5c7bef604d920acd42a13b770fbbf4153e30f1ca7d2a62efee41614839839dad9e3441c1226ff1f33b8d5dd0302047c435bb50066306402303b542d88704e93b3a4f3f4bcd20f384a1106f841008cd0b8e90a9fd4f38a56fb1aefdc044b41c5115bd518e97070d3e102304eba166a1d9c76953a49b177285c83eae95fb47253fafdf8928091c3638f070e68a5878bc564e7bf78367222af11e7ea0302047c435bb50067306502303edea8dac61e88329daf7b33f7412b11a12926dae61c18ec3f2e9872ac8a29ac40306a969728285c8347b1683fed6f38023100d691f8834f9185ab100053b6c6c614580e02cac57cfdd5750170bd0c9e166b450c242a8a8c63f4575d6bdaf3cda6b70f0302047c435bb500683066023100c76b6573230fe2d877bbaa58686b7185303c6fb2f70e7bdb104828b62033c830a5fd1fa8ae10d5c3f788dfa7f608b5b4023100f4e78d7f7ef0ed1a45c3d846eba755ebd4220d5a9a187a1f52c97099e56d995a872ab11edc55dfc8d95409dca6465d370302047c435bb500673065023100f8a4f3f73918f76c93f533af7542bffa721e40141b1491ccc9de96bd2bc7c0be2255309bc96371931ef5b187e4f3eac20230374d06382d65901220be550b1cb8f72a88ee8e2dd176b76cce1ee5b070d89ed5637d7f2d2e10805046d212339e5cb0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aaf46c5fe856541eeea6094d95ddf8e59596371f1b30c894ba3d77906d367a07131f5b84dfb4fadfd3834b493bfd0d4a023035f8d47d627ef69f659332a4f213975e9c67e5652d59fab95db8bce2e1f90804814b6ede088f3730f17313eb4cf157e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a5051bf6f89b269ced2fdf96196c4182f2903b0b40c51cf3b4451ff3a0bb3baf15b390575a9a02e13d74b637e5631e3b02304b30ca8dbdfbbc06f1bdbf3b3128c2e51c52ac8a712c7c8ffa54a3a669c69419268267b9a6de94aead2ab7adbd3b856f0302047c435bb500683066023100f73bc6f2b641e879840f5adc23b38d08d566677da84dab3b6bd092150545b7dfce65fab52e9310c1dda8ebe86cc7b3ba023100aea0a5ad6a819ded6924190a75bcda95a0eaa97b4365a75ec73b376b4329f45987f2c5ee1e1e152bc5ee38a9c26a9c630302047c435bb500683066023100b3543d4704dab75452cf54bcbb9f7f1d1813c0da1435c169ae89c9ca2d684bd294165bc1db683e66810b8ab676b3f454023100f3706b87d7a9b3e3ebde9cbd7155f6664d0cdc5e6699777ccd92a65e938aadb02a4a068d79f2b2d64f6d53d64aaf633e0302047c435bb500683066023100ebaa251edb8967cdc72444d4d6d5b17bb1a4d1bbf51320f9eba881edd8ec55765b10eace5cdeb2051336fce97995ac77023100a22e28bbc9c951d7681cf7c50129e5aab15cb86df0f7b2efb8a426c3a1e5eb0408aee49772572bdfd9742208f5314e170302047c435bb500673065023100a8019e9ecd963315dd3a6a954520d77ca9aebb50c9e9264066702bc47360ddb567d73c8a30a949b7dcb14e245010b21402303caa5963b8aa28b63629358847a83174ad54ee4753cc48b07e30ac640f44840ed61fa07d8db8a832ef8bf15491a342000302047c435bb5006630640230768607aa8f7ae95264040b5260fd56bfd16d3a9b8eb546ac8c9e3423ec03a8bf37ea86711fcbaf6613e6ffdc9566323b02307bf1c118bbd633714fb40fadee0e77d067ba433d08cc6023806837015d6c3dc0bb50952e75744e344d683ac09dbe22170302047c435bb50067306502301302c4aefff5faf7dc01c07b1a5ad84ecb73da6c8276dc8bd086948ecf0baa5840f4758625145c86478ffd9540f7c2110231008d0a7a8c8b3fd3d1637f852a55c27bfcadfe83b6216f04a99fdbc98ccc20d162c28d1c1af3a13e8cd39a75b618ef8ee70302047c435bb50067306502305362de63ca9a68d97e4ab1d91bf123f967883a2985e6d12a450081602224a9773a8209b1ddb7bad0b87d840bf96246d5023100a3760ad66d8cbdbd9e61ceec3e3e2b2c82fe4254de2329af7cf8d3d9fa2f39e0ba9d060450e17726a11a865928b8cfa50302047c435bb500673065023079fc5125cc8ca6fd85ab8822cf33e04194a4aac3db72584de9d8b143d85612401e30fd8f3e5a3bf9eb0b32b18dd2a791023100bb769bedbc59b26780dfa1a20dbe01d6a100433c6f67ddaea70bb7933061c7ce2755b20d9aa454730b61f869b366f7c20302047c435bb500683066023100fb52293c70309cf43772298af14b520c54f877e4bb3ff3eb9e85e1b23cb8ab1c8839c300527da03dfd7773ffd88e66e0023100be1d4d0d72e33ea4804bde984530f64f7f428a83b8956db8132aac08aedfc9c5ce6305743e9cc12996601d440f8739800302047c435bb5006730650231009977428e6061201fb8b8eb084dbb20be1cce3c65aa58695b93045157a307055ba492d9442b5d98340aaadaf09f25fbf102301d80cc4f238b2e003133d1d90304778d5c24ee554c73fe8837814bff0553e2c54a7d847e841db4678745d7f21e63a81d0302047c435bb500683066023100f1e6fb962074440c6027336ae9bb2855cf25b2f0db350b2fac3f1b30881b7b443f4a5ded984c843f642e31ba505de1cf023100a3c91b4700048980cd418cc16010726b8aea760678ffe803a57b9dbd9f6cda87f27a6f7a912aca85e80335d658fd573d0302047c435bb5006730650231009b7829069418c7f80453ec42a6ed9682665ffd128d5172e1a67108541243352fb97fe30d26d347d2d87f9d48cd1a1fc6023029aa56ca72d384ba71da5d0a1dfbe857de23e165f5386079aa7c35aaa52589e3e6a34bb6e962cb09d82d471ba2f6f3ba0302047c435bb500673065023100bb6cf8e46d13f858eaf36aa09c19025e365d81bfabdae71009914d42ed75fa5c0d81e0399b6bcb8577c564698a40023202303421e1100e81095143df66f4074712a5ede6d7904f55f0497afbdc39dbebe8146462893228ab5782386da8db496e72b30302047c435bb50067306502303bf397f16bdfc6bc0284ef9c4aefecf6e09df366ad1ab8951c2e5c0f6c730f721c892a92a9d6da79d5e6dfe51a3c80e8023100f5e42982a12e80e25272869c466ef10861205845c873f4b3af776c470a77484d424d2001a5705fadfb4467fd7203e1710302047c435bb5006830660231008adcde2e06dc4ad876a8cae2c62886fcb238ae84a2cfec05712872294c3cc9fc76f1d4881db91cc20b886c753e51b8d1023100e460a52b3a4b8ed3cfd4b2bfc55865b141cf55f7cae1f27fd314ffb2806fd05c25009084bafa1efa62ef730d919b5f7c0302047c435bb500683066023100885377ab5213f9633487306b4f6701324bca75433bcbba89b5a91c7f3e3d259e8e8fe63c742ba88c5c159671dde78dd0023100fdf7e08b747ac46171999af678bf444d63c08a53320cb40706d2976cfc7104d54ce455a5fc36f6fa3d891620934653280302047c435bb50066306402304d51996db7919c3b20be5c93ea5cd981fbe1686951e59629bffeeeb8f9301d10b3cc31658cc3ea7ff0a9ce2fdd2e357502302682ce644f7929aaddf0bef249096645e0258ccfdfcb99a9fcb3d66d83bd773ae4f1ad02385890bbe0789a27ce30e1190302047c435bb50066306402307ebe861352b2bb2e6b8f8388b3977229de8a4756e4aaf585d25628e9d0c8eca7c5c262b73ff3f4e5ddda263c5a7fe62b02302d78182a9eb61bf0fb51bf7acc0d53a034fc74311f8944c53200176cb2da51887bc0abf5cd1541106b6e069bdbff47cb0302047c435bb500663064023010854272f213b5c76cffdb137649e60790427a71aa2f516985fe2d66c1075447a29a34d8b4cc8a829640537ed75f9acd023012a937451584fce5a7877c5b59d226b2bf8a57d0e2361dbadb78e165cba1409f84ff9ef272442adbe13375e22b81480d0302047c435bb500683066023100b3e6bafedc70fae7b87993b1333764d4dd3d3cf2e9f1196f550ed3e5b489aebea64576684161775728f1a0310a59aea1023100e5b7d4f086f6d1a1e0c8c64080ec638a95afc18ad9fffc03c788daac5c8b16063be5eef15bd62bc81eef6c3e6ad1dcf50302047c435bb500673065023100aa05ddd9a30fc99a239c36f041cbed5d070a54b073eecd12b2be90e45150a11e2b517c84331fe88700035815b7ca4729023024f2d3e673ba86e109bbf8118086b693396bae8bc4522451837054a05a87d6c23e82b0c166f733414b45cc519d7bc7290302047c435bb500683066023100c7e510f5b3104cb994d603131645610b0a766b7dc2d3ae68a8bcc47a99e4a27b31ae7bec8db46daf62b3817881d5cdd60231009d386ab1f4d068d7de85e8584c20729ae3fb6545dba6037062f3fdb35473eb65698d6077167a308b08af4f5e13ed1cb50302047c435bb500663064023038296803cebd8e01f5fae7221fb3213836e6af8f1289a9a3a9cbc2261fb5c57aa175c19deda16c6b069bb9556a3eab8d0230065292cb7225142f10bd060a4f8bcc94876078e558b281cfad529ceb476f2dc7dcd3a57ed380cfc767f2f2aa78b84b6e0302047c435bb500673065023100ec644b405c20de7e8ed17dcfdb0e7b0e1c1333083deffec324a100561ca3b3fa4736d338a362e7875d9ae33263b40ae8023019b4ab8b83640d3643f07e2f28d7e5707d7806c2a39babc8b15b329b44b1e8d3b868dbf93e2a0a1462e9f75981cf29dc0302047c435bb500683066023100e1c3d272bf2f1326a9f7e49ee36345451d86b7bcb02ecd3d6b4419a61ede424751dce51d279cdcbe15224d2768507d2c023100ca2ebfe9878646f3e1315e064e07b7f31d9ca1f9efed3858b4fdcd8ea0898260d8f1ac23cc439ebf162a7fbf9f3454630302047c435bb500683066023100f55240d55cebc35e22c45067fafd1381524da20a84e39bd95539abb7eb4f027d9bde3004d8974932c47e091543972e69023100e5fc0b4d1429342b1c4ca03aef34cb199452e6b73ee1783f3f643298dec5a817bd004af50b631153d57e3a768c5b23110302047c435bb5006630640230718235d4970d7e9482a872d8b2ab6354d63ddf7ebee44d5b98e0ac78b81b45462290f0105eea061b181583632b689c500230389f08a1dced7f791c33ee410f15b105444fbeb6e091833818996fe4fc1a770e79b2c44c4011759ac75faf1b30f183680302047c435bb50066306402305ab000e7bd58f55bbb6f739ea303b3f8d78c03213c5b1d233dfb09cc6ca39156159bc47177b9bfe6006bcb769586aa7802305b702bed88a97bf7ba136ad3ae00d6c4b7e600fcc31d461bf92ecca8c94e06d5db4d7b356697e35690253f7ae25770230302047c435bb50067306502304cc69cf852dfc8332ef0c4a279fa6a08ea78f1b621621b1676faa6d10f8fde1c60ca08f601222bfcfdb22e6265f3189f023100ba360d0883c06896ec7141fa2862916d9903bd5de48ebc96eff8cddd2e8c9802645161d960e5d02247926146f9e306980302047c435bb5006830660231008f14f46dd399e9c08ea184822c19c2caf3ec6311df4cd481aa60eab147e7a38471ad6aa2e52ea8c9d3eb3bca55608f7d0231009530fcb59eb9e6b016a21096b94c9974285281a0b4b584f229f57ba2e6fa70b6cd8f0c73cee12abdcc9f7009be8921e80302047c435bb500683066023100b5866fbf58dd5a3ab0519cbb6e016b72e012aa75947edf1847893acb3fc2a42bcfafcaa0f3f0ed17c2ab6e31a9584892023100d3afbced5cffc210f6a899c52539336ab6ae6e9a8014b899c5eb58c99e65428ed5d399f56d20e291e565c8ffbf3ae69f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230753b01ec82c4d6bd2efc5b7d622686ef8b021de25725faceb4fbc8e4418830d9d3a4ecc9a03fff686f0c30406d5f84a202307dc40e3a6ab2efeea99075e69c3c27fe86cea1e47373f4fe03a6d7bb33159a1c315b9962f841350c4d3969c048ab26930302047c435bb500683066023100a56823507378cd925dacf7771e389f524a723f7e3a5ec910d96f283a64c6a17c74524977323f745ceaf72da79c58d90d023100df00746a6a3ac7c4ac2387f5cf9d8ef1804779ec06a97a9ace3491efb1a80da84057faf0c9c96b66337e483d44d5a4680302047c435bb500683066023100ea4bf970f815fa1de6a3d6249b511feca5ad6e83b7bd2d2c5215c57d317af3379ef9d40a916dedc8ed3173cb7b186bb8023100845083ea074da262efb079e433804a82573f7d31dcd3da0c05ee41172c5aae171f8f42704dde2cf6d52298159c37ecd00302047c435bb50066306402301d79ab84033c02154e35c72aaba9d577be1f01443d71a61f7d4fd7839e67f464a13b5747e7e581fd34c25cd848c0992b02307a60b08d867bace3fbc3c4440183b7cdc4bff6b2f9141344c48b7439835cd73f400fbff23c866ba7458ca4290d47923e0302047c435bb500673065023007c2a6667e5e290bf3334560ef5c84871e271d32e38bc02d4d63957876346d9aa411f02d3685c07f03b7b0496cc55808023100d85ce9f3d335f205834980781bcabcfd8706dfc77111476a714f2df89439687b7add66e541e23e4678f9e7c19da08c1b0302047c435bb5006630640230022a92ad8794ecbc52e1ceb72467d1ce940d5db52ffcef22bebeb40fc651f1e9a39fe6193f4d0528ffc6a68749f06ecc0230691d9e3f134a50733c3a0ec0e3e40ae2c5ede30405c9bdc5232d81a471cbcc81af159003951b4f507033d9bcb5264c860302047c435bb50067306502307e8342474d306e94b4a990dacb4cba8fdf8732eaea8f9ac81ec61114c5acf259d7fa3217c322721491246c2c08c2a8ba023100c92bf041a3616ac77b2c1c7bc94a9955e63feb1d2bdda96485e73fa293a90a293c06e1e14b4dbd6e9581b5525f5a575a0302047c435bb500663064023073de75bcdf20ccb51f5c8da66fa321a30149b94819f81503204b1b8e8d0dce97c85c7c0cd3766847e11b311d47bf8fc602300946532a354edb2ec40bac556470fe6c3bf0aeea5f842efc0dfc45ba98f6d80222aca85ccfff32a89cbdd45cfa12cd920302047c435bb50066306402302bc8bbdc782d72c338543ede717868f492ec5a4e967241adba3772da0a8ef0ef0d5429e83410f4bbcc177994c095a5cf0230669c857dd27657355eeef50f043894be1c42e2d05eb3e8e388771396a4b9b72575403dbedaba72b080b26369c82b52750302047c435bb50067306502307cfe34801a14bf337fb90ad57990b4ca6a12f9200adddbcac88dd99d52d3c574ee085df935b61898d14cffbed422c582023100ef9c9bcf73af487bc26116a6d2197fd7023ef249ab528633b998e4c602fe740edcf7f52d264ab7e68850f396f315c9c20302047c435bb50067306502301cad8bb0b76316e7eb35b7e552c1162506dae5cba1023db1c35b1ab6ff443c16872abbef28dda89d4ebda1bdcbdb4d5a023100f0218a19530902e67223c15145d496751561b52ae4d84e648133017657aa5fec2be96780395d195375a163d05de13a5e0302047c435bb5006730650231009d43f05281128317f5284847f02a732de7549fb8884a0b358202e7f8a56ce6ed8cbafaf5b37c5d98caf7282dd143065e02307653eda34fc255f2aa34ba69c1a0c6338fe00db9f48671deae6bb6bce71d2ccfdd828694d82dd1a546f87e0cf161d30c0302047c435bb500683066023100fc1c96aad9860699911826f7bebca00a7d36f4889930fdb9165451bc55dfe558d301ca8aa926206232a2fb591990bb33023100f67a132bd01643db23f790bf42d2faedf40bc5fab004a47ed7c1b51a827a9c3050b466953ba2f1fec15e245b0f69234a0302047c435bb500673065023037b0a927ecc679973d0aff1e1ac92799ac6402654262f60afa4333136cdf7c10ac8c28928ad1dc986e4cac6d94f979db023100f388983f77da81946eaa9548ee81851cc01b8aa7d820798e114fe71997c23535ea1ca923abebe97b0ffeb57223d174fd0302047c435bb500673065023100ab235bed4097eeb4e1fe6b7ad548c533db39284546fd2c8ea512fd173ce0996add67453b7825e9055ba70d5460daf29d0230368a76ecb79a20cf45d96d879ff63564cc6aaedaa6fc0c6ad07a500461ca076945399cd50f282b9991bb37ef005f56ca0302047c435bb500673065023060877aa9b08bdf4c00e95880d74bf64ff9099127acd90d642251bc116bdb7a8ecef9a2d0a97571deea4dee34f53ddf7f02310089b68a7bba3e7d07601a8b60a19337c337ededb466b9d4585e80fa1771b9271fa2a97dda4a714c1c411bb349ffce08490302047c435bb50067306502310097000999f386daa506f848b8f1812f1f66d63da478ccf095002a61d10440ae14b1bd713ff1c9b0b0701cb73165ab739302303015bc46e01a2b27c923499658441a3a3288e623ac700da4ba52e77eef1d342987de5865904c5bb7572659db19eeb4ff0302047c435bb500673065023052cf3dd858e6c389f9e4d98ae5589644491b42b7d2022b614d738d7a510576d89ff55324dfbce48f368670603a9a5ba5023100e5b9bd38e04c0677a36a27fb52e1eb0bec3e97b6db1686a8dfe38486d60440b0f3fa89b3392978403e93bc9460027b3a0302047c435bb500683066023100e2f944e39a7bb817b531d9f66993b50686deed8b9bc8ccdcce0f671278af04fbd5ee291efcb7a1fe50e13f0d359cf6d2023100a60205547b2d9cad9cbc70f4b4f168d0f02fc16e8678880485dc86b4942879668b008e058b24510ade459ebb2ad715c00302047c435bb50066306402304113b29dec8a0493014042e741cff1380a97e6b6c43f3e93ef1dbe2bc027bb016dd2312e21ebc7c7c94179100a46996202300d7b52c058ba93562e79131e4ee67e60393e710608efe9080e74f0bc64bb8f5d29dce190be3db777a47367d2cbc815970302047c435bb50066306402306f20f095c76ac11320b8c796457459a2847f0caefd8b00ae6d89c7d60e5c25bc232c256df8f247b372e699fd3ac5690f0230334d998e1140fbe465879a58ef04822cdf1774ae6ed734756458272d46db1784180ab2e557f62ba7e9bb8a65141970be0302047c435bb5006730650230352da4abc38ba9c163f62394f4af854e3ad1c97d4e3ab64f625ef47dc57d6df3a1d3ac503bf067eba70ba8525fa59f91023100a49ac9cc27ceae6ac94b4595c916dd9b3511e2b4e2f3b6ff637f3678f78f51775b0836e818b932add54baa17305521db0302047c435bb500673065023100f8e790e1b7ba8f188285f3a1fe5c7c7ba0790929be1929ade1e53e95a87e0035980342b4954b806dff9586841cc31d7702307193a9b44e08a3dbb8832af940e8a184f95a76f988fae6cbb18b52c8d3528d8738ef8ff5d0d5b9bb79c11566e634c2fe0302047c435bb500663064023044cf6daef566a04a3724e0ea5c7be627be2546f2b4dec3d79d9c5a8ef4118968e6b78bf7907f19764d2200f6b00af5d30230379fcfc07ce807d9da7d731b2498a7cfdf028314d3d1d066f96b0a96c8ea3d231823b3cc45233cfda66c28f508945f330302047c435bb500683066023100da5fb6b2304bdfdc9b852ff42b4c9983608baf514f6aad35609334ae754ad706d0cc3ea5bf0f56654a75616ede9aaf69023100abf4840bc7dc72c2c8d57f1ef6f8bd79c1c5188d7bc47675e27a8cf231d2c35c5e1eb4e18e971de2a86d25153fdbb1100302047c435bb50066306402302e19f018ca3d447dd822d8f4931898023ec5fbeaba6276e8639b6d67ea79b1de6003999b1150f6bc93781bf134311ad102302b2ee0d03d21cfadc5f8ae72abb4f7aa37db9acefe7b10052e51497de44e8fe7111a84f12773408fee00b8513aa08b5f0302047c435bb50066306402306fdb8981f3a771a85999f6ac4ec0a711104e6027f4b118b5f275f63b6dc687611e08dd5d918874a3b0b39c987e0626d902304a445d2f6180dd1af30a789d63a392a6251743c2d810dc3263d7405e8c190b9d5082495237b62702296e3cb4858015980302047c435bb500673065023100cbda301188ea84ca06fa9816d5af75cc8401e02269c22bf7bfba1237458f61a28a583a10bf73e30bc31d8d9f779f266602303d3169df0541cebaadba9b6092591b71f62cf4251a3d5e011e27f093e7bd7e046bb6edcbd97c4b0c2178d0563c9d686d0302047c435bb50067306502303e0d5ca6850b36a2fcdb732d0a86d35c38d56fa41ff6d06befecddd4726992c4c6ecf1aafbfd9645d3563bd6bfa08e87023100e595943abb2d3e753e113b190e217f115acf2bb716be797ef71bd0e5f5b03e7ddbb7009b5e0712f2eb742a8a0a2b753d0302047c435bb5006730650230724facc62187166f5596ff03223245208de8288e988800b4c3437254c9f4a8510b9a454fa00fbd3762c51a3c97738480023100abd984dc012a78b283b2721243eb14ef6e7cd1f2fd34834a1333c4cc2f21c52a0142c063b206bf668594026e1156b9d00302047c435bb500683066023100d252b6a6e6018eb7321b3c9110076112b286b17d6ea411dcd96c7eed98e33755aa84c4e3b61e7f796558829b9ee6422802310096bee92f6f6e845474067eb6c0756adcb6e4a028eabccc866fe983cef741bb150292d606d4398989a292f92fe53518ff0302047c435bb50066306402303e83711cb3ed5154de1f819da4d657af9dcd587964ea0fb3f541078c567e668e98a03670cace046b18158eccb5fce003023058b171153ba39c601d14ff1a1bac4742157474461eda3025a1a1b73d9524788138875cd852ac1f67cb5ff31b4ed64da80302047c435bb500683066023100f9af924127f396fbe5ac05c6ee5bfe950b796e12797df5ed835c78e089d59e1a2d3579fc73e1ac2c6f890a78c778f5e3023100ba6ecacd2dce5e84310f7e7ea3b3a5a5e88af648434ff91d5472dac6db4a8491da804dbde4775a038a3d6d6ed191bb590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a252af17cd3b262b8c9bd55c08100b0ac4a3b8ee8888b1fdafd9fdc95e42fd5fb39722f27221724da4235b361a8657b023100c589437da4ee31bb498f10b17f0f2d1856d21058b83290b42d05538892b9f72361486f0c332d2cf4bf640176cc5c536d0302047c435bb500683066023100e7e3165245a0476c3471dd2b3a44b19876d6b535daeab07e8470834ccf78489f313af0a8a7849e78424b8cb476428d6d023100807f2e1961f4b84b2f957d4bf2638e6fb7d490f65e31b893b2eb915ab08c4cd1102359a9e901e506f8c731506b2868e80302047c435bb500683066023100c0fe8b5250dca5a5bdfbf86f7401ebe089961067b06fe07d9bc2e6cc0e347ba1a151a8710cd4c6d8ddbc2886e03a69ca0231008ab67771f0bda630dd282965580001c97c2205ebeb3a12de274987aa637df0d09c21fe2fea87237cba7a15d84acadf0f0302047c435bb500683066023100f30ba9abbdcd55d86596c1fc45858ac47cc68b614a1da3b846d8896cf3578ea9ef57c1b527a922b751d7685f7cd860c5023100f37e1aed5b517d8b772223d7b01dc1face0d1dc43e427941ba803bdedf0f4c65bbbd50ded628cb9aca67eae2db85b1fe0302047c435bb500683066023100a3e3d3a2df5071ff7d46e1efff301ccaab7e75bc1aa76ee5032d1161aeff84e2a475ef48e38f275d9e488e012ce8da51023100bc65bf4f6be7d50b77ba1b3897cbdd6db3c9d77bce79bd5fa7fd6c857f25404ac478b0db4565395bd3b480fc72d54abd0302047c435bb500683066023100af9977d587818ec4bf509fcdea53f841c135c27c2fd338d693bb54ae00385a61aaab452762fc7bcb4e312c1e1426e015023100f71d6e92addfdcf511aec5abfc32982f6fe176e7910de1c887eb81ed6a2c384d361125a26af4503744eaf1587da8791a0302047c435bb500663064023039d8e9663ab2ffb7f59084764b88f5b1df3de5a21c1e5c0778aa80739ef400d9754a6eaf2567625d6ccbce029c284a95023028b50c231f1fa3325f71df3172a0e5a40d2a246c3f5f0ac14dbc37013f398c0b16cc3d740cb55d5da2124029effc8c830302047c435bb50067306502303bbd815358a4c90bf45ed048c4f69336ddf127a069aa4d113d8b3d4a24cfb0f79355def738ae778b9a601e376f076778023100cc4b3f4a4537eb18e491c9564a7a968792b6bb6db2b2e571b250c7e7d319759663179350579a62364b37e0841e4dc7a20302047c435bb50067306502307b0901e0a5a91dc725b47fa6624000425958018b6b6177919621a3b470c76c64e80fb6fdbcd702e53c1ba6c8524c0592023100c9bf73885cc9dfb7b062429820085b73ab0d8d4e7cb0a2d5237e5ad7cfa470e786e0d8b85b4d34fd7aa7c1fcef4bf1b10302047c435bb50066306402303e00284f9775f76ab0bcb2cc317e13dc161efc1c966d5f9ceac582c28ad1014bb033a85e4ee5afbb48b544ccc2103eb3023057618bbe06481839df20b3fab881ece28c1c47ae3b25c3164d0ecfca6149c5b31806bffbf9aaa49fab8775ac6a1df6f60302047c435bb500673065023100b8e771f7a1a695ab0ce1ca60468e72ada6fa4da1b5c72287e1d2e4bfd8fd069b1891c85aeb2c5b516e2175cf24f7083402303999826eb74fbcad9a43b3f46e2e4a7d57487eaeba269e75261ead7dfba1658e5f9d348abc79f33984304c37aa7f16280302047c435bb50066306402303a4ba569d76bdc650d4a01963892ca49588a2a5ec728b9bfc9f1925595d40607e640f2bd506ee35f46fff1391877ac3a023006bcc5ffd9340ed53af85fd342b82724cdcc5dfb35120b70317fede17724bf33baf3dfe769f611318b39287e16b4118d0302047c435bb50067306502301d25b9cab82ea6dc06c836fb76984efa4df76af9a6978074c114d995bb56ea262dcafbaaa0f504b0a5b727efc9d2aa8b023100f5783bcd472751638d9054f3bf7832a5636f341d437899216448266ab147ff39d1e504dc4476e1d466c45347ebf4029a0302047c435bb500673065023100cfddfde6d16e4507054e34ffd4982783ed2d2c002a868e15201e2eab5326bb0e1101db1555a4dccb4ffcdff506cd117a0230403a706799731a88c43e30913afaddf001715775c23bfc8b25a3bafa8b7b323518432eab1e7d5270030ef3e688e87e0b0302047c435bb500673065023100c9850ffc681576891cf6fb7f44b7441fc8326274b7764edf2fb5939fdb404187e73fa199afc9054781b1df58a021bf8302301014bf2b4287a1fbfafa4b88f5370fce69ca5292eec17152fcaff935f2e921367cb14ca9767fcf7e624621274f12a3fe0302047c435bb5006830660231009b4c1c67981c7696c5723e3681fa1dacd99fed0c3aa3166453f386c21dbe59b7486a0a1af83b79d8c644c2b4b8278db3023100c1f274765c578c456e2304ef2d197236f72bf6fa1bbabb96bd556e7e41186d2270d5f6344e1050645ae98f3cabba40920302047c435bb50067306502304fc7854da3d9229356e08631cf949c7a6d7ec70a3e44a03fbfdd81bd65bc318c288c1aea39e009adf47dec8d5ba0b2eb023100999808340a27ae97fdaf09024ada3c6746407df2a68df7b220b3b51e7ffebb56a574eedffd6efcfea716ec57db40e50d0302047c435bb500673065023100b30199035822e54c395aec5ea165f5f5189f64c5ccda2d630fd54b673d8585bb7b3fd162ecf324a1621393009aeb0dbd02302165133297f0a675b85397f16954375f024c270d8ff81726df2a05ee2a347d9fec2ae64735cf044660e3d4d0d9dc54ff0302047c435bb5006630640230682253f13a82646a35a4588e6824bb87e48e67f60be0cd4e0bf638b4374afd831cd5d3a80ca5fceb400b35297251661b02300c726797161db49ee8f92dba8968b178737ec74c6d11616ed758f04abb431679e379083c9d4795ac92a6a5d6d308c7050302047c435bb50067306502303da6485d25654e5368612919eb327faa5d1c5e7d026ff888150bcb190829d3ff2e6ee9819226eeae0d110dd61ca768dc023100d451a5bfecbd7e04ddf80b40747d5fccaae5db96657ec2e2c7b1545706454591ea603d16ea5b653cc50f34b0c762b6ea0302047c435bb500673065023005858aba3c9e11f9e354451259101e32073a2178549e5db9b3fbba623cf739dd6c643fe7544d9e2bf7564032de850796023100e609787c6b99df4ef3491b8c88f0fa1e0603bfd5c13710dad6ee8e57b076c00bd8296219075d66a48c45c799027705170302047c435bb500663064023000ab9485c25d96c5f29099ba6f25ae35de1fa45c0a296db94002cc9fef01b110a23c9ded6ed53fa51b035ee7685fd1a602300c1b965971d4a73c4c7b4bae001c3be950ae6eb4f40594a52aaa43c28984166102a672ba5fd9cca3a8f243650c9111f50302047c435bb5006730650230282f7b448e303a59aaf7d2f7075a41f6c74585bb623ccc8fd074bce2256a74b64d17d0c7154e976477ebe1cf9d614057023100d20b87c3fac127e2e21f12b9529cd33263ac8a7e51da467f390b26df882bf36db20dcfb56867e8ff6dc6764653cdedad0302047c435bb500653063023001a5c48966e57f32b31ceb2d78aca92367ad7f21cc33c494abdf190e3c3a244ff24da1c0120ef9b6f2321df334f10c2e022f152a6f7b6bd76ac14f7654eab32a8b46bb52e3d5c3654c01fe2e651eca4f40b19765cf1cc1f9e276055e1f257b1ea80302047c435bb50067306502307bb8821bcb900142163fa1effaa42a0bdaee9155c72df76b7f4869158f1c16de74e5c9915d9c65440af73b38bf99a965023100b264cf4f3749684a46a2940ac62adb1fff9ee4de5665d89ea10147bcb8f94cdf726be939520ce9c6d184ff07c2a9667a0302047c435bb500683066023100b3fa07995201dcec9e5b20c676b88b6d0ffdd9319f42f1dc8fd9c9583105d222363ea115a9bce9f3b09d41a5a24a7b2f02310085946ef33ad9539061d981389bee5a73557795fb6d773a3b5eabfe9786866d85283fc8d997bd86a07332402a9cada6070302047c435bb500683066023100b26247a32414c35c6398b1cc39f5533b57d1822b8ed9ce7f15a602c54973ff45dedef5e55723858e2c3eb052a168e06b02310091ad417945afa53ea61676ca394727950d8c8e3f069d78480f2d321b71e2e2d7dc72feae708769a5bc94247c0acfc1d60302047c435bb500683066023100ae5ad02e55caa7735cb833c9b91b17e22b2ad86a8a7317ae3e0d1260ff2d53833ff2910143b5ce629eee047553c64b7b0231008db1e547179101742f2ee444d8eb88bb9a5305513e650805ba302c53f3cc655418e6ebc3cd0c16d5cf4e8c2287ffa7550302047c435bb50067306502303df5109d40fa346df5eedd3cbf7227a86f076028b9fca11c432279d6ea633f1a4969d5fd90031b83e7896fc31b90b8c5023100b9f4004305996a5788614eca061e2c52ce131f665f1ea36592f9476308a5171dba0b86acfcd610963d5e2f0637b33efd0302047c435bb500673065023100969b8b1361c9a1e43eb2b52a340223c2da088e8b666fb2fbadc715c53f35d7ea2012cb463b674672b468bac23237319a0230682e63aef95f301b5e835988627668437898b3640cb9a5ad053380d7618a8fb81d0fb728c018d90d0175dc16d8867df60302047c435bb50066306402300aa2cb7901905846f61fc0542092301ae94ddb209578de8707c3e58aec8dd994f69e7541f5d37df7b90917cc3a79de73023066d62f64c25856ab2cf9033e5ef0287bc2a49a7823cfff9110b0e6fad913f322ce323b3b5cb8945b8e01a206a215de6d0302047c435bb50067306502302d42bfe77e55ba81c511c7a6f76ce4aec09b34a3abb1be8ab956688c215a84396a4d4edb9201c62d73e1cd7251ef68cc02310096a3a30cfe3656e9615781d8e3cee73043014097fa8c1b015567af4b320092691f8893b38699fb570d31a25bb3f2f7e60302047c435bb50067306502303aa042c3ac7efb68d8489b144fb802ed0cb95fa7cf879f0424b81aaa33e8c03145bc7a3158c075617472ca9ebe2a4b1d023100e9cb22f3a7cc36f8e7c5a47042a1a005e597f6ed2b743cb273374327b2d7af6bef43fbcd9cfe9e05a2d2d7301663211d0302047c435bb500683066023100d2d79afe98e8323e6eec69f1bed31776380a734dcdabc8e5bf15e22d1b91e76bb146db354f522a925437444684b284e3023100b6f29660c5cf8577ff228665289c04850e596c04689ee5b1d524eb00d55017da4e1d9c1d43f8985bd237c0e1e52912990302047c435bb50067306502301ce258a767682a4faaa0c895dc053902508d01b86efac540330e6d03b7eb49400b9ebd4dd445e1af4da4cb9cc41df6ad023100d483b9b8695d17702147ddab39e1ab65badb35158ff4bfad3ed6982b0b0d28f84b69378c8efcc1f2b4c2b720c43c0e800302047c435bb500673065023069be168c2800f510dc1bc8e26969cb4ff6707058d549f41ad1e480b6d160b3c64edcfee144ae057e08a77bdc954279e1023100ae6b7b8a849d553ac69f5f56ca58ff8edbd2ca8fded3a31788dcaf321602f92e9ead35044563c0f32515641afcdfe1430302047c435bb5006630640230714d3956c6d4addf64ebfd10f73be40423b38401e03245060fe22f92e4f36d66ad85707e71f7d7adfb46760ed0c3112502304048d460bd5bb0857590e528c1ac78ad5f19404665eb80e56842c5ee49579116b3e1e95027c61d6ea3f969196329f7860302047c435bb500683066023100f9e1c90bac4d803bc95206a8a2dbda7cad817333d31fe444d02d3e727ca91e6e5675cfbcbdab9059b0d1e0389d6d3ae60231009fe40fb1e58603963dcfa6c360f9277b708b08180f73442dda95f1525df217bb499d77c8b5769c270f008900f8b4ed250302047c435bb500683066023100e66513f062ca5cd2b0c838c984f5946834a1ae25672ebbccb8a272e7019fdee4141a777f12d2d50720ef44237f9181c2023100a1595db17c1c9f2519bc22abe9756a64ff1e51cd36dd1065f767d014264cf4fcb8cee885e6df9458454bed70aab9a24e0302047c435bb500683066023100e87cee8eb3fe5b03067e02ccab39b2aa4d2a36636844678153600e877b81855b39e342ea20835c9c1d30faddedacfe170231008d7835517e69c09b24a34b20f376a2d5ffba4582eaf17c88b6cdca15f2744dba0e6927de4e1907e2da0d325ae89b0db70302047c435bb500663064023074845f764e41ebed724087d030070c27e3af0bb2c64c08e611167b9f79f0e3896d79829895f04ec719f6ce1a86518171023033ac8b5a7f7185bcaf621b0c3e8f04b2280f5ea4ec48e4ca34a309a4811cd092818aa6f546c176f7a4bc89dc81ada4ce0302047c435bb500683066023100b3c687ca934b8ab9c280176cae8f0493ee79b636773df89d809b711b7bc8136485b8579a34809f24f813f6f4394da5be02310083a14fadce8e509783e281fd9acd8bee2410ce0be5aa0204763f96d1f04854c1505b99bdba123ea161ff30e20fbca5de0302047c435bb5006730650230198dd86643bb6c7e29e2f033c5532b639b231bf97b5d92ac2a172a88bda67d72d94646e84fe69a0b7f5f41b3a1e9fa88023100fec2df61c733226f16edaa03268e4eebcc9c07eda775969b10fe7377607f4d426b097d0fe9cd48f6ac99a8f0aca202110302047c435bb500683066023100ba771eb8da9ea8431528d8c86d6e6e393ec61b5339642ca0860e102ab1f294927d6a9480684fe5644d4253b73ba768240231009ffd852427a54616e5be66d01b45644c010a56234ffcea21a3bd00adc4049149bf64417bd28207de4fa01274c6b2af450302047c435bb500683066023100f1c1aaffc25003ab98dff8ad66274b21f7688ea5e79fbcce908e4eba0127663a446a8aa0ae37fd201c561f151d8ce632023100947ccd78d1f9e7b5d695ce45cf2d41a8128f7a80e2a0ccb3aeab784de671d2716bc7fead03f1915a5d32b50795c9aaf80302047c435bb50067306502305b9a31c0d69ec5e47534e0154c66420a15d94702b7c5af52425693653bffcb1c33d64457bd020ba1e2e84867a0264098023100b1ee607478864fec04a6983cb01c92f32a6975f2480a93776902241952e88197eb40970714decf9049274c7581bd1a240302047c435bb500673065023100f9e24be3ca0ce0b97130d61cb8e64bef39b9fe2557aac6e237f8f56c55e46fbf265da44ffeb71bb17fc4167fa6a5b7620230724998fb19119a65da0504f100adf52d4a38bdd1a257563b193cde27981d3b09d335916cf25c29488f3af186dd8cdd5e0302047c435bb500683066023100ce84d71934186b65f5f1cd475ffa5518abd5e5120e2640763cd18a8a1fb2c1de1e8a7995bd200b2c4389ac615dafb53b023100e849b40d71a93bf39783b493d3e73fcdd3fad794b47d433d3f5478fe148601e06a82d1f1f34c71c17f6574f5d29712f40302047c435bb500673065023100bd271591998f1012a07e49721a2c8b9d299614a9a4d705befd189e22a5577740cf06e3148180bf5321628a441bc69b320230148d6872116c462333c16f02f8d0e8b3beae07acf6ad61a7f9114a14dab53e47c3092be7208f14aa8d503f2d07e1064c0302047c435bb50066306402305f8d8aeb5ef764c4e04144ae15692c53d67ff53a740e004762ae77218b34e1b88d5a14eec3d1f0ea5fe6a914555919c702302f48e953c540c39f5e708e2360540435c0b876eb16535b6e715a396873aa2e4cfefa8bb5cb64479a97a4bbdd47d265f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305c0498156a4116b0efb62fbcc254fbbb5c64d450e1d8d45ba94d21402a7c3855b42a2055c58afb06b438f9b3f482837e023100cfe9dfae4cabc922f5e4a5e62491baab4081714439dfaddfdd88d3d06778d6a13e5a562fe625e2a104f70ec9b6c9e2830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306b64cc6513d38675a1b80b871ca6ebdcbbccfc18ee1775f73cf369e89af1d83c4055e956979a938477f8e4b05db1651c023018f377a39137a6fdb7cfd7f34608526b8ebc5f5effb8bb4d28f663d50ecd13b6a76f5f3d6a4ab8459e25ac6c7433aafc0302047c435bb500683066023100fec53a9014d93e0babf1ca6e577a31c4e87f170aafbc58e06b0656549e99578bffd5e305ee53b5a6c7210ce44a1613b4023100d38209f9048a700cb3ab2dbe311401e5960275edd1defbdfc59cdeff88d110f37ca7d55fca7acf4948aa5a1e67c384fd0302047c435bb500673065023100d2a1fc05d360902a9861e090d85ccba827f68f29a2331caec840aef0276dd47af244ffe7e3daf8e782ea6308d439b053023019daadb9721ac0c00a43870cec6ab1c8483cbeadc563709a20f40bf7ad29a134b2d3a2cbdd6b50fe7bbe0822fdf58cd00302047c435bb500683066023100cf05b6da1e4fd3b679e87b1bbf7a0a6f7be412857fcd7c9d29ac2e40789b1b1f80695757ece7e61c2dca2ea79d387980023100920d2ef680e9706c70fcce47eb78f3ee60bf79269f35816daa16982b1ff23258a6f58203575e9a990846dec495b1051f0302047c435bb50067306502307361498afdba12804f5f969004ebe63f4331d3a217e211fc4d1c7fd855c4a9b8d0b23051093188fe4e7c0f33d7fd9f6f023100bc8d38b2313638b7b138bc0089f9e60394a8fb8d4fcf94a77b002b0ddd3e186469037c010c1ce5ac6784470259ed0a290302047c435bb50066306402301280f07e29fa3d3821f4b4433e6ecc627dc3906b18ec170fda4b714d0190280c62ea95a2b64c5bede20299ce3734c6a702305a92805bcc2a76a68b94c7b3830f53c160fe9826675e8c31a5a8bc8f4aa1f09165558cdd3c833f455ec83a347f9a5c7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302bcfb75530bd74c1ae6516cc215d8df79e23670e836f353891a0251d45b4ef5d571504cda12dc66968e8dff0217dbc8e0231009e07a1f307bdd0b59fb43946d298fcd24064e9d8cbbd0319cd70f60856a695083bcfb2bb0805abe711caff28c18617d40302047c435bb5006630640230667cd8b5e08a4bd87b1891fc130d17a0f8b0e44c4f7899fa9df24537cff2da702669fc2c626977d1ac406836f452ec6402305d6ec6c9160d5b9ef80224504863d57bf4d1681d6b172552786885ed9a0650f93b1025e2a2d61123ee4d7158140cbbc20302047c435bb500673065023100d8027dbc25000a3029f4281c948456afe08449565ae4bf6c07e91b0bf86f620df5cd7079c3e1cba8743f56aa21b5fa72023037f59d9917205f08db6a00a3493e2e23c1f3b9950898e246657ae2c758597a95c84b261bca75ef450c2a083cf4bd9a1f0302047c435bb5006730650230481b11746230d65502077cff79e795add51a52e0d94d30450730748323be6ad4fedcb278c678d44b255657888fedbd32023100d3eca1ca22f3515e14fed4a645c6d0b999b0a1957e677c774220d32509ddd3185459982a9ba0388d93205a2fed9399f40302047c435bb500683066023100deaa6e7842cd2658029985e527088c83c8cc2f2719c743dabedf247678c23e8420b9f1b0ac3ec1b51dd9f66672bcb095023100dc242c8f09f56a8e615fa8308cd21dea06a98bfb7eed11d3ca5ce4247f5454e308059f8f97d856eaaf389a5e62ed60310302047c435bb50067306502307f9747e874265c93582ccc4786fdeccaeb449f6f6da91dd44d46a6038942fdb35c157e2acd03df75cbe6c3010af13d8c023100cc095e3fee38efc411163c3c61955363d1066d4e56053d44b1678e47d77ad690944ffb0115524345172ac584a4647d970302047c435bb50066306402302970b96d15ec810a597b782cb03e6fc357fc3005478f43880e67c5339a2a7842d23d34a22d5c86f0f198d33ca1101e3a0230397dcecc54659ecef3e2427735e88ab9da4dc75e7411dc37d875217e1c7306b067c0f6280258b6864f5f1f9bf020b7f30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023050ccdf90ef9492a4933678a7a1978ba1c70c700d378d735c9f635d99275161bb5b1d13609242511c628323e208a5dc8a0230353b39f2897f0f41b140527ceea5a0a53c5b714007506a36f328d44ed6c17a81b12b42bd0249c5d207531f2a83583d4b0302047c435bb500683066023100a8d4132e733673e8cc171dbc512fb40d829231465a8e079c3cc985edb045d661ffecdd8957e5c328a16a076eba91ed09023100ac8954ca71cd20990723cb4e29d7ed53a2aa1bc5d489e77aa6acc3903b0078680c1f9fea82d5c7276bb0e416239eb1610302047c435bb500663064023027fc1854561f1a34522fcd5cda5f64b332b92b52d0154dfc8ba4843cf10ba386f6cab753f35a895d4df6da110dd0f16902307a42017f2b7201704d013b3bb615fd1369a0a2dd25986581179d97af47fd61ac0f1e0f759dc3a31bca541e2712a9d84e0302047c435bb5006830660231009b8d8dade92943066684eb4fdbd933c3a3d3fb809e15320899023ae9f9d780c4990491f6149355643e9ae0a7b2b09d35023100b83d2dd9868fe0ed0af9ae39c473f405fda10d22d39d01a6dcff0a9222de2958877e221387496964ced8a7c2b3666ba30302047c435bb50066306402306aa6be43fe30954e2a27b601ea84f9552dba4363319f79363b3ee14f5e9e03a234bf00861ee1968997b4a856efb4269a023057e6ff56773f378257ebde4e8900aa5e083d4e33b009d68a560bbfc5ab16c928f490bbf05e8b46856f7a7ae98b5581580302047c435bb500683066023100b5b090d00b158ea7c167cf9d14c8a7e0371b8142c5540afafd0b1918a314582462a0fb86dd3c74c219a2af8fe412d93e023100bc48781d29948c6e229ddc396f9de4fd68b6900756693060d4889ed1b49026bd23d0cfcf68e1f413d6eea39cdffa535b0302047c435bb50067306502306d8e56cf759cd28d065c16aff28109252122e843cb3d51c66a466e45fa0f02ddceac28d5b97e72bdbb9d13b0bf033ee2023100883df72af2f3fd3c09bc3988935f5595ea658755b1f97c696d5a60ec2d16cca873e6ae115995b5172c06c2683a7032170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a39d8c9d78a333ace861092aed0f053daa48c0f735a57d6f38578e4583a131abd644aef67b2f562ca2fc55399ebffbaf023100c657cf93156267fc21dbf488045155cd9c1b1e5b5a8306a39f3b6d42ec835a6bff2a43a79d7a99932a51db5d4ca99c130302047c435bb500683066023100ef80de887a42dab43b6c055a9146a49858d10eed2250629d4507f8579dc300af7f6569c81eedbeb2104a17ff73ca596e023100802642b15439941c0daa7b5ec114c8290cef97ad63d5f391cf43bd26861bd50ae21af21ef6f9636ff01d24dd5169fce90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305b97429d396ab07f578160dc6d2743680e388d56de07f5ec6f95d060ad08af3ca8f91ce3cdc31fd1064b4db3fde04fc8023046fb86da36b4fc9a6e2a268601835cfd5eddb12a48aa4851e8aa6c7e986139502c99d92bbf66f4722bcf48e2c94611e40302047c435bb500683066023100845754d8e61201ebb3b0cd956e4928b65c5434d22c2cc0e2c0c1e2e14a9c67dfad78082922a6ff1581a171a8e0e9ef9c0231008a94792b59ddd21c4e942b832f5c9bc5d75e6081e9d4a627d4d82a31b077c73efbf07b80a1227815b1cea6a55510d24f0302047c435bb500683066023100d9f60592d48d38dc30ad3cb385e97203ff614dd805f8c3a17e5a335f243c3207b7c5227ef2cc7d506112bcb10e4e3a2a023100dc22912180d8f584c6f495ecbeef5cf2ab12c8b475920556c8e03d7b696f8b86ad17c743442232b0bf4f51c191c7f3380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d169b9114d090ab5315b5544486acdb159380e3e63893c0bb3355135fe926e685e862c9ed396734b57b792e768aecb8b023008a735a83abd3c6a5543a556cb43122533bd8265ec8b94c1336590bc1d6af55770d96dc4de5952b42d88382a95b1f75e0302047c435bb500673065023056bdeb9000ae2d531315303b58ca624ca71a1f3f131c4ff560d9cab0d155447d6e58dc13a6dd8f75e274ffbafde67bd70231009e6ff315a9fc4c0bc3cb1c09044eee6654345b52092da702555650d30f3d8bcd540054a0b6ad32e0c26f66b8813dddd10302047c435bb5006630640230762f5a7707b157ca769a96b3e28439ae8799378d7ea00465910fd86a53ec9fd95d90dc9e6e34e63d289640e343d3f2fa02303b6e7b9a59d68fb87f9b7607cf3b21bca6fff918e3fe1fdf9da6dc8bf08aee76bc8a4b1b2a2e97026533bf237b8f5f2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073a39ef3c70fb5addcdbdb6d74dbd74b0f88bf76833253f1a1d8e76e9e27349052f54120ad333b0ba48dcda289e837ed023100f9ca3a50bc52886c3d7464a24f21a00584a4c14bc193594d0f5a4cd8e4d46c0f241b3612ea7816684c9b0ac68286122c0302047c435bb500663064023038429ec9b4609377a9f9604c9c47e40b4c18b0422fe764f2d00c406b12f57ebbb1c449685c4d594a3205bbddb353b1230230798a094615bdcce7b785177a7c405a035c08c4c20232ef483cc7370a1f4b6460091bf8d3e17dbfbf50ea94bd518ad1190302047c435bb500673065023100bc8494bd30d62f059f585ee3a89cf0572b2055709b0103e868b90b8e5534f7d674d4afd0627995c4a7d635220e092cdd023068da907101d0b259b77701009cc2b03f0061ff06ac071f7a93aa360353b65817970267614d3e6099152ada01b0eef1420302047c435bb500673065023100d70996a7f11da01ed76a7b44626af21a801e95f553d5434c3d1cbbec045007b934dc4b4f29faab4eb3c51c135bc8979202304fa840c399a132cd54b5d8df2bffaf6f9409dc2e91fffdf91f7d5c2f47ddc30c01f061c7f5444f6d038ae8fb51c0f40d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d4e762f68782e7e2d1f1dd8467a4e7e04fc9f8773c09595958eb0dc8567f7e3928b314f40bf994536b968a75ddda716d023100b85d1b3217a00995708e201cacd6b41b3bc07d2146303b03865429a24ea6dabde80b5000a87a0758147f4e8623349c760302047c435bb50067306502302eadfc7e1a9f320670b0b8f0e165f5c936d7c69af74198605b28b30b3bffcf92e8b811f24c0f454582183ec3c88c312a023100ad45f9617b7c57147b9f2c311db5891c3a12406432ece754119a2065779745d8edf61364b8643a749096ad6a689503240302047c435bb5006630640230353820e07bb47621cc63a65b92fcb7007fec68aa951ffab68671a2695fd0abddb91d7b089df4ed6535a0ce76da8aebcc02300bd6df899fc9d6251d9776c42aba583f0d41e828e5b48ec29471d0d643c88843861fa09cd78f4bd0862e24376a4d2c180302047c435bb500673065023053e426be91e2c904502efdcd8e5a8eb4032719ce86b67edbb5e9a5a4e39c5d38d692e2b8c2d39abe9df9132e7a6427e5023100be1f504ea05c23b53b3b888202bcb19beecbde3be3e4a117b64863ba4cfa0acc4974f5e4c994464a5dc3a523b45dc8d40302047c435bb50066306402302420def7faac5fbc79b5e071d995a8bb549199c35a00f782ad7203ffae024c2d7e3d59f78e526943eda4217ecbb3bd5f023078b498e2fbd7cf6e52dfd6323bada14f15daafba03a15542d06ba00681f627a79d3b1712fd52690e228da4157172f7480302047c435bb500683066023100becb3271c4c2215a8cc52fda85e952fe83e2719cb9c005fa3dde77ab05433bfd091e5a8acebcc050dc8e22a6443e5e41023100e8cfde4fb414caaa5ecc5fad5987a7a20c80d8acf31c43df4bb732beb82e567cf60aded1504495c8e8c4b9e35e28a9950302047c435bb500673065023070bfd0ed2ca2a1e9795c0c59d70f5b0ceb89e1a4c57466715345f74596474216eef86ea24b4604ad58962bdc95962aa4023100aa1f64b5d3a15a66167e671258003329fe8a45e92a5dc5c1e90fb85f455f83baff8e637d9482aad7043eefd65dde78680302047c435bb500683066023100f481ce04fc440dc80131996dc8132d0fc6d955e73ac57cc95f55c42d97e713ef9ca25a86bcc139cc0b46e8e1c5ff6f4f023100a41bc05a52b8b619a6a8993c7bb8a77844308416717d4f4cf90517b9bd7b03f034138f2377b8f580405b1751fe02a6b50302047c435bb500663064023070be39835fbef6860c573911a574c9763639ea1b6cac1d5f5df83dd35011159e698f4fe82fecf2304e790bd8f409094502302ffbca9f9678b1351f9eb2a586dea1c3d949d36fcd7a68accb1d5fb6c02838a5a9df3e56120f5b57b96cb1fd022448400302047c435bb500673065023060d99cd6e76301b5d046253903d019258b3a13c571320d2a0c78c63f8c54cae8c0d01d5c87f3f04b436dcf117ce5841f02310085816bb8379e54a28e99df1042c7f350cdc188744bd0e2a743df535bc033e6500b1bb661d4f9e91c64a9b7a12117fa990302047c435bb500673065023016e96b612c4fa48206fdbbe14635d80e48fa9cf68620544d4af9db57445b490f9ff57854108bd697d605b117c2b1e9470231008b82b3420893ecfb4943fd174919631293fa770e3ebc0db7dde49c8d681d5a89cec22e15ac44df670d2fce48a5565c480302047c435bb50067306502301e81bc3ba26ba856065bb567af564e8b05c4846aa2a0c0abb349ee7a4cac2c3022da85f1e9f06b8b6f518ee613ca8a4f0231008ca4a36c4c16f682b9a523bf548d67ecac256854ffcd849e00c54baf5e97fad88eb5a1ace10236d7e4e049c49dd816750302047c435bb500683066023100dd4407dec2e4aa36d5915454c41693f8e671542ece78d93c45c015bf0547223c0ba729215b78746c55a40af5157a173b023100feab1dc5b2cee5a1fac2ee16d3f03c8efad4b6020dadd92a97ebc3d896693846bb0616ce5137280ac52a095d0c7f20280302047c435bb500673065023018dff85369c7f6532bccc8b0e6181572fd2037fcd29066069c5e94a1294a26a1c5a779e78fd1d19dd6c8749dec363bfb023100c122c42b878c020c6edc4645d08bc22593351dd1a24f6522a230fd17ed7598bae6edfb54da3fc4941ab1762054e1fb510302047c435bb50067306502304e2abb976a141ea3dafc151bfe6b3dc64667f9cebd1ca7678ae752ef8dd6addfc649ff31e7dc83b717bae02038f43ecb023100d80530de39bd034965f16b1042cbf242de190f19153c7106c4a5f712e13f9d3cb7e7d3b792b5b26da1ff83e06971e8600302047c435bb5006730650231008a96abf4509a81f2f4628caa3a70b4bf0235938ed8844f380717a562da1e8d3499168fe9ef8cb690030e48b3ce094980023069b99ba91f98c7074fb37abfe922878d2b46735ebcade57651461f1020a9552bf3e29c73ea2db6d650a70445223034eb0302047c435bb50067306502305738504ebeb7b89bc39f398f2411954978efa4494176dd87b5a85c381126a233602772f604aa86dc9c4c3342c7c160e60231008f17e6379347af8edb3c89d09bec08f7fdb73c4d665f0b340ee3977450dcdfb5bca2e547c34e010196b0bd7b11b165240302047c435bb500683066023100c6c88d8f13be36ecd169479e71d4255fa08baddad503229e630f9738b3a11c90442912c162c6b2f1443d955242f0e1f6023100a305134b44d18d84df780d2793896138a16d822bdc628c8aac9b8efd8bb9979948c105abd58cef97f28cd14f91f2672a0302047c435bb50068306602310087118a495c3c1b5ab5ab0ebd706e4a51a49c8e01ebf95d9aa095c9d1696f02583b956c36334c74f063821bdabaa3dfa10231008d8b9a34213a1f5b7779b02412b4922d693185b811ed5ade7cca7f4ae0480471c67c3755874d5e8db85308f2989c75e40302047c435bb5006630640230686266f82feb9d608b78f4f4f12c5de27518495ce942c04028d4ee49f5b3188bcf076cff30d5c80f1db3094e80291a95023054ec16dbb6a60e24f8b6d0a110804c4e51eb3e7a28ae6d562182942a8ada2c6f793d8cae6b5e059fad62a513ebd3839e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d22a977bbd04aaa5c5741b4dad47907ebd20367ff3748d2a54abf8c91e10ccf6e488619e09c55ed3b7ccfb37ffc4d6f023100b75b301f4c4f4f1e8d9a73ff6aa66287e2bd55a25e4122e1ac9be878408ee4cb34e1204fd49bef71424bcfaded5872360302047c435bb500683066023100d40dd389e004899d12e9252e1a862d83d1c8b972d56e5ebdae33d14178affd92cb1b87e9c62c22c2ebf6d5b49b7ade5e023100ee3b1a41afeb6471de5e54e567e57e1b49d805f6031457bf632d4b4e8aa01c3fb66e0d241a25082894096f4218eee91e0302047c435bb500663064023005fe8bdaefd4cffbe0a954f365835c2d0528ce05e4ffc2ada67ef381334d171938cd1ba3256ac915138c25ce7770590602305f51315971d224c933826a75b146f8f03357286e964245ab5009f0def916bf19a1397b41b16fdb2b3b9c2d30ba6451240302047c435bb500663064023015541572c06f50a205112bd00b84a7469c8b27961ae15aa369c29ee3cdd95f279e711731c54a0f2492146562a14e990a023029e2a37b85df86b4a495e89ca758cddb32cc99ea43766154927b4506a8386450fed17884d71d14e683cedf11014c50570302047c435bb5006730650230260220011d8b7269b0157967548a3674f7504215874ab9e2c7a9d10729530c929966564ea1f993dab0bff8300e92422f023100f3f9a1f6b62f8a00e6d32b6a30b13dd7a69e8dead5a212dd63880f46db32f523e83efdf8aa21238e38064a2b4206ec400302047c435bb500673065023100ea2835321ccea08172f140fdaa1f0b86feacb5e8615bd676d159c11aee9f0843ac6fee8bdf26f1e8de5e913b57d5810502301a3bd56b17822e9f5a7f4f66689b7cd8be9a829905a623d11ec38679f8d4c4c4434e51881c61c0fa97c3e454873c2b4f0302047c435bb500673065023070fa70eb044b3723fecbdab44c22eff7accbf761e3464a116521474007d06d9a4d7e557700b79dbd04dbc1348a5eb1df023100cfaad1e6740c9226e9ed83aa3620cc21f27ac06bf3f151d12455ec88d11a792b16ca63fcb13a4f40b627185db145e25b0302047c435bb500673065023100bfdf82cd4aeff95fb840d77c11f56e60af21f46b76293bf23342e30c24307106232bcee74bfc6828abc3f2d51707fe4202303cd5cc251f555cb6089ad4ae3fd84bfa1c00ddaed8f37f2e667a00792479b8e80a85c4cdde0e9207b77698c136bdebea0302047c435bb5006730650230189eafbb99f121afe8469f3a6e425937e4e2e26ce3d82ce334651c890c4d0fae47465fe2671877484c446515b53c4a4f0231009b1e3119c11ef2564f3f10e65c54bcc7855490a9246a5fe7c2f960bf8a987aa9cace462c18c3b779fe71057206e8cffe0302047c435bb500673065023100f9901d42670a58f3ba77a8656c1eee01e6aab8e941683368e84c765d8eb81ecdb385878709720d4044df7adfe77d085d0230230f35ea1285398806f1e44f763d5b497fe875b676d56c7552a326a495fb89636bfa907fda8020766c09adba966a8f530302047c435bb5006730650231009482745242b159f12fb796c89ea2003bec75d424c150052bbf515ad8eee6e182910ec242160d907c0a43fdf0d04f84c9023032f60f6c122e036f55696cbfa3b378ab4e0f85b2b0993556e3b9baa69157ecc64932b4fccd5c37bb682b87deea5415a30302047c435bb500673065023100f278eb29c4e5a90b548fbb83982f09c2ff575a965e3ebea68933c0a1f71b2a07eaeb2812346593118e270660923e55da02300b85876c6a6df78644b48edb29cb800a0caa41daedd08ccfb61f0182d7e21ffea137f1dd63d64c5e4a4066786d8babf20302047c435bb5006630640230419a289a98403b806d5ddc93c135c423b89f99877578c4c756b6ee760e023249233bf1b9e862319601e1944ecef1518e0230652e5cbf4568c05fc88e6390025e77708e470fe312f32518ca61b4be9956681c724924783fc90a9e941908793196a4f10302047c435bb500673065023100f6053e97101ea374cfe2750535b777cd7b826da6fa1eeef8062920e552dcde0df6372253b3c7b9893fe838372b4d99e0023061eb9614dca81633d74c089d19f5e1a5731e84e8d2d59731bcb044cfe3dd84fba7f37fc75db78a826d37052d0bcd25310302047c435bb500663064023078d15b25202c64b5d03aef4f0c5834ffba85205ee691e4677567d7e5aa4d5fd2d73ca9f0cf8f48d5e12ea21d3986e4c2023028995301b320fa37031df95b545e7719f4bf4cf4c3c2d576a8c28b23c2c36c14c277c0bb2f44d09fe83270461eb636b00302047c435bb500673065023100f944d375318ebd2f0b67df8a50622444cffc216305f927fd5f5ff1c468e61fc6222a8f3934c08ca437a61f499a9c072402304bbccf95fa6abe922695843a45069ce3080a1fce94e004c99ffbdcb068eaf2e664c83ed4247d0fcb611e9f3bea4e60250302047c435bb500663064023052df3c154b15bb9ae3729cc8d0bd6226d288d05e728241d6a4bb2904b3012aca74a0a313d8502782fad73b151bb1658d0230263b70fedef8715ff7e14048e1c3e1236c176cd9ce00522c4b9b4e2b8c5fb80314060aa25a1e9faf00e2b5c5368d77af0302047c435bb50068306602310083a2b10ad49ccef20fa12648dd4fef19cd21c058504d62f1c5c36de65558ce059dde41852f16073e9329dbacd15aa8e1023100925741d7c7d23efeb2c5232273abaed301c5c98262bb45edf2ba9cb6581e2d632558917da5e4894cda2bec72b4db27b50302047c435bb50066306402300ef0919d08faefa03a084fa3b17cf300709b9d352fa2654caed38a504563ead590af666529852729cf13a1f6d7c518d5023009d9d82399c88107f2b4c3da2b93e96b1b3d539f84247d5c4abe446317ed9d6273ea24ac2bc5b0f537e6732bbced1c470302047c435bb50066306402306ec9a5d01c649480c7718b61a99e439ded87246dbc0b2c2b661d31240af859f68004c86b9fe5a9c86c51a7e351a5c065023001ae07ff771ea082c6bd77ba442e2e37c24641d26ff5cf8775085e256ee2323c957bb4009376fe043c1bbbe3e464c9740302047c435bb500663064023038cbf12127636523d1b0cd5d9d15c8a47b6c3d506a5825aae5022d86e745d32f1d192cf06fd8279bdb87106f290c31790230478af34eca65e4b618472c96be2e14f8797ec8e15b3f96d4ef66d8264f7071f58bffff2ba283b337dbae4194148d210a0302047c435bb500663064023002158a0e520aee241f53111928446af52d439ce8927719283b1c536b2a721c2ebade5638a403241159a3384f9fab7d18023034e0eec2878b060064cda5e190a0e2a1412eb5e99c715b3d943dac041d989ad9fbf6b366b5cca84492a4c28690a9927e0302047c435bb50066306402306f532e46574a7fd4f5297f32c8d5b04174cb4dface68dbef4c3daeb9c4441250c4f237ba13d64d11d858e4cdd082dcc0023036a52e6bab00d5d8172d9275394371fd9e5ae8acf2ab2f22f8a562c361deba4a04f2f3efad8a7b4aba000c7bd9583da80302047c435bb500673065023100f22e0023a5cddef8711f89083b28e823c90691a965e38446a06d0cfcffe477ddea44bc8a9704db4dff013a737b0a33e2023020bd7699d8fcd24de9226d75d9c5e37ba937ba82b39cd8a886b3f54c32756d991152d7f9cc48810afa662c0e2358319b0302047c435bb50066306402304edc617ac4b44179f70754bb018a3a26511e2e29bd0994d05f06a1d9447b9be465f7b7b9c869f95e61e9e8f2ba801b64023007324736275832ea21e8ceb78ca22fff6d6f3bd6cd99def15e6b1b97fc80bbecf9aa05c348e74c8fece7965cdf5ae20b0302047c435bb500673065023100bb83b77363f656c77f1b1f6d11a196115ccd194ffcca3e16657e6b6295cef2eb476b44904d717377238c16509eb913de023024846471cdcde3affbc92139cf672895b41dd331520c69bb060bb3d223c262fb01eda46b416573150bb2c2439c97c4b00302047c435bb5006730650230490c19a30b734572b241b851fe8e8ed9635952a09c7c671d3152e97d52647924c81e731b5c0c99a11054c50518bde23d023100aa9d1ba0200e513fd099f7211bddf67b1865a69a312a0c30e269426f92484a9365b4dcd2aecc7efe561f91b9bc95742e0302047c435bb500673065023064d644bebcb5aaa4ddba1aaa733067a9f00dda5c421bb0e92b1a7e358c8f8f0d8c655d8a471066bf2bb31d8c0459ea81023100a5feeb3fac422856c9feed875195c4743cf9e5466089d7e16d947f4e1ddc1a6febb6c83a268333a7a7e76a4cb68124750302047c435bb500683066023100abfd8464e5c30669935a6c69f139a19fdfba34af51c9e007659920968f811f55aea8d3fc38502d16ac909ac76ed36748023100f797e13a60a842db49463b5b2bbbdda9bea5a6f8e7b243cdfe9ea644529cdd0e5d024425f8d53dd7dc033010366734940302047c435bb500663064023059a77e20b607d074003064fdae98400faf94ce7a2b01c56d0439af3df0b2c6a19b64adfe4cdf2f55b969488deaefb5e5023034bdd9bfcbd5c2275656fc2fdb8f02999d7d6e3a0af8f6a755eecf204bc56ce574e3d38f80a54c063d5dfe58aacb0d2d0302047c435bb500673065023008a5b4895e1f853d3ebee45c0b2ce1fb6f84f3c14eeecdd0451f261e3e518b28c26f70c6e5f6d539f8f68c62b00487ec023100a943ec9bb4cc1d8f0c7e1be0773a86b6cba676a5ded760c27e59267c79fe3f1008bc5a733e26dfa8a11eb016355f63df0302047c435bb500683066023100e11cfb0d734721f58b90992dd8da4096c6b5823e75507a9f87518edfda20aeb7823ad5ea4ff7ae09a2496b87edc5fcea023100e7ba07880bb34f589d13047072e694469e1f7b1e9c7e68cfb34f30e087dcf74577246d2ed050f03528f67987db42d2d90302047c435bb500673065023100a3101bc6d5e3d8106c1e8283c7fe190b823a095b8add567a363af2e6592f607e55af1ed7510121112a84aa1d4917ceee023059c8ea554cda7c7832f9e678e892a20d63a07d65e28eab8e2ff8613795f5c205d6591b75d072d16171c65c09e4df02320302047c435bb50067306502301137dd621b487e1c34590cb9d6d3729eeb4826ee4bc52ddebf02611e9f9d4cc705553906d3118f6d7bb0a73ae050a967023100b61c1eacc315d98f21d4fb0a86b9ecd1d4567600ccf0d45a9a86ab3d99e9fb6fffe26650cf784a3fdc1965793ec8b5740302047c435bb50068306602310080d14e57bb08a4e5f44f1b3f229bdfa02ca216cf99803166286c2585d5dcb5f475cb72bfa4e3df9fb42ebb6aed92f794023100f30ea04933b6ee13bd26ea96247c7a10c079feedd4a22021e16b586810816abf95a525021387abd5b8b6d389f7af53250302047c435bb500683066023100cd6f99157972acdd270984956e33fc3f3579c1da425556a686c7d8f0a19364687c15746d208faa55336996c3d57f76cf023100e023527c43d0efb19be44fd5998a3878cdcdfa227a050058a40b3753dcdaf5fb5351293dc63f9cc36890da38e8d7e12d0302047c435bb500663064022f724dab28a38a72ad3225cbc7f8ab22590972945e655a6f861f39544f13a22a21c205f81670af42bfc90fb602481e5d0231009b4c6d60f1add20b83910b0020bdcda1a8b7c19f358ba1512922e165d26f0c5d0c13fedb56b5c289459fa3a70432de770302047c435bb50067306502300ebc8501ba744c6a4231e43c15b28636e4597347146ac58a0f6bc969e057cba004bd3a8404d830b99b7a1a524f9d2f33023100838459b15ab15c3e5ff0cca2b0ad5a81d01271ab205a4f3c905018166b9f23b0c11281614b1e16e1ff21d18b4d886c9a0302047c435bb500663064023048390f297d7556398ba6a6972a7a86af366b83cc35646c2f739a0c61b607ffbc2247d9f8746d5f51af50008cbf7dab7a02300416bcf3ae7e1b3c57c4e8e7e969eb4eb556af2fb7c11999ae3d57aa4351f516c5b11216655b27f1486de90b4f9f00ef0302047c435bb500683066023100a88aa65d42bc27b03b5d1d96df57ed44f08614091accc10dece95085ed20c2749d382d420f511318cd357bd1bd84642f0231009e54fc84a4688d0cfaf3f0f0e5993d2c4758aaa69b8f6fbc969e2ea67211f222dc7d9ad168996eefbadcd6145fdcaf660302047c435bb500683066023100fb348a2e613778b43c8b9506a4c2ee547205cfef50ed24edae409eba18a30730dd29e338b15d1c1c25fd79ee17f141810231009b12c9b0d07b03cb80946ba0898117bd2ddc5ffca890dc391ac08e60bac56ebb2aba5047822bd47f06c9655a1a14faa60302047c435bb500663064023045cae2f7be65afba6c684c26066a7269f90b151a39cd98eb2216f45505774b3b1dc08d4be1453250564ede0731af867f023028481abc2f3ca7490cece59d71ff91c8b2c3836d5fffbd11038a66ba85af25d76c66b09915bc5e1fd5408a93d0b15d850302047c435bb50068306602310095b843b2836d609e27dc3447348fc0e3237f280f5b6128f98382d933e69de807135bd7beb25a9887538d4276c3eb406d023100deec2a253d01c4f58d1d46b8e70eae2b35d23cd15e97ba328e38f938654c2be1fd24cdb916fed7d33e42695bba3ccb150302047c435bb5006730650231009f439af4c75408164003bebe22fc29e8ba48c5b16ebabeef1a74ce73335f512525c4adca0a8494011237725dd293db24023022e2e351e84923bd1eec1449dd548756c2fb453aa578e9fdcd801253f71131375f4e90f77d47ebea0f4c6fdd6f4143de0302047c435bb5006830660231009f4612eacdc4f70d6ff89768b075f83ff7a6ed40d85a38f6b44f1e7a189874ef7df18ae2c66c4c8575b33d8e45d624650231008f9a8bd656dde456af7d9386e8c67cdc7ac00c7a24a9423c53f370e3bcf732c413133d027200da58eb1b42a30f7d30330302047c435bb500673065023050cb13dbdb736234763fdb4851e320755235c6c29835c4e55fcdb0842de9dccf0ae6006343a3fc9c0aa178cc097fa916023100b246b46d7bfec23aea9f823fbc13a6bd4ccc689e331ba75d025b12f0436f3ef2f12950e84d77e0e3b6f0a75471379f360302047c435bb5006630640230311a1b475a3f5a2b4e8b1756ae37f63a10e219b0f46c1e416bd6485bca18c3865a13ed4bb7d2c427f1dd5d2dfb8d03f2023056e99b05df21c9b183eb0ebc52481c0e2f1c699a96f1fa246e09b144cd4245a16b5c3894cb64c617cffc30820d3046980302047c435bb50068306602310092c4e416c5f849e997b62792ec0cac1bc2b39df4f47b8496b21f1f81cbc5d6b0259ce3582bc0622faa52557f52ccfb38023100db963ffe8fb3660d74ed3380f43a123c89dd1a1da373c7d46fd054dbfbcd724cad95fa4bbb04d4bd495d738599f2e1840302047c435bb50066306402302b30b5476cdb2bfc90b8fc6e7193149b4f997196b74fc061944474c83cb2bbb8cc49e04139dc16ac55f179683366d265023049a60b2927953322aca1e22b0e2860433fd1e81d4835c2ba5fdc472d8bc6c277e4a28c2986499ef62b2059755deeaa7c0302047c435bb5006730650231009cef8ec7cb6620e31d754cd57a4de111968a9d62418f54537020269e1b85068909a0c6a3be78015cb5c580b53eda0ced02300dcf2da83a2d94a30bd1e795947506f1cbdda8962a219936398e5e06753698112015bf7ae6e513b869e819e96109e82a0302047c435bb5006630640230047f3f59492623ebff4687228b74b0da500341d40cb15ed22964eccaf210a96ebe5c892cf295126f102af992899fc49b023065f4d82400c2b1bd77cc777957e1f3a1bb692133b82831f3397ff41004cc0ccf33d47e0f640de455bbff5259402c4ec70302047c435bb5006730650231009a3c608e567eb71f8fc961d7df3e001af614a67daab86303a4b1198850437a2ef9d08f5801be8dbfac90748b9bddf1f60230340782889026a5671064ca23ad0ee0e98c0419825d7266737612f005c974f745ee983defc971f26a704dc5565c3d49960302047c435bb50067306502301c0ed78c1a40476f47afc5f320299805cf2b77f9203dd6c649bf10f8ad3ddc614e9b8c6b220ca5b851de00dee5e3eb5c023100da7f838ee06010292fa4b15e1797f7f11e0108ba5a366188666d13b42bdfacfa23e93a3b8915f1d6913e68365825807e0302047c435bb5006730650231009a92a2ebd88fc6c9345510a2f6dde1b030c6749cc2f1f67a004e9e101feb947c6caecf33f341ec2ff24bc218e2fbe09202307b28da88dc453c055b03e8aa17771e8c1438635ae63a201df250c38539680a59037bfed86af7448b408fcb5df6022a5a0302047c435bb500673065023039a2e3deadd8f2b897d0fe7afa5ff0f4522dc54904cd0e3c78f9da93fde138bae747e7add8192047b139697269949ca6023100b9da0b916337b2d46614f64af993cdc8c1f297ef99ee0cfc03425b3adcbd730eebeca2f942de2dbfa8bdd1b5774df30d0302047c435bb500673065023015fdc82d48a2b51586e8b360cc85e18d211a3771ffaba7b5df7af4c666be19491f560e0be8cc0580648204cb797fb611023100ae424836635b875d021997a7b86eb3dd546b4f102c10f8110bd64085ecd8cdd2e15db7a08624f5ec2a86356b499d7a340302047c435bb50066306402301c11140f4facf68311f71be1eed4a223de3376830963e8eed7c21989cff7c16619534a4f2d8d268e78b443a10dd6271102303b331712f8db5615789d8f60826db4c39fa40d9f1dd96ec285b582817fb4bb38817782a017f38e3df45cf093d27209520302047c435bb500673065023100d5137f615878671a57e6bc289a115a34c72bcdb36da5eaae13be5cd3f7e7b0e5d5563774c3880909748e924df97d9d9102301573932ea5b4fd52a3a2e90bb9dc3568b341de086571f005bc5010ba758d563b5cd4a8c1d332f37766a6bb6272cf72a90302047c435bb500673065023100ba39f989e73392cadf419f279f5569da6529ae5bd4a34a314777fc9fef12c62864e7c1893a6be440b0da681ef964323802301e9d7c755e6ee438a0f2f17552a376f91a73da93e110b0d414536aab78f603419fb7366c1a45761980eadd66268098410302047c435bb500663064023036c1adc53336163c7b54e347acc4b6dd1d9b537a101550f742e465880379b907b3d908255f396fa656808a5f55732d02023026d30bcdb12f5321af30370ca7248003ca9d4b46f97a139093b9bba2f2585c36e17a0171dafe1df12aabd34236b8fc1f0302047c435bb50067306502307b57f8abb438793b34d7b5f063d6dac5d0c27c629fefbccc316b2d55552fae2e626123a23877abf2a5d56d64ad73c02a023100875f9edff5cf008477cd688109eb1f6d6313c732f7010d1e79becd440ce8fd4aa4acbe492af0d9232f53d7355cab825f0302047c435bb500673065023100f617bc6e6eb2552da4da9cd3039ab690b714d73884a61dd2df062baf7516eb6de28e24085ec5b9a56541a7256f56668702305afa684e78122e92b1820d4b794fc431e0e7a00d4a07d29e7f8dd137b2f5064839463578405dce61759dd81a115a692a0302047c435bb500673065023100b820c21b3a8466e7cc566a0e37515097f48c0fef19842efe4b7f1e539b8229cf7834d0c7f4b89ca2b35b44e50d3347ec02306eb694e60921b4a620b3716f621a8778fb840a860fcab5fbe4104e16f5fb06ea1621716eecbf7a0f78360fe4d84f42c90302047c435bb50068306602310090a4350450f4c4fbea1d5d179c0a755540fea9887009305fa9c592c9234677f2fb12128781dcab9fdd9db339ea72eb77023100d1bafb6e300b7364becfef972a6b96930edfdd5c98a54a2cb984a2764c6e213e6be5f0fb92a185249d85efbc493770b80302047c435bb500683066023100aa5ef523e171baf46a033b60659eb119481dd7c0dc69b1cbbba8f5201b5e1de28aad8afe04fc0d12904d40047f869521023100e7bd4e291008b71d233c1d0c4a9a3167fd3a1b1885ede5d7315abefb9297732b9cfa8dc7010d9a335c29d1b3f4119ae70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f84945d743b04985a5fce700c75866647b953080cf6a573cc6f9b43cb4a08318ee184c9ff474e718ee13e08c0563c623023100cd495c0ab974e111ba797823958efc92e4acadda2b2a050668c0f51df4e69082661aba719a54771cfceca735ed221e780302047c435bb50066306402307068d1e04d2c62ac48bae84d2f0994cd6e86e0e1bbfa60693f23e79caca3432ed3b6f407b5c366172770b0cb3b0726e302304cc2f089e08649903d402c010899d4c985266ff9fb6b0f3211f747b894908783768dfd7006c385bd7949ca6c16183b1c0302047c435bb500673065023100af1f530335c5d42fd1f32c4fe613d54af6471b53c030977279be15edfd33b60246a90fd55265f124b63cf84fd2c61cf102300487e76b8294d0535a77b85c5a1ec0d64dae7759a5fb5a6a7d5c52c932789b92a33b35da6a25575d7c013f536d4e64d60302047c435bb50066306402303d69993069fdabf119ca59f33f5cd96332794f9a7e70a48c829b8bcb95395b5235eb6db88c4bf67991346c392d1cf1eb02306e363f0ddf52429bef3a5d3a558f576f2470b9e4f334e643171b1cebc267347515188053315f84a8c72fd7d888e0678d0302047c435bb500683066023100f4d61ec2f91597157e32be7a93e72e90e1d4e1ab34de7575d67f1ed20d17c1d9770a6c8d657057cc3582268fd5589a2f023100bd91c6fb217f488fbb702a3a3442a7367c07b8b547a32a23e9f329b0c928857fde220f63bd85628c044e7d9aa6e9dc2a0302047c435bb50067306502310087726fa1a2b061617f2450d4ac8dec72dcfbf0ee7ae41842775a49332fcf6f50094ce93472b0de8634bc2464ef45e1ff02304ac04355dbbbbb819be9d20728304701fb6fbf8f67a2cfc1289b80cd5dd0ec7361a557c39b9a0baea16e82d2ca49f0750302047c435bb500683066023100f40a751b204bfbda6396a4cb7250c478366cc4e40515b2e22d464168bd2a98de344bbe5a6007bc0e7c1a0c5bdfd43f4b023100f3a778734c62fcf6602cf3989d843765430ea209eeefd85b505a121fc7f375ebefe365c19f724a7b1eb8fe6187ec19ef0302047c435bb50067306502301decaa6f78fdaba2701df351bd1fb8c42f841965386c66a9f845b0e3f7fb087e1495a3959f513958b0d26b7ac27c2790023100cdd8bb28127b7423ec335ff8b3ce717d9821ac90655f14f1c2c1d7bbee22428aff96e9ecdd2c80a72e5760bf24bbdbf00302047c435bb500683066023100dcc9dbef59199bd5a01dbfc718a3dddf96d4b4b6dfc070b0d1e1ca266e1016101febdc79c2e0af73c97e833383b06fc2023100d320b8ebc4171b52a6fa411971aecf4b2e893c9593f9f396d0d124cfc1db5db57c712b56138c37112f21ca901392753e0302047c435bb500673065023100ac073e24a715f3ddba44ddeee06569eddb4463f13e832d5f0cde52c193ae0943de092c48ba3f7ea7313503f59e0941a20230787f2e646dc3f5ef5b5707bab7bf0bc84f16fa2e845ce76eb60b82913d865fb5b581ae05bae54980de20c85cee21b3b70302047c435bb50067306502305380577651cc93963cb30ed986ff6019897d5ccf0d3dfc3d17812a1ebcfec52504db20dd29f8bcd1144660545039eaa9023100da87c519d90e166cc35f7327c102a49fa9d77b1f05fe29f908ba465cb4199ea3e673de22225fdd393a7322914702d8a70302047c435bb500673065023100dcf124a4f0a876cd8a406bcb085d0bde60fe4e888dff8d173c3ec8d144c03d23b3bf3d32cea3188628b1c8df8da13025023055227c15803902e24c78dc0e3700c085e866d4b73bffc73edbcb5f4f8d6be414522055d46afa3f0f2265d686f637fcb00302047c435bb50066306402302305f72f8f3bb469bdcb0c9e96b58da112dcc0b7f98790032c4bd7c0a80197ddd5459bc5162d58142a644dec964db9e402301b2dc6f42dd0851b5e9f9b046c770fa6e4dd74e2f0222767e293882f37cadb78a83242b02bc96cea5840aad74e1854d50302047c435bb5006730650231008f1dc2ff9c47edd1f78214bd6e2931ea89cc29bbce8a13712cccfe032fb4470a922d1170add4b9bb0eaaf0ba09a8f6300230666d705a1f20b40b9f963f75c57da3caf027dda537273e8906a83592d698918c00108a3d44836f2fd188ed8de2028d190302047c435bb5006730650230079d657ba023298f8c9924348653acc0adc0616fa9902830a6c931b11a704d828a25c4b6723abc0f2d5634d28101fd08023100e73b51b4c0a6f1c591955ad892bfa61d064bb37b068337af499b4b24867da4b22cf44741077b002655d4f17155ba22e30302047c435bb500673065023100a7a6eabb29c3c8a88c366f7066599b33c5e5b0fae74745f9c190b4ff2a687527ff088e109bba1ce511768f1e5004e6ef02305f232d1bf64d7a6cc88139b11d7e329c7bd32fcf87c0915614420a45d5e2d18e9abc922711037c4aa84a5c1066f774170302047c435bb5006730650230410535a58cdafe684777b8e0671c7a9e2b673d586bbac170a1dbc1d67ee5e8473607d211fafc234d1c1ff6426465d605023100e811732a5a09fa42db9006f6ea899662786618a11eec103a93ebf596021f893530da44d615afcd30dbaca7975a74c67f0302047c435bb500673065023029adb4b9469e2ad418d0f650a3f1158fea189ed9a8b443124dea8cc3ef094c4640827435d214c32a6865ee154cd2cd91023100accb9ec0ad1e1e1dff0ea529477fdebfcf124f394dc6f348791f99ba5ad4392c8e5ed71f2a5cdf17b8a43bc9fe2896aa0302047c435bb500673065023100ca7d77f59ee641029c543c48d39cf15d93f5209bfb36075ba166862dc4f728874a362be69918be47a6ccbdc7f5e11cb5023014b90f966692eacda0c9ea99c43a9a821aed0d28246661e7ddbf776494de43da205b84cc121130a7027b98bea4f6795c0302047c435bb500673065023100b18d6d5afa9dc30879c508b19c851e3aafe2e3937fccc70ab8f98def491148fe4e78198486295474bcfde258bad51b02023058a89473ecef5deef82f08969482b7c4d87fde0c7171bd2d757c9bf22deaba941c83e5575ff4041c7eec9792a9ac978d0302047c435bb50066306402304ad350b740557e40b98f0f29619e0eba74f13fa1d8697aade19457e630fff5dd588f7a67fc0313240c298e52124ba59202307b1f66d338f99bcd17ab0fbcc040ac7a1bf021185e1d8d55fbfcc3d54b165e4a99b4281e7b58adccedda87c81823c3380302047c435bb50066306402302f9554cc69bbad7843d8257e0f4f7b98582f26108c806b172e26adcf864a788a6c8cc3993bb3b92cc70539fffcf6ee260230319d93aa291755678693f3398e64348424eba1d28a887475d719beec2cc399e784c929cf99b6a1ab84c9a7616378c3bf0302047c435bb500673065023100dbdc5afbe679d797642270b1801a689b06fbb868f3162ef2e34e952e8da838fd881343d7babbf19e50517df2c6dba9990230458b575d8927bc9a52124daddc0a95c5b1039e95b09a22c137105f3725d3af3a3f1b69d22ef30e97ae96679cdd29c4ac0302047c435bb50066306402301bb4699e5bd42ac61cd4c255ecb4e91d21bcb76099fb5bfcfa737f62d66b8fdece9c2e6e533598b55dc1bb2e72903278023076c8c07265c9802b62231b907848ff5a909bb931f3cf5acd2ca4d76a37b7f1d0dda3a936f287ae26f897291640ce78320302047c435bb500663064023026bf4e7383008c0e8ef143dadcd961e83ebbe51b8d75e8e14b9987a6f42c202f708462b635c22d2127d646d85efbafb10230544838bac931d351f281d9187321593bd81782c7d7e562b827e7bfa5f93bdfddc5263b5dbaac25936758cdea370223430302047c435bb50067306502304b75ec0c879cc1866da555031da13f538852112f5d271628fad7603e1213159693ed29a9db32cb67437a73adb41796cf023100bac199f587b2aff969c32671b35f51b7d26d8c482454202b5d1b15459da2dd3c4bca4f915704ec31936c3b97679e3ccc0302047c435bb50067306502300cbc8b2f5dc39ef8de8bbc65319a908d6bface767ab19eec85169bd4da26057da511e9ddcf84774df467701781522496023100d29111d44b4509ff69a0e7e03b009d1665a50d6a6e54d7d09299c2ad6c0ae9a67f64f0c87d77716e3a022be440c3ccc10302047c435bb50066306402304c187862b55ce7be342a3a36aea276d041b84d45a620dc77877364009f406191aa24d9b18d054d27de3c277eafe257a20230724a45f6f663545a1b2cab1f20a8e724cc20c495cb3039f3e9c1d12d3aec6a89f606700976fa93d5032bdcbeffa072dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fcf2ca352922274a6640709af4ea40980bca7a3288d1ef42e55464444ec385faa73065ab8c45f286771f893098dc190602310098fd84cced13b05399fee982dae98b0cb0eb97d7a6609ebae3371711f1c116fb347ce14d136e58356d05d49e1abd84c10302047c435bb500673065023100fd9439feaf7d5c5206a863ca42e3f73cbdbfdf3bb632cf9834c0f755d7f3c938e978c71498b88e61675522c51c8c7bb202304ed1dc7696f673108e0ca0af45f3d271e3300d935029efd99c9d8bc2c961e1e298acff720d775f0fc297fdfae23a5e5a0302047c435bb50066306402307fc727033de222e91f022c96c086ff0f9336985f9d061b66c583246ed266ad9ebb2cdc6c61900c1971833b3257c0b605023064b5f2b0888dd6973aafd166d655ce608b8eb4d34069329f8a931995c331075504d4b80a17a753e9fec4e13946be83de0302047c435bb50067306502305cb8baf481a4c5e93f54d723f7d40c46198b2f7c5cd6793ff24c2099749940f458faf429ffe18c879b05e29276533123023100a101e4ccaf017cfb2504404c2ec22aa14e012acdad9a5c04a2c737df187a1d8d69f4f81e1eebfc5ed74837b9d21db22c0302047c435bb500683066023100b600d6e2755ccd3303bae44245bae87470d38b25afd5c527d2aea948113d8d6abc07b0d6c27d5c3712567894f031eb66023100cb882571bd882caa062a3449801da523194ba74342fc2d5e88fe815b7d2396dcc8c1484d8592faa3fe6fa064ff0e004d0302047c435bb5006730650230608a8f01f5ad8d857e37d00cbce15f6775b4ad057bef1fb3b2be92584771dd0ed9f980efb646b4d405a901e50a762d090231009bf097f0d789631cb12dca8db2032f2f4d0c98231e9af9ca2134adf60edede37648117420f3251553ad1985a15643ac50302047c435bb500673065023100a739f864bc0a2b6c0fe0421c706315bc79eeded1ff1ae2a5ffbade2c603c6afc60823284b5b88c2e6f4b61bbd9ef9b7c023031246929591f30daab86a47995f70abe4bd5b00628726a1cbf929e31383f35cbcc425b6376ba2ec3213063a2380fd2f10302047c435bb50066306402303a568dd1511a8d8392cf4bb2f556121793213e8207d2e3c1da39b1f7108bd37d334b03fc8f0e3ed30e826bc12965acdd023062873ddb9cc476bc12d8e0a2284c56fad18ba5d1c35b39e32bddcd615f92c7377d8b8fd7cfe198dc6faabfac7395b70e0302047c435bb500683066023100c6f7578c2e3bfbe0d292753afec9096885a54c73155a2d18d950ec5fcab26e21fb93795b3148537b363ac365feab1dc30231009f0bc290cb1792e679de89fa3fd27b3772e0a5dc0a49aa65b48c1f367e7ef245a7a257dd460b8d1d4d8745395142b6b80302047c435bb50067306502307db98fe7d45c1739990c55aab88236da8a140f216bbb1613028dc0d108ea849e9e8661fd56c925c91f27d92065b28b19023100b58bf14a0582247102559aa5ca9664870c0a07eee79fd142aa65db68da4b532c5e1040cf7ab76bc879b46f9ae5497f430302047c435bb500673065023032a9d585bdf03dddc6ea757419289cb5c23a13417b9a5ad3d273009cccad8559937a34486803284294633cc2658dbf39023100edf8a3d282367201c3c19ed015806dd9386131efdbd1a0e1cb37acbea24fc470ff4f506f4a824e49abda85393433a60c0302047c435bb5006730650231008ac358e0f929a7a1624e1525afc8169cf80101ed778225f36ef3be81fc7583677346b3b0c9c2c56be57268fc0a9c5f1b023020764216cf6cd59ac6b86593eaed1594134d9ac84d72c54aebec449e0736e305157c567628a59b851e3a2c445cffe5e60302047c435bb500663064023042b9032006466674cbc15f7b27a4673dee5182088ff6ab0aaf8a947ea23bfca5d5f018bc928a1b0ed5f0dc4afda6918a0230132a8a9102dd72c96eaef7869745c4179d08dc867b30f5b75389ca7483295f2be351c9ae37ed37d1a40c0b98324ea6b10302047c435bb500683066023100fe46447bb1877324d759d773897687f1cbe324259d92fc915823ed2afc8282cf1790a7721011a8a243092edebf35be5f023100bb71e9f145d7b4e4cf5f9d4a2ecc696a42d59187d86cd29e489998ffb81ef7796c5533b6166ade6210b4fd566c80560f0302047c435bb50067306502305aaca3ee97817e7534681b2a88f7abfd22f1b484690eaf2ffc4a46940bc2572030ca228c926e87c3646e6f0b72352072023100a4e676a0660ec007069b9997f7d1b11bddd90d103923ddeca5bfd5e93cf3775e2cf2439853a1df4928d6eb1ca2520d580302047c435bb500673065023100fb91f9be509f914ea700e6b6fcf79ff37dcb2154dfbcfa032ed6335d59ea093fc0890e9296d5df4055f964e5c3499fc802300ab66076e6dd1edf2d1a3c7e2759ebb65969706c38395b36c2b2cc487384c71e54dc4d7423d1f6e6ebeda0aa947f081e0302047c435bb50067306502301eb49fc2c61c9db459ab60ad3656a276c6825c1eb6702ab70ef967590afaa1838695e16df8b3b23f9fafc4287dd161b10231009c09c6ae4a2d46e3172f117b64e563bfb53c447191b8688b60672f496c6039353d34db7910aa4580d0055a9ab955c1090302047c435bb500663064023008647b22467fe8ea4fa0db57fb46897be199d26fe59390e684333c6a3d17de256f02b690a8e0bc76e4bf7fdd282634750230156920035767416156492b1eb2dd350c283ef4d4d59fad44035feff621a9a7e93e67b82d002948ac7fffdc391189c51a0302047c435bb50067306502302886fe1cb903bd8d40a1909b076be690ccfa8571664ff8d9e6cd354fdfd2d1b0edd86e332d4c627a66c6002dfd105e0802310083dbe507b52499bde58f39e74d2594bab585171c0b53232c665d1a2c53e46dfcf0a469828694923bec8a69f52211a2470302047c435bb50067306502305a312acc86925e97da6f940c8e0fc25f6a8a3d263621b1d67741ac1f14ba7be0d38a3338a09ee7b9508f8a805b6f7da0023100a47f51bd9d173621fda8cc534899f7ace410e6fde185aa6d365e85560bb1385fbeb30e2eb4d8452982b238672e16d12a0302047c435bb500673065023100a1c3f6c24103dc6c0892517f90f3fd3a5a534bbf686c97a35fa3a547ce2de499ef3c6c07898e3116615c410ff868d169023009891c08cf7d3aaa26cf0d0561e44888bcaed466b17c1c7abaa04dcca01bd0717688870f17500929d83324359c3e981a0302047c435bb50066306402305565f27e27814b93c55556038f1371cab449a70d25a37c46f5efa7c47792ada2620f9567a1a220c56140cea63e945141023014d6cd512606a4358a9ab451293085792d06e8f32ae385e7796b969e07ae20fa7cf7a7f54deef93559d2a27e4759f7e40302047c435bb500683066023100fd4fd32dfa22ee20137139baf172199841cce69b75663e0eaaef362c30d8d55699e7bcc84e8ff1dbfaa6ee76f784660c023100c1ee25d5651e3be1fb6c7210da086a0267d6a60419d8c64c2eb4a4d8de90643d917488b23c3ac5e2fe9b555078997aed0302047c435bb500673065023100aee3bda771ba9cac338755ee636a012a88f96e9f26dd241531c0dacd0fa541c2cde007c0840a84df6d55874765e9016802305aa2356a6c6f66c76b4e3694c30532366c91f161caa10d46224d9f99f6079ca010fd031d9c9c6f4f3180c2d1dd632ab70302047c435bb500673065023100d040149a50c903a49ea40499d46a9aea6fa1cd2c8982ca60f84fc50cd5e1e2dac5850db85914396d660e9337ffcb90e6023068224b71ffe9e2d0c06d438309c8a8b86aa574188c3d404cef0b6634b509276774ca41aab857317a8675f46d84acaf190302047c435bb50067306502302ea45692db6e2cf31e403240d6108ad271af4c47f531d4e68e6019c594b6958156af026a3d259df6d735943f7b25471a023100d1be1cb80e877397e1ed2d0d7d119ce81776041d1a8f573fd3637d97b8f3fb804fcd1f11baa7c4ec0c1fc0f5eef670a80302047c435bb500683066023100dd5677fdcc210cb62eaeef28e1fbc132e989e70ba47a889d9d3590491eb0368937f69aa73cf8cbf2fd811e3719fa56470231008c0593522f9c12da68e79e197c4df190cdf79cd901cdb16100fa8d0b36a01b5cd78b58f9b6986778676e8b273f28ad580302047c435bb500683066023100a7e8034d351c2a77e7dc0ac5537f06a1ca5e288c279c68146cdaaf802e1e4b1257d9deccef97d0ab98da1ffe89383a9f0231009d7b7b43df66889b06367036e3bdd1e504270fb51a73a76de8def7cfd007fb5230c86642ce95217b6a3087a0399a5b760302047c435bb5006730650231009bc68d51653547455b1d90579da4a860cc197048ee49becd125a4a7c9fa12601add634a6e3ccac31dbe6cf925a82053f023060f9710d831ddd823b51f5809f1bc616b38053e68519a79fa5516f84ca02154839b3ce70835af311eff621b5939906c90302047c435bb500663064023021643b6c4f632d23d2a6ad7c37c68d1d0105a209a9cb414ca1af1d75e5b46289220db7c6d704fea20f21010b450b07f802300742d95eb702559868dcbe483ceb7dfaee5bd7658c594de7e257a922000834be927ead18f686ab263c90dc3649b19a900302047c435bb50068306602310081147123e7acba1cd6a7aa4c9e6e0f8484c0e2f8078a13b5d24ec54743401b9eeed0b9b7e81906fb8d539ab9b1c957cc023100cb9c66a862515e927cb570df3836225d368d7f44543635a0c43b83859e148538245c19988218bf91a3b5ee3989465c3e0302047c435bb500663064023079e218ee608a68515357e585345cccda78dba3b809c0ced0d14d726ae830a1c605a9ca6c5cb585b0e3f84ff91046d8860230138075674d4225096d85a6e6bf4e71a8c825f5f84f69672b0345e6f7208bd83f5f9ad7321a108bf4655fb3fb24dcbeb60302047c435bb500673065023100f0d3c94eb02357e3a7636c0d7b990b17a0bce7a9cb20aa7c111a2b3a39f03b99c7b48bcf705fe69e251abd7450b64ab402300f12513be67817085af862794f4cc15de72b465b290bf9f464010863bda5417cb8426c462848904298fc582b64b9ef220302047c435bb500683066023100c8beb3c24a8592d4534a7a84ec582cb8d323f27d30645892d91d72f9b9bf3c8a2aeff3573d2c6ea431aa0a6cef269326023100f0b5a3176790d418648168934cc509fc812b339a0e900ed48bcff1acbcb15f880e903b05eb62bec5955b6454347bd6cc0302047c435bb500673065023100c585d05523f4453a9a188a78f250aead68108ccc9c471ce94143677d531665e3f417d05cc64cfb682df448a312032fcd023061eaab3559ede36ea39d1c4ba39c3ed8353fd0c6d0b9d48f0f0e1f032c062377a33f9da1878f752342fef014ed915a7e0302047c435bb5006730650231009b624e7f6e3623df65769f8859872cdb09e1d0511817bbd87a56462ae35ca202c8efcde585d24c2554938a4836aa9e3f02301d696504a57734bbf2eb770597a4f3263c7539f986c4e9df37bc3869dafcc408c1b14c44cff6d8ae5cc56b21381a3efe0302047c435bb500683066023100d6069c2344a6e77bfb77750658ba50d6efad35fd4165a80e97656892309b195db6e668b3be705096a4377fd30b8c8b5d023100dd1c4f3704719aa2c684e283343734c0b0d1e44a93a82cba063096fa3474f1e2cedc6ef3c4f07bf98e7b783dd327b42a0302047c435bb500673065023100b83a1f1bc0a389eb4f2c201d859929f9a9ceeb3b358264981541bb97f88286ae0d9404ca8606f14d40a2f497decc567802304c7b2418bfb97e46b3f3eee5b470ad391411997df5b08a4582945b26699546a851fa54f0a6bdf33f8f841958e4efe35d0302047c435bb500673065023004da38651bf33be660bc63d4f70c2ff7c2c4d49aa00beb530a3137fec328ff1bb2a68aca2425221b382300c7fdd1d4d1023100a51257877d68cd6ce59dd2bf39aca4b6b238b933aa1b55e0637319a1a36f2dd8567d0a98100098a7704bd55ac9712a300302047c435bb500673065023100ecb3435d6207a0279eda8647a16fbdbab3d5676cf808320b923f9bc7fd829ea397f789c5c82984d8f708687388ef038002301bddbcd812e7d758a8b04fe7ed6708c641ddfb6eb3942a49c6fd781d5bc0597ef0e44567ada73d4d33241357ea36dfbc0302047c435bb5006730650230793047bb67e8c020fa2e067f52118f7897ad41cbd5e827482f32f0dbc451fe46e82bcfdab0126c5a977edadc91eab997023100958a6dd322b371147c30aa8bd6d6e003c4a166d476d9953123d40673dc9656a2ec2143e9437f0a8c4b8efc6145c576720302047c435bb5006730650230131d5a4fcf0c9322b767684febcd7b544c22ca35a13670379abd10350272753a4345083b955cbbf96e64834d36eabffd023100938350255338bd5867b1cbb12a69e78a276626e3914cd37418aebdc8bd12e5be6c7ec549e8c7107536e0faa069219e710302047c435bb50066306402304193f45b5a306975dfd70933ae8e9f14f6d6934577a63e305d2c746d5499d0b5903c02450c5e117c0aa9f4b5cdb4704602302a8576736f71b6dec439dbd81a0766d7f73d809754ba6760dc60138c6aecacd7d3b870cdc10fcc91bda9fc07c44d8d7c0302047c435bb5006730650230397494d6690ddb99c3c4cc3bb5a1231a243165b468b95ece2bc6d86f44f727d64692e8345e242f2055b725fbfd7176bf023100a26c06ef2041bd1cc5735d7845d12858a963b639d6c22ab1f6e4f7432e37d60cb3298b774542ec9cf438efa8d6cdd19a0302047c435bb500683066023100a2d37c57371c4fddf78db2f4f958d7e69395e0a3addaae0fcfcb70a8a590ccdb1f2a11c0e7aba3f4c6e2e7a310fc2018023100c3edfee1c043de5265f5912def71d03390dc2512291858add5880ab946b50b00559eca37e1e7c4ca258b1b4d25e717130302047c435bb500673065023100d348e62cbe4ce40d30a44a7e05065c965fd4eb2b765ab83df3872931ef4317716a3e2981f7dbc263122b2cd49b61c50202307fee45d1dd0bbd57226f95d5dc416ffb2455f4a194e9dcfb2d713229b4de26d938d1d91536ab0558c6539155923c77650302047c435bb50067306502307dcb10f7499ebfccd3753398f5055a189d17bbfffdbb9c1dbec208a887c4903b2f557c1723164057356ecce7c06af5420231008d4f7242b5b5617d46b4b3e6f6f4f1027abdcbdb9683cbb5784e17419fe6f5f5eb182fbbd1ad52cb73f9c6a0492181ff0302047c435bb500683066023100b2a06ebd54cf3442a55fb1a572695e8c72b2966e3260c43dd8de74b13a0dbf4fb9a8814dc9d8edd9e011b1fae623f16a023100c58589280e87ac5bd9a7851945f1132361085673ccbce0f1c6a4de0a72616e728b3dc165f1c6a90d37e89ffc6881254f0302047c435bb500683066023100de52c550ce6a824bb37599c81ebce4d10ea9d4cbeb167ebe2bd91e38eba302c6a57392f97aec76886a9ee0be6bdd45f7023100c7026c28f27c85116ef6177b96d5b5c2379065f3b0080bb5a8cceee3096b90e32e8c6a0e1e53aabfffed6201d2a5c8a20302047c435bb50067306502303faf32964883454a0d0e7f0e9facfab0603c675e0e1fc45ba4da795c8201a96ecb1a1ae185045bd2ac4b10148a199deb0231008ce105e583c0361210903557ca0fbed8513b537beae37e4b88345263413d3be2290aff2e4f49310abce42aa34b7bf9da0302047c435bb5006730650231008125641d0a0fe91824baf7fd634b01510f5191acb967b8ab1a99084e83306c78dd2ce78ce080cd96058605c4e032fb0f023011ead9ec0c9d97a54f4a7e8c70ea49ff757417b2586c420c7f0b59d6cc203d6a2464e255ed913f0dca57925671509ce30302047c435bb500673065023032439aca6465c2e029d0af014d84772125691a5cf64e423546d248babccb90244170be125a35f5229bb2e181aa8f2693023100f036f231aa8f837ddde311c1fd386ae4e80d67cbbdf583e4229c4ce44ba1a3c48e5005428123d3964af8e4e218174ee70302047c435bb500673065023100b67d6259d335d29a3bdfe13c620e63f5a2e878c0007b203d969127ec9453ca1fd06665b620c0cf6b3b5ef63e6efaad3f0230464afca981aa89c9e131a90fecc07f7ae2ffbd7d064438a25e061bf25c7cf741a379858af60c777d17e0dd63b9f05cf70302047c435bb50067306502307da4b05c51c13533d899c8469bdaec11ed9682e51b147a15f8717d2436b94b6251869c799b06703ff3898a8643e6607c023100b02ce81cd777f17d50feff862833df4f91c3ddde2c27d70ed4ddf4aa27e823b3762c68f81e8750ece48bf6de567564e00302047c435bb500673065023100ac3d8a7e6ef7e67cd2e7748935503f5b124e24cb8e0cc2be595ca0f21453feb274d400fa6d2cb82c3396919765ef292f0230607982ed26214bf8904c6e6fa22960d13c47cf7ec93a35fadb6a304123ce118601c9c1b0dba6f0294705bd98ced84f010302047c435bb500683066023100a5062d3f1fe9fee7b4075c1ddcebd3487a6ff69b73cd3ae27d33bf722991bfe826d5daf321f8ac626615c2437dd14b62023100e1ca42ba2f7d7d4d8cae33af530d5aaeaa3d9cd1393efa31eb2dc5d16aa184e7ad0cdcb1eb148d95af6f284e9a6cd63f0302047c435bb50067306502304811f2096027f9440b5dec06ec7c60e1f40f7e518cf01fe0b57e05eee1046ef186f23251fbbf3fdefeb266364ff6e62c023100c43c8cc44c86826fe0cf9f59a5c2b4630b0e639b7d04142e4c0dbeedd1bbeda2d885560d7c969d8b18948a37b4c71d160302047c435bb5006730650231009086a60def2527cca27d5928a19d01f8fac4e83550335362367aaadbfec0a54bac4cfb4d673ece112c4c075c7476cc5d0230446b12f16d54d31bfa5c18473452c1bda1869045862993312ef0dd67899756f2e59d2d9672fb86ef2fc55fae6f6d5eb30302047c435bb500673065023027b3b5593e327f297d7e394a17fa84cb39d1c22f18ee78405fa64b85338860e57ac9f6164859fa70e265b53046d5e064023100d102bcb5fd57a8e7806b2176c6f30e081f8e2b9be75e271b59a4f1f166494c001664c99458775c370f1dc06ebe1888320302047c435bb500683066023100c6d77776f975fa2b0a53f95304b6f93573407b61004f5257198888d512e504edecf46855fd5a5b996f7696470dce74b4023100d75dd09d186578ee29cd13011d07250fd59b4c8ef03127809be42191f3db86dfb4757f8b195f70f3b97b85ce0e2fb0b40302047c435bb500673065023053961c600fd3e19e7adfc3d018336c150038e183302c7fd5812169f6fc086944a5646951e1d8403d0ff0090c07b67d4c023100fd1caf08f58eff9b89baae5d6c6b688979c83eca6e3eaa190aef04175fe52dc7de8df37098db1cead22d071b80b5980f0302047c435bb500673065023100b0e0b70d176096a80aded044660fd1ee6c224090a3a1bb7ce77f8e213a0f0cc862c5c504c1b27239eb3a12f50d7f66400230732d2ba58bec933784908066c2d8c896128cba8883ba55edbe9c0734e0e22e5687be9aef3852e5162dd7dfad213aa72a0302047c435bb50067306502301bb07cc41a00ff9f3e94c819cbf4d60f8e10c43afb2b98f10bf3ef8dab5e862282965ab9bf26118dc043a7b0b39f154d023100f7b1b970ffa7ec52946032062a2eaf90613cd2f9a8e9e7d51907328165b1241fdefcd6fa696dcd3c163e8f87cade6c5c0302047c435bb5006730650231009914af9766d60eed0371a6144a2f79cf926f335b76bc6be1c277603a463d7ac98f0f9b4a8f6d64ea13cee5c0b8c724d002303b8c71eb3a1263b20a9526ebf6a6bc0fe407b79c0308505a674454b345d5b540a45c839976759bf72f653adee8925fed0302047c435bb500673065023033026ba6c98e8228caba3e0b260c1eb95c839069330200ee7d1095e6ad46e20b9b27be3df6d2a8d58a020636e169d481023100d57447f18fd8f05a98b9ad5ecc8573665a9c1f139e99bceb144419f9f7a001050ef6b398a0f54561db9b4ceffadcff2c0302047c435bb500673065023026e1874804b84e92eda71dac5afd73026fcf35388f543a17fc4123d889a2abbe82d17d79cb718dee43e66e666f972869023100ee48f92eefd5265049d0443305ad91dfcc79e6b3b4ce9c7076993632329e8c756561faffeccd9407bf7e53343617172f0302047c435bb500673065023100f790a918786923562889b310045c1e6aaabd0de670c3bb04f6e186f69355ffd39a123a6ff496c7d7e38dc8c94ac2f6eb02306a6b06672291bebc52614eee165d789552e62908d3c4a197682e6833f63569be8df539c65f7d7d51059f34ae9b63ec990302047c435bb500683066023100fa567efc24f8ae8857a5de958f61e2fa62d74a5db532ee92db52c120d1cb4be53fd0b37832e5a47d66531e9ee3383036023100f0284da329b8a67f9b5fed1b11e34913937edb945022d0a38bfcb1df1fb72335b0215b11677ef53f4602426acaa21ea40302047c435bb50067306502303ced0c68fd76361aff23e000d2108995447756eb4f2c07bc6a8531ad58696b3b4196a0bc54149126f99dfba29ef23fe20231009207e8983d9aa2f43611a551d8ae1aa2449444fb0048a628181eb083a258e6776811937efb874a435151cf8c5a5d87ba0302047c435bb500663064023053ba996c6d4a2542b53691ccaf3ccc4979bcdd0a78de2ba367c0462b2f8d89c04fa9ef5ca56bcf2035b0545d3caddc9d02307a79c7dc5845d0eee76efac5c433e160bf6e1aaefc47bd2eb2808afef85fb60ab727398b6e4f7984aa8fd7897765142a0302047c435bb50067306502305bb867d97f6b094600ced5ff4ff384752cb51d6e094f35e8be241ed5b71686efb4c2f38dd36baaa1a9c281372654fcf10231009e1392368b6fee80117e5a493c46ba87443fd3dfc201477806650cf2aa9c0302e35a7516c16ae8740b3376eeef7a86920302047c435bb50068306602310081c72b55e94b8a2fb79ad6f6908d15172c5edbf2af67b08f7bcedc4d2d28d7ac3791fc92d2b741986938cb60a7e7a642023100a6f67d2b217d2087ba24cafa01c1c29abd06fbfc0f5dc9c984076d692ee6aa3961a88bd068b0d12acf06b30fe54184f30302047c435bb500683066023100dfe4141edd956a2e63e4019a1a336f839b29bea9c24786ce4fa43991cf75e135d949d806933c03901c0239dc31df8dde023100e3e8d8ec8eb6c93effc8c4dbed1f8eaa1c67cfbe7d3ef53d66286d6d9a4e063636fd8e4e582e8e3a2f7146ffdda14f220302047c435bb5006730650230199eea14a1f29bc395d29ff6c6081b34cbfcb4042ea1e73f3ded475bd2c1ca1c40cd065ebd33444af6dae4147aaa7a90023100dd4848de01d5faffaf1f8f9c70425590c66433a740b0f529b34af9e5083e309d4fd65a5598f5d3403095c74d97e487ce0302047c435bb50066306402305554afd20db795e74f33b138c2bfbfe8465f41d9c4f8070cfca84f0e975b51c00b0009f18ad12c8be850acae660a7a6e02307101a74a8f06143b4b1feec8779c7c4c2067ba2522e59ccaf74934ff79bb83f1002e1a464039dbbaddf049fa328d807f0302047c435bb500673065023100b89a00000022ffe1ac54b609d9a6b27f10d29b2b019cfd8e2ff4c9b4708011c5caea81d86aaff8d53f0aee6a648dfebd023034b5da7d04d9e0783ebb2a3283b97a2671c008516735857e42e2c3991e35f583f380a257c10949c4ef96f29e5617ac4d0302047c435bb5006730650231009369fa2f5251e038f91755d68acd6de97a042f2e90eef2d8f5e4e3b3dafcbc5aab19bf376ac9a99f8b3af792ed805fdc0230215df3950b609e2322128e167b73f545ce77873006e6f1bb4a3710d281bb47439e0ec45116d9c7c1f2bb24d127457fdc0302047c435bb500673065023100d4155bc83c94bb7ccb9c5063fa4053b2e1bc9e7bfca7850aaf203766cdf2b30837216b4b0bbf641e8c7962d3d6e5a4cc023025f7ee67fc8585eb03fbcc256232ce7d79c10f86bc512b8c54e994d14df2183c52d3a221cfc837d2a1352dcbf26834d80302047c435bb50067306502300f47cc8e8633e042f1e9d00c4a986e5a7e21792c627d7ae38115d0496e128f3c46cd936366bcfe1e1534c57df151dfc5023100b032ba2ba61d5e3c89844f0ec164b9e45f5ba91544460b038651e6b2bf01759568402c9c6aaed9bca750fb788c0857350302047c435bb500673065023100a9021e0084a370a7e8e3a6b2df738976de12c6969c48206743d4cd87d7d0b4c442cfbf73fcb1762eaf661569e48c2c7f02307b8a0f35de8a20cc128f973f5699531c136eb5cdf62699fb7718387ffbc4ff1cd1458fda06c5907ed8b2cfb03b5080a60302047c435bb500673065023100d22342a40a2392c78833444a69847f9f5b5bab22ca5bd3b5a781cb79cec9e8916c4390b170fc536e3166b989fc879b200230421a16966e86a9475ba10203ef0aa1a10342a866ba787e7b811d3479652052448393f4a154324bc6a089f81ebbf9ce7e0302047c435bb500673065023100fc88683fe9813f346506e4f15dea25f634efef1c549165475394ffc7bb515fbdb33d5b24beb8fa807a0df2ed347c927702301edb689ed5635cb4f362fd8c2cc303e4d5885ede49f13bc90a179126e91fd66e82c2d4286215a40b97464397a7ce52a70302047c435bb500683066023100b4ce74e4497c46cd1f539f43f3444c67c021d94737138cb089e325e38c8f71081f945e908d8c0fd5a8f7ea33a70c97db0231009969881d5d5988017857508fd98a68325136f2fed6574ce0b36e3d2a70a4ba5bf4811373b7d91407753b59fb45827e880302047c435bb500683066023100932f9c4f4190e4a6b63c26ced5e640cc21ef0b34fd1e838f2229b273c918ff1286b759dcdc822fc71cea6d4f3eb188230231009f8d7c793405a4d10f46886722c8fb8e2c967de4ba0c300194416f182a0ff234b86279644c049e6c3049fa0760a05dd20302047c435bb500663064023011c21a39c496cea591ace06eb3fc73ecb13a0db2d0719e6be23111718e6cd2a1730c90dd2323bdfc83b04b0b3f1ad166023004c2ecb986942b1e7cd9353380f32d1a5e420f67d9742d02e844ada9f47848b158836efa32fc01e72be3dbfc5cbcdd7a0302047c435bb500683066023100fcc98d94b3e953dd56a140ffeae7aa933d92a742170a8f27d5ed513fa94fb388689f1d839eb9d748d3289958a3ac6ec8023100f4a6f9cb0c08495dc860e5a247dc45d2175f3e6db1314ea98fbcd50ec5f280ff6be05fe274fe766c738fd602aa0a99260302047c435bb50067306502306733059af4239163097ea74713b1ee4cf7e7fcdb6a12aac658f71c49fd2630e0463fb297cc10340254825d851ee09c0f02310099d21c7b2d26ed2de8eb6964fdb2243e4abf894add69f499bb42ed0cfbdbbc9e21305bbce60c69d6c0fc10d56fcad2040302047c435bb50066306402304d61af91f4d700ef1a966403e7e507c7294cd0cb1c510b07a5a661234103c6f20345ec714c2f753d0edc2d42ec8173e402304ca501055695c0d9a2bbd0d8872e335d6c26a868ffe6d237aaffba275991959951eb6e7b358ec929652922a7a53d605e0302047c435bb50067306502305388894e2294a1c60ed3861f8f050becc25f6afce7eba817af49867ed903ef6a9a4b84fec0e16cd2d1077fa7a64ff980023100f92affdfc16e686965714ad7385d83552f95e2257cfda9bd12e84ec0bb64f5561f3dfcce8dda5bc28ddf1aa0bd85ccc30302047c435bb500673065023100f7e307f40ad96932041d57368b88abce49f1805d967edb2a0e9db16d3fbcc6a6907edc641c78b463bce10a2674a8aa6c02307020473e367ddc8ddf9075691493c2ad155f19654e53243c9c41529d21a0fc80277fe2ea889ef737d8e584ef2f0ccb850302047c435bb500683066023100d4520fc9702657c5dba037d54947b1abf692aad95c0949fccff6ba2fd7fef1536d599cdfc082adcf42cbf61b1d8fa8a1023100fd80ee65d2c8f91d560012033e00790ad4586189663366694ef5a978e7ecc384744ec584da0d01494e3d70317e066d500302047c435bb500673065023100b3d0a0dfa779968af88562f0b7c4d240b28e3ee7962b11c5031056744d475a89fbf6a150f9529d2ea6e94c0f4fdbe8ee02306b64e39a3908a4ffb15e4053e76c63c20c4b1fa01671addbdff3d21080b7e36bfbab055a7b427630215c2bb519e5f93a0302047c435bb500683066023100ea71ba9255799d6bdf41cf4f1cc57984d923aa3a4a5cd8b1aacc85f2fe71ccad85096da6972e6fd8fb047c0c1480cc1f02310090d281aa704368482c999a63136a6f0ebd4da8fe090e3ac9dba38cfaf61c5d1537570ed77bddcab11467707a1cd1c6360302047c435bb50066306402307af844f4fa0bdd7dddbd41e3fdc39559911c80ed179ad30f823c047b1549f1d369ac34244956b5039072ee25fabda9b402303fd656472fed3f5110504c43ec50c65c46c4faae4a83c5dfaa1183c4898d27d58a3bad516afede67bb2fa9e8e9b7175e0302047c435bb5006730650231008c524162402ff0f8896c4211abbdcba3f2554a1c3c7c40918815138ee7ea826bce6fddc98a15a3b245e2f83f0bc1f7480230387662993026f25b0458cdccd82024727cb83218f4a90f73e37a5ccb8a233c6e3576ea2cbf643c42057cf6925914d6cb0302047c435bb5006730650230644006edb4a43a92f8da8d47a4bc2f2373732cddf91b6b4d31a19d361975ea5538a4d9ed0a27b4ad28f422c100a168c9023100cd75ada67702b13f8e070affbf4317863a1a91b0cea8e921ce9740a822cd6bc50d3de7e903b40f7066d615b58fb693dc0302047c435bb500683066023100c7131efe66f47faa5b0662b4d9e579b07bf75f11230dff6d87be6c30b44d3a9cb061277fa8f0827eb07f2857c4a9495d023100ab12651f19aad4d680e8e9ec32acef3ddcd04fe3f598daa21411f59d6bd67d0ed4d67ecbdd08453e06b1b9e2d94189040302047c435bb5006730650230388e41172da7c29c0beccc8a33c20b3d7202d82390e6a30628ac6787984c660054eae7699ea78187471d707185d62b89023100b6437235333234a8fa4c795d160a0b0be3ebbe4795894206ecb2c381247989622cebd1bc7ad30408c245e089c651e3950302047c435bb500683066023100f57eb7f731acdbd66b9be50f5975b2db8ee1cbba7aba9d457e6b8d64d5501250b550abdf85f48d4ace3cf82eaa0fe94c023100ac91d44c49a228d6ac704e5aa7ab961caf117ab1244fae2fa472c994a3ea73343707eee6538c975f00efd586516076190302047c435bb500673065023100fa6b220858db7056e3d0fb277ea8763da56c187b6438ff56ab6ecfdb86c94825180680fc8a6cee253a6f73ee245c58ba023015a5be60d4d4f2963228a75badf99227c681552aa3568f429bc964ef9131fc09ee448045e5a194e6ca9df7642651711b0302047c435bb500683066023100f99dc2be3aeab3824040152b290a01b21b7060ab65f7a920867035e2d47bca4ce038afa5c62d24635274884b86e6cb13023100afd47d92a0694167ec71ea9dd3d484dc012e305a7c35d0107f219011216607763634deb23040547684044755fa145f710302047c435bb50066306402306781af698576efb92cb689227d44ffbeeadef86b6e548bed15fdf23aab7811485999a0ccf82280ee12c43ae0f729bddd023027e99182ee73b3eb113e9410b4ac1d901c7994eca26f039bd836bb0c7482fb113352683060d8e51ab2fc55d9974c66a90302047c435bb500673065023100f80d62b19dfadc11698a512304ab81201a785a1866695b6a62c272af4273e36a6b64cde92b9cd5853dfae5f2109d25f80230235ebf6d8debdf4744aa1a6fdb4488cd7b2fde5d278206fe24a19806a4b14a13e8d0f4b8e48e82b3db8af02ee7f0c8500302047c435bb500673065023100d56ea111cd362b6a6cdeb48992832102c5e71660c27605996ce4e2026b51242e0daeed77b3925ecddfdd74029cf5ce2e0230202c7b7b1e32e863feaf05639628d18ae82ea5044937b150dbef823c7c534cc4244b25c3f70d03c2a66a204e3688bd8d0302047c435bb500673065023010acd2c0288c489527ca9406e1f094d5bb89ffc3c249bcba0520e71fb0ae2c1533c748b91c115fac7a2d5a41eec6d037023100e79aa9c90cd9672059e759c1abcd7326ac3856701c4555b9538a378e6b8a14b6ae6fbd73343a74dbf3e47b92218eff530302047c435bb50066306402307c6981fca83e1afe133d6046dfbb86c980ceca2858bb85f99d5d6e3bdd5ad08d14c9fc0ab6dd8e23f3477def8b2e004b023046b4a66dc3cc0aeed2e61ee3bc825c2c616509fecc57a6d8766b4c86d0d203e96a6d63e8da210cfe284f6956808281c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023000c5a3d9e0ffc66ce00b29fcb578eee122b5786b08045afaf0c7ded8d771fd9a9ffe954d7e296f87b5488ad20e1aa6a6023100ea542de0d42c7d650c408f518520c07c3954520b3138dfedf512f67f5e7d3b1c1123a21855566bc2820fc2459014f41f0302047c435bb500683066023100e0ad2e519c412454ad33841f676af561c542482641d9ab74c9398ecda91a9c561668da7281c350ebe5325a17aacef6d2023100881d6259eecf0b72bc05087b93ae445881fd5add10ba7fe26ad2417118be528054240aa3050017e8c0c79891114734f00302047c435bb500673065023100a139b84964719312a1da32f91ab5879f16ef6eefeb29a0fd32d644b0fee967f5ad90bdbdda23bf84c651567d8901e99a02307c6b6dbc3ba47c8f17dcaa5b966af3960eee2e7f12d5ffa76a7821f3d58e7c0a5c7725cd7e92291f4865002537e9790b0302047c435bb50066306402306dbfe95fe0bf252216a18487559320f7715ce29f511f536e68d2f6a95b5141d0cb985d56c914a39910272457a9278ce502304dad56e109a84dd933c2c2d2800c80633375ff806d829cfc5cd7a5a949e80b21a2a91a072e8b2604c4eabc0e33d514c90302047c435bb50067306502306f6a121547a759feddf8ec0c98d4f794510e4c4d839ddd1b489fecbdfdf3a674eb32daf78dfce414778f133aa35068910231009e57868e5f663742a6d028dbb1a004efaaa2e477488774508f001df92e9503948fa7e328c1d02ac3f3148d387b4b01960302047c435bb500673065023040b72d79439e47e5ec6e4b0debcc019b31b971b76cf0b467511cd2a3bd2d998821cc938f4f9cb9d3de77040cb6699b6b023100c5ece94cacfdb12fb86205b78d2881c5f9e83126431d757ec48755426c436818496b72a097a3e4800e8c1ce733835e120302047c435bb50067306502303766bb818eb84077818d0c7b9f34fa9a93296a0ac7b9451ffc4dc3da28b6e3ab5449f84d9f8ae4426cd9dcb54983bae4023100e523d5c7070a27c6be9650add9576e0a55be47d192506df60de6247cd421c45ef708550ddade9cd50da9b3a13cf3647b0302047c435bb5006730650231009083dad2c2fa58207c0aa67ac076d81a28dd21c7d41f8adcfc851071ff3aecab12880c81bc398bed6c86200dc1d21aae02306fb2abc390736254eb4c720bad31f5239d5568d599f6ede34991321a2d5a017831e8e95b4526e88b0583cc446c0d5d750302047c435bb50066306402303feba9710f068447692dc385b6b22c478e7cedda5316b568029e295bc3a2a31d4c0294efd97bb55272b222bd699466b702306363e48b04d6757a33c0485e84905070e9f4915cfaefd685f1596b51db34e81a3a79217d84ed297e6864ad994e641b0c0302047c435bb5006830660231009cf4bd34726bf7e242329ed32a7ef50d0e3c3503c86ac09ee276f1cd49383dc206ffcf01d3d634db782d2ba8ce51cb15023100b429b8fbdeebb6cd76e17228612d742ca3dd7afbaf94b66ad9092e1995b53579e626d16fda559e163e3cdc73c99abeb10302047c435bb500663064023100ec84dfdabe7198a3d8c9a71a6fe844e377889bb275a023bd080c7f083e7023746630fc2f1864c32836cfca0a0734ed84022f45803cb046d3c311f61035bdb96c0bc5fc9b8d06361b1f34ec7a9754bcb4cc2c7d42e588b32611d5fc604d2e49d3140302047c435bb500673065023048aaffad8ae26b65bde7d56bdc677bcecb5b0a9da971582382c18167777e68605a4fa333d483f659ecd5c70f571f66cd023100b81464ce574b87d0f0d5130564f286701b4fe9ffaf3019a12954f39e6363d3497faa6ff4ef9c1dc79688046a025d24490302047c435bb500673065023051dc201e3880144448dedd3beed380a0a415c18ce5f1f4fb629dbfab48505c4db19a54dc0a21c18416e39edfd2a9717f0231008f7e5098e78881e659c172bcf64bf595192d8aae7f3b771bd8b548119e309a13742f316d3b82fb75d96303466f88dc450302047c435bb500673065023000ae9359eb116932ce860a33f751b3f5d2c988d1b6e607ef58546895d8253e3a1cbafb95b37e1c5ff0c8bdc0f105a56f0231009f803fb03d2c816ad2f455a1f424896c5293033db46818f2c5cb82fe63ee94b6d5ab72f72bdacca06b4d4b4de5cef21b0302047c435bb50067306502302a97d747bd6387c5d935eba6b2ba55c349306afe0a03850e152714d2c19a476380f5337e7f4174739f8487f91307e82f023100ba0f0b17f2de3c4cb8c176fc7d3d0f2804395eb5c04575460377fc4bc0c6232190a054010728472791e7d2401c13e5830302047c435bb500683066023100cf09d4e486ec69eddd81824154e42bcdb5e30b849c013f9205c86ce7b7b4fcf92409b422f514b133475525f28f892ee6023100d7482365ee9ed0c9e6692c440f9a79aa521bdeb593d29a6828fc8fd8b19c855779284ff3601bf4c7cf38db366941afdc0302047c435bb500673065023079fb68830875f45b1cb92207d437134369e0abcae1fdd3f672d2021ebde74c64adbd21f6209f0d3d6d4bbaf2bdea29690231009ba8b05e0fae84c32cb3540da12cc0b82f613201cf0258c0e686dc2665d868bbe3304ff37f061e4e679fc1a9f95870c30302047c435bb500673065023100d4997a477f168088af32ffbc87420c7b2251adf3e922a862e03ff5656a71b75553fffde749958a03547996099dc41f9002304cf59c23a74c92b0b38a85e7b44a373df031ef900e9156331b07b615ee94f14193e86bcd5918541c99b67e1149c4a5510302047c435bb500683066023100e0bde12ab88d5f99ead700ae4946f9496bcdf86e6f16264fc7a243a73cb0a9f0b34702aa6271f97c7c48e0cc1b3c63cd023100dc00ef5dde5ab841924b079327c669d492c947fe1a4e0e74056316cfa32be85e274dfe4f44844d8eb41ea5a57991229d0302047c435bb50066306402301e0aa52f6e5a1af3529d10234c3e284d2b4d7d244a9f7d052f127dc4e5552ad68aeaf5c3b96e46193930da9929f735db023027a6826d69d282ea22216b3f1e5a1376081d2bb4522c6c254ddfb0b5a681e6eb33f3e58ea74cea87458d6751465450470302047c435bb500683066023100d9c0e8db25ef83a2af1cedcc6d861559cd0146260d8f5c53d41a7133b6cc4b212089c0040fb81ec7b32b5290bd4c8663023100cb6f9925d16cbd4b6c284ce226ea5824dd55c54d3a93e43b0d2ce3f721541f74d2c4373f583e43f6ec1f58506f8e158a0302047c435bb500683066023100d141edb0d515b4d236d1fd03409a6595bfe2e0ffdbfca68820138ba885e30df1c4c3635d75e9bf87574298d31ebc65d8023100bd5e410b64b436ba3a9f8167daba2667d091f7eab05815913d2244b80f1daabf8579d07ca3ed714597262de94016ce250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd140e13bf8057f1b3da0585ddbc5ccb038b4fe46ca85bf7548d28c1537a395f81222abbda7114405a5582fcda968f93023100b0b9c3ef5f6983beebb7e4d174c684cad62e37e8d57813ae136d631ab50eb33abe28c87bbeedb6c9dbfb4a2fb171ffda0302047c435bb50067306502300f43c95f338587078611ee3a2c271848068914c25e15add3b23eab0084ba290cd7e76bd9d7eec38bbb48e6f86e05d0c6023100ed1762f9cf001907459c400c1c7448cb0009737ea83e5c20bfa144390c5e003e68897c536054171ebfcac64eb60c1ff60302047c435bb500683066023100a3dbbab539f544e6f1d2a8e82bf7ebf9628802cb7efc4a92b2cb3f47816d617dd85013777e5920ed2f08246e937f1f40023100e2d81ed70a458d7f3fa597fce6d80739b5c4cd7386cd62a09fd6c36292a09b9547ad2d3c954b663fb4a08af2c1cc77270302047c435bb500663064023028f050e067f82f31fa6b5c2a584a545d8dab1ab0d535b90ee976a48306e3cd48d8889b08b799afe36722f64baf1c31cb02306110faf2e43d7f5b262815e32633864dcdfc9fb8d278ed90a363f348cbb3f3be55c5e49b984bcad8d9845be566ce095c0302047c435bb50067306502305935592c4f05513bcc2e3b49fe0f259b1bb0b9be2419ae9494c166f8c6ad7ff0a163b8b45655da1450b7ad0390a3db1b0231009ea582d50563af876b053244b9b5498e0e60a6449096dbd325b8f5288c81138f56bc3f83bec92589cf7c10f59b1b109a0302047c435bb50067306502305ddf2fb3eb3f1f32c7b8b3f9ab1e6d9ada1abe8a25e4adc84082da53c9a4d6ed7e672745ea71d03afa0547cab65dd53f02310095eb3c2d4d1ffbcc324f3c72fee393c2850b47d5ba22b64fcf4e4b89e83038346affa59a1da4e7f9d6560b9c7dc55f7b0302047c435bb500683066023100f698e5111a7cda3bc3f0e62f187fd612466b7fa238c7192b19a850b40e634d77d293fc2bb33c0de07701f5b4d628b928023100b6f252df2e0c762f601e255503b1d32007c491493e08dafeebb24868e57f98c27e5cc1dea1e032fd4b20f4f5bd9354ae0302047c435bb500673065023100fafad34bffc320b9cbe45daa7020d9ef00c15ca726ffdceac3e6d00b36df3c6fce2e023284ccf2b2926cb71c4310a90602303d570d87623563400cc426ef7c2f169fa03d8b80f199e03a38463387cb714dd1ed756ce4d402767110dfefedb75fd5090302047c435bb50068306602310082bb4281bcaf9a6db1bd5ea65e12fa8d3854d017d90eca5e0f58951321b5a1c0c0344fbeffe6b122aa6025c6e89bc184023100ec579a26daf3b88f1024a6039be830b530abc01f7219aab053b629ccdd04017b8dfdf3c09b4cc678859712e34b8c46550302047c435bb5006730650231009b3d8e123e19ea5485f3fdd1ecaf24ccf204a10f6b38c331010a499b0d92e509a380b6fd1866ad7d95ed09e158053d0e023041848310fef89cfde54488eef3796a1ff281055ef6bb6ceaee54148619592d4e1c77430496b6fd09325ff3fb1186a5520302047c435bb500673065023100c4c7ff2673e58389d3cfc236b28ff69257edd36d265f71908690383a783c8b421603fa9a15ea0e22d806a56a02ea741902303cdddc8b1cdf5b9077b49b4766c23dedb1f4a55c5af3307585bd1fbc84590bc86cb42d6cbae8bfed4391b645643a19890302047c435bb5006630640230636aa016cf771f2f87853a6499fd0d0851f5696589b6ca14e4d7eafe66d38c604c1207780e4cba0e66a37492142c2492023072f2c6d23916fcda1b859815d85d763ec458d5e97737bf34bb06bad6b68308d4b791d9da46d1dfdd51729a4b56bfb96f0302047c435bb50067306502300442a24a76c8b5e34fbe77142c1f9e8df371ad0ddfa14bd5e1fc7def401f63f6fe718953fdc62a676a0d4cad97c4020d023100a5863ccac7fa87e176a74f96b59f641c7ce7ade16071f09b9d48d17959a74760d8c96eab2c9a41230a1e08e091ece3400302047c435bb500663064023025a0259ef85ec4550d4076b339fa57bdde8e267eccdfa7f654bd1a5fa23895c93baa71a1d75f27e8b1410eedc85f0fd502306986028a557c4970884657cfda1fc9cf90cf19b343a6262e0d0bfb04acbfda470fec481464aad70d28d6a3f1e9858d100302047c435bb500673065023100bfef915d4bc2b147e6b48c97cc1fae9662484d42077eb0e33fee2ed2e56986be046114ae57f52069d64afdb30f39f5c20230645a214bd32b39c4b38f985eb98924ed7820273eda63ad49f40620f49b96efe9382c6ec1ad6239ae988c732825c2287c0302047c435bb500673065023007ffba2423058c30c50243010c0a85c62a426e912549488d49f337d64d9c7fb9b5ce0004f743576d3e173fe9d3487358023100e7486fe0ced5adf02221260490a0443d96d365e569cb6c91a5acca8a6a4c2e60e444122795de1c94c29634d6cbd9a30e0302047c435bb500673065023100fc2aa2a4ed6976ddfe0fe71664bfa92f310d1472e45109f89c7c9bdf9bf42feef19d1d2189dab5abfc115b71e6c45867023042a0cbc8bfc7e8ab3e8d6ffbfdb9220f760eaa53aa546dd9e70fcdff9284388a1d8f6ed42e53153b69b26202e36990180302047c435bb500673065023017094f9a5d5262da87d6c0cda31818b6aac8ece3b4df921479906c6931f1930c3a93e76c4b5da38286d3145c07d44e6e023100bf7e2ebac5f679a2fbf8b53c62f77e95a43631cac9bdff5a509298403a4d9a61522993bd3dc0f0ebd87e8f455d16634b0302047c435bb500683066023100d35df44afbf3dea2ac819cb4b4af354d16540a81402e363a5b60e09821332d33c38738063b0b724437ba7f4950f65a02023100d9aba88622eb6c2aeb5e133b2eb4a968063ab656dc84ae0ec867edf2cc76c73ccd1e4f06bc04a7a21b66df31ae6a3d680302047c435bb50066306402303a0b9c4f9e4abff95b480b5df78000f1a40f64683c2e4a3ec3788cc4b46682400b059b7be8eb5a73b46dd7520652959a023035bbc207faefdc45c203c596f8a4cabbe2b20ecd24af989ce26cec4b101842a75fd4ca4c8d6424772593a2d3a609252e0302047c435bb500683066023100ce7debc3c7a78afde280dbd90123ecbbef39a8b6554bc234062e7f9ccf65f51fdcc5c2826e600605769dde71e1178339023100efb1b0548e9635bc217d00394263d762642a62f60fee65f1db2f70d565f60a4719bc474eee210fd9cb44b73294f447f90302047c435bb500673065023100b5fb150f3e11b3f4ff9c8f6a4b548b02902dab03c0a7355ab0bbb9c64c30da30c6a21b8989db8cfaba3211d158cad27c0230228911dc0dcd0dbbc0841cc120f83317c19d050724973d26d8f8cc9fa925d9b469c6b1d48699afad418bd7c984c913f80302047c435bb500683066023100fc81e701a4a9be9b2d08d5581dca00ef9c35502297fec0bc225d5127b4db0772960c850b318b46a6fe3e79c4a0e37786023100c7edaba6d30b0f50d2a2584862aead8797824137f6d3a1851a0ff113a44039f50bbadea863ce4d326ca94ed26b9958800302047c435bb500683066023100d61455ef595514939c8eee3b525a051e0f43a03f0334094606dcbbdffe0c4451d1588cf7ddb7f0872357e98c3405b8bf023100a71bb34bdcf5ae7fc81e548bfa289c99e60e3655094b22f0577fc331ccb2988c7b2fcd4e81dbe564909403d6b9c85fdd0302047c435bb50066306402305379b26ac0b3435a87afa05ac5eae64491ad1b99b1a51c78bff9bc5dd48a9c4936739818ac0c7bfc46ad23b646fbc28c023038d9ac6e4dcddd5b2a6390d0218c7da13d66309e039479644c8d67af04ca55afd3dc54d116c7344cf3be131be18231820302047c435bb50066306402303ac8a963a73c89a32f7eff303ba684eadc62e04482986243f1d794b79c1b4485579f7b3fa1ba1c43b54dd12dcb7c8caa02302bc5e1dc01a3fbc5c8a47f5e01bbe3648b31848924ecbc2fa6faf998dac1d27e0892631a565f5ed1fd17c0f5c103f5d60302047c435bb5006630640230509293bb63cf1fee69ee88b21fe2e1b600982353632f1393d9e3647217db43f9cfed91bd73b5803c70cad70d44e5f71302301ae068ca5fdaa661e439a2597bcd795e80570b7d88baa13d267c655677d8c02a3de02889ce880106087935f14dc7ba590302047c435bb500673065023100af4f6efdf33269007c36059b6a60c2ef6b45cd3183b833a43811dcf2656e587fdcbf8e265c4e141f604cbf60eb73c526023009df37e601d5a48a545f2c7550b6c39c5ca072cff0f040db6f3d5045a06af8bbcdc3c84981ff4c67d392709e20ee57a80302047c435bb500673065023100a93d3854384f531a8655ef9a961c2fef345b9b089c56344894edfe7f353cf99b424f1522478f2a1b882987377923b11c02306b7e4886d1f5184b1473e73db1994dc67cf50d6021fa5a0dcab6fd6106aaaf4817e9572304478bbbeea01bd078a859270302047c435bb500663064023039b023bcb7817aaa01c8afefd53a9c9aaedad82f817ecbdb83ef5096d1875df17f7c3c7331aeb8b1534ff63aaaa13f5b02307039826df8e91ce130690b0f070a88f5ffe0cc742d2a0abaa148624ef84665dc7206c574e66024652da2074c907b646e0302047c435bb50066306402307a7856f4d0d8532e59aa0c1890cd66aec8810c29e70d18d74d834542cb9ecb154fe31d2ca845ef451227d9797e28dc4102302f1c2cdc246c95340fd9f826816dac878bc7cad7fe4feb109aca0ecd3f7b4c2ff3991aacb8af893eb638aa6cd460ab620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023016849674ff8e477ba4ce61e4c1c09df974a620d4fcf715211ccfb9fd99f83ee2b3a27b6541055d519715f581df2fbdd4023100cae1e1d7c0005728771f224fd26593ca8a1fb9b0daea9cab705ea071c8b4218885b69dfef94ff4d1350f085b72ffe1360302047c435bb500683066023100b48651948db526f5b37662190f5fc1671e22b1c204fa3334829395254cf664e2b6b058cf7b2dd24d3f0b7e17f3cd015c023100b20424e581f6925f4ae1fef73c477669b892db772c2456184a1288e3970c586394d94d77b38d5e2dabc93e710ae124870302047c435bb50067306502310080ff88a581aff32b831c0f7333679b31c87ebbe5929ccf5f8d6d78b5482bc72226612fc7a1eb90c3f10381484d2f6684023043d9b890e965c5f6feae1520eb3bce0972b76cb255b8ad0e050c1fce70368827a36a41d904fb644d91ac3bbed5b3645b0302047c435bb50066306402305ab7225c68051353073594189381cff803ff376c9a92b4013d31c7fe76e9e58f64ceebf34c7186d39e80fd3b95f69409023059eaadd0b930733265c98c8b6d9bcde568a4348ba131187679d03778a34affd5841fd5bc31fca72ae1b5eaf655c926670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307770b95ef83e00420664d479fc97d135c158951a17a3fdccbe2e951c171d8a153f503a4f4ea1350e3f095753cf71f9c702306b3f9d3f4e445c50a38d28663400672c396c0455b97e92ea707aaa465bd9179fdcdf16cbc496739755c3a7fa4538fa3b0302047c435bb500673065023100fef74f9af3f4c96103dbbd4728999cb1bb2b8ba70273a5584b5aed80f1a44ddb579dd4d5784b7bdebce58c9388e40bfe02306618c62e56fa3ff1848b8bd921460f32a2992029706d9ddbe1c1d0746045b759c7ba600181ad1b8b6102469cfc64bc910302047c435bb5006630640230706d35c01d849a6ff3d8b817fbfa81c912a1ed997441fab144d0119e11ee1cb00b2ed6800b638a723d913773de78b2ed023036a13c9af5c84a69a9380cd31cf72361310fe7827e49f74f9e3efac3915ae1cd1b38a74e6673eae4926e14c2efa151820302047c435bb50066306402301810fec95c652fee4c0f8acedce232bab26f1f965f4efa5338886fe937bd984258f4325b6763617b7f3ab238f7e9cc6c02305f9aab6ecf629b5b35f3965067b3a2e7584a115d6b4a39f16ffe0fcaafe7b9784af29ce3914de427dae94cdc97c2862e0302047c435bb500673065023100b4fdca825574f73fdf3ec7a1168a0290e9608fd91fc530a98379201518ab46e17002f0ba769f39b5716e4737847e31f602300385e83f5c55ea106dd5dd6d3ee12d0a15c0826131eb3c7a6de2ad2a06d6528a7f93ce46cc596dbc327a24669ffeb2af0302047c435bb5006730650230059a00de0c7acb428dc585202700f9dac0357c2f0b015d959aff6f6cfe2ab2ed5d885285374f369166a58d30e7e46536023100e441e958420047e32e0e8cbe8918dfeb583ca7e02865295a81353a6a8ce74f24e7cae640036a3bfd21f4545f821c02f00302047c435bb50066306402305c34a24b9032bc7c2b645b71fe77263b5a72f78cb1614910a5ef76a668b0de406905d16bf26705f419475169d2b389dd023029a7f8277d6684f78af2cc5341c151c01b72f77306d8a54ee37532b74a37ca9adec928c90392e7cb5466116cc20db8380302047c435bb500673065023100f2cea365c0c3edcd908dee8b622743aa8a5f344974312e5692ef7546fd78e1088f5b6304a7abce118249e5f651c83e9f02302265980d8357c3d0983e12922bb290469a3ea1f3d0a82b16dd648fffbedd0ef9c4262e9906e64ccab2a22d4bae1b89440302047c435bb500673065023100c17ea55464eaa61ad506a94f5bed47408f88c1121bc4126e9ea5347852de3a49fe4170be21ed170e9803b7dc800925570230603c0c45fe08c0dd8abf0eb74eb5552652e1f414c89ee28990de411fe42b111121be842d206d18d0ab62c56a907b4ed30302047c435bb50068306602310087633ccd33789186d1401718fc86255b20e0f7a0e9f8f292b155f310894b77783a80a837e1fa0f17e330b225901a42c7023100b78c0f685d0701cd0107161c7672a0a546599ff61baf3ed57969d77ef7bf8b98303ba7ecb257835055feb86a72255f8a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303017e8b1f4f1efd14c86fa83d8b815afe18195f0e2ceeea2f6df8ae9e63f39e0ce8d187ab2283cb923f1e7e89f40fa8e0230051d033d4f66992101d303d5e4de8979ca8a090dbc523f309e18bfb7b486135a6cf3651d67e7f4e74d56e56f625c26990302047c435bb500683066023100834b195e61332d95bc4e7f601eb8c3591a4dd1585d49e33dcf278234954c1748062a8d86c537b7db55c12d242d085513023100a962dc996b8aaebadbf08cc33b8490cc11d5441f600760865745b2d3c280be234bf4618573ba0104c49ab861394e08480302047c435bb500683066023100b30fee87ea1af6fe4f1130440ae0680b4daa9245b201f947cafed822ab54175db5bd737a832f1950b1c930204fb93fab023100e421102b4b61b6c5272728287aac4f9e2923bff7b413b5ddf453546bc2c22505605a22559458443be1cd4a2d1431fdd30302047c435bb5006630640230424a2ae68489171770369c74797dcaf9c01ea02b0acef04f73c1843834c5d97b76d0212ae3b45528938a9a2a27583f6d02300094a0c6574ce7b0b179226310822c25d10001ba1f178d70d7751f202e8e5f097a11de0e83b2559178068d394ff0a07e0302047c435bb500663064023051560bea4599ada659c0fb32591f86bf86ce8b2048186c659609439553164f0e6bcbfb77ef3dd31c8185eb595f8951890230782e0c36ba539bad74fb2c90b3e652d79a4dbc57b8730f5ed104858e61d1b8492596dfda99334d6e0b98c2182185e61b0302047c435bb500673065023100ad05c2346ea146c75303eef26f47fbb7e31facb4fe35bb301008fddafdc9d9db7e57bee3cc5a82a46ee1d7076e48585202300496b904337fb6ba6deae0945aa4cf8cdbb71ac637bc8176b8383c8df273f8ea27b19314168a635146e8a60e4fc850f30302047c435bb500673065023034be79f770eecd78d9e9f6f9d6de4fd9e168613ab03fa15eff60cd5af4540badd34f8b7744faad050d416ae95967b89e0231009fa37634f309f6f0b749bdb20335eaf1fa1535d8af1dd51f964d16fe915a7f7c62c766dc9c90f243aadad2fb5e99873f0302047c435bb500663064023012cc990a590c2b0ff4957fa54c3c54b2fba4da1e70e2e15ad8b4acb55eb2477351dd96150345b2287705f8c2c38897f3023029f27c7a9081436cb185bf4fe38bfdcd0cd8a827fda9baac1adf65c0c22eaecf46fbe8c6f99fb000a125b12dc64860b70302047c435bb500673065023100e5c49546590e51d909871abf17633b78e2a6245be2ebffdd37032917bd35725166ff0fa00c4530ea10f8f8e2db5a45730230089b6d409dfde813be91802adab2bcdf2c8180ffe673db35ecbe409c1a89092d9f30dbc4e125df99dc8c84b7637552130302047c435bb500673065023100f2bd8fe488ca6944c945834e74e9dde5a4643eaf905ca8a3135e37a81c5c5e39adcb7f9230a6065ffb4385117dfc16e6023013396e913ea29cfa1a4438c05b963471e2c39470e43f5ba724d92cc517c8720800bcd7a6f9fd689fde1e09f9cf3de3e90302047c435bb500673065023052ac931ee7204947538a8cf665a0047fe606b261e9ba6b80a45fa0ed9f5fd4689d3539c0520d457fdbaf26a9071199a1023100d6e0e7609943ffbbcab77c8f431ae983b1daee6efe71c93d461c1c478adcdb0b9b7ba1accf6ffeb1767840f850446a8b0302047c435bb5006730650230651d800ac133ef8bf6b9d217cdb593a5fb74593008fca5f0f8db150eadaf22c9e6937841ca73a07855524f9d8ee3aa17023100d64a0d5c273698678a45162c65e7c73ec3ade22ac13720a14bb76c530a55edc0f2093da19120c906d6f55594e25c59120302047c435bb50066306402307f4295e629a082455e2821dee6df7f4131a4972fe4d4760860177089cc2651478c29511699d3fe4f9c5be5dd19d2e5600230611ff66128805b72ec9a50fdc6f953be6f6f4c6bf5cf965d5c556c0896335585c522db4d08bc2b408b64ce7bf3791bd20302047c435bb500683066023100c7e91acb0af2abe6a394de4053a0b7777276405a32210fa06a76c2186f773969edd516af6948f896b278eb23ff191056023100986f88266ceadcd6945547ae1392eb3fbdcab5459ae33a6c872850f8e7bc4792fab9d0f8ff52602edbba1de4a5f44f540302047c435bb500673065023100eac87391f310034dd3a6889393433d083433c9770e04230ede7fb5fb8e789abae3c95169930c4efd90ca174fd8a7e8cb023069649507ea62d77e4367fd19be00dae80147a9646383ae6615d54064a1195e73270120f887c3dffbf2ab3e1193d7c4da0302047c435bb5006630640230569306a08c4f440b32df2da806634b644799a385b47a89a2ee982dc6f45f4f79034a9b9187687080f3ce8806e0c2ad2b02301650ae3b71f15c100612ed6243978e62697fc6494f60ff7eea040f04892abacab0ee1c15a02e15ca39eeed9985942c500302047c435bb500683066023100a31e51a7f6d69d0c08bb3b33a64d8b21019f9e7588d63b307190f7425e78079397a4404dc2b00ec68dd40bd94e40b9e60231008464b0001f07bd89531f8fccf66c3363ca1d56ad283b54c45c87030cde6dd45e77ef98e781fed173d7e08ab9347bd1090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c8b6beb5ea8261b8f70d0b8c903f04a2fc79e043b69a0673ef2457136260608eee2abe0d93db62da3419b6b405f6510023100bed9bef66bbd5397248fd6618ce6edc8037dec2dacb744883fd549d490a79c09ae0a77fd09436d4b046c1d4488e0bf480302047c435bb50067306502303d05f858ceb2138ebbe16683b7bc124e2374bdcec81ed858cb784e9df5b1308457bbcb67e908e4ee690ede32da5aa4e9023100dc0dc2dd32765e1178e0bafc1384b6bf2c3a8172cc7d400d09698afffd62925099f08a7c94c489071d3fb88cc700f7da0302047c435bb500673065023100dda717e1df06dea7be4f81d812fbaa130f5f6d4d25091173b43c2fdda63f317f0e535bd590016b85d87ae63806603f53023039606b5600b7a2352b121f5f120586aaa05233b74321020c55b171fd02029fcb3581f610c681cfc20e7232a289f1170f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303ae5743c7b943dff29ad5e7cacd42833c526c0de84a0538f58eea478259d38c1a28541bbb9e220ad663a464f3daaa43a0231008021ad447e4660b780881ceaeb2faabf1f74486c8a3706da1aecd16800f230b5e2a8692f88ec2c265f94a8bd796155a60302047c435bb50067306502310084f981acf18a494ce7704a7ffbb853a9ff8cf117a4651e6adc0eac7153fc35bae74761a6bd4f51e876c0046764274416023047573859fbb5e6bc26372dfd71e2c1d8f56de1584da9ec786896d4e8ab039c324c77d135d6ed9b623aeb56581a8eaeee0302047c435bb500663064023003eec5a527138aa8a990f5b4e2c095db6a06e2e3999fdc3340676cf6abbf83701da7d3962987ec332c4341f2abeccf3902302137eafb48c93a03f30625b0006853b05babdce2356ac3717f4548e370c8a0692127a174d56fe639eb1863d641c69d2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c552da53aad9c235ac5ede5bf8d4cab9bd7b93620e35b4551c24ee730f8bfa79ff927eea276733cda5e9fd65ae8b16c3023039455665929665ff2c269e0f626debcda3d99669d8298ccabd3d91e943e195e78ff800846497bcbfb14c9958eba613c30302047c435bb500683066023100f03664d02552c3dc95674aa32313412b8ef918880079bd21247d6843bad78a8023933f5f7bc13ff37a202fb40ce80112023100a709838d6f9b0b0938a16ce205be4d5b9d99a04e3fb8ee5e88a1014d8b4bbd46c59e10318afbbfada8ed66cb644416620302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ad623558e3ee91feb42dff2c91f43933705ac871e1fa40c4e791f346bcff4ac1cf94d30b5d8cbf88f422cf167c9af19f023100fffc67475d08207fa086f941f9085ec2452f5a0b02a7194d099db22e1c8137d6aa894bdfe2e7a00a52dc1becbadcf91e0302047c435bb500683066023100d35ec444c5aee6ef116d5155b82b3a346835ec25ffd403a15643ba0c1cef3b12a3e6d1b50db4e17d0366fd2088aa90ba023100c0459e44eb70fe6c22e50810dc9de34aa74e9389ccf1e65c7d92ca8afa7d76543c82675e69c73a5958dd7e760c7c2eca0302047c435bb500673065023043bf0230eb64cec1db6abd1a631cc1474920a884d859d7c50a62801510a4a37908e899a086926b237f816c89ca27a376023100bca85e59c3b1933b8873fca41debe5ad57f450842c28b734d5722a7d6605db57c1515b9b09b777263e3b2145b41330dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d7d71c46942196eed61613c95382fe341e94502054c6cf06e2dc0257969f90f671d1f9d603d69cffd8543a8e6fe47ec6023100f8c2f3ddc103dedbb4279d90b0b91cc8e67128d918b3c340a5ccae7d7731d594247a015f9b4bf71fecf1191a65413a920302047c435bb500673065023070fdf9efe0002954ed1501f0b958021e46c3f75f81f3d106b1768a53a8b23abd8892c9818c2a5175746a7c1c261ac612023100a939be1728b3837d8f74f3a9019998dc8ce911895fae522d4064b56cb1d61a7418791aad7d0592aa660af78d0a0da4c00302047c435bb500673065023100ff7716121b331572ce55e4223a6861e22e9350dae463a401704c003da162d5383393b14e3086e89a6267a2e3b087f12502306197ebfd1a36b9575a757e45196a145736e1af688aa6df599e20f23a68925826afb95362620c1ede42d34ea0411116b10302047c435bb50068306602310091cecbfb102f78efa92b018a819a5a9c76229959e6029335a080cef899c8f1c0560adcaf931034d7ca580e91ba54e499023100811c3dffbd3421fa9624dcd74f78af78aa5e14edf259e6a6eab0c1f4554b4f3c73434500acfbaf85b0e5e06f362a83d10302047c435bb500673065023076827811f5570787fab5bb0872b922271a10fb7bcd5fff347f35f1847e4ec011983fa3840ac15a923286512d657798ad0231009fd4e291b2654b58e433d4b4366fc8cce4ce121332bc8602d8a5f998fbeb3ffa2223c791edfb75ed5a42a466f8d6cb7c0302047c435bb5006630640230561866ab536ef3c2bac03b32cbb4757d6ee8649e5b9a5465024970abd8fe2b1758a84d89b1db7b15cc3f4b6374d383330230492d32293e487e09bd93f89a9c0dbe5a26c2b3835f02ceb15451cf27be06e481f785549d3b3a170008c5a8f19ac01de50302047c435bb500683066023100ab0cec0202435f8dbcb26389e4bf99f2440e2697dcdfc8b59a4b0ca0ff9852c719c39a249b7b705e9d21dfff45d4dbbb023100b8849806367f5b020848d8cc40d2dd0fe7ae38b87919116854a855c6f76fd4362b3affb9290d75095ec5ad142cd546590302047c435bb500673065023100a184f2417799bc6c2f29d55b569acca681188d4e4c832ac9f4672b6f597c6b4172087d15f988d912d99dd6f6a79d443d02307884af700784511985100b581970bf345cc855e44e9b5183a271df446719aa119e5212c62a96c7bc6ea5861a808a26cc0302047c435bb5006730650231008fd9f27ba6c752f6e16da0f7310d93dd41e1ea1683128ab666fe29f0bf14bb782fdeb3563b6b05ffb470b0c3e7e67d8802303c05e3f83d1e6bbc677e502503395d33e8655c42a518b6ff78add3e7ad314849f1aa06ccb727ea2c0ef0314b1464884b0302047c435bb5006730650230633e41c0bb3585337bba890d0cd20dac3b9e020e8b318460e3734d592ef3845fc477fadf3f7732f66d2553e9e04e6620023100e1731bebf14e851a2c97fd3260c4f8800767ffdc53f8d419d59647ceb9733f36ffdd624fb3a41b6c61145d74331742160302047c435bb50066306402305f2ffa00395e829a238f964c1ab68a09309745d56e235cb91994372a05135f6a496258b2161f0d4588106bd05af00c08023053e1c593894b68ecd9295300e56cf0553fde639b7fa88c4ebfd7cf0ad22a58884cfdaa6d29547d0ecd4e4519e859e46f0302047c435bb500683066023100f2a40d303bc1276428f9b4a0613037015c71874102fe8cc2adaa9498d99dd0eccade933ed886001fdf721d02a020b708023100c636349b5f5f2dc958cfe77565448822cef82599ddcae4848ac5147677d24cc539df5e0a52472381273fa7626eac14b70302047c435bb500673065023100f08f0ce1c24bf31487c04ca91521ff07532533867b9ed20cb2e76f5063e6239ce9fe46037a165aae04e98b1e5791ecb002302f1935b3eb95c9110c6118a2e9a22e107ee55e4a942bfcc6d6470d9317724bc937536f0d53eeb2380442ce9cb6d302f00302047c435bb500673065023100a07ba2bdf499252e442378e29dcafdf373eae705637bf48c195c0264d662438f36764482bd0425413d39a799dee45d210230559f6ffd08a1e7c060cb35fcec8f3ee19bf6615b8498999efff8ef9fdc4a9cd6be1495b0a1df01e7855b47a0e31eee050302047c435bb500683066023100e1575dd6b4c8cdd1ece1184bfbe300bef9077d26b6a3dd28aa495285007e75cffae0d2339dd272e72e533f24d3917bb4023100c9cc25cf132b216f9dbdc2ed29f91048ca1e1c419561f765820e16462439759e3d9228fd8ff7fe5f5e42ade765da03350302047c435bb500663064023072a9e392fc53f1c13d45c9bdde3221c0f88f7469e796636bacd778106f26456910246748425a9cc5bca4d7379588544e023005ae41757ebc5b7cb46f0cf46cdca145b0ea8bde8af5ea6bc411a26c21cdbaae34bfff60eed8b087c3305050ae675baa0302047c435bb5006830660231009dfae60828febb4669eb0c683b172a6b78676f3bb2601dc8817f4701c3faff60b00c20e41536c9fad73cb7eba0b892ed023100d444c8a13c0ee7730722bfd359166ec3391ff2b43dc10166e6fb31f91188c26b658154860d5512812809781d9ca3c7c90302047c435bb500673065023100e7af1609fe83ff3e8d6cf1891ce2735367f58ff3916e1c0c8e9c91650804424a66a795ea91b7b37b882e9c03c5d38fd302305d1bf7d229bcfeffca366a1dc18294f2c11969b758589b88556bc1a58423d75901f34ff01c8e6fdfdac972d3b15cca130302047c435bb5006830660231008982dca37863e691145f8ff6853ab224f31deaa4a1a77ddb93cd8da123fbe9c7e1b57b101ddfe7f1daca0560309d263a023100937942ef626a2707385ee4c09d76f544cf43e23af19245f5218c018e76e2ae437b5c6e61a7a058e67949b74d349f57fd0302047c435bb50067306502304b96fdb03901bfedd094d321808688fba968769eb971a9345d0e04c6e1fa661aa58ff761d82f11882e34e4ee80c60813023100feda70cb0235c0ee9596eff04b1bb673b6d9e4ea96e742cc410a590e5424781a4bc3dfde35d7c424377d3cc239a7442e0302047c435bb50066306402303bd43e85184daeea1df4fba9334f9de96e4074144377596232c8f5a64889fb2bb42d388c4706d1c85aff3f148bf9365e02301eda4a90abc284a23f4fbf075f193d3e001f10fb87a9720c1b545582a7294e15d89165c77c7312b71020e029082169740302047c435bb50066306402306eec36fb7b05b6296e994254562d65eb4b1d13f7ea7954071839285b5238f2f29478cf151b68ad50a0cbd142a90c67bb0230458c8f49e85e6c79e35f252d67d1276089a8cfe95e22acee4569428185ea0077e202f10f41ebb1d388c1705e872876200302047c435bb50066306402302522e9442e8114b96af439cb22135db4c12cdbfa90d61e5ae28d6fad52a9aec7f98346666275243bffc4321d5c1cbeb8023013b3ac863b48156321f0831ce44bd68234af26207b0d3c3dc9c2042a93c0d6f20618863dd8a311b745d04a25461b67100302047c435bb50067306502300f391ae005798dd863fbc21b8470fed74a63ec6302d12ebfe23411f51dfe1086be39c9d5c5c985fc9144a30985c12e53023100896e9c7d79a504ef1aa75de5c0e3239987ed05502d17125fff1f4ebba6742d99180334041157f6892732fa7741997e6f0302047c435bb50066306402301ceced1235606731879dfbad3bb00dce07f312af6f2c9726cf89a9238a0810b52dc9a7b7af0f2dfd4bc78c410a6e536802300e98594cab55964ca4cde88a7463b790e78b805e8183dd9d78ab644c5d21228710d459c24fd4456118700aa3b871c9c50302047c435bb50068306602310083c1856ee45398d745979bb12137816c64954cc03b6a90f31a1696b1859c3a045ed9fa6e16bdad06aae5cc6d365a69e5023100efba13d70d4ae5a34af3fb86cc77f0783407260a042db5783edf5bfce995323956089167db98a7720c6bc4ae9ffef3020302047c435bb500673065023010dde326a65a337618d867c7e9d0834cc1fecd017ca0eb00320cf3b67ed9d491371264bfb678c72aef51ee390199d40a023100a98c61c1ff2d8376e1760c18a9377afccca3b9ee0d2ea05a95434feda0bf946c775e31bb745a476b58eb9e689c5d0de00302047c435bb500683066023100ce1fb079f91b4e5597f30ede032537d4014fd22f0cd3dbe0a25ac8f97e6e5ca58d7c634bf3242e02eb6571f077f3c24f02310096888c5dbf57d3fe46a9816152922ece8f937300f2b1a5a0c1a0e571af6f948e855efed0cd39db2899ec6e83eb554ad20302047c435bb500683066023100c6ff38f7b256725cffffac2d7792be37eef6c823eb5305238d42d083846700d98ead78ca3e3ced0456767343a962a295023100f7dbb40fc608a813c8d9b2be205f50d2c6bd96cc9ca10f1e4177617bcfb250f6c314426720d7dbf8a222a80c11e125b40302047c435bb500683066023100c754699201dc38ce28bc7e1ee6533432c4d2b64f934131574ddf93bb24a9173493f911acc15d780c85f67628b02a0b42023100d5912ef6e4895c5c25f87ae6049bf954513940778a6af927e11e6ecbbf4c1b65b1d77f174e60ce0bb05b33b94445f1010302047c435bb500683066023100881d0ce0d35135444e999e372236face623f92d40107a1457ca51ee42af50680f0a10ebd11e13eb2322001fefe143d48023100b6ce760151ddd5159c0e06c206ce0253f4866cce518938f879130c0871b3c0415e8d8d75ce14886f0897735eea6e68800302047c435bb50067306502300e2818838d8b4933dfa6bd5d5c56359963aade5b46bdb1ee17b00defea87acc20ce4940c309d7720bc90590b7b924a88023100c4951c34e077c80c15d231f2b99eb3f9271bdd6610d79b8bf08aa90171ba4cebb775cac2e8cd69182f6a73f13324b9500302047c435bb500673065023100b6f63735e9beea1778aec9de69b0bf1b3f7b72cc77f5e698d749c7a95682de2701b7af924f7417db88aa49160905b5e802307226dfd7c3de2efcfd90ceda907bc602f4d640322bc89c9041cce05e4318f616a1fd49f29b3e17fdcf698ec05f582c3b0302047c435bb500683066023100a56d13b03f7f5aaf321e3dfebf84efdb0f7c7e59ea0adb8adf656c05401e17a94a3a85f8b48d43bc2f6b1d86960faea00231009c52ccf7f29b5c20a396f15669b7d5a796f0b7d6db9c5bb5d74207bad1546b96572201a5dc975a78578c0dfdab5a910c0302047c435bb50067306502306c21e06f0bd0fad19773c505072afcc1caeabd49cdafc5cafde028aa8aadb05c3f6f9d66365fdfe4ab3c1c56c7073248023100e667d2b680ca334c8b00b55d54b8f546ece2086dc90aaab9d1b381c3437d26e1d456d505b389099c8d73114bc8c89bbf0302047c435bb500673065023033d2be614ab67d8b2dc5b5beaab8389d3955e6dace677d68d344cd658474a4d1143cd8c8251aa4a956acaaaf3d3fd8a3023100b78adc052af026d4f72cb077a9b08f6f1cd3d4694618e9b9f3701c3cd1a0495b195b70c66d0883622f8cace28999aa5f0302047c435bb5006830660231009fad2809340d4c2a326305e6e1c4ec828b6963c94c22c77c663af226add3257a9080548d72463b94ed335977454ea5ba023100a716168fb3529db8b2b00146c9e3af15607922ce2979fe18a0393ef8bd8972c2635b56c0d31f80e63c8a6daf8e5603530302047c435bb500663064023033889457c6b1c26d491e5ff5ca32664cfb3912e115c9ff9677e8048a93e1b6450e754224da6ab99786ff858651e7d7010230799c310f7c7ba8d0f50d51c5d4c8da64edc497613e023441b0a0941c01ea4ec4680345110ddaad608658a61f339158420302047c435bb500673065023100e031fe5aaa71b17c1fd1fe1e6e96583097e82d907800ae44c9cd76948b4db81c5d81f5edb007d1101d7b427b7251332a023039061e4cb883c85023d13ca61d1480a2d39a215a47eac1d403bec086ddcc733986848586f1c2a549f7652724dd26c0e00302047c435bb5006730650231009d2448b3a3637f9c6453e38af487bf53e57e86ea257ff516486593bebf9088e77cd5cf905dc0e4cbd41b9364f83ab02e02305086fb8b6dfbcaee4a6b6d3bdc7305d6fd5c95901652b75fc4c4cddd1cdcc9afc88b864420aac448ac745489eee4d4420302047c435bb50066306402303b4021a70817770070af5670f6c6de8c652065289c614c78ccddcfca4a8b4cd46e186cb4f45efed94eb2160d2c0ba93d02301f75441a4a00e16027f4bcb17f9e5a4c4b0ff16eaa1b914ee00654ab11d1290140d6abf5480523ab57cc787c7d0c1c8b0302047c435bb50067306502304ec942a0e96a6db4232ae72e413cea1a2e4c6c01892647e37fcb158a72fa9ac1aaf2a6e8c80211dfb6665286848ae42f02310099a4b0e1ed670128a07a59a82056d9e024eb6192fb006b47772d01cf270ef7eefe5ef1dfefd2decd6c01b1dbf2c953870302047c435bb50066306402306ab74ee6b18052009e377a0feec5a018ee3a4ca9273a3b9f0dc8bd650fa6c5979d41ecbb8fa7783ce4cac711aeeff037023021fda0e8a4e06f676cef80b86f3a88c9272d8266030f429ad850c12fc3d6367c502a0be62bf9229b959a46d1b20ccf9a0302047c435bb50067306502303224d208d315d9972af4e57a8566c166c577aaab7088369ce1fbaa69ca9a463de9c508cbc593bf16b8d7a158ec9cc1bc023100d305b48f158864f4ade38551c514b14fd4a67c94f09a8e6fede726b5c0edc73a065a8367015caf2b1c620da3e40f0ec20302047c435bb500683066023100fb3615a2d7ab09a08e30e69abeccd7c39c7d8ad2388e04de04d8638621c2a5e2aafaf0fc166852fd4becd89007efc061023100d7ed9665738b639152690facbb283f1b3ef21026ec4da0fdab59d4c22665224f74435d245a3f086e1f7b1e338dfc44a40302047c435bb500683066023100c7b40cfb30cae3fc1b4d2e09ca6f75689acd55b354ce3841b5fdc04503172f5f6805f36a82952c0773d109a6f6827f5b0231008de4e7ded20fe65dd3263d15592f5e67cb463f78662b0794a537ab81689d46053f447c15842414979ae0074de72e03f10302047c435bb500673065023100fc7b582c4c28d5b93b2447c363e42c7770b4410fd14c6a9c42609466f66402e2f8bbe8effdc4a577b34926b70500a8b10230473ca490b7f91eb81c8a7491ef1126471d964de1895e74d68d8c8e277a6ead9bbf3423e07ec31a1221e8e4902cf57fcc0302047c435bb50067306502301b5e82a99224329afaad1e5e01a71da63ec01d58b3f51d861cc04f7cee8b699f29326a6b04bd304137a4581dbd0f77af023100cebaa3bed0a47fff83165a5d364f92b76d99f70137bf2f1a47a6d0555d8131d73cc57983ab40c35f301ef9ff9e6684750302047c435bb500683066023100a42bcc5f839fe272ea85b130e744dd226f771a4e6e331098c5a75d7534e6c5f849cc9c5c9b851a01e2aa42d1d451f206023100d8aa80a83f93569695374a7b52b7fe5f081f3a0e31b205a8edadb350ce30b5bd39be642628bd26b847b95aa70274909e0302047c435bb500683066023100bf218be4618876eecb7624bb4a0a049d15473fdfe64cb839853484743a73571759030db2334de2deb181d6cd7c5a3cbb023100fd03f653aa62feeeb6befe5a777aa5ce80fe32f0ead28b31c04275aa0585f92bd346d3873a4a21b433893d57947cdee20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d088b0832228ef61cafe10c4784a53055cc497dbc037c76e616a9f1143d173321e0b311c1f05d5995724f7c950f09c00231009e84dc4590377483033ed464f2e7ec8c68aee5711fed6d95345062190efc6859fb9bcbf9a70060bb5aa08187e68ebf3e0302047c435bb5006730650230259f25201e43bd299a4778cc887a811db04ce252a86b854af9df2fce76ecf862efb2c4347fb6bced5f1d0e6e385e5031023100fd0ec86e5131c99a835324c8d98ea0de56c6cb2e55c8a92fb61cd248a0e75b6b8c4261c4ced24769c0badedd5b227def0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230629a788f149cf029cf91c88de0ec9e36c736b3547dc0074cfe859398f5d943d0621a32a70f1aefe87e7dff46c6920c7d02307bf1364c91dacc0241604089aef3b046b7063fb2613ce7c9ff6e767a4e22dc553e817531ab487ffe072bde399a5425b30302047c435bb500673065023100e3d8acfe36da60f445f064411e6f0e6d4609eb2a32a4d68f1539ce900b2ab32b334feb6c2aab80b803f3d278c9649e2402306653e8a0e04e18e62381b54bdbe3745c36427f7cb1a5d853363a5e373bc9ecd010c08664750b45bc1220b6b093e971dd0302047c435bb500673065023100d4dca1073df2e52d7422f998658ee1c4153cdd041504cf3612c3fcb1c43d85c9bc50ab805994e338c34d5b6c4466276d023062055309b449890cb27b50386f20c8ce33cfb50faa1e0efe7ea2793494f70c339a763f1df5f4cb54e4fb3046acb2771f0302047c435bb500683066023100b1965527a6b84f3a6ee15cb660dc2473652dee1f92b656e911954fa1084820b442e56f16b77cdef21562e86abe21178f023100ea2e5de2362918c785f5e5b46329904b9fde3ade4cca103ac59aa75f5e413299ee32f880024bb84e1b00e2070ff4f2e00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f38fd8d15ae415eb4338e3909049adcc3fcdf77c198caada14739b55d0f7b862a9f8d22e601d326bedd780650370950e023073739d0c0476a3c46f731336b60305dbb94ba73495f8c49fe95321b573ba5e108fa24773e6728cebafad0e1af26b08440302047c435bb500673065023100a4830aac37f0a9e8675ea65e1146beab367eee84489e13d99a511bacc0a5588b80cd517c6b3fd047e13aa80dc1596bed023009eb3aa5f04d34625d2f7ae894ea4d1f126e72713655424b78af5bcf08db61e8c5e8004a3fbb79f53e518b8b2c5ca5b30302047c435bb500683066023100eeda501620df8d19131ccef019891a116413051191c484090321ca9a1c4832a71ff56c0ed82c89bdc186f9666d54f43102310087c8deea74dd925481ec8b50c88a081efbc4728fd31fc2fda0b5540c53dde6aa4f2a2a88889c545c4bb30604db3abb970302047c435bb5006830660231009a86f137ccbddc8769a3c7fec1c837d8460d2fe8c672f3da654ed1ccb5551117b5312e4df6a5045b2749f26e15ef2f0f02310095d81ac2a7e4390655afd22a444eb02870f4bbb4718a13234a73ecc7797af9fccdc5a065def1aa4702b68e26e2039f160302047c435bb500683066023100f91d56d23910ddf82cfd2bb1ce846de4aceccdf44dda500f3efa9d86b35dd633280313cba50838563ccbae9b48e1a08b023100c896d133c21d7ea0ef09ed2d48c8db15dae33d62f354b0b80811b35676bf8473b414c9b1612cb90eb39fab48e68698b00302047c435bb500673065023100ef282e7ed8ccd2b7072544338bdaff99cfd5ba8b1f9b2f29a9cd346e4aa40f35d8c6e2079cacdb54d01b0bfab0e9138902302a5484a24d34ff940f0eb9d169dac9aabe10217229ee3a33ca6382c0cdb9cb5b6703065580b4f48c3a006a4a0c7a36cb0302047c435bb500673065023100bb15aaff07796ccc15c5f5077f5d074d98e8943d69a68f90eee637a1fc5d59026964b9d66c734de67e0df87547eaabff02302c68f21e305181eaade347364c282089894fb21f2499df08a2abaff543318c266e13c722ee70433c5bc7511ad27853160302047c435bb500663064023040e355a561802c1fa08a174825c0f587ecb7922321c17e24ace6ca13add512576b45fb9624a56ea38e4b4f10b55207d202300203af9e42dafdb93f2055b99cf84378296ebd4a101e245f12d4f03d5cb5b4810c1f1f6f6fa942109b570ed4ec10dcb30302047c435bb500673065023040b8d91fd00a99acf888d3b7ff06014817a6d3c728d2925d0b592abce7667247e1209898eb20f01e6e6555c90a1e1c7702310084f620c55def431d18e39ccde5a589e410593997f97d65b752c0c0ffe1da4e3585dac6adc5d9ebb1b846e46e434565760302047c435bb5006730650230123c2db5610d652fd4d77311a1fdfeda9cdb21a854c5136234cf33319ba21cbfa40488bfe51848c5d2c98300a85a8227023100bac0b69658d2da670f9b9ccfe8aea97b178e4acce3c1776430ecad0128e1f9bf0c51e5df64bd8490731af1479d73288a0302047c435bb50066306402302fa6bb59e9f2d12c236f720b403a85bb9a5b3713e8d55d020f6b5d73846a11b4fd68a2444148eaab7895a629c1831b5c023042b583557764dba2ff3dc50a320f62eb4d638573697456c8a7d70ac53b5052463af9ec08381d6b707e42d4206502d0660302047c435bb5006730650230067df1b9e49e212aafef2bf88fc8926490864ee8057deca070c0fdd3206a42b1b9f9cd382986434b456b82648d16d1d3023100dd27dcfe19fb55fee8330ad308b6effb899adb8073022ea877a9ef9d2ace6a128348e5b2cd61834c544445db64c25a7c0302047c435bb500683066023100990359719dd74c295ad0f6159e6117d69f655370d0480b5b641b9c60ba5efcaee3b313db36c0fa0a44e0ca6c7296a111023100e697d6c0ea47464574a621fcb1d8e62e15f56fff2c1eabf0265804e9092f403fc08597f22139df619a0f4de7531285520302047c435bb500683066023100a2e39539addae182079477ae630b6f5994b310af0810d7708471f1ee1f2ccc9b552eda45de0b789875242ef75a60b3e1023100c5ad38926e96b9b517f0f0697753a041c2e55c87e707a5260cbfa864bedfa014c633af833e281ac518481d696d0f75360302047c435bb500683066023100a150a38fb2a1f8bed8494fd8dd8dd4aa32c51980874f6ea565d09d8d01fae08f25ec2fd2bbf616084cebb0b53a9b5a0e023100fb1b7bc604a989b1156992a3668f6934e4f4bce17afc11e81280b6007d23f5b340545b56cf8aa0db8507f1654fef45ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ed92026497f31ed353025d671d87da459d7aa096481d93156186cab6bbf71e1cdbbf150b7e8f5ccf268b95384a8766c2023100fe3390c50d4c6c99ea58f05cc9322935b085b808f9f2c41cde37011ff3d5b1a76f8964cab845448bde00cb00ad6b4a670302047c435bb500683066023100ef4a0bbdd719c25493fda3c8cd8efeed6f10935053a677992b24e4c5449e8259f312680afc51731b2f1970d48aeb93a8023100e418a8f8abd19b39e6fc4cd907a2e29ae726971dd057e24904cde91a808c07df66c8fa41b29401a4918e9944616d5fe40302047c435bb500663064023075311d998a2293a297d9d03a417b07a6e49e8cd5c4ced29af7255f3a4e4b867534f4d446a2d2830c82b38d85ab42b4ab023030b1ac03610cbc22a45284d5c9858378664f899622ca5e89ff967a7f2d8035d01ceeb654513ea029afbdb62525fadea30302047c435bb500673065023100bb9de9939f56003df8282c4faaba9a0e2753e2bea94a8579cdafd363524c10ee522875a980d7f445f32059db769835b002306abb2b248c3c3eab45ef8b4acdde3ce602641e3dbc987147ed82be71691ac7f4057bb35df4f021596e8feae9869d65b10302047c435bb5006630640230067945ae59064b0f3f14204daf84841eaa4691f6f0e201c6ae8adb99caadabc8c2bb11472fe84781cdd622ff07fc9a7602300628c4fcca41340fb4e90efb2d5a1895dba5d413984cc97fd5d62b3cba8920f15491fd734ed73187eba16cca33e621770302047c435bb500673065023100ac3bf46c52fe2aebb70108730640b990fa100c06f181e08ac0e69b03327f0b28c1cf0e7737624bec44abe89a9d8abab2023051831ae375b6b29e03d3b2122ae14787d99a4a4aa97fbdb4cba58f7438f5058b80bfb289df424002ae8bd6739c590a2d0302047c435bb5006730650231008a7c11e814d5072b9bdbd005ec3e0560c827214bd27c7a7bb5a4aa3c3a1df72c0a90ca56f0469a075072f7a943989f6f023016b5d6a1028f580c618f33c3623380070d266b165716af09ffc490b5384b1e6d61deed465796a900e22ebd0b054b42440302047c435bb500673065023100d2024e548088db022a0e99388823985c7d97cc849c8dbc328766999de02efc3e748c6a7b5fb98bb9a32b4eb8f362977102303371611a66d063d3b3dfe4781321dcf3d29ddcb0a5cfd2e473702c83d1ce51a9d90635df935d0eb69ed91d9b142a8f750302047c435bb500673065023100a825f0e9e01bcc20bf535733eea447e7d45c46f40b48bf701f479ac7c702feb03c6a819aa1554f1a5b22872814513d52023058377b53ae58102852a785e896753e857c534d18017c5fff7318a566ec48aaa2177cd47f1be0399fe3fd665b1d0903150302047c435bb5006730650231009cdf6e6ce7ce26ddf48426ef9353af4c96cac95ba5ee6913d7bbd15f4e92143de2239a7a8c08c6a09fafa78fb22d2288023003f9ea12a34d87e61b95aa474c7754722e22bd725ca288d2f0abcdb336a33c22a958ff2e3de2400e5b4acb4b7267114b0302047c435bb500673065023100ef86d92d8f81113d36b6587e91873c157d4a244eb2fb628aebeb9461855c6e20a59019c32133b85e1b3f412698435cf902306823457186016dc7d83c9a2285112328ae3054c53a43e17caaefb446c84184339c8c62fab59af327f3914a6eefd3452f0302047c435bb5006730650230696fc2f42151a9e1a29803e609057058978977b0f81afdf6378ea08d5f1bd48bfb6274dca2255ba727bbb3c1109550fa023100b27fddecb02afad87a85dcac51d1e9ba2050c1849fa68baec4923cdcdc35ba5a28e6484380362fafffec894b560456820302047c435bb50066306402303dbe58a19dbbbdaa6ec9375aa7f1a0327f7e21e19d7c43bce409062b12a891c30e880663d537c47ff6ac65d663234a5402304a1edc321af686d558fd3d722f18d4e9736356512df3781bc37b29e7c46786a82a5dd1ebfc53e8b54171a830cde3e2580302047c435bb500673065023066441e7d9857223939248026512394f4fd450131d0108950f913c3986aa08e98d85bac85bc61fe9fcdf7c1f3c3f34646023100aa15507632874a5a33746f12ca874f7bab5367af95df85a499b80dadc141f0a6e73003faf0a9f0966f002ff5ed5cc28f0302047c435bb500663064023027b87e80398d84164147d7902821e3b93543cfe1732af3d8f5e2c5e2530bbe3cd00da9236bfb5a1300787770da79a9ce023002a24eb75c03e7d620baef47554c97cc36b3e19b163f41618d3780f7a16e260808cef9df65ec71e419cd8ac4930a7e850302047c435bb50068306602310081b568bd3f5bd8a248eba709f179bff8f905365888715fbcf5b3a8ccdaabece12c5e1c9accbc3ba3fdef0c0ca715b872023100f91b0c5e95d3c6c255c2e1c196b6f7220b903de733a00bac0a717ee594586c76124bfa38425c09916dc28c5816a8b0170302047c435bb500673065023100fd4d77750ad2c980a7c5dccda3219bf16ba2187f124c1029acd4969098ffc13606c8bd8f7ae084bc22b35177556d5411023052d7fb491c8936271eed46ef509c533cc1c8a9cc6183751b07ff2d7e959bd27fd415d27288a1a351b21fa63e3cd7892e0302047c435bb50067306502307d4a2e5a6d60ac5e13f58087bc8864214e3ab972005683b211c6be15886a886426112c36faaa90a8dfbc5a23c1f498bb023100d1d5317fb2a1361bceee50b1cd67a4520ce2162d2ff04a189590c98ba345f9156fa41f883ed8bcf452ecacdc74127ff50302047c435bb50067306502302d94717061e79f2a544de8414c7337a3e1c60f3a927a81c3f0203fd53042aea3f85ad4b86f188bab7dc07798f16ef420023100b43eb04852ce347f15a2ac23ee3daa9f9ba0e23024a22a92127766f3d28cd7fe49eb69db219a2089c26073c5fa608bb00302047c435bb500663064023070ab16704454fd5988b7ae5faf1323f103bfc3853dd2c8b6745dd8f2721a53173545d212ad9778ad6a1061b8ff072b4502303095b5fc233340c10a35b964322dca04324b782f0a7e733336648dfd8c610d16ea0d1e05db8396ccc9a3e7434852dbae0302047c435bb500663064023050f5da8dc1b901c3d7ad069a549d40297ab86d5a8130f7f6b7ab478b62d82f8b588d6f93917b2d593031959a34a3871302306db5238d8849067e76c0c0ccb8c3053e2a7bf42df9903e39faf6cdbec78b548d2597913d471790687eda8cccb13015a20302047c435bb500683066023100d9ea636f262dd3b36e721847b852a7979131aeb08d9f517d5369fa0a1381b60e443ce4a791d3d2d12774d7ede714fcce0231008bc5f3671353a63235167cbae866aa23debde82a59bd5e80c1ef9e32ac34fedc7ddcd94efacc049da7f9298eea8eb2f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310094d68159cc89a86c49d0bca2549ac3897502ca2960ab98f7cacf5fcd80acd3f48a0c64a3c01561344c443296894aecf00230757e91bfe9656e7ad8f85c2a2469995eff331b24ef993195bb3ccad2c35be4368e096d356aecf793a54229e1b24a95000302047c435bb500663064023074417cfbb56895ff3120397f9987d53dc395872c588715c05d3e2361c61a393de46b742846854acd528ab004b5baf06102305605d2a7a271dbd51301a3316cb3e50720cc4e53f196f231b6e3922ac50ccc9bdab5194b837c923f240267feb89e7a560302047c435bb500663064023071f775292d2070ecb4ae258d29ef3c4935fd33522c0b5c813f2ef8190afeba1d24a01d7d17cad2480f8de321d2227cb202304261c62804aef50b61f570df0a44b4c2c4eddcc78739e4da7018fd5e6485ea601639d35a053279213e4cf93a76443d950302047c435bb500673065023100d6bba178c9455313f1a952e6228a2d6300a3151b29571e7484981d4d13d9b5b168da9c70e86d6f2154175bd3d84e00e6023044c26fed7bae842eaeb7da548ffb430e032f4a8b169c0ce6a9c4670795d0bcc8addcb5f2c4dc58f22ab3027202806a620302047c435bb500673065023100870a0418af0e27d23da3d79ad6ced87b60a99360e4fa1272da677cae56ef77a692b6104dc685bb7c6e475ddf5d4db499023005ff11abb3df0353ee5b9af1e26d51766e1728dd9305e546dc777e4ba2cc79b3a920ce5a3d458a598be7bb8d4a8472730302047c435bb500673065023043b7becdc5f58c683910dfbe15c3340562286bbea46a5f8c0fbc7d7cca5547cebc2a3dbddab9fb73ad9ea94ee40df168023100bde9deaa18400a2f9fc06f110c384342303623e96f4b7409492406e08ffbe3328490fb6ae01de600ba0e116af42757150302047c435bb500673065023100e158c381b6f1bd6ad64d7cc9e235eec86f5d46f50375c4f890ab7679291d09087b053710959b5397fb765590bd11909702307f5ff3874dea64abba8fc74c893fed6fe57642a209ff361de3b3108865defa9e93943b55367913485341770ecb9113da0302047c435bb500663064023027197b060f1b62a51f1f9afdf622bf1ae594452975dbc30316922b1c3264cba8ccedf996603f78ecb0e9df3f9dee9b46023043af2e7a82741ec4e73c5c4894a03b899e5371c41726f6d198cc2f9100426ae430cfd4dd8fcda8120d62447f25ee1d220302047c435bb500673065023100a39ee67d4964aa80f7b57b0acd2d80906c439ddac079fd3ca43e64b962342eb8043132b2baa5bc87656d82d5b6e0789e023018b45aeaf7006e167fe72053526ba9f375bd28bce7cec52fde9e5873626ab41576f21b67d9bcc570abffb00f0721ebfd0302047c435bb50066306402303c4cbd700365ffb2fadf7ffca9ba88513255dcb70e807bafbede851d29955d18f1dc890b5631689be02f17970e2d80c002307a04ff9f8e86f64baec909266135c1f4a1a8788ceac54d13cf7b05db6dd6e81088299d1b2ba9f52af5272128f3c864500302047c435bb5006830660231008fb82ea6bdf2305804b576b9e5b3cdbb35d5b3c7be47e3ec1ff97b74ad89ae6c58fc8f21f9ffd624f95fde490c7eeb6c023100f7d04838083314ca8f7b048e03bb95c53c8dd049806f4e166725ed267669102498d25ba23a9b3b5c5407aea20e6e46570302047c435bb50067306502306ee18fbc5140a19e8fd163047b2327c1fe9c435cff514c7bca3fe706f9862f106098b70ff3eb03de753016ad24e1c3d0023100a964ddf675e2f51caa80e70405e15d0919bcfd98ba17873224b05179670d02c6849aef55be4b8778827b0d4b8c9b2be30302047c435bb5006730650230149305a140baf3298e2ba1b00bbcae1a22ae9942fa486f7335f849b4a8470a089d3abfc41d412a43e784ec8bb0a18b22023100eaf50b643b183929adb2bdb12b1d4be4998e77c13f22679bae50ee161a6ec3cfa5d6e1e579d09c2402fc3d6a1efbd3360302047c435bb5006630640230105ead0a69c64a7bdc78cb638140607b5a9a09fbe473e4350bb4568d60d537100777c3e062143234a9f610fe53392fed02307efeec7d01db5b672f2349b56db4b9ea9efc46a08ece3f94185c502e638693de26eee9f92a9cb6d3c12d80a0bcd54ced0302047c435bb500683066023100bc482bafa8144dd82fc8a3eab30994ba81f0c2e6cb3405d86069d2707f05d1505293ec3f4df44156c8f462b1ac4ebf13023100f7adc78968e6435246dab494308915efe872e3cdf4db464494e3b3377d29680a824aa74343ae4911e9e692c6c6918ab80302047c435bb50066306402305dcdca07b6603fcfcd621c4b75a905983f3901ed8b7ccbcee3d0fc831e603b91245698d1adf35bb0fa8237e23df6e07402304e95ce57eb6d24f56f73e879443f8defc288d4b80b0a20ee5043b3698264c48f03df405a28a7a310989e4a0a1f282faa0302047c435bb500683066023100ecaf00677e09128c5d560d54d8a51e5e11f3dabdb25f70f13f284a3e997c0d6ee78a1c5721ad67575fece1e2215ca486023100c8a65f8c07dfb8a0ee0d6dc27966f1528a4f45d808c10459abbc7150000ee55ba61575cefb50c0a405383159ad1977da0302047c435bb5006730650231009e46ca539558ad4005de84eb64a0b5155672022a8a080686c26ee550afc329d06db1aca10d43903e8e5e94447c47e364023049ab21cd5a8a8661c26259c5340b82f686126a82853b740e0ab4c235f8b808c82f1fdd4100e0a2adb7560a79d6d8118d0302047c435bb50065306302303112f4e518b97ee3902bc0d74b0f90bfac4c1b5890d79bd54ffb51031ca962cd64b3a166eeb2f5d249402a528e9af773022f5693e0eb04e6e1cdec4ca8c05a28da0e168d449408723d17727a084ad3369db60c86b39db67cf357db881959c2f3f50302047c435bb500673065023100d4f5cb6bd136a64aa61fed4b5b86cb1edcc7562b05c03c5f63a7cdea8e56c475ef12efd3681f9c6547c1cc06971aaed9023044ddaa605b378c958ae36d853752a67238fe45e6bb2d72e79f2e71b5e5e280bee635acc6f3390bafea99e1d932b205ff0302047c435bb50066306402304ba758284618eb5d5f625949caf34a05c6925b667d448bcc36cdd5ef7c8de25bb680213a7d8930f60db7ad19ad05801b0230452757a4d859d88fcb76c0b3c54a2fb20bf3c54217b924ce177a9149fd8a51299b98186ae013fda96cc94c1d401183c00302047c435bb50067306502306d24780906459bc5f2bdb9559ecd2e4fc028bd7138de5e5d5d6d2af6527d63cf588b4ec35ceb98815905cd9c644466e30231008868c13b7d6b59d350cb637c381f3238a38bc3f0d98f1004ec772471033aa2a687fee2d9e5c211f6e3c49cccff258a0c0302047c435bb50067306502310080205038a0f5f6b67a7b218cd273864f308e28dea15b2be2d569518ab5ec22d62284a0c132d309e4ea8e6ce4c508559202300e49812f5c088dd4c4022eeeca036e8a141449bb167451d013dca33ee828082e7686965c38b22bc42a3cffb2c3f3c32e0302047c435bb500673065023100b681f90822372923fbf5989d5936852141bf8db03db1d89bb537ffc54f1ae4186271d9a32dc871b985e28280087c1f9f0230056bc959d851b5d801ba6f3e0971d279cd8c159886d84fc33bafa77bc2c872ff88b0b7d6ba57830ea5b61518fb074abe0302047c435bb500683066023100bb6521e7073f7894fc85f49de1245f8f8d3d9287e92808c51081cbfdee07e8f2edb94149ca90e7bb23390a63219543d1023100b8f1dad3cd9c1a18a3d5bf254dad61ee96330e3710ff04f56b2a1e3e3e2b3a3e4f0c3ec0cf446e6e3c06719d26a9f2f90302047c435bb5006630640230449a59c99d4093deaf75ff8573107ad255e1f91e3711b286284f356953f93a43b5caaec26df6dee6420c408d363c12ea02302c2e789ae209153bfc6331b30cc57cc14d3b0d50d33770d7085e0797f4b3f321b5c46597b2257310a556bde21eb479590302047c435bb500673065023100930f0b72eb470cccef6901e3ddba03920a834ba0aa9c2c3854ff00a6082036b5b0e80a37d9e69375212736a29f5dd3c60230097e2e9983d8d395c40955bc19aa5f1fab37658dfa4eb7843398229c76a2c002df6f75d44eb877edda378c2eddb54ed40302047c435bb500673065023100d947127991ded1b7f3df4b08188755d079246fcd87b72274586c105405d915ee6f0e0db111f722b91300bf846c739e04023000ef04241fc419d166bf605851716f608993a3138c2aafc473dda24130620d5afa93a97af543944a01e380d4d94738dd0302047c435bb500683066023100bb79577901f67d96c8d679f3a560522579415104413e0025c5beded1026f36b6636faca66d708dbb04898db9311dc0a6023100b844a7a348b4905a2b823a0a378d559718e6be1c139aa62c852ee16faf3ea1a8471c761549b22f190b369b5972195e840302047c435bb500683066023100d466499f4b2686cc56cf9385fed5687a11f148b543116863c08806078df90d2d37e587727490de4b6e04d79e9ef5eb22023100958d9a6a83cda7875639fbf16a7709f242e957807751cff0e4fe064996a03f9f8388e2d702aea95e97edc23f083d57a50302047c435bb50066306402301492346ebabe128a3b93cdf804177148d38848588abff16bc77dbe72bde51971045e05c37f36a9077028747592ddabc8023027346e386b4768a908b0a1697b72fa6b6a8e2f0e3f8b0cb6672fd452563ee62900865ff0b274a8521e962d269e6386120302047c435bb500683066023100f34258243a12c7c1818b170510fbb768f380cdc7570f54b5cb6d40ceb20afa5930d7abe9eca3c9af8ce05c49efcedccd02310093be9a65219b7844715fa37dba98059ec46ab9f5d116d3754c5039d475e47807acd9a1bbb8cec07c5025242c6ea2b97d0302047c435bb500673065023075954a4c3b92a6409067a07cdc35e11991adbbbdcb1f439652625a09da1c04bab7f91323dca92733793b1e4565ba41d1023100b86d7f844c86d69332ffd7793b138e6afe1be07ab5ac388e2a6ddba7d79398a46a94efd15c73450874b95d79bf1659ed0302047c435bb500673065023100d81b1140217264827af24bc938b2346454c331de7b983247d2f3e304fc5582a019b594b49e1ffd1a46222186425fe0930230427959ba3b83305a4901bd2985ab02069cce98446b0d61630f7f43ae3d81ef7b90f2e93b37da5291d31ce29b49d0842e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306f7e1aea3512a6c1ea9b41d45216f2dc32cb434fd26cf8759bfe22b04942da926c81248238cd0ae91c1b74ef6c073b4b023100db3670e8c497152bda6c60178f035ac1c158699774c60dd506a452ff52fe4afc2bc2b8de11b26f1ff7a4e8a87692d5620302047c435bb500683066023100f4c054a948cc2e246793dd0678f1259c298ee52c15f942b5bcbd9f0d9e781061bf231a949c5c15e78f4f0d8fd7624ab1023100e062e82083a5161b396919c16b38c6f417cfbe9652c8c85e83480c2bebed93340fc236b6a36cd564a68a811551687ba20302047c435bb50067306502305e0202c6885f9b151cd8105f9862ded418f89e39a2f7914ef16d484b8d297dccae1492bf846e16695c1e9ab99d106feb023100852ee7044b357c73c3664ceecc07d92d90dc21630c61616b30d9abd70de62dc70d616edeedc1c1ca0a7a32751088798d0302047c435bb500673065023100f044f89a02e87fcd1efefbba5b82d9f291944a1dbdf6774011f32355e2fe9908a6fb58c9e264cd12d806d8ac9ab80c1a023006bef3cd52acf370fc9425878f585b32fea44b5d4b30ba185230e70f95f75e77cdb7a07785348706725abd80e1e591a30302047c435bb500683066023100c7fcdc89dcb25c3ed1914053d57b7b801f421417d82852939e302def6d7fe4c08c01493bba303509f982738343a73ff5023100a827c688589f2e032fdcef885cdacb2f8136d73667eb54d2b78727f120a739031ebe3069bb81b21d1090afe1972090270302047c435bb500683066023100b08c39a98a15fd3b4cf026937889ef11650483e6202abe59efacf7f945a7207021750e6d1bd6915ab043d4548f50ad93023100ab7103371835c6ea26293fc0c2fe24a6ddfa6a6901afb79767cfd73fe1bf20ec7269a16efe1118be2e8c386627f0b8760302047c435bb500683066023100f567602eda8830227123e01c9e8fece2b59b93648f43221a2b0fedd9503821c6a7659c098c79710dc05749bbeda845fd023100b9901ce83285fe28d39f79139917fcd4b04afc720b5dbd988d985f08db66ac8ec17fceadb7b50c058a9b6b1d93e413390302047c435bb500673065023100c31a12f2f2e1c7d9de323eff4495d56da527f27730c88f23692c5f0a178fc7ba05c292e14b3c12838202138bb813357302303dff8d6df5cf1f806638e219a59898a86c8a4d985a7cc1b40952c3c59a67b5cbf00d2911687f8653c457c759434ae92c0302047c435bb500683066023100d9c00811eb3652fbb68e5c9da709e48c0e86492fb327de0825293340e5c4e1e9cff80b0e3b631ff16a4a7a48fc71b1ef023100cf2970b5e259eee1123e7ef16b0a2fd42bd6305af9b19d115287d0b307fb6b19c3c868977690e38d6b49888580aea8010302047c435bb500673065023066e7766240de7bfcf506d650d73d295e8d58fe0f466d3469b8c060e84fca2d286ac9b1438574f18acf926146dbb2422b023100d4738f0ed27891068fde0a6cf24a35f03650b7bca1be150e0f7b43ecbe2f27dd1465e524d4a4fb93ce0921c69882c6ff0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b5f3cadc2b6da3da14f4d08a292f54c754eb7fd082db8e7567c4f4520fab4cb7e9022364314e8bda6eb056cc05b3c59f023100bc989f33590e1c2c1c628f16b01467521ac298fc6cfe8370bb05253d472d74f717594c617c44431090ae464bec468ee90302047c435bb500673065023100f04c1fcab8eca525c17d3573fc6c2369564921c677ada0c5a824ed6591d71db8e660dfc60ac12d38127049d47e82f9b402306becf20e3ecc838acecdc3b9b46497789436525ca86250f6651d756c737caf9cc4c432175c3aff6fdd49f568e38629510302047c435bb50066306402305335b5f437545425737476f40eb5f8290afc45eae1e7122b22ab3407432bc52b932cccccb5210b152a94032f1854fe4502302c1f4a1932dcfa005e368d7c5976623d6b29bb65f487eb5bc7da9c3868e46ad824a016f15b6f9c48d726710fef367ee20302047c435bb50068306602310095812ddfe1422f7255a09a235c9e4b40d448e5590c1439591277787e5e502ea37e2c87e73fbebc4eb448770cbcc3636d023100ed244c4d86c61b180d044c15fa94c8bdb1948b676b9550e898adf08a4a7b7b95b6627e3a56fdc0db58d1f67b2c92cc900302047c435bb500673065023100f078830d20d9acade8c3845366048d32e4cd3d610e00e0f7a7d46e513b59276a59a50ffc50cebcbf32898cd4152381e40230155c55c5eee98f46ad2e5c3a220b156cdb4a51fc04d6fd55b66eb79050266340f1b6beea944010c035dc89b14fff56610302047c435bb500673065023033f1b127485e02d48b6628605a6903ce8c38bf7cd33d75009ee2f0e9d0d12ada25704386bfe6f85ca6f5a5d8e7af83f602310088c0d28b0053ed055319bfac53fad94958f694086951061c9f8c1b8bbc9ad3453fbdbc12dd291b00b85250f1295ecb490302047c435bb50067306502306e465d0e3363500a598eaefdece01a8dfa9a4e829e5598437729ca4b0b77f94f3bd9c737cb00b231ecfe7761c792424e023100c8ac2e5200ec28b5c1c3ad6b8dd3eeaa272ded313e16029a0663464419bbc57abfbe1564b421e2e4a48cc58d9db9ce600302047c435bb500673065023024c303e66687121c3a1225f1d13eb645f3348bfa245a2a351ed4518526062721d3cc646afc9f9f7f4a5d51dd1f3eed400231008046d593ca91896fcfb862ae728756b3990007e24c1926e5ff3472a397916d91862e621e033948fbf4ec5e8c0a73cd6d0302047c435bb500673065023100f6e1ce8f53722173da51d68e9b91cb41115389b9bdd95a7d655953d141174508398dc1a415f841e8d5470c135004274f02305a0772de3efbb7098c35563c22a81f3e38e97295bc4a6f3acc4019cbe6d1c15134e659540a687bf9c0bbae9cac578d360302047c435bb500663064023043bcc2309ef8139ff8468ee185c3fe9bc75dd51592366653994504660aadbb4c5f102ad4512b04f795ed4103bb4bd4eb02303e891f6ff97fef7beb7d49c40de47102fb7c3b862862d735fc38cb0e7ae1607e64dddc4bb46e03a3e8448c45403eafa70302047c435bb500683066023100f0efd7b056f6c3f97168b2f2ad0584f948ad55c00adbcb286b3ebedd7e4e059e03b374a9f2621d31e89725e8d0922d25023100e451f664321071f7382aa8ba66d5419f7b15a5882a12702649dd6a25a5e12dd54c7760d2ae1498ddf0500d2f0370e14f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300ea318deb89f76dbb5e01fd13f63b9b882dd66c5f2137de90255c41c644c02febf76fadba0286b1ca27ab207fbb0185b023100c4769e3c2cbf948b238a8f6ba6bdcc3349e5a7c66dcea52a0e28d7aee133c8ce7269f1ae7765a6e553f3b965dc34406d0302047c435bb500663064023007b93a90d047b246d60361fe12e6b6239b9d2f64c7e32350abf89d3c4050de1c9b5b99f799f9b414cabbd7071d3daa9c02307345f1e56e08fa46a12d548df4f32308b793c83df55f4e99eb14c492e9cb5d4e2797d8c617ae0afecd4686a0e25b00480302047c435bb500683066023100a770463b54d04b1c41c7a58cca452c3026d3b2dc476c7f6f6749e2c033a3a89e6ea82eebe08202836917072112b50b89023100cb50f6a00cf0ff5f92a1f3eb3e72fb236a60675a26c5460ea3a933a6df9671051c79ce9f8eb704ee09dfeea713b180ec0302047c435bb5006630640230365a57c382232adcbf98c73f8be370647030c41b7c3238c93418905a90b756a0f9945f7e12c141503ecc878d2fdc069d02306435e4fb6379f6f0bef911ea2ecc866494c1176f90f368c9e1f0ab61a7afe2f6be9ba7056960aa3a1f04e5a5b0df79de0302047c435bb500673065023100ce88e4659da106b6458e532b405e7a46ceff22bfcf4262463db5da7b70a0c16cab00a1cefb9e1f79d334cf149c3d41f402300b5bacc8ee8c0640bdd391bf724eaf93e4166eb46d2b2d1ebc3ca16a9304c80ae05e6c9125d30f5985acc4032631379d0302047c435bb50067306502303ecaf4dca84dcabf42fff8326e6ad1a1e56791a45d27eb6c2abc56f4de2d3b583b676cd53ed6655fce51a78a15a93981023100e99f148647c511d145bed4133e3e0427aa5a6ef0b187945f5c0283edefff5d5a975533fc6a0ef5a7880497c6f1ec7c130302047c435bb500663064023028bc558924e9a2c6afddbaab0462c0e1dae61decc8a6acfd812e6a8f0dcd5e62551e1a208f4d378629310219bb3918a002306b6f0e20fae9ffe9b91f9b6600c6b4def6f7ac72d31cc77c8e76a325c1bc0c60bd63a6bb2484a3c5b4706d1205e0d6780302047c435bb50067306502301d299928a7f9bd6b4f8d74044256fe342ea0896090963c12c6eb50d44899fbc417a975c6a90462ec842279407059ea6e023100b70b7bb7ebd53a6c6014c96c01ddd70c249867b6c7009f4e87f16152facd927af0acd8f091e65ee87fc3adb1adb09c1b0302047c435bb500673065023100f6179f15e89d85b56b28302e7c196445409e7ac9a044f16bf48b4f7bc4de46a85bf2acb3f2e0daed3cd7df2e16ca7cbc0230325a4bbdc7a52643bb2816ae32f5f16e1c177dac72a52bd6340f549b031007450690f01a5399996e448ca1f15132026c0302047c435bb500683066023100e08fb6083649e687ac397599f7a3d899adcacd105c9c48d95af5320c36624cbca73a5cab64f3704c3563c8e1bc6543230231009b26cfaa02b5c5b33fcb4a75f00a26ffca4f2ba550bad2416740d21f7d1513acdc24eb9bbe7799dffb85e5b0483a153d0302047c435bb5006630640230250ca4c19b40241bd3549c14a594b603caa5a3953a617616d6ddc18198c3154dbeff9d9fc2cbfd9519b4cc81216ef0f5023060e36b6f3824494d1273a2b8faa8eadbe4473367c64312048396d5e61d8d22fc8a6c20bd407ff7b2c6a5ed94bf8190950302047c435bb5006730650230024c60159b19ed761ded7025470a9a885d645d13b27fb2a8c015285f6087d891dd40010d20495c4a427f53247394f519023100e77a5ff07eeff28830e1209614ee61c5f140174f3b2fd793fcff76f2d654e5821c327177298bd1a83083d48f87d2c4100302047c435bb500673065023100de7e989d2f67a308100a267c960331027f94dc08ef914d6baa9582e38bcbd0924a4d095606823c45d6336f6920f2354302305a0877d7d7271fa0ff17da66ea5d48c44da6f9fe23d3566936b58a73fa574839c30e51965a740ceb0691eb60469448ba0302047c435bb500673065023100ef7470435c80e45758fc0d431d95b19162c4953333b0ca7779cd590e9b2fd63731d5e4feb3225a0759eeebbd536465710230023ab31dd8006afc7b411c90153060c073cbf6f4efdfd62f1469c7bb7550a591a2c17157fd535d53ceb18f8ff72ed67b0302047c435bb500673065023010d1d2d58f1cd35ea7f771aa2ac46b857501d975fe8ef221490a7f2a738cc171fd3c3e52214c48055cf12bce893bb1d8023100d6375bbc25284c5f9bcdf203c01f19640ef4759b558d6e90aaaaea4532c6701520840c9cd95e3d5ba7c7c817ed7debb10302047c435bb50068306602310082295e7b7c88b277d1b328ca5351d7c451dcd26fe58230e0800268dca4bd6c4a3dd3393057fb155dc05749470fabd721023100f908312f895bc4d1125a3eaf1fc1a3b510f5b506e7ee1adf8f21062127744edc372046250e9ae39580e9a09927db912b0302047c435bb5006830660231008b9d158df1e87ac04171b807f38f88175ed616fd178cef054794997f3d83468252077213b45dbd28dea7514e8370928b023100c68889958d040be69cf398af784728ecb34a629e6bcac90486ec0f7f0a3f06c7108af7aafa5954d1140384f3f0d869960302047c435bb50066306402305e6f19e085cbb331d40fa0cf16e061aa3465c1622173966c69b7086522153f6e870cd82c1ce7839f994a7e0114f967b202307982a65ff543fb54f47f35aef4d3fd40aa0b008978ddf658644687665620c8c3dde9c91b0f954b64fde8ca360bb5b92b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff5c9363c18eada00f64bc32b34e77e37164bdeb8cb3ab70106e8d7c289def782e46cbcd871d32ff0490cbbb25e55cba023051626a587e18d64b36a3138545d060cac80b7b3419d7eb19fbb3811398af4ea13e16d095369df6b13c64c3c79a8459d70302047c435bb50066306402300180887b24db7a087335e753af8f9e5977da5732127453afd992025b3d8b2e02a3bc91414787bd303d31f7758000719e0230041f060ac4d53193b9cef1f54492d0b0707bb89cc3f70bce23b09a10ea7d15c58f1269b8b89f4442d99ce3ad1ffdbd410302047c435bb500663064023031be7e6ef8bb3dd19a34dc12d76b69d922dd822977919ce50dcc90116ac531b50cb122f8d4333db198b5849101379e49023064bf54c0416341d1b8d5e39a261d8b08a3b798e83a8cb182d1da6f3d04b0401b0510ad2aab78848bfbb65ab972cbcaa70302047c435bb500673065023100eb259928198be6a29efb875ea0c2876146b829ed615bffb314c2e6f7d050b132cabc211ea15118b48ad4b63f6ab4741802304ec5b2831a80cdf04383418dea702cf43832a5e4a959405ee89979591450450f63b0fdce2890f4348b6f38ced3bd88d40302047c435bb500683066023100a96ba7871193bb8290d65c22e0b994a78062a9ee31cd477c437c6b1a46170535d08f2670b0bda3889f42610e78d7e381023100ab35db95eb29f7ca5ce2581027cbcc3913d630fd4d7efe7e86d60dc40f9b945785417e92cefb67fe4a95bacd1d97ddee0302047c435bb50067306502306a05864ba3b5a2c85bc1fcfcb84d11468fcaad88c07947daa907c2962a83fb9487d878b664076446a98fb572dc2ac42e023100ad8627e93d0b60d7978d3d65d681e5b2d30e1164f936167364dd2100d5789e9bd8371eb674b9616e902badb592092bc00302047c435bb500683066023100d8227842c81dedacf03d193085c6c5aa37f25d44c5a39f332c72fbc6f531d9013b8484aae0162ed99148cb7ca1ed87ab023100a36d90821e8abcaa40881992f00d80743e671fc96e69f0b52c5997f99020b390721df04a7bee3f3b906796003b6d88370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cce5d3298510bd125b0e37bcac29bfc250ebe0851b8554c9cba27ae2208d8488fe7ae627a07c96153ca50f8439926d690230563ec4cbffa5b5d55f794ac179116ae5ecc7775a7fb877b5dfd5ea95504354ecd5a4c4593217abdeb34508d0ee42981f0302047c435bb500673065023043e2e27a2afbe37e69a6dbe45fab2d3ca47a0461aacd86cb59ba0b61f576f845c6f6f5ca4164fe04579a05546db0ac7202310090e784b64375b72cd6c3c341535b3b12337c919fe48f839a835c92e0f9c83441ac03fb8e7b9971e2888d31dfee973cba0302047c435bb50067306502305de9e92a4fa66b59e27d02a807107d6a2c3b3a7988c209f57c3c2a15ed8495da7406712b20b21ebbd38fc54a20bc8457023100f6c95a0e06cf928d463490684fab59e5602ebe99e923092e0a3b34708244d2bd7e570edf76c3650b4cba621bfa89170e0302047c435bb500673065023100eb9d339d87925f48f8ed2b391845174fedb2e48e5cf04b467e6bf721239f632fc0c8701f2b83435733e9fdd4c0079dcb023074deb7f3bd180205527c597256eb5399de9d16312f3652fa19a583597ca43bfd47841b6f243a0556a4a0f1cf8d939d420302047c435bb500673065023100f8b2b45d897fe1d7a9e6029a78a8cbaca3549be9b8914ed6ec42f9f88991e9f9c11fe1e528cd96c3066b45e8003bb45d0230316334a49b5ad3baa4143afffb5928acb112cd1344d9d0060c6ce33f515ecf8799a96613ef45312435a6b328cbbca7c60302047c435bb500683066023100eacce5c5c1aedd4feddd885ab330509e53d67eeabaa53dfdc84ba746ebc3aa7ecf99f10bf249321bef1c68d22b221990023100aaf82ac51de667796dcd1470c673e7f0b3e625d7e8b8dd11c68e456f9ec075ea280dc54ca28cec1bf21548aa01d83bb20302047c435bb500673065023100b88c4cd90f473be7e5068d0dce5b378b1f69f4954cde7294c89cd9b0b2c56408b9758a5a3f693c63c21c0caecdf9a85b023012188f4b5c42a51c075ddf19c7cf833a8cf6979b86a53efc6144e9468f74b98283390fbf01738dcf7fce072e97f205e90302047c435bb500673065023100cc0686ff9cb3126055a89ffb7bef5b57415d9ae0e6bb2a5f647a3b0685956f9d8e4eb6b25ac7d212e8f1cf426aa496c302301fcba5f33cfe0d83587976146e8187879c954270f75da9fce27b85d7a525179d14ffca125208774f4bb5e9faeca8ce0c0302047c435bb500673065023100afaae7217c15c369100c9e78d1e4eb3c1c7c27a892775ef007b412232ef582c23e881dc629f2e4df5f620036355fd24d0230751e14cf98a027b618691b3f2d20485f8f1c6f3aa7f09d863c528a9251f3d1b120d686b071e6639ad1c028e7d79ed2e40302047c435bb50066306402305359690a03982f175b70044f579f8fa827884d67aa4c2106129e3fca6ed517481b6539c99378a27babb9fe69a0dd0862023055c546bfa6712d5f1cafc60e81108d237cf884978d4e113edd1f2ed94c3d94b473ce5a634ee79f3936a0ca6fceebde690302047c435bb500683066023100cec4791e110d2a6c5e9197b37cbddf6dbb28bf8e75dcb5268d3dce019cb4bbac8a4ae460b64a663432c4c9bd27f64878023100cf173538567d0e4d4a8adad2ea11cb7e76774fe294fb4e7fc54d4f6f6e79f72f5abcd286b8636af06a4d37ea393e72340302047c435bb500673065023100d83c63679700d5ea62f2ef3827596102ce49f27174b77ada1220536fb5d5d3e9186e2ed9bab9f93e94a770927afdb647023011de1ea52fa7e734a6f072bdd4f5e30cf4201619c8a4c273651f3d8ebd2ff5bdb519d447989527eae16ab4d353308dbb0302047c435bb50067306502306a49f43c20e7dd430aa8b0614d9debf2ce7a875fe63df5312525e5206fa61f4e1d25feac17eb52689fa91681c5d3e3e8023100865fc8068b3722f978e73c3b97058ebefb1d36c18305f3497a8475d3514cfa0fefaf7581b66ae09499bf4b4dd0ab3a750302047c435bb50067306502303975fe90a6ce2b6ffc7fdb5168c3e68dc51db4a82939e08e39b51c266035f1bff6384cd6783c0a2e5861ee6ddee4755d0231009c82c559c134493c0be9c4ade6bb03908f98bf1736cd93d26fe98b1b83f216af8a21341edaedc9ad38b9b56b687d33e30302047c435bb500673065023100ca138614f8b8ab635cedbc9fd49255bc71788ef3df213794df7d8098162530b0678279742402deaf1be4bfef709a8f9602300abed0e6f037a48cc33f6c3c6fdd6a61d09fda2c1aef33b1eea6cc35ab4039dd1ee4817314de8912c21eab06607e37a40302047c435bb5006630640230589c73574db688dd7236b048a67c28ab773ef52682a7386d5a9ca0509194447416fcad041fa6e12ab0b01b468c76e501023072a37b0f367451e2f574cc7f141d209c34f9a0faff791ab8f4c84d3c19c3a6dbebc1efe6a5b3dc9feb0636c9db6e9b110302047c435bb50067306502301dbe1b7bb4a3bb17517f4c6a6d15adeda53856ccce89056bf1df694ea3af28abb6b1683edf99815e98896ea65fd8dd6c023100b74d56781fb96765a2a92a24487564e1c97aaed194064c91227630210710eac3a7f3686e21da98b0d607e14d7041886b0302047c435bb500683066023100a3dd9e56b7dc23f8872531d4b29d97fc368fcf936d716ab6aec8d4e602a774845089110f02db7ae7eeebbc626e61002d023100d8cfe5b2d1da5fcf7c0ec052495ed1fdb8d2034cf18f9edce46059bd08289bb03c803107cf3a55fa483437ec944807870302047c435bb500663064023065bfcd6ce08324aa8c11df7a7dbaf26f55526ad4dab5b85ab3ccb4990c18a22a1e3f56afdc6b14e0c3341c14522a767002306260d96cb8f7ec85bd2e6b0b71e7e321dad2e86013b1570dd29346b588e7cdaa9601e77891ff63dbe56b338ffd30e1240302047c435bb500673065023070ee4c337b277b1448f1154ec2cd75f33017e687cf8decae626b772cdb87df1b35d865cb368a5b37f7acd01e222d3bc0023100c615dcb7b525afcfc3fb883eff23c267d9a4747ba07d0b3ac394630fb0bf140c00d6ae56aa81cece03f2c9a30eb6c5f10302047c435bb500673065023100ee2c4d77826a2351ebfa8cab0d10225fe43e39e2ea7bda9987289ba0e154bd035c58756e01c0b728cf2f0a06a8612fc3023039e4bc0e4fefd505ff097620bbc9512310041642a9b6e66e972b4064de38ed8925ff11533856beada88d6795be317fa00302047c435bb500683066023100eaa2e86abb93c835491b9f6180d4647a5d890bafe6e5e1324bff8064f08a2450e0001d0f0fb33c7cbd68dca0f20513e1023100b17ea3cbbfc0ef25a73d9a8743535a1d4adb870d84f65a0ddf7ae81bff109ef04980c7e638ab49dbe7103df0d0050d950302047c435bb500673065023100bdc87935f3c2ef9c8457996ba1e41f98a40dafe04d5856a91ab8a3bca4870cdeb34f25c8340414317d273d985b45f3be0230747b0145c97c6cb793851a9c88ea52b2868369f9253f19ddddca2aac220f409090d6c6b0ca1c73f33785e0e34082abdd0302047c435bb500683066023100a8bfcf475ab89c581ceda76de6b503b9f6cb05bbfd81f7614cbb5956be5c1321a20fbd4bad87608da8f8b97afb910bcc023100d78b82d83845a93fb17040a2ab8716287134ae909f7af7b8a9a053311fb16e41b454205096704ba65e7492ba5125e3150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008e55d715718d8f1e8b85f2f8f9b5e73d38621bc3e2676884a122d9f125aee0ef502eb2329bf15f8452ac966703e09321023069f3cd2f85ceaf940deb33ae9051a078de031293aee57541ccb25b4ebdc9cb83a4b9caa76f56a88522276eee10eb66e50302047c435bb500663064023032e09f1bad7d5542a8992de527ed727906f92fb0e0be60b7cb515ffb24e1f7d1b7f760e4a3bd6d6be3e7aac3d4771cad023044438bf2d4ee84b5f72ccdb5349ce0ed602382ad8e776528fde11828038c3338dd8b6171424de7aec7f5a4ee5b8b24a10302047c435bb5006630640230633bc3cdb389b9c4b65597b7b15af94d4c19ed0576591e2cdfb89cac8ae53d4b11bd17cb3450df09c67edba53b89943902307055b661f574433c73c189e36c96f9efaaafba72062bb1017d5060c5e65066f107d0333102878c3074875ce64a6f46d00302047c435bb50066306402305615399c0ac0eba2e3cc2f56b46d10ba49abd1b7017afe6b5642ef5b80b1b8823fcf40cd0c37a5d24b981240d10fc4d002301b029791ad88170ec14514e8764ad6d770b4de83000e450e497d5d645b14114f4d7f54c1886a3cca706a66651226578a0302047c435bb50066306402300a658e9f19a0d9a7b7738fdc8715146f92c27a3852cb114268412938fb2f0f25001b0cc71ef6bf32de113c5d9763172b02303e18acd0ece9010246d1ebe803b69d453c6d3ed8477e918a79057a1ac668ff0f8cf78764a9b81f9506aeab2b541850ce0302047c435bb500673065023100ccd9aebc415e13b65f060c8ee3d96daa6e8229b866cd2a0632efe75961bcfaff6b28688169513d101572cffc0f900161023018a3f3600aa827f8f217b5930d72fd002cd5060f0534b20c75565a03f24aac937b61af82536cf769cc85fc54739312720302047c435bb500673065023100be61c90882161a6025c1b1830482c3fe7840043f3fa546a08386804be7b59464cc265c4c1c1474d44f49c0f9c18cd1f802301b6a7f06a28532886cd38015c9fb2b1136ebeb53a5f1ade4e44c3e0f6e3f4a59e8f79e678c6e26f5d9fb79ecf93efdfe0302047c435bb500683066023100989c453c9f14214e00e31af8304d0a91984c51de1ca8b2fcf7361b65e7a8455829f37cb80c244102b6c1f51551801ce902310093b32dbf553824281fc43c92a251a6160d0b120327d1f68f467143850d14797fd5e42e65ceef66a56ef2c266754dc9060302047c435bb5006630640230781cfb79ea9df7194be860457048a72f2aa75b948d94901decb67e415a6d2c483425627571488dcabd23095b6388fbb5023024952ea9b58a4a49997253553234e69f348f4c136b6c5ce602075450c477bb0fc71655d4bd261a937a83c8eb6ba13f200302047c435bb50066306402300a48e1313e7d2dc23a321df8dcc21d600afb9c545d4e630f8bf7f6f2da4f0b3d7a80034700426665ad2cacbb045731eb02302de296bebbf873e358abe938c95d23967b5aabeca7be104b9223c321fa5c5160fca514988f70cc9ae73cf8f78117b7fd0302047c435bb500673065023016069940a7cc1286472dceb3e3b27f6b8386f91e91c6fad8b1eb5c8c1de5989eee7d0f277057ed53489a3ae0c1c9909502310096a570a4af2de792f6e7cc724ef7a4f90c2223c2a23db7ed51800cd37af086bf33ee112d16cc3587570a4635a00f5eaa0302047c435bb50067306502300f6bcaa35b4ea08655b36469a5b15cd679a613856f75ed4112d39bac7486de80a68f37c49f81ce1b31545e49761d9558023100eac780ec672163098d587f341356aa4936fd0d483fe74d89b28d39425a2bb55a7ec9593dcec20c59ba4d2e61e228b1610302047c435bb500673065023100c4a22ef2070d004fd322cdfe92488058d32ce634a975e9ad6958c8da4e5768b0a5870d6e6d8cd5baa134913bfc2cab0d02302c9b544c40bbaa1146c1c1c119e6dd058830f90588bdf3e98568866ef92c6f35de389587229b6780892d0b65853d69240302047c435bb500683066023100ffc0acebadb3d74fa38da846455c32c7956d287dde833d46c2dcaeab9f7ba70267148a6945cef7535158ee34cef098800231009a9b17f3fce2f759d3ef2b9cc00f118551b62be52b053a778e53210533db83ff9edbcefe737f39eb9d1396f5e2a5d9a60302047c435bb500663064023035667a108942834a2729bb542b8070ce9716c303ba530f19c9326fb520732a4f8f6752c9d724a03a56e03ccc5a2499ea02303e37af35f817226f7e190c8d1c65fc918c87a168a6acee6f943d0678ffef9619398d0c8f48da2a4b4cd0f263129936400302047c435bb50067306502310090bb88a09badbf550bb6beb79572430e26ce9f3f59e3aba00a6e65daca30a86691ad0f0545d0b3806946fb0887ceb53502305609033bd9e65401250e5215618f30efbd8d3fa4056002eed46ae0eaa76dc5a046fa36bb458e0becd2ad845b1c55f6530302047c435bb50066306402302fe9506148e7085eea6f947e52c12b73902711d93ec88029418b3af1f60b4c76700a968ac66ee00f581b18b9f31ddb0302306edad14075404f7a3d634263362eca139da9a457b95654920d23771d49565855ced9c98a981b151eb8a7ac1634cd8a460302047c435bb500673065023100a95714e06f917def6950e39708efc2859fb0a6d6dfdc7731ef0ed659f9ee6084eb1e5f5141d5e06a319f009865fc67410230085249bf46a49f31e15bccb1569c365b13d03b3a17fcd81d4a3c8c1bb81634f0bf9ceef3fb0fdb3b479f41c4b910f6f40302047c435bb500663064023073af224b95b741dc0498ac93aedc2d87fed0b4623dff90f256a7591d01519c25824baa6ba30b42e9fb23cc3440e37f4102301764d037526f66e300b5d1b616ca4d852c22d13e6a314f13629e332a48ac029b71ebdf075c12408c1d58f1be0b5bd1f00302047c435bb500673065023100edafc718353921ef85e7e62034201912144e14fecaa555add7e708a0fa70feaa5eb7494102209cb6ab8e227c569016130230193db1886e8e438e438a3931536a46e15d817edde9bdb30e31af53b1077cc1906852d535636fd094b9bf640f3b8b65b40302047c435bb500683066023100b0cb711dfa286421fe11324984f44fccda319a5bac37de3b832df76ef70b053df2c7c2e6d3b6fdba4297ecdcf1f6f1480231009a76a6065ed140cb81a10d6953c7e5a5ec41793bc5bbebcc15e018d159c03cbf5d2126d65652ca62e0784edf58e831a50302047c435bb500673065023100a542c083b94ef13eca7c8f19b6788fbc43202f54e7bc04925c482b36ebd3ea783ed878e2b46cf6aeec13c550aa875e1902307507a5c32380f8b3f1b9355fc0d1ae27dd883ab0ceaed1b6e9eb1f4d419636213fbd9d31e18aa1a66875debbdd6189710302047c435bb50067306502301684cb5f8aac0cf4ca554039720dd6dc54b04b1942139445ef20ad53c57b451b14ac8a451405013510976591582a173a02310094582a34b541da6d0917499230b6f5f32c7cfbe8b774b4c6599cabe49584a2d9738cd5e39057e38677ab90ca11d107990302047c435bb50066306402306ea9b94e70235a4c3c2287bf0c6a5cb0387fa50c5a5c6c5e2e2d296e0afd21647d5b8e55e466df602ba6180c19abbe4a023034691221f59300c3421a6229ecb2992d2dc06cbc190f4655d020939fed64dd1083ce8f382e5628a66d17153e3a6345330302047c435bb500673065023057fb182ec8176c27beaa03e6b48a8f372543c06a47000b73298753bd900d4a0e2607786b7f0df8d3e40cf0831e792fd3023100f47a81422ad91b679173e42dd9e71409e39adcbfacf9ae0dfa03402aa0c3886f56dfc2e0ada2cc75c6d482ac7ab2fed20302047c435bb50066306402306b15c90033c51235ddb177dec918bb7864ae4cd0d26ac5d4475692957f0957529ac8033bec290c5c4fd53a8f29285001023033751f12695979cd2b35bc3b2faa17c3e222a1d1466b2594b16b7a39826fa8264072d9e68f5c62e0885520aa471467cd0302047c435bb50067306502310085a94927ff966ec76c5aeea457f2eca3f2cfc284774b31ca6f762888586861dc9398ec19ec1565d9c93f4a8b8638af1002302e1248740527d34b906e90f26d18848232d2d5bcd25530958c6712a406ec70ee4894040e5ceddcc8d23478d3e619e8850302047c435bb500673065023100bd71fee48d3165e56573d7c587adbf45b9b43b521880aa24bfd353c020768a804e4745acbb753b2bb655f675c22ca78702302b341ffb241a9b056b6bc6bb00c0da9a18732724d6b15da9c6e0539236ea7c63d1d1c14e3b3a767523e8f0bd10eaca9a0302047c435bb5006630640230668b6a165b06e8b0dd54645b5cc76b1967b0a743bfa141b6b0f9abce2ca75f7c89daed3060b506febacfc6fbec82cd7002300f97d0dfeff5e1dab23fe314e633d641991c0d0d4db27db570f459f6d1645d78e07d5ed1dfe4600772c0b7e195b5c0220302047c435bb500673065023100d9ae95122f6ca75fbed5d45b773def33189fbc39d202b21dae83571928ac0f32e6f09addeb86f4ba464246e95c1e8cfe023008c742cd039c4e43a1e1e3174a59ac6fcb3115ab40be33bbfd993bc250930d1998b9b6c152e9f542d166b1cd689efca00302047c435bb500683066023100d7b4ddd488aa1f11db76804989e184d00aceab2860871c98421c4323044552bdc590691f0f831d29b20c6963a1f79291023100a83f25924c48226a00522e3938d0bafa8a7f02039ae2b089d003d0edaea3c90009a3d9602d6ceae7847941d625fdb4210302047c435bb500683066023100c5edd52c0d4cf9f7a4208ab01a6237ce5bb661a33efc702f75cb5b87a1290eb67d819a4b6a8e691e78a7dc50c36fbeeb023100a6585e87b08ae71ea26dd459b3516f9b0a542dfe156f5f5b9836449379ec5e47a926859e1e3daed98c662a70c26675d80302047c435bb500673065023031a3534a26c03ec0153518e0ef13fd0d615768e61c01c69ffa91846b9eaf5e5da3721166f57b0aeaf97f5fe2a790c868023100c6e0f10caeaa540aca13c31869ebda114108e5b00ac8d09bc69ec763d6102de725bc787c360a994a5879ad292b632a990302047c435bb500673065023050532a5be57523412b11af5364946155105fb432f5695bf212e3c24d13d15419633b4776b64074b879386b0b814b9d21023100a1033667f121cbb64b6a8e3ffe49bf495341dd916b19b5618f98437f8aa95be3adc14999b3ca6295d7a77396a843968d0302047c435bb50066306402301d16c94429b71f295da4cc2703fd28452d575f7a529b9ab8c9972adf3c63d98f5c17140fc6b5c79dab1606770e51e83f0230537dc07987b1454b24fa4088635488e852e1104ea8fc27451f823cb1034543c49d164e8b81cb6570ab875482ccd2cbda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cada1ee2e7f6eb9b58cdfe87095e6895e71f22425ce9383026c7b6037590e0c3e2b4e5fbb91b3232f1b7c5e9f4912e74023100a42e6cd979b27699b55bf66c997692163ca433dacc8f58fd311529d9199ededc424ca6b091f39b19d30efe8b67658b790302047c435bb500673065023100e6cc0fd8c1642fe139c44d58f7cb6302e2fd4770a273afaf49ee424c46bd51a53f57ba3b2fcf83d11e3a33d4ac4b0cc7023074f5f0daf05b45c2f2b72aa981240fe239c224b4966112edcdb73457732b27375215efe9c6b270665e945506276c9f5c0302047c435bb5006730650230180b0ff4eab90d86b1833d0389733a83ee2a4b215ae194b16ca32c106e6d40dc7770bb61e02bb8909ca8fbc1763cabfd023100a09c5eb06dec6fe32c7d4ca1f06692c63395c73eac9fe84439342de8ba0e00207f68be699b07919454073535062c6b020302047c435bb500663064023007f42f98b291607515b9c0e206133ccffb1bd78bbdd0e656a57b58c6f5a4355ecbe236fec1b3725c889c0397bd96e4cb02300525271376f2b47ae7e0b6e0e98fe06c4e75d9100199ddccc16a6cfaa66cf463445052b9809a7bb53c1d94b0fd6573c60302047c435bb500673065023100f2c68f0cb98f8d0275ae4fbae8610117974d7c9de6cb0020939320f31547d1431cb861ea017711ae834fe0f2ff03157602303a4427d005d1fa52d0fa7021567699938bd71b74c8c3bc42a76572b443dad5199e5fba7ae56ab26f89892c8a1d723abf0302047c435bb5006730650231009555883b9299c82cd8a16a55d2e8a9735debf9ef50649d82f1206ecd1cf1dbaac7a194514f335a5dcc233bc4b62d13290230649d6ad305e787b2c2d2b80781fe8b450ba9bd75ef9c22caa22d8077ec03eb642953bcd1252fbef5f6794b0f893fc0f70302047c435bb500673065023100b5a1429dd4489f2f558b95be8f139751a3e561f237e6fa095192bd3d9f26aabc0c24cfa6d45071f52ae5d705b1b11d0602300ababe2776da87e28b9fdbb073e14d15f42da451df0bc5eae9247e94d311b3a4ea955c89b8295384c7bd42e409fcd9c90302047c435bb5006730650230751965d4a9f096fe7ff13db09204947f68839fc7987baee88cc2e44eef680d7ba27cbbeb824086a5fb6a85606c523880023100d15d10312a417f05a37bc5018483c4b854640504510bfc5de271d9c2ce99b1ff410801d757289529418781ee14118f6d0302047c435bb50067306502302116951df2d34e6684cf5632378eabb6230e95a9f5fede9b3ced600e52b8014f37b88331d92de5035aaaf5a227f26d4e023100e0af52c69c30a55f7e6b2f600ce80a471be34e0911ece171d3ff2b522ce7b22cb8593f62f1b17c5c58a3e2d0fa465d9d0302047c435bb500673065023100cf2864511889bab66108d21ea9cc575fdfa7e957f13bde2744951c023967ae31b203e4d478ad657007d53e41f81572a502300dfc7107a95752f7c6acf19f7a726cb6769629c0b3a89c469e3b6ea563247e91f18e84494bec2aee4a82f519515b2e830302047c435bb500673065023100d346c1766185383e654e1ab41c80973f468facd5c208cf8dc82c1d89e0e6b279afec3b28f729e55832b15c270e050b4902305ea0b26358db00760f741e02d0edbf66cbe4381f81509378087eba03946338371eacae9deab09e3f3b4fc22de67f32fe0302047c435bb500673065023051c4092f75dd7bb580609b25474bc4c612a7bf834b8f6bec90f3783e43fefe0010393a960aba7c6e2be5bfa6a10e823a023100db5ee7af6568a56629f726af594482a87bee9323cd77b9e986a6757aa17d9550636d454913fba7790a9450387346e00e0302047c435bb5006830660231008d5b0106307714d7d79f143248bec6c91185653089a639d8687205fec96a41b6fc62d9dcba6beeec28cc91e70e3ac3c2023100bd289811f442d2ee72e3d1b0961a1e4b0184b9900cde3dbff80fdd44bd155e6e5c98f7413c9431c3d8ca33a658ed6c180302047c435bb500673065023100c9f89b3c1e3ba41b5b7b8af8aa240c36bee37aad8731240e5ddd4516496360c1d254669b81243fd44bd50ea532cbb85302300cdc78814e6afb601b542ace0cdef9fb6a1ffa8b7ee7aa9a866a15c16fbabcd26fd151aec909ec2af6ce0580c65843460302047c435bb500683066023100d5c2098771f454c4af1f0491d2c7960830279d411338b7b5b9602fab8ad1bd47881e863a6b04e4d28adef9ffa411f28c023100cfaca26aa3e8e8f2781f9f386fc5504d42f262718ec1417c4fcad7a6bdcb99c7d35dc37100f200cb27cdf03441b4ecd20302047c435bb500663064023030b531b70a33ed174850553072f45c2aa62c4e829361993ef219989f9c8b43220f8dd366302073ac067c38f7f205dac2023049680fa16a91c0c0fdae5dfb05974825f9d3290aa147e4b323670d91a7447fde7e0e520d0acd407f59afc621eba87cf10302047c435bb50067306502301974761750980849788817c317a54bfba168fe358d8e847c43fc58f2aeb25804106752c57dc1141a808c9c117ce4227b0231008116aa7a2ee2b76f2b0a4735cc83770ef7ec88b5bf54f2b43a6a85e7992eaeca13bb58cce2fed813ed0224fc94d3b36c0302047c435bb50067306502310099c512383f60f68b4f0f0b397252db11d793395ee749db277b1b41ed3cc39c1a166d35246cfebf99ac41670f2e324f740230480d7721e65be014552c49e66dc00c282ee811c00718ee70e19a4865f4a1eabc72f9124556606fe30ce7442c6488ae4e0302047c435bb50066306402307afbbc3059b057ca536e5e656f74cf7e30f85851c286a31e8afecd699606e21a87ba6e504379ecd7fde0bc8430c9dc5b0230308b83145ec339ab9916f1027327eee06bd8592e5de8c7cfa68771d9a4accf34fd6d085de3858ba6065ffc14451faade0302047c435bb5006630640230204e512091c77f0ebf9eb13b503e375ac8b9c18ab07f08901ab50ed22b0e467d8d1e8165271ace26c8a8223e6b44bc8e02301c6546c8a201e79b89d108fcab90b4bb4036e9681f63e75bc4c97d29aef3aa49c8759e4ba94b13cdbcc823b14fc4f7ad0302047c435bb500683066023100ff846bed7c46d49ca8375af4f8ba3fce66f4c060f2800c3b485fc0cc35e3eae211a9044a8520de97121bd11c121439e5023100be5e3325d268ad00658ee77d96790e5e575d2df9e0e983228222a147f5eb980afcd774df536ff6058c5bd257d8d80cca0302047c435bb500663064023050c89e85f5455f5659bca3693717897fda6aaa98c62bc6a07f1fbeb3ae5f7f9d4a6e05fa93a548e80e72a0de82984f15023034897752a752f60221e850c94d597ebdac3e6d6848aecca4ab8b7eeb12997bd4516aabb3084d057b7b9ac27194d2d9560302047c435bb5006630640230069ada328ed3582c51108842f4997866b556ed9d8f9ca13db63a1c74e3aa074a6b0f97b674c1ed9cb812e3f7fdbf01e702301a7eed2fb886ff1562212d331a0c14d5d8bedb5a389651e20da0565abcd2157c69062a83de8e9125bd2694522ee634a70302047c435bb50066306402301d0768a2e6abfbeeaac079f3911de1f9333b2950e1a1dddb66a3ca460b460af1a5c65af089d56cabb013492dcddb69cc0230182108c31f5eacc874474a8bf8952e8348ecdf873e718ef8564e755783a9cd43d88209e674c92d4a5bf2c5e2307313550302047c435bb500673065023100f80f2cf02740a6af9949a0d3832345fae297731cafc73af139dfefe251375b264f22193f1a80367a6443052b88a6c2ff0230527a1133d86109f96310451ba5e0cbb8a209a5b20524ac6d817c0883fb3a9fe38f694a76d5d2e99af00a7c93dc29df270302047c435bb50066306402305fb4645b3992378fbe7905e6d290d9f88c9c34b83e2596b271571d5830e0acd5e9b77f1b7cee7370467862832330479502305a2d9e47610ccb595af7ee52ba86d9989caf728a55fbb1144420cbf2a94f79e638ad3042a4764da70a5bac19c758e5ad0302047c435bb50067306502305083509a34b65075ffa9060fd71848bc8984e737fa4b89cbf63a0e76419116d01020d65604f54a87ae2dc01f0523c179023100ed315cf0d240c5dcbe5e818c578db111d940823a808bd928db6c4e79e1335122c9daf22e8275852d482f1bae55e026360302047c435bb500683066023100cd5f3ecff79b249112759b11ca278b88040c244418fb69a092ce720456ed9898082b9ef2c0f3bf0219e0e4300a0ffd50023100b2ec5d37c9e87d0009c12a620ab2e4129efb7bfe213c721ef80e1063f4a185f4b34aafb8e8277eed060e10f6c3a8c7830302047c435bb500663064023007f6e4ba304ae3ebd21d3d7b0b599bfe4c91961c5ff6d5096ac4222ae26d78b3763e0d4726ebab1fb1dfad855611477202306bc03b42db3487a56250c1bb8d67acf003b114020aebd63893f38d97ad17efda048f8b1bb901de9f7b424347ea3b48410302047c435bb50068306602310099bf2fed34cf92299899781e6beb546a3b4cc64e8264414d185e7f3c87c5e31aa0d53ba0512b59bded72889944e79365023100ac2e53a5f682ee9d94a5380d34321c5cb33b9c5c62dc96881786db49dc9b2eb580f3d25a8007b8c3538758f77cb11b690302047c435bb500673065023100eb78121215f0b1866900b008f15ba4b5c1b0e526b052308744e3c65d3772b175e47348fbfa588dd796a4e97aab084d8e02306d2c9cbec4c01b5868732430b05abf2f15530bba0716fbeaf11142e52aa7e9de81de4535a236fcf63e66440d3b8b4daa0302047c435bb500683066023100c3c6822a3e759ae5a20d544488b1de4a4d41785d84a27f1769cc742f17dca8c63a6f4a85019d4ddb62f7c30e9e7951b40231008781e7647645dce834ffb4c24e58814acc1ad8c20a9920c3593866014d323c1a98195d332d0236de69a8eef3ec3412610302047c435bb500683066023100b20fde3c14b243c8c9d37cfb40992ce7c8c6e31f55df7df6ec7d6f12ec2ae10b9e0fabbd0bdebc541ba3e77a0562c8b0023100a94b06c55110ebaa37069e895c59465d4afefac677757ca1efb1ece043529bf40682d06f572fb59c4c5b5ef422129dda0302047c435bb500653063023030674d852db509dc13aa7c2208c62f8f3d0c75dd79ae839c1c29cd5e548ee38b6fb5508f772bf4c2e88d140975b0123b022f3bdcbd03535ea676147b06ccf8f9333521d48ef53de4a761e725b4b728bdf2deeced34f65da53390ca4c5a35e92ad90302047c435bb50067306502301c237c5befa1f8e54eafed5531e0c4b067bee55140147a8a908ccc50c67a70ce445818ea72502d68d57c635376517c29023100d36ea9fcd6915bdf6d18c26e79223aceb81b9a0fe6e0a58c12e89bf9e1d3d43a8e3b042b111a77f63476c3386e15d71d0302047c435bb50068306602310093e0dc6e4c61349fdfd7b903f4c18008f2eacd3f37158667cc2078c5807a406aeb94b73c45fb1e880adc0a80ab8ddd2d023100e5f99bc7b8854e37fc068c4c07b34617a1f1ec5a3c6ebbe41c9cd2c18d00665646c4146d97830f729de866bc159d5b1c0302047c435bb5006730650231009a6e48d4ea7abf00011d48bbd6fe8b83572539cadea4fd3b00875baf4cef8fdf3a68abca2252ec8a233a701d0ea6b85d02307f394cae280744a2247a1bd4ed5f03594e32800582353b5a8d9605130ae342b63052ac424d5d5d70170078045eff43bf0302047c435bb500683066023100897fe7ccd3d8a6111a4c5dd5364e16c6f2e13e31b1295f43bfac94e567e10cb1b4e16996fe3360492143369174b006e0023100d62ac445efbb7f7ccf06c897fc3f1e1e7c574140cd655f26f073103c8427fab56c0631888bf50b9bd7f35874a27942d40302047c435bb500673065023046a3809903d2a4f71db473c8f54bb164869f2c3edfa95612fe6188a803ea6f6c82739112146b8866133eb8f07961264a023100adfdc83d1af4cf014fa136b26241000ec9080de131ac87785e586db30c2edc6684ced071b0e6f672040836eeb7c4def50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305cd23c0c2e48edd660716ccf5f7f41637ac6465b21b354e07c6f1f1afaf95a121bcd46db1f20b5e49f9fd9427acfbf6502300234827dc525dcad9924bb3e68ec9970a472c2a3a3130d730af536dd11cc611385e3e3bac40e775bff7be4e5d0adf5710302047c435bb500683066023100ce081575c6c9e205b2c7420d0db2235dcc0443c33a340c12368a0ad12283dddba9404deea63e0c66d26fbe08b05582b3023100d480bc02e6d9b22c4cabcb0edc609ee79ecc76ced5472bcf55515da2aa9bda13dccc4d66f95d5cf4003b9e9b7ca0f9b90302047c435bb5006830660231008607fb7474b8b8e6095ed619165e990588ed7202f66cd07137c48590ac8573ac7fe66da6d32b9cc9a256614fa65c5664023100b6501c00b616fd0693690095ce76dcea933df6ae48225bb653bd25fecae2294812bd90c7d9fdd6d29d070118df28e8960302047c435bb500683066023100e556ae2e61f9ad412f65f5a67ac075620e9d83b306bcc211eff9cc25d6e9568392fbcc135da502edb489a009e3af1e2c0231009e562eb0580e42e692c1996c0055240cbca3afea46582d9e42a62f925b6018050e68a8fec1d795aab2b0605b0324c2750302047c435bb5006730650231008205393e29edacd6e3b462a2247e90fd7adf544016197bbac4cd52e7a016ab07df42dbb9bd0905cc15ab34613947fc8302303af9f774917ddd2bbeb085ccdfbf384a51e093bc478eb18fb7aec07ad39e180820501e9a4c859cf8c8151fff2988a95e0302047c435bb500673065023100f22e59a561f98c478f318f77615d44cc469ad5d35c645199eb00f6a1d40cf007cf7d0ba2d9b583bacf551d154c05266e023045b9d950faa0089dddaa04fa225fc8e8725d176eb4122e4378d978bb4b97adbef1e5bc77c6025037e0563e1e7703f53f0302047c435bb50066306402303a7ac24abdfdc4fbdf7efbb30fca732688e74f59ba15410d3ea57d1fc8c8cfd517503b0123c89df281fe60bf892cf788023061e8543b8953f315b4679e04752b6f7e21fddc7fbf0431ee3d376b0e2e1f0200492f71b9d3f29dd56c29ad3dcb124dd00302047c435bb500673065023031e68d9b297682005c60ecbb223f0472fbba64b979fb8ae135a6553031df4b4e09e0b57ed4202b67bccd118de380a052023100e354e2df24320ca4c9f353dc0194cca9bdd34dcd0e8daf73aa218cdee75aae51db4892ea7badeae07903795b74afd9bd0302047c435bb500673065023071ba3eee0a568e045dd822d5b04911f78139dddf3d2c85c1f297551c9781a34dc5638589c9e6efff43f04030d0554379023100bd3c36a883f512e7c3b01690ab3bff9fe512673a96668e0ef03f77861761ceb63d496d18c2904c4077784c4b67f3cd630302047c435bb500673065023100f896428eaa1bd939fc56c4cbd270a14007620e5647728a3a44f64389d3305c0b04ecb94802fb44c7c0777f28c8a36df102301042dae330136a4db5f0fa2980464371044bae484f58c7c03c6f9a7ab901f35932b66b8ae40c17eaff972ea8ca2f71930302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023042195d326263fe95110a96205f334793dc188c55961556c54d24fddad98965fbbdd2c38e4c96f7be34214e4f27ea061c023038a069b22202888beb7304e5e4c4c626c826fe0d5684d7ef6a4cd9abc68c896dc6b236249d83dec72f5168f5263f1c320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009589be9b48d90726ce3cec24037478be18a19e17a96e28c15774bd89fd138b2466d51f12f99e4de8c39bb929815e4a28023023fe180893a86546964447bdb6eff93bc2f4ef02c2e8274a00abf94d82c0eb4eb1ac36130744c428ad25afb51bcc986b0302047c435bb500683066023100a941b86d6d5fd09b5e8d8c8e47fdb25688db339be0f659fe97d0613204189829bd2478d5f52e458993034d845ba778a20231008d1850aeb11890955cc26f52a2ab3791cc1b67a15c82959dca8be7aada442b5c06ec7f7e9002bddcd163975ad3481df90302047c435bb500673065023100e87ee14d6fa9626097f6d21a119b1aabe3062bea6022410960ecd16ff3c5bc7f38e325e0b6c7064f1622f7469203ed510230771cac6f3ee5daf3409593d31c7e3803ef0540cb0fe20d4bf5b697ccdea74c160be5aeb9f46ed9e6b7367abef9d5e46e0302047c435bb500683066023100c1ec9e82fa2a00e212cea452f35baf25206292a5a879b61ea2564b967de8b3cf16f0b12fbf6b791173238ca39df15a400231008e7874d02dfffa18c67e1a3d8656746587a914fdaaf2f95a9662975efa8db684b5c2276bbbf2ed900434c426416698ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c552e6dfa64cd3067fa9e2269e795ec49ff4890ab0625ff6bba998d95b118af6121458d7ad16c5103884c1221fac8cc102304c712f7d088d6c1948d7fb6fdfec98954297172449bce8f98b840f113a5257ab8771e29524b7da0ea99cfc2e07d69f5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300c9bf08ee4f7f2bbe87e8257c05115e38a6cde72caa1cabec7ed3e92e49a1dd9f2fdab2dff2495e6635cc3b81a2a89e602306cee69ad9d1ee068e8b9f416449fb3c3609f5f005f92b7df0789ad85987d1ff776211e27070bce89415ff4cd2df1738b0302047c435bb500673065023100f4f89bef096faf169a56fde85f5368a24208d4197befe673bcf16058fbd5c34d4821ce12b85792509555562e7fc7bad1023003fde239d9f5adee4566e908a6f336e38af1c39769a474a9edfca1ffe5a4d369428599f86f4bfd97a3224c1e5bb0ef620302047c435bb50067306502307e38a0c95d9f5d2a7e111dca27cee48b0de153fe3a75f3b61cdf6d9217eea73ef50ead2cee6bce4b9aab325a44c29243023100b81c93f41d381cd34e182ffc94ca161e6012b0ede6f83872404cdecfa063ac1b6e5b813a6057ea583f582df72153c2980302047c435bb5006830660231008ac82b80576babc951767f3e63efe1d03cde5b115ad39380fd9c00cd56a10251ac255a24a680c87073966a7d4c407bee023100c2c1b3999739f2ad04481337a752667821a05bc96b6fc114ca37fbdecd15c75a7dc82a85f131704f1b1f730c00fdf4c90302047c435bb500673065023100fbb9473de221b6b91b5c1d7dfa22531c2df158ed5c5f121d9f4e27f97dd4aadbeb6da41e4c448801956c2c790a9d526202303be8655eaef0886e661a2e91a603ac35ca4831b34a255307e966c0ae04cac3319481d3c248f7934089e6d8ebdc05ba330302047c435bb500673065023100da62b61427b7a9975666c87fc6fd80060be82d483874f881b6d45e53b33e639d2eb303bd0a85feef07237b56a37b591c02306a32744d7096709e81a2b03f270b3b06f6c727b94ea943aa1043fe1d12661f7bf426d565e0da525e242a4e6e3b56aba00302047c435bb5006730650231009e052c1551a88e0176e8c457d9b7ab4b81c1577f7a1e7e3416cabf7371308b86ba45f8c15c934c72adb943787126a4ca023001a7dc0e8ee046377c08df132735867f50ce90c49bc603bdb28a22ee797d4fab9226b3447c22c90c7cb83b7dea496ee90302047c435bb500683066023100c409e1abeb3ea6860de7b065cdb279c03b60a01bec7f87667aacccaac8f7ba1305e059e5e5c302f84036fc5fb6c23f67023100c7817b065841edfe1a07168999db53cfd3e4a1a951a17d526e89d0842035fe3cdbc783f2f68c1c31d1ff2383c8935ab20302047c435bb500683066023100cad0e2d24f23d05aff1dec91d3cd2ec9752d225b85a8a93272af7c4467ba262afaf0eb644532de93015f894f47ab2f810231008dbd99a17f81e7072a036994c36e657a9f5f310f164af294db0685d9604c7ca40e187f0b0a144d904e90eda647c2aa3b0302047c435bb5006630640230133bfff1250ff2dd84a66641e78f8c7842aa2c25e237ec26347e18a2c2d4d55ffb307b5d73275c6de1ec66c51c2c0dfc02302fc8890306abb779d31d0276ffb1ada8afff415508a8d79954376900c575ec5d695dd0800463023d7f9f350e8e09dd440302047c435bb500683066023100ff947727e6574e34315082262477f0f7405324f08455709453e5e40225ef4de3bfc252d79a94c4f80adb3054568bd66f023100f4170bd817184340d65d921a3f1858f3137ce79da145a68e64e29b53869e790a21eea05175dadb933fa1c39b5c4a67c70302047c435bb500683066023100c269dd506b86582d89d5bed6bb29dac476fc2fe8b7fc24e187e81ab41cb011678189bbd850e95f309d88498d20c40f09023100fb5bc01a089a3c7ea816153d9ba9510960311ba8d6a2a42e5cf2cd54e8498eee999dbc3265da5c686d3e90398f2cb9dd0302047c435bb500673065023100eb1be4f4b2f4cc4424f1664d99f8d08d7306f3c9cc3aa7447e7a1aa61c936bc1e7921349cc87c2e35b630046da75dc8d023025519b0ff0231640d9f57a471358f19c32df78a2057d0345a3f5d1d998620298f0b6339f341509bc6c9f7839558af80e0302047c435bb50067306502303099638d91b137df17dd7cf8227c5d4e92e72bc4c14ac2f740491062268a270c3a5e52ae29f89ae14e3d37799e3c7fc4023100c674602e859b65afd6305efada7a77d176b79dd7e728a6da9bfd988b24b8e2825e46cbfaf18991e5f876cb9427cc86b10302047c435bb500673065023100ab838a0a5f87fb897fd383e4e9fd67d9a9ec70a4e2ca367190ee091579da79f5279adde24391796e3789a190df600bb5023042f44e4d56dbe6d7c7485d093fc53108b7d46b01e6ad63a350b2d49e398ee9062f57b1a08c73662a3df2b217f66c027b0302047c435bb500673065023030798a3eb3e62524c7d50c73b0d13cefe20317ab0312343a17069b422e58b9b5c898ed5c1030b8c31266b9ebec978202023100bde378ade6231fa0ef2d19c804c59a475b3010540e431a1d13dcfa3db711a791c8ef9732e0613c27ed0414fcc73a48780302047c435bb500673065023025b2c849c0dccdf2926b47bdb15ad506d71da4ceabe82eb16edbc4a32c30718f34d45bd67a444b7e01582cbca87d08c9023100b98e42528bf81c604e58d0b020c813225511011a42e37efa115a66a9969c9c8937024c97672968f9668c843ee047af1b0302047c435bb5006630640230763d908f6cac7d6f39fbd31e9069dcb3437b500fdae400152e0a2a7585992bb5684550262d058a9aabb91ad59d83845e0230135950fc2a10806d4adb497584d46e304595971514475fd17fc99288a31b7decccd4184706282b1b2772bba93451a4e00302047c435bb50067306502304ca2039a0b3b4838d17ea9e9ea5bd754ab7a5f5a01ac30cb6681b997abddedd66c6fd0e633c310d96e887b251097dbc6023100a7b2af6407e642a9e1836986f861fefebc0f7a5bf09fe6ed26fe579b8841120c9423f2e1173b46b8840301019717f10e0302047c435bb500673065023100abd961a8ca128abbad908295565dcaefc231b94b50955fe9a31b4af66a008f23f14d3368538f4b362623c01a5adf2ae802304530349f140f29d3d20aceb364c22e21256446a717e1fa27322407933f2fc64c9bd57874b2a30ed625462c4f91fa5ba40302047c435bb500673065023053e8d84a41721869563334ead59e60a33475171e4e93627dba59847a45abdeffdda389a809faece2047c574aaef0ae88023100a377e67c6280f3a374702181906d1b3e728cc1a82aaa4c09599a807c492e760aa38b93832d84a037c930c9dd7312bec10302047c435bb50066306402302582527551d15744a918e8ee610fd65fed3878a9143fc64dab83a414a015473137f5a786be68758e0fa474a828952ab902304195f9b244a01b0bad82a55fc0efc81bd98abce870a616acc99ded4ae31119d043f351cc7dd67b92c55776f8b21fd9650302047c435bb50067306502303c9b188e60453684ae3b537425990dad6835b559f866a904793073250c407d66d8f34d1b2b88cd2cd8b3567ddb85a847023100909341e7539f9f5e61a59dbdacd8042fdf1facf60ac9489344338f52778c19c70a812e0d2aed62095e18fef8107e1fef0302047c435bb50067306502305a788e47aad9f1062a1843f5e56939b3f25351771c63cec857f4d9036edbe150ec7602268e95f8bf259268ac346d8c660231008e548c232a39aec84a1b62ea9a2cb46d8945d1c70c3ce7c550abe881dadd262bf626d122b317af07dbeb3508ad7077060302047c435bb5006730650230043d96fe383759793e1fb754d89223db895d319f36a525c78e686caa75c8ac3b05cc0d08b20fd43791f384f1e091df4b023100a5242c63330294772523ba0547a4977fb094767e4ba73c991224616ae7b45590ec973f8e7b9cb82669ff1b3f4f006bb00302047c435bb500683066023100a9faef3ee5b2cb40df2776cfa36d7fbaeb06acc788b44972a1a4b3d0022214218afbd4cf99afd86ead769673f9be04b90231008d6730ea1b06266bfc0fd28f76fadbf591b29d52d30879a5a9d80f214a07d0eeea6333ddfb4f02688634e0bef7e58d770302047c435bb50067306502310085bbc91accdc0634be5ee2792a169fa152fefa2f4c162146ec35654052872d8bcd87272b89d2cdee4f957fb3458f19bd02303357b5c47ddb2f45ad46d8b5d5192a6e6521527744530d7e2374d721829d54f1d8d648715bbb75f7dd9a20ba7d221ba20302047c435bb500673065023100cf019e58b3f2645092b024472f32b4a8c5ceed352dcdd95dd079449b6178c592413444ca711f00b450fb37dcd4b22509023033cb14dc3ad716ed9fab7e5c9de973ab8e79fa6b35e79124e70ceb62993db08d52efd1b752e3af8fb226853d8ad04ffe0302047c435bb500683066023100bfb8e78253bafc83cefac6bd3386200e1b7749c12904958553db76e1125a24558284bb2d62103be5b0392bf42e4926bc023100f6c6b46c73bca3bb0484801a2b9ac1244a73039b26b6d4dad41e9a3a6b4a5f761a0f39123a315f7cc7e4c56740afe8ce0302047c435bb50066306402302739e09947265254fcc6427133b77436869cececa898e25da27109a94726e5ebda1f40990a2f7e4c9d9d26f458340fbb02305871ff28265b041d029d56d7ab5eec64856dd9056ac7cabf4628bd5b295187f28855baf01187936c9f7970cb435537a00302047c435bb50066306402301327aa3cb37f3fb22c58ae65d3ab91f56d7d8fc9a83c9e6d504c6b9e68cefca7d2839b9888f95b2ad2b5fce350a04a3702301fc524d9fc806dfb9b4957efae980c9cb8bdb6cc1b3e229c37b49d215a888c2702547c2744cd121f93742146cfb1eea30302047c435bb50067306502303913f343348569605c357227e0b3b23aef3911da9888ede1323ea5656a854549ca48d0738d0a896ff6e4fe931bfd7dcd02310099187a2ee6f5eb173f32d731d56b54a0f00c514273bb4a2db5fb91eb834fa0199bbd6326db7611e45139bc0ca355772f0302047c435bb500673065023036dc3b74c636d8388098e4bfc4ae08942c62cb504c49339957632e4636e8d313f4168dca7114e56a4aa94a76354c25780231008af63b1384e6c3aab1260ec95cf86b6dc79f0d881ac1cd07964f5d14a18d8eda917b807975d0d4817ebab4aeaf82ce880302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100894bfbd8027b26a807b21fd2604b39070b9fafe7df29ec1f6bc218ac5681580121966d11b0f1259dfea1e8390f37dbfc02305d321661d87b739e7ac5fe73c7edc7d8e3b4b0876cf361ba5de0e5d3f645f1e2703c084af8bf3ad07a07c4dca0d410130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e86249e75ec415608425f0660084ab7a1008a2c82945b784d229828e20985dc01c84e20d2af63a8a21a417655c5db05402301c9d353d222e9895017ae93d7aa00e3c6c02fff1a0fb27b2eb238274f24a509ea55fbb77c12d5176c1872d0f56a916780302047c435bb5006730650231008ff71b1ea3dfb729eb2eb7aea495638c5765701d3b6e536e13f78b26a0e652c7f1b9f84d2a74a94df373525a70a83224023076fcae78aee43a5958e3f6b87ded3e2e89a6dd830c0f14b39154f0f01eb9c47746221eda86dd1e80e259f9b973b67fd90302047c435bb500673065023100984b9df75e6646b0ef3ee7536685923e36f4f613731803757b70ddf813b430f3e61a0829dc09adcacec25a33db1b7b530230680cdfa5c4d18c8def9874104183bfb9a98cf9ad29587206e66b36ecdb540d11a4450cebbfbb6f6288af2c1e9b6a49700302047c435bb50067306502303f9959d0e9f7be175b942b2b7cb5ca25b08ce0752c14235b6a237fbdeafc04750ce5ad487f5dc1100c8389c3a159941d023100eac77b4d9cacddfe57eb1350172098a56d23469bc1e29a0efb3c10613497136819768d511590adadfb4d3e1afc7b995f0302047c435bb500673065023100c17e664010533a54711c31dfcde1e929db3c4b4c5ba61f81e7c5f18743d9acebe56128df0de04fa85934e034ae9bedee02305ffba67171fe56ff8df2727847154ef015d1034fad232e210211070b30c67a718525de8d88272fe2bcea3d55740ae6bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230311b2699aaa0f6ff3b82b1c4bd7b15f542ec2d3eac9b8626ace72a2edd38afcf91d5a99d82d346dec33cc4c700e6ad5a023004876eceafc5ee3df5cdf580a853f9daf7294741d6c8b9f04e6045ac704d7e5babf7770c7dfe59ca8f1e7655f16d3efe0302047c435bb500683066023100dba71d064e2fd2ace380ebc585a7f51b5e4b95c3c63ef78aa5c047aa3d996925be4b81ab3ee45c9fdfeb8492f844f0d1023100b738f823c70cdbb45c943b3d1233b89b0b457661c76eeffd764816adf5d9888f183e91cafed30ba748729183ecd19ac60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ae2812e745aea1915c67650cfee0abe1c27450c2d4ebc35f701f5cbcaace190bec24725382dae6f6a7f6b7415bd847de023100ca8e666293654cd92b266e8655482f0e78e98f207cd0fa4ff94b258a86705e950a20a6b99f5de39ec0305f3d178b28e80302047c435bb500673065023100f782f291d721534f8ab0e63c9ac36a0109c0862446948384131dcd54c89add8d57f051373edfe187a6c7fa0c03c068eb023071577ef7889a08635f18963285ceaaf69ee6096e90ee14fd1a48b7d15dd2d46983e0a4187be0bafffa6f119877481d8f0302047c435bb5006830660231008f5ba6c7c65f8393e5714b87c43e00e913982532286ddbfee443f49be892ad970f882fb1a3b50f220529caeeb68359e5023100d629e8ed64cdf5767b964890f484758eff3d26a0149dc052598b8142f971a4e74704d70d72a9a37af2cbc97e33863e9a0302047c435bb50067306502305de04aae5adc3bfca441543baa1b1d5988f1686767e621220bb82dab4ee0cd8e08bfafc5bca06dcba31983501c314e2f023100d3a0550efc96bd94e2d5c4c8268be62d18b9d33408bcde1a85b9eec98243aadfd6e2e62456716a95b60509e4651423150302047c435bb50068306602310094b4a46662df7f4c83781683497df81543b3c41e9da401c029ce0d19d5f3db4457b78f403b2a4fa6b37c43824f1614b1023100d3c65e74960406960287c20bbcc126ebc98ebb4e237d30c474fe36ee2683acb66649c32b7a0b7fd9ba803444d51d4d490302047c435bb50067306502310095a73296fd84507936189acd68e42c360f7ea23ac9549174e3dd5f83320a9d8ae126b27e97a47f2b9b683802f44fe440023072bf6a1290cec5f65b191226af413f4601de3504692ea035040a4247e04630f98dc45b9d41d227b181806b86a32e5f920302047c435bb500673065023048c3866e956eda62a3bbe810cef3dd593c489e4dc892681fd8c055cc36da12c0302f5416f19bd3864b11b67e21999a4c023100fa494e11944d46c434bb9c04ee703939734694d77d12bc290a7aefb948d4c74ae579e67d6ea918a62c048ab9f7242c8f0302047c435bb500683066023100fe494395d00f9f36253e377711d62e6a0ef9277f413bbc3787a403b696c7b3166b1ff8884dae79c109d48dc9bc2e6653023100d2d22d252ac28dad2909ca1bc6e696a5d1acc9f50b9a00ca3ba36c104c82ea15d2a2c33aa0392488fc4110023592501e0302047c435bb500673065023100906bbeb6925a52381818c3016e80fcf094d99590cb35d8d7cfa7e3eb1f04e18fa0d165d27a5520e4cd53be0a1dab4a0902303fa38543e5a78f03fe4a4340d2d250dbdbc7505ef704d56fbccb5cf446f6ba22b3b925c29f0b8abc99da80b2f314f7ec0302047c435bb50067306502310097797b12edb8ddb7ae543f3929ce9174e212808fcc6952157369d91dca1725d6f28c85b8b21e5d2702d3a30655862657023008e5f5ca1f5fed8c9e3a4e09866da543d665ac000fa9958575217a5f7854ee72ff3ee4dabad2801a336aaef5bf1ee8e80302047c435bb500673065023040d796fc61109e92f4b994c9b136771b2e3405127e54b264a8df6b91fc71fba42fb0700767bc86ae205a3a9c0ede3b48023100a55354eefc81df956936bfe9eb01f26d64c5e8e31ab7aebf4bdb6ec9b30cd27c101b4c13638d36b8ea2e719545861c6f0302047c435bb500663064023069ac925262f18027aa6f3694b1fa66d821f68a52f1fc5bf284d9606f979edf9c52d7fb89a4de7e5b6df28c9acc989a69023060a137ca44176b339cb9b07403e1fbb3e26cb94dc0aa1c6c3a6b1d966c1b838ac12cdb178fb4e3bbe730a56de40833830302047c435bb50066306402305b9d942f90ac1256be0325de7fe17f724e754d4c40a6e0824b3891c3544506f2982742f7dc934b510ce80f835891151f02301e7367a877257f8ec3173ef39db4849516692dc37eb6f8218f77577ae9e7761a24283869e0083713c49dad9ec1556dcf0302047c435bb500673065023100ee0255388e6bbf8ee3658f54c943dfc2b10dd87e5536a8199e42092fd23f6587637ae998dba4d9535b0de9b927464fe6023066c824578c09895f7003cdc0c706831044fd7ccb36a93cf2f021ba94c7438502ec8167a9447ce916d25867d4264a8d4e0302047c435bb50067306502304c5e8ff6e9be34fd48817207459a80e232d6c82b15e21a1842519db1e930c9ce12321db79c73fe2cd2729367151effd2023100b948337a3d7147e2c2985478c929cc7e5aa545f39c0c2fb280b9ee420726a86580384426fb3609eb197fcd59a7fe98670302047c435bb5006730650230165be8b3e9ea10a43749be850fa8d95d7323358606be72fbd9e1a8bd84ec167372aab1f3bb2cfb538df42e2d80885a43023100f45be2e971eb0ae76e07e258e0b8ebc2c7364dc3633b0b82cdbbc1c96decad984254e2f22e35478e50409b557edc10b70302047c435bb50067306502304d7e588d4c6cbe5546554951cadf2c22df11bc89265063ab413101da07eb274e50d3b858efd4fae4322ff5105b1dc215023100fbbe548d3e87e64b1a5b1b5f3df98ef6d37d390248a0cb52a710305c870cfb3edca470f98d504a53b90655e3a65760460302047c435bb500673065023100f34062849c981c6b403f2f57e4193bf6ebfea822d1229e909297a243362753faf10b73b3fa3cf5d3912945ee920535bc02303c793ab484c026fc10635697fd1c53d9c4342ac23b827d732fc3161865847594b8cc445bbfc04f468f1fc1883dc17c3a0302047c435bb50066306402307dea6a6623b032384c8aa59945a3535e803bb4331edcb481be5c62ca5b3bc052dccc56330a375a014b99d705a732f6410230270dd5b3730ca247e9cb254286607884e45845a7c734dd0ea633864a8a163bf08eae8d5cc6ee9f39e5494d2677ec0bd20302047c435bb50066306402307e250ec2aa7d2e8f368d961490f46986ac72675e50e6a0a07a60f2d62176569f04247afbdbb8ab22b6134b8d9c6307b80230551ff8eafb40a727cb9f44d35cd373c6632217b3459c8ea315a9f9689cdc2f4ed8cb9eb099a3aa6079bc398653ee06df0302047c435bb50068306602310092bf3793f1aad2c15ee55d500b696564821b16aea6f7f48626ec9d6029f3a738ecd90304df229beb9f8d41db9382a7a5023100abd0b89da243b3f3d1cf4faebaa6e8a01623d89d6e104eb176990b689b2cf1c4b00d7aed12ecbd93319087d9106c59670302047c435bb50067306502303aef76868da9674137ae8341de22a8a9bdf260f8433e3b0fb8a9001672b8949b81a1a4659e04b5b78b8198f28cb3f214023100cf45eac0c5488e3e88646f52dc0a991fea1eaddaad890c1361f53c3da4567fe1ea53bbc58c926bc14bf609a612b8559c0302047c435bb5006630640230187860ea523df3a475abd76318dc44a6e28fd55b6452bbb1ad261490af02d3fce34099341119cdda6b3d90567477b927023019c14e7c5c106918202271d37dcc5406cc3920dd11f33dc989987f0f671213563caac67a08389dccdc40d15ba55ddf390302047c435bb500683066023100b076e949d1f15e6986bcf8269af35592c07840317b62dfd62bdf1c67438223155eb40307c378519a7b10c9c43ff4a4ce023100c483e892916a10cf5b2bfed880d338d8c190a92d78c19efcc06c787dc387b60989e7d53e3a65436f3ea17da41a75732f0302047c435bb500673065023100c9a6f2bd3ef631093b66c32f2d7a9bbcf2e0c947df0a73b936b1ac0e8c81126ada60373b6f541710ec67cbfcc12b563302300e1e0c4e249fc6870f95e12d1e4249bb5cdddae0a27e09e2aa5995c9b866d9b93fcb46f80cdeee24bf7061f464966fbf0302047c435bb500663064023048d5b7198f6d6ccdb68fceb7c18e7f7d106c96135081d568b63877108ff402eb68ab0200e6ac004987c406d16991f67c02306bd6f7cc17f3996b2c9cb54c73ad90877f0f015c527cf01002089f96fa9527b305d83e0700b247fba2890d31c96d99e10302047c435bb50066306402307d40a3491a984105df27cf2c019bda7475ce71e99c84147a896a626ba4e34313b8def943e7e760a93d461aa3116758aa02306097f882e39e9d5b2366aa2b45a770675499c69df20b68c6609e137e3bb0acce6bfbcf3f0675ee0364dbe1a9cd7bdf430302047c435bb50067306502303008913aecb5635a9884112322111a86faaf7c80394d4ce73139a3d013dde4601ca85b030d7fb45034e0d17af472de7d023100d618c628d72da033bfd6adb15474f3ed16e9a1223a70b7ebb85bb4ebbb79e755d54a28479414daeb708df50dbaa8d48f0302047c435bb50066306402303abcdd724b53d1d9fe81c11bbd9df7891f2849a5932a28015e7b910783b8bd6024413226fcbf43cfe58cf1edbebbad21023042b4c37a33366a83609798a97cf758771014a9e036143d62b6a62ef557f6ea32fbbb7b9b44130aabef96abe6d4700cd80302047c435bb50068306602310085fbdf16727712f2ac19054202852f5a46cee470c14ab2d1f28b7856898ecb6232377d083acd4ee7b4c2dcdfc0acc88f023100b5714219dccf2e0e401ec7318d73f2c696f3cc5abe830cb5925c408865d90c6b43a8e1c71f2e7612af710545cdbefbb00302047c435bb50067306502302a5d624f57e385517db2acc26c47ee5fc53d0d1ca1f154033bbd55d6f603cc395a13579cf4427cdc29fcfd58df3af37b023100e07723d4abc03da44d59f26ca02dbd8dabbc3df63f5115e1fe205cfca21547b0ed5eaa25a3d0a2341da4b8506db2ffe20302047c435bb50067306502302f71e38705dc4e6b2c056da4d5b6340c31f59ac2d3eddbc1b2fe267d8c5afed69166133f299b17ae82f3eb4fef571731023100bbc65b94897e693d2e8c6cf4bd4fadfd0d329d66612f9205d5e4579f5d0964276f303c717af7e149005c4fc7cbf7235a0302047c435bb500673065023015f7363695822997579019445d0e0aaac5c6d7986f24be7862d7e59205f69ff3c46132a20c14b8a2f46185b32d1d88cb023100dfd1f0adf315deac3dc066be7315fc96eb541fe19d4576f7c54bd58b409db7276585a32b521a8af4b96ab9c7f8fcc1330302047c435bb500673065023100ff56ab83869db38ddd8476f666426eead456242cf8e7ed608fd3b0e51584462f5e4a1d29fa77911d30a74cc70bbe34a30230756e33fdda49be731b6a71e8fe804bfb5f18fe5ae9161756b61eef3cec74e167c04b25d0871d7f3ffbfaa44fbc6b93570302047c435bb500673065023100a0d1a4e40a47c4f2ae138ed80c3f9762fd7a0e07420f8b1b84f6bd258e0e2536825b2b3d20bc1d7403210790b688e388023028f5c2733ea6eeba93d82e0b2c343d02492d6dbf50385e06102a340b5015da6f51bf05d58b3240b7d515a3bf8b8c546a0302047c435bb500673065023100f4d79749320b64d00a01ae5238069f1742d513de92f69f6745d3ab75fb1cc38465c9ce74d6e21fbfce9430495537151b0230603c2b3a8509c2382b823a61708f0fda7737b0499f0be475607c53d83d9d8e0cf2f16d6199beb2f83b9582ac7b46909f0302047c435bb50066306402302a3cf44a9cb4e2f2b1917c48aa09629239feabbcc37a2070e0f73e07230e1821df3fa4cbfc768dc9d2696dd12d60e67902305589a19687c01ca781831c4d3f93f2e093070282a90a117fd14a836e691f8a7159e3f83fc8dc18b7a5ab715f13f5866e0302047c435bb50067306502306f293e0ec11cd601b410562d2ff0ce7552e849a5cba8571364afbc0a6f3e3f45045c312c18314d956ebb92f7265fa0af023100d670c854950f5d422a4e4a1728368ade56514f115a59b04b67a8ba824df7d85f1f68ec3f4fc371f9c541dbf91e7fa1280302047c435bb500663064023076b1313cc5ffaff1d610eaa6cdf96078d163396a0d434a987e39caac6261560419f4976a3072c5da86f6f1099b98013f023057178c801f65d41fd93a4e2f8cec1d994028669927bcda56290f78db4fa4b0dde5d5541d9374354138baa5d580081e310302047c435bb500683066023100f786bd746f8f75e838fa8d198178d05fbbca018d473493464855efcada885e97ba18ee64e7a9d02f54624d0756ce60080231008fbb66017cdb8ded7ba68e129e9254c7964bb1b5bfe15885b9f27279aa03467d79d0f608698081a41ef9e81e21d4c52d0302047c435bb5006730650231009e1eb644072120db7b143ff716c8cde2d3817e38205457dae8ef9b1fc34c45f794b8252bac5e72196729a28ca2cf2a6902302863a92e421a9467dd359d446bc272fcf5da45368ce845744faf5ee2c38c91007d228973e08b622618fefdb951841e400302047c435bb5006630640230628d851db196921aaec6cb4304d6c6ff93691dd327bbbeda19e0adf122976f93586bf3900b981e1412513855b229b13902307ae471f84c66e8571f2fd09d8f4d4cc647c5c121193bd16e99f130eae5af512764493ec753d5a499ef41bcf94a9969e30302047c435bb50067306502307658dcccf12c3c282b3f8cba8c33daae9ae2109f1bd5cadee71280d889aac757e93170b3d7220ff3a7e32317396a7f420231009c70867b19e5cd44920feed9017be9e3710a0784d6635df532546c64f20f3a23aaa02cd9ce44920b7aca13a55f321a6a0302047c435bb500673065023100988427b7083ad81c0f354a8253649d5c65ddea9c00670bf4839728bd622c96a405a9688d78c423fc260029696f29653f023054131880b236ab6639df796dfbf39d4a2ac88b126561e19a967cebc27d9caaa1879aa212d3440b00cf094b3ff01e807f0302047c435bb50067306502305e9481e7578cfcf06f385ea957e48d99237a33ef929a25518c45d5165603ca3d850f3813cbcc5903e4e1fb7fcda1b17d023100a1e241e0486bf7ff099e02e42d044e74af8c75f0827937941187501125a2ce35f2e6cd44fe1217e6e532c14a2b9599f10302047c435bb5006630640230487420f7d402a8fb0aa2d6cc13a3bda5790d38b4733c02d05813aaf5c3af1a6b177402aeb4efb9d3a8d75868eb7c91fd023048c0b1fe9b2d5e62da376adb8799ba7dba5556c54572bbcbe45a81c5b5fab6ad25147e23287cd455afcb705cfa948bad0302047c435bb5006730650230777eb1afd988c6bcf701355ccefb20410aa8c1e8d017652b6dd54a891c98823b18c28ccccfbefda0b1e07cfec75daaa10231008acbaa9c047ccbcf0ed0df9607f6ca70e24f8742e57c79af3476c27f6e4ae07be033c6c4f533ee98d68295392e60994c0302047c435bb50067306502301f1b647958450e5461a038da777a5edc281ae332c6f0255dfa10f4741ced99bc992226d4de6a27504cef7c23230b4957023100eb3806940d6926cfb8bb3152750ef879a8104e9b01b3476fcbe4f67cdc12bbb3ad76242b07bd5a2e3f7a4e6b60b4330f0302047c435bb5006730650230202ae3827f462b4c024a042cff9323a01b59056833d471dd53a41a6558450989cbb5aba84fdca92e40a44392edfbaee00231008e373008d9d90d5f8ff4c017011e7ba910c95cad26a547428a7a4c103b9e340edfb5b5b25925a9a0f98cbc447683a31f0302047c435bb500683066023100d636d761fcb4fc28f0cb141c33f838584eedf6071a7a514dac14bac1b9c847a72e4a78bd3322da07dc85ef4e8b0384b5023100f29d805d5accb1da1feb728a6311eb3f21eec8e32bd5b13d6ca154dc2e2266737cc7515119161da0f1688a899db3f04a0302047c435bb500673065023100baa6a5d1f3da7a5a1fb2b578836de88e61957ff3624631e08004f9bbc5c484baede6ed429782d3d48053989fc11edc19023037d7ea1388c14369e6ad953658d02b05f6b4ceaa58d559592bea58a1f3406aca9e07de7a6fb1b34ad99aa1c2ef4d78300302047c435bb50067306502306b749e5a246fc11aa1c91e6a28f1a9a661d93e1da2ea7c8f2a3d80185b772c8f617785947ab7faae489189086d044c9a023100f0bf1c6443ac8c2342e120dbd57e6d7162dd3f279b15c22a53b7925b31c902a4020db15c12429214c261ec716ebf18150302047c435bb500673065023036d8bf7793e41d8c5e6903f97473ba5962a42906d540167f49cb86803cc9c41bc560f3246aa3ea1211f784f245a0e11f023100857496b12405366d7030e9a03186f46aac621f34d7890b64491f8a79254e4fc133ae23f1e42e7849648793334dc9f7950302047c435bb500683066023100fcee14e09a197a7c08aa5502e99ebdf9e3ab5b49ad17f9284c49d24e6381e21b5e6ff05df4b4f05c3fe8c7b64f4b60b1023100991a7daecf060e08fe4c3db91678751e3b0d8b35f7949cc50625711432c3d1a1842d06b2455d27bd928c2b3db87755330302047c435bb500673065023100effefde0da8012344a20f1a4466c7da01b7eef21871030f719ddb8c6a817fdb5f14a84367aea8a9cfc51546cc45d8d1b023050f454eab37f003233505f5a826ceaa6c91fe47f55d3b56a6d4646c768eb8a0e829db243a7e85e89be5311f1d6b878bb0302047c435bb50067306502300d8a59913f793c5240eeed4c507a90b2401ac7a491c4b9f5493cad803a644adc0624156debb30c95da37369ee35ea978023100e15d7e865906548f9155ee7e2d8fcc3fa9196e54770eac8ea17be28836afbeef8381e13e815ed728b9d756dc3c19d2cd0302047c435bb500673065023100b5a260fcdd56369d882b5868c53752ff78de769d46445788821e04c0a9819eb8fde51be5c8a35e66672d1a82150b3c2d0230527eec4ab2c6b5133aa2afd15325f8c9c6ce0ef14e9001d7b1b4f63f77fcaa3f926180c348a688ad65e7fc3a147dbd160302047c435bb500673065023100af1f6e185f08904f9fc1a874e575f7ad9fb2f7b5d3bb750348e9f11706f861f394a598ec9c73406d5d7c4f2e6fd945da02305e3f2aaafd297d1cab8a3ae8142aae4f5337a4a4935bd6168146afa2f0e34e82f66ca918c5ddc39bbcaede3b6c5b68de0302047c435bb50066306402303a68c8d8fafc62a01a21137f3b5dd7ac973cd5e9bb524e90bc08f9e335ce50827cd05cc33facf8e7c2eba9d6bafd8fb80230717fbe11c8bbe0bb87497878cd91da10f51dab4715032366a92f9ba6e1695ec168ab639cde8d9e6eb431b74f110ed3030302047c435bb500673065023004a424a9d255ad2db6968873b013521bfa45d2870450ecbf74e537db8c0599a817a3699003db29e8b0d5e552a14a68e2023100c3bffe8163ec7f8da153804f6e8c8d889e3152c858c3914ad4378e041632c1d0a2fb74d6a2510fd739c203b478c5492a0302047c435bb500673065023100def001ae23254f8d28d7e29bcbaddecfcad4be15350bd6e51b9e68f06195abb71ae51a8e1231a60a8a0ff37e2193bd74023021faf499c0eff7f80555d5813f5aefb57e44a4e3dbd22feda1abf65f5029cfb14263c79023b377bde9f816ed16327dbe0302047c435bb500673065023100d3b03179d9c2ded405ef2abe85e70b04c0cadaaafb88f7c971e590af41bb826ff280ae91c54cf56ca84160f77088326d02305fe91b42015e0b863a39fdb9bea703acd59730200ed4165dad3a3d363694bdca694030e7e430479ef2782178ad8b88e40302047c435bb500683066023100feccabac4af66656db595fcec4c9436cae90008b550148761be7a43c5180236b4d360263dffbbf7d39e697514354d5e102310082411bfc143e987dac52cf8ed168f1d8ebd16f38cdd28468e2a1afa88f5d56cd7fca0f33cd8b66497cafa66af8dbc9b10302047c435bb50067306502304f776f31fa66c9d57f860a799e40bf916ab7954d2160296ccecd5144dadf0c1fedde9fa390ecc4ba08c535eb9b4619b9023100f80238073da691ac0d729b5bbb3e8854483c44131e8fced3af33c49354c83687a3fc7c506d48bb029ffc8e701ab87bab0302047c435bb500673065023017e23455ae9c6a46ae48293ccf951ea0e19d44b243ac001277561aef4961b5064d8948694239ccd3fe4140cd4cb725a8023100d7941beb9be34ec08e8d3de8ddef36a6f09c1000dee2b881742afd8c81dcb619a21c42b9a44e76be1ba3153b7eed14da0302047c435bb5006730650230773f80c4fa16996d4882805898050a7be97ada757a1c9c0ca3586d1f54ff0b9fd944c97c5880075eb9e772cd983626fb023100d824003e1881edfc7d51ee284e90d479130c675b83a66506f255ec5240be065c1f9a55d175c3d962504aedafb72397720302047c435bb5006730650231009acb070e3195eccd3a59a0735fa31463ba764331b201f1b9c37e5d3a85f1c7ee727fdc0e9290021bd6a49b37d15fc5ce023078c825c26ecba9983f2204a604c858edc3441e19ee0f078373efe07f62dd0934fc23f079be2d1d1e40644a26a0292b660302047c435bb500673065023100e15918b8cc2f887a9d8013241eb9324b68a6a3b7c007f2c3f963af0962491cf9231f2fb53d43a2c9109452d80fa1ce2902303d5513cc355395e72a0d6e6c868c16818d400521ba2f67e79c7841562d4eef407358a3655325e2a0b03338fcf8af8de80302047c435bb500673065023100dce900211670e1ead53837751676cca544596661d8dbc659eaa6b0ac53833b78a04c0472134311a2c00cfc3d6963829102306834793b6c6b3a5c0c451a1b919d2f3a7a14108dff3222f745acbb97674d5fbd783a3483853f1a119fb4312608d30e2f0302047c435bb500673065023100ab714b7516cede7e780df83e6fd7be7bf21021162a39865596d88d1dcab1221a00dd77d75d746f5658e369be3066befe02301c38c08dc702c3f302953274ca9bf8652239fb9ca394c20028ddf99a6badbe9ba904c0dba9e8449f6945941f6ce0bfd20302047c435bb50067306502302ee479d6def8d786ed4714a309af1b95a46a5831aff728171d6252be99a7ae275bf0bfed8e61fd5468be17aa81db04ec023100989a2da97b718589cdff91eb766ce072ebf7633ab286be41afcb155d519850ff26a882cc32edb9e64af4e31f64ee30660302047c435bb5006830660231008b712082075d435155179711818f3cfab4c43a232070b5ebece5ac21790310f6323c9eddcaf70bd6934fbea751394cae023100ce2ff3b50cd9bd2d9e7923ed3e080eb102adf0ef234534ee86edf3ac0fdb507709169e509d8322fda88346a4fb3ca5c40302047c435bb5006730650230243a7d45d4f387957ff58dec4a2e2792669273c3d9e0019ba347a2ed596f0e5228e49f75b9fcc1c01ada13c1b0055b91023100e4afc47dda1df12184c5bb8a561a15355aba98879d72446b823161a2b138caa95787c56e6b557e24269303fb8fbecd210302047c435bb500683066023100ad19c127db2192f4ef9f4c43e616ebff3884818921058709c016b66930dea329fb63b28cd77ee90366b5fa77171c80f6023100ce0e5d1823282a3dae92616baafd4b02b381f06a632ae7e72959edd2b233aaeb7335c7586d81eb81b095c6860e4ba8430302047c435bb500673065023100aa32ae02b9f9a7ad5a582f37784e257b6bef3bfd5c0d916de2062ad92a5dd0b89daab82c8ef2716e4e5c71adcdaf7dda023053916ecd5eefdf931ad12cd483e218c7f8a9fc32126c5dc91c342fb08831efd293a91567ef9f21693e63f5fbd5219ebe0302047c435bb5006730650230724c10df35f10af918c308052c0c9b38fdc543414fc874f12205c217083b29a53f21671bbc87ec41c5b2daf87effb25e023100812d24886400bb062567a7d5af37b9e51def221093ee89b479147b465bcfc5404c29e0958105650e11749dfb3b32a3d00302047c435bb50067306502306f8f1741c4687d16d026e21eb9b3e4b59655d109821c8e3b15c03f3dbc26b8c1053c4d798ad07f55cb95e3e899183175023100d4f14f8d61d83d21ea51d572c039ff364b2771ece06bc452992f837c684df83d0f310ec73c39febfa8f183ad50e5a7a90302047c435bb500673065023060c75a8e767f8bd1d42c719067204454d428396595a2df3cda8a2d9d9d033355f5681af077fe0b054237175c130330db023100e1d364575945bf20d00090d20d0615f15423917e106bcdfceefca842d583a3da75597bb4b38aeb77b1f13bc0c3da98040302047c435bb500683066023100981bad9206cb6e68ea5d48ca55070365894b894173108a78a35ca4d71243b912e7ecd90ee4f18a46c1f6853ee1b8fb1a023100fa2a63a20b42be6e9b9d2719eec89711ccd25d2ab9549a3fb6a56b26fc468aa48f9c0b6b241b1c31f5f4bd4adf4b11f00302047c435bb50066306402304a5addbe11c137b7f92afc6eecdc83a39cdc23bdc4053b3f72b3149f90f2340b93bf55b997bf6da044b1affdeeb407b002303c63dc28c67967002cf4d98da43b323d8266d47c86fec10db9f0f9ea2394bb8802ad84961177aa0a0e23bb5dc143c4920302047c435bb500683066023100ba7df5ea2b43e7052bc4f6d67aa55b7ce2a735847d57ed4655d32b4911c2ca6c9bc7cc65b30d2eb3ae9203eafc6439c4023100c4b6bcc43162477ecdfda4a315e87b811cc0b1fc745057ac132536f915095b53da3ea01976185931ec90f07b952100960302047c435bb500673065023100ad6a31400379d77c0cf033664cd6a69aee84698668a56b609239dba2a59f3a78411e78ab6ef532a102bd8f0312c38a0e02307b86280579bc5967f42cc8fde6f84970a4d47c69df6813f650aa4e1bcf2398fb149eda893fa1eb7d2d3aefb6a0cb62c70302047c435bb50066306402300706f789ec5f4bc50776224679851d351d63b2e8d2cd34a96d729d309b741753a01f47f4b659ac0de2ca7ba9314e3cf802306c6e497f8228e47e5eda518e849a24a99757c5a8cce88a679fb823f1d6d8ee6da507526ba743e0edbc10333f9341d1760302047c435bb5006730650230284e7d6c6de4f43adc8b055a9d4eefeaa84d124adc1b934f74971b4c49e7adfb8ad914c795d6f7871ac31c8adfecbbde023100fa2b3a27dc75fcbde1db3af3d13ea2712824621da80ea003fdfb1e0ad91bb22f0e8731758b7253360cd6b8bedfc1911e0302047c435bb5006830660231009c400636a1cfaf9cf0eecf9fe4b27541a297e506efc380acf27043eccc22a49a6f9bed95b99884dbac51b8104cf92da30231008d78c8825d5b4c3dbb4eb77bfe8b33caa1deb2b86bee72514e0d02efd44d9a2c8dcdfe2395b3fb4187d52812ccd39b640302047c435bb50067306502300daeaeee4d3df6c645a4e92f813ba99f4001390a265f7266900a3935b7991fcbaa3e5a8dd0d8c8c0947ab24b62f8764c023100e748689f2a7cfb40eea206fe4e1af6f085eda4960ea175f0e414a34dd5dfbfeb23a9395bfa5ea9d17f8363034bb0ffae0302047c435bb50068306602310095d79fee0d53b12fb797127d4cbc613498c789440323a05ce63340d2df0a66910b11e6de3e382e685f20b8fc010f5411023100e2e6995895adc891ffbbbc5bbcfaba545fc4f9cb557f2eb3ad0b942da70dd5905e555eaa69f3ca3dfaa7a21f1a29fff20302047c435bb50067306502305047e77addbae9516852595280d013032b5e13edaeede8f26dad7041f1f429dc3d2125f0875a3578f7c70fe4b2ccd4ff023100b471e15e2225c72665ca025e464e2da7eb428f8eb5d49c5e509852587fd06353693dfde1c4be2145318f24646b8d1f910302047c435bb500683066023100d977f43d9feb00a26f1fc178a2c8d58ae03eb5a32f8dffaaed5d5d46cf5b352f849353820f7efe8e3306d16f67e35646023100eeb0a9d972a50a538de68a1067ed34c6f6e975e8779473062c4c754beae58b6fd0da04ff6fffbc051711bdbe13ab54050302047c435bb500683066023100d831ea37c2098de32574697a215e37a440f31bf4ff19b6e1ae0fe3f35987c73353e87530351c9dce4e6a28d0e27e1a160231008e076b980c7f6967a88f0111c2de451c0281b77e6a66999b4492d2a85abb77bbeadff49448b15315eee8284e6a1c62960302047c435bb500673065023046946a86bd7f0a97e3caf3d15299cc44ffcf41948db002838367194afdb05b2da55a476273c32c2c3ebfa48e1562f8d10231008bb1122a745ddcd3135c688236156161407562482daf09aaa9d8a7cfce39e2e57690d5b9c756151dd50da4fe8f40c4a20302047c435bb50067306502304513745d420ac69547e568f390859411f7a1e21b00c5526ba5d91cd68c5faf6d1fd8813cec8556e2437ed220aef05a28023100ae2ef8789dc32d518475d4571407b76f5e96a9db27737afcee047dd300495cc86ee42d9dfcad3ccb151d686b71d48d4f0302047c435bb500683066023100910861e953c1a10b100bd87ade4ed5f40c005d6dd582aa956242a116239b8bd78019786d72c6174353cf158ea02278530231009e3f06a256c8a254bbb8846efe30607f2d86a7db94594831167c0f10a4407529db9d054175eee930e4bbccd621cdbbc80302047c435bb500673065023100acfec7fd69bf2bbc34033701f41f0bb2ee2c0b5111581446828f53617f8cb5ad41944087f929c1d1fe1c07731492146802300ff6a706af1aa39f6b519714a8d6149eea03e7f1adb39d4b7f0506525a141c2522cc1ca2590afc0c47484635765556b80302047c435bb500663064023020e27404b6e51cbad1d8ddf29bcba1073b0ce15d7d610a99ad1a2c66f9c387136d046c2003349b06fed28e196fe3558502301bc6c5b6c7ac5fe9410bbdeb9f3470c33301c923ad24bcc70cd0473f6b590cd4ed5e8482da3afc249e6ed77670b3fa650302047c435bb500673065023039ad98981216d736166bcbfceb4ac390616092f18adbc683f199bf6f2374637107f8f698bf446208110bed2fc5f47968023100f43b12f61ce2055cacd2f1d5103f41f52049aeb8dce135ecc5cc7375d667fea543dd620c0545d88d3ad484abc1e8dce80302047c435bb500683066023100c57080d88769a2e58d5863fd738b078771e5b49d7ac116a08b860a4d77195d8317b4b3ac477ce68089df27e9132473c20231008372bbd82c867ab01b30ca8cf00e56b17e297d063f187e12f9ccd796b59703df3320e8c742494f23aa4200e3b6d2ebbb0302047c435bb500673065023100d8b2df0d276a2447e4d13cdffe9f159b2a4b55b5ed0ef4505e8ec56f23827ee96dd4a62abbc0f6af86076dc5f88550b802305d25f60192d1779a31ee7b0608bd3fdb75c8bc64aaaf2b7255fbb512519b1b8b56abbd3c93da9a7a2c9b90f7deff064b0302047c435bb500673065023100dfabf67a4c4d873cbe4fb74480640019653ed013ff5cad7f2159dc0f276af4e79463cc064d8547645df7c55758f90e20023032b47a11785764f319c7abcf0e4e062588fc0b932983f9a41edf8cc558cee5aef61fa5e25fa6994aec709126603d47110302047c435bb5006830660231009f16983924b8629a961a3e6ac7c1a89345f6a48c3db52407a83e250bc84eb4208b400a40b4509abfd3830b5b8dba9598023100d36794b5b0501bdbffe5a8fa455b5b38aadd9b62eab6a1133fd32e280781825254b8d4bfc77ac7f13ed49cda1ebb4e680302047c435bb50067306502302cf8c51f79c8e0ffea31cf58f9c5ae540a0ac7288af7c58da84d5d29d2834ce61fc4d0d53e554b7f198eac22ff517341023100fc137e17418b199f4d63591a4c355cc57bc1499bea5ae968552a3a0147a23027c09fdd0935abe10246e058e5111a4b270302047c435bb500683066023100b55a4845fbacd2669ed7254f442e26effff4a3984d85cef0f0ce8c3d287232d45254af0afbdff50d1c2ed72d169f1445023100b6181e9ec899c83babf54f75d8eb1d1e7bbdff5543cc7319209dc0d4433ad15aceb570560e3a1fe430f9ddd5ffde98180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100830197566e5eaf481504bc3deb09e3ac355408d5ee50b32a98151b6274e506ad8d177981400f28c1d5753ac51408132a02302e8dc9cded6721ccb5a375cae9f3987260c9787d96e33274a27035a7867b0d2c9f8c84a324d81af4bf5ef9567afd97f60302047c435bb500673065023100ac028c3824ee24da721536fe36ec2dac5267ced29e1dfcd8b877f16ab2bacabc1dd060e9f5b0b8029e5245b98fb224e702304453095cf03fe322afd3385b6c71a52752719bae1281a54d405610923cd4f89f3ea86fe66cf41dce1d3bbe7b2adeba200302047c435bb50067306502300691e4517eddf07d396de115cd0ad49f29d7089d62a2e15b207858d658dd4f46e335f24f2ea04a388531aec9350eda36023100e8c0eb1867fbf506e879d38f1d55ce28a306be9f310d8745fa1b11d6abb00abed2ab2e363e0b39c9d16b5f9e3bda27620302047c435bb5006830660231009266ff31dae6a25c0ddbb0c447f08eeea5e40fbd85269b83538304adb0d1f66fc874781aa76e9366902f44ba5e07bbe2023100e6a13822adfa4d31891ab6e16c31b36922ea80bb56e91ddfb61f4eea1ab174098ffe23f0bf0c461f1d9fad8b5aa382820302047c435bb5006830660231009df1f344ede7374f3c6f59f7c7ce5e2916c749248d7b1baa8bf34ca1cc9633a7a0ff5e8f1ca98b11398b1b52bc09f92a023100a48311457c395ee82a8a2d48145b8c560bea0347d5d222e81c10ab39e9021e520c0412bafcdf62e773cbbab57a08d0d80302047c435bb500663064023063a87d1bc690ac51a8a50bbb8f189dde9bcb360c7c540f54a8f66e06223bcc6bfba8ea69b05871608df7eb9d2aaaa56d023071a4c745b251702f9f660ab435f7031f7335ac2e870a6f2c74d83bd52e773e038065872706850aaf95632aaea3d8e7870302047c435bb500673065023100b9ff5f02ed684cce18e8967eaef8d8c78edafc54d268f6b6fb5012b769b283a913a191518327fca795c63b4667a03790023077ad2348aa4bd196b0769b0d20a60f4c2fed347074b1d8ef4bc1418790252a55df4f4b97e0e72632282e3d2e1616a8890302047c435bb50067306502301a89b3dabbda9a15eeca193c38828004c7f24f6a924478cd3f5ebb42b9db1e6fa13d454c446455038e0431ef45c653e3023100946a9b617ba235348b2cd1664a35bc7a423c0fb8d0b1aa5da5790f7fbb4074a8a0265fc94ed02ebcf27db3d4a2d4f7a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f57990cba0bd8faf1c92c8b68508e6637cb0a38656aa930856c20153ca36c7667c885166516ca92bf417538495afece9023012f1e3c3a22725c4d0b49f5c88beaf8345ced898a8aea02f89119857d1a5de1225cde85427e252f8c1eb442f42e3ad680302047c435bb500683066023100cb1b4709e97e161f50e50f3acad481bc22964273ee47d2d3475232f13a3e3515c3194018cc7be861123dbbc89ad72d0e023100c86c1ab235871b4cce20256aa3ec0565a50d1900ea33d9342a553e3fb1ea81e401d061672a42140a5c02db5979f0edad0302047c435bb500683066023100a6a204d7680e08d9db604af09d85a4982aa12ffa85f4ab2c2184e9869026228c43e9298a0412230b3154b6954a98a714023100d39fc5cd7d41cba2c1058ffcd3a8456b92f34c1ef7e47faeea3a03782fa9d2f155ff02ece932bd654b609dab8a5f08e10302047c435bb50066306402302769b516e02c7b8fc81b2402f39efd00a6de25b8cab44fd728db4e7156a11b64402f39660060f7326c364dd7ee453a1202307e9880b20eb64292d2f36ef72dce1eb52077a45f9dec370e56a18e0fcb5cda815750d4781667564d0bad139f0d5432690302047c435bb50067306502301893f666943826a56209eee26190371e8bcd305c3c333c424b4447b10500058253d14d762d468dd82b950690f5f05662023100a7da2ff5f198f2dabebc938700665d146d93440eae296b7b32045e550182a5163799bc745c8fa531b4fee21266caea610302047c435bb5006730650230139ab7ce42ec53b673f2021130905fad0ba03cbd56f58b044457bc97bb70f2632444987e8009600048f3a71e6f8a851c023100af241962286c8892487bedd53eaa34a1629efb902693abeafb2412520cd2d455e1703d0d7e4334f93e5c3d70689e57b50302047c435bb5006830660231009e80a6002acda50da06288d27638e7d28166e34c48307069fbd74e1ee264cd0fa260100f4b8aaff093279bd99b38071a023100c83091e971a65cdc6d860c67271945b919c477104c167825f4be9d1381855745e737a81518b528a77ba0da70d80fab890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100875fb515bade06079c1dc21fa9f742cb6278807d61eefbd73f2571e35ee34d821768844958d71a93b2c93639f749d7280230402a4b009aa4a4e4c580a66433ca31bac310f7a6e7921734676a92fa1b9628a683f0b0cbc770a3a9249b570d2500ca6a0302047c435bb500673065023100d88f0b5cf0dd1c8780928303f89e1081cc0cbf5fd7d01cb8e12f432b56d35bf8881e866c59f0ace8f7e35cbdd914ec23023007aa51cd133dbff4aa596199978916c1f55dabef6552a8774db8cd1e599a111fa94b7a87131ecdfba1bdecaabefba1ae0302047c435bb500663064023030f9beb3e4f66a11f5ada0052b9b25d7e6d9c8213d3006b86b0dc4fffe168af21ca6278ad72daec52ef95a0231cbe1c502301d623d7b9d14607ff0967cd9565ae374029df23236b90e5d84d72c0f72bc263b78eadbd0ac668833782f5ef9203f09de0302047c435bb50066306402301159f393b9f0a97907520e10e93ebde64bdc586923b60a09134d2ddb689af7786b4c5cf4265afebdb408c0586c2132dc02304d92da9a561c571c54958210c45e57036868eb2e57455417eeba366cb44f731831d1c84cd947adc6ed1a40dc9439a9fe0302047c435bb50066306402302fe0a7f17fc1227a9d7085794c087304f2fe70198beb66ca519aca57927fc9a35b67c4bfc537c72d2ea2f2ac30686a3c023045b64c5419a366b09ee4f5dcd683ac260e22406da5eda8d3767abece13a2867705f239bbbb9b7f745a11ce2ed000f8b90302047c435bb50067306502310082bf1f696e9a6ab7562e7959163872ba0d519a89f3a7dcc483bc199c3d1abca76b3a5626c6fe69d85053c9e6a07aa44402302156e3b15357c9481c4c870bcfd9bb10ac85d814623e8f324a2a23ca886a2f7fd6b556785ff8f3f14da64a7ed5d0efd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e15c09a0947faffc18c2a39073353fc339f97750dc26f7e09e848543b818d50613e9215fff41c9c84204f33650807e6c023100a082df8288bdec804382ccff126967334a543979c6c212fbed1f6342cc1fb8126feb7b67d443275492930d59ca2fff0f0302047c435bb500683066023100e47cb585b55b5289fe568c0f0916ef30bf0a4acf8c7bc5d59a5447739016e26d4dc01eca1b497d0ff64ef2264b6a43fe023100999bbfe24d7f2b6a33f6bd91e8306bc0f5e279f6e87e9cf165844c3edca87927edc08dc4d95f8c5d49b395de9d3c2a2c0302047c435bb5006730650230474d572a5197d8657eea494500f2f8a0dffd97953dbaa09e9d0f9e4cca0585b1434d1a7b5cd29b28886dcdb85f33bac9023100812229f2c7968a7d3e685eeb2362f7414d7f5cdca4b7382676698aee217196c0f7467e342cba0e848ca2cdb3ff9454380302047c435bb500683066023100e143f19cba77ab35c0e092b5bd2dde06c39ce5a9be3b14be54d5c768aa2dbb4d1e9caa4ae4e980398addccf5b1668f13023100adfb5f115aa5a625f4cd5c4908c4cd5cd129aae1f25d5d79c7abbae3e17a40655e60a2a31319dfe42b118175d5cd216c0302047c435bb50067306502305cea02191ebc62bf2611fabaf7362dcfe23b4229b48162220635d6cc161060cd5019230fee4fb31db500097bb103b3f1023100d9541e1ab4262137ab96ebc970cece8023f7cdffac2668558c8e243f346e74971f465e99947d010bfcf814605d426ca90302047c435bb5006730650230680607a43400d96bbecee657d813a0cbc5ea91187d63a49149df1f0326df718aba5d71a3334f5861b6c8389d2d7d8670023100947cb7b85123cee2710e1bbccb8f3d3ccda256b1ca3e214cf455cf475406b3ccca31a8e126028748f91ff1f8fe50637e0302047c435bb500673065023100e577c45d703bd47bbe7c0d76598d162427a0a1c8b2325561ddf262bb352c612bdfe6d5c70d6a316e0fb39b5e828ee18902305443474c19aa407df5c747ee7ee7a93fd21c5d2b02064b7220fae2531730fe78802894f55b225931c39c120bf5512c600302047c435bb5006730650231008ef4208289b09cf23c4c0ae16afc52caddc8002de4d82d3a6b3f5462aad83c41c128061acc01176ef6a08e7bf125a35102301b6ad302eda0b8d2b0edd9fee8ccba8e53a811ade7635759b0b9c5831606781365355f5f2fc5013c96a193fcf8600a2f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023029dde8dccd1e7b88b3774168e02c0e09b4d85b7c5dbc6df2320e8c6a1d17c787a315ff10667bc6168aa6cd21f8649f360231008a8a31c1759c1783e7342ddfa6d81b4e8c77e21577f6e947a53faa11f89b90e37f200c0727e3070bf957394189e4e9530302047c435bb500673065023100f1fcfaccd5dce17c01ba96b54829e6576474f17a014262bf2b86017bc38b1c89cf89483a58288577a156b9ccd6b0e0e40230723ec4f502b1c90dac51c5b8d36954d6763b6b198e6eca59c1272b446ffee8565ca4d33af9274f4627ceb0d90385bf670302047c435bb500673065023075ab188d93e41bdca297be51f527367873c140c8b97d542496e292d3144634331c71c82ec043e9057168a098f065acd7023100deac22f786fb1af05c398ba65638694755c6340e416d35f379dcbf7a328122fabc322db721529047c3a16b22646cdba80302047c435bb5006630640230042013a13b4e53cd25cbb74a8c12aff9eacb59e8d60b5087307211e05a50e58dc1fb5b5b6a22c4839eb56e4550601cfd02300c727bd4c21f3ef40832018ac824cee86d15ead71839590b14a47838c7c5fc53614d3128a2f45a3219e9e465c5035b860302047c435bb500673065023037f8b24207347f52bc0f027ca08803c9f64f6c2cff6da57b63a24c5383bffaec2800ef351a6e0d58d5f8f5a99a475d380231008041ec8647d003b21c81dd43dbac4546a790f1189d994b85d47ad5b41a7761f599e74c6902eeb712ddd36f1b30d1e4bb0302047c435bb5006730650230602aa636f101405f08132e2f87401b9f33cbd3d35ee2ad45959bcdcfc9c6df6bac4983e6ea039a0c5f85e5a0f2df821b0231008e55ce5925a8d80aa17704fbacdb346b719b17abf50178c5a585d5bd3da2131f426e66ac0441f23bcd683a11c06af0200302047c435bb50067306502305f638622dba42d92ecec0ccad1d12839b646e2038ed4f808b23867ea0e5c764288e81e1e8f0dbb52c5e24f8659967659023100bff843a577ddf9cea5361c44651502d412137469c83e5f9e8a3a187b0fe837ff7fc04c363a308b690792ce0a34ab32550302047c435bb50066306402302ff9bcce74f8f547a60ef3d646075490307563612d7f733b4dbc033c8b75568b9b22dc18ee2de6ca96f82c7d7d8a66c90230636b934defa0653eff8fbf29688526fb744fbd32f1fa9c8ec12ec48943d4c3c44d98f895df5e6bcf55349adefabd23ca0302047c435bb500683066023100f0a5fac23c34d3084f6780a2bf3d8802c5aa1ccab41ee859edb327ca576a7c79d1b9ed2332db1e6af4986473986d7281023100f3c3dc5172737699378cfcf23458628dfc9ba6eb95ece671dee54d2804337283391ef42fb5445c20b741be698b3343690302047c435bb5006630640230713e3d64bdf2e5e3fa52cc85d37484c1acf61e467f1d87973a1b2ba933a2cfe2e1a34ba7ab5537f419648720f33571d5023023622cf4a71feed5110e14155a9658575d51313a2f63a829fd48f0ac389030632a87831384361b44545c7faeb1c4caf30302047c435bb500683066023100e314a8fef5130001761d1e9d85feb6dd516adf047bfcd0f4cba58a6b21bcec04e293e5b635ab44828134af5d5c47ab9502310088d777bcd4ee4de6709b59b4db09bd7e15588e2b6ff7d712a12f7351d473d7233af7507bac5316a5fe4b16d64e28c4cf0302047c435bb500673065023010b77067787986fb81fed37f72c2ec2f8ab3f28f2c49f233badf51775882daba6df3f490d1faccab1b8845fb40988307023100b1b4a23f77f4f9d04aade7436b8cbf779cbd0601b46ab697991acab3725f705f54fad7ee4cfc11e482eb25fa38c29c0c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1a02d8630ba14b7a65c4ed5e105921148840a334584a96d62a343f2996380e6103c97d4c64c0721c9e9509609312347023100e0c864e08151ca43a7a391db0fdbaed61bdb601fc0d32cdf99c51121918e78bf90bbc00804c670d3adf9968cab7383a60302047c435bb500673065023100de843c4d06228c7a3788533c87b6adc115cdc2fd19c04b6376ae450f32628eaf907518a7164ab39c430593064673a3da0230581bd8b69cdc934b2787c7ac35eaaf164d773ab85bce75125f99c08708fa9810bdd7f42476b3efdc917267571a79c9c00302047c435bb500673065023100f3ea6d4f8ed65d4ccaf5bebc7fa8f2ff1a04c3f1f4e3e4beb4fadaaddf7142074700a102ec50855662056856f1c822e5023027cf43334a0620bbc256275981a2c9aa15454f7de911ceff4255ad47610bd8ef56e82a9457141d54a662f0ceccb7f8330302047c435bb500663064023017ebafe816b722898bfd3ee0a402e6a749adfc78cab4d4f35a85add521c6ea694fbb8e4fc318cec8050d48ce253c1ccf023073dd5387349819c90269d92b87a84af7ff2a6c7e9ed67cc9d6095c6a582d208fb8e93c08747366c3af12c97d1963a6be0302047c435bb500663064023046c063f677a0a13dd08bebaa6f89e532200a262bca10c8ee3fdd249f0ebd540ff7ac204777372e798c9dcf43372a11b402305e2db57b272db75c13c703d5f5613be1ef04c7b347944388104ceb578e82aaa906d65f72ddf7ebfe2fac270b70d876ea0302047c435bb500663064023062ebfae66e0466dd2dc347fa3bbb512078374ea81d4cb11305758450a82e0769e8faec41cbecee9f4200fc2d92c8a1e20230342986890e6a49ed00ce516a65baa12cfda9fc3f9191c63a90a93ff3a169de523da83659d09da8cb57031ffb8e3a55650302047c435bb500673065023100a47af5a7800ae58cf1e969508ee49261ba80eed916b952950117ddaf3714b1280e1d66934ff1737c42186e698ac4c7c702306a9371e3d885fde7945538fbc3f20517df5c7dc1e2553eda54087420a7f739b65bd0993c1db01624ec1f5950e7c6febd0302047c435bb500683066023100af2d038a308dcdea7092e5759f67f2a821edcb86ca879b783ffcb4c579de2ac54b5e87304710ff98fe124d88f137ba1102310090a624a7c4e851138031adea1670e781976ae0754cc2881ec0ddf15620309689ad33a83acf06b47ba344c83f9b193a530302047c435bb500673065023034e0557b219fc1a54c2def3dc9fb51ae760d452c3d2cc5cc7d1a1be0196dcbce685791995a983ce81c0d1b0a0f2225bc023100ac7e9d5b35ebf3d4dee949cb8f0d39ccf1a77fa8829e8333ab8a7278362ff377310ec755e4d10b9fbcc20b92c3ab9b470302047c435bb500663064023020ba1c7450fc46d712138f5ff9624c9ff2ce4dbfc6fc5013155f5f43db140579dfd28cb568293ff6f003c144255b02f902304c007ce34c086803b1fa576cc11c1075338fa3dded3c7b6cd2e496c96aa2a35fffcfeb838ab376832e87ef991d543ee20302047c435bb500663064023070a11d75613d4ed0e70c625b48685c99f1e515e2406e4ff01b6e3d022f4e772d029bc9af4659dddfa24eeb74c57309950230683e77693a310bdc7406dc95c9d661a8c5fea7b1163352cbc691387182de6394d045ea1eb5dce2433da4e989aa6e34cf0302047c435bb500673065023100aec0b9e76d0d5670e921589d331da920c1f10732977f481b0adab426a67f58f00683e2366f72cdeb433ee3024aa4ba61023026acbbbabd0659d9b3a17d269a635b8ca6d52d6b3ff50783dd725fb8757bd31747275b71a87f0d8c1288d1ee41202f110302047c435bb500663064023008cfffec13a815d72609554c22bb5e362d0f9e9c202135949fdcb050de04f0236b6d5dcbb7308134f0cfbe30d4f6ed6b02301123aa3fb81d0c25c61bb3bd28e42a52d0d8f2f765266384b45f40dbc45ea578873bcf4d79cbc41874124bad01c36ca30302047c435bb50066306402307013790335428546a93cd34d21ec586e23bd9006a4b8fea1dec178f6fc39037b76bf4ba6f395eecde658f54d41e5ab4902303c32129bff19fe71a2bae89993a618e44f74bbf54a740faafa0860f5bbe6aa2710ef82941cf0228cacc208397724c9450302047c435bb5006730650231009b3d531461ff5a977cb7336a1c0c4e87fed1fd8437b69a135680e1f6aff3501123afae687cb6e3d548cec7f110890bb102304e97a77a2e71dcecb59344560a6d4aa7c547f0b1c71c99bcbdc11ce662a0b3de799422b08f42a9d023028e0bbf7f78f70302047c435bb500683066023100bfdd73d01bd0a666e266bb2b625434cf357a5b64cca8e4aad80f3b906aab18b25a768639907b0feed846f8c3b819b1c10231009782614d7b5e04678ad17ddeaafafdb8c6e1ad0becdc1ede4aeae4ba9e6fd65c2e5d23e49b68fadc6fc3b18449328f880302047c435bb500673065023100bb6eb071dc7218ee70e306b0f2b2e98f3e2bd21b3c94aa825f846c62ed221404e8147eba4530d52041a2f9114ba875bc02302b7c2cb1dc2f0fdad538a1b7d07852049296287845b171a2068f49ac87c56c4621ed8b5e58253ddb94946ac5b1c205410302047c435bb5006830660231009444d0b1a651c81be3e139f71b6568f9870cb2f10546b8f9c626efe27df44cbd63e74816616601f63af13bbc5af14e28023100cf73f96abfd9a6a008869300025b14544be7da20e2d9db96063c76c5f909baa879b42da81923cf5545c5458ee46c14080302047c435bb500683066023100e3fb4fb080408a6043eb1c769aa758ee3342e10405c84a979097a3fa7a9bce614914cf7c72923d4bd1280417feaff37302310099e602954a7159304662813bcbcb8ce7ce2a2256f8fc4dc0d693012db440124a8ab236d89b8b75f52bb08c9ad8a256770302047c435bb500673065023074bf80300c5a6fe9b53cde506faeb5a947ec002fc4febe167ee132e8ba3f92965d5d03a7b3b5eb3b8558e0479bd80336023100a79bb1bfb2c2bc0bac65daf43f5f6eb609f764fcdde781a71ee71709d6acfac86b9ec4c04ef2ec6d02a9425f7148b7af0302047c435bb500673065023100d50a3eedb2e407b6510ad3b0e4d7aa15ebe50234423b84d3988e24d0b7d14527a800087f37444b5b225e0f273faef22b02301cc0e0ed0b641b173110c149b1f8b5470b1ee80c3ff82b3dc16a4f45e2b236deb3a911b0d22a8ec367155ed30ece91120302047c435bb5006730650230771e23de89adf18c84a0a95fe89338ca84c979eeb92df4e9e32a1db9df27d2e1cd9110020abc0415855f8406604435ce023100ed76a58ee4a18d0ae595dafcf3af11993da17470be6347ea7d33669a5d0bb855c3998021092ad41e389ef037a542fdb00302047c435bb50067306502301e1662558cecb06ae8957ffed0d0a97e1aab9c054b4185d52dc8ece860b40ad62ef82e8822fd36f108b9b87e7b61dcda02310084dc0352e6b4dca6e479f2c90bcdb872d1ba0cc3a5d31a037da169e9ed4897ec5fac55c9c8d4187215a04ee45549d3f80302047c435bb50067306502300f02880a104fda0bbb5465678babe2d7f616c03c3d90d84bc1cb99958bb1d9ce00943f8319a9df4567fd93350b1ffeff023100c1921aeee6b99fc2980bf88ecc82e3eb26c994146e77d109345c3d4eb19348b7c20773a996747378c4758152ac0468230302047c435bb500673065023100e9fe5e1fc1c788bbdcf5dfad849055897a56501af6fb5ed3b7179e019dad15549eebb64a35948317989845d4661c1a5d0230452014af8d6b27236e6de4d52a76ea2ea776b824b549563af4df271e52041f4fe347eda72a642cd81b2a0f3dbe5aee5f0302047c435bb5006830660231009661212c77150a01d4e4b16f45f2d7a4037399a4e42e3d69736162970ee432d932577ecc6765436919f4853cff80fe470231008ddb02dc7228a3797df8810dbc110e210e66586939d09d39edbb8d8b814e9eea81c1fcac0fc3a7dea9c3034ebf28d2740302047c435bb5006730650231008608e086254d5a7eebd33e27b2ea7610d17b3daf29dfd4a5539e2e3a0cf4c2edf76d75e51c16c5b93f464e326c1c244f02300d8fa8ca4ec8e448ef2fd5f3692970702787431adee864332085df634e48d8ec4b4892d993db24e3cd265795a690ab880302047c435bb500683066023100fab6d2dadd89ebb14b041bf8b4cc0f2ff03b5e2455bd66c31aede80825e64f8b91d1382f8611feeba53ecee372d6a87a023100b8aaee20bf9e295154e28585ea56d626d2d19adb3b136bedf8eff2913209f761b62d39e7793c63c7dc565c1ece3c4a760302047c435bb5006730650230559c9cb12a1618b5a6f7c7a0d19b2ac5a1a9de5fbe9ffe89e26612aea0366c14cb25f0727ee83a5d113de7a8d2ef780e023100b4679ae2bd533d3d79f30bf179ec9fce5f1696032309f4aa4db0162b3ae0d324220dae826eed54db351eab882e7dbf560302047c435bb500663064023047d3fc91af70b6aee90b87196b0cd3f455766f41f77ad96b55bacf7e56572bb904855bc4873b27331597fb311e6cb03102305f6979c61ac0dc98ac74fc27cfb3add55e8057e002a7c2be4133d3fa203b7f916351d0e914d9156e05dec166bb3ad45a0302047c435bb5006830660231008f89f8b60b5dc8f36ec4742b2bcb9d7c6c9f4d152f5ecba2b86b755299875ed127051452c6bee03b49e1e4d52d5ffbc7023100df08f2d25d49a5f0488c08924649d1fb2e031778dd286751465d02b0202d9ca1dacd33d1ea3936fdafcf3e8d75b1ecfa0302047c435bb50067306502300ee226c7069cffa1b47d76d66df90dbd8c911dfb60fea7db08546a3ab01126761e09ab9abcf04b680649cf8c0b800583023100dc1cd78486e0538adbd291d4dfc07cd3826d33f446e8c33e1af8f5df827af0e44f58276f8b462778a72e24b3b25fc83f0302047c435bb500683066023100c7106d10611d15bcd97293e3d539c88f7c77b4433f34e6d709893787220226a1bced8d1dc06324af26e67130b614f716023100e11679e97164e7f40523949b3bb55c6864ae03116c424d3f31ac2e05326f543c9ac494cc594709a2b33de6b23ce4439d0302047c435bb500673065023012b34503304c96bfca0f39df6f2e2261a5ec9971b229bb583671d31544079e3598c0d85f0754a6bbd9b961958e768161023100f2d9c60efe534ba3d17616911ff7dd097d59eeb0e349e932bea06d4fc2c8a1ebedf6ad40e0e8cb84f155a03c67088eda0302047c435bb5006730650231009effb51779eaef2c8e6f40e362f38d59c36376d9de50f019ceebe65bc3775b40f5c7ec6da7a3de9ef6fbb5da37ac52ed023079d205c93cae0fd103b4acfdd782efbc788b84b57675073e509598cbfd712de92b71244b6a8cdd59756756ffde9d84310302047c435bb500673065023100a01bf445b802524aa836d70026fde5af8b8aa5f07d92910e83355566ee94eb1bba4b308b66b206055715067570daf4e50230135c8e3f89fd1fb431cda21b7cfd4704ff44decbc92fd9722c7fc67e855fd835ac4535d81bac65ce32f7a6790aaf43ab0302047c435bb500673065023048b2158ad0f68d0888cce06256f6645212e0cb14a77e80c8b179403390219c72e20dae7bc34475903dac943ad037e989023100d04a1679db00ec9e79e90e41ac297d9f2fd9eaf1ad4f539d77df03e9f8c639bfa7eb084b90ff87af223becdb165071d90302047c435bb50067306502302791a0df1ae18df0787ee8b59a0b59498a04533551e22680ffbfd2b080573dcacd58e751c02f052dec82c0cb517caed9023100c8310515ccc389f269b9b862aad5804289f17cc90fdc3f90291bcc80d6d75129527fdafc9f53d1c51b2869f0039c540b0302047c435bb50066306402305f9cf598a31fa3f8a606b753208edc1d1ad953767e05bd6011b2b29655ca61343467ee5019aeb9c2e09b6f39a130c918023057855c06e48fb1ca2edac962acc7434e23a89dabdfcf61da043d99ea1acfba57bd67dba522ca695dbe12b161063488530302047c435bb500663064023030b5803bf3e0e6e8f8ad310e0cf1bb8e1f8c3bf1fc3dc9a31c053bad8f38ba975f4becb9f1c02713bbd03b2ce68050de023074e6e13944fb31ca35e459f87d2d6b218bf8eeeaea74901953930c7a986d8ad2ecbb953508b88c7accf5d9546db0f6b30302047c435bb50067306502310090fc997c623806376a8bfd1e2bfc39d3e2cf788c17370beede3fbfb799f771bb96f57e760fb97cd9fa69c9790fec802c023045b6931d0757d861e58757f3fe7c40cb19ca12f4a166cf2c8cb85d92c5af5a083ec4041c0bdfce8e3fec19a3193df4640302047c435bb500673065023100b0cb05a3698cd29bcd99f43a1cd242348d33b18e785f24a4f7737fa2bc4f18770403480f74fb291f0656e5686de49ad40230529648988a6951740ef386798f257a1b2f85d9b7780d0656a8b6f0b22b12c19493512a1c8a44853667a8a931e65f82670302047c435bb500683066023100be89fae11245f082da33c519369af52d035a3d414d5c4d47f486b9fd26587de2f3370071b775e4a6b497d89435e17bd8023100cafa1ebcadaed05e22f2e5a52214567ae4ed849b1064de5504041056d62094c353766582bb5e39db4e1beeb48096e5a50302047c435bb500683066023100a837a8a86b7f12f131547ca646572338f94d5254d061d2dd9d6922eaa827703ac4412c8e8d9d22fd91110580b7d5a422023100d52d6fafa2c7ff27279ba7eff4c4395fd1bc407f2fa54253af0b9301bdb2466d622b8ac91a0edc852fb646ff4adfd3500302047c435bb500673065023077af1b64de19115bfdac8cab2245a636801e195c0069067d5c43e4b7f6eb7d201515b6906b309da81dcb3b8a23a666b5023100f6cffe8a39c41a7e365c42d5e08278fcf591e7cea8dd49e69b136c8cad36af3c50e87c2f8b0ee18e0dcffa116a990c6a0302047c435bb500683066023100b7f2f0daff4d602ef0563824d69c93384f30c6f412023c230aeb214ee3b62f103f5072564461f2e8e6127a7162ced12a023100bbda64d39ffe19f081307b7a6e328325719c15be0e897c9bcadbd025c531af37e82eec12afd044b008beb17c31ba609d0302047c435bb5006730650230314d85c0d24fbf8ef92b8df7cea30ed9040e4942f04a303f5b91d106e6f885708b64c1032d0c1f32a5f041b783c0c7c002310096a07683bfda5edd2b793d264aee3223666645d8ea8d49ce28159c8bfeef8217add74a8235dfa94e285e09e0868e6c6e0302047c435bb500663064023048c89077558fc2371a42a281d263daba468df98f8d9272bb00a0bd51276f14d75fac0cfec33c007c74446c61ebdbab9502301418980b7a1a3f5acbdb045c17b7e690282933439232845f50909d248b286d0d8447a25b0841a860ad80e17179b7b50d0302047c435bb500673065023044440336d778b13d11c6741e61daa08fa2cc18348f0873257c4c2ff7d8cc4fbada255606a44ea7a800e299c76a41474d023100f017d6c2243e3a219efbe0882479bd81926361b428360d0dc19432fca0e3306837d8caaf8fc81562b2884d63d435c7470302047c435bb500673065023072312421a7c1e506665e6a7b2c35426d7f61a9c5b81911a6345a0fb891597ed1d44806f4d4dd4a27baa97b1cc2457524023100efda9e558b6a8c2e6d7e6f034cecf0ce4f1f1b15fad7ef2b94b0e7a3dc92e804095338575708020e626ce7281d04ad210302047c435bb5006830660231009aabea32de7694eb8780897f3be182133b7e0ac290a85902fad39218b1150579d38ec06bdf70e66a77ceaab0b13d5bcb023100b6e541ec846d670502da50b6cc4099361ed6cb849701642d58da4b06be6e510e30a595d3e8a9a2602352b1351d8bfaec0302047c435bb50066306402306471703e7ecbcc7d18253a13b51b75adc6d478b520bc9607e369c8639314c13a02354e61d7123e193dadec585b6c9e50023030c0de2ab342e97a2a8bf69f5e55b9ba7069558c5da4a8af8861e2c6bda6fd5816fe8b88049550aa95a5f45bf6be42e70302047c435bb500673065023100c7ad11199fddda3a45175bfdc94b200fbdc38eddcb5904646bd6695f26c0136188e3ff6d6ea1548473b2ac92895870c402304bf96b99a831fb093c55e5dfd8c5ea3d4b4ea6100b5f9a654223f953d273fe7f748339679ee70049112721fce62a19770302047c435bb5006830660231008af43b914fb240c5b0653d4a7940a883fe7f9e0b71f3bd4ecff61e6306d5c91003c368c137d1688e45ce2e4acb7a917f023100bbcac9223465c98052503d11d0d6889a9de9deaa7e1be99fe38bf3ab769339800c453584cd507d922e5f11e9782472570302047c435bb5006830660231009c9cb805527cf80f235b7837865ef9e025eefa5945ff5bf659c925b83d061e45e541364861418aaf9b33c234820be384023100e766ba1b6ee5ce561a3327becff5fe987b0bacb6a52d45ef4e20e6258192d7ed6ddea69968c67850a66d96c438fba2400302047c435bb500673065023100a8615c2caf5433de08a747792f2b0584fe59a8514343595ceebdaf2a652803df3a10e6ad0bb28c65a0b27beb770046f0023004f2f1721e373b1510104162cce796e3d4c11def73566704979281200449c829ce560f31275501b9c684ea7e5bab36020302047c435bb5006730650231008fd44a02f8e9eb0903dfe890a1f0927ebae105f0394d2add59cab5da26f3d2b6329de9e6b1ded80104883d853d6e6db402305859d147a087c30f9e6f9e9374780a97434d507f211e4e0be401c5db170f4e65b1db8ff30b70eac4f0bc5d7b830335d40302047c435bb500683066023100abb6140f55af6c5255394d891b1fcef726b34f89a65cd3fc159af1a686951b861fdf835c1f848120ecceeb0ef74013bc0231009d19abded4f83d6cac472dcf58f44401e8a53d6d8a70f10ed91ef062c7c0faf62660a2668b6bf387bd269eb8f0bdae250302047c435bb500673065023100fcae107a0e7ba799cbdd0423681f579ec9535e6b0b6d67200f059ff1b26d13f650eabaa6ecb2b976b692154679fb23ac02303342e0ab614af9a424bfde55e5941d668c96b4da782f3b5fa7115c047fa054ec18b4caffaf8943dfc43af517588543e20302047c435bb50066306402303e2a4771bf2984477d4f53efcfe08659873e73256f22b3856923f2f7a51367527852f819556a2c3cdefe305c12b4693e02306e3847b2cf16fe47ec9f18c520c32595326f300bcfc0dd6d2f62ad78bfded873149cee7186f67666e2b49e973359759a0302047c435bb50066306402306a2e9016f079ac9a3c68c56980f142f168f1622c3a4431bd61f46f52a8c40365e93d176583c1a41826c297a5be2e6ca202307a1ec223c10ad916f3f9e37a0d748cdfd0a9fe41a10377d694f1ed73f71142d34199bc7d271cd7c05ffd9cd8790432e10302047c435bb500683066023100ff2572aa0ee473fe68640ac3174306f68885e2aca3e83b507858dec38fad95559368d70586fe162c8889ab83378a565f023100e3f433316695e3bc9d3206af018ba768317e1d61cc6c265cd487916308b2b32746df050336fa59fa0ea9ced7c1ce08e10302047c435bb500663064023026b8cae03cef7332416bad244accf1578a176d7aeba57972125e72456f3a61b9d77bf121c6bd4f402b3c4cbbd7cc8882023062b1a8d60413c4c82b10cab50ced92bbc79db5f27a3b0e78495c43f4567c591e597d2d89969458044111f15fd3bc91430302047c435bb500673065023100c404541fc731c67a0227cd3167862f339af11d2a1bc991a6f51a34b4c3601018485e1c22362a2f4822f4490a35ce489002303597a6526a65d2d20d624935d78a0c0ed9045b310477e32839f7109e9395bcac1ab17375d18740a6ff8f1623e4bcf7710302047c435bb5006730650230714626ce74289c25a39ce535982809dd82f22f2611358f0ca5f1a0d3b0ca7c80f9b5c9fd0ed030edffa60fa31c6d012a023100e8ac612d7c6181becbfd2d0f13db95ce29f5bd1a1c9c1f121a90537f2637963947884e199f960a0dfef29eaf4dc9b1840302047c435bb500673065023100f9e6685ac96f954c200c3b7125ffe7980a7da74401ba0c80bce5b093866da16b2ca3dce738f2189d6086eb0f12ae7d290230629549df246152efc323b00306d9b4effec8236039a8fef365925b120750fd506faa647398166e189bfd43f3183bcf690302047c435bb500683066023100b3a31beade0d20def953355812238884b93269ec8820ccf9ba318a9adaf97a79f0bb2fcbb887869fc8b383a5b78dce17023100f3798c0bfad6cc9493b28ac02b0e0f12995f054c28ad143aa33e0096a31dc4c67f7b85b979d09aaf20fc65ffc7eb5d6e0302047c435bb50067306502305d0727033013444bb57d612368e94c745573fe59c4fc6a30fae2f60990b80729d3f15539357cd91d455436c83eba8e790231008066cbde3a6ee84213635be4a23d930d296b6d1fdc7c666c96e816f56b0ef4ed2df52a734315296621c007566557a7880302047c435bb500673065023100c7106dfa0147c64bc0ff99b2c01b649e6ba91d9060ab1c77a47cf7ed0cf5f8c57f57da55db08c61a44c2a52c15f22bc20230076501fe1b3b577434180f7362f12961322a214f2a22d9a39f09a3895816105fd6c3da7afd0b989c6a9617e687c497380302047c435bb5006830660231008881433a95d20941850017cd7162104e7cd61f2d6eac9d24578cebd56e119ed183171acce136697e2fbc425305550ad4023100fd178c3e8cc358eedee324877a8e7cd28ea2c0fe65489ec0f01f54df2ecd232550de5b31e922164a9d2085cf0cbaf5bf0302047c435bb500683066023100f4c77bab4c82d124feba203bf869e8b0de532fdd3f4f91649d00f3ee2b5aab4bed0901e15ce4b8504619c660bad697a5023100e3f548253f9371d334d9ca7faf6e1455a2674f6cc61bc60d4906215c8d747af4632d4f04699e3d029b62ccab139177dd0302047c435bb500673065023100a9594d0eed442db45a714b251ceaca3f110cf4074a78e415949aedd0dd342e58d9ace73aa08c5ecd5c6a1a9d6c7353d202305c18687085a2c1a16438dd177d86d12c64e572dd8bc73d176153f5203835201c0bb65788245e9faed2498c7bdbaa62100302047c435bb500673065023100f8df8224822e8bd04e29573654811d1ad3a885768f2685dca97b14cd58a6fb07375e9283bdf7f55822f4963d8cb79cbd023031e5c9728fbc6fabaf04d56d85a3dfd1acefebaff1fbcafb1032ce900467ee111eecd4e74f68bec554c153e2b2c337e50302047c435bb500663064023036ec17c9fede1ce8720795cc8f7911a50fbe57fb06934aba97e75ac1ea761ff4ea2b5e065958e690886f882f5064c57402302d64ffc302b1bb36bb0b3a6d845fee6379a865654fe53270fc93e00111684f02f61855e72850faa873486d4ff088f1310302047c435bb500683066023100f8ca3a886148cafabe7047bf96b962c34a8196ab5e186d9a60e1dfdc51a4d86d13c2c94e2bc65f2c9705e1541297c89902310094139b876f449c63e0f9a6f0a4f8f86a96191c28dce43c0823157373aedea8b960d7c11b3d80e46f53f901a19d0c5c7a0302047c435bb50066306402304fa6f83b8ec3cdc60acba751f68154f54605786a01cbb08756b23184dc23df7ae5315923c9b121c793cfe56d4dfb84a002300d34708ffaae2f5abeba903dc0e612fef90f8870b04a14d7298f82f5064179b082ed5e3a4735aa7f91f8c394f0b6948a0302047c435bb500673065023100c762e601b03af6250fdd1dc7b51597f5d39e85f6f35ea7621629504ec26211006803dd6c82e082b8a55f764c6ce25d110230668fa25bd4c2bb1b73b041614df1a77b1fca98f0a2a1d78afa0af24a7ca7024cc090100905f08aed99b4f422adb4c7e70302047c435bb500663064023073cee40ec0759e164525028f6c7b6f5ddd680aef74fe237722c2c8d28a14f7b9d3def14e8f3f4ea624cab7c9ded9c3ed02303e7d7973ae5f622695d68bf8ebe5a0a090e28655b1dd8bf8e584850f0e4a6f9842d7ae7eb4c2b35c3023d41da42be6f80302047c435bb500683066023100f843c72fb0f1577297b376ac912cef0fa60d723986ea26b917e367c5492b403eca894b5e8dd82555a51a9768b2aa6f550231009e972b11d5ad29586b72b7fd41efad19dc6f3fb967247fec6c8b2d3bb033d355d325c73944218c4dc123305e644e357a0302047c435bb5006830660231008f0622f544372d362d094fd4bf1e6b008e456484ab0752fff8caf94af4c5615aafa6f037137a55e81d91af7611515b0d023100d6adebbfdbeffd17bb51630574d59fe96e3a5e02a4482494b2840f51421f213b68efbb023b904e980cf2dda1b050bc3f0302047c435bb500673065023073efd6b6874866f1c9dfa2c566f2cd0e7b95d6d773edbbbdf7fdebb2f5c62f08918833fc7d9a7ed8ad5a84c5100dbca8023100f1b2ffabe77651045f793b16292eea3bea4ec776481202ff40bd67f8de6cb912a68cc32d0dd8924891d9a186af5dc8950302047c435bb500673065023007e908bd045216ec7e4a8d37d894c325318e126c3f306983db135d991d6848a4b110b211100113ba74e3df2474fe4067023100ae85123813787b848a5f6630bab7be2a9cef8b06cc5eb898847849cdf6145de2613448cc693e8dbfba7cd8fe364b97aa0302047c435bb50067306502303e59ab458fe30661c57b53a090b968136d26e3201c557f73d79ca4076481e838e2bba0c14e5fd0cc81f2e6d42597c833023100ddef935e242b54a9293388e3ea6da4d4e7f2d3c3f8ea25557d41f6a85eef02c5961ed35b8256f4c5f859a9c66eb159540302047c435bb5006730650231009b308c33ed3f697b03b0c96655132fceba2788056d3e3d326767fb0cffa75bea8e421587265aece0d5025980c28c501d02302c95251797883fc6894070b7d4300d302e964b2266db3e63c5551af7b7ce0378d72ce1c0d7bad3d6c237297598f9488f0302047c435bb50068306602310088425cea6b90b27c92e1fc130e0ba876627c4bc8663155c7bd3fc305233468935920481fa164b2cf6f38ae31ecbfc0ee023100b852784fa7e2caa72220f00e1ce3fd976e43f2eb19ae42109bbb8fa848b3468b348ffc77375e55b0fdab416a3c77ca960302047c435bb500673065023100dc5fd8f2d8e5a8e4efe3feb2850aa709bbb761ee7a486e54eb517733e95e96407295a4114dcf95d4562f8418b5c6876a023054cf971e1721f46ae47eb30f8f6eb6973e38cb0b99875509a91d18de98f587aa36241faa7a3de2c6008fa80fc5f117a20302047c435bb5006830660231009b6bf9e815e5c0ea4a2e2ca945dcf396035c0cc5615a9c5f86c1adf02a92b6da7b6aa01212a7738676902fe21c75757b023100e7ceeee76f6225d77942fa099ca1c2db99d1591686e7db258ccbcd2b75c7e6db6051a036083e98c440f53b85c7928d560302047c435bb500673065023054f5664767b9eaed144afa120d771d28af66d01ab5b5e36d1d93bbdda26572182da0756c3ea1071d6c04b2ab86ddc0fe023100fc51dc2cdec1813d990f1df774610ba237bb09c23f55acd7257856c7bdd8abbf54b7ec1c7c0c68cb5eb44a3068c30de50302047c435bb5006630640230185a43c998320389051a3d68d8615f32b36d0c6e513cf99ac5461305ad515c9e84d66c2a46544f961ae0e0ab2112d74c02307eb838a2e1890ab0afecd8242891fe624216534213f287c64f8e90e9e0450fb9b92a52249fecfc585fab3176afe303060302047c435bb500673065023100d08e1df8172e34dc95add36b3c3d4a153364b62aa11a48c40ffca4b51b39bda9285a38bfec889acdb88ef7311c5849bb02302182c945ff28bf586e63c147a3c4e47bfd76aa0b400146ead3c1ea15500a672b1708dec12dcbf3a09858e381020dfb5c0302047c435bb500683066023100cdd028f22085c733f6b9db55e9d97c33b185e1a764112b31101d9abb37320063eba493aa45fade5e175798e3225ce4830231008fc71383bd7244d855112a72fd8079b652dca578a0a927966c7acd5f466cb34a1aee55773c119c72efd3954f45ecab580302047c435bb5006730650230494a743e43f08a32bc4787bb9dff9622cbde379d07d0ba4eb77bf9dc5dc84d450683abda2b2c50f09fe4595dc931d9e0023100f571fa495b9c0a997d985892f0063b5da8288f5411e1c3d5492810e9b0d56153fe2ef9fabdb7c6baa5ae75ad53e12c2f0302047c435bb500673065023100c0d30191d87dce4b56845c2d4b37551535473ad71e29d6bcfe6fc74aa3006b1df8e2543bceb819e4750ab504fa9071e902305c086ab6569b929e05977da45a18ecd6778fce5217a9b0734e0eb19c50880c222826e8117d8287a52f27d26ed962bf560302047c435bb500673065023020e0820883a7cbcf3ec0fdd8120a3abaabbbc4dde821102f73804d9e7fd77acef07d681e292792a446860a71200e8087023100b5e11d63fb7850187a8c5d34fc0b58d14fea03b71b4182f480f0304129f85092a8e04adf8fd474a1345eca7931018fcf0302047c435bb5006730650231008be7afa3c98677decd1f994d692aa570e14afa84d14174258eda0c4b3593c29049f8593a0d2e34e72d0c71ddbe2061970230235173563154bf2fb509ab7954a95e31bbe15480a567afe498866cb012396f5c8d925c829b3118b253290116d8a5de000302047c435bb500683066023100c4b8faf5ac8f5b228518341349f5b5428ccd9d7af28dc3a5cfffe2db8de9b42c51a8e62e8505a73bf634ea9aa8429e430231009234004394d5fe1b6e84dc041f1999a9acbfb4e73a52f663b182542e3cea7a46d655ea10df766c1f3b1f97289690d6e50302047c435bb50066306402303ee4347f289c0f7cdb52b9c88dc098d819a60bbb108adee73a05c8729ac777e9e27928b1908da8e4ef4831bcf9d8ccc1023003c2cb3438f89a363b7a5a6ef1d6ee8051e9eb0a3a2ad0f6f8f11a6c29f66569c461ef642096f509159a40a5ff78f0ce0302047c435bb500683066023100f08e3b43c8f47496e3f466984f0ac0620c446c0b4faf33dbbe40ef107c8df0dc321d98222a3b139970fe003b7a68384e02310091f6a5d7939b0370535a91435153234332abc44941074d285a469fd716a9d14b5d4a92bd28433ef06c82f591db85acba0302047c435bb500673065023100b88e1a988e67dfb91a4f623016a6f04387573963b6211ebe4dcb37168456b9936c70a00cfdad09aca3b5dcab0ba9de8a02301fa12f9b661f800872540b9d14f1a062c0093112f31c2c568f6cbad43bd5f6e98c831e4571e42a62256478769cf5fa740302047c435bb500663064023075620a4d28374adeac12e04750c28dd414b1565c1676336b508dc6a9acecc6c5c7e1e25908f66f0c684ee06cf3aa2e8202300638e98c1bb2b78efac1b8982e9f62a0c36c3799da14bc83e7c5ee83b0db3a4ed7ff063bd028a08b5b47b99c293787ad0302047c435bb500683066023100f7e582c17e755fa2300e06c9b2a256d4f94a733587f966df7a6ae948435be4b207e2969c3daa98861bd43257b219eaef023100cbf7b4ab1637bb2acb54d0a71619ead2de53bd7496ed216e36192526c3d691bc64f59ee6b0687d776f173049874fd2470302047c435bb50067306502303d8cefa4abd240cc63cb95f929b9e83cd4d0c4e32262935ab53f8caa674b9bc30ad42efec5b0f12ca891ccf285b1b9ba023100ca7083ad29c161186b8eabfb098c5dc9b255fc8253e4206a054d7cd70b2926680d2ac995d28b3e6e1c3c9f3e65e61d4a0302047c435bb500683066023100a8630b772c5ea0041f4b9c9809446c6a1baf54a0a815b8af3826b17ef02c33073e975e972d6611765300dad518c189c5023100f0001eeb77d643bed1e0519adedf448a24476b696631373973008dafe306e00943611c036ac34146461b7bf837ed20410302047c435bb5006730650230252ee0dd57846c745b0c04848de8dbefa4ab133818a5b2c4029a2fe046442125e67fa564039ad82642e5e851e9c0331f023100bd459f63a3d4d013e0257d412d2cb1ad86b758b6634827647d1fefeaf7ae89aad4d47b7415a8c8a620626a511895f7ff0302047c435bb500673065023008c05b68d89c72bcca3ba37943caece99789b03717f415868008aca9702bee0093d5a04641e6cf045ffb4045cea19df20231009aeb2d0bc22920f411719f1ce48293b217112b0dc86447f4ea7fecf14ea6c27dabda02114c3b819ace35560cf2d2fbc80302047c435bb50066306402300d28523b503e13ac8df2508de73da765169d4d4519b28dd90c7c9bbd983f2660e0c2f65569c59b0b5c3f43dbbd8e13cf02307d6cc7c6e73a8aab438a70029003d92cf267e02c97efc76511e71ae875d24fce55bce622c4a77e99bd8305b780198d990302047c435bb500683066023100bc9c1be7106dcd16d4124e544088c727b3318f5af6f96061db6795b7c4d59d546eeee6ae72721db3f81a0b408e7f5562023100f554f13beaf14785ea62b6947b65e34012471010512edce7d040e35ab3f1c0135d6abffaed733753f9cb0d7e7bf28fb00302047c435bb50066306402305875afa1f816796eb302408702e80a0698075dc71268da6ceb89cab43a956661618b770a3b4b945485e813a4fc73f71d02304fe6fd92981d447bfd1ba7787b3492cb675888621b52e90bcdf626813a7ee0208e5fff99c8f87abed01f0c6fffedcb1c0302047c435bb5006630640230245f348a5f52970f90d6d1b77d3dae79f6e6caaee5026fa796ea4cc87a055b52c0ca4525d6d4f22017b079e9acc7e377023075084dd5ca98f5fea25bab5ffef69b626fa99ad2d278bc813957cfb355968080c6d583362a7984891959216f31b2ffe50302047c435bb500673065023100986af1cb6759565b901e903fb907430476b8a045da10d784102d2f74e1f66e5c4cfaa2418f2a3ead5362f839339a8c8302301cc8a18ff35f34dcfaed8d967db52c4f04500540f41b8052e797cb9cb04c5ea978e138f78dca6f7341094d90313e19e10302047c435bb5006730650230040c79832907deb284275f3c529e9d3502754b21f67f65f9c35a7d9b9ac48a7a8382365528ffc3c1432a84212a02d9c4023100f01f97094411bfd6e15b7d96d7590b5d4e553d5015787dcf963aacef86a297b883bfe99fb20979f42adb1073c6fedd260302047c435bb50066306402301097b8281823614ac0ec28ff88e30bd3ed31a0c8e89fb2e9b5f87b1b58cabe175fe4c263d8f80629ac03779a133f4ea1023079535bea08e21957ecc5cf7480fa44ee076c980286bc5893d74fbbdec1f94d58b34df10f907776bc68f5ac6e958402710302047c435bb500663064023046b5f61899a894465b9759e9c07db1befc9214abea23c6bbe21d851381fdda8236ed2ac7486652f187938e58159962eb023078366e12967b8dd09fa7e9b0fdcf3757f4573018464b3fe2cd7c827e9d5af75ee2ae15c024db6c28776792cf2096432d0302047c435bb500673065023100b1bd94efd5511cb2f078a67537acc2a4b235202105661b0b07c6afd2dc5ec496bf3e51b28f8734f5f44ea7e2a2b2bf2202300e921052b1906263296bd5fcbb27d7ac34a9cbe87697039c024211c98bc84f54adbe724796532e0459e4b572095216240302047c435bb50067306502300b18274a4627a86c29e2e2979ae27bac1b35c0bbde4ec7a1bff29f4986f95d1f415de558dae8a54cea86277b8482d798023100d815319b63ea61d8e564d14becbf61463a96cc81f35b4e74ea5c889e321a8bab88f5864af560105eef6b2c8353fc49600302047c435bb50066306402301fe8adcdbe5b4aa19cf175496438f41bf381ec3ef3bc5d222d2123d75c2e04a5ae7e2e06358f13aca98084aaa64aac8d02307fa875d38dd3c8cd930dc06e9e446f7e741030d270439b529cc23000012d13366fae87372462defa251fd0efb8868e4f0302047c435bb500683066023100e71a8a05f2a22f793401d6ed15209ab8ff07df8621bae49ceb9ead3de875b5e251791318f75eb496277b64319026ac3d023100ce084e67a075900f11c74a4f3e5663e0cdc41aadb3d020fb2b29f30646c11a580c3f8f7f55fd99396bada451221f38930302047c435bb50068306602310095e5a3ad20d44bd5fa04d856e6968bc5630834081a1064fb3e29b5576814437b6b5ef0f7f3992e570bfb16719b44af20023100e2c719f8b8ba18fec203aa075924c46470031ea8f489674e0291d25a968b3f05a3c44cc18fe2a3dfd380e555c23ad4720302047c435bb500673065023100fc7ea2695e21b16ce29186b9e47f33bbae0cdfdeff6ed5deff4529ca8d5c2e0873e5d684ef4c19623cc0ce9b9528a66202304622162d8b8b52a4e77c78a362135fa9e559732fa562983f30db18d71c2abfe4aba0b576769ea6ff874f43de527033ed0302047c435bb50068306602310084c33504d74df0dde5840517d6570781a95aa750a0810d87c9621e8079145f338a5e552865a5fb089a3705335b74895b023100e9065a7c1937890abe851e97dbfd71e2525a3f71c285171f8e52a2591a9634e1faf183cb080172d6196504c0f57c6a540302047c435bb500683066023100fc2a17c764a3f3f39b5a185eb97ecdd7226bf0f31020c43b097defcfc4fed526fbf6e446e0fa5da8e4249d02aada1a2902310095bcd74c742ab6f1301f655b0d4dc668397b6e77de14f63ffedfc36ce162ca31ab7b9178134290bdf33cec1f75a2a5e70302047c435bb50067306502304d8eacf08b3241ca4d47fb09ca4e0f098504b615d8f98de7f96bd58557e2b60cec1ab9c7821fa693e6a9bee9f2fd62e4023100e96779af4812535dfe44defa9a93ab0d4adbf86b74314b1d60a8378a62e5cad81f4bf90eb773fb6af8ee5d2a9b2b8e6c0302047c435bb50066306402301dc90b02202a28389e410e04afce77c4e3103b12f1a9642428f14f2a8eef683e5999f02921ad9b799f18cc640b1b3be302304d9d120077f2bc850ec0a450f6ef907e756d0c71dd676da0e2248c62820bb173ec11271635e39cf1acb297a20389aba50302047c435bb50067306502305a4a71f3a99383aa07fe0464611461239380646f93ff2019ef7219c732c08da3bc875cf0b6eaf33ef98c510be1c12c3d023100f9236c814f9e3b073258a6a9bafcefa4c7cdb92108029bab2f1ea99621e83db076474ef2c6a15fbd918e7bfef30f18a90302047c435bb5006630640230205004fcecd0c75acc0f2d335b58c7f626c0ba1dbb2055420db296e35d9831394c73939ff5f1dd4416dc2d260f6d4fc502302e47c57cb982167a83cf0ecb814a53306d6e6557a75d036e0e6c447a39f8440521e0f4dbf950c8b7afb97130a5e134190302047c435bb5006830660231008080af39e654e1ea18d853a7e5f34f75516a803ae3c57f57d94cdbe282067060313ec04e609dce3316003d0327115444023100f228a7577968d7f5b5c747a7ec4560ff10ae7ef9b13d736b9a85c977201997635bdf8e75714e4e553ef9cb6a92fa31c80302047c435bb50066306402306d8b9a9ee8a5e69b145e65a4a42598dd10ffb33a783e74380d0f487e417cfea1d86d56d9a954560d0659a1357d0eb3c902302d9c006d71e298e5208d7a60643c6140f94cc9635854c6203b6796e94ac523b940a8bc7f725f587f766756521c8ec0950302047c435bb500683066023100a8b33c50a294c9853989c0bbf8ece69dc9decb73ae20d5015b218315e342bbddb95d58aa3ea2a2c9bf058c3848bc4df6023100dc4b44f425cb575a3b99497a0c2e247e2cc002e2473aff3758098e17c3d14f435427c1bd6740ea565b47ee3e3c733c8f0302047c435bb50067306502305442fb07169c7cdd9ec00a3ed043655eaeda9db0db5e6a426a1c469611f0233d82345f1c100b608db56c906ff8ee308e023100ac2f9664d018dae5c31c9428a92f939a87f3415754ef27baa23ceab0abe0db9cab45f01887ed29ce36d8f88fe975f1a80302047c435bb500673065023100ce093479b4b69c5699ed3284879ea1e9a384ba4091cb659682a0330463399bb42348009db7c2fc28590af6090e2f77fe02304e7c194eb42e471bef9baccc1e07087cde65051b55ed7758229053948e0ec055e3f77f19006072e4a4e54d6f2e9838160302047c435bb500673065023100943d7377599de205824e7fc4af3802c630d2e4c0df4e6d977d3ff7cff4554718003698823cf3df0784bd5e015d93b2ac02303b6471e7e62902fe9c505c7b0900291776c9283080535c745e763dd4c4a3aa0f336f97780798a176ee4d27f1a5b990a70302047c435bb500673065023043e4b5daa5ebe21f45426292f91572e60730f496eaa75b03cf1cbabeca28c2172b0ecab54f33e13e50d8bf368b6c6ace023100ecebf7a44e82e72921df5e8c14223ef8789f6488145d28f3bcc2c2b2f1ea4334a1c6c7299f004636059c1fee5fcc03b60302047c435bb500673065023100edbaa37699403a7c7018825ea1b96d7b54e87d9c18a3ae966684b36adcf70bc71c7482209fe44d57e2daaec244143c380230235fbcb547c0579cbbee8d80b0d72d77c9162919fa218aae62ddedea7cfdb6e2701947405c4cd9ea40a9f0ac6b4b42010302047c435bb50067306502303350e0ac90b9817ce20f80b24f02aa86bb137d11dc48e69f43c2049b502a875962cb15b0650a4afc2a72188a9792a471023100aaa1ce1ec5b9d7bd6df2916bbe486b11f6e98afad8822c65b159ac1cbcf283a052303b82515627eed29a8ee1f7c3c93e0302047c435bb500683066023100fd4bc97e29bed52f8c705126784bb92cedb0282d45a824f17f2d9531c6fe22683d4818a521532ecdb399f31f412509a9023100cc9b6fb58f9e353a5da75efe4ace0410912450bbe13db8a8e55deb08ec63ec088121025cf103b3c3b821f1b5c653674d0302047c435bb500683066023100bfd669f918f3144d1ea7f45d7d6f8c7a0a98b7f41625348ce9f84b09f24575ede5c082cc7bdffca0b112924fa1ef14e002310080f3ee38a366274243d3d2c60c30252d018011207510d08e64b67af3d18ebbad6fe15e4076bc75bf9904fd076dccce230302047c435bb500683066023100a2b7ec6f0f48abadb88b2a592a216af4b04ee43ebfa8f836b5c23d8ae979d435f4d6a349aa666f53b1b8b6ef4185e724023100d4c340323d2b9a09d604a4b4248c0e01c71dcf569883d32ccc39e376589fa0d34a2dfb929388242404ddfeeed3386e4e0302047c435bb5006730650230122ca97a87edc65b1dbb574daab410ea6fbff95cec607a1657eee20b834825f7b17f122120ce772f9414aec14719093f023100d53e5edf5b4abb31dfe9d234b1be906a27d10aebf324d24e7261222a0f57d814f9e6684d1cba60d3a274413747cda6bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f84eeeec664dd9c55144b8ab9e110b63b8eeb084fe313c17eeefb1d7cbef05977edd69eccf9e35be882a4f4e092b41d0023100d6f84607ce71fe2db5317dccaf658b7015bac0b1f6b1d927439f4a03ef753ce86183bd54938d665ed8d7a5c9e903268d0302047c435bb50068306602310084f7d9f61c34b608d90ed14efbd9cff9b6c0556a4e216ec6f375f8f7cffad3219ec2a2d446abc7225cc489f8370e13d702310097c5ca700806546995a9bc4a9d0c2285c1b8a306cddda208ae1d89b069d7489da59b8fb62b9e9409126137b40bcaef960302047c435bb50067306502302afc2f0727c5862ade1f8d9abada3703b0199db273b97ef9303776e996c58ff6755408a73d072e86fbc9711d90a88df50231008d9a11f832fbe384bbd4d1fbdb71e9298e287e589f9a70dc8c1e2bd1e5e7456cc99601cc7d774e15a74abc19c75bb5a30302047c435bb500663064023014ff361f86337b11a64821440ed1f740ec022c2066718de5a615f10727ce781cf930b9522c757649af31c508b7bfe8e70230297c77eee619e9a07623249a9decb9bb4cfb59662bd7677454b477b15e7076b73fd9ba4227068d3609ad774eedc7fef90302047c435bb500663064023002a48c383445ddf30169bcd5006a80c67c95f3028e3ff125ca8e6db9ee1fce0a722eb765ef5114a354d51253d748076d0230227abffbd523142bf169e1c5a028b45b226084dfd9ae6095710b8b68421d941ab1527ce81569e6b1dfdebb7bdc0c82cd0302047c435bb5006830660231009fdab8d22e6933d518bf23baf42f4fc0362d4dc79520092bec8afb63fe35badc3fa16c3a94b470547a8913735fea3ea9023100a3ae60a88581f0b07f8bdb0a184f03dfc2fca5a573a2e937da5cdf08c9b7dddb1a1a9cd5d9f5256fb09314a44628def50302047c435bb500673065023100804558af5f54b0da8b74886e8f79a573a92b3c81ad639b2bb6e0b1174be2ea7d19d3bd012c9b6bad021aa34ccc69561402301df88b8c66242b918183469f7460ab2bea15ad6edd72f9d38c1b802cbd609044e5e6cb5b8235204c90f7bd4af2b7e8c70302047c435bb5006730650231009c46720a0b58e5a16166d69b4d36f3cfa0c909b9620145f85fab75891b6af96a796617a809bc5dfb0eadc3a9e4d93a4c023018268ef347ab78a26352eb9c3bace8bef85c256a33ff5b0d981494c5c9a376fc668b93fa42d886f016e8b0bfc65f2bb60302047c435bb500683066023100d87452711568d6b39c040097f4684fdd24c3a5eb48c258d85d27bc6ab224ea4ad06f2007beee3653d1de8727b0a4dd69023100e138059057f914463a96baa86bc40cc44362a209b23006aa04453b098bd6803658edb2a40bc977ec2fdcc5976f023bff0302047c435bb5006630640230176a2bad50f6af9b24141a86692ee56470292edeeaa69dd662aa6bb0b433e0b476c9786d81cea7f417cc41b0f144abbd02304b3d54fa4be20a3f4459b10b7f728a51918d87a049df4227ef4fa469f0b7b764cffaa6d6d7b9a145e54bb8c582c3ec6c0302047c435bb50067306502310080eabf70a1068aec9d3f02b67299a972a469f9ad4749fcd4b5dedc2007ec9f023af9054a40fc7a87cf725e63547db9ba0230390f78121d7da6ef4e4deb2dfb08ad2785078e44fb60b824012ad95374a4c0a48215deb552718a3f547387678ba25b970302047c435bb50067306502306f3c0a150509576cfb329e16d3aeec2db132b0f453f5f761b8d49cbb1f0668a9ab168ae812bad93eed64fe34006eeda10231009859f7372f5aebba952c8a4a8b3911ad307c8a8ad942d4897f9e782f11874469d18053789010b212c96799906673bc6d0302047c435bb50068306602310087df1d8568cd552828625ac760a0ad700e192f526e1dc78e59dc78529ce9d21d01cb1854e1f1e90df84d4dfaa4063aa8023100f4fd5c3f999f461a95d38f7e71b2ba9b29dfc5f5a4adb9f76f0593bde7510dcebe95f526e305ef517202b60fdd06a43d0302047c435bb500683066023100c4d64b59d31420d2ed4bc00adcb547022f85c71b76f6dc9e3855dac076fbb968b1802dec6f1c6534b4372b73bc62184a0231008ceae47a1d74b4ae9ec4a6740f382927cab287c0acae3abfddc80c092103ae07dcef5c4930492d6571c0d802244bbbc50302047c435bb50067306502302d7c7cfce3256ffaae22beaa54e0003284f29b95f1e69d13f83048adc1dc466942057f4102ae691702d848099a6f75d8023100c3010a138cbfd8ac33bfd57376c14b95c10c457f15570ea751a045a06a5c7e9974f1e218b3258e85577514c22c4b58440302047c435bb500683066023100b5a37e0e3ce6fee497ccf7948b8e6bef8306aa9a63d9d2aa3f2a5f82694102256b49188c339931f4546d15d49aeadf5b023100f9075f0c309e067bbb4d7810681be7f37c6094acc5a6049d2d2776da9b67ebfb89fbd8fd4c989349f40166c63d94ffec0302047c435bb500673065023100ab93b0da35694076e3af2ebcdcc3855d3d76cd222fb01a65449b338dcaab51bb6480af30b9c139131d1ae4dc2978f0850230453a21600bd6693be427c8d33460f4cf8c0fafa6723b4cca285247d2074c183365bcd192a9b5b03097db1f8e120d74670302047c435bb50066306402304cc65a7a81bf3044a3d431df76694ca694a6c4fe4312e7011b47c862278d313f9deb65f66744189cae933a8701eea600023055c189ab109f6e805e8ee3c3e4dba3eeae1f1aa031ea5741092423c07b998063a171741cb8a2cb93294df62d2dfe5b200302047c435bb500673065023100a6f4e4d030ed6cb8a92fe89f492580dc338991fd43cc079dbc4ff894c7fde1d5aa747917504c60938997195469d9536b02304dd68a868c350be498f481f56345f5be3ff34ac8e2626f9327110fb5457fcddf0b106d1bcf288d4fc286a2f00f44112d0302047c435bb500673065023100c8840159e8fa286d287db10b1c9c527b4383f2e2bdb4af455731332e73f9caba927dcf36526fb154bd66ffc75dcb1fad02306bff17393bd6da0551e59df993fb3e88c6181c39e815dae5adc5005b80c89c90004b8486f3ba71385e4fcfe19912250f0302047c435bb500673065023041a962f9703f2f8f418a04094f2eccae58a141f0beef2e6d801ba2c7a198a1f5ea1f7cc21ca6c335349ddee7e918845a023100fcf77ac7edb03b09aa66778e1b6fdf20f98bd66fce1d78553ae654eb641a36891ea4fca56b0aae78c2f559596423be850302047c435bb500673065023100d8930f3f423de12869e14d5d41e3d8df26fbffacd6a65032185c0de5180ae7428c43a9078db96e6ce7cdeb3bb477c2f702304789c1e549cd55f3dc9c623391403fc8e42bb662eeef10b655e00084032e8401f514994cb3406fd78160c306662c18340302047c435bb500673065023100ef8f43196c9172d9c5dbf488091e644e8bd64d980f447bcbee0f263b55047cbbaa33db2171b2d3c17725b5071f8f860502306f03024218bb182ba94c0898472bef5011c8f02cbbbda8175cff033a8e59809126257bb93e398e58f6c3d508dfabf3b50302047c435bb500663064023053d81a697b759c94b0e7bfc358ac864990bccdb8ba1bec4f4d2c91ff923fe005f33108b071ab457462627b8fb9d58bad02306bc93a2d6165deb748e3fdfb937daf0a4b42a827c214933b1ff7fce986c24f2aed1352eda06d9dc3d7c8bedb3f04ee790302047c435bb50066306402301eeed95b33d7f15a671cae4e9f49e916ed4d57e79569fbf501b08d53b43ab44f154e4723321f22c28e3d1ac5a6b18c5602301a2ec3052b329ba9a5bf586c8f647011d178dd5e92f510ff3477a06cc603a862ebb63b801e0aee6a248978670fd5a7280302047c435bb50067306502310087425d7cb0c137dc86c93fa4af2817ea51e4349b3c4c62ba0c3f1f4a1a1a76d4acd4d801f34d7182f1f42be1b77b0cd602303f7033e51686398b8a3c4d1b41f7eb06e1ba25ee85dc66d77d2885ce6024a8428fd695a66367ed7d08d75d40db0579000302047c435bb500673065023100fd892b4b50e6b4ec7075c7e3c518ca2c0212e99b1eb00ebde71decefb6ea7074550577c5ade1e79a180937688bf2f59a023065b26d51964422fa81705ee61cbec23eb610f4713a10c65826146a6394f830268a6912f27a00b1ccebb90e69e15054eb0302047c435bb500673065023100f4a31cbe69c06b080659e95709c4d14c15397ac27fc6f900ba84b21688c9d015373278f495fb8a9002504e4cc1eadccf0230236b476c2ecd0573e0bc2fc4184b44987b4bcb1f1dc9ffa06bb9167044f6332f19a20b2d8dae4e439e97a7d7ede278de0302047c435bb500683066023100ba3b5bbfb8e761f5da737d863b4249df8ee7330de5a3fd5844fbb9548f9b5d80e8db1848c2edaf38ad3f7f6ef263e9e4023100d309176bfb0b02c41292a756438be5f8629ba287e4a441e93454f31e8d8539a6fbf99d194e9e1788e89fbae93114d0160302047c435bb50066306402303315c94e66a01879684c0bcf99139e0af71d94889afc76e886b94d1d3381342d132eea23d17832eb7983c64017dcd20c02303cd9eefb4b720dd60c4376ccb0a4fbbc2953cf35a69fec65be8ab7ed61ad98609e0f9d9a4c348006a34397b467cc5abb0302047c435bb50066306402302ef9d7b4fa51ff3b247c260e6f885a298c302708760c4be0251c85f2b7f9b200e8d1537153204efd0bfc70d2c431e25a02302657c452d2a77f0824b4dece6defab767ac7f6bb1870624a979db8a8253e18b7d8c249a0438efd4de6279fb55919f3ab0302047c435bb500683066023100e1c06f38cc97aefc019695dce875c29edcc8d76978953a72a108b206ce1f0e48e924bc51e67ca5e1c79d62369151089402310080997d461423db7017a8649dc291c809ab5f8ebd4d6152c11bd5bd7223503d79cbdbdd07674b432218999c5d0bf889bc0302047c435bb500673065023076aa03c9d19d050707965e077b518f1978c2ad6116e1e15c3ecdd87489397b43f60544b9ab19ae91e373b1e44fb1e8f2023100c9cf21356ed840e280efb2bc7b14b1ba1aa84f28438c7457a181a1edf224ac309406711b5d5db0c4294171495362466b0302047c435bb5006830660231008c839a4e1d1e17f6435f2556373620cacfd58d57b52a8ca93d72991a2cbb2131cf8fc41018c39a75675f404c7dc4c7ff0231008d0bd06bb3b6321d7fc650de8f77f8e37eac4037cab9acfbd50235fd8caff11556e4d82b8b52e7aca1ea512b81270a120302047c435bb500663064023025031a8d5b5fea4c3d7816ab4a2aab76b3c0fae21512e34e0e3b1c8d87110bf411a85be1f27837cef185b536d08458ee02304031492a5c3806aa668549bac1f438f0dc9d5197d00e0831bdc9b6459022550ed478dfe385663605030c5967638cd0760302047c435bb50066306402300fa86b50ff26dd91fd7d47caaf96e3716d4c2db28915e052b829b940e139dcc2d5b5a5ff2b2196e67fa6d03d1508eac402304e0fdd96f0fc9d3a99d809857475f33960ca56d9dbdb679c889ab256952cc306633ed25c1eeff835fce91b1f7f4dacc40302047c435bb50067306502303d9e628ebbae9337d3119e629f8a3c7842df99300d6d4a9caf55e32277e63384376b3905a852d513db747246901a4df2023100d0e00ccd189995e251de6835953f4bbd5994619aeb36a7c423434c38236102764d9b31b46e17752de68b8ba0bb3018010302047c435bb5006630640230585c840a267cfe4e2d971fb6bab503079a0068f139f34bb79328f9ac7ae7eab9e04c14479892545fafaa685e19586fcb0230258ab79c4d46af1f7b18e2a42e0c8066066d7de80a96ae0e9543ae384d06fc50723ac3c4fe3c20c8ad23d834911551150302047c435bb50067306502303e6e65119a70465d74be75e655e335d71d5c0fcff39dad609483ecb7b591c864927ad3daa36ddcc186c5fdb8756da4490231009957952170081d8ebf45775808c3d7ce3e03ad255bbbef4626820b74d63457a5dc13bb93ddb557d3d7cca5267952ae1d0302047c435bb500683066023100a1965c7817ca381c4d21569a21cb77735dc9cb6426cd9585d9096670b4f3ccc11e6ac5c53ad18ed6457a5c3b1c7171ff023100982de064f825183bf71101221a86edece39bf1bd9c5d9da16377d72a9008bdb43db5d2d198401cb4a632c775d70ff9fe0302047c435bb50067306502302d53d47324fd7544ef93fe43551e7dfa2d2f69224bd161782445f4ff8bdf1abfa87d6bfa5e3af293593f0391be5c91b7023100f9292fb82003353128081eaabc1fcf873e51b8c081df5f7fd15c1e28ec4cc7f7a1a2663a77d3a8ee07b60e5df62644040302047c435bb500673065023029c207a0fb816ac7276c66f4c8baefbcd6dd2bb1377212b05baaf1a2b01e61b5f1b8d8307995375f5b6f76325c11422902310086e25710b7c0118b1dc538e0279e36b2b84a0da707e9c9c49de7c275f49635e955e28e2c4cff3c4f21e0e79e7fc3ebe90302047c435bb50066306402307613158b968eb63b0615f9e5d31146c9da4b29cb2f7843f00bf53345a1cb0fa72dc1aec2ef077c189115b768fd5df8b202304438eb9a5c24075e6fc55d779d2937c37d9b1f15ba8978398297158db4588e7dc60951e0eab1b3e6a86ffeca5d63848e0302047c435bb500673065023100ea6ccd8e6bbac44daf357d6bbec7b055ae00bd59dd55c4981ab127dfb6ef35c7450a77f04cb5d1309a2ba68f82b813c502307e5088ea903b786accda9ec8d981d831e0995f5987a8500e3d3cf66fced3b0fe97231b3aa72238e56fe3aea5324587ad0302047c435bb500683066023100a9f1422876d7a6cf50efe2d6d56865663cbc6c417f7aaa4ab6ef3ee4ebe4c6b060665b9b2f1bfcba9b09531edc643338023100c0d4b13c72332587085241c460c14da8aa6c932f57bbb43738538f398118c00c861b2fdddf81b56bdaf75074afd829810302047c435bb500663064023076d6ad89f8130b0720f8243973f808c9cb829ef259d12e59ad826572e0750fb445a326229e4d73ff743ab2af3c09e2d00230197373da86aa847286e7848b199a485f3766428ca4764d6665422dfc9ffc912d9b003346335a26bf286dde01d4435ae90302047c435bb500673065023037d34371c3f9e3715fdc824c73ece673559d75064789fe80b960ab97e31778658c767888e03eddd2e1ff1fa16d66719e023100e925b337424baeb95238e7f2793da3535855ed5d81325c45edea913a04ec7b333a050ff663f380e9997ba707543e181e0302047c435bb500683066023100eb515ceecebc7ad11d166ace748d4b05b87e5189f147b1920e3e1fc9d87ab3cd024bba5035777148eddb233857d060cf023100d4f0e595272bf12b17feddaa660d826bb4942d6edf1e588a28df268377d3272cb978702b01a0c6daeb3dc6ad12c666240302047c435bb50066306402301a7b74972f56cc1a8191b4823bc2f75b6a63f3aae3093eb285c39d8168911651638cb7815a0556e0b791c1704f45c112023031beedddd50db2185d4294fdffac1a01004faf269a4b2e39685a82ca485b29ba693b6e3a7cfe061f79b70403cbb19c4a0302047c435bb5006830660231008854754f7bb199b0e86c439e741c514c65e16fe8179a5bdc2dfb98d705abd6e135c8851f86712709993b5988c0f6bee9023100872894f3a22af3f79d0462016f4a94d3f14967bae30a606308ba7b0ec96249197d811c37ad3ea22a478177f0bfa7d18a0302047c435bb500673065023100a3955fa81731df059037aea78ab343d82f81117ef7b367a5bcde1f225c564f72e2138a44ea01849f7b9aa30b722a78b50230131ebf46323290f5b2fc6c0cdd07f1de3f0794f08438548259072ba5048b05accd76c00a760ddd9b1b2f4218d031082a0302047c435bb50067306502302ad9aa115e5fa6469640142f923e8971a2c0548254d0e5a60974ef4fbb0fc081ce83b629001bb7df3d0f2b128e93c6c3023100826cda770b3dd3c5c523c7121ab7abbf24ba5d152271ee5e2d78a9612fa07012eb38581ca4ee8a6c5d6328b0256a831a0302047c435bb500683066023100a0000ac7bd83e74346d2d9545f381a339cddbe4c507e422ba1526892d9e8c2c88aabc3578b03c60cb70f28611866f057023100941772deedcce6c8e22907f777227e84698ee2774dfd65deaa7f4fc888790c1b58438b8a2f0cfb01f97142a56e640dc10302047c435bb500673065023100aa16cd27df4b724c58e260405c9d18aa0227aba44a0eee1c2be06ef680c9fa52b26cdfd5ae205479c6358cce477111cf02301d9d036905ff691fa62b6ccbe9c46a984a0c355d2e691de081365312eac71d643c087ad32ec17ac560a7d0ea071eadf30302047c435bb500673065023100fcb5920116f6345585b2853076eec6df3e3e9ace59455a2fcc05ee12a18e3c7ec08a655c868a31c6b3d43cfe8d21de37023017ac535b690b929a0cbc9c3376c701b24913e1d8390336de3937ade627fd0e8793a3b46f37d221ccedb74ad77c5378630302047c435bb500683066023100d77927d57cd34a00e2c686422172c285600cb535b53a9a391e28dd3ed6493942ee2cbbebf257fb2fae7ec34472a297ed023100b109f4665205e18c0481c97e1786abf44b6d6391f08a1e558302cc7a02c63b57c2d131fdd88964d71ad077227b8aa4290302047c435bb50067306502306c649bae889258cb19d3fdf536f9d0a9036eb2b6cb7121230a0696de5c3eaf021592e736beabf76c71ddfc4b714fe40f0231009d9f79d0a110c071c763febc2a5c9921f175cfc5cffac499e25c6083f99af1dcd116a28213413da471fad30ae22570fc0302047c435bb50066306402304c2b28f70c051b1dfec754f861c30e975906a96b92775d7e1eef33946c285d2dffe40af382f39a1b2cdfe55f83d87d4302302a94b8c9d974e1e80efd56f02dd8f8e8ace1a99c66ec3d604dcb31cb45dcdd44c39f8e3c848c83f7bcdb1b063b3ad0ca0302047c435bb500673065023100b55ddda03f5d60add5d20b48b0f0e9fda869bd2b9ae0d97c4f82f77406393e60bf3c0b9fdefa109aec40dd3f9d406cd602301c268db0590cddce184a02ef6607dac39b4d2a5ed215fe6110d95b184d0e78f28e3d4fb62cc426e33fa45aeba2cf46990302047c435bb5006730650230307ec7d28eada36edf80e62b0579d3feadf463f744ddc4aba2c78f1d05464479f697bfa950f75682f1454a57364f0c8a023100a7655d7f498544035d402a654c7460874d1911291394b78dd4bd21ac5d8e80886762ccff28446ba27acb514a0aeeaaed0302047c435bb500683066023100ebd6b425109220d78a7c72060594723a53995469b4e771d154d9222726aec85464ef6ae29376a5a7d3ee8fe2181efba8023100d2a079a3195bb37121cb0bd5f27a10a08ec4ba96a90489b931812b3c3380c5f1ed721cf9ec8479c1f1ee1032c48f5c430302047c435bb500683066023100aa10bc447c7a9824ca1f18cf7b0f1ff2e5e70d30ae80b10db5db1e411f399f4d347421447118d9539fbaec531ab8d279023100cbbab17e76941b4764318f5c8e3432cc7dd32c462cd54e04b251c4d8ce818ed31d0c68de7efadceba1ccd378c1bcab640302047c435bb500683066023100bdc135270c5fb0c753cff92ea9e3a8c4a6408a3da95c9b398149a609aacad42652e5dddaff14ba05071ece7f4c56fbe9023100f9da661c0d79a1bc6454845061584e18e6cceea91d97e4b74dc23b054d960455045f706cde69085e032e6c2ad26b489c0302047c435bb500673065023034b23d7b77eb4d0d795f002550bc725f1b82072265c2950ae702b2818047fd4fe42acabc0e36056d3a6715f39505bfa402310080dae38d910d925433526700021fdb18279d921d8bb14e61729eafbe8538bc6fd9abf8a75b06914a0528e56cd522ddf00302047c435bb5006730650231009b5f01592a3220e1bd182e5d50942b86bc5702e97c1e89614651e45d8fc846a470ae3329e91fcff28afe6e6381dce2c50230398f762592f689efab79e9c09a6cc1e1bd927849899adcf0b12b7ad035bbb313422d63908a7b258206bace499216d4760302047c435bb500663064023063f86579b32e18f8b3421435c4f6e198caa5023d5f0e718841b4f60aef911c5708ca18ff2d8cb7d4f860b0d074126884023051755cc7fbb315c6cbf8857050a6f174b63465e6ce765e07c07a931a8465f91d1194e54517e4d22fa3a66613f17b316d0302047c435bb5006830660231008a125e92c9750fce8457e2260c8a80e8cdb0778083d13ba1b7390817816fd35d5007790e9ec1543b7ebdfa2b4a5f4e0c023100c9ee2e8689f763958027ae13e51d8817a53360ec74caf434a67e61fc7a1ae08119a6586358d2bb620d437f742ebf85ea0302047c435bb500683066023100a384abaa243f518fcd722024ddb8301ecdbf69144ebe3cde0a8bd89256c916b677464b6ce7e26035b1317ca30a105528023100b4d13cadf2985ed662ac4b9c6fc2d26635e06c77aa9fee70004871950885a4de065c200664b58f97a5e6cc125b4fe83a0302047c435bb50067306502304028727b852f11b970ee7a9ea679d173cc1b66225c0abf1f0ac95c51083cab8c565f8ded4ef9c9590b244b6413e3761f023100ec90dab97c62114c466e6735e5329c6b7e52b4ccdb6967c5116068b04ab3b21f552d53d94c6e975fd315648a9b02240c0302047c435bb500683066023100fbdb00271eb89b959701c1d81bdad28b3b51d32f24657769581a770de019e6128fc791513d23075420fe8991ff03b3d40231008c4503c2136353692bc31ff0b38a5f10a97d9d800bae37ecf53b09e8f938c982dec887dafcb74142f360e23ef111d2be0302047c435bb500673065023100ad01c459194be054dfd079e38d0da1292b6acfc828d09c9c3726e3e6352194edf07830a4e084b858031bf66a636c07d102306828473883682e7322f938f1fe22a3cbdb054de60f7bb5fef2f16213839cc233d1de8a14fdc8db71ec3a989fccdbaed60302047c435bb500683066023100f0fcf6bf1a956d5dfa873d7b2c9c0ff56735837edce1f85f385c5de00c9d9bf0945cb039662cf100f774ffdb76c537e4023100bc320ea232137e8d86dd598bc10f7f8b241ec24ccc8cd0ab734dab86a5b72604b1394efb42ceca8c38e87958df35a2360302047c435bb50068306602310094c02c93aba1a8ab05df481f553419cce9cd5bd95fa736d4571b5ecc8852e1921335bbd7710de106a40a76d1bd533e690231009ee759be7355ef1aebaf6d057af0d3cb89599a70d0ca3004a4a7d534414f1e55afda3513ce5660ed7e7df212aa5e52210302047c435bb500683066023100ec25214d507d40de67de063cc35edca2e0b145cd0d2008e8dc7177758b9b12648fbb19824f3f7f96b24dd665e2fd242c023100b7e2ccb092f2d4f2e23fc32b96a6a120129453de402936656b00ed36fb7437f34158448466c861afcab97aa35a3df7db0302047c435bb500673065023100a57d8577fbe167d103fd2d733bd43b56511a3bc3607387f025b0495b148bb8cb77d92b5a530f9e0eb0c002eabff364b50230467d858e106663fec5f79f2710db238f8e0f0324eedbcfe269df4bc3f4c80b3dc9b453b1f2fd789b9e9ab9483a7765770302047c435bb500673065023044f4ef9174f507b394392196cf0d4eb7106b79a07138fe7669a9d8074de38507c6fee374f0607eea453a5ba74c262ed3023100ba5ddff74d91c8b995c9050ed75039824d028945f4f755b357006835989db6152a5c39e846bdec182f41e74a633ed0ee0302047c435bb500673065023100a5bb1dc1805aaf2df70b5498ce2ec90c065ef229ba8c93dfed0d16cadc512d4b59ddc4e131a5515ed05ebd23eb92410a023056ac1d3c6cefb479ab5bdb549227cfea5151bdfd9e11fce754683fb9162b73817867f2c0948b25a9ddfad028d040a5700302047c435bb500683066023100e0fdf685a0a87873b71bcdd9b5ef4dc090d322d81864437bdf6f6ac0722b242f5a8d04ad60fd313be23cda8e9e209fa8023100f4f498ac473b3f8652414b84dfb33340a0aec5c4936986e4f7b0c728504f21ec01f9ced0ac3103d12c729f0e322abe110302047c435bb500683066023100cb8b01e9cf0f489e904ef7417e34e68fce0d73991e77904fa9a0af5fd0e5eee83c2d69aa6f411412d43814c7eb6d21cc023100b2515444ee7276aa348f394db4668ead7d8d72e0504cee92a3aa2945ffbf8647fd1cfd028590c2057c54284a4bf044520302047c435bb500663064023042770600d6f91e4f92cfb519630b372550535989e7ba76c56905725481a899b1d324bde0caac4496c2debec530c0ccbb023048b5d6329672e8319f54d6fe7ac40f73339fdbf624e7f2a6598177c46338a86fea5ad3bfbc71852c2531fabdce23acba0302047c435bb500673065023100c2208b00f0d73247d3d04af72c006a0e6757798c89de6de706782ab63894a07abcfb2fc9d711c9869d303f630867e3e602304922ab47c64d839a0266b4f881e438d1584f1ff26da00a7ac56cbb3fa6788e4c7b5368193e75e877d83dbe2e4b2304860302047c435bb500663064023036c53e6bfc9f73d004227c8ed3b4a1bcf26d5c84855d2fd564d3a7a34d4849e6edf6bd53681a0c7e6f605449893ec3a202307892a29509fe783ed0a07f8417be21f32fb9ff1d95756f7d5153b8b551ff014cd718174fed7551aecb46b2c519a2b7a50302047c435bb500673065023100e2985def5c2f81e3ac80170397156ce7dbede40a6d85d216669252e84219f0fd995a6b155a6b3929076a79023a4bb5aa0230426283445cc4a4a0a70589f5405c5d78551481ef46a858c3ead5f5d6599499a6b2e3a11d5f0db86ff06d5f31148582f40302047c435bb50068306602310091ca7d102c8d440e18b19dff8830eff5e07c457b7d006215f804ba087ea080648f18eac7c8b6965dd4c5584de5f1a234023100acaca4f3ef6f398dc60e961d8f6a2c40393bb7758e5fc986bf218a9562c833d757b41bca74fc7c048bf14eea9df6a5f50302047c435bb500683066023100da9ad431add2cbc90844e4a90ed3b6876b51dedc9016cf7ce14c268131076f95951e7cb8394300bff6bd389d7156ea2f023100a1442fcf7eb5bf7be96d627da5eadd69f6b8b2a882e8454ecb85d3a393632b13d790dd4793e2fe4a20882d92d72dfa490302047c435bb500673065023020b7d54a78257630d45c47dcde5442cd5b868e78691a91464cc1d5fd5e1ce7fae243868a8ad5d737de7a030d134aeec4023100d143678494eb918f8b816aeed1a1d01ad5b8c48c5ce1c8068f726f444ac2c586c09c79d8755b58d4193efff0e6980db40302047c435bb50067306502300869fa654cfdd617a16a86a7faa0ef3ce8f07123ebd8312fd6d7179e9aec349cf4fc6124e63141fa95675aa61f362d48023100cdd4b99c437775df779fe9fdcc4a90859e482d8999ea44fe982d806327c37a71b03cb22c67ede514789b9f169b51279d0302047c435bb50067306502305297d7f746780752ee68b992c049051f22abd79bd90a2be1fd0bf5b8ac10d66e7d855d285a04c15ff30d1ccfc742a1d8023100a3b73ebfb8d8f6d8e2570ba55bb67a7e8f8a391aadadcd3659ed5edd16d48035a3f4b60f5b77302eff263916128261980302047c435bb500683066023100e188230a3f74fd686db9d37492d22ad4fa4fac48898bf006a2543e637b78eef167d6d47986da3cc6acab5060ee42d421023100c03d46cad2e677a2cb9f35a82a93b75f98657e661d132a76b30e7bde5670600676d72de8482fa187e4b3a8fb348f36b90302047c435bb50067306502303f26a330958b48ca1e3cbf1d353a9fadec1469df8e1fa974d682802ff8f8dca0423dd017cc99ebbb40529d4db3339cca023100f7e31036afba19ca4ab4e81b6c19b35ae0ca0d1831caa3f03a23f893bfc7ea53f6efc6a441b41664593bcca563285cd60302047c435bb500683066023100cef8b7a163c60bb870c1a5bfd550833732fd1e99d123529300807388e9a23ee3c7a2d270bf396efc58fd14870344be41023100e4f2b5e9a4dc312ec4e8e5a2d7051265d30b0b8030a18ca5c071c4867556a5c529a661e4ae6b2ab472c5280836988eea0302047c435bb500683066023100dcf3f983b108f23ee4de5330ebe95ffa6b87fbbc34854bde72dd88a7e106415535d639c4c5b5d3ed6e5b4f341ece23f2023100cf43c1fa34f512201ec1c42574ce8139fc69d0dcc3b37e18c47a39e0b01741cc3f856b1a4e6cc94a35a78f9b0537d0c60302047c435bb50066306402302fb84eef27a6a5128ab7251b6ea478261f4ab14c2d8703ac0d421b72bc2f663a10f381a4f8521e53ddd7c050ffd4a012023058865be885bb8ef21b5eed297f11b8cb45994df8c6168dca14db70207336d8168e3f56bad9520dfc74d3ef91f6e9024c0302047c435bb500673065023100ac89628c576ad585ab345918c01bcdf00250eb972e87336005c988926d763a08462100e8b2b17f0363eda9bf0f6b491e0230686abfad3c95a8baf134a59bb6a8a4afd75e1e4e4100ae7bf4639f26921dbf378609173a302efc7f417152d02d10c63a0302047c435bb500673065023100f7797182736b9fc419ac378878a0f578d74b16bedc91e6a207246ed59f39c17866a784a071e7707d6a22196767d6e14c023039d7bba16b84c5de4216415623022cf534d30e831500e8b2da0a957c9e3a549ff9b1d402b512ad17d7cbc50411f2e8a70302047c435bb50066306402300346243f9ec60965456330acbad40e7fc52560dbedc5003d89473dab011faa9d951050c1692723806b840c63fe994c06023055ec4eda13db8babaf6e66ddd0183b7eec1ce3269c89bd2f3bfec41d70208f0a526e54c527ab27c96e3cd6ce97fe948d0302047c435bb500673065023100f83ef399aeeaec641392756a554f1e5fa73b2780cbe9e6d70245b3e7ed5f2633c2b055ac76d99f9d38b51bfc270f804002307a2afaaddc73268475fba1e8875aadbc2eda3df279265d7882e2a65f3e7e2be9fc9a230a32dffb3b1df198d79320cc190302047c435bb500673065023100e667bde3cb7ba18974e8016b0d4ab03c19cdfeea385c8a11a52d71f2553f9efab4de30873a340070e9b35c1b3fa003be02302ae8b2db93e64ae653b32964877b4dbafe434659be240ffd95774040924b3fb44b3603f2d2d9035131a00692ba7fed2e0302047c435bb5006730650230136fd506e7ab364af4a0fca0dbe253dc50c476e306b065d1081b8b9b28ed75811c60e1f3f6f2e48ef6af0519487764f0023100db2d88d42572be3308147142ed4a6db31f35f5ed09a2bb46fe97f1a5c74d553dfa23cff4f2ac455444aaf8ad40d8c9f30302047c435bb50067306502302d446b8a606bc6d51fe7c87569e0174dc8512828e40c3409c7b31e27adbadea16c10a063b2ba9601111c4d2aeacc64c8023100c3ad06bbbbe2181344882ef9ab8fc95e50200515e312b84bcb5511b0072e1ffba4e46e1c22d27bba64c355ce82a6e3dc0302047c435bb50067306502310099a9ba3b296bc7106fbb7a3a8ca8b701c0d20976ffd4822f51c5f55ac436ddb29b2a74170d9659f7b912d6244a2e65d702302ec2729d5455598bcec89f658fdbe9cd71465cc000a88b8668ae63f941b0856f203e82547b90cd46f6a9ef63b04dd1aa0302047c435bb50066306402303a2cb270707859974e4a1cf0500687b7b73db1d36eb61985b4b37341fe9ad25ae53467e8801d5075ec51297a0eb8ad2a02306614e0ed0ddc06c5e655cf4d07c82bdc1ba5dcd29827fb87524af4a44e04bc123a92c290f38689978079f7995e172dc10302047c435bb50067306502302367b2a4cb00ecf4d9264f0e2a1ed58d2c85aec5a1dcf7b46054767a55d68aacee3515849589ce33b4ab933d15a92c29023100e3e3ca883a29c9b97faec1089c65e64fe238a9cbf8b0f8fe4cf443834174cae073f67953d37672eeb1f9bee394031bf60302047c435bb500683066023100d84e241d043f7f5e85214be77b4c073cf9f651f41c742b0de59187a4eed15e2575b521972e82fd5b3db210956910605f023100badebaa0c54ea0477106f26b9b1889a9fdb72d40f391920f40207ba5c70e13638879907c02bae8396ccd4fe7998831b70302047c435bb500673065023100d0234caa5d12ffe417e51d76c70df40a77575018cae837f49fccf29fce83d2324b432a1dc82f55913be71e209de9fa440230643076523e5d9453e66b55e5b0119616f7e69fa57e8a11c00a108f3a2f4483bcc5fa75bbb73242226bf235138d8bcedc0302047c435bb500673065023068b7d1d7015dc714f790e7a333cc0c621c735de1f66b1b806dc2f914151eba416dcf9836946a735d565d7321357fc146023100b7c5dcdfa356a62bd7c920f63cf0658d8f903e28997c8a1c12836378a0efc69134236e59d1409399ca3f75733d228ada0302047c435bb50066306402307389796f730aa38c134cb0846519d8c9c510264534d02dca37e206f11f211201774e1fda76565b64682c3b5cbbeb959502307345aab404bfee72e38561d6723cd98b8a51c68c02a6090347ffb2b9e566ac1faa4abe7a34165b3e5014e124b7e3560e0302047c435bb500683066023100e50985526520a6044cb6f8c4509ed12b160ba3ace02da208e05b4950aab4a14cd9abc100c1adc1a2363a345873d8d49a023100cd6607504a77dd9507800f39124dda9476c65a0f287e012aae272d8bbab4529109ac13276a6f125f3b4f0b6b26e206c20302047c435bb500673065023028c901ccbc6512f8248abf5a31ca36f82eefa90d990e6c72692f3049bc078b593f7961949c95ba8f33d2b13a095db544023100e783afb54ea34c992c3807556717120f97fb782fe4f97dc22f776d75bc90e22381247f43270e051b760521cc5adc8c640302047c435bb5006630640230331104ec14793e2f29c8f8660add80b8063b12a506ca16f7f84776802ae9aa83d545c3a4d46ec60b2059d5a76dfd127f02307586acc27c46e6c4433943a2aa751d880a2c8bbde345797e45b37073b20584a477da96a728f4aa91a780842bf432fc5c0302047c435bb500683066023100a240c5c426a3265416b0e8cd71b00d47afa316fdecd8c5c3418c25560bd9ee652f87d71deee3ccda052e59699fecad52023100ff64b1fcb255b5b45f3126aa956ea9132d05924132ec6184f284e5b29a48a7d924b82af143b35c4bbadfda6cb273119e0302047c435bb5006630640230321d66c47a1243f795969f11a829ed6f3c7243678ee55295ada5f84d2e03e3f71bd32ffb10a601b17dd9a981c33f977c023023bcff2045932134046e04e59dd7746bc941cabfb88ddaca8b36170e312366e77c68dce9bece5570c577e17ede2779e10302047c435bb500673065023100e1113e55a1788ec55e38f154d961a0a664f148b22000a9a932930ede33aba3a3c5384f3f259ac626364e59f16225340702305f47e5b9aabf48853b1adbeeb554de34b8bd959a42015f8f3b3325ec251735573710c92765abc9b415362b7a5f64d5640302047c435bb50067306502310080edb0d5673ffabe341ae9fe0a1509537e07e610ae452946c02377171c191b1bae35f948184ea4f927be8b1cc27ed95602301101f42153e6a925c71e258aded3de0c549fcfb52a79f36c7016f9fc9a3bca22f6a093e39b861cce2030cb3952fbd2320302047c435bb50067306502307e1f2e88dbdbe6b84ab1e05f09bc32d785c3a92d76f0f53c13be874cb11c703f315548b032eb89cb0686de148ab65388023100c1482d338cb7b11902d6d3ec659e95856d7f76fec205e66f572e2fbd0317d957a0d25ca1912e6b304ec57c00a7ef1a0e0302047c435bb50067306502301e7f802b6c5d2059c09325f9cecb58863b78df0c80a7939832aab281e70e6300b9c09d9f75f4a7df4b1f6093406a8380023100e048aa0b61e98552867082b1ae0beb0dbc21685333d7794f9605a93a57581d303e0dfdef6b8d892018c5322eeb1533c00302047c435bb500683066023100e6753c94a4ad4909d2b7efccde1f6eaad2135e3f6850bca9dc88549b15f29372635c10f2850930d76cea10d14161e460023100b0accd3fec5e4ac8439e908d0a88952d436c284be0234d21d97c708c56b470b3fcb094eee5125831cf0c933b224ee7de0302047c435bb500673065023100bfb3a10231eb33c33b6c2e1dd8cfd223e59f78699764f7cae888d5ce728ef8d0d9bf73d5511affd55bc06039ac1e607802302c17a565648bd052c6e280587e884c20d279cd7e59db148c0a4382badf22281627b64af879e3cef76d3f381f877521230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304244e5b679be209be6b8e42752db0e33ad7ea1a760e59117eb0aded98045d1b8f0ac2ff6ddec2c6ee6f5cd29f38dc948023074e24880b9ae4b7aa369d92596b529ba81c843b80ebc713a668713c90a7e03d398b58658825ff361e8abc08f3111a2740302047c435bb5006730650230445e5a24349c1dd543a7cfd7af752eb303ac0dad7e3d48471ad8a1ea003eb24fa58074ba446a13df5c412ffd89ebf89f0231009047c252fc4bcc2068e1d3de612750994259187349971341a00f80f377b5d44f710ddf9f7f3a327b46a1534fcb63b2b80302047c435bb500673065023100c63b2cfe662ffd3af0f26529f1606d46aacbf7a56b6f7619f96a099444ff722610e3681f04b35e72c06204a5b9b966b3023045b3a5705561893269719ed825908dd94f4a9c01aecba4589ffec56e290d231ec042e5f2d3fcda0e6d9846c2af3b569c0302047c435bb500683066023100d339567b41801ac3c88bf21c46ce2aa7ceacebd96c9c3b31f2e9cc416dee4cb073025dda2244d56e85cb4308f9202570023100d77e6405b616c17e64d0a945b2555efe6fbdcb7ef8269815b20c43af7406c966a5c6197c9db1fb213d8e600bd5ec64910302047c435bb500673065023100cbfdebc9b60dcc04a62f45ad53e4f91de8e7b732ccb7ae37348f973c5f8f33e981bd503c7cf1b2606e0af01ae4db5a7d0230745f482590a97c10ccbe7bb0d4e22c79e558b5e913457881e4c29334826835842feac77823cbe44599b64f865ccffb670302047c435bb5006830660231008fa5e2bd0def98419b17d4b8efb4609b47886ba74d2b9afa3385049da180a61c42df9671990ab79d759ccfda8a336323023100c9b3e87c5a8bfce89a526965bec1fd9a7226208fcafe32d52ec50982c4c18472f041c01979c4f2c60f4cdb571df6882f0302047c435bb50067306502305ceab85ee4a0c64ebd119f132ff043073074129c6c888342c60506687add95324982bea5d394cb506b26ca598dab1b15023100d5f15932990bbb72d3a4f8fa76867904815c0c332ecbd017c7c0c6827be9625a0942afdce45d9cc3c5ced30c87042d410302047c435bb500683066023100bba29276fe9c7de330a1a720970e7cbac88f5f6892b77b2676091c5959b1057ccc117fe69e2a8baea93449fe977fad94023100f33c5cfb39be39bfa29e47cfa63501845e4bb21879f3dcc35dd7c5d7651fd4dc7d2b7ee19e7736be59fab52e0d0464c50302047c435bb500683066023100cc386a96d19bafc950488014aa97f249259ebc3159ce4433fa27a43a98528dbfdfe3ce10fb04daa3554ccca433417fcf023100c35e52107a3f8f95a10910947eaefddf0b85a9e1c001df91bc90b2db9a31761ef7ab3fe0d3396408e4656733f253f7770302047c435bb500673065023100e720d781240b1991ac4e98e2da30bc57606bccd66f310e1e2d88cf0e7175ea485e251d155dd9d1478989af6d054474790230015b28e87eb618eb6284572fb50128092bc839aef040436fddff2c12aad213ce8f046ecc9b24be1488052d6edf1709a40302047c435bb50066306402305f29c2e787c5e5ebfe376cc9c000ec0a58ced2d2a2b29efccf1181e6384b50ba2d15b00d53fb873f84dee2258a10132d023078a58028adec85dbdbaeb3e6b86464f77a10d6278c5e25fc85251738aa1627602e3ae62dac3b7d21611450d321ea01c50302047c435bb500673065023100b3cccda9ef657f7182e83c3a7df08a1feeccd74f6935642136140a9a1cbbe3b3a0056f3a4b0ae77294eeb420baf505d802301fb44581120338de73421da23f0d0b754ae635927e0adf3e5cf3fde54e90d78cb3b396524f861cd1cd7bd1a5368212930302047c435bb500683066023100dc2c7f70ab14f9e4a768c8c5afb6690af4b5e36bb14a6a509f68e870fba7adc827309b7e383a8dafda2ded0d971fde9e023100b08f00162b02cf180e7e247fcbf7f205f93ad3fafa01fb30efbd575f74c83bce4b837d260f2928f943aac14d950e44900302047c435bb500673065023077baf66eef3c9f234383aa4f50ea9b66325ccbc79fabb1e7fe59e66e4edc28a71754cbe40e5e9c743931a63dee350002023100ef0450fb3567b1ed59fd41826665e9a5dab9ecc51328d3aa497f35a8a6e312ef9d0e43b006e84806a6f6490c86ac2c820302047c435bb500673065023100dff0f069adf2471fc7522db7b44c8517835f26ef6012fff175e3ebe0c9ba4181678e450616c96ae0950319444b887948023039f68dd251a8eb8a95a225e7d5f6f13a463ebd8502be42482074720ae954c0cc260990a1e0651d4d3458fb39940344690302047c435bb50066306402305b715488c9815da16ef6a4ae17c74eb9080dbe54eb0c2ef5df05ff8775695aa43a0d9fff506599e29c29259bef18e97f0230757c37c3d037afd8acdfabcb694fb74ba10c0e31e6afcf0fe7f91514bc7f94a577c0eea47a715bb8fafd100889c3cf060302047c435bb50067306502310086187dfcaffa315ff34738d65373b0c10d1cbf1bd42411d15421111fa3ade1bcb4d057267ad7c3447707623a392e004a023063a38f7d44ac50de88d157b18df9bc1ffc4d11d2c1b4ca2764210d1355644220fa2b7da609a2cf31468ca117da65439d0302047c435bb50066306402305525da2846c18ea9fdcb85495cbdb1184122f7b424893eda6df100063e17faae609491eda3a1ac2736bee6cf653bc194023016c5a8897b41230d0db946c8b3966cf7160c01939636db04808674b4a44bd21f0b72e26d6f1a182e29907f4346e9ccdd0302047c435bb500683066023100a05d3f23aa005124fd2f011a6323370651a1963aa82a12365e558f99ed675d21f3279e4edffb83d29305677a979c19b8023100b151df135bd80549a0c06d915dd0a7bddb742e3c18c7f6531e354fd51d3f64c7f5dc6986b05025a15d30698c787b6ea10302047c435bb50066306402305dfd971282b8be01bc75851dc2b3667313061d56089191b00eca2e415e20d84b4a7d40bad3e75e68c14029c9b60d58ba02307ea9fd880aeaf68af0c5e176fb639b6cadfed51cc2891d920ad6edf17d87f4d4fca2027a2f8c38e322e78e0be57251040302047c435bb500683066023100d245c11019058536825ef4668a432840c7445a10acaecd65fe20512e31872d55b8b4a79df1f8e86839baf45729acd729023100cc1c0debe5e5f032c9b69aedf5d566f59973e79d3af584c501085518002b2ffea0c52395b4491c09f4b8038870e45fc60302047c435bb500663064023061535c486bc1575629af489c80a4ae636b239ba967fca77052a1636d08f3dd77cb6f2a758cd346d8005d69b47444cb4702304587cbb969ab3e80c624f43520bbb64f389dfcfa1405caa629d7bbab452752cc60ff5e54ade12e2762d2c9404a4aff1e0302047c435bb500673065023100dd16f6921ce6329b8da4cbfc387c8a3e8c0e60c6f21bb058d3acf40ba1537c4a2992420b17cfaab4264f604e329f5a2e02301386b183a285c2c572aa3ce977d01c960ea95ebeb601cd3ebb8d33aa81857fc90f7e6cc6ca866ca117a1c573d2eee16d0302047c435bb500683066023100ad5d0ba1328e59b793b1c28bc31b5fe42cf0dcc10749c390b0180ce26c619fed2915e67d3c52c27344172f4ca39c62b102310093829e50856506b7dd14106ec57ecf747f5ee788b61191b4bedc927007705b25c0c63f3b9237d794ca16fd11f7aac3920302047c435bb50067306502302a9e3290bbcb8f44b2824e386cbf429447673d537bebac895c42ccda4403a9540054350f902183ab3866fd85e8f80bee023100db5fc849eaefb1aeb00c7c550643ded99b0599f0383047727e80432681d28e8cab8c4df51378ce86670611d8cb40427c0302047c435bb500683066023100ce9a2a1aa3f74bc79e9e55cc2ab6cd854c44091b503be1993f348fa67012216b1cb89d69fffe621e6b6d0ab1eee2e5ee023100a755d9d89524837169cb2946a6ec5ced3686a9e44729a50d4a6c4e3f7e9e701649654be0418f608674a4f7a57e49b7050302047c435bb500683066023100f259120599858bdd2556e7bc45b837b435a763c22b895c5cdda655bf58e0b6d107689a79c25c72f518a241906711b0a0023100d98aea83f344e08b7f32203e770bbf5f4ce4177358fd8a8940dd9c1553224f1d01ff1ac0ebf0091c7720a9683b63ce460302047c435bb5006730650230519dd18637af5e47ee62a061fd2dbfad6b53ae8a5576f67bbb82ca0f2f1dcc4a963bf35ea948a86db07d26b9046113a0023100d7bdcce34e5a627bffdf05a08d53926eb68957dca3981b3cfa19ade856ab1b694c771e9585a7da6e6ecb25bba92d71a70302047c435bb500673065023100dcf787d717593c19516c2979605aabce5c0b6064988a8c79f79946c98d2e5501a1a554e196d3f943b935689e017cc06102306fbca4b23b1fc13af498eb0af530151aee223a714eba3eda2f6c92b6dd52eb073342533ffa7728839c6a151f5cec6b670302047c435bb500673065023038aa21343745afdfc7bbefd8c4e68e365e14bf365a52acd14589dc9e2cd113545b4f3298f9330095290a5ffd9dd1e485023100e8e9b4c53b2706dcb6a910925b11d2ef9efd9140ad37028d107edb4adbce383334174b765f8ee436b5615c8cf07de89b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049765f83d9f18159f3b8848285c5d83e00d96006a8981abf1d6d63c163bbec6e3036d8dd4192e484fff59a7cc9d6490d0231008c179fbb415c03ff4293d948e672766afb073fa4ca931b73c86aa5c7ea8857cfc026acde2de34df6cecb2b99c6a03c2a0302047c435bb500673065023100b240bd5f1d96331a7121a997b42917544596028828e262f131162a1acb0a128d0428f032c9180261bc3cec6a44f6295902305390b5bdd070122eaf5012e629e88ccb8e690536c4ccfdf5121922840dfdd6e492a86e24cb19fb637183e24b255ce4800302047c435bb500673065023100b64b83cb2cae9175485cd5acb1cee37913bfee4a0294ddf83740975d51387b7bc97259b3c20074d72a512fec4cfd67ff023011ebd134220cdf0d00bbc42974f2b6646dbcfb1da8807194141885bc3178f2607bb13e9dc25652d36fa79526b08dd0b80302047c435bb500673065023059af42a084effc23e91cf85c36d62e2caacc06a3908e03c48c488f3867f43593717ba01ab3039b88d209350cf6bffc99023100ad682cf4a2bb1d21cc20d0549166a7c9134da3a1c5359a737826ae36ba30bd2ffc77d879e0320d950952573f9fcb66540302047c435bb500663064023037d5c9a831759b0ef0716708812b18f63881e37159e0372c3bc64e2275cd6915bf455937cb94082f375c122ed9760cea02301fa1c7a687c01f664d35e186e0678dd59c3bc68079c45d23770f54565dc407ca452d6fa974477910265ab9ab4ee0e7ad0302047c435bb5006730650230326669127a88bef4ad363218d13c1c651c17c15400f32e45e2cbdc1538bb0bb2dba215efdacb244ff19c012109de5fa2023100f1ab4783a1d28cd295a4472fa7236424b949e40ad9db18c41a3aeee5d946084e92147fcd826ed34edebff44fea6876a50302047c435bb500673065023100eaf21af7530bede6b0f1966a1eb26b4e7746985bea17b3c201245352a75d23df695622508a7b2db9cb23fe4501c37dc4023026e536fc90256133093b8cc24c25e5537d7ff71bd5f1a2acc1dcf3dbdb8dd74a8547f647a84851fe1a55dfbd8acb0ea90302047c435bb500673065023100d3da1bf8ad6d22821ea89fda6e474131d9a3c18f7289e487ed4d0d76b22f0c4dd9ffd43f48b43f8b830929b6d9e25fa502301c45e67c00c3deec8c3d80fb26a6b0b300e93c33cbb36c4946752713d1d5d1972bb931863e273ec8f6d5a2d1098a17260302047c435bb500673065023100c7bb54844a7da274864ed25ffa40595daaba3801c11e5247a57be4f07c85c6221bd19414b8d44649c561e07b6e614f1b023032ab5dba09632c221373f44f4ba05f5ecec9734b4462a271e965a5cc0cf0c0f13b3d7078f60ad22c29edfa6f6414fbbd0302047c435bb500663064023001fbf7dc640d3789793407c2c41fbf739de937419d9e7260851223721ae1f3894a9cce7d38d7d2133020f011f87e0230023053671836a845f621142d61604f1efc3de820a28db892bc36f3f35049a7d2008f145e31608197a3292f8e441061db1a860302047c435bb50066306402303fee06a6184caae4974effad8f98c97ae507846e01be4842313f90bc431b35bbf52c62037555d3e32a61f0a2d9542fb5023015e1cafaf17c26b5057900af29af7b37547d61cbc0f030400edc9c6aabf7b016ffbd85b4511333a1155670bf6232ffd10302047c435bb500683066023100f2d9095fbb80685b38c8c581ce11d1aad6216f76f6837d4df73b568d80a6d02fc36a4ad033a082733a597f46c71ae06c02310082eb5931647ade2ad29b21ce375b30d457ec3295ff4b0f67d64ed1d1cda31aba353779e9401ead266e7a3f08ae35de9a0302047c435bb50067306502300b1382ec0bf88c7abe87c9168daa9d22967a4f2bbc8c89efdd9fc0ac0918d13ec969f7e7615175edb8fc97544a8199ce023100f111fcd4690772598d93451e0830758c7224f14956908c6561f1f3c2ce8a866749efcd9fc17c47cac84d1d769034f7380302047c435bb500673065023030bd5dd4520e97b72494a65757b085a9697e5fffd959a4af428009ff7bb66347d2f2b1f787ca4bcfae40d670cc82454d02310087db3184103ba2db1402655045b33d65547f0a3d453f37e3273c1112a182dbe0ef30b9f3e1eda19d31fc3dd51e859feb0302047c435bb5006630640230671269cc2db716ae25e00bef7a1e7674b5a12b049d9261ce28db08a74a24316b465d893b1bbecadcb12fd38d4afce4ed02303439eaf3f3adae7c597eac4631351cc584c7fdfc274200165c253f96c5ee27f6609d11a69f56c330104ce6cde0bff6410302047c435bb500683066023100e16dc6a574fc01bc0ffc234b863b44ad1b6c2073bf0123e4e957a25678feff8f0b1cc82d93b7879e48e301a7b38e446a023100eb1a470ddec23c4c7979fa21f2583091539019204fb2ab7edad06692f7f9174b1329a6725ba7e380b8698772a58558390302047c435bb5006830660231008a5d2c68a82bb13b435cf0cbc9ed719780da68c289a8f508b6ade3d421550d108fe53a9f3081b088707def8fdfb94511023100b6be05b5666b4f279f5555221cf5e96eb29de02355bf696fdaec003d2aab9403784a6182d226410b04c9d06068158d3b0302047c435bb500683066023100bdc738737d1f7304173d9d3e3d58101c3ecadac27e1d2f2bfcc58f1c03d0346da73741ddcd11ceb1dcb1e6d16ad5cf2d023100b695064856eeb8d50753f1f43909457fc1491c4beef930816ec3f8e920679389038765963e652da861501514634425450302047c435bb500673065023100d1675a6d157e3c9685143a01bfd2591bcf0a4c0bf3e02caaa2fd1bbb6f3814ff50da2c146c8a72c76332378ff50cc37d02306e0d9c8b6e0c2f8c8e98001ceed34b48d7be978a8b6f0fc08c682d014e670ea25a63a1ce24dd0ee6a00614d802f181320302047c435bb50067306502306f1a225b7490cd40f0e4ea5d62c4ca06b06c65f0409c594647e0791b9520dcee11022fed4df98b493c8d00532423074a023100d62ab5d60e65c97114ecb98fbdb6d13dc6815da4424cf1288c443e10872a08ab1a45baa94317abb8d94bb1e52fcd46b40302047c435bb500673065023100eae08f38b2e312abe01dbe33348290c6e5a710a85deec3201d373467422c800f0162f3e97aa7504f896abd56d3f524a10230432792c53d6ebcca36a937c03935a5bc8639ebe3a8471a5c61b482846dc4dd9bdae430d732d96d6fce0898406d0627890302047c435bb5006830660231009ccb5d61d71a0daf4e578eb9a28c6416c8e1a9c9308e60bbd5f768eb9ac8655c80385a28a85c390b61de42ca77d32e1f023100de1c892fa4b7dbdb005329cd9e7b779e68b56af2988c3377448944a013928ddd4fedd55b6fa4d631c5c2a0dc47a6ce210302047c435bb50066306402302a8897129780cf820dda22c39a2185750dd4a4f53161c72f523931a70a9f822bccf0ea8aa560f1f0f46c11cd469a57ba02306a9c79f36ffca3d4b0d513f47cdeb7f47a4f1a289646e4312a7af0e6a52d23342ab063f3f76a38e749840c632b7290600302047c435bb50066306402301a3975f12d7a67b6673e321af544b1d81e96d90030e9b56ce0c2a55f4bdf34c44c14f58d6b0f8bdd903844112dbba19502303abe9faaab89a8e95c980015a4bb672ce2f5f7a8ffc87aa6c52c8086a688f8f92c2c70a1db5400e0eefccbc07ef35eee0302047c435bb50067306502310089199f721519ed39dc09c83ebcd23541ff688958f2b186b2be8c90078ead19fdff4e86df4a6effdb7315f93b0a709bfb023046b3a2112152f79c908e16729331d3e8dbf6d05e35a59040c065962e28d12a1b33d5c9deffbf2338eda67f2665ab822f0302047c435bb500673065023100d6a2230130eaa3f8485db623a1047f675ffa158f2459d087ac0d8a5cd66d95b2838769d8f0b843d4ac315bec2cb9051b02300297628b1eaa29dc9b9c6f98014923b726c84d1b3cb53873f5ca3c863cce652e4a9450a30ae967cf85de4f8e6376049a0302047c435bb500683066023100bedae49ea0c3f3bdd06a65fbded357ce745cefdfbfdb78a8caec1e2fa8cefab64c794cd3bebfc65d86086a9ca1f5400602310085bc1bbc33ce389ff33102fce83472b04d2787615ad7558817d55b603a42439162660cd5d5506762339d9cf9f026c06b0302047c435bb50067306502310082750ab0ba21182074b0bda33d6d8c1a6e3e58e250ecfaa005b48bfbb36e78fa47f5ba5fd0b4edcba8050f4f43a9bb8402305222fde3ba462c364ae1a2a81eb66ebc2af5055ee43ce0148c0bdceb2c27e28582805ee32a993bbc026f5ef4b28ff2690302047c435bb500683066023100a0a4ca8c2b455ede8f067ed99866e98e40126f1ebfdbf88fd9541bd1764bc0ecd463056f1e3d3b1c2dd29f8956e5176b023100b3cf2421ab753c4e0a5ced99f9d0103ac2bc25c6a0ed0ab66560a42dcf5f5d2b56f5efae714b3144c39abc0f61b808010302047c435bb50066306402307d9b2927717fd63c9da9f9fc4659e1e6762f54e95f05fb90e4dcca35a1d2a6f5b87bec818941e7c07cbf2b0e5ebc3f1202303128a07b9de06334184388a1bad8cc2e8d1984054f1b57893ebb9d3efc6280e1ea02ba9abd7edd3a20d75ad461240fcf0302047c435bb50067306502305d012595ad41c32c1758bf1c3756b926d7388b81d811a901497f7615f3d70803895a58e1888dbebe4a17acde340de51e023100840fd59b2b5c0e704a47238f766eeadcb14530f504754b0a39213c43f298786e36e29767b225f93fcb3d9baafd8b14260302047c435bb500683066023100e10b8075208afb423602e20d7deae6d5e593b584ce259af6d6a66f77f836dd80d7327d2bea7db8e297cc423befe4f2c9023100e9e2360f170deedcf4c8c27f8f5615a3524b21a5741b5d417b510c16e27fa8139886741f841cce757d692b5c6c8b8f7f0302047c435bb500673065023100e9be180aadb7aea1d3beddb8c355a7bab79cea88c4f45608b249122679c984fd8bf0219857d946b3994cba3724dceb43023025036bfa3973faed4d0db7eb9bc3da09cfde892e8c6fd12d240d1efcad988e40f00a1a42be3e7a7305af2d545100896c0302047c435bb50068306602310096c82f327833941d07d23303d52be083316bed11e59d0a4c2acbe88760d999f49cf2131d367d4a7d734b517de6d1a609023100f602051343b314b38de284fe376c4f77abede0389526bfe9be9960f8edf6876361d113a9d767e74576944b13e65b8d5e0302047c435bb500673065023100ec18a87f21471ba22b7b9e765a445ea189fd2d07fabf87665bf51a39c7250cd8ca7fb7c43fe7e897833dca9a116690950230219c06e2682c3950195dcc59381b18e221b505b3d3baf030ba763babda9d0a1dd95bc2082f4a0287864d8b046e6166180302047c435bb500663064023030ef58ff4501fb4fe5df41647489a5acccbd777136f0203c74669dae96d2b9f7c18d289ff840d64bcb0b860905cad897023022c4885c09d024ef568c14391abe939fb1d6c3606de72a0f7ee568e8a58cd064c3ddc3699a95a6c534f1c4fd569472bf0302047c435bb500663064023066c0e9ae150e798222628e2345e87b57682dd0bff65faff0bcf32bc6fd119f3cc1caf3fa411a4f23887d8d867ff0c60102304488ad7950390d5e1340be71d1b2aaa8faa1e843cac6c103b7c65f476661847bfb4e5901dcd88d6f718310a8f407dca60302047c435bb500673065023100d28c9f4b861165c286ccc9f914349781b3b9d63086fe9d695ecc0962102d66f368c1046e9c8923c7b45bc1b70d6b3bc702300d8c7db19f8c71323c453a435f5234cfb39e4cfa1143c5803aa5ffea8c8d0f550219f117d1576bcc893d5d81f433ba790302047c435bb500683066023100a7d1f6c61dbcf87cd4a24f30a88a6f91a33b89e8ba0745c1916399329d2fd49d94414e6ec02ff453e012f94c3c3111f1023100a1ce08785f9999bd31edae6e7e23f89186d3d0af7cb8be1574c4b42b68d61dcbdfaca6c972f96edd2eaabae5f9a991330302047c435bb5006830660231008eacfdc4fa94beead77539f69e0e22e6a599954a82d5bcf84b0666f2e83337bfd127f3d5fa8c580c826ce24c59f4f9ac023100e05cffdb734f159b39ca91f709eae7122f59fc052667fce0c13d6939ebcca8f0d59abc352fcf16351012ff36e0b841790302047c435bb50066306402303b013065d96319b482473151ea02b700cbd17620204d7993e21c98c2a655700b78a03f536182c9a7f73bff1746bdc6cb0230492a003bd1e74d73c1565e1fd84babac767f470d2aed631a2954c7fde1b9cd19e46493376b42d7b5a281c0e361654e370302047c435bb5006830660231008cd6420210dbce6e75f6b5004407893e6f44b04df73c83d8c1648f2b79d15fe84cea935c263334262aeef8fbda7d8e5c0231009fa8a288104b6fb9d3ed721cf05c657d096e02cbb8adb931d9e7acc819e787e3dc3c75ef6249de6022e8a5bf75b39fc90302047c435bb500683066023100f5576d03b4f802a3240b1581957d91fb8ed472ae6c4299672ed65f8fd563941a7fcd0a997522d040f1aeb6f75bc26f960231008e07298cfac471a9e2a3621cab7e8313d72f6935a10857c9f83af6c299ae537ee260bedd49105d61f83489c249312e440302047c435bb500683066023100fc9a9c714a8033e06e72cbe90dc69496ff5bf4fb6d95c168e8b7932cbdef7a4e684df73eff0ffbb05bbf1293b2c695b202310095d1e4ed16863d22d6825f9b341aac2332e9b813194d2f7fcfa3f978ee1543a284f1e613ead7a4a653b7bb9fe7e914160302047c435bb500673065023050235eca1b1a0ecb5e866be0d408ff02965ce823317dbe65af0ed3e197ae376adf575a910cdab5d9c530bf28a66ad407023100ea0368609c670cef324f6eb259fee8e3c7f67ada905a73a74a0d3b40273be8b02696241ceeccb34283f926eeddefe8ce0302047c435bb500673065023100d67aa40504d5417189e9691f9240f798939babf854313ed3094ed71abb244f9f4863e062f011fa7ef28c964d7247c28b02306f0332f9219869702a9c33e4f8415366044c8564d23e02e8c730523264763262f38b9a3f62c57457a6bd88d9ad0cbe120302047c435bb5006730650231008749a77def1f3426355780bed834efeb4ee00ab222b9a5b12fcd9f878171d8fb44375151e147ae2ec2750f912e6a309b0230276c65755b68acbdd553c947cfc4b88257956846b8c3348cbf9cfedfd8bf57e2dd806d0c6d09aea62ad3e706368a11410302047c435bb500673065023100e7492b60b97d1ae5ae85cde536626b05a6bbd6e82da462fc9f33428c4a4976f2e9431963e6ab580bed8d1dc1855dc11902300d5d73f03796892759d44734276feddeb6e6c86d174ee674363d09ea744d3b23da98b7f5fb7d2dae11813fa2977a09580302047c435bb500683066023100fde36792e2b504236b680fd490c1ad6be7239fe6a5de7100dfcea5c003ff845ea953d94a43ff0d4fc4a66ff728dcd41d023100b0abf48f0b0bddae64cac9d5870ebf0043431b48a66a719869fad95acc65e38838ae2ca858820b65841d2c12fd212f450302047c435bb500663064023069cd71aba299921c63a8c58993076dfa19ffd0b29f951e452395a0ba768dd4a5e433d837c3535cb932c930dcd1f85955023056074b9180e26d91db18429f2a90da9bbf2556cc8001bf3da4f208142fbb2ee76a8616deedbbafa56b584f2e01f6ee920302047c435bb500673065023100b387d27657959962086ea802cfeeddda480f826917fb9af58b0b93ad3c30a841c05fff965b84c4ead1e806dc2ed9d006023002e34632edbf53a9745cab53cd29a9dda650d68520d55701ad7a64cca0e93f51a058fc3278d2d59d3582fd47192a4e700302047c435bb500683066023100de6798a36f07a9bb6bfca481a06e890dbef83111de576cb0f4f70937528caca16f4d67c83052b84633af5654d1f2543a023100fb25089cb48b75ecefbe23d3095fc17ea0470d972eeda32a7ddce656b4d6f04231f6e02d60d3deab5d96de30d8b968380302047c435bb5006630640230745d0d0b3e32dddbf7e5d57abe8120776c3cb70f62c759be752165a3e32356f0bb71d2d3b68e7f0c79b39796317460710230629e8880a462d12b8b49fbe116ae8c171aa2c4d1ef90c85baf4ebd60cedce536409371fb4f71d0ad73932aa10b6705900302047c435bb5006730650231009a52410f37d8b72f63425cbf7a647bcd38c91868df476ff96cf78d2340b7f62cc7f9e976432c497927482dcb52babc2002302fb401675b23bd5a24fc627e9d1aee8c45597770e66e0c1e9cbe48e1128d02b0f829c5df784a9ad021464da4598504ab0302047c435bb500673065023100dfb62e6fbd59cf9ca1056bfb12d26c11b6e2a9c71d129bc1a59cd88be80a0d252ac918862d86eca0bdd40503c0a2d673023041a01dc2753dd6f8c399fbbd8daa802866846ba5138633fe50123852a42f8ceaff098e8ff0622a522aaddb2b73ef0c6c0302047c435bb500673065023046fbde24970e18a1b4fa175ff47fdec660ef0563ef8bcb69812b34b6fe0bb562860543ce1b6ee9c4453399246846751f0231009a73720f703b84e82de5e41545ac47ddb59ee62ece2229c1a854e312155bbced95e4737b65dfbe66618605cec5a9ac3b0302047c435bb5006630640230033fa543af784e62c2fce263438c00839d5301d66856cc39ada8d951a66f65c45d0a4ec851a62815769712237f335a0602305a2d31fe8a9ab4013556d7147c613ed70e14f24cf0ddaad9a4eb5608bdd69be9dcf7de56326ae7a44d41c8fa018d23920302047c435bb500673065023058697e737ca4ccaf460c2a6426e2461c9ad51f4656593de0c53273ff359423695f5f2ad236d48a3773680a9bb820c9ce023100b9076353962fb23d06548347ac6b50fecf8d7f0f7ea34c9c9ae3478b9f60eca9695f459d0644f1aec6251e4f2e2200620302047c435bb500683066023100b4ba6b18a6def093bc899ab73a625d14b9c4d03cb457c3b44badb41d0ae32c8f879e208669f542489cde631578c3dc7d023100906b84c84f8f39eb3a3f8b8832bff2569f0c86b0455b82fb4063339b13848dbdd850d45f665b9c4e6fadcd2765b1045b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c90d559f8c9c47fe297c45d56287c5f5063c021927d539ac877b4d5550a746ab920f8f66c9ebfbcfb4d98ebbb9f80a9023100a1712ae742a5f9ab705d9eb835a59a3421a6f3415ad3818408310f780e20aad96eedc89d0aaf2c27801c1180cfad89530302047c435bb50067306502301196701f8f1c6db7870f24b08d5653140701da3cbda4d859ce966e50933e8e4f602e0c67ee18ce14df70dd3d407a5efa023100d92b84e3969547183a7e292918afa3dad4ffa97bb9a49924095ae22d5d15a1fe0b91be43abb3e279d323629a0212514e0302047c435bb500673065023100aeabb481056c328e5964c71b627cdb545fef96a13c6a44a77d0578bb31d2d5dcd34e1fef9f69c9f7696bca9675de517f023063a79649244ffeae9da4406d74998849c13379f061e15701eab107c3044c01141a1efba1b4402fce7d74472ece363c750302047c435bb5006730650231009fe55b662471ac097a5227841f07240a31c37cda01b845d7e5d281bc3dbe67a1f654ede041812b7f033c103181d955cc0230335a33adf0b47609e3ac99be7407ab53a6666a93d40ef65d681029885c5f8cda1f7bb35a523b754cd7229959366bbee40302047c435bb5006730650231008e3501d4cecad042f63d5342d269b1256252b4f3e7702793d5add5529ea36cb39cac46f1a54ef4aafc38efd2a0d8d067023007680bce2e4ff1f15104d61b61c9437fd89f0aca4b706ac7a81468290b0012fd856fa8fb0fa1f9ee4b4f1dbde0a010f00302047c435bb500683066023100bde44b6b73798ca78c70306df7f09094f860eb795e6ef3fe2bdb8aaaec177f367bcd62a242d5c5359c7b732a838e5d35023100cd48d03aea356fc4a90c13c0ef8dd429fc2939e86c31cdec25772e1aacbc6c5da4997311fc80fbbc0edab81baa35d3c40302047c435bb500673065023100eb11b72755a0de573c60a7b01b783b59e739720cda4b8c3ab2a7422932c3af8efdcf105a4dc2dce013c2c325d940ebc70230010a08604d2fb86013ee6c76db5593f1c75ed88b89b87826922fd0754744a6b689299f65e18852f95eea69181ef83bc90302047c435bb500673065023100ab9caf1585b508cb04bd9861c010fb03189d1146831e7198067280e6ecf7bec438da3df22ad181b099ff43d94db080f90230203154df0c55635ba762baf934023443d749c121f79f14a43c72ef1ae073a34b8fdcb2e02726eeed752956642a7a2f4a0302047c435bb500673065023100d0f188d946fe3bfc0b6fff442c04f2d320ff51a3bc0ff74344ff77b702c46e2f021fa4f6bf0d7eb09ecbdb3a5189f69702305c2bb8fde99d074974fd39264d934c545d39f68ab4edcd90310f8badc9a4f7f404f3c070e58c71ff165e2096eb094c840302047c435bb500673065023100950ebb9d07c405689c4878d0d73af4ec8ed7aebc8c7b882cff1e2b4030ec58bc831d17c646210a5c13b8c5fa0c01750902306d0a2f6be6c9c9c89d593b62840fa586889462e16d6ab3848e190912f10a08394404d33f3b3f85e3e1425791291db8ac0302047c435bb5006630640230120dc18cbeb59a39f501f3196c996280e96d147e6deec5befb0a6fd6b2316714bd60a32b1e33afb13ee31348f897e384023074de7f58462037a55d4dfd0196bcf54e07737d22ebb36c735f89c29910492ed75fb776215c4ba1f741aedd8bf3b6a5730302047c435bb5006830660231009cfa6591edb4647c8fb4402e8c33b6a457ff5fc966e4fc820940f411b790b99e5e1b181c92856ecee954cdf78d581d4f023100aba0c25906eea5c8e9c4159447e88cfedd7e6dab19a13a047c22b774b2f784cd99c506505d95a8e75faccc794972d6c60302047c435bb500673065023100813a8855c08ca38e6e8c0ab90d91d785572996a855fb7445496824cd6e770897b3772debc1dfe3e590a1133fe7bfd3c8023063e9941cddce3e561a0ac19c8efe5e199c3b2d5ea047e428e9a54a8bbedeecbb7786ed141a5464b0b6f66d25f8eadb1b0302047c435bb500673065023100e4f37d0ebf964a1b08a121cf3e4797ec653ef0fdb046e4365d64348fa4eb1788b28edeed30555c2cab2edf49270342f902305ee1b1a5f9262f5694349d1d96ef0c11fb03615782544a850c63384e52016a79e2f10d7ab9468a0f99f1c9ad5db3c18e0302047c435bb500683066023100a6bfaab16d3a625a3fa8e49115c8808238ac856caabb5787ede69ee6c0449540fff1f4309705cf8888258463141eb235023100bdbe980da2546d8f8a472801c77ceb9d42d216ba9f422b90ca211aadae8467c625232a2cfd7cb1fbacf6e123534f3fe00302047c435bb500673065023100b3e4c77e1446100967c78da400cd01ff4f5220649161ef2f7b928aad77686e87100b772e91de5943cddbff4654bc025102301de04d7f140b48dbc16b1652ab049720c59606c8c4661a31450248c406dd23f92a3b8ec69ccdefe630b0a1eee1d60ecb0302047c435bb500673065023100d23809507e5fdb5464b6244b8a8efa2eab4267fdd80efab9cdf382a55d087101bad60de402ae8f00a74f1e2863b123fb02305b1bfa01a7cc17bf4f07022498e0d3c203d852f97282c3047307edf6388868759290250c1ec06b092e69f0a29efca0020302047c435bb50067306502301158616fd91e9f89dfb8108eb4b69400d51f66df26cacf0d657f2aaa2e49c83b388aa4a363bfafc80d1009714101ce030231009c0c41e5751f081c0298ec7e5599b86f8edf194b7e934fcda128111e1e825b5216a0883b7ea24eb486fa9bc75e894f1a0302047c435bb500683066023100c427d2521661d662f6f4aa3c92abaa3f7c06b11150ba5544e9ba5269a83a4ad6e3ea04caa2925157f16c2da824b66eed023100dde7e8efdbf9e9c4ef5d1e3aef74d500a892a10db2bd699bb49bd41410d2c77484432a4de6a1a4faf2cbacb392109a9e0302047c435bb500673065023100f2606992402609a7efe22192f9d5f32f4904ebae2068d7d06d9dda5614157117ba2facc93404ca404a7d8f732c0c32ea0230661b62acf16616d1649256998abc4c32ca63b05ab546f3f20d8508c4b42dbff397a0c43ce2fbcf287e349925ed1c6ed90302047c435bb500683066023100fddef4ced8af2f63b6bd0da95951fc623d3a085c403121c302b4acaca103dc70ae5df8819999671e8cb9579ee6ad6aa2023100b4b48acbd0f542bbc88586bf184c7fe73eda575b240bc24903a242059db2c657eebe14e1cf03957454096fbeff039b4a0302047c435bb500683066023100e6fb689578738c2173a7e21ab33c1087b3ac1b7e70e5ceb3bde0dd07e70ba6fc177da3393e0e30931c69f4ff764bfd8b023100c918d2d1a765d5490dda549e07d5f65373dc1f5d5d5cad3449da27a1bdff72d68cd957cc364154a971b0e003af990d830302047c435bb500673065023100af75c5fa8396efe23e59c02cccc38c1c431f1090b4e6273e269a8a8ffd6a065aecfbda9d8c05d7864910856da8da5ae002304cde73017737e9bc22a9c9c7337b3592700ecdcf44683bddbaf3637bf8ca614c99a8d8392697d833d7d3a7b70e5611640302047c435bb50067306502302b1ee6427c381de3f9c4d987e452956d6a2f4d4eb0bf938da12219efecf9fea7f4c2adfd795bf9c57361c331607c3e510231008bf92ccf233c8f45ed07156cf51e4144ed95bac9ab6124c71f6b3ed4a391436dbf955e8feed6b7efb8d55e8b642d276c0302047c435bb500683066023100c1b2971ae08c3af8b8ec607c9daa988018e210514fdbe8a846b7190f10e51a5fc80b5d01c05d9104304823708b644bb4023100c8f54fe9f90a008db15405b09158dceb378ab9de586b4728aac0bf6995448f40d42bdc155eef83daf272e313c3a0696f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1d6a6c8a3c7b1ccae12b06166f4d8628d08ec63d0d9b7c45ad58f8f9deab891bdb9629eb0bfbbf5b8ea6e5de56ef81c023100e084d45f39681339e4cd6ea19a2be26a171fec5595651144f3534c69c28849c1a4cdfe1e487ebfecefcb98889900d3b30302047c435bb50066306402304ef5b359ada8984d27db77254359867881d35cb61138a29881abab436b360e21d3fbb0d7df8016a87bbfe504b1ade358023038ed7381951ad7571f72bf41aaa27200a173fa332b712577bcfb4680a0de80684712a54fd990bb30ecd1c0f10e5285780302047c435bb50066306402305c410fc72cef42e41fc0e825bf2ff68a9e4d8625858c225f50bdc622a5aeb4071870cb5dc3c833b075e5f09fd5f2e8ed02302717c171f052bb0b8698efff363fe64462ff3f198a588ef2c5f57407baae5518e167b4334b2e5ff973116569c87949ab0302047c435bb500683066023100c464a5df6e4abf9427fda68f8b9b896467b4b42a9c44adcb498ab0fb857c84c91a93f9ea9613d6d10623a8e0aa632c56023100b4fbe73e5452780a5a4f09ef1986bbab4d70fec99b889a8578422de57cca78720d375ebfeb639822646ab9a83f79856c0302047c435bb500683066023100a4216135151d522f6992a4fbdf48817d614bfa7bc284588223ef594da740fcd0d7026390588f7488b5dc9154fa2439b4023100e21c8579f238559431c0e0c9f03b56f5b118bbd6f76131b0be18a79d2e497d3cce5c5bd0a1ad8ab6e59d82694e8d52330302047c435bb50067306502306e253169b8e6beb1c928d26032e50fe0f842b2e3a9fbaee9e3d3200cc6ea01436a76b44145c98cdcd859c77b9ac6f82c0231008265e9417ba5070cfdb136aedfc7ed8c9bf6f401d23f84823a84fe11a8defd82fb9ad68332a186846a92a9241314a1bc0302047c435bb500663064023077296b0a36ee5058a57e89cb0d07710555eba9bee82f89d103a8edd609bcbec9734c7a1fa93a13b1c9b09ef8a0dbb40a02302860468ee8143fe07ad439647815cb3ba9c1b39b0e78a1e72c1f53b5796b6a8699abba56825af45594acc29d5c005a200302047c435bb500673065023100a347f41ddaf7ce618bdae4f38f9c9fa0c9d50531d78daa45b14ae54f4618d06dfb1c97082476821406a807840ffc222502301fe862a1baa435ffe63e25632d3aca7febef56a8b849adb77bea651616fbe979ab5f2a4b7ee2b3db0601dec2b7c729090302047c435bb5006730650230044cabcb6b80bf67e16303fbbf63020813c5f9a94c01d55908e1f906a96569ff338e8a2203e3597fb7bb5d587516b233023100acdc2793cec05921ca1d545d22830abe9de8b7ae5c0bd51c7ff0f89388670ba33151dbf2028454a0700e3f90f6a3e10c0302047c435bb500663064023058047f38119d78175c3f58d579c6ece889f9e04457a0432d47c325f8c69723089664bfe08f0efa00eba9b332d58a90f00230405a407ef20c6d375c240a2d2522bf6c3f164fccd8cb8164db33dfe229fa310b0932c6000fef332d97a98f154aaab2ef0302047c435bb5006730650231008bb5d14a46f146f1f1d9471458becb21e9a4fd1463cd6635d14131941b82f03e2c402a3f5603d414af55d7728b95a2c7023033af98882e4e38806ffe6a59f54360a81c7393ab54a379fce1b076d1e57ea7bc933e75e946cd66543a6cd7a0bcf587a10302047c435bb50068306602310097ddfbdc6d365291fc00b29167e4082b0530b276319e318f4df601f89e88daeb636ffb1a12b8f286522a71d44a81f0d0023100eaec98c69f96a14c3d63e159977e112d4aa2b23b470accf253a7921a01c360824088c2e69b2eb74cb7590c6ab7fb2dff0302047c435bb500673065023100da276ca646066b7fb9c8f46738b9bb27d192a7c67af183296b0a765d82f92d12de42a6f0d1567c2fc21d13f953e068da023045bf14237c46559bf9f2674d5d545a904eb1a86ccdb2412c0989099e90d0151317927eb1f57c60bbf8d93e092cb42a700302047c435bb500683066023100ede9277b17f9f51f13755e2912e2e05f8c41fbc74411a118ab34dd7527591f2c40e1cfcf6c5fb210fb5df4ab1f57df9b02310094168156b0f683447989d31f27cc8c65410e874b200f4563854b0a71f47e1c4c7e2daffa667584bb165496c8fe1fafb20302047c435bb500673065023055c2d20adc373baa1bc2a71b58c51bcd23f59d26321180ed9acaf7feefd4961775d9e88935b1dfb0ead1a8e62dac3087023100c05ef383907789e26d955f8c91f30469cbdf9d98b5b2e21478f87b116301ee8e0b983ac749829c63bf507f647f8f3caf0302047c435bb500673065023100a19a422058a4a5c60190a433f0b4e02341c11e8c86c0e391ee7f402813ebbc96e53d6709d6ea509eabaf1862188bf97902305bce377b11acc86b0291e0a26b11d6476b7da5f88974fb8260131347ac1d95f2efe2f8cb3eb9e553ab09dc8e0a8439590302047c435bb500683066023100938a1196167a6be6fb31711aa544394754b48aad9355967b79b42bd80373ed49d24a9f40e02db8881294fa0d742a776902310081a6dabab4b162cdc9d9ac0d889b2a55e2f64ccb5e402021233976510dbc552a822205699ba2d0f39de648058ee3a6c80302047c435bb500673065023055dc57b95a54296c0751424417354e7cb9179819f9006c9c2287a9528d741ec57ad79a849e5b766e00110fa082ebeddb023100d2ae9c7bd4f6d6df149317a8f59705d8df8000fb92c11421849570b7e9399564b0c5e28779a8fa00a9c0cd1d62dc7ac40302047c435bb500683066023100d834d28105d408efb8ff7db52f17ac06364a85458ff7f5f9d1046a67bed2b13f1561b5319d011efd2c0d863f2f030ccf023100aa68b22b472f7f2fa79a80ae373d9ac6431d92b25e92ab5885501b2e3c779e8457423423fedd8309dc8a835bca9875bb0302047c435bb500673065023065749712e888cce9fd9ae35d0705536fbfaf95336e3165713f043067e803ad4e2e38063e9eecccaa7a04efd25129161402310086a7ca65c77f102dfba0b31d76d3af9a9053f1fb1de55a36c69c687a4581d1531a39715c6a80cddcff9f11a0a2bbe39f0302047c435bb500673065023043cfa1d6e6fd852b76f3ae74efccbef10c267069bcbe4982346cc04a2f833c0e1d32e40e681ff02bd85d0962a9db41130231009c489d0ef55d98058b1e3a87d803d91d8c94593c8dff664643324c55424af7e5a1270235ee85be38c629710fc8d23c2c0302047c435bb500683066023100c25e9347c5fb6a60f4ee9d8196154d889821c818c4a06d63b4c635c5d6f4a3d4ecb4b15fd9dc545112d7d76508682325023100b5aad69eb3fddb733fb64d96acccf49651aa7d6689e59e00560cf941356ac4380bedbfbf18c3163b517dd3f8ca7f8f0d0302047c435bb5006730650230602d854a2de4ee26a6e43bb1d471cd1632598cf2cf05d3c66ef82edfc943228156367323b51b686490dacf43435d9434023100a30fa9ea9382f6e4aaf139be99a971c94d686c5ef58fedc63a80befebae2d40106221e8075730b0783d6d93a21cec0a60302047c435bb50067306502305e6e9bdc994e0bb2cb2cbc64737f6e135ea4bf57fa584a58bbdd3fc4e8c76e79f3f6afa161d36865e9ca6c08eb4891ed023100a670e93716b3ca7618a14b561b0de821b84d9f3b7a88770681724c78c8b6d46e424644791c62ef4fa26740aa3e24612c0302047c435bb500683066023100d9db0322dbf2ae23ce0a10d2c43297f0bee48e323f4b155be35be59ec3657dd1addcb42f10084c6633acaa4d213befd6023100bcfa120e54701594f9df087705ab11ecc91e2f9930f06614b0e87a5f0539bab10eb75661f9fb55be02ed3c84557f5f4f0302047c435bb50066306402300c02501f00b0ff2bf6b5185a127e0ac53fad80775ef6d34924a47d86fd8feb43c118e53051b6b0231c5553b71c248508023076f0c82137f799c1f0981681ba8a6967301b7b1a185008b3843d2108cfa38492fd565e75557089d7dc8941016f20e07c0302047c435bb500683066023100de145f357288a818366e604cc75d0c86509677d15d3404e79167929908f4d36040c877567d407fdedf561ad22bfe078c02310086bd5ee596cf7cbfe1fdc2319c0af35927d1df754e5e203c0ddc3cb5d52974756fd062e52b103cc16e7dc40a6a54023f0302047c435bb50066306402304c95de95b6c7a0ee27d20e7a71c70a3e53df7ff3701c5564fee505b612f0eaa8ba1e42fdbe347deb47a41245090781620230260e10fc6aa9372bc69da06e3068f12675b31604ec1fe94a9967d33eb283c75b2dd89ec5d12b167afc10bcd511c4415c0302047c435bb500673065023100f281073a5e33adf9b9298ceb735b3bb182a310b8e50f16776cea58e1287da7759dcbf0280fa02b9d04833e8c156d87b602305ff1c24a9c1108efb02eea521f114568a5de3b4f240ba242a4fc597916f566f612577c626fd98ee246d05d403ed34ab70302047c435bb500683066023100ee9682b17fe680e61cdf617edd5a58e36c4533d915febef61d85d51999c220ffc09e3520e7fc3ba2916645e29c73d755023100f56e887da506be08dcd8998155f590ae49682d572cf594d52969f4a9095a52f8d867c0a022f0f7ea2789483416be30e30302047c435bb50067306502301bb492ef29b70e3c7e0ccec8338afc087b62181a131ac2dbbd249460200017edb5d117c39d305131abec7200d65a9f6f0231009cc2eb3e2fb5a394cc1b4c69801870c04599eab2ac2024753da48989c9d0228e9f8324d35026e347f55a2840334c5daf0302047c435bb500673065023100c274888e3893f9608f385bd7b2f6eeb46f17be17cce10d8b077934627f2308267d84e90307851fdeb9b3694b4204314b02301fb4c7e6194499485232b993812ec4f79586044d257816f9d86c1485c30fc7c01c6150db906d443176ee1e6c4756c6b00302047c435bb5006630640230656b771dc1456e6ad51b3bf2132949e29592bf36cb2edf616f3c2e1e8fa4b975e4ab506a82addcc5046eb7228301921402307417595e2843c82d401678c9a92cf84879fa33819724e614f21611d436c33299f9b0775bb68d577f62c0f848167497a40302047c435bb500683066023100a5a434a92c2bb97aa02886c3e65b43957cc4a6ae11fbfc9a2c2138d9db0f967546e379255349fb2bf4b93fbf0ad59d44023100b60cf1081ba383f180e4915ab4081b43c5b7e200462c9c748f1f2441362b0fac519b52db9be6069e4314f3034dc5fb120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f1f6b56477fa6413c309292aba5c4666fabe1867d990b2fee52218ac3a3cdf550c619147ba0784d9220e1e5c17740f3c023100da3f85cbf168ab5a5a3008ccbe09cc353fc09fe8997d11d2ef8696f89acc392cbbc23782d90d913b83b6e4f9a4932ec50302047c435bb5006730650230725eac9a9d3d2811af585a764ba401d9bf087bd5dae43697bb1c663a2aa75b50f743318e1ad6f6cd82ad17863a60b7e8023100bdd9808a8e038994478501fb34c8b327fe01431c593e971a2263b91beb9c6c2e534a513acd85196295040307bdc94d510302047c435bb50067306502310097c073f46d5bb6da441400bf69413f805d29a9bf56caf3accb799b0d7d0c1c045de1943b4155b98b1f5325fc78bb0d4202305cd26fe0afadcb4304a42c1ab4fa122e98f407b3fa1fc20c8bbf10efc289765796ac3ea32a6b2c432a504642631679620302047c435bb500683066023100cf7376ddaae3a050f53c206d50ad1fa49bac154373b0495f5d442fd3de3b6a7c67023ff0cc7f54890fac3914d36b6239023100cfb3b114109371b4f8a60da0588b2cff0ade6d56bf04a1514e0e827d77967c6a4c8f51bd97165d0489fb94a88eb1ddd10302047c435bb50067306502305d71177a81a6029fc8a7a0565a382a68f52a416d4034eb0338f0b9c09d6e49403276e297216f3d2fd6bc18645a893fbf0231008864298e65a2d1ed72a9abb7cd27ce096be6c203fe71303aea564a5fd5b48e791c201d9393e74b4738ab3a9c95b5b09b0302047c435bb500683066023100f300562dd929ba6d11f51e4e07f6067b2b7794d97a2db469041da775f52593bbdc2e35b839575268b919e793372ef89f023100e2e4375078efecce50b2b039a5bc833b6840ac32060562e0b653f351f931ee13ccb9e41a000548fb77e6c246913983680302047c435bb500673065023100c576d4aa2e74351a106602e583afa2cfeaf39c0c7a0638a2bcaa653210f6e85ae89eee409727f507a28d954a15e9212702300cb20d3b1a69be05140d935f0406eccc3caba97cc6adeaa6e015900e29ee5ceaba03072f112f10d5e72af5ae3fa2088d0302047c435bb50067306502305d1a434d7288d8059e60199af2fc8fe7dd00670c4ed9cd1c4010336bc5036190246680fa4c8d84f12df27bc0a452cf97023100e3742f2977cfd1a45c33c922fcb3a8b6868aa9807a7f9cdc6269cf2b25227c0a45e37405ec0faca8acebf60bc4efcc490302047c435bb50066306402301648647b8dc87a467915c3eda6818760c45f784b54e630c27bf068ac3b19627001885ec6cf90f57b70722a92657bff7502307a0f4e4f2df6f291e14bfa70968b050440bbff98746855c3b80c587182442698b1e1fa2cafb34e5122088da87a24a6e60302047c435bb500673065023100b38658d54e432b72b46aae65affa9cc2dda79a8d1ee270d735efdfe849cb54d87f02d82eca3a0e8b40afb0dc0494720a02302b13449a58c967afd2f094ee539380ab51800f3941963d5e163d9fee96f0c91ee17dbb332d0e56c4e68364bc2c35b3e90302047c435bb500663064023033230a12fba25040dbe34042f4414bb6cc259ba6f87c63ca655cd98bb2a8f3ba989c49504870693e1dae95bc5cc79ba702306cbbf84cc591a1d6b69020baae42fb418018577747ec1b9778e621d8058d7ea3cc4eab35e41dd5ba2e35cd5a299d44ec0302047c435bb500673065023100d006c9962814beb70f228556b937ada63fc56727f634bd86195de410b502ec5a2997e7f327dbacb1b2cd7bdc753629c502306779e6b8946213332ef3f3fa3a5362e4f8b185d2d2ea12b97370214bc12074488fe79c603aaff320bfe133ac595e75270302047c435bb50067306502303dcae50cb814c970c43b498cc9fe6b730d0e9fa8800a144f62236633e31953eb9bb93244ef289fa669d82692a9e44ab8023100b4639702651f53761f28256641c3543106a50861c8b362336e5eaa157940093649935d08eae00d93e61de1b3e8942c840302047c435bb50066306402307a6b730a2ef488fd77dda641cf651da975203b28d131ddc24f23ba21fb48675da8993f45e919dc7feeb2c3c8bc1963dd02306001bb96be28bfffb69da4b1b2cca2f866000786078b851d7a343ba98fedd25619015dcf29fead485d82a3a5c8f194210302047c435bb500673065023029e40bda159267077b2734c516b6f52e4a72115521ffa2c0146d393480a9fc7a4ebb65fdefb19bf69c1c9c528560d82e023100af7899847e37f2061eb26501bc4bb7fa7b6e385eba7957c082bf0c759f40c47882861dce709b55876e4a16840f2bd7720302047c435bb5006730650230480ec9b6e0176f15e78533732064d0d4e3bfd230373b2dfadeb2c4fdd1db8b833b0403c329e0fdbce43650365855b1db023100aae185f572f7c2aa904458a7e0e1c32b8a2731ff010943bead95fba524b7ede45dd30295801e6c4e56b4b70b768e9d2b0302047c435bb50066306402303ed239db32dd800243845bc40bd26409307aa7f6fbc472fc9912fbc9e0351ed799814d02e659d2d252fdd2183b1fa62002302d14d4f0b89f923621cd17de5e6302e6c698a38713c6ffea2186e18da27d517326c5d08feb36d0322507067d98c362180302047c435bb500683066023100da3eadb0bdbc3a353b758a6d4eff3723c70d40803ae36ab2bf79e5cbf2a3488204a94b3fdaf7be932efb87dafc5bddea023100917bd657f831be6e261b071206c08efa28089e5978f9267858f96f7de636e5423d5462514bc4baf5af3e51189b70bed30302047c435bb500673065023100bef8cb88b0728d0cedca00137495b36ee274afb14afc0d2983e5937acd02d245a729a1dd554360925cdd3b77c2428a0302300bdece41fac15dbabaf2e3bf373ba56680cbd7e2f32bbd3857bac9c9f34971d9e0663e98677423e8a708c8b43926acc80302047c435bb500663064023035024b05a73e8b9b1e07756d779162a549dfc6af97e8e0ea6224c84f97054354ccb06c886957615aa6abc9192f02e7d702307662c49a6858d571a79cafe68bb75db6b9740df325675b56310d98e3467d3b153ba3983568377178a4bd63a56a3a22e80302047c435bb500683066023100f8ce9a3e469f136bd550ad22cab8b88527a640694b9ddb5168618b4c30cf04241282bd14ad29784e6aba1ae4e314bb160231009d1c5d0b964da75e1c0024a7eeafa672d95c188942c86ad060dce55ce97416c565e0b487bee3aacf81568c2c153d33140302047c435bb5006730650230191d2ef01a2f22c04f0d1524b86f3b53ca4d173104c6797289193eca8179c83c08610e83831d0c173b4597207077524c023100f80db6783734d188f8aa0eac01e14edaaebcc5240adf3b4356970674f984e49797801c773da80a2d8cd2ef4405b254fe0302047c435bb500673065023100bb925d2bc30e66eb0b034f91514f89f4c3d19582016ffe6eef767c3925d9497b577ef3ca9da66ad0d4752c169b6766bd02301548a6e8b53f6b11fc88581a86839b3202ebb561832ec02ca85876cc90299b089cadb98fe5c2eca236e97c463839cdbf0302047c435bb5006630640230372aec00d5c5da92efcdbd6226bf9a636beb38a942794643c7772e777f2e3c6a89333c60f4edaf6669f472dc76c60abf0230078ae2b7b052ef292abf2418b9d3261aa41577ec30097dac586018f953a2c34fb992c5d87dc247a1a684716a885ca3960302047c435bb500673065023100f58d37b1722d21998015880a4c82bdf42c80d59303acb774436d31d72d8c7b9e2ddd4f55666dc86b7c660c8e212235eb02303a4dcd5c4334a865f0efb35f4e5001f30f0f956ccd02d37943e6a7a1dfc55ffc4ddd626a3508ecdcc4a511586b7aa01d0302047c435bb500673065023100fafd4e5d202a9085aa76f6c7ad9fd493877d9542716e3b5c08d97bf600039034f0899a4b099f1b5626f1fc9243c7165802304ec80ce712a0316bc42e0e204d8a4782b6d2018b933a34bf8f44fdafa38d0a10d1cb83489c79b7bd9a969bf4dae5eb2a0302047c435bb50067306502307541a1e69c94ba3f4076c5f8f91f2cc8b0f25317e7b191f91d466ab609e21134c7ae1f7741f4c20f2b2c5fdb1f2506320231008077c645a49cfdb04d80daa47de286735483513a2170fda7b655580763bd9832859ea739c7c986907105b551f22ffe6f0302047c435bb5006730650231009928ed1b7720fa1228e2d19e6f444bb854f8fc5954c34291018224e0221c2f6ac7d147c7c1ad46b6ac1ca2ef2fc83af502301a8b8aad14c9d765982f2b45ee678ca513594881d60e811ea6199339069ca4ce1cf3af08235653806c5ca8c2da890db80302047c435bb500673065023100acd770f2d923c3f4feba10a70f93aa0236dbf3620cf861ae1878f85b9d829b8d70b5ae9f55300bd83502564fc55c6ca602305ca84ad8766e938e4ef484654a5290c02a01d216169f035b08c7cd84e22b867f9aa0d401dcac7e6a3dfc47873fd9f6d70302047c435bb50067306502305e53faf6df718a88caaa977ed929f25f5434f17725e4cd32b113a7b9f2dc3b0f7e440d20cf86aaa3ba2fc5c85f855bcb023100bddc61066b9ec8c813cabfee295e0a1863c0347f56d3a18bc5098b57db445a4539602484814567bb91eb4714c63b49fe0302047c435bb500683066023100f7260ea8fd85b010360aede6547b0934e4f4de3132e9da3fd8f8e7e64908640f015bf6da9a6556fca441eecda68de3d6023100ab28b67153b13ae56c9120c35ee822ab897b27a9439984eb6de9f07bbc1e5f7f5f0cfe99ec8e81264a0d99afc2bbca290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f60b47f82d87bf588d824b47e67ebb04f1abcd1f9ecd9e16235ff61fae7ba2eca629989afab5a0e46c8c41134f4eff8b0230683b924b9fadeba80a670665ca30a3dbde4fcd41e81ecce4ac3fa981480cf2f8b0b991acaf04dfce10f2891f4bf48d370302047c435bb500673065023100d9b1e0b698a2f05daf0184997e5d8d5b133dbb4c89c4cca70b2f281009ed87a680259f65c23021ba67c461a0dec3743702306bfe94893980d2ceadcc77c9a36c59ec17576501171eff6812832df525b307dc38f7218d4d521ef5deae361199e6ab8c0302047c435bb50067306502305c1dfeb144438b9808aafe2639714dc40d1dfaba27ac86a50bde679b9d73a0d51ac5fd31c64c127f43e0b13fa138007b02310098c585de31abc29d8f842222ca2ff537988bd8379ef4f976623346aa5282523af894fd485c4b5776785ffcb19e6a208a0302047c435bb500673065023100d9addbda3b4d8de1dcdbb22fdbdbad07bc6478d6a8dbe5bb66e800ecef558657110439ed604e6dc2b80cea0f612fd8860230717ca5db4f9389320c4c10fcecd1221f8d9e49593ebe6e6e6760f574722b8644cfd1bacc3470b1d1ce5fcab84c2ae7fd0302047c435bb5006630640230383e8364701debacd5765947d20d6d4a042b331133e3064896a451e87c37ea9abdd6087a26eb70b9c893c95b46be5fcd0230095e34454c5fd24ed6cf8284ea55d0c2d98ad20f7c5c175e410d734c7c984e3fd7d3fb7adbdbee29d976a7df3a189fa40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230722565012a86a81b5ea5145b10faa4724e003811f3dec1a111bfa78e703b8ac24b2f46ea61958aa192095f6507376849023100d9ea7f6794a4d7f7ddcd1362dda3c1cac54d6027f3d3079a9206566b21b10ae1f0b5c3154670db98df69b47b33a9ab1f0302047c435bb500673065023100aa5bcaeed128751597a904642c2b7b7d121b31999c3167fd04439e2b247d05d9f18378311a335d9108d221497424927402307d16b2eb5291400fd9bf2a6411513efa0cbf33eb5b2de41265de1177ef4c0b2a902e05ee40f9e650f53aa80efb798bd80302047c435bb500673065023071a4f7a29e7c7edf6ccec8057f09bbec6db0d02a44fbe9a7720fed1b020bed068c4341008df02a95feb5a1f9ac07282702310092bf27e2a4e1cf607e16dd464e0bc6e502832ed316cd7070f73dcda6d514cbd0112b5e5f216284a44c16e4f0a800e4590302047c435bb5006730650230180c8dd873ae5dae978748c04d0885581d75cc1ce9064136bcfca4b197484d7c5c74a31ac25ce239ebdbe99e74ab083a023100e9206c50f674e59831560d50e45d9b7358779f923faa495453bf334eb6a31020c758caabf8dfd1afe3cdee2de6f3d8180302047c435bb500673065023051046433dbd6b158f554b0b25e9b863f16af0a80b1a886f3c01543877e855dfd2b42853809566749aa28bb50e65ff4a6023100c213110d4c7769fee9106c14bab5c16fe58e2c9372bfcc22c1212e14c9a4ecebb07f7ce52d2c51025a8e7674c5a41d360302047c435bb500673065023100e4578de5662383552f16ad96c10312c4f8a39d1e209c6e9bff415921ecabe11b3c3d32b4e04c9e1c722a625a9217c036023007b22070fc1bd3fe5fd373a0a09fa47993dbeb8ccae1da19aa3ea8b9d75d1d4a443c679b0ab24569bbec8c3231be8e530302047c435bb500683066023100d7ed7183a807cf3a6daddb75a81c939ce166362226c95bea2ffb84a71714716e766366f0677b92699c42eb6644a21e10023100828186a125c3d8c18e6251cb44b2f7d5c57cdc35407fcd90c37e24ca324f520a9beee2ec15a59cb76fe1ea341c37902b0302047c435bb500673065023100873f02b6e2d7113f0001102fb852a474877349cd3e3e4ba1888d9a02c7fae71fc97fe9e33bf6131a0b170e5cf85479ef023057201876b42c06b9af7f2b907c21d2c16f95f0a94a4692c4db35def367105a55bc3811af5eed807a2cf66556a58be12e0302047c435bb500683066023100ccd26529b6c63159bf67df189ca56e4289b404cd333969dc7fa3a0b3ac0f08cc4ed05074a9db1d80582a13aa20811e3f023100cd859398001b1eb173a030f44333ffd110c154a62ad9e5a8e8f162b8f5ce22b2f573fce46c4a123b36e2d7340b3b07700302047c435bb500683066023100d007d39eaac86206c1cf898513026e84420e033afdb1b12d6f3501d10d8764d935c25b3477b4e964bfb878c05f31005f023100c419f3e2c7e7820f2a7afc326e4dc2505ceb9b1cb07e6e6fa66091a4c652d91413d768658fd36bbbb00de3d2c751d5420302047c435bb500673065023060d39526636a63a111a8b4d36bbfaf4fad8bb8b632630efa4ecf2f8b9bc59919697310a3a4960400bf6d1ba7ca512de4023100989b7386799ea4a614d3e01d774757a5f645491f6b22703dc465fe6369065e538b3d81295d4d5561938f0c5fb122e2890302047c435bb50067306502302b1715f2fff1d07bf78301ccad7bc2bb9c36be883e73d80069acf13d7635618dd00dba0ed1e578492daa3f1208caf8b8023100f1694784588e5651a8a5a114a1214097165344fd6c5d2994295fad8a56ec25d295488a65b806e404404a354235b9aa580302047c435bb500673065023100856c7fa4c38e0a21d8b7e97bface97ec9a93088762305a855baf4b15565395b600bb7c1be98aafda8b087bba18c0afb3023050b3eb586da0a0f127b2b068cd2aac0712a590ec38803ec4f74e0a79662ab0d2663b03435dbbb53e08b929319e1b23c40302047c435bb5006730650230118c95dc034acfda2a7936e2325865247e7d69ad6bedc44ec6e217335c3937257669c3c10cf054312b67814a9ce5b6ae02310092e09e554ca6be7c1be33f6a004da8b168f57dc7cf15d7a11e710a1b0f6d83c813ddfb047e3195a33c7b975081473eae0302047c435bb500673065023043105c555b6977044e13698a31695ec4ca7a94210a28787144fc091d8db17e518fe19edd18cf138f2ff86e27160fe423023100aa68bc33194f78e76b9af83d69cd731b1e30892c32e4d587c866c884339092844fb4c7cd50ece22f75308045aeb6cb910302047c435bb500673065023004638ccd7e9cc5ff61aa846db7bfe34e18791c1305d59e59f9d91f3988ad492ea2d3d7a46621a514d026870f90c1b850023100cc651b71697e5199393f30db4f92adaabdee4de878260fff09dcb12cc98796b906d94c297ff6d342c3dbdd48ae0c73e60302047c435bb50067306502304c542f3087a756cff7b9ff321ab8db67ebe93e8a0cdab5a7dc608e021c50b06e5fe493e5da47c632f3b1b80ad00282e6023100f7abffdb49ec4db9d8f3dad76cb4af4cf805695fd9fedfe718e50b183103f7b88bfafd0b1c1af6c2920e270163d5b7a20302047c435bb5006730650230257b31a702cbfd6e56391aa90633a57087d38f47f5c8bc3a739caae73e4ddadd5199a5fd33bc095ce327fb427495d654023100ed3c7329f398c75554cb30cc590998188fe15ad55e64840d5d45db6071f193b2ac98b14c8da94ac58152e40be408e6b00302047c435bb500663064023042c687cbb36e59141f6c7698e7af79273fe2be979c19e63d0bed9530dc5565f365e035dc979e519bf76422fcdb3076d702300332140eecad82d14563d917af9402aa8b6f0ba515230d669358f8591e01c75a2e52aa376acf8a34df1a920b71fbb7380302047c435bb50067306502310094954166ecc3d0efaf64db32d4c986147dcabc2b919e53d83e37b8026b7f9e4c958d3c3f40ff836fd4421f5c6f1ac91002302e5e8fd95c7f34c7560c774860bee0f248e5b584eadea386b9282088d52368918e7ffbab1e0777b14e81256ae90b07c20302047c435bb50066306402306c91b3fe4d1552ecd61785fc576bbbc654e9770efa61c6edfc2a73d6ad52ccf67ed4488e17ab1d30463341e58f829e6002306f1374d7a3eb230723228c34574af327a79a738d9021b3f9ec22ea2f15d171a4d4c851bd1692a5dd8b71b4b5474bebec0302047c435bb50067306502304e6cb216f21d167a967c12d93a1ead5a8621f625872791a707bc34e9933b07e3138f03fe7397d9eea76d6ffec28699ee023100cda3afe912a0d9a7b85955daa20742366c943d9598906eaaff1acc8d27cd5aa476b32a965135398b69015d62f80abda90302047c435bb500683066023100e090bb4a3bcc861d2f33a409115703aaeffaf4cc640ae0b57b428d0b71c5615c1fcf29114eb147a721d804fa260f7107023100e01f6e37e94dc852e304b5bdacbec980998db6256f1d9aa630a94aa3b9442d53411fbffa432ff01826f66f5ac871b8e00302047c435bb5006730650231008c31f73cd89a16877edb6d98f313c58e3cc0bb1271f09df8e8d3e7fffd15cb222143f22d0e8ea4426a650c1880fb45350230250b21ddf131b93f6abd301cf1288f14447857bad0a41f34464eaf81e70534839c29483f5e2c1f5daae425e7352a01d70302047c435bb500673065023100b3a6254a4e1f8a54ef69eb52cdddceced69cc50a368392765e360a4336ce1da1702ebfd2c5cc24ac009a09d8be835ea9023059e28310c7210fb84faaac7cd939d3fe5e9af0d1f081f1648b9af297ac5ab8fb6b1a24d0a649809150e60148108ee8120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230372bc52b1ddcb97fb180d8cccf3a10aef7e2ae0671538717c555f7b8da463d2409a173610cf28b25b6d9ed3a9f26613402305ffffe0f4d7ef09381c4de67ad1756a9b41269e36616cf1d88f8c11082d5265bfd266d6dfd655949bc74a2eb7968d6530302047c435bb500673065023036b35672f4e70c85cf98f59bd3f31734e97cea5f2f194274a3178e7cc9a040d92b1cca232ec43bf512a40724aa89cb93023100d3c79af8e0a4e020570a84b099c20751b14093b451222abddd5771d13f08900cbfc3c0d9a6de06d07f5e6bd9de06b6310302047c435bb5006630640230502fec15860e2f7f8ee91d1f9379b37163057433fcf1c7f758ce7024b8db4e84f9818a6c49da873ce7aeab38841e9e9202300578ab703f8569fcd134c954140c7197c89cff97da50e486b05396389ec7fef6d19c9fb78c5a3ebf6718df0e84f465480302047c435bb50067306502304480f59eedb57b03769a776d885f40cf1f24c2a185ca5afb4d4f2ef466db0d009d6c2c608c1965da959d670d21693821023100e09fb0f266fd9a48236d8e53450a7bdf355861bb1c9a96a8ef16dfea3df39e159f29bb5d403f5ed3041aadd0f7ef9f590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055e00886f488ab17bc482585272664c3035a217cab6251f2bf2fed6fc2c93b4aa40f7879ad8dcdd61a4dd1a72da9cc7a023100efbd9eb8f7ab1395428dd445def37a6621eec0c2189fd1ac7268de4deccc34763b564e969d6bb9ec9d284b64e89340360302047c435bb5006830660231009fce09a599f4c775b99a54dea3e4e054e6b825ba480e1cdf6c9643514eedb22e045b6ec1a5a74509724dcb7163ddc917023100c9fbca9429644469ee3826118c072c0eb82f6c2bf2004222b1370127ed15be794914ea314bc6bb6847591cc420cbcc010302047c435bb50067306502310082c889e547793479cfc0e02182a5d9d76ae9ba229ff12354674cb056153b73ecc0c58e0272a0e62e85f663675932117602302a2504d42b89e6506f197b422e648b4055ffbaa72759553e45592876ca2c3dbbf519a419f34c9e46ad12e0c105bc302d0302047c435bb500673065023100d6d099cc7b403e792f584fa8c972fdb94b72cbfb3015ac6ee0a79cca9a71663a3e729bdc8c9bd80032b445edb43ad71402306001b0d42cf62d083fec3159b119e464bd683910cf3f388109d990a12b1888a1977ffbd78ac65999eadba3fc8e141fb90302047c435bb500673065023100be411cf0916bfdf3899d059d7d8eb1a15368058b5d2428259b953bf52bf296fd166eb1865dac86123acb4fd79deb1aae023045fa5ba5e986ccfa8f3cb4eeb88a474165335c75814f0954644bb3ae751e9578bec1cb2bf4d8e92a0b4db3d1367a0f9d0302047c435bb5006730650231008a033a8c0bfc27a5a2bc1ffa5de13f7b02b71b3d1a4be6cd7dd3e7feab7764a0aac33c668748d9051dce4d6dc91a9fdb0230317cd7111c9a06b3e08fcf95780a3e1401334a3dd960370cc47b678632552ee7bfb541806cb929f05198d540d7f0a9dc0302047c435bb50066306402307f3cdd1e20c2696c8665a165ee3743da95f3e766aae9cfe8c7c4c1cbff07eaf732ca1b75a140868ba202c9b36154396a02305fbc0b239c0129a6ff5626b2e7234de9e6ac15c1bf875fd757b2942f41c5dda03232bbc8851c1105744abbc854a6c7120302047c435bb500673065023046ce0b2b8997511a51e7866cae6b145dd5b0b352dfa9bba49f4680f55f1bc9100cff2868a24fc1a9c5d5f8024f73e7e3023100ffebaf5257c4173d309ed5639309c79c675753da26b325fe8c6ce62f3b52db3771ff17f0d888a18b09da956be6b10c5f0302047c435bb500683066023100dd9c835f81bd69f0937e7e4aaeb5c560d45bc6e9b0f146fe28e4389290d8e7317847f10d7d9ee9d6e5e63271d8a5f196023100d16180821bdf10fcedc83aee14d99c4b1af03f6103ece9592c3ef7e36221f6833a7ed90cf27e0efdbf697d46d73d0d650302047c435bb500673065023100ecfc715d78bd9fcae21266e39588b7f942368c0d70ae118b7bf63a8a322dfd844419a0d92c514bd0e53c7f49591845b802303e0978b8552bcce51eecdb3cc4b0f26efe33b31b75184f0c0b695e0d9986ce8b78e9c240251d096dac73ecf00a313b8e0302047c435bb50067306502310082f6e413d94ec733817333cf59798a4d5bbc3621e29b1a36a408691bccc0bb8da4c7327905941dbfe835267eeeacf5c902300f7b9dabd331c0bdea09e59715c3969925126c96f026ad0c1d4eedef7e557f70709bccfed78c58c49802d113d4d5294e0302047c435bb5006630640230387012107001975f51934911fb7e0b9b7412b9e9e2ea73e43581a7973b92092d4239c11dec6a13ce4b56799c4bb26cb7023008d58f9f64e882e64fd8af8a13b7557831bfec285930b4d086d9e62fff767cf2ddf49c473c849d6bfe4bc7bf79d275110302047c435bb50067306502301c7c433023ab7ba07e824f999ef50759afd67ec96b16308764900816639ffb17a0eb6296368f3db0d538984743046a7f023100de17d636001cb5f12a399cc2690bb635ad03a659b3a5d37e56f972083744fc34f4bb4b9bd2e5b13ed900fd0cd20bf8570302047c435bb500673065023100aa7d364b4f2bdac7bee8d42e92bf5f09e88e1583c031bf9e1321ed6a2ffe90dad72ab89f5fadb1f782c30236adbb71760230191909db35dd6e2bbe7d7769423eeba37c3025fe3530a0081ef3de634f6148356359a3619d58178f7fae36ddc08d080c0302047c435bb5006730650230599a1edce476e7e16e05dc7102ebe61ec91f12306ca02421019c2bcc1ae89815b7a64aa403d5e77b909703c7bd8fa4f6023100d5ba93812140d3e15ffad337e185416b1e4a37f6896c8494375096cc8df6b14a0f7f5ba11142bf078157e970908be3d00302047c435bb500673065023100c2f4f4f962299abe586cfd49a5c5590f573ad6ad9cee960c4efa4c2c7503be24f968021de0f84b3ef126472c4c60808e02302275f3e1a2dc817ceff11de57c277e823315123babbf5dcfcba17ed53e66f63f2f79ee81aeb2bd89323b498253b5b55b0302047c435bb500683066023100921909e3120900ddc42e4738a3bbc6167558e0e18f20e5ff2d93ca478f2a9eb6e2e0b39849b7bab01133110fef6d44ec02310092145e40e0917d0962c82865b21ecc149564030d9096c618d4f8d2e0da4018e755972eb44b6a2940f1ab8be1f9e6189a0302047c435bb50067306502302a900fe3c981122d7d919238f0c5ab109f496f8ad573018dcc8b9e10683779520ee49f7f142520bc8e82a1c0731c4dda0231008ef7429990f775c1e481ef2435ebc986056ebf39516223dac68f2471e2b1712631e3dcc15e33f2001d80f60c0f49a2af0302047c435bb50067306502310081cedb3d30536c1d5e3118c4ffeb0a48d60d81987d798dd9bee113159f496231c6322822a1411f713cf75c9bf4e2e208023078d421c6e8473af076f95d7416e12069ed4bc081d4f706cfad0b43e0107416740f793685e29df16fca3924686c39df070302047c435bb50066306402303ece93a12459e8e28e130a3132700ca15bc50589995a8b160e22ee2b0fe802207a5bc8740e17680d5b4d64ce2284ba250230512dcc9a73edcd847d44969da8293a955ac5258a2d58f4618298f8786d13f6d318643dc57dba562028ebe67a03cfa3130302047c435bb500663064023074ce43de35325423a313700fdb86451c1a3387512e3529ec6149c8ae93e6692e578ad0b32fb36aa3b7bbd6903a7cde87023064937626b84396ab9dee57d2c067df0b85bc4a9de5714b0d21e8f5bc1aee1e018e087fcb90523ed68c92ec91f6a310510302047c435bb500673065023100ae32ea8b32f630a282f3533ccb7581cbfa74a00079d2cee149b31ad7ce76122e78aa599b8c315d5218070ee295751c2a02304e2e22b9917eb575cac8cb50d4ef74d324d7f1d84d4c2a30f5118cb0e6f34dacc557bdc7098a709024dab8ae8efdafa40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d2b520942b8acfaad1d2b5e214d14cc365190fd3af1545ed4da2342576e1cd7c5c79847f81324311b1ebe0f6173b651002310081b69ed7247566860512495db9d4b76e87ba303df654cd9b027786618d7863d6d2a5cefca63ff150c0382af81593ed730302047c435bb5006630640230324b2e942e915edfe6bb3d59f0678d38f675612fbb96386e1959534d1e978b9f06873358d07fcefd72dbe896a6013f4302304a9d6e7b5b803ed7565617d494104d6e237b16c2893d1080475755eb84996783431799a31e6b928b252a4b6df0960dab0302047c435bb500683066023100c735d21159cb4ec64d33d43b06e7d17009f4545fd8ea345acb629ba3671f73022f3d6d4fb1bd4c6598e69dc6c3aeb8aa023100d84f176918bd8de4e0c2d028cd13ae57636124fc89056af47b021b7883e84683040171680a90367b83f5a38abb04f1020302047c435bb500683066023100eec005dcc749ef33002f2b200c3eac9516fc8f5118af2e3420a00f9ed0f540e8830c238852c01925f49dc7e998a01d7002310087b2719371dbfd3f38635b6edc5e8a034f6dd9963d3fcc2a35cdfcda100a7b36e1c62ba81364a0633bc6d63f2c5084620302047c435bb500683066023100a79e196c31f1fadf45195fc72d13bc37a6b3e701b1073f3a7b42ed86e28d6b7561ef037d85ed5d02cae8194786beed0a023100d450ee2bcec92b5051d1ca97d41e031e2aebc8bb7dc35b33d948fad5611e6ef7248fe33df4f475e318efd07050d9ceee0302047c435bb50066306402305f666e585d648b689a30b2943ca3283c8684d8ce81eeb2abb1adca575f5dd0ad634fcd3e13ddde608c2b979613bb65e80230792f74610937f3c300c3bb6f84173672668299ac7da0972c4d0fe6a8afe337de8c524c77453b420460b72cf79d7f67b40302047c435bb50067306502310096f1e2b37f2d73d3f89d88df86c729b0baada344eeac7f3d665472baab93565669b2c3ef0a167981bb3d511cf38bca2202303a0183d2f4e9c9aafd1f6432f8f6886d193e427a7f248fd73f72fed22b9e18e71f9b50da61c95346770b814bb8422d020302047c435bb50066306402301acc3a3480fa1f6932e3e45debb96049cee685e52ddc0e587e24514712969bc768fe8055953b9520d7586ad33b994e2f02300c7462612412e62b2ff166bfbbcbd7989ebaf95484a344ab0f804826fa6bfced7cfd3b8f0ce02cfa06ca9bf04351837a0302047c435bb5006730650231009c550e167120dfa3ab6db5dbe39ba4d075ba8865bba6e5b38ffc103e64f3cb11f1cc5d43c28889cdd28826f224bb5edf02303bb00180141288a6b9e09b23dcb2c8b9a459640e95e267378b597a4a4010cf2ba3186b74ab92aacdbd35c804999a3d510302047c435bb5006730650230660a0474f9dc2d2301597c66cffb811151a23af570676a5cdcdcb304faf60e467fc303ecb542791a4246874a3057a6d20231009743b9780f1f70dc6dc2bb8b5ffd933cc851b6c1a4c5810a4f4fc8156fa1cb17d8c510622a23715bfab1c6ecf3680f100302047c435bb500683066023100e35f9d2cda49e1be92648c0227651053a1b06758e1816177fe3775afa633581399786a4f38024b72f03c40fbb40942e7023100863abb986825526b41de46b981ab7c74d1417354afae20ccd57b3197829384d0d0ff15b0588cdc1b90aadc56cdfe4bfa0302047c435bb5006630640230377de5e916353791ab4cbe01d3a3e72f7e2c15b0104f6dc2580ae4da23ec11ffd7f60680a845f26f50369e5d0f5d31ca023003447861aa464667d1776ffe8a94d6840098d66c59cc804e3ceed79a17f69408d6d4a8a87c392874ab3fb23683da829c0302047c435bb50067306502305dd4a3db0dbf27cee8bfef9c2af8207db949a4bbad4eb91f70f055b5851ca9363f1fb15cdb71c7e8508d3df61609a904023100cbb85207fac5a54e8c734b5888be3e0d0cab76c2e51d408a5bf40dfbe8c75ee5bce8e1a457e47c8c5f4a226dfb9b6cf80302047c435bb50066306402302e755257c8ce6004dc9f4c14717a98aed143f242fdbf42400f2d385b4671116233c342a2eceaf3ecd33348422a5eb1160230613df72992780691e9c9edc05594b9ae38645e3c4c117001a41961514d6c89df2688f76a9adef8effd1ebdea750c5e980302047c435bb50066306402304d622120a9bdab87728f41d55f01ad49f90feecd1f59d79cd6a52bd1df25329052c5a01abf77a97c9478a98d14d9e743023039520ae32e9fafabf7722b0bd41bcbb66a4bf132dc74c7443e6faf3254117572b6d38eb7adf0357ec0ff2bedd911c1520302047c435bb5006730650230394cde8d0cf5f3e89d4c88666430486d5ded911ec555b76a8d7f6945b58f3c29fec473a7d24e3451627cb8c7753e145e023100ea82eb0cf6b9afde4a8695844c52ca3429b54fd4a94858eb08340660e740289fdfaaa502333f383547a0067afc9bb2a60302047c435bb5006730650231008fc9ff2b7198d3a931a8e984ac6bbae0984d76cda2298f6b85eebec6d6f436839eb785c9af28731ffd80f3a37973ff63023036d5627b6d764fb4dcab43f551016c5147b0742f0eb9ca7fe41238850af92358aa4f86b34209b79a6cbf62001bf4959f0302047c435bb50066306402306bf0fc59b873264929b417d6fddefc206b64de081e0feb3b0a848a2f6df8b9dd30a58b24ebc233b078d5c49345e20fce02300230b90d05e611653fb2c68940c415ba4afc41e92b83c5e33c8d80d2e932158ea8e67ada17b2a589bc5845eada529fed0302047c435bb5006830660231008e1820e0652b67ca5f93fd0a7fd3a1ba20c6b41b4c77701f0e5ef0a2e968781485d62b61e2102deba6eec020deaa33dd0231009c4e1521c9f64ecd737bd89cd89e553c85b4963a91d2242865bdc75bab1626a37f7cf6ed0c68a34f1302b8ead1b2ff910302047c435bb50067306502306cc0f4d931fbeb1adda5c17857165eb36e1c2cff3e931cce176c5776b45ede007ec7f4ea4649c5deb474dc65ca33c9390231009a1bb65ff19ef5719ca62370d0d6755fd319ba418bdf915a1ded0dcc8c7044d2dc807c30dc806dc792b758014286c9e20302047c435bb500673065023100f9166fb71491845e0c489de9b8ba71aa055ded1cb1f395ae66eb1398af1fac069fff910ed677641f0141a8d01abd2fd7023076a7d26887f7a34220443db7c65f5b47236b55dd6e487fab2ae0d57c893e135ee63e3cce5a30ec43e4e42705946eee3e0302047c435bb500663064023022073df8d094e18fbb88c3655be849d24f82279f4a81eb61c16b9fb7cdb5c8b3ac5bc2b551ba2ffb8051e00e7605e477023075a9e1748d82e54810b0c8c394296e058e0ab5b9f866fd7b6af542582f4de33d7e58a02260af3ab4d527751513ff39ce0302047c435bb500673065023100dec24d7c7b4e5b42f753fe7903fdbfccf97ee4f59e56727aeccf956865ea5bbcc7ff53ab2f6f70fc6898e288c211e7de0230477f6cb7be8eea050478982ce350635a9d58738984603f65a9bd6f45842e8924a802e627dcb5a7670f7568b973aee9950302047c435bb500673065023100ce44ffa9c31d08349564a03971edd9db068fc08a69cc48325b533976e3ecac667f41ae1ebefa716ecb018c23572a464102305857e1efa6b311fcdc6b835dd266e926b093c7ca525fce65340f051179a30a55947338ad186c1f19514f9e7252137b890302047c435bb5006630640230288529d0a9dacdd2dd7c5afd643e61ee633ce39f5edec7ff4a244905e0058754863c93dd2f3cb02edec655dc32f154d4023024957dc48e4731cd1a1766c75c45f3770a30cf9ac2e3295671cfe6d09615a10c795cbaa3f35f1b5768ffc10d4013d36f0302047c435bb50067306502301d8a3d1a9c283f5db3340ab0ff919b774a88e235496d282fb9587c7128ee2d02d2614bb34dd10dccb11909c9ccb687340231008501bc35c38369e8536423c077de3eee6e63b9ed695c57df18bec296ba51ba8b054abbf57fb51071f492b9dd1953f2420302047c435bb5006730650231009e088cbe09adb5bd25e074adca935bec28ff9f2a5a0afd36430ba50ddfdcc49432139f4604e327e2353e679354af938d023062e73ba6bd74cfde8a76bf7c25e5548f51f4f1061442377c67e0850837f29bfe724b467ad5ece5f8e683ff6b9cd4174d0302047c435bb5006730650231009ba2abcf6863737f2d71288a36e46f90d53fc93e350755a0b4165d5171802758e368c17f9865a280834a27f8e563d4070230116345db720fe797d42f10bb776ca55b65f0ecfbd4647c520729ce42293540618b24a6b30d4411ced1843f87e8abdcea0302047c435bb500673065023100b2a2cbe9ae84797e5696db7df106c1a6c106be4126a665f7715db50e33a15ec1a9aa6f05d8a88d1af7b7c0e5aa97701902305e5645078a0587810d18218a174e7c632fc74eac76f8550d814e35a1bf35195b756574957a970b9fab9865cbfb8d4bea0302047c435bb50066306402300dff9a4294152312044912f392c4b385a6848d0c418ddb88f93efb898f419464ffa4e8c4c15b0042d85911813d36272402307af8e73edcf4df7fc14df6d5cef341edbe7be5b2613ac863002517ed89b3ca56a5923e88d3aefb2ee1522002992d6b210302047c435bb50067306502306255eae567710dabc9810550aeabec1cef98a7ba4759bcff4495e324f29c43a1a275237d51a749ab3695eaeea8302a20023100d73a451e9ce545f520d488899eb80c5ac0af195d8c40c10b38799a8e4c363c7690644bf6a4175e4865d690b5c08af0ef0302047c435bb500683066023100ca0353c86386052c0a37990c85d057e1dfc1cf95e22c27499c7e99a43541da2c41f163247ccf3b6e41c3196700de32e9023100d5611fa3919fcb4ff025cd17254802bd21b1e6822543672f3334525b2ecc1080ae20283c635c0600457926e37ad5066e0302047c435bb5006830660231009d227aeb83a16eb7e4a1572cccc0d6a5d4b057e9dee97c7ba2ea38954ad293547ce343895b0b2b156aa438d59ec7f18d023100dc546aed129a4c05790c01843393a3a309fc32c6a122c6b6382db04624b6633d9340e3bd3a81c8a12c42c1ec8ce85d3d0302047c435bb500683066023100e22a14e33c6126f74c7043135eb4b21c805f3d32b1223398ccfd15860c491142d76e1b370c9bff891932daebc03ca6e602310087ce0c306301fada78795e5cb6bc61c0ff72d399dee2150e6ca4ba663b9a5c3cfd97e0cb389cf7bd8e321b40743020df0302047c435bb500683066023100a548af3317d9090e81c029828ea5d4970328f52c5247b887bf4c9d499f8913abfce95427831057b5648b51ec9cadf26d023100c92c6e22a70bfddeaee9bfcd4804a985f96d017505fdf81a6a8d9d8432405623807aeb5218b933621a754d8fef7a10cc0302047c435bb500673065023100bed3b1d8f93b944e53eef065dbb253779a6a40727d09e1126cc57731a201e9db82c530ff3fd2a7d3eb9a0c383add0f2702307db4ff8a25b3c65bba095ba12cc87a03a2a86149ac8c5dcf3755c8df14657a0988b9ee364e8cee1a66e5fc53546b48280302047c435bb50067306502302deabbaaceaa97e656c35ca9804d5cad4a2dbb8995e6618f0f460b066540cf82c9df00e3925823d5dbed68f4764456f80231008bff6417cb0e492f9edbd417284f55c3bbdb90449f3fe6f85c8b635b1c24813ff956673edf6ea041e283988a4cc80f190302047c435bb500673065023100f203b1492b65c572ada0bb9055af88f0bea832183a12495067ae0256439138cc1f99534f464e53d8eeb7a3dce9b18a47023024b4f2d6e733e7fb056e4a461828d44e05898ea4514c5e056515e503a7bea1a9dd6c4f1c17611640cbf5583e83f4833b0302047c435bb50066306402306acfe86a9798e8bd68377d411e53ae225c0e46452d9bb9b5d7bb99e94e17f877f914a85fb6c018e72bd420f0d3bc27d802304ba38b441a5a5f13e67061f15a8fbe704e39d426de94ea28bbe3c699d3691adb8964c99ef1eac8830704a834d5f6419a0302047c435bb500683066023100b80066f2cf7869a475a7b9ed72d5b5641a78e536e440bc6af428bcf2bcd0b3654867af4af9afc5ba2c72fc4310475758023100a41dc662ff2123d508ef36a7038c65b7d5a427c0db1effc83aa8136e4d5cd98d475e381680b40786e8bd93af9c02e7b00302047c435bb50067306502304c21a0be5e7fcfedec0436124970a7a546a0773f34d0e649ca366d12cb1fc981558ed8f970dbf8f12a3c74ab9e7f74a0023100bb6295a5ec7566884a5a33e4969e8095dd920d23bfdc01f28176cf4da5a30b395cef6f0b06bc81abd6e7a59d7d00ffa10302047c435bb5006830660231008fef2a417f867c7d3fcf14e5fdcb38b23198981aadf9e1a8ed0b5d22d1ed82d0b03ad8c3ff43725bdd4edb7824fc4a2e023100b1948e02cb81c9de05bb0bd739d88950f9b0dbd153cbf1d511185ed06b59d50a63ac12d1a96533f9a69a41fc7ae339580302047c435bb50067306502301be4607f3b9d1bf59f60ae98cd92e49a3fb7c2ca835f0abd1c24655aabf9e9339454d36992335b8c4191ce42718b6fd90231008ba429d39714e45691bd4a0b441b657607373ad6ebde5a1685af331897e2224539b93c6c8e21b4abc079cbdd67f9f2a30302047c435bb50066306402300150c856ad5040b03d41a533e7904463f7e53561178ec18ecfeab838cacd86ab790c36928718bbe5e3fa00df6b59f9a602304003c8c5b37c3137db2299e9a892ea9b5713111dd6f6e0f46402e0ee5dec6f1bca3f5cdb5df0f15d7bb8fc605cbff2d50302047c435bb50067306502307dd42b104c045b1b2b587dad00e9b5d130f103a5eabd952f90e1069d0df9d6d6c0e70b47e84cc76354c0546a59cc47f3023100c583663430b7dd3067af6434088b1c9ec98bc08a22fbd2991f0175f48d88fb234c34fe27ae8585b47f471c51c30348150302047c435bb500683066023100edcf67f64f68990ff59e738ab6f21d9692f8e9bfce0bd189c0ef352c3a5923fcaa72b283ab85d9688d3a02d341670ffb023100dc0d9dab4bf1a700ad9a7b3f2dea3d7c6a866e2beb2571d42dcac0c59ca41e8548c583558035273ddefeb8890415a2990302047c435bb500673065023100ca036dc8ba747720d063f4dc19880c6398cd1929f17b93f142e027ae533fd4a49f266ecfdf493b3cefbf45ec987fd88402303ae768150bbaf582f66846baa6d925195d69fc3aad667bb4e7a9dcfa2978ebeb0de86abe45b96094788fbb149d6628ba0302047c435bb500673065023100df29366356aedea9698472ea406af434103b17a04fe60e68472d9f8250755885094d3f53fc4c89368ee014c5b2b3d90102306434fcbf2811c368b9ce6b018d68b052377666c877aff7c18f0a2af484c95ca60dd66f1d8c7e95eee5883d4e638a99f40302047c435bb500663064023041e705fedb0bcca128cdbb2e4da3c613d1fed17a71d4be8ae498c23b85728415e244d9e05c73c0a0faefbebc937de967023024a7b5a4716623224a398329b727e4ef0e1583715fb0f8d0e6d764931fa9e0040a5b83d4f7f0d3dab07a1fd39d4b757c0302047c435bb500663064023007e1e90162d93b3d49de6bcb28b9f054854ddfe647db128198e5b411237bb4b7120a0d05294bf4e28eb8d4b2338b378402302b3d787003d2f1fd1ed119be7d538212978c40787285be04bae1d3a2087a690dab53f0ceecb4bf5ee9199166e9a4b1830302047c435bb500673065023100cce056ce1609762ca889c45d0f112d890718af6a39be41dac10cbff7dde988b304bb2a2a22119662cd02589a6c04d75802301126c543b8ebe1ae6c757a9ef58b6eed69d43e9977eee07ec0930b494a82154e321167892f26aff9400646218ba501500302047c435bb50067306502301db276b109b883495e9ae4b611674b9884f476ceaee388ac7bdac381e730cf55532464cfbd26d0781f88f640b7cfeffa023100becff8f4e811931a434a705e796e643d4f25ef3e3b9d728cfe63fa9d6807586944c8b0848e989bdc00abae2c85ae501c0302047c435bb500683066023100b80fd7700dc1077d6fb97bc0ec2ae39e7085c390eb698ba044adf9c4b28260a187ec1b9b58aead055bf5fc770e6c893a023100c9110e17a29498c59245ae627e5017ddc385bbc6e4be3f1595126f6fb78a5688cdbedc1a2e4e926606394eb60f2880f00302047c435bb500673065023011c4c18cb8cc1d54af6d2614cb0e7d5818b9446068b71f0faaafc857a8fd30f7e190120a3027c99c3a6aa472efe17bf7023100ac484c34b6f62c2c08175a04274fa7988c4a04ae0225e97792d4688fe48a45c98f47ccea02900f72a4f852827d9f12c20302047c435bb500663064023067ec08b77990c631a0af6faaa19993c8351e3ea70da348363caee2c407255452d208a7f73a9329d9132440ee7b170e01023076613c8b874e6ed1277d23f19264367c3033f8ac998d9c534bc933f8d4d2b46e38ef383233b1417dc3b36c2ca9c352eb0302047c435bb500673065023100e26dbf0b36259c4150c4891766d23fadb36bb356de7a975e417d7881a14d8de362680db680e4858cfbc72ce607693a8002300f6a9cfd9ea56d6be1fac86f748a828d12d9e000b15c52758c580f69a9d90c12efeda6bb913effdcb2b16c7f99af1d410302047c435bb50066306402302c4ee9c5743253b111a67fa445c03480d7a945eda8850eb892179e9cb52e2cc7da3fe59766cd409093b3bf7122f1776202301737f980cb443aaaa28bdadb3dc739f450cda19a6a23012f1981d4a99e9f50c63092125095e723ec73f7cf36c40548020302047c435bb500673065023100cf02b029dd44517bce386ac776136ffb13c171e646c316e91e413eb8b9052cecd2851f0dc3d78887f3d51a6731887e6f023032102e3c96c88bde9327cc7f2f1b294b51e0b48a0d894e62fad807235482f8f2c76b2fa37422721f4da0d00355fea9430302047c435bb500683066023100c344a39d813c1903e7f0b5c35e8ad9b3186737a41848d3df3c7a5081bd9bf767f38188a685b4bd30b62e88fc3847706b023100a165a66db97c9bd00e089ebe1b9b698a7396a01768a80e566949bc3cc5bff6f042b2e6a80a76afc8df009e3679ef5c480302047c435bb50066306402302bf7ca633a27a1394b157779ec5d94ecaf85caae1316bd61610715deee14166c25ecb2c7b5ff688ed3eddaf63857074202307cf0cf3f006bc19c01bf0bfed2aa77a2d277833075dd1ff4ee78e5bddab631c8c6780a6f3284e2d8517c044f84ef472a0302047c435bb50067306502301f96e1312a55db27bb15a4117256b4e320abe28adec4ef5434333b2d2e628d4e35a7bb7ee4713103289bb2d183fc60e4023100e2fff2cbb851f5458a10f04882326f891419b052a654d30fd4ad19241068425b99ab28d588f8c00d578b2fc3e7e1f6870302047c435bb5006730650230710a916238eea65cfd8370f81c83c5e1fa79751d652a6e4eb35e0812879c9b1a45c2a683d7a0c0bdf14c74d42fa67060023100ca6b60afd4727ed5226239d108dc3d90ceea68d273c9ad064ab52602e4426535094e530cfe6a624c5382224875caedca0302047c435bb500683066023100cfb8479ded9617bfe1c3e18ead9327af346cf06fe2a08dc937cc7ea754bd9730b86169f0fbb5e91fd4cb30a0210655f80231008be7a8acf970720e9573212cb92514c88e691c1ab5b87e53601ea36f8b9ca7ba5f493f9823117b332c5d2cb5cd0c1b050302047c435bb500683066023100c2a97c03cef6a923f660e4fa23216b7f2780c0a44c2cf1b4fda0ac7e887d3cf1480c79a1c8397290e254cf4df16b476a023100cf296562d216330f06bda16d9be097d1aca55f1cf9e3676543963901d32390022060fa7f1cb02ace6cd51969a97350800302047c435bb500673065023100e12fa58f7be151e72c082995220a43cbb3c93000e3019496a6138dc1ca62a1d5baba2725dc9fd7002b0fd63d00e8638c02301453d8bb220a17696ddfeed259e918c7525bb3049821bfe3b40f45c0b4bcebae959a7fc80ad31c8382beab15b0c645b80302047c435bb500673065023100c330a9b714e5351a5a72f2a0bd1e5be9eef77ed8fcf711a314abe05aa834b6c8e74d0e2a1d25d443ddf972754ff32a9602307e3e4e24bee5b1b4bc171cfbf576594fe8bbe64e32f1ebbf85f88eff196fa503dcf98cdce6bb9503cda914b704a946be0302047c435bb50066306402301d8b6debb969c2515c5e2f86038003a842b565a3962aef42f4af9508c01d75be142dc63d54aa57d0afcd84e11fca8aff02305f08387ea0f622d2d0abaa114b115ad7718afb2f484b8a3dfa9ec0d1749d75091d5507cee686f71fd4b0c94cb75889c50302047c435bb500673065023061aed8892cee6273ed9312844e308d01c2fe360e88e5aea63da349a69662826f974d1178e2ac4b1ad07367b8d533c852023100c661ec6c611c018a0d8513a16f5212ba92e98dd418788418d014eedeba5a09be05efd75978815535dd2ecab3c71fda2b0302047c435bb500673065023100d094892eff7d3aa75e1880e45dcc8a18b253c9c01dd5234eb7e48af0e69d6af0f729483b88e2750fed5d7ace90b9da29023013fa8b73c410fe3062cc8a0cf1854eb713fb770ee02dd3d467ac80219641d0ade72d8cbb856fd836dbef7169a8b32f950302047c435bb50066306402307d9f9ef99d6408c3dd1b61950a58b661014a50535df05bb80a2bd4d6552cba6251f6064ab3d3840a6ec526980bcdcbf602304be14743d59785d56d2eb51b14e993cdae65b9fcfe8e744e3cbf0df78cb300fba2feadd99875e71ec5715d9db970e6d10302047c435bb500683066023100fa1edb479cdd2d8cb4b6df981f147aa26dc1f578fbe5c455ebc055ebc1494129c3fa633f90014703c596deaf5fb5caf5023100d3c22e79e5c51c8a8828da65546aabbb083aa618485d4304223171bd30c551fc6afe7ae7c903f578aa3626e11e2ef8990302047c435bb50067306502310091c0f451163bbda0c7a1518a0c51e71fa9a2409432b0ccef00dfd2f7f04b6ed4bc8d5178622794541cf57dc707c8eb38023011288d3beea9d8d1d59fcb4baa7aebc0c6eb88fc96645bd544952125e35f71dcf87d51be671437100bd427bc740e23f80302047c435bb500673065023003c38907b1972648ff24d26ae89dad8ff3a31cab3201150a27c3f82672713564a07199589474ef6bfd6c519437917237023100acce56c11d3d73ed1e7c5f884035e49fff6e98abfefbf0e02f2a7f3babaece27062b1ab4f08fcffd87bb6d74202fe10b0302047c435bb500673065023049e6cc8004887d7fd29b4b3fbd078f01347190cb39bb21c9d2f68dd814dd29d74667c526b2c3c460a5b4a47d0c44f889023100b413f3daba4123546b79f8b4edc136c9c31479410c218947f5348f1b917fd76ff414c02e6df33a569a4fc181929939110302047c435bb500683066023100c33047015b6b060712f4842e89a4a32e4690a97a6acdb00446507764c387861762d40fdb96da10ab43cfc00a5a09ff07023100ad876a05a62c4efaf0ea748b4cc096322bd6eedd5293061b3c7b2d60263c1f2ee9746b017fdb4843ba1710cb174b0fad0302047c435bb500683066023100fe194b0cb472a971c2dc5664b51bff3a5ed28d76b9f7f0b2cdaecf2a4b671d40e9613d2b9cd237950d9b4fafe27a63ce023100d6ae6819acc70b3bc88ca1dd864eee68eb2a6f301bd90fd32713188d644092ed8cda8200384b9be758613a1e7fc7b78d0302047c435bb500673065023058653481cb05fb2db1e199376517cf8a796cbf0c9d460aee9f2445b8e0ce534adb6a424058075243110e6df55c97d5f7023100b1c37af2bc32d3addde774deb2b3cce159338f30a5c66b514ae988847cfc0b7db7978704bc97253549b282b7786492700302047c435bb50066306402307eaae1e92d86d19f61a0d8c500759b8c97e8b139c8299f1b0a508365cb508a842a2073a2fa43fb78a03ec01722f60d0d02300b57d94164b7f1715cc014a8354e594a68c5d513fb8541a8194e1df580341b7122ba13efbe0b19531ed5352837d0482d0302047c435bb500673065023100ed02c9357b535e50a20252d951d6cb38b91f1e6ea950c770d12a7b34f7dc3debbf034ae35837748caa2bb76792d78fd60230642028a099b91d73235f214e14e6a7ce69291abe1a02a25deef304fc5313e5ec5313813e2c248a8bd54bd7a767b126aa0302047c435bb500683066023100ca407d80f1aa2d3fb5de669fdd887f47718c77d642d01ca8eadb63b91530f2df2fb0b95b7c5717aa9f7c17abd0517ec3023100b03de37d169907db4bc216479162e4c2bd9cd210e107737af2c8a845abb30cbcd772c6255b7d36e20f703c07f3b273ef0302047c435bb500683066023100f021ae45243c6230ad8bf3aa1bd3d4c17188fe0a58d17e5aca55d86103f05e87f44a4b38412e95e9dee5a04006df8848023100b004d1fd3cf56661cf3c49219678034137a868e190e7999296e46a3a3f4498dea5ed042e7001453e87e42967c2b30d270302047c435bb500663064023100ecd4831abb5c1b1448fda2301cd8693a41ea601eae57cf5c7ebe110206edaff47ab81681eeb3cf8e3d87d2e83f140730022f3b1f38abba7c0b32408cc87ba006cf25c8867c78515aa162c5376d720176d06c5fdcdccffc9adb79250861706395570302047c435bb500673065023100e9ab4bbf09fc4a6bf49dfd808f22d438358c68bc60ce3fc49e61f6a66247dcbec7764af70d031eafb0cd5c338a21d40e023005356a2ae08510e82245f0a4e793bb15b1bc3a269ce12cfbb2bad7f4e0dc1743ac56b10cb32640a82fa2dcb72dd4c8810302047c435bb500673065023100c2cf8438814195da1ca3e24a9a0c16cdfbfb8a208a3fc76c8b74ca9b7dce57606723b2cb847b06eab148ef79ef966270023053f37bb696f4bb453c3e6beb723cfb02a155fab7617369591ea9147628ef7a8739b9d3a3f8fcac9e4a40ec0737d7b6ed0302047c435bb5006730650230771bf55c1cf3c5ffa1e6cbf7e1c70ab7e0ba94aa40b1693f3fe801ef261b713d33517326f48be159d1efd0b88d6c1fcd023100d7df19d17cb4bf5d099161453a7f6d2b6d01c144f951748d33e76f6dc51564d9304f15a2f4926da10a2d9d3f8b54a2520302047c435bb500673065023100a548141816f28a03565c29ecc52e0703c45f538ad41643df70daa716f6c241b15da05b70f4a10fac4e20be76113ceb1b02301167b6372f6d55399b5f038fbfbc200b6ed1fb2e055af3eaa8689f009dd7875199a75019ca300e5a948ef5d2924e573e0302047c435bb50066306402303e866b7c680221e746d997cf4eee9528620a11d63ad4197e44a8d1671fd228040d47cacd3fa2ea2b3c6ef80958f0cdce02303ab750e5318720b702a7d591c8b46db4de7778947554e3b69b2101343eceb0fd795501c8eb85a193900a223c94cf6b460302047c435bb5006830660231008a59dbdacbdc19efec3121ea20b77087e3c7dda09a1eaf9a6932ced252126d3c0987819604c2bb828f02bef1f66a0f5b0231008b0b137cb4911d80b956803a7655c54b93dee3aeaff27a795c9de4106d25c5b2831b7173d0eacca583098ffd2873b1c00302047c435bb50066306402302abc0d03c472284122ce2755139d01ef47620adcb341854d5e2ff08bdd8860854b482d9763475b54ea464d0ba78ff939023069f006560eb92896f47cd36d7cae8d793ad8399f88897f6da7d2f6e11ff7fd9a0db7e5f377c0263bca6915643721e7b30302047c435bb50066306402302e303535b19f56b60849935dc1ed1ee1a765cce5aa629b0fbb6ab2be81ccd4a173b5b040bfef1dc545bba37c7c86a8700230291acc36b12cae252cf9b74a6c67746a1866cce66a619fb3d089de28026f97144735de74cacec6c50bbf79bcc6e327f50302047c435bb50066306402306932991a5dce920dda281694b034bd747589a042fff796e3cb57d20cec7787e074b57bb1460eb74b792edaafc240d248023068e2d46dde09c101b90fd887fe54d142d4f9b022e30bd04a4b90f1bbf92507548bfcc91db2be05dbc9300298c3187f7f0302047c435bb500683066023100a84ed6e2bdf1b81e81bad275532cb1588c7da5e4d20f23dc94a572c16c437499016ce7254a14fb5b4d1056113d9e47f9023100bf44f9f9edda6d39aa600d4e6dcc2582661930948f2db23aa64189d5874e3bb3b76398fc8649e7d974a48aea7f8a5f3d0302047c435bb500683066023100ef044682902b190fbf129545dadcaeb8e58096532942e7ff07b9d26498a0e7bc4005542235994490a84eeb8e0d571072023100f58bacece87b918c44610374f5db36d280de916b0f766e9658f8e95bae520cbf89cadb25bd0e40a083e00964d7445f090302047c435bb500673065023100d63e029bbd08d29f73351265b0bdd7261d925a585754844e9d5470e65e23fc5ac9d8442b39dd931c64c77db7cd16a0c10230230675caa52cf853de870e4dc2d91584d4f3311cd78e35da88e5555d6a4f274e3150f59f40d56ef9e30ae5128f916ab40302047c435bb50067306502310090dd69eefa7c8b134415751f262e89f5c13fafeb507c941fe01f64a091b82dcf5154deb859f612cd7026a57de9849215023072240d7f9aecdf6ccfb37411a86116f90b74648fcec033c38d362afe6cefd7fb871fab9982cd785800c59f0f620d30b70302047c435bb50067306502302e1718996d4cb058ff824e50c1187f9e40592057e780cf985013959e5cbce484bc8e4b6eaa94f6c390be7543381e624e023100fde45214a1ef3147f18b66a8acda341f5af628393896bf12f905390aa27941a1ae63fde1864efb74f3a5da5f2d3bb1e50302047c435bb500663064023030e4664af5b0153755aac3a42b2cc1cce3ca76d4242426a2fa5fc0e7dd2d6272d8481590c2ab06b390d7730b85afc8ce02300dff4bf21b0b872759c42670145ea03fd11e529075ee78d625aa299850f5efbf8ca808e0f045ca91ad5e357d6492c81e0302047c435bb500673065023100e9e92d93a1cacdf56778866fd4e23b3f4d438dba934e28688d4a0f58c5062302f3d834e0d0cd6e0f3b822d7494b5ce20023035f4dc3ca6e7adb643a3af31bdbe68f19bd22cfe88f269e108f9e60b0f635d96fd5c1c888fb3c62145a8b8499d021b5d0302047c435bb5006730650231008f89339ad0888b3ab8dffb43feb0ca1b2645754980ca020c35e5b4ab8f50b262e14cfb071c4668889eaf4d0b0d0a393902303c8386e8f74a6a6b49338799442cc2a6ce4dffa82a6d4326151bd2275789455827112d328a20cd738daf718c35ce15400302047c435bb500673065023100ffa18b9a4478b4f9a4f7233a31e0e3e3938c53cd9cc9d5ffde98c0be776bb7733d2fe6e649849c419f099cfdab807eda02307d2ccdf881b14d017ef799d33d75fd623d1f61d1bcfea0eb6928017c657a6257fd0f9d4a732af7dabccd543fdbc2113a0302047c435bb50066306402300acd6aa1732c5336ea640bfb1b32830bf2ae7a215638e4bf03ab24fe1bf49a7ecf018e7e83f800702cf8081864975d39023042ed848ee4f8033385431d565d9b3fff549a235ca1d8dfa9f4389b0cb4fec479599038712b1fe57dbeca88f13563c8c60302047c435bb5006630640230457f4dc1054506c247011e30fc91aebc484ef7dd6b89f76d1f8e168bc35f2265363d641869e3be5309c3d94bfc5cccdc02300d2abb24bb2e7dd50551935ee847ef1873b40db37d9424f81c19d78e1533274d5a2d046270e82b1a5c636d0695ce2f5d0302047c435bb50067306502305634c693451a969dbfed6565fa089f185320d8d25425464595500708dc38c6d925d4ab3a8d4fc4fefae1fe3ddefaa2f302310081eb8842cdd1ccf427fb4e8c7d5cc06a0891616bdedc08af7ffd3e4d967536c6c531e1085e8f3c1fdf2171efc9a6e3b70302047c435bb5006630640230377ce32c08f2fda59d2f5551042f62b3849a9bc67fb269b62811ac830d4b37fff16bfef22bf994d5ca5acdd16d4ca2ed023040af261cb3ebe871dbf53b3773e41649d0123686615cc4813b5f256c5db8e966459677767e538b8e59077c62519b62c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072fba72068d36f00a56e00729ba2a66241ffaf23bbf3397aac5792e9ef3874bcf29cbbc46b4fd02311730faa945c20bc023100cd5642e665116226e289971326fc641c8061ef72bcc0be109742250e3965855d39ec5188a520ba279eb87ae9e468bc520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300359d708572b71589d29dfbd9a3071404bfacd9b94de86be65e90e7add8c7a066a53410104491606cdc3a4c6ace46acc023100f33f262d4a57ef08aa2b91c7ac7a74da3bf3add604ea95fa39e5a6c30cb545f875c44b9d5d1889fb082c94605631a5980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002da1c286909f59dd592b8222940d592f78a6b2baf4199f87156c72811bca4975cd74293fc7cd267938742fc5714208a02306162879a74371b5852ad03de2ecb40628086dbc4430af3b31f50ce6933f364d695ad6a4542f41e6580bc857e2896001d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303413a4ba761c3855398b0ba15e9899682a73a5fb09eecea196b34c76af663aa1bdd02e907005b0339dcbc6fb5eb15f61023100e875644d21af32ed1cafb53f998f6b0ea69ab39e4174e13f9a324827147d0a737c65908d5114e31adede4e2729bbfa5a0302047c435bb50066306402307dfd360a88d3beb468bfe0fef396cbb023debedc444821ff5e5f8927b92352347e2bf69077beb63fb20f1c5721e92941023034091ee657a2ee2936e69bc8c1c87e4446698f3fe0b5c2b3389d374794d82c51ae726f9c779ac9c6540705fd8e4eba830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023012c2bacfa7b26990354e9f758a01502c75d6e2005898832085e56080ed322f695c22fccb15746ae60c5827dc0b62bc36023100946681eb101e91599fc435186f95fef49bd179017b43f8feeae691b358413bba58903c418434a6e84e11b122d89f67a20302047c435bb500683066023100c44d3b8db465850a177fba7b584e66d59fd461d5778969801a6c2cf587b465cec22883289f47aab84d48cc39457364ff023100f9429ebfd019cf47f67e17612fe83fbfce4de7ae5eb6dcbb099cec33ad16452d331103f5396b217f044c0aa87fb372880302047c435bb500683066023100b0797a4f5c5465ce644d961f72b4a0a617d234798a552ed7a1587cb4caa444121f53e159ce8470567fab8d463c9a015d023100b9644c3f9b70178b841d7c5c8a608b3ef3d9b1b6e42306254070a12e8a41cfc1b688b38d3e56f353d4de74eebebb3b6a0302047c435bb50067306502301efb493892b6cfbc4635d576d7eded631584af4fc8203fd42d56cf5f1b057571df14469093a46c23cca591323136a989023100f9719380b122a18d352e9923e13f347b5c6e697339485282b00965f5a72aece6e83edc32808e216b2cd7affeb57232b30302047c435bb5006630640230775b72f9cce98cb841b7e072eb9b03088b612c12817eb2e434f24b706c4b39ee7d61dd1b0713dd094c6f0211ed0621ea02307288647b7768ca5a746ad9a76cc1ee0de95f5e3f2ca9ac092eea6fa571b4cf70f3dbc2ba0809705a7a4580247b8922900302047c435bb500663064023007a086de352a8563b362b68f9ea59892ee5338a8f38296ed67582639920330a260bb5f9941ec01e36647cc05708b1c0902302d01515ec54af2dd763816cfadde19cfdcc4477053112edb3bca55dfd83140cdfb093d8eb4c82c2ff0096a3021f69ed70302047c435bb500673065023018aaa4b84fed48ee0cc32b550ecd8b4966a83e6e98d2b000f18f0d46283ef6c42476ce439b6a0a33d171e9c9c91657df023100971dec4dbb51f61bb0643b9e79b99c506aaf01cdeec6b0bfba415b5642ffbe8be65fc855dda807af6ba2d7a984d8670b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009f209712ed1d936391fc1f3f0cac9913fd6f9e58a8097460e7f2e33dc645ed96a2afc80a94f1c73626f62409d66444570231009191cf45e0407cee399ebdb815cac142b8f06eb97f8bb450cedb395afa1cb845d4a23c393402ea7646cbbc95f53dd3a90302047c435bb50066306402303c2c4c794a1908dc825876e126c2cf3850711ba60983bfea8cc9096d360ea3b576222a12058cee39b782d5f5ee72a3c102300492853c682976ffe510b4fe6487bafba22dc79ab79525151140b7e68332de76a9734c2a44199c6bed479b59272385760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e60fe077fa9f53eb894dba81e924e333830e7abf394de26f0122fd68eb285795ee0cbce5dccc5f18d08b46d3e746043e023100c0ae6e7eff9b8ac3987c9fa7caa01b8461410a0d9d161a782cb89956186a5f4dc1245c37270540f76755a0331d444a610302047c435bb500683066023100c0f0057f10c6e2e9bddd7496287d56eda0249b33a1e69b8e8437810d3d1cc6c706da351416846054f9c0de0c1ff51c1d023100bc4c43a67714e82e9c0c2989402da812c8e9508ee1eb395a677e5e4780bfd72235a2aaa5a7c5917f366de4f49310c1330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301a42174a85aab3fc5c60fd36f09f47cb543ab98250ae3dfede436128532fd0f1921e4c471b445f3da25113edf58bb330023001c3c7b70aef7c6dab69f3f074d0f6092f0ae0d4962b601b92e1fd62133fc42185eaa099c2656c19b3a65328a923e4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a911fbd08c30bbdccc7888141d1793e90af8de68833d166ab9ea62af31fea48274ea22c9c022b22810987f3e8d748428023073860114c68efeb06a13c729f314dd52a185d042f200e18d4d0ab895196560069476f0ae8bc30795ff0a790d311285df0302047c435bb500673065023043b38a80aa43c89fc63338d9845925aec9c694405f538f5491e3d1bccd9c430514fd9ae75f55c060c938a3a4bf2b79c7023100c006bdfb5379269a7f35a61540f7a6b1154c6f4cbe7f4d540e87a1938e163dd36a0aaf470d74ea72c6ce3988e873d03c0302047c435bb5006730650230610f99507532c39b9523f6eb5ca5487c19da3735bd3cacd7e193e8236c7c248b64c5d6ee2b5299c13c3da599f2ce8179023100d9d98606477c019c9d645a819d35c166bee8514e3f749e422e8a004b8ab060b3fd68a387ec9adc4ab785c40293b6c5850302047c435bb500673065023100cc205b963de7af4958a9519016a4ab0cb376806d17d375d976117488f65566fea75395db5825147a45179f9241bf8762023046f8b57f8a538f36569159c1f9ce2b5a2722d59e0004b1a935ccb9683e8f02210fe77f4067a815772236d70d0b5b5b150302047c435bb500683066023100b588b4473d4844f93a5a5e4406cb6eb146ec0e1ce779a6127601595b27c96f10b362e4208d75864c8d6f6a24baa00cd1023100f3919989fab35cd73daf74911c78328b55d93b779dddd09abdd01d74c2863b32e8678581ce3900514511d9ea32c476400302047c435bb500673065023100cbec29a5d91111055fb459e96c68e99afda1143966f53e40352c8c0ce6279f472dc6591c7ee0858b4a76aaa5edec6d9d02306bbe4f51d5aaa3a0cec921bfd199444cfad6c20443e0293ab73abe2f16f3701f0a33b73486009a7d54781c0aa886a70a0302047c435bb500683066023100fbc8ac2059a4277ca0d1b45d54550075f5d97382a85a203818f6fc9db79eca991940251ff31939644091084ea6fcefaf02310099d017d15002ebfe09f5a547b79b8e0c837f27278bd1e57178ee9e59692011b16d4052076c70db67faee17293dd3524e0302047c435bb500683066023100fee0a58a4e8574bb3d50010ea0f85d26d8eec214b5d47730cd0b4ee29b980df9fb80dcb3a4355162d9a043a71d74503f023100a9ea4be8504c2c839f0efebfe9a35404fed8c3a28e082b5d598573f76d7cacd3e0976d04db57a3adeaa9e79fecacff740302047c435bb500663064023074b98ae3ed9cdf3165d184d5649e6124bc55adad33afab87f84b6526d9ecc68269cb240bd9e9ca2f57db6a9bc81c43cf02305384432b310251f702bad9abaf164c728ddb19d1c17ba0d3acb8939703755458e6f72b79d2ad3ef9776c5198ded589ce0302047c435bb500683066023100b052c524c011caf82609bab10986df4ffe255167188fd7d689442f83dd19df2ddcc3945b0cdf0181242811a49b54a5dd023100b717771200096453af0d8837a294bb0c5ad0f042e81cd4b07581e96461f13f95012f34920a011225a126af97fd66a9f20302047c435bb500683066023100a8d413e8a6d64f7156d20a98139da95f1c9becae165b463e70f8e7d3b587313d181bfef14f3b282b624c4d3c2fed29e602310099d4a658ea84bfeb17a04daacc4d91935f4ba0ad6072b9ca2ab7f6265d70fc56c231c714281de5dc473a33742b8dbe760302047c435bb500673065023100e7d3aacfa460eeb0a918ccd2e145d404619502b72d8f54d20ef144bbd171b38dceeb507860e16049bdc48c5a45818a4102305cc65bcc47b5f23d59b32bfc3639f5d921ce04cbfc5369438562936b84fb8a39b7f0792cb30d5a06c0f6e1adaea575490302047c435bb500663064023075839801579267a3ae21d9caa9c8b88dd47349ba33fbd78bc27dd92eaefcab9385ff55e557dede58423628fc6e798ca402306d27e8491bb72201d31ddff2c82894d4424da2d9b792d4b62411b0c98be173091fd235a5b23bb53d578443b8595fbbe90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023006fe1d9e0d620d78ad4d0c8040541b4ba6845888f00467e8e87a345be04a6f1eadcc71cea9a6760d84db8733c61ab4e30230584314e5a34f117b19f1ea27aef07ebabe6ff191927b44f0989107ebf0fde60a4989631bdd0cfd09a367011c62c5ff1b0302047c435bb50068306602310084ec3531694b2da6867aaa6cac54d111648de162b66a1ba6151c695a6c06aaaf136d1595b69132cbd44052fa76bc6eb0023100c7e24ae6735e210de0e906d9bc80dead80ff7199c842e93b5c5d9886b971df9cb2e97a4d5519e6012d7f6b8298cdaca80302047c435bb500663064023019cdc8dc73dc2e97b4d18c4f03f1329eff2033b17e2065caa800d75d43d172af2841b6a989b1db7e6a63f4189bdfcddf0230340030e39f8416be67c712e5cb6f982863746fd13f31689128107435896e3938e09c2c8a87c475bae4c79bc04c5869950302047c435bb500673065023100e4b92ad2d8d91d01b05ff3b8d7d3d9e63efc1b3063c9062826345be1af27539c3c9d6bec10e67bf5bbdc2b522b2aee25023009de756316dad2440581ad830f48235667496cacdfce48c6506c0e29bc10a7e8b54d0de3a1ef4df8fb91194b46a1cc300302047c435bb500673065023100d3d72322d0b448798ba7678ea33222312dad0d115de94b093ebcb7e7ddd9c3cb6f14f83cb834c245ac029caf36f14a4502300a49c8366337baf2f42b3645a51d9376b5f58adeace5b444180157b01fd3d2a5b50b2b9eb89848a60a1542720897e3520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303342eff77a252b4635e1ca599b011575208137acda6875525e7fd4f4e826beb0823689ef14f5074c26e99496108102a7023001e5084579e7554ef97dea2485bde2be84426b925033133f03ceb845b534f09fefebead97c8c527fd81894db4ac5be060302047c435bb500673065023061ffef7faeb7fdf5d167952af459fdf9301ccbce13b126827780ea3fa1f5755a908f1e905947666aa35624ff8da5b8400231008114d055b32e8a48e7177830edb10171276a6d7c542f82494e98949cc5d9803765440d6efe6aa74f4e4195f59bb93b330302047c435bb500673065023100c16675f528ee70e81ab0294db0e1793f13b688d97507023e0f712c5e7079840f321a25ebd7f9579d5e810f647b4cc04a02305a46f6ce9304b1f27d2e0deebf57aaa5498175469385cdd29a7186ebba214e510a19fa094899a4c9458faecf9d3712830302047c435bb500673065023100bd2664c0e00ba33828c1f2d1b8806257093b6dfd64a6b7fced6db6f2627d0c68eaafbe228a8fa2fc119e026d383ba7aa023037076757e5d4ba549f81eb14bd0a93dd65fa0384146de97267e204ccdcea1208a47833cf358c31d58b8621ffd18e4d9d0302047c435bb500673065023100beca0d9f2b0f38e37528f88c4b3747b94d342f81569703975529693c7429d138bd3d36fd7a0db0032ed523ac3c64b9970230662e3ba771bc819a08754479a1c31c0744f33b471814e7a918efbb2409b707352f8c3f6f1480ec5872fb75358623baa50302047c435bb500673065023100e358385154e34492578647de9fdc21fe08c0fdab8e6cc89b5d790da76c52e33c2f6dfe3870db65588d9c2ea0988007d802307c4619cbe32c3ca106ebb0282595fb2fba96b4bc4932e6afa4dadaaaf7715f53289b4d95fbc2d703ac192d48928d19060302047c435bb50066306402301f2522c5b4c0b4523ccbc6693a12b9da084566c3d4af538b2463d63d3fa15dd5109a011a28f2b90caae754a1d746289d02307bad1883e7d677795e9e7df1833ad58c6a4db90ad909a763bfee62be9df48faa39b96808a2eda6d029e83448d2bfbcc30302047c435bb50067306502302f27b48c1fbcd43d3ee5e496f813e5d0282601c197b6127b943b97a6d642a3aa04fe8947deab9f82e28e6f79216af7da023100e1cc64de08ca2ae18159f78b2c980df5b96eec6330a00dbe6b032414cccc05c25931c1be191ff58f5d87dc60860e0b520302047c435bb50067306502303a02af28b57ea3707719caf6c3d04f76777fa529c3ed9c595c974aabd253bde07919c6b66eb4ded376707026747fb1e202310083052998ee76da8f1332734c96e3b8d21d5a7534624b4b436d30267afd4b1d943f299da67b9603425982554df477f7d30302047c435bb50067306502301239fe56b6c284307771b1e09f5cb0a45e05348712539463375eb1f8a4687c582844c0710ae7ea4b9c3af53167e89986023100d2c115bf59405e85af30e8910ea59b758b63572caf25070c8077868bd9ab9d3595f63c57324696a1ccb25987db3aa9af0302047c435bb5006630640230552cb6e00e81e1d9057b1c3590141fa8ad0d1807072f66f49992badfe00b530c06c4e0b7ae19d962815d65d7725ef593023040cf0b42e7a90b451ccc467d1aef33ddc6e6a12c1f383a8a13d91c404e0e53811b0694e7332cfe8e42fa4e943129b3010302047c435bb500683066023100bd6c3b70e7a10a5c150880f640d48221e336bc83e1b12fbda4847475222eb87a3daadb7545aae7076f048e9b9ecf85b802310081095ead8b9896e2fc5f65064074d222b49da85af04396ef3a5e94bc25fd55c5d66a275ca97a2b1a0215b09879bea6210302047c435bb500673065023100fad82e8edae5260b5e79d1dd2978be231911e5925f0e87d007f5c1d9691a25fa9cd40640da42589d25887c2eb02eb46e0230589a4b0ef4597d8d412fc6cdbad9066de669fcf2bd37bac757bd4f81bd81b6259435b271ed3af3b114a68704f399502b0302047c435bb500683066023100bd65916bc2f95e05109f77fd19994e680232fa9c9629dc4c8667fa77d30cc76dd071fd32cb2f1ecfdedc98e930530a78023100ecad924421a2e7e6549a5b3a63856757b929706f2b4a88fab2bfcb736d29af172bec1122b1a14d14ed7cff0fc669846c0302047c435bb5006830660231008e508aa269760c0d9d98f94df7b32c69cc59e814be051ee63846e7bdb63226f3537da5f25e4a0497f4f698711dcdd7850231008df330535f89d66d2e38601af0af21343a330d0775d5b6155e6242eb12fa63236016a73cd1a728c33cdbbf15248e5dd10302047c435bb500673065023100df7e326edcd0445810cd06826bd3b612a8a4277d3314248c1fb98cbecdd549775fb512df8f1bd4e2ccbd8a0a7ae57c0d02306de1ac8e11f9f4e49b251e3fabf3d8c5c2565b4b8d4917ac8f4b0099102931d541b777e8accb45b47740bf8f7cf631be0302047c435bb500673065023100da320368a19db28be26cde438969530691e81c546a5b457368bf1e47fc8ddf40094ff748a692d47ebda388cda730d99f02306a49fc7c759ab86392510ef5dd4ed96ca91d10a5f5bb2a935d2554dc3698f7b9d8c680b5fcc37afa2c9cb1b271db3bc40302047c435bb50067306502303c8a7dbb6c18241cf42ef06204e3832ed408b116538d8ec0c09efb8f36d77e4285413435836d7a29cc24bcaf58ffe575023100b70b23e37089d77b447e99519e2be1d894996ad7319294cb325294da507eb9d07157124e165900629a8e722bb8cb74550302047c435bb500683066023100dfda88c43463e5c264fd4c47815123c615518ad033768ba11aba967e58a98bb88e9bdfa8ce03be6503958153e317fc58023100b3b49dff1a4646899b674d469f9111305d29836c1578f5fb7c96aa40e523b3a080417749cf2b009a491e694cbf3fe1030302047c435bb500663064023012f4158c19da7f5bf75ac3a6bcae294a75430cde835ed7e11f51bff1856410e4a783ec0c10b8c3ff464ee03cf926f13d02301dc7ea16b21ef71e40cc1bad954f6cb78c11bf29aa9de983410dba07b43ef4f859ac77e4382fd5ccf6ed7dd6cd41de8a0302047c435bb5006830660231009dc65cadc9eb5a7a3914ec2dbe025440fb5390b3c779aa82ae824fa95f9db34d97bcff04939799b679c446b2cfe142b4023100f63b7de7d668316cb3b47b797ee839faceb1a61d2b93cac892f64f4cd3e021a7b2c6619a92babee4629f144985a3fb080302047c435bb50066306402302f85260ecfebc9b9ea198a6e56542da5eeccd5aac00ee1a3f372ab1e387ad3fcbb994ce724332b06155194532ec2e1eb023067410e65f9a006e9013971350783e887a092214a24fcd8e3a414f98470d3d25ddb79d5417e6495a77c6b60216eae7c230302047c435bb5006630640230654f11e6170e606eb10cb6334cf96fb23fb93f8f374d4c4cf12e8af575c77cfbc4b6a1366e53fc126bbaa061309e928402303139fb5a541bff32094a1e45a93f68a9d652b6161cafbb9308ceaf62bbffef8494afeb03898a7ca5500054a5b64be7ec0302047c435bb500683066023100f08e4ae0cb98d9bdbd18630b0091ba2d582c86841e52e4795450a7577080118d789f7269989307ba88e6475d434c59a4023100fac2bfeef3b4af6b8a8a21a0f9e83fc2127b0f7d3e9432cd20737cef482176736f05217c344dabda5888949e6b2535830302047c435bb500673065023100b751e4a21b271e8f8dedcef85acb0254816bc9d0b86237768c041e256f77a9b6b7e1395f2a6fbfe5cc29830d3ef4aabb02300818ca371448df4e4059ab28915fb16edef6300a1071573f67dc9c4453b2997a488f2c02b59fc621d0e295d725ed48c50302047c435bb500683066023100cb1dd36a5b5a1259f171101ef7f6babca8c2a4b8b5418489468b16bc1654577f7e9f508c9f46e3fbc2394db83904943b023100942780e987a97f15013f2c1a4ca986e75f7c3735c59b9e0947ec7f32f89c7efb21a04822232a2459d04d67db4b8570a50302047c435bb5006830660231009b1bef1f7b25a7c9b72d9415ad3f18040a4dd9cea1f8a510abf84ccdade149d42a1dee09e47ad3ac2892d0bc548fab62023100c4dbad9836cca2aa7ada7e02bbf5c7fa65cd385d7f0f1f7bf2034ffadcd66b055cbec37ee969c5b8d2ea18a2c836e50d0302047c435bb500683066023100b3f54a6fe5772ffb0c400870221ab1e869cfd0749f0512bd95fa984fa88ec22d255928cd5fdaf82d932728ef80a9d9bf023100eeaf0da85d63700c54d6f3cf0c75e29d18fa376911b371d41186161f7c12225b7379ddc3693c474613ac9939d9a0dff00302047c435bb500673065023100be82f1db9095833cf59797bae9ebab38177d2ebac8a22204832c149e87d436541be42bca95e061f6c6169a6765a1f78502306066c2d47d5efb5a9d0f428cd48194ba6dfa257dee8283f51672d63e149a8924324765129719d90bcbc109d400316c6f0302047c435bb5006730650231009bf9b42a7c79c2ffe9434cd5fceafbb5b00afd80cd85e6db31aa8a4a8464118125b703e0f631fb56b2c17bf1f968dc2e023010666af985c7f682558dfa01b0befb782f8ecea1da5c19c0dc6573afb9989aaa8e5c668d8406835439536a57fc56f9450302047c435bb50067306502307e4afc08bc615f17b34a00d6d2ab8bfa4543979505ec2e45f6cda666e75b4e80f7cf7eafaa3453473db908e795892808023100b38afa2933d0c9822707e140c7ada105c0be90085fbbe7e4072cb07d18af202b85ec6bfbe72e2a1d1eae4e62c6f3d3370302047c435bb500673065023100fc067d77945acf82519a055b765f56ee906f9a344d995a1b980009b4a36672bfa155cf77fb4a92101b11fa2ee6b8c27f023027cd797424057cb28cb3965939f21be91838facfc60a1cd1d7e5d00c775afe8db745f94f2f6cc97bc780551e3302553c0302047c435bb500673065023100d965e5f12c02e8a7104bd9b800b8a12e05ca23c2a3fa073439022483731ad94ca45c67ae70b8c8ffbd7f13e1432a2bbb0230582681d5808da63ee36cc4e8c4137e07e848ab581894d363b2c92217a465258fd7cfbd6812e5f608bb10b97d3ca0c3830302047c435bb50067306502301f2a7063219d87920f74ad87cbd5ca7bfe34b9c0ddd0ebc167dac8b3125438daf55e7a7d29865607d5b007fec18a1ae7023100a686b4d3bff8f4ec2e3059df97bf243b1ceec2ee842860b0661a42d75af623949dc2e99638fcf8b96f483f145224b2ee0302047c435bb500673065023100ae559be57120d59eb1bd5886f7135722b083c9cceb2e86294ee8a2236fcc66a07f3d7fc919f9a6b577b285b02e1cc1b9023022b7f7c8cc14c96d44da99624dc40546f10e575a37b911e02669598d80b8242f5658f40e2680a4997134d30c00aadfd50302047c435bb50067306502310085f6f93994024ca27b240cb18432f13c4a98722da109ebbf7b5ed72ad6e514266b80f317d3cccb5217e088cc9cdb8b2b0230412a2d79adb0fb3552f18f5cef55f320b3a34fd211c331d6d0431dc2d6f6c57c2ba63d41a0bb06ed91b64f3704f4bfcd0302047c435bb50067306502306c6134628a92846f330706321b0407284568c110b3aeea82ae50835d2da2347d1e46b3d85e559febff61bb6c8ab5ee59023100940e9e551b07b5695d44c5a1fae9b9d316c2e7a16c36d45f5e63cf45563de1dfc053f565dc8a0e39e9e70589c954cb650302047c435bb50067306502305b255ebfd39c4a886a679a41dcf3e4857d5c4a49c7cc5ade79009c3fbdf05c2d20e02cb422446c044981eca3e5bdd34f023100f34edcfed5a6eb29b85a15c696b29fee97849c171cf54238a6842441db26ce7b7c20ffb185c6f7d3439cd0585af9e59b0302047c435bb50066306402306b67699b81944ef55685b45f154e8b99d8044529252bc0f5efdaad34da9fd7174bc10eb1e654d040ded5b09fdf761158023004738ae08af1d17f4378f4b9076963518c00245a7b009aa535520487a987a1751b4b29f4a6cda5aee574e6d9d1b46bc10302047c435bb500673065023100ecd0160e7f1ee291c27f52ecf56bed0f6513464d777c5a764838c07dfc98375295ca42cc6bc9e41c097cc64be5b4ccb8023030c8474444770b600b613a4186042f76602cd6889e8a720eef082dc868a13a8d66f2a8e5fc4a685d5649c20d5c876b640302047c435bb5006630640230220f0ac0c5d88d2463d9d336a725334a694f77ed07da3c7649d6d90ff240725ed43917d4bff13b81922d74e9f1dab7260230182e3d882a171a63b7e38b3c74c646e21e78a1683c6809e07a62e21c5a85195957908952052e761b718eb137b47e35090302047c435bb500673065023063e12db49b49d24955806e73c4bc79e06281958ea3d53aaf0d16c7c3575fd73f9d1645f9e9e85128c78838c569714587023100d74a24c1c0039f249880d09a16aa3bc6a283a9d3c26b8f347bf1ec818e238cd2179219793fbae72c9cd0a2fe82c2760c0302047c435bb500683066023100bcdab41f3802c426e5bff193e083b53f126c1b91b31071dfe8b534379078c895901b7611b6f1a59ae3711956126f57ce023100ab98cc54323d872342472e095f2c71944b005a76e742f8558d6b362f643b5b01bcd398e0ce2cc60601f8a29a11fcdb910302047c435bb500673065023100d6cba5f3cab7eca2151bd67a894296c26b12d60f211d54a4e6c866ab9fd68ba913405d36a43fbc50c6e4636b023f31e0023003f734002f76d347c647f0a1d795a48ed4cc50a452070ddeba841e932363e02d70bf9c96bf25ca91466074b0eb62cde60302047c435bb500673065023100e277fba0029a4c5ec81652a3d301bc2cd7d2b192b8b64ee4277cc8d3724ea7c620f9f099ce308a7a8a2e2702642b77ad02307935c26ce64e5615f05fe350fa8497c84d48679ca27c5c572e11929ba2022d5ee099d37c6039e1e42348cf8820f135ba0302047c435bb50066306402306c599614772230c7a64c735958f152809dfa871e92e4282446f6b85d4a9d1099e549707010eec6328536ac719f87a28c023011558f8c759f7984d0767c7b230d93d1b4e3ec4467b958a8948fa882d9739ea65450d53eeb668b46a883ff0ef23667c50302047c435bb500663064023074642ba5f37b9b124fe6f154dff3228840b026c564d64a40b6190de8ef24491f16c97113036a3c9c87c2df8158fd298b023079216e97fdcf90ac40abf17876e17f06cc0fe77ad6fa021a6d7cba5519015f59367443968688852c0dbbbfb7670de4270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e108d69d216126194b69a121121383645460b0ddf17863a04a274e56d25b22c468216c938334c0bedef363c9a776b283023008ec2a5b3712ca9a37d72464f4a54d94b0a97c8dc16d4bad7dde1c358c662d847c5bab9a4d00ab0a7895c82677073fcf0302047c435bb5006830660231009c6aab3f061c33fe4e12294f0661eab148f330a8212f1d417a48808997109d2616815c2472638a0b820b89b55e300eb9023100f9bd97dfaefb7572711a77e68fc1ccefe8bd6809b282b70f7a8c732df349226c1ff91b86491a85ffd5816e87fa17a4970302047c435bb500663064023018f3e3c04ac4f46bb094df74d77e342e66f326bc37364764d82f88bd537cc188cb74f179519d16d2a6aafdad14acaac002303119617a808895e560bb1df0f64f1f312714270149ac8be0c07c2fa219472c4bea1aa20b375e8c617a186f0828dbf0cb0302047c435bb500683066023100cf2992483606c1235cfeca1030b77ff98fe5cb420c9aa42d59fd7f61b70ab9218787075e5969a7542a9f73c4b81ff423023100a370541c8ba761e9197e3a72549f6b5d51db82bf4aed19c17aa68a2b754f76b13b7cfd97bcafa15adf863422004b0cc50302047c435bb5006730650231009ef6345b8e68ccf68cd9086ca1b412ce7c6477966e8c76d6eaff5c8392a9812fc0677800109612a403f408ba7a6cfec1023026b7ae778aff44bbaa4b8ad7c3e9b690ee4cce1a5968d2e42e1e2d6ea96c244797c109b6c57f375748f4031c8aa0051a0302047c435bb500683066023100ee03a82880df41ad097bc27a2fba0fa77c32da2b49d03e736ac5304ecc00f811140e5c0879d4cc586aa203136b1f4b5f023100af9a469ef303459549d1bed00989069023a7593fd2d8007fa2fc2406d53aabb49b3475277971d593c0da4d4e48fcd3310302047c435bb5006730650231009ed6a8ae2e1fd93f0f1272928bd2e483ca68db720100e5aee24d69d0ab46bfe0b9a6c9ecac7f5aa425ebd64bf871fdbf023074274d6149ea3133c201ef76f4ef85e2a30dc3142bca38c6e588f05c462a603d714ea83e5ca0cceb2ee0186fad5541fc0302047c435bb50067306502306f647653c1906a4fd5024b1be3bf29201b928675d0c9420cd107bbde87a6923976f55c66a88b41a7f09a847c0c3eb66102310081dfd56fe43fb6969386bba01f7b7715b53f89017686ac475d58f04ca99f84af930dc21492f8378e3fec205e4029872b0302047c435bb50066306402304d6cfb54755a95c84b851719edcbed7450750a957b891f403da96c9b0f35c29ded2f34d1790f89648e15285629503aa40230101a83dd95e3103615c06aa6a7e153b8350c93616ce2a456fea7b740647ba2f009169b7fa4b5487c6e6e638068ea5d930302047c435bb50066306402300aa8a3b9ec6a6f5191b06c36c98cf2be33e98eb98231dfac015a65c103d55902868c69539b2e76fe60850887d90f2a0c02301e006d34ff526d76eac0d07ce307d9140752efbd3a336a6c338e066775c7f2cbdcc062fb2bab7d6849be7651d3cd3f5e0302047c435bb50067306502304d1431ba36368dff8ecfcad5613138eceb55dad0f2c2a5b4baeac69cc93fc2664767fe2a6baa3df001b03d52ea5e8210023100d52b27f3922afaa6815381018c32ee513d43465745b041fcec7df2fd3f0d32fd6e89fa6462260404a6c9a16dff0708990302047c435bb500683066023100bcb5d627d1039d35ebf5b3c1432a39bbc727d4089a059dbfcdcf97ca28c3ceeacdcbcf8c0da666daa8a5f0ee0c0160ee023100efeb088788ba098fe105dc75dfbd0f4ed8f96e9281cf1008aad5a33f0f38e957d3f7f0af8440c63bcd7ff43e8488606b0302047c435bb50067306502302fd5e143c616aa2272e4947569891e97af815cd1d1353dc0ef23740eb2879672bfa4f47484d30a061570cbd9d84cd255023100909e613844fda9327ee43701ea9642d3750445fc66a692a4f3aeaaad7d0ba97a1c6037876bc40c0296fc0677765547470302047c435bb50067306502310081552fde09ed1fc6fa63dc45ed562c2cc15d6f2b616c809d580dd2c9ff214a3a74265e0b1312792276446b6240543d9402303f0ecff5f23e510ba6ec2eba1614cc8e097cf5a42e156e04a2925487d58f35ac5c32af5eef7915adc09c8951265508200302047c435bb50066306402301e883f0450822bfdd31b20644f33c297b47cd0198d6cbf3438c8b476169b47c38d22c94824b4579cf9d7da96612ba5960230457fd31014e9ae3e621fc40a253797802689052a52372de90a501fee2b9f161ba952e98b349e10dc1a96dcaa9436c0370302047c435bb50068306602310097dda6b83e9579bb3a3247b112be175791ad9ab517cd67ed35d37d2c566aa6e7debc057ac76445c0ebc57820321f4cbb0231009e129a7d14d6073beaa47ca9e540b4141af0584fa737c08c8284e7e23f2ac93b62102fa54c9e687690ecee23a7d62d360302047c435bb50067306502310099390bd0fafda05a63746ab244d5a64e0f2d664acba7df49917d3991b9ec297b99718c78e571909272a3bc86360297dd02300a8633f8211dcbfd280ea99d47039ce0217b6de005924ffe956f287119dbe5a49cce329aa4b891f648a8fa8e071d41fb0302047c435bb500683066023100b3717162900f5b81a2701c6178c6f57eb7ee5f4421ba3bf2914ec47398ab07285a889da7d752ec5b960c4536943f5648023100b60f27ded3935b2525a0b1ac86f808bf71aaa5285fdccf05ceac2fbe726ddd513be0fc331cdea8d50e43c701b57ca99f0302047c435bb5006730650231008959466eaf50854819f1af4ff1d1daba9b65ab775e599e272d16280656fced31b945fb9bfa8cbc44594b4faf078ca3b102302907a130ca8a17f22863749881d19f8a59ac2d937472e7af7fcbcaaaf3a6219d37872cab9fd56e7e23e6bd08d84ccf9d0302047c435bb5006730650230363e14a1f83856cd7aad911aa70de682675cf6b32639285909c4d87dce57760ab80fa01a8a3997c734fd3c4d25ee46d5023100d09f39430f088bb3157760827045601a707c9669cb37b2e0b7ac51b39fde68e8316310b786e44f86525987020ef8e6120302047c435bb500673065023100d3b0ca494a58d5c38fb990bf8623f4fc78cbe5098b50ec81967355ac7a2736923535319d64cc487173ea2fe29c0a7178023065d73c030f573e5589b24185a40342f916348960fa86b042ff0ba17b0ef20b29e00d40d6ba550757ef02b36f308591be0302047c435bb500663064023051718c348da2fc6bfb4c1ae89cebaf6221468c97ea22d4536f798eb4018bfbcc9ff2e083e318a906366b5c9eac96afff023069512583f328d893785f73b8166f0350ee3ba7114885af7d4075b5cc354a8f7dfda6f6d903e151ed05752c8b5d37c9d60302047c435bb5006830660231009457526a449788a23ddbb94d26f54a0507e2b0e9f7cbe26fd7da7889333e2d8d16a0727b3cbf89394d9f05047748c393023100c21fa138aacae7415795eb78659484817e0c1de2c490d066e6d1db3f83e7ce70c3e2eac665a51394e5ab27ba69d405700302047c435bb500673065023100a1b32d2f9fbb22c23f3b6f88ebcb1afa6d1d2665a9577ef5bab6e0481af940be29d68db1685a9dcc0bc600de2987f5cf02306f373d7c6434449a181ef24e96d0033a7b2ef47468ab14214fb912ea8003385c82117bb339a3b46de2cf229c4e560fe90302047c435bb500663064023001a4770c0e185be7b5acfbed207882f4c5d5c7aec457720338c28a6a6104152dd7b9d40a394bd540b4682a7ca668b8890230275e9fae01d315ebdbccf9a709291c7a4808e415c17a1757bbde8a69fd16c34910c28d1f25a795b016b21d9ac9a1c1250302047c435bb500663064023020816683d4dd054ec849b86258399d156a4f84d3370713fbb7d774dde0195ccebe8a1e4c4e7a694a38c2e5070e2e57ed02301b66b4e22d325f38d5c8e10987cf340ec55ff7d412583d19c90e8ecb882ad391dbecb37e42908c6bd5a923c039065d580302047c435bb5006730650230068c8d3c1a19c90031919be444247cb10db18428b2cb48290fa7c11e7842087baf9f5c9cf55380f0b6e1d78f7dec393d023100ddb7013d2432d6bd3c2bf160701d0345dd265b4023f3140fa3f087eaa5588152480442fd05cefe396e0b702f0a3dd1c00302047c435bb5006830660231009d9d0528f6eb41280aacb6e12de1d5124f68881ea9a479fe63f11d31a9de1c316d1dd4392b819a5e3e78cbf9b1d762ab023100a52161c30cdc361dea2e2445f4f19d0335d9c0e82339389c5b8957615f0d63cdc85cdfe293164944fc4932784b98f0120302047c435bb500683066023100f1627899cf0b041c7167251f4eb774247c5efdbb4a432c24a203cb7e6620593f6d379f9e194905436b4f4f16f7f668f0023100ee1111ba29159f3d5d6cfb638df51bd62718d01a6e923e5946add8d70177b23a324f694dd01a5efca7d33eb4455a5d000302047c435bb500683066023100a7878ad907861a0a637df5055134c919786221fb2e7761da3cd42b9781bddb985cb64addc11458d0f6432d3fe9473bde023100cbd4df6263132ed60532e6897d483883fc6919f7f79a064cc3feb8d2c4dc4ffd4c6e17547fc493904f7462bf6cf5ab030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dee49b5bf0c1f24ae198f8253d25c797138f5f2e6ddae7ad4e821038c025ef2f5d6b81938c4f3b6c0815592a82437060023036bf81701d1c1cce4210c81c2c4ff510355a1d0270e809ce1d11d8e63d3f9255931ce82004c099c03bce2eff92c036a20302047c435bb500673065023007db3898b5347e37ab95bb71ddc03872650273c852d92548f870b4f0e19c4185981e1251371bd709f82f6ce7f44085d6023100b9e7b7d900520ba292623aff5b4321f466033fa16350b23da6c8cd23029d5b0ed60ba5224325d928a82c98b6b89d05180302047c435bb500683066023100aca92310a05b55484be008397a7f6b3d15da7d5629ad96b5db6adeff12feefbd18f6a64580656f2c915477ee99d7c2a3023100c515bd7fd796a6f78a109e78bf9e975e5e7203685225b0fd4161875b2fb7fd88f41d291899c6a4cdd7551bea9725d3c90302047c435bb500663064023036b55712f8050d6d34eb430b1e87be3c909b579a6a4d4b24ed081f2eb4850ec479016086b0a8fd57a799ce8c065502ec02306d867de7697cbe0c5c2bbee7d325d02cb76f355013ff57f385e4e9f513299e4fdd2b8bfec945253def3a3cf13fbb1d8b0302047c435bb500673065023042ecef8206ba0eeb6a13f8ad9b678fc9060de4042e8866c8d4f360f3a14921bb0ed722bc4d093d8092a852b2d7e299df023100b1f1fd91e7bcc84b57c99ae739fb04f6a289db63d33b9b411512473c9a96733032bde5b67ea59fff3f208c4cbbb25f840302047c435bb50066306402301331f5c801ecec85c3de905ab123051f7ba8843bc19df995342ea356d6c6bb8d1a8dc5e2cf3c9b38decfa8ba067f2c870230663c37452eee4601c0863ee5e63ade8fccdf0c13ffcd9c0f0b249269bf6f7c5e7908d6321e0843a91846f5729c637acc0302047c435bb500673065023100dc987ae661b2645151fc64416b914c7e1d203bc2ab3d9a7826ac6fc14c82f52be1565a28cd64efda7a343e6bcf411a1b02305fc46314592c3bac3e54740b5c33a100e700f2f3d5223c1117c3b60a70c499f50b67ee811d3ea8073f1b3fc2079f9f730302047c435bb50067306502300be57138a6af9f46a4d5422825aed2f039247766cb252cb0ed06bf9578d27e9f9cdcbea285756c0db1343370137463d8023100e0c47c051c222e11fa68ba7251c278db4b6cd8c468f99d65da5f4102e2b54bbd63b2d50d81066ccbdb0d072d3653fb650302047c435bb50067306502305e0b85b0bb10269124b06d26ee27fee9645642a789244e9d11e9df884e833c0a5f2ea45e85ce447898c31367132273ca0231009d7d8847bc050350135bebd36e0c20c31d89848c36ba362f5807e305c83c83f1b9f4faa7dcf9effdb53d008b9631fcd60302047c435bb500683066023100bec8a4c11015c5a1e6a781ca3981819d1a80acf6100cda3ee39ab78cf04dbed2392ad5631dddcb48cfcfa46d3014106e023100e4e009f8b2029aeb3948c9334dce0d3c2af47e0d45bd5e15aa8918ed84813a67f785cfcddc16bca797a1b4f8dd91f1b50302047c435bb500663064023032ce3628d8918b60c56347570feab18a32dae53f7460b5b0efb8b45256df5ff73c7ad16b4ab6f075f4a9c6d8c9ab96ba0230490a9585c6a1ccd768d6656e20307c534cd9b34c2e424dae2acb1dc57be98114ce72aa4afbd03e401eeffb0d131868bb0302047c435bb500683066023100967afc4634c7701ef3873b97a728dc2e935ae7bcc7b90ad033e42d6d3c82dd7ba61ee951b6ead79c933d43288497ce19023100bbd88569cacd666aad819bbac0376c937de1ee8914790b379f0f3c55185423cf4a2bd08ae23dcb534ab1acf2e892d6e60302047c435bb500673065023100a7f724900cc00dad9f1d7d13aa2adf44b799475bc398f4c8786ece35ebe17ea2035c8ae5f43db1c7bbc06d9352b0cb7b02307688655cafaec0c5405129d3cded1491e873182b47769ce11821572131772c2b1eb7fc8b65f870e65d794663d3368ab90302047c435bb5006730650230661f41b74a4fc8f630851eb60effeef7a25129bbc76e4c8d9e596d1ac9b6d1f30111ce1a4049a25761ee9d3af9e262b202310085897c357b91b0c6cab192d1f8268380df19c92cddf7e53f24d7565a189db31aefd613aea395a1d823398391f2e4c0780302047c435bb500683066023100edf6280f3385edb0148528f4e0f38e81f512b6e624d99db7466790478266e057335d8f334695e4644864d2839f972a0a0231009eabb2e152cc4c190e2970bbc8aa40ee52d170cfbacd5e651f38fd05130cd01e9be5eb7d4a9c9c623a5a0c645f718bb10302047c435bb500683066023100dc7e1f1129c7db322971b449854e5a8ab7c634f1a27096a4a3995889b1f966be189f0a07e93229a9b7fecdeac4add3e0023100c95591bd8b4b5ea917d3dfd44fc3b3883d3acf91179238fa9f07f9da215bb3b15f74f3d4558d356034d02cf67a016eb00302047c435bb500673065023100e5df322ef5096bf17561b23fca15892889cd73187cc7f4af37ba1c3cc83d7aeefb0c6bf9c42cf1778b2c0572b825cde602304add80bded9f6190d04df252ee87681d223ffb072a90193c111be7559f4be3d58f3d5fd2d4cb2c2502070ff321dfed6f0302047c435bb5006730650230434e7fca5f5cba30084beb3a55051a250480c445b0802eea250e3676b0916b1f4b6ef421bcfce5c77f0439c68ee9fa5402310092f7fcb7fe7918a1795d6edc60548838dbf74134971f17dcec70f0a33dea20850a7515d3a89a3b0d32d1546bcf164bc80302047c435bb500673065023100d411c7822aaeabdaeaca529550246160d82c6e05890cfbd0d387f24078e90c758f6341f9c792f918c579df5361135cc702303a04b71016b4d2624832e6e97f8e80e10627f38ddbc94be5208c4bb53d829173db80d2898dd41422bca15d759ccfdfda0302047c435bb50067306502307dd7ad9678d05a2d489dc52737ae75b5cc3c169fdee20ba6e37bdb61f3b7faae1f5a7e110c18c6082daa4b9070770b15023100bfc12ad75c81e3bbbae1cf5b811c8bbb28d58c45d8618699bc2e6c8f064ec21c43e4d8a60f9d7f11f726312a2b1e999b0302047c435bb500673065023100ca068dfd7aea6b406e0566b34badca903035009c663c1ec4064164ade72f256c16565130e38c4208e1df174e3818e9cd023011ace09bd350c9c75a4f0ca4fd5d23f2261434f06f41f4be15633943909033b4f4b611f93a8ee43f9ae5da45cf3a6a0b0302047c435bb50067306502306d539afa2cb49e00769df811ef2a45c7b32bcbb2541643082259305caad3f8531a283572f837ebe194df373f6d868003023100b53d20e3b1aca3cd298e9091c016d5b7e4f434e8e7005c80b58a3f2af85b5986a50db17f27cb0b82a37fd1aca65032ea0302047c435bb500673065023027f50d031ba29162059e4f10775fca3e1594fc812a1d766288cbb2791e87e5088b70686fc70d2543815608072c332050023100829bd35d3b9275c773687d98a9647ae43caf22bee866ec5527476068b5737787250e296db586e94183cd4dac37406f080302047c435bb500663064023067191bff069e7ec6a79ae1ad055f8c4e4c7b3bde2c4e53f944ea029a4e9a90b09f862b1419f76c3789293bf8020d595702301d16fee1a2387fab444574483aaf55a9e77ad4e0ef110cf85c3dcbaccc3296d1c70da2ef678cbeb3632f700a201de21c0302047c435bb5006730650231008ae4a770bfeb67b06919c56b63a7b13f9e1a3bb920e7e970e86a1a7e5a11f8c21b13d4403699aa6cae48ff31a7c0a8c1023029b93e683d13075335b8cb8fdd8bc928abc6f3c32ea7acf1f1b82fa8e1e9aeb769e17aa7a00dcf93365a3b80528a20db0302047c435bb50066306402307d139ec1e4893675cb3e87dd1f60b6aa00348b611772c380bc211b871313b8ad3b7db31eb710cfbe839005ada95d4ceb02306ba6e4514b912dcf58b635b29cc191e08b4e28175bf24e15d52f50c0726ee926258960b9680a6a433cf8d04e58f5e4390302047c435bb5006630640230362f6f55ad3b9928db3f1f7bb8feba52d1644941eab9318d27ef728ca5e0a1ee986f477b131b9a3ee337cd5694871cdc02307dee78ed9ba7a10513f88be669e2656d86537fdbeebd8bc7cfb3cb1cb2cb30036e055bc63fb6ed175aa40098dad601b40302047c435bb50068306602310088e9c95f506bee1751fa684d5b7d668b1ae74bf3cd291b551b5bac0ec956f837f3154076f2beb89eadbb1381c8196bc6023100fc26001496b69b3387ec777afbe7a9ee331ea1e296e40404dd3c26374b4cf748e124f8a1d7adfba73261d31ec4a4e9d40302047c435bb50066306402307e4db4440479e544d4323ff3370338633a36020ca4e56d9a9ca1e56afe4f9552e6b05639b321e1dad65c7a84f2ea1b050230616516a5f5c40deb84118e594cd559c3df9f71ea3146dceb495e0fee5b2863e257bd52adb1c21c33b57ae67656cba8520302047c435bb50066306402302310e6e8c6679a5407504959ee8524d407b9e2daf7d933a6bdd3f67a29d4f65c78fcb8a5d632dcea75656f5793c7069602306c9d902928b694efefba8997e5d30f41cda7c2bd557f6ab3b34b23a7b8b6b44d6a61697a408bf035c99fee4fd79b7c330302047c435bb50067306502304ea4d6e49680e869b8d9e3027dda8d06238eb8cfb5d04d9aefd1a3a44e891a1544a1f1dde6d8b53444bc8ac6795948d1023100ab26774741a8516d014a169d7c609130cb5422f06688645afe844d28ab5e4868105987eed9619b9b71d902e78134bffe0302047c435bb50066306402302f57c5c2725b25ca7707b18fc8d39fe235b7e3f483f1e653344713a7675e065b75fdc5c9c0e5ff0bff0ca7d6e998d0860230492e2632c16a21627d8d23daf55c2b6e573438f747172c605b866101ad8dd056223bf5fc11450e0fad8619528ad05f1f0302047c435bb50066306402305aae09489f6233b7ed69282c627320042995c84386c6fd0e123e737a7b3fb7937925a2194b96ef99cc092cf862356bd402303055f1318f9d0b3561fdea36a0758aeb67463e64bfe664a5467ba6ed0ce8d7ee7cf7590cd48d9154b0cb6debf660074f0302047c435bb500673065023100d794214ee2e3ed480f153c2bf5a0bbf619e122b92ffc05f786cd1ce65a149aa1797637f9e9151b009876ec91a97b324a02303a5892472d70e685a137ecffee7534ffcda72fbb632a705a268dbec0c541509a2f68bfdc8f13c51f763a3c25e2445eea0302047c435bb50066306402303c515425ecf67738620819a1dea092fc60277fa02597737a791a1fccab351416bbf92a5455e13f24ab00e2867b707b8202305c3830f8d65ead46f067b603b4967e62285f4fccc0f914f48c06e019c967782fd23e66f99a4984c44c609b3afa8427f30302047c435bb500683066023100a7f9f457999df3039574e9af317558b9719e40acc4634e47782b0897668dfab0b48c86871d99045c4ec6f385cfb0ab66023100d835a1805415e090519a15226f364668792b6543ef13b6b12ab4f69cab61fd5545256e0d49637f90eed9cbfcf66b69a60302047c435bb500683066023100db26776132375fb70e51c675de8efa021bca0d28b463b35ef7c725a156d3d08f9c51ba8722de7345dfe6ee72aa48f0e3023100fa499f920d86860d8ccfaa51f9e8f4789f25b4c3c5f2743006f68fa2e8a96f985464e6ef9a8c60ce2bd0f58a359e2f3f0302047c435bb500673065023057ef35ddb7c2c08952cdeb3848ea8849291f2180d7239456cda6ff6dd46728364d761d1a5ce4430c0f8ce36fc7dcf874023100ea31ddabbfc691a31dcac24f1afe661898faf060dce13a9a94b8d42130a6e865ea7558e4093000059c9bae91905edb3c0302047c435bb5006730650231009713302eb4be832abd3f8a2ef283dc737a6bc928b8ac1f500ba08ed13053d8b0b72a1a6b3192b270cfbb1b219cb5e5fd02304707346580972ebe5abc7905c54344976bf2722d9118c1539f233f7446bfcf5956110b91bcae3bbca95d8c9eba389ba60302047c435bb50068306602310098e3281511eb29f38947a4b89539465ff0903f0bd4664b1e1e0b4387c39aa2c8d276b3b5e6fa07ef39a466e520daaf1c023100e3b4658dd7014df957a6621e2c6111cb85063f88f2442931b0f6308a9f65468f8bc51e71912f1993e5a132fd2dac73f80302047c435bb5006730650231008dab76fd267d95b381ac9cafadfb7f54116556f97cd6ea0a79e68afd6e5e17b40b1c2440a0592f75295cc98af287733602304a3db65142a9a591cf710c004daa91282b4eac734472583d948652965f585b1f4f9ebe0479ffe46f851d49bedd6b339b0302047c435bb500673065023100ccb81f12dc41dbe606be985dc30faf6bbd470e5de98735d41b442e15cf53268c74f47010030e4b25e489fa8d413a067f0230541e23e5c0c2d82b6b58b6008b573d2b556e2b4613cdf34b7b775a4a0b43367f485de6b8bb6c6f56c25d5c3d8852ac600302047c435bb500673065023032e58fc1cb015fb7d115ee16562deac00fc8ef01e6cb62cc9d536d4136a4bbc3758fc926be314939876988ad27c762ed023100eb0b1296fec164907c6a62db0f70f962b0d2f8551e3badb948b6ee467f2ee141582b88318d61c7209c7616eeddde7b170302047c435bb500683066023100c40c6220472944359307ffde7977eb2adf6e4aeb839d7de0cd257dd91b625ce5f37bb8b0222c95a89e5188fc645fd427023100f0cc9f12362a2d457ac4e46f613f56e614d4e9f8a06b7d752e1cec7477e5ad48cff31810e521a7c853b899d0431d60150302047c435bb50067306502307e2e232804008c36decf5d7b90b18994db0072b47aff432d89616a816784e71ace4830dcc2e2a960ccea35bf4deb23bd023100bbf1c3da3d2deeb633cd590f2797604dc4ac2969f2d5e77cebaa464ae72694d5061917134a342a44c7caadd5f455ddf00302047c435bb50066306402302684ec5612f08bd21dffb53c0839a7ffe5cd81b2d1bd4dc04be90d5fce91476df60bc3124ef0b64989dea0dbff27012102300357190f4186edd43b0f6ad497db43730563dc0f880c78bb97969279a8ccd609d316192b1e0e9ce7c0ba67d45f5126510302047c435bb500683066023100b4b6e26272b5aa7a4a01d35f2d5a7078a7b92dcdff785a0526c436aec8dc6e4b75b619b11e8d7478326270ec190da7a4023100a0631e1f128cfcba1415df7329ddb300b16adc284c3e75f9c1da20bac5342308ed0ace8d536f9014ca7d5c6a3161e06d0302047c435bb500683066023100c2c2e5af681fdb1cd39c239d6acc6e3392a91fc37404da57b1daedcf50459cb2218392229764df17a0bf051b82afa9ad023100a533b00278b513768aa7f098f152401c8ee746c76e04357ad011f4924984cace66d77d6995f57b5dc6791e61d35f961e0302047c435bb500673065023100bc308045c3d97de07922ec5744b7fa4f991fb64ba7c6e8ce7aedeeb5e2a5b83470c9c2948f214ed261e58c79c80f5cd8023029295ff6e08777a9120ee2f2a2929178f7066e5c10f81ede7225eceefda823f66242629fd36babbe19201b1ea4dbf45e0302047c435bb5006830660231008765adc1219152048deb0d2cac4b582f919a0cbf589eb665d8a0841da220584714d06eac1a73b38947c530a9b71f6a31023100b090787355a1c1805f2a783bc4b286bb9ee83803115f4c13929898485abcea2abdb6e0d6852f5f3451bc4c28e7b1520c0302047c435bb50066306402304ef686502ec8939608a314c3c1ba06930835192aea5f5a4c30490d6647fcf9baf78d914f249010a2b08e00a9152782d1023036b01e0d7f0f49f6bb6c2c809ebe10f23b0ce8c4a1c29542967e9bd5793c677cd9a5f5fb20cf8e398863dbd0ef7211ee0302047c435bb500683066023100c413b1e00c5b58acbd651b3add9a123351b092c6f3cb549be454f028a8d14dee740d2c7f37bf74f1c15c3070f4e5ea79023100fdf74ff89994c7bbf1cddc12f19f5b8b9d5dcbe931edca2a0b1b41b64b67e6f01bc229a9dc30acf3891f8d35e7b693390302047c435bb500673065023031d9e370bb7a0bba9e4db17ef1ce301b39308568011f25f301b514e95faf31a93cd401274a176fa8753ead824ee6ce4302310080ff3fee3af256c0ae4f9d35ee050f4cefdf65c3ba696744cefe91290d47b416d7ff947f2c99a898be2cb2c0bba093040302047c435bb500683066023100b7d0e8f941364e340badb9469febc97e1a0f69063cf8fbb125b09703d0382853d42fed1c4a4d696bb295f4f2a340e43a023100d47ba0edb4bc5f23a72ce7bd2894933cf048c66e87694edba36aa1011536cd38c58902a55ac385aa423bd87348afde430302047c435bb50066306402300d5187e04ecc19c7074f147074ddd954c97ee463a8e2134e5a97a06205f73738f6ddb81e23c9fec2e014a58caef9f6e602305d4c847169933535fb646c8b00a48c3e2cd7cf8fac281b8eea1f4785de6771f730d57eef35adb9d5a8991ae1e0f2d48b0302047c435bb500673065023100c2faa88ba0657882f10a22fdd4e9ea8786dd8a82e851b68bd08a310c13566a2c700e2d45003b53805753f101c5ae2b9b023018e14a4e3b691bc330aa341171170f5c925d4a0c13cf2e3493befead1b2ea7d7f2829832fceb2fb90691b4fc9bda84b00302047c435bb50067306502307c29ff80212c41e2e30d8b4d81a4a9d3fddbb97852bb566eaec574c65a388040badf1595c51caee899bcfd37e9830585023100f18b51e8980290323ee427dc9e175cbbe0ce2211fb565c10adc4aab0e9490b8b70cfc6d3fc0fe3452106e4c554ef2ef60302047c435bb500673065023100e45fd3ed5e5430f0bbec661d186017c1d05f31986426949c216a1cc1dccbdd184b13311db73b0fc828aa04aa6752774c023027f877c1f6f2cbdb099cc12487b610606c8d5e5c263f38080292ad5cfbbd17ca2c3d631ddda91bdedcdb3ada71a4d8980302047c435bb50067306502305bb38e6d95746597d8b1068d6869ac41efe5435fe9bacccdade60b53dd95cb0cd52cf8b594831b7517fcc55013dc85cf023100d6233356de1cb0ee9161022024ed766dc4fa609051c9583ef9703ffc611555712c24a0961866eb6d4e7223e1d740d7df0302047c435bb50067306502300f1366e6a4803e9aeaeabdaf0fb5f1721f7f5d7e21725246e98c7fea776394b2f3809a3ec80620c6558395ce1777ad35023100a850d2e4cf5f9558060968a060dcd37af36badd55136c5b7e457fcb7d8292296297f554c8cbfa827df3dfa25d2f51c240302047c435bb50067306502305d8435b48b4cec61842f7fce68a5cb9d1ac0435d976d05e57113c7e5b35808d59fa71c2036f3b86ba5da2f0e95bc05f0023100c76e33595e5d97be4b5a3e0df42be5f43c74de3e4d16b5d98c0861245427c3d13865c0e7ee89d3bfe9095f3175614f3a0302047c435bb5006730650231009706a2f4befd49076cd2e52c5dd56b4194ef630755e388cd0fb4bff939939600d14c9e23b6be3525636818d31593729c023006b3fe32ef32633f25cd40e42c9149d79e70c083935d14abe7339ed315ce65c9b80d92911c5ab3f570629861e6197c670302047c435bb50066306402304c544fd39514e3ddcf54f4dc8bcdd4e5f8f89891dd6e49ffce20f87ada32c15198b4a26735d70526675399cbf936b33802306be71c0317b3a2449adad68e31560da0bbca3e5a35011d8315549822825871ae9599adfecaec80a9c1798bc39dc8c7ea0302047c435bb500673065023100f3852b8674f22a9a4863e4dbe8a5029609588298c5d61f9c0b18e3e6f6cac944ed5fffd8b37bd610f992acaa066b2b1e0230543a56ab996dd006e4d9077a48ac173f6310cba6442f130a8724cb97e115c767d33e43450c3a36cb199d78155c8967bf0302047c435bb500663064023072c69321440bf98ddb239b3fbecac8e3dcb968a891184de614a9de746c24b5eac42b34339dc7dbabd129bc27d11ca6df023052157265f7d5d15bc9ae46b342c38d0144819ecb0d5e53ba23082c73c65ef7bd270f38920ed14dc7f3a578a70efae1b20302047c435bb500673065023100f5123c46b8e8d6eb2bafa41d0d73096b9e844bedf2e43bd4d04a7bfac2eacff0b6cae68aeb0339674f4b20679b76b252023051613969d8f8606b5a1ebd018f1317ecca532803f9c37e0157c30eb549f4fb9add647c967d5282cb243d3d198808d19f0302047c435bb500673065023100bbd9cbd50d95d1403489c17c6ca0d381abfbcd2cc68787288c4f96f85790c726f7864607ec4d3805ada39b122243a7e50230228ca9982aea323886506fef946f0311a52afb1b17d4afedccad645283b06f3e80c50f8171ef9a7dced5e000b2ae21020302047c435bb50067306502301f08ab543ff6e572f2177dc9d530add125d1932a020405f6085539b5b2499a49b5beba2cae0fa9985d363e55518ff524023100d914f93831de8453a44333ff8a9297a6d88de41dc8cd99f5ae6bc5740fbf644ac94a9d02b94bf817e3d565c98f3894e40302047c435bb500683066023100b9bfc343c6c37b8ab5ffa740df195c9fffad03dc7d0d666f774bce241e50140e0d9c0a35925eb2e9e4060cefe2eeb86c023100f2ce28ea58244eb618f0d1812eed1a83f39b11312d5feff0b03382507c0394946e1550d1a56d3b786fc21e8fa19b0d560302047c435bb50067306502306b006d45e651e49a2f53f80672ae67dd9847ea011c54de3aca46abb17c95615a0cf703fe3c329010a46d68f033a7c628023100b45c72a0a64e92d5f48e91a9842c9fe1872f494a203b832bec28a8ab44fc9766ba469f067165b3401c9e97519026f4770302047c435bb50067306502306b244cc0688c2c9c22903d787ee189dc7d1d72ec7cd747352673a516d2f270e6cde30f0da9bc38cccd3cb1dfcdd6a8dd023100ce76f3921a2c230a175c1ed3e6308074252d6b42091fc9c4f41b9a57978eed37715db65970f61333670b2782be158c940302047c435bb500683066023100a542ebd5e5474caf0770364c22cd9f37774c6361b1aeb391fd02ba67c077055a25d2d54974926c060908f4fa54bfbd4c02310087efd3f99f6b0bb71907c2f06268b45433ab2b412799ce7c64e72b0fafe475be9b3094c2da4dca7fb1629fd12c8660ae0302047c435bb50066306402305701ab1cebb46a9522391d8b2553cbd9f40db0e572afbf05dac3b329fdedebe2cb671e3a2ce91aa024f7a7d2bc90d12e02302599897e93d27c16dc42616faa1ba1b351f4a799f2e940f809e8c434ebddc7c11bb0eaac13b741c3b2a02ba2c3a497f00302047c435bb50067306502310090049c84f7a78d54da2753de21b760a30def463c75e3451ad4d073695a9e8a400c72a5576e29b88aba8f2af36a42b061023032263d812adbbc0b215df20414f650a2d69a27c0b9729e6d0ceb4a0f0832a6b5f68466cbbb6dce9b7defeb52df97315d0302047c435bb500673065023100b31453228087ee37288e120264422336606c59059c469873de68d1d28a3a36e17d67569cba5472d4cd392fbd8a50c40b02303f23e867f890a89b81d7a2d8d723512971a8e33d35b120c4e084b60975c218f73907d3aefe54bb3fbd5fbe4d78f1e4030302047c435bb50066306402305608e2e2e7a602ef2f747cb21cabb207a3ad2b354e4965d491fcfd4ed0bb891e7e8af74d9005b45b89e121bb656d770402303bd6f1d616154e207eeb49072c96e0f575a16ec3e9236573641d2d25593ac2f4423eb351eb1713cbce67a4b3e120b48f0302047c435bb500673065023100bc76a87886c97524340663b3fb1c9e7dd884dbf0c854c13eed79700aeb3e53590843ef6718be7f5feb7e9c7c9e987864023002c8c78a16c7e0263c72f9041cf710cfd7e43cc03a3a3885457082b9d2921c3ba5f40de7bf9cd1ab7cf64d85ea1d0e050302047c435bb5006830660231009ea03e936b4b6414c73fbeff8087386d82edefe762056199dc9b7d1c07a7600c1cad99589c8415d8491f2af632bf5da1023100a32c44bd603b8d927ab79209705ad2b736e647cccc643f94692068269725d9c8d54fd45c6b6ac27127d86360d200e9e70302047c435bb50066306402307c0b646212603ccbffd31bbfb3b24240082d8864bbb7bbae4fcf2368742efa83b0985f334d0612bfe27379744277afd80230122e40291b5bf03b90e7a9389d06cbf8578384c0d5610f0fd79ddef86f4d36a53c7fb33647f6c260eca5695b28d58fa90302047c435bb500683066023100ea3ce4023e89b249b0d950cde9eff7d07774ff555b6e0c158f3b068355f7cb346a662c0b6c2c3710cef28c46e651a27302310085bb62e9e401e96d9c3f6ff92353b014ab446e089a0d9ee82269d311fb19a7a9f3d34be99e17913762bf3fe3b4037f7a0302047c435bb500673065023100a933fd4b1cd6cf1b5fbbe7ea113b2184d19894e1ce621c9278e53ca5612930e905b47c02a2fee2f927f645a5ed68d3950230495bb763f1f987a10a807e8146448b2abd3efad8ef59c7a96ea4569457918ed9df2d52523d623f941199ff6aa9e3fc450302047c435bb500683066023100c8ef5d62816c02012f5c56af6a4e346c206568c12657b40362624ab1aca5df9077419ad92a50c58cecbbfab9cb29db4d023100e27622fb380d97716c2d95cfd94d7653496ac4f093c3c3cb1875ecf40644b86bf449ca4b8f37a877fded9b5570ed5ae80302047c435bb500673065023100c26a2c5949a54c1f9988e55d2cb0dc9b8ebcc2b0f3cc0a8ca390c9e90e9aff9c02842a9e99af3cf14e734797fa079c8e023001c5c61b87bc2b7c17fb3263e23ef8eecec7ec8daeef3437d101018b0871e317c5d4511936c9acd72b8a89d0c0e9c3dc0302047c435bb50067306502304ba986375d01f4cc4f5f4603685c449d96bf83c03a7c9006c097a2dc17cf62ad62f7130300327900a2bc4ba22ce5e6dd0231009db82dcd1ed4c4c8ea95a51914bab3962478aaf59ea7d4722dd1a15712db3b48e2338fa10943ea58ac5b1c9a5ef1546a0302047c435bb500673065023100867e5a69ab0820d7bd9be1e12f1cbe102d292176e3ae07d162b22ffad8df75b25285269042f7affccab9fbb9a5a6569802303fac1de86d97b4507dc3cb3e1c731adbaa6ed5628565e56d627c3b166d957adf81f2136d3f62843748924c2f86b06e440302047c435bb500673065023035a668f9ebc2e317f901a80f7b8164a4fc2cdf288d366832d86a1b840c4ca081ebe9d6fc3cf9822364871b8f9a418e5c023100ac399a6de31234a7d77c24491b341bad5ceac27a5f2a760c6bba3d9c84e247bc654cb3c6ac71d285081452f3b2d415240302047c435bb50066306402303327698e2673e0baa0cc719c7d5168f9dcc6d0675c1c984f77cd254cf046d5dbba4cffab15edad170d70c4c7d209d71002304ba5f0834b9af78cd19265fe9670199efb1df44787ce37074797b7e122fdada972c9c82393ef47706fda71c9e72548b90302047c435bb500673065023100bb0fb49853731622c6a9dc47f70cb98363507544c890d6b58fc601a456c6f75cec5e3881c6164d7c1d0b665a7ca708d002304c63ee1c638f5d47378991de6913e143b7213c1ae8669bbf0bd3477dd6a4393a8eb1cf1ae77abb18fbe11dc23feba3e10302047c435bb500673065023015034443286ffb773087b7af806080cb02b168cad144833209a94f34ece721593ce1bfbf8d4a1acd526c8eadb8c122d2023100e50ff7429bc987a161e57e3607b2a5345b9014120a619a316a913879c3e18e356b6b16183ec442f6b6f4912286a765330302047c435bb500683066023100b2660f757ae3dad165829cea2252d5cada5b342985904282798ed2439a5aec95cce8cd0c43714a08c870b138122ee38f02310099193dd2fe139bff626d5c125d11a0182ae945561d781fcab04ec0ffed08e8f1e9cabb963e54324c1dacf6a0004e4c120302047c435bb5006630640230671a868de0df18e06d424f32fab8d1d52e8386d812a86f29eca4aac99d0be4160d80683a9ae43da05ac7153d80dc56080230358c5bbcc7e172539ebb393f3597efe73d66c093754959e859840089e0298ec1f767f2c46d56207eee6342fb38c6eb810302047c435bb500673065023034209bfa3de0aa964386e5ed308fe1a3bc986e31440223f5c2523cb93541b02ad81e13c148db49604adea0018167d3d8023100858fe065e9fb2424e0e1ba7ea9a3c9a4becfb1209feddccdfe1e30e85bfa79474521f6361426c43c41bb7b8b885a5c9c0302047c435bb50066306402306b34ac399ff0710cf73b3a40566567a96ff130cbc8c36aa5361f901539863f4c0f3228712af32c8485fec6c72e1816a802307fd8750037b0c769cb6e144ee761777266609bbc730ba1d49318414f6de6f3d5d65bd8c7f53497dccb47d41e9497e8ef0302047c435bb500673065023100db95fc27f94d7fcaaf952b1cc2d140db4af94dddae09d2025aabcdba71e3751d004e36b365c2bbf65dfb14e9e2192cfe02306814a45df9c31b0db7afe02833e864f10c0a7651b28fb39f5c7f0fa79a1e5114504dd01508315d80fdd850e78bc6bc850302047c435bb500673065023100f582a38f0133504082f64af35f753f27782c7cea6c7b119f3988b04293842be2606d84ebca03f256dd95ae8389db1d2b02301686fcf9befa6d8d0bfa74511ecf385c6389c9fbf20eaeaea0e122d7ccb02d1a529e3fe703e4a5b33f2f9cb17d30ecb30302047c435bb50067306502301bbda1130cc512e8825d81dd0746e107ff7408e0a2e6e1414345a84d999d5c9dc391cfc29a90c9c4854f7c69c8d199dd023100ea1c02c5a4756872de4626783140f07171c444f7bd5820781db2027b1d98403eb2a46dea17e1010b1332282d7ecb10ea0302047c435bb5006730650231009a3fbbb07b819517ec7534f83753cc840aa24e56a4ee0a28ce1be5ef7205ddc5271d06f1c641e600a3466c755d6a96b002304aeb90dba94a442198f06d090fff20071400df6856b62b9953123e5c8f5c917771d1056252e0ba655ddb06f81dd4b7c70302047c435bb500673065023100978bc5f40fcf163ce28583adc840b68961c5f39b6e72a5a0c512080cb0f62949e65d39e2b310de9af577d13bff59e9b30230531e296c73ef6ad7ca9d6d107ab628b07782246c3637f740ee4ebec90e543edecaa24dc818849b436669fab278e7549c0302047c435bb50067306502302ca9e4f8c6453abf27c497bbec874dd0f03d9e8b1651cedc918025f47ed40a2bd4b27e89bbd8dc789d5fd50349c50c07023100abc23f6c68770d1fb3e8734095e1442a24f410cb7d3692695c4c8eba97866bcf9ccb26364ff11f3caad4c6389f9142240302047c435bb500663064023015e25c09cc428f1516ae9739fa5dc54df784d0cf0b099fa2575ee5b007c23738f1beabfa449f6497546bcd309b80b12902301b4621fab0ba40d26894beecf3ede1e7fd77759c931e1e63417cb4bbc30e3f008b0192179ce7df309d75d62be52291ee0302047c435bb50066306402304028385dcfb7d804560d3f205b4055b642a12f56809bfc197bab328572e3e72d01351b1b7c83c9ef972108d7c3b828d002303c0551b8e1bde721c1382f821b2b86893c42b586416ba9f15516c86e21fc8a3d51d129862268b9804473e44e3e0976cf0302047c435bb5006630640230719ab3213ad6e6255a61f7b34626fa9a51fdea7cc779069584fc090f3255010a07d06f2a462b66156b323a0e7eaf0c29023021efd416fe8d5575ecd0d52934e0d51db447d8df8905f5d3cd1224dd4ada2c4f2819a29d7a55229577bc0d891a745d750302047c435bb50066306402302b3a6df8da352facda9c1a94d0b42760e21d4d82ac5eeb08770a8dcfe70a2dadf086f69ec7f0d1066188182ef0138c9d023034f7e23cd3b6527315771e01272f184ce5d1c85dc6e4e3674ba60d7720427ff017ac19e5104981a5e01728a35dee99490302047c435bb500673065023100cde44166e2d48ab037d467e83caade28ab6c101f32e45818f7fba527c3fd7caaab133b60d74d1746e068b1ddc8ba45ee02304b53e608c219d6fac3e1f0ef47632518d9f6fe61a46ec3af34683779296f635a91f70ec9c103d63e4588d05066a0bb110302047c435bb50067306502310092a5dc45099c63b56d7b743276b20bcc7b57481b1e0508b963d2438ffb5f73dd3c5a34bec3b2f6d3fa22bb0b248d970c02300cc9156e8ab3b898175de72c925e1bb22c4c70256bdba2fa6493ff2a82d63edfc3438bf6676df17696bf98c88c4d55e50302047c435bb50067306502307245b4547902667f363c8b7dab426038a56fc62ff28da30cb4e19ba85ce6263c2cb85fa79de4ab24a17356d24c0b96c2023100801b7da2f5cbcd38bd630b95eedc84244024d8ed2f8ba3fa3a22c246b98dec274e8c129481394c8da22ae8f6e117d7670302047c435bb500683066023100e4d68546e6054889c2d2b6a81a834b88e895315449c4561e94cadf5c07090fa3488a7cb46fb3d11e332926618d59faf3023100c0a72692e4e48032c113c217ab4ec62707a8390d3750e86c31104231c4ae24869982b87d2552da9b874391124a0730e90302047c435bb50068306602310082b0f5ea20436466f496d6e0e674fb1bbcbb431902effb3890cb937e7a54ae0d93bef67f362d4d3952037013a4c05a75023100f425a854bdd2c3261f6d4a2bccfc40281e58818bad3c7a8a6732f38352116f00a310979926ba69549ef85c200f5d50260302047c435bb500663064023006eeca813b9171a0f8b46555b9e82e0f6ed1e82bab8e6fa4e36b1d10d61b1c27560783aaf4d9423bafa9509e5d4c46c502300c467d2fec9c3186e68addcbf80cb149857677e7da5f9fd36f029435e1962f43e27e4cdd2e6e9b339788b66d8cfb888c0302047c435bb500683066023100dab73d2b6fcead1774ae9d27c61cac504107cb39a2def42c37ce7ba78f943fe4879eb565bf7b0b900b0e0bd6215bcd3d023100a371f7e5b4629c919eede4e93327f94cf15ada63b1b8b66c29c87907e4844096b7c2b84807fd8eb7a7dc99769ac580e60302047c435bb50067306502305293d60a411689eed613885e0d5af40c2ab6caaaddb2f819e95db3ec4fb1de47cd85a326efada5aabc1c3181ef656aa4023100e6cea4cbf3fa4465f33e1a9527769f325ce96fa893b491b42e452b854420e9b737dbadf699b01eff2bbad26f71f3cb850302047c435bb50066306402300394863160d6dc6ed3ea9aecc2050c7d63f83f28b79591facdb6b9165066fed72a5335382886efda1264911fbcbbd3dc02302c5c92821a5b2f4325069e3cea4ed7a23d7140f9cf81fa81d64016af4f64a11fb6b3a8619a59e814e1a08f10f560532b0302047c435bb5006630640230784267081919ab5806c6391e0c2dc9f54390571a5c8558dff15f7bd1a4e1460f8867734a85b25ddcff8e32386c4688530230107dad8d11f4db9a4525652290b022de026c2f01ff9304672483752fa788cc622aeffe8d96888f0365fc613f0628f84e0302047c435bb500673065023077d02c45584984d97e4ba2c9bd45701bd8158c179f7664e6a374375fa14585ac0d34b4fadb2e4784cb2eff6c37b59bb20231009c60661a0004e4be3f9170f3ae5432733abfe917dd89d44b46f92ef4f8fed7b5993f23259409e27745e91088192358400302047c435bb500673065023100c82a2e2f0dcb31ca39da0bc28d610e95f9b3414289a8a6138cd43cf7bf59e6969ba9f346871ca35b2a2e2d4661aa857f02307c383cd764078c00e6e2076ae0c03a1b3080ca99b17ddff7fcce1f3d631ca61a4a449e771077d2643dc6fcbac9df6c870302047c435bb500673065023100be1eefddb201afa66b9f72356f0500ed68ef193dd332a761cba9ed700f694ed481458ef8e4855cb6859b10413d10cd9102301ab954d06f5d5f75cc5c0940121a67c202ab14cbcb6efa105aee9e1a701eaa3c7fe502f6e24e7757c8bce191d0c053780302047c435bb500663064023032da93a93a2a02a8a8576d9807beb438f99b0cf69d516f64966c5eddfe56a81f68623bfbcf2b71ca7bdd642bd9208e800230089b5e8134c85f63aaf810528af2de39acce7f8a2a6c93266b37100e81539d38b8290806b0f6e5004985178b7fde8ddd0302047c435bb500683066023100fbe053a5498939f40cf7f1952f8b6ddbc23a85888e628795fc4dd122ac91b0079bdadd436f98deadf9ac4ee83bdb0fad023100c78e2bd77d046e2a6be9616ad822c60beb97aade4dca01002e175f09cd6bc3c71bfcd7f7e6428cdd16de452c7b7a9fa20302047c435bb50066306402306ef90f028ac08dd22a4e70424504057525636c1986ffda6679fa5d14013ae537e2fbcbf60e7a5efbe0b265bb01a95d6502307dcd7aaa58e4528fbe7b9699e37c828e07cb1fea59506e44bd6d1f92fed1a6c479d77ddb8a00ddd7f35ce9f0b362cb860302047c435bb50066306402305b6751f7d19130fd6eded0abafa581532901117d82b39e9e4cccc329801421bfa9c2a251421fef1d996079b432d3644602304784a74b8559fd15b4a596ed3311c9cc7ac99fe02bce0e944b4a782d72960e1b1efaa2083984c53cb831a98a5b2bf1670302047c435bb500673065023100b08e1f98dd4d2e0c1ee136f37c16a08bb5e3da429a259c950a7bdd1040e9c4e4b421980659b6de92fbfe8de847557017023068f3604d630a322ded1dc6c847f7f41689fb7aec4254169b34831b4b0f180b2a47ba947ed7db1653bf40258eab9fa7370302047c435bb5006730650230044a3d7bc8764ee18938230bbe144aa61e2008bb9b80727f751fec0bc94b1cc564fa4769263283f5a220e024a583d8560231009ddf5d4ddad9a34b63dab4bc636053cdf8e7541c745b8982eacd1e80258f07aba1b15ea2262867c9c1e68b7341639a070302047c435bb5006730650231009f5b62637467ecb8de7f413688448098807f97d4192aca11ef50198438c672d819b06e060b22ef4bbadd8f07c01624370230144f34d3fa508b326d940149bb1cf7ca7304eb8ddea9152499bafadbb04f022e9c57d77e108172a21df9c422f4f752380302047c435bb500673065023100dc7115bd7d51674b8418d9e735242e31adebb7d208fce93a87a4f342fa763998e4ec37a39fc5a214ca1bbe378a0d5d7a02306aaebb5b05dea397f0070e0e82a8e34c0d787d2032afcab6010bfc65e15b711c8f1a54d245159507a69e6a17aa08d9c90302047c435bb500683066023100cd5c776b654ba68c49f35ab576fc14a8e2611c47c2845e0b102ccb411928aca5706afb85f3c2893c29a1c22da623864b023100ed60304ee8469a451cee60808c493f481463cc084683c2f11f4a73021aeea5b8985ec0c5d8dc915f68f6e7956a95f2a70302047c435bb50066306402303ce278b7364b793ce34e2ef9e6816395f24482ad81e2d5c9799ba7c2436548dce1d48413101a9ef865d93fd843776e8b023014dd7be64d77ab2ec4a00564bd62e45fc47cd620d4753ccf97de2a01ca198b13d0c3778a954711e82492eb0a513128710302047c435bb500683066023100fe46531ed5b47a9d0427336014339a4bf9d08eb791f7989b52309274169ee896b81ea7bad3e020ded1430a0434bee848023100ae76f2ba4b084062b53c74f5873d103227c2104d4980287c280a18468300e5251a421b5e33a427cfaa3f6468ebec28f00302047c435bb500663064023002248bacd400cdf2cc58c535a7ccc4453f1042b5449d94e9995ab2609d06368fd965d6dbb368f1435c24a9203901a494023004e44591d14afcaa43059284304ad41086d71398d0219b69c2d201c6c792b0b5b52bc6a9ceb9d364483d88f48f24368b0302047c435bb50067306502306fda5519a12ac0d0e56e52cc836a93259dec630823a8cbd4f1c2c26b20a8718c8bebdf9b8ef1d238fc6a4d79a7762edc023100b59df1d91e539e609641bdfe43f17689b9807966259e3fdc17d6db3043f843bf001c1dbdc807ef3fd374134d0447fdc60302047c435bb500673065023100b3617f1c7628df790302c032e92032291d5480838b56c8b15ec588642a7a645484ac3fbd4b565377ad0565efb3b0253402300e5c67f6fea5686d5b6bdd6d171c711fca6292bfe8669db3be0de4f79cb55c3092869d36fe2d45e266fc0763e8ac66a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f77cda985db40f772b1cc168896db74cfb288b17c8a2fd398ae5f7f84543d66975c09f7d57fe01a05bc777dda03302ff0231009c8674ffa98cde4937853d56fb7cac293cf65397da20c93ea07afda921a033ad5f6e96e7d0b784cbfa43539d47a7f2310302047c435bb500673065023100da51b1eb267ab727044e78d6524fa8d8cc3140f112f58c0676203f8da172e0a3fd9f6aa5ba6a38e00135e03b913f44aa023014caecdd3a12a793c92f1e27c757422f15f916ef9255e5f1ac30672d333a43468a126efcd7a1a7681d915bbaa537c6800302047c435bb500673065023041b9d5bb811c228b6f562be31d4f343c1d9c0768c19600a3120f29c60ca2faeb2c9aa33be4271b809c30356492daa6ab023100b8a26168b3f5fee92628cdfba14d14b3a02c09985c939628aec69d8aba51a4516a34cc1df821fdabed3fa84688f8fa040302047c435bb500683066023100e9cb37373cceb04151058590108d2db65e8aebb5d17599f13caa39d9435da072141dea69b0906d9791b1d12e63ffa094023100c6cee944198172b043591423352fe41281ff3b84e867faddbafd5c71589448f8652904861e193989307077966340f3170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fa1051cb90eaa13824229857147887e170ed4772d149fef88c6cc4b8a63e73b63fdd562f169c1825b80b48702be86a060230779d6f586aa6c954b41b58beac68a28e608b1a209832e568c7214cf4e26fa72ecd52bc635cf3417835c74b63bf295ad60302047c435bb500663064023035bfa3a79e5eb90cda21a1a47eefcb696ec2d38ddd3191c6a1d39c2396d41ac05d378fc3d7b8219884ead2112d15351802302c7b38b41f9daf8671aea1b4fd6c2c5503b0f5da30a217f4cb56c3f6bb0695cb1eb487831cae615f8d1562121fb0998b0302047c435bb50066306402307b6718c8404718fa915751473cf73410218c6a60d9e1366f862c4e8c4207f6be7363069c24759febefff375f693bc96b02306fadc47bd0fa53d2cb26651557efda4be5f4b4bf923801d9ab88874587e4d3b4c5ccffd5e393fd1aa27e8e91c53999ce0302047c435bb50066306402303573d373517f7a838e44a64bddd7b247782c6fdc650ff862b09efa4ca5b26945f95d33585eaece215c2b84111f4ec5ce023058e631724641b400f90a9e98948fe93240b2e965ba2364fc6247f8c71466f0c5a47f6dc988a7cfc42b778a20c004d9bb0302047c435bb500683066023100857ef7880771d240aa38f2462fd8a32778a44f2160f0a03cc34f16e7f37fdfc505e20ae505ee83f7f29755c52c3dd7f6023100dbce789fc25a274ecec3872243a3e05b1263cb4ce7b542c48fc5c2d7f9dac723a0aadcaa0d4ed806e4dd8eba59a62f120302047c435bb5006730650230251bff11478d90647ca00e5be3a4dd44328e530dae8f8cc54b56aad9421430af03947ccc32342e59abbeb47d2aa26e680231008cd1b4d9b03e4db3f6dfc73af4a69041a6cc918206df45377a1020e3b590b1cfc401ca063b4571704aa0327a08e13f7d0302047c435bb500673065023100d7a5cc58f8adbee4ac77bf291df7ee090764d391144b71b4d30351f7e2600ea9c11e7b0bf87d8d5ef1a4bb0da963dd6a023078a1dead27ebd8f370f38c99c0812a622f92cab24b83c7c9ac3fc6266721155d6aba9ad96fa02450f5a1b22eeef8e6eb0302047c435bb50067306502310099e3540a7880e268c023ae33c55ca6cde2944b4dc4d03914402c6785c33e96fd046cbe9edc47e3f2a027fabaa0e0fb3102300c685f7e5e908ebee38e0cb5728d1699fa4edfb0bc1d502b54fa466bc184063ee8112aeb8641675ea816eeba7233c26c0302047c435bb500663064023030df51165afe902efab89375dbaf000463da02e4f283e92a22cfe715e0011990174cc97d5f296385676d6852cb16d85502307847d9e294d3b2683a313494adfc3fbe9b7968998597472a682e7620d90ab62df61cf23150577d8b1cc5be187fa742f30302047c435bb50066306402302b6d78911130b73cd501a133acc89237d3b39d5764fc4d4cd12d7481478c6c586667c3ae8f3404a9e6c7976331e00e330230147b2b466a507d9d1ad9ae09ad68457480142b24ddf3e592ffa6d9d0193885edfd763c067e9f7149616636ae2e4409ed0302047c435bb500673065023020ea7e0cb7e1c0b459bb53d7bcff08bc92d95f0fc679c0c11132918f0a0c17c5a2ec49501e6b4f9d8788df097be0f916023100b9b427364b769736bb1b6143411187784a3fc2a9cac0d256fc3f21189c71e85c1108f4efd12b7fc5c213a7507c182f230302047c435bb500673065023100ecee2b71d39b51342c8c364961f6edfee8d387fdec44999018d20f540f241acf2550d74c231660238c598fdd4ca2f4bf0230207b9a8a06e0a74d0add0979e3b4de7b46bd28b01bb82466ee3dbd44edcc9b71c8a20d1cbba0aad0b037808bd1947dc40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b58b387cdc082a594a0a3827877e545f6d4636208fec634c5c76aa346483d73e597a07a296ed963680eec6cf779009502301b9c80418451085cb41e5946d34a677f0d9d71b92c4bec36aad7fef2306b63fc6dcb0edbac416f290b6f8648fa8b1c330302047c435bb5006730650231008ac02889dfffc9d621c0d8a1d54048e0e0ee4f79193b448651a7c68fd529f606ae9fc19fe355cccaa3f35b4bf1289b150230323bd398a02653e3add1f412593e8074808a2212cfe7953c9b6669e28af9608df93df7e4f0f8c805f9ae83ae35da12ad0302047c435bb50067306502301012366fbadd1846af1aa204468a81b9fadd9f7468ef38d20696e9397b5659b048d626df44dbcf16e94899abfdeff82e02310098c73588be9b0397cdc0b0263931933c30c1f33145009129d4c9e6abf2609b5774a73184b14b476907ff7ce2bf0c0ba40302047c435bb50067306502300f9ac2fc6fb3d0b6302eeab6c3c1423a3cc3fb07bd367d322dbf64b125f30d4646eafc2a343c744b8901167742297c7502310082827214cc7914b1f54f6b338165f79d08b384ed1535474747b8c8871c1694079e408d4523e99fe849be59d05293a6180302047c435bb500673065023025b548f3786b66cf499f52249ca10e7c3bf2cb1eb9176360a4c67a6a45cc1496db909318d11487170665604e2138d674023100e0d559993345627797823ffac34e4851d4805274359b08eaf618899b534a0ba70eaab8d9e43a7d2730be31eceea321a40302047c435bb50067306502310098008e2267431a71cca7a96569fadab38ecf640c73cf1ec8db33d2c290be911f9eaa09557a5a754e36d8d47dfc3980ff02301cd84911f1b324f7c2776c647ee4e1c455846f587d860e50f82f4683e97b50fc297b7eed16d5a128e89ab965c9e64afe0302047c435bb50066306402304ce5e9f4510578b9a683908638e0183c16de03c9b96859ee84dda7884c15039df9db8e1ee33e0cf0f485e6eaa7ef175c0230353c1d8d398b12672cd579824cc15c032ee974eb414deac82a843cd75a35ab7e6f462533028b94544de744940026fba30302047c435bb50066306402304be1036ce94b3243e8c096a14398437b4ad85e4a79f4c85b41228b4c7a91d9212a5bdc08272778839b31b19d4fae62e70230439fb7a128a96f7bfd4cade916b8bd614e1b10a05e18b1f41955132ebbe58aa0746c67b4f356c3ff2bb21ec8046212a30302047c435bb500673065023100c2bf696db5282152587afcef5b41f084b076fb60d3aefd04b205c6ddc9b4115257c6c71ddece73fd6e33a889b14267b802305d0a19b4a1b19b2a0102c9ed2419d610da6cfe236651551c281b1da29b77312b73be04771d8961c973892765f29a9e260302047c435bb500673065023100a6a69292a939060ca94addf9ee65730ad792e0666ca32bdc30309335257abd77a62b728365b9055426527e9dd744d4c4023026d7ab469c9836ef3d9f16a24f0f0132621195c623e455e1d3f801b0e423e9b1933666de8c96542b4ab39e2e6fab5ffa0302047c435bb50066306402300fe763f4ee25fea3f2370e30630b75e6e5e6e914016280f159b5edb4e44783012656634806afb311c790b0a7257da0db0230145f4b5ffdc91a0d58c4aa41fb25009740bb78b6b572b5d3b78aae66d25259184f10a1a537089fbed6ea38ec7fdedd850302047c435bb50066306402305d8cd4d52c99c03356396f1a4699e49a5e653b1c49c9a9fb3a1bf97ee41f82f6d7520284d64f7e99f2cb71dcd98733d402301933a30e7e6f8bae4a0e03ff3ab90c93f76cad44e0761cfb15a0cd3ecbfbeaf95e4bfbcb9e0dde06d460b816950503850302047c435bb500663064023031bcdc1845afcbe04f109be546b511afd82d3fc1e048adde927b2585f2428ac75ef920eb023c26cbaa9c561728977e2302300561b0e5b6b6e0e61b913c0078a30acb883b9967f502f6f185d66ee9910f108002d81e47d14d18927d1da5e406b507440302047c435bb5006830660231009c054eceafcd4b877ff2a835a307b784fef89ad080df146e5fe7e94b23ecd2d5036a331c948cf976748ccf37a02ea3cb023100ec2d56e1e7f6c88c5b6a2e0ac5327c50010d980f63e4032bc093364052b4fc7048cfc4ba995ceb1a36107363afc46b120302047c435bb5006830660231008fc03554324e6fc385eba8f702292c6a8a01d0ab3c12a9e6d9dc77a45a5eb6749a79717ecaf0b2d67fb707dfe2f3e470023100b47fbdcaa69c86226406bbb99e0ef3353babddf6414364c3196e9351db174b3d01d308ed642c52ad4d6b7d5b85a41cfa0302047c435bb50067306502304a43638fddce482262d5a4a9c6912aeb56b7ac824d19c308d6ff96bd72e3526f5c484942116dd582e9777c5fcbfafab0023100aaae3e960099061f9d5ad022072167028bfd11a5d558db875a54d2c6465105d73f0f8c7b9ed0eaaf74151693224ffff20302047c435bb50067306502302a34b45501abd1ddb1c6554e22b84a896cd753d2613a511ab41961e05ebc895d6d6a0392475105de22321549309a7469023100ae64c48ef2a0a5b7d1dc87850ef90e72e4991d068efa95ace554942e62d06c070efa5083d626f6d8bcce9519732270890302047c435bb5006730650231008849aee0c007fd39f29ba7c5f93685b6d90f915800fdf127ebeafb4189f1454639c9164304df2ffef644c6c31fabd079023039e3a881f0804823ce19f16b669965340df4e43e93ffcccd7f1b39009910ad2fa182fd3c22b989e6120ca34abc3f8f280302047c435bb500663064023044761435f6a49e0db22119f227e5d8e39d2509e4a54ac9206e64e11377486aac6c98ecf37aafe47a493dbc8352c63c8b02303fe3c0b459aa7dd7cb582feb56cf0da2f0b45fdb94f72296e3b49e18afed1a1dd0a097429d4503e87a39b82443500cb00302047c435bb5006630640230737033f31a08f79131f9444d0d317f0f193dde3cde8dba8985bcafb417bd31c0c82a07ab936cc1f6b741f869e5023b7b02301fa355928a4cfe132c5c2ca9492c13b712fb386db4eac077d74ac3ece88eb4c3725f76e5b61b4b80e456418c856d34050302047c435bb5006730650230395b81b925560a65b0d2e33aa8856653787e166d3e05023166e68116e132e3ae9ecca9cd19452948ea8acd87f9ba3e6002310097b2d1b474b617f022687cbca8c5a89c033f88bc914b971c47cfe6b71ea4a55fa9eeb8792be53e8ce85c670e261219200302047c435bb500673065023046e64c5a7b5917481fe672ec51c0099ffc96b01fd44443b3a3a395a18a08b1fc9fad08f79396dfd32d72202d753603b7023100c0c78ec0b9aaf44106c8c6b03fba4b6828570d67f2c677c74e2849424a6fded09e76b329990f1e8964ad8e4dd910bc900302047c435bb50067306502303e41fd3b74cb43cf804c4cba22521237ab994ccabba510cf240503faa37fde18090d667f01a37f32f852186365abfa6b023100bf50639f7f67061f6748279ac0b89c2109217aef96d744135e5aea6659a9dacdb3b3a8787cfbee76592471b6271d5b9e0302047c435bb500683066023100af561dc5cfdb05e8a89ce7a6f8f3d9e4628ea6baf09d279d8b4237e3ffe467cf74864c4b8ff05b374d737f78151f329e023100d9ce78d8dc3fba83c9331121ffe8c4f4d2fe21cb4e12a299286ae6f9d7622699d9fdbb4793373198fd42bc11276293300302047c435bb500683066023100c654c344fa1f5bd767e76649d5a35400d3d3b442bc7f214d845f429a2b85c7abae4debba6da1c1a2b5fad97e2f0290e0023100d2ebada3c443c85111e2700a2aab3aa9063c7cb9d409dcdbe31eaace232a724698cdbc11fb47ac589d826616ba25fe9c0302047c435bb5006730650231008cfbf6295395342d426900e1264d2807df34a91c9525a02b0036526a387f9d0f5b56d6c02ad75778f273cf3c4da518da02306fce9e38bfc8af0d63e817a84207e9a7bbce106bf6c909153aa932cdf018cad6dea5ae9983bfe1ade7102a7920818bf90302047c435bb500683066023100ac13a6f08fc88784f24a6b3278a6a2b7c988056080b463a72c86a49be90fc55f93a3b21c6331315c0c7b0008b5ebce31023100a52cf053f314bb00f50904497128abbafa106552b92f25ff5b40f717edf3fb92e2fa1f4f01f0027995ac41c8a8427eb20302047c435bb50066306402307b9f8916e5b650fffce2cb6145b5d9bccf753ab6ed836198399b7fef938e9c324d42c69a782e4acf1a998b536c075c1b0230631bb8a9750d930088d3b839a35359a4ca64acc0f312ae1af5372de211c2d6e3e6bf79fcece526569b80b51f29cf40140302047c435bb50066306402307cc9ceab0198fc99ba7f9a484e1aacad0f5af8fc3b97c0c8543ca2924eebf8563205823b102f208eaf5d8007e5fc26260230477acf61f3dfc8479ea099b2f25d2b1927bc593fef0b80fe6cf344d4e75ed8bfbc59c056d30455229782fed46dd35fa80302047c435bb500673065023074302fc73cc092bb93dd7366cee76ac5e4d7b0864a442e3ca79cd35d5c698b3248be6f406ba8af2b87c70ae8082ff3b1023100ff6277ba26e38db1de49cec017c4e07dfb5f2bb0c40fed22208927286b28ae1229231376f3857b8125fda6eb9c70df200302047c435bb5006630640230582dc4b2370e4c9aa5db805f25237fc768bd2495bb605044f236a02d652b9739a4a189c03a817920628a08458ea30dc80230623ed99e6dd8e76ffa167dea2ed6ea301e7633764202c66fa71413a19b0112a0048c467babe35d99d2bab18bc7e9da640302047c435bb50068306602310082c9f2fa5e1c22bb1b7ee18c25c1a10ebc0377ed911b4289c23c8e76fc7c00a18d117535bf263448129ba88a3ea5ee0b023100ba3369dc4e02de32c0a9fe0e532a82c308d875209219a7bf360647833dd0e3fcb1347f5a5e85c7eb6c187474d740689d0302047c435bb500663064023039c240f543e2fb585b366033e7f797d92d30ebd8adbd837d596419301795bca94f2bedf1ad7dc672ce1fa8174fffc0f70230779f592c916c22b1c6d930a287637e8ab2625ad4476a69b450d3ee9d9ad710b852dce4db5295841b48c9882a2c49763d0302047c435bb500683066023100d9164c085b7dad5864e626f264aaa1dbebd3f88c0f1afeac6e27c64a66029d188107d1c1dd89a1b8880231e91bad6bc8023100f104c804723bf3ae6d6180c9df09196c5c0ce1693285927cbfad08d65889b0167dd50ead4d668e99019dd4eb866a2f090302047c435bb5006730650231009dcea7134eb4f01d1c5acfec515d380033c7c2a7984adf6ce2f84d30478abec295dbe29e9212cf95298b8738562a4a5602307c9e864c7cd7995360bf3dec364a882932f4f548feeb5a862b73e06fb3ce2758eeb9c636abab8594bc1b3ab53ebbe9190302047c435bb50067306502303d375a210e6dbb5db8c31d8a957a42abcf5750cbe825f9f88c35ad074118b72b1b04f692e3638b5a160e02decf6b17e1023100c6bff876556063648b5415b33abc2a96b703d06f88c173dd9322cdfe4c033ecc3f324dc96f97ebe2c8a810d587d77eb30302047c435bb5006730650231008115ab27b308e73e776c0630419331d931dd8c47c1a8ac60884e1712c7de06120c5655b375470fd40e1de3f6efe428c702300bbbde229d801a6f72d767355efa2ac2b84e06ce01525473438a827e4daae830753ffb90108dac71ad71c282cc089de40302047c435bb500673065023068845a81e8ba48e3dd966572f4fdde12b47604e13680c4d5286f171ecba93e4f91e6e0ea6aeb3c2a8459bc0b139732460231009e41957f72ded26cfb7f120121ce1c966992265e6835db8b25127324781ca2e71a64e807966c634672763c8c215c13420302047c435bb500683066023100d0b9e212854ffc89ba4c8ac64f3dafdcdccbe1578b013f208cb972eac4c0bdaf0d3218011de37ec47e6acda95555842f023100d278beab1b1da0842b9c7e522892b13d8d15ca93109f9e0895b17c7397ac7095c34fc7892c4b7e16666be0b0fc8bd0730302047c435bb500683066023100a11a1f88317bb07364165e99b1074464e9b7c7c4a67a329eb06d99f045d9feb70a996d0ee9ea59f853edf5353b3d192202310085aa00d2a8751e18b21788d893f6cdd3fff9c33f2e3f232c82815420b2037e711c7b81d8da0dbccb1ef69b07db51ffb80302047c435bb5006830660231009a0d4706e6c71d226a58d7e105d10966b3f0c95f9bb83dbe03cb1c991dc3d16096eaac4f2495582d14a7c5b5eb99c020023100a3ef34908790a5a63d77457d4fd2d3ff302a0834426a20fd879e5af8a5c7a5911f974abe931800d2f530e032cb9df6de0302047c435bb5006730650230532050a443e3fa3bc59ebaa9f5ffbde225a01959fe9bb683ab8b5f78e0f95a8648124af739b352b9af4f74918d015769023100cf39e60dc0ba4a40b27eb3cbc83f21e3180fc9456967facb3fa1318bda27e63e9eee41cc624ae76894f959721988e4630302047c435bb5006730650231008086a1ad9dfffa232a7175136685286e878fe57fb457cba49e3f648a8a0654128ebb4df948f7c774771a6353c2350c0002301a9cb7651684f62299b24755202f13cea14877e91b6509d671ce1693b439ef39738cbc4eb79b1d7837e9ca6abc6619300302047c435bb5006730650231008cbc13e4c72180421c55fcfc93c3080790953bc0d73eee2e76f3ebf4346a7fd7ed09d88ac58a87d6cdd7c5693136eed102306589f986ebaebd215ddb691b590f995913cd6d486698b98b9330f7f82d7e62778b4ebb24cb5b69489e6a65f0078600410302047c435bb50067306502304b6648f0bd37dae167d994973ede1af643a521136687226addce747dedaadad98f2205ddc2d1cc0889e0d2c4f0f7292e023100e3c512f3975b95ba4a5dc1721344e82b7dfa549ff2566cb5ccc9166a3d89e377b34f4f5626e1d3343e681b0475b1b9720302047c435bb500683066023100a300bad76b3bdd79d655a966c1400b6c2c188e8502cdf632a7a5d955c65be825e96897796a9e5388b0d78716162a0147023100c6eac530efce442c44e418a2a996a22970b95a0d847c35af83510adaf7a583e48edbdb4b4aad6d7c616971006868bb8d0302047c435bb50067306502306b98cef02ff9c28e8c349df4f0c056b02eafb3a38ec631e8845af8f58c97df95e1c9409aef0cfa3dd594a725dc2023f2023100c6ebd29f9d1a60577bb4780d95d850f7f8cf91480d278ca9d419a83ae4a35ff06c3db1ab454f1388a2aaef015274b9550302047c435bb500683066023100ab588cc2ef1259a262724b0fa2bcef8ce0b127c49f822e83c9bf893431c0e9d42620626e5ca21aca0fbd50ff23f9ff73023100944c43646b6f772c03bb392941f976af484ce58a59895627594fa6abe68ca4cc102d25400d911fa5070e5aafe1c9aaa50302047c435bb50066306402302d53f54d29395ec8b2e8c55c2d70fbecbb1d33d5fded7820f7af7c88b1a866a077222fdc62553d060a87bccf51749d130230681b07d6c1b1080628e7f8fe77e97aef989fb4097b78dce4382b377c7862e71d3e857789ae71b2f652f4ab8d9b4b1eef0302047c435bb50066306402301d6aea1712b31e964a9e25c4897805b6e0f127f2298991ee13398fa5ca8e5459be4f3e4af4de835a26df154b4c20e52002300b8dfb87f68d333d867c09f8ca3f45065a7d51e8f921a505d513f8a29d3d4f6729135757470ba130c6e9b888071f98110302047c435bb5006730650230387e41763df0d8f4e9cd8e99ed28de7fd87df6dc4366784da1599f3dfcc5a08a8e3168724c7677126523a807750f6565023100d28e73979aa2d3f9b0b03b61a0a2ea855e9ea24afac22c2c41050eb51745ca3ab13ac219b5b451ea9a37730fc58cb51c0302047c435bb5006730650231009fb76ee6a1a26ddb222375a5b6555df25b13be85ba79546e35cc36ede5c94dfcb14b183487c2ce50c639e7fcf202807302307bff498cbba15ac289281305e8a1dd356a301218a881a3de252331ace0b2f2dc78d4cfb67aa1b2dacb8a72cab565f8330302047c435bb5006630640230557c7bd5c3389a2098f48e4e03b028ed6dd0221d26d51b259749495cb99dd82a74e265f23cc31349aa0244cdf51cac3a02306dafadc08dc72bfbdaeaa3adf03fe5f9c3873427bdfc3efebe8dd874b0d4ca97872d3ab2b8cb25e7ca57d3a88ef3e1fb0302047c435bb50067306502303aed83fc7fd397b95c3cffad65baac8947e0232255298327228cea4e49b48f0f082d119dc92c60b68c34b8061a8c98560231009ed799ef5445daa60f2c9bda3827eacd62c80fcac49faeed1683eb41eeedb68fa2f96a8aa42d38428219f76d65fd04eb0302047c435bb500673065023100c6d29e2a4f139265a20654f38355b3090421308304814b5d81dac44ea23503dfac7a387e46fd64fc2e5b9e399228050902300fff49b16c672b635bb1caa904cf53052f6c5d3e1490f88cb8fd235d7d6db77fde997e3c9b4a465b58c1a456af00e7260302047c435bb50067306502306203ee231b73743cc139505f46ba17f34924fe60ef4b4650c5733f712f5755a43d3802a8dccb684b7637d8eaf95c0442023100b5f99dfe871fb73a5c1fc99d69b5fcce1fb6845233b5dd54780fd9de23201612c32f0699a0829211627d4e9ca03c99530302047c435bb5006730650230358bf3df1f47a0ffabf4c8b9e13d830d7eb2b411cff8f673e1d3de5db0ca582834e06a2e33f2a29bc62fea993fa9524f023100d55536fc5d1ede7f9a3b58f0f685f75b3f07b8d0b1451e8eb9106efdf105c6db33b192c45caf421aa24057e4998e94ea0302047c435bb500663064023009fbacabcbbded7ac3b6192ea9626a712ddc4aaf06d9eda30482a4192abdedbea4da50b26545cbd1d858d2080fb2fc9e02302597e4dd7a5807d094411bfd058bdd733aea135128001fcf820787799d1e91c495e3530e690a304baa8f0c95c605bf440302047c435bb50068306602310084a1265eeba9bbcde243081d82d0fef6b980b0c69bef70b89f554abb569aa51664b68afc22d9df1a13dea4b7d4e85ee3023100c80e61dd2d6a342e89d739ef681e7b415a031779d0a4b0a740621278e9f1b79ad030a36a8fbe5718e45ed180096e1d190302047c435bb500683066023100d188d3d79254bd003617eeabfaba8cc0a68d8bfb3ae889622a43c5ededa047c7b090f7dd5df1dd52b84b814884e98dd0023100eb4a27a4bdba672cbe9ab3ef3f9448c72ac9508ddf178f0fbeb6da5be648a1f5dbcfdb382b008e8f7c86fe2b9a61f5ae0302047c435bb500663064023058ac60114642cc9f55d93374da655c6a27c60a8c98f3cc96877ced865c9cc0716cd392572625eced78f0815ac446b290023071d48f584b73d60da08a17c99b49a8abe7eafded358a4eb9daad40523fad29b9cc805da4d93798ed7e4187fc44ba00a10302047c435bb500673065023015776483a320639e355596419d665bd0d0fc376ba0498427df88708f84d215172a9c1e7724870d652bc156d4687743fe023100d35174c4a6b366fe981198e241f45419d7fb5de7e2f5b82fe67a375d2c2a1e86d97722e71f94ef65dc4ee3a9890a6a4f0302047c435bb500673065023100b8d83af74363d83f8869b3ff9820200265204845520d445c11cb596703b8c9cbb4faa8b15e7326d998ee95295868928502303d368dc66c9bc31b85c9df9fd4232f80933bc7ae254f888cd1a86d43455047f1141e0b5010b9a1757d22cca85a35fe490302047c435bb5006630640230393f5678ce666f0a569d6853f52d48743b618f79a1d20debc1a0733571ba6f6d7cc6f6bf322d300045885efde83a166002300299880eb4cb0bf964df488d75e6f409a6c4584680fe11a69a7c6fac5a9ebcee19772efc449038ef1eb83a6d929600f80302047c435bb500683066023100829491f208bb6960680443eb6087708b4c901d8005d55e22448ef44a84c6ddf222470710105bdf674658557fdca80bcc02310082271dfe77c4e27cb9a56c1712739c394a469f9c8e4537c001fdeb0ccff24879cbf9317c834cf96ef479dde8d16f13260302047c435bb50066306402304a1757cc48010ef0dfdddd67570023af7a8f0029fa9b5b56f7787b7e3cebb3d2bf0e75ef498e88fbce0a18f3d536013a02305e5dbbc9879b83429c29a407e43922df559f9dc939076e1a62d9bd9afc834cfdf00339a4b3251996affb9c4c54e198ec0302047c435bb5006730650230708b4f87d8418b3151a159b0328086a79d403fe687d9b3c6031d8590ae4bdc5edf47f3b312565bbda4fe83d1b29ae55802310091dfb4e985be293bd73873aebe195e75567c68048809ef0dd9482408c496f8389c284765f95568994b28de7aadb198f30302047c435bb500673065023100f3f2464268f0fca4f7594b1687b333773720e4504fab00830c1409d64efd0661e0358acfe31f1b753c60f1005897bbce02302a5814679fc8c2c5a483a3e880ffd69a845fd3498d8b6a52b48cc04b68ddfd93306b5f54597f7df4c0f127af59a366ef0302047c435bb500673065023100fa39fef4306893780ad851bb4f1092d2b350cfb9ba20a5d60562faa2f4629c23d2799b862f7ff07afab9b2736aadcaed0230707f378562a89e22b575563f7ceda923659598aa0352612d4a3c84274c718fdb41256c5fddaa909cc1d493e8a4b2e2970302047c435bb500683066023100cba49637c86a0143f0bdb7a0e67be845651b02f6f96c037785a8bf1ababcbaa75f93f4beada1f7d1d7aa72cc33011c37023100e73a5249241904255d12d57039666b124701cb286d8add847e09fcf75c33e57bda38eafdea4c8f2a58245922ec72923a0302047c435bb50067306502304e3e0cae238cca33fda2a129af0d40a65e964573b57b9701575c80d6448ab1490c1e4a64a9d9e6a07197531b4348f8fd02310084605031b9800e464f4a3e24c8baa125d70b3d818086b5d77fdeda024b6c7c98f87e0cc1732e4c2e159d26203ece8d7d0302047c435bb500683066023100a540bd92ed6258cd1be18d069d08195a737cf144b1a3f381ccf3f05e0ab8549ec7f89f79dad7ab84babc424046edfde7023100efd44f3c489ae81b7a8180f7fab502338fa058c4f9a3936e108ab3adeab719d3aa71b5172f2eae1f300de791502f6d260302047c435bb50066306402302961f089b0b05179618102137bf2803f65b9a3a29d32ddccd879cc15447af3b5120639c53748374ae0b0d66e5d23ada20230509ddc1290c282d1dfeb5760461cbc7f2019cacb2f726cb7fa162f6dd4c09af3a30a276d71a9f7cedf9ab55aa9fc34c90302047c435bb500663064023008c10dff9da91f376ea6c0533e203fc95cfa59a08756e21dd8e85c28c6725d1c0db0cf972173bf7c6209fe908a6953fe02302d85d4180dec9a46ca3bf59af8691ba80627ef1a114945aa8dac6238192ffdf5d59c9e37d764c80d7af04358ce88bc040302047c435bb500673065023100bd99c5a2818e98f6956e85a62a72fefac3582e579f07c3a35eb29ce9d6bceaaa346867132e2939eba0bfa2a3bb1b6d4e023031718ab55f39719e1a6725f30206f115ced6f0491b97d2f6fa284fc4116d4fb1805d7b65fc161317faa52aae76fc20660302047c435bb5006630640230108c1a4e92e6d91d42849d2df66db5eb95cb75058e96e0f96ce3f53a0e065ab3535166ff63683b44e1fdc05a51f65b28023019d1d1aec4553477ac36f70821fa1c7fcbe8a0fb3e3383a561198038b23d71ac884516ba5e41bb6c9c3846c259e151870302047c435bb5006630640230759abad7e1964b4b3c86973ad88c2e838402111f3cab6ac6fdfa334d2898eeea4efa1de15f4c439320f9ef57588fdbc60230671b8cfadf07823a34d3031cb902316848882b446aca7acfe85de8a3ae1648b24a0641db44be343a30d219f4101011dd0302047c435bb50067306502300764514456ed37aec6c5889cf485877366930c9bd248496248cbc22f350171f16ddedd9138812a65480b3f003c99f898023100fb3b24159805ad12cd2a7c69329363ef7eddd7b2d05ec061b67fcfd71c59050fd357a87ff38c775f53270720d37f90ce0302047c435bb50067306502305a42d26040d20d328d8e8d712ad56b5abd18214e40aa876c84fb9fc12b0e960c71855b42d169ff22c378d452d18e902d0231008a6bd7c0485adc2bc2871630b9d2bed4a00d71949c124c542474d32a29556ad5bb44355ea12aa6684fcabf22a16eca1f0302047c435bb50067306502306c23d92b0090cfaf27fa28a8306cb9c07ad13f23af5345da1c47bbf258925514c660eaf588ca74f62764d1c9267e43f1023100db327a0068ed4ccf3312a34814c766e5ddc4db82d71b44da75bc53a9698401a5401352116ca37d73d238f2a546f0cc760302047c435bb500673065023100fd8407d8bc59ff254e1124a9ce8253df230fef73bdc7743fef8155c5ad7f55a139922a4e9cd8d1440e18c85a2cd9ac2302301370f989b02b943f672957e41f88f217d56a33fe31401480db243c3b628abd82e1c72e076b398f5573fcb767b7d66cde0302047c435bb500663064023008938398fead01785173a15d7da1da8c456bb38ae24ea0accf37f2f4ab34576c6d07ca926853e6d603f8461e2672d899023078810b64ad34c44a9de08d8f211590445efa1a7af1d8040d23fc932a8c0cd62a7496fbea64104196d7ef6f41de1796da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023058cc838a5101faed7d831c460f1110bf59db93bddee3ebdae6f8f01ca4ad3fcd76f19a128d80d690dfe20348ceb48e440231008ddb9516bcb59a1b825ec385bca4629ee407fe3771d61e9c83aa455a5a5d6c472ce913e1d297abebd345675d9aed09d20302047c435bb500683066023100ba41eb19c34c532d03a49a200aa33bc05120793297dbac0f5f0928e703db15015498ffb2b9468ee56c81730df63302f6023100fa399c3284038456c441a9a6a1585069df7d1fd18ddbdbc2bacfc248c4f3508a3f381d293223307f086f1e455ce49d9f0302047c435bb5006830660231009678e8aee725180de690c5ab47cd64cc55cb2827bbae15e3401bf6dca9a95ba9a0054bdfda8e6f6b4ab53a131fe9689f023100ac81c87295a42c11f79087c6ef3ba6937ed2c78af895ba75fd054e884bd9331390e6fe7a906c18f2c92a599e3e89b94d0302047c435bb50066306402304fd1aa665ce176bc2ab8da064c73d25e9683606588a83e9b6e573d19d29328aed877079408900eea89c85990331c197902301fc5cabd0f3484b102a86cb2b90c0fe948fc7aea863c46ec19aa36e0610469c0bad3ef49134ba18be2194413dbd845340302047c435bb500673065023100a6c1041f5d1f2d7a47cfb9eea3272062b195802d2fed5c5628d0bf4a7659ba0c4f4d8ab3161a11f133b4ad9bef2b2c220230442ee3359f1ad85b6233a85e21d386438bc6aef4cf3c1d370d37c82c9e8b95d4bca8e255fd9418f724120df2e3533fcc0302047c435bb50068306602310088982f76af66b6f5b45b39f1a772f38faef3894f29e47fb3235e1b522c23bea6b96c107123b9acefb5833d3b7ef8880a023100e35437be45e8214942f36d83dded3ceece6071b0d9c0005e94e01bb73fb84ad42f0590444432fc911b53cf88a809bb120302047c435bb500673065023100bc9c9e1f2432177d2fcd82ba6456416775cadd27c1ab2370f5de4352dcf6eb6b01791f2b143cf67cd155fed1da6223130230060043e346499282ac0eb5208c230de0185defbd60f6c482363dfe7156c8d70f44232f89908925a5ed82a086c95dd6c80302047c435bb500683066023100ca029f9f9d309b25c7f72fc46f27eafec1f965c439b569e84f32afd337f1aecdadaa5b46c2a693d86c38272d6a7ff294023100ebec8f29802eb22389c228160e3b991ed6849d51c50fc52c61d221b0cedaaaa0dcd58c9c95302f4c3eb22696e18d62050302047c435bb50066306402303a30d14cb35c2c9b317ebc4fbabb65ddb9fab45154fe1d58446326e2cd98aba1b0a53a71d179c309077c8a44c70936c40230127f99c0bd47fc3886555ab788d0f88e6debd9d429d1fab359b97d3b589bafc891ef5a098789df46f7011e91b69f797c0302047c435bb5006630640230401257cec4f65066f6a229a4ed9c753a55d1456f6245896a4accc52a1be72cbbb9a2a29ce95984e578ab4a450061a9f002300f4b0cc2efa6580d5a38b34abf7462e0be6283e1e6b76864ad1bced1154915ec4011c9b03c01d0d806c9c0f15c6bf5d80302047c435bb500673065023015d2199dc3554b0c2f681fd75e530bfdd22477f065eeafde30e9be654e00d9574d0baa3737396d0a4836898b016d9813023100bc1fd13f612e31824377aca006392861892e549cb476a658458c8f836abc34e39097a16cddac8a442118a50a6e5caabe0302047c435bb500673065023100c7ff15652086105745ea6087befb1fe4a84bff785d1065b0ccc8e213453f50396f5ec94ce05d371e9400afc3d9e0e7da0230264cb9a1046b3f03590fcb3d2f03b56bdcbe560d851ae9800bcf27d4f8818aa830509e73e4318874eb2e09774dd347400302047c435bb5006730650230297e2ca40925c13aaf0e85822a45c8f4d7f8a0eb8c440297bc165fd516b5d578c55338032a0dd43d66b79dacd34a3cc0023100b54addcebc6abaab17dbc2e9a57c554759b76c74fd644d7066a332b0d4edd5dd1bdba327ce623e48ed31d0c48fbc16d80302047c435bb5006730650231009bb01b9980f1cc92402067764aad4a45f18bdb6d669c5b62b3ce6f39cf47fe652a7642b89f69cb94b14c40cd88734fa40230473d0013047a8f460cac677461cfd6e87ed6493d215e8b96b92fc19218316e946bab35a3f5a5d75c988ba2bb7df6703c0302047c435bb50068306602310082a361b86d34ac3499693d0eacf21bf6c8568176faf11eebd96dded20dc139a787df83a8111bb393baa6462cb283116a0231008af2b27e2a64cb6d585259620ce3806e1c059898a12d892b5a829e56397a3d0996a61689007fc7dd5d1589b10a3925f10302047c435bb500673065023100eafc78040a33bb772ee97ce31d56f499801186760c2215903432aa4319fa0f5b1404ab1159721028c387deb2cfc8a81b023045726c210497ebd12ba15fb5af8e3c58960acc00bb9babd05022de18addfcf256c86d5dc22beaa4cf92055db71aa579e0302047c435bb50066306402302a8457b832c128545d8b0f2a5ddb30c01eab6e01051f1d9158c697ccf9a8cd65379f43befe5c428a9369a96df5de0bdf0230323449caa0dca1d05e0530e48aed037221a733bd54b5dfeca0605caa93328eb480e990f5303f3b662e33dbf62573fd2a0302047c435bb50067306502310097138227222161f147494064f1f53ba2d270065b20b6bde0132341d2cd82451c0ff7b0cfcaeec3abb08da01b5ba62c1c023019b1639a7fa22473fb93633d53bd0d80b3843920ec3f7ff3db9d927a156d6d7114d25fcab6015088acb822c68da2db990302047c435bb50066306402304a1fa78a8d81f9eb08725ef731bc6726e61e6f9bf794477f013d49cb7609784f87ef3b6c5dffb9337783f6ef7f884907023060374878ba1d8bf282edf7d5e913dac9ac33af8c69059814ca4c29627784229f94662277151c85c5609a14084da8b40e0302047c435bb500683066023100bab232ae60691b47f11920a0f969cac078ddee422d556c72eef49149fc3c000e7d20f8d5276a76c26e4e0dfb9b1b02b7023100f677af139d89d3cc03dde5d7a6d06a3b86f5e27b8a7fce6715e84d0035d6576585c727c03ac30863ccd86bd4ade14c8d0302047c435bb50067306502303e89df47f50a431837b2bd3e53d58da27a1a780a2a0d34bb12b4bb5d105a40e8416b09db9904c3fef3c6d4f04aa6f7f0023100ec9c3e4a6defc97e972af753bb46e6ad55097ed463d5da65728116d78aab96e020e68a4019ccdcb9a859dd9b463a39e20302047c435bb500673065023100f3886903af6a0c0dafd6452fe743f0c00be656575f3de61ae3bee032cf242c9f28e22ffa7bed53b28e435cc4fea4bfbb0230692d9352727e762cf499cd939151c449bbbc04fbb05717c820c841ce8c831d3460673868fcd63dc97cbc04e4603a5c7d0302047c435bb50067306502303dfadfaa113905a10703564d3c33940740cebb6a3be70b36c8a099cc8c6383644a55249c8c11114a8b354c6b8a4fea5d023100ac9731ff222e82b0500e37b288030ef33a1f5955fe530398acc9ffb2dbd689ef4a527352f24c2e56d708f73b6a9925a30302047c435bb50066306402301625fa155b9ccc706c74ef719130922d893dc089f9e6ed139bc5fbcc21395900ff292e327ab1985e0699d706f96c2b6802304dc33a4740aa615aa2d6f53e00e0a6c209b6c6571f3b918f9c2f5476f39c5db0c905c733b05638e658307fe357fed6f00302047c435bb500673065023051ada6fb2c3489c5b16124a80bade45f5a3662451332d471bc9d21da984d09d038eb84ca574a659264fc89fd0038c139023100aa46118ee77017ea77f9983a4d50a0c552c27b11175827fcd3331d5066b6f2494f5d7c954ba3d3423f2691ed65f058680302047c435bb500663064023048110a5f41294e6f33516b5396e41ebce4648d727d5387d32298617786ebdee35aeeae6f133ead3f529ef2aaa6bf6f90023001725bf8f4f700a70ddaadb42e0952e8b516a2aff05536e25b142423bad88cc66594841732fb54d8ee2178dc41c2602f0302047c435bb5006730650231008640832f684ececc0bd14aed8cfd0e3c0d152fcdb900b371ef519b61ae096b627fa87b349067e6acce8cd7a62b0175fc02304903c3ad8bfcd4951ea3f659584fb4d9fda43857e898ba10fb1bc046977beae85bc954786897566e6446228c2c80d3eb0302047c435bb50066306402307ecca52dbe87d18e5b06d083094ac2912eaf55483514a7f52ef7be29c58cea82a954cd5d35247dff8043d27287e2797902302fed610c377392308120ab060aa65e9cd821fc8d72251fb2f381f94c882d60408b8d1e84d22617726230d1948e57f8e40302047c435bb50067306502301278f5ff8fb57f5031da0215c9ee8515ecc2a59781ddf0155e3510ec5241f102e1b757e21bbc25d415eeeb33f1f42a61023100d84f2363612402f076a5ed13f0f61e45994aefbe7f71db98b109dfc2e1e2c7c6272dee06fdcd30040524622fcf97035a0302047c435bb500663064023073ee8723407b128c79accb6bb41990a9212a53e7332d0b26b9ea1dde5595b0fa8962b1b573dfbd68d81c67b1a38e321102305e7608f80c9df97223fb920622808b997f34ee3b76c2766e1986f27152cde81ac115a4f5da039c86e8691478b21288bc0302047c435bb500683066023100fdc41a8805ae9b383369ca1bc1cf29b1fb85b1390f9348b7f84fc367b0b617ff6271c16afe1a97375872984801bd3f1c02310085d01648151d34c33501a8a2784d8f8fbf44da63f64053ef4b4f9fe61f15606daa6ced65edb64846bbfe50354b77160c0302047c435bb500683066023100bafa7b651ac14bd4372a5017c4c55f586d408060f51e8e335b8f463069f02d97984ed4d36d992ee5d8f78ca4d8189962023100d226560fb1275c2ef7ba4275ee9b75ffece6fe3e25021eae9d9c7be44b826b96f9722ad74d1e9a7bd396fa5bffe92bcf0302047c435bb5006830660231008b80120391be3f428a7e6335843e1699c33edf9c2198d81543450815805fe32e9e9810e1eec46c0b7545febd7761ce8e0231009938975638b3623856f31f4de9a978498c575d219e0238bf21e367c95d4bb145db8316fe63cef47e520c11ff2608a8880302047c435bb50067306502300af449e9ae7244d5092dc4fa831ad4a756e9c58f61ada86ceac0ce6745af65d280f9d4e76bfc6647e5cc17082b3609d4023100819c993783a4ad0cbf1890eb6bfc56056da99e3651b484f56e0d23e7f973b50569b513580514acadeb97977ec0e52fff0302047c435bb500663064023043ef9b771b11cd647894dadddfeeb72d9adf1b21db6370f3db019bae04ba1be0e639cb641ebd09b54f892c89932e0b4602302d9f05ca32e229603f74cfdc1eb1abf5509cf6ee75ccdc490d65c12c3b1c6ed0f924417b750c41a8b11a2b6f18ed56f10302047c435bb500683066023100f80d0f62181c50bd84a2b16142f808816d48ae6f43eec2f5149a71627c88dca16639cc75df89f0e09c7a8bdf2bfa08c9023100a2d55f48bf6a6b2f558aecefdbefb36a87b1a155f44eca08902220e563c4f7b02c6a5bc150b20c2cefd3d7a3c00bdce40302047c435bb50067306502303bda0f0a88a10f7c5f69c57d4cbb8423b1eff17ec99dffb84d63de4cdcc9b296d5e00ea4dfcbcca00a0a4549bfa594f7023100a7a6010875355b7a73911177ef7f5ed3a53657fc0cb88590492a1199e2e6dceddda7c1804ebe074f3c95e31b14462f0d0302047c435bb500673065023100e3705cda1c0de7a95aabe2af3d5f75208fd0e967f90ee9d2fa20c4cf96e6b321c642de76ac1f02a7ee998af6834e4add02305617931d472b4d2679719b73626f7a96ace8b5063decbfe3e8fabdf03e6cdd50502d0c1f16fe383566ec4d91936455fa0302047c435bb500683066023100be6e12ad96c36a4fed241081c0d13e73b4b496191e3dd10a2858238f3422d58be9c7f5dbd923e86a9c0354d149c3e750023100802c8fa01dd1b5a9078aa582e33301957871f411f7ff9397b8d7d463b1c49251d4e8284115e04251cfb6366add90caef0302047c435bb5006730650231009fe37d8a9b3f033a5bd9a6a4f1ca0a7a710ae5740566e0c4f01cc6d820943e872e2c6ae62f88f9538ccbfaead0342ffc02302d7d6a2276b1d75c2de0707f8ce1182f9bc72fe4b07987a802546218428ac5291d1ade3b5b24300aac3dfc5b51549ea20302047c435bb500673065023100eef9f0fb32e98976f41d154076c7109bbfcc812e749f3f36287b96a56ce368c62e5b98a9ced0539448fff65ade94b5820230520a0d5dd7c593fce16b1b058de1a4e7836ca8cb80c0a68790e84adc5e826661caa1ffec34df26e09b9acda7e97fa0990302047c435bb500663064023003a87f904d92497a4958b8c5bd712a6a0f4160fdd7cd50302927456cdf689670c0597d743b8490935f672541446b9ccd023059f158cfe10dac1d11ce5de944934d5053a3b4f4f5180f447cab6c6d0c0323eac7e017220bd219089fc78a2d59a9b4840302047c435bb500673065023100d3bad3cffecb74f5a978acb75336dfbd8d5d08884c0a28559ead34f455523f11768e12c17073ef0553e9420231e757090230067dc01b02c3db176d0be15eef7d678b6bb10ab61345c9f1a1e862cb1bd77c4b098f49894881034b67ead3b0887030580302047c435bb500683066023100e547ea64cd82b729a9da6fadcabd88b0201053cb602ee509caa79052144afc62586adf8a08dae63c1466b315871c747d023100c158546086fbb34da90c8ed9e76513394df8ae6fb0c32bca94b3024e5d15de33c067c35a75e2ce8377ee601000cae4c30302047c435bb500683066023100e3f42aedcb01d32ef3ed3011334bb97b6d91e8507c7416c0f9b9f7d9448b68f554d7cc334aa0d9b564c9ebcda94c8ee40231008c0f155a13ae0286f6aa7c687f191f76fa8fa8b0b823468b3121dbe92863f15df044c967723f11486cf3717ff2c8b91d0302047c435bb500683066023100cda4781dcee892141ef26e9fc7ec12eb24f8fda329a19832bd04c3a8d7d2d90cb3350c13708ed5c560ed61f96232aadc023100c1bd9417ef7ff0d0bf62c44c5cb428533d5f79e536e5a650789b8803d332a546d71cadc1ed6b08d135bb5d8332c9d6270302047c435bb500673065023025766d1106aaa3005e10eb7c929a8e5a2bff0d1eba943b36769efc888c45427a20d774bfe583810d647ac0915822ba63023100923370c0589dcedea3fc152d51a65bfec14cb991f97fc57a6068c0e50b68d938442e64ac3ff6113cdbdba72a9ef5ff5c0302047c435bb50067306502310082166d8489a526b26b6e6e7dcd80884e07e81b07d7d1e9cb9c16e22ee81394580a0d3d6f1b016e3f904b01312731f15d02301a7a0762aa53222581f20ad49d7d2e6c48f618cafd325e700a96e27b5373c4a002de0a1f044b25dc90abdbc5ac8b039c0302047c435bb500683066023100bb931a8fafe0bff203e827feb7770ed25337a1bc281056d2b3e823975d85e8647bcb62efb8875121b36ad3e366a07cb8023100f18a44a6373768d8b35649f46392d13eef9749c93df58360441f05a4d62f0575b4d8cdc2f57223d22305f2dbcb0dded30302047c435bb500663064023043463c3ffe80550b2173d92fb03534df19da1c0274f6f4f1ec1c8d40794b79d653bf967d22fd01d3c14fc9127acc0840023017fbcc2ce42154b167ef89ebc2a0e7300b4f557673529c2450e2b7d176c9c21d5baab97b04c21cb42d5c6c3e04509a0a0302047c435bb500683066023100c59116d2c2c1c7655537bd6d4961a8984a72b3f7c2f17a3a53b49766471aa8a3802645430cba8cd56ff60629ac0fbafc023100bff7e53766481bf20c5c762194d106f8f66c629d9ebe2e39d4909986dd13f37d46d8c35fb3738d3cc67a94487f8f0a120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c96989badd773b7cd6c5923c5348a35e13fd5cb7e99992cd5a36290beece7d1d5cf3f9dab9683c727e097e97ca55d16023100a8aa8d865cda63e8205d18fe12b9c87098dfb6afca9c5206aef7a42d49cd60f474ec1cb5502e7f14232995bc2de49f240302047c435bb5006630640230530a1ea72c52f795d87aef15576fb64866c34ac7d48a4a9d9ac1709392b3f9d23f6f9be06fa90f1276128c34da9c63d2023009e6aab4ca80f8b9433b2f813ffd412029fe4b9beb48edff858b83928e8b7f2f4dd4bfc3b8eb3585674ee1891eb003090302047c435bb500673065023005c21b0c87f2a4a81ddabd0dff108037657fff2678a0b9645850ad47c27f769a1db40c957593ca6f5ffb0551917babe7023100c8b2c263fb7448c496bad8003dea11c16ca3cd2fc9a9309d22206247a19d9cf4c169270530268d01580e7a0e9bdb263b0302047c435bb5006830660231008a931d994accaf585570f7ed5cb8a12c648abe011a8652b326d24b0f143838a34678156444e22abefb1afe3c851a1eb7023100a8a365593ea99a2f205446403094f99b32e594335ed812bb0e715ccd87a6116dc89e2772de50c59235d07f37e408d6800302047c435bb500673065023100eaf030039e0afdbda673e4ceea0315c80723cb3174e38ed0db8bb68459bb700b08920b2d35d63333b94c855b47992674023073914016a17f4579334f3438951a279b5febc30ff3e9b971251668849d824a4690a6f876e36de41d8e8c29b3c0a00ed10302047c435bb500683066023100ccb4137a81ed0ae5fbb31d8a2f13c24cadeac96599129cbc52a82bdb3a2b7e2a6a6d4bbf242ce5abf12ee9633f7d59c2023100c06a9c732b4486686b1a6cfb7fcbcbaab5eff9f429e971074201c6b88da47df708c75cb6c7f212b0d8284ef2512cadfb0302047c435bb500663064023062eff32c986583e77007b6a1aecc4a04c92e2b68d928c55a78b18d17c4dc5fad5985bb4bfe491873ad4d705956531dd5023066c8a0eda9fbe82b97ce9272bf81002a3057bd0c1976cceaac17d407cce3d01b8b8d79e5c0034922834f6dbe0109ba650302047c435bb500663064023025b988f42255e7bf335a7b5709b1397e525ca2d44fcd0190bc9afe097081caa5e92c90433c1ec71883dd9e9a82417bae023051b5b46e9438b0357aeacc311e2ec86272facd4661fd4dec9cdeecddbe0f01a71cf4559e13ff36c460cccfb96f27e0960302047c435bb500673065023100a24edc9f1b168498ed6c282a5fb56c619709028dc1a81330da0391fe395aee4be0c226d0e1b62d2313030602f1edd101023032524bf50a55662fc224a49c93d755392d8db7d05bb370610ac46167438ce2cd63e69443b7f2bb57c6fdb2c06c011a2c0302047c435bb500683066023100bb73413ee4c63f7c243870e6e5eda74ab033abddd4d8d3466e35480b77c9eda1c77ccfcf5888304577eb3a98c9ac417d023100cadb108c897d0aa467481fd79ac290848c75be9e3c54ffa8f2623e7b2cb22253442f2d327744422b71b6e9c5995a07430302047c435bb50067306502300abce482af0dd1cca474e52b1ded0dc10458b06d4a9def6f22387f8aad09479182e07c6da8e29b3d4c0577f59390704a023100d6259bba5ec8c8f3de543ffc363651ec6ee6779e0750cb36aae6bd398c7d920b0c7bd499274a6dc7cbf6410610145b9f0302047c435bb500683066023100d7c94ded578e262c8fd4a01de72669b906bdc916a2f8e882cc025a39c7c4961d8a2a4da8c5be1f32a9f01ad930e9be47023100cd4e9dd91736358f608fdffab548eb12f3a86675f6dba7101960bb00be20583bbfbbb802049c69ed449da118e11284b20302047c435bb5006730650230526e55df545456525a88e07b726ba08a51df6b74031c279380b91158fd110337dd9730d25cc94608d3927b48ae56472d023100d67b520cc43550656e970af25b0e8aee6278ff83b5ec363820079f5a41bc3790b245205529dbd61923eaefa05d60f2000302047c435bb500683066023100f08ef04b84807e4d6b3a84d69fb1c33fd66eb2d3ed6a28a98038a53b06c939060a8c1c8c13011a4e53cf7341284cb6e8023100bf3ab999f60e7d0271c140729a6ab7fa10ab1e5ce08021740a85d1c4bab90d3502deb13ba239e329a0270f3d10cc45510302047c435bb50067306502300821823fbd2db0f2b4a73a050fd2e9985c63ed338bebb1e1c03d25e913a6fcc3dcb22f193d580bee4e2f7b4bdd703959023100904fe65113cf8a5afb618f7a09dddbee8277a1beee8645cdce288a4b2c12e9be1c53eae9e95249d9dcce925517f51a1b0302047c435bb500673065023100c3357de73e7a90d28e9f919de107d1b3d01bca22e8294d829d768e2d0b29b7fa475884f68ece18364ee56daf0d6f43f302305ab09fccd3c4998c755aea6d4a2afc7ff3fa4d457d6f190c1b624d45162faa02c5cb744c286a087092c7a0b081d985210302047c435bb50066306402306f6ebd776dbf35ad72f1b444329fce27dbccfc47c2e6890f7cca0874d335a2bfe881166efabd29855b7c0466ea6f2b06023013431362b77eef80ebdf14227e4b1efb7c13102e2b807d2d90c3dfc997c2e8672a0c3298811a5ee01e5ae5d537453a6d0302047c435bb500673065023078c28d1df5de1dfd94c58487e954871ebd4d5cdfc8d961b20e02d49391019ad052a4d3456026b28a50ed42e1bb162c5f023100a8cad79ef5901a6498aa1f19cca4b3a3396ec32425521ddbac1d13c07bcd3df07931d8d7be5e75cd424542705ae3abbe0302047c435bb500663064023014a6fc3c3a2ff3ac50a09bf260daf09bb37ddd2d4bf96cbefd1ff958781b1c2b63b0b5149b0a100caacbbeb4fbd4ff3602306e5cfdc8d58cf505b6b2d61d3fbae1ebe9b3878c7f60329aebb2771a911a5648baf0e5d58a327aaee539f08e6c8a52730302047c435bb500683066023100f981908d4563dc351352fef84252fd786e50bdc912cf35be6f90bc0feaff56ebeaf655749339c36d5b740937fa0532a6023100de3302fc379e61d9897aff1e9d48a27130e24706832c3a4705f51690c3f41b3560e51c74e7af44369131251be00950860302047c435bb500673065023100a8ef0e9ab6ab5ca16748717dcfd80e603c28cf3ce3e26af6af3aa722031fb669e4777a438706e7774f4b4d8a72d06b0c02300a3763a92f6d0da655b4cc52f9b8f7bf44cf1b0d4a836af62c1f5d81a4b762f7f49c839d418cb9c404d328e01392a1f60302047c435bb50067306502306af59e03019e9799250a8d48df9adf0984bcd1bac8ced806de51a05f62d00bd1206b39e8a2dbdc96d34290cb558a4b64023100b6ed90de7990bf2730b383210866d26ff406d54e8eca1d38600d8e892fc9a24abe813c3fe379338b4317ebaf8ddfd8d40302047c435bb500663064023056b6f51d213ef8fa2703ec5721acb48f95c64f176fc0ec277d99356c8e843e5421227473c1cfac62bfdaa3e132b8a0410230692ba1dde207377fab21583412f5595244bd12722a7e1db83e77c92ccd256134ca7ec5fb59904e85c87e3850c63df7670302047c435bb5006730650230734ed1ef7079112df9549df353333d772e77b5884d72a7d97471f5f1b28f3855c8a5d2dc457fc6e30ee154aa795aef8c023100a3d25990a193b75263e11d82a2320dffce50b4dfcab4e7455d16aacf94039496888cbbe663add679c67d52e906c378310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302a7e3f6c74b9ef529ad96a144834de506f08106ab5e0ede4f154020f3e7f974f18652c0a62e18da285ae8ce801c0d78b023021649c2c86be4a946402a2c926ee8f06ed7f4cfa901f041e3ca7acc58b7ac05a811888d8cad1abd3232ce2a49fb0e0660302047c435bb500673065023100bab3f237436771dbd1b22ad6345ccd7e260698dfeb9ac9563ccaa0188699ac0f15ef8b726b03c73edec54ec8a1c9d0a0023019b4d61303e930927fd47623098caf1385aaa61e798110824f4f9dd39f3cfef3cfed5f4d0ad575f88536f9577d6712ce0302047c435bb500673065023063de6258e1932b45a66ab28a6443546779cccb33d1657af8b4294c69a467582fa84d7ca59b982ca142ad77be5733d2bd023100a066cac0edfedffa4e889b715929e088a8f3f33175bb86f340c430273fd2afa81555b30b71e349edb9c7e3bbd4c352cf0302047c435bb50066306402305112e01ddb30feb596d14a61e1ba682d6472ec4b47e230b7357572ddbe222692e56b6892bce5516c51726a78f7b242e30230134a1033385338a4c319df54d4f45274ed7991b6db6b99a8b7ced54808c9529983bb29b08284765d0227f847eff04fc20302047c435bb5006730650230098280f554b3904f81009cc37f7cbb9fcb4eebe25a7077f4d8a12cb647f20ea0defe057a1b2260d06d7787ddb97bad8d0231009c405ab50661076a1bb6a25bc5a486dfe0f1d6c16e35d6e4988d167b62d9eecbdb08935dd5644807d4141a10116879240302047c435bb500673065023100f483572aa9176a71c9a29f786bb83db9730d52131cff7a790456f9ded1bfc14424e721077aa8e8095e8d380e2038eb54023064925aaa055cf3d4742fd0989bea60e761a74e0ec0d1d362ffd7a14ef539c90d25e165468ee4b0c7903381b5be2d9dda0302047c435bb500673065023100a9a1e1c8b7f562aa9c9f478bc8282749d7694f21d1e4672fd994a7f51000bb93a7bec92d2d76e3a571ef605dfa0f1d8c023008f7ed235796227f48498efc5db097907cd1510d6d906294856e34cee2b2b6078e3c1e9b209f1bacc42cc449007cc59d0302047c435bb500673065023100adfe218c83498a1f5d5718d10b1f2b085917857ef25a01ecc67e756dbc94011979dfe811329c12e571affe7f587140a502301c68bfbb23d3109bfcab189034ac1e9232d4dfded97ab8a5909be3757bbbba301043dcc5610838e52a5e898291e29ceb0302047c435bb500683066023100dc91fe410eb7f8a6b3a041ef16c927a22494e26dd1c65de7c05e9a69d6b904c1b91f074530bcfcecbc2e92e535d08d650231008647b6c645a466449d0b550b05364c4881e777d3d7610e06f8c635b7ef731c078350c81b5be62c81f9c3fbb3be43fd740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009fa2b5d4c59601268ddd38588f420647ce5bfa727052a3de86819c4f9e6e4c81bfb54ef9dc74a2477af944b33cccf642023100e569fd9a0a83af9a31b91b3b41e7122bfc6b8a6fb58643ecf53de44e31d92f85d5c95452b5e419623c1cbb17b35d998d0302047c435bb500673065023001fe70095b6cb17cb2c17bcbac688209919f1448979b81dbceaa5f3dbc59def0252f0cb6f1e03bb190fd5f6c8a4aa2f1023100ab9680602c6ffa3640fc0a9d716799f08e9f5a5d7a0a862e481dd06a27e27687d6e2a20ea5112cc8d4592f0e1720c4f70302047c435bb500683066023100954a4be13b1bcb0bf4816d9ffce47cf6d0bae74ab47e69d3f6a0619ebd70988dcb2ea57f01d12102b607286ba19dfe25023100e74cc07c1427389398f3387f3d968ea8d11ec0ed98c2c6d6be433dfa77776891bd5f6e3eabf366e0e6455fb7373d5a730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c48e51473274ec19ad149abee216420d82f254f2db32a1b5a35ffb6ca1b34a11810eb2a67a9e3699580bb87e7d9938902310090faaf4f25e1fdb5877767d57053ee9c6ed1e3c24d2a3ee4c00db9b2174a81255c49923fff8c403178c9866ea7c7a74c0302047c435bb50067306502307d670575df37804d952289a6e26998c3cbcd2b2c05531c8b7985c006223c850872554d922ce54064d4bc1f2741572853023100ed3619fa6a40ab5939d5c939b4c4667bd0a1284f5f74404a7060e6aeb6c84d0ed406a455b9b4740cebf650d86d5746ff0302047c435bb50066306402301fc134cd16d2ac7ec617342439640a19996ed443b16c508dbd9a7a8d4b0671faf138b8af8153eea1f729eecae999706c02300e931e134f4ccca7a7965eed66920f4ba2bf3303125a6449e6c822de57584c1ef0dcc1925d6fce8d2333a0126c57cd7a0302047c435bb500663064023100ab7f9e66215867f4f54d78e6b0509a6d375833df9c44d12b223181fd2f0d3a4ff6514f628c616acbba77d6c1b4c8918e022f66a0ebdc42a2c6cc6b7b875be76812cd5b3cbf938e4e2daf9370c5ee2fca721a554e87584851a1a81c204b031919ea0302047c435bb50066306402302fb70212e33090e29d74d0ed9935168ce736326a4ffbe0fc0c97017b168d163f123f3e483fcd36e63abab637607a3c1c02305f04b23a3bf04c8ef8e199bc5e2590fc4fe6abb512536a87f2b28d468351cdd34a604fe22f6a52f8f986584732538d200302047c435bb5006730650230323426fc9131b3b51ec4c1be7b8b34c143a3e121a1c6eb5172e6aa5e01e42267a6d16aba1e29936d96f0badeffc651cd023100f8a6b03ee1b339b433499d903d60d8ba2cb3f1de4c16545c354dfa5a9a10523f39b1697e764984d4f396e1f1ca811c030302047c435bb50067306502310095e71d12b97abe7055f2a5dfac481bcf2ee917b853e66c86547941953319974215b4a72a1e6dfb968e2dd69addd4e8ae023046ace7400aadd3d333773c05bca611132aa9f2339524b9c9fb0cc5d664138548d7ec707ad4dfcb44af8653df7b211e960302047c435bb500663064023056d3e5aecbd9079f49e54bfa0a464ca0ca7c0cd391a1a030d4d00d8b8d277fae1399123b69ecf060c5be71e5bcfe802a02302f35bddf8d18de8580279c3fb4998ce09e14de16fa1c50088ba867e96a169d52cc49eb9fa0ff1620504b0bc3c8514bc20302047c435bb50066306402307baf23d6309410cc2313e3efc80c41f7e473dc3578ed1f804ac9f40411a3e1ac3cdf0d484d1fdce8e1c82048e0f71590023071e463519d61e5c13f1ff87a239f991d8fc8510bbbed71afa9064a1927f6eb82bbc55b727d21b8e8cd3a45a91c3a601e0302047c435bb500683066023100a5830588ef41edaa388d8c2df1e3b89310914f29bd329c4f71b784d9a17111afd6a15fe9f931f63f36fe98719b49e040023100894f6f641ca5c7b7ced8379c632f3f8d0ac326909f4b9dd977a5470633c6a352712f2c144aaa27a1d47d6337554c049d0302047c435bb5006830660231008f2d902e40c3ab0ad9a38983d757adf11e8f79a5674e847e9db9769e719c915b06fdd5fa35d610c75485acad7c2b0a41023100e1c0397f8f9fb528d17dd5a5482c97406b25383cba5cf0f35d2cebeaac8ffc1f6449ce0019c5465eb993bd6a82e1a1530302047c435bb500663064023060dce552db6ff3360cd1b2632090214f58a7e81c195c4c7ddbf6d3aa4a94c225e934716cde12755986d3f9f3e294058302302d185c406f74b5dc51a4ff56d6b34de66cc512e154d087d2189bf21d46572344b61fdb8f75262192720bf2405f8b87e70302047c435bb50067306502303c9e41e7ad6e89d898554a8e6c190be616194c67f1feb3ad21633d4d03ae44adf33a9406f48dffca703465ce9c8359cd023100a6ee31d10bd6956627f70381daa43b019befd2fcd4ac65579f032f40ee4704cc00d092e60d4695788cfe4f1fdc7e18870302047c435bb500673065023100ca6aea7ed631bfc208b0e0d8384d0ef2c95d0682a55e87dd1f1f78c35f633728f71f117a039f5739ad233457e8e4f0eb023008ba155c42e3726bae74dfdee30fecbf7a45a78179df34f672c4abe1d51dae59b4387ff120369d656d2340146570ac180302047c435bb500673065023024e01067b7473e4dfa04cd9d6071f49653041cee8b683adfb8235893142ffa2f2f45b664ffbab9f11157082c20b4a946023100e0c150ddf5302d02a11c97d12d7d3bb6711ed3651519dd4b032c3b29cc24c0a79d36fe18edbd8bf947fb79caebc565600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e2df793f86cdef0f05afb05a3d3386eca738ff036f4cbed8af3256a4d5361f1a2858d70a203e35b812dce9c6c1f156a02300b2ba07ac93a577abece009f330c8ec7ce77b8e32fa2ed5490efcd76200f716311b8a6c789e39a00aad03d856cee1bf40302047c435bb500663064023008b6a7b963cc9a647184a9342a5fe91cf8e1d8e9fb718c2fb5f0672ed3f62d1dc05ec4984a3f566cac32793555f50fa2023025da47ed229ddf629d1441a87f8b2333863849c55131b8128ffd1001e7864257fdfc4d232862ed91f050c6e25c7adf290302047c435bb50067306502307bfabdf1029c33da58925ef04bff1d157567e903854711742c68e24bd3881e5d773d838d1e4f764a187a196450363ff3023100f3e2ec44803964efa70b430fea2d36044fc887276438a59deab039a7be2288ec87988a4d5005d6ec888f28f48585d4e00302047c435bb5006730650230448db109e64fea932cf4b9aaf49fb93f92c3e6a8342775cb662b35b5069f3e61ebedf20cf7ec4730cd5bd52473916d8c023100e63ea9f33b70a0374c3371ef2364de530a19b190bb09834fc98bacfc8fd1660721617f9b9613f6ef79113e7ddf92d9ed0302047c435bb50068306602310090fa1e3c649f74433a5c02df2cf2ba40d9899734012a7af4ee7116a455a0ae498aea9b223219af5ae9fb6cd3cddb8d88023100e1a991b9ea0c46d30de751ed5d45dad7025bf9c6f923e3a94a13092cf3c92ea8cde0737c66ea3fb97609f5a546012ffd0302047c435bb5006730650230321d8b76981c4a6f5e0a5c9e661c406a67b95893a0d35019aa70203f748a3ee81fcffff6b2da87bf0e5554138fd74f3d02310098cde00a7e60611abd0cc7ce887646ef63d98601bed4234d60256bf58b17e8d9f2b9579b792d90b62e851fe5440df7440302047c435bb500673065023100fd44bfb18d710ade8f1512d6be6f9c74c63f6d5e5e673e903ae192bd47dec41608bbf764febc87fc34dbff391b8634c002302066f99f313eae27d62288edf786ac43d857b4311c7a3ccbb216ba2a119dadceb2475713b865f84c6e5805378cc2bd910302047c435bb500673065023014e205904c4bdcf2bf76f19adf54ceab67af8f2d125ca389170c1d18cda4e5e70a3b44464e2168debcc891b0c2e3ff5b023100eec2eaebef3acaf27250be2f7ea14c94c3863dac139671002b8902f82d2198494e4f137e77de09d6168b07024f9e03e50302047c435bb5006630640230323325a82f138ec08e870c8c67565362904421b533ff094c493c03eb293091e9dd2287b393842943127932aa558dda31023031e786d4ff70ef2dfe97d043fe1cb0dc9202c976e8ae7479e2d95ad69266209cbdb6913ad9a365b3fe1d1b7ceede8e270302047c435bb500683066023100d58a672fd968579c5ff4bb0d3db2e887554dbaaa3ae7e3bd778334483f76eff1d3085793950b715bbe5c598fc1ee4cde023100de4b23ce631a758d6150905b6954b7e9634963b47bc1d12876ce0d826d56fde11176f5ef6638739da27513ce2cb9568d0302047c435bb5006830660231009683646ff2049cfb1ae697a604f7166e7f596121869430e79c019b7cb1b49b7ade1e2864648166ef1fd49ebe30711376023100ffeda74e1b5f47979f4273008bf2bc4d94f61e6ab013fdf5fff0b217941faaee0e3f2ced34637990bc3e7e55628ff13f0302047c435bb5006730650230418c595faba77c86230727ff5e9aa14efaac91318ced6d89b54d74fd490d55c008efc8564e11be90d852c4f9240ccf94023100b45aa5d9689f9c0db5fb6e5211b17d206441ea749bbcf2982a3d96063b2af1c3a8903e7c18393bcebb51cc93a0623fbe0302047c435bb500683066023100b26f4803bb301a22d1895cdb883aa848f0e034fcb598dd4afc2d2dd9cd2beed8dd1a334322bc4c8b4f83992ba29edb52023100e5ef3c33d4439984e1f080bdb9c9518e4972439d1823c1396afa2cb0b7b596b46955d932bb84b05256a00bf1b66bd1e40302047c435bb500673065023100a939495a32aacffd494155588b98aa5783869b743ad99481aa8315ca02d755661b39b6d2fc6f786efbdf2a312109cbc202307618b81fd20cb58b395c52fb3de687564ef7fd18a56c250c30521dc7eba4e0adc8d8e85eaa63d6385a535a0a25767d9a0302047c435bb500683066023100a33398435cf1f625ad713a8d499ba394ed74734fb90494367cf817fd82462984c2bb78bfa59101a580f364cd2355fe6f023100a5e707146d119452db70f2f66f90ed9bd0cbf07acb66e23798e37d0f7054a081b470b5196ee9cc3968fc2fad1c3e1aeb0302047c435bb50066306402307ef7e5f15a2b88a1ff1c8a0aba56ad4a72b0f151c971cb6b7efbf9ccb91a86728b1702f68cc3877e2a1aeb0cb274f87c02300b3ee5964a7b4578700816048dbdefb45969fcbbc810d98269a78033101dee18e4c107ca71d026b1999e9d66bcba02e70302047c435bb500673065023100b2fc83115b60f74d072527481866431a2ce1559a885e6767c29adf87516b8b5f13df317148ccfea40eb62377d7d10d4f02307e3194ad30a129ec35b483fd60d25ee650716af52661d9535120b0528c7980c9d3b5d932f0c824e51910fb26aa91413d0302047c435bb5006630640230673841accd5e461d94fcfe8a1f34c4740a50860c4dc5dbe35d5422c4a8be2a077fa429a98a9b8db2d56154b0eebd43a702303da3958d1d89ff04fcf5b655c99f803409e12c724a7778d9ccb94baec1e1b7239401858fc549f94520ff7a9691b7712e0302047c435bb500673065023100e86f8c51b61a42301b17adbe38f550c7498284a5ed3c84ff39a9757489b2e2c19234a1b52eb385acbe686b4ae9c475f60230073f17d8502754dc06a741bdb09367402cf2a7b9b83812d486525207636974c532fec953cb09d8df3623f8180a3e56d30302047c435bb50066306402307234ed48ecabc85a6495de313253cbdb1ba5c3b8609782dd66ee9d8bda86e5be4fb3caa96e35f9033e778b086e609e5c023070c21ac49b9c9bb1317c84da53f250caeaefa8f18aaa3d122b703030a8ede1312dbb83cb11adce9a5b8e033883c6faf10302047c435bb500663064023006520bf11118c3f0b973140cd9c15dbd489ed71b8bd4998a4f1f305ec298d1f16906dc70d779c5d26c60cd511a55d1a402301d2c5a1570734f54a9b955249381ad41247ef28425b67e9313ababbb5375c5739294e63bc779fbf8cfa72ae4b60dc6830302047c435bb500683066023100d6dd57a174dca710fff01f92aac5010e398d8ae4bec5c8e140266f2ef37588ed318eeddbf4693931e19ee95b0f1b105e023100dd08b14632a04bf9f430411c151ed5e7b50a71507de9b4f636bd43cdae341e0adc98e47fd8659915987358f5f8ebb2cd0302047c435bb500683066023100b5d245906b57912c80b0f87a4f07d988c4882d33a4b962f418ed297d4c4270ef640157db264fde121d72d058896bfeab023100fae8b8b0b585dc0d08171fe1b29c06e102bb45eaa2fac91faad65c846ff828e7bfa682838f6af1c3b9c5fa71e59e6d2e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310080d628c929cb2368366a86b7e2a752c90579150aad8d084cf15bc1362799c8a11c5d7604a840cc50e349514783777899023100bbda5fd60187a1e6387658b88d7af691f8bbee225b325183ad9b7e36d3aaabb1c2b124133657219e2ff197b733a8a5fe0302047c435bb5006830660231009cadb92075bec5a46bed6d4f081ffa28ad54e2e68d3fb8fec840c5ee3c5bd535945e8744e152cc62eb8c4aa179a16566023100f600c1c3671de25253fb1b0aa5682dc4c3338ea5db97cead7846100d87ba627d344a10b9643b0a6ac5e6546ae62a09660302047c435bb50066306402302465b8bc5ec88e04e3bdf11497425b4770bb1981d3b780f79513f3800bf0c33c24d4ea89db759554a7c4557d3f68dc260230195507e6c6f6bfdf97939663df58ba6bd75003761f18851ef3d1715908a81a4bacd70cbca4527e32a5bdc7560eaf27c50302047c435bb5006730650230297a03e2e10db50d9759362320f6c03a5ec98ae92332c0da0dc08d4d81315a7d8229792a5c7c45368437e0b3bacaef4a0231009ed84eb39e8e9ba0f9dbf305f8b65089ddc4b3a5f368db08c1ced147b86b1bea3aa292c1ade2d9db44294b6bc63e1d410302047c435bb500673065023100b93e4c36fa8972a6dee59810d606dcc522c6455c5f1ead930a3cb494f385c8e92651d63ca7c11afa5be4ab0f7c95cf8f02300d6a0684f8b5d54633b6979656f529aaf3802d1625928a13f0ee6d7239d15379fb062033a269067a8c7389e687946c5c0302047c435bb500683066023100af009c88ae98d2e29a95faacbdd6591b4b75f11c02f3732c0c333a5fb72731bd3eeeb2078c2b4ce0e391a84f998a0012023100f71e28dddb2cf377c755b9e85b1cd85838735f7370c774fb5693287b41e01e9fb2a0d74b9a2d564b01938c836d90a35c0302047c435bb5006730650230361ff3a2680bc44ef41bfd565d793ac243eb05bdecf1bf6ac9419d09be796a4580ab22a3a0569fde99d41f93d16c2f52023100fbe1d3a77cc7b322fad02a6ce09f6035de7f01beace261d89fe07dc65e712b524b4e2af8ac9f521e536d66b31473ebc20302047c435bb500683066023100a52a63ebdd3fcd8d5849945c017dd89a4fd447420ade43a18c15c0d4f91d2850ad0b4cf5753df3bad96c08458ef61050023100a5c057f65d82faf4cd1b00411b6d12e0eb8c4a1014fc3ba8f3de89b16ee8bf7c96b398c777a5f34c48fea259c75ef4080302047c435bb50067306502304b275aa8f805a1302b1414e1d855fd63db2826c6d35ab18d9b1971aa24f58c6e1172be5f4ed4b47f3392ac663601d35f023100e5d22d9c5991bd765e3bbcac7c1202fe81cbb28ff878ca9bab96ccb4e0773c4d41f4eef798f8c5f91fefcb5b406bf3760302047c435bb50067306502304adbb1d0d1ba8f87ba2bc502c66649ce089a6f9621eb698d98bba0b344159c549a890ea79d45d2ef04b52731b7f2eeb6023100f0b3fd4e133e0668249ff3d74e6a95699f434aba6926b1502d3e7db11ecdad8df7d33ccbe2108a905479cc81bb0ddcae0302047c435bb500683066023100ca2fcefe87e06cef8cff0616bb89c574e636203ec74f4d9cf6a89e30e039bd252708fb2c430dcd608fd34d7cb7ec1178023100db47bc53dced74c0b42bd05d8408770c68b262c8098a2225ae201e01e44519e97d2525d30378cda3e518cd2b757619b80302047c435bb50067306502310099749ef946b089853b69a42d14278a3abd226f8821e8f1ace0db0405f2f09b30d02a59d63e8c9b629ca304119d03b30902302f1219b2a60bc651d0b6ee4a44bdd24aef833450a6a2efcf0795320bce8b861444e6ebc644c45692ad8bc68f5dbf1d620302047c435bb50067306502307d7bdff8126a041cd3612b8a6b9b20df0e09aa24bdbf36c06d74052aafbf5fc9f91fcf1055532169318d9ced3a15a9e4023100d3a95332d8a83b0fd1d3191255d489cca4bd0c8ab5cfa91e12c9cb1f4211557589d55e31eceb3eb1ef4e6b97a49df3ea0302047c435bb500673065023100d8c8693e8417862a1f4bc1020cf34a79f00e4d21c8b9390c4322c0e4004097762235ed3c48494fe15e1d54228810264902303b1db22d131665d098b5b09651d5e839bc364bd1dda776569118446ef68ee5d7384e17dc97540b90f04a0fd919e250ae0302047c435bb5006630640230404170aab957d95564b7f7560835c1926cd5b8ad833844e4f3ea3dfdfbb02875767297f5e457a08c0fa1b244411aab530230208ac3cb18736066ec7e54c2e0d20e59f61cd2e179e621ade12915aaee6ddf722cb36df42250e388145aefdbfa7c0e840302047c435bb500673065023100956337f9758074c6268884647fb44c380ad6135479ad4807282615e8a8ac466534c6b2972869b622dc3307c6b0eae1420230754fceb38884e3530a2f53c5a46c17e49e910d51905d1e2fbe8b7fed4fef2d5e65e9fd59832094184f8077619409753f0302047c435bb50066306402301c61f09a699772c5385616cb738dd4ede55f046a4321186f26eae6e4b34a769d82217c2f82b36b132b472b25b716050a02301ecb009aef457256ada4a3e5c2ec87cbadf9a6f1dd05b60eea6a28df3fde298c97516e80b9fd4db6b40f5c32a57f8e540302047c435bb500683066023100ec8ba91b8c0124b5e91e7797e5ba9d196edadf75f3819fcad62b1ee32c82c531e8418bcbf2e43557f2379d7bb22c0cbd023100a66c141528d7a32f93cd1e988857bed90caf9d1550891b3cd1179dc42d3ef4383aba46be122504f1021004c5758af3690302047c435bb50066306402302b6a4661ac36105b67891b61e9091d9720d6268a464c68a2bf5f842f68692285c307a3205c7b79e78816a10ffbbf870102302097429962e88996d08933a7c897f27cc35a68848d36514e76b91706ad68a99825f35cfbf2a053d81d573f8bda6826ae0302047c435bb500663064023067bd364ede2ae72d768d3e56c4eaed4d3beb49844fdcccac0a90fe9ea7b9c75926cfcd9fcb6778b4ff28cbe825b3f92002304302656aee44f1d6b1be85bf0af6fed0f784864e704c0f9811b3c8e0057b776dcc668da7dbeabe3c8cc9f6ef8c5052e70302047c435bb500683066023100af7513bca51963c98e6fcbe9f131906dd5c772bfe7e4736ba9625db14aa692f623fb7f26343597ed239dd9f7032ad1b10231009cb1f506a635fa6a2c06e0e80fd22587b624908233a8ba5ead10569869b6bac08fc13d89d5600d50522255970dae8f060302047c435bb500673065023036e415544d1bdac10e9ae109b7f5c91fd74cf43d3c4477a9c621591f3eb0b78a32412ce0113c641697b50c6341ba82d7023100d05a0956c91308d77b7ebcfd3753cd1a99260d3094d51d5be5242559619b5650e85290358969529a549bc02f33a7cae80302047c435bb500663064023020ed0fbbe54a14cda9895f08c36a8b117ff7521b96087c461546484bfb6622d1ffd7e241d19c61e8dc9c688d5fe42f12023061716bad88dac61979f2029e0966a857b93b5c58641787f1b8a6c07434b8d916015823c0256f7a6567e7d71304c3dc080302047c435bb500673065023100c90f74a8fb11da231407bcfa7179e65038ea4ca7da792b7a2869869946d8c05f76c64dfb5a75661dfc3af41fa7e391dc02307116f274d1aa2957f0978a22becde511a1e2516d082fd1b216fee647d5d7fbd4c9774d6cfb8ff341d30b6dccb37bf8e50302047c435bb500683066023100c829ec864bb11d3eafb28f7b4e3ffd509f42864041895fc8696d1572dde60721e85e752d42872767827588101ab27c62023100b001bf2baf29132a0ac769f4f46ea3b5fd175208bd9e8ad41b336886c82a915877c00a595e34bc284a318c9b11eef20d0302047c435bb500663064023016fd9fde2dbc43b0d280a1327fa3835964254ca440a6e65e7debd54e842c0344e576e8d21da4025cccff3cb9550edfd40230014cf223d6172d26062033b6237599fb347aea39c8e3af5156d09c891e051e33335a0d35794844be2ccba5f1dca939910302047c435bb500673065023035790869e2eb759e70731b6782d65d53e634f70fa88693c6eb4cdfe52fc696f231ea6536a57d1979b6af22ec6935a29d023100b58ada61ebb715d0bbc4378b2890bf25a76899db0a88820dfae978a885bc789925dcd323ee9d412929170a51dc23c68e0302047c435bb500663064023047bcbf1c12a4ffbff8b11b56aa14f2d8641093888c0607d3dac2dbfec7a6c5036d4926844992c91e363dd462ff1e4c7c0230768065b32cbb2a02f394d545a150a0a22143cf30dff02f45f208076a16f32d2747c00c7d746b5a6ca81bb9872bc5f9170302047c435bb5006830660231008d81a7564064d4499565c71f9c848072c00805551acd8a455e79ff5d0df5d3ba946aff49db15e81d719b74f1ffddc9b402310097825a30df3f7b943ad41780009fcbfe4e940753f7314fc3750b4c0a20d8acdc03571913b9a4bec80f84eabbaf6bc4930302047c435bb500673065023100c4ebe4c6494a3654a945d40fe37d10e1abe0ff8a6d240bae57feee1779e1675eb56ff9b7a2b05a69f105aa2f1253559502307bf5ed0db555406b4f4761e29826a97bdfeeeeaed378e7421b33b58061a615187fc05931fb20434f96aba8968a6174b50302047c435bb5006730650230603e04ee0f71e89677aae5aa750eed9862e43b88ebb0bb5dca3f724ac9d0d9da1b77e0023d8d5bb60d158adec3bd21d6023100ccd6f0c8a53848bf4feaa69a6a18381fe00b2332001a6be09f0f0e887edb35884214dfa22851ad55fea8e870b5e6c9c20302047c435bb500673065023030f78df365e21951d2e8d714d66321f43809621bd695f7261bc5eeb258cbf38126228f12cc90822f85c1f213c914f75c023100c8cd57ac794ed3b70b99ba0d39371c3d8c71e97582fc09dcdb4868fc123f5f16fd40df6ef4d8bf9cd72aad4854386c320302047c435bb50068306602310084f7703ee10d797fdade7cf8723b3f67334407943a927c6e78f36419a4e783d03e9bf4bd88bbea04f862eb4a272bd750023100c65e628b0adce3f3951f70c502f36569dc7bcd8f415b59328b76ef9a64ed040bb9647b09498495309c22d7ee300dc0620302047c435bb500673065023100a0f8010c75ce6529d0cdda73dd8f74fdc65f049f4cfc2841611e4159c3b6b07d03af5e36a0454aa0f08d71a7e2a5f21302307db48fbdadb6a680096fc3e5e384048f7a9cd754f895f82457d129919c17036b185ba101a3e0825741b46117a6addff80302047c435bb500683066023100d79f465515865e4c12ce43a7f2828e71a78aa0d70410b4ab79fa28d9622ed798ccb940a86344581ea893a1f1b8a536de02310099cd310d83d913d8ac19334a093d76015c501e73bb94606d38aae7213b30358a83ef515870a12a4f12979da7325803a20302047c435bb50066306402303def7bf6bce190c454ed721ce09a1b8de464c1e9fab44c244c18c41a55a86735c6453ec7262e3a883823a5309c93c6bb02301d032c6d716d424dec52100e33a69ccb366a70ca535138e74c2d4cae3cad9a4984aabaafa8034a67eb11351c7a56e05a0302047c435bb500673065023100bebf53798b0849108d06c3f61f207b40a1e1790d81fa75da85391a4d3a97d69eee71914057d5a8db1458ac846db9679202304ad31f2dcbe30f876d0080409bb78f1fab6748ae65be98d5bfb15c0cb4df025998862de19c6188201cb4b7011ea17a9b0302047c435bb5006630640230329001b88bf624fc63946699cf6700b97d14334252739407e84ee6c0ae365731cba85d15815ea6e396b3f1df9d5e3ff00230586ae6e77f4e6fea51dc8829e17a709f5226862eec700da6cbf526e91fcd9f26d2b94bb45a00d7faae9588f1410ad6750302047c435bb50066306402304f2685d32662d4a782318693204c64560fb5095e5bed53bcfd59795bef65a15ad84c74815c966eca02927dd2ce03260302306b12db7208946fa85f956cbf6b983325ee84ad63a82567f5833c53f962235536b590a1f8b259269d9de8d41a19083dca0302047c435bb50068306602310091cbbc16cb7427691b1decd7d1ae301fdb80a7644294ca21c028554abfdc0da95d705c886413bae810a5e66477dd048f023100be865c530e6d765aa8b0a4140584aaa1acaab7bc1af9d8ba2dedc34985d8b294431b6c22334d0f0b6daaedf190d2cf6b0302047c435bb500663064023049efaca349cee98789a54ec89c755795f43b76fdc7fc9d2f93867aac5587f2491255c0996e978e46228304ec2b67c4fb023036b40552fe3b3969d1f39ec36db52cc2b07cbfdc2a8441c618ff5cf9054716f82c01116d34c18f914b63bd784d4407c80302047c435bb500673065023027eb219d28ba25bc842bb24dc4588dbc5dbde642f2dd2ed4fa8bd3bb23f794b0c3c896a51d2c126011f462ec1f1f0949023100ea64bc1637726a3428cd8e2d60aa197382b6b9b6e1e25a3ea7be7bc57f260f7745c42f4c29dd09864f4ec25480829d440302047c435bb5006730650230142876cc5684221bb7e0801aa752d898e11935e20bc34cfbf5bfb427c1ee9c857e60362fa9f5f4526109b3857f9ccf7e0231009767e90d475ca471fba276f651aea5f3886b50c4000cd2e5ce4429605538c21955713d08bf1585a9a350a9f5f530e1730302047c435bb500683066023100b785c4d7d62a550adf0121da66986795ca75fc26d076422d3b5dce6b1af2d35a09be06935b2a22cde6ffa387b332363c023100d185dcf7a502b624b19cbe0c0d852a3e3cb91c6d1190d69fb4de61f6b9481d79fa906fbd8b571e1583867bcc33278f310302047c435bb500673065023100b15c43c99e078c7cabeca3a263c808e54daf9132e72b441c1f9b21232f0195a130d7d3a824b1448abc4c9e48a613122302301c284067cdf9feebc07381867c9a56f299c3dee9c1629e216595447334bc94cd84edd3a8a1d3aa3bcf2374e60d387ef00302047c435bb50066306402300eb3a3acab3e1a4108757af2706b546d764d81356d0f814d853c70767fc610061e4fcd8690ef5c4980ed0b73db0cf95e0230708669112ea5237276851d08b072332fa24a579d7715330a5cfbf6393c191d81b714556103267bdb9a71d224aca90bed0302047c435bb50066306402307195e6ea9da046ccec16fe0fd2911e7001c2b6dd188f6dc74d5f32c2e16c404b6d6fb9e1b5ca80d3364c4a3f2b6ecbbd0230721d646f2bb624dcf1d7998250f1b048b406f8d8e5132f607487d73105b8ad58864afff244b88fc6e3d2691e4a211ea60302047c435bb500663064023000d655bb195aefec982f6981a8e4a473e702b7c72eccb72c602cc7d1a4b4bb784a87153ac9eff7a4a645e40326576c81023029edd24a11a81c8a36106bcb470429b74667995bcac55e8bf7c8388b44383a5860abb093974cbea3e9c5264d8cf8d2730302047c435bb500673065023100bdf8b01ea57ab69b5653c7889eb97b2b1c1ae01d0137534a67be445588b43cd6a26bd52c3898ded4803e500b1fedfa6c02304590ab59c6cd1bfc24220823a09e5a8d63a69177e9f9ce2e34753dfeae4d80f2a5857b2ab7de79681c62d68a743d5c9c0302047c435bb50066306402301d126d43fdd576b39dadd80e7c51bfaf9341fa7b698509979fd23e4ee0ecdd398a3fcfe1b0e78a77094e6622cf657d2f0230457ecb4cd784fd635cfcbef8377e29f89e60560c9c24e94c40c6b482146ae13c2980e35a9675f39ca60c9c3571c53a370302047c435bb5006730650230756473e3d755f31aff106a30fa95e724ecf7eebe1d6f449696fb91dd84ae3d19cebf37becaf34eac9e2d3bc216975cd6023100916e1ea38cd7d3b5127c72606757ddd92efd0bd2ecf179cced00fe7a624fe7267e344c706051f0166928e5375aadc09b0302047c435bb500683066023100957af8308a3c649ceb6cf140bd0a9ef62af8acb2eef3add9baf4b45e7fef020d46c1686837aa806de3cef575f37327b20231008e5cf56ef01e46493284ac4ac0a89700e14843e70f77b2feac1721f719e33b45375e990bb6cc26c55c7098dfc4e108220302047c435bb500673065023039ac0f11ce6fc35fd0eaf759c284e361388f03464dd56a7cc28203132538545dc7fd885bd6f5cb069bc40867e911d38d023100fc695177e08fd2c13a8a77f447502f63d7cdfa4700638714c70b937c292fbe79c18843db8fa222be088fd329bd5343850302047c435bb500673065023019568e1aca2c655df7d961901801139113fbdd64e4276c5c2b641eb14070317d336d63208dc1362df253cf22734d0095023100932d0c4256b97bfb3773f7f9a6e048b94711333f7ff0e39cb00cd7055232c94e9c203e3e13fb8d1dabc46998ebf8f4870302047c435bb500673065023100ba34ea3b46e0c24954989b1f7e1cd6f1538376dfca964f08f4218da3498484db578ab59a5a98d9fd1ca731461d61b46402302e2a7cf7e25b88818a0a5ba08570b685f6243b8b74ec55fc9fdcf1933fbae5804f3f6e291d3d8831b35284e5f938ea840302047c435bb50067306502301fa612f2777a4d9e58a7d9bef6cade8385933156324b0910fbfcd02cad62ebfc001be6550a6631a0fda417a9757b628d023100c4c7da4d1ee1d6f2e4e6b6755eff4c59687e60fe7c6f526f37073399e5bcd121521fd7b6d5e6e9d7e5cc969b244454e70302047c435bb500683066023100e7b2178714d66c34c895788c35be60d4d190fb679afefd39e11116661b1b067bd0b42ae0055779570316bd3c9b931bfe023100c353d4eec2165fa8ba8450e644baf425b0de1675591f19a6e0cc8c0f393baf13134eb18c582d63493cd04e0a0fa591540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a7f13fe8d25518c56538128cb0c5fb0a10d24a5d033a07f3339c1ae5600291703d192637a3b3a5c012a51c01f73862102300901cc86f27d6a9f8f49af6d35ef8fdfb5b3bb912f9c8b1575cd732e38b23c6f05be7e611b0395224264ca66532f18f30302047c435bb500673065023100d9af1706d25926584ff675f52fd239342a870b391c89a7810c8bb31be43c9eae197ff91d0f9c4b6c0cc29293cd2310d802306ca67cb04c4e7aa91fa883171954d3a47af6a48d49584e6c0122056995b350e85c089e7bd0710f11989e4fa33560e7700302047c435bb500663064023068f9f1fee3ae91a3b332dd49bd7f345bfe4c86eec7c45476da5057fa0802a872da82dade684479fe1d0e293aa39a1c6602306e678b8279c6e46da4d81e65a79be5fb6589ac0bad9bc41604330f6fe63486ed07370e1a000e91afd0080b0ffaf9a12a0302047c435bb500663064023030ceec75c7f585ff80e993e88e237b830429c1162268f0d7eb8eeecc1b8eb69d93442e99d46c71dcc213f817319557c002302f2fd697edbacab99c9b11f1404fcd9d4aad916d3b4c3aa350a234703edd6b0ce19ab79e9ff90bda9673f1f1ddab83880302047c435bb500683066023100e81cc7758ef6a5e9794aa50d78481eb945374c51bef34cbd8eaba6c8d9dfbb6a5f7abf1c93f436def72aeda3a5030f5302310092f663d9bdc84a649edcae997f42bd9378c763018c3304d1b273a03da258fab1022f1ef58d3702e002a6910d82c856ea0302047c435bb500673065023079b53e8a50adb9bf3dc6b9b9109b92a5f4319bd08658485b329f8036c885e29126c55848b4357ea827c9870830e930cb0231008639e33181c3b2f2bedfcee0b333d0310079289079d96704cfa72f5a9dc23db5c5e36d9e1e0801b20be46afeb38a23320302047c435bb50067306502307768fd79fa976dc56ed48c2fbd9c4fa1a2ce89131af33ab35f0086769745034811a7d0e776ae89977dbba7470b4a37f5023100def296fb3f21980a45005b3db3f993260b66c487aa70279b11b903fe8c53066e0d6c55f5ef52cfa4dedbf69e6ffd3e1f0302047c435bb50066306402307a34875ca53ca3aec39766390da8a2337a88fb5fa00f8fb64b1bbb465f0f0e78d035fd6cc9809b405b090f1179148ecd0230515f2b41fb0601e312351d9117aab8217c20ddb5bef2daaf558d37b7689fc7f995d4deb588e9d6bf731d23a4e88e41a50302047c435bb500683066023100baac3ccc6177f2ea315a5a6051aeba2697c9455f1299db38c783768a3e5fde83ecb839e3c35b64d4d8d585464dc2db3a023100a1d402fd57495121a8cde7d36d00fb5e8ed4050111422e860322974a5a3d237a5b8db759efc51a0dfd7f4c5c05b404600302047c435bb50066306402301374fd58926c4fa3f20c5335fad245f2ebb0d6d8c3695eeb0689d114b595a5275475adad607786a844796169b574ffa602305bcaba3a4d5c9d92654e5d3b51b6d990fe006edb9d45afb5b62c77021efc0ff6bcd19f06660e6e28423616f672d4c27c0302047c435bb500663064023067da900cb66ea4580613ccb78766b929edf419f95afd66543e6b2f97fb6e2bba513504a2caeb55f7070b6766bb5f979b0230096d574a2f5ba37ef0ce9efb098741ff3724805ddd575821f89e84520be5e8fd6ee65307ab59f0e3b56de108a18ffa280302047c435bb500683066023100c86c219536bd9c79e06cb98f1b07249dd1d7fbde65aeef426568788f923b5e5ddcbc35b07bb2a482f2192face13a3d05023100e7c33f4f6d168f6678b15c764cd3678b3adae8fb366622960099831f83300d08dae30a400482ca35b7f0e3e05ce3076b0302047c435bb500673065023100d9a2ebb0618996065ebc85cfbaf1295c68c6bf49aca931aa32dc72069d5a7254cb8e407f6198a33a5667f1b3d5751f3c0230784bbddbd0614f159541bdf50f9ebb5c67a5a97c53caca5d75b9e771839990f3c29c3c5e2fd89788aafca41c530c12430302047c435bb50066306402307aa83921539cf12cb0bcec9c03198ed84ca26dac026e552ddfb60e14751ed908cfdb2e9bb2bdaeb831fd6b21369844bb0230548cb58cb2e37dda82738812f8bdba3fad184f75b28967ccc6cbb6e0f59aa2aba25b7695dd95cbdfdf8b8f76835cc8ea0302047c435bb500663064023034fd743a129d6b52de1ac8b7e4103e2be8ac11d683fc0a588386b899641b77e6f9d8096ecd29624ad29f612daea1a2f90230144208fb1c277f724d2c248ff0bfb5922d0eb2cc6be6579127ccc25f74d21108c6f092dcce60eb5a764e2d5fe483fbb10302047c435bb500683066023100e49254ddfaa4c1ff3b7d4ec864f54dbc5c1def635985820d86d6b237e2d911443aa37ddbe0a7e6d2c47336c0e268f783023100c40003f4de2bb4afc681647e2a054bd9522028dae23aa61ad6739292533da44455f5d79737bff6e776101290ae1af0680302047c435bb5006730650230494327540ae7d0ac5298b40747f4ae9dd50ce58f8f7aa66109076fe30c02a6a3c81149c8011907f133208b00304ecfdf023100e8c26f38ffc193a5648ca5f23ca170eecf4d6b7eb2f0d3fb7b429a6318483c797bd9782f344d8313e284b5983310b15a0302047c435bb500663064023032ebff8a1e5c75a3f6054330b4413f2d638596032e06ce2813d1f7b73b133af3a6dad3f53e82a7b24c3f762b1cef38a20230290af76d10ef5485b7b3cea3f8b14b21e528e6ccc4925d3103d6d1bf39a914e733db2ea925923a878a2b757512171ca40302047c435bb5006830660231008d849957e819945769a85b210f3fb0f6eac90051f638ca34391247f23bac2401772e7ed7c1f19828c76902115b16827c02310087b5e7e0193234ae56d219d5dadc3a9a459f610a022b6295842929e298ef600afebb9bfd44dd9ae4758af303348e5d6b0302047c435bb500683066023100aecda09279d8abb0f41a6d9a83cecd778ed3ee18287fedd206b425b2daa31b648e784aedf3df718e430da462d62e2476023100d058fd6d580954128608dac9d087fc787e58046e48a5aa29180ffc85c9fed74290b90c785a474361fa137adbbbf16e430302047c435bb5006730650230706b55eae4aebdec48be16346b7a78791a31dd2a1e459e97b167e238f740a89c0a4198af588b531cced934c1f03a4cea023100b93dd16e415cbeb952768804f1ad8875bbf9ada5e0b70d961f766a79fd9266145690430439e677ac67f7df36937921ac0302047c435bb500673065023019adadb11af8c327e83b6794067544b9564134b92aa34a243d7db2a4172663fe72fe8424e016809bdb63d3a5c9d98eba023100aea445d84d25d1528dde5e9a2c9251d77f62f2de89021fd168d8ed514bafb5ef7d637fd214ae1c1476ae47efea2a5a990302047c435bb5006730650230081786d0292dd230128cc77ee154bc6d5370a13140877e3bfef8399ad42bf8ccb3d9be08b5e0e2fdc9523207090212bd0231008406c8d0b9a3915430b768ecfa72e629c3410040a20b257927fdc7e68b14a1e535df7fe2a1bcc1bb87106001dbf5c95d0302047c435bb500663064023053f53eaab3d6f23e126d42fe8d456e0540654adc33dd64318d3a7fc3bb928730d95d7b27fb6f5493d688d936a338fb4f023011e752398889883d18f989764ba5cb385282737fa1f157e788e28adbe672c71aad32431d06208580b6cf51e7afc50c160302047c435bb500663064023038a07dd43a6f7a714e8c483c5b4b2843cd4ef1fdfacb6d956ff57c4bc7b56f90e6a676f31784bd6b81dae7344140561c023041b330443e9ae7ff273f2e3cc12ca8b4d75ee2bca39b2bb0a545a29fd848b6613050bfd5287e915c54fc16ac674154420302047c435bb500683066023100b0d6d4304fcca15ba307fb11dfaf9bdff04e32ede2743c20ae236083e34e4603a2ebecc84dcee5e994d53460981d116f023100a0818c0f2753c7ba30712665ac918be5d768b6308da38b71fb92aee28be5ddb31f020c2faafceeff5807799ca1e73df80302047c435bb500683066023100edf28de44ed7aa7dd66adb3e7b618439363736bf12b27e0d7ce7537231d680d3bb212ce568a77f1a03c6604ac9a1df38023100fcc6b0093cb4b87bf00d434da52008db4396e6299ec077f3d170d361d396f75ef75743b1d2d5e3766cabe39eff86ed960302047c435bb500683066023100ace036b0f7fca4dbdaa67762844825a3c329366a373b5e500ef79c7824a320d98cd181040c324874d79db160250108ea023100c8e5a0ed3d79354adb474c00586ff1cbe9018826bbc00bf9bddab3c22a1ad9808f63ee1c3e6dc6dd21c3d8858f4c9ef90302047c435bb500683066023100c202080206d66b9d0fafca4da868aed9ccefc6944d13c91290f2aa3de031b66ba34f3c217d58e5634658cbbd77125207023100d5594313bf05ff8b7d3079f3d55b5e40bdf9897e3a797d7aa565ab045068b4ec070658085397729a16d6465ff28a853a0302047c435bb50066306402304fe15328b2c475e742ab982804292fd750c80e69b6edf4db3582262d168bf0a79796b3a20e0e0947e9234f1559e57ef802303728ff2be0c3acff1873b2632dd61ad8743292ee3c3a029e99541838d07752285b71878e1911d5d21b3cf9e03e8d604b0302047c435bb500673065023100ce63c607003801cae81bed6e0930fa333cc0b1ce17f923e371c810cf1678fa00de61c5d1b08f5057f38d5f10c9dab695023024d46745cd6c1efe1c33c5b724097de18242bd9d7c52275d00d171f3fa63ed1adcef94351f64b1f5473dac9d663e6c5e0302047c435bb500683066023100c698838592e2ebb274e7861558f17b05dc75b0c881ddac3f1e3c10c70aaafe3a317b119b0e6ea88220e0e7cd2a865f89023100c52c59b644277e3b5b1cceef3b8152072684d50e6cad6ef460b52630aa1b0c5dbad406af65b4fa0e3bc269535e2bfab30302047c435bb500663064023062ab4ff93f6fafd246465fbc8a89127ade210be2efbf0d57ddc9fbb4bf08cdededc84d4b77b494785c11375f360d9ea102304dd2bcab1c4ef93db64587cc2a6f52084b1b73a2a28e6280fdc2da3cbbe1ddef745e4f132d7850ce3cc92e19c3e4dac00302047c435bb5006730650231008e2246b8a4aa9d051247b8fac4412673a3867a05cba354430ed947aa8ffd800331dfbbe1e12536b1e2521909e2893f970230134eff4a7a3c80460a914aced4a9809d0e4a4e267bb5ba096d2ad13501c14896ee5540abee276e637675d6cce9d9e8650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230767e8ad277a826dea324877454b5d13396cc715999b7e9cb3424b59f042409d21e1589e5c680a1bf87334a96633a852e023010e02cc196eb15fd56b6d57e6192d83d58e622cf90c5bd49b4e76a62316e8b500f564ec404d915a0426e83621e324ff30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a16a097655028047f213e3138115abcc0d8e51bc828139b9b112a42d39fa591a44c8f680302bec0872a0e7ca8772f0d2023100d784c4f365e0b1b5e4749dd6d084c5e564e8f7013a541d1ccdb57853918816713c72c1129b6d75540d4368b3c6227aec0302047c435bb500663064023078ea54d8b47f513df43c02293d03d6ee4fac053364c68444431b96886fdd29f1333eb848e69ea7445eb4bf16bf549cf702303ab063d42406652e0cd12121485854fd6b4b57b530c839b2e98a5996c26b18a7d0b6a295eea04ec49488e997083a81e50302047c435bb500673065023100c1378ded738371f74c111f23eb65f33873b3c7fe1df83408a4b28bfeae1b4fb5c7a3226e7fc85b66bc921085947a0f7102303fad4533357b4aa79cf6e139d705c7d6c5db5043eec9bc4709e7f57e161d1806cd354b33dbec93b6b93e81615856bb070302047c435bb50067306502304cb1ad4f47be245016d320f6d2e9cbd7e1d748d3988b7c940957747a0263b7f26c405b153432da88a075f5040899e514023100f2b6d36e3841930caddcf565d295fb40786d68b3d9ff17d0a886c0e70a45fd6d79eeecb038eb177fa9b568fa826f11240302047c435bb500673065023100b97c38f4086f79456ac50c937711fab164ed2b0b107eb0fd1ff443fb8504fefb46dd89d69a71921f7b9ac0ddf05dfcd202305e819eaa7e7817adff332eb4b852c9f690199b93ab4dcd16bdb88003968b43b5a3a6b50d3185be611eb7f352a4af544e0302047c435bb500663064023047e1b5aaf7e65a3004b340d4dc288f9137273f7ec7ad0de0620b622db95368b80ce0e60f2fb7a4f673646da5ce4dabc0023071c77728105fceee2d07a97a19593a7781e27b966f387647052c43eb4c064874659d43a056a3adcaee809a63a49310930302047c435bb500673065023100b10432fc416d0acdc08a6290a91b5bd5aaf0fee10889d45e0051e7f87a43ce2d549fffa561c2d1e07f1ca99583729a9902306dee554dfae1378b2919b97a2bb2d0f06e20621640bf5961c9864489b3c7888af3210a37d87b74205288bae77c874d360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b1d8c06e35f45cdd985ce3468dd3ea3519e776f7ff8b1a75629b6259fe7815f9126543dc7218acd6494345ae2b598a5902301d9a1d79b02a2c36886af41b5c3a3b75484b8471125ca13a08f479c29db66cb3ecc0d75ea2fdf8c55da717e1ea7c042c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e22b300b5a69354469682fe54f597dcabe9eefbdbdd27bd8966c58bc55aff20dd4aa08ab82cbfe9923ab88abd119f0c50231008b47fe23f338579271f01d4c24c22f91647635a68e06a9e4903a71189f5fac5611398a71c83a8564093f11fc63fafa8b0302047c435bb5006830660231009b3f1e83ab2e04819eb07cad0209e23c468f00767ba03c68ead16825788be6bb6b2bd3cf40e3c7b1d3299ffb0f9a598e023100c4eb00227e0441433cccbb7175a214c88f65fdd5720e5ef91281171285000479d6fbca948d1d7f275e816d38efaa7dca0302047c435bb5006730650230643b93f51757e605f349d5d17aa03fd2ad82e5541735868ef534eb9d4ff13ab44e51d08f919a9414ac6ff219815e9ace023100e535885f52556d02a8e6b2643e3cd08de1ba87d0eb0b6d12c0952bf25aeaa03f446e8ed7c221f748bfe27bd90f35ea060302047c435bb500673065023003d1ec7ac7fbf39e2c949b0562b165a29d578b2761e6b43af9ad1e2e95a72d802782ec3336781a98dd58f575beb1710a023100e39fe653d7f85e15e53160e7e0c939aa6feb142ef32d1467de4d91689e22764dfe58c87ab7a4e04c67ccf85c44b1e40c0302047c435bb500673065023044da3ae8fe25a58530a9e10ca54db150bde49457fef1512300a4cc3141b6f90972205717f6b5d7737d704e006c2e6cf2023100cb79288efeedeeb09eea5e7f0f9f419fb805b50322ef7633446b8d7177a01da0a576d7717ee03c80865b451118ab36ca0302047c435bb500673065023011c14b496d56201aba050a6872de99a46b9f3032a9a831882c23e84f491c53c443fc0137c7b200e12d42f46dea381787023100c6a4ff353cb8cc28642c98a0bf8812253c2f0374d7c386d623a96861665c3244be2e420103583f574b88e16b99fec5640302047c435bb50066306402303f30806274dee924d6c2205ba8851302953c678eefb77e58a7bd37a6cacd42160ae39561d96f4cf23b915898225a5ab40230456265a9120c94ca90fd37e51f458e2ea5f2da9f35b89754c3f9e865999de1c42f59a7cd203e662b68de5f5deccf33cd0302047c435bb500673065023078e844730a483b18f41bcfdfbb25cbc00960c7a3964723eb5e0fda3c7f75cdb257e1a87e82386aebd01b6e0b6ba282060231009835d94647f49679d72e7daad5c49678416e41f53efa0d9cbbbafc8b4d1c7678aebdeb4077094072d32e5d4796526b510302047c435bb500683066023100be10c724a1f9a9ada6e2566a962051237a126c3ece96a4cb5eadf71039d0c29173db6e67aa63125ca579c7237d30c1e0023100e543c087c6b6ebb401d087e3245c7b68c2e78dbf39bf57082f2f5857aeb6ed72ebc7b7087f1407fad82f19660f5aa88e0302047c435bb500673065023100a2ca78766e58d4f2bcef58c5b20a867684c938290bbfaf12d93b025f6a0abb6fbe54540d218c4b3605b43c28d44d1e50023070ca6f1783e5f0090a7ee4dd13fbd82ec4eaccd886647d07b716f805b77e995ba2eac2001d589bf2ada1e63308f64efc0302047c435bb500673065023010f143edeabf14929812eea35eaf6d9c828fd15e90aa082fcf183948d18c75ed325a0e694c2323ac9f70a85bbdc0f552023100aa5a197722f003a20dc1971963eda68e2674d032ed92ea27f4b3730e6ee0b73bbc355988b437bd1bbf49d57f183f757c0302047c435bb500683066023100adfd111bdb267b85cb7e1d37c2c397e1adc30e58fc64fbf02017fa78e5f6c04be0e6bb4f917cd43404a000305891935b023100c82f95a56bb2d6e8f1471b90ac99682f7dd1d2f411c8187c887e75492e653bbff8185d9b3337becab1c35b770d62b5860302047c435bb500673065023100bfc276038f9812466a38e92a399054e673f3e75d18689cc11c02c981ae34055b591b1c559df522f1ab14de3858c929c0023033496c8fe21f230f3077ecaacecb3878f13026cc696cece91a938348515d17e7d4ba0de14743e39bc336d36fc9359b550302047c435bb500673065023100da49f1ca5a67f2c7c3a1e3c4a1820570c558d265af7cbe04662f39c5b2ecfeb65aa1a22e62720c4bd7c39edaf2988ca502304d5c714089a282e5e583e47ceaeda7c8613ee22f75d28bb9440488e1f13220c8aa31bf8bd19fd6a75b0bae8f995fdbe50302047c435bb50067306502305252cdf4d795026eda8dbac1cdce28fe2d556fa4a2bce9d19e8d326b212274c3ae6736b228397c58cff65d4b82d9542a0231008ccea007f039595f7bc3afcfcb99bc00e46041b276c0687ee4bfbb62d68568111f2b9d46d7d950408bd4c57a9777302a0302047c435bb5006630640230527b7c8f2faf1dda8211ca39a05446568eb571354046ace9c097c647aa983fdb59dd7a987016a2f4b2229f92caa33fb702303d9e355ad2371a3637e79658a2328b1a39f3bec316366be9ada8743aa9faf0f31e46bdc136eca38aa6c8f69c9b3b5a430302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230782c5a0532cc30ce8be8c4ae8a46fc92db232fad85341f239a5cb5d03debe56d5adbc76ebf1c08fd45d2f046bd878c7a02304ed32f28c2f77fa13dd78bcef0ae9f63824f1aaf0c47b85fd1182dc2e107ec38e6b629241dde0be5a9957459a3f251a50302047c435bb500673065023100d655054d2879f2b4ec1f2f7732d92972a0c3f30a1b49616959a2a2ece8de40b2bf387e8648676533a7b3db5de81724a4023066c9aa5d066191476c684e69efff5c62edcf90c4b6e8b21fc8b3bfeeb58f165db5382dc2f354b62af5b954529b3644990302047c435bb500673065023100ab04f82bae05020da9231fa4a728066db35c37a704d6b103c52d0df52e17df9e388a8ea62bb9966e20603df8689b4955023066cdf8ab8bffafbcaf5477b0aecf0b7a97a5acbab50390d52fe29f896579a7cc505e6f080ac3947b203fa48c40ff5ada0302047c435bb500683066023100e7c8b6cbf63e987d87e77d7930ebbcaadf79b4d1f6c08f434526e0391aa2284cb9754112ac931f60a40bee0b016b7047023100e95f06d767efd6d6c4e59d69b47b1dec4dd0dee1bcbce62875fe4849bdcb05eb63fb4022870e668f4a1924d2e3a1d9b10302047c435bb5006730650230378aee4fdee2963d5ee3226d3c16a2e498071d022c03c2b6e6d3f37db3c5b5c1052921407a652ce15f33f0ac5296409a02310086aa17d959d6632ea72ab94aaa07fb2c6d577169a2c6b5f14ea0110bb4ba854fddc390b3a30cdf31279525038fd2641c0302047c435bb5006830660231008025c30ee8ae011c3baac456e3ad2dd3b5be0b38a01b38d006f2271ca72ba4aa4dd55f1ac8d9a889f46be6771c9ea7e80231008fd3c21949089e4da4118e55276b064761e2044828db91c0bce95e71c3a7b92a0eb637b1a1d874d73f75f329b1bd68be0302047c435bb5006730650230143829c1390eb8d120e40726ed257dc3403107a9c26768435e9054762e13b05802d42a7c536f653000e9851ae70e5cb8023100a63f47ccbe2d2c9922477690165f2f50ad460492ca4aa23bb6ff2bc98d76ef940e7161b82106549135ace33d2f89b3350302047c435bb50066306402302cb3b2951ce69454e5a7d3e90a426b7c8f9bcb55e3808cee7d889c500c03e0c0949adc81e145edbb6eaa71eca6546324023037e9dbbd90f7190ce667d793d331fdee3163d903f4eeb15e77668e24e184ebd47e82647d2f71cd1e94754c82b8fe58ed0302047c435bb5006730650231008ca40e9e28c5696d6dd74d37c841d832e6ec468ce452ada6be25d85b6bca63f50b1049967629a4bdf5369ae826851b1b023056697737ef9db21061b8da9712055cea9dfb25a493e8a2c7fe0ee85b331ce142b169d281a534acb96bef31613d20d1de0302047c435bb500673065023100b05665e395105ac04039bb6c293c18c9a313ff10efcc9dd995e088bf723b4f90ff61778d98369aa46791c41726dee1200230532f4febb909f727b12b67617e5e3924d757779ae42728481a0426165c68b6eb41a430bf73b1dbbb131b672e34fe30230302047c435bb500673065023100b28534ecd4a39a4a1c90e16ba5223cc172a0799ee6f01a73cbf54a27354db5eb055be4c04ee497f85751a5a4967162a302303887ba70fe8e591a0b55fac630dc377a479a254753c78edfb6c42d6d670062a1b8b8fdad9594351014a48eac72ee25ee0302047c435bb500673065023100e47b62cc4d6cb727c188e065e41fa63767f01e267336eb5c190bb7b333bd22ef06e05ee3b7071b94f8aa1b57bd2c940002301d92645417a60bf394d5c1389e6f27db778203d4c8848c07148cde1cc0269a612b83fcd95ab238d7b95092c505928bfd0302047c435bb500683066023100e1a9f0c8ba524d7c193b68d200e11f004804db25b551a4e525feb008e7be7c6896df8278e4e6044e9918fcacf080a92a023100bc1b70a9ad8b88e838745e8f52ba88f8f583c3b63bfe442c0b5bc9745218fa25fd40958336e01b4816402c6fe42ee3a60302047c435bb500673065023057b066cf1a6db1ddbdf9262e7994d87f2dd4aee9b71c5ba323ce495a127ecbdd0b953e26a7f59cd5426fd6da7af054f7023100d2193d20c057bf12b913b2c2c45fefdd0136cd1a6f16dc44b2665de877366ed7a7e95ef10f3bd17cf5dc5b8b078b1bab0302047c435bb50067306502310080b318f2bd967fdf0fde78d070428a83e58cb82ade8a0b8ad27017cfe36a31fa9ec85f97be0cba39e98dc0a2e079cafc023077daa46c299c3457378194ad9f8f792d2eaa411aaf351d32da2cde138f42d88ef9c9a77673219adc5eaafc7aa309f62a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a11a9599e728a4b1ce6647e38929ab4c34ffb78a4cf2b9e237383c251469f821aac883b88ec00e5538660e06653ab0f02310095e56cddf21c6d93789e723ff0402505baa94bfb03025c904fe7e34799f27c023e27dfbd52b275225cd6756bc6c9f8710302047c435bb50067306502306709ab804254edc21bf4f0386753b8b8b79abb573adc3774ab362d002b57261b9ab8bb3107d18d2dafc0174624b38eee0231008003f4ec6da2443f845f08195ec3333ab92dd354a1b676b4bbd8bbf20ed0840cfdff8143878dcabe9c3d819b4792029f0302047c435bb500683066023100e7c43a2bc1f216d8e1b93cbbae747f260f60e370e14bf24560fa2412c32fa7cc96c4849a80c94c314c47ed5f1d279d04023100c365495b98e2a98a828769ba840b0b64ee31c352ef4bf3b2c91cd34958ec710956a5e075111b16fd9b71d21199d16fdd0302047c435bb500683066023100b2b21c37cd05eb07126ee3234e04622f4855362bc0e54df84801799b5e929da45684d765bd7a1f59ff1c41f00e5794a8023100d4353f9ecc3035d97c22f60c0fb7d4c02ed718d4258079caeb77224b61f8299592499b5e4dbb0d021dbfec665ef448f30302047c435bb5006730650230522ccbd66ec16feb97bfce4ccedaf0bc63dac2b3b3daf5176b0bfa824bb524fa09ce72cd4af28267986eea7e902b606e023100d3b9a4f32828cd92f42a9db014b8260899b4e84310ee990f1c63c36af7e706ce06a960f90931f19db354f5de6f442fea0302047c435bb500683066023100cede31b8e8e264e84c409f24e6e9f4d99e52d9d00618f86f3577c02e94c965d21e6a45f6f74e30baf252772682be9933023100dd7c6c6c70b77078b1bedc627642d9320f6689008e998f949794ee129daf2f19158e72045c9c460b4027399430e0bda20302047c435bb500673065023072e4f237ad6a0d9a9c608784ed3f79745dba2fe0720a3b86d01c646e961761673e39f3af8479e115cac8b1ecc9118db3023100fba75ee7d506f335ac6a59b07c75f421c04a305440acea216ee80d82c35044606b8adfeb5af358b68a977fb87e6b04df0302047c435bb500683066023100a80652462119aff84b5e72ed55a99ca8b333cfa8619d47148ea3c769ccf150f0b6be576b616a6c15e71053710e6156d7023100e9ecffb9465d453af28bdac821a85e79130a17e8b71d996dbd216a7cc9ea23dab3c65f8b0b23f141a32cad88a17570910302047c435bb500663064023003c9de6226e148001eab80fc809f9a68400543e6c8642225f9286f806f58634c95ccf7f58de02acd7201b927a5c6d9f202304714bfab74c79ec43f49f89ec8200577c72bed232e0504b58ae28787a72b233c972d452a6cc9d7337a8142fa61482a5b0302047c435bb50066306402307deb6d61a45f3a46af2e2ed1ff022a3af05546f1f614cdcfab979fff3e0b0c37c307c3f3c4928ea7e2904384da75139f023040309ec5b79218c75a04c0398586cb84642e258b22af97d79d30dca501810a02cb4ad52c59abf6becd3a3ad3a60a33870302047c435bb500683066023100e8b6650b18f8f515381dd4773c05452c4e59994057badfcd17473ee7d37d56485d199d7510e82fb6b47fae81f656314d02310098f8638129e3b44aed88acb530b41c3d9e155ec76ab44c5841266842207162d37614e9516a06f80701c0c286856523620302047c435bb500673065023100d37edea2e8cca242c4af6c0ac5965d52344064e23376b70f280e2cb9864a6d9ba76ef001549b279e054a6d1fb93ac9720230680b6890c6c9dd3d3115fd960dba78fc352b8c15e8748826dc04be5f884e17dfd1216388b98e3dd3291b6e81e21ee37f0302047c435bb5006630640230219838e9de70715393b2e96bfcdf32124660c08a9ee37f953cd384a8749a17dc244ab0819f06bcba6fe29ecade8ce6df023056ff49e71af6a1d15c76410c08b7352bfb55f6ca4398dd00f6dd51e1273a3c86023d1b7d99ccc47e6b2e11fac043ac150302047c435bb5006630640230101076d771e8cde1c1c4d288e584b892f3065a57663045e20aee337c5c59523f47a12ad0cabe777ef11b94fc32a11a5f0230703f869003a4957e3e198437b7c086bcd1c2eab9832757e3a730eed184311ff62d42d1f348bcc3769ccc3fe844d4954e0302047c435bb50067306502300ed044bc27a24a9570e243b1fee2af1544c89d2964d9e9b21e66dd096a694f18ee3b0d6274a116183378df05b54b5ec4023100a017935a741c01a11f3a034e5b3b72c8cdffd60221eaac81e6cc26d66ae5a35c8833ddbd8fd449d0ffbbf2998c9c092f0302047c435bb50067306502302f8eb6a9d6bb45e6acd393c786cdf18db4b59bb49370d246cdb4a41fb285adfcd4cbb4fb9140ba76aee8be879f8329880231008cffe4cc8d368c90a91301893e89dbc2e09d6b2e417f70d08ea02068b5b5f242a32f8040e3b0eba62483ea3921a65c8d0302047c435bb500673065023100bea3258b167f32c281de7b1060ee1037210b8d3d8d2b7dba710883db81c2c1ecc58d617f7f3fa6f1d4dc1012d4d139c202301e51c7f3a52723c6952f90a41c185b549f0f857bbad63ab9957c23a6765826b96d42c41b1a3c669bcf1db2f54911bbe70302047c435bb50066306402306e216043530c03e488cd617bce4182c05d57dc9f2c5d5d4fe590854f9604860c7df5f7243e5bb7d9fdd74760f4d9dba802304b84d2a33e4b21339174b1aae1595c32034133cc746e75e09101d582d1d8f3cd9ca82d159d4a218a74c5077fbbea73820302047c435bb500673065023100ba931b830a012d09bd3b582a836948f442407cfbdce6af3b5c27eb79ef98a7963cd228f501fbe338d0f7434f7e296ec602305a8640565b829dbeb796bf371cebf008c7379dae6aae18c828e349f46d278fcd50e70fe0eb30f334aa746b21628ccb300302047c435bb500683066023100aad56dbd498a37e465a964b7763b4efa3637812f7bd8507f9c95a372ecd68c6a62bc3955efd2048e7624640f1f13ef980231008d41e35b661ceb329f579c3caa1af220ca8646ff8c1bb655ed7c46405671001996b201fb38903a5c7823d49c553038a70302047c435bb500673065023100e8f53b0eb4a06c8a13df787e1a8f6d5e6fa58cb3a2674ac91ca7bbcc7b5b4191f1d797110b0c8bb9570313765435c5e9023071870c8b0c84c60c21b2e1f89530f2c96f52cc7a70913cbcda423a054bd4b3f44aafe9ac8e79097505e7649ad8680cc60302047c435bb500683066023100f3a2437ba6101e89f768d593d3859f7c0b676004317abb858723c681ff30af75f4a02c20e58576bc51cd63f6d838fa0f023100cd91c31b6a434b831aa57b64e6285b0a8023f0956a1858ce531f7e660947873f448454f8b116d7715a51225f6c57daeb0302047c435bb50066306402303fe2f9e167a0c9c86ea30de91b0e7d3feb55e6d25c84b1d5ff881a5797e22203dcd3cadb40d493c16ffcfa40ed5f73940230048d6cc9ad5ec44bfc7203a0c6acbebb764e34c94f7f0225c9f7f0ea36fe9d59c2a995485ea93968d4079f58892ac0040302047c435bb500673065023100ee06004f3d8ce56265af68a38ef7e4e6d78412758e16d7641ab4bd513197a8b1ce8cd43fc4fb620a543abce93fee3c3402304f460a764fbb298737a4532d61e1716df23286f9a6cf9b5fd202d9b303c797be2e26939e6649105eb3b6a2b2314028190302047c435bb500663064023032e3e520cad34029fbecadaf59f3574b5d651dc788fca5aa90caca3f35adbe985af244aab26dfb7bb54a53e674eff9fd0230709e4d4601628386e61bbe8415eeb8cc1a8c5bc39163c7e988ac4a269d2e978b97b291a46990fbfc06ad56d165d986370302047c435bb500673065023023634b582592916ccd6a153612088a4bd2a2977b0d8065a771c98c50ba4b62802041c547a366fafebf01c5723257ee4902310098c45c14e0f37e54b9dec37d93c2fbebe30b28bbb1f3af6dc881474c5bcb6d3fdbbd8b3e82846aa31c50874a963e2a820302047c435bb500673065023100b67b77c288a64be1a7b259595c615be9ceeb40824f9934b802e6b38c69dfcd91452ee20bf37ab4e16152c23b4e9e4607023011bc2db53cfb36d5194a59afd1865356855057061ace732506848e1a46c9fc639e49c3aaf282ab5b7468d192035c57860302047c435bb5006830660231009f4e7b4f214eaac4648e1c66a8cacb8b8b9cfaf306744c1c27396be7fef81e84687770a79019c61802bf6315ba42e77402310096555bc9719c1f7248f669db52fb2ff504709d9cedbf88af1a5c7eab2a0c22cc9ea59917a50090e2e25c7d750dcdbf510302047c435bb500673065023100fa22068beaa023382c4c55cc7e0318c75e0c95965e5baca1d5467c8345b541860547e57f8e42cb223b74f7c75a1e30e7023058b6efb6dbc0d4eb8349c441f662e44f4865e0f0aa7f29ca72592588b27f2c2b316c72816516214ef6301c6604fc4dfb0302047c435bb5006730650231009fd784efd2c6ac24bf806fe79f2e8ad43bb17e380941cfb3bd7dc76dbeacb0ca988acde59f22f63355a08308384609d802302ad28525d8ee137df14fc820e0fac6cf5fdce64a0df6797b862cd5d4dca3ce85835e8be26cbe7edb8ff975ceaf9f88210302047c435bb50066306402303fc7b7b37d9f6205e898460ca547b3eb671fd8736c83847eca6118b2a754b1f9cb3e06f2d2801e84e1c61d9574f56582023001621335b739df95d8b3732f2579f6287895ae6972ea5f4a216e573a9fa5bd1e7547036ffb7ec6429504387fa61bebdf0302047c435bb50067306502306cf86b1a637bcd08f60b715e73d78770c420c7538438b7a9a813b3c2a559efdf59960ceaec07d84ef089f96ef1b9b79a023100f137b5517d49cdd0113e307a7d3fc4155b8cb206436a52f7158ceeef44b9cdd06af5d1979c5a425705026f3a058628c90302047c435bb500673065023010587353bc5abcd6150d38953dc47e0e5b2cee9a6bb29a98579baa352dc97181f0ca309c1269ae9662c1e4ad861591c1023100a97cb5dc78fab883d5f30c83705aaa97b2bb4c39f2eecee57f35ef9a189ba38fcf458e9b538ba2176b07c92a0c4d83220302047c435bb500673065023100ead1cc3c16eb6c386f030390ee37eeedd3dcd8f18b70366e2462301804d9ea71bd1cf5f198630b6c6515646748fb7c7e023070e44723212fc34f4e7615323f2e94819243d422fa6533eddbbdef2b4be2eea77a7950ab15f9dfd29bc5732751ba9a810302047c435bb5006630640230412ee72f88c1e6900d91a0023a1fa43da01383cc11226fd5b840cbd27eda53829ea67a350be636ee518071498e83cd2c02301b028fedfb3a923d3f53de450a5deb9c9e854a2824983e26e2df0c831826c2b4d102ebc8b3aa442bf404c607dfe241920302047c435bb500683066023100a9d485c74cbdd5fdb91fe60a6ebdb2a9842ca0eb623654fb7de5310bad1b4d4081ee1197933d151c5fc4a0ec30567deb023100826ff962373fae34937fc1d67aae3c30dc3d1fb23d36ca74287e6f8e17dd321b94970e182b7eb92b9319aa3830011fa30302047c435bb500683066023100f61111afa1b404481f7d9ac6516c41bf4121c858484083a3e87582a9a5524adbee3ca59e07ae08d7656ef0fc11970ca3023100e8c704cb477885fc09f3afe15212c4413bbfc3c20e74c1da703e07fd6ff7c53ce9305660c19639709313fb656b5e6f960302047c435bb50068306602310088043a149708d24211fae03b4c329ece0d7d2a1f89d730cdd35b79d6be1516f8c1609594f05f6e9174f4d3a522f5e602023100802a12ea4168efc6264f7327951e37b2214260e814ed6df4f180aee67bedbdfe8adf308b733baf9cdd6d1664f89232cf0302047c435bb500673065023100aecd1426eb1aa0b2d8fa3d978ff3130a2df356ac6f25e3dd2d82b032ea2bf8f188a9a23683b8e9c0d06804200e128e0a02303a64157647953a084dc80f62f6ef62f9eb06dfe4c5b0c63bd7d4a11e8f7bec33e3b4a026937648138cd6e77e7e56db9f0302047c435bb500673065023100cad157fe786b00136a60442d46b669b655865209c7aa040c4f347f448a38fc766a80d02c60b374556a905ce97d1049ef02306edf5479b43f8cbb114c3b65b48b32b9f092e5d34e281f4ba61f3426acc00ff39b1e335d35876b8c810ca288035af1660302047c435bb50067306502305db4512a0d602bf87982715c73bf76373e79c061ff0f68569dae8084f1a94b2200f08ea04a296b73ab2b64808b1f11a3023100a545218e34c21af70cc3c72aab18f8e7b5f07047de46385e907d929d70245cdc6cbffc022ee8d250b9a7753ea5caf12c0302047c435bb50067306502310090f28ceeaf02de655bfe0579090fbcd574017fe8ea676382152998464a23d0d3d5d36786f071af6888a2323fd77ca769023061df6b06b5a91ad687a338c53b0656200748ba09d9a5242ff54a188fb15635dfd27654064821f3e9ada3fe4abbe47daf0302047c435bb500683066023100df3da5a06973b796270901546de7894079b379ab570934277d3f327ca76e8bacf32aefcaf40af1912f4dd6f34ffcf4420231008c2af7b80ac98a1ecb9b5110a45afe4b2cb1a2fd6132a8369d4f60308a0402915c74450b726b57b660d8a598340de14d0302047c435bb50066306402301d29593585b53593012558781ef45d1c28028ab79d2e61d61079f908079b3f415634b096f918abf960da52aeeb91b559023042fbbf122b3c2863fd312d392827048984ddb08c0af41bb46a08ef80c927ef0097faaa936a94fe8aaae252c2907b207a0302047c435bb500683066023100fdeac68d85007b4e7b2d64e15ff3d99cf4eead91d4e25b918c0aacb9b07a699fd2c2bb012b0758bbf31cd5bc5a0898e8023100b0b23df106c1bb3fe7695b3fd5da48682b9a68cab52345bb5316bd49d23e227649bd5f4946a445b18a26b27fb96dc4c70302047c435bb50068306602310099d1222b48006ce404e7f4ce837c8675e8a5956be833afb00fe64a84c3e75f71022a7a96706dc3adbd5aae1d8ec83096023100882ce6bb224d79289d51fc02b7d182746619b92be5cf94945b91aede7a9fa4bd1e56d4a422c8fdaec5447b0ce3a561490302047c435bb500683066023100e8a411e49ac596a42c290182cb847e3d2d5d17d943356f62bccae4c43c51ef724448f924a02882dd4fc98264fec02da4023100d201ae8bcd636ec99c92743afda899a0c124c98aee26e141777fb83638dac9339a7e458cc2e030c72dca10a6105592d80302047c435bb50066306402302ef4fa4d2e870b5815200d1ef96089786ca347b614b4d0090a86af187482c4c5ed2b30a39175e5ca35b8561c8ffaea40023014822a18f4fabb6e8a8d30264b2aab5f4216f72079a95c5ac3bcb917623e4eda460eec77290c2806d3ceb2e746f4b2f40302047c435bb50067306502302f8f163aa39e36da6a38702add841e30336548bc8058c1cd0e6cfc4fe3d7a9f20f52a76a5fd0fac1a63cdca72b74eda9023100dec877ae8940c94df31d72710f76ab01e5b22875a82bd32cdff675731a525df3656eb8265f7dbc1de0c52d6c16b5d35a0302047c435bb500673065023100cf79a3139b19934b41aacd4f80059e3438b2ea5b603ee1c028fe2be10ce0749f386311b83d1fa561f3acabb717914d1e023023593b9d56599db1ffe27ed1a360cc30dc40c60adffae70eeb80bfb7a3cf33d2c909e3d49643f6128d531fbf6c75ab9a0302047c435bb500673065023050cec17240139af099d6a1a78e7c6ecc616874921208b3496f9e79c9988597aff0d40291956ad78fcc18ff6ecd7685bb023100d6938b8d81b5a6e4851fac420cce7a4da16a8afeec00f6c91d7851345982563f3193d1a7bc9153429b0318c48207289f0302047c435bb500663064023035c142d0f6bd923fcef41ee4f0047098a4eba4877693d40282f0af9917566bc75bb4924526a8389428fe5490128dcb2702301c73db34bce7eb52388e3d19613977170aed21332e53c21414ecc4dd710ccbe63974a4d45c1a4b09f0ec8abe259d0d020302047c435bb500683066023100e74021786d2392508590816ce29552d7d89caa5ccfa41fc0ca2d8ee5e64a2b8c1b36003bbed4d3743afa2ec2de5f7083023100c8bdc477ce2acfba1b26fd2e327d5f4763006d76ae2b83748e1b41d09cedad9d3c367e983f7a9a825e8891b466fb1bac0302047c435bb500673065023100fc843c981b75ac255e4b89b052d2cb8fb59301730a45803a9e7c7b6859e6f5c8b0333d725d59b596aa5f285625201de802304c36fac1112894bbfd8175214b29f0a313be329aaaa2a83074a2129dca3c921bac5248430032ecba98190c89d681e5de0302047c435bb500683066023100d68bfb3d056856944a920dbbedc1d1da0899cf62bb08b1969301a92004f89cc51d987573effa078298d2df37786955d9023100bea172178d50f1c009cb90152fb168e4496728be9a262237c49822a065e2833b3845c162c831565e699260a44c8467d20302047c435bb50068306602310085c928fbcd8c82e3b4d85d090a27cd33547b066fb6842fa11ca1b68c4ba75406c8d298704a36108e3e244e1fd49ff72f023100b757aeddcfbbeef7da0fae0b57dd5d5eb43c5a7f53fb92c8a74581084e843e1cb02f1e68d6fa9242762d0dbd556d91d70302047c435bb500673065023100dbbd4055b3044844ad8785c1037a811b5e198db9f98680d3999857db39b88b74b0b055e1c130e73d8d4800746e05d8ac023071e6a16696520d027501c5eb3020436d3c5c799c562be1189af7bdcf3933686eacfc82c0c4b2b2e69ecf792b553ea9010302047c435bb500673065023100d93f3ae20a5f400e38b775e35a7c1f036f2f28bed78b5c4beaad8f055be1f8c92a18ef5a742f1a72f1867e614e1ef3c0023060489fc483fbe5ccd6745c12e3024445f28b708250578772539201a244e959cf2f07496421a2ce48f1979b35e8f1d93d0302047c435bb5006630640230586afe0e2f0622191e2d53f7b11a87dd8d39c1289d13a4b86eff91e6c2db88fd327374631a5cf6dd334e079e83d39a20023073840042f08d7b066cf7fa0251d565ba3a318f61dd1f911b1da42ef994b01d6d3afa8907cb2407f6fc3bcc90b689fda70302047c435bb5006730650230744d8b144f2a43eb14a8ce9242ea5246e113cdc08c17f0507f05d7fb23a89d4b0790db91203788d194481c0a0b68b8bb023100b42a37cccd3d975658d87a7bb28438cd4422a9d96d11be0f748b9c0661cd3d7e2e63eb9837a63717c2bab41e1b1f73670302047c435bb500663064023039c3fc07db50c8102ce251d1571febd9463091a618d96ad5f31757375580175fa28314f614753407c4c0c6965ea90c82023017be4dddf015f4bb30218e9e63b24a8eac35cca8947849a592796cb56f94811630b3703a99bac675af11517f0b97c3640302047c435bb500673065023024f40d057549e94faaef29ceb6008837bd43b16fb2ef0a7a80030e4ac69417e2f63840f1d4599dbbb9be0e9733806b0f0231008e03e1d08f47dad401d875b5fdeee5df686f5f61bdfc3b9f735922c50d6ee54b6be8d9a6bf435764e88fd4fe858f00fe0302047c435bb500673065023100b9c72aaefbaf8528d462a0e2a2a9af791e94d37f05d21782375ab5b379636cd38f09633e76eba67e5dcbfca16a731e0e02300cf70309d621418039dcbd959ecaf1d3278ebdd822963ea344cd060ed8f1df8e4a47f3c8e974171263498bc0a68bc1c20302047c435bb500683066023100b2e9d1145f6279503eb6e3c33086cc87b76039b02b7b2811ad24db012040d98657da0fe263ff970ea069ce5d6b45467b023100a82a4a5320e77af464b0dcb0fea58a326ca0de79eaa72e3fe0b7485d407e78b467e45da7f9ef07440bafaf2913ac73530302047c435bb500673065023100fe6453aad77699721ee1a0ed53749cf37ab88e6247a3a7b3dbd70cff16044ee26e439f56b806bcfcde58a0482146437a0230742829d58ef8564289590d5c813ec93fcc5e603ef819397f320fa1499c38bef341b2d86c9cf826433708226a7ea2452c0302047c435bb50067306502306fbb928372544c6a9d4b0790080d2b87d203948a6d8eab93a43edfb44471785c23ce18f63ac031fd5a9bd7fcd072d16202310097d440f37c1dba7f014871b41ec5075806cc66d32913fa4c92fce3199729e2c81e91f5c0605a43211a4f94ae70d0301e0302047c435bb500673065023100a69a7d7bd2839ee646b565a2b6be73a243608a239d8cded182eed0beb41dec24a99738194160923a97a7c9ac103e1224023025bba9600e42e32a8d180c3353638b461f3a886547c196efd5369cff1e035ffc4ecb218c55ebbd6ea8331d36c9d4c4990302047c435bb500683066023100e3ff05496c3a11e6e15b3b764496a156f7ccf2fba45017fda99e9f9f4162e8b4a768c85e4437f4f8fbce97e7d52e5bcb023100cf6bb6497bad2721d8994b812bc7afffe4e825d7ed2eb5d37e763c7dc3522115a73555e319ffcb75c807011ae34df3790302047c435bb50067306502310085ed4366e69f48330c682cf929ae6b30edd524d99960cf244bc1ee846dda2f2389cb81850daf0553d8b5e828a99f288802305cc96994e374b5f39dbd7a7b8f4ebd8061cf134bde3fb8fc4d4ef9249b64a08d6d274bd273f9a44b807d03d9f6fb04b80302047c435bb5006730650231009b5adb75ce199a0c8c5ee98d4ee55e1ad1ccf7a68dfa9baeda0b783cf3feb82c0f9292735f44718e9ecef67acbc90c4602300a4cedb6098e767862e0768157f570ea55480825f27f0af298ad02a967e589f1284cc294ad8c49e13dcd745ea6c1329e0302047c435bb500673065023100f0333652e80ef01f5336064e2f9ecfc4ed5c4c9346f371280a727d08170fff8e9c9af8da3c3ab79e1bb5baebef5473ef02303488e005054cea7f8233990786b376b31c030d19c9d20ec6faad3b88ea1a7ba499b782de56b5b2f96996b909c288c2a80302047c435bb50067306502305fe01e25ffcb5886dd186d48554ded92e79f984fdb5ccdcd83da0290d2988f1608e53a574d85b4321bf97fd4f946633c023100ae8482d6e8d145fa239c0be38a5e3381afad6aa71fcee922698684f0368531978db51600c2434b92a992c095c979c5420302047c435bb5006830660231008c8dc7ac0e966ee2e46f19e42d1c65a66a8955ee75a87213858120e9272392fd05ba35492dcf0bd463e4a462e3617dca023100b8ec25ff4830be4c16307e3efb4097ebcf33379dbb40f0e164338bd62feb8ce2190458a716a50e9b0fb218954289777c0302047c435bb500673065023029472ed4bf0bc1f522726d9f7498a64beb08698d17431dc8ac948bf05734f64683e5c830e0dfb5a6ccaf5c3fe6542c1c023100af10ae76b9173e8a8705bd80210d5078c0584be60deaeda79c573fa04b4969060de2365d1e85cf2e630c5d614f9f79d50302047c435bb5006730650231009075c21f34a42d80e14e1cb38014e698bf997b51aed5dd89f4ca98825d169a61b5faefd11c2a45ff37f8671e2746683e02305e0ae850f61a02770cc2fb337bb24d3b81cd005921be539f483c65b025b13d0807495f9f94a31543cce0cbf9d42d11640302047c435bb50066306402307afa8485a040e04aed6cfbff201494cc3f703a89bc99c27c313830be8eb6994df7c0775f2102b54fda35f8780a05740f023064353bb899576ef9d5230df8ad2825a9156a4916ef9b820fad60d42d492f3cf7aa49500ae987e4ae82eb26bf55c375970302047c435bb500673065023100ef0908a2c54b0859fdd7122af0813594ef9d7a9c19eb47f1807bca001005ac8b4723f4a3ce8da64e9666d8a840a4348202306167007488392a8478fa2c04f74f2d7a0834614254ba425063e2db003686afa57e8501ab8d827c98bdc1244e7fedffdf0302047c435bb50067306502306cc809c8242ee32d3b241ab3e77c8b037d6613957a377cefa4382f93cdefc417add3eadc7ed0c84e324a9cb1a3603f02023100c6dc36f1fe539c5224b9166bda169f03900d9751cb05c783cb63ce18a9bf918672c04ff47f9d0f659d0cdb115ce3860f0302047c435bb50066306402302a8c71ce3b5416b679e4661f92a4e652eeffb2bb037e3eff6e78b6304b9cc511916210fb529729c8587e9e6c0b1c6b2702300f0fc9909c3fe27f71ef83b0f66237a8185873fce22ebb10e1c4590123daecf30d742d544244d24ed0bc01822afac6e60302047c435bb50066306402305bc238b1932635c6bca3373e637eb31ce405eaf299b042513eed50a6196fb65e10669ba3a5ee4623bc7dccf1478e5ec30230643e807d00c30c1db97c9763d7df6c8ed1908b167b2d9bae477249abf4eb596f578fe71b454ec08382cddcb74ac640a10302047c435bb50067306502302ee2d3a1479a4471da56a642b95cb205add5b7851d31837c06a9f440eed7d12f826033edef1869f931decc99bc5f107e023100ae3f288842f19d4647a29652b82bcc122e9a8b070671cdefeb0493277a4e14eb453fdd00d879921be197592d5dc8fa310302047c435bb500673065023100a785d939c5e6b47d3b1e3f7dc3c0b5fce739932e90c0a35064c219204f854606c92588e14b34da0a7fcbcdcbd02dd01902305d5945eafb81c5abe7a4330d31bb85cdce2dd34387508e629f00f0fa6622c42e2fbca721f8cc49f54cbce50f7aef030a0302047c435bb50066306402303b434828c71a253f236fddebc5cc44281de947af720b6ae90a55459fc2600c2067109ba844daf0c1d5533a3aabe8cbf6023024af88c41332fa6f2a195eaf3b0f668d540b6e0dc349ca5fd32d70c623eaebd48a91ec05660ecb1ed12ad3fbd1834ff50302047c435bb500683066023100ca19d4b0d59340370bc9bda2dff6c4c11401860a2deaee9a4e0d2aa34576c0e6531b7c2020965f0fc77cdaa415631b90023100c450cebb7a247d8bc4172788e16fdcde682e379f05e13dc6bec058b90ce8e387f8e5df28eef3db9c68d0937e1ad74aff0302047c435bb50067306502306be99939c2e22ae77c8093725c56386bfd7cf32575f4ed176eb8a0f8069dd9e41e833ab3dfba7fe528bec517a02a2141023100f573f5e049a0e5a4495707afc599ee7cd2de2fe27475a0b833dbb0c4033f7b5655b8d06bebbde64c1fb0e6da0a4e421d0302047c435bb5006830660231008689ce676823c8ec1ae6eddd59073a5e31f570879fa7818726dc1ddb26c9946e232b87b190fbaa522ce0a93d663f2822023100d9f6466b004f2495c98c83816e94c598c661e5c029ae5493683026754beabcfaf14a5c24f60f3e0faa1a3ed171f44d2e0302047c435bb500683066023100aabc13e6596679f488faa808af3e4efa4cfb98196828477251774d2762fe8a733835c6ef91c34a00714676102ddc7df1023100a3f7e5eff201cd72e1f8d60ba7f0839d5100457e2cfaed17b73d4d7c92dbe8d05ec312803a86ea724d8ae1acd2cd2da60302047c435bb500683066023100977ec27acd4edac932c89e67d2d081937d71d345bd3535ba14d5a280279fc23e92cf0f47e7fea86d7323daa392c28f13023100a13bf3f71fba29eb1700266503c63c89735dcc0ceeb46257c0a901bfc57b6e1e92947fca34138b4c302327305caeda7d0302047c435bb5006630640230129db5c1a5952663d197f7a788ba0fbcf4e185f194f77aadab1d68d803d43436d8b4f3486b5666da2c35a255f9cb8514023047aeb7af3e91388966c49f0a6815519ccb22b3f314aedafb3dbc781e55f22e1a9e6e79587c8579df32eb87f5c8ead24d0302047c435bb5006730650230723a750ea9e781c034b404271b29ead9e2bdf1cc77d96b6a241555859a96438df8f647e41489927057d79a8ea0e7f04c023100c9ceb735d5a10acad245569db2714c9f917a42c967f2bf6da5e872ee7503f0e806f8f4b9da80fdbad2ec4a68ed05fa730302047c435bb5006730650231009baa1e56721b99e3abece82805326cc58a544754efe4062f865342f6711807779e3c51429d8e273d4b95a490ab259a8b02302fd3c76ecff1f2e5975f8a41d2433adaa50f3dfb9002c22e09bf6e72c033b934554a13ba458db5ce7e08868f7d75f1e30302047c435bb500663064023041cf36c6361c4c5c347205727c67fecb384d597e5bcaaafaa115ff5b67d62013427cd15f71819ba2d79d4e98c054633702307dd6fde8cb360e73ce34d5f349dbb3b2a101cf51f76d7a725afcdaac2b90d891678fa8659a848bc00fd2360b582d8f0e0302047c435bb500673065023019ab7f7b0aed31094030866b4ea900d5ce25e180985cd72e21f9f0a8e32dc9350b35d031aea20b6e0bf8598dd97c539d023100fb3f7634276cc74773ac4b9ca8491bab1ba9ce16c6568960228a565b1be9773b4e0a832bee65b407b4e15352210284230302047c435bb500683066023100dfc5fd9e7c6959d3fcbcab5afa643339cb9e75a29b3adb34bef5106323a097423b2680200f27338d293dc6966408039b023100d64c3a553871a93e79980198bbe57232eaf022fa9c1332997e1eae6c351d5eeeeed6510ea1a6388aa48cfe312c0886a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d20972c115a42e0518d21a568cf637d5a65c1f08b555031ba1f0c4c4ef64df6fa5d7fc0120805d5a474b573861190e7a023035d5008b001e4e9a70f43a46b0f4560f10beb5708b81c35612f21d639a42fb84a86c189e71a048d21d4e208ad72ba4d60302047c435bb500673065023061259a74dd78386b67a7499722687c380b4dca2f3f08f9e06fa842481a46702efeddf894c6fb47175ce0f7883999eeb90231008d488fe419b4c0287a4219c99fbb9228f85ef8cbda4e011ffba45721238177533eea1afe711b4a8c196dcb419a526b590302047c435bb50067306502302606db57053a93b0cbe95d7bf2f08dcbfbb3d85c89e43ad5833b2c6113efa1643ce0f03a43aeb71b7714f8bd913c17cd023100b1b8ad07f753d8a58652a5b60307de7e89c327bc7cf9c26752502d338b85c4b7df49eb9ec4bbcc502063b7f44807656c0302047c435bb50066306402304a72d1ccf43799f0a3530d8ae3b971751b2f31b9e4f192f49475c58803e9084945ea5d7f3ab7277a77ea14a61835e81002307674ca35b4e98ac6555c5a6a26dae6180bb849015fcde6ef6e1e0b2dc214ae597de78cda104850ea47d08854425904be0302047c435bb50067306502300e050de915e4047801c39b59e3d01492e1633108adffb4b8764f11e36c4714ad3a07c2e10ca3102c84a55d4317ddffaf023100cbbc6bc25fddd7cfd0e2b1b5a76cac4613ff195e79cc9d92aca2274abea0726b7bee55fa428cf812be8eb1ec657531140302047c435bb50066306402301f6c1dcb4b5fc291b311e0889f9a09c45f5c3cbe85363ccb3d2ce75371ae6b0e027fdcac76914b0759122dde91204a5a023033bdb037cd37ffd312f4a10fe83c1d69094bab861b497c2b2384e4362f7de6e380c308cea3012133165811f8762ea9ad0302047c435bb500673065023100d081775a83695e1683fbc82b8fc2490686308f03ccd7e540d5e6eb099b0d31b986384f92f36adf01a20ff915848ea93d023027568c2f8be5d0de1cf4459087b72be205144d38e01492e31def8f1144dfebd83878b6f46714f947776805865e9406770302047c435bb500663064023029b186c7fc1c2b66525519d66f0bdb6fc1f385d70e25de5db333cdfee60eb569c8eafa831dce1b07f489982ec4690cff023015ef58a439ecfcbddc2af1d89e8c2b90a36de1f7ef0b3a6943d1faad8c6c4af2fb00fd030b76cbf8a88b114407af4e1e0302047c435bb500673065023100eb3e51b476879ef6ac16d60a5545795748b3ab9a5179d5d02c3e3dd4b23f0ba0d0c071d78a028b0216aaa8e5eb1113080230319d35a89068dfc7f753d06d2a9ea266e58c72e82fd2b96e80ad4233342ba3c04339a870e31d0cbfa5a1919088a1553d0302047c435bb500673065023065a3157433d3b4c5bedcc5113ddb5fc76385d522d09cd3c9493a8c8493b5d8bb95ecb17fcaf1b5d76cb34320271d86b80231008e9ffd1b57eb9719511e5a9a87a58f0c8a603bbc70913701444a36b9c8ad07864ebae6979c697d27a69b26a423167ca60302047c435bb500673065023065bef501f8295f7a71d02a0eed9b46ab648dea1623076079f254da3348ab0aa1e4dcdb66f122d01b94776d7cb08eecc0023100e5f6bed4ef2d232c1704d2afda1d491ad137af74e46424936a6148f84e721aacaeb2532f031d8b41ff55b63245d863050302047c435bb500653063023030d996998f5aff0da1cf48865f36cc86f6447dc904f08df78b443071cc738a1b2d1ee861e349cdc460d96559288efcd3022f18887d593b5817af4569f240561b7f63f87a718c938fda4bfc584db5b5b4782e9cd96dd75785402a9fea336c5023910302047c435bb500663064023035fd2e8f2acbff2b48485a715fd048746d566be7ef7c80ff2eb145a31c3569a270a3350873188dfd3172e710cca3e57102307617f0f99f0d3de032bd3c1c15e66ad05f577561e7cbf8812dce4cb8d7e868d833ce5ed1fd1f1fb8bb70b07b3a72cd750302047c435bb50067306502306cc1c5edb9abf0c0f3956bdd071eadf90724dd285d22e75a2986e48e898aeeec21020ff978caa399701b9b2e8cd62b4e0231008f6c2ec6924d2f8b87b58eb08c4c3f7a9462a0a262063add1008ecdd290ab953bedefa4abacd47dfb7725cd3cdcbc2f70302047c435bb500673065023078bbd21cf34bd8a9ca6cc17447a15ce2b58d921a454cdf5b2654c2468bcde652c19b12cbd12d17977da0d94568f5c19f0231008c9a9d41ffda731333d7d1ff0e6079883c1130c854f383dcdceb56fcafecd244c7604619230652e0aa5a6ef6414d540f0302047c435bb50067306502302b92ad1de5dadbf57557c3a3a90c83d25c970dca05a642af39fbe66d1b0fa695402047408d5e72f1810a9e80f1f15fc10231008e1fb59fd359dac0bf3dcdf42e3d8eeeb8d0dcd89cadcf3f8907045390b6ceae9504968130536ca284df51b9e9d5958b0302047c435bb500683066023100cba4fd19935d464c3bff44eaab146362d8068d56c9e827698408257fa577fd54f0c0add638139bcbf1583323438ef281023100acfb32315e137723ee1b3eb1b2d7c4d454cc7e8d4ad16d742e6858d43ce19f4b8c58042401c43dc82e4e7ddba2a2ebd90302047c435bb500673065023100d55cf5e89b32bd10651a782bdb0b53a6bd0b1dd82b1cb0372cd6613a7240d6900183a49ae6036d91c1e5b401bc8907cf023060488f757d1ca1dc62a9d2746d57258e96583f018b466214843a2d934e4ab50036f2b85284c6abd44be06c1ac08b5c8b0302047c435bb500683066023100c0e5814958fd159f9cc0eb39f3cf8653562b24b29b8438e40752231b63d5697aacbe74d2a9004c1e41f284cc30d636c3023100a4147bc28f0e2cf6b93724d54f8ef994b632192ed8d851c5d30382b0b9f0a7d91adc647accebb41d41d924739b36f7bd0302047c435bb5006730650230555c8e102bf62ffff081454dd38d54fab940066be482c2dbdcab1b310915bb064e630853f1423f51f89741ef2d1f7206023100cb1605ebf837bec86c45f9c739a963d9994892ae59a7ec4abfa2073876bd4a09e5fcd825d5051e1d128818a41aafe0bc0302047c435bb50067306502307bd4893c80a32a6d001bfec924f54482f31215096c53404a4cefb55c55db673273f43c3b66df5ee67949864a86d96c70023100e884441881d56b72b8010e5f85407d725103cf08453eabdd35a4294c464ad2384be598727d78db317e713db5ec6164a80302047c435bb50067306502305b0922d7bdd3d6862af64868089d582043746c2216f988f09069254585f074a8233c2cfcfe67c34007c50d705a8459170231008261f3a9a13ee169761ae7447d1c4cc72df85fac932ab6d4276dfdc6fdbf0155d0e1da2712bad9f82f48db7543e332660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009ecc3353f3219ad87d35c2682906b6b0f299e61f0542a0c0217f8d26a5ce7664036eb3464f85e60a07e70939ba1aeb5402300a8436c10dbfb4c549a2f16f749fc7473ee94b99d4228855aeff9c02ba1db006a55d8fcabeceb55bb2649aa02701ee7e0302047c435bb500683066023100cd071f3e84ed63928b323a253a6f4d8dac3a629b39a111d997b5014325d76a5edea85753bc93667aa7af9352372206ff02310094effe8964f10408d88a324a33234428ca404251b647dc75338f9ea828838f8dd2d6d00bd10d919a965bfa2cd2fc28f20302047c435bb50066306402301518671f009435e18dbb1a99af1ebae137a2b4dd38065166d5441926d9376c8848625e76012f6ff69efa44cdcb0d4cc00230666adc017afa3b5fe9edeaae490daac621b3a3f037fde6f222528ba1b031b66793ea2d8f1671117701279479721d89270302047c435bb500663064023030acbdb8fbee6332a7ff330da9a0d31b17b6afe171c4d491620fa19a6c16957e27cd8f445adc47744df4c78f867cf6bc023031de0c7bfb7412e967fd9fc378974e22ec69c9249ccce7656e5aa68f7f9c1b0a29d296e2c76af4a931ddb674f242510b0302047c435bb500663064023013bc0df18631cd954157bed1b6d4c67683b911da5c743f38ad8d83752a06cf07678744c57e301beabe1a23a2259eb56502302675dd05f0e03998076361dba6fba1f0f6cf9e3b21f6698d24c6fc1e6d856666fb22919fe98912b59b96dbcc10410ca30302047c435bb500673065023037d7a07af73739ed94d3c0c2a5aade55da0b82ab0984ea51bf972139ea072a9c7d948eb0cef258c14fdf27de1ec5e8bc023100d4a794292cf7d98b8db0616e4a56eb8f0506e5d367d57662768c7831fb9e234edae3fecf4741e2270127a8edd5178edb0302047c435bb50066306402302d8e0dbef4841f6f13898730209a67078df4a8aca7a722ce82fea47fb39835db3d0953f074aa761de178fca1b54aff4602300a1b2dbd3b4d5f21e10a290ca5859473138d05e62c44594645c44d880c0d9d451ebd211d69aa87e968b6372bdbfb443b0302047c435bb500673065023100ea8532254fcc93e5a5cc877157f7be8bfe611c224f1cc00e8c9c6facf3158a80a6704d7118621bc8f09184ee349bd98c023027f4833582a125d1cbd4d515f6693b1feabfbf410d824a74d004945ad867b2ea7e4fd3625cebe4ba6e9b2164778230030302047c435bb50067306502301e9fd34a52d5494b8dc10a3939d86683b448c3315930ac1feffd6c0a34a9f1a17b271dd2db3e414f5e1059c9bb8a759f023100bb7eaddb275f30787f9daadf3c8d4f43ea3f7da3e6abb5a670ea7931f923758f0564330bc510853310769feaa1688a820302047c435bb500673065023100aeaa90e7a78b3c35f704e892bb30170b518fc5b471b8621b5cadd28a88a6a3f6a31e07b85847e02de347b4235893307d023066a0faa6c4d117845cbb50209aee20eb0e24bc3e68f8fc0a153ebee585ff61e0d1cbf20fb81ae6f187997ee657784fc50302047c435bb500673065023019da60c3858962065eb33b84409c43e6531efe560ebed5adee831fe302bd55cbb0140c42bbf0142e0bdeeca57ecc8203023100958a78cb76ea183ea0fec5402a6c98563fa4238a18f131e14b381ad1657c8e280d04bc3541bae2f61c07fb6bd20105fb0302047c435bb500683066023100965595a1d0906de07138121c6190fb8455c16f44770119f1f007f2cb7cad479d3803a7a83b4876f883bd5db3dc30b842023100ec2360e95223c883d4d4ff9bbfbd980c0384685ef4c8306981be07dc1468b9028252d9f3c2847ab4830f473f44fb55320302047c435bb5006730650230195db66dfa25b0667323a1c5eeee92dead7b71672b337d88b22a4724438915e3ef1a693f25c337dc789f309e6e8de154023100f5bc91299809445d296f06a816b4aaf6eafed7c029655309a48b7837f3ef2945971e8ec2da1edebe86c39c2ce6cd5f690302047c435bb500673065023100d0d6bc112425741a76caf7ab7b7be789660e82743ad804e5654c1e2c992409fd0ef8b5d803f8e088cd67a0df835a33a802304975f5adf45fd0381aec0d08290ff4e7dc3b471ce9449d5916484f2d596751d2ddbbce29c96a3d0cec4973e1679bc9f60302047c435bb500683066023100ea95047adeb54f410133ed4aa8a4405d479dc435183f3ca485f42ad917492d36bd191e7053bc1b8cb7c158d2617cf963023100af4e9009f49d1095005dbfab4e778cacd18b15911bc36cf73498f40c2f913b53674b7f269642c877cd53bde08782a26b0302047c435bb500673065023100afe10a9488ddd4db8b461b99e6c781b3469c325ec5f79cc193b8ed9ca33a1b12ff561e96319d670f1f3fe29b6bd5a4aa0230446370df7cfa1ce2476beab18504f255479de2c61a8072f5477125677749f98efed69f403ef1d071238b8b8d31ab05d10302047c435bb500673065023100ab3ea6e9f8f910952bdb953e5abdc1b1b05f5efda80468e1cd8ce43474ef0ce36e413f63237870d8050816fe13577bef023043159c0010d7717f6248dec7d0bd11e69ae2a1f07b359308634d8d754086a3427cb81eda27082eae2f022b5f7c96f47d0302047c435bb500683066023100acb7ab801641ccf4aa972879ca36b046cdf9828ab5f5fbf264bb86d256a04bc85c29f03ed2dd8370930f5bb8ce07a75c023100bc7a43570f0a982bd46d8ff1d2de8459efabc6c9263014020b4a37c1caaab63c5085cb777b8d06f1a07d57f2eefda2000302047c435bb500683066023100f3a3c80d4aff1d76bf35132f8eee70ee71682a071d0e613b4c6b26fd1d8c1607813e4b13efe3ef1761ac515ac54e29d4023100d7c2384d92f2cf052523b32d713f79c3ff5eed72eb018199ab1a9a25ba5e1623373414f801d7dbd3eb81fcbc2b053eb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009423af0fd1a3fe3e43449b6a46a6238860645cb79922f4fc9bd7430ec381ca77449a16c33f605ba72a17c2387afbb3b0023100a7d425eb661daa09e700efbb65e1ad416ff459b95cfb67a97d3d9ed6ade7aa3a8c383609ee15e984f003126f09786b0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099214b7b1eea024132d86b540c019b083dcf797b9895315f3562591ac98f954217f540cbf13fa8f5d7588925cee13fcd023100f5d6c357da18a8e8fcd0c65af08c0202a825be678d079b6fff41fdf46fcf83b21d6289675a35b6296a9fb1ed789f61c10302047c435bb5006730650230658a4d92ad6fe2a87c6b6cdcb9afbff2e6835147f4fb93aaff497b2a604b832932c52c83cd09d3a16eb7253d29149ee1023100924af0a44b88c059e39c39fe18c298003bf20ef81309da3c2259856b83ddf457288fe87f3ccc76bfdcb54816bad4fe790302047c435bb500683066023100ee3fa11bc90b95aaf48d118c90f4a8113e0cbd7b95dfbee95e5da05db35658a0c1b37b755c255a2a1ee664c5381c2da9023100ac360e5cd21f127d86aae554cde95b9acf0726c874353cad864b8f44afd3347ec9f6a1d9971db6857e9449fa4499a6c80302047c435bb50066306402305b4742ba0209875f2b8e9fb8ea4e8382bc49bd7431cc7896fd97387e827c3bf50fb8761de9ef619eee50b2e9a0f914b602304ea5e599bcff751874604ba91bf9e21832da0606267b7e5b0d9fedb1856a8771a756de91ba4143cf3ed3f7e12a3784880302047c435bb5006730650231008fb84993471586193c15b9ab67fc14ef8c874f00c79b34979b55a43373159790ac766f3e1bce8acac36166d5f200b97b023034190ec1d0c0adedb75861ce9b68652e61494d3b9c2bddf0e43a260973dd02fb8749d403ee183fbdc77e047ceb341e8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c19bcb108204a9af14ec2d69cb63475041770c774b496eac9f869436e95828484be1c14181c4cc92a1875ff4014e37c5023072784361c44a40ca46f70639a4534f771bcfcb10372dea32e77ab42a90b66ae474b21a724e1722c12660dfaf77ab28400302047c435bb500683066023100861a5aa87cf5622b63bff91d8abb78f250c089de60aa433632212cd581e56654c96a9fa476ddab19c6017befebec728e023100eb9c46039e56350a154090fe1ae174ca7babac24ba4d37cedb79cbb459846cac32f41e9b21d888559c80445e0216b1eb0302047c435bb500673065023067214f8f1ea6be21cf4de51982cd56cbd7c91421872d8756b4cffa332e34ec8b907205a7c8b6a58da8c3192cbf1f5197023100e3afe0aaa18fee45c84216ff611d4d0b895026de1ff8811b89f879c530d2097ab046c2e0963a831abd1593813420c5ae0302047c435bb5006630640230194837108a344d44c3f79ea70881f949c775b390f3898b3367792d597929aa04e2878cc1432ef979ef7fee8d575cc0ce02303e1d5183e3ae3df4ccc80004a668beff6224b0e167fb19932297f886e1b662b7c2fab9f7d0eeec8eca22f7b6ca1285540302047c435bb500673065023100f4bcd40f6cb55ccb397c7d78753dadb5dd56436f1a8bf5f1138ef0ecd7b09a2b05a59eff0dba105026f7a7f38f412ad002303a94527ac6c1dd8a85aa13de0a17cee0d5b0aa93f9423cddd4e0d5dcd692d756b21eebbab85a767e4013e8186093cc250302047c435bb5006730650231009d7484ad782c1968d73fcc801be002bb6e6e38dddf125403684c0a2dffff457b989dc923a7f70396aa07498559e5ed7e023039a2db3c026873e7d4e683ca9b49694796e5fba92874121f90fdb63f8432812f42194af0cc95f41b63e86a74200a360a0302047c435bb50066306402305db5bb642a6fdb6bf2bc049ab8b3d16745f0c1a0f8af3ea207c2673cb3986ccb319999154e984551370a5798aadb98b502302055ec635d788a6d334392d2d4956e29fbd4eb9c095d82c6619840da7e485077e03d13ce6d3260af08363a5fd174c3460302047c435bb500683066023100ba97f5991990b18d12aa728ed91b7088bb56a6a6b2e59d1202205171c15b2272bed18ead9c1665d797136648caf466a1023100c41a0cf41bcc23bb36670802f765b84027be5b02f97ab54b77264f38057d09b4e40601465aa904c51dca70370390b1380302047c435bb5006630640230253db034624055d773df83d9a05c2146c36859d2b8f69ca45669088f70194e4c19641d9196260534e617b6e1b329c18b023038228036aff6055db139cadc6e4a1e72c1ecdf66d710fdd7e1b6f87ba82d3a741f35ed80faa3ef535f7bef819d7e1ff10302047c435bb500673065023100b4b4877ddfbf8ccc46223b78ab6d97935003b37ee2027bf0f21c8469e63e5b754507c9738191c1a190f55c21cbccb08e023067840a83872c1c9307ec2aa8675f014e17bc9c4fc77f3232a7a57476d5cc665737037beafc7e4db1dba691ae234b7b6e0302047c435bb500683066023100f12026315c6fe01166e7e1f82317250a1c9233881ac512b1dd5d4c49768a0e7e43f135656e6a10fbce620d2d2c1f45fc02310097be9cd888d44481bdfc7e0797a482a6cf8506f6c87a1bc3a7f3fb46fd624f559d0710d8f599fc454ddd630f8088c3f70302047c435bb50066306402300443ba315427023ace84d801b27ff1b0eea66447f1f93b440052a0df5998e99cd5177e81f80178743b1935846c5dd4a602306225259bf856dba211ecffa22d7980fd923da4df5570aaa2bf78bea8653e7fa19fd3b11d880034315574bd7852bcc78b0302047c435bb50066306402302f61459ea9b9db291b74db21f683b4fbbb44fc7e11377c294ffd04c3a7df69a6c2ff0e8da6ba886f5dfd6a442d120eec023065a28230b2ef6507a9d08e20be56d9343ffe639500cae19c57cac9d6fe3f71ddf8984575a645ca9fa8b7dab0ef4076040302047c435bb50066306402307e741525b5b89861b396747b09eee76ad4c0e8c692ac2ca296dd22601dbf07c89f3ab250dac7ba440f9755be9d173103023008fc1af13bfd8df61bc4f638a21fbd12c3ce510abfdc94ec60e72b3f01d29a453fd8e1a1d6b9db9bb8fe3733c333e79a0302047c435bb50066306402301020c61288c84d32a46242722ca97f415f3e30005aa1fd9f3601f8998930595652a8b5373bc271be00312e04b97d842202306b6813c72e833f27b4752e0162610c88adca4dfdf54881e2d6a523c0067772723e000243523ce2805209886229e8807b0302047c435bb500673065023022c2e30920fd60b9c0b670bd6aa01ad52a84a8e8ab1773e9c54ccca7848606a48585330df87f06d7a418cc3d9bbe8f7d023100ec9aa0210d5a7391406790d6f779a5040cff36522623c9ffbd9f2b4d3790ca5696f692c015e634bbfa917483be586fef0302047c435bb50066306402305a7096163cb2079358792a7dbdce6f86a3b0f0078b8ed50c60874723c6055aaf764595c2a94f9c881ab1cecf264f81250230624bb3213dcc89f45f234461c0702401e1dbe9a7f11bb86f6ab624008b258a9e320868252d37f09d7d3c81ed881117270302047c435bb500683066023100d483b70068c038c91238d236ab1327d23982691f03fbe2d28ef91673622957e2e004fb488ebeab12a15ee1c4fd5ef90c023100fdb7cf231e741eef9de7fffd9d8c91e925040735193679ea3385621d684c8b8bcfce8f07c1ced7f4b4c992cecdef55510302047c435bb500663064023035b9df4549f5c478b1943e55ea80f4c289a409bcd31d419cf386710771044cf9396b6925a989abb2ec3bbc148dca2d5a02300211f6b9fd30cfd9aeb3552191aef6bfa38853faab0825295d4684d076e4d5f771986fca2471238ac1ba9aab92931c5c0302047c435bb5006630640230368e941d8530a26908b16a6e90d9eb2d39d43c4077b78420f4a958fbff32f65efd05d6293896c1b68e4142ef6e43ce28023003e1faf706f14b55255a6c643c1b8f00872580f59e36834888f866c91c3c3daf16a298d5c65fd5f5bf5f3b80e75ddfdd0302047c435bb500673065023100a655e7b83553bcc0e872781b82db01806b6734f07ef5082dec6bdd70f75da1e54034ff47df594e329c8e93096cc4b42402301258a41b813c98b74bf92f73f7bfbb7d4521153ff25037a1e589ff7da99d42418d27cfbe10641f3a21dbf546314d4d600302047c435bb500673065023100c08b4b81a7c30f6c3aa23666bf5aeeadfca52721204d843691623cd4128804781e84f846c2b942cbafcdedf15dac5e2102306a04c49ebec03824675995c52a20691dd218e10e8506d72754185aa64fe5725e135534c05de01298e966fe067f3ad2810302047c435bb500673065023054f4bec877acd5d712d2349c9293da8afdb1d81854d4deed00f977cfb1828778be81d8849b00f3585c265c05c849bcaa023100f99e1608335e6d591001fcffbb91eca8b999d106a55ed64b6dd51f31199f29a12ab52415c74e4e92d43fc3445f54d1db0302047c435bb500673065023021931080f0735b13aae2a3ec9d3277bf38b806abdffe9e853ee5039a01f33b825ec00e9ccd272c3c1dcf34b92f3b1ff0023100bcb41da84c223bf6bbd275d594eb88d27566f2f0245d13bc2960d78add25a4ed39e983c5ed7a9c2228b6792486e687d60302047c435bb500663064023066288aa446cdab57c6da808113bbaebbc2d4d166b5cdb915c350fa55131f758007ee05ff2f5c04bde9551506f67a36d802306feeab70b091dec680e5a8b5cf168077072111760c450ac686b8c7ebb00bbd524eedaff92a3b622b817d8c30b0042a580302047c435bb50066306402304a2580ab7ee86a084689b050d312a759b078e6c10fe51f2fbb03f0c216cd4b4e823653ff4dcb702aa088a75c08e95c5e02307252a19709ebf7bab9704422d556a604427e64b698e33f429a694fb6b196dbca006207aa1d32f541a5ecd13e2a94a3b40302047c435bb50067306502300953a746a0a8a94232695d1be22fef185cd1c4d792f86ecf74cfb301df98fdd7b97613d1effef91f78bd19ca2517c860023100c3e0c389707ad86a1d6711e9bc5d5f126e5429708e75f03d67907ed77e38c651b38a270523e8671c8b83833698452aff0302047c435bb50067306502305a428cf87d00c815f59c1919549f335a9e0258491b119a0016ca77e5079f5d8ef0c0b403807299c280faa0550a2064e4023100f9d13747873b98f42423978a0bea2f71da1b982936583d93a1ddb142277588df3f68d16e2dff4df51dd4608365acdfc30302047c435bb50066306402301c89917be691408a6540aee1a7f7fcc9ca97e733efe9df976e80527c5fe567e58bb9ecd74282d1500dfc2b278438174a023039a362ed8b67d58ed8e9ff2743ce375f6f0cff8f493e198da006209fcc2d39d2aa79a24c6c4c48a19813335d0252284c0302047c435bb500683066023100d219a17fbe1d4754edb77cfb4c057dd87a334b9d54894e14eca46d632007457ed3434830d0fd66d7f22ff919093128ec023100f8d79af70848baa9596be0e8f1fa452a5a5053d883074ee77a48a4a7bcf0e2c1103b206874c13910ba114865ad771cdc0302047c435bb5006630640230223be0a3ec32c70d7eef156f1e57271b60d3cbf540ed6586fe0a1cd5d213a78765a1fcb0ba8ce0cd52839323590621b302307083fe9aa85d15c7eda86908d903818d66b824841535add3b45ea733deb26a6c7c26d14746ae16694b2655207c42ad680302047c435bb50066306402306290a2ee34ae1410f7424fa90e235f7ba1ea99ec669b0085f15beee59016be2917f3c66923614b10b2345b8321bd20470230395cbf5f1cfcee564ca2516211f0dba3609b267f344aaffe4fa7879db227157108bbc4a9779fa6ba3a991253996535d10302047c435bb500683066023100c649b277f13e7ea38e4fc7b93dbffd93e039d8a2226f717ce4f3f95bdb0a1a6bf53bdffb89b36b4a27df7a1ce843f1bb023100f0bbe5b40bbc55a84b5a8cc9b3e9d53b5b09436c18c949a95f82a9e98f81c41dce867d6f5727c831b66f37fcd86e3f000302047c435bb500663064023022ad83415243982e7292d1ecf9f2ccd6d25c3722ec2d991fc22c5dac56456213213c6f9794c9461e5420bcd5621707c6023003aea6adf7bd3adb6a5f0ee77eb7bd238c0ac018b304023b3a2a9736c4ce0a0d0c63d31f58a962f51e1a3849c7450ee80302047c435bb500683066023100a80288c1084719ebf88a292ac86be37e535c398773ba96b8fed6b6e711c6cb2011b6ee602c285529d029518aa2d22953023100bf8d0791ab601b22e14dd3b3f0cedaa3769c12c412b5c1a40cef64742c2028c769c14db7a863935436b3f93d1cc5a96f0302047c435bb500663064023019fbd7950a2915958e31745b28340cacaa3aad71e243d5dea318928bc05c9592f053f12141b6d733aaf27013fe14c98502306458ed98f5dd9c7f79b4b764b590d5cf7f80d455aedd1300672bd53f760f8b43d9cb7223bb7c4e887d53981423bbd4b00302047c435bb500673065023100bd9f62b90611072817c3b516fde2104ffc5289b4b47659950ba0acebd9a7463c6d45ea5a3c6fece8bd9518d5d5d2421402305d326542e696fd8dac8a1890246629b335049b880d33128855b2b0dbcea2deb7d92b69dd0bc462720c24592fbc9aed9f0302047c435bb50066306402301787203d5b78112e001e41f562beac0a87d6a3a96bef30ec9d8b04f67cd3eb88fed2cc73c9af82628954d555732eee050230391d05773c742c67ef06c91bd1e6d4472c808c8ecb59e83c67b506170ccdb7356d5621ec6da09d887fc6fc88a3c88d7b0302047c435bb500673065023053dbd59e1021314dc4db92816918bab91d751680a8b98c3b35ae2a24b2bdedb70ea631536d35c9bb7ad50f126341070c023100f3395c740055f8d0d8419d79710799c7713c9fead0356a528b8407d1b4e4f64ac6bca77672ced84094e7b13aadece8bb0302047c435bb500673065023100f0c9cd852ba2c329e2b5fe575cde446f24bd416709a44beb6a224e3b9ea53b4dee119698be0314b8fafe2441a803f57502306084a114f89c0a069b8beda2586503cc898d9d6330ff89e3fa56d6259fdd28de220462d7bcdd6dbbee29e91dfdd03bfb0302047c435bb500683066023100fbcee63d95ea9092b1f2d8e26452121963a7a95e0322132a5cddf9f60ebd069ed6f17485adec59bc6af96342f18cd696023100a53d85611ad3ce2b434c3033494a7a95cf1500d3ca3eeddcbc36fe5d19e548ab53d3f0a5aba63616cb31270cf81207350302047c435bb500683066023100e3b9c0dafe3c21de508de82c1afc33913c8a7ec8cd03cb32d921319aee4ae9a90fa849e649a4fcce1cc53eee657c97250231009c37e69684faebc2527a9dba50092e9d627cc9da372845dbe591ef636f77728e8d80cbf1c42f50d49ca4f44692f486f10302047c435bb50067306502306d2320f0534e1b709072eee98c29c51ba0959221de3442516f606d05865d6bbb39bd61334b2fdecd59ae61169daff5e0023100ee359cf5e219bcfc2aba824df28a9d8b0fa5f13b9daa53fdf4f83f34f58f2cffc271740efb731540b868c8eba7142f680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304e6ca600a2d7bac2582e7ad45e415e936f1e621a0fe68adf1b0334f4455a243244b8a38f239749d31cfe33756f27b93b02300b57294c70e536dd8bd41075af6877da996c9477c84bacf393cdeff45548a916938681948fcd7f7801542e046eb3724d0302047c435bb500683066023100f69b5d00c12ff1283b2177be6d5bd501b1ae540e2df2bef004b38acedf3489a80c4335360ce4e3a77b7ae4537f04851d023100a486fee1c575a9af9cc87f958fa85529ac7e8c94475e903a7efa314d85958588cff0c31fb15f97dfa430d104a61d9d570302047c435bb500683066023100937c198d0e45b5122ff7e8c738c0b91962a7860fc8e8093588ddf7678cf3b961d95494d1b76652f28f4bc000868b7b72023100deac154f9149f01914337842353b2eed9c6154ed0b99685c310ea58d2a5b01dff95967db317e729d7b5b3e6fc17c5afd0302047c435bb50066306402304ff5239758f2409c72efacb8bff77505d449b647eb5d9453ffa2ade6785ffe5ca65fad8005ab7ad452674309c8bf613802302a5e157a864cbeecf235963db95ecec4891d465f171484e3a40111f652c4be599b447a411cde96a663ecfeafc665b6c10302047c435bb50067306502310097ae5d36f14632536f6aae25ffc7e2b4d8216651c10ebf5a26b8eb4cb84fbe4a665c440ef46fbf7df72773b65f746b0c02301da0f7ef6d8a17ea8abfdb82d28524786e741d49e1807e383b8709873634cb75c95622e72eebdc84ccc58ca5771a69c50302047c435bb500663064023025c74da959f485ed2d6fb99e85b0db929f69738f9e4ef871c6b182ec5265b3a495bd8dfb33cc42c48cf0fce16ebcd399023017624d7cff0f9ba1ddb6e3326e4a329faddcc40c63769ba54d3944e7af2fb4d2943e363e933dfc53f40fcf234b5a5d970302047c435bb50067306502304a2a151d3ce3fe0e16547f43d934d0722a5134f6cc74140c9f1e8a5af857dc35964e142ed5dd6412c6a0c7d9f228b771023100dc0c2a09c7188ed67d8f2e954b5e2842a77ae5beb57726bda8f42e43a29b7ee9a5867d9ae5f927551227fc0e93711feb0302047c435bb5006730650231008bbc9acd47b816d8512af44f6f0501f996e76d5e41a3469410a9568ab70b831c31a8303feccf29a93c41b916eeba8ab3023063baf554c3b563d00b5d580e657f4ad289bfc46f682aff262c6ee6cfbe524edba4ce8d947a01d222e71466bd28cf0b460302047c435bb500673065023100e4d043af2657a8604c9c5900e764ef9cf105746d404eb19e49db76cf4fe708d5b1e69dc9a4196a5f5e30f59f583558040230325d92a63516de0a0bd6ba9d916491cc256ee37ad5f75b1571f45099ed8551727b5e4eb26c3177f7fa18ece5fc9482ad0302047c435bb5006730650230549cda6fc3f48ed2ebf6a0785e4296a115769c07a27a49e787e0971c588c7d6796310e04e13920350224149f1f2f9746023100bdc2e52a58af1c41e095ffc2f2d6bf518df69ced125872e39c33cd29f940f12f053a69b28c7a442075f210fabd4d64e60302047c435bb500683066023100afa128606d8bc1db4c348d518ca52705f8e4668f9bbbdae44fe58bf481e857248cb112d4170d396235893d3b226446110231009031a64ab86fd09d833cac030487802270544e66cce006b5b7c9c100239777a38c2888e8369e28589ea5ea6fd6834ced0302047c435bb500673065023100e084c0b1596e7f40b65e697b9c2f1addbcb0924e60597068c3ce714fcc779c43ad0e50b43349bda94502403ece51b31a023044399a7f7d6b0617af9610138d1f7f8467b416850d192bf1e1f5e3db1d69d2aa73899ccc1259bae2cb3a51ea427273800302047c435bb50068306602310083bfc9e6f11d5c749857844b31fefa4f5924d2a749562d901f03c90d2205efe4d1f5a6a63f755f7cf4355823f163c2a4023100acdc5679768b288457f792a63150984f01d3f33b5910eaddfe196ae4633263c331db192b895f576e82b3026dd5d0e1130302047c435bb50066306402305ad4ef774f537b74c19e8a1c6a3c1ae2773f132d7ca8ef725ab2a77a8ae249b4830e91482d5d91c1b99eb7980c66456602306d7cf70ab0ba17c7b6b2b829abba622f4998c0808cc649721067e6fa36bbc38c6d8ae4313b4d4b7ffc7dd1af2dc844320302047c435bb500673065023100dda36d13ee95ccb971a8ebad9498ad1e67cc11c4409f7462ab030f4ebdc0c072f3941f657a75ac1189911897ad19fadc02301de76ccf7351c513793e95a889a8a3221d8c40d3fc7a9cf8a927e8d55f7aac47213154203ec06a7150eb104a1e58ccb90302047c435bb50067306502302b301407d2e1e9b9b015cd1c5bfe7866d2aa7ee6164dacd25094492497b80841e6153921f138b57010c5cf7412e1d334023100c50d2a4c30bbdcbeb6c690af36cf2009680ac7ea17fb90eba23f52207f4eff47cc68aade7e348ab33e9ab35e303612db0302047c435bb500683066023100fb8e31a0c51a36c6d97e860a8ef91611071d0ce1311275a3dfb4ab0a5996eef9052e30c0334fd09b21b25c13034ffbac023100d194a790a31f04e3144258948c16951316cf2b9bb082938071f3fdf8d4f9c0d78259ca9452c62452377826a28e1d907e0302047c435bb500683066023100d27d155bd503ee9529ada8c5545db3a05251ce835c0fb3244268c9389d5cdfd5400a8042946a12c6c48abdb09b80a58e0231008814251ec405812e9ce6e35cf302d1a5abb855c9dd0bb89f53534992da1e27a882a4972d0ce5aa2a98cac0439a1826a70302047c435bb50066306402304dcc914ef7cc814c62a85d55263e5c62685fd66a7d0cfc389a1505f864bec8a5d01f034c71020e48b6d4c2d193990baf0230569916a1b8834afcdb286d0abb97a7a850f25480150b0bb76e39c709c07386c6555d9fb44d7af1f06f35aa810b01e6b40302047c435bb500673065023100b7c5c51fa49e44e438fab0b8e1afc6151fdace3693b82c71bc67be838674f37a048f0b60acb321097049e7f60f83db5b02307d3858eeb813ddf1de5c88dfbf69d5949875784f478a848f4f2ce7546ff25309f27bf888dc40135354da960a661459270302047c435bb500673065023100ec6ffe48f4cb7bbb0c7ae0b2ba075ef0262a3ca0246a7a5048ea16f907856ca847301d7eab2ff8cf674a92991743335c02302f0e5976b53e7a1318df212b4bd60367f7c680c4ebd5058127e93efe921e25e0dc3a33cead786ec2390b0fc23506f1c80302047c435bb500683066023100c0c1f9c7e2240330906f774f02af7301dc35f2554850fe93b6dea8ea612f793278edeeb4e83a635c56aecbe6eb5360660231009db4b6d21d2df785bd7b6c961309e7ed7d52ce3bd64e2e1fb946a7221fe3976f39a7be7a5c4f53121747efb27da3da930302047c435bb500663064023012715b38d02ac3e744d489841b6f32e73653e06825d32679d47f66dd25ee75683d8be54ce5af5002dda7ecf1efd841120230374cc91056294b1869503f7fdae833cbbc23907cd24823b44714ac459b00375bf4f5e6096b64a2fc3c3c285024df39c70302047c435bb500663064023015ee5c6f11ab91cee773a63b1542d967af5c0f9c90fd628d38811ebbf0541455a66e29b71b7a5a481969d356c08016ce0230295d511f2562f07c8704e0d03d72ccd420f7d40fd7a22556cf32159a667b3a2b6e0c610d0536a1265e7f76ea0292d3920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300e27414a46863bbcca0397185b7fbb118f5d3b7bd70da22972dc7c1c9d274d9634ba34edc924321d78df10fb72f90188023100fdd50570ffd4f179c4e62b52b25b7ce10826e990577a40867cd5b32bbcccdb6da207344c9e4edfd0121e889c174d43ee0302047c435bb500673065023100b267dc4a50c58e7113acff29cee46c4f4fd8d02aaf436eddfdf8af6fd582ae1184c68dfb5d8e5295d9e3f1db438f78ed02306759ebe9ff11a00390fcb8c0e4775def994ca61d1e0285035fa25431f20187758636ceb9df057889d6ca948f4e9ff9340302047c435bb500663064023001d85bc69b065e620b3f4d18fab033ccec29cf54cb4681c02d74185bb4c1fdd936b628065c224e33a1cc60abd0ecd70f02301945848268249a15571c028c2448ffea399773bc0758a287bfd29425a065dd79511f19e4574981d80c2b8383c110835f0302047c435bb500673065023100a17bb0043564d419b8165c4b162a66ab1cfbddfbe3ee8b46511a4f38524f7e9845ef2b436399c7d96f0ce21c5bad2f97023007dae077e3a078d1c728b5bc5ce8a71b191c068bab5bd1d1c6f0259ef77fbf8cd900250c462056619336f2deef1207270302047c435bb50067306502307c3770605b89aad6dd645143b71319b046350de2dac38388dc8738c3f6c750c574a26e3ae29899add8633e2377da4156023100dace77ff52350f8204e7e1ec1f224aca016386bd7abc9dbff9aae3aecac863828c734f84e497a9929a75b3501036fba00302047c435bb500663064023025d1534c2275a3d25d8aee9313f6947069c0b269c9480ae158d9f0eabff0f9a639f1ae86aa84816f33fad4f87aea972e02302db1652360c137a94512c3d343c614375c9d5854f02141bce28edcc92dd9e826686547d7a0c8c95590c5041cbb66e83c0302047c435bb5006730650231009dd6c447c87ba326bbf57f91397589d269091bd034d80d31db9cb9ad1581e4b8970a0e5a270ca7afe93cfc0b1f520c0502307fdb57b0dcf018f0a3e196a7e53a9b4fc86eee4ec909f26199762c14d7d92f7d6a6148ed0215ebcbb85351ddb71d88710302047c435bb5006830660231009def5f63ceae324ddd51c8677d0045f1bc05f577c897c1c43f7868bea8395dd498da506b597b367bec790ba4004bcbef023100a64f7b66ec4a161b8677654b913d63eac1ce1501fed62584e637009a64151fb2cf745e243d1d701503d4f60c19ae019a0302047c435bb5006730650230741838c81b98d1252c385c44b9a926a71407a706bac13bb901eb8aa1824725ca5a8473329a9e9bb5679a6639ee3b7ace023100962c43dbee3aa25feee8e5dac05ae2ba74f0e82ca88d2f1bcf85955c1b38c91d0a53e711b5df5fbffd41c43d2c066aa40302047c435bb500673065023015b0b6f39fc016ef21a7f73da80b67550fdf2bb97a6086088c919db67d636a1476815f325dea2dcb72cfbf2e46d4127b023100d817f8071e5fdf6e799b9aedf5876352cb4e05904e204dac1eccca7f134ca0f73970eb6797a5fdf7c29d958e05332a0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023049acba8c7af8e8f0a84d3ae1d8b9c3f8c915bca73508724ebf40e15a1d3f3efc496a60f6f5e1b2d62d35973c7a27ed60023036281c581d285357562346083f051ab05f285299313ed76495effbb7a2ffaf0dde224be3a544a8c7e1121f2a700214240302047c435bb500673065023100d3d1cb201335fc319f836f1357a7b962f6bdbddc0679ce589fdb4dc07a396817cb8ba9a94322b8f0f1ebdbd132de76db02301e1366a6748c8b45499ec9aea3cdbbd868ffa36fb009b610bf52ba5199b287dd36a83c1b464942b64b8c1aa364679dc30302047c435bb50066306402305bad1e6c01dacba80f6082244a92ea753bfb2416cc9d89682906e4ba87222d27eca062ad9e5883a7917e74a7f53855eb023031561e77d882b15e97cca1238b7e898f9644e3bc750bb4ee283b00615c668c206c39293c21809c2b2dae4fa3cb4720170302047c435bb500683066023100e0f762deafc89426ec7811c7b44b238639bd3047abb5d7b7b99c61eeecb5ff4bf1cd07a7bbf843546188076f0c65a716023100b860c5f47c3a2bbc65adaee8dd303994506fc5b290d4c382528a3d0b3d9ab321b6412b11a641f67946ab7130507aadd10302047c435bb5006730650230792150fedf104207523b405b80a12839beb7cf87f058369442a17a91379999674024544cc0cb444bfb367c9130cd378f023100d930ae2446d1440a44d8d2722f9c0f4b1060722908801576954ad5a7ec576c0fadca71d9b2280479d449ef8a7d76ea6d0302047c435bb500663064023052c1c105687721d89f047028b31a32bbe391ed5d22778bb5b0e8d1f56dbeaf94a9ea5923ae9c584687e143581c10485202307ff3df693e084cba3daa2ac509b7d8774fe61a612474bda3109f42e3e02ec5cdfebad2eda0ed141e00257d05b6b4b6de0302047c435bb500683066023100d06cca1ec03a938401be895dd73ea4c9a59cc6be6b24d76fcac21bc3125dffeefa0ecfd3fdd76b6c4ed66b76047d83b80231009f8bde73bcd080eed2126ee6c667b69da82a382f3ca275d73e3e9f874f7ffe6bdc2d8427cfc60e4439caef6a4ee86f910302047c435bb500683066023100a7565941049d5661e265adc546e2427527d8a504c22bc552361d65fb7a95030b6fd6ce8b88e49978e2b285c12b6a495d023100d295082db7206c48f5f1db2f8685fd4ae21d1fe7e13907edc8654c29901a6c62c95f4bf0dbc481b96191999ca629a4dd0302047c435bb500673065023100d17ea31a79c502a5dd86d4e814f62e2044f450894eb148687a824264167ed0f59be7b41af359ce5d06e4d3901148ed3e023038d79466b4385c604f4fd9306aad043019fddabdc48c5eafc0106b8fa567c9e7408668180bd8f92143774a45403fde5e0302047c435bb500683066023100a497e1e7c408535fa4cd434d44f2250760c874084cc31346ff288171539b71d3ecc29d20dbc20d797dfea99cbe34dc0d023100ce185cff7498273cf4649179fc4fde2d8692b8b58eb3bfcad2d20a881e8158ee491147498b797a5106536debfe5162810302047c435bb50066306402307d93422c27570aa06d0c61d713a1421a4f1120da3da45123b875853418e0abbc58c8999cc2835c6356be3ff30e3c95fa02305028b9bdde43752dc72c8aaf6052a0581b629df23244b9d5e80c4ca1db2e1de5d70d17684853985654a548ab697e138e0302047c435bb500683066023100d6985964c357378bc3fba2f53fa5d707145583d924cdb4a495265c34425174fdc36cb860e0db33e3c979327ed2d5a4e9023100f5fc7841440d3597c3ea16583340538f5f6f21d85275f96fe17abab78abf9fcd8ff8ebf507e3691fbbfa0137ac6b5efd0302047c435bb500663064023065547d18b35fa6a86113930fecfb2d7a1e11c0df1e9b783fd35e4540ffe8050ca727e2e317db1e19b46b2186f3da823f0230057f78526032cdf8795a6596ccde4c82891ab61949d7acdc7aa42a76b342acf7fbfb5afcc0b1c8ae069b539aa7fdec1e0302047c435bb500673065023100cb181117b606625de62d6d6103fbb3f9e067cd6c1f61947e7c2aeb42e0d3f1997ef3bd87395103e2117bec513bf2559502301c1bf125dd9667903d4708895d5faa6dbc26ef775829792859ff14aed46ea5b925599b876a23d34057cb47f1d09812b00302047c435bb500673065023100c0ca22d545f3bc65c13fd2d739746f7358abbae0d869229d0a609df7b04453b790ac2bad72a77d7c44e06e552076b0ea02307f376706eeaa2ad79a211c3e1b9e97d0576d0d931083330625d471ba85480d8d1bfa129ffcfc8c6627323e872f8252e30302047c435bb50066306402303b1d888da7629984598384a2379c9bb366adf38987b07d69618c440c34731463880ba2639d1cd135c8728e971510d06602301bde8090815b13f0dd090b4e233a6c59ee8096493ab6f3cb14ec9019624c1db776a97f3b77ba221f6537af21bba4cdf50302047c435bb500673065023100e96cb338e757678784428f87e5837018d05435a55fc9a49070310400555d6cb57bc0ab72c20454676ab1ebc516ff14d002300814080eb186d832d1489958637f435bda31743489a94a43544f342af78ff817bd1330e919b4836e33dbe04510b9f5b80302047c435bb5006830660231009ce0916e952320ab7992e7723608c5fb058c66cb11e30054b73f9a391c3b401e3feb7ad4b55ab5eb16a08ed45c858755023100a9aa7a9a5c93ef237fc5bb4943f85d93a41a2611d123f298b747087e27303f282fea533645887534ea4114351e19715a0302047c435bb500663064023046008d423e54801a9c86746a9da8ebc5c5e2456ae0c622d9f849072296385056e2303401428142232bda0ab5c0514c0c0230519bd0b4d3ef1182a66702665029270039bb170a1e53438d6213d025d54d480ff496d8c2629b250718a0af5139e579f30302047c435bb5006830660231008f4942e795902e2c001cc4184e95973a827aa747c6533981fc20158eefab61f1f0218f779cd4d8ec748157ad4cfcd752023100e4a37b05459b88a3cfdf1b62b43e906f04e90cb2548faf4603ba5d46561824e17188f6f4b938b51353487d66f60f20790302047c435bb500683066023100a2f33a687887c49f3646ffbb0af455b7b85931d1f424fa92757e097495bc3ea6ea580174b30b2ea3682ddfa9707e603402310091d32570c4f81f4ce971aec8eec7c1548d6e0151adbc8d72d988e34deb87382c7f018dee8ea532bfb8e5ec824a03a4990302047c435bb500683066023100feef84804bc445a6acfc60f25079d584e4ae0b0b29589b0db00d2da672728d111258d3bce06c30623a1654b5e8b47d7c023100b79e0c43ff25701885bd9f36729bef70581de2ff796a3b917112abbd50050a3284480d1f62b51e2de8904e81f6446c760302047c435bb500683066023100ee4c575c292d886f1167fd511cf74d98f5f704be6101ad90848764afb4874e73ad9086ba6aa4d8e59ea6f6bc9672d79e023100fff8dfebfe78a4676ab128519a2f0cd8fda37dbc6d4642d5c1f662821e3daf709f98f9add0116bb203d6a65c2516bda50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d52b8e6293175e723107defc3e39f8140bc1cac90ced0fbe5571e8c55d92b8ad6f8b6b6b6c6afe7f9f9f1b57a7cb4685023071f0461cf09c86452627401779338b231c1466d053127a3996b5e841de558aebc76cad6000080576eed31e229c9bfdfb0302047c435bb5006630640230022f70c8c65fe5b1e69d20f0e61d7a9c87f91fc5963c571d211d942ace998590e7fcdba9b1c9cf3aeadf72048eb22d29023074b00b21d536bdeb11aea1957c8e3fdb96f4965935637edae701b260135f200f10166a1c999c0717de2797396cd93f450302047c435bb5006630640230749807cd57f015fe18a89896463dc2366fbd150a69df5387235ec56c0c54f9ed644a5e7517af6d46a9d89823ada8f02c023035f908f55bfb17e67de72648b57fb1f37ae4f433d55495bb2ba1d290104d6fd753e18d83d834d688a8c29c74e52c3ed50302047c435bb500673065023047758ba4583708f94a84ce46eeb2253dd0ed5795f703667663428cdcd85844c0c624c47d0a330383b1c8dca732f8d3e9023100fb06e25c4e6ca0cef3efb8588fddade10a1365ed655975026ca25747f19d7a6145698a4ea58e1fcde097c05f835ab45c0302047c435bb50067306502306d23b2bf26553b585cd4ef0551864e24a7a68b42dda56eebd763251f957fd3f2a6504049fbd69998d08694356ce626db02310081dd71f5a989c23383afae840456cf7e019539d710ed05c5774cc4ec03fb19699bedde85a11c582db4f4bb12b64206540302047c435bb50067306502301b0e91d731b7d7878a486ef6e6e18deb868a166114e7d8ef349ba3b07b53df2b35bc9ca3f9e969d03648c12e6cfe785a0231009fcbd1907ef36b4b6b1f1d6ad099768b51f1adf8a25b4ce98a722a6e2a3dc6b356517ff915a19a4f594b876f1dc63f090302047c435bb50067306502302d823344ab33608338627eb2ce3329a5e465ad79f28f836567dcf0d7880772c9f65dd8886f6d1f4fdbf3204286e19e810231008ac8485ce9b36741181a172999adc5cb920d01965c66c81536702015ea9cd703f2152c3b6186e985da2bbf9dddd950ad0302047c435bb500673065023100cbde63e7149759c671684984da9153e0e44110d63e3840635d97428a2a827e1b9cf3f18673506b9f9805f751c0c2a75802300efd803ef4b765474104f03671dcf199bf668742e602bc65f7c654f04f5e0cf9380803fa5c12a865ddf6500a77ad23340302047c435bb50066306402301ca35f97928d254aaca76100330d4e15fc285853378320aafa673c4a02e71b2242e0ffb3104a3c4d4dd1c4e5e0007986023053c9a0927f4e8b535e16a672e01f376265579610852a190e6818ba013c9d4b194641d337ab3a096559a121d1ba132c4b0302047c435bb500663064023054cf3a33822a3e018d7af837ae6fc6fbbf172322887e8cecaba0bd3fef71a342825914db197f813acc20990ebbe32fd502305682201429f8f6a1dd8842533ba91ab5d4a85aca585778a18804aea527da750df3db83533b876e668c6ed22d3c7ac3510302047c435bb500683066023100a7f77faae65a1a76989bd42cf8b0a71c95196681fc2d1f91f98d6be59124ee83019283926e5663f80987af5446d0ba93023100a0a4d0e7aead5d851a77553da8c2fce72ac20f35fb8dc08aa3145bebdfba3e7de2f0c75856342975c00869a4751d01410302047c435bb50067306502305db97f04b211f7b86cbbed5cdd6c4d38356717645b4c8adbfc815f7fd172efd10a2cb05c967adffcd95243374d950e72023100db51668a70d23ddcdc9a2f47224f2a671943205b274226a3eaa7f469c3ea0cbec43df1ca3f6178af01f77b87062b684e0302047c435bb500673065023100e083b4763e7599da0319302a171c721d9f4f555433bb6dbb3ea56cb13ee3ffc0666277f177db11ed02e77eca77ccb7da023065b5545b20ab9455505f8c71e3e9cdd8d85959ed06b1436572a20b6d27756e4bbf84dc4c45bc7ef9c32473cd2ba04aa60302047c435bb500673065023069bbeb3e61017ab71bbb7ed5403009ac857a6f0a7dd9762328ac840673202f455a4ef5cda0778eb0fcf78524e8efcfd8023100f1406225bbd40aa9b2b1bf160a2b16950e65118021a4bd005eb25758ca386900612e07d84a8566c8ed6163419214c3860302047c435bb500673065023100e2a34523d2f0a2b5639da450975a92982b15aec220155252a5a99c868f90b3158b102db7774466cf0f2b7067fb6e143202307795088fcca5313821d06dcd107d27a89fd3d3c5dd5bf51600da7edd003d63e7bddfef52bf59ba3cf5731ae7b3bbd1240302047c435bb50067306502306e6acfd98ab096064f55edba1f4c6f601b088b0d42ba4627f2fab3c70ce9f609f60cebbfaa56a0027fa3d886af3869cd023100c9df57e41df2b2205c44baa1e9beb8d3c702fa85215eddfeba2de9db35dfd6e6a5b2ca976df8da2bd86c91e209be56810302047c435bb500673065023044f624ae9b9f762ae9071ee6d5aa62ef08202d5b24dc05127227b8459e8d4d3b27baf98eaf56c5e0fcc913f949c09478023100ec369ebea98608dba3facdf9306f0729384a683c52e86556f9c19e449aace69e95b3792e2e2b74a047fb30a23240154c0302047c435bb5006830660231008eda69d8bbc6cb3b3ab6eeedcd019cf14a3ecc5a92cb31e034b924c74735187b686b82ad3018a4628643731da6f4a6d502310081cb864f074bda90e563dfc2fd913c854628b750e2aa8ba87a44f6f8f658fff94f3ea96b08a938a0d5334099bd00894a0302047c435bb500673065023064714a2b441fe6c327e93ff190e8ecdeb5fd6313b33f8ddbe99ef7e74e795ae3d636bbe9fa70ce1ea20697823ac4763a023100ebfe78240775ed365bcd83dbd253ae5d142c6e9164c42769ae24c0e2239798592567762145493829db1dac7ed8c1121d0302047c435bb500663064023067db43b5c8f3434d33dd2b0bcb48cd5c047066b927acb32d093a98de3a78a218f7362b6c0350c6b482977613dab2ff6402301a88aec6f1407af46e8281b175ffa8046305ee4a2217306ba24d163592448af6ae7bdd8b6c6640b13c6d4a67998625e50302047c435bb5006730650230378494f62736ac863e09d8720805cc6a1d5aa398deda44ae02f31885b73b4efdcebc0632bf5c0f5a0afce2eae4f1d484023100f7263b4ea8bddba0c3ca1b441a4dba6304cc541c9b70eae93ab0dcf9cf19f212a637dac2cc07e02bf7922a8d392eb8540302047c435bb500683066023100ef050192892f82e142744931d300fff3ed7873f02acbb1df149620ca9624949264068fe5d2876ec8e7d4b5e96f15854c0231009bfb0459ad08451f68956d0b9e73f16830bc0fd7b39df30031d91620780c018dc78268c1b31df26a27b3c24c64288c6a0302047c435bb500683066023100cc1d29d18881e0b70a0d20ad9b4076234aa846d251e7600a9033c4702a40d2cf0f081c2f510bd8e1bc4da7ded9fc6519023100b3378316c3a34618ec7705b287a3718b0a95f4940beb72ca603444f570244dfe94de1a986c5b8a6d749b9f044380a6510302047c435bb500673065023047b8478df4dabbd2143969115aeeb88938aef9a767c4a56680950bdf50ee60779c60fed41fb4338b732996adad91e9ef023100980662569bc47b6131a857b9a742bb0e6ef3df9a13a6dc097740a1905a1abf2942f2890af9c7db52856d58ffa2c4b8340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d7753921bd6543277a3821692928dc750269031653d6ec67ff13f43311ac71e0c7693e16d8057aa4b06a45d62bfc0541023011b401199c25b0bf8fcf4b467cbc9411d40cceef6f97336c0992b9a2f9f3e7dabca31718471852ffe7fd8d01945b71200302047c435bb500673065023100cd080ed3835335a9ad96dd713fd3b7824a01760d2a98bdcbe827b7da871114a506be43afe81206ae874c3fd874e2563502304c3cf9444e6f142fdc7276300c27af910864391a10a28d95d706ec2c27f2a6a8e1e739ca8b39b3a81326155bc37d434c0302047c435bb50067306502303a8a83f27544fdfc50dddd85b9c43dfa2513297acd88427a999ec6ebb2c75260a554268ea6df51541509385387af763e023100bd96558c48cfbc4d36977b2b87921400b5a2ae551438fba7bc77b2ae5585edc2538326562409aeb3496d1dfa086bfdce0302047c435bb500683066023100f46877116b0115f3dc0b33f9f7d04707ae94b7a3700536051c79c79e4623d2285754154c8f96e0434f1dd6c4a48a03fa023100afdfe74002ca5ac833b6e9706332d3e016643eca1a11ecfba66391921e23632a22d33dd0c42326501279241c0808c37f0302047c435bb500683066023100e20c5e69f6cae64179a9faa456f0e386afc3b7530449bfa2a5b400ef08e16638100e2795dd4cf91628711ea10f18d803023100efd3b1b07580a053d8a2dc822555cec0ead57ae6f03a1844d7346d73d01d2921b98031415206bac39d0d1793a7d895960302047c435bb500673065023100c9ae57a6a9a51aff0d28311554ce0d1070569cc02b2527a77a6c18352fe4b16a04bb461c5854b49e4ce2ce23ba43c82e02301a2ca8876c4c77c669cfe918443ba011aae64a94de4cae46e6d6cff1cddb46477316322348fdf5ead07cdac66d5f73ed0302047c435bb5006730650230010be2d0e081bd7ff956c60570ee8267778fdddb105e6c0469b9c2a890e6f191f4437e7ceadffdc061842bd1e26848d8023100e23c3aaac41fd95561f93370e3e2c8c019af68d9eecda08273dd7aa8901daa1273d163071ee1f08785f3f811a22946360302047c435bb500663064023055fb7018c91309de353ae2f8d863d445df526100015f8a70a4d788bc0d727d0111f39c1c4fbe6cfd8bb7a631f9f6dadf023035b2449a6dde49506523e0046c80a10b2563f20809dc971f4b14e9a451279f5f0b002edbed6505602172ae7a6a80a1a50302047c435bb50067306502307130310981064eccb847b50e0aaf4de94521c7bcfa73d8eafd2849dd7d43df672e0562ee7339ee3668d641b9f5883c6e023100b9ffb5db77437f0b1ff2601a24eb0210e526a6b5b752e6b11b132b7f6e9e41d11ed35c794a87ecbc366f31d116c99c210302047c435bb500673065023100e2430d8cd4026ce50afcbc61cc46f33b622c613a81bd8c0e729c251f809d3667590b2c3f7d80ffebc324bdff2f7f59d1023009d7f608921945d08635aa6a564c2061b60e5253b2f6c4a3753e0905de5399fd712bad232afaca361944a9625b3b8ca50302047c435bb50067306502302323953b1ef78d57199b5d04b12a6bb653ff61fa629f8e4edfac7915b8cb9e00e13150804d3c85dd32a4811bc82a21c9023100c45d6744893f4a900d3ce3d5d9e99d3ce8d56fcfadf980d3cde98a2b52fe543c5720e6813df09a1390a6f2b93e8f2c280302047c435bb500673065023100e8906a231a0513fca8a81dd60d2788b2cb72267a4d47b4756a147bfd9178b77d87e0cf9d06a1d261c55e2baa1dcd0b2102300f10cad1bb1746afa6317b65f36da0b2983d9ee9f633c06d3f369fd83af9a6e5eb4e64a3e04b8c64bfd22702890599250302047c435bb500683066023100e2462d398c53afcb41e1e50b7994ed6dd4039104613d5f49046cf1e2c939f5a15f88a439b5aa12b420b4e9cf41ef7e0b023100daed4b59350310db534f94354d94b8f2c01093370f961c5a9ce28f69a24bfaa256a5f16b88f84ec7d66571949c38eecc0302047c435bb5006830660231009cdd5fa18dc3685c1ac79d773761d36cb9c139da35a00bba575c4bbec8287dadd339341f7f2aba2387ae866a61455bb90231009d34d4d852bb2cf6bb8ecb75613806282913a0aad84da6d90736eb5557bbebb9ee9c12727a9ffbeed27a94ce8ba9e13f0302047c435bb500673065023019c0726b75b2230249540890b49abafda25bdcdf909c4e139806567f010bbe9ea393e3bee82b4335fef6e160d13016170231009f1f24a9c44db981ecd19cbad0132cabd6b4d3808bf7775e9014ea588237a67b31d5736f4f74bafdbb8568002d0866e90302047c435bb50066306402301fdccbdd7b5e58a27a889230b98e7cfd5ef001808f9bb031b46813d7ab93f5e526e7753dd95dc6c6ce85edcfddfedcc10230256151e179403068da95bb3d8833a8d5268589865548d9ae502bcb39e64469f0d75ee38fc365f42a625786f01aee20aa0302047c435bb50066306402300e308c8359280f13f15dbf21d68b2792e84f637095f64443aa1d3511008b38a23b29cdab74941ff7ae75552064626d2702306a680de51fe7202f331443e77ccf07e63a034153d24005730c6b79d2e999ab1fe7f45b6bf82bb4e52e196d429ddeea7e0302047c435bb5006730650230619bed9e82014cfbf3aebd040995d46f334d3f0ad91bfaa479dd77cf3c92998cfab4006dcf05efd8a1c3d2809dbbfc8e023100d0f0cadb6f25e622fa2efd5cea004f4a26d14c2a0ccedeafd2324c3eb6bc25076cf8760b4c0a24be9702f08dba9e219d0302047c435bb5006730650231008851eb84b6f1dbac7fc859dee2e8dfd3249674712f50ee6e9ef07a264537dfb4c8fad8de4e5ed903905bd6e92d10648102300c83edece46ced263284e0f6a778d165113fbc2dc146ee75513d5dd862ff61b480f90aed1d9a09133f098e812d5e82b70302047c435bb500673065023033a8928cc8325a98d09b1d723fa5f6e901dfd5180607c4825061c34e0f7b0153bf4b8517ece492408e9c93efd1f155e6023100f25ae2e9cdda01bb4e7b38f8cbf157728e22f2137c873a3e80c073ca11438fb283b0c8409464041d41b1d726425b8b850302047c435bb500673065023100f4126cd9ec284bd1e8e65b90846ddc18892747845a1dadd8bc0c626e086712c4100d0e89e2b6ef0919e146b764444cb002301a864600f0a71ba8d389cfddeb607c27c9b4446eaa55742201e4cc95f87cc91ca30fd7c85a2a0d649394bc2272def98b0302047c435bb500663064023000bd3d222e2a467a897b2e299dd76e77d3b885c13b0ed697f7152319cdb302515d7d10a2e18f508eed9bd976c9503e9102300dc68074646828c62da4b0d60e766f631a29310cf83d786628f6fd60dc69197bf9797df3018ca8e4db772385c51b9b400302047c435bb500673065023100d7c709721da9a3b6b393e31a0e133b57622c4bd2535fe0cfe7a500c90da35eb570dca0d71f87c10a277114c85be8837702300a5c0b85f7741114f3a4dd025442533166729304557e90e4cb53b46f42c7d8876dfa6e10bf0d0d80101319f6967ccabd0302047c435bb500673065023031f6a1c7fd8a276ec0e732691eb2830b2131830e2da3421bf1b9d31874378bcff4591f69c2169eb39e249e82647a37d90231009465ab79dc4475dd3a2ece8edb416e19504ea541d4ef5153d59cd102d09297a57f015127e10f32ccef7e677eb0e644a50302047c435bb500663064023046e1abaa0e31d81e3e4e245556c253541a71a761f2b92b42d55f3c816fbc2b7a2d6233a485efe67e089589f8c8fa9ea502304b1173ad59058590eadb1385100d40a1c2b40e0ae127c60b998bc8fdec233a9af11d150b73a3c6a1bfdce5b502f6b9740302047c435bb50067306502304d5450a4105ee95524e8fe5c21f8fcc47c3049bce0dc590d06bc3dec5620546d99370e8059bcc63ea5e80947a10928f5023100fb4853a56dfbf4239e9229ab09e4c542259286d5764b3f729bd4aa19d59416a169f9a51dbafe55bc66819cf0c21149ff0302047c435bb5006730650230626b72a97ae7634144422ab36af8e04b8e49dd8657ae8d9e48f9c8488271965296f2262f7dada74c93775060e1e07787023100dccb48cef995e6ea000c337877b63a4838fd905c0d7fe6bed339e77e8164c0ad23a5879c275941ba3098a274ba50aad80302047c435bb50066306402300933d674d45a63cff59dc4a57ae17450a57f6381d733c0b746b4652d1df7330441f08125e3fa34e409fd7f22791e50b402300b33cf221932eaf906e4daf6595152cdb7a2b76ec386ef84c466d5f75532e2c665056f3ce51f8dfe7e3aaddaa53d13610302047c435bb500663064023025218d947377d49e2a68fbb8786d07198989b630f49d799b259ffd151ec048370cf101b6e786b56c62cda7dc83660c550230771207e399e916f1ff4f1c7f4119eeb2c9d3609341bd87f38c4866d2fe26964ab83b500d99181dca54fe58313dc66c4e0302047c435bb50067306502303550a4083bb7d415a0159d2885bc25b30a57d376a864325c60f336090ebd41bd71711ab3d507b5f36311adc1ef6779e3023100bda0b5c117dd7b95ea2a0f7dfb2fa560330c0703584e98489450d940eb8ddf4d240bcf96f71dfc5a6c51a00950a366550302047c435bb5006630640230324b88fccbef824ca53e58c79ba1fd7f48b21b79c288379d361830808346f32c7bd00be409bbddb1f3ecde6a8278d14b023046987080b0fbf926b61e8bbb60749644528eb119bffae9c479e9e3abfe85d896db2add764020c45efedeb6987149a3e00302047c435bb500663064023078a4bcfa8bbdaeaf5f743412cacc2a6e6e3574d0b65778001b75f18aea50d201e30178e9e95305be1837cdd97f96526b023024e977b5aa9ea9e231b629b927adabcc667eaccb74f45af80c9b6ca8aceb03d5765543cca6ac20c2bd31d398ecbc45b50302047c435bb50067306502302752e9f2348ac8338ae8746cabec63cb7eaaed0ddcad6223a828ea3bb9e10a7c4882feb9d9470ff2d9fd6bc8af631906023100a5cec19873175e6d9e99afc16c943c11d598f22492947b6b8498fd58938d7426433ad7758ac024d745558087080e15c50302047c435bb500663064023019cd2d91466ad927dd749dc4bb45034df95ab8d3ea6e49505e96370983f242bfc707a6a2e13270b85e7abeb1c1f22daa02307b33aea7b8902b003e54b9ef5e03b29fe03d0b6184bd34cc6de290ed7c551ebdff9df1e325e321737021325aad27cfa00302047c435bb50067306502310099b248ccc874c36422449aedfc601e95c0f9da454fc5ccb1172240431a0af3aeab1ea5fae442e88268d02f4ebb4be36202301bda24bc6e4bb193d22037be215044c909b2d2ddacd8184384dc3dbbb63ce153ef55202731bd95a83b1cede644d55fee0302047c435bb50067306502300f39876fd598ecfee6106ff6f8a1ba039c0fee5227734b409c9df8ad94015d6cbdc8d955a0ce65edf8f0664b47f62cdc023100ccbfe55281f1d1012e18a2adc13782cc93b658fb09b933a2b7aede92ff925b40fd48f126bf4d6ca5fe7a72a2372bb1e30302047c435bb50066306402302119eb655ae36bee54f89ce9d8cb06818ecb9fa97d5c0825156f74418368c22c4342efdda9e624de474953acfdbce1b4023049479cde9fe866a2d0e9988313d1adb155d83f543bb3936bfe4e9646be592e1b9f20ccfc386564b24382542f50ea777e0302047c435bb50067306502303f975c36dff88a2604c3e7be6081a1d039d567da026d337e3840dcd89b462fd545a9b9d2a72f83de323b0abfb5c1cd80023100c2ba80908e9251bd883e8aa7cd7fcf0b5a5590a92b7e08b076fa92d674be3c29fd7c1e42c4d1e464c35ca9bc1092e5830302047c435bb5006730650231009f2fbc0ebdbd6778897058d99de8e88ff4bd4f949ca94ff25674fd191ee6a98bc60a11f3140395fe11dc357eb5f0e93f02300a0a4af581520287d59b5737e82f6eef13ae4073a4300292bc3f402ce87b6ad27e6d5de364b9b0e8edd460d9dc7ca05d0302047c435bb500683066023100a6fa7f9230c4b538c7cd14b43ee906971c6895181aed3f0e38f4543d4d2c555b72415eca4129657032c2efbc8a9688aa023100d8a606ca2dcab36f41b9b0179c8974deef4f8e398d34f4d82a1dc00fe47af5faffc13df67011978c74bc908e28426d240302047c435bb500683066023100fa6871676338c906c7debb3a79965d7b86e21c6b788fb5cad6c06c43b1a705ae434178feb86bc57812bec825c45ab833023100f6fc520b57048982938c4a6192d0686df219a7e5498c7111a33030b83ec3f2063d22a85dd2d7afdf9237e7bfe27b3c6a0302047c435bb500673065023100b249738421765c2a74650a9d9ddf0127ef63c050b54105f1d228c942506d662d8c85475b2142591d64d776768af90d6102307012bdae3bef22da8b5dc3bdd6056793b0aa6ead33622eb797cfc5ddcf54a8b06e017debd59fc46155a247c66afa8d5d0302047c435bb50067306502307465f733a8307d843f05600a465138cc644e6d0ce5f3143bf5f88d36b755ae9ea788930118a5a7f152df3f1c52a301a3023100a9fa76306a2167302d4c398d3aa2cef15a5b77159f0f2c308092ef987bada7b92436309d284952238c1eb903dd86f4390302047c435bb500673065023100dc0e37784bbdcefd83a1d458b010b78099d9194909f19767ff0a32551dd10d8c49219b0f0e7ca4559e0c67f3bdf3808e02306f06c3a45ef3d2304753c537e28e9c076e98154e404a0e611c05408380589cef2827f345c54321c7e62083aec4d4af080302047c435bb500673065023036cd3e23d9a31f7c84c9a41efe76c059900912df0d0d30ad78e2e04b7faa5bc41329ac307f97a94359dfd039550ea29a023100bc358c97d03cceb9224655346e9617bf9ff84c79ea22e4b37ecb41a01941d8ac2fb9c1f564fa61061f882ce409c1e77d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c00ef0f6b779b8f363662f1d29338f74d00706f2b6c90f3cd64433c4ba679e7222bdd5d7230e0c77abee349ae1f0ae5023077d7d56c7b1a27845aa610dea37e5d37f022acd9d47595fb644d589e4fe9542afaf903c8827c55f85521d7210fc488ab0302047c435bb5006730650230272ac13b2168f85e25636ca399c7b3cb0e99ea24fb9270cd3e2d1cd8223d090e2207e7cbdb9801a44881918b455619ca023100ed7f181eb43373d54e1b9c839d0f11f489f2d63ed83146a1bc0c87f2dfb6a55e7227a97ce6161303a631e76068fb377d0302047c435bb500673065023100e0cc9e34abb00ccca9cf35e189a123347c38999c548d74b107621a79520a4d2de723f8adfa43898885526da43f22eeeb023036b6bfedff5fb4929817d5f0dc866bd47e2a76f181f40c20cc90501b87de8fab9952edc1e447957ab3e09419656e226f0302047c435bb500673065023100c5e8f79df14d125afbae89f02ac2995f67cc135537c4c0dece3c6f146dcafca784e6a54db0e3f760235f8b4d1e60581402307c4f52daceebea74808b87bc78cf92a44d570f2807247b836acf9f674a52141cfbde5376f4c765014191660f380b28ef0302047c435bb500673065023100867d5a2a5fd22cc7cc71340cdf8836f2b7b73ba8be0f26012da67bbc2353655268ae55d79624a2cd72082179f1787928023027eafc061770ad2ced9e5a6b8ba3fa7d14760648bfde88d9ed93dc7718eb5e5cc8d9dff87d89a05b991a0058501c8f600302047c435bb500663064023039d21665332220dc50ba8fe184c153928980252577f95d156b52140ead905bf58b5ba966966b7791305834dd81374ad10230550cb58ad77fc4ec5969dcebb5dbca87dd3f8acda917746d373c45de4479888b2fbd729a8a2e45e7a12cb87a63b747e40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023018a1a2b7304bf0528c81ff98073bf3e2c3308f3df722fda28b50d1c6b2c7743486f9a83f5027ee9c86ef19724f72565202302c6664e7a233d0960972b3abd7d0fb30a4f82e765852b1eb6b4c868fc1f1c1dcc0c5fc22301cd131694d06f6e80bc8330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ef06477c871e1d430dec3290a452c1078367e9317e3098e384e11e591e7b5511bd823ef0c941cab17e592752aacabe8802310091d9e0f2d7381834aba0cdac49c80fa9d65eea02b3de63e40b7d24ee03eed94d07511284dcb4d1ce14c9f58e7cac604f0302047c435bb5006630640230290ddc9a0845a02ed4a4b3ba16274e2b4122d9018df2e83ba9c29015ac5ad791e0a47bdda9fcb002af6ca890fb8c0d2b02302dc7f3dbcdda99a8c4481c081dbbe511cc90f6e903e1ba390b71ffef04a002ff1af2494baed145d643b143fe2565e4280302047c435bb500673065023100f7b649c651f2da6e2668f24fc8dba9e115db86339932cd1f0d25672fc68d586af73a1eb6f059f16835e56c59b382282702301ef0be2dd06f8f57597648ddddeb163091651b642acbf21842337bb64e4f77bdb4b4f9298885ba831a27ff38efa231ef0302047c435bb500673065023014727639697be9c87c2ca61b3a9b290fed28cfb8d8ffcdae8ace36b77d948afbad5ce33e2fcdf10b19d50794383d0ce2023100b10274e77791d243695f25a2f5b80b5cacd994063593c9d35d7f2f06649b0ce6c11f9c89c0e3243d71a9aaefd37fe51e0302047c435bb5006730650231008d7a2b59c720be118ab7e43b0e67aa4474aa7b897824927057bafd268abb36c1b8b709373b19ab1aab3b7b2044af69e702304fd4cf59dbff071998f89fc3b522b9dcf92924c1d92105855e6199718150963e890aab23d29693ff79667c2ddee6fdff0302047c435bb500683066023100961ee1979c62a4bc3c9907f0da3759480724bafd3a90803ff585d4359640c7a804afb3fdfe992199bcc59a6b296ede98023100c0ffdfd8db7dc8d12c38b2d06988dd50317f5bf20a554e1116cb68506695942911939bb6f198e9fc6c6fa6257a080ab80302047c435bb500673065023100ed17102d6122a0573d37bf12cba332ee2490260bf2594c590b074493f2af7506ef98bd204a5ded6e0e8a0e6ff7c4dfb6023068af952e0c229191d33548fcc570d993b829a815ae1e7abd8d258e56467a2cc6479d94324b74de917f7d291926cf14350302047c435bb5006830660231009146c288a69af43b59ee72ecd20f76900c10f0bb3e81ea7829939c481dbe3c675046efdbe0b3a9347dfabc41b9c28adf023100c6a71b14c4be60ecae333f6da82f4e905287a2baa1f8a87c4ea18eb8bce11491f13dbd1af280589c9697fa3a6d7b7f0a0302047c435bb50067306502304286c306e119b1ce28b9c4e1313745c3dceaf8ffeda4b14189f866a79f68749f77a2c7d84cc4f59520de721760dfd866023100d409f254b8dbd2c5971aa08e62d83c756dc3adb8e5c1fb6ae7c53f891220717ae71ea7a94ecc0dbfdb3cd7695468bb2a0302047c435bb50067306502302df3299ca73c2ca6b5eea7494528390f894f5be6ec33d33fa9acb0afa9f304e025218b3381890a5491139c999523195c023100bb5faecc393bd6fb9393aa052cf01ebb0d4972c60f644b9084464a0efeb2729d88d020a851008cde34036adb4b31e5ad0302047c435bb5006730650230116c0aa237656a6335454a0ae2e07b90f637036f0ac81428f60b090e861f8128191f00657fb895b37df04a78373c3907023100f74c785ff797c373e09351822e859b086b4ddc48083e89b2be815887928e23f4a3effa5a32c2c7f7b207c51e1b4c4bdc0302047c435bb500683066023100bfe7487e0ba93721205141f5ac2c13ca8fb4956fcaf81f86de324d115e618add125ac014c21d88aed2bf75521efe7ebc023100d2f1402cd19ef03a52d344f67188be79d35b53fab4776cd82022089f1d2d239abbc67cfeb0f518724ec346d49303a07d0302047c435bb500663064023012007f07c860c7b64021de2d0a9c14d5ff86ae8fd8c2cba92ea6374680792e4abc2855db94128565330e851afe18f35002303bb09fb396ed2dbb401d9999546a33ffa05ea0eefe3f454ece1a68e5bc65ee2da1ca691417fcc8f256defbe29b0ab95b0302047c435bb500673065023100db509918572dcaf239e7e5b0b1f2dbf1d2f2ca99ac5cd08839a8169bf5f1ee42da2345f0bdd5482a2de32c83d3f26d5202303352ea1f6cb38e5b42ca975a92302fd7b6fb0c84c35dc6f27991818f7951329625523894841b5e5264c4e096e672d28c0302047c435bb5006730650230769d10b0e9a08a54390891ebac16206c0caa7d5d23b1fc8e473e2d5693a5e401d7039b185baf755449d0424226107715023100ee43c5be5d3bd0bb5647027c315418bb254f1abdb7a9ac8e08d5e657686c3657a094d4c189cc12250b32c56451129e4c0302047c435bb500673065023100cdb7b058d3b4954d0d1bf9a3c8b0c57ddece95a9d9f4bcb94a2b06d139e63ff41d7577f6f6d996b8f991411d816c13020230412844e771d8ccfeba2a75d760988f9db6b174a84b507cf2bc941a90d09169398b2cd9c417b532ebd6afb02045da4a140302047c435bb500673065023042b31cd4d7b3a58c0ffafc869e8c6896314db7b8d83847f04ee846bf6efe0f13030705c66df61a0a26be0df1d80f2ccb023100b5081d317d5677c43beeaba168c460990e66735befc0c9f26b6c3a51924cc455d45b6d9e9c80fc2777c38651fe9037000302047c435bb50067306502302af9740de9e0e279ee180175b0630f2fa339d3beef7d881cd6d4d51fb9e840b54c7f7e8762c2abe4a842f4048d617046023100cf5a054135ca832a72164128cdc9596590cf3f79059e614dd6775f8c08dfb0a3848a9a45e7e492a4406d1de30723e5a00302047c435bb500673065023100a41a115b47327ab79bb103070b8307306aa643708feba0756ce6037e85c9710df957f8a021a508190b67126f50d838d7023073626269a4e8a158deeaa70dbcfc1560ee9e2837ba3641b89ca3f861bbee321ed939271cbfc4ee63d45a4089a3d56c030302047c435bb5006730650231008f2a7dad79b3acceccf2a2890731728874c23c1d18273f3c158a9bb8b4ddbf954ca76fa8415cb9381fdeca876f9ac49402307206e0c39db29bf5ae1b90b97d1a18a8dff88daf51cf274709eba54207d694ee3e321c02b53eda513b2c349cfa013eff0302047c435bb500683066023100863c5c16cebca2283a88ac92634d6590d9afb891578406029a8aa3d9927c916fedcd6e7f02a52de8e354bb2e4b4dd83a02310081cd4867b74508e4aaffda333910438ff1f425527f799e04fe9401bafee443971d482381df7499b51cc643a9a83e93ac0302047c435bb500673065023048b5e8eaa1a7034e9dce884ba7e01a9f85b4f144f71d7d9673d1557240346cd98247f109c5669772d9bf9b8e8c1e832f023100e7340cd7222bb55e92aac78b468522b1acd834158181b89c38892c5387891956602cfac285d43817e880f6f7dea813390302047c435bb500673065023100a64eb9f416bd2cefaf205b5c2f19c387a592d2f8b739699a374bc224faa5f271c7929092b990161b48abfa18529ce0af023011caa958b43eb0507857bd241dc2a6d64f49f96280401ff1aac750bfb5e346e22a22b2817972b8aca541e2fc8799ab940302047c435bb50066306402305aac469ee24c518aa09f475db23220e98444d33baac52bf15e63fc0652f7122fc3a1fccd65caad1d564c8f993d4bcb2c02306df06d5c7166d8fb25f5071fb1d63ea8e2bdddf595793d9078a6a57ede4c14de41c9e18cba65d285cf639611354d30290302047c435bb500673065023100b9227bbf7a1bf65b80115f6a4b9cdaed792f5670c4856d04803e828f2dcd59997a24e1caf875983b1a2e8c989011b8fa023052e89a7ecdc1448e81f476a19bd511340b0996a636c6323bb66630d613ae112de23c918ab3687fa0fefec29137034f100302047c435bb500683066023100c87df2439e73420c12d225161f65686c8ffb8e7480fe7bb57a5226c10b30b47f8a431b88fd212d7d07441a39443fc7870231009423fe6bfc43e6ba100ece88adf4d2bc93c3cb9e50a078e1567ad8515981e442cd99134244e3bb772e020cc61d6403120302047c435bb500673065023100a262cb288b48be0cf9dd0273f15b28a9bbfcfa9654e6f0f2db03f833f0266f85da671f3f2b61bae7fbe87d8a3e9ace61023006f8dc6d2190308507c25f2f26dff3ed58aefecdecc91b4ed7d3249beb7236fac6315de8791ff39955a1a28c2b77eb290302047c435bb5006730650231008e47c1398e164c253a15cc63cffe58931cd8a02f2cfc58787d7510f55cbb9ef917d3e076b9c6a0c33ee296dbcf9fa086023050d6c5aafa42cb77d461560b819f5b2bca7815a5fb02e09cc7122ceccab82feef50cf3d7b02c7a1cfee52973f2a8da040302047c435bb500673065023100b549f794c89a4b51a93ee8508af5ee85a5464214448aef3c0d479febdc0997ef359f6b7b4b91b1acf84fd31c689b160a02301dca1368f4f1a193cca706dbedc7e681f9b74ce3107ea44e11d98f3d4c67fdc13adbef7617a6c6b62d47a4f758a604cf0302047c435bb500673065023100b93070c473a4c085eac24cce9999854eee11cef69bc1c3e3033635cce410aa77497f99f29eeb2db91d111b987ccff4ca0230453d26edf3f30f88ff5eb7c15ee6b77ebf404b82d2bf2559a199d3e03ee19804f58ad21e4c61a8a3bc61c8c92bcec0310302047c435bb500673065023008288dd6e239e90d6e343b09ed82d1f784e4318ac10e9e2947e094e5aef9080d0a403b260a7551fc9adcea6a57011e5f023100e308800e05e1a414dbbfd18f93a29ffb1fbfddc50d4479b1a9c751ba1a9738cd0b01290cba5a201b333dcf553e352f4e0302047c435bb50067306502304204e3fc75a9a831ab1981ddbd899814307024153da200d6de5cd09e1c84180233f5e0373f13ffc7df82bdbb41219baf023100a746ba5c769889938d82e51d914b6340814c4a137a98ea1b89292469189b6ce95001875eee6cfe4a87f303aaacc9933f0302047c435bb500683066023100fb38ab756a10a51f1933319bb5a3e0ed268f0b613734940756b1b4f6708f9658a99eca76c3044da7118fa20a726be956023100cb6a4723dcdb6e6f64910e060e37415cbca0eb16f7ce2a5e0d3a413dfa7b4465c06170662d70b0627e9fca7dc2dbce140302047c435bb500683066023100f53a8eb36d2ec7a21c96f4e96b76e6cc2e1d90767d9be768c361112058700d8d1487c88ddd196d4e2414cc3ae3afb0ac023100c5115e6b0cffd4a53c8d88d14a7701f2996fb763035ef71eec428bcb8ce6e709ffcfefb444833240a361bc5b8b9adf910302047c435bb5006730650231008d86e3d5419b310286a646fbd1fa3976659368db086020695e626d56f22ba0189b2c706a1152b824996f7d6f4cf582ea0230508561406556980a95835894595c52708cfd5f36198ee6cf5dfd82fe9d13a01719bc09c7a498a47f02e27cf11ac963cf0302047c435bb500663064023100e51120af3d9f35d1729739448a16955b7e8f42eb16ab8a4c4d538599824d00ba2a99184c85f8bb1cffeb35b165c3fa18022f311fb0a73dbb7b2834a2fea57cde6bf0e62ea339b7b50713f7652c02265b8fa559245aa7ede05cbd3a0562d7d70f170302047c435bb500683066023100d2a7d704b72de0c799c786bc940c5371d60699475fcc72b493572a81defad476371a9346be031946e078b5a467c3366f023100d77676f34e6f874f9cb18d088b0639f525b7150e10d4d47935e3e86e4a68fd4438f39a425f849cf3c66416060f523aa60302047c435bb50066306402301ddef9f1d4e8782763bb743ac96ac96df2cbf7d3bc5b1823aa3bbbf313953b9cf97f4e9dcafe736cbcc6dbd97ccb686002303ff9cdfd86eb5ad0b355864647060c1fb54f78adc9aaeee3c088185ae0ccae56a7b5e2426278a9fedaa76a7bdb4f18e10302047c435bb50067306502303aaadd83ed271ed3659a879530c699adaed2f2d9136e7d639ab26c58dfbcb3d6dac3e529287223d2210882844196cf1f023100edfc5687f9d1c6e90a67d8dfb2ff4562fe0532b3e1a1f9de39d58d9519beed738e4054b213e1e591a7b026045f090a010302047c435bb500663064023073534845b8f50989c6104a14eafa05562c57ae3170c9768002ce4ff64778e51d23ce468362ed2940956fd42bd4070e5302306b9337d5211298ff53cbd0422c7da384f9a9b86c8de7fc9b1997e29a1af8da8145d206ac52cf5c450d0ab6d6598472e50302047c435bb50066306402302b9be2d774f59ab43ddb800519bb48bd8bfe9d6283feb31d376d6de127ed4c2f6e41f450d813f814d856f5aa23eae7ef02305653cea0fdd54d6f7d3f166ed26bfcbeeccd54cf9dc5d0e8502e357fef8e9df7f09a719213dbc5349361192ab9a6ca0e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f461baff4b4fc6f2dfe2f78d9ef114858851f1afe49ecf1b0db072de6718064872077ba97dc3ef239c2956e091675487023024f1a758fe53242d01fe42618e739bffc88ff493e31ed4ccd6b4c1b73b59bbaddf9ca5608c4f72a946fcb0c5b4b11afa0302047c435bb500683066023100a0a8320d1b67ed0bb734565ddd12f0a73d3d7ce469760693c2db4e3ec2f9678bd73a94a8151397011f9b35948ada2325023100ef4cdb0ab76fa0cad4d8ca7b04d7f349f2bfa2aef0b901fb5c5510250eb720ce5d4cf69f7fc1345f1348f626fcf6a38c0302047c435bb500663064023008df1822eb959c071294878b63f854c81ce33fedd6ba7511ee1bcaaec9ac238cbafc76bd1f582c3bc6377554c285cc760230160fb8cec3404148f3365aef9d4eae14d1b378e84493fd65f6f14ab1be7406e6b3ba1d01ba293d2cc8d76390535f3dcd0302047c435bb500673065023100ad129df6e08bb67fa742390e0d2368c17da7db1fd6ee0186e214baddb594ea2c3bba797440863a5b70a3239804161230023017bc45605b2c3fed2b4872ebf019196a0723b2b2fcca1fd20087e9783e3c7b78234ee0d4dfc9c832c12f5c8deee59c860302047c435bb50067306502300869522108c979438940016f0b4aa107cf86b8c7f406c237db0f64460bbc337b8fb29f21cf3db553ea09a421c4c1f1d8023100d9049963d6ae1397a5c3f8806eafb88b132a01fa25f5890335656df136415b275e39c2f0c9418ecbd3da069631f2eb9d0302047c435bb500683066023100df603816553e767c2c644acbb7d451fbc033c7845674a9b707300a7fa125fadd22961adf4da25c34b5103f7e50ae7b2a023100bbaf334ac86d0e53c5e776db2a15f86f36598da1bce0369c92e27a8b0e60a79357f1353f268354a0b1721c803f579ad90302047c435bb5006630640230117a6df6ccc64e1a6af14aed022fbd3bef68540ab40b5580e879e659c70e845c87e9d030f11729ad3a2f71b35fa5191602302870c63621e8d55b40bf94b8933f0c6ce4d7596439737f659401ff2c8660fbcbd91db67d1c9bd318c726b77da2c5da410302047c435bb500673065023100cd20d3ec40a0a3c9841fc32cb12549a130e7bc173c379b2f65ca72bf83bd6546dce23b18aea4c3ca62b409391e77f99b023034d9d86f52519aa0d3c234a933268e3bbce6711fe947c81dfaf2c0c18f8600c26a1ffda7cf75c20974559173ac8da1250302047c435bb500663064023030c55a76a3c8727afa141501d93b47d1803b4a5e7826f7cc3477d967d545f45b51f27f63d2e61f0da874c7a79ca1a778023068fefd04cdbdf19b5216fedb13c281e379635019af75afdf07f076688b02f16f336bad674fa343c32fdf86e25bd241d80302047c435bb500663064023071c16398d1c7d15669e46ffa2f59cee9b3d13ca1492575559b233010f439b415f4c7b23fdff5f91b0dab48e5cc8517440230450bb9d96253dbba8932bcc69e1da0149b0dca53a641bd2776451f4997468b32899386f95c5bd2dedb7c8f0017e35c130302047c435bb500673065023100ade1215416a40702b835b69fa120f107871eae069332ff594d7b879f3962f09064e14097b3250d02915a1268514d59ce023036943629b74d953cc7b86f2f289ba5d85f4598e0c5f2065ffb248ece684c59e7ccc7cb799ee7e2c3e23e1e9d0eb7fff50302047c435bb500663064023073b7e4aee711e88a3b9afca303be6283a1c79f2cd968bd09416e402d91f0f0340331600ec0de694a364d47b49f679f7402305fe4f68f6430a3afbb504151f6e3f1e9c113a9a71c736aa5abcd7a2ea8a5b371e09c3b3c692b9800db5da8fd27f756a10302047c435bb5006630640230633f7ab25df3a86ad8d1b1a4ef5a150cb49878cde7c2ade59495db583c9c8d028f134333c2e9b0713cb2a8b30b208b8e023017f98fe8372f3549afd92fe784036766a4c9fd944451501c290f99bf4672e1847f13f131814a55148110e71ec3cc56060302047c435bb500683066023100b979b57bc0d1e8d01c7e612cf767e7ebdc597c5f662f125d3a44177b89113edef7d8ae3d999e8430e682908660cffeab0231009b51822903ae377e3dc9e35e186db24db485822ed46fbba1ad1b54a20b4ea40458343d6b871fc4c748c9e8e03002d8b00302047c435bb500673065023100ea83640f9ed244cd4039b77097539084612de7ad26833604b511eba713ccff8f242dbfd77e749fd7a8886a66a836b800023037d798b5f4b9c1de3311e65c777bab925b12e87cda4b3c47211ed7af0c2d60130a4ab8b70419b5aa91d7cb5d33c9465f0302047c435bb5006730650231009a0bba6f7ce85e9be8e4fc56122f0fb45cfe3cfdc61f68b34acef35371eb243dec44cd05d3c0b31a28642e1ceec96a000230529b1ce8ad57511678c8cfb4a11f6add2ab4bf8a559239066877adebacd45f20c994ffe2a0f19536e8877d60536989640302047c435bb50067306502300c272fe5e8fbb2634ba78164a11db6c50ac878922d5f514e49e11975bb62e2008229e9f75c353f431923e8389d5568f1023100cf62f79668023ca1ba583007a7cd63b4efa3315864bea212078e640ed09e96566ac1763143b9c19324c4d84f94f303c00302047c435bb50066306402300fa0ff4ff4b999ccbfeb4ead15ad80eec4199636d7593313da56683cd886b59a00a93d5eb8bdc1b6f05d734b121b87be0230414ad6475fe047d27732e27c303b4a01c343bb2285513405497fb18933f09a6a1fde318b7cad0534526bd728977766dd0302047c435bb5006730650230274977f6018669f40549b6fcb2c82da3104c1c468ab02fbf42ad7712de104033cbb756df91a02fe8a3b4c4adb66b5d97023100c3940218b2d9d2cd0094a18d5408ddc74b73bae8bd6953ee6495cc4d9911c24e03d39b6086d90125ace1b434aabd4ab40302047c435bb500683066023100dd80bc26b1d20634bd18c532dd0c621e2ec407409d6bc6c530ceb936e00bd11498dac123513fbed42ca71d99aa0a2418023100bec7cc13a1c8a75cc7c4a2a8246e76031582df6bc341ebf740a0827ae12c738d777cfc20f6173a6e945710d413be58fc0302047c435bb500683066023100a0622776a146b734cd095440ca0a8c6f1350b265e6ae65acc6279ef3f07b3ece0ee80ad8ac83fbb5da8e4481a2bcc20c023100929b5fd5365281c227cc2e8b6327a492190f326455e53fab41c720eafffddd1ad051b0edcdb14fa8a3f3c9b7792df7d00302047c435bb500673065023100b4d7319f7de6ae68f23b563f769f0dfec6558d6818d7e36da4aad505f7aa38702b9f3350c37d94e184ba9614528e77b7023035cef65bc3ce0cb280d3c7680a3003d210e35a8d2214d6d70928971447f975c248a5aa96b5ada56923ecced8d098199b0302047c435bb50066306402301413c69bd0db7a77598c69873d1dbf86dcf6a3d5ca581c5b13a8c3072eef392fa7bdf41dc79b1fd952cd622a13cbfd4102304658271bd820c3a03830c6aad707e4079a453452dcefd54a91b84001b03c59f7ad7c36aaa0118d2e17f28fa0efee261d0302047c435bb5006630640230399a21987d56b3edb35318f02082b0f824d895312eda9ecd0237c9ad34d007e021f24cefcb489fe6ddb2e470bed9aac202307c904bd55f7a1943381e181947fc4c64ef959ac58baa8a730885965939511703a061717f014601142d0c92a9ae0bae0c0302047c435bb50068306602310095576d456206434293fd22406cf3393c58b870a0e2deaac1c27c5e270744d9444838a9c913b51e4f1544e29694e22914023100fe8284636c9195c1f4f941749f110620ca1aaaaed370afddb031f9d6af905b51143b5a7bef1c30d8af695d14a810e7460302047c435bb50066306402304b521752e19f932c6082a46cd9961f346d221509b26372658b5e3ac04e1503a51c1a4e387bbeae130e0429783d20f83102301b5180e70be79b1238181ef843eadb9298e15e41fcc91a1df67aa05c82695190d3e81f3f980d6527a939604b16c835320302047c435bb50067306502303d9b6d0d1bf0d0733584fb4b9feeb7bb385c408a186ccb965048095f355de1452e5a0f853e390439a968214dbae40c6802310091894d65b29abc388246335bb19bfd6fde96931185366f78f903e9df982a6ee51913e9dfe6d55f1c20c55f5c71ea74d30302047c435bb50067306502303e925f736236325e3ce018e3b00f592e6c24bbd1c040ee72677a24ad62ab4affa2b85acba35a32a353f5ffb581a88f040231009fcbc22f60a49970e22da4a49e348357916eb3b087727f268d107fead5009c280f971c3ba29c48cbae98c2ea685e727a0302047c435bb50066306402305bf5a9a995382180e5d813236568c6bf1c32995d875f659d0de0d610e0401b0cdb49c24d6bc5ffd65c45cb900f58b5f00230763d13777d6299f4b1353fe3db3c65f60852fe1c6e889318708ed349d9a2520c2975d091f3b61a6e2fe932a334cf018f0302047c435bb500673065023100c0c5e6d47cba184df56c98315e70c0b1ceea74712260d6f308931e45c3e983f1bfdb153cbe23ae125c916728c3e4a2690230536c3073744011e4ed68b31df676be1cb7e42defec5f0c6476549ee54d38d0024dfa14465ffc807e7304129c7dc90de80302047c435bb500683066023100978f838cc29a7730a7d8c204929809fe7ead4eee20efd19b9ba8be990f37b2b13c45d1cbf104af7d07471beafdd83cd1023100fdbca350463b3ceb5208e255b8baf551582ace692dc8a41afedc4ddf0e34cb3bf04845026015e59d0c4272233fdc108b0302047c435bb500683066023100eb73b136abc85fba47768b02643e2cb282c7d39ccad19c02bb949790f5d040960d582db4e616dce2e6aa018d5bdacd17023100fdde94fe3d4cd23d51e1e35351d183ba7272e03cec687f434d058c79c27c4ae34dc75451b1c00777b989aebd8bc10d820302047c435bb50066306402301a1e720efb89cfd5360795c6229cc2ff3c1b3cb349d7f81cbe813ab07582625de8ea3205966ea6c983fd46080cdaa31102305b31e66a5ad6f56a8322256ed857b291f0045afa5c3c0175196891d8c8d73ea366c9c25088c5750253784a3968620eb80302047c435bb500683066023100b2730c57ded0b4f7f5cc7c82434f19c230f3da77f2a462b0759f19979d76a1544f33b22a5d03b71078acec533840ab7702310085c6dd550d856d5dfce7d08fc491d7bbcd48dd50652164560d1b333f1ad31e4dbf9d992884929d9b57c2042bc2f202d30302047c435bb500663064022f198295ccf7593bba8a4ae0422973bd1fc9be5bd90e0110d1c65e7f8e54d2a8ae7663f4daf0899a3229cabd7b2680b9023100fb63a239ccacf3fe9d87bb198d23153d3d8f177597292dfaf82eaec7a42080caad160711badcbb42c5ea171717a260d00302047c435bb50067306502303ffd98618a2e73c7a454c42f484e8527074ca0c1529b1ea08d4fed0502ada27446418a2e72df86ba46d57bbc9112d18b023100d80df89df64c4354f47991930e3356993733a6d2cc8238271e42ae1c85ea333bc35303677314d35d003ff447a51a4eff0302047c435bb500673065023100ed39612af821e706fc2cf03f21421e78a37460f04d795fa5897b5c3e883a55ef366212e62703cff68a65c7cf0d77e4b00230572a256d7255aa695779abddf79d730cd2e856f263a6eb54a1fd4783239d6de41b894e42099d9ded025b8e4e6fcd2c7b0302047c435bb50066306402305f42683730787d8c8a8d7a76e2f46100e1fcce7f9133f7cb76d6e48f740bc39e961102f5d9993cd5fc2980fdd9c313930230476ea3de7479de3c86580c6b60e2b8a1237808ba07ad6dd823f66b4c6bc173c01da135b0f4df3685e1474b36dc4d03eb0302047c435bb500663064023017e69e0a28ce50b82c914fc345b4a1892b5f0d15cf840b3eb066fabccbd97858fccf31150b480d301e744f5150d71e760230635baf66b19e650b789a57c058a8eaa2aae319d0f4acb95b170db18087843c1699eb7245c45fc3f6c230cdabd159879e0302047c435bb500683066023100d25f879abd695027f23b75a81a9a686f6365f9bb419be0ead388f04879d8d3bb792aabbb02f8fb6b5afb71e87b6806e3023100ee7ea04602dcace9f712c403d48f79826c78d031dbe0661acc763aee379eb9dd2648a52cb7844f8e3bf588304305eee40302047c435bb50066306402306fe79dea56daec943876dfda59a38ebb73549ee6757a3de5a0cbbbe252f825ae8b215bb0518bed495ed248c76a4354c302307e60fde410501d0742a20853312d0aa048a8c7bf7b9d180da157f65ab3d936ad5f134d505fceecfb6caef586b0a0e8650302047c435bb50067306502310099ac6f48d3c7463def577af63f89f575462bb51e52ed928313cac502cafcbabfc1bebd352be0424856f7c616671f55f10230673e9dc695a4155c5d6b9a491f0a9bd6b2a0fcd4f87ca752f74f7bf82b30071c5862c9dd93aa32ca0496750c20c290350302047c435bb500673065023100a380d2fced3136b1dfb70f231a1006e9250fe99e5649ee997e7d43a5a3e8c98e8d481c331b0d89b893f98bf3c006ec06023035b80193c3012a8db4effbc1511df9319d394a6126d432d07c7f889558556e8f6031facfd0e18bdb7e93ca6db0b80eb00302047c435bb500673065023100baad424a908e6b282c520701334af6523c26209c3b8c4e48813b91b9c0cf2514bb78f47d6ef4184d190bce50705eb2c2023003eba8ebe96a5b51968e09d8ee0da3995dc26da0a6ca6707660adea245a88e504d4a84af10798e9c881fc676dde5055e0302047c435bb50067306502310085c248adffe8c169446433bc97b255bf9373a250904e1fa940233555282ec5049036d45825dbc802ed61c9f652ab6e1102300747449aad4afaa1a2ebb5fb5fdb204af7fba2a5cab69ca8413459ad945884e793dbb14da9aad7519c1e46065cddcabe0302047c435bb500673065023100ee3b1b79f55b435654dec6a65e883aa8fb0b4a5af7153bb5de0f0a0d41ea9636a1d697e0f32484553968f0271999640102306dec9467345eea86e6c2390b92046a62119da23f74d8286d1232447d2a1ef3369c91d36561d9f230d7fc538df25e69cc0302047c435bb500673065023063d40d4f88efe3457ab4517512c61ac80163993eef3f27d0d182695ae8ecc20b5842a7e338829d525fc1bd642ca13285023100fb2761f3404f4794ba79838fbd32454decee8780cdebe8f7dee0a65e9ea4653fa8b211ad75d509501b518cfd3bbc1ade0302047c435bb500683066023100f21006fc1c55fdd0dd5b8d06d9a50b491d39b9d98262c8cc657cdb2ad19bf578e21d5ccdb1debf7c3ff0e15f423999e7023100a55b00891e200f3904da6da4fe33e645b8b047425df9ee0ba510ed63cc8dd672d1b0da4f33c3cbfc197419be24d5c7890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307802cf0b671b523715e799e0a30a5e7975962353041bc03f2158ef4e2c78d1832a8d0b9357363c202dd9784add539b700230596f87931ff76cba47a1933f486154beab11b824eff5368e36c12a8087a6faca712d7c2fbd146f5b30693c7698777d3f0302047c435bb500673065023100ecb648b48ea825560ef96d287b26f46b2301450d6857d175a1eb55c2c66fb8c24c054b9d922dd32b918c7dbbc09ae769023065569d3f0bed61cb1fd499b92a37ab958954b8310ffe2c73fbfb5ed796b8b808d032465495e2e04bd316e0c896f7c8ce0302047c435bb500673065023100bbcb85e137433f8e96dcc7cfabefe79f9806451279232bb7e159d56ee2eae53e01055253d1a32d446f73f55ed4832d3a02307095a271b1eb85461c9539e6af288f25d7f00726091752f372026f8894acc5a07370f20123e0d3e11d5fb4d6e931daf90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301dc14976e5aff6d50abb4616344b52826b8c46f3f9169c662b7408c0040e7db5f7f79ab8a17f786f264e98f40145a9cc023100a009d7c7bc9281aec57765d5d18896c0406a33d054207d3e435daea83b8b28e761c632c78375bd0984191bfda1423ad60302047c435bb500683066023100a32eec21708dabf9d5e39c9c363f7584e25ce86c5097df136e89a7154a8ff1460f098bf60a84cc41068c40f5e3887e49023100dc35c5fd621551b98582d0428007eddaebdf102aa9b698e1c2759d1412d9f53198b48ca003588cb6516378b183cf1bc90302047c435bb500673065023100fe8026e44c5ebf5a9fc48037a2a0a4babacc94b498189c3d78919ab1b2b4b51c93cbf8494e8177e5c89d3cd37fdaee2b02302f97fdbe06d0cb7163c74237f39a45bcd3c0214bfd063db52deaf3af2c2f5c5f36139368b07e1bf6156077f055c551e40302047c435bb500663064023009390e2e63621501ca39b46dc6f8342d755c0acda9e1065f37d5af3f983be14c6b2af17ac790643330002eb4cdd104b1023008264da35188121e816f8af49632fe771a79f981cb3b334774cd41b250182ba57a4f4c4cb53c298974ec97ee66d9891b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e1711b8ff413dc5aa0534a98623f9f77b7aef1bec076e0a419332dd83977caae1c0f5aefb9853604638a2b9e33ab5058023100c8c55162de39b417a2606ba906c0eb4a3d09ba808beb5f88fa907d1661383fc9b704aeffa37cd7eb4e5f35a380edf8f50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f6681a7176c91c32a4f8dbf3fbc99c7908d6065fd892857e738d2f88851a1b03fe199448d6e45d453d2a93836fb2b4820230652f316db4c7cf5a58b705e31e3c4c1cfdd910ae236a9858aa483b7bb9a423bee4744cfa55f9337a934a0f54a5da4b860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300950bdd5aa26ccf3e0dae0cc9e02b610342175589e234c9cecfeea2412850a617422dbf99af1e306e3f60e2b51a145c8023100c524a83c054e775cbeeb19a0f63797dabcf5e8c79e68b44cde944796fa06e2c3744d2e28d5e51ea082ad7887632a51760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230302619914e2c531d79b6d2204e1cc438eacb92b622f3ac938edaaa4763d06982d8511002e453f850b05712b6a0d26a7d02302714f13722fead5c5eaa27998f6033b17a7d57c35f8523187f82bd21bd66297077c87100d1229ff093c497dab1e7defb0302047c435bb500673065023077f60419d271ed028210b44efc91e3c28ff20478d3ab90d99ae19d17a93ba20c94de7d84481cd7bb93adac01eabef6c1023100b8edb3dcd0dd625f375aa37c41e7cdc0c18a90032ef8294ef5ed8d117370625d4ae95c9571e3785e64a55ea37452bf780302047c435bb500663064023001dc5b7df7db440db946262245ad38824aa2f47ffb389afb5b15567aa83569b8beb9bb4368bc51697695f7a7d00191e902307c2a23f6d5b82487ac28a853d7dbf8f2f8264b09e092dc42a1ff54be8f98f8d3951344ff303709442cfec6ff969241640302047c435bb50067306502301b6920d52b5ab6b4d507c360d5de38afe1ac6d02d5040a2711a55b283bfdf82940a22da0af6e2356246c70cc563ccbf0023100bf16a2f64af34ed01edfb8af8464198f080ec0e7872a3d346b16f182d89dd6205c4c82e357dd4084af8d9fd8be28e1910302047c435bb500673065023100807dbea7f04ca7ebfd7fc8d042ce930a05677878623c8d5637d284ceacb2e6b3e90286606eddf40b4acd4a52deb65b4302307782e3f9b19edfaf01c0ef95601a78d28455a8973c2a2de82ed93fd08b970d8c7dde84b9775514ae43cb4ebacb8e88ac0302047c435bb500663064023006990ba225cdf70dafc44ea4ad8b796f1002a78b1e6563e5129b17c46524fa5a621b86111a68828f0311c6098cd32e960230440e2070fb3da94546a8b8222d8513d0be4a203e98647223f36c5039c6e371776aee76627177882e7ff71c9e5a6d4a450302047c435bb500683066023100a73c100764eac919874db425f603f0069d0ecc30a94b3d126f1a8aca69c139ce184c4975f2d3f195fd42578b860e2b4c0231008feda6f1484ae42cf6fc98222e86eab0567cddfb26e8ba3f1a19ebd7db04f14e5a35188fa2119f8c170bef225e5fd2fc0302047c435bb500673065023043ad1e8dd5f8824dfa95a99d66ad766ad8a3bc0986d8cacc9865deafd6bbd8a8c4fe207ab72c69501778dacfe299b6f5023100c2496c81a2cc1461228b32d42d7d89b7658c181d8294ac116e03ceb0cce36a866f25340120918fbee8d91da4eb02ebad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305a9bb7bf07b9e44d2f155e54b1acd3cd44036f8cc054519d9704bcafe6e5a334aa62c3304c2bbacdc53147bd9b9e2eb00231009ddb1f52c1fbd1b8db3cd31686365adeb31666476af467c09094cab59ee4f2015fa829e8c177834c7d3194319329ffc30302047c435bb500673065023100e585a10fc77c04a97b6a463dee844b10f5206acec1f4996b83f88b3eb79e6908d4973b0c31fa2aaec85a37cdb2a7e65e0230673442e4bf7cd04810037c00f8674ca5897b3541b408adde9bea2ffef4a52fda255dcb7242134e435667a740a5e194870302047c435bb5006830660231009f968a1bd3712e707c91c232eb86f06e9a74510735d1451c93c8d460aad2458f458be58650320043761dfb3974affda10231009b68bb86c008077a41852b82b346788bf62a8edfb45e99257b5361d5ef31cf519ba1a1aaa95eed04074bd44d92a94a3d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023030da1687c3ec54f874b41658e83bff948ed60c2d839e2db8ef511aeb3f4d695c710a085f88f946ef456dbfd7edff8e22023100e38878389e19abfcc1511f9195e7e2f46e9be15ca327786f2ef6fa76a94c2b38b8c91064b293f7618b568c152b64915e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c80c14c0495b1b0f5b1e7ee369e9dc6da78bcfe3aecbae4d42139ce03dc3bee287945edafecc16d3a64ef63ae70fe19e023100d1e1a62c564a99e9955fe219ad1a107f0c3213e7f9ed62b31fb189b440da4f3c407b6d583b9b495b9fadde1723f5ca730302047c435bb500673065023100de23a722aa02ccf25edc013415e05f8597eee885469afd53f92424dfa068d741fc8d863e62ec77988e7ae4f17578425602302b3d7ee0d276080068b77c4a886f13d1ae75c98bd39f092b1514155e0d6a68664d5e229cdcc4946bdfe8c8bbcfd6b9c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c9adff4e71fea9f51ccec330605c66a1d49260072c276d75b29a17275a0024e07b1933a86427c5f749a7b939e212aac023015243b2155795ebdd231429eedd60addc9ec8a6cb9b7953b96aed9ac7bf85695695ff4b94935fa1efdd62461736201ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd7ad3cd0362add176c1870e0468bc5e6b5a9dffd0e450694facdbd8d3c1546b63f0c8e018d740db0c72b927e282821202310089df7ceae5d458f928fec90f0383a7bd62cea5902475afc0cb1e77761380b3c08ec8535be60bb92267e733670c6451330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310098e875c668bc0527c712ab6341f9fef9297826ec329485a1c347b7db7d06833b01e56e4187404fdd12e27940c4bc505b023100ba317cdff822166076b30cdfdd154fb4d2855af26ab5a09518d79d2ce867356cd826855c8077831ab5ae8736e8b4c8f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aeeadbabde118a76b77a9d225faebffc92da56a456c76bc01a2eba7b69ee78676101699e9359a7dff78b967667e8376602305a11ff14246c6276d08d0c8f6f4c7d9c25ca171818a93ccc6ab223807320513a4dc5dbaf4259190e381ade99c41d42900302047c435bb500673065023100989c36de297997195d1b2e73f485886f6c0eb17249006c5e6c959c3ee6fbb2b47207a9b66231cc7c5855d067568b4f33023020dcae1311ff5f10cf1f3f281627c20d437197b93029ea4011130e057377d7c3fb46de14ffe6f90fa31f726d525b3d1d0302047c435bb500673065023100b8a41df5bb3c41674c8275e7989dfb890b52f2908cd91872f4c50b8a4cbdcfae2f16355157dea4a5441ee7e261bdc9e50230441ec30fa89901ea0fcc901c9b9dacd2340afe71eb8f50525d2a0b08a8dda0804c6f42e4733bb10b45209b33f9000c670302047c435bb5006630640230222f668736e1491188d1a9b352655aaacdba9b51e1d6b57ca8e94423eed99289207f87a7b40d4acf61def5c82dd319b402303e6103c23ca5fca3d116b38cf4f90491a41a2adf359a45176c29ccc3d939de5683352bec3b708b9b5e088410b94e545e0302047c435bb500683066023100e39234354f6ad0d31192817715be8ad8db5a627098b8e6d0177a8ac9701f91e2744f08e17ef28e1a8850fd8765f768a8023100f4ff10a9d78731b905c953ecfb1b916a11e136702a50e0254456d184c43145605b439a38ce54aad345a6bdf93cb4ecda0302047c435bb5006630640230650f47c4b6073d646e54c571731dcd5e6755aa6434ff07093537fb142ccab602251825893b54b27bfe5a0149774cc812023014342cdf2640fb253d79e69da88352db61d4d047266c73461a5e7c6ecd37520ca0bf60b429a7056c36140e42727aa70d0302047c435bb5006630640230056444d8c844b52d646461f849ef8ea18235b852813e5d609d55977252ee50b04b4c684be3e33643ad3722719f848b110230761f46ded4b10fa5effbe6834027f604a8981c529d27a40e15a329247aa0dd3de6cee4b273b410736688090b664575670302047c435bb5006730650230651b376eba7a675e3591089f1dd9e985094b36a34ef0e70be38ace8c26e11e5b37f25c8eb165d6c6681f9947ff38f815023100e5bd25024fc845e2c0d05b486cb51cd39bc19ebe2adcc0aadb34b5d3d5a8cec20aa3d4f6a8635f0ab471e62d9377ed3f0302047c435bb50067306502301d8acd514119b4d870170acc54b2abf8abad5926305004251351cc90159c0d589309ceadbc7f879ef9db82ef7bd94901023100d220f6f6a7ce2c9a54d1e89758c43e22c5194617ff8f1f57b61925d8cd7a9141f11cca3c2d482e43d680224b47cbdc910302047c435bb5006630640230668affc371dc857746fd5d485fef35348d0f3cf4f3da1f5fe6b4e7bda5a05a6187246faa18e094a87643b06546f0fd03023002c6092a79cb322db90c936e4343e6e702b3b631af3562414e8ab4472c033e92c11877f244412458cbf9960c6c21e4820302047c435bb5006830660231009e6f393b90c03e164ba5866831ac9ed303ec5a2fe1e2e99e6bd72018e20c1b8f5d3d74e579aeb5fb10a1c47af655dc34023100fb61a64d72d93dff961ed7268a9b8e6958e03c539e7b80150074ca01a0224c986c5ff8f1424a72cb4336805398134afa0302047c435bb50067306502306d6e91177335226f419cf594e1e2389c905368ef0ddb014e93c5f7b6fdbf1ebf062927c931ea2b16a3c3051d1a8ac77b023100fd19856939859a269e5c32dc0b860d9d2200bade3010b3f2252e9c239f9b6d5427956b0b6913df4943e90ae58d06e67f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac4080b181939741378a734a39a4a40e5f516b215d6b48f1384a22062193ff09976bb82ffd48d51d942bc73b18f26c3d023100899ac602c133f938677a6be38851516c8e853d4e6f5524d423a9e4dbb8a4b922385c28d3ccce9910b321043029a1b7a50302047c435bb500683066023100d2268450f53c02e33de1a183ba5e092a4fec6930101ea49ca2a2f54309d613f581d1924a580a80966a8c5fcd84be3f66023100988c61d7fcdb998581a358bf7d2516a79e232b5642288caf720bae023a874224117825d52748a00c74bfca57fa9af0020302047c435bb500673065023100e6c8000d2172d046dcd2b13dcd669e146421e49abe923eddc6c2ba1e26850f8c561866c6bee19ff2b27dccf957984d6d02306498dd18d641aade0cccd476c3c3a0a1babb84261e52268c46105f5f20ff789a9d13c803b388e2670825f9e183affd420302047c435bb500673065023100e7b10bd2631895ff97fe5a2909db85d209da3507334e55ff3a636bff1c883bfcd9ab3ab0e4add8bb867a3048969327a802302ca261115082f445f0b508944a4afc21112cef0b42bd56387cf6cdc18915d05b71bca9dcc38f8f00ec515d2c7113ae160302047c435bb500683066023100e1d9cd3c1c06883c517af9fd0b6bd67803ce52d924da440e4b4e1276bb43bfd162ba16d7ab0aae62f88c89f4680454ad023100865d9355b0eb714ef2345fc84b8fb17c2388ba6d5d490313476ec71debfbb1f5b272e956736f30fec96e03471a70437d0302047c435bb50067306502303d88fdc5a35f5c6daefb3fe4efeccdeaa0bc6b1b28469c7afc3e03ec0c7cfb2d54a6ec361b4181e4a3b271dcfdf2b1d6023100a96a7212387c127e177a32754553ecbcda3cdeac6ac0ed489f6f5b8d8927e793a1cffd23718fc253ac1f6bcdf227ff230302047c435bb500673065023100feb5267d608ac80dea7dde18a6dd10a4e16dba108a805c49ec2979d13df5a101507f24f2dcfc1e6221b2a0f1284bd09c0230502112ad90423adc2492eced16d06529a48561559b5e9230bca93857a6bd27a7619ce990457276ed572fd58823de3ecd0302047c435bb500683066023100d4880f64e44eb4f587333eff937fcd401c527ce85ffc1f63053b44cbf9126e6b3c8493c147c11f95bc18f5e7b4d4ecc60231009338c409a455635babe3a983e91777c45555da7cccee74e476cfcffc19d31d37ea47fb8c2e5e7279de2cc351c59346360302047c435bb500683066023100ce3d402d250842229e8b83b4038eba4ee499b570e8c4e94636e15fbe2bba6611d7a657e60b834f0054111168af691ef1023100f19b480c9fa25ba5e1cb93f0db7f0cea27f81cec5733e1eb2caca094986d20939c79c01b4da6cdd9dceee6a9c48d0ec30302047c435bb50067306502305aaded15984b4c65a4559704469af93fb975e2563ae9abc18553abbe6508be45bc5fa2abdce3b57973eb1b7ffaf003f60231009cff78827ce2419ac0c58ebe13e61d543ab5232f256405e8c37ec34e33c9ec1f06c49cf3ff2da048a5fc61815d9a36170302047c435bb5006830660231009084076666dcb7dd0964c5478e1608e3e717ee65857c4f2e620f0bd406790225a5963e2c63a7cf611c4d25c4fa223384023100da5dd4b4c0eedf3bc751549a1118f6eac4f4cbec1cee771e4d7cfa18d28fca9b46403c39776b02c8b9ca8306526f02a90302047c435bb50066306402305ae2e3a6f630e87a2964fba764fd9ab68e71585a68b723c066a427bdc66fc36c6540b0bec26723733303b2563dac525702305ee9b836d051c8b59234bd781f25addcdc156611453e138e279c684d022c5ac740b9cba14f8221e43bc77b4d60d5419d0302047c435bb500663064023011c613180f2e483bc33e7a84943035863eba8cc81adaab4feae00056c10268f31f26c0a59e57dbb6a868d4231c1460d802306e69768b3adde89a589bfb201d250e4d1f328eb9d704a920c6a2b68298c9ac691d38a1b1b07bba032d6ea027c180b7010302047c435bb500683066023100f9c28720971d5ece2db789efb3b2afa663d79b193a2e53cce7c167df9ff69834e370734983ad54a9377cb8758243ac74023100ce69c62c29dee287c676202cf22264b02e85df884cc11c5f41982f15a7262ce542aa2c983893789b5f3fc49ff97d9f480302047c435bb500673065023100d3d27c3342040bb25da50f2dececd681417d32a0ef9da8cbe1e4a36900af3485662b157ea202dcaae5e4ad85c130140202307a2dd1ea290fbadc83b850e5a5ae00801f18cdd48b97fb0ae66b4a5718b997cc1d4f56c1281e4a7ab199440b011c32520302047c435bb500683066023100b91afa65f30a9db33664467ed1729c2947d5a187e64fcc968acfd316051314d3bf96eee3f0f883dd4045e9028c87ab37023100d86e358ddc2abca6f3dad30e718cef881d97b92b76def8a83afdc1db757220a8a43454457c2566071fbfa9c11fcf7cc80302047c435bb5006830660231009d2c9f2539e29a4c321218c61da7a9c0e1f19807dc3caa0656db17027dabe41d8d368acccc8a03737fecfbb99223741102310097aa0addcddb61a6d97a7730a86aed99409cd367bd76270c61a33684c522285bc62aaf9527104d7c4371115c0ca5784d0302047c435bb50066306402305482019f549e5ff4bcc06997e7d9413d9a83d63c57b1419976dd19267aec6bc9f1dcef6205ccd21a690a42ef995a04b902306a55b14e851ba8d1493deba57e2507c79999f30c4a47bdc255d7e22ce0e6564a6d9d364ec57bcf3e285b49131f5e8de30302047c435bb500683066023100a9b3c8aa77aeb843bebb6828de3a2f92e2beb46b8cb04f88fc1a782d4a894d1cd81e9ea58ed9213ea6d4e7b85e8905e102310089b1e9fde57e10a9b845e994c8d9caf4723fd7881e3f8cc38a4e8bb55ef4207896dacbdf2a5bf37df636aadde910b99c0302047c435bb50067306502310092da1b11319a45e7737fe47591c09d3848295ebb6594eb5dccf7d670316c410d73c8b95274f98882ac9cf0d7b2ad9e2b023013ceb571d664f4cb53914f17acdc1a538aba1e07a19602cafd1c4e75abff9be3f77f73daec08908d27fdcb4a8e904eb80302047c435bb500673065023100dfe7a8c424b406a9d1203889795c9b373881ad3f190bfb16759f74910b940463d5c6092cddfc891eb3a4d8fb472a617c023040c3e72662ef661028a793ae8cf3ccfd05bd4e741ed369ca286519581ae208d6a09de1e637e363bee7ec292b8078c9d70302047c435bb500673065023100d61be3255a02110aacea9ad36907c2f535eaa6635cfe1c155a10906fca162ca8a8dd5f357c1e396d5a595af71aff51aa02303c05401e02f291630185b8ed25aa2759c714bf157049c68da0ef15179c4b95002a9651f27994cdb88d2962a14e6245390302047c435bb5006730650230270aa7490826b9a27d62078165fc5e8f76f98cd034a6affa15e9555db612b79b4df411f7913def3c0beeed4c0442c083023100aea3085a09b280cb797f555f16c928efb497fa8b7471f628a6acab7c0e43c38da66fd1c001d8433b195c68889f9fc1db0302047c435bb50067306502304a3fdb8d0c28bbccc2d8d9626928df4d2bd1aa54d5a87da75d7fe0b0cfa89a91b144972324ff0adbeff92954dd1ead7c023100d3cf3a361aa301f57a85de5da079dcc6539034be7da37752ed82033bd0bf90a5069b785d4f2779b35ade7098d503f4b30302047c435bb500673065023100f8c5fb562a4517bf41824081e95b208e8582e4b2c81c5a8c4801a9a6d61ff40439af8f57b8d10b38a8ffe9e934740afa023002b73f2f24800526dee1808bf5a8629a2a6cb9c0148af5fa8b406eccd77448e6a9e1b32c4e6506be6ae11ea316bc4bcd0302047c435bb50067306502310084417b26f859aef5d1b4ef19f464c58b9d091de62f4ce9d2880fa481fb4016467dce280a4bc9873cdff6ffb71250c30102304edd257a2ada220a013d1650ea3ba4be61f37b18696dc27d200c89135b5552a75acd2b42664e56fe8abc82516767e7690302047c435bb500683066023100b7f8d39b0b8692bd9aef147ee40664f0b196dd923095495d2a0de9c7b0b8001f9af7faf54b51cfb0b426b5021332106d02310094e490e38684f03c532efc0b13f80c4e1364daab513558981d7f7d1d99fa90a56f930a46dd9395034160d43a182326a50302047c435bb50067306502310096514fa5434cc7e3b902682156d76be0bad73f8c62264a7324e5b14852450f2ffde446d4e4d1ec48dd1b06220d51f49a02306a71c93b31cf389f0877fc9a1f2ef77e04498e81ab8a434d0d200f0ee9f1a1f2db946994a6369f0da7d459226a72fc7e0302047c435bb500673065023100d2ecbce0419358a0cbc6ad4d5aeb5684621b2839efda615121a18d54527706c994f759f2bfedb2632b7aed501a5166bd023010bfe1fe51af29dd26ba1345a4d183f8508a105a44070c7d08bc516674ab207d2a64c2877952047793533a3f768bcb8d0302047c435bb500673065023056768aa9120d2375bdf2caac3994684afcc277a1338abdc98939514b6b0cf55afff53e0547b981acc49f948c832e4e1c023100f67d1a92fcbcb56dd81eaee580aa0a9f337185485f3bbeb3de67e7a2e8232d6834d2b2b19da4f3b009432f830d3bd1b50302047c435bb500683066023100b0a0a402a943fec1e3943840d05fc63eda46bac0a4754fd098764bda52e27b0722323e57b0c4303ecf4482c58a3a1287023100eec8d716b1c96bd66947c98b3ecf6230fd213dcf63d4cc3369bea6e8a5fde1706cb3b1d5d6e5fa85e6d60498ae0de0d70302047c435bb500683066023100a21aa2610c8f05843df675b651ab95ea6af999a41f8a8b8624850da792fc629e207d0859819a8b4d1ca2a01ee88720c0023100c0f993ce87fffb0be26bd9dbd2cccb03f4e018fcc92b31016143d567cc192b49eed3c65d6240cd996a61c2d5d60d4d9f0302047c435bb50066306402304c14938c7afb183f84098eda6bb62cc08db35df53cb9be08adf591443a86e626700dc4e0297edfd34f438ab5b43cd38b0230180ab55d12e840366563c93ff5891d2017dc11654f5914bfff8c9ab45fabd05da25d2427f11688f002bf1e96fe8c0e070302047c435bb500673065023063bc71a16941bc2689fdcf5849167824a89ab247287a8830a369a3375833b611daf37e0a3eccd754dbb8de9c45401faa0231009e43f01db3e1b54b2595508618238ed49a0d4026ca29a3db01277f14b78ae975ac8de61935eb867aa55ac5804e95639c0302047c435bb500683066023100984eb0a60308b598b5c41d01237e1b8ad178520937b5a64a44127cb87cf15b452c29b5e8746d0a1003b6a0263e52e854023100b82d1728a02ada1277ef03395372396560a9c1a0613a3015b8cf28a5b86d474a4a1b33ff2ec291d6033f562b7b2099190302047c435bb50067306502302df15b74f3787904a05bf0799c8779ebe2f5bb135952d626f671089c54f7e3e8f5e4e5f36b3742f44621957277704782023100c6958fae320484b56e336fd5dffa7df4d89ccb95c367377c30bf90ecdca67cfb127e184eb2baa4f2f76856f8a07f243f0302047c435bb5006630640230198391fffc00e027cb962c8a904e853b73d2eb84dcc50f0dc0a23b57823cca9da928bc704ab560778841f17073c5e12e023004470d2d6dfa6558dfbe521f7072381d1ee17476085da78524266b4666d8f582feb455abe801afda84a051f9530ff95a0302047c435bb500673065023100c21c29fca9f776f2eba3388862d92f6fab15cc12d4273c699bba8831411c92ecd452d0abeaf98bc3d2f9bfac3c0f001d02301d69ab9468c1b6da81d66185784ca547bc6a61fd24bc5588980817ba5890f8b79ffb2a2cff22c7a4a9c3a93c8b00e3930302047c435bb500673065023100fdd6c9fd670116f899b2dbe0d83a202c20cb0f3afeb0253179d1a03acdece714ece1a823036dfaa1fb4d49b2af976bbe02303da1ded1aa87a33b37c855deea6303a25cf6a4475d9f9bd2960d0eabb43fd4a48706bbf112d7f54ed07c8e24de843cd80302047c435bb50068306602310088dfd39c0ec60f49b97e0790b849be0ed0cb81a59d4850de68fed9a14efec821d51777e9882b0bb0eb4fb6b05fc80fef023100aa60d3cdf818e35a34ccfa4502dfdf9400cc42580d9c55c044d1d80654741843bb696fcef592612d189aeafcea4e99460302047c435bb500683066023100b655c516c3e31f3bd2a08d697bc8c84c8e774e942e0c5c93aff860c78b7f4d63907759b3007e942f1f3325ebaedb6db40231008a72d6d87abbff1cbd75e842110febf45b59fec188c26b8e7d406745c7c04bd131962f73f263214b219c700e562863b20302047c435bb5006730650231008e4ff34395758122ab28ae0caa408b713c6702aed8db4e80e73657c1ef27b27767eecfb3b1fcf725f15e3e24f963af3d023018d7b4c0b65ee6b6cae7e30fe7f9b1d25dd564be7b8424d0dc492a4b79d5b927878e4db13d77f1cef4a6dec47187d8ba0302047c435bb50067306502305fe4e1c3f26e693dd360cd6100a40101993d0c785e413d41a4c39f6ad6cf0ff3b70a6e35b992a41686c2dc0af9dadfa7023100a5d4ae364a4f58d5caf32b396ad04dfe7620b1cdbf4b80ad8d6ddf427a60bd2024e659a14a2d090bf3d8961b7b89512c0302047c435bb50067306502305c0bd7f78c4fe715746f31d7731ca91b6bfc5782d92ca455fd2f89cdb6760a8f496b2525932f5426dd3842c8aea0941e02310081cff1f5a40260f6a5f0ef62504da9ce2933642631dc62f636acabf80d24b998d0faf84b372907e2c05b3f92799364550302047c435bb50068306602310084274c33ea6f2aeb292454e4d5ef97c719e16aee5ace26483163e5ad81c3dba056fa3a228b0e94e9251c9c34be4202b4023100ab4c06b9a74959731d5f5b39d0bc52ac4d83cd0ee5634bf05751ec9a14aa65b678464cc4dd7673296cba117c4034d5f60302047c435bb5006730650230102b4fcedef7548bc29cecaf7230190a92aaa18301f999dcd4f0c89cab5d5c5118d822b3ccbf2cfa8e6e2f0c271a2eca023100e686cc6bf4aa5d67fff709692ae1d136b0406e53b6938864c2a1b83db5dcfa25bdb65d57287d1dc63821ecf7bdc36fba0302047c435bb5006830660231009da41d04bab889c6695dca3045419c3a946695038408218b855e1fcf63bfdaa212a2d787b826b609aa76b607a508b3730231009362619119ffa9d346ad5276bc05593952ed0815670cce5de77386695f0bf16191791e1d7da1e67bbb652f7e14f1b9d60302047c435bb500663064023031ebdf355b801e3a266416df5bdfed6f49ca13772cd7a30997510fd518a4e2563da06fe88c876c10b0668062e4297cd60230197079869b0b883aad76c9d9aa3bc7fdbe2ad63ac81582d3c1bd978ad951c9a1e5a4109b5305f1478e5e2f0761648c1f0302047c435bb500683066023100ee1ced24499e89901685480971aa1939aaf6a987d866520662042fcd9de9f135ea13b996812fee373385f2dec907008c023100fc301c4f66a5efaec4a0359c2cc0f7bf9b01c800050bcfab5018c885c6d22f63c0830142b679fb51d4f7c07aecd076c00302047c435bb500663064023003eb1d35d30b51de42e2d4b12946316eb7534f8a8948d86dfdd862091fa6fd6125dfb33492afbb366d0df5e6a931afe002300aebaa8cab30b4405530d27903606e16d99a7cde345f7cd03faa1e89bbc6cddc5314113864fc315b422e18555cf71b090302047c435bb500673065023100944943e49855a9362f79ec553710316ac31ce12eb8fd8f2419efb251369bffc64c8cfc73fc00fd2ba16df5cd12fc6ae902301af59318746e209ab59df1c13520ef236178f3b150ca138ecb385e2dc7c60ced33098274c78e9f388366801c6662fbca0302047c435bb500683066023100e19823890b4bbe5674eb5da3233cbea387314f3d6f516dfd8cbe38ce376048295c85785c7862c4d3d12f5fafba9c921d023100e0c662a81ee5e5fd3a6dff03bba6c04aaf2694435b3844b699885d1bf23d16c5310b30864214442ad53c1146b62fab6f0302047c435bb500683066023100ed498d2ed33af98afb05356a20067cd2ddc7bf30d3f84586cbf18e3e9149d0921e6308caae4a9fb3a0f9b882712ccc2e023100b0ede747fe5bc031b2ddd35826ccbd879e13ca38c34f17e10c6f0c2eb04f9c5536b3af305432fa9d957ea9dcc9f148560302047c435bb50066306402307d3eac0306ec7810084e31be0b107a4abb2370ee43127b9f00dd19fda582f9518a5099368835d6c4b239eeb909c35a34023065ae2926e3bce4d011e68f0e3af26585fbb01e60dde4298a79c668d313bfc47cadeaa67e0f861f2cb3e781856ec17c300302047c435bb500673065023100c4402696db42b0f1c251f959f40666b9785136d8af864b6d35729d98a430dd1a3a2c614a460068b7d6a1a2b86960b66002306a18d490665ca8fc5e1826093a615e445f35e6e14e185500cda7583c04419b8fd3626674da62355bd11774a63b52ea380302047c435bb500673065023100edbc66159c231fc69dfa593654e0038f2f4b9558ff090852abbdfcc729ca5415648db4969ba6b25f09889f7c3a514241023012f7f66f945e1a37fe53281904f65b8fcf7acfa72076a5c2cd6e6ae1255beaf9bf3564abb48199f577d70b355ab6e0600302047c435bb50066306402301053fc9e684210ee26ff99d3aadcb28ae20169e82540065c3279ce7958dc440600cbceb6b514734ccb4ec2d981380aed02306ec6fc90cb36bd3c65e090968be0ad88fae2bb77d2ec892a890d36ca5afb9f99041438975ca61f2d4bdd044c3fa7ab6f0302047c435bb5006730650231009ef62d2554245583bc81dee67281d8a18e100cc8a969428eb69c3908480f11ac92aab65fb7072cdbda110f717e64afa502301b76201c6d900444ef00e8e6096d2ada6c4e5fcce2aed4f4066f5be1462358853ad5f28e5e0398a838ceb0429ef599c90302047c435bb500673065023100c89af9756a26752612e13f0c1febf7aff7f7805556a055c60ff2b26331b55b7b7c40c8ad70749e64af176b2bc0504fb5023068a5e88bb58fdcf7fcac0e91a07ad87fb38701f0fc14441f29b2dfe1fc478154f8b15e24a5c2ab43f029dd59c10265470302047c435bb500673065023075d5603155362672914c2d27e4f62c471cbfb1daef5665196283fe0ab7a787b413619fda2f332f265d8e0c1a37197f370231008adb71d722bda66f0e127ce9c2d8cb85cbdb62a0993c061a5c5ad436601293ecbf88f5203700881172b35705e1472be70302047c435bb500683066023100f2223834e4ed2277d612dd96a909affd2434aaca12bdb3a0a0e589ab6d4721bb022c9fb35631cdf9afece3e9b02c5455023100c76ae56f6eabdd437b2b45538509fc4d2887b4ccb13f9949def6299eb8912a61e4e68730b87643c5a95a79e8536105950302047c435bb500673065023100b21d56f2cef2767abc3726bc51c17d8aae13202237bc6f5972fcc64d1298230879a8d8c54081683ecabb4b07f392baa80230272cf4fdf5bc5298bc480afc18c916f926123f258f1faa041ad6d7c7a18d5bb4cfb51e461c64cefb9586a28ba8e8d1ee0302047c435bb5006730650230038594cb301a3314216070d9db1bd35027b7e5a93160716f9a1b3ec223874520c20cba8115956151dc53aef43b84cdee023100ce6033e7c09e7279ce5cfdcdeb535dca6312c70bb4a2bcb0741702ebeb0f3e9b7ccfe7c03a020f559e2ff7196728b6000302047c435bb50067306502310088818b599d60ced15907f9cbeda1ecdb669f75e212778d662b0eba088c08133959b80b376d379cb711f2f292aa0556d402302cb0a859ad22cb248bc13082e81947d6c2ffc89d0e95a2e5f732e8df63b9cd61a89c6423384d48c134f20f4d125e358e0302047c435bb5006630640230313b12dbf8ea0efea656295bc90a0b75a671df5bc033519d1328915bc8f92ae941e1edf6e42470a3de8a921f42c8059202303b5f4483148d6db3338848044ac355179897433a93033da7da2356c3083a6be5bd2440da433eaff7a83bb22df368428c0302047c435bb500663064023042737b1a66ed0e7ee980c3ec1616aa24417e8768fd1b2d860320a72a7ceb278951783013ce98d7f39f82bde51a0be552023046a119a973de0ca085c57b1b544c4674544fabfa5ee6bd5b7c5eeaaf88ea79cfc20692dbfe8f09fd3aae0691a116a97c0302047c435bb500673065023100b01f5b332f236d6e96225e637df7b918ace39843ad40f27d98f4a880f2a023e3ebc6b3381d884df3ffa31892d2fa774102302587c781c76d244bbbf34845e8c23e43ef9e18ba6d575f652b165919031d4632cb7e31351a870f00c0530b0038b351cf0302047c435bb500683066023100a5f6fdc28e0fda3631b7f86397fb932e35ed0022ab4bbfb8817df2cb4967b294684ed9595a59f12f0652254f23174a7e023100d4fb7b4170279cbf76fe22bf2ce97b56942bb784e462955eca3c752657f5a945e2a2c8c73c92d6012f2ead1524f2c6920302047c435bb50067306502305dfd572ca1023749a1b0263c5bf3aaa6f00aae3fb7062f019e90925d94770b1b790cfa01cbf55262fed00a5438e59387023100a24396dc9eda4d7bd98a3ff68176b1e3cd009ac177a0b1b5b3e9ae2169adc92f2d7f07d66686b23af41313857e7ab2f80302047c435bb500663064023054926bc4f679a13d99de71222c647ac18dcd2b729e16a393fe0bce5e3f469b37e64c4995f4d697e7b353c5da4c9448ee02305149a551e322c5ac5c6c19483afc79085eb240c1a43f96f7cc3c276b1bc1ea136f1add7325fef916398f4dab707eda6a0302047c435bb500673065023100b7f443230a52388461deb7d459e26cdd93dab9ddf142b4c754aa1414ed9f2135b4f630e1a9f040c557effb782e6e47de023043feab6184bf98306683e94e4f1519806f8294f3e3a1baeee0d0ed20857571dcacb10d8bc3b744f5541011e463658a7c0302047c435bb5006730650231009678d70b94a93fff8eee562fb1af5cfc215498cc297f2ed15fbd02a969a959f1135bbbb5a4f36ca25716b1a8540fe0a90230291e36ba5e022812469936465851e600bd1f416e105a72514267f5bd2701fc4bcccfd070d5ecdfdfd8496eff6410c19b0302047c435bb500673065023013964065fd525b3a695d8e0ba59ad9430367553550f9a528020fd65038f3a84c5e9b370f6f16357934f3bddf755549e402310094ac0fe19e2410b41691b86e74e7648d49ac4e47d175053ec59c08cbf04240d56db22fa608773b50811abc6e62700ff10302047c435bb500673065023100a2918254dbf5c7137bf74ee4ca268379763c792cedab3a011a997397e7638a14a142c4902950b0e0f122e37d5773739a023077a8ee0efb5153bc4e4f6e71b64dc6897b5154752098d7cd53b91fd191ff588a031ba531c988c9c1b51f2c48dae0fb6b0302047c435bb5006830660231008a628c7fe5aa9d452c8af75573a94db3114192b7ee4a430ccb78a4bb2db3a33e9a93bf02e30feda07003ebd1171f4180023100e58375e67b13b4959b82641f0bdeb82463e94baf5e69a97a304360c7308e29c7a76953708daac46fb92e0d000780d2d40302047c435bb500683066023100d182672318bb3e45374844fbf50404a40f98eeae4f5486a8a1e4121a41761be703e7506180eb685a2a0cb82c2465d2f0023100e51ce6d092bea091eab2100da36ab0a897bd4146d7cc1ea02a9720185b5af9409958c062a6a32650c7997d3ccf0535950302047c435bb5006830660231008dba812360936f3e31d44c1c23362cd5c1f272275223e896519d0d44eaf6756b61d6b717398ea7c0d9ea5e8e7901b574023100e1bd2aad24b186a67b4db76cef29ae364bf512207bb14961305ed06b3d5986e924b7b3cb37ea2cf2be99f8b8f391e1970302047c435bb500673065023100ba3cd0a90fa46108d2b0b5bd14fcc020f9fe56ca4bbc8cc13d8d4f2c1c637b418bdb12f6eb2d69ccf887ebcbd485ec770230600e16a6f44d49d99f72c7619c307cc25b8668c9a2f23304f3d7ea15c317d700331abd14e45df3844351e1c2a564e6eb0302047c435bb50066306402300b86cd9e54083ef938e428be08f2e4289ffa54108dbfa6d2703f3235edfb43d1c87a37d0194f8d831dda5e7fb4de761f02307f8a6d6865df0c994cb85098777d8de5df73ba96bba8092987a84c9dff46ad043674a4189ac5dfe094a73401e97593030302047c435bb500683066023100bd0b72e071e084e1a6005ccda141466f1151890216311e627851e41228e3775445b4492a94811cb9e710c845a50c37b4023100ad428132f1dc7fd6f7897087d1e1e2ee5088fa94c12361b4a8fc2a08a438ac5b4b356a8668ba7a3f4eebbd821e686e360302047c435bb500683066023100ccd288a59b82788282fbd3bc63a87073c3bfbd4e615d908496b8eb1d906cf44c3613a6a04c699c1a9c5815919f4315b0023100fea641aeb9af5e991988e5ebed528ac7fe581d48b3511a094de093c28a4f6d938a1b032dc7185691c22b85c5d6cbdf1b0302047c435bb500673065023100bc513f588990ff7bb138a78ae35ddc173aa24c50eb589d1c3d156c37d5dc05fc9d045116b478d07672a87c479e65468302305a388e0723f0a9a0c3cc5d584a604acde503a091a7465074fd2ac93b052ca739b601ef0fec699ba87cc1baf4adda1da70302047c435bb50066306402302e49c03013dffb883e7d1a960ec5dac5faa255c78c70c5640dd5feeb937ca9100fd32b4b1b8d330b21b6cbbf9bf821830230574b3867c9970f9a09fe71a76f06c6f613f59f3b13b11823944b51456617940e4e5919daa9e27bc017d998f3223b6f940302047c435bb5006630640230506ef2c78db1410d96a298a93168740f9afbde283fb7a35deee9d76f819b894de1afbe1f341fa7db77ecb24e1018ecdd023035e204a5a6f5efa756d600de8d701bb5e7b47284d4ffe72f04395868286747fc3fa4627578d19ac091e93ab33c1eb1720302047c435bb500683066023100f57795ebfda5c653700d90fa19973203ac9fc879b1730c1e29eda8bf073438a5b31ba25fe132aec5e90ca0755c415bfb023100f9696ece29fbae7497c9d5c1eb2a844a0c754ab6883fdda414c35be50415f08bda81ee93f8ed7eb1cb0ab930b7e3b4880302047c435bb500673065023004105d960270c9b6a1e45404b84386f02b7c3fa3d9bffee01dd8f80d3000f645cbe67602317d5b84e40e4d86f644e18302310089458179c6ad9133924ad0e1106836c9a99d9cd47f384e282b3795a66d5301334b108e9913d4f17069850a19294d748b0302047c435bb500673065023100f007b1b139e9fef0952b652d5817ee6fde41f987bfcc4ccc5d38ab1cd05db54f25b639f7b4193d9694ace41e61cad1ea02306e8533267859d44d111db62aec1a86d1143a715656bb0a528aef25ae32194ab7e6bc90823a3781833aeab61722b216c30302047c435bb50066306402305c96a7c4836177a4ea8f78b8e794a7f08aff03534ef258f48218e19e5d604330a03fb9ea24eb50e75c2250df66b538d1023035e5954bd0cbcd6bb27bcb4f45a37944b648a6baaa56f1eefc2c926dcd38fac424566b9bc2e80090602373c01e31070d0302047c435bb50067306502310080a27668fdb9971ddf03af5e61c2db50e7a61265193d3c9511b995baed0124e6f339e8faa30c4c00d5591c72df510af40230362eef6e0eaecc3be2a369856d2b01fc53c45c729654cf8dab296a5cff944f72b22ec37ce7613f2518efa00faaf018e40302047c435bb500673065023100ee61464b225aa616eddf62212b57504ca405aedb94c59387b64a4322325ebf93491bde1c2534bcc54528e7b67b686dfb02301637e96563a862f100000b643bf96a304a0b26be843162077f7a2a8bd18e49fb58246e3cf7d973ea33078bc65e9bb64b0302047c435bb50066306402307cdb31712bf0a3394e6836b69b14898e24a72589bd0cb21dd2bd00a8e7350bb1d7943e3034cb045c8106f3492a9b72b902307fd9464edb413fb90bbc5ed321b26b213fb6f7eb07f5044d4a31b083b8e56d3e18b3faeddca7a8bce291190d1cdaabde0302047c435bb50068306602310084c2088a556c2d5772a4ca4450364b787d5f021f3ebc7081f08c0acab41cecbd6d13671b8c3367588146e866d90b27aa0231008a355764fcaf49d6756bd0f8a65ca09414550f68138bbf20b9d5c501cab11f4f31a33b653e4d756fe44e272bb84caffe0302047c435bb5006630640230479418fdd3e9b86c54d350ce61713fa9639b98f6df5e183394770937c63587ec6a8e600ec06c1c087cadce156cefaa430230779bbcddd857484950aa2a927aae26e295741ab63ae55a98a53567933c2c5cf874221fdb8263481b73ed5545e0327b420302047c435bb50067306502307a5a12cba9632c40c215f88067ae0dfba316508577c222949e987344469f7d18a05a78953a82ef4e1b9f97ad11f926ca023100badc833997074444cfaf20f7134d465e700a090cdfa25bbc8d64f3d4bc5b6bf5c64e67b165737d987fae1dd4e0dd806f0302047c435bb50067306502305adb8c75a1c3c0d2031f79b53423a64325a1bff8ed9511f3b2552b4f5e49eda5356aa623b973d34d6645c281be4dc280023100f812d7a4dec49001c72b6f232da27bea4a9d34c770a715341a4a116f15832e14586009663ab49da2a3d14fd39fd36ec10302047c435bb5006730650230044e371d64cb433049fccbf0fed1cf78680acf61ec636489e90dcd28cd2a1a056d43505f6b3e2a6a611884ea4a28bef2023100e066fbf3a960010c243d06b72da671c62b6d0ca2895150bc0a482be9e2b7421d8cabc22df4b6e95af28cddda96695d2f0302047c435bb500663064023045477bdcda3048833ea20dcee4ff7f880c42a3a359f97624870c3cc18f28455c1954931a6c66a0ccbdbf64c04899adaa02301424d5c564e9c1b602bdb6178a0ae0d74ad792cf31fd2f2d0d2f932d9059ee1aa77527eab49c8a4b67b71bcf1cce86990302047c435bb5006630640230204e58799024e49f711a090af5e34fd60860f13eba3612f1433ddaf1b44ef2fff26420cb3c5fcfa3c229c7718f0c883702306c739cdd254a1419e7750cd6389f0cb2c4f6144176f97692e4b0ebd8baad25936b0fff6bc93f3770c25d426a5c06cd7c0302047c435bb500673065023067b3d3161bfeb7895a8da70d1b62929525fa758d1eec385c307ea889ea10fd7cadd7beb8a20b21fab1dc06940c9f7cc6023100a2d449df7952f12a811e1fa44ff61e4e6395ddbf6dd7b2316cef2afb5fa2378376207ac1a3ebe26e80c1c79bf50e0e8f0302047c435bb500673065023036cf16d8f1c166c96728664ccc973f602899126c4df0c92d42cdf59f33f89af98cc0ab7f3277512b8830cd3920b51006023100c3bcbd6055b50a36b9b07cf42ec55f7ce0c7883258e8e06e7542bedf8e71b6b79806b30eae846b9ee295753e16c231170302047c435bb50067306502302373699511bd67897c70e3da928cb34a5f6163ac891fc6c98e5d498b512deeb2752d2e7b210bd87a2395746d56d98b9f023100edfa632114250c9454b88190f5a5855256d008fcaf30d6d85175ba4f0ff45ae110512bf00ea60b7d9d1ddd4d064bb5b30302047c435bb50066306402306b18cccd6527769953b60491f4d0ec1b868a1503a79f66da60286e91c6a0ecd7a54acf198c5be48800ab1d88a9094a87023018aced7316afd0a6c30637aae59780c1de5e5c3d9ac0e584180b9b28e00ecc028d5a3d179e8557a77bf56b36a053e2460302047c435bb500663064023065d18a718993f276e53d7eaba0e5f1d07ae6e8b0124caaf5482d28f49a3316383b6c13d2fc76a6755ae28d3f274acd5b02303bd9d1c933a4775cd145018458e7256ac8ade1a2c9cdf1d419fc6e1ad146233bb66807b62ac9bedb19946848f739f3680302047c435bb5006630640230539dd938b7ef23fcc8f08240b2254f72a32427a5d5f910a1da336342508fae0ee7758f93a3ba92f5562dc0189a47bf6302306ae232d7d3fcc660cbc05e1a35e4ffff67a7abdf0fae353c6f9cc7b19b8c0be03847b2631326193f0d2a5fb42fd8e6e50302047c435bb50066306402307c89dbba4b26eeb0e587b35938dc798fa43189534b2d33f020e9bd7b16829b419fd548f91ed73dd4570a6397be1f956102303ca62814a1f57be9b122999f26662eb4de3233b75799b37b4f0092c427a00d04e95ca5f9d46f16c0d51516c41d69f7c50302047c435bb50067306502301afec50743ea6ae61e16508788158f48143564066adba6532f9bece65460f52c27144badcc3fa58db4b25028725741ff023100a678edbbc28ed316c930a92bd8d89d6f50b411c2232e5f1b7879d62bbd650720de014212358ed9de4f88dad714ff10ed0302047c435bb500683066023100d8e2d0ccce6985da4e30a94b18c7e45070a4bd07e7ba3c368982edf99aa2b24d49d751282a90253283d771ca35f629f6023100d9c82550cf975c9b5ba1c4c09ba1b7a043d071d15166065a34efa82a3f241ae4a3c1f561dcb867b67b267fcd046541f10302047c435bb500663064023072428d53176eae1278ea315f7995379d649164c06bd861a4a948c5a60feb167a3afe24f1117a22555cc88a2b6043892602306c9eda3efa00170d49105b2b7328510233371f914a64a0ad3ce4dae352b76b2d98f09937b2a317bfb6b517b9f20c433c0302047c435bb5006630640230053b7d2767250a50a1e2e6e3bcdc77b23b1d9d8e949c03301255ff035dc2a2ed4fe1e79247313e7bf5c6002eeb9b5647023000fbf1c41b2e3badc293b9bcd288a8c2c62b446aaf4267d01c7af3a6aaae7575d61640ec18e4fa4fb6ea829c8b5ab45c0302047c435bb500683066023100b54bad87c8977b29492c868c36588aa64926391b1652a1cf147322cb5dd5798c1e4e65ea60cf7cddef84c48755a1e1030231009c4d42af72618cd59a1f52214fc1c883fb024922ee89ace32593e3d056ab3e2544e6bb724f3dc8436a35da8701b778de0302047c435bb500673065023100f20ab9135e1e1f50d03fadd3c31595a6d7469d51e42199b704fea8aa484b6feb71c8c8a19a0028e00c015424c41ab71a023028c1c2749104c448c4557abe94f49aaa094b2077b514eb7d3902e6d994f1034cc1bce0a5203cb55087e0b3ba7b0d9d630302047c435bb500683066023100944d6e581ad17caa4b5489b5f99087ed988bcd6fe369fb316395bfd0ce5a7c5ca2e6d1b6cd21a796dbbe9f425667c0ca023100f52c273e93f14b2aa3aae04e9c8542f72d5ae66b631ca99642aa3f991c969b244a838fd0ed052d837bb958b439ac42610302047c435bb50067306502305518f6ca4b3d0c7f5db1557ae00662dd71b5033e72bbee02be783aa8a45b0ac365fac3b3d8ff667bdb1a3acb130a6cea023100f5ab99619cf74b2fad5c3ab43f62e8d1d8163dfab0c3fec1cd3865a0975a190fa806f33c0cd9cf1d17a98ccaaa4f9a540302047c435bb5006730650230123e37d3ab95e8af78540651371261b3f52174008748e5ce2737aa260d2cbb8b70b90ff98a866ea359192a59d69b73ad023100fdfa431d41e14ea49f1929933bd8d2b8e5c354f8ca7818c572540f2355109e6595b74980c19d4732ec1c10a4266431050302047c435bb50067306502303757eca437766ee1583c8b787c01e89ed9c58d52870b9119d0d2dded8aae10f812ea845bb198bb6750614293e37600920231009911b5bcdeb6ba73167b40db085724d54241758b80d3a982f246cb153dca47da7f58de06185c66fd08271c951310792a0302047c435bb500663064023009c03d5cc6998ca04a1521dadcd3fb074108337f2345f5bd929540d9b676a706236d7b145d85d7964c2ede76ce8de144023053814d4174005d36a884757155e8bea16d83615650560db667a05c3e4db9142bd98fef116e2ff2d2679ad8c0171afe820302047c435bb500673065023013b3b48efd24c4c176b587a85e9b3eab2f6c39f4db349446ffbb24d17bdf1a41dca8bcb7d3b28fa65f4ae4783d699692023100d65e75d0e5e4a22f26111f1b0cadddb2dc6b48961122f69cb40168d3e8a1e968fdfc04ffe35b451d346079c2302cd6780302047c435bb500683066023100880fefb9540bde66ee6f91a4e2aa6e90d3120805aebc314ce530761f477c4a4f69665292315c7360e8391294a0ad61a0023100bb25b34fc5ce807cd355412e480899306a4ca3c6bc3a380ce4987590aeac8076a8288a42d0d6f5651602fd11688db1bb0302047c435bb50067306502304776334058908f647889a4eb3f6f7c428746654cf306257fd4840642499f7cc7debaf14c53d4ef7e75c408d7ceaf1420023100b426a4fa751e887ee856d0c424d1866d9011924761a6fed4d8fddd3f472d09b730fd9ffb3bc5f683cd58ed7c64b7dee40302047c435bb5006630640230347f50db9961f897d7d10f1f641c912986acc3e5313373e125c74dc435379d3e823b6883b1a5c8bb2b5d3e0249b4c833023018c035051ecd053d0abf336ed6d9a298597baf718c682b2f26e14685a5d02737afd68058add414ca41552d38a9267e1f0302047c435bb50067306502306441f94cdfcc0b53212a02854f65580fa8df7615a881629a1c6059d8223edb834e65eb539131e83f22f52ac18f6f91d1023100f82db698c3d876f9fdc78d672a4a30a1b726b0862020b865c8465d02f8ab31ba009776ce57d51630d7bd0664bd1f68030302047c435bb500683066023100e7175804928a536000d7b01b9e0a9c12a7803ce01b12422142e49a48e4db1a1e9ec1cc2700c7310cbb089c87d65f5ba1023100f683b03324336ac0167c9eecd91c329a46d022c359a3315c0355e4e0cf71846106b0881e6acfa2f063137ba389f4e8e00302047c435bb500663064023056d5d314ddaae0baaf7e0fdec99e21e94d37ece56812e98ed94c51de22d17d3a023c332618cc1a9b27c1d492cb58ef3f02306f829dddb7f416ec239eb4ae567317095f1d25df2c121eb71bacd2c750e3455827047d003344b3b69d3daa68249fb8790302047c435bb500683066023100bb0c8ee5a1d4f895dbe17620e8f7e0c477ab3419d32d54ef817c62110bc2285dbe030806d7b729373dd42c819205b8b5023100e60e37e55e4205365e73f965f01c18e73454c34a8b0dbab0923369b7c5337e93fa945bc8d9ae0a449ff6bd10b69d533f0302047c435bb5006730650230663c6195698413b13cbd1d25516991d5db5951e50f6f3c8c74a460a6eed2ac691da74ccee3bd9abf2560a508e8f44b13023100b3bf65f932017e00dd0f8ca41c38bafe5ace0acaad0fc9f5de31efe44f35eb7fcc5033b75ee541811f934328e89bae970302047c435bb500683066023100bb6c205685c1afab9c1371c464764dbd617f7569346d14542fd9a21e17ba083428614bffc0bd48a121effc4e713dd413023100da78d8ebe337e82a87c6f6af94500cf25693c9e2444d56d2f08199d84262ca780ee07974d2fe3669f0ee361d847b54c00302047c435bb50068306602310098389a6809a9e505930cbdb364b0ed329c2dee495b9c0573dbc755c96f47f0feaf997d9dd16f93b40abc8ab149b1256a0231009856dc93f77590c9722a0d0ee3ab605c7892d501dc1f0390af29543fdd886b868e1c194868f83c89815e388ca083bb6f0302047c435bb500663064023052a894106cab99214fcb8540c5c603a35d5502c28d1d7a388702bf6577a120a81b77d01f551af15f73a26d307c8d5039023037071f0e7ede2256b2f1429d88272c28c260ea873fe538f6aa8b19b036727d229d04885b3cad95e53e18be8ca42be02a0302047c435bb50067306502301f338e614955ba44f20578b433cc834a134017d226933be803f69636ffa416d5f09a05cbfe9f7c6b8b2ed4e472a8c504023100945febc863f5ecf40edee9741485189fa28d003f79724aade0732e45882353313cad339e4d680fcf163ac40e482dd5790302047c435bb500683066023100a31b18c47bc72f292d228bcfdec152fdd4cf09f5c2dc026f8009d72e473956559585038c7bff4549ff5504190086bd15023100ff3fe5ac31146b23b32ca037b6aa5c89e5e62480b6e5d15c2875d38861173363510761c6d6668bbbc51f4df94167a27e0302047c435bb50067306502300ba0c06a4dcbbe2e88e02c3907a8f6fd5bfacefd847aeb32d16b1c77f198e7c259f18c734061dea38b6206c1bef6b9290231008b2e1f620bd0655916aec50ad78b4d228343a16249b1df8161be43273d27d726101a9f87ca9c7477fd5c25b8b023f5ea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100989818bce4917ff86926f447791d9d48271e051e4dd9ec279989c091ce55a87a7d3ee4c50e5ee191d2b3602c5a830eae023100e09329162832d37353712325b58549e9c553dd9b0d545cf3d429c2f2f6657469d2aa7b77bcf102e3f2af374298972cd40302047c435bb50067306502300af75de568134cccda06594ab54584d6191c2b229e5790d44d7dacb1a4ce69f8caa0527124187f374c7b355f20f27ad1023100889d7ec2b7fe6e7ce0e35badd0566457a4057fd531f425a4a9063bbe3f0bf618311b4f036406662685e9c7371b8b6db90302047c435bb500673065023100a89307d34a4de69a2be39fc49f0b1038e3f62982d07de077e216ec1049824dc5a0a11ec4aecdb18f79e9cb2d0caad3b7023019d6beae78ff8ddd03d4fe2448174bf5ed2cd9c64ea62f38d334efdcbdbbb88d712db6d56e165fffc494a5b844e7a7d50302047c435bb500673065023100f5c94538a3ed502325c4bdb5b17da0f7081d9097bcd3fb4ac1dbbb8067d7a5cbc58d8071c347cd99028ac56f64fc38e6023074624be07368d30bf32e1c9fcc002fd6848f223ad7a2543b176abfdb0d819dfe6144c7975273bca654218238827c78880302047c435bb50066306402300a3e146e7a58065ac0c855e2c4723242ad66cf4c2e06d5d72978e84e555b9f9884714401cd793185527f9f63506f93d802302c6d0225d95469a2edbf94ead71ce0e57a3131636d87f95c265fa49d3f052d6344b07ac58cbeaf66802b936a282631ff0302047c435bb500683066023100965368d531bfbf08db1a824f485d5883e94c33b309735d430f572293319df12bf09634177e803a488a5f445c70023562023100a08d4d84b4508ebd3b3874db36078178f638e27f224239b24b304af3d2114ad26fef1c7669610f3d28dc906e2b25cd140302047c435bb50066306402301979e74354e88f02ba2ee751249e354600b596885f1dae28fea53de8b4ac078e3939faa675e305cf52588e708d7dcd7802300eef28871e9a37030fcfb616077b9532147429b352eae2cc5bef7642ed22368a4db1ebac3e518ea3ceda92316bbf4d030302047c435bb5006830660231009988bd3a0a759c5e690893fee2dbcbca0715518a8374b95c8b02742fb937a267d8d458b6c8fb8b868e375930f0e968e3023100e095f6b7cd58ebd6f40aab433363d56a0f8744d24248420e4b67db29172cfbc813aef7d22a5eccd17be95b1d15160c1d0302047c435bb500673065023071e3cf6d1eeae5aee2090c797e672e6b0310c24c2881ef2c81838b7b17c78bb147dff088e51641b63b6a5c40a12ba77f0231009d4a8cd907303700f63fbb10163af4258c52eadeaf383abad3dbe26a09fd0c4b7cfec609d7ea8568d1699d7d775c3b700302047c435bb500663064023065d21fa5972f717968489c56b77d16be8edfd12cdffde2baa7e4240d9c93c97abb7420a15a469fc27ed4a64725f4c78d0230690461b3c4b139ee04f571f41af9284581f28a6a702cf609fc57057e40f8c4defd8c8bc58fdcf089f5749d9a338fb6c40302047c435bb500673065023100d0d00bb8ed1f9e73d3fcb29d7712ab8eeea92065c5aecd4632b33f3d0e5b9f874621779529ebe06fe4a520d28716c9980230798a6e3bf37e3c169e0fc2e44d38e7a71e32eda30b37763793590c3494facad246d72df31d0710e125eed361eef8f3e70302047c435bb50068306602310093518091e970bd929e4ca657aae0ac1dc8922033d414eaad318c68dbfc3ef4f3eca0f4e1d74ad25a115d16735b23d9a2023100f020541ea87ef01c4b9e753324ee0936cf04a7ab871c741ea963a9ea80bfaec9d2b27f1b37d82ab62cbae821294a65000302047c435bb50066306402304184df553a3e2b370d7469e8148b604afd840babf471cb07212c8b319866c163e1bfcc2ab7899fd40acb9bcf881cbbc502301077a3b048c70d51bd0fcf79c15b48b96a287653eb13d37806ee2a09044e58b1de5020362710d3e967f753a6f2dbb43e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ab4eeddaa2a3e6676da7b5e937a6941c91f1f3f2c52b38fcee0bb9bd4125f1e9454e153f2253c376451b149a1c5265d3023100872faedbd0d5481f3d7706a07e45aafc884c46c0c6a05b8ed60f92e07d68caa1be3428a6ccf5348a5912b372d78c0a490302047c435bb500673065023100f6ef2acdfc7f41c5333a596da182d3c73de229b3ca5a703ebc9586653c43f8078a607f031a9eee5a6e16186422f9fba002301b1d47afb8b3d0cdbb634eaea186d6b761bdebfa4127d60664a2e0bbebc98e07623f1635bebf267c435505a03196e03b0302047c435bb5006730650231008f5f4af16d694212db3b39f529b9e835aeb912c02a23a7e7afc86dfdf1206cdf3cf7d3bdd4348c10946def55bcb10b5b02305d6e5b471fe7595917252abad2581209b33b2e66f2d3fdac1ccaf5fc5a03bf91a373d6bf9db2f5070f29f21febb8a0950302047c435bb5006730650231008e537be450654eff15f31f84d4ac8c74c1bd1462300d885b27d1ae828f2a22c34907f56863a47900e630a0f965a6b3b602306d13dd66279583511741c72e63203e956a0026a0dfafc2e4aa66b1a97e6a3efa39664c4924453bd102ad581dca9b407c0302047c435bb50067306502305d197ed59b9a3116cf5d96b01fdbc4819270dcb3db64f7280959df0851c9620b4d2eccfcc2383bc515d1841a645b18ce023100eeed97aa5ad882f6ae9b73f64e498e680d27a5168c287583b957a5311f81b720bf53d137e296bdca15eca321533ecd900302047c435bb50068306602310099e2f5712b610c8c1a7299e3575d1d84496293449395b7fe222e61c1d64e24af39be2e1e903c23e3d27a0cee9c6ab5eb023100c25da96841bee4d9edcce4de2ec171c9884118aa6698e02243e532863a8c9d7037a01f2203e3ef75c4ee2328fef344d30302047c435bb500673065023100c0ae7f35573c2277769ee0e4a02793f6c28a117b253f522f75af3d08914b240549d02f959f128474b59ae999e159a019023028aaf136536eda47cb87a7e81e60ad14da19647b43a0957c905889363383cb081e27b00b18400fdafb035a87b2fdf3cb0302047c435bb5006630640230624a416646853fc768e2ee8baccca7b419e89cf9b7730251d3308dd3a4fb5b883df119de561e8ffa413460398de996df023054509bcdd4ab7525ec5cf631156c7742d304ea47a3b30d644724e6acbd3718c890052560decb0f65e94c3cc2cb40a4c10302047c435bb50066306402304e25fa7559aba617e40c11c436fc775352e9848b09356711c70b442a1577a574c439c59de79f71434248b48ca901e70b0230463199d29303ae0c150765816c6841e5cb37a063ba42cfdaa568843032a9aa1371174616b09b68038b3450c7b957f6900302047c435bb500663064023062ebd2f9240466b10da19f041b9eb08c33d6dafd27966ef4b1c16c667591ebc7451745eb3f6d75b4f96fc89e8b00efef02302c94fd4ecdfe0dffb6d0b9a38eeefa006056e30991ce2c78c6153cc6cdd1906b17d91bd44b896bbd3c54109daf40ebef0302047c435bb500683066023100eef4c0b0d3847738a14661007da6e9577617c58daa2d0c7b780205e1358d3258c57b8460de0b47df334283bfdf1093b6023100a075e42e7f05279fb883580c8ee10315d1c4f9489044c70ea33b888e2d0945f56eaf49bd62fb600febdb178270530aa30302047c435bb50067306502310088b5ad045e84af7a905e655e05b3a9ba34c146082beffeceaaeb65d974fe27e75c36ba879a138a32ec20d09e2c2ec4690230702b2c9b4a5b5301570cd01c9b6a56d17502bbc3944a06d9d63fb9ab1f6191115693d66505a2ad1119f1311dfbaaa3ed0302047c435bb500683066023100e89bbec81de4681a4e3fdbbc041066b1225cba6c32f1c56177f943d9441862b5b95275ee990c154ca4a58cb23a7af790023100c5a795194a0851caa9373ee749f2ba42f3025647df458e7c5c38fe99fdf5d87a12e6e020047afa76d1602d0f4f0c4c450302047c435bb500683066023100b3cf5b99529b87a471fcc061aea3ab97c7c37a0bf6020c3b1482ebb60230a2e886e1406a06bb7d6fa7a6e04dd4185723023100cb0323ab2e281177a0f7576495fc7bec579e8627dcbc99fac58645d9c8bfa5af19e3e9179b474e9b0eac7370e443fddf0302047c435bb500673065023100ff001be5d726daf3ccd3a16f0df4725b897c00ce141c8367627288f6e600f6e49f97885b48094694d09aef54663c10620230781e60f6157fcac80209d90b7fce5f16f8a1eeab98cada053b43209dbaaa3ab876e02b90eb1bd4465358a4eb529598510302047c435bb500673065023004dcc8ac858bd3e176953e599b68a83adb712611fde2044c0661e0a2d26d85761eac81cbf425a74120f44a8ca60886b2023100c2ef49a620c3e7abc6b68e38b2245213a70f1816a00e116737bb9a31d7aa847f12b2bfad90fa35b0d18bf8bb88d9e1ae0302047c435bb500673065023100f169ebd2d37fbe4a580357d9f6984ed85fa7f52a93749439e0d90c5174a7c1cf941c23a4631aef957bef78c4d34264f7023059dab4194c07dcd46664682a7c1c95e5f8b568f5933989ad0ffd66ce643b232bc00fd9944bbc8cade4809a8603f29ad30302047c435bb500673065023060cc6c82b7e8a04f4aff3459b2ddb3fc6f9a5d5b8c84c194c8dfeaf279b801a9eb06914714e06a220613f8a9725c6968023100b083a6ccf4bb483f41924aa87fafd6868079e19f38ff26f92d023acc2cb0872c7216a89132fc8c16344198603989a7d10302047c435bb500673065023100d639b5a8feb9d8e1671b4c3dd2ade294ad42ade9209feac91fab68a66b5afc1b0f5bf5d36d1248a5fdc1b733b4ff62c30230088f6c2561609afbb2e55960bfdb4bd83d163e46a4fff1f781181d0e361c424e2dcbefe32181a667258bc19552ea3d990302047c435bb500663064023033e02ba86c7cf0568121da32507b4be365a55edc2898ef0e8240faa582f96362ab175d5539175e0bd07cfbcc9a5a441a0230700162a3055cdff55f97e594d36ad78af1a7cf7ab41e6ec0d11b48685e5af2e2e672724c8a4dcd81f5f99c10b7b1397e0302047c435bb500683066023100aa1559398a599ce80b68b2b9b16f5b858eefec2de24399859764b7918ab570a3a4d8af44fad04646ffc714258dc00027023100ca31d3478222ea909cef23224d520984ca663434ad152e41209f1ca8f9548858fcc295629ad36b8ebd3b07826898bbeb0302047c435bb500683066023100a51058c06e8c0d3fdc0e679d7ea511c8a2bb7f0302710010f6324e1a05abd8826b94b88fa9db35eefd3dc89c3b11a47f023100c4d06d529e62e15c9de117cc9759bd1d8fcf5402f8ad9c4954992d48cb4e44855acc9b2b5fb2df131c5505da3282a6ce0302047c435bb50066306402304f00b66c24b2e5cd7731f23b805c37224abd7d5c3488ff4a8c337c85d332eb812936215f453a5f6d481da8204486ac9d02303a402e073e80b0c619e6630aef4e62afe946bef49fef4b7d78f1f8bcfeb15dee3672bf40625b4adb14379336b415e5320302047c435bb500683066023100dbf76fbcb311e4c5471f2ed204b67828c80032b69654413b9baad2affa5110b2fc7ff0786ab17baa98c2552bfae4636d023100b2c89c821764035b9582f70b24d863a2bee951b81ae9e0da2f17c04737a0db558a534cb45ad7ab9c203f5974e82a18790302047c435bb500663064023007c0691325a152685c63929818e177d6a36b4293531f7dca2de09032cb7cd236ff88d226de8f5bb4e90a1559e6155c0902305d796a9405c3eca464a15b7c9dc1cb91083c1738140ac78e783b9e5c10828710e8f5a8627f093d9ab7201c09d34f82d00302047c435bb500673065023076660a2f8d204c867be1f4d699ae9ce27c045ee89a233aacc9a2b1b8e8379cf58f272b0b6935825d0669f7aacabd7f61023100bd13f9a84920267f3592628a284cd2e371e3b29227bb1f4ff0139a067061cf16a42553ac505271973b0b0420ad1349c00302047c435bb500673065023002fcc89ebfbc73d39579e9c16bfb29199b1a9fce9490e9640eec4972fec7f0c7e61983e984fb9a9f43cdadf4c3d98b5b023100b98f3a9d660eecb0976e762864b85878e9327ed600ac08c64dadd48f97d716a9fa728d4f1184f894760398d3220fab9c0302047c435bb50066306402301e5252ee2d20823909f91d5b766654e76a3f1a141748b675065f88a383755d6ac24da52990bffc9cdbee067cf508b25002302cd6b3ca4c629501c1f28c85530ecdd61e29adefbd54c39a63972736135f50958aff48fa2f801307a5ab3a4e95b0dd960302047c435bb5006830660231009793bcbbca61bb2fe41bb7043ec9d0aeed224a6e0bac3c364cfabf86f62793a36dd16fb72eb712b56b75984395516306023100b0542cdd26546d3f127ca4a0c91909bcf1d178f1535f1a1e6fec375bb916c384caeb689c78a52ace481da99bc68c10590302047c435bb50068306602310093abea373f0cfa6767192b1b97edff4c010cadc0e1bba15af9bb61c49f03c6775872f5e11ce489320b13d9f9b9680c06023100b07d50e0fcec893038bd7b71cb79bb3f470fc3efc363744e1a62edd7e36654530a8f29bf2938cb0e038c9d2af8b95d420302047c435bb5006730650231009d4fb459ff950447232d548b3da041442643422f76af56fd738e3192a961308d9cc9ef8d30e05b7dfd9dae6fd02f324a02301ae4d2a7b4251522a1149892aa09b7297287cd0c370e00f632b3faf3efcc767fa928855994264f06738543beaf335fd50302047c435bb500673065023100c58210c2ec6725fd0735b3dba76025e8e2212be6c58be79825ec91e8046d989ccc4a97fa7c9c3b709c57ae295ca776d502304c713477ec1ab61015d446a995f9493e6a1ffdffe2ac1419013dae3d99d346d743f661ba46187b89f86f0169398cb5780302047c435bb50066306402306a8a7a178c0db84fd8b2abd1a4f5f825dfac43d3b780c71365628722cc4300b7b353a3c3a5187e989f744caaf956310402303652ad64b607834a5c223c1e0268f4e8b7c4c247b1ea84b884c01e5ee171144e21988c1ccc7c45baeb401ef63ea815850302047c435bb5006730650231009b7ddd6e46949c77ecc78677ef8f3091bafd912361eebaef43124ae0d1d20b5890e2af416f926284980b49e76b1f1829023044683842f99198646858a1e88934addf0b4ab7e943352a77816397f61cae2bc131d76315d10e9e89a6eb5ba1a7cc69f80302047c435bb50066306402304718be7f9fc5bb9926e9d804b9f9a8d0dbf3b7128312f44d4586fa33179d77efbf9d3fc2b4c9a2637f2f336440190eb40230154f286beede6358346982f3485d9a89610fe7c05f6af63201963f7111c2b417fb54267c3569a7aa31acfcf059b3f6210302047c435bb500673065023100c19453a23292eda9d9dbd04df55814f198fd4964962809c0117b1bba2a3103df7abd4fbb6a3e54136bda8f02193ba7920230779aea2a5167df5753aadbb7b7d660783ff59ff5b9f8bb0ed490a1a0de7483ca018bbfc3f063a11343a2731715f9f97a0302047c435bb500683066023100949ccd4dc74fdbe98d094506f7806bb685946cada6c24fc72c364964367b2a18aba2e0a612a1cd0c4fae676544da9a60023100885e388af5d0a99ec02339a1d8623c3abd7e8b6c95c48469637d9f91856a53718f51efe6a822646a591f7a3ef3f02a000302047c435bb50067306502307fc13e7145518af1d51b725dde2e8d235c2132270c3bea8e7579724e48e4097822811db3dd3a1dd0b8ed70b8a87e1f96023100dfd918738a8821a2ebf318af04086adfed6b9ff93ba4b845ce8a143836ab725c7164f0a5d078069baf2e39965d3ffee30302047c435bb50066306402301ca8eb6b4c50cd2cca061d1fc08bf1be15c33194da6fe25560e17082afba230c488b132b47ea7c730bfc3e3a12ecb623023074446c6500ac5665f12c9c087a1e605378d5a7f7006bf46bb1838ace7e000a4505ab0b80d7bb6bc083b130f7ebe4aee50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304d46e3d81aece876d73b0d7c10d6140cc8c02de6cce0836f1fa96e4ceabc8d602d7f4dd8cc299cb76b969a6b90d3b380023100d7c5c9aabaa56bd89d35cda6f6699a7ec598fbf887c843ab5f018324c146d761d6721f144511435f5b2eccf711a736e30302047c435bb500683066023100fb8e3adef52f10024cd99f16a910bd26e9676577024b002be53653735b348c517021f822a3c41f8f3923cfb88aa827b4023100d2415c5a3847b4f30735a145d7d84aa76057cf9d581e97c7028d537799af4d79a9e645795e5598c44ac321c6dfa3ac4b0302047c435bb500683066023100df6d7702f4037cee3d98d4e57fa8f568365f38f2053380795e03edcdfd079ebfa8794e9e5a4fd65b0728d29c6416c042023100b0560838a2c14c4ed9b9c8337eb34d5732035ab547530b63f5845d61decbadddc2ef0540c721f5c990eca64a8e39a9990302047c435bb500673065023100a2a5645a6e4dc3a9bde6f9c58af7e5ae0663f581bebf8d5215965407eeef3f837cf898af99dc27478bcab4d421102e6502301edca6af0d5da990f9e5c686576ed938baf971d2e75d832d8204b550766daaf02571907647078494f793b12c495a8b340302047c435bb500683066023100f7fd6ccf8de8e34fbdaeb3785adf3824075c230273a1f259e669e0db48f40567d8cb3b775d10548a196182b19d6368fd023100b84d5c171c1a51646e3195b45ef382f2a6e26165d88339097cef39a26285fee803d397c181843cf6112e70f085b857240302047c435bb50066306402305625f0359a39291ab31bfbd341b90f1f1b54dc4e0a3fddc173b3177741ebc17ea5493f909b4bc32235a94d0120cd66ed02302aa20d3438a73ccaeb0fe25c2ef08626c6efb4880adba03a5fd679e87c3d60235d707bc7f172a707a3a8df46d52ca7b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ec2918ef41c8ed9c0f748c4cdfb52d7cb0538a47d8d67768d216e9b6cdde1a96d63843682d013456300418c55c531dd0023100a9440dbd7bcd3694390e54a2e39658a77397dec3e305ad17c55c646d1b793c969c0481546f22c764277fae1c10f1d0c30302047c435bb5006730650231009d981e29a020a610b57e9604574d52fe16652c0dafb218674eb3ca0457aea57a8e89398eeb6d94bbe16612275eac3c3002306b6bff8f250ebb68dfbb37bfbffa16f637166c0679897218c4bba6d8fa4675d5562439de25ecc0522ed9b6c56512260c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d561bf8de3441dce2494f6c6b889e91e7e9208fdac8c34cb83bbd8eb49df8425d52647d2fc9be974316f54916d69882302310094fc83440ca0879969456d83180af98545e282cddc343ec0d4e60dffcc5eb8c384a223dbffc2e2537c79982acf31424e0302047c435bb50068306602310095efeee538e488a384b33d67f1991c656dba66d6bb968ac1fbeb30f83f3257326da0e7f9b60f6a1520d87fb4921632880231009b637e9807505e630b6a57d72b4043d7626bb42d19f7b1d69d1df0bb1b37483f0e795ba6400aa127d7b155fc776e0e1e0302047c435bb500683066023100c2bb595b423b5a063cf89b8bd819121f01c98375b9a3f734835d554ad4fa59edf39a2116676933eaa87d0fc34476f6a2023100959463a1adb2110d763ad04f8c5169b39ceed361f30ba20c02e4aa6bffd546d1a1a3257cb260214f401a9c5815cbe3630302047c435bb5006730650230419dbb19465fafa568cc5778ae13bfdb5a3ae89dc6d1463521b5d5a1ddf5df74c07999384d2a83d62c693fae90c79ac3023100a68e3e0053fd312d6f045ea487a35f8dcf8be598f78a4490a01ed378a3338b57795aa98724fffc616da6052cfe9cd37c0302047c435bb5006730650231008fbe21510e662347ebe02d5e28de1453780bff8c68103c67b1a21d35615b6a491b134099430c57a7575502af37563bd602304a2f6981326705c3431854a0dd22ab653951ba5da6312d621bddaa8beb3f078a9f8a98d8098bb792e34f7c5ca082541e0302047c435bb500673065023100fcb9994ddb1dd9d29e7d956841e8fcdfdbfc02cb5026529937384f56b9cacdb97b1f7ce889c6e2ff1f6084483d55ea1902302b97ff10091b1ea7b3c6d2887f2a25e0f3d6a5f5b3f4a667790fad9cd0733972dbcc40ddde3525875e7bb02f66d4662b0302047c435bb500683066023100a80e36ff0aa8141b3bb54513807a29b8e528920658069442435f439778d587d2d7e43b01ab12f9ae17b1a8734667ed3b0231009327dfaba109615be0ff84357fe8b29361b573b2912578c036deb5437b5b56dab5135ae3e4e1f315e435179e81c404c80302047c435bb500663064023037a186d15361a147d8092d1e8b005050771ea8593c3d0fc6fa9bb90929c863561fa917f61a44afbdf455966e1789a30c023007fec5f5d9f73fd2e79e850d8386ebfb5a1b210c97c27d7d6432996463cf3d9b6f973f298cfe696510767ecdb802ed6a0302047c435bb500663064023053ad41a70ce5a744bf82204a000e6ad5b9d9a4380323d70c9b4ada93c0397839c0b0ce99ee26119d4aee6d2c109c9bd3023032d838dc934b4a7a863a01eb8cc98e907bf67e889438927b1d4609f13f7d3c76020212b917df538b3e48ef043ff3570f0302047c435bb50068306602310082f9e5649d9b59ef156f653065d05cf0b80016a1f2815135940a2d3b8f966559b1d3eddac41fd3d2d685f239d204c886023100e8d9dc15dbb0e9f196a6183802d60cfae8299125211bc110448e2db6b4641c7c45796ab593aac6c24724f50d8045cbed0302047c435bb5006830660231009b2bb83f3d72de9a4e35b702d8c72996f5db470784535db52cd956ffd01b83be1a4f8016e8d333c6829ae09c792788ec023100c3eddd083950ccd37262e094814233b0c7b0717692a66fe92ba6c5829f9feaf4ac08048497ae71be4f72a52751519aee0302047c435bb50066306402307823f6192eba2b206ecdf4fedd56aecfab874fc15bcaa7e9594186a84e56e930d5bde84eb7ae134eff61bad6727895f902302f18f00b26492468f35fbf707c3d72b9388e495db1e2eee759ad374ca56eb127d145a9cd02a59fdc614a1ff4e1fd56890302047c435bb50067306502304c41347d8a98e735a2312e30dc06f972c3270041d076ed8009f5e7d71236e0a9efa95be2fd2f728e5c189f38c1c7ec47023100c3d6daeecb3b3670293bb02de728235bf9f64dd79f0d175b3533039fc3ab974aaf5425f898a6cb70bf082402f8053bfb0302047c435bb50067306502306773f43acecd37d4f3d48e08612b18e6390c643450472af04de0f2034fb9868661753aadb1c905485abea8e92905dc300231008c53d218ec02cb978b48a73a49fdc2f13c6dd1328cf51b035de992b0397e8cab8420be99fe4631232e4fecce671331e80302047c435bb50066306402300c65738470352b2089781c93148a0f27fe51ec706ddfd449ce131145025b4fa072802747991cd129f7d97066244ca13c0230569f9eeebeda55ba410d98e7a7adfffbd0d25e0cdbd3428c49cfcb803165cb99e875f2216bef789e226947d6709aab540302047c435bb50067306502303bdd620f10ea5ad362a856a632b47496ee89f0000a0ec5c3a7432e3a83fbf23f552d5e6c1fe513b61f5c18be67863dd2023100f4298735184e1476d515c293b5696a00aee900a591d4f0667889dda89400f84c849e3ee2d291f1944de94997046f911f0302047c435bb5006830660231008282292477314846201ecc06d631eb7bfdae2203d2b15723ae37ca05906b0eadab83a5320349451fac84db91733f0a3d023100f33f58a8c5f4c318d564d28c7ea1735ab8027b3e0ce577862c6ba18c1ea23776d08a0502d7a2d31096c318281a187b980302047c435bb5006730650230043dcd5af38cab434a2203ae013864c50fc15a52f9932ba171d95964c2d8006ecc0f5b6252f5f7e1830743fe78aed88a023100c3cc1ebbc0f8f9f1dc5b48cad9530d02aab28fb13fb89a1aad093ec84a81297af0d3172185ef15e1ad48d0182237df2b0302047c435bb5006630640230726a6636fb7114703461e5f686eb9a492a940087df2f87f5a96cff5faadc191fcf560dd10701244c89f51d0e33f522e402307ba5f281feb7666f8a3120b0f056ce7988dbf822ac1ba009d98a0449fad360f8c0f82430e70b81824352c0e3acb1968b0302047c435bb500663064023078f2588da3dd77f0b43a54579ff8048f527f5e285c5fe2319eba106ff2938a118562750da3914ed084e2e9bac24c18ae023027b4d32ec49e63115e47c2d6f62d8bc64623e3ba8b166c17cf1b4ca8c8e460bdd1480cad20a3ee205d42430c9ea807a20302047c435bb500683066023100adb885ad39fd1908213a968a8b2b522b4df4167aa39bcfa17b467647c7203d64c540cbb132f6065e9089b9962e7c746d0231008576113c9f3210c9421570cd361e914ba74b09ddb98e15f78e267685fe30c3dc68ac70add640a429bf93b5f7f868b5cb0302047c435bb50066306402307895ccc79e333e8c14a4d71f2f6adae7d72aaaf741ddcf2fbc278a74320844c0612f59d79bd40f0ffc6780e97561a42e02303c33938d3440d5b0cc4edc3fa96090fdf99f6c7ea23ed26a0ea46c44c4197ed2bc15d058c517de4a003ae75c82262bf50302047c435bb500673065023022bfba64d2862c1c78d91ed376e29c9b98759adb11961a069d63a8f6704a8c6a78fcc2adfcc3e028373f5d5f6611786b023100b80366d65250455045a1e4855487ba22e1c3b93901d7e75dbc4321b367f020f9ee25a2be7b7d226c11acd9eaddffe5c90302047c435bb500683066023100ba368406105664acc6884e2dd985bfffd158700f23298e87a33bc875be7a5e25d57348e1a0aebe3c80f0dbedca6d6d7102310080970d0b3d20be7e07ae3be4ded56448a2940e6260e76539b379f51657ef45a590a03fe109631ed8d55aa81701a17a510302047c435bb500673065023100c0c1f91b2d2da06659e33c12569ede6982d2bdd640702363817695d66ec0ca5923491a96be079f1f9b62bf4bd348cb87023061f5b76b744677de64210f724f0ab2ce24c3dd7cb55a1aa2d9a221e36fb0b781fdafcb72247acc7286fbae4872daabf90302047c435bb50066306402301cda60ef1ebdfcab34d0b534a404eb6b70ac608739d18fdddebd616548d18e9d3919dbed5dca598e381cfca73b4a7f9c02307d32dc2fffadeff96898f8d7eba85208f699cdd63a46a205a86ec4bc02bc88b17d2ed24074b834bcc5ad81820ddb91c10302047c435bb500673065023100b98b2ae2eabaccf8c3ca0fe5f9df12b04dc1da4f84b900780a32f66a1830ac19d3332d8f770cbe98959a3378b116e11d02301e05561eb1f80beea5793bce77e980e41e31afce0e6c075cb5b6ecbbc97903a40e1567db8670db7011d55f6b2180d9a50302047c435bb500683066023100964f9f2c8b63dcbd724fe3bc2103a58833e98eb85e4d17f538f2427479f16bc59813da953368773d2c38075d6166e6a0023100e02683aa271efc6f14d6304e46e248d57479df3c10056c21613f7e298307eaba49a2b76e4f8c79b16c2f1cdc2a9c5f5f0302047c435bb500673065023050a100ac85cb885f0a77b412d35db5671c6d3d7f21d680f6651b268ec5f1f15038bdb49e572d947e6ed6aa568af53a670231008a5272b4a908d6ca936ae4b5a3400de5c3821759370d243a7c76600db8eda6841ff8ee8405ffd0254feaf58d798e66b50302047c435bb50067306502301dbb8cbb0abff928b2cf94b4482bbe24727800a31c114ff69c418106351d385d249bba5d0c9cbdaf2a347a0e37a35e10023100ae6a8e96ccd2a7047fe9f5fa703c220d382c7316bab90bc0e8fdbf57807c10e59372a4c251a5b846d6d4708a44788c550302047c435bb500663064023009b9a5630fc8d20c26224bbeec975e3b771abba295c8110deef16f52f64c5b6bdb9c31fca04e2fa482f2b4b90bf60012023031ab6dc1235dad70c309ed416e14e088584c8710378ab303414e545f4f3e5959b100d1f77439a4609c5c2545ba279f5f0302047c435bb50067306502305803b271cff4b728b505712627ff0409a8aae349a896a35f04b4e8328f99408c0d464aaf235d579faf73283fe7d8caab0231008ae5f483d13adfade9eb8eb61fac9c6b35baafc8b987cd8b50935ed4e5a4f7a1b1110ceb3a01ff22d97e29fc013a83040302047c435bb5006730650230295bcfee857dcecf3ae7f2130fbe0939c4b15bb8f97e33ee24fbeed2f234f0183f78dd5eb5dd10608f9319599fa336c3023100a3c7195f5b5de2e3edc3ae18289e7ff84588c558c2bac561f44b19ec678965bc77f42b6dcb9b7d4636b1423b9b46f8b40302047c435bb500683066023100c346627bb652b7150004e6a69a407d268f055368c7a8bafd963882fc46fa109b6e223b34d5e1d526fbc77651f801d474023100fe088e09cbad8d625f49562f17510dc83abe999a241445b1312717d3300989d89aad73e565e6cdd6ff5e6f2bf40127400302047c435bb5006630640230725dbb561eb10d9c1a81bc0fc52727d60c61cdb7f61f46434e115c610583345c61f47ed52b51dd686b7ff92eff15583f02306d62aa3dc0c79863a2d7bbb3b5b4c539eb931c61365a67f979892df216d81f22904b6705187792813d699ee6e482cbca0302047c435bb500683066023100f151485ff8b2d18a9d87abdb7a9b654dfb06d73c986974207d8e009036cb932e142caf127340567a54ec9bc75c6a4a620231008697a2d6d1ea3dffc6767d281d064e8f076f082e70ef96bbc339c4d60a72d4670dcf128ff9cf5fa0a7c8218d1108bba10302047c435bb50066306402301ed7747834f855bd60417ec39ca7fb64509080e53872db441d0e74c97606404d71ec3680c3805a83d4dc4bac57a4c25b02301426b7934c31efe7a7a57039c94e35520afc604334fda713e0352e0c98ba4aab45ed2adcfc5b5dd411997e3e4062c6200302047c435bb50066306402302a01a89fb2ea9356e74dc6928d2ed266618e05dddad58c11df8ae6e6562ef734dd7197b918a0166f1767f6125d6e468402303654b578a3ef7344b8937dc8dc2ecdb866e4c65c45411d49e0fca65c41b092713c4a7da2f7bd1cf7462cf45d78acf8f00302047c435bb50066306402304dbe5dee8db2fd07a9f22156c96c592b9c2d625f9ee582cf51ffed5957b5c36668361fe8b8879df9ed290b12fcceb5a302300437ab308fb9bc626dd000d8c0391e532a0fe94ee4dde28722b89af0a5e55e4fc34965c35492dea4f107dd93c2f14c590302047c435bb5006730650231008dfddc92d986c79095b42046b448d9eaa1b0a2fac8f0481788e4bca9ca6479c73a6b02111280a494683577dd1fdd0ac802302af417b23eac4dd3870c12927457ed870d6943e8967daf11fa7a8f9a45ecdef3f142b50beeaa121d3c9ce2dcc68ceeef0302047c435bb500663064023077a8526066d374468d68369a13f442c034d2040a6d52f9bb9bae5a86109a8d21a777ff9ec37c42531fb1cdee9a38abc602303f35d5252b0554bb8d8abf103fef4f5529c902ec9fc1b4a943cb8cd85b08a0bc579992296c9b264beaad1383f69ec3620302047c435bb500673065023100db3e4d04867d8d4f35da86c6465d2aecfa3e0e399eac85bd3687b74188bafd6d8ea88316d9a193734204c81a2f17811d023067b2de0d77e472f5d043b545aa66b71ffd729476a1f91edc04031e769bee6f11090ca05a1b76b3a6db10b603ba168d9a0302047c435bb500673065023100c5488bf62fd5c9def93061dffa7a31aee3d349ad4b6633999c959d2fde04f9b5b0fed91129b24dc6840098e1601d1804023057ba6db9ecf64cc697bab2ea082abb1d72ad0564af3c33c8a7afa843949128844b24d0a154db47da2cc1e62211214a7b0302047c435bb5006730650231009e37082dacf3dcaead0f7cee774dd97945eef6d924f091d557e7dec0cf707c96e700b48308b3650f7e760805459704e2023004df9558cc24bffeb08e5cda0d43746275065a84832a9fd5c65a5e4b523fda31802066bb9bc9beb5d2def121e145d2f40302047c435bb50067306502300fcb943bcfc6086678bd7df8a683f0073564e53c0f70a9441f0a47f67ae7a2a2b85b8ae524821b3c57bfeee0a30f033402310083c1bd8f6cb9d0e4299c276976bab28d2fca76d6bad56cb70db8a167cfcc4f2d4e1718a74fc0831cff462b9d0c55e28f0302047c435bb5006730650230719ecd183aa699db7af8d2d2aab46fc77016afbd47a907d0482efca9b1118b929a2885866e341208829f1711a7279598023100d238cadc155452173d40edb065b042e91e41d6ba7c919aded35506e089691f61892348f607201f7fef306d61976e0dfe0302047c435bb5006830660231008d63c1bc8c52426794b1b16aafb6a204334f8b3620ca160e4b92047d3887d6aef87ddb70649e087a689f23442b2c80f002310099dc8ee515bd04b99d2aa341f09789af37490f65e1ff787611e7f4a492446cfab4cb9a224350148729d7272d1c9b5ee00302047c435bb50067306502300dbc6d10e782440ebe7b620256667f2722f99c6e91a83e440f7bd9e4f9d00fa8d8abddfd93951afa8a8b98bc60f40718023100ab49ea97b2cd47faec57f510a2b9167790e80db9a3f9295fc7b8b80b084657f47c1e425a9ebf97669749c9c9e6ae0fa10302047c435bb500683066023100d32bbc5fd9b342b92579c27100c6c78cba51deaf46bfb1cfaf107984237b137f4954a453a0ab996e2bdb53ace2e4078c023100fc73245a36eb239c212adaeeea12a28d9c9164a42bc11a7f1686ca5d346325f5d0d720c34e2d2eea997d45707ed0ba510302047c435bb5006730650230495660c9e6fda799782c2af6dd73182d5de81722373fc255ce8cd5457512970aeb0135a8f8e6ba83211feeb056f30417023100806dd11779d6b65529f7ef1426ba525c318e921bd49d2d4694e5040d7011aaad6aaa34afb5fd1b1784a3ac67268046700302047c435bb50067306502310083b9a15405b0052f2c3e252d1567942ab2710df7de5541cad5fd1110de5d8b31fb5faebb55c5f1752cef7620d021226e023036e266e160d080474994be84a960f7ef4fb386bb9b03a16b94d763be899b2c36efbc57ef5c6cc6c12596668e03deb6930302047c435bb500683066023100f0577c95616fcdaec6cb3421562296a6636e1317e57a81c8430643db9fff86a01a7bda5977e25d71eb13d322bc3cfbe5023100eca39249908a326f02101de4d5623205a3f87037418c0340a8aa2dfb30a0929dd66630825d1fbc7a2943eb071231fd640302047c435bb50066306402304f84f6dede0e09d0e29c239ba16907bb040c9f0dc4786636b2313b089f65dd8225639fa26f0044730877255d499e42b502302071faa1fcd17dc42f5abcf129f1a71df17ed4efc3d218415514fa1013c0ad29770d7bdcb61f97b8cb53e1742783aa050302047c435bb500663064023039fe4e18ea7677361e768f7f30045b80422009b4c50a3e320610429417dc2daaa2c3ac58effd5ad138c3267bfdf5919902301ab3b74749febe6d4714a73de27291a9991914c642f56d9a4161ae638274a5321c7b6cf76d62ba1506aea0f04823ebd10302047c435bb500673065023100cbdb77f0d3004450fa5c3b6c50703046a3b448615d7cb19ae56016b34603f2d9052cbec49756b5a20339bccce55178050230238d39e1874201849cf7956e879cc7c892ae654d3080d0e4f5fd02e525da04b705b819195e864c066129f1121c21ec200302047c435bb500673065023025f254f3cdfa3fc1514e78f72d0a3d4343c0d674a5883604144995ab3da320baa5166796cb4fbe36050c397772d32eb602310082586a42ea84b27fb0df553e4c34542428397c368c0593dac71603f3b173bdf706ad80f916e7a4bb7f382ebc55e6b0210302047c435bb500683066023100fc9e03527e4c8bd2764dc60b6d047220e48875e85fb7fb2979f0a10eedfe2323c30110a6df88c377d44da878986f7c5b023100a38ed7da83f7880f1bb9aa5099ea75aef5352bd8743873d631e09a6f360aa9a50977d15b904f4b7303241f83376388320302047c435bb50067306502304f3da37102c75a149b6b26a48d0d47797fd88e45d4c9c08bca0543882c69253de232b3a24b18e9be5e46a5321f93ff11023100e656fc5820107e4606670684040a99d89267f91225062133eae5323c470bd4aec9eb521ddfb81db067438e1b68976a1f0302047c435bb500673065023100914be52dba36058c28f3300471e44a6310ef242d3395e2c4c1dda035b4de8ebb4f730a11bc9e348b2c863dc07505ba4a02302d211a70a6f44d9f33a00f9e3a04fce638c64fa004f107169649f3a3083afba5e759d058d882b8d71132f6673cb087bb0302047c435bb5006730650230625990d29ee54c793fd85681dd361a0e036940607424d8e7fb8039cb0f4f82737ab1dfa34421a840eff2216dbd7b652a0231008354e192e53616e128523148e52e184641a26b6e45a1720dab89fb2d4d3659fb2ce3241080a8b77b63a5337cf3985c980302047c435bb500673065023009969c1435be84c960d46278c0903381f7b74bfde5225bb1052058507fe054e1d8583335015f6365582432f27867ef61023100e286fc82effea897950bc3e78d406ad173b8eea8b575f24e017db221afbcaad165b7a67d3c21f74f016948f0bb2f98030302047c435bb50066306402304885b69a5883cc82e8a32860fe5fdc260e0e662fec836ce2e97b54dd6c3cdb00b4ce8f94390d19a5f162ad2246eea56b023017e8441bfd1f5d990099a15b363c3f0e3edd2383cd9948e87200cb1b822650fc5fb171060b8921d9b97e800d6a7c239a0302047c435bb500663064023054e67242424031846ddda9317482db457613995fefa57f41475d4063ca0c7965e1851cb79e120a035fd0cddbb4a3e72b023032a5240427079791ca39828c93859a4bd2b3ca4d6428edd90b4530f5ab215d19c9dc37ee33b2e3db9e8cf6e4362100a40302047c435bb500673065023100a3d7225c00de0c3ae91fcaf4c085f90d4295617a3c253b809d1551d6a72437c2f772bd809479780f32937bd3069d7a64023070492cf3cf54f10dc935428b5c051d95cec072415eff729cbb21cd13c0295fcb63e57838ec674f27887c4c12af868b9a0302047c435bb500673065023100fa251f9f9a349f8512736a4f1e0f6180799f02015c52170953b0308f762db9a3691d18f25210c91f1ba1e4cfadde0060023034ae8cf1821586eeff0199b2b980ab1dec63b4234b669ed94c112084b8467dad5cd0be45cefcb602fb67eba6c9419c800302047c435bb50068306602310087d3e68ac7710c8356136b950033f3d2f421e202a81b09ec69033e710b34bcce65feeb2a277875d1b7a73818ed01f7a6023100a8d91bb722ad655c947182cc406fc300b5a48665644f8cf71c11af4a4ec90c0fae3d65c2d8a8e33ad370d8d214a3238a0302047c435bb500683066023100bb37f65e92c1eb42afffd8cb1d1a1cd5506998f89907514620a34736ca487ae47d62011d0dd653bd16963b02fc42ae10023100fd3ff150210e8ac4db12740c8bdfefda71047b38a4009f3310105638efa503917061a73f311ac9bb339aeda8fb08f0ec0302047c435bb500683066023100dbb8c4f4890a1e830af1a8f9eb241b832ae255ace935a3f47bcc58fe02b990f40f92a04e0e992cb986f732efba848194023100ec11cf38c29b80de9373745562b134130722eac5bc90b28825c81e4504c8ae22dcbe1216ed96155ed9748be6a8d8a3a40302047c435bb50067306502305863be647ffb837385d035a82d576f5c90dd82ba0de897c43e4b03738d6fbcc5f39ec646ccae2a789451fdc925dc2b660231009485dc416671b677b48c718050c6342ee930ee990121d07567e784f82bdb3b5e942243bee1a0e05a982e7e76b93b8bfa0302047c435bb5006730650231009dcf0b38e225ca2da1f38185aad77e315cc44e0813129a8407c55a6b3100fc5c688a874845ae1493a33d3d264bfee9fc023037540ee8517f559acb36807fcb0b913e1bfb80ef8c2adf2146034cc46fe6131696904c3d24e4aef62ea680d047ecdf960302047c435bb50067306502310085882760e26e01ac49da46c5e27ef31c971c532f1f68616cf03686e61dc3facce7e066554d98cac3eb7ffd0c4c7cf938023062143e181f37a39bdba487358e1472aceb3ec60c9af07c9d4577ff831801b43697c0b782dac4f5ffef6b40fd4b1b37080302047c435bb50067306502307797f065cb3edf0e1476b16be6303e27d88b2b8748e40fe4abf8ec82b039d843d45415d7f21cd6b38d1865a6c65eb855023100aa4b90effacadff253b242ef65cf3d4f9d38e29d16e697b965c0cd48a0ea07fdb7b81266a6077534a13d36265bbead130302047c435bb500673065023100afaaefe27ee67b29f30953052092b021c3bbe855677b608a6a54fc8a5a07a7bc60a67d372783102e2d243cca3113ea1502306a1254ea8a91b7d56eab10c46f3336bd82b10cf058cd99b83267168d108167399b329af29c98987cf5ffa4770ceab3520302047c435bb50066306402304397b0f9c3386cc62821688ec67ebbcf20b9e5d505290d9841ca150f852fcd0a129252f699ab63ffe1231a5e08c83ebb0230475f56606e1ed57e75ed78cdc23d1fda49f2c7b846d306487a03ad93685577098817f1fa10800cd53b0c99ce473a0ed10302047c435bb500673065023100bb6cb2f8a06ed13115bf57452ac6752812cbd2bbb97d81e32c7f86cd86245c26921ea92fa45c1b83cd512d6a6dd2c54a0230532bb9ae0554957c5206153738a1b030b21d2ff9559d991433ace664d39012e10722c510fc9b557fb659f9d2575748450302047c435bb50066306402302cfe411c41e3df6d577666d63ca1963856c81185efd83e77c6ca35c586dbb7fdaf38feabb70b12366cdc53c54e53bd05023036a089bdea0a79387cb177ef9075f6d5436617083806bea20869e0517a6dfe3ca31d4db37a74e2d622bf88d0d00f96760302047c435bb5006730650231008dabb198dff338b8c93716886fd701027bd9b512a49b552cfd588dc84e27948683f98104bb48c30a2848827c871e0f6402304a9f7a426f874b8920541f81f30599997d92ddf53b47682296079fe68497ad65aac7533e39a8d5025a16b8c176f423500302047c435bb500673065023100802c7ef75e2ea1fa2a421ef89b136c6f0a9ae834b9270bd374d07264d90da963489427481d55554a2b04ffa7b6e3f14c02301f0d27f01bc6b4553614d1f7ceaaafd5b41d3f73a295f39e0d4ff63950e1edaf2a5eb3261b352c053c2c1fb557b3ea4e0302047c435bb50067306502305830df50752404b16eb28826b769acccb9738c5b36efecd491b4718588dc453b5f3af17dde07b0680190dfb3c0ba096602310090eecb9053df8bfc8ce430638cdce9397cd4726521fce20983db5fc27c03ed9b619d83ec2937886796703dc890ea1e530302047c435bb50067306502302ba6682f7d83a6f58cb1068e8e5e7922ff1ea9242e2238227340305b58b5b4e52c2e660844a06e9c8f4ed3ccff8c2fbd023100d564ba42bba0e2d819eed87118cf9142429a15ce7e303526043377d6aced47435e2be8a8de2052f0849a787b17e556e20302047c435bb50067306502301d4bbfcf1d558788a7a57aded8367d1025a356071235992e8039b62c14ff6098f0d209a9f96173461e1c513b7a5fd20f023100c31c25598e1d1408137db6902b9c000567f53125ca2835fc8c8ef5d693dc4b2a46dafc589640fc1a19009ff3f60cbb770302047c435bb500663064023065e1da913add2a74e00c7c019790ba4c00d21431abf82dc65f7f578740085d1e2e991fd9f0ddf8ad644a0ec6c2b9a3230230116d5f2cf3c121c90c576e33aaa82250f1845d56dc4e44e6c261070f212d1ee80592374f33d0b18f11e2215ad0c959000302047c435bb500683066023100d908418831367ecb239226733332ab6f1f8687509cf737275621fc7ddb4357f666d6740328574431ebd9c35f2c07dea5023100dff8939cf1d225769850ca6173411d1a483caf1661f4ea6b8f1e76b2cd54f5968adf3cc54166c3a25641aa226d4481cb0302047c435bb50067306502310096767a30dddb2ba43a6b6d6c250fa297653e413adb0a96d0af98ebc8eee2a1805ec42a9aac566499088fce1a10e6f5bd02304f7e1d06bb1a1cbc414c9d1b06db4c3678c64bb1b90597fcf78c260015958ccfeafdb77863d5b80f5474d05f2de445470302047c435bb50066306402303476c1876082acd659a13e5601bcc0ad5daf35645ac8f46744474832182eb4771b26e00d92071135859a92952b361f1a02303d78288e3e163d7e7607b91e583f55b380888d88a9d38fc2f127413049e49c3d5ec9a7d9053e234b0dacae61cafdecee0302047c435bb50067306502304c33771a1481ddcf71e8e6cd95c53d1aa72f9a0ba9b41c5832fa97f9f4a6d70d515f6cc986d681ed4ef84f1463edb0ea023100e33755633845fd693a48bd3d64a64a0c0c5994be33291dec44e29377703fea9e8b9d832d566284198061b070881741060302047c435bb500683066023100e400b1824f4dbcfc49ab1450a275733de0d654da77cadb88bd56a9f7756ad3ab5c3b94e289a578774f4401e2568b34d7023100d307c1bf79195255a913071eb791bc3f7f235f688e2a56dc64ed65772b30b42ef1e645203ff755230af4854674f27bad0302047c435bb50067306502300401aa4bf2bce6d2e96a5f08291d5441f9bb97cc5be8d99d6ffd6c477da0378f8b0f5b1788913699da0970c3ec09f329023100871c45e8fcd099d14428619c95eeee458be61b78998a7046ef24e0205787f2226f41bd137967543a0cb24eab55bdca720302047c435bb50067306502303fdc10463055371bdae354b8a48f75003f68aebeb162d269d29c05d22b3903aef5adff08361ff21ef6fc96ec77d93519023100e756114f57b114a7acc2c3ff5a8af7960e63539e1ce7dcc76ef1a2de5c02f1ca193e1f28c9159994e002e5182b052b5b0302047c435bb5006730650231008699d4c317621dd69bb2cf375533c24711ec64396966c6e3aca0f623d073cfd17fb2235ff73003249d9be74692367df30230380e8146f97a892576d0e61ca2cad388dbbf231bc0d1565100e59f3e0d8f250e801c3cc52c684c4f216cd83df5a83e2f0302047c435bb500683066023100bb12463e65b01afdff7e3c9f3328c5eec461e4c58533de8fba68afde82aaafa92a63b526cf1e4b2ec5b1c1e20cdab9d3023100d8cca84ccdecb06325d7f0f27c77794178f34ad21b7fe93606664a102026c669aded1a1f9e8ca0002c9620779044b9de0302047c435bb50067306502302d74176c04563d3e1c73b9d5837cb6ddaec1bb33cd11beadf6f0bb8d09125ab6a8975feebf6e3da5968f06151e662139023100ba32d43fce930b511d7421195b87fbf4a07948a254ac1449df105998bebf9ce1437fd503f67860ff3527941dcb6d7dc60302047c435bb500683066023100bf60e73663afa9ee376be02a6730553bc3805b6dcb64fa7a10d21492ddaf0464f89c795321908931ea4765619579532b023100b920edad1fc7eb8bb90d4486161764f2d10f190412d59bb67851f60270edf8f5e1987582e6e75a342f4a217374e998dd0302047c435bb5006630640230437220b59e245f9f17d63dc742a79cc0ea435d688f531ac1ac44a08b5c36aa3ef58835ce94b9fc0918ea7f8fae5c6d4402300b9e98fd773500d29da945a0d5a7e093fc0b82664ef3be03e0c37601d1c7c855af5cc3cc62b47f8ad34ef06ffb7f9acc0302047c435bb500683066023100c1f2a44a334e7897adb9d663019d65a0749971365844061f0f5944af13c472a14650e2fe31b5071e5cc874322ba1b69a023100f8633ff9a9dde419decc12f2408aa72a316accb40dc926acf76d7de96e1ad3c910846f6ffabb561c58e61935e915f3340302047c435bb500683066023100c63aa53fb6592e60c2d3fa78214bbbac3ba47316e3bef3e7133e1bc9a9288ec24e4a97de8f3a16971dd09a90e7ed72ba023100f55dfa78d1e030ee2340c0175963ddc9270388cb8d9731edeb48c13d902e62185e389dc52076de54a6b775702057016e0302047c435bb50067306502307751bbfde675823660e4ac43ddd0f0bca997479533d7fe96294996fc56dbfad9902478537277b64da622286542e75203023100de17e106d31cfca471afed145029ffc3c788c779dc5c54599ab8b4dd6af91d3381f4756d7104da08084db396572868150302047c435bb500673065023035470f70d2d69ce49408bcafc9bed8ae25637bba2ba11c10a756d80f108b0c31a455e7b33192a5b1281501e1cfd2fa02023100c7c9568718c43e49d7a6e2ea63942a8e480241d8e4c3202a396441d7e145d342c1cc5d4702cc2b9b562e18bcb0e14ea40302047c435bb500673065023100ee013dc3c11c482ba5bd46189e690b5e185010962fc755d0c71ff9ef16ed812a1204c77ab66c44b10ab7d537ca92d27f02307bd48dd86e1fbc790d225e5b834dbd7a9f1b1c9d6eb34787145ab0bb1535f959e7821078f5635f5e4cc81155d6185ea30302047c435bb500673065023079871cd2f3eaa1564c27bca9e0eb96b021647094658d539d0d63486d2358f41a855ffff503f27648f3ce49c678242793023100dd3190c9ace3f2e3e8f49cedbf5a2c94ee07915ec6ce29e898ac3ebaac7834dffd2ef1746aefa8d5b2f0309da40cdf230302047c435bb500673065023100be479d558a9d607bf78d618c1892a7c91752d140b09a482bb370cdd0427fed2f763781cd468fd2030acd0aaebd9aef8102307b2b0dcfb63b7227a2d57368f3855d67b0d2101b439bd3327d33ac14f140203f33ea622cfa8f7e0946cc6d602a870b110302047c435bb500673065023100932f79735e72ebfdc82c2cb28ca65a5d6faffb8ea8773714d91c13b21a1f3114c8e0e7c00f1d32fc8a926b3f74c7a0fb02307cd5adea92df270a7f64444ea5e83cd7ca01db384b94346dd76d5535f18f36523d3583dea4c9a057d976d8bad78bbb350302047c435bb50067306502300cccc61421070060dd0d96f7a13575e22e0fccb04838080ba0af3b35f79e566a54268b1451a44e2ea2d1f90bf001dea6023100948a77217c1d2358614f3f5eafda7def20706a1f834e3af448cfe1ea96e8c81417cb19dd65d929f3d6711151b39393280302047c435bb50067306502305bac2ec076aa586fb8e445779fb5036cc151a26ff12ca234f488ea3d4dc2c2c630173bf2190468a3210a44f1a1b810dc023100a70ea6b2ecaf464820652a523950cf0a22f0aba728aeec7505ad261b75038507bdd553aa102c84da936a3fe533c8838e0302047c435bb50067306502310081f9b7db95331d2a0a6d5659adbb7bedfcd2c044c5736d5c6979c227e8a46b1be4f7eb5082c2c4d0f1d1b55f49409aa002304a58c2824df3f78a563340960878d6eadfa3ec5580aef17b8575fefa2e430a8ca93768c4bf42395f267a4de7f410d1360302047c435bb500683066023100b8524ad7445641ea9289e75d0fa29f9abed6d9038c3ad03a522712176f8714944d344ced27d4c6877d9fa20fce64b6ce023100b1f8439ab57a1def33cdd3a142c9d4cd4ba657c360c5a6d9686f711deb85ad9ffcfc0de91bede27a0644e7954f8956020302047c435bb500683066023100a6a14dd1f679cd4e01cd4c75b22856620c8969f78041725a11ae4eeecf193628498a80e554c1129516c4eddb9288b81b023100bf8eb760c90be7532ed264cca0755edaa86755dceec887b8ec0447a525c0bacdc2e149efd99d1d6da7d322104640b7720302047c435bb5006730650230788302b53ed9fdeacf3373cf428c58fa5a11e63aeab085808176011eab6c2eb0c429ae762be9aad33bf299c064afa50c023100facee5a3a5a63d24cca6e8b10f0be2d929a9e10c2f805f98bc1f41c55aaa6ce157b9d04f554dec4b8fab5dee82bbc34b0302047c435bb500683066023100c61354066b6f62043b2ba18cde6c597a039ff96d3406e1ca6d04589e9a2ba9f102854a443e3c0566365eaf1f713f81df023100a0c3cb5320d1b8d684daaab67ef3597a5de13f85b3caf74f5e463dfc7bd3a0f9e4a44fc6a384bd36c5f8d3c066309b3b0302047c435bb50067306502301765cc62bf77cb61cd338aa85129df3f7467155728c96391764891f5b8e079177c11d7c4e7ed4178c6d08748e5555dcf023100def32a430e39975b221c6eddf67448cdd617a7bc7e7c9fe9a52be8be86c669cb235353aeac0e72f840d6aa233abde0350302047c435bb50067306502300b6784c677a9eca8e642dfa9a8f7157d6ad1206de68912a53108d7430eb93824ecaf817bc9822566acf3689eea0233480231008a95ea4a83f6fefbe8b55d3df27e95a33760af2461f5502cb5bb9d83fa44e670a427636f1041cf38be85756d62376b430302047c435bb5006730650230516d3e09f4316a05acef1d9eb6f6f190af9abefec0821a65924c575b0b44933fc905cab58b3c5429f04ecd6cc4b68a08023100b41bdbafad92f4c239ac969529a0488f14c8d81c020ec509728a92131bfa1c35984d53320a3b3e73e60317136d97422b0302047c435bb500683066023100c271741d85f6f2f3e17d43ac832d5b9e633d3effcae021f0e8fc4beaed1b48385f9e402c7091e8685231c7acc4fcef8b0231008581a3122bef43f0e1d7defe193aaeb390a2d4377593881b3bec22e8d891be6defdf3e2d2072b9117da3982581ff694c0302047c435bb50067306502310099e2f37fd2c910551e0c387b56cfc4e9760d25eb81334c76abb1c84daa5ba877f856a6448f3da30f86538a09e4bdecf3023053bdf1d5753ca659b2cd0d9286aa8b8178b15a16bc3afe662702b1c36d388d08fd33d98b45c230f67e8febce9f013e8b0302047c435bb500663064023022a78692761b2c37103078f65c0b4da61065b2fefe3b4052d060fd6987602051f59d5edd867d7e5d6fc88f6859a9867202307b8b05820c85dcd40d8c3bf33219ffda7f505dc197a650c5585d5f7c90c75834d299efb096af7440c1a2ecdb9e22db370302047c435bb500663064023006d47abe6d40b77a18d03f0ca524427bdede78d4ca30ba00baab944b794d4e2db642464eecf4e2f98483c77da6835725023042bbfd42c1de171e6ab11d805aa7c1892b240f8db44919f2285c2b13509d47b952cbcfcecd62020d28afecbed73e36990302047c435bb50066306402307671ae259ecca8870bf328e4f967122dec26d21a01a5dc588a377ff3f58ef9ce8d0995f2dbc42efe81f163e5935cc61a02307fe7a095a9d0f891973989543d7abb5c9f15028be66993a3f1022c1bc76998fcd0c31e973ca7845b66fe6e3feac38d180302047c435bb500673065023055a4669e8f11548f3cea86c46c2a48fa73a86a64287e2a9c2c5b63e97c08c4a2b1a7527d32f11d120a84b5a664c126d3023100d0c6a729b21e36d1b189f8c3abdd6177cfb87cb84d859abd4a3eaf76b5d7fb74a8fbe970c7856b85dcc42dcdee09523c0302047c435bb500673065023100ced26aa021716f6ba42f2fa0c454847dd1edb185108aea129cd56700ce064f060441d7223c7a8e1b3e4abb71ee04845d02303af8bc0038f1eb102b89383ae7d231a1fe8c370fabcd4d10337980765a6580f204754ba42d3b73c1f0f39fc79175599b0302047c435bb500663064023035ade2e4461200ea742bbfe1708900b7fde929a149bb35efccaf0988b3ff9c4b26322d1d50d05f2a7ab3d61049ef661d02307b3a33ef593dd9623ee2d7713e857b173db18989195a570f6d52cca240991f453949eba15550fe69bdd372e185a67c620302047c435bb50066306402300dfeced510d70380800e714a1b90c758ae2b884e06a9913ceb10b92725eb18437e86f3a548ea59617e8e2a46aa913d9e02301b2740724daccf86b3b88a11f88b32373c2cddf9e8ced9c75a74e903f367265023da0eb04febb539e1054b2bcaadd9c60302047c435bb500663064023011b7b1c5676d82fc0e3b5af520186039c46bd5c73dc35a9aea3c83a3fe53e2a103f4fff8102604cf2dfe812c3cd94fe90230111f6a0fc36b8e5c9d6265e4491e0aa573474e338abd8dd85734f899bb242e25bcbf2b795a196d1ed0896941165c18110302047c435bb50067306502310080bc9b595bba3601f6ceb3e093c38237ff913053d0e296d455d32ce9c6e224e256bb28305a0f703700d2d66d4239bf1e02301801eb1829bc4f92c7d80c6ee9b16f0bd365beff1b69bdf18c0f0caa120bbab8486fea4927ace036b0886a4c9bfd390a0302047c435bb500673065023100c0c4f51c52c8fc98982f6ab49bc0434d07f4353d8083e16afd5f4935533910a59b773f9ae6d829952a7b4b9e4ef47492023001aefed95259b03b8557b2c82c2d351239e3d8f9a43c908de2c61cb7db0a6e176cc7a72c9c9aa4bfb85b72ada4775d300302047c435bb500673065023100f2a7c29a6420fef01fac8d8fd4f092951c38d7fb6214d46eed25b4f578626fa06725f97b451e7dbf309910ab021e83cf02303c840bab7bbb71747b60c572f949b982f8a0d8cd33ab984d1fcd63bc09632a006e0c9bcf785616e32da5d091bbe4494e0302047c435bb50066306402302ad10243d69befb643d1a2b17016e8f2b78240d71cdf0a2e4afeb18fe25d4c1f3704c35a5a8b14d4300f94f26f144da002300fb687a4e37f49ee1a2d5376bcd903648ce7bd74098414d831a694edad38b4430c810b09c3384b8d31d5912bb4f5b2cf0302047c435bb500663064023051d8a7e45a1f3ed373c657a3d0016c9e8fb84ba148f0725c00143a0797957a8564e9f41a9ea7336fedd8994f7457dac0023006d171a1efdd08527cb2dc04c5745a47b5a99a7a2f45130adb41dae9863a100770bc382de31f59cf0122d46bab40289b0302047c435bb50068306602310096693ada9d2b8879f9b64e6b3735ae4d96a97c8b7e77e17867cd90a554b55ca642a73d87dab6d5038f6f37bce4791cbe023100b99aae3a9bb8025399915fa5011f41839ffd513d156b9f255f19b329af02dac8a85772ca4c00eb9d43ba07cb600b2a500302047c435bb500673065023100a80b44d8c443de8bca754d407d77fecfbfa6a21e5e0d62380c2af245d9f498165c3d5c41f07cb1246f7828e11200adeb02307bde57c075b02f30b830d4edb69c33056949ce254788c46f61e210848ad7da5e1c7b339f12df75511fde4c52edd1ddeb0302047c435bb500683066023100b138ed8ba65d2ed6c52f1113ba6514cc278031ab87db279344a06a55452a2f7ed2df8123c3d342790045055fc12e983a02310093baf44f8e7fa805bd3755cb56e8ee9612e0937f43482fe3538aa831189f6dd362e3dfe7f9d1a15afd959ad47f5137bf0302047c435bb50066306402305a2f88d7147d733a134c5c6abc50ae06f13028ac685a58d3ff3c4d2ed15054063be4f5496df2192e790e0b5ff5433275023052b45814987108998b624b90fefb618f14d1abaac9d059002d0ef28c5d2fc0846cc9b08955e49043148f9adc54d36b250302047c435bb500673065023100cb871b470486d3f160dba7a7aabf98c6d2762aac087daaf76f995625f8b220538737694743ddf2afbf1e75c70f9b286102300cb0332d11b731e9e597af71fe65bcfec111e64beefe1187798e4b514bed706dfcc68149b4dc5323db292bda9e3f63db0302047c435bb500683066023100ce11b7572b1c44c5db6d5e6580aadecd80adae628aeeabc9e102f33dfc539c8f88896a359884eebf242e4a72e76048690231009b036dbcd0dedaf8c12dd138bad8eab3a68547d471f314135f86b30c7b001d30263d22e6bbc94db2bf39b41b8ca79b170302047c435bb50068306602310093e3e83ef0ebefc519b1261d691e87d79ec58761f07f5abaf514178bc127192f43d3195aa1dce60e8bf81c350aa3fc64023100da7a549dd40f6c646250f8191ab2d25b66373a2a80e8977e28157e442db1f8f51896bcf54f6af9d3d5802a6ecef8074a0302047c435bb500673065023100e1ca21adcb75e5c02dffd658346a155be0cc67a493fe48cd35d1249494ea0a0a0d51c23c9bfd729b0d2aeb417978281002300d22dd2bcf44dfca5fd118f4f02e47572ef4212da8c9e3e185f81f3903d278f49c8db2d4fd7fd54146547dd7833b32980302047c435bb500663064023031115147fe97bed12305cad26fb4b71a782a001f82173273d587f34f05cfa8d27bba0091f20e8e6a642734a6a4ebbfaa023067a99821bf9d7921ae4d28496e94efeecd055ded9c9d30747e494c478e9ff21c4ae5e6e9ed1e0785bd6155ae2128d0b50302047c435bb500683066023100c9ed04d0e46bcce573f9ea596b753642db90411b74ea81a815bde6abeb338ee450aef3081778f10850ff386b598d48b7023100a6a7dc664df73612dda276328423e8b70ebb549424906ec936f148f64e60dd41c9d7f80426f76669604af1c77f635c550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307e768518c58a954237e80f35b8c54ced5a0b7d8c4814764293e5df22d6bce0a8e216b8bbc97721dfb302b3b9a9826c53023100e7d6ad0f4219b869afa24d5d14bab1eaeeb0f02bed7ea9e6053479b19642f05f3bf68b735250c7ca86d4777852500aa20302047c435bb5006730650230215a99d9b83682ea78d65dbd265d92a148b18b93c197b983157093655bc84e603ac278c5bb61cdfd8b95c98ffbe54252023100e29fc473808732a6d7560c93d8ab1e1330e908bd6e88e1056d225c572625b6e6a7913c1cf4952dc839088a987bc18ed00302047c435bb500673065023100acbd2b67a7c22f3c1d2b0605acc19eb1c33bad4426d03f8491d01dc2c6bb4befd4e98c1e9e03abbf1018d99fe5c5f354023040fff89809de47b5c31e66a12b2dd8ca66371646a37e3023469eb062b2a7448db3cd9d1847260dd040d3aedfb8a6c2300302047c435bb500673065023073e7fbc379993994c10c7aa8fe649bcf48401f0226a42c219c464704925b3a2ada74b6806dcbaade38a77261dd8ab9bb023100b89603780ae75e13bf6af109e8fb2c9888dbb0c00d14083adf3c94ff2bc9bc8b6d8a102af7688eb499bb09c65cc001ce0302047c435bb500673065023004e36e3ca7d229986b8d5eabbb2287d60455eb2aac7b6a45c96f55980999b8917b03c9ec6a39f7d5880f3f1a456fd1c6023100b565d5aef1fca26ced12a118de321169053bcc1ee204b3e7bdd8d71be0327d7cb510066d261611e4266548f66f77392b0302047c435bb500673065023100b758cd636cd4a92bc446a31e89453712178ace5e966ef6d84397a6f9f1c2904c8826529b89c4ec29f3d70a514271caf10230190a702c6a5d12739d824b0f904de605a71655e9da2302bdc3ad3dd9278e8efd1c60323cefa9b1931c27c62598c001e50302047c435bb500663064023070930166804c1dab7383b992df7f13107c4d82fbf0d213f7f1bacd5ca4683a036b79337d7906c6e76f1d4ad2b7d60c9c0230212e5be2b70656e2526abc9f0680f309e8577212c794981cf2dd5d7d417cbfd317434f75779d7bbfb104ea0d8c0821710302047c435bb50068306602310085dc022710f368c31cb43d15084e0a124e130b33cc122045e29eb9369632c12fbe2f32e4e48d8867bb8f6ff7abab0732023100c37f8bb556f158876c4c65000b0f9e4193f637c32d438c732be96dc195b234a56e2e12aa9107aeab779c6b42f99335ad0302047c435bb50066306402307012ab317e840d3e2056f15fc782315a50d887be70e5a60b27f585aefabc84123f97c62f112ede5bb3d506381b7da7450230462680be577da90ccc1820c12ce2af2db6369a83b0a459dd14ea6bdab19450abfb74b82e528031601db68daac525bd390302047c435bb5006830660231008fff431204ab523f67f8de644134b152d1b07fff8dd57f9a70a8713012a21b13e941b6e5df96c5cbf8037235dd5ffbaa023100db937acd87d36287a595f2421cbea1d78b8b6cb204d9dd2ca90400879f8e1619ea7a66849d82fb4df3f39b4d8158e37f0302047c435bb50067306502301de5779261f14b9997385f4a0abea6a15aa7e276fd373238e7fd7f87075b7d2a359fdc7baed8ba362e13c6f0c1c977be023100a3f10eff0ac8c707c2a4646d2736f8c5668aad75f5c7e4b119a5fb8c3ef4306ae6c05f9282d0d7e5e680f430f5e6038c0302047c435bb500673065023079cc8f1ce37901a788463a5c250fe79b61cb790e51cbb7542ea629ff6ed375d89388c7473a13ffab6a1647d4e4f695e70231008fcc0f29ed766517b8eba5febfb2d707d841b018e079e3a33cf1fed6e5b2450d47db432f536fdc9fade31adbbcec0e540302047c435bb50066306402305d665f83e6fc2b030d5e16a06412d3ac0bcb96c311cb9a53b93ca8f5a2ee0e61b39043edc465c5a6eb982686d556cd69023062728f78abb8972d57cc3023c485c9d1d5182bd498a4441f2ac47e80fdd85d74a1598856fb515cff37d86c608b5f29ed0302047c435bb50067306502300d850c7df834bbc64e0d99787aa09ce26950a9c79540c6de22d92c8e4c0316c3522bb7b26ce21227b56be961612b3de4023100ad57882a4bd8dfe90cfeee3c70ecd6eb263c73bc230252ec0178133b9f8a5d074a4c2575e45ac4296eeaf3b5584ccd220302047c435bb500663064023038446182d10435cb659b41be94c9a3f1d872e0f38c1e0b375999158d2e36550a060bbba4a74b7df4f2321621b08cfe7002307db885a69bba9676be4623d0126721e1459fc8302d2a8d947f8b186cd6d617b9a6c5a64f79178411ee8891088700d50f0302047c435bb500673065023100ca59c82debab703eb5bb343a63242332a0c8f19cc3d0678d8aa0d40886ccafb0901e48d888e57cca49d6656137202fca02302de973d2be45ecb3eee300f64b1a4009b04bb8b613c4ecc44e539821d9cba8b65377d77b12803d19c6e42272b294bfde0302047c435bb500673065023049c5472fabf352749744954c9630cbccf338b0b176eb6cc4f530299818deb65812d5131f7c0301099065a57dc66d97e4023100ecc182ac87420c0a68cf122d1f13b6c9286892cb3c50ac6a5c61f6535a7f1457207fd340fe1314e85767d9761ba2c6e30302047c435bb5006630640230671b22ca719c0034af92bc495eb862dd17ecbb7e74ad6aa5ff68695b5e278f2655614d34f091dd207f72a2c89e8e88d0023036dad6f6c116d04a1ea3d3ea121da78871f62fc29c5b38043e3ea2c755f3598c64438e2eae6f00c2410c090d367457f50302047c435bb50066306402305800a466de931e6573436a9844746319d94b976da641c68e255a87d0f4fa9828911ba3f55cb8c001043867335382555902304a31f643dfdfb0ba45dd18e1c190c602ea8f89eb17a6f0952a8d999fb1c27bfe7a4559ef493031ef62f09de6616293070302047c435bb500673065023100af8488309860302c6433d0db5ae9a5c5515d0f84719097a40635d2c72096e11bcf775bdd376288ab8b3aab4aa5d3e460023032c51ee14369f802925d34e6d80d8e6f5f880a55c6e9a8f18c1387115c6e6f422b6c6c18b53527afb71876cd4cb06e960302047c435bb500673065023100943aa704cb0eed01d3a2b707c1fe6b0e688234eb375b01d0ecaf3bf4ba89ea9095e6841ece699015a45b273158e04e2b02303ace4ad0709ff4bf578ffa04efded1931f46087b8f2ca13863a4d84a0fd2be128047ac53b801aee2741803e5baa068a20302047c435bb5006630640230398f69873e33a2c8581ace5c4682a226d953bee7e99402cce907091735e21a62dd61d6198d883bd6cac9c206828467a90230083ea87c62693984718802ae4ad4ca87b12101fdeef9e74a4357e540875aa6f070fb5002997aaeb74e2dd5d1fa2f33630302047c435bb500683066023100813bc0a102ddc794166f4dd219e740ae99dcd23d9e40bc04658c9922c69e130fd28659adbd5a3fa3adf6d82e102fdb960231008aa0b4b03b033caf89ea380f40fd228107bd0a18877f861f93baf160940da4cbb5a2795331c6803beafb1e818cecac760302047c435bb500683066023100ebe4aee0eae7f00a4c9406dc6541d2c80fa25a5a4e70ba99a97ba2d639e7a7d4218bb368e8fcac8b6a136e233dc24c8d0231009a8f84e704dcfef9a3d4e056a7fb301f9554ea073f7379bac5c581b59c94f71e197bd353480a3b555264048a58e681c60302047c435bb5006730650231009bd6b9c7b427f9f8666ed79907bd16793c7adc326577358e52a83d227ac3ab7770004918c3b9f5abb86673480c346969023037945107ed6fc970ddc25c9d4a1932c772d76fc4aa3474571779c55ee63a2b7e17445b2e190ef03889eb650f2ffce9770302047c435bb500673065023100d835a3685b88a4c52291fbe4e1e8690ef576931551ceb06c2be0aba692ba6a5410953090153787b1818b6298824d455502301b98a178ee0ac6b4db77bec7598437e703f4f248eabed32bbefb6e05b3a38e2ba695e67ee08c50b45f4824469191af8a0302047c435bb5006730650231008f8598f91fb54e1017ecab778b0f95faeebdfa4f60a6fddc14ba7e3a371f994b831e6af78e2916402639959a8f0d3cf302307a41102c2cf52472ba0a318953e45d38ee31c5c7c64f890fe0022b3670095a34df75b997d3ee5911bfc3402953b506570302047c435bb50066306402303a984e144a7d936d86f2e14d9c5a0c4a57455e1ff7b5bc51b8248ac8342aafc61f6b55e3b923042ef4384d37261ff436023039eeacaf59599c8fa460d7959c4f8e533e45fc1aa7fc67fb65f28f8b98ed6b889752ac070cbd78e7d9c95e646c1dcd9c0302047c435bb50066306402300e026e3cbd0bed6da850b579dc244f8d745b0c596a2b724363b67e250db37bd47cb0182e0f887ffbc202c166dbacfed002304e4547df44cc4ed751cb061f886f7e729d7e2584a660b8e405979d57faa8e5d3bd801c4108926ffd6a799258ff5414a10302047c435bb50066306402301f36dfbf07a7a46419a6980883eefac944919a75d24f092f8e20738f7ca3608ea0435950ff7ec99d153290c83f3abdd802306c53f50d2d9325bd6f45928a17399cb71709abe89981e4104caa2ced84a8969f1d415aa2e3a8e50b7ad0f933e1308f720302047c435bb500683066023100c1bfa56793bf76789dd58f6cbb07627d0836600ad923cb6eed346b2e240e12d6569797e659b029ed7d887d74b076217c023100ffe4c46e0df8d3d99d236c51ce8fb3402ca2706cbba7ee3dfb77cbb09fda9ff0fe64ca4e1d660fa2d843d90eb5ee8a960302047c435bb50067306502310084183e11479135346a819004c0cde8db1bcdcccb7d84762945f8ae756f39300ed5ec9176d00fd65034cc6713eded6b370230610973cf578f895ad56295f0c9c9bedcfd7792fb7c771c0e8e16ddbfb29e7294fe950299a40023f1b8e44ca3299d1d1a0302047c435bb500663064023078eda42b775bc964092255136a4dfe7232347e0e35c5a5147facf2375e1ba1add3591aad07e0907ffed2f0bf48d50a2902306ac2e3b3af30f1c0fa8b6a33cb9b5f03656205e2663cd0d25b0872ac15542ab34592838091d217df37cdc2ed7ba465ab0302047c435bb500673065023100c55efc60d8061c2b04f38dfe555e966cdb8d8f35a49fcfbe65d1eea8c463490a086e5d62f6e083f50160951cd437593602303522c4ceaa598b6d6fba1bbd6c19d02b3537ae0213500c8518a998e84465066bd7b811b73ae525b6884d33312cd808d40302047c435bb5006630640230663334830906abda442e538caeb713de50ae4f17d1375ffccc42724de3b2704c48a44416731945382afe6907532e80810230694e2259ff0409de272185ea94b65d157b704ab806450abcd32e5445041917042610c0fb18cb08b74e9eec60d9d28fe30302047c435bb5006630640230238ec9aef866689addae53986173d4b5db33403a5eeb3eb086e1c70589b7763abb56a5f2acef92ae7c5d51a091ba3cf2023068f1ecb35efd0178b5f15d0a2ded8076577f361aa0b3a1d0cb8e66a19dce6ab4dd40ab62449f5db5b6e638e101ea241f0302047c435bb50066306402303400c70ed794e19299d6e101534c30091be8031e018fddab72db7b1074de1a0a06509e963c5a98c36661e46dd695395b023017e40e83df20769a1313b95c183b7b403e6bd2e9b6bc5f9c5b407ad90e8b4575c064a6920395c761252aeb5af25a9dcd0302047c435bb500683066023100d722ff692357327cb4db04404dd44d08d2197698b057250f04f6d89e9deca0af0166b70cce7859251bdeafb37b14355b023100fea2478914b5dd3578b6ed37c149cf7f93aea54953a5f3a0ab2d2ad8377247fb5f9399314b76ca0462859f89d5aa5b370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ce5ced2e55b787534fbee0c8cd7659f15ec9f522fd0d3259eb2dca0c8f397470c923a28ec0366167ce61935c475662902302dc77b1ccae6e9c9acd1d58cf26692c6017bdc2f351299d0403664f99930daf09f622bc9910d5f1fb57b804c144a27640302047c435bb500683066023100da3e48357a78eae2f153cf7bc40aacfc2149233a64b84ae4ec54b89202bae092c36c56261395ff60bf6b9cba815b3558023100afd6c78c6acc2545358df8d9e73de6e7f3ce4e71450049e2970fed7c1b0bba2777dbd8ad12b8fb46fb361a477c8626710302047c435bb50066306402302ba2443e5678a8e4dce347d88f4893d169769b03ae54befbc2a9203a443127c8ff3ba42b976194573fc9e981a338c96702306e361b33d4bff6321a16f075ea8d79b8992b1fe159bd55193a65464d8bd247a8eed549b39d41b75f092b8ff436e641ae0302047c435bb5006630640230010ba1232576ef15dd5a6384016f1ead72200cc033dfdc60e98e8cc87f5a68e6a3f259bb62dfea85bc603a7af5172d1d0230698b73e0892bcb887d927c47a04375c1c13dca2ac6d2ad20d12da5fac72829bc7a062ef5615d2ee30a133f3ec9f4cd000302047c435bb500673065023064a6a3025181787f58548d7270b10a2d5dd4bcc4f9b66377dfda1e9f727a96a0a37e3abd8963c620420b3444d439098d023100b3e195f0eefa670d798973d57e29589284c2d14b0d35fd6005461fc47eca0dfcf4b39be3ad51cadc1eec20d6d686ec4a0302047c435bb5006730650230790fe70dfc5caf0890a893508b0d334d9eeb10325f9064a7ba1fefb9cf884e63fe6256516118cc59e8f9bbc0bede2bae023100d91f3b2bd55141c7137036482dddd43bdf99dec308dae9b27ac781b5a41662107682170ba6f248f39a33d1a02777e7cf0302047c435bb5006730650230339d8c0727845dba427be39d712573d61620fad2330b0dfa0856aba92d9c14d0b2f1729441e2286f35d5bae6487c58bd023100bed95f1389d0b1a94589c545bca144d386b272a67eb4fe4859d2152e409e23e4300fcd666d3c488ef3674dbf544832750302047c435bb500673065023100fca66af3ff19e1760c02cd58aa54e3c2493ba7739dc3564e6e7dc6a041de10ead1f1bd6a72d9f865a020f92db6d8ad62023034edbd2ce0b4374d307d1aa8f349d7d134a1686752d2182d6a51b61207df96b3cb2a2baed97d12b5c43eeec66cc0d6d40302047c435bb50067306502304c664a293a557cf901f67a91ab6368bb2045cb5fc436cb73fc26570b1e2ce49c02ee56ffa37f51c0f35480074b6eeeb5023100a6520f654009e3a8a8a8ce638c99934cf8ced51292bc26e32ba158e3f763a2a2171baa81fdd5d96f3e04c4544a3264db0302047c435bb50066306402307564a6c6231c79b6fc64ad24ea448591c434a83b7c34223ece484ba811c27de234b29b6d44492377f0eb3a6f67f95ae702301e204ab8cd82ceb2344f9ab501fdf0cf2e0efaacbf887d5c57b9f18fcc009a06b585d0b3f21ec5b596ad61515cd405f00302047c435bb50066306402302f2f08a963cd27a7aed69219a1cdb2589b5813c39f9c609d9c0574104a98bbb3bffbb99c923c3ae188b754ecd6eef15c02305cd60ef48c26e89571ef4e94049c8c90126c5ad91a4a48a17c3f6859b10e7dfcb3be0bca5b07565f9bbe27ab2764ce470302047c435bb500673065023100c01a561a7280a82a0ab01d475a1bc73a430537f64c429186e23876b5577a8c292f257a48896aedae863fe1a5523271c102303baea6dc6c45b42d2b9ff361b340a5608f4e191e8c78e34ff5f79b4c1fc810dd44488201b76389d00cf7a430d0219b370302047c435bb50066306402304a9836e1f2804f6e5a0514ddb65ffc5044f9c3e03d70556e9902fedcbc2fc57bac1a42e3b322fae609d1a2e11e1f030d02306f22ba249f5c7512f5937403209ec8151febb07cdc9038116d9ef43bfbcf222c5dad2d60b279f88e5e20b3bafa43a4a00302047c435bb500663064023008af215043bde793fa5d284e752495481f6ead66f061be81edd852bbaa5ddf29cb17276bdfda97de4ad4a7ab784dcfe602302facec6ed3ffc9a99b04670c1202923d652601508324560fe08302e32768a0d4f625c4bb7d7cd0793dd107779d9ceec20302047c435bb500683066023100a99c6efba482e4cc33bb30c5ab541091c86f460292c8e747836d8f9e7173e854aed429314b5c59fff3ada0d144abfb1d023100e977ded0915c47237de4e049b5d7e7d97df42e3aa2adf9801f911493279f13a3dcbe8b44afeb0640bee32284db63ec910302047c435bb500663064023075163a8d6957ecc4fa034372d2c83c1290bdc80b5eb41d8c4ccc6653bbc2320514f714698b92d00704fc03dfa1097130023060f11ca33afa5d486c6e758c6e4f3709352f815644956cef2eba2c110cdefa00138667898db8fd168c6ef30c6c987d840302047c435bb500673065023100d39c8bbc380c6602dca9b8710311630bed30c7c7a32fafc41dfa3d3f05e08ff35a32679ee687bdadc1c623987cfa7af10230151bdfd3995a96d82f00a3a577169d660c9612bbce48c5c849bb75e83003478fd89be855d2c0c42c89503f47e599fdb10302047c435bb500683066023100a2cd43663df2a56eec7f0f22d2acbd5e30440a97c185b8ceaf5c88d36daddf2ce75a0a837e8de1800f5553b75d72af70023100fc36bdf07659256b2a3f2e763b6e9b2973c0dfff76da38fbb35514282f30431764578b3f13ab3bc7493be249083fe3900302047c435bb500683066023100ae062ef93b00ab6eb3fcf7d084f7a79392dc839593f5e57db8164dd86c759559c466bcafac7780076dac69a9a4fdc6ac0231008a6a80b31a81062c8494abc458d516143f2d29d9246b7194a279f77a22e2afe29faee88af2ef78ece86f6953c8bacaff0302047c435bb50067306502310089f25f2f4423a3db787bbeaa687af36175ad446a4f5df6ac3ee4f4c290c0fa92b72e13d00c10a068e053c037fae16c5a023058a7c0d9b070ca918528e2de73bace13b2051c928804b986a2212f4b51ee72bc5479f392c0cc967ed4c18602b8ee41310302047c435bb500663064023039d41545292772e41a5a6355acf43a41a183523e86d6362d8588902c6640d53eaa5734ff22313565230e4e651fd59d7402302047e075783d15de47fe6b714fec97540a926446378ecb4a0f8d8ef051f8ebd55c76628b612fef7057966f671dbe64fe0302047c435bb500683066023100a7723839ec073d3692b7d17d27f7d6f9470f8fb9d6b46be41234638d27d864ca576f044872eff693e22256ef7078882c0231008336d28cbe0e1d707772b35d81dde6dc83188bd5e15ba833a5f3a67e084a04f3fcac0ed65914a66e09e71daf855c97a80302047c435bb500683066023100c3d525aca2e41c54589303b52a878c946b402e9a302bf6a04d1f9396184c7cba60dd9f876e30a1f96b13d773842f33560231009255e05eec2e676081b89c84cfde75795c48ddfb39712f42457356b44ae3c25eddba33572a6a793abbba2112a7bcf6260302047c435bb50066306402305f887d07f863a6ceb9be519af7832496a78c87038057530d59f5e2db094b8aee126111c8b9d8af37b7d36031b25fc98102306cbce50afd0c9c750d04b4d5af4c71d5435420577d239cbd701ceb5a30dd2259dada409d66c8b4f9c334ec4e7b523f340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ccb118fa811f9f1fee72c18ebce45cdc9bd0256b1bc4ed2fa673e67244d33ea51bc516d054d574d45a48739ead0b91f8023100cd137d43a54bac6198c1e02f53b3d0c41ff0d6affab460caf001fac2fdca0e21a280b0126574cf8afb96e991f6d3d6f20302047c435bb500683066023100c9938a4984832342c72a83d8bfd82d3602d1b0ff2b2664dd88b16119a8eb36951508668b3453df58010640f4c54d5d09023100b0516aedd6cb5fbbeed613afc58547456dd7536ba7986f7ce50e88cd0034539ef2f106ef8cd9009744ea6e40ea97219c0302047c435bb5006730650230293e270af50fe3f467dfa86b1f65ab9924dfda01d7b4e97842902153fadfbcd319df611e0d1739240acda6ba1ae599250231008804ee99d7f248449869e8a085232660b041f1f59173b85222f6d5c92f8bdcb7f7f132195cc1bed5fad4524ac5a2e1e60302047c435bb500683066023100ccf75ad1fe328cf47cb85004bf63dcf6bcd9f31c6ae35048f7d6d71abb9112528a38d778ee87238f85841da6c99fd712023100d94678792ff852b4100ce3c3159230a27e824e710483f3a7ad154ea835fd29734e449c8e49c96d9b9131dcc680441eb90302047c435bb5006730650230690bfd8d72a5bf3d05d092f74e2cc72a2b1edd66f83769d4b0d77f4f227cb224205023a36db8e4834d4bdcd0e9e91e10023100b91a034d8604f735d9d4631863aa99c64fb00f3654f5c5bbd3b500da5a8b522f58132d3a15dc1c6dc486f365fea0df840302047c435bb500673065023100a02ef53958b4fa1ecc6606b20248321ef57f4373c32a1abb75832a3f072c82e11b967a4eb7275cb464c1a17218bd8f870230353b98e63852fa18d896a90fe6f303a143ff12d55a47c2e3a10a181e0720bf1f97be371228fa2cb56536317423e348db0302047c435bb500673065023100a86668a2c35301ca1ad1113a6353715bdb135c9e8f9f0b8d6e498fecdea42c83808642ed124ece37e6be086c9a18d8b7023079fa37ac2c67a02783e1b1a7aaf365489e30e81e221db2bb7981fad89ac70d7c9947b086346de1f79c3df5877ab915640302047c435bb500673065023100ce81c9937a36458b1cac7a4f43f943db55b0bdb19ed2c2dfdab47868e56c24920513d451d33a4e33eade9e0f35e009d1023078ca820b9ac9f2030df7e3893fe67d7dbac72d7d6624b6bd5176752650b66f34d5319f8377990b5c0e53f9e68e3b1ccd0302047c435bb5006730650231008b23f715eaf1ede2a26cb4e32dc5c9e8001c4cc6c471d829e8d79c6e1795bbc764be6c6c23d76ceda517db8d52f0869f0230770a00a72e9305ca5e1289deacf8ae51749a3c26726b423baa46974c5e342955e1f6d563f887defab20ee91eb6c88f040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f76a9276c85d6d3d1e1c4bb4779ccfe44e7eac1620665d688dc585d76b94959d69a48eb1c920e09c575860fa23a36e47023030abdceb74b738d442c6add5996a43a96bfc0b53554b5899b21e39b360444d848eca0822919742a4379bfbe52e83ca720302047c435bb50067306502301beac6a7384e64786f3e9220231d28b4a7098ea52142bfb0d9bfc86fabae4de7d0cbdcb3cc9b26e1e843dd6f640a2ef80231009a096e764b04ac02b2e5518693ab161f85c33ce1f81542a91fe60482690133bd1fda8332f0f3d92698543e71a01755140302047c435bb50067306502302a701c642b58355ececb211b8afda8a9c6f1ab9b74b6ed4e5731e2d9020955197f7d3739150a4b87679417c82ee6131a02310082aa8b6ff47746e7b040adedd293d9e27c5ae59c5e3300a2dc8b49c12f553b5b315e97f1e195712644959dd5392bad6f0302047c435bb50068306602310090790365dcb31af0ef984244a4302eae8e6d462fb0b3818003738bb7fbb713ac764443d3275c3476d78ff8df879f69b2023100a2756ee744d0395edbbf02ca0a7ab2238f282c7b3b8d30130f3a39a746f3f872f7b0c3f1d2344acb3a58b99a843a41f60302047c435bb50067306502307a8ef22bdbf87363c4776d47b7b12f7224b4a6cc487c742468f46ce43dd773f9250d27a0e24ba9b68036e163b97cbb81023100e60073581238548f0c27f87ca6808077bedcf4eb4c90230b01078d639f3829995450bd999c03b591231a1f45a1019e160302047c435bb50067306502305de0bc5c3efef8f7dfa9760e375eb085f3308b98b1b10c6f9d25271a5ba2c7b8bb4ce86d4e2685372a08c5e9cfe3a138023100edce6efbecb0c619b02757605e48619a72ef9c48909aae03124478603677a3c3b18f836e9b44af6a969e68a2aceb4d200302047c435bb500673065023100f514aa7fb7bd797a624956eb3401dae1146ff39763ca20a98d2dd1eb26b823cc50c4d81017fabcf8bf0d520ddb59ed9d02301b634542b3496d6ad8ea02b035c0a9cdaf6a207b8ad1da750d002e19c0de945a4bc0003c89d3669ab45df3e5b385f5c70302047c435bb500673065023043c9a5cffe3c1734a8a2954b7f8fa6daf086b65cd27b940579ab21fbfb2588bef47661a25d19ac295448e4c66aad4f3d023100d6e94a8376f682d032187ae1ffb71bac0ca3b55507e05e69220da8debde517ae5e103d83de8013b861ffdd2cedb0bccd0302047c435bb50066306402304d1f2f138f04614db9307e537b65e0bae52b0f50c17d9a87d99edaf50b4006b4858adfa404a1a952c37e77a5ebcab2de023034d42a99024ba5a73b5fc3eb6b7d18ff53e09d3eef04168b0a7806ffb27d361d4939cf9a035c6bbb3cd7c212617f12010302047c435bb50067306502310086b692c46c4ff6ee7dd20c7ec6f1e9306f4ebf5daedd2de864bb9cf52d6145583d5c63ce10ae6c1c1689319c9cf95c6b02306c55e06b7d014df7df9d0e89773df6b7123124c9ad9e585d1b82ee78a8370afa8419ba9ae7fb289c5c667c1730ba4cfe0302047c435bb500673065023100ef482d37a4544807c28b7fa852a2d46f630b093fe6fa8f99ad2fe0ab584f92c06e94f23cfd70b0d64c1de6f152178d3002302ccdb0b1f1c87acbad18de2c765a708b6fb31d6fe5c6fbb40beeb4d1bb0ce455625988260a508d3060ee5fc3f87e6bd60302047c435bb500673065023017f3471a298b943af870285700df23b59ca475043431fa42c6bb48d06358c5f3c47396f74a0a85c9c1e6ae0ae58559750231008cb8116ebf1f87e8effedd7cd2390fbda2caf5bf5bcf02e2565568c0c4eb9580cfae01d7ee169a08bc0ff46a751a76280302047c435bb500683066023100c37d936244fe4214d57fbbee66b90f8ff208337cf336c3ddb2cf0460e0e979bce9332a728ac8015ca1eaac19fb496642023100ef6ae949838236aa1b02a3e81185780d4fb97ff7144a999e164afb09b4ae0d6cd5c270fc1bcabeea08dc9ab425ebd05b0302047c435bb500673065023056c78c3edb5e23db551a001d20a8a6baf8efc9706a95fd5cdd5871b9581151a85cbcd2a75a7e4df476edb60eb85dcb380231009b1e31c37015769e2c9a7634d4e9321653d7491815883fc286424bcc3f4cbb88d2dfffb46cfd9d614793193a6a7c77620302047c435bb50067306502302c8f1ed6beab734f34982327e6c067ac4b090822b9061c0580c335850d3a75c3d64afc85fe018134d43590fc55a77d6f023100b2eadaf24fca384f9f934f359d0e56f8e5ccaadd79c7db7c87d518301f74e0ca35af328a6ab326a179719f29baef240b0302047c435bb50066306402303aa67b89c408a990fed005e7e0a8ef1e9d4e1b358c8679fcdcf5c0e103f02110259783d54fb0b8d89c4d401cdd810b0f023046358a63de13f2d47b7436b92b1d2ca5fbee04e8f06ccb6e6c55a3a01f596a5daf48c52c967f34ac19166da527bd03e10302047c435bb500683066023100b9577c8ba75443aab162cb995ed47553840929af55194a98424faf7de935a4ff434b10cd077872c4375b30afa2fb5acd0231009e8489166fd7ed32fa41e77fb497b23485637013693bbf77c63036fb174e69e24b52702448610227d70fc7841ee531d50302047c435bb500673065023100deaee7a56ed1c3185de1420229ba8b9a136fc94671ea7b352022a8334c1690c6cbb507285341c5fd4efbc687e560711502302eff964b443991361027a39cdeecd5b5a75ab85bd3f52199ad7866dba9b847b7b8a1c06015814402177b11211aff497e0302047c435bb5006730650230081fc188648201cc0e57ea71b55043ae6d62dc24f7878fc16e02173b856c0c944b4235e1cbc1ff0ffe49df4dc35c1a810231009a5a678901579d2a1b5d45f026b8b77514e42634d72cb16b9d4f945f892881b1f1e902ae2187202851e222babb4577490302047c435bb500683066023100daac06b0398c9b2a16f3bcd9a43f971f898d282a3f41159fbfb3b0e8aa5e0a3602f935fb5b13a1581b71d31e7d92908b023100bdaceec8cbbab73356dbd96fdb9abb605394f0c2ecb28c2ed28024fee5d16c8f5f13e002a19e3a4083765e921c8a471e0302047c435bb500683066023100c5206f303da2a7440f5f15411c4420d0a15a0ae9c7896ca3609e24a6651b6818b336b416996a7e25f070edb15a36559d023100e9391cf9ae3caaea2bd637e78c6c1e2de96bfc012a9d7a6c15c6644c7b5ee11d560593ce64e9986b28597ba42ec11cc10302047c435bb5006730650231008bd15f00627169bb2af28a182380d047e82f3890969088679c8a0a637091bf89e972ef2d5f13c4f5759a41f9a3c1711c02306397ab82d46ab06c84ca1cbc5747c4f45207dae926afd971707f8f6818f6f8a9aeb33b7edc503199d9b7a62eb2d9c4030302047c435bb5006630640230660448b7ea1cbc1b299916845ab7086c933aa4748ac0a3b46118feb798dbcdfe1384d31f803730c053bdfc5b9e10107e02301b67031d9d81abeaaca0473d1e4261213a77e7e357eb3b4dc9cc4e0f01a454a180e1a25b2e973bae3386cc2fd3f996210302047c435bb50067306502300c1dfb8374dd2f9777dfac177c3257c95a8b1ad17cff8576f2e04d33f5ae84d39319cfd4ccc21472c158caf5c66f3d2902310098ace83795a04235da647de5249e102ddd24289844fce946f7e0ea0cc23129494142d8cc2b015aac68546b15b767a4eb0302047c435bb500663064023040467b6524bc7f381c948acc4a1be7cd04c4a06d36a948fe43304aa3f70519c78570b660fc60ca5c3c9b9cf23650b12f02307baac92771af42d970e76a009871eda78541856d4e1efee28b39b38d09b27b9a581e92f825f4f5de1b204e1c91c866420302047c435bb500673065023100db11e4e5a9a5ff8f1aa71233518636bae5e2ee54e45bd9d5bf43c2dd33e85d371d2bd396c0646736c0a450b1a3bd2b3302307d1f67e42f8690ed599d026009c851e3ab2983bb222ef700f139c97d6f3c34fbc9299737ba6d81f20644ced6a5ad289d0302047c435bb5006630640230083e25f5d14a24344245dbc2bb91008d0639a4ed52b0b91af6f560a4f16977707f7ffdaeacba498d73dd0bacd5bec6c1023062a5f40c439fd0d2a116c2943f878d36224b7dc20e3d321c2f0e1da6aa450d9e9f0edfbbdd8121ade66b5a10b158e0bc0302047c435bb50068306602310090262cdec223dad5ef69281f2d4647a093e469cc7c70e097035c388504e0a1ed17bf9e6942fdab1e8ce4f29b761a436402310094c6d20966b8969bf1a8971a622b1da9d61a0740ab7dc2c8623f330301bd50cce05c3aae3d6c0b271ac3b73d409402f80302047c435bb500673065023100be5d5bcd1c2b91b7a34d9cbbc2344298e9e2459038c2dd039e88ddb0f1d300a137019629bd03c5fc5fbcd4849b22007602304c98903e111d81973dd3b679f6ce2caca559dbc344e7b589ac1de7cd2629659275c0d32932285b565c5f091611993dda0302047c435bb500673065023100c762bce0af4ae47464015a5d7fec070c5b49746b5ae02ae02131c8984154376c8d150e85e7858c8ec09149d829cc9bc502300aa6ce23a7fc52f012ab337bce54c04620400543740b413c5239b314c3113901e66a65a8a1c88d1cbe353dc6c893b4bc0302047c435bb50068306602310086963e9d956901f75df770f607c753fb9900a97c127f064bb21c94c60f69b7b232f47374d1f8aeddf489530d8a354df0023100b1198b8c8a8a352a28e7aff5cbab1c14e917a043328556465017276871fe41c4c0930fc4ade6faf530c698046a550e6a0302047c435bb50068306602310081c042a5c89ee655c93d6bf9cc9e2502ea9c7e735cfb7fa2892f0379c1d7d0e5a144ac7d94702166274b9549c2ed7f5d023100f9ea02b0b3a98b46663fcda975198c145866f954a87ea0d52aca185b06323b8c277dc8d8c8c27faa5c0e21f352a31bff0302047c435bb50068306602310083ca5cedee816e3c73cfcfaa33edd627c392ada4be6002abf788dfe9d77ca241c8983c921d5b97a617506221f3eb1f17023100f85b7a158fd1ce13534f5a8d1f4d53122326836c4a28749072bf77edb7653a83f778438b19e87e269ddc4bdbf5c2f1070302047c435bb5006830660231009ef01563175bcccfb81065b6e2e58a748b7dd5fec1b9a427336ccb4455fdd1e7cd7b1f470e04781fc36b86ddaef1c07f023100ab6f2a6346549935b00101c139400a579fb7b310f26df1a002ece92f2e3639b1999a91e0996f24cceb62c757656444630302047c435bb500673065023100ac776965aff311d6fe16eb81e11a58b6025d1ef11a664317ded70c1909c10851532ed3586d7295cd8ce3ec87c2d389f902305989e16a9a9dfc95042b19e2c9324db3cd121baaf0b5014fa3428b9dd0c40fe3cee09e9d28cc474f88f2d45f34e85fed0302047c435bb50067306502310085e6e6bc773e79e0f415a95047eaa88eac847b8dd85baf944fa5511e7701e509fb82ef94495f19680b39ecbd756550d0023035ed34ba7ca4f1c593c4fb9a04df17102888b254a9fe4f642602b53b616d7c868c07fb7aacf3118d27d7792df03855fa0302047c435bb500683066023100b0e377513051ac75d8f6305c1baf75e78512b10c0ce78e55130d53a6f75795fe633680a958c40f6d2cd7e6086929bd65023100dd1bbffb8cebed23bbf7f999c65cd1b230b4d36aceb649fee8a2b407213bf0406e3eb9374ab5b745a1fd0557a3b2f9220302047c435bb500683066023100e659bc3aede5b94c8e000814228ed969de5efcc79d12e648365e655d90d93fc2d00b954e719d7d320eaa7cebde6cda200231008271e295e3780dea4eb014a41d1f16d31fc0c985fea233f4ccad88560f6b51253688d073606de8f0119e9d24f957d7820302047c435bb5006730650230085d583c2d8021105e1ea88d6ee1c6c99185219102b22a9a71413fb0746aa02b6abb5740780fe907b9005b5cac016d2e023100c74953cc9af9a761f410a8cdae7c7eadc2472bbdf6aafd3594a18af1bedc2cca7b361fafe0137d7553659c03d512d3df0302047c435bb500673065023100e1056762bfbc589e50e0fd76cf54546c5b8012deea7ce88c1f505edd1f075ea4d0c52f38689f04d09bd855c44cc77197023024b406c05c07a1f128adf73fd5c32633a1b2836c3c99be5b2db59cd334adb25c2e43484fa15182b66a523ab8c632cb7f0302047c435bb500673065023100a0cb652e790ca192eab00e127b3b47920d428d1e5dd0269e30dd75e916820ea062eafee31cfa9e8454560304f5f7a21d02305e4222775c0dce76ec5de94cf040ce0d4710642966a31041ef342b8c8a5cb842533c8dfe4eaf345f8010a520863d6d7e0302047c435bb500683066023100c018d93bbef9efe3b512db3313e65181b3ab97a1fd2a92f558d00a7c5e9d90257c30074f0f7640ec56aefa0dde77f97c023100e4a362bca0d845cbb82e6f2171b047776f813745e7ba5fafbb162e1d961f950e3f2ecce36776617f8ca0b6e2ddd74da50302047c435bb5006730650231008468cc3157d56c44b9da7a69a35a03f1f890dbb1bc645e7110baf7506e6596656f54450514e8324b26f35c459ce893cc023030f1c17f32b71594648d1519073f19dd3726f3d4fae7b1e0e22896a0aa9a359fcdfad2a66d51e040c2c9f3692a1785bd0302047c435bb50067306502310093ce5947eafda9be4e280bcca1f7de695d8e673c5ab1695cf98d0d6420c62e67900cad8a7f4c407a109893a3749158b90230164f4f41334537ee6555df60b1d782bdfa46749921e6de8ad4d4a2201b2ec68b93fd8b91409d9e32c6d82dd43b8fb3a90302047c435bb500683066023100bec464735cb7702edd8c89877405a630e2076bf7e1a1f2e5294616c200eda109f741166517ddc1bf434f610462df8ba6023100b0a6e10badec58d489ac4e9b4f2914d2764a255bb1bf9cfb69732291e310ddcf42692ef304962635a3005e47428f120e0302047c435bb500673065023100a31100ee56b456fd9ca7dd20e58d7f379c4c99d966d417ca439af0128bda60a265cc7b18303713b3c374833e1488da5602306bf008cc79614821166315550ad211d3229b1afbf7f09ebb9b1794b602959d09704e79b8861a25647120186a4997ea690302047c435bb500673065023051fb7041e1347f30c06b8f7e193e28dc4f2317cb92d0e245dfa055e78e2ba54291bad743e81c8cee97852650f6cadd280231009ee1279ee2fdabe30095a259e720bf0ff9a061deb6b5d235b9fdf8387caf768a2e76481ae2efb613dd747e063a39a1620302047c435bb50066306402306ba43468eaef5abd3db90c9d4fd90a2dead7a488b655ebc762590641b96a5f348438be91511f196c8249647b096d9d30023020dff3ddf1e0a2cd93e4201006e19d3b64e748dedb63afe70cace85a5ce8bead92a8c6120b3bc1dd5796bbb1da86c4800302047c435bb500673065023029d0735dc8dd940170f78b632f46e0024c774b66d35ccff886ce4281124ecd5196eb7a6cdc8595ede43ab3566b99ccca023100852bb13cce056c32ccc8a69081d86ddab8c16a6b4502fd281d36f4e64bcab10b778606e96fceab10dbe963e8ae3728fc0302047c435bb500673065023100dd18f8cb1e53e0b1d623ce8a7ca45dcd04535869c6db119b6c0e123b0eb12a5f0fc87ba974ad6bd4ca36d48d3449b0cd02301278e0405bdbcca7679df8ebc3a4c035cc155fe1299f9851bdbd55d8829866b8448ace43bdc14e2936712742f68e4c170302047c435bb50067306502302ad79c78a1e1b1700234134540a7d46b505363ceadc413421fabdadf61184c5c8657606e76ab9024016ec5c0a859acc6023100f7f6f57760c85c50448eab67669041e6134e14ee474e6b916c3eaff00d386ec30041edace84649f1b8111b73acdc96600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ffc8d4d04141f68cfaddb5263d2f871b65f321f9ed71a9f9ce2bb92d0ce72628899ffd8a113336cfb5c6e3ec66138f50230706e3a3f86be308dbd12e53546cf6071770ce4515fad9f148adb01fd27c2fb083580277eef650b01fc27d98fb1cc89960302047c435bb500673065023100c506979b349d46ecd509f72aa7513b670a0215ea9e9216a1af4a6306e7e98c579fe1b466bc6dfa5a8ad2a3f74f09327502304f62a4dd18fed23b5c19e1a42b805aefee3a30ab12de7a9c108c440170c4a7c14ac47ae3aab4e091c44d5d5c3c44f11e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230667afc5518f920185741d73e62766ba9a41b8b3788e1d638a4ce2cb7327fec3bb59f76c558056ee490a4092c7df1bbe502304765c5e125e490f4d80ebf78ab7db1814cf5ebb2867cf20d4589f51e0ad83f6888afaf6b0879f256e9f77c5f574d88690302047c435bb500683066023100f89cda07db6b0834c683746b2af6340ee24ebcdda12aca7c0762f049b01207365c2138b45b229d6136996c3f8d9565a8023100fe7021446060d99be38daf53650738f7902c684d7e6b2fcf304ef24b9a1003ccecfe915d4d04e8bf3d9cf4d0574152ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6a87e1e5a4793c8aeafec809ee98c098b9979ab0b68089f493840a04fedeb9c16291cc816c3096f7909b45a03b46e3a02307b465e23d0b2b9285a5d567bf077ee532737d472ddac3b99dd07f90ee0da151918d42f4b0b2e4d4eaee7f8845dc030030302047c435bb500673065023100c0bb8519c3315f4f00518c26435a1646394233378a2f0368175d9e9fc995870d9df126de4de030e7e4703376f8a5d41d023054e0e29ba8b1184aaac08e62592648296863ae5c001487ddf060e73007e32f1b2ce6cdc416f71ba0853d7cb7ba185ba30302047c435bb500663064023026c582cab391c967256e7794db0161ee6d9d239c30ec627c1222c4f757d272f80e2cc7213f6ef4fd22b6ad50cc93a6890230504b5500365c711bacd45db9ee97e958d7d76bfa734b856fab8594927b7ae1650712778c2dded633b29103cdaaaff0600302047c435bb500663064023026c9520cb03b81bc86063fddcc211304fe5ead5bb9230c682207c9e4956673a54e4f99a4fbf82aa6ec35393e700b426f02304f7d68dd77f647a78710d0a06afef0a74e078891eb9c53cfa21006fb1ac3b84b824425cb4d7951ce9f2ffe65802ae2d60302047c435bb500683066023100de89dccfbbe4a8a6663e047b451a1364700df8da677bbde8f105747f0c6406e2e10d57885fd0cdaa96b2584edf647a160231009d115daee914cc52ff50197e9476cb9c90380ed45c94b526109c9332eed646a0b2bfdca12b0e3e69896eed53e6613bc80302047c435bb500663064023046f59b38d54ed49debc6e09677e2d2ab5aaedf72a6523a4a193ddf02ef62684800d1bde861168a26838a66aefeaac69902303fd7a81732c63c1a508ab18fb61e7ce4ada058e2430d42c61aff5ccca8a988df82009e6ec74d97965e8a2601ef6240220302047c435bb500683066023100fc5cd0b9400df6c6835ff245deb58738b0c9c2f08910a8eb9310bc6f3e034f0899ab0345fa988090c2594771198a6f620231008c9c668d38c9978d9caecd5a4dc75be64bfd6abeb1b377222173210eb516c56819d52fad9ad5eb3613b309ea4e0bfead0302047c435bb5006730650230763a78751e3af0c057d4f5c809ba978cdadb52ce029fd5779cd7b49936d6b2fc20aa446fe02692a4140939af5236ecdc023100c97c1c3bcfa8df64caf710a2d9e750018b6f5fb34e03e7b7050f4a06553603c8dcbd24a84fa9f72944ce42d779ca48b20302047c435bb500673065023100d0458fe056cb959ae47545bf627d42cd509c4f1e69e56067e56f6f20d418d75c52e7c8a1362965be05d46494b8df95ac023014f5a92725f313fd67f06caca5d53e46f31afc4adafa4c0218f6cc6b62a6f3d6ae13c76ec53ab7cd0e9ccbb240c0c83f0302047c435bb500673065023045fba084a591c6905d80da2be82dd9a820d730e2faa232b5c762200cfc3c3fad72710fbb0c530b1e6a76757e7d3d4c3d023100a1a8cd26d63ec3d9d42e3269691d003dbe9305d93e564a00fd1ab37f3a35f891da635e4fd77fc9b3fc5ca6a20b8ec2240302047c435bb5006730650230046a731f4c03a8e2cc9855fe5e5feb436f7837cb25e2c1ec6dacbda6c3bfab85625d1932f5a0938a14f7b79466e9483202310091ddeeb7204b7dc093f3872f9fdab495bf926568f3d4ef0903bc7cd7c1c0c32c1674cb5b8b778de4c7b8b1a284ab07050302047c435bb500683066023100db74557eae6a99fd461dbec7a82d68d1b20bef603453bd42e80d2c20c5b1b0af77ea1a4623750b0017ebd37220a98fc4023100881d1440a72f0e706a64452010ec4312d0b6ca7b30af69102b86d6ffea67376b5101cfb0bd8f42e44193f748bea435640302047c435bb500663064023040eb16b9f42aa09e7e9505cf33b3e91852181bcf6bb60239122c5d5b83a1f3d14d8ac1dae7994f3c8341ed6c311e861b023042a6b4791dce631f28c72adf69fe9ff78b11b95234a4355f44371778b188f6cdc83334cbd54d330087431719e2fc78ab0302047c435bb50067306502305ece44057f8276c50b902732a6e47ddd89b4d19e96996a87963316a013bd7db1e9bf3d44060c2f537835501828d502bd023100a52f69761d2fd4b7d6223ae64ab278ebf988d7c84459744b7fa5ea57f9c09f6d29a75890faf19fb598e1c5b81c72e0e60302047c435bb500683066023100aff40fd053d8d2f4e7168c83186798b5b665abd525698835ce97586fe1da84484de0ffeff5eee33bfadcd3f6fb16f4420231009c9b5418f40ae7f14387a87a1835b5df1df0065d29c9dcca552afb792b8765aa214d6673049ead45eae6189bf3990d100302047c435bb5006630640230554843ef1aba5710d33dcd59ab9e1a396c99e4f6b38023850b7bab760c1943f3c7ca84cff7ebc3065e718ed8f0a3134e02302e141119f3004bf6ae3eab570d137e2663421142feefaa77ebf18c4a3b2bcef7b8e221fe51e2ca64bbf882f7538150c70302047c435bb50067306502310087cf6e50f541fb12b12502a343666dfcf8b99e91f5875aabf59ed8a28d601db1fb869cc9b870e2ec298d3423b2449cac02302f33fbf367e771b4713cfbd67e235ce95f80957aeb4754352c307aefe636052de348e0a4041649182181d635ccd81f470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eee119136a6f384c4afe30bd0ab43ff6f990fa57f8eb4a23c1cb673f0f72e98406c42d136cc3310cd7edf4bc157d4188023100f6090b27a6174bce3074a79fdbc6d7e5878cff3f564c5075d46ed5bb6a3c3213f0ea9ab72eeec42b5409dae760cd2ebf0302047c435bb500673065023100dd11fc703c31849e8a4236c6d8e9dec546477e9ac3db15e824117a9bcc8fa8d547b12c0a1aaa47f5629721f3b6a5728c0230254c158f6300b02faa335688a4c54c0af5fb63d47ebd4673b91e8b3a312c204432df5fc88d1885453c445ac2aa927d2e0302047c435bb500673065023100fa81a386b492f718ddb89588735e6a4574bd68ad2ad17bc657580950b8e6d9c94504316fd2586173d14140997e238ef4023054dd1fa9dd5dbcd61cea1482ad77530a36b9d7993e21fdcd3613cb5f5843fa4061c93a522a1b56c2204d312a06f267b80302047c435bb50067306502307e6e446cc70bb1fff109fd4d0b907a4b48fc42d136934f2df09602e88ae53d36f1e9ebd74f000361df13b2b62e70a164023100f99365b50c2853533af8a4077fa304c3d66b120673a000048227fe90af01aec0d32e09480f89dc88c90286dcbcb5757d0302047c435bb500683066023100d2d6a7fdd5429daba0d9962796b52518dc10d8eeb41467f37d5334ae80209f387a672db897b7738299dffc5a10a115b60231009ec48f0663a8b56dd181451f32c03d9e737c66a1b6e63dc97e6cd59265b24a45531b4924ccc2ad26263ef5cf1d1f6f9b0302047c435bb500673065023100bb72c1c8bb466aaa309e6b8f35202e46ab48bee289f292839e19098f641e7bb249ebe3b9702ae0a8e871cb0ac1faf25a02302462fed5ea4ef5c7eb307f254e1c73dd942a7e11fc951b94d9f3b3a4d8fb68b7ce716959359171d3dc06bc43a196003e0302047c435bb500683066023100c4b256d65c8e2c7353e02bc0e29024d346ce265aca6edb159d76e717d0cc6a4ba6e6e0c752a8fbb30917ee6b44a20e920231008ec202553a03c8177c0e52405d24b3fdb3cb139de3821399465fe9cbabd81aed7fcb29dd4a581602cc720ba9e86b21000302047c435bb500683066023100e9cdf43e7ca92ead41d0aa389de90b9ffceddf8e1ebf40e11cec67285e1cba35aae0fc747590ad4dafa314f747b6ccdf023100f5cd47febe75bc3542a119c9be657ca5c389046ac6aeb1ee012217811169d23546a65d415b7ffd56bc1cfdaafd8e45c80302047c435bb500683066023100944d3aeab6d60c06f2a2927418478c499cf1060111fec514895176878b6866b349450377958621f81f29d826eafc8edc023100eb6dd2190e2be630909f7974892797e68df92110235dd390bc40c9c7b7e1fe1300b6ca831164886ca68ccd4584f40af00302047c435bb5006730650231009b0eb4fa26b1156ab6ec923cdd0ca5d633531a63584c58c270d9f6d91d9637891b5100f26f2403e1345355720e4f91d8023058829a70f8fb09835ec24217541e14850a40f0f98ef526f864430c8603c54b7c227207b3f5e6749e902fbebf30c1e38f0302047c435bb5006630640230749df8f38595f9e73d19b489e1b23a199189bd9c5d57d6f5860520ffc7e599ad515fe04d1726f2137b68a29d2ead9f65023055bceb6e80bd58868fb9ef33f94f519321db86dbd2697058736354d9b5d25469e9b2b351e4e9e1fb8e99a1b8af37e7680302047c435bb500673065023047a56871a7a487fea6ec9246f23cccc28549d344f6ca6c8675a85b0a5c9f8fdd56838699b077bafa569a0b7477396cd7023100b8f22c8883e741e5ed6e7ef6efcf56f783dab3ad44bfbbdef1e0b7f88633e6e813c09c142fdfaeffd11a1703cea6db130302047c435bb500673065023100832d45c9a51482ba197b44f6011a427aeb6a84b6c9abe1daa826ad10afef4485168c13303cad8617afa6f2df8608620302307d7f62f5290ea6c73a28c1e601040ea2abcf61e15d41d57435ea128e670c54a6d2a0b50aad67f0b4508297b0deb06e220302047c435bb50067306502300e4aae055ca7d9a785ed96ad285a54448a0cdda01c8fd16ebd299c610b886b99455b84c6c8991bf0044f49c8c8ff65d1023100869dadc8f42bce2cd34e72ab2da074e1677c15837b888e16c8e1fa3070ae6de2246049d6208f8be2e97f058f178d9cc20302047c435bb50066306402302a5eacfee14b215c6a11cb09d5d4a8247ee76e9b1f3d8fffc40e2db31a3c01c0e5ee717f9e8593b7597a5b1f4ea4113802304b750e86edb2a207ac06f98d29e69d415cfe177b1c15d6aa7b45a61a73f374211d6a8ad73dd5778dffc82f75e81a765b0302047c435bb50068306602310086a7ff147352fe24d25438c4f8e7ed8a5b9c318d407ec27212095241950ac0d5497fde561ada48c4c4779c9ea2344faa023100f3c9fc638ea696db86164734abee250eb26e7f34913768f963d6015d3fc63661f43442b52b4299a1f1142f96ac5befaf0302047c435bb5006630640230061097d5c320bf998d5175f9b0d8a30ec3a68c1ed333e3be38110239eed4a7bbc50f21c5c6dc1d58adee99fd2e6a55f302307ebe745aeff7b6f5cbf841f948eed3df150939cb8d3febf91a0b517d289b8ac55e5993e78737ac7f9be1fd57e8ebf86a0302047c435bb50066306402305bdcbc38db89aac079dd31c73e77df7730870fc7a787a9af6a6bdcc332c500f41ec192c4b43f164846c1761820c046900230055e3d28d414e6e9f06f827b36beafe275792ee8856898dc38dc7193fad60d98dd61c55b7bcd76668302220b167657650302047c435bb5006730650230080773d42910d3cb1ca8170af65551c3036d65ca5dd68c6325ecf517bcc2ad3dc7c9c37e0ddd320e14f814fa0168e344023100cb04dce33c255fe8556b341b59967777f888e26f90a1cad01e8acf70d22d1fdb371bdd8dc0eb3a03284bbe1fb4efde7d0302047c435bb500683066023100a117eedfadfcf28729aa6b9c53e63f80138abbf443c06c7b65af37b0809f5f05c6599047be49d6417b1ecc2456603f5c023100827b88e567a19febe4b483859b904a72ade9624b0f4e9796de9005c9196adc5ddba439e4e2bd9bb0b6c1fa458557372e0302047c435bb50066306402303ddc6a04ac5b532f670efba96492053b279edcf3706ebee923dc39434155fd78f7ce57f7d7930f1121947309aaa4244e02302f7801fcbab18da96e809ef2e307794e674363ebb1c407afd4e7334709962328efa3e29e8d0e3540b150764e3b18265f0302047c435bb500673065023100cba3d94a78a421b159076cff6b5e47a24ac6f0869c0ff72dafe23a92f078493d37f4f333c15c44293c59c22fa84d964102304ef215ff8ebb626eac46535969749fbde9b9c7230470bcd924ffdca439bcfe49b2cf3f2911f124a5f8a02e5939eab1150302047c435bb50067306502304f4298c10d3253e3d1b78e13de908c947e397c950ec1ea53c864003e62f39036467c0149e98d22d1259aa1a90bf5a37002310091d55755a2389d80f7d1e6fe252bae04fd315f16d125a69afde30ca44da9c715f2904472dbe61109fccf2cdaa510c4940302047c435bb5006830660231009576d17813eab18ab4405f49373107b588afaa4804cd50fb4c561c0e698a20c3ebb8de0a0cdf08fa75680d06b6c4c2460231009fbdaf766373eee1ab3155c5d865181361d83759c424d280a972476dcc5ab358380ee515fe3cee4fceeb7ee81104c3e40302047c435bb500683066023100dcf5c95f19df0406f8d7cd1d63ef5160df9e82b0c207f7e8ca6509e6d4b88432535e683eb79192f7356b3c7c192aac72023100c14cac42b83dbea55f09c2d0e5c81016148ada1cd832a38d370899fa393e8df6da524898e68b32b66d83a80ec2ea7f6d0302047c435bb50067306502301e15adf8fab16d6caac263cda81f576daa16d33bae3606d1410feb3b1ed6d07075bdaceb0b45aa907551abaf336bd5fb023100c635e44b5753f90f4ba834feddc31e94060f706a404835f9c8f386af5456e9fae8b18b17637ecb50c5885101260dbc560302047c435bb5006730650230193bb69b18ce58167c51ec19b45063271cd8125af28a7b1521382f485cb26e5123b2d5133eb6e1731884e5acc9d731fb023100bde5edf76a9cd52749b0a24395af9087d2ff9d8489b576a3c649732b6d3c3d5ef5fb213333c15c4d2d53a2dc6278a5cf0302047c435bb500673065023040e949e17b07813e7e3a5657526754f56fc6f55e4efdb016ad708064b12b33ae373260b511a256c6b438d3de2f82d01402310091e8bd5df2943ea62773554557a289b3388d18ea329f4ad72cbb89f1dcfa8e7a6c334efa21a83c746d91b9cdaa79d7c20302047c435bb500673065023100c576034033b84560472a2cd1c882c43fd8b73f3f10998bfd02e6605298ca3e7ed82b92b334e608dccaf961275776d03b02300934133d7e5e8183ca16390cbe807d410bd1a609b120de1edaba1a17e4694880e5905a7a20a32f376d212fc7d480b1060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303663089b52f45418d99427e8ac5e9e9b8f9958d2fbc7f25249796b4bdfe2b8fac07a75d71e4430cc5088806376e5e98202307ab0aaf44d236c08f5a9803a46c5c2f205926727b169572223168135b255b942bc2ab979bf8478c63dd55048f66f80c40302047c435bb500673065023100f018c0bbe81920a2436e1509dcf015c98d73e1bd58b57ba8fde3b3728a10944e7131bf0b35d6cca66a15185a88e0652502307b3bb5ce699fe7e157ae1d7eec966cb432ae13428b59c2a1fd7173025030adcfdf6806f5a1af52fa7871e766f213fb4e0302047c435bb500663064023040536d0a2695232e406a19dc1a8fc81a61fe181654c594483ba15571cc1d1828648b2de612f07a1fd3427dbbbe147fa5023002bbc5458e4423cc74f5fdb25a5fa009c9c7485b0b0126692da40e24692b1ef03a4d36145f966550450822f9893983990302047c435bb500673065023100855fbc46fd8402ca101d33d8f10b9a70dcbc760d6c286e07a948a99f167b584843221b673296b0be7cd00af00d81aaff02301cff052d78d5d1d9691e8f082a1d78b275b0175ea634e97ca36844670f39f477c931170ff7735928a47eebe9a086d55c0302047c435bb500683066023100a9cd7c994ab27ec84faf6c011da194c436fcdf385cfc81b88e0297253c70627977b3f9177826fca8595a3cd6d0677530023100f702c75a508b29f0408f74ed685e410515d0fc99efc3a0dcf7fc439cf3158ef47003cdcfe86d585f1e957495057c1ef80302047c435bb500683066023100ee9dc408c9b82da828b268cb7880020379499c916ee3a6db4185b48adb6b76b7120ddad4b748122f77967188b63d4b51023100c0d8557d9b703733a12216bbd42f6bd058be51b21c3c0db7fe98ff1b5d9ab1f2d0f7a8b02626ef316851ea770a8c73a00302047c435bb5006730650231009689ba158a10a98c15ae30516d75b93f20f2cbf310104b718a7ecb7c1b0df22e9b45c84ea35194b87322328f56aa3dfd0230793061da7663f8a4c65c294ca4069bc1df9b52ba42a722928b445196ecd22c8dfd4bec24408966c3ffc87b57b0704f6b0302047c435bb50066306402306a2b06aaaf800c855acb87dd08bb21de27d87ca2b86689cab7c2ed8e16fc00e275dc556bfc1cf5bcce52e4196650dbfc02300348268f229d1792d01e682823175700ec5528d7b71523fa15fcfd2444433212f8f48f3bbaacd86617010f08df9159230302047c435bb500683066023100dd7fc62cbf4ec1cd46193e76a20fbc4e6059c10277040977fd7bc4f50ae6f721a93c582c1a0f945721f5f1ae5eea5a6202310092e30f620ce71432a48682e80ee526ac6964620b1847a10d623e55fe01b0aeca08c426b1652abc29fcfda71041bafe770302047c435bb500673065023026a14b417ffcf1833f55556c736d3bd1168da08c47eb8ebb60ba15108bf5bfc301c2927657192aadec8da70d3269738a023100f9ec1c7b02081b595c480a5c6bcf02c8d860c3237571bee1f62bdbb56cc315c17a0d6be13044eecf783cbb4d436d475f0302047c435bb500683066023100c4e13213b282e20a7c9a732f4fa1531e2ea8f621935073d96aa1c001a4e3ad40d8fe3cbcc6d0812d15a89714878d9796023100ca10e4f940fc6b02047f71778eed455eb36ac6c2568af3d35318cac801efcd30b52aa1ef007a31832534553275f8f9fb0302047c435bb500683066023100e559fa4624a4dd311a06a3f8606cf529ffe67818947a429289f5dcbfce7f9713b66e4d1085de51f3f6be8d6a4fffbc5c023100a76b1d1255dac8dc59e74d1873593ce70a47a5ae59f1788b270d164119b2297a864eef3d1ea2aa3d2ffa5e824317b7f70302047c435bb500683066023100f6f4c4678e8e5c3c3849916aad98ceff787470bb54b5c09936c61fc8bd00afe648569acc3dee8e344876ce01c34b24b4023100d09a28eb72e79a1bc8ecd28f1be7a19ea85e0caa9ea1ab0fd09afc92d0d66527b661667b5b4d29c37d44d7eb55a85da80302047c435bb50066306402300c5ffcdeafe6c8bf8abc9ee0bbc165b644b6440b4b7d434f928710938df531e723449414d43d6eb3e6d34b379bee34ca02300db3135bd933511ff3c812ff54c5606cd440326bc96cfc26da7a249c9699ac81f96df012bc9dae7f13a5598cc9aec8c80302047c435bb50067306502306b55cc3c4f8d6e76e1faf558059dcdde3d7d604977d47e316839f8617d68aaea39c2924be5cfd76a7be5c28986ecb465023100a0b3e323ba8c4842883922499537b97e2f23d992afc0e324d0a27596cf89eb33e692ddc1cbd00a6c94f182022943ea910302047c435bb50066306402307946ad31887b035c2eda492a3f10dc4e63f3aa9988848278d89068a9f3f35e7ebed44f64730e08dd2828472e643296470230611c88dcbf794ec69062cb15cf1b151ae34a0116f815c761dc6be0d803a408c69f5400c75c0840c84f77d8e2ac46fc090302047c435bb500683066023100e8253c3aa165929ae63fa0886bbb1591d944f7139eddcf935107517bb4dbba7c5b7c14ad84865ba1f6281f79e2b115680231009856981ff6f0b7e0720eff88ac8389ca7f1561b7f6c86d345f15ce48788d1bb65d53fab2290586afd7996f45593a90a70302047c435bb500683066023100f01ea27b9b6df130c7b02a36ccdaa3fa1c9d996a1f5bc52e108045b121ac88cb92c337e6d89bdf8f870074903dd6a6b9023100fe2411a48c589ace2b0f3cc3c8850521faf596fa2c5b3f6055803f1c19f6fcbcf4a2ee9064835f776a23eb2706f2a6890302047c435bb500683066023100aa8a8dc8c319189c6d0c8349f34d85a6bd0b65c788c51b43015967f9331d3b20f77b875d935b7abcafbb2c16472a548f0231008cb20aff17b5b83514b6fa19935aa76de49b17ef831e251939b7667ed5dc0591ae46f4249996237bdcb825af3d6cc2b50302047c435bb50066306402304fa0f33a606de601c74592e4ea54d0b0229f0fc0143444f3c6f078113ebc47e2cdc72953a96fc64c31600d7c35da9b5602300d602a3d6c54c17317e33286e53aff740e0dad3b508cac81bbcb6762795e434d1bed49dce7e57e4bdfad8a6f8567e3c80302047c435bb50066306402307feb86f9beaa768972060d4e239dfff8ea1e80bbb88f1cc5b0ced5a06e5c6b999c2a173805aaaa3ceb068c118b3082de02307245bfc125aab651f669f1e51d952357d9e0f717db1d893f6fbb515e3a74bccb1520bee3b75ea1da5f83d0afe592cd900302047c435bb5006730650231009e496fb162e72c1f279f8ee495bfe62320b6df913e1ad960e396e041c530e4fe831d81caeb0ba02c6351b691bf0b95c60230231f3a139af3e8f8df6e1da19e151dc800713228c9dafd473c10eeae5df0b5d0c90a5d48082d41665230f504861ed22c0302047c435bb500673065023100d4c28a480a64c10609f1fd4761cb8d9c5984e022815d2ba317f419832be635004211c03e962379e6dacbca4f0d496679023034113b9e92043cbe1d5bcab920e5c88c7d199ad3a4ada64e4c6c3a495b79a5b83c59ca53cb23a29629e484ecc199cbcf0302047c435bb500683066023100ad09eb739731d5219506ae4d8102a27257dce64b8fa16bc104dbd9d6c88efe228f9bece945a7cc48e9548395601fd041023100f44156baffc8a6166b8b42079251aa62a8309cef56a92fbaa16b7ced1e30fae42f139d7c12d23e3fa828e461f823ec200302047c435bb500683066023100c962cb1c6b1ba44591986337771c4c572d30448dd238ae84d2fdc3bdd9244d408918890e94903a06ba734ccdf638ddbd023100f8182243d26e93fdddc63b69502a2f535f189b0fa56e9da96649acb9fbc83260cd6a4b33da14c865e8fe203d6dc8cd170302047c435bb5006730650230088b140c04f7e25d81b9a8705d026bdcb3114be79bca9befbd8eeed2b4d0b9cf47d597a2c491a9301e1cb56613715a300231009c9ef74fe744a7efda76b928c19a8a8943eff96a8f234a395d3a617f5a1c95dcbfa99028d8cea1c0ea17869e409e9f030302047c435bb500663064023062636144e7dd46e7a31c400109389743913ae3502a52c6b2de82a2217535be9cdca41fe408ba7919534b4aa8160af2c40230108f6be8bb4e021771243b54a463b7629dbec8670549c96e652fa216f9a154735a42f9523b1308b9c322ab3a980ebb300302047c435bb500683066023100dad956d26723854856eb258db6a1db6015fb422516dfeb37c45a4365043cf1f452f79ad0efd2e02fb3b5053dbd2a31ea023100f3496dd4a425f2f1ebace107924397e505cc7af38ee3097504943a0c53776fae562af4ff824dc26f3f5c0adc3246f8670302047c435bb5006730650230773ef4f7b64fc83ab8d312b7410030804707df545b67b5ae48ae84a19bcf3a1b238c234368ce341df8498f57599a62e5023100d6dcd3279c140772e3393d2df414055c6f2bbb5e49c767347314a5b9b15bafe4621b117aa854968d3627197e4fef0f360302047c435bb500673065023100bc7dddf8b33d3638cec16225027ed5a639f3152fee5325f6db60615ec81a927032c3636fd40c120bd2e78e8ece74634d02307d2d9a75a6bae38250dbc36f130cc836b7fa447284c668c4d3f5bf067d9b0d28709a5fe32bac3c05da7d79f41ff7d1820302047c435bb500673065023100b300e8ded0cb2e1e4d6d22a3e27a6eecd32c42ed8d139c5bf64b4c9bd5112c4de7f2b493699258a54527125f43416aa102304b48a995603165541b1ae8db33b629d5fb7cfab6ca9d0e7d2681039227454d3be110aaec39b6491e091d07bd4a3cf64b0302047c435bb500673065023100b77445e08b8abe4523319778f08b052fce5da23b152d22b15f0c4de4cc8cb0757c50dc4a85146996d1e96036e01f9d7c02300eb7b11db8d87cd8895139b8c5451e83b9f35033a8db87153136b9b6ef990d8edca1a22caf505c5c97b77b85a44084af0302047c435bb50066306402302140a1e55266ae597e4e20dc5b29b34bf3576411e3e6e0fa80baec6803144b551b00b0be80da8f924fe23c5e57a2b19802307d8261286aedb35c195d62720466d5738d2f1443a0b3db40154c88cb0090062377d4b76dad545e139e1d6291a9e7167b0302047c435bb5006630640230578416377e254635c009b01c8675d18b396b58e22290ad2b1a490a9319a10adfac780d371fc6359d9559c9cae9caa53f023064b88fd173557db4b741d60e0c8577d16d87971337130c76a20c4d98b83f212e703ae63f8168ab7f00c202f400ee6ce60302047c435bb50067306502302c832000edf6609a8db3db3d73f024cfe3231197f7a8ded42b92068ac796fe4f69eedff87a1059e9516176eb36325f34023100882863db26d5d86b22c8371e9a2f7e28a00abb6da34d0f4df3f9ca5e0ddb5503ad0da8e8461881ba5f37395f8e896a0f0302047c435bb500663064023063419dabde86d3cf3a4dc30508737de77027bbf3460548760eac1de960a5940ecf3685f957727936d4571482f76baae502305b32b86de4d4be7380080ea6c2ccbc207d15986efaffd501028cb4dc495585ed653a4277b36260d48e5271cefe6a24c90302047c435bb500663064023072219db2afbab37574f36be95d0c12af0649b7f82c24ad8d375c916254f7fb556bb143c2421fd5b3255d9970440e678402301f184901a047e83f54fdbf6d59cea0176dcfb25eee9b879c29bd57cf45c26aad771ae5489e57f5f5bda1970c789fca580302047c435bb5006830660231008ee1cec4679dbe1408e18c1e25360281adbc10279e3dd3bc1f9bfe81ffdd01ac592557217104c951bd48473d31b1b8ab0231008aca686fa421fd5e82ee062a7d5a44aae0456ac4592b9ea9d45d976c081f6fd400d8124ac416ac84dbbaf680f6f8cc0f0302047c435bb500673065023100eb7ead5f173797f5e0f0cc08446c7dca607e9bee4f35444920edcb2437c98d0f5a930412335fc6b1f698d7382f252b8502307eeb8faf65325764f25857d712d91cc07810ecd91b04237870c6fdb05c5383331155ddd0be3aacfd624315c260dcf9330302047c435bb5006730650230232c12be76d26ce624018ae96d557e3172697ff030906b90955dc7ea28498d5101e62466afb93d755a12b3df848f8a6d023100b3dc3661d0fc3e83aa907fa2b9c28a372922289e8624746ce29d7c183bfa6b595b1463c83f84adddd5d60ceef25de49d0302047c435bb500673065023100923c1863247f4182bca54848f9f4e75b829624c4b0da2be541f60f2408b7ea7e4a24bad933e95142a7ab11a47808f94702307a7ff0f6c0013d32a3083b92c969adc8d111c3e4e856be1ebf3516e403fb8434fc15898004fb905a932b5132045a583a0302047c435bb5006830660231008561bce07eaedc4f318242490765fde4a1cb9b17c0ad5c0529ae140182165aa884195198019d9fc901c4bdeb8ca78e58023100e70d2b1706d3eb6736159b81738b15488c617c4ecb2b6c1bc4048ac29f1ab1cb8b1a8220dba8f7d5a75687e51ac355730302047c435bb500673065023100cf4c6f6ea93eaddd9ffa87e5abf05766a03c6d43fec143ea2b1b77a25a84150322d716dffb331e4bf20187e98844cdbf02302b4b67e4e343c58b5a540c28af04dccef1338279a155dc52461d1d14489d95f3819083e1ad4b3257835aafa805539ac60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a866dd30b9cb86764424a4d20deee25c23143d90c44b049dbe27c67ad97cdfd4060a0cded9c01eb8354e15550e3156eb0231008361699f8fac106365bf169243d75cbde02a1d53e841fd4facb080bf3832a192f9590f56404d7f1b15474b7505a0d1110302047c435bb500663064023077a5b0925f9a523805dc4edcb52cfbe42abb85fa619b472925df08e1f4f0fa02e7b187b2563ba7d44cd14f04276d471d02306eef41abc89dc264a818fc3d0784fb9052a3a68d47298a3713e9df630d13f5e9f39fe37816ff2c9c0dd7b99f0ec3a8760302047c435bb500683066023100cabec93fc1c1697f2dc4c544a7972f85e9b67a98a381c6ba847011a09986f79c7fc32b4f7eafdf73569d3d0192765bec023100a4b503d84789311a351ee0dbe4a14e5ae83ed7ece42316b27d91d974895ce67d74bef4e3aa1e9b70fe32b9362d2ca5fd0302047c435bb500683066023100b0e1916d8383640343519a55fa85a4dd47cf686cf7a14eb75663a2c2fcc6715fa2e218ae8bb85ae52fd732b42c3b654102310099bcb3f2b643c78e37823bc580146510d9780510faced515fb22b1ae66917149fdeae1d8531f7e82bb99f426954e87370302047c435bb5006730650230786cb25f6a55394664847105d20e018ecca737193adf8e7da02fc0e9d9d1e6d8f3ad4d4f987d086f4568ea6af6d16463023100b0516e7e77dd0e8c6013d46a5fb929b8059d13ad920ea24e630b66e85d8f39d1c0f58824a0708cce5b9367b9b70739c50302047c435bb500683066023100cc1ae64149101b80589a2e59c2cabd059944b58a83fdf47f698ba41030c9465489dba105fdd04b74e3215aba09f6b7670231009ac7e8ab7d93b400c44b97bfd73aa8d68220ff1036314c27c81b023fcd3016b7c397c76c43dad6972dbba520138999430302047c435bb500673065023100a1874a4d27f0e07b19e2eee45a63afdac7f30575709ac832dc85f9de92d7a760d14c9d7e0a92e50241034849cd036e8102301cb65fe71881afe8e726cd2c92dcbc6af8f408182c4bd2111962b410009c52179168c50dcd25a745a201ec086696c5fb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f54bf653d7b032986eb9c0010c35f7ec4da5daaa8cbbffd2c75b8756a6b72b15b309dea60d3e66a59793f412bd146868023100bd8db7fc4811c21f70b81ba8cb11a1d2c63f9e9b6ac9632727285e452d92ba72360edbd80d1e18c46109352bb4768be00302047c435bb500673065023077a0ff331b1f1868ac6db29c7eebf7eacc9c1521227d8f7fb2f6a65e5172ae5ec75d7bdb9f509b313f1f98ab08b0f52d0231009260ec2f88d906e24c1804b4899884de4ae271c858873de6cee22b6bd7cde122019ac11a2018ce1d395d411a0b52059e0302047c435bb50066306402307405771cb7cca59d17fd2c26dbe466e42e3aff7eda5d890299216831c52bbc46bd98ec4d5a251751b945b9e4c4e544df02302688c1e0410f88960e498e5651d15fc89bcb7755a1aa043e5819066d1db78d0e4b519f4d3d1416480809d7a809eaf3320302047c435bb50066306402300291dd0a8d3b916c9e29b9908f7a90503fa7ad86ba2d0bec53f08956f16d4ec5590cd012b6bb9410cbc8e9c2f6c70d3702304f1c42775d41811a6fc2b4f8fa2e7d215506ddeb8bd4d791168d179d8bedc4caf3fad9dad75f50c01dd0642f8554ebe70302047c435bb500673065023100bbc88517ef853ad1fd1733b518b7ab935506630c512161aa6eb1cef6ab9a02a9e4e9cfee4b61d63aa2d579dd6dc8bcca0230318a710cf896ca9c08647b27beb9a656e4f469728126b10d9bcc9372fc3a6884b704bfffe5ee386b3de0ec3d0bb562d20302047c435bb500673065023100d4dfff1db963823f9630bd186121dc1f9a34dc55274d9cb06671853337139a921dd4c06b4aecbd689175322e964fe478023054b7bbc74739f7b788b1e53951128d65b0831065674bdc2670800a6677321d46526adf7379a4fb998cb1e4ace709672d0302047c435bb50068306602310092f17989fd42b52e069fc99d5594d1e2b743091846b6c0ad67aa0f48f0852f96e66dc9de236a784a11e664bc681b4159023100f95749d918e3c0b4ccef6512693000b10d041a39ee72543c0a577dc5b02dd9c00f285c9142d450df2fa26d7718e6e56c0302047c435bb500663064023063d066e1bb4a2bfbbbc958e1ae90fbbcc5577b6c8686258eb8007a4638e04816ce72d5b537b3a1276e1c0767a9ed7730023020aea581116afe4a2d68e633d05a819853c7dce66f385900c0bac24a8ee73695457570e4903810d78d9462c8f11720f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068169cbffbd4fda38a18aded9607dc565768c11199919e00cc9b40232e43ca1c0e2df01cf1b4e326ff4bdded562d1089023042ac6fe256a3d80d960c789ee61ba9743141c72faa7b7c451b65324cbbe1831479e452c8c1fdab1072c764ed7169a4490302047c435bb50066306402306923f0937df6f976a151152d6bb6af1f2d9d5b4ffe9a64a8c8189d0f488a48dc557d772521a0ee185537f1fcef5171c9023015f091be10fe1ff60e7732be000500cda9fc4974c8bd4c7827ab3b549763b0e1b9d5a4dcabf7540b9747c36addd8cea30302047c435bb500673065023100ea947a2576c6da80b9071f9e648734986a599cbbe507fc254fc8fcd853f2cae282a8500f65863e4f899f6830401cdbe2023062f4f98c8832c2d0a9c7725e2387324d7b7f1827acc00e6dd38f30c9641a6ec9e61ca95cfd7f298c496a943262472e4e0302047c435bb500683066023100845c4c94a5a48165031cc65c55e4fcb1416a6062fb899870d8cb71429b407e47c21254f2200732da75b3e227639db8b4023100c29052396dd4bb9caf88a635a17586e165697d0547d2ce0da47c030c337468074371ea1ae0f0cee373b13dfe139ad4c20302047c435bb50067306502305155fc43b77e2f9643fe12afa11c42a085bb9270f21bfd4ec4ba5b1381e6c2a4ab161ac54d29850fb706ba4b537a775f023100d3f3caf92441c3075a68eb51db612e744a023dae3f21232be51c47fc2087abd6d6d79396ab29233ab1486efd437247390302047c435bb50067306502302f0ffa6e177f98f0b3c530ac8b64807be6a4121a1057fcbabf23c2998b13578da8bb1de509948ab00322e0844cdc2a8f023100e568a95e2e6b924fa1549e6484759dcd3e49ae2cab22d1142928b656e086da56fb51b7d2d04baa9fa721efff5b2c366b0302047c435bb500673065023100bc84d88aa02b43789c1751af1b168d0b814c9ed21869351c983dcc4c0ca85bd54314d0560c2f917c58edf92b70288f7902301faf1ae06e9300abf45496a2de9e21c53e8662bb6be0a8b4043b50c263de3f67409c704c006ad690a63aebccf27f17c60302047c435bb5006830660231008b2e1905e41f0aa0e8269caab21d986d87ed5aeead7a15f5bcb35e1446b26e554717d5f4f5217648dfd880d781405c6d023100d85d272076469b0af749e8eba1494535def59cd6d0fe954c0be4f10500b0bcb3ac37bfdc4536718bf7095c513a6d5a620302047c435bb500683066023100ef87fc081dfafec2674edb798ec91c65e15610e5e9fd1b4f1702a0736c438595f8fb1ef0b303c46fabf9e563cd8bc585023100bc75c2614335029d42e0aac69dcdf1eca0681d2bb436e040f51bc46dea3788850d565f3e4c0de8bf501b3938afad75ff0302047c435bb500673065023100bb7967abc9b4ce6211c10ae539058e9d0e86811574954ba8eb6df5eb32b8ef4929673a47033542aee63d11352bebbe860230369b104d558aa99b12b36802008627af058d2937970b2c4a99fe3e4e2b01977aa8db396a5d5d600fc07e61590a38a3210302047c435bb500663064023077cd31e52995ba34df55baeefdcab838fd33c2e3acb1add03d799fc05d0fe4ebcc1da2617032fc861a076f3beba2670502304e4f4e846becbb97412c3003171b138fb72442064cd4ff11f7bf76d5aba9ab345815e84095d62883bc7daf794f571e610302047c435bb50067306502303579b2fea120f4c017a067cd436dc5489f7e7bcb8fe8e6eabaf1799e2a093b0f4a083f935d849cd683be6e87b2594271023100fc9b1248821035477d53a4ad7c1163c29448f52c80780a1e5af8ad70b59ed631033b231d09b704126a4ed2cb9e74cdab0302047c435bb5006830660231008d618999bcf49e13b3641ed25af7b72903b3f1857bab869ca61f110e75ad8e3f563481956df4fd2ac9ae96b2020da990023100f939cf4d503279f4e8cb0f20d66368e0e0d1924c4c0ffada1d74c1904d8b7fc18fb424e3b3f6aed3f67dea09822dc4180302047c435bb5006730650231009d8bd3199a77554b8cfaab03ed5b3b647d066511de05640c89ec234e92d9a5aa26eb01c86f8894e8a715f4a559d29d9602303b62facb27a717bef97c88039ca8b5860e11f1b2e8966bcaf2474f5fcd96ce10ce4c950f2a42cca51c131a99bc14739d0302047c435bb500683066023100c2e16844cb92eb572dcc4dad48890e8f2f1682e67eebf0c33f2dfdc6a6a8da295815b33a5a8e0f4498dd8743ead65c4002310092c0842142d727474a89e17976a511fdc7da2959bfa7ed709b44252ec69afaaccdf75b3f869892d1d5cdb4e1febde81b0302047c435bb500663064023052add8baeed7230e93f67f926fbba988f77b6b3698a24acb8b4c58f4aa646de610c5f98385897d26397228fd4855d85402300ea50318ce3f73d3ebf28817e8bf5906a8f9798ed26b27e336542158fec0411856ae636eb64498623c9645f16390662d0302047c435bb5006730650230010a8844fae476f900a8cd32394c9a58245292b25ec3ca8b34aff3ee6cc432522d2bf567ba8b3f731c96c8dd702e81db023100e1512ec653245acbe7a6d506a9abc2141ede8db50cbfd9225765206198a48dc3b7eed9c22ca4c33254e105f618e978b40302047c435bb500663064023054bc2e12c2cd70440330362f3c7237dfc44f160be0e0f996bb55da587613f9a23d2524d55cbf914968cd9bacffa0f48b02305a11fc85c95a9fe46393c49d72989ba3709ad7ea42ceda5ac9016f5167d79a63b6d209c8fabfafd8e0296e88c0b9c6a20302047c435bb500683066023100b67b8e08bc5ee718118623c8d356b5c41a9077fab813ef8b0a6c16edc0a77f668187301a4ed3e4fd71a57a48b2b1004d023100b877a4f109a50cdec2394cf0e784a9f6e2bc34a485f4670bcd94ca0fe717de44317fb047b99ad02c2626907292fca4320302047c435bb50067306502304a5f147bf230b3d74b212562a4c934d2ae2b3ab9c62f9c2fbe27209c41708d095ca95d6db0a0f39053d390140cee9421023100d791c37e1d85a07661869bc8973b9fea7a9863652943a1205f20ec88b67c7dbbd4430febf3e1e12d00cf4061baa87bc40302047c435bb500663064023006a6a6ff300fdc45dfa2b11133e1bee030f9d4c742c8a0314c22f7161f56262ed66255b44e3636286376feb02abab9ac02302801099b0b3c6b8bb5086f1e97ad71db4af3d051b8eb64945ff4b2757123cce460994f7a9bf21f0057d0e2bad7f9140f0302047c435bb5006730650230465a5108cf65b25a2320328b4b19e6e3ac6903878e96e49568fa6143d7bb2caacc5424ad45f7cdcdbdb0d3882d09f974023100f029c0267e01a9c8687a0c6514b630f9883f8444df121751188d0aa30f899b346d3960b9aaee71e701a537295a1e2e140302047c435bb50067306502304cd8416d834912846ea90a53e3ec0b2a2bef409b3fcbf546156543a864d452396ada44234138a106d244489016dec2c3023100cc9f7151f1c7dd99257bb4dbcbf87e43e81640e4d46394f0e66f18c89da439302e360c84c7e624c5c3a39747225854800302047c435bb50067306502300ae8ef5c28cb84c41a87ec59fa01e8055a6767491f1ee2a810b4f2736212e3c7cefa6e0c9d523bf669fdcbd4d0003b0f023100d90ee5cb66a3f794144d12865e3831c8738608cbbc99a078197769281122e57d27dab623fc668ac8087de16723e4f2be0302047c435bb50067306502302273d861ee28091f50ba4fa1590a88727ec4f6f02ccbcaaa347e220cbed8b46fa38f2d10bf271bb542515961e47c0e11023100fec607556566d7ce49391c24bebcb029ea1f5a20234acaa77b8ea9e38a59c49a9733640fe4451070f635a4984810d03b0302047c435bb500683066023100f810c8a97c77700d45c1f756ca1c5f50484c144428542bc6eb3cf29b2b8979d05dacf16987fb0d496ac7cb50b3b523ee023100d4d6069ed8a6941beca5c53ed9cda820ff9cf32ccb087520846527fdff9254de6a7c4ebef83210849d3b73ec1981cb820302047c435bb5006630640230147b43df23b4447ee65df5ae35f71a71fe7591c15218a3ad19b016eb9a067025b4e0cf4771b4d5b7d6fca2b8d1e088150230678d32adacab50550ab3e0bd0e754660ca32e8788290e0176917e103a43854d68aca29e699c0cb9f76c0d834c78888fc0302047c435bb500673065023100c7e0030d5d36ef1f43b00fbf5e680641637b049d3cf475229859d47173077a17186b805d7ba55aac3eda57a723f28a1d02305aaffd14065e5eddb63ea1240f2e0c1108972cef04984a5c00d4324fc2fed5d6f7bc6e00fae9075a600df30e3b86c1f90302047c435bb50066306402300e32fcd4dcdca3ea7ccb559b71bc2494174f896017f1a4c47243dfefb4077dc314395fa989d62de52b51fc19651a69cd02304b3d6751b557638e5eecdb7938bf001891e262947ff71c162e614bee38a15f7f657f8f9a1736fcab3ff7f51c037ebd7c0302047c435bb500663064023042e785825d687c1980521d2aefe317fcd6114b8a72c031bd4b6b2cb6006533995999ac679ed356b1c4f259f34b73c072023067f84d7005dedcf7fe1ff995b3ec39953a945edb230879182b645e4a7eb6a874d626a3f9a7bf62ea817067ffc65b6bfa0302047c435bb500673065023100c7e783b6b715cc3e8e6c1d5ef134a479d852af65621a67d88eec9e3386683abb215159392720390a586551dbf27383210230428025cb8b08fb0b53588e8c1366ad84020833a4cfeebd998a72be4e6764e1d5db259c13f0fb836bf24e1fd0d62da64f0302047c435bb500683066023100d0afeb705a3b22bc7b6484c3caf25599a9eef185c0f5c9b08fd5114ff2a3d20051b80d67665d7a84ad451a52b8668bcb023100af5e996da42b39a484fbe5449fb473e5da45975fc8c26fcb2959f52d302a7c61ba585919710c0c72cef77b4e2087a1e80302047c435bb500683066023100afbb688629375c12201ee8c2caeec152a50b7ee29727ff4f5df56ce85690dd42b99082f75bec0b41a6feca3edb2ca89a02310090eb97e1e3ef573741229438d76a11c3c7880847b5c309ffd1535a0366f96ad95e3132aabbe7fec2f3f2c777f95c6e720302047c435bb500683066023100d8f8ce3d1fbfdd131f1c2570396565419ec8f722f4a316125c93fb9163bd8de857126204e1f4b0ca761dbca629998f39023100d846ae387ac960292898f465685c94a528ef72346069bfbcd234fcdb43a50d20723c6de7396015b7efee5c27916139cb0302047c435bb5006730650230799b7b1f23c2471b12aaeea53314f8774400e7be0856c700ba60354e24a39d320ae5cf768f2ed9404da06bf141fc62b2023100b0e78ca34473a15765e692ee776cc3027a28f4c3372d2f35b1a98794ed066f0ce80a46c2e7f684f1226e785a8eb6e6050302047c435bb5006730650230098fa234d9df480d705fb1fd8713ccbe8e16d9d31e9c82abdb4aa6c16e0a112b9ec7e3dc94ed58a7324aaea0841e06ea0231009455d9632e42c23dc4b47a61874b21f12f572befe4d1806543a3d37e93adda6efb2c8e8d51e2a16c8f9c7321bcacc6980302047c435bb500663064023001996067e534ce8526d6f72cafbe4533d222ff6eabe8c02758da2dd1616aa55c3e3b70980c952271adda99471ac059a702301c636e744e6ba5c8cf018c5f89ee03865a89b45f58ab87f0d8790539fb71b57349f6aed1c8736df1e14697026fdd7b480302047c435bb500683066023100ff65599c9db56d476231fcec307c1c8b89b40138af5d54245e1ce56c3ff51b39e52aba069ef676f046ee12f017fbb94c023100e7e5e2836b7f3cefad52b7f72d6b9a2984830c84bf019409da7311435521806d4e886a704e20bd4f60d26e6884313f5e0302047c435bb500683066023100cd742fa14b0ae4027c66358465f98e7ee629c0f18af3d5a460b10c990c70eeaeffcd6120903a88a600a40876c0c85a44023100861ef21e0d007f6ced7f9eb2c67a5ec052f547328019ee598a882ca8c031d131c2d4fae7ed3eac7f9152e53707b355c40302047c435bb500683066023100f5e6d44642a92e4c7aca3f52b75790c7ce80d7c16c94e5d75f86a71439a8bc15105e8a94696e7020d68a8265ca2531d9023100fdd623ee53383fc26f417925aedd0b80f118ba2aea08c1725d50b48810cfecc0eda170b681d329fa6fc21e8962065bfb0302047c435bb5006630640230049e59a882d75b09457418970e4de281e1bec1baaf00c90481c1c405a94c5acd22ea5d19c6e067010d9c7a7717fcde6502304cc55409e20d2cb5ae1d821561831119e535366f2d45532bc239765f7ed3f246806215b8bcb03314b81191c9e32d67370302047c435bb50067306502304c72006d13682bef49cb1424e59ed0609a469ee62f375a35fc9fb700759e82b5579db2312b0f20fe96d0ccb362dcc79d023100b3457b0a321cc845452d5e045e95bb97800d43529c8ac5d9c76696b4b6cc86ea5d5e0726640867b6fba1fcb717150b990302047c435bb5006730650230403d409d0b92a70aea411ac2714a60cad5dd8268cb6384b7de4123800deb7e516822beaede11269c092c0aee6c97e334023100db3fa094b574bedf74e6702e9e81c4e0817f6f903c13f4262c898b2fb86056318efaec7ede025a47518ebe14f115720e0302047c435bb500663064023063e61d5a74eccb7075ce3a7b8267dacb77c14e9f639a31c75ecd7fbf835d4885cf6733c9934c014bfee7c77d8bf95a3802301ea0bcc17c3591d3a9fd286f2cda5312ec225b87d5413e75cfc3e949bf31ee3573c413b87d233e6f7638071929d409040302047c435bb500683066023100c55d3a37f9796996005057c884ab39d067cd3c143b161ad15a0f36530b84f8fc9a2877a5881fe482ce0c916a23f21e49023100a49bd11c6de60cd287a15dd796a5c88a8634abf5e043377e92d8275f33bcf5560d618bdb92a7e566d4be3ee804a6002a0302047c435bb500673065023100c3bfdcddefad3b99894420f954dae6005eb5144c735a056d70c60e5cfdcdfeb834377b0255713b2bf0227315dfc0f58c0230321b40bed66752cea0520cfb92880ffabb56a8a53e26ccff67fd64a5a737b076c9d9a91ae68988e61fa3adf65a74b62f0302047c435bb500683066023100ed093afdd65cb7a3c1c3f8752f0109f570113217dfe9ceacc63ed3a9db21fab449771eb1813ec381fb83fdf2653e2f1d023100ee7095f3d1a0b7b3fc3ca129a026e55ad9f169a429d1667474ee394f65f618f30cfbbb9412afa25162f63a4aaeca74df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301416d5317e6a180a9f3bf9b00789000bc4a80060696bf15a70c55b47229ee1559987cba817da579a98834fe9f230c328023100ae2408ca81ca7d5a12e6e3079e4d302552236efb0472e43b7f48666d07a4cfeba100e0157de8292151d961328fa921c40302047c435bb500673065023100eccd864d0666206cdd2f3e57e4e22ee4c42ef1e6aa1bce819c19dbd85f5ed3c0fcf8a82fe0fb18bd83eaa83e5faf85b7023067b5a49d5e35efd34a64bf86401826007c6d284bf47cfd537eb60d370cbadb8a0e3880b1c6f4683b594b62c6bf0266bf0302047c435bb5006830660231009bbb66266765ec55429afcb8bed77b0e21ac26336ddd7706d7b311e5873828bf985a40b405be170320ea158bc1196e4c0231009b0cf767d2861d26612d8a2d7ebdc2b646ad5d12aba94dc271d43a6329ec083b00078a384cdee568e6b3a59a020418170302047c435bb50066306402307a948a8fa00fedb2e901c9e04ef0778acf6448c3588f822b04031565572b8f7b2d012326166ed4406986e356ad1099c3023064b9c8e4dbb7a92b72612cd7ab370baa0b45c2d6857be4dd49a59c08bb19e93786f630d744b108ba8f2b949088e4b8580302047c435bb500673065023100e31765e3a94a8120199f869594b3df56ccf469321661bf96a3090b6698549b6436b5dac801826ea5d975e6daaf86ad6602300b07cb60d7033d8944660f6ae5466edec5475f533caee8cdf54215a53019282316a160159d10ec1fba3d12c0def2a0b40302047c435bb500673065023100f9a42d42d5ec811949a23c96e5b06fa9fc59fbb09a9f02ec21e2e980968fd57ac380084dcf52cbc06c63590068019ce50230031af21009f8c6fd2e2cbde5faec6dbd2f030e83f26c12e2e4ded7dfedc31b32fc96779a23a55484c8fc5642531270500302047c435bb50066306402304733d9a8b6229cab81cb8e236b2133084f2d6561062502c9963eedd9b4767596ae93965c24684024573ae9cc38f590620230450f8af8f95aab236d57b31bbecd5e0957218fbc66edcf4e43d84748724c43a1b47c8a8930f72c80463b8abaa5b3144f0302047c435bb500673065023100c43aec6a1fb47fb704fe92821861b7185b4bddb113a9e5905a4ea78fce0c351a5c43e4acbac674cae08d8754b2a93aa802305d8f351a49dc8ce8b5589402a15e52cb643a275ecdb1175763c6bc7cb371ab6281baf9689e521a5a74d05451e0140b150302047c435bb500663064023067afc677373d8dc51579306abd87955dc59740a340d4b8ba3013f786990618b6c76cd85d18895e4203f7d2bbe0ba6b6802307a7e9e87c7e2505cebec201c470b4065d14591d7c2a36aedd117cc6eac97d8250a72bd4ce803b3db848e33e7d4bcc9840302047c435bb50066306402302ddd56b0f166eec046c572b2b5267cf7f579155f9ce14556739728aff04544b9ad923b09e975caa7940e90f950ac39c402307f498fab7ad4d352fc2a8efbfed83fb620ad6963f329b7e720c61622305b9eaa061ac6ba8f8b31faae917b08aabfce180302047c435bb5006830660231008cdc7c09aab2855b6471609ec4b4f795bac2ede88c783b76693707a03c320b2d54bce1e64cc4331cc186b788ac364062023100d5d0fa89257e9b35828fd99baa488dc1d31a9a138dc085c89e10ccadb9caf54539d7a1c912d24f8c051089719b3d77230302047c435bb50066306402303b4223059a58353640c59d9da0cc38efab9bb5c1d3774cd113ec254abfb49826835e548f7c7ea560e6ee72f37e6c685e02304ebd6e973badb985e54f224cebd71e16f0c46f1263018f6dc0b5381a973be3f3a7bbff87289e11db21d3e744acc8b1870302047c435bb50066306402304807935a87371588c64b25588a0dfa6d37e6edcd1a3a0d6edc3d929e54030e7b0c7cd76efe63d821e0dacf67ff5a8b320230474eae845b12293881120eb04191f97e0174d026993d085ca7fd5a94592915b6d571d95c4c75879f1ce2dd189e4246cd0302047c435bb50066306402303a2798853172ce6fc059ebb9a05c64de430dcb92f32c808f99736c6e484e296f6b08d2875f393949b0baf79013c1674c02304dfd99cb8a4c0e94b268aa0e359fb04a3915627076b0e45c5755567b0024f10a03138cbfa2dad7c8b541db08e5446f650302047c435bb5006730650230399e4856db96beadf7f64d46a0393df3eea93cf2f4d75f602e9c7a8981bca909944e7ab925dabe942f20fc91524df51a023100cb6eff61514a2fae46a0cd7640066dbe3bc665bd09d845fa22b3ab2c0de0eb4ff2e94fd147267f897711c4b7c1fd863b0302047c435bb50068306602310087c8b8c9a2a9cdc1d724042f501f4bf8fbc1c75e8ae2865560f50389df0e97554336a33124aff7ab78be6de5140145d402310093220ee5332f39b4251db1d6a971009d835dab24d45ee75e3636b9caf5ccc583f45fd57f32010eef09c46efff7299ac10302047c435bb500683066023100aa5c111bb4c1b579442b0b509571c28c7d8e1baad80a88d1715a2b6b81da43f3cd92416305603e0a0f6e7ffbcf0fea5b023100a3634e920d2d136eea118098837fb48a935ddf0cb475a772c475e544039028736b8ba76124c836ab160bd64bcb004c470302047c435bb500673065023079e740c30796c5e409bf5d400a2e71b21dde1297a4a67e1c830b80e5af92a242ae8103d39106edf2893bb7f5eeb835c60231009129b07b850dc90a1a696a8719206170a4bb0b37571f2d89b8879e7fb88e6a75db849e9ca7810fc530ce154e7833978d0302047c435bb500683066023100c5dfa4955711c25e85fb4ad7160808ecd6d58e07aec50f31fbdf5b30e70cbad827caaa993f437e92b6f3579a36165e3c023100e685bead3a5543a1061b00dfed6ca42a803a7f221bad8ed7f680105a502fe023d84abdad8340e17ab9e2ae027349a6b90302047c435bb500663064023004ae70fef98e00d64be8fed5d52fbecc026efa21808da21a1b7a9d7d0173aa80cbfbcba1d78e4674215efa711f214c7c02302fd8a35ada56089d27bb7f5df479ac299709a819243d2ffd7ff6f94043501ded4a21c172e00b84651d2168df9eba7d060302047c435bb500673065023100f87e70d3db7b60f86150a98ebebbf1906b8ae5217f22d4c2ad0bc500f32b0409ce9779471e2abfb1fd095ad543115aa202302cc96e0413649910da3d894f97c671618a3f6347fa5b8799cfeb7345fc0490ddf15742f2d044e26f3e96077b710947330302047c435bb500683066023100b41b8892ed7479ae6ba8c23889bf4777b4f2e9fb17cd274c0a7df0fd0b46fedd6091168c9074a134f26be3b59aac84120231009e94d7e9044b6e3b92bb21d81a41f9cf96cd7dc049be9769b26ef545cffb10378bb4ec8651c7231892dbb67626eb483b0302047c435bb50066306402306b69be1d24ba2a1fa547169b047005959139a91a8900f452a4cbaf5610164566971abe3897e42317ba78138913025cdb02304675b9411660711b749f384bf4f0baf2d5f1e438f9edb52f957c9af346557e851fa67429ddb59ede08487226d05673720302047c435bb500683066023100c1b8aa33020c46ced19001371515889b6a052f5085b6c571f34d2a4ff1578ae529897f7a20f6fcce48cfc5ba4d6e1386023100ab83cc4a5aa8952e0686491109e38043a7fddc7ef143a36891bbb862d681d1fb3c6459c1e9d8054306d10a5eb1f8b9410302047c435bb500673065023100b56a3307344e9e71039420fc0db34e7a788440c8d37c68b1f3161b481f5d22f85cf936730fc87430ef0de59d0c75847402300bb7155f5842882e76d39f8263a84e49a4b73a36c7f0e5314cfaef31103f35932676dc8588d7042a615c2fe4e083fc110302047c435bb500663064023050f9e14716ad037f9ae63100fe53630a8e0da6b28658f11584e8bc4045551a89150391db6b8f4a775ec0cd817fb04bf6023028614a62be3c4329a65cd8327433e723b8ee8da9709e010b95183553d556819ceca06b9ca1580c2d091a29223820139a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230393bbd6b22276f6b8db0937312e57c23a6698f50076984c504c51d33d4a146c17dce29630102b585f9817955966ea3f70230474517d27ac2c61b5f58655051d476095d0433fefd1de5301a24477f7e6e386502924007167aa82cb50b36b78351a1e10302047c435bb500683066023100fec0db20a6a24e6c8a704645b0a2335713c291ff1f7b41dbd7cd8ab5e333a7a24f0ab4624e4d086bf5407d6a7146be40023100fee0a889475f6fa7c5d69481916971df723679c30f646f4a8e5f1e75ad64715cb0bdfed5f7e49a2492b1b0646a4681330302047c435bb50067306502305b82b926fba3ddcf54981f3b7ca5bada94487c47e8e546e3439e71ca06c6263cc5508e9e1ee8ac21bf068adcc2fb5cd00231009bbdd524fe657b2eafb6e30caf12b09b8f778e836c4da47efc0a201f632748ca9280e8fa521d1c1836d02e1a7327aba30302047c435bb500673065023100ecf3ddcde0f10e591a3bd7952399af6706b8e293e6a9d6a4fc3fd361713d149d321576d5c8b69135e21312db9c99259a023035e6fac48152fa0a4160c25b6d11b1c1b12fd6a003f738b4c6eada4836c94957fbdc79cbb9d549b7870cefda2f2465230302047c435bb500673065023100bee4b0958640314634b59ea1374a55d025c0ee2b99980c860cb77e67049406f2e2ebc8fdb90f0c758c9d49ca2b6ec60602301bffb3ba7a84d23ba72f254f07c900626e642fd1a9dddea7685e277a9c30fad1a0c6a07ab65288190a512d9634b372560302047c435bb5006630640230729286a7d486d5045972ad8f37b7356634a23fb710675e9c60e574de12192c294f5671015d055484fd5c37b1053030ba02302539cb570af8db63f3dfad9907310ffb313eb86a7ab22ad4f16075840e77b76b24d35cbc52db308e9f9e0a9c1a2d88190302047c435bb500673065023100d20c339e0c0b9e4a5f6fe3d6a0ef4a232ec96ea3c0d5be528321d561ae237f4986e1b840de15ed7d445df9c927f690b502303fc9bedbd602e69c3cc75bf5f5f43d4564e3b3c2a46a91775d816f781e9ed1613526e1ed9b35b7a45199b17fcd7255b50302047c435bb500683066023100e52a3dd3d4d9f165e6a379421099bd188d0137e12ee1ba39e359927fe8971daf37d974a84ed688f558f46d85c3cd2bc5023100c5ca7270a01e8f0a6e7f01e2fb86211e862da12585ed65e05b0507db3ac525cf9dff50b236bf068f6b5dfbea25ea38d80302047c435bb50066306402305cacb25a5584d01f7232ddab07d79464a6f77603123e420a4e189bae30ddc65d8388367f9d9cc8532f06499463a727850230267fd1c1ee6b555240549d35deedf56edc49529c349b4c6ebd27175836872e0c276afb11681d61df63cbdc72435072d60302047c435bb50067306502307e4ca2f1b1acfcb96e91245c41cc94c6a161dc2bcbf642766cd8bd5e8b4b1faf1f468f5281a90a6dd1b115952bc49d850231009cd01c4351f38d432d20f79b2e0138bc132dd658016fdb0738b26d7d6a02948aab2bcfe6949708798aa9cd035d4d1afb0302047c435bb500683066023100f5e308888d39c244c54c4c376d08b23d18d7ee81ae931221938b0a80ebc4a28d5452d8c17939f005bd1b54a826bc12b2023100d2d04a9fd268fc44dd54e4585f7ca92dfab884e6e85524a3058e4e152e808be444e8847b72bb97adbc3932274b2892b20302047c435bb5006830660231008cd74d26ed2ca7c98a79467c34310147e7cc76a2dec4cccee798ac276f91ad8a8408c276cdfb8825c2f240433ae6dcc2023100bfbd75da1da951082336d7d1b656d0112137bdbbab4eac92782ee8b5c8feb812f99579b5066a7cb247a72decdee8932f0302047c435bb5006830660231008a00dc47f3adb4d2640aa1548b41c8094086b18d2a199415e95d725a24eb9760a1d56303ada5992f053191991ee45ed502310091c0860f634992c2b35d41af235f93fe023a73718db525e681a5f9b730d76a8d7cf8e997299b0511e6930d924038e7f90302047c435bb50067306502306ccedbc14713361e85df93bfd3a93b5d39a14a353f732060b2e7a4f4a329eb9afae912c9e039e1840feb9f39126ccc8a023100f1d154d36c18e1a00cf44af2adeea3277ebb900be8545ffe38d978ab80b260bada4eac9c5bf2b682e1cda4c320da80b20302047c435bb50066306402301b756675bb0824eff9295a3e8f44c173af375acd077b72dfc2ad1cc7e23798cf7c95135c25ec1772f9375e147493331602301e302df8c255cf66a51257d4a19212156871dd2b65863519ef01fbb1e1ad9bb86a89658e276aa60e20ff7beb3f3641ae0302047c435bb50067306502302b2657ce315f6d1cb771c03f11bca8b154e334002e463280108cc02ff6c240a21c8b896297e0ffa66ad7dbd28af77f2d023100ff0f0ab4a0dafc165830586b25204e4f0ec3088a877f1c60c6237a24d1304fbb70825e1802ce01e383043854f9d591f80302047c435bb50067306502304cd95850ae382d48a5c49524358552b379fe3b5dd68417273cb02c3163abea82a6cdb121537474777dc2604868a99c25023100b67f8461d76507d5423273d646e8813104c48ba75bbff2f459cd190fdf7c0d90cae16b750604f472300afb4ea01b69f70302047c435bb5006730650230687e1d503838e9cf23b23c8e634b47b880d344ec7c6470dac211a9f17ab23868645c0372e06f9be3e97b68e6311bd1f5023100a7cccf3a14538cc0b59b17d23acada04b621ea20b0074d2b9e67dc27590609570bd2468eeb96f9a96c7f4b3185e3f6f50302047c435bb50066306402303c1fe5ab533e501a4ca648f53179a290d03be2f37cd1939ddf23470344f963bd6acf312ed4226ce99307935605da5d570230456e5ca0be11fa0971fe6f3c163bf22f4ba185941c21bf330affa258837882d71d2bde282da950fd877087f8933df0060302047c435bb50067306502300de2f52ee78b24d5b8957a079d30741fbedbc6611f776c8cd269ea5b03719dd1d93662733c3cbf12a88b78c87a16e7ad023100af06bfc933e46ef5a5d553ab9f877476f2aa0002c9ecdec92c8f811e20197be56d1394c2abf70412fe2f2347d75a36ac0302047c435bb500683066023100a3e5fdb43fc396c7bf41fae06b8436a8237baa09b8e506521dbade12821ea4b728b3453b27b5eabca407ccca6e0cb702023100b656a8da14294133417af7c9775af63b26d00ba9da2505afca8bd2c360f8da34e096dfefdfe86250c1b6a5af4beac9290302047c435bb500663064023076f4c7ee0704bfc30b0b1a9caeb594df1ad381121b540300fa316cc093af12b6a0fdbec026b33bb379d0de4c6eb5a941023054b7e385b43f33a9a47592d684a3420bfc187f946ff227912bc8d173eb17ee1931ab0d5569c4d94e8a26db044f1ec1800302047c435bb500683066023100f1522baec6782d8b0b5ed69db51304de66bd6da40bcea0c8d1a17dc8713e54b607d23c0257e770994d62f93b106181800231009260c32bc3a9c46ac074d4209df7ff0f8a681f3c1e2bd16826ecb45f1a7d0db6e15bd54bee3ad44c7d825393ab3d23a50302047c435bb500683066023100e254ab9b66140fa619877e9bf0a80085a85cf577532669b123bcb47ba4ef4c7e517fe898495911f0c4f25547e26c6e81023100f46408322fdfc96809870cb9d86ab6f61742440e595b323c32411c890d55b44dfac48231839c1b9ff6432fd4424159e30302047c435bb5006730650230026b63d96c7a98cd73fc614c81b14e874a4392488ef6d62e3d73e76b15ca09898c2afd5bb78e968cedf80bde602eb17502310091ef265de84a5cc889540d23c7531b433ca91a2d3dc2a7e08dfa5a95921eecc9adcf2f7729ba2686de49d736fa042bbf0302047c435bb50067306502310089cebca313a5972c2c060e501d4e6d4468ecbab135ca375300f335b94a193470e152fcc457f24d8238f00202024d8c65023010ca3ece92eae7f5cc13e43bfbacc365a40c3cfe4a33aa10ff6da014e2431b0fbab4fc8647d8936421b3fa1cdd31939b0302047c435bb500663064023005089ac68f912c30cfe73f1450ee200d7b405b257e4ca19ba67d5efa65b65b2f27b077253f29a505b926c6a8a1337d4b02304c4059281cfe206273bed2cc49f903172cd03e5326319e2af2571a705d574a025db1b218d4e8d28174af39221ffd73700302047c435bb500673065023005b63e23d101d3ccc82c85cf9d50cf660f3ac59dc4494dfbea557a261ab30b75dff0543488cd5198e3b2b4198013839d023100d2a7c6b03fc725615ad9e33483bba412fe58c58beca5feff5104ec80ff199e2be3a600f3c7c67b499d0310bf9b5465d90302047c435bb500683066023100f36d9a9b8d1b3db73989d144138b56156b942642cdbecf41fb85c8345c6175b1bb16544b5b42fa767737169c32376c9c023100ce1e0a558a9b39a400eda6c9e43b6dd617c911d6c34e0f231fdedc7e46a7fb79aa0ea15b553130ffb061f2292364d6f00302047c435bb50066306402306fecf0c3d81bd16df4997b09364a5db2e4220a9a692869bba0b3c5df4fa6f5d24c42f34d04f74aad30b1cfdbd41c9ea70230058eb10a67be43ca48249f44b8f944f4cc60d4fc42fd29bc0f3c13a6cb2fd646e196e0904e2ce13804f0b2bd698844330302047c435bb500673065023100f0bea57901a96a799928eff08ec4f7055181f220735047dcb5f02d5a1bdc7b27d5a2b209880e7538c46cbe2cef7c6d0302307e2518314cbaf1a124d0ffbbc3024e3990b8aa1ce97f50db1907b89dc0f6e156488ad6958294785a225f64b0254aa6400302047c435bb50068306602310082f42c3ad0e53992c0358fc00c50b871878485145dda595504bc94822b5435474c7e06e30c1434cc414b229f5254bc7f023100d510d29f40d9f697a702b0d23d54dd67a7887d41989a4794a640d6a2e3bca88c93a5376f740c0672dbfd8036997288050302047c435bb50066306402302dde9d63f17fa6887809653640b84c8facbc939d5c289f6e04e5cf35c106f0e19dbbcb7933452ae377afd45227e445460230235bc28abf889c3a007f2f02811ab7f7242c1edb257d980209125412de785fc829af7f1c16cfbb019d63e53187d88bef0302047c435bb50067306502304665539d95b808b056ed854456a4847742b3a67b5719e186b25860ecb9ae2c95ce293adfc803462951fb41e65f738832023100ca856ecfb419ed4f6d4b04db2b049cccd377fffceda47cc406d5d2112f1724387ba5c5e375610a73a0652396bf8211df0302047c435bb500673065023049494bc6e9fad6866f5767e8e92cbd3c249c9fe26fb01ec1dab193e21071e73f518d920238bda9a87d0174c17559108b023100f057484e7176d1571bc9902c57de0575b5bc9cb8661784f22b97fa46467a2f992da8912df84f26272577a22b6d72c9a70302047c435bb50067306502302985f8632be9032e4d8ff4e22c17a2a7e6b998baeaaef3075729ac7c162f065cf71f3670fec961ddb9ec9606e0c8d1f3023100d3a23605ab6402b15888f7b1de9cce3054f1b590734dc2d2fe4110216de606c16db7514c39c68572c86c35635717f7d40302047c435bb50066306402307e33306ad1acc0450f2be9c819f81a0a53152eb442856b45c4dac07bb77e66a8edb3ca891ab0946127792c32338bdf3902304de984c8ad1b56b476eaa79622346fe52ace472c80518d178889540eba036cda8ba1fd5d50557aa243861e6d304df4770302047c435bb500663064023014206aa0cb6cd7fe1a1436aa9b3b7ebdef52e81408428e5e5dc1d5a9e75a8d6b37153951ab8cacadc4a585e791fd654a02303c314896fac24304bc71f1ef3b4996a794f8c9ac6421d9a89191155b41fabc38fe1d66d5ab277f3f85433e18a33e3c840302047c435bb500673065023100f89250404a22da6ce6fb9ee3b5df16c6cce993192093a715f5d9b55939e1dc44d3b262e388befa2b0f30872322b92146023076195804059a6895ca2d788d7e1512d145ab2b19c50dc438582734152dab880f0fc2cba52cae12d42cef51951486a0d90302047c435bb50067306502303e48e20348320d10743ca4f2f0d840589ac757bce7e95eb15b4cc6eaaf713507b21eaf2848f6030939bea32a0834eb700231008a4c3498eaf08554c3babd2880033c45ec4b862c102bc7f6593170b186a4d8e875486c3f3b42ac815aeee507abe24cc70302047c435bb500673065023100ffdd87eaa44fe5673b8ab91d907dcb9db54cd00111669b5b09965db1fab8a5750e3a79443227db1c2174ec6b6bdc9ce1023037aad435bb0ede61f983baf05c0f9004afae7984a7d406d595370aa8034ba71c51d74183d3c34b1b2411be534419f3bc0302047c435bb500683066023100e6d3736426cbd656cb9550ebb54e25aa9527816c4b4dfb3f64dcdb8008835e0543ac330196901880df2416c970d5ffc7023100baac8db71b9770cbf3a7c79aab46047b95ed8d0429dc2530ca819f62c162f526b7080b2c7c976da5ba7e4b3e93736b030302047c435bb500683066023100c24510a861ada61bc668d5fd9f8394e05456920501f945e9f9276638c90d1f6e9dd50f74bc8ddb6c817be3d2d971df5302310097012f7fcc4754f6036e5af172528cfdb619a69bcff8ba3846c591d32fb2fddd8a66e6567c2462492397938e086124c10302047c435bb50066306402307d3c1581f806063de336b2801945fc3c5a8644b806e8bca09e4416cc15580f429d5fe8fd3f8087dc195f5dc3e03ed0c502304195bbb7de79d5b268c980df13ea6ce5d15a4f810d2330b65b8c36c8ca8b5bab620bf9d66b22640ab3d65de69bd7ca820302047c435bb50066306402302d16888cd340949c3cd70b903a8b3a2a414913f08086ea1b1221a805d14ed50d850e4c199f405fdcc2ec4a43542847be023048ebd770147da3a3c517d1d5e7a3f256883c073d6268ff7622a585432fbd05017e435b52bb4ddaa996b8cba4f34a8fa00302047c435bb50067306502306f59f81da3702318c3170e55b6c562448cc09cb0f95bc0f912625fa5d9ede06fd6e4a3f3c8567ebd10a4671b231881a8023100b14d611624270524c9b93970c694def22c7c49d3bd4d22d1561ef4eaefd480ce372f8253cc2a108b278cbe9229f341040302047c435bb5006730650230491cd583eec6085b70eff9a88603fed370a07e4e2e6b6216a1cff9a35b1f2f6189bbdbcbf8e934cadaf28d14ad85b1c4023100e65256b13114edcd42f49c6a7c353d2eb7ac2560cf281f64b71fc097a72c3af08d2053e55fcc549ae9e709fb5723bd840302047c435bb500673065023100889b2001c41c754fce7e388f0d3c713241a0e467dbb1f4f212396ef1fe1c21090048338bb281a6c8f5c424994231e48b0230676f7c0f31f9fbd5be3b5fd73bdd0c0565d65033d90e89f84d848e333810e64d2152c8adc7c0e47a077aa065c6f2932c0302047c435bb5006730650231009c200cd8c6c1a769b6314f413217bd4a767b6a2f83f6a3f42156f5df04a5032bd1faef41c639f6ee8b03cc041868b2b502307aa156702d07e3bfee62519f789accb32bcbe916195f5d358fe80a4b59f04a410c5005060b1fd1985c611d03768e5e940302047c435bb50067306502303e700e19bf6b75d8b1bb29f75c12c97fade33dc1951340503e5556f7417956b09f20e7f47bfa848f4c8b2ca5de68969f023100e7d23cdeffa8cd5f1fbeef21ecd1ba9a4e2f6e70a9d76c9f5f4e4cb1c60512f25c1d21092d1f70d4a29c9d5df8ddbcc90302047c435bb5006730650231008704cd8a12cbe8d0f024c676d9e2b6b63aff6ffdd102227f11c93a1b30cd2646143253d962aeeb4f43fa35a7c2608db702307e1a09c0cdbe5b421074eb52add76fc9a13944a6d065eee5ca35ae360e25c51583a5818dd7309a08b66d448c7496cb220302047c435bb500683066023100806bd07972632675486a9eb0f13e781c994e2fefd129db7bbbf543a21720032f83334a78ca3590d90127556bed173cdd02310089b359d8d02ee9fc92344b87edf651806491e941271c7c8b8a89d519277ad7c363d9e883374614651a0fd988e410b46e0302047c435bb500663064023054e94bcb6cdb46ae0c322bdaab214eb2d2cd8d7ff5b0709b2e58bbc8b599382b0e37a500db4b5c3f6cf768256bd7d6d602306916d81a8183a01aee85f4c8db705b1be3d0c6062db35e7aa1cbc7c1b1c980f0af4fe6d5c79f8353bb8632de60d0af120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c9fe80fa379c58a4ae68708eb5baa5db8277e8bff20855bc8d2ab2b1e0536944c3f5fd35df295918be5c5ec8172814a0231009e42f0dc5b35ee433cad7eebc2fa7dadfc78b8c4f7371734f26a24bebcc673d961c13edad3666e448d5943288910d9be0302047c435bb500673065023100899a95df736f045c0f43a632f83a6dfd3f12ba5d34182ba6801b2a592315863bdad75da7cef516eba91b171a9abe5ab402300548c20a95b2b81e07bd5d0e4513bdbd5eea55e0f7dbea5cf6fea438ec2f16c30aca05496f488b280fe649ee65050edf0302047c435bb500683066023100a9a47d63ca1ed42a625394ffd9aa53d58eb7d9c9da19977d43146ecc0d0d12afd24bc3966c5821c62e7e24699ccd9053023100f3450fb93cec67a04bcad2d1f75d2c56a6e25e4fcf4ec6d3caf79f556082c9266231fb88925fd773912d11976f6e15cd0302047c435bb50067306502307ffe40eec80a0c23e9e1f06c783504f5f8666034421ef056f5441399d71e6b365644a69abffc135467b330c8a38ae080023100e16d9c7bcaccbea1da8f9b47d5c2e44a3f7ef3809a629e6a3565a2faf1ef2b476abb65d1ead7a0d9940316ce8e037b6b0302047c435bb500663064023035a7458fb8080c44c244691502003f97c4b211a150af8e650b94bdf0debc0ab13a117dbff6fa8303e4d303640a2cf18602307a6a43e012d358309afe5bddd61b5475646593bb0b7516f49e9e2a3ac6b71ce4e4f6d713d3cdcd7b0b9162c70607cf8b0302047c435bb500663064023016bd95c4a681d049f833ab508e928c25d631655951982418b083f30abd051cb256cd4a2fa2e36fe698ae5b8f23ce37e0023023780be4ebac0a2b9313530324ae9c9c1b13a399325edcf11c2026ec9ed6cf5e8be076645d49048149dfb0ac66799c7b0302047c435bb50067306502303fa07a06ed1868fc6284ee1b86a360e7248362b156661bea8646283d3d85a87b5ee7d12d5ec8f4f33ef7d5d3ccf07ec9023100bb51810ea5e9abd151967f7fe26ed9032c27ca05cdf54e8a469cc497fc138d4fe75e1121fe869f23e952364e6da9e5de0302047c435bb50067306502305c8236564ebb17d2411b2369e66c3abcc4ab45683ada91676ef19461c1c9c4b821d8dd1d692d510e520b59271e0266db023100d09d8b934b156f1f0548efc9ab97bb90b6bec226faf90c6b49d913caa195005989e8e1637f8ff2342cc82c2f5097ebc70302047c435bb500683066023100d74feb1fe1c56fb753cf79e48a030c6910398adfe2e86a58e4ee2d1cec7922efc1e2c151cd6d42370ff820d746d16052023100e44a490c5afda306922aec38e80f486ef6f9111a81be5746548b0a1ca0472ff9ec1f7b7dd6b2fea19ca6b5f90542dfa50302047c435bb500683066023100e40951ef68726bfbc26385e6ec68a14e655f612dead07281bc0ec2607477d7d4743633136e3b5ec9f8aa3caf35742f04023100d56fa58c2993de19fccf585978b7c8276a0ea39b721e1c2016d4d9d4fcf3cbba744bc1537a2c5089bb152a9a5a7b15eb0302047c435bb50066306402304a3162c68bbe78e67357febe696a41695412b1fb027ea5eecee32b3adb705c25843b29bac06596c5b7da6e72a57eb8370230264c7c1fb533c313d567c3a5ae258abe90dae65ab066208844de49d0cafa98a96b16be6c6e4d9e0ea1b25437e72605df0302047c435bb5006630640230017e4876d3457c474d6c349177c444db9118ca567411a2993ee6c21a6b867f481daaaebe206127820ade29ce8c0bef6d023044e817c0b2a5b667d3542b963f588da06664a79634e38b297075d01642914e357a011acc91229ffe4e0535efddf260e60302047c435bb500673065023100d6c672b7c7fb992ad2e62eecf700cc271a916251ef4b5012a2131664bb100c9fe8a6a82b15e127b8025793fc009e6b6b02307f3fd3f0d802d60b6b710b4624e36de843c6b3932450c071f31c7eb6af4fa2012be5ca4f191f24197f5df8ca9157f9d20302047c435bb50067306502306c13b83f3f9b1874be277a488c6b2ea95baa44e452ff9521d570060c9a97af04e28b006b1cd1779e9fd49b018d9a05d4023100db3606af5f33e5e95fac561efaaa477a7b53d522140e88f11909aa128b385df5b72a6390a95a4f8b0ec9496ece96ce0b0302047c435bb50067306502307a204a21ee2f522c7e6b646d3d850b6c828d7e328f5de8f170a46ae5548efdfdec701dbf781fbd83392df1594ee412e40231008a23cfb147f04cd993d2aba932e17b34214f698656ef4961982fefd8e3e0b979f115dbc5dfd8130b41d4aa6f77babdf50302047c435bb500683066023100e4da43a0d504b578ce1e4cacc6cdc0f4d73117d4bb8ec4613634fd55787850679cb99afa781f06bbef623e8a20dc4b4a0231009dceb964f15335489fc60ca9e370b518b9759ef2a65a19403d776915f0996095f3619fbdf8056fa3af075072d22e6b2e0302047c435bb500683066023100f4c600f87580fa5a1d04d46eac93c5bfddfab7e7170b3883ac8c278d2fa1632930bf597a837fd8475ea3adf4f275b5c80231008becd5ee20ecb68d75118eba06399fe22f7d23b509fb333049c475218661c234afbceba3e927397e969a464af791f44a0302047c435bb500673065023100f983cf5b77ba8d7be29cf6b6a004a7d388705df5ae802680826aade61f461e6293a01e864bf3c4bf45ec08ef0a76c7d20230381316a2bcc719f26fa8aef7f7a357852fdc4e877238ab2e9e1d05b0b3e872c209ee6eabd14a8a2ccb3ee230b2854c960302047c435bb500673065023100bc485b0aff37464e3f19dd07458c7277b93527c209efc02fa9c0c18652f29839c0be40aa37ec629c2453fd2fc9d4828202306a9c43446ab880c7f716244485b33d4d09b15b0e570e7d38d40157f81779c606777d862a92832ff88a94baa3a52618430302047c435bb500673065023100851032bf54893661c1540adf2bb4c2cd88e2c288b699b33eca1ef9aa7606f112db9106fe2ea669c8876f57d440de4da002306360e9337d53014d5ddbebf87f238e366efe9f4af1397896e811fc83d9418fdb1a59fdf2b54524afc36a89b4b4ca2c050302047c435bb500673065023100d3f9d37c4550c74f102475bf7b7780c9944218d9b019af2e83534c44b6be84eb165c66220252dedc8e85aad05ab28667023001beb8832a79e72f9df1bcc2b39e7a1ff086486a693b4b16e4864ed2f982dc864291b034993efa6dbd000d41b7c69d220302047c435bb500673065023100cca2561528eb1794b7a8c0c0e8027ea8895d79d57414d06058f808c616c88ab3281a694fb44d4f8be2e1cea5345bff7702307d777a154b305ca445fb3deaa7e6fb416ad92daa862a9b2ff32938afced6b77ac6e0aae61ea4a91aebc2852c15e2c6af0302047c435bb500663064023042dae86b669498ad91d07578068c5e53471c1d10915169d1d981611f86a4324cd683f0826cc2ca6e3114d53d1a72fafe02300251afb0785f8c37d0fe457c96b50e856be02ee24355abd2269428f67ea98d27bcc790b46b1dc10104b3fd5e33c7ac510302047c435bb500663064023008a5b643a08f4974eaa2245d26da142cb608e9d74889a3058c4a6e85c8dbb52bdd42ad3286df9346c5890c92b5bd9a8302303504552ddc5bb7a594ce8bc0959201018840056b85646f4f3798d31bf1bf853fdccf5f2b81883a848443ec3b8b6242820302047c435bb500673065023100f94b470baf09720a550d831246dc28625f28e2ad7de37bc45b5e2eae768f537a5b541b5042601a4df4b18d10be3a05900230571c454241bb1db9e1ef0560e334f2e8c552c90ba785467f6d45b05209bfe4852511137841d29581d3c1ccbd5cd77a320302047c435bb500673065023100e6355185b472545cad5aa08817e2d00442ab7a5f2872c23906b6b1bced79fe309235667838135c9ea98c340f6d29841f02303f71657c535e9825331eee44b4bb2d4723cdc39d015a5d155aff3b2738ff0c7872a3cf3f9e934578db95131e255d97cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035d619c7bda84da7b4260bd477e6fc3560189a3ab817694ee3ae281c7cfaa80a6044d90fdd2cdcac2865927e8e12fffe023100cfb686dde11bb2a2de205f2d0499e1156fe1cd2713f1ca02f0aaaea1438f1ddbb3b4d2f349034f58d45eebe48bb8d5590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b3dd9d276717378d99042e740ae7ece91f71e2333f5da4ed5b0ee84d4e5463548dd7022a5c773348ede217416c4a3df0231009384dd24adbfbf2862dc8c0b5d36dc350cbfba3bbef7a5a33c56c3e373ba3f921b06b2e65c5ab73b0aaa3e92a95a51530302047c435bb5006630640230402253ac2c4e53a3502fc38c270b86739903a03205a71f6fc807c9a193f44e468de1f4461fdcde3229b338d968e083580230491f84490c794f8601be914ba15edea9d5222fc6a0b661f7ddd925487371387547a10a0abdf6a86500be8af281041fcd0302047c435bb500673065023043e194f74eb10262759866de10756ddeae4e8be137de400c6b86113a6226e4b90d4ae63ffeefda908fd7492283667ab0023100a3aa5372473248c24bc041090c8e839f5caa982661327d025a66127eab6d0f577267ac706ea6c58852e9716273497c840302047c435bb500673065023100a0eeec2843ff61e732f91f79abaac8321005de083f74444f8d2e48a1a15819e4f7230d3c5ca30e172a4f405f747c1bd60230418acb9b408538aaff9ec18792b889d2a24d64ca1d68213911a091d071c4c810e9da87e338db04fee513b687e711a33a0302047c435bb500673065023100bbc8420bab33fae27d40efaea3703c175c1ff53072810279fda4776e8c6f58f7345487dbf0b657f910b0b120e00daed30230376f0d017282ff94a7beac6c73d988426ff68f240371bf198d975503e525c2eb243605b0f1b9b7cab117b643935f06a40302047c435bb50067306502303972d7e11b051d1895bf4de2c55a28dd3f93373e6ae128c5764c6c6639458ba60861c2d2d840d8e4361ca0bddc5cfa03023100f83f492b4e72fab41b96f2ca343b863be909013e7aea13668675671665d5e6e704c28770848d19da9228f49a7ca9fc260302047c435bb500683066023100889d1493292ca4f85f8cc5ada9be59710b763730896c4b265bf34965207586798b01cd52e0f9f0a1330ebe31e57968ad023100dbc7317f3327506f990ad90c403453311d4275b61b343059516c6062531cc9b651b90bf9650d7b1da83efa63fa40af0a0302047c435bb500673065023100d9fa987693d42fbdb2865c9c3c530ec190cc364ce372fe4df459f4bdd344fbc8f9f319bd7abc31d344ca1ef89a6f63c9023032baec9ee87f224d6f49078698197d89ae81447020700faa07354e69856c255565d83716f844b71fbbe48fcf38e848610302047c435bb500673065023077f94da2cedad946d3dd8171501ab2c1c34e0efedd2f336092f3633c008ebebda7576983b5b2e1d19f76a425b0cdef06023100a79764dbf3f79db9acceec238ca6dac6c44c14bcb65ffbfb7c9a89f13cd2af395cfa9c6e90f64a191bb038f9282b3dff0302047c435bb5006830660231008a0aa1ec8a4cb9a8feb397b0cab0e90171f9b570863daabd2ea51ec5b545bcb4fd405ef3abed68f05421ba98eaf71235023100a1fad03b7a50198d3e3acd6d8228b547e49fa7e36b0d31ce91f51a9359baa3faa7aae463fcb80a70bf43da9f652d34a60302047c435bb50066306402304f20a0cf5a1af55359772ba3b4885f42367ea84f44c16ca22cac0ccc29c31949ef7739a676fc90887a7494f8279a5c600230503d83cb6c4c90d2c90e0b0416a7b3710d70b1a0e47b07d6242b875bdc75ebfd97a591cf18ba50b50482cdc5544315550302047c435bb500683066023100e560be5259688d51365e3b10fea35db489dd5e69e486cba167ac0247a8913c8faa506fe26eaa29fd538b7f77176a1581023100ddac0f6d84fef76e0dbc52746cb5a4b7aa7ac817b95d00e2ac00a6642a98478af4c44e181c85ca89abdc7ea4208db06d0302047c435bb50067306502300b4380addafb885a6cca7e2a838d81c80c0376dc378a16da5d94341e68efde4d40c68db056bf35ee851a9d25909d9fe0023100b1fbabe69007f109d111ddcd052829d47211edff12f8b0c4449de5cf04562c357b6797c9513f23f62701dd31ff6a28b20302047c435bb50067306502301e94e045502c029e5dd4a9bd8897c0574334ff6747e485c67c79e557559d8f7953b4eaa96c7dd8a507090a7e01afac210231008c17fc8da90a4f163740976078207f3ef0b595a902f6eb5f80f160790d2fc7c45f3b272f91c7fecea790de5478818ef80302047c435bb500673065023100b7d3f245d076ec59a1074dd29297ce519cf9f881f43e8d2ffab4498e0e82a41f9c6ea8d2917488c12bfa3249d47cefcf0230216e1da6c9bf0e9357cd600dd62e5edca12ca924b629a3103524425a3618aeb9b4aad76bbbac968474c166c41bb831be0302047c435bb500663064023021c29e23c29fc74909e3d6ef5f32aba16283568f7967328532e8c9e7fbdfa552adb55da7ebd6e2514f9add221b7c120102303eda6b0cf63bdecacddfa08ce021c94a3ec72201b85251187a8d26356535f2f9419f436e0ee996d7ba03ee200e02e4080302047c435bb500683066023100dd5341dc862b83db606336f82e1f64c433c79250fa3e527e11e1214028de0668a2f79f1a2c750802ca26608ad53ad505023100e86b862d0384159af5c6c912c2e397b60e584f9d6c2357b817ca387929f4d08166a48d954788f959d9245916d8103e3a0302047c435bb500673065023065bb24cfd7be11f46d8ac060627c455b72509f9294a8af627ba110e9df2f0a56c91989d9729bbbb59ad7749186bd1c94023100a1eabd3b147904009893cad2415ffb2b2febfda25f9e63dfdc711c8b6872bc76b3f37de39bf85d34950ae24e485187900302047c435bb50068306602310096327e7d59c7a2da9a9271b81fe9e94e07a5258605c9d93e152935c27420453dde0edbd7c4ca1e5e385b335838c97098023100a4d1a78c788017c031cff5f65c9606a603980491b49fb05bdfcd67d059ded5898dd2024ad2444517fdceaa30ff0adf080302047c435bb50067306502303d2d6f17f0310b713e0bdff1e5784d13ec97c3494551ce34b9b6f96d6795bb18b3bba1e9bd455f4524b10ddf117ed743023100aeffe144075360070ca3fa490c9626d01dbb2708ea1ca1405963ba0a52b5b0caf36b317180c00766a33a277c7ee5aefd0302047c435bb5006730650230312c6ab428bc6feb9bfcf9e5a1a6ba7ea9138346d0215a79b6e88bc7df26724186cfb1ad1ecb72db460ba3366f5bfaee023100ad8d2d09e58fb7cf8cd9f087af59b267d633190bcc6a11fb2981033b941a9e567d5539e6d2bcfceb1e47b1a42203f8560302047c435bb5006630640230733db555de19f92cd389e660ee2514bc1d9228e44a3b8167b8dc9f02b27b82fb1d0c507e116cdaf2eee801b9c1d5a36502306a2d17b98e469a138c9ad098e57ec0067ae3001094680753a1ff66cc94ac1a557f0f0cab8cead7b59d6427792ea740a70302047c435bb5006730650230553076fe7c8d55bb4a4ec80c5a38daef6f9fb06cea3833c82c2cad43e583c1cab6dce1f486d3449edee6b58f8f55d12d023100f402beafce26b0ac96ccab50e480fcdfd45102d6589d2500f4fcff53cbdf5d9c766748162b57472bbd9b18e3b01bf7be0302047c435bb50067306502305652d29d53128e1597f9426dc351ea0890c08a248fc288454f054780f62eb277970e0aa86507ab04485fbc333d86c632023100d94250e7fd628d0f09bf348d098e14117496482bbe2dd5f247675d07ac424d93a1f2b6e2a8c1fb8a87429f5a8398cd540302047c435bb500663064023017d22fed16ceb7ae6672775c21c491f3cc6f5379f5b2b6d59421308a69ce796686efe6f319fbd5656fc818e44fba22ff02301974d52f4df856a950476ad2d60b4f0bd6a65a27f2a5997a481620d24625b71e1ccc584d2d77e7d54c617b0123611ef00302047c435bb50066306402304999618f21bf30ac44151f2ede51c69ccfaff5f17342245f729ec3c64846ebaaee82a885ea7f0b7388a60f99ae5847e302307f1428a9d372ae37b59f92242d2f034aba3f46669dfdb0ab95cb57c5a117666fd912a60e92a6162819edbb0a02608fec0302047c435bb5006730650231008f51e0a5397d4f9661d1945ed7b2a926a424808611356486abfb4e1afc82bd17bee07c3f20a978e9cbd09419c4add3fd023028fcabcf836f8316c5654f7cfbbc5e6dcc519ba2ff9b667c59899806bf42a3ec16ac4b239d111904e89814c81c8e11260302047c435bb5006730650230195a495ad1ab4a500aad733617a67e1c352aa55f298f37ccd79e01ec2822404eb0c8a1a401003c76e72cdcc3f8abf1050231008ef266366d523e9d92c2fc5c1158b0abcbbcfd73d141f3fedb13b915bfbdf17186442d4cf06a52460e0cf41a8676b62c0302047c435bb500673065023045af8e8b185c710c6591cbeb8b72f057c7294868d80dfdc1d66dfddc49ea44c2d383b474d3d6e6b249f3142b65425142023100f08fe0893c08f7ed245ff32ecdf2ee216cc55f117b11073942b38b6fcd3496cd512a3d53871b26dc21507684d28eef710302047c435bb500673065023100b366d374b6279370931738110deeadb04aaa43ecc3ca77f4e4db776a88fd231d76f23123bea6b8e12c657c28f280f5fd02302c953015a8a09a8e4a6577758958fcd3f282785bbc999d3a3b6d2c20dc83a463815e8524c8c7fae14232077252c9e5120302047c435bb500673065023100c36cd881ef994c37d1a15895e4a326e750ccaec66ccf4c4976d50d8f46a79733c05d5efebff7646b6a898f8d69641fd00230792074f27fdd1e00b8f38326818f5a58bdfaa9fd66ea5ec12a4b5d333f64aadf2381719d5861c4b15c2f5854bd13c43c0302047c435bb5006730650231008df185920b5a6f85d4687de49db7d9f3b277f4a3560ed91ef09d416c892802cc83d08444eb4ad14fe84e8845cb96288d023039a986c4e0dee4b9ccafacf4be73380aedd64cd925da06e5af6900b6856fc0b69b3762b32c6dbdd4f607884c614fcead0302047c435bb500683066023100b4cda18fd764a492601b13e81ceb1cbf42318aad75b37a3b720e8e22417971120d52c75c9423e79fa68baeb27c4a09c2023100968c9ff9acbcd1b0814c1fcea635af8e7844a62b91f73cd192bdbc04d92223776b85246f6c0276c3c840d70a32fdc3050302047c435bb500683066023100f396ed2cc177af613ba3cb8f44a46b1e6b8c4c383d5727d040683d43f27d0e017addc8c02901de5918154acf01ed171e0231009ed038b6dc7c8d46e99a24c98c136b2463fe46e738c406a58858ad71ebb94f78e2e805e22a1986eca2d22108636090df0302047c435bb50068306602310092a972b056dd14c9b4b55fd6521a347fd5b13bd9e82336ac5c3e5970ef1aac18981b8965e58d10428d6a3476dfe2a852023100b79d5388626ca7ada0305602b1a78e50e349bd01bfc5ffa90a6ea32d91e0bb0cd770058c76c6af85bcf740670c99a0910302047c435bb500663064023068394bb49250855f3a9474b1c8f4e41cc6c21d3e3f4125a4f287c3fcb65a16187aae66c6e99992e746cf251664858186023075354ef72493fcb56a14640c9e5617f0f75400d196b41bce3f149c87e60a64fe404ed0d92ac9d93ea6b1d8c3888482750302047c435bb5006830660231009e9432fbce0c91f180428921f85d0220a9637abf8d58bfe4a9a162ba595460f49fd8cbc4024eda572453d08d23be54b5023100d9fc33b27ace47f10cd38f7b774cf6ce44f0c0b0774b95ebd9cb884ac14bed2892a1d05b6480cdb74bd1349f8e5815480302047c435bb500683066023100e7885b84f28508838e2fdc55cbbf21302f28088a87f0f7ef97b37736eec239852a28059adaf4ca0441a1b2ed386336ea023100bb0276dc3c81fe38b8300ae0ec0da7901095b60a6bc3091996ccc294ac3720411e249784a86ab6ae6d131e433173c5e10302047c435bb500663064023021108521ebc1fdbc6c411d9c5300a5b85c3aa9ffc0924a88662c02658f99705c138706b4b1ba2d46c862b10618759bdf02304fc0805152a57636119b0b42b84059e1cb6fadeec0e48d3ba083af860139244b449406583f29caa37ee88f1a638e58310302047c435bb500673065023100eeea3289f0fbd388c26e85bb41dcc523f5d3511e727750ce2803eb9a24c0ab959b8d4d13c10be7d5b384083a574cef6e02303bd98d36167bc7260edbe5e93eef3fa3a97930a05f0c2dd5daf69a652395d3ca51a028839837517ee58dc6953b3b487d0302047c435bb5006630640230127187a3339d232b9c7bb1b8a445328784d756b903dd459d4773c76bd7ebb6e433843590c710d0abf9c91bdf9aca2df3023077e0685d95a4f9ba2cc20301de09e6d629b67cd5dde4ee7bebd962a81dea9832198926d56cff3e75348e005b596101ee0302047c435bb5006830660231008e3440710e42cc20e79e73b9a3b2b915ddaff0d92d0f419685d1c51cd58d34988883802fcfdbd641b642b215bbbce42a023100cf67e975efb1eae3b054cb5e36b7a888e12b4038a0adc177d8a9d659a090a8fe58bdd61f48e26759a50fc5d9fcaaa1750302047c435bb500673065023022db4ce406d9d727aa6cfc5f5cf4f931bc2f4d093609037a8625b782055aa2d422f1cf4e214d34a9b28fa0c5fff4df0b02310080f3571ec23839002ae496440cd05cbf5d5e0a521f8075912bb16804a6e40f3f7f27e1c80d4adf3f7d7d627f2ba4b3dd0302047c435bb50067306502310099186108b48af982fc0fe43553ad4236dda26e9543f16ae200dfdfed2a0b0a44e355b58fefab724ddf25ac06b1c409300230649c96e0eabc7b57b1e8c4209b5d6e2924a60dd624af8634c22851ad99fca2594af03a2f853a1404d2a3516dc4c07d080302047c435bb500683066023100a32157b758f731a4d502f23d3b5dee65db8d08ccdd085583add9d29c1214bc8dbd21e6bc0602ef93ffb09ce3985d6e45023100947f78a663ceecb166e003144b38e2de1a44bb56848ee495cee5e8d88d5d8847a45138723a20a9b5b817b978f47be5160302047c435bb500673065023100b10db0e2cdf53f8efd13c986094520621b741842297ea16fa9b26f1bb32d9c2164eabf06dba336381b3021ca471403ee0230388b68078a4d99738468b207cda81fab2b2cb07fd5bc76ccd9db887dfff500b1c84764aef5ddb17afdb85171e4694e320302047c435bb50066306402303bea0fbfaa80cb41694ec9976b9b43b60af8b37c0632c3da62c289455ee9a4ea025f4c916d3e221fb8a4c752a27a911e02306585ffdd1cc34c524f743bc327bf4896af50e414f54ed4bce6b82254d377c6d85b69e0880f3840620ce306a7d7d331850302047c435bb500683066023100e95d2113e35ae18aaa41e9a73f11038611f70f4e111ff2e8d5316db29b079664ab737886303bd81d1137dd4941e5ae430231009c8afe10243fa80f4e3754af714943f5b41ec272e4c28d291c2f765149ce59acbd91a967d5179a78bb19df64f7cd30000302047c435bb500673065023100b3328e60b63d01ce7d00ba8656714bfeac3c7de7bdb79116cfd8f6c5e06ec5013e3a799254770d061b0ca56e6132056702300acbf95d77abfb5d1156d49c3b9a3637b6fcef1c44711cc827ab4433cf734429148ef2d84996882627115b45f6c897090302047c435bb500683066023100e6c6f294bf202443749cc40f7dfb2459c23fb4a72befce5175974734c842e7456daa7cac7fe2c2ae0290f3b39f88d79d023100bdde9eb0ae3c41a8070f476f8b0110ff9bcb1691461d05c349946d7b1c158736ff5266f0b415a25c5647ff78f6b841630302047c435bb500663064023014b389c0a729c0314cfed61dbef50960c24474077b4f475b61b07cb5cef6d9a5254745bee4bca8e79318834baef9516402306a497916561aca24f40c37acacf5b7a7e8a4cb9094f41d641c4dd506aa791ef9bdce3218b68d778236148f3e6caa34070302047c435bb5006830660231009dcf2add563b79243190562bcb247d2fdfd43a7d4ecd48d8f55fd442ba332411c13cdf485c7e43f50b204cc975c2109a023100f9f7bebfdf3d159b8ba3f1d743cc860730fb8c28a1f2b56371b9ff05f9c7a511723bfa61e54c5ec1c2d1e32a6387bcc80302047c435bb500683066023100db59c2e1ca87fa938f851f6e3b48893079f600e506485ec1e29e4ea2396d3432027a281333f45cddbc3638b66b5485fd023100f1c2bbe49149b32691b5f97fface4dfbae7cc68779d910f50a4ab72c692547a2d383f15eb943b9e0f427d67a50b683140302047c435bb500663064023072a14a7c3d5427dfbe9230b3d21dfc36d5318e3ec79a939dd196e282816bdeb677a40f71654e32330ca72288e47c13d002307e4afdd771e187ab10d8c374416bfcb18a80562b9bf33ebaf7c132f3bc5988969dca336376bd62550409e456da18a0930302047c435bb50067306502304771073941953beb2d16493724620e07652cf4cfee386a061f659be92e1427f54b008c4558bb8cf27d365e13fc84c34b023100bb173f7958490f73c6025770e6e0026acfa7ffa1ea2173168704725865f110e7835a6671f1f7928ea37568ee187792760302047c435bb50066306402301e1d8160569d393e356510c953a5f315df86c663669cae5b1dd8277c91e3654d6c079cfbe8458e24bf70e0d814eff9bb023025c1c2abe21efd97239b2e35d0f8ebd307a4b054415f47c50c8504e3495924dcf84f50abee2638b811914648379469650302047c435bb5006730650230706266e516e54aa1ba634903b17e42a3d6972cb9645518cdc57465c2a5141098d7dbaa719b76355b83d0c048445d05a7023100c0bb3fb68507e6ecb97492ade918dddbfdcb14ec512fbfe190eb3b6f675d576e5a1715201c6956dda1c91635e136db280302047c435bb5006730650230167269677e3cc94f23e5beab34808ead9b4506df022edc16451ada869c44e9dc06ec69797d95d5ca8839cd3159d32a73023100e3db5c47f906194ff6e8294571bc2b5fc9fc54f8ec271f0b1003e8fe0041650ee89bf4ee907320134721b63c8d6a56d20302047c435bb500673065023100b9ba15191fffe29ffa5a7fe6d3af55f2f7b8534f0bec21e5b12253974245d3723fe7e98a1c09891c67e3c586fde5af600230459a6e6555cc8864cd0b1523e112a8eece9d25ebc48af72df3b7005ce1899744075985b1bb0b4873b2d2352cee8200360302047c435bb50067306502300190a7ce5e0af419225a0e290eb23d3a42151b105b3f7303247496735b18e2da9984d15b45b6f20e83c7beb08296c5930231009d7b42267fcaf44e450c90cd5a55fc0e5eabca12d64061b49dd7a7d6fcefd2c8199c2f60c86cfe04e5b8602c1a7d517d0302047c435bb50066306402303dead0158465aac42301729b432d6567037c22c939c24f6ce8c3751d6883036aefcb9486e5682393b086d4914d9fa92302302a2429cd43f1f68fd38193cab10e2bce1e62ac1433bfb9340f78a05559d4588080767272e63a554a1184121d5a58accf0302047c435bb5006730650230552588f04e52ce7fb0fd1e19623ccebcfffecf37d3035aea70d1432e00178085a7853fa6023e1cb700f8844427cbbb3d023100aaededee7ad3d6a4ede847faceebef9125ef841145c4c23f45d73d7e2c83002d834f0f219c462701e40911ae27fa90f60302047c435bb50066306402301e35a42e2b661ab8298f1635e7118fe65e18ead0ca2671accc197d4b8479097c1558ab3b0052d873f58a2c3a4b5f3128023050e765b7538ed0a3ce7ff72b93f3cdac9f2bdedcaf72b85a4632ed47ed57404dca752e607c3385ff4c03c6604f52e28c0302047c435bb50066306402302f0cc461155792e36e9beeaa6f30b5a13c765153bd8662ef0a24c50b6ac7594dd89038bce0d57aeda21759974c02f3a0023069e35690f141b42df98b4c76fe6aa39a0b64017acb195667e110da7c1505056630641b5d1e02d346a8f22fd3c9971d9e0302047c435bb500663064023071b4ba46f044ac6ed45e911cec75675fcdaf6acdeb54b0a23221afc10e7757d7141960e1410e17b65fc43b5dbe523b1402303847551274031e0a915b8f8669b0e5eb5ed139e5f03cc9878a4bbed80f8c89604f50094e714b3f9f93a01d712008e2390302047c435bb50067306502305a5d5e7d87507c8fde3784d46e535539519447979e44caa93abe7f9f0152c934a8c049cc03d22743e304b72752e2a5d402310095ad014a685eed8c15c1fb3901c4f10f99bd2d3c08a4d34fc559775c504d5be60dba83b73928b3fab2b0a8c69b9869b70302047c435bb500663064023075a79eee3c4b667cb46e76d6b05e05d0ec9a02167fce065e9c995eb1242bb31b7e8ab0b240f7af69cdd13ca07cacd5c402304407e78472eec533493b0b6405376138ddd8f8e755598bc9153766ccedb59f208aeeb2be2cf6d1520cc082673d875d140302047c435bb500683066023100f5f6b0e3e810cb1e65267b2908c354cf3134866ed6ed8cee21f25c9bf6418b3933e5cf8561d882189ccba2e11d3c68f8023100cfd7aaecd60c6c745d99ece2dd6263e6f39d85b7f7bcecf08c95909a2b8d4b19db048c7a8d50e764f188f0385545ac4c0302047c435bb500683066023100ddc11098025e2c4fd2457841c04a1437c91663d944286d5e5b33472ee91a34dd96d892b7dbedd9141b291df37d191070023100d4ba44c000ad4b0f5051415e910e84b8da0d4fc9759a6f4d41136c0065016a9063547e0f983184340acce5a23da764380302047c435bb500683066023100c24f972e33444d5c4523ce4cd93863b1799988186ecc812dd6f3ca2facff63d0ef50b2908e5039d5157a69d0ed8a8056023100d166fcd94bbf2e8df6bf0665a4fa2075b63bfea39bcb70a32fa198c40086c28429715f2499b58dbf2fd4df2bbfa49e410302047c435bb500673065023100b2519c1535fef7386272d46b4c5c72898713b3e9de8525e03ad72f57abc9a92564445dc3e82ad3c70f94e24e383d508c02307a2fe0d715877a2791d7e9075d8a63f6d0db174d181d514090bd0f4e7c7095dc7f37f41c161007d985bc4b8ca6221beb0302047c435bb50066306402300d55769ce86521e67ac19d5996558a50886b72e15456557da86727464827d4cdb6bf5f4c9dc5069c6b5de7b07608e50202306e54acb4c6513f99e9a31596e11b429c84966eeced5e3a206d1fb84bdb2e68fff8fb748594d6d32711d277aa0326f66f0302047c435bb500673065023100f936c6d2e6e2288f2625076548ed1c3f1b31e669348bd9921eb9ce40c086739b061f439e262499765e662e9f3ad41b7a02301cecef3edbe297eac25bbb480cc3a4afc4915acf3a24eeba8f74e3cf865f50042122360c817e1c390b0093e788eea75f0302047c435bb5006730650230648d0d1b45134c7dcf62f9812f4e4dd617dfb3d68afb5c8215da519ad020b573f6e8a6b128796489058ab41f393aeedb0231009da55b15081b64c75aee394adf6dd5bc0cdaf56f62273f68c80829c4bd2edc8e25062cbc017347ec70fc6bc994fbbce40302047c435bb500673065023100fc357c76259ceee6b4cd60029bb85f22a7682eb6d3cdf46c426d18facfd8923f28997b557fe1ee32b53532b9fcddb793023016dd8cdee1e0983769000102bc98c8d0e2fc091ca025b830e55d2c20ac94c0e26fc5a1ceb8441445b9bb0ffd718b98640302047c435bb500673065023100ca0ace2fd344a185748868cae59722c0308b3a15961a16419978d9cd0ccf3fb72165222b8cd4785b40f44ebb91cf1b7002307d17067c455d1cfc41179e7d41b6fc17475bc92f68623535243d599e28b4343091b16bb2811621771eaea06b9a3ae4cd0302047c435bb5006630640230139e812f601c6944ce50b77f10c92e3a773fd36f8e42f79bc454c8c89ed4a4d91299e8bfed131a9f10a7eecbe8632aad02304c291d1b9911c0aeb87df510a6a19495021a73ac3fb9c5ca17dc795a6d6f1889ed0bb8cc150bd3668156c9bb39285b840302047c435bb5006730650231009737e3a9732ab1c960ed73c69946cd25e35b01a4b5ce0058bc986fa4c98930971a8fdead06d066d51b0def197777501d0230575eaed8259369f7bff99d25523f88ad7c9ab5aa4a84a6f7e436cffb004fc760c362b88152c14f3ebafce6a522dca0eb0302047c435bb500663064023038b12ce3c5b72f86a049b38ce0570337110e923bd535044d680c65baa330e2e95489944667c67d4fb00c8e0b2bbc706c023025e358aa9cdfc04f0a4eda5f0a89c6918d8f04c42a4196b2bdb36def8d004fd4cf86b48e9ec6f1f3a7515fc1029329150302047c435bb500673065023013f121d367cb22894bc9c589d9b55dcd1349ebeb6ae4718c5d586b5ed42479e5ceb42c11770f66f6704261856ebf61e5023100b4c5b2f30d29efbe145b618ad73dc0aea18322ce12fc8c06733538b805f8cba95a30758080595925219d44c8a859af220302047c435bb500683066023100cfe29d2fd7902639d83e2d4d6d663c7fb7f6ac7908a5bb6bf97d8bcf792a52cc80ade73fad4ca0ce03ee91488e794f37023100be676a489f896f754dfa21f2a4b64966f88a3e7dc578c8a71bc3526bd3c027c1481eb1097dfd71a3efb2a07a76d822870302047c435bb5006630640230102b42a0c4cc1d231db2f1f9f255f4077988942128d264d5ffc6a621f693b4aeb001315fea2fe01965e00b4cbb5a3c86023031c4a40b6f3121f6d02f3bf675ea15035fa5d43cede0029cb18dc5b2e03a39f2bf27eeda2b2e742820ea181965ed66c10302047c435bb50067306502300ef61cf94cc5b1700ac6165f9b3931c3c1fa130a8a004d51657c3c0ce15900601439b6a3237c8e04cb814f26079bb2fc023100fba6377b5f2228eaf972744dcf3a2b44b42629a3f5578f829f1a99352a96d8be9148d72fc5929cc224228a0fc2ee79200302047c435bb50068306602310098d8e5983cb2f9cffcb1550646429a9b785b2f513d451153c5239eec43bf861f86bc08d96beb43620763b2720b217db7023100f6eeda267fd8cbf72d2e0b3a117736b74d5e1e4bf0ac6d55d60666678800f072eaf54330b8ad19a3e1a1128f3fa2d4240302047c435bb500673065023100ba14f6be4a5cdc432f992fede6fae98867ba6cfd0e6dab6498ee939c625fb7985fdcf71f184aac3d195f8370a50b9fc602302d1cec3a4b0b93737dfdcc87d322e4b40467905bae09af7582a1e2e0806cc043d948c83b2f0d7199c6d09524f3982cd20302047c435bb5006630640230210b96cc4b18851b346413a657cda3b09be6ca7a29df4de59f778265f3870e57a01795202ea844cbf8055369c65fa4f502302540fb32525c07c7a6ab1710d9a21885dc3c5ec37a0a385e66a724978317cf67745afc7efa74bda32a8f9e261a743eca0302047c435bb500683066023100aa1e302d8cdbe4bc53b6a9613d28a98ac47b668ac2d4b4510ed2448afdf7753cba3188e8080bdfa37797bf14be1dc45f0231009618574dd3965a276fd443ef89c30daef4b16dc0f2b0232b880219921d6afde6e08f20cd07c47b2afd92abce11d573110302047c435bb500673065023073da98c58e48b1ff82b7cfa4e6ac73e15413e3a8ee447a9e43bcddb2b7b7c4c667c4ffd3a1c650b744e572d3d29f6f77023100af68b79965acf1a40ce612a20633c8fe5cdc18202356e676a7ab81e1f760a61bfaaa1a7fdd5325de0eb1267dd240d24d0302047c435bb5006730650230687f3fa39bcf817949d730c9becb544d1dcfdd8992757978f194a658759c69621fd8527b829fdcd9f56c742c590113ac023100dbb1e254a817bb0d21d260b73160057737aa90b2393a8dcf10a3fa7c7fe144f95f717dcb04f7379c946e93d44adf89100302047c435bb500673065023100ad516bbb0541ba9e829b415859b1a5fbc56bf3a5c738d3dd40eebad7430a76231ff8b8d293404c56d9aafa32dd4ae64e02304b54b7fba3a3127045580700ecdaaa32b605859abb4e7bc6af038ef6d81e41c52225cae8cf1f29355e36caaa7c81b7260302047c435bb50067306502310090d09d5ba59b28e1d8f0035b83473b7f2df6bb21ad9c5f8574c7edfb97922900bdca6b1769e3e2d787dd0323030fcd78023072c03419bc0eb21c483b23222ed1a0527fcec595a1e8496952956464ccfdde3958755755bd4225304fde32ea11e496a20302047c435bb5006730650231009b27f1f6c0bb7b50113ee7a1c6fc0715ffeac5695a947dbe7b5659b81b9e333cbe78ed2ead980d61fd5f5d5d7f77487102300b0118da9fa4c15bc42df8271cc2a855f225489d8be2e5a5b43970ad14e3347749d85b4c96f54fb5e73f8e4255f550500302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230291939b6313c9a962da2a715284bda659affa8e7a332a9266472c1dfd970b1e8a6926a37eddabb6b90980b89b764b6d7023100ef4a2a9fdcdfc592cc124d04335100ac15f3c44d1fc7b446b7b95d3c08b0cd69d15491be21c20f3a169202d1c45432630302047c435bb500673065023100ae24e80e0c11f3a0d038cd07bb98af5f5d14c69301d55fdb2631a303f94890d15ba0eb3e9ca5a71288d6c270fd48447f02304be97ff3f845cf6d1d0ca0ceccaf7bed171eb10a5f30a0001eab0adaf58bbbf7f4c73a12b9c8a1b9ae22ee3697176a1c0302047c435bb50067306502307feee7eea8d2e9bd9d222278d2a311852d1618c7cf580cb1f46ab33e8761f876eed6d543da3e4f8c6974d24ad2439628023100976a5e4ac2bbab369f9c975ae19fdb9b9b917738f21c3b3b1ba1af02b7b62a4eeecbbc5342c53faaf2332af5309bc10c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a252605e610595e765bb5b6693fc5d7360d4f56c4a0eb2ae411ae879e2122bec16df1b4cf29176139c279507960958602304997fe0d664d666af8b85bf366eb2200f695e622bfe2b53a895aa0bbe631e59a07697c3d8dfc7daed5b5877c18ef9e8f0302047c435bb500683066023100cb0d8d05e706e9fef146c748a6a87ce876a0e5d2e7b7b5a61481721f86cd34df3afa856f0604e1c3db22e4dc4c23bf2b02310096b9c0ae0c8c180a3f4af4227448b9be731eee0e24ad77c52bf3a772eaf5978dc4efba0787bb61f5b05d15223bb3f6170302047c435bb500683066023100f421959a4171398b755437e21dc29f654fee1d8df828cec1ea7d5933bc759fb13482e6813f65b8a41127b80a2d2ae81a023100d2649e6e04ae14aa11b9c6b50a1bd7e963896b222d6c81896ed5505db5a0d3d430f1d511ca737869d4e92e72bece56500302047c435bb500673065023042c7eb965314fb25264fadbf3bfbdbe0468e3f2229ad5bc8cbdf40acd07880941ae91711854c72935af4537a6bf62269023100e9521397dc4158726e64a7202c2de64f9b8c0e1c8c041dcb95dbb2f10be1536cb65536934f6c2934b5be41e409bbd3c70302047c435bb50066306402301b0668dfe71c2ecc05e3cfb4b69a7def03f950c23d3bb8585ff1c4b75d6560f4b1a1d7f871a0ee99eab363fb6fa188cf0230461f93fd2cf9fa0945ee240f88c1c1cbcf54babfe1d212d569f00781185dbfc8e51e1274b00e600e9f9819b93be500a90302047c435bb50067306502310088bfc390535140ba9e9575fc8c7b0ed8ab121e855e56f46cd2229a70a02f28fa265fef47247cb90a9b1874bdd85432a0023038b85950489dada0b0a9ee03b6cc99158345b22cf86cab1ce4d60570b38ab24428881474da3fe2f9ecfc57437780341a0302047c435bb50066306402302122b5eefcb253981d7e30a3bde7aa40bb11282960b9f5749b48d6603609f34419f8f01248b4d68af27b726926bad16a02303b67f8255493cb71d76f82a2e4e577cd4f808edf8fc0dfcae78a68b23dcb399d0a57c847d0e1e776ea521d2be08c10550302047c435bb50067306502307fe8603774f57741c26883b0c8394420cb515ccf0af14737defdd16659d864c3ccc8db980922f2e6a1bdee4aeab9c7b4023100a154aa63913c7ccd3c9abc047d31ac1c03c91477e366d9e4173dae152222d33bf26b6206ddf79107004b08c0307111ce0302047c435bb500673065023071ea225874dfa59b630b4e392ff62a70dd8b5dbce9df6ce5e5db3b8486e04760c9d517da42a226792c1bb215cacc6aa7023100e82ababa5c8b3180d5c481a6e95dd5c10e2fd01bc637983db02243e05fa7b6fb56ffb08fe22d577d0d45afc6608ccf2b0302047c435bb500673065023045991203b11f8cb5ad70dbd6cfa2c1fdaa88954ada05389731061c32097e1208588a2e82eb90845e3bd60cc107a41e6b0231008d0cd8e87d7f781951a0ad89cd061ef355fe23cb00e4b8b9d96eef8bbc0f75b0453f038687ad35705bab06ad74f715720302047c435bb500673065023100fa74e6f2ba9e6094e45967c59f60811a10e7fd074fd0d9aa2a4d9f536287cd697f77c8c9b161d461017b7b32439b8f1202302144eed5482f5da9c510d7d4c1460cded942da91bb12f8dd19665f6e7c65f0d2f07235afb029ffb050a9713a80a7c5de0302047c435bb5006730650230141caa8d01ff4fc53900dc85cde6aceeccab1a7cb2f0d454f3c482db3294be68cba462453dd5f8e02d18faa01e3b9883023100cc31ad8441e2c862397e9d60e3be75915461ada64f6ce5c5a7b5fbf643786b62cc44310bea3e2e76ebd62ceed476ff400302047c435bb5006730650230026b5739d1532618d37b2f47508b8ed5cf9e780289cdda0b9126407e77125b64d436a54bc3938501ecc0e99483210692023100afdcc3a51ef47f65e71f7274d7cb7132124e4c8a0667510bd4e194afc7857f18ab31cb8442159f40cec508a55c701dbf0302047c435bb500673065023100c1f05bc71c501dccc3a983c5513c59a70af8bddb430144ce9a92d1cf80ccf3d354fe86b646022a5ad4a507089d4ba12502304d683c41768d76aaef2d09406b9b3cee5ebe1a8e30e5f266b5032497beaef6e0f7431a435fd34dd3c5042eaf0bfa4eff0302047c435bb50066306402303d688e826a334d9aff2753a04e1213e6d99a161c3c9f874498c9eea531ad8fa4394cfdd6d2d9c9e7eeacc7b8696a6a1b023064d97a69b0680d044466e055f0c5664cc0b6f9215857aa0382d0dbd7f21844f345d1a491c64cc729c562c476256636040302047c435bb500663064023037e0138811a710d71d05ecef9711bafa37cddc27f83eb9f12df5312f1bd4d09d6c68f9de6900bacea97e385fd48b6d7d02301bdb7d20fa54b82b48f618dbc4fdef3fb0bb415aa55cf53ea739d311ab9910af94565ec4fa0d7aedce4000e39c253d6e0302047c435bb50067306502307b44f5a627ff2ebe181daf0ccba2dd5ada42fc21a8326469fefca4b7294d74e7e9126d2db0a02945590d59fc9e8f780c023100bb002bdea48e380372bc5c5fc842931245e2ab80d208da6e570bc419422f9ddf3b064f167b944df3390670c1cb7d64090302047c435bb500683066023100c67288fd27e5c8efda9db0c50ce071bed219e0b62e1732314b88078031091bf7d5f29065270cc6ea92b611c004762f5a0231009ba04038b44be0c2c4dab75e2ca5da476172a270bd692dcb75da08e55f6e5843e4e572a627023c3c8c24d22c25384f770302047c435bb500683066023100b291a3af218dfe99dec90073ebcf166805ae715631a2f69c8e9533dcc94d7d334f3c2f5bc36eb7156c925b4543f68155023100d8801768a026c39dd895cb5423b3def805a7b36de7396bfcd70dc822bb870c040d5dcfd359cf2129bd1c7c0e2cb78a1e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe64b4840d2a7eee7c5d9172f78646294dc6dfc35ad832cd7b1a50330025c8c8adf0c357733deed01ed5ee0fb7101cf0023059a310056de724eadacda2ade6eb6fc7a737abd4e827b5e7f2b6be5003be3443fcb2c16e63fa84ffe07427c94fcc4fad0302047c435bb500683066023100b7e9a1b178c5a3310ff37e64f1a5412e8248161e640b7b37d7ef7293245446dea8a3ae6d38f5a3ab852d681ecbf53bf5023100ed920897b90577d5df682f7bc2fcb5770ac41f8ca382ae3dd199f46139f40583e93c43881faec0238bda1eee0b2ea1270302047c435bb500673065023100bc29a145f17a9405b4af4b2c525dd234dbd0f8b5a0cec28102a41a888052a4971540268b512db825bcffe503785bc17a02307caf2940c9856ce2981d9854e4175e9e9a88ead89a68dca096e65ea8ea89bc9861ad3743d5c1b31bbd86363312e84a4e0302047c435bb50067306502307a41cdac7535c76a92ea578f3eda34e2fe115ddb101f928ff88ee6fda10fb41319e9381e9d9c4d10181b24163af3d54e023100bcc493c9a4e97d186dcefc4d5cd95126d325ee272753b1a30739f17115166e250b6e6b405a83de97869ee5b896abe6410302047c435bb500663064023071ecb80845dddb8ac452adef7fbdbc72c63edced2b997f67c82b9cc3d5471f0d608119d9dcb0d3e74246e87fe3c32ed90230103f8b4d808052ae73e0ff7210b2cd61776a1c2b78154317c6bb1385cc2d42400ba696b7b02eb6644e724d43eac330c30302047c435bb500683066023100b62cdbe604350efc761f40dd6f2946af19ded44c2538f24730a6fadd8f459e971d3f27ad514cf824fafddd207955f565023100d3f754db522ce30cb769377de314610bac289722d7dcf63ae484beeb2eae30d6e0f3593e28a2c39b5d916f5ca0aa13190302047c435bb5006730650230640de4bbcf71b2490b12855c939ddcb884ca34111a274c6f31fad5c0d8ef5ee62d4e4c644be97694e28272816882fa9b023100d4af5b9d7c62567a66c9922c43564cae56e2cd9866602da52235968b107a797b136820edc3d0ffa4d5d5697e167cfcfc0302047c435bb500683066023100855b107d28bf8e045d00dc9713590da86a42df100743b86ead815bedfe8c8c135bf029fb0c19eae97418c056157259b3023100b9d24a9b29b2829b2d2d610d01fcd20b92f55e89415e97eb4ea804e2ac75c27b27e4facbea3a6bf7e5b754f65c3318d20302047c435bb500673065023100ea2ceb8d17864dc6b25eb5d3847867313ca49b4975808ca3fb290b3e1e256085c561642e2da8a9aabe166b12d907943902301814463dd41d937a144acdcdbeff606d44cd288684befc4d754bcf2e3d50eb802e6ce2d06bc67d4979049740d54b5dfc0302047c435bb500683066023100a38c75f8dc4bdcae663e0bf714b4565a510d7e2259ffff8ed1555391a1748ea481ca517ae60c628d7d5ee7144aff1f4b02310096c77a5a92a117120f4e97ad152b0e002371678c0cadd1cbc5abd9b51d46a5224d49bf13175c3fe9db06edeae9c65f600302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4c5405718ee3123ff1bfcf968634a88c5f588261449f27c896e3c92a2430cc876a6522a31432f91ecef480e4cbb043b023100890a2418d1d9c53b4acafd352f20cdee26f60438712e276a5c98ba5506fe1385d496c6992fffd500b7ab21a593917fed0302047c435bb50067306502304c3705c072da76bce8d09313f3269dff47515bb97e5de612592188ca51f63ebe595d8b171ca8187af9f8b1b4b80c4d7202310092482c2c2586ceb009519cc1052e12dcd84242698a91568f2d6450def4aadf8d36c1056da7f6817959565bf86eedb8490302047c435bb500663064023003db567172a4c2fbfe0a0bd37d21ab627fc3f493349fd636225ba203c8e3754eed316ab1c367f42fd318bd39807ecdbc02302d15eea0373305f08af0040e523b5a0fd63ee8cbd983bedd068ec65551b6a8eaa88cc11ae5a64a995ac47acaa7e2e3900302047c435bb500683066023100c029713a35b1a269fd39b2def6b0d6d2b5f6c9c7e1c03ac4d3f1adc785f540aee69fd8f7f098da1de02a54d15fdae6eb023100e535a5f037d6837a4dd08f86e8bfaa3280909f1887753da03c28b93f0b76d3ddfa337d2f1f0721f38bfb50ffbd7804f90302047c435bb50066306402306580c3c458988487285c27dac7c241440abef3f922e5cabc20286857723269de3efe5505e766f83cf8f9f547825100e8023033bd7bfbe47ef5dee6640385263f5375421d04937d3f6a1c017309f58dc666a19ac91c6a73856d15b1e5f36863a9f6400302047c435bb5006630640230517c1a0b9a3af50438589e3953e6e248a55db8a1d814b2a96e2e23081598b4494d92fa78c86a872803090231565c441702304eb3eb45c1c97cdff770c53ad89ac4667b217dccda7031ee1b36ac363739c9c5b5ffd0e179017f7fc51426c92f87bd9d0302047c435bb50067306502301c6ed16fec60d60a2186f91d80f43cbdd020b86aaa0e64c481b42338cb573a39319d8385b708736b0a98fb0ae9100e2502310081ceef14ba8a7f0941769bf29177b8d4a56678241394703982d81d47c5bbc9a377887994fa05de2305016fb703b80e630302047c435bb500663064023075cbbc06937c3a0d1984dee912d73066c41c2ae7a09139cb594373af002ab2f3410249e55d4849d33c9847050dfd532902304e72bae7aa3c786894e330f1f90351dc19d17c36bcdee7749817131cba7c8a4053c496891431b05ff45e280bfbeaf2990302047c435bb500673065023100d846bdadc5d5bce5d81037b97a76f72df7b6116566fcd39084895101d84b2de6243b5e00cd97f132e704b3a3904d2876023010d284c1c6ebedaa0b9e1c4115b9bb3a03f3d4872e7932ac6eb0f8a0acee829f4f08720d24937e5e0c1c0308a66469b40302047c435bb500673065023100a43f6e1118b5cf93928d0fbb1eb29fa0d2eaa58891feda08c80c97e14fbb9cd1bb9782aa9e211724b75e4ea0e273742b02300893ac67c9e5f3944dad39fd406cd8f7d1d84312a12f078bc1d168685f0efd3e1195d9493cbfbe27dc8093c82762c6ab0302047c435bb500673065023100bb3555b01b2e1ca81a823fbea871dd695d686ff0451bff5be8cce89a5a9ba62f1c9f6cd0a2bb9df1a5ccb841b5347a0b02305796b94a707b0314130ebcf914fc1f2860a0c47145999d13096d1db2052155f9aa06a558a52ed425a065f5119b53b07b0302047c435bb50066306402301a931f0069ab249c722748b6dbc33dd0fd92fab2f641984f4b36a6636cab91119c9d38362a919bd9b91f5e13ba87abf502300779ff61bd7e384b3e6f38951cd867d35a028e32f771927e1af3d02d30d77875c1a8c2673dfe699b968926d79c98a7d00302047c435bb50066306402303c0b672ec41d1dd69d2957c5e020c2ec26ea2cbdb4e29bb7c248a4d29e948d04c46908f4615d7b3c2eb959dd2c44f7f702307b5f499b1525bf30c7a24b90f11176a687b189126924ac3f9415c920e3874148cdb9621f20aaeacd3c8ae28b91b6c48b0302047c435bb50066306402301d27772878c5efd8eb4de848ba48892c6de342b445b61e9174ad110a9cf1ada97f1487fad6422336d959750f1caafed802305e3853a1c4b68f1d85275edd58fae04538876f0b0326d1938dc8c597e8b15e109e6437e0811ce70baecc60327c74f3180302047c435bb500673065023100b3a5428a5199fad823d80b6e7cd18edb8d372143b6b2eff5276e366474c6213f25878c4751948aebc352e93d9b59e90902305bb530e1d92ce156ffc07f558b6438d654cb3a96c6fc958b2793922a1c8bbb4cdc60fd6160ea55c61e5892f0c693a03c0302047c435bb500673065023100a876cd3e220b4b6982f60c0b08bc493992bd0652a7b1cc43043103286d90bee3369b19e100a2e9bd585d42216925036702302089952d0c313a761026f634e5bb4bdcdfce9052338d1aa2d7fe648db8f4cce6f41882aec135fb9a70522736572891930302047c435bb5006730650230115c86d0238ccf7665a085aa7e36dbc81461a6f1967439a82f5400c79696d0973e1a6bd20399f80c91e87415b0e79d57023100fe77d8ecc796e700013925f55b91f74aa27ff9965de40f0bf5fd5ce302b59429a6b702a9a2bb3f7954f5d870768461240302047c435bb50067306502303ce3c19692f3e903cc6e110a41b5c6859d21ca18c55c4d8d44a7e601f82e54777d811fe2ddab2010cb8e4e508a0ac9f2023100ce1f6bc6f6170d0701dd6e0ff5567cb1f4e8307438244dc7afbec3047810b4e6d7bbb278a1cd6cd50efefc1094d35dc40302047c435bb5006830660231008da1d823eb6b6f394b739f04c45ac8ebbcd225ff447f93bb22eb72a190946c96a2578ca2c3670b572effe1092afbaf9a023100e283a2ecba264d5281f717733aca3297dc97807270787f9dde7a1caf2f5840a23e4275443c09f154852945b03a426a5c0302047c435bb50066306402301707bb0f1790d59c7e3d78982c967d1ed8c0fd16bfe33e95f4726fd4077568dc3265acc6117e985b4d884241e9e07f8902303cc6f7210f48ffdf80c6ce2096ecbc1bbb8637e85258716f712c306bc60252e4422250aa707b6b7ded88b5a30ba317300302047c435bb5006730650231008141af0295f86c6d384c36ce8b9544fdb7fa2100205b8425f065477bf88388248836e7afc92d18ba3a44fa153edf4352023074a572d526c7e9bad80eef76fbe5ad51945b2138d9edbbb09bc049db9c1c2a3fcc24adbdefe82acb3a753d2cb9cdf6d20302047c435bb500673065023100df31afa6ea8041976089efa7722a0aa9efbcec6e30332465d8a1646be5ea328d78ff7eeb759f019ffa251210c24ede4a02302f0b30bd19d64b669406794f41416c864951e6fce4b82242263ef7d20c929539efaf4cebe6ad301d0dd6dc2e22071be00302047c435bb5006730650230541171b13d7203837d3d0505e47be1fc7069a14a1290c1c0f2d2d1438fdbd069dfc83f5c6a66df424a2ec50264edc920023100e9ef3ca9c0d59e05941cd00c42e8ea4f45b0bae68362112c8d9a4f283dee1217caa99eecd6b1d588265d964ec2688c6c0302047c435bb500673065023072df64e2d7e3626433bf1839f6213554e40f539bd7acd4333e14a667af136d44e3e314df811439da1785367c85e3aadc023100d34e48f068a197960f94ff6d408a1f3987d12c7731610f8cc06afccc8603e044074df71c0d0e99013ff1986c150d0d350302047c435bb500673065023058056f292a9deac6f8f1bcb22ea200214cd3e8867be2acfcb11a5d1c70e4584b2536cd9e3611c815545ef595c8889c6a023100fe9c232ee545a89ae52486589acadfa7d057a9c4d02b36dbf37921732074a2603a7fdcba6f7a1b1df9ef32e514519a570302047c435bb500663064023008d662bbbead1194600065d1f4c12786f69885a3f5ef9676d752b09d0634e6d6cf8a1b01bc5e0f920ac0083d0bf7576202302b18a9b4048ef82d29e24b398a6f15416a1af3e009a72e7aa9d318056e8774f0409b6147f9a6dbfadfb2683e07253a860302047c435bb500683066023100f2deb98b66e6b3f2f5ab74c1a2c19cf28d3be1efdbd327e0b00ce3d3cef1f6766ffaa4cfcbf58d835834119c7fa117af023100fcc12c9fee5d4a9cdfba8ed84128e59838281ce8db1d18c2683335c1755bfec81463d3221aec5b4f18067d5fec9623060302047c435bb50067306502303eed11b3991fbba8c84d603497917db6ddfba4ff1736d69f2ef25c69935ca69bcca9f12f3f1e3ecb1e62ed16fb9a96bd023100e552ab1c3507f8c535742e8d9bdc3573d9e1c51dbff0885b2100d1a11b024399caa3b533ec6bc54302d0558ad88513f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f0e37b023dce8ddc1ebcc7e0c48948f2d1023c5cac82538cbcb2cd1538858e24494a32a445c3b9d3edcba1be28367900023100e24c4cef3c5dcd7612b977c680127a83644cf9ca7bcc8182d6cf473f562f5566e048201844ef0bece6b591f2b24f58d50302047c435bb500673065023100c835860bc030cb64e6c2fb4b6411f026b041e97d6f450b138f8aab54240d0c86bf9ded8b7e2c11d4a63a13234ccc393802304bfcd21f889e06a787b87edefa544ac58170cd1f3d8011dd451204730b7cd29cae77af0e41a1a5657bcffb5f7d4150ca0302047c435bb50066306402305f9028b5c4d4ac40da795b8a3dac8479b3db51f328dc5d1eb9f8642f163a040a2203bc9d9a6c93037ccb63c88cc525160230590f63f478e35f2f0769dc6ef13384af3eb05c94edd02bb94c4e18d4ef913e257b5a4a8f87d705da2d21497edbf01c210302047c435bb500663064023028663eae4719468be0c6c1f3b0f7e532f5aad64eb1c8b4fa1c6eddd53d2ce902dca32483b8ea7e852adfb34c615eb0da02302768bca2c6dce288d70d6d501dfa7ae66cf40b17b2f1f253c3a953407c8669de11ef6eba9a7ad25e0b992d7df03139710302047c435bb50067306502304d31c399ebae748cf3a8c50a21a8e2b8b5d747bef0a80f5303be870ee5fdfb92677622e1f90634d9492645b0a9852b31023100d55d795f4bd16966a0efd1034e52a4d14bbd92250348c03b7022960312e5ea05094615ff9edb6f66bb9128b63c5111850302047c435bb500683066023100af7a25adb8fc905b3a7830b18955f560235c63789d6f617ed15c6eaeedcb7baac51c58c7dc5a846cb20c097b103d8953023100ade55bc64fb767de9f8aef651cf52f4186d55fbf2c5a435b095470c7d0db9008795459fdaa73b087923596793ec6a5420302047c435bb500663064023038170f643fcfef6472983aa5a35a034ccceee005f3b9e7774607352af3dff01aac69b498391564d8825536c78c401d4e023024fce389b51c33ac90be6d1944de5c6867d38d9f5f8cf4316eefdc88e31d1d21792b2fa92170a630ab7127307dc537050302047c435bb500683066023100c2f38fb77ecd89aad73f88db0d21bc5b2f7654f8017312338372a27f8d5e85cd01733dba9545c882d6947c88999e5c1a023100e25cf3c8e93c442c6eb92b77cc1b06a66b2b612b883e1a8f2dfcc88093bb842c711aa8ca03b5a065d2f9da9a2fecf5c70302047c435bb500673065023100dd5d5a2d7f289d4e58934ba76c2555c78e3138c3fc8d346c67d9ac2e38ae89375e0425f7272569b961029c2a0c3d52b3023028a654ed57ba2dc4ab9715c33d5b702e394a3b0fbe91eeb6327a2620f3b49b8b61c0d9f7a568b72f2ddb4b120543b8a40302047c435bb500673065023044d2d5704aed6c7dbfc5249700883865909779395135e45b42f059e80e5041d73f726ab893a0664685b31b2af25550b20231009416b73a79b5d17b764683b0975de30aa63a4ef6c0aa881752fec52a99613fed0356cd6a9149e2e81e9c5af37bb09f420302047c435bb50066306402304a1e7789f59f87f73ce59cb15a6d06c552de33c044694ce2d4db9a03aea875e6f89320fbfa2a9022275be1fbee21629c02300dc5c38683146cacfe7eaf4c14c5078a277bac825480430ca7e2d2b9fab7159425ffcf41d848611da54dc9ea46dfbecb0302047c435bb500673065023100a1df6390b46f176e822db2ea3e65bfc834e3302c4add61aaf0c384ce1244fd2d6936d15c71f8bfc119a1a164d067567e0230370b719f2e9f64cbedc39866f25e80d860fad8c935074107c9d5efbbde9ea339ffd60f42ec57ff07eae560c767a730530302047c435bb5006730650230561018a0ced9f4877e996a1c73e638f47d9f7cf77302cad4c8406dfe10d213aa3fe1d15b715e6d5ff31720441f4bc20902310091c4c2dc32d34d5e151d8c1d7ffc0c5eada0d1056bd610db07a6a008c81dde61da7b038ac68c25a592e0d1812bf1d3a10302047c435bb500673065023100903cdef766802fb8d8c69c21474e76dc5560880a57ef2021ca15854f5e9ba0f8802faff98ec9b8f4c14f7055f6a918ec023034d4f213e5612c93b33bf4fefc28fa1a9765f90441e9a63eae9f7cd41e574af1fa0bba530d827c032b26dd5710e0b0c00302047c435bb500673065023069eb1c9f5da0cdb14f510977282a0ee96495ec479e9de36f3852d2dd799678383c3831937f56bfecbe42ee045ab148e4023100bd10a46dd278e8866b1bf2e87b2d5e1313c1debdfa344bc197270612b296e20ce0fa292a5250be727e1134ea509bf5710302047c435bb50066306402302f8ed5fd61cabd0a03ac91bd713ec81c5fa550d1be997ecc414ec33a05584290f842ffdba32b30f6c9c5c7d19ee8622d023051ae205a13dfbfd54b1bdb210baf589fa9e8f1b4f383fa7420a7f1fd4782eedb2999001480ff7ef9e1b7225618072ece0302047c435bb500673065023100ad4a7fd3a79cf0a8a5c6101d40233b5be59952d83cd75237f1b7d11faee99fb5c55fbc5cae801919096dee717059d4e9023031a2f852dee84016338fa237de3020d33991ca3c34253d470dedc0a594bb581c24f9606588a8632b5e075a53e0e1c3e00302047c435bb500683066023100d4ddfc86a805d11478c3bb5d15a2f4cba0bec71217e51e9a529d454a5866f865ec0ee07f3397b3fb79825366bfa1acb8023100dc9bc5c8fb26ff9369215c9cf10631722b5d93c750b301683a9b87622553a545b823a79401b3e1bafc1df1d2f84d1e3d0302047c435bb500673065023100cf7f48a2736e24ea5c519cb168ddabd243818ab7e01ba556d1e8cae587dfc3538a7fd9e3d98736e7b5cd57a8d3a55e4302301b6b32d34f4bdac036fee306b5efeea598fbe31a3c95ab418e56fe56a145e7d7b4ea92c8cb30f8bba49a5ec5632d52590302047c435bb500673065023100a63e24fbe9341069c576c11fa213bafd041e473d9d9619f17c23abe16de7992e948be9c47b60238582bd5653adc2e90502304570a33cfc324af010402531ea57830352442455719d2738961d67cfc8ca52f5dc371aa40dbce97dd12a01912396262d0302047c435bb500683066023100f9392bb91ef13852f505ab54f36b67c6735b1abec54ddf195cc84e48f9f7dc26b80aa75cfc82cdd0beec1dc70f17ded1023100d61a2d2a36852b66e454065d6ae2c9c50ae73ed6d86bae95d04a7f617ab54b61f3149b1309a10df04dd90df92e7073380302047c435bb5006730650231009f756f6c2d7b63726c6f0151b64bac462d1c7d6adccfb80aa44c5e04e4612a25ca992653a98414d42518a9afea2db8d6023039882eb50a8420b4ee2f982d6f648faeeef8e7654895200177f77e1c6a9645e38b8edcad4b7a47f7383ce0b5459bfacb0302047c435bb500663064023061649698d4209b767c018f795bad03a6525ff93f53efbc7a3985fc42a00d3b2530bfdf3328e4b537b4fb7b410e2e3900023037aedfcb0fe6649860ffaf1b63bf2ee047837b5e030a8093896c2dd0aeda1ee32664f4ee05e2c1ee655b9a7afc66aa4b0302047c435bb50067306502303149ef3378f99dfa1e02272bef1fe01d1fcb58839ac4f06af8acd91e5ad0d2c1bf14fb1abad677ad9d4bdc37e7d22205023100f7cc7b189da1ce558d48f5e731489066c2afe6ae886c63f6362bdf916b07d6d499e360aa9cb3cc9444a39faab2b603b80302047c435bb50068306602310086e34d210d7d9e3c01710760346242007b508cc83059f285292376b48cdbd541ce4415ef79d2484328cbf30b64f6a9f40231008c5c47860b54c064686ee0de3331c005c76e58ce38ef5f787ac00dc60429989e9a47af1c931cf21917722ea4411ef7900302047c435bb5006730650230204a30942ea8f609d1a2e695d7b0e5741d9feb207629d0cc2c41776df148350ebe3f09dc8020c6159b77132150fdd2d202310089252083a67833327cfb0a7960ce94ec550d9b51402f6f2ee9971a3a2f1a50808ce4f445ae5b925c959a8e51b089bdb60302047c435bb500673065023065f31802141b3e6be73918e431268b0d0bcc1798c21bfd5f7754f68f7b2df8cd53ed1210afa66925abf6708037da7650023100c06dac36258c7464c221847ada74ac812087c5c40c49ad1a461293e03764339cb675e12daf21752ff33ca8335012c9bf0302047c435bb500673065023100ff1f529a53d333eadc3d389b6d37012e4a0ba582cd651adda906b8af4eb6cc8b3294cc5b2e786a26400b110c30b845bb02304a67c5106d3cfb089afbd887a29232ac8ce08b7d508b4d254b82f719b7df4bbb99af43a22532c0c17cbf1806561ecdb80302047c435bb50067306502303d9367d7ddcc471c078c08657570e5e29847a18d65660b574770fffe3baab40d7dee427706e7e245f1146038e9309ea0023100fede9c91b306a8b12c8eef9f41c4ce15905072a8ce7760e67c261e8bc632ec940b36bf644e334c97404ba5fc78de393b0302047c435bb500673065023040b7dcb73d391cf175f689210c58aae521a47dbc86518228a86a3caaffa39035a312a1dd2782400d8a2ea2ac68cc8d7f02310081006a46f69f4814bfc8dd85e862fdb4eb0a9139095cce37f01c9f1190802743ae715c2f044a6a9bbfd16c1d8cb98c3d0302047c435bb500673065023052d323ff3a4827242a7f3061c64ddd84821bdfa5822cd2499caf640b715011d9713c2706ab562dabe3babd80a11d8b4d023100e2dc26170183fb9136318588e9a4bea7a368cdcf417eda95c5be1654d75d1839051f27a85c1e0c567c558254a83ad6a60302047c435bb500683066023100c0485d48aae5a5882479456704c990ed373ee59aaa0f3bedfab40379438ab1eb3a186a89b54559257047badaaeb8ddb60231008c0af13932d5d2c5b21c727079313010f02ff85d4857f40d970854d66199c04e01f20cee261f166c99962de4c74d36ff0302047c435bb50066306402301c30e358ed2e04229ea7ad5de20655b06c5c5eafc8532c4b98e0417a419fb8705701ff072a5d143b1ab055540feaf31b023026c3d34affc61513925db42e8b4d548e5c4b003765c9894c1dd46dc355cc01a03c4e8bb5ad6762b8d668cabc74ec0bce0302047c435bb50067306502303629e117f467e89ca962ce09faf2ea61a75ea21175b6f026353fa9bc29afb135aa58e7c15c20f9ebdd729db66a39108702310096888ef30f3521cd60faec1c7df5262679586c37e0474c13025d28a01e50aaf3e5a17d20c957eb7101e1fefc0f5a4ce80302047c435bb5006730650230504f686a7018e071b2edaf92dbbfe5a008c795c6498e86ca52b765ac5111c728aed733fb81105af8364dae5a56a10297023100aaef32ef0a82b88298238c1a6d2268166f35c52419bda28127c7c7e06f078141baaa28b028fbc57d8088a2bafa0f8a820302047c435bb500673065023100f872b8226b9a660ad7fec64fee48d95734f8283e99f27155a273758065212baa2eabc447988c1a43b08fa2cf7edf45b402304d8539e6fa46c519aaac43465d00a364c597694eb8df4c6e9ed0369d4d5013853d2a452af0c11e7e9d4e7f25fa6ed59a0302047c435bb50067306502300a78028b07731e7bce127a107817f2a4b93bc2c707ed18b20c45071fd6a1e7fbbba4adcb451f2918603412cf175eeb4a0231008b15be80af73c150e1ecb4fb607ef16fce1bec3907e4fbfd66f38f108ce21f2c9f48ec797809db7d4f2cf15e0e6b9b2d0302047c435bb500673065023100eee88e8fd367945445f8aaffb832fa65283415369f6c3f93591498bbce865584c380a43b73a982f93dbaaa4af85e3c5d023043566c98aa4a921e96614c1c807753f3290e8e8f184d933d9e4c8597c5458512226ae756b4a28a0ea295b961462186910302047c435bb500683066023100c3af09f670cb4ac9261f8c6ed5e03ee50572020d2ccd50cd1cfc68d9990c999ca7ba26ed7e6a09c6e461ea3cfef43bbe023100f517d7d5265161cf0d80f42dfdb60523d59d3744969c6a6ecb69e3b303bd6672d563b3955fd18e56987253e38792990e0302047c435bb500673065023100f5ffb91fa4ad0f6e7be75e2abe16ad34003a02ba5f910827e577c86a6d27752125a400177e0ce55b3c85e2e023142cfe023078488a2c77e73a3eda9fd52c2415563791fcef4b5302b8a8eaad9e4a0bc5e25a8542ea94d5e5822109348809cf44bd9e0302047c435bb5006630640230176b396bfab09189cb87e6e03b06bf08e00edfcc0358042f4eb11255a42dd2c2e5e90bd0f68c725449645663e28bc5dd023046a8675164cd07d4feb0574535ad82d956e306f10a780dd6ab421e394e0aebd139d59c6903a0e3feb7f52068bc7865090302047c435bb50067306502306d3bd1090843c8688c0b1c0e81c3a17a484d450bb487d0fccf18b890c12fa7ecf9c70874982bd3c121f16565856954b60231009e7a62a97d11f36546c0fa73334f103c2b0afa95615708da245477915287fdfbd54252020fecf599f820816882230bde0302047c435bb500673065023022510c2ba6b2b663d60df9227606e851bf77560cfc0f7533a1136b9262193421aa9197f1ad64c92f3f3e2832db0e2483023100a2ff38b11082b7188b5c1e490e26c2e462681489d337d6336ed38b22b8dd02af80a5231da8f3b9731ce37e3f9dd55c080302047c435bb500673065023100a25de83df7efab46307eb7d422dca2a5d3b167b16def2568ebf624986a31c14e67d327bed285e69cc967f883dfd7686102303b3f5357b3c96e47ce7bd1fe9c4909c177e1d65cfff5a3bc41e408f476cda824f9a4f979a2730a97f408aa380c755a460302047c435bb50067306502304d4968025afbd04d4387091b8c026f3918b2c4309a68038c5a0618fb3b59b2ab07d592a3c1bb02e1ca675b7cba280af9023100e67fdb9ca89b92bad81c71cd1ed2e00d92e23b36c08f7348f4fc75dfab3cd27c84e2394f1fb2685d6eae31ed430111310302047c435bb500673065023073e33b2d76b5ae2cb4611fc431732666fb723666c744f7547248922103b2d3b7f87017f1606fba40ae4ca53393b70cb3023100957a3f547e06bdbcce3d6a25e9ef1e142daf219241f9b98836a8e5babd17e3efd4aec18115abad6f320c8cbfa4af6e110302047c435bb500683066023100e8e829a24ca0e8c96d30841c49d67c152b37760c9a3c17a779fb0837dccf22c047b3db76bc2892ac54335e96ac68e77d023100c405cfb7f9b3e25463985c8ba06969f16406dd78d4fb8ae970eb40be72271c88703bbbac31d1f59cd0c5407f841abe570302047c435bb50067306502305cb4d7caf71c1e6eb533c3f3a97e8cf43997f8379ac575ea08fc42bcfa7e967119dcfac5739adb59e90dc093d3cb1371023100e0cc0a24d54c174214c7361186f065bc4b2f78a3a727e00bfb0071321621004b4c8bd1cc2b0cec43c5c367e2fa69ff3a0302047c435bb50067306502304942cc24d947d76e79c80c88606624d6b0050435a611d8ca2068bdca2323dd886f0ec96ae00cdde62427229964c68b0c023100f11681c2f3dd573b39a05b8f715d1c92041275ad71c5759fcf24483f5ec91baf4a33c1dfc5c293f3ea30f1d16174238c0302047c435bb50067306502310091e46015e0bc8f23238838d2da59e3ffc4374678f0025b7186999ca305ced66dbc7badd6ba17363187cbdaa0bcc2775402302799740577753e32258ac8f21040d872e77f5310df9d34ecc02f0a7da6ae1d09c0cc1a63cf1bb3ed49dcc2d6c10127d40302047c435bb500673065023070c7b58f9370464db2ca19d9a43356986594facbf6d7ebb64629395932210a78d61a29ede53918494b8ca27ed3cc9dab023100d6a5d4c403305d5b422c47072ee125bc073b48a66e37bd9f40c06c196edd109ed331bbd19c630fba2752cb242a39858c0302047c435bb50068306602310085465af6c3df4a5780b9921c817b9188790c2481e2cb293549e62edccfc28e538e0ea0ec9327952c563d7068dd4429f4023100b2f019180653d8f189d08ed3159bd79202860a5cc4faddf68bf8f477083a239366f36739c991ae689a95add40a6125c90302047c435bb500673065023100e2ab313db77d316ee2d9db877bee6337d036e1e08688c03b88f50928420a8996fb2cbb603d7715053330c2e9b7d42f9402305e699c7fd7cddfb2190f8edd37014640c50bed34532daada1be04c45c87938d68eefb8a893b53eae1b728a718dc436c10302047c435bb500663064023034874b5b1f8bd2dfc5ba64924dcd77023c473c3fb4f6514fa529f90a208bc84a7723fb0bd320765a6944f77bf715a95c0230729f535d78d9a2706786d1933f6f48fc24d77b177a22c73b1168352bee60e457db2e0e0974ac9cd7df9f25e8eb7e1c780302047c435bb50067306502307084ae3791258d694d8873f2d41e049490e392629d31f3c02901176410dd547617d70dbe970adb785a26f008673b66b00231009f0840b90289191b48d07ddb1853356502ca75878ea2c8a5593adfebea10390bec6db03a07c81c226d4a5d350247a5e90302047c435bb5006730650231009ef2670416a418106e72d99bce22bf644f292ca420c3b936b0ff415929ff06267cd9e470317b2bae143e013ed01ebef4023058e7ff47698c63a33ab5bcc47dcd0c93e2db8c72033074fd1409833c2488b1a07062951cd6cea273c1928d36b9d3cb510302047c435bb500683066023100f8c1f49baab943ecf24548a1af0c1aa6811a578abcd52cb898429470d9b73733bc000c1952493ed996ebe055e00fd602023100e554da14db73fbd437d7bbae8798c340ed6308b3f65ea9fd9ce56a04db300b53f588560a81f8cdfa4add64e6f163c3900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300ae343dcb84613ef3cca46164984644d67d71b216c29a9e533bfb5186676d18ca028058b32b57c55c07240e2e84f95930230751be3f1e7f0cae311eabdacb35c242ccc62b7c342e80ad95b60ca7f762f755ba25de74e9945b69e863779098e3e6b3d0302047c435bb500683066023100f423cdf46016b121b245579819f24186f9ca323d470afb01a306dc716e528f4ccf4ebd41b6ca6ca7faa6fc58c14d738a0231009c8773aacf1a945a59a68e9a5a6552f70ccfd640c2972925772c482c879d8595112bbb758debc861c707285acaf64cad0302047c435bb500673065023100a28dd299bdcfec5d6df23efd8e564ec5164d9dd8866587046513c037a8a4d7dce336e4d4d1176338d179d45e7c9148ee02306841905148e706f3fb36ca086f3d25e36f7bfdcd97bf3de6f643284fd1f211fb88a7bfaf62f1a01992415e5abafa98590302047c435bb500683066023100f4aa8c55542b0d0f16ef20b9f3512a872f1a2c3755dc598fe75e3360c457c7c4f71cd31c9a80a230c2578ac65d7cbc5902310097eeaa16c5deb4b7affcb6cee372b93a8be78e39665356bc05647b3a4a2c2705ce33807fb33cd14e9e20e60379a1376e0302047c435bb500673065023100d46aea12580d23334a9f9cbc5931a0d671b2c1f6820d216413b92175b0b5d366ded2cccaa60e2bb761838bbb9f352bb4023029d40284eecca3a9389fbaed4474762c98d90c148ee24a1daa7b42010309b60e52fc697a550b478f839fce9972e077350302047c435bb50067306502306169bee03aa9550065de58aa502d52eb479d7a6a9eef182cea0f1c0e057a2fb222ead143a72ebed10cc31c9bd61d19c5023100e650839d7a08dd32aa2f06923b9e26f748b45853099fa01f9f3fb4e46e525119bbd998d5017c926f5d950db68551bae70302047c435bb500663064023018eff580c33e0dde931368338d0b40f890758697ec8dd532cd47d7a9af2f69a680596dd8d00fa9abdc9ad298c401f74f023044c4e79b971d6c9c646362cdfed5e74bb7fc33cfabc642d74147edf33612dba58fe5c5a63fc5f6f445e7de755ecbc7590302047c435bb500673065023100d5b950fa059cb6f7eb2ac2bec551f46196c861dcd0a24afa8aface547e7f566aa436acd4fe860814d17a4baf2c03bec9023019c33812162bb030e8faa49384b40e30647d564bf712b440e05d44786edbdf12fdc2ba69aa0e6d43bf57c3455c9f64300302047c435bb500673065023100b0991135c5e9b3e6bd407af54d476d007e44057fc643ac4bec95258620b1cba261f84c0e8fb97df2d36c57372215ee6e023072d3773b0e9f57ae57539b191385d857e731eb18b990c83f99e754116f64e5b5b005349640109ba165ff33c1c0174e9b0302047c435bb50067306502303587537f0ce88cf9a160ca82d31d71b2527806dd609cd90805b575d778d694429a9d6eaa2b96b88d0bc5c65af0d13e5c023100fc3f0d8852629f34b44333a59b7764b88c58c27134204bec06c9945850a2932033f15b7823bce5621321fdd1f68af3a60302047c435bb50066306402301204c8f803256fa0024c38b5bb8fa3800f1032e7b9ed4b70840fd7a97fe1d26990ef8ec81306b86d2b3c5e61e3ecbb7e0230133d9d8bcf6044ca3dfdb5a6d561fa78059ad0548cf05d5bc7be49b53e39d4a1ee087d836f54b10ac2d25d62afdff0200302047c435bb50067306502301664bdcc80dc2914341ff60fd25cfabc881e616998daa3e51f091ba0d38c411a3680164e46f6c850228611ab3fd7743002310091519cc02abdea6219eea8cad26e4f760abd1c116ffb3b703fb9a3e2c24880ed642cdf7a6563696c8db6b555e5564fa60302047c435bb500673065023064571d90648fc17722f9e0d7d8c2cc2deb3239744c32e8ff62bf318925fae101ab4baafcaa650df3519af35f90c0a69a02310091336dba9c4fd6dac0585296717c079097c365b0f752e4702fcfee939f223526eea06a055beaf26ff19e2a72f89168ce0302047c435bb50066306402302e46242a9b32a68b8c464f6c866144fb2b35d0880ab661787bbd8a24ce17259ef99ec0e6e251c2cf3db5635e6aae86ae02304322b36757b07d748e44bca26bdbe8d142b351fbd4dd2b470f15111783f71a3179bc2c312a24ab6c8f308792940266c70302047c435bb5006730650231008e6a52cbadf445780ef706af51af3bac65e8ceb30097a83ffcb53abfe618e43ac55d8be2d4e105fb92276eb88f002b6f023074105643264960cc16139a97984494ca3ed28c0bfbccbd6a9205ef1f1f8d938f6f05255f91cba29ae7beafe53876ff6c0302047c435bb50067306502304035b5e1fb5474f6759f6b61c5302ca4c15679a54a450172ce2448e9c95f97ce8acce81cc418043fa44b5d52a3b3a0bd023100b75423c2800d746a04dde409c1e56efe58c4b9989e2d8c014559d2f7ab2655d3f789de6c4b099e4e6d4455830107cbae0302047c435bb50068306602310092d91cdcecf0d4f4d51c1aaaa4001a3ae96d561608203c3b1173dc44f5681f3da0328da0c6be6a341bbc3417fc40f1de023100ceca9181118e59ddb14973fd3c64d60aab5264879e7f8714f377c273867e1310f73565c6f97f15418b645f92cce37ee60302047c435bb50067306502305d06d4ce93d8438171d08793177a7651716213ea3cc8c0c5432bd984afddf5ea619960e4a988a5561753fee9cbebe339023100e1234cf6fd9fd96da3a11df7245303f48d296497427de08911fd278d08245d62e9a09a49bf68932329fb3005d5340e910302047c435bb500673065023100893dc3cec9ffa732030c5b5980785b859639753c5e14ff6507d5598229ad3e9f827aae44037ac1b97edd32376b649f3b02303d85fb265a54bdf7e73daeca04a223a5e44baee79433db11811567aaba3fc21f3c9710754f5aea1258839f3d7053e2e30302047c435bb50068306602310081b6cc96524e24cc6bffb9fe3a9ed8af165e1bf42ce4d526b2fb8f39983e5429e7ff01559992739354fa8eb418c62e26023100c34f71df635fe6c4826b8d9c52889c3b476128c52951f01896f342eef2f38e2caa20315ce841a1c9f3ca8674b231fb710302047c435bb500673065023100d65197e608cb1ad6e16f5c254cb68e637394d8e9bd65a508e26ffbe95f9f523813b04e23a6c20724da2b2ce5ecd7333e0230011f5c4c97dde6987831638c680b97b3151faa38ca7b7fb06d72e53f75a720d4f7019f9bf7e495c2a941fdc7abef22d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b037f08973fc5cde48f1a2633347c6e285a52fe85805156c44774a425de9a26ed6b755c400f884b2c5defe6bce2f97f0023100c201989000f07cfe589c0591400dddc6e11e5e209c798ea98d1e3d1aecd6f14701cff62df95d76e4c402413f059ada6c0302047c435bb500683066023100d5065723ab559990fa93113a65e9a0c1f86cb46b1af35e4480647c48818a7fdd3744be282acb355e99e89a59f2645b5d023100d58c7c8d710f14cebafa149ec26a2b8016dde1e257f64daf6ceb9cf4b21790247cd0391ebe58b66d84956150490f86020302047c435bb50067306502302d7f2677fc1a148a319831eef8e53de0c8b28a01a645dfa3566be960705916bf53208db272d2a69c01775351d56dd4e7023100b8a4a24438dd45b4fcb83e02b223a9e83d64d292c8f180200bc592a73a880fe06ac41346a40e5313625337c94b4ee61e0302047c435bb500683066023100a783fd2228dc5c8806a6d21ba8d0a6f0bf04b494b2d441ab9132f1487d74349a674b9219e3a0cf7328c4f104db583eae023100b2bf16331650c5d32f1236fd573f29f32f311954f62a70643e4d1c4e08afe957f8688f3303b24e6a1b477279f8f0614c0302047c435bb500673065023071c50a066ee051c96a6a8c28ecad1dd663dde7fe6b64e11c1b5adef9b58aee529c55690031054a2a5792a2acc93b10ae023100eab28c4c6604a399ca400005b59b1ac5837cac85ab5bdd3b15843c9b84415983b7f9f8422dc0cf7f84eb131a9b0867c10302047c435bb500673065023065108929514c520c5a5672ee8876715479137b4d68ed94066ece7c02462635b50272e727d173088ffad52b66e20dffb8023100b6ce8fc86124e4b3884cd8a86ba07355c4e27b21908b916bee3b374ae758b3cf6279423d53a45ece2ebe9b82d32e8d160302047c435bb500683066023100d92850a9cd1cde6d8b7fdc0b59b8d1b9c766c1585deede1623fbde993c0b20361d99ef754a3b4db79ac3d901cc400143023100ac1bf29ff2e382f699535fcd9395934d032253e3fce23dd2dc1b64e6f95046e246be3ce4743441d4906efe94882f0dd40302047c435bb500673065023100cdffdbf6d469e98a4ded2089c2202494b9b46156f88215a15f218a4c7f9a11df059dcbf6499eac979ec6f7d8ffedb98b02300b7c2e640255f30ac670e97107438e47aa31c39c13171bfcbb1a65548839ee6a97420712e7983ebb324d791febbcd6a10302047c435bb50066306402303028bca459bd300ab80380c46b2916cdb707ab1b6b2b3cb49941250ad4421bccd1ee46d58edeb9b063fe939c00f3dd7b02303d68cdc706c55d401073ee88a68edcb1de80893d181a9989b3a35b1858e449d27b200496c3cb27bda40c3cf482fd8cd40302047c435bb50067306502310093fdf5caf1d95b1f56b5490e547654d5750b348cea733a07a57e5a43900274507fe42f5ed66ecf2e9dbf5cedeafc4f87023076326fdbb793524883357c6eb167c4b58b9d49f7ef35e0205225346c88abc62ae992c78621f0e80b3a86cc296fc9ea4b0302047c435bb5006730650230664c9f1f0c9c2c7f40d9d70b13c445f1ac78fab3b78e331bd135ac51803085824787cdc849e3478822cc431482cbb78f023100b85a20fba59db3befb2c653f6de233b2490d023fcaae3e1dadcc604b5bca17e06940cea3ef71342714678bb4b9aa12c90302047c435bb500683066023100d8a008b8524ff395f2d3ffbf4b3498f26d4c701a28187a37d9b4fd994a214f8754956b57b69f7d7a5be1f6d010c60b2a023100cfe3c12285719e8030ce8ec410931ab247d692fb1b63df2c19306bdc91a26ac4900036e2ece35ddcbe3cc5c959b874cf0302047c435bb50067306502310082206847c5cf22a6dc4cfefbedcc0abfa260e31c74da9c7f0781e7ff0974dc88d3a4fbe6e8a78419d5cb667f4525641602304bdd8a19f63067c9f3cd981540fe46c5a45a9339d4c1aacac3ecc9e6242bac2c59b7cf6c2902a770ddbf78e828e111250302047c435bb5006730650231009f4b5fec29947712bb9f23fc9ce93eecd4dfebff91217e61c647ab494ea0897cd12ef24d4e92ff89160095d22994479502303c199ac66a9f74c18d3d7beca02ccdd084b86945a62122e55b8948eca89ddce4ff197e7c36c001e567cb5f6e826c8d720302047c435bb500673065023100a341d44ad7d74e7c696422f1b7bb683b0980236083ea8c504a118925cd781ca463c18d06351dc599e8b86025b4bb40a602302ea60462cf98cc8d4b73778a7215713ca6cb4762dfce9288f69a4d683d9c0d29df6d9725b69979e6a2618dabb6fbe5a10302047c435bb5006830660231009b90e6945ba1cdcf360aed7c1d1c427633dff4d876845dfdcba751be073257cab8765b11cc72191fcb66732dac013e7a023100a70913d51d24caa04522dd49d60e431705ae6d788fd1a3be49b46b1a9465959944153a96c6bd378551c2acbff0189ade0302047c435bb500683066023100a0789edeb62ab55dd3530f982ff3f35a0ecbf677cbed10822386dedf6b0ced9a01305fc2c4abeb93160b32e009c1fe34023100fa88ebda87d5e06c796bccb2c1a897cc5934826d2d37deec1cc5edb3ead17a97e117b8ed4a64be81df2a94bfd253961d0302047c435bb500673065023100b4b1a76f245a6593b4b7edd0b105cffcbd2cdeff5f104391aecc1f2f6c8a6bfa3d4bab078132fee37ab14a05f8a04a1902304f96716cff788d3da825c78b89b16085f0f67213fcc5324a1445adb69d29b668c0e156786ee035f8b926ef32fa9515030302047c435bb50066306402300dfc803991975dfebca8e579cbbacbdfcebb86cd75c6730d8026d351e74c2e53503856561ae672f278dcfd9e4b23b34702303b8fcb062774347f0deeb28932fbaa1c84c6c7dda7089df814fc24fa842974fc7ef71ba5b33c2b3caa49dcb9906e40e40302047c435bb50067306502303c96b0d32b297cfb319e46b70f457336c98e32158ccdc64a2aba3dbdd606356e6f7cc55193e5b392f7ef4ee868bb2497023100e8143a9cbbf6c179f55861f46d549ff66f0e5c10680adc1a8001a0d3613f9e553bbf3f9c9a272d002f551dacf85a9aa10302047c435bb5006630640230383c8a3d371eba630f88503b0ccf4f5f446cfb3d54696be254a1f1999d6f4e4f010946c185674fd9f72d93efe64bdb600230552983cb305c0fc59fa6a899e87470974b74a58c6c4905e5cdeb74ab5b96abaaade714e883b6483261edb93933ceadde0302047c435bb50067306502301324552e0511c931b85dec35516d66883fdb7ee6910cc2cf71f25ca4663cbb19bb6af8caa81e69d1c427f80a6d47ca06023100fa2ca2540aaec4d1a2cb84ff749e8e89db1bdcf1b36f41b78ab77ca38f053524b8459afd27465fcf9992c544992c50ab0302047c435bb500673065023010c7cedeb6ebe49a35a2d70f2942034503e4cd6f4178b35ee5a9195bd5e95120d6b126a571634505deed65ca27cda8a60231008b1dd66186d73362c97685d6544c28d76a1facba6e68242f6cadae51176ffe384b2d706667280570afd9f66cc56e6d050302047c435bb500663064023006bd667c77d3438601383f026149e5c0288b396658aa22de17f8c969c0603d54cf72b9b78c0e90effa690b5c236a81db023010e5d9aec83920e04f65ae86c41e4731bb851ff886d09259fcc13cb397ce9d99a129cca4060d0b9d198b12a65e81a2ac0302047c435bb50066306402307fa0ddfeed55f0db470558232fefbed5dc5d1413aea10785b0946fabaf94cbb075da351a139165d7a896ef82760a8603023074038e3848eadffd252a34344aa411d55d746abf39d75aa79f0e700c644f4d32b5a9e20019ed70603d1f488bd9973b420302047c435bb5006730650230266e1db326c442f684d17b467edbd6c6df957d4d8cb7a17d068cfd255d6dacde8714690ac536787432bd8cd9bbecb785023100aa28babc9dcea8896c185b2edf672386711c2530a3ba25cffeb23d561e3d4b28a46e9f2fa17f6e176d9f25a44b669ba70302047c435bb500663064023075c6c3fdbea3f0672e900d7cb3450c234577198ee6b254ac225129cd9aac76b9c1668fa1909ba4fb172f5e5f88abf077023078372f5e506be178d22ba8af903df0ccc8344992407a7f60d2230cb274db54279889c7f98211bfcd89cf747a0dae26ac0302047c435bb500673065023029253c8d39b5d6259ddfdcb7f0232d302070dfdfc180b61855c93a1a6eacd55ab9e57359f608ef438312a51fe0b2841e023100fde083c1c593948f20329655b53b6f007ba9282c553a7e1c44ef4de7b6f2d1fa86210052eecf46cec47566285fc328350302047c435bb500673065023100a42576fd9bfab8c596e5727ff115d3181d3fe9cbbb9e7712404bcbd93dd98dc0f5ebbff39f2b4fbcf7646c7ce19f121f02300c9fbcaa514d1109697029e2e8db3236ec909b5d67df9f623126723ead9109aa33e8794221ff62ec42e7441bfdb286bd0302047c435bb500663064023037320c578bf6da0018441b814e75e7f5db8a3e887e511b74e696feff56c43e7bc3e55181db8dd6d21cf83a5c8518369802307f499f2662b659c0b62e2d2aefbed78722e5fd9024e0d2c67a805bfbdea6cef998da78efca048c6112bf13ddfb52a1aa0302047c435bb500683066023100b7af2ec95b9d7d8430c4690d43dca4bb3edae2d2c76c9ea5966384189bfcbfacaa70347db82e0ca4a520d95a472528a5023100889f1db5131b476bbcff872b46653d945f81fa08084bba29da46682d69be35f7e1a2adc8463628509f6a93b2736213490302047c435bb500673065023046b6bac57d9516c48d86a06f0d0ca6e1db1e2e8cffec3314269c06ca1be1c806818c24993a4654a74f295927e8c231eb023100cecd7b1f744e0e5bbee4790e158904f63aa7627e4405d52ae3453243bde11914040c00bf234ee871b9918a737f5c83570302047c435bb500673065023070db86ba11e51431dd51eae07d77572c5bac73abc0b5d8d46472b07b1825c60dcddb1da5b09e2152420b049ef914421c023100d287eb604d0065be3425a5789e0a3d8755346defc48ae11da28e3899f5fca7b10eacf6b1c13cad91692cf80aeecd09f10302047c435bb500673065023100d14cd45f906552d671ea61416ad7d87fabb1d7a68605f2321cdbad07049e30e6e633fcc8a7287c13d1296980107bea7802304f304d015d4e9b265de268ab90a85d07f0df069fe9eee92ab9a63f0604972b23f962b1583fd1d5a0b620484e0856a3a10302047c435bb50066306402307345bde6cfef88eec0a09a1b651dacb175793fc352535d8945cfab6a4e285fc919d26442840e4b05849892abb192aef002304143c929a7b9bba413af335065ebaa0d2a873195b3448f96442cd7e19fa1aec15440a05eabc5034982ab671d566e6f660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009a63b34b59d50d4cf5f80889e7d6b5544a13fc8771579cb17441134501395adf2a35de8e7a683b87f60dda87157603c70230489ba1ac489c1469596fcb9e908284ecb6497d68cb9cd5b8d6e6f29d79de80f65fe143c003003d5104610408253cfa060302047c435bb50067306502305b0396ba8062f987996b724a92a13535425be6142867b8afa13b2c65c4fca10fdaebbc7fd1689be539425da9bfedd2a2023100b15e5a63ca802ec4002c062962ab81fb5ecda5accf21c509adf456f26144b7e9230548961ca029f47b2d30367974d49b0302047c435bb500683066023100f01855aca055bd4102745e008a618708b6c02dd36c7911a2d7e564635b21ce0f75cbfde3e38b5165ada42174ee1c1d92023100db3949e4f549e27737c79dd38d4903e09008207135a73ebc51e601138910819672a8da18ed4beee2c4deae7980c257570302047c435bb500673065023100c6dc9341aa9962569a5ee9a8b8e9099e91f5e8df116c42a7eb7d9982e746f041f6f6155adf273753675d46e3453d34a20230510bff801a9a61f0a81136ed1de6530542535aabf42e837f2cbec260640ee060756cc5255abc51274d8c1805e48bcdb80302047c435bb50067306502305e62bd54e3bae9df5dd86304f825adfef79820a24c596ee4265c7df0d31a71ea7063d87ef9d101dc20fe9598317a7238023100cb12da0f117535e54667c42313c33ed55540d569b1a21f6b5a51155c9b7dd640437243a257021dd233b22a46ffd00f6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305561c033ed218e2469151a441323393e7d54c20f8737bf4eb09c6544ef253fcd2443dfc4fa1b34b4e57c33eda957ed8302303a1226e08b8eca4a2469d86f3ddc989813bf46c07b6a7d97390a6ea38e90ea8e672bc32136c3cbfa5f39130fe26b117f0302047c435bb500673065023032818ba5e8add10f9cc6c15e47608899e92a9a6ed126b02249bd35780b36b924af52c0a6677d053b99e2ee67aef4f372023100f5c1c65ca0ee4fc6c5dc031c45e923e38b26502abe5532cf4e61e6d64def689da940054035df55e42214d8c593a9a2b00302047c435bb500673065023044021d071fe5beac6a160fd27188ab6f6ba68d1728a344ef08a79c4cb3fe76a73e1afbfef0de59af881827892a2f47b1023100cbc3a7dcc96865a63145e441e6fe6e6249e221d999801bcfb28150f83e09ca6c41752eca621bd8877ce2bc999c68268e0302047c435bb50068306602310096b66b49437c68a7f48384afa9b5a7c1b3849dede371c22cfa5cc7f6b4b7b4ffd520c2397cf14a8426c69607b3f1e11b023100dc9560bf86d5bb27aaa81f6abb56ffeaa0e25c3207cc08c7a8e614f9326e4622decc61c6ae266a795bc6db6b1c9ee61d0302047c435bb50068306602310080d17db40903c9fb98354bea4ae267c19a30a027468594cd8ab98c5193ad2abcd24782ac3da5a4fc1eb604f6b67b50060231008dc86f4131e634d164ae99dda4793e7f4091f7f2c521f10a04bb95c63214629a6f435592a372c4e7db475d09172511b80302047c435bb500673065023100fd8808375fe2380a1337f5aeef1752b3faa19a2468a0942867c7b6031c3442a72cbbb9bd418dab0e7b3a0a2861bcc16602304049e2771625e350abb1c4b414399e27318b468074bbdd90969b173544d4871fd459f5da3856c0dcdf45db3be21251270302047c435bb50066306402300bb6abbe024ad4fb8d228dbd54da06cabc274e0cebcedd805babe7e4cdee1d4a10f21db173476572ce8c0bf2caabefbd023059f578d37e75de793ff12c75dce51437c21412a627385cc7fd2c62cd6eec56ac28436bbbba8923fe2b1450c84fd4c4d40302047c435bb50067306502307547fbc3c7bd17c5a5581ce7cd0d11b1113ffe8426b06040ae06b84502a9e079d42cdac52e9a88534f29779f70d7c70e023100c151ca851355bf928e175c61be68b801d705c40254f0588357d735552f72fa67619ae3fe995a5c916592c7373c848b2a0302047c435bb500663064023004e748eab99d36cb9c6c89961a60e6fe955a75644e4b0ae1d3b6f6c53995a0ef527357bb8d0c146f36216424464fd267023018f1e096e4fd028905d4bfbb891c9d488046ed656a7c7ba2798c4ecc28f0dee3a773bb5b7ff6d5f1bdbf6b74724921430302047c435bb50067306502301d6b6b60c539581df58f864673b7169a3d81b08a4985e1cd32eed0c7a357f0e22ab7486f0969e111c0f80293bda754ef023100b7a077b834e0e13edb181c79aa955c8162325dd78b053779ac001f25937a9003cbeb8c7d31a2f075fc2081bd4d1962d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307ae9be3cd6c32f902a75d7350c2dd051868d9ca8966e20874555101663b1a41e0186acd486dea04b4e21b1690c8fd82002302b1f7b6411c0298b96797bd29b3c797de55c755ec720227d031e925e258deae50870249b7cc598ac8a3bb39c4f4dc04b0302047c435bb5006730650230173d822efe13954ed628c757fc25524d94b1a11b149a4959626467047c0aa9fce1d62a0dff577c9c06f57413b016ddad0231009795bbd529aa816ca1bf6a3d69a45d24a11c1b75c86c55312292cfa974a3c577811a833f559d7c99a2f5b85f391d6ffa0302047c435bb50066306402301eeab720ad94aa3c9c5b9b92c5b9330bba60513e01ccc73b98a2ab71c06cfb13ab254c32b98a5aff36bb4c1f0cf495d602305982eafd826744f71afa6950e3f3b47765acc76e13678e76d1036a06b732868effeb53258d4f0ae33d189520b3e9eb8e0302047c435bb5006730650231009ceab9191ca0da462af115e6395280e42e4302d67716685e299d1837dd134ddf74bbc1aeab4d0c7cddbb97236697bd1d02306295fe6bf31a840ea1be3efac29e8012422fc2a4ed05e2a0a378807e3854202667744471ea4925520b747d0fcb67b46c0302047c435bb500673065023100ec0b8dcf6692df340c548ca812382a1aac5ae2a313f4ad43bb3bb411c6dd0e0ac289125f851522f8616f9fc7ccb5b4e8023007da6772dee836e5ef62122a27bd87bccfcd47c53e32ed214f3cbdc91441c195d2fe6faba0e84ac725f1aee830e80c6b0302047c435bb5006630640230180614350926f49621550272f63a629e34c84266516098cf5ffc409519e9570081fa68d38936baf421879c0a25fc1d5102305faf700940ee2255b4e2d21d395b4385f226705708d286d7990c012b1339085ef85c478fbbe14373fba0507e082c8b7e0302047c435bb50067306502304bc4287c16354a43d220cd33bb458756f2c279dcb61f3379bdc8bcf21f52806baf459437f1f82481cb42dab244dfccd4023100debd9f78ea734082d36eece3f3276db5fe7be8979cebdfeb80cb598124e568a48468ff116bf5467edeb872473e0c64c60302047c435bb50067306502306891ec6f7454f2458ba736552c4f0b3a2122e65ee4a50ceeb3da8d450c65f7fcdbcfaed04208416471bea01c66d1bfb7023100e058d93dbadf0b8e479c7374a51dc4f483af32f0638262f0bcf3831d22dd7993cbfb240db22e234f8ffc4a932110530d0302047c435bb5006830660231009d471d8a83c34ec27e4341f698d33f4f2f7d0b62cd4c459986a78df76ddce8b36a3667deecc27b8aaeafbbd368cd4701023100b49a0edceb155d935b83b499e6e828b1af3c9f5c315592545288f9a9b188779757047de33948c63c1f521472e31917150302047c435bb500673065023100895c4323b5d9a27889f91f9421f7008863391cff725dcb7813c12c655f1fec4eb4094ca26f7094e6152fd9aac998bdb9023020048caa796ca1401905a8d0f6c211d7675978e3678959ac70eb32915a2de038b20f466c004b70d7ec6f4e3c8d1a53120302047c435bb5006730650231009fe85cd57091e1386be3b23a2ea7d7bb23d4bf24ac097c0163b84d78dbdd6293ff2dd4c4cd79cd83d7572291d28d64020230600ceee27323a0c24a4b1a83befc54269bd9ae6e35127c250ca8cace4774ad4d7f19904de1c4a773245c89f7f33d16df0302047c435bb50066306402306b21574e09b946d1708407ece69e43fa5f53d054cea3ca36dc1a5769652352b7ff5d769e3e5f1a70cf79f4639fab6d5002302582161d6451371434a4a8da7e6772a05fd49d315535130f072f63eed68a2954ab0b841872ccb354cb88cedb6da0b60c0302047c435bb50066306402300856852b4660e791c169f58fd47161eddc28617d56c3cdaaf0c8857316dfbae86b4aa1ef67f3b35f2f4adb83cadacfa4023078b9e30bcfc08a70c644e8d0e24120105875b7cd8f1ec35c3034573addeba0302ae35c80d0251fa3ee9be2fe82c023be0302047c435bb50066306402304540ddb802e6c34ebf4714cdec5c6b0df30582b7da181c20e29600044928f55793c373fefa7e4a5f4644934d03dc963e023061665fabeedb53cd2612553270d24d1f0c1c2daa00f8c11568885f7003771daf9bcb56d84d9769298428e3e41b41820c0302047c435bb50067306502300bace50eb3bdce0d81d061861c6a23970d0ebc2519d33b978ac5f35f70ac65698bc8c590dc9e50723c885d2f5b7ca5970231008e9ecf74f86c248f6474d5ebf498bd6efb11f745c68030d3b8d4829c215ee41d0c95e61eadf5228e409ad0c03540fb220302047c435bb50067306502300939617ea1a1ad62c039fc921557b7b51ff0e59ff27f3eb8633e6fcb9615ea9e6d453442eeaf73f66353209ce4ace7d102310098bd4715ca4467ac828b74563ab704b08bd48e441b4881b285296c21a1645185ca3fe7e707fdf944792c13243a5d8c1b0302047c435bb50066306402305439ebedbd93bb2da3c7eb380ae13442673661dd1d8d2d5bae2431e22d589b505019a4b593095cdbf96623b47c4384a1023017de41e8e578dd92278fca362dbc9dc1583027734f72edc26c3e5e518ca3fec858043764d6a1223d1449b125c3b6f8010302047c435bb500683066023100c88d3b1ec81e59c2232e3282360b86ec755fee9360a99344231a590747ace270095b7ff2171d063071458705a767e734023100934ad79dbf48bef6b98cf3febd8f126765a249fe1d82e79c20cc1b212516e6ef7cc6d036e372d48a90bd1b55cc4511cb0302047c435bb500673065023100a99af38bb294d5f26fa084ae510a60e1d3011aa4c56b4dbbfb8ef8cbcd8b92dff4344a837b6081ea515637c1017a9b1102302499f25694adf339d5857ab27b5c0c35601b8e46c57d5f2e2a2fbbc5960f6dc84b3b9ab42cc6c606755799be2b323ae40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f06a7e67df56f1a135ce330bfba7018c09ddf0b7e657ac258cb36be6ae9baa5bb4c5125c9eb9f5c284b5ee0a303f8235023100ed7abc834e500f8e6bf46e473b040dcbded1a4c84f957b330da97c3d8044c90e3e80de2e320f9f5c57f222735a3556860302047c435bb500683066023100c7cb49c138771b41cbcc47df811300e9540699faa30d9e25b7d22f8b704a7098a806114abc443fcb3d27b955625df4a40231009dbeac7b6af6bc03eea438f495d1fbcd3ca084598da85e8e98576920ba0581998c3b9d4f5bb58810e6cb32d77b551b530302047c435bb50066306402307458138c2d3b5376c78d0c2929d98b4117f910efb7ae22a592b71f93fde03020225c9909aa4fc7b871e2e0d490dc8d10023027274bc5e44278e77c4731f40c1b43961e07ae41d8413729d55e4209e2c6aa498ada279edb7db1ca6e0602fdcf5f0b7f0302047c435bb500673065023100fdd4ce065c3614ae7be55f73e75d5167928c33c04d45b15e535b2a94bb584a56103d3b7aab4043208f080d0094f0e4cc02303449a4ab4b00c58b99babbbde8dd157360e932a16b0079fb7d2e8033d4b8793926ef5a13b7d93dac1e99cca04696430e0302047c435bb500673065023100fb2348a01bfe59bfffd9c4d1b71a6015fca0c2867b66f4d04ec997c08a363d4318234231f4344a0b2382a5f28584476502302f0549b9f3949a5d67f9102056ad5112a4a9e911448db039aa379dc4a1853a9e83d777bff70ff0c6d4fc1de7a0cdc43a0302047c435bb50066306402301436c76bd88fa7ca95d773a011bd7afc0f4c380d32649b195e5a16667f5b9615f872ed6ec322ca59aa4cee0860e4408e023056f0587a39d0a5ec493cfeeb912ff3c935c6f2e4ad87ad15f1878783b85d38246cb11e909fd554625a27c7ca845adc530302047c435bb500673065023100f87c64d3bfa9d4d8236c3cbc8ccd830d48c91d5b3e73a0a77459e1fc7d3045d7fbe519e42ef7d2fe8bfe747e638df2360230463c136921f729b97ce2b222b7391a60401eca77bd8b4f18741c5e9102ef50e1f622b3245fae9d97ea0cd8f50aae41830302047c435bb50066306402303c482c5f22b4c1900a031a1b768ddbf85d8c1823df7ec628fe432ea32614793e43bda25abf50e7e9913c6cfebcc4fb3a0230112d3df4e89b811f50a19d742abcedc724e308542243227df6855549b13fdbc30dab21c836dc25f953d0b30bd02f61c60302047c435bb500673065023100bfc5e065dd97fd02068ea53d3b121107f08150315e59468a39b5b99e43765829a022d63dcba6f4da355f79af1589973802301659f0f9fad6ded36470dd88686be1ffe078ba8f92d17c3e02fc1b80468a479eac1e3e3613ac944fff053b435b1753b20302047c435bb50067306502301204659a2cd0c34f322bd8fe635da1cbb242547cf6e4e22a3e6d28d160ddfd7d552a7350b337416f6f12f0b6115855dd023100834b1b08b3e1c95103d5bbad01e048bc9cd0812d06666ff82c47be451e21ae6cb147aab3c1920e8b7de202e50852a6b10302047c435bb500673065023100d843db0e4290e1f14280f2fa2d69fa08a7c5ad4a065541b9ea57673f0949c6272b48c68295d701c3a8e087c1bdc469c20230255006d8639a50c4dcaf3c23da683d17e86fe6081f9a72972b4a06ae9463cafa398a919d55bca37c8aaf3c02dcebb2d50302047c435bb50067306502300c05a05bf722772632d9072ba6c95f0fd38521eb46938248437ef2ddfe5d998472e1fbaf22f43bd63798f4fc23096999023100860d38a926780ca98abf5aa63534ab60f51ab041f6c8407f6c0b517f1f1374cab9af1968a281e14dcab6acadfd7cc3a80302047c435bb500673065023100a44e2d178269d48c9853e42db66b1aef5b2b0b8327ea3d9db50bc2a278d4c36dc7e5ee28f4bc060ca3d81ef6fc16fbea023000a1be84fcbae9c75a89c34dae67c787f5eff2ea6434917b0d7a0d4bb23019b12a3f3fbf039c02229d05229d927426420302047c435bb500663064023038521a4615d340e5e94e2be1a0c829f8ff88c14c451efb6f91d5ed91eb7ba7fa1a221d12400e79a0ecdf3336326ebdb90230572d6c42b72d1f77f802f40b0dc3463f679585de2edebd12806ba5e11f0c025d317d4c177d7d96bf8031abce6808a4730302047c435bb500673065023100dda5f74c79514c0fb040da72d12e8d78948c1fca0c133a7ab122d0197127e5587917e6047ff8e663565e2d5ca4755f790230615ba49efb5c3f68697b7faafe9ade3467df60d5f9bf4aa0d675674e9ce86701e479776c2c5f0876413e6a1dde0535f90302047c435bb500673065023100efd8fcc6eb2a6cea81d803809485e30887d32f36b7f75eece0a4a95d291cc8d904ec78926eaf2fbf0b655c193a4010ca0230692bfda485f9a02154eaa6bf344f30f704a06fd07fe57a80059a4ea62fdbd9db36ab99cac736ae59a6ae5936d9dc54530302047c435bb500663064023047d1665c59bf6672caeb2b01d93f202889a451d119961fd722a36b71e259c80295580efb7c24c9e2fa4f3f40fc71d8d7023032bb232ab49435ae7a6df49e5b68391d984040b7ccb45142ef170bd0bdcb9602e2e2e1442e97bf7472cea31027a57b0e0302047c435bb5006730650230547d3b726f54435fe4d372a96a583bb1e8628eeb3998e77ec9c64c7d3a8bed820d558481e22940d078f07224d7cf0afb023100812f49fb441f4ec4e56c9cb2680c42939f41fc3e7e48fafbb3abb12c0ec06ea51144d8306ae53a52a7a517a6e908699d0302047c435bb5006730650230247d9d8db0d6688df2142b7258b78f9cdaf52635cc9ca6540af07b7c200e2cb5a0dd27c01d3de2c3bc54226b11f2700f023100c4e7c5616e21fd85d6d0d7eae9c22f63a7c0a55b2b2c2eb51763396f4e9d152c236b1572f9504f5e65739c2580676b820302047c435bb500663064023045e674190b61a752009d8e3f256592127ea9885da9153e79dc4e759b59b57364e5ab555c07fb8cc2dd531044ff74695e023011c63a945bb740a31131d131feccd42bedd90eb9900eab018a506c207f8f22b7e9233590b619a76af3392b469cf633000302047c435bb500673065023100d0c7e7d5dfcbad9f28346a6081b3c92e495ac8afcb4260c04dc3a36603d77db194f3ae933f0bd9e550ac970151aa7a5b0230103d720045dde3ce97242d2d099a8a24854ebfadf5c6ca87dcd77dacf189385c4f38e39d49152d83a776aac4555cf5450302047c435bb5006630640230084580db4680e01611545c21728eb8185b87c564886adbe53669039c7f449d3f1cf201e52d7b6476f36afa3511d8a36602303536648bb2a71c04478b42627c8fdb9b1ae617dd2cbf471dfc3b1a439960d97228c7c0e224270a515530af042b3c21810302047c435bb5006730650230215789df008473fe2db32286dd2c0257c83fa355249585f8dae96b90d74355c2a310ded89af1258dfb75d1c52c52a086023100c7791e3f533651f4ea6f4bf67ff20f7886cb72484ce7906aa4ef4ab9d4c22b63f06621b4c700fb7fda63d96418d033c80302047c435bb500683066023100cdf87358409e8b15eabfd0c174338caf593f15c53bfd3219f1b7e9c02ca0066a8af0907eeaedec491b63435bb884eb92023100bb784519f75705947a7324e915f89e27343a69b425084e5b14a43250eeaad74dac1225d71d60ed134937e8db3db869dc0302047c435bb500663064023050560fbb9aa61086dc61022a18c0eb472fde6965460bd1d10fa0c7952739301f8a25f013004271b3f62c8007f9cc34cc023060b1c013b1072a340f47873cee3494194e0114b9593cb9f32abd297aae8db7171500da5b133ed09e8fa2706144980e1c0302047c435bb500673065023030e3c8c77cf64efc75943d4071c202948b4e93a23475b3d2027a516c7eb104cc3aacae49bd7ee533013bfce6f762d77d023100f937a584fd0b05d2762a0ae358b1d9e8b4954e632705d2dc48d1daa798a8eb3c998eb1a227ada39a4be35de226196e1b0302047c435bb500673065023100c081d0166a8203f51209c8edab2f89f6eb70db46ee478959ff9f22e2a2438a73db514a401498fa9ca31c2ff7c4cf7ae302303766959594ca35a1e41fe3f33693886b10732826ce2b5868272e1d551ccbfc6fa66b616899d56e327c35379318d376c20302047c435bb50066306402302f8cbea9a8876bc7873a52b888c13aa3f6e61f11380491070dbacc1922bb1d79719b4cbaab43b958384289b3ba7e26c002303aff694f56d283f8e7083659633a14c94682a24649f13fa61d6d3efba8b24a0bd763cd946712b091f0a06ab9ea3635a60302047c435bb500673065023029ba46ade640929d16c5b105d11ab05f86c93c183cc0608c6a25393e9cb40ac55f85f4a76160dd68e713d9d6e0d0a62f023100f5f9ae5319dda6a0154d391b7ee7de9652d06e4d53d2d70d79003b03f146aa774382e98b899ea6c259c7a950bba88c430302047c435bb50066306402300a639035ee1f5a135999103cac6ae9530c0af62cde0c10e052fef8c0c36427dcc1f476c40f85d62553dc0f7faa55130702305b87d320e7fcd0cfcb410758dcdf4a0863c552805d90b75057eab461807c6cbbcd5bc822e30fcfc933c0b6acc2aa0fb90302047c435bb500683066023100a819bd7c352b65730a285d6034be91224ba6dc4a08f507da3d76e84eb3ed147359d47ca32601389d7b244c753f64f3ee023100b0e3884deb4c93a42351275374b7c35b5bc77d41df15631b879a1fd0f6aad2a8463398f69db89851b399f00b6546ad590302047c435bb50068306602310080a24be56fe947fd95a6c3b5c5df59f30c4ae06d25c4f31f4aa1d1810874a0af20046c32b7ab1a32e74c97d0b80f241a0231009254de6d82098715d464a4314d9c0089a8826e1ab03318ec597993951b5e38104e62232595d50a4cb0fbccb42aa416880302047c435bb50066306402306514ae7de93e37e0efea478db6c47d21ee19acd520c0ed24d9845ccb0e3227dbc9fc5ddc0e81c4d3dab755d82941c08202300b4c0f2be4f2a526a868fdd8ea9976c262e2fc07b5e83fe1c5cf8611c480bed4b916df94fda20a83e7c972daa458dd5f0302047c435bb50067306502307f7898aaa11793ad086c6e3cfd79fc10a82351525bf95b600f13cdba4116ef9f6ba9c8df09b72af38a3a0bfa347154de023100e9912cb854c2ca2a99e0914ac7533b932c9be95811e4da0d0fdbc1f585b8ec2a1514ab6aa98a9b97f6a983ac64145e6f0302047c435bb50066306402303e6bebeb71d2f1afc7c3a045ce2cef6415fd03751aafb9addba2110396517eb726f168529f6acf5d2555a1043a58f0e00230760540cb12e3f072af5b5367a913e24ef37efe2f3c3fae7f18ec97f884f39185cce65bd05084826828fc33b3264a50590302047c435bb50066306402304d716d52ba181b24253d5c8fbbc7f99cccde1d1d9453676d065e56d0777509bebe600fb2246edef29d526cecdcf95f9402301f6096a5b844b1f947d4947f5cd38956b6b492280983b66669f72d07ea7d39c0b6102e295d171e12369611716eb8575a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023003eb7dadaa89cbf593e65e6970fda374c3492d10d127a9024f469ddb0246f71d596e1a6e4375cfd08a08bdf020ee364c02300d32aba899cc9e76ca3763879c0808ca3cf0c53bd3757ecebf0d9683d785da18368ccf9b027f848c4a8786ccbf9d7c2b0302047c435bb500673065023100efe0641c4fd2f67d31271615a1bdd54127091d60c82b788dfaf2662c3762cd6e077f7eacf04ae55bd8a2265919e5734802302e65dbcdeb62e87de4d393740f950b352d9de5773e1a6e0d4349c322ef7a8cfa8af69eaa269465d13c8fa26ddd86529f0302047c435bb5006830660231009aa049ac4f9d441680cd5a1cc014fa37e17ca47bb0a1d2394f04c4efde714b3cd94122e3e6ea992bcbe22a44c26ee61b023100beea5f204bd6e89335a2e568eab33f11ee54aa8710b2a8c144d73e3f29e81168006918177ec66d5e4ae6e9365825645e0302047c435bb500673065023100c14a2b847e0f8443ec8b86de3d21a5981317bbf79a07803c414f103fad2dcb2af3e7ce0d3b81553df57c5716612d719b023069687d6d1462e4201371bcfcedcd82c740f27f0a82f63912f6bda00945991b6c163e00026bb0d4d064f5d9b2d2c329f30302047c435bb50067306502304a50f4f1f135557100db66075ada342318dfd5e6948c02fdadb99ec24c520c96c32b93ea2bde2a0967db97af78400ab7023100e32a7268dea7d9f8e57537e57752c641dbc32e9473f2eb58753366d6b456c66da3f08c8311bef88fb7c20be7c81765690302047c435bb500683066023100be4133364c33cbf9ad02a7bdfacba55dc9e60d29e59f206d4d26fd3e308039e81086caa1521667baf7128e9f0c4153e7023100e41cb3ad4647cde5e77d811ad5cb9336ed8b5225f7f1385208e3035a04754d14ae1c378e0103c1429d475eef1acdea2e0302047c435bb500683066023100b723f2258ae9ba63d7c9c0b0024fc29fa07fe1c4a260bbc3b5710ddc260e35b4c3ae0347d185f2afee698bad113e7553023100b6ce24bb8017d26ff5244fe3658312e90f1d75fb52f4067954725d91c3c1c0d46e15f82a90d35b2e9712c60c08c0c89d0302047c435bb500663064023060d6852f176a0512527b268878e4643680e49ab1411bdc5f0564363de661b3082d746ef24fa8a07e49aaacb2d0667151023013a130ece53a8c5023c2a00aac672d9cf84be3d0afc8c306f215ba104bcb1291ab16c06a4dbcc5eb225a350d850bd7ba0302047c435bb500673065023039024595d95ce6578e66cc6d03872e441ce52454f6e66ad59a4a1c12df560aa2a2a014ae2e3677d1627a638eb80f26610231008657395c945043352220ff27b72c8ec993d4a665a025c85e876396b201bd6b27688b0a0284f15b40cdbff787ad6876bf0302047c435bb5006630640230784e70f67c44e50e569fca18ad19d2873de1f328c0ff6d3cc737aaefdfe998f1c6459fb2e37f723f6b293d96a25f4e2d0230142e30db9ae8a2dbb59cb123166849c67dce62c737eb2e0eadd0e46cd8587962a8684bdbc845905b09f78a3b9d5e8e750302047c435bb500683066023100b14b6962a35dc00e6be481f1ab06dc692d692243dce6c8a1f8580f668a85fe003745f8ed4e23ce8b04174a5b10b41409023100ab4fb73e6295ffdda3a8ac5030e0c18063b2f44694b06808741c9314cac7e18d88ac5e7995ed8752406b0bb55f3b06280302047c435bb500673065023100ac847a479643131e050efade172fe54aba8e0accc5477552823eeb2789a5d07a9c30500a0fa7975187043eb872a5821d0230239ad2a83c64e55a9ad9fc3a5b522db53f884c7d812b46110af24185e51e470fce299e0b9439c2d98ea1e224f64ee44e0302047c435bb500663064023032d17d3821349793f2f33798875d122f99c0e6d222d8735b4ffb2df384bf28bfd034a4a639dd3e97c473071c137d7ecc02301e4753f6ffd26ccee546a0a3dd52196c4b6aa3566ed4367e098837b5a40039bd94f80a9d3d19344719327752e3833a3a0302047c435bb5006730650231008d11c78ec4822619101d24e401868a505d775a0141965c86e42657c6c482752915485146d61346b663074ee0fe9972fa02300394ff41e88b52b35dab707fc25c5300f98a574666dfb8ad336b7d636a94fae98fcf3a5584e82e11e52c51396c40ff0f0302047c435bb500683066023100a1b3db9d79b1870d9eae6d3e87d09cf823d22c208c3c3e8beeb061deba3a1c15b50a35f2f9edd0b4ba28caaf15aff323023100d14ee3781e251f624b09a9723c2194219b329634f7c2ee415159ce368c28417957dbe072584012619c444da9477269b30302047c435bb5006630640230565f303989813415a0aae075e56542198e9c3a78df55f531283a5705b9f6818416cf55705d68c7b6ae2a1dee70d7ef59023051659b4fd89b57d8dd58cba7bc22a03a25d53ce2211866f3b39158abf63ffd8763d6f017e8a508555b889fd60acdeb7f0302047c435bb5006630640230477eb88868dd8c3c4676873687536f723048cd35ea370dae90bddddc7579e6650cabe290fb1ff7ad36dd089fa995326b023074ff9eb320ba2aba61bfb10b1456d6203246ac21f72fe1aa3df9c320c314b67d6b7a44d06c7f9380386d0fa12f3653f00302047c435bb500673065023051ad6b5353a8fb9d7ae587e5c294bc41b9c5c67382b0c2b56d035f4a1495c40387663fb618043a6f288d40e115fbc7bf023100cd30096f85ca3f58f5dd5af8f42e380500a726da250e7b0451bd6e4a74d81989f51b83cd321f63beeceeba75868f5a4b0302047c435bb500683066023100bf5d7b1c70fbe9f954a81a78c0fee96680ba4b7c7fea8bceb1124e1e14d3b08532b0950d885dd79c3a57a8a48d923b29023100e215b19d0a0bfd5b3dcedb18e766e3eb22494a893355ed51c325df4a1052ae6f73415cebafee71e92cd9d4797b56a92a0302047c435bb50068306602310099866090b363362285897cc13a7a5588355cac71cbd737615b2fe46ca821f6318a861fe6a8cd49639eceea8f4d7c23a6023100fb6b2f0e264e2906f0461c2020f103376ecfd533054b976a6b7869a2b74409f516c6d7749641a412f106fc9d97cdd4ef0302047c435bb50066306402306b2ab1d4f02639d46a1242ba9064a2c398b2fbbf6a3ddd3762c759a09c56e2564e23ebafbeef7d66ba3025268387480002302efc995c80387b4378d9aa896ccfae1485f5aff60ccfd4439168166fe7ad3a22ee035d6a85a4cf43d7ba7df181c01bde0302047c435bb5006630640230123d6933c7e58c8dcfbc7fb5cda4f9b09ed132806944f94502150c2f32dff9e25f380561c77e833b6d689933d0423f6c0230196c16919c4407f41b63d1a05b6105360207de56d5ae171f01d8d0e99e7e21fcd942cdf9bcadd7315ec16a77da0515430302047c435bb500683066023100c9aa729fa5c88c2a42e034e6ee2422e42a9e8f051653916a2246278d793b6c8104ed525ed28ca7797609f10b500504cb02310097b8d4e5f3923d8c94421c43e55e2f523b806ea81203e9255e7061df396609bacaabe13dcdc66db2bddacca5fd858d220302047c435bb500673065023100de113b90c394dcc22684842094b9e150eb1a5ef275f653a0c7b5998d24e680101d12d2beba583cf1e1ad89334d5c7bb1023018a2ea3879189a6e809367ccfb3047e7637e4802d8c0ac96fd784d4a2d5e6f660b499d9e0aa8678cc1f7bf4045fb54d20302047c435bb50067306502307e1bc5cb1b1f559ec7b8cd9fcb8a59d78abd0ff5964b2466a75c4d236842f1d23c3e1cf89474390fa34aa30fca215dda02310086cc5ac99a627443f2d8f499094592b63621f5db2587cc806251d9cfe1632e5dec6c6731706e2e14c9561badbb1665800302047c435bb500683066023100a1ee1debb3de5a7266645de324ed358b66e3d73565c7beb695f99f3c4bed28a47aea9d8ee4468bb41b7c5c5c2f6c5f76023100d4505f68b7c82316402902519187b0546dd5a97dda9a9b502d9488b3912083cdfdd4679fa41d16a554bbf84b35a86c7a0302047c435bb500673065023100a3dd132bc8ca7eb5188784236dcaef55f56d09c621b0b4b477b49a485cc2f70f421df141b8653de524b6e63e279c22ef0230034165bded49e85dc00300ca1d71278115e3fdfc7d06e8177ebec591259703c415ea754a5509c138c7b4035e08b3edc20302047c435bb5006830660231008fec56760b5376165b519938c6a6a96794d59e953d5daecc4d91235d583733cc332c0c9f27ba445c7420aa7015e4cf7b023100b196a45f37299f562aa7497cd9d992368f44d28c1fc84bc54bc40db3137c05e32df31a60f743ed2dc11cc55b3c7c454f0302047c435bb500663064023018beb7743ebd65873adbacd25e685c8d0a9deb7f2de64c7ba652845c568078ea5bfb23d10c05c285db529f48f4e1a5f902304d7e898b60721cccac5b693583598acb22ae44acaef92a993b24baadc593181d7321d83d9ff28b71ff401d2ec7bddfd80302047c435bb500683066023100c9c19a65b819ad5d1d8308b0823ff3a0e8286025bd8cc6addc441bae7f8d8b95938e170ccbeb9d1be719a6e9d803cb600231008ee0fd071c4321384f39d8496453262b55dd3c4b36ea38bb8eff60b8cdfb0c30beec813d4a3a473fab4575606bc29cf20302047c435bb5006630640230581931d83d7423d7f404156eed11286627ac0fc75555ce4eed396eff7e4ed7c1f530580ed66367bfa624f96f0d350b67023038d9191883169e366f1f0df8bb4194d258dc76c0ca932c408771e62f052804b96905af6a1bd55f94b2f7e9d7df8242e50302047c435bb5006730650230135f36f8f301847f2d12a07bcf952996530e29fda769d3d1abab6bb701979d0e9947414fdd56cbe8a116f59eb8e7e7bf023100d0325976ccfc7d1180395ec69ca0b0d0cc2535ecfd4a3394b33193a2a7c9a1d4d9688092c570dd6bf9d910b14bbf25980302047c435bb500683066023100895c6555c060ae1bc232aa558d10bd1aa05dca173461814c7de0c8aa575b15d7d6de12dcef90556489efa6c4c2b2f259023100e1cda83b31fb5082b5537bae7586b6dd1ef6ac1e08d14d54e9b7d8f2ded7b1907894c1e4db1857c878e489f3bf47bee20302047c435bb50066306402306b5541611134222ebaecba1ee189f98e53da9b6bcbc1405dccd2efc934b94a2871300360de70afbeffc9857aecc47c29023063d25a1e1833ac3d6172d683e7acee4ec16daee0a69907f9dbe3a7784e584f9a9e8c95dc450f35273549b43f8cae0a400302047c435bb5006730650230347cf42f0163df8f0e2ac28536438ed2eb43b6d88793c3c3ac2ff2bfb9d92f61fb45671655584b4c68fd13b43d8390d0023100ac71c488e43dd1b18b2402a343a6b64877250cbc38e3ab623cf27ae1d53fe1f27d9f2cf7f6334969893cd93e940cf53b0302047c435bb50068306602310080a7c1ade6d9694f467a056426bd46f4116acdf748b9e6e3b97948441eac60a2861ff583365931e6702eebf6ed13dcaf023100bdc50a41d2461faa4b6eccd7085b9e6c55bf498758bd4c8606f4bbf32d4b81acab284374761050b27bd94bd2539d84d30302047c435bb500663064023071f06dcd3e4efcd6756fd96f3e10cab820a9fa68f1f232141b7e2c9426eca4899931fc30ff56f27b17d71ee9103b56e002301fac2150bae3a94605ad83c5f2bf5c4e3b1471bfc39cc6434a54b91de7ccfbc34ee732771db203926da7887b9668fd8b0302047c435bb50067306502301f997b5e1eff2cece5799b034c78431b43705f9e926728cefec809e17e07268ee0e142a1714461b14e623809bd27c37b023100e206f6ecc938c7358ef220e42357ddbb7eb44cf0c2af19dd9f7ceefa7a9d5573ad90c8555ae5ec427df905fd704b99a70302047c435bb50067306502307c131acecb9c8179f4a0a778c08b4b44ee758bb896ca2a591cfb2bbbc6d9c8a400da87f4668e3417192e419604cf681a023100cb588048c75ca384a2f3ac0d4d389d7b1db0c9466f68a26375f88359c24802691d8961ad7d6e4a251701bd70addd689d0302047c435bb50067306502303a929f66f1862ff97ceb73f4757e39b7acffc1b34cf1e8bc2f2baf6865357ed2f8d0bce250eb6a0782ea8b314b6835d7023100a53f98e6e833fb336b687138e5bb9f75ea4d96c57e34db1f1e0c142a528bdd18f000c5b6bf609aab5c01cd814401f4480302047c435bb500673065023100d314ea8b59c44ebc9c64e44c3b1823e400dadd62eac7b7ef1e43b3cb0aa44755b17a96b765031dae25ffc6f56f7fe2030230567dcf13da86f6487ad99c3a634030509b2b9f971e7b8754deb90946f8710dad173476a57e2d1e23af34a73d05455b8f0302047c435bb5006730650230613afd7fda5127f6d2df1de8263c89de715e0daf548ac6b6a825dffeb241904da2fadf4535f8abc424762a284868a9e9023100c74bd02d389d97100cb0ba74db67b951562204e4c9038f61ee0ce6f33f07f023243eb6356da6d924df688583be1cee860302047c435bb500673065023100eb47710bf236d07956bc7deb687cf1c710522507db18f847ab9d3251963625a3194c939e2f2d5eda370c784f18123a2d02301ce253e5baa4ea94b1be869ee8e66ebc18f496aa861d9791f1672a0996afe50d2e6d673967f28e6b284558d23fb991230302047c435bb500673065023100bc7597ea811ef745b17d6bfdd33740256070f0065acb6ba5440c236576725f3c8bb1a055f3812186d76c335915e5b455023013850c5237d776074f88e235168b086e388afc2f8917963da6b1e43aa52b6ccbd27b403d36bbf7ff43074794605c5ae90302047c435bb500683066023100d4cc8a2422cb146f5b3992be3da04981db08d7e9d14740b8ade42009f89e6cd88781df25273712ebdb39881c05ed97b402310098342fc2b1492c281a20b4a13e4761acf4981ec6901ef939bb93ad43247f27b4f37e4a377ae9d94d9d0e9716f27a268b0302047c435bb500663064023003a75758ea528da34454750151790fc7ebc80cb53eb17312fa089c6ddc2c7746bda47951de95c7773ed272f34ce6bd160230096e5bd44921df31fefa8355ea1a6125a68e81fc78ce9dd8a22196bfe7600cd5777c8f9afe6d85aeb0bb655030ab546b0302047c435bb5006730650230767b60405d290c931d499583f7c0d40056b1f3fedb99dd734e507fe6fe6f02ad32a5112bd7f9c20ccfe743f93d046836023100c7e4031ae08b07ddc6b0b61673eba5346116ca92f580ae7728964aa5cef77dbe34190a7387cb5922fe429fe0a8923a8a0302047c435bb500663064023030f17740e7d845be3eb3b18bd13607035f323be15902fa3a3dbdeb0e413caa5482a2462a17f80a401c0c820be7d163e5023000d0afb4e62880f246c373a6fcde490c43ce0888240c5a58bd5c10754fb056ca3d17af0ca37b3bf052b01d3552c156490302047c435bb500683066023100f7ae6555661c96ab39c284b43b4eeb79a86b8084f15efbd5891426f889b8790577844a5b448a6d8d315ba7085347bb3b023100c5fae7f4275f0a12c00772cba8953e8c9f3538580a817a28a04f731cd75abf965c139f240626a8383a70ecea8085af100302047c435bb500683066023100ad2e6923e42d5c56b96babd3dcb8fb5f97ea240073a22ce36cecd8069c4e1440e49f27994c762dadf31c91bd733f52ec023100e30e0b0889fbcd49f11363434c31e150815cc364b04e5d1274fecd72ed392a58748ea3951464d361aa3332012e9b6a6f0302047c435bb500673065023100cc338ea65dfaeaf4bae366ccd83c2dbe9db91c9be00763f12874cbd337fc28237f8ae6d0c0144e9ab3211f5934d4beba023049a729df0e33b2b26e632f0659decb65627f07661f15ab7dd825be16a9afeb53b668a8cbf72c922437fef1ff4d6600d80302047c435bb50066306402306b76212f60e0f1fc3e3fdd92b7e2d15753cdef48261912ca47b43743e998898fa2a1655b022ef6c6528f8f5c86d3439f0230449ca6ece6c3bd538803256e2b89bfef3e58928f9c6f4cf96e4683a7368dc82ac935801320cc9ab7d6beeb00154b9ac30302047c435bb500683066023100ed858dfb76b89c11e042d5bff271c0720b4b65e49df64597d6dbef410700aa681db02f57316b6f83597ad6a035efe994023100815a2296867bf2e861f3f0a3b1b30db48564e7707c70386f8dc746ab3cbe8f31e3e57916e46ab139fe1b0a6f6c78ce240302047c435bb50066306402302a44151d9dfcc1d4565078d6b3214a7409a937555eedc6a6def8fe3318db30c09eb27f691f6c83d0b225ba02e893885c02303ea5e27dfbe641e8a953fa6c1f11eb8f0d7ad4221ad22f7c62a237d7b63e9845b0e4cdfe0edac95db54f52c30b26cc020302047c435bb5006630640230576568bef8c7efd92adbdeb2db05c9110706295a9ecef3cecd8568856796dbb4c652383d72c14f47754875627eacf90b0230646b80a950e4c88fe052b8c58e3bcce4fd82fd1bad963083e949dd1198be890592d0204c66b8c6f8aade4840eadf43c20302047c435bb5006630640230445a324e0eb0e905c42662e42ebf90519d5bf1bd09d396c259b21c76bf598ef4e82e1bb6006f18655bfd12fee6c18fd7023027bd07beb6d07d64672b3f4d5f55d3a574aa72ce4ceef544b119cdcbf47881cea0611260fd15556a570762b9a027222d0302047c435bb5006830660231008fb7e0fa82fc5b4c4425dcb2b0912a76a2e0b7a8ed4da38362a2962c3f31d90c794eb979d3f915681f40debca74c5f52023100ae02ff7ab8541d6f0d242fc3c01ad7d832edb2158de4bfbb185ece7625e5b1d1250968f47c1c64b7e14eb0a3085525f20302047c435bb500673065023063a313db6e3e5b468c43b9f99188e43ff72d9ac90220a2839597c3bf759b249d3442faa6e4fd6bc80112e2fd1809911d023100cece46c765b6cd4c08bb94977262d8dbaf63efe17a4eaf7a346db2bf143ce1ad08f78a124d189977a38e2334be68276f0302047c435bb50067306502302c64706a1bff46c8781d7fd7804881428fe59e103ad35184c2b4cc72c54acd38653fff1be01f782951f29b1a2bcd1c0102310099cf8ce72630348ff4c4790a3556421152efc8d3c2bfea29b0b7da3d50187d24742961cdd723787aeffaac8664476ec20302047c435bb50067306502303be7404bf64689f9c2fb597d8e8509b83b5f692d12dde2349e4351e32d07fd7ceb2bc78923c2cb532c1a06255a3e883a023100e90e7f4a59630b88a27d0ca16b522e61636ce44571c95f5b9e964951444612abd89969ab08202355b7178465d072587a0302047c435bb50066306402305c718da8eeff28e9061634b42788246c3927bb7bc525870fce021b5e136a0c0a894fa723c7c8674478e0afbc201d95a30230508d340209a1c415541483c59932175cde4be57d7d27d3f732223577449992441c5a9df8071b2348257a80f35293d5290302047c435bb500683066023100d41d15c1143bd3decebe023b0b41fdd2ab81e6915a9a8bb131dce19751a7493c97b507806b83f1b913dd72bb700671870231008152770432671665e4fad6e68d94826682b11c6ac9fd1c777bd5331d1ef6da894fa95be690b2a2c400f2184cfc0d77d60302047c435bb500673065023100909762e44fe2ba94288c180d622af445e2777953042a2a20407733a0e34914a35d7f5d9e810160c982e5de34897ba916023072a76efabf2bb5a4571e80f2577e75c9929e77f905b717105482b5dd31d9ffe9a2461a9778ffd139ca9223d7b534b4a50302047c435bb50067306502301e3c6e3a6897621dec5aa1d41c219fcb743de1f02e2d3a3b749b5a47c4ad783195424c3ed8eddb10cb4d7d24a513ed66023100a17150f1a5d1ad131f7d3f58b447f2788e15de76c7a3305b8061ac9fcba122749a9dc281206d811e3c98af775b08c24d0302047c435bb500683066023100cfaf18c0ef0a56b9ff508008b531a3b375db1f957ca3687927785373a786de3016824c5b0376115ac9524810a1bfe6cf023100cd351ccf517308a4660acfb746257b2dcb460558d54904e57dd69f7c5710b608e015c510eb41dec493bb778b21a3d83e0302047c435bb500673065023100c1dbdc5cb3ea4ec3c866f9ef863dfb4933f075d678063a9ab5bfa0368a5903c0b2b5f66cf936fe691c1a6a92c62b3db1023016830d723e0fa5c266befbc1c1baa8db6576efe7da66fcf0336cdf463f4f9f46e5e28a461184366e54c4da9894a0757f0302047c435bb50067306502303433f0fa2a5ab613de4671b5e3500fd44de40d0fd163a12941d4b0b69a54f6f33946b016aec382237fc2b800b9b135d402310090789604e6d0547270734b8359aa1a01baedd64425b612f1ea9a1eac3c3e5dff1e084f2cf7fd8974996883448a2e4ce20302047c435bb500683066023100c322fe05ff863d0de2d37bc7a8cb5bca5d9b4a65bc5f18312e32d74468f4852afa4d21ba1385a1c9714b206147b4b455023100d81221f4145202a2a681bc546b90b38a9632849f0a352057fa8baa87af112965912c81fd4049481669747a9980cfe0340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008125db51132f3273c919146e50f394c208315ff40cfac57c1163a9a01cab11ef8a9cae65524e87b721fc4cfafbe683ef023100dd316ba0fcc82f6069d73ef95d9490c959da0d3f5afc3a8063ddeb0d39c769a5f0355d60253e4e5aab8c33724c04b18b0302047c435bb500683066023100c2bbed43239ca3df0bd3ee9051ebace02bd1dd05ce749a0d8cdc75f277c7152857edff90ab603b24df0929b704c105bd023100e45724dcf80a212798c8cda37d8d205fe5980e82e3dfca1f434a46f0df595e60c7ae8a4e935b2be1fd6eb39dc82e893d0302047c435bb500683066023100ca8fc04179f88ad818242a240a1fb055a6d4f94731112c785656837f1b8ae4746b7ab75b63791674065da9d2089d710a023100c2d0b90d305cf12abebdc88c60f9d7054c3a65fa94405c69a005217f588c30563db6c771521a86909e7760b8f5439a620302047c435bb500683066023100dce486f3d8bc963074e0b632eb50d14f3557073c306265d3608d45db6dcd6a7c9833e32ae934d1b09495a36435cd77670231008bd1683427ff89e76bb69c2a731ddf33e81417a32fa50834c6e78aa5400d2837bb846d8f4b3221cc79a73b681ae3e13e0302047c435bb500673065023100f72249c41e77a39b9283ea09796aa5e0a43d40f88369584e954181a1c4412d57952ddb33d8bdc119e01ff8833e94b45c023061bd0c4b47c3a918b4847811df3e7d6e582b3a881df90e20bd477db20f50f5ed671372d38225da2e54e8716a5c34af5c0302047c435bb5006830660231009621b4ca287d6aef804152bc886b8d92777086c0871a7b0a844947d6ea27ee3bf3d1f3a2b1662bead228784442fe68da023100a51bf4755f73efa9fc2828d2c68b12b3c34fc337ddcbc28c4793d7a328c59671535cf4d99cd0212123254f8ff115fe550302047c435bb500673065023100b5c11552df75292e00e33f8bd4a4d170d157c0a10f6df24abed756ec01c20792338a45a4c4ac96f95a98b4a7d558ddd6023064cd1bc5f4f3d0b524a06d014cb856369388c5085cada60980933109bccbc1772df0d7b06fded1bbaa2c12c3b35e51bc0302047c435bb50067306502302dba703cf59116c5ac8acf9ed624a17017e548d2e9ef8567838a8d321352d8724f372f018e81cf40fc8cbb01422110af023100e0ccb1b080176eda069f3630677d5a73c687c80c86582d99d89afc9755d4fc22231ac36916a63efd7b71716cfda818cc0302047c435bb500663064023027284c731656de8f48732186cd006875cc87058cce03ed05b591b07bd8655fabb6e8d64a7f89c970eae60be6e1a7904802302c02086cda32e6ef801afb070a4ed9d0bb93a303587dab422c4e1fafafe7beb963949d3e094872258a60b941d819312b0302047c435bb500673065023024581fba89038402d044412124acf7d061e1bdc04de0b7b50d630f13f0e065f92b05e972c3aee615bcb36ce6efc5cfca023100869c7df61d929bba6e6a3b34799a4a03aec380baaa9b00bf090eb128d93f18e3008c64bf9e3348a242ff198702ceb3900302047c435bb500683066023100feaeb5a44b10e7c98b02b924c19fae8abb553857a66f452282660ea0ad074ac80531a59a0806ec36aeeb1912c115a51d023100b2ba1b9c5e243fd81721d51384aec933515d53247f2e60da5c55af39281d93fd7e98e4f3fa688ad10a4e4c0652f2e79f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305de55c91716736cfbcc00def29702709b3ff41be4f7b483d9e89b98eaa30de649ce389facbe7b24eacbefa1498ac20e90230067ecb93d0effff0a1a63f8febde6e4a0c9eb2d373bd28a2e7730baabcdfb651e6d56a44ffcea8413ad3f0c52a5a77a30302047c435bb500663064023045926da7815691725a013f6890418b28df3c440e84e39dd60cb0ac8bfa676d7762c1bd82610be01bb6a10c39623cf489023041a07fe0725737d37bafc90d27fbde1b409a07e26d653cbcd465d963c4d13b49496c9ea844d54e210707fcf7321684130302047c435bb500673065023045eab7a34910d343a760c2a4aa7ff6411fe1de3f41b31d8b63f60d685161d3569cd035f0c446b4066c26271f15e9486c023100e38b210b72375d1575c5021888dce7659f71f27fd1a1f6ca6880209b923db13723ed8c18d0513c8aa8948e5a5d08ccad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230782fb7c70dad5b8d1dbcd6e1804410c0611cc5e3ebaa14a8822ed2eccef23bb42f4206408706b59fbfbf313fb02f00f702303367a5a1b42f634e838c46c964641b260ab730c59cea7d76a0199c9d8b16de03f106b8efbe14ff7052ed92e88ecabefc0302047c435bb50066306402305ca750ba2dfa30b24ad8dd5b242ad373b9a01e9f5c7c46c06a4fdd340d55146db7d4cbce2756a69b0ab60a62dd62d0f502303b13075cffdf4dd94f13738baaaf3570887ec739ff3e7f777332bc0aeb894ff47c43c57286add2e7d0e9e2b16e26f8710302047c435bb500683066023100c252fe2e924b149bd3412f4d0cb02a980948a69f16d1916aef5cf82b93629fe4b95884cd414e2c3228dee3a2cf944748023100a0421beb0d5348bfc6fbbafeab0d181b03393a6f02ad2339958fda326fcadbba8f1c1ac95314c93463dd82457d27af770302047c435bb500673065023075d329a244a3dd7453d9ef4dae2e0c5c27e05d69f01fced420c7728b4a1e3fd88258bbe25f4565ae7c879ce69a84b51f0231009471b44872e9b26dc1837ac9255da2ff44c895a517673687c791b29224610a89766a6806f3059bf22e7eba81bae233f80302047c435bb50067306502304a253655471b61a47185789e7ecba86bdfb3a5aa073e346be646b324b46f6cc77a163aaccc2e39302108550ad4836aef0231008d36c404a7b4b8e1f767d7a42e9eb479bb27c2e79a0573fd3c77dd9bff3fb8695dbdb8f2cc78fe8c45498d7157e6dd4a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301db017e5507890611b738877b54ef1625fcdd9225e93c7d33d2dc8f664d4e3924067e8fad210b7fb67156311384f89d4023100ea34f4b07f6cda6d6a7ef82eea98da5f4f23a4399a93629d2ff5d378738d5aec71f11c7e63a8cc1a816f0defbeb336300302047c435bb500683066023100cae784361e12bc5556f5599d01ab2fd71f238074029ab766f27b75835b09d802c86e6fede7f1680224413884b888d28f023100b5e1313727527658c66015cbf122c8c396d6e902e66368928ae9f55f022ca04becdca747486dd8509e03675387c778040302047c435bb500673065023100b52d2d2708dbdfc7ef6df0be8dc170ad3f669dbe2a79ee6f35f3728ba11e1ef1eff8bcc24e8039116f72d577a29596250230343f5c8f190cf29490fa7f2e3d8064d4e86f03a2d62fcf370e6cfff1c453c5ea2ac585bd9f94f4817c64a03663b32ffb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023003a5be8eca17752d22ac3046cf1404f1f09bf99ffb3309e1206a2b8771efcd6e3cc2bc806adf7e8dfc835fbeb6ceb7e5023100ce7667b19fb2b6106f0a8b96ff72d791e0fdc6e0d100d26a250e53b10caf0bb2c72a41d6ce8284af8ab04b76c193bf1e0302047c435bb500683066023100e4d553f225b83cec40f3ed80bcda2482a5b05e890f6694d0ca2646a679c7c7a900c757f34f8733812a7838157b39ad82023100eac184118722568d5e6640336e75d2f94534af0b9edebf4b8ed2d2dd89d8b30aa92231e8f84b1de46762fe4a1d5eaf530302047c435bb50066306402300952690c5cc4a9e02ddacb692875eb51c87a37ea0b0ad1bac65997991b99f4b57939e75bb082d43313e78b2e2ae6f46e02301f1efe7049efd166cc0a59261dc2be6074006eec2dc8fb739f8309060a8c43ef849e1943cbf63f61c50dab8017ce38510302047c435bb5006730650230189617e0b5ace55bb6d586d3fbea8bbfecf5201de7c23a818b9a5fed553cc1182b1121e7c2d03878c1c60176427b5d38023100ae4c636c84674a144eff03327f6d0d96c0117cfc85a63ddfb504eca001ce086c0bb1d8b57714e69e0c3831f5fb12f25a0302047c435bb500673065023100ff6495d898395df4555cfc4c0984685f55c9de19ac34ef28a4c6646f4f45c72091c1f852dd8de5ca42e821696f7e319c023069831ceaf55bfb471f4a940175de192cb1150ffb0bb59502ce5e5a5de1487fe5640f8f1c862e1dc1f21a0bb577ce8a530302047c435bb500673065023100d04e8bc33bd00a6d6b5a6189d42bedca37b1eed202bf875c5ed6a6515bff26f99c34170b6b16c137870dddaa6e1f5e6602306019158fb6975b00e5539e1e9a7411a1c96dae7fa061bf372bfe103de335ffd8206f7f97c88061556652049247d890860302047c435bb500683066023100a3fb67a3842787e8c4e6ce31acd19cd70133ac4cc7e48e84249551085fbcce70d8a80b2a73099c52f4f4de6f021b3a75023100c50d98bee3268ffee76faa18209835e349a58a374cab27c0c17f5daac8fb607289cd4386b935417315abd063e03bfab00302047c435bb50067306502300cb424f24d96f57eff4108c59c08c571bbd78637063f41142679db1416c297056b8a9d9cb28ced420a1c725d9a96a350023100bfc88c8d0ec419ff9fe440469c5adc91765391c7f6c2d0c006fee7161151e28259fe2475db7dcf87979cc86ca5d0ce160302047c435bb500683066023100c799b92529ac7d64e2cabbef4281f7aee61d1b9ed3c47bf62f9d8aa99e25791e4418dbbfd315c1a036d2a855f48a81c80231009dd94858090fa6d6bc2acb4f97277038a0568aad36f6b141bb5634be7de8d6330dfd88929ad1d3e2b3f8f11f398754ed0302047c435bb50067306502301bd590f139cc0b928c9400ad5f16e0fbed39ba9116ed91d8a96176a1b1943a24a4331cc1c9416bc991d007d9549e54130231009959c1097adc0a5dc70e844fc03752344295dce9ccc0696a062265056557d58b9f5570bef261ac8d5beb1dd0df0c4ff40302047c435bb500663064023021f7de6532fd07e1a2f1542ca2b1623ed8a3bf49d312023c9bef53f87d5a82996fda45e5d038b69ba63f5f491617d5d702303698e5df776e06ca4956c85475c0e80d50ad9973963c4f09880b7f9b76cdfed580f6c7804327e9132d46bad2cd25aa480302047c435bb500663064023009b36fb6dbba529eb1e871cebde279f800fd16f31fac8965fb8a923ebe7e7f86068c76c2fa7ed99c49184ab6730b0ac002306d96ba748be6aa7c543674b2bc106b5f405d389c5cfc52a4c2f912336c18a81b95aae2f370f7ae10785382a815b3fbeb0302047c435bb500663064023023f927ae8c055aaae6e7713266856e15cc06e561a81e9466b42a570512b51523527f8e8ffd93ded50f5584315e9cdc76023053d81575435100fc97bd16beb2b18f4a3d3e9abd49b7c8be4ea14f0986ddc18c0778056c117c64593bcca4e67e358cb70302047c435bb5006630640230174e721e26671ddb10c3fba0a5b9bd3c20a479e262237f45e58d73a06550d52d552be0c50a90582ed0d46fe0a68c1b3602304e4c7ed6bdf48f688fe74edb896f7640b2bfd5a80f7645fbea357b5ecc5260765d5ad4dd5fbdb6e07a4f8560344063db0302047c435bb500673065023100dee8c2da917a349f3177435e0c4322b94efc677f4487b38adeb9f123c1d06a4bb917f49696f53dca9a68cd15d0e89da102304afebf429332d689a14961c8c2e144710a7b2ba9c7c63faf9a42bb978994edab20a4320c45ae3a4c9387a4c84e6c2ef80302047c435bb5006630640230189a85281b5f950d21a09837aaddf3329d722a3b8ba1656586971f60cea56f00cb020157669dc80a285d8e21c61c2bc00230035ad5c2164c0f80b0eaa59e112da5fb0a84870fd84626761f0afb59e51518b2812931dc4e80d71a65afe8e09b32937d0302047c435bb5006630640230733cc2bddc61410e90c8e9eccbfd02666a471f36b34999c34afaa19492791141472442bccb8c47a33cd202a43dc21e1a02304e9132ba41638eaac247db7762f60ec22f26c683abcf9c7c19162915a9cb858bbb6a400df4b78c76503501f031d29c8a0302047c435bb500663064023058d0d742ca14f3e56c20eb3459330841d0672fe13942406ff5c79cc69a0f0f179fa86fee8d3ea3ee22986135bc6db5f0023050a0766ab8acc4b9bcdd2ce956a562231db4d668a54e258e2b3f9d2cf802ce9fc0d509c9c5af09f4172eae223caecc040302047c435bb50067306502305aa64de71c66ef77a78e1082b9f1ed58a707d7d29477f5f4c402371f3c0eefc8740733ed97dd033c5de6557739cae3cf023100f9eab981ca9715c0e2e5c09cb4d35af8053f01eb3f74eda5bdc0c0a78447e6c1f635eda372c1ac9b2c4bf10a7cd977dc0302047c435bb5006630640230481559b2c4e9159c98015d2b39673a51ab99010529cb63038d111ee3855ec43b5694b4533548922772ca807486cd373f0230244d82e20b8ea7d052565c25c745be604e21ecc0a8b3f8516707400d9c274c813832a2e2a109038a86e64fd42cd4e9250302047c435bb500663064023055d7a26d5370373e2446909819d06f9e30c2d0dce997d1efb61eff30a0afdb24b26880d04fd1e347526ae992fe91e3e302301d48822051b8d6ae3360df3772afb8ddfaf5e99dd9574980abf42125584059bddc0c4d518602a6e01be58ade70f2b10a0302047c435bb500663064023003e2a9f06944d281e842a46a5d29709bff68ad95dab60894b715037de032bee3c14414497a0551bfdf795052f7e56775023025d8b877971d4bb08ab54c8acc15bb5f486452efa2601aebadc75e85d87f0a067fa0c3cb6ee7c73143125f9711efe9ae0302047c435bb50066306402302e26a32c4e9a5d0d12272725f2edf74884764a64cc2fad31d42c8009d011d6f5d92d393325cdaff6e363b89835f36647023042ae6f9b6f91cda48c11e135f1636bf44376ee7cfbd2a3b5355533fcc21827894c81bf49a2a5b6382583238cf29f50f10302047c435bb500683066023100e68c4fac856fc5fa8a8c4a10ef63dd91256f28125b2ff9ce0c6d15cb1bf9a5a5d70de1ad58fac84e86c23a770a2a1b42023100c8ba461f5b4ed1b5cd6f8b8916a5ae88d4dd470118eb15f913c7b062d2467cc4e8b21c36233fd291ae7fec47cd7bb23b0302047c435bb500663064023038127939678876bcf12952731eb3c36be05617132643e33acf347d0d35dadddc6a0cd2bd222b2b8845518c6a4d83788902307a1052d7abc4cb0b5bc4b09997207fa92b8e0201d81c62c349dd9f634e9a935e80768ef0b24f065e5a446a6c0481cd3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300be55c2b05286896cd115800223aed818c78877403df31c50cb2b45e368e27e64980c30448dd4422d2491b7267c90d8b023015e1e6c3106d83fe21ae795a2895db186f98d501e94db6bd4c97abb624135cf000f334400fbf2d7b018cf9d3754b73bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d10763ea94b4875cedfc9bc94a10fefaff9ff0c93132c839bb1249c5dd024563619da6038a6db38b85f25b3e7456bba3023040af620e1bf6a8ce478fdf45628207b8c9f88ccedc3c0755080e4cd5852f84e345b46c81e0d827217f287f057973c8580302047c435bb5006630640230341e5df1a6a9618e4c5b0b6ce0e183e1f1b627056f40b2d684218ce84d22753c7898093c4357b532da703caaab5f06d802304b89d5d8ddc4c6c4933a899d76ad33a55f2b46f50b9f5008a5c6c8e52480666f6265709fc2e71e3f3549100002debb8d0302047c435bb500663064023006d73f72cf56fc98bd96ddf92520b94bf393a7c70c32f5fb39fc915564c8cbeda57dbe912692b6fc62bcb81064af3da002307d5abce8ec8674c1328cec702c3e24d6a5b4f2bfd2c891bb642dd2d7c18d11d8e5036dac4451a3fda562c178ce71bcb10302047c435bb500683066023100c0c082194ed502daecb51e934f65e03be9fe9c5e39b4ce169816633ad3e54b521704ebbd24c76f855c3f27a7af2e9eac023100e86c6a328f0e0330dab868a52c2a5f56eb1fe8fae4a12715c8b2bc0301b7fd559d47eaf0102464b8dabd4374c54f4bfc0302047c435bb500673065023100a58e806ddceee5e423e373c2e05fb45fa81118eba489e9afee2549896aa72dac3497a219ed9bbe9277feb8991ead225b023056e2d845d502b5f50219e643d5e7f37fcbd19197aeff9d460a64c38aaceeb65bd3cf926e1f035deac8a979c104c679c90302047c435bb500683066023100e741fde41654ed08866ca6229ea1af46211895634a0163917c5281245141eb3821efcc900d1d7cd729ae85f3286196f8023100a8734fdda7ca9fbff119404acab7027966f3040526f64fe1b600130ec102d17dcb4f1906500890048e5a7ede5ec62cb30302047c435bb50066306402302a1c98dfeee99d9c5a3e13da73a31c076fba32d6c215ae1d03bcbbb05794a797e71a94467eabb77e07bc4d60df2bee5b023054b28146b0019c415bcfcd098fd0570a11be3134ef72821d5e3bbf5b0c1c90bd7848415aae72af090a1d0f0879edc4aa0302047c435bb50067306502304cd1e00d9d2011a5e603deb8e3872a97eaf9c8cc5cfa2b69ff84d05d58b96d2fbfb888fc23d64856c9ad2c417dafbd1702310097e4db147a99bee18dba3cf72f31330cb31a31260df00fbc220205bd45f9d03c555d9f900c7f58e8415d79c020f2b82e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008ac155d21e8ea3dac9b8e3afd604b10ca1c1a0c5024df7bb429e66046f040cc219bcebbc734e0345efc4f5e5373dd32f02300abc2ebb9ac49b63468713d898ae54d7702e8fa78713d406a5dde396d4fffa583caa53df6f6bef3fd0172b11b91a1bce0302047c435bb50067306502307de66b8da790478a523758fdec678e810f50472294e385bdd4977a122ea60c0fc351a7a72d0fdc34145ee0d6cc820a3802310090f2f3e939b65f5e7ce2a23f0ca45adfcbdf4728bdd075b01c8fb1bb1cd9e8052ceba58145f5878896c5bdfe3ccea4600302047c435bb500663064023037545d15266c5d44de8ebede95e0f3f80cc5169d64248d76a13f5baa60d435d5b0a27c104367221171af0ab34c00bd88023059f0cf236ccb8c8710007211bac57021ef01545c17fc3442977e4dc9c0a49c8ef89614c8da5d3bb96153a243b90c90860302047c435bb500673065023100da0b554bc47f7458eae7d4e53c31ea53180e987553cb0a21b96dcfacfc8899a9e73331e626ba7bf0b44bf4fc41080e83023005f8c77d970e7bdda3795c9a548a20bddd7c0e66aad6d1bc20ce6c781b9c21b3057fa158b4c641d7d9cf2deca66674330302047c435bb500673065023065c65a7ea4ce251d9becb6d0f0f8b09f02a38759ec648771ddfb3f5c431f604382b822d91c22733faa988e956b3bc1c0023100cd04824049fa75b70051a733c1ae1bd562ef9ff10ae9d361cbdbafb7f63829ced39d20ce74b527c47eb5025f4f53c4a20302047c435bb500673065023100e4d2880372b18cec3fb505d7dff8a4e21e075f44b8fda21fe90ac2bdc08e0faa781ec3616a550fcfd8917f753ebcb72a023040349ec262bf322c38f6ca6574ff24c37e6153f77f323940f53b11a146ff6795ea277c690554a98b86968baf55817a030302047c435bb50067306502302dce8ad85b16c3f2f8c7c6cf053ad00105c2b26068e9c8508d51603221802c88fc254addeeb6ce84aef975787528ee4502310081ef10e82d7c1116402aa2100e2cbd9d0f01e4f20e4af36193a0f1dc3f3b492fb0c2ac456d16adf177e445512b6acff50302047c435bb500673065023100e27e9226eeb24cbb4423b0d0bfdc473f821576b93487d2088eac63f26cdc34ce5dee69950af6f8ab94f748641625b7d2023058d2a5e437d1999b8f5567e73cad8f565762500a6be2236f69acbbafafadbddd240bbbf65b3a9b007d7c2c9c5a11682b0302047c435bb5006730650231009206294e94cbeed414a84d0ec3fc6dcdd656037376a2fb32769de478b753b61ed5bce730f2db95a8d63cf0f81307d4fb02302afe6de7e06cc162e56ea72472c783c59b12ee58ee2c231309b24302206fe315563b60715c8bbf62ef156f434b87a2800302047c435bb50066306402303de4b9ecbf1d71bf90208ab104218e6af6186fa52a4361effff37d97f985d6b0505319ee5307cbcae08081154bda7f81023066c88ab8202632c649212220c5ad20fb64a52375b3c06b6727d4d910c189c22633b412748376fb5337984b8364f416850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304874207ee9b74e4e3e3a59dcb1c7a659278e2d1f9243468f7eff9760828bd5849ab106903bb4ef61f87a3097611233a102310081b7493ad3956a7bdb5e37912e40edb6a955b06d9ffe5b3b50e1e3265329db9f73946a817686cd424d40f575a560272d0302047c435bb5006630640230406e12bc13e7f7093530335a0f8f33bef90de6542295fb0dd97f604fa38097e8ee874e70840ca8090b35825eb48192d3023007e76fab3784ed1320239a785df4fae9d72effa50ca96b16df6d3900e48f81489a749738950380af2277de74621b28220302047c435bb500673065023100e4a7097f5f7bf24b0eddcb2e0a625c427e85f26bba66b46c9431cba589c43f585faeb7abc2663c42b4dc5af89a430b8a02302d7d750ca48b913e62f4611f7786ab6e3b8986de6e35b474db30e8d01e2a031845f74f0cec6935be39863eae95c2310c0302047c435bb50067306502307bd678c9b8b5af1d83cbee4a7c7be2897f4ed2f1e347bdf7ede7f354d089dc4f97c9734b05bf84e05bcad33238a7ae66023100fa295213c7e4e265a5c3edea633ebfe088832f48db5ede02c6b256cda0d2d870316dfddebdb6d42583492514b5233c9e0302047c435bb500683066023100f339fc7df257aabb290e9a596b0e2a49672a678a9a3bec1034588a96d27ff6f8d4bc8680170f95bae23c36e1ba6a1de1023100b9f7e07b22308cc63c390b610a9a6f7251a03c96d633dedc911149d49b2a1b0c07edbefaf39190296adbbea718d9fc580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023068a1ba9362215e159e3d6ea87729b6c4191adb059bdab174cbabaa92204fe4ba4d8dbbd5311f804c34e971d9440e5fc50231009b136c725bc474c0c27ffd4c3b29be3956e2589b08c1e21ef5eaef4438d5c96ea1f88be3dc880473e1a32d95176f55da0302047c435bb500683066023100c7d8908cb212469af61a62d512e3ea4622fad07ef2e71a791aa4bef04be001747757d9ce0c989ecd7808f1c4db1c6974023100fafe39e507de6b7223aa79f663e779d3e36f96a1cb196fa6cc4ba6336560bd13c256bb61f123d779fb829961d253f2740302047c435bb500683066023100e2184b8fde678a95c7b4daee38614bc065f3b43299e61646007f9f380637777c585158fda67894f891c20c8614ab6210023100cee694f79086f47da18f6ac7c7583d9d79ea161e9c0664a5c849d57220f4dc6c82a3399fb958e2cabb6b1d9b28be22160302047c435bb50067306502301089773414a0f596c2363330e76079a6e1fbc1b3ce0ec03097ab04e37ea58bf2017d519f238b84bed74a6ae53775e712023100f2a5d06ccfb77d485b1c0cf65d9efee506259550f880cdabd67f5e7778736560333fde858050ba47143e839d504337070302047c435bb5006730650230700528554940e39f181b8f18654270ecc5d6dd5436d08aa245158da6b56e3c347ce6322d1432d926fd792e6edd6a592a023100e792b63ca52d099886743633fbf011383bcc1764cd969414d6af7a6e28d01c600216f9f553f07364c8a46fa4b05860880302047c435bb500683066023100f678b279fe1586a1c93691d53c2d2341534fffd118a975ebe6e73816f6d4c3816a4dc98b4f715155a6c5e14f40d9534b023100a090a8860de1bcb228c5acb2be2ec9157bb905030c4d93787938be5303fa5320866bac99d9c16266dc7b3a864efef0e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230714095c60755fd417214108571525be0d34d162f9f8adc551a9f65ea74c3d03391a94f685e573b979b03e9e515da3815023100e73acbcd4de5d883c04ff171a9666008c2275d1846d873df3a45fb7e456c580a6f374ea7c36daa507b24442d7e10ae790302047c435bb500673065023100d07b3efffb06f6b979241591facc9860992c0295ad9d521dc295105c13e9e317e8def3a9857e2cb93476f5726d901c0e02301dc9e9ace80ad8a175d2868d2ac7b7fa5040f9ac204e84854021d0aee90813972037bf99840b9bc53b5ea50177060c0d0302047c435bb50066306402304e88d90648aaf84617c3ce06d295b488f7890d0f2fde429db9c2dc08aab1e57dd9130bef59a3a70c25cc4f8981693e0602302e8260f43f0db699f3a2fa66940f3318778b73227341e9181501578b5ce11957ac63ceea87ce004047248d49798405eb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306d730976f4dfee51e8ee188d8fa5e25327f39d8cf7cfbc48ea6e38176d7abf8900cc9d80dcf939476ff4caf2d2dc281802304214deebb8ada6123fe2f2aa37257ef3d5c0715106ce52c98185b302c68e190194f187b94267f2205031b3ac93c6d73e0302047c435bb500673065023100bb133c5139f8b2f2ed5a1fddb59a68b0e8ddc3b7a156c77d6bd6a0dadaa97a6442ade55c1731ca0004843ee5d5f21ae8023036d650c5176905f52276a3b9c31808d56155d2cc1791f539b6f812d298f1604157895f9576e69b9cb328308d9ab710ca0302047c435bb500683066023100bed3a3c5fe436a06afd36f614618c19b1f0981ce5f47ad77a1b20088e3f3fc50dfc3d4525c2be62d7c43ee6f527690b30231009037fc7e0f917a95e1d61fdc6934c01f3ba866003a9c9dce03e2c1024de21ec86dd9c8b51d318ab72d84192c551235c20302047c435bb50067306502305ffe10aa569f7f17fb2c793e5e1a246444e824f25c0f2c4b28373d6b758cc62a3a27a7ba5fa204c6019ab729ec1a0889023100debe28c7020c544b5378dcb3cbf81f780b084778b930786f6d4666ef9034caf80d2b4a348d75c5f19506f3e27d5bb8230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230127197e15ef12620ae343487b771b9b3c7be77e09dcc6b2cf7eff2b9ad4782113bd7930ea7a6d043a5bb51d458f170eb02304a24ab54b71ee92a41ec956a386a73a13cd32f7f54078894bd15185cade78ef248c1da53a688436565c0ae9b2e463c410302047c435bb500673065023062deeabeb94045e0781489ce82c6f1058a7a6478972f1675d5e90e9a0e7440c8eb8e1e9c058dfa984af4f039305e9350023100e8a64fde56dba716266296a80f206c42f8e1edecd0162223eb8bb58069a17aeb9592a0c3def15040b22e9995d988fdf30302047c435bb5006730650230469824560fb4a50f787bedd593ab61f8717aa966f417ed3e503635d34ec38dcc1a3763dac8be944bb82ca7d5e6d64b40023100f2e12ba886146dbe77deae1b503ef09cf9ee8e30d477098de102ccded2105798f0f9ae25950e772979dd2415c9908b8e0302047c435bb500683066023100e61261c6189d5a47f867df54751c00b90c85faace3a0d36b8e8c70433adadb9e2a07d12f1c9d3e24e52a7db217eaa074023100f293d236b12f1ce65215042a381b2f4adc441b3c50b3eec58675a9dea5fc673e77ec6fe6b78027a19da731dc8e77435d0302047c435bb500663064023100d2a9aa8e3328962f42ca7bc5ba6eff2e8bcaece1abc5a925d6dfe32be51149fe2fef7ed71b8fdeb8fc51bb1ce2d152f7022f33e6e33a4521e59ee3351c4a65231f64b5e104a7626b790c105c3d48c54b245e2b5d9dce3d0765bd4228a117d4dd7f0302047c435bb50067306502302e6501d7d4de58c88a2a0bfdd4c9a53faa373b3810b369c2a8cdebc2688aaaceb7c14043b1417d4f3c2e8fa6eef73905023100cb7c24377ba6ba99053f4c556226fb19d12da7ce4af52636fc51dcb6d96666956a6a88c77dadd8fdae253eb75ab69e520302047c435bb500673065023100d1cce39ba8cdffc574e56f9ad06ad42c548349d060baef93a1fab93e3ca347705419c299f3b58defb6c749ffe5c62ee30230707dcded71311ae23e88f678469ad3dc1334ffd0d2d824c9cdbb9640d82b3fed84dd4f8ed05dde9537bf75ec6e1988960302047c435bb50066306402303731edda5bad6bd027c7880130738289eb92c00f4948d0b3366516af68b89ae080c2155fce553c5d7285b004d718b0fd023075ae252fc329379a3a9fcd7863c9d4b8bd1be1aa5aba9281fc2f2d9ffa9966f1c5de65b73e4688d65df8ae7589fa8abd0302047c435bb500683066023100f69caa802949f9606449e89ede8d1e6df35edbbb98d77834f8825870c5f5319d995c50fda432a07b14ac9d7a60b0413b02310090a70e80d24fb1d705252504066d3186435258f34eb616a60e637ebb4995dee98d0400c97787abb139ebbf6b58c305dd0302047c435bb500673065023051516b3eae8fc535a3f35f6ddc92da063d4632a433d9f8e15a67110671d64dd9869715399d6f5076a0e45ca4f5819ad70231008f847a63f1f2ce61ece4856c61ba241874a3899283f23d1f2fb6cbd3bb9d32c43031c48db5cc4488b0dff034df8d95a40302047c435bb5006730650231008f3fdf8318e13e976c1738ae819c3d632f40c7d2cc3962319e9703f2cfc34ce9ca20d5e028206d839c9bd0581148340302301d66ac386454bfa2601b3e4dc52f5d40e14fa668790f9a10861e94716a603214523f9bbbab914f8e8b273a00ef568f840302047c435bb5006730650230442f94969ca3cf35012f009fcae07a1245e25feced6bf44053bfd82999d2b964170cb2e4f90095be7ebaefd881323df3023100ddfeba64a3d4dc423edb34bee788fcc9489b6e9f64f0620a27cdc0ddbd3c9bbba5ca3cc1959d4153a99a8750e2be66240302047c435bb50067306502307f0e43aad0baca8a73b1fc541935d11e3c85406c62efd5b064cc86d47b59b19415ac763e3c81ffbd34c729f2b0adf81a023100cca412e9ee5d9b8bbd68b1e72d9f85ff01f77f1c1f5dada5017a2a2e8a1fbf6936e4610a95b7a8d5faa9f077ab59d4a10302047c435bb500673065023100bda7e954dea8dd625b82b15d69debfad754f2dcf0a74c0152c56929df58a62dd28e7f3d3475cf4ea72ae7a1de1fc877c02303eac2df2f435bc0df80fe522bc2f7a585adb260bdf8091cc3f1e4b380159ed424e0887d7494e1d877257ebf79c6da00c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a4bcd9be7fd61d0ca31299a3e6d3f4a81144acb2559fb70ea46e8465905d9b71dcc4331bec42c8e573ffa29b6efe4da0231009ae85cb060738c139943c76e05a1d5dd71422edc7406f59b403ed4c016dc671d72ba1d4d9863a6e3403caf3d243bd5c70302047c435bb5006730650230507351226d4e8750ee0f3e6d54989f5e213e90efb9a452a1e4fbec9437b3ef70ba91179493cfe2766bb7182ff255e7a502310081ea97e905682825b6e003d6fec66235ddf78ce3b04368f99602b0303e36fb7efd52344f0b659887a83653475726177e0302047c435bb500673065023100ea134bb841743b3f52c1e7951f37004371fb2e49a9577113efdf37780caa4a75dbd05aa63afa426e391eaf5b55107e0d023017de2b0fa842576ac43971a90cb628ce851c2e1351226b239840ebe9f591ebb8e0c87ed6026bac069afd299313cee0a90302047c435bb50067306502301ff8e9c852eb4ec61edd09d6cdc97a756ffb731dbddfdab5b7eb2ce7f7410f67aa0c4d85ba45cddff606d7716412acf1023100dbb0735583161689f475fff17d8684ff3c871fbe19a8e41e9c9b42efe2af939fb9c399d6c3b19dc7881641ff5881b61a0302047c435bb500673065023021d78ab1fbc616df6c3dfdba9ca5fb47431b19cf8f2f65495a8e9b3725bcf29549df29a6bbe4d5bb3ca4cf94d7340e030231009d8e8dd8d1e9808c818aa0f7694c998ed485d01b193965995e511d489b6112431e8a14c2424c42b879e745f73c9078b30302047c435bb500663064023007bcac7219b84a63f073884d778b76976138acb1c9bc691619c593b1057620b01cd7d6fae5680bbaf4b1abfd22ced23c02301057e9b555f805815d9a1d559ed7a2b1a77cd87a8543d3cd1e6f09ac03092de18f9adde896420c579624a6c0c785bcc00302047c435bb500673065023100c740e4146ff812666b0b60a342fa1faf3332e13c588af16cfd85a15c46542f60609704ee055ec6ace72801674e1d8cf40230330343ae3758aa1eddf7566c05a4a39151063e3a5c3f5809bb12ebab443de9b6d08ce86bd279f4b3f85bea708a83bf770302047c435bb500673065023100eb80d84abe91ba4337ae1b32c39816b9f4be8673bb0ca69c1a41101fc0f2b88f7fc9578c5205fcb6961ec868ac1754100230622a993ab450846d29857e1fc8545f2a021dbcbd3a86b03b9a6a86cdab8170424bdf0b0ddde13b5b892f2c2023047abc0302047c435bb5006730650230186cc960cff38f52b8ecd038a29be480d487690c2277caf02345530eafb962514ca9bb8eb303f52ac9bdc560c8280a32023100f01c32d2e27feb308f41470de786d7eda67fc5b464c0ebcbd9f8f2e3b96d30042a57ade44a72cfaeff5ad6253f852a8d0302047c435bb500673065023100ab8869997ad04f81812f149dbedbbfa60bf7985f6ddc79551d3b8253f808b453822bfc62bc3cccac2636b0ca2f43fff60230313f6856d42b27808d645b34d80aa800dac4bac49dae3c194c3751d862686d67f1afeea4b49467b477339d0e498eb8ec0302047c435bb500663064023049df7304b6d8352a38e102bd893ab1cc184ffb64f193a26cad600a4e5041e2484de181124665db56aa5d06845630c65f023050b28e38600113fd5e3a9a39fa0119784be1299f2c03a91df974a83d1d048404e2a28f3725c4205c54e5213a4f6e52200302047c435bb5006630640230304e8ab55fc9961cc2f2a546f938107a2902928c6a0b4c5992ff388ff915b1548cb95300c399986ba626bcf0b574787c023008ab8d37d2f3562ebebd87dc4b2682dd7d062b080e4d33bf9469b079f942e0c41cebd91905d9c219787621300b4f27db0302047c435bb500673065023007a837be3dde7dd709c9cdd07d7c54baf765daa94d543fcb2e7526659f9de980025cced5911c7b4113abd498c704b54d023100d6e745dde5f027a6e42e13fdab4bdf33a165196fd8579e390e82f44aefa6a0f69bd601de612c0464113c8035019c27d70302047c435bb500663064023022bb9e54db010dda2fee18586f592cc8bf41ac6b0ae592253fb36490a00dd7b0128e85cb44d78315bc4247993d8ddb8c0230340306892916a78695e13c8f753b0eaba552680862b0ad59ec743f053a27a77ad8493cfe2e4caf5c13257a10a3629c870302047c435bb50066306402307da1eb6ab1f0e84f559bbf57ba89af6c2992908c61e6328121e8927880686108f6e370aff5e88aec97fc614f426ad4780230250c94792eee355a3bc765c904ce42400b099682676910596696f821d073e24238331b678cbdd3b22ef0ff0902912c720302047c435bb50067306502303b4b7f103cfbab9f2e71a22ae468782c39a4ca2465e5e4ef279ff18826357912bede8ed1b0b5d768a60810a5b5de4744023100aae0b738479dc41549ad924be7aa238d648471a4fc488732fec7d8ba41ed4c3f12a594cd3ddce78f844919472d5da4710302047c435bb500683066023100c702ec3808854759e29ed4b9c5387ee3d40bc66cae34e53211a74b5af255220a118fa117d2ba846780796851e63b875b023100f7f2d5956cab7bb81beaec1c216367e90f864eda72239f263df1c12d0177c08467a803c0482a9b41200192ad92ac3a740302047c435bb500683066023100810ef44efef4d9fe2fcfc20b75cab67da80e4bc6e97550618712507e62447781405802a6332ea50183fd9e008f1297f3023100c0ace223586f554236aca2dec0ea9587d472fcbf7e546b68b83e4eec57d3bb3e9c832251370f4fdf3245f4e9611cdc740302047c435bb500673065023100b809426690141d02a84f62e63aa6fffd09790be0e909917e6c7772ab81834967aa9a0c5acfefa09750b77d738433267d023075355e7f67a31d3ccd643d1720a1896d94929b26fe652b633fb289decd0b3eb8c4975242863474ac24405545b569e9050302047c435bb50066306402305242a902b63a9589e11bf93573e3036dd312aac38e20434d986719fb2df29048b4ac5d36e9abea2e90f00e131908236c02304355cb4a34d5604c3d7d02c251cc3c2851a70dac1579b67276ac66698911bb01e270f3d0cec6b8681054379215f5233b0302047c435bb50067306502310080986fce499697408f65d56b13f33f7689a441cdc472b3c2be07958dfd31e7cd56047f5a6d944bc3d6d132534864ba2f02300d25c19facdbca992515e94f137a80cba9b39f28e1d1677dc8b3a611d3238a674f481b706e4a2fdaaefbd0336ded92ff0302047c435bb500683066023100eef2d48899edfb04a70cbbea793bc088cc6868b2870fef4a9ba23004cb6315e4174356e3c3ed35bb0188a4abe4cfaede023100a7af4c6b6348bbbd51bc2fffb54251239932a5b25c2ee9073cff9e4bc99a671f111c22ba3984f86b52a9b6884f669e900302047c435bb5006630640230567a9b8b34bccaa9090895f4ba070e826a2e832995f799f60318c573bec967f5064acb591108ef80bb9592e480bbef6702302d3117370eace78413b5e095b951c87339a650975738a9549db57598ed086b13b528c391b78eecf73972d2fd75b34a2f0302047c435bb5006730650230625df5e121f195345eeddd95cc2655870df1a519d29e45d21b13ae21a71c021d6fc60bf37bd51d22a730998d7152f99d023100e1a5606322e3f868f9589ce36a16d5126f14ccea4a56f340ad2a036fb3eb969ace13d015251a19e7d6cce76bf843a6ca0302047c435bb500673065023100ddce46b2464c70fee32781ef86f6e1a07775fa1a6b441b38cd60d4d8138752bd2bf4f99e4832365fb1358d751a7b565c02303f3f701cee5f0a0bf8705a289730f5cc7785fba8bdaa2be4910ff56cc059f9528d55eb0f2a06f7eedf90a9857a605e480302047c435bb500673065023100c4ae4249e6d4259dcfb684c7e10c02dbb1abe9242f6b89b7b66a033e19101b6665e03051693d4ac2e2ac9777843593630230785557b4882d7c89a629a78753413546dd27c7eac1d0da429bb7cf2d8e00b22778579561b14bf3a6295f041a2434a04b0302047c435bb50066306402307dcadb56a7598140c243be0738d2c155406b38c04d46c3153845d82472590888e6beeb729f68343323f991c4d1beb14d0230039e155db5f62584a60c99ace734328018fc695e2162d99fd2dc9cb53411ab409908743b1fb9903398499ad16f8fa15a0302047c435bb500663064023019963696188a604d9f335b80cc5a26e6367367518295b4bd43b07fbad6b878a5c698798eb366fdcc2ce02f137223e09d02301cfc47797bd03d5d3668b28dd056831112751718f08e45d468942d77de999203a5cef868a3ebcacc5681abb2cd3659680302047c435bb500683066023100ccdce54a4984c265043c4871fbc93190b58323d1f0286306fd9d739d8487d991b33ff9e9843c65fb54ff535561128ebc023100d50468915a39f4857361c9674620ea951e6264dc6c1d1e3c18fe25a4bcd1fcb26b92ab72f7acd207d1700b0fd550902d0302047c435bb50066306402302938037fe0d21b4cccd9c6f7cd015e0a317c1bec890ca54288900b73c8ab4233cbf0c723badce4b3a2931356325ffa0202307d0e84f3dacad98c2ab92b3441b4d3a40dc0458ad2d8ed235728709de450af4d58b358bbafc148c1fbd319256d5fa2060302047c435bb500683066023100b5da881fce7ac905be5b8f00601c9c0d6ffeabe473396638fa85ffc2d3e2f3aa5dbdce0c490aba477f85fb341743be8a023100e049e9d332b42b136a8484ba4cdd37219ff2414b7f67f7520177020997bd769cc9474579e55ab1f0fd27f6a63c577a910302047c435bb500673065023100b856c329708104ec2d6dcddfaec3ae1e43840752266f05be9721090bedaef7a2a6cf8b1b28388c39e8ad8c0c22b5b98602301f5bbf6544d1a33054495dd32f59b3d7ab9b9fe8ec9e1e3ea8bb28b051b705f4181a1ebadbfaa1648bc4245c34d800690302047c435bb500683066023100b6d4e73a38ec7aa7bd17930df0c096a2df236b1ea6673d6279d5f83fcb0e8ced7fe5303eea60c1bf2e89a92964816acd023100fb989ea210120f9cd9bf67c1fce8cdeeca00621ac13ee3e422436486e3d5b4cbe72e24c9c0ca4495de2e4f21699e34380302047c435bb50067306502300648c79b289baaabbf76e53f0abb3d0bc94b178028f17493c4b8788a2f43d5af3a86e02019a7f37a3dbf925d2400b0ec0231009329d44105e929897e7689cf40300255688cb17484d8739d79a55056a6133f90a83f733395689bd380909df6bd05258c0302047c435bb50068306602310096fe43a5e73fb18691d0d58759656f3dd9ec07756cfb4fd5d41a395e21cb985f42d54d2f7cf284342cf94e2ae30dc92c023100f4b51e333b90ef1af7afdec606767eb1b2ad39f5ba3b2abac143df461651bb1e9e92f655d2a96ce713e634bfcad12f6e0302047c435bb500683066023100d4ed46c7b4061751d3355700fafa09847180b05062e1f5ddcdd5fbbc09f8cbcaa6529444d5d4291ed9dbf1c7b7a179f1023100aa50d945e39c2e09265e73db5d01e0446958b42c94f18ee2da92888bf40aae28bf9884da85b53186891a0304da7b365d0302047c435bb500663064023079bdff6c891ae226fccefb1736f9e793ffc3fe3213c842603a5ac36ff5c0aed52c10d302e6d7051f0f9e032180b707e9023047b7a1d90ff353b231b21d8ee5f23a1fd14102ab323ff2493378cfaab47cb628102ffd4f607b31de89665d3f9d385fcd0302047c435bb500683066023100bf82d554212f5f9ef99acaace921307cf2ea6d4ca5de1a1111b8acd7ec215e9ebd88c5d48669c2b5110c933114f327e9023100ddefc9d539e8a943f4553f44834fcd61282835e7db12db78d10d5c1ed87ec779b406df026ed472482c09bf7da11d0d3a0302047c435bb5006730650231009e49add9c3597999d826ad4b56b3bcdcf498b3f2dac992198491b89d64a801d0976035cd28863c0d65e1176849637583023067efaa204c9b255dfac481995671b592ba1e5683aabfcd79595017c9ba74b8b61036f341303a9a3ed982267610b0e97c0302047c435bb50066306402305eabd68dc0c069b528de523f4bdf28a554b9e0c2a30eb7eead794fdcd431104e5b347578cd9f5a80c11295385f7afa1b0230773c63dc5a21d818623eeb7fd827da5c4c44b8aabfffc44078fd2d0f76a7b4c197c96659336ccabc82ad59c6e3c813920302047c435bb50066306402304bd1fd21aefb79da79d6814543ce368cfae1eb38f937597c48dd80faf9e957d02aa77829896425b9063c4d99d7df619502305c564aa5b3889ef00675cf6898ed6e15ca5b86613687affc89c7d92b57b0d3d7a1304e487c5aecaf8494de56ed751c8c0302047c435bb50067306502305b23fa3cab8a16275e4b9bbb6c84da74d8115e19df2ab2f414326200d2a3948532b0388a9a7cae87fba341d20bbe5619023100b0466d5879b0056d30c34467b81510ec9897de5f81dfeb1da2ffa5d2ddb054ee81ae51441ed843aea7e5f5dd9a6545b50302047c435bb500683066023100c6c720009f27cad005078c819d51d8e9146f0d3b8639799e11ed29ab139d7e68238a16d8ba8bea627471da61dd75303d0231008dbee18773ae69fc2e05ec91fa66677bdfcca035179ee5306e55947b15606b1062663308d40b8f2db9df14a48b17da610302047c435bb500673065023017f37375e2a2c38f2e5fea395cc1afca9bc5f8f7787bcfe34f5d1fdb7953d28cdeda536d198fa715b7c82403559c80c3023100db238a5a7f358ed74e187f2941c6aa0af47aeeb1da3dc15d0fdafcb6e91cd2a35026e528dab54c8c09764611f2ce4eb40302047c435bb50067306502310096c8a538c24242fd98e3c61bed50c904e327c11f05e249e4f77be03ab87bf4ab5b6e23ec4c824c84a7a35e80132596d9023019ebb7214dc8e391210d6b8630a1930af2db76791654b6a291d5f6e1b35d70f286e8b24693537665696280db209c2e400302047c435bb500683066023100cfc870ad00360ec91a3de40d121ca19ba0ed9d077cc1a3f1862519f0695baf55f95ee23fc6f20b1802e467728746fd9b0231009100aa098d5e10aa5e8333d803d0fb148b9ebcc3d2ef186b6fd34f06c9a6cb510e5a114091a27af18b318a318a076dfe0302047c435bb500683066023100a6a9e33c5ab83460ae77794625ba8c3f023a6c3caf48b5df88eebb6d8c09ea5cd48ac45d9db57f27de535bf81378789e023100c1d33121d542b45078722fa95d9fa33f0c7bcb4a3b7017391a5509b670a1d18291de9605606a7af42cbf6f4f24ac62960302047c435bb500663064023015bed76af01d23c0e1b93d7fab4edb15596e19ea0e04340a03cbb07d15750a7265b3dca5f7ea2bf14e16bee311d1bb1a02300146a8296b7b89606e8e674e1b4e19b0d23f5415299c3c22076e737b9dd12ba466695fa59fd3a571884c6751e4ef98810302047c435bb5006730650230336b8e756c4fb92f34427e13e876aefc2f2a1a6db422a7afe052af94dcb51b35a1b47c21d3ecd4073874c7f4cd6f399b023100f8a1eb4a46ba5571bb1d535c65aaf5f487fd1c430953c844c5b3bd7efcae14b06be4ac713d10e0b4b334f613e8cbc3020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023061c6e702ce14b47e259159c12381b043dcf90e87823224ec1b655618b47bebc3f9f2a0b928683730296437755bfb2bce023100948c6c8d8b3241d6112643d8521e686d58699acade560c9139a67c6347135d497bb6cc0a03c1a2553c5e32dc61aef1da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de6631cd6016790e8dab123800a12b5a7cf8629d268ea617f9000d7a01f4877bfb1953f0762d5fb01620d79c7a2c03f1023052183f197a86e3a68497653f357e24d9bcbee908de32d9792458b103562102c7202b6efde18aa372f9ecbc67b3824ee90302047c435bb50067306502310087d1d3428aaf9f68375f29772b2fc8ed32cd785980b3bcea9e9ec1d3727419f185c4c7393c712348d771f328cb8c2fbc02304c2bc99fecf1f6d268411229490e32b6f88f3f7b7027d4e0accbb0512a8a76eb5742724a6a68e40dd0b7833fc0a6e1610302047c435bb500673065023012ac8f65dbe8d5db3d614ab92da1b83f155db309e0bd4998fbf846a6ac976ab58cff753e7ceed43469dbfd1c5660cca8023100c41c476ae169d9626a55c3d977e4e9efff9f919917d1e030d37fdeae5f97d92d0bc499eb0697245de70722de38e232470302047c435bb50067306502302fbc9388fa73ae7973242a1a6501e1751bded2c886cd66050b185a1fdc84731397b4e5dc861c0bb5e86ed392d1ad7172023100d2fb41d9c3ac5302248c977dd195a7b5662bb1c5f7650619502cd62449623619df88b6a4f0b6c1160287ace0a1a4ad1e0302047c435bb50067306502304951d3bc904570d48adaf55b59aaa342bebee39a77917836b7cb4ffd99517cb06072c77228ca629eadca352011011312023100b30bd115ca8eec55f78ff6b42fa72c8dc0578f27958aef26c8591cfaace0a90823a94f4c902d7bd9b7e14d56458542d60302047c435bb50066306402304abd5279bd2744fc0b1a194c37a77c4c0c28e90eb115b8a5d278493a87d513566dbf974e63996e69fd4cb19ef053bf0e02301c44a088e3c2170d298e9b8dd1a8c0bbd8499bbe2e1799315deb746a2b7916ff0818f60218c7a47c1191d57b7501b9380302047c435bb500683066023100f40e46b9018ce691f6c66e9c696dee8655fe6421994434dac336be2139d3582505edf33893dc86b5d7f0e87ecf01a6780231009bd4ab8acdd6d213681f4b9ad3fdfa6d3a60ba8f92a067ae64ad65b1d2a69f4db636bf45d35881c2203c72b022ac9ee40302047c435bb5006630640230326fd67ad36ebec1eede3ff875378b777bf0e938f1ab7909b5d7d62d0968cb9dc4a19f6a10905a099df7401cb8e557a20230576922f1669f6da24bf49b6cc0c93966cdcbf90081646f516d4d94a467b3e6e9e5765e886e7b79cca95449a395411e1f0302047c435bb50066306402300e9580e340ee416daf85f5bc2d89bf10aa16a49aa9bbdec6d9e635ffa76938fad0c571f30038915aee32e992f5fe8de5023068bb340bae8897ca8a234ac7f64cf95f8d9a3f739e02c977f94fe5e450def7f073651ceaae4b2e9213a7e1c5e0b3d7960302047c435bb500673065023100dc3d0628d9b42a48f4e69160cf2cfc2f1ff66e60eeff908b7625bece8e739c37d24f3ab21febd7be5cf9e2689378ca1a023022f54966e5f4ab335e9dd5638ac688b386b1358bbe4e69124a89a645d085058970ee7f096ca5e3511b2b90747ea338400302047c435bb500673065023026c208e0f6b517f10eb344bbbcc1712ae91a70e592e9739eeb356aa8891225808039500c008b9a8595c94b57e904f11f023100815dbe55534906e674cbddf18a11749aaa7e9fc750c3801ce57530d9441c87ab3dd7a5ff62d89f2dc708f2e34fc8781d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100844250304eb6a8cbca6bcaf33482c46cedfc7a3a866fb840a816bb4219948fcaae2349373246c4e43b6534e3d5de921f0230324510c5fd21b2a510358a851f36250f3e164fb58c6945287d2a2cee90da5709c651cf1c32ecc336d0e98f43970c4cfa0302047c435bb500663064023064126556f130e361f53b0a1d070f7be5406785644eeafc01406df96f9c74af5900a7e160d14445a42225a3c805ff5a93023019ab9eb2222c057cc3405be4e29f390a5e056a8900190bac86ff0c036a45d41e95e61fd9d6d28a2102510f27e9b729ac0302047c435bb50067306502302399b57ede6b27df395e5ff89fa30210dd4113f7c2bb29b9b6176ee2e7f426b80a4f5c5891b5719ca7f0eb0f7ca52440023100a4e275b38f673aa6f9c5a31cdc983bc0af16eae8367deceb026c43cba1a629d46f129538d93422b90f1e70df0e80f33f0302047c435bb5006730650230404d9dcb2a6aee64ef3f2e36f6f30aebe21d4b2e8741fb93d20fb599d2bc95fade70f4826c1137f604ac1493dcc0a191023100eb73ed24585499c07d3f537f614e5f1524083c671fe9dbce301127165d017290c9f7df5cf5ab8502414948f61fee98c40302047c435bb50066306402301374f6cb11e1527cd9f823453d19deaebff173d58e861649a508e66bd87bb8ee52da9058651388ad355e7f15d8f5c9840230394e24c0cb3e7af53f421b68fbcf0f475f0b29b20769e1137e8dfae966361f1ab0f499f8d264c52ea6048921afa65bca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306ce0f86c6b7b6614428b8a78661df2de5c4e6cc670535208e9b9f53848ea5ef6b0a694f8e1ae85dcb16b19dd0d64685a02304ffce4b2dd20cff33b65e4ec0379dd234b5f21971f0e03fb308aa95925fa26f8d4d887232c2ae6d764cb3fb68a3556010302047c435bb50067306502304963e14bba8d69111203ce0e72c8aa7f16a9f92a1fc4d9e6cb4f80854277d38a61ba5c49f6516afea8cb1ece7f1999f402310089f7efe73589044773c8880b755f8294707a99335e0225a93e7f947d9ff29ce0dfe01aa99d55d28e1ec7b11588532a860302047c435bb50066306402304dc26eefb2897840a14a0b1aa17451dd9d1387e816a820e83fda247ae5736f6a5edc90c52a01e2790e1bc7f618a9497a02301a3e47ece8bb7b3c2d835409bd99f9034e7d2828d48923583afe7695450b67c705f014aa41b9c8ce99eef8f55b70bfb00302047c435bb5006630640230380912abea3bf69d2cfb9c242eb9f2938217a2c67ead3dc33408dff68bbf8a18527f22e92879985b0d77993b1dbaca1602307afe54d5f7c1ac397b2db73142cff8b841aa9996f8c9fb07ccf5c3536989bfe4531ae666fd60c95ab6d30b64b5f77c870302047c435bb500673065023046e0f1020d611f615e79baba4b5d77144a27c3965f4bde076e156f55296e88dd9c74e443d950d557c5821f70c53c1293023100e8259039a9cc69dac040e6019123a2303e93bb5d29814a9c63d4e735a1269b2294a7fe20e85961448da5470cb1e72e480302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301dd824d683cd175106f42429e39205efda1bf3a22cadf06b05e0b453c8b0bb7ee06d10b3fc1f6e9c09eba5bc8a06d62f02302ae827fbbec231d81ee4faa354eda584640c8eefa89e2e59ce77f39efa535443a8ee73251aba0291b754b09e300cfdd00302047c435bb500673065023100a5c110e8ec39ed41a63263e94b77d303647ce2230f7c1c7a9651961755fee5bb27b868ecf3711336eaa5336d18b8fa3e02301dd85ec2351ba6e26a2026f23af91748533aaa0f8672d138007be085099f420d6e386e51e08528df7f8fdec7650578690302047c435bb5006730650231008413e3a132543d4386203270bdeb958c8b92a94e146bfd6deab9dbeb4a3830aab0122ea2faeb8e5a69bb351b476332fe023030bce52be9ff8a803159b756980b040e0ad3fdf9f99c2b9cd038cf097cee6fa5a719a5c648e9dbf1de33af7328aa4d520302047c435bb500683066023100ed84435aa14aaf37030a5b9fdd3d63e434a051ed3981b64b36f212ba37ba7cbc19960ee43418c94ac9a2d84808c79330023100eda5ad472bc521cf5a13c9a67e243b4361955c743713972ff29e81b26b2ace511cce7d0efc1f4f72a6b973a950cdd0a20302047c435bb500673065023100ea2de3b612da911968893eaa24c667eb9e1feccd94c70914be7a1c251616ceec0553cd65d7922305c939d162825fe424023049d0391a2db1a305f39d4aa8e02871f8106c9f76730a5e7ed510c27215874da68e26b1ac209618ecaa366a26664f09050302047c435bb500673065023008e38fb0ed9527f3b86ba2c0aa42c436e4c7c33c6e9151104a843097503ec70609f40347856d0f813797628aa51b1fd7023100ea97ef01b7f23571a57b26c99e8c447eeb698b7f25624f84569998e34d9a2f6cdbf7782d62d9d5cecc94acd7565383300302047c435bb500683066023100966939e8063afbc6e1b64bb0b383080d15e6ae2baf60b52c3cc031a4afb49ab804242c7df3d98c0e0a05eafcbc530898023100d9568f60c2bb9a3edea170ddfd483bfc399b977bb33a4d8c5262fed801ed6d9ac210141567e30c36cdca8fe2acb30dd30302047c435bb500683066023100b2e1cd107acc912dd9237c479fe7e811c85845f29e1600d5f4fdea25619cfdb75a48fe1436fa403308c3f70f063c434f023100cf06d28e345060cfafba517fc504a9f67f97839c969d42c144704eee7e4f665ed0a0bd7215224fbb44f634a768805d090302047c435bb500673065023072ddc58609a5c8e75671fbbe41860b34295547be073784790561f3675bf513cfc30cd8d74e93a2376be51e79f3a005c2023100997e0209c0ae5183586b16812b672d843939c0c457af85ed0ef8ab535af73690b8fe6315f74f0f3f0a6271f284b54a5e0302047c435bb50067306502302832fae4ffe92bcace4efd94c696cfb0d408247f6c6a9c22d42c51af8cd2f6e6a8775271d00b66f65572c760ad529e2f0231008c9d79c90761593b7c53df57bd39e7aec6735e15658f32068cb0e3b75805804ede79bec24037417d39ff15e76e2845560302047c435bb500673065023100d75c6ad60e53ccc8889a4403a33559ab46a9add2216995b7209ef0b3f8147a5a4182df917bdc4c0cc01899978abb6ae7023044b564be353e1af7ec9dbe1783796e38ea0063623cba415e7b0aa99b13e496e80cca500a751f248eae42aad23425750a0302047c435bb500673065023064862a8f809e9975cf067795d776dbf707caff408b644e9b6ab2c7b6840932dd875ae3222d4d87a0817315e5013482cb023100ab9ffe564e21f16a6b8f91b7a57c42ed62e5c3089ebf832a2e49ddad97e1ac2087ca2682dbdc63bc32b0a8c0ec7282670302047c435bb50066306402302ace94358b40d6681ced0968d43d24c9406e6cea259eedd18b0cb0586cc85739b91c635cbb315a86257c09d0feb01e9b023031c140fc12e218290320d0ac755d317fa52bf94d9f46463a4e34bb413c49ad047e364ba70d0e3969d61658bad41d884e0302047c435bb500683066023100f36160f118856cf3aa58d562010c6d22e4d99e0ee6fd6d3d20ff345f846eadffa2ee4eb3488e1640b096469fe3a62680023100c7b02afcaeb04ab532e400db936eb0e79deea99b08bd2b43a3d0a220bd38d0c6797d33022bcfe70e8aee73302e92b5360302047c435bb5006630640230380be5eed2703011ba2d51079f6b53bd8fe865c7ec33e84efa70ec402fc024600f576ac86d078bff74cac2b8e1a16ceb02301a27999574ccacc9949fe1557188dec21e0cf750c60d41ff2bfb16a32ab0f66eecc6a0da361f61010144fccb390945360302047c435bb500653063022f18cbb88634ab2ce41cb8a5b2bcf212e944fdc70b7ea3ea493b1ef85f57f7c7593d6582f0fa0edccbe0fbe5fad6570a02304c07682a824bd6d38b8d21861a4debab6aa1a278cc074a47a23ff48d63646aaf5ae815250928b7ca6580428a7f19ebe30302047c435bb500673065023001b7bdee07628be1ec25b448eb76672a17813797d1d31242022b4724dfdb8df26de10927818c74a50262b6f9f3030b59023100ef6fac0ffe5ee18a83b80324457f5af9731030ca763dd65a3aef7b05a013ecc3c87f9f9e4b9a57317131e66a0d6c65d40302047c435bb5006830660231009e6c81034f7332ba91261c375dfd481b6d533f5f1e2dafe661da33f201b3f4b578ccd07c6ba1c5a80a8d3fdaad17a234023100d33234edf1bc4fbab8a85d27994c301007fd35d3b6ca6ca74d1f4fb3014387cfbb46e9d291526e947d3afcdcc6cb16150302047c435bb500673065023011c0da34e3d3aeff0da636d12d794dbf5d2bb67e6b3bb1788c137c043914b70bbdc944f78e2f32189f97c8afc19aba3f023100dccc980506c9b6fd2654b6a3f4ed2645e2dc86e52d7575660c7103abb5ef5478d2f617f0637d806cc59d1b60fde9f4ca0302047c435bb50066306402306cfa21ec9274c8e55992e43397b0bc60f33a7f9061ef51c6f5b6ee27013930554eab3fc1128ff2fdc063229feeb75abc02307ec14e922251c05dd3d7efaf97bcff27574dc13c9072237ba2c47d1000961d3b00e39024058cf151d838e52f86baca4f0302047c435bb500683066023100858db418daa99697b5497d5ecf5be9a1d6a37decdb6727685fc66bb139271230fa2142acece876c206248ab37740cea10231009f51ec37492b737935c445b7127a68dcf7da0063878873c0289751b79c6b92c4f6fbfb66ef29ad5b5e1c0a51546fe7110302047c435bb50066306402305b257190a5026538dbe15de1645d479906465647acba1b3c9cb51e006a8c0b136f93ce54367a395e9c5dcbd7dd61e45b02305337d2adeffddb9a07724f92676cf12fa9a40f7f1ee19e8d37129215245fbeafc28b1a7d50783393fa82651a4140ed390302047c435bb5006830660231009403fdfdacb36c142565871bb49879fe5bebfb71aec17066ffcc680ed235811500ad8526f50032459927bb62f0090dea023100c97d31b8f17133d9eae725f670a53526de86b76988cc30016b583dc7e13e83c67e3ea1981af74cef923c7b83d19e37f50302047c435bb5006630640230371b42adff4a61451e3046454ba0e718e8c470c54ebefb60fbeaa2f3e9d2442602fb183a5d8bead8176b07bae82be55102300bfe098e393d644e8f8a502c2f4f2a9bd5f8f76597c17458e02b1eb2232151dd3f8cbb66ccce294c45d2c41402b5490d0302047c435bb500673065023045f724572772de2c4a53455dc7b869dec6152f27296e1260d747d81019e864db7585915a9681c9567ac3e05aef8a61640231009cad77a2f0c73d6c2894ea0b080f0b2db69c6e00dcf374b5141550fd37e661dc852ce3c25922b4fbf67a4a5de763c9a00302047c435bb5006630640230377033ea7a7a74c2ae70c20089841532fcd3d203bba9b7a5316b27034470833a4234bdd74479474a2390394b31eaa5da02301c01809eb7fc70c946dab68f3da87aa3287c333e8fca991d01b159aeaa709f8eae649d8e49aac0c89773132ca3c66f3c0302047c435bb500673065023100d34cc982df6c15fd1343dcfcd4038236c5acd40d7a339839d609f294851997197db209d9791c19eb5d1e09a9eb07224602303386d20876a3ca4683c381ad05d4caede294a1a7f9ae19eecd89a8fe6141f8c7faafe90149f905086139b749c4979f3c0302047c435bb50066306402304186059b2c42684acc789fa26d2ba7c3abbbb95a0078a6831bf3ccf3b071f504ac73a2f3367a7d2d6a59d3ea1d46b6070230758873ec570a7834c4e3443d1a5d1a183d9caeea7b22094f9b79445ab5680a320122eab39f64449bf78548084c101dd50302047c435bb500673065023100fe401f2bccabc8f0319d01dd015bb130240c4e556bc19e9dcfb44ba08d48399dfa46888e4319a561f4f0e8fa1dd801eb023000fa21cb095f7fbb02a4526cabceaa3195a23d61ec42c7611ccfc18a4d5cc0e2d8bf57e195de5697a6aee40f1e1836b10302047c435bb50067306502304a660977db51596dc2fc8cc9109f7d04864fae699b28588206de97ca6b77d5047caed9b5d0723d5cbf613d4ffb53556c023100ceddac375fb51a5d42ddfd838c2048212e4af062e7b0e359c837b6db2ab57f07cf5500e7242ddfb9523d715b109e30b80302047c435bb500673065023066ec4b67c0cc4c9c52bc1ac3af564e47ff4f6d5bed913f8b5089f038522c298cf44b602d412a396ea4d83793bd50525d023100d16e349c84702c30ed8ee40869f190b59b96acf3e2f7f7551689024452c73d5514aaf51300f4576ada1b0524eecb9e700302047c435bb50066306402303f30371cfb164734c5395e4472e8d8e1d44e5a0178dc22c13bc0b5b361ed94018df701fe24993052e816956011b25739023032f62d1ac930a1b56ca938cc67a81a7dce329c8f3abfdabc1f267d8cff8a0a4f0fffebc86fb438457def07caf8bdad340302047c435bb50068306602310092553a0f0b36825d66cf356f6534fd15d451b85c21cb6802dff8b9d506288db72b0ad015e4cbc69e70ade5c34ae1d74a023100ca8080277cd21c01e875e8a6b31c48b662365410f6d90ab571324741adea11e4ce23cc0f0d21369803f532a955db61840302047c435bb500683066023100f1ae48db0bde009b92d0f420f821d99e48f418d9b9061d14b704953ab694f35a733d4161824ea9f29ba7037c78c4e6b4023100e820651ce9060ac912e50a7e1895755114acb187fb1415c506311c3549488adeec7b491fd288bc1560bedaa94958ad8f0302047c435bb500663064023040be3ebc34c891d3313648bfea583b4bfc1a951daafbbf3491b51a77cd208f9d86ab38af9196bea29a46fc58a3fffc0e02303733597cfd400c09552dbf980552d015e01bab816d4b9c9422ae98b429790342d0f931d494444615f3a489a406429fd20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305595fb8a962b14fed8f95456fd5e35570b109ebf228e6fa88903f1742392da9dddfe37d6aa627e6de594495cddd4ab6d02310088052b8c3154767688e539888e940b5c227509f04d668a1a62cc57d6fe4228285ab73a65556151e2d9c7aef1e67df7a50302047c435bb50066306402306852760b0e3a4a6ef84526d5a6015accdaaa5063c9b8d8b7fcc0130274f886319230c981ce1d6f73afb444ad6daa41e502306938a8aca431c915adac71db4fb1c340dc00555d222a75344be1d64ca83383ec838558b1312583f4851c6d82880790920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f818c2edbe4904b1443c8305a8af9afb7a4f4d032b956be98da3a1a43c329936133c828570441da35d77c84f9b2201ee023100a6758fb099699fa62b34155e349e39ce16cc788fffacb4d80719d502d43f909004799a3f11ebdcd70ec8d682c72e6c250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e35c7fce4f9ed51a2cf950e2859175b83e78ffa2b151811967273fd6354fae532d519e25c0dfe79714cdb2ca3f311561023100d3fafe33856a3a3665ba65cd4ccd2d3fa31ef27180b895f065497ea8e31e9ad01ebd78cafdfb2e385562c491e123466b0302047c435bb5006630640230503208e64b89194ea1e6f56072cd930e436d01716b268eb8a0f3495b46656ee9dc114f7d991b5d350ae728411ffd31c7023028898ef891fd7b6331c193c6615967c03a2bd3baea6abfd1b475b7732e8bf51358ff56e20acdf729445e7852dc8fee1a0302047c435bb500663064023059e54c4461dc5f0a1dc626cbe346caa78475c169a54bb05f46fa0359c1c6837a8afb78df18351e275d38bce547437e030230350f71f2649d88971a459b8a57c670056ff97434eeac263ac480a319ed007173eff9d36b473e9a532a56748731789cfc0302047c435bb500683066023100cc1a80351632fbf6918fd6fbed632ab68987ae7e055cdf6f1ad1055c16415c0430c978a71f3261cd88a82cb23a8a04f2023100d592ee8a1d3decc4ce308e0cb8a814936476a85e2739542e8bc726af2b993f012111f698812f1ec5a678ab79e9b9c5670302047c435bb500663064023029a876f86f8e1fdd50b69124c581155d10bb734f5db382148746e6c3790e5cf8b5a1906c024dbe3e701ec42f046732db02305bd482ff3bb2b521ba1966a5456bb557d2d92ee15d62e534e135ca9ad462dbaa24afe3681ec6b43e2c3c14456bb19b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304eec7ded5c0661b9adf9098557a1fe0825cca32aa8014982932febfacdde1d1925c69d3817a712ed85d92518c771df8f02310095db699129135f7bf2a8bfcaca9fa3bbe55278f58fbf71448e921998bf8caca043d855d513f11709c4d4a103c560507a0302047c435bb500673065023100982424b1f97028d231d0c540e6fd052fd5c4bed8595c6893e0030ebc6a3007ed11079fce0f40548286eaacecbdf6d6b50230650ff7a295a866f3cd639c95732d8e0ea75c9726005ba4746ab7cc0140d74f401a048f4b3ca11c1275eddbf6935599db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd811929e050e84ee37278cc61fd412beded048c800558c82ea248da75601b457cd6b9c279578a38c10040064832e76302302f5779784d7975c3c25dc05b35976d69c803e1d3f7abcecd510ba3794f8589921959ba8e13216a982a143425146d27f10302047c435bb5006730650231009cc6e5caba481e55bff2ba967bcc2c3d7400c5ec3ad0e3a2f21378a6c0f285320275ddfc00f796b41e783814ce24c4dd023017bdc0fb98c9d32e4ec1d9942246a43df6a8bd7888ec7f1207dcf1fa53414650e0aceb559f53cc228d70b95983e16ddf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee04b4658c8545fac46490f0d6ffa7964ee54ea5c85b0490977c9b4370c0050ab3e3ee795799367f44f7d602b0c359f202310095484af307cf4a17965dc69395a6717aa063b5f4a873b6c41bd931d545cd576c8d5b1b93ee7b68ab48ef1178b70cc88e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023029549fbccb85983f6d2f61e3f90a24d9f5639a9c70597b07047845374cd5d4cde8e7cf6440362be6222cb28bac10b2e7023037335003b0cede48bd45fa4a47db2abc7d74d65ce3dad2b0ad56a81bd8b47fdee27bde5248f70115a6293bba555c6aba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044b47b2287a34d61747d7171b0473c2b31f8fc9538c72a0eceeb0f84e033b0c54ceb41b3240d4e0e8023b1ee30b8a2d802304217c3b2e44972cc047d2b267bd6a5dc912dfba07e132b1e255be7ae86cc43cdcb93e8cdf7c5c4627cc756ec3edfdfca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036598b23db914799e9dab7e7bee678e64d9d42f5c451b9d60e7170ac6e5a1faa028801dfebb83569b4f5023161110b9a0231008f8534221935e203430dd7d672107ccdd00abf570c5e85107be0f81a4b04a1df2eb3a401f683efa89fd7cd3836fae3250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b2d2536caffb1aee7db2348a7ac1ff04a96e59ff386a5b5c3718c4949f78449c36a990c9b4032f273a3ac348826753db0230176acd52c8f429a5124f9c01714fd836a1b6093bca07e84d00bff7f08e310562b52dd27eec9d3a0034e342f866fd23850302047c435bb500673065023100a088ddcd78e10c61637a44b43577d61fa2b94945698418d08effc60bd470d4e6ef454742ce4f8e185318ba8d6e5a9b4e02300395e19956b9e7841f4b602d490eaf723d0b46e75e525ccfaf8d73b3780937779373ed3c89d0eef3191804a3b1141bb60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305ed8e224649fef107205fd0ea38ddf6e6ebc3ebe63d7f65764f7d9626330044cd768073749ce5f529dceed6365a8a68802301a0ad2c16a337a5a8853fa4fbae5d296f47845a36bf638e4731ed736374b2e8e73c1a5055bc209df9d765a1754aeb92f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068c343b87ca6f98d2864348a5b0d66cc8f312afcdda0c35fd3ba75f063a0e5810b6b456fa434ee6c134502227c20cb1d02301ce8b33f44d71601d0a57fe3f1107f476c316295cf5a86bfc8101799ddaea746e2a1f2243d74272bd42708eecbdcc90c0302047c435bb50068306602310089e09336d67b75b9356b797ba478c0817b4cf3dcb3261fc0bd22b58ef7dd33fa93197fe20ef7e37c4f77c9c225c259d50231008bfbc357628140fb76aae1fab61e4b1b9f48f8a75312ec6c2c98af4f0af8a978c6083aa4f598bb6ed6186f8545510d240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230356d60917a337ea0143e6caf50791377b481eec27c2f727dfb00f53b335e6068c2ed04326a191168dab56d1ced146f3302305136d5d893fb6940009898d1debbc0d09da066a8778862430b1a2095ff262cba5e045d8420c5ab32e3a03c3408db23bd0302047c435bb5006730650230023652f3baf60c0cde75071001d99a9eab0443ff9b58faf558a656ee7e540187ca075e0ba3f64992a574ef8c1e7d6ab9023100c9bda06b9e222857bb6d61ebd65fcd670d5abd1ee9a5221ad93f93c41809c89cee5e919d407d6fa312eded6a629af7090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac787bc9f2fa265cf05cf2de7aad74511c21951dd7a725b99bb3f58268fd34c4872090d32e5b8b3919c5ec7d28aecdfa023100f326681a83e92a2442f864adf08f498d3259bc32fdf7b6b57c773142ef1c4b7b22e6d34f85573da7d455105427b116950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096d134f7ac652ab034dfb3c709e668784d4debf6484bb145637fed42310df566e428b18faf8a49c7a5a1a6364a53cffc0231009c891b81610b6300d82d9d417d46f5c6400c8d24901a7f2f353f34d87bfad8c119ab9e554378239248cf8219b06275410302047c435bb500673065023100f010d8dbcffac3b350a9272b5789e1859bf42a398cee3f1febe1fcd771aa3027f1c53259d0769c7e387f25718f60b602023062c256cf6168c04378f5b441ae63ae7e1ed1bf57794319767d6d33e433a656b3f434e65fcec789816e7753e14e5b52d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023071a3294e11a703e924e83e94e45e1252b6655637287d9f9610a4e02fca72aa2e69f33ca59aecc6686ac336f0e170db6a023052b8ddfe4e08b759fa33fa220c0efed13abeb5304107c0ef5964018861bec60017d1857c92e5424c43ce4f95ac1a628e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100de87846268a43e903ec986e6d65c0d4a126c61218ffddaaab1259275c0592c81a06849fbbde927cc0daadc1993031ec202307c756a1b1e98d91dc409e3d80ecad23a754582aebd6c6a708bb1073c6255e07a4fcbc5be60bdd92f789723947a7e01b10302047c435bb5006630640230142a8748878eec557e3dea24f39151f5d34310726116d6bf8a5003a4fc668473e570a2c2c309b16f8dbf697d10aa26b502307adbfaac1e5e497b9ac7d49efa71be0ee770a008007ab547cca8d349fa7b05167945fd6b080924589f38b41bb10759a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a51fa9e729e867eefbf55ad409217b13e7f07c97ba515ef0620ca0bd2ea36ee163ecd926768d029677491ed7dc20cab02310082fab175f2e15b0385f09826af05264c47386a3a91f3ddf7d55663714b069cbe8b6aa2f083f26f4f1c02d81e0659e87d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023032b2dde5c442367b257acbfb375a19594cddce85b4e162b59b3b1375eebdcaa4a27861a3042090b4e031c60a52807fc3023100ccf25555913b3ddedb458794656a1325de91399063b3f4114e0e8bac31b294212328cdc355b682efec7084fd48efc8130302047c435bb500673065023100d82e971de0d79e0233e6da08a30734ca80c1c224459c5331b960ffb9c54b56be6813ff537a0e6720baff797f4a91753b023021ded90753ade8d7c29c2383b1bc567804a9c56bb17954a415018d123ee2642bade89716ddab4d7f96ecdc8c18202dbc0302047c435bb500683066023100e0d959e9ab442a0613bc9f1e2c9074f67ad51eda2b550a16bff76f5075c972b244a367509d3d870d3e13cc710ba9525c023100cb488e220aa0c81ff1ebd2622b16f5e95414c8f565cd0a2e6d528a67b75b4ebef03ca813ab1619ba3e0595cbae182bba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014a3ced825d3cdc88173810f71d31d88dabd944ccbf36b5283f594e9935b78e64b07eab849bfe71b9e57d7380986ae0d0231008515fa33b63759df57f458e289cedebcb40ec9ecc041a2303c6d0916bf1bf5f635006789afb155e97c7da6201cee9a450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230473500175a648489e971939b08598728089dd7082b85822b75ac519ec99c947c75bdf8f7f5f7f32d5b319e62839c53460231009266669f95e52e9f0c5aed875627c248234bad4de9cc6cfdf53f725bdacd353acdd2acfdb3ee844be6487b8f7074b59a0302047c435bb500683066023100ad297a6f65167476d2ddfe0fa93bc84cdfc01dbd9693afb46004247c53bc78224d83f38af422addfd28a20cd6d0a500c023100c64ae497d7c648eb130023c5802cc378d03961eb1177e6d63fe7880bfbc3cfb7ae726792235883a7428c72b71e6d779f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f7a31dc7d5b3499fa8642b225b3db020fe7ccf635b3ec6ac1fdff9a945945bcd1be8924a01872c986e3dc02be692b4d023040e2ade13f73445ec1d1aa6b7c26bcae32d8eb8f273257f1e6f5299e3e1596edfb0bb279cf3c0d03aaa0be0ea78abd160302047c435bb500683066023100b486ba33ca2767401dd6e0f1b25bc8c83a79597930e77441a4699bee7a8f45fd86b998438f3926f2403be3f49ac311a9023100c3c68a8fe59c7b1b28c961b7b7de9d23e2ce48b47b4b2fc397a5ff6b43b2775b52ce9a148260332f84e2e408a85ee11f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305dabf2d4e1dd98421e700be768cd667d56ad4f6cff6490e368ca1b4de9ccd05eea488b474f0ce3f87b84fb2ee595bfe6023100874aac791a0929d9860e814d7547741d39762efe359abc5ca185e16804b7a1c550ab1a6e6df2f54847f38599532375270302047c435bb500683066023100b65ed2626d4ff07a631390c1d530680b444b35bd866888520869710c1e0f545a4731b84d092a6409944a07f88a86b34c023100be3cb875bcf0842fcbead34d51f0b875236b777a05515c4d7a4df7fa9652abde927a29568f7800f50c3e0bd88c51f0470302047c435bb5006830660231009e24a627fc22a3c2b4c10ea81ec57653fee832f2d3380a5b19cca7b7600d90eaa4caf8607950de367e97abd09e8f0a0a023100b3d035414d436d78cf0e6cba804e5cdaf1a7fa1e8c3f14e42afe3709eb6cfa4c071bd853b674159c36ea8aac033743380302047c435bb500673065023100ece628f3a60dfc743ce91a44a152d8126d008ff6ab5fda37dc6f52da2b54bcc7d792f794c7bac6c9fb23a88b5b79a770023003dc145dfd699f6438f4e82ed2ed92e93ff5e2de952d11a3e9a6e35fe1650512a19cf5dd29ea66dafeb8305ed8550b1e0302047c435bb50066306402300df42a71f5a8440f7df5a136fd92810a3f82d794627afeca9c1649d6d680e4bba6a8ec0627e7c58590ed8f13450420c502306c635e525c9956b74e72db618a1b397e03d46d7b2d7006ea2a91fe10cc9c760bdce8ba576d767f96d2bb7d51844b4ddb0302047c435bb50066306402305080de0aec5ac4fd6bbe4a3bebebc32ead50c47bfeaf7a927681a679f26a04d5d725c2aa643dc611aa8d18c96e3b61d3023042cf7ac7233effd4e6ad0b10c510c3858a1655e9d540d724649d8b0b3714eb1f9adf0f789c73ad8ed5ba1ccf19870b760302047c435bb50066306402301f24cda7b1f397bf086d8f70733058151d1eb8c99903ca6172954ae5f3a659b20e89d1ab3a71e04a852f26e9ce2b870502300343b1615939a33c7c51d67bdda67864b6c3982991ae2cb365cc1d5e9c5a3f5146aea5737b0e6194c9f6966c9e1f0f680302047c435bb50066306402304255088238702b5164a86493db21d80099a31d5004c573256b7ab22319ba5a1a738fcd70a76eeb3ea9a0f39ad2e7fed602306cc66abe2d9e744d1dd70316a52fd633c462ee5b186a0c9dd0160db94e03e6f529b91501251d78534bd61eb552eed3110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f19194c327948c9e5939ca1e2788eb4c81a9229666004a83b9b4a48ffdff50c4ed08c4db8b05f41de4183318becae9e0023100d1a39682533390327882b2ddcb5f0dd1574155ee9bbd08705aea32a1623ed73eb03b36a91a87b3e0cf66b46c2aab2f440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305cfb5c2c260ce7ad67a99d31b25c9cb191d23bff8124b0672321ee818b70b36c9531fa53de23db5146818548258dfc34023100fec0dc2a9f6d7f73efa3bce9ca5aeda3006a3a79baa0322d4483cad9dfef8f636f661387500c73d5a0ef1cf995a4b4200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071be248b409d50c36640c58b841433b8f6d45180c3be1928492538681c03a845df4ae51c466404917596a6536d69bdc6023100d8c723b79dd02934d9a68f27497435cb6973b38bd3d7a5e888a3241a6acd58f3853cccfd4a596f05a6b64a2abe34482c0302047c435bb500673065023006a6ea549c13d412cea24a5660376e89bb67ec6e29e61cff80bd13d8b1a21911c22144ed75212089b9fe1ef0b81ddeca0231008964c9ccd561f289d082dcd5eaf91a30467915f2499054494529006812cf3f013bf83a229e77d1578694d18d9ccae1820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310087e1d2bff8de0f9f778a85f2caca2f1ace94070aa3cd2c31a6aab32970cfc213b7cd93576700b08552a9cfc07dc5f1cb0231009a31ded019062f82b97cc2c5ea1e493931794af56e2e372b03550ed6e464b72d62e080cbbea1c7c58d2cfd3cfda399b80302047c435bb500683066023100839fecdee56466396988f30e3377f17fce6b07d3b10db148c3d866ea03feb2e6f314aee2146205d282fd363cb268aa17023100e7cd14daa59baaadf02bc417c7e1ed3067527625875aba95f71b39c035b33551105ca797fee848ab1a5621867ae572bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307dd7da588a7886be8f55897b539dd3622e2f450c94c4534cd4763c0d71d025f96a128c6948d6cf2d29ae8f89ef5331cd023100afb8cbfd563c7ba2a9f0f698d3dab94e428b49c610d894e15bee4cd5be400e4adc2370cabb042064a3e4cf328f7776a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307d0450b467e13307836078226f34ab2497d460f8c98f2612aea4a27e45b03fff9db5dea62e209e6f338e942cea751eea02305b79d1068a70a339c1dba49dd576bd82c2606416e2499f906cc2df1c0905cd47348df7813b4f7174eb4e8af98e6482290302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100add9f5d1dffbc672c73d6fe23c7482af957df632ad5f38bd6b5c6684fd6ae4f8e01dd65bb6b6648dfd11d0901993d8fd023100e1499693aa65c9fa5eb1e568ee0ffa6275d7aa9b697a3efff4cfa97912e4b471ebf4f13f0c4785e4f0ca2aa646838a4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fb560162cb4efe89f3e04cf194d5afd404e4c63c1ff9bcfb1d395bfd57bd119f54557c6cd2cfe4c34440586c965d8a64023100a88ff19455c6842eafcc3e74d443b142aa4145ce81088f8394ed3913037965c239a9864a46470051b02638fca7c66cd00302047c435bb500683066023100f8c1311cec68858cc56b8cf466628fdae34d6c92458fcaf95007810588fb471d675ea33b5b9c11d88f768fcba9968f9e023100f76d55c603746ed3401918b0bfc12070ab7972873d9aa8453aeca43e9efda6f69fc53b62431c0eab9d216f86b614dfa20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300bb99eb53d93bc6d07e61ff237e8b0cd5601c6da5853c34900fbfdb396cc2ddda2a68152fbbc4725bb12518c06abb0c70230683fb64acaf19c5af5ccc16d4ec952bca179d0bdb408984e9b861c7a0c6cd6f0937e740ffb8a2bc8d3f1515f8a4caa170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e64e476ed8357dfc6c277ca975d1acc267627ce5aa32a8356604013c87e822723c82ad2bff93c96343a24f0022f28711023100ee9b9e427818737b1f33af2f00cce2718df0b1af309d9fb1c2193cd7fefc016ed1d4934d479d32db97699a37441f305c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023011778eda6e9ea3f4888b1409d255e9321b52990a35abe20df46e5cf7401fa6d92dfeed178f888c4f601e528d61866923023100a57a14e29d46bc7b246c038b5612378fe1c6af48bad81bc4a43beedd4a29fdf84396c89675c4c4e32b06c08e565537420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f8dedbdd01bdb9cf549b0f13f1f1952dbb2109a6c467a1ae78454bde6e511cd6a2ec855bf4370022e6268ca4e9a24db4023029cd33cc21290c5085f95696fb36e42d3368ba152b7b8c7c79784dde5c986ea4da11d8e8533643e7f82e889b488f65ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bec79f3be18f167cfea5d2126f9a90ddb932d521072708fd1255d23eb678fa2881e59dcde3e9ce3ffb54bdd3510284b302304484dc489a22767e95e2e158e91db74ce9864349295944b0f60213673942f3b7bd6192451f3be3a8c7db3b918788d7ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230476a10ec070c3854dc9f1c5a6942c8bfeb58ba9b13632d4e410a6f8613a1eb741a1fdf48d621ff8edb30e45422c69da4023100a8bbb912065af06d62be9dbd89ba36a0e65b8cceee573d38b427fcfb2e41872b50523b43367c9b5d0cfd4039dff0b4fa0302047c435bb500663064023009d0c0ff5ff0d46bd1cc539c04d5d7fe9862be881b9a526bb14452c675aff5e849c518154b5a22377f557a60486e588102301b61072d579b92fdc3e0f48c67bb8c852160cafd5b2c479386eaef350e52c579336f8ec8cbb5a00e4e5e36c4aa7548670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037d12aa4e08fa33b1bb3aad8b7310c9422009b658389e2416bc98d54188cf5f33a3dcaa0160b96e825c2a8805770cfd302305780a0431be74ea82446fd3d487f3ec4488329a951636905a3cd3fb0e77a50efca375f2bdd4ff691f7d0f440d95adc0e0302047c435bb5006730650230651f551943c28355253defdc2eb93ec662cbc1d31ede155943b96fc8fd8363157e2b069fa409e680ba4dcda65641c48d023100a1159f16acd50748d346a9e4fd41658f6c76690623cfb38d90425cc6d6b20732d0c2dfde390c00b0d69be299d4b0832a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230614c97df59ae024f4b083f4893538547fb13d02a37ae9b468327f2855d122c04b4c62421a2eea76cee87ca8992c29a03023100ae88f015ed254c296843a49b3d6b9ecde1d716a584c188a62ca4f5b4e78df669521c6a00b6528a353d2d4ab00e16c0990302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073c6ef14e86fcd32e669420a65bc090d89e4d0ec650fa2ad2f334665c3ccf87139d10ece633714776e6118a3854530f3023100d46f360c6aa03a667c10da7d79edae8bc89ad3eb6563b8105146331d8c4565f8b3822634595acee91c7aab9ddaabca960302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bcb3f7014f8860c55110fb949826bfb638e3c0ae78a7a5d4bc09ba66dfdf0e2298ca085e9cdf6fcf47e10d5dc723424a0230721b75016161abbeb562b9a43e7316b48f92fd0e5adc33aaec5041a465551212df705a8611b1062f6a9f0906c2c098980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad53a380a70e92e14f3197b1ecd8ee659bd22d4070995f68dde104f2510de9dde46a24f9ac35178874d2cc9bbb98909a02303004e24ccd6ec4612e3fecb2764823b60c7270d7e1e25aa95a376e32509a988be0046e6d4fb23f6d465d35bdc24c33dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023048e7da696e8fadefe4fb45fb0dff507f108ef003ffa8388a9e599ae16de0a79d7bc14ee72674846097c773a47cb802e2023100da300001b43ab2dc5cbf05fee1d914d17b7c33073c460e8bada3c39ad0bdc4c03da746ca38be565511d88ec8f60d55cf0302047c435bb500683066023100b0e87321462dc25866ff385c07072d6dd42dfc17957c3fa93b9a056f02250aecbab50dce749309725a084c0a61f575f9023100a2a01690b4bf48a36e23e99ed3826b6e33a6165d94b887f52d18a392f53ec8e594885fe9b6f85caa1367173431ddeee40302047c435bb500683066023100e397fc32183847d51f74c312580c56d38484cc80ba5956e12b1b78b4f1f63764e53c2ccdbf528f73219d17fca06ced7d023100c6606e9de4dd242fbf47f4d0565bb34b311c89fa9f7c2325e357627725ce4637e44a2c7be5d53201696bf87a0866f4b40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047ea4c66c5a58f03df398c700cfd82338f29f553d933fccd3be31a34982e1eb0928b7182c2a1bb19424dc6d48654057b0231009eeec355686150f838317e92bc2b1c433552b9e256405c8f5c6da391ce939b570ffd1f718f06afc80ee15db3c5d863c50302047c435bb500683066023100d2593709bab115d5b3edbdb25816c6393ba90886f45faa409d2839ff27d5c72f3c7d934b0da2a7549a18d8a5f4dc296e023100d1bdeb86a3ac4615bef93605f3755e4205e1b5ff4b18f7ff009a9d51999bf31006cbdfc0cea9e29e121735f83b4ee0b30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300dc1defb99624d4df4b2bf15b316d4c91ca1767aca57da1a89dc1efa4635b3a27918124f1ab8627cf208e0124b931d0a023022b87833a5a2d0191e6a9452ab9323065b461d9760a8cdc16d39d063fef21cc859be924794c0eb16b94cd0477bad5c660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e5ee5e18ed7da829eee1fe6358e4bf2e3c834f31611ce0075d2f764ae963c9b36ec91690f0a5dc0a8cc0d9475ecdffa6023100c983c4be7182a8857c44bcb6562a02b1d5e61bbc3310f08f8cdd823d50a60e7ac7fe2fcabbc38494c9eac000a19be2f90302047c435bb500673065023100b390a4d10c4c62feda561441e3a432a84de8cb83bfd0e02e01209a38e3103461a7465b0e2c548f7888846e3f0daa29d902302ebc53e0d8fffbe6835bfcf19b3bee4c525436e78bb3756d2ea49baf4434aa5b945ad5afafd3577ccd704e0a2e4f2e740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f2201db3f82499b9c143aecc879a645701b34e524d89b784a4668fb1de118779d749d832a679c1150812940b4abfe24c023100d4f999ae53f814bf3283fdd79cb16100b364a9124c3f2a2accb1fcc0009efc338e98afa62f3aaf9a4126271288a1a0a80302047c435bb50066306402305ada5840e7f8e4f23e497784bf4b14cef63e9822a3d2a22a57d664d3046b5a2575f989dcd48b36b0da35335a78b43028023070c99d7ddcd42c034b2572b798a3f6bb80005034da451ee3b657b0615ec01d1ae365fd2c534ec6a6848bd0ccc35636510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304a8ca7e9f053629ec0422ad46e6b82f4c3d6876d7c65ed723cd2f962d369a761c9e8687fbb60c7b71195f8a315261364023100d12e656b6b8a35e041018dc5721d02def4caad48f180ecff9758bcb17ceef40f851a1f23a10d7573a343dd5f31c978f30302047c435bb50066306402306c7718c237d4ff26c60aab7adbec6f2231ff18e38ac4c3848cd6273783e02df3308d1d01dcdcbc92c8fe08124fe7c825023058ccd26a474767655e2e7f789f29057936a0ea23f856a5c7f6b13b4624096dd59d9b11df720828ffff03507ab5a79fef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd90f3d33d185a5c29509d91c5e9a7b49e9747767db2fc350ec5b414b5b58a325c8ee9c49eb200d46d78add6d7b2d8d1023076bdcb518f5a237e84abb89fa2ceecf3a7dcf10065c69cd4a3043df638d8fff05eba0b862423a86d057a1599a5a478980302047c435bb50067306502301414280c2752cc933d1e13899120c307e8e7901c14246fa1d4d3073f4bdf5ce68372a478016dea2764863a5b160c707e0231009b4e6c66b5489cbbb11cca0b846f8b8820fea30921fa8e69ca8a4f341d47bff252981263eeab34b826e1f56d9e4f55610302047c435bb500673065023100c3fd6203d462fea5f2628f40cc57053c420c0337c0d6e99a5665baf69596649fa0c53a822a892096825dfe33cb6a698702307b701e78e186b6e68de91f1d2cc0e95e0722f3ea6a8a6afbd72a80faef674cc915c349192eae5f2ba11675c63fd404220302047c435bb5006830660231009e8df9e7e73244d2903378401733f5b063d7e32819553bc60a3c54794d2badf512ed177765e4dd47a7db1ebcb23e0aa3023100e5e659fb4721b4089a6a28ba84d9cc3be18bb3cfc4df990061384b901dce670a42ec1e4f238b86b0126dd430e1043bb20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230482cc0f95a34c4c1fbcb82da87c6cd85b7aafdbf1b084ad3a3b3854c8eaef266dea0695bbfd664b7cef75baa46f3c9d0023100f14d6ca86eeac20456d207209d3317f91e96a8208a099b5acfe60dbc0550260f94ec768ecc9dded6cafbe5b8c86eb0840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023073e5a1b4ac744d67d6e36461e38f2b6bd6532a7c270bd99ec2a2f352c63198ff425a0efff571ff5b70accaedee6a58c30230268a755fb26cf8fdd9043ef7c936beaeb4f2ff80404a3fd7984cd2eb0c7c024c3cd9b79e1e144845111aea0e426a7c300302047c435bb500673065023100f1c15a154efff141ddfb65d8fc9a13dde518d85923d4a91d33c72ad7779d7c835d2a15cb7a51609edccb964581ba42a7023003416e526586411b529535d502e2c120a8e24d9a3fbe90155ef39eb3ef1dc9989eba78ef9ea83c9640f03973cb779ca70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230265937b647c3e0f1c15df8ed48cc5044e0e7a8f777f74e126ac1c8329ef864893bfe3e0944cd3c9ffa45559fd6e7ac340231008409a1bfdbfa7e0367af34d1a98dc075ebb9126916312db03cc42cd14fb919909d905c9b41cbffe86b3e2653bfaa2a570302047c435bb500683066023100e23543fdac5315eaea407a7e902ae3a91d6fa84cd1d9d12d4be07d19ac8457eed65341dd2e8ccfa79286614d8e6924de023100efd787988e35ba534f0f1fb8647e5cc8e25b7701507d20f3182db651ab492c6d1883a7fe3c523bed421c2a00e4cd21c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305524edf6f62d886051723847ee0f69487025b87bee9c610ec334774ffec7e58288afed6acb72eb0054b23945d65ca8a2023100a1d7e6f0fe991e1d276aa6161c9fccc78d66d8e0e22ca0f40c3a8ce7a0a09ceb16217d913e3f446cfff6ff58372c0b790302047c435bb500673065023100cea442b519689831270833fea4713959235ae4dec347874f027264827482d9d64f01197b028032fecb54fd398516c1b8023025743ba82899350c90c202b23c03924746f60959c03558f4b12b29886761e92e7c130e2c111b7d73d5c35dd567537f7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ccdfe6fc971c40467a4b706beb9f1daa9fa914ef143d734c494cdfae47a20b9e8f3033b735320c638e0d6a9119461f3f023057b502aee0b848fd4a23acbd143dd218cbe4b045f845147592d5b79fcb13d8368c0e9f49d275f477d5048f08a439af220302047c435bb500673065023007e63fffc456931e9596ee7d5d7945306aaa86b2c2da9f2534089718fa384a1f1f186709b9f8993ff43bacfb2219a6b0023100eb3c980531516d33d5d3ff372f8852c7552da2af1942e66de2f4d867300098bffd63b9bf606966a7475f31bab56cf64b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306051d3cc060324503fcbc7ee391722365ee33b02cdf6163cf7575c26dc33ee8a1f0ca1cfdc6824bdfe2bc108cf182bd4023077efaad57ea856a6fb491bf38bab790bec7e50056976f882a277cae8bc4289ffc502287e77a0313dfae0482e83cef58d0302047c435bb5006730650231009d357dac3540185215841e4bd05858f5d91108ac4901a0236675016e85d77fc02c6be23e21b95d173e623d5e16eb3ae702300d92f35e451505dc34f0d2559334ef45d5d89de2fc83d48fdcf5633d1a20c2236541322f6632c79a0596179d3b10a6de0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230545516e05b1d7fdc245f0cbe57c36b9176cf2f7458fb49e083a3e5752cc38a658af42bf9579928ae83b21a77b561d2420230572ca748e4b8dbabc20bb95f8f6b2caa569dd3d6df9628c87dac30a67dabb24be7bc0f77b6af8824174c19a63e9100af0302047c435bb50067306502303f8f6b1603aea2493db4b71327fe827456c86ce33b8e2891a6c68c4c2bcc71c511ac503e069b4915af061cd821d39e7d02310093914021e5631b06f04e70494f8b6edc432ec149239a50e557c419bf06c9cf056b61c8705670fd60639380b9de4a38f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009d5bc679387946ee22a4c771881778d6f74888c1147ba27919d47cc67f567ec9db203150b926937fcf1da78a50b37e0a02304f10b7086e50bc6e672ca5eee75fbeaff70e6eb59935c50cfcf7c130d157da6b44ee4e8686bc5c9d297a8d74987b2d150302047c435bb500673065023100ad6338cc2478296f295e5b49e575206fe057df5525d57b66ea16fac6bf2f6641373bbdeacff19aff082aa72c735ca33b023061723d3f24f913e73388648e66f1de4b0e4a193803d2a36cb8001fd73efc528383164abc1af6cf1d3436dbe4dbefa8410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302d7fd747abd886b2f915710d01f7ffbdf32f4cda8a15fcc3a534d185d4cc4f2cb9a3529071156d74b1e9bde9407d89b502307b076ed3ff16997ca5345c65c8d6efb73f6fb97f4ebe0cc9bd286ff37d528846f361dff1bcf866331666702ef082c5920302047c435bb50067306502307442df45d04bf44296c70c0c2e2ae06e72f72a111f07f8bf2ccd4246d6cbdacf2078b782a52bdb7ae36638773ef89e1a023100d0b451a2d2949853d7e6e3542f23d68fdb0ddb007f86bf3c74c7dd851bd650613d2749d8c13af8484f479b057563885b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a6b0c8dfa269214cd59a0bd7cf4e86dc37ca9055c5cfd38eddc6f517d76c9d02c273f496bc021086bcecf2ac53752ecc023044735e3fb27260a5778d8065c9c512dda8ed10eeac418f6807da6ce84fbb60e9b19d7169349282483e565facc1a929a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ae429407b0b69ee8f1cedabbeb6358c512a9b4eff3e4d56c845b7cd315e495b894c65e7ce24f55dd25e038f92f666d9023100a0a08d5ad8f7f69e3291307e84100874eb23c9222f759bc1d85ee4755bf42205ebb7e94828e43c6f1b3ba13bf4678e260302047c435bb500683066023100a1cf487647d237704c04ce1a03264f05eb8bcf0790f39369078ba11adee180078db872d62065f32c82c70989a8504fab0231009be9532076487945c1db05161870bcead1d680c8506cf6f38a5d73dfbaa797d93acd64e4efbdddc6543d52194785f2920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055e0364af98e3be6b7abf7594397b4e88af04929e31925c5d00155ccc31b5e22de537af2e06bff6ef087385a523d392a023100ada3f852bf09103a443f13c510c4c1fc9d2f7534eb33815d4e273acf4b868f5a8aea02bd11a069d849dd53aee426e3d60302047c435bb500673065023100f0afa48d2c6b00912f662ad40644346ea78400d73d4587de6ddc42da38bd346b7d2906867397c3958896c02a7e4852f70230759f571e94b34fc0d7f7f5ccae2d4903971e012736b481aab32eecdb81723a6fd3ea82d16ccfab290e9a513d0065c2390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008147b37bc8a5f0082d7dd0106b8e83846423736719633b4df08a048f260f3d93f2e219a81cb4a4bc0de07bb77affbfc2023100c7d1b93ef241d483fa0ffa0175d364dee672f1ca7ba851043835e04c7cbc3bdeabcbbfb23d33a6560e2c0ccc58464b810302047c435bb50066306402300f1374ae2d985c062825e2c858b753e71446dcaea2ab7e76a4c93e6f68a3a3deaeab28d052c6c0e1dfcdf4dbc4d3ab1a02301b04dcf656bfbced67f260f92861a872b9de2b01ab42d8d3c18b9c502a5c6e2a17245c76755f2dd502941016737baa250302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1edc816c9f5cdda374c346b159c1f521e97b925019951139b1113d5f99fc9cface00722119e00bf19a9a948dc2c204a023100f70725ee2941aec251abb517faf5aff81438d9d2e97f867180a6ffafbe7b1b6475d9c89d0108b48b3c5a81cfd05a0b380302047c435bb500663064023015fe3e6fc3980c2592a08144ce92198d9075523542854fd8b46bfc09de5cb4d699b90ab3ae83b2d9599ec02a70a8671802300811f5bcfdceeef32138073f452db54869872e4fe679e42aed2c682b508b61c596a5a97b2b574105f3551954d8513d0b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023077987318f51d4cb515dc9af18b2654c0fec68691a216f6c6d8f055bbba5ea8abf4c5f40474153fe132772b798fb33281023076db10cfefbfb1730a7b53619f3a58fe8c8005cc79965fae4e86193154a493d5a0cb368144827e5f98940dfacb3fefce0302047c435bb500683066023100f2820142333feac081cce6fdc9020ee156a99fda9712c436d2211a89f063bf967b1499fe41b7516b09305a73262364510231008f2b9a4d314c6de2dee687a8899a60ae17815573084c9e9edcaf80e6cd72c78918b0dbaec333bb9bfb6181b4b637b2af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d02d0493fd8c1d91db9cdfbdd8ff1f317e119466e437f874191820fb10474c377509ec47aac98531fee923b3db5fa6fe023100e2665f5a361180d1503b6be1dae5f0b455e27af005d4845adbb0616ac129eaa673ce4f289d7715542ae537c626a8946f0302047c435bb50066306402302b4ce0274c15ac47421a82540d3334a689a88887d1ae8c8fd29de4b180ffb05378eb7565e1980d2032e7bacb34b7eacd0230344d8486cd1edbba8cd6d504b94ba7b0efc930cdbb5cfc54b5989fcfc33186299ff055ae372d641c4d72281cc4113ea00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307c697145edee05aa1e0e7fc5ca68f372ea0be90d00dca4733d68d6d7d286e4c8325cae1c3dfe120343d0786ebfe53330023100f6fca5880d6f0ffb89f42e6c9f898fc4bef3df3c220af7f5fa5afce7cdbdc82024da190696562a8db963aabe2021072a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500653063022f13a422ef8152739b0468aa84f5d960a07cd477c10d6e8ce18fbf18efdcef1f70135a0e7a4f861a5fbfadf3167e7ba302305138df21fe3a6c355a835f1f69462d3813169e16ba8322449b8d9770861025f882aef74a30c91271b12f655ce23525e00302047c435bb500673065023100e683de4ae40b4812c69b25c02655f49ae713645a84ad72d4201efb77cfe8243dadb464ba0b3c33ac8fef47fa2d58402e02303f2b4385aa72235b187abd9c74c9bf6897143fbd4157de3446d79088c50235e54e4c2356b1c2acde28344fb246e060dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ecd19da1e17a4262d5792c230480ad0592e2e5f1ab8bf1a6d6699d68208e75e6fd7982882c1aa5837facfa1eaf64fd8b0230303d80b4b69a7b05278887301df1c56722b68ce4247b0ec63d6964fd0b8389dd735335da1dd695fb641db61ee4db00970302047c435bb5006630640230569889c0617164e383c0d6c6e693dac9629dea25b3c9e6c0163dba76e1f16a0d513bfc7c6633e91049c8458a8d9f76b90230338d54474a4b959b8508073c5d95e1ebb2d43a0ba5d871b8aaaa1ab0e863d49fd9d9ee46926fca4c8e245240216919340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302ef21db36d7785859a80b978fc351feefe6d51afebeee5ad402b9592ed668a6e5bd55efccf5ebc29ae06b365860fdae20230465396e192a055e0fe4c524f5a00006f57e8d3e2a7a02c0ed5d58859cb78bdff6cbd650017172cc0f1c575a7580687810302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301ae2ff69cde1b726422b93b1c14c276ea54a04f5f948c98bc05d5e0f1040149d6e31b606cb786e1bceafe0cea22ea8ca023100a6643f115923f9f3f29852e7266e49c7e2f6d1c7587a568525eb16a99bc65208c759ca6f464c6e83d08a1c6ee20cc37e0302047c435bb500663064023010fca6f789ace1681d713b69feb7d2bc18b43d912b822bfeef8c4402ccfb06b1d40960a355173a3cc7235b6fee8257a302306bea729444ff1cecaf23d00cc9dc8c06d62cfda610dbdc5417e90f680d431ce00d7597bf052a2b6c682c10e22a0adc230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cd53bc021efd7c4f1a77b29cfcd2f5f5906b708fd09fd2f5a3202edd223aa148e35ef817aee1b9f3978a0cdc6533f55d02301502af6214261f46eccbab9b599860ffebfc67f03fb749e3242627d9bb9f59c762e4e5d7cdfbb12349b89bd2658d1cca0302047c435bb50067306502304d240c9481971a17c2c04827e90fd5de85a6422a3d123bb0cd075f9a8f0ad01cd21079c77a12b576dc5117222d2f8512023100d33051ebb342532a511e6a27072468988cd1baa5d26ec1168709b3f2032d8881adf941e6fc19a193d9205470eabe9b5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023020d200494782f219c4a2a0d8c49a2963a65d90d4768ceacae0c01dde9bf2aa2843e6a5a61129129dd79a5c11f331fcf0023100aba9fc6bb9b2c8dd24739bcf90d84faa69e2852ddb1e9edd0cdab68fe4d693bfdb2b826ab74865f589fddf509f24dfd60302047c435bb50067306502306a266cc46ccc5b4bb7ad145c48cead1b6ddde96fa7e3c6b04402820e3747f97367640d11814ca0a42673e919c29fcd81023100f07dcac57f9210bdb1f86460953670423890e3cf5a9a2a2f6d707d72ac02f39a1cce277e306c3d09eb9398c353191c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100915ebc4f35bcfb6e3b0ea46dfb4f9be453c7f2f3fb40c6c8578d7c6b91310bffbe20c97a98da3886a13f0f064f8267a6023100db384907dce2734f5dc1a283f2311a2e7b95492819ad93fb805f8c0f9fdfdbc35f90dcc1440d3ac4c8e14f50d4db70570302047c435bb500673065023100b466ef124026c5f59f554f8e844691a438f7ec5e16fda8e9367dfbec5ef2da25d3068e7721f2e727c52523864597b14b02307484047248b4245f564d411286d8661777eca7631ce0b4afd083517b7bf74374e7ef21bbc9e224884a2168d8f29f280c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bda9a1c5b977265155ceb0713b30ee7db856bcdcc7282d5613c2717164f86f6197be5ec95ee78e8e77dd251484a4302c02303dbe7bf3395a42ae64e00a95dd8ce320db9a7172f724b1594fe4c3c92b52206054d38d13581c20424ea7e12ddaaa9b690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e32ba5a388063e123a5f97ae818b5f5e4b240172b26647ebe2d6b25cce4672b1732bb0c2bc8b5debda3a5378e80ebeaf02301cb03e24752fd122f6d177d9d781975dc46c42e4e185f353a147d5adb39f60779b72288af8430faba71e66387f1439230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301bbf411c40498b5e8c82fe2f9465eed2ac0ffaffce249c68dd57a5b24a14350d4ce963e6de173f788fb870f1e38b637002304c1f3eec2c7b13c0767bebcddf1de2f7305e83e0f4ad6be32b6433d15dd8d98c0473092aad1b0a171f4480967329cbc10302047c435bb50066306402304a4957c9a67baed3772e6d132d7876975add4a615d8762730294d6974e0a2687598315faca19453900832f4bc2ef1bf202307247e2d79760264b36ee31ee46f5e38667d60e6279ab338599bffdd7e7ee0d0c5e8bb6c28b086e5f260dc4548131bbf10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230580fe5dc4a08688d6e6bf1c08d23eea52e41a950290b6623e109e5c41d1221300c311869b0f7841fad8f9637faf80e66023100a753a027a053a671c7e631f01513b68f270b95f28b4e9d450dd41a8b33812786c30d190595f9151e0a95fc7bcb355c300302047c435bb500673065023100da897791b8453fcd81433f32f0dacd6cc2351293804cdbba91d1a20b74f55432dd4c8e1753be3093f7becd2cf5459c1c02306c1cda09d304ac31cc3c3009863667210e46eb1eebc111bb2678d6d38411b5b99b2af855fbda2242949ebf95167e5de80302047c435bb5006630640230522f560fe5306f2f42a57f8f7a590816171d8e94c7045142404e6c675cc1c7d0d9e9beb75b1a3bed32d361927aa93fc402305ce4681dee43772e36fce4a309efd65f1fdf7d8a1e40bab3e9dd54987dac3fbe24dadbf8d605e475e53d0ce44d3914ba0302047c435bb500673065023100a11ffda8ebf54363124e6e37e58d3e2fbda14a66ee0ae32c7dea57884846379365f17d34de59d8046c227baf6838c3060230634911fa8ef106b6d0dd99de0443f1780fba4959294eb467d19a298f34fe932edb16f78985e7a536ca8b40635f0c04c90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b09c33666806dce67377acf517cd87182f6cabff4ac53d66153d2750732f0ee6510220df6b4d3bb0118061d478d85438023039c23ca11a4ea6f1495a15e84f9db4cec900a51062e8f282ec1c05ab337542576bb04699002408cb97d37678ff9555ee0302047c435bb500683066023100d54fbbf08006c95eac6b69c286f6d8b345510e739bcf92663b89e7f1f11d0f2682d17bf40fe8ae0d1ad28641a0bbc051023100f66109e6bf1d5613bd753b9e20a93de135ad2ce3099b6692b8090534ee408248b557d8044d930743d9067aa0a21ee9a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1d4d98705a255b126037a8f52f37444f8f11df6af2417706476486522c4b8e7ad2c0230480489ed875130bd42668d30023100e8589153d0742b9c5eb692e2dba52a5983c65b06005cfe82bcf1c48b08cf91b838f4d7fd9e6de19236db1377e9f9562e0302047c435bb50066306402305963db95a9ad67fb321ac47c3595a0baddb4f74dee161627707bbe2afd34264bf610ef9d3a9ddc2c0edd391c90c6a8bc0230524908d18c6a334c3fe3e47e916aedfaa8c18a66997320d3a8a4b91d0b16d077447439cad3a6f382b491c54cb4892e060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100963f10a8b959ede4acd333735105b9e04bd4cc8d0024dd7b804ad7b75d22fc6b5814a38ea69228bcaaa3dd5aeb57108502303e27faac781eeef41f4a2b1bef7bba502747c756cca3cfb1782782cdd92819f50f6db6795b0bf9b733782794865342190302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f90e8b0a531ea92f527a083e97c4979e323177714ee23f281f613b195370085c4cc8ff8f152311a5877a0e7fd03d9c3802302a4b3cc6d0199737989400750c68cdb98312007277efbb7fa1e7377af2fa593152f28bc639a6a74c9014be620f8f42a30302047c435bb500683066023100cd8acb0505e45f70ecb57eac72bede23176c1d02b3563137b52168c3f6ab7cf7b56937fbe21a7768fa000388409fdd94023100ae5c8f0b6fcd19bcbd69322c712287d8345941474e82b435dfeb3da8758fca7ad6d9b6553c73e55c8979194acfcd7b520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5e1a90a36d40ac4a93e76ebce45b5de43dca9842a1d2b540eb2aad3cceca9dcf0c0f72a15864d59f9e02a0cb9e14c6402304624bbc6bfb5c9c59feeb1f82b06c0a1f8feab0b680d0778a63bfbc6f4c1fc49cabd5601eeefea5e92b541d9d9868e5c0302047c435bb500673065023100a32bba30286e4b9fd621633efaae23fd2bbc2402a7295742a4f8c644fd85cef32547805d2f9d7d15b4041ad8599671810230247d2c743e1efbf77eea5d8adf5eb7d8904cb5857ff32ea52f4e1efa4b53db70548b19b493f1cf817191fe6e6b469c2a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008c3de471a8ffa467dc64ebc3c6911c33e2b12a401c9f2c7c3b25e916b30e7539f9e0251e1d938ea72d89313434346daf023026f38b9c8e2165f6dd73dcd2cdc748f7f2e0bc343fa5cab0dd51a2de5f0cdd96176a37a3379d5df18aef82b6c32b29d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1458e2e7ef69bea8a647950fd42ce7f6a3baecec8b37eda7d4dacb5b87175aa1bb50b00cfac864d0fe72622fb09de67023100f6ba45cfdcafa736c0fa022cda8841295a6fd8d79d3bc47d7041b52bc062b8df0f024e09f4de202e2250a767eede92f70302047c435bb500673065023100a2508fa78776f07e03114a1e86a998bf5910e8cab86bdc60ca1a209463b6b997c4b013e33b643d4505aa1bd016902eea023010f2e11f484f7442c8a887244438924e8377fd078f1817da4d8a625507d80bf81bfbcc9fad2cdb3e59bc1cf1cd857cfc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a6b089fce496cc82301654c511104728fb3d1a3f3f36e43c14c4341e5a2715bf0763398574d8e06a17d95ea5cd6e1ea023100d87e736a76d170894ff43d3253ef6cd5ce405b575e9535ab8f057795a1ebe8e85f8cb77638b53baa2234735aa80228f40302047c435bb50066306402303ca4e30d46d06b3815a81558ca68979430c04e7cc753652b7d56d0e39246a410ccf010b1f38014d6d922a4b4edee2820023056e49bef3ea036896c01e57f22c97e4d9b0d29c5bb76e9e18c2f73b137feeda1abe34270a2a233923fd8c50bf18dc6c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b16c4c33bd2b2228bb766701b37231e1da0ae9883762a0ea3fa9c2c2a7bf766994b1a1727507614152b76fe32347a15023100ac2f4de0ecf16af83b6d5a72fc76b3af15764d8ca2962ee7392775e82a3110b98e6d457158ef0e140cfb8c69c3c595520302047c435bb50066306402301c5e648eaf39bd4654f49a98b61f16457329ba0e8759b2aeb442765e73fee0260a1d8ac19b4d41d108940663840300d00230462fe432cd3004492568a8f30528896d260b8e6f0ff6e88026a07d275bf28fd79b656047442d36f1eebb8d8af57d91c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f19fba4dc2949a59cc5700c456c926bd2ef3f7b95f936d81a484ea85485011b660ad3807f5a5878d1eb69637e968fe702300593ac6471c74b8428d2878cb0f9ba2d4db4f0ad94f0122c0dc79489408467d5595ca1904902c8d6aa317ed743902b300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230105b6246ba6a392f2812f3885d164735f5f9fd0302021f436a03584bdf38efa474fbbe14222c534fbbcaa2b41ab64ad002301b1488f3961f2dda34498087ebefa511f64b528fca39d941f4edd91d2408586418a1948b812942d14c3c1d6920f37b9a0302047c435bb50067306502306c82af37cfe0b921d710d275e61cc165f4ca841eb6dd5a55ec6bc6a2f97a68f4d1a03dd40cb7dcac95df7d2679608543023100ed9e9035486408e8f83236cdde4f85740b11608fc87a4cbdff5cf88e69b88e9325207dc2da77b7f87edb0dc3d6b067bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c556e013d7ca62b6b4aab070fc5e9f003e8f103af0f34ab60aaf47e9fe9f66fbd3c6c61c45e174b32750c63b7748d21a0230441a9d7da13f41e6a1d9205c929ce81f71fadee1c09aa49d9346bcb4d14e23aa98193122eb8a311d6e0b0b0822f315300302047c435bb500673065023003a744cc05f91be1b1894465d33f19d81b6e2fc44ccd34d7958cbbb08de3f3e85bcc8a3c7a2a2bb5cb40df195579af80023100f227d7ba9dabc1dc3eeef2abc70e03884bdb39e70c94335154cdc05e3935115720e88c90a92c13f8cc14d498bfdbe2040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eac41e6730d320c63f1c5d1bb4f1f8b0fbbd9d4fd47ee9bb9ad66e1bb4523fa0b8a514c62902e06e0bd96547ad28d4f8023100d5954ffd519e3fac60219f17303117e10b7c91545cde362112f26592d37bcbde2010502a31a869dd780bbb9783679cf40302047c435bb500673065023100d55e3b07e9f5651c9ae2fb59e3a5540d04b1fdda1607128925d73076992b3ad9fee208b9251574db25a6c2b68dff813e02307624ab8e8724741806bde9fa5b7c28508492a3d8f171d8cd3f5bcd877519be85a74057c32001fdd54a1be7111409956d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c9cff3c8c9d216586eebbe29741a513fa6d47eb2cb2662a661e7d763e3cfe856708fd24bc405ac088aea432c994c3c0e0230333b8924e4dffb2691bb15c444d4e7f0fe4ea4790be6cdd22e88721e1fa940201bc5970a5ea226947c2518c2683a01030302047c435bb50066306402303d884e219c9e369c6b39525b83ec1b56e95737dcf07d10c3c819dc2f2cb51748d8d159dddd4d3fedda5c2d80f94009b00230250c5c2dad64acf1e0b4568a633ca6701ab5943c1fa7d5f3dd297f88fce82054d82ea2fee51a6a3ea56a3185fe64533a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302166ec1044f00bf67a7ebbe40ebdb2338ece67063e2205583fbd50d12e6ad6a268e3f034e7abe74cd1d3842e8d68b190023100cc246263a15f2bb5ce369bde4c9804fb1764b4b1ccbdbfffc86b1d0cab15035445aa20fceadf5ba54f124e74159a396a0302047c435bb50066306402302bca1fb9590fd0dd4a6ef646aeba8157eaf4cbad3807b26b2e9a404fe3de0a924714fffe58ae907c0130ff6afe48605702307d41cb0b110ea318fac8fdabb7591a449b799953f4010591335c6e06cb0c9cf8d53b586d5c2bd9de044207ae3fdadad80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc0e478c50bb994df336dd17a85d76c5385043447c145ec2c7b0b0a1a3a236e90fb3b0769b46a4554391af182a440bf1023100d67ffeab8af262b0f4ecdf664c3a9e5a5e3fe28d8e622d576e77ac6e07edb1d9db0107f013c12b4e7a4f3fadd03104fa0302047c435bb500683066023100d984ecfcef07464240a122f78f04ee2cb64818b3c45e9c3dadfeec29fdf9cbc9f75e16b8967fef153b92f40f087400150231009380a6bb238a00873a90527c182609f2001d3c67f1cf8d297019ab4ee88271c6d3bab78f83abc17458197b2e0d2e52ad0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008e27cbd2928bdef69a42e298476775c76099c553fcc325cdf36f13c8a47f5ffd4e4261e323c0908672724e197aaf75b7023100bedf07255be99347cbe069672ff959c9f68e4168ffe335ab7004f0426c9b3a8cc2eff3b3e46f7bf25c41934832d67c510302047c435bb500683066023100e1aeed362cb9bea82ead8a5662e36a0334b6f9e7278f3ff33e8f34aeb1a08fc65ec73b02cb4cee4ec7e155029273ee3b023100e2accad3727f5e602e149a9b6e557029f4aaa8f7db5d19775f309283943929713fa58e05880d393b0f7c5d9158948d580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310099e7cb1e7cf9ad1e925c1c792028d66ee59d78bca48778177f8908d163e8c6ead74ff6d2d8e5be7e2f10ad11a96211ca023100f3cc447f93ca5f3c6a0fc8cd4a413f75fc58003a056ec94a448cec9d2aa75f149bf5d9c31d4654a93aab6739be3c6ecf0302047c435bb500663064023000c7813325a7ad6c889beabbcb73d2ca51d4256bbd8b52d8c6ca1e3c991cef9386333ca5724ba8ae9965bb789242955f02301d62ceb65717aa14f55b63734c61fb48d35ab3e609f57560fe9a6df91f55fb6007a36e944e34e08f3e255a4050bd13560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b59ba494702cc4b33d2c6d2c1fdf91de176e362870d45ba5f8668dced55707ec73fc8ffcdbda2e6cf6ea14a724842f00023100bb11faddcab011b44d73e70642b7e5b7dabf7cf38bbde1d20351d8cd34295f5d6a02c2dd533301bdc7bec1dee0a713340302047c435bb50067306502303adc32d4c4b919956241f938cd5cec0d711cee6aa87c3816851c98e79e5cc1070a6ce4a8b670c3b0fcfa1e2a8eee5d5d023100d7bccb4ca6922483ea39433978090af81116aa2c8415260e73b1982fd65d6a20d05f8cead3dbeb03fe362254f2e72ddd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e809f3964de21f34a29175da609fe459717db4d1c40c8516f9e784419c25bdbcb3744aee4b92792ae8e011c583e015b0230342ff71d910d5b2850b08f5b06e8a8cdf4608de5eaa40dabdd609e88234472f428d0c573284266e60e67bd9731ad0e800302047c435bb50067306502304c9e82e8216a6989d3ac7371083d12edd6bfd57b85d7a5607e05b0e00e9f571a92c77742a0da5d42530d98117c7eab24023100e83ab6af3d30d2294baf18d5682e2545eeb61890a67a9897690dfa7f07c591ea75909ff5fb0bbcd37d323431279629a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023073c521ec62f4e0a8e1ab018b54f22f02a679baf2b96e0c9b393f7985dc2f8589291c1d0ebb911f7a120e5f44caf4d32a023100affee4cf5fa0d867ebe56b8ca58ad3e9eeb35dca97f52d58d0993296e6eca1092693f605165307dee7b97a90f36b0ccf0302047c435bb5006730650230505c3db27fb3c2cbe2601fbeafabd833ff0b818dbb14d05223c7d488bf207ba1b5a9660fb209f0ee8bee78aaa8c337af023100a6381ace3f91192b2ff177887a5c69e6d51970e690b309cd722a5bad0eb8073859a3b0bb9e9abc6bfd9124263424500a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305da9f55b7575326a49a9d0cb17824bd5f4423af735f5dbd048ba3c06f7a3925af747cbe2a8eaf328226380fca4a80b3e023058be735813782a72132527029c37c46d083689db9c69119eecd915ac58aa0f388dc2c5fa9d14ee8a2d06a85d3187d21b0302047c435bb500673065023100864ae2a03de6bc371c6d37b3a4ad909ac37583f7024592afd34cbe77ec64b55d8b6d5212d2fb5bf2b1a5bc13c65088c60230686239a930b85eb8592190ea9f40bd7713d9614e533edea8e319b1c0368e5df50a63001d32c6fbb9c160680b0957e8ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230262d6a452dd04df2928f1377a0fd37502daa0551e8bda8f390d933370e8e27e6146551950bc01ae3d0628ebc569afb49023100a8f1548874c02d2138fa93591025b2b0fdc9721b9776b85d6e8cf4740a27425ae936b47647d0f46074df824fe45e95cc0302047c435bb500683066023100b5a25fa59472a199ce2bbf38cb03a67e2b3350ede90d5da520b9831ff758a74cd9b5cac8ebf4c14d16d4e628381dbdda023100d31cab6a262b0ac3c1e2275f58b6c21a96f985cd6a9461ad2feccca24195bf5562f36d558e8fa48fe3855e6376bce4fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e73e9e1a64dd16338f1ce8329fe13afd3f73b4deccb09f0d66732b8a2eca7d60e3f5a7ce0dee16dc6abea95a7f0f2a40023060baa17f03e4774dac232d5ccb8ec8d2d77241400ce9597d3fec587d912c29fb568e7735204e5a99acabf5fc87b904360302047c435bb5006730650230660d1b480a8658c86fd5ca2c0ba6970765eae2281ff67c8c2c77f9fef1f7ec49c34195ec079f9e6c22f9ea04549f8047023100c0b3efd8cedb2ca7f8d5dcfc44c305a73e51826c8e5e979fd76957a01d76bcd501bc776750821030379fbe4099a9472f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230377d13070af0d0b0e3c24cd14f7ca48e96bb124aa8ff0f548b83d67822a26a442e62eef967276e5dc70b655bfd4ca5b0023020dd00e66acdcb205f349a20a955118b8c757ee8896f318f170b472421ea596b5df8ec756a4a1c1fa4b147766f9ba0b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba2229dec88fcb1de4bf4128f946ff15cd688ed4dddc845e8a23ce06922b7c542e8b1337e92df41de91c703c44ed1c3d0231009ed916d4427090a2f14080fa963009cddd55d3a190d116b34475066c4ffff0fe40ee2388efb07248e7129e2dc767702a0302047c435bb50066306402307045e22343baf2745f1a7ff9507e13bce06d53283ee610bb99a00d3268791e737a2f4ddfe0d15e9b68e605d51acea4a1023022b6078a0bb4f586e2f01942eafe81a1c64ba498fc1d86b69c58194d3472a0a8339a9304ffe8f6eb49a670df0b4d0e680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cae585eb251e7bef7147dcf10b93160d527cdf3d4894f960503896502809da0eb633bca093e3ce225afc58c98bd6b1d6023100e0f4b5ae80f82dc02e6b41c23601bff22b73a1bbda8dcec6e53f540a6a2bfe284a937dabaf5f3bea500e9d172b8114f80302047c435bb500683066023100bec81aa0822cf10dfd4368fe9c7b263e8596ecb155ffe74b7d489a8d87450477d1c90f7913eaaac7adbb839c9732040002310081c92f1fb765aaf821980d5068274632eb0e523da7c21e66a9e86355e3fe9e88852eb0a9a074b0bb29e320573c7f744b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305931a3dc7d133174ebfe8fcd4aa554231f3de60853c610e6cb66ba9bb6d71db474115aa80ace3f88e09d2c2a03891aa802303de4ac5c8f9aff66ac19d1aa6ac571e9247774c4bf642c1a4b4549603cd4a830ace1023ad5245887bf3a935f2c1257b60302047c435bb500673065023100fdb161f51563b620b437ce6ff7d5afdd301427c34330e13f74032705e5a46dca52053f82d8644d289e55bd741bfd4a6e023069f46cbd1feff51c2152f4b94747b01e816c651981460aa99f14558fcdecff4451a79802c15417d1a5b932ed55b2d7d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c128db95eed872662ef5b194cc560b3778c33c0f5b7a499b71d402d18836a9fa4e075e9cd527ee3dc9d7ffad26e829702300f3b24afabd0a7c4709844db83421af4e80b6162ced517abb1bf314e929baf830ad9b6a3a98186f83d3d29ae0741c2830302047c435bb500673065023100b8c24a85f1c5347e1a39c12552167fce6675bfe75f3d2c70fadb88e7991197f07a0351ee243cfd77d2aa33add704a73e0230104f0f9d4db6c7a7fc65d1671f28033db92feb5b5e8be84e512a803c93fa0dc29c44c15067c094509e20d09d31a548e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023015710d72536a6ae52dda79036ddc3e55f73e8b7d8eeb7114532253efc84cc67210d866b2349c18f79bc7a3e553fc389e02307b57e834140091d3e857918778a98444e12975bf69d406225eafcda3c8742773d154d7b69b5a2333a6f7f3edd51135d10302047c435bb50066306402300acbfa2afca95866d023b5c63dc887a8e7d254e76db439a2934f805e8aa96190dc946115ecf86932619f50714cc2966e023017633187149f488362bee7248f84c7b63813ed7676282d5c79dfc10304bb84fb92b7aacdb3ad439c33e3915fda1bf0aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230107c693d0d5deee84eaaa3c878f81580c7432038433db000920afa2407f30aa72d5003e7c5329d6186b7d3b5fdfd99fb023100d66deddb9855e33cfa1ef05a35a3875fda0334bcae8cf5121aa6c29b4df6595d03b6ef51035a5356e67b98d41531962c0302047c435bb500683066023100e96d7c9ce78051e8bb004092fada4ff3fc25e20d93f21887dda22d9e2403bca1023a7697a7a5eab6b1eaa97db30360e4023100b4b88a83b532eda8f62adaf5d5283b114c7252f574a8e1877b2db3ee3795b6c01618090bd7de6ca0a67b8c1de5c049710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008765302383abc8aca35686d2066d6efd52195abd00f1fd14e67eed4ac1af10408ce1b8aaf59956c19dd6aff3c62bfed8023100d5e86fb1fee2288472c802775206800966416787372f2ccbe9fcc366fdfcf0ef53b1b09bbf8e2395f0331998f9e033f10302047c435bb50067306502306a8a642666bb91a2080d79ed01a6aa54de1df7f3ef859eebb8afa6d40f21005669620d436186e88afe3aecdc5e406165023100c9277e2d37755c6b3d6a4ddfc6981442448855b87ce1d982e93fe2fb915f5e3c4649858c90fcc024996e059ee95e360c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300a7cd9d939a6570d4506128502e7014ea7d079b4b2f33bfd5d25db85a219e55f857e60cc2705fc2df8a996408a95e51a023100e5d2ebf9f2e8125e7713d9060c2bbe090e2e6d28db5493765102e2562cac74875a41b9d0cb3042256569deae4d1702490302047c435bb500683066023100f8736fee84f27f21bd04f16585aca886665ba32ccf56bb6acf71809986944f43404ca2259b0a15e3dbd087256efa33eb023100f42f18ae3b3d36c566d73ac85236e72520695b1b65a9345c70de6dd5f5c2a7f01c026a1570a7ae5eb4dd1809883b37680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303981763294c5266cd5b7f4f37bb82720d96e7515a0d6f750cee1a93d0ba49134cf7d34bb62bb889e494c5a3c329b786a023100f3fcbbeafe8b45d34316cbd4c251c6cab7cbd74875f87e262bcc240d4530df61594e69e1ff65812d2aa31bb2bb928c510302047c435bb500683066023100c8a8fc704229bb991a864c466f76b6bde06b4b886b4f64fa9b5a89cce1f21f370e21250c2adfda44fd3833019db39252023100cd69243f54a124f8d3505c6983df09c4f743ae6b8786df35f8d3bed878cb6ef7058e5411ad4cb9c3da313346eaa22ded0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100aa2b357c1d08fc81a0ff3ac2a7db75426cf3e4bc0175498df77de2f7a339c08486b730a80e6be3e2c93f3fb2258240e4023100dfba3dc0f76ae72bfc776b3529224ed7ab78b09e4aed16dfdf88ac739210e22f15aec4f462a3f1e523688ebbc72077a00302047c435bb50066306402303804db3b205af57a8b5aa9a28136ee2df1371f4f732c6e5f3277d9efb582faa8b4cfafff1443aea001af863921ba89390230191518e04d655878225a5955052f81a556f08987302ae6f337bc5e19043d9cf21770f69fcd1d6f828826055a185944860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e3e8981ddabd18ed4da9f9fc0d76fdc19bf4ea52886550475a0948d6705268b1d2099ecee423ab1bf384fe9989f630af023037f619b4441528ff19ba91e0015107f27087f145304e7b30f3adc286da6a08766c0bc88b0b034534fae16da2ebd95eec0302047c435bb50067306502301a0ac3d42a0bbd1c97ffa25b90fa72e07b1755ebe207dac82e76bf60dee2b2fe3bca01ffc279dfae25f7f0573163f7cd0231008914422870afcb2fcfca75b9680c4b60007765d49ae5b79ecbea65108ef250c9a98c8960a3f69b67c7d08695901a56cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ead665901d7fb341a9f960d263a98b52889d35c7b0394b89e63d80824f4a424143f318aae93aaa0221dc6cf69b78ee8023100dab029852564aee10e7fad1ed5dabd943bf77b37ed48156ae6dc443c69ab028495655eddda46005e922467852a820f0f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303e33420ec3139a6f3b8e3a2aadabae08da9ca1b52c89a2c7bbb1d39f09e1fdee5337c723b22340275b9991a166fc7606023100bfa6ef1e5262d1b58dff63f0acf85b0aa9a876f5e570c8d512d6845e00b5b74d929519a1abc9960bfd28f74b60564c150302047c435bb500683066023100c545c793257395d0d8b3e82520218acceee434b378d0c993d00499d7c51f7b1bb5bdef09775d4a598752c9708634c0c3023100a00a05467ae5d9c39e348b7b3ec899f65d87bc96ac21094d2cfaf279a79a6251e87cd1db9c291b14ad01c81c2d15cf830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304cb8a56973be13734c214d0af0efe4ec068111ebddd5158b24e1318ea3d122283e317ce5905effc84300c169a461c718023100e622ca008caa503b61e4a09aad51f381bd7bd817075b5168cbcf1a88fc39100992dd9e83d4cc6fb24dba0d1c998129980302047c435bb500673065023003d4ae94fbf36a174ef3f262e78969f2837d6d5dbc4dbf0a183db31efb8c922376adc01ce6d8648cc0b74b11d7cb47e0023100bc080960bde5b767ce0235a96cca5a14e69fd7b35136ae236ad03d5a6096e19ac61910ef95675d91e3ce711d7f7055c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c007336c844da5ebbfced9b09f480cea0f16f6b642bdd358cfb373fd65379900376b74b3483b9de06020975ef657839302302152d9eddf24f67ce32b7a8aed53d3cc9b9a94925b28b966e6f9578c7dd76ca8cf99dbca2dba10beab5145e52bf953ae0302047c435bb5006630640230332dcfd4e7848f7ad6eac3ab44901d26f533bec7a0e5e523a36d31430d91fb2cd2ad203482eb90ebefc8a53ad66c945502300cc420c785fd9c2623a6b96c277f2c29f8a52c5d771c6fd0a889987411b47759316a3c3410dca98d5c0c0e2dc82068a80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302be64bbe4283693afc00e1c1a499577e04fbe1828b8a7fff719715951a379bf8104e29dc23810bbbc9e3cd08515f319602306dea5f0fd9f0fa4ed0e16c7d302a415d8598f6e355e5d38009ffdd56f9218d614efcf15af927e8d0df4ece19698292c80302047c435bb500673065023022dfda6bf368f71b0bd5de4d4525f10e25ea62b177a7b0377836572af4e71bb6462cfc940da7ea907b8b04571e62375602310098f3b5aeb226d6d82dbd2dc47e3fc997b58c98c272735c663932a5a6a98b24d2c970c79e7bdcd45beb8f44d57025b6c10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bc2b5d3235a5fa5db2cbb59310255ccae84022f4bdb1f43ea947bc41af216279f715bb5867d6dd0d7dac377ac26089770230409dac51d7f8b7052c3a49ec9ff6a4bb98e335ab9d8c852d0eb72044674f6ad8fbd375582d057bc080b8616138db25670302047c435bb500673065023100a5a59e0985f8520b3000e8f8f36a213e653732338436567ccde03c5158fd9980e3d8a3a6ce3e9962be7eb8718cf3e7ea02302de067e95dd935de6ae327f4c49e784a8b17bfd66c0245533028d89ec478cfecc05ba403f63ddc2799e696c07ad979fe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e062f0fd1411c1ddf8b5808e864166c2f22a6fa1a086dcbd05aeb1cfbedb80460e8c200eb8c8a02a6dac4a2bc43772d6023100e4ea2839c40b265f37c6608fc8745aeb070aa6e480440afd65266be6108e6a9edb499f37d773e2b43d626219a0af41450302047c435bb50067306502306ee320d69ffa82ea24218ff770bfc9c15c6011286e485ed6003adf244d2cb9505f142cafff1abb43a589085735ea969302310080f588f81279bc60bc647a94efe5ceb52aaedc5b35e1b1005e68f6446b62b46fa2e02e093fe4322485886c186bb2fcd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303eb9ede857d2327c77f9cb5a0ca04afe02c421c5a0a6630f653d129414fb96c7ea1e81b0fbf610bd94234539e4dc475f023100d68c901943e7150e9b3b9ccf8c7492f727fd966c1538bb9a829134ef04731d1627c3562deeb3316a706d000e7c3319320302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ea0418d30ab6e8ed6dc534ca0331c533f170539c2c2e9a4ddc32cdb5061d264f9a134d90989271713ed6e60290b6f11023100c3ffe47b379764fb970bd92aba1fb8756faea0153d86aa645049766296f88b7af685c3b7690a497625326216a0b48a690302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023056e3d362505e1dface6b35d6859f2be43d16dd0f8bc28b9659da2f5cb751055b4333f5598fb0253147c5ac5fd6e6ae340230206106efeb30cd626a235f61a892ae88118cce8bb94cb49c0157fac4104bf1050d2e3d0d1c76589cb738ff7a62b2e2120302047c435bb500673065023100d5488861f85b48a0e75f8e251259789aa5b97c69873412da7d91361be56298eadcf43eb75f6b03aa070c0ab9830f760e023039deb7d92e15718ef03c34a50d1c5c54c95683390288cbf25c06731472ae4dd8b8bc191d430c583e227c282aceb3de6d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f3a330596b25614190d0d9a9d2d8824ed25d0800a1ad2807b41690241dbdcb0aabb3c417528db3ed7d43b0b93b305169023100a2d65435ecf1a19c779ce320d5e880d0c60841ac8c8e11638d980c699f95b788674b5f5bba59bdab4dc86bd7ad0b19b70302047c435bb500663064023078e7467e3469c02c51bd1adb733f1b3c6b998554b6be8abdbaa8c7323338f360d382d8edbf9493970850eff2c0cfa2cf02304fe85e87ecaa43162a29623c1b3aa52c370ef01a8bef683e409b4bba4a5ef14879eb294aff6e7daee20afe854d68bd860302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f496de038a43cdc7aededc85afa4a45089ae0296f0bac0ad0e93c20d2d63c65e8a0c386facd032f957b2bf511005838002307edc94a5ff366b02deeb1ad56cd17283b4d969ca752699a8c4b5db61fa87a232e748afa26b3f11e40c4e3cd252c3fea10302047c435bb5006830660231009649ef3d2616885e610d726b6ee4c816bb8aea8d8c223b7afd0577683ad7296f2c4d24a30fc2adb7a51ef02e8382942f023100e87f33db013ebba64ef492f9a3d4232bb849e6e111c14d2ab62e205f5afd6377979e5a985ae6b35b50988838d268e9540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310096e2582b40ed2035397db6a8c35df09e2ddca8953fc25d78d7b92579a919395ac7910d895ea187269c8ea04a11dd17da02310098852b0cb3b33465cb8aaa61238560af885da709c9fa17ec658bd72cd9b8d3f970dddc358738da1b614cd24ec43345490302047c435bb50067306502301dc1e37732cbcfe35f11fe2d29bfb89f8e206ee7263230cdde6ae4109f2a6c74a850cc033b22ddc6aaf43742a0744b5d023100945a89d30e0c3e331725e4492d7a8ad555b6719be9ae4c66204b46530ace9ef845ce3896b8d0401d1df60a618c5bac410302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023028d888ddce653f8340fe34914441d974146d71deeea4ca5494a253c95401babeb493c607bc7d7a44b1db3949aa8c62e6023100ebcc54d1c5424c9d64bed4672022da8a3b3dcc0bc2e4588133fe04a4cfe51c73c8b42268ab06f6048763a4f564d6d7150302047c435bb500673065023100af172e24957256b876f90cddb6cb65203163e6da0354f1b6270858dab3414e46f84fba10fd0cdb79647f1238100238a0023067587cccdf374965425b1dc49c648f7c7273c26dea1d5a6c6ad8da800dd464bdb8f99a1e49e99c9f52dd9591f83c84670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230046cb3f5431054d9eb41a06ef245f7ac064df4447c5ad04012268ffcb914e8640b2e4fada20749a1e3c81917bb3c1c2902302fa5bafbcef57001b86cad7b533bcbdb15d70fdc3310254e923498642c5a0e1291066198eec0a0d60b925f1f673fad3a0302047c435bb500683066023100962e6711270864dd3f3bcc11040370c654be3786e544b8c04626eb3763c6655a138dd631f4de2e35b4c4f030741ed7870231009be2f24da978fa3dec3b21e4017c8f54efb3e39007aec2aa31521c65383406dfa90a7b4901b761517483f36b9dd69e420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a72d33cfc114018ba238910a8e23ee873efb6ea4bbbb85b8484eb49106d3007273db0565e5e2f070a49e5237385bc418023100ad1a4fa2918124b4aadf33fc2b7bdaaf0899e0692550b3addd4cdc443cbd5f571bd2ced5f76f370ce3bcb1af3d728e510302047c435bb50067306502307346863b01b1eca5f61d77b064fa5bc0619a5abd0ff3bca93da2967997b39f53e76ca8733d79002e99f4fe80f697d48a023100a9f431192705e06f2bb7f72536972c4f323b5f2d0f5366939730b5e3a0e0b4921a424151d9769a128dbf8529eb2227120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c62b4e3875129aaa65dceb46a373756dcce9a223c2a913b288e66ffd3c8aacce02111341239268792c158d2ade1cfed023054bb40b08bd222faf4467ed7a1f7ad3bcf41f4c7d7b275e3d3cb24f5269111b1201d01ab09166ca7ce09913d494d38e40302047c435bb500673065023100d014e1e0c058818b05ee04d7a6fa622c96f1e4eb13e0f096d5bd38f3521677e96a836f2235696ba32de3a73b4107a6ab023031aac854fd1996fafcce48865e923b750433bb2f77aded179381aaba6daf0b4764bd39a47238d33e2417a458d16c9f260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305b25de0d7c67aebb54d1f705bd243a4466f551d6b44d17c22911a83301f1743badfa0f61ba933b065091ffa664989a10023100a0d9f66994079085fe934f55f7a26c1e96c874bb19cea3fe1d093a2b13faeaa4a4794915d2a39f3c575998a9bbe748950302047c435bb500673065023057c710dcedf901c9077f639f3290492b9a0b62668cb1fc15f3de3212dcd5c8c22779514c1e76e95ede58377f9e598821023100ee1b0d2e7f5d028f3a54324e4e71d2be8045c4d7dc655490c8dc12d243ffa80a12d87fc7f583087d29b1c04ab32a5bc80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100814b682c758e3f4625670ce201d689f108e278d9dcc889ebbad7c0104fabe800aa83ba3aaa6b5a08906142238e1cdff9023100a8c281165b18abeb6aeef576c094ddb57d15f91f999e56d86b133330c60ddce58985e811db6ffee8647919618ab6b5b30302047c435bb50066306402307ebff3f1e4607d6630819d6546f0fdb89ac015bc5360e4098df15d59cc19976da405381848360e88a79b37e0fe81744f02301eeb8a1602dda119addcf00ed84951ff2a0354a8e25d7b8dc73713cba0441e4045cdd7dc6cbc79ab7d49d001e5fc676f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230110698fe93d5916538b983b73aab2ca9aa71f2247b030b150077c796f8472054666be476bc91e2d62860f3c6ef2571f202306f8982e69db35093ecfdfbb34bf9b597296592de00e2cb1e4f4bca1ac1bc3aa15e3f92f68b8e4bc5815661710b1960850302047c435bb500683066023100e730a760b5d44c9592375e69f460b75edd8772a219e3342a995342fad46b50386e536e27abd79e09a25829472ea3f67a023100ceb3f5b679a90fe58707dfe172ef86adf1d4efded48794003ec6fc9271666713210e6afef42295859f07c061356e9c520302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e0f3da9838364c90aad262fada2389a820c41c03b54d6be41f171dfea70c5464c943663ad487033acf8a6797a6d18374023100c8efba80dfa26330d3c56e0376392f411aca9aad9af762ad2791c248a075845d5830749ca282c1ea69738ba3f29a53000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100930bc5858c0568b6b6ddd7b6315989ca2bb73cf9ecbb2187e3c81a6ad330b1771bffc2f38136de539bed0abfcf428a6302306fe6efcb5625021da4d38fc9e51d8e180f45b0f906c4568cbbadcc8d7b6010da7c9332251288c37e1c0cf1c3d54c18a50302047c435bb500673065023100f65a3a21c03c3e90da2d75e65930a47abcb858a8bb816fe745888400392d1491d7eeff0c98b289c8fedf18e979e5cb5302301863ecbed442d47275b91cbfe335c2936258deb299f3c55b52030159d1f447c75f4f93f47779f1ee66e4e28c0260159e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054631ef2b746564b052f0dc922729c82d7212d8c733f98cb6fd5666d309554bf5e953d91995e19d92ab359be307d7336023100a2b0f7160d7a3cbd1bc6a311aad805c3e5024d95b8539437c3c5399414d5044d1f3a2337f945dbe7151e1426e93abd790302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065530c23448bbf63a7c20c9d7b12d770b8a3d81e0b55936965249ec013a0299a878de8346cc0f9cff15f3387d223a60b02310089328dc509142f917c63cffcca9575c5561c8c32fef1ead0e3ae829d7094368c3f85840be13774bb210542ab098c52140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230488f0961394fee106537fc14285368bf83dacf3c98f6511835acbb00ae9b83873db25c5cd24360dee0b2136b371e1099023100ab5e006a6808fd5e7c5357659554b103b6cfccb47126ca7fada44854fb5d100cc113a3b3d14e8a0405ec67b1894270d10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092928d390406c1dbc7ebbf055bba05fa09218021e99561b35cdfa521b3d9e3ecf7a15ca27a22aadc504d95ef587702d0023100c491f4546b92760256747ae4f4e9b1af9d0b9c0b6d7d93f6f3d4996872e1d4d354a466343f61284f12e44df2be13b0130302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b2dc8d62cde9e9c351e1be2a519241ed115d53fab3c750107ecf41055f87cf6bf451e3c8a52324f90400b9e0fa216cb5023100f0fad5071a14431329ef2f9643e2d4c8d7b3b10618d70c6dac292f47b941faa2f22f2427e8d8b7c9e3baf395b902020f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b79816af8a8293a5a0b45fcdb9c53723a8556b9bf42550ae44f14991fa995e499f45ab113bf0c2adf33f7bf7e71bf880230342fdf8638bf02e32aabedc971eb9361dc5fb22722895c62cb26de471f5767c636a0f388df4ba11f909fa79fdec14b9a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e6366893d8cae2c31fc7c0e3ce1c51879d3192b2845a6f88a78b0e70224adcab900395ef75c4439a8719ef68f98208a9023100f7c13db4699d1723833b2b2ced8391c45d894549d24c636da341e93f5a069bbe3ea2c6e7d4231d55760b43deff42a7580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e0983888c0f217eaaa29f9fb5a282c1bbf10c0cadb9021a2548750d83cece17472ce27a622180d88b742afc3ccf89c9e023031bad571d3a9b1029aedfa6ad2aee8b462d08b205e7d3d42a572d40db21e1f8e52245725908d34d479bd53f5d2b591dd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b96fdf6afe476dcb813349858ccffd2564c886761ddf8593b6f9648e6aacbbaeead60d13d4c5aea551bbc7445f1d413023100fe5503220e6b02b549042dfe11b993b634335ab1a452c55dcc9d045f013bc54759f2fed493560174ce03f831fa9784a10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c9d7245328e2cfe881ba2c7972eff10e50135b3f398166d2e5dd9258076992d85981b7d60af655f7401017384d85ee78023100e30b3e60fe528def70414763bbd782c35b8f2e38eaf1523651e3a5eb4f218e7dbb47d1d962983af1d50202167122825c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230275ce6f8259b0e6195217f10f3d7f07fdd6691085a0a285195b1bbbc37c3170bc0e094c7f2fc32bd908610be23ed5b9a023100a7c3446ae3247562c0b178a9dcdb9ff0f5cf0df26e9765d2c9f7c7c853e2a25dcc0a14eef00fce104b5020f94f23e2380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023018db8f98ce4d12bf5623b1876a152dee7052bb8122e3f0469fbbe37b82ab36f10cedf815cf4036cf043eaf33a50e389f023100efba8c5d6f5bd5125eb2dabe9f2230c7fce681fa9474f273eca74feaa310d5d67790be53146a13bfcb38d09c4db41d460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c2711eaa98069fafaeec212a8ab55b30a97bf84052f0677f81ef3b158630aef4751fa7b0ab0a9a7dffce8dfd7d3b3bc3023100c797d60f31d948ebc76cc20f291ca9a9cd8fd7e6d5894353e549f72884b920ecb8005895fb0deb330664a50a33443c2c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100eb784d08b3d6c279324066592ceaa6b765e5880385c273ba53808d48b9c8d09a9d0017d3a3c6bcf3ff184dc7688372e6023100fc611b1fd51ae12a2f22a8b90c3fefa691030f33882b15d37c096b77f9f74a0d15aefb7e2923967fb4679556c15275800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304ef446bd111301b27ef95b105037945fc0986f6bb1a88a42bbd6a1fd6660c5cfc5ce30d5f605489140e39c6b2be3900802303793da4529491b360a3444d954ca318fa4d26ef9ba42727df7dffac2ceb777917d7bd495460d65d813095daccb8ebf6b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300cd95615ec6e02289f27ecc9144a0900238bc0a3e903c5a89bbb808666fa6cb3293f0764e191303d1b318c4d0346bfdd02300d698ce2ecc530ae4ef22479fd52e83626dcc8b9802ffecdafaa9fa1fbd6873bee636bd4e78410d9dde7cecd377d4dda0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b6d89877f383e8fb1536fe669cade3c54922179623fe03fd9218e850ce90903b66bfcad1bf01f57aee532af612b38b502307e895f7af3a8209696b986c32c45d99ebfafda9da9ce8a8e897d8cc12932f0c1b64658e753df6066dda850bb52f8c8fd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023036713bd5b00c4a28efdabf18434f8de63b3041d2f877e1e41d7df90d4bad6aa7c80fe41d4d2c39f9b75a541404d0959c023100b1e90e5a26195a3a926423e2d9ac18822ed70adc27326806f7d74a32a1844ea2e49c729967a5be11d043eedca55086a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e909d9ad96f4bfa3a3a2c983e8418a2d317a35fb59723afb52268ac9968779fbe1dd4049e37b98ff85fcfc14c68fd6f102310088b3327bab203f9b8c815aab70b63543a7bd7b6a70c0c9fe0fbaa885533a86a7053269972d59ad92929b4cb5b60dfae80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cca9a6ebee5e07c8978559102ded0c934076b1a1c9d0d0f6678446f454ad1fe4d0cc0577eb5e339b7cd5ba45008629a302304ceda8f23c58aa7be83f07766934c85fd0ad4e58178cea41b773bff437b0e3036ec4a3748566815a7864ca77d880629b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ce59a30e6a27aa0d219cbe800114cf2e38100ca13a4d2e329f5dad5447bd48f1dd1af6d5993f1f28dfcb989c0c086383023032d1f3e4710e05286496007a587fdf8eb60484be3f79e8ea8714ed610a280f97451e366d160817b8efa42bd2d77c9fb90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e81d4ddf977f5facfad35e145ada5bd0f7f41abcc93ad0b05dde4474ddaa879d5f77e8cb162997c1de381dd05abe2407023100cee7249c54027e8261aaaecbc8429cc1667dd42e9639642d48450ff9f7b7dbef7971fa17eae8c72a78f4fca1d239dd980302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad4762e87247ee40f41f88b14072157ff09f4c4930a4ca89d5ab9e392a065e5322e5a3dccbe9c3eb52dfe656818749df023044cf4282976f23f888dd1e67f34445d1ef2549cf559685bec5b346880fccf7c230f145254c8863ac2683c09df542567e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082d174b69d67c7d58716716fbcccf0c4617240922418fdfd8ca1e98a286ab5ca09b4876029c7f208834375ef54bed1a902301115b62dda007a6719dca4dd367a9994d41ebe9871a3a45b5a172b1ab76946ebe6cc3b634791a3e6abb13a8892975d830302047c435bb500673065023100873bf7b7f234b3cafc3d7727e676d7cd1a107cc9fbf99e042029f2d15c625bf3f4df896b8686918040900d7e9a4076150230112565c321ed5e10fb23366c6ef19f6f63064f0e20a4a347c84ca95b7ac140b3a7434414343541e332f181c640a32ede0302047c435bb5006730650230254afb6764907e3663f5c363daeef6fae2876edbbaa2f246cfd203590350a0051024f1dd7872ed04a5231fa66bdb085a0231008663e8ff2f659b5d304c7e895a315f89211742b8e5adc6fdedec94a6c244f24cb144032576c3bf188c23d9430d5781180302047c435bb5006830660231009131e4abf5efe3d66058e63f86ef32855333a6ba9acd0a9da247b106d838251964c201fe5345fe8d7e7a3aa727a88f8302310081b8d95ffccd8d25d16002b839db7d979a65fde4e1833c2ec8107cbb1b78a9b33a19a74a8a1b09090dd59235c2c815ea0302047c435bb500673065023100c72a90505a931ca9a4eedd0377c57077c19ed4255e8d42110f028e01d4812162d4a9de6e918a458ec6fad1245e5bbfc3023043ce7405e82fc1ee77367143f04d8de51cf299de7ea3da50694a66b0a1faa22877450ab1919200e299b3805c585957700302047c435bb5006730650230214b7d19a072f8f2e1619785c6a9f24a89746210629bb060c1e2b04773830d3d911d2ea74bef2e9d98c6cea27a4d6532023100b29e68924e1aca958bf9f5deff15c16d006145d295417f62f7891ee40b84abecce66b33ffaf0e1f54cde3d86e030adbb0302047c435bb500683066023100ccbeaf3435fe5af749f4d1773d3eed2eee320d9a8dfd1cab15c96d4f7eee7c36e677a55594f93d4fb363f964e7b97185023100d7fbf4cb871a1f2c751c22478466781edfa92d511155ab29ea1dae328b052f6c437cc30a9065d97b109ca2a22962bf030302047c435bb5006630640230272976ebcdb6817929c1382e32957320de110c2ba9f845ef47626f96b026dc1cc4cfa429d3cf3f1cdeaaa00254c34dba0230769df28a3a728ea804f2e215160e30c74cc9d03c7845121b15341cd96c8863fe8360b0df8fc3b962ec4f0cf5b12ae6c80302047c435bb500683066023100fe45c33dbbee7ba897753439cc7dd4dc882f4451fab8d2dbc0f87539977aaffe6823ee68a1fe0aedcaa485a7b4651357023100a70dc5066f4aca8c6941a2a1526777d361ec098db2cb30f0c589d8912e862b9552efde4a8a067be669d05162d9ab16220302047c435bb50067306502302af8e4dba762d82f969303b79f9a652ebdf3b85ed6e2eed7166c147012b0aaffd851f0072c59afac6b483d2f2c628782023100c68458c75ca82e5722759c0a9090031672c93e12d75c34099cc522b7262802c3afcaa465b42abd46c953c299508636810302047c435bb500683066023100b2c6979d386a416b2586a98699340e8884ddb00bb76aa7f13440566f05de21a0ff28aac71772a1d7cc768ab773b6cecc0231009cde2b985964bcbb5008964826d0584cbcc343594fce02fe1f82f5b2d43178c8540b357c4311f9afbd485416b71c43590302047c435bb500673065023100fe3947dd2513e09f23a89f02e4efc21bb69bc6dea6ea049683b7eeacc42c6a60532f482abcd8caf5842f0a028436d26c02301d01a38bb7aa6ded5e7987d77fc0287f0010a40a3f9514aad7ceabcfc5ddd237795eeed40c0d689840982d60d1d1f84b0302047c435bb50066306402306120a4ccb6dc50369f9063338c87c37f7c3ec9881a35cbdb58d19fe908180bdaa2b901335192dd47f648843535f81765023039d2cf7bec67543b3a9c334988c317d7d6ce3eca5337f5208006df3ffe10bcc6c3664de58cac16883e90b7fddf2657290302047c435bb500663064023072a6e43c79d9f4b16cc90d84b636b8c6f8116fe9838f493964b102d07a83ab50b11c40ad42c9b08c825be5244562eee0023072f1dee25d59a77f2a9ca76cae8773c300464925436d31e742663cbdb21754356a6f288389bcf302b284880654bc1dad0302047c435bb500683066023100a2eb33939879b7fb382494060ba879f37debfd6808b1e78dca16e60c6c94d09f7dbebca1de8c9bf38b6a495ee16aac0d023100e5ec84163198d48b59e1a7d90c0afa509d83b49c28f7a257b1281138f18036d5c48aefffb026cdc505f0b9ec6f73c7b30302047c435bb500683066023100b13e74ae8b3558f8f8c6722f10b84c5db694e79151ad5b2ad39cb05e7b17ffee8c0b60542595fceb13c1087cb3b6ac050231008f6173a0caee4ec2e9d29810ec693dea9c03beff574fe23dd33e3e0c3e516607c2b58efdda46b270840ecf10d1493df80302047c435bb5006730650231009af5dbbc0b197a7a121909404754e932982b0c2a89c576d2570c536692cca1d6056a32d1db42f044000880e4c1badedd0230706826be7b324dc34b2f051433503a2a7f5e9c8c8791f61c6113581c46aeea86464ffc430c275435e024818af4a4ce190302047c435bb50066306402304bab3108af057fd7f8d50a7add81797259393395570f8c37a93dea8a90994d18e8a7785c0d44591b32330eb79652d585023066f38a9e062c632aa1c2389b0a42fe6ace3e12e4644071803a289ba3cb17ae378d1a487b8bfa533e3700fd11429215a30302047c435bb50067306502301f996d11cfa14b8293d5a6ae8c087ae6fc4bd7b2d04e10cf8f6e989598de5a7df853b0c642a5cce8bc6bae6f79bc4fde0231008471e8c1cd36f6f30b6fdc000185ce18d644da42a0f7f99c3b0b380cde716dd8f9f9edf741dd3fb63a355997bfa10aea0302047c435bb500653063022f5c927d715563ed7c6f24c92d3257ea054a9e5ae0f8046dbf6465f47e97f77a266dd1e6682acadf6a2ba3a0265198aa0230198b035ec266b58da6a3442acff43aae2d5b69f8caf85193af34c29a2a96dc64cf5e9a8d5e075ee8f44054181eec52b70302047c435bb500673065023069787d56c8d300db88483a6d02cdc186dfa807157dfb3cb720e1e71766efdcf2db623d2d16ed214168dde3d180162082023100a9af23d56187a581e79128174217325dae0ff6437552904ccbf252a0efdef9573e4f22440c1d7784fa840e8b3042cc820302047c435bb500683066023100b2965c4c154aeb8f65202d5436197140729ce8d1e804d2aa2530d19d67269d083c8713d864868bddda716bbd496c2804023100e19666060a0ba1371f39a528c7c936ce5098486f0e425fc0abbccf17dfe24eae6b2f5f724fcf922b6c2c55bdc0d48d6e0302047c435bb50068306602310084d4ba988705bd62c6f8e783ff431032740c92021321cf72280c11f1cda42952d3026d8e7223c3e3f48e4569f9220bfe023100f679a1754c6d1d1ef19e056bd78df2a8ff050837fa758fef33219d40f207ce8e851d9338d3252da665cb401ce9b165610302047c435bb500683066023100bfcc66b884d5ecdb69510536cba4f20befb4c560b89169e0d1322f31a9d99541cb5df8643b517a93dbdd8ff4148de6d2023100f3ec70c90b47c34dec571162ffdba9c96e02389d56779a1309161ab9296ad0d0c71da9bc7bd9338770a9dd55a083e3f90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300fa311e1f170e511347aa4262725d7fe4e7e6d24c9dddf4909c3bfbe7f28fc7efe96c70fcfe6d72c49dbfa9a062cc8d3023100b1eafb9948683397ca66b507078a3561a8dc749f64db3ec0d3bfc620e25e3a79970c01e56e1abb72b0ef50e64bafc0610302047c435bb500683066023100a826284d661bdfe9ba4c08ca22ade5bb20f6af2b2ec6d9beab005d1003bfe20b643a2708aee62371f10d94be97be5572023100d8cd77c6b3d807f0a7c5f108ce68e61b2d15b5ebf8044c364afd8a1b41286f74aa275a2ea185fb03ec924989d7dfd8360302047c435bb5006730650230117455a4cf68605bbe0e3ff74cf0e0096003649a6f74aeb4cd1ac788e4b335804d3a2ee9c3f5581ee9b684d41a3f2bf6023100a4603d1cecae3673dbe3fc8febb510ff29a49fa7ba8cc3d63699e1f9278e6d2be12fdecfa0aa8cfb1def0a14f0c8c02f0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50067306502307f5255065f3ff800020a2c6b4557d626e2de84878082bf525b6d033ead8d08444a9c75d246d176a88b11b77561f951e1023100d8850c5efb59501a77d5a6e08abe94e5b3737b2f2b3796ba60f9f1b901f6a18b5e9bedd9066dac75a0be4eca52a73af30302047c435bb500673065023100925ae72f068ab513a562db78e92167e654ad1a61c206dde33b1b1b6837b0f9ba1b6443403963688e006f7eab23bb2c0d02301a2dfffa05646122b8279fcaebca13df01a6e36d411369d1ea2e79f35a339f2c3bfeda41608c1b8cc091bc13e1bc05900302047c435bb500663064023042ef79ac5d16dec114ae60bfe16af2de0b18f47fcb265a0152c5d3999ab4de9b5f1d7de46d84c3f5250d92b8b3809e2802307fa70584a9dbc7f912de1b9382d953ffa47a41ccc9b3ade2135bbe85f2adcd46bef3b2224eb022f9491791f20ce3ad330302047c435bb5006730650231008e60198107689ad77d6ef45d8d0fd4a4b3c5f190f7ab24b17091c04c7fd584e6515dfac6da0a62c5e9dd08f7039d5de402300a8f30a61ba19d6cd5fadbe8e28f93330ea70c61bf91ece2cb8f35b360f1c06106cab9ad1943572ae25eb0d728258eef0302047c435bb5006630640230146c69f7490a8e4f81426cfe4dcc361ea67526457849f77eb489b09bb9ae6c7548918adf116dc6a87fed284cdd68b43102303f65949a46516f5cf28b5024b21b1a38cf756f3288b1e3457b7aee65b69edf887fe51e0da7ed4238cf312ea7032a96300302047c435bb50067306502307698ac4948f1e8abe556ce870a65e958d3b633a8bc734751d1dac8ae71c54ba65a2cea8b0446939e61f6af24e827b318023100991e92e1127059985c0cca00c0c7081f9532ffd01dc71fa3e36af462915af7fa1729d73c521eda5dd080c42dea798df60302047c435bb50066306402304dcf603c609b3a825ca5b54ea9ad1da642d1632cb8d56c55c2153adb6bc2a39a96eefb7abecaacd01f137a0d25e38edc02300c55eeefaea161ae0853a556c224c68cfcbfccf9ac1a4091f66ddc840c13d7f8699862b4b38859fe77f2da5c2f4e72890302047c435bb500673065023100fcde44ee3f2d36508ebf7bcc1f73a35eb3ee2e0edfd65327fa91e2a1aa0663c0db92c09bd866f81c54139d00e2322ad9023015e774bf9e327c50151d93fbf8592f09bcd7f59ec8e56642ab8a66ada169062b8d3800bb65bb2a273000cb7f6b27ffaf0302047c435bb500673065023100e5f5ba499e3fcec4cd7dc860f3121f1a6fc87008edf58f836ab2f77008468bcd57d229ffccab5d6d211cde93334e9589023008a7851da974317cb79b3aac90163e67484bb66faaacd0d699a004570b30bb83cb9314042e352da6167710db0d9b7e350302047c435bb500683066023100ddc58967e439f97424e4938a76d603aac75b83840c0fc4fcbe4ef6c3c6a2114d7b7e4816115c6c071bdccc5128f6046c02310081ffb15bfef0bbdb99517e4856a8ea9e0548e9fe35eccdbc897a1602360b4b3fc1198041a6e1b99a6f5779162819eda40302047c435bb500673065023100fb18db7b3a2a69b5d7ef22055f579f28e6d035747fa746ae56edd4e0b8e716afeca3e92823e1774437a24477823b622c02307f7ba3b81dbc3bea3f2c4ab7026154c884ebb4abbd218494cdd44842c2198449fb04593ca25c37ce5a6eef2d2deaff000302047c435bb50067306502305bf451bc1cda37899b6352f1807d404348272ec765bc6d579efa57770d62641a5c71129801356f89da5e7eb9d0d50134023100ad67df321956257f4d023ee581ab20f642714af3239111207258a019d7487098ecdb426e1fb0c90aedd33918ffc7f7310302047c435bb500673065023100a6bc2f5459f5918e0700027a5b7000f04c5a836805ba39a515271b36dd03075ceeb473097ddd47049cd1745317ed311802300efd2c3996f31c0b8945df4439e928c64cee8460427f4e1add240842f58e86cb5baf8dca05c414cb2168899535369b030302047c435bb50066306402300295229538ae8ba4ea6ff84aa7cc517058b38538a067a670e11d060055fcb0a12475f23fde2088c8836bf022a7af246f023037e4c736baaab5920132b8485da236f374ae5e3c3b6ae9b7f29c7ffa8f1d9d46e2a6a880c1e64640812d43e7b46dde5d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3cfa9906ff3a1d3c6f2c1568dc28145f43b43b312f80efa34e4f0df8ad407d4b1d13354fb679dc73deaa2bfb75a9a70023100bdad73a130d4da88c61abb101d3829a23c0c5e8f3f12a58ddf6c178b723c97accde615ca9d95e8faadfcafa7539cfde70302047c435bb50066306402305983f7cba92de7c7dd767b083ca7a93e87b64935268195dc6a78c421cdb92e1119e08d771dd105e63c4dc57a9e868dcc02305d2e82b77eb9a3bf259a02254fcef85aac54f01fe4f8958550260f9573c2370020997e429cce0448addb20711c2da0f50302047c435bb500673065023100f969b9299d3619046f89b2b92ac07c534c391b29491e91d618eaed27e75c03facaef60566176c9f9990c95c05c6cbc7b02302efddfe44a580ff89e6d4b8c223efffd65a62b1bb03de1abf55efdb97dab66a303758a9761da8942c75190704446bd2b0302047c435bb50066306402301d591237c7bee941a3dde66995a3ebc87c8ce4671c4a88b793c340ab3edd4ae00b86f93718907e2f4efe13f0bbe35c8d023059ddf19e4d3d35eae8a2f42c717e0ee37de43f76f27f73c0faffe1946d56a0c80d87bf905304eeef85f63c61162738520302047c435bb50067306502306c4bf82486561399218c2a9c93b0e7032ed5f76d8d97cea8eef872f709f345da7cd9c32012e2b75f8e3722591ae3118d023100f375dcdd2512b4f6d2670f5043cd35d96746058da9de4cdf8690d406faad23e89fba36505966ecebdb4c7a9ebdf0e9580302047c435bb500673065023063297f9092a1f5f784a86bfc1440f0b37c0bc2f4db611a312cc31b332537682f443aa468970b863e53ec62b7c1f33f6f02310092127e84ef4af2bf6e103f2fe452730e2ca9374c116547a21ef8d0e0afc28f275eed31e9d679471b55f6ddb84ba6ebc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230301b835ae890ad3a4abcf0dbb4841a46f1722bad1ae7de26cc457b997ae47f7220da1a80bcef1710ccf94af9cd79dc15023001e2f5b1ee7c9c2b20c05d734d44dcfcd12180e9e083ae4c7911d033c56da42a493e24bce91308e5594ccf138ac94c500302047c435bb500673065023100ee9b250a1bc69500517fd41c9e27c70964977ffbb6aea08b309d423554492fdf977833f689e1f25dc353827efdd015220230747354124cf6bd694f3b08a579c76f4f7a0ea27459a5820b9ada5194f95d3832942a6d055eb1f12a25eb18112f2dd3070302047c435bb50067306502302aa36bf53e4756803ff8f8f4ca96aaea914e16edc4e3040ffd7c7206798f53bf305cc181aea56bcae63177da210e7c24023100df4712eb30c81d45e3f89cec1a22b9686dc95f550069386ef9534ca1661ab7a6422dece57fbb15b4037ece50238908150302047c435bb5006730650230331540e7388904a6c0c521e514fc7849e1f5ba0b019479a2588b75917a499b3ef3256e49b14ac6f0f576c2793558c129023100af516d2751c9bd464f0ae5442dbb55a55f9330982600a939a812495d546fa630f44ad126d3e984ca5011c6fb1740ca670302047c435bb500683066023100e27f3ec282b2b2adca8e84757f853b08534dfe4c87a78c276030e01a704985a9aef4a7e81e9b73452028bfd1dd5b823b02310089b1091d439d25e7142e52cb8c7da396bbb875875bfbaad97471891e812da423db2190cfb7fa241c29fde7476b06eade0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fabe5dae73af34ae0b81ced129431bf88f59f47b7a3d0e607bea524f1305411274e2945979b8087b78ae4ff0b82a336b0230167d6d8e5b262ab0a255a9378404b92338cca6a74c61f891700133b92807463e53c72d134075bd6c5db27737f656fc520302047c435bb500653063022f611435c4661c8bd29ba38094246bdf74c64cddae50ab7f5fa3ff820e1234ccbe9baea39e13ed532d65052ce4096f3b023075e3211c6cd993344d9dbe7cb813b304c67692c7a23acb46cad257e7e9b2b3229d7e919555063d47848e777bf58f7a170302047c435bb50066306402306810880dc6f1d576c3f4532e26c6927ba2dcbdc467b254c6bb79a0393f2c26578364b7debcbf3d56e6ea9dad9ee9487502304445e3bcb88d5833489df2a0cb5d987b2321e90913d7db1e244d1024573e48239607aba2d3f9b1efd0585d8ac4560bfb0302047c435bb500673065023100ee13cd8c0e2bf310718c83f5ab1212dc4f8d5e238628e6d42aabd5378e4260d8fc948b7dd0d874f7c2cfa0ec660caf3d0230785b5b9597d0c17c8c2385d4d0a545f932ecb2f91489e26afe180fe1666b7d5ebbb17966ec881df983bac1102dd01d7e0302047c435bb50066306402305577bab3c15e38e8249934da3e1c5f1c4cac7aba4c600394747c09523ed44ea79272d1c86af8ec970a372a8c3965c9af0230483a81273d59f68edb2ea8555a26dd17c7f5a6ccc50dfa17f96d54135cd62f73e5fd26c792d7f39ead7c89785142bc900302047c435bb500683066023100faaffea4ff9455889839f768ac087cf882d1c34749db120084a787cbc1a75a6c68470aca6defe94effd6697c7a8da5a0023100e8ebfa90011c366c331477b7519c7da2da49aee2b36e4fd52abbd913f554a21d0c3cc55e54bdcf56f63abb28abf7f39b0302047c435bb50067306502301e613cda1187b9ff305fd88a1d25c18b373a8a206cb34ef8ebb009681c37cb9b5ef3e50a4ae26d9e0a56162b40aaa5fa023100e7fb5c30e276d47d0f49f14237f51a93827f13e4c423c6bd3cb37f5ea901b0c5747d6eb61f7c2ef085d3c89b558f2e5d0302047c435bb50068306602310085ac618f19343e8c359efb03c2e827fa05df547ebbea7e0e82099c71a4dedfe01d878c6eac0bc23dfda18449fc9eacd1023100a24986a3a66ff672dc7c1ddac129285f511f3945b0500719c403b46c924afc0bc54fa3f92263b3dafea9cbc20d1ed5070302047c435bb50067306502305ca0da3fc1fb7889ecc4a9e3022398193499e2d93aca80cdfe953e17cfb304287d7b290822d2a61207ae0efa4a300271023100eb16697340d2b583060b8374636e3f2bb4fe352c7e7915831e1d63213d8d89c35354a11a2ce20eda937a7c49ac8298980302047c435bb50066306402307c0bc8eb73af2174f89abd6a0b815c2691e4dc2b6f3b42f71bb33dbed552ee2047101a04b39d32dfbc34b8b3a2f6a554023074ae1651ca1fd5c1e45258701cb3cc0a73e3b77fef328269f320a3209f6e04625692e2e4c7c7661be2c189a4b003f6970302047c435bb5006830660231009b772a5c018cdea604114b0f8233015762b141ea99156aa0ae41a6171068e4470018da85a65d7cf548721ca831ade8bd02310087e73b15b11f913795c2eb679d81c518e53c07b820072f8e89f8cfef9d894c98ab185a679ca0847a177f29dfee1293bb0302047c435bb5006730650230735727ea7f4b9d9195d198d5631a7e90580aaee2272ed3795f4ddbf5421c2b13a41f3a6662f5ddd51a10408de6865611023100e5024b6d81031b681c67d9f5c9740df5125c1d0bcaf62efc944be46b6f5dc8c14d16bf94ae91d7a9b3dc30723fd3b7010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303e941f0b06a66ac567ccf9c3ef917a3a30c64063e7859ee2e51f9da12a009a41ae61e651746f63a832144d77a0e3555402304a061d16e2489bc9b7bf7ea5ae7d7fc293e92b38108e84b09604e227555f4e76bc235359797f342c5d3f92dd953f33750302047c435bb50068306602310081082a1107fda0fec56411609feaee0a163b59cff7029535eadf742509fd7f6a97af4bd4e26ac7062adeff12c7d3f8930231008a49483f86bb3adae09474837deec86bde5193f5a4a8cb7510c4217d6488e46c803fdfd5bc01c74c1addf139c782443c0302047c435bb500673065023042b638fd88aff106d79447c2900d9724628aa7b52fc048224effbcccbb69bc3c046c406a95fb2e93d625ff210263dcfb023100aaeab1555bc4f0488e83c673dd91309dbd644be0c6299c9dddf3d678a3bb2cbe6379c56584810f938c6b9e744d0dc1920302047c435bb500683066023100bad1410ea74ba76763ac48711653391ea9a1191731224d2c92690df663b565a2da4cfb5e85fc75d05ad8c3c9234dd5b8023100f4a7d84ebb25e3c570bb2bbabe5183191d8be51542125fd59dd1f575f806ebbec3dcefad66c63959ef6a00057dbc49630302047c435bb50067306502306c818785a0322e80977a6386879c884dddbd0e9503f7fe695fd27b6ed29fa77ce43dc20e1e1f415ae8e1af898e1c59a1023100822ac9edd447fc2500546f4dda7baf1849da83d90d2271200fd6d7b88ccad00216ce04627ef7c4e3da79ec14ee46acac0302047c435bb500663064023053abc7486d0d87cdb6dd967a82f45b6926092203561bae4285238ef833151c1e31158fb70b744293532fc04f027c7012023065c9188220aedf7e51f36e64b0b36c30a0251b09548a217b2aa0a1439a2bbf6a26be0822871a23452f1d8fa008ca0f0c0302047c435bb500663064023064d5df1b4a735c36627698bcd673fa3ed0fd94980f5dc1f8c0ff7a407f373cbf45a3938dc5fd6d63e4601fbed81f063c02302af2808c9883257aee211a80d1b890d1dfdd45af3ed22d4f1f37c77d5087e65e79b0f4acc4501c46b89251efe846749c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8e406036516dd13371cc9c54167fe15ab3e21a2e3b9a9d05765523dcebfa5aad07668235e619e65326eac6a7601b4a5023100fa20a52896364637b7f8836ef1be0f99fbd3fb3f0f942054f9f5ad21757aa9d48614b24313f9cb57a1e1f84d623487980302047c435bb500683066023100ace163cb7e60af2990f7214ab7748e41b414e4bbea851ed129b67a2e805deae2a0f46950cad4894ed8f0c41164dbef7e023100aca797171249fb3e2dcfec1f74f9bdfe80cee2f7d1c9b5473300775b30e48d4cdd3244931b445bfc0c0bee6c295a36db0302047c435bb500673065023011516c992e10e1315c8d9ebac359837dab256105399af51e8b3fc27fda3834a888cd0d8a6fcf1ab8d13d0f461273a7bf02310099990c1019fbdb9a3bdbe349f903d130a3227ba83630ee164195beed4a25fa805b8c5a9a458b0c7949ddbd22242cd8570302047c435bb500673065023033145716f0f1ff785bbb0ac1f43c00c32460f1d26bb63d728ad348a812441fc54be47acb9da452b119ce7981a25186d60231008ba558b0499f3f4425e4e09aaf7ac19ea6be225547f3dd99e2204ca2799d9f6e61b0805b3b6d0006fa91d3b971fa15f90302047c435bb500673065023069bc88cca4a0ecf65141662df8c4a9df250eb6b0cf63997008008833d13da97357adf00f0f3f948e1bafa7319c9cabfe023100e579bc5c591216a4ba6ef260bacabf0451547b05704b82fc7c5ec21669091e906d8552f42697e67dd7185cc6cb4056be0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009a337031126efa09ce505bb985f3df93b60ed824b3c076cca2e0cf722d70cf2ad34adb407d4480f9f166204b68ad5f89023100bfbbea43953ea3e34cd747fe998c54bc838b7f745d4f6bfcf520979167cf54ba517c08ae7ed137a0791896d7f2c21edb0302047c435bb500673065023021ff6752d4a117ec14ff67ffdfd9f079d2ab8bce2606bd4a417e35d616caafa5fda9d803176834f342ad69730dac9ee9023100f170a801b923e00fe0f1e06b0e323897f68bdd06d2f6c27f74c2abfe2abf48e9a8885003d8ca04cdba955cb5d76b4bb90302047c435bb500673065023100dabebb58f75f653e4f0a71702da8241502c88fb379ffe0fb62fc781de7912c28e5fc56b4802aa377cb7b279c5ee6d95f02307bcb12ffa7ca6431575cb9907cc27cf1f8a862cf0b3415bfb3f48a7dbce29a7d6cb0034ee0cadc163410f92be87d5d170302047c435bb50066306402301b0d6102f3550365d38534e2fa25e948133a7d8f029a8c47005e9151dea28e09ddaf3e4647cb6d55fbf2ff444445911502303bb87ce93488eeab12713bfaac9ea88d1068d67d88f3b03119ef8cfdda083808cdd7f4a6063aaeef2139d898437033370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009acecc1262bb579367b1fab93af84d87a0981d30af426e295a03605e591aa46e4f76454e8532099f739078e8051b036c0230572217803c18a6bcec6291fd01c50c4cd869d080d3c627157d5524d2db74109cceaf1e661289876dfb170bc2f6dbcaeb0302047c435bb50066306402303239c788316de2332e599addede0e1387e996b00fd9458a6653b6319a59044b1f2a518293c235f9920958ea241846c6b023009c121144ade810c00a990a822c302b197753a10bdcc6c41761d4af09b5fb5eb7974393ebf4a835c9ca889ba9157be0b0302047c435bb50067306502302c594d4e61cb80375dc6923ffd924df697bc61fd17ca5686ca42b34ffaa8162726db4016bab60f94cac252d07b8364c9023100ca5aa5e9410dff4aadf60b0886c5a373e8b5250abf942ac3b7625ffdb01d102a45eb2eb05713652067eb2f7bdcc51f7f0302047c435bb500673065023100b9c37d9d0000cb27e80a9ea594a3d1b2034050bbd4e9cf37cfab7b1b3c964cc61df87e564a91550d199e5d103457df820230567d67cd0ca414e36337260b0e3c8e2ac34590a8fb36e45392c1149beb19fb9ffc94f3e93aa6ffced93ba43cb67874060302047c435bb50067306502305bf05e1e840b252e2db32ce2eb55671e9313f6181f2541625c47602188fdef11a101fe6bf05ae4a0ed32602189638d4902310097631970662742d5e5336800a17c46183dcde148039d7a624fb651e565dab49ee9c2fa15ec6da866ede8045a6fe5a5f90302047c435bb50066306402301a3069ff9e85c13ef6c1a18f288551d82e9365f037ca51c4a40720b126c0887c3af84679a823ba771f58964646511a700230680df99ec97ff5df6280147279cd42d4486d3b1b0664374d257445e9cc56e603d236d5521687cb2d7f83ea20de0fdee70302047c435bb50067306502305a38e5c9c70a0d48493aec4fb25a5168c6a7273442ee6b77d1efd015ab9311c9f967d4c1c4acc9370ac505a936b50366023100e6e7222bbe2ecf41622b6e2c3171ec9fce14539ff8a3fb908734042e9d7af1386db6b1b342e06ad07bc7355421dcc4e90302047c435bb5006730650230769c635f6a725c62604d112eabd6f691d1abae9d57e08eea23c099198df9d6ef1562a7158865e21f196904935d006989023100d4d81d67502d844f9f583eee36ffe36a9d480a455b5264a57cbfdd2897153e2a513101b26f06c52fdddcaf119ab856520302047c435bb500673065023100e9bd1aa36b22f4ac9cddbc44c01f602be1aa8032578700fc493bf573432320a5ea25d0e6d56d2dd94e0c96c72cd392c502304d7ac7ca4fbbd3188c43c93e766db76e48608bc5ea2ce545efe7dcc12895bc7fe22c57f50895c8e049a6fdc278403a0c0302047c435bb500673065023100c7172e1f6d7434b4257bc65cc199be4b8777ff82a6494cb1ab662c67c9e9c2cf5739805851eb9ec5db7ec3d2fc47af7c02305b51bb121183f4fd938e673a75890400e2c9411ca8b5b360f83d7ad38168cd4fff2357bd590193fcfe7ac0f98207a0ce0302047c435bb5006830660231008e6068ba633ad47c68da4465faf8d581362e1a1104a7f62fc70c51f2521338d0cf40b3b124cd3f77c6d5316dc3cf870d023100c008da827f083ffd3d00da5cca17bbaed8ebec172ee7e3bf93df08c16211b059c3c63ea58e0c05a9260728e1848d8ce30302047c435bb500663064023036de199848bbc38e5b09e367459db72e6239ee84b8fdbcb6beb0332ba5f7500476a2eb8ad33df0e3ca3a5cf2d525052902303b611f8724592453a2db14560f4d490ec9896cfea5035c084fa6169c07653dfe907b01cd67a5663ed3f7e125feb86f820302047c435bb5006830660231009aad07c9955fa9023f8ce4b4a3daa53c2935966c155ab0b237241fff394ffde8f616da9bf5e270f88bdc620fefdbd6d6023100aad2aab4aef2ddebc6998c29dbbb6b4080b539743e8684fb0333465bed0c1bde05f10b845ab7d5e5c1b9066bd962926a0302047c435bb500683066023100b6aadf6fed414c321c62b99a9bfe67714927c0b150a40ddd59fae63fee154bea354ba91701304732cd2c8fe3985de82e023100e7a32ffe160c392fbe4a34d8f79c8906c4e9b48b500d424ad404297a6aa4c5c6db91658f60d5ad31b1b5542d260c252b0302047c435bb500673065023100b098cf07a5fc8b127161e3e1e45cdf2c3c152d75d4f425479db1d31cf99e0182a41ce18d7311b59f114dccd3173162e502307ad600fe34aa9086a87a5e70e740a5fcafe931281752c68b3976a8362fbc379c8cf65b9767922c3b7513cf88d71d0cc10302047c435bb50066306402305f10ddc67d9c6158476e9df97f68507fb707c313b178fc81f8b21c0c4e22e9f221c21526ba6c71116333bad655c8f54d02300479ecf17d175f97324b3ff7220bd1dd04ec8b8fd82faf602a3fe2da895ab3a09885ebb8469234302dc0bcf9636c8ed10302047c435bb500673065023100a4bb9c26ed3b31dfcec1058a743067b7a587294031a06c9a85d4bda55119e5834e401dddc0e25ea386e5028f7dee422b02302689d989921cf5962af599ebad06f328a25804a176285647e711342924f32ef27eaf20bb6dc11a13f86203f12bb313d00302047c435bb5006730650230012b559ba38287e9b09f0b2fdc51d4cd1e7a017eccd53f3c76c0f17c029902a8297e3fff8394163682f06ed30c0c3e33023100cb4990b5acd78e8b3ca1141022933b7c3be24121cad760b9e68e263efced3f6a6dca296e38ba10962da036bdf3863f550302047c435bb500673065023039301964b356f840ea06018706c79d75d6a56bb812ecef512f9adb9f2f8a34eda0f2e7b67a42267b769640210e49439c023100843935f67e38f12b90a0d0be388d7de48e966b67d9ca0dfd800ef1f9611c14fd7b23edcc6f5a7734335ad24b5af7ab550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300f61bc5dfcbf28747292a91193ad3b8f64e0b396414f7277ee19ff787f7264efecfbdbe9cc0ccae94d49bd7b47bb9fd1023100a2fb8114df37d01ca073604bd9457bcd8e17a4c8c8eb90d4f9001b86efd706bfee2876ba60537da0dbdd3ae8c15c472a0302047c435bb500683066023100b34b6a8558cf45306e18acd575f3802f0ec705fda8fce7b548a9ded964189b96660d351f129331d5cb18b55cf2e37657023100a5f37348c081acd8d84ca76757f79a5c92d8b3d93f21dee127aec4a290d8ef5e093f2b617648dded68914ee06b9b533e0302047c435bb500683066023100f151812979f8996a4a795b3ca3460cbacecf5c854444681e69c80e0cb24efb51ecd9349a78069a9af4ec77606b1e773b023100fd93154735b083df6cba3bc896e8e93bb009fad1a6d2bd6c555756383067d8906e0958e13d693a2b108464dac61d612d0302047c435bb50066306402306fc497a3e3c1ceba3408bfaa6495ccc7d846f9f6022f6cb818d510fd99c12b3744845369038a9b3bf1b27a4cff307ba5023034417049a5480031b7c64a83d7f2dd834c5bbcbd5118ea902e4262d15235c6f23f78f8680e268425104a4eb9edd9a7ec0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ac2edc2c8d0a3044d45d0890f29beccf50c087b8053f161e737f3671da861bf955425bbbf39ac25916f948d5a230ee2602310098bbf63c3597406b6019b85518cc1e764d686e5eca00349145443f36dcc814a3a6c02944ad25f6617f0e9d9f4aa7a2cd0302047c435bb500683066023100eaae3b92e837954b97f78e0d62dad25a1528710c318b2dcc852084ddefe50308af7d8700e55ce9772c72ad6bae9a50fa023100cea5627646b6057f0d239c522ea08b9055823879694be9e3df5e30d5608753f5ff68ca38ed28e7ee56f219340806d7c90302047c435bb50067306502303c08fb1d47e25f574fa7d7f3baba406b4a7a256b4ae5b065013f7c2b31f5f1eff22173f21ea9edc16d3565dd688b73de02310089f8d8668c933a95ccbb6bfb3feb48c2fc265a75fb1243240344948855b00fa7851b7b8af071a794c2001cdefdb03a480302047c435bb500673065023002ed5e2c5af1313b45ea7de6e1569e4b24598dd6fade5cc5fb76938358a91e19a6f795cf6ecaee40fcf8751ec71449c6023100c23b6256d42647e08054d08470a7a2811ccccd24e0b5390cc330d8466fcc5bc9cc1182acbf51726240216c00923437470302047c435bb5006830660231009047dc2a2e28d76e36a6b489bc1c44cf7142d7445ef7e30b990ee67aca797ad25285c5cbdbf72f6d6cb86758dd3a6935023100cc39f3161cd6e02f10db1cdb56d908d975fbf4c115d35b1e20fc9473c5122be84f837589097bfcd07d3e45553bbb919a0302047c435bb500683066023100e65bf10412936d40c8c2375f0a466c7d6b188bc3751ea99d30908e5bd604869c1fff86a21cdb40ca9dfff27a6c1ea0e7023100f06a46f316b7d741924f91230a593b1ce6e14c3bd8812456be41dfd77069b9d2a9499a0c6b773614c35da63a3a365c790302047c435bb50067306502310092ab1928fee7b656bc8d04040977975b507028608ec4bb249f788b802e589d0322c221a5229db7964ea3c24cb60754dd02301d7ee320fed2b7297517208b845aff42e082a84a7918d273ceb4c215ffcf743cd5e6845e28f3b7d89b6cca9fb9f92a7b0302047c435bb500673065023100c2fc2f6e276d744e759d2091e7aa449f2a879f80b5791fe771dd2b4886cefefea959afb3168ad366205d370a057faa72023043b112d03ebaad3266713453258a525db2e4010a2577532981396f7dd54b7f6044f45e7b32c0c4631395f5f4125a12b60302047c435bb50067306502302eeb519a19b878da1eb58d66f486b1ce12f58c390d4e9cbef93eeda3390e1c389796511bc297cecf42e316fad1b9256502310092959c811ea16a8e84f67c0865484c364483b33775f83db45a24f6d601094d8b2b9122b42ea34d302184f76dd1852de70302047c435bb500663064023004399bafcb309e68e6d984361678075fa3b82f52cd4761157dade70340719ce6db79ac9ad758afaccfd6cbf1e21d843d023024a78e9f5dc3dfb2ff648010a6ba84da5188d893c7fba3490bfc889f5e5a1e40cd80ea6429ea6ace3efd849e966487730302047c435bb500683066023100b440b039d71ae8ef117b963594fc501d5d6f60c918122295f01a154a02aebb1ec77ef087fd85b8110a1652d7082b3e9a0231009e2ed611ed78ec5e117b36f59566bcb4615615fe6804daf4dcca89c3f704c9daca3c00a1ccf4f61d85b3b491fa2072510302047c435bb50066306402302d7faf5884314d272565668b193df001bb37765a9a67f2161d72f896da767039ba6cac6f8201b52af25f5c5ee67c722702305b49e59d71625262dd8801d6d2c506e857429a7acbc19287e8b5ad58235aabd34ca0ef7fec94074abfa1a9774d9377dd0302047c435bb5006730650230681cb68d66ea622cee2d0f598bf02b2c27970be2ed4cc4eeea7c44e13067af54389f64f7634bca56f48100e0f3a266a3023100c7e0daffd883b6ae8629f7273106053c86af46eb6fc30c1bb227d6e97094ced5f8747143b8532d8b82a06458c001b7650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302c526f4c3380120006ee2ff5c8ede8f20e662dcd4508b40f891b990ea6fd4d52a9aaa67319d4a691da26f37e302837af023100d53c97ea3255e65cfbe2b9ee9186d4089854797bcfbfb8ede6db8878865a3c549115fd0bee8d0f2e0103ccd193012e5c0302047c435bb50066306402306e7da8f98f0776b6803f04695c60ada4dc81ead4abf09be2a30931a25c7e799370cdc116e49c372cdd923e16275df5a70230553792a33cb84d8d836f23902e3cf0113288760dc02402173a5137cdff43984a447e2cda4255ef61923fa04323bce66d0302047c435bb500673065023100eb79a088f3b286e4dd274f19f93247a167cbe35c1695b732451dcbdaabf870e1f2a44b0baf650d1d8be8c3d24473a4410230042ae97b7d4a404cd0a94845d7f84db10ea94cf7457a6549d8b8abf21eb5722f7293c35d71bdadf007f0d382a5d7fdb40302047c435bb50067306502306c40eb2193d016a6afa4ee1b83c29c3c176569d308f2bd3995c82142dada33929eea73354dd4f9d2384bf0acbb7c84620231009854cd2c8198d631be554de6d3f38230052b04ec5c02414f74049f7b90b8cb56a721d5a8a2424367b14be6a9b0ef41fb0302047c435bb500683066023100fe8e4926261baaad0586cc0a7b3271b5973fe8f1f62749ddd6db7c2d74daad0d2f5ea6647bfd8555b8fbe856e91acdc5023100b97eed8cfc03869d4e1762923e56c30d18b0107f53f438959126d11314b8596629eb1bb4767957639999df4b5505e9770302047c435bb500683066023100b78fadbefbcb9998000a10f882c2f0281666d0ebd1a84523bcac8276c3cc638c4d42a9d47fd6a01281ed6f83b24d1af902310089ce42c61ae02f7495b7d7aeee608c84809a03bb352ad19254e33a3440263dd8c163dd7e64b9979503c71d500745ce2e0302047c435bb50066306402302ae0d39573b9bba5ee24844ff430bfd5ecf3333ecc4a04a8f8a9017cbf2a366b1c98641aeb3c1759bb8d922af3919018023035371f7aff490e1f2c260c9f32d26a8bc56b99d31528ad7cc064b1cbe26590e6421fe801aa977825655e717b114da0990302047c435bb500673065023100a78da95cf37a62b745d2b0cad730747115d96902c49790bd45c610f730cfb40945ac7e1713aa73ba29e9b73554a8f7cb0230242303d03b6c266a6d15b9e8b2a82b58e7065913b223db5c8a662d2ae6873a90e80126ab56b5a037c73828d437eacc880302047c435bb50066306402305fb484277ce6519d2e2f3b7ea60922cf4ed481e662047e1f2278a4bafb3b9ad3bbd621cf7182e740874b1cd9d0a062b9023031e2eea0ca512dd6ab4eb014c699149994bd72317069e3db523cb21af8589b4eb2c8f0be93d9e217270d0d663bf86ea70302047c435bb500673065023100c1206f997bfbe8790f012d799c34c6d5763d9fb960f1864df9897b3b5fcd91ea76e675aeac1c60ed7fe8f39d9ea9927002300356556cbb169e236c49cc50aca8f2e324c48a87926b515fc724ff062de6ac3180fe67f11138ae6912982239943b235d0302047c435bb5006730650230033629a0f08274cfa0ce2dcfe7542917c5995d16896081efe485f056566c3ce121afb2b279dd6917e248924a4d49cac0023100acb1b924fda939bc48d0e4f166c65b85ac57e598b400637650ca9f6fd2e5067cd2489ee2ee55f4ab707126c6e49a1e140302047c435bb50068306602310091a7cef80b74b4bf0c8ad02cbe71f7229d3ba80516de71fd2ff3309e54a6663022943e4ab5df43e1ef2064cf85fda659023100a464235f240aa08a2e75a63cadec14ee7b5921b6c30d320de4ba03681592ac904696fef393a4cdecd1268b0f67e982990302047c435bb500673065023100f3f6092a405a627f46d63335520bc49e57c1c32064b2e25c28e50ff1940d04dd78b7b453bda96168bec6ddedc302325302303331957dd3c551bd8063b28579330e6453e6695365e5834b2982505eb29ed6cddd32043cad322965d7c732ff412bd0a70302047c435bb500683066023100ace6a4f4743c410e8e840327975995c6102f68e4f6cc545164f4ccea262c54200007bb512d8ed9ac12df25fdc9cdd0f60231009e4baf20fb46eb0976ceb4c11d5b3c91128f31d4b2d238f45bba921d25abec212ef67a7bb0aa924ce10956d1e611be660302047c435bb50067306502303fff4338150a2b53096db295d1376f510cf644ccab1a59c2ebaf85a8b49e9f31cc328c585da28256d28580f3ed162bec023100c925e7a996f518792cc547f131408532c086716d14cefe46fa8b1f4eaa1f3c5541ec0c375df48a5da57a46c44b96ff2d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bfc3182a2c5566a8de23b95066ee739614a626cc8c23a1e6903a46a5e4627089d4038f27bd1281970eb8ad9df22c986202301b9cf4dfb88d227b19f530a028bded1a229afdf7356ad62e9c7aa01622a17e1c07bd4c2cc8fefda1e4f0c063cf7338d00302047c435bb5006630640230593c8d9ce9ee1c1c25653c5be0683e5730eb2666b9ae8c1ef8feb3672411c02887c66563a96a437738f8df0769c47587023072f4be8b2ac20f23166308311a99f9ba6bd7def6a2e167d018061a3c32615e70de42f6191180b95e6b364547bad0dbf30302047c435bb500673065023100c89ae7020ca2200f0000b6f6756cca5b38eecf179733a518d7a2bf439ab7e769a21ed5af3639881d11e0959c2b10906302302aa819322e5f41be8efc126185a55cded0dec017bc65d608fb4466617412a509da9bb737e068f64979f7820f0993f9310302047c435bb500683066023100f220de3541250a2e8da3f12c5a545e94e3a3ce3d5cde2bd25be7b1825caf60348ab8d89ab64f0906147ebda82d060855023100b91534c7b2b14d150fb575cca141be8e878595f60011697f234164decfb506b1688b4c05f71995dc8fdadc27d38fe9310302047c435bb5006730650231009bc2d4ad4e133fea25b7e6dfa24e0d7fe59ca9bd24b8ca0bf4e6a71c83588ad96b908bc96f555d25bf11759a9e9d5fba023031cea696c672444b1296bacbbc44462074a37479b2d902b081299e49aaa96dbacf4353e2e1508c90d2b46423404c319a0302047c435bb500673065023028242f988e9eae94d06d46c08eab8a8acb3b0018acc621284920702ea63e591d6d3d6fa2612028e735520b18e7a9a3ab023100a18703136cf0a1efbaf396163efddac0a233bd6c5ddb121c3bfb39431326e91bdc547cb414166f7f46150564ba3e52d10302047c435bb500673065023100e7e9388bcc8e37b8171b457a3e0330a78065a83e46466bba2a708f4b86210786d3d0de5feda6fce29ff45077e6501a1602306aeaed3dbbc92efd1c8ba5e70ec5d032674b1ab41bdc682d698471f5b56cf0727140e8a0039fa9f278d0c72f752b545c0302047c435bb50066306402303c53368f4dfb39d416357c157897b3167923962acd0549e03ed2e84a81921131085faff97074c9bf938f4bc63ab4ef17023015292c2006e6264b607663b7874cc2150dcb2fa56bea696bedbe7b4e9649e7a69c048ee557a688f173ef507287282a650302047c435bb50066306402301b890e52130013dbca1792ee145850f49c5ef9babc0f9b31ace9092cba9dc4e7b2ad346ab34f912344b5738355dddb74023031226a9f4acad040d44d40b3b52667e1523f664050d559e11a31c8613037134f9070a99338862d3350e56e10db2271730302047c435bb500673065023100a056b43a24827e5eabcb8fa76b621dfb8f584db0c2afe81428edc96e2a66bc48e9c602192068ffb0659b50b52990579b023031a1de1875a948a59abf0566146aa303b53572c64ce2de31eae633fa1ff03e7516d8a0188b69fa523a6e27a7942628db0302047c435bb500683066023100a1e2b04e27b88ce897cc325337d990c78f13f7448e5a7c3debb01ecb4c492ef800309fb3c72cc34cfeb7a662433c253b023100f8212da44f659f5a9513581ff9e013070a43fdffbf17355fbbc3d9d91c5e9f5d7b321d30a61f3254dc33c2d5ec37620b0302047c435bb5006630640230273fc9224d12937460e78eb12d6e74c4767e1839681d2f365bb5f0112c69607fabc0ec3f8ad0743066fd9105d3e6127c0230107eade47d5750c2a0cc47ac285febcab13fee226fa6649cbc88b1ae1ee5d09bb73ace9f0762fd008ee60dcad18b82470302047c435bb500683066023100f5237b5bce5d268657d4c54784875d434da434ce80b47cde54883020c6a40535cf44e822058730b722a3ea9cda7946fc023100bb4dae46078c9536212a8235780fd7145c35ace29288f42a6b71183eaa5d412cf2855fac827e1cfd60131187b643a0b00302047c435bb500683066023100a27a03235566c8428aac9fd8a19ee696a5e7a5204d38f5f6431b66b8f6cdd314e8799477204a6d7bca48016c0516c203023100d5da3817ebb148477d4d936a56ac95117017955bfd261a08578dfbb162151cc3a7cfd00cd1f7c430d2d163efa5f85a410302047c435bb500673065023036b80ecb7c88c360f7f1a439cc10eb6a867cdf2e554aa25b1fb3d005e8bcb494142eae49348b0632951d62389bc04d25023100efc8ba3a82c4a108ee07080404b866795eb92cc58f40308fc4e4f402078eaa3ddf1cd0e8ffdf6ebd0b41923b9d8889e40302047c435bb500673065023058b70c86c24b32ea546bfd3394a2b71e46c2ff3fd6946e2cab3cbe508699a83e1404250913360ffcf66cb3a91e6660c40231008e7d2c5deea335c6d08069f30ea15720ca46bfdf42134062388251cd7717f62a4e5220305251a5760ada676cd9610d310302047c435bb500683066023100d52a015809d434b3132d38fc74de86d2ce91dfa1b21e11d3cb9efd23ac0ec43d5cae099d2e895880ad86dc28cd82fdca023100cbe9ad73ee63d60d8eaaa812a66a39b87f005ed2f1412a9376f96636d27170865e4a90879b68124f07b526303481e5670302047c435bb5006830660231008c46e02a740cc33547c57e72bbd6f9104c07c4f8ae6c2f0f81f020640ca154cb9cdd82eaf633b901b19340f81a4166bc023100e7ef4d1c150287e5724671d91d651d586cdd548af21e070240553ee219adffb412f296f9c23c04f739f223084e994c380302047c435bb500683066023100fc7ee03e226d8ea4f2ee0b8a52942138d59d0d9e30fb503a45882820c98fb535181215df55d06d3b628184db564d2f940231008f7a291e381a7fccc8baca853b4dd80536f32e76a23bd1b6c4911a044b93adc14e7965aa8488bc0afedeae789790cadf0302047c435bb500673065023070cb8b5443973de53519811af2699abad6b712ae3e266dcd2cc2afc4fe699dbedcdc4b20c335994318d42976177fd7070231008933c774b1e46416d715eedce2492d217452e1d307cd616927f8a0c831472987859b0bb39a14a3753db1e26c08ad91dc0302047c435bb50067306502304c90989a555c7775ebe912ebdcd27415bd9abdfd747ffe370338614c77038af4122abd0ab75df2455d4892a8341bd536023100d6959f6ccb5a05b8bc81965ecf1e732b75296acc821822c3cb79cc1501181bcf9b3b4344e107a0c32c8c01a8f7964f0c0302047c435bb500683066023100a1f142820b42d7b923a2ae64e565f7a50a9a57622c5fd74809793ead3b6a7b7999cb283695e29e182b869d4ba3bbad860231008c21011950d60b8baa8a0d5c240368029b308612d8229c8c11e6e0f4434c328890623d2ef4d9018845ce9f7084ac10b70302047c435bb50067306502305342d272f69d6f12e1de6ec575d182434c5e8ed370e69795ebf0bb6df533658939d63e31563852a37aeb1c5d75b04478023100fc704aea64f7d217ee4360cbde9bbf0d2ebbebbf127f24d88f3c90be18b0391309ce846426395a35eed377d9dfaa124d0302047c435bb500683066023100878cb21345e8c99a97759514ecaddd6a2d63c46001a430a9618661b83005b0fd30a086183d7c4e02c3eefc74fd43ee43023100fe0da44876e59b407d428bf2d9b4011300b4c268068dbae92748e48ddfea27ff0cdac91822e80184aa3acf00d8e44f8b0302047c435bb50067306502302fce86b9c94a30e328ba2bba3c0c506a662b1eee632c23d7e62b775eec1964fe1b2d8048563b0f913c5de872402caa99023100b4549aa62f54ab6ec1691cf392a368ba01ee18edbd2a4feb8f164bd26a3c9e797f4f28479abeb7f6d3292ff3f7657e570302047c435bb5006830660231009be8c6852439984d71bd37c5a9ebc9ffc7d3f7badc27e1c8c07e29613945d2cceef36ca3aa8f1431117f103c0980f875023100cb03274c1163f7ac7a38012f805396ca1dcf3df2ba0db121d1eddbe33513d847ef04cfa2c73f455d55d042ef98a484180302047c435bb500673065023100ae62b6a07dcc3fbbf28c2f2a5d31317e677a70fd6adefa1409556122cdd4c72314791563c10d2e97b82ef4ce21b70eb5023024b26c799b99fa1e7c223718e5371b16a9ce2758af39b076020fcee5f076a2f51cc85a118367a1ec4b9999a8686eb4280302047c435bb50067306502307a0eebe6b7a35cdc7a0c2f04521dcdfd61af385b1304d02f4d3cac0069d7e367b3a04ac756799f5287631af13781da77023100ee3be0fff532d74020f24fb773b0248d67828b57c0169ecf24406d88058f07f25f370d03f5b2ef019b631040df86e59f0302047c435bb50067306502301d8dd14e13879ae54a7c4ec5667e6838805d8b658a29918eb6a4334b4249047590fe940187a950dfe2e28db7a2b20081023100dc4b634fe9d97adeb7348a0365e6d2107cbefc057f51bb729544d7886b58c056d7f88084c83e0857cf71039cc537dd9e0302047c435bb500683066023100bab120c7cf59046f8e06b85401212b107cfdcf29ed463fb46995907373993b17cb5604553eb5a74a6f888c5129769af7023100c83cb2591676648a657b7ec64eb6beb88b02a8dba8c366a6c16907438c14efae1b93b2fd9a41c9a71b4521496007534a0302047c435bb500673065023100aae5f93a2f821f84070a617eb719a65577c6956df4dcb40045d2d8c52699ff840cb270242d64d89b027cbcc3fc88e0ee02302a1849e93cd3cd1fb03d89cedf265052180a5a42af684361946fc4d7e432c38b49075831403c9057bd84cdff4a322d120302047c435bb500683066023100dcd1a474d013caad74a6e45ffe55c150b1f08d0285a0a8092297674e0bd019a7b4122f003791879e77191c57ce56b11f023100b8c7291dce82b3ccccead0bbfab4bfd312754d5329a8171b9c96610609acf788c60d7b7c5e5588fbc05ff810bc387dc90302047c435bb50066306402306d2ee73996b12cd2dbd6fa4292e7b0f74210ce56b452823b946bb0b0691b466861db8de0ab91b21af7077c1cba497a510230739e8313ed520f9c27398d564d00676dc204cf473f6f67bb7eb1c647d8da6a0ba6db7a604f59d03d18df6fbd8e2b052c0302047c435bb500683066023100e31a9445680dc544b539b66a371de3df64c9546777d71aa27d2ebbd92947c7a41b5a01577ecc6e8b8aab59503c3e8cd80231008773cff68cc6e50301399b59997b1752f94db654ddcae05d174a10dce23a28be44d67050f5b92af084ea9ce10132135c0302047c435bb5006730650231008239c24c49a6d2ec3c93939ecd0131cd11434e0b521602324ca2c5369be93d9e92463cebf991b430460be915bb0ba55902306817970947893566369074fa4f7949d2eb9795d66e0b645ebf58607bc7710eadf594f400bceda3215a8320dbd4113d130302047c435bb500683066023100d1e4ec499613df6d1158a32d1f41fd969554d76678f8469220cafc3e4023a87e4e6662aea1a30708c3fef0550e9900ab023100bf0d69dc42deb7ef0ed12fb80e9b1f4f24cff3c4fbe6e6f623dad021845f7ee110a270c18c3b3e228b687407fcc77c640302047c435bb5006730650231008330d4526aecd6f57c0d2b4094a0c259f3edbca515d8ddbf5c9b0278bfd32f88afd4b556cfa98b59e3b4c1996cb386cb0230792c00f75bc78eb5423165bd97b15766bb0ee3261f9b7f66d0b2636df3df0b816fd930882de527368b2d68ded90351c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100aa890ae4b65379049b3587d1a6359af56e8caa60c8c0810cf1a8ab8906cdc167463b68bc3ddb5b34b205ca631907f62002305bc3ffec522e829aa3fc83471bf91ce718f44db11064b863feb1eea6aa0aef8d788f26624e702b7821599e49372a6ec30302047c435bb50067306502303668244160168534f15b291a24f52b2db1737b18e85f08f8a1e5c0742a371094df69071057df974fec79fbaeb1d46580023100a8f67f43dc20b9c49b3f8750bd983b3870c8717d748dedaa2a6045d40fb8f37bc57af9007e3b8d4239f2d4c52dee5d770302047c435bb50066306402305597ab94724569d90154aeeb13fdcacb52df584ec8bbaeeca1a9d93001ca2850ea4f6ea7fa5a944d2e38151f5df6b142023043e68d3d40d0f08b4281903fa7643fe53bcf66a7d367fcc81e06ae0f0031766c5cba0ec8ecc60a395fd62304f62867720302047c435bb50067306502300d28c7107c1722390599f6655d4e28c050d6ebe8b47d494f1b19431e34a6981cb69e34e6f260b81ff0728af35eac182302310094a64b9f99803683ef33f0d8adc98a1f48686dd059f35bbb64b5ac2244bf99577985b5ee0dad6f1684ace5b343be07e90302047c435bb50067306502300d62d45f72714906426f12f801300300d787a94b437779a87dc7ec694c6f98f698082c42c6dca57ea2e0e7ac8586ee09023100935e90b1550f93f09f05461431e54dd61db43ac2c17bba5244b87f141181d0f3b7fc9d7dd236ffac6d1efad2c4d58ba00302047c435bb500663064023013e4cf46b1a606411cb194817b47c09c2fe287a2c8bd713dfd4b0c5b76fc2618931e4ed7611a9a5ce5470d0a711d85860230392c87d8af14ef1a039579e333f0594481c16d7b0c646903bab44d8d7c179bff3dfc500caf41e86a70c75544ae41f6e90302047c435bb500673065023100a05fb389bc82622c0bc45ac5566fb0010a8fafa846dc19bb9a9c0a95767ce1baa9c3fa6bdabc5dc34933bbf150e884c40230705f33ac48cc14e070a1c9206fc97fe0692683f36f72183b8abdab68b16b78dbe67dfac701679854ad2e8426831b0e550302047c435bb50066306402304739d9a600816e7625b9ed644b87e0fae39675850ffa1c897c37dc47dc98ee4e5022a297aeac2ec1ee03879c5ed5d05e023032da45e7e1ff25ecca6c013770685350aa1194726526b0c15dc6df396d190d155aca098acce27024ca2be0ce4935d4bb0302047c435bb500673065023100f54f4b319745d6b84034d642ee373f895b70d540c8418d0dd29c681bc4a67733571263397804c1fbdf17897844639651023074c41d988c87d735eb7b5179d97ca6b88b0261b5ca8d779f23b9e3a1cfca65eb0e24b8d3d7564cc6d988d947ad5332590302047c435bb500673065023014a9ca15d40917decf8bc50c2dd7d4170369968a086e342afd8b7846876438f1bef0b6ac0ab8cc9d92ce7f5269e8927e0231009d4a06ef118b38831f10435eecea3bc52a2081fb39e259065ade021ee40547c0a9f4123f9df13f5ed9f965cf5fcab78a0302047c435bb500673065023100b643d2cab13ed9708ae4054bd5f39a5606c797ba21f733d8bcf6290a5c7e4a9ac399c4d79fa5aba0696065cd284b8af702305cbc1d6fc0b92c509b8f72bc4ab0751d253e04760478d5b1ce9dd3ab26485524dbceed70815d8d035bb73c1f7a42e1040302047c435bb500683066023100e01bf0c45f0eaa91408c8c84d5dfd4acac40cc7bb3bba2f71aca435a1a751fe8854a5650e584554c0dcf4189b5c80263023100a6a424ce9db5052c821f7cbc4ec5fa7acf4478aee6228cb6463ded12715a3fdc3bf5e9576cbb21e7d95712fdf065b08e0302047c435bb500673065023100fcc850054d092faf5f4aa56f38d308d0ebf2acca03ca25ff57ae843e23d1f9ac5715b0f829086a3b5d60fec43ab180a302303df922024804f81c50a0383a088b1b2d96a391c5906926df7cf98708d739dc47e9dd5789f8a57d0a4d2bd954536685bd0302047c435bb5006830660231008ea9b5282c96487c9167b595938fb10a136d1b5ecd56bb7f07b4f90da828e94f7ae0b155b52e64b591f5817ff6fa21d5023100c3ae0a08c0db20f1c2b9fc682e571629f878d95df601d4b618ea0c7c4cec86db845570d0d8d461c15e3203125be9bb480302047c435bb5006730650230422696825f78e565ba5df93656d35d6b61ed6763c199da48d67aca77e884d599ec6bd15ecf281569edeb7528baac6a2302310080f24f4ad8c0f20ba5b8150bfb8f38dca8d91a0accfc34c8b1c966359c2248a1fa9a6860225b15350526d4cb4b6814a40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c70725f2418b718798961dda9db3bd5d9fa349be92f459e889a9a2fc8ab55111badd505d9bf20545b079033fdf0a85b0023100bfb7b7c8f03458939dd58b04fb47ca8997153c7042901b4c6779bb754820c81777f989b49314adb915dc14970b152c820302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100918632da81f0f926fdedd5198678786800a2af975d6ebe73d2d81f740e750513ebc7ae84c2263aa8d9e12fe8b40a7b6a023100aa7ffb4b06de00a8f4920235e2cbd205d6adc09af6d0f42a6082be7b54b8c40ceda2fff3e6aa41a7796264ac77ee38170302047c435bb5006730650231009dded5d198c1d58c75e55c730c3d942888516d4e01995ec6a922e07c7d9e5a5491d7c7f3ca1f93d0eb4691f18a3ad57702302f2d38a267aa24f9a52b561272dcf6238c24f1d46d78074ae5a588e972e646a5837f528114e4c24d67d634d890786c340302047c435bb500673065023100e1cd6f0fa5570ccc96cf03f4a7c56b40ad71567707222883358c6d19a83d0d15aa99ef59c97435f6a1acca0c924b27e4023054e7b4ae72dc76a94bded8d70abe4c9e50570a7841227593a15af1fa953ee1a1b6e944a8b02c0469b743b6fed57640b10302047c435bb500683066023100dd38c577899c3317a7fa80496d02423639f46c3e6a72ef78bc7a39e1b61ec18c04314874136ac7ba38c39dc030b96a76023100ad11bd1827f4c6a7d7c01f74eaea778092d801e463b2cd42fb53357e4fd3390dc12c8817b7fb040017e6044e1eec560e0302047c435bb50066306402305a8b12e8009995f637c842b252474d99905696beaa252ac3de113dd25a18bf4c56bd0b64b69a307d762e8a20a031cc7502304598dc433ef0f48d22c58056123131bff9e39834d3ecac4efecfa388e08e2239194d9e70fb55bf47fb88493dd938fc9b0302047c435bb500683066023100e05c5a85fb6c575d56147dd19f2508d7c85ded94d14656e4071de69022936e3ed88cad1cefb259aeb892ba4d01e10434023100c56339384e58bd2d8795767a83e36b0f72ed52a01092e5c6f0d3ea109f82d34edc8c9b2321a243ae3be3acb22c68566f0302047c435bb50067306502300fe71ba8ff96d9d2fbae43249efd19b51d2367d63f7c8f0db5e85592703a1ea9711301e410f047880a6e33d9b3c0d32d02310089257aa462b247e0dc2281d1827bb9b5be375a5f43f7ccfe479202e4b23f54331d0648173fe1b7ba5b3e296ea8a9c3c70302047c435bb500673065023004ba5cf2990000a1bcaa8059349c45516af407e8157e9397731ef711c9265bf1f83cc15b98c7af90c638ee056336b5a90231009604054436a547025f2ba301ddf26ce2be1340bf6bea30b5878b157b4720af4d35b4c6c43050e6549ca01d9fa46b70d30302047c435bb500683066023100f10543966422859385b3b39ebb838ce68e415df5f9ee34cd09e1c2631498261825ea51deb443fc5ebc42426b9c0c2a2402310085ddd578268369d0fc6acce99de99bcc3e9fa3f7759bed44ccbb14b7dc36dcbdf6eb3d913776ea47f1c24c7b00ffcdda0302047c435bb500663064023040e3c23f0e243a38aefb1d8a3d3b53bc6d93f30e8ad9531849565e8fd1b860a0f40873e6a3b8fb52a9cbffbb3b34365b02304dabd9a5e9887591bcf32ed26e7b220bb82adb16902be42a018ebe07cc682638eb4b8309382fe181b47754202aff05de0302047c435bb5006630640230492ecf5ecdf172c731466aaff9918d655d82a04a005e28d3d653d94f6cbec87de2cad4210f342794b0327ec8ba20fba502302105991b02c1cc54324a27166e8ff9238dcbc026e214f496c9fdf7d0bc62d118f4696ff42dabcba90b4c53f652eb1de20302047c435bb500673065023003247f87efb80f86879b9c05849f84f28f8559db33fdbcfa58e63f6df170c344b6745e002e683cee9b624593d1727f15023100c102e0762939787393f3178b07e2174ef554d643c378d92b2d5d7bb4c5e9abf33727e686f50347ab855d26252da35e270302047c435bb500683066023100ab573eb6eb64c01f17b6a0e3dad51243255494a78dcbb7cf41f4d4a705c854aeadbd2267607edac5afbfca389712d0b902310099a49e4c30e02f51a5f0947707575865926c8ccb9aafd77c5a31c35744da7b10c5f94d1cc0ecf2a3a3a0b0690b14400c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230625c3be1ffb2e5f2f6bfdf0c52da10862a8fa6b532a9614590e93ee10ca7c274f3dea36af553027714ebbbca207a460002302df140ddd4354ff212b05490e54cbcfc99b8c6637bcad011250c88014dffa57ecd545a03ef8441927def9a14ee621e9d0302047c435bb500683066023100e6e47a83abab19494f64ad9d7f3138b80a0fd8bce0b03e96a6c4333d143ae4ef86d66b8585232c7d1182128642bda3b80231009a232c1dac0225edfb036c9293e7fb13745f969ea974634732300df98dd46d0571ddab9ef17cf428420ea0e6d6bf08520302047c435bb50066306402307d0099aa0117dde63406ca0ff6f59d702a00960ec7aea424ee12a5fb18e80ce107fa27e69d61ac755aa36582e68e5f3c0230372ec51c3a6c5a06c097bdbf3b106eaf550a0b0dee3077eed8f71eab5f24619cd85c3fbc3e86cab5835e0852c5593e2d0302047c435bb50066306402307c85388d3e7796ef3e023723b5a720bacb1ed337afaeb88d9525c709e75d4b00aaa01da5c399946709456ae46605e13602307d1516158c5d122720835dfcf48bf2f2faf2a0dd4f0f9599cc4229e1640bf8d4b5b3926443612f02ae37602612c737ce0302047c435bb5006830660231008b830a0d9fbb52056c405edccc73d4ce374a1a933955029f58b29a6ea1c2ae7a9af948904850ba98b827e9bd05a5baec023100f451e500dde446fade6cf4f1d089b3696fda6ced898ba817c640f62cbd1f9edd441d82fe4a4ad4e6b06dfe835f78c2cd0302047c435bb500663064023021773bd16e01c5f1a81f2af1af8bb00be64e1a5c0afc44122c4902c00e67d38ef36212d09c3882283f1f17c6805992f9023054b5a62e0123f591b59dcd550676fb63beb930d54e9815004a63c8e8a5f37ff2670a2cba2d61f024e2e23200fd354fe90302047c435bb500673065023024ea32eea97f58a2a626a9ff7f1f736b0d0159d06ba54be21f9d35693a71dcdd2c6c83e4451c00dc624fdd357b6ea279023100da12229db0ec6ac04515ea914c53a6ea4c313bcc6e7fcf8b5f5e9bf084a75f818e79c0fa42894c4a3abe67dd4fce85070302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402301dc809373f89699ac6b0f3b0320deb649c9fb382cff18f09a77c8ad8bf533cefb3e733f44f60eaed35f00e750fa72f9f02307e967563666b5958707854601e5515ef1122849be4be78ad693161c140fc7527a87ef9e5f1f40fbbb905943472cbd76a0302047c435bb500663064023024dbc42ff8926177b33510c48c921fc6f57df4e2beb02ed5bd5cfaf60feabce588b01e569d4860385eb1a2620a1aaed802307ca6fe1dd9a5ad9dc9f05a13d691c1ec4621c78ed2c24a22981047c68c6e929e23faf627dde0b6a9afb476ba4cc10a3c0302047c435bb500673065023100fb8306b69feddfd91a271aaf13310c4e85a1cd71f4c2c47045b148c80a131c270909c0b867e399d9425c2918923d0ed20230567e625111ce4ee40b4c6e8ede2d2adfeaa4b0d16668bda1e4a008b1e2d108e7a8f33b9d4c7a2dc62637db8001f845680302047c435bb500683066023100890415131c0d57f636429d1ba1219e3301508fbdd866e3cc9f1c39c70bd20f78dd62dcaf65fbbc09a57ce1f747913f8e023100b4dd43be3d9719de8b9e1956128061d5231eae6d2199f28424bea02c5d607c77780779788e770b9b98441bfb90badd520302047c435bb5006730650230223668c3386b9694d5de5de8137be32b01045e045a4f4e916ab3169b2298fb5298dec982e870600b19db3f665768ecae023100ff1bd84f619d999e37aa9b5ee759c03482c9d4ebdb2b7a8ce5a2400e3934df09abda5bff28fb14ae27f581e0852d0f8e0302047c435bb5006830660231009a2d53ff3bded6640ba736523e52812faf1935a55f8946f8880272cb98e2e51508cffee825ef5f0dec7abb74f8e8a44e023100f866e510f1ed484aa020beaff51885e527845817a7602405ad1209d0bfa86f21966753a7f5a97f421dda26a4013b3f960302047c435bb50066306402300f34b82683476523e2a133a47919b178a6ed76c9ece18aed2e4728d892939206217473fb2241d29125d6bb8d7d4f511902301ac4631d9385fa85a0c6e4b1becab3b1ebce0571c17f51177ace72bc7bddac4ed1ad0c8b0cd412d9e9ecb08404e040dc0302047c435bb500673065023100efeecf9ae749f3396e45c2a9422b8ef1aa5cfc7c87eaa77dcae3370cd2a1a23c8d2986ab2b4ad88ba06d2065f42dbe4602302243fa54bdc147d8a5f9f9f14af72d162b72bb414aca5e1048708770b0f3b5ce05c13552ee1b8300fd54d7897d81ff920302047c435bb500673065023100f5d2e69962bd060cfdc013b33d3851a02f2afc1ce592e09aa38bbc0083ed82d24c8534709c7b7ee084732f48f9d5e2580230529b59913664d41817edccbab2eb0711dba5c5fc22bfb6124ba894709fb5f9f4aa6bbe125680fbc8ee89e84f9b7fe6ca0302047c435bb500663064023044c21de7caf1f2bbd2909545687df1df96d17b0f0402c1f748293aa1a814d396183ad96ea16d76dfb9d663517d1aff8a02302a12aea53aeac08103c80ce5cc9cfe813388a7766e0766f35b9a541e0ed4b256f03bc9d9c4551801bf299caa29faee1e0302047c435bb500663064022f0175d501d652a23ace6b301b8262e7f2153bd7922f9869babe3a6a12e130a225dd0296f97336499ee39e88f6fbdc1d023100e12ba0f8a2a999947291ad91c9337beeb27a445fb6c75197bed1c962640ef3aff01378452cef62961b52af40a35244590302047c435bb5006730650231009369ca3e8ea03277343ef711591fb615e3931fe9ded7baeecef3da8f963b46f98d71922613840a86912589c32dd51a0f02304427a4255219e34edf85823a874cc76c551febdbaa25d6acc7cdfe59765f0106b53b44454f8e737b177a529aff284b180302047c435bb50066306402303fb3ef692c63aa1ed95fbd0ecda4e20a6718ba16d35bdbe6dccea290491f746444120e8e73b2716b2a3adfb1ceb5407f023046f8b490c1a052d1cc3b1805c99723bbf74921c8a0318469429c88104dd0a1ebd9e5556f02c10c6d7a7716d49bd7c7360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e9d26fdf974482ec296e4947ded274e5d38dd7995cc71656536d849dd187915df6927e90b64c8b81344695ae11e55e7c023100bc6cb86e18379b801b918696a225f248ddb81c329fb3acb4ed364a67f47c610830264bcd41962f8005979be31cbb61b40302047c435bb500663064023057f8198c7a07163fe271f495acca4420e74eeabc25fcaddded012c877c56d79f7a3a7642361f34dc6ac310477d1b73b5023011a90751de83177abadabfbcea293c818fb9b3e874405623634de634dbd5a70e878afa0914cb60761dfc81be1feb7e540302047c435bb500683066023100a59f9f05f25ab6828b1f473941474ee233b919ee65ad088cdbdfd916235e2b775ab1260ea89132626a7ab5fd57d08dcb023100f549592b16ac5739806c487ea01a6a609e4449d5b715ec66f61f0ffe077384af0392aee5f9b3467407fcda5c7b5d15050302047c435bb50066306402304f1be18aa25462ae3498af5866f4f5dde6381251fa20adf8506703ac592da774c54b7a042670d90df8272a6574c6b70402305b313aac4dbe9e01b5dfc1fbe3da1f8750750ae3b366ebab558b21b902534456fb5b7ebaddc32acedbf98fd31ab35fc80302047c435bb500683066023100873e51a05c461aeb6935d83afd6f378f146a8e6603e15e5e29d6e286b306b919cf6efbebd2000e14b8c284ae8d1a344e0231008dd93f538a08d2ce367a74757278c94e0a696f9c0ebbcab395226ab63d61cf192efefff027e8cdf5c5175352982e16320302047c435bb5006630640230054be19dca1d6ab865b7f8bc1994bde2770124fb18f3135c2d8383fdeab28d109e7ba1ce51f9e52eb190c5733cccb6df023001def43e74ff45dd02b8e9f28e399d2f3182e84f689602cf75e8da56b49bdc7ad54b50f34001b97076f6e11bc44ed48f0302047c435bb5006830660231008c72c0c65f3c371794403d1ffc60e6ede38dd4eabc81b038d6abf1b30f72a47a72ef6dc9076f384bc0cee24793e8beb6023100f1b381bbb5b70b11cfd3d7e0cfa7610d147f34f7e87b76a2a5727b8bbef2e9618eefc5e559582d499d8459fff8df80310302047c435bb5006630640230538fda224c7a5e285daa9448d5a12af109efea060a5ca2090a76ddfcbd90507b163a50faf465af76d6b48b008268d24902301c53767b0dc1f403d5ce02bcdfd23cc5f2ddc77e30d7844fb68dec1146fc51ec9f2cad306040aa95a6e4fd9f947e3d720302047c435bb500663064023039e0ba01b7d4842c1e2afbd7a77927e1be8b435f1eb5eb9ed1e191c1f8e87f685fd6a3111e1def8991619c2ee86c39c9023056ae1c9971f82fdada37309a46b01eafaa406e1d9c97022284ba81de8c4aa1e610b1d55a90cdff49a0f8fe17804305080302047c435bb500683066023100bdd048539fa00365088636b8d6e4db6816445fd1e2e046b4beb54d5e515e0e1029511ca270da0ae1d32c8269b757d265023100ef9a83c06fe615b563b9230a9c45f1277c94d9e66291075716faaf76ef067f7b6983aa01a7d036e320d6c24f6b9f8ec90302047c435bb50067306502304be9f231f0b2c4064c22a3d8f4bf579e44f1c609b11849c6d4a1e01cfcb244fac0bdda860c538f305fbef951c8eb0ebe023100ce5ba1c3114f7237bb95b17f54317df5f7fa767adb14a9a27698bb40f93fd3199e0cb9b97b4f6ebe96a2043ecaa3ad9c0302047c435bb500683066023100d0aabf58e6a43d5d6c335c22a06a987d1d3e70edce1852c47d9898ac9f8743986cee253cc2244003bafefbf105453e52023100d907814c92b26e998456be21b84b41112bd58327d539d2975a7a992271cd976785b5e7513fde09eb7865e3af493144a40302047c435bb500673065023100871a6d3af4c987dad084cc65e72ffb481c99bb34017e3ed09b8fba70b942e039410a9caa48ff965773b1fc07dc431d07023057939a1b5378390c713d664dc89355de9524aac962742c37223f9924be019c375508eb27fe14b9a1d735ec3a795689cb0302047c435bb50066306402301c2970525c087b46528b5fae4f0a28e6123c18e8170c283be2c2eef32d424882f2fae35a366f545dea82b00645a35c9d02306d31507abfc576d533d6cb65bdcfa15cb3ec3a0cc1dd403eaa48a83187e6cd732363a38bfefddca29bc09dda93f2cde50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304251fd0ac1585affdd8a7f612852e611fb10242c8ca173bb747e4189b78027802bede645c9a523632853053303fbb5a10230522d6f26c441ef039a3c7815f3bca86e7c59e939353421064ee809861af488a79d404e1a54d09c230370e1823c80a0680302047c435bb50067306502305ac9a6e87dc634029da1284591eda41ff0240d0586f1421276ebdc7ff0f438bc6eff08d58dccf857d8288a98b9a211e7023100db952235ac2029c45a49f5de414ae44212cdd44f10c11b4ff0b09f581792c0604c0bca69219641ed2bfdfb7f98a60e860302047c435bb500683066023100fd80511f7cb3088d9e06ecb6371adf38ffa73332722642eaf601aa70672319c9aac0e0751c1e0974156d046e407a0c840231008f2ebeb168e4368909a6a67dae5a3a37216133e3642845b57e55b541721f84187fce20a6ea09124fcec8720cd32f97b60302047c435bb500673065023072d47c734d04eddb9e40260ebbc04712f34737270efe13615eec993c6a26b23a2ecb9817245e0ccbbb93978e6ff926a0023100acd62de13c9f70046323ceaa4571691da76f15f69b308a1992db37eccc4a55b5482b8f6daf467c4d10783387d3ac7ad20302047c435bb500683066023100e6055db80c8bd06d76d99a53e4bdf4d701e781ab63e89974e71f4680e8aa1348a8dd925c124fbfe421d2e592cce86f67023100ba15ba882b6ea7c1c7da9dfe26bca125686dc480dc3287f33d96811e329a8b7d26ee5b46e59558de15eefd88628fd3120302047c435bb500683066023100d0139fa3c7d93575d534d9e9303def52431dd734f4367a7701142882095700b3fd73e7f01f2ddde47418ca2ace2482de023100c6e3adec26af067e9e411faef0b1ca50e8a862a215629e20bd003aa4ce2edd0c90cb6922f70b8facb05e4f2ab56623880302047c435bb5006730650230724942a5ffea0b72ae924b71f4db3eb3f72c4fcdddccad87f7393413a0149e5c8218e7aaa08609ce424de00d1d2e9886023100dead420fec32a8f29f9cf43a2036792481fb572f98bab7778267e5271b5e36e196273ccabb717049395ba1c0b62516c40302047c435bb500663064023021d3ce5bd737b312cae8348d700a05707989f9dcf5365a8e2c82c25c2bc0087427a0832719f2e2d2394f8620e27500cf023004f799bff4896647c6ee4e4650931b2c1473bdd8a149997cd551ccb18b3b147af38fb93b6b112a7c60fe341ed06f35270302047c435bb50067306502305c4094c41582a2c583c8fc080f63d6e0d1f36c6bbfde4c220d85511eccfd6324ec9783e35a26acfd7848801853a9a7ec023100b9f41d08f0f75cbcb0f0ba749f89946bca76a89a9cea9ae1252be8529ad61c56110da32f85355b5caf48d450753e57180302047c435bb500683066023100d94ce38003ccfe3c750ef96680a0af4ab105684c1f1bc58d5ba38f777a0d9312cf28fc82b460bb5f5dd76cf7470e3efa023100b3cb6eca88e355be4634e7785ef01b778ce2c55c5d307dae7ca982354dfe3231e782a4cda8f03309a44369bdea3a0d0f0302047c435bb500683066023100fc17412780a47b4520b8f89e980dcb666005f841ae43114b04d783d1409cecdeb57f9dd4295e702fdeb4b58848862eb4023100f1e76e2a4861a4765b9f7e3ea2ba3a40d041bfd56aa97b3a2468d31b7bf8b18328690f31f34f6529aa335bd9f55447670302047c435bb50066306402302ed4c5913bb4c54b1f4c94ba935f0addf497ba0bd1b76ecda03c64f78afe16b17ddb93bd0ec7c91975ac4b9d01244779023044d14721715b0855e3d767c6870264ea0f9b9a18828b55ce63eef5e0d0b21bf1f480c363387156bf2c269b8774cf64ac0302047c435bb500673065023100bee4bc4a8743535e64158407ce9599740335c8f9eab2fcd4e5dca16b20a3e683b21b4743e2d968f71b5a8d5babb578410230618a8e6b9eda7a034c23b9b7318a0e776cafa2e8d8369e69fabc84b5389d2b178d2e96489469552169d819a51bbb13de0302047c435bb500673065023100ac729055a4434d4002c9d2d0f9c08301f7745eb1dad95e6b181eb66c7af8630b24f37908028622b86ad9b1c903f354c5023044591c1ff6c938a5dd464fc400904afe86161ad1b66c1f84dc40c1d42fd89920ad09eb84b8f00c6ae06429ae64d3410d0302047c435bb500683066023100f3dc49cb874651d5c0f0682e7333033cf5b57bf99a33bffc4211a92c8d770c2800845b36a16451fd04a38bf4ebe084f0023100f65e891828e25cbc28137e934c72aeba166f20e0d4cbe2bd1173ff2238faf9b1658c7806c45a7bc65e02b000e41b4fa60302047c435bb500683066023100a6d01bf4b678a20317b68249bdd475717cffde8575518fdaa239c2f976348ad912f3e3018c1178f0fc6c77dee641c5b702310098107bf439a953c56dfe00094c1d973cae15d8f264e6ae93bffbf3ca6a6f3135265ace7c98e186ddd6461860c36605550302047c435bb50066306402300e868f147f7850315706eb91f855fa756046645cbbf58b42ae8026433ece2d119b7158dd1cf0e2eb8ba866d8d117fe3802302aa7c6cd9f14c357fbb0abb8f970558db8e2e4deab31097c0f2eded2decae1239791c0556d354d676d20fd61c15130a90302047c435bb500683066023100bff0cf29544fa54ff8587248d07bd1d2836bdeb43d3e9fe24b2367dfa833f8731c6c4fca4fc9f931b6e073bf2b46ec43023100b54870b04c258bc1c1ebfb22145cff9e9a5e7e2a464e0754566cfeb6fc5d63008eaf5cb9c6cf170ab93326ed66e42e3d0302047c435bb500663064023013ef79437dc545d13643c3f9a8edeff8a04a08a33c369fb9ab9082db50da8280addba3db7dc3bb4dc330a7acdf35dc3c02302cd7969e51222b9063cd4d57699b023681cff8818d8bd22f2a46196861944767c63cdbc1887d1e46f20e3f70a299336f0302047c435bb5006830660231009c0b4f4c06360908460f6471cf49edee6bbbf33e77fd47214d70668caac4dd6adcba4e7cd39e92a16ac259f24c43e099023100a549f6677ee074939fc84fc59c888357e068c0ee3ef6754bf48b87a218fdbdf0792a89fcfbeffd4a38c4444a0579c3990302047c435bb50066306402305339c695045761dff181c202a9788da18851942af8b4819f034ecfc48b632e57f055b6af69f22d52997c38c64d2d902b02304aa6bb33945fe478aa6217822a0b39a068946f2d1333fb95e072ad18a024381862f42bcec849668a2fdfb506ab24692e0302047c435bb500673065023100d2f5df682f3bd98a0418d286f9e0072be40a47ee87a906cecf8490c4c0918d6eda8ff7060ad30c3be6e2c6e77a3d582002301ea0659a7bca81cdf8608bb2d5a3636a7c8fb54139386b5868043853ee0f588e73bf1bd4f8f1a75366a0ee7dea5180220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025a6c116c3b0e6bfb8707f6859a7783627034fc3bc0bc36848ae695d33ca8f92eecc1f97d5ed0f0f5e00fe7e4ec64aa902310085516638eaa8a774f18da2eea32ef0f991311b539d442d3d1f970ebd629c881739313049bd3953a2a115d0a79e5029320302047c435bb5006730650230578b5004ef48f42a9499ac5f8e1cf1b69eb43c552f8668beb022441bfa39c768eee61e422391ef91fa7908c08ef2246c023100f46ce751686ab5b77f97c21b0aeb5dce5f43e694989ff3a7973dc55055e305b649ad5b00441fdf696bb69c1fda4ee6e00302047c435bb500663064023059b521fa4bf8d4275d9cc2143815e46b3be9148da2885e1f502966991a2e6909517be198e9d1369a5028201e27538ac90230166379003c61c61478255114b17567cf9fe7e2b530c88f42bc24406a34dd15cb43d193b43e29a630ff7ab150f2ff79d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230474889787a9f785c456b045e38a5b4c6793316d1661bfcbb70b2041a658dfa2d4d8bd0c15bb26d453dffe60e8d46bbad023100deb1e5c290555404de5fee892fd91d23ed4dcc8bbb3883e766cdac154994d8380e4c5805ba3aa5d1b172c22fb3f434780302047c435bb50067306502310091f12a6ea3e40c94dd079e026a7a962d6e4aa7a717957142176e629fabacaf2b1e1afcb9e37e875aaf310c96327e6c0a023018640e7dd045e7a4760666f9f1457b5cd03cddc5ba55f56ea2f2367d52c217dc6b5443aec90f6628524fac6e2e2170b10302047c435bb500683066023100bce464704ac2ab061ab5e1d740adf0ac69f003c4f65c8079e422ef26e446ea04fa2d9620562f764371cb3bf3cd32063e023100f31a0e8e15ac7b04f28bf497a2de44cad23fe7afefc5ec440d8d1e65a0ac66f73f55f68ed6218f7678e8860fdad0022d0302047c435bb500673065023006beeb79850a37b413bb0de50332155f67c88c31fc2e8422e7c0543bf63b032d3074e923fd5f05baa7daf1d9fc13759a023100e59314daa50eb1185ce425668207329f817ab186f562e61b66d3ab4d6bd70bfb81c5002d4ca208e13fa2e45b3d0caef50302047c435bb5006630640230488e9387649d9f28179a26d568b4680ba026eea874b1cf915478ada1d29b134a27cf3b1c724ea87215df238082ccf9040230732831b7c2f48d38285a4c5f4055cafa6f4dd94ab63b3b44da24b103f7a11bfed436158716654418fc32129aa63718860302047c435bb5006830660231009831a901e49bf1114f85b0b04c798e5065645b7b15e66553866d570d7375834f69bae3aca1c08421202a7872943c80da023100e6d6e86cfbc119deed4ec236f6152a1cdf9be425222d025c34d8e62acec0547e54202f2195cdb2ff1ee500b8a5450f3e0302047c435bb500663064023046d69c18d91c36a0945cb35f0c11e6941b56d15834842b359b06c971d427616c6cc539fcb2bcf5cf5f069da6adedacde023078a300f3c05264682e3a47b40bc83493652f94f03a64fc637d6ce7f8ea12fad02e2f27f795adaaefc65b1b5483530def0302047c435bb500673065023100e7881d604fdb6f1fb83d7e3ec967c3a18075c84551f48853d4654c7d84d6601a90b90b542b28495944f2a994f6cb7d7b02306813139c300aad170e8a8b3f68041a5bda844b4f08678eac76b2add0ddb1fa5f02ef303c407d9a0ebe34376157d57c220302047c435bb500663064023047d1b4b62a69a2738fe7f1ed86a91b51b7468c89d3a58f21dfe2ac6d0fb3038c7a9b173b4c242615fc0a8734f370e119023003bec5f41b34283e567607431c6722eeeff1cab89765a7de8e44980116650cfbec459d9b5b6beabb17b5a1970a6aedc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230107256c4b1db8faa8138f0b9fd2445fef737722c63a8ac3176174af6308036e464c746f642a6ba9fa5336ea213ab8c6302307c065f2786b4d2b80c4285cf92f050ceccd2479ad2c400361abce9e11ce15f4c04f93f03e0cb572be541edfe759f616a0302047c435bb500673065023100dee4f0b72a15f538a252fe433e954352fb1be409751d464e09529bd43af32be146bdeedf961d2ac5499a1c543a310c4802305f07950779717a8d3ebb34c1ff2c4ff212dc6272e33be74a851d597349309a7a47f0d8590ea85b8e22f791a749d2ad4b0302047c435bb50066306402302d372e5e41896e22f4f5fda4d487e8379e85def1feca4ebc5739fa89eb2031e633546147afa5602b9fe50a40c2dfa4bf023010de83363453e887c2453c25472b447d6649a2708773f9ea1646531664cc9eabf2d96394cc44a4dec103a0560e9f1b6b0302047c435bb50067306502301217909b03ff57988704d02c12730dc8b37ebe183371b44aa8c7162bab09ad2496318aad8cee2e3ce515523fc82c669a0231009c458f18dabba7fe0298d937c715d5d0fb3bc453566c3571e07fd3991f40fe0269fc041d2451d54c359892e0b1aafbd00302047c435bb50068306602310089e19ebd424463e70505aaf852eae14ed2c6bfb9121bb86694ed6697df2439a96d4e65d1bb4adca72e228e42dc9d252f023100a08ee92faa03a687e514bc9b0fd15195394679357426ae533e43368f9a2bb2b3173765358fa989b5440b70d97ced433a0302047c435bb500673065023100eb55d6d92d4b164d3ea83d447a1c64ba5539c750c2e670beca9cd7e44eaee521856a439aad9d28063a908f4b98b3f74902301599f6d5ab03b5621708173fbf858ec8a63e91a47f4474db0754a438943059912be7de9ca6b2f7a6800b790dd2ef91110302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c1bbe23439f7e61138648cceb51e7577d1c3ecf379240a82a40b110d8300f20e6d95c2535c7c6ff90e3b7c582a5340b202300a41a7c522080605dda7be059abd1f06729f60735d724f21205c92cd5ba4d659b6ce377904c76fc70172f673b2963ff10302047c435bb500673065023058c3c36bfc22e20355bb129b3ba46bff8d16f86cdb4451fd5f1d07e6ad85b3cc5cdbe805047b4f8fbe9cc044a6f81d9c023100a967f1cb741a6ad845e3d6ff86d668747cb932e49333810ff30b7feed909791bf06130c4feccb20573e4876c70f172e40302047c435bb50067306502305785d62a52f85ffcfebab58daf9bbf7c514b79837ca77cfebd98c37d0db3b4d356c5c813729d34a8aeb3bd405af1503e02310085041a829cfc038b939ac2e6c6b04df1944ee340bcd3ed2060d4f67190a26367e0690971614c44ef0bfc9b32b023b3fa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100864e10b036e352bd6f1fc2686232d0abd4c6e1eec05d92c40642049093722fa2a81b2df3d69307412f7b17048f64471e02300a078a0a58c2561d9097d4c8e4ef88030b9c876059f7b09d471f49dd25c0ace2b8790fc2aa6fad6dcdd01186833fa4cd0302047c435bb500673065023100a2ebb475bda4d3579480af79b47ac7a2d33b65b746704242bbc29a80bd0f7f42516204ebe1d2d6f49191d2b487cec83702307fdf6c5189c7511b418c63b5e8c4a93c7818a86ed719905b0aecfc0b2d53cb0289d6cb8087870802e6d2c9fd5de7661c0302047c435bb50067306502300deaa1c204dbd88c243b7d4353bc6bae9dc23cd223509df9666c85dbdefb7f1880e1e043ed50f47c82269aeccf8a7734023100ea2a84f4bda6a45929fd5e105922875efe0840aa39a52afa0795eedb7d0c5916b87f96d5d20a9efa3b9d20d7ea4e99250302047c435bb500673065023100864e10b036e352bd6f1fc2686232d0abd4c6e1eec05d92c40642049093722fa2a81b2df3d69307412f7b17048f64471e02300a078a0a58c2561d9097d4c8e4ef88030b9c876059f7b09d471f49dd25c0ace2b8790fc2aa6fad6dcdd01186833fa4cd0302047c435bb50066306402301ffc4d0dc5150b1404aeb9e4495306af74f4a3712b80744c9fb9ae20ff153dd878412cef59caa1aeb5aa085a0cd964c2023031a981306390803f86672d3f23afb702fe2cce74088cafc4dc4e6c77dc9f3fb3f331863e8638e9da3181836f0009f0fc0302047c435bb500683066023100f6b7ca6ef6875f47131c47105e9cf6fe97a4c383980bc5159b693b386c701c4fa4c8a81c5b9fac648d70c788de6e1f23023100a1341d71631d56fd349204fe09ab95c3417b0031dcdd91046e713baefda187e4827a1fbb147ffed5c614a121b0cf1b4f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304524f53f3a8349390a3dc6c5c2d42a42f42b1f1aebf50d93086fab64b8fb91330dd4b2bc828ca5df7535cd3c066c31250230522ae303d8bedf808f0bf2dcbd9edef2bfa7bac383198107c917057fe14e62ae17c545b1788237dd72b55ea49374ce430302047c435bb500673065023025ee8404f1a66769514bfc67325cf12aad10637334d95024ece3872e317ff66d5d34d9f1cd78d71bb45f3a707e9dafcd023100af97725da5ef4ffd76638ba169fa5a10fea01a78aa17d92d248746b449ab57244b4a78116249744b41f0d2521d3a45060302047c435bb500673065023100abba76bb50e28ce498294471a16846845326b546986b5a6706653a3be0fa95317d45d4cdebeffaaf21cc03d7c6d5d73d02303ab0bc21f4e5ca918b24bfde95fec2cb2919bb76c8c9ce57b18e84099819064d5d382751148504aa6b59eec479aab4360302047c435bb50067306502305326d686a82c6281a0b27dd045f55ff906bc190b750fb3f040a230b4b66b7516e24c33bc71e057bb2fb91d28261b42a7023100f66841f078149220593848f9f115b585f7cc2ca9886a2908550a99016d1e26a896b1b27a1e34c391046363db38fb10030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023041a6774aad78c884af716604300944adf0d769c2848b402a0d0c50ad293bdbc622e38ef95c45d37341ec00ea24ca1fdb023100b3b38c9a4e0a775c9fc1af4db867baa860bbb4d21aee0833e6e87e84307b63993ac7fee77c34393b74c8d378207b11620302047c435bb50066306402306c2b149ca6533e247958d8c14f156573d2e2ca905e71513d9505b293064186ed47457faeb5f3ff35f63341d25425fecf02306e0c120f1502a945edb0fadaff995d100c1b939ec07c3db4053b1a4907e0d02d352c19005338fd68e3f2a3986f004c7e0302047c435bb500673065023100e375cb11bbfcbf7554c527900a1f5296cf9219f668a1bee779b83cd78eca36f8b4dda3325dc46ac247d196be9158986c02303e59a127b0e8b5e8ca3bdfa735feddf45745a70f10e6936b3d529a531a3d20eabcebdc17a89762f333800ec6e2becedb0302047c435bb500683066023100dd5c3c725a7111cdbbb7d247922ca268a710ccb0c3cb67b4d0d76e705d23ffd9a2281e79129c3951f8317a8a20c93ea5023100d0748222983efc8fea2d3c7ed4dc6cef1e502a802baee7d2c35e00643033b7efd3f772cf6fb670724110d55166589e360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009d840feb6f66abd1a0fca6eb7c07d246c479643dc4d1c974af1173a3eba795041ed114e6a4d12858050d1dd2bfaccb33023100dc2f64e0c86c8bb12aba6e849c2bf9bb75742d2ed22756213974c0668ac06904afd4152464afab3342b4249a607c54a70302047c435bb500683066023100d0cc198bd8b8c53dcf9e4d8db1736628623ffc03782b30601fc552c71bb0d8caf624b598a8d20cc7f5e8fc05ab9b1538023100c1c73d38a30079bd37d5f2d1b572b6a8e1efba3c9e7630e8003ac1aa76bc4deebf7eba3e60211f3765f43c7efe0821280302047c435bb500673065023100b93aaeae5323c179200770c9e1b0589c4c36ca8726c3c8621f4ff9f97fc110f91590dc63e36770a494ea811a21a300210230605fe5be02e322682544a1840015681e5ba8ef41da025e354a8477918ef516d06da4719829fc61975813f7daf62e18110302047c435bb5006730650230712aaf95e99cdeeccc665b458975a62a6840c0bd9eccb3ddcf510d700b49ac870ae5857f7a164fd733440af21b70e6cd023100d752f23952fa23e2ef9b3cd4866b7f4921600509de7c35fe0087f24e42ea325c2581883fd38f48f27abea65150d33b640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306cbbaf078242aba5d79173bd18fcc6e6184494fa4da4f1c7fac8887be1937e7cb542c835e86f1627f1eb0fd8724cd28c02304bf941fffee3ff121db1c2420e7142f172bbe69bc46ff120d7275aa71969bd234fdea1b8ebb7e3c218e2785d52c4e8740302047c435bb50067306502301f0d5c8b49415971e59df7323714dfd2290a67cc354568756aa7fa71300b4ffe121f9053336576a0db6687ad3834a0dd023100b1a1559c8f3c72ce98f287713bb2ac2fd5174163e9edbb05e4a5314de456cea244e68583b2ab54955461f43b777919120302047c435bb500673065023100a8e971bfaf75208d49585e04296b5e11f8b4340040867418fb0e78bcab6c8edc80601b4fdfe0555da7a6627c34cf0bd40230604d1b4688c2f5f7fa18416354893530a18224fd7c5a878ce94d96abbd937a15f7d2057dc295e934b6cd049400fc96ac0302047c435bb500683066023100c6121486b4afc34c05163598f98c6af37dda7580d3d270dc768e843f476451c6e2657dde3ebc70b66f7d8bd112297b09023100b1694619293e425947c4c43331b50c31fb1f25471ee13355eb209e49a36181d25614418078d48af5bb07dd72878cbdd90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100825a158cf144164d6de87ab1d5ec334eda9017564d42b6188e2353d9ea16c6fc4c857e62158cefef170a99b13a22bc5e023100b88276d21d04b290dbf88600dd93176c75190c1832696dbf90afc744de964c7c9f2ce90d68164c33f38169b310d02fc50302047c435bb500673065023100b8ded689cf93438e63afe1184eabdf2428a7e9b124ffd7b7fe165b45d2660af8ae0068faaff48f00897f79930edeef4a023046f767c124856acca55e31ca5285dbc1a6a150f85fcc504137a2a7a36e20fe353591c59d0b9966e1e2af5a99f1e01cc20302047c435bb500673065023100f803d142418cbafe3ba8dabfce6fd5016b003e3732a216a4af164098157e004c652c5576a4aebd72aa0bf3e7e7be978302302bc3c367048878a8ae5bf32258a63a205ee3ca6e8f65c491e4995f67b1d98badb974b158bf1b15cee6ac9584a64883cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306ef33b5954bec489c8184f66ebdd59d60d781040e7b20e364b0e0ee2863eed041e34a1a6d2aea394b39898470e67f781023100ffc55dbefaba53e0061e031fd43c0c8fe6f5b726fc786d205de83cb0a3f4d795ec13d02672e43566beca29e79201339d0302047c435bb50066306402302f59c0283112373074f780624f98c3180e19e742f274887eb7b1afc59abc2745a83b9397aad06d357185f2bf4a1e0f850230031da2ddebfaf116d52b12306ff674839d24683ee5ceb0b602e227439a863e0d7f4f6d8a5adf049c7054efb52fa879300302047c435bb50067306502306edabf3e7465c7001e269b76a4ec52ad0e532aa5d00127ddb23b2cb19916a7f27f6ffdcec8798f9f517c8b0414f4c6df023100fce0eb350d0ff7236a052b98f8f8256b8869f467632ead40fc5ada489087cfeac042acfc4f775eb8f8fa4db3048ac99b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301c799becf1c16adda7bb323eae974c0fb9ea8006e7bd8195a04af264424c5f9d6eff3242b64f49fc873b48a345fdceb702310093fd8cb237872ef3d4db2a816fc41c410068d449e8d7fe696a7629e4045c31224c3ebc40b6cc8077dbe26d767b168dc10302047c435bb50066306402307bb7f70ff12733b2bc555f98391eb78a08ca9d76f3859746828535aaecfd59326c706f28ce381d18eba693a5eb4c174a02301253ee9fcc39dc35545b84065c1fa1ba1b9fe6d39c6faf10fbab1694db1042c3e5ac1ad15ab9608c34222db895dc93550302047c435bb500683066023100e31e0eb8b2f694284955d071913b1bdc8158cfbdf45f7feacec072450a2fc4f4c7fd1ec181d663f986ee6e8df215349e023100d9b39931e89ca442ed164b4b1c445e92fa56e21f00560c9f331833996b4bb9b713dd8683c9f41b89fc7936a8082e91330302047c435bb500683066023100c9a972042582b81ef794abdf773164bf4bb1d68eaffe46d942710566cf861b2dd9f95f631af337eba73a63491c4aee9e023100e510d5d8e83c201674b2cad74aed0ff3295efed1fb7274068fcf0ee87e6d51328704f3e9c538772a54b43aa420c653300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d93700504eb9597f220e4c90584427105cb20ea8ad3a1138290a3fdd654cc9fed8ace32294a8b948739d6b4c94a5952102303dc88ad77049d95056235070b9ac9570a012ff68c8fb14b406b8f1a979109eccf8a171952a46e876fbecf559b0a8cc610302047c435bb50067306502303c7923472be1f5724822ff8104a17d7085b61d9351547b1b3f7f3e792648cbdefffc03907351f9f667e78f929d25f46d023100db195791bc64208a7ae3bceb37b5476c2c3acf854d1495da6b0644ba304df9ea5f4ffe5d4988003e17ca888824d3bf970302047c435bb500673065023049ddd34e6a7c2780a1b6dc25722d0fb2afc94a2c29d5612692f57693a5ef88f8db79f4f6f2c806aeacef6caf0071fece023100c51747edc3c0cb924f4bd56f044e508f48db6d0ab233437e1098cb6c6ffbdb2238f8ed49fc623e29aa7bc5a320f6c06e0302047c435bb500673065023100b89fd72f1e960b03e9cc4ba7b59e9279d990ad768bc30c7128e775e754e06da9e803b4a815a8af9882c7d86c16d1e96b02305df5b94160249e4961eb995318643df3128b9262f0407241b37e28cf4799fb6c288f70c4a9211a5b104ebceb6cca07270302047c435bb500683066023100d7dba2da9e95839213dea984cc4e88374ccb7dbe72c7c833c8f74cc70c93f608f6fccded08409d85d1e0bfc3a0055cca02310085322b5645e26c7c714e762404e98d7365d640b79c4c28845d554677a4cfc9bf93d25ec813aaf9475dc5cd8624a43e270302047c435bb50067306502304ebe17f2f3735ad4816fa28b43cb85f9f4ad059c0b8f37b8fd1aca6e1b1be2b75b7a45b6c4041e9f945c7952f6d6693f023100fb46c0f4566aca1e83adc70681e6599501183a51d6ed6170a9b59917ce00ad3668e975da2b6487d69976748e28556ee40302047c435bb500663064023020e7e63fc8c1777b2f95034113e6d9e62b513a6e30c112c6575216098208f665744e31e97f14246277cf328b2b41a66f023038b5b0d394dff2096ee3063b9df728ae2cda078f2840380d2292d3b5bfaaab5b7697287010c046c40e86c061aa552fed0302047c435bb50066306402301acc9cac391530c80ea5fae5cc8c935c551d42ca75ebb370aa81531f610b69bef088deafb48905f1bb7b168a30c7ba8f02300e0be27dd017eefe48607cf9edd8e343bd11aaddf5a357f3c75f878018e5ef7ee4e0442efa21361f2309030f117c501e0302047c435bb500673065023100c3b4847dfd10379668eede5d1a6326ce2dead6642b9fd6f05a3e0292732d30cfe5662610eea1ed9fd513c48705a2b7bb0230688c2aa72ead9febec58cf91d0230758b7c0e1dee097a2f2fec627135f0e75ee5fb29e80ac080d3b6fd63cc976de9c810302047c435bb50067306502300c5c6cefb2551f9443d9e58b106683aa7f0cac6fe10e5bf87af3a74b3d33b9c8c6e39c684dd495efd8683c02c4a28fde023100d6fe8f570997a227693ac9ff07e78d94b04c4781412b091914c2a23c8cd80fcdc6a6c27843a7d26700b26d510f95cdf20302047c435bb500683066023100adbe42500794d3335ae0224ad2911b1706e28bcf4be4bae6c115707c94a2a3939e524c0dade521f540c0ca17252f4f5e023100fbfcf81483100b629c291ed6e1e531d14da08d34732149c9f146ff3f08946b1effc839dc46840c0d0c27b6fcdba16d850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a7e9cfab520ed472de6d61a774f8b91798f37ac6df398aa92f3579458c348a69888c043b1df199ed8ba1bd956ad6152d023100f8d5b5484ec8f6724f83ea713c4abb0638a621f2e69568afbd4f4dda244878cb99ee2ad8e41c7ab2dfe0b5c737ac89100302047c435bb500683066023100bbef69c95e5ae8df7adfd1313b0a145ff86cde5d0cb57f830adb6766b4fd6f26a2f9ee6887dadd96e33ced66962db860023100dad09c6d0a6128578e6ddff444d7146f9be27618f64f03d759362324676ae741af2e6476d50df489e086a560face86b30302047c435bb50066306402307a830f7788f939ecf4daba4a7277794c99ac969040e8a4bf38d6b0bf0d0fd6f778156c84ed14ee278fd7481058be06e8023000a5de0067cf7c636e7c87ba8330cd12f5400f6b0c8cbc9ad41f53504effefc1a082761445a803132c3b0c35d49308d90302047c435bb500683066023100c0c5fd19831612c9527db57a7d703df5e7f32008b84d45637d3ebeb7fd398c0f68bce8917459ba51966a0eee3fc0a4d6023100e0f83742cc10cc7e4d3d7e9f3d5f1029fff506d6f3a28f50afa4d157750204bce486279895d0bdb2b675aa72d1cb5d2d0302047c435bb50067306502306fa3434603410c5fa587893b309cff0d9a683c6a2cbad6adf0f2da29cc4852428faac6fb0c0e603050db494bc0a4bdeb023100dc11526422626fc13f0103ac1250069f50d9a36836953046f5d048dade4e3274b32e23346c41672f0786c47348d452d10302047c435bb500663064023073d2bf97c189f91b21ba059ee3607ffdc66115356d65483b74b0211358c2a5e64c3278d3a4a6227324a8a2b0ba5397f7023067821009a5ca7b65091565d1aad4055d4e76901d23b0cf3c30a65a19b9bdf6d903544d20d3f59e468e4a2505dbef1fd70302047c435bb500673065023014c349fff8ff8dff43166c610850885760f96f4a6475860ddb8c772831ac7b589ee26db15b023dd337f701ae53592446023100d3733d4f4d39ad30de658b033031f4a6d466611558ee7183faf85e563b90e42fa0a39c16bbba42357d256ab33a81614f0302047c435bb500673065023100b3ee171caf7e59f88c1d01ac25b59a1da56ec0b79e54b499d58b26a7846eb9e38ef33389c8e9a94c9b075244bbc1edcd02303a158fa739c0d26c318515c3ca3b0db131f3b639037e34f560a940de4d4fe40772a2a2ee68107a6481f6f44cc45fb12a0302047c435bb500673065023100874d4503b88ebca3f597bb4a0f73b71d8fd4de52efb7dd634bc1f352f78ae89bf6ad33bb5b13e4d141286b880fab52dc02300549227033e5ec9ddd2409a5369f945402006aeaff9deaaabd07a08c301c0ed5b6a1a02e9917f3cb9f380891d730b1080302047c435bb500683066023100db3c5c264d991b256f369aa81278a57b6074b904d069fc74c0ead2321e4e7346cb21d4d924f736292b782b1bd63c5ff102310084145d30f5f043bec2e138d9c17318d43b788cb29197771987a0bf99d6419f12c75afbca898faebd7179913178a4924c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023002a74cd6c2329e38d42de9627e34d687ff2f17c65fa01926f47771a64f090eb6b6c9de1ed973b9c1a79690c325b75f0202307b41427c18b83dc8580d2a9605670acecac4debb1d6c05e63e8011b3fdc24ecfefa0501a9986b80781a34f36ad5560a50302047c435bb5006730650230599b336dc467bfd55fa852e5c7acf57a82ab4e7150524712f99eec44ffbbf9472b3b111b3b76566083b0338e8ebcd111023100b32151f770bf9c796ea0b338dcd19974df8791ba0cea58a497585599f390bcaf417192694b64b8c46b5872069484e10a0302047c435bb5006630640230057afae33e73ae1cec38fcaf6098268ee5e5342f5b1c24b608f97bf60c483ef494ef6e0b547a5039b23958d0828bce460230176c5e7c7c8c192acd7ca57fb7eee30b71186b0502ee425bb54530b754a8ff9a600897817a77e6578b9ac40731d5e9fc0302047c435bb500683066023100dd067855a565077ed09c9ef448448c769646e80d5d225f5642328211cc70c031e66a607e0134bbf997798f7e107e8637023100dab723025e6b0debe2a3d16c4b448a556a82f1c5ef110f84231b729361bfebcffb97ecf4c4a3657c009c7f1b7d2205810302047c435bb50066306402302fad8b61b56173004fea01d1d6ea9ffe4424c88de875068411ac46b563e9b4b3c5a20b8a5362e98264c947b27666b88602306981253b69c0aa2b45fb491c6ed97768be1cec1f57ce7a6a34f80a6bf055569683b7d2553aa2942acbe32f6a1c4ec6580302047c435bb500673065023100c06c8db187b087930502a7ec41e7da266a408edef758101f4e30ad7cab480bb645377232bbaf7133ab8e6e2c38468f570230744adc33042d49e4b80f645d79719ee99b93b2d0fc64fd650334fbc62199fb94011f471601f0914aa18fd63948ff3c4c0302047c435bb500673065023100d23c8b364b77ec4cc214cef993bc694a9f77051e7cfa78a7a8107f1bee7271318685d190dabd1403805df4e4851c8a7b023013165b1b287a44a52383c59c6b28cd4798bd568bfc46cce9ce91708a9f58ba4fd98e2821ea188ae5e8d50bd633b8e9890302047c435bb500683066023100a062151fb0a8eebfa8ce51670039d20d48be2ad3032cc04c46f83d4e35d0db80d95d32f3643a02bf6f3ca5cb85ea8577023100a6ded258995005c56b4029bdd160efd1275bb2d8dac0c9cffcc0b15db5e1d49407b344e00cdbf669046af7c8d89c6c500302047c435bb500673065023030a974af031878c8788f61c8d5670d11ea88222193003393ff46cf669a84e8d3cc4dabafb04507ce754729564bf83b82023100d1cd7edfd61028bf9a3d8661e98e7450395a790286f2ca31ff0bd5fc6bac091ba6a571c9ce749ab829fa2676681109210302047c435bb50067306502306d44934a64e50f451f94876928aa6480f1147bfb7cc794364691e529c2bb987d9fac4ea9cb333d7a9ac24d0c73bb1f61023100d6f499488a88b1ab4880e581e9ad4a831efa27498a3e73a53a3846c544268a33bd8ba42bad93bc0b4707f7deb65823610302047c435bb500663064023066b68ffc75a6af85adce468d07b379f254dcc2649d33c40a6c0fa75c1b0cb9d294a9dce95ea654f217b0472a2ddb98c902307553a9ef914fa3d0708dfe93d975470eda4c1bdf570f5812a542bfaccd709339e55b9ee46dec36de144e9807e0f28ede0302047c435bb5006730650230149df9f63c4ffc264d57b0b607fa89a9853d60e004db23ffb0b7473f9988f965c030a6dc9cfca456d4597392d6c3f75a0231008883fdc46e37ba02ec2675a9c83565c76e22bd6a906308bfd1e16549ca40b2f00ce47bc4e6770ad3e1c9fa22f6671b4e0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100c6db07a2aa1f8098f7ac7fad18cb8bfb7a21239267703b0e3e2dd4a697eb76eb84af025a506b65f5a021d81125942cee023100d227b227a39fbab4007a20e48138568d4b8d68f94d3f47c26816782eba0595504aaec08d9cf565eb29e928f45b2f69160302047c435bb50066306402307be1a732c0eee899409b0fe651f90506b57f0165a41b7cd9df6da107efbcd3ed8d0f1e54ff5ac3198ccb61255d40beb3023031e8593a5981a4aa47613b301955fa800ec6465c20b7230163cb2a094f0ff72871b021d466ffa3853215813453d7fb130302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100940dbd9fa7c23ff7052a71f1679d84205e2f91b1cd82bb0492fe3090cc8e793d78efa164c973751f85b2d4c2050528e1023100ec20e9df1ce200811b34ae1682676c76dc06c61641cab143f61a21a530d876673c03fde7842163bc80f931612b74f7380302047c435bb50066306402300f9944b70dafdf73070dcd4239948cce6e974efca813f5c1b1709aa65d779a2588ad7f170b3c80863b8e1db81300b78902303ad262a89fcce3b961bc7f3c719e9f4f252b4e8f7a30f8bf153295690847b978c3cfd60e46ec3f0a3845e5275d978ad20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230307296960362a411994dff4d688d6c4c53fefe32de25af38918aaeaa023bbfbab8040fcd54f37436e0e9968d1c23791302302c63bffe1da3ec031031d54bb2a7a0b83d50483a9a5a041de99fbb9bb6e8486c4240ce4fe6b71f6a5c11c440f9b555a10302047c435bb50067306502307f7f649d68720c68a7033de2e9dc7aeb014b9d42b99c5a81b741e69fa8c65ed8d206a73c6cee28dd112db9be165d69e0023100baaf019781964c5b20eb75055c515edaa924af112afd28ebf1d7604f741304af8004f59987465bb8a2b921bc79f2e6980302047c435bb500683066023100bb9d38781a1e68a1daf26cec3565ed9721e91a4ca54db1346df33811405388134ea928a26d501ece8b7a577f60e9b96202310091fa23890c00f8ebca32fbcc44fce732bb74383db803d5531c05354f944887a147fdc2687b3636f4966e220d027088040302047c435bb500673065023027bbe18be366d33a0f94ab760f1316935b0a629b8fa25ce1f149cb4fc91fca7c567f6e20be8437cc83c6b8e87f996e5a023100ae1abb1bc70c1387a3500e5cf934deac354b4569821a29c80826a08e6f67a990e5c262aabbf813b7e217b61922a9c98f0302047c435bb50066306402300dd9068403f890a4bc660ebc2214fba16f908e6af9fda1cb3c60ad7da102148b65f912eaa246f9d34861bb0aab109fe802303c6edf3edeb82c8a79e3fd6950910b013bb91ee6629e425d995ef5b63e1a28df8f1bc64c09c361ceb1ce5f95aee545810302047c435bb500683066023100d1c0b36b98fbbb2150f77165b65a4efc5f420bd805bfb9298c4f8df2497c99a88018a5f7f6d7dbc62fe586036fad00a9023100d8e1f3307e04970bd43c38dba49186d0991ad59c7116abcd138810bbcac005fff000bac3121afdaf024c7fce9b9395950302047c435bb50068306602310097d7dfa7b3acc567dcb9d2578c8de4a4afce893a32c5aeccb04950c98f80b9515e52e813d1484f99ac4a234a05a6b3f8023100f976f370a94d3c8766fa8d462ee55d7e99133726675990ac69f4e2dfeea7798c77778c9dd5d04191fc063777f8fc26dd0302047c435bb50066306402302a17b38ad59df8ce5ddd23c2b3db3b50dc2bffa85c66c59646ccf12c2429855c8bef828c78216cfb7871ac629a4ea33402303c8a97a54ba39a8fceb9524342f57d52716722cc263fbb527adced2d5e7063f9cca68da557013e20498230c02a52c2850302047c435bb500683066023100f3704f2ea46add40a2c7b7671ff2cc693503532af41b35800ab2508e2552ec37c0e3898a89cb602e354b6daaaeaaabff023100941c420b245ff30c0cdc35765933566d3c62a885b3153d67c07a10f38367dd0f7489ba820a3317c94d6978322e5c15d20302047c435bb500683066023100cc5f446953d9987642db1ca40955ebeeb9669fb4757bc0875f1e93de1ad63464ed617955c9e7a6d5ec96d320c75d412b023100fb87489edce712acdbb8ab9c8bdb08dfab7fc6ffc269459f812598cad2a18fc1ad763e6025926417fcfac0bbe70220550302047c435bb500683066023100ffdaa2bad59b62ff3b02af3cb51fd7a83a9f8badeec4028ef2872ed1dae63928f7a5ce2db4ceb9bbd894634ab204ce7f023100c02fc87bee9b92b2c036d8dd16fe43d3689fa61efd802d67fa93d82638f8831ae077545319fa3903bc29083d5f1de1dd0302047c435bb50067306502303d69ae21874988b7ade381364b8decdbfe792c30908e887e46e3b56301337f53d7f63eead8c03c296f4b96cfc5b204de023100a88120cc335edfbe7b74e3f5a7d58f87d8f2826647ba006ddbc064428bad28c53828a753be2e6b9e81887d4e2067c6bb0302047c435bb500673065023063500462c5bc3843dcfb747c6f86ce3e44e009d25e6fe514a30902ac05626a2ba5fa3c1a17f41d537bbc17c6bc22e9be023100ad66ba35e1a614aff8b755a46a539f4b29be99685cc9f0f3913ddd6f9b2b961d56ec0f2d20a07d243eed6fe0054a9d900302047c435bb5006830660231009f89e1d25d3c2c05f98de8e5637bf2b234cb879cf8f84f4b7888619bfbed242b85f554a47ee1ed3907f71b1491fcfa5a023100c47d248cd484b1942e7d93917cc097a85c8cdc493167da9567d530396d11b1932b34bde3d1bfad9b9a549a465b7264340302047c435bb500673065023100caa1dcac01574d0a7af1a3f9a6c4b1b7a034cd340ed0d98ba5abf067038da31c900c733f8c9f2bf59eafa231d30443130230270cc442ce49d8e37cf6a2bc9b6e7270711f69ade4d6fe86c9c682eae4489b09224eeb69cc751855fd854ced16890d210302047c435bb500683066023100fc2206c2c3cc8f69accabbe302afd1b9a281e4654177dcc2a926581551594837e0171bb01c8fac12bca1efde8f3a43900231008647c591fa8cdec37838cf16bb26be2478406ef3ab932a3ddf3254a2fb162c4e9ef012ac8c7c702bdaa3936b87758f830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023037439062b61052f916974636eb1e6fab2cea4a6269d23f2424810f0ce1a443601395de4dc7ef0970803aa6b0415b28ff023031435199a0bab43b82f8dd4e9784e2314b93471730e40393e509699d65fcdf0fc2e83894bc60ec24493c067f59577d340302047c435bb500673065023100ba32659d0d16f64fd363acd39529f7a325ad96a0e075d2203f32bb87146d087b5bcd27cd324f0135ab3bba4b677d21cc02302a757727b5e62179bbd80b2219d0a925073e4a597b49548ab4b1923143af832e209a83e41ace34b076a01076103243e50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a9311b25013292d0944cadb0b6151f04ae24c058153880b2dff3a2c1f73cc0fe279de36a92de2e94b0ba1fe25786dac102306c318c2e9d27e154e1a1158b5d5c5b31fe28332e9eff1b692cc7c2a1827690556bdf0c5a84ef19f7d4316bc741268f680302047c435bb500663064023010d4a3c41adc04fc4ac343c48dea95c4a9a7fba97511efa9499db1e99d84ff284863ae62d2b0c030fa9cd665f22d948c02301c2fb9f5787661df33b6910c91a6d8baa0630bd3d1f942cb11b22c4c5b19dcc483afc9238f88264a3b6bd8550c084c570302047c435bb500683066023100e5b30d362c2ea99b5af9c392ead5b6e59aeb34150a908c2758cd4c21431e3b7fbbb9d8d8ef6df092a2adf9e5f805e7dc023100e4f78bd3fa77d5bd8c4dd3d6ef18a83cb97f30c850bbef9e71ec42f7ba7409ff9080de182294386d0def75bdb3074b5b0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100e87cde4ceb12c86526043e3b9205e49b33ff127b4c0b474866e0b669eacbb297e22ead6d59a4d21c302b7dfc999e1f6e023100dd78386162fc1a0966c50cf5b35add5607070aa9b9d3592c3b2099fa16915e8db4ff0576c0d4aca2c4c9e9923ed9785f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f5ae57d48cdeeb322a865a9b46a09490f1e5439861140a43b4666310e62e719433fe1f56e1f8d4ab7ef495240e30d65d023030e514649c5ae3d37c0e043515422fa673f18d8df96db3e68961732e9f3f2d3d52057420cec54d0a33fe67ee217946890302047c435bb500673065023100f5e739f4981ed34e53516723d069f211e97427e6fb6d441e9126f3d523fcf21bc8f2bfe73681e44c2f2a44c536c7686d023027e18d7b92d74f1b8a3449690e49bc37386541f1145faea4b34a676ba790dff97ec472e9757f4c5cca319dee151785bf0302047c435bb50067306502305974d800c08ee598208eedadd252468661caf9f7cf8818d43d4afff0d312580e2251ca128802af0fdcaebbe4f7e9a1be023100eb5a957cee0fbfa56353f82d91cdf6213a6b32a6953ba81b8ea2ae15899d3897da96b940fc7aee444de9ac828f2d248c0302047c435bb500673065023023dc47e83d54be3f7e3b2ab3d65516799c097405b7acad9a8a4f7a7b68cc2fa037acd1aefdc0598ceadeed0bd0bd0086023100e42ed95afd84ffaa46a000f55cc34d672b4d718ef20e28c7dc6436f483e0100541c7583382d80073e8f3cc536afdf0640302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb50066306402304739ac68af9a251e190128b459df8ab7f8bfbb8c97b9248eb8388454e2a5fbe3d2695619bf2e61b01e88be62aafc22a50230750255f9b9a2227ab6db7815a546cd9651378a3340f9826ec96d72e94660398deb4e1a5584ae9b7b6bd5eaa03ad4ca6c0302047c435bb500683066023100c66097aefd30efada689c4d170dfc2f051cefffe0d30e048145fd34b2d78718f961521ebb369a7e0e3bb3f7988272cc70231008eba829b1fb7d08f1e1a70eebdeb962c665d954b8cb9f5f2c8edcc3d7a6ad8c3cb25b7f07f249e797c4efc1d8cf66a8a0302047c435bb50067306502307afaf51509dae263efe403b9818b53d301a27bac2058116dfa19d38d27a3664b9b24f45861ac2c0da213609770436179023100f030eb568f9793125bd7d81b245bbf7736628e4f5e77d1b8b10d2bc3a5c995bd6a0e40f0605fb153f09e0667928cba250302047c435bb500683066023100e3c82054b334519c93eae1c57e673cd015254a16322833198e0215d6c013a057e2b508419ac6e6566f075e9cf66b58f7023100919e9b079ed4cfa5fbf543e4e354977244096024355d6cf0ee3bb51bbb1cd45fd21b63d71b64f84852a31c65ac6e24ea0302047c435bb500673065023100a67c829604c105354c2a3855296d820757c31f3ae5193fb139032e120c1e36fa8e7f4162fb22e34bf9c4b9fadf24276502303baf749db9ab45d3f8c1045f2c3b5431fb9554d4c6c02465f13b323c90961a5c82680db9fe84eb028e3d77e60ee39b700302047c435bb5006730650230233226f3af0fbc6dcb4e9fe325aab5c3f27d022751259165d02db26eca6fc32969d8a33c5ca4c0b84ae4bab0d34273dc023100a62e096cf5b8d30c7a9e583fd0793a3bc3d8a91cdb12f475dc05b89dd84474c1059f48a9faf5b00e9b72d7a20571f5a40302047c435bb500673065023100d89d2e852d850e1342a1e7a648abae6911dddc9f5954c1dc4285f87f77377d80fbd817e21a57566315405b3987709452023070c726f4fa55a6627e12dd86d2febaaecd6338433c074178138bedc49c8f1985634c97b7c4402b97ac5424791a70d5780302047c435bb50067306502304cbe086bcc2da66569e335abff47a7352c224369b924244707d62199ba22b29f12c819d98708d4585bace4b093f836a00231008e38d539b26d5aaae9ebe7548ee3175660d106f20ba81f0479301098d467c5e73577c8eae6befdee5dda31490080f4220302047c435bb500663064023053ea3414c2d3830d17863f5fa40afa62f13ed34d289d2437dd35826e0d7ee45c9d227ecf41b2dd880659d16a6cf65ef702303192b1792d37784cd1fd5479e92981289e83d78031083b8d27602a940277b3829129a6ab0ad3b85d67a6bf19ac5b540a0302047c435bb500683066023100ef221da429171104251c75fb4c82662399f0a8400de2333349e3f73e72065cd31ac51407a2e2ad7f3899a4e4ea6556de0231008026f03d78860b4ee750ef43c5ceafb1f5239e6dcf4c1c4c5c1039322c721800456f8d4fb59038f8b7350231c85a591e0302047c435bb5006730650230429b9d300d301b17fec6431cfb6d9a138ef17810121ceb9ca877201b4704725a6c9a173eb091dcaef76b6ddd42239b95023100c202d9aca1bdc771ba266a284fe003794cf11109e393fde1d3122dff3ef2dd4915e9516697d70d01f5f3c5021b24c1cb0302047c435bb500683066023100d0467bd56a8b2b675d2026afc1b9bd82c97f9dbee2acb386144e60ad839a53ebb443089ac5be0ae435754a62b31c3fa402310097ea3638b6592e61fc7527486cec5ffb696aa935354e1d7f39abe00161ef3df5b9ca3b29e98f8b504051f14b39f0d0af0302047c435bb500663064023022e71ce185de2950858692fb77ca5174281115f07116bbade7064712f592e24b1d9c188b454743e370a1fdffdce451a6023073fc389fb6c40d19a1d2f24fe53308629a6c2d827114c4a4d73e1b5e53d1292b0d80b7987bbc04a28aadc1aaba0b9dc40302047c435bb50066306402302490e02e47288b74f1cf730a499d1aeb70209cbd2f12ffc91c2203b255d16e3588432e26d8db859ca4a04386d973370002304c0ab20f92c91d3862f91f109b4af7fc7f5bc1951cdd86346cae14834665d62191d7dae1f7d92f20a0116717df94c5730302047c435bb500673065023100b0ce82d25391069a83777a209c101ae8601ef0b7228df4276e030b542ef20d13e36edcb4f827a1d05008ca38c73f1d9e02306c91e6a9c1f448d0530526ff1986b4b2365760c81e02e9a6ced2b9251a79c0ca17477ae870b2be4be34fc9d2f77d29440302047c435bb500683066023100d9b5ba0811ef2ba9d5f90258eab86351ba2609bb56799574039ff710cc9a7ccc4f0bf1d07769960876cb41b72d0eb5c5023100917acbb9c868c569deb9b4b485662636ca21c01c1f68ca579fe4f6c247b631f00ca0195f7e980fcf9ee4ea466270a32e0302047c435bb500673065023100b7095a9585912ea87f6bd69f514c01fade8e4f3724572dcf6a10f4aa45df9ae1920f924f365927dcfb4bb6d7ec9a76c102304fa2da86949a8ea2319fbaae174af8d1f28c912b785b7eb8e73a89de0e9194ccd60e85d56e9ba248a23ebef715f71f230302047c435bb5006730650231009a5cd9f11613b1aea0ea9667217b3b756723d41702b8b177b10a928d214e4f624f0abaee73115870c22a80d5f8caf8c702301e421a981bd291c562ac3f8f81057f05d07234c989be250e790c5fabcecc9eda3dca88b170eed5387e6ff06ed44e36de0302047c435bb500683066023100fe890baeb52ae113969d2df7f44b5d73caa4f4cc4966edb62071c81cba8d8e21ce2085641efef7b08c30ede5b7ddb9030231008d46db11e767eca6183fd7960977e9e1222cb1a93d2075ac198845c6e875884cfac84ec53302ed70cbacae0de8f6d42f0302047c435bb500663064023064a79e28ead41b2a0083fcdc39adc298edf5786d363ff89a0504dc9380cc31ab7465b10af07248a9fbb1faece5e1ddc4023064d67a074938e4cd54a045966fbcf1fde9fe327943455667b2ebc3b346658f475adf65e4294da5f884cec44c2fd985e30302047c435bb500683066023100dc6f21dbbc65362fe7a154c04d89db7bd698113bb28659756ab0d221c7237fef6c2698813677096d5ee6468925fb1d4c0231009f1eac4317516624cf8ab5c612185d708e5c789b3752327a60b156b34a3d2614eff3283abd533dfdf4235a1909bc18f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cf88caf2269088f68b310aee23c7f2d265f9d255d21f8e66be0c034f7457f8cb594d342d9846abdd9d47cbfe3e6ec147023004b5fbddc19fe9b4f97f2e94809680ee62dd085521b29ef63f6886c469252ecdc5cb36386ea5acff249d6e5ffab53dac0302047c435bb500683066023100ef0f8229e85d50c922ab022fc84ce32aa907a4df7df847a80f68482c43720e3d27541f90fced49f7eaa5c1e27abc332b023100b5c65d0d86d6ba41e980e38a61544f21b955ccda09ecabe9e81b8b7800f67879e47e3d0717fa263cea81aa38ca944c2d0302047c435bb50067306502303450a920b712cf9aae67af46328257eb5da6b106375412a8c28e8432139ba69c1ce62e16ec15ffc4917cb30f6ce46245023100fc82a158550eb3130f608eac7d5d69115b073182fc135d5080dd43213e35072d07c2c09444fdcbe2ad7a9782b93e75cb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304ef67d60b8eab23aaf7db13dc3d3d4aca7becbe8d419d5eb3c89e07811e546ce522363f29bfe3021673a2701ff9ff199023100dc2f96e74e4f24491abc22501dccc589c78ad35291dc9103d9d03c2b70a83a222c5beec3ad8c6f54a36d7b43549885440302047c435bb5006730650231008aceec06fc02f12688f472b76af14e97b5da81e9ec59cfa2ef4fd300ebd8804aeb55096d019222466c5466a41e9ff402023015f3b644ab26ebb1317fceb1ece440a14d5e6c3683e3b2b225c0eab768e66008ce2bb869a0f96fd1bb2cafe29b7274010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303acbec71ee19f5da620d97e0ee98fc1a8cbea3f77f9fb15e966a9ea8277b4003d52e2c02de1993d4475fa96d233b0df0023100c16e56a6f1a0e89d10740eb4012a62885f7b483b6b23d9b96a2016d897da689bbc8be9399aa0c27476808d732844e6780302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008ba86c531804da0dbd79e72d8298e391ba641b7350949ab82fdb1be61e84a631fccdc48e99d4c3e7e542d11ab403507b023100b00c6d486a6b1334c61b4e7ad7289c6d2e1b6fd7f10138f8b12e2299804072029e2693992147bed6843b1a63c05d80f10302047c435bb50066306402306cac879745aacabafda347eb597ae70755a7b70689f7ac2ec081de753dcad25db8d04b7112c26e6eebacd110fef0fb17023007a15c6bc148b278a15ad3b3aa36bc0ece3d05bd50ba67217f12d46f7311a315eb2e1bf66f06a177e50f093b4384fa7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bfda203507b0b4faa48ea33621a7c077ce41306459735284f1acacaf4888996ece972bc50dafc185c9a6c717ce4a7155023100a5390fae58520031cb97493a8db20a19eeeef0bf4cf3a0ac5b92ad80952d3e35f44d5a4112b69a2594623e5c7f03d53c0302047c435bb50067306502303360bbd50501e21881caccaaf9c6173945efe5f4e73a20a664bf6cdb77dd104cb0bd1caf5424d869d2fd01c7288bb45f023100d568b679a63eaca62a6b96525752f3da8ff1ce025b833e29f355c471e75a56650ca4f8c548c432cc097d537689aa00050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023014b50770f8ebb9d8e74fc3868f6f47e6d7c607b7852df464a6a50b05da74296b13c60089d46643f8e4e3026f1e075f0c023100baf523091929a1484ec327fade3991f6769f6c7498da0edb63a2a42d2940bcdbbb9072a8023fcb9be4fbe18c50e96a9d0302047c435bb500673065023100d20e650e7ea62eb6b0a8651914756613a2302c42e127860cbc259bc176185d2cab1e6aad93c68afe70a0fc8c9345d93d02304692e61be7c2ea89ff4356c44650fc207836607be131351609fb26c44e344547704be6394f1ea04ba3aa085198ce65060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008837a9b418f70d096a0f2b8c77a3659ef7e87a5665bdf0791c35303d8d2b98de8bc9cf2b22160700d9ef3ae1fab3ee050231009afa578b3916f8a9fdf4d9cb033efb5e1f06f178b878237f1a9688f17dbb16948648ddab71ba4ef4d00c2b7862096df70302047c435bb500673065023100f9d049d650b675fbe41a94a0a6ab9b96cca97b4de1e7e3631eb22933b251a5eada52db1e6ed3e5df18dc4183f64138c90230247de2855d3f2456b9f366c496b1ca7fd00cddc29fb99ac4960128ce616e60d1e75c42afcea08cedf39f197ec878e31a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302ce26cc54c4648e02c361f9acd7a3f3355c59db8316b3f653948cc351b14c4cdef2035e3255ae9436c36cfe0ff61b1f7023100ce63a545612b35294d4c8fede8a2b72b6419b79e698bbdf6b0ab85f52e72ea7cef290b305bd3c429200d032d6cad877c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a3f056c57bcef52131465db3d2e83301cc6bc7fd92c556cf3c5f95a20404ebe64d74d91659dfe6faa97ae3c8a67a3ed6023065d0f4443c8fa7ea59d0531dbc0bdaa90850db7dd48eb978c9ffbc8dd00f9124fa0bb2d5d15c4671de49ac6903aafa7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ecf035181e64de351307c2c22d7df9ea73d39f2262f89a97660d8b7a2e3ffe79ea39c5f7238f7f2269c42064745dc97c02310096097bb4a39c22148cb78c7f9457d932966d9938596a29502b0a691429768334f7a051d94a0e74bd8faf849dcc76a1cf0302047c435bb50066306402302815f5a6d6384418ae8a50404ac06f13670d3adab063e500fac952421df990f59dd3d5d9b45728bc4fbbd0831bedc74f02303833f7ec573344c50336d5c40c7df868abad2257f14e1b28e69c58bc94d4d0955aa000ec8d97e64ba52651be7fb3db670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091c5b392edc531ca051f782aa3a23e6aeb341eb3136df1309a55860beea0b5ba222950e140623a455551211250e75bd602302385502311c1878dd79b8407794c6fd0d91f1214651312826df47a338561c8c6f2cb081a3c804d14c82d57ef295ed4850302047c435bb500673065023100dc4c8b5f2b1b01e608491234e9f9c41be88001842ce0feaed5758230a3f7465d1ed9f997212d75a526b4dfd47a5de3d7023071b6f1196ff5213dd886dd2b467b7847c4504d28e91639b6b2f20ad3b02df15f5e7702c462f5725c3373e265c889fd910302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dfe5340b39b2890518ad39bc5799991e9dc9c3b19e29f1669b7141aefdce48d2d0b2a8b2f0e841db133938eee7acba1a02306fc849c8e8a9e95735a59406c7613ac856cb984ee4d51107ea2c975bcc90cfdfb75fcb83de6a4bd46f4860c92aaaa1150302047c435bb500673065023029dca5c62fa515f6126fb8380274576b4e6f3cf48e3a7f66577e5e53cbb0eb20f18da24cbba2c69512c77535a97a4d8a023100b072685ac2b10cbe4175fd24589d1772a29361297582f531580152263056f7b8c0321fb8d3f2ac9b644e831a572654a30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d389a969beae06f89dda8336391d86b43d9f2ddfee0490faa687df15d1db7ea992c9ea805875244092fecca2e5c46f7502305ef381c57073ffc94bc98e0001d62d2b703b978825ba1df07f3da34089f84e4b39c2a0fddf1f609bdea0646d699634680302047c435bb500673065023100f0079d4e4fb92807dc5f3ba4f21310f2b3fedf4aa0ac54ba91fb7320e725aa202f40d033f833bbd1adc3aa1ae4b8db46023003135092c2f56ac62ade5a8dc3903a9fa235957091bca38caab17dc5723271d4bb384de4b8397fe2a52c925c57e00c900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023042cbb1d563a8301a1917a7cd784f0b5abf08a5da525470f6391203ba41cab72708445168e7feb1f26941719bbdeb984c0231009e6d286f3cc8b4e9b88892b46321ce6445b06a783f2b09a4a0ddbace77212db13e740f7bd7d9f678bb8c96e116a07dc20302047c435bb50067306502304056cb84a4058ebcc54cbe0fc63bae37702f960f1aeb65dcf79f4207ee256fa91875b01f82cf0e78d64580fe844033d2023100e312aad4832b18c150d7a44c7e0c8cf596d29bea05a4a26fe425f7970010c74acb4dd3d83cc6f1cf23cfd26ffdf4d3400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230767b567760fb54e5f82f4051e51cf8f41b2b23fb36178506c1d2ba64212b403f84f52982a7c961e899537a221893d6ee023100908e0a2c85c42cc632c3aa06eec85cd23d717d6066d5e29dd5ea01a2c4df2e7e3ca61268cd5b421c9962c0e3f9149a720302047c435bb500683066023100b7d7c4716a382cb69b7e2a0ebb560af75c0dbc3dc859e4b079e4d9e2d4e7142e5b2521207bd9136b835605e917906388023100e1fe21f324803b9811d2da9f8e52e53f22cb32a1a9d08b530393b9fbe5e9bd37159ae0e325e8e69a89f2303395da4d020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bc7c8b8f4cf3907550bc5856ba1301dc3fd138ab422786808b4ae2dc32538f9637186edc89771345044aeb07b40c42850231008ab821cce698e1a1a8c60c2374080e8b82fafebcdd9311e2c3d0fc8da2f50e220354089d638c2030435605577922e8760302047c435bb500673065023100c00bedef9e106f8fc674e29aa95a354ec6cfb74595125e336542ed3bfb05ca7af2b3683341bfd967a2077d31f087b43902305c671ae7d2ef22fb741966f56dd5ce4a525e108fad0bdb3b0a759e3ccf17aa80516aead0c8b262df2c007b7358d030700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf12afa444c6e6a8e0d0b12698ac41a64e79cea6c8c3cadb2b04811d92c3a813b7701ba4bb8cf445f2692159481d21ad023100e2aa6f94f4e472662b6c6657fbd38e68bf1b30e3f6b554b88a82939930cf8da30923b5dfdfa62e9b75077b136884b7ed0302047c435bb500663064023079f1ea069c441dd926f5509f72d331e3b48a286bb1a74224651b6f2197196410eae277ac86dfe7e427140fae4fbae3b602300fc7832a28f4697e4028c5b2efd2c797f82d6dbcea28f012eb5852c2a8d88efc4d5f2787863ebd27c79229b6ebfce8090302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230601a56fa597d25723cf33967e70b560ff9e4ebaea72308c7933cf91e2e5bf1f2867c8bac7e367618209fb0d48c4806a302307ec2456d12811a28f0b4036f240d1947c0c3136c0cb350c0e09b036a196e543e58bab669e0864d5cd730460a4d845b8d0302047c435bb5006630640230197c0431f444d650213168446bae4e2d0c8671055a7e6282587375a2579c3addc9f49124c3f9ea164a28830ff004c12402302526f71c4c30fcaf1135f8d11b237df5ef3edf66835cd1d24cdb6b6a7e91e7fcda1d75c223680f4ae24cf9d7adf86fe00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310097c1fe324369dddd2a127c3cc1c5b60ae9a1d83bf650f4d4f2578e8edfc671503c9b07677cc1c35ef0112be06f6f51a302304bb65aa4fe1bf1e44d5c8069b14581976fe7db3869c9f47821866ba5517c88ed3ed829070db4c0171d54c515c913a5630302047c435bb500673065023100c4befb1e822495bdcc3a915d54b54776663804046146a7effa5adbc5bf4cf9f49e3815e4ea52c91fc3bcfc96609dee0b02306abbdce093f583a1832238f2c1e5900d4b2965d9babfd5d21eb8528bce03014498f4af39cbb5f93c7b09683d1aeda6bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306425e08cf3b7e42054293a2349e9d114a86205df2cd4315cd2104020d442f867106796055035dc99dcccdf346c9e1688023100a80cddc236be9d206ac21368ae35c58cf4c40268e311a2de67016a87cc4490380df155ccdff03b22da3a449c1bf0efd50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230052bb8869f080f1298f05349f85e48923c3a3987312b6c56f261d565f5522be50a97aa4c7a7b6f37cd93e636096a02600230600ff5b5e49da58274ca1fa61fc2493e9ae783eb35696a6595577b4027c2cad8f848321c01ac15a7d35f8684fc53f9c70302047c435bb500683066023100f21c8c546b97e8511d6706e862b3c6281231b4d2e367e2dca5715b2de3d1871994dd1209bc53bbe5fbb6dfc73f365d12023100aaf9b0137a79aaad6975333c80fbfc91a9ccaa0c3c6dfe37b7a22b283408298656948e45d5cefde89cb2d10334a0ed280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009ea50887854c9f9451e34ecfe3d19d206e1c054c8e008a6d4a8a30297096b017d83916cf5498e1e2fcf50f737f131308023100f35e08761b7eb060147fbee03780ca4e462276cf9fd23fbe3b51bbabe2ffd17c2b897cae575942c5930a0d1e126998350302047c435bb5006630640230764c2f3b4f137c06a6518c7d7f062de894c4da66d3c1e640766f5051117b1c35671f285e7936103f8dfbed2d2e9288d702300360209e0c1b1a64acb61b36d22bf3eaf548024411266fb6bfd1ee0210cc1e0ddea068b2afa46d9f5a19ecbe8073343a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230157fd1b690174f5f5c0934d85177fbc486559827b02b450f08379e4b1cd9f2c25012a17d55050533460c6103a453a48d023100867985914f34ce79e2a3e7fd06e6d2b9ad681ea415960e88700ec5d0415590f75ca034f415145f2029feda48063382a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302703b620e08eba120d590deddccccaa7a731cefc3f622831889685223dcdbc4f148ebc5ac452a984820a82e7b1da529a023100808b26ce51dc0747c5af19e596f5d30a939e71cc7114368779d7f99d4813592dfa4063a2abf102d47f37276fe1a0db460302047c435bb500673065023100a9bf8c00ec4043cd2b478ba732ee050eb20e2f6895d8a59fac9ea480432fcd19084f6e16e95ce6f0f2975fe2fac2b97602305adbc2c58001b0157aeb0e56137ae56e576d069e13090eb228f04f2e491df4330e8d7411ee6d60c0f4f7af3facd6e32b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bd6788e2f58887ad21db792133bd35e64b93420d69f1b2083a9c99d6116af30d359a60ee974fe06bab91ca4437f978bb0230690905f4338ec1eefb1ddb39c30322acdf4c47e8eede387852a13897b305786822c1438d67a0b832326acbd465f88d4e0302047c435bb50066306402304c726b81b5646c84692d672502f103ec1dca54f15e56e864e5029572b7d2893b24c25a21597800b83b21ab6bde260f700230218c7463e0036cb12f34fb9eedbb36391abe6d9c4e53298b6243d22e2c1cebcbfde446db4bd14fef0e0d13beb99911720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301369b352e7df7076de250cf27964551c67626657301c762d589912b2c4f35d0e940656bc7866c6bd5569ca51c6efaecf02302140532b052de5f4bcf259be8ec02514ac8d94caaa7551643f4463f9401710dec703df7aa31a42a0a735a0991c42c7890302047c435bb50066306402304477dd2f7b9ed612bac28e12537144271572bf288f10e5c49b94dc848663d25fc2f8885c75499c9fb7526530fc4cf2b5023065eeb51fad363ac23b047859cb98f3ea8565a53b9f655d5e2cb939accfa1fd2e3a0093c965326ef601f5d94e830f949e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303acdeabe33633291e6ca2c6809f84c2cb1ed291fa4b5ee6eb9a60e9f1b39207063a61a34175bbccb21815ce2ea8757ad0230711a2e899b48710e252b2a14d0369f18d43b38a74cf5d03e5667bbced167f7c669130a6eb8b1da55088535e56d931c800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cc53d1431d6f14baf1deebbd96ca8e284b682f24810fb689d6c29a35094ff4cd9d46a084aa576b71c7887c85d8c8e0b00230379ddd43638f73f477b7028433e9dd0790e3e8a45a4f9cf04490287cc5f7782853592b5a7e788ebdfab8c4873e87fc0d0302047c435bb500663064023067c809b8030af97542268f6181255874a0e923259d898d26ac9a57a13039f96b082d2a967ec5841102b12c274cf78076023022ff70a07b1aaeeb4a4818ff6a56d253e0e71747c9335f9524cdca45f8f03f87ab62cad7fdc21d1b8f02cc73bbe00a7a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a15694af61e6f23c9af8d0574d20504870ba3494acea1ae4d21dddd3f94ac25365cedf3edbd850d06d9d42b11b6112e023100d1701e5a5b9d3b41d1ace8e29e7f934fa061a48d5f15bd79c133914d97a6ccb3aaef679439dd7a8d52a7b751d22c57ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b0ba408ba166bdb1c3de040bd33c72dbd465dedbafa3d2ffe42d7e1128fa724728e393a8ac21d05b83b02ee340d3b89102306df73b0cb5a3f8176dc5ae6e6f0161d9722abd810d9c5c804ff8359fe18fd69a14896a3928ec2e99e0fb3a18860d8e630302047c435bb500663064023043bdd7c50770579bf2ce5b3cd78aac96bda1238d29a5622e33dad3b89f478c8d655e66335755a01e48e32d89c651c8ad02304a2263c8a7bb6fd4035b551d0a9172aca16d7d7f4bd7456593369fafe3aa2232a07afe970110fc34005e4e7b6c2e88640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fcf0ad1a7f03cba883846aea0a5b2431df9f56e2f9a316bd81fa79cd5cbae366e24a998d89551ef1771df16d169033c802305f9cdf50a4793eae4734bd8e4253cdc81c7a4df9ffc2675138fb7123a7cdcb4b26b99c09520838acc493bbfd73ac09390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1979e2327b537b4483a110d495108016a755d82698e3a995b3b8b40e5b974e7dbfdf4fca2ef4d1dc56ef5a87eb9426c0230177d1333da2680e46f8ea71f5577b9d4aaa7527dc321912370969e4779c23fea4668748768661e89deaa1462d68bb3e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303407cdcb52654e1b1709d23c8b966f9f94219fa8953866527c9b60413e0a99fee8430fe846b55123a8f903cae4ff3a5902310085217261c821b70885b8e8e273d0300d534aadd2417cb6a6c74096e42268e439adeacc5e35d5d8eb3c9f067c10385c380302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307412b383b6b3c3ba9c35e9160e1391c5bad691fc39bf63dadc8963668a03b7abe8c4bb75ee6c4d1956bc8981550570380230379c5b72511cef34d6354e1ca2b58eec39a60f09f0919babe14a9314cdb63b1593d21e209866f94f91c7e782927da1740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304a7943ce6218cd7f8f6ccf6e0a3b7f8eb8855ec5f77dac027659c39a7391a068e759b8eaede645941ecd8b847462907a02304f5cc8b00c5f7a2ef2a7b7ec1e06c3a4047388a0632fc0cc483678b59660978d86259e013f180f29598534d840b4c8740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302585baaff365676e75f45c6d061a82af6812fcdec120ff19aed7b76773d5a18ab717d8f59aa6e0087c35810bbd972a7c023100e0970667b1dec073894a473168e6f64dc7643ee48bc7d3c145757be06dc6f516b13301e884e9a673b9746d4c9f2d08890302047c435bb5006830660231008a90464b1d6eca61d73945ffdce8283bfc2da8c6ad33bbf80d3a18382832fc96eb455137279d2dff96fc38dc4dae2d4f023100bcfb486e7c0aeb92cd120a565e1acade37ebbca47452d9f8f4a77519bd5966126a73ebab71e8748a322d197245fa18740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b3f88cc04b660b90cd13ab5f30990a12873e6b8d76f62f6bf5b9b5190c5013122e47dacb6331f8859fad7b731acc1ccb023100ec57deed25c953d95dc5eafa6a2784091126bc2cce95d34298e56c10eb74f1e4861387c96950d62caf2fdfe1da5922aa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039c88bd0968e5962a633a6594e6947b08cc3fda54643a2ffe850d67bbb332de54d03f1b0e1a85e93933fd7d103bc3f7c023100ffdf3065475eac5a4a33dee77155db126d745ef2570a09362055cc9515b5a35f2c6abd56fcbd90fdfaa72a3f304338e30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230408c80357cc8a44df152d899ecfb3f89fb8b0df90a67e4fb27200ebdfa89754f9c8825ec1b1e1af1e60026f79dbf695002307396b67d72124a771a1b58c7973e1e15012948b2922e7eab3132f8c5b82ece64be66a0b2747cea26c36b2eedc1a8f45f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305c5cd2fcf03cd77f3d4163dcae48c7ab6f2edcae71f6686e6d22e29b0e8a904cbd52f9a3a03de491a10890338737e21f0230228e80b5e212d4d049651d218fe684e7025c9acc1226d03eb6f01a8c8d2ee3d4f7bb605490d883c11884da0403c9ff5b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230220f165e82be1e07e5e6e6aec89775844a14f23518e7b5e63acf861e054ea9a1659e3a5e0268bd108d44891ca543a8be023100ba9fe4f32f1a9ad317091cba387fd6ab8b8e2118940e949b0d717113b0e1269ee50b5c1b2b52ae23e49414f88fd4f69e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306a1f151479f5c21d0b7aa69bbc02afb38d18648ccafdfadc0f769446e9d326b746e2662ebb518d054bad88d11981dec7023100c4cb882706b5c6d759d36eaef7ca230a4cd87777503d374b5918b1e3a4765a6d2acc47fc96e57f9cb8cc17fbafe771f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230789d09874647717ba650f8d4e8f70c5b977b3b4ba6fe6eea97c9e365614fc95e91a19556ac9e80b39aa03a72fed80f99023100e6c64d2cd9ad4a57610de676eabba1a292ad7785bad01637d86dd0684bca24f2ba7b87758f684670ab192cb21db9773f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d9c5b158ef5cc4b87ed066509e7e05dc458e48c07f94287e17856332489ba4ab167acc052ec57c1ad8e28bd24e2d13ac02307cb7ccefde6d4aa42df97cafd1fa25da763d10399d13d9127c2ce5c084a307e1d0aa78366c1a8d8e5b0bdebfb8c4386c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023006564cb3e59b9f2be9cd6c772181bc2fcce8f4fb6f8a39dd8e7aafbabf5d9108ffc0e3d6ed8e1e2c1aac96f6e963bf9b023100f447b0ebddb95e4325fb93a3d317cb4172280028dc60202a469ad0f275f3c7a13be9204b3d050a4dcdfc0d0783a8e8410302047c435bb500683066023100c1a5ba69302b37233828ae68b50cf98775f0ff06764542a51d0088f352ee8c0677aaccdca0bd1d4bd5f75ef8e5b97f35023100f2771474d1f3ec4949fcb8d6574a991b2257d83c4f119f6e567ae14f49a04180a734ed4b0503096548f2c24e82b4fede0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b6c058deb86622455254367daa35b2c148358f5309f89d4ab2d0df07f65d614af727ab6547e170ccae4d981a3e00b6802301944065232af157855215dc5e26286608f20c7ee4d76adffbd2fc5bce0f9ee8c77c06860d1195047eef2c59d587c3d720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ff6e4da289848acec6b29723abff6540b24b4912c4c036ecc4cf275f0297f8c8e71e0d96cacd3f9cb294d3da67152921023052178f0ae55835f3af706bc498d0c75dd765a9136cad050e9a516aeee334919af159904fed541f4191ff0a87d535964e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023070c1b50039092a640414f8c20c0d6eb99c15eef7e0b5ef33e7c4ec9b3d86cf2b87c2ee3304c3d546eee51aeb34e1b123023100fe44ba3a75404fb00c429f22ff6c30411bbae536d394fc139e18f0862fa1812fd6745ba579bfbe50880021f39fc813160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088a5e20ca8e1dd243127f5970d381e14b50a1e07f4975a806cef60861d908b728d856371bfd9ad9d9447dcdebed7dda5023100a93ef75ca1e2022e16a651796d1591f4af4bb90ee1228fe464dfb392104ebbb9efd7e3461a41eb7b61033070942294200302047c435bb50066306402302b5f7d77a7a30a9fdf42f2c96ca4b5009f6940dd9a35bb1b966831ccac920ba1365d923e06563512a898f4685f78781f02300353b628d8eb04423adf568000af434230863caaaecc8ec723dc066357d4e8281fa0774965e983d75cfffb8ffda497bb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230321716e449c1dbf4dcd6e41b09e4d1b86f44e166309ccf8848da903f3afd0dab40b27dbc0211f79f24f1a32a0fd9784a02310089b5934c89cd565644f266baff98eac6f70ab61a8e84e5e157e66fb3618ece4394a50ef8d601467c2bdb491070a336bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c42885f0dd2d8c945ae92efb97febefb3ff3008d5a1d3930754813920ccd1f778409aaebd3bc50ae7d35c33a8c9de9fe023100e5db208e0a045d4d69ba5e7a5d6d4e6520c30ada2f5f87d6e4a784d3a8b2082cfe6a0beaaa4c1f465d1493aa13a181c40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009883bcd5487cb3308c4f388eb1e0147f82fb2992b83dcbb8c9b9b6fd6068874e7a616e51137efc1265d557898db7de6d02306b2d8213ec346f23134a2279968d61589e15717ca62f979ea6d1980aa820aaf563c2dbb643efe3b1951b94127dc5d7740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a02a9e6e8c3d3da0c2bf006c8a11eae395d0b9e547ff54fa539fcb8ae0793a08bd184e57ab4af55b2d109ab1b71b400c023100fc7badbbcf41766a750a4568febc0d71b9b687bc6d524a352953a90e4fdb47b21022b942cb908059d121433ec773971f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023002885ab2e4f28b86eedb78a1a3607624834a5182adc97907b4a6341e231088c2087769688226ca902347dd47ce981b67023100bb7446cd66ba86c0b5cae79a4a73948dab2e36f5429a385a86f7ae5aa8c0e7c8a9dd82bc63b094d72710ff47844b8ba80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301c8fcd692e2d8bd274937c62e20f3e63f41f546b1efdee726a9d96df21a6251783bb74eaac8a307a05c423b63ae153900230035d5a412e3a8a085644b9c340459887fc197f70dbcfc2f2a6a76067461ab330ce278ff02bbdd44b4c2e1250981a70d60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302f3898847ad82b52ac299c6b85eb605676075cac71c75900736acd441c368d10fe2651741a7cd5177f82db9a54e3c4fb023100fb7446be020012f22fdd4c075bddacf5f70460f408416357d22f034ead26afdf1d9bbb36b68f6edbb505161ee4e6fa570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023040136aecaf19568203cf05523dfe43d1e30076cd751ac6f0e09f2cef19b6daf36e74df3a26a66e5978b444abee95ce7e023100dbb1dee99def4ac7aba09544c9b4952db8ded55f0b7682769a3b7d278b2dcb33191e54b739048ee79b47ae48e6e2680c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f06598ccf5b87cad6402f568e2acef261391cdc999b0e18db2490452fe5c21ab4631ba7ee3513a2dd730fe8dcdcd0da002305c7a86123dc693909c7c689513a37e735d46615fa6b13d75e797899f017b1897b589ddff39411d386fa1e2a225a851ed0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023014e3c84733de5ffd6caecfcac8c83dd96fa4ecf0519eac93d27c7c98a6a52e744e6fdc6d3fd74461f3deba78da49540502306c99cb61a2a721e4fe6ffd6e08a0552792a792424fc087d6993a2d27580222e64fc42599dbaaa0d050fd546ea4ec64c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fe626026c9e6b2f710abe876fca6eafc1c1915e7126458bcec2a30d3596506a706e4258bb4082d212d64e4181b394fd2023100c0d2b36bc05174d895fd20bb6e3795e92d8a2c1e67a85905faea29e8df181f920b05b97a3a88d13a37d1c36df1a6b81f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100defd12aac789662e191cdd3f0ff4aecaf2afdecca35ddbae7d2f0e99201a136e479c6df6e60cb325ccf86ad34b60c190023007e8fb2c88625d5920e764b8cc78cf24b98ca16c044dbcf90db6adefbfd05c86a8f6292a2c42f2b18ff4bb7b8bd4f29c0302047c435bb500663064023038181c3aea7e522a5e05a806a30595e9336711beed13878e49b8730348c62711dde16cf3d9d4be42fbdac20d91af5186023024f3837263cb085c09b390304f5f3c007aa1ef758a6bdc6a8646644adb144fde154aeb8a0f226517b6c064a321b990000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301e4aa82d6418f7e70f03a174823e207c145c06e6bedb66ce1cd5e7d90451ddec72a57fbdb13f2fa8c3b4b09316c7ce80023100cdbd60be44300ca95869e7efd7ea47c192b1543939c72104f0379a273d4a68ef89c37bf4e33f9c6ede93a98ff6589c3f0302047c435bb5006630640230060ddd56cb02869697ad7623c4baed9492ec0b3cf0bdc8579eba4192a7b80374593c0654a3bff1eaabc192dae36f57060230419026d427395f3c0f33f866c0a724d953a9561746cf9156df69d6e9224df5e4e3e4e0d2330cbb7dcf6eca71263e06170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ff37dcae440c2203679c3e9c136c0a01f69cd8fd24def5b3729642e4d809771dec49dd75515e4a7bc98dfadb9ea0352023100b87257721647149a43ba4ea99881592969248c8f90503823748e766f3552a2465f53d6ac97a9059c62a45004c5a9acf80302047c435bb500683066023100aacf259b8c34973769c96aa2915702f2855fdb44984feda78fb3e5174eb657bc909c1b4da831bdcffeb372f2f83cf8c1023100d5d331f6f52052becd6842de43eaf42fa515288e1077cc12d1dd184747ccb1c8f2775c91c94aa52e99d50d5b1f9367650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230019f5027eb4dabe8529706cfc043416b231a271a0b0881e85e3c1172cfa7e3efabb8488a254927a5d5248d3b5110e6a40231009144553871c0bb821240298a85327a7e346a78b2860d98c6743f08944d0a698783708fcd576b53281d23d3d2d00aca490302047c435bb5006730650231008a50478c2f4a6dbe435d3eaa031ea32abe309e5a90a1ba6d4ae8d39bf1b6f988686b0e68ef4784187096ad6c60eb54be02307f1ce84f31d0b547cde9829e446b8a4037c7090114c849af29180789b8894ada5e682370572fa6afb588fcbbc576e49b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059d63b7738b71b9b6ec0ee71734123ce198373df39e329c1399a40d401b1dec962a8f894dae2747102ea8584f8b0a329023100902477e9d757531b9544d46f1a63ddf8dcaa7429909d00b130062d6f2a8264475472a85a7660053ef62b4e039e8cf5e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d851eea6f5b8690846420dc77d69656262ac80f2ed161903a73134b586d01851ed99b99dbf912d49bdc9e8fe763e753c023035c4f1357ba8241c2e0ba54cba251a5a887e4f3b6f87518952a1ce3627566e09a1a74ee5c888c17b5e7bd34a34812a750302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300204e9d752f585810c6ff1c7cb1aa4bb07ae1d776d75f53d565031a6d69b885bb83bba8b3e6d2e5f5708cf2d57bf7668023100b2599ef89bea6410d20d3b4ae15f9e8482de3c407e35bfdcb1569ae5436e5cc772207cb1ad32204939f3f50bbdc80f670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230778f56611821a13af04344e88ebdbc2c6484d9a2cfa1ed318e3fdf7f994ce81de8be770591dc38ee00a7dd9f43ea4557023100f0a57d0dd3c7df69d0b56271dec01501bf039a3c1d159f583318771e370131ee43f759ee4b54a636ba9917c339c948260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a16a47480bf773651b86b462f6d3ef440c726cf2d2f85c51e23a41c4b7081d71381ef7a478b16a063f35576985392894023100c29a52e1963faccca292273d1145ff61fff614acf2f8e13cdc9ad6199f2ebfa015c985aa4dc666316fd894029d4be1740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d3c56a220cbae8f9397c2ad3dd8158bd4c7d08b8966005ac743c3c34ae62d2e60001164e65d5f600ff4c3167430d120f0230639f1f5119a9e7d3153a6741433c27c23fa3f237e0ae897579f79e585fe92603b69f74b7e95afce1f8884c0f46e4aa330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304bddf3b7279197095e2b1f44f64ed2401fc336c2902dc0dc6850b4071091d05674388d39dabb3189353b0c9eed3e0ddd023004bcc597486f6f6ac546b52f59be21104bf1c86313079ba9536bfe0b1cc03b156e688a77e1c05ffdb99cb8acd9acd0b10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f86acef7f83a310b6d827d7551b3d872220e45486ca0a2b0571c8b3801fd9358c5be24159fe63e9aabbbcadb286d1e5e023064ad7f6dfd8d547dcaea31af746c6f5ed018fcb3194edc0165a9525c0e3d6bed33018a2ef28484c1dd39d044bffacd340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f1ebb5020aefc11d21810e8aaa39b7d8835d9201d5d550302314541dd8c4e2bdafd443a2fe60881ee8838205cbe4d0ed02302fafdca78ba72d78a5940fa999e3ddb992d4989f2fe3c3a04e6fd6ec1171dce9911e971cd2151193c71d18231efda7400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230581f94c64c5d5019c464636149612dfcd76694cf575eacc62575a4045f424ef623fbe9f883023548a3e9ccf3205c6ad40231009f7a8a05598b19b6d0dddf677213d67d9521710ee8d7f271a6e05c6cb1af8967811b1070a98c224a2fccc88153bd54240302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305d325525bb04c5e3a7ab994799b4e652e275f3dd6f8d8ea54e019ea82b9e84c0f9f79b1ea3c7099738339e1a4502f4ff02301d9adf54f57acab491d87706a34cc02300a3b2203c733816f7604999ea397e9ca5c1eb6a272c6766bb0b04016b12e2340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054fde37d288fecafc03be1bbf91fad7d64d8365359083aa8f9733c569ddea3aabf2bc290d5674658ed6c81551117b2140231009a371a33b2497a2e33a08fba823b31e920630fc359584ab26230255ef16d918f8fa0449f9b69b427ec28964b20abbae80302047c435bb50068306602310082811822fd7f60f070ec76cdb0678b78a8027e29397ecdc2dc4e2b9a9dde61cf4ba161eaacef165c8b906c3e525350270231009d7322888b9f27fa1c1ef443f981203ba77581cb05f6069dc0960e00762a3ba1b6f6681420c871aa9532deb3625e78830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310084df4b57e60a037d8e69d50b45c9c5d24f9d6cb7e4b44b81db21669e8abb7b23f7e180fee7bf6d89ad8f11cc5e6df48a023100a4fb7a8af90013c8226a59ef51d7e7abeb43f0d41a098038b7c07bf0b67fefd73aa30a41fa84242e5c676d17a2e4cbc60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b98c31b1b221d3053ae1610365967dd2ccda115ca81a741ec1e518619890d7f142ebedf26bdfa5f145001660c83d75c1023046f3b1a6835d8f1d58ac14170bbe306c1847024ee1fcd8bb9d21b2c7f9b70a5f2ae131788959642550611c946d38a4b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a0468f2b6e03facc37fcd4870c83666f9416591634816d802424092a9c4ec271540ed35652ad05ccd5d9a954d135919d023100df37d812f305f4d778b5ece42f8ae73fe620a5b31104bf1744350b4c3baa6cbcbd483396393f481a177e126d81e9d8470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023044fc388aa3a59a22a6fd0c372a18a4289298f48d1e3f58a78fff7452b05dce003908584fa97053e9f520bb3335f60499023025b5b24ee0c7feaf95c22bbe133410704f553a2b04af577cda0d2484e8ae2c5c39625156513db4d65ef2636fb581f2ac0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100996ad1bf204549fb63d45118e4af0a36db2845f2408497e6a1efdfc89541e939eedc82547a657a88d2f2e024f39ce3bd023100c19031aad1f70798a45dd94d066075cfc68bd056cb01690b60bca8192d8064f1716d1aa826210b1fa3fba2b06e15d07d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fff8145effbd811d755e8e00dfeb167a69a37a9e96a9198671773e935ae3b3ec83b94bcd49b6208799c5637e01f1ed3e02301fa0aba4e9d9fac9c28af21bd60e664460e1406992ab55d6076a50484b2a5c0cc8aa9f2adad3103f69cc80ead7b4ef3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b1926a0524c173988aa1f9e34a8bc2e11f3112ba48a5224187377cc04d66379fc65cbec8eb6f08fdd6b36038ba05792d023100983880921cf16a1c112fd7047fdddf89b665ddb8d38711b4ccbc10982ccbaaae9f1ee9c14210dc04cd1c59ad3dcfa52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310083dc48d6b5c34a7a38f3d223f0934bf34e89d8744efaf76c10a9d9e58f02f3fab088dbe2b8883b1d52e4d53c54fd43ff023060c610d0bc587ccfe058b0fc821830514f94d8dcb91be9bdf0151ffcb53727498f3f87089f093d5468820c7e7a80e8560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307d689cc89f10eb033eddba3f368344e3fb9f605764405b88796ee6f266be38db6700187cc8ff7f91ad3eb82a9b8ed330023100a2ff2d78327fd0e6a16bcda45cc9d52f0cae3edfd71c44953b96fadb1e5414072ab4b624f14050ce180ca77b7ffa1dc10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303051a212a5b5d3f5d9712a67e21103d6fc3f577dfce82cd9691be2b9b198374eaf4c4cfd5fe24c8539a61653ab9ba7e2023038b9c9d78df7cb252697199c78455a84164d7ab4fa909bf6761eb4aa43e3088b59fcce3babf0aa29d67a56af996c3af50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230724f5b5b0b7ebc6dfec3a8b7f17c096601dd91b8d8582abb86d1ba1dbf995b0609e6e8e6e50e62813180f7faef47001f023029f8393e9d656189547731bb3d7add70f392b563b2d24dee69727b42544b75fa369243269c6b7280cd2d600d94e83c8c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e7429e4f833549b19abd493afd024f18150f6ebf90585361cb0b97404aabb7c7853965fdee7ed6c282f2fc25da3c23a602310097c72b56734037f33c5b76d7a270c22dfa11fe8f735524ebb2a935d80f3b42e6a875fe673d68258574e008b201d3a0020302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301ad294de5daa2f2504070e258b1dcfe4fe268fb1198985bf715ac5a64201c7daa8a080fbf420cde491d97af0757f73e70230041692e9187f41b0f9c14622e73c39f03d58ab7db6160cf3942059cb97c9120458f7063a4c23f56be8f552892d5c99d80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310091b71a4fd46387936a0255f2cf8a145958a74a587a57914965f952868fa9b35c38d4c21f0eb6c39485f218c305f9f303023064513ecd34e5041f804466944c3fd2676b38522f498e7348c159bb60f25a907a93f335ceb96e1c8b287d89676ae85fc70302047c435bb50067306502303c4fec252cf318db241c7f202171b77170aa9b92359a9af44feff536b5e2dad515ef4285f78c34d8b30a96d0871302480231009c2100c990ed2b84065d22ce93c1e33191766343e467ffe5fcc9fcbe614d793e676efc35c280ee47b6fdf320e74bde100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026d39872e1e1718ab8857d6d33661623c45cc4ad13973612b02f266407f90b8ad717e3f9c7d75819351090b020ea059f023100a7807bb0c731c2164486b3815e2e97664b606fd91e3037aaf4bcd8201a0dcfa2654df4b3af12caef2e015176ae4510850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b98beef8f3903a1497b194399a6e3af1efe1514d962fe4cc0164c05baebeffb5b382b1a89f8860a013e861f8356171a402305f1030843ee5694bab55db4f841aaa21767970a891a41cdf81d0277291dc164c22bd620ad23f0176a6c96ee1cee376770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230588da356f15a6935147c6ba42cbc120c1030fe49725353822961cb18452627b0bf5b11613be7ab39b9e073098c556028023100879f00cfe8687c01691aaa7d35cb781d32620ab44e8a68d379c4a2e68452c57fd6c1e8ac31aec826a5c6adf0ff0e93330302047c435bb500683066023100ce64db67f7593650a9e99521cd022d6a4ea81e4af9f3e6e5851ce19b712d4d8c5b55090856b280e289534ea46c95e7c2023100c95b60db5a2643f74b47c48db3285e4d1b6c0901ad9ae07ff377e4a2e29fbe543eb7f7e3a0534621ba01e5d278aef1340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dc7c01df10c1c528e258d4515669269cda5ec4b2e71bf6fef71f15072ad3caff0c45127afb260429c7b55eaf1e8eab0f023100fae3206ac057b7acba963fa0ac69e40204ec8f1fca455b2da601b8c5cf2d9f9e318efce0c193d0744762588325a2815e0302047c435bb50066306402302628aadde3e742049c53d9286a13fd31e71f8d80c8bd0857ed7cb739badcad9c62bd701adaf3be411cf9c0e5aaa119fd02307beacabafa070fb705ad1f0206640be3b486a03fbd8ebcf133701f1e005d0d85f860e46991767352c0bd3d41c72b1ccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c6926398a6a9ba14b172762f78d41dfaf15e373b77cccad9fb377ddffe1e65c325a626b48fe1f60661251c40df213b8f02307ca2918635d193bc30fdb6f00ebbfef2be8818d741f9f74bc78d45544a42576c3189a7121b8216763d06ea51052fc14b0302047c435bb50068306602310088b6595eaca5263cec30f6992bb6200df63bbb2127800c209d5d502ca072e1a7f9d4e32cb3c7c62dcb4408fe8ff50e50023100afa2d78549526b23d67135094bd3dabf133aa17be6153c50ee6d3c2e36f9cc49cc64b7279e677e2599ef1410537542f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304b8865d715f17e5e56d435c6d68c7b608156bab8cdd7a58bea1435ec523683b8c2430c3348e4d9e71253078b8bb583bc023100c13c77284c03d1ff5610137b33bb52b9e5caab2caf9c54c325be173d07d2260890abd3118eef65b678c4a98b91b85ba90302047c435bb500673065023018001b10c99fcab6c6642de2a730534388a40ac866f0219ebe88c9bb41d4267f28cdc74746528851f4f979d015f55e99023100fc68773a766e85d1a9417eafc3798daf27c51f2506b5c8edfcd1a22926934864b4e70a5478afd8e99bda83f43bd2001f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085ad85ba65937cab3c0c97661e7621fddfc4a2d6e5e7afce266d049c8ab12b35bc7985ade098de7b439b0ad820e004b4023066f618eb329593cd50733a84017b1164f978e4b2dc20381843c3195808158ecd4b391e753b2c4ebed6e13b007205446b0302047c435bb50066306402304a4543cec86ab32ef452dd4a8e539318519e459490acde206dd36e99d5544a79cbc6720c31511e636dc763d5a3c1fde10230180265f7708ffbb000ccab0cefa953513520b7ab5c0c4bd5b070dfc48da210a26eb5d95d9fccfb4df14dc2e29d06a67a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ae0c6a115ef13bb07ecb83a0699c60174c1fabd907be37e00ab9f7d5519321c0922c138c455fe0d0a4b4ba9de9ea114802300261694ea6fc61cd1c761e23e88b988ee0b5875a339cd2dc1255671e54ce1f028c489249883c62c4e8740cf4186ecda20302047c435bb5006630640230431e03f0d99e03ce57481f1075ee3bc7acdd6d94d277993e05cac3d3114ed1591c258946c4f17bd1062e1ba4aaec69f1023036c893b8b8e7e64dd90a50bb0ca6689d49c0d10cedaf8ca79c1c31bc853773319ebe0525dcca5af77d657f2584eebfb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230755bd317d94520616dd793938cb64c138f225c1e8cf816ba6101b4ba4e852b699adef05c9e4217529ba1827d0b47fa8f02303a0dfffa2ba37a866eb472d013c60ffe6bf5228381c975911720e353b09579a3c2556f4451b2e161a1f8cb23e234063a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e5d5c9a2c5162eea25fdce1d0b3a655ece68c4ba9d54a489eaa4c37089b9ffc1f48ffc1c3de73b853395169d0b8b15090230326e67038bc803531fbdbbd4d74f42d96bc980d2c23c2eb075a915d94d1c7b3c6e176d3085abb73fca04d8263b0bb3ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fddde514f0cc3e45003923144847f72c98334eb56077638ca9543926c0b25cbed004688d7edf41218dca6f38fd1c835023100c5ddf68287dbca8b8027e32dc9796e2bdf4d32ac3246ec09669ac0ca1dbc59ce3f262a6e470dbb21da977dfef0894af60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023078da22f221eb629b7b678d56ad22931f09183912b4f544c17a1de3a0c1b104b1f4a3bc5b98d868c866669391bdfd1f3b023100eb8db3a8f54385fff5609a9ad1256b70a9e67321476e69eb63454ad44a6e887e35988a89e863883fc115016dd5d30d1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023063254ca1d6a9851be59fa2e1a9fdcf90f9d8e7a06fa037bc6c1d301204e54e06c8def81b3e5bc73a58a54e64e191f5e7023100e0e7f76f0db11dc98d133c59614395c57a1f67c1e1c30a9c77c60a67c7a1498640415ed160807f5fa3e8a8802ffbc49e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023072f731dd2b95155a6616faa2244d4cf3eec7754d11a4d2bf7f3754724c0c9bcacc9ed2ead7c7453cf869b9a7de0747710231008515fcce06146108e647391d82154a2cfa38466d5474ea68d4588a6b9fd01988f7ffb5f8b24ef3e90ce2dacffe1ed5760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f027212b13a3d8333c6765cab67b2a1482991727c5f7aaf7a4ffa2e51a849c3d52c702efa0048febc7cd33d936970ca3023100a546a5dd6fa431272931ce4846dae2da540ec4426d08733454a5cc26f86a9b8a758028b640f83bea679dead0a1655e170302047c435bb500673065023100cec3d83720254d6d78a561396da43616e983a525e255bf1845e7686cbd75773efad4b7c24a2ed441833ce2280de9a283023078e5c2450d4f1c0e804f8c50dec697e3b986389602c2a6ca364ce3797f567939fa32eb125afd507afdef104f5d1f44010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302b4bc316502c143f81de6bc4e722af871db7a3a4aaa4f0b5c9a140379c8dd26168aeac0b8110e0b194947dc75cf68c03023100a282a16bf0f9874006706fc8f616a8254cf4d41cbc9ee5ef554b804d3750ff52b3e78748d41f220323a3dcb120c2bae40302047c435bb500673065023045250b4e61ddee427019a5717b303667b6e9ab2ec67062901fed958d5977469eef7fb6f8078f9d9b424d78dfb7d0cc95023100d1354323252c3c10f547d3e0c0d97e2a857d7bb2a4dd2826ae2f23c835f6ca58fb7886c6087ef2d6ceb7163fba6c7a870302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023050b95d3a04720ba17462d2251f180cbbbe13d40072e48b48872dbc16f25e12ab32082d07e618c24aef23646d64efa2200231008b19b88e3446f194757606ccc13e0f2be47f31a2937f508f8834668b115fa355eae777c668cfe77dcf8f7aa254309a5a0302047c435bb500673065023100ef5bc61f4952de67159e5094b706ccdd774594f73443ade173e8d92a7c86bfdcdfb2cacda4c8ee26909d630f0c19299d023017a00cb0241f12a309c39c1f9bdaadd5e3ef86a3c63fcb1542da3e273a4d0a9b4979e99e73b718e625f0df9f9bde8dea0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009becbc5d2dfdce6f94ed33b75beed79833b68884bc83d67dc92c926c9f9d25b1bda8a9ce000e5c0286731e9d892d178c023004213e488631a993897580db6bba567c73d7c1be974d004a85daf969e51017e94993f91ddfd8e0d9de7d1c084efeae600302047c435bb500673065023073da31589f837b9a62dd31b965f0f61d375d92ca583b63e727d9f0aafb70988d01c223b96d942beedb41b4a958727c5f023100ee372a7112982350dd91a833a143540d3e46e4fe730dacfd36a5709ad7de13be437d230f37a5448913bc372fb03ca95a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f9b7079dc12a76f0f4300e31b756884011e4338d42003eb7cd47f8a73773503f51d2aa419157e229086ae8ff8521210802305557ae2c6aefea11545cfcb85e09d6209a6a1883a9d95141d11ea758091a8abd4eb162781b8e6181fbeb19deffb4efdb0302047c435bb500663064023031bcff6a8cf2be945459a8e192b8ce6ce79983233647ba0dba9ab0037c3a9159ffef3896fec913f578e743f91e986d150230174d5ca07c2d30545d7f6c9d228a22fadd055347f2bb281debf3d22f11c00987648d5f24960c0605803470b234e0c0390302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402306c53ad28642b3854e3ac1d2d8f1b94434f009c784a4658c3d9dc1d802d8d2acb9ea369ebd0a5d8ffcef9bd2579f5e8150230022ec73e626c94c410f60e762f8c93e12c18a82e93b88ee03be974ea917c09a522373aad86d379765001693e6fb1eb640302047c435bb50067306502310080a16f0cfa640657409a6e8c257aff550ebe06ba5d3ef334a649cf718fd597c08c714b87a7c68f51e4c92d462ad9c08502302904af7208ff74392f22b484603aa9a409e57b28178b58182805c1d5416c3195e364a859d307b8e45cef6c1dbf3abccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304446a0352c546e3864924c539f5befbe1991186e112a273a548294bf81e4c56f587e40db476890dcd0c40674d677491f02301b34e9a1d0447361e96fba4c1cdcf6e889ed2f928aba8ba1ec915de42268e058d54afe94acca554b35b4eff754b61ba30302047c435bb500673065023068e32ce5532d45d1751f09c883f9b8d3ca49c166f3158db2308ef9ea1aef6967bffaeda04ae3d002a752958c464940c7023100b4eb7994963f1a9f97539559ed63ed9e67172507b21b697f877bbae0e357f1372eec6afbcbbfdff597378c0dfb7777cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306b88476725dcfaf2eb738fef30b522f0046c4cf1638d6abdf51348a7c29c08bb77d328eadfb7693f5093b6b5f215779e023100d9119a1d33129b28695dc7c8048420a9234dc072195762f610881048843c4707d77956ac06c356ac37a0acd94ad6b6370302047c435bb50066306402307fb65b62211a857e6deb9ccc40f3140c1db3d99a4427238dd248c7095501dee70fdf63003094db656554230a18be519702305ef53b4af923bb7362028eb4ec4409c564ebab57a0597eb84b0edb8a29cf984721799b0565c9e778e82be39cdbae0c4b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023004d15ea65a7966eb353081bf916e07bb9b490fa9a9686d7ecf1e18e06fc2255c67e812492eebd2eb437fa05efcf1ddd902300cb8e5537fb6f1e5bcea0e8150a525934231517573fe89ebe80d84c7a04db3d31e4b3de5a5fc726cf7cdce292284c2b70302047c435bb500673065023071d4a36880744e71042327449ac441e60c7289d7c997fcd0ea5d913b697a87aa17f1af065e89864732361d313a5781a50231008c774049349d2e0c7a9510eacda989fb1393586524d441f7909a0ac6d926096273a0080a71f487bc62c94dae8d2f5d680302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008b42f09e8543c1bb6654c7e923711c677168c23ea9f4e2113c1cad9b15fa42f0732927b922ecb16c8c987f8f4d0e274f023100aed18d072e95901bd9f86eb9080a1b6a5ffd5b1a6572bcbe7ae0315115f3c33036f13dde5ba81b738b59d21bed410a350302047c435bb500683066023100eceece32e30123ea9758046b2f35e5e51dcc1ea8f8e57623b74a22395daa30f2e57590b1bc02557cd8c9412efe62dca2023100839cbee93b49c380d61bfedf749ad8b345edcf51b390ff4f86288bc257fc9a0608fc9dca783752710c67cb205d2515d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230410fa5d4630ed351f4b25cbfaa6b917696141d0f44d4f4bba8ac0a56d7826f53b09dc7c970004653cf7ce3e2b1e057ed023100c9bbdb53946fb6db52e9eb0abd2602a10ff80b6f00bd072a9d1d5e26d8b37b6e6264f9587fc2ac8d8087fa3c51ea944f0302047c435bb500673065023100b5601d53f3bb71b11f12957e626d049068779f5c13a97e4466a9a5115ca65a991107ba3a182b199cb109a2f80044d91102301e2f57dbe84c5a333905ad40b8ab0f0ed42ac509c60d888b771ae9fdf4e1ab28245d8c3a5729811dc2d2ccd6ebdcbc510302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307b9233632e0592f20aecd8d1a9c63e434bbe97211dce049eee0056baa63e71bca07ea78ff633c5a4cc6bedda54f3de9d023032507b578aea7339a33829df38e017c94c63c7325ee072bf7cf04c16cb76ac03fbe0f8317a26ef2a183ca2fef732eebb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023007db36091bf9a96612f4b195b5bccee01e16f1d2b1f086c49277bcdd08fe71016a71edc37a8cc0876fe25d5496dcd07602306707888f51381a57c7a1398aa2e7b25527f5b8c4f9af284efdbfb5121136d056e8c630818c5ea6fdebbae70caaf948ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b1f951a72a5f8e47a1872296f47ab7c712e1a9dd5c6b2513c69e7e340e14fc80570fe2a414ec07d0b3c8d124fcad85b023100b8b0b3ff0fc5886410509ced17eb6976a6fba7f2e38dd16de2481a0eeb23a89d02f4a2a8ab8e2dfc6b58d10a6745368b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306ed8ebeb3cff2c7aef4409042e4355c0af75e7b364d9c2f67c188d2fc58c3fa49fcb5b444dc9922cdcddaa9058e4f5bb023100a08bdfaea563b5b091385b2d4a4a8cf8f5edff72c8c8210cb77330bd94ac6178d6e251b3d230c616a5ea5d7940eaf3990302047c435bb50066306402304622078049a09bb3bcd946e2fa75e09c8cf1a89c7cb158050d914bcab901567f727449fbcf187b1420cf6f0d633fc3b20230338d13c73240b8dcacec8abf0f96479c197e9ceb480241b710ce3bfad4c644daf74a68c8614009677a544f06435474230302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028522b3c72a3cac287351e9f9cb33860eb494b0514f581b6c3e04baba94271ad25a6ea291281fcf6ed122ed12209a5b202301de6a6ab82ea63b1abad6f749510034cfd42312d0c6ae18ac04629a5cea975a8b91e359cded40f3f2c8bf483a4ab65a50302047c435bb50066306402306e83ae943e4fa921d1caa87eb58e5ba3cef753928097e49c61c57e7103ec33ed3f8a6d8a83f067ef4f1acbef249cfc4b0230162af66d2ce2abe5640b0c8de5e0800e79726c9dd6463033d2470515ad8ab772c1b2acf2c0d062d8830d96f93ae0d3000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300c905b470ad8f2c2ba4c9ade85f4888d2cd1f44d67eca76ac627e52f91aac91ad7c3af82f93d82cb256233cdf6d93261023100c1356fdaa5d3f39d2e43fd8659833ba354a4bbda99598936d0232aeb52e1a060a945e41cb93854a7cdf4518b06e1d0ba0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307307280e6b5ddde4d635567f90829bb488ec2632f42626c5a0b4e206ecaa8dd6a9f886065afed031bcba490ce7b9cc6d02310083ab75d1977d90db11b4be93977b2777101b708ccf67dcfe1ee3267d3dc9052a268f840599537f715cd14fc8385ba2e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306617b7df93fb82a8570f56683231b1f3afad236c76ce00c45e6448bd9bfc45512b05f474750ccc54f51db0ef42acba20023100d4e377410b0a96a5e77b5f8f8fe19801ba708f0d715c77b15d5ce93e486b9d4ed689baccf71a0b40153f9db376cee15f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ed7a32cfb2a0b98039cab50575e2359ad3ab915e3779e79ba3bf1dbccc6b5dc42bc32caa0363ef76d5732e870d4b9e4e02307967f2cc5aecfff6e3b3fea71c6f32fb2ec65f677be0efe601b6f0f2df8cbdda64a3c6a22c9fa889d07fe617c1f92c9f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc27cbccba81d43673d21af3633ec216767979c7da510c87fe56d509c9f0a855e039ea273e0d0b3f35901d31dbbbfa4c023100fa5a614f7792802d9637ca3781b9ce6df59b445489ac600c29a046b46b1d05caf8cb0bb23c70124f2fb45a1e0a75cf2c0302047c435bb500673065023100b9e4264500a3defd30c4594a8b4c04ece347bce9bdae5d32f871b366c8e65d8b520ef191ccf1d1248b6baaa4f9e4def10230081b27c2c25089d9b03ca2bb18d9e2c60c86dff13d5be14d52a0313994eb4dd4fa21fb5ec6f207b487a9bb708e0f72bc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026f8234a9bd149f4931a8f225d08072e9b121e55add9f2ef43af65267a979f3fce59508967f2918d5e62d049df1d8f47023100b1d3a9e1d7aab5a28a0b0f33bb3c6097ddf3c7f9045a1e629f7f203c2a0edf2be2f49c8cadca0c1e6035dbc774d1d9d50302047c435bb50067306502301729d615e09b01fba4b656cf59733e174e2428dcca6fc7ec187d58d013aa69eecb4a0d5a5ff43aaa7e91e6665df8e95d023100e2ab7d314a63ff536e60ec7f05491db3e02ff4d842d16e8ee5b03870be8a48297eaf292cacfa74ac8c52417e3978f7cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fcc5e307256a2f315eef03bb9b1e2fb1bd87a604d76c6fb0c49cc86677f988fbee4a5d6bcdd404c876f3157b9258728f023100e720a29ff8067c6009dbd6fca2b1bc500ec1f02789496fe14a3a78d14963c6281eb7d7d32f30031a01c4e306ca0d8e550302047c435bb50067306502306af7369cbf000d36c370e278940630ed755473c28a65ddb8bbe221541e5cb8c67c0da559fe6a427fe3f507cc5e31ea20023100ac0d1e5da0d0269153ad150df44f92d58f809b6000dbfc14cf800f3557326d20c16d147b132c409ef0801f5b254cd3570302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100995f5f9e8fcbd240680e2a818d84cd805d77e95866f02e28af67d639de476c95da1a9f9c68eb8aff02c50a9c4c608a6b02301115e437fbc95b28661884588b58107b90f4c243a1ba1ddf8774f608bf1be6d3919cbd18b869c1c33e9e8b2ed55ee8ef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ee59e52a7d08dc21fca4b5062c2a338498f07699eb51812ccb7ee6ea8d9128d679af5d6799f636b34e8542349c79fb67023100cf1b5723986923cbb08b71dffaa678887a841a226b04f3aa6ed8a70479b6b140593b39b76d48fccd91435e3ee78464d00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300d655dff93c50bebb78bc0ed57330a2fba8b02e6fd5dd7ed9f82a059b023ed664976274065668e68f0e00d10853ac4e10231008fc57d4244672315540945aede255f3bba9d59084f352f5f1431722599b8c1cc4bcc8ac1b0cc6c65deff3777110ac0c70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303fe2852336c2f498fa79f2549dd200dd73745cd262f7d6f4f2fb4ee6104e9efecdc213b96f1c0e53175b8b4362d69ba0023100b87a68c78e56335237f94bb32cd6b03ea54af0c7c4b7a389a1517900ca559b9c6252942c19f2e9f88ef9d6947cb7a5a50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023000e2024adb2183f10ff9850092be0234954731c471d5be16c4930745715e177a657c8095f0a02de476b851a804477994023100d84bd9586d8d2988e350915d746ecea52fbb546db2fae75fe168cd878c60ceb938fbfcee5035154a35636e32456fb6cd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c21ba572de2b9cdf3972fca5d529285aa9367982ca5f34357c20a708e1e7c6d41406f946e58f34652b2aa1dc2001844b02310088d86b73b33dfb0b82902ec8ccc419748a9119a18ba4760fe09263759b5ded124db7b02c42689b9eae1695e48cfdbdeb0302047c435bb500673065023047d89068749c5d843848c44696fc521e8fd99405566e0cae0a873f62d1648bd94b98a87ca73dd4fd584412843635687b023100f5ee59d4f1d24463a3a2d66cfe2ed39605b40e7b0fda4c14291eeae44bd45523872715dc8ea1f5ddcfb63bb12e98ab920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307ac9d9bcdebb01314fb220bb8b9d33493af55ed7a14bad68be07f3d1dffc2e038bb6e3cfd57ad358ff57b4118570c5e50231009e3559da5061f5a201253c7d08ad03b0bfe0f4f5de8011bbafadd3d155dbb77ac8015b49b25aca79032e893ec8ee32d30302047c435bb500683066023100e3716a5468c8deaba803a1d45571b3e9510b0cdc86e454a7489f3aaa65c99195b3aebb68c52efcf12d7b1d07bbc53f0b0231009f38794a85102fbd8a5985569e43c7796970a0eb98b742e26f6923ae3a38aacee3cefef2be32be830a6bb101da48decc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306d9f237c90727c4bf4270b53402b7ab89af293c7bfec8ef18f27a6fe01d832fc40c1cbd454ad372967bc15e35ff804ce023100bb0c9a94a11d08973ee01ac2c091f04b79578fd05716978fcec7d2544fec00def455fdf8e9553977ef31179dafd2a6e20302047c435bb500673065023100f0a7c193ad7854bdea088436880f9a81ab0710985c1f0afa65240818aa94baf6fd213a862435a12ca9d3d34c1694cb8c02303c449ca7e66dce11630398fb7a9469e26288dbb428e888dcfbc0e944d90f78e9f1f2b166ab863b0b22ab42b3318b9b3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a528bf0b81433044181d658f506e3cae87ed87c78862f0271dad51e56aecc763c205c6e41b68acae8822fa69da3eeb6e02310097590d0509596b157c384551c2f10d27bf93293ebf5efcc723570196addec2d80993aa11d91d875f4489b71e0574c9a50302047c435bb500673065023100b79c092daa68fa4430dec40762ce021782ba7fd71736df100b09d2f15329204bd0c2e03d1caffe456545670817e1ede102301d626b58e7ac0a6752b7e582f45b1690911082655bec39bfac61473584214c6ef9924157126a47499555a86bb136dd140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3c154fca080b9dd571887877c54e76ecb0745993619e8861e5e7d0d444a8f848112aa891e9979cced565180fef7787b023100d0329852654c297a5fc305cda7aa57141a8cf3ba9e8e904eaef13d24c20e4d6899358a796f247eb8a61a38aed6c80a5c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310099ad3ce29554636c34fe0cff92cbd613f5adc435c4e4492cdb5eca51ad77ff6c0e6fd2607461daab9229459fd350287202306fef48f2cece81297e79f20657c5380bf3863cfee9d1a85ae156114550c0845e7db75ef4837a0b262c081fce26f67f010302047c435bb5006630640230133e05bcdd01cd3d41dee85ecad019b21feafd960695d266fad18b01c0abecae977c7fc480b5363969fda92c290a97bf02301bf24d3a4d44cec46be15d47e57a5877b3ac8d7004cd4678f958898ac0169f1b8b2d54714a6eb811ec09ceb43262e1c00302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303ed86ba88bbe430d122799ab43eea11a3ae4cd256bbe053f740268a89aa508f16cbe547031c518b821e03758f5204236023026f2d090db8930101d281bcc20da23fdcc3dd9fc4c5fcb8804a0ec08789e3bedd531cc8f17d81f4a5358962b03dfd4250302047c435bb50067306502302cd478113fa425e1671271c3487b3b3a8f3bd35ea96a8d84da06a6483948be5f21c58e6555296acceaf2249a84fe3eb4023100d1e3dfe4deb5d28a04e9e1dc2ce6a3d3ac58ab5dbae5cebaed4fe28bab485b642d561920dad3b23fb57e39e7920bbe940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307b22a6322808d318aaedc826d3cbd01f748e783155db0bb6a0cdfc8ba249ca2b41ab4e81a03cc7e7ef782ab671c7a581023100d97c8b6d6e72bbdde0d8e53cae34c40f4b62de0f6e49573052b1d9958b3206790ce6eac5293ce8b666ba3743474828010302047c435bb50066306402307c2c1c7fe066473139fed5d9fc31649f10187ce432d2cd77c342119fdee42ceaefcf2ae1a0a15af83e741211b2dc800202302fb8ea7d3f59f3dbba962a63e164a2826b4f9bab4fe1c7aa8fe26650e0ac9b6cca4b0aba980a4dccfdd2f36fb02910700302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d357adc4c95b553b0acfa0ec913de1df02995c756e47bfbb3b8963068cc7eef4283611986bce1f75e1cf41e60151b86a023079cbcc735b18a32935b3dbc077b3cacec6e649c4a2460428198aa980ddce6179d1cef8f0b2b2a1ed1982d26786ceb67b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1263bc94df98a0fc54981aff03d5e0f825ead80c3134fc3df0e180fea65ce455c31da620e657579cb5527fd737d5e3e02310099c44332ba682ffef07bcd7ae4b53b12114c88295025ef324452e79975e160edd1cfdfb01e17c0398ce7a27d16261d730302047c435bb50068306602310091ab2202c7f437f5c94a1f6f029c4073775b6ae7c266d2036906e65fb531194c6903b172cbf823d6df69ffefeb91864a023100ff5b7c7ef86ec5787daeaa7c904d934dd7c4da71c1fc8388dcc8408826ec98afd3ac7df9be63c31265080cfd3b68eb5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044efbd983ec8e42b704043689e6c6141ad8532e2a79dc743f6c758afd91e730be8e3690efbc9760821f1f173e28f1e5a0231008e4c83c787444342c8098ccc40b45b6a8baa653f97f359aba1ada26ac056f903cf7a9a1b044efad17efe3f28902051fc0302047c435bb500663064023000f6d62d2146a8d2efe0fa9141243c4739d2facb026ea9e8c02d1c347e125d3d83aac0a42f0b584f33a820da92d433d502307ee955259035cfd5aac1a04b87d48040c7c51a0c7ec098283a63e3150c45ce9faabb0aa8a72882e9c55568e1232dac140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba5d71538f0cedf1a91ea20328372d2638c44d146b0f3e014b7550fff9ed7feaab4ea1e459876204923fe24cef9022ad023100910c518a3cb83f4a35eac3fc6bce802b4a0e58856ca84642ea217288269a09d91a560ab84250461c09f00046a60a62770302047c435bb50066306402300e973c6f3c9a30d8171c8d1a8a193b035e1d952ba19ae2cc600dd3e879a2621b0be51f696dd4489f45c05a425f487e5002301fbc6c3bc7c806998245f29f1810f8cd9209e0841495fe31d0863fcdb5dc48b7030d465cdec456d643a9973abdcd4e840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301aea59049de1d3b4c6d2bab1af7a363fa67c87fc3ab1c09f17f05231fe204e778e6144e9f8139af2251d11a377f6b39f023100933d9e86b2f299831cf9296c024e1fa5e24996a127d7cc382e3368ed249ce2dc54ac7afe611a11ba4f62765346febd5f0302047c435bb5006630640230089379e02db13c741b63c1d7f2826c61606dfef044394170e87298240d4600ff4f155fadcb0d000ec382101bd6a049de023067693d74f584891e440fb075578aa8e56c7c1b09cf0f9709138f4df27ae1d4860f6911eac68c4ec7131212bbba1b274f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230789b653817dbf2aa7a9019d99c99c25089bb4c1fe83ef2a1e404850a3f93599d8658ec94a1308581fc7c4f667ef85d0c023016bc403c7f4141ad61dedb0fbeb8c5cacf12aaf1bcfe60e0814da6cdf020c1e6e49555dd6db94b5f2c51848e9242b25d0302047c435bb500683066023100d93006dfdf45470627ac0530a2c3c96be7cd8d8f0627e39d5809bc8037f7612bb306a6aa5d1c6358b7f2dd0479e75ccb023100cf7171010ace3c3835b73f125f7526dff1cdba854f090aa03bc15b146af41a94a6d2d6be2e8793e1184829e49392c2370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d99f795c33e4c97a2d90fcd3d8345ae12e541a98640c2a7e293642119df9c576138b056f99a78846ad3223cf35eea4720231008e9c5e6951ec2527a61fab6ae17dc0b7518435bb992f8a1a6723c134d5237ce9826ecaf864499fe4409fe7ed54f3f9400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082f610f840189a6944258de173ca60561d3340573e01b9c97f60824e50f10d97b5db1e3db915df355c81e1a22bccd04a02300f3517320b02d79aa90011c51bf1a35d4c6410d41a6b5e80763a1237fb0a1206e6f1996ee152a2bd8276bd7f6df6b3c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023055ac76ec3e9f3cfd53e1f91be7696414e95fb69210b9f95ed881e54708b28fcc06e4f2c08a92de6c83acd6771a329e91023100ee2f9e19930ec6d8ea2406cec66365f01c446c44adf88fc04b6dd0ef2fa62c0f6b802adc84bf7780b6188b27dde4d3630302047c435bb50066306402307554863cbd3767226cecab5e96d50c15aaea3128417826589c71fcc5565e85c9494605eb6ef7851936234ec613c67b4502300b7464fca035f96f721ca7f710c5b99f52f0fbcc9ff8ff2d033eae9c0f3b6b95a7acc4ff5e4949665c62db3f754e9cb40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310088ef0ebbe6957760a3123877e693a7d6125a67371e8612976b0d466c967c8eb8d5e6e7aa88e7aaf2a365ee62f5ccff33023055a95e962471ca527ddc0437aa4d8eee3a5d47464a22c80487de398266974bd5c880ee67222b9fd97ffc7b44c9b732ea0302047c435bb5006730650231008d4aeae9829d9e8b5e94eef3e8b0ff860e758baa90341c2383849821aaeca7c593ecdad879ebed693b7b3b8842aac82902306ac9becdfb8282e3bc0395c7dae01a0433e05c22bbd83f26b6ae358d96fbf28471ef022b3964667c699669e7d33a18af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fb92575dc04d0ad719d576e41552a96bbf9271b4a4029c1c970c3ff75d525d3e47940f61547aadd978cc9f05dc7f180d02301fd8b90d3a4935a86a15554eb921bc57e17a388d3ee2a8fc93d9f63b9c8d56b78d0e192f4625e57e0440802b87fc68720302047c435bb500673065023100c7a491197e3270028661b71b3acc2b051ce2efcebfa3583df321e6b53955b3195a5bbc39e5016f17564b93209fa2a3ac0230195ad007015e197e99daa265c91069b7d35698b90d19cd6e785e75311f6864c889cb9b840f9850877ffdef4c97af98ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023051e72818fef67bbc55d3e794951a10c99c6ce8982ad186ac9b5250b0a139a9d1258495e49dcf97eb48a8b103587323fb023100fdb85bf5072c136a7dd8ab5004ac6ecddadadc86cca257faa0b53d38835ca0de68f4296293067f6ee94b46801bf6781f0302047c435bb500673065023100d05d3475ed379c4f9f39af57eb64baba1e76771fe07ccb6a2e63f123a7845d4513a9acb28af7674b898984a10d071b1802301f82fde442d3848c36b60beb91b10015f5b89e9a966a9215e04e6c94b59830fd7c431d5bd1fd9dbf29e2b264d569e7a20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d00ddc033acc56ddd4ec36a75a5678ee08721fff79deea820b453c1cc065578645bdb0eff8f8922a84b576eafe73968c02303fbc3ea66b93568d81f6883837a3e4617c6cb9c4af75065a65c6759ffc845a77df1c50774dcb6cec7879d8bfc618708c0302047c435bb500683066023100c7cf585a69ba0b4c8801b8eccc39f88452677f1cf63d2b64758d4e622d44b6039d119b4579683e381589f0185e934828023100cc8a41a6a9c7bea7255fbebdf726873cb1661e02309a5e5b9474d6a72eedd15a232c170ee3029c5bd0e14d25414876710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e6704db238890576dec52e7cf5fa4b77cfe7e02d24cff8085b4f67a7563ae9107525852c7d6c49878370fdd3e4c42edd023100a720a86ca0bcaad0b8d3c724c45786a9eacca7c3a509053368ea0db4128fcdb91e90c8fe47c5e1255e0ee86ec08133d60302047c435bb50066306402301f65dfa69c7f6016db33d20df6d286422acb273da1d81d03c0627b05a0802bb676f30935ac5f63129d5063093be3012802300dbb88ce93596c40a16a71d0206b0f2d067d8b2e14a5ad3206b9a383a87ad7b9912b8bc3eccc7b06a05d8d8d6f095e220302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023010e4dd5bffd20830dcaab956c3ef77cd136e64207d8c0323ffbc13dd5b6eb0e48ddce50a2b1a496a67e9ec99028988240230121d45208512b8b16dba2a859b26c7586ef9e3bbc2efc41ca5c76ff63360efd0eeae5a98bb59088db27d7cda01f0ecce0302047c435bb50067306502301855674b16f5b25c3e2ac55687a9ad2a2f4a21d0e369c7e5021c2fa6ec5298c82c597f98234529398a5e26a1f96fc324023100dfa19acc556ebcb7d4dcb2193a328350052a9d785f43ff7082a43558862f69eb6cb7bdc19349cd5e1bbed10899bf5b460302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305fe28f227fd4e28d47009b66d99d87c1f5da00fa1fe535c3e646fdedbe77069f369c363abc39d6c975821fe0aa42d2690230273cb569a31e5eadbdb0be64d857deb679c5b843dbfa071bd4809fa3081ccd162053d09b0136e1e65d3a1b48da86c4d00302047c435bb5006730650230588c7a20d1d11d7f33022e2019750e3a1e259a4eb6215cacf33c3231111070f623b580d2692036e3ae5bdd77ac141677023100be6b385294683dc10b9a23cc0c1366abac7456fc18e615e5f00254c54f035e8b5aa0e6755312397625a5d224db12f1300302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c8173833d57b86c38c889e5186de994d36c0210c18404631e49f5383b5f65192423817c4bcf5e3695ffe2f696264c9d6023100e01a541d87042dddfb08ec9096cc8b4509378169373c18bd2cc9e4d8426452d3ce057603f1321e6b172345bf9f7002a10302047c435bb500663064023077c1fcc2024f0460b12247d542c822546499f4868176a0d8b6f87191e04acf48ba983bf5770a4494755c971bcd18a851023006cc7aba58a856bfac89122886de608435d203ff3671b95c0b8e36449b0a2638c7d1e9469c657e93d6a35fda4091fc120302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fd18b5d75a10b765f51e1d047be9eae06bd8dd126315ff450256f01c664d464f2b0c166e32af5cb51dfb8341017ce36023100c307899dffc264206761604eec89cd05e6069a4d5439ba8e74608a879475908228eb3c7757f58d1c0aaee9e916131c940302047c435bb5006730650231008da6acbbd1ee8c85c60d1f39112dd67e484684668957e885695a8176ba69696d5ea4b31ee8c5ee94d5bf97a261d64b3c02305e920ab7127ca8e2c2bedf750d0146696abf6ddaca5b86d1cc24ada4b6a2760a73fff2f432fcf21ee1a1f95f6e8802da0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a55239be31d187d902b7bd53ba1abe5b626ee152e7af317c5f8d4fb6cd4188d2be5b8263031604c1beb2730c116fbb380231008aa8d0e612835a9115c8407ff65819ccc22c9a8d820dfd0d496260a0c228a3ca30afa83740a7b8c7ce89fa9b33d57dd00302047c435bb50066306402303ce8dded4b7359d8aad1c41243546ac66c98e10f4ebb6e9f25c6accbea98f8aa95c1479fb0f819ff95050b5d6fb2100a023041fa8d7b0a2dff823c860d0810a95df314c56b222fcd0b7af041eeed8f40eb0125327817f4ff2b46593b11069761dd260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fa3b91b81e91e0f37cd9438e46fa182aa92b3b4014353a546f64f56564ade6da1a06e11a889c6ceb5483055d10dd5aa7023100b2c75a35a51eee5a0566cab089a7888224c1ff37268bc833fd5907683af088a4c251cf6fc1480c23fdbb9bb0271aa7970302047c435bb5006830660231008c8d3d8044f60489569b7b41b39dea8dfb7a5392d1dbbc28f773e7342df800829f18981c67dd137b29d6f9b3eaf46c58023100e9f4a803ae599bf8aad215d133ec26696f8121c868a8286247b1c6a0df7f6e78c1d5ff982c82302bed9705668eac448b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304568e0f84cdf4bec6cc8178395c6591537f04b1155afc60e64a9fb6717adf05b46adb0445c98d265fcddb1aafd9f547c02306c3c0c8a5d20c78d2e95b3165a7168bc43aef4e3f14c56b401d5f993cc433c5386a5af67d95e204280d37aae351a9cc00302047c435bb5006630640230143b9290f91affba6fe0a583a5a8b5b433c654537b095dc776c297984f8e5411baec417539ac4f8df8c9218218917577023071244d25feb2ea00a8721be2793c61711c866d4f6cab840af02a325f547afe32f48311537160ad886d5ea5ad12eabb5a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300db8dc83f9f24e02e4c2b56706b00bb459dbf4fe3b7a15a0c32c08f1eb413a309e4d2cfa4f609bd047b5695e14addeb9023100d440ac0336a492491292d8f719f54be5bece0abccb8a65d8e423a0ba9735bb468cc5abf686751c730e584153585bc8810302047c435bb50066306402305b8c4e7b0b183f73f4897c29d36c6fb223355085172026f283712a1ae765a4bcc00745da83a58597f2043cff9023bfd70230121ad31d52ec6630cd90e5ca119bf141cd37f1e197938c69f39408da203f006a2b1cd10b334f5d3a8704fc08c96783800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023056b6112396a37b7da9a7b63a7fbc91e82129d2159d97b3d60265d47a95a5c1511e57f1f7796e99ab7727e60712c80dec023100c7b3d4d535159e696de1d2c6bf1d93c80bbc3397d8c9424f47706934be9502a03df0b819e0b1a6d486d75109a75c8bfb0302047c435bb500683066023100816533bb4baac753b713f23d187a221f32d7dc5608e0d6ff964ddd9e9d72ba29a2cd56e636dc3ad7ae577e6032f129c4023100d9d3a7e1584ebe679d277752c22ede59e9a28ed8a3d5e0f6386bb710b4aba47cbd0a091d09c4cdb67aa93b81cbfda7cc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023038ac334d2c9669c70bc818e125ea398f8f4ca72c2607552fcd179d5504ca149041ef4a1fe6e112c13cf7cafaa52c96ec02310096f46c4ce0ce20d8e67f4c86b8ab8132d6dc0b2491251b6a23524535c9fd136cee549f3de634f49102cb3bcf051ce36c0302047c435bb50067306502310096e97f03e42d2d105fc1e0d62dd67259e9122106c42d1c879d8dc73b325bee083777d8841bb8e455b5f30ff040b0999202304b822e6e398f07ee00a78017538369d021f0c1224e641cd0a3632b40a2c250df40b7c042a9213d106bddb2dd52f0cd590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230053977d476d307586e6ee6edab9ead4c26f623b63fd4ebff1a62300326b8a8e46aab8b4daef2b321d511c532400bb20602305e9a690d58e7c89bc5beb584b602d9d6f103a3d29921805ebe2f39a28f37e71a4d178497157b4ab3eddbdbe10922fd2e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017b794f7bcc63aa169823c84eaae2af4cbb3882746af8c2a9712ecf41a16fef6f767c652cab96caa5a38cc077f550ff7023100e6ee8ade087d027c1609443aa0177ffbc2fe2246aa5a4782c363bce9f7baf4a9443f2aa743ce8546abdc6ab4e1cf78b40302047c435bb500673065023037ca9eed9ad6ce1678994766f3b7d28cd828004b626dbb49be37bf73791bd774b82bcd6a35898cd48fbf03b5b72d1d7802310098eb2d28ed67beb6d21bf2d73d8a9a8b420091b1d62fbd66c31faeb67fb27f9b1c31eab40db44446cf60a451e040345a0302047c435bb5006830660231008a5bbab794cf85363c8437f8be36dc62d877ce74f278c2d028d5edf44d7c3a0688f67031882b34dae5795f032602f124023100ca4ddd2892a6b61fbb96d669fac6628bcaf8fd74f98632d1ea35c58cee0683a587a1788224945f771a1c06c7cb6571720302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c44a0a826b51c80e848501ff98bcdb0ba56bed2564bdfdb765815b94227217c1d48cfee0727fd268bef63fdbd03a57830230195407636eddef07fe77aa0696d8642a33dcb4e791a51c0730e22cc658ca0e05bdf96e5621d8c4b68e7fbeb81fbcaebc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ddce058ac9c4ed2fdc02a5ce322b135d4a7a1b219c15f60f82a6ea153c3d949db0eb8c1a057ee0810eb5aa830edc3e37023100b1d97b52c4b924aff280547362ca76263d2956c1c27bb0d18937ab51f1b4715fc62339ad1daa57bacc9e918ed5b985cf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043b2bdbbd1034bb045cb0966fe5cf5e2732f97f434e057b614a976d2d7fd34b1a5428ddee08e00e69c0ab8c80dd85622023100aed91a0b189eefe4576b43390055ea357fe186ca9eab21c5eb79cb42d8898c4b7463074502eb722a5cf9ea96c517c1080302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305eab25f5f5bb5c63b1700f85bd6d8ed80f8d995b09592fb29b75ba4beb0fc2be748d64be4ce9f8eee93c19f9dabb781a023100df2338fb2e8050149195b4386a5c77b777e18a7aab653e0e32a5c0609fbc0e0fd997296e57bb504dd82b3f1cfc73d8500302047c435bb50067306502304b8c44862f0bc500a99abc76a8f1b63033acff0e2ea663ba032a8ea7de10e397af83c7cd86404dc4bdceeb4f948f4e1d0231008a2ec36ca74bc02e85dce2cdf5ce781f9044468a74621b77118ed02e7185d8b3e5addb3f9a725fc4e7c29efe6f7e397d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023054f4da0447a53ab8f8982b602df30f18cd66552d9dd17d00083d07321db97a031ad01939fb0028461e48eba118bb24190231009070061e29b3ba0b69459608350358a6890b89b9fcd1fafe373b900f3f8272fc6290e7fdc6e57e81bbc2f4f2b0aef5f60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c952b8dbf9c322c83a3deacdd5f8664d0c812d3f0868dc51d8b1f9d25dd6d3b50510edc52f4bfbf3f0282c5d08a30ffa0230723e2b0e35548ef4e2aa51cc0dd9d6ef97f87876b4435eef87c0b11341aa40a7f9e460d19fc6138c53808c51f61089f70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023001014774b7c2334c3c19ec5cc7feabb9b3b6bce4922b5299d19cee1ca3c565f13eb77e7c5327f534e2a72a872d7f8c06023100a15648217392eb613fc2a89e2297db0e3ed04b7238aa63fca2e8c10cf62e3c190243ee88978cfffe9ac86691ad2f4d860302047c435bb50067306502306f78f6a96123120541aeb787664fae25cfbeb8281f30a862ee5a1fa8482e8beffff5d9b93e27849f49d4b786639dcc5e023100fe4036627feb23e9f46a3c7beedfaafccdc82bba07040201631e879511949db874ac39b6b03bc84ff4418879311e5d560302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023065f84f89ffc0ae68412184d056f221b335ff27afaea3d5c37a56f5227ce0f70598194bff73c29976e3a0bd025e34c30c023100967eeb9fd9e708cfbf30b0ebc5d1ff4e7825b073644e248bb96f1229f0212230b2b8ae56e73d76756acea22b032459690302047c435bb500683066023100e709f5eeac80d7a2c4aba5522adf699b2df5d75d4e04e2d35611839a9cc590e6d91ff1f8227643465c79bc9754382de7023100ba4311fe65b42688fdf34fe8092ae864a787c986c9c92b5b28071083b010643baf82463cf1d90064fa5fab170eefb0540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303316e41d1d21eb3d4123cadee9271b11fb09024c16e17092196b7d01706a3d32a0bea637bc541d2a372ca0362a79262002304398021905fb98fd5ad5f30637164ac889659ac26f8f432fbdcfacb25826164d529b1eb3ff78f0340386da785e3bdd860302047c435bb500673065023100e2c750740a352997faff5d01d397b3cc6d0614f117e1fd214fc4153c7e0a64ecfc1cf28d00ec3e099ab0f2892512df3e02302824a7d7e6c172240ae05d955bd3301ebe7d806100b349526a5f30d1399655eacbef5fcf6c331a1febb341398f3c2cb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ef62edd700704d56c87f28871c7f62155c6b7921d836a293b7b1a0a1e8a359bb85538325669394bd6a97e9dcaf2b667c023029890f676af73ce425992b9173cd181599232125f6ca92dda22c37454fef32edbc6de115e1399d41b197544eb03056e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008398294e6aeb4005c6516a5ecf8f7fe09434e67f9cc8258ffdae4b543218d0be1964558b8ae613cc5ff26b31b6ebc21f023043b2e1d000f3d3f00a668bebf5bdf9fc9d5190c4749bdaea8426cb4a93336e1f97b5f50b3255400abf636c034e518b580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023039c355e5f8c5646e9b0549568149c979ff41221e86f99b74a2c000dada5a0a60b8672d2032bd17be33de60e55b1630a2023100f4535a3ad36a9f6a5476de31cbdbb52d68d69249e22b07a7f84c51ccb3dd50dcd8adc59bec1e86f5027cd5e362cbeb890302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301808a3568dbe150f50a0f9d5d5d3c673c5852d4b13d33db1bf8aef5fbf0a00944fd02bc81c6958aafbd9e4045309d515023056799c3171d02eeb7f6772c4bbb1c614b4d9df0a28d438a2f98411380f2ac05b2a766de31ed20eac7e7456179945e0a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100bf77a1685649e9fb5363f4331bb19fe08db49b7d1a785751e40d85516bed83d6e0d354e6f1795c855a597e0710a314f802307eaeb657fc3d2150c473bc95ec45aede7791109cc9da01798da8065fc5ce11631bf10b57ec3e0120e246b2720911ca0f0302047c435bb500673065023100c69ba03f116ab84ded0d7557d5339587fcf90eabacaff3914b54d8b32fdd114d87b5ccc9e8ed76bfef2d4a17878df05402303a976980a6a2d7d01feb7a08b28b3f336129e818a8c32a62fcf1592bed751d9402ba84985106f607d673f048c9dbbfb10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303f8611118e448bfde993f46a07ff4f23c3bda01bb6f73db924cb419eb2b44bf2b137cb681db9b3f18d0b7f0e8aa5ac9f0230137adc42981214b5ae1ba2e3eecf7120616a2f5f09a60ceb8d4c6eea2e01c367467d31cba083c811ada8cf982db4663d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301755dc31393c810d373da91824e319e251d0306b5f4177aee199e383f0203517b284c0f60647151a2f2ac2c5d2ad208602307e39df696001a0477f827c5513aaa2c92e2eaedc9d916c54118686464bbf1a3ebcb934b04cc18ee2899b74ac9f85ef540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d8477dd84c2764a52638ecdd08d15aa271e638f768edfb278e54640f0055cb0a0d93e077b8d5a59b2e9aa677e23aafa70231008ed3a50409307be2310579254729029c3f0e293711cf298fc14eae13f212ba9258cc8a87555bd197806423130f2f0e3d0302047c435bb500663064023024f5263025d06c6c099ce2c373155044bc92869c5df3b8e14b6758ce69f9eecb61635da7e3b30f160687620ca2576551023039d8048c94be48a488ca279deb1dad40d4cef555c79b6c0463f470b1601d0af07ab05b510844f1d97f3420b253cc60960302047c435bb50066306402305f486d21b1ceaedbcebdbca4c316f232d116f2864f668f8196916aaab72e1c6b524ae11fd5e2749e83df7c618664312102307a0855f1b6e1962558558ef1f9d023f38b0112f0d249272dc57d5083000a8e98dcc8ea222cd6366c9474c493d9cc703e0302047c435bb50067306502303250bd63a526a90420065ccdf35fedb19dac62434583bf4c0f4c8dfb1d68772082441896c2ffa1d2a7af3cfee36039b7023100f8a15c8197a9dc13007953ecfc5825a177661c82d1301e346301b11d7812804cb3f152415df3de1a8affd12a1c034b920302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502300aad4d0c378796d842f96d9b2c86440ae5165f2c43040be9841e31da6010fe7599fa84a9770f09bc4b72c1d6daa68f34023100e737df1ff56ffac209bad3fa6da6034869bb05efb2896d602c7465168322945f95629c95a22688619001dc3a95604acb0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d3cc88fdd9f7b15abff0cafe44607a7273949be9bd5c35b85495b82b5391e2849fa7c1cf47516464bcd2fb30aa0a41d3023100f4f910f45278764b86b334b9633fb8097f88fb9ee131a399ba96b89459e397c43c2e477644522ba3b826ba49db0b3c050302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023076d4752a4e20ba65311cff1340aeef7a1227a08467d9fc74b3e1d21680080fa7e5b1217409856368388dc609bad5ef5a023100f0aea591f63cf9e3e975036c361d48330676d307539daada0dbbb5623a61933c1fc2e997db50cd453c210886a117c2ae0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310095e7fa3efa1d2166f1512f1e33a065d88b08abd4845eb5109cd14b88e874cc23feb92fb5447cdd4297b941e8691d185902302c2828c91936c55e11548f89dcf4421fabf7ec9a976cfa149d8dff5e5cfc2177872e39d69bd3264125bc0746df4a9ee90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023021a9bc71fb38a250acb0d348792f07d0cbf6f2a5f6b25169cd543fa8520d3d2d0c35d5a1762938f5241ac64a890d22b802303997180ceb226996fdcb96b5b9b24963f597ae46a4820806c76bb275049e993352dda7cf6f7ec17c093a62529b16836a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dcd8af987e3381d0ce422f06783cd0dce932bb6a6e52b83d2cca225cf451b6548f65dcc9243b3a007c841f3d331b423202302f9b2a95ef128695496d07f4ac726ff0c9e00567f3133dca3b23400512357e86a779a93cfe1c1dcdcd808b04ffb719900302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304cc16ce29388c0cdbf475ff11e3bf0fea24c37b704ec60e0ad785bea20366b91af41a4af5a42224125321a5f486ddf9002307c9a067e32c156027549793dc7c2822f44b5dd15830fd547f61646dae4205539a1e5f69efab22bad0bb06da2dc779a9c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf346c1c12aee0f0a87ee744d721659afc9df7db8ab839fca87f99254910c9eac34ea5985b2cf5103ac9b00b44868cf7023100ad95d00fcb9eaacc65d688c3b11df88e83adde2bf169db29729a71197e404c0937c406730cbf5d13ce29e340ca0de1b70302047c435bb500683066023100ce90766bdddaa7914c91b039e5dfc69e28605fac35c4260c9bf744603171582e895ef7a1e6aadd63ab1b1b284a761d69023100e18ead6b67f32701466e4b843a18c5fa2e54ca9b0b682785db070917657132b140a093ff5b2576a02d2ce45ea1c6538b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100840ae04ad5808ab32516c5cee78a9b3f0e1194fc3095c936ce01ce6669af8a2dd49662ebe0b865793897a775e20e25fd02304ee261a55c7f17d9f15e33c29781c6f875ae228bb41b28084c1bfeafc315ad2b7d6768e12071e6d9d06fbeab3fc965c80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310085cbd662bd5a0991f541f84b9d344ddf1a4398d9bf097103e66efe9b1fd26fbc90d7037627a92b2e7d340f849cf7c67d023076813a4835bd7e1374d6a007f45d2487dabdaff106b3413a27c930101fa617a362f871fead7c04c43652be5b9c39d4e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009b93c3b5d9b64cadd1e26f667a9671e5fd212303181e6c607995edb7bff149c32dc702b77d087b374a574554b866340f023100a08a83e33cc0572d4a77a25efc351806339fb98aa2bc24579aa608b8c5729fe0ea213361d0aae64408f1718db78eebbf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e85bf82547eb4d995065d568325711d0812c071e99760ff0db22aff59e42b3ac0bae525d86b1bdb55cb30ffc7b7e82aa02306334b15036757ad41b0f327e81b2e9866899c34eba80bd17260904de89c2261c9d117c6fede9a89cf20c59729f503bcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230701a5a5201c28f8618a4e42f4b9f9cfc20cd438cbb3c20d0cb1d0236b423027a72d47d6327a07ef0cde6d27941034aaf02303a69d6418200178ba6c3af9010bafd93e583c5ab9cd1b8e3b3f549199da7ca7e0c10c36e3bb0086a5a5d279bd4eada590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023074da135dec56a2a5c33fd015d6ef076ae871a94e0f5386b199b87efc58b0e0b36aeee8420e0c622b8d3d820bf444b008023041e4748936ec1f443a9bb17473f2aabdc9cf5827c2fb710c3e32812dfbf25421660eb6470fca9de70840c994d11b95b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023071fc088a1131d2206e1685ea3c596a4ced3232e26d83522caec4333f0aa3d370cd2cc81093bd99d3661ede5faf51827f0231008e294955246a7a7fa75bc5c24d173b77d8616227a042b18f4856bccf98fd30d693f5ba179d6d4a772df05375b977299f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100be240e43059b4105d2002735b6c7943b1e25b0e7f48f0a335c1d526dd9b70ffc7a68abd3c653914ac600167e9e512846023100fb73a726a6e064dc339cf4d3a6564dca458ac62aece592719b22bab273c771160b5aec60b987ae9b7c7939d99ed398af0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008a4a2e583411f06cbc294d164c65ee8b2e6d064aaa252ec7bd3fd602a386c48950d71c4d1b00bf60e99fe5e3338c9c2f02301611db4e674ffa27fb2b329e5522faf80ab2129e31950ad72d18ce6a1a72253b83c198515ce259e65544f646a825619b0302047c435bb500673065023100f02e67b2d4c3b6756f128035fbdcc987909c0832458aada327a2939cfc2383342441b3acb9fbaaf0e5384782c7eb6b9002302344d5efaf1e8c59e3025d7c53adc04f5ec1680691dafdada1371829642b43eacdbb527b730e6d24745f4a92e8a700d90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e28daf34564d056b16e8e4947aae6113071ae9802f1b8716f48f000bf479cce4fac4745e62565283cc05ff7815fd9746023100f48190cb53961993b6ac94a194ec99210de6fd92e7be36a9c934dc6fbbd50eb87d6a17d24df9ac417e768e665dceeaa30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305608fdb3cae28f7cfee5382c72d6af106f709684ebe0d4e7215fb8efe86751e9c250df8f3e1bbf990471c0dac56967f8023100d6aaf58947a712af69eb6a097508cb4986d5a240677e733e6665fce1ccc1c17fcfe33e47eb961f9edd60df167aad2e7f0302047c435bb5006730650231009321ff7e12ba512c778e0155908d705e86da4095548d1728b2e0afb5fe7d1700057231fda256e5697f97760377f2500d023067d10eff1a2a7729fb80eaac99fb8db375cb5a9c7b4d6a9efe3651a6146d22e06159e1540102778c371bf7778fa2c44e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fd9f48aae296544196f2dc007d67a2b019f2f8a6e42f7fd0896fa110129124b40e6423e7397fc7d199ecebba7b19e5c4023100edcaf270cae83d5a53cf4a644783e613fa368831d10fc8b4819ada29a6ef1246cdf74228eabf8cb88a8019c1199f4ea50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100cb525ab1058b5248760d6a06f513b893df149523221b91cf2d06103931036d32da5b5de2dc2c77868cc6b25327ef9a10023074238c35d927c4b660df51576ce6d5dcfd1a2a82d855c9d952903132f0cd7ff28f93b7c0944a7c45e1aff9f4a87d711e0302047c435bb5006630640230023b336b38f1b659174712505cfc8ccde348b6d59281b6c0e400feb75652dc4ac252db71518ef30afa40e0ea39f18bc102302e70edbb63504aa2dd3a70120cbb27025f2ca13afad66704ae660d16e1bf8aba8b4f9dc59f56b865b545c3483ae02c3e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088d7f4057f906a64db0571daa67f6af04b17e4a344deaa77ddb10810cfc5ed14a06ee052c43908514c047300c398305b023100c621bed5fc5bc121d424fedcaebd54123c0811b0a8bae09a075907f70a29c2e43259a515a03504827bebc3efc125c1f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a65bd996e6f29ae673884fb795c08405853900da289f37254b0324223c4853621613d43403f3323b42637627488de61102307a96d7217b90577c12f6a94dd235b91a50d509870dbea12801694f269235cf902b7ed4e368b563410a555dbb94256ce40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305e388a34937923f280a4b224fe9c70019d3269303f58a7a46a8d7fca3e04a96fc7e8428d03bbdef17de9ee7bc4a3d4f1023100b68373e780611c7b61478b19904c803252d8283100e879ed9fab7e654c0019a281591b1820fbfadc029f58028915eadb0302047c435bb500683066023100b933858203874e34a423b90e2879541e12a19b4ef07cb6328fdf1c67a29d00f5d27cdf6d7285b12d7d2159cd8a873ea2023100969ef3f51e03c7c08b7d8fd117a265dc4049f049ef06430b047ee02884d4e148de8f39cfe9fd561461757c024b4710e00302047c435bb5006630640230021b83290d29c6fc38444a85c801b865b75013fa8375c5598ed1c3e7bd68bed9e78c64708afb3f7942b15865c343198d02303672ae651d9a67494de30d6d180b5366fe44db8785b210b65292f7f28b1cdcb91684830f81c5943314421a78e29e9de70302047c435bb50066306402306d98789462167467013c3596871223cf680bc29ab3e3a99ca1b64ec07f50d3db8281f57a305d442507c7ca34779fe3e602302364306582ec3a722ffb4f2319a5102361918a905973f81eb6779aab686bd491e85a510bc8ce60fc14f2fa3efa0fd8630302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100807794d7ab4e151ab9112ff8d56a8f5330181ed5524a433d4d9ba174fa46026c603b54429092afe1d6713d4cd52bf6cd0231009dbf66c19efcf430a0c2ed09fb83ce16ed27ced49acb354f227d4243a27bec98720ebb457f75edd4e83345082dfd83730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b9be4775af6819a3d242b7bbc0f94f1bb7356ec7195f902e9942ecc83000b07b098aa92947afe3181533c6d7b1fee7d3023100b848e4ec50a54ea3e7faf35b2f9ab83deb858bc7a2e3fc6be2ca852a38e187e02db16ed68a1180e3a63f336794b930df0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008a91d8cb4b282acdcc27271205d8e3229f6637b0a2cddf73deda9c8c39e0383af31083c0c1c96de3e94e9003830c36d702310089dad43deb232546328e65d3db4bac600edd9c60be04c77ba3c48caae453ecac30a6e6317e220fff1cdf1a2940bfd8160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009091cd656a30dbebd8fcf7f73db2d8495626d0cf5cca13dec22d8303cafa0a50254de10b7d060e3644bfaddc68c7b898023100bb7b68cbe73ef3b8b1258aec2a84fba8face79992b3b614645a35acad13fafc2c4160a1b5876774c9c1f7aa48d1d95180302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310090b0d747ca60c2254b12b365c66ff759bea2b963f50699facb93934eebd7bcc094b8c5b799bd9fb5c58c0ac67923ebd3023100cd4c7515b4b5339cf4b2d68b193f579f58a604f59b579008a4376f3d70a335c28a6dbed5b2247e54699b6cb693e3379d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023044f602e75fd1dfbc71e57daa11e4f7c45c5e2b07474f22107aed2718b053cad3363a949b08afeb1fe5e0dbc91e972487023100f336442f2f605eae1b68f485ad38ebfb000bba6f2fdc6ee2eb39bffa5c5be0fabc745e0d5a13e00780e183a52d2039340302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502306371693435be8dcb18385a72c8872591c494c24c1d0a0cc204e2247a1bbe1a94689a43283424b23a3f551ae525ccf44a023100d5f6262926b2dde84a11a1e53bd0f65ac3c56216c9f0512630c0a9d6c9fd261e5836448546ffbe809e36ce627bc12b7e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ea37638a958f447e50792c903d2d9635f85d5b5c2dfca767edadd6ad39722a3dfe1c48babeeb282cba0ea3caa2a555a902300eebb8433aab7138237048fb36af3aad1395d9422d9fa80a94952f49cd191b0028b52ba7936449c1fec0c2b217c4dab80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e30086e82f0f579719ca6f6ea50cb174bf98c564ff488c76a0feb57e32c6156abc608d408eb109706b38104268b16f86023100e8b31bebad98a199e37c419d6593fdbfe7fbb63b00ae4a6466ee559c834d554ae4adb23e13f594d7eaac2ac56bf429ce0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302b2b232634b4edcacb024dc509d0488ec50e4bc293b0df799a26a93b34ba3acec0f5b1843ba82a586f8159d5b6d1429e0230581dd2f0984f6d90eabbe673576d3dc7067fe3c0f68e8431b04d3c1b5a5fb7d10fab3ffd67eb309422e0bf8cccd3a9ca0302047c435bb50066306402302f4b2cb9d5a30a677e7e0daf92cee2e2475bee3303f560593b74846dd8fed06f115826b5e66b55d33c37b26be02e9395023003e253db1c0053330fc3d9aea933c16f82d8dc2749d078af97b6989787fb987d559cfd8718709738c7ba0fe8f6d843ed0302047c435bb50068306602310097b12238bb8fb402fc59fbe084313a371c731eee61d7cf4b8d8abddd27c27e3f16241e6ca84fe3d91473cbee964fb638023100cf092a3c24b2cc7761df21019cf19e5211e251618cccdc3f5916d6513a1f9997728bb8047aed46a9b78ced6532d73d360302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cd6a62d87a7b4a9bc6060cedbb98c321945d6a870bd2b7e6d742561bbc41a07def266a4bfb778de6d25f4bd44d8a32df023100899bf6f4153dbbb267d87ad08fe39cb9588500726b4013dc0e2c65a49f1049a95c8ccb4e91351e4b7611ab0f1ecb98b20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300b894fad4b2d62b9d90521a144fae14ad942872c3fdbb7f5b0e405b03c9316c16fc7dfb9c165c8eb9074b784be96a44f02300bd402392666b864ae2aa134a608e4cb2454213072921ae9c0f1145840b43872e5d6b18ea4dc2b860a99507dba1a2c3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ddbc728b6fd4a031d20a8d6c975f5ba6f6fa19db694b0130816adc6ffcca35acc32e768e57489eda6cb2d1f6fea50b07023073a7a45178f2568618e8aac3676df7b9913b296de0969eb8f6dc831b57e41bd2fb46279083259f5f3e0d324a0cfab4420302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301f4bf6a12c3edb974c1fa587747f85e7d175321fa46237ff630487e3355e74ac7dc288ced6d56b6ea71d1dc841f582f402307ee0be754c9e17382893b7456dd217544043f977bd3abf23a5969774755645990bbeedbbc2d85206f0e0be1a5f253daa0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230068abb30ef6aaf9e9a95cbc7a211a85f89adcb5b136007decb537ac5fb5fcc8bdd1a748e54d84a2f34e466256b575e3d02307be30bb9a08a2a7104981517b5dfc8d662a02a204bce8364008c8e018cdcbf94346f38f6c369f17f4cbda25089ad3f3a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023028ec10fba4a2cc89b3c737bae02bcf60acdc4a7943ecc124595aea1d84545230156d00a9a9b4a97de02cbaa115ae56750230393b102c0148c72578a7677c2b7e67ee451da6b6a93896ad3fdd6d37ce4b7ce1a50e60172e131ee710cd3ac8b84b60c30302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303f2a7ed2e5f237079de97a9939b29dd7ed15c8484a23aa0600764f1edc5c62d95a6a62d4abfcd92ca2f167f668bc0431023100c81d3d9f7430ae6577248668b547b0d50df9c911b0c6b2365a9646222d47cd74e1b13732199bbfd6fd7eb3757ef9d75b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b44fa88319c3a87fbcfdc676e48efeb4036ea2c55ea15d3d2a76ee47710e7693fa446397df98069cc0689f6eb3166922023037a273f44b8e0ce41ddd1deb5514b7fb1f6407e012f10347de8fd1ee1e469da8bd9941da2be4854fdb7d15dbc52c4b3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023063283000f1ec3dec9977ae2d9cdfa8efaef340b781ded9eb1e41912e92660c47fdcb422ff8f62d97dd4123f21881eabb023100db8089781c95651a056300ff7aba9e46e5252ded1496c56943deff12ac0b335fc967327ef73ad5469eb76d01b59595e10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023068006b9722d8e9f5d2853e9962f2151d62496caf2933e56ff1f90e93b95799a96d437b48f617b6686d9f0dc38dc1ef1f02305135c31f9d65e373e994af3aff3e7049772415bef2015926d7b1c20d886d57a50778bd6f1f75616a61c318384f28eaef0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d75fae631160fe4801814989534e3b56aa0fdc81856e1daa7a1dcbd49e188d7da623cecfcdbd3d8e422fa9d38197d222023100e91e2605f36b425ed2438fcfbf244be49db116203b692025f828b08218e95d683a752cb4ea12960ab1a73320d0fbecbc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100efc38f92feba1a7da8e3e1b4d4411f6e5e9ceb06e4161565a4f43f49dbb8d20f04744c9c43c9f3b90c2b9f3303eec3e502300feb76e311089099c32e4289083b4b556b76a77cd2c74e078bea3a6c9c6cc9c5c8d66dceba009aaecfcbc4503291ab100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100d0603ebe6021b316f632f59726a402b4947590ff5310a91aa6e27def484f6aba29bc467ca47f5a6058ad913afd1624e602305297f78d2fd356d5b4e5a9efc2694bc5e96f5ac8e4a1bb2df2c315d11d744282db442b285ddd0f75bea3e8dd75df8bf60302047c435bb50066306402300a3d6dca8a4c2373fb73fc37cb1d3a6b29c4b8cddcf6e33bd657cc97f19c89a0a1eb1cac413e588b9bc261ede351b5240230791065ebffa462b05deee2ce0a2f5f8a94b60e9051c9835af630428e09c7c956b6d834f6c7de26ee01bba3b60fcbdfbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023047a5c2038a1c4ed657e3ed02bd163a47b5a3da94bc5f65d86feb6936adf8eb9cf100b049f8fa1524c289c9b42c284b9a023100b4c732407f86e7d54288c3e871b931ecdba795a70cdaea9e1e6c203dee9ba4a1458f826b2ac200b18435f3d6fa0933f20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230272992120ca443188e0b3edca904678692882ed5fdd00a469f1080baab23da09d54635bb7031afc7d2f42ee0ca0ff3e6023100c8222ab2496d64a2b24121117dc0361a6dae1d4121d9777b4238f7d108bc4662961f867524172e59482b71964245bef90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b5b300d8245274cf3a55d39da2d9caa16055dcea7164a61aad698c916a65680fc5ee7f231b13de9ecdd2d2fa2c3441ab023044513abdd6e8d2c8c1d2006fdecb71526c046dc4453e2383368fc77a832f37d2a746a95ec149d9392e9a0965ca3c392d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f4bd1a22fdf76d522effd4fb233ea2afc89ae8d9b70087b9880ab16ae4ecec35324caa7cd5784269a6a24bc44fa7176502302c4d5241c8a2d6739407cb8f27dd374b3d02229e28bb3f6d0b58bac4fc478fe3655123c74ecc9155c32b60b33d8d7c1d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebc04d8d152944bc2e684bb58194d59bd496391037c74912213d753d96c2820fdfd0674945b0df19a56deee1b2bd5f490231009f75ebae1f5605e9b9a798e5feff50bd43ed57a1d48529b3be26f3b23e71d0742c1da19ec4656f7c236202b113657a640302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026bc7191a7a73af81d742bb84a8df85c5f5c09fcd32e3670baf5e84d742da8502986c3b81c9c89f7a9df7f09697a64540231008eeea80595439cb6e3330633ee73bcc9decb2c9eedb60b1851011306071fc7cb1290927d84a7d1cbdd06cd8b6a24ad950302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100bf5036c77608b4c375f420317235142f349cb0dda919892fe33c6ece9e98d898b8ee0be630311110734ed4cf6a10023f023100c94523998bbba11854d5f5fb38663d6e73c51e6772723034fbe1641d75b622156a259f726bfc34474b7455f590a53a6c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c3212eb1485a8927e79e02817969ecd0d1aba28dc4507d87e9a2ea0d1e303cd57d688493e7eea115549bb9c19bc64379023100dbcea70d64879a11590bd0154972fd72b835de0a205ac1775ea169cbe26192626abd6969e137ac20df02786fe454a1fa0302047c435bb500673065023100bc4ae01f638c25d2baac8be99b68b6ac9a6bf80bb16e0a29950774ab94cffccc8e537d42500607a8876be0a02f02ccb9023005886bb6d3daba1421ad35438eeb003b36814356646a0081dd4f4479d3d0938e2804c68a901016b17e84e815531eb8840302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023025ebcb4a4fb30a238dd070106b1f4e3744fdb33baa0409e23c63313b28f1aaa2b0d6849aaa61a0fb4b776290dfcea9cc023100a2b07c54e46e25ba2416c2d5504259b343bafaacdb9d77d1b3f5495abc202cbde2693c97dd10dc7df68ca23de2fc7dca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e4da82c724ccade564c3843865774027d01fedf007c2fc3ec9fce18eb6b1fd3d0bf9a444cf9c9e170186ccd253b72759023100cb6e5abbb2ba4780294cdc5980dabf14b67ad009f97aabf1c0fc85f888a9198c31949d4396bfdc820d7167285de98f740302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c6f5d1f211b90fa367a2c739a6a0c35a84d23271b982d526b118c6d9600541715e536b3675387ca6268fbe5fae9e3429023100936602d0dc9f5c24cbf420882ebce738f57e3aa273209fd5a8dd5a6879924ee4cbe7fec6757d336a95c5afc33a840ce60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230402075910e5102d5d29e3c9dd7d226706c57c1b7ba7d1fa66019fa134829d67d18773c05f87bd22eec001eb2d6a0f539023015d7315015fe23af6dc264ddb57f59a07a2915f1154519fdf48418f18eb3d17cc5fc0f743351056790c6179abed11d0a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023035c2dfe65691280ad03bbd68005e988efeafc5df1dbb57c2c9cca9fc0689e6cd181e51e4705ae9fd882a62e8975cfb82023100dd7c0fc8c2010d8bd0835ff2346722da43a986158f0334b8132ac624a5b45ef21cb6e43641a125d5a5bf4076ec9f665c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d81169a341b90e0ffd94def08ad3a4b0aebdbee6d6a24463281d9130b435f031d4508b1b5fbce19ef1d1a3f39df9dd33023100b759421ad1c5913f450f1eb07170d8f3d2c9c86093e32fd6527c954a744f2dc3d58ed1f941352cf497874611cd2755e60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230274bffc06cfe75e944b9334805eab9cb2e9834e5ef7be74aa01aa6d29ca33d4ee61daca22494d37f346500612d1d4cdb02307707440f82d7fe2653c55c09767c2727f475fa1148ceea304db1f6b12de963b1712872b8bc5985990f9bd23590ce598e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023078145e740c6c7ce9e22fa6bd2027515564412ce61597eb909b49b11d7721c5d9b2bc8c3ab9fc409253423391d73c19330230497517b0574ebdfbd61d74c1d0421edb4e966e9fdd107f3ff89cefba9403b5b03b2ee1feb526b6f8db5e01146f72f37d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023026e94b6117208d54efc38839cfdfd9f375f0d29a280bb82d515e0bf44bb978b9052eb2df2052cd7a16bf97ce14c8c961023100cc2c1f48d9dd8edf2f1552c7b0aea26f4c5e7e028b50a213252a5ef056946092a639907c4e95e3130b21551f847fb06a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305552bc908d7c6746d2fa5a86353b4a5bd863bb7e6c951675ca2a6741b672f3782722027c87719c4e2835ffd8a8f0f151023100f72493a6d3ba434b6be48524f759461244bfe96f47896679d2777eb115d416975764456b972eab9e7a2a9c623000e64b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304b4a29c60702eb6a89959b29aa0659c50fb1e779f9f588277f60f37857e751b1c4feb75a4914e49967e032a075ec2b33023048f9487ee2ab54052950f51552eb4fe58685ca705b0fcc31ae7ffd0bf0708373c47545ddd1e1becf49db520bc0444b760302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023048d0f25c99c4cc1be740246c9d307442147f819dc606dc92b0af99b26048431eeb666b0176adb5456d9e9be2eaafcdd902300c663a2e946e574111aadb9aad3c14acb05a48dbaa8efaf99494f4a6e84352c63afd0d1bf55d2eed7c444af1f258dc7d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebbb4b6356a66f79ba34f6479919594be19ede082d66e23df978b1b1485205956a7a128731b85ea541daf5341f7d69a9023100c12c5a2085fd28f544d82b74dec0b9d2e64770f9236ac967781ebc29f5d59cecad76165ddd25a1e998591dc05151a6450302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230082d98c98fdf1c976c6f704491bab9a7150ddc9b7331ab0ac20be0a8f10203cf975e3f52554dc22afeab8709ca0defb502306eed6d019a57d18dac50e13f168b60d453f921f2420aff72c4368a7a152a37adaaebc415320d7be5d8ae5437e442d52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023065d75813a6f1fe9af02894f0ca569b2e2921dcb763e51e453a1c1a8d0e5dcb4c0b58c0c80d326bd83c034c363109bf9402306f3c5bb94d8606ac51aa89e01050a3337a816d754e6149c258c4357bedf37854ee1375ca1126d17e4fda99fd9bd0c1280302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310088c99a5e000c36bc5f1ade75c56ebc0dff55f23ce17ed81e406b322bfd139558940c29fe558bea2fbdeba485a927b83a023100dd3e76ecfa0d60bee668162bd49714813cdcd343639d7c82deae1a7a7b665f301c3dcec51372efee6beb4f657cf0ff550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d6b478d1d5ba4276e7feaedf5377c183d7b8df030a09486274c279eb3d52c0d8221b0dfe44d2e03c627f3de62decf2f023100c2192ca10f47c304886f296847fca09ff2760c0832b78f3c3fd561d8f4974cd39a8e00e19641e01d7c8e674f179025dc0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008c66c26a19a4d7f73a9dba18ab1283715e4577ae324dab5efb05a66c9c8885fea3d57e3465107162b69c00e86a713e2102310089995b58fdd3a7454899fe6a9c73e020dc34f2101ac300f373b165baf601804f5eb2c8f929d5866cd78bbc053cb21d370302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dc2096187960fa078fdf49b7d1f1cf445ed162066b199454266c1a16699d19f106fea24222deccaa982029d84825f5fa023100efd19c825c339e448d632f6fb7a5a1829d02913d6bfada44b30f929b8597dcc601e0ef8b913eb94e37d5c2e8570210b80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230385ee478b741f5c7aff3dbca3b5bb74e21d6206fb8e8001fdf4995fc3dbd75ce4a113d6ce56f8debdf530a4e8e29e0b902310080a21493fb6eeb7ed254202ad3006ad5d600eddd877793fe80c7bf925e838fe6af16d1e470b79d87c816a4d4dc69e1b90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230228e5a2eabb79f3ecfee9b13ca587cb473535a7ee81114a2998c22a39bc289f15a2de329e18b890bea5771ad56b081a7023100e871d65fb5d019c114f4f62529f49028f34d67c40ef1774fb0717b17f7f9b4b88ce52cd349cde9e9f0c4df21ebc911a60302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a4de7fe213356ecb25622e52f178664f495d8f4af9f5e1bf52bacd2c0667e1f4aef872464f9aedd3fe20fb3aef407cfa02303dd6a5a484db5a4995ef0c148c5a6018c8bb48e0d68f8632ffe4f08346e1a97c4536ad14808dadf4040460dd45652d1b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303259a066c2b9cf6d12b849b6da1d69efef3de56d6a70c33115baf859b6185be265a65657e7f9f0ab049b018c120b507c02301889eaaf5edbe114504ccce484d66cc64c8f3e5c2fd93af9b3ee37315a0aa17e07eacbca44b10fc01a37afa45751b1bd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305be61e9b582bd68cace728ef35c12fc3e7268d550836d64bdfd3387b77975e4390c4dc34791e856833e66cb75994c244023057c5cd33747971088e94fb1791550963301d5f88c7dcceb5c39e9d400b06551a5db0a0284c45a9063195d9051a6637100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c04ea16f17a6c445763174253033e8917bc9034c6aa0aa4d8db3f2358b301929314c80440ea83690005e9c9a80b477a2023100e495f86aae967a89348ce0ea6aad52e5dd34788f52f253b5e33098673bd459b44e3b372725e96ffce9c692707c8e1c670302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302d7f9c2dd4192b295cd08bf6caed5746f55660af72881ca999592a7075deec21e4cdc91a6576478d278cf25d0c0789df0231009270d6f4c5bea9378c9277c114b1efc589e196207b6f76577b48d72551a8ae971b74688c20c45d2a505bd5c2e0dcfb160302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100b8bf21b252dc5292b297f54ae6a5fe6bcb7cc37d77b0faecacde39c35a53490ee9003f6b7f2aba5647e0afa766f1774402304775a8b6705690ef7b7fc3cd3e1a1fa55277825ae13858669c0e038211682a04f30b5dd57587b4bff23efffdefe5a0100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a0fc36f2f1e0763e7ff197b26a339e04930f01f8a1307cfbb0a03aeaed4e70dc391d53df8db3115b872bcada0046c2c023100faff91e614ab8709308e46f016a6769151a868537402665854d66bbd8bcf8a2bc79fa5609b63e21e55d01f8ef7ba32590302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023031f93024af82892351e7deab8089d422441deff1e28d69ce86276dc15fd954ae44b46bcbaff32e882612bba2ee0d0d31023100901d5c02b1597997e172450e73ba98a2438bd85300d0c15c8939e3b121af16cc682b7e641ef9d413c5720826f033c76b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cff15c92dc4ac48739e1e852f67073bd7bfa5fc418cbb188dd009b1ff5b4b713f00c0d1e60dc12970d1918f637761f00023100e93eb74b3a12e0a0a00ad57b528a44302133f8edc5af101de55c80e35b69f1d276fa5dbf3f4f364de61736172e001eb90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5c6fa5bd8b4e1b7f39d3aee34da777207d89b3a8750bcf6a375837740d2291514fe61c99ce2b08a0a3a05339d3b82ce02305c16d0c77ab5c615191ccdc2d4bd232f68445e45497fbd516464ce4a9d221f0a518a4cb8fd15e033143478dcef9da5490302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231009c583b806994f3a4027d257502160fb5312d64a00286de58353c2a2b47cb93bf6462ad7c4507a743eba3d918cf6e69b80230504293ede653dc6a59d885e3212759699d871e7e4913e8ab02f17a6108e4331bf80bb9b8502a372426e3fd987fdbf28a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c1445b302c00034b397aae4bd3513ff2d84804b55dcf2ee4922af28921346d01cc32101d25f48fa6007649deab0b0ca5023100e1f39b39cba2c20c0949905c77ee6f6964a18750526b0074c23d73d907fcb3b82cab7b78b0868f5d2bd3e8498eb33b260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100e73ca4f39071477e8db1d7c2c2badb0babd31049e04dd3c32360ab5e3546601cb3277833e73677941ed75ffa8df00a3e023100cf8a697b6481aa72ce6ed1a904a24741203c1e6eb6ee96334a175afce033d1c9d61d92da30cea8c3f9108528616bb6260302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e014c571b1db294d8ec4062641eb0d574ffd0a8c952a388ef88a630d7784421051fa3d2332bc13cbb280aacdcab310990230140b5702d050426ae460222f74524055bdc2ebbb86b0fc715a40c6cc7000334634dfb6341eb74881d24d225759f72a350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100e011dbd74d142b33a4f70dfbb32a5f81689a2abfe092853dee23f653c0790317fcd91a2efd248c74205720c19fefb97402307f281fb76a3fc0042320aebe903555adc8da2ce0487c23b4f98181feb9acad4611cf00a838de63679a15f7aa3654c0970302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008d6f1f34969698680a02ee3c4686bc237a6faf60e46b7bc6798424b97c14749cd93b502238099a912bfd98a765fe4e1202300d62170912c854677c90f919fcba812e0c0ac01c74e0ba1e16578a3f34339d39a1c2a18cca1f6fa3052a4b32c76ed9940302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402304c8d772110e43f5d7bf068a1951d992242ffbe447241d45ecea1b9a66195ad1d53b600b18ebf3101dcbd89ffd228416e02307bc1ae9c306546683e8857febdd22d7e0e1645bc976c00ba3470b7458f9dcf12dfde4e46a6191ff40f7f38c3b83f81ca0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100fe7f1b8f7258a08251438c83fa2b14ca6044d777817a570d91ca1f7032f84259977ef8df9d32689179c497fa21d630dd02303d8d2dee0eb41605e3376c27c5af2dac8c82d5754549e9cad73dfafdf779c8dab02f758c7ba9db1f23b7f51670f7ea8b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100f8658f20fbb5e437efd928332f670dfeee949994068363602bc142095f69090aac79c28dabc7244cf0d60c29e9205e45023100fb084d806d079b75b50b78623cedee6fa215bf521c9834cac73fca92726e4e16f90e5ea854063f452d275909eeb8bcaf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230219185036841c78d04d04c5e0fbfe296be79bf3e8ce0185a24b23e5be2e1abb77ddb9beed615db2d11dd2e8a67c48300023100dd936f22d2138b997e12b44118da3f3fe6beb690e5d9a02028cb01bf9f66525a0d7da13cc4a01936a77488b7fb7137b70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231008d8c9f8ec169fda15f3e0ed3a56750c9c6c07c8a8b315a6425539766590437dbc01762e222b4344956e21d6601d186b5023100b693153dfd3f58c33c806fcc3ed1402b17a58378eae280501f2408acbd812ded9179b73eceaa99513cc06a9c79e0e5ee0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023055837a0eb6c221c2fb9f1299e284f591913673e2674b5c073c1292aea28f35d10f73b966558a7fdebdf70d808d9303c10230303ac50af2561c84beaa0396a8e06116e706e11247cef90bce7bf08a5c9da8704b8476a5ad3773251ab097933bc721e80302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cf9b971ab2b84d1122a0346792fc59cf36baf00de5c04b7c5ab6c64e3f3cc87477430cc3ba4c919af6a3ef7d921d60a6023100bb83374b4f3d3c0c40944c9a56b243e3aec5eb5adb9cdcea5c456e7aa420c238a9a181075f93b9d7b3ada25b7c468e060302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100dfadf96301b58babcd4cd72283ee6b0c2d95ae8989b5a60f3158a912e5b422e66db515c0f0e7a203d7caf6d86918c6cd023100f1de428977221d684257ba488c3bef0d6f685e345614dcb9909962f1709aafeadf83fb5f8d1a2986cf99d11114c823150302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230501f059af728507213fd5edb36dfcf8642ee4c0914d5168c491b6c84322656af565147a988a78935a461e7f5c0d1dfcb02310093bf1a0e22992cf456e31a19c3b4d060619445f99308128b6ed058847f0201d75ce9579874fb3d94ee44924fe152913b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402302bbef3084ac225a092135378893349e2013912d27693cb635e904cd28bae35ee2202696157d5c12e9bc0dde117e2872002306496a196f37fcdfa0175364a3336b71a6d6cb7e8e057c1ba6dae7c3f9285a4d59dc9b112cb34665117e84a26897b09400302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307488190a556aa6fb6d3be725b8572c6f175a31ea773a3560a2df0e6897ff3ccee53221a5424e2d24b6f77b47db38f778023100a13088d208e539bd01134d213fc4bff00b5058f61b781fd4ae3cf4d6a4985d83c7196b650c5ed36ba1f2e9e0d97c1e540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307defde32649ebadb02e49017ca902e4b9fcff9ad5494eeaaca4bb5c688becae216f792497e2096966e9648e3dfc69d4b023100a1287b6f193a114512326d2752f4ae145ba3b1afc11cd6b8531396ea347108d6d5f4875adc4c4683565a9788d9ae1ad40302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502305afb726d0e666a2f38675c4dcf4dd99a340888ce6295fb51337c2809dadc26a077d4f47550e511a1c61ce87a01f37814023100ae7f56c203e6042ea58a6daf243f32a6d6cefdf29d84dca3f433ce185e10d673bd2e2af5f8d5e272835824da580ef8100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dbc241a04e67671145045ba9c6a6dfe66f270ba006e0d609602ed9947758907593d8d14c12cf8783f3348e63c0263672023038794ee1bf4aa1b34df7e5b3587b9b9a2168ca5bf5f2093381ab536ce13b34828496491d92b70d58ab3d90f2ccf6ada70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301a4fa52db2228e9425cbe9be69a7bcfd00c38b824e93ec55b043616eaec488d0f683a14338d675fc0bf01113e31570da023100c6ce1e323af9eaf0fde78c31b2ba0f42fd8d7bd3a56f47b67dfb0e536aeea1ea7e0110a956f5bbbe869616b6174ef5000302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310082aa7f3c9a315fd84c8f033a66fefde5809b1c387bd02c59bd52a4fce01b0f4859ff5017dfccec0daea17b0787ed900a02304209b7f8c6d7769d08faa48fd72719e6cf38a60e531a754d9e3434784173a88d20c8584e72461421a7f178c458047e070302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402301d67fc5bd24fbd5d28cd7efc69b27b27d2e80a722de99877c98dc0dd68c410dca7d8cd22883858186a5caa4ac3ab1db50230607373f47eaf93bf268ce48b70dfcf03851a80e80a694a185666a0ff36987e1aa348d4ee167c26d3ee362836149eef9e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301663a0a330b1f021c6ee9671efe22c0ab8199de2ec3f825fab1e6f3c3973d2869e96982b5426a2e9312982fc1a85bc32023100c5a09b32c169968515f1e9fbd939b556dd6164e5dafab83a9cb907c8f9ff412f26c4ef3f879d2354fbc68da840da46330302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100b8169b89ce60b22f8e4fc30a57c99a94866ad874547a50848fa94f1fd88202925d27c104784e768ffcc6559a0afbf2e602310082b1b331344c4590fb4a2ec558ede0cc333add0c1e20edb8017dabbb5c7ebb6ffafe003aba8b5a955009617ab8766d470302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a65935629793c1411e713303dbbf35889371d05e108147f2d198a8fab62c222f11c70bffaa6921e7eef1da64a8b4c534023100e584a45d7519e659a6eb8d5ceec092490052193c169252473c23b823ab236402bd87f2a115ece6f3dcf5ec55bb67fc7c0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023017c6e743a11f998e030e95a1fd12d7440056ea3d6740e6a3dab3f859188702d56eea0adce1e3d224c7eb586f17a3223a0231009a4a272bde168cb25277509da12dc3f9807d85be3afdf6defa1b2fa42c881143d1fcc4bdf126ccd1052445ebc6b38b5e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230740bb0610551bda496a1bf4bc2c90065d2bd60072483c7ba854fb384a4ce8b62d4611868706968b3284c39d41c2ee732023100ee05c95c85320fcdd94cd3689060077670527e6db0bff0dcdcdd11fde862b542574b136bd464756702bb30b0243b71e20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100ad67f71df0f7a8cd7be7f2b95ddbedc9c66b2f1f3b8b4df2ddce4f6310f53da0cbd6c30f4313c13902fabba42b650fb402300622d6aa9c0f1c71b5b96b9a7e4cb05500778b0516bfe94921a868f18f03a31b9354b4e9823505d89bd7a5bf0c1afd100302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d42f98e2462710cd33c52d92139cd66418eb57e4c13954e0c4bdad25b052e9ec0f11b1b3a44d5e8d85f4102910a68c800231008e0f784174602fb5d1db9a30660a4e7ebddac37513f451f60751f211c9b48467d7a053870097cf424ddf23c020a2164a0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650230152167003f94c9e0fff41f5a82607c9733a7bdf75cb7b345c9a62f42743507008c834108c61b5172b7edadb0366b6c7b023100be3a65e68c3f685e4988637c5fe08bc3777b9d47516d6e426c9309403ce606c06a8a319cde32bd0ff3a64f56dca797580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fa8122512b80c7e0f7c84958a58b6625af7d2cf69fe7e5a96677d4fa8d4196e55a595f4b0bf0ceb9cb17ffdc8bcc7d0023100e6a6c90c6ea31a46c9297cef3af377951bc9be6a0cfcce759883efad1b2cbc794d64b5fe1878c53624020f01aafa3ea90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ba51336a454d0d03df43145267fc194e62619a1cdc9e571c87890221e01ad58a0d581843c75c03dd25fca92a1ce09d60023100935f748f5fa8a4077f1565019fa7305f4e76a620fd765c0c654929241d24d806627165bec4a6f8ac7e7695c254703ce10302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303b2502c40f23e5888f75c8dc45f9bd006e2bc6e72e9c51b567ce06cb76cffe91ef9105a0c6e09b0298544d058067b13b02302c54be1f09f4545283ae1fe29487b368e4427e8c1ca23c34406cf478887e60494fe303fe20e60b66d920f69f3361b3e90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310089841bc335449cfbfacca06ba1fb412f38a907b9b7193fc8b62b006b83feb0c73ed35adbf79996b97737c9ef436928de023100ba05678730c75e734dc7fb06a3aa54eb93c2fb1c946f82b25866b28b96883f430db2517257adc4b59dcbf09ed1db19bf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023062979aa3a236ade7a67b938455e19a1e3d812f17923502ffd805e0ceae182aa953316ab1cee3328d98ed8ff1d8c00b54023069906eb418f96a5f6dc0d9f73820b95ced687e00f40b3a8aba8f8472046974d006c33e21983dc641c2c47bb0a1412e030302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100d9bd45ca2de86f1ce9d6bf3650e2e09c548fab33b6e99f66e94409a15c41c0fd15c84ab339cb5b9ac4bbb4698d697d0002310090508a22ddc436c6b30860bdea4dd97c2c949c824072016d955f981f409bc0b05e9bc4629972057b230dcfa169689c170302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c7ab4bba828e7edc24b31cbc87058d0b43309f520f402e71c8876bad16bdcd2522d282413cb1502db09b5c6c24f4df6402307d1720f782563a04536018dae4141c575148163edfb67a1269802e7aa099abc0f0868b812a4c04fbe495da212a0082a90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307a2db8a3573f155a0bc4d24812b54a2fc2a5771291da5631aeb957680e9760c27e88a74c1d60283d3e98ed5ca05b93f8023018fb3e5b0f4928e7d314b1a7e07ae03d6bd88f14c69937d06351eb7bac76219342e1bf957b5fbd7ffd156517abf0d3830302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fc0a5643bba9a90add258a9d2e2acad3269205adc6cf05ea29bd1b520c7452ca59091efc231cb73fbb286e19905cee410231008be46229e31df59f84b30544f9ca803b800bd397fc51f0eebd3520c0f8f553569596dbc19c3e4e92c4f9e08ebb3438710302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230644f959719f421ee18e1ffeaaed35e93a9f4c7ae294cf28fe36f6cfd6d341d72735e0a87b3f1be06e0a7604c1f620d10023045f37f52acfd1e0e84cb2dec645f74d6684ba748e17b2a8ef6bf3a913f34f7af95f9a132c2e01add7a9686244f1759730302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023074af6fc6a64a4daf25f69363bd89d2751860b4a23dd72f9156162ad50fb24797285067eef5e8bffa060b11cf528c354c023100c015d3f660589134be0e0453ac07f2e84050b4e3dc791769c5d9c8dfb9127760e7a1a3b546678c34437cbb145744b9db0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a45d21dbecf9efcc0ed59592b4f35f8aee097ac4a475205077ff1b36e6e7f6c818938e5ea5c3e30c3192d0549930c384023100864b27ad53dedc577a57262e848a1a7c0139eb10fd0fc2df9cf008462100ae6786789f4b263012ca3a8d9bc60124f51f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023043bbf856cf412e13a173f1de787f2a6e6bee081b8b8cac07093a87d8c234469cc6e6bdb9b520c4494207769d85d80ace02310092997e1fb4b4b7e2dd539e8fe9e5b1911d778c465fddd07e7cf0490bc0a16604f16fff21daeab268f38495b6fe5f95270302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100c8e2191ae749d50217e2c883e77efca19f9c5c29b534b91931b1c1aa1dd1bf1c0f3c841c1d5014dc8546a167f29278df023100e0705dff0e248e70a7893288dc82e0303c61a16eb295c0f69ad10497ceaa23517e9d45f4567105b6b8042613b7ce58310302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c7dfd1b23701cae424601f3db3fc78fade30c2e506e89b9ea1134969c58a6838710969865c46a08b9a91818329f9e97402300680303941a7078bf6ba9a708516a44c758046c1c04a84f32e2abaa6109f3f376c4f089a9b5b14a1de8f82d8015aa3ab0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a92069ac5e37597adf137a396b0d30c5be95e763c6a63d0620614f80a8ceed3a8cd8a555dd898f3ecc50766b86143b66023010112ce860e28142be3fd7cbdab96485af26c8153987ae36962f73c500917790be80fd76e4b9e99fa00b53e070612bf20302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502301fd39c634d286af787b6c289185d0419408d490f00f56459722d54700a9318c20a48b65aab8f4f32c3fad143211de2a20231008ed718954a7f422cf1a6d8ee0b274d3243f2ec814e44da1430a802c62d131e94997e3be4e3955960f06d01a7552a9fbe0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006730650231008b0a7a319993ad3b50def0eeb4b37f851f623ded0656b75d9a4166f42b01e8413715695f83cc2f480c6b3bcb9b3730ba023004c865b4ca831d027a11c79c76ae69b67fdcb108058ba86d00fdc0c0287b3a866641e6fc89849722411352805491d46f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502303a89e53d9cec4bd1415c30134cb169e0351346f7b84ea76d5e23e904c9c8a203bf1ea2f8040cbf66f6da7e069ceeab8a023100e8124f2b985dae93dddb6fb67ccbbab0d790b5fd3490be3aff90a42683ec5c55b7471394629976c9a1471648c49740210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502310086a3405aec3b673e610718cd7d6696481427fe6b3b140b1fad0e8c29dc68d717e1bef685d9beefaa5cea394488d9280e023003de3003dd5ce466f77cc60e01fc93c8eacba8d91239090ad1df9a87189e247b62442051dcf95f6bca7910751cb527010302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230122018ec44c0f84945d6675eb74c7f6c1edf8deac3975f976c658755b362350b7c02b5120417c4026193e212746dd98a02305f55c95feb333dff370509e59dab5558caa9ff6096615c2a3f133719a0961e334d127fd9b4795dc393b4666489df3ae90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100a0bf531146408e6e89f98835138ea688a2008b7ae3ba7bb67850893f78b2dc7dd721e84203856610602a74c979ede0c2023079d3acc3185f93a02230cde163a657df74cb4e3d54a88d3aa65196556b85da2f2174f31ca382762bbb7178443be87ef50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023059f409c653af715a1c0911d3c5e0da64ddb3e1f87112bd7cb0f9d9fac171a7792a7e129969b896fadca278fdc0bf8e00023100eeedec92bf100f88ddf4558c682cd56fa984da359d8787598dad29a6d9d83ceb13728ac8fb2888cfb6adfa72a80c90550302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50068306602310092530cd7ceda8fb13ff7dda70fad46f6f23244e75939a5c4b08694590b48f7dabf5235fd7ede9fa6d9be219e571db7860231008a25f57e95a5f4947262cdd8bc304b465e1151c660514ded8d4521616507d1102ab1ec6a6798ffda88af1b05361cdd9d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402303094d3998475c0943bcbf2fd31ad870d107da1443f143a37bfa4044d2e6263e36e6b5ced88f50e7517f2f2930302f152023056d94b404022f3e739b683b21dc6315624f78ae5c1e0f639362dc4c5297a512d5d5383717eb5efeaa59b215600d663580302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cdfa1f3ecab4fa3f3690f9fabce215e9489ff85c91a64fe2b803ab644d5be36e1db8fde29be269c8a709a60052b05ee0023100b7f862df386215c277148391ddc988c1f7902d9c0f8105f5949d022be8441dc445a9241587c97ddeb6746868c0ac21040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100dc43ad247f285a8a6b73d28f8591bd867083e657cd86c30b9fdf606a4a4975dd4cad65194096cecd390c3a3f2f80d37102305c614199f7837b52dd33424944e2965faccac14a7fb2bdd3c60d0a45668e5a7c603ffe6601ede24adee298421a453fcd0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230197a332c3eee2650e19306e8ef4f57628f9c857b56cc19afd6f11bd106c128ae7634d47ada2f55df9b19bc2a457f3c8502304e9ec87c3a09d650575bbeed6e188158c7f60332c9631952a312efa32348733181e050b7dea1a9e9cba3a7cd9b973d3b0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064022f7810fdbec9534038692d956deb3a70414f417affaa8c985f21de69d258cc24f9ac83bea7b435be77c0b3961af55bb1023100b99132abcecb37be25763d8cf50dcc5d9e94457fa6a50315bbd791ed86a4f1c66227237a16b30756ed9f854966ce31650302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100a5d6d6778f27a03b630955be78f60719518df024ff6d071b0f268c942ab980ac0cf99dd3d71b6403ff07333c13968526023100ef3bbb52ba2dc7a17d82ed5baf8adb3f70980328fb1cdb6b9999b86bfeb9f493a05dd55a5cc0c612cdb160c6e857b4040302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100ebb30dd3fe8006a94f13b9a78afc65f856a4187eab83e59f39553f953dd7b600e6d1fb5a5935abbee161c53581b738e70231009c9a8d0fbb6c9c425b31a3abb03a4a1e4187961492c1f3d532871c8191d661320ff94acb90eed28294dbbfa4bf245ccf0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023051c9e9086aad97f226f90e86d15d732cd0db6d08a6af284ac5cf28126c26a39067099ed3b74cd80d531627b537c0a137023003d0ab6474e7240a34a2b8426b5ea6550fa7f90a7ebdd79d1241ab7a214ebec38577b614a03f0c2cb491ac58f9d9fb210302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307e338cda0c985e328bd7fd71690c5bd8eaa9892642aa84495f6dac8333fdcf2a57aaa7dbd7797e3e0a14ae611bcb589d02306001d4ba889abbeb2a7a91eaeb68c9eb8d762d38dcec8d94d51d65180d6634181b5e7eb697de3d1942df80533419d81d0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402300d01f25220a84b2ca9ec376bf137fc97f4fc8d7efe186d1bbc054ce1657a6544a2aab61982dbde971685d6fcb133620a0230798e4bf59b3e539332c6156e8be03f556e2147bd55f4f278c953347ecfbcc5c00c25121b1942001c478f3795e1f8ea850302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c5444d8eec3adb281d61fc59e3d063ae52e6b0d4d9bf9e94b1934bc8aa54bda34e4956ed555e410a8e71b79d8cd91b020230759e274b9b439d3f459a8ee681ca0544294cce14612889dd38e06e5cba51ac0750e8057995b366b6665e420c8dbf29800302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502302551e90056ae059a4176e21987c3122fe0346bf1577a417134365df84713e427aa11a2e83d585bed93f2248d0f9dd0b8023100a370de433edd054ccb31a8f92eb2bbfbc6c505f56cac530281b3dc40c19f091441345e946318823ab2e2e8b787d1d10f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100f3becdaf8809f66b63e1499b9b3106caf4d636624e176887e54ceb20ea6460264e8c2cd00deea14850ace71ca119be2502301e9d5e2b5ce55b62e5c66261b4b3af706cb17f49c76f04c1b9418c15e20add26480d4d8b84ff586913970d6e615c48200302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50067306502304fa023211e5a479ced579d4946d83680a2954b064af7c59e39ade35bb8d86eb61e112fbe91b47173e7ac7359f21a352b023100f15955804d92ee6eaf7db0b4cb6255c81d77982a0aa07e02518c1d2cc05f29d4ba88654c9a099a880b90b2a31e14684f0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402305232d3978d45a4e121cfa8a3139667bf14995ab63a47fb34815a8401bddeb9075d43ae6518e4bd58542e4db89db3772202306c0717d35874fdea0cf2838c2834912f8be9ec941521d3c06fbe544552439ab674f38ee335c11cd1f0028c3cd0df75140302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500663064023047234e63b98beba0162321e0f30d21241a1d539c539d843e8d61b002657b6a3125fb5874d574904634870b27ca1e342802300cf59a504d801cf46b54244d3c5a067891c4279bd3e9e1e747305d69707e9905c25979f87cd97e766d805f2d4a778e350302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100cc5707632fb3fea42018043398acf5da66e7a631608f4c9faab156397697b5179d78eb11850546cbc5f3cd58cd05f622023100f85808db8240bf7405dfd1f6e32ecba67006f879d786d02cdec3ad3cfb1202156e6831a3d2c66b8402347820c5d20ac90302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500683066023100fef32056abd2b7dcbd8edb21307788462bf6a0fdf95ef2c90eaf9e754cdf9d9061dfabef6e316b6e1556461fab71fa19023100acc39c653bf7d215d69fa76b55288ceb9dd1b367070b81e9362b57517c7f32e43fb40278f2f845424c1a17e725f8c52e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023053a393e0da693175ba8548f7468edfc58f20a256ce9c26029f3b4bf7dedcb317bf9bd134a3c5a302b06f192ea2d92306023100e333f3185f6c53d48612e40e8cae1baf56c1c654ca608e8fccaa5a3d54e95d06f730b214c2bd48df74d674f5b984a03e0302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c50094830d1caa4aa6778271ac791cfad2cd39246f9ef800e1b18a18accae122d5ab2995fbcf17ad87f92aac3b00cf6b02305638f56e6a2e630c9788db83535b294024faff4a72b408a0e1499f7e87dea14c46ff620d709083c144123b1d69ea06770302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006630640230408bd30c55ff1587ba380da3a8e62504faaf7ff480725f33c15d64054f8a6fa1053e792eb3cb0dcf53b3f8662f58364402302a54e8690dd219a0c45270f389b30c5e9a3e876a23046abd774b631cb179bacbfb499f07cc3d4bdb74b270abad9999a70302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023049d4221b71ef4e6454f4a771f7cdd7f8bc9d66227cb51bda68576c8c4bb29a833b77fe37e7584f7d042417a7b23cc69a0231009998c360120bc12cf90689da92c895cfbd53b90f2075d6774643df01d24fde402fb29223e94244ae65fffb8851ba73c50302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c4e1aa58843edce463da0f7aaca278911eb07fc8ee3dcaf87f4c1e4857d68322a6139d924f4ccd21e6d5b3ba2779088202300eb4652c2c26ad6d21669849dd217d2831ca19478ac30f0361da6cbc769fd20dc90d901c7d3ab01789a6420ab27d20d40302047c435bb5006730650231009299597f09ff39e1bb984cbb23602a089791d70010d08d436dabc082155b26c96300b4338c46f6700a25fb1fc5600e5102306252dbc84b04615260e9d1241768c2553f355fbc8d57d5c25b52520092d06a6685018393827e6c451014574e24f6c8540302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb50066306402307647c2dca9982d28ded46976e625b6c9069dde5ac649c954b4c2cbc08a53fb18fb78f63435536a8ea75fe50cd9c3e9500230372b3afcdbd82003cf5c9df7c4d1f6546669920b6ec5ed603c73a24390b09c74bc2db6ae5412534c9edbc4529bc8a6660302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb5006830660231009de733fcad76030e70748a94c5c5880cd94aa05d324e970492f607e37f1bb7b83947ab53331a8c44b8700671aadaaf330231008877e4e4f4716228407e93599e5d727a4a0f90307386ed8df38dfbcad4f08c79ce96c9e3b95b84b51bf657c85c8594420302047c435bb500673065023025f3350c86ded9ca12935363f093696c17ace5a683675a6d1bd53c5eb515dd73d723734f090ef15b15608746ae3018a602310098f024aa094e31cc44e3f8149bdca9620fc5f25dce35392492db12980c243769e65763afe09aa9e35d5847bf490f51440302047c435bb50067306502307420cf53d033c7d94528109aee199ddd3790e3be95780a7f076946592751e81d5f83a335658b36bec661984aab3fd748023100b154b4ba7178c6d80b95532f4db98e08b825447105fa6882d9e9cb2f8c72d8e8783f52f0cffb5fa1e13e9bb150a0bf6f0302047c435bb500673065023100c0ebd826427ae99cd2a306c8b8c60769946c89dc28a258a094e74aa38546bdc706fa57a8a33204eae7eb38e4d55c51c2023032ed86e23caeec5e7c1b7f5679912599827ee6834766ccb08e3583962772b37e50a93f757859ed39c2861b060c88ab3c0302047c435bb50068306602310081006bdf72818e577b0ae75481372aaf6853edbc7c43a949866bc541aa89fd856808e51389b3d4d5b1668285740e68fc023100f34f489c440d191ca53dcba340f1856bb3892d5e6734a943af43f2134c2c2e2dc748ecf339f9a1a1aa9819163737ee4a0302047c435bb5006630640230732003074c59c5d0be2066ac890010c5d00fadd01cbd157a9716b18677cb2b4016f195120ad1acd64c440568a66902dc0230187363bd3be3497b03ff9b7d4634c09bb5ef646ea78346317a64c161b4a4f97589f0be5593a04c086a480d13cef79bf30302047c435bb50066306402306d1acac8ce34b3127b822e7015c5a4a896605d9d9ad65a2792b980a9f4f6a6a7ffb0b05c99dcce0f0c7dd634f684e27b02302a41684e72c6bce83fcf01c40dd89dd04150225aa42268682e807178ecad7d9e1a0194dd826f0044d49122deb62c3a1d{eQ{K U]]:m UY˛Mp fA{m+:YQfcWLףjmS@ICĤ80dC7M$~6x GtkaD gGX-WUa mNWw 8|~!/r?`J fYuBhj&Ŕp߅%tKxd_D:X=ƪz&]sAzi_ Ӆv1M'qSRQ*M~nVap+KQ{9-e v0kd gb6O4;1S_?`XB (B|Bw&x#AuvUq-e5ɌP J\n7 , p>Ɇ ?Ɇd / y"W jO@O O ~O O O OEObO`aO h(8`9`:-v`>}GÈOHOI?OXY4\O]O^*b d[e`fclftOu6Ovt*ɅhɅlɅɅɅɅɆ Ckernel-rt-debug-devel4.18.0522.rt7.311.el8Development package for building kernel modules to match the debug kernelThis package provides kernel headers and makefiles sufficient to build modules against the debug kernel package.eJBx86-04.stream.rdu2.redhat.comQ`CentOSCentOSGPLv2 and Redistributable, no modification permittedbuilder@centos.orgSystem Environment/Kernelhttp://www.kernel.org/linuxx86_64if [ -f /etc/sysconfig/kernel ] then . /etc/sysconfig/kernel || exit $? fi if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] then (cd /usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug && /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*.el8.*/$f $f done) fiXS CUFUcn<y92%# (j4 8!Lxj w 3pM/& pWXb=}7tf ,TZU6GL U<; 9 PWTTL`9 lT50C> C v> i3w(+YW&rR9A9 ZqU4 +#+ NQ}yB tou&TE6gvDFMZB/ DZ Mh/<)zTX +w\8N$ixV B 6 YDHL\g8g6 4$,l 4:]<e M% _^XRJaCx 11xXWU3^5KxVPVVcX e7\s>FNBa|}S > 92WM_o#3sXj3{j_w:Xe cqknH~ "ER|3.u@@dzK~;yb ap{ m8?6]]R<<q yK< aX=cZ y jz'^}$m kjr&.<KJ Y7 R 6#|t5 M[%+TJ=K =qk  815-xn#,Gj]nk C hccso$G+gT E d )2bcNZ_|qEXLUmaaa"af; l9G&b&[$!a h;r 6[pi #FQ;" ;i3leS=14j QiCJ<^n?u$|f?<i.,l 9E-- #- ) [E2 Byd. ( /B$|\,>  S/ DH  &c,  90}%x\}7Y  zJ K@P99Px MQJ : /D.` 9 1 A  :_u F^U!6 . / ] ;v'Q0 5k,<5J h % A` X: O+D^hk c"C WI2 B B cXo_# &t _ F+qM3e # I| ;p` ;.9P Bqd4 ( 8$KK1OLE $ $R 9IY l f]Udx h{C $,E<C4 9%T#) 9('#&' 3( +{$d@#jARK  <E e-i{aEj^" & ! ;%L"!E =/x[X[52u,5'%`%T'%<!gqYws h42 *C Im9>/#Lk}Y&nCC (aR9M %SFe5l B.IXo$8[? %UZ+I 7B3 Gr3VW;2 fKvaMH6q:O "2? ,.z:i1yYtX/; aXh-[A?tA8d6?qXk`%}!(\'m jA[65d<\pL/kg= ']'6 eE6>PN AP{ a\AKGOTt:K ~2 fD*`OJLi' Ac%z*bpX.!x,b7F G  ~ \r*tVf=l   v fVt\"uQ 8&F!b[^]xk WiW\uk0J?&imcB S F  ag \ W"}Q|gt(I  1a\Z"*hRlm>'YJf e  Y#tUUKwxq  0or=xh, [ -Fn ~ o  b|H*'b4s/ 2(M-5=%{y kGpR %u N=(kx,RYb2(ZV wR{UoS hT-S LX~ gcex21 $ i5TC yv)*p Piv ~1 9;H[J5& : M /H3_<GSB8 _4^f0sqtVihO3YTcU< G1 24L;Qu'B- c4q*#!AR^ ^p;+pVcI TtZ% Rk ew-pF? b^QF^ /a2x\R>}j9:Op ' #"Z  05 W*b7/X,/Z)[KU?=[]%PfSG`Z"V$oN.ayIL &~!Etf[$'AQ)ymK6Jpm  w rl.  U6[q UE zk`c"YG 5BR?S8a[[ ~vXsntTIh; )we`WTz[4X({czmX_S%i*=Ud;E(4 FSJS=W+ )-k_.FJ|"J=uQNiMy$NX7| AM[$eQo5,)RMPBT]'+.#HD/Epho( # H H U^ 5eh@J\^(nSiiiii0e^8$F\mOzW . ZKcHS@vu[|zN|Y[_h_ `;vX t`' jzYNdXb v59!N\y]k<\R oTL5I&]R#`B5;"w-Gc &9# IO>" z 5B- s`GaOkA]!hzw $DP<6i  S,=]gFz 1KaoN}S$Q7W&&&f2Thf#  h_) 3m:9d!~od7|jQ }oN` ;7:/1-w J cq% Y &Z(xj@-\ 5i La9~~f#^ 'I9p<]O}f@nzSYnkQhLH18 hD{WMhga-/zӫ +jqF D% ! _Z % R6Njo<V0Z PT!  &-ha$d|R% ;<)T39QQ'`b|#]?J@x|M9M<a Rqy)gb-5a[JJa|!{ ,-eA^a%W Ota_ (GG' <\ wcsli>i}-=~D-3/'  2aao]]e8]e3xb^U2 6/o^*;E4)y@|U +QMJ&WgRC 2UZS*E,)a6@vSD8 {E+0=!x3/gE j A?EBg[AVf ^g&GpV+[_UY Sz -QuFt M5 mKew$ADK!\8Vd nOcOBQlH9|4YL|! *_ n0;d ",t#zA;uEz#s~Wyzz ;R ITWp`3y Mb}I9*`}m r;$T6u@  hJdhf3= = v2,{b= q#CAvSYD/-c{?L3IwW XR^s_$GU /S J#57p'$_ +:{XE \ P@ < ")" X 8.N0_^gd%q/Vq^!  o\2V3O L0Yj4NIt =L6>Kp4 6 2/P1H$I)"./M N| ~ { # j%}j?=f& |'UlN Eo [UA Mi%, {h}4?K!A i'?_ g 1.,=>  P $UM O+O?8,]2  'p)5N&&!6 %)4FOL&x[ WBK  / R&g R$' K.!G] ; 7!Z =2]>T AtX ? cd* {19u \q|#{$:%u M )0* q " o ,%E$ ?q+B Vva &exv ~60! $P2H!~1=%M.$~041!PZ g$N, [?o/c k,#$&@%$NJ"?%t4)85B st c  IRx Hk  . R T!,(4*#mS. M$   ,uf$%[\e*F K' 3h=I ]M "f  4x~  # . .@9g+!gPP<)% :  P 2   J g= 5L   (ar # N { ? * = 1 V  hGM N{)PV?(t@PL^:b    [.0n t^q-"b [ (>6 D_S{ t ".& S'  >   T?(&-P Ol/ 0 (W/4Y/ dX+ e<Ci5Z8bCP 8S X %>Q;*MjGS6 F6 W8: Yte46} DI M#^A"nj'(!H9K+> $:K/.ipN`bE-GLh ,;:#bk m| U "nZ6L38t /aen NKb<1+D")oL~ L*1[.W1:n$ =3 !2LI "c"+ npT+a R *oZC]6=k("W;G*UCgKU' d1 uGp)gj/_ ~B &q O( XH^ p(X a 6,G)B )u< A'&>@ /%$) 1# k+*K6s$ xS@'m*1AWN d:tNS ?nc>.]}^T];fO`  UF23#z + zI0!8 7Aj0 i=hv5 I72\  's)=+%U.lL yP ?  URA(5H@[itZn& `| + e f .!&2J:`-< Z 42}.@ b?Y f!29~  6Ez1d ;-#feJn-q+$CR7?ea=a+)Q [oa!PjXv8Y[ 8 PM  41~^= < 31[| { "6KP K*3]cW- r C!3 !' _ I/  K %= K&v.m$s }i)3#$Ug.Jn nqTQ 1 Ni|!;5-~ AG `}5dRAm* f&'5V+.7J 1-Cd{!3 /%t ?)cU M2BVF *WS 5 i V9Y! ?11l? ZX< "!}?p +~4 G=1:9 V1@1w/TE 7X0%'HO2_ZcpF( &S< iJ ~" " T1    a z]' N[fM"%H !00lQ 6.'/" Sd3qk*(/ 2s@i&  ?E 17 0'seC N 0[u% m#tJ0  h &+XNcB {( K 2o.#W\ bO3|  0w=1; $)&! M ?5xMmJR8Bt f{*21 K;A)S q љ!6;j0u ?)16G&<[R("  B\R @ c:uI5 lr# )yLH4(1  MfD  - tѻ4*p& f + 1\4k w c~P*G  X f** mL w { 9B \ O vGa9u<  fPh>dH+-4 zB dDvK*R\ R +% %G{ (,i l@ J|S!y+v/! E  I w1  w<tV:F NCg# $ "l7-99/|JN7* \KWv("=pN u8K  $ ,1 0TP!S KE!je !2 t \  ;,L?`? @5@%.;7P"h N3-)(YU X%= [ 4 _Ut-n&:2Y d J, 86.7h?u Qa DcI T 0A;jM$C"(08a TGeB!$!WG  K)9F:K1e&=(t, o . B lX2  <dGO c!!"5 Bf_vj]"Nn{"$ 5S Z+ TL:%M+0Cu/kR\$"7ZU f?l8 v<IFS Y b042 Rx , VQx$D R$^<G  Lyd;Wx M c'uvF n"PK ?Xpq  %514aZ "/&D< $8 %\*>ao );&_ B8[ j_ +-CSH9(,W{I,"- [EF{ZFh$" 2 OFyA-M@S8D%8L UOB Y,QOR7FS pd> pE5K&_T#-) )d$ J<Y57TK/D & 8d&3 [ n^^ \^8"w @+@  cC CF [a ' Ic)F) %rW+$ duK6=t"|YN <{ 3 0 9 9 x%c#N$C,B;@G*lU$4>2 , H>pp Ž $N\>hZ9 6DA9h(> G5tb !Z& K(F+Nb Gg+t !L:Ks#  5h6JjWgj.|:kt 6Z D/3po?]32>3;[+#c *`@>F"7h` ZN*k& '6bGM) w?2 d7z(@5$ gF%57 ~:M/O;<`k7$%kLN mYV"h rRM l+ p!4 k pN.%@s6 $ 3!O`|,E%  v 97j 1y Y$! 6-6&dV ,R 5x$76`+ o"DSWp%A*;97T~%=E:;M-Q 6<;b :?6SN*& *1 Wy ^J jQ y@Z  z']RNU jj Is'\KXa#F"x> 5y(0a1: J (d }fB-;_qX-P*z,?,W $9SB !  WRfPj5JE\I v_D Dw Cyp eSs @a4@4:O%$. $ 9&%0ZBLa N0i 3~ 5 4~8p z 4B  Sfe># ]{5}8.Jg<3FE'4 #-%pTY4 o-' 2paD{|0:D4 z4u=+m[=!<#ypF:l9' "  oo ) m1`> v(&-!^   N@2':? xi Pi& _i/ &'$ k.N dG$%M/C[E - )u  d 2M'A.U"&:upB)64u 2eLhK"pH ?OWRy\B̞  4B]! ?^Y[(>#OW:HVIi<x4 z k$rp 'rbD' +A c #;O h w -!;h @(1 \,// 1 (, .$i z!= #*6 S  Z  m/Ys ,a" 9x Z ;1F J G# $# ;  9 Y(Qx#:1 C [-'B:) I,cW/CL/o ` Rp~ H_-1Ea  I>lpen&m .+)^ >W!#T:38g`/K Ya5wr e @n Mj=O2L P.s rel|f  Kqb R /5 U pf E0# @B b/TC  ',;W"$_(ruO:"s4 2GY9 5J@]-, n s"'4![E9n a kY|Hg9+f l-~ ! *xLIT G { h 76q _ }'O o>?75?K< f +hv QU j y6K e1 p p0 k m iS C . ; c %'JxE BB = y w (%4 ju`#Qp-O   r 3-Uq, M?<vAwY  E-)8[" #K^ !F h? V$B5w -*'+ x^ 2PFQ3o O#S48Ks@)I3 iv HOvX [J ~@W i pnh?im$UN : $r X*7O   - W   lt<!P "5_$ Z# (j R#(e8 ,BrfXPK D& (3t ,"e9Z$@/$< -K4#)e(i1  jC O[ JQA{JY h" cg O62K, i)Df $Xx mg  . >:3 ;. u ol%DD 2 3$R$!R q%6-) : +D HK'0O Ou"q<RRWʜ5&@MI+s bv-\jE ;{*4 65y) t*.4; sqJ.ob^ #M? ` 'C3,*E ! h6c 5 ! h1$a)  QD 83K4^N )KF"(+F @.G!2*Y{ $.] B] w6i4  LYEz: ` Jp+)m$]sfk 6^;}>MAb 0as Io<ez%/Tf/~ e bZ`4  X 0yUv( ITS(Jnt1_!AaQpKRe )$*")y#[8X&<Be)R]",Vt̟"$b39n%v2*sS: *z f`!+ |Ig L/$ ]$2 , 4]8(dA%O7;A-/8 5!{ :s%F $I F ZC O.PH Xdr$(;orV&} MgFs-` _ j*$!"3"M!bU!VI,# h Q3"D  !*.-` aVB^mSBe1BicYW72J/ %!  ypZ ]&;Z 6-%d) u#|NHV(=rdxh&C d*>= e+#G xmU8;S+>x@u/J\6"/O(KNUA- SC A !BM Q! _B`z 3h#( Q DOl}9t6x=d/4. e_&'=h/]BAIkAA =' =`(d 8*X[&=`5 2.vB c@h "( .wg , I k*< +5k'.s#}6wW[i>/7m%42|1C I]e)u0:L' lrYHE WS>QW^-]Z8t) | Y~z7zYGRDvA 0:y k8;@ <4  %&Q%)pLh1U^r'mz-ap=gH^o}mW | u!% G~y$ wt [>Kp( YG0HI0H0 X)Y)T ]r"Q)lAHhpS2T!S|<J_P&wd  zW}E8a er<VeV WX;@$6SJB$0"\V)A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤AA큤AAA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤AA큤A큤AAA큤A큤AAA큤AAA큤A큤AAA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AAA큤A큤AAAA큤AAA큤AA큤A큤AA큤AA큤AAA큤A큤AAA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤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큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AAA큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AAAA큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤AAA큤AA큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤AA큤AAAA큤A큤AAAA큤A큤AA큤AAA큤A큤A큤AA큤AA큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AA큤AA큤AAAA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤AA큤AAA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤A큤A큤A큤A큤AAA큤A큤AAAA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AAA큤A큤A큤A큤A큤AA큤AAA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤AAA큤A큤AA큤AA큤AA큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AAA큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AAA큤A큤AAA큤A큤A큤A큤AA큤A큤AAAA큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AA큤AA큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤AA큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤AAA큤AAA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AAAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AAA큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤AA큤A큤A큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤AA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤AAAA큤A큤A큤AA큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤AA큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤AAAA큤A큤A큤A큤A큤A큤A큤A큤큤A큤큤큤AA큤큤큤A큤A큤A큤A큤큤큤큤A큤큤큤A큤큤큤큤큤AA큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤큤큤A큤큤큤큤A큤A큤큤A큤큤큤큤큤큤큤큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤AA큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>.eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>.eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>.eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ>eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ>-eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ>-eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ?eJ>-eJ?eJ?eJ>-eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ>eJ?eJ?eJ?eJ?eJ?eJ>.eJ>eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJB eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJAeJ?eJAeJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJB eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJB eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>'eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ>'eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJB eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ>'eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ"eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJ?eJ?eJAeJ?eJ?eJ?eJ>eJ?eJ?eJAeJ?eJAeJ?eJ?eJ?eJAeJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJAeJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJAeJ?eJAeJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?eJ?fbdfcc6e039938285f21c89acaa2b3fdd577f8ea52419fa5315512dae7ab7a0a43aeea3120e4f6a7f729af20f13c584a79d9c7df4eb14b2ca01854624d20f5fa440327ef5d61924ff03b7680bea8fe805fc4420ce5e103deaf56db9a9601079d959962cd7e70fbdff16633456a840c203147171b14ba18e57972130a0efed1acdbdc8fd11c4d056338e91463cd392d1c99345f41479a4baead9c291d3175a0a650e6b47300038dd2428013220e325023ea24190d1fb7086c0ede88a902d711c56861ff9753f34b0481e8fdc66a715b661c66b4154d351d3f403a5bf2c3b27d0b61d7f202d0948b1913a86b3590358a83f2b9d0be5732bc5e558a4c9ebaa928fe0a876bf3835fe06ed1dba1e8de3aa12fe18ea0d6ae505090357985cb29230933516f885d0b46bad87679dc9b36905731d6834d728f306848947033175dc228cf2319519ccb40a770088dd9fff78496466e7b3814766ba6f901037d098f8c1ccc20baa302107fe87d46fb7401d91aacdab82e2491c7c8613b0c95031da4e84471df89619cb26525622db08b81f27e7275f1c1dd64e57174c06e7bd79febdd6aec31592a0294c9e276b3d65987f470eaaa2dc024c33977f409a6026185bed4f55b571c2738b88cc09f74b4b84ff494f71bb93b3df25675a48178dfa7ce98244c6024dfbb4f382a643d538fda5df16cd9639085cd64f5877f63e4ef41c9a4c3b7b1392226f3c8f9b858f0cb601c14e0dc88a73e24caa743776fa424aeeb27bc37402e7ec7972924a4ecb50dbb7469221d706b958c2f2318dfe3d4adf23c6da0f2251ca2ac85309fe8a4bcfa4a53896c9eed83fe15e44638a9fd8c2d3c64de92bd5fb773d87e25758e5a2622e2fc0890c2ef7ed4ad61ee8c6524bf9e51fcda7ddafd6c4457adc2cbfb72505ffb25318a4507900b186542bbc07c8b2cdda872829d48a3c9737252cac2c3d060376051bd400edbfa60ba7ce9df19101937ecd26d11cbc0b8ba07e762b5c8653db0e025e5588b1b1c57d4473d4926dde2a151c147968ba5d0d31912cd6ed3f7ae6acee3066a462fde5d1142b8a16ea0b59510c3d9137f5afafc70fe18ceb5f7c8ae27de7088029263c037548ed3e920d61995c6c033915edb772d77604f69b09f9478711f2b058d925bf859200a3eb539894de28ce6ce536b6ef4881d480596d4a60bf3e28c53d0535c1b8a92aec6f1035569e8d5d99533bea624614503b1765259766e469cf6c5e53296d8d45f3bde15d579000aa27234c69e7dcce7ece7b2f76a0683969d5f19ebc4b6f52cca5bb792126483b3b8b75e27417e08e9473eced1c817088495033ff5afce8d9852229d398a081a4baa52cc7c6faec669260c6b454edf07c7ab2c7d9f020505323dcb34c975b96f5833e2353fb9e7776c9fcc028ab726c753aaaf95af857c9ea520784a1c863cd2c04be93d5b3b7a7e72c2b71ce79f44d8698d0392141704a8d40220b1dc14cbb8afc4c5fc8b24f119802bc77ba324e5e287d6d8056192e5272aac5c3cf236d563b9bfd5414a249f99b06d79604cc514de3981f988464c6a856402fa2b6869fbb4a37803f595d70fe2e7583ae1226ccb345db07a5a68cabecc7088d65d1bea25b3d75e7cf1ee8a70ec6f0698cc54b613f13a5b7dee8d5a8185fe2e847b626a96047bd046b1bf05714a925ff4e91a279e30cf4c855898d599c316f557bf7eaf8834e40bcae517059524ef2b4a1c05f86d32dee7c51b6c407532a77a61e6e6a9ac8d9ae9a71c183955a31a181ae2f3661446e7cf0d3c5d121b9e17fc2d4ba5049549331a94a5cdb297c4e17f08e8fb39f3869602d91d6ba45c56f0d6266846d7d73649e4f90b9bb55ea9055cb7fb989a27fbf11870934740228a94633042b9debf4d116cb93daa31b9e9804a50dc36b5d1b9a98d1afc924ef79089514bb9419a40ddbf9e59f91dc0bb81af273017a3ba6c59c894c17829b95edc22f0d5af05d2d5923f6b4ddfc7a97a56d5c2b52289c123b7fb629a993aba08362063e884fad36cca56625fb735388e8f242ecb3efa6b5e3457999e16499191985106db2ba5ed0607edadc1dc3ca059d67394db68a931c6b373598bdc9293fc55440f0ca9aa37f793f9652cc9cdb4a78abca35e1c2a5aba26d472dd5df12dd0ca97dc87df98e81e0cf070489f7683a8fc4af41d9ba7d0fd7fee699b1b1f5b287a4f0b46441e38bbc276584a543a5870f22c21bffa0ac6a23664905c3427f777c49a6a0ce66f8c8e94d64062a0c9d9b959c59560cfa011c6b031e4247f05e473bd1d421ef2ac855a7758d50e315177e68bcea86b2d2394fcf98b899afaa3614af301ca85900bd5e94921a0c32da3ab29d1f9aa277c91fc76f4a7075a6258d40d13e2e1fbefe346394ded3fca8cc2ae7eed4e0ab7c8a9965f6996fca2827a01426483e6bfb5910e695a97dcaab71b04facd18ecd60cc0e749c91db7638b5a841eb65b95336d4b0d2d34217b18147e344e6b1ffc7abc35e99fb24de9dbe2e734bb3086ff14bf0ee87813d92b32f982f893c09c86066854e5a39398576db00c2eaf8da38150c8b1008664c4e7362396af63ed0fee3633e2131bbc1bd9b1ed865fd62fa5c279edf8c7a8c4548b39a28a54a9992210ff570c5e3fefae68e089ae0ccd207d5203503f9d132d56ebd60aa6fc89bcbcbe529b292d59da0514367c2fa7410b7852108846ae3386b317a38ed57b1afae8fe80e1a6eab67b7a27ffde519956a732160aa3f96e43d5da9db72c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b091b6160357012089ff9d49d4e5b65c6481e030e3e44a7aa9fa2137db8c923cfd0e401af1daeb836ff1832b140f73842686c83a36541351db6db77f36b1d451cd52dd61eaeea7b8c4d953b52eac27c0b16ed7d18ff1ab1f0e9e0cb0c531b4a667f8753506a3a7ffe6910c4a9458fac0732336224d3a768e12c61752dd751870480295e6cbdf822209e231a9a9dcc330e1f3f9d31a85ba6ea1778a617e51c382bfd34699a2efc86726c058135bb47780c596e4bba2e7e36150cdf5c3c8f44ad58a2fb702168a0fa3b30211e339f672d83ecb8ed6ac170d7fdb892ce24b7ae0e6be8819850f8e3086ea13cc411c4292e2372c6c4d78153be10d4b49a3a6d54817aa7db17cba4c54f2c4ac6f0cedfd66a5efb0eb9aa936159352d58c66509cfaa4ec479d2bde838a70ad275f3cba7362a07bb342542ebb197b9a7cb91612d8fed369e773434837d1072f36511cf3169d149b1a56685ba0928c79fc19aa1369af071edcc1e42d288676dbb9a76c2091382d941d81a4390534173a01bab15a3b20a7a74b1c495fa94ceea35a1c22cb817e1648b3cb23cd5a43ce3fe4dbfa482fd1801f89897f6c0721944ab6d15cc810f26e03062cd35dbaf8e66208676e5ef7140dfcb53ba35a66d328915d012af2186ca2970283f9eab6d0058db4227b20260b681288ac87dd7fc264ddbba75cc8b907a68d3903faeb73f0c6285ae2714ca501a5a9338009203d0a85ede5cc2dbfe62e7170dcc7bb41c158140f0f8bc49bc30c85657a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5f61ead437cf74b68e2824fd1546847b4980a12f41086c8383533c3b820a12db422a78aeef7982157b3673603ec0ca9fee565867fbe916936d001e157d297a9dd3c33355e54fa815fed023ff1e795de6e5bcd7cc01554a557a1c7aeae31b4a732c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09581e2ffce95d8e6d4d63f0c2bdf8ed670285d75852c56e6e5640bbcb4dc21e97d8f655df6468490d2fbd7c4c35832d36afa6d53523acdabe7703787b5b14f3a2001c45c6d08eb13141915e9f74d533b6ba68193ed998c6c35cba2443593b3fef881ba17e679f9bc0778508ae05304a2d9781a4065d02fcf30131045c61fa46066b573674703a97a2f3a2253bcf0e6157e08111f4c4f8110ab6987d918eb2dfcab649198bc7b084b6cf39d0ee1fbf9e7b6b32c80cf962bf4c02e6978d3dae99686ebe0eeb6da7ba61ce85fdc4e1c06d175bd2eac225d98f84cac909f15f3b947701a6b64719c1ac7795e29366d0d96bba4b873f936c2ebd7ea55ad3ebb80242af71b96e77ccabc19c609772c574c0505ad472c304776fb62d0c053def0d5a9c31e7fbf48ff91eaa348395b22d842f570cf2e65a3d2c1f23e1a4ade7b4897593063139819a78a2fded30dc26f27c9473aa0b190dab7d0ebcf4d07c8119d18b3b4e3a42ed1cd4ba7ecaee5208d419db9344311079fc4ce88ee02a582b1ee3ee0aaa27ca9bb2d0621b7929156064307b02efb0960ca3d503a534463180e355997d189e801c53cb769d73bd2204e36c4515a693312238f7a87f9111dbe3446ab73d9bd3de558f03b0dc75985154377932f556e0e3e521b4145431f84888c8ff1e487a58adfd4746975d39f40d3cf61ca576be689b68b057fa60ddb116a7484e6427c3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551248c3d28ce2b064dbc323a20fc7db527dd233e6598ed8b9d205aadf12cbf34e867a98ee769795a7c30f3acea9fa4bda3b846bcfacc461c3b0075c7cf548671cbfd0bb41c01004857246a003071747353b9c3c3ff4e59959980944f82e9da4e116f44af2fc552f49ba861e27e2f6aff9a7188098a3262dc1b34f031016a57713e606092c52e52d561e42d22661ab41ebaf1a23bf9f52059f6d52fe9827e0f6522489c5e00f9b2ca77a29bd8a07df20768160b06d3c501fa520ae2350db83abbc246c101ad69232414ab4567eb4c7fac81dbea0aa19f40c5b13999ae43519e9d457fff263f1e0f8856c379e63b0d34f3b45a6baa36a250ada6590961f48d77def3951f9f20027111aadd7d5258e57d2764e72a513612b73b29f8d1b43148548aedea9a36526ce61165286190d31ec5cd9dffdba092f902589bd0895c7402277b35bc9d5a2416e1923574d12225cd85a8f4e517bc05f360b00baffb74cda0ecb24c4b58917adfe5461569674cd4bd3e5fb1c3b789785157af8a9dfabcf645261f4a6906a9bcc2d98c66545f56a2abba69a214303f4fe91fbad1bd71fa5aac259cf5cb8135535be27c3f3bf63df0907d2971abae439f0203b6051affb90e2847c8a5f9e96a0f7838a5298837a89223271c28dc33ee74b953a11425beed7fbce5bb988d5de817fd1f2b6214d389581f02a18087946adebcd792d5e130c24e1c375f5628cb77864808d120e180bcddedf1b24ba7bdbe366a29f1e7e269469108d748db77eebf4792c6b106897628cbd5c63fc287921572a5d343b67d02b9d9e30793a9b40e1c0de092cf1200a2716642029620a154e98fb763ed63356debf7768652caff4bc1e665391aabb7d32b8f0e6ce0dfdbd2e4d6525d77f213f3122d825ca8701e97942c6e62becba36045bb5ef1c10ce86c80e16eebb471672f840a6046e5226330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b092e1ec58feca23fad7159e41bcd36821549f8609e629b9822b7dd541c59f4b8c01bae3ff7d3f08121bd65e5a3e3a00028120fa38e17134194b228ba5f61a5d7e331c4877c641ffada00285181b3b67ad333e991cb1952a2ac0ba99452e22c48e70b5f1ee1bcbb28de35df4aa47377151c65cf75578b0cec72637604776a2d437eff105271ec8b74e1b382003e3117d2ad0becc687985c4c1c0c9c04ba0df73b9266f1251f2a62ab07095b5dcfd9f3871b6f075230a2a6e1c60edeb9cd10bb481853a6bdc2130822aa3d396849a82497c41682a2eea75152c6921d7fb936b9effedfa0765570c3138541e5435716e2ca77cd4032daf8d3903beca1305fca8021e372eff3fb4e6c5d271e792814483138256291bd04975f3bd5ae8bf5d01711d525bd83d3f21c4d36ec7014322624071cc5f50cd5246efc667dfd2aab85fea7213dbe1d2bc57b1f3736c6b7c8da5e63120a73db731e286ee61c8d691cda27a0086197bf2efa9fa8dfff63386b64aadd66819187c7f3f0e97992ef3e261b2806ee2db4710166ec3643f3bfc34da54c91237cfcf44cb1b9c5449d3dcb6d3c505b046d0c2287411f0b0b5af1b9fd23d866f77929e4ca6f487e0fb3f3dafa83afe17fa7e7fd8ca88056dc90b9be5840ebbf6b39ad1798f7340297d2bcd5e71583db489aa88e976d94e8fb011f3148f76c9596b3f4dfbd739ae6ada37505f773f693f8cd8fa394122d4f85ce337ca5f5b9667a38b2a633037913ddeeb65b4d0fecee83f9b4cc85b05770692b3d0f7ac24026a15ed5969ffec02816265107bd712aea8c4375d00aee5734ebf3faaa5df71a223a4215b0f9f33aaff5b6c38df60f33c3330f343423bc0a8dee4927aa1b2805931c1b4db3e6610e7ca9864f4b1b9196a1d97fc363558e36459552c683c46bf7496b93ccefab5300a805f92f4d75bfa9cbbf5a923bb4dfa37cd8c3aaa083d8e6f46cb47dfe5b273581f5f5ec48ba801389bfb7a3d28c8f6bf88c7027e7c2f5c0d63926ca604a860dc18d1c0da47a6fc5cc86605d41c88f9788f5b4e968b535cdd90084c88dbee598b460ecc86512d5176fe94d53924259af4a1bd8054ead7d8fa99256d7f1169ffacf8b089f185a72c2f8882abe4818b7140152df9e12ebf0eb329ff66c8e54409568570024c42cef9478287e3a19b78fc29bb30df5f752545834eea94b617a8b98963455a691ee196837de67c17e0fb2a509ab14e34cf88b269145fd4620109dc791c0d9060ba71ff06392bce8024509f91bf221b8f946ef96ad09120e03cf9f1e5b5c74643a8a0c0cbe9ad9d6f9f1d8d0503ea3dcbcb4fb6419b9538f3cf3b39e8427d9579194d439b82bc09ee6fd7426f77483be57887b1f717545cb956ae95d153c25db1cf898e7f84d71163764903ab8986107e42732c347d362656b28b170c1b6e796b35be1805c2cb59791971cafcbff1f957f1aff446f4bb55b093221e0f9f811feb539a9c48b53d7eadcfed98e1fd7518017da97a061318ffea1eed1efba137b719c02d8eb107f2949c586bd1950dff037375b65e69ed337639a0d62a6a45db7a0fda179c0ab317e6a8f51c750319c8a42cf956b23915f3b4b9ca3a5cd6a7d1583118ee1ee183996589d054b8dd1c2cc75ddf60c2308ef31e0ddbee3e4547afd079550f6ba1930cb028ef90b8ac36e9caf17f0b8fffceca64f1bdaea1c59ad595dcb52d5a4118c99f25450f5f2f0e05460cbafdf479ee3f93341f797c5b2203eb225e86065a99a675c912b1c24deb8c6ae5b88518a66530cfd999dfef7bcd4566296d23fc141dff1da5478c4475ebc25a64d912a265925573ae54cc3891900b62ed86e7f4aaf5a7e8373179980f1595775385a8d02b64cf7dc4b4faf56bfb45c647c046716c40c19614be9f4f63490b9bfd5a9fd913249782759d59aea99f9c47efbe235f7bc07d25f6db17ccd2324d78a983317d4a2ae4ce513827d803991498dd6ad3f897caea1fa7aa24161afcd9bb6687ce8f86ce457ff16a7b8bd0b9ce411f8dda285ec39734e320cce4388430c3df5b9a56ad96a6494a4e53c350585dedb10ef7a87f8bb911bd2c50841ccda7024f0f0c9e0d507c2010abf7b65a20f7f4c2c0487e1276029ee6a9dc29698d26cc8293b059ea89998e4b4936e799a934602b9f8f016f044abd4a5cf6b3a3952f65ebd0a7394bb649587fc1c78e3447e29c328e9c06fb9e9dbb5199f9ffeab97cc48f03ff348baf86dd745ac6a333e7f92715d8baf9c8a9f39e50e4fa7a186e790e82bb296dca7064be1392ae323f1b3a9b300ec0d1c816f8214d1b41695feef5478294870c8fd7c5633b34a567a514ababfcf2fcfcdf231c6783b46cb6328d9bf210076094050ed8ecde8bf92f5f51ec92f807ed2fd61e1a0ed330de8d7ca7936b179b24a5525ba3d61f82091f172ecde5c9d04cdb1961164c5fe0bcc6d8e00dceef4ba3edc4818fa3a6d708287f6ff0105401fab83f2f4dbabcd800629ee21a5b30d934656b77a707ceb0b523883a6013928a91901a70d98c4344c78f255ed2bbd8c9488d4ecfedc42c50ecf96e5d7cf8df8bc25bcc90d4922654a404924c104bdace338ab8d1c122bb16c6dd942eb85db2c9e4c34c3c88fcc83fa92d2a6e124c991a76817468cda0502c3b55192c16e52361981f88d88ef3225450939615177d3b6eeb078b96aacae7abd3c71c8458adbebd12aee94df2f3724aa11faf4bf7ff36fe49bd73d38d97356aabf0f7ad992dbf45c64a01f56d4232062f94707af8c87ffca19e5bfc9f621d25181504538cb0a6306b5dce26af6b81d71433d04da5b3b04130b23cc28051938f6fc0e1cbb45845fabf52755a1462f6df60628a1287cea5568528843b886bccf93429dfda810142fa3a17d7e02d71a2b0140b82e2ae62f6d1a4eaa716178d50d1b0f3194c47f0510f270cd18ca785e11e3b54e585661678faf98af52dfc43254b37bd566a994e307fc09bb9338125b8ae1cc55fad8a546e6832c4bfa93204665a9cf4673386f10c02f0f6f0e7532f8a772153057480f8eebd4aa0c3c818b13b389b4187131d792680322f742d89726330622d6b048f2e01b4b27064bb7ee3b94ef52ba5eb0ad1ca592c92d996aa92c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09cf1dd922b1aa15f94bff94dd558b3d90f19aa827bf78c88ea5a47e234993c7f0238c644183bf69d26c5d020117b7493123b45451800bb02f2e4ec37491f32be3a26c9070e6159fd1b9984b9c5c923be9a81c00a101c7843ee1cc41ca4bdd691538a4eb01107d885d44c4ae527ee558a68dc7535cdc7b5b9b63496d8b85943ca05b3bf0d7be0f9bff118cf424dca0a685458a11b21b0699f91b1563410db1ab16d1ce453a059b15d1b9174dd8e585f7bdad036f50b898336b86eafd2cba0fe3c1aed6861809d72131f7a3ec83495157a54d3ccc7bbcb079cf94201083e4a42463ac71355848bbf51536f4cd9efa05d7fcd5bb1f55163bcdb7a3293cd201facbf597c772e91f106286ded2ca7eb704a32951d96d9322915ec15a7904a059007bc8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8555c1ba96f8c127aab4bd1253c4992b27bc04a62c8f1f48c1644f8c9fe3cf010ca02e27bb8323440c05ff9ca7c12eef1c4befd7411490159690180d8dff8d7cd2b302886c44dccbac2bb65fcde830856fce571ac2246ceb0baea8460cbdb8262d5375bd286f47ed4b45faea85fa65bb2c99cc42e9cef50ca76ddaa022bb16b43483f2cbfcfd47566d54aad520e57d21bf89e7d4531340c9a2d7d4be0955505e42903071bfb5f0ab959a57db7f09e7bc88a02d84fc58ef0a07fc8691dbc8321935c2c6bf7899b91ba38c50a8049c112569e578c3bd023c529de291cf73149632b09e651c6033c299a7f88c63620ad219b0da31b3d49240aaad819627ed446633708c460fd69a428f81ad0e00688b59bd8ec10edc2ab7847ca2254d3ad8bc71f6facfbe001eb9ff8a51ce65b0ee3b22ded44f8731a41efc0bc150804163f91673837603fb8d2a3a795605c1cdc4f7a3c03ee4548af9af70ec7b13cfb350693965f5afd7a48671c7db4b91d1babf5d30000e17b2361edfb3fd822d438aa2eeb79c551deafca7e71909b401ba47a4449ed2feb366912e6cd009f48d490115113f07b85bca9a15450b1d8368c4f2adfef540749fe232c0f6051df747c32d261b1d9b375e98a6a7a08a4f740f2930538a43efd3d7aa580737f94fc7ece1fd070f22fa75ab9736c72dd808f71721f8a0e8877b681e872f4e12ddbd37412af635722a583d091d0de0eb049e78789d75f488c41bd322b785c02c587504f4de99a7baefb621e9575c8a19a23a88d8de30100895ef78e526e150ef3e3f6632941c503aaa19e6cd5e9cd08e65ede30636c756e8b18a74087362fb0cf8afdc0ec2b1834b0d72a8c0b855309b00451fd1d4981988acb87eb2903ab091f4e7ba266b57f6fddd65d0628a420c46befff6e4b6d1a69745b018121c77827059895dba459abc0bb6640639765d809fb87c1b3914459fd78eb0b7eef53f312003aadb10cd1273db20c9c2a337f37c06373c6ecee8af65f2511192f049a9fda6983460a30cbf066527a95c5569af018b4434e9e0c2674722e2cc1a9bcc8accaf07e575ac7359569082efe2825fcc2e6705a0f747ac1afc89825ef355de382f75f4016f379fa1706336621dc976558869a3776361143f5720277c0b4cc4e92cf02d1b124e9c85958ad5508f501bb6bdc496382ddf07bde75a542e601fad63e78a0c550592ca5e60725112b3d766e03b2e26c8dd072d218a8d0d3081a63c65883546cde70bd14a8cc40d372fb9bd9170e1d9ba59bb5ca07f3e63c351882ea29229cde8ec29c43900d4d6a98138da57ba826cbbaed808a412d6a74032fe25cd326aa1996a84214e59e7ebe384dda3f6ead3973d63778ee11b5413b5574ef2a8031a695ab82aa6cd6097c1b255259cde54050dc49f32095c348864e9b65e66f55f961ac3c5c884ab1f136a770c9d5a8284d81477ff6a54bf6e5fec9d3d2f4043b59ccd67f04dd856787f685d44b0fac7914b195a60cfbd42d867c48abc88ffa07e426e0c295e5511d31fba4f76e076d418cd5df1321d227fac514244d41268ca89b5417a2e0b9f3431040fb4b8640432c10695dd0d2b367dc8abfbdfe3d8166816e749c5c7877c86b4f3f55911825bdf8e82a090097e85ab00aaaee4db448d2196a3efdda1497ccbfc4cd4b4c36250ff7f411721f118d1d260c771fb5dc1b588b43aab0e55a633bef5dbb9a5a068c097b61bb48d37f608d175503161a747b1d82ff60b381bcc0abe11e7797e320632e52ffb9402cee403e23e94ab045f16495fee63b72e6feabe3cfd4b042acc22a1daf7c2eda49865ad3539254bbd74c86789035d194eef7866cb236531c8c060c7eb0b45e6ea33765f1433e2417a425bbc4df24e0d594ddfbb495d4e14491f8ba717072d647c5db5343d17f8023a3fe182576bdb3b5b6573871ebe0717c709a807591555a4ea2fa0beedb19fac4455224d867b5e2e20b861c37327c289f3fdc3757742882578abe56131d7f25ce3fa16b27f24b092e8524da179bb47dfe2ed6c0adfa7b8ca122af945102098c5a133ec6269a2a7f2dc3b184ad86b562ea8d8cf5b17013f2fe97b2093f59b5b5ebe27abeb40f259470453213b7f29c947ed443c39a1de1742a33e28338e6bc8bfcdfe09d6db76e94175d3bca4f4a8b6a518f4ddf3fbe5b6bb49e3b90f030df2e65b31052e551e938870f55c20d29dcc97c7bc9c38388a87ec386d130d1989150910363d31ad1287df84b8c2d08c3ee24cbbaa710ef7cadab974cbaaef2a0bbd824fcce29aa9b36092668aeb897c87dd8c2f824e4b3a02f6cf17896939607580cc0011fb4987a7a4fd0cbfcc1a3a229a3a418eee5a42030061e6f76e3b9cb4f05ec0130ff1d61fc23e80738ee3b1e872fc48ed386c16d5a80983d1182607faa7c9923a498ae0660b87ae104a313ec1607890bacba69a4b1bce31c2d62287565a2689a23fb70681d4298d6636adc59f4c8b5ed256a5d9483d25de128c8f195182ff998fa34c2fc761694bbad0dea7be854c1832049d45f1215d893bd98b6d228cea06b024bd6fda56dc83c6b5e8c8eac38bed306176a3f26b090f6f12e03f405b242953e552ab635213c071b4a3bf99593913c8116455bcb266f3840c65985a2d3b572571531eac253e1122f0b76baca907ff86d1b8d8881b8e78c19aaa4be7a3d83a5e30b3bbb288cda1805486798e78915487018d9018e28374334ddf5dae3f9a14c598dd131386bbcd808df7fd33de5b3e1726952335aa109114922c10f8a002a5358f0b0ff7c396be2fbad937611ab8de36a982dd1279ac45ff15aaa88d208687c91ea6ba9e1c6656e90de25d6030e07be0ea529a2f7ed1b3749030b67d4441abf7beb95e8752961851ccec4fad4827b0ef13e30c7a8d21f07f4ad8203435eb568a1379c58d26bb20e401f4da4351cc693ce7bedc9163df0beafdd4b39aad83e10917ace0089aebedebbb33c6b4fdc8fb5f5d617a6945887bfdefc307fd11dc37665f4825726ca4b6d591a87a26cca945ec4e78959fb5f29f638f146b7602df23f832895f9f9b6012f669a25a93ac0489cb047d512f522d56177d5c84d82b53e8676778dffbb6d9925589417c4f9f08400e946b021fa8682665486a39ff590b9bc35d968c85f772449421c1282b4bb734c468da9c9bbab1c7e115f452050d706facc841a8ce8ebc8f26871268ec058f461d0138f635b7842936bb0d1de5245267f2fe6fd714a0e75d0c946465e18db23b6a4c25f6db2e3ff8a9ddbfe42546fa95b40dbee2c7bac277aad4a0a708fa83e7a14a82f473e7821a91023746e8521eca386cc35270722a39ad7b71921cd46d3f1dde0f04245bb85d25c885272d1b2b9fd88d517c975f5b49b0d6cb395c0069e9a85620f03d868bc8ab8335fd79ec5791e75336eb4338d2a41c140997f2a4f6940732ba092ed4a8ba8e0467ac8e1174630f15379c693beaf25a8822ebb09293c8991a1a7f055827b1d985b55dcd52410485a8be805bbb7527f488dada3bbff9815e75218e0f23e93697b8aa9ada7236cb94a141ab1124d7da580a225ef7177810c047f9669227d5a06e5b305874a9de120b489cd814455f12e89d621391c216b2b76fd8652beb87e47fc9f49392988354bb9f3774710540cfd05f5e8d84b303c4c4bec6bca7df581d6ca13c9c8517e6d68963ca37ed7b3d8bc6f864df20e4240167ac25ee5fef5a6f56241d64b9d83bc732bc802a07c8bf87bf12acbf4e7f3ad1f1d328ba8708118940392d18d8d1a09a55596987c5458b8cd8e9a0f3e60d5e6172a93a2755ccfc059af8c8d89ea214cfc7da41848eae845d928fe80fabc91ac697df8da6eb6471779af28b21d8c39f4c5d12f082f79b404365e3f5be7396b97ae3dbb7bc36decc4802765fc0047eebee325c027067a853062317a965262e10aedafa2bee299baeaac43a434f79e96f4e7afdef0ac4b1cf76ce28dbe8ac8504fd87a8e63d4d03a9b253e2f1ef346b84750218b9fe63d6c0b1e3730b5be278fcf48d95c4c47e26d1767921acc0d05acfae4ff9e86ed22cbccdd54d1ae034e8c92d897f4b3d80ffeca765e1ddcde8e375db099156fed7aa123a1e67294a19c8c5933cfc6a477fb81b3a83a9d079bf6f931612427ca5070cd7f7130a3fddf07a123d99968fa33b4c1750f7c45232366d5527f4ce927b6e49df4eab57719d846daf2d0a782f9ff47f5d01769da487050b9fbdabfd7f1899d63ec86862d682c6b0ead14babb7f66192bf54c7f7d3219dbee88c163b73977663abc50e6b9ee95464070051d89cb465f13f1ae553bec7e8aa42b77c9282996dd009d0aee562f5a86af90980a628f88ee27f62b4564cbca385f9a7b339c2dd33ac699486a98c5bcf1613ec3e1ee9d44ac3c09438f905be8aef9a7b69624ddebfe1379f0b518ea82bde8ec7d9f42d0562c48579c3ecca8d29ee96b6c08987a6d6e5c19add316e15ec0687356e11313f447de5c92422b899b2a1f0565bffc4dd44b679a9c12ef5cc5483b436d970b7eb815a0b3f9246e206f365eaf6696ea710ec3d74c2d3918af886b4fdd410b589a24dc4d7397b319801039100a50c7435419d91321e9e39518a3b78f0acc3a313135ede1614d35f94fd9954b70371afb85ec079b2791d1207fb2612469f2858552f9f4e40fd630c8a32e85521200a85384bd1717a04f89552fc6cb3490d76c5e9c8a763b9739d464d1b4ec21ad8f5bf95a476c17b56b6bd2a3c20003c77430d0c2dee210418f9ff17bd9fb603290b237a8a68934ea3d9926a49effc7b5ecfb537e1dbf826b6146171d436e0c850bf0dad45c75075f6b8a4440c4bfead86a4491f6397df872c828bb4ee34749ac7d022b55505f4a29073fcf4be8b5e8af7be8f2670dc08b600c8664b6a6d1b81cd7fac4e1b426be179d03311318b9803180bbcfae4d9a6ebd4009b17ed3657a0a0fae1bbcc0243608db5dac04e28dcdd536f15b405a37e40f72891c13e37c0a703b1f883679c016bf7d01f8b122b47079862f968781d468da4b97cce7eeeefab41bab84db682c7bb0325adf4148e6328243a8a828e20c7ad770c52b6fae702e4826b6d96b1ec5deecb60b6d653190ccfeb18881f707b83e2bcc7c07f2eed1e914aa17c15c472e2b131b2a2aaa6a492b25add68594ac600a39bc76cea98d502acd1d75d627942c56633ed17ab067ab3e3d37c7e6d649b523ead364cf56f4944a25a0e10213aed24bf71d697941b5f741f53b73bc27ee4a55ed18f39d52cfe5d1fbe5ccf8140d07cda5417dcd6f207d9bfa0a654d55196b268d5eef0136c12a374d95fd911fc66048ae082e5bef8fdad3949d9054c9861bb3d89bdfe7647a1571aa8046e4f6f571e2d8b383f8370b3b610c48b65187c394d1502c0c9b33f819eba2a5ff6e2b9577b1712cc7a480d32497d1b78647cd1bdc312719579d3198356400a5be4f9164ba71efc9a447b44c9394b6714823eabcb4e928eab097318e6e108392f27ae25200cc84bca28772688ed2bddfa9615b628f26677f93964a9105169c6d589ae6fc63ddc1b9bb66adab468e4ef3fd9b5957cc19f95e0bfb56b4498aabf948170a1dad4105afc66b9319137366e6f4250d71223ae89693b9e863d4fe20419d6b2d66ff53c98742876a2aeaf0163feb039b43a9756867f92a9c5ec4e1b85a64fc66907239f6887264f70ea5dd790fb297104e2eb152c6815fbdd20764cabe1673b0338ce0de95aea872ce91c152a5e8500b23e4cd0acee608a039e922c761126dbdaad3769153589bd1c860219eadbb2319ae604547acf477a4a62ef5fd8fc9c2fa6826f7d765cc2ff5b899e05c4e675b83c00a7f20a0c522089a1d8dbe17ceaeb4af7cf28a96c01c8e17bd6c081e391edbe70b3d03f59089c5b6d32282f3c0c3816a2708d3a68a4615a1d6490d4623d2f68cb4bc89d220622cc53217022b0cb3657fc216e25b9a81c4574e9dde87aa0b388d6e908fd4aedad6a15e4a5f1a84c6308d96668e547a5f5536914a2976828387004c1bfaf9bf84a2256b071f7a0821b4bbce2a5c222ace880aa940e24b5fd44b1fe742ab04d85eb6e643700e7c911ea44534f7542fcf1c9f3fa79a119cca922b92fe8c5286a2112bf13efea9c026adbe3716f21673498cf0f7bd75c215097892cd07cc1e257a10e0b339c81edcb229375adca68360d9f2bdeb767fced212878bdca91c3c5b7b3f20e80d0b1b7f18993e2af99349160863fc25d0637e5bc6b7c9bb80a15175c7d4c5c88e9742c56d02fb09f142567772eada9e2f91aaffbc949b2577b99442859fc89061ffeac0ff6e46baccd045d587607ba32b6ce0330a4e966f15e8a8092aca8b07a7eaee0399d6563c3b7814ce0690b038d0e435b0898d149b43121ee778e73222174cbdaa9caf573eec276fbb0edd7aca4a6128093754f2f1b7fa151aeea7670323da4decd135774a9993ed3bc3fc57a267f48c0ce5efa8a0fd4b2fd50eba14a904f49974917bb3f1713e3c8260655a9e2529ca1c554b8fbf217ed74a4fa8b1d5562c15ffb86052d4892947909c512b6a5ec49d2ce3fdae12737db98210841ad16f323126772d18b7d5d23ab73de120f26b5c8a9665e76482383e3187e4fd2cb1562ba8052f7fc1b40ba47923edf565824fe59e468d6440cecf21a9fb590b0afd4b1a07d7c7c708e3f9fb0b45a7dd26514ba1e872f1ae4b60931853f436fdbe2aa0624e915af7de5472915fba6b7d5e201b8c81bfb5afbc3356baa7072c491737b2057740cc5e2e6acabab82ea20958d5e86ad815e597f4ac8d12c386851e34505a71d7c31cb1f67a13640bc31e59c300a78eedcff9607a77789b59d08084fe79d5b951994ef312dfb27040aceba9e0c1072368384442dd51296edbc5dbf62edca092db9c8e66d077cb88de49fe1f28d8a6f988891c9a4262ff669cc589b3e42242eccb032ecae08e4d230e827a18ee8cdc1a980b7dc19c6f50c06d0d2c543ae95b35c4bb5014d3e7f3ca6830fe3f84ddf8dee74a249d19f05c6623dad3853b9ba791c99093c878478b166beb8c6baf6e3d357af10bb7d5629de6ad49cd85ff4a4de02715d8d53a6448cc90da28c2b23cd151a5684532f79bce9035d0073b7d4d3516062918ee16243bae42016f010c31f80346b8268fbbe45ebec0e69b876622923796aabb90d1dce1af2a68ca7f80ee484f419438c64a044888b4d23521533abd1f58287909cadcf5daa72de6c1cd9b218e08c01372547ab2725a41322f2c95ed42cbfcb0816429f474c87b4d71080360269d7d185fc5b06e016819dbe0d760b39d5b7e2679e707955ec20889dccba3c3d9ba73de08355e6511f6590523bfb7f0c8edf60e7a31753a392f9a941d93c5f9c836ae2e1b8b1367af4cb8904747b58450d4f249436095ce561c2f3a5adf61270f592f4d8ad807237a85148c14c7f1b445ab6e1e4447aaee164e3aa842570b900165416f0a63651f4c11dc6cbc01dc1c38b6205576af6646e532dd4cf8f62e3255dc76a02222a86976398a31cd779e2d9d97c201290e8c9759b58f7618735b805543c24c5608c49ef6d8cfc0406566fc92355015cf9277abd3027c13edd0006387337d9cd5538921dac51dfcba5ec95df4dc2eba974565404d7ef8a60a4ed5505fb2f7c0fd019f0e7512f25525baf701e521fec1b1f9a8485c4f7d395f453976842d151a3723d0d66ca3a62b2ccf946385c7b5b3885be4238e1b5ff65e7c8728df020c5c1b97bb59dd547fa8c98ed6ea3612ce99da4ba90c20a56330c2bbfcd6716b78b09aec2f25ec151ef5e49dbd3936862217aad990aca9ae80d51d909aa65ad50dc6b834f8870b1e04d3e797704e4c39253652656d934d223acec95c8328d516dedc760cc6b9b310359be96e7387b4a0347e745ad4908aca5d8761e8809782b8923e7f05d255c44e86eacfc3ce8732aabb9216a1509d3f9cb5ee497ecdd64069ddc50d6e5173955a347bfd36359b1be231e6b53d6422692a351b00945deb11a7023ee7013bcd14c1d7822441f9663ab0f77cfac42bcba458d33c4bb9b197120eea402693946bc87f54e8187edc7a98a15ea58f5e95b1f4fcaabf1251d0193eade82a6786881e65dcf57ed54b801307e1c0aac61f7828779489326463922ce22ab832b3b26a532e9a9d8b9c594b71bf7367940da384dc7c972e0746e790b1ba66e6e7cef5fb7b3b9efeb312854aece4ce0a89c3a01efc6d89629c3c81a29fd1c6efc58fa2fb09c12f3447ce821a90b3529998268b32f1b15afde3b42ea2e0a85c63c021d3b682ccfdce025318488adc94175fe0a04f373322712ce3832e7ce267dfe9870927283ad7219a3a693422f648aac2db72ccba6f4fb1ca46905ae2490e1cbafc79c4f6a663519fd5f1ad51f95a9d04ac0efa3f44963596f890032994b71fc703e18e844a9b33534b7a18061d00057e8e4e0c458625a9e033b9865d60331ea04805d5002d8d564871724afbddfbd1a2624c7a0cf69099ba23d1dc784d224c5fc5cc2cb6b9262e590da5381d4faaec49ad7c0c3921be3f580c94b112147addecab9b4b41f3cb70d61226aa97b09a7f109f80d8cfd74b9d2a0e98d3165f1dac82f283a5803422c4b617075d803ab772f736fd29bf39ad61b392ac9ce9bdede3c7f546274a717a77aa0dac4bc150531c2a8eef5bcc53b3788d7d71b09bc220de90df85be46292008aa9aabd5c92ebcf7d7fbf5e44374ec6516d687e8c045acf3f7bf1297ac00ba2e47ffe054a5040cafe03a27dc8b7f0b29ad85ceeb9cf09d0b92bb9e7a2ebeb6e55ce27d527281ba37bc3446c39339cc73b6a309f1910aa635486fecc3befbf6e1fdcd7cc5ebae0f47a635f4008254ebd04688d17f537cbbcb08b26a8e47c18582a324b3f90229472b7053b9a6371f675d37b14492683675668d986a84c4b9097139e3f9411c1a0a424004e30a09d002772f17335de5369ac612ecae9da6042dd6c155a2fc19cbbbd651bea0876c2ef72aa4c135fddb4f7226f9aa86a3f597d2254d2fb5d3a5b372b98344bbda390cd60ef3d6553653608c1a7372e044212ef78a659d2c2ab73eea8cb5c115ca2160e6b6dff6d3ea27dcbb797cd64f5ec4b393d3fe064e9f360f237267f267b9f8db2f0cb2e436628758132f96a53e0629e30acf94557dbd1c8e649c1a0092241136e4dff3df7720ebc5dd7798b101049112604a98781737b98741cc1de4ad1fd9b7e282b7da41b5b02bdf815654cb4a29979d187b0e67bd029887a929d87de350597b4579ea2dbecf490d6936c504d3c55ec9e32b93b5c580929efc4bee329ae5303e93d020b1fa627c6db0ba3a8fb3d9ff71c494ed9e8b2ae7d739fb194f2dba40c9a973a525d7952cd8bfd6f50888f12ecb6f6da70d3a6b3bca03885ca9b5c7be2c02da7a32df1360c33e64c8f82d5a181d7de918389a115b6162e0ea2505f76c1f1a1286d57ddf4b89a9dcfc0245aef94d7842198dbd2bba5e52ce92b743a0ec0c5f09168e4d81c34cb342147a492c87cef529de0bfe781408e13aaa2a043ea4b53f3e545d7027e1fee0af57b77ed043e76fe7783c51049487f1b19c1448dadb3b42eb7b212dd2eddf3823681043327fb3220b57044c0edaf2fac6673678ccdeb99cc10c58f4ad3f56100ba84f68c3d8d8deab5a1c08721814999367d4e6f57c005ce3e64f33877e20e720670cd0ab56c9b4173544eb7183f74d946f6fc4386e62a078cedbcb42b3777c95a4ef6b7ddc35be381159d985657f21ab235233614ca6c1145464213a77b491e89f86cd3e26454c1b92937c914b83a8db322488ffddc662cc395900239d7fe05c4829dfe5311813e1e2e0a12b68303b50334f29230e1c6b148780bb45d7f2ae88f615ebe300e508235544294f7dda571413b1bf97efc3c2977430db2bbf33b4e6fdc8484a7087b7f220f538f46ad5f01216a39aaeb00fff64e47ec3283dc748d9dd57532b767486eb052d80a2a6cfc485d6b9dbec5e9dd9c311d187ca74bdd52899b4c3c9b21654cd435765eb29663615affa725de66f80359072d31545dabb2a7a97e264413235508a04cb313fc6f88c2394041a6cb1b4868a9d4664362206997cc06b697eb5c82b2ff6a3e9baecb455d91376dd4e317735784507a83a0a873d2f0f71d3cc4e499a5960891d0f8fb7cccb89f99854e51ea8ab302cb60de94c18ecad5aa1a88e3c52aa374c9d97bffe2b4f0357ac46579b49ab6d1f6d9ba6fd5dc07b7572c9369cfccfc39a8e159faf5d2004ca2e46788185317508d4c5a0fa617ea638d83d71df8838e266c089cd0b2b4a71094521f9f56b7aed87773ddbc99b9a3310965b0f282ceb1bf95b0d69eeb786e9b0ea8eefaed9855f8e48cc1274c168301aadfeebccf0af3dedb8aaf087f97755f9aab5ca192b3f7c9ba5888025b538fc77121610f7df259a06c0f903a80628c75544734c90253cf9eef0333ea20b9923a84238a8d010f5707aaab4822a53efe9edd7d79dcfe4126a8d3fc3da532a9b52c078b65d2921019177ae7e7566261371f99ffc5398b1c5a1326a3f6b96db2ccb4640251f0637940e1f751e81de226d94445100efb51228fc7da579ca586a2abee315bc6dc298434ad679373a356ab97f0ec4da656ee3aced46c84a9eb3ae0fb0d1395466db857db9f489f03ce969099e18f58cebf36fb054ac4cc448093c9b169351ea7445127b73d43bf5980e3bb0ef9a46194b81a7b15255ae3e5975219b4ed8a74cd22fcbcb38b23a893db4c18c7dbfbbc38662b8a8bb40173816e73c24cdeb4e14347d43173b0d34dbd557fcd5bd96882d5344e5e22dc26229b5b86a848dab20e45c35ff88f68fbc5b2aee00bf34d83cbf355e6b5c3d928168e2920fdf3fd87b32be62f4cf5c6e1fbbfff7f52f78eb36f3abc323f7e8f833472e69576b4607fff22f76cdfb791f06c66cd5bb89f345319b382de6ef974b7321f3b870fea452a9cece026ba76a46255548c6e05309b18e5190025430233eda9c4d0f72ba0cc3540b240c07f07b3413b99730512e69202d925c5087c543fa6de7a782c634f13a09425a16d7bd1e32583a02c62b7997d969b3a627c3c424e5fa6bffee448fc07bea817ec72c34941c030da6783ac7f3dc48074216beafc00a740d965c61e0fb15f60463537b6375cf798233b3bbebfcf8f034cba8e189778de6e2c7ecdbaacab145ecac4e5e4c7c04092f4d302a1379c65c28f28a4a100a268603a4a7780036f324330e86bffd157257fbc3e89c4836555d52ea9c6fd667631702eb57ac55ba3d5636a978791813b04070370e7222c6d892bdf4e89c0ed73adeb0e749aa47db0e9322e633f8902dce2da566986c66de4f28e29284514911280f7f62774cf401f4e2c41da6840672ec80db2efe101e91db5765f61f692114dfbff29b4251022fbb2ef7865bbb573bcc8bf977ec8b43ef4a0e3128e58ba9d8b35e7b1329a48a84517196559674739baab09c25f9d98cb4ad982998209593a22f9095e80b54bcf8d7b3ccb3c33ee59f33292bd6bf2e9dc4f5e7127a102c632c06d821111f5235a3f785d1d4111c6e05b65af34db54ce7e825b2853ce49d4247b27302dbec1579588b6cdc7177e1c393866e747ce3a38a8ff89fc8fd4f66ed14de4a3cc0ecddc3f631621f3c9d23f76d4fcdcd6144a7b0f7590cac04789ca54793d0e231a79bc8f1c034896a887ead08653b9e8ce53909886115bc8233d8e0138dda5e85c4b2454f112ee02b801a72d8b292e3da980e25afe6e47c2d7047f692e7c8d7cb2aa78f68436c82954a492f741ffc4e123577a26bc5ef60b3b83a6b7ab20ef4b21a296774cba1c5ef435c578062dcaaafd1548240770aebfbb54271f51ca06945be507989f7bbf8b31a7d2b80711cb1eef2817fee8070ad2e7ed27c3794854ffa46cb30e57534253bc351fe67ea797b7e1f889a70fc57ca25a6848f3fdcd3a2860a95583bd7df007b891ef7738fb1d1071659bf6885a725bf39db5ab218a14fb9f518a788a63fac9c7547800cfa8f0e6d4a7d64fe9642797433116ea8693c780429373f2d8a68a5b28a7a4ecaa597bac181dfd0a0cf098f9360df2e3f993c0e0fd92560446d97311199f595fa0737b7e6105488dfb485d54f8828e1f105bf4270974c200923b988d2848a18876a8ea2e4d951cfe8a0f244329398dc6baec0452dbbf4e328a238fb499f716ec150f8ee06daee231cd474c97bb51d3469fcfeeebce121a6c48f76571005206690199f92be5ef4ca3e7c123de5485ec5d968227d1ce822770ff6a1278b879f0a2df9d407174e406c85b8ff06a51a894514a719096130cead008a0a7200b30b9d5deb2866f39ebd942aaa5b4bda1e1615f032b663395d82816800f21ca8265f0661d1974f480b1bda242e5f4f85cfbb56e83a327ce020d32890d5d868f3b1dd9e8e94def3a37df91b703e6a5c2e928cdbf36751be24c4105d7523413c6f3836ae26f84795332487161e773abd775b07af6f94c3e82f30800f119daf8bb642c5b4c7392299e870fcd44e5e25fe913447c3ae3d7cc6fb259d9e9e55605ccefe726e3e7aaabe3df170fab5f4a57db832ccb19c705d3e3fa6c994d2a717bcc862e756b15ad5343178f9c152362e758e97ae24c5bc9cc1a7bd17aee4030102141a66ea9c9cdabe8dc78ec1dc3dc041b48fa8e505728f261519e7d79648bfcf1ef21dcfd009d15fdb9b5633f3caba2f216979020102161a3c4b47496ee4c441d2f1cdc0de411b63635ae3bcf9f220a9c824e1ddf90c5241bee9116405f6cf74ccb42f0bca656adae015248f114c4be87482723c8c8bd04b39d85471165843a12338196e4ef33b9e1d63b4d780baadd0010c309cf3689112cac2445f548440a94638a6859a4f78d5add81946b4ec840c80f67000079d77cb1678e815b8e61ac3699c04c929b352faac2a76b784022855e56fddf86f6de6bad81edb05a062c845085890483d959587b1bb6890debf869a44b2e0aac295274b6bb2ec5fe123bc5cee4b31fd734d7dfc21151365888f8ae21169c61edd419873b6cff916f3c8485e721a943f74d2b747f3e44256df498a8031868dcc81b8639279eb962b6a66ab89902cb31542e3d517dc1fb9b720e6b3a3b252cb5a29f37388e7cf4cf7a2829c80ad77bd39da3c3f5fcf25c9eeb0963ffd803d1c732e4b9ad0023e238702c908b6d6fa38134f06b4d123f8b9a612622116fc8a3125df8a05c6fb0ef365e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1a3961136f5b072a7f127af6fc80865f599ce721fa53207eed8f868f53c7090ef65e785980b4dfaf6f77064eda451d10029ab51006fc5eda1f1be3b866861bfc1f7d272fcf770f1bc5a6adca9b42a41a58a4b444f2f7620fb76a047e1f2d0dc04d6e4a2f14a7745296e96e75273f9dd5216e6030310a5506b41bb1d4fd6f09a2fcca3bdee93104513a9e153272df35e0fabdbce7812782c4a531beb883f7d563dfd5957d5f2f807ca519bffea2e47c19c39c40cc43a6164ce2a7d10d04f3e0bdbcb584fcaeb966b18acf1470d69fb46551e75f67def1435b140d50587ed98933e411e00e7118d0eb1a4b5d3581169e76b988197e383238e7f8738ffc78d3aa310d486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fd486cf6c1536256bae77f7e21d37ccc2228f1e5b777a1336c43878d57ebb2e2fb74d7809c6c9f24c7ae89c9647b42a07894b89acbe510d1657cd0f49888516666ed018acf76703ce37fdd60e554720394a67f85ee17fa976f87ccd6f90a85fef755650106a8ef815d0e5c231df595b678f9d302a5e4a6c15b38750548ed8e51bb16af762aa022ea39f4776ecea22e8bac14deeb4cc9c1bc9ce45a77568502c5c2a090e9239328c44e297571b39e2928bdc5583dc88e76f4d47cd93d224b24a4061c861fc80eae7c95fb1caf75496358f0b0f174f8dd8fc8fe4ea619b8f88ce0f77cf8c2e90f69af4bf3d84b6eb29805e04d83a30cefb5fdcf044611941347fe4bc4cb146abf2fee0ea7d74ccf071929f83b0ddb6151657aa7d46a3ddd05038db7be367fb4955982d559b55835281056822bf814c02f3470835fd3ccb19a8ee16be85ee6290e7ad84ca97f7ccd05bea29e0ec90c26eb506ae15a5e95863b871172d1d6d1637730063f2d87b8e198b5617433d3259c7c3ae325b3e35b71a51e956b7cbef9712ed67afc2c356248c18244539fc5337535a562e5447fbec0e6697bba77d901272613d4cd165ddeec2f6b5cd29c730c5d85522cc9d97b91a86f4ede6c2a01b3d20372d5e70563c0fc36d2b630745f1ff96040b3f8fae7d78cc95d53c20a32d4af84080d355b2c6dca17a5a793c9032d9d3b401a917b07f72aae68a34fbc1fe26a578f27859bacb39e0784b9214942224af6229f11e07fd7d9cfccb4e4b08928929f2ab49b1ae381c088ee8783be29c717b5bdd353d615e7db652ae7b8a258812d2774113757be757d59435d726178d48c6b6988d4ff1f7b68d4c7bd824d74632b306e9b8c9e0c14df58a2b7c3ea445606b17fe5a9305b8007fa656a50dd0e921e0381dc01a1cf69366b4d38c3e552d86900cdaba1c9de8c5b69162e4c3810b7c30fd04710e0ff6ec53c0f0faed747bfefe21e102e0e8b3974a6c082ef5fa835e9f25b02344924cb6a6bec4975e319ebb147abc75611c92b6ee726697570b55cc21ea445d0275e03a50d697a2ebc03a6e4cbdc13f26698b02aa77a581c531a2ebf1e95e634b38e774d548fd04ce24d49bb407029a6fd04cb97ba5ae28da99043e3e33ff73e2577a222beb9d1ecfe94dafd108a35f87d8157fac9ddaadfce7361081470a89f0ee810a78d94e179976cfcbdc0e266a61f4a9798e60183508eb116e676a544b00de2fa949d33bfb66530c1c42a4dc9729a19011e398b81aacf3b3015bae64a55d63f4cbb7e77cc3f868d562f39a896d78e1ad36473afb6c9f95a8ac590b10cb82b36b3d28b34ddac52b68203321d2288479a4220baba748900d6f9e273b063d7eda052bd76aec671b34036f64c3be125b426d88465eb77681cc3f2cd386bc5f6a636973619802704d0fdf6a957d298b3c248117bd1266275019864e053d042369daed54a35ef46ffda4815b4e2f8a2966c13bfd4085b043e7ac5d4f94619deaad90ccee28cd7343c1e114c17e5a812c2cd216af36c9f8f57d767341d750a5c2714a09bb85eb40dcdd694fdb7b6c95dbdc5cadeec01d93482bf21c0c200fb0d681e5cec7cf649ca85c57f93eee220eeff6356165ac12583eb4c8947da45b26ce1c05aaac989c1cf965134c3a52ef5169e69ee8715c58095155efde37c4ed163bf3e0e44bd6b52be6ece68f4cd66e991a4fd72f6818604ee363ae448569b05f834130ff2e18b26d9b7730e44ecf85755200dd18ed2a58426a42c38278d7da2b002b87a2afc97eba5379bd76e03d50048d2be46ba912be53754e61c44e31f66a89b71f11109498b31bb803a8bffc3d9fada6d77432ad52d2397935c76820c76a21341f2228bf7ecc16374817986c3eba9fa495ce3b8b9b605b08d3cd1f78eb82055f5ff9d55396b1a8a53fd7e5ce0ab6a80ca4256c1df7eed2b45f72a12e84884d2ce0c6f7c2dd43ff58798e5731a003630be4f0c224a9e584791bfa487f469d880420d73c4bccf0cae600b3462689b0b8189f4191dfb8dffa655facb35e14c1f0dbce2af97e4c02db85b8822cb743269b8c31c23025d889d07641eecc7a5b90f19c21926b0efde7a0b53bd7fba871a750ef6eaeeb9cd5b53ad8d18d19a226b5abd22752de09b4f03a7582b36544e4f69310c8e0ad18c656f7bb7466be6509d7bf7f0440bedf08dd5c852e67cf1d531e877ad26eecd7fc46f29961cffddc074ac99097954299ef6883ecc2f9b0f2fbf3ddc33bc736dfb7dec1f6fd6f6fedc3d16fdf9967e1ad9bb640d307251200d9348285daff1d7b9810c323c26b9c67f1329e6decee251bb50650b7b9ff6c92fb0fde8f96893beacf91f5c55ef1b714134f904e27c06c030ec8a221e37e508507dc3ecaea2f86cb905b16851cdb8decd71151cb2a39a2c0ca0c0e9b7c807735f29f365f4ff8112a83d56048faf487bd6bcf1f921a6d119f15d5bd3dda21108967f6e3b1279f5e81b6dcac6bdb7d9fd8f5af4cf8e3f6f07099aef7d4e020f82bdbd6891005440cb6eb2c0c09679b78c2bceacde707070828b95dd915a3e315d963797bfba550d409a6e1d0ee7f34bd35d27a520b0e21b72e03e2bd056c42b754f17d75b1203d27a94abf103ac492442f8c288958dcde2e6d6ffc387fe3829eec9408a67a6ae8a92042d42f10a762999603ed270ba31f7db42c886b6147c0a530d37039ab3fac517efe5282a6f29a95038b8475d9e4afc6ec6ae5c6ace6954ff4cd42d50ed69f6e36c3723069e41b4a2184adc03d6f1915b08f20630dfc15b7f6481fcc01c6c722fb90e439c180b444db6ad6b20df44907a2bb9f03bab04ab7ce9e3ece7bf245514dce9f96040a81340e47cdd44775dcf5ee227df0c0748109dced80749228992f01af59bc8c7726d71ebd706709aaf50ee080b0bac909cd449646a4f550e47aa1009fc7900d308a821b809d8c2d0335670aad712b2c47b53353a5427f85ce934965909f44353f9e1ec78c4d6f2d09163f45055091edc6267687bc04a665d6654b891cbba3db4756900b338e86628416c7e4c13cfd9b0f652707414a754a855074be080fe188b3f1abf95cadde7456770d0316853160ca99285ca8550e9bfb5613143a5f1a24f10eadf1f611ce50df0df23a72e814f738e60560ef0dabc5f7f8ab3ad8e5e2f5843dac6f9c0c9eb5a16097751f6eee40f460089816f0cbfeb9c32f8bbd0b8e5d31ec482e85a9d1e840b6e1162042561074e0439e48d2e15678db7ee619cfb3caacfa4ddabc7d5442dbf20493e0a748868bd60e8fc8190a38aa81c1e2e2b43303f05c03b92ff153761076adaaefcf0004f75d9f21eb2b1c8abe4f0f29073247ae83a6044d2854b858860c99c72019aee538240dad6d3febdf1a03609d755b4c5e6bcf3563785d0bd92a6aff7583c18c1b2c56864a3023d3d3e9a9c947d2471942781d6766c8906f5781a9ba589cfeb72aa6e2cd8d59824f6869d70d082c3015396b30af597b7f12c68f3944251873519193c160684fd2085d326944cb70efa3873606da4cf00ef8d9eb85f080da2f5b97286a2f64caa74fa9776fdddff28ef6b7b47d4b9388049cedc5ee4248253c02bcfb2d1ee03fd660a73a098d884b90024aa1c9df5cb68c9143efe7b120eaceb7bac9911debb56a3ce009e353af53b3fb6fb4d5297c68cf86f0d079e9472100c6a072f5b200ede7429bc8977b544ff631dd1e0f3882e98d4594ae0ba3f31e763b093f76e1f6a3d5455c09b2cc1d4a6804256cc021d22bdfa9207b92562b571f7ec723d08404cd6959e1a662a66bc766dd379ba1bd8ec07e29b8aa45b53096fd5ab166c7a4cce0cbf8a4132e7a30446f94953b60e231b4c357f2c8d3968b8d928eb3303de2b3551af33f2e4d74d11419450283c3e12d1534bdfa1cb0e1a6a8854b338b2d29e25b8653982743046232b23574c0c4331e0bac59f1581eb70b9271ffc4b156fb25f6d3ca70f42b02159fd6edfd58c468807ff8dccbba548eb85ad7b27cdc5d9fd42d41fe50123ee71852469695eb25502eddf8149018feab234bb1a355f7d52f2434270408bfb602a56a0490a6cf7384d2f85c8b4a34dd92aff7202fd0ed6388f1b10f8661323faeabcd29a7ac114500695a5ea97ecfc19e11f776778bebe5119b633bfddfe7976b44e189c07491fdb43da05c140f99eac6169f357160a113f23bb2904ac26ef4d3e9c8b0894e45c0a0fd3910d5d8c9dd7a0f9f3f368c39027bfb2dfb89082795a4e07a10b5ae3aaadcbe3fadc7e701562c64f9c5f60e03247a4ef69b9cc56d40bea2bdcb7942d015485f7b7515c374cf5b86e634803d36295fab13c6a7eed44863143a106c9a6aba1c2873240335ea394b1623c858227325e07c74ada6604aba5a0800cffc902b89aa37096be6e66789230938c43307d14f2d10ca94a16d661fab3d3ec45afecef1fd39e73c23ff600e299947cf4f65cde6e39ef55a61ede94523b2ac545452ec7bef3e3fb6b7a0449aaafe051122037389d29881f61ff47595a506cdebe652c06d9772b9eeed8a45780baaece2d060c7ae97993411f65c51f5b1c0654cddd0b649a75aa6ab64497a25129226f72c6248836840f7022b215bc1d4807ce5c44fd16675dfcaa616ba0987dc40fcb8fdd81a7a2c2316c7eed8f30c019f437f8f7e9507e882fcdab408bfe17f588e054ca87082ee5952078bddf3726a74e09c9e490400e88a1a4299a443b94389a16f0a2710d55ec713befead2de0950a051b1c170022e22b96fd88d40db443e5c47904d1c963ef2cb12773ae2cf659ceb3b46cba4d9b00ac4d585123eeb99b0c8d7778c2c365380f1f84ed905283bc882e9e27953b7b0b5b489171a1ead9033b3be674c8131c9f26c6f2ed99f454cabb3dfd1ada43f22ca6f5843d571fd8f318907b632da1ab13a90e48bd19e6d5640e4a418cb6ba988578d928c0d5d481d030d47f86f6b416811af7b4df484105f4692e55b523cd4c596b1ac091b2ac0bfd4e63c8544fe2e815a159841167bb05244f32fb6f26b9490530a62cb759b43c30c1b59b66d1e550d7927271e40d9fc9ecf4d06df5c3543b865235836c834513e5cb449b8eda2a425aa5e5a9813a5bbda1790a2864cc16e41848513f5f93c427f85ea3b9aa7f65c1a9987cf04f8323c8b524baef2d99087f56a9240651f8c28e13a47acdc0992ee7cd38920c8647413c6942b9a6d99d1f7fed486c97b39d0f6171339559d85b5f527d983856bcdd6a1cce2abe81aad222f09e2328b006b4bef944bf540c3dc3d03866b697bd672ae330d0d1f7efd68ea2013cfc58a55faee4472bde1c73f04c7ec740c4e107002dddf942571b59a85c89f2740e824729c5ef8451fbebd05c5e95f06843486dd4ff01c49af433ae4c8ec378c3295930c066f07276e3422d150b7c74989a759134cf0ebb26ab7e76570caabe0e110f46bfcd9b4a15f60483032ffe7350f3cff417ccbd166634800230ee20a3bf74372774e27ece29da045627b27df1987a493034f9cb039a8f91a5600c2217419454ee50250cda276198a315e72214e193bf65f27b8f564fb80979befb4eb0870866f9e958e0ef442c65486e0ebb38635b6203a485078cce3fafa6980789f6232ed3de4d88e2d96bd648c4482e1069ec34575bf6739c270d74bbf1d8742d016de19c11716784f8aaab9a763d6b3e6d5837bdce28e77c4e5d772dd3adbc19ab23691c7a0973178304ae77271b9b6302f97cb8d88b92d1ca5c5517582daabc93fe7e5306fdfeb13e100666d2a360d620bbea6927ed3154b68ee2fe4be139059fafa501d03719be5bf950337d8213bd6b95a698ebd0dadfa8f1467dd72d9a26d0e2985ba04f08b82efe38685f688e336a1e3caf521fdfbe61219ceb7511c0ec8e5169c51d8a8e36ffe00fca66f557a0316d11cec60315e94cf1763907928b079b8f4c74c9539d7a42bb652d4f6f7d263f436d7391609bacdb27433565f5b89bc5cbc0d8ed97771e53f45fe29a029586d9675b182a06b102aceab804604d2ad407ee0619a176c744035c9bc33decc180f9d0d87fb4b90df7a08c1895add7eb04e728bf0b7528a635c1b6edf0dd423e00542ace09e739894d02300cc237c350769cb20a714357716457cd95762b9c8b9454a1fd9e9d4179fb3efc3e3f795f7bb7dc0dee9801a2cf0d471efa6697b02469da6ab1ee66fe985cc277553199266273b1e63314bd7fb7dfb2f3fa36a612b7e9865cccbc7d1f616775f54d6880c1be23a48799f2d331285a8890dd1ae01838b65d220aad3c622e3d3e483d8957d44ea54bb4768f298beb5a505f314284e2e8c8424d94563ae6ac3446a8c54ba9b13b6a2c8c28ea00e4cb990485cedc0f7b6bcc8b88cac51ab1f39b12e56d2ce2cafa1e74df206c2050c57dcd7a0f87a0bb00a662524d136f7b8e6e05c8e4f5e0d95c5febc1bbd9eff3ed2d8b41edf7ea9e841b27ecd147e89ca95eaba255ebb31f10d3cbcd24edabf77dd6a5513d9194c7f6555c40cb1a3c981ba6f0a1853e2ee8967bba8fcb6835548bf9a582dde5502ac05db64948ad098b159bfd8fada31254c530396aec4e87c1a4dbeedae1bc17b702f73d94a0a45a3b4088510958734d89aeb522b746eb51f6c5e8a5f25994e3906b94e8e801d34201df93f2beea12c40715892d46a285246ac59bd7c295bd2fffd919b4490001b04ea8cd67db8ccb66823729f87db8b86d25ff54b459904fc26ebcfb0b71ee6a83c010c3566275fe920434d4792d055a5282832eee0dea27eb757f00b29410f5879c572a279113fc1c4a2c75fddbb0b3efc22f8383098bafb694a3efceb1f1561683726b046aadf4f4c065b870207ef084d38dfb83cb5ac19adfdfac8ebf9cf741402d60c37fb2dff682919f6d449732ac799c38f6bc78241a356f860328b06f4b6fe82630fb40a45cdb491919e2a6822c011ba0da307850626453b1ce798297e501993906b649c5fe536cb0ab89c56c04c4668ce0d8e1ae1de21b28d73e1debe07e2c18938b57fe94bba4613ef1844c44f90f8510e47e41d40da5a55c669c93f7d6fa902760a52d4934579b631ccc9c6cf08e08efad36ca23330bb96412953e2a2ff544f06b2bfd4e58ef561fa20d8442142d00fabedc7191a26f57ce0c4379399aafa4425288243d6053ad62dcdda6f7d2abe8fca57b69d09075f61d4c852b36e26547ed0c9fad313db91b78ed5b893cd4ffc08fb5001bcb114d30a61842270c7afaa9602903e8ae9a78ff8572feb604810d40378540918cbbf8fdedabc73a9636daddbe619dff43ae3ccd4a1a5062a6ad276f6d057b0e2397cd1182dbcda9977c29eb330120077701465f2c257ceb7227ffaf23c648aef1e294156b5b56b9c0d2062729fb2e37de1a9ab243fb7dd7c408d855e41573d763fcfccd5278eb5457ef995b203912ac1afb916cb45cdccf25ed7df4dcc0cb82bcd5f2e5a020d5c1787897208fed394e0c1c18cf07f1570dce729f7b3cbe61fc531ba29faf4e1b88e8b818497106e90bb7f142be76862e5051c1990c929e849eaa42555eaa2d60a54c468e7ddde73489691b62299d329abe9ad319781b6cd521c32c370670ca3acf71680788683c258aec9d564c1af0046b6ae18bc120b2f4ae20922229b85f86821100c6c8d0e0fcd2fbb07b64102a7afe37fef28c1c3bd8284d8eb58ac76c29611894952b64f445ab782dfab90a54968d42e0efd870ceca7762b21fea12f8ea5c81695870ab685108c03859f67360efd1ace95fc060013d1f496674f04936abf3d5503b739cde1aac6bead572542934160e2ab3b9026f7beae7de82bb485cba9cf19bb6451b2e86ea54a8bd72f8ad91d3dcd031173718fa0b7fb5a86ccd9f2191fe6d59e5ec4487d60bbb3c330cfa66699ab47741d4c1bd21e7775861740495a72817b35d9ccba3c37ec6fb8f8fa88e30817638b7935840e8993ba837b3a1e4856612e3fbe0d7aeb85f5eb4cb872849a2c220228543a6eb2b69641fbcc5b2c3cb5ada14ee76afd2ce40d58acc70d2bd25fc574881a5b201ef6ee6ac8d993682a11a5c2600e4df6ab59e3d14d617b4282052177f433fb7ffafea0c77341832c39ad9b527307649fc33daa75858335c864dda533db9a707f2f376278463b6a42cd8c69ea4a53af0bd13e04a370556f3c8d7a38d3b43f59c4f11fc406af33538dd257357eb5cc5003b6ee91b0ab95063915acfdaa3636717ea4c29ba17a8fa71c54a40c72c582ff90b07e480fc2a5a9924bb5e071a21f370f0e9039e6dc18f9de0fb827b244a37a2224da0ca2df6b0f586a69dbc7c32d8204016f3d8beac7231427860c7ee366f42a353d00cdafd425908a33841df7493eaa3c24b3f4cd07c4739ce1092dc13d70cdcc7603963c071ebf94c6c6e63331de9741a87bfd900022821a0f57735c2372a7bc17d4cb837cc0c12c75a82173f01db422e0690c9111797841b1dd9dfb8dde4fc9bd507d6db1dcdf6b0e9022a7b9709d964647cac340d6524c76e27224a3055f13c2948010a1d301fd4bcc79e629e2c7b2712e500cb51697bd2e9f2c7f8991212e96c9b37cc292ec83a27e3d5d5b2521666b995ff30985fb722862fcd950f52cfae2f17169b74a3ab8ce9e294be6e37ff56c78fa70aa48cbf52344697892ffc3ef12858b469d2a70b5dda8bdb38dbf65d78c30b2548d1bf4475839b3399ad973a50ee286e44c260382f9d872aaa5ad9848648af0f327cdcd38cc3e9df6d20578bc694432f8943bcfca7c52b1b5c87d527e2ac3bdaef0a7c9b3eebcb333cc0d88f4dddab206c00f132ecd9fe8144f9efcd8d9a4f2b8aa12afe30599fbccb6dd0c2d619b8be6813f91ebfe63d7053ea886875efa24b152cb244e8a9134c718268c5f32f88949ee588339806a3b2d613a7d9316290f2cbc0724287f2920c28bed47179f1ba159e16b8fe083a8f635306b19803e52862c71ec4c96354986c58a2e8efb012f37fc3ba8c463fb73fc0cc9370f10a06f3caaab26bfd1c2424c139bfcf9dc2621a036f1c3a5b1afdf22f43c7b7106d5c556b94d5708f0251f495f2a5a5c57355d026b8ca27fbd5d32d3a9b79112c4919fe24dc691e4fbbde56c58661d0dc2c3ec3aed8504de6db24fd07c95a5f7eb30b85cfa554b32817a7d5c8915d4d9f04744495cfe576de600d0d1734d0ee46234d536ecebc50fb6d42177606a57f5911be2e4afae08ee08ae130de0a412bbb926d5ebb770ddc0b4adda14f63941f93ceb3c091262e7bc2690b29865818d82e8296812671301d23d9d2bc42a703a400b383b8c0c3085fa2894f392455b4feaa161495e55bd0b1d5733fdef62f3a55906ee30835762518c21a7c6c7fe0559ef59f10f191ea1c4aba43d7b6f57421006c3767f8dbea18dfd7faf1cfa41c83727a4294dbce735d20503bb25dc64cebf48de93b1e878739ede2a066d08ebd567d138ae66e647c8d880b8d71cb02d9c82433e8a89cdadafd8a750e397c124ccca598c4734e3c9bf372c92d76530e69d80fbd17db07da496ff1cba99cc71fbb5b35ce2382bc18b4e009e1f014168c598d99bfb5c9b87f9e84d83c61f247e84d4936c440422ca0507c9e3b17f5f5eddb242b9f7e72d4c3fe06dc8a6449a20edf566196239b827f54bbca889aef1f9e0ce35452ad99dfecc710e806badfe6abc9a160c962368e82e59367dee065e8491fca43c33336d612196a34d93bbd6f1bfd298b7589022d38195a49a2aee2e9d9ef8e831f59bea19a6351ce68b1e7e090b46802ee6e61c843c75b53d6ba57b4c3d5a5bf482959a4e161003604e752a0fc18f0923f53b74c4c4046730fa6c3180ba6fb5e3d7b0bc3b9ad1841f3fd3bae114db71bcbd055bad0c8d5fcb293cec2a0a7da75ed515c1fdbd76d2e8c9b4881fa775066a5f229f68c7a082c5d1db4c8a4607f04c2641413632856649b6c559a6114f6f24fe28bc8b8babfef15297248bbf9260bb49bd04f1dece0f612d544495fb0bda63218f62b561515f11d839b677445516823ba5a88eaf828f637515d2aaaf52f97303f43d3ff5c0522bd73c03587c2f75f563ceb4a1a26800912f05d4fe00ec531281b64d07fe20f8df716d7dca7dce1ac293d2b5af0d14003ad3f93485027a39ce2ccb138d89fbbb6227037209a8405bb57717875efa2aa14bc17f83e959a692e6df374f56b2a7ed0c92e7e23733ba13982b57d4512f52a92dad3801d23438e6a426228c3ad3691d9b141e39aead5684a7a4e7a17ee2cdff9d81f8103421c8a650c961a9f5f56adc511bc65402a7156e3406a21bf3ada4b867941e8b13f8f8687c0b0db629b76e93ff1fa57ef6d20c269543000e32d12f852e4b924d0fe078d794c485e92a68c9522196ddd925aa2daa1718a08db0c2046f4fc1f8cad6e78e49406107d956ff255e4a485b2186f26f37dd0740083d9b1c047d4edaeada215bccc0f8196e29777ef4b42fffc0ac17fd8edcbba7ecd385d18ec551917a82b64da47a9a3daefaf5f5e1d65ce592c106eb1b7e0889b48829c3f99a1bc089578a3260a0f49d63d0d81a13f650c5ed088d4cde90aa0f51111be153ea41249cf85ecaad8a3ccae8848e9655e569ddc6653a897a763d40529c54ddecb099730bcfd54ae51d053c8327d1176f548f07bfe0fd028f26f6f6903106a892f0f8a1f7348c9bcfb99280f14d7913d238a3f5bacbd07d443e69e4d8da8ec881c14728c82b64ead6f21b3400db58c8c3a749ab436e852aadb8a896793f59b08ed59c386d7867cc26878e9443ff85c18bc87e0841d6946b4c673de7c838496ee1147d813885e150a2277d9d7db1e1ddf21ba061f6fa018fb2582e6122d1dc4b5ac7ef1d50ac54fa9961f1445f85be92dada9bcd239c1e4bc4d7a201711e3c9292853986cbc78c356e200e66d33423c799179ebd378aa69a8193814c96de389f741ed020c3c14f005bdc12d4de549bb4cb57e322aa1043e0cec6d4235d49a2b2a835682cb2862d41fdd8bacc03da95512b086ee09b2533947561b078760011e3d232feb7061993689893ce0c52933110ac23a7f5f917f326df590928eea6e1cab3e34099b3e553dc2f8ae012b64423b51827002f014b20b54de562375834d5434834be500abd23d83cf8b070b69a1da6303877a66b353e31833fdaf9286903bf2436252ffd39b065c64e459b5dfa733f6cffeae666c30a7d0c36716a5847762e13dc89cf555a648208a7670e2dac95c7dd6d6f1cecd9c6ab600ad92ca6354893669556aff53dfa9c6d69b37f6cdd2c5e564e66fb61ff19b0315c93873d2bf1f49b2566cc085efa4d839b46268e0edd15aeb664a2bb8d061288e58805675142bdfba4fe41118b68e09334d1763b2a4fd985f83f0dec4c3830691c8e1f7cc5d9d204d6380b980679488cdeac5250718f7faa9e3bcc3fd1ecaaa2cb450f563d52fef98930b28ae4fe881134b0e753b3517928d09f13bc3bc7b10be354f499c1d829e57cd5e5bfd4dea82b87c78857d585fcf53da9123e2905e1afb95bf9d90156254aff481471ff75b7421b49de344e829ab367f0518fadfeaeed3f224884e29380f69d35e1cec316c8c753707cfc938c71fb52966533e410fe3028d6c32a1d2b99f823146e7f55073d410dba896dda0581866eb737f553937ad3d00dd2c3b5bff4cd8e6ffc6831489a4167095f3d9147b59b6d268c59113075eb2ee413c118e067ed3fd754f03a1498b1c6093181d245f62df6847a6821c1bd2f6c6517d0870b0af69b26ff365284413d4e8c152c32c343d2560f6e212a1ea2eed90d4d132ba3afa6bc903619c009d12ea2ff4c8dcd5bf34870bb97fbb01dcca8cf1087ec2d19e3f1e2e48289d746d6035a00cd11f2fdb3d0d33a45a3365cc697a379d5093291437e78269fa16df5b668b653972bc690e67f2b31836d1b181b8785f5a95e543c055330bc622e8cd3ed40657691d5ee314d00e9c625fa2274786f33d133c49aaf0194c7fbb783b25a17d2bb5fdfa8ebcb817ce4242eccde15e14f6a2ead5b731811a1a822e8b1a266c21a38bc29c70a4b5096daa884bc60d1ab3ea76e37f5e46daa30383c0370d1621af8de9f4ef969d2e29a6304e76805b19c4de0b23cddfa89afe5606cd16fb841dae5b83c357ec47f85f9abc84ffacb63affeb0d90d94d2b632175ccd85d9a952d3d17a41c6189375e5e672b8620dd4b81bc0dbe95bb355ba19993966103991811c07ad608b2c222b1a848959420df5f4301dc32e1f5c8ca71b7fd3fa4002ec8fe9ab2c6e398cb43aead43a48dfc045aa1eb3aa7787f9bf7857161e29f29f19449b479cc751bb5636849805d79fc9c12230fef2351a6a007cde8ebbea98b3122cd1d3ff43bbcdbb55131f5769185a63ef66045c6d6c9ee174dc569725506584b797445d7c61effd040c55d62b03bc8f3b2de41eb5eee11286cea4202bdc67fcf77fec051e444dce29a9e23fd34c267c780a4552f50b7c3656b666dd0e1683dc772eae1cf29df5d1c3a06c8ffbce51faf4e7dc83fe366f1d2c83c056adebe95e2d5ab1346acb7657cb164cc06b6e2662e2a6c9d728d67dcd51c5ba7cffa04fca96aa7d55b3bbf41246486707bb3d2c219109c9993bd9d7f586560ae6365d15dcfb5338b10a1fb06ab99e84512605c8d5a506b09048efb0b5403829ebd58add331db0a41fe578860cd3d48c48f499c076327a370eb5f315d02d08f0c22885de97f673a14207b951254dfd38e6a08f97541b70d002958d12eeb31b52fa0fdc4734d642e86af14bbd34a11444f0fb073ddcb58b16381f766972136470307176bc8f8c13b46f7cac6b117c5d2ba3ae5cdd944d7aac5ece7de7a3d4e3073559313db24194775dae829a35e65d94aede43901da43b52f8a50b0ef85bfc7cabcdb82753f3c796197f4a54fd7cc1b11af90b7abdd771ef7632b4dafba24f8fc00edddaf55ada60dfdda17e34da8b355d2d5351523d0ee6ff23c46b548d63b3f829897b66ca32cee54dcfea94a043369ebab4cf9309629ed3aceb0b4a487f44fb8e42e229fbce62336f641746c7647b591dc401e000b83f8d641e3fa31cb21bada1afce9aea71d61196022bf263575d1ea41074360924c1620afdc0f876a723d7aff7652b5fbb1c69075610f251e98f9e862b0734a66e7b77b00fb36231440f694c76ca6d7fcf9dec9b0162e41a16d67464bd351e386583bb9a093968873a1bcd09209c3c2c3d754b68492c8a02c5ecfe449b9842cba2159d5cc7dd7558ce74ae77b9265ff825ed2c5d4c3a982888343e6cf7e7939481be40ca9619a270129b0558cef3a1c558b47da022392cc06d3564d1dcbc86bcb2d5bd725f4eb9043a427c09fcdbcc00792e2b92bea676940e6cd410e7cf52343497c2d2b42b623b44ed8ed5066158d89aabfbe48b9e6d4380df4fdebcb4a383f69e1776481c4f8f3f5845848a04a95a1c6c7c4dc344de63d91afada0f55f3ecb7e931c28527054bce4b9191592450b6f0c4b2c4f8c5bd0e9ee67136e070789f3a783833244d672ddb5efbb6abe052e9f86de9e46da08bca110cba75b084d7243abd462eac27677448ecdac6fa26e1fd4999368a08c0165cb725824b932f80847bf8a37349409234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4da6d3f77cdabebb35aa82a8fa0cb0b4c48fa7eac287735b60735ddc9537fd213fec13e1ac3b2d4d9ec2889979758902d8394261aad42f2d572479ea4cbb3039c81e3aaa9781ea5680c1f3a56ce2101512e6e98864042e0741143730a6935b4988059cef1583e4bca560ef2c6306a245f36d8e28f2aff8b2f83b1f8b2cfd6218c637880785e133fc146ac8919d8cb900ab5cd05cdbe04ca13b9e6b1be5d22eaa5e12af1dcec0a42bf7d221213a14cbf7544fcf29156adcfa6d31ad5456d8dc1ce36c50cd103ab630f08e275c2a2c16ee7731c564a33e9df36d60b7624d34c5db440772ce8d25823580425aa9641fe7fcb9492f3d88d60b6e80a66d5ca20f7551fc92502938ae2af6af68b9278efc4ebffb4c2ab466ad077ef7105a1cc8c22db9271ff8ce0b240c7c748b8a29fcc9a35eef2f3502a360e477995a304b256047b384ae9b6726360f3ce2a25a529e201ae7997ccc5a1c6e4b03ccedcade543ffd1ad159d6718ccaf4bb74251ffb879a61d150e5d9d294923e95dfe5331f7af75f07ba0f451e8d20c3e7f26ba250115fcc0d773e3b9276c1c2fa9f41a40f4a824529989bc86e5a222c49ad5b491abcf90503aaf182ba7a0f1468d8650f669758e34d74445297d7486e43fef64e2e771df99f46037b16af34f84b62d5d9bc2629e088156ac0de1ccec72c8617212e415b36314cab9c498380eaec9bf058d90ccf46ae31bf313a8cf2b4d9f7aacb7e3dee0f66f9fae50ecbf0db1c6b6992a64a21f20621c882c3060a462ca97a1ec3bc37c98842ff5231fcaa8651ca81f14f5db164fe1e20740c54b1d46729f622e1ef14918dd679e639f9b7216a0b8c6a84f796f63ddfd564ef9c5b33bba3f736569bf8ad9559350b17e204508e3ddaccf03a549e79afd0b945a97a5b2d01f98b2220e826040bb59fa5114bbe73ee62b1499b68e657d5261bc7735aab0262c83a14caed2f8e3bb4b58887edb40ea947d79e49cc787fc1dca75eeae1c7d2ac13a5c2868f79c6f9506fccb67bc19242adf4b469ad40b30d1abccda0002ee98fc2c111b66ae27a9caf05eca4b31c2a129206bbe45848f6e37f4f41e4e3f3123e3f0a0c01c3dbb96e759f1f4e5298271d45aaf51232059942cce319ea5012b957dacaef8ac4aad37d13a540180b39845c9f14762b2de71bc8c59a905fe4af9a88b8e95369494d6415d90431f6e5ce123c9266432803d6dc2e240a88b86b21aaf7fc09dfab3e428546c6025bddd1534c335bb3e7803a2b094fd2a2d80d3026c4447805ecc4fc9e7ad0b7bfe16a03914b1fb40a6d23bc82bb6ace998e8836df210af28fead64f1c42a9c6d07a2cbdcb6cc855ddd85665575a07b4a15663b1012500c64ed34b1e6a1d56b78d03be9e6d3eb4dffb8eaf2cbd50fe628609769c9d4f5d3309096c26065960edae6c6d72eb22876db27efbca6669a5b99975ce361329e31d3ee5ebc7667e5a2566db0fe4fe3b38573d0c49b5b0bab5e5e735ede86a597fda49377f8212820454e6e152443ebfba5b4dc2fe227ea5819ab0bd538767db0d40e6da6b1bdbef5be614e5d504f232f6001a9a8567dd1728c9cf2dcbe42d836afbabd7b4f79a964e418130a52442366d766ee44145d293befdfd897d46ccdb42a79dde32383258c1ffa1230763c5f5ffd7413caca5ffceb18143d9a831ba9d600a91114d459c0eeb97f1f1b1da191998d656013f4e8c6d438dad69717e8ca0e48405848fd6e87b74ecc91fa474be2a5731b363e0aacf8096e2e0268963b645f2afedc5501bfabb71108aa1544bf3c3ca73efe476df3d20a742bb82d9f5fa5b7033b19d4197b958f6d853be13530c2bced20329af46adc1906da1b1c43323b59d153b001ae3f647d3028634d9ee086f38aee0eab7ef210eb7968af61adb7d3091ed206efbca5ca4810a3222637faae3b54d757f8777ecda7f70097607468ec855cda3cc254d97b0b4f74a99bad64519984d3f2f3919094377552f93e1b77a0c2e5f6bd697a0de1523df4c1aa5234d469137e7e90c6b769f9c9f331d057a892a5196087efe850adf84d978a79c1f5d320e48384440d1a5b946490dfe6591256c2417c791271d2b755872731887f77a7778e16be8a564fcf41122b45058714342bce4c1f1118c42923b50b0c1237da27fae7177f3b6682a955c9dced93f9f310a481dfc04471e557a29b2812f68cbf79cfb67ca5f555181997b95cedf55368fc034d8b7af761c63666e247bfb84849cfaad3ae70cf243efad2676a48e2ed4b4a46ca4d6fd4698621249d7a7663652612bbc24ae471bfc36176d55a7e47ce84af196cf2bda867dc1ae8da41391265f6b77fccab696736da4f0f7b30d358dbe49e4d5c29c0b0d0d7d317ae43013b749f7faac15291fb80d91f345d852856b87922f3930b4f885c68efd2be618fa99a104080871949d208db04bc32297abae2e3647ac395790e9e032ff3cd3015aefdfd3bcf8a3d8674215da59302ef97c0fa32ff124446f27d0461c9704a858e3edfd2c00bed9d52bd08a80bc2393ed4ad5ebdd366550453d35a3cbce531b46394686bc531db56353626cea2e2f0b1b4b6acdd505ab42bfa3ba031853dcbfe048c8d023c1833039554688f83c0879ef336f643d7c72c520c80efe80197eb506e8faacd9bbf39185802c9e59bacce64590e968072f0d9a028d0175b57813f8825949f391b3c3e89148f2bd43c8faf6eeaec3ab5c292363830bd00d8a861492f4c92d9f6a134c7720ccbe97e978652406889ae86172522b12c07f8bbb9257697579cb38b926237b765ba3a6e14a5798ab3d2f47cb7949c9f647fd0b2e702e0e3783bfba609bda5731916f936d6bd7df71727ddc35b5cfb904b22a1f94bfa7d9b784dea39c7a48da184d94274d2a948777bda57e4fad4031e31943f3645330cd38add75282f1843083c6b860de0448e65656582dd6fc38bdce8c828d38a55da2d40aac04237c5075322f39a6aeaeb1693a64465459087efb74347944ae420488c0d92e141e0cf36d5c75c5b6aefe4b05da61daea25387894552ec6f256e8dde345b3d8ad68f1aafd848f62f5ebefb094209fd034c8407bc28dd04e8219f792eb3cc132c9fc4a0e0d7cea1ce29a668d2d4d5413d61326cce97b5ef8713cd709c5935f2e39d69d25b93a47fecf2f4671cb7af4c152d5f172b5bc2c544bacad778fc6fe1e6b8e6832999cdc453fe67d7da9bd340a1f8b6806a79b76cfef24337e35be3a1e9a0add786f50e86a813f09aee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f94cb9e7a46077d83f96b74e21127a95a0c254a128b87ce3cd152a1a4a45105df651fee436e45726bd9a413f6f36262517c7a9e10ca75a5d1fb2258108c6976ade161399697fe762aad7a7c21f062c6ee1db2aea2007f38d38c8e9214c8078d0423525d388150b0dc086c1cae9a98966d7cb56b6aff3d79746ef8acccd7c4b59742cdf9af8c07531f400bfd679aef16e63988716708557b550e8423989cf7885b3fdf6085941b6325e44084dc85ebadda8ebff742c060f66667471930ff520b4269ede2286cf585d46567d0ffe7ff67422f95432d72af6204fd9e41a8e0d5efdf32445e1e4be72a3c086bae2806d8d7018cacb0408f42e89f822590807e50be5f97879475c8679c5787c21bd6628b062964d78c48a32a7d8631d839ca84cdff1cc5c829e9d104b577d091a9d77b3749742aafc4b071091a68cc5fc08dcb7ac9d76459ff35162dfbf3eb6fe11a089d0661ad1f6e084000395aa37b715986c1aee4d755d0fd4dbcdfde5c732df23adde96c10750b868134e40c1ff5cf820ccc705a655103fff1497c84b99450db54ab3cf285f8c832910629ecb97e8f9ef9dcfb859f73340065b4cca494334ce5c6044182ad3ec30b639fc15c54fc30358559efa817aaf6a2d6eba19b3632b0a333e8a23515261a2e927ed26e175a52abd437d9517d2bdc1f66f3de2190fc5bc4472cb097db7325cdd85e7f436af653b1c08f8fa554da24893614eae65dc3c95f8873e2c991f0878c653510b9e77eccc324bba37a8edc55b71ca7fabf01a4a9b4750f67831b3302e17fa1388992a58c3fea6720cc501af46daf974b71522080209cdccd0e3dcac662c748d7826f442d0e4c3574a606bee74126e38f8dceceb014b5d7ab34045d3ac426f37aa459b12f91b7afda18f101ace5fe025897ff28e296bb83363bf0230a0ca5833d4bf5a3b809413abd627a0cd1b918b4b8f93166a98f96306867a6539abc816ee06db90c50b0460baf869803bab8c68219eb93d366a063158cce6a1cc56f46c5c2dd4b973ed5e0d981978aaae513f35ce5c622aec9ea6393a81ec72bb25feccfeefd290e36a865acc9fe2943c29c026f4e29fc543128cf1571a8e3834f0c94d0047eb8be5364906436652ab4c5fde70e08ed0a67feb27ea29b2419224d640aa918d075bf6e70c30d665ce5bbf303543d74c7eb2c40364e3c3f03fad3698f6dadd673c25cc6dc07b4a7ee1346fed302e5fb73a10545f4efc3de551e999189e2a49fbf6e9f701e1ae69d0dd980ad2f8f3b0d17b7b51cfb1bd06fea5b1e17ca9ad8ed048c5d3d66c19a2f7fb7e169454173417df306b925d19f023cdbaefa608989d528b4cec8416fe31784429b1e3e346daf7bcd6119fb29ce7ae1043d022444be3fdd1a007d191313c575ed31e8b01f998508388c2127825b7fb152450e8763fc69996c1d3d6edf10bfae33c5dc02d631a8cfd0ecb0766c3d0aa722b778df3c0d9f47b020f14f983756f44deef307ff7990b12a9d0303ad46b9032537392d430ee7d54c93459908ac481e08ccc6dd61ee60c61fcb089b65351c64328e0fc6b15dba38056a078d9c740b089f2beb89d11ada801578a17f0278b6f77c9cf5004fc19723381da1d48bb001367fefce7d171d85267c081e194636c9a53aaf1ea52fcd42a0706a114181fcb01273be766154a36d6ae31fa665c9511b2651bcaa78252b2c842ac0fab37d57cb3174b86ae1d1b12c39d0fddb1fa9b4de2d18d4ebfd7d38f839206243673b15be2df63ce38656dd2eab951cd02238e1815763fe6d0bcc0890f71ee930f7e91d9c29e5fc8ae0b29964c93ccfc6a8b33934f4a9d758c02b93254893b88eec97cdd3f105ba9a8bf8233ad6a5e4d57c3a8bcbd43eb1ee7daad8500587d60b756748682afa7d5080264f9d778677f04548f0ebed7ca92de1d745912c3a7170836b8ffe9f7f3c7b31c05ca039aae8a80e8ad8270cc99dca264f0292d4ff4dbc9c905837fb1b497dc7e86dca745dd40be76c204b011d4261957dd85f17032431aacd7182fc629603a318700618a009c95022f838aa21659648cad8e2fb4edcf16772abec90473d75fe45373251d0b012ce4c1cf06b5ed3d8ff865ec08a076ddbdd8da4aba7aa725836ea953c74eb5552908f0fb0960b9a0b96480d0489e08568625b75583a18a278e72b05fc2b1da1788c408cf9d4a4ed6febb9c1f5ceeab1e81075c7b4db208dea06f2ed1df3cc8a3fa27adfff32b1eb4b9c7f9c6e173fc4f6e2cf80ac7c8b1a276fa724dc6716cca89ce7e46dc29df9135b43fb059203c29fb5445457cf1a1ca5beeb305909dfeae22dccc2561005b68e207c0dab94c376086995674e535cc603f2a4b638ea4831dc58affa03be410d2d21b97118ccfa7572fdd982103f858fba7ffb9292310410b8005a23f0ec9b9804316cdd53fe8a306a9a5aaeab7f917c0a4232d3aab1635891e9a7029dae5b60465b7d8f0070274757a2e145e65d3b9c64632cb5f2e642bb34f3f89d94195f7ea30e995237aafa8be2453cd5e5ec3be172b453f21f51e05cd052d388fe22467a6c46c8a14b8527256ad6d1eff0365142f5a359bbf8cbdf04932a2f9a1adb7eac5b1f3d1e0fc698d296625630efad368eda5f7a90c51901b3438d5deb59a52467bd0380821055967e3d935026b62fdd340850d2a84c6ee394d3e48648149929dd1f3a9691a334b2052e443fa645a137642d1e6bb4f4fb25160f68ba90e8395cb8eccf6f988db92b9196e10ccef16feac6f2e4f94484ee437d50076fd155a044a099ccf42a0d53f55458dd81bb7563ac81b2580b9412103b27bee9bf069971b9fb23857aa1f3878ee7fb21a8e7fc373922cd0c00b925b12d4f6b59414cc54420a6610419a1e280b55e18c90132aedb2c0a6ff9b5db9ba7c60a27e954fbb2423c4b2a8580226a5f739fc934e5fa285872397cbdb033ef0083fc58fcd86fa50f5fca0c1d5bad7f669abee0cc86041ed1e9f11df7a5f1cafe7d7de1593727ed56f89e7e706a2333f58cd34c9aa80594cb93d906d7420b66ed867ff8725df71cb0d3099bcbe39947ecc96798e89e73f13a35c80fef4b1af51d45ca86530565c26ef721eceab2a6ea7481b4f2527e2202049443c959a91cd092b67319995e949fe00f167e17ea6b02e291df82ff15f1ddbd8e593563a18034bd0dac53ab1b93bd31d0453fa17d92656f9a94ddd7d45ba8c000dc3d6905d2a96fc52ec72b601a83758e590ba45340daaa095a2ac19e9183da15bbe914cb35b3ff4cb301c39a0705c8b784ec3226ed6e1a5a50ec953ee2fa296c4ab893c01549f73337d78bb7efe694462dbe7d9bf5c0031902dd081694215453f5766ec1c8700ec2f9c6658dc40d63d2609fb1ccd05bd8ba35aa83458740b750bd9169914ea23883864d076368d062fbebf156c74bb8932712bc67b84c71760fcbd6c2f3f7207d61791f97406e59efeb90d071c82492f56a386ee54ab8c5ed6a08f90008fe6345857bd4ce723cb7a0bba229506c5dc7e923c8fc4f23a01d8b3a4be0981cc17527f3b7004b5b2f1b7717d2aea8b084cbb2c5fb1ee815dd4312fd986c79f8541bcb34ce4c710ce30795216be25ce86d90acdd53f2bb37eceb60411b117f70414fb93af757c50d3ecc74719f69c684e7fa11c60605da1b81faaacddd7f7611605747e65de92929d5651abba664e1b21dbd32becd56f2f3b27f12bab57c0f2f5e9f9a61c81e5b6cf1ff65008fa4a9f0cdbf6f63dacca23a7236ccebee4cb80d45ae9c616b0d2a2db7a7fac37e1524e3b65331a0037156aaa03f032c9222f9151ab0d67d4333d50ab38a5f0cbee480f12af63d4f02f324ce704369262d7b0b06549c3dd4c7677b0ad19ad1e289db22ba86fbe642cc3cfd6f1b3165b059b532bc50f97fd0a5a5f8082f71c680838ad9829e10b020661566c70b342b746d49bcade621297535781e6807960df36b220917f4e81cc74e75cc9a66ce0c6da602860c40905c959a0e0ae3c19d84df76c6b752e5f14daf474f91548959e32bf89bbea6918c9bb4499b638c2e29fc4ef9faf973bf183ad2dc700dd70549186c961e7bb6ac5e68a5dd1d1f1beaed7fb7140a64f68e0841d1085e7b6632ade7289e0d706540cb39e46c3c28b7b4cbaeb70d1d46a228ba33b8efe2c3bd9b192cd3ad8bc67f1d9f656212e401ec4343f679a93913acdf5e9cf66a2479937c6fb85cb69513cdb02f849e3bd5f047c5e8faef19c1af6d1dfa30f615a52f387e3c3fa9ae1ee1f90d6283129ea84d1671671d6c90640860a213b0c50579dec037b45e5ce37baa5114f99f2166ce02a334092fa47256deb3e38375352461b158d27a3fcfba85d0a8f85c69fb1e3c3c8a29c1670666684d64c1d56658848179c65e998dab51bcbad5468842d554b4aeef07f725b541b67d0c3f0d6a433c7d4bbb2c9123da13ee0cd47e029be9405171b60075a730e84916817dc881c8c8f90cfd4a6ea4fdb9f95f3b1f73643284eee09271f7983a04069537ad0ef49f81caa4f4196c111060ce6a3076998fa555986bf441712a612667f771cb41c6f6c2160f43cbb8d4281dddd3fb13b5770ae100e32fb7dfa4e17746cb41162b6bad12bf828e2850d530bef9fdc0409bf3ffa62f289dec0228053fedc6bfc21db7296f4bc925e4efa615ff225160a80666b9b1efa9cb4e7808c02feb5c5100de464e54837b3b8988c3913b362db3a0b4eee2bd31b88f4a1111240b6fa6f6b48d9bb5d109e93eaa925e702ae3d8f6feaa069ac10e52c556f5dac4be4c7b631fca5fe932411bdc70020c9e311a1cc9747dfdb409bd0527b257d0a5b41c3574e40c4958265c98ecf4cd7ea8b0e23a940aaa515667681612a86a8b27f5408c86061147ac42add7bbf281b2d1a96be2c45ddb04c01c4db677c890d6b0d1e978550e9b7fb19bc7020048951e022bb9ba2f07fb74523c3d5bcdd26cff48587f883e87b66b09039bf678bc9a6d8f649d787b10eb59f7186dafa3e6e4ffdc9ab777954305c6d3eb1d2f8fd7ec9182713dd77d5d3570be3fd8674e316f5f0ff2d92fbfccde2ef14ee67854217fa2b59ee4dbcd22a37d70243818b82ca373fb93ea322945b4881dce3e2c5e3beb9b5dc6e3db8056d41da92244b7249bceb40abf9f35ebb2146f4cfb61c84eea976188394f6764a11381d72bc0e052dbeae330c4db04bb0ee984a3e751c561094ddeb6d0596840d08d5d04f0c20ea333ffc7ef973b2a9eb5888c5e38c32fe593a42b2e04a1400d7dc77c6255c2c70a131cfe8c5c618fb3e29bcd1e111a9990585d83e474338d34d842c0bb121d1ad36a129c649c64c2fb57cfcd41d953f1028dc59997ed610ba7c0d907a60907cbc460fa2d78317c30ee0bf2d5809f88ca0b0d5b778fc9d1d8dcdae9e62bd85962ea721a718ba755ad0bb961eb796d8c34bf98285381f550c53d4c3607acd4c806de0bc016eba9afe6748d34a887bdd32ab18f2777ad3ebc2169a3c7b33cfb770fe9a5db33b4d1f9ffa0ceb0f0c1a5a3bbda94d5b43cfaf9edce5eb87f0b27094aab1337336192568e16b110f43424061b166238cdc6c911ad5b022462a456330ea527a9d360e7d7a24fdc057fadc84e9331b73a0d9d5feb019fa092f423d44f763e3fed7d7c85b9c39327ba5ec653dfabcba2386c388f8cdec4d87a672d49078c840dcad1e938aa61bd68da6cdf0ab45033c1f6ff27e8ceee8003d17f81a137eb947e769be31f1a6d5e7fdaa1ded63f3160cd59bd03c77ea5835b96dd3b44b115dcd4c5fda0ea9cc34eafb9955248e7bb4897e7ffab6ea9590e20a5f58abfc933a32ed7a877a7000e6b8948e7f5a9e0b2d3703e45ba8036166a48d0c409536d9c58f623f3c53087f6714ab2f2140368af5cd15d8ee3dfd7802b16c9838c207bfb3d002f8304a5970a4cc2f11c4b45e3330c9e9df554e3fa7cba85135ee579db7825db2304d8f91a2201fcfc570606c506aa27dea6a6a2ff056e28cf946cab8db96c48745653c20f64bc8f84ade9f31aa0955e23208031c08e0082678fc43febd319892ea5f2526244f15368749c1e5b694e101b48d58e7f2579950773c11e06ebd1dd7e536c4941395d5a353a6d7d3881debc8072dbdcd1030deaed2d7f173bec6a4ec8d44b503f361154ec4d836961e4d450990e9ab8339d86df38bfa4fe70e9709474e230551c751c5a711047ed1b17483a037e17bc9eb8da3259cc984b18fa9f2e9d8d86c4c06b7ee186733608b96bdfb3223f0066e65b2d2f219e9e23e7657d6028ca7e48ed672a2eafb80d633797b18bd5782ba93de36f5f1ac929b657baebbc3e1ff67ceca96d07bfd721536a9702c9ab1207c0066b522014384179af17d648019b424ac2d01d7923fbfc265de2f7d118b5f4c177b8ac825e92031844e963796782c472670c51c2ed3a04dd02706bc54f16f1a58fdac06331da3e337c054ea268ad1f7589fb5cfef82435df1652eca9df79081f2ac578268631a841ab33e77a67e91f5cb969ca1bfe5f0798229c66b0c4edde18e71909340c6966adb641cc1c43424edd490721bde9dbbeb6b17a2a690e43716d50d1d304a01f7bd20109d8f399525aae25748d15482e4d856addad2d92866158f1c0649205b733d29f14572adcaac7d866af17214d65b40168a8fccb43897134671fbd7bce1b9e80e3656b65e1b0cb2eac0a5e1b333ebfafdcc991d62e53e4cd7c1821df7e1bff6f310f70f610aef1b325e6860ba203f6907bf7a3bf23c30d231f3f355e4a1405f06d845aeb8c0c11adde447690c72e80ecf518ac95d365c70e243d5db31d3e2310b22d3cfd5d507cd9ccc243703d918c9b2768fa8580835863125b1c2c4cd848d166fb83f91b0be522bb2f9625fc7163487e8ea21bb53164faac20bfb4165f3c2267c199b75ad78a39f249597e2db015e9a564d7609a1c07e0ee8d24159b28cc398f87ff2ea5d9d1ba7e3b669d8d7d7551ac93620cf1f3a5b493a62a5cfda579a3602dbb0891fed8e46534cf4c7e7eed8b7360b79b4990de24555382bd4a22fc2ea4aac72ed4c2aedb89f195fee0243ffe6db71a19cbb626fb267fe104af843eb742f2b2998689b12c71f29ded714970570c1d28552efd3136a6bfb03d79ff5ac94695140856cbc31425074f02d1030523992dbc9b8baadc14af27e2d2ae86aa11bd27c5870a3488565dcad8acca171beb340b104d0d3eaf7ebecc69280304155877e020dfd75bee40bc0360960507cb0c0360b608290654a53d55302f995f205685b587e99af8b5d3b78a8a5ccabeb8b50c3bd91842e2f6f1f0694fed9ad91f62684a8df434c12f2c65ba5c9c148dfc352af41e6ccec7ecbf0cd5ba55922075b8e61650602b53c09a04e45205184df8c35faa886b6d551fef82919dd981eaaaca747597c4b44a3ce1138d264ecec9ce1f5bc2f388e8e7447a59883cd4a3095ff616bec658ce286e0ab165279843cbe9942d43732fc97a6302a5d60a2235646d725e186be8c6df407edcacfbfbf4d06545dd1ce13478afd230a223bd71d7f4b520f97d2c9f55b345d0957a3dcd07d62de9789ce31106ad37e646ac3c8eb185e10ad99de4112857d142ef6ee019b365c6338a6466cc241fb68a91080e6d5db2f84dc25cbb61d418948844f03d77c46bdad49a5d069e5f6de17871e9b754d959f4e0421c9538d5b3f1142fd2f30256213a7d8769a0df7be537a716450d3154ba2fec5e76af71707f23d636f5dcb7d21689b9a44017c59fa5a23b3357d9540a8943e675ef1e879bea225e0785aba75f4367213e6d10f868d3bf4d583ddb2abfa330d9737ca027e08516573c72ff41e7318d2480cb22820666f2ff26f9071bc1df8d28fd6c6e494c81403a85bcd935e618af9dc148bd271915fabfd1247f3e37b3da8ffa1fb829f72b66cf723db4af71540c4caf23ba4b15f68895ba60f9f7bec920ab92f3c8a25a84eaa8ed5e085c8996a8ea5c42ec325a60765d2c5ce113917e1ed91b7a16d9c36fadfc0c4521b6b636fa574aee8f470e77123cf271e77f307b6891e5ad66a940c8d09cee478a6c9952a51472b3e581697a352406036c4a4c5b3eb419e7ac8439e09fb28f0ad919069adf15452467d73d90cecef6c93ae466a624d16573bfc07350ba5c8f3565b609098e10a9f031194b4c922afecc867793a64d8b8a588cf45e75c88fd19de63a199a89b20763c24d1043ceb259233246417d69b4c538b4a259a8d9c28790801d09baf24c1e14b40126b7f1a45551cb136814dfd820655ed430021f10ae5a85ade06ed3aacf644d8a7ff52f88f21173503a3724690fe46afaba1eef901e6e0e81e7b56210bf81b18f85878826da7f2d3c23510ff0538bcb25217c4b2188f62025dbfe2db72b3afa8ceabb89d057082369dad64e0bccd5a0d9c4461863ba2b44ca686f00b55daf32bf6a5986c1f3aca8355495b3221e2598a26be67a9273d159c1d79c9daa6df100b6b711c59905e3796d7ae977b5ebc34828b1fdddbee77ece804139cf71fd7a5a3e8f5a70e8403ca4b3d4ef2d768ad26d2cd25cc91884b8498cc3c760248b7ca8ea92f217ca536c7a9c7aad2982b0da2edb05b00e986dc25b46d646e1f3ca84e482002219a44bb9d1915ab7ad8d7eb6869a75b83b7127f0adc8ce2c0aebfdddafc2ad1a5dc6cbc93be6c9eabda74a4c1f916294bf3c450449d508ae15ab7fce96a0543b3220bfa7a5bba5f6d90e2413bf06d2438c49f6b46b6631690fcd8d5c73e3226407c7f72d7fefba608a58c764184a1b01732a27cddf124c5592ff508183fc04ec95311aa5f327e8cd42b67161de49127b292cb5adf23df025190acc6f205c227059c1c39936c281cf1d7819c3bb1c57e3c745869a8907e5b7a2cd0f9f78cf6cd66ae7203e36180691a87726dfde0f7cb99facf71aeca3f7864abf1182d7682f57a52a462fd50ddd57384ec0af9da56ac4bdcc7e465c066bb037a06fd2744b71fb5039095756b1245a6469c780e9f1ef44e218540b9ea50f1b95d880a89866398d945d4b9fe798b004b26258912457bfd69bc54b44553cd9c7f05f8e2afc9ebe6e7288956807db9612943c060e3e073d2f7e439f54b3fa282cd3221917745c08cc39f4ca4caf37cd00f0d564daac9554970140d9fafc2086e70d74e65f57d603c839a3bc3bedf1db9c079f4bed420d5828546ad9d17b03070c01063f94f8a4b61c08505f73a7d43eaba65fcc22101211ed1de3839fc999869246de291f4d7c40f1fb9e561df407b9a84ac2c17b953fddf28b6b0754b93626b29297cba5acd20949ad590bfbc1c4eb039f48f84d613da6426c2b229eb1a9426aec24d1221c6b1c52cfab38c1d05ca58774cfaaa530bb3c5e7ae0c91717f1a579da2f36648d41794f11bb509ecfba7194e3f1c2e2f4caf21f548eec2f0838f8a93d8fa966ded380ee3b4471235ef136d04395ec6815400c65f911c693eda76667495f0a7f1a972dd44172df506055c87882fe981cfe56314b23c626fe218aaff1917ca80e6ff8f8455c9100feed559867701cb8e74c9014e7bc960b17120c5fe9dbddb00e31a476c05b1da3a62baecfebf328fc4cb32d587052d384e597ca02c36798d74d46290e63c21efde241b555e74e07867db8fb7624489a66ff531f3a1ce458fd501ea05f2db053c81837c50843118cd4c02038687fd7d8573d0ef973abedbc7c3ca6e69209e31a73a87d6f480f69a075f062201e43b0965c00b9fb081b8df19518c3a0b7b799204615f675cd52ddd4c4f9710545cb0b1166f3beb8cd7746cb12e3b7dc29848d81a056f42f626c7ec5e2c1fd1ae1d8ab092153dd7119861cef13c8ca772b39f05411583cbdca49c355d8a082ffa9a17369d5ffd0c04b1de7f1989ff2a96675c88582e0a4c8313f9c0e770c4be609008393ab2cc107885adbd15c6be53b8a7edf5ca22cfbdfd27170b817434ffb6b7df9a0b36101667d38c711dc08d565e98f80eae436ba3ec7cb0fe9ffc9879402249c49c0df40981751fd46817aa2f01f7d90fc2427ec2edc2b4c511182ec22e489370046a0d9c876e4e8535975ffb32b836f3510c7b5df451c2149489740e093d79d945be2ced7686541cabe5fd9e0cd18b934c6407a4607f9233d7d1b6516e9be0b1b9c6aba02444ba12b06a299e337d0242d17c8443c8d211cce41483cb77caad7da0691eaf4e4c1d6916e45bb23dced4b13e75b6d14f4aa3384fcfada45c98de27b74b819df63df2367fdab1957dc659ee59870b3ee54e23467facab14d281547dc7ce75507577b0c4bbc4c2edea4f0084d38b1a696c2a4365a258b773b9d3b964c8efff29f68a3236fc52c1b9469ea855f4edbdec3b994e72ab81a153911439d9055367f4a304ccff0f9b879e788b817aa7d64aa18fd5edec4bf943fd8050eb3f56b2d60cb49bb8dbc0e4df922ccbfb93a9f91a09b473a8beca7ee763675903a22fc74383dbc2084256da490f7e9c48c340c9715b0dac11802a8fda058998fadcc47ffb2f4c0e2f8507f42729cda56ced9741da8d32c11756984503ec683f77e1154d03fadce304a081431541843e64de6135470bed9b4dba38699309db890b6c660af2886b4c086bba8a8140810960aacf2ded971a471d8456416567ec813b7b3e46652a7ddb5e71903e152c9e88f36fc46aefbfa8de0e8ad0b5808f1b61c454d3bf5b06836617d0ff3b67ccc22696be836d451e4b1d2c7539667a0102ccae8e1f2b00fa9cb96249f2c9e9b67b425bf0e26430dc09c72caa68f5236d766a942e6c0f82f427ddeb1920a93ffb30c9a260b3f0aa0e6a5b4f6f6ee97b9f0edc412503c1df01bb21baef23f720e10e44ac5c48be9fc23a0370105dc1ffacf2435be178b6eee4e4359de9b5a9ddbe859f39b3598f159cddd2887d3030514e28cd311bf8a7f2480ea852ed9f040c303001b80ea3892fc6e1db16fd9ab5f54e446699f40079ce33e890a944271d818ab5a7b56d0c4b3d22d534267dd78c660b64c90fac480e3602bf320cc2dee19d5c50f83e1e8b7355682c9eb4cc87fd754a701cdcbb3a51956fd243efff5b25ffe77109efe470a6b4a0e899a9beaf14cc5338709bcfca37fbc617cd24eb397f50d7ddfed83ae5d48cf6bf7e93c37e57761853b8d501b7713422830b097a86e872593e0aad8a5bee4fce0376231c4ceddc30afb2cb7a21d35cab751f0d6561d1620b8373a028f14c67d76b9596f9ad286fd75a011d7e10bd66d3483368483990715094b6bc7139d441bb808dff052552c22b22f8ac81aa9736e4d54f79dd6ccb59166abe4c162411d10b06122293ca702074d27ef43cc7603cbe17504efaa8a755910521f955536051463017f0d484797a3d7ed00af355b44b1dbfa44a702ec359744da2cc58e10aec81cf75a69c3584b8383d7e797a862c0acb32c852db993ac17e6bc649af1b65e29d6846059111c6ef652a3e343884bcade4c786976329c2796d21a7ccb1af90ea7560137c548ce7e37766dbf0e747e2d8e25efcf98c1b341b9d0edf3d9d5e389ad0f6f39ae8c3cf63c741a8f4ae57533ddd536c5c8136b3d1e970137ba6c1687ce6c74834362ce4613511ae38ba0859e3756e1ccd5a669c719a4d766f324e0cd4de9ce66f1fc09ef15532555f1dccf7ede91a06150e0288dec9f7cdee731be25eb2edaf43c13a005685e2af419b532e6ea3e07e930b557d2caf9e449c61d5861396d158d9674be5b8ac93e24d83f55747f84d8e6660e944ed97f9d1b05d61986a480e22f5abd271b4b144e37fc61c60893d1c0553a068a56bf4ba3f226db3de5e1b4dc31f60332e465fead778cbe3664f7a17db8f9ae2c11e59fc9479de4718e9abd9ef668c56e95aa83e34e3e02f9d75a34d2cc5baa1ced604a5096bb54ee7e0e045ee1973b92f090583f3b6f8f13de6ed04a1d9e85422c373e53b32b0982304b93728bfd2b9a49c4a23dc7a1a95bb73f8d07502cf1a6f66c630ffe37938b39c88576a9b1bf7c96416c3cd32d4c0ae2ac2646eb0e3f23a82969d87220f543156f50627f780738bba74dc2c2467ea8619ec908029de3783cd5423d2ee084608b36f04ecf65cadb4397a079a63801599c447c36de542c639faa76c052ec1d7196e7b42dacb7f06b6c5eb5a9d1e576cfb979ed5e8d83367cd132b39901a272952520ea2a625cda47c0f74fa30f11879924b5dc8fd9490b157b7ecfc8d6a3141bc88e458f7c8fdb81f1fe21a6d47a6ecb9059b999fdcc436a76ba5f32e96f9267eb0658e5fac2392e0f311fcf3a2754c9931e0b82ae86048c55d4e450ce4dc3fc43ae80e1f7c6b2b9bb835b0c503f31327d17b4371dcf3dd0144bad623347f07f4970e41c421774755c89e523fd41f611c7b077d1992b0eb2a4fbae602c917a6390b5835a5a745abe4df9ee51f2fca9e950fc41259fe9043e9772b2ed1abce0a979b46bcf3eab43464c25492659c8c2e5d67982660c67eccc9313807e16e7eda03199eba65e0c179c28026a6c4e4a2cdeedd67a7e92608a7458d6948e0054c4521d913ba8983ca5404acbc0b877b93285c52e54d8f49123588444b7d94ad1dc4dfe8065a4cff014c7e0d2f9450437ce19c4f2520e37759451551fa49f4f4bf8a664a84cd6f0dab8976786f78ea34510127b692edb224ad1f2c41c6a464318068f7959875355364e320abd70208196c7581f5f32acd8b48490a6212420f7ad4853e6184a4730e4cfd18a1ba68b0464ffbab9ac4458076a3c2eb38fb82e5f811d147771a12e40b132cd2961109b81ed591d17f8503fd184a1cadd2f0dace6c8c8509d5162dfc96150928f48bd573b55b1b8f46d24120e87e4347d2644fc68fe61f53baae4e833d065fbaf832a4b7dafe3ae407921a9e12353494226832e7bb184ea508a98f8f9d06966ddb1ab05f5626e3641af9e2e533abef564f02fb7ef6be703595c1f47da9a9e84683439ccfecac21d748f46d1e1f940aeab95238de89e49ea64614bb8d5a7447692d4bc132dd9525a708ffa9616363b8d5f840d1ebcc75da44a4a484ce38cccd3224c68b5ddd478481b78bdbef5a280fc1af09ecc5eec7db19247ce2672932007988fae0a70d60c0f43b05959c9f1cd7eb93fd1081a1eab98f766175197fcca9585742b0ffdaf596f0d939a033121442ec525e24e944ecabcc48168410d54b4f6895acaf763dca32a13c08afbcb6c5d67d61cab8f3382a38ed9ab5db0996ed5017f1baf1d20fe83067079a56d48f2dd811dcbeb7904b3f4e581880695ae3774ca34276158f5814fadb0e529920647f0eb35dc82e490d96461abd23bbf2da522822948455413a345f9ef8ac7a7f81c6126584b3c964b1a54c24a12ce2c0f283661121974436cdb09ae91822497458072f5f97447c5d7245ee3b42b2e5df950a01ce7c2374db7b971a5a4304646d5a4e9ccfa76395eedd864107295503e102ea339e0fd4496204c697bdd5c1b1a35864dfefe504a990782ce66804d000472b3c601978fa9bd98dcf3b2750d608c684dc52dd1aa0eb7e562185c822e79d362de4f9f76a1a7016e1529a01d88a7da9552140f666c6a94772459b97034550179063bb5d020d3211a2547a14bb7a20e47f753d3cad416b6746928388cd2fdaded61933655a00df5386de39856a98bb68854f8e47888091ec7c661b060f00f5cb1c92cfe832faf91da739e447745937b543eb5b504a61877aca5223fbf8f03613a6b000e20eb275d9b8081c8059bc540481a303ce722d42f3bfb40dfccf983dce09e3ee0f570f3bcc969d4bab8c1f3d4572ecf3b5da7f936d0b6ca981303acc042195061225039c080c900169b231ab343c7e9ec6530864ea48e0940e8a6e8861eaaaf90853a685fa803c4e039166060a3c921c8d79001e3ce58256300b4972317a540dfde857553323ac54b01af491a20b7745debc9624e513d8e60ff8a83f42bba7c1cfb2825e4dda8092c764f5dc6c42ace857d512c86205c765ff735641e7eede7f06ed9b7358e945774926614dc42712071def1fcd6c510d64c70323025dfde469539ca3b925c5707e72d0d1ce2fe020bd18184009934bf845389fc4ea3871dc8007e7b0fdbc0b8fc539564d884222d1e5bd1323c592936e5519f8b8a417005b3f1d9e4ad326c4e20164f63c6d4ddd80740d132e14c9e8a38c2afdda6dd245653ed2876c5c142cb78a402ae1a225c88cd6785c40c52b8ef5efeb3f25ae47ce03ba892f5caf77631b1257715fc12de72c21e61db17e4399dea777f6bac2a71aeb642ad0e6e7f3538dd74827269287339369eeb92a5f00f03b08d1faa1cf3d1a37ffc87924e8007431040bee05caba1f5c39d7a5ee4a4a0d8878c49953810b178449937e995710cd85e3be17089ef45a6c5331657a2c24f6bb1e8ce1d1c9e0f5dac9cbee55e72ccaf796a4710f33bb525e7406c87b44aad21d83498c3a7c87735049490ba02f2daaa6c9d80cc8c9c9b9b6164656397a704ee384515a4325315992e61dd957f0fa91f3858fe7c079de59f56edded51de86716ef40c102b1701970c7b0c34e6633d8a0ea1c89e7527252fcb07e63074221d7a5a95272343633b138abb330736b59ed95690c05ebec8aa80e6b9c293a4e3decd5f2ca4aec1cf71a49c5754c716dae18f9f02aa8e7c74f726f5f87c587e24139c6ca9e365296a6b66747cbebdcf76972b8cce7aab91e55bf4ab1f3581df9c2a857d11a8415a18e7a6ccf23640cf9bddf245a5f90c43b3014d08d3ae19faf9527d7b26fc15cfa914dc6e03d976570242ea37377491f3619ab287e6169025df66471e4defa1966d41eff6295259cd5212293d921af029329a5a3d15f4fe15db8ef98c260c8865603a742eae2e2a07336a2adba6380f582f2b3ecb1e70afb20cf42aecbc2617e2da3450034bf5c04e5b48d767ba7ad12498f7440c885afbcd58fd114a3e888c88970515d73484f51551fc664d163f156d7279186ecbf6b18bf870fe0335d9a95e12a332cd257a65d6d3435aaba4dc51bb698aeabef06bc7db0bd99cc27ce3a2873b39493bb7073642828b86af0aec0cf2706952a394d3da37fe8f57538678630bc09544e71e07777ae97831dbfd42a6b84035bf719f80cd3f625b7c30c0f72fef406b449596e61b95b58677d4f606f86b28aa4b3a52bd8fbf3f94710dfc6f122a6fb9e57005567bfb3490094fd57e49774d2c3f484820d3b8de50e075a8efe067cb8280ac5226624a0fd334bbb36c5353b53ee5ef4a9aa699d8d76bf1865f0ddba5c80877463ad6650d7fee66931486956a07884f53deaa13e2b88f848ed2cb9d4d9691684ce27333f4632fd897469b5ef12622fb48b243d80810c7273fd75b14e5e029619af15bf176f5c676bf3ac0cf71ec7de9e1b3586acd196b4651b81b4b3becf80f762bbf3d34a8a2d48c10b0987af13dafcdedebc22afd5cdabc01dac0a3e9731ac16353210a615ca44e85b6ec9eafd2e79206e0b26c768814d01cabe26b9b2c8ee27feb00b21af889aef6e66098033fd1ea388da642aa7386347afe4eae6830df7e33e700a3e78e26825535c87a86ce4c3cac6a98ed48b0376234b056fde83883d0e9730951be202c3644e4d5075b83b2fec4b8517a6f761b6f5075ea4a9b8d487ae0819a0850b858687ba242ae7f74afe0731eb76a55f6cd9410cbf61fd6c5103e8685f65afa20270cdf9cd067c908036ee722e77aae6d9c7f1ca98f275aafe3c5533d274aec702ea6029f8036bdb577b0c53e08f7d97f337bb07156b16607394e8caa771764ca5cbd2ce06e0fffe9622c0ee7d16b81cccc5e8a9a7ad608a04f242530345694bd7150bd73315513284142b6a39ba4b789cbb406d7438e4c8e90e1e0f03d4c9a199faaa1a0939a7c9b59b2674d892d57ff4f1e1fae2bd5c63f32b23cd028bca626a869479163db363a4cd7a1aebe88fb7651cd173c294dacf2ab7fd1e8937c098d34cbd08d3d6adb3f654b4255f289c086a1e0d967fd7c4963a25b81975857d7fca812c24c6cd0f49f9dcc839e842aa09bdbf34cba5d10fd6fed612d6d7d8096f38e2e1d2993af5f25ee4423c1db1ea69a53e8edded83a6934f34882f0461f05b96f2bef663db1f3a355cbc181c9bac1ac496b3bcc37452f0caa104b2205a8a19dde0196a7791988b3b74e23c2174c1e5cca0ba1e1a55cfa1e853e326eaf4a69f48c1d0caf2d3724ee41917fff042ca6c4e7415dc58cd4e35581fcf3874ae0f50b0f9dbbbb2f7ea3044ce2e1bca741a6601257db0dbcf5623e2aa7fc4e0ea81ae7608bd43b56d98b444be203205cda4a88df04139500a43e68fe9c469af5f6c672e50531951bba2a5952ee2d833b80b2cba6faa5749f84248b3e73894fb6731dc558af01f8f5a626d8f44ba6fad469770c0899ba44a3545c5e137ead0f121480c1d6d3851c8d481f1d6822e39a4cc60d515267e0d66e7e1bf222dd2f6316d93cecb7161a58e89b821fa0e88d027d2b66a1dd18c4e5c39422b86ffe6b588960921c2b166bd80e9f629f282f1e3e384be07c068e57721f18ef78dd4bbaacceb0ed18cf4f44ba873d4e262b741316b1e98b5e9860dad1bc2406b372de5c6bbc56b110eee9089581a19d01b884adb0d166991fa849426c181037576ff149e88ec0d710ce34beb7f3c53393244fede07fbfce816a4246c742f43898720cd9a1c2827450770fb4820558148b77d4a184367667a5aea0b72f8782e2f0548e0ee73eda13fea8ed57567f7237a872719493ac7481006999ad81df54ce2f8973d784ae6e2a1552ea6c042e16e9c0b9a60ba18fa9fae96474cc9c4ecf7fe722b34ddc4dbcf0dea7b4b2ed7a212f8cacc94a09cbf95a903a6f5c020de628d0a32e33cd307000dd09c8edb50eedab9f96127986e4be3323ca879b3d4aa50507352a39bc1678b5b931768271a7442c74d60073255e15920830a38872dd133848ff42759dd30a2024fde61517073a21834704b5b89ed0a328c93bb55fd41a5f13919aaaca0bd7ec949d9efc2bb2d8d90305ae5d364caa7320ecdbdb46f80c188fe3dbbb5b38fb464b4e6d9db5790db4385b9f84f86116b006fb153f7e9672dffb89e7227ac3354293a4b0792f1566717fcbe98436873bac1c976a3c699fabc5c0d7b477aa9f133128af324a95a09ac798f3132cfa5a16d1d7551f5a1a8d34d86bcde5b04aac2fca5205b58a5a4802671f29d4fd4508b81842ce88cd04cc55a2b73dae089634bd2b2ce43f792e0d2f72cc3810b9c8e2707f3fe0bf80bd45130f6007ce7c3ecec96a4285adb340317ee0ac037c58a7f76d9045ecda1931c125dbda11a03a3b954447da11a7d163e4f56dcd8b99879483e7fb69f1d336c40461066922d2868b91acdcb52ad523a7a68aba40e9205b22812496f31fa17dc923423a66a389d9eb91cb878662722eba30162b148354c3a3e66b24c0cf9586adea6621025faae129c4b9a58484caf37abc49aa5f29971daac89ee00c87d1b945c902a44f24d239a3ea1df6a2e05a176af36f2476ea995313c2729bc4c88d136666b79085ac3db00e48e9735900e98dee905a4fb1e162f4055327b5c87660136bfe42fb789f7dbebce796ec6630bdd5bd55c990c4318bad90742c2e548f02104088eb8f4db0d55bf982b18d29806a90c72f50c0b361ed6fa665b6526fd94ce2b0826e230115aa5d73279f74f7213a9fa3fdd5cc3b915b4ef5b60be46a505be3394bed11d6ededd76bd4b830ef7b09ccd4382b9b3d07ae50c2e407509ca6a1859d2194c7006696662f014ee5a71514f5d9d3690ba0d54f5ab5dae33682d786284961d7de79c4edffe28a1c01a3490ceb20811df1cfe5954b13d9aae5496cf022cd8bebf128f578caea3851cec11203f7a8ae6fab747d0e31aba4d58707428fd27c618a3630266b5fd94d4b8068c8b372f1703cb54e62c87b5e605acdb8edae624b831f825e09051b1de1edfcbc4946af4780401e1d023239bb456c78416b04a42d2a7e12b468040416c85624e7f99c742c785010a0df5f1ece5ac7f73f7867c90e7d72026c6500dcd948eea5bea83988add5ab266e4c682713d393787ae83cfe6ba699d87ae7c59e139d37c40474febcf1f2990e087d4ba35fdc2849ae172543023eb240e3fb7fff84c42ab276dbb0355f1cfd6bdd1f0401b34e33f9b405fe0c13552ebcc55bc40802529cfe9a3b1808088283096c4e6d70d57754e2a9d03c2e862bd9b3845a09bbd5bf0caf33eed8c2df58157aea57792b65159f4696943ae98dde48630a55ac6118863c7f93157124f147234906f43caeb64d19636ce9453eae6b2ca47230f87ef5e3da7bdc72b9e7a0dffb12c6b2323693f25069acaf1a869086550cc0712f88e6d210cd144681031b1b1ef442ad258c7fe242e5dd9ceb7c48cf303cdbdbf9544a07341c729e362cb3d276343a4865c914618c1f667e110d199ef9ad638599e61570f03d237fa741fc3cdfa60ab451d4f0bdf8fafc22ef66cd909942225b5b5a726d42515a8b147db902d522cd8eae37375f806d7284152c5d3991d6810ff44dc8110d5914386cd087f53f79d2b9f38e71eb382d1e4c96bda2aae72db4c84de67cccece3b757e3b6855a1cc533412db184f19ab5103c4dbce7d5cbb9228eb635926f39ce15929b93808e57e35427fda15fdceeb46b8387d08f0102556b01a2754ae28b19d5a0d6720c71755cd674c780831f3cbf345c9bb7b68b2fa841cf9ed1d8204ac05ebefb5ad1983deaead2cd5c71a960b4837d22946dc9d3b60f0750f3d8a53f443439d78b47a43e6c33415e75bf0ec1dcdc729a828215896a1d88d0353de8c4689c54f12f4cc92baadea19c1010f21fcb382ae7f736726620c0f4969ba9476488f65951492ff08050254dbe4ee4149112ae8b4ffcfe0367bb457a73b9a9534bf2ec495e2f7d99e23b1257b0009d69368088e45459755585c934a9e24ebb9f6b71fd27f8d10c2fa9cc4a4d51fe3719166ba49f30d39b362c29bdd27f19cadffdcfefefe5ad35511dd4b8f00d002a1cf08f116bc66dfefb2827a827b8f415e9dec139af8cd48937339af8d4a914a236fce4ab3cf616108851890ca158ab0e8a8ceb89c28cc2d7bbfd7ec377cbdcf51e82c3502a8fd2fb869366b9d7ef8f45f1064d076c9589ea909019de686265ea92369b1e4c8aaab055353ce98a4485167eeb27738d89c83386affd93c2fb0a70046fa60ea0899e3b5e51f80081a44e95b22b4527542a8c7ebfa7df96ebf11a98f1e1f98f2b4a56efede17dd6ca0a8f5992178a899e35d02af5f704b0a5d7790535af471b5e80aaad49dd11cc8ffda61c4882fc48399345011702818437e16306dffb98ec16b62b2aee70551e48d7aaf0f4858182fb584af2a60df13dd117444d5dcf2586bd96a399a98af3e4ab4e1c7cc39324ec6a4e82055cafc705b068d6f877e362b8cf38521862edcfb7e7725821ee55aabda7684d2c5fa6d313ca6dea0a1ea54614c2cd20a756c923a12c056eade4fa898c81677958cdb13dbe80c3d57773cdd9a3b093a4c0f670b023aea301a1e664559ee1ba88ff1ee58557fee5ce27d69784a9ff7aac9daf810226065317dad81887104bc5647daf1b315d7e23133cd3ef1e14b026cb4a0b3d9030c5060baa8a6fa86b16b8816281f68ad0517f1299af5387cdea3518ebe8eb402b62160ba6386d05f5f6e1559beedc540167307473a1fc88f1dd0863b6bc3be1c814c3512e77ad9eb1c8b7a0df03553a679304c53cb767af8ffeef26e3c7f34dd132a67a04c9985187e7392b0a657bb0167f900bbd00e403d313b098683a9114cd7b8cdb9941fe1e1360e8718a8e635ebe6a06978a5ec5d988a82bd9629f52b66d53774f5ef387b2dbf535cf3099ed3bbcfc3bc9b1a62d4e07093960a216eb823704e12e9a6738da157189200ec6c66bb4d36d189104c2ee6e3da1cd82cf09a3f7a61c11fe8d9acb53be3b2f13190467c7653fcfea4611ef3b5fe8b929151afd13d7b84a483d45954cf44b0cb899c994e01ac5672856cb92f1295b7b72744d482e2480dfac1c2c7ca67424702a2e10305073f2e258405ba22e3c69c7416cc3484bc6cda50b73644b78c2769c5a91122a078d822045f872a98d8cf6d0fa0be4dfa530f21d31bc82a742186dc0e1e71ed3943b1e73169ebe91c030bdbded3842eca6734d7dcba1862cf43fefef4918935f80d8be1ce534537439385a0bc072b095fce1d7ceb81ba4c727bca08bca20b71fdb13642af122a7d4b3c76d8e5291c668ed687719ddc54443ba31e287cd1e269cd2e680ff09ed9593a1fe42592f852127079c181f0e54d42eae0ca0c7e4c19b3878cf9b1b70c65c81e3052a62a5923033703d8237e53a0640826fcc7c97f309078b39ce04802310d87a7abd4f3d2eff93162865e9298aa9761ff5d708af47bd8c2a9217d7f5d57b63847ed792e3b2da51186331bb022e32f9908783a7cb8c8c4f0be769140fedb72865093f98689e36ed0a2959777626a70eeb988d1722199fc7e92e6a8dfb7787826bbda017cbbabfa833b9e3925531a4afc45e9b1970a861d6369d2ed71482db72ad082092c11165dc3f8294a8c71d38f790ca511bc898ff643ffcda3e875f8a0b3b7c0d49497cc2d842135b17f4dbc1a4ec8c55bb67647b17210b4194583e046df9b02a53a7ecfc6b195229eead65e4fb6dbd461bef4f51b79476cdb544ea5ceeea7b4d906d907450d2abdb5f06443fa8e1db3944bbe0f5089ca20a649789e59adf477d17806131b682b7912c3c4e2de22a56fd817e12b16992f3c5f2f963cc64c24f958c55a9b3f719114e559446fa316e0fb83e5f547666a6b73e95c6706f3dda17f6c533c90144066c8cdb029e9bb5074d40eda1d1c36bf63277fb217b781585d9e418765f5177dc2924931e55ca65f4978229bb19961222644e62c888f8b4781c238c4aa4c6354ac975603567f56fa0029e51e7f4d18bddc1dd584857aedff51ef3cfb6ad400fed58c0c4a0671d66d0df6319c0e2b4ba11fdb803cb2b9a6246ed159c2a23b3206ed897206b8902eb796c142ac724db8319da5db61aa69465a9b252ea1096b59ad7653f14f2b2fc684c259889bd8fceed9b63f792fea5859a41cea51335ff677181dbecc9f4b4153167999e469070e242a4847265c7d13399335381c9c71fec3722fc62724963d3d1543b6ba0d2ea885e6990447fb8c72061b98d7202cec8a5601a87d9d9186598e771e73efde416d809ce71d90e3a4304671c3bd70de1de6781e3bda32caf3754408887d5202be0bbaf365498d69366284807b90abc934a8227e2328f5db131566494571aef8c99d3b084e82cec4c86f75d1e67eb15f5ee60ede4821ce3956898c5e1185ec592da7a68ebaadc1f6fb9c0f5615f02591acb0bdf32384b067f893a3090cfbd3e656765858a64644e0f62d465e9529185ddafd841c7335eade2dcb8e510a6f66a531f9c123bb7a65ad11e3279db3cfda65a0df2d52fa1ff170e2e63dca68be5ec79b84a94def6368304d38b44b13d198aa0816aee4b7bbd2a47121d7b47d514ed03cd7b5d1f879ff4a4eff3cee1c0e15d7fb1d0647ed5e70a06cf93c27b8be76efcdd288eacbfdd4a25553dab91be84393d4b69f78dc43d81d3653151b54e574c2e705ff2995411a524f92c02f883a3a949ae852ab8a26b3db87e588ddf24c3b2a071a52e9a642cca8a304d80b5ba4c839bbbf2eda48369d8bd9db5090b8df6bf9f69d7be90a75cd7fd012b18319381f8faac79f2eafa693e9211a91a0794e68d7fdb36fd68758f9d821ad1d6abdb97cd3bd396188de2435fdf4c675477e063ba8bc340702bf99be0999dcb86736a9b3564215317ff4bfac3e99881221d64249c156341751bd63643309bfd9b6b63361233dfd8dc472dbda83ce3114d1bb814b7d591d90d564b97a70e187d59d532aafb8259c7acb0a87c70f997e151e7f4d69ee776b6fab66fbcf88e08b065225162edbee234976e2c063d7d9854571f7374f35218ffa1becae5b7b4809e21b074e569f8d68d143242a3c5535f87791261c7bdd195d98b84498392e1ed1c3307399d9c37ae122df7445ee435c92a0f00a85a90cd182748cabb9c061f5c976182c4537c081a9d33b1ded532be29ce7d1ab6f21ce82a8726e2bc2e391d5dd4245b5791abcce02fb10fb24fae6abee0a3ce8a08cea70ee45daa141fdace6d12a670c59c9598c5c1737e2e056e275976e1c4635f13a6f5a1749fcc7bcf76408d41ccea099f586f33723840f2e06479f5e649c29543f2bbe54cc51402a94d5fa8aa32e8fef57d241fc5c69374b534d4b7e49921d871e9a809f4b740e9d3e53c313ab3d0d7afe022287901f7822d1964527cec5380d5e78b5b5294c253cee5432359f651e1c836029c961139094248a1258d4fe38f4d2221b4968179bf7ad1466de93bc4ab9dbcf1991c648402dd9d3006258c65f13409b52b029fef9b2ff6cbe141845cb29d27de79e23a28994fd8c2f08200b7de8f7d16303a80b46eaa1483c46a533541d468e0182d4566ccb812e7b94a5154560fc1b1a558ce8a7eb24d8eb1407f4f3c1ed4ce2cf18b6a365d5034a7cf9bfb1efc9b8a18bfffc8b248c5e8ff537718f736998e1d5dcd1a7ffb8fc1f570726593fd71114f0e2de1bf1ed8eaeeb1903c22fcfadcbfb9d4f7bff3bd08ef2c6fcdcbe238d463fc9178d943f728e8284130b0c9c5f4d5f5e09e35e6a803ab002e68c8bba40ef851a4690017bfac94b9d578cf91d2615f6412360794bc4c17628a1bef13351145544e7c2aae73ab61f7be0d1fe41a564a90bead0ccfa266258f24ab61997f45e88839375c0541d9a81152d57681044b5a4229829971e59950afabbc28788ccb05f4dea72ae3a4900a4c918353342e807c3208d21db1fcd6ebd2228fbc5d6d564190f7da2138de1015c08c160f59e90a50df72baa5e4a17eca40692ccd540702dd4ac88ef3701da609f07d6d5115dfdb473f51f57b061fa50a2c6fbab608e268ee278e4d0c3b4102f1aa27fc740c5b601f3db8245419189826daab749ed01a92f2999c63a37379609439196983304d67ad1e9aaa9b694e63af60fd5b5edc3aa2823eec9d0e5a491f608b7267d9e11e2f82966445f17aafbd0ba6f44c763d292637447ade0e8d666d65425d40389efa1cf091bea481e286f6cc1da8368d4314525adf6f7ae27b5df2c3efb4c9da8f3311a5812a15c9140e8b14315d7f7695c13a9a2df05af053d3a247e6dc0a61267e6173655b101f53b1688c5aa9354c8490875acc3bb47ce72b63eb5ec7adfbf66380f2550c418432fe47df1ecc0544187831e044d0d5729aba90537d2f390167b4ef46eab949de09eecc1e0295c76de707de9892ed2bc5678e5aaa5ff7bbff86b2cbf5f49874ce9162748b2a43851398f43f1cfcd95a40d0f4a59c72ca82e740606bd10bfaf61866821b163c536e755954275b39de82092db790eab5f89d37bb522268212d75cc9c798f643a95b18cb146802267338d37e8843e9c95093d51971e275a742ef8db39dfdaef0b896c4287507166344f2b51edcccd5f3bb5d0caf0e459135dfff83faee382d3e41031cc7d0316d4bcf466c927974acc0aec849905c510f5054c98056bb2fd026d28463f4317713bb36c073acd5dac662d45b5a9798a42b1d70f8920bf353051fec5c6a83d152e88dd2ca3c6c50a99d89c10c4c2a270ab292755563206ee13e2df9a4bef61397c230087f01fb05b4b6dc6c8f55c4dcea745069b0f5392dcd5fc3f450acf319e2c5b00d66a726aabee5436f4a2c67d357d013e161531384b23027f520c20d1fffcf2a7202b88c51a7c44b6bf2f63149ab71a0b58ae4dc72231c8fcd60d2ca4c48fbff243249be2c40361454bdfd58534855a90d9f8d9629ccaae1c466afba74db4fba324f439c97406979f0521abf30ff19c0833cedef2dbdf095f74df68042755a34986224753caee65d76f0c126eadcb71bace44f21ea701f19869492a06f2851af0dc7cee287f0cc5ae54f0553aad8edba40190c4fbf4a1180a9609324c28085ed718716fe1b903f21deb30e9d2a1ec1d94cddce0ea644f9d333fe4f212e315fe0f3d1d4121095fcd71838c224377a2aedfada43ce0ff1ba720f89d82bc28000c3994a56777e7f39a995f4c6d0ede44eb446096850eb341cd0c4d8504404d259beca37d35fb9d12075551370e388fe8ffbf704430dbc00a8a48e389bca82dfa66511f232c18d338da503790782db18cb358129155507eaee2a6bdcb2d5014a311aca75319f71aa7db3c8e85d331e3ff39f88cf9144a08baf3fd4e93efdf08ea46ef913691544cec56006633a08cacc399d2d355f6022afd735b5c32b5e50acb2ca7a4feb5f3d80fe72fe5ab0ea9cbb26f3efb52068d1924134856247269613e21ae4bcbe74d4637db036ce42b06df7d1bbba292e62132b57dc0b41dc6be3e01b3a5cca26ea4505c318ae6b9ae3b5c05e8bdb575460685bda6d682bda5a1337a930807411216b758b32542ddb76fe0421056fa2911cc7bf375cc745659a8a64fe03a9e2805bb9eb49860f483d9a0abaa75761402a37c66a70d6cce4924d0355c323eab95a3fd1eeaa209813982fc459b1493f32e8e8588cd81ccd146823e2728ea20af131699fceaffc0b0fefde0e5f30a7bcf87a712cdeb5b895660aa3320bc2be9bb77a40dbfe1277be1e7bf472e00a472f2880cbf7441d95ba87ee976015451d8e68dc7188748d022f5adf8195b22bb148c91af3a5a7e43f76ef8e7c8ea7cff557decbf412d55374663177a4427ae03ec7cc9fdede4f102d1b93106957756ff035553d25d7b80588b77e83812f566c31f6c3413864c158d270905190dc1798b86c958bf4edbcc516f999f16a531e3f76fe2333f353a6f5dc37a75a09f746c3636f46418bed291e6334d1b701dc6fc3ae907860adf00a15f5b66184c7441eb7b584fd196af089bfa9eae055a93b8d3aa9f07064514d4108b3bb39e3d3fa2a6129f9e6d776d1dfce884c3d4f836c7cb66be33c3d054fbe568a1fc0e65d97bcfe9513f38ca7f7b1e4873f1cb6e71b62c9cb3688b687a841e1e6d33ea3d23d1e700ba201883886628d3c42bbe9f82279851df86ddba256d0c00e07634b0f0af884a113fe2854fb61bced9b4775681a5f9b378e7075763bfd71968f5193cdbfa2dc967ed4fe10e2a2abb63ddb8b39a8025a5d68e1fadb6909d02de70ef0733569b10ce689800e71bfb270f42ffb6016810ada2f50ca9a887c07557455d729a3e2e59d5182fe1ac08c997d4a6d8714fc791a65664cd031c1490266d680bd4379f71b93836339e216975831ba1c153ac9adaf8230a6659989bd2e664d996b5e70b9720e1a0e89a2681873aaabedd1fb43c3f9046086de12d7fb49c2c62ca3e87c847948fdcb3104ea557ee969dd29a1aa49c6757c666dcd23c9474aa28a6a8ee4216b9cd9bdd49ab9be34f744b7ed164a180912dbfda7a0be51a0ab0a8ccf1548e36c8ff0a8ebc55d8f2c3cda5c522cca47625d310bc4ae2e378fa2b7fc435090c9aaf0e861efaa91ff71d51838a6288559722ade02f511f563664cff3a0ffb01855fda85687affc93eb0656faea47795f4f2f3bfdc8b3c565f52c58b20c6f470c46f9d1633df11683de880d8b9a6e5a3cd762a814103819e8a3d5196e84f1d46e50fddc84515e5e049ab429e9e7d816674b36dd46ec4717ab161824599a66a6e2f42613d556f822d4780b913f0a87cabe96d030c12da5b4876699201cc6abfbfe201e905eaffa65c4c3792cb297937620cbb9b9ffeb4122a3e85073d67a6e680d0a4d2261bffe845e98b0eaf2a3da1936096ecf46d5d521faa6009e0cc6a97baef88ad5d693ceb107fe45c6f31fc5f982444c75fba94d820179d3ecf8e4841da27c90b1f659561f8814d2f47118f650fe54128921e9c1c00498118a83592bc8e5ca2e1f218b9f02974a670a593d8ec985eb544f07fd193820c1d86932dd6232adb706f0c177baaee20687600c2b82a1ab35aa2b0f9c3313982fa6e634ec72396923b1c1bb72ee8d13f27dbccab09b11860af0a73f81af55cf43294ea9f81f7761108c61f9a14731936e88e4d4c2138db35691bd273ffbee4014115e40f06c6bb53663a5ff9f7e989a8a7b023295a3109a75a77154a9cf430bf67dbeb99fa79d5f4a01ae69bd7dafc9803fe41830d26ad564e9db25d64a33ee593db5be67e8dc352549ac9863081e118ad1393d6aa5ca069d14dadfc43cd8c5b9da7b9834bef98e4bd706d2e6fb9d768ed12daf0b5cc90222a82139ed20804b612b15e94da968f9dbbac5c3d1db9d09afa539a19f4e923bfe5235bf3846cad469e7764d1205d6882cbbf548f232214f7daac78135dfb4063b26bd28b5a9bfe89a9a6dbcd1e38d313e045e619374df1ce27e37f521a87b8570c628cd8e2cc5b2eb14599927c9c745d873ee641cf9e20986f39da2a98dd8bd6caad6d699c207cac1251f22c4ccb053860c424a520df639cde3e4e1d0a927d949e9b121b387adaa017943996db18278942bbf56e2cf5ac509df39892d830b015f952a3bab58a5bf40c7783b4a457af722d5e73ed67b27e2de5751fce4132c271623ccbe7ebd40531fbd24ac041f06eb6b124711eeef5b06e300fd88f67cd2335bc4abe2ebcd881163568c35aedb02f05af89144956677699a0c937242ecc1c4e0e862eb34999f32981cb63b0b42ff851b3e45c0aeed01018f67e9d78896d7b1e71b8056d6c8ee7f64938981994cc24d3c7691f08b6912d631a0e8a399d264fd0afd59769071fc8cdabf6f4a27bfd78e3f0e8768385187389f70621ce7a6e69f472ee342ff3e01ef7046d7a51babd5351efa1e43656506abadf699869e4764b11bb249886a86ad4ae00d90c51297f756ea910ebf485d3aef6cf3d98436c2e4d1dba5532d32f049d13be2037b5da9bf5f29d4565ce8c807db3cc90630029da9061c76d50a47bef8fdd4c8c022c0aebd9e4a9aa9c2adfbad60b957b34a2b34074197a24eb5db0a702e9bf565a8c4cf8a6c0f90bb72f3847a5a85f61963e40ab6a39cc283b3bc5ba3d355f77917df709c30c8d97086b8bfe66caef606d176e149114619e6ef84490576b6de2d7f05ec3861fce262d9a6f776ea4c2b07a9d32fa736b15c0637e38d6e32908b041c97807a61f599326336e855b25b6af6a39d0a74bdbd002eb4be30af1f6e6577072ae4c06b7f4b65901f78bc13bb051edce2cf30819cc642dc03c3935914ccbedf171723254fe0b64b958c3fcf9a0910a57034ba577874c365d99c545a622b5dee0bde2e3965b7d0c24cbbaaa29050efde94b660f671592e7cf7623580d89a952e28d45a9da4525d6f98844814d56d29029e92d19f7997717689a5ca574e48d8f49567e0da9b842f2f2cc0957f0d53d011a22a86497de0de7041b763698614af49809c17e82efb08d7c742ce4fbe04d5920c54193175020bf956b4829313481b546755f6c814823be19a0c017cdf01783762d12a79bd77ae08d3c39ab87e144be4439fbaa08fd0af76aa9b6f38a8adee7e25f772fb2eac5af76a351f7b9dcaf7e9671947374766b561703c754ef345b815ab8a7ddf3381032adfdf1724ba12b389bb84f52c364314971db358938b7215f0989b8228ade35679f99ac4c35f96f971b810a7ee273b20276ab4aa506090cc864027e4b11948ca234f4353c291a90cbd38e6e4dc97e6c745ed4d539ed39aa83685204dc41904214a43b7b5f314c4210e85573f8e44c299cb50f70cf1b72df8779ead235f142cb477e31f0e44e5b677ab7a6913de2ae9b0857cee31b62ac3679fe9d823198aae94d63fb096424f2cdf09229be839e7a2a8c1b3c39f6a15e31211b339e8d4762825ba7300222a5320fa1acc45e18aa607b3415c18f9a425da694708d5534de7fd83786080e7c969fc7449d5ab024fd556327bd211a521d85299251cd1d14fc528bb024e89b31aa135fb545b7f5ecfc0f1c3b86af791d7d6bf26e4afdea2faf6d94cc358ce5c50f24409cbc1ff9ca469f152f41c399a99eb5b339efa4386de7d1af357fdf8eebcf07dd62219b6d508decdf36e72064228b4a1844e0d20f67043b12a53fbd7db1b9d4403554e5ae8fb7b534988ed770751ab0d6f6414ddb494ec5e4a1f2f619dab2a4bfacf9b021041f0a2f0df6937960f5f8b64708c03869e674bd0ea3749a547b1a4c0bc644c98f521aadd392eaba111612709407675c2ddbe09738d6af3ebc9e79800e48a42dee07d05afbc5fa239b1b9d640f68659bda3cbc488e722995c2ffb70f2f4901e12d564bcb2920bb6145c81c29a277e22ceb4375288227a9985f97dfb7b4fd6be35032a4f0de6e77e5edb676483d4467fd38299ab866cee9f3b7cc1835db4a7a2abe56da517c1af9ce0aee5e2c8b63153d41acdc18da0fda763444982abb55134948c0dca29b761a601c5bd598a4c972614edb6c2543038c008bfd81e1db9c53009b5e661719f03c025461a4ecce280545e974b12ce565d6a1126275777f8de8c224f325d67821dde414b3cf020e85051a7723fa437662a591a39d278e65489cd4c90da2ce45e79deff6de213e0984d39fb7d3be7d66d6b39cda24dfb582cd0fef0b784efe0e31def20a9c7ce8f53761c9de7fbc9cbb5e9b9eaaae1e382377ab3321bbc7fadf5ee6f41b6d676743c3f610dd7beedd02a1420240e57a4deebc635304fdaf5a0716e5c5200e8a62e37a62b51c10a67d0eee7caa953df17bbbacd76f3be8939447b205520988746fd1bef45905c9cf1efb2dbc866b4ead37982fcc3bece0fe1c9723052059b1cf739d39394cb306db8387a0d990131c06c42f2e172f67cea28e469c8911336b09fe2cf580613754ab565fd41a973038720424e04a72f92f8dc82a43a8fd185244fad5aa9d937df8433ddcc15924878d2d6c319a5df3822b5e879df02b7896ca9bc4877dc8d2b5adec82fbaf6780ab36f8bc7b71cafaf9b5d59cef86750bcb276eca53a35472b4fb06ee1cdcf3a363e3f5b6ed07c2dbd757021ac2a7e6235f1207c0badf723fc89e27c478afe5ce8982c5d334f14fe1b49c076ab3a68a99140b27f285acceb01734eb708aec69d26962538549825a0d3175de875e86b93e29a46cf2c17afdb9ee6334c9d9ae57b60bb27a734412ff16e399ccaab07f81b58553a6e5b0709c12953393f48f78c1270c7c13c2d42f0c98d7049259fad463162ec551c0de89cbc4b76a25be8c0443e0b140518b3f2f4a087bd6baeb6294b10ea07e168c3d95154ef26631a0afd0af0a21ef61dd3cbd501cb14dfaaf76e0b3cd1e0e97f180d9beec1e648395869f0f44c5fa16b6d95c0f8f849b7f99d15eb3b06aab7050e56f058896f0914e13fb3956e693909f967df365f2c1d16f85d93c491dbb5b1dfdf5eb412ad15679cf3eefb0c2cf028728fcad67667bd983013afbf958c00c8f29450a6e28890251ad7328369da357723a070d1f5a2430efad1a4c524daac22a705d98f7dbdd1a8a54c5d9385f9bd189c12f6f5d79c146e3bcd290fa6c7791e76f886898af5a3a9cdad0fb78d6de6bc2f8a723b16a4579e122e3a3db2ebbd1f9516d6a0a9b22366f8d912793a3a093d345966e3958f447456324a9227921b0bd6c71b3e7b859ec5cb9c59f65c1eab41852e605a6be8fbec66b293eba39662dc664c094962a730d661c0db9e00d003ed9dedca1f324ebfb3d286d57b0f581d88e81b13a86fca000f290913bf707ebaa00371541d9ec012efa05d94969d5a25b0fb47d1578695818facf7288a8731053dc4602fa2b4d0bd4e43d976e15f731a61d482e9bd43ec2f4ab24e137878bf7d57db09b5f96109d8b5979dd31779d4018dd25fb2b655333cd32f417d7979a4950964853040d4e5960a480b54411e7ed43508887591f286a6daff86064c8241a346b3bbfaee2ad41593875b15f702866ce16d3b973e9b337fcc45585bdad670dde851aafbd4c0323a8c6bb1faf95d9f652252d280d676b02a34f41d055bce2f7c39bd2607f9991d04ae448f4e7f2316cd27dcb8625be811cb2e96b7ae9b478186469ee1167b415aa13b142bb93c23f02ff6387a056c39a9908f2cef4cafaa469ea964ee9aba8ca96e8587dfe90745d80f68ff56418a7f7c63166d0c0909c61b333cdf70aaab60ee6c2a3999318b655b2b61a07bbc28ab614506a2be83c4ea281b9b8879aae3125f121eb17dbf9540681180faefa2691312dcf8cb0c02433a7dc58b2b3cee379e05a713003ecb63d3b1ee767194689f196efc43c9a4365030ebe992d035e0ce23fc87f5766f0c6756845b17b71a378fd73ddc9d16c2cee7b4e497e1f29aaceef840e8f17e5bb79a75d96cd74c49f606c0e0aa192bfa7959b95b9dc55d136b46e30c2babdafc5d8a156f0965447860d6b753718dfc3728d592e858b3789a8f6a3421f98973246e36316b539b5ce3557f69ada699b6997f51a32c5280691ecfe59ae4dbe0a2c29695e21cc5fa974aa6c5b9748180a99c192177ee344d17310071714edcec7360d68c9f50720d0c1ced43b2e4274bbf360db1a7d4f54633464f89b02fa970ce1c141ae06859f355652fe50f1a5efb51125c4c234cd797571f51c5a7093682e0a24f9a43fca95f6fc8936a0e50f1a400a3adb1bcdb25d336646e3529afd66238d1acc298dbf9a624778ff517bb8e0554574e25bbffe4356376d8a072ec629f4b29801459107b2e5589310aa9337eb3fd5da8d531099e66dcb749630ddf11e5073a2d92f94af51d340f9e2d7c63fbc10f6a5802d84f548132754590615ec1d12ce6cfe0730f5f4591125e4ffed0e941b291d6a8741e34f4f72adf8012f6e2f1d967864acaa44308af1cfdad311e6009c1edc3520658361c9e9e0bfac0bd66c9e1f38dc0a19259d8d451ce50c773ce3de997f17e7f5a41e84bb56a1b4b7f0931a7bbb515eb5292dde549d7303e546c7cf6a0c448c6008b84151a10a4ae427a57052742dc9bda6a84b6eca4bb2b7ccf6827902b9cf98805ecebd48312d0df35fe4417258f8b4302785564fb04e2be6a173b5183b0e0b641f939c8885010af0d64a289444baa70e33d530d415cdd7f688af92171b93cd0177ae41cc0db1b1e5373930870d4458071c9c2c22070367bf4b31d27210c3b87c56bf3c49ff91086f6f7f202df292d0a103f02234208b4e1cf400c6ea930891d8433666c96cc18dfb00456d8508aad617c6374bf2a9f1abeedee8b2a8e67297003592305e3c4757e3dfa374f6428d7e51300d4165fa1cfc8ee3640304b7c6797f2bb86bcdb9fbcb51824b4b0a9df5ca74e164b5106f8d42b70e09da9779631ea8317dcf42db9142447df18e3d2b6b179687235aa6ddd021f99152dbc731af6ce2cd000e8fa722dbd04a0fb28975ca262ab5a111564b09af10b50c66b788bd70192d45908537617ba10a9af693d6b00014ba84bdb55674067108508e7b3452d75c4e0b1be52eeb4fe800e531986bf24032c6b8b148c667c51b9a70714ed74591281ac916951f1b28d94dc336aa640f2710fc038fdb5ed1931257259f174108d6095456f528b7f872442166a95369feade1abcf309fd891bd05c57164e39ab1674f3ab0299ea31668865d40235c75916d7697b941e039624e69f25e4cc325fb4aae8b9abcb998f0b6a0700e547dfbdc901827024cbedcafcda27eeb97a5f69d2dca741f2cf6d4e2963b0ea50f5995ce0fe6a1faa46b3badf45f8807b47248b35fd346e958d18d58e230e2ecde554030e4d409176a71eaa3e03bcb472f86cd20f246c07ca9347db3efa903c311debc5a0ba9f044c71c86b5c0a87e29de6b6ebcf14a9df4cf38fe27c713c7a63f214f8b75d2399b058ee2af7a9e84fb9edeb5b4c095d382da350e3a55e4e9695c001a24a4ba9cb8f2977d41af0f71a19e0d327b3790d43f0bde1b385c7a3bb9c40b40e6f75c724cc898c15c47a3d445eb61d135f7618dc03cde610f08b95d2010af76c3b3609c6e30c693b8856027229c3b0148e96a9e8901081f5276fd0346b36bcddbcb7fdeffcd84db5f6e7834028758560b88308cf232152d514766449b0816a4b918ee6434d950e184ccadee592a680d0398e50a4ff8a9f891225493fd423962d6b199b825df3ada8c51fbe8229f324954aeec9c37a73e269676a0fdec071201f1668f5f12a758fd641a921d802d0c4bff3efe22617f2386947709db78fe0e44e8df4d095169ed432d1d0054e2c0b4302c0cecb480968577e11bfaf0fb11b542b3ade33601830cd10e103583e2e0b9d1116c1bb20d14909824d4af0e66746575beff87acce6badaa643a97dd7ffb4cf760133f0b9a046c45df7b726881a35a6d4ceb4ed16324d6d78c4c9139e9626e25f39887db0f5469b9b27141d98b8da7184f689cf924b7a954c278e39fc9e7ee1757248522fabfb0675c2c04de99ada6e42868647bf77468def0f420efdf62a029df18a95c17c618518253052b4e230514fbf002863c2ae7ec9299dae40ec79047275f8d90c37449539a56df8def159ff32345a44d470e9784a9b01c0564d4421f8384dcc2d997ad4c1b2c500b53b1096866f602823aa619211e2aa87c2f18b2671e8fe2f4525d58463db70d9c502ea503388ff3f61df95f0fa1995822f7e577233f4780726fd4034c06992b73e38c6b0e936a7cc82164b39a87fb9f9b6719daef964e29f23aba514d5566eadb995d6507f7008d77285df51556544f116afc7dd855b50a5288e4faaef73681be8d6e10adf43e3926f097f56b58402b7d67fe6b974ec32ef1e5541fd141a4612cf0ecfc403cf1a4063d2af20f1830ce2ecf50ef309df5add3db85eb8558fbd0f6b0ce9788de56f5c6c21b973d97b2d2b72bf44059f1a5326d3d8864c0c5b2d09a1b748132b9eb4ad98a73219fe2296feaf34d2377a413d0acf2253b306ddc95af9162cff12d38651a444bf7501b1678eb2b3925d9dd80d2aee92a75faa8cc834bf14ea1459ff5aa944b4c1206cac2d989e4b0be61b2f7d1669f7458303392bcebfd745348fb7a448d2f20af607d631387b916da766e02641e43a0d8d24288fec636ac70a8e113faf3919f7593d8562378cbd16e3117211c8cbbd3e0543f7a0d1f61086dad200c6e188880a8ce034dfb8eaeb9b05f2181f5d3007e643b9bcb4f8fc0b51d59375c07fe4674e91d32eeaadf7ca8143e500ef92cd9ef2928d4bc3245ba5e23f59814452c936a56eb38656c8c787e46437a1e0506ca35a1cca34e2f1c85c7537605fa05cf613b06f12e676bd0dbf3b87ec2c51a9f150d352866890576523069911f7921abb478b37f3cc18e4c17462867a7ad02b21c21111e893ebdb6e7d0311766487f208e7e80596c583e9fdac2a2d29ccf3a048ed1e1f51bfafe935530b1cf2ab6821dfd6cb1aa6b787d8997ece53e3094766b82725628460c9aa1c615ba41e17c2508245bb2fbdbced5b311001cfde794f9e6400a226bca22c19cc2ef93c23279531f4c2099260e10dd2b9222621e33ae8df3ff22f0a862a6b57dfbddd025e1d14a9312e1f97c02e204872ed667bb3322b5f1767045727ce5acc1e30216cb1c39804f44b88842a4c29bd9c78e647be78a6eb3a2e42478376c82d589448a6bfc5f24a53c0ecf79ce154a75e6404d91e88a5ec0162114e02587ea7a63195d738ee1bda1142453f890624293cf711efe45e310a9094c75480227a041fa5a821d5ab477eaedf411ad930e3a44a32ea5df2febbebc750260a5571885679f1e440df22532eb6f7c3c1a521e6e15dbb729b612568d1996561c85bc8696cd9a71d02e838711ee47380697005ee3d1947b1f009e3fc89a871a6a32331a908dc483852a7206085eddc0a00e53582af4c899667c775fa6e94e0a7881373760c66f32e5c90154748e97e5644f32ca1ed51d36a98b34b9a72b1d94dbe431eb3a2dd2c351bc5411ffd9a9fa6d7c747b0864e217af664604eb7215f25d27e3b7a9f6af3bdedfacf36330f56ca008227b6380f5e73be4afa339ea11f06d1eaa2a69ca86d78cb586fcc075235db00682dfdff0bbf89a2007078eb532e825b62925071b2180f4943ec2c3ba47a2365d71d1f3fdfcbc78c7a01fb5f18635f3ad46b0d07dd57d73964c12a637cf871f9ed06068e60cd53cbb56049f9bd2623bf83a47c62a637f5f3731814a6dbe8eee660d1d3c61b98489cc00b1684c071e565cd3b7188feaf06b902dd360836b77709bc8d4c528417a2a612f24b810c0eb060e88aaf2a0d8431551578c11fe9d7fbcba11994f68e0ffb109b04187e8ed7ce94a19813b013347b96b861ecf50c75dbbcac39b6e1ffe006942468b4a3c931b5a07a6e5bb9d492dc563f81f49aa7bcb03a9051b6aec5f65228a8acc39b7e473b4ceebe2bf37f5df064a42621fc9c4095fce203c8bf2d31c21501512be847d5758a48e54ba179b91803a2508ae8c034b9271773914322637fe80d60318543aa403704914c3a4113ef96996208571381806f83c8fba5a7e199b7896727403cd32dfd582444a07e287bab52ccf29963c2628f3541dd43e54853f6a0bbdef6773c4f5ec8cf2e4ea5cb8596e61da21f4d58c57a4ca055e521361a5f832b1c2315161860fcdf8be218b1519ebc96dd702f5e37c5ce66540484614c39c6b401780a493ee10ce5745312ec667998fb69fbf8a3ffed95a5458e926a7fb62ad5e58925ed5f6d6cbc800cb083a1f4a3365e91a1830d2ed8dd3e4f196eb76898457dcaff48f339da510196ffabe3689233fcb3849d150b36a6843b295a0dd5030fdd4078c942c596f4e27c47765e500ada061d99690e6603c0b5627e39aa24c0c3c2f2b787e69643e65536549729b6bce5a69ec9a0115e7b39472d1132d7b3e035294ef0b9d0e63e5eae4ab8eb8ff64fdfa734f70c0d02b87f104171db033ec9dc1d0b220b1a8886af87c9110522efd72eda7da300add731c1744725f1863af9fd391de70e731c67123bd486ebe7a3155519c4894f94ec96f310eb93cdc475eb1de36c3ffc2b9664e74e5ea7103040b2708b91f2d5c604c242592fd27671ee254680b4869cbd45f52cfca80a43d49172850b5d9b56f0779c984c1ece4ccbbdeabe88e544dbf5348900991d18477f223f5c70d602712c382a1254600769c255f4cd76bf83048780c6b837cd19ca7d3850a5f0454ca634eaf63ff06da9539c10ed49da532f1f7ded73eda753d9c4084c0a3e38e072a60f109e0292d7e970df787cbe7fad64ef41ea1a994c1b548f26399531ddbf35836e1fdae5412362bb70c17a8c716ec6823a4bdc09ae6cbff511c3d027bd860d2d01d83c28db8584309c0aaf7d0aa3c764552f27d9a1f2a4678c81a39eb40eac418254bb5064f1903634a7855c987a42315cf6547803fc6bab11d195bbd57d474f4738becbc13c65e049f1239da9edb54a9b984fdda737f2060114acc32b20ff495958edddff884ad4dac1c88730ee35b4747f9a5f72e2bce22ddf465da4b382f122a03e6a05643f718394bcc621a9e90154ee121c7f8e916deb52a6da142d42ac525db8b9c8a4d5c3cff78687eb70595b8a83f9425ea7d4d1fdd23ff4f6262990805d79d79cb9e9cff56a7e78ea0d90488a2567786ca8a44222d1bd09724e6c69c9d1a8a48fa6fe66ea2851d066c5af28d7427b2f3dede0074f51cd554db3e5d5f06b2f961361950a68e463bfee18fc13eb90df6e679459a6bc8951273c15a1d24f796cb3654011ea20886acf2d232d3e6d15a27f0df9bb04889b695402d0c45b7ab196f2ec556d6a7e993567f113a627d89604f1155a17c9dce7baf578bc78bcb4cd66883f3b2a15e485a3574a07724762cb94c7d4c1ce7fba4a3984c38e9e2287c8c53dac4fadb73024f17d529b67c428f68ba23f09b8cae213a4fa83db6d26d0adc1878d827a3f1d31f879b4bb162ba1c38005c71eea8a55e69391ba6d447b732cc458d0d3bf54a54029579edd9214460acb5788839fbedd87056d73334af1383ea44521b7a80192018f8fd20ed1e68287871e556a70309d9fb42389e576eda674bb566795e2ce0805fd0ada4f4d3f4d4ad83ecec28cce97b44688bfc7f3ca3a014b913de95e220174fbe253ec1a8a0f67cc62cc83efa577ff72cf6ad23b95fa3ba26b461d55219b6886afd49632ca854238688ba0081b3061c4bc4e587b6746bf759be78b8e5074020366cbfb45c0d9a9f12c0879df948350ac8b6fd1fd6d99421b54a6920423c0ee1101947c29bdce545f63d48e69a0d756619920ccb6564a58821a93c3148d5c0bb85f30f137d4e131c5c7f27604966d4ab84e6eab99b9cdd63fa6f81f0373d220a7589eb6b096530532f87cc7f2762641bd68495ef991d118564b0d6e054b3e6b7958f543e1c0248e9409ba01f41ac0d25911f70bfe6705d611d35131466fac50156e4ffc12a9d2a51a20daa8043853439d02648b2088c71feecd3b2194904d05cc13d5866fd62a806936fc510c1924a65df64f66f361996b5a497fc2aa42cd05aab7cb8cd03ca33905bc4f77ad9b277a9a1df964284f9cb85477c451c9ffccf4f32965d4df653ff4fd0ae32e652aad3ccb3504b8d9bc3f86215d50db77dd769bd80a8ae7d97344c74ba70c2a839cff7ae942be2b149925e217e42ed331a6e4f15912c5e114ae8bfa1633bd1a6583bd70c5f49df0d7098116e9d9be1026cd3e15f33fdbad00f4ecebe245c36ac33b57d5c2d56e22d17dccfd841cc28c993092f8bac95e6936c99d506c8fc605c0cf223023fa32de1bd9cebc08d7a9a57054e2b3c1152f7af6ea2a7d060161129a0971be74a8a8decc68d3da4cb2b8beaabc47c63b1ba7edfbe5e557ba4444c6541b056f898cd8676ae65496b9a2f13d83f81fac67befb13ee293f8a94170be7b5551ad95715510913ae2178c2cf55ed12b7348770b4fb1f87a184f6c28c415518b92acda27d75d66e1cafd67381e0ffa955210cef2509b51e54226488d7adb54a47dcf20eee51dca39e74fa0f3222dd2d5e8132ae51b25b38e7f766408b8198552ff79e25f0c22c872088be03c8a0140ccb5aa64f3391244574c8f9ecb67013029b62ed23822989e2f9f9ea2c9f4647c0cec6ab1edebac09437a46ea8ed7cc701f845b69af352a07191b5b2c5311c83c414d56f50e473a0b4f874ca83d8cbac2095ab9f50dcb7406c61504bc5c53601d7df69c2680fc08d14e30c163f06af5d85690e08e58e2886178ea9612729cc025d2fb030c8d8ae8089a5dd4bbdd49318079b406c87c29a0de9211341506615f2f5a10a9c04f3145b3c5fc303f34ac35dea5b16b725403ab52e864fabcba324dc8d67abbdf8a55b349a763e6e87531cf882c77d978adac4749a81e8be281d38d87ef7f002861fdba55d9af8eefe2bd0f2c2e17851ab4fa48268a1194c770304c7cb28fbe8e28e27c84b9512079a8796256ffdcb7c536f598234f215d06d3fe4b63c8836676bf35e0edfcef966f02b9c8c3d7f1ae9df85a4440a059bb01d6832a6516a7c78b5d971c0fb580ae4e1cf2105e261c30bc4f94b68f7dbc92990433ae2bb630ed2d45c25dcd7c73bda4cc241dae7cf55cee7259e43e0795cc8158fce789cbe511550f9ebeef0e3cd96b8f74eacca1bbf9dd0c02ed38786e6622b884cd96aa152e0c06fb108f7aaf24704dc7d8a129ed494ed9461dd0cf9a5fab8607f8775a9629277b1bec5f08959949f03116f5fc343303af1161e00d5b0bbf5398d649502cdf3d7842d2f1606adf6028d735ffb509d018d58d4f520f8a1324910650f2fecd0f05257b124b8172a5f5d4c99459cd340ed6a4e8c23ccc83fdee005c0dfbff6875e074f51c81c52108b568f0f5fee1787ff852bd1b0952a3845b2583115b1a5414a4dbe13469be58cb33af07d30b5ab69b74fb77d177d4b0b321a9ffc3bf7d2f746938276b58eb00e19954c4c81b5231a6d5038d377f27bf212a4aebb8d9f27f4481aeb8b2b0d280e5de38780f56fd7577116cc91f53d34f5166439ae1903d053b72b9e6ccbcfbec4906b5b233ed5b50d68055d5d679cbc1181759df3d9390d64b8647b4601b5ad3065318de37708cb7655bb4b0a307043f483331aabd63cb97ece323e9bd9c3f8cb3b198a73ce66777dfdcb415b9ed8baef405b3a99b966e2ce03f57eb87c7238ad3242c6290d02845bfdb10f6f67895e7e4724bafae599d2eef5b632ad399fba01a4726fcedecd8ed898ccc51ba1e123761e24cc68b306ca8338b7f3b524ee528e4f907ee272732dfa1ba83b048bc7903b5a0d2799cb03b29bba2cce7ddac30357a84e1153fe10ada25e2d74248dfec7aa9d89d814dcb87030a4ffaf46ad197281f5e11a4205f344854c1b7c48fa2c97f34d37726f042850900f7072c658a42f87c14feac681463a6ccd341db95459b735947d619c6084790260446c95f9844f122a53f80a8ba9bd211edabb4bcdef4922efcecb47498d328284bccd58e5ae39a673631eb1f8af1e5219bd42b0fc6e4bead99cffe8d1a29d5043a1fe0fd18d5816e0725907defdcd4011071709aa9ba548928cdcb40398f48852143ef9700a702c9f6b5d39369df559bc08f92aa1b6d16637d9da4323c82f9958044163ff8516d1c03a6364c1eb30a10140d4760c4ca378691b19043e69bee546ad434a23712afbd91839546f7c51d21129b1a8b307e17ac8f17f8a2c2d1fbf7de5fd08f818607b5ec8ba11939ad155c9b71d8de0332f764961c1a7f1d588253942fd59c3ee8bc168a74a04b11edda1ad103ab30cb41f107f19217e66c2e5d966399cc4add1a93a086421b16d8f3f9deeb97877e3cc093a5defa0418bb4301d07a2b71a17a653585adb958da35a9b221eeb537e901bf1f8d4ea148142116092e6fe5ea2b717565f5a6ca31533b998a340e75b59f41648f59d8c5aa20440403454008c91aae2ff70f295b4f54f4088ddeaf1ab0af0a81c3c6e398b99be7e338e8b6dc1bb492597d770f990eadd4aad6b0296a45da4d2edccd3be3d17178a0fbab50fb4a275abc947d0df1ffa7f6b40c204a6be77053e2af810962b8caeda417f21662ce95a71dd0b3d5dc7ec865e098dbad7978bd13d3d49581d3904150097193ca108db28a28ce3e4e29792007343b46c8ee4db0d71440438aa2355a54e5243b5cdb1ecbb1fb781e7ad84428022ed4737e62ccda2d16fd8db845663895f340219e982ef0c83e6005b57ecf78d5ba1d1fd901f2d7c22c407dd15e6bcc9e6213cbc41032bad6158cf792bc88eccbd481024a3eeeafd64bce9965b664ba573feefbce034da1b00e6053d32994ba87ea4d72fffacc5f2e4e986029447cdb31bccb6bc7acc121c4198569e3a943b4fcf4ceaf7b028bd012499dc670e65d894e1152765f29bf40140216dd58065852fffc183640584e0fa182853324f205da6e1d688ce8dc82c90acd5427d6959dbce8f05a9bdbb22e7d349291e65cf58df566740a65a01c861b2f85ad3c9c3738b0e31e53e02db4040590fbc59657e67d45353bd2af702ecafed24b8f62a91e4eb5f7a2fd26385f66b678f307508af514a6211274e984678bd3f19aef9660a2390eaf8f08c68cb2a0bc923adb6783ffb351e2ec3795b6112428816346ef9d243e8b940bae90e2983f12789539897bc3b8cb35467ff50575bfd609effbeb236013b7ef6b92343622113879d7e189d684f0c55e3d51877f29f9e29c7ae04d9bdecc9bb0bcafd12e38b866b23ad8d5b537e62268d153aee365e81fbeeb788850ebcdbe192eb4457c89dace75408f0c95174f594557d1a2778b584fb9f456cf784fd9d5a24555cf05d1858cf376a65763632615da9e3226819deeaffdbeafebd1caa5058eb4f2b81113db378fd63af4d13d975a5001462f353e48511b0d67916a248fcb1d6e076bde1e29e4d50c80d14950e8b8969e8dd5bcec32ab94269ac95e2910382813d2f9532891855a7513635f1c2a0bca330c4f955e85318024e4712aae2a0c84c65a925f987b1b9c2c18ed236c9761853b0799ff5953d5c87967d43e1b3fbb077018ea4f6e21260db6a0423e7d605e794555604ddf104a24ff9c0ed031b1d90159996d0aa68c986b80ede79844fa3a9630d1b28c8883f8e17e2222e0f60d33f9dc9fdefeae5a59f92629fcc8166a90fb62aba3ced6395441791596a1b2f06973aef5b3f533fe25f389ae9776808cf61b6e9991f5190e1b1ec29730af46e489a2250c07b50dd09fc73c33601ac9572c110f6dc8e6198e02cbb5c509a0ba4fbcf8bc687940b69d3078c1f2540c98dab7a019aac2ca841fd334181faddf619894f3aca055db653b11f23dd12d49ac28875896daf48e19e5dac46bb43b87ee66f4f45bab0b38116f4c26e6b117141ff08b7a60e6884763ea23922a201947b064f2fbd4b1696797b2fbe7ae8923e2eb1d91607f152aa8370f449fe8d9204893551692039632555a5c4afe98d30b65b87ab94852b0f3c4a63c7a2573b90be2cd6bf110a41239693ab7a117a130ae8d75e50277152d0fb9bca33d1d7e04b37bfe6416213097caf1ca3e8341ff7487f2377cc00becce1d5496fa3266fa2e537826e2297cb146638be4d9960a8be75b26447926e8034d70c9f9ea487dea031568df37334ebb6cc611130e2cbb2f14d90ba87925c09f8aeb61ef01c9af0f6b0a9511dade66bb4eb2cc95716e99755e2c1879191c6d0c67dfcdbb389c05944e43e926c20a2a93448f6ef423a63dd9652ebd08b206cdf96240e250f6df22f53203f7cdc92837ddfdb6de9ed3c1cb0a38908c19a45a381a917c834ec1e3eba2ec80931e964280b3339f406b6bb1bf878140c3aa803b72bcd75f3c0bb6feb16ec7a81c22699966d92fa79d33131fcd62603ca0676a52546c4d635cd89f76a7d57509c5d0dcfe052d9d4087770d35dd4bb953a196d9f50318a41683d1debeaee723f10fc220cb2d4c6636e957ee5771a82f7b7eb7cb8f093d596df1be24abd24c6a30841202457d95ea3e48225292095ab19c052d8f93144cbe3f36f1d46ff4243fd55701decd799dda358fe0fa58bf22da59e3af65e93f3b7303f1c225f6fd1e39b68ad9de826893024fd978f71dd2db4cb226a660926ff6206f8b04cba25e0da7532097cf1b0b777d71b8cc0b0cd729daea43fc489fa7dcadb43195c7a38fac32e02508149781e949c98ad1c8b79dc6cf39632e6d5a0552cac66e8e7cc61176c9456910d23172c0f646ba8a394d4025c67302c9cc71bbba8ba1fcde886854c8e9644584c572a3657fed47dab18eeee34ba859ed808b0a646c2fb83c05b21db3c0fec91016cd34d84ebe97173aff395781c7ff7343e57429b73bc7c7d0fe0af857509500a5843b341155b92a8e7881764c1bbe40fc4fabc037dfce5ecc8eebf21a828f5a80f3f3fc2b0a81eb75cdc91243ec02f427de5486a7c6554f5f3e3cb4e12b60076416388ece6910bac1fdbe4e50b02618d62954194e773dc52874fc55191272feb3d96303b04615bde0fb89c064e97c8dd8752b003af16dc92e92dfd2054d4eaead81d6e01eb085acc30b947b85c8b7a9416d3f88d5fd7125b2335e430cd36eb445ed5c16aaf381eb3a2ee5d00826179e978ebb3f39bcaaee1ba6d22ca4cd20ff38786f4e50e374aefb5a84eafdea645a1cbeac6aaa1ff2a029f1ce4193458b3390034d929573eda600c4882cf34bec3eb30ca622b77852f7d12e18b8d15cf1e109da0027baa951780d51a3c6f6a1d429fa49cfbfebc93779590bbd3bf80865c86db43454b9edb294f9fb5e302af6c47a49d839685f2781f00dba7cd66209f60483b1218d9dba88654aa39c3269c25fd6c7d0133530f4f8f266484c49917326f762ff9fab2e6b9174ed91f0b77097e3b3696e848f12b567a0436214b4f9d908819b90b81b8c919eb098dfbc90d4089a431a65387a61d8c302e808f6b9579db6128c5531eddd7085b99a9b937927afbb315baca204ca0720f78ca1b5e4594be67b2409cd78334b647c3fa3fcee0571517fb530282b5b9ef80918cf08ecef5283008bbe7f5c47a4ef587936cd3f1dd9607b1fb0031f3c8bee7f70c9da8d753ffd60278dbf48bdc24e3422187358128382b65cfc73b56bc6c154a3193a05cb7d0e19edba468d5079095405f76faed719d0d0049503226ac663825a7ad255d7c1556a3ff457cb5d521a2e964c5dabbc043cd14ae81b5324645db5bf30c1dd8933d22ad271e97690d683113ead0febd1bd6e9235d65ac10eeab7919e7158ff44cec24ad63492fc11471ff18a4efc88f117989d5ac3a217550089821a9bf694ae3fa2ce289d85aa17629f63dc2d953be0ec213469b727792ef7dfedfb5eea2464f7f5f3210427c3723919277f5af7c3b6a74b2000b4f2f1b4c9d6c05d33c9694424867a23a8e5a833772b39eb5537ed1108392575ee2355a679b50a75c4afb6ee064e150723e1d1b7481991ec7d6a5e9c69ad6f8e48731975514b98cf3b0a8925e97a084eaecb0e74a8e9ee86925331ef544408c5d0bcfe7c274365f4205a3f50aa92470fe8500ce3e8cca7ec3b9cb874c4d86997ce02e8176e833445ce4338c4e692ac9446888bcedcd3a8beb1c5d57abc50f987dbff91987bf866b1be5e033c46165dfbef4895065893789c425bbd2c13a35b4b24017d213a195e546110356f7ef81ddda8400dbf1402fb16209143891b1aa0164cddb0c12480d0f21b733ba26c1e27f6309cd7798e72f7e034acea76dc4a99df7123a07a057d423956f8913b193bfe3cd60fffd2678b7c14d7e5b54cd67d8b438f75e090662bb58e11b00d3b05a3ead869c6a113ad3b986c9f0b9bd4528eff32634da91ea1b00d64f8398ce4e162de344f98cf588bc6408fccc1c37b847cad235e5347ac449970146309edd0bc2cfcdf50b2845456062b37712904d8be8ce0279063041362a2cbb15c528652efc2bdccf3631d5419f11220fbc5fabc15ed1b11db3c8e14e5bf1b9781cd884a996bf850892528bcc0ce827fedb40d983f589eb452e73b17f9d7f354b6ad5665085533c91efe4ed606f63498dde3a06f1da601a1042b1d1c608a76ea7f78917b5f8de783ff131340550fc838075190bc037d944aa9ff619993d2527e123e4179bb2c3827e6e4acc7f17a84e27eb73360cb119cd652b518f94c38d9129db7e52c2f9468ff0486ec0380cedb9378e6d934e0c99ae52e2ef9fc6489e50ba170528c958dbaf0352cc2f7cef08352a3adcb4367d455e52bd83f349e8759826f24c3dc0ed6ac7f8404bb0af5da140de87f74c4c859f218c305eacaa78f8c9fdd14ede23083ea294659d942586eae0905370ceda9a9cb4d1666a0dbbd8c0ad79bf4a735432a5eff1b5d5a7610eb7f4cc624d9f843cd0263456b18ab714f10593c935d5bbedc6489a8d8a0339b4bafff0f49d9440359dc28dd8612de0948ffb847ed91154c4dcd848a32d58077774c3aad2ecf3c222d83421f91356a1cbc441dff3e141e0bc90f404340ea881e4ea123993cdfee22eae9cb3b6ffbcee9097bea444cf0b85a7080597aed33c68a84f7ad691f6484a0344bc7e745381356b4bfa537e2da0852d8508cd687cb8f094ec884ea408ac5e47ce0cd2926027244b01176e9fa1812481a014b713e109fcc9573682c7250ac0d8fabc8dd55ce5ef4326b39a87c8c32cd837b833a1aa36268a931f809ab1a2113dac0595bc99c0e1b01e43ab5e7d1de72497d6b91d36cfd491fbcaf752c18083ab16a907bd7dab9eb5d13d738c0da34cdd8bffb1d4c98414951b0991986d35829d2053279db0a74ba87ac748040df2e82777305f7e42fe148b8daae9ce1bfcba47f073ddeb31c6f8f9ac53ac7e5bb7f0baab3df90a3dd239ff06c6b7da13afae97bb504892e6963396d6c49eff81054f826310455a8ce43cb5e402b3289f2d4cfe8ac6f26e16db50d26cbf5555180c4f4922f3934b25a4499029dab44c1c2e7703b6ddc075c05c8bd823c08fd7619458aa7041e350f4937636ad5bf3699759978bb98d61465c19ce99ecc1cc37a3f239ece8f8442eef66aa9ab107beb59f2edc414106fe9c7f3dededc1157725dd4453b85a6c8ec499a44b3bc2cfa1ff43ba71e794877d366bd8d7821671157e3774a179885883f6fa07c0558637d60c51dbd8310e1b3dd0d1c86a5f38574eab3d172e591a8476e2f5d29b0652ddc51a82673a498b20142ccbe417db9d507180a83dcd0ebd4695ef001a159429a491071e1c19c07cf3f3dc5957237b4fc8724772c2a61985ec32ab73c1fe4ee07c76db0e034b843e13ae19b7299962d7c33cee8a12ba8e50c57328f787ef1cdca8f2939e06ece8ee421e46d750582149f0d9e2eebfbcea928ab4ccc35216d78ea8e997cac95b63df1a395152655414ddccb5ccadff7bfba36944705f2b1c8d984613c2baca1ec42c9549e9da30171849caf6a2e4ebb56378e2896a4e90cb6e2fec04ea05e31c871011ef44cb50b3be928e7c2405036243a6f4c265090c44d9b22c3586b9fc84b776f98aad6144a36a8525f971cb19859a7e5538575429fc0b49ccd6b2473db23469f5ea61c320c2929f572badf415f28b1cd70b45b00dcc2c224eb3699ae1c3d88837a0151eede1610e24e8c315a74d848957ba035fbdbc7ae7df0858fbd68cb3fd5b8a0c7cb89cbd7823a805875590711f86206ea6b2d6f7d0f3bae0b5bdedf3a24dd0fe673e92abf97e877d57f6cd0083926a581fe24d67cc63ec5bf76103a9d2bc98cc5754d47539e26054b74c0a0d837332be99c3eec2ba889bf407815c992ef1d8f2965c76733173a3d68a047fe0d3b31b1718259ffd52613a87f6d9cb901b3e2e88cbedb0c952b6c857e643315c735d178dc6a20f596e84325129f116df2d285fa72600ff00c8f44b775cad186d8b7fc1dce5f0ad9576acae3a85ffe6fcc5424e908030f931b4ca44c1d4cb6989cf8e8a818cade7ec9590f9714d15b1a4884d70c5251e14413d4a1cedff9f71f7e056bdcef47218490cdd19928a691f0decfb1cc7854c56173a863a6b88920942d4b73259ea0c73f8fa4e0571de0a419bfd86945124753379d9826b8bcab6cc183da2c3b895ec584be9adac15e011ed6cb9a0e736b02f8d432cbd89a99d067721191b80c2a003545bb25f81432d66569e3d0e6cfc279c4a978b989bf610c2fafc71257d64b5ce2ad5632cc16de62a7be79c5c9091ae43238c75d97ded29521431d5e2ca63bc480f29205eca539a58459063648015b213a84005553c73a9ed94485115daabefbe456e840e9bc7dd62d4f0bd49fc63d0b8ed3f2e34e2948c1e8261cc755d90a9e80c305d8f9d1475d0a1e2bbb1d44cf004bdd754268bd697ad54f10e1cdf088155c55b97578f591a734fd6a262f2436c7463a32765aaa74da9854d6debd44abd41430c79187a9d4c7150dd3d1d65450adff282c2c56577d19950988a789b864017e9d0d949116fe7a7dd0529eee318c0e2daec9aa89613ce9791c680ff8b7a34ba4e20d603f01f81c484f4030e1225b0264281e05b63894bce76a278c4d7ab92c1f304599b8775fc0c9be0a8eca72ae14280d539e9cce22aad667320b27b5c37b74381bb6703a3f55d6192f7f436a288a28b1e63502a0e6d461a7862079ec64af8bb50c44aa23878d6539db38e40d88240dc6aec75119357e22c09117e9cb828bd90898559635a5a92ea3e6fc2342200aded2de23a047b9d1e0c7da67c015b26cf772df6527485c27a1031820fc771fc4d6ba983e090ba1c0b84c1db6d8f46087f70d0c1e41c02c45e8a38fcc2943ada8b096a4aa8ee00512469aef426055207983898aaa6874a15558aef318d7b82194001c0ea80f43b924483bbf60fd7841e467d9a2632298dee2085bbb95af00593386ea94f8b8c98351708eea0d52bd83e197a1e6c5ac15699b39f8463ad5c2846594563e444bd5d60b2d46274054e0f04ded0ec9645faa84f7b072a948dfdb26f6937c5fe174bc85dfe833592483dd173b4bb3f8613c1b8f5f4e6565043612ee18b338d4709f3d528e43f4ba65cd0bf2ef4f2fecae6d88df4bd8de9ca0e76dcba71b71cfdfd7f8296825d6696d214b95eab0ca162eb0913516e249b1a83874e7d52532ff1a3180463cb94d8efb41262ba49c795ae659a8faa4592a4499dc55dbe18f446f7bcee152597d27727f23f697a3deb4ef0b701bf01f3a249fbe3b8f8714893dc217235531b2aa4aa73c520daf3ec07486346bff51ebf61a8b61e80e8b72b5f35f438abc3b1698913c5e7d1f0ccd5f1a1dbc2a3c8f000a6bf039927dcdf5586ed9d217a6392805eebe6237202abe30b424e6a985f429b851c44dca16740133cd175b1f5da5dfe008a05fac833fcb63d6a5008ed3d6d53f32032eb76f85b21c5f5f6596e9ae3b69f5b2930a1c14771227551f5d9cc748ceaaae703bdf8cfdb3fe7316e001cc5e0bde335546aa567504a23bb4710d47f446243c5bb5251a78330cd53ff64df170909156ef94f327ab24d70726b1ba291e2a1dd78c61a95e529e32bb7be88ec7bef36c9a4193f57f7a87bc0f8b9b17b63263d1628595436a851163065e1dc8cb625810a8229d22d1d1f0804f50f4134c764585d2a0def12520a1525cb7a8eac34c05cc705170980a6c69eaf08e9a2789ac7dcd673dbea677b36ddfee9634011d7a0597a335fba7fb19c9e961bedd88f9e96f7425b3ff6a31df24fe168561538959d1e7e8a33ea0cf42aa6d713b0d1c7b3f4e969bc3fee47561766fc504c72ad80ea8688fecdc4be7f6317bb2265a4d1edaf0e961a87317860fd5685901bc45770be458bc323f6aa689742e131ecc0061d25703738d1af8dd6a2560c702718f72ca83f6b6da134274d0d95b26f144f7e83ebf761ddf50b7588196e88a77ff9dc45437c739a496fa0fd9169c55154a8314a1a33c585ad75d65660802c8b0c36603b9b487d7241650de56471984f092a551d367a83be043247b350ea90893d065aa52a46b5f69136304820a062cce658b64cdf0c8c8b62dc9095c5994712557c215707523a54b325e05aab64ce7c0d21dc448fcb056bff7f673b7f49dd95e280fbedfb9cae65704d3e4b48d03bf7632bfb1e9131785e1e7c9ff310b85cc54701a7ef06b36a590e703b01752d5d0b5396984323954e1ed8c9efe73e36c05081f43b79cabc210b3f8411d296f5f30e0a2590b8b0e848ef34fe81adaa17908c5f9c238d786d980cd872dff3a2c5260d2b96b5960600f6cc244847e8f62b86f9999099d1a6583eeaf177be4100d9123398e591124a8308db34c225cce6448da1bcf109fd53b8eecac35f85c6967e53adefd7ba012e06c4bd48a9766b25c066d445302c5f0336fe6301e1c73077bf0f605a95ee1ef7b5b0f6aaf9a7779b96484bf19bd6cc475f5d10b3f475c02c466a966a1c064a0b629c99465844876c8acfa6b29f6f60ac6d4f9cd0ee8b3b0b61850460edf83b840387d2cee7eb7a8bed72c8b99265e547f57b7845fa8d60eac7b49db758558bb5e24cd836bcf0b5f817a774645e6299a80c7316a2517b4045eabb51ac35fab5fffcda76ed1aa79b4fb49ce33be8dc351ae734833cca8525786b422dd4d2cec59b0fe49fdbf944b4f1e4a606aa9a23aec84102370df81f5564c7878dd9cb0a4c8dce6ebfe86f72010af2fde32606ae100525ac6e3b6c7f987d8a34a02ec32826f09d91fd02599e561feaac1c348e65ae520a77ce03d8ff33980492115e15d44571e53dbd186c219bd2c0503c471e618a9603972552c3e323f083c2b36520ee830f83febc66d41cba678238f1e3fb9f5b73639bdba20a8e128c8de28da6b3daaae0bffc6a7a5da6259cdac66ebf2a4ce3c5f0e591a1796dc1473266c6c9439095bbdf33b4c2ec6ff386216b6b1531e0f2f2c66fc41de049188a8de5ea8dac9fb214fa41b2943780db444e1c38700a7b43c6543f444fc97ae7105e0301b32f8a9d0672bbe066183d730ca7b6dce15ca875f7cf1f345d01c9d9b10a79f1edf028ebe30251c1d1fbd2eef24ee2971baa75bb585c0df5cf3bb3b87f8fd2682d160dacbdf3efbd1719bce199e539be071ea7a31316b9cf4dddd717a17834150979e5a641aec901fc49833d7ac5211a181cd50145f8b555cc01b27dc5b8d7cf272d6a20249523fc1e06242be9dac35efef082d7217b5fa54808626e1d3b8b97e3506c01b90c6fbdda832241df6fc0d0e0240da9659d4695cd1c6b5e16f141334e2957a02e8dd090d5841ad90f3bccce2d594536fce5ace7db6c73f46e610e9d09336a10dfdaab3ea8686acec6d0617a276249e58bfa510fed39f1e748d1e83cbf020c6f01dd7a8316d3c9ab264baae4b78407ad0ef3b4d81fb0d921352478d17718212b046628a95b9d35cb81abe605bc76d2d1e3f7adac5962ae5eb1ab44fa7787cb2504c865c1855392d9bb7b35fa004e4e886a02abb18b4cf01d7f311b0d3213d01bfc8ccc4880ab661f50b0950fca1c0dd9cb8d2fc27973b6774e6c7a8f2c117fb1924ae2450a90000befd9eded5825af6fec44f3e415cae58695ed9f187c7308be52aafcef9b96de0b08c78167f3c4beb441497c7f8fd5c1f72070901a699e26a71b46a0a5b2f22951d19727ce56303fa12773856405bdc756b57f190747d033e18d97e9e0cd3677e0668f77cc8b3f67c43e84459c74ae38e900288c7e2eae2b03a7432038659aed6dd61a2912e94a9f0b08ad7b360052be679153ed3e0219d7af747e9d72d4d4f1c5a869232e74dc0d9b4997dba3a6d3c5eca2698e99e0243eee69faa703fed45f1e6938e363573456d72cfc4782d838fdabc6a73dae338e416778e7d17dbea9d61a5ac483803c2f12de68769d4ddc136cec15c97854c4c7379fd0dca8a748af4a065dd88fa421ce35f04c91d4ee04a651ea9dbfabde7970190ac6c50b843909fa46fbe0c0673daf2de7247e8af20c756c55036f6fc8f62f8334838ba290ed021f8a6055a7164567cc8b9b6aed18da6d6085e9e55a4c7a9c654779a91de80b5186ffec8f663e9a42bea1ca80a47ac6361e166c860b481b6779ec29a08cc7f99671df63d8c65f2c38fb51a9fff86410d25c31ad2a5697965631ca449b7f5707701fd4126f23c8929d0bb4cf7f0ddb00c18dc4567f22f402b1565a1c8b99b527fff544c244efc8c08f9e36bf86b6c61c65118c70b7a12ffa8514b3fb2eef3edd59d226f3242308ae61b59bdd858d36d8d18a71fb103f908e4b6b65f55692c86d91afbb0747d3cfdef576409d86b888464bdbe3524305f8def6706222ccb7d63cdc234dd88ebcdf9bc6f4cbbbc488b60f44706c89942754e7f6b4ef68b68048ba28e2bce1befaef5b732e0e44ddade8efb0a44bed4e1dcfc9a99ccf8dbad358086b309ef8345b7229e9f7600f60d79d1172a759327aaa15e32f18238c0dc59062267d17da837251d8942892a2b045ef3429a986ce4527942b8823f6a258bca389f0723621cf0447cc4d30306beca7ab6089d9e29d687c36f0800b434da309989821bcc14f2abf63969d57f74ee57680e9b1f285bdbdcfa8da2d9f700e5d5303f9c7749d8c9cf075a390e4825fcbec7e8d9b12324c8e072ae593242c5da3836b8bd3aad76c4abd4dcb85cc7c4396323fb4b305c8b00792b6284907d0f63bf99e1750ff82d67318f23222de8eff713a8cca205e0a0299696b40d0fd5420d72fdfb5674207a4f5e7f08e0ce822505867019a608a870f88487aca4ebbf73cdb575407941e33178b31a3d46df6f6f455680675254f4399c5acc05c1edccc56223abff81f8b60e9ddf5947ee4cb375574e3f41c9c7c90c4d7534e82560245b59a3815f8466840a966afd6d4090f04831a6ed168b72092dc23ed8ae8313133412c27e086a1186a6daf5e760a665827c3e441be808672dd9206d4e6fc9c662603d266045a3d2c2178a1f87c4d7b94d3287be3d51899bdf5300ee1c3985eb2de398dac7f870ba0e2aa96bdebe8b03b779b0d46f5702743ea0422e94e6b445934262066aeb0b7b1ce823509f89136bc6e139b0ff6f95a9a5b28e939f2e2625d6e4caeeb88c20f7519b9c634cc8c389ae6e5617307114e39263695eb620a3c513173ad5c9c32c6befd33bc82122676cb9f07c8429e1d0fa76e370903f91bf543bdb2c1943bb73d9a21be68dcf898c13c0483e7810f16d7683794e6946dae8152daf3577b22b45b4561c9e4bbb89e94a4ab0789c508cb04215394326b7d62cd61d09f3c84afb216b4dfa7b4ac77f6ac76073312c2a19e9dc249aff8cc34b7d0ded362f2574c92d020a47d1028d89e0890e50fc1c6bdd76daa6c400f4d75e201887509476f304c31b5ead2887a465b2bbe852679b3adf11c52937c06fc82fe1a3c63bf8e6a9f3f5141a865340cc315636e4adb7ae9d5d87654dab0e2bbf3b61c57f689ddf6617667a64729c674a5b2aea2e3eb1e907d02f4f3cab22224e7b369e108a18ac29ce3ee5c35514fcf1b37443c12ac361b84053c701d0bd46be17c32c133cfaee5ebd821e77012fb85cdf6b13df3bfb6fa4ea1d74719725cee400005357ad23718a541a0cf902d5571b2980692fb3bd1fd24bdf098ce1158c104e9fc85841582091cfd1784088421ae22052e5cb8028b9c679a2c98a5fe7ba1282e43613bb5513f358006ca5b3f8698cfc9f61fd96de75b2f6de9d3b5bfa0c5d6ce37bb971e7c96a3e9a9e39ed084a48c000308dca090b722266f04415495bf01678aeeb8f1256f9c2bc1713b420ffe2d8cd41e4d62a934ce003512b307c23738340a67d884997f3454ee1c5f9b97d5c97a43c0b41dd676a384a8ce1cec8a7e5ba81b193785a5d3c6b725de6896c7eccfe4b6f8e0fca5937c28921015d3368441b3df001413943c867e7315a7f73ac4442a8eec92732a8e338de75c1f0658ab2919c1dbe736757ec0c0117e80ef6b7cd7f103815cef1524c47a455aeb7326c13f3f8347a0bd80920b10a48a979f3b0357aeb9e877bb9b159e83f475fc1cce17fb0ac27f1e9a6902daaf0eb413a3ec401e2f45a798df4eda3ad9a2b431c9c9430b99f8e1c24b5b78567cea8acb1789491d40fc6f25ca33a5fb243fa221f4a650dcadb761169d6bd0419b9ee4e871943e84f609c3b5f17c1f877d9b70e53a7ff1a31669e73b21c0a1fd8de5368b15ad910a81edaf743ef68495feba0df84b523ba77b632f8702b0414e6a4f897e3e0d5e56b575d064a3ce429d501602df249193b200af63780785091eebfe161abc537d4536692013e98ee0590c2dfb399c19d6fc1c3daf5c4f6b93303e75c4af605b004c0f0ee278d866fd2fc28a8edd860cc0c8be957a7b9e13b6d92fae89d45ecc94beef5d19f0945a657f2ad82328b829699328ff66c184d45da84dc0be1e42a7a4130ddc175a1f9cd592a573047975425c7e80fb0ac02bc7fec6a2fb04b4fb2f3d6e574bd613c82a50bb9404a50b96dc820a6384aacfcba7e664accc944335e5e8fa09929dee307db63fd16da945153a9427a690fc66bb7b84fe83f948320ab3a7104661eeb071206ecc31ee494330c41f6a2b6fd1e1ed952ecda197d4cc2e90ef65cce9cecc4bb0257575bf458db7b65c7bb589f853e5b9cbd3ab6eb1a289e72e481669f983a6c7144a1259eea418b521280a299e39f2cf8464a1172ee5c6f471590992574b57cc07ab58bafc866ca21ddd231244a72d9218ee5de68994c81fdebc6dd3f62c088803f54564f61a8cff7e574b474a4da03b394acb89f1a03a97ad160e9bfd10c9e26e4faa7ee9c2d1f63d21d69e1a1ea8f5f2ea02f4c13399514fd4be091897d36821b5ac9865c1a1b8c7839690339ee521d568979aaba5783ede9294f05c1be3e2f42923f3b5fb2b63a4480a086ff7e7bc8d3681d2d431bdb88094133afc27caeef4be06f874052768592096d30b4588f8d6a6f2f61c369b9180ee8f5591b3491c03f60bc4ec7734c43ba0cd727c28579bf189f99aa58ba0816927b2b6d7beb22c38dba9e5ef8238f7d0339fd3b8783c5dc974f7e44a8e6266ea8d14d5dc75ccb4d37ce3cc312d35230b53a6e9bbe5891dfac7972a13f50b2d91f539a2722576d86b98419c9df68dfe6aaf255eaefd07193f9a2096d457f3bfd9c728f9e1783bfc3de37535befbe4e4104f5c2fff65a6b477f791dc8f7fe773d49f5197de8fd93a1c8910d05318cfa3c278a341696cb707b97dfa5454ff98dca7a379d16e9dfaf042938cef24c3e8c24d730b8d2d1326c416823136212d4144a66471278270a02f883109fed1802604c4118c10d7d3412eef17cd47b727036838be68811636e08091ea11a9402fc5868edbdd52b8187eefea7fdc480ecc4a9da2e1ad4d541247acc3ee1cb80c59524ea49d3c79b99d44847d882f6a2282a2088d3e22aa4ca3d333bbe1371152d368f62deeaa73efa65267404c1e0f359189dc2929c4d1ee06c3e191f0f8f21ab48d65b4cca3eca5e464f42411f3b76deec91024a80b949202d5823d93ef1e7d0ff518a77b0d668a8d194d54d2fab2d4551ac4d9c61edca8bd5e19e4aaf4e2bee1e68a8065e750537345f5bb5564d9be3adb7c7f380534bf69aa524e8dec5d6da203c72c78204f1a8614ae4e41349886503c0e0b493c649776f475752d7458271e5fedeeb42b28ac82252121f66746ca6cf1bb4b927ee532b014ec3cc7ea70f586852008b6044b3236ecce7606dfa7a45a87dcbe215b3fdae68038629eb67ebaf4dcd0e14306bd706a8615197f9e48c9c70d96060544d787023b0b47e2d70f778f1812eef4b254b5d906f8bfce5bdfb75bc706261fa10049cebbca56bc36d4b1e198e0c5b6f76a930a4808e0fd24b5e7779c9c5ae7592b2b9ec457bb94c5c0baa398ceb8ea1fc37724eb0196d53f228561eaed2ef82a00e74ed97c3af0f0a44909f8da995f8c185649f4f11453b11283b4f3891452c0c19203164c121e6e86623df35c255e6499e96e747d1315e840a9c8efc01ce3de5826b19540256526263ba0570fb0348b1291eb02683b669867bfda56ba9b46bb4c973d6eeeeab32c974a25bed457fc3363967ce3bd87ed4af974f977f24b11b69640e4c8e00b17ce61a2d571772ad4b032c00bd977930af1bc987d1bd4107845c40d562d5e8969981afa971b56a78745f5391bb10422c8856ec11756d6181eaff436adb632fe16556a89e0198d2093dc7564b700caf6325227ca46c32613a40c3d6da0d5da95068160e1ff9de159600617dd3f461fab4b58c73192031b332b64036ce01b7a7f4f2c816a64068da2c11ef0b1fc191e8e7dd34dae7daef03efd97fde41026203ff5b19462f0e2184ea99a09a100806ed4aaa44774e907e4269e24fa24dd7e3aba04c6c7d0bd23f24845bb60155680099d82cd9fd8e8f1381af06ea20e90358d098d84808222486b705539eafb8ad6a186c2875c8c8ffc2919e8b64b32bfe0494cc1017507dedf6a8ed3e7de6f03c2626095507486b6dcb76e96ca757e66de632c52c82ec9a7f3571502263d1bfae55d6d64d948c8d273c41bb237faf7083d5efcc2a1ded7074857e792de438c0d812e331754998c7cabe66151d67168736545d191ca7b023e185f18beb700ae4e0ac0645f4ac5b622d412046bbdcbb5b7a32677ffc08e7ecd31a3549f2cdcb59b97b146c65efa65103b5c0b8753440961fdaeffb518c26c875e8ad66c406b9166f9f2d74e103e0a77c5ba234275672144a4ee0a2be1f4cf8a94d7f9f6689543ef18b12765b97f1c76d02dbd5c9bfd9fef239c64536e2d01681bc1dca1e5055e93e286a4090bd8f23771205fbf9b02482591795cc0be840fae2a713506fade5e192829f313d3c6c0fed217e8b431b9770b22eb4c673f9005e77e9f02cd83930ffdcc6e0356e2c19d1282458d2b0e264e58b86f19fe9166c3bb97508f3ce7c819bf195b6f4f3cffcf201545f96881a7c6ba51831de8e62045f08466fb74e360abbcbb6a1e795a1ed0665dee1078aee4d374af6d2f639b91f0ed643354201b0f3197d58d6134fdd193594564c31aa545400c2dd4b484555a6c4e0d118da65611e70550f878eb2847b9806fbd80326d57676a2e51985c999048628712949f4c39965cd262da3cfefd8345ed605c27bececa44e1db8ae12d4aabfa4b18204efed3e2d0f83f2f0a92312188085ce3019db98ba2d4df72d058adb0e1d152798a71b5d941b5afcef04b80297258f4e3f773fff9664b0f136876633811e1256d5ef884f4c971859e7027df546beb003d2833c6b2a1f23ad80b633cd31e2031d3d3306a0cb67fe0b05b3ea02421c4deef96a6f911034d014c0028c3cd35e4332fbd29381d6526514b2a96a8a6ef3b967d23b16fb8d362884955a6d56a99d0c472b65eebf45888aeb03ff1d004fd99b9524a6390079d2b11fc88eac83bc48be8e64ad06f5c2e9070c7cd02b39101c2d3cf07848f5b8bae4085adb4620e703f810c85504f67d3bbdd414b10188bee457b7f13b479f9c066f27d2dd11dccccd0ad430ca7c2bf2bf52dd8c405a6e2fcb7024eec63699a0ff0192ff376b9afaca53cfdb5afbb9f62110447942a554e8ff4a844d9c98bda0286a7d54c86bcd62d641ef07ba9b2c158e9fe02d50925d46c03dcd12371e4eefa13b75e0981d59ee59dafff018bba288214140002a8a1b5c935d627233b1e72a22d80c892fe23fc2f91a8f4f104a0b970c0ff68ef0b5a6841fd31b72375d767e9805f27fd2419342b76b5b73c497b5d669a0dff536107fd5cf723e13a0897df95bc8db13ab3b2c854afb0ed8fd73ff31ec719c8bea97bec0b672f5115e18dd5fbc23015f0313c20e4b1a8981cdc39968ecd499d6c8e4dfa114dc081bab0ee0bcd56bda0030a1cc4256080120b0a8abe2b7be1566116795d0fdccfcf1226275cc9c1aa494c65901934aac13fce6e8b16c4c6faedce34897de5a17fe2af702268e2a8407db5801078be52ec7cf9e4e773fb89acfaaf5ab4afefbf297293acecd4a498d55e12a8830414ff45a95c38478c2d20d40c3ac1ee7ed3e80f72c85a6701a57673242d34692dcbae708a8eb057cb326b8adde7a7dfe867e873027d2ba226ff0878d5224f61dac26ae13d93a25adb0bdceaff24c308914d1c4975d0439ebc4998e0dcd9c8fb91c44e7cce21f40e8409e0ccdf3a85bde6afcf01358fa84990892a2dff5b9c3911493c288c7f436b575a1112ac56dbd0a186d0a9f4f51ece9b7996ff16b42e45f843cbce57cb4aa4634cc827a62337482b593f868556eb4031bf149849666a8e5809a0a7885ce8d5ffc61ff347a25471d9fb68c0805bb3de0ad0a6edac5e73011096c65192b55784158a27a225a6aa17253406d360f7aa5a90b93dadcfc9fac82f2a1caf9fc30b147de1fd53d12ac9a0ed221a5edea2407c8648cf08d792ec23ae11026068569da796fb7cd72b8be33c687f072b4c0364cd973d2d591c67c7217fffc1d5f1187bc7a8fd59c8448a7244f0a4660032f8b3fa3adc45d7390e57cb5f3e2db52257ee7085d28900a3bfd12cc930d17948b107f877772670d8e5208e86505e6110bc7dd4166b765eb89c7c86a44ff1a1f0419e1e395f24076cdc5c0aed681101df817de8a894e21ad03e96a5b0e3c45ad027054543be60d7a0a6744fa5ac6d1a34b28ce7da6274204569bfcab30ea453a2f99d7678668b9dbff385dd0b386bb7b163dda7afd39bd6b3838b4fa24eb5988b88be016737c2d6f4b19a7643c4f5cf7f4f7008c219c71ca590eb6e85229c2ba7ed9ef1dccaaa365e9badabd0ca7b1ac07c3a187000fbe39a18901d2368d0250035d9d8169e4b823329c619fd18dab5a7ab806452cf63a6dd155901e4645dcc3c463d41b9d62d902af4cf7dd621dea02588d73f184417a970c5e87583cf020919cd425f0c6c66a135e08de31b5268a5611dd22400aef517de0cb0e711ac0b22f9b770918e35e2cf754c904b2dc45f2b1bbbadefd36ddd17deb4b7be56f20ecc8c0ba120ee36168fd433d217fed578e5d9a84104c5aea37a513ca66d3b3b50a70ba285d92a7f1ee894210b680203a9912bb3c70ffbdfca26300c755776698f42413b089cbb220070b854cf18787c7094ca81526468a441e2560f6c2c8c212c075b51aad14821070e641d9dee88403e7c5845c578c322bbc7fde54301cab43318205090087ffecc901ec020fce86d083bb3a736e9333c630e050ba8ab8c6be5ba054d87b1f6676c34f8573aa589427438e8b896c2c44ab2a33cdf8c02fb618c0e1ba692a7fbfcf600b28d3419e8515717e97bf09214d9348ad81ba345f9ec32802cfb24371887cdf606c0f3254a65fbf6a41f7651f86c98c1989a525e724c17a323feef6c64b79c576c7475ddc6538ce3edfcd6ac82a9851458a51e9601c8786f31a3e781309148d2347e453ac3d0a01e388d9fde710bef74483318eaeee75b7a01476a75bba0c21ebfb71618b68bbda5ea6c76ababa79e985b0c5272f6c1e8b7cd64c4c7eafcaabd9d7fa80c356df1a24cdf6a364eac472ebe55719f11d23ecae7243491b0a130541e43d5855e0d308ba93968752385fb5549247bf3801f76f4d115dc7bbd2f2dd6bd5e3d4e68ed2f2926a4108136526da212bf9e51b2c73a9747e70df01e6113f46b2554dc310a4782107bc4596aa96ab59b4d9a0af0ad8c740d9373f1ad79b65c1a3b0e1b6c5dd18fa5449037c88462700274bc005e01f6c7b9209153c2ff6956c934bea65b53e299433e7a38ca9e09b0a9b50aaa96110a25fd1705bc3e9824f8e3870932512eed58a68965a0c0aa3099bddf6ebacc2f71061617f0f461bae952fe5e9eb5c9edd404653d59ea485cf46fafbf5b4a282ec069c90631b55ec4f8f383b5cdabf75ded7e4bc92752acfd2f2e40cdb72965e73560fa5316f6439e1791c89bebb810650f0f4598e56d1a3888c2e023a8c41e3c2e13a57b98b579259dfb012efa808f24033f5a45e26a07e3ebd2aedee300b525cf4a5f50042547c0ec15e396e056d77a50a7ad4e8bb4c45649ac4b1c098afe4d991623f747f9c01dc1c29752bccef5618c12b2c582bcb35beec39bfbdb2220e7cc86ede403e9d700fd8df15ff4ce823e829eaeb0e7398c32ffcff0f8bcdd2290e3b3304d459e67bcc51e3267b38b2403311fdf79f51ec41f73927ead9595c73e4ab779f3c3fa6a90ea8cfa3da4abc0d7b641deb52ddce8f4620282fb7346d9b8218a6aeabb05b0ec8e56f4e543d31a112fec804ed4909ee8b31f5af09c3d1f10e40b5a0bd74e44e0e86af4c80fbeab8bfa197e9913faa55201048b8fc82e45582c9ae311707657910eb2cb2fd1df9b5eda0842287a22678ef9c6d0b34258eb83cebdc693b718e2ad055ee8c27710a113d3df35c6f2d8e757cf0d6c2b987ccd1abc160ce53803813bc06e5b12a57472295b7fa9a9555989c909b68134244857513bbc93bb760b55efcde4e92b9f86eb361e4ca4a2fb4eb3504ac6ea17279821e8e945b2efd7340bcc24795df7164f2405eb753433de8ce1648df056afa629b80482e3b05c8125f0345b189fc1b7e7715faf735331dc51113f7b5392b738a50d6c45fd2077290cb58244e52e1a1126810e039cddc64815a4716bb6433bbf2fb784f0fb887964031cf851258adf8a317fcf52198ae73b59e5c5d70e30b421b7da96a79f5be177085d21d390f5ceb5ffd559a22c31257e6a03c0265c9304aa59a2da3599cd7c9c4b5e69416f93b310622d0f582908d5af725aa26a7e37aeaa90c1d110471ca32e4faf45c3fb2ab75fddb959954ac50e2dee875edb6790c68660a5c41d5a03926552b03867206ce3340426d95ce1126bd564e3391038ee6fbc1b6ab1ac9264c81033b267a232ecbba8d8b0de3655d22a5896bf3545ebe6f161979be66ed3a5d2ed3d497bb6bd3cb4bbf53ef1cc838d3897d37ab187e63a239e9190c6801de2534e6f48fdb49848927a47b90e0e3aa0dc639da1125d5d90fa7669bd8a4114b6738d9181df1faf4732ef79a85009782ff45fcd15b0496c4b02d88b4435a1bdec41e6313f900e490087235eb1ea2045a12ff9803d6709dbf97872c080751c1180bad87f87f72ecd72f74f3f04c60cca2fc615f8d2d5ccdebc423b942bf42682fc67ed295fb021085d5004eb85864c262abd7b664686f50623c93c4c1874132567e1eba40e630e27f6f581ddcad38c92d56a411ee075dcae35db80fa8a8d19c3ad702d2c0c802063931e5852d561f8e0080c047395289adf620b9791b52b6734d57250934ed326997f966ab2c4bb4d65ad7e88a2d0f483026a2929e6f61becb80bc89e1ddee6d2968ae28b9a8eb59c0508ba38a8bfbcd2267826bf90587bbdca090b7b041224693f6d0166b4c02834681b7bb1b58b8b146b005ca50b8231b07fea37a49ccb1da9ebfd6874cad262359b764097a4fa47f4981eb082ff3cf5e9e78dc17977a9e444b9f232107d07fbfe2ff2cc1a3e369c7e76a5ff0841dbff2ab1e69084a47474922049198389dcf591c0c8ff982e89479a40e4e918af9e92523a39d8cac4376298372c4429ce15604b48c2f222b071b4e16f85c9763c8b15425458ddaf940f02494bda77d0596ae076e5cceb149cddc84f7a5a95fc6cffd59f2a30b77f56917c5d93d3a911ff8552f4f4f7093304fb03d2d9e0c2d8ed5a5963614756c8c95e5ea0e29da8011c44d359571c22506558e746ef081a2c5dd30b751e01fea027df566fd5712468c4ca55599d521d538e1f3d1dd5095797306ee993fc4c3c784a34b73195fb0c0f615f1c4334016490ec2773aa8db9c0cd49e0bc60553296f919142799b3c2b2d2d2ce24891e0f643326b1dc71d7f44e794e61ae500445ec2fba5eea515fea20a8d1845424475e94c40a6c390c8dc05e9fc273d29d5398be4c52d741bee911bbe56f016776697d1012ba6bb4cf0f573c8f5510d31e7ad80aa02eccad95c07acbd11ac139a0007eba1daf0d88a008b614125a2df4083aae16c66e8da11da5b93680abbb59688b37902def63369a56c783b0cf64a6774235e8a71f243eb6a203fef08db2c53ca154867d83053f8254d9c3de11a511b643b0b60e0fc86b136000db158a0092f1bdb460c14619f13ce2ebaf20e67566ab19cfaf1e6c60646387e72bc58dcac7115ba86e25f586f722ded694465f18016021c8081b81322902bab4f3266883c09e606a9778c8b266cafca67f32a1155126b4b7e01b95e4cdd580eae64e23dbaa56d924267584b251daedf72c7a7464c710c88ed4b3ed6889ad3285fcf731a4bc033fbe4c45b9cf03ae396e5d5e6c82124864b6dc49557656946d324973f2048ef496c8028792b629cc7ee0d589f3d12dbe4e77076bc8135065e9a203f58e74a1e30d782995e7bfcffb052dd4ae26d1840fa109ab0166b4c6c52a7101179204aa3da238fa9dd64ae5c8072061df93573f9a24ed1282de21c81cf0baeab10387be4239527b5c16f2c3d94f06257839110d75b06d660b2d76e5ff3032d85fdfd9681b00b1a95abfa16393056cb4b2d94c19ecadec0667b87dc097be57c47039b0e509167278bd432236fe3e6d84ab3bb83b0c28b3caa761944a9c4bc172a029e5b110d4f29818be1ab2c3c1bd951beb6a1cb9ca6f4d7ada70a102ca502eadf6c61b6f3d7609f9da494cd29f489dadfd3e21b76d2dc56bfeb0db76dfded4dea92387275e4a5443ab5c78cddb50320fd999f81fb88b074b55f467495dd412c212d57ab77439e8e208f45b9d26e89ae09d0b91ebf1e994d7c0cafa6539a4379b02bab0131364b38e3f06bf49673cccec26a3a878eb919cc17ee125ef6a98856385fca6b19b7f403b86958ac1256a945f1547b175c76dd081e78d98f3be8f966e96b6a252ac5fcb4224f676b0e2b2a66a1423d00af3152ba500a16135a9739b89824ceec90de82270dc084a5ea041d07a0fe9787221ee64816943379a3f7373a4a97915fb6d2db242a7928607323f3b6639cf8a42e0367b7acd0a44b874f46c0836ff8456a0c923bed7e1cda3ca8fc74c4b6d755b0ddccb8cb0977d453e6ca64fd87fc48a081e79d28db8d8883e120847ecbbc6fcddcd6cb998a8c7d8d96b0fc201d17d507cb23f11f7ee0d05ae26ecd988c2a4ac850e6909a45edd086eb88e57f16effb585fe85f76b15c3308f796f3031973adbf2faee6312b880de7b5d9f723f2bf32e06a1960d68cce846308c4286833d305a6c7e02cb1fef824cfaca2980e30bce10a4ebca4ce525efc6fa7cce86ea89284243b2bb468b626f2ebadc7e25694498e1004490614c38ae03b1a29144974a67d1374e6dc05ec2a8e2306a67c5f0e469753d39854d903fc72ef66af489b485a49a9600464e0dce7d8251cddae59baa8570146a4bd1d37c921ee9643fa16ebf5eac1ac9179cdfef0cd532d325965b67258811117ab2fb1b9b91b6f1cba54b12ddff22f7bf3713dca424b0ea01e87d6c421fb000da18193108e76bbb82883532efffba3bdf6c993032b42bfa7e63f39de9b86f695baa047dd0278afe7e7aba54530ee934ee4b90544b1b346ce5585502c7838aa07e3202536fdc468c8b1ffb319b64290b94c64164aa850fe0afa513ffb42fa1561f08526ec571a6786ab30a463745ac45e811a5630e479dcdef169b423ebe62b59f78fc6817901864f6bd632fc057053f4e1d2b789e15f66f4505bf37e31adf9ecfe9c5566036aacad9209953ba3ba0232655a84f0da62b82969db6c872ec8d47d77c09729e6955b0f29a0a80dedbd3e393b6b750631443a79661f1a08ee3a3442bdec4c2175d5009eb20d7e5afafa8149fb6ea5f7c2cbcddc37e17bcb8af5c0da549fb64c12ee85f16670f517e9aa259219b67ace769ea7a00c3793af4bc42923bf2978aa5d8cc35d370fa55d07b1d14709628fdf6981396408fca1f2974b07629009c2fd04e400e2c9a84bc68cdc00456776c9bde1a816bc8ccd1d48c2915c7845f294239195f6d4467493ef0cb6106a29a1c519f43da4abbec66ea00851a02317473d7d8797badc0959493291dbd9e0e10c9c2efadd99367aa7e542cb8a65dfca24afbb1bcb922a8e7b2a99d35301bf73f34d5c70114bf353dbbc6fcf0f2d0e0c1c9a7b77fe270134a5be19a996f19afa8776a2699b3244c648a364b5c2b22989f0319fbe79d64a307d9ddda67592e7e7074bc38cf1bc1a5b439cfad8dce977a7c9fe4857696008cbbadc291012f2b0bb55c4bd233b014cc983f847cf29f0a671180efbb5a363ca96518b4c464e0162af875edef74943434c9d4743463bfd78c327a4dbe22e71c25f3670543642ea7d0770534b691eccd9ea75ada1f12c5990dddc5fdd8ef7beefcb275507bdab23584ce8bfaca1dd485695a29a75f3a7035febb5a913768ff1d2530071f2456abad554d1da39ece586000d81e1aa5899ffb63f52da6906c3a6e7d2bf54b8e2f44178d2ee3c9493e1087d210eb90777264dfd55042a2b0644aa6685d03e424e9b12903606a29faa3619e4e2975a7fa1c2acd6f2789db9c322d252bf2e70ebc74c14a633c8ce204355b1e02368d825b40a4a61fd64c5fd83adde404beb2185d1da4ee836031fc2d28ffc5ee05384796235aa0ac25c27868cb9df44fde0af06a00d526ea0cebaa41f6bc0c00b165b70ffa1a7ae31bab842f1ad783a6cdfb59b5f677be1e64bd26c70084fdd6c34cd2eba40244f24f41fd07aeabd3af28acef46b4a7b3fcd8d1e1b8194d3f67b94df8f58318f9a9bc3be6322fc68c24e47cb0054f24f3c9d75be92867a83aa518ef1fa7057211c4cdcb675efac8d9d7daf3d33d985ee29601406a0b4aea44963ef4b9c5aad5ad1e050f9fc731220f376702e533a698c95f81dbf64a44e52f846b179a875cc02197018c43d47d7ed18716951108e71798c278642325bb209e27178e143d2c5fc7e6f9e54663cba353ccff49ac3adbf3aa0eda74cec6a3e135f7d44bf507c1b10fdbafa208d047cf3057f72705574479fcbf19d9638dfdf2d70addce64e15b0b705a4d3053b41fea8c3183e9fa892b557d5f2bc0d2d21f60df7537ed92bd8c2f83941176fbd55834df63d10d42b14db9dc535383e92f9f8fa59860f2cea87224e3abd715ffb96bb91d78ab60c6ee8b52442e1be28dfc181c44dfbf6a37085e00822204829a11a871b59a611547a898fd9ae0e8e7e1e6ee5325f55712ea9ef0b665e7a309f83cb88bdd8023680a60c1122d414206d1be9b194275905dbea59adc4b5beeb0e129649aadccc0f40d05f78da1df457aaa76bc6279595646f1078ca1a9eee8649f1d0383209d8d545d823c2ac02111a76cd729a9c8f4f9af61bb1606dc6de4c6c84b69481904636cb4e0b6103b00f2f44081297fe173582e9ffca407a11f4926eedef7cdea57be30a9a659db9dd22033de4b1a7d94131e5f9b1868cbbf0678a116cd4b9fcf9d6333a42eceb10090df9f3f0fdd1c9f27e18c066d441a1c3ade2d6c1b16690cba2d5a05b95c5829daf07463dafa9f9c72aa1a2ec4ba66eedfd8d8a4af153273a6edd612cd0ff80dd39b8ac8cd09a5ad3dd0256853651fc962c51df410977ea06c4df7ebcb4368a02145d78b9de315c06d8a821f708eda0a05fd5b2b6d199ce3491afe298b5672db63882c3b1ee85374b48a57b234f07b932cdfca55ef66632df41cdac80b8b7a891feae533fce9b9f080da248018a884bad6128dc8e558f796e1be8dab7f65e5944a20d3489329ca5508d328d9d9d1affa60c2fe81e08bc006efac3733b6202be06e5475e713a647506086354e10f6c70a8b131e1675a55110172f35ff036db1407b930d6fd895fc37b734c55a3e5e8720ff8e116e21aec7744814b3cc8578537c34bce38d24291977750706e4af35ec65e522e85b7ab63a5e85f04684ecb4770f69acd788d04be24297731668ca052ba3719711609bed9768a98cda10a01139b0d4e97711478a7f4acdc50eee491267412f302ba4a19285736003934ebd72b21e48d1ca7688d5a06ffcc00c3bdcef96eedcce8c626355b1f1e524cf60fefc727917e6b58cf9ed39311e830384ad10ecd87e93058752bc284bed5d0e2e0c5d1a0ec3ee2f7f72d0ba404fdb88960d685f10e884b308ec5d93f52916fefe3b5871ba3d5a81462d389067f112460b21e5c86a80135c95e56a026b8e33c6deceffb0870f75c9d5f90a97c74a05fa7ffb28c0136f261415aebe06ddf99f0c2af4ce1b33605afa945a96b06b07bc6cd0bfac8e18768cfbfef1fa978304ea5f422ed68d676500d043174e3a8bb07849c604367649e4a97464fb8a3061b0177a7bee64ae523c028f5b6212455b248a41bae6aad936e966656e9acd13eb99165097a7ebb5baee4ba15169766fc3a5ab156ccb8b547e9d03f616a4ec0f6329d687f602cb67a33ce10a646468d0350d5379f4467ea0eab863db2a9a8acfdf96e0f6e452559a00848305b0e3a6c9cbbf6ae0263dbfe33e6d54e6e4df587a6c87d7b272515b09572e8a88ca061b7df1e5f56e20482991c0747a68804f422b33ca2630ebbcfacc6ca1a09c9e5a96c5ade0833b5ee4df857c314a9ec49b8fb2fc35b528bd4fe17a98d672a32cb3e0d20b8725d348c7e1f8792c2ca939c2ec44b8e6fcacf78b5a32e4534b31fb3fb9df43d64c2fe1dd0574ec7a4b0ea954ffea7b569def7df865fb69f8a28c13b5856e3a54792cd5ba32d19cecd62e034ceed9c54544a07c28725ad075af65f93c75a8462a30ae5aa609d1840856bb0f11a866d99785949218a2e5ec706ee1f8b173a71acfd97493d4a7406be04b3095e16a0838122d0cc8733eb6e785840af250453589d1082841dbb14650cc597da0cfe78a5d3db18134f0b4cedbc75467abc62960d01b2b8d3e9441ffa9361fe28ca9ec209021fd3f5e2bad4ed7d1d67ea711fa0e8256e65713af3290ddbe8588604fba14c69c06f6a8819dcb87bf1546470baa82accafc1977df6c0f25503023e53d4238608db2950574b9c8c2726d8f3a16236a2c78761fc4599d35768064e954de6ba25fc88f19460e390c0f3f1007a73e0831295d8ed48841d68ccd3f0657e9fdfe400260f80b4492782620ad512559141107a0ef1c14bfa67e432340a32e09430f0b71e2dcaac1d6c2677e8ab09249b8a1502848d50cd2ec90b5b5b6772897ca2186c7ae7abbe3b089e04fb0167b6f2cb3e02ced5d8594c7b120c432194532facf1149b46020ccf002f31b41a3dfcbc6bb0445d8dede0387895224d7412f7dc9446981b9312402f10a7e63e6103d75b3d79edc2e525d0d4a7565fdbd3a2dec339463dce2d43e5ef0f1f07286ddbcfbab12fe8b690e1738256ab945b7b1bc25490aaa5d4abc0e5e67ad452ca3d20fcb4f1ddc03796b727ddbe06c90f02cbc22029f84682409d405e0f3aa788b304f6f2a6f8d5e2a3bae8ea692544e1bca0260ef2b5cdac7c1338b51ed399ee8ecc46da0625c282bc339037869eeb5086065983480a577b4a0b1bcad08052a7542f8331169ed9d523693ed32ebe99ea6eb53793ef328d2c152050d73b6543c641b437909ac0377f75ad095134c336623aae89729ba2a3e32018cb270c68d24e6021809db6aeee0189278151edcf9f158b40e2402e61fc02456ff6355afd8280cb2346228042e3ed34b1f8642d8d45d786f00552b6ccc8ac1aed3899e4a675da8e126245a6f4c871f67b9430319fa38c6fb895e1844e0f8399185f00bbe534d8ef64cc11069b447c016cd43948cd7ec962c8da04208823339479cc27900979c837433eb411d56100a74501710733be8868c77fd507fcd10e6d2ddd6a24f1080ce610ae07b49b2b3886e3a48c1ed7ef93db51fd59abab788137be959d530d349073bc1d22f76590146b625868e0636be2810fafdfd6065d92bec6eb4992485f8d4673ef1ed95f2ae33e89a326abbd3e8ef6ef2050bb5f629cef6886a96ccaf74cfb1e726664580d1636c513e8cd83eb83ca28414aa46150d385b415f17b698a378fc0c8fae9c2134fba3a4c50efd52d6128295ed0a1fdf927f0af7978a75673ee958bbc4f9c2f7bb9c26e05a8aec90393888e05e898e847e6adc067ab76f696e426c34c72f3cba0afcb49da45f4a195eb27f5271a74bb98e4dc4d19cd1bfbd05f5bc7bdb864bc061a2d2ed9934e134e755d3b8cc17d5fb17549f9332c6594e2d770210722cebe65a040c59cacb1920b18f5f91f82a0addb43ef6721c5556d1931f8a63cfcfbcdbd0a69805f91736f1d01e10d5643ed9e61cd4794caec14c2fef8fe6eb460ecff965d162e132bace38aebb451a54b1e3c3128f370432197e14369f694bf56f5a04e43aba98c627f7d85398a4d2900e10745f54dc7cdbd0e5db9762630b06a6addbc0089b908098e1dd7036d56be62f9b1fa1e4112eed5cb28e0bc5b6804484cefe0a0c3e55ffdd6350031ca2a92be3feb030cd7a5128cce4ca85dfaf6f7a951b53dcbd8d61ad050ec9724d3cded3b25f8800e41308e4f853f74accc82266981975d711c646d722cdf986d85d6dbc8e8916e77c0fd8219c90c512064e792ccc9eee5a69ffaebec1a837c86afc3d285ed9dbc5c7f9ff0af7a79079493f9f232e8eee2245a7455e7e6edfbe64763c3276fe5010ed5d06947a1d3c7f8d59144b6ed4db749b2fc92828b33d273a1e00cc1d999ee2be485676f6ea814f37536e5a3dbbf69446aba119c26c5a58bb343a8345265c55d07c9d78ead5b15724af86d9e933f55cc88e9cc3d85dd0934cbea191dbd18f21e5760223366472c71332387b843178f8a4e5aa05be7025f976dd477261ae368fdbe8cc8290769d5011d59e3f31b32616766c4c3d66e820a3157acaa5bbc8ecbf6810a28640fff0db6229105659389e2b82aee8d3441dd2d50796b2766d3e7b717bc3491d73b06df34180311261bf37c456b6887135c8da2123c61a46b836980bb1e306d72d5b171fe8bb9b6460d0e867f4b92289e833b6092ef273e0ec9292f9731f7819c0144d4ae6fe5a19f3ab00da2777266f03bb6154401445a1ad682e95be137a6ea13a987da1a6108438d83796cc92c14430569c288faf2b46b4b2e3fbcd33a1424d6a24342fe42f1ffd9660dfcc0a4df48548baf312732de75eaf8e90e442daa44c11bae0ed367dad99ad3a4a8874b7c1828ea84052a77b9f436dc31c1a89e5cfc2ddb2413f5929f7cf168bec6714521b7dad9abeef92096b017e88ef241ed4cf6468a85f631115cf9bfdccfb3be173a4242e61822e2f8703b8dc2a83399e0a136a81d7d1e46e2a997be193f68ec2531693b20296934994e61f0208d746c829863b80ab8c80503048491cc9dae02094911fa1f27617569325fde79a428c0c5fb71aaafebea65836c951d27555be8966b98e2cd3d3bcdf7c0ffc75f21dd0fd7588adb17f288f6b98b308307895e9ec3c06e13f86324d3532a298b5b873a8379047f2bf05997bc12a00d2c28f7a8054bf1b1d961a7f4f90b9a1095cc7597e509e5bb1bfad3018057363b343bbf0269f4e56214df761d967fb21bed43b0bffdee94dc26a907e3d7f89aa32b8156893055d50e7863f3e689fc44fac892b89ffd12115cda79dfe9e3b4cbd336dc99b9174b3b90892447a11ce28948f7d53e86afe698746b1580f4c1a11420f3d8f5f331a64634017e6db9812b8d6a4be560cb5314da88f394709d260ff15ef5ca512a4bbc1cb38befb4a5fde1c5bb498cd83e0b5d7d180e4c8ad1378a795d26452626b0f6fc1b50d5eabf9bebd7a96553d70ee600126acccedecc4076931130a674c296697cbba89c4d9f485d65cb361bc71680f3e1d9a31e587a75f01b3b781c6fc97a77ca29e6cfce2baf0e9d013facd5ebe6fa4880fa51cc5e2f9e88ea8dcc7a86860a9aaab53fde5d195d1a167a2d442d538f675ef4098a574e6de46523ee10ac280b14afee395264a5e820bbf1bbab158489f52a8203c2dd7c12f24d7580acac6c9984b0d45a4ab9f4bc8a210a26ed8339ab9757f2cdbdaa36381722005a021e58b2af6297658c17050411a520bb1d61d641b142ed6d758eba978d1c40ca2d7b058848af7a12de45fb1cf233c8762e20a0b1ab0db0e7117207cccc73e047d70404359340b73fd767bb87acf89cfc2784e3b2995955786605695c976e0dbed74109547179af70bd4c49fed00feb5858bcfdd47aa92822a61cc1a7d12c5448205deeec2b94c73a82f3493c614a4ee4efe4b15a97910a18bdf58a8782e85e51ca146675a25cd394ae243e2a620f4d52ee451d1169895764594df2af6b0e132372760c3dd869bdfd54e558eef930694a5a29c513518c0a7ccd2164e6d5403750e28ca01fe16be70fd9c65efcc9ae0fe952c79650ecf9aa7b86a9813ffb3f7938cd731e48e2b6bec570349b1239055d776840a7c80b8b20030cac4359eae65f1e3ece2875896852e63e6bf0272859a80e4019dfe0a1445126a62355ce955a88a02940cf8d9bc6e6325e0ba16b60886cb250e2221c6a66d2d07765798dcc17cbe64a350bb8b4f859a1604cd6d5b8e2ae69914f77ea6e024524fa8c9232f9891dc4473b0bd6bb028a568d4bd82b4259b0684c08b4939f97a983958bbc1e8f57ec6145338825ad99f3057be321fb8679481df57c0051332b37222b7c90271340ab1ccf8668d8ff62357f84669442147e3f42fa8f3dc4f10ac2ecef7cd56d657d3379671fe416c7cbfd7e4af3b5645a56e470f480063306839d8924717141c53a07a1706c567030aad002e4f35bfdecf69d41734affe15f63e2d2333113c3307002dddae233d6ea7514e838a4df98730481aeadae7d6d648f59c12e3299bfc04670c076f88ddc45e4fba7856db90c35308b13b3fc4cc309a8ee115f0d2b4bb2928de4f2938ad72e1421340db8d21b6a93664c0c36a8ef8b5f0fdb20c92921c520947f876c0a0cab24bbee74913952ea5e923c0f7afdc54ad9dbeef60caf27c53c38c45343a2b68e690924568aba4f0b084727461bf7a5f171b69d4f7c5210f6d2bbc9b7a964a740aceb3259f2977fa32da3243eb5b22966d1a8d0dccbbd502739e99ba974c5ed56689a39e93336eeac1ed7694053eb56c4d1d41ffbc8ad75daa14b781c98548a4741160b996f293299bce1add6ab6b342e56b24df39091800c8a1e40848bc3a640aaf349aa7703ef00235d6b5ad319c98e8aa1a69c3d729c210d920e09bc3aa07554c22b2853bcddc454546e119135d33af2c31618cabd0da44c345587bd3c388a50de79d6204db8fc2b6788f3d5c30950cbd2e1f5e0fde55e70dd6042c856487299b74cc9260768d7da0baee80390c2ba045ff899c6fd0adc16058723666a3e344486b26548db78889a89bd46065cc1583203caefb655c0e3dc7bc3665b6d1af20ae26707fad61a934304786cc765d117693bd921801acf2228a7407289f3d732f29713f8545d80173229dfc4e5b1d49469bdfa99db9e56a72068515f2fe421c4acf18e885f7b924b0ff5cede5d428339f0edd96cfc845e703ee513afdfc5e78e9b69ef7953dea5f89a8264535dc8698771e306a1647abd0d3b5bf0ee0219c8364522d753dbf30af3020738572b9c5aa0fea2d44509379fb6f97e1693bd92d0172169f6071c7707eaecbdf5f10ba5606dda90fd36fe06a629e321fc8ffab4552a9aadfcaba83a7426b1b9e9ae633bdf77b651fbdc0c7deae26426a773835a33b07b5e6e3b41264c0024eb2b2eaff17c85a1cf2c3b673a0528aef374e854c5bf66c3c171c5b221f6ca17c0f00049638db6992181af4fc63910a2dedb3211d9a1c2ca7444a7ba30ce7797585a416160fcdd777024ab65cf6dc76d23e6391fb5cb6436f1ba3946622a6a80d0f3722e7b67e1a3db97a08d7781687683ef1b01aca52a152f59b052c5c6de14361dd8e00736428c906b14e9c678fba965cac4e2067f6ec49149f52543e9f03eadf20f01f5bdd298a904bf6b5a490ba9583b7907a0e3dfae1281a9e259b2f299536ed561aac6ef161cfcda3b0c6e8771e203b13e709a06dfd00012863084184e7654a2ccd6f7269b250778a835ce936ddcd6da001778a0487cfd83d3b4b3ca8a97208f92863dcba5ade82a166f8f9cd38dac8e2f797d752c54665153e0675cfce796fdea1e314a3cf3c0590b933325936208ef82791287b13a9c1325b10163dfebcd43a537d2c503c7cf0046bb45888ff923119f57bb60d87bb7924c624dca9a6a007ad56e140716f4bac207d9a86a3637001783d3f427e04d81895acf0a6e5af287e03c87f6cc564a3f6f62058d746b5173c7a74c41e7bf4ca3e909db504e7e0297ed95273ea737930a9d374b1c8848721132e6214a145774c272f4978cb8313412a074008bd662763a9728292e4de947782d2fa07416a048789a3b0ba69307262f9cb7cb35a98a7aaab28fcb813075fb3c28e90d499bf9b4f6f59d639526842fb05e471da8964331b1ecd248ae78c17270e8c89514207b3dfc5d65a98efe3c7d74418b0c15de64e32bdbdfc588591fbba3e9cd7fdee3546e568739e1cf4fc2f79d07f733bb0f32d26535f81b9e53782500c29e4b323d32086f9fe7076ead66014c1916b0b7ed115d58cd1928f414c4e935790134db022f7cb75f8996fd9a937e1853ac90e997cbda500902a8f281ea622a2770707f95471f0a7c34c8ab706652ba5b7c9f8facd1d82ecb42e29649cbcb364b4621527715f0e30914d0b63cbdd2e0da7b54b2ea3eb48efa51888e7a00d3d32b6462f110cdfcc252e1f37285165a82a1916245d2c2320480e76baa28188cd2c80574a1259e57f06843683e94fb76bc6c1765e96bb642679aa634b12b1c8b30fb282d6f4d0410643dbf2d298573b918e59a244244208f67258ae8611873b7d61f8c3c8df5b66db9a389aee92fe2f90d00025e638aad0b8eb119e25524ca2b218e022e3f59d3ec9acaa6e0354cbc343d054fe8fbca1506f4c2ab2320d350eec61ef78fcffa2c0769300023fc509cdd200d74733e8dd1566866aff3bd6ccba49b6bd8546a9d88f7ef948d61f72c4b54bbb07e1886e920ced2b17e902877579f8d8e863cc6df0686ed81688e8ff077cfaa43c41b06eabed0e92630119441a291c52df9fbeca379df4ac8966db2ce14a9c17bd3ea2b729120b098478aa90f5906b141d309623996228bbe490fea2dd3bf0f2b5ad88212725f5689011093b0fd5c8db3febfa88b8ba5d67cb500aa01ad718f6ecd2f1ba51e0316a731b9f36a9428aa90a9380da5fa0054aca7b559bba20d98cd153892cf93154b60211fcb95825afc4a5e3aa77af9915ef57b5c4d83f28405bbe58857d244f847fd3ac3417f352798f8e541dbd0107b298a2a214a9467754b4dff18d879fc8620741200a85b58860c71ee67f589c7949cb32236f6a7b8ae47031ad2aab245b3bf772c03d9deb6bed7aa808dd6f46b6215bf4fb8c4ab966f7c39598ca310cd0e4c2282b2131782e91be346c2b1cf3aa511f015a63ebeef2104c5752b46061c9c8f3a670d0f4af64b4f96718eae65c3bf056d8e65f8cf78779dc2e36972a96e46320f614afc8b684740e99882167f12387f50fe5e3f659dcb7d2987a2e059968d7a4957292ba7862e865f235b3b06669a091f18bb9faf1813d150ee685c36c354addb028f94ae5a38a947b7dda52c10837805eeac1bda0439ce79bf126a458a3f7f77f39cc58f2838ba3862c0c1455d8564ac593bf7f4c2cfcda2ce0b76dbf21c322e69deff36757d16545018023f2cb3f55fd6c16be14d5e3998efcebe7728b2a35f645d388259c5ebb71a583284316f6864103a589451ba6477c801aead688190a7d23063f02de1fdb61ab2a92fe4313de1b1964bf06772a4be424e71fc39ecb0d21d3f968940742b3c0c398f36880f59567fccbeb6d2c5b5c30b6a0cc48c5efd24f7866009b509320bec00efcb0a4bfcf34b1a34d060866db5a8d37a9d7f0bf0fe3e01bfc98be4660a4c20b40feb3e8ed22256f435eb70b62c68a316bbd770c5dff3a9ff7543da36f1ae04d01eccd9d4b42a53943d82a2ce03280946ff6eb3cae247f0bfbc4be83bcf8e40a31adb111f7df7f477f298025450c26aea88dfd57de541847b81f2f2239f778755b8bc8e7c5a455d07d8483218be04b48b10d825dc5d748dc1a7f9aef84e63aace5ae54a42e4f930447c5f43357d1b4e78cad2c8a21ac5f55bba85af3fd17ada5ef04eb4d7140d1230b7850c57b16cac7d624b927dbefda3c23e1108b533a5cfe5fa06c94d311c5f9baada2cbdc5601ef698f703c07a0c0af70c3795d1c879af2cdcfb71960be577eab0f6db22b923a36c0bd3e93fdfc59aeb6c1ed778b9f5c94e672186669d9101d38beade37d8622e6a346bb4fb72a59e6ea582b74cd8f42a919309760066c533182a92d221368c6bf141cba5ba04d7db240cc823a40653569c9454e70cd542ff40a848c054aab679492ae6416417fc7028f57989f782946e9be3efad63a63f34b0eff4646c136cb5a1eaf06524ff33efe9a855ffc456b46bbb55f20b080397dec05b13aa138430f09bbc1355109d49eb3080001927177991ea5a752178097fcacc6ed378bf9d118f6b8bf0d09e82bd56ea5110be57db7b50ffc4d4330efbf9238a6854de4f7317cc35acb65efe8d87656f43c0a488b0d81a37fc7e723acf24c0a7229fd9d252715294fd77f2756e72d67d083541092298ce9d86241dbee484570139b0f27f25ea995649457ef695e478de0db3e1a7b3f0855e0ef696feffff2f1f52810264da3412e520354ddd908035cc4abdeb76865a31cfceb5e28cdf52919f6295fd7b90af86a0c64e053010dea9d088c21dc4725e7b74428340bfa1159f8db90a1b2c6e0000959c5f3b9654f61cd8560f9cc625b9cdf31b9e457f70867b607c65b32d742dcf5bcaf9e838f11f454313dd45153779cfd85ab2b2694bc0ee56fef69188cb88c0a7b17ff35ca90345c632bc7f6412a5d4c5788e3aa55b0e9041a370b8beb489082b8be7fa2102bd65d1cc6f8d5dc4dd3fa02432a60dbe32be6a8261a39ee30d26669b7745c5ba297bb1bbfa3127d34b30b12fea8c98aa3d8e6b0dafd82af5ab3696d60a8e079d3936072ce437e784ff40c1bb3153632e854ef0cb4029a63192061a9597cb53dc17b567c3cfde20f1060805fdbb6180e5942dab6cc9dee2fed43848c4b2589ca42faee4022f54d77244ec98c487f91a09d9defc706e655fb026ff64cbc65ce6c2ef88699e8070526c1f878da508b3f75b7479f8d396e12ccdedf6491162d8a783983eb138e2cc5defce7e09ee81428dcee6200e9a6efbdd5f069854135a07bc98064cbc6e1eb10f3823464a44f406b785cde22e7006962dab34f20160637028570c55e9dfc28384ed83824605027298c8bc0a7bea57d7c596d20094d93bbab09a4daf35fa19f1d7d0f8f2052723b558f818d49376645df4e36941e2ab2271a0cd4563a710437ccfd8d0ff365b3c8ef9ae1e30c7dcb9f4eeb3f63a0c89efc8ad2262014541f4b5d0c9dd09d7ba6267ad78c306099ddddedb65769f9d2a5f5652845841b756fee290a28d510eebb2765d3fb7b55cc9240f6858e51bf084acedcdd8fb3a6e23cf3860b1b3b2422a720511380dde8e56d8bc41119b92ab765ea7f45e98e938b2af712497b22fe0c77f44a1d4805ea5e58d0f3fb5a11f0fae2d30b7be79ce20c640f0bc35402f065887177860be467c0c7cac59a011047c32ef2fddb5adfd67f6941469342bbc472138090612f90913b618e96d5f313ef7bee418c46a3eec48c1440db091d1efa320e2a8dbc9abe30ba4997d45695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e199d355cdcb33428c4d4f76d8f2d93c7ad6358d3bf1c9e10162dd890d6ebf13880add6b43067b443f8b3050a1b8a3b32955c907b46f4b52b2600051a4e8c977c6d2cc48f8fc73169df5bdd980bee258deffb2fb8ecd6693186d400baf128e60256188b6eb783240232d5c524ce56a801ba7d6c43de979f2c147e8d9faf67b187c4d787f3d6814569556cc879f6004390252914a92248672824bdac1579c67892f24d88863722a774e92f996e63bcd8d4be2bfe29ab7440d1016a37f26aef0f1151f6f7d6d6b4e5caa79805e177ab2558d7157e394a56feb4c35ee783f05e74e0882b5b054e621c8d80c268b751e0e935f84540a38a6e337cb88b4333d315b92459b85604315c9eb55fe177e3eff713ddc561f0b824e0a7dc21bfb37bfaf42647e2365bacf7ebaf8a73d337e163b57549d73537f7c5e7cd3cb16c32bf2d3a76ca9d16f85390e239468cc46625034b8a17ee577280b87c995a3fb2475b5a2e77d7b3c183b7ce4f053abcb96d4c18549f4f0b34b3279e62a460540523c2577a78bdbee96d4eabf5a20d7d1c860ec37529b6fee9130c6d261845a633bb5e5e54c8f4c5f5d138fad613a04b1c424b66015c55cbf227b6339adca97127eaf2bd81fdc835f3db730be42c2d14b738ca0e577863dfc9304ee0b8317dbb17bcfe4be4f28b41781a52c5d4f258a25af1fdf3b1aaadf4588f663762417bad5b5ff6d60e3281990a625ffcea68098c83c0143bad5267b58c618deb67834a666241e7d16ba258f1f669504096a34328c9c9cea4291731d9f1fce99cd0947e47d766912553f80a238d1c78305ae21dd2f8eb588c6eeebecac0e8a1c7fd696adc53c53db51d291aa989b64696a5934ebf044a4a0fdb0cce7dc2868fd42b198f3853955a6f078b73a77c26360d4132acd0315920722ceecffd1113af91a98b25ced9f16ac9ae81e59aea71b3aad8a70dcb0bb2c902e4c81afeef99edad2b149d2e9377f487d73171e25d4ed853b633f91ad35e5d85cdf8e0b6800919043c1cf4f67f9a15eb77b0e3118ba1cba206188a6ec3a21eaee922a90df882b15d31e2dcb94311be6e60db4aea17ab775d0e4f633f9f3ea41877c38af1809d338f4974f66a17034d18ccdd3f22471d6d27f9208e57bb9b8d10c8be29adb8cee5f98efac3bfe8f1c3c61afb4fc6393777223f71ecedaf4cbf420e97ede115ad13ee6a1192dc2d06a6f78f50d0907e351196fe820729d7ecaa7bd8ed50fb64c4125880be0ce8db85da7d97f68af33d79d599588954a0b1cf91f618d9ab4e390b2f5b5f2d9e9e17992b547b41f0704f61b424db994f59db8aae825942d50abcb79b0deb44897218061a2c2a8e0879611e7236547c81785fe0e57c1bfc9b009f31d432847243c6b828aadff579ffa5ad8f86e9875e2086bfa8c9431484fb00439a57cef8226145870db99fd08ba6bb9425ee0f59b7b8a76a54364484c6de2bc95ad81ec8b236f7339132dd78f020ac2091dd914466dd5f47c24e36a7d60d14b8a36bb67181e91533ce6105c8f0dff7f8143fc57a132bd5dd307c30ef906e7438e4478a8cd24a807c761567a7e9e4c81df2c073ca96b3621253d1c89230fe4b89ddfb66427259959f439368cda8805c512292b3da83e92814f79f777e4325b252cd0b70867522148de086d2e460b8d568fc68e3070f36ba9d915b96697f7d4ad5dd8a8fc67e1d8b998f9b914a1e58cab0cb69beee8f05617b200e2fce06723390e70076a825016c51572d6711c2c1a7511f16b685e6b35d4ec2c4f4491dcd2f1d0545c33e9ed87e5c74bc1a9b6490cea8fe327118f2a9b2b6333b948685bdb98f0b823b9bfefcc15e16f93aa6f09f2c5fd9ffbec89d4dd140d354d869218eea0239dd986f9edcd262ab914851a07a7a3952f316a0515feac364be4af1a88cc41a9178794d07984da887d831ea497b6905c8cb6ff82149466971f10b229d81678a2d63c4bb201e97c4b62f575408be233716ad6e98452708c57eb17b167a117f29779f6133a3985ab5062cd61c7f608d9befc048dd26dc49ceea4945d5ccc39403a66afad8dd047bdd1eda97dc3fb7d4dde763a7bbb5747d24b3d6f3063fb7e7200516efe8be63695973284a08de78e48c931ae4d934d1dda841a43411ebf1a4ff1ff0d3a37d16fb69d3507819a51802bcb19f3030967c02cf920d8bb1f5976f3bdd07c97ec9934ad5955e7b6a513e7c446ef2dc0cf1865852f69115e6dc08f3b05e1b91bb1ee3c9aa5d2254fef28bd5e93a4bc49bede96e388dd5c5eda67d5712de2bb8fa8ba0d14bf2572a079521ece7d82d11a5a03ffb05a1d400089602ed4914c7235e2173ab5af5b59546a04dc5741bb2b579684974040e39fd685e19814ddf5067a2befe825b9b17d53606ffc922ab853e4315712f840930e67230fd664e24bc93ac6dbe980ced53e823bcd879e963b4148af9adb1caa8c771eb56d31607dba1ff9579ead15eb2da130c87972efb3abde42bbf359897b5085b9a74008b7fb80eb3798943503ccd8d50c761e168825299c28df6527d1063d1afdf5016ac6d5854a977172a589981f584f31bdf69eb6e90000ff98dd71eab5c67f153cbbefee91e33fc892dfa8f94a99cf09f4962997684aae4d007ff7d3c7f357816f2343d6b460bcdaec21644246ee6813fbbed9fc4b3fd07723a914d6c2ed441821d4ab061a04a2c918475da9473872a60e166c7a649b9d6b5bde8bcd3b919bebbee63d8605fb8a97416d84e2657bd61127e5f64c63c554481c726cc5dcff339b0edb3bb75c6c5c2195d71209207b56ad1d10f8c2b6ffbdbff4de11c57ca201e2ecb869c04f773aa69fbc3f4f5b3b29b383b153e37d6023d7e1de6efb7cf28207fd2df5ef642d6984238a8ad702554acea384b13502bb86ed757ea47890d0f283eb7fde958cbc8ffa3a8ca21db17d3f2b9fdf18195db7547cc287d4c1fa19babb9959ebd8abf95e94ba5d45c2f0aa2f94b2bf335db010110f77fe276e8417511babdc61499b84375da33a8ad6997cf861947ca85aa1b12bcfc91fbdf5931dbe2496bd1702a2bbe25fe1468bf574594d5d10ef02cc29111e48cfecf27fddd90196da247c4c1d6f5a6cee476926b6b35a2a93cc3182de35b81a36b17c50031b900575a0164ce19c77d1329b3e73d7e48fcf79d47c49da5a3f0cdcfb7614234b1cb3a9ecb047ea7e1a8b0282b5a313715593900bace431936c0a096f28de150b94d0911dc3df5c8e15370c72d909a258de700abf0bb728efdf58c23b08094f0aa7ddbb182c69ec2da4b516e0c1be59670089b461d5fd5538148bc51a2e1f606709ac325cb97037f57ac7a460243c06c3a0054e0a2e4bc4e001c8e5e0ea8ac4e435260c2f11155f2bea33885ad1270f3bdfa4b655306b1d0808652b63186b851442bd496fbddefca6bbf4fa00cff65a9d1b3f2aebf761c66e05e3131105aac38987a224f561002903f209b4ca4974267c46554cdb61e7c84da842da74a7eced622fa24026e300e518964a94820a8fc82aa7d86f07467fbd41711521498f217e583f5b10a2f48484f3358ef7687ada5dcf3b23ba24af3026a22412538121d15e2169992315d356add041924aa96f9e332cf467b8d03d0c2c7ab381e9c2134a855cccd5fd3c0c7d126cbbc3ba1651506c983b9669829e971faad64af9060bf077e6f6a4282ce53c1428f78582fbe65abba74b46ae1700f63865202012e1be3660cf86b16cc70870ed5a3afab5314e516b1b596996e0831a89e606185eab183710a96ec07425701683ef6a1ecce00c1e4cc1c1a9925d7844ce00c10d7385f0b5af7f13836f80663e3359ca49231053be046bc45b06977dc1467e923c17cb37af63aa00b5d2bd76deb71518f21418a430b633de9119c686f5178c12a6e4b591a5b84c8f13239e661852429abc2837d039b68fd4b5d6266806a0227941b67c16cb70e3ccf8150e21229f027b76e0c9a3606974ed18842362e98511585e4a66f6a948fa6d9e8a835a16681bc60c6f11eece4a208f680fbb71b803c447e47574aaeb197e7cce826e3d4e92d1a81f8053b85053c8017607aaaa5d5f9aee03b93887f5c54f036d6b7eb61ff215e6250eda5bb7a16f8264fe1f693cb86c52d1bf1a68557cba1c0176bbaff614b8e8cc39e71f04b8085d55a337ec56a41d497d70aade25ffd1230700df485db2ebcaf9148e6f597a6797c2d80e7284fcd4c7346720b3b88af8acd115d096ec2a571f36f63f2a8acd17f660787849595bf75a28909f2bbdb4b45a22a3b05f7c2ad86944e73b2fe5355a2b440c4a82b77eb3e0e5216fb04c4e509bc4f5ac0742cca4824b2704794df4ae0592294e45fc41dcd079c003cedf99086d14160ef1131285cde3340f23616a64a74a5bbcedfdeb2923c68b56e08f586e043053a15374f6059d4750440720a220b044f9f3ad42cb6b25af4fb036fb040554b7486da3023e0f33e2a9499335d11518be40572a30c539b3c94bb7792a5dd0afaddf9e254b1d2534ca96e2d85e193ae49ab33c557d67f681912662d98896a01587a0eadc43c8d13df168bd4785967cb083f16c78c88b9fd55ed0ca3fbe0bcdb072cf635826fc8a66a395d845358392dd8e5a8d82f0fb62c039d2b492ffb37bbb0e659bd9ac899cda4866bc36ca8b788cfd751b293c45da4944fc51bb777ae7911e8fa117f20e4ba434a3f843f53bdd484e5dc5d71dc211c759d26a7915a482a698419812c6a07d9aef45decfca8cefa727ea4b322a4c5fed58ea05cc30bcdb641fd1b43851eb049d615c806b0d946ae29c560f54c5dbfd70fa90f8b0c04771d23a110e3e462a34e6a55a1619acac071afbe1f9aec2e86eabc12842db04637ce3e11e0d8dbb1be1accfdf45633a70faec505f368feaf41513185f1f30719107348e5e5cb1dcc8d20fe2b8d2e735c4e60876457543dae339e42f4f25f1753e758b88a75b32b9c3cadb33df26ea21e896c1124670c263fb0c8d0293f44c06259ad29abeecca630b68a736f749bac630deb9fbb1d71ed7be7f56d0674bbfb7ade817b034f1733e853227ebfe091228f850a71f249f738c08ab40bd6acd1f69ee2322ea7e9131f4808f9080407ea1dcf4c70d94e55d1a27b5e4979d89f14fcabf10d6591ff431dfe8a17cb767fa43b264cb5d6fb151b720bb384705b4cad1265d400a3d6d534843aabf6480a201ff414f05191f87739cf2f23bafbd07374870bc871c5d437a27fff3214922f92ff74438dec3c560f6f8251dcddabea30479eb51431ae1632abe9f28bd613008d37f939c8705c78104ff872e7e08e8b7f38660a0ae68593960d6d363ebac5fbdcc2f8098acbd7762346591013a5eb5360bc5f3dcd9b4ecfad62bd3d7c17b53ae7e9606a4b56aabaafa3f844385c364ed85f5beda8a1fdde5f7290a1c2060d8d6bba77f75dcf7568e359d4894a377e057f31ba8d1a038351a6d45fb2df9eda89cd0b37cb232293f3b9987ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d474dc8b43b03876a2a82897e15fb8477c956e4b18b9fe8453cfa4094837bb5517ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41a7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d7ccee8cb674cb475e881fa09e9ab94ef729fcb373a998d26850f1883a6f9fe0d98934f4d88c7294c71279d437720d589ef736ba3f9d7ff8d90689429e84ed41ab1156a1c0d0f93c52b3e3e492720dc6682ffb32b275d534428a4f74ce1e2a0d5ff227ddea4b041a8a992d7b8dd0e2a529028418714ac4758e9c7203a96c14abe6e24c9031dd66ff9f13c047c3da673bb27acc341f5b63f557dd7fd78f4402898f77760056e559cec407344e118a2036a4ca3b5f78db0768a3e05afec60367bc986b6794fdaa3da9bdaa60bc8d1f8cb3e8f7ad8e05f86a41338a6bad769199f2cf4a19151429b1899b994833665d81e9b785f770459bdcafb15303ea9edcfae23fe21b3363d3598afe0fd23826999d0af2b0652fbbd1ed82280ccc4e5a6ffbfd440d8b729630d296c9e925184c6b24ed7f2ecc8b32b1941c6b8390dd3f16f471406ecdc7cd6744d8c96ad453d67aece0941ff5ad7fa1aa5d9bf0c144dfeca41e93fece0204248fa2e57a4fe09e0ee1149e4fe66d0edfd1b454127f1c6f310636196ff1826224be70a72a6d0cb922a2726d630372f7f5ca5e2fcb5a790a89f81a372b440b4ed2729f6b038ec457f1d43884aef74b06f129d324f6186514543e269cfeca56802f6fcfe22aff0647c756cde42dcd800eda4aa858c178f6cae8207a1a6ee0d0ef161fc284d75affbe273c9584eb7398cd37e611d7ffb44533684b4768410fc2b1fe9846d9a6cfbbfd2e2b51120387fce92ba1d0816f6bc09eb4a0a13a622b46ab87f917512f3cd25bc34be54b366f605dcf6b9d4545619297ed967a453b06f8177908399d9d6b06c8428574e13806a746ab21c4a75c2bd6d3510d5a7ba149f662557a0e850255de23f785d94e9617f76e21af96a1c8aa7d5b30f613a41f2cbeef9cd06e0ddd61fa8b9620dd37602e26a5614089d4826d6f739e0e43b05ab6e50e8da310596c5db02f727119d0289665d7e4303cae9b8aa7e8cd89e4cc49fca0dc8ed672f2cd9db291672426fe320ddf79ad971e43ee97b51367062810b49ddf0aeca9f297061e37a04714f3a4e27b93444e0e4168faa4b6bfe1a952e7def724a5e803c0f16126c8663fe14b8bf76bd3172839bd1c0afd1163fedf91534bcdbaa43d6d04efe4a8c9baa6acffda4966e72563d6549ae1c12177a0112a6263e800cb1e350691229a77754bcc56e04d5dd064b2770961d426e56f4e269d30cd5ef0a8049d17f81f0817013e55e54efaa044f98168d4e79b4bd2f940379868db80dcda181c7cd855b99a13beaa8aac280bc0dc04d3841a196e2abe55373da28a31735f2d7be51881f1f5763e9c93b1563e0430223df301ec31288437e48f05695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e195695dcd3c9b7951c0a859041dd5dcb31ca3c08c8308d2a8d157b903fb9327e190a8e093d58ad78199ec654abb363e1196f63118e4218b25e0d085e21d3701d394b8c5cd859bc7fab45107f2411c4d73bbb0045ff4735a0fe4e3cba8427ab58bd4967c9ba9d7327235b9a8ea6f67b6cd32470f11c3ba4e993d4d78be1962a27e0e71be3a051a58fd939c867febbb647773a0306b7767999ad35f4a845e5278d0395e32cb80ce43625650c04adfe72a99511b1debb362fb6860e3d28e40891590e6b0eb2a547ea62daf0b6f55eaa90e0f0493a72f90c995403adea20f06eaed5933b8981e0d759f390a2f076bebbf7e036ad680cd9497bef1b2a6703165ef4cb33e4dc84a602c00695598e6503cda22bca252db0199c5181adc73831c068933578bab672ade25f6f946540676a62b67f591070b80d2626f5406cda46e68ccfaa2a8061dbfb4ad652bbd55d70dcbf877f1c36e866beaa49057c9b21cf463f20871e42149dfa831c8895b0f68e24e8d09138ca82a27583554bf6aad960b801e990d30ae34484c5cf435cbc5c415811094973d17a4331be426f6b653d5cdaca28bddcbb15ac47a9b31970eafaa0e0bc53e2a6362f852a55a880137844f187ff6ede90061eb6d1d2990ddcb4e454d163277f834e6b94f4a028cf725d32dc56dc0920e3d90ead0bf88185be8301d5f664d1c18d740fe2d52c1e2f3dd5b9d784253488caf932ffcbcec4462466853ac900a172b95382b813f3516ada81e691abcff670c0e22c4816f6647fc66627192a60e77eb8f77170eb330ada6de06defa914faa80d5050cc0c4be7f27e5bd76ed09701ec5bd6f26d5df7ae7e18b02d347907b0d3b8895fbb5de7b416f55275e7449f7c781b0ae8e4cb3a61172ca7f84aec1647882621c9212d92692ee00590fe904f5d23da2470773f53df224e881654d3961d647ea79a68a397798466e774f586afbbb0583b5480ca49b141184fdfd2a7f0f98e04b319412890078eac8ff4276e4c11c6b3d1e921a76245a9f1a1fc0d474edb1d270b8a88747065de6e569dc3949835eea547ab23ae5fd2b42b71514d1aadee5019fa170e1ae8459425e005793ad92c956765c2e7cd27d31dab38a3927f6e498ff10983514e2ef9315420a90285e288f23753b396fc4304f199b4d976724c5217d655c67e01d33a9f58399aeb4e78c3444e660442808ad92aa06003606d08da918d80069a373dffdb5e775bebc8a953edebc427590cdbded1fe647150c7386f3b8cde7ec672a73e2e27a04bbf790066aae409799ff68f2b9fd4c78dc9348f83fe35734c484bfe05321960293d2176cb6065ce60be940513efafc819824f7c2a7320d7e20340c21db77028979b07388fdb668d85301149aabe2b96c303e04eb67ae8c314fb50562dae5fb0f9b0cfc68c9e242ef7c543ad10afee8061454ebf76567eedc380ac232fb2112c5e8242b1db581b09784acaea2515bdc6454ffa732fa427e9dd81f7b741bb02a3cdd224163258ff595dc1602b37f87ec978c74dbff498d3082a77bf9189bf2d27c37e10d49d8f3f1fd63711ab64e66e29164051d4b03ceeeae4bf85f86d9b18035f64107cf7a18adb3dca0deda3e3fe88a7540ef674b859e3e7842223a92b2ad723062c9d9393385c6fb4f55cab93ad71e25f8eed60fd384ccd2a26a544f0e84664cb862e1676fe89424ad6f5126569123ec78eaf1a8cede47b08916a60e7599e1b07df6027b9fd7c7c7d50ad176784b9d1c361039c7722358e94b9c9d3f7b9d57571b8b1899c5340d963742ff97c27ce376accd95ffce64dcf9b04a3a28ff7c0259709c395594a8b745a3b8807bea0da30c2b29a69f35c697fb47791be10bad3750fc899a74913292682a59a565a792ea9656e60039edf33bc3a5a17702b8a08549fc05cc2d611da811cac6f6ec1d6c0395a12cbac897e84d91e646cdd591fae7998d40b28de895a141e56f9a4a5c0e1f4ed411379d5bcec9856b83f72b3ecbe992872a130869ff3d568a36528ebee13b22c8977b7a24b450e5936bc627061e6ede3defb0cab2f1bf220c53fd75d50ed23eef79ca17f90d7aee9e5ef9bd906905c0a6553ac149148218e278579681e02e4f50decc5159a56da173783e03c218b05e6cae87fe73f578124db651ec7f4b275da1857493d9c6477e6b6cdc6f93ad75f5187e5a7c07a973a86b25635b7b46733659c562e1a95ea5e2d88021d3ce20f3ee178264a46cc22ad702a7e314804f9be97ecaa0079072021debe60e4016957159137c0ac9fdf2fe1ddc9fd33fc323421167771648a555bc79b18b889a74789732079fa44e04d91dd835b56c5a4b6aeec395923a44c20c81eb62869faff0ced335cbe32b493717af9d80a779f5fc0aaf7dfdaff11c2399ee62d78602c44b15cc96f837fdd896452af2f9262df5936d80dd2910e06bb3d119f285ad4bfdab902ecc9613ed82a680365e98f93f8a8880ff2656dfc98d2122722be875796ade64b574904ad78e422130727ecb5003606fae5787126236d3e153fa9f1622fcbc82a834b9a9aff1db79fe47b73b90eb0a450f752c1e1823bed3611de7c968f4a972c1494de707c9e11ec010adb07ffebf3c3455a7ee3b3df69862fc795d77d916417e4a15d7a5c3f9806afa37373443aa1b5fa0aa8649de283d0427caa00f92116d71afc6354786126556a50a5a9081cae1a47b458ed632bbe190121d625f80ff0a4d87e81a6bb4d0fa4409f30974c325ace8f27c3bfb6b455dadc4a741bc2101c06487e1553455c769068da9f705fad5e6e1a74cc1ede149d53240d936372abc91609ac44b692c3933e47d896f2e35ce23fb46c11b18472caa4f11e23f231be2cac9f60284f823c468633e91a4271c5105e728807ad16144d5cb3490ba4d850010d82c6cde6ab389d8d6ad5a5ecc79f4c8946b7f33f09694a868a7d600a83fc44865ae76de8c5f6eae10f9e29d41fbe75ce967d9e2594411ff1840301427632d4472f104876d8628553b299b43e26a2b49c30a00ebefa8ad7ad9879873f00041288fd4cc67cab2c86557eb86795d12581325cc6327cb60682855e6e7a06dda53909c0b58447f44fc80e1bfeed9b101c02846df956c0198222a8e5dad513fd49e82da7e717dc9be146b448a1c141e83cefbccfea15ad586cb9f15460ef13c41d70b1e3151bdb854436b763c860f87626209c62ccea946fb6dffe0a79a10c37aac09a571ed6a16ab6f25dbf280bd247e366e35fb143b75ab482f35d627631b671eaedebfcdec5944a327bdc99c65df8a750232f6a84cb313de49ede6abcf0f580b04b7e07466c8a2797d572897139b331aa3c283a5a9ce27066d78b52a5d3bbfe31d6f81529e3809c4bf1444320981c6e6c7940296c1ff92fdff759fa8d49442f4758f29d915eb409c5d53f1f3791ec4cb805d7d6e43322ee934c692b3d38f6ef6933f6ab67eb704f6345bec33ee632c5bed545fd7ff8610ffa9caa062c01eaa2b8a2950608259847e5e26f62758606073be9cfc65227af09b51880c8f1b72f5302fbd7b7b8d3fb772b4f5890dda8c80856b8e11862aa0f61997d7830ce851472e34094f7c6a1438fffe91ddfbe1c613464fed7a98e692c4dd4c58281a7a920c6191a37b98fcddc06147a6d8907b2911fe7c37133539e15d1500e82c41b9c8c4646a7ad967226a5507f0efbe956b03e0c39d8eec274af263ba22bb03f5de4b150681ccb30075c90743549588c78ca5b94dbe25d1d0650132114beb58381249b3389b6dc6f73e6ed1058829e500827715545ee2fee937877a5b00fc834cd1921cfa88b0d680c29f72fc0c839045f36166030d920ba610e8f3e112430cea74e061a7299dd929b70e702a4df82434ef6740f28475f25bf97415b5228d82eeaad8f0e889a7a8123287b111937507457d90615cc404e03f9aa6492a9f1a853637c7bd09136a351afd2095ea5c533d7a79e5a1c1075cdd55cb21e941f9d412b6499ec300d79275dcfe0338d231e5f3a0efeeea8a31168ed49e0db463dcaba806996ca78a7e0e1a4fa83249619c63ed1fe9be096c0c234d44146b475dea01cf557d5f4548db7329d00bbdc03fd2f52a34534c0f08e2d9caec0d7886fddc2d84a5682f48a4f252057bc1fc43abf04f73da8e1bff77cc5d0145355bdd81bff82ae193fceef126580b8b871271eb4cdea8d0a8ea333bfce7f3135180d65f33980ee2103d98872841b56ad5ee1f10aa30de0ed70009471f500a5bff81224a9af22cc2d3882be6525e3f013dcd73cb6168f2e54af4dd3e3d21ef96fa0935383947f9689b062d2f4fca6e9fc87d4df55d1b7755d78bea4c38bc5bfefa827cecc5b18b951d932f855791dc3a07078a093e9c109641cda8d5a7952ae7fe54b95adf46d2d3e8322efc6072d057fc5967841deb6746b5eb3dbb78944f652be4d6da704d832b356f1bafcd920b59393668ab50499de9cf4deb2bdb1aab0fd04b253aa6f0ab2817ebaec1b98db9d4e50f555d9249942cf53acd1605e5568394b29f519378fb92fb9cdbbb8b755f0ebb6af8e5757884b568f1bb1ef1a175f89ee9e87d9403c8bc9c42d0c4b9877a843b69d99adba28cee668c99c4ea6cab0774cd76a91e0b80d561dc426f628f94a60a582e17a8d0c53e6fe0367715471efe5bff963edfbff9d23874dc069750a1675ae861ef08e2ebb4dcc27ac79d093c1d5182a8b3f62badde575cdc1caa6931964643e27ac1528ed6663f34640816aee740b758aad8ef98a35e19b526b1fbf8e9ee6473db961a9b9ff7a8743cfda752cbda86df5bcedecab95c2075efbcd1fe15309af34ca0f9029297e131082d0de8147b9d7f2502385498b2c7e58778c1f929a7764066c6800d07ee778e3a13b2ab0239134c311d7e78a8b0ba93b61c72ed20533c4e035fa262c5c8f2693d7c25ed38dae42adb0d3756153c48b523a9d6510d3a42abb8801e612dc6b621b206b362bd0993122634012f480f48ca541a7e5f124bbfee669e71440bfe910859a93ed869a498c54abf4d0249d3c7d011fa273ae93f5c3e21f2ddbf477370a6bfcf9a42aeabfb4834c893483963d698a913e6aebcad26ee643a939e72949f29c692f2a6c102a51085bcb3131a7afb510e3bd8d4d754101c9811b56600c51c51a0dffe12671dab36af5024edbee2d9c9e65f0132d97b701e907fedff9200d1890d4b6809b314827f8a4a9525d2db1fcb00a59f7b5d3651bc6b58db9ac83b9b154410b7544d1e1488e1a9a744be224d66229e4257f917983b936340e3c78cde5c32eab0d9664a36ea649023fb1656a586eca32cc6c7e5f9470db7346451890b524c19c2886b3b220ec7e6bc582b0427554723bad48d53ec0f70acde980a6977b46bb9acd42d96d604ee7358d484ef6fa6dbd9fd37b32ef917db500753c4abd6c42f645c5e70a9627b7b0d8da7134691ab738f2dd098e384414e742cb9728634f5bd44a09b671a2d95459860aae7732064d5de3ccf2eddf725ca4739924d3495a4f603cdc4f8d10193c010e26640b1b3bddfaa81eeb5694d3e3aef600f04c37c1232c31ea82c75fb0eb29b0b7cdf81e1110c6478e347aa5bc689092edc088317409306d96e039c581926ab7d950e1b165e14d5082a12ee480040304f00ae0a711fff0f6cd59698e718d5b5845079192e65a5964825e8a5e889ad621e21f4677115b61c6951fe0107bb39815bf93d35686f930a91985ad75dbf64ee08652844654383755283e8c017f1102e85cf57565ff63b3237dd68d622a84e03e08e0c2aeb40cba0a371b078d93ea5bbe30c3ab193182c72dbdbef4e703282ecef133bd7adc1bd50cba1469ccbb175bbfb817a1a7a6b9e54989361d49a29e0410ac09deac582d8e8d451a5cbf457f1fb190b9b3a9c45d60f7b9824d42cb1a9f92d6185dffa63eec180a42fd5723cae2a61484237afe94025d75dbecf67e7de3cb6ef60a21c138a2885919aecc058d4381f9f2dd853b126ed9df5ca46cc9e9ac4ccca32a7d9b817fbab863b2eb407331f9a058bc2e8bcbd4a23179436ed7f96d6df4e438dacac64f81564fb3805fd8cbf6134d37e2e60375afcf3ba09d276c5f044045f32afff6d86c136ef86d37cee17a68d87c60179b2bad3b4d103c5cda0e1a066d30290cc74b76318233e0a93eb45ae80999ab92a3ea916d87d07e7b25a3fd11efa1237cb723e00d9c3684a6bff2d1a253f7f019f77e198826a19f0d7704108d837c89bfa4f3ba9996a39cbaba1a58e2ec054d8d0c01800f359a62a0475cde3acfd937bbaff9e7b529b1422650675aa78a530e46cff28c6149a8e001431d22a7039c557f9b1dd419aba43aca15609cc69ed349d2f091a9e198c1ef9d4108b244a5750eedd77a93f55eb82e78b4ac2e6dabaae3139eb65be0064f0f057e8944f4091e4bcffb61909b224c1b0c220592d7c429f6c795d8d93c10f0369e1ad18dcfb7668a5fdcf0057d6df2646436306f5a808d795994e58a507387bbd46cfb36bec4e720b2eb9480d9578b0ff0b9dd761de9bc941362a64c919bb4ed6da1408b3b28d9c9f2ce8dba847c60140cae5c7b5cef33eabee5c8edc6f00a88398b352e09cecf54ade881416499a22b8eeca336a7edfa7a9a08f2a7d59cab6c716dccc7a142f5d980fd3b14d12183ac8af79f68905dea2b245e23eb868bc7fc4a32a7618d75bd7ce2a950559f0b00d0265dd55fe58c22daf19a47bba29b5b468c7daafe7659eb4677b2e36ff7e98b8d9bf0ad2553bfca9edd0839b8b3831def12c635e550d179f487f1d79f075f44eb10196214d7a2860affad72e433b9554def64d8080742b4e6d802067c2f02d58cf052691189ab41f8557cec308fab9fe3fc22b0a9308a5b44a6437f467372238254bae169479543daf1902f71436b1d9ed887fece1d6aea35fe1510089052ddbc4773646f9b00a21e89862e80644346ebb44863de1406c61838612ffd78260dcb8fd8cc2f79f9d24c425338d4593dc8ab68d9d4865e61ed3289b9b31f72cea5862073bc7315b733a9a13e2a65ba9f47a93121d6491d18e9bb5882894b6f05b7262471bfe712cc08d04071c24280d7d1607f7bf3f1b6e108fb02e14d84c5743562678ca1045d5e137a8378cf6fe88fe145e3e7ee95359ee31da02506ab15825c8c66e8da5f6208486a55d847735e0d351e374a9f94646916fd132e72e4f994cbd57fa6bd0a3e3ef841cac5fa74ea264b290e6edaac22c7124936feff8752a4dedfa9701c8a5ff43aee9f1d230a30a54634f294b6678932a1b3581ba97241dc2062a7f2f2bcf68063fb3d3d3659bf7c166dfe1da7bf54353247c925578e961b3446175648bfefaa28a715d30be373c8771391c6d82d1ea3030ab5664f0335570478ef801090b14ffaef775198fa006ebef01b5f96097bc95f4f01d74cd69a195ea87f56d0dd6f232c7e00a91dcf0b39b29fe20f74e71613bd37a3696f5fa087e251d9ca590040e42286fd28bf62e7203ac087c9c0bb57e8f5d61320d5a9928b2ec4d5a254e39e5a456ec5c848f564f74ede28c7a3ad285329915a023486569be7f5de6b2bfb470db8505662e2e1c44c46ea81b37ec49bec570271045bbc306ab18e1274939bbe2bbcd2c3b5d5548637cf74aa692cb0f40701297caeab58acdd899a831e3b4f118aacedd22e2c2b498ae910fd8164ba2b8011ced0cc9c9727e7a3b42980aab4ab0c9a6b88d3244668db140e150193f8650c9259b87f0e10c8a1557a72671a3bdfb380ee2a64dcba12e7cd6943cda7b872b94389cfd625561d2702eb64265623690d11916b46c3b00034e0119e71de253402ba95952338243b848d24e04884744d6b24b667ce8e43a944cda1b0f1cdc02c89f2fcb2a60b43c18f7adf3f7b90dc80eec7b8977c0995a4be970d5e08eda7545fd8faee6a601d0ee7b6d3771d04fce7471975ac8049b4ce00c6ceb616cee6713d3d4a321e5532f7d554f5c60746a85f75e786d62aab7dbfce5bdda5925a17c5607f5967eabc23b483f3cf4c721876184e347e21358814c02a1dcf3b0d47a001d4011b22f6feb3362dfe50bd6518cfc10290ba4cd6e907958dfb36a323503e4eb872e913c3e5063a764217365c862a5a77c4663fae4873319523f9882bc437c9c67a15d7c19f0fb45dbf3e216e05d3741193c084a256aec795a680001737546d0b212256e8f89345f96be79179288c56e2b85456489afe2e3228c5b78f60935fc324fe11a1d49e16fbf436c3ba745d001c2c5e8819b64d220bb04192ade9fe0d47989ec78821e084a935c8b49128bb569eb218d207ed7d5e5ce68a17364bd54d793d29db620eb8819d57acfcf17ebc8d7bcb0e4568b9b3249f241de9029849095d7971c74a84d8446969baa9708b1b40af316fd8cd29127b8197ac91ceab6143f3267133f075780864a4f68371793646b526014f1daa8432bc5e937e4ee340625e9ae7640115614189588a04f6f9fdc19ab3a051ef62836b69d0586ea1188c71e42b901d59b1bfc4b30d5fd75cc5b7d8c62f79717b8be58b6daaa876e8fb098a20b26f19cd55e0ce7b90b26886c61e2555ca00379aeb7878dffc49fcac716d65b02f762d0f674f47ddebaccbe5165e2116eba1557825298f8be6e6744435c535912cdc99b17e8c421e8a34519af9e450b8cdf0ce9623501a8b0ead68c381f93d0c3c6cfcfe714f094c061dea84c8c4afe984866055cfcae7ef530fef01a138224a7a52c626889b4961878be12537df05c3145784939531562c1b1977daa8e663126bb2ec2fa87557d14e3fb4100347f80535f9f447db9118f0b7f0e982c718f97dbc604f2ddd3a9f9bd30308f554ac81aaf6f547ebca9cb910ab8dea81019debd497df72f6f4bec5e593be7f7634416937e7fb779f32b857bd5fb66b04c2be1111b2c6fa66c0fc8130fb4372d5972c06ac60d2d878c38043802335a1f77d2319ecbcd902af846e961c13fe8b581ab904a9fd90a470af8c38efe594415f4d7cb4afc772fb04a39f39fe093746355ca9fba436c50a09443142901b7389f37ea048e511a2375233e31b40f41b35d0197637f36bf9f374dde6df785e3caab3a1750b488f9dff841e0578b8c49a4682fd7947470d6cf0724dcf1da9b45e3fbc4a78470f5b85a4de21ff1872ac66d1be26ccab478f95d910f6217fdb5d7d9fe2b7546bb1fa01cf795cf4b0002c91321395c86fa97e3e8912cf45548020eb50a558ae8452c0d02c6ca4a073952d2ef266a14318cf20aed35c5bdcf974f51cf5084bd5e6107318934829f70aeaf8af4d8daed1503e231c787bb0040b75ae8da8a8f61578986fd07dd040db4aace4ea946c441c7e0e53c290996252fdd570de7faaffb767b63a867f026f61c45135f3845b49cac8a7a74c70c455b225b1d7966dc4938579d941e98db6468da91e2c09a41c08afe97ec3f90fdbe0bf8415063dc2102f01ec549daaf80f91e133846d4685e13028308e2074e9711b3adfd51f5752884144c100dad9b76ae43eb362e7326ab333ca296d504cc7cb59e3bf563f670bf793358bab6df78e1484815c85e91bac27c4d21d7b1b2fa478483dc01edbd6fce53eccc1a7f643e3d91b5bc0ec1bc0f2c7a504c20df01b50d3581530c3fca3c989f20ffbdb1ddf500c9092690d5261b706f2c02d4dd9663bc36be25395ab0fa7b9a7ff52034928d71c6a53118febe137e416143b67e6eba111c265420697796d5e15dec5ad0b334bfb4601257546f0a5fa8f3f8818f4eb85afa8ee1c9e912bbe04b95ab8fd4a1d89dcc3fdb4a1da5945641457ad4ce8c38c7a479d7924c59d1adb4b32e7dea0db4e900d02f1301e8e8965fb56c4423dba40c79347b644666020962beb28f35ff23cd9ea3668459ffafc3789626ffbf9293d76574110bc954bcc3ced0c9e998f8f1df4cfa1649e8579e3ce6915330cbb8f2b43627bcba62c1917c45235c815a5385bdbd91fd90a1b17d1fc47649388708c8a2af4b9ae7c69f2874593aeb89495117eb48566e439f11abd2048946f77ae09438dc95cb2d16cd8a0a017c815b708a20d71af486b6493019948b60e298499a3c17913b5353d5a8fc26f5acd488a7d0edf7ce841eada9b038a27ad2368eba0b804a7a020e14b858ca439cb740d9a322274e76102959aacfc5f0ca373d0a233645ec07809976a1295818ea5a01740b67fdd890f8e4ecc06c940d10433b8cf4f1ba210ac55f7156564e5461fb82b10f4508c0ee603d34b55ac671755d1291b94bba529d00124d48d54a9d273ae0da6277a0fbc5e78b6e0ca019d4ae6722abdc06903dda3a9f9b8f3ee706f2a3746c42d2715a8b7581092841dc1c58de9af7cc2de222a140ba958d18cdf778112ba2d2d5d79af162854c1aef2c5c1a39ac47639d734101f0af6c4cfb1592a555acf76b9ed422901cc6cd0df8f1f8a3ef754ab0855d145bbfdc376f6c7084a935b6e191244856b7bec5b316ad06b5d01c63f07c973b75785c74b977836a9d8e9d7176ad5c69953f55dc945dc7820bdeea69f47cb22fc46c684c161d3d36ea0c6942dbc93faf0a64086dc54340005242eaf027015543d54bc13abbbec51f5b47e9f16db40332bd39fb0f4dc2b079b8dd17a687993a37fe5e8f15fa81bdc714a9af80ddef99f65577c629c07f5887febfee652b991457e4dc0036fb195d2e53b6ba4cd503bd282384820731e28feaa93ee534bd4039ec32a26f15a974613b7fd70137f80d4a7e56b8bdfa5992a003a1c7ab0bf45a44dbaff9a1a61e99e9f0f65954ac38f840f4233a0baa4243f167d9bac54b6889132576ff2ab9fa39f2cecb68be571c363b6d46842b1920e59add1c740d0563bfc0c0744a6f2095f6d24d95e5ce447a460866524a8ab807505e8aaf95db01875a2291577137a0f594c9dda584af765016336e254c3560d854c80b7410adf120b34389aaeda9a504c7654786724cb1b2cc27677ab93c7f59ac649af1834cceb60ea81033ab43c11dae692d9631b5ccee4de86a35f8b9a9fcbc5ee4448c86e5b4a8935ffd19ea61243c2b48a61cdb1072d05603bde44788ae2200811131800edaa55e749f24f13ecb3a3962b429fcb8ae9fdb60adc0cb3c4ecb746ec6479c1ba99d616a0ddeedac876dead2c584101353f312b0d8ea10f0b6b37d07f1090cc30d4bdf5e2e36679923e6df087db05a7964ae7b21a55774933148003e799460fd70caab324a61f3b674ee43a55a9b9077f193d8e2b688f6ea938230c4d9ca3470f6a87351dd422005d76e72800dbbde607e4ccfdec5947546b8cf1310c8553980ba74924d6f87750299dd56c6785ec8da8f326a28ede3265523892488830aeb390d66f50b1d15f59000505ce9d30c36f2ab15a11314c3a9a9efc6b267ccd44075e7862037b09b2acbc6650fa4a815f34413544bd9789faaae0ee5eb80ed9ed6bc8f35d70ef85461262217352bded33ead7bad622762ef040058e2160c425c705eb1e97c9b6b048a3805ddb06987abe5fc7a5f5ad2272063d3db696012578a5916ef8380ea9350c5da7b61e340a65ada32524fcd9d684b7215cf8636106adca8114900b89254c8ac0b1745b3a144bee4e85157a6174129f6cf96c1bfcd4078826517010488738a7073b789a8a8d5e11c0aabe659f62f727d4a5d306f4a4172f45ad2791c09e50954da9eb9a01017e5b6c849d6035ec15607c84d38d66cc959c48b6b95992018fd2e1301fd076b17018c8f0daea4eefad1f3ebdbb2cee73667162316f62f4db2d00191b148fb81689616975e4085e37dff7dda2563f126620a60bcf0bbff00cfb9246763b322305966d948ca47bc8d2e2e81dea91d6d15af9550fbb972490c4dae700114314b4dfd7bba4eaaaa45031cc51b64c85997b07d5210f060b36b10e57ff97e37d63a439405bc0075498f78599da012a97de8a4d1c73d694d77c28c0f8751e7d223eec86ed50f50ad17a979192074d69e2f994b187d8c9853db0b8ee7416f98e45fe88d2303b354a656bedbc8646273357e7b33f199b62ac57899d565442046c255b596912a6686b21d242aaaa858bdbb197b8d176ec60694465b23994423fb29f94af331a5623c3c444d15643706e3bd0085cb8811cb5dca79434a17022b1a61aca2b27da0d20a64a1daeefe121e6c001e7b3bb388c73a5bc82e5f931aa89529d620ad3573b264e07dfb733cc7dd6a09c239cdf49d1120a3de1ca570fa9bfb8760f266e992a8211e27cdf3b32e1afbe6c4090d5913fe71ad51230104ee096f5080dec112a32287459c23f3b5257885488b3300d051a4640db217c08d8665f1b4adeaf3e11b82563a2257c6cfa694e96c71d6e70abe3b2b08cd886377760f24ec4b8c0daeb4c5905e14fdfa9ad37a9a46742029065bbd260ee23d37901269e13f80f1e5f390fb4bee6bb458af6d9761b9e6da0f8f66fb0364ab55791618faab639de2b09ef4d13420b0f7037f778f33e3d49b94a91883eb1c73bee6518e155f2343a902ac0c7b3d927bc461356ea383d35a835bba7779eee70b6ec977c7de5b48f974c655c85193ebd70e0ab69c033e5d100687f7334dd2ce2513a7c6a3b58b1d4e0a1a7a2714ef8b586337fe7a72f111b41d861487fe9fb14e1b418514b2a85d293c4ae8f36f75b22d7747b6130933d7b26db09753150803e3fb2613f58174127ff1a3c01bb5755c408c1f1405bf98a20969c0b185048c5487dc6a8a509e3481a5322e2c064a74b823044be76914033ca575e38d903417f39a500fe272c4566445b1cf72d8349e1a02764d4d1a0967ec5b00f38f03275762a3f1b93709876c0e4c597c173524f570582d1f6bfb9cca359aa95126594006992b0ca8ff02ab618db5437574299e91f2b002ed249753db1b0dd7bc6f23a3f6211f88b882bf7a938f322a444b91935eb6e957ee7f3aaad5bc6cab0e8deefd9410f6ecdaaf4385ac03325a4366406948143b459eb8d54f9f645b3b7b39a5ce677bd31032f1e02dfc71fef6d5d4bbb3701b8792114c5dfececa0c4844cda76bf06dabbc85509c37447799015851eac70edc3585682e635c0d0ad1f04ae79f6ab0202da6bf09dff99bf9c19af6bad7edc18d6ebcb30a880b7c22b7280e0a0e12727d267292b7f7d04448ca206aa64d4718bb873536d8f3636c9ed9003082ea1241446874be145b7e9dee50f015ae5f9acc76eaa34c7887b67e7e83b4f780663748daec46284980deb84afcd18199105b55cb9eb71c038c79f4eb27b71d880c0e73e07601d836947338667ed1fd2760fb12b5dc41acca3313a9b4aed4e404f118fd29f804fdffb7710f33bbee90b32179be5ded98d11e827c9f267c1ffe04759c98e13145ed3eaaa7408be4340dedb9bc18d06e3e779f24e5cf1f26fbb6c73ea582c8833f582ec82d3c38789f79a9604e966d31d6eca67e87845d142ec8c4ee2cc480c5a20a003f0c8290d6ea232ae06e9cd732b4522614071ae1e6c694591a1c21b2ecc3e1e45c443d3372818600cb11602ab47587c7682536e7e83ae3291cd34eaafca854f1c62cb71176d0a9bcc66df4e465a0be2b513ba958fa175de48441cb625ead171c2262e5ea8d32b36f1bb1e5b5b208bd08a4bead1dd14aeaf3f4b049837394418a1da41033df0547ecdaad1715482e02fff7c75aaa8d6ce2a3866ef2087ecf9abf8255d20a362b1905f624a3e2ef7a5a2b9810f7fb8e427720673a6fad7ce92e83a5a33fd31b8d8766ef06a974218fb6ba3938a226f858d786e79b767ee419f90d1d9f70d154d4b8717fbfa0494eef53c1a616ab64b9921ff4f2c0658b5498cbe703ac6262fcd05a08fd9c07f1919f714dcecde213e4ae2e7df2fee6dd0cf673f2c97e75e160627231ff8b0c415fc05d91246b6f39a82f9eb508e1683e6167a6c58fd65716f77d29f6c01ad85bb9a692f1ef4af6848e585118f673fa1de6544af3b4821dc74cb2dfa164253e28f98b1b763517fab6306a9fa614aafd30281a117a7a73fa47b95ef381bd5180db2805daecb297524128eb15cc66fe1d18a1a7c6edb14d4da6c81f91c040d3a6457d83a10f820d7f844b6f4a2eee69f3fcb24712d768e5b2ed4602f8d3fb6cc6383bfc8e87edc0d70c6598a0ba1aa7060608dbab4c5aecf83e2a4de57489dd98e6bf1feef7811c81dc166dbdf061b4b690fd32a9df3885b93fa5ce8cb7b8a6614fc22ab2de78564da55ae904eeecfb0a13beae680cd89f42b0c08a39b31f383efbf8138b2ced0276249c9ec38d45d211b88d9fbacd95a1f0af9b9fa1b4c11051889956e1e7ffddc98e280eff553e2d4ec813375dcbe7eb7c19ca03676c2d02dd86e0774fbfe4c01bdd29da9034e422dc0761c91215bf4793d98d76e8bc027d2d9e13c31e0b129fc06dcdd6d49ef659397fed958616bfcfe224c559df84568a92a80ec163a59e1108ec1b3dd03224d9857de955e42dca534d551311f8ff106c48a7eea9e165fadba7295509c83ee1487b52ebaa2fef89047da55e923e13abdf34a48859e2309881ed16ebdc093fc39a7985dea922b915929b5492135be978394c307a7615432a0afd9eb6639f9a300917964f0308c01d311ba39ab380c308ce0b141153221398440bcfcd2aa040dd76aae7cd630b11636b92ce51ed346c84533375b41bbc6a762947cf162353972a8a9254eb12eb23b45e939839f62b3f4980d9061ee2f80bfb9edc897d4575f9863245b459ca28a3caf07a2b165865a17c8f4bfd55053e68733bcce7a3369dcc0093dd3cafd329d99dd4e945c55f094a7034998600de2aaff26d12cc1452004696bb2b2f259fad1794c13dcda6c9dd311df018a69eb85bdc6e278543564da3952ce86a3e8905fecefc33ca5494957b7cdcacd7f220f80dea30c07ed01442ffbb809230ec17c591064f7847f44ad38c8c80a2facf18e3928324771a153572b35ba689aa5ebd7a0c24190310938130e76d29f4ec338679a7f115a9310081f3b648e965df3239704c639d030c6f3dbe17465d50a43786a492eb3f7d6bc8a5578d0fd5346bfa1423fe06c6b68c8c70197be1d06557e4eecca20576878031b5b15df716fa02bae3e9f46905d7a0eb05b000cb3a87a4de8f4df8d636db5a100e5e36d303b78dabcadeeca9fd70124237caa0d5389dd61edf03122a993808aff817c0b91b827b4b6086ac012597b64b37c4f76688fe977db2e494721df9e6eba765ca4d0c11edea74490cf12e81b68688d0ac2a0e9ef03e2a336c33f1e8873dfd73635e4c4a3c88a249b003e7b28251858dc2e61db414ba708419818ab18ab64085805e9886accf8f973e65786c9846f4df49d23b7fabfc144ab6b755083af52ae77e10ee31f806df82ffd86b064bc6ec7c6bf835c4d50092d45a7779660691a2e76c8015fe2aa1813162c8661f48c7e68ceb92d51855cf82ee401ac01d2317280baf3b2d392d9689de6c7b0f04f4685fedf27ad3e2c387f63022653080fbcf686898865f588291c132cdc284232d4b0c63a434260f7d873291d33fcdcd5ab29c200739843c287bfa263172235292aca28e7c9a880235de8ae30084a1cf82199bf7918acf23bb7c6bd432d9ec2155fe65c30cb03e5e5270ba2c7fc9c1cd4ee42cf030946c47065eb3a6dca9fd00b8b2ab3272b76b9c584b03d5cee245317a524d90209914986d56bcfab3e261093353da07e733a5dda58bd2478c1e3a28f33cb769c2c8073efc7d7fc0ad8a24a615fbc57d50c0e30d969976e9d527498f18bd248bb6049ad52f6cb8b69d4e505422c0f774c8b724188b61dda98d1cfbb0852f053049b9ed6d17d808771905161c7e5033c40dd7e3f8f93e6cffa33435ce358f9e8c7a314f638320021bf6317f602ed833ff58730c03b6c9c4ef22c342a82ad8ccf5a6d75377ba68c7c77e20c4f1fe54a90ddc1b4d3a49dcdfb7696979e831078157aae2d7b6224150cbcf954087569ecf5e81a1c739c3ba8be12864dd1eda3328a1877186c115f62376d980078a28b1dc2bb2d88f93da03045a70352769f55d9b003962fc7078677fe25aa60f744a728d05d51c954dfd77dba1d387bec0097cff365754fe20f1cfdbfd928a4fbf01caac06679585fc3a425f0ee9390a9009efe99a77ccbb35580f2a347459fe72f0a9baf5aa5549a2fb2758f1fe4b59ae4e563c7f67227500099148773187d14dd060e5cd912ed37dddc845cbe63eeda1c81cd2a8d50044ede5fff7a1164fd6fc6b93c4835321c24bdaab2eaa49fd836d84dddb8121cb3b10dd517d8aa02dcc9604bbd425c82146453064e9e1df75dff117ae7c4f16eff82b19653e52ccfe82419a785d53f509d38031bc58bbae39a232fc998dac1960ee5a60385009f0e9dec77e2d5a7d4c81435b73df6ffd89313f94846b7e2ff2fa0aee70e4cc489fd6a100b556903ae4e11e02d78f3c9d31f84e041d06435360404c956e91c55920454c87193959c2542d92b3053fb62fe0cc486deffd96c5d86e69940fc75f7bbe67324d149050bda7383b3a71b9e730496f2d80752f6c6fdd3d23df49173a6aea85f9502adab70b92b8d65de1c3d65f9483063ba519263a4a94a24b2d801208644a19edabd3c0810981a94b16822726496f13af129b9a6db27ce9daab5281786bc91f12547d1ccd4c2d99c80e4363bd692c4a1a527c0604e25d4ab5d1333b70be7879ed4daa89199cd059bfe386c9d518640090d343a657ba54ca6e8060eabcc3ed226d01d1367f81537ff3408175c2f6a95a69dd6b6a918300100b86992d0c87cd09ad270e4daca95b337b6134d3984b966b289125550da9e66c5790055f0e2e61e049a60ae1da1087a199d9e90c04dd7848136b4c97d9cb2e3fa473837ca555f34b128b452ad7e19a7dff3080489ffe466cc0be474d9cc6f4573af5d734f722831a4b061b5f30a3ea72be95beb50a3a455843d94d5bc80ee358a140b450d0229579dafa33674d6904618a67e0f8ec49836e70bd45d0ee332f61105b43991d0ead63a3da570feaa79e71bd69b9f53bcc87fe31351a6a7eb7986c0a72b03d72bc0ee22bf1c7d55c056379055951b58684ca87fd6ba7e2133d24ec6839cfa86a139ebb42f5aa52de1b4be78e7410112e5a378052c76a84ace8a0ba40fcbe90f06fe0d081bb83883ddf6f45d48b8811c2fb8e7aeb6d7dffb36f2fd85389e6e195bf5c5858561e53832d3aa7e46f5d041c9ef843ba48f3f76367c0ea6d1aa37a92f7bb968a53eeb6cb9f28d8195012c878fa7a7eb4a1f0d1e9d53bc65bc26fc35447f53469be541333dd6fc611b26e1f7dcf1ac9711060abfded12f1fdc4901577576472e48fc244f2f2c1f25bdf00e92cd80df18e01627996e6b23b1b776b50a1b4f1b2dd4e4124377c34385269fa2f3082711f8b0c8dbf60f95165c6ecaa63318adeb30acc00e20c7fd889f70fef093ad288db7f59201779d415146710bd19589a5838c4cbe6bd535c01e03115957208932a472428b5e5944503ef8e416b4112c93154d85a2958935af3578cf953db67cb582df73a6940547afb9b693b810555bc7d38629ba941252fb8217086a94e28cf55fcdfdc8351c22ba71bfbba18da3a9f20cdde148a8fef358848bde19b383c8ca6ebf1e4061186a48333035d880b53da40fc2f3eae96a599ec0681376dbcd1efd7307d85ce218b1108f0f531c86d1d62b28f4bc0561dd3ebc8654d5b28ad56192a59d5550e0f29ee95ad6dae6987d0276c242fd0aa2c144b84240d3e40e8170db3dd458dab022f89c06a57e90073061946ca3e659696ce1066ef46613b550a5a9300f4085647c8e97f99f53f635a866ad0025c3dcb4edb9a9f51d15e454c57243df3c55478ff3b3e464ad31bcd693ac72845063c8701f7ec4bd528219f93d2db15d883d12a06c237722840bf630b88d82139e2a3765749baa91231d199f95c78a60927992170dab48575dc3fffaaf4e7d191dacd421cb34b84d264a5cf0182790fcf5c5f531252b6cd8d341a0373dd016db058e893d452fd3552d55e22569108e83cf3aafae1975736f3d1f938566d80f3d4089ce655aaa87ceabd5574259668d39a0bf71a238675c5b3884d57929c3e932f8f4e21e3a52aacdffc32740ef2ad0a332b0dbb7196cdbc4b807899ca1b52249451ac5f419199f0401dff4d31ae214820a352a5c9e0e42f1b83bd71c09cf6b05d7d19e28900cc656dc720f85437e9e429c83b8ba05824e5dca22d37f4e263fe0d44f603f61af56ce746e4f8fac80c9119608152ce74bb38580b893ffdc7b2bb45a6f455091fb401e9229fae4acc1f0ce8b910262f088e7d6320aa7e4334705feddb22f01069bcc20918020f6b67b6d59beddd2a4edcefba908afb616ef90b4bd9f211e4722e0623d09e5136fe33c570a8f127b41fd814cca4dc05ec643d84365dac3688bb5556c303604816fcc956ffd2813cf7f19088726cdf396f5d68abc7d9bf4b4556bcb3eae268bd4617cbdeb26c2eaa426836614706f112308174931ed7b26eb68678064a0167472c4bc653a21cc38bbc4ec295110c19441fce6b5578e0865da9d0abbdc8819b81d364e1a165cef69aa1adc20dc0dcbe32aab559c1da3dffe433028fc2847945ada39d7e37bf4d8ae61d55352235d239881fb257457e0968c018e7d72be80d874911d4075a0bfe94ed9dcba4d99ae1331a4d101c3b44cb778e075223e42682a84f577d4039dd82227f9d7f1aa71bb1982205a5c0c0ab904d8c3e2eed1d4b5e850f3b632ea35eb2dfd8fdfa92727123f5df8e3e11ac557243997d9713fe060ac4ab4f1c91e10698c514d1b3a56e8e7c6fd5c8d47bf0026125ddf2127f216832badd4a0f0fbb3af166e64cee37bff51ea712702ef9db844d6aacc6f939c68db58b5e16fc4aee193a7886f2a5a994634ea0b409ee05974be4be5dda5ecc74f8541ff46d3c9763028c0617b6def6dec9e5bfcf75c7610dab9cac20c7c012d5907b049babb090a6e81d5c9690c71d3a4e8cbadb98cf8d1e32701f23bd256b1ef8e3d5b976da74faee4c0b47698b56e5689cffa430b94b89989c37fd9366dc9375d69962fd6824d88b3c3e556d54eef2a0ca3f4c8e7846c940c7500a624d7264ee6612f08bb2b2fef2fbc41b6d8f68c151ed03809335fc0182840b454f97f310f2d87a01ebc76adf181aaf0957700270d02ac4876836cbcb4fa062ed4b863dcc8d1ae5d6788b30af2a1d92b75fdd2e3c421594826fe5071e3c6e782d0bd8d11e5280170c5af26f6fa3401514533fc671d41faec85801a54b9e97e974d0691aeafc52348744c12e98cba849959b640561be19a1d695406442fda8e2fde7ae8cacc67280e7ee104b50eab01cabe16fd4c5d6bcd3271c5852d6ccac6e6043c66cf42d00a5b38bb44101b6de6702827f89d98ec55a419e3ffb936f8aa8be5cda143363497557c77d76144af157a5b074a3e67278eb8449418fdd78eee622b2a52fe006d47b07583f9f7c04355cd28b23b609728f977c80b0ff1503dff4e6416f3fd206704f3463a899f2e8a439948102760083fa0521c842a8591e3fc275e1a04d4d959b0060052128a39c9852bfe7e38baa4e8c778d1e0683c78aeb3f3efbc1640be6739d999faeceff70f545bdfa3920542085c55aff88ad7e92eb74fa63980023b40df7ae77dbc47ed712a7d18790240c81e153d214b78cf799a9d76ec67c43eb8e2fcf6598995c76de15a9d97f87eb510a552d03bf51476a2164c51fa9a7532c92aea11415de6dc4a126b2a362cf9f16ef60ce60e31088c3bd2efe48ae94c9f04b697c9c7e193368f354ac7f6b326bae08d85e8d3bcb9c125071a6a096b5cf159997f930d53dabc49ac5b189835499128cfacd9ad0bb89bcd33ebf6f6b6519bf9c2cc5d0511b6ef72ac35bd0959a5ca0143a250f3efc87ddd3e975c2d190b2f9ba194679f14eb9c16d5fa1070dd3b39e85a7bfb1125c41d834e9b276dda74e972951cc7d73312c6b32597d582729de020aafdc134dd4b153612a8848a19b4a759c56d798f5d60d4528cc12b6b6ce1799623b0e9cc51a34e4c79633af718b77fb037ae54b14d20959d7e4f7109b8c63e2d6278b39aae8d57353b3518522537a7e6ce2e5ce929dd7970441c37d8eaec739fbbc187b948feb2e0769cfc34644cf8f5602b17750ddbdd49236b0daf9b241623c246dba15ab9add8408e4c39df5d7acecdacb73bbcc777cf0dbe0140d94bc2becc1dee18281003cc6ce48ae8f4f66e64d2159ca58ca429d206449e53c76466f29f62cf16d119821df45ea0ac2f8d3c40af67cb1c8ca86786b2fc0e28a5b9f5d679762195121e536f4cddc2d7fe5e11223c5125787a92a24cfc7162f94f25b2f5f82bee90f17eadbc30e1d33b55644e4792342cd6eaf0ab5596dbe2f52c7ea7daba68af3ddd7abba1ae34c8ba83b166c201960d90f4fef9bea865d2ccf6452f95aaa3fc857726eef948093c90fcdd77626d6a4d84f0390ad7f57efe2b8578fdb4a543177abc985def1417f9a5a39cbfb2b33c97409ff2abbdbae153daf767f53c66aae2d85c0adbb21cb1752ba73395743e9dbeee99f68aaf601435997e4aaef20a29693d942a1ef0dfb709c685a4993b2b0335a52ec81af2855da49e0c6e639ce5b8801526fcffd800926c08029fc0fab8a0dc501e673c6f11d58b4e47c3eb79c4e4196881866674b66c8c5bc98fd21b2629db6334c25d55d716c532ce61c9f6bc7c87a2c70fe70bdeb49d8446ca02b28f5a381e6ce1c9aae3c2d8f994fc3613c83a5e9a6414705782dd3b5fa58c39f774649436713c4fdb938dfd03ddc541c00bdeb460a0c7d15afbfa61297f37d5b60cb13da92f778d177344e34151293cbea26ae4b589a8e549382359eeaad44cb1f817b8e2c659d1fb2be40179a417d923568b63f6d41c3459db592e99b29a2c825ed4cb395d7e81388dd2eb14b8f2afb9d2889655ab4b9b1fc4625be4c17403699039f475fd5326665dd6fa5dd438cd3cce8ee6b128a4add69d0563b8d8f4af0b0a0ec34294a2a9b47915cd21b04e2229fa1f3f0c72168370ddfeb1a7c817c7762598ecf02b3a4745bdfa02c2e278ea63df9766f0547ced7615cb321b54875ebab601235a285bbcef55ba634f7aab4e0b71dcc60d8281680b85b5d19871b064267308f1121df62c57e995967851db78fae3adf806ff65ab9b3e372420d7f18bd310278cc79610272edfedb68bfdd6ffb54b3db1ec06996a2c70408225bf59a455e6c33feb24664957b20be8641a6ee420eb9e2a1a5a6e3cb0eb9d9e7180cedd67740a081523367930d48b902a0624395328476178475475b78b78355cc25b4aec2cd49be14420eacdbabc5a38795fee1cc95d2529e167dc256cf6fb488d7139547487c58ebe08c2bae2e0dbcd7558c4b062b45c1251e30fe437eba1a0848634f62f1c2bd905e517ff05f9e13a9076c7d128030f42d638fc379f0f222f7804b2871a3b7d223ea3436859551e8b0f96087602d1991909cecbb60ac1466a0938f9b328f0e2944d9964ed93bfb592d081844f1fe997d82c45b7df9827895f8baa8183333cdcf9676deb7bd7dc7909d65e8cb8b5cc996d443cffb7190f1ede8f61889764ee03e3ccd9a3f56c509f11eb715f0108b468f258fc6a8a4ef27c845b11dcd3ba039787e52801148f8186afb2c10d9b1e79a5a19ff902b613492759507acd89fa7fae88f751b17cc3bebbb5a42fdb59d2fda5480e2443a3a708179995c50720685ee97af41ab010016dc0ed4e03172261b314461fdd376f526519ba8131bea6f65e797938ffed504a6e79a079adfb6e89cdf7d9d353277c5809b45bed1d1df725dac8b490c65ce7269f121d6b1e5bac67fa8adb84f21cda2832e66ba19bf7a012034e6d83046c6b86f59b8765e45aeaefb45645152cf23e041988e9e60204a49db59586f4b0406e0747cbbfa7aea09a100ff7654908f5f7979a0a7e1625a078eb04397cbfe68b070d79c336c0771e429c929c7108ed96f213e86915bcc97aeccb8bf55e630ee9b0272ad9c6ac8b3616c528cbffeb3162bc8ecbcfe9f1c351856a3a344b748da9234ee78021c7792926895be6de8324723229b7e40bf658461424731af01faead15d8b1e466e43ff7844e2fd9037d675e670c0129f4159c62c774e0c2800edac8135e1c28f9856db3912d63d3d42f57ad532024418016d74ae092103a6875d26b91d1ca257f830d2232eab60ee565896cdcf0842db46ffb417746cecae3a22180c9978527d8d5b5883f718b9ecfa54ccac05e599e1336dbe04efb2d5d35c4e0973a11aa9932f13f5cefe01ed1570025d3227a1f22052e5aeb5dc3232c8ced20e7a41cadd879aec81bbc014d9f669ae12f6ca0adac5ff7a4b2b4643f2c58b4975dc8f8acdbdcc655e3bc98137f4f1650a8294bc5a587beebc5c52617e90a106a43195398ee26fdcb9d88b5d3614e77c9a03f0c1b4db0c2389759a8591482be43dc840d01aec2fb269e5fc40ffb19fc4ffca68a0c4516c8972078324cb73a0884c5a8df3f8d1818181bc9404eaeb437047119b5f57c7b998c50ace56593321871fdf780e39af4b9baad9b0dec012f1c8c029b668f7c1ce6b5bfe738f31ab0b7c42cb10bf8ffe262309ba664cab887b34f44817ab13fcc81245ea753670c4f74d40448a75a5ebded131c9c6d2302f4c506d3428851b5ab9bdab8a6f9ba0bbb51090eba3f5f43873a64f1d210fe7a8e86342b2c4e0ec4747ece636ecf1ba11f8b2b9a7633aebb52a3f7fe45d33d1bd36defd6b72923561774f0505ca8aa455f8fdd4f5b0d29e654d8244800fe0fd4db1636b066ff23254c7b5b4768671eaef6d8d4858b1ea4fd2c8fd6a78cc6e642662a2ecad3c5d159b0652ee70d19ba583b658521944726c88155b92b5f5b96d6810875bafad0d509cc1bf2a1dc8512ab1eb36399e85df48e7332ec5a6b177e239e0f9de635f55f982b9c875fa36e89539aceeb817b7aa221b04d995e3126665a9cb0de387b316c2d39696cfd8c56b6abbd8a545f35e745a8405b0445335713b5f9423e0cb0056226c5b76b2e49c2af4ab800e54d14bacd84e9e56111ff110d834664a99bf62f85248bc02cf9015f6c3d1a2bb2e1cc0921333ab22561fe314943ba3d7e3b7ae1ed326a991500c33857c3cd1bd4aa0105a46c0104002664a3dae6a35b817dc5c073c6aefc9067a06f22971d54248af5ce9c36066a24df476577ad33704fc31422d9b311f472edae7b843e421c9c479fb6519183c918cf7443dce06e91899df8799c9a1c08d4da3cf98f69e43b34b031e516a69832b99e3bd5e53f779d83c1334ec66aec50e6fdf5e23d53091aa88fd646fd3a5c270f1b5fa61e18634b48cd0a85cee44c2292d8b912253adb590c32458cc2bf3d74e4a23b4d6ac0832a094ad443c7efc37d0ea9cad14574b3ae1810b5c0a8466cdf8629107bb4ec2cd7327900b513b02d872ba0daea3554d494c87d6978f77ace6c4892a87428a0c739c0a27d2c4a316ca49e43c05d2c2775b7d869f7ebb91463adea5fdb406a021bd2623e2aef462da757cdcaf2a625acc2e0c28bfd2f1cc02d93c298d9055df761250b179c1b751a79ae49da175beadb1ab1565d2e5596444b97ebc7d6a86e382816683d7e86b2e594f1a66f743687181898795a652015577526242902ae44f134857e71bf23a06338f4f9f7418c0c3d4fea6c6a3ee802b247ffbcc9cfcf572ba3a1edcfbfe30a4ae761a0ab938c797c12012756f492a5cf7e106803827f9e6135eecfcd4ff0796fbef3b8c44a0553b996a99de212ca48f26e529631ebb93f005cc688d4345b608313fd4056654874578a0092715e11f40f91890f0057cae569f102f266f71bdb86d9887ae8ebf8105a1cea012c842edf3834104e0238c7f2fd8b785cb7dabb78ef2bf02a8a20ff6d938db47afc1e7ae7bc5729121bf1c51d9f99f7472553a45838a15027b8f22d22cb28182054aade6fad2417ae44c035163b16a63f5ac25bb99415125f388905e07f905164005d850816033b1efbef171153301ecd6e6eb787d01135584b91847c3700f7aa6750ff0e64bac66918a722b6b09f3f39727db722ce4d7099b56438eeba5449462d0e25f725c18a7c9b495c8f4f9b93270a352210bb626f165d556493856e0ab6e5e57e176bf8bd23f69ce2fce1cddc32efd0bcb85301e25e67e5c61470f7f117a5523479755f22b8f024d61caa49278087c71a94a4eb6658f242534146a87151e156e846a2dc51adb38c746bd565ba7a26a297c0a71f517853184623a8d4dbae18dcefae3731e23c8c55e1e12c74ca4f1251862775a6a65d442ce68640f04ec474e15bd2fa00ff6b7012a1f4b77f310df394819290831f1c36a5795179f4cbd74515fd24469a0949cecdff26cff51d77759b81c0d64531841dda7b17a44a914c8bb2b134efb1a21b7e2a75ba6df7a0337015d789e69ba976ac0b94408c7d1485b518261df84c744d7bf60f02174b570c739c21e892b21ada4a7bbec47f52c68c23e3a9323e54bce4a68e1340e2dea1f528cc4e8cdfb790242f927b267d816c1c1b4537878bb42c899511fa023a88a1392532dea7442990af1c92d29ad6a0930bc130d81f31eb98c911b40985c36f5688ee6a4beeb8ea7b366398f12195aac9bb9719defd9809699650c244e517ac851785852b05fe77f7d33b21cfeb4749f1cd0c37fb2f584dc16d06220f879dbbd4fce477ed57f4ad10035f86a47fcd91b5868cc320b9748a38d34635a1d90cafff3d34fc628207b2bc9e193184806abfb4b2458b87bb39b2629770f3c4ce776fc1d441db331f45eba49297a29d0c973dec21381b1017ac9e6d612c3a7d2f0fd076258fdfd6c8f3527257a557654f9aa6143ae6e7b19635ffd1e11a1a98c8577c02efcd7bf5ace9ec03d53329724d0aaedc84351ea9edd1615f6af9608d3b94171e900054e1ec9eb18fa9f0e7ce1c4a13bd59191ebde70229f7f0516c1474aa92c3452cd52137fbd0688db23c69cc9316713ed1cc5005e1c4f263bb2b34d34f7d72b18fdaf3b5208536cdda23b4bc2791ff7863b46ca9e4a74f01bb1fa8ebd2da5fab3ffd9bbbfa60d5150f0b1327147566835d8847baed978b5a74ca3231857610823bc85681946a41a16b981c9225552f83a20150576e085c8ba7a57fc29a363c70f78c68ad7368e1c57e87b1b8b1be7b28d7c114bd4fa8136365eb2b2b77c48f352e7a52e70249ce364433f046035284572963327f143626145a05876cc3e6356c87eb9ef5c82f87bd4d21fecf62a1af835da681a126d1f04e9fa19cd1358341c897d2ec078a052604f35383ef3a46862e9523fbdd8503989ba4a3c940678ab674d4d0a5ed4aacf7b89f715cdd4dab39bbc13911b5e1d96e3495a95ae0d0d8124b16181d325d054ba4e34baf483d95bd34a02cf4cd83dd0baa779385e7eb6f921db3d731c18b5269efd46aaea8587ce73f0d4986fc6a2e0e484936d43fb35477cb63bef232b44ae7dfd627ad9cdef27d5a615c01d6116641bc51d8be416af9ecc6c8664eba15babc578ea9823f42bbe150992d9d304a3a98214b994912d6b0a873b6365e268d0446601e09fff82fa7e8be7fa4fa6104cf9f1ef9234611bc9ddbc4813adbe0a6420683aec0e09a0b27bac0adb22fdd30a4925659ccce463a595c1fc5f20172628a6e33a2d8f9fd0be6471ca8a4ccd98e06fe34c74b6eb9ec453159abaf8d441105acde99219acb322167a3d7951db4b439fcb90298f01868ac58410aff835ac3ad6ae7c43a77a63fc80da374008944d84559a72edddcfe7f34a89a92e17cf7c5657e84110c664c52dec76d62c0508e039a31ae3f29647e443fcbbacf0c8862030d0d104c167b095064a0854f513cfa53e7dcb2749fe7ecea3d29b42e927727d2b6b819b52cd1a78f0cb1e86b7743a7c4aa8b25bd3019596269d50e52a18c609a7c494bc2d7fe8bdea6d5aa046db4da5e9a8d6086467e3f99b84f664ed4890e26880a726c382d0f0df9e46d6f6c12d056c6f865c92f3f08ffba15e65c21e88e2859ebe0d7f11ce2cbfe8a55a1a389b05acc178be2c189650ad25a9ffce53f65dcfbe4653e5561959aa1ca0b96879d92ac2183f4cfc499c8e6b0e6587d5a9193e6d4a16dc113b7c31d5977dc31a025ee15c1f5916060b9f612e30de7e268c28e7a03502ff5bdb97002b3f04871841e251564527494b3dce8e146df0b644f006304fd74959cecd02fed17c39e0bcff41f35ab45b9ebfb1065d662bbb96f42542d019e97074e573aef524a1d23d825c089c0baf9858a06040d8a5cc8383e8078efae75f2da4bb5ca996282ee1517f5764818e376bd8a1ec00d9d4e3ac3563a1b813f5d9524f5b1843645acac874898fe3566c41378f819cfd6284604367503363750a82201c5d588843fef83901ca17b8169ded832c6d077a2f9ff7588d219c939efa47261ff6208c1bd3dd089f9c04dff2ccb7f50f53cc60b5f953fc7fb39c921770a52f8bdbb34e436c3dc0a50d257dd5d9a617bfa7219792e93592c5c4141f04b69213b3da41577a97915f5d53b0541ac701b2dbe8320e4d8aef6593fccae1dc417c7f83d4422660f1b0481c8fa78844907c9d0f786be8c3a7c5c4a330b91bc69d05d12e69fc37fbca59fa422da3b2325fcea04143f27900ccadeb311912b57a281e199fada5d8c6ff62fa5700649cb0bbe0495e50e375755c417571c9f4770f102e615cba91cf61ef5f9b9d55652c78c68568d8bfa93456272327542db4af05f9b8c4b393ca071d1677292c43478f67e988d7cd050aa0086f235da90d7ff69efeeb3c9f984d6ad3824cc3b13d6df683a51a1014be8cfa3302e978982993d3cde2be143d850b6b73cd12bcd9ee297ab49448cda8e2b67f8c40515f44a831d20d93807067f563bc523d5f81399dd5dbba603a1d44a0abc1a54f5ad20a190a41a3963e2a7bf5f3d35ece9caff1896fb079d7cfd23f4cddf262a1029717fade81daa78395e8571508b842b4c9af1cbeaaf9b5623daf19ea58c0a0920597126c57ff9aed9fa4f03377d8c9d449c6d36f4b903e6a52cb396730758d7b6be279a2bd80a3bf80f3220a52d321e24f0508723dbb5c9d66d9859d5794d84a9d544b53b9f0bab9f2ab046186eb04018df2e60a6df45d55fefc92714d3aeeef5b85de229b1ac535be8e7329cd566ff67bd8d7cd733ffe318588498cdd1d73a1fed1523f72e6c8dcce0239ba6f87002e06acf9b2ec96966f0534cd2ed71945e4b4d6804d69c2177f732ef9a6413ea874cf559cd404f997af1a2b4a47caaf5df1a927cf9ca3c73c58b96016c9cc2827dd8c023600688c6facbef38ea68541964201068183966b7fa4966ad74e52c09f955dabc800599979a04dfafbc58a9b0a6945df33abb44683974f5d4150713387778f7baf50cf53141f710815dc2df271679ff58cb1d8c1023a50bec40def6bd32e5feaffa4d16051483c6983c90930b9d60905bf5ce382ad6fc3731ac513e3681be4181c9e5f02deb14cec0a59a6205295751f6a42146c56d6594713134e158ea3895716a6d194249e3842ecfba590eb111c271c56bab1eedc3f07f1c413df91c63086d0cffecc62fec696132dfab4ac312730f8dd8307d2d5264290db32a691e22ec2dfcf1a268d03cf9c370d1dc2e7881a902e78f80d1a3139f07ef98d5c845161b3b6f9c73930b8fce65e4ebafdecd284955070fa945bf128baa25a4fae51a5b265220a06f60306bfe0f6ded008333ad5f9612031712655b3beadbf8305f3b5fb04387fe95b9b3b9869e500d597186e53f671a8b0ed0bdfb35a82fb4ed434dda91d77106398e1ca9ac060c4b17838ad01aafacc457312404b18b997c9bb7803747f881b3b83e230755333a76befd5ac7e16a9ebc2172d9c7b331cf06932430d60e1ba0fc2567d059d49e7f83643481bbc67f7592a1600d42ee1c55795e34b069350decec7a9bf2dd76708584f56bd85345065692904cf0cf280f9c716b27c45ed8c44dee8baf57839622dc9d7de26cf214aa5b3889ac3e113bc3357ce27fb7f30f9d1bb50fb85f188dbe47ae9fd8536f98d227b31e39481a29e5af162933b831219a3603d5d48a085c1b197c1b6a2ba03cd8df8494b60a7967712942378f5f3408710e6c8ca3fd5ad91cda3402126931d534e8ec8662b24035cd5c3a47deba380e25e05c1b5c2bbe1826a976e24625c722d6aa7b7487679b34cf60b5acfe443b18c6a58644c1f7a01225c4c98de88d6be84b4af4c6f86cdbfffb9249219508478a23607fd5e917779de64fc3f75a1aeaf31f01cc256762664f01cd066c93c66e2e08bb59669f1212057a49f9e324d6763de7ab81d0d684d41a45a60e02c2d711be7c66f8d712c9c3f4080391db67361d4d474c09e4cfb59a1936a9a877e66534acc1db9c08634dd295693e039e97a6c32a5fa0c4f52cfe53c7309f726699d73c6c553d1ee20da07b5dc0403dc38a26e08936c56254375f606c01bcd482620da55549ebd8bef8aaed43a7e79164643f4730bebdcdcbbf609d01f6d14c885936eab541c5a4a8ada7089a3f294afbf67d00e4a55dd513eea1f52205f2564b22b226af77cd5b2a8f14bf3e9c7215c1064434ed3b3e686d1ec629265282ac2e927c3ed4ca3c6dd63b2220a42489a3347a010b4a72cc7a39a9c9da640d465a2db04521888be35787d69fb59ecf3b5fbf563acf755ac9fabad93d5cd7bb23e0004cf855a900d878160df672001c8305a378b15a6c9a7ecfc7035e0dd78a16b3750463f862497b750f9bb8ed0d6e31f95866b8ce6435af30b998568da72a1145d2573d308cc47dccb743eb744c9a199e8814c0ffc1a7aed932aec96ea8007cf887fd4248bf69ba9991eb8f71f24decfd6a062be8028a6999b0d40789de01e2c39074e4ef052d3de99da76b0f94bcb81509a4a34fb4e9df435f892916930645dba35e8ca3022fa36a0c54da782c72b9ded1b31712abe62a2228ed8d395e71bf23b26e156df960d1d092f16cdcb54f9eca7cffb564a995fe045c671b4f235b1b87f1677b57556170184ec0641b862e8278bd2f6c978334fe7a88b9f3e8c19c8f60d9c1e6de61e1532d3ad0a4df386efb52911fdd32abd2dc946e4e523a4d1f9864614ea569455d3583b43cbd449e7c71b36e906fbf0fb78c42f392b0bcd41d615b598d966e277188fba43049064192e6b899fa383ae8d83cf3e9c9e387bac75b6cc261dc4e30d876d91b4eaed7e60dc5237527321d69518890ba8e7a32515a33acf390088171ccc14b001fd778df453978e0ecd12850050a6d3581df76f7adc0eb9101f892dd59b66ede0eb45b8301946bf97b175789466e4030fa92f132669a059aee20530f4ea98195e15d37fcdadb6ccd3c03202758b8c2b677f7e3ca444652d18c2fa2a4e4fbd269c79d7dc927fd83967a1ea18feecdeffce20d6342f45db525b4acbc752fb96190e3c7a8c178084dac1df90ae0b985871197ddc9e5cf0d1c465aac088b0b64d8b03c8239b92f749b52a359fa6a4217fc664cf6cbd020a52fa98b2f2af627b97c24b73ced25176defdb8ed4e47ab5d2f1c86853a23234efd0e9f68ac3612d95a73bc154e387b2710b8bf36542bf15001d4630ff0a7c1ba3177de17bc8c138ff067f8013832878e776715b9790e8e6819edccb2816001e311118408b813ca8c0f92785afee9f74e8a451579c65eff44baefe1c09189fce78e3e8d6b6fdd2de18d3c0553bbcd543842d9fbc6a7803b2b2d50b0eda8a8281cbd62a008ea577bcc6490029e81ab3a9eed69cbfd700687523db7fbf840b2c41f8452e99a5bfd70b610d76b07375518a8264026f9d1b48edaf7bc2de78095c19f4f2b9e2e35c90367ecb9605d7735fe62c220e6f685ca1f9e71d845cc47aaa4efd613117fbd124364cb7a13e3483d455142e2fc3b4f59bd09a500deaf9b945978cb4eefafef2adf36a52a43f690b87de1438df485779b4e8ec636974261bb7bf3a56c3f3b84a79ac2e76665f58751581df8fd7dfca3a7dec6380fe14e068ba1cbe4cd6fee1441fdc8328ceaf22603e0e90b79141236117e5e5abfaf601c5597468f5e36c9c31ac1169024c250c612bb35e4667c8c2da12ed2f9381b1c26db8ca171caf12fba7b9946b4cab98e919bf01781df594220adf3252d5be0435b7d426967bfed25cc32789cd97c63d387d0ef3d891deebb9028f5de14b994fd94004bbe27030a50b7f504e00cb61b34e70f976ac4d0e1079ddfa33dd02db731044cd8ddfc833a838e8165d8e4af6b790b4e288689dc2a5503be5889ee3ea21c0c2f4208498f89f12ca9ba82808bef77c4a8cb34f6b7840b2f5dd12bfecf878c49e0fee1d8e02192d0ced39c578447955a2e431f6c2b53332c8f0f7deec71d568e9d9ad92975e1a8c263cd33dcfce55d922cf4ad71034532a88ecd5116d53cd65ccbdabb1af0ac74dcb4cf7f4e49077e27daf7e864d6082a856ddcc50844b832ec30db348babf9bb3d937db025547b0d3dcf46b0d5af48f7c946e267b4a0a58083d5bf3184c012d5d9243aa1516efb00ca5128fde618ad6db0c732ad28c78faa202315a825d67bc6ff95a3874b8051e2a48c8d7cb3b54bce2a04705c8d36b45cb870f38f64876ffd718ffe80d9b2d0c8197acc023aa3460e56fd14c11a04bd8bf64de312d693ab7445e8abf137eaf5308608f1f6c8484de1afa9252c76f3fd00ee0d583115444edc6e9df0500d43cc35c541ecf6f16a6925a74b596215f52a841586ee6fe11f46e34d7f399f14bbe41a855262646bc317c48cca42388f997be123dab1d33a2899d032a07d0b42eb6e9dc6a6901f2ce1b061957977fd87d8195515bae24807cad9d5e6c64b52a1ac25fa98fa10cc701fbe0f0f50ba061ccd46ca0c0358a4811195dc292a9d434b2b5b3098ef7a9fbe121c6ff96702ced5d2da61a0e55374666a13723ce5bbd58033b0607053f9cf29ee39233f95ff8189996bb385ad8c6bd2121827cf51b312e0ff602a9868b989c7abcc4eee0492a2458e737a4bfbd924a39f862dd027484afef35d33ec55ddf0fc2eb73f562edd6d61ad9be58780fbc9e72ed330235da8dcffcff8f0831157cbfc89d814f1930224509e431b4533576fd080c44fc577e6281e24b18a19a646a1cab716e0b187bb67a7395261c6c5fd50897f32e044736722c2e065b4366466fac85b861ce4d4bf03b05266716c34200ae559f34152a1be47f85c878284978b1befa97249ea99e8c8fa4a1318a4614cfbf7ee68ea38020a0a4ab6def7d2fa1182a8abe8690a6c2634a7f90d99a399daba212c695fa43c5d9cc7b77bfed82425d8b1e8817dfe791efc15a2b306c9fd4fcef20c0c691189815cb55116f32f180ecdf8811b4915ea82fe4bdd14b1b2838d2fa0f2d7f2271b01478007b247a50b81cce37b6666dd7da7a4ac95cf20d685eab4dbdb80b34445de16ac288d97ce35241c8691aab6398e2743e9534f8a7a104fb88f2c34a0de8b7ff76e6c1d9000981ec4d8e5dbc6f90050e20c960879e1aeeb7a737e5a549025dc2160db39b2b68f654f6cd1a4c128eb55ade49adcbeeb733e28bc278ae0011b52cadad34c175c58e16119d2c54483c2c95fbe3a20c864892cf4723acc35e2be5fd358fd38cd3c8111a9956ed62c7a9cc1bd08c6b473b300d10b174db052b6258807b295cbc2af802a31c55cc20b1cd21517eaf6cace35b9000e5181628522192cf0ac3f9f3bcbb0d1371701e9e5a5df4331d952d312951843c3bb5ea3bff7fde960e3c36971f51ac9eca188755d9217e6b0a039d1f530cfb6a851cfe6c3212c8dd841cdc790d38bc6656fadb65363359de6200005cc53e9300eb0a607971b778a44a337968b90058452e42f60b95e36d7041585b8cbf46b4f3ab660db6701453387456dabc441dfe28c3d2a9e08b4c338927011f882e0207fc7840be4b04ae75adc777cc52060c0921cf30dcdba0995c0324c3f2c69907c6d01ef102f9d9ce49d762233def1fe5f022b9e1271c25036dfcbb189cd728b61b29824c1e53d7ed4f4b30b7ad19c7788148066e4883854cdee94594e830b8ccde5c9da105bbd38e056d070561483fcabc420fcbac31f32552d0b804f2314e964926e5c3c776f5b53290dc78d2b6dddcb8cd986481f5e9390e287f5b7d379de6b721109eab4cd822aca533876538369f325ec2b2ca36accdc69a3803eb3b47bb54e3b7a94ecd7b289e4a4e1d6a393436fe164068e134b3e1fb785d4b781433a73661b3e9e14629c738c6059c0ca337b4182d208b10ba28c9dbf79aa3bed84fa0703d0b0c9b074b598590ad533b11762e3ae886ad1506ef5a2e50c18e906081718e5f24ec0ce17b20388b56a10026726de0f904288ab3dbe4837e26013e9a03368f90767bf95c2624a011aae52aae4d06e08173e791a95c4b4ae0cba5fc33ec081e5fb2056310b49e6b74535e8cf9f8fa36b1eb47a806eb06d16a589246ed7214ab5e8d9140513a27f95890dabae551fb8ccdf1500e227c09c6fab61dbb51325eec3e26bc903a02b009f03fe6200814983521485918d8aea551ab1cc2123dc120d5607dbb783e7c4eaeb0987a32a39c5ba9c7626e637f1964f0b2faf490b0b33020573bf16197ae15ab6df148e0910d8010a57c1297087ed5ff8c21c7d999ae4152653051f1604912953b0143d66b8c4d24bdb7279292a11744075e9b39256b71cf4c6c148caf70f1f2a3c6eb1b7bbe340d2222dbe3e5d0e875cf41db907e1eb3d47e9b92ef8535f5873693046365d7a56c148823bd79835070ffccf2e8e4c5ba58562469275b2850b0133cdf614d501775c5afb9e0692bc16bca5cf7cb6e5686d88a636a10c3aaeb76899cc7d569dadff4161b2b44b205d968b3f5438bdfbc3e8877976d1eee672dac199d339cb227768e6c34fb0740e4e7ddd9052e5241bc9075066e5355ce524721e0d2e77aa5a2f64a839db2e9fd947bd289d6adb1631bc9581053fefccc165d47ebb965bfe2838768134315e99e46f0a80ff7851907832de26cb544e1b338df6d831f9bb5a6ca9c86d264ac57d338fa18063b92d91aecbdc537b02593a0053e770188c1175dadf67a3e9721c881bc60ca4b80868d409e4674e8fdf56495174346e2f7fb91c850981e0516b41ced3f40185728d03b35e591e3adad4173f653822946d34c292d20f5e692ff4bdc166cb577970270b60ccfb19bec7a8e682f46dc8d2b0fdb3991f6b532c95cf5d68f860012fc16d5e1644150e058eedf3bff85b2df98cbe7adb360c82f81a3b5cf33aa272946aa1e9f529bbae53d385791baab3e3a507b783fd77bea7bda68d9828e47daa2c70c0d3acf9a6fe882b76a197a69f3036994e37628509e2a3a435780b034fc052d6e8aed99599e05e8ca8a3d59e7edc38ee878c1f5f6caa2a0d2b049f704770062db304b75e7385abf8f5269d710c928d559ad4a559e2b4a1b056f1076c28f6614cdb4f577daa691cf1256f027d2a7fc21ce90fbc6cf33ab02c644a808b1b965107c7c13d8d8f77adc4faa9740dc95eb8dada0c66c067a9921bba997bd6c9301818a4e2672dbec8e00e6109eb4620bf396aa8061cd1f8520064a66f20549f591318ba8549811c4cdd1c7fe7b87a6ef5fd5d5c19165d4d924afffb189fd66fa7803ed1d4b15b808b42452a1e5ce275f654c0821cd4d3a446c2f8cfd9e64ca90226c1472570a11541cbe380d7894d4d94a2e469c0d4c99cbd8d1029a0fb62e2ace66d8cb17b2278a88ea8a544eaa94e3236050366bcaef5cd49c778b2e6f3b58d4c02d97dcef41a3f8e294b48ea4cdea9319b94a5b87116f1a9432347c5273bb45a4335c392f9f037aa89b50cbcddc9d607b1397c10e336d09e22c424afd38f6daf69f1b3699228480547fc63719410c27859d07d933491d4146dd2640aa981535a09bfd3e245dceb799bd7a62b5908054f6684b1c24e0e05f1e0e31b0737ddbbd4e36526b3c88de092980730ae114b7ba5492a6ffef2169b9cd6a5890d3a9551c10ba5d4fdf7aee184097a09c63f4dd62370c7393ac7bd722b85418c111b4284c3879380e6a660d23943810f534a0e5eb62785918d9fb317ed1536178a9e4d49ed5d2ac919a84a7b157de23abfe437b44440f3098389434317a5134320c2e7a487d8013c2ca3b811fd09bc7efd9580bdf71744499850e93ad2564a1e691fd7f2e5ddab3c766478fd6a423d3d2ebc45535e14de1fe6fe5d3d56fe589df83a8633e326b08728cbef93a03f30f7e82277f84eeed8ca15693ba42ab438cdba1a508f21b1abfa12d15c9c7385e0677358693909b7f430f988c179531a6e7e7e677bdad1fea8035529c8c638de7cf7f0a428c6a3e986a657a0f974691f36f6572327de134cadd2cda7c86e56f52890573dfef2077ff54af573a95abef6e7c52e4a9d735e7be7c0d418cee0d760c900026dbd44fa891d2e85dc69578c290266f63c68313b584f4751d0f7c4cbaf0b9a0d254f1c36b6f0129dbb2ac1003f4d4f4f80b4740f936e176d5affb129e9217017b13afc5f1befce48d3d83f66628556eab93af9d2e1317e904441d03b8b746e5a1c2dfb8f4e89cac369394cce8e1cf2631c76ea11561dd1d3be04af5da49f418e53d262bc097bc7c8919eeb6e0d475100f593ddcb2cb2d99c7dba58ec863f99e9b6e31e19ef2b4aa0716149f0c0a295ba739ff0124d1e702bed6bdf94aa3632e1da1730ec8213693218523ada1693a49bfeffa7608368efcfe34280226297f64c78ebf606d3e005647905c60be625ff2d880647aca6130169847fb3678b747246dd404417d26332c94f2b1aec3236ff1fb2566cd47c12317d5edbbe13b73d34148678dd0ceb711037d398cb9abe0c3805f67503c9cc3e8e6e5d731a74bc3397b78237d6f955dc81a192b826b93a1bbd4589fd96128edbc3aa19f0f2279192e2d0893fc1663649fe5a4c282328cbc86ebb2fe03ed2a481894292782eafc83eb6011b101e0a9cd76b01cee931b0e9efa9cf58c7c8f2c0906527df1e7fc4c970937d5e43d4db6333e8ff3427f10df4453bb170caa39c26b4b1acbc92f07976138a5e741bf7e138fba4750e521acee639e4c78540a93589d8d53f2d98d8f0ff88e5874d1c3e52dac9c09eadc12378c857d735ba769e664f5597dfc85c3b8b4810e9851491ad3c8684d5b699846c51a92caeba61fa2a70dce284b0bf6cb0785f74b1cf12ddfb4464e6613073e8841b7142042850b8605a2f3e4ef3a4454889f99ce6e754d245fdec4041742fa34ff3ba1012e90ee5809b70f97caa977ed077911d3112ab6d56b84eec701adf074e1b6576d852bea25b6a817eb6c3ad3863d15cf72963470df5f544a5534febd462f443d714e8d30e9b47485a391a4702d12191631644042220c232af875e059c7da6c14b0d073b01562e763b83f2441eb05405e3159899494a6ba6992b4de0b563a8446cfdf4eabe905b992ed772f0c3af087cc4b2a850a35fc027972fd95647a7cd6c5198e351cd1fed8c10bb7f03e0af98804a109f40bdeaa86604a9114c7bc6a1ec8f079caa6d3296f3329aab19a84e6af1fdc2d2fd967801c5b41a78eeb45ed75c5137a563e8039c832db8c1c19b465d1ef06fba294b5c3ea290268db63feeab02e85339627b9f250b469584e4ffaafd7bb5b249b4f076e0f99ed52c8578d37f0449abf1afdb2bc663cc177e8c9ab1b7a1adf522a8602093d577915cabdf6edd05050497a3637f7042da7a9aeef44cbe1566950defcd256cf9b84995abe7a161eb32c2db9e033d33729e490ba86703afaeb38e3ed14c0de7de2b87403aac8c583448a36e356cd0e028ce0f23ee28cf935d03e58e150536df36c7eea4d0a7191cd500e9aa4c3e7d21aa01573131414629ace92f153b5ce6ea4dd7bd83f949a755992799c054104c864501272ccdfd636ecb6170f2109c59fa523fcced8485d55f392c20e8c3af8b500c86a78a82cd6c0a800c9bd582032dbc23f54ed9ef5916cac3f5778bb8c57d523f3164188a78aa78ff038414d91e7b69b8107910915733290c99b6fcef561b3466dc748dd0f3d1e9417d49675db62d190948c5d578a3f980d2c1f868d94c1a52346aa23b976dbf0e79717b203b3090b4699f6a76eb12db20adc0fd498058aff74e4f35a81f28457cb48e59d950a750f04278b2db19327b19294431eddc3bbed3bff235705b10b3948811f07d03badee543e789e9516a41d773356915cc6fdf348e355f0561a1a8222cd00cd623ba6868607f6473dcbc7c0c1a94dc58829edba05728a5aaf5ceb2c3f11dd4df98a402dfd54864ce0ccb835be3472140feb06c600688d4d213ebdea2358baa22b74a280a19a5782ea72241fbe5cf3d2338809920a48bb3896494ec1c6b5f9eb071454609e6936a5887bcc5e2c90830a70611deb889fc0e4e84b78e649de3b066112480823c8be1462713283f4208fe61ffc4f99a2ade0a0d96a2866e8b2138fb4f086c0a01c555a97f7c69cbae6e6aeb499dbaf0b7c09328d47ae12973737c801e1e3538159492cf83344e0f1aa2179de3c3d73529744f1a4a91c1a0230b2b01c2b692aa4272b96be075eb71fec81188ea919ed08779608b340e5527599da483fcbaf13b466cb2e4b92ae1583fb02b3c11eb95e18ae421f5708182865a9b01c49e922aa7183bb0b2a9950b76dc170a8388f79130414195eafbe0fc698fd8221c9329fc6dcf2f529f19eeb0bbb87ac371a07f99fa7700ead7d8589b67c51aa10632ec1d0106e1117568222899d31deb11ef6c32fdc74cea2cdf546756ac4f3780c2c7ba4eead42c4fa80612c42cf8acdc4ffcf2f15c5970635feea7c7d7b5638ff094d2e7153f2edb5a4991cd8164dd18a4cc60d097709e885fae7b7c511c30749d5abd882f9f97e7e237323e1761427ab5d28d7512fd05ede83a7182269fe2879784b1c3080bc85b03764098002beac529c98b4abba9dbc8ec98b20821a6774f2ba27b9453e85ca87b813dc2ebdc4aacc74a3bddcad623a85cfd097494782a3b2e90c2523f230a0cba5c58119f80a2f06c96496d42ea6eb6545cabed8ef78d9c232aedb29ca05c7b132112b73e16bd5157bf7d3be1b618a33279c7a6c9ab8ee4e3be08c9e74caf724cf2092eadc3f78e893fd015b70e54814f57bd3cd738420dc0a7db3ae4174c703d131e2300cd68bb9910fe56040fc3ec8398583c66b475d9f13887c1fe3aed4f44c3837b7b6e6ef1ed4d36e7ec26b0a5d977140aaff19ac6e869f8e9965b0b029046f29876918843fd820bab2e7fad7640e1d17fb2db0fbc9e66b830fc5471a4e270dd0b9191a4fc60800a0a49d0d7914d5df1890570c0feca19e47d65b5e9ea1e2d05185d215c15f0071cf933527cac574c6cf5b89050d6d8949b511a94442bffff0ac2fdda29cdf63dbfed58a17df72555cacd5b67197e7807cca4782bf16b925d9761e198cbb3d1a5f37241cdb2414bf379210529a0b0a4e37babdb60413c1e57a490da8f1cf676b950b4d6389f9455b1acbc12fdc1b0766f7936c47288b3a6c80e5b2be8a9a3e1471fbe8f2c137b51c29c381c70b3a82e7aba488851baebac8568b5e8e309acddbd4c33b83f97525929dc1f31095e024e98003f55b422ac06da9f4d55758cad35272b36d5a3fd6fa251ce114874147194cad7a1fb9a41ce45b35f8a16918fe07d2e67d651cc5ef538f08f571b892f16442544f36c710ee19dff5f6c9f2dce3b1303fa85e49d4786a040c6a589d9dca1db3e0ea7c0d7a075697aacbd551d65fe9adb87b26e8df37695baf4339f5db083ed420b929dfc5d2c6a7182263995e5da5e9e9028b46f82afc478a17dab2abcc2efae1d343877abc63ab396d2487a2017e7c25bdd936f15cbc97447af8468fc6b7527f2a63de97c151f0ecc6db5712765303180f9355b7a5c43ebba1f9d3f8812f28a80ed8c7af2636b025ccbb63f78044aa816c6852621f13ba8dcd23cee6ce9a44a8fd7c05be74a3cc5980ab799d13ea3ddb47c253660d97020801ad84e13252559db710141cf34928567ff66e0e5d49274447552fde79c7b06b0ee4ec81a9b8fcd3ac3c1577b1ceb1fe97678be314983fd723c400aea84f5e4ead92dd4f29787dcd3533d9ab98c3d66f04f36b40200a20e6983c35bb23a77eee6e04c098e98a14b84a285e2217d9696d7300f3aaffd196468116a11a5cd2af99040d9adf709c97db0fad08b99666f38a92cf0a2e7e11a36a1340810afff60a4cb8b360be372c2f6b7725f864e22371183783ea4d7193eb92c9a72ed64da7923ddbdc99d4211fcf877d324555c0205d46e6b9490b1356fc7231d1f0344f1108c79c52ff287b9db41d8f23e662ebf2ac4ca312d097a1150eeb4d641a40469f3f7ca131d43a254233aa5d5d256d8ff871f191e4ec55ac74fa8ba26205a25c3af616e138c788435959382f9d184f731d2c975512e9e9e251686bb9a1c6384f8870fd2c6234440a88ac846e85c3d8fafa8fc54c37c7acca8d25d7e878c9ddd5607170c9243ab5f27a7c3d4d035b27ba5a66c9e09dc6e3931bc5ae16f02c27ec415c586cf554bde71399c8b8dc7f2b8fee1b257b14fe156a35c2865e8387ab55bb4d679cc7558b67fbd259d2225dff0042034679dd74d8561e8777cc38ff0fafd45c05ea35444468a60d3f352ef2c53bfd7899c2aad729977a972c4e4bb2dc6ad57bc6e260e6c898ffb0d7abd6059d4e904146e6e73000a4e91301c0ce9ab7fc24a7236ceac7112a339da2df1352fd299e72fba2a46c0ae76fc6af7d446ea3c06dd4174e9289d80db4fb0b79fe5ab254c18cf232f0ca1f6aefb110b1bd089cfe9c25ce2c99f0c9ac5dc0cbceaa99c2dfcca80f60a7c464e8599d377aeeb7345efdf40d31407fea6a2f50419e3fc792da40cdffeef3cc8692ab01cacbee165ffed4cf233333ba94df43da81c01cf7089d67bc2963674b1b012b9dfbf4254a272fa9469ed69a1478a190fd7cc082064e3e0870cd7a5983a8fd677fc70e9abd9ec25352e8e266f56c1e3b118d8eb49834092063f17320d3d51cd3166d9e0206c52e9d3b1517db49ba67a6f946dd8cf2d30b5be000f43b3f9b11e983c1b9fd18e4fc8ec8befe1a402bf512f37da20ccd85b74f0757f3589148f3981a13a7800c16bad0cdb839ca96e3e20d7a81a6527d71add535595f13f120ee8712fb4d0ec58c58e68b3bcaa6f8f03ae2c2fe1c4e0e758498d884670ad7823e995425e544cac4dd495dd7543623e03596315664ee83a29023b4d8a023b95eb6558bbe0bfc06b8bf46978adc1fe046a4486461c9fa70b74e632e4a59bf42de3b7f56af8e9322f7aa462bca93887b78d86bd46a0babd8ed4b8801e647e1bfb2d129a817d57f6a2ce0ce960dfd721cef1e725b02da17d0d7a9c750501191a3fa2991fbcdc91bdcf0fc8c912820be7820d8fb60f2b9f5dee464b1c84e1204b603f505c564913bc723c4e09e311da5b2e5f99a31a2412e53658eaac796b1a2fd8499c454ebcaffa1de1b79963bfcb141f7da53a3c5402279a486d84d27668d591aa0bec1d42fac9463b14da872e57abd4845c1f1df08f5a8f1dba141f1c6e00073a3aa3dcd2383eb0d82efac5e21b6cc7d3da175cb6e1b96880775fdc2e7e44ea33ad535836462a2f7ea57be2f0befec8e381783136339f475a83d9a07532f5128b70746e1bc4106cfa60884976093f071df3ccdd79794ec61612386b5997eb236454bef75be15712a3b3296adeed62c136fde525c0ce6b90db11a7fc9e6fc1ab6f23ee49b2d3cb39fa58df38e730e4b93fe5ddebee22863d50a6a3f5695a44de35fe10257a096cff01ca6d6a06c65e97c26361b520d7fe37d3c77caa4d2820864f12182221e055727708eaedc97f743a48f7295786a46f366b7ce1b793ff350f91859f5406962e5bc38392be8ec16e861fe41b907c74830f6fac5cb5c827fc6bf3608efa370c3245a0130d8ee1d3e3bc147b4a605ca278f3878cafc7627079c4026c9b5ef340ab4f4994a78d09ef66d4b0af463bff21c6b4eed5c6dd93bc8a72ee6697410f01fb96365994bcc00062361f5a7fba090e6bb2a02838abfe3a3c5a67b326ef38103441f8b9f7e53ae5275b7304876f220a3a7c2cb3e7cd51b82e2a4f5500847e3866bd144521d458ec6b69650f0971942e42191d61ab9b15564b7c4617687148556463ab2456ca353a2f65a19ff995be355b53eb056761debd48cf257eb3a86ab18270d370298039b75d624fb852e659d50a6b7fb9634d90e1095286bec31609126631d0b84833d74aac85a5637d7e1bee4d8ae9486bbe78676227d760384922abd3fb9b0b95d8fedeea082fad833c2fe85803b8e6850f3e6588e1f918f3d8ee6eaa064075fd9b34947ce71676796a8c132eabc83752e58d25994559f8a7b3263e5f0dcd6f74aa877bd13932616ee4acff7fbbebdd7138ce31ca8a1775d926f9a57f97f5e1ed891d35ec4cb4f43a4b2b23205451cba3874bcbc82978243e52489962a63104da6a14d85cf3f75584e75e74e75457d6409437bc8bc64f768d87393d606691f3f269385b0b2e3a50bd56fb8fc1743d29ec8f548e0ef9b2638112162e716e18a6e6278e7f22549d3620477af0903972bab48ede3bdb481301e9d2bb9ee930b3e57bd47daa6e24adbc0bf15147c857caeeaad7f4b32df9dc807d3cb371fa41f9e0fce575e63292483f0cbb48f2e6f23df41da76520a3e6a10fa689a9618062216c2b5f52647226efa345d37b5635652311b0c9bf340cdeb92a96d97a053dfa38791d641220775bdd8421a7bce53eec8ea9377cc436a39ca51ad5d719ffd74b3551b35152ee769713df8ce17530962dcf98132036519361d2b6aeef2f27c084a7ad49f0951108e6dd3e461d4f5e29553af4d063c0dda54589bba671a45cfb1d21eb5401b79ad9bada0cf355ba519a3655643399900f0e5fcb31f0e965ad7a1f72d8ea9aba50047f019332287f33f7958f1b45e274cebe97b3e1e89379b356f582d28855d281774bf21e7d74f71c2204b673fca924d38d2c6f92a96bc53f69e98caf392b24a27175b32431894c604427ab4ce37505e03bbc249e3ae0b62411816a956deaddfe6b2e1054b3d8d10b78b4879bf6fcb2704a80beee2857cefdd24692e998d49a007159a6ed94a74c4d53eb2b6c50e5c557e47230e082874195098f2f2100e62f22c40178d745cb75db7c42003ae7edb2f1970087345b544834fce602bb3b1a0032aa6a904f346bdd110b72a9e451f448cc91dc9dc5ae0733f25d5b1065270bb4f401bc321ae38dad78b6d260e524ef6d868e3cac20fef058ec810bd5324947225ffc6aa648479cc8c4f8c0505d36c65e3c997237c5924dbbb1ffe64fb316810d05813141f4ba6950ee614254110a938f5bb0e963a34ead652b2431b45da1631fa77b14dccbcfab442d0af96665746ad4b640713fae1b4c1cf290e67183545f3e15aa41956d7135054b04be3c0a71e1ebad6dcd0732d6c1118eb0c719334d93890e6d2538fddca93fbe938da85ab1c50028bacb9ef23783be162c9714643c1e60950920a507166c7ca285913717d40763431a9c8c7eeae0b6773820b1a7618ad42dd1a011aec789a73cb84b7c6aebc521a5c5569fa191b24b04303fc8ec4b91add984916616a8e148819965c0ba9454b44cc924b291b2b21b322d7e9d9d06ae4d6bb6e7719382ecde8a86c0efd8ca1c3baeec80d55c981857a7d18ed6607f2c1c2f19e358a07fa71784c76dccf6ac13ba01beeb6644fd9153a808c8d13ffc562d7780eaecc506a46b4ea777f9a3d15f363d14b834912051ca3b1043553c27d2bbdd901a947623a311a33a1ac7c70fafd395a921fe0c1762a720d8d0db710594050512114e51e5d7ea21c98049e50cff1eda479ad46eb8bb9fd1ed414b08b5f96c7a1ad95d02011a100b0acac6cdba7e36a9774747a812bcf1b988590ed46446530579d39148eebdd2a500794e1c5e74a91c7ad0b54587b7caa41fa7d7a021dd6663acd62ce11f6e26e44053e0b8b82b05b7860a4b04677e864a349e60d77ce7fcd657b116a7403be236a182271c47ce168a9e3563ef201189e8575b06756a4b7af9b9bbc1238b468d9b8341026e0e3f5afe8f6b34bdef815f595b9a3afdb0f21e48f2fc0a363c6ee8fd43594d22ffefabe43b7fbd28d997b0d364a56a13b11d456f8f460e69e94ee725092bab8caf0d8efd8d576b7a81b0d1f4e5df5820f43f3e29da675965b154fce31abf32c49723b63e0c8104d4c7d2a943cddb62c682a4262731a759808756b295ce97e802f3971775ceb4718338d543e072b73457f596971a486cad91a50bd58fc10506481d7fcc29557803e29f814a2a1ed1cce7e9622e3b21047690fb69f9da8becf5d5b3a6422cc41980983dac03cd13f5ad40938bdde37fa035d810bd2187ba9c68bd56a48c105950f8bc6cdca1aa91dda5a797386df7f8fea8823dd55d233263e5eb25f62f4d8f9f96d09cdc32023db4bc7ca656c990b0bc3b81eac461abdb3a057193f4b7808342a5f5f3855d9769cdb5bbc221a2d32fbd7c65ad014787fce1196c88d8b9d570d496ac109931a8c9378a24af0e6d316d9b661e3f7470cf3019716138e3f751d0d7853e59398cc1db1a0324ea7777562926218bd8e0db97756fedc5531a9a1c4b08c528e82ff7596e0a2c9ee89e4d71eb6452421617499b2e42c3fda6a05c78eadc76d756f1fcf56e3c00bea6137ab50cc98dbf222704e32956d3d09f98b67be0d01d2d9fe113bd08b162188bfad989adf4c5a70d683c6e7864603e1038a586c7bc4dab374ea36b57746df5674c49cecdb2bd6f3a8d3089280e2a4567136628f3e15b5b7fbd87672d25a046aadad186f3c6f80ee33e2b69c7a7452711f47347e7ddb769dfc5f11dea9a10c673834abd31112954e5814b92fa090e4942f1cae0fd9a78ce05d748937a7b27692c24f3c7e79d40b61e364e8ec2b8a3c06ed1d2b863f25e8f0740b46322af76247b6bd31337d7632b9e2971d4ebf9a3326f86886d87dbcc7bf545c9c71d95d4cf62e516511f2213b7a77eacebeb1a69ce642321769a15bf8bd8c95223be738ebd462d0983b58ca687ee1e610a16321ae7550cd68cf4faee4f0a4f8f89e0087df9cab0b821e5b428579a2c1845560e8a5f201e49041937b6779efa3795f6312ac6b9ae686b6324899404194cd974c16b90768451fb65323d39c7efde5ca9a000baed1e9148298e7c0186b4424515a4798dece69a76c4d86b93f52aa0ef17cc7a32fb42615626ce06604c1b95138a28e125d9cefe8a65d0b82b4e52892029eec3f5e9eb9e8030278ddad126799b329d430c8fd338856ce0afc0e3e5033df174c921ee60f39f78a84547811f50304224fd53657ff1e6353da9edeb4b67ff299e14e7de5a6dde8ba33d0e51abeed435defdc8f759052c1b48cb91e4a8165661da506bfe0ac8479142529d50107d81e2d5b54a20f6fa00b49b67ecb0d5c5f53f69e6ecbcf95c1c06e2bf380d06c9653fa0e4cbff55e4f7556f90cdc1d8889271da556be1c18dee73aa7cf3b86feb78c626551d7b4441cae174f5fb841ff04f9cef12361af37c54fce44fed8db69a5b7563d3e4261a285d4f820eefacef46bdc0950a29c28424d151a1a7322788342d3ed6659338037ef690d4669744c3b37a07517f6b76866ec78a164dc150a109b1243a5e6dd3c2d9c1f8a65ee58c1b15e1bed59e74a03e7b1af4ac5faed311ce198739a48a43bbbbad1c19fd2fe381801672c64c6a01a1010e6e48bc696a4379da0e77a17ee594f88604a5c6acf45e4bb308a0311d843037c5e5e38dfc086f2bb312ae2a2b219e5fce883086fccb4d42b42fb5bf358e2acdebe80314308274660395af2536ff767a942ca4f2b2340dba15df344e211d8ce3d372dff8233c02ae9ab677c3e5238f1f278d8913d42e441c4a527982b51d2874f7051e304ddcf90ddcc4959431859c4a084f22f3b1d0f6aa1e3ccaa38c499df6bec1b26c8c31100da4dd82020fed1acf612a8d8159175452eabba10ec9b8c665d8d62ae51d5b143946f8e227df4ab17bebc39adddb99f614fcfc2b14c592299d462eabb2df6e127c4c7d81da91e5aae01bd39a9e1e2362b006866155bd89c381c6b9db6b5beec77bbe37c3d3f70e923221fce0b5052170852a62255fa32f884f4f05d11c8ecdac4d015c286d47e0b0ed5047d9a9c3f477ea61b58b9795a7c02a22abd138c6f2be3fe1b248929768726ed778d656bfc0d5211d9527ada660c57a8421adc58486617e7dd22178e86c6fbee83c05171dce950b5e4b5d5900bd85b2aa0446403db76b13ef896638433c22df4478cf0155f2967eca1eff19abaafff2ce146b44edf66f24246c4b13c3892fee46757aae077f9b932e0cc492e5373635075acbe01139c98d825899bbe7e96786fe66750cb8462639c8bddc8ca445f41ab29a214f5d0ff379dcb8e1b44cae1f6e9540b389211a52cc2cbfbda37bfeb88020f605de4561a9f3e582c8dc72fef971d2b72560ab37c0e182c213c7e3f861e77609ec02b35664b710e1169dce107bcfc9dbe09042a62c481cef1a193d59f20f81fb7efa110a9eae1d13b6464082784a770ee8ea7f20b6bbbf20c122a6a2bc1c6a37be959fc88ef0fe8c4daacd6459b2ff7947b5af6caee3372e528b0c85b9f8f92447fb477a14740d8008d54a1237064ad32b4f83097f49aba14a2cf6f8377cd359dbbbcbbfcbe7ed225fd2a5569a80e4670dc48f17d56624971550e5e8e8d7109156107a5c77b50ab485ca3a266f895e8ad74a8bc111612140e5a2d0496f9dfe4d38bc1935c218da243cfb00e7306b2144a6aa35c1c0b61e8f2fed2b948461672b9de6ca78efea46b4a6a1b26caf8a74c4a49949e7b6554a3c27fdc5482fb78f54a9b222a56de4af6c4c70f90eccafc05c92bbf84b19fd86a0aa251d2363671ee043b20dc3ac19784291d73b274fc51c3ad2cd0da2ef63453dab5c6f4ebb8dc5b17a40c68408ca2079238e39fbd7e7166942d4eec6e5a234cfbc991191df8ed65cb298bf4189e373e5e1950d9040b63557100991076e887b94b7acdc0d1a545db391e0d352bbf335122e4bab47be39a496423e01e4bb2372d4c00c79cb6d7da2bdf6439e8d83d265b5a27f2b0a6021bfa35f660faa30277e156468e7ae38685b12bd6cead572a403c995f6b6daf16d674e149556fc6a743ddba79f3b878b9ac6dcda9b040b7ddf5fb71ca7e0e56898cd65451b054a575c7b872952729213cbc8bd3f603716cbe5abcf1d173b4e2f60c3dda30d2955acf3549c9709c0b4739e5b29bea58c52a8e18c3ac664a90c712f996e3bbb7ec71a38412b1d0529c0ba85e53acb52fc11b190d031ae72f16a25e6d1f1a6ce86a2a000958ad10b415ada246c55af1f6b0d8e01b8be160145878ca8501f64ef481e3720a3402c8eef148adeda87e4498c529f6972bb9a0a28833125414dafa0ad1f4e61b43910e67e9d8508e28560257dd922756d9dbf37799cde725000edc3d5700a60da73a763af12c772103ac7be6750283b26b4a94d63af35c72f6b8094b77d073232a0ba55b9477c789785b7c6b8a9f8136399edfc80fb605c51e76bc172c31738c0365dc9a9363174e005b2e31c71b76279a57589d29fba55bf7cd069514e440f1f0aefe6ffa31de03c4577ef125214d506ca3557433c1c349263bd1ea0d3e4a4a6a5d4e41a4bba5635c8b2a7401c90b2ff5db3e4169efb8ba10bb4bb34a048383af032744cd0d9db59923bbe3e18dae0683ec752897a48a7402d7ceb0c347dca5444e69f6262ea0afbb8a64a85faf2d1cd5be6e5090f437f247307b708c00bfeba1f9c8e31f1dd92769613c9b77460a5b2e4645fe2fd437e2693d905c8be8215c2d1b1c669d3a4351d848e2f7ebaaac364e1e352d2662d36c5ba9a75d3c14287bd77b4698ca5def840872c0c3a903e5d3db1ae326de60dea17129d200220a4746a4f7ccd4f7e536cf0428f3c2d34e4cc50175ce338e26bec9b11b4fb6ce75be01f3f7680ce1c17efc3246298958871118cdcd8577f38f22e87a3637dc5adafa5cf16e76f6b32a0ca30c111f58f600c551bcfeb9377b3345a4dca246ddcc1614883fa76d31496778dd69d4c087c8fd1c8ef65e5501fd2034f9fc1537bc10397296304ed03fdfee8eb09babde968956e0d5052f36613168166a55dc2bfedf7261f5aa32e04868ea8916758f407066fbcdcbebf072fb02447df06c80899f166c7e76897763ee01ef5340c403dcc4b76bcc29cb01c565350538b1a83b78786522d9391d531fe51c49f573a03a787f1df7f42412b02613b0baf87e190c23ab9a325bb06169cae16a8bc1b0462ed232c164e1822a83dbddd14d0504eadcda579114513e388500771d8700ea2c6b6234d54eeecfde94bd0c4922f1957b43e24b4da85be52a09b39567ff841aa3cfd3cacf51e46c89cf536a9f2e8e7d99d4e19453ed6890876ac3f3c4c8cbc19ee08336e9d31fb5f6694958dec09d2621ba89f435d1bd960be34e729238bffd8def7555140dec6889d67141bc7739e91b2715d35759b165e53e34d504cc209072cb76a0143b3bad135d59efeecf8e349623971160387b5e876c64d247027d354bbbf0b2054fde808a4f4d5c103ab0a010e9bd5185d51c311c2e4322b34aa5a06460738885950b5b569c6b99a1218acbed8eb893f217b5501c9679f02701349bc2dac58109f77b58c75fdebbe301af579a7844581ea76509c4277bbab4d011ea9fe4a57e1dca22d1fd92acd01d8e301281995d76b3aebf2145915df8c2822e00b21443944d27c41b243c694be0b88f703b9569bac26c5c20ace4217610ae1d9397d3accd5743659fbebd2d40c43e8485e31dc9e4d17a883091aa291457bbebca8770dbd4516b39faf9525418ba6c9fde383f9adadf46fc2dfcf3f13a809053e886a49fbc020380b7698692c0f87f5a7a024030eaf5a0dedca8e9ae8af43c55f3e6ffb891dd5f8d8a57fdca2706c5d04104a6830f3b3ad9ea2a8d70b1f276aab85659cc3e885fdaf67bcb96609014f259e0a7e47d806e85d9bc92215c57e2bb7379c8ad07515c910fa684bbb23bd3c4f852e40868bc4f29f97c5369512b9b282208996e1b185612f0d50588cca3a441775c6670af35ec340281f0195e51b284d818e27633e5488ac81e6275ab84dc7d4bbd864f6c5e68fa74377bf34d08f91c44230f1d9da04589d382341520cf2d9257cb267183c02363dd9fbce396f654671c8704286d395736ec9358021f0ef2ec9c81a23527b406890193ff3bac6184f6eff5620bccac0499ce883f5660d529de6323dd9a5741047da9a456ed3fd990080a035c786582645147a6ad3b0dc36f26dba0f3dc347751d889e2f02b00f91fd867ec6cd2e0eeca7a916cb8f8012836fbb3213d059533522e9cfdc3940df7cb58e658cf38d0bb52d6a8764c37c7219a055ba73bb44fff8647af375b428698adbcd725c90e4e75a37164680dcda19011f4ad24d0e039d5aec7bc06bb498bf234b5ec222b255831f63896d165eca4ff71a31395c36c816f45deabf124c2c3ea770300d8daca474fb932a357a213f11507df4ba67a52b226adc48858fbe6e81f3116572a5ec6e6cb4e3d7f9e5fd03b1ff8d82d1b1fe43120a3aec573459f90f78c3bc6bffc05afbe781ebe1fbfec06d76964bd5c3d66b99df5b97a4de6ba18f1d67750c6c60be63183e02abb822f3cb89a75b2b23a7216025b2a83d532a76331d5c195be06bdbf6382f5803ad5bd8839e2c8e99ffb3b314ec0bc9a2ac94a1911210d411b5e1eb677f163834961f8741914f522d8dfdf1f178a076325abd1acdb40419a58ba384568c9db64496b3c7bfd869413bf90111a6fd5197c46f420a1c50e975f17d53c601d8bc389eafa5ed496f6730374dcaa00f23f1397c4b9998dc261095653827dfa017efdf7e12cc6e5a835d700acf43947676927539033e994427e72a414a291070801942dd02f309a477c83f2d5035b5f3fef2e7beeb1b7a80a0336352187d8d96f3433b78dea80827b952b73ce3d36ba041316f4d62f24efc1f450129a3fd5fb4daba46fe843d839cb23f3573d2e8e505ddb3fb9b27513fb84fb72a8115440735763ce2ca728a61bb0ed798371031ffa7b1d6bd2f1d282955ae2d7a117b470bb646357a7d18153cbce5ba460b3865b71bf1665ca1f4611a60cb1383988deb57d3b106ded4a15a977d82e2788ac22aafff80d791982fb16892398d4c3f0bae1276705be6aa3f6077836847e1f33387e1125d86c0aa39c9c49729baefe94224b6f3747ff2d453f830d91d32de9bee044184e7f8e934d7abd7fe8fcd82c956fe33fa797cbc4815717ef5fd13c05fe2e49803acaf5620125dc07e5d00c85526acdac31d83d02afa895b166fb7f8d13f55bf3aaf87665a174fcc90c6e38e5c4bb5b1526ab92204b356726c66cb164997e5a029dabc87f2424ac323f483fa112ff5c03363f50f3477f031dd646b4148ce9b188217fb7ccd904e03ab70ee733f8452e5a2090dae8bf4a4eaac68fa7bcef238d07362f6a4c642eb7ac6dca3396d567e40c4c9489cfb74df51f808998bc53c38aa15096ef1058fa7708c4839b0a38fb21364f56d61674c33f336bc561f31de7b99ac365bd992f0f6400985eedcbd10b7221ca9f4af2da0eccf74920e751f9182921e2f4d08fd73e5b3edae87f1b4fee5bf661d0cb63e42021816bf23cd9632345949a5ed9f8842640d4801a6a8cc1bd4531cd3d047245d23bed24a8f107f749ab1e74984734bd29c7a7ad47cb3c15a6bd4ab4f8a43b791bb1b1ffdc789d986b4f732faadeec8b9e50c238dfb8696d3ab3e3d20c8a533a0c424474e00a72bfff5194aaf98c34dcf08fab8653fa72ecc82ad910478f1ec981200189426d5ed4cf0695fe01c09e125b32465b5997eb05cfc5eb27c1660d14e6fc08b5d6b40b93a98cc35b5759bcc5eaa141b99f62063a9e4cfdd7b6a2eea1dfac89619d719bdbd306be576f8f4358d885d7dfe965e11f6c9e5a0a4b406599f48f322994d42baf339f86e4261ab252163e9e0ad3f21656269669dea89c1a156633bc3983147d2f284ec0853b19f6735cc1960926c44740183635fba8c32ed51e1a456a8130d5b617f193899512a687f75c720f871173a6ccd0faa3e8fe53217df3b503f5d66d915ef047d412d3e1396ad58cfd8f76aeedd1bf3204428a471c156b6dfcc8c7ecdc5e4a0bc254622b149ea46ec205408aaaf5c7a81bd853c92d7603b7bc0751d8d1d315031bf66de4c1393bbd0a7b46129bcf67b7c225d97d14f622283f75fcd1bb3900f27c79bafa9d6e3d66f659744a080827f9d4cd666be03289a86b19ea49f7ccaaad9e550afdd67f5207aa6e59f2a8fc32cca13916803d1c836e55669e6c4baba7dcaed04e04baf0013fa348f9f4a823f3488a970b52814f49cffa97c77cf6d6725af6db703e83d6b9ce0a58344fa8a33efd90473f201d3b0732ee05bbbf8feeee8d7ea40c72836d3909f49b840479cadb73b675cc6a09caa72bb715e947829b1c086d62f579d800d7e1d23368cfc29f34231f9f757d4b5cc55f15c1e95426246cf4e48e713e753e8a7c6461c10b62036b7e524e60ec93e3e3a2f2313f218350c63b5512ee6c7d6526ee8f9cf3d63fc548ba8992cf40c67d017d52c3d73e1fd6e949d2cf22274724eb5da5cec6e1a36cb5807f37469f0a2f6213c5359ff55d91eaeb2c7bbbd5cfbd7b7a8f5c791683c2841e1ab8ac34ad2de776e068738d541108b08327e1b113b8bb900e3a705e2bf15c098425536d2b7cd64f300c8e53e0796474e6aa471ff180e5e7a07318cdeacf674095a0d1c09857faa0714a4bcef791a9955f6b916fc8d9eef605c0e18e3b16cbc0305bc91b466f3282b109b3512b31aa09766b670cd441e153ee2546ec2e3cd159c30fe1206fb3d901b88feeed3f23cfd838d86e6886a45c8da2fa2ce7a0f27574adc397d8252be58d3e42e874b7acda7e3c3f375259e55106f8e1cac746355fcb613295e7d63e643631048d7ed7ba11d4b4393d4ae46f26e442ef36edc2bde6dc1e33ee202eead81f29ceb7a73d883a68c7df55fb5fa20f31726fb14b8fa82a61075f27ec0d7eb4a25055a74321a3ad8bd0deacf112d438d0b4514d561bd290c37260ede515ff2076efed7d474aa2921c355a9eaceda3bf08cd18ae058d69690f1ba29d7c728e16df665c34524c3eb0437f32910c11894805d8645e8671a0478adacac8f15991a7f9108aafc1d8fd6f8830c4fb709b7ecf08037aa4ec65ec2112fd279bf2c03b10d37b9d3200fff6aed823f05b6150009ab2a55b65cc789061c4be5a8453ec9eb26796af555a1735c61c01afa672166ed28a6019c91ee5556fd2108e02e63ee89fcfc5edc0b26078fc71a4351b32567140d72836835ffee0b1ce7ab16c4587c1df99a8c6281671badaf2cd67d0847996fd4a93ac56feb83dd82002730c59bd4bf1484e77b265a6870ce9e67024da5de6d996f9abe19fb6f54ad1ec5aabe43f7a36d7f32a567daefb969a7234a0e9787f79188094a6794a3d78682b51ee57291213efc7ea295e6143d45e8444603d36a0ea98c5d959cbe3d8cf80d161ef341bc6a11265989696b8bcd96d140cfa87ebe007222f3bd2c2b1011f014abec17dd7714af677f151bfbcf742103e73a7d5278af5d2866717776ec27b318ca76547f4f5454672897eb6a620c46d13a5679d7c9a69549a14a465ebae9c84c5587c4548b897e3db9b224a11c1928189302c55c7df28943a2ea8627d35fd0153132f10b7c314e77451faea5bbf60db3c57c834a7b5f696a1ae46ff252451896ad7927b5595d52559fdb6b4e89b797262e1fbf5a8e1952a47d7f1aaf2c83a8528c0edeeca9f1431139b1863b915815aece4026c85058caaa3394e4c86f98c13f29d1bf514d73806f77e2101806489c281f838e418e17f86ca8ed99711afdfd75e25b5d9b9d748a8190881553b9d819482ae0115deb865c2f76dbdb260692b663adea3dea997f07f5213c2025838828d36d4f6bafaa6d27827213e8516616595643677fbbc68d853a6c5ec520e05a7efc68141e54a0c07b82947a9f20fbff7db66247662570625a2312065a82e7651da9993688eb3cadfeab775f5934ffc666c8ea3a8865f1dfb5e4897efed55c4bd96d8e1434bf1140554dd8aa919baf10b182511859974297123d84937843c96340ffd2f620f6823d55c8524d4238823cb6d952c7cd9445e89719ba4d4a29fa15ab28893b2f5923e67a93817b9d41b9aab6bae8c1f7c7e7df4d8ae73d506079791f56063b788f73cfbaf33208090bd9e63ee6fab8000c6ad2056769edf58d8f75a4b3dced7e9d80a7105c77e24a120c91683bae341471754f10e2dca1a279bd20289b0ff4863626a66e36f0a398382939e2648af8e41bdfead022561e37a6486aab0ed327e41d5bf5779976ad9081f012eba090a5d4c7637e31ca347156aa2da211c6fee450b1218384ed52751b7ec3af704b978afd60635c84122ad209f0d270d08abd8a177eddab4eae91dbd4256ab50e122514c4a6ef04f6d236b9269a49e4e475764ea22e71cdb246d7a03ef7c1ab4975a317515ffd20720fcc0fc4bef4dfadbd7f2c08deb1da807eb1d4118e71f9ccbada26319ba16517ebd77b7100199142a5adfcabc100bcdb4450708bade23f5ed0f07b84ff31b6e41ebde249391a2955d151acf41d24957321d3c89c22060390935ebc7721cc7519c675b6d13bcc9f4356370d73933005fab222306b2742d7afa06941febcf596e650e3324987d720aa7c34fc732a13e927a5bf38e3d1a19be59bbf7c4b57bcac43f4c2d29042d9a59d7506ef59725362b1f5529f416f973df6bac2c202727ef1295a518acad2a213f20400c610e8b91990ca1a86fd9ed8b2e69b71453e26d7d16cc6238937d19e918a206a517a7a1d7bf13071761f85d0aa837884fc9918864fb3ffb9aa122e22b49af61afd4f797f02ac22091be42e669bcf3805775f3451ed6a6056328947e8a4c72ff5cf017e934a632be0e397ea4cdd94f5a63d35a19972303b434f30d230518e187eeea35dad663251c94f02b16beaea73c5ae6b4b184d81a9239799d33edc7f6da46c08f844151fbf6225d24787bc80442c588ec70138af45da58f899eb3051f74d2947d4985aa5bd5b9ac27e721deaa41498b203e0e26b4485d83246cfb073e63952c0dc8ad9d7966287a44f98183b6f262cfb0ba48e0c71909dfe776d0a83372abe04efb927110af7a552f172b73ab8523bba2053beaa9363ae572e7ebbf47921813a21a40143e965a2922d75fec8b75052118d4780beaa9d3c3119fd870cd0cf1726dfa83e447913180dcf3764f93781b503db4f6b85aaf6e4b7d107e2c83598eabf4bab82c86ebe734de43f1dde30884eaa152d2f8ea3001c0163b5b153d392dc47d80953a94df4cc2d6eb96373a12ee5ac70ccb695820013381f4b398c7335fb094c37235b088c1f50465be4ba1cb4f99c267456597bffc7b24073227f9dcfee73a0900a8a8d8b8c583257538fe141a5ebf08002679936070337d27f6c44b13432796923feb4dbffe6009daf4df13db4c6118df5ed865abfbc7c9d9e49e8abb6fe5ffecdaa9576ac18bde81e2d31bf83438536049a6549db7f7bbc9e7ec5f05f7148dfc113d75d36c6fc0ae50ffb38edd6ac9b6bf611984690312d7c8253fddb0526ae4c922f46472211a8df084371bd8b853a624e5781af907b9045495fdce2da4a3c736eabb6eea97c771d2c4669fd62efbd5304f65ba3bf0d908693c4e216e9db76c784426e9c53db6e065828e176e6acfcee2f68fbf2598d49ab23ed3a917a8f705ffd64663f5ce84405f06936189f0e77a4d02aca499546e071136d5dda26eb40fa349ea4ff60f14a7cf4d827369d7f5a10007b58eea55760f46e71e2b3485d759d42db08f1922e54da0b4982904e3b1c94115b14572c2fc9488e55e7732b62b1b706f584ae089871c9dbf7470150d4a8db894afe937bd247dd13dbe18f0c21bcb18088639f1389328646b46a4f27656d4686ae834badcee5f42a9222d32e343433195d65c78f750f680de4fdfba8d3ccc9ff92a40123201eca1c9a216fb81a96475b53fb09568bf1abc2d6b4b391ead3bf4f3d0121f31bf955e41afdbeadfe702036ebbba788c5c71aa77cd6249b6a7257b13850eeac9d5a3632d6137a56aa4c5e20a1566155ac5711c263cdf15fa8a31aec83bbabf3b2e470cf457c287199e2345664e524946ae011e1363921dfe501f4125260d82044dc9f399c2f191c825ff3df7bef9db180a682e5a05fd7398eaac74925e9dd5f90158d2838d5a37f30f112c5d9b6a7c7d21aad64b171cde1050ba3b16c690a41df161cc340fbe8ec194ea8a5fde64a711274e87d7e5a6212b70f7f90906c6367d56e59fbe8b2a27a2100f4ea6e04cf88a2cffb545a8acfd0cb05a39f92edc9505e54e22a33020c4cf6b355f93d502cb37b6459b7099ff6e9f627592b938d90c5c6f8e29f859dc2e05c3faed394cd005b70d1f99229c49e7891eeb0482c7ab66f208bc767eb8b717e2a7323a615a1c4817b3f94ce11a8aa798b8fa8c96dfa73d915bb2410d462ba8f9e3cd864af7d6892a213555c5a73b6cb0023d3b7d59d859bf9528e708e9dddbf6c58ae8a848a7d7fcc896a4052a0147a81d5aa54894a9d4d6851c7253a2c64d800d1941889c88f4eb7b06712c00ae3d76416abdea39da64a713b8d49ae024fb953fce42f2cc69103ae325dbc8e79b395a6d787873be416cb72bd976a6389b70337cdc75c209cf0d62c10b69907d65de919889d844b07c6a2d298f68ee97b5510ca2f94772915ec11ab5a643bc4677b1e00183c461016f942deb8b3c6e3f087eec96c192af17b644c7769170cba3ac0867586cd47d2b2a0f86df0130fc50720af6f88707304bbc7804270ea977bc476d6a0f2f7c9fca4876a7ce03150dff0e0aa117de6a8e509668cb3cfda08a38d802b862af7ab9595afa37a67470fcfb0dd3b16e4c9cc526963d21a7fcb5f794069da26e1cb0463bf05846a8d2c392ca6778c8e9b462ffca1a2708714f8977da0ade74ebbeb01a738d214aed3a8497ff23704a63dc05d4e562a632ff3df8d9059a1ebb1e5be926ee0fc6b874c66bbdc347ddcf10280bed2a7cee28031643f0fe26e0aa0d6fec187d76027d70b9cf61fcaab62c532d656aaaec091f3b716ec332fe01cebf2721d8f64512ab3ffe1323f4185e1b9ab8a2f4cfcf96d0387d121561149ba9447541120783064945549bb9967c095fc0aff758284ce74de68021f22d4df5a97c98ceb85492fb924aa9137d5b8e490ecf5932c581506a458ddd479b17fc0de8cda6c4be46bb4cca9075eaf8c070002120b249d535ca6c81371c02a4dc3cd637c6995a622370a688b5f49914c7d2e92da16824ce0d06dc413e8b373703c180d72a406a2207ece53a8cbc152857bb6272fad4d1e35e560f03fcf957ffc060ccd93e94089575520bed9ecb170f6b1eb0cc82055b70a8e012495f644e3c0454fcd8262225ee1252e8f3f9756eb5de4c6a220f6d244855583a798f28ece02f14c08a2501fab4604f1f7ecfb8ae111f3c9d1e0762aaa2afb4be9f40ba511ca6d3b1db9a14f348f2c4e5882515096e940fb529c269e66b4e0771b6a08ffc1314f1421df562e83f88f569904efa92218a3ba352e213b8df67a374c013322c696fd4a8a029dd8d0604766acc64fbb75e79d80672029f869e07984194c2e0144a07dbfbf0e2f1224dd68d0b22c68cee0491c5e993d946c85dd0670dffcb04ad33e678cb19b80a3b3d6c8f3a6f267d428f486333fd84e61345f03cc80cb1f69dd8cac4ba3469c4ce03e9eebba116bd80700428f4beebd015b3b93dad366494982a48a84d926974a624367c6f07036322fe965709298de069a589ac94fb917e0032c8b88d626d02584b8afd93fe538f44d0d154148a1e9741993835b04ceb8cda5e2b3a9c548499464d76b2892501d398f3a2b2c219e81c5e9adf99504739e5856eb5dac4eed43895767254c132f47adf66b558b08a9e08a19cfcba97e8d8f16567eb28b39704cd5c7d7545b6591fdf9bd04e18480953846d423bb5a5c11253a37ce3f4e5cf70246a88a524484fa87344fe4cea47e57cc67954369577f5d6513639858c67b1d004c1ab32ba930ffe74f17cc5ff9ceee0146c4f7f51e67742c0b6dde2eb76c6d8dccecc26daeb3d57b076955841dc4671d4a9d97bb1cbf25a77e423640d579398bd580f06e8e7c2308231531c30cd334818af3bf692fd17b852d01c0f05ca999805b038c340b48d5aa236b40b7f85b1ae6534689d416a651636e6669dc3766caad8ec6c1d2eb59dfc0dc3365e7179b68f2725864cbfbe8b8b3d4b292ae8802b4730b0bb89c510ce11cff99f7e1c490b839d6a99fdc4da85e27e83e2abc9d003c4461fe8ad4953d7e1ddd0f95109dc53029f3f78605c38ed53155c583eef2eb632c0c732a04429c120839356cf3af7783217b74caac0618a53751013b04f02591618278d81f9ba39e01639a8d43b9932152fa6383a3091d7e2318c82c46214fcc6a813eb773b72e6712d50cf3f14a67ea0b6d784af67a7dd585d9becb04d5f0f23bc04c8dc1d3275cbf1ac7385a054762a3cf4a326f89c975315974f4465f770031453cbe412d19f24cb308eb7d3aa34a83b5d2e6dd5a0ff0a8f27f36bfe2a8edaa9776ab3bc3a1ae7c98177a8dd1f3c4ceb8aade8f8eefa42b18011265696a22beef499112686a3c17f43b7e3798320d20004b1cd3f1dce620ff008a1f950fa8a8aaa9145f12296b1178052bbdc888836411f3cbf6d9a898ddc2219051e2038a1ca39447f5b396a8988413e156a234a01c041a6402699577633a39d07025fd4e566a9218575fc0eb9be781dc19ceb068f1a023408459c13da17386fe003796354bd6d7d5a2ee3996f08369db935de9961d0a6be9630c3699a6a8d95c2f8baaf32421e9ec48bd044ae683530802f63bbc61f801bf8b571ec714d957bbbdfaafc4bfbbc7df61a5790867cd1a60f4fc1e8f9784932b7c5cc9e36774c66843f8ef99c0529152879cf69eaa1d6959ec0c1800e28813ef807fc9b53c0a819dc45d886de428bbdb81a58f26a2bbf528adf495202e9273d542f866c11f33dbb64f057eeba2ade4a235a812c8f007dd25c6471ce42382e84e41214d4c2638f59ae91766376c39526b2a8f39af1192be1c835878000442336befcfc6a39b2845a9a00ecde88ff11426a29e89f94a2ef4986603a0743c16c69d1ea92a196271165eede650ce2201f8c4e3adafa8e7fbd46fc784f1cd99aeaaf213f8e73082f20d39f803a065d81b65cc9caff8ed7d73914544a361f1e90faaf42dc35e9c6ab6fd3afba1c22b0755eed8b6ece0f7ec5dda1fc9251532d59180022cd02f179cd15b0f1739d215f9cccc0209d3e38f0794c91e08d9bb11ba335f5e8dfa0bde1a3fb2e89b0514515d11fa879976d9865bae1184022ddc1e6c24d55bdae995cf245d6843f6fb73dc4be05b18f037234da600017b78e13ab1259d8efb23f1b692d9cbbdb2b4a5cd64ef75d8022e5133fdba5e0e31e9894f3a45f6edc3523b6b3e4da7acb536a0948c7f6ded097589ba3d29b1f9512f8b0e81d9ddfe72fc46ca37b31f1a741912eea6bb2dbcf8085eb20a6a1fe5198779aca3da54bf5cc3cec1445d1cd288e9525ab87d61cfc7c4878ec8729767dc45a6ee44cff689fa05093db4b67c465c2bdc49b69032f6f9828f6877ad4048c2963c9c309a01ee4debaab75d78cd0af21b15ae8cde6c11e662588dbb430926203be14450aeaecb33a99be86c8fb6fbab99f7429774451d066dbd911bf392efb33562b1141969a18f57a9e2fc56df4b9cb481e8b83ab55df3d6dc9b6a2b961f71346ab87d12a432f85a3917ced413ba337507190f1d764170fb22aecaaaf54081ecc4262e9016e466ae3a620099396cc2756d5e688034ea1321eeff59f4a2511f3270d96a98b815feb5115758cc9d75fafd200b4b0de6b8a5e06bacab72584e6adc79d85ea76b998b0e9f4f25d30af8cad29bb2ec948a7c538947c5a66f5848b2a21f465297307f098e44952257ce1e937e55c2e24137cf857a471eccf580892b7b354c762c93e2a34df168320c30511d680924c4387ea99c07c171a10affdc3b5ef491d91cc9c36d0cb94a9ffd9507da22f46c1ec4229eb7ba5ef456c7609daed00442ff50de8e648b7408f347b525b3a009010e60581c917d508a77eb2f8c98f793f9796530be68106ba7491fd44e4b2129528573f19fcd8e7c3174590a0a2760696987619d7c75cc24d84b800888f90a4d946ddf79d300ed89b554a298f024120658a7b7777a6a4c92ee271311a0809a675137b0fc6355a51810646276af410f406f1db38ba9657ac4b9b707f3a74bbab3486de9cad9cbf4fdcca19009bf7ff9ff83586f6123916f004b97bfe007ed5df7174f071ad9f7f31e0bcbcda865c86079841f991b9dba4f56263a36f0a2bd6dcf54a2cb6372ae6b8c42a11e270020ff70a684164d0661d5b247688952f435d29a7f69a219e85a9ab99db1a4a1665631d6f66d218679b42ef0febd6086479e16ff06840a7f09d091e71da83caa1df83be721411aca8575ac74934b29c7eac8540f7c67c156bfea8114131131d908317b74a43466545a0a81c1120db2b21b929bb2d996ab2d475675e7e0f843e22b8234714b64ab096b675d84d835d92a0acd32b75b0b0514a9bc549ccbd5fb7cf4d23e047d01c0afa8f190742b6f071c6e2012e9cfd0ca1ed13a26f7dfc4f26d2f9cb0da5b1faa3f5f8c19956c26c42c826952db7b2a874dc876fb0a5b4fde117ad298aacd136dcbec13c7058f0e7fc6a495108f3e9db4c9505cd02beb95b7ac99e10028b3d6f86f28be25181a272067e3cedf0928348e3fed00c7229f80bd803aa00477e800485a04fe133178453d56fa778e36b2556d3b89e9a6cad1e7842157fa5e8361d0445f71d405e759649850accf3a057be210014907da109d1c26dcebb38b2dbacfacbbe359c02832550d1d9da0d683aa5e86caf9fff0c5b9e8e6ce3bdc536539260d1727a5130417275ce1a92fb732a77e1d3ae695b944f4dbd4bf0ab4c25383b29decdd26c56426fddb8b98a5dc068c602c339b4f7561e2bdca654904106e4fe9723b2d76c8e6d86efa422ff6cbcb85bb44f216841651862a22a16c2116269e1a50ca3bc5cc05f009b03c9e3170197c4ad2d65bad1ab25b9ccd049fff4996ed0fe2ebef225f12c67e66e78bc80f61726c76fc33cc0aee3a4c7f252b7afa6f68bf11026864bcfed6f4b45b6f79b378f525a00e9e7ec91510061aff864ff647f80918d719be4c3c42e15d8968d56d4177b449dd9f05000ed5cdfa73a1a1d9cbe4ea0f9188d7816e59acbfb4b382183510c20765913970cc03f0a258466409a1e3a13097682ec788a0d708394a9fcdada6ac5fb264ff5c2eb0ec4d13be5ad677ef36640243dd9fcd6ea536a60cc584e31d319ae2b9d2ecbd5f5da66669f0f048c6e95ac8ac198b137dd938e55e1dd7e05072d2586c2623b633df4dfdc6892e8d1c5be2a6880afaf3fae99101a28ffba2d7d495da39bde0f1d457225ed163cea16916a2e67a253ca48216fa1e6e260324d3377946463e29a6f1aad7e16c4fbfb0693986f0c10454c7b44c3db72626796a0808befa5d07a77d38f2bdedc419bbc94bc89ae521e00be3fea4c2bc1e33fc7b4bf9b8cfd87df2c46236efe84c43813ee4bf04de8c65e95e9100329a7620abb09423029c544808e384a126691c8452f2fd7e94f2acdb0e8c7d9d90bf882db4ff2b1a4a377256c93508317c2d8216b8f63dccdbbe6270976a953d3c0b62ac6725e760c7cf8f68fec8fd73f60583d2670e993fa25298639d89f63921d0ae7e8bcb1094a4e2ffb7460187f648cc839b7c101c4960f679e43984c67394313693fa2834820ce9c2ac261b9e4e3f2d8fb5ba2e19225e6d36d54375ee566999840787147360b6e99c77b98cc09b5db2670333420e1f072ce18c79dbc1adecaae3a9937c53bf328e1c8ac6ff1cd427a0aa668be7f56214439269a08215058fa7d718c5b6a5a4ba3ad3b97589f7e8c397e3327675b64a895abb21fa805ded56655cdb39856f6459db453d3ba818736b852ec090278e1e6ad9814f69bab000367e33e6aa0997f353e9ace4069f08ee5f125f72fe8842930cb42c8ee450dea8f983675c7ae4c03c3f9bda7708cbb3e0b40e7639ca18afe9cb77896c5a7ab7905cef16e224c12ab2238606ec9ad07f90c6a9ceac0734214b8b17b2baef16d62abb66fbbce337d7b7eed07d10674eec30369bda3d0d70bd51a85384dc84b1b9d1007ae2cdda8bcb3b03d4338479f016e639e3524b5ee4cfdce529665fc9b6eabc7f7b63227d9dc61a681bc916558a8a9ca088d4ff23cf8092022529b8c70277be17e64db50e77f0e8e563b7c678e2655245b3eb5c09469de8ffbdf014802ead7aa8e5edf4a84d568b390dcf6b5bba20d086338928889d6c28748004988290fe531987f19df0d807bdd41616198c73614e7158ab000ad594975bb01e7a0d2636c16e77d44f1ef98ef36f839ac000b3e212da2a5b89f0d91d5e74db5642805abc31696a4faab24e12f2de171cf94ddba3d5712f7d92ea728e278e60b2872ba99647b2466e7240e76a75081e608a206971aed280d27d4741686b9bf04b2d02f8141692d75e6d31a940153f3b956eb66752285d24b8190aa4e83a1627cb5d4aac7ae022d2c4ffa1759cf0eff67ff5d60df492eeeefa1ec6378286021ed7ae90c1a649ab8a5b08f0bb49fec014a98caabd5a6f2b5af8e1ae29908d23d66d3c7450ecbeeeefd6f44a2dff4820c1d328e7e1848dd56405f6ff0a68c00f387e3728bf39b2474548e107dde4fad781cb0df1ee6f17f4484490086c5010a63a2aed750d2110a949021ea8a0ef7bc36a29f07591823eaecf80202558533a96c988f1a2cfcc02706e8f48295e039576679e083def245362b75a937613c55c31b59ef8a2667e2b67fb93d691cd0838cf2a646dea6f50fc9f37e89fb674e46cca0962b550437e590a4a2ef1b8980c80f28de0f4cd5f0863f73784299ec6f7da0cfd34f318f0d64bfccf60d9cd3836943dd3fd5da5a2aeaafac2888a855cf01f112f8f650548cf7850659033a6bcee34a38fdfd74fca77b3273a29df97ec289a5512e00b0b89dde036d6a2b7aabb267f68a5e920612b9475011eb8a590561bfe1421840f13bfa0462558bc01372705d338786c006c68847050ca7883efddf9ab9e2cff55f23a4be90e903bdac1d275dfe8df8c11e9777fbdc966c4055df17c460cf1241e4a1d8c8555322d9f5c01234471932d522cd67af3431555440b0c12c17f2ca8b4054cd93bf6cfa3e7dbacf0153d3399184fc30902d2da0d4c4b2077f674c2482e75e19ef9778d780f8d71b94ea58317988667fb84be360a6ae45018db41888dc4f3ade3edeb30565bdfef9e54751f5f2ce040a8ca92f7b8f2d03ea40b44bc0db074e910ed57705e92dfaccfc2a7cd3d62a098bbb2762e79c006af4250299fc92ebbf4b5105c4fb53f9284750dc45106b28e5d9a81bd30c64b9e037a9ee976d08424143f169957d09ea4f1fe7384e31e38260ad5e2632c6d543d0cf3cf13a5607348b20fad7762b3642e3ab6fbf1b403532bc601f82703f08ec271229f326bc72e07b50104601c233e73454798e9b4575689525a2dde846ab37cf4a4e7dee23dfe74b5b77da419e706f3c53b3b7a7cde31e8544e7c105f91d6adf196af7b0af7c4175e8c749f2acfcda2ffb59b926bb6b665182b0d6d6720afd28e0766ac1202b3be14f983545dbc9230aad0bb70625520a474a8c54615ff3f5c298423cf337ec430e1a26272bada9fa2f1bd4681847e407ebcad1550977e9f3cad65748956ba0935cb73a86172806afbda84ac4b9eb2b59e23f4d9629ab314dd110b005ace5528671c97dcbfbb5cc667524fab71c3010d368aff4f6380c9d04b0f0e8ab3356d206e8748dc1f48649ee4747aa21c00613b317869c05ff14a570effd9d331f4dec93af4f0141ab2dba9883175f74c1222ec46f5280468af5b1fef0fbaa50dccf3e9a717724e399c8c0edb41bc06c0314139c0fe469a84f3a3e74c314875121a36ef377617616df57e0cc4cb6d08fd428b9d509a1a0f2976ff6a598fac6d8e12108d3aac7a028fa35e2d546e67e0df381ef0893910f749587f1d9bb0b8093712e0ac123ec65607b82a83caa8ca2a11322caa77c49fb8ef005188ee8f6848e505709ee5a89f22ceb8c99dc8fe41a6480ae9e7ad6570f398d218c3309d8eb283b7127f4c82cc8d92df267ac8fd356a2aa574b8eeca40c867509c8649ba4d076a1ebac17503819c230859e0a0e624793256a86b0488f94648167007fa1f6da99eba1a0fcf224246e8d03a2b3bea3a8fa1574724ffa7831d18e32139f823a9dfe4acd77fb3201b95f5ff7763d2d3e7136344ded18e32a365b849ad43e1b74ae3a62955f000de80484ce0f45ed54d20f37202ee108909b28cc84ccd6a789dc8435d98e7dfabe4c11ba30d266ede5f0e0e388ed13a984690c333568ae87d0d333756394c19179e6b000b2fd4aefc0821e7378390314f0f6ae381e89b4e9603ee951deca34dedcda97c2eebd6f3facb169998360468d0b555de2562d9bb61626e825cfa6b8171509bdeedd72ed802dd0ff33fd18693268bea1b5f7888d185e7cacdd599acd804ce757c32c9a0937f9816d4e921686730ae5bf4b58bff02632ffd68854f731e4cd20ba831e7cd6794e47c61cbcf94121a2f93fba097f97e2b24822074a53798fde11e2997459d372f46ca69e555231281416ce3a362fd2583b5ea0cff584fa524af5b59f59d921407406112dcd90d44afea026b58b1a343999cbe0e5ee17058f6cc28049d52bd5533063210940e5b7f7a6eddb1cd7538ae364576ab1d58ed79a9d861b183f0f11ca2ba886ca3bbbf9f6c5f70927806220deadfee5d9600b25be613062d9e5650303a7f8a0c4ea9b298ef1175c1011daa1b3acdbeb2e9fa79714f981854e36ae9673dcb33ff4b58b0bcc42dfe76cace7556f0790b383b38bea4739b9814a351d6829c8d88da26e2d6f1949f60eeee6510fe524c350d6431bea93aab3373719202eb1dee8fe2a6ede3a08d591f8d436e0d6f2f96c546575ce9edf8c3714840ccf6abac12be49e743b7d28ac11b7faafde2853f65b6873965d039f3421d6b73db81bbb22e112cf08c03cbdfcdf4096f6861e5f8f6b176ce6e8ee11c8af28a36b56c709f8ffd15c73889edb67dbb6a76c9641e6b7740f6956829b95f96e071da97fe5ef7021ffd50031739ec4e42d1a70505eddf12d257515b8192081ae4488c169fed989bb96176226605f57eb0e861297d7c172e3d814a2f967bd8edb860f0ecd780f1b489f6530e48563ba595b118986f16ae92d43ed51671be540f9b44c735574930fe7f7d08fe0a97e5a99f8fa9bf1b49bf8bfa510e8067d4ca68cae06dff23a09745745a75c3f4fab2d202a8fab0f6965e016e9533ccd32650c39ccf80e080167aa2ae9b655018c2e7653f438f4877be5733018640ad9ac848a9717dad98c2ffc8a78eae910ac55dcbfed2ec210a0652e7bfdf84f269103490a494d7dbc80c252593a9eef79d58d9349f4f7967893e225aae5d905dcda3db9cbba5b4358438d5e21d116112f52ee5acb12557ca55665059438341e45ae01d14a3bdabdac877b0527e3e5d0b552376c2b438d4f0b5bf98a7f8214df6b47f40979da50d4ff280272c403652c23ca4aaa4aec5ce911501c2d4fb724b06358b0bbaf9c078d350be4da8bee6abad656916b342c991d1d6c298d433a0c9bc6bef6c44301cbf23caaa8df098b4a95bcf76cac3334d10379cecf460e855d3182ec31290c986b705a87ec2ba9848d7a9bffa3f314b6b61cc2b783e2429aea138683405647a01f0149b35c54a90462dab9e4d1acfdc0ad0350d5eff4cd272eff38690e76f53d80f69b0c3869479a3345b6ab71a4863488e655ce4850a950302efc422e799868470997f5b40e87d08fdf4c0c7a5d41176d95699652d963cc736bfe46ebc3fe7dbc4929dc4418db4ffbe84adc39ff51c6cfb8f3bde8bf52d192a1d561ac43e380f16c5cd3ae88f5d349dc31b96b99c4c18b3e6e1fc870372c93f1e0d416bcacc314abb1f1334084773a7347e74ba65834da47cdef7abe70926818ed1d066e3f2c4e13d9f192651ffc17abb99bab1f551308156e0820ff5c875fedd4e10ca91062bca623c50f8bb314f569f5987a4c11ac123d6027910d6cf276ccfc2e6c46f44a572e166067059a3e8966bb869e246f6842832ef4285356d0080c732e955bf8a535c438dc379ecbe59e457b972c010ccf72cc64e524ce3dbe054de985a48665953b223e0625b9ec7dcb742502754a1dadcc2d55fbf08528d2f53a5ff59e30724f0ae785a31d4b54d1d57fc26e0fb08723241fdd735ba6ba20b3e58069fdd857fac1ff9b42f82b30efe7b4164fb13ccecf857d4836cd97cc4e0dbce6c310a4b394eaef5016e6fd99302c91ad55f6e392dd86be40af2418803632a436b2edeaa29a3d0a9db1ee3180cdacce8033367d760e0c2b19be175dd23323524fc21a1c5526cb088ba79f5bca18d151e834974d5fd7c9364f0728cdfde1b6711a9cb40993e63a272acd8c0e9180d89e1efe40f0f6c8905257e4bdbb379f9e28f6de8ca362f7af9ead902b6daefe574ef4fa92f7b1e7cee614ff9164fae93cf621fa3459877f8e8aa52449cb0b7b071d50495625be5eee77e11c937d6f5ce349d2a9e207c9a9672d76c12655edc28657e3a1ab0abf02b9e87d14d132503b096af95fd15ccbbb0993cef2758864543efd3b5622fc59fa0b3dbf7df0b3a570423b577a56d5ce225a4fcd8b1ccbf9a032c3630811796b6d082e363ff72edd40aa4af552a47b180ac9aba7e780a384cfc89c3fc5c059eef4033847734d40f92a5bbda6177463e913729bc6f0dc5cfe6048251bc41f8ee6d10fc09c453acdfd3415280231c1e889c42260120ed7058d964e8c9fc1640e2788afdd5254901632c1d6270f433c09f72a34d3516ef56480b6d10c33bc288c19f08ae273fdbeeb5dad2faffcf09d2c451d7e8d748b0e29cd7807fb65fa772517c81f6e5f161327dea102cf3208984e5c6cb615b46d28bc0cb66e10d530c88efe1f9d3c1566b4f51981c372dab90d02e53fbf353360c7473bcbd3d8189f20abf7a76caad487be012acddf30297fb11119308ffed8702ec4036f5524d7073274cd69d745842070ce76047fd1a378810ecf118764f22d7204e51f803086b65f68ebeaefff9dde82c2184acbf66e3aa899f9f8829e2cdcaace21d58d58662036b8a5423de3f7e61853461100c6ff4f0a01affbabb478ae82c7fb55c02d563a74c2fc12c6b8b44e98dbe0ce25ea2423a8f2277a707f03b2dd4cffc5a2e28adaa9ad909e2329b982297ade08671d73c58a566ea1d5f2289a3c52a9156a919b49fcf192676067ed0062b6a99d43feb4b97dc4962c71e1764dc46720d06d8939e1f1067bc45673ad65b7f1bda2ed3c5fe06eb9e701eb09a7f5adbb33e4feb647d04a1d45bfceb00255f6e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855fbdfcc6e039938285f21c89acaa2b3fdd577f8ea52419fa5315512dae7ab7a0a7a9600112a50633e806ea5c530479270a3673f2c29ed62c913f1186a4ddd074ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85536b02aea4c352cae96e7576afadd04af2ad3fc1d132b81c223da50eb56b296f0e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855f119e341f324950c54488d75731325dccc490ff153a9e5392a687dad04d3f767e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557a10fe943f1b136b9cfd3f24da219918ce107045cc2e0610dc7dbc115a3deba80572895e4a53ce17dbec7b4843081f31308676108eea4f41b4d27365aa890a247475b628d7821a1a45f672fab34d8a52df053ffb41e254721f7c8b2dda1cb3d4df84057a2ba980fa9b14aa7d71b85fe58c66956c026727dbee687d956cbebffb07448eb82fa8e6945899ce99cc2292c79f47daf73f6cf4f7e1d3114dc5389f0ee43e7020d67065497c17a6fa4a7973394dbd2124c88ddb184aa01b10cd5e2748483334808ab40b21729a0c1aaec92bcaa37449d498c9964c648cbff9f1c439a2225682eea10edd7bcefbf09bed85a7061f51b63f00bbd4a2595798b1805f77bfcd152b9bf1ed0f58984c45a9c8d38fd38e5389f1a6e3316b0ae03871327068a20fafd35ea1bfd146a78e5136d88dca7e17115e1fb4c10ba98bc82a9bbec2c0156497d60327a667f7f59952b5d1e135ce12fb11e274a9ea2d21fbe2aee80f679814f5052476c9e7ca67c3768388a8a0dbb9222e72d7ed2e5f42166382920d9b46d012bc472cb04df4a81aee68df7084c95f069ee437d1238b532671a8f5d6165b2dbd4042705136e4e297f3bb7f93e1e5aa6eb36594b0e63c8a605ffe523fd4989793c6f26619ca013deaca58743db0bedda694db068c35688cbf9016dc2df7a9c3bb24fd758e95f4d8cd3e86fa5dc11e8e989c4e13f2611c595d03ca7aee1f9620687ab212af2298d41acd657cca3fc4d3d469658fad39f5dbe457d887139130b6096b0491a18e3104c298245905d7edd813e4e378045ddb9fc92767338c2309ad831db68a64a30b71cdc33b5396caabf41b6b27c350b388813891ba6482ffa1315d956bdab5518411663cbce65aee2828c784b0684f81a094c5667c0b5384ae979f37ddb3943a385661164212c59527d178e6dfb6c92065c51c1aa8121c1b115b0752f542b34146aa1333da4ee0ec11c232b60fad7617fcaa8c4488317c1202af4bd471b72243e062ed0d807bd6099fb66b1042f8b437a1990440c37aa467ee266ab0907864c4a93d38f1d447a3619a2442641955847283d71ee5e4dd9378b64477f2e7a21fa6b2b73bf19e325049d186bfde786f1182ffe5894fbbae65fd410d1b760c54bcf36fc45178be00366e766cf24b855e9806ff746350cb0c9daa329cfc0e8fb6b1b61e49aa8169bf84c85224623732d75328a9c59f5a2a5e46aef5a443de971df651e434ab3864023c85ab08727f71f5cd7056dfdac01713b20b68f88883cd8d32a326ffbe3e9f8d9ff5ef0d7177e6bc2cd09ef4274f8fa7acb637884c4acaccee534cdeed820cc2755689a309a11256387ae5618010524ffa14e011d9885cccd54036e752684417f485eae51c53bdc670f075494e7dc8852a5ce67d79f0f221863804e69ca18a6ce3dca5a1157518f9deae6c89869eb8ab95cc08837cb649327e7cd3ff60b1533a07f9f1f7a2fb2ea9034045b0f9ad411c76ab97a8754daaaf47db447230c53a21aea2f2f87d46fc32f9124d07e52119bcee05188da2a20b572fad4919ebfa5e5db0e9923bf80859fc52e8cc019de731e253708854f2b39c37fe7020232fc0f07529a6b4c7b51eb6cf336fbf274c38c4e67be1f7a21cfac14baf69abae798dddc863cb9fd50e0d3d451d6a3b6ff687347b0846586e4bcb1b488b31a918ad05f57a1f71e26082a97e8502f49657f5cd0907172c1b766353f9e7db2d8c1df377977ac25ce264d58c80d9a83d728d0ce8a5229b1078f01ac7256977bff8c5fe5141a5aa1b070186885cae8ed4b79b8d4d22df809713500a6c98166e50d10d8fc112e1eb6c332fe9a3d9e4a92c43616a6da1983ae159540fa4895265fd9546e9fccb5f656b32118f50a1a086ead61e05eba5e863d4af642c10a8ef6c9e3eb9362e0f9c97892e5df399c49b8602df2e62ed56cba728f1ce3f550bd5e244237cd0f30a90eda57b8b00cbc24101632221d8c50e4c3f8be1366409dc0163c7ec0656e0621b55bffe57a205351d545076fdfd64b3b22640fe4c7d6f582fbb88419d1277c954c103c7f1b52194661aecb7799a7e020170338a7cd2566b947928a845595e87edbff0487d98cf2471b55e84404d8c75e946fb1afa65f12b251bc1f6f7912177976a4f01f1190b623672509e313b3215dac2e4a7c5129350161ff642782faa42d762361be70d22df0d4b12dfa6cbc5d4e9ae1d7e13e0b70e5424b6f6e401ed86076c97f83370d50b6729098402bd620ef53960def5e9f19213b908550af0da5f8581518b8889c5e66f9726adbce574e80f27078b383321c7356e87024785143c723d1d86ebf69e1f93da88af750304b01278d15d2e1bc855fe99fdedb3db9dd429e6f7c42bfaa82a76a0cf1673e8ebc7d4c3093b7742c11857eb0ff5a83f9affaa7cfe6f60d46c066f2dc42a7b7c26571cf162a81f1d8e3738e645370650dd7a62f75f6ad661a4ee930383a58d4a0ac9dea8e6c412ebc112520127a5f74e6229133efd94bbe007eb47cd18958c8d6874857763a73fc8ba7cd54a003b00d42abd3dd6984a10a588ae9e060424b9afdd47feb0879ca5270e208fc63c958e4b3cb2ce123c86431d936c1d8358d8db3ed955af7fcf1387a6bbeb3e6bc3a0759d08870b6661d5358018d500bb793a738d8b784bdb7eab8d9a2200aca0fb74225f609885001de21b1889019661f0a9c1bfc2e9d6403216a922813b805d377d669b443531b851c7458aa5076be331b83fc372bd7a1511c839258ecfc5f0a282f025e9f30b480cc70ba6d939db0b8bcdaff42dc1132cc77c9caded97d798d72c5456676fbd769c95c5470cc99fac694168f3a308930f66347d4023af10ea57dc501d1a7a2882ea9dd7ae2209eeee5ceaf792d20f31328e5c0edd96eda4b1be30cf307db518c8392ff0d5fc6c94a733941ae15bb72be8415adb56c281170002c80cfa9a72799604ed7e3ce9e3c449cc2cb5147b8d32d8a5ce402983c34913ec72a61995fc92076d4a4230f94037cd6871cad263cda9cfd7b83bdd4630422d3f58897878a0d926ab0858df5ec1bcfbd73de19a0712518d2967e84c4073b07b41f8529b6170e12c8ccc7cfb5a820c7d96e9fe5d81f5e61cfab56be52d3981e19dcb59e47b59ea46d04a9b9c0a65b63bf734800ca055488638868a22db4e5e767fbdb6806f8fdc27567ca8d0d33a7aecf1a6f4440929a75cb63b3766db8e573ca524b6194b141e19aa2dd0b588444a90ff7a25849a21cd0e1b6627eaa236645a281124f8e50275afeefe91234370f33f10dba1171d2afa56d8cbe7574c18cafaf74457172a81ea69a39454e40444504477a6318d3a967c1f2c777163f435e468d11d59026c289a7d0481419fd54f47601271c9e2ed3d22d4d694769a6e44b7066caf1e9a9c65dc1d9b0939d721d228f84326095d723289c2287f5409161cfbd0fc2bac2c1f523f232cc8fb9576a0e1fed75fe08a6050ddaff17d9127794bf2d2ab9874d84872a4ff723c19b57974c9c875a014a2e8deaaa2c8367e9eb48fc73bb619186f31267406d16684c8f1c0ce5e834db237465c21b9e0b9ced60612fa9dcad8be1afddae5b598d5f2f4233c17951c4198ed18b940bb93566ebb918d46801eb106236ebd951539f77ccc46485fe93b8abc8f2210f62af517d865ee282171ac2888d90dff2b3232558b03fd66286268dba399b34821080943858d8c34bc50af8dfa978c38341d818844e7989701be588f8ad464af638f4f1525daf1f71ca38f67b42b4a8035b7d5384d93a02cd9e09efeb895ada40dfd9236e94fd10ddc89309ac635005b707f7e2ec4bad6914032dcfd307dd0e1a52b2d13e64bbaa7105c30e5611ac59a0050bb1bacc56b8653c1a08e12f45009319633e60eb1ca8cd9d060a50e9b54c35b8527cd67f905c6fb41eebd7136c86481827157110f041792516b47dff2861a0bcd9bb56caa0de6b4a55b49f342cc87f70e95e48e04c217b1f258a6c30685aec7324880cce7de2ce07d954172f1a49042a9db6c58e065302ded387164725348e3ad045870c30cef7a78fc3190b5547ec489551b165ed56511b0b1c45640aea35ee60b4728335a7c264526deeca7967d90cea45c0fabc1d74c02a65b37b3d9ac505ec85362cbcb427e297227e3f3e059bec361fe6d59e60cbb84b118da265c0250d0f52b5ded63f2c7ff87de61a6023c228b30d69a1649de63ab1fa5d91dfb28bc71eaa19311b6beb6e91c47b7298158080133f746a47b37fcb9dbb1da3f98d58db0075d21b1a0cde21290c5d627d4ace05f044f937da3c78c0c526b18f82a97aebc74eb7e44e943704c63fd30aecc3c3b748cff4fe107999bf2de46f34f1d52a085c911177317b204aa3af0964d62d54febdb6e8eed10534392bfcf7a78e28d3ac4c218fd13238ee70d796cb77b0bc0079a47ea2626120d1dd4222c14779b71a352e239aa80536aeebc1e742cf552abb77598ed8ad65ba53c93fd6564c6ea38546ee7851e120864ef8d67b210fc29e5e82424d649e8b8274e3e4f1513ff8d1c8122b5a496969aa68be0e41d80ac368b2c77cc44fb71edf1685ce2d6e030dd81bce11ecce4ceefcb9a6eb0d4d8c50fee3e82c0b42ba5c4981ad6d05c61968c2354d1c8b492bf9fd03cd79f1e950676d3b417ded0c81f00db30ddb11af48f7f6497141ef9e2513b00ac51731880d0cbe606dcf46dd38715934ff674a7f4c620e3b1ed987a5076e9c6437637b3b58a8b0b4c5ea7a601b336653ed28f97b701d19433f315827343cee14d1214080fb2684e1e911db180ef500de4319ce509d9102112b1fe6eca13289ef149c9fb7824b42789e3653a0f89c7e89810657ebd24e07b2b53b4c5e80a68479c7a75e6a46aae11ca5ba4633efaf00b7555a97f122ded97d4b01054d98d071e0e9b665c8f31b43682f3c12a02ff0d93eedb31c9762911ce51ec49a09a5dbb1e4efc101c9c594b76d09186f84d73efaa40c3e7ea30228b0e6fa2f6803f3def27702a0c61807ea425acea87330291244a82f399815a3a2488219a4cdffadecaa47a6f574687c8109ed74c60a47d6f66af35a3f3c49050cc9a4b78bea8ccbe592c345baaf647975b8a1657350d6bcf9b4a671fde2736651a84102cc892a662637d410f9400f509726e08d15de0ddad2ba79cadec8326c79c6c46fc76cc4153f18614f5894562a6e387a2459df5098b941725b0ec30d04e39b47fe95a07bc1409d1fc7a5c3ffdd10b8f2726e167a99954ef879f46f3aff78a6f60e61ec0dde1c7142eff25b5fcecff8dd21cc901a2ea145af12d649e2d77207740117d237ea33a8fbd386dde2a64d1c815b51ea9149a98d923beaf421f19f7bcad856e975b6a82bc3a33102901c78873ee134b806c0c1ff06aefb6a08f0d719117acef4fac6071d852c5f2d60b4d0cac96d4184cbfe2065b406566a8b3cc11839da4a99ce7eb73c525ff9a8a688c5b308606f05d6c43fd66147c10f8e35234a064e3190641238537c2347b45c32fe6f08e65598943235ccb62f3e668c3ed4284361d4f0ef5c69f72ed5ce78bfe86b49e8b7245c2a6e7405bab3d5588048f8b1d2d37b1c3bd2da91fc2eb04231d90315febcb3ff632eaa979f2fe3f613c53a2cf88d1c2b1d2c9d5869c8cefdf35956f04048b4ec092d533fbb8eac741a64dd2f24532998a092c90571e726b7501aa3c5c2dd9bd7385e954077bc75e1f527bce9b0a13bf8730884aa70e92968d99be3e29a2643415402dca017a9517eeda6a2ddcc71d96fc0aa1d66aed5e4273f19b2f330226e2f93526c48ee0cfd5ee48a18567d03fa4c7ab69eba8f8d9d88805311ead826f75346f9a1dcfa1ba4a75524acee1fd48aeebe9668e2be3dd84e39884cc3aa79c3617e52422fd5c4d611089a87244e30674f13a4d4bd94fc6216bf96da8b423f10a439e72865ddc9b616320703180504b8bf4fa25bd5629bcf079a07ccef2677b81bfa5e3e5013ba5c908aa6e277e3beb011fb24e0b639f42656cd49ec19c277496bc56117502c0246426b9781509fbc19055ea5ca41c84400f23e0ed9ebfd50be64100d87b489d3d851023bd61c1eb32a65fbca145ab4edba844dbfa71e529de25d2af0488bb126d361e7042bae17a9cfe668eafeefb9191aa4dda107ff961a353bd9a8ca9f4431408067f711a82187d97287f9ca5c2c66fbd735607a56bc2277b65ed0e4e37efb036dae58ad725ac156de6623a4d325bd70e68c3c0422f3d64a511afee5ed05465c7f7e13605bf171373aa60ea7ec8b287f26bcbe32ec24c20d5b4e4449e0bec73a29dd5486feac38cf90e3e810958b09c675b6181ce203b1ce7ebe4dac917f063ad6120ebf9025997914138a8aa30035bf6001ae97d7a566e4790812dfd07aa26853d6cb95da455155ca77465c8749229c37bd0736f93b5899da9c41c21cd102a3a5a42ffa2be8599308fdb962bc7fc5ea15fbda7cbc1e2958244dc6892ad6b8dc42b1500134f318561fe8543cb89f28693fdd8ca54a28b8062070001f300430c7aeb0f8bf737fb8502d425a7bc0f568cc5718ab990bc67057d6bf399e27ac75574cd6b5a515eaf9492be5b03667949aae1123ba6e8b6efa42efdba5fec67c26231cee37716519d6ef5f240881ea12b7005094dbb0f4cf14d9f3f754957d05952499365c720229807ac67466877fde8a8939bffaaae7ea379cd40540fa88b180f106661f4b462963baec8c10d905a50d96697a3f74fcafa60298d9fd97ad7180297515291bfd25f571292fd7aadbf77225c2ea43b2082c499bf01d54bce407b01bd758fc29f788428c04b8ccb556af17456ed6dc0666220f1c30343f310e92522933f889e2f65ee2cd18a2e4dcf30b9e078a9d549e6d36289f5210f9d08b01050cfc867a5691f6667b25a548f9e50516404ba18ce060e89fb767141bf104768bc24bb34e3aa207d8a1ae267f0a3679f1dae7b189a36b41082a36fa339a645a14f4ddd7c6d5704bb1afa1b2a558580d727f64f113a657d0c1258f8cc4c2524f99c2379ed109d569aa0eeb4a592b2990b0e350158060929de4d884a4678588f51717ecd27aae61d9ffe390717204b1ef45417ea4ee90e096073d1be3c21220a5da75301faa25b4cd4d72036a25c6278c131b046b2afe54ce099f9edc57d04007663706aa6c8ded8921e4b0b596f04cc667a0d18f360c2e0e363e863c5e589338ceea567453b7a1a8d0edfbbb52c6f7b387710c14d64f8077a0289a8795b42a9150416e9c9188f844f6e237c43a1e05f4bae1ac856055bea24c0ffa021fb821e715183662f1f07405cd5b0e5094022646787ff5da4ece2caf4cd7282070c2464bb9ea4cec8c506a1494f7bec5e85af8f0143632c15c4852791eace4438dd6265f90b7ffb7cdfe613360b9bc5f7eb496073ddad8545b2d9aaf4567eca85d89013a2246989aa13e099da3540320a6252e7e8dada0c0b5c43361b0823cc76497508aeee275b309dd61c2480adf6086dab998fd52e5f30ecb735923418d83326b112a80ff5fb4b7dfe3afb662e83f41d2836e9bbacc527efc4bb05ac113e421cc3d829c86ae47d8825a7ab9b656c7cdde9d13c9e01068bca5e74b6c450bc2be7c4f83d580600e9e11d215db08a5e6690552adbe2dbfcd37d00cb908fc7357ea644a846dd6a3c6427ed45877a8b5d1e87da0ca558ece8c82d3a5d044f549ae001ab419f499b383d5235bea5ae491d00432139637163077006d751b63ac5668933b43841b419a544919ed5f203677fa9f80813a57f850c31429f428ebe3a8b36cf67b9e93e9cf760a15fd195014280329d14354e68131e1cb3a7bcfe49651ea3b57ccd87956b12ab935b59e9cd3bdc6bfd22f3291f7e97d3af937afb21425c5841afcac1186f52221da2d85efd29dc59591a7ccef98041ec600c0ff97dea5d06874d6293a5855c98ab4cd28b37babd810b5da50bba48430eb14b1a20fcc5f2e96689cbf7b193738ed6a02953674a73043f9b6e0d8ab8812bba8432be057e8bc7a54d9084a4f09b07c331e25bb9f3addf836d0f43bf13fbe0eb4d8fe401a5d895444a943e4dff4fae1f905ba39f3fedb9283b0a0066cf91e4cb1f5b8638e2e1ee9f9de050c59f025f2893e072320f088eb0c922985cd22efa95bc774d725e86f4a4eee1a1b969bbd28a7e4da101280a8da9d2ccece82db559822c0d153cb84ffbdeaa3e13bcf02cf2350cbf84b805c035c40ce21385d6d21c3b83c55c82d0bcae7a6c561658a41906511f58dbad56d8ebadebde1564a39e85162c2061fed7d4892d870ab376e2343b8f65c7388ef27e3131363948bd4f68618c28d7376d59a19e63d4faa318271ec7b0ff323fd5319400aaa397f97670ffb649e812cce7b293f59706ad3717d606622de0fa4be3f06d4a990c2a7222077ca10bdafc0e0ad4a7817eb270a9ff01b0e279609af5d2979d4445c1b78fdf2c12b8cb259ee428f55f88aee7c9edf2fabbd92ec02257e8ca28da825014fbafb6fbbc684f5e9686c301103ac687219ac9dfbf74bea102eb96d6a212a8470cd30bf85e6ccf16a2306453d90df16986805e8249569ee5e2da3dfb1fef2be1ed8bf798b913417ad7ae4f4a22e5371204e05160dd094d3be9137a9583f1fd1c73546a43b3d7496dfb1f7b0c8a1c96f6a105447941a14af7ce6ebbc05464723f7ebc620c82e034e33d9edca868ff3890a96a3683f388a025740ea68ae2465dee385fc2ea1684256b7eb318c74ca76575aa3c38b9700c919d168ff7731b161c3c26c3920607c99fff367454775f2819f2a4c82e27a45ee4c6d713f88ae3d7491fa4325df3a1128e01fdbfd37fe16b5fd180a9fe265ac50e3825308b7db758685a4204773d6f4f02f1f0353347f6f95c3d370d0c61f43a350341ce3825c2622a2ed50c8f47849a7c5f2c84daf9c1476fa350dbaa5e58e00083dc0000cf0567f431de47f94bddf8b7d606ef9ddb9aaf1302712f6b11611aa3dca09e906781a05f4ee09571359b86891fe023a06d3e25e82c58b8fa563084db5806352751550b7b447ea166badb501750987bfb2fb586499b70d26546f64437b5bbc859eff479f1faa314b9a17c82f8c7055e69b1f8b70ff01a264dafb179304f04c0a756e962768a9a912e6d60b978e159c16b193b661b57334d773e51f8aab7c8512798aecebe492fecdf1aaa884231e8fcc53df0d0e18947314e1c69fa02692c49b81752a1652e523d9f639e6a20f310097caf96ff24eff2b36b43497c61701526c0700576b66ca16d86c0e5f4bda98fabac972a5268409c76c04ccefc0e681f2aa4dabe5855dde3bb84c610b7219bc7057eec954b0104a72a5183af1458ad94ed1526d1d60664bd60379918d8503e2e88dd25b2888812edfaba145c4a3c1ca32fe2aa23bef3b3321033a4c5a36de2d6fbea98be63b66c4f65cd2ffd0e9f1d56f74d4310ef15464aa89a30b9119fe21c270abf856bc0174b84d66c7a9690623da73af6f469372ec91a41f311f4d1d8bc566d18a7f636c6c335ed7f60169f2b761e994653da79badd317ef43d80d6932e81bc48351f09199723ee2ab328055e59265b42f1c3b18c2e168d407304994f9146da4df348a3817210f08fda70c2f0699a998436e8a24b03d2bc240558c7f093cb081cf3b737b7c1a4d63bc21537f7441e3360d301d23beb3b64cd595a2a98ffd8883287dcab92a917a450c32f0457615619a345e4c1a0d1a0f2784a6e65db8ac8c935a10f9bed247428a3a1461f4fffc75fb2fba86913cba1c8888f5b677fac56f0f29b4a434db51daa922c8a83692d0e3c8aeda639d012d1a073efbeed5a50120833c77497067c97b93a3b38aa7b2c69d5488f8ce6cdc9dc7a509f2d86fd48ef44f35caf0601ff828ce79a9bae85ed0cb0d51f950f6896a7042613446e8bf86810de79d92e1b43e58515e46e8e08789aa0677661bcd3a21dcda24548ac9c1e4d937a64b7242fc1a1f5e33aca7c54aab4e3cc77a8025562999a02f1e256a322708ff6f618e4b26bc1d7982cc5b4834b93e7c0ce434c517b9b4ccbc46971e4a7b98ed72c25c8f85b7c59de4ebee48e6b717d5f302e16ab2a1bd923e585736a5600218bb8784d76ef309e97ef243fcf4dbacc4ace6ac104a4c91e9437f4fe160518fd13e7a03aa4378cbe0837935e95809aa220e1c7013c5f64d2218b1df89655793173bea38acffffa8a66a0739dc2755845633d6b3262d92b7575207de37b70b57941375907bee669a2080e59fb4dbbf0ec30f087a2b84e9b42806933bc87ddbd88fae7580f7714c34554fa10a2bcbbc20d4ba43f1943d9b1f6d9c3eca7d536996b6c288e4dd39459c793f112298f356712f4a43ad8ea7f4d99263508f0ece5a4fef123a7925021a10b75d9c9be673fb004c1e1e9013d88cbd84929cce5b6309f470e6b8c83e323b2da54b932d11eaf5606eb52a1132b5f8cd2731bf7bd8cc9f7d148317a4c2129f4ea02d26d01c15c4f0e3ce45af3388fea4d7e649653bc07aff0e55da3da59a3096098ac0b7e740efe62d143bd3d4cbd3c90034f7736caf62aea28260cfed210e8927050bdeefc6df82b66e03a01a2af0502eb48a440e773535bf8b432553462e784508dc69b44c4cdfad8e590839b1c4c5762f1e9e6ef614d72dbb0c21f90ba49d421804a7cdf07926be2dbf796dfda873e6b156d1d30dd2bdbd555fc41e19e0695a7e65ffcac9ef5d916aeb5e0f61c9830fe45142b7acf6048e1982f8c17f3b353a1877e4a3b76f73cc4db9dea32e98cac422e1e895d6bdcf8eba97ca5be49bc412713ae77dde8a212dbaddc6ede3e5c7b34f49ba806e1765dc0aaf07f2635d85206dc3765eb547db455dfb6ca5b32685926e5da9e01d5ae339a179185cb2fd09a517374ee479e0c3efd52409b95bd57b40fc0ddce221060eb47f65db44d5aeb5d10bc65192c216fe566f5a0fecae15b6f59e3388ef76b47a6ada2df5aa16bd855a2109b643424ff6581d7ca065aa4f1fc2a0305fd0ac6e5efaee3e26cb5fbac13bbebce9fcfef242e8aedd191bae65adbabe19570e818dfd94285e23ddd6cd32c170794b6f2e87760745234c6297518d617f0d84ccbb40e579f6ce289232bb6e324d0cba46fdef0af14db7d35de1890f445068321b58322304bfe3f9d30f6ab4e4307f75ac19a21933032ad748768efce39da6c1efb4dcf04cc7838aecad9811b04362b6d3eff40a0bdcd4b1c249159c4a69c0b81aa25e3d420f3f9cf4bc03474df109637295c6ad9a5a5159395cd1784531216de9b5792fc0992374c2cda24c962294cfd739640ad578145bdc3355285df3303bfc4d62e9477b2a85228242f3fa513a2db176e08445d2be2d096fe2687d8e02185d7549598bbdcf3ba250ed81ca9a047f8308fc215294510e890b2e2314f0d1020ca10ce972ffbca778ff0ac8fb8343bde947e7ed9d7348a603d0d0f3ee31d5126867b970e676a3d8566b1c0b9ce50f95d5f8d0fe6840be71e791672265a21888c918bfbbcf1ed08b07c07cc65c7a147a858251ec4b3bf1333a97533ff2554dcf88fbf8c6af103e88e252dfd8420190b3c87ee45d5b3fc11c8282fc975fa57788999dee31b429f502cda7a0e0ae90b460ee3ce8bb96389e96d226aed22204781ef351591ece4ab6f6fb6c21dcfa099b0f18895182446aa66773f8a1c401aae487a03b74e1eaaafc2e8df1707f974fd6d33a8289f5a5520f5e6fc05fea717401995d9b3816490e2d3282e269bdb00c0cb43af5e82bddc5bcabe1df6955dff7b37fa4c261bc0a5667381ad2274d034af99e5a39b2484add9706608824baf17c3046b0b4e65cd9e209b85e02125e398b390d54ad34c2a84647c0fa403a0e3a383cbcafab264b482e5ac25ede2696dcb146edb1a0766ce2563f8b81b6cc76fce68c3ad571f7cd98c92914fad89587b02967c41a933e7bb8683eeda23f8faa8bb9f99b2095df701b7a2fd219e8c6354511c174b167b90bc1584418f6af0a1695ccaa11f15ceb6080109515b0fc82fb26a330da4fb9bbb1b2b089ab5459639020c8eb05296e52904ab1faa1bb37dd08db1fe3e76d3cb1b7fbc2ee5970be4ca6de78f703e93a618ebfa78b9da1361e16a7189920b9d779f6492ba49a79a10011e82d7ac456b09671f857aa328b3431b5931bfb28c087dab837ad82b276df187af680f8741c5cdb323f66cf6e0a4a0390f8d7f9df0868850a09a10b89304a7336dc8af94d446314a7831c7603e334d098ffc8dda6bc7cc7054a530f3fe2e4bb961481b70a5574f62f6e936657c28c1dc17a9afafed5b2e17b2dcdae0378c29422a9a4e6745f35f645db3fd915833cd54904063bc31c2586310ed4f04393083948e2068d6dff6f8b71d281848abdf3753eb4e7ef9f940f6f33fea58429408b3e2372b609975050d53b8147e4bbe9f9552263f3c255ef771b846b0844af834f4026526261eacfb46b4e8ce7393937d778c6ee060e3d54705110951b728d4374d89f324ddb34fdde7651ac6f1cf2eb5e4548e18b5a53284063cf625a0f457dcbe598d3b27b5da775cf914f3f26f0b61431398cd5bfef19debecf7ed28b0dd68f40369c53ea550fe8be274e16c1a8c1c67d63ed3d2405bcc243f9c0e19aadc134d5fa1bd887f3487bce598e423395ffa2201631cf019c3bf43c29da073997f3efcf1178b561df9b89d1cd8ffc3d60938c1fde882932c056b4fcedfbceac8798adcf952fddfcf5ed059f7f3e6ee3bff747ec55110d10ebfe63fdcded7519321dd4f6b093cae29d732541aece8ad379921daa1b7fa75e58a8b3bc761f68128ce827d77d571f4f54dfcb95c941a1460f5f753235ecd0507bba475ac4ee0b709d513fb73eebb0f8dbcede7497255faec9f2194f2ca2aed4589d7812c4faa3fb1882bab94a7db8857fee13425084d544874f62156573f1b60e7665e3e6221c669ac1c928bcac58e947f646d7d2f5550b57813cdc4fc27e6fca23c91fd50d85ef437acb96883d2e3964f99745139aebc2e23dc536f55fad1badfcb9c37a5338709d210c92fbceac185834c884a0e27a410ac47edd8379309afd8cc1276e1b5bbaaf356e08a28e0fcdd6be6cc4d20e5a7ec75044f63487a1e28371f65d539059aef9c03e974431d2deb6058c38057fe86fc7668a693b61e03cc22bcff6a9b32a1f3b0e5dd40bdc3ec6e8c15bf469bc888011fce8bcbe19fea8b69b3c832d2eeee7890ff800116aebbb6824449c95744d9d631268fe4ed044d3d36bc90b55d64061a2d9783bf373daa4bce1d43325db9be6039d1fda2ae9b72b763baf06b39b316f53fa1226325a262c8635a2490ed21dbc8406e363e52386893175340250d8d74fbfff5743916caa60c05c46a2bb011d027869377411e6dae324d2443a1cef6e018988ed14485241f0d761c7bd557b0a8de8b6ee49fc16434d5fceb35deb6ac1ad811b01c90f84954070d3c20cef176578a49c4ae57baa02eb5d93b134745bb7f1374fc85ba515a3db27f44246ea86b47038333278dbe67eb95659d1430ea68ad0f49d98f98300d5d30454df14b3e982e7eb89e7f23fc9113b03043ece7087650d60641dc7c2d239ef0954b763bd21eace188c56ba6b3c65ea0157ca32728219b507ff16e24397dc4d427a199fe80d34ce4d41ecb48efd5ed26b30375cfd1eb95eb1d61d86a13027f33bc00f7b4e7d702e1be367dfffa112331b326c413ab70a98f528d687ce049ad37b3632c37e15c68d25c7ff21850e3a8dbc623e1f10a8072a88d6e24dc6d1f352477d72f5b9e79918f63edd8f65bbd205d6298e429b9c380beaa9692e474b2f7e3be00380d0d371b4f005036e5837fe460ca6212257ae9bb2f9abadac26ca422d4bae6419dddbc6919722f1c134d642e17595c00e2a01af1e254148d48a39150909c6ba9b6405c5f6b50c69b5dda6c2a97e7cf14bcaeddcc762d52e2f7cc995df2de759ef4b48a9b97c5a52973d24304a1d5e6cb00c7ad51376fe5986c9bfc9e8a1c295749dcb395db565b572c8bb7d0d1a4dfd0916e5d963f9856698ac14022a2d5d3f8581aaac0a5ec19a5bc2587918e84e0407f5752af3fea43b673ac6db3bd947bf9d0c920002f12da69b5b2987a7d516fe964647fd1afe002653f7fb1b4f123cc9255886663c7bc46cf337160659bf95c8ad8868dd99caf6ce8010b1eb23a577c5c63123e02da884fb31db65399bffce1ee9f0ed6b1ece0465f07903b4f05a35f19cf33bcee6fa590b75ab3f1bafd268cf900b9777d76119a5f5bf678fdc1b69171403d74b15e972141d3eb3459f378846e0776f42c075174ba7cc2ed42354bb077b0f7e2b82228233007c5119651d14035a1f3546d958d44944d879af16c95869f0a9710fc394f4b02c0b4add1be095aa73fed9a85e1e404212db214e325fffd0f3914e60b64e9b9aa3e4393ca1512ba9577b47beb329cf653b3fff7c55aa566eb74d61749f31456452dd1e41f4b3de6330decbf6567ba45b29f766861fb541f5cef1d0b89766f1c91daddaf72a53d107ab06578349bdeecfd2f975b5b26e6f86c2a4b4dc46a686d66a572c995365200364b183e91714978d4e6612802873f0f9c793327d9517361b7be2d89c113899dff995f9f63990b9a34e045a088cd625ba3ae82f86c5b28008673cdd79230d025a2569d08c87e47a4074b9b8d9e7f8a7c6c4561a8adc0be4fa9f522795adb6b5fe9fddea52bb311b7f6fd296f655c137b24790e3d821f18ffaf86bd146c69990a5f6c16a6b966231809a7f0cc270d4fdb6c0d3b045f0c8c2e0218302e40c1eb30cee871a9f1079a196350f958e8b585f0efb5102cee6e2f10ca9882db743516105b80d612f7028f3473017fd81e5f76bba08b2ba08430733503b55df6c9d8b86644040f84526f399d105f525d511da96143b7c0ac07b351e012f227b59bcec889d38d76ac50b0a55c5977761a07a6c112a1ad06da5f44c45a36cc0ebc78079c39445fc9f5e52bf45c797c9242e28a4ffe70df5c0f96228a1d5d21c648185d3d2c49ce3b03d2095d19e17f3e3bdaad34039c52154121000d675ca85c04f827960f377b3eb85b1fc5ac7ff08c9796811940ed82499efb62e6969dc12e3dbfd29889458ef788593b1719c842f6ae2d08af2ab4c5f0aea08e1a1c90291d82b0dcc49ed29b9b7426bbb5d2e4652f614db3c5a117f054ab243e6c8df2ea514b1f8914740aa341f74bb7f03c5410fc3e86ec19f519120993e02253f8f873f84e9bbd8906881ab5e2b5817f2733ca47c46e45330eacd12e4cee6310874f198fd1a4b457bb6095e526c18d6e15215f6a603c72a19190cb59cf1d36fc8a3eda4ecca859ff70eac58176ac25084e639a9f8ecb1609a70e9c5846e34f8d5e171488001c70499acf3a1bb89614cded3402fce87d4e4dc671856591c986fe7efb18178160aab8a99c14d753176cebbeda18d21cc445f5fab789780dd0ce4c33131b856e018974ad485dde7b15833a509bacece5def520b0bff1b0f8707dfe80598f6e379b679a12b6313b7d2851b413e14bb8c5d72ab17c0ab75805f6380ef92745849af25a3c3328d29ef64be84d1a6c6fca9faddad3d95a8281d6e5fe0b7b4306d3f595632b164ff50576596dd54bab0dd20958c18e6b7c7bc0b46e594ac1c079504de8dd24c776dc9b5afc9a6472998222940b6621d7d813d291c41a0c74d9167137cd83848bc7bf7b3cb06f5b3748f4c4a547de41d4fb9d280a0b76c001254ab650de66f8c3a2a3de01d1b5589abde26111cdf66e11e266d31946ae9e64afff2117d9380e9bb42d041e500a2566443d72cdec67b0396c6d2b2e6efdecb446d39d4631778c3bef479586879e59d7c62a30591e7dd232b0ae402e0e8c57e07fc068fa72e260cda07606a1652ce503424861cc192274d156f2adf9610e664e79032eaea2f8ed288cfc1dfb1086dcb8083774d4583a2e7010b577fad338781ea8d0376dc8327d82348d6e92a97e13f4c4aa1e8d4b290690c6539ba20401079adfa5213c1c754305bf3191675238681e52ced6b15268e23d579fbba4dc512be3ed6a0aa53e43d4194133a6c208ab40679913887866a1470acb594207965ec277545e3f932f2af2ca63e00e1d0c65b524a107b19821d32415ff77b460563cf189283a67a3b8dd1925c19b3ce643d0914da2f7101d8ac495886365cbafe7e04328d2c3276d4426b9605547b7ec663177f5f1971bffb7b39a26830bf122cb6e5f241fc10967fcdf274864db6509ca70017302c97096fce1c122b07a95887c40e94ff61f9b5ddd1ee971f63498788fa95a8cffc9e739529b1f02ab1e892e5cd7f2476c45707df4b40f4ed07568175bcc3c155c7305da0b883a7b3d7d1b1648c10ab28524992e5272e21afe545ca830b83fa85716dca5ad1fb901b9c65115419ece8e6391d8b76e2ddc77e6750a181b3b0ff2523f4a18511cd140779475746e2cde39b0cd6f4914445cd11becc5e0f5347234705567480e89a68e347f9d15391a8d1abd00a9c979abd3dc948630be301bbb682ad780d5063cec9e77cb80d7c5681526a26922f9317a09e5b69ec44670a62d672939eca633205223afca602b98d44e494a747b4892d57ff6ed99442a97bacb9dec6794ae5de234448047eb684f2aec2134775f208d259f016d4a13a318a7be6b87f12f996652f7b52ac4b9afd889191f639c0d935abf27e32797d6857b7c91bf2c2bb9d5f221c0456967337011f069038cf6a6bbf9281dcaa20c63aa053006e89d8b93fada3a584894b9f9ec3bee83d919f32d1dc7f73e62d69c683ed9d43df54210257413149c11da7e3c088ea263526a0fb979e4ddcb7e539733ffdcc073c845f7ea5004943307a75885583a64de9df355eb98f2a2845ae260ad169ff0e2a054a30bbea4d867fbde15bf5454b437a1aa6307fb3920d2c7b6d122fb8bfdcda312a3d17a4666dc341a3cb042201ee513f0c5e5017a76281a8a468d1818e478a778a0191a5f331bc5532b01f4535d656e1bba190014093c22e7334893e00cb12815439e5f79d68eb2c0b9f7fe5edc8678471e97bbbb1ab0887e15f42fd5f59a82c2a5ddc9931dcebf635e09a5494a892668f9e8620f27ae4e435dda01b0e8bfd35ecc2b9182083ea01c86bb3a6df7756ab7225ccefbd6a49c5eee1c8f27cf820bfa2fcdbb73f921fa8d583a93c0f8fe7a1c1f0f6e9c72c07b302c274667b1ede4d769adba1406eaada12a6083e19fd78bf8aa5516a7f6723f5cb100912161be1af95aa3c720ea248e3dfa98f2eb6d1a3cd3b3dc890c5d334f12070ec1405cacfcc1b5700ddcf62ae74abe163b2ce1666f364454d3ede61ec5ac186aec7872fcbda2ee44c8d4421ee41e622a85644f196182a2f931084baa97dfab60e5a93672d705c63f6d28c87e695c1307de9e14109015b836bf90dcb0b93270b8107d6de313e44b6bcf51830c25dfd82c41344080dc53d67ef1d0341dfe92d0e70bf8de045291a27982ee11bcd0b974c4343eba891fd4452ebfd1fa2287b68c322c3f0bda680ab5024da11839e55e1424c789b41a9a5fc50139bd811d2bc6980e91cbffdfcb4ed0c776477f1d64bbf945641469197bbf6ec108e964d1221bab423826a1e01ca2da7cd60a992b37bc206a63e9927903fb0aff6c73ea0379624374a4394830ef6db837e985868eb7199b7681621b0c33ccdacee8ba43a65094a37c77c50c066a550ec659cce77a451c7aa1f1a976d41627e9baa6ff48c6fcdf4d249bd39b32a266adbfbe5ec861d71b6da0082f7cd06c99abe94b2405f6694e6d1e41f83a31a065ea1d5d341f2ef5a94e4198957780848c98dedad97e2a50737ca7e0ad0cd85af1f427f973cfba2b4f0b51a69223d133ff88e059f564e45a4b1855327e6f1a0d746b44af49d87c65b47ab72f8e2df3a6e3d4e4bb101f5839c2e4b713610232d52fcf1d1a942c504787d7348fb252e8e541331dc81cb1c1efbd6e4a61fc295b9e98ab23dbe34f8bce40e0d78b1ab4eab4751c627bf0c82176ac0496523a46636d5cd4c0c793eb08f2063f0a07f29bc8d4ab9d8c0d1a32c4b660c5e215962146a1b3a93a25c000130e21606a2e0ef5281e9ea11685cc4717505e602a4bb4be1a537538f7df0f85beb989d70df8ed21e4fb5e7636e954a17a38f906e935c3c9d3396cf9f40b05d5f6e2e7539898c7019df2acca50b16f1d21e314426f1bfada4aeff695d1776511b68ab016ceb71ac4157156347bbab4722377adc451501e66f475b5f3931c6d2a1ce01c6b10d46bc5c43ab1e1e036ddb37cc9d5ba2280d5745614e5a9487475fba1d374514b952a5fa2dab4a7abaf87cda1e30c10235e348378cb58d667428cbd1be9720c20ef36953d83b09b52964a89b1f54c5a880d5897653b3a21bb47ae6618302af98cbb536b3cff6a9512c3ba927627a2cd1274abc76c03ffddcc0bcbe5e6f09380dde718998def4aaa83dd61547e0d4e89c44f5a1e1b9490157224204a5745096c19478a86b094c2a7ac4dbb73d742722490c3b45d5f3965381beb42e62e57fc2d9376a803f8d6ed1ebfacfeb9a8997fbf1005af50086e18cfed783d1f59cdf409e954d7f4b2d90f8eef198e4ca459a9fd45601eed8a849b6a80cf3b855ee2e0941c912a7c5b8c4246b3bfd0bdc7debc757ff75e4d1105ccbc8a14b1a3eb452040229b2f7ae2ec64f1b033e9c3d34d9128c0851f86cfffa010a890b46ac49aae4f17ead58832245c95b4288e949cdc9f65bbd81e0d0f322b5f25a365c0f354d3ed522a0343e3fe31d7e6b694c0b25a2da29dc51dc1715d69fef4bd66df33f832f20910066417dc9cba1faa4aab90aed5d37e139033c4d048a48f8ae4a71d911bc5e39a41209dee029601b0151a03734122e62e07bbd3a694e2549af1742347776969fec1c3140621b6c7e50652aa2d47b8c279d6ce959a332a70c8f8ff24465172a49289348a9fbbd72b817a3f4adb29a6e4221153d52c0e422a13197e2ef29e8f2b6fd418aa60f4167f467fb89ce91ea912877d659b7943af98a8b05c37635f17716da36596daa61bdca015e34a1d5af5856e1ae44516402a3c53a7a08c60c287eb43fd8dccdf22636529c2d424e3ad6510f7a00464ea3b5d46c404e084c59ae75c24feeae7b782c2d57298ff2f6604d0cb3d3f6e3a8a8ea60ef6e5c2a5fa69226f8cb9916fe4f354f213d9074824bc52043a9406a312e44d3b9a7dde6fde737c60b2bf89f5885237d4d62857bc6690c3e6110ffce8d20c8924979621ba36f93436d91caa0bcc32ba825289cfebf50f39944074b237b6e7b74d85d666919b7788feb8f74a006e812d851c5266d0d79e5971aeec5d7831309cee953c2e704e8a75e0e7b5c8d33534c32472b93406686b60ac1814312c6048efb8397622a96a69cae3029085bf62db044eb0ab4a1d0b21b79540a026dc736cd7840663de68757eb1e4cd381e8a51004f734c5386273ec9fa387155abff2e32402b582dc7c30ec9f4ccd6135d355c009e11aaaab6f10fbc0fd785593727c755af4b34bddb5786c6cdc790bf58b3c1a82e784a8940d6355631dbe9696b42b6da6c0ee2d914cd193a006c74c91a6acd8ae35a114174ea5d5be7aef0d6421de823b649855961cf643ca4078ef0ee28f67e0c518702238685f745b705729bd4ecd72acb4b3de198a59274592de761c9e87f2301c1c9576d3fdf027f103a1df5193d85c2149ec0bb0c7812ddab1c5b926b627c6c616213100bad18a2debac618525740e8ba194b38a279135fa30f16fd82631079446bc576dd95833d6d0df49c3520486c284d07237aae4288f6613c9fcd60e3be0bfc6265c207a6f3ab72962e91fdade2b845b565bc420943031cf93366c3c8bfd492c1dc4c506f54d3efae01b023291266b80ae3fd090aad052385be34a7b6a0785dd1a0657b14362503c7601a528de7bd90cf91726f4ca80fa180294a37fa919d415c8968c7ff898a9d0be11af79b3e0f3ddd681d1f580305a4c70b1ba4423790ac62e29aa202aefd1f2037db433958181974671b15044e6fd3d611cda00bb44ee6cab4f694b97caa077e940ea97528cef2ff540dbfa67f89ceab3b8c638aae182a1911102dc4ea984093cccbf62a08c0b76f1fcba45db2c26ca71acdf60ce69ab609315e70c9fcc6de2290781580aeb03e8b94d9a29881b7f3de61dc8342140f4c54794400360c0f7fbb81e5730f943d0736543fdd5e07cc6a0c0aef729b668551efeea5e28dd52cd9d8dfad4fda5e7655e3fe50899269c926613a4fc1de9a1072126b07d3e1f2896d8c7b09c977cf914bac26f1a9bd282261270cb36f982407d84a905883e632db36e4c841e8a1a289335925095d2479f057a53000ec45367214cf711cfd71b96f1472f19e438c4cb06050160801cb8b9bfdd8cfd41008cfa9134314b4ecf191b41f5195ac033fb97f73614048194f31bc7a10194d138383ca360f85f07de633e5fba5d0ae505aca8ac5c16c2cbb3cd47d65b95cf69f13e703ac0715e00eee90757b2c24ad7991e0816903f726c419edf523e09fd463176990df1f479904c14f6448f53f37407f80ee6f9bae35db6bbb52c17b73f940cd866fddca730be6d2953e21040fa8cd6dbefa2fc20201a2b1999bc67309d30226e766129d0505875f1796872748b67ac79dba7dfdfa16420388b94242a8865183fa295ffc80874618a5e3abf2ccfefc46f2efa6e678ef19164be7cc3479acd0297ab1014064320d3cf3ae8314c996e73a066bf1ec75fe6766e320ac06c917a98f47efc0aeaeea4de1bcd5f83e96175222af236f35292906a65c6798c8809139e0d33854a5194cc2c98c3104ba24cdd6f340678bb1ac4af2eab3832944570c2a8b814ceee04951fdb0303adcaf418c578cb0d8cc3742f3ee24493af22e7596e55235381cd7bb044c0e0704b1140f624617c9ac56ac8159a76b0ca97237e581b8f30ae877bd33eec1bab23fd93278b8f75fa1dc59221aa96c6a32b503b1eb74c7092e19693ff39e8951bc0ff516b0d5adba19df6e2428639787960879e7ae5a7ff2f2e29792a214bae4107f36f3e2f612a0188ffb36659da7a10709964913edfbd75630a5c860b038a716e9b86fdc8799176707f457125fe5b85485955a3501f089637a38a6cc5934d012d31bb48e2cb28a54d6012abf35f3793d7236c1a2d2554a63c3349c43e1c912d42b2cf9e8bcd48e682e3824735bffde9e9e27b44b25e470a75cac4f7aa9368a3d2163ce6e5209d2caf6ecde6490330f92b74762c50d0509720c452ae08bbd23dd16146018d516825bf06f4cf2c5c0c42322915d061ded973dc688cc36867a67d593d0a6b93117363742da3ada3554b8b143f430d309fe8560d862df63e3a8e6e9ff8aec3c21367b3f11aee987852a32ebde56af77779f14d306726d8d1ebf70cfda2ed59284f56f3e5bf7930510b3c9ed2869acf8bdaf45042ac8c8ad1c3df184ac4823024351649014b7be4428ffdcf0ebce3fabe0af1acc8ee771aae9dba6e740bf5ccafbb46fa935b6de57ca4336cf7971e18a03849fbba076d3dc743b493514440875a803a764af246bda98ea2be6cfd3337692d5f6c6d4c41c9e9303b4189b6548e716a4b62e25361af376841ac791a9617fdad67d9b43fcdf7c6b37e1369d5253a2a9e3dbea19dc7ee40736379af9c33a1df7846ab92899f63d6cf056964c44579081a18d68ef07779d4d295bd128077252886a9c23ba8a7a0e9b99ab4b6ac023e1b99837c9eb327c36cc066b3d32f4677497583658f2476ef7ce65a34c63b0c671249d52626627076db0dc6d857795a8b23634f3273528b61dd26bdf18b146afd05fbd1bb056956040d7d0f38dc9f638c03132a0ec4af320dfa2b612baef877be166827a58b920bd0cf1c1aef035e30ff3301c73e20f5fd3a969aeab3b9d9b52d1ce42f55cccb8e7882eb25d4fccfb3d8ad864b60016ce886c95a0c754dfac37b369bdeb24f11224a076b0559610306aa062e755578563765bb93cddb71a54280dd4b0f1a7c83ce235b680d59c19ebc5ea2406639b5c47826e8d082aa4f8d2bb86e92fdb7bda3761a4d69f2110b770ad6a70b7f6f4d1656a65e2aaadcb907ff1ebe1ecc80bbed028c326d9681bf478e0ccd91dc6f8fcde73d6a6eb557cd35284cad5c47da2be7bfcc11c9718a2f66b89b0355c86dc289090b20f8ebb2cf74f40ededefaef157d6cec14c40a34617a6749bf2af438d355c3663852ddf66ad99ec9c26cbcf58d5e2b4569f24035c832607e1da82e41c34972ccf0bda0701955bff117e2afa07627f63d25c2c7d4efe040cc3cec05bc32b900556d55df406fb283fc5fda12a8dbc9b4a6ea1839a7a839bb9005746dfa5835585b2762f4f3ddeaf8fe7cfdebc3d4a97d5e8fce4f44f9b312ac0e1b13ea38e3c46001972bedc7e6a2a79f63880a272e26874da55bf3a63556f726fb37aad072873fae1926a70fcc7b090cd8748d9540ffca5e83d57fe3d660cad7b5a68be761945506702a0473ba3e9888fb194966882021dbda63db70680e6c227fd0bcfdb31b2a89eaf59239d6dcdec642145de8227b4eb3e59893833f9ca8de354b8c16ad15d61208f4dc98caa4723223368e9c54d221654a7ea9bd3dd267f8d0652752ea1ef482d1884fdd1253260aa65282b03d5d275a6a4344c84b324d278712e4bded9f898a9212444e06d38a8dae53dab2fc4dfd3b525b6cb4b5dd84639b5a463c22eac4eded0128ef6a8aed3bb01d4dccf2633dce03b8e45535608252b7a833a0b1cb227e30584059353ca690b107d71cec8a6df5b049e3a84783d48b20fa8af7f42b04ff4bce392549d0eb1bf4986b64a7003e9939ea0a9680f8cb62087424850b1dbd2964e3de596a7391d0baf960eb904976665787fd0161aea1f010cadca6f696c3480a4ba12c768bd37c62593a398f1bd6b7a46fefb5f7e19a854b4bc63b7f0bc5bfdfe472671c69d18931d625a0a51a0f16e77c941de56248cf26cfe1ef8b6b2ee37438682909306fafcc73c8f3494a6ce9f04f3c772071013cd6c6316666efb9f2859c6e05c223464503bfa30cd077dfe342ddc1550ef8682a7b9951bd2ff291d4611c19a46b2096e6423d2e0fa78bad0ba7c07400203a01855ed595ad48b305521624bb3ec320dc96dbd0d3175fc8881dd2aa0327e682dffb9739b65ad3343b0a9415d956ef2a11e1fbc1eab5e827d8d1778d53ea39ff51e1fc6d4d6ec22081924b8e0a1afaa9305475ebd1897fed8ae60227721751f938280ad31b2f0083c1a3f6e7c1fc70a3e30c023e9c9c109a7b8ab9f6b9032a4f409d7aa610bf2566feba243e3ac0ea971f92ff5e2079cd73f6f9f3204a75343e1600c2083e2c91157c16908327c92356acbf6e89af46db37018ac62924f6f65b5857b9a6142bf233e83f469af1bb36681554e2c0e95f59ee459dadf475509e223b361ece9bfb9118a56fcb55a8d84bec9d1d5a22d655e0f442ff5d334d57ffa1390d0bfd1f57de07c2521d6b3b6eb40b2c192565ca49c582163dc7b6785707f76b7b4f29c24cc87710f60cff99e0ac571ed7b6fa69dc127ae370dabd8546a339b220435866ad054262848550f454cb0709c5e8b92baf559d186206efacbb7013b56401217c9d60c713e3ac8e129548476c7932924b753a44a240175066b53d9a992086dca13a1ff0d88093a803ff5e823b899df7b8ce2190d483941b0953f2cbc06300fa5e053da8ed49bed061b93c5e84c08f4e75096a87a825c611a91ad32218cfd998c2e3a9f97d7c9289624cee0c69f87643ab697fec9cfa7ba645252cf1c1619fc639743327abe4967c3a3b6ccda156834edaa18e2245f89d9b6339915311761fae3809f5f895985b0a82aa7f68f1aca20683b27735abf0a5b8bf7eff7a8daf70380d95be734199b7791efacd7f0afd95f5aa6dcf6c5c17c09e4256d4f7dd782364d6365c9fb2eaf6d4d1ee42cbefe7f664efa662781f330e6f10b637b9d9930293d7ea06718667ae6e3b25517f7911a58be87e8f70578031d03a12f0923d1bd49b45cb51520c64798fefcb9ad858a239e7fd2f71939df7026eb03c7bda41df097f3ea132aed48e546f003410ffd7349229a3374f41f3aef861c435d8fb73dae97fe06b875c49743940cdf8f581b9da4344222453af5290f09d31dcc541c36b486d573f4bca642d6bde7d9e08de9a3a085a72a685b7dadd4f2f5504dfb79ab5366449b6b89a704bfcee20ffbb953d0420cd1e1ac35b8bf31f48645fb56c5a344a380ce8d7e590aab562ccfe0d92399ad1afe266a21426b9511e0f123d322b3fd2c8e4b9ee63c7b94f53d8f2a4dffa1dd285783fd0a6c5d06275afc1bd513e47488211fb31447975fa98d2fd6ef201542ec9ba374bb2a7119ad3dfbffc4728e032a6e4c8081e3b5a5d37f44d474dfbd2f4e1efaaf3625a83e0d1a907dca535ec753d3b8d5095958c167c3e6cb8178c77e4cdee7e4d298cca716c08bb4f6459da2755e83491782230f839ab60bc7e775fea9916ae2a00a4ea9f8f7b4166dd8b5b17cee20880fe0d6023622060fc62dc32da1c98e01cdd4f2c5aef6d49a60d84df65aff718dbf7ced2e19274736073007709ecf6dbe1b1f02a1dcfee83fc7e93c3bf266aff5d775c5c4e7b105426c6ce15142ad0662143c5248ee47ab8b13aef4c76e37aed5db3290f7ad7f64c70aa4722466118503e8043a76060c87eae05a7a461e041ccd5991257a640ed29ddcd3cc4acf701295945b62b146ac0214cb6605f57434a71f753148d52ea5db2702a755760a9376a1ff6157577efc7f8d6bcaf700ea6b23da0c385395aedba13bf031919e253110eec084ee6946a6610a8c906ac0dc626c381dc22a79d4f74480b902e8bc97945d871155c1743c5acae57ae4ae688904633ee6aac79c926232e9cbadc19c22815ba012231955f1cf1978d385755292b0f245f78ca8314a8d87790ae2fee198b845926f7ad99de8f4a06903374ab928ae405217a29425df9c56fa3041d76d9c8c6b53d7edd1fd1298e0ab0b0d9a7f832c503b52e38734e6ccd7041484b843fa2114bd35d9c1797b47c0139accf08ce792e2a2ee37c4ba4fedd784ecb53d36123c08b47d32e2f63185f427e53b9595f686d23e8b76fb99f156c4433f9565cb2f81948c639b505d92315875a28d3ba3005be9ab3e458ce606ed5bfbc6d662272710d897cda68ddcd96a4098661c7bf586d4b49e938a8da3c35f0dea61a15645841a6b753f212517bf67f3157856fed92df1b90b877b9951942714414534975b5cce9cf8d654a6fdbf22672756ebc5f7045a51413b487850a7166afb201dc0cdcc977687922cc613d899620ddebf33c952e766842baa0cb60c61fcbacec41178d210ac76bc49c405336efcde0b3d0304ca586d8c0455b8c8b1256f8f6676db78f93c3eea1ed97c43e390fa824b44e48df88b8e87e9587e10dd552e55710de1312164b4e576035c94dc846621bfbc6785df409f6c9bc9c5605f802171f2a31ce553accb7727211f730e32b9b3c8d3fa4c49ef944832975645a1ed336ba689ea1d2c4f3b0bcc3e8815bcabfb1cb17c7ebafe0b60b537a6935c127f1338570aa506917735047b28a2c3e06518e6cc6c2b8e836e7b2136cfeebfb4136758a2805694a5893f1fefb6aa19bceaba588b377a9d270da05b09b8e36277418c8a6f073d925b47314ee2da8d01d0ffe9753f9314a47e4da42af2e03ce2eeb925758d077334012269b3294d190b387b1d095e8f8c1d5715ff0688f293f0cf7c6340306aa8517d6ae1ef27231a5d1ba49ff341255cece51cef0b0afca40f2356fc96e488a714341e7fcbd2f3f4fadd331c1e2214dbbaa55ac7434ea16b600abe3a44afd2a53a93b9d8c7b586c39ddab2f6ea6817b4d836019e744bc90382661647544ed3a81d60db560e5cff0b3b2fae307ff581c7c5fee60e23892c2569ba605edeb1e32d83da6216a311853822f68e3b4b6e8f06755a833c5161bf3570211ef047e9a9eacda7bc53cf31bb1e128c3a2951363837728d73d3d565f6abbe0311ddb07dce53a69c165becd9bda78aaae5b9f76a6dc8ad4c4f5c58cd9489fc291fe74f9c18d18339f1b1646e37f6be9088b4b4fa7c7fac2ef3e28ba1f32c4ad5bda0768f6f9c61b6c89ecccb5c130960ab03104dc994d399a17fb2f52067f7487d9d857c83880d67486da4dd8abd01a59c0c1a166e39796b0dbe8c3ff2fe30f85c74b0b81206a3d84988f73a7952978861d4813cc069e22bfb455e8810cebf046984e21e4ae60bd7d9ae697bbade46117c4eeff1afcb1d88133c7d0e82758b8e52d8a8480a18257e7feb5ddc08245a69c5a4b8517d0b39dd05b088d83e2eccf5feb0442e7f809f95f044db36839ecfd36cb231efe6061e4bbb95ec8aeb3d75ae77728d605c2fa5a52e15a50e179181f444dae3c996d78dddcb6749ab9a27501b3e64bd0c7fd218a4c50bbbe56797bdbb3f117328a35532144d036fb1217f1a7f733dd65330b21a7576944902f7de145027ea9c645f6ea434681eeb008af780c12679644854dc6dbd727f2399c25fbdaece4ba09f9c3fa46218ab970d5f2b59dc95ca738cabc95104c21c251321377bd88b768ffdf74050bcfdd33569e14c99e2a74d9e909e843b65b87e4145eefa4cc29b278aa408632b2898ea6a242c0d61925f35c13c840003e6513b269efc5b1fe8dd06e5783a5fc91ce0ae11748708df64d1cf9cec8c59a5f4792da7212dec0223b706980bb85af6cf22bcd14f7f5f65dfed298af7d08e25971117f6360d896dcef53c3f19a83a7a62311627ea594089ccb49ca04642200f9fc56cc74cd6a3f9015b680157d6586dbb565a199407d864dd2efb1714933e4e18731217f40211235940f583ba321ef3692e8e6b8ce10cf3d08e677b1df9a253d7e6dea88d52233d546431e85f819221ac3ab337d433a0d9275d9fa5c2c6aea91c647cc557338cbdfcc83a1bbd787718b71d4e86ddef0eb85aef4cfb090e768e61768f144aac294a3962590d51c3e9a098ce15e3baf6ff8d955a19ba0c361914503e0c5ac4f806299eaa50d885423168425ac35b9b6d860b612aa7f8308c62a1557488cda6ac225266e0e5ae7cd432448a1f877e1e001d558ac1bbcf1ad1504f0da8c8701e7b703ff99cdd8a9a4f823163ef3aa47a5d7c39a1adbf3286770a3048e5bddaa776342434f12fb304b003479b5fb3380f054c40c48515340f7b2550bedce50a066c3bfd25501c7a772ebccb4b7d7cb59d0119735a7b6b078bdcb634879bcfa528f1fffec23e8b5cb4db105f6c77fa8b6d532e61fe4c98411a37fe6caa8de673628e12c75be479ea22787ec68a5731538d023a96df33dd560f2eed2132fa6c25da50215b1a57dd0a63aa6a3a85d73f7a392bfa7b7fb88dd41fd96ab96da1a66583b1703735141e59da0ba6765f2969482bf8eaf21249552557fe4d6831749d9cfe4c25f4661f8726ea6c28b59d61bac961f363cf1a361e984754ec0160a3a289ed0ccad30704ef329d5b4424627a125376bf74c0a63652ea34cd686105572a2b0908bcbaa184ac915bdb6d789616f0aed42379dbc9a994bc8a8e7f3dbaaf3256bbe19db2f0838ae5be607ca906051f99484dd5f5bfa1b2856e3c70eebf3fe7ae604119701cef2bc3a0ab4ebb98c90d6a03c8b892c90d2e3c79b0a65be57d996d8d6af69915dcfc62711253987512fce952f129361a736cbef4d21247afbd02e64d15a5e89202217a8c87743ed573aba66423c497a9df0454da771b8ab537d95c9f346e21a28904c7265f7dcf3b1597391bc1b824c2a94456dc4e7c95c931a757203d20a0113bfa6cf2bd9726c030df4cf8cbb48cf99e0f988121feb8120cb8e5952b12b57b9056bab9d0c13c0c670aa2a17f9faff53729e88c7d077c3075f35cd704e4c673dc7615a941a6a65c79f8dc6432cde77ebebda3807545cefdc9382349f88bb74046329e5643177472c29bef04dac20717f2c4f8363f6b72be75f07eba50f0b7909b85c5385e7411cf95f7b5d4c192ff470b2288a466037e34c89c073a5927880d273269943f1ee070a518df4058217d93f2d01078e08235ed99975102dcb1195a5cf07cf8d8af1496bd0d30bdaf1725d7954d22a4a8bc87beaed7d6223e09370b98f5c8dcf9f18f65ad44089354233370a05e1eef4b982ec2d2a929dabf5413646fff0cf0c5fa8249a5c39dec71bfa492c4450ee5fe0af935a776ad4ff3f31ae8bc457adebc3d6bfc4f8fe37ad0cc330a300d5ab9d3698f3ebe1c3b03b7bd24524bd5e3badf58e0532ae9453f37bf7cae746303bf1e9eb8359477b7d138a763157d4f44ac4141e6f1eabd3fb1600845c1ec850c758852bd69f3948fa6c6011906e248ea1ec32e2a02969620d96e1c66b506c87ff95eb716f745abc9af165fa1a081a35a968f15db10836de023506a40ce4bb297fd67d9d5b2c1fdefeb9cca43bb8278f87bd483e1f7002030bec3cda9e1a8a17f0d6213beaa47124b5f01b47f428c948f5f9dcabdaaccfb97890b168ec0451ab22e2c9a39a6cbef64f3d5489fb94987cbb8697788b57b99eff9d5ac3b90779317711d30df022c59e3f116e43166a55f4c44fac41ed3fa4ff69e424ceabb7cea54c387d28291ff5d47998ec2a620d38670189a17caa9b2fb5702f782a6047ae39789a90cb4534ee91a22304593c3a24109d9b654e2176d9a454a69a8ada6ade9d200e93c4c1ce70113cf710daeadbb18746447be6f0e939de68b43bb88a04d17e1d31a569848a2d56a21c4b29b383002e3544fed4fd03a6009c1eb898feea6f7d730463f4aeeb3d80249d5867aa31bab936451f46527abc6ac3cec7b93feab3f0fbcfdab6bbeb1da228651b2a602424bd58b0154ba38b3b50569adbe4fa534f3c2348324b0d3f560dd95f7b90a6e85d3ae0ed85f6433db1c42ed5011f29beb8b01142830a840a1add22660e2bfc8aaef3533e19738d0697aeecf383b6e3b481b77e2798164931f54533144ecd3f615225bf6a21be527e16b233d98b3667990811fb914c99604f477787dd95f350daeb752dd38455b9876620ee17b2dde8881e594925a348c71607ab772a91d5ee351693a9283536ace84f5cebf1d719bb8d082f6d2633d2118095cc57c8e73f3ab5b11a53d214acc1421a3d92a8e305f8f8ff28d644433ef36a9d89b6be58489ff03e370e5a43435678ca5d6642751fe4e2e31f9d98a858d0d33f51cf9f3bac70d37c5076176fd2dcabc7bd6ae684bd41593dc0f60dfdd89628fe7d677b2635d2f84718a432ce564eee7c1235022604d98351491c653c68941328ecf56c9819f6da66c91f629e5a049933d2dc1bfbaf2632ce9f7c3172ef371aa8d2b4db3b8ba14e989b3c32c1308295353c9d0a2763ed12848dfcf80dc77bbec8ab14f8b4dc668d6ddd565890b285d9365d0f2ace847b2a579de643d77a7be97fc1165bb90a45fa59a6236c16f5ac520332ee409051b41ef9b78c820fecdf49fe556497d0d70f8d05033b90dbd83e4634e2e62ba48fa796fbe271cc2eae22ae088cf9b1672df74b367a8a94ba23201e2d8b33f48f993d6104512e45ff6377fb139a669725fc7d4e1eb79f04d15d2266f163228f83c2aa984c078d2894cf2d6c337054267d29dcf225a79afba37ef9edc213821490c036d2a016d460efbfd6d5f2b313d630813e442a9e57520b954820bfc38c00a342175ab9a4cfb97ff8869c52257fdf275873343297b08d1251dba70ee16d820a87a3abca44076b90e2387d5e05e04d48b3840b11c70fef162bd63b049447efc5609fc2b06633944af42937dda3a6de0de918f11eb3f7c8855e5787a77dac64a6803c112584df59a2e72f52b22256e858f37b3334e9817185dd33357a4af357fb131f9036760df609d57bba75688399d299a152140e64795b2ec05b89cfd69c37a1708b301c621cb1b4364a2140069b328cfb49acfd494e2014320447677907f7192bd71ee90f736f9dce0c601744a4d153fab532baa4e7c9804a825685c550ad85b94f57357605d077af5e05e831cf25162ba5fb7e4488dabdb042c674ebaf85ea8f7ec0ebdb3b1a70293f49246052046fbb41a510c908d1f0857f112eeb37351480b7a82197aed877036c2f53bd768cd20e56099ee24f8e5c78d525d366c091a392f7dfa36d94611d0e94a657d87bae915d5a57cd7c3ddfd837d7d12abe8691dd4347c911269902426aa29bba13c55e44babacdd0c04967ada9f88020a102ca81628cf7ed035b860bec9e0b168ff1fca88803c9da1c6a5a9d025b2d1aaeb474dbef7fe9257f6a1505f60b02afaf007a3ae034c9d351673b9aee6a715d663bdefc5ae4191ed9a4bdb7d448df8b07ffa4d43fec7ba459dcd281a615a383fc7d86a79aea5806f8cf215f92fefb04a6f458d5c3d3504eea9cb64d22aff399daaaae752431fb7f63e8a6f170af1dd0d6f6c83126bea88d6fe9859355dd6de466d257dc2834571105fcf13be08e0284999af226f0d1a7e431d78b7d7bc99a5515add373d698dd0dcea01150312fce48d4701e793d6d943dc9c70e615889f8a4b46ddb6db1932512ef132e71dfe77c26be37dc67e1b981149b55db866e43b569009c79a717e80e15b9149b502cf173b8c1e449038d8ce9dd369320c42f07e33914d8cd757c657e5aa8ece8ad3f9dd830dc36a2c2722972c8e5281e918d3aad52c5dd3f65e1f7ad1a5c8cf1f0427658a046e1db6d5e1ab68a7cdaa46466936420c0b82bc7ab4859a66b99211437a10774e6d865c3528fef7f050a801dd3c1178e64b3849bfbecb013dde8847bd4840e3fcd7237089824c80e08d5280ea9a091536e1930bbf300ad4d33a0798e82e2e0f4d635feee8ee8400a9915b16355220134f95f9eca2c3f2e49acc8c299a4a8194db97beb9dde95178e9ca418d8887e0bbff4639838872018214e342d87f4d6a36c0da944642e30b6befff5635bf5bee70b2b89bf66f5d14db9e49a87c26eb12a434260c938a191f5c3ce175538d7ffc2b9f725e39ee10de75e92edddfa09d7d13c83dbe9b5351d45a85fae5722f66be218e8406636c799b03737274d76d5a6aefb32b3a87804a17922ecdfb714bfc75ddec81a5aa8254142eb6cb590044c06618b7ded48ab2efb1d67dd1ff434e57983a6dd9abbb6d651b49333ce84c7d7eae0267522d111ac8c3b67bed46a637d47c49e9b3603afbc92d6f4bbe837235b40d2434e1ceb773e74c1f905e62d7a1b3d925fac7ade285244b76c931203d92776c46a868d2a9159382e4ad1a7dbafa6ae3edc36e7cc0821dbe4cc118c905206bc92a1935454c0d0c08a027237c87c0d3ea136f2757c9d667035cb93ce99c3b64f68bd2316ea15028c2759b563097efcd9da2c358284a534e1a10ee4d24d5cfebe35fa2bbb9740085b3f02dcd8062ed7cfd8e2c3103b23746e1a53e2001177d0c4b286567ecda6dd0b088fd4ffed35a9cef862c71a3915355cb3d6ec49df2a51eb7275da9e9cca942e0cc1fd32343e3661fa206c3ce7404e8541ff7329aff818d47047eca368bb68822043f03088a2dfe81382e26042513aa8acff9c52c62545f84f87766607ddddc81c78318ee569df4590db051ac87356acab2a0f57b8a7ae3701b9be10999714db4cece00b0db68cd632b9f40342250813a4b6623ecb3e2f305e5bd8968e0b835f6a9f662dc2aa690b61fb6cd355f2e4a9d682f93e5423723cb1d36c662417e4734276f83ff8928a7b6fc5c1a0fbe235f9c29b05cd1035fe980b9fb364386a15ed53a963283d859e8894fa7613c349b61c9c316c3a4e1b181b462c09a8c939548609065d09058e439d1c790917b501f89545b590a35ea0a8a8ed58bcafecea86e6bce197ef37b0d5afa943c4ec4d30b54b5e4551d194292ba2b32117f58b6f474b3e68c9d7bbdd687905faaac3ff6d3badeee8db04adb6ee0718b44d4d9a43e5d8ef667cb41ba9491a58b6ad13d9c63d181d772a60cd56ac690075b432ad4e96e8e40a25a2629fb7669de93cbf4a01f94ee59748c539848a75d0f50babca2300823841ec8efab8d0ff6eef3aac82aae8419020d8a250415a269ceebe513e5499593da06c73678cb5b0dab841fb473ed90102ca2d7e57ac299aef53e159ce5bdab402fad84352b87f39bb7072cc695fb54375762ef29e6cae368ff03bd617ab10c0bb2eb8e04c10bd49ea1c10893691b825557948d5db2abb44b0272c37e8ea0735b40c13bcd889132fe66d6a87956a4e456ebb36ca65b570e5dc4b4368ab298e9de6c4ebfdb5c1c11b1dcafe46202f4c55aee356b424964bcc2673c5531c6d38b6eea845c72d4e614edbb4a5738621666fee74ecaa5c0030403cf9e958aafa2a8b2330a69db8a3343dbef5de49eabeae054a37fdc72bfe38ed8cf771960a73d72683a608ba99198ad8536cfea4d51262a1c328c37ef8fbfae0e1705182e2ffe4912767c055c5430f21997c726bb77920df39913b492638d90612f0309a8f5f36492cef85f74a1852b0f255c385cf1f361c7229a9d105f95c5adcd35e2087b9158b88f31a793bcb5ec55760e6018d456f81d58690c9dff33c33cbc89a1a59759b490a0583278707adf3e93ebdd1cb970495375d59b42a7a22bb4cd701ccb396e2597e83d0819d0e4781d9a79deb97145a1890a32d4696faf297d9fe486526faf7420cf4f348c45cd33105ef83c577704fa3403d7398980977eee4c55e4a9491542b321f7bb6049ec70562e89cd4a652d62b5953eb0166f62d6fd4b94b1955a18150f7821ee2df0fc7b1fa04ce475d6dcca6cbacd49df39f4071a3d71188121946cc8b5aa5738adb64c2ca9396cabc197e4525667016747aa4a3beed3037f2e954f8c702376b40d484d8ee7deb1c191c97ff46253cf4faa2b1946131a9fb8613ffa42ab8c2ee5bcc991340974db9ae2352cf0134837e66d7059467404635dff24828d063f19d6a1bd69d8130cc8af09e8ba2ed67bf5a37fd40598b5fa9496f995c916a00d4bc7493092cbf1834d04454200192055c438290032252c5d2e4fe7b01464333b1963fd569b2c166ca21b4a2949adb4e8c6e212816b24fe5bcfea80c1f259b9644099a9d50c5203257cf9d7daecef955e61a565fcb5b176fac194b7ac9b93cbc72e7d2ddbce50a23f2b8fcc0f295ac18f6e9ccdd27b26764244735979c56830764433fc411a7702c44874e81ec260888dcf613858cc4e2c2e7acac17310fe247f3708b24a6b67e5d8b0dddcdc479c6c920a6cbb757c8dfd757157899910b44b29b377ba7181fb61c0b341f67790dac8521341d65f516d1ac0572873b5c4c0b26c47d522927ce924d91e32551f224eae5377903734552272fd971346e76aefdf8cf1084534e709e677b2d46dbd4cfeaafdfe75f53b3e60b67041dec483b4fb1bc8d079c43223fe3bfd8eb2fc3a5b3a2a9efd9e2610436621558ee5cad7454af9e1b78e69f75e6b766f8c31b549f7f80a284b27a5750b4fa38034f9e14d1144662c5d8a7d182e7686d4f9eac7ac4ad2e188770ee8c2d5df80b6a51ca0660399b3ccddbafa70ab0168f51e11bf7349e15f9907effc042a2d7a7fd643cd178fe487f341683549204737dd1bcba23088288bf20f24ba21c631861a5613c9486259ad682cf30f4e7bc318f4bf2e02e365010fe3c457f7abbc6ba2c2fdf6eed6613cf19b023d6c7e663ee8167b74b89b3868b936daa0f0f1590e9cdce64676ce3a43975f21b202eceea74961f22bdeccf5f6454f842119b8ab08238c0b5d27a61ece8a5b5a6597e0f37700d495f62d056e89b2727ba36bc9ae4a2535795d40cfd25cc46f25997469d734216ba882440d0ccb61ece35999a18e087f3c0afd7f4616cd4b38a04a0f909fe740c3a6e050e853a7d779d1c09ccd4d3a32797e89e88af67ff086555713e08c98a78af3a7738003ac8938de341ae22b6c122042c48852a1f990550c9bcd5715c816c5e566c7384ee7ea3f6ddcdf17ebc430a4945a08f6bc9190bca30b471237dbf8e699f81e7e8139ac03663acef9f96df88c46651ab5ef3827acd5bbfc0560c186ccd2a36792a959eb6477d589e0e2e80ead9870097a94dd1785fd57d2b694d313229f10b5b1d281a6cc27403e3479289f97d8710c2d5b906d615ab99145c7b423c670020be1efb2cb85351fbcfaf23f177d4c40ca8c4bc8837390f286af79f9ad2931afa7c0f93f2b349d0c14ad6295ab7dd5253e5ae301a8bdb91421e6bce846713330a519d13c50fb2a9c2c858dcb1f53ac0fd710e9cd81f07964ce5a480c22814362ba25b3f8966413bb33fb5f121a3b5a8aa6fa99cb979d0e6849b8c42a986ff3fdc610b720b1a4ebb703539c8e127cacb64c1b6c56eaa2f1f7fc5d0b8dcef0c9cedbd3bed4809bf88847fe620f5c7284a2edb929ec63e406292f79480bc2683e428a0a18fd92cec4600c9768567e40b368db3c4d0ac77414938eaa067a6e267352c62fb2caebafa86f8e01c4c475ad2d43f1d877370ba0be570ac229a905ad4346b9e9e149f519d0cdb8bc3b22246e2be7e4bab8039bf95dbbfe64908f9862bfdbebcfcc3bacff81e5fb406afe5f50641930827db629a26595a4dd31ddca841d124e147b5783df8000c473ee3f6036a387edc95fa0eae5b14cbb499ce44a853252a462f051c829c8f81e82c58d73ecf7709743da815e47efada6feab1646304b51d052852cf2357c072ae7355493d68c6a9bed3d48a46ef43c4877a49ca3bb8177a3119ea7af17c2e385e7f4ef5caee084fa6bd3bea17b48d675b2fcbdee80617f0582769d2af3f1e2be598b364777aef106b76caa0ca5204cbfd06e4ad2f47a311a1d9532a081bd3ec899e95f50112889857fadecc09ee359a38fdb3c1abc14924a3480828dee90b3907feb8bca38da84a10d42268c957e1bb281707aceca0c2c481d96c713f89eb26c17b6e984b8680ac407e7b89e22c409bf37c5937ed8bad3132b7907084fc3001e51ac88519d89b94dbe0cd9e71e9c9d5cc6035daabd100ab7f0272d64f80350e63feef4835f8edcd3fd8f5680c2510d9e9a439f5f7275858b5aeeccc1b398063660ab30c1719cc1081faeb44673db55ce926da91d032a03542543feb38d29567d9045aefc2617e7488c41a2da007a212870a285445786fa8e4f6e0c7dcf5061b6ee00019c1bd4ce4c3e7bbf4e05916e1a249311c45ffe936c2e96300f4597e2d4f6417981f86b9f1f55a159966ba73445aa4721fd24bebcf45835344ffe3e1163fb56bec03f3b26afdfbd771e15bd8ea940f7e7f36b8998e539a3a493e100739f91b85e499c946bcee3f7a55eb355c69e3216e58b27fec5d06bfaf1c1569f39e1a966d881333732e8d05189fc4707edd8dd530513aa2778d657c294be7eb2ab0fb688eead542565d3de002cf1aeb31b9ab02e7f9de2c835702e154cb42540abde0e33421c5d7d35b79c3c9a79cae1cfa132a119441431436f83501fd0c70739309be21acef074908ee5647b69f5b53fb2aab82303b73a8be0ed3bcbf86813c7e01976aebcb21e816525f91412e2b383c74c95f152460b7ae986338bd1fec3c74e1fc9ef292db45391d2a0984a40650effb77c72ade8090c984c7b1f5b57929dfa3e11cef9fc871b86ea487cfe68bda93335c14c48e5c9dd14ee3d0f2a040f7af5424fb4789b32a5de0a8d57dddd8087b9ae3c67d29ad2b3c18bd94c5e18e62439860e5db11704edb94e8a6001c8bf65e751c15738ce727a1fcd95430d00859706041f08d1a88ca7070e3987c5157773e187e878850243b4fb04b4a760d1c6bf8319d0e4dac0167292198b085d4aebc9522816068e157b5afcc4b91bf99132982fb7c637d6760ab0a5cc8d7cb7c42b4e58b385ea609fa98108c19cd561f98501a8aa1860ce72c927f32c69e87e38cd807a082623d54035e2d5587e86b4dc6a7037262cdaff9b0e3be87c5b63e73d1f693eefb2f757524c490e77507da0bd0f374977d1d380d42ea0a82760ef26a506feaf5ee77d401d1ed1d1728529eec13f610bbcd3521674ed8b61c570216cb55e0e9245883cccf79f4e6c88bd31f2e69e6bb91c313fdc2e788daeac36e63036de0cf858f2d6ff4dcd5432bbbfb463c9d3ae088427adf173afcf66e9a3fcd8c29313dee800ee7362bbab1b544f0ab09b6aecd75a8e18d3f4eea9469f30229faa74bfcdf447164f53bb9490b88731bd4e69a44ed70495a8a41271c63519499c931ff76f5291a5dff381bac2be1a76b2e13dd58cc79067554186a574a3df62d2150e65b9037b5fe3c006662b72a4bcba9a0533cfb25b81867f5346b87c6d26cdcdc6b2b3b966b8112ba15c224551d40166bed139dc0fc2f94ec591046928ad6dfe65022ca69fa015a3e88b4a1fdfe76c74b6318496117c87f0b03179c75465a0bf992f6deaf3f63547c4fc8f08e6dfc485af8834a16e08df8dad5cb5da14ef27005b822e27bc6c3fd108aabdf379ed99e32428d9df75b07a979dcacf1e4f6b8cc72b37d103d64df8ed7dab88b6a3f19caf5376205cc643caf723d137e55a56ea8990067bc5b13f3fee86311c1a2ca286d301e5b9f1a1fb3a55d7c8eab1471e980ce83d3f6901c554424ac77de04e45d3210d9992e6e124bdc520ae0acf8b9f59a1876d2d9a33de60d60f56c754e3477a3fa31a324438d9c22e4e9b7b6000d3d13f0e238e896a4b36f7ab6c859a1f0a55da9e58acf130c11d7f0a13f74b98449d1191726c4a4c42486be144aabb1c36889401ddfb4a639e07242dfaa9b366f4a8746715afeb1f7107041d7ad44c6e1a175760809b70f64ed0b839dd8139aef457df6939dcdf5972d4dcbdaf8fd4aa05334f4123212d341ccf87b6160027d867fd7ffc88b26577fd969b465a6525d5236225def86b0c7d0e1ef2d6d34fbf8978605cc13c422abdebcbc7131b9a8db23d0070afc9b4ab1af8da70c263490e4318fd48b29145e21f6af5efceb049d9cc89d359ed66fdc581b20a004179bce9439f6ae4890f6eb7df4baf4156bb27fbe3bb5e3496023f088298c9710c4030bf80d1edfc4b875511d0028a5b97410a66872e41459ff4feb96909f1b4cca2aac05bbfdca78fb01ce527f039a798026783a262e21c1527467986e5096145eb5158762e523e01c93d08c5b1fa07072499116897fd8eebb09dd766c368e14012b9f57ba38544a8519c6917b154f36b8cec0b619c34aa141731404ebaceb20fac32c88e658a858a400759b3c9b1613fcf7ff0ed5f6c1d93f15f767cd877e1a19df026e2ec83ab6c6a4a4b640bc34b85962491fe3b84b13e474d87df194cce4541302921b809206bfb6da107b4f67e8bfc86002ac8066c3c41141dc9e3804c1ee9cabdbfdd2c9cea561057123dc1c300014d8181ac40dde7b85cb479314ebac3101a2a6f4e5cbf75bcff622d59c56100972b195e74d1bd42ca50a6aa902355629bd3c56f69c0e8f7f0d1a95f5c273e74ac2dcc741dd10bfbefe43eab29cd7732bdd2241dcbdeaa4ac9be3a0ef4b90e776998fcd6048d856bc03f9c6d8f211f9c129f51274fe8536458969dc7f335e03ceb71af792b69bbaea8558d4df657fcca3b7e21c8ac7fa6a6b936d72fc7cf8e6466057b5335bbcce433fe376108742d863669ef918d8fb11b1a8d7166920774aea76505f9cae3c086f7bdf194b264e9d79ec15faf1f24a8b43b2e06e7ea5f00d14950ce40fb21dd2131343e5abd191b073f3269e52a5c421fb84dbc53a94ddbfd0ad524cac9a7682159ea66c576d521feaab7e715355ad5e398348eb24e46cdb7a13a9128a555d249ee6e7607511a41abbb6694e98eb842397ec6b89e05fa3bb631c78afea89a712fef221f4265b5b924ced8e1b5b887d1f149d603db402968e105b9e9ef65e07a856f1d3042f5cb50cae63343203d6a5323669f44155980d54f08f1848338f6d0e6318e7a34ca916e02f841bfa19d55f97fc9cc97253706d9097ceec2ea29d100ded65baafc807d04e278d29390c06aead845bdc1f4399e0b978eec93db437e9ab48bc9ab2145f2bf64fbd7a65f9434c9bb4bc56a5af0ddcf4469985fc2aeaaba9327e525ea3346b386ddc4b0c488aca3327b999c4c783a3b1cc113f74957d82839bc21e762ae84a2371dacdede965138dff18c13756894f8e653193cd4e30abde0e245177f99d5ad18480d7573f7c38de87038cfa95e3103cab8a5242dc14cc709a947d71fb7f6e2ac94004a5312e677d6de8801e505faa479268e8b39409cda6b22af22062899f1be31f7a85987d87534e97e38e481b9e6d31a6ea1cb812465b7790fd4a3a54921423e0db454862422ed7e0b9e9c555e7e68d69d5f5a6081d02dc15e3f21ff367e3a28a2105b921a56014c460392c3756f46e68269d421c8999eefdc561dd55fc6c5e9e8590319a68d5f7cf55b49c1f652dc17b583f6eebb4961cf9ab224a8329363291bd6cca9d9450dc53d06a350068b63b7f8110cdc2fa53f967e0c335a295dd394c7c3c40d1b9d0c6259ddb3a12a899289ad24bfb1f387f382898db96fd6d9008a8a35b69dd9e2b46412d7c40c18490c85d0d5999fcc6595deb133b2ca5bf2f1ca515fea11214b93a6d5135394b814de5eb4f7de36aa9e03265b3a1c49336303ad921678735a1ab946b4166f331ae83c1643a050325af63954ce1265042e7f659cac0b4b6d9697b81ad1c35a51e3901a660ce9d4c2172292b5328cc46a199af536ff2b5c5f5b162ba8c3159745011cf6dad1ee02c1731abd93798fde9d015e2c202ed0cd8b297d927be4c3435e86e071cb0fb3eff363b41c78c26f0c9b9c8c2e338a4b705319ec021b7fb78b71d6653120892ebc9a259df69143d09f2661403774f1059d692643d94cdedeade2cf278820ed516242fe8d6752ba06451cf48ff4c2d77adaa133a901f7b3991d1789358d81483a637fa626b14d3ed20f15683eecd854b2340d0f7c9fd1b5e13044b5f244ed8b768848b8c94bf6a8f19e3ee4a7aa8301cca20e6693c3682269720ee00bdf10b8ebe2ca6eaf5a4467b77ac57da0d26a8e4fa1457e9dff641b13eeebea2a10ba2e45163bd10cfccab00f922e537da013504a6c6b36aba2920152c166f2c35faa07acc4700ad002c80aeff49e0e59d1d94a48aaf1edcd046004ab25d54550344b03f39344cc13d448216e45d95119adb78415ef988a926dd339ec61ccb251b3f4f401306fbb92347fb9a3a4790302fff30a054a8308bc564599ba701fd1edaa032a83b38ab3e7ef0aae8f95d272f09bd1c0db8b0a969817aaf8663019f1988881952a031fa12aefa9127af9ea1d546202af632b2f0adf8eb4b71d6b805a69724229c235561a2f077261c569950a84325b93d943419d4ee74e026854d05b4c83f3251119368fdbd9cf4e4e58e664e6565b2684588a3479599ad192ffb88376264fe87cae0e709e24419890140397492169e08d13c18f56e253855308ae45511895a51ae8ecb25b827e421f1786b993f056f7b6395ba315fc5a26a63d46117b68842025a5c0baab6adbc690d6df7bb1b8b11fccae924a1ca47bd85ed1d4016c86f59cd5e9d419511c558b13c5a869dad6b2a7977b0d971da07fd78be9270af41021772040247dd453ee0d0b70f49ef64597d57838edb1d5694fb79a5ff860124c8cbc27a6f0bfd502bfefd0fc1af2385de8000d536cf5d17b112c5312a1c9389071adc05cffc88c3d728df77492858b5941c293acd6b51158e828bcd86745996a8595065c9effc07d0f6f6dcd352bbd4c02bfa155742abe0a8a9246c99aecc26cdc98656be51ffbd36488274dbf804211670149715e5a6f160ea2f59cdef407c0c40407970f192e43ebc3ffc4ca366410883ffd4d255d80bd7ffd6173909ea609a2fe069fe01b68d992eaa06f8b1421e1bc91ce0f7ac8fda94c13574271c6ce6796dedea845e07837dc980938767e9fe9a4101a3eaef63822daa4fb27c584207ba4f56c054b5ec42ce309f6a64f5a8dd97bae3f13126658a27f9c1741963f191f288baa5b99c576d3c7914c57e26a2f278acbae79366f4713ef5f5fb47b91e91f6c11fd7b78c6890650b7df0a0dee1023f648e3c59f441aa388cd389049b752ded701779252e48cc1bb54fe753b55576d75d2160808a3b7a8e95a5ef1ff0c8d4623c3f2b7a3dbff6c581095aaf764dfe5ee3322fedf8383917ef8c606069a568a0c6db9639dd95a20686433403b5a22172030548fe872813bc7c65a117201f8039c7f1bb78874628f31d9f49ab0b7a3cdc77308771ab20b284c97a88fe3bf5070fc07d74ef8e6ea41f821ef4d112721c1bb7e8c2ddb24c786c9b50c4f7bcd881a8eb06d3cad4d25816538df3fed52f489b436c273fac759bf23d19e03c989e0a750344669e4fadf6de31515c8b8caba42ac8098498a2bf8c2ceae6a8344eaafd2685950c092d5f8f409a9de3dc8e3d1e240cfd5d93db48fe444bb3ab21923aac67e280ad19610000bcafa66bb234899292aa383f369b368f9c46c862aa00de581cd1a005c5ba50b782a329d3b3bfe0dc0a8cebf54267a614c5ddb278dfccd5b863900d0df7eaf7c5ffa2a4c01271d81460b5b082b711139b5912f7caa5c921e0e51a8961cda8b7d4827ec904b73eef713ca1a412a3aabc0d98339444832ba3250415d76f05f232bdd913725b691027d8e1b6afc9cf85de94c5564e6499325ff061c5052cd411dd24088c838d0ded31fd528afab8896106efe09421b2e2338833676be3e4b38f90c6a0a0ad386d3942166d9724dffb634134e833d8d9fa6f3521046d2b06b86e382460307335fae537994df8e9097e8a6fd9540461bfcfb7d38e04e6ad89150dfda645e38e85c56f1a77bf324b5d4d1e6e4c1c88040086e8a27835c5516d673b5ea21d594152268b6be7ea17b0321732b8426d14d14136c45189c71659aae40f17e53eff9831043c36ab351fc725e7b76c86f8af04b45a3cd30e140c307d7e6a5170be8818e7f3bf4438b51ecb4ea131b9211fa24cde3502892d01bbe1b80afc1f3220545f1221cf8e63489dc1090d9cc267d5f0b40620afbcf52bcc72986981056619813e70a0e01ce69d1d5dfe33109384a3f0b7eadec70f5d0ef1410080874dd3bb1d3039cb53ac4fe4fcf3b3400f0a826a7cac6c29c2ea0cc55b3faaab89b2fe659658afb0324b5fa88413f5e3c9e88d95b3aff551e0501270f3276d4255ee4ec61dc4e168da379b8595e82b3090746a526c44f3939c4e99a0dd1168e220c9a4b7f211d99be5238b795fc537e6603c12239f61adf2eebd206792bce3f640de36931a8346dfdf4ed0cb8e1b9121f0bbf54f855457c29b2be6533a4a3d2d55ca4e8e6db7cd0a99acb665cc226619f28f3fcf0802dc9d25fe08adf3f334ca00a60179b42866be9fde78cbaa2f9813a77177b43cbcf389b9dab04964902acb9c772223ed5fa44758161f0f3c4cf981cbd5ff2bd08697aad7f88d513bc704def6ee42808ff59746a549f7ea2eb9111e04e95dbe1e5ed8d9d0cceff04a510e171c2d14b6d9afb47095007f1fb54dae50145917977f9d3ce644ff82eea395b126ae061a9827f09ce78468879d966792ec076bf26647b3a9269d4bf6317c4762c345a8c64af5aec80ceada90ac3caf0867b497cf39b6043e88d239bcfaa98f7921e4fa7918344c72504346b3ffa4e11d21e583ebeafab7333f3e8ba47084f626ac0706af3ba2291f263c4f5255efefb193e35f2ed52ce9c1bfd59eeeebe8a8c43c282efb67adaab8f3da4fe51f0de49861bb9132e080b12de069c2926294f7d406227c27e021af46c9dbcef9751327b532eb40089afe67013b2ff07e0753d4c3d8501371d003ba39a7f1fa5071c17433632246cef52c4cb9a0b03278d00cbd276660a299711f87568623d6fb922d8b88df08e6067856ce08512c1674a9799dc8989f531f701c3df3cc5bd92010f94755d356a127ec09a8ad678fb78bb20142c1b5345f49160d4d6dad6023adf0720579895011359e4c6367d384d21cd66c9133f007638ee9a61c5f8a24033988d7704062f3312cd7a62295733e7d1d566439bc080dd22b5c3142ff94e0aa3e2da5a93e67456915c581716b15a19d9799781ce5c4c6e7b4e0b37441043f121861630ab2e212bfb68803b3167917e8f43a37bb1b0d36976b15110e6b68a6af3da5c57da624066534b067e3c66d027dbb01212eb2ac8d27dbbcae07963152910e3701ceadc59bdf1fa214bb6adddb6cc1b35c678cc5c33954521cb2da8818695c466dedab90d1dba50467bf57193a5be443e54de8ccdab19d49cff935bbb243c6bb937ea3c022b760b041d1a28aa78960af9a25695d705c69e79ca32d7851894cabc222f87414a211ece9065af25dc310872de08c461330999d20c66fd8db34be7f1379f4138e6b9c139dd95fcefa1d9ff38ab3c8ab232da992295e98d7d7404842003b2f1df18fcb9e54af7bf452cadc81d6676c0fdccf5691e4917a142d1a53aca4352192c932fd22caab5241dae9a35a09a2a235a579b4793a111f86a3c14bbb20f30676988a4b941875cc8a77d808c32a3137cc078ff8dc4512eea20a486ff1c12e70108cb91e33aae52c63f70ee74227e36af85519724df0c07f85f8b49540be234f65eacff3eaf8a8c7c2c01653445351a3c2136c85a4aed8b282171a2388d2990e0257a2eec2edf8fefe381ca28b1887bc9d718174191927a1b8b8fbad14c181665781a5fdbf14377cc39d351fe23dcf0bc934305003759e47437cee53b5d07b79b2144e4684441511e4b4217051c4481c946dbbab4fa11f6f8dd6cadd2458e75631ded482497e9f6acf06cd40505800cb5228c058bc3d4631e5376f3d6d5a8a40bbf0861e8bf7fe83ea240fe27c0f92cf77d09238d2075f342e811dee163d11d4d448d6ce39205231866935810076e9452426ef4cf0ba61c99580fac6d07f080beb2da5246d99a98cd04c81223321a327e26537b75a05af5511ab8ad86ab97d040ca85e8e6f52747e7c4d0cb2fcc67467d9735d1fae1ddda2dfc055e5199e27741d4c8cdae0074caf8f3fe550dc16f6fd438631cb4f19192e780e8783ee51bcf31d82e8fb27523f9246b62a612160dced38d113c04c58cee76b74ed3cf35306845e46f1582771dfb6a8d54f654797e594629eb908cc0913b05f3d828328fbd60d4c7b5459e34323249e9955dfb3f347fea9c64b8c14c0a85f3c93b55b6a810b9f673e1f2d23d6612d42d19cf3d06db8ae46845a438ae0a00debdabe5c06ec53f169c253a8ec0e826fed4aa96781ccdd7a32e5dd49f64e926c7fcc3ce39bdd50c05ebb77f1348713d19d6c8a1ab5351fa02a8869efe7cb19c837452c61819b321ced91862f715c79345ee116c477ded16d0332ee3ad28a96fd25a736631681c61bcfe5dd6980e24fd4ab99d67bd0fc1229336deb66c0c56d74a25bdff4dad698e06e04249c13192678228eb4f621471b9dd2c9c928edbda8d2b9ef362c8c2f264ecd14937fae56c81d932397693c3400f9c6a4c996c31a5ddf8390c093581bb3416ec1b4af285aa4954964752601c7a70c394083ac900f6dd5858ac3bdc716f4e0da045756866892fc73e0d81493d31309f2be8f6c3c3511987d7d0370f1f4c65b7c405a372a8aa889dc17dac3f58e7c674fbf9bdaa8d45b9f7d2f9e4b09795f22749b899eae5e68ab4a5c47115d7ed750fe52eca03c7a7026db6c791fefe28914219bfcddc387ba6b13c07bcafaf532e150e13c6946bc7c1b6b792743e00a7216449636a178aa5ec460deefb3634437b1c42ab7e73ff2cb8acccf3c43cc26506915d9e6d361bd4c89b3edb9549f20b1e27f20cb0d5510448cfc8add207b8f484a333d6bfcf0153fea48968f576e67ff203145c01b568bfd1a312f39b94ecbb17c2a0983457027446f65b8f5541df1b4685f58c1fa4be22b7138778339464ae9854e3d9c6ce903b340f3722a6aa5728dd6cf84ee839835e846edaa514a258829edc3e5ed213d0219ef85fcde5601bb7e4555a8e079cdfb4789f50c7dc20fb75875100e464e41857c63a072342c362a3bc42c2915fa5d749ebdacd11537819edcc7acadbec0b2c1127f0d178ae624d2151e02bafaf4808cb79a09fcf6242fefe1c290d7be846b3b5718d9c65263ca3d227406242c3113e928d985dc87cf3529e127968b22995666a91eaa2e13b0b847b3fc414fe029e09512101b5594b6f35adb65c0c2a0ccc2f4de718fe362fda72cb9b09d47948369651dd33e0650bab284a8e90a3ed8be238b3adeabfb70da0f298ad3fad9191c55806a8cba113a828a1d00f9819da3e6b79aac5081c5cac0fc43b4cc58b70a95bc29808836b7bd43117374aee0c0505b8c29d9f3881b88c92bb9c8075a5a9e372705ac790c1fb2b4872f846bc22a1e953acbf6fce12365c4cf0205741ca697126542114ccdc63762edd0b3baa81d7ac3e0da96e793d62d64ed90331449bf2981378c41134aef26d5317dbea4c43ce31170a248a453ed061d63ca0ff480148bc942b9949ca048985275515d7746bb5d451f920f8ede2c5c4dc8a97006acebc76557007135e258b40ea9d6a9e5b65f70bafda2181a91e36f2c6f9756254573ee5ba88eedab856bebf6a8db5b516abd8bc0bf9af41c497de0b055b8e13be4d559ee4985de48642b70c0a90351ff8c4ebf5aed225aad706e1a3ea228a362c111cebe76a5b7b6769299b3f085607e1fc5ac4ec0dcf5c821ac39532c79dc92e887841739e6a157983cc94faeeb89b9e9e06ded239362ccec9716023a0eae23aaf34e7d5dd7261fe8076cb862faea0e3c79e77dd846e5d131f1f60f650a789de05dc7e55a127c0779c6c113bcb03a0d35cd41d2d39e664e550f41c9364ff91fd711f77864e8a68edbe4b130ab5742ea278f803e4c764e6a26278142144af79f36d975a66e8ef7ffa4a402a83485b25e50251f9ee11a9ef78a9404ab0c7da29884e23996d34915404e317297a81fa9678ba77361778a69116bb00a1934e84913de2f4229d6a141fec94bdc1c2d741f19d4ac74e335ad723e5c3baa6e6c9b1343876bdedc9c5903108ca6cb7c159a6f491d9324261cdcaf23268c8b214383c1df4ce66cd23708c362789221258841414ff4021187b8c55e1ec4abc65eee32a39b143f63822843c736b92eeaf6121c77d1f342359011283a0048d8ecbf43a51f4b038ee2bc05095668cf305dd2902c1ee8d90d25285b69c14f76034ddcfd8eed0f7c4847ff280362a9b1c52fa903c069f77b54264f92de78cf5356866eeb704c3ea04ee3026454314b4313be067a522841ef6c118465c71a3bdcd8679cbf0a063f1228ae65ef6010ff81cf3103e99eaf712376399523e237df3f5bd0178bcf32b62b7c060db0b39873328ba8a613272bbb70db924a97967d4eb31e6548f085cc93b7220c6aba323869f2cd959e80f48c641b48f16dddd67b39c99020df962b40ac46733134cb8b1f8a423c68a36c8c7396ccb451a8f5b86853fa3db10f8ab2513f37a77d1afbe1108923790191f78451562187e8aa902ef17d95d6276d3624590787837cd1eb1eb27ba7b333a3db70e4bee2ef2b24f5781f89c2fc2878ba224eb603b803911ce6a52a0b64e31330899f6dc33e3ea703c55a9f59759ebfdfe693083e1df7863d5f4c947e89c70956db5f288b7e945db1a9344d17eec312687691263e5fbc84e06e6dd40ea708abf94c30a5e966a5288cb38e599c6f05f0454c1eae114b101b5a8f4788dde8d86b63c1cb63e1a768c15b6f177173c1e090cce15d4ce19bd347968202593ce2aad921c6ed4c597760b2d46cacc385d6152fb772ec7b623f82861fd4a58cd4b2ca7166cfcfd9e8b0697523d8afd76a830a0f8dd444e10c3d1b079013ac2efe75af9aed936bc231aa7b70db348cc165bd04813d905753bc938b5a8207dbe5236d9fbc16e03ea99a19a3c7abb40d9c827dd7c42397ec1f3c05a35248ae885c35e2ce7a1987e6aa3bf419f2575794f2d9652a536e32cb9a1fb267c07d8d1acdaef56a0b96d2e03f2805fce1e7bdbc3cf8bf8fc58496f2179652d2b93d683115518ce2287b54230b6d832a8b146ec6e0556f03bbc1277fadf80d6cfef7f09bc5bbd9affe721e37241f81430073a753b7e40ca030afae8031d76bcc314dd48857c4b5193eb9e46113ffedbb21d96949a3d168c01d57d434c236d80d632bc79f52ed621c650416098a1d07692eaea697160bdfe002ba6b7b7b46a20a44a7afd6b2dd6faf587fa1122848d5eb62e427a1cc938fcb369157a781e4986249d9244fb288b83178aba47bc6862a919cebc6fc4fe762ecd1cd8e7aaed6609efc1d3d07165774ed364f9cfaf18263c780d278dc5bcd749549a8991d645d96dda1e1a340759cc9c84b4b7563c2e0e1b3be371a010ba4e51702553bc1f80163a385b623fa23a4f69bdcad868184b79ceddc22d636d1eb4f5812ab7150751869979b34f073475e5a78a42dbee3e75e99a17d76a846f9ec3f59bfd6ae2b64ac19df522c55f4410b3a7d9434e5e62ed65452e158cc4a78ebe000ae5962aacd6e7c62abda2f88124d8ad4da0003bb923f7fbfda491411388596d5f045aa0f59bce7a7987e01991774268d059b1bcfada3f1549a6f256331dab5d16b53993499b36fc49039629211ec63b9373e7436ffd06b9eec12ce0d651a4043138d45a51db09ff2add684091dd3aaa93e2a86aa9127cb9f025f50c5ea69c42f5d4876660e06643a6b3672294c7debef16c2b72152cf3a8e9ee9135f71403392da8f50570f243ff849d547e1f673b61e6b55ce2387de17a44aa5b9379789702d946cb3186fd3fcd9bcc6715a0838a28b65da52250c3abb4e30802bec3efacc9f74eacb96aaef9e3374e3e38daff078c0cd9dd255ba0e529332b76aa89f38774fffbef4ab8181194921b066bb422634d30196f3ab670dd54a751816b6f2e7511ed904ee6d3c26c43e3712c906e82bc26456f1b2ad50358c0843e34e24d825af836c839f1923025686ac78b55cd21f1c1b310c3e289a328aa6462c3b168a84f0d520debc2bf1b928e057900b7dd265cc88d6ab770044c8d8ccc71e2aff732a1f0633abc0a854c71a821f9f601df43bbe0f32fd8c881d240aedfd51ebc5f2ad756511f424c9d0bec4a2acf8c565ce0cf7dcc9db824cbc533ccff2bee39cdb8dcb349559fc96f339c6b45120c6d769f040817e3a1996be3394d1da88eec9d361f7857d097a91de5a1334b6fec4267fb0911ffbcca9cc97659d87124f3db495feeacca677839dff1037c4e49a39cdeab74c0e0b2b70d202fb600e50bb849b72084d041dc6b5152a3c085e83b7a6901fd5dde3bfb34adf4fb25c419ed2bd6fe5257e2d0554dbfe1ee149fbfcc0e6505c2748bb6a9363c20eb6592430b513a1a11a5f625053295605ccf3da99ba3cce57778ce9ffd9547e9fa7fbf060f62e9c1e72073940dd91dac606c1749b52fa160e37872480dc68503186c3443cb84a0d2082c7ba74bd36d2ef8b37810f5287ae515003124bdac38ff463a8b15534138a28bef1ffc98d7f84f19b1891525ed222d58559453f94210f5f64bd52a64bd48cfc78f9463ce5a9dd513e9b78202c136125440f0d48ec661d5430dc5eb4290ef8821249bd386e81149630b9033192efd29fc9c7cecbcdae35b7a51319263f60fbfd6633333029f7915cba2d0672a0e6ce39df05a640008406f2d44ac75bcf50381e67ac8cd5eaf3d74a15b3892909f655143f3c5e249066c00ddbf38bb030c536a6d25e58313669bb26b42d3184f3ef7d7b5da90b863f9e606b52525ed0a7dd0e8882f7c8199da704bf84f0e4e10f93816f236c769290f4f998e2f494b1351b95e65a530245b9fba458864d657be6ee049ab7393afeca328b40ffeb05cbf109294525ea1e0ca6f2581a27eb64625a6c76769afb380121f10a5867e95879defc847958112ceccaf510d430b223b49f3e669c1486bdc55b6a5582e990ec1f84ca5aca9f96d52ffecfba5ebf90011b62a006304a9a954599f3c9207620a5842aa9c21b4c472114f21d88b7cb8110c40cb96a8a34ad68cc7e5baca15f4c8c36bce0ae69fe0a55e634a12c8af12b3d18716ebb0d615dc842a723972b777b3ad31f10a3d5717a9599ac13ac9708a3130070d24b20d6eaad36be5e54ad68db1881eb9ea5ca5d59229497fa867f71f3c01620061e3befab486634d8b8503e00ebac2650ab0b84b346368c7693f2c4a6fa3d3ef866fe5547ff6f0c698614d1f2aad7565720a5622d81d43e5883e68d794192d8472fb13e0775dab45cd691ce41ae5e13191320f9445626e0be338d185bd9e11a8b5768e0b1cbe590273a5c18d8ebcf7fa57022b4862c255708308344ab578507d623212413b9c8b61923370fab0bf964e3e69fbc96f041acd551da28dfb397965ea6b8a841a65fe72fac4368c9a7a64492e6655e009eecec9c65c0f9ff59cc21d2855d52a71b0887914e4f14ae31accfb167d2af392e216df38ff5e994661a5214ffd584828af845572d4b458fef1a2dc8df0f940b22cf9f45816838cd864a67c7f9a6f77bcc4162af8b62e0d21d788b403cd8e0b17583c66747eff81dc48eb0ff75e76368358b67f47c393081efbd4c7089400487e5279c1d0ee8911cb8d4224e25e74cb195027240b814d4483c6804502d41f2b22b490a55c5fe853174a4164499108a0d94ceb298dfcb0c07700a3c6117571a4bfd01f55fca68bc2dc7da871b0217cbabd2777e778bfd4e51e3364b8ad5be21d6bbd9167db0652bae929e4cc643ec464ede4c1bfc56f14090df8992b734eb15d9e32dba7cd0292d751bc0d20ee3aca3db7bd71dd28c85635fda57e02b60559bb0484207df1227cc0bdbd3f8b8a61a1ad6655e97608c3806dfe6b0411e22f167605935471805c56cd68a9fcabaf5ea2a45957dc09a77126066f5c0e4bc9b2fdd8825de169038243a773a0a3baed7541cdf1376cc9bcf62ea178b6cf7d1fd19277150f11b968317f6c84b86a6b3016ec39a1278ee1b110026bbda87733fc1b84b9f34cd28961b4f5687dc82f2ed3c0d91415ffb3dada8750bbaf0addf28c7e217e65054c8cdd865f0bc4f4299f112cf80c569cd98e1dfe8dd37401b04936bb97cec33e68d0b8e90230b264a236a6413ab9253568149b7a6e1d12b06dced3ca7cb6deb0aa3ba89578d91b60b14f7a929d0c439fd235b7f9ddca7e39300e1e42f1a128ec67c1746be8afcd02c2a8053a33f4a62b13e17437f9c528d1e4a79d7c833a31dd7d6dc0fccad47839d9356119edf7c63c2069beb248b8f6ef2af7d8fee38b923a6dae3e6ad911037d0df263e311443120b7b15beaac1f4787c5235043a0a857bb1feb2eac8ff7b2c4829dd386e77a5a88a854ecfeafe3945495a0374c24db61aa213796f81469e46fab7f1cf94e6abb73cf1f4fafed0f4b204530c3ed34d5aa9567c1377c425ee7f87fd4e354322efaf7a4e7c9fad746a959cc9f660153f8c60ec1e584e49ae0c79c1f568d47eaacee586f6d0460c9a1c9e5d74456920dbc38d5ad0971553953abc647752b472f3d9e810c020f1188e2491712b27e67b7c011264003d3a6bc5556be0aabb7e67a4f9884e4d4c3d6df4875680a249e7afa7c17920a78a0e0ff017794d9c74224e0a4085c439f1ad189c3f7b9a4d18d6ca0670bb7a8b950e6dc5598dc39a34edf9315dba14ab5698fc4403cee7f0497395decabf4b51e9c2dca54854119f49c55316d20f8070798c79fa5237422615f08f9ea2b50e38eb769e7967d47cf3f99c69b598c755dcfe5b0313168b253565350049b24889be68eb1ed5d1504c21cf7e5153285deb13fd3392c49f46b7e97a65a4b137194cd502b3738550b36a7b5b07255ada1c0969ae88075d7c843071418e801cb997dadf5f8a0ba800dcf9531c8816eaee273b80ef72ce41ab298fbcdd30b4fe79fc168eaaf645eb63e67c91ff6bd245e116c242e451ed7f50b5ecc856c8957effbdcbd997cc07af4c4f7a18db59ca172b986bc3239982664ab49b047c9d44349c5099b4a7164490672eb043bc3d7e0af80cdc48d993b77f37c6d5fd9a80fbb41b5b9949f31eff801676a1f167115dff2baf99dfb151b0ac75905dc7f047471a26dc45de5c7c0fcc766f8a08f5b562bae0faadf1b2c3fe50bf92317b7517615fe726a2d01da47dfeb6ed0143029b6304a465bbfde21a22e904446e2e7fb0a4b553a6111365b0c8034710542ade02b872dda57505c83d593adcbe4db5fdd8d1157cb2daf4927476a30e9d399ecc40ac8fb2240bc52f3f037829be9191e3a9e6b995b1b94db390eac70462f08c11601d9e8d7431661048c1bfa865d0130c5f85dd2f87a174d7cb2f5fd5e00b26e2266280a74f045578496ce81909886d23cba0d53fdeff99c4f973815d1f708c9579e2868d9d5d06a1c4ff81abf826eb89b9478ba681aed2cba99a1d081cfd80078fe4d6b19cb1caca3118ad997d97de1b495ed255eb4faa7abbacfc1b0e4fa1d4e54bdadc3783b3176dc2be639c1e79dc76a43ded9700778b5e39893db1da029b4d1479f7442fe691be47e39bf73bc36ac0b921f4af85049debd04b2586dae013fb46a30c191356e02aa12ebf821038fab463b42d7b8b556a685c97e9a825ab06ec4a8b5685b055802924b2cb112c0800c502bd67dcb960f21c310bc398e65ce48ef39899a22f56c2cd86e403341df524c3fdf6a69af7fe562569a8c27a5d807a207e26a576833841eb31e2901e234b8b81fc89feef789c94ec2e51223486e7fb6a28e52fa88dd66d43cff93b2fdd2d24962a960a2c9c333e21af17f9ae3235b9e5abbf94c8bb06b7f2d1046552f6277891ac06f4ea63bfcee17313c5edf9d162de50a227fd13ac3d943c6aa56b74a3cf5023ee99c30d82b1643c02e1a02ae325ce9e55aea3d01e5354057f4444cdc145edf2d7df4f96080335a56c65f63cd7e15af6ccd1e7174d05021321ac9abe18d3cf18c5159cf679ca87faa37da69fb085403c8a00946b816e678d1f0556d09a05bf12bb2db838dbda3749424cc8ac525798cfb45b4384546cbb4e392be596039dd225a61bfbbceb59dfe8f156da4974514305d5f320a5ca00162dd9a13d8d8ee9d8da9c68e5a66765a7a5ce60d80564d2620f1884ba1bf78f925fda425e1b86597a5446db9a7541f4e14ded3ecb20378673cca8efe8aea7f557dd0d69ba47fdabd230ff48384a3759336b634fc54f00213daeb397492aaf1235cb8fb65e3a1641dcfb2d5fefb31d1e7e54b6ca5c82b726fb45d909db71ecd9f3f0da5647c6a0274169a372a6168c86fef32f283b19a402ca4f54ae876af82422d166163ac3619d01cd90fdaa882cccd85e1dfefe200de0578f7e2f5ccccb8cda9add4629c3869be801e269f6e0b0cc47f6f81a09a4fa05b21683df9d63b3ad482bc48604d0420fa596b1b4bc8e55ca31963982c71e9992f7264c0d65627ab76d9ca8af9a03b9440d81b197b0f213229bc9908610626e14965e5b30b1d194c296cf97f38ad54f062bdad2f5f4321ca83e119c9e87f74b656b7fb593442a7f6bc330c930affb2b971feeaca313688c104ae22bdbb2dc74e2240d0587247f72eddeaaee0948548354228627bcca3407a302403415d862a868e8765e985a3374c8b6431ff33f10162c6ebf0b0ac2dcfe7399bb647ca81ae62607060ef7bf8e7a3b37f1717c04ddac09fa5e9ee04582d684b3b63eba26f6488ff71cac7938f53b8802676eec6060c97231ccf8bd391de9352888d618a4de1a6003c15270c7ee3e5a0f2ff65acfddd8bce214c8f6f6d8646d091ccdccbfcd2f8d7667eab5fae56009365bf1b89be34cdb0c2f559f005dcc717bd52103fd2914397eaf648cedb9f22f47034ea07c94127d7ba69b26176c88af82ce022af7a71153f9fc83e7c8a35afb54b78e6b569c0251168d2a0a49fc4e07bb40cefaa6acdc8b5a690e30303447bd7fe4a70ad748af7cccb03fc3acf9b02d570c9152132ed09b38a81dd9b41e73737fede3eb293cf83180733c5f9283367c990224ffef7de7526f132d23061337e8e04534aa7e52877a7c4ff32589a404b51f450e6c9b9474cfaca613ec34667ec9ebc65d43ec68347a00f2bd0fe5b29ef66eaad8e9d1b50aca1262dc299944ea6360ec1f50b61fe9b4df0ffa58388dc0a36931756652a1b6afd78410e2e41227fa57c34d5d8015b953d5a08c4e76ad72944789c5e11e1b1c90ab681b344e16d69d7d3d0f490269c48ae0ddf4699aba179f36a331893be2bfba5160776db0167c22965c2b0f528fbb6b2be4e56718aba1d5a9c29684d1a30103850c18788a1fc59638af6d01d9b2484571e82955e5628b40aaa9a609ba26ebfa042c74d8b468dcbf310f9ec42ca6ca861ec91aff427b99815bd57c5695c72d010a203cd467cb1ec39a2407e84d313d8197769322b4590710e27e00a60f4d96466a03096aa7a2c3079a9a922683c2d72764e51b072d49a08d0b785d4511716fccef58256b83a2a4e5640178b328bb7aa33e6961b8e5ee69e9028aa0539c0375e861d557202f47978badd77df735c93099ab70b8f381a29a649875b5b2dd1ee0574f7730aee8c72ead41f058248f222dccc2b7e4547a7ba7fd850398cdd230cc8d64a01d05fecc27d4f8b07d0aef5f9d677c9a1c86f7b9fdad9db10821b48f26b09b23985aec87163d45a0d1165c194659c0ee511a44fdca270a9aa711229299169e0cb6db2cdea0c490116954defb87f7a524bb55a7fa0dfb63249c45d868679da0d9cb8f621b06694ac95f74a52ab641b830ad229ee970086234d223d0b4fe690b425510fde7ea97e0cc36d0b6227545c75642e0422ad90bd19ba9c2b13f09c6b118551be38a091dd75008585ef370c02c88c3b6b4bd6b9070b85e9e553b90eb384a1ccdbe650bd6b16d0fde20660e946611fd38852cdebe049608cab71b90c512564ad834852188a9e23500f91c95bebe6fbee3bfd998aaed24a7a6ca400ac896c9bde71e4ce00e2253c6939fc59c8c72774cc5125901ebc7e1cf34e36e1b81ec56bdad1f9c1a79d7aff3823f5809f655236fa9514ec92a25b2fea105ebb8575c2cb9ba70fe96a6174eb9d950ce986db080b23749629ec9fdea0911e2ea12f46b5e996f1a260f97a6b70bc6a6fd484f3bf3551391dae6eabca25e9c062b1923e20cba937f23cff91e2b25d72d0efb895b19369c85714b96a79057a507003080891e77a3f6362c613f80c9273252875b8a1ebd71f21beef40d973cf4db59fe592e12dd115f3c34a7cc5f03eeedd38fc8181ee00bda17f7b6caade76e90f669d1e115fcabdf00b6cd1ac6d235a142e6a7a0219e599dc0167710b547ac0e7a88cf6050952deef7bc581293c64d713ce23d9ab6250dc82145512a2ef155c70a49a351e968f090af0b2781fd466314dbcbc6280272da143d765bc1cd39def761f61514959c2786d1ba273c791052e3646926326a447b386cf71fa15651c81d0a84ac7ff3439b1b3398f171d4ba9a8059855b72cca37e025a73ebced5dcb81aff2785b5e966668d9c719873fa2b75ff51816e4f8ac09d0f679a65cc8298d48e98133eb9871810347f0b3a53650ceef599bab40afc715e303a71ae96a2d38d4d1cd3d8c6a97e1f18016635004ae1ef5208ecd3a0d93b5309b7aaee24f3d0b2661d978877c054053b9ecbab2a3540885e621e73bfb82aefe8d588e5fefa0d3550a52dffcf24b5bfa2a75d04a7b1910a3057863d447abc9b496b111e341371a14b9fdd27df9602a574dbdd294a879624014223c33dc85dca3e80f20559ed1b765ace8aa9f0980a798fa947083fdc31c51c22f32b2fbedb63c9d31df492886ce0ecf004f38e1a867ed9ecb3eaee0801f93d7c0f557232a58fcfde42debd5f64e7b2eafe4d767190b6bfb02dffb0187e9c1641fc37056bd257887b9cdc9c1dc388eaf10198b55b50877cc256bb22cdbd467c68f4e1ca3af20d641b6a8f56f371cde353592369f850fe45909415225d7ac29ee9050969395696ec017ed69bc8610e9eb064a3f08db0276abb99af2562c9945ab6aa4efea0b637ea2437057ad7921eab57433dac2cdfa773fbb02b1b760704d895c119a0b1b52f86ce71a216674fe91cd1f44055c64670839c3574964d08f7317dcaa25803f15447a5f9b50796c50ebda82a174b9b67a2061df56b3564aac2256b0c9bc678db6d3dc63b8d89311690307b03711d1a56ce2085437a997adf18529b027393eb8040d98fa6971b1f9eb018f187dee72bcff52f51c2863204e5f977ba5706c48517d524c522bfa0ca020c8e8a8cd68d5026e12fc91d00b8ee5f7d8dfbe65a4bc4c41e2071ffae10d51818a859b49dcb4f6a1a5463788efa34f4dc68e6c8ff21a7e8ad94d9455e99134c3d317e76e0aa6e81c8e66f66b1ba86c72f299fa1ce7c922a6ab03cb9c1c244e043ebc976fb1f00bd12e9c2c135450b48b2d2b7fceb53315836d86c793d257f8e0cd9a4af46074f47c604cec44c497368a545e2d4ff4e5aa3a9c8aca9cf4f0d53733ea185e92c9045ee5376ce8c51057d73811a3c02ec23721f2fcec9ff514ba98b77444f722dee4679c44c68bed3c8f963fc7cabf18414b791657565936a0b2960311fdcd79c6e8818d733bdc13e6b783cf9248eedb1a3ffccd334bb2f43b4c9e3160f129fc52e6d424a2f1d07ecd7c32aa033079e749bc3f4da3fb97f6cdcfdd2694deb506eea00e2468f0759972ebb65f6ae9bd56fc4caa3873b8d861663a335e8f9edf3cbd1feaea3c759fd2c6346603668f1a65e47b24716bf9241a8665ce68fa6be8641f821e047d63ec9a18965d405054cc19b96e97574580a4bf5b6783681808b6302533ec324d2b1c83c5bd393eb1057c106dc284e6ccbd191db9411b8775eae4c17c681007d50d04ec9da319e12f13e4c41457591774413d8d000b948ee250e05c0a1fefa03640556e1cc4cced62b81e1838d1ebcb3c7c30e27d7809f7a9566c307d5bb91ce7835d495731953b1d37fe7e0aba3014ef8d4539a3a03b57e81bf0025e8e80e10dd5b3b7ff66e88d6f7f21baad947820256a5a7342f68862f614d4a12ea0f29d99b91c8f6eb030b43cadfabc9e75600e1a13a5a0b27db80718f750a5a7bb0cd46875a27d42248c7c62854792e3e763d9bce0457e8221f6066c5db5ab960608698c431f4da949ed8b458920cc43ec279a5816141cee6557f9b3cce7b0a7e22263ec22352113f3d72a5e53fce2189eddd31323d08d778f61c103dab060e207789f47eee1b30a922b417323820df6a0ef7887b7ac002dcfdc6b6c3637ab48324dc2625200faccbff6353951c6264f7958640042fe0fff76b907626588a160acaef947aee750a8db7771d2b9cae904fc0b1db627cc42167c50073917ffc83e296842afc72095722fb327c63dbc2ff5c379155d2a7b2c274b8bb47d0353f8f5cbfe616e5f06a0a1a83a6bb6259c66f464c2e475d4f81616c21739c67b765bf3490eeb8465c48bc34f9dfa5334901976d81204b1db3c0e106ae272049661974c1352d12965fd598a0b2784db95ccd6f55a2350e68687146602bf19d87d650a151a8c37937b457d098e4e0764e4a2d2ba8c3715af35a43ebe01226fa49250a21711467fe9a5ee0141e3731def0fd3505873b3003ce1862ae88877c6a6fcb3edf85d24014a3df94946103148e1884f2300e5cb226ad7dcf0274d90086a65eb7fab94e6f3d8efca0170ba6d02fdafd210dc39b013d478969b5d0a6453933c4751fbb314366baccba71d1c0b9afe747d65b4efca28cdc3d19ad24b682e1c5d72d07651169ee8835914f916af911aad0338dea093542407851c385ef0b4034cd0f19ca0fa65225c0865c6b18fe627dc8676583f6a458c24bd7ce0b7f47a70fccf6a34d018e471200becefadd17e3e674e7bf9ebdf2b37e8c4a459505ed9161b97cbe0355fcb9b87967964317221942d804e132b2c024ddf407d10925847a8afe4e75c75a9eec58e46b845ab836717343c1db527373e34ec985dd12b7cc6d06a83752c26927d82976ad7440198e5f92cf4f1fa41c79a736d05d3b8fe552557c2fc177ba9c61259eca43f2f747fad25a0a4e82f57e5f75ac37864bdc19b658d3827934d021938a3a4d229a7d2dbf55260736c068af1d82af3745619a612c13a666bf5282dc317e4bf66c4579ebf84160fcb01e720dbbc6528aa4e1106239b4c45b5cec01b784d22499b4f43b6670212f021988c346e6f16a26051be26605212321682e4cb3694e5c013f45847b3eb529db91fe5b39e2e8da51abce5be9e98417f83328a77d84cbdf6024eaf24629f31c7af6643f4b7b8164f28f291b52e34616d3633ff28a3c8cfcc1266a1ea090033ef563f845a79938f5189802b0633068a15c097a9179ce4da0fa04d7f85ee02cafa37b1b4ebb2cd44e4aaf2a15dfd58cbd227b72c99a7b23c7192ede15664f66531cbc00ea1e81ef3cb182b9c92fe8ffaa8d7dd74ca7aadb1456fe0eb7c24fc437c5e43179910bfa0ffff08c4e402e999e9dc1b2e0aeb6bbaf40d5ef63e3b76f4c2a82fa1cf35eeb3b721ef9000f3ca4a912c8ccb5a22c7e660930d4593466f63339a4111208734e743b233cf53ac85044a896dbe351945f17523af7afe3c235be06a87e93a4fc58ea38000aee322bf1aa796dbdb29136ba9b6e8ae9c4071553e30bc70c42f5e51c2e06e67322016ae3eb44d2515fb8ed359f82a6f536e0a8a66fe1a5defb0218c9ced547fc5d2f079a7316564e5a36b528ad6504676554cc9a17f4a8ffde37015f1c464b55b8ea450f93a17969e6ebc30608dc679bb53f488dc357a25454556a8607bcc97c9b428818e8ab22363def4427875dcfcccf306766209eca1ec47712bc4cdf1ea2106332e843dedb79931155b0b7c9a201ebdbe42153dc30706004e8b414408b852f37fda5be990e58ad139afd2b1155201d0d03bb91300abc88ca37175d80334a831c322c2b8d8b27275712110163a007c4defce9de19227e95b84a5d6157982b1efabc7e2619471d667b89638986d8ba0253aa81b797d46a4f96b37d224410dba001b93d0df97c442b3369ddf50d8853dfca522d7c6813cc1a1e7d6bca558091551fefff8ac5d849f3a5a3fdc7cb9ef9b0dd5348918de3d75d797f5ff1407be89cd17212b9cd2678996bb99325fbbd50a79e44cb8325fe6fb1e805827f46c5484cf6f2da388604fdc760fb64eb390fc2c1e32429c41a1a9d78d3023e9d46527adaf15fae56125b640bf6794a530947edf54848587a7e8d9e4553d1da42644594bb503e4d563e0d768837ef1513190359fa9c24d1c21727df58b7d8fdabc328a26e77b2575b4fcdfda7b806b352cadfca5ced4a6c9894b297bb3dc8f7818ba07717e053176274eda866ec8533dc2c853ef0bee01da9b8cc74a309ab08f240a3a251655750b689739d31f4ef787294fc1391182aff7708ffb6776da1d3b35e3c62f266c2496a1e1fa0183d1313791f145d74f452f2debd67eeba1a8ce85b79086e7f97aeb7f5fbee6cec64c2f442d8f93188f5e4498a6ecefc82069e8906f9c283a4568c91418ba7563d306bdf9782095deb36765b9cddb25d839903cca5728c4be6adc26f5c4048598fda24dd0bff5f8eea5f86d883c28e333f6bc848cdd0963f25e61e7083dfb3050bd853fcded0ea8b375fae150475bcdb59bcbc8239a6add26eb208cf2ee8345df39f7500c3d5b8e9ebb9fe49ffc615c02da3f13972e2d82fd02c388b597372408be395ef03729991e8f3c1f9703b90d7b034970e8653f9b30770bd01cebb875091ef37ddacc5050588d8ad530d05324ecbf52d16bf32eba40c2290381f490bfa59e543593a35857dd8f1f67456adfb0b2b0ca4403ea5b21ead8f797e9a4d8e7f5d5a04fd3ffca5f0cb645de482a34f191d530f7684813e6c23948303217f115b6c23c8f55d47bafc8919f10a3860ea428acbe6fd7115f45eb0b6deecbda42e1b285b3dc8e32099e532b135c132ac48a2e2bb71256772a73dddfe640175d005f7f6a8a95aba81d6c57aac59e88ba05687312cc0e7a5bb632fb099d2d87b6c3ed1b1c2bb133250558d74744f3670f40b6e3106b07e7d6ccdf1923dd522b317537ca7c82b00e65f10534e9ff370341b6227b536e7490cb580315fb81231178887f9d680d4631842a6d466bafd56867f36a4e6143eea5bcd0d7bbbde970832628ecf53e9ba0f59e2d21047a87eb138ef11942aa9a6bfa3016166849a09513993c88e36e26e5c92009e33c5f95ca028410ae4e463d62ab5277da992c2041962261677574f68d888c16eaea717d5201ea5e5603b0f88121052ce71ce18674736bac18be7ef8c4f1b5f492602fab925d9e26f4ccdc07aa225f310ade94cafb2fab27c95411674378fa4ebaf83bd24dcf29f89315b60514cf2611f501569d85d233a2d62222e14a76817c610aa8d7767816f40648d500c88ac0a8bb4eedb63b7035243d4a66165b51ae9f640c74853271b6ed63c0627b09a8e3129603b033d46ab7a7dc17af44590fc306759caab8fe5395c058cbb882881dab308f35372ddf0b755ec659ee8dd2e86cf1172e0e2a65079246bc8bcb6c921e7dd185da03655dee021e5eb1d8b82879e07b1a012310756f4e7784e56aa90f0be9cf3b843996646d9100bdf2bc6ff79033eff2ca68ac753fa64d30baf07f4827ac4e0d7785f00ad65c52dddd0c4972917342af2fc98fcfdcea004f80f781d32456135732533f736ac3499d1f469b216684c56770ea2f109912f07033be20829b597f561375b830961c4375778edc7a79804838fb7c12fe58ef96cb39bf6e0e9dc3cdb1092a544ad1c8e72f6887451d6ac68c9a137e8e227a32315c0e46677ffda45547c805d2413d726e80191c8b0e3fe0bf681ee37c9dcef4d0608b92c374f9aa1003bfe215dca37908a60db85908232865f2dd474d4e7c65caa073c7b2b733330811434f38f806e5bdbc0cc4c7f844f7f35797967c45f3287395d03f31a96eff2d1ab5aca5f69182688fede6a78c987d7866aab465b0c749f2e1ca9e424d13e8e54bbf9bfe3daf74840098ab54674b8747787b50adc2b778b8f537cf3a9a745e8ffb2a86d7b6bfcde68a9e436dcaa1821b7198f9396417287d4c43009cbca5edbc3921bc94d167c219c1bdfe489c22e21576f9d30efa327ea5f6cb5829b11a39b0338aeffcab8c93a0c04c0b4d947320178f29d65dec7a5aa884f9d46efba2543188a98aee9826ae9b5d315c8b694c35c1a697d8ef42c31edc4fbba6f4fc5b671f327bd8e22415f36f9fca74b562306bcc258a1466d565767a8a9a855273a6836155eb4a45d59efe218b3cdc679642f54113d00a8fc27981f04fce97840cea05dda593c484fb5b50857f7455fa2e92f8ac3c3afe264a96b24af952180595dd0d22fe98d8c92ff532871fc75f06c38cff852a52046e12fffa26b1f0c52da4d654b7fb38dbcf15634f2831cb92b5ab8690c31c57b39d2791df450bd9b2e374ec64066edc69b1ef2375d406f9bd12ef06337a65dd46f5dfd79cccdd25fa0c33a3f35b1e26547ad90f03397fabb75e1e475ea8ec01afc1ec23c2ede59193a64373be4007edac572e9c81ff89043d13e149a54e997de4a4b76c0c4e5f50a4d3f31c4e156516408680d1ce1f040ff876a49edca17ec02bde27e62902d30339d23390f583fdee2cbe101d1c52c039196244178dbc984705acaab293f22f17b5b9976caaa73bcc8f8ba9a508365b30f16b87c7124110f0e462ab5be558de7f65e3de16796aa8af2779934423c2d4b2c5e855e7d1d8a4016a5a8c1c760a5a75066e3c8379f470cccb2ce722583d0aff8eba131f5aae10e27e248f1309e66d0b35f05fd87a95f8496ef88efc9d2fd13b6c985e22a7019f50e613dd2b52f851fd1652989516f80280728631d9697db2c788b97f6722760ad94631fe496eff4556d1ccacf76cd2e7cc0d317e2269753d914f44ff1ddbc392f1ca00d987b93697f52fe967b7e446a4e364ac4cc14587dde55c981d46ffddf999775a1a8f80d973d4eb72ba1c3e9a322047c1b7654d76055583616a3fb9a1a92b99cfb8f6449a77e587981363d3fd48e23c4186bb5cbae1792369dcbe1a054b5abd94bae27a6c86266e669321776837e808c606d8cafd75264e88ff637e192958de68ade74dc294dc02af9ff3ceeb0b17016d6b08e10c1023a1c597cc13f1b0190340c6fac22ef11399472ed2421d924a3ac27c021006e65c30381dacf1843b5c0bee82fbb23f3b37709ecb5ff3cdd98e966d73b45105c2c9cb24a77488b2f2c0434dc8d081c562dbcf84afa7b02485418fa3c6c3ee0119d3cfe4f5e3f96c3f0ac5546415cf9d58f4d1bf51e6527065a423feb584fede6bab34c0628051d206a0e5f48d506c51c62e36d5f680b6a626f1ae9e0d997b49b652693aff9203f0aa9f2104418a26538fb4d0a018541e2f66ad37a6671d4d3cdd45a58f1128a7a49e29c089bf6d25f7eb8f5f4af0074506cbbbb9a7e20e2d2e1ab59c6cb41dcc2f6df7cbfc2237c808f6e904ef0a03ec1048f445f9202d175e018f77c3618a7a9d9a6ca33454da0e4d074e7954b60d0e19a230e0782a05aa8682a7322d302a377650d56f5e0994273b0e6fe2438450b88b51d7d8fd844d514bf573319add272ada911707ee1fb1e9e8bd85506dc999494ec21946903388ab544e408e98506ac971a2d96860dd30fee5696a65354b727866baa4cd514719bf40679c05bf753da6465a33bbc691cd59331bef2482ee6d332b3b6cb1784002791391b510a299bc2f188645385f26e7d87635c852b5fbb9cca87102a5cbdb41bc6762d746ea891b75502e3929287b5fd52048658d4fabdb0950b5c729abfa0fcffb040676e7abb6144a1de76566b0c6e53b7902ed8583902d199a84800492d9d86007c97fbadc63300326cf6e91449e5c746ba9372184b6681818020cbd0d30a283f35927d33d99a2cd392c7290e26f2ff33fd6a5198d161d9cc8ae90d0c5829e97a5421d0cb976a8764f9687d820b144481c7b4228937fc1e9deb523016a8cca8634516498118070100caefcd94645b3de198fa3e89cba433d8f4a3293ce17dd8276f0357c6b51542fc7e69b2412650816343d759790cdd1ec8213186f46e86835ba84659ca09f89ebdd4ca4b7cae7bdfd04b67137050009c6233c97feb7960b1f3646bff1ec4ae1082593f3646f0ea830e236669c4c3bcc33313e9e3777b025373f53d361025218b07a0446e24fd13de7ee80851caca2419418dd95817b7beac6d638e3b5edbd95fb065732785adbb0d68c299d951c12455e5c4ca95f21d120e3347e7c003f8d0b8e40bbb62c341b5aad0abf2e4f0a920d98922b94d2f3a00bacfbe6f5473c8b665f99219ad92c418572460587ddb45bd51453b855a0286eb2430a7006972cb9f0efc0be0098728fa906ef9a971a776cc50a758d110f1ae50af513f12d0b99f7b7c5192d0b17d0aefd5bed9c00524be078778a4074ee77def0749c992c41e4a02b6c1f2b881ea682a3ea565e5ac0e0661a8b9c2393d1ffa42103e3f34d3e5c42f5add80eb1318158aa00822a63e29f3d9503d5b9f7ee9f3f53f02e9ca3ee9c92e2e99e7e701922a2a7b4cff970d34045ab56bed489a9589493ebed42bcb571f98b5bf7b099f8bd2ed0b00101926534794019af4b59dce55ba1d0e2f248ff6003550a7b65e476799db3f5a0271b6e436197023e886982b12fb92f3e84b69cc7d5869c57818c66e095e2f2b90f9fbc9cf7eb1fe356038fbc71e1137d4b359fed1b15abd87f23c67067a9c1e9b3a1d8a5d59dbdd437fc38dc076ee3771c53ea395222b65f83e31cfdcacbf35f0c1fab085f811f67a4c75281701fe107f1dfbd286f67942c72a24b92fa5fc4e796cf23efea9b35e5cc5a2159ff79cd43117043a3651b1824887102a63c53b7573cd78924df7248d8a9ffce02e9357ee951e8214553cbc54ff9ea084e86c478d30ed69d800e7bd364419ddb593707dd202efd389b787e3a2ed1faef1008077ff9170fded58925844f0b7b704f919e9e81576eba85eeaa05f7a553b682bf4f03d05346cdeb66c36ef4933490d8c704b9567f15e1af923790b79d21aca758e3c105ec74cb74f8e953864df35d5b42b002ce9c3fe31d78207c5e9777f73a9d0b679aaee232217b6738a1fc40cb1a99d177244dd06547ee330f8ac40b85899bf5cd5a3846b8e018a97d9a0611ecf92bc81eb28c7df280717a415bd14caa3044d6fb283c5ffeea532e1b778fe1bc8d44ea8547b25101068f84f277000a1e391b2ebee45ac25370c8c9e7e08bf0cfc8866402c8adaf1658b72208ea638cdf4deb864a93c33011cfee45b141fbecd2b15445ede672c0f91e943c2a4d4ffce902ffd0c0e9dbe42f1fb535d452804b636efc4c42fa5af33ba9508aa47f63c2b52d25a54a367e1316f26d7db2ea6d80eaea9e380e2fe0398c50e36a84ffd4c2c49ac774156ad6a09b721a8bfbb390e9a702260f9d41ff7c7aafb2b6cbe3279da7e3b7126d1afc0f1f39d445a7b818aeecc3bcee27b305123fae5a71341103880eeb326eeaa812e76f63edf3f716073d5766a9a5a311fb6b6dd24fac58a9d19464aafc27499ba3e6e371af0fbb212faa375b4d45612ec1741797b9b3bded0840fae1e77acd367f71ae320b45e58b7f07d19c831c2926143d135ded2ac9fd2a5e1513e042f26fcf4d35049d2d95503987525051c7133fc5215a6f571de34e4a9979ae94b4e27793299eda77d2e227fbb0abfeddc83309296774bde114fed31f8d424b59e8250611047d771dd1562482df35c2b6ca4e5d99c773be19cf13d4b1865a7f03335dbe3d399e5c055bf7d3decb962fab05992781e5722b766ad0d021519c19aed66fc92c26133c3736dbc90233897d18a847c942e13d41519810563991aa4df5bb2e345055bb145df7be7fd05ddba0c1b88375199116b3c93f703d1f07afdd4c9d6fb8f50b4a2a13efd372cb9d0b1834a19e4de2e4dd515d4b5fed016d89a1cecf0eef59edf1bc34a083dd40355f01a152dcadafc9e0610ba931d13963c6bed303f0477c2ac8220afd72e71d28a37203753ecc8c9ccd4e881e35f4428e13a5d4a75e87b137a376a330a86a1fe42bf9ad699da163c616b7eb06d15e4afe3b9a57f72fb2baeeddaff118c2f64fda141cd94c81a64fb4416eadc32e55e54a5e391fd9203ae1f2d349d584ece9f5a845b74396213165f4c9c484216769d4ee1d5c92a9deec02f8235e58d68aad0608674272cefb11f898a8c8aa5015a4857fb8884c212ccfb970ee7aefbc48dffbf1cb2c2ce2dcdddd9f5fecf59101331db8d2a83c55b81d18fd0baaa139858f350d02216c689f6846e5332730874e11ba5dd252aed2abdf88e19858fc894f027db9d0611fc60d25035a7c35f0bf529208b6b6ce3bad3112d9d00188c8bd8061ee58192c9e3ee72a8fe675553e3c1da0be69b1b4b33aaf6e86717c44a406cff142b8b02ad62a8447b73ba85e6015e71aa5630a7ac0032d0a2aab314f78b280e98bab483fcf138451a288587c9b2b170eb5bed26ff04354eced0a7fc963e1f72a07c3b02a5f45f65d30ab0a1b8a7592c33a37dab3471324a72a7f9465d7be1f87e3c50b56fdad2a15701b808237bc83ba3221b86c562c07a226f395b7f6d6c5063bc141015bdd2685c4825a8043594c173796c2bc7e4c39cec6a50431dd0781e126172a7f23055f270ceb078fb2d91ba335e965f91059e90f43c1fffc8c27542cae579a923111d81cfdfae10b92a1b0ed14353573e9741e9be0a201e55cb944ff27fd09d6b7b84c141acd1ea3b121fc9f8dbcc7ab3b89178602168d9598001ca83ff4b92801f4c2cfdd841da52a855125695b819305e4a97abacdc78d8d4199e1512a8c5fdc505fd816d8eb1bd5471b6edf6d1ffeaf7efa77bfa7c9ec785fb4461e046e98325e6578c750d9c739e38ffe8b11ce37e5c112c9545de2b0bda7b2839a3988f02c9d45453509d5934714e65b040b6d3804c9e71441f82fe08b053703d84f38dde5c2a4c932af84c6000d7d2ebea80aaf7a07b0442173762ff3f515f8b07fdbe6649dca2ea5fb4ad8bd630c0772257b8d2f72c6867944dd32d1a870b6e7b34c46725f526d0129a0f116dd670e7f8b4dd144ffddf07a201234b83651adb8e4dc7e17d57d52d574d71bdfb435a1f22bca095beae2e6ebfcf48b20c52d16c55dc580d3544928ebc8bbfe02c324166b7c30cdfa37a4599940031e6bd7720c0a84605033fa00f02665554555f47b213fdf99955ca054ff5a6a890d5ab6fa8136ca1cb7e25a1f6de2ac21b9736460767cafa578fa76999fc3421bf2641c90d77aa7e4039ceae62322273d404d330dfa7af8b1f041e22dfd4b7aa89472a2ed1accd9e7fd8d704eba9418643610f6d71cf408813134d411f0c4c88076ec1704e602614aab391caf43c6325904fbcb5d4263823ea038eb7df6e45cbb037e1378157be35693a0db37ecbb63a9409eb6841892479f3aa02b7469396e4974cec51d5610490d7f140394713803e253cb0e34cd41de09152728fdc924017ba93184cac351ee25440ea56768d01c8c1982a57b233dbd3e24e2fb411a4e48a586178fca807eca94a9a5b66633c0a4dcc64768d780c964acb10a4a581bb5587fab45a74bc6ae0b6f68b6ee75c716abf4ccee81269934838497f28515774853f7f3e61e7bad8e382d683a17a5dd0cf4c1a633db177625ec04acc60dbe39217449ef7653247f19fd4cf6d39bf84712c69d5ef428f93778fc81ead2845d750a302d0ec35d2aad92e6005fa93c0815dfd7b2e5642379a2b4b883a39f06ce5f7c6c33bf295044a5cd4aec844af77914d79709f521b760ce0b15c0fd9aface715e0dc7d5c9815126e88f2693c32258c88caf4218314d7b23d51a7cee117dca4ce0cc3daa0a68c74d7465773e0499210da9f1366a555873f76dd7c72416454fff5cc01c14ba38e956cd1daf34417dd6d5d3392fbc9816ba0e1111bda87c7e1cf862d1bcae0de93e6b48c8e47325398d056e16f7e3bfc0d608c15bf582d8d1f017da69fd7fbc951c70c333eb12be53937f86ab011469c13b0ba92b8f2d505dd2a36651612e7b516c15a1afc44da94427d47e60d25cda65be9da750f066ca7c13cf61749d737c17d499aa1a817a364141a853ba57a053fbfdb1d47a37c3899cd1fcc8ec0f339a72c03ce486a3105eccd0813679472c05aa4652f4e530760ad67b8c0cffc6953604f1c14c210d289fd20fb4548ef5da575ddf0e461b7f80c1faffcfc23c99cd49db8943dfaed2335d38ff9cc991255251c95658ae0c8027f22437eb69a8dea1bffe677c3aa3d8fe949f68c45c2f31b4ca3d78f4716e9bc6459337fc0d0e6c5ee3e8de06ed9d40fbdc7bdcc1fdb97d15e82f8306f250bad088d81375ff7beb5fb5b9e42ff5ff03c7f63f41d75b090b7e543e92dd32dbde38fd9673bf505e1c4c02cde778ef0ddae7d4d8566129153f9a45660ce526aa33e67dd040fd83e82a6f1bfde47321cfa49dadcfcf497d9e19c75a1c81c5f3834ef0c3bfcf2e9114f1e6eebf045c449e3f8cc433fb8fc3fd3a59f5fceac6429b76b0520903954552d83d43c8b07b298be5d4f0ddfeafe201f6796d60f37ef549ce691fd06bf34ebbd8524c284a70d4085e179c610ec7a29adbdbfb72281145b813097d3d0b371235421b297c7fbd25c73281b7b8bde53b21ceed8ac51441fc0c491ee041efcf2268066221e832a09ef9b0df0e62c16ac94bb91f2131adde5b868227adccd08571522a78e6b65000922a47d9b12e565de2da312e2b8e8387ea284b7ba28acc75f3908a69676a865dc6474258a926bf03da7ec0bcc5436b6fcb527ec5f083730994337ccafa033fa2ab5b6ba6aac733c0b4a747c2e4a4123292b539a09f989d7b939cb8be50866c78a757d3a6c5ae72b59a2b8759630569e741cff5e96a304c60bece2ccdc19c19e8528983463f12590916b2615f73287d4eaa7571122510a75e6afbec8949e9a8abdf89501641d14b3ea5bfd71289e8c0cef759c8bd21cc16094834f0f5305d1104363e5e1d524aafc53cca1fba0aa994a6c2fb04c4d22985a9b9467124f36dea843021fcd084e5e7207f326ba7e5c690b47186b2f9b6d502291f4d9f70f7ec923f3c252b4d3269ef9ed816f249bbf8b23a4b34920533fce39d158e323e7702c3a90558345f359bf1431f5054ca70b56c6756de4a07e40b9dc3ce58ac67b6884018688ba766a3080664cdb0fcb3894de98608ab86e4e61e1b59f5ad3017eaf6118d83a623f883575582709b5a099c8bc2152a03cf6450e30a0c7bbb61d4d9f1fe98035763a258c22e744771e49399c057c595cfe64606c50dcd9612cd519bea9d60c6ca6795c65021bb6695baebeeb47601ff2186a88e8eafb0b9c8e918af07c670a6b2337395b96c1fa23b94a57b49644e479469f1548d9ce6435b1db5b8cb95371ebd02b428b205c8b598aadd984f781c6478d5d53cd2affb6a6997ee8238b3d85fa1f2fb65c741f70a9cb904be31969d34a56a0fc26f9411e4652f942557e8e388dd53b22c5b7877260ce9584a9d8a5310ff90bc8f272f0240cfc1225dce15f6dffc6496da7bdb26f48d4a33898cdd4fa802ad4bff4ef2f9c1574cf4c8414f3c48dfebd78f7d5e5f5786dc02f153968b8c51a0dc6e4a140d768e205c06decdf0ceb8c00628feb9f025033db7c2e30f2b837086a41d58dbf0bd6783073161782cd982dc153e6ab0329555ab0b80c13329fa7e4922cd297dfddc59d183412c8a412cd1d6345f5690f5667db99156ee301daa050ed4fecb1f13668bdb5bade7edc4f8ac2c8f37a414cbf808b1474f441fb171a30ce5ba7256a39f9ce0c2cbd5d516fffa3d0ab04316ef3ce0bc7caf5ac93c9abe2c6c85238918dbf8ee941cd35f6dc782218b62504a7b22d0aab45f15796d0e310c97f5f9d058fc8c6fa961fa3b936dd3262ec6c492eea2a350b9a211599c993c399aea194bc21c68289d21975506d754973a804a745254aaec6baaa2d426f4d6a62e6e560e4a28abfbe1c1c3c30de5533d9f4943dca6cb200178312352c96004f4e9cc6c5230612622f54c2221a8368491e50314f03f2447305795d8c6d3e508fdcd337fb18386ebdb8b18f9723dfd920d1f4f7eb5236b7df3e1a48f252c5f1af72042f793e089f2fd543e3bde9be714af4b944fb7964eba3900ab5c5a734004f27f1294821d4b1606e890fa822687c80fec16c41406caf45f4a44bbac9c4daf859afe0bcee26b0c4973ff12444d8b3b8fdd245d54be1267bec5764a666e18d90f3aab7f7312a9aac81a9d7eb1c7d3e8b4b8c9fac4304de6d051c8188b5906266ddeeabee18c9cdac2fac5439f2cc1317520ba35f31f97ff1dc3a2f545c7fde4c788b7c66cfd27264bd2d36f5bb469ca8271b43164b48cb1b0817113cf8ce3a5ca86be74b0230c797bef81798c4ffcd741bea150deb49b16de639a6d92fcdb6ce0567bbd95fede8bce17ea8dc2c91a8461907beee210f943e2131aa0b2cbcda0679496d1ee751dc8fc2eaf3d46903a4eb80e18743dc61f0a679a292b3965825ecde6c255a694fb0a5fb933d96e037dfba57c3ee0d2fdf521b19da275ceb4f0fd8f254c8cefae875d2b009994274a9f62b6662a5eac443030e2d5d97becbfac8da6dbea399dfca254f0e004afe4db4a7ad18006dbb734051955e6a95a284b0bfd77d5284fac200fdbb54f570025c9165cfb6337db1e0bbaa44d6070c204d8f39ee4bb14b0b6d5dbd122a29cfccfecfc707bcd5ab1baa8d2fab88a87467178d273e8d9e0be26642ac549daa0b9b421d7a6b5729dd20242d5109fd63cd3119125ec8fc4e8f5eb2d8eca30fa44560018ca58471edc8b93415420037e489ba1f31a362b2982c8f7f0c76edc3f85fe7f401b8d111c5ead6f43b688941cc8c5dd7710761a904af1a6041df96676356e88c090f53c9f66c683f9d73a9498464eb666d441f28e41ccd3469818ab9bc4a0798e380c85b2ddd6e4a5c59bf3cf0b62833c996b76883fc3a1b59621e81bf48878e417a7b23d579be209fac464f2279ce76da41d3ccd38b8883c32cd617939c4c76f4bf120a9cfddaa2bd4fbe8e716dc48ac2dc53330a107e1b70f84499e2eb07fcf54b48ab17cd2e12517d55198e462c1bb7ad68bbdc6a968949ef6cf83fe73d2862e518a81fe258f7c0d18ea7b70bde46b4e4ef519017cd4644cf04ed57021f99900d8064d2a94d63b9463718fbcad9deba377a7d1463096759e99d088bc69c823ba2b6e72142c076e9b8f12cacf3829a196e74068deabea7998d8bf44013fe409177822e25bc11241ee52d7568f05ac1b9041db7a89535a053f56ceb202e0dceeb539838674e29777aeec5a3612435179d1a6a2ac33677441d46e2daaaae1c9081b254e43e3be36213d693c6935bc90cde88e46245a166d9268c052cfb7ec6cf3bf3a06a41374479fb60fd3005aa3fc1ef4bdf0202643268d31cb5fc74d21d0aa841123b5738e78187204442f0dd659aa88c90f0bdc19b2681b732b085ce2e7af2fa0a18f9edc1c84744b894393599e3ac53ecf7f8db5811c99e510613ae47579c05463734ba860a221e3a18542ab907892764f143cfe6fde995c749e9924483735dd77d807a823d2df1da91e42dca6eb2ed866aeec52b440662c56a5830bc6bbb0e4a13960322901c3ea1247ac8cde8124d58403302c22068587595af356a43cafe664146e797570f91e82d763ed1830e902289e14253c9623cbbc420f334bf343fc172fb2d32e5c3db3372a939eac4e3b68b69ede43e56efd9fdf42749ab5bb4d27aaa079143ecc34c8ba623123e9e509a8ddbd23f55df55200152304120a7978a9da9ff5d9ac75799c3fcf0d85ec34427e976a4c54d31854dc318ab23bd02422a591908d990eadd8211b7cecfa7610aab920d8ba16082938f9794fd051249fe190511901407fd3bca173643073785cf01ddbd181b30b49b19efb39c05859a1a1912a228c19338d71d428aeb9815ec70b481ccef58a35b2c7d1b7daeae1ddf3b1a1a4b5fd5c3934396fb262bad106b7bf83a36d422d8efedbe45a901cc7e2784d84bd19f98fd41a07552e85c400d6c69aaaeca2b530b395e093f97262bb68c7ffdf07abddaf1c3ea890f58a7e1b902d0efce3ec3f8363ba3e0be71e14c4d7acc3eb9d5c322d6713cb037aef4302c0854696e5ba31568381d68afb28a870725b41d8617fdbf3bc025c931250f25e4573c06e3e2289dd0b02f2aa93e696ae25965b458f520731d52fe23879f724657f026dec25737cc1e4907fae3519433cbce28f1112bd81d2b08fea92f099f744d8f31db730f93c23f7513a533d8e45f0a684231ff4f0ce4c73a77b6c709112624d6da3d94a615f4127240cf3785e5f936e91ceca0c511b90487cfb91db2869fd26f1df589bc6eeab028190c2ddd00be48b46708b154124f0d004b56f205e640255c2c7b66636e2245990d5a7e1ad166454ef1564a49d83c0671d070c8a50b667ae9ebefcbb08a4f9d977ac74a7d9f93276d91261947fd318adfa715a7e411fb43e427012cffd93bca7e556af749e157f95e46bc86ddafaac2671930903da800c9296994792d392d4974969a36b2dd4b31c189bfcad6986115bb02714b078ef947888f712fc4972b4bbf558a61920c65616e60f91e0d3cbf09cf6932807bcf67d8440da32706cca29e4cb119b2c02d7c6ea8b7702ab512a464748a18356238b13aa3900f8435c385f2f553a66d21a61cbc0e7b59c93439d908bf5674e8c3375e5a51e3c28d323968b3ba6231771c6a1ba48fbe8d183bc6fbb84ec272e555eeac7f1485c57d9d249563ef346880bd1b838d95271a79d5091f241ed38f09f929bf218a88c8b622cd3f9bd483808b0a7d9ef5fcdca9aecf770d7e263c97c0550ad2fa42f46e5451f60413cebd6495d70fcd5589ef5f3e510a1b21d60c4c06a30b6d3b63f5079f6c56a1f69152e471099a212f6288358ea40c9e9d2bc00319507727d617baa6ab41e5e151ee1a9f801d00f201272abb73cde9a41e1a8d22cecdf4c08082e61282e1922553f5c3aa929f35cba2c70265bc9e44e828206fbcd7a89b155e36aaf8e585e691b0adba3a822005ad433bcfc73100c018a7836885719778bee38edf2eeaca939a8599e502bee34f454f02ab6e72b9a7a7e1244191a24b8931237a74e6d9b5a854b6c110378ff0d1e6569459fa27ee31977a650810d2935baaad8022a9d072995c8f621921177c977a122a75ae8d5e03f745235a698015eab44bb8db7b9b3746453e58e115c3dd255c3e0c099eaf396b5a2b2982f8b3cc8cc2b1192cbf98cb6f0809d068b82891c41ec814254bcfe1256b6de83ff2727e542b39e18e15d944d8e13d05c70a8fda0a3c765980ffd1fcc621a84d6e74a0dfbf4838de11b551f83608a01450741ea5e3e33c2c1e2e3ea470288cc55e74457bea50cc41c41cf3d5b72caa88854d2c3b727a871a013cf7ef610d2f6b2466a81f0519bae6e9c1ddbda6478685c0aab5f2321c730d07b342c41eb58ea50e7f90227b9ed1a9a7945514ca1496f34ce9ed74a74c28c9e496ace730a15322a32eaa14b076810589c8175fa45721b08511e1f4ef28c37bbb659971adef8e08101216a1cc0917044b396bbd77673dfdb55f89770d2b17ad4cef1d8414fc5d81e1e219e61a0a9633e842d2453d750142529298f5a2d2c05c71d997acdbc55563cb844477a4ca5c89e5a0b823cdb4fb01c3f95115d1b5ff5ab9e3f0dc0ddf467af81cce13549fb33be4c6e77e733ec93f72b1c8cea2b1c85ce6f42901a646904cf8ffb155d9464dbb33804b0e4da6ff954c42f69b1517f2308aec7a0dc4cff300764449a074f9b92064388babfcccf050ad968f6d7d5722d071d1a2227025d5a963ecf2cd63ef6de6f9d4518bcbfcff92878cfd702cd51c57ad81b7f94c65764834c03bb591ef12f485c409627ebeae99a7d26576a91e85636ddeb08cd6e4f6110ea116f3e852824346add3479a233f548464502cdd16684ed6d3e0a0b0b7f968138d072ad255e8407fcb839e4d145b6842fefddc0925027edf7b20b04661e82f4d5bd36ef9a7abeb2aea9b6dd50ca66bbbe386d8f1694ad69a2997084f9b73fe4226882c05d3c974847c6b05c0ba58967a23cc34f0ec1aa2cd8dd996c843914c602206bd04c38b41b57065d786574b585e55c35f4f16c72feed07744a9a2407450ae463805f233aa75090d1fb4a67628ed627e36159cf24a19684712b3a61d3dce154ea4905d5d070dc828db248abe3b936f8dc78ce9402ecfa44cb0b27355a964c8c19864a713ea10cd58041eec3dbd3f9f750bc4a4f440d4d0a47639b2b7b487058e47dce491082730958ebb8f77a61708bc13b854e01a85ec9ed3b2d9504c1423bdb3ff97814765084168d0cff90374103f808b6b9f70b4b37b99caa8a0b3cd9a33a28202ae1f02f87c3a64c19ec4ff1939293c7aa338dc9481963d76f22eee0069901c502019a2a9f83b9da5d3625a3c2d6f309a6ee076bcdaee2903f5114b8ad62aa7de92ca20d07388831285b9c33d2802bd068fab5957b86cd43200ca0540527ea149e558f1aa0df609b5d778ebfd39b1e4eef8affff3adf9617e4aee6ff7d0a3ed0eba65568b00e122a86df76cf28178940df4b39ef7621e14968ef0fec881903cd21760bf72075011980aa7d0a9fc724efba403608ea7ae6594acaac7bb2003cf6005a7ac68f952e5af146164497ba7566b7dc618ab70e8841cc6d470fd4190a18ca9559bc38a5e2de530c3ff9af75f8a39c80f09d950df42281aeaef699a7ba9ab22db6e97b04a9e5492122757d9c0ea47ee3484477ae1b072ad6fb811428ae9d323b81a71eba617534735e845d875326e9ed47f4688be494a2d750e39239290c50fa6b196c85cfcc9efb3cce39e86922ef2743648d59342b2839847f7cf897f380ec363ab1b7e2960e5435e30316b86d92254210c0dcdbcdcc472135d5dd06ce66c10e8536f9c0b53fada4fbd63eaf6dc176b762b34ce37f91dd084b8714d2c027badfc6656d942f280661449eb7abac819d9715e8165f6b459fb68755658464c86b47019d3262fe7c0cea5688e9ccb4f289b3c1133201113e86c485a085fd6ed5282cdb5e3e7753b8d311fa88c0013b1593ce2b986afd5ea451dc6b24a1e739c2d8213bdd59a05527d856a507799404cdb98214a41c6bce172e349e4190287f58aa5ef8a42d98f026030cdb6b504f49acba366a43001ec086c532f89754570c6db9c7a9b6c5291cf3c5dcee65331d29692c1dec1a4f7473b18cb6ba18507572ebb78197e182df20bfe07a0c4a70b3b6d4f1599a0d784e30bf2ca0e9a921beccc83939a64c1d1a1b59a72f9cf7e9f2d6ee2e9f92510081b068aaa6de8624932bff530c1088e4e5a5d7175f0eead1ae609e563f773eab27f24a7c502414ea012c08d9960a27263d3fee573420eeefff40e572859001eb0595ee318c1da1613cd1a71847db3c6d9d88841f43124b596450f0397a68e35045805410327a89cccd2c17b244c6db1d21b45a9c98d7c4fc74f739118596982edd2a57b96d3abcfb5abea04d47839632fff878cc542dd9ed10e9f61a804bd5c3f4c5ca7a5ab89026850325affa8d6d9c6eea5f71af6ea0354cca22a07edf990e9132fa3d90f8d605ece487f78f0f10515513ffa28ca7bb9e777a7e926ed44317644d1420c00576aa1b23649e9f45d5b09310ce1bc712648551749941991b3a40519d6df85553ac9ec15274d808aa0577513e168e9cfbd4bc834344ea2eba9a413a9c33ee931e44e140057806b4d3355c55bb6f4c21b9f6a2ed51c16449c735c87bb9326b1363635f78d9b0d0ea5a272a34728bf274829a14896c9c05fdb201fbb91251866ce5668cb9240f50200351788e56d6ceba5e2e39dd1e2f593af156006f9cb37fa6c37e81a9e8c358d9c9be1dcc5bdb48814c0a135cbbfb19f5f1862e17a3748212b982cd3015bdba4ad0e1e0ca69239709e42469b20db6598b71411e60d0d7f54dd254172e254a37532010590c719c574045f854d59759f43f99e7d83b1c5011569b570bda43f2d9917a764f8deaafbf671dfd6fa57a389ffe37ddb377fd6b7c833415f127d6c56a142bcdfe5649d4f8e72c67a3b42a6619d7300a1156c69446f0231908be5217aadbc092344884cd2d4bed7840728af3478ef5da77877a72daa2901ca1ce28be50a5818b1a8bc03f3771f1b4a63f3af85c409148d8338c8a266692a593a35f7c0357c0ea8ff5c2dd802619dbb0ebfd85069bc27327d054ac9f5f74c11b8e4b313796da686a1a0bd32164424a7fcae8b77cb5fdea8e35c4d965e415ea2f7db91035478a3311cdd5947f7b2339afe91b69a06ef8280659b022f6215d27e330dd653741d7eeabd65e005670bb8f5e252e78de9ce0230ae318112a1a6140d071db3bfa91c9fa56c259cf120945c82244aa6ff8805be9d4b73eac548149f50890b00c14930b28e7da63fdf33fb73196f77a6f818fcdd466e2f6393be8d4a4d85a4176a868964ce64942391bcd146dfdc5d73e6993cc6d6c6e304d4255f83151968db423bc43aa695b1e1bc17b0363a5e9ce388bf8e33494ad4e3ed4850faa4a0b399602be5f49a026227637a9d290499672eb37bbab16dad8c418d882badbc4c6d549ae7971b2ed503160fc115dc8ab268bd59016ca49d38debe077777c493ef561faf92db30f9dc576ec26ef5fe41639cf9dae06afaa1fa6dccce0bc4a0951d89abd152ad4542d57678fff0927e2718cdefcab2535cce49135407a532181f10d86fe119dfde3fd80cba4b9b0112545193fc8676957c6315111c5be95ce4ac6367f63fc05f6d092be4027376936e1b965fe710e7937738b9aff70b68192b521af8ca763b1e5ed28a648f06b5b5dcfdae63490c5581b226b89b4c5c00fef94e9e34d31854d7de54971657c545f10aca2f111c4b0f8c6306b63cd8b05ccab2b351489c7269c3b01ef1340c698a05fd276824c91feed2f3130d6e69a228e97e99555ba68183f469d0be9c0213b39335753fa4ec52596c37009abfe82f42ba8cd96b7eaf3b662dc866b79d94982ca99d53821a50e2a8c9d209a857868cb2a23d40de9fc9c8d12772a2fc67d4d287c3572e410d782af54ee8fd4512cea9da3d0a1a35f9deff9ffb65efeb7e38432d7ba495eeb047ee0d300f5104ab922bcef2d77091f2bc1e4b16bcd9be5f14db6205b87a25d3326afa280404c1c1b47ff04a246cd6f50343fee99b9a77837ebc809d25dec72cc832f9c23765e1cc6b7cb7588d17df03a7159d0092e47b1f5e5b925106b0b64d20f38a99d11a4c98bffd2b8793bc3085b95220dd33c50340967d62ab28e1480a8c61ad8cd6d49a8b5a1cc65f26bebdf59ebe16f0bbff64a708f4faa015df93a905de062adc6ba65d5ab880a7c095211e2e089647db0233a8b0206054554a52b04252fba4aae7f3ce43f60958911dcd23f3c4b201723c2df47d60586884c565214acd6a7c69da8d207ab88882aeec4db414b8807f775a9e8365489fb3918837f510c524a3c0215fc2b364a750dfb005868789b0fb08be307fbb57e397a3f48d911f1ef6c2c73a263751a3a8a9b27cf014df408eef93d139dea7b2faac4491b22c8d3003da2852f2ed54d1f44f5031fe567e627be21d58d38f16f151ca9aed5540ec830f116343f263d6c900bc04edc9f2af40a264c464d7bfb5b252a422e5b10cafcb551126243bb15d7dd09d94f279431a2d5f4bdc33ebe8422852ab01d2d3131b4c67628d46d4aaa3a5f007e913e41fae5236ca89d059cba1f4a4954d44fefd5bc7e7088a270f9fe73c3e19c2fb582438a5b39bff8b96051ef46e4ebf88820217d97597c57e1b5c91aee3316fb59cbccbe2dcdd22d90e4a2a516baadc52f9e1ce90d2a3c9f0e9567919cb6a086fe2282a404708c8d77f6543a790d190c0bc879762ae6e67350a5537f1e3f5629ba9c2f680cdb93387204fb98d3d4f7ce42fe2dbb6f36f3ddb55b634d3f01579219e615b138e3811800ec5ec8f2a99ef6caf3d43d098de4b88105b6c2e9201d770c7a24c33b86d807bef55aae2ed42223eaab6b71f8a63f60c59cabdb7865c513923704d1e40699d8cec41ab9d41e2258c52d0c3ec906c4e058249434f1c263179b5a530f0a297d2f8515039f94fd2c43ea1d039e573ae650df50a45f9b2448e54a8201ea4e158a25f383308619e2787d6fe76bd178a065d81b566150f156a550becb2c4da66492faebc81c19ceab932a28a59e7a77b16661849c08790d84cff978862a18d505ba4b627caaf1a53b1a843d256ec04ff103baeced84a6aae795d78a8110f6a7a0c85df0a4c232b49b5f9f8dc4419df35cf78f1cf8e69d83257673c95d668664153db700b2c0e434f39eb7b8aef321f8d1cd6dcefeaa01adb87b06733700c499185dba1533c61ff829829ffa5c25a41381b7b79f0cd6938a560f0e3aab8c120d3bc480d35c5b8459d34064ffeb05ac3098fd8c959312342170e7437c1d7b11e496486351821f2086678fa2c341062c0db4a9885213619527431e4604c6babc603270441ea5103732bc6241deef50af8d98fe25abaa29e24992656056730e45ece608863d950321fef9b66a84f006b85751678e749adb04e067d413c2a595e2990af208a48e25977f5419723c502451b27461f2e5854bd6b6788496981d2a7e86bd8516ab73dfffeed689dcd42f36f1740c6d811a479fb7d77c7b2d1200681b9784642827c154fdd9f5d7d152600fc4fa9684334249b2de377e0ffe5df86019b156f16d169395671d63b5061591cb5a0fa570e61edb82db8d51db4c5d18d0987a19c280089d8959f3767d8f29c8b45511dd400ef1c3ee6f35c89f404a7a2fcbf7b653157deb4ee1bbb123fa7a22f812bb062cab70232a458c1a94c02799299d8d47cfc469592cf0131ed79202821bcdb1c6b5f34172ae85ba0ff71aacfb937a7500ea5957593a8768cdc6a222b623d616d78369d1ad659837807f38771ee6aa5bad6be80f88ec5e356ad3a947794ff9d1acee838e23190b90edd143476afa7a61470c29536790b9659c51e568f466aa447cbb5899065af02432a868654ed020d319315badd3d56e3c3a3b287a71f45d2a1e22b27839ec5699cd0dace5bbc86829c7de11cf8a74f25fa58363dbec913960b0aada090ed1437fae3591f585b05579502d87997b2166b761b52ca09fee7d75cdf3a9fae233de4779f44b56c4fbd4f045e1a23be00c5f2b97a8900020e0da370732da2c9e1f5fd0b745992600c43d9a4174d0c56fd625d99dc382d8c22605f41d099eb412ac2a548566cf605f018be516961fc4a6f40d732f71032ff205e42882441d1f62d2df67997376c76b2ae8397a27d3f39af4b6c8850e9d9e8a64dc81f11715dcb59c2e7302b15768ffad2b0f707fec199b75225a3ee6b5b16cd1237e314bc1e983f72b7720226c3a8589a1f28e1e0774b3faaa6fefcabd83a5094037a775b399487e32dad7836ca74528a6566c81ee57ea2c8abb6f5f44f59bbc7be688058c42d721da693428dd9f59c6d004095fd5188cd5bb6d6d3303d33dd5f9f2278b0097408025406809be92726481064306d811e2da93a4a2a0229af7ade5e13e92b0de400a97db4198073e749e49488a751ccf57916ab2911f00278e28fa9bb41bb187ec40b9dd65ee10c3dbfbfeea5af7d7ae165f4c7788a7894b104c625bef071eb6640044ec72833ca3f8ea25a2b1f7dd5f59d96b6200eaa5bbc75c81e8a0f915b33e74a0b50e2d0858eea432390ec3d5a262a73d1e6297e12967aae488b563ed319c56bb3719991661b52f1080298456a70359b760aeeba93c66bfcbfcc44cd5ace084616d21c13e0de5250ef9048523dca9768bf660863b46e0dece62d38da4c24f79d74428f86ca9d975e6c8512c8d8a0ac6025c2ee351d5fdef79a935a72d1c3ff549d6d8e2c4a4375a70b846c60d42782d6f2b67002620ea2af905e5d54a05515331c597550fbc3a38c161edeecefb543167e0851f453b0aef0e3ba863a8f9781007a3c38e7f40c06ac7591d0e1508622151ac339c980b6b738aa8eb842f870986c59bac77fce2254cfe1327ea187bbd9544444cacd86bc6e6f92a69e53b62233ddd98cfa5eaa4aed0394ee016274444fda9440329ca91a87cba215c3b87a6d453f02f6963e5f49555cc378da123928f3727a03626c6c3891ec204121f5b698f5623a7e73f72d5aaa5e97e13b3080e0180e69a0efafc2f8cea1df840fb9ebe06bfa59045531cce9b6c6d5e455008cc7dc7b9b788d58cdec61dccac6cfd039372ffeed0cdd8eb223977690d015e56053cf9e848b657cc01344decded0e330b1c1363ae339f96db3a5c525765a959747688127be039dab8ee2f3d0ac0da28a37d9c22cfd407ac9c50847c86f32e9897788b1603231112045c0902461e3cb988a3f8ea30fecf88a8602fc55c0f5b60b89fec9af2a9568b7f361d6b09a6bea04cbc3835244fb9c1d58ea832735891592e54a592e73d1d6e3ca94c785ad94896dd983784dfb711fd8c592346925251a05a1d9c3c358230e24bd581bee33f71f6d8a2985df3a805474689ec05191aac3b58a36e122b1a020cd4b52106f929c84ae5baf0897ec5617ad712d519acac4216efdb89f80c0eea9f0df10232a609660ec1684008e9044a2e3f6fde42cd95a62fcda280f3d5945043342f6838e35c1647dd6422e29c8c775e945bf4081a4267552eb1c0aa6d066a4b349e58d82f3cea19082a0aeb6731c51a190e1a0ede8e2013eadd939d0b26b1546b03e0eec527161d4e7eb9f89e9fc62147ba6fd42ccab2b72232a124a7fb34581db82579470a5b14048d9bb71a947d5d3c4835fa9f2e2c39f991551f282606b2334872d326bb0408b799f408f946c62f414a9fc1818c31eb43df24fee3ba5b74405675ded0646c5315b2d8bbf96e6edcee96182c8a1d1e05f6bf6c94519caeffc4601dfaa3b56b787792c141b249082ff49ebd6afaf22c092f30d0bccdc8bb9d2c185d7baabf76733c688cd60d0a389c65e1e2c7feea1443f26796b4202f38ff7a81c80eca26f23215474c4836749592d4ea6cd72403c6d9792b7a093941ded539e232103fd232158a0b7522191f8d8b2004903f15940660cf3f881b91e7aaa7d860054938114d43cabd662d61fb6775daabdc9bef9446e6322512cd4816defeb2c4ec580f07d9c319feb8193321d713c3dca62a7609c0394807fc434a175bb22207a004339ed367f57ee37c9a91b10854c24ebf58c9c399c842604c50953db62d06bb8421eed8d092a45212993c2d4d345a5ae6c06306fb9412044288522483493a2748e2e4cc4d5e6b01e8b4f015a68df5bbd8e2692152c3925a7bbdc323d5113f3a39d202a7897f56c24d470a17f03bd7831bb504f5ac8b0d42c7e05181bea5e483a0ce1c08dd504b0762c9c72938f54f1fd6d2497b801e0e2354f8e10b3a6bb6ba5048d2d21c571089529fe3d686a6f6409832e62ad83b0b37d89c3eda92f47935153477dbf8a540cb566d538ba9968475f30a481dbd22aa94c7250282fdd0e39c9587756d10df0926816d4b955b6d6fcd42c67da98fcfe43df7b8a0bc03abc6e40374841c5bd4e6118702082d94673b8a85aefc7daa944213541608f7dc31971629d37f33977a295d676d4cc723ef0ce88d5c8976fcec0cd2c7971258d1b4ed6f8a7e20f0575bedc6ca497c1588d0d2ec376fb9a0675e840d1c0a80a9cfbe4714e600a1d178b56398e071e4101923df24f68564885de8df51416040892acafd2214a596673a8c677041af4197fc7a1dc10dd1f05adb5ea446ddb7c73e7693f911e3404b42a1237bdc07c0c9c03856260db12fe3496b400cf1d8d362979c8fcdfd16e7c01ff599d4b8cacddf44d096eb6902db15d6665ce1c9443e6f7bfb07792e4971517819e41164152aa91053694aad4dfe8f3dd244ead799687b89cee347ade4cb7ddd86bf5b13461d48295cd5cdf568ce42f24258ee15a290c3d7b5641d58fcbc004923241816bfcd99cda30d6a3616532f8ce3be6eec89f27c315f18c7a9073a21b8c3214f005e385c6a9d62e3b44495e9c7bb5f5c0fd5ddde781df0db4dd96ad5e046b5d588fdbe57be6fc085a31454dcf92f54f85f1c747bbc7b089d608a6912e831d240d7d715d49a8facd055a7eaba49c806eb9dc36180b279e553e59b73e7d6f15bb7a0ad8a241ebc278d01005c98425c1a36e8e9ec47feca5602c7bbc4249be8ba69c4fc3bbb784146e195f07ccafb4ea1809f912f2261cf35bacd358325b0be0d0cb2f2565bd6426ad9a854956e5cfeb7f768116f5723ca4bd8a5c88b2fa97569f15433683873861d95a1f74bc754dcb238a61109d7574ca6695dcf0fc6822cf5f0ce3179993ec3304f262f84e4fe1983a59536600f4c2e2ce5ef4c22ea90fda12a47a428fe0f655ef3f76baa1b2cf452e044984ecf49c30644fdc2f9d7686d9ca67e1ef2195cdd6b26535fefaf2ea0969619d50d3ed0d56f99c33dd65975a09b13fc798dc33b0d6799acd8bd28efe972680271b302652fffebd16cef077aaa6b0a85bb5a00a1b235e32995a62f528fa93c765ad351476b73ddc4ecbd54b496ef85738246bdc050fab22a8d73b4b671f687bb5ad302631fabc00d8f676382a45726fe656d93145a270361e1e7d6c76c7c8302e8d87015cff582aa173e3fa898a22fb6013905df0610f4997586c71ef69e0bdec6f1d8a454ada86f15cd33c0210896e69b60914fb381355273ea59e3a10a9b426f47fc68c1328cc3c2f4b14151e29468b7bee9da8a5680b8744a6560813a43408b4b9d4a409e752684d855e6d2779d97a0880d6ee72c8b27d14ccb9c5609172d8bbdb8b948dedb6c71a6d822f7c080840da2828bef00d3b1b90fa0b7d5a76eb2cf1d0ba71325f35791fd270e3c9683d457b820b8d0018097b2a592f299e77bf2160b81e963360683ab6ad08a24f3aa90ea1a682f7f0f1eadf34a4e4c708ce9e48d75304bac409cd84acf14ffbd5c8ca031a8f9199aca4b84f9975dafb03456fecfaee8be96a6ca5001e21bcf13d1aefaa5f78e52bfe42b28b3e3ee741ca68742bc6e1a0d76987676c9407411dea96e9d4ad1be17e4476d243f8a6a6f60268c43f30cc39362124d2fa2413adad7a95a9d97bee2e5927b549217175990518c5878e9116b806cadd247d275edd070b09d57ddf7b20c8614ed0624b96f1ffae88ac708937e21537c92f7b989a1cdb1d2fae324428392e8de2fc4bc5988d1b9125140d6889ff46729ae5fd1392ec991d9fe35ea615de786bbe04c7a32b4f3cb1ae243890a26f1161c9d9a9df66e7390fd1b754f313f7f543a400a7115941b0a925db44f0faa42478d9b3da31846d06a245dc9386e70f6cf2dd33308c356ee4356facc438b532a579566970b390bcb49bb7f62ba9029b92d2299d2f4861bf156903ef1696e45786bd96e4e9eb277a391ba21f0adb44b14c6ebe6bf60d48b0edc8127fabaea8d94f9865152f7f512ea4f556f78598cf975dbe00f65c60f478954594235a4b3ed66ab5ed355673eb2ecdb49b8995a2d8aa7840ebed9d420d8a16af9547b5cc44d89579922b96b166deb244b2d9210b1273f43ef180bfd7669502d1a84eab25ddf8bbe73cf5b38cd593ce10412fb86dc9a56c6b910da40ae0305d80c6f7871a87096f838c02821b3ddbfb5ee99ba3b21582ac31d6f5bfa1c55201a9899aa5a8befed154427aeebc9c4c9bd63006b4b827d6141213d677dc6c135c59aa3201b4e084eeee904626dd4fd4c83bee5cd90c756992f406e0015c5bdfb99d9b24a0336b9be0f4a2d1112bd385eb50a76370a2ec9ddbf1eb78cb3f7f39c416f31faa60c265a0ec52bc3b2feea52ebc7d0e62774f652c77097c2d4eab2842eed8d57314e267312f48bc777bf647f7ff920f89945e71e2f792954714ce11b12f13789fc1e4be07a10f6cd1ce82624dcedb6775ed18bf15b179c1df728ee1c0cbdf4defc7d24effbe166cfaeea8965885355453f3af59b6c35ce08a21f2b0c3e3289bee0ee6b6199c54e171a560bd4d96c76c230cb73e9ed7afb639c5825cdaa2f7e9318ffbf2e395ae1b83b37ca9c43065437213eb33ce39bb90f06303854d3dc48c8960c550a235a7164eb427246b2688cb32d2300b7e8f5d955004c1b391111bce5bdd9ddffdfbcb6532da9de6153dc617a341cb75f661f621eb5400c77703ad37652f2df0a30230bfcd0f166fe7c66895425acefbcd65ea80f540e2a8300aa52d57601db4a7efd3c32067018a72875f47e4ab07767e51c7ae2dbadd7c6c7d564301fc20b4c09b69095d36edc719ab9bd8cfa37748d0b73f044fb39f98073f029ef31da014d97f2ad4fce273a99abf235c357b6c834f26f2124565148d3e6105cf311f75b116dce6f4b02df84b856c23a2f729e9849fc3424141c0f4053b783b862594869f39a91cc32f1f3e1cd4f448c8c14b3ff86de9f28d9776e27077ff0b08c2193827ae30c5a1b50738b4638001302cf23e9b3a2a49c88f6916fca3eae61d2673a37b3df4c98671af195239086bb5b7de568d37f47e104b4d025340f54e8ff8feca0a5b24a1ba4044b97fae995ed3ba52e88e709d382e1ade18a07bad7205c3d318bc379c8b049bcae28f38851b5fafd5591430e8fef31f313e59bb1d2fc7d93aac1f44d4c0fd5b8364e8109aef5e26048e6b8373175fab8e1988ffccb8da64a9fd2f7e9dfd16c35a9c04a843b59ca8971ae609c651f6107d8c951afc282ee5cabee8ebad0fd3db1aa7ac1ccb42fbceba65b072f6a3d5ca75f1cb546d5eed3fa1e6d5ec54893b958edd03fc3636b6e5c0ce425ac161f83627ff4da9a3a7b2149108b426dc0bb4dba19f7a06dd93e4732787ad336da265ea50f61b04382ac25aba6aa0005b23ff70004963c8251909b623c05730a6915ad90fee3f38c53b846a2ef58379e7e5a6e3dae9c3ba3389b0d7b708e86878fbb471c40211fa465261fb2a0886487033daaa4b483ea5bfec632761ca9257ca8e84e9af725f6ef34e44e8cc3318910788ba3ef746eedb65e46d9755f7dca2c22b481f5358aa65ba5f5d7fe1792b07d179d43b58d3dd25212ccffe4accee7dcb9bbbac7791d998ae7600056d32dd36b76c302628dae073be12e40cd3a05d4abf71363b72c8cebb3865c7d63ae829e4a6ea3014e95870f1e7e3048117f9b926a449f2610683bafe5e3d65702e38d583289f51432b6a18058dd5308df386320239761c00f260b5db1e6500e6c3ab358c396ae4f672ef61ac43792bcedd5200cff348b0b9f468fdcf59447da1bd3084a07947debbaea407aa1b741ff6b64a217e215c36e6390eec970ae3e83c7c6f1a5b7733d0357ee26c17f7b060989fd01bc054fae5dfe6f7347ff315862e7ad4daaea6a8cf4cca094600995ad868f3a0137cde12fa8ecf33e2cd1fd1ab2bf3e246b67f36458a72b74182a832968ceb7d5cafa1b69c8852dfb1440245c6ab6fa2b7da1cc46e0a5ae59dd106e9ebdf606d9c2b50468588afd6c5610746554f8a03ae5f17e30dd089c1c91190ea290ef212940a20758cf2ddff6763b8fe50e292cf1ee77a2b237eddb5d53889edf7090195262631c8683e83b4003477ba3ce8ed6539d09abfd2eb0401ef3fbddf13ed8249c6b9273d57ee9020b3bceb26b25404e0492c9ebf2f5dfb535ae7b39b64192aa0b76ef4fa8fa275cd85e37c83d9aee5fd3b2cb0d3637fb4c4546995fe01c127e557a3261a55b45c6bfd7c1564a0d66f6a9084da8052c2cca589c808dcb6497cc0b820473532de5d9f614a19f7506cee70ded1ed863b148b5a9453f8f422d4b874915095670b8cab7761732f987ea35610afbc06e5ad714e00e8d5c7a4da49d3e99b93d6c79cbea28e25456545886efe74c9ddb530c35631e661628339277a75bb2d69bd23c697299e25eb702a6587f498bd55acfeaa5961705836b27bff9dc9a937f84276520520afd6f8fa1ad00ffa0f36b30d16c74a7639ab7b849c8e87503bcf504343f319af063ccc8e42519d8783335e53149dbe415a4f55c7b2d015a1a62d0025dfbb81eb87e7958d6b0f06e49cf514d03298cdaa86c6dea568fd131f7e79e00b12d7223f5d4d3eb364d5df3c5fc018a1934388bc8837a79da5feda28c910099ade0aa214b15fe38c3ec0492ded3c4091a93eb2498bafc92b0712f3683b519db15d9bf1ebb1012214e6d83f4ffe8f94ae4468fb1092ed432688fbe42425b5ce9a53d5b4eda89adf4bf7b33927bd748ea9c802640eb8df314e7ebb6d8dc5ae8bafc1eb464c7afdb65268c28a7ca2f5cb73dbd6a3aa938e123b57575ab4fc7b58590b3372a3f825bdadcccb83b9bce2868c552a62c61f3e4cb1b7dc3a528830a110ece8b50e4de80f720dec903b8e828d32ff1701701a62f93633d64eb948f90eb1f16b6ce74a62330565b78691feb6a911426089318d6eec3b6ce41d3cfe43604ba37a8aa40d8bd3c5d55cc10c5595a110bce18da636099e31ae6117c013d7a1a6e179d59934b9addec8bc75cec98c0c836ea04f93a820df79f6602f077ec38d84bd449c46bc323d605f83b48cc7f2158901cf74d4cb64d108f31ba647fc43726b4a7c7ed09e2bd322e605aa3a2bb72a7d9908f2b9767101081bcc617f2b756f9315f2eadce8ca6c9ca20bed855073270f1643a3fc12488f607dfba4d1a3bbd5bb4ca2f0201eb8003462761fcea7a0125343804128a5a44fe2902773fb677a601bf135cf31e83e83afe083313a1942cbf604b155b0ebbe7ff34d5c35bf5dd91d6f97e95f96ebeb82d5621d5e17b2989a879235b8499fd07fd6180fa41002107b988baebc0455ea1c39d1c737c9558f676e3e827b39dce47bfb75aeb636016c7851ac68a5adde68357daacab47007ac9ef965f47b93ab198d1d074df92617550aa8e81312d44bfee5563011232a640c570445b207bb73a9d65ebb0d20dab1d0a18389afb33f636922cb5525e4ca1b6030476c00898a8773e296e0030da71bbd2d53bb579a4e848aa3f5aa8c95af3cf3e61c1fc8a09d1124a36be5ac4f6f69d45ca760807a91627e5c155df2c305a9e4aac38f56d78030a7ed48e83e7248c4105760535c24b0f91fb43ab993ee955de08e988bf5e5b3bf954f897aa9a0d02f8c3dca80be37f54fd41696e77e69e7507c7f10c1dee9bdc9d33cdde390eb18717cc55dfdd8267f2f5b4966e48b299b299d462adc1339f8aa5064cb760ed87d858b50d93730747816c459e9ec5cd8a608a894f98db9ece38e6a623dac7dcd96a5bf59e9d62090087f9af24af22d8b5a247cd470b1a4e74706dae6b4cb6d467c812c13dc64db400ae8744baa5dff6c06c7d1ddfd9ec1f65cfc0fc7f3d90419ad784ab18390f036384472c828f8bdc29291f95b7727521570845fb539338585a03da0ea79ec3d0c77a68bd6e71e53cd316dd0cf6bc95a00c7fa8cd7e6822af1ec3555e4e9910bf1f1a19510982442ce93d74510032e8bf347f63bb7883c43301e9b497973d6cb2482dc8ae2d82b1ef2be812d7e7992b5faab3aa0a245046a8ce5d99421be48dc46d8ee8baf0881683bdb170aa6c7f5c7fd26d65b56cd7b2dc24a2b125a86aebd39146a7501db30861df6302bbb05207d0461fb454d3004b3fa520d71b508896b14350bbba5e430c2adc044b7fdb2b121c8d9e61c27384c769b6804159c06e47a43232d00b74993b3a7df3a676bcc90262bcd13720f6666195a42d8d1b8758ca57de115772f7bc0eca5c76f5416d69d131c84ca36f77561af69352faee5952d13d909f1e988bd1a432ab063e69100ced51528d89b9fdff2b0a458fb69a07dd17bee0d969da480d87a7b5d66651cea063e736d7fc347b8ebae3693511a7c0d63fd99e799148aee669fbf957b5437b03ccb5d0e26cb074a7347663da1981dc6d4d161af102e990de9fde03a625c8bfe8aaee47487d0be11fcdcde016c8ace6a6050fc9d4080ab71bb5ba16ad251b9e1b78d956bb3b070256b0a7e1e2c4ead05717381f8a1136cf0acd1516d351d9974038419c8d23a5966c4eff0133ea2d07d98110ad120174d8df2dbff90cafa9155b7f8b71a02dc287096bb2848ace0b0acd36156c2557488d20850a2d93c75ecd7f14c7deaf7554707662e9c1d7d9a1ef9041f50734f8d5fe14d5472f4067577271c2232c63fb6303ac33db8d5c52fda9bee7858b7566eab3f24e8bf3b89071cbd470990d14bda6808c9b1a47805ed558a0ff92fb963925929a8810c404c42287a394367c799030100ab030e51bd6ac36ef2886fb4de57f1cb9d08fff1a47ba926446cb00e74ac2c197af29423366d0c04e594d4fe2aed32f0380f1a97206f13fb1bd82c8028ff6d102a34c1a960e7b41b9d8220f034c50869cbd7eb1a5a8c2e24d40cc5957243d5e8211f5573765dbd7478fb857ef5ea1dd764b232bb5eac9beafeff477b0ddfe154d8974df5aefbee5e9eb7e5d0da5c3f280634b0acef6c14a628c5bf87ef69534324174d6a6bbc1855de1e2bcb157d7e95560eb0b6317d78701d6a6de982b75b05c469115b59f6a535d32557136a5128f8b9e2aed165a760839e379d46869bdcce8c10a19e0bcdae7e79507485c29cfbbfeba413a8af53372a8ccbf83616d289b3da4312e3d8f50cb745e13a739f128c2af817c330a7f9304137eb6633f1de8f80e6c3325534ac25d0568f1db18e08c1f7ff2db138d8d78556cddf17f6db4ae70aaa3e42ddfce4c65fbc77697ba4c04c32d436be8db30320ee3796f067ee2541237f2caaed525c54c0bff4cc03b62833b90b9b9f0cd12e798a6aa9dee8058075bb97765f311a4d2deebb566dad1bd701dfb09610830c8ca9a0891d92931a13e1404e24bca2c5440dab1721708a38a743e668c83d1dcc9f0c272481b62314590d7f1d90cf45afa406e64b14e293655940862281cb60971e8e0d95522644288b1e60cb50347103ac50f51079745e02135c2e5dac9a3abd8931bdba53f8432080b5f2a023e18052afb750f95b443be2e04b9aef3004e25c76482353150d5e1e4016668c8da3bdd668fc8516aac37a946934ddd88f0494a8edc3004ea4bc53b0010f3d354ebf15ff24f39af3fba6b7c85cb4265092107f90bec2129f6bdb92fed69a8807efdc73027703e91f599916d0e23a826dbd573ca90443e7b3858d3720802b3918124d5ef50e284a23d10ceb133c6cd8ba9ee426c8830be62ed6625ec3f8f2372cec7704ed44bff55bbb1e0e31866f38c96c067fab62bc4e983e280a0580131ccee55432c44f23719faf18fda8498de62792c29846fa61c852e2254552c58c480641ef322d2b2f2159005a0d1147a856880be2763bec6a0bc25c42a4b0da8443ca676f41c21d362c80f86a93ff4af2aaeec71b575ef0c22c5449ce701f9b0d190e227965783cb9efbbfa2f9e39976c9cb8baf7aaf01a97e2fda679560cc48c2505dbf4c61c1aa009d819dcf3d3ebb854e274aa48adc3f47f2e4a2cd282faa86ca4721493c477af10d92760a39ec894d2fc90760d7ae11983db0764761afd4ae683172c313131fc7888540fc8e3d5272a3f3e02e8850f5e6868c87d4f49c77139d313345936a103eff0d48fbebaa1c118a6f699942d6f2d5880cb4994751f106a59828a94a2839fb7e222d6a3645c1a6fed33f8727f3d7135731a4294349bd81ff9864ad266f616f4b9cd3e5be280472d226c920262e5eea15c479affdba72b72a1e59f4aa9b8d149746cec4156559afbdd063a0f1756d9a25c5ecf520af3aa3ef0f305de92e3417e2c4d4c64784ec14801991f6ebd3f1b030b23ad198bc9beb2560e754778819c2c14f01b92e1f99f90cd353f38f7c2cccd514dbcf7deadd705c936e5a831903a9956c96a0641e312f65b0a0de45d82e73a96d3caae81d6cc11b7ff6c3fff44b04bf0ee086a652c5edb494e153e173739815d278216f4309550114c4a37ebc4915fe65de1befc2932186a9241d632dd783469357eb4ca16b9815813e14fe99e84498e623dcd5e421675afcfdb478428b9907a08a176d1c306365ea88a3557018a85205b8aca5b6332bab5bf06536f89bb79729c63276ceb4c6ef1e0c6cf3e0bb7998fbb84c543ead75ad9a4a00543d3123e3cd5a53dc3413ae855af450bc58963ca4cd1e93d6fd3f6fe1902fe7d902d27963e8654e1cd028bf55724fc8dabc6d5209b22bacac3bf103d8435fa37f34a3880899a26c157179d72cae98fc0ba23d3d82fc6bd944fc5b5c0f1fe1012231d330077fecc5d32a72936b9da82f2315543a2560aa332595f9b1e888e4879966e9d86a5f582e4e38c07dd1b4b9314e7443623ff35cfea919ff1eddf2701d00d044d9b2c0dbb701d45f6eccf911bb7e96c1c14acb9c558704e7cea2e4d3dacba6e6bc3520981b9aab78b495d451589942ecff6e1a421ab8a25c8372be39e4ac87772392906081acce512b17e9bd956e38f53a9ce2cb1733cb000b78718965a004dee9643b3e6483ecb2e7f84ceb969e3130693d3da125e146c49f78c25b9194c6df201c1f1cc41887cc5a77da22d6b731920e9509873890616dd0c867dd9ae9d91387c64d7edba67cccf43c046786d71630c6a4ad67bebec77e120ebf1d928741e75f07c62a8ae93073fa5f1098d16c09a360b7902a500381ff6b3e9c809528b557e93888259d3189af536df3de662ec70360d19234169b40a02e523e90ed41cdcf1cad11ff6086d88ac77033348dfd3f2f5e377adf323ff6391634ff6621ea196b4f213e2e05204aa7b019fb1706a6ebc3ced031d9f24692ba104fb9fcaf117542f79e3fb5fc11ba16341e4a890997619d4c7291b80c9416754c5e9901bb337c42e5c7068c6184d0f3620d7d7b77fa301a68ab214d8198e4d773dc5acef9344addc7e6e297956059261bcd4d19249997c4cb3e862441e67fd032bb194ece04cc301f0f8b08b8171e2d5ce3389129dc03410bcf97ba0b0c4622d6bd0197e5e4be63216be4d6070f7e5f5343e5691b33c320486c3981a87b1973c0a719ddbf82354df1950b088351bcb6b42c8fd1e9faa9034961af027b10241c627d51be9d7e2cbfcc9c6dcea956be5e0931b6a41a5108583f9413c14e2e4ec7ef8f8bbf11b025fe8624189a3b36a5ea3bdc50081bf89e15d253f6283dd259208f2102452bb08008663a3e5875b9571aa63ad65380de5534cc017c1454f2a69c0a43a41dcfe9b87ddd9093b3fdd41665fc7e3be1734d5f8266d4adc6c2d9ae778315c621bcd4ab4399c312c155d9aa4fb332979b17c20d74ebbde24238d2783416b295202a2661ef30af34510881fd254c84972bfeae5dd6d579ffe7c174ae3c1f3cfcd100d852c4ee87b5cc98f66ad453eeb3a87037a48f09c7fe87daec9f51a43e8ea3096ed1582f6c821f9e4cdfd59da15ad713c07a80c6f288329023fa05271cc3a0d506b1414f04e10c36791db8d8b59e31203ec15cbc769ece794bc3bbfede35692b763116dfc2d24c019c0d943482748d810b1911993adf25e1e979c50fe5a7e5fc0c980d5c0358f9fa3c2b89ad808ff6c2f7fadca37499c963a4c073c9c5f50a8cf01098a7dd0c28810323a9e0a28597006fba47a6856e950aed162f874dec1e55a1935781226f352e1e079a6a1edb49416228599ef2d6330922a34680adfd7bf8dde8c81d8a56cd3bb981e9f480ffd2cbe67a87a298bde4200621245afe5bced4c0ac4ad9dafefed841c1bf0639ac3a2cf13a6ff7969c699b23408c7df62349e7e65534edd531cbb73096a38609ecb3c5f2e83a6086a53de7e0785883e6e6b1fbec9172ed6a9525fa01c1c83056d49b5158d705eadba441a60731c4c534c2e2c7cd74733adb89a1e310388b3c59ea6706d72f1ebaa5d731ee7bf54f4b1ccd779777d7ccae1bffba95d162ff0ad62594dffdd78045d24ce53f411411b2ea8a2cb0c390bbbbb59e42abd2fd89df6659cf44ad148b2efd8cd2e3850e2652627026901eba6bb9713d49ea4deb40382f79e2e253aa44b1ed541c5eac2c0b8a1c70ba1b1a2b72aefdc7d587ba29ece2bbe2868afd67f091b37607cdf03619c8622d44d93c265d4941e87d6226d2c94d786c9ffa8f485d708992c4691980387f7baf4134cf7e0ef660c4a86151e4ad1168bf22f9c6f53caaf604ddac891fb2ed8dd1f635935cf3332e591edf7b971c68db909eac20966e971483e6f9a43db236af2c87b43d74ae7b28ddf577372d34674c0758d34fcc1a63dc5cb2eb92bfd4de7c4d910102365f080b0ce3669c82e0b86cac4ffdbbd13f6135297be4aa7d6847468b7e6ccf7ccaa0396e12c70c2af7d8904583663d6648abcf439861c5dc9a42247b7b1d54010448835d08573c79a3e8d9f16e3eaed012db3d57ba79314129d1dd68d4b6249ad311b6e5e327180a7169f39d4506841e1616778ff4ebfb92e8c6b20ab93181965c564416e266e85ca6f1fb3de8731bbb219d7092fa48d3b9debb65d69da95c50bab0061b4ba45a9e7772000cfaf75683998bf8c40cb94b2cdc6c809fedaa02b8d5b54b0732bc064ab649c1ad99cd67496308352f74fa2268ddb73a1359291b7d8ca069472a07d951f2d9f35a584a885b7dcbdfd2e2cd02105d42e2358f6b85316f0373dd6937e1683e40ce41647cf443e4c6c34ac1971b072dec7e4293719669bd3fa67d28b2caaf99fb1330f7712d00588de38f900adf085a8ce3ad5fde12cb0634ccf9a5baf4f07d0012c37ff6814be130dd69f99940f624615814d4237d0f4e22f9ab6b73c34fb95d9639ad5206b38a7cc6cdab796768250c1c50587c578a21893af75c8261dadd5d37f6de7ea5354138859f58668fc14c81f96d0c9ad0120e9de65b96203264d2e54ec794c69c0ce444bbb60fa4a49f49e13549e434ea2574c0ee3322ebec715da5ab5c6bc2ab63df1d15759551a42989e346d6fc1be14169acb8fb1f23c459b8a196281be0fb661ae8122d5486754bc1de01eb9eff643b0fd3856b4bafa791f817637dfa45c00a5943049e37457d99930e6744cdbf3db936570ea298a921dabfdc260da5279366f1315eb7378016b36755d1589d4d97e77b778f8ce7e323dde6fdde361141fbe8acc3c5551e9468a736cd14299fd8cb7ce35192b0297d36c8abe2a1201a7d067671f833c296013bfc201dfc9f9a84334fea11aae09fce1f5e55cf94d7b9d6353b464871b988bed24ede5b05b13e1a37eebeea102357cb764666a1d8019219ac3b93ac3b3a3e3d78e78dde6dc5e6725a6286865b8727bb6049680185daaa297f3569b5a659b49c1ed96457f107e84ba5c806aa642ebdbf37e9166f8f98432396500e56df3157f562bca584ecb53f666cd3e7ab1cf950ab69cd91028ef1e8b99f22c29546b057b3ef0b617b63f75e7019f12b41a17c6db362a4c8cb46b5091325b9c055f2fd39fce49bd299185e2e773d5ec08d44c5912ac49b92f9ee359a47cf4e05f03d78640cff27907039080f4e4686fc2ece31bd6f48e62058b4b297ef746af13b1ec650909d3f57ac8b51fda25d81df5dffe11c3f7afbe10b1ab3266c9650eb94889bf90715ca566a57cf53944deeb18730461caf2cbe653abf251f9351e0fdb8655e40682cd515a3bfdce1c2d62683ace0075253afcdd2dff5c8813d45b0a5ad18225922bdd873251316016e9c3ec1e0bb6722968c4bd158ff69c7a8f1aa65d4066e4fe1da2167006522a312f1cb1f7be62012c1298d8ca9aef0714a0dd777f24fab037a847a20feaa7cd430222b0c348437074330fc673fb91e16dc762e7bf70a8cb81bbb45ee67bf7bc996d2b63cbcefbd1730a6769e4e8cc1431c27b9779fce33d9cd5c5a68e480b488c12f449d3fa13e5fbc936a6c204e54403863ae3d0dd3c75e4579d0979fa6db9e76a6979edd8120082d80c5a40e4ce76248709db89732e4930ce617822ffa513e0b9d872fbd46c0f621d3b1bbb0b809e2ea890a2de14b5b39a0209cf892322d52ca3ea88195617f1d049e1e1dc98e9bf2e4152a74d9ea89614c6f37faecda2b9b057d720911ba3f335d0053fe3598ca3843761dc25130f4074d016805c23e7a5e53fd3cabd114537d1b74282148a7e9327edf93f9238115a498ac49c1b862fd52035f4e267015f8abff3abf7fcc740eceeb5dcbd01e1cac83d17aa3ad1d37f7ee70a484dc2297a192a8a6caded7a1229726a000fb7ca97209a09c95b03f695dfea94b395c86c1f9f9d269c0421995a372abfde103bcf91320b29ab3f1b2938210d47e848f0ce3767b98781b3f22ab8b6c6b94863bbe4ba2b23ee076b8864352c416b5ce662dcef86d5790865dcd1e04ad57e7a3c7ff5a9d81462ea59737740a039320e596f2b1fa6660254c00bcda055e7d62f77c606443bc35d6c5378729ceddc94e2e0c4923b50fb06682986169a76fb2058dc986890f5e184535a80f8582f811c3f594c6e547d5917927753a9359c50bb4a07ce10444a8601842b6d686cfad6a43bd82e9dddcc8539c0b37b2a4c3013877c68f2a6ca052a5fb41d544eb47e510d2cb60f82723ba39daa5dd84ddbdf55760e075b650b66ae2088a7215b8e7ae780f7134af72d87381eebf729007b4e716ffd3c43b9f313495cab071f55cebe989830e41357eef7496136f474fe5ea36ce7850cff348967ca139a13087f3b34f9e839f4fb61d380075b346111ba861baf10ab2d4f19cc241be9c20b070f37fbb8c06399695e8a434fcc386e1759a77944709cdc297bb528ffd361f246a4ff0a8a0f1314af5df58ef0c8b6c8a6a30fa7eee8769e0fad8147cdc69809ca25d02468ebe1a7d888df3a995cef23cfa80d25f72ef274136ea03655d4ef66ed703bb159426d4cf968a0d615db6228d9a92e9e2b102c9a48202d7978638bb68b76effa37a33b6e3492a722b07f18281abc76c10e64879e82df8a2445e47492a5b6d3f0fc1c7ce58bf38abe0ffffd99d48c987f3ebfc5ee5eabc8925ab510bdf56c5ac49d20b0476d51ee0e281168079b7389052480cd4d97ac133018bd86f03a525af887417415bacb5520403271722acb32c1cac20b09a90d3ec44c34ee71c7302235afc1f11f2d86078e436dc86e0bf577dde54452732fe5906aafe79ce749d6478f464ad12e6f7286a47c56a9c27b24854431d26ac8aaef8ea3c7b78e51be9ca5651fcf543d418b37556a795565c852921e2e2eae9f2fcd0690fdd01c224de78c41702cc9117f586000700b6b8c4314f20b911cf5113b1fbd569318bd311707349c1b9b07d33a3c9fa96a63c06d7c1e509af9253538f314fe533a3ae74dd04507bb921c7068b74972d7a662a3edf8b1a974c380727e4717b385a5ce59a3b59b60e6faac713ee1dda79d31c089d63d6f24c0a4b591fe77272cc8d6aeb44e887ea322a3d8a72d4e6e8751e5c95c17145e460069fbe47b1d80f82f11b85e032fcd8b02a3ff5e53dbf72bb2b385449d2ebb0f3879b04709ef9753d45d06e43703a5b117ef025059ffc1b43030e3336f7129b746def4645cc637589c0d1c861438701a33c13b880c30a2cdffbd338c0a67c7bef672cdef1a1fb8916519b49945dbdca0772ada2a16cda0da2c4c2d2a22835a83f36e00022b5bc1a22e72d9457351bc8180b02ea6c489d2ffc77fdf7249569816f14fb6ad25ea101b72433327a56011fbe1777d0fdca83af44c06ebb85d882e376dac53051b58b101a578bbd1d0e5a3df358c54d8f8b2c5be9cc4ad1980cbe9ca5a466c4fe9151e7224af43edb9c98db3bbbb8f5930a1a0fde0e89ac00c6e1d8d67f05a8f42211bb0f3a4dc835196e4aa85e90844bc6d75b9acd815b6e737fa0183b4f1c54d42e054e4dcbecfe62e688c3e913864fac7899ecbd6a9d5cbcac384b23c467c57a8f685b222b91e2dbe07fbe6b74502843187e76fff5177b392a24b5d4ae5f76c961b595f719eaaf626ee51fa76914e04262e32891c152be978b158a9ca22cf9313b307cd3715187b04bae7174ada5d37c745451c7b116a601046b7638b062dddcc9f071bfed6bcf6b328fff7693651bbceb71e1134534ee694c61f19d62d7b190dc11d197a8c88134c14e041377df8b94831ca1c460fe9568ccf55d72e27cf270b64c6a422eb77d1e437090aeaa1dd537dfd105e927ad6857370bcc6f07bce7c77765b36231afc96786e5b3330b28ec414c7b139493b694bb0d050c289d2ea65a6ac03787fbe0db1d7951929323367d9142492e8b7675da57212bf7f32c2899014b91e3da95cfebc6438cc2b9dda2fac0b33a6d6b94f753c36105ad85164077bea33db614ccdae123797855a1d7174d704216afa1f17e4bc6dc57c598ff8090e3e0dabfb02a28f5cd62065cddb1fed1cb0e1fd0bd45f5b0dfcba897a9b9a826728094d5bc95eff7923aa874e10593d1aff65f68d4fc08efab9f1f8f6bd59af51b20374d5e4b67f111aad5ad6780883434aa045da636c80dc324be5db04059828ad19cf43eee137a73b1ba2e011248dae89890083b5b4011354e8b9ad7cacb19903600f39defc696e0c9c172a69b887a969c3d8ea33de72eea1259df83dc928eb266094515f3701617784bc15ff232af883d7579a858541a8bbd257abb26de1b136c6aa75301acddd1ad1f861ba620d4d5cdb8a4dde0817d156f6e2a0945849d63dd108551555600193d211eea6499116d3255fb1844eb0964cd0bc641d428e51c3fdaaaa60e73c4d284db3f1b5a938c6bddfd90b0b9689d0174d88ff77a329fc8636eff2abd8e7dc4406333d2999da3b92f92c6fefb60ad3230dd100acc837b117352f0cc3d71504d1e6c7d6c170d107fcae8d94fbebf007b213cd1bb92dc96946b24e9c7fbf986d528893e522afe2619c2fe55681caa4633a23acaf4a16be13e02142887a02ca77e4be2960bd176baa49c897a4f21565f5b25801726295bc69a74471880e66f52181b9e0c46ec426fa0642e3d295b99fbec1d66c964acaf9c193cf2ef582cee56a46f81d1ec1aa4a070a9857595cad6a2b1872f423343ddc4a273c35c838690fa8973681624481e13968eaf4251dd48cf569986a6360c305dd15472f30820f96f08e9aa63e9fdcf038b620a8a65d196f15f10e732a8b2693c9a857641b66e5636ab121d1a3c2f488e9a140db71f39cefe9aff7b6a117cbb88da764d96aa35e0b7e38c0d647f49405deab41db95fcb17fcaf0ab1b7c739f994e524d7a53905302b2afb155917bd3feaba2169b8d7ab29a78710f7764190373669423c10c5197ac01efbc69dea797899412751045018c270916a8e3771b5964af8abd20077fd4da11c0cb749fbdd9964c9d9dc3b69d6c4818d3ea93141b6c0bd53d41a38b81e7b155de0c7d1f10d2ee258735d12602f36de7286c8d22c1f8af5896dde3fc444d1eeac41aa09325ccfa4694f07c0aab1de06de6ea1d5254688753e582c96b766bd9f175fcc84239d52765c67635e5c0e05d6105dcac17457a0b609320329939457e19cc1f24e0fa6e92ee3b86c7922d69aabffffc52923bb29135cc6e9307cdba6c5f31fb1c7fc88a19db6ec730074214ce92cb7245a6f6a9fdc32224e01f672a04bd5776798a4bcb388345127d53b5d6e47abf044b937e7cbd89dad9a45d76040eb7bd647226fd07105df114df421646b62d0ba19479677b08fe4b75da745156429c7b95491e755ebdbaaa997cd7cbbc69db48c2bf47454b70e04ca67365ec3282e7ff3a2bc3c56ac2f518e9538e89cfe8ebed9a2491d597a309e033c5e502c3454a067900ac29f9c465c577825ce91ee5a4ac145ac42867eac7d36a7dd4f622a60d47387547209c715af1c0b20335e2f77c992469654dd43d3e06eedd169a4e3ea1543022aae78a05891ea747dd0faeb2cca38d1026be513650c8aced8e7270609428b22e484c10d8caf16a2e1e54a9a452219f37a5c223e3e227bd49fdd25929e07f04acdbc8a22544542a1699f99dee8867b1c1ec8940126a77ee07ee141f691b0905ba0cb53839d0e4181dcfab64e147b7d0ffd3c0c6ee9588738225101e2688687596b8e2db9e6fa12d5822dfc1895d7928882bd194a6d05753bc8fd0c4966267631bb82c56859e3ab1ce726803f5ed38a2d8ffc54831504abadb429887e73a838e0bdd922fef6a351b337d4b1821d0ac198fd59f1790e771c9d2ddb46bbfd8cc39e3589538e2c90db1ef6ab2f29ccd622a859503604bf5e94106b8f47b3f6db88e68c30b501e3347a6d8b81dcc06883b1a51788d437514e45fe619665a6cc9b6352add5251ecdfb90e36253b5572b81e21ccb85d4f042fda17e34eed1244e1f1f6957d17e5a01c5d8a82a722557856dc4287e8825edc3af2308170103622c8dc1f8e6a7c729de4a18ebdfa34f73487c6af014823778a34322dcd6607ee2af309f4f8da2d161a92cc9de1d07b603ab636749237875974e0f62e20183f7c77ad15f54460340c0f9de744db07f79df85aa3511a892ed8d2b40c24d86c9469f5062c6e000178c6afd5962941de3ffd7576e42bba046af0b9fb585a9edfea28587b429e514fa62889092e07a8d389f11304ae16ef797faa1ac43f88c2fbecd6a3f8fc8090e5e34e1b8ed59a7948181d69609630c45581481db9eee543adf050169a19cc2da4e8a066c32c7f02f617d85edeb80a60fd0ed065d52dddfe9d3ec944ff0b553678b57ca25613174f14361a8305af1de72286e9576188697d96edf6f22b3720661455f12f382db32bb037975ba768471bfa522c6da09658972afbe2f37d3cea51e252ce86577b6c060c2c54c41cdfe7514dd0aa214ec69c9e0f750912cc7ff10cc57c917eabafeb18e4c217b4de98a2c3c583de093454da30ed3e8e812d3bec123a24f66b04101f29a921d1b82562ef079ea2d2849f4aa19f1d40774c63e767597dc5c1bc906ee55d57277e45dd519983a25687c1223ad50b058b642134d2c725b6e70a4098dfdb17751114d59c99e3e96031f4d67d19b877ac2b0b9e363887a03f69b5e2506145a7daf423fc71fb9319f1e5f7902fde6e0a10c94f5f6ccf5ab4ac210368da8354f14648a1471b89712923684ac9a5cec78bd0e7de0a03157335a17049d74bb0e3480902bcce373c06b7e225cdb5352329543b01b1f7a04b30df7fc84089e86ce704df2b3fa22b6cc30a27bb51eaf4ab613fee13ac02d054364822cd44b637a5de72c337f9ee4944ce601d94d0f82ac6345457062ff9a1aa8eecf1310122f307214712656d44100a16341f1fb3c2181a02c47f9819f9af778782a2d030ade3d8adc78fc0b32d7fed9df11c5111060405f2114aa31ce29e1cc0a4a919dd7b0f2deb363f4b5525b2abf9b8803bb0cfd18ae5a2c8dc1dd42178531efa392c66d93504e0c1372f3ce7e742ce4469b839ea1f64e4a4e8020b6799c3bb803b7b7257b17f2b224c980c4d03b571720ac175533396dc0b5270475fdb74db6da807ff7d0f3206eec984269ca904421dbcc101f1cbbbff22e847da3b934e51ea5b62999cd666fe56bba4c994387ced454bd043d8537e09ab79987ef378283d8e50e7bdaf640e1c9a08fbf9f1a2bd193c723753ae7ecb7bfe697f5417145766820770f498699e8569dd499a7e736bed9f10205ab71fb353bc9150039b27c610290c06d15ec4387131a8cb5ed5c45a6d2f7cd59c516027a6214d9503ee4501d5f2d94615d9d56d430d62e163fa09dffd94e59bc7ba67d89cf864bce7dd2f3d982a930fef383efb7ef1e6cf09c365281e0a9e4d204167d984afa682b6c45c4789254be1227f1c4c542db3be449b8c59dbf4d3511aed8cfb29963a55e16150ae766c70e2be6c352c419f5678c3a0ecb2cfeea641c4f9557f204af72080a3c83fdd1a9098fdae142417da8fa97911c9c8d9b3a4cdac6eb19c7ba562824018833ae0700744b391f0d4819da46309c363b3b72bda35cbd9329548550481fc00d8700207e6bbb1117a81397c05a9f4d1beeb2398dc7ea4624c0acafc5b5c85690201a97a72dce5e7e5724e602e47ed6a5925ad9613162e4b19b4a4331c415295c4b829c473712edba63689e258905ec0963db4fdb3ff398ec70a9afed6646ee2656137e2c4afc3e1064b9e2e0e9fe658613a53c4de0b004d8545567c09f0be98208773daf22548e5140ae4eeffdad1729ac6e323f4c6281caaea49d66b8890853e6267149819762de7deb11ce335cb8de2b66e18f5cb0461d8eba281ac134ffe11a0b76caf634259d1bd9cd4734acbc9c4344187aa2c5853dd2e5c0a1a428ecdef9e7b158bcd8445bf4147e95964fd28ce34715c67423a1bdc145691f913d94a6dec13b6b4463fa874d10abfb47ce2a31b64db450df6e9fdc996263dffb94b102e707d36110bccef34494dcbc4159f5909e17d66bb34513c54f01a9f9f04f6742d27b03704dd86100021315601e3668491a80b8ff4a2277ad5106c38cdbfcfd6bbec28ec3842e89970b4db3009b30f3177a2fac5adfb22cc439207f36111c59703215f7bbced8254f3b2989f152f4c3c2783041440fb3241b0b2936191cd9d22f20e0208113c458fce394ed0fad505bfc065351f02603875abed7c9983e6cc1c4410999417512ec30c7560094825a1074c063e910eb2c3ce14b562313501576de90443547e281a9cd40e2c5d766f225426d038480bd841d5826b96b059bb8729a0d480557107fd0b8060a7841686e89d870cfdceb8c764117fe4d4ef0e2103330335f0ab7dc4d97f363c74d97bfbd125a1779fec2eefbe8a6860a6019b8284420e70aad60caefbb3c458c0ef023a48d897452f18d3b98bb85eb91f7469b5dbe78a0f5181e04b54d0bc937d9124f86560e86b366d1166d50dd887fdaca1225b23cd108b509c7d56ce8686a50087ba64837f54c1efdb9c0b6d4b838eaf5dd503054be439cff63a9fa8377b7019174f4e0cb5450725cc933e4c159c868843e164b7428e3c97a1d5c5acfea901980b59ae97af2bec14d487d131f6f8b9601e12149835af9117b13c4b5d93bd1ed947e677b40444fd6a09c09bb2ec24a9509cf47c9c01ecf3b85d7bfc3c18fe39beb9863be1d38ca99c2f0319834d6b1c5f5aba3982db6f986f2f00b632f43ab395802a516efbc19002cd2780830336864f1dd003b698ddfaec533890d50f429be2c1aa2168d6ea41f4ab3417906b6d1578d062a70ffb710b68eeb7ab01452afe3f82d2f0ecaaa79cc6a3709bb3528edbf536cabfaae3597cf5cd477ff2f0b394420a92b5379fc48bb65a227b1819e85748ef17af7bccedc79522073fa389cf90c060af5fa02d703644d034c8fed8fd1777faed86921614f79e513b1bc06745b9b06cfe8a3e34127c23979ac21e4f1c3f51a91e120797d7f326dd98c8589a8d5b27fa1f81d762253cf455706617cd12faf676e4eed26653f3d62302467cb60f772a9df99532ccd69a57c024f988c5bfc9c18216036ce94f5bc8d5227a4ecc2a0cfc2c0ae03b730eb3460d7d22cf6214fb5e0d23932361bd9e904f8c85cbc210855293cc0bb4ac9ca50d4e9f68a769b23261f9a41cbe6f44f6649916ad74e1c52e37a0ca10b41d229853a938814065ae5ae8681b6bc5d06dae6f928b4270efd0b525b96258643f06627f92f3c91f29b1837dc651a0e9ca99b3bd12b682b72ff43c9245346cc6edb05a3106946a7015c651fae435c7c8d2520e2b77b624a99038d205ccad44bb2bedd10b99c611dee16f1150072862f2a23168217e2d0fb42833a3e9f9e61d9cf4ba9373c3b3593241e1bbd39bdf7013330ebf650ee49d836bcba07296cfc7aaf2b2bf71ffef58a7afeca7c1b70eccba144cc19887efc2113d60e3727025ccfc8c21b2ac0c13426271e2df8adf28ead293cac2d9c6eea917afe2152897ae65617f93bb67997153bb904b8f25f79a81cde91120f2b42b22d3aae95f6fa88b47180346b79ff6813d543f34f7260225b2c7865e48bea5bfba9d2fc8fff3a54c427836b13b16922f05eb46e99d15a52695c5265f563800607e7148bdb2edf330a910765d00492fe5f043c659847eee347c8a4c22b70d60d6a3fc74a36aabf8b35d434c9409ecf1fbc68ad1ff306df3befb6745d73a23e4c807744a9a2897ea36d3fa4fc1b18801df75d914c19d45550101728d48cbdff6a3ec7ce9468b0d3d122cdff941d235ae45f44ab93940a9c5d4e5bbea2636d9554cb20006d980277789ba7d055764e8e1e714051831eb30eb242a2aaad3da3ac8f9b6d05a4eb279b42a70cbb895174bcba04be49d721ee91b91223a5f1c55becbea79bc056fad078861d639420935cd670fe93199cfe7afba7718b584598a4ac30a2f075a5baa2796ee7928276e754d690546330d560a84f7a135d649b17e4181dbfc79ae85383fb2e352c63b3c3a97cac328b0250769c14f8f750de4c9f96714b307e60e02a4304db22640306e29ca393febc7e3ff06a59820aaeddae236d9dfb5c1bc78a48a6a5e159ded66588d6119c15337048c8cddd7d082127ee15ecc60c365b433989ca9839eab7846fd55a2a35f3f02d965e728c7598ad502d970a973cfa92260ffba89e4e2cf2ccac520b0b6b2927ede624b97278ab0dbb693fe89a4b52d77e92cd775068619365bb9f4d71ecd0a5f0f1fb9eaa0ece7dc1c4dff22362a685c86f7a04e6913517b48ae086d43f4923bd9f5473f7f5259acbafe6c625e6886e04ef8fd77f9673975442f5edc6ec53130ef720f22873f73c7c58616954189b8c6a7610310592b22b85b6747b1cb8d8cad71f9e17a30c3b6b4f6265789e9101e4cc0a5a83a234547827440651d9b235eaab4e8c05760f02081a1d0d28d70127f5cad33fe7eeccd2833e423175c40c6841e1be9c24e0f41da276d3df5b4c5589afa898e50bba141fbd0c8db9082fa5966f79075f91811b6314a957e5b9022627a7a82e56ab02726bcaf8d238b3947694aa8bc87cc8beda44a1abbcb5404aede4f13a503ce237ef981abf34bcea488e045443e7fbf6e0932e60a56392b23be92722ba2299fcb6e2ae1c4a58d2d38374d6f838c2efc96e46302064015b77343daa64e485d632806407111a71fba8da1b5d55102c44c06f2e8220749805a9a3e033627cb9034dbc48197456a8224a904b7a55057dabdf7cc6d36d31ab04bce933d1f012dc4cbf409dcf538bc36f7092f839d24a4e1aaf117a4a6bd70f450c04cad7d871d095daf9bccb98b1ef22d75fb7feca921d258c6c2d5227e4916b08b76ebab07006b5885ad886c9fd75a4d600fdcd35644807dd85983b0026a78180de56eac61f176acd446e14b3712be974c2860ece460805510488f2e5c91e7d5064e79d009c1649a6f3b4621a8074d51e827f46d532ea125fcad79713fca8db429aa784d711d2562b3c45f3bc1b8808618de25cd97ea1c2639cab974f63c444057dc466e78f11b586c6a0e7e51074181a84dd2caa6ca83c722a61e8de84d5432ad039c61af44355974dcb7cf75e46d5b19c42513086b21e2a77355106caa51bc3a31b6648b19552c2be2cb518a1ce8fc8d1925c6712589ebc4bc44ee72d85d036c294827e2d2dea21aea5410b823ecd341d2bd0d79f53a7fd48e21b6e4871fa67568c1743a82103376a6f734de548bfdb7c494f81a68da10d54314d503fd894dc1d8d8d7889049a7b5a84de9396bc15e6422209e3e1adf022a94da9ba80017e422ed5fa04e4337ad1d597d1938db2300e6119b5bb78e84efe38a380ff626476fefab3d5714ac2f42ba7dbdf541a73be4918a391b69397b7b59a0d201dc4a92d7e4485f20ff3e86577bdff0c74567b7056fc965c04b43f356bf72fe2bcec1efa387648d254fe6ec7842dce5f8d6d030033110a9173192118035d934329c34a84a566fe2ef5230bb08ff0102af8a478a1df668e1143babed0e8d1b5b471a6f52062f15f67b3151eed7740d498489703fd04464dd82377c09682e47e8e202691798e9abd73c4d8415ec122ebe50d8967ef876d5fc48a1f2c07ef5e47b44c14f57c1b9dea9655394feff51c70ce0a0e4af6477af5276c751208c7cfba07f93bf89f9924ffc64c2aff773ae25de54d4dc54b90114d66542d01dddd1c0e6c0da99ea5c84b799bcc89247e77a26399187094dbfd6c11a7cebdddd0e2aeb8e3549cf28104cbc7591c63d196889c1a9a60cb7fa6ebaaa7a4769486eadcd053714623b5adbc7f721d101cbd74a0fbc3c5c29c6b294a49a55abf71ca9c2a690ffe1ecb6e791318801700e9596de466eea5e7790ca55fab034e7769b1f037593768b894f4418f96ee77d4458a33c4f78799d8db498f8f05aa70efd714cfea3a7b68e8af94380d599586768a0bacb3e4daff6fba84153636617381acecb345d27a1eeff9c74b7917aab406ba34db8933f74e2f8f32ab6c0c49752fecd33e69d49f67b6567d315bdaa5699bfd767c5dbf092c20f95813b5b317a7e091fb701eb765e78dc278258539e36401cef0c63d00fc44cf97d66bc9ea17d418f9cf3dcbe1b0f0ed0718dd331f37eeebf483397f82ba95c13dde8d52d0d80808805d7ebf4c4b76a9f3e1dfa55b26cd42b701ca5b1e20e067b6f1df0b6e50e829ba7b18331e7a86f044219144c66149dfd4fd8809273c2915fbb8c7c2dcf739a10201cbc9c76fff1c8bbfbe4714f8ed5272829a348031fbd8c9ae0afdb6030e44a7faef551484e9080a6e0797058918487a090f650ea59fa7b9e372fd270274f4139036f1e5cef37b84db3c6a276e3ea059ef3b172820f70a91b11c64eecadf55d051ce1676640c97fe403695e95104e2ddee05bbdbc0d282ffec44eefcd0b67d0e9f731f9c8c5020d9154bc81a3816a6ea052336593face08adb41a8354f9f57e50ef32c74fb394903d48dea4689b6cfb5c910ed9e6cd3387497cbaf2dd1aee55b9d6fe8bd4f33438bd283913bef3c083a68bae00bc2e2710641e6e01db487021e66767a76b628b5172efcdf40ecc7d8c3b5794cc0f10268cd1c2d830aeba6916033ec5a23c2e551e4b492d58548f6b22a600374682542044e15e3a62ae0e4ff5cb844ec2d103efd85101ad28770b7bf483ff4c6187bc446a5f0707a9e096d7934d709ccbe0150d41e272519be49fd7b2e536f1ca483c35a7a6522981764113d5e538ea7d1277c83da6f55c33c37c5eef4ab6f345c7f1e559b01301ddd091af30b9e228e9f2efe4d00477ec240cee8fbd9449ade4848b1d49c96086d448f7453951be82b6a8f02c0339ca0da70cdcb9f4c1860b3463cdc4709524ee9435ff8756bb9e659e13e098f2d75125f7234efff2169d5345a6e2a0d0424c5d3b87a648822510ab1289b872f4ba9ff54055e757838ce6e5b6f20d06b9b3d1680800ca771b0bf170d689432cb38759b10031f3a57f9af87a95d81baba4b3c9d6ca88578a2972bb66a99ff8bb8e8b8385d911d9da95218e901baf1c53fff1d83d954b8ba135e1d63241cad94147b2c0dd864138ce05231bde81bb13ac75012600109bdbe9740a3758170891f93e90ce74ad2d538428c221c124b381d67c81b61c015bacc7388227fe47a6dba0c53b22f7b501667ab62f6a3c574873c8fae9173e2f8e1c37fd58c57062f8777dff135002af86a33a6e3be2d3e103a1eb71673637efd29cb47844f6691e73ac12158d2320717da169d791453c8051a1aa31133ad606b109e544d891f1d4bb38020f7c5c469895b09f7fdced728b9e3a073cf3ac322e2c6e4c66c6dee207471308b89fb740011500cfce384c3d16ebf349bde321bf7d063f2f48587ae5b9123351c9a4a083580a0be6941a808b539008fc5a1639e791a38ec15a828f5788a4630f58e16c358e593fc3b1ef50977916264e83016b90598f5d8563466a5512e8576738a10a0fad255821af27d0e98c7540d6d750e3a99610df6d1cafcc8962d3af8e58c4dfeb9e7b1532599c2100a0b5dbc11e0cda8bd40c3a0dc86a3d278ca3c3203905296b83ff05d31373cdc05b99702aed2f8092ee16b21fd3d192e523ef734fcae717d263b8b1eee0725f800e14d464c076b04904d49b19e3bb8ddb0aa81b3dffcc71d4db9508e04410acf2238c15246651a927905ef7e53994781c23c655c72ecae5d6d9b728516c68fcca35b160783c5130a0942f0d6436bc0ebbba973354a08762ed3f58a626e49543eff6365deb3d02115f20be24496f37d58614ed83333f2b818ccad3f8879a2c863e510cb38e7c9bf5ac6b48eb48e19cf06b00b1bb9d01b77f3aab8563e09ae9604395615ecfb0023e2efd356b8154a408dec22a25ecb087bdabf9ead07983b143f037527969584ae34162f011dd84361718e8e33fbd87567c90e62eeb340e243d205287fb7ee23fad77aa3ae8af46461cc40c411aa9ed4b36e117e351b307e6aaf46b1b9894cc6998160a18793f3fe6878f4e0a7953203c2325f8f2a779bb06122a3ec1b41a9316c82d54f2addad073c3858c431bd807def7a1be0572265da5addd41d03511f129c65808190f1b582d3ba3755d57db4d3c7b1a00877db0a0c78dc0602ed62d0daebe6bcd3854caf64aabf295b2266fee275dda4acd470e955a8547d1ffaf60eb5dd69f83a556837af6e5df39a40e40bb142cdd2ebc3607547f03809f85569df106b165a17f804f029498820a8d1e580915090b3fb7a098da7841a9bb3ce9168ec760fe560506c197d5e439641407a1d673c03084bfb483bed033159e84681765df29a5f35a352228640a82e065fc1b3196062b980f33a1d0f2379bd3431b95fda42469ceca06488c9146dfe3f9d8ee57d86ba09e1d5f623191a6990adff8a009de8136920918de110075f065eb8d474fdf75892ebb85d0c99b64b7a901a2aff77ddec4abf91b0dd7147c75d476d0f888f3db1d975b09bb306ea01fec737475396b0932ae1f4ec2f69edeae29533d5b193b70ec2a27dd50804e6626a284f6172913f540d1e22350881fdffe5822d089554c9268afbb438df34c508547255f48af48bb7a4345911cceb7a3e2e4987722cbd5a0548f85f18d30091209cc3e2d5c625ad9b4dcc79cd7e1960d442ba3197408d9df9cba6598a9e850e4b9d3a4f926643f7ab313533c10a1e867f6563524dcc43b498195a2bd8126dd533212623daf19f7c47297a5f00881d4baf0cba053590c8305e451c0e2d2b098bc632cb9a674c4243898b235cf687809fb8fbe53a563ea4ab5db0dfe2019d8bf9c54c57d63a02409c87999651d04c03afb8aa34975d3a4510759f5de9f358dcac49796e13ebb535fa1b9be8fccd8479df104d654f446b375d6d28d86a2538c105bbab8b233f39d8a0a91a50b743281548c136349ef6a0a588e63ca4b775d6e2e5a81805380b1dd276cf1afc7fb67010fdd52c4f6dedc86ec14cc54b807e5dfda0654a372f10a979fd52efb26f1b84da311cbf8986003994b500156defa9e6d9f2f500513ae6abac61832d8b0eaf8c21fcf49ab873286f05c9aa1d3cd1b920e20167c6fb95f713ffdf414b44e70c58c8a24519ec6351749ba136941b48754429d0e2715a401bddb03834d0840c98b153d894cf7eec0430c1f268c75e6eefbb34117337ba609726dd0de84ead58923f7939f658673100bf6ea85c59ac7aee5d9bab662bdb594342538b8ee021b4ae9e67b8a1560e7f694f944c50df4dd3446b8b15b4e245cb747680aae9e3ba7da7a2154ff52583acbf3a4b625d38670818bbfee7946756a83557083557165b9d46f1ea9ae355a02e93ddd72686f48c381cce3d6e22803d16214fe76697264419e1ae43f4e92e06f994cde36acdc4fbf614cce843c9aea433e34f62e4ebc3ca45ef0b657cc3b0d67bf9440a9ab73e6409be9d8a9662a638b668b15883af2308cf06965483aef0d0ea704d54c5cd858bb80cea27aa218a60344e9e88854b8d62ff3179f42a7fed8e5484f46b40c14e57d10b62581816bffb56139d542951af5f0c9b1daefb573928b95239c2e914ad09d6f588e3642b74e4a982c53020cf31ddf95997a32f523e8ad9ddf073bf874c4d19b26645b2e87b5a229b32d758bc113ed285f9eb823d433685ae5dcbc3215901bf9ccc0f381034a173d2ebe2c435373428fe0f5c5732ea05a873322ac95cdac5a369a8a44c9d2dcaa22fb6bfc3a50f744400387a3488316c430cd1a1d277674fb904cb560cbea31c6e58c4f5c977122a79098cafbef40acd7e68e96df8f7983b58b221c7e0e81b7f4192ab66e2d691c550809a82d937c6e2d752ca4396aec3039ae325e1f963281178e52a9c175298b850aededcab708c795e66e793b9ac8e46aeee03f73441329a2b5a957d31d3aa575f9a34343aee85b918b58fe8e094acc01e1932d8f3a3a510b0bc208578e1121c1e6c17565c10a8e5500c0eecb30c2c0bc15ac88196892560c141aca3a4384a8ed0957936652891466c4ac0d9200c648e8d9d85f46dbc64200705b4911a40864e6271ea09ccfc01b4bc78086e664e3d242418799b2bc8396eeba07972d37873aa0ec45d339379c92403599db2136d5831323531b38438fa44a8bf3922974a0802b0cc8cca7f7bd2a620939ef7c265f50470c9d3fa6a9317687f2cdf52096099e496e8073cdef48d80f7fedcd4e31d6f5ac0d360adf60612f6ff4c53622cbab3062ef0382cb418c1ea4d8bff3c5f224df0f2a1a3e243fe70561ee0acd3c407d373eeed16708edd5de914ce595efdb77465faeb0662b2fdd5126eb23b5cfffbcef1d4d492e7a001d5b03bac04bca99041eec4d085dbbd3b95d6f1f0935d46c1bef6df855143fc82d5043966a82d1415317ad38783dc0841f2aeba4fccd41c7ac5d26826854b176a0d5c97647cc5668d38130da51d1f518276871638b37e4a4b7a86f7ca471f272225eda1bfb3428033dbaecd7013cf6e21fed7b5d5e64994f542d3ef1a216578b86256c3eab53a05c5044c1de0ff3f23aea4aa0fc77b40218fd74be3275557411c98ff8bf93425a74d2115ff21590966ad3d9d76f5b6a6b5db15917fc90ae7a80f5173386b61f7157b8f2ff856bf720701b91de99d42a350acfbbd56e2f6fa4efdb0787753852db9d5ee6130645b62009c31f6fdf8616e50fe14f7e127deeabc3b806c704926c566ff1e4a2f91839a58712b1bb1d1f907c4fe2f3e5a50ea5d368fcdc1121561da4baa35dc7d9110cf6fa6ff0d8d349e81cc08945cf431f03dbd294819f22d9f12ff02128a27c37b5459dda302a18f02ddccd425522c4792955b165347e7615b9fac0cac7e330f34e070ed3ed889bf3eaa6bafa5e6b4f50fdb42e495733e02c3985449ab2d3f4a3dc486f2ac892572bbf338dfb09b5cacb60bf001a760937595868923680faa24b5f538550a6f89baee80500bab66c9e10fff8b18af6f6a597883b39381783309fb4935ba41402092309a38f5b514572ec82cae23e50fbcc93727204e3b5a2234c7147bc6f38de0fe72bdb59a4388f3cb83b521464a4c423a4b408e948f6f3373bf2f8097d2a323330caf8f67c1e77a7b924434955fda33b908057c78b8fd251b890c1291aa19b469f059017e3059657c944b574036b63da2d7916de5ecee348ed577d89868a8b4cf725e3047efb111c383724b9667021b9b9041df7420b886c0f4e983659aa426e69dc260adc1c526f184c618e907058883aebe1ca3e19b86f7004d5fb9a463e0c183d7a7e4dd758ceaae4aaccbf3e03b9020688871664913d7944952c648d2aa262729037f54f4950a9067c1e8cb02f3173945b5db9e1d6c546976f43ba5e7b486ab82a9ffab1493491c6a6fa2e81f6bdca31e69c1388e7f149abcd107408a86e43417337c57276f408d7dc2af04a5ea9d4074a2e4992b380655de0658fdd021451ac28957f4af4e90f80471ed0196603171fae09d5383558ef1e0dcce3c8d66525edd6fccf59cc380f444e22f7d05cadd4b256437eecccf2d64505c78f11e0a0a1e395872b9c7cbfdc8719eb833e2f6282fa91cd733ce49f3fbcf934a91bf73d9cf92ef6749184696d00db0bb0e14f641fd69be1a89d0e1bc7ccb8ba214c3477fd2d641b626746519d00c227bd210e015ad272a9873d5329ac721be801e13a5632187d7a3e168f00735d9967254e2596d5c36f07ad49dfad78e16fa67728d9df911215b8ea1a7bc58e2d5f2c69d329408522577eeb63f2c1d264fd7b2cf7ebaea4cb3d83d09045380ef1c5c831318e5b499cc6777ea9297741dc67ee03e3d4c7d080bb65437850b1a907c09f930430cf6365f9d0b30a6803801db6b9c9c17e5eed72be2fee2dadcd10b6fdd02730abc6890635fda9446c37f8b4ac2c40a000914ecfe67b28804c910b1eb4b7dabb5dcc9eb3fc2560ca7a653fe478fef9d08958fce48a6aec87bd4ff43a261e7ed562bdd63e28d98b027190d6d6390aa655c0cefd5b0dfd8192952fe5bda19d1275d289f97ce5c4d79bb9fbb77f273ef5bd62e3a7fc5c10a1011cff5ef8608259fd46c25833dac33df98a3584cb0f7713b5983e81cbf5d13ba3a604b3552f91b946aa4fede18724452f68bad286bce67b81447528d602084712f9a17772fde0952b23d12cf423e188d83ae9b3b101ec6bfcec4fdda304c5ecf025fcf74ca896684e18507f99ec21329833376009e8a1f3891e6f2d3da70b5a82dfcd15439da9abcd6ab06e45ffaccc855de2ca09dd4aa2425650f6aa3a2966565a43ee3690f3fe66068c755ae03b1a6184d4974c05da15ff85518e001901426bf203a8e311f00c9ca1568f419379f9843727aed64242d077451eb7d542ab4d3616f0e1b1c48a7b4d62c5dc5bf0374c655bbce9680225a7dddb80eb3fa617e966852fc5f34c980750dd0daad2ff46728b58c34834f2411b0be980d51b20a43bde9b9529955fe7b6442efa2351522f5b22547d56fc9d980c0b274f352ea2fd79600644514e37a3b617236b956f22967f1b45499f4b3716252a02799721bc1bf225284670a00adfb0050450361a64dffecc00da12f426f5bdab2d7173ddad1687919c31c8a32ef3db270f0ca1318e72d1c56d757459d89be56d894a5136d946e5b877f0cf6103cee72fd7786af1414b11ab7d4252b2a754763cd87e24502bcb581a10025480f122c6b6ce014ca51a2e0c665645c11330f5243118c5da1d00a15523fbe836493870f692641fcb38b52e42b20b9996953424d8ac372065fd7517278aaaa299121dcff3b751c163be3165d3e89fc58a090819965ba86b11c2640444130553c5b42e26fc40f00f5261018cf7be4efa6fb777fc0598320ce7984e815dc0eaf77408260bac984a08c335a0df93f32399b352de4721218129f62f72817509b0ced193afe523321fbdce3d05c5252da468b0ded16ea24a0cdb4eeb1a302caec80471c4a1165a3cff471dece96d9fd1a435ebeb05c61a4a0d2d617ed76f5950b215db92fc084935ca6a9cc3f137f9f5167d8fcaa55c403d3b0fb59c07bce89c2c048cd0dfe5502b7936d41f00b98354243d2e20ca1fb1638fabe70c857b6f33437b673f2e09b96924f34a798ed3b838c92b6e0da967ca805d4061a14528ac4a69116d6b170a21e0e47c81a03a3ec992280a7e340822e3299a3b66486636b7eb92f62638dfd1c9f8752efa521d4c3a9b7c74ac9bcd1bcf85aabb62defaa28d1c8731cc7548d41a75ebbad3ae3d816ddfbd3a8c02b0581d76571a996fa14df164d81c93d0fd31e62344cd22e6540fb9ba492826a3fab8c6e6df3f074d3b31d58d031001586470473d80585124790000efa9a41d3265fabfaf917df8ada5a25266b8b1f297082fe13dac21b008951dc2a69fa008ca3284d16e6e201b341594be35ef88f763671a0f156a9e712e58cc52a4755e5b5de7e177654082bdeb3f3d63bc1ddc1c9a9c30ecdce4b667f835bfe114bdbbdce9587dde615f49446ede895fc30efecdb4a22363a7d90609c596bcf36c65e2078483a0999c13ba12ee1986970230a2a7c80f56dddc4ee7776fe19cf473ff23e209ad76e757453fdb806444a1abb1e3bbaf0bb5dd33c857a08caa1cf19e9c5ae053b31e2925090f16138d2fa5722a974d8cfe1fbf00839de6c97a4601c34089bd90993c58c988d76c3b35405a909caf9fb935eb35b57fb7b7be7f3413d349dc9c7169ba0712a44f5492a196ef0705f52c1a13b704222c06b26ba2c4c7c9bbfdae6104f1643cc60eb3e14a249334fc4bbb71676673abca591df04c67c525b20484ac490d0375559dab0d7cc10e0804e191bc892caad40a6ebf8ab7d9523e7b7a058d0cfc5d441970ae92904df4de81500545dd5b0817be6e0265e2ec1a146ebb78534d4212776381b3b849ad6ce1009b9d3fdfb87e19f51e5e9449e7f03e22d6f7ff787f7497e5d76b97a0fd816c3c2a63bd10fdd1ef5209af3acabe3ea3cfc4c95953ee033f00b1ae0458ccafdf78b2438730410a4c64fee1a72eae39ccada8183a262f1a1874fd101ec116781cacb897abc3dea8601562a18cb78877b5a562fc4c619be17983619e4a87759bc5af51943a4d201a1b9c2a93049a001ac30d4f86cb6c51c5553a1fb91b04a3348315ebcda2e239582d425d61e7cc38c7d2a343ee274fd67b086b5cec232c59ea663704e5381e966302d233edc75d5f8fc3c827f3acb57f9800ad3a3b2e035ce4852e34840263b7c3b9ef5d647ba94a6284b175e2c4688e485b84f44147c7743494645287fb4dfc57b50c55f9d8dc613452536e8d97f9292510293de0decd6c9acd03502a82405ca311fd14bd34c3766aee13b6b33025b562609859300c105cef133b9774cafe0b1a9111c915207149b172a5fac2c86378410edc166ec2f768d02232da50bae8f65663160a1eb23259c078ea35e03e00e4f81de77bad8094dc55d5d46694a4906e45c729d86f67df06501b5570802cf00ff3db8f7ad75991e2027fef3ba21fd84e739a423642207e761eaaa5846f10a615d007ab1621bdd40585845bb3df420e33532dfeab974690343f0075617d09a170e68e5d427da8ae30860cd9f2f2504ab5265ac5050bea7f61aa69612df4b5eef1d133bdf20e8a2c6ff60c6ed49583251c5515e9fbd3f025c008533d0c52987f84db01681622a5d8ec6fc174ad262c757c9e48f0040c15d91abaaba2cf4b65dd06ec80128232bf22756dcbb745576d3e78a997e02ef19929681d7dbfde15de5bddfd8e91101c50516dc3fa89ea8b64e85b8b5d9de322d969a7f71105a58278e23776a85defbefd78d1b0eb9bb09680c709ec3b702485b74a48dd28afd84d72168e148c5f91f3b617c61eab5f201fbcb81991620019dd3daa550acaeda26536e20e3ee2992fc2b207d5ccbd06511fbcf19e63e61d591c9eb35276418c60ac6275db709cac40673eb7ea3c4d2d342f0c27d8aec6029ddc00f606e55f86631384fe412c61ef97024046ac34564483c17a3f63a4e96176dece5dbbc6938044c673d0910eb7c6d7204f3e59c4a5b027cd5f646968577b514e2ad4f1da0bcb88b1c0fbbb630697d28c45a64e9b807aa977a7e082ba114293e092ec717985deccef42c8acd170a70488cdcf077bc663c196d4c7d1cd5e35adc66fa514e6a4e20a0fedd81cd3d2cc7f0bfa76020ef6528c7da2b3adfac6de0e25094b528c2f1307a873a3449257fe9bb1463da009c2aa65e3b23c1dfc0edb07c57d1ca97fb4e6625b73b26fb6bfcbbe9b9cddbf13286fd8e58babae5318bf68725b154218f8c1a26a97b4b9b45afb70d943bb75a55648b0fb6831fab130427fbca458517e551516ce746d50bbb4e6800e85d8dd050ea43df5f06698314b7ef45028041f711fba438c0760bef443345f53aac4fb89a31707bfa38d88c8e6805207eac098f6abc14c86dcce0289d018da8ad4a47add1cf90742dc48ee9053f31b9dc2a23aa4c0ebf09d0b8b2abfd5b111f1411ca0a5d50ab078bf813f090aa93b0575a0c784fbcb77faafa95428ddb9e02a904a5e3810a899e4d75a66fc43ee30e6003e1fc987fa1ab91dcad63a5e9b9779e6f6b1d0cefeda79531e80386cfbb42027c27e6103387045ecd5ae7c64677973b2dc4ac57d715ed780894f8a4af4be3d7691bc4af4c32ff3dfde2b6ddc61144a8ed9a4794b6cf30ee4e49c83b605ba6bb7106ca95d55fab945b7595642d816f912e64b64f8763879b0e6207506e0a4b652be2698bf9ab16e5a8731b5798f7487ad09a5a5b55dc56267d38049a8e99fa052e300761cc011984f9d24c214f381cf731a606dcddf8a1286b9f845ea3f17a0ef9eb77a2f96953ac4e1073248da8ce6e62e605a92bce28ef3a19fe7f67a8b1486fa1277d5440409782c27e9ae63593491aca13dd7705eff380ca1448b3a2b6dcd25f6a0fa24576107ecbc99a8f21182d970f4e2357a3549d636447ab871e8c286138111bc84797a9a949be106ef725bfe09ae1e2e84b5af43c0849ceb3b829b0d5c66d6696fe81b9955289927e356e449669282983e18629bdd64f8e0e6b0aaf76951e218823ce5a28ac486c16e1f43f51b43d60dde2137976253f29d67221b33b961a6f4b72bb323b8b0ef7775a8edd14f240220ded036f4bea5a2f0c4be5d5d211a17a355fa84c09790199995f53ad90f7efe350c2b9559d8a9e98ae6d3131bfdef266bbf1240b987f054607918ed6042bb4c2c6c5b0b402157dc5b5f97899ecef54c3cc587a8b711c4fbd9255284a738705f520b28399c6b8d953e706ca224621ab146defff0aaa365f7c1d027afdfe3ae67d45ef4a571080152dbaaa9686fe1daad92751ecb3fae17b9abd35940fb948a538034afc85e2a52130a6be89735382d8881b29b5598231047103a6f4b72f17420a9889311bd005ce7546d0396a05bdce9d363cd270aeb39909286663b68e3821081d39a5743bc3273ee5670120b23ed695cb0a37c0c1db5dbd73faafe30ebf1d71773c39c79f955b71288a0694195373e5f80c4e3472527e0df29ec3659d721a51a39b53faabb482332d50485db8b4d33535c138a2402f681b7537b92e7cfaeff88e85255e583ea19ff525d0ba4f36dc402b5ad923fae2000038c1c38f9becdf0bfd5b1565bf8e178ccb6fa0370c8d342d3569248ad766235cf8de1439b303741ee9f5b1f41451c182bac28ad749702f35fb1acb7628cc7094079d4cce39dbd35898502f8714d53d24b65ed2b7cb3ec88ea4dc33f4e9855aa2d2e676376f7d4153c817f0343758d21a120cce4361075f6d69bc40cfe2b019ee8738d5ea67b4f094cef4ea22fe34bc692bd633ae06d48b95749547f4cb5778c4998153f442dfee95b4807f31c67bdf693bdbf9086736cb6597ea6650dd040c8dbcaa277909d2facdd6b84b25f3d529d21d58790a6acfb777f9fbe1cc30fef41cef1eea2ebcb3169a5bf45f09ab778e591221ba46a89ea13f9854559b0d54bde88db8f741350dd33d0f399f5cda85447b832449895b0363a36fe341078246315ca6edbaaa99fd2ae8949a704e33c0bd79801be18899113d76e53bc6c4f7249538a8cd27dc9023493254dec20b05594527a09c320cf86e556bb673b0482676a5600e3f86d811dee7f841384c291ea3accec6bd27357f60ab8f1f0ddeaf2a8d5d529cf593ac8443f48f486ea3ee5802ea95e12cc509d7c31451546bd92415306a831295560aab9d034c7e38513620251a1a9f14d3dcac06dad4f13f18dc1cb3d40d17ccc63f597cdab3009a6554454cab9772e58392b5c8b58230d21d6a0be643a4d8afdeca8161d433391408f0ad3f67ead64fdff482aee402e2c10cb60795aede7c32852dfb9884caf75d8cb4a3135abe96c43978272adbaf9c084f50c1afb0276f7c228addecc52768e69aef7d81275a0c49288e72eca20064b02a3d2a5b068f5f5dae2495dd9b44353288445b102de65cb31a77ed8e6758a82c3d3dc6892e12357c90b690a60752d35147fabbf0ae77d7d19853a37ff3ca84946d5d013724b37265448b0886f86eccab3ba3d107f01362b3d142c7a34aafab90a7bfb609b66fcc8690449282b670e6c15269e7637db6f33e55d088b0c0230328481e10b47fe136d1c25422d8c5abef94eb3d99772ab131a5e70fecde4f5f72db6e56c0003e3e874a3232ad965645b0f1d1807438518ea38c348f95f88cdb80b9c0a221250e52a1675f837795a0c3108e43cd3193cb52a8bc2b075928628871757179d193c9b82b8cdb476e6058a39e78fcd4d73ee7e064c1ed3c9697fb9fefe3a3640c350fd8a9f17775a8cb21f419b1936c3d22a9c5240aa10e89ec31c77a4356344eb293e0eb02070f04d39eeb0e3bbb6a61b41707f9cf2f2d1ac45001c013113d08461f0655940e3737270f4be86f8bd3bc1196d1ead3e43d524d2830f135de09e04f3d3ffa94979d964272a8943434f421b1cd9bf1e063c62edec65d19debb217370ee54d0f57a47431b22071ce2c43ffa0e52ed113cb2c68c8d38aef758d2de986943f4c744f4e382ee7e84cd0893818b6469c4f9fe68489d1b737e229bac175f5a0ac271742da08322cf8795817f4c24531a231327faf3ce50a28152f4d8ada7e55ca0b3531f1df675efc99206cbe4589d649d296c76502f1fef4c2704e2fec9a2a08cdea78cddbb1fa6b9c38d387ecba0abea03af4e23e01ea317fa775ec3a9e2e85c27cdd425faf51cb3190fb72c8ae1e9a3b4e2500dda79ad90a9d2c03d747b8b3d29376dba317eda6cf58ad23c20faf5e41da24392eea4c2618b40df96cce2435501f30a18d3cb228ffd7ea009954323bd54cbb27c479331a48c556425571ea6382efc2a055aeba13502d4cb7b6891635c216ab4338d70094b6586a2732d4a34602cfb0a51d7022d04cd40d89d94157b7fff6882a371ba5b9cfc934569d8d7386f10973281c77e1d0c9cfdf43c6b3a79cb79b514a825e6b85b6da787daab2b3a439efb8ea409ba6bde288e4d49f95c9c4cbf103018891359ea5983b85d66614ebe1eb43f1f32865ac5d3b76c377fd441f2eb3435c7999f09ecc02209a7121c1db4ba87711a5968fa04f45053bb7f765ca604a97bc8a3475178aa03f606fdd32fc38c4947e6e4e0112324308a049a45ca62467feecf378dd868b31f449dca03ceca2b52b66ff67fdeff83de26aa8efda5bc16789b24f81c0e67d5ba95e9ee762767c2129e4bd2c94eee3144c67c6a69885ff1b58850e5ef749e66e3b91984fb96c01c2549f507950acb80feb96d5978d6dfdb3e0c2ab8d76959204bdfaff32a84b67c66e5520c891f871096c927a0f2a10a88980b3a81307c822b1747c52c05c4b410ed78db85d02a020bdb2f36e914180eb5ae2c0770369b777403be61035f6e2f002190f5e674a96e0658959f82a4c5e704d17fe0b7a0abb86dd4a8cc044fec1512ba1da37c58d8306f8575a6c291e6968efb0e8c6570885564668116e524092787720d3f87e4bfa993cc66e69f19c7150e9a91d28972e37724e1174da60dbfafb841b2eda96dba2671bd282d6cf066c395c3fc8ecebcbfd154b9bf8324cbb334a97f29bf873cd65aa1bd3c3a649cc1bd9e33ceb3fe35b83d3cbc5c2e730535083c3da20cbb3932bb93c108387f9b8225ddcc5df97e04afa134e10ad88ce6d232f2e3f753ef9c5b52457924055631ceae26b6e9f225c2929898a061f3b1b66bce38735a4531d9ae74a5907f15732648ff1224d22a9173db96b4b05d2cfcb0863f4eff4fa631c34429bf4828d9da45b810489558849dcc91ffdd870bb912e5fca1e250c7f7ad7961be8f4bec28e338cfa7bed3140e03e8d0a97de4c8c9d4ea9ab6a6816a3eb68be965bc62a81b97ae97a37ea1514fc11cf16d0ac3afb189e15e876290ed2b9ae17d85a53023a6bd5448f4870a3c61c4f903f479901bc83feb0851471fb55d6981fd4e15b5fb0016f9b60e9639afd185674dc9493561f2b27bd4c248bee0f1518399b3b47976d89d748ec35879fc137fa53ffbb8174313291047a2cdc9a9e2da9975be6b37a636d46289aa45ef8a20a72776edb3da711af0df8ef7e2c1a1da2df55affd6065cf84fe6a835109ef887b1372bbb86965d22d1c1f97e153fd8c695d108a5a3993aab13332e8f38a391127e102106244cbf26bccac727a0bab5e6402c547a0e8cd350a920288d68f462feb75ce5465456e13247e459d2d964cc231013cbd2e89df8ef1368c30c1a9e50d6bbbf45bf94ccf4b66f3d0a3597c9e7db76e665c5e7c90f70e00698703f6bb5874de993def2c6bef26c830a779541bbf7e761567bbdb3b5e1bc9290c7daa76c2e2874793835ff10b8e4cf7da17a6dd46e481b5801d455639cd57be829656bdb95f309e27e4fb42597f1ae9cb28c409082440be1abd65fba9943c46065287aad5d17a7d3bc9662521029d0457bb4940ce92809c15e5b7f4cb857a924ddc8f6a9c4f8d6257209889a70262831142b497d3a3bcd84226ce4cd52ae6d6f54ffeec2fc656f7ff57685011d633d477449fe51bb648cec5d2c311b978ac45df664d6798a1789b470232bba113b294fbc87ee224e4b2955fc270bc3d080b9e1fd77cbebbdae29fc24904525c6058a5a2c6c4f6f5d5680d886f63e4536e4e98db8935701ee1c013cefce4de4c40c10b6caf0c83f06e86816e79bdbed7e32e0b4ea24fd899cec43f1e7bbfe2277377b0fe8fb81db03b1d2720342ca082178c0736c379e55913f79ac523180d2004b93ad8ac227eb73cf509d777c3f37fb110b60cd4581e39f22c122f9ab2576a460cf48cf46229c3b294072ee8455556b14cb2807d65a8509d5172bdc18126aebd763a5ffa63dbcdb52b7dca3d7f974cbcd0cc899e8e3d7f4365fbad818058d37c8d3f3514dc29b7a7e0085f9d392d4b388df5fd63d274e53ef02dcb8bcd5b7b5f15d4ede208da0768a8ba93ac6b731cbefc25673c4f95850ce3de65fa59d0f973b966444f4083935add7d4a028df621fd122df1b7091b568ee0ee474983e41fc249089f6562601af25e8751fa4348a9b5409642342db3424e31ae3006cd7f9031001934895e3c49549efc0a4e406b8292fba21476e2ac4b6b77d17ea63c907d7d9f639d5eac9340408e8edcb83fb8ac06775094f6d5c60b444d7fab5bc3cddb0a8d0b9fa993c9983834c8fcc845b8544e1883c38e1a061418f56c530918d64db49b2c389555557cfc2368d11db1e392727a3e0ff6245a34227ba83103d87473c251bfb74b2f6a0a436fd931056cef5473e811b7c53af90e76c7b425abc3aaf5f16eea2c1175b940476c4c261ea253e09ae270d1757c6cc415251d1b960281d9867d561b27c1570886b515ac19f109b8676a110a5b06bf62579311921cd06be7250c05f33dc86655450c9ce1ae44af0297d15c8372be08caa2b96c8be346f25edac85a2ca5e8d7efacaaea8bcee88e199c8f94fff9a8a31fa51672ddf944b3e7396047a843192496b857adacc43422a92ccb50668f13abf506217eb6308c832e8d0bcd59977b39dce38158e5243ba3eb8e9ea972aceaed8965b43847e51593aed88bd5c3cdcf7280d72ef4202acdcb42d8244ff8bf07f9c8a9083549bf120e65dbca429521007cec762f24b4fdf69e09983d89702a072a8b0f83fb66f6ce467ae3c4163a8e30014d9248cdfae2c3c884622b6ac4c669799700e4ece5099ac7f8c8845205caa9624184562166f72ae2a8e91c49d26c6922d074dfdc57fb3359432618fc9cb7eaf41182ad9a075e51af580a96aa7def8c527498cccfb2baf3d51ab62119f2f76bcabbd4b9685056fd61f613918030321de2b209223eb9e80cbaa18987a7206f606d981920bef01a489052064e9fbf03f9a67fd61caa04fb114db313cee70d19bf2308ddb15e9bbdcfdd74d2568eae5cb50c2e340275ed8deb3e8b3ddd289d541c1e5db9ea52d9a26963dffc244ecba45a0015d770b484d9aeabb8419e644ae4c510e65c6fd9a6622266cec5ddd02aac9ec2030f2572d3c753e165b01b1999ba4dc64679a60a0891cecc1361d80a30c7fd14302adf0d20847bbbe044af2aa9df810b3d0e3a5d20f48b8f2c250662a486be133cb504967a0b33ae72fc7fe3f66582debf6a06b22bb5ba7b7019e0a7f862ebe9e89c47320ddecc4c78f4f08c84807e5183ea9c9e2392efbac82b13716cb9f4c0b2a2ef4210237a00901c860f4d14ee8cf7191edc0236ed387f8e9c68d38a713a824811169bdd418a460cdd491c2c7ab771280cd6d620c324bc9bd2c20abbc1b953eb40204a1c283a6f17ed8d089fbc62066fff08cd3812cd9a46b6c9890cff03e91a697e1ef932a178adac8794374c7cce204460085e870e5b44b61231dd76391e3886f468d2e86ce3f27ff9bc93ae76b25cca07b04a5b689337ef76cfd4f4c793003fee8d09fdf1fd777017c4880111d3d5524787bcc656ec378b4637116ed283550938346f62c3f9cf2b0296a9115d858b5c0ea2bc0fc055c45fa4c00d25024217071b7fa4fb3790692b205175d1bad0dcaa67a0c00b27660b8c7234ccf3dfe87e9e843755969c157f50c66740897207b987b05b71055ef170ae72c22c5c1cb49d043325322c78de184d62a9e12acbd44184e42336d991d07c975e53e769670d9b9b04b07b4bd818f53246afc5ee88a73918445c9b79c1dc964aa47bb050d1f36b17c99525b9f79a4bd5b4299a2df9e009126dba0c56d075cbf615e1ebb1fab4e44b285fb1d4e171e53ab6cf10da0b6fab0d93823eb5018458245917be8646f5ed6d70cc62b365d107d3019ee7728f31c1aacb639caf86ca6dc91935076f375faf409e62050a379c54be04d9d9cb13defd92c5778215141042234327227e806d85ab5846eb2d741930e7be45eff19143c3ebae8908d426ea0842615d078810cf38afa516907d25effe9a1a30e61da0b8e1ec6cb3f376c069dd4ffeb0764825e5ee63e28044740fbc2752b2e4fa55bf25b675613dc49f577371073c70ba32249419b8f012ab90b9409df383ca323c9f9ec4d492f145ff94574a3113436c21ce8b218c06aa59006ba6c2b4bddd4338f6a702301d149a094d1e9e96818fd2422b9e905e01db6b52b219600200e3f8cbd2af3ee97378c7ecb3a74f013881c59cffea05040c0873ccbb85503f020db5a41b50732c12c7015b70029ba57482b8ffdb75f89f3e08dcc9062bfeabbe369ca1ef9b9e4bde5c3000d4d3fdd6fe23b21a9b18c8b6420e47dff13670535ad6cc41b5cca3502c5fa41a900c1c4d511ac24e52c0624fd416b80131a46281e9cbf63657f68aabe8ed72474401c54c5034ba79c44c5b8069c65a39b3f8af551cf2d527bb51715044663f20798fef310447ba5a53b899af2ff073acf5fa44eaff835224f3b8b1fff83cd840e5fd912ee64c10452c27f37d61b9e2479d88e6946ae0d708ca59f58b185d779a3745319e0a88e5c71486ed1bc9e45482a99fef135613c0144a99b9a8f6380a35ec42b49c953bd9980878af48bdb4ae7a51b7980631810bf4da42bc79b8d59bac7a5d9337236cc2165066322cdcfa52c8a5310e6abade379cef91f3930b9ff18cae3e8019fb863fd391a6e3d296cec169176d95d057ea92df456b91cbbe44614b6306569104c847f649945f71b368560781643bd285dfbb3cda52d56f63f328188b117d9a1cc669702876fc4f04c9725bbfa4db7cf5c0014d2327f696c29252ea88648b03e95e6c674b40578cb4cbb5ff699af5156cbb360af420ace09b7283b3b57995a9c57432ae4016dbc461a5d79087ecfb264bc81c17ae5c7f3644302fbd3a0972052ee800201cd8f5b27e3d38a91ec5c0ea100a58b8ca2636b3a0c0bc42a7d35d88863ef0af10f8349cc4556ee18ca284ee97a4e467366c124ee493ffe07486097ce3a51d205c7c850f4b143d6eb21059c8674a9896ca62420315d381e78d76d4b9cced8228b2b7571fe0a875975a7d8d9617de9e8286f6dedbfa48cb88c2ecf28ef8e1a9dc02f737b59c690c1782b5b3790cdb0493445ebb51d2052842e4f629ec235869a8bc93e5e3c419e5f6a6550b60d232205a1964e2a73e2ee19a90e7983a3f51f99711c7e4ce22e1030ed1144b3ddf263eeddb2c36a9d99b286c2a58ca057c02e56aa81e3da4cfdb972d30122cdbc5012feb1895d22e173b353c4faf3a3da785351d0e4564c6021f4ed95a0d99cf13c971ea7861b6f88b968c21f0db1879f296cef9771566f6b09fd478ecf50b2dc31d5c32d190258b34901587b1dd8e4735dffc94dc42a155abe35a055a3afb6f933354e9d8228462c2b8bb536bf9c57aadb286aa7b8229d72ac275f4771dc38216ed963f1abaa40100d1d1376538149822dd814fbd52cb42a544cb86e80acd8a7188b7bab3f50180f1a6660572fef1db7a43a7b17e4bd6cc416fa9b3d414c3241483987b36f7393f6bd66f6c2712e294ad0c16291f2be3056e185a929e51728de555d3d10b5add690e45c50b86e6e010363bf7bb8a018d132bfe2b6420f11e2054310fc308c2368dff6aa29ed2f1daa613d887a4923a7eff3a83516441c5c5b88c5a3b00dad34c654c0c2afc858647a4a3eb6221cc8d0914e2a1b9b8e8e0da92b322fe52841beb7034af7cc25162cbcf97258c01c57adc5991afaf01695974367ca25ce555165dba1ce5aad0f662173f0d4f4077693acb4d1bd7da5b084dbbebbb088b2ce4b367aae640fde9eb9287be6e419fcbf9e6c3b1da545024e618836e04487e9c13e88251e0e73e6e47b7a67d4471fe975b5a0bf8c0d34b0a037e12dba954c0a9ff48a4577df227883d86bf7e081d6df302d43acd5a1998b8ed643e575bcfa8354ad15402dbe98098ffb84bffb26b95725216fceed2767e43d3460b878b209f0822c3d82cc2fcfae0e501c921a7ded543175259b7bab7cc292359f2e6589037f78887564cb549ae4d33e9747a63cfffd4f0dc261c53a19f200a28056ab219c18250297cc425ea3895fb41609055f2509d326d52f072c8f8c76d3db14a24f21a6dc6de01abc1e4fa6d01baef6bef274567b5f2e1c026c054c4d0d1f027d3e7bfd9a08a55a746bb5f78a2e76053864904a0db5ded254956622fe7ff7d236d201f5750d446a0dd234d46b61d77187328bcf727efa86ae6485ba563ac32e52ad2a36485e6b05f33115f8c47f8c9bc13a69ba0e5a1b0d6caf5049a83c28f51227e4ea8718a37d5fc0a395eddb9aeeacd01335d5bae69b257138ba810bf6dc4c466e28dc05d54fe1ff1bfec6063402f81656893e3bab26c8892f2de6b6b776258834818b1a973e75b7077884ee5d32b435eb67fe8638abb687a28ba8a6709d9553d4ede382de6ea00908455bd3f97c4440887c472448f30d605e22c7796537539016266ebbc35b7915f65bac3a6cd12ac767aacc13a02c4276e1b3a247abe409a5a3f937d1bbab6d4c187da72c40fcfbc8c13c38527c884e9e4815d90edb3b9c32462e3018a127e826c8ab0dfbb49a7518990f1762c46d3c7e86ea125bf80eed5e157c2b816a1e67f3e1d040ddaaf15e8705a640bf24f3f41e7a5061d41ab9cbd121cc0f915d53958b6ca8309a4db8d0b00ee3d5ea9334de27eabae16cef2f82e9f4cbbbe8b2147284b70dc640f3026eefae2a002290608b2005528040461195f3f848affb61d2e4bcc1d4f29ca7cd4a17a91bdbd7c20cd962f651660399f82a75243767524cb6f11fd26fb2294eec51859389712e318abc8f3d345059343872f3ff1e2f81d72f24a0d115d06d4b23d7216aec203941a3d90a16fc89b4afd909f0503e017182b9526156a749c0c25879e2cdb1edd9899373a903c455b2dd278c0967960c7fc179b3b3e565dcfc756d16843b7152c66babfe29b63b520cafff0d002077f5bef91c676aede7d9c93cd74cf06768a32485cedef2d79fa2b3686b67f04bb1ef48b9dfff0187f91aaf583953a59e8491c7d6906401ae75b55d635f3e03163372d6544f4c2fb6cd679ae87b150cf28cdc13a1dacb1aa3de0882026cf674887dfa00e8c8af7ab5da884ff7ff118129687d05910d32801a57b566e6b8b28b05c89373eab0697dc5b1a40e886b5974ea02676f11c4d5998911eced432cd57bab39b600b2595a5b7875e2a0a35da41651957d720a02694b122cf999c015ae195202c6dd37239f0f04d12635c6c1ed04c9167013942dffd8ae073a7eac11533863484e6a741cf5f17f8c6302325763f191fc6020afd2a8214ca866024a3c0792c7ac1a00b14ab7d5b515b369c3fb0ecf6db370df1198eb3a7aa92416a57ef030edc2d407845f23e966696f1dc8a61f06e00348150ffe442c489e8115cbbc3db5ad39c1f15bae780bace454bd5f53d8824c5c484474f37a3e8d3b495c8250899e2c6aafa836edc2faab30d161550ef01b26920ffab1df9e71075e0b0d8bea738027885f5b6defaf1ddc3dcd55559e6ac2089cc7524017ab86bdc280d03e36d5e2496e91372cc0aa2b95a73e06011005903f5d238e2afc4aa00b58f30f8e946d171224eb698f694f576be58082830de9eb70980d234ee6db6278ef64686af2b280c4809f38310ea66a73fcbf04d87be49807d1746e6cc4591a9da8f2b8cc046a12e624d57a89fdc7e7c95ab0a4af989805ba20fa758707afcae250be707ee2a6171e359c3c6c3e21247362e8a11f6987ca3de97f04911d62c3b1028a4d925ba456974249d8d8ec2f3ee18a22f9907c1175fe109cc8ba9b4570128d37888f32a1e2df0d4c9c12970ccd459257bb96aafc36c3ffe42666adbd48125b3ec173cff5e75788a8b4fd40b2acafa1ffd49a5f57bbe4f02affee404849b7a8dfbcf4b3d2b0576ddf5e49ac913a7f38fb7920e43a4a593f99217de2a72f4ce4466df6d2eceb3fea57bdd595aeddca0e76a779b62ab70555dc31bb0e39638153cfe8d52cc57d5d1c2873effd8f6b57a7aa2333d8c7ba844c08036099453911b4c203ebf32fc47f0f4cbd7359217051d6fa510ed32fadf795121ff3cf0a6f2b60fcef9f83cfbf9afc3c67f679edafae7258e237658a134670dcbbd8ff23634b99b6c8fd8efacea2500c8b99e9b392ffeb40500c2e1fa971aaa348efc7792205099492161b94a3cfa95604a3ceb11b262413f3dbe2708db31ab2a05eee9d159b1af5a224c5670836bd588f30e3824c6eabbc9e58c24f1248d7c8e63b4554718d90f7902577850f337ae011bf873d13d2e44c15704e27536c96b7fb017f7774e1a66ac3a04935e8ccd0e5a76669cc7c792bbfb5b0f0681834ace6583dc7a2b0020d2f9e52e04297deffd6d4f0e38813135c9fe94d97dc226a8b467e2187f0b05218c58eddbe3b45bd1e04db2582ae2d3f5712ca9f0c4c14254c39210baa0a6d7fb97738f78d2401091c62646b6b96ea3b9038f0301cabe1ec3896ebc6bdf0221c8040f2695da35483c7f4283719e0a382f01d87e0c1847a5b0f8c916353e46a45ac8afb4322683220c46f1dd6eeae0573725f97a26678b22b3fb0ce77b10f87b6696b8309c86c60a3ecaaa3aec7288eca76f94fdfb3debbb849445d53ed77375e6b83447e12ab9bae27a2ccd8eb96918a5a395ad1e7c6495130af02ef691cef801387cc633015d8df90574882b203dd857d83d50461b11839f95bbe905d691e1cd09226870be250b228205ec4293dadeee61ec9dd83599004658f444ce6f2a8c76b46b5481c71adf73cc5cc7ca39f09334df3bf261ca5e772fd131b0615f1a90984566e16cf9ca61a1d0837b6225bdd75268669d00a2b94c3d6fe992de1a6a2df12df5c8f4f8f585b541d2cd3d8ed4a231160989be973827da17dd042a902f70fa71c8a32c474e79fb613e27884692393af389c015404a1bc997d071d12b6623b5442552069e0ecbc3febc563fdc7a5191879d5a44203c65eecf0404f0dbc915033cb1ae647b2468c341cd24bca6fac2a3d51416b71e872189540182f5440a282ef20dae88c2296d4fcbf7e0b4664b5f3ab00b11a7f3b4011ce0635408868f634e44feb5a8fcfe231f8f5d2f9785e416187137f408b47e3ab2894d7e3955386df3caf8ad11cc7fbc2134c5c41a40178d4e69860f6f01cb9220ef246cdb7478db8261ab89fd3e07ed7de08dc37b0b58606cab13ed37f7d0e5aeb8a228a6a44404a0ceaab7d81eccd4e2e907295d939b1ecbc6adcf04883154f7e3bb05f37b183061a2be8992297333d4262d0fd6b34d09ceaed16ca36d36a781f1d6a1034639737fe0585a47e842bc52b71b7e2b829d3dafe967152e0c333b3a5b60f1e1508971e4b411f2fa65069095c24cdb7ae51838c1084a843fcf16a026d8943e5461613f1d3449023dcf8037f68f22a0e2e0f1cf7122526efb7935be4927f724f8ef8520db4a3491d5414d8d784817fc096a6bafaa38d24983dc2aca49e799aab9503cdb51e7304f1660452c3e2786323b7bbcecd1d4a83017ef71f45339e4b0b2614ce9df6303552eda5f2d42e8cbb5c53d21991b3e7823e439ce63b32e2005be62c771b27526087f1ce6f25bc2a87a03f8fff593397972f70fcb0d6c0b2ff8feee62db0e1944a862a25175d1d3738f17b384727b8e321d3efab2a1d3ef50caecd01a714730d7ed94b31e661f421d2f027225c1c2da9a500513d5f0817283b061e48b6e74cf30b5919e5036d15bf6318d3bcea9b2e0c346d1f598828585f277f58d1fe4de6bba3a2c22b5dd7d7641736126d43ac0627a9815216703b7730888fb5eab87124ecc1602ece83c9973e34c2fe91f460608e69dc1d431a54ebd56c9ea74180c67a88d0143109f96dcc133a2fc7c159f10428c6af5ea052ebadf2c21ee732d643877d5516b7211c9c44dbec9aa3aff42515eefaaa24afb7a130496c483262cc1891f9d9338c8b13be2cc1da4e0343afb52345ba4370b3403f0a8584a1df065f3f159faa47cacc8892132d816b8189e30f51dd67fe5600f9fa66254c54c25e2da4531271372a8b560c530686b7158cbe513b3df9d177f9b3afd16eae9ba2aeed100a8ff76104808286e8ec79d53374a90f75ae3a30504a2a8921c8dd831ecd0f29c994045cf070852fbba53e29f97a7e3e3299a6789880e3b9860ab9a482fa734f2ac11e9c4cbb1b8138a2df50a17fcc897a98779967262612a9b3e0da7324a0d5ca7c798d3c3ed4e776651de8800d8a5c41796d94081f5a3e8f0456776bf2054fd71e2e60eadc0380c6c5aa636dd460d274e816c1a5ae75999ba9be2683baed64474b3b73407c5b21d63893caae9d610a009a071993864be790f70803fdf0cba79773602999457078ab2b70619c9cf7fa7804d60f3f9ce994f739ea6c99cb3391b5716df0f116706f807a58eb974e04f4c870c885edbad69bd889ef47c8e597ba113b49c4683e13d8c254d2ee413365278d1fb5227b07dd3b49ba36a8eddd9c0d4925726814b38aa67e3479b2a460013513e57345e08ceca431b82033f9fa826b9ca62ce3ede9187df3a46d245bb4bc108d7bcb381f1a73fbd4003dd682b320eabc711267903aa36b2cfa04880f9025da5870fa6338da0e7e46e2982438d29a64df037d91debdc4657ff54e89748d8683386af29a53adc5af506ed8d7abfefc131fa1deb879d4da864caa19a29fa7767d5624e0c291618c8ea2d5b684c5ab55eda174f063cd26e6ff026c894f60f3e089085be923a9532f0809620d0abfb488799c21a559d908a42bbc3bd89068a6a4d5bafaea17325d4281a476dc1c4f2ea3f3bb12bc4d7a4145c028fa88d0aace0e7a092f229f453e3f608d7ab8368a35e8a9ff6ad24648941ffd54ae6d9412d97fba25b5c5d2674989b1cc47b5faff659dd0747b28487825ba9105b11e04a7488062303bf203327b9dd5250dce7315b14cd77ff23f924bd88cde1669564ce91c85dbe30691a4b817c4bf4b25f3046c3fb172e0ecde933e48fd678cff79227a5a33df7612ef75a7da949c1cf1ff0be24718ca122bbc97b582d1a41026774b105219f0a8288e938879bda390324b7937e3882008b077af7a44baff99bd917865728ab99a718c757275f75ba0fc6392a232a5a5333211bf62ee243197f7ebab7b6859c814c02d26a021ab3276015c074a5902f9559d39cfa7539c45cf2c331f1d605ac160386ade3d729f77904e18192696f8a57588798fc182144e767a04a0cab98e5f0e10b5a1e57690e25d6bd876f356da83203cbf30463cf1b8e54fee5aef25038b17cd47083a0ffd7f70319faf1c077a9bbaa966470654ce96f78b2ae08b2bb1cbb3f7e7ff37760132d8d7fbab561b828fc88d640f86417195ac35852422242e6ba602b4861c258932064769d265f80dc74fa92af912661b6c97149fd65cdc161d6f5be0fca947cba7205493877dfc2cc4d7eb1f0d9d44f6b49fc9cdba13b743d61c0bb8bc04335a4747ed2b3088a639b8555fdc4755f74c381bd4d7b7711660435e61a1a83fb1e229fbd00455a754e55e3f8d13861ac45ad95104c155297de7ec26b41d83aab457bbaa503ee71b6010c1f0340618680b8d56cf22167c4d4d23c8c55900f0144461521862f42fa8bcd7449c993f44c60ecb9f1c785c237388c8a74bae054d2672189f53b1c2ec068bc933059e12ed8d28df321e8c32a7a2e9efa36b34d98f9836acd4092d4f5227fe6b5bd98cc8b969859af97b541a8feb251c6448a9abd0a9163a52193a4e14c13176106d6d37f291f2f9a00198ea1a2a3aa04b8fd0bbc6e1968e0d49fd4d819a9755bcca4a2c8228e0e743a9e0645a7ecca837061392cd67e6ee84a28dd56ab142870705b5242f673762793c2c4aba6007d6cb96671fe28bff4f79b8459f7ff7e777897fead201dd3be4eb22809893b28c1dcda9c45208ab5b58ceaa03f5c28963a4a885a469a41cbb2ecd656e5d2a7b32504bfe7c971caf4df4ba176244bb7b08bb4aa4065fe443985c6efb1da5c20bad84cbfe1db6c1082f16ce62e8f2f25bc2c0698f2e004226a9df2ee16086c023b15957a7679bda06db87eedef2ee29ed4a99a1a8dc8b0a48c933e58ade855b2633c47e00ae1f92a1ad9a0058b6d83387ac33d72c79d2833db8e620c4ebf87e82553368b5b9a147b7bb23f0606ea357d327d61a78a28b7a12c92ef400b1aeda82e428e32b248c79821a5d413f5068711797fa5d77c6b0d45fa0cda0447ad36ebdda11f7d46224a11cd77ba0c15391111999cf5775b0ec15384115ac9a9dd5a89d2175dec2073b3a80b7ab19b55fb5740fa5b819289a19883347c199c313dd32cd94b3c27bd6ee017652a399871db6c2b0b5fa23bac56ecd6fe4dc56a20b9a328394875adf41c15a8a5b6dbb69d2d9864b23ba0ddc590efa27e4b8ca5bc80fca29ea11f4b2dc39bbf9d7178fd81a4afef73fba036d6352490460653363b2a341b178b3022c879926e22aa1645de52c619201564795fe902751a3ba49ec692ee0d2fd02d5de71c773f66c0eadbf7d99b2e0546e594a85a53b9204593b2f5f0972e4dae43b28fe14b20e6a1828ee4514a3ed6be11b75cfd27ef5c90fa8ca1b3dd7a77e4178b623be801f3254ba8eda6c94dec5ede7d8a70d58032cb1dde1f30c97a2db1e168864c47c17e9e54a762883c6dc2cb0d8714a487d5152305fe2854816d968efd2c03917f9ad5064f2ec0a5779bfc564ccc26e972d8ba3e66162c4578e3c83c6bccd21a026e8067d734c85b9fa7940a580e4323b6ad45892e7ec2460f695aba985ff3f75aaf481175e74e552b8ed623dc527ebf42803d26fef14827f9d319d5f13e1bcedf4db58fd47787378064712365934bc44ead224b40f9b06093aada4ac5528163e9dff5ad0ea338b89d31f7f14de0a5b7b280bb0a4b6d0373820ac155b104929711238ca6854e844108dd781c03585974b323a2c49899d7c1a50355909cb1178671a53854272f72ed9641ec77464f012e135614629759560bcce0910f9bc9adb8a0be7ad7b43c8f6c4cdcff227c99e8a2a56364bd532bfd16585026b6b3430708c3d4e25e224faf28b332554c563a5e41719986125fc3feb891dcb3dde51cd9a11a1d1515b82ae0a64109f488db8c249b08639d2df4135eff384104d874e7955448af94c93cc5df9c1b3a4a770d33e778954cd97a1f3876dd33ecbcaa432a12fd7cfe8a840b69b73bf500c0299e49073fc1386d6797f52ec646da8f2db8c66e6a2aef8da62de0a46a0fd34691bf140e990117a637589d84ac3e23b0c1ec37feba116564858732e8fe06edd6e55b1a4aac2f1a341bdf38c749641c52832bb8468c92fd4419470abea2af022095d86ca8c9d580250fee44abd55a38bfeea4f17844579dccf0240678f716a9ec4db222444a48e18a942e0afda4bf9ee40a98f32ac310141134dcf8f6f3cf89258ee7084edecbf63c26f8d6a675fdb4990da716cd21146dad8c0850417d69645eaa8ddfcf959912b67da4f2075c87a546b7f31a32de7dda8fe7be28e8b8986b66ce056c7626c1687da9cd389c6d38c0220c8b5ab9d711479d76ae6887c2ef44f7863f157ed8f8b86817a00c7f52586d3dbe786adfb3c749417be42173331604cf4be96fc01d4e1a8b7f1b481ebb7807239a21d1f51e4cc9224a014ef3adc48b07ea273b5ab345bfc44e83c7466541d1addb3197a34b4a145f863b59afaa7ceb89b88b0c2b3eff741e108e5550763d6149993d0b2af7829626d95176e9dcbbbf55fe1bca538923738dfe50a3ed5b24e5f8abba9bba41d895e6e409bc037227dbed1bee9246869c7787f59c55c13456f881e4b8215a0ba52b3486162dba576b440979eceb6ba7133fdbd8e23c490d83992a1c7053591bc5af6d6eae58bb589c87ec37a80979826e47d93d5e163fcfc3802856ed75a489bdde565e36b6d494a2c8a999f5463828549aef98cc5400389e76a902eb8ec89a7d5e213c2fb05310ffba152d18fb5d8fc86164cd320541372fc15109eabad3587f2a208bbafcbf7ed78158b0e6a4300aaa680cead222ef8ed397c2a49f821b25afc2166b2468459a1a95db7d77f63912fc39b3a14b91e9c0a289b0b8ba3e091c97256eddd52028414ed6afcdf4ebac15d498bf4a05968427e81aa02e2bd437b474f52818d47b9708d9600c0b6a72dcf67b66e9d1a53f042ba48c207a7d4bd640d0589557787bea3b5a17ed13c434c2299da8609f713472eab1a7fea4313dfb25614bc45b21ab58a6371ea822fcc07155fd03aba118fd8eb09253ed0cd400fb8558eb62db55a296f74c7aff07ea8a25acb0dd1016ae2ab821ea0267921e959016cd9ef4bf1484af2387c7b75637dca9ef8f43d0d3587fbab1896b11bd30b53560bbdfa9975812a57fe575abcf07d91baf7221fe05485e75710275a7156f0155448b6bac742a1d09c04deb041d77c13dce8ecdbb23e9b4c0da7670b19a2ad4a34910383079042fbab4d789f025f6a7065e63af6c1f0682b7adbbbb5906c241eb8502177c8ebdb083665c2757a2e8fa789e74d964713e2ba40698bc1b6ed02ef4bcb5af4c769ba7de0a8b966a3d3a9eedff180e041ec04ee37e9629b928e9b4ee0db6440480a22af892e588a4d543dc15b321d506828d3f9a436c1196d2efb5893dc2d01d93c7a0790979ec24ac220c70d74d47176fbf7149ad1b6dc3f055d5fa445c6dbae5a8a716ad002455d673c5a02969179966f5c9edffed27001191e80bd1034268a1eed8e77697fa11e312c5d537acf3f6f960ee6fd0bdf8d319e74144f892c7023a7250064fb5bfe0e3de3fc4e4ad2c91a7006d12a0cc032b4b62b91d36aee451932620df7871d4dd9e4cff52f37d8687f29ba5068c4ba07b97c57f7fe0405cb6a888b4a01ec30f583c4c2d10061587b1de8a3e681b6d6d4c983cd0e5e00859413c9755a938d6a604a935a1fdffe79609a87d54b62ab3fc421a102780e655debee7df234543df6f334ae8d45f43823cf08b2b70ce128f0b3ea28ff4f643e715e6786cecdc8dd7f4b658648d92bc130e8b6cebec4b22f26b9a4c664a21ff3810f437078ff6db018ace1b84e42596cb0716fdb0cf358f0682a6565aacbfd2cda6fa27c5606f315a52ba34500699242e3aca5d1b9a11288ad0a19bf04b6a469a7c43dc0fa274b72e098141586e53398434b3e78a4bc87c4ef17cd0dfb259841e175f14db5ce08a7dde8928a8b7d164a8c62ba9dcccaee07398378ff14f68c97248b821f51e543922d32c9b21b9162a5c8c723282e63d6e853709e53642c780fc3267e84712a4faa82e11f179ee4e1196c1a8f9fa52c13cff5b304471233d5dd44d5e9b2ea7c16f0b890aaeac3e45dafbc9e2a271876d2aa1966753ea952d72a90de2e93a5b0ea5f44d7e97d42fa97971e3f4711125744f2d5fc7322df85f20e254d1321469e14844e30d9e034ffdf5c942034c44312b446b7325b16af56876f9523a62eff2fa5da7fe1cc9d92db5b0021730b722f84bce70b643e9e19770f381f243d4fe81adadaa4ce90cb3286d3d12eb2b973cf4271c997db492ba480299b15cea3e97f7991b819eff4c659a723adbfa4902d6e8d28b0f207ed10eb582694e70e90e82db9e7bedc11138a59c36f781381484d7b3ba22e23011653d4f3ebe684cbcc4ad0db966338b4f23a9d55802573f0995cf30212e47720c17a1acb03b7927ca8aaf621ce9053809bddc0451034420cdfb7fd5e12db11479094390b6c40a3f0608f44702ed5d1406a7641f366ceb469d805496ba83a987404d2ab7a3d00e515f6b4f9acc53705edfc6fc4442e6a7b8041be3d7e3e314cc9ecfd35172f0c1cec9a1d42c6d7a364c92f04f40eb5a922ddc32fea7cb5b24bf2f6d35d4679412e47ea08247c9dbce5fa1917941ca4accb1578a5e16396a20bd7416f01cdfc07f7f774d5dea25a76b77b532f9744ddc03c40e10e839e3a57d4aa227a3a89c034de838aba4c29fdf1359f3f489b8a8ba3da7299b7303debb78234252f93431ac29c470292515b787b2def68e75d46cf799d954c625461f0e272594830768b09aff27d09ec8aefa85ddaf7150515258c0c71a971ab86328b49224acaaf9eb09d3467ea05489e02fb68a38e733a40ea5a852887c5a7664518bb32c7347936282668025198a117839a45a4f6f0b566b2699779f521e4a28c266a278c0e20892c48598ceb7e74948d4ebc3fa71dae842903322801d95d11d6f2f4f363a392c2d2466fd3931709e513264ed319f4b7f4899bf1fd9ab4fdd503c939db4302d4a5c4a176592de1541c7f89026026c4453b35b19fbed0f74f25f0c94f4225ea408bedc8a821b07fefa267871c746db0bf69465e1ed292b88ad46f298b8921344b30d25637a162864779d71defdd6bd24be690135c7e45c8310e6e9a50e692be3dc45a8a34f41f933475d380c72ac00872e11941f00fe671f37e56abbfdf9fb7b6f01e3688b108c21ee400c304865d5c0a643528477b3235e11df2ffc43e367fa5ddecb02982a3717ffaf52b50ab79ad46f2a36aeb5164168d89d6d2a330a363acf9c8d59ae245d1ede55ecec6b44c2d0af856c611174961998105731e2e2fb1543b6f918b2f58b454d81477f248881ad52cf06f6bc66ce7b39ced2b4262ef95d0f9cbabebaaba4fa680f23ea5aa8c60c5fe3bf45462e70172304c6eb453ea3ef4c6290312c714ca50aad719134c62c33e897680b533fe1c7774e5011b3a77b1bdf4a18e3212cd94b07badd0c3a6149edd4be59e73b309110a3d46e3f3f409c6bdf193610da1b5e5a8928365fa57e026524083516300b6300999b544e7e5291b3417b0330efea01835bb0b109c40316bb2f8a66ca4967a7d8ad7494fbe9d5237c445018dba1194ac057ad451585799bbb521b95c87cd03af9f41ea4f8d06c452bb16a27970b50d675cebcdd6dbe37fe3a8fadb8ca6e08c3ad08cdc65431dbc210297a0be224d415f5e3b1285a65185503415d36508d684cc3f3940a342c4966ecd90f8339f883cef6666ea0b125a5b8a91293a3193e234c388d30dc320c0f36f9ccb1e8535979fef775b6891055aefa3dcb86eaed460371a8de23384bfed4ef862229aca3cd26de5a31ba7ac96137a22eb893d4065135feacdf11ebc171cb62073912cd4f71fa17d7ab2e3d5dbb53ac17ba722d11bed2fbff7a7aa3ba8675fb6c911289c8e1e0190dab7acec03e1f6cac4569d0de9ef23439e37db5ef1fa34eb5dd863d08f8dd23cf040792b44b0586d90cde31921ef3d6d7e81117d0d2f511d2bb9dafd3efaea5e277cafe5753158bbe2e018c1dcf1a6765c8c762a6aac1a4e75c3282d7f86a796beb1a6a0d8e85f8b4bd94600de0f3d57f9d6b6025916525c55588a18203d75153ad43e823132168ad208833ee39060f1baacf944e5dd2c4006014bb5f62a895ab1d1a4cc84e65005026485a01b2dce1034d4dbe7dfa2c9143cb77e8632a05bb0efa3200c07e8d061db4e1eb45a48235879d74725d47244e330ee4bc3cbb4210ad18abf470a34e20c9d717f2230df84867d98cf63cc6ee48b7b5e5e87e28448a13793116bedfde7510727fe8069bbb412255e6f66f95523e92f71afe93163fe358e5ddddecbca815350c7453cf231491e4c1ac270f19cab2520660249b55375ccc5c1d7a85ac7811eaae0782649462c8d28f4f307b5bd4e77bbd5e378bb249f7dac0515d0ed58bb74e3a1c722df1398f1d6ce15f9d3f1305444ff6eef3eca6268047aafea5f4b22c338442751619f7936d3e5f1a01ad220bbc1f73d1290452a25c09172759ed7a653ad773d3929d25578a8ed47118cfd86cc11ab0759678696b330902a9a77ee080c10a632283bd2cd465c90f2c323314bae8522c42f38ca1ed74c850f359e876dd9662ac1c612a5e6d28badacdd3e7ccab27d467ced702eed9a209a4aa8d2ccbdd7ad1a097bde401d22c7c980ddb5244f0df446661f703dc91750899a2544bda3be5da578b90c89edf8bca4a9275401be08477a99ccdd1bf60b85d65ac0e3399dc9031c125862d260b46663715e9e469a3fa5799223d38a8392014b7e8f38f65ac23a6606485dac9352b1c3a967ecfcfafa24f4294eab78fb61f3912b205e6423d8dbc30fda0919d6d1b961c6a21d15f67e126851a023ef3b02d2269b53e6742574e0dd28911c4270eee32351c3053727762a4c35bdef3eb366d3d5d986e7ad5b5ad35b9eff7ab899e649e6c57df7bce37ec7a43826f64565192d542316714404faafb3e19038a96e1c76e1fcd8769a6e8e64fb265490ea3a8f678769b6f4f86e944f81c5cd0c825b1524504e4f40eac56d0f6358f3ec6e35a242f395b97d0a0d69f26e5125e271753d6efde1a3466a38a24d067a5e48d38cbb71d3fe6cb018c43011f47174e9efcac21b4fa25a6f9bf6504cdf44b63d7e99c914ffed35db59ca36e6ceb4a68eb261ccf196058530d4fb79d2db4eea65c2ab57eae564b76760bb84291ed5a64bc72e57b905254f57d69c7073a3ce08be92785f3d939e907ef76e1ba84baa2507cfe5ba8cd44347eb00870cdfde7cbca6778c946fc7971aff1dba093f7cf22d420b9ac0434fbf89c0520d09945b2695cb55ecc6447870a645945175a22d1313c6a1531f44953384043c4d2feee8496a63c40f45b6e8f8d812d171d7d5fcfa53b5afd4e6fb3bb24e1fa872624c757dd9b91aafcd70bcbd4d0a628153c1bb589d3869ca2b70efe75896387108f46591af4cb39a4d91b79101368b90f330a9f3faf94bd8f67291c335cfbe15383fcbd25dad4877807304e90b93c99d5ae1706815bd2897f1b5e695ad95920fbfd7d97392803efc9422bb08c4ac5edf4bd9d5db6d21121e18250f37b8901b1b6e074b176c9cb7e21b03f51b13401f83c963092a8a0ba8a467c2bf15fa6629836f8d212cac8b20db73b555d43ec3ee2747fa00df15f0bf2e52a65da347caec155484aa14cbd5a5d669fd6eaa2811f1a866ffe30d24a3f71f530f28b041db37053e902f731c36b81ee33e61114656c7eb8bae784eee54d12fe5d1cf325dc958dbccd619e335986c8038dfd10fd58b2fda5e5f2b9f0353a294081395eb9feb93e46464b2714cde5c6a44a1e52ffe64df2b070ec5e2b8b784f3541a12de1c033358cd61bab073e46566ab2fded31c5247bcf76b501918bef6b0d9ffc8b7b20f86f71a251f8bb9d1e106f96ace505700c27d1218c0ae0145173f94ed3fce3d83e0e7edf3ee2096ae0de096f091d820184d955f86d1b007854e360375168e2d2d43215f058e366637bae70ccf26f5c24f5d1285bde5d9d875be64f4331677ef11c3c47b2deddf0d7342b737181ade90924cff4bda01929bcd0effef126b16eede9ddbac57ae2e52030003fef6632b6b33ef3aab4e3cba52a2bdde22214d3038845b875a4d1ab337a365235d1e9d8e869f2a06d0ffcc0d1fe05442a21677bf321a0311f8575239bacf25bd526c28db7f7f9890f4176104fd9a04c470d715d3fe4ea3ebd954b307d40334282d5f1ff69f755da0b72a6727449d4fc782b107874052143027fc487bc20e9eb5dc60d82b9dddbd8e99b9dd1d7e1e13fcf3ba87694416246e5f7685030c537d689349bb3767926bcbfddee2c77cbc91be71707cce31831402a711cd1bca3621f20c08d21ed33968d9be7f8f1dcea83e85cabb3e782147445226f9f034cc7a4632dcf43e600518f436cfce631c5d17325a346e6be4e1afc412e04cba7ee57c20ed3cbda3084a111fad7c2f79519ee2cf76dbedc43ba6409c6fa753c360034de6803141fef592cc294bb603af276304388562621a854d5a4023eb5bcf9243dd71b557e50dedb9b256b12a3db21ffe042fd9f085372e75a00734d96960b4b68339f16712f18df874046d416d634fd40b5a5e3800b39075560ce0f9f349fd370d0d4b57e64fadefddf84565078525a6318f0c0e03479d6987114c48f65eb803461e871f78ad2462cba3a83c323f8c64a4cc36989e5c5dc41f38cf852b1b1a11465ce65f6f4bc494f8bd05bdebda919f990f50aa38c6e9b39eb4e15936261558fba8850b08f5b33dc8c9540ab6e06d325ea321ef82b8973b8c15e126e06dda702cb3f458a99f48c4ffd4c463c797487c7bdbfa4d83f3f929197d34b9453ecd2f1ab2641dc76c787e9ed7f56b2a83d6909c357887c91a8da0fc115d496027833ac3caf506e3c66c2e8da8b517ae1a797fa94f3a1735d2bc08787449dd2200205af31d174deb0f19eceee9d6c870608cc3852c442b292884d959482d4529800a640c52173c5963e534844cb08879dc44e62ee954391defdaf771aa2521ae781d1fed20f1a9c580078795cb328b84cca0e5fbb0533f720033929778ad6213f75c46e6dd73ae3e41d5d9be962db3b5bedd116cae35fe41a34a1607aeaf1683d72c897d7d6adfbfdebf2ab3311e2e01f2618795ba6b4bb186ba022cb8915fa294a578167bd45fea4d4206b4a1c9278c82891fea8928df850c0a371cc806e1b616c57caa06905c6f1e0a5ec3d70d4d289515d0454b816c589bc9fe177a7221d7ef4ed5fb400961f52848aee0c553c8a35ad9053930aaf86a7eb75c16376e31995f840390789df1e70bcd0a43c168220ea38c2e96043481f0ddcc0747def9dacba656084c6bf119254b0a4ae8ff36d1aa87539a105ac00541affdabdcd63e9352c4632c6952af2375666bb682f101e7329d890268fc300dad2eef2e59e4e5c5bf4743aecc8a584cb82f632aabb50a6710d4e428320fbaa78a99734dbe01ecbebdb87f91ce8a8dcd2bd2406254751be3e10d2b061f37f7ce7742896e59d878740894a2717cca66e1434a9facbfe3e79d8c360d0b30024229de6a0787d5a603ad4efd20e809e250dc65e093f1a30ef67cf9fd70e33e7f970a6da06847c401da15f013f68fb6eccb9c8c84c4c05233dca6685b8a86818435c00694cda137b1e038a4e82029737b422e6154a9aa1a6029c39b998ba51f6d3b8df055e7c2afdba1a4c264a9f66cd25f770f56c5a9ce9eccaf86a4400cc543cc887b147746c09545a23ff9f66d3f1567054592a395cc09a5533a7d47e521726ed7900deff9b98ddd339774b08950a0d16a426efbb4328b8396fa992abe1582c3e37a1158bb6c31f055aa624be5b2ed508a6165a63a7a0a9bae96b27ae2e073103c89d990861fce61cd3cef7410631b325bf9b0879aedbaf8a6c43769235d28237205d72e6be59e9f049fb9337440471e22891c56a94b8f6322f74c0f099e37d665b4dd35a61d14a5771d735164127ba749129dec3e015afc2f1315154788a4a5841c297bf379d121e26c6df7d5e423ce24b75f6594b0c02674e5fa8f5ba6667a494f67e98b06c07e547cbb4b73d7c6a1ec8b5e7af147619dde9a72191985eb2e72ce24ea172ec57614d0548712d508c96b9a180c346c927749e98349cbf8de42b9330dcc3a9219f196eb90b4aacea99448d966e4e19f144d22c9bbfdf64e944daf86a4dfd862e9a46ee2d55bcce25ece2dd1e64fd0732835a6411991046beafe09ac8f675382c832496efdf5d9a1263dff87cc4e3d7c1ac0d6b62fe119aa83f0da07d9cf7e5253c51add35eacac85dec814e0c0404d2e440c2147f84611f635f643f1d5c4eb16ea29fd1b159111b6dcc627a7841bf98da30b4575b5a2572d11ea4bb0b54a7b4e8c7b342e28fbc4db11a00552e9c6482a3d4466c91ea3213648005e501ed11bd79e78ceeff46f50a64cf2cd15108b940abba926ee985c767ff8b775238d01bec31b27266b204f110946fd6a479155837ab720da4a9f569f7ce02f56950b4dffc0f0ed6d4698bd0c13f42b4cd9006213fd5b8de7c258c86543149b3d4defae2eb46890eef8ea036ee1794913339546e72ee735b5006cf1b6dc727687e5a589e51857a7b905862973be9f05dade55baa3538d34ee56462b7875816c078f6f6310d5df35b383d0ea52b4f591d9257ab09be9c85815516dea2ab9a57cb3f20c43b4b011b406c2abd9316d9f2085297441257d7921c4c0937678b94883861dc4637f6353976e1d21b74a9ed5c316128466d4ac63effb43b48206da1753951dd4c24a5f7e86b89935e0b06b4d06a3c3fd467d8f7b0e17ffa3cdd2044aa9d9f48f4964c77ecdd8f37cc8393a3e3a235c32f87fff263e5fccf83314774d38ffafb59bf1dc267d9f1aab266b1cf36710ce248dd906085522ab290570ce5a62101173bab15d24bc2c15146b05e592aaab41b2a28fc49f4b8c6db8de1f075fdf51fdcee20b0b69db7a5542ca76c88a4a38073be3ad8b11173b479d0c6d07d1a5f4335e7f0402c31409b603057fb46e2216580c807a5aeca136bfdf902d6297d7d855cad8a4f3edb872fb5c9124fc38836d090b48575de4aec7b85ed4c8368b43064d1038e141dbebb3bff65af02c128cc273da28f08e4270e01ebcf2000eaa408f054d0d3fce367d793a6799da9af4f776570cff384a1bf9586f811713182c26b518371f213517ce0584de13d79519ef95436c3b77054ce630020dee86847aea32999196600e378cf4da030952650f193001933145e7c66ef6c771dca3c530b115e97cc6576dda887fedd10d813c9dab8d3434e1dd97a714cd27ad3a3824df66f3c853dc04fa346c6156bfec381d2ba99d3eae151c858b3af76757a5adf9375f238ed0f72287e129020c04b080137959ffd221ea6632f96df7ca4bd5658460c0df652ae65fd57d3ddaae9e2e75d1e1fce47dbd59bd094002953b44e23c62daf241bfd4bb6e07ca8eed9f8f2b62a79ade1fc0afbfebc8b49ccea753b4deef538ecd6a56ed99345497b254b1c480f45b1a5b0cb3e30a37bd4a9420db31de7cabc318b468f55f6c277b96000daa9eec1c9d2e9c2e02148beb35e5cf9a44c974cdf4cb1b9235fa61577ba16bdd7015bb650b83eb51c995775fed310922f56f6161ae076ae79bd1d38164ad36d4c5e3e0b638b66740f9353411d05111b202beea7c1def3abd02d4c353c03399edf31b834630bf14f906a6426f06a1df0816751381fc70db657d8f266051d5fddf36af2af1c3782808de527a283861b10ad5b711193ff5114278967e6d30df04f43b72608adc20a54729ae72a3065e02b2e2bdac717e2c8d945843f8c5d7e3f04f60d3433773163de0e0c0e45f5c6f91ad19f21bc9a0d9a9e887e00bdcacd9b7b465f04b95b99a4b441ad9363ec7b01b55ff9de4c0fcf65fabc4458f663d787d3fecde8d306bc69ef0d074ed6b7c11f48eaac3802d8800ac1eb77149a6c0c01ec4e5aa6e70321568e3b7a3f5a842b6358bb1b0b5efc9c14283eb6396affdc86e3c6b62c255bc1a8cb6fe7c27ca59e52f62973115e1b817cb10711abfe4c42c168922cfca281a32ba21032763adc74c9d1b27a3ac08c8c0114513d24f82d0b015f75cf1456871f5d6ba6a1e29a27dc6c8c427db42f1b5939271f9055b57e946d28fac2de338db3a6664d82289b80106ce9925af966bef12e910c94527bbc8f3c35f39f4d4ded4110641e7f69816c2d3a4d37d96b4ce7aea8e296bf237d81140652a7e4db65a4a1e0f84c2f9d45bb72f042e165f162689bfff9b07533f7bb5abe5342bd95c42905803da41cc1f366f0c90d38f825ba7a6092fdb26da7f14a21e3d4b773e120ba478e78525433e33eb57937c7b8c390268be01f7c5e6b95dce006cf6fa9a57d3ecc4fa40b4f51d7fed4b029464ce6b07fb61ee6b661b0b7d8dda3af460ed2730b48f3e97dba0e64d4286c2da4e25c96c341af979a56b45deb70eaeee6f433a1fb6af864c7622412f9bfa5d4f38abd2699dc70a2ac45038eaf6f88d42353926c3b5015950f457c211582e95c7c1d787532feb0595f9068a006fd30f1d2288307de8799ab0731a91e369dcf8979e4733d6be0a8db030a5213db71a11231f8424bfd3656dd36012f144a91fb1d8d8f713c5e8c35714e7d289754c82295d053358a4d03cce7eab4289ff3f1975143b6e7186dcd06ec7c1bce4e199b64e6524f6fbf0235324e902f37dc923d57a773ee25747c567fa2cef2f8f5cd9ebf721289c27d6ff22310d58cb7a25851b9ec34ea30c53e4d2d0b86615530bd3482bd4d2fdcbf4f934daaf64feb1d2bfb961c5886aadf9e86fea020f1fbc1e74d47ee95b302c0cf8329a70d51f21ecadc6562fe498b35179648b59e728c5a414b902a5b2823fe73c4650606cf07349bae4a5e56dcb14f1544b5dcfd63e088d100204c526c48222c84289c5841d6ee48799bfef216672306233a7a322120ffffbc4d751f694346c31b7dcb97de3c131cd66075c3737f5744975abfebe1540882fdd057cb78b52b9e4cb61963918b7832e2755667439a4f06619328e5fb1056f62b7305e3b9c7d422a2665164ecaea9d8807db02f41f6cf8a11dc70df1f2c2c0853607f1be7c4f954a49e3de37a440184d9c170079ecafce3d84731246ce381c566bbd8018ce1a79b16f89868ec95e3e077ba6a248585ed53a56a4fe2b977fb4ea57f2d555c45602aaa53d9247381a9ccffb87b5754ff6c04a744784018162daee121cfa69d7febcbc0707635aea4e64363ce69a1fff87e1fda9d54b5d173832485aed4ce8c7283ca9f830cbb1da608ab8e257c161852c3cd58a33d32d59fcb075c76c8d08a900c4905c99743655645e4e47dea5501bb5575b6fa59a2f539f89fdaffe030bc5e4cdbd78d91fbad7ef1e8c6fe311db331e7718d20087040031ff8dceb7cbed113ea66e90e6eba55e8a31bd19f61ab7515a7153a637304af88888339a5d5ca11228a733928657a496bc08c0b9b17dff924363d658fca4d61415a417703d191d0ba69d0a0fb74b8a517cad46a882d6e4db649bdaa61b1da5dc15825e6a3a04045236c6e024ca590d23e8e6f10ebf2c8caa944320d01a086247384966391e54650d3d001430106b2d205e4acc36e74d5b4cf89f980a92c9e0e8a272a60a7345de1a75a2b7dc260dbecbcea964374b3d0196ad47801ea6fc86b589c0e19e5cde02b1b7eecd68b1283c801f6085b815d585adca242f95aa583e1fb157a7e616b32a9ea79ec5aa17cbdfeca18f40c5867b1f0311553b0345ab88c5b8c2140a57178297136f85c01d711b881f57c25afba114731e9cff01f6b21e8ac2b00ba379f3cd7fa2dbadea9a418dbae39c0d20e1b2ebe0964090422b67066f60f7dc390b764dace45bee00a2eeec750961d05a6e5b8571cbd5b113325201ed8839f6b863ae37063a917da46ac88094df85f01c1f8de67c032226e214cdbd41a71ab698775a37b9f2b3f1bff74f14207b551fedc634316901858d13153d53bdb6fb7d78f24fde604c604d478101d2c493ee6e23d1bd2b77c644f59bde8c98d81e56f1a4e993e5119a12665676203236c7f874d45df7ea56efddbd30547e3d4b4c3cdbe194ed3f14afa208baa0de408d06f8aa1790280afdbe832c5687597419ea83261c59a580a5743f7fd66fed6cac03b76bfe7a3ca0ce0a212a3cb287df5261c0c9d8365911d88b78a3e4454ee4fbc8fa22ac5f1cd7f70b9afd86a560e34594707f7a2495efbc2941bcaea1ff5faee8d9a1afe38886c00c740058c0fadca4aaad11eb038e611630618cf6e7ff4c47bb5ab4457fee035d3260c759e6c0adfe0b887c33976120514f5480bdcc31acbd993bc069b7bd126138aaa82925620dd20746af1a895301494dbf7c06b3101c6b3cc38d2dbabed12f9cfce1574ca573c5d1d335b24635e746113493ee98ef2d9842b424bc72007cd13a553ca47da7a07e5a19c43f1c19590b8f8eac81ec7e3aa5ce99aaa7fb5276b2247de0f112aeb8d4a4b279ae7c8de4ce4e87a882ff963b5dbb5ac87286306bfd73537b7547f8b0cd37c06a98912fa54197a8d73bd9216ab40c92dd24839e2f505bc43ea4b462814253e4a65a7a60adca0a8a8d55072ea10a67f89a405e6a41c6307fb461c16281a8f7830568085f043c6c06b0103a189d782095dfb01f865273d8c26e4b7943160096ee7e1579e187592f753f7bdd7f19a4641c8ce15ea988e4ccb761143492f3a57015faa34498583fee431872011890e3f2c5556fb81a81f9dc62fda39b0eb0ca25ddd2440e8e146ff14474e14b035bfe632e2cb0ee71914666b4bb5ad250b844bc40085f9908acfab4f83d7e40030e7838a288a2eaf66bb577dc9b66914335c182fcb15cf2439ab5ca27fdf579c58df5da462bf3bdcede7eeced9f6d3ab1dcfac4d66359bd5e3e4ec917ea01ddbf186ed89bce0e79b007c0d4e344cef7b169890036743e2e6aa1e861d7feb5b1add70b9be9bc06784134065f43e56e47e050cd32a35d1bbc728725d7378cc9a9e032ee69fc32f5820e0e913e50605c36f75ea24b497d5a6017290b1abb488fe3e7a5050c0e88e1605de9a5abb20160092944ae0afa03e8c0ffa52259fae8e4dce7b17b0c4227cdcf008e047b68431517dc8fa7678604fe31ad56a486685374f00266c57bddda84aa8c43a25d30872b80f9e95af2a768c1e60453bae6240016b21a869248909da9f0924ffd87fd832bb764912d4f43d181705de8ca1a2a481792d2291507d0e01c8f7f84dc11a50244706d80e9db7a41358f59a99e1dde5fad2927577ee2ca38f5a4b87f83e53074ed75108a64a2b36bcbfe691ff344b6aa842e2d51c34fbc681037d43eea5524eb137cc4b1760128f62595518ade781d8c66c3883a1695957181c938333432ab3addf2bc436a1ddc2349a691303f369ba3277bd779b69fcf2f6db9bf08fba450fee27ac12e800dc21b57e3b681767bc05af63e3b2903f8df4f6cd2973253b84377e924df7477b7d3e89ea771f8422407c6193a7e819faf6e66188049757ac3a97659e1278ee4549ca724eee55e28bb5a027f749dd4311b9e6da889c94181e1c3431f4ad43c088f5d01cf55cad087c58fd6cd69b52140a47bc48775bdf5f0abd664751a9f468140a8f17c88c87bf9cdfc1086d5f5454c9c5b4715c34c6f70d6cdd966c96793d79e4046dabb17fde85ba580ca714daceded003b80f3572936d429991a21d4aacfc0c87f12de11aa686ce93603fff754be4b09a9c6d14635b05abee7f5da033b5f7e8319a952c5cec3ada312f4fa9de7ed93cbb8d1065fe56cc60ab015afad3231e8fa36ed37e3cb8652a2d93c0ebd9bb36968b52d151c637f66e786c83189d35ee22f7c9e2ba93fbb7cd96c93204b2def838c562966fbd74b2c55cc709e0a701bfe67dd13e00ac20dd62b296b114d33b3a75daa8ec924eb0a2e6248be7888749d9051741b788d4555d762fc3e89e78f101041884f5c8da31cb815c26120e9cc6a4158e1b7152d7962e31bf216d2345d733ba038ba4694d64b206b5ba97dfe3dfeaeec8aea758c0e9d6f40284d97bed04e90b573c7f47a39bb0b36d440bb4f50709f066593a4dd6fab150233feb24f0474ea980b6257280b10375a33ab73859e48662b6ff33435ea459b3490079f4613404724d821168dbce25f73c1724e868ea72d3539045540b29d96f4dde499fcacd6aa72038b2de70c54a4f85accd48e45c2f9c103420584df5cce6985ac51894cd6aeb1ef6afc000fab4a421efb44b5ab104801ff62d2b10c45333ab6e5e676688330075341e1667b2ae19cbe1ab249b717c33b5018c0f3fb3b829e13a25355a0445b22e52096947d2f4aab7fddddbc3d549dcb427f9815fdf5b7ca35a423f4a7838b82cb395d9c1edbbec9aafc370477de6fe288c797f1e0a3f61d947c28f1a32365367b94370a559373ad3f8163b9d2ae665279ecd52b044ef2fbbb9a4eb5f6c501497e6a353fe9ccf79c09c54170343b7df7203d957ea54d3313c057a71b952ca13cc0544eb4dcbe9353d4aa5e8371a12183c96877187cf77f5fa074534ef70d2a8b9100c544814f2e1f7147d0e9c745a8484748e44d0351c4ecf7ee7d52a5f49a30a69a7f8a779ea3b4ff2ed27f11afbae8cafec7297daa3e5e9702f42c86b147cdab0eed289207f5bd6604e12edefbcbb4b7ef231e241519ce5d6d7e394bb7508d22b15b86262f79aaa9229d866fd87ef2b37e9dd9278929c975df8e3d761012a12a4fe700b3c0ef462f4df24e4d82e8b2c6b812f2cf5798b37abf63bd1e8509e3e4362139489e85ee0a41c1efede1951bf67c1e831e9b31bc339af2ef9c493a74f0864275b3686cbdd402bc07cee192ab63d3a0bbe47891a62c3c17c3be31b80041d38962fbc888d25f556bb1724f4d9a88d1290ffefb7516664b4f265ad97536a55a7b7a388e7a91f887bb568f6420ccafa45a43e2e04cc98e1a57335991e4c022594f547f09ac6ffd69de5d7e3c4a69af4bb04c88a330bba684ac27608d1214ddcd2304ddff297291cc18a55ea0fa7f752a8846a7057900ca06b36a941250dbf7332354e2ce7e67418c475c61cf784ff96bd76e32479d4d4a2db2e9afec09c88a93cd6d7a49fdb30fd68fbcaf7d5c5261e40fc0ab87556b877292d47743b504f150e98319ac1accf52ce1a45f8129e08ef555139c237f0bff5e4a214062b1c23793fc5043a53bf931150fefad07848466efbe5bee8010980d8d2f5e88eed546aae5f3e2f29dcb6e7133138bbb8850328fd2830bdbddc0c3a53fb347aa9be88600e4c2f4fb882729a49ec1bf18ce09cb5b70d56ab8ca4577153b5406815a13524e0853cafcc17b27b5fdc025f033ba7f5792c5e3b355cb64ba6246d795bb79dd6465ac64a42f82fae44f7199cbfcbf635fb0e70a0202400b98b8d29108a7d76eb7cec79b7df2e0be5acdbddbb171f021bdd2f569c763a65a218ebcdd84143ad2f2f34559b654e3130e50c2dacbd9c6ec8c07be3d8b553c587d5298bcf3331ad7af2983593e03542f5071e76d6965936ef7a179cf6e923506fe25c1d2daa7efd71ea4de648adb0a55d88ad02323f2713c3256076a283e0668a54af4186b2f775e1e2093e9bc49a089cec797a91123aee8972c3940cd56f3dbf6fce90c18aa654883339835cd1c82068f89556122871ddadb2f815f88e1e3564ed5a06bcd2af954000bdd8a1cb140ffdc78659e01f8a00ab4c3c0b1b3e873fda9f70ca1dad4075ea5462499c68e7fa807dcfbfe24b39740ffe78548bbb93861841f9d0b33b6745a7b34ea663c4a36ffa904800042c98f5243f699e73d384511c7251bc3852f848874356e23661585cbb874550ca2419eee13544669423fbb0db1889dd614b08f962226ea9d8fba066e99bb5a617871c4522ac39fb2b30d1439428f87e36d16f2d52da560daba788b5358918f538370f70bf92b2bc0633b342b52a0e7315f1be14c810b3e31ba2f9743f79e0345635ffb1cfba729e61de17cae434d6e2cd73a8fd5498fa70ec33037f6c3dc3f7d67037195156eda952428a21119e79c55dc18f933fec600696cfed1500d39515ca567b79c828dc29c5550df4ee9957e9c79a0d1a4c9e11c1d71f339ea85df6f0b68018d272a62de597c69b61bd67094f06e5999b5bbb513abc69a2c5a8d3e5f4ca3a418741f0b5c6fb98d6a8689921bebcfc0e5dd925c1e2df1e0bc4adbe44ddb86ad1ab9fdc26afc63dcf58329549db3ebef064b812b003334ea2ad72482d6b57f235bd803a76f1e1385fb605b57b5a93629246c235be934aafd4cdf842ac0c904ab2c745af957d52f8937357612ae0e0b641c1aa9906e5c1a03915d704ea84d288b518358299f7933fca454879ab022f708f3b0a85a7abc6fb2c09d0cd8fe8e7efe473cbdc5179b99b0a27dc97d84b94c8f4155591e663de7639cdf5252f4fcd4e05492468dcc0ba736e006ef05d22413adf73f6af8e114169941a1c17caf91f3b339679aa69caf61a44b948d7d07e4db1cef5c0fadcafa430dbe417a12e85e60fbc06cb96a3732e708475506c0b22d46b70b87d3f6c4787b22ab2fe6b135681ec9a7ded21dda83f143471557700df8d88afc47e0300966c82864ba49dd077d5212ec78c62a6488c63779c107276cd3d6f0b20a783c51c5b27b55adbd2801ac6756f981eb1902fdc9eb6fc73683a950a5f9df282fb3b395ca2917080aa9c75b05896f4935e3d4cfe682c1f5c251a056fb77e83db149c0923d040f1043934a6a7594383e5bb3e0a8eb7942cd1ccf39bebc88b1143421def4ab3950d2796209cf79e39b7a390690fd008ad8479dcba7b4f7f1259bb6bb6b9f4d8ca3908da70c9ef7a2ba3f4270bedc5d17da97e11e3988416fdaa46eb0e49d2e2a8d3d4d55a9261b0c689a728fe1f1f5c4a5526a4aecb6fe746d45c10d0b0806e0f7cc3cd6f11c1371faaa861da03358f66d286e79980e6a31a527c7c388722be4fcff058ae239af0b48df4dbe2513291d0602be4ce0e78b4b6a78a35d00ff5fd60a6668503188a2e66c6667ea504734f38a8958022ad8fc34be2bac8239a33239f9750ff6980e08795f8352be708f9a532764ab019f6de4a102d1a86ac1552a16c1616a5500d84b6aff9070311a8df127f7657fb09b4d286e872d002c5f71bc58b39936f6a61ab7154756ce429d1cae3ec60fd576b22cefa7ed0a8f2c6f4a89d7547572de3baaa9a705312d794d0af79f7faf14439cecfd4528b66e651633dd27cd05953b6fe5c4578a5ad1343c46fadb4a1dae5b698a49d37d8506509f5f42c04db7ba4b8b58d3acbf368edd563e6c14ca7dc68307bfbef1ceee9d3183c1f02202ac8c9feba3437333c0ec5d73ef298c0245cbce2ccdbc5e63f3150bdb1f6acfdbf8b4fa570ab5ecf3224c1291ca1f74f8a4e2795779a17941dab1b2b61190ef87bde7e25dc5f0bfc261ac6dc10b4ad610fa86655fb75bfb43c788495b845b28413622d47344aa469d44212ab303909aac13f2e46f5583e694941bef375bd6c2143aab81b70952b97d8abf6eb8312502af1f9d3849c2b9ef95f62ff60c32145d6313b36478743974b7210b9813a4a2a157383963f55d26e72036b3f23130a84915bc57e3de9579f48b4474d5d1cc05520b9764549f5ecd936df574df9d67edc37bcbf46903d01ff7e630822d6532ab2fb1d53a7c0d16f85c999a59a023c156d24b5ed7d907a4c25f86779b81282ad734cc1a3fa1955bd4c629cfea6517c2389e086c4e8b71dc4ea0dbb031f47839b38a02c09c45ed83957664dfeb1e3e990292c8b648153d371181be5df1245c13f968b3ed4829e2cb56b8e2ba350eed642c0172da3c1e1fcfce24dd21457d06336827b98a6eb2534369a0425503c516b850a83fe92de255798117abcac62f30602ec3c1c80181a513e16e39817c302b3d7d6677f91aa10eaf7f317807f501f62562d96d0b1fe115e227093fc5be70340c32ea8afa89c2ac8be35f61f603f332396a003d3f6de791614fd82b22f3deb9359590829a5efc45afbef6636ca75e8cb1335bb8af72258a70760e672476529b5b0ea1afdf0276fdec5c715e44d7ef3699fc6d0b4ed00271409b08daea9f99d2cc6660a336f0e1cc7ee57baa5a1f8b92d5a05701fe1c51d8b5676c4d506add7f3098b850cf836e3f6fbbbdc009c3f759118d2efb61dac30e2fb671a9327a908a535eb39f17d581f0f2cc4cb66accbb2bbadf2da453e6c0102950d588ef99642154c34ea1a5f8b38ddcaf78f75be155af8bd8928f55e18d7b18dfe1cb468075cc81433d2e7219ee7a73c82d9768578ac6833eaf4e6b25a13f58e3f8ae4bf4e3a02c47f305845c786cf52f8b493bf63718360c20841e15e26930450a912b6eb64bcf25f9d2f2b4ddd6b38070128aede392cf916485f7fc6d87e07155695b0628e0b853792edaa9d39731bd48a120bb96e762c2b4416dced484aee3986d9c7c8202c32bf49cbf4f42eb9275c5f470e1de2ce6e1df55598509ab255737f5e4b2ba1546d58647fcf5dfe2a4df5ceb12c136d2ebdc89e3f2974ccb816cfaf0804ca1bdcb6a23067d4fa0a538dffa30d9f9007d368fcea692ce1d2cc1ffb0bff141df2ce90faf54a500e35f5aad731a74b3b4628c39a686d65534a9e103755f50c264fa275d68db14a369b25d3604669978fcc0923b36cc2ca807442aaa93657639a67a96c583c2604ebc9dadd88f5f9d22a58c4c8cf47a0dc468566776356b746229f50ade1535fcf9fbf99cf7d22c935b31300bd673b9919dca8b94909d61b69886004956b252afe97c2ac4f4c6e4256fd6b2f160849502960aec0d96a441d8cce57669fa434d3fe5105eaf7a7abe67a1f729d77d6d05a665af6e4c4a5404076675bf4db9d5c7dd4fe227f286b0756eec7a1a0985b548f9158c0ab3ea5a8cc2aa6634b00cb668da2cb6b0beb809c6888b2f82f3b36ea9e1db24ab8f91587df40a5ae10fa0205c048e0df39601b9a9d8446f1266c20a060b137b4c0e97e2e814e9cb780774b7fbfeaf84b2ff0c96dd3b79c1844e6aaa973c001e36f6fa9d60cc00319a9483dc09bc456e37ab71ac73864494b1f892734499bf0f86c44e4153e758f1ebf1ee54eac022e010ac6c1d1d08f1f4201d1be83b3a27e82b776222db4c27f63986eead3067eeb2433d8c8bc16c41418cdc1d7b7e488cd1fc5e43ab0e79611cc81b196d76e12e8ea7b6384cd14b63504ea516cb08e8f2c663bd8f90b693449495722fc62aa0f90f58ac3fa97dba1bf8655d3e56d963499cff29672cd6dff01499698f3f477eeb75c469741c2557276e2afa4144b490c44da53375dba0a6394bbf5bd0fe24e380bd77749b6b22ae7b06b79dd8584ab419c49a3109f8d29172630d99f482fa488cd28e0694f3fc13efe781eb9d8bcb87efad016a14cee987086eaa6c42a38d0becffa8baab3326dd58c81a73f110202498e333391dfd4990aa6055c46e47a1cb484565416af2a64dfe87f81270155e7fdbcf3dd693422161afcf6f77eb01ff0ba7a048f8db3b8f3afb772af5adeabc06aceee430bd520b6cd20b27e3f5d12f9302b25ccaf88dae804936ba9c099bcfa5c1c979402da67bf7e672a3c23813d23d506eb2e668e622f50b22918f12acb9fbe627e6c271add31e57d3380563b4e80754970c054cc61611c2d59ec9ec44a4ac9e4ca168233b14040369f2f065ef2d452517b2cec49cd221930c3d32b68b0de51110f02032a0fbe9dfd23ad4adef9f48f3364b6cfc35d648ce609a8e478b4dac4121b9b9af275a8c5366cf97e0e04311946f72f0f28e50fbb2e1a0e2bc9e3895f74b16db0801c571def33409bcb9a324baa7deb8ce4276625ad80de2d1f5a82b96468b5874fcc60c958464c598f3c0232dff76c5b680f1fca7de8c47a381cc65615d403e591acf3611eb419f762368c6fba52d3f3111fe2bb8021bd2808abbbde887ccb98fc6d7d2673de4fbbc3f20900c48fe2e7489afd57b2bc756802add7c7b5be7040ed72b630af2a3d9bdfb553b3f5645c0edde8963bbc34c77d0861063ff0e663aa43672d794e67dbcf85212db5e0563201d0f1af8c3e32f0d1f97beb23dfcda64d5d2a77d77adc09f67e0c9777e75673266e829177f9b27a6a9b28dfa07a23d5bf0b2753c2eb448ae822d069ff7d8ccc799b9a036cf14023307385f293eff2981eb3303d98ef8bbb376384c451e86bce955c3562dd29afd8a3333d71dcad7dce87fd53dc43e76c95dccbbf7efb977add9625442c2a5a628449882b3cddff72a677ccb368d0703d54f5eff8f6c96b1260ff5c492082e86aff8fc67c0228d309381c36e77506179db07d9f5a99f3815120292abfca42d034e188cfea9c67702f91541cc91190b4d43e7e4afd003ddccc389e5a9ba14abf680de876c53f7216bee2e421de3f05fe48c8a0100fe66934026624227c639eadcd7f4b1ca402a9fb4dc5c0623d608d55bf38179977a7dcb4d54f7154b51ebf5d3a2b84fc6c360ce4f22249ff933376de2d7d9a0e50465ba863603f140dde55f4cbca49ce6bf4f96270c921163e2e29f8aaeda40918264c2eaa72a787be431d927be1c1adbbac2afd815fff5691127e6a28d1b13942f9a3005f3319f273a6c72c07efdba405aa0d0cb59eb2c672ca4d60bbd190a7c6757c54afbbe04f866879531be7d35f141f95b677e001c05c56de6b567730f2db76c8c3b1c5d05672d8b375ca4f5b15110d106a9d9f07fc7607a0e910af17a1a17e80a74d51a3000a0358f9bc479a9cf7ca12f14d9f0b31c49b646fe69c8991ef83be6d63f21d6ea5826684123f2482fcd7fbf2dd0fc70942e3d91d23ae3d2f7d5d12a3d37e7135e1d388054ba631f75e89069bd9c13a3b2c1c190841fa136f0ead3ade96f6c09eda5bb9cb9ade411799ee969f91e3047bca475ba29cc0aa3a9b36f9c8cd23886ef5288a102bfeb15097ae2a7fc6d787999e31620a238db15ec9127f0deca557070195ec0fa7952fa2808b51ceb412779978fdb81e97f5e82d72b49116c070ea4656e45f38c11197a5038443b96eb52dbab23e9140c5ec3b777b94348ddc34bb5f6cd6af6da760b8a8397f4128e0104953bba06f0a2d9436f59767d1c2f74f718e79758cf49076f2f8a31815788cfb98821c00716b8ddbd4ecd0211ef6bfb93756a04d8b3a57ded863ef61470c2a74e6aa7230fffc0c450c207832420d4911676c9b28a3b7c3f7ab03f28f7adf91ca9a0be21b47e6d7f6140b111406b83606b5921974658a95f0e6dc8d2956e5fa3a7d448579c810c8a8f96ef63e3dd1d96c6c2a85ccd02ed48ab381e4a77f822212f96864a4890b49ce81d74cf116470b08615f869cee5125adbc2643ac065afa635fad23444ace6e5ab425fefcb956b2df75029bd911bd868ea8a071ae9b46696d8939d6a7d39419b85ec74608466a1a06c4fff70a9f73b43a73bd1240c344dd055b9597deed950f6c4ae476061825313b59d737c510557ad1df2d84b00eecf205c150478d5cbf560247902a03a3a571834aa58f6ee3fff488150f660f37df91e91f05f24ba14df3d6eac59a9f244dc9790a9acd386e7998fbbe3434abe183ceefb8b9fb3c44ed047bf8ee6c02b3107ae709f3c56003d314e873694461f7fdf267309a795f423532d54cc4bbd7ef7d713fafbcf1395db2ad6afa90ffcfb0ffdfe3024267db0ae18cfa8c54b350960a63f5340bb174f9196f3814af04490f0443139e95827bbc9d034e793f852a0eb1d24c32ff6e34ef3832957bbab65ee3fd65d58314c137f2579198dc1909fdb103e72ef8f7bc5597515aa4e8351c1f1e74a0697dbd50d45146cd62ff4ea5d0db27bc3c504ba3b699717f8d68f7a0283192db9dd05e4da21a53500d8b88a3caa160195651f7063266c214a44a1473aebdf9f4691a29ef47885c0160984163861b3e0b340f002d321e5731ae6f9b38df40eef94e0a8c432f1fb8e2f97619b70b9025d7a1f8fa67cb7b46ea42461d2c083f4c2b9ff8da719387e7cf9a61242b7d5b39f3e56d94bd2fecbcaff7be19feedd4bc6763b01cdfc3f6abbd01d329ec307b94dc692650e6accf5342c2cc93365b71d65386b78327423d431bef3e1f1302a305aa4d256fcd00b16aaf48aa23917643d2dea04aafb7b5547b673ac2ae66b86b0f0d066a14588cfffb80894c2a467bcf86125c5bdaa3eb45ea171909fcb821ad4a4ff73b0927db5bd39a744c9c0254b9bd09459ce4a4e1454d7ecd58f3e720835f46baae184e8675df5d131774985f765cf6478e9dd300c8a4300de0deeaa77023b3e7022182a65c5408f42e3ddec32c59e4d8df663c960a3ffad22cfde47878a3ca74aad31836e12a68ffce8b5dff6f897c1a6ec1e103b887c0e0ee82e8e2e92aa14b84f92320634d4bc6ddc2e48f111f633119ca3bf789731d1cab23f890ba4c7eaf6a38fcc126b0e00874ff4054b1f17cfb838fe0d1d9b031a69f006291d1f0fff3d9de79f31aece0c799eb1e2daef67f5a6c0bee037569c4a5ecb29a1966bfd92856440537c96f146666bf4a3b145aa64d0e55fc95165f00e4f3b452157e474c5846a23b21f4c581967f4521a85efcdfb6327e8e7b265185be6368ccb2482024da43bcfb52f80fadd52b757f3d98054e4d788a106abce529126693121d6e0b690c988632baa6a02a1ae90846b2656b6fbae4ca15970d201eed9aa5ebfb6cb7d63e3a2b9f9ce8386968025a7301eaa82c73be521b469f4c2704346f2c4fb420396ceb04900394e4a592d26bec90ee320c43c3fb98fc219c7712efa0f3e547ca9313c0fb8d746b08c189a224acd16e51cf5d84ca2c41945c5039b1a6799af0f42847bd0b135fde7269fbed3d701cc3908bb04e64cf691299608e72ec733b1ae656a65239d8dfaf8557a30eea67deb5e86e8d14a04899fd6c5a430e732b1282e2aa9ead83ca5dfcd4d9d5335daad5778cef3466bf005fd86118db030111c5443483be65e34c3f559b6c0c75caed2424779b13d5de67a7f60b2320b4f30ca7c8be6a0665ba2f6e997ccf10b690d58237ed6c1b5126c2d37a0dde9be1cecd83c1e670218445fec1195b423daf4b05c2d9def35fec872d79a5a08a391a87efc0ed27e04feeca2d878d4163ab50c245dc5da16a8f537bd563b748f8b780c477f75f14b8006946d5be1fd187d3c34174fd8ce394eb203e6174a443df3a7690770e81b54ff9568d79492e02b6e4ef201c510c7f54a8b9010f578ca646b7e389a4390fbfd9c52c388ded10e9084299b4e710a378ef333061be2d2aa5fb264b1e358a1adf8f32f5da00518d115f0045b8bbb07283c82ff356e87b38c66055fa821fb8eaf1ec2a2a1e51a830f8ae4e6b4561bb7c77d7db3f7442afd7823a8a2e9e9dc00b068ed1b78546e390af17a67735f984a7f326bbb03006095a041d87fd70e02407db58a41e6fbecbfced7ba1d9cca0e980cc52b32065a854d9985e355ed484aaf75a44557ae5cfb155a2029339edd7fd85cd7b0db63481277f6e21fab4dd66ed95f9dd37788d8296d7fd3efadeacdb7dbf5e4d5997732c11e4292584147c7fc2030a8de044cce533122a6893fb4313e04d829a83f5200d80077df0197b3633bbf14dc4e6f2945cafa49fda21d3a360b0c3453fc00c45f9e66f74e381a69e73b8d64cf7061cea621331f17c48775609bb41b8efebdb5cc1762b4df252264683268f00686c8e5df2d05ff3e1171c966b8e165f5dfe2757c8774cef3cbd8e1da4bf71af472c151eedb1be4bee739ffbd8f9f7335f5401e5ed10129ad7f8ed79cc44a9b79a0cbef2bed7922cd6db63a4b59d703e4666c563e0aaa1ebfca9874722aadae9b801fdbeec5eb8a9f1ad9743aeaeb02151af4a0fffe7c5549b44c3afd17eff93e81b1965ae2c86f731fede33d2bb762d4f1042629960d049574eb3025be230acdf28ed2d99de6ace0bb136dd16622aaeb93d94a519cec50ad7897326aa0e542a838d26ac6e5f998239be6ef62cf9b7736b6c2703869791089ec759efbd02e5ffc91f19d738e256bd471d55d88cd7c15a8555a62b5d78debdeea227ed75e3829ae8686419ac369feba2276ebe7113cd5dc3f40fb0fd0bc1d96249bc1a67234d483ea03775fe8db7fc88344cc9528fc9953ac9ee0da2506ed5a5f1b062b66ddcc98b791f918dde26515fa7f15f752f02e0c5ae01ee23fad12f7e3febbf00cbacdd0f586fbfab72153209c471e90bfc5999a9d0e344a81670c2186b00b0b4c775487470c923a9437aef006d0f1cce55ce4a6127bbfdfc6754285ce987e79c3dda8cbf4aa69cb8696c507d07e0798f919122c92fd9da270d118d2617029b9d764ac5fe04d9bd1a547994060682952b9bd906f03087dd36d473e9c31903cca4dd43dff28fb820dd1fc1f696d9fe09bcf7d9bfa8cee81a85616dfd9a77c297c5862a19884bbe0abdba78b3d1d5c5d845ae9660993abb38d0fe3ed7633d0631831f42a89cb91bf34914b736092c2176b35536dc74cc10db825ffc0cce4935061a99c16f8ef83baba672ce36d7f532fca14fc12486ebc26c2b29153a8c7f12640ff8376a31f8201afcd723f73389dfcf016cd1ebeaafdf4fc3f59222b276d5cc385e4336c137950c135c4ac0666918b7cedd64e6046b2dc7d751837d5190cee2f729fa48c8c203832cf56277d0e6820985590ae6af6b557c53d6ba7527348539787c01e188daa0ce05c7e2ac787f9499fe29e7048b503a6f7809c87232c01852e3e1625d56bdb49e5bab69bda395d8e3ce9a31375fe24423391227b531a91d1c05e90c2485d6443a4f1ef000d84cac4f60cbeee90cec382ea6ba57673338fb25c1062a0caff594165bc9c1564d7dcb4fec9f24072191aba67a93b6f1e62da13e77f8ccc5d1d1db37e86f35af955522a6f84c0f9ed6c88a4173140bc484cba822b7aecadf0068369cf63a8f303d1cd58e18f9fefbc410da210ae5923975619f7bedd9b4b821223fa7878d9620786dcab8addab09eddd7c39667eb824f8551922a87e86315c46ec9f4a76c54693b5a982ca70e366ff3a844d994c2a0344c4e41571bd26e0feedc0116af52b0e6488954cbbf0cb625787a84dec996a1d3a8fef289b39de5a7a51790c80a5ebe852f70d1e3b78b0cea812c9102fb4538fbb36d4b28c1caf0c898ba223cac7c90152cf51cac5495352e9dfe48423169d0c90776a3bad8e58c6d057469798fbedc3ac8d552ec302920e5667ab402e874d32a07f0f9c4b19a61a478de5134ca60b5d9413125b4d55e30f95d522dae4374a926f85be0a91936e2ba94d4a69fabe1e454f8e5e34c3a1b2f9fc184dce4cc32d39b0a4ccd913bb19fb7ac4c352fbb0ea69797eb86df738900838bfb98c23e21af57f86abecded5eecf382b0dda9b2086f5034c067ac26ceef79591385e97b0feedd0fe25b7d433808fcd79edc3ea017b6d6a2cf1ac850709832d27cb50dc6eb78ea26f5d83e39f6ae21abad411bc5b0d38af81b4b7d8f638f8a5f8a4f387c758965a07511cb528a68cdedc748b521dba44c5cfae0c5e1f8ed2cb62ed1a0425f48de2127cae9fe0aecc46463f8341ea8775d187fc14a10dacc443a142edeb928754b0c04abaf595451798a9850d947f323bf3bbf56120b10d63d2c422d26ae8ba5ec570582cf441a9e5f67c4227e2b7b49004d696f6238a18706bdb28f96f4e35146ed27fa73b3be55d2ee327e24fdb52f2f055ccb4340ec041ebc9eba9d3c567cdb302269f18f319edf36a035ed6e1c63c10462168b513e142669a29cdc8b0635c6c245dcd11c52cc8a63028a1d4545410b50afbb1c34a6a704f06bf9b4ce23a1dd209909ec6f71ad82c253eb6f0fe2eeda6339b6c0f76ad21928448266bc1acb74b1f9891640c6153a09cd352adec8827e30f256fcf831ba856cd1e82bd5aa0f58bda94f4102529f8d5dcdb19eb96d607e18a83b9da202d61c67c05d1c685e70791c1ff1b4a9b0891d3d5a8aa0f405deadfb94daf576365015c89ef5fe7d499995e440274efbe02c31948fbfc2273aae575b9ef2e002a514d36a265e24dbcab51f844c1c8a8468313b85fa4c224e983fc85fd2f5adf83a5c6854fd3a8318ba1e94a85ccc86739e7af9c001c6dfb23248dc723898715e130f407dd264fd4064aff099cda030eeb3e51327de868816c4779c50b726903d4ef35a9fe7fc78bc0bf5f04ead1fbc080ace304598c08da4cc96ce7844d391258399381a9b380b99498550b98eb9d86a3738966f35ae796ff8d348a0a7eb6e91ed5d6f6abc4d3d162ebf3223284f60c0d86589ce75640c1646abb5bec4b28396fecddda9cc7b596037138fd027c6bffd7d0a01f1efe20bdcc7e9663164d69952da12c52cf677b9fcfcaef30d85ce2b03bcf5f67d90b42defbb11174cc09359c9cca362fbcf9b91d797235f3829fac9224f5c7a6dd0293ca5094f466876a7f84b3ada47936745db5af32594e4f9065110aacc640c812e62388f0435dac54712ab83f462060d03445f951bbec3ea07a695e35a27fc5cbfeb04720b92c96b57859ab8f309dc0bdcdad6a8472c9b6b319f89fbd986063352401db972b788763109558c4a2da43960f4ee3cf1fd675da16d83fc81be192546c1b873818cd7387e1ac7e17df7cfcee38e01e127c95f9de6b26493158e44b18ad226774a7374259927daa733d3a81e33af6655c9ce826a11b90ab3630162315d95d6fca704aa46a670288647bdbe81fad5f066e78a92737ab56ca7a4d8b12796d644fe4a4f574f3f0b2b869de8f5100976db62a0eebabd407867da9ab32c545c76cfc549de472de5541c2a3f96a8ce7cc09a665a970731d2e8e13fa8ac739bab0e1d844831abf2fcdcf89db3618b121da1c313bc55e95d6ea514b03ec7f97ab91eb528b660a80c12dde57d9dddc8639574f527d484be6d31cce2e9f45b2019d4250a6c1db17ceece5db960a5c776f3e8552f95cd176f2de186d82a7bc2d8ee5878eb511990795a8ec85482f0ddfdb469e550e6266b838c35aa39c02aab5df1e35a4ca388384b13c69a5e0d038b5e3f0f21fd63444c3661b1990d707eaa2d93b21656701d2c7b53da01a0902d7186d284052595166563914b1f580324315b58262b891e221d228e7c66d7ae53703d5a8ac680324ddd706fabd6e6be0db15d9ac130983995c5d4a3a04fa0c5a931a71d87abebdf3b681810bf05373992e5fb2fe5cb1d8ce9f5c1f563c793a6289f167c5dd20dbd22b2381e6c545679016c908aaa4a6b87dfd92f52716fcb1adb6595bf1391ea738afa1e194ffc2b532cb00f9f601b5f75224c70be964c727d57a42e3fb6076a4f03375e136a75d7d11b3f1db3610beb21ed61dea38b2fe942477c1538921ddf7b28fcda6486e6738017df0afe2adb49363aa4017461883e95435c62dfff96a3170910ae35819bc71d6b31073292f6afaeae00d4bb2921e7c7d14b8f6d94dc6cb77ce5edb1ad1ba500481d58425ae99a8550d3fd774a2920d96a2ceceda0b005b16c8bd90dcd42b3c13e2287ec1cfaae429a93717c0195b1a7fe62b40a4906abf2b3ef0259a01639aabd8443ff723948edbbd4b1548d293dc4ee5faa2f8b67fecf55421ea0436342fd1a80c87db276cacfb3f3868832c68f6989ea502ebf16cf97090b62fc7fecd3779994d40b93f049671ea0be90d6540f385a9146069b6c6b077d0ff912e0acf0f7c1d0aa5a5e98bbf285becdf94521a85875016c503c69d5fb2650547262e57464df5c47f33e1200628306e355908dd84d953db8f690b69f6fb69c88c39d87a233a07e5e968a436da07a5851e7ef30e1bbdeb1e2ef4008348e9d421a1433cd4a0714d6b0ea842c0adde75a3e2094d97a05a44cac292488bfe6e0742feceda9bfd3a6bde69fccec824b911cc6a064ee3a12fd7c3eb7bcba33d98aa547bf523a4853cefeefb2b95476b55c9e4cb10086b4fb4cea5dafab23078b50244aa0f7009800332ffb89799ee11625b03661cd6465f590c35ddd9147dff53c9c420b20f7bd29672e0c2ba704eb2e6e5aa35150b9265312b5ab664b1b16bfcc23e3f61bbc2092ea5200509008804ebe8510f8df70d3354df988a0b09d6492ec4d17adf4914fcbe866159cf23c84bbdf069ba6c0e20c47d8ece9736dafb9ca45ce8aedfb444865c7e47c1f4f69c3b5bcb03bea78055b29af6f0580771018ab5f0631f6ea19018dbd0b6ebfb50965297145e3294cd0f005170c0ec5069ba4e6e02c512315934f8e8988ad63fa359a16b8c0bd247f463201c2c4a467091b0810a083c00fd3dbb2f008e835e16d1eb682b8de8b06b7cb05e10b5e360d95590e9e4a721b99ca7920a7280793d88882da08884d2add16c000a4c2524653aa0ab52f67d291dc6d852253488147a4076d8a2b5fc8538f1ba364b3f9db6d8a1794d6e1e3cb1ddbbe890fb1876df494d22c42661c5fc590f169070e30a8c57a521cb08d8037cb8c435194c61e0482acbe6214407265762226f76aa5cdaa554076c7bda41f31aa85b0ae4da81a9c9b46b5900675c8128754ffde33699c498e851aa144b4c2d1e53f5acf14d6931f8918fbb0c2cf2345647227aac2d4297dd05a3033a00e814b0f9eedf7c954641160a56176a8bf11cd8e7483df582c0fdadf69893d32da41591d5b0615f724857bfa0cf00c47a72d983ea770c32ec1eb51d7bcbfc6b7d3ff714e3e5c51a9d07c706f930cdcca3ffd169e67e7f37466127f324df7424742e1257da8b4f0d4d4fa470e9e310189c7d84409cf64316a39497e794aa21783285ec3691ceefbda5c7b781915ac6e9e7e2e8fb07a450b16bbedcf055edcdba3923aa7f47c350a3dfd69c25b6fba4cd248e0fa3331306740cd16450331e950770f7358f6b47e4320394bb15b4f33bf7331d654e51d9da408fa89c79f62abde5d67d7c5a3b606be951b45ef6a21afeaa4db3491975a61f9f8b74017ef9b22d436bac07b304db715ed4dd1dfb6444273c137f1ae9a7a5a81ec4dbacc280b7e3d9c6bf15586b46077945f373eb77f512b8aa68e9207af9dd0971d0468e3cbae66f06ec86714111b9a4a6874d81067e36c62bfe90fd365d9774976b84b9359e539c9d44fc7b2034ab39e84bafad4d508e76bd648e0913dbc29606e93f50bd05df8175ffeef6d76e6dc031b15ac229db558447ac96c999234f626ae92a452898488c0dd4b7697059d74dbe2a7055148fd8152de73724df325c27a013d6ec51ea785e89f79fb2d90156e5f7fee774a9d7eab082e392700196554268cef4abd3966b6e42ba00966e20f16153365476dbbfe5910b411d894b1ee529989db83447b95956e6dfea4509e57f6322a400f6186686fe0363a3e59cc12784760aff77ae16427b12bddaa8cb2f94bc382a334543c69b17bc9b0ea0acf51cde6fb162bf412d93c34470f6c32986ad29247e1e197a37635ad0963d24716bd6bad7576653e115b8a1813a592424b31132cda7edda7106b4f2f9338042e4024635f32b16ac3e18cf33c5a9a0c42a2ff4e54819cca4250d9b2b1fdb9a00c65f816e5ad20d0c4bb23b3d75a95c20f5252e55167e6c842ab640bc79596d8f9c38146cc07b011108a9f10eb985ca0389fa5db52b3bdd69f7b9b53f1dfdc2b2ba43abbe87c3474d90fa8bb94a15902a9c803d7e16106a12b7a018fb4b206f3c9681be65d2628c2cb4a44cbd631ad0f9c25f84c1f291692028ac00be89770dfbe630f375640cbdd82dbb25ac1bc556ea61120584b7d5f49d04c44724ecd18f031fb1627864a1d8a73cbdfbdd0fc89bc73e34f5284e1d996dce338a823541d401f00c67325dd84c30e8a43b847390b5dec231f066143222ac0de15c05a0b845a2084c8c5e5e561993f9491f639a0a3ace2dea21b80db4974f0c67dca6d4d38102b73aeaf28f5796584d628a7fa9eff266bc35ed213b2d544132e8179f2d1f4094aef429b053bd621c8c8fee4d5185ba3af91feec82a5588056b02ab4883722a815de309b073c05d281e33fdcecde25d66934081ba238b70a6a0988a065594a9deffbc8131366276a971d33c6007e6e06ef2a2e3af1165e944e9f1da0f55ad2dd4848324684cdd9908490a36b06b2dccf37bc017f1b5668d7c836fa0a62050e8fce7a2b86e4cd6dba017b7dc9de456ddbadff5f9c4f2b3baa9f25268cea3a0961bec2594fac912349dfa602fa4aa46bf5c38c3110769bbde0550ff477d30e85d79f6fde6f3c4d480e49faf9e0661b92f5d22a30a114f2c94f18e4ae75007fdbdc917f98931d866812d0c98e0f1a429fe32d84c38a6404cdd5835b3bb8c659238927c7994971144a4742f9f766ad78bce31966b5d96aa929d595fc94e0c2fac36cd8173cde096f86205826f178d35d97aa42da7e8d00f111392f5d88b763d0db4f1d733d3996023c94128edae4178d9c38da21384f3af39db8b9e1f585387e633f58a366484bba60394cd1b53180adfd427f4edf5a770a9f0f1504d10d141ad6e021161a0562be7090695051fbe7b30f8b1000afa9f9a6947a2499cf19f00d1240ec0076e3395de9c0d86bd13e9cfeaae506ca8d8a8052ff8f89ff952bee2777c873fa7bdad9d0b1835f04138bf6a6cccb3ac61dc6e1873d2176a4e1f4e2588716756568a3767eb8737b49516fb45c01419a21c1b329df3172d62dae2a5a991c8dbd4bd7dc1d639f1cd00c31d4aa65abbe9db0f4daf43a7876fbba005ed38cf2b29e87c4f288a6b1043d91a73e17008a0e4e969e2820a6c99c37ad2224210b381a5cdc5d1d4703380c118480a65569fc7d6d000265531256543aa4b2180b604d358ccbf30b5a66ec4a3ed09afa4b2c5b2791f22063cbde1ff2760f5eb7477555c1de3e4f4a4f79135866af9f5a1c4384faadd067f49c9e569ebbde6f4e9c56ce82c5c1cb4e5731a8e934b1fb926a9ac728a6468f2f645414eb066e6234d9a4a0d5dc5cd6c01abc4aeadfde3afb01bf63f5f320ed61f0c6834a94236480e1beabc7d29f4fadbd4813d06f33059adbcdca2c8fee5ecc93d37a2d91f89e00497042a286b7a7c77fd86254b9674a2108da236c32fa0674055f8cc7467f10be6dd3d32361b855021fadb28ae21667c51137ef3c3d718832ec61d92a16ee226531364d11407bc4f1aec106ade92ee2732ed85ffdddb2e16ed5e0fac5ad0374f43680136162677ce66299c1fd13f430b5b2158532c14b98c2fa3845794dd7153a1385fd9cc422e94f4a5c788cc064035470df0a9ba4ca4ffe273367386a9a0d53b189ff020fa4b397affb30ebcae2adb321927b2eed604da3f8c6942375518baffd38665759b0bbc767340a301a1811d30ccb4009f6e0aa4c5bb794441f2cf90ad917047f7567f4b383f387f78667b01cbddf427d2e7692babc2f8d68610bb2622cf5fa0f49f3d75a65977fc48f08c9655ce6b11289aa3147e2cbb70e08cd7972e125688bf639c7237f4b850e365e899291c6f9927cfa673a76ae111e11e0050806688d0f238b99fe6f33f7e08d5237b04662fd4c62e1b5cc8141689cb332b31ffb7f27d349e172354490197b3b286e61250dcdf8da72d635cb6dc7c756ac357c98b4db34b8733f6269b881736e5565ae0c983d0b8434f20fcd84bc6d21bf9692f949b457e000179f93bc2d8b5f89217885c3c987caaf337d2dabef38ce3d24f6566f5a516d81d2932524faf30015a61850270ef41ac63eb7f65ecd7182cb2f6619bd2a5e8c704da1ab18111146505bfc0a90ae08eaa22c234b9194a9373dc809276b6fa959fb729078231a0a0565e6b26997dcb968e65f0c82c4675d1eca8ca3bd9f6e60f4229d58b452f4601fcfee2fad705cb54f49571df8a6cb512fba86b59b5c7aa6661bd1992fc91af4f87d1216d72ec21f8197aa6eddf2b3de8adf48fc7b01d35ea120ca35b3cab4b1a71fd4976e664e8c234c5420ff7e152cfe6e8670b7bd0ded6d0c6fb63ce1ca38223c7ee66aa2789dc326b15a354446613d949561beee340983c96df2a63f1a97e21a543f6b62000c3ad1a1cc39034bafec193f7e4bcf6183089582598832f46ebcc272cf1a3f82ea816a3f587c8b08a0d7be2cf15c17acadbe4cdfef5eb08fbddff5e3945cec410f97e9c6d046de10e37947dd55c0ef1c6208760aad8fdfd4d553d525e011399f0b665967d47cf878d64320f63fb98d9a997a72d153096a0cbb59a7a14d531392dd4e185ecb5e55cdb058dd7502943aafcedab84b336cbd3f58ffed6136dcffa45208f9c6c6024393b8aac4bb7aee8887e7190ee4a0ea83fbc7fd68de93977e4da7a223293c23a2ce222bd977319bc074ebdbbd62da4e39a79ff5789253285482b3c7a86520bc72508b2c51b0b49791c81607ca6457f7aa492200b400c4c2a33ee54796d63d9cee6df36d1fe686afe17939285d561151d6903385be4442b656d3e55f18674214d74c449773ba30890b23ea5b34e0205ca43107bfa0422f3768129f7886b165dab1a6c82ffa1f9b76f79711af2cd7aff608f4cdf978a1a20eb39a817ed149344b9792862d05cdfa3c099d726f2b92e8b6868743412259d4ba107113f46811acbee28bcb8dced3ba187f25484d16e486983dacb7386736f411218d069f01a0b2c720fb939c296617cb5e2222fb86a79ec6b2be225b632eb441b3d86971c656f74af339eb36906dbd92085183e16c8743bbce80a2702e3298af8b4cd5e695c0e0ea1ced172ff4ee9c30d69684f746d40992b1b60b51df8af79aba111f965e102769d49012758be5f4864844bea97d190cff0905d78393f989c57643fd6ccad488ef311772d0b1905f33ad020d557d4e5dbaaf7c21bfe1b819d54fa7819b0d532938a03ca09c48b071367646621867160b1efc81017f7e926a4be2d290c32d9e60af047020fbc52a11203e471f55effe251193d6a2dc336e46e771b301f479a901588d81ca64a176bf03db50e3b3ef711b1814a5fa28d45758da5550e707e9f1433d632f1bce9e90055ea4b0a3fc90999cdce4d7dc517e47c8280146aa268006b0522b73be21ddd4b1d702ee882115d843bf73fe3432868e8ffe11be02f7d2b2771b36147ea644d0b5da75e3601502898408d97e3dfb75fc35e6f6d403d0434e924634f462aa16b811bccd24bf6dce1aed87767c7545c51f8048060ab335ad34f35aad21cffd8669937ad5431799efca307840cc7c6998f71ea452475927b574ada5cd824edf261de11542216105df44f64a06e8c479d7d5d75950ef3d1749d33cdf97d8dfd3ac27a64a0463bbfeaf5bb4e4bc0e82f447b50e70956f7f75b5fdd28ac5fbf3565943c927eced29ce890389be21c0b7e85ec5478eac64b689e60e2cfae54c0ae24df65ae5df594e54176be49e9e7b1c50bc738b19c4b3a5ac303a89fc253a13f8806b84369a6cd418a74440213dea6089c4d7b309da7c20e02e04f28fdd90164c6027b20d239cf847d8161a542b778063e6a75215344c83b127f8a5c45d1120bea6fbc3cf85903b3b07ccbaeba6d0b27b9554316fcb9925b0e45a6be3cb43cd1a5be365cfd75fc968ae7b47397c862e32a8d4db054f405f93f9787b363d9502c0ce397bccdfd4ad08f7a897c53273d00122d551173111cebae7b5cfb921a524ae27fec1f39e228d118274d36800aaf16e5945495310c6cd72ab442df19b36466530f67db9bfd8d5395914e12a63a33d51f7bd839fef0700a3734982a7ff3f9bf3ebd49c5374fb6181cabc3c1928691c5b5406bb30b4e5a4902b3933fe30ca4ed02e207d3012656fbc6d46cd3daeb3415c4a4a999ae6fcaaff2c8ce65275dd5f52a9ec6710e8ec1fd066eceddbedf276e5c7c83ddd9db170897cda4a3f65a82cbd9caa6c1e06cbec3fe53ddb71ff82017ed86f7efded20bfef2bf017d47fe25d16a97fb1dc4224a8dafab4bc199f6503ea12302a8c3b51e440c2b20e194827adae1f20766f1b6d49d8e664eebb53dfd79815ca5b97e801276addb99316ace0dbb61e17498215b87baf31853eea78ef0a3de37e272e6fdb4e8589e7be9ab6e6df2808ced61a66ec0a977577b531615767caa0b6464e65ac8395d74829a9364aca222ca12f812ba926065890632ea72b4cbac44ed0328d7f01d193b3f75c2ea4784ffaac2331cdfffdb0fb24134dcff6d32dbb7f5af5abd1c3bd0f1c22e8aaa06a3b3ceaed6010482cc10441f59b1374ad6dc8c47a609dfeec6b569d8ce138decc28baf7a52f85504fa13a3495600cd62f6b29ad0ed57cfb2e98c159ef0408d3742ccf441fffa00430fe0279cd5a49fdd9c552bbfde8c0dbe1dd5db487d6c8061332e17f735bfc3bb378ebd30cf0f4f9467446fdaf6a1e4e28dc3353406ce645d59f4b363c676799ae6ca110ead8558ea91a144980ae3baee5ba8ac6349d0cb3018c49d5c518a2368fb8eadc7282c009f1429d5f9babbc2b578cce1616c3eba1f7db14f6ca3ebd0de73c6b42af9f476cf535b6a84d54b2f7c16793e94b1f84abb72384808f364d404613d8d8dd5b87a1dad39594fba46c3dd482248f5df9711257325a60a2cb7e1d3475214d5462d4c9eb59fcc74719de1f627899977538a39ccb2bfadcfde36052b700ae10554729a69a6dde49ffd59397b0d8245bde67581e481e3233b35d228a1603cd00aaf1e3141eb965a41061d634b914369d826d692135069b04d30e2e778d7bcf34511cfc6bc6cce748ae27410caff53692f0d501e80ec5d3d4ce3e5304f2e273894ecfa7a13e9fe6e340b0200a35d6d22a51ff88a15b76860b6c852004e9e385d24f002e34f1f5529ed2ed8added18824975d87d758d1b10ad35f5d7dd667dc117f9b44e30c3cfe42c977281e300a0ce7f68eaeb867980113e0f1994ffe02dd19467a969f9d5d4bab5673783e0670f02964e5efb1e96d95977d9e417dea3fccc2241f7ce2c4f76b8b2ada3bc76de73f7f4f0133176ec55ded3e7de8e065d7d6b037c736d8d1020ef6cdfd294fad21dc024f0da62e8280cc2f9d46a038956f4576cb2af04b34e080f94beb4c2999a68301dfb2efb05f178a3cb45edfa8962c7c643098cebbcd51c80066d7fd6342b12a6840047173d8ab12d3f302843504189cc70f5d51ae234c3d6f6f9f19ec634bf14154161710eace9b102deb57b91f6a0d77d7aaeeb49b7d3848c8fe2df8bbfe8cad06aecad20ec3bc28a394b1a740cb4ba9c74eb40423eddb8cdeb823a915502f77b076dffdb1f824c4ab014f4ab7ecb9179a4c591f7efa24c74af21b9748eecfabfc00b42bd1da297f4607ae9186bdab1eb9c2298e48c735662b1fb601e0606fe598d93dc173fd53d43716369863aab58697b0dbd74e3e3ba5c4ccf0d3850236537f839a96c1027cb871ce72808e2592dd132c22b4ec7af153b1384a589bec8038cc1087cb2f5e65f5618c1240eaaa56d53e161f62def392572274c5dd2bb8e45f47e3a5837ae4a7431c09213fd2e131efb77d979eb44b39bc27daee37f5021d51c33f1bc8bef6a1f3ea4f6955ed3fd4576b6d87517e61eb67c8baeb0e6eec9df825aea765c9ab9e00a29d917e6a9a33e7e92e1c18d1ad5f249a77f32e573077c3b614cdb8ebad94c828f0b757ee3eb2ec80978fbd95f10dcee8950f557dcb283fb0880b27a7d5ce1c26f9fa0501118b7a7430afc015276284e4e742aafce1a274f0e55df190bc640c4ff69a5675d9e85df5afc25ffbf2ac7da79707f85bb92ee21429dd566c61f324e7ef26c9b1b92d8beafd975fa25d2bca704ea7f927c12acd896ff0aa2b5578bf30e898e6e68ab6b661a1a5178eee104621d31916b50bbc8d206908c0d8d9d2aa7b413c4dfc66c04c58b06f04876eecb4d983d33b5a9cf10a657fd8c3d7ba2a4277002424f0a5ca8a0cac331a1ce1aa7a53c25d0bf5f08bebf77159320d73841638dfe1a39ead2cde6f8dd20bb1f6c321dc1390eb0c86afca092e81857abf5bfd3544d58a4180b09d8fdbbabe66fe63db76207d06b35543702f29fe2eb5ca358e6f4e295de76a89e93e88f9259ede7dcdd1a9f8e942e2c0c9642f2c09d8249384a8139c5837d5aac23d9b0ebf3f76acbdd4d6f24177aa8d1a9feace8f7044e8c2a8b15635a4d4c10fdf5139f6da28e9b4c8b1977a2ea14c5357fe98bcc690bb5e2fcf0acbd6e3866b2b238aa6144b9f575eb42ef2f20af3256080ed4251d5d172a6df176e408d6c41679325a9761e63e001276e243fd2f737827b5b814f09864817a46978f0b91d5b137da1e0d1f44721a66e14c1f3170eaeb874f976cb3993d5f69da27371ec87b29c475c664d489e802e087fa5e5e628406c7476d667f2c927341354d2f7de2929ccb7e0e095d4671f8ab3f951aae0267efff60fc0394d6aea071b1ec7e1538560d9800b43fa9cc60782384034e629c527859f7cdb36f7e70a33c025d17d21b8c94f75014c06007e01cb8df5029bc738c7b62bfd6be066ec18d4a279460100ea68eb860a71f5597ffacf3dd239cc7bfcd15af4eed6b2c06e8406e9dff6c4e1bb6b40a84d63d67268b077458c0678dbdc3c47f5fd5748fb09938a42aaec7dc2518b0bbf8b46aca162295f3eed5c5149727c61c1e2bb4d39735e9e857b1f86c2b1478f02b37f029ed825e6b7cdfa490fbd9c4495456d3f4130a1b05d302d57a1ef906455f7e5d699e14ac2a89b1170f6d0d331ee9cce69014d08d80ead5c44c317f4812ffb30ab638f1462337b2902b2fbb6d2a632cd0b08358317664fd4983aaf534abcc6f1e1e5ae54c7145f0106cffc8b7bbf887e7e4f5fd43d66198e5662ba8aebd06b1d452ca4a822a708776474a06547e6cd3f985c52f6a313dbd1deb0f39949825c1d0d29c0572e0563740f27b2482be718ba060373aa49785ec732bed3f8afbb4a7ae87c3f053678dda69806698f250b9a1811ae4a9fad01aed3734a51d5307cf3dd4d749bcc9e189fd94ef48705f28c62a70d0086d8d679791f8568035b36574ad4e62d796c7d7fb171278251caec37e7c7ad6f8c2ed21d0ca198fa126e02b000c44adc99e5667d21ec2376aac46b0092be19d5b32049b70530531a77e3271f8b22ab7370f5db9f4d17943273a27eb4be306ddd4189757cb9b3dac3c93bde1d692616f5b479445c4465cd3263c5ef5d311665ab3e6b234264a2a4c0c7820e54208225ca1671f2550c8301698b1f7c8fd4bb0e8a7e9ef6cf1819bd233e4935bec429c49fef26751440f7faa8ab48925ace206d650628e0d0f456af3041afe6e587e0288b745c4084b59e2998b6232fd4e51e47342072e751befc04b76c340810c2d17bf270fa8efe085afc64c9d29aef2fbcf8ffb7fb534925ca9d62b470dc6b422fa82d242da32e82e49da69c6a137fe146818872de5fabd62090a3d14cca37da7d1fd6f51b8e10bafd7d36835881795211e19d6d229ac9276fd3f7de087370178d1074dfb95497d63b635456f73b7cfce63fc3ed353fc6e01b5739a0cae35721ce25f4ee1be7421ec81b3d6d61626e45229e0f60ec84fab9881960640abd0ee5e3ba1ce2859c74e9e715dbdedd22b1906fc7f2230253308cf5a77ab192e411a9f5d92744984c2aae5186de78b5720f73ed61a04bad409de3c875141c11a4c48d92aa36bab181be6b0fcfc5eb3eb2c7b302ab1f03792b41b9c4c4efee825e6da4c1c17d469e024180f3ecf0c008f908c8d5b3eea62168f0b4069d9b06d8f32a726d136e4b72de74c3c8c944c174f1a024e06fbed70a4dd977fe58095683275cc9a049d4f728eb6291e0b4b376a1a0fc41e41fde1f4ea3fe96b5cb76f893a4849c46a977c983218fbfc1bdae560a755dba4848f88fdd0b9a2a5eb1dd244af26e716697b06ae2de5675a459acf33560cde4148f047860fc7032154ec0af01a3987e195404077c3be6e9f0e89c82b5398ee63b59ad0d13999e34ef8c12b755974302bfd62328d6630928dec77ff0362737dc10704a71a2838f74888915df825927a547b1b0d213ff6bd35b69c3a6f9dbcc656644de77d53ceafec3df55e36388d78de57008b3c5455853f367b61448bf3e991618fb8d34c34482444e3db31ec7e6851b43db88fb05f9c729893960d2736e6ece9f64ccd5d370bc6622777e094dbc7edcaa8e6e1f7616227074d856ba40aa764132be9b91b77b837187e40effbe57d58a5e7c197b4944260e1b6c71f0fa208ed9650f7c1ce802b9a52c65f1762b05845bc8873370ace1fb1bf487d3e1a548d4193602a9b4a7b585a7986fd679670c33810cd0580e1ea846710905046e9a26eb8f369e3c203dc1f62ad62d39d0877a13614902d11269950233d94ecc8abbf8aa970afd043ce0c4e1e4348193c0f8550283ba99df19c3ff371fa338a3f6c73f5568c098733786cadfa4cc4db226ae7b887b3a922d4ba1af049f9fc771cf911adaa4df1bc3f71b89eedca9fa542fa4a1e03702f412266382e1dc6015646ce1b5e4e9e34405be3c66cf5880b69b0feb748d9dbfeed833a54cae1ab0dffd60ea9ca405d257194d5cda121cb80902c725d2abcd01f04fea20cd7db9ccf36451a022d03a5d9160a6484b7113ce5f0d93ee9c32a4eebe431c98af9694457a6bd6cb5f905312330a62f922f3f312baf86ea479fdc0f6780a51bceddc4d5ef6dfec0b45b60b539d86cf63c451ec48157aff7e3d7167322a169909e16323c5a4e0306f6e318ba2431f75f79d02a91d28635bdf7ccfdca4975e6f45cf02a0b4964d823f2f295876965df25e9dbbbaea43f9ace80a4174121b60a908de2d644fd9277d00acda0ad8a1426eed9c8ae59399d4dc351f2cf1eb3dae4be11795f6e23d0387ede66aa85208e0bff3802538a16afdfd0b63f643dad1734fee58e0e0221f5bd0b0481f60becf980b3b247cf3a877d56f0a4b34d37ec19a76d0206e9da973024b5a4c8177f4ee13987841b3eca701a7a0c7eb756bd7f99d85738204860b5ee44495a867ea3b077408621ae10f9c0b17fe99e3f5c9aa582faf886ef372f16d8d3d15c77221a347cd11bd5472df48bc70ff0a8179b10026629c5112730e5c4737aaf0fadb6dcb6f08cae688d73ff103ce4dc0a73f17c0bdb665e0cd1f44d642b3dafb37cc7c1689cdc34bdc7653349f4f86595e0641a104edbda8e855ce86116b3627d5822ac65587a6fb6ae01c7a952bb54911449d3fdb0c0468fa689ebe64e3382561b22d28f5ed05099fb3ee0d623269482006c337387535d507cb0fa0659fc28b81c70d791e0ecc8084eec8e922af72aa546e98ad67170f7ff1bed811615242ef920b1783108e347a30f45dd57cfc5ead74d624821107b8dcf4c37fc30844da3a7636e0b76cfaf0e0483661bd52323555e8952292d15617f30090d5a6ea40719f63a56b56d44e43efb0d3811ebebe27f1feabcca731c43f20422835a62d3965ceac1364a665d1f5a92e626fc22a987e2c7024b1a95c098921b9cdc7b2a9449d8656f08ae3ff1c6e19075f68a4bbd8ac808ac5c68074b41c71c1c7c1e5b63c31e1162d40a75da25314016e73cc19950b906133d73d7edf131020d5c4648bf56085af395b4cbf6771a9922e5d7c25005ef014136a472555bf851e46c7f949006adb05a5779e92a7067e6a817c55af37edfce3646bed046eda4480bc3cc9fb8c5e7c5d79092993efd22959e6cea9b458b76683887a02ae40cb1b96a5f113712b9b98ece44695cbb7405092887f231f92aac93540f0e47174ef73038a3005f36ed65fbdcafd53b766a6eeb1d147a134de426a8da6c498315f85fd46ca95986d1ae83d972115063959a20894d4083fcc47942cf21e509e04d681b936619d2926264391bdc1cec126706483984b75f3afcdd95662bc8bc2f6b98057211e93431a7afbd643b5440647929bfef4faea610cb366a7b30e4cb842ad6cd7249165c3f5453ee12630c4085afd7978fe6e8b9c6a0c68f3118eb983e5127106541cd11d8c03cfb0879d22855e05150116c576390c70510a24000d0d0801a23209cb267b14d2a58749743c49bb12adde3cebb69e1f67832cff6a3721ccb5244aa45d752afc2b87b39c5d1e4b418537aaf2903b5bbe8014ed1f40e24ad459217075f78cf661c4157c95e464d0009e82e073a3b121761dece82c85b58c210f98ea3fe192f25f964483913ef0cbf856cecba3ac1639b90b05b3bc67d1d3d984ac506793ab2c989c1bd957eb0378b5556b5e19575ab390f5a0216201ee47f0232fe357d9c99aa25b33ed9ebc2c4f634eb4617312c6bde136bbf10cf3e22467d5b555a1d8c7f54dee43c343f9ba54aa640012b4271535e36b012e4c4aef54cb85d43126761172a6b89b9735ddce90fcab19d2238b49fb14a32aab750889fbcd8031a0fea3f47105020e295b055cf8ad788633998daef381a49adf1e5f8dc498fbd629a69c5ab87bf42a06a36c8942848100fe847bbcfc31f0f691d22e289996d2bde115ea8acfe9ceaaff34e1111c2f702be699f4ef744c415389c641807e28eea864fec79423d7e075a8a132253c5edfb924e073dbe9a302e0a68d070fa35846dfcc49c7889cc083eaf8838d864f9b5f4398e6a4d70d3a61dd6ee588d44d8d024b8ff3a68b0cbdd946c2d3d239cdc56f5977fb461084fc0a7a096e89a400f835369ae2279d4db45af33341863a68d9cfec62f1f2990412a0506bab338ed7921659f5c48e96e363d9b8301c4ccf7d6d6b122311a092d4d528d8dada5e2b47873459e0d5653292293835b4ebb10eb3c5b98a47e8526c6a0de49264abfff68d68cb5128dc69f54ebb2ea2f8cd42e43d73cef029ecf17c3fdf64327ddf88a7b4073a05467f3bf4420ac53a6bc5ffe35d9a448fc3d21cafc07e68bd708e05e13d52a71469016bf9d0e259bcd2f8c55dfba71c0fcd774d7aa88f888b7c0d5374a785a1a0243f63e32bb77fa3378b63fbc8dbcbcf72388084dbe64653bdb37aee48f493cb3ecd5093d62173fc8177df4694b0d0c496b8988aed6fda5a2c9ffb5dce85220b874af09c8b670b777e2fc8614c226daae576c0baf629504bf9ae842a7c613de6388054651dba4136043eb52b72a8cbdd33428dfc276506aa531173920ca755c19734f06d8ebe3801d0e777f04d172f91752542cf9816de7b571547729e16bfb5b11af19b692ee3612e16cb46beeb6669eb4682e781b8dc5bca4dcd648911f38788bd85c6cecd3953a7ef73245e5721411c690bc65a0888ca5793aa7b570810cf6ea6a946bfc865a8b65ca81727b320169e1b62aa3ac24f03e67687554fe95dc668890089865ec474659a02ef132bd88eb92dbe627d6920aca8f8f536fe8b7e815e4cf07988dc3ad6668f498cc3f597fe91c8460e0353c818ad97df6669d35161882651fe57aab7067095529c8165c406c8c4a8a664b8fc8f81abc245f8139f6f23dd32c7915de53ad190ef31f48ad033b98e1104af663e50850f49106d62777399b3ba29c893a3511bdf24bcfa62150f5d13ed239baa656d60fb1cd002775b51837e8dd413dd4f54684a7dbd20d9b2dc47a44a268c9d93a656807525f75c6331f02760c4276e4f0564ba409a65da742d89a7f96f7d5273fc258f067eab6617d4ce39a3684967753818e65f54d42fc40cb838b479a41c309b590ad8772e41d61bec2ce71be9e620e57897a3acc7e37ad423122a4cc676855ce0fc39606c03d284613b474c4ece6927329e03539dff9c5d721a02d630d441ff98bf5054bf3f81e9ce27b81263d54fbf59331b5d896664e97ad65fb0de38d1e57b8c6eff57ac1fae1f073d0341da894075a0bf24e5e49e911190bcfc8490abfa4744e6362d33ea416abdd053ecfafeeadc6a01f461cd15f2ac1f7a2733d9bf212ca0240345c4f81f0bbaa8d5cbdb250d443f812ccde34528b7ce74e75ad830b5fba5541574f91ff46a41438b13bc31bd829110592b65aabb257cad271e3b93b51028d1bc65b0a8b5d00b1f0600dc8debdd2326241bbf5e4823960e9226833e36550da075447f21236ad89c3c85a4e4bd810c7f4a84c2aa7ed81a159a8eb4fcb498b490d50673ba761ae597166d5f6b051b2861166b3f2a9defcb66744661043b851bf17c29f7c12cfe9e6c8ce8c14f4aa57493c218975a74a2fdfe3b60106189b4ca39d2dc85c21d3788a5dde309d98c2ad2ed8941fca7c795b97b52f7ed9f46948d6e96e975cf946c193cf769d59f1fc9020070fbeb9c29859b04050059bc4eb0fdab74320967a67eade87fe8df635bed7fab801ea01b48ec474142bc7fbb5ebf3e38b33cc217d71ebbd63a1f2e00e961f126b3c433a83b433c48accbe4832ad51c14954703325037afbcba43ad71a45a1197cc5214e4e01bfe22fabed5a9cc9b3bbafc36e120ccb433b5113a83b6d34080cc71639df0cb2b82cba481a68fb9b90c8620477eb99431ec0bbf7cf5a4f07810d9fbd3ad021106efaad52ab26f577ab8a18d8267f6aefe636eb228ab030911d5552a96fffb68f13036582ab18026e617f3a626d95941756a4616d7480d7cc3975c5af6f41b2abb54d44864a0a0911778128e5c0679d8ca130a0985531f16b00d72141e8868ba0bfa16647b923846887008b4cb08e62398b97aa62e6321a83b3b23fb2290ec4d8521df56e12eb10c962e2f508e620fee83501e6bbe304992caac1403d05112d35cdda7e666efbd909230e9a14671a262a42a03a20c372ecc0fae79c8adebe6b00a21840d19e0a85f9797137a2caa556fbabd6f6066e28c519cea3e36b6dd4d6d25334040ee1e84fb9481aa209f086ec096e686491b9e16f5dee017036a83a6bc80616c1fb43133d7ab1f0e1f96ef6d64bc3204ef65b7831c17e2c3f98da154733ae41c0b9915e15311555cdba1468b255640337e1d9d9cadc7c4a9304348f11e1ce6ca54a98b697ddc42d7386028df2c9274f56c3f4ca61cc11db75ffcdec879f8dc18cc30e5e9778096f75edece0a845fc71efe2a0a2dc1518dc1f2b02ff13d45d84a5aecaa92019844eeab84ea5e4eaae17fb39f56b4e333de06d2b68b4461666ed430560a0b7270a0d5662a46529888d31e582ee7ec50c9f7406c2ecb4cd9e570577786c4395c31dfc6fca2609793585c738379770006eaf0a28773f431ed4a573f902be6e4ca543405d038bc09ca468b0e2ee4888bdfeabbf3dfa94923662adce8f6326944b3533f0af8040d6aa1cbaf70e8c242c1ffbfef180785d9c092343445ef977264fd0cf7f47987364d8f4264768fbc0949ab772b943d55065b8ecc1c8a6ba0602acd24b36e58c128f509fc1737232fb5df552c0a3dbc2acad08c9b9ef6f2758b09ae21becc381565f6baeea53a24be31c9b9600a49fb0767b24c9c58accb348918aeda537a4290fbd5bc7ff2ce0af252bbce31e74d5bee9702db8324204832b7b10b5af671d3b6bbd1c0ab9ecc19099ee39249e5a69120f61d125c796a5bb02af64d338bb373298cc6392d5f55c510d7118fc6f3730947c3dd898ac4b1fe3cd18b1944330325df93f8a2d83c952588c2561df96d4810a8e21e3099702719fc8f7292da4f4f70418b31c2c65b5706f94d3491994f4334a3e58abea1d4e6ee153caf48449f320fbdb446ea4f67e6f2ac149df1633aa7b5e519005a5e5c2dc3af899284c89bd7d714cf1a7d7f1287ccd2530af9a593673545ecb5fec459db7840936d2b421db560fdadba51036e649a6872d5ce865441c86f6b4a052c4b00bd09a690142aa9b6aca8efbba86ba5ea79d0ff9c77df65234ab8417ea8d574e522236d02486ca95f4e55e061079997ef2b3772d394d2f46d5ccd438c795d49af0d507391b53191fdfb5c245775f4fedeece00affc690d10eb9c86d568e2366fe328b6bd1e83dbc49fe5c0752bbb3522d3924dfcebb3b8c0291bb8dd249c98b636bb4da424d0566b143c5d7588e64fc9f2815923533ff496933f8e4ad9c6e18091dc689122629f2009672454fed849f7f1ed648ffc6ea88cd80dccdb9585905eb34fe37ad2dc739f029745c3048ced77aa5b93fe8c9f9a791201b9f09a735b9f6eae119a88f8ffff24b99095594649a5d3e1a25fc4cabb631a95afc389269b72fc9571bb069ae1428adeaf3cd4885227a3129e2e5a0b949eae71306ef15e3c1e2cd4a35154bb4a241dbb8008a9a475880f08df03fb6dafce7795e3309ee37a3280101c45239894280418ebfb4e6bbadcd4fc3bc26237e2eda47a80a90c1699b7c11c263967bf60cd860014b9e0e2ce023b8b93e528e7774cdb1ebb21f0a769c9eee72874b39d46daf9bacae8bf7a0eb85e877c5a19538f1dc37d2390f4618e371d32921f09f53326089dbd0c7e5c41af0dd45fb9cf465e6b8d3e9fba381163fdc6878b5ac307042f7256dacb18cae224474900fdf8ad1cbdb2e03eaaa68cf7df12ef02559910d4059f9706599c832c06446cbf484cecd9c396033becd059aa2bf8b98a6d6b9fb4acdd0981b1ed2018236e0cd209229fa70e9bdbae5b3a69168f362e620cbc42fabb711fd9ed1479043cf46d5acb3ea97c22420e2055bc894f500a89d1a73ecb75fe5ae98599fd31dc38f462ab9870ff82571147383404383e44f61ee241f7c04ad24be5523fc2bca04ad4571241f2df97b41b4039889d06f5f9b4c0bd82a95e4544f03b69c4f14bc5a774d7dfd55d44cec2db1f3941a4f98ed493ac7347bbcdde07ad94421aa84237a180e9c45f90a77cbd974028ce294a00a1d688c3fd76054326ffa794d96000271ff314a9ac57b6e25be327fef5945748a0ba4e4567ca936cb4b56935379a8523377dbf0d758a0c4b34b38f9d502dbdc4efee805b3993ebcf062f25c15e3d49e8e381538b16b095b3cdc5ac12ed4d91588031b93a8111a4da82078a03ea569197ae7157c00a0462660a99068557206cf00796afd25b57ac9c031b2904486fd2cabfbdf6310b409815e48e17bff96a0ed2e87ea1d2d549f7b9557d98e2e812d460e9e75c3675d1ee00c70cf902e23d2819f8df6bb480f445a61397031e3a781041ab7c4daa55ea2723358a91a33091a44c760346e8d49404c9e719bc3d04f22e7fa7cde4c0f0f0e5bfa01c40043ba5134a1db52b7266403c9fad0fbdd91e421b6b4ed9a3abf5d456aaa99b1441c3f0843bd211b6e62fbe57ecebc7c69d9d34c4478a6fe588cc8fbbca6aef8d997e183785e2fa735b3c61e944818d8c9fc52a28d35a992334bdf25ee3a35d01d32e6bbde7a9606a62d10ced56574103e6cf8b044e19d541c197ec9eedc2f85c7bc77d2d78a099a250d6bfddbd232fbfc24c011e2af655ea7616308be3e49e4ad7e22710d55d2320a1b50417f8326be1ea4177bfaa7e836d144f7379fc243dce85c541367c27d283da57b906c101f0a7f8e75f4b14577fb1214eb46e4ed4ded92f5683ca8b410817c1fb4e98901813f4933c4e7991297c6195d687762fe46b835fd5b477a0238a972e3d1cfe882847896713d6cd9834e1011c98d34cb60d793d77588093e4fd714aad1d485c145b01d3e28052d558c413d943b402eded983f45fca92cda877de1fd782277809f634bb8eb52a83dd3d35995096688f1ea6d8653c98b997f55c6ea2539c1f63779de49087be29bc6071cc1aba954b41a050d29f804f028a1f98ad9ae81b7d6d33bd990ba822991458fd77291da7a34abc9a3651d090558e31c375fd209aae2de668706026a3f581d8947f9863ff7abbe873df577a58792673736aadf1d21a95c04cc82a15656815f56cbb072a509b304b728273fad10ed71efa6466057d282caa7fe2de12e14e24f71e13160ae93c7a3d8c78ab32c5fd02c6991f89d7e7a9e665bcf7a4e38c2c8bc6d17a84e859c76ff13d073a2676e528a9970f8f8a73b2cd74bc978033c7e7f0d622fe2c1cfab9af1b027ae21626426eeed40923d73bb0562126f5e22339a537a700065f06275b4afb60ce673bbe2769ad129c7fbcb4f0d304ac15175348707b40a5fc6ab11b5cc5ee23aee919193e4746a6279f61c7dad42c18519b5ad8e68683eab01849541577e7b2cc27de4d522977267288b8abbbd2b5702bfcd69a148bf67693bbbf0719db10776580e82ee22f2f9a92fb183db12d531aba4e5f50370fd2a68bd128acf653e86ee602238fe1b2c98f0709cf9cba289fb928ce9bb1599edc72b2ffb4236ab0b5479d44f51fb2394347a1f95efae4f88e251c7b2a31d04a137e8ca937a8c0642f3a4db764a34dd1c048d3a3f8ac456ce763e3f5c14b639b8760026c1857bf754fede004da67a8445ee21ece4bb0fc0ae8d8d297e1218d479db1990832db19d72a8a58374753548682be7be40639664685ce2801bc9c9a1bf13f631208c826fcb9cb4965067c602f9cedb1dbeeec8bfec2d69534e922121d5104c5f7561d31aa9dd0e86dfa7d9dbbb5003a3faf406add8a68a81c5a75d1f730a03d2cc28be778f763c4b77e683603f025fb7d554198ce2453577a2f4553d888af784f262e4e170c3adc996e4e1fd7ae6f3cb0b6b936eb1d74b3cc53b33912600c7d34b4d50343b7561644e521882042e68ece1f4d3e42bed4989c09572222eb47abf049e81ffe0789d5cbe728b09477f5662591e632651f52fb1ca18383ec1c23547b2251452674f27a01bf5edc54cba765acd55c03d8f5893f52cd139600da248ff95257d1a5c1b384688b071eecbbf070c2b940acb2c60d5e7a3e7ac03253a5ef19d7f3fadf8d5d608533f3dfd8ce57f13f2681d162e2be4302269a873bfe648316bfaf306aa813a5805ef773cf5de97b48d99049dc78525fbc3f72c0082e7e03cd900d68002f1c87add89e153d4dc7c7e42bc405927b1b219323df36bc8b346fccd71bcd154bcad7fe4f2623c5a5f360d073a730cbc9319663771fb89aab7d6cc2921957d5cc850142f0644ec830ae1e503881c6061c499acb326c5bec829ff92979d8fc3515e074559ff2cd3e0a8190b0d1e71a31db035d18bdab4bb55a9da99c074a3dcb66f417de12455bb57a2c83f2e3092016a9ff0e7e9d098171f667f40f23c08da7b52eb00c5d4e2ff15f42e93d282ef02df10cfb0c624efde9555e282e85a145ffbe602b80d5872c958b567f2e705f58e0a3e5a17b6208f80fceab287ef42f79ca61a3b122b339388016c6500ef5bfaf379c5d49b45a9a10ad1916f47f692fc79365b84e76396f018d2dbb8d583803d077f1aa95a8c95f8ad6ce9c133fad4fc50d1b7744390014dfbded0625511f86da15a1da40ff39fa662c60cbf49b6ca8a482fb65b5dc0e378c72470dab58952b559e73400002b36d0f5b499eba92bb4cd7807b4c2ff4fee1ad038191b9b777580f53d26775a7460ef17b40a527b4b280d91f0cd38f4924f174ba9503c628a6430ec4b7ac0ef553468009dfcd7a30807f7cbb6f6ea8d9a9a3581d54cfcb45b8fd1e96ebc11e040796d4e8f77e1b05a74326129f675f95dc7e3d59f47004fbc27fb15c84fbe2bcc66945b5ca1761ec86c3c72a61aced7c93346c7745a4032a363f5d56fcbe3596392a024819bd94a2b9629d67606d1e17dcd0fb72e0e998413a5a5ca0202aa9cd50ce8fd6e9ec4059cc37e3bd48cc43aefd3d7afd24b861922b3c892fdfb2832b581c09b3c65619351988287d036145338d08a2aebe9a72c2c719ecff65f105ea3886966c040b42e030373174c26db0dab1599bdc22f6f83acdbf82a7b81c27f126cd02423cde2af62378789a1968afefbef94dbea830aaaa46cce4a296fc9ddf68ca5e497197d4606f02953da4b905a84965044eb778ee9ea543a2131a6a6b1f4d64b7ec738da27b9ecbc44fd02b1b49e284ced4f5225eb1eb77c85b38a67d8f1eb77185e5e6017c13557f3655a2dbfa998cf0f74836a33bf4124db2b2ccf38b244ba228915026dd737da86c0be3615a860035d5dab6b39dbfeae2c2c8ea8ce9ca844368a12a759f19476fbdbb02b573c977c0338900d47ea2a54d5393537401d9735bd207db55a6f360cb7aebfcdcc075dc49b11cfa256cb28d887b3aaeef770f1e3bc17e01c2112fa662ed1f9b7f84fa4e244118d0da19215285c6272fcae58324c39d43c20cd84f789dd86705ba8ba44c574c3162293683efc1cfe883d93a6ff6579d130822b199ce574513573012dbc0071549997db7dc6ca836bd9238970ffb91afba19727ff0634767d9a32b57802ceeab2887d8f692473d7a43f21c9dd03cd0f22226ce420b22b62f79c93188fe9ee46e1c1ff0f5821d93f062ea2a0da0588115d0530ccb306cc66f4aa63786a68b9e2b45d3297ed932f4d3eec3592e5256274403fff40ec31f766a99fdfd396f92bc080bfc659d2b91bef0a9de6b1f804281f4ba9d941c9445e0a3a282dfd6ba04cb94f827f581b456528a0616a300730433418023bbdee84a0b5a57540c8b54ce2be0f668727425382a4774b45e411b5bf1316f5c76f526e6150b5f96c03fe29378ddd8d1b303a5073689d4efb7ab221027b26684b38909368afd845e88753cc5ac7d3ece40dedad91537e1fc51bdccc5bc4042c11ec04ccbc4f3625388c4dae6e9f51214ef24807d45d75e1c0d0fb5c4c25102a9f84487527b02b7f2c1106f8a804066f284b5a01e4b2b516fa1b19c1300036b15e0ac130be1e1a6c2fab469e10f315eca45cac1b8c83194d4a9a2ba06af754e28ec0298a2004727aaf1a34c5cc60203de6d1dd9c900a654ebcd14099da02003058313a526fcfc1afb26e3a08e146611df1c0ac40c6a2bb8200c81d5b8d6f562ffe894009fc996bedbd176f1c14f9df333cff89bda05404f97055a17abe81f0b952a05aa2aefe0c3de7e8eb728c34ca1b75b7389d390199c17a7acbe1ea59f643ee302eea3cb8e4c3ffa43d7ab15ade5d09c22303e03f498e8f0f41f0bd70450824bc6ed247858ef61a026f2110a45a65a9d7fb76be06ee5082f9c68781ca546a8c150f95f11137d4d4a2bb73815733dbd1fa2c24991c6555229378056ceea0fef6cbb6ce66e4bc8897975d82234af184664bd6ea4d286d5bd35270e2dd5ad59d0edbe9cba6958563ee449e3208bd57db6eb5810556a1f6c150cbca901b42066dab6ff86b56927d263cb6d16d0d6b7c25618f4420ead04fb315ba740c091df2a05537d8a6d8b50ad8faf755b21dd1813059e3493a87bd4ab97a55eb11b28ad5ae3aeb4285121405dbf64527eae6dbaa8bbe669ca84a0e464c3549397480db3ad98ed6cea4d6d21372b898c9432823324667aaa8800feb6d4440efa255bb3dc57af875698aec023e35d37fd23721bfb747ba19dc8a9d31bfdbb7bd8d4a248027db4b65a0d32ac888e847bca00fc81289f6f59d52e3781da4fea4808e092e532a8f54666f75f860d4525004f8d9c7cbc16e3bd217db07000f765f0aeea74cc6f48a0e679ca881fd944875501f5638be3d3b2422f94e9cea1cf739e564662cef50417be9e7a7307959c1f5410a6715fb295b082efd42032e55c8f2eb673931743f780276a76be0757b5964d9bbfd8ee1f735456bf0659b2f3704a59fd8130f3b0b369681acb5d88dd47591b3b5759327f19e8f569f8704288b952f8642f4f36befa9879b972f11c24b61261b20b59ec3ed2a5e2a485ba0ecbf0957255bc8a84600a936edf36bbc175eea676eb49abc19d5f61c800add42cf59ffb12c2170e05f436415ee491532d54fc33fdcf4513313c185ed783a0efae66c549fd4092c150ce38f00be81714d958473faaf92bded6198401669f063edb5914f44ae3bd6c804f6e579bb80a373f18f93d6c935e36ee2bc8cbc4deb857a40c64befa8087c428552b7eaabfd099e7cf1b74eb9287844dc72a34eae3273a8f8d71414fac229226d90860a8b3a935622944137f54526bd58c1ca48c2c0ea4188147f961988b2bed27b56538899e789deeabb57fde59b0feba647c20f73bed9589491a040e5c34befe6d00c7639c6fe2ec6d481a6cec95ddfec23cceb71a02e2eafedecdd8cc452d788ae35016884089b5274526c1d77d90abb523df4ddcbecfd25a332734ddd8a4f46c695c256749712b98ac5a718f2b03dbc59b0a23bb6439d65ec60e5c253a0594b93cd63c39d51eef3f2082f61a4b856e84a0a88566db893b885bc0bf191df8fbbaf9561d777eaa41a7e4da5cc09898aa6907f4e01ce36c7086e344b62ea6f450a16f650780359196d29c5e4ff8a63920e6b08d0d34c9c53a45c436bc23cd895f8b105df71096af0c6cc2bc55ac13c84727006e2770f1e323f955d90ee9988f67bf212d1641ca7e4ce7710e7096aa3d75ca1714c14bca1aa3297f768be85c8114021635d8d80b0063d8559ae4be39e267e627cd75a315254259da8482226f0167c8e86bafbbc235d7d2d59a8e768d947bec90afceefc1208973e60aa499dea806aa991431cfee21783b7e764e83fbe9751eac42039fb16a495f0abcc03843e791c58ce0638c3364384583acffda4eb2530ccdfdcd908b097064b9e5c9c14956d30a117f10a2f08de1ae75cf45e8b34ed5b6c4cfc35bec452bba5c7ff6171d94bb8bbabc556cea318cf9b2b473e285b573ebbd9b9a14af70b767860e0005c5dc933012ca401a07bae6bf3d0990c3defaa9edf4ecac5e542f2a08d7bf80d916af068686f8027a1a5b34faee7cf1b7a17e8517e9f53127500c402df7b9a0600ba1d37c67bca14e51f1a6c872616b6d5f68b6c2f764505f084d76bb310d0c7f4ee85f7514bf9153d51e8a2b27f4aa4d9b9659dbf7dde11e8bf72250ace9438b1fdf6f095e85e2fa37f122ed99801a16eb93b7cf5fae3b306ef8a0ee8cebc8334cf852d6541eaf19e03a529947c13f47b903e61c57090899f62ecc7fbff88dfd5a87e66c0598535f7da2c6d2f30e232a61d79e8dab79361463174de8556e0af49aa4807d4ae29ce0891daaa9a9f75675581b6d32e794b790a22d59a5427a4bed281c49c7eb739db3934ca602f14401b89ab0ec4bdfa2e21d2e86b1af9b5e4da8e76e1f968094586e0b58d9a67c9cb2f2be10bdf5b1932f5fc7bb94dd26624a1b226edf80fbe8a5ab9de2a47a896a2044943a402420116997f74fb56747a1403bbd8a942ceb12b12fc05a2d5d5c752f6a38b50000787b06df8664e79cbf70be8056f4ac3b0e017661da1ab06b502c53acf7cf59780c483e2b23fa121b33769cfb5d245816a406db7a192b51b97976774b2733c12a4a503790e7f32756c7692f4976b9a276921841e83549d27745fb983fb102542997133ca79ab2df3b4dbfed02eaab6aa5bfdbcaba031bfce81e276049fec0385698000ce765e1b36fe4e946be24d4effe3130823d9a356700f63929be3cfb18199d7ea9c2bebf610912f38ed75dbdad60efd9006aae3fb408fcebb17f6000f4f53fcd0273dd63d48badd56730a726ec5a95657449af2e5d4aa7f7d1860300661000a61eab5691669abe99b5435b1930fa0ba526812fd8af75481fe6d48f7c8cb64e7dc95e450ffabc317bd253b12c80d5fb682d046fbf4803a5c78ca8050d3131292b4792ae125e464ab6e3f67534f7c18b358b6e46e52dc001bd7cd902b79370e0348d1c45a02896b66decf194fcfaa1d8c239408bd7035ac98b0cde669c51c0e76db3ca153a00f889fb92332b39dd4ae71504022f6c60b3464e1bd20919a8c912315ec4ecea812f4ebcd5afa754757c6f5d3366548fbbfc0cca95ca270deba6405180c0a14890510196c281bfcbf5f11da8f4ea3875c5b6ece015397ee325bdd4e14230cdab8df90f517b0d4d1d3e1b1a46aa31e1417cbb97fdaf18ca7b532bf674f9da509edf93b824b74a853e11c84ee1ce8bbbad5f660b27f12cde400c005a1b5a85077b854d3927dff4665cd0145bac591d9ba93aa3424d61229fd83b333d1d2d6eeb904c2a3c2c612160de9f8d76539679c21eef5c13a6d756158fb3ea43743a98e2b4ad40152bd2b3aa6f48aefabcca46c9ba07d7c37930ca71ef59487a5b44ced40cdbea49b49c633b77a63f0cd2449adbdfad89b012c236dd975551b50976df1ef2d6d38861c768e5c73850fa508e9362aacff6cd69432c33b925fb2b260c8f9a6982fed661730d531d11783db3339d8bcc8fdecea9c9db22c9edbcc3002866218722a69d58a16e421b31284ae70e3cc23839607b97bba9df229e30584f6e82c97caf97b2a72745ffe7a57dd496758790651f22ee1c5262ff70d9abb923b08959c2bdeed34b5ee87151f684181ffd5abd9ecd393f5f3dbd660f2a6d3095a684a0cce149212f2de9528c589976b72062e0da2ae8716ac6cebc183abe011618538c0b912409eeea7bf2ea9aa6c2f9360a8ec55a6c0b6fe2f241b547b4fec247e2659501366dab5039b98a066558287bedaf084774220c584a3e17640f10c03941949699cd6b63b809818859a55320630d6f4ba9a0233c8994e6bf1bc7e317e18c1a54c78a2f9c4629d02761c6f8dabce3bfd7420d4bafa2fd98b087a587307e3a327fe0afefbb8ee2d876440d8ad0f297e020444311e7b832f1bcf4d24c875a173d5dff7fc94bde203e552b48ea93e7616b1a23d87df7d069fd624bc1bc2f5f69ffc12fc93d434606d58d0aa1ab8adaf746d846fcf205d53e2d6ae251ebd3b9db2280e565a78941a943a341550d12793f9d00aece68607db607a47ed64378373f10581cdd2123e75a2f17e1a25f0ca321e5e905d8be435144d889f8ac2e06763d4acde3611168d40c329a634184d0d5441f730142297ddaa12fb4ec04f09cb31824ca6e9cd81b73129ea37f698615400182c5486bf63552da89310bcaace41504954edf0cd5808e808a6857e401754dc73bd458a189353ded55b75078fc24cc6969e95672a47bc3f921cd7cec0348e10ac3dc9e9b68b68f9f8cf268a411173b6131bd6acbe7d37458d12670161f200674ed1219564e0743e8a619edf3329735160ec06901ac7504d9ca97127368667f2881275f9ef9253eb8d8228c92c2fd594bb97f7fdf4c8f215d7b165f971e3d0d1f425d14415288ff84259d5573307150333db967e3a54f34657c883920592a4aa57708a5181c33d107d8def125ba6a97515381ba8ea7bedecec44d71771a7b7975dd9ce4d5ce6a8662926d16be7128913e5e5d5d8830e3883134b6a0711a9bdf6ef6cd7c7bb1e3a3e2425bafc8d3b88fb7947514218878069fd65fb34eef1439d49111990928d0c5214e34ad1a2f1b940f108c6344fd11751ad33cf73679de1701c4cad24c32c3c272517fa902900db0fc75d968b008acd1c83ac339396addeda54e534e7f9504936522962895a9ba9139ddf22de9c45b15bf5a97a8bcd9bbc42bc17961e587bb7c5d9afc811e8a775a8f3c7d4be5a0e7bae370e559b8a50b24678cc9fdf3f2b905ea7dbac6fd71f59341cae949c5a89db95272312ca72c007afc5efeace2d4d21503bf85257821665fb7ba2a59e8fcf28927c966809887e7d5d72c239b245d45a84ea4524f4ebfb695233a54f6f6c5dae003345b8c6035a87762e98b9a37f8782b149d6b0658f763a96c7a8cfdb64831012bbeaceb822f6413fa2c940f63e1319ca2e66384a7de0c513ea3385be854201a74b67088b5ebe2d6a62c27aeb2fe0aa8b3056f1b81670691d49adb3ae39b092953db330a692da9cb3edddf1710b956d34f208a68a69784c553f4715385c7c72508d276c3c3d5b5516694cdf3e5307239a6942b7d2c93bffdcac84cde3bdc1c0ed455922ddf56db5e8507807109d4ec5142c715659bd7fa9e528c129d640dadd906092e5894475c49a3a1c170c103766972cdab59b8dd218f36c018fd8feae01c59e979af5a21ca015a947ee17a2b97f1c6194734cfbe132c98ad04c39e225ec12eda77838b800b12f67ad56f266e767942b6f621eab75e12da3e521f8c0193834f289b2156af7ccc473c820e276075c268adaa541fbe6b1470503966aa74f519a911c78bc592f04994ce313d72f4516010c88aa70c1d51d7d0b4f2e2d47c2cc802e21044b9546324ec160ef2595cb37d9f62fff24b2cf57dbd5d319e5c42e2880d5b70d8b17e1288dbc11a3050fae4a5e586574c7a8a02e75d322a4266693941414101d18c9c2d8262209d1b82e2d30f35384e40eb34fe76913358289a2f304c6fdc671a4a504b4448f1fd29942c148e92b8318deeb767fabd60822113e575ee664ff09a1873aed8f7a495793cfb7b5a504015f3a9074c641e7371b250d867d751d90e4a22a8ac17fced3d50affc4998b97bb644acb07c55a4dade3bdcb89f6f82d6c24c305d68858b3dce88e1c5e6fbbaa4b78e68571619e67254f32655dad584b5a8ea5ffaaf8321e09292366e8fadfeb16e310bfffe0a06c31ab1c80f1a99d8945811fb2c426289e16dd053faca16150492e943a43c83e6b3069531dd498ef15dc612fb2051b88f7da83afc5764a3378f017c826ab55382386c5e477c8c8d34ff026cc9e02cff10f2a23bdbb41b2ea8367ec4c6794df0c934fad90c07bdd399b9be68225e9e18765b6a18f8c4de0767e791f4b0ec314a4e7db00ac64588f1350c2fed0a794fe8d988277d5ef8d4c35abae00f459017d39a7b0c3467752717f3d090f771492d139ac83743c5d8ace951e06511667472b6f2ab2b49d549684ff3724ee08c6d83c221330bf3050de85a124712e8d11e80e59e7a2ba4d60c213ef7fb6b97416915a8b8c3aea48c6aae3ada79a380fa4505b1a58e9547222402b88c7c8dd09f2837e889308c5c4b2a683eeba8cdb9c0b6a2c45bc0159cd41370156c538db4935d8e1a00c4293839381baa681b9b6b5d5a452b811ea05879df0db296216587451eaf162e9e16a8fa8d273280f282bf9e810f00ad9905977161dec3f103ef789892ceec8c453e1398ff487485f1e1b56fa1f4199272288f9984956b9f6b33e56a88544bf87093284d9f7be8ebdfbc054e736da7f0770d3b1a3ac5647cf5e39246ca6b8421f6a0868fbb3949fbeb7daa963d8d329aea4a1a92b3ffa437d8561007321f68d161f6dfe0d19c46b783e6c367dde74554ef3466be58678c85a59de5f59a8b6153d75ad994a1a24c4f5159937807e516d34ea81fe5ceb642bf258ebb872bf3092b655add9262d1950e9a445396367f41bbe919ac90a6d5f1c84aaefef8301e1e3e5277b78ec155bb9a4ede6e995e1cad2842fee4a01f91827dd875e37c5d37a3990d15cd64e2fa78e063917dd0ce48e7875fc4271c15cc90a85d8956d95ee511ed3329b16535b6df9e89c7df515e26be18233fa863091752014b93de171f920840fc7964ed4455c37bc5982303b58c96b9ea7d446f76387856b9fb468c0d2d3c95dd96bc688c8b66ab62a09ed42e8793c82edbf4a18ba4362891f1ed91026933e1a6c8cedf1ea2ff2d3576a20f87dadca8b45de4b29c812d39caca1a2498e207bcd39ebe0be91b8a175cabbe3b9b1ca9cc2eab3588d122c15eeb2b8680b21cea785052f59742d3212491166ef8657026f2bb2db3331cb397a6d16e696620137c008471ce23ced65a437336762b4e795389f5bcb26461e5c940624567f0f880eaa53082ff6309b4477d655ddd2c5657e83a0761700d6706f012c7365f310a6b0a6696936a106d69ae18801e22b5642bdc9ed3ec44ba4f8e858fd298fdaa07693c58e5d49cbfe4b4950f42906d3f5d7be263ff12e68abd5ac9e98fec24d75cc8d570b09d5fbfd59e11c1ed5a65c98b7dc8a70bc0658eb8bc0d34bbbd55a9f53ed801140d47f6ab4c08e41f8ec3bab0428999e00f5c5f967fcc00bb4f7531d512d8bffb92112b0c0cdd010647597ad419ce1321a1a7a9f6844018121b455029cfc01b9c226d38b7f10a83ea984c7f2af92d7b6198e82e97f29b163d2a4fd0b453ec26e4277932f7c6609fa2c579ee11b6c2be5a24309033334d26c59ac23cb3f566cb04e7ec933d7813647d95ee1a82d241dab60a47141ac84bd8d694f07ff0398404921988d663226644e8c128a5738b53629a7d33382423c9a759018acfe04c0828c411e8606a494fe23706fe92516f1dc3810fb393d02d88274d6184b82813c5ea1d1838e519b3bc6e9850492f8f3baed52a4d0c29e3da5d1affcf3696bb09f8f93803c95af588e73d415a4cc427d2b00ea94cbf2c419ab0620d3b183d42fc6d0a9a5b82ca7a4728dcba372c281214a101a65b542b3f8355bf4cdb32782010cdd8a4d610c8118eafe604a7811402ab4d254a23038beac454e97d3ea03a7f96bc2382becf4eee1fe79e88d3a410a09f1a33271b36aad0e8008a40c1adfa18d12ef4db0a691f96e5abec059cc47f71b3bb44b820b4b6504af2688038e19dc8644c985993046a66ddd07d4ec4f83151659e7b97dba15809283a853a42ec0f7e0dd6b4bf6c47238cff59724122fc05346702ace84b08d47cde83a27e410f7ed5c72820b5c5d875548e963e52309e741c413a2d1918e6f8e31399a350f98b5fd46c38155546ba6e4d1d189cab7ab4cf256d011f62ec43985fadcc16a995e0acb84e70b3ac8ff52f84969d7efe2d983090d0b4b0f47f0dcf0f5853b830808677005b1af9d1f954c92771a812de1aaeaab05e495f51bce83bf43fda6868be33ad1ba508f05f137c84753ab260b706d1840e4b1c2887bdababbe7341de2e3460c9ace4ace4a161f88991e71d11375134aff8b981eea11bf7d3eca9d7f528fbdbd351ec5fb9cac076e3db0c7c8f1604a2cbdf9a319c9fe2b03259811603e2d56027f2bec5310653844e6a4f10ca349c2024ea7ef12b4f500b7c4a5cdc8997b5a843caf992fb3b4704bb4d8fde974c06a5972a01b35c006499068667e0e0f10770ec9cc2bf22057c95090f93c597496306be62468a0d0d6f6cd22f23a4bbe915ff6f5a24ac7f8c33533554d04fbdff9be02bdd5420cd4224299523698bf5047335f045bedbc9d7286a0c5947d68947b763677cffbe7a0febe347b0ebd01727220e80381cf7dc8826e6780f6577f60680027c511fe2e563a1568b1fedd9b91171b707a99a000e4a930291d6e24e9782d5a3e04c365fbd472525b345e9840fa1b44a6fe1a603f404953164376235773004b20d2f58f2587bc958069d2f7141a1cf08e86206a1349de24aec899739cf66723e1a6a3bc7f59cd636b066c3a1be540fa02047d0d3aa5b7d6fd372804b2c3eb11072397925d672b1261084d8b33fcf118f9531211b9f91297f625983d6d268450fee3f80459f8b5e5e09114fb9a924baca04e27e0f59b6a98c531d0c3e0860a0ccd69bb9f31d5678c9ef182232d08ad0bdaa11150ef23eb2f8a828b3ebc0ce8c04f23453a63e0f9a0149e4c2222e9e7aa6f53e96d27d733209c1304fdfaf173f4fdefafd81082a0317ce8757ce10fdc2010125345ba28ab03f5fba8c1a041ec86a3ee82841d03cc5e1a6bc568ba020a1de85a841657624c940f7faccbc13933eabb2fc964ab6414a69c4fe465061fbfbd775d02091b525152c0c8e200074642613b02b520341722d8e233795b4c6008bb066531832d6f5764dc479a4c6365a1339386b5da9683d3babf4d34a7a71d33e6ed2f483ba1fa205adbbbf994dfeebfc08d466da93a80e84c1b170fc702de95f4ed845db09cd4e912bc90c7a44be5363e2103887f5de8430c789eccd4a9010dd4c9fe96592c85ef54065bfa9f203356d2589d8ef16ca196680336dcc13b90663f00348e2605b158c9c8dd8b72ed98f9c7e93239be52155e9f0d16da88854de18542cedd6db86698d50ade7f25d4338b56a441b50eb73753226ed8a640bab453ba85122b9c439c93cbe6a24e90f1c312728079d1b35f2e743dafc92b518005755e2be5751f69cb8073f36a6e3cc6c8072fd3438a72c6d1ad034f8744d8236a9353d23aae273c7b1aa776ab3fd0d18bad7f0ef750a9d865f71d25df46f91156f3883988377086fd5861dfff69cd67365b46485721608569679008d4b901db02c7fbe495c576f61da51cc09a711a41de5a819f36e06c5c9362460c4e7a30f389e1e0903678158525685e2e850af4c2a44a66ba1087a1b27d330d7e371f77d2cd10b4078257f681adcf4c8570eb2246e5ec8631831045fb220f85ae9d75fc4a5a0e6ea5efa9f21cee47cc3124fcecfd897def3360dcad8c13508a13af28e314275d487a95797cc69ea152d6f537a59f9b3b5d6a7e42dc6c629a0e272715462761a4394f5b091d3657e964b708f197fbf656d0b8e75afb41968792009efe0e565d61d9db6ca3bb1f5c77a55d47955024174792ed45293ade6c5682985d85457b9fccc1dc4328a19cd7365265e4e14e1097fa10cfb02656b34c449fed37ed49ac26a8d091d43e5cb10e99703c570e560d4c6ea33f774c1b9d9658e8bb443bd5d0a33c1a83d77aefb5d199cc76b1a6f81ff5874d7de57515bb6e5c27eff02bd1bacda0917325d4cbc0736f96d079e9581561c5366a351e88b79e0fadcdfbbc437fd3351b89bc824b9d72a8022fca78c0973cbc98d330f4c3a26259050b878750cce33e795f79255ea332bd8f80368f68d73372c5bb56d462d5b66fc646c5263a34fbc56e2613e048248ae03daacf7504a4f3d934522dacaf5f59853a5f9aec82ff4606a3743234f7582cd59c2ab84ae0c58dbea03700c144c38d3535159d6a6f416f9f067334782da91077d02020eeb1472556f90646605d4e34a341fccd81148c3a0d2186bf043bbb6063748c5550baee66987cd796e7a6801daebccf6bbb3b673b7259add2f3e83898541179077f631858241b7ff815337f417dbc7ec41fb5b9410a9505f417fed1b5781dcc1f59aed0f29317e88356de6f04c4e0ff4d6a3286f8cc4648ef86ba46be8247a19b80fc9d2c0b9e5ba5d2ef806626abeeca2b7c5746fe93fde3e47db58cb01ab4bc155a4a750324ac1151ec9b2f1c67734e2d0dfde2f5ede84ac1cfe3ffc6eb0d37b64545484246a66ff7e723e74e5b7672844b9243ac4e3e887d0bb45fc57a5b03b21d35c4b4072837097d565a26d074b25572831ec214924535de7204433d56359019b055672dd4de1e428a8e3c7368072114cc82909e30a29ee489db388feddda4975b7a5adbac50c4bcbce0fb0afc69121634a7bc0f91a8d241e5ebf53ea6dadc9e87d1a335379ffe3658547635904cae6ccb8b7d1e578d0c25b50aa44db04acd02391f4eb712839f817b6f146ba87267d3b8d8bd6da7057dd62f22e769153efc40e0104023505484c320e149700aa4514aef93b7edd57801209696d097c77c952de28280b18d2dd98ea511a8df7a1de0247a7e28fc708244cd6f2b79c9ca1dad5f65aa931fa76541fd89d29c292a92c96807b65ebf733503229285213412a631f4031ba79c3429a1d68c1b5174a89c1637efada83142f9d9642386b1e8c83d28c75b186ab74d4966c8cca4181f4736b04b757bb4f7547ad91e149d0cb3b870542733e2b7daa66ef6a885eef9be1c9a8a9bf529eb8f28138ef8136b70cacdf712a2e2a0e10628bbfe603c69e753bdd1eb622212b0ceac53a0315458b1b0b557f9f3f7defddfb82e9446a0bd437bcf6d70fc53caab1b44296b5dd24067549ed8e2eb10c9870565adc112d7d3bee4f895ac117702fa05f6f11eb233ede0e917baf5cc1a8ea720b118c11033c769a3ac327f9db316773b236910bcfacb53dc1b526e05faef4c9618de6218c0f3c64840053f2ef07d10b6d4549235111baf778a704102f16b1a8eb6a6a4df6f10245eddd7a2e758a55916a52f38c64d722ff1edfaef65191ae27abfd0da57e99a0f463f09750271f16f581a266fb66b8426b4c76a38e31da223fcbb0a39bfadd50af42edf5aa9a98636992eb55fa1f78ce05a5b4c6e22891d0177be0dfc5a46f95462e6e45838f28ca671b844caa7a28ab6404610543542be0410680efc7f3e5587c79b19c1a58138d6d6f871b8ffdfe05d39f05e915bd9d4a617ad27c14c51122a964c9c668ed57122b2773bcad261ca3cc3ff95b85dcde20a9ce2dc389c92c147e937acab45f642029c033e7bfd7b469fc1574c469b036cf2b7e19aba47dc9911516a99d51301e234ca3498047f7f71cd75566362bec2b70e26b0beaf4a36c525482c5db9becd4c7bf9263e29e59b4dcd5e47ab1e8154cc4e0ecc2e444bbff1699cee779282ff148fb21a33a45723bc721a6002989000fdc4ae1646a8783af70e6edd5565c307da68678fb17e9794ff69102da173bd3d4d12cde83fddb05a65942f38e1d6929f8545635cda330c06f088fc1e73e5c0d220204acbd0de33f8cb9dd4ca73716cc14036f22279a0f77f4f45e9d4aff4cbc47d7efd8a3b096240f14813caea157a5f6e939699a578e4dcde4674229d94422f6b6c22a90adf4e335530fc451bd79b650cdae4db5534cc946efae97ac2954bef1e22385dd0a3883c3d68df8f4734d7b077b70ce59d1128db9cb5c87148122a7aa543fcf39eed340183c3d38ad2e59d0d42e4a80f6d83c5431ad94d99144a0a6f8c793b5a66cb1eaad2c9e5911d17d2f2ea092103a9027bc47b06c8ea2756421fde5131977388fb0c66d7016885eab1bc85768c8c16d8b6e6c2d580d219023c537d58ae2fc6d71ca2db19e1e1e07c9529deafc19abad575c125a7586034685f7d975e70abc5bdc197cbb2d678ccab9fac7ac4f4f4b2c087ce80241a10e511a30a371917d6d4590f6295c476cb6ca7db07e3d5e3ca7ef3bfae2e31b089849db7cbe13fb33bc4f14f2f70f1335c13203f1f3005b035d81771dd8ccd65742e56546dd5d49e34fd2a512b0a433c3f399b42b6f6e94b4f4faf178a1ae1dfe5c2c7dd9978324199587ccf8668093cf7be546ee2cd503aa19bf4353ba3cbeed2bddf1d7de896f0e4cbba00f699a752b2a85877350626a35d98a27132b57a913364d65134ae6172e35aec7fcc134295c5e6ff64df6a57927ed87c88abcc6bd7a293d259db41f6a97f526dbd8ec971b5eaf8f64129110087850ab882f4fc009a909e82899f9370a23ee4abafb60bb6c3c14d8892761752579d1db586dcede95bc1e637629efa9c173846f67901dd6f9b58cf4590e0aa085e4069617eb1586e80fd1ee7bb7813058ca909150f0e8535b4d70a34ebecabdf40e8c9e3b44819443ab43f1868ce7818edc58183161c844dddf323048fec4bb9836d2ffe58d376b2c38b7fbe072d0c07d26321d524056e3ae1e75046dec771f20bbf87c2ad6d8b58de46d71276bb8b0088a180a58bc18daa015ee7eb21a2b456cad3c52a9cdb03c43ec1cba6277319af0b882d3fe3f82fe2339617544e24dddfbc44f87f02881c6b7441c75eb7d42868683b4d395007c997786989467a78212337e9b0c89d9d81aa7c92713f6eb19e6d6c63782f5a34d503b5fe998e72e2c0d8d063e897e9836e09036f604d1ca7708dbda7654169c499257fc344853cf567e11545cc49ca38a0d3368a3ba02e8b66046616391ad65700dc6d266db6042a22a2f0ca9288015cb89222668164262bd0743f48b1602236beec40a8aee313e3009e376d9b29a3b39193a4e584cd938b8773fda7efbfba1c3716effc9c8336bcc195d307fdd29b40d3a5b25166fa205a7fdd3225babd7882597479b419af6999b07b90ea6f28b5475b65f647ba7aee530a00620b59cfd328dc8967c48011293c14740fee641ed7a507f5974ad447c59d859598feaf11fa439dc050cbc97debc548220856711a7340c9cb24ca40c18c09c44f8e006a785ea9ab3b4dfeb84d92a583b1272111ffeb8350c1decb331d05cbc2774f339c244052582f3337f4c01566fbe42e818476342ea13eaf33d280fd2bbb80a214d1d77644967c247ad7d8a01651fc265a1b8837ee2fd51421786717007713bd58c5468999f12d78b66dc24edb93b717e11fd58088aee3a88e94b7310a97c243b50a36586282a0995118dbd043ef1d1c41ea7a7085a29529875b081bf557a37160a224af00a99b33b4dd987ce5cd06a2104d1f67270abd0318212630cbec1527e656fdf3cf85d0ece5f57abfd41477c4f1e65a9b9906eb89299bfe7d4f2a716edd7509eab7bdb56ab3a6790da66ca9ed5f89728887c1b38b14516f6b98c30e6437bdc06b2faab220d461e59c43743b19f98a890905f98570c91711b6fcec92233260582a1ca04b402d2dc31efd6745ba0d12ec37edc8a37390df2dca3a78a905a3c80ba254f46b26e3cebc30e2e5682c518c4fe2dcb38389d23e722c8ae351e88fdbe9e3ba099e51cd21732356a4bd5ff3f7348ff8f24efe5e440536a7cd53c913278cf767f1830c16fa2b06a8fd13ef194ffa07ec6e4d0fdb0009188e963fc2fbe686f02a5f63780af982b3b561cb63aa92243961d5ad9ff3715fa1d6fb3ee26b5a5624cee10038a5484ac56d79320b3888bb86a8a30d0f18a845c0f4850459b032c4ff29279fc440d77486e682cf7faa541c313e8a36f6846a47fb2f49bce0546a1e88805cec954338abb1b2ac87de042166e8e3a74b23261ec204f93d9f142358feb5dca0268b8375aef0335d51aeb697abac8e2fd8e4e19147db0f42e713ff8b771b1aced0f8c11866b90e895aee53ca63e387bec78d55d3231dfc251bf509f0684e073a65d6bc3ad6719f086ae26e9411ca671a1a1419d0f8269eaff3228a54fe04c6f337005fd0889b83afefa1c46c1beb97b9caad8171c9a9603500587931f045c1d1be735c6eea0f24c82d966360f9ae5ead49ebffb222f9d0ce45ce75c51926b56259258d78254b17d5e6a87b6dddf082f228651000ddd2e4dfd9a1a8fc7d7d1724ae49f7b38d7a0661bd414f833bedb803420e95f60cbd6825edc05d08588568862fb68a7dcbfb59dba6402d3d28b0e76cc57a52808c6789499b7a8ed37a0d2807a2a4e0c02757bf25c58f7c43393181cf508fcb028b4bd7b09eb41d478ff360f4411aeff332388318c03203cb6804d5249e73ade11fa1097f3979dd1e99422bb5cb02a050a775651de7b28f97a724938ef9fbfbba71c58df80d04c48cbad49ade4755fc668411c82e323ba9eb1c6fb720e0a9f530466b97d9d657f59c9766f6ce24bc0970ce0474fb0a86fe9600b6bf9739e1497b3d4827aa153b9e0db38f979fc2e80ace4c756825f38d0b66a1bfc0d03eb30bc8b07bc3c8bcaa4b43318c43e588e36258bdc6a80848efce51158a274b664be7bca5c16508676538a80002c6345f6c24cae044c0fa254bfdf68d7be177842407ade32f4184c7c43912062f1a3c6782f93f88c15a70a67bdb17e3d6f04fd092444816f88a098454776d89633e555c3cd091689a57f0ca20a51cdf8eec09012fda02dcbbe62908811581073a2eb8045ab1262fb66d4196eb906822fd284cda00e335b87cb4f37dc58b591c9f7eef2e2e04451440460e34630aee2b3e194a4754a9ec39cf41532afdd99d925cc92a7605fd3c9ec9209ae5a117c6bd3005f164fb91677ecc364bfca86732b898dedc26c582bbf77901e80924efea989f0eb6786b3dba8830eb7ff597c29882a406b49bc0588abfd16122d226d8349dfcdab931b8583890497af1166d431e5178dafb3d58d3f62839ce3a462ffb313a1713195010cd1cd91db86e8e17f20eee1a02ef07f49304e1dc90e1821f424a8810db89e94c9ab560bf48c1f7963f5a84b90389d9fdaebe3c68a2c59ff093b06eecf3ce20c3f212b67b60297ac3521213e95f1e2f9d1e8987aae007a3c35eb5c9589757bb25e3b1889f6093e973e173dc7702a754336eb14a38d0d4d840eb225b3dac1d4986ad3b4d409f23d7d29324f831845c8c54402330db4b1d4116fc0faa7dc2054b8af6a94b3afcbf9e85e3fc45a71da2c57d769d0baf102fb19d2ea5731c05a0f3ed8c1bf8f9169cb57fed532107448491a8b8bb9817fb55b1d534b579b74027f80ce611a3dd20a3cf9d3f32c9ea042479b45befe51615fa77d13bdb7e6f59d06add14baaa9fefe3e95b44af9c9f424cf57dc5a1916ae721c299d9073fd960d6590c3ccdf224759e991407d14b54ee0b0cb11b309a9c4b8afa0cdbe2d01ae2922e7f9e1e938465356cbe4fb790e05d36b43259ff5a33b9539f913092e3b48e59dca7aa4abcc369915c3ae8f74188ddd1fae4225359fafaaadf1c653f0d07541b02e4428a7c9fd5d68cca2f4f16373c0da9eeb042f43e31ce9eae23e44750879da63fd867b4bf0ba93c60cebfb40ab732ee8345337f4d1810b95554c930fecbf971029c065b870b7085d097651c572011dab46f98bdeeba205d50a4ee8093124a3a39937681d2240f124dd8b4b7f96e8c77836a26a1176a3beb6e6af94766a7035b98268476cabaaada97acd03444b9d0ae28f975c9d0312f884529020c7cc1acdb56e4d253be814ee7b2e7cdf8407f059f5f4de11027a9f41399cbafaa4211bb2c4a42ad17a5092115ca177f810fc3971297fd003e85dab4090b105872d1a0d3300c4df95e6c8a019008e5c5c054ab16a84441999f630a200af454414d4a8555fe5ba8fe5d5fddf26adb39db359ce311bd5644aa18ac0bbe6eabe10f8f94728df0c2bebea46c47a9558575c8a0dca2ba34c2edf01a42a22acdd9d0b555e5d54079d1cee60af3f54fd1f79a58926eaccce2a957692efe156e7e504f0e26acd150b88ec52901f7e9ad9e65049f475e0086a9c21ab4a34de06c39b7a1844ca3eb133081899fd2e0b6d89e0f3d1f8207ad820f39070bd63aef8996917bcad5016206d9ee2ebf9eee94cbe9be15fa80ff7a53c116bc4273eae33e53f2ba531e7a8f80a66e33e0993fd10a0d9ff06934b4753e37790fc7a4450ddae7578c5004e3a40481c1913e3c212d725cd052bfa6bb9362a78cf071ba74c620478ad73fdcbefbde584c57db1ba940da75faf5d9435bc5413ae50c4a8e2c8109b0b992ef13b6a62e931dd4495332d4e5ab5f80717cead324bde332dd5363c7c584571ddc2b3b1e1704d74f34ab1b7b2d2c8d958202dba38165a943483626289129586fbcb43eb88fd9b38b7981acb22a9892975918535ef8768af53ddb786f489f786b5ccaff7f8f9c85c0ddac234835c91b2abd1a97582e8c2e4bd6b35873dc1f2ce26fdff7fad555aaeeca819341157b7d465d1e7023a8f404ccafd6ecc2296c8270a03b04519febbf9689f2fbd8faa1dbd83334d54acef5bcd7dc884306ec601525e3053c5820b110c6e9a89ede73b894356de29d4ca3835fd6d904e9618937b0e4a1427edfe784b04364c6a5a09bd678b88e0cedd435bc622519a7008c841db3389876962cc37dd43a8d2b940cb4e0a1251b48a49aee75a589942a8acb93be7587a5f3f95b41fa3f21d8adefa8601fa9c872227c6b61e77029b577569a99de842d9d74416613e4667519ce86d10ccbaaff15c6fd7e3075eddd8e41852dbd486b34c345183c9374511e1c80066cfceab0c6bdb72725acc726dc10fb90cbdf5751043f6552ab13dfba5a850bc7c0899d728a04b719d1d9115a09fec22560bbe47caa7b366edb80b5082ad4ee9b33f9f4f8eb67a1cfef3bc31107ab62d92071873a7a7e06b6412f313af45624e88372f4d516913213ab52f22375b714f17bffe5c5048f9fba88d85ab957f8d1bf0770caa729c8e117bcae41a38343f3a14a415b8ec55ac4d041c6774c3937bc462fbaa72dc8e30e3488cef2f074dd1c584617237a0dfdc9f8ea91082030b41991913d84f53e2961d183ddfaa82b4e2ff8f932eb8e98dfb571b2308c7b90d94ae24489543c5914d67582bc30294c01eb2efd7376fef65a8a3b418efbdc4737e304b002d16a9d34b1c7646161dda08cafb775e8168a72519424df26955b18923953032564666dad3f81c8a43cb8fd103cfb90d8dabd00135fd0782044eabb3922d3f756c6d27f9f2adcab1e2b289348c74568c4f6bee6864f1ac97ca56aef2a22bbe4423a0021694d3595736999a3cda88911a8443bfbaba976697d14732b89535182054d85e96ff9ad4105465577c10d4100f9a5d81ba5915d45a6591812a21c7d5eed3acc42c33f6e47240e530f05c4d4d6f09f044c70d3764832b34966a28b8a18cc917e23ddf4826b543e76752e718cd7eeefbef5593fb7598009e8887e2ba09ca6ea1065452a4c7d7585da673b7c840394d50131c28dc1b95260aa0efaa3da6f6a3f1bc67b2507afde489106f895c07553723f04cda3dfbb10ec03b1ea68bd1a2905e1d4a946404c213dcf8419236935b428f7d84fde30a5b992a28c30f1cf56d3b41ad9b7f5007bb5dccc3387c04fd39e4387d478904264f75dcf2c97061450d715767d0d594bf0cd46c48c28473e2ad0a280b33a496bb94880cf5ef5c6317a43fd77e57fab3c416a5636d019fdeae62b437e0c07d8cca614ca134cac9999204efe10b1455ee3d77d6e1557f20163b447cc55ad9e28d7affc9c70bba8105a987a1682b95ae37c77c63959b00f04a6b05fcf7203c74808202edebbf9d78b1705f266f986a2c895d283528a00e865a8fd0a8d0ac5a25d412965350523564f64c777c6dcf961bf3d3fc9be609b44a6a2441f283625aef09a27ed2c1cf4daea12449c3a2948e104961c6b67f99abaed8c22e7e6817813b92f30098e44add1ac8217d0d0888bf1c67f9aa69493145ec55ad5b84aed344879791c82e39f065f39b1c8ff47fd03e86cba2c918b52fd0a23eeb8e79b527bd6ced12d09a1fd1b21490f17bac2aad45d494d573dd9d02c9d1616328ca5645dda4c07835b58e3b1a538a0731d21e845d660f26cbab2688d0689efd52da2ec6a49c6ee1907448990efa98c9e3cda53cfeac9550dd66602431e9a865ef9d50bdcb10f8e1155df8d75ba4e7f2d159617b865fdd3f280772e29204f9f37a05fd0ff0aa2d3d5b0b16545d16c34aaa3ead7d07048b81b1880ec89ffa044ddef20556da8cc92aa897808d1f692ea2fe02a58d523e9daefdcd84418a52a60f239479f47e28436a53747490d5ff592911bc75c499bf994d3280f53d130133e5ac6c36566c7106e317172f9b3cad701d1365dfab20f275f8a0147630e510ac9384cd82b4ff3912c99371a2ea23f091a8ebbe6ebe71f86fa8d65e89e2e618f1bd43063017d64fe8d524519176bcba73b5892de6605e6c40b151820e367dfcb98cbdb3f8f468c5ef2bd8437df873bc281094226ed130e2ab26229609092450222aa4b7b33b8867802d4632989458ffc7985efe9a423a8eb31da11351ba6bd7fde0f024a01a7bd41d1fd2fc6529ebe8dec4d84ffc451e6306cd21973ade0f7da028b3a0ab8251f354172764c512882b6401512bfbad3fb8f265f6d2502e226c4e203f97a330f33ec35b6169da728e1ec1a9091e5fb18d759d469552b21413adaf353aec4cfc3f5982f67e3c63d392d1ac817a8c80015cd79e773586741c40056c5c18e792f65749d2fb79a6c548d619e4d0c936efb875b41a6845ef2b03960cd641c159e376a71dd5aed9ecea88f4aa12b4d7c43241eff4d7eb62665dbdace8258ac00ce98a494e32ff2aaa28c7ae2ca926514ef4f9044897df8c1fc7f8fc09c000b8c077cbe171c6b58a62b77e71a0a15fc1b254f307a3acd63f45d9b154e04f90bf320d1150562eaff652879297726440ac125a43ed217a487fd70a252ecb9d9d48ac893b4cec767cdd07d8bdde99c6a6699a60879445f20a6037f0db734deb9ffb968f4d78f36f9658d01be9638b127c5dacadd85144c931c0756d63815cf4a9a954c928bf0f07c398d7f7d0fce202d1d01363068bfd5f0d11a634c799c7b2299e9282c337a0c37970338b7cf0d1003d3f53c659c0cdfcdf5e0b872a2d843d37404463d2e5ab79eb2d3016f2ef7e9c1d52f673e28f777125359af48bb76d064be8e6c64383071c9d258774fb4d4a6a3f1015f09d0427c99ffc42e4141ac52d63db544406c93c7d6741c36665053360adc0b6075e7ea8eee98bd8520b2d3a1f02cfb483bfdb2d053a7e1dfb8c0f55ad6e29ceea2e32cacf32ed254c87734ad17899e64c83682e3d3e8a050b14c36fcce25c443bcf5828720b15b9cc65f5fc68e8764aade42497c1a7911ad83e80d665d926d1e4a320b8f98add36ab049ad5efb116eb57a8bfa4926d0de25ae0d51c50670aec154eb4c858ef1f0cb6fbed18ab801ab343868e24cc6a3d4260ce2c19a86c498e97c0a637902d25031f72ed6b5b4931b2b9a46911738e8938579947be4017c02b6e863ffd921ca1a56b111ddd91468dde81011ffc870de180c84e9e2e0173c796da0d7537115afae6901e80f5aad6726921afd5a3d2fcdd6ae70a398a16ec6a2c5fb80e4f52d7362e30efc5c45e7c6c6d67e20d2da2e614d9a947e20e74ad59aefc2329d6d5f9bb5136efa9ee00022aa5b991c68e80e2cce8dc148aa3fdd8fdd6a1ee0562aa0ec8bd036364c44bed0cea29733f2474bde6150fc742a9caa47c16353b58221c9fd7663f90cdf8e155ad1a990887b71e295a660273b6232a7c06c56de7bf1c3ba1def81834fda292c3e1771c36d01c7d2085106ca80ade1639b8bb9acb49d84da72152c35dc207d6d2be98bcc2d807727b46a162ba7973a767d7294ec4c10f4cbe605e1152322ccc5732f65f9c24eca25035c2f363a78c96e5d8413073d13d0af8a286a318a73e2d17c651eaf189c81e10f0cf0701eaa7e558422a0ae93481acf76e3e696cfd64f5a2aa6d0f980d3199882d0eea72c6e075d63bc01aa9507cce3c35dc8236c3521599bfb1bff6913709236495870ef86c03e884dbabb6d0bc16907fa0c67bca6b8aa5dba75c3e364cfeeb7722a28ae52f2e31823cae5321d82b584f7cac6f06aaaff055bdd2d06b33ea9bf423c7b929d0b894b35cb9f92b1b8e013511ac304e672352dc178ddf8786f1ebc941f1c7794b175538096547484608c5f898a0afa0c5f86dd5e75f4a6792b15e23d0cb48e05c57f28c3ebde8f76d0b816accb36daf6b4b59ca28aea74a2c3a8e4c93f3f4080dc0e3f527d6c7ae2eb018c4665542d12276d7788667ea3f6ff8aec0ff7affdb6fe31571a24580aaff1a79f266cf7c25a784922e46e1c9195c518b3e574f48e67ff957f385ddea8ea91dfd7080a02f37272429934a8538922fa2e64e6137374d5c047eb319a61e211442af30493b420eb9e721a1eceee552258dce0d5a26dede43103fa00553679aa045c81b6a1d7749b2b135b3d12e1fea85781e41ad258823a9f69849456e65da5791443bda8a1752657a33eb2914eabcc5d0dacaf58b65757a1afc2177820c1cd419f076b310cd68397492c61c2a615b0bf23c8f0f93bcd3ccb4020df7b92aba40af66235e05e924b80a98eff275b1e18b3bb07a49f558325435d59ed1a8e6c3372f3e1e838af0a9cb7484c4524c496b7917f5239f767c6f73e7deb5a826a04a653ab27a2901bef21d181cf2a88b08f1990144cf77fff2e0f623e2dce4279e8d1b626e9e36adc75d5945fbfefd9513daf88bbc4fd421b96f758a5e8116b7bfe86cc8348827b3f3af68586dde8e6fea721abf699782f48023b0e4cf25019db8a1f06bd69d80fb7e321f4b5a7c6ceb222080b8f80dc4293759079ab3734ce4b529e2a22914764618c811de4fee589213650495596e1b21e6ef65d1ebdf8d2e31485b745ebcf2280ecb404a6beb90d594aa4870ce801db6630c58a50485fae2b83c981d506a3911439462d5e97e01b09bf19a5fceeb420c2688e3a8a276c925a6d5ed230f7c00be5555eb8531e2d04da15e96b2a906a47d42c855e790ca0bde553ccb7e6874085f1b53d09589ed148430557cf5befcc5463fea5d73bcf48df840b7068deb932acf951d1fe5c08ff798c165f7dea8dd6ad36904baa6cb6e31dce03c843d1b0c9d341a5ca55911e94751239a1b3801b5edf908bd1faf0613a71a00b5fe8417c401d5a0b65bd49be49c1179525f22ef86135edad81640ab3ee7781d5f755e4629d4d2750b76751c8a3862806221155f76aa75e29425ae409cace3ca35c9438d7b2179648b7aaa84f9fe883cc4136e3d8ab8d84674cd3d3463f7df8d6bb341a7a9e6b0c896ffee8637570cdb8c8808130e02061b37181c6d7ca9a75a12682ebac65102c601a67530f282732bf6bd939f0071a4bd076626ab091db3bb46caa22bd4ffb357974ad41f8d7006b02937b748fcc6a4d16a3e996e7f7754ee3985a93194104a9d59be631406d8bd0351ca17baf8656775b5e7779c46aa680019e62ef3a36b738c8986378fb9358682ebca1b869fa5b3df2e54409be151b047c2281040a26b3b7ecbe5890fffdb1b3aaf16345f2a4e3516cd13500ae558198b40d1e1c921436946e5840886d8e4077528d63e2435cc0a377b3671055b59c66ed78429d4ab5ca413263445d6547e1e12f9501eccb81617c0e76a9941327efa2dbba65147cefbdadf02906bb2927ddf59fd8e87a52412fc586bf494586cbb2019db275a46bbbedecbc65cab717ead9760247681ca33d03246d81a7bffbcee5b98831b44385ed4d89f916f0021788286f42a5befa4212c57cef660187352813e3ed08ddb03748dca2288d3f3fbc1c95e584507eeff24aacc58baebd5fee9f1c9b0b933406b718c10ac687d4b2fdd91a9dfa29cff37683f46b1da170c35fd4b31bc6471f57f480fd53271a5b3e87e8627f4b6d739bebc0244ea591f13c57ccec8bcfbca8ec03b9569905fd151bc379caa70e138972e9a0bd1c6ac14e5a36076a42ae9b5c75811723c60531c4e8ea3c06eafc3789806308d3685adff6735d3c13313c20e66d3d2621268678094dc94e81bceb008b22c19c53b7df41151fca2012943ee40d5faf36a0acb4156a04382c604dd501cedbdfc20c0b992f6d6e5305570c69aa2470f12aafe27d0e20e0e0c4c6f1be9512d4bf22898271abe097f66f3f750e5f6dd7ced066698956ce8c67a7a3b35cae53a1c557c17a6e3b4ebb204aca47b63188798f0069cc56d1c309d90f1197f66040970bbd7cc663cd8c1606cc87a5e5e652fe013180e1f9db4d700fbd811a42d158eecd26efd4010c24d5cf874b41884f19c87a8c77c3c0f9a62b1142c9aad818c8a7fec68596f02c354e47dbab2b1ae0bbea6018d1be9981d77828e12c048e69e0c8ac0c2f19afd7a3044c1910301b969d43b181208e702d6c6174f2aa07fbc0789020078fcd3de11d88b8cdf12ea807d2a426633e938d01201b026074c796c7b5b4241bd8eedb97020aadc053dbf9d038eb17a2c34fbd655f5d3a6ccc3bc0cd73c6e0852e3c74b803c480536eca88a153113ac056510a9f8b4bb3485567ddd3a605185c488b0fdadebe5a6b7a7a5f6bbfccb7f14f4ec1615d9112620d1da37a65087bb338f9077e8d91465a7eb29b4f9e5f3d9ff4f9257ec2f4e8787dd0d923c99fe9816b9204370d5342a4f58da44db821988da3870b0de600bce5e91b46ca97fe6ad28151c3af1f7d3dffd89f9eef2d71952e44c9cc02f294ca4bd16b1b91ebbf59378b9a13a14644df12ee167e2b3a47303e3004798952e9c3228f046438ac272f6d2f58c1b3e3231492a1ea94c5012b978cf6335a65306d5a92e0a8ad62318783df61313c4dbad2b1206af6aeaec51b5a1e77cf93ef266c970116ec84536fb865e2ffc5afe33ff5bdc7c22d7f4127a55f3b1b9a716164f5539299305c8c2d44f9991bc673fc956be344af212f99ce2a0b1ce8eb32994c97fd235da62f43fc10e49a33e1c44a4ec25e53063398871146368460189dc5c35feba901bd0ff12b26f58ddff8e76c8347e943cec920f47cc2214a3e219b1c48efd3c108c520f6ca8b56795933fc41fd95ed79fbe1db8bf06c5e53544dd824618b46ea1045a3b2930ab9ccc6e986e4f30d93f982b9bc9049d802ed72996df6ced4204b2334104f6ccd4a7f17ddd13c61bf279b15f7342bec0b8a56b3636448aaefd6289b052fa728f8fd9ef6e9703fff7d026441419615778c791b178a6b6f0c4c1a2da7bd2345ebd4e235cffcdc0db409c55ab862dba2651c5b8d03b7f932c50b9217e771b01edb24b84fcd2c144c4e1fe95d2b4000de1b967cb98a8d78d826c7dfe1e75ce074b1c687d802efaee3c84bb42076f288b79fc4518a9e025b1ed9d33b129672cf9c2cb98f9a979aee516486e62cce614418464f988419f192abb47dce5b5a40ba9cd729dd354c5c8ad3a91e6f994cb1b8e76433898bc7f7276200f64c8aca3ed18475f78b19cfdeb5f4e1446c5d1d1cf77e6463b9ce7146ab3c9de5e5e8e975f045eeaed37e1a2b38f7a835b41d73ce764160bdd003ed5d5abec19748395099373717527495fbb8ad9d8fdedd95d4b0f11341c64ef5def9c0016481c7cba6119914d27ac0380b8bb4fcee7a22eaa562cc63e7bf7bbe02af8a154dd465f0b71a00c6e86f3f619bb15ebb3022d174bedf1dfd3644e96c45fa762513ea0900bf4506df793d5c4f4ea88136b3c0b7edb1781d66ba8b0b34e735677a0f302b713b0d8e0dd7416c4592faaf2e3d560bf2a90a3a790306c3d3ad09603a3992790e7a723c23b7ca86d70ecd0c34d861cf65a7bad40deadc0e3be19dfe5485fe70b4e94cf5c90f22fda418c4324f8935b2fd059b7ed60b244790845492505e5f0a08e5837da4b547244b0893a56e15d96fe80c7dbe980e0620920161e667af83993399e7cbb74f30957088ea20462de7ae637a028fcb9253bd8aca16fdd3f84779efcefb69abc2debe66ce2b94ac365339c9408c149550c3ecf83c94f8b14c0b87f7bbb276f6efcf5747048661dd6fab82c38205addd40f4515d4c1081b51eefbe549c69047da7f38b1dfc6ceb51b3dd68181467e3db2d311c283aa9082c1db56c8e25d62787c2534003844820d86f8f1256371bf855b2bfbe6db3cacc6ce3f61785cfe0d3dfd3204ff34fb22fa0d231d812bebff0e6e54d08859f2ffd6cb159744caa917a1da9a94e71c6dddda9e63c1342d04a4f9803fd60e9c1d9f6f00b16a0a1c0bd8d345544bf2feb15c5ee0662377a6c673e8f2e6f3c7539417924902950a2e4a753a73940cc871789bdc91b919d0db08c6150f086780773ba9543cb98b9d0ce79c9a5be1f68ce602434160c5f347d8fe92ee1ec9464474963c791cc7d815bd131e76745202e5f74e204135e2457f0cd20c1ed924da4c8c1b6ecbde34c15175426ff7a7cc24f251689ad2f19f29698faa4cdcf1e02388744ba720395882bfd63a060645284e27d4b2df79094216430dbde118af9b32d7ecf41055258e59982e801690b724c3ed2dd5a3aadb3bcf49d2a9f71386faee27be40b021cc0d3703c5d435c3e46dce5ec60595c415fac025f2ef87cef7387e2a8c4abf4ed23ca59868256e38de5095f857de3cc34cff587d7da1bf45b7dce9d08427059ee5dc87818c6a22f8d0ce7262c48a6dca42d2528ed8bb1d1873d7dbee79186e9c391dd8f81f3547001e6b77fc68720b7c88dc29c096a52d93a47338d4439afdba0b96135d4a90541b9feab29b06b694c4fb5348edc3b3baf72a56b1198f836ae1d3b45679143b6a5ae411627440d34e3864dc4eb214d2ec799478e1e169e183ce1b6e37f18877026d43600e4530cd2473dc1cab166da00afcb7a0bcbfffa2ac876c8e2fe591a47703420bff4d863ad6d8d77fa0bf278a976bda1a8d93f65586e07be36beedbac67633b4e5d6cf56facf09af6d72a64c58a8ffa8737d79be68067f5903468ac22476f029c4cfb65449b89f5d31ea9aa080b76e8f0602328d5073247ae57a620a04026205ad914202cc0103397938e6db2834bff73d45175418d42b12cf8ebf117f56180e7d933dfdc118f6187776230ec618204bd40b9d244402f06023af1ea58c7136576c5e1405c73e01b7cb4e1e164198605b4067837c0dc723b80ef956f7303a6a65f303df133d245eb4a2bc68cf946c08f37c1435cfc934d855cb484d12f2ee3215ebfd6adf7673be124c450283023b76627d9032985fa7a19608a7c03129b52de42431cb2735bb057a7b31fa0e194c85909fcd9547fd7ed051031f2e5f1588c15d9b5ada7841cf673ece7f43c6adfe0a55351d2d795ca656be6aa98f3b09d99c8819fff2b5ef591d9b3446aa0182a5a5e89063e4a260d65e2d752d6227ddf34a8dc8b8b99dc74bf3b49b301e8eee8287f29e080175cea5aeb91fb266034eab27cfd7c4d6f5776946c789c0febeaa73846e211eba7289f3e28baa114aef7dcd7782b2e5bab72f7d5f38165855ea138258996a53f67aff8f68d419643dfaedc72a571a84fbb995236bc13940f3056261695f0a6e60c36254709b50b66b197f7aed4265564e6082e0daea982d601ec644744e92d99e6200765d6e13a2efbcde58421a2cbf0d01bd6d0e9416fbf5727efe8e7999673e3e210f53a7aad15412cfa57fa4fcbc3b8923ba0504f4d5a1bb9f570f2ce4a55465bfca66009764825a8179c5b1d3ffd654b83d2177ab31a4ae591abda690c52d31c6ad08ed131fcacad409d5fe155cd82aaaff1f8790c668f066ae00b543979790ac1b820435b91e5a6d7575c5141280b0b873483c5e086f295bc8739c697c2a3e4fb2b080570aacd3378ad73e8f277804a933beaac1d30d0f595a9cc160a8555d7b8ec7c9d3dc376eb8e6d29ecc3271ac029a2d53077457224805c1925daa9fb12135455e8633609b1fe95f15e3d11b3f0e65265035c3741d5d989262ebc63ca66d30ac348a0208c9b4a6bb26fe6d7ad47f4c59447c14c25f1b220a49fd1cc595f38b75320e2735c9b69410184718a5e921667f9438838ab42c0bc76926ac770145119044a3f97ad2e968ca05bf010601ce28d6422f32ff3dd5912d887d12a3bfab09a58e444a1c63d6f59d714ba6623e2c4016894a6a892d2b8e2ac8150870827b3ae45ec5784466a9c90dffe67cb2f8d6dab731621a2b8c0113c5961a2dbdde4ddde9e22444bf2697f4176b914f9842be5a7e555a837af670fd17a7ce40d42cede463ae455333f24969fe32e4208325a6210278f7a6d6f22e392ef8965b017e1523903d14236c18c5a84136c5389cafcfd581e874bde99334a1bf72617b783048266db6bbe0ad90773dacd6b9bc5ce51086c059f6c5980fa1df3ffce34026dc3017452ff4d39f502d56d183d063e530af95f1497cf94d6008cc35136a68669295300c91d61d864596bbd9405a93e3a3900a4166e4ca40928ae7705b56e5424c92a14220df71f22dae23dd25bcc403287db624465021663a5fa8aea1a5adfc6c3c68be2fbfc8e75ca3ab37e42d89f3c818703a372bd49adef297531f667ef5c278fb99af279147f1b11d2ab5a5cd921720eff9dd2ab01edab6c9ddcda148812bc43b94dd7925fe6ac31b8da17383aff0dc730711f04f94e7f01d54826521d68d7ef61b150380f967d46d14f6d8f80363ce810bbe7fc2db49c5e0722c8882301b2d1b8570ebf5e74c089fa03917fcded89446389038386cb5271e68a462237f4bff84fff467327795588de35a0d4d1d5aa7df2419648f64f462d1523387d425e4fc8c98081f8692a1547548929551fa06a21c0cb6654311c28b9e0ddec01666c35d9e0a73f02dd7044415604240d4e57c52423bb39f580f608417c82dcd9b370b7f33b2dc2c4e74f8e74ea7416a9d1bf5c1b443e4c23fcb18cf020958864832f9ef6a0c7bc10218e1343dfe60f007deae54160b8a63c20b5f112345033f924071eb73481362faf158713d6537edcba5fa8a6ca9d0f25d446fd20b24b8a23649ac683c246839c2a91fed8325d2d93562fadf4d6d47455e6766c6dd24a3b480b0d632dc19da9c6943c61e6f5c605deae72c1ccd9d651592d45363f9247db62b1f10ea94d7b96db47a657beb6c2de72e5ad21b50299592d6b055ebb9c1d71c38acf8010e1586c3a1fe49d120ea4f3292f30d20d04ea35bf47656a9b73f209535c04336e672dd6125cc24a9c8156ed40a28329289f8dea2d271175efe2c3b9b96ab7b94722e03dfcb5583840bbb11e91febbb87b052899a1e489dfcd9ed1caaa07ae47cd7d70e0c1b55562a79ffc82f9055cf7f664d5dee0b11f7e71ee8cb9a2a844c8ba0e519b67205caddfd332386ae0e587a4660818e589b5502db93b62251192407f9897379757c32b4469090d241a4345ea9f69e3e1c19d4a11bedb01aad74533d47b97c824058573041adeda4ec92621e8b87ee2ab182cb9a9a5428f84d13c88b0f4b2ca3889a00bad432528a21008bd6ea2e01cb8028548ae7c6e89c745970f6d03c07eca9990d8cbdd80716f134a0b2eed7e81ea7a79b9ef9bd13bd53b80e40d99c47a940b48515f821aa80a7440d4b6c4704d05af61e230410a86efe547308cdb0f85eb739d301b90d8304c45ee96f9e23bde927917aafc387857a599c53100577be8e04229c96fc140e9e608324e5c6d3f53f5c7520838bdfdd151232a2ad7eaadb084bff4d8940a8bb659b31a938610fe1ddf8a6017fe4ca07a465ac8e8f075051b002b022fa9bdb67a6b07174f821622376ae58470fc2beddbe97be56a4101153323ff1904d7dfba5063aa5c490adbd8722c752808e4d032406762a9d0e61dc2aa65d2efa6d1665a264c563fb1edeac1d6cd268e40cc146931e035240afa8f8ff7d51f0d7a693fb5bc18227996b252ed54de95f3091c48367162a83e25209177ea2536b9b8e46d73458deeb700ffa1a9022480b439ac4d00bd6677445b32783963f0892dcf86b1c61fa7ab5d89fbd9db3618082815c68a4997d1321e136fb9f06e3e9b390971fbfcae62e2e518f78c0be3d696de201a826d7c7042754bb5a702cf9c38f960a04902b95b1be075013914beeb337219bfda32fd233cea39703ebf03f03cbc454f2c0be95837dafe386299dc3268b850f24ddfd1a9265170cf101e08f22ad8375b8f9d4c64aac809f5c9e73ff75cc058bca61495d0eb34253c5cdd67908b94b06bedae485c1129d6917a03c58d00d3a54c9a7708e87dbe4d284cbc4420c03eb6f104b57f7aff1cb7ce1e45bc9787ce575fc4b7ed4b980f3c6e304f255d706ac18ad4fcd77b32a575e3234a65de567a2b659c32538b0b07da545caf2b30e2cf026c20680c006bd951df722fcfe1bb39261c8d2c6a2344edf64f85ca932d76f815b9be52962a39fc8648ee1f60a15a6a4cee0950b346ae210536ea1b390f1345e898b042bda023e670e9156a87f3bd765a1d5e73de80c92897872adde8baad2953d6e9339fe6aa30e72f0771a6c10c1b2e72bf868bbd5ae4c20ca5d773cbd6a3a4aea166a1795ce7a095690e70522f23cbfaf60e8464ea0c31561e0bf69c3e0faf97fd532ff739b48b1d1801aa85c80235fb5d05ddbca047743e17123c6e2ab2fdf38c410db05bb49bf6ec5ff3e714bf365d4625b82065340aae436d3eef4e34d47e910e27591b13fb3dae06147c5232846f778b4a3cf9eab52e09116db1243afc31f386afe425599c440cf6d1d4e3c03dff041eb00baa7fe48bdb5da14bd1b0e7201a7dde41eee4a4429034e14e94943e6bda87b682d92e4275bed90fab1113d025e6016d25f80df41586f65fa4f1e0b61ee7a79cbd1251550750002a357a990be25a1e2f1ea782d2863ea23f2bdcb91679eedaf5c0b0d8ea93b3ef0720c88ceba91b52d666a98e04bd8b688484a44caef7cf70ac862e8dca6b7d1834f1602849d98418f99ab805bc064a51f909d47d40a7e7715d5b163d6aaf97bcc62cdbc579f522fe2a34005e00f16294ad59668901a61ee7f3b2f5aa7deeaad688330cdb71b87d17acbb41a3f961c957a21d2e9e55d7c8f9407dc061482837e3f7af633f18da1c2ce4485dc85f1cb96be579fd180dc918b4f8a26883ba79e985b866aaf1b6b35a01329454dab469c10cae001e9f9e1a9077cda9eca940728e932720696d5a1c378bdac27ccd019367eeb8614822cb103d08987f28e7864ebc292dab88b8b31235290f5646103d68c3300fc88804a5af37e164d7934df079a532ad86796ea0a5a87e2b4f866c1725e55471285c68007ca2698bcceb4c1873cf8f86359659c6941c2f5a8dc591f70decea408d8b6c1caf83cb26c5f0f20487e2f645036f07b94fcd328b4e0eb8a22bc31b76fa240a5ec8d6a9d049e741ab2ac228abe62a952aee3bf140ac0ed53bc01aed77a75283e25dc99292b11b32c6e918c882dda5a6cfde8e8a1139ed3a74c92035f18ccc20f263ffb458149939b8d53855788e8dd331f3eab7fdd6f469901f42d99976c26fc597400303da9734d3cf605fbc8791eeccb11396d2628a9b05900cc596a75d051e356748272326873369c98e2e71b3f576fee46d4f0ae2c72cdad68dcebe07f0253944052f0538926bb3a614a8ca521e7354687bb5dbb01a46445bc529c85bc278d423766828a513a5c01f2e04078ad243eb09aa4db58519851240d735c5075f1b4457e37438ea17d4458365e6f082f5320f4deeda587a71964ec322876c701fd2c85a58e7642e683c941e0da66c890998ae9b06678e5f8edaa28c047bf0c6168b25a23c1159c2448abc9fe18a5722700f64179865958c76d16ca9ed33c15a13d3dde01e1399871540b503547355796340fb6e744d10b9594efd33eec7dbaa15f4d7f857013144d5ee6a7eb66f3c033e3d7d6b3f75789bb4c1de8276c1ff794fe8fb36280e70f94839058014d950c22341ed78b95f718886d7bd67ce7b92dc23957eceb09c17ff79f6b2da951f6938a5505a8863407120ab070a64aa22375d5ee83d406c20891f7fe6a5baeeab4cd965548df6320f1c8f9b1c49ca1b6c992a67997877d09aa5f7dcffb876e185b9e699efd423419d3de7e026923d55d3cb4fcecf80160167e736db8c956f61a4362cb3f61fd8f62ca6e6849e2a2a9ba703b1dc99346c096ece96940ea222d9b90a76bc8efd6fe4c190f1e8ea0d111ac826b631f48eade2a85e889cc10c7497d1ef1a01eb7f539e7d771cf22ef07d2abe8a3d59be8819a32d1b3dca65d0a1233765247e431f11c0f66eb5a87c9b126b00b4d0648bcdc9d6be7ea8a33b8e6b842c063e7b2b71bdabd757de773896ae688d3ee1baa421326e2f8f57f00b8cd2bfba983f7c6956e3757fe4389bd7eafaa7023230d99093bd9cab1a938b42140aab0c2def96fcdd689f8639130ffb52bb1038018d91a332a3fded6da52d5cf18bd7cd9cf624b0b90a848803a7d9ae90a975c3c810ab5732ae2bca3d5947821db5e61d203ba3b00f658472232295d6684900168fe700607831a5456360a2d50199d372e4ce4365095d44873efae88d6220fb02a867b9a7da5fc5172fcc17928242f60b8c53bde74d5bf74924f975a2947767460035758063ac16dc158590322a1a67a95a53eddba6a93d106e052c6370f798f1d2a9fc88265d0c4632617a50f598af4d3a87d37d05a87f5d6ba45c1139cddd18269756ba7b6618b82ff36e99ffdaf127aade81186ecaa3134c30168c7c7431ca3eb078d28d95052326b9c38adb3b83a99013149987df619650f0e2f4cc675171b16b3b1aed8db98af650868ec69d5347accc9eb7f562fb3492a67554dbb11fc8e1f9583ba5bb99b20c13826375eafb0ffe4f3a2b1b0e945b98f97c09546f068f8ec701142fdcbbb57b4d111cc0b4d2ae852838fa0bcdcbde0c683f4fe0437c02ca64e95215f0f283e9f0588af614a8a5c5f56fbb29a27c82a8300ba5c17dc2dc9b6e170749b22305d052f106495006a7f94be862295286c473dbd7d0bebdce4826859cb1ce07314404ac8c7d576ddfe606753579821a5fe68ddd5ee0951054c7bf26654ed288925ff0ce79494803b3129c576006a18f426bd5e22d9843d293a7b1e7440ab96524ee8e46420fe66cf82a548161c4e198528211a19f1a6ad60098fbb912d89c2c85092ad287038fa17b386b5599baa040e8dc60965fb582218f7dec561f474882676050db315f37e1e4d9576bfd15a38fb6c8c6d5bb5c0a7d87ba188970e3cae1a7d6376c739a18e98d3cea1f7dba1bebdc046310f1671dc66d8268f585f020db01fa3ff8172cde7e75e65ae56adbd9a664971be9692f55b379a2903236a9ffd32702e6879e48e219556b860486119145561f64c591f87e96bc68636a383418f235d3457e4b21cf27cefc7c7f3edea4c1f6706f1018db196f25524157d3c1ce1626a2f7ea752cd16f80e7d55a0b2f47f8d5565f5df609ec125887429daff633c01d25c1e5325534b29e7131c6b01e3babaa2867dce0e861d00dc5a8d7f0d8874e81d423bb4390c09e74eb2913a475b2c04b35aebefa5bf3d6950d2e512f0f080f1653440e20b61ebf287927457d740228015e31c838651b4dbc64f9efa17294bdd42847764d6cce26a425a18effcd822a4f641749df62f93d1c3025869a611307d51e6a14517e5aeebc4b81886ec7fdafcd78b8c9e631ca57ce90ce25521a946129656de751f10a04ee81a72e3bd648663b59808fcf0a540b5521d498a12472085ef18674b8ef67688e7a365e2a73bd4858338a1a76b84d73dfdf7eafdef53463b2fcdd785cf54571b8809d83ba9d4a09e5dfc01e2a11897dba77fc50966eb84659006d2a010673bd5a5340a62179f496c6b203e1b6a627617635b179f1a354df2f60412bd0d9c5e5001f7b2bdf6d972e382cb95f49143a8075c717318392b571e19d0320ce468c6fce59497ba9c4968fbf062c830952d5579f4fee4a2ecec21ae7464753de4f6b41bd3ad8766139bc05a395740c3ed6c655b472926cc3e3cae3092be72fb1c84c9e6c3ed3dcdd7e476f845cd467eaf40ff62f6b2d7acf31cebb340bec7c994d8a861c337500defedda36a86b286afdb800cb3f919d3f58984e4895dab7e753aaed2d4069c030b81b8e8bd743d603ade395751e02a6f0ec05a3688362e7cfabf20c032709e6dbb43580e488c0dff8d5a4e801e860b80b5fb8ab19374585c470c9410b9bfd2b2cff9572d5d674e2468b6760aed99bfb489bf55e229b35f454230abcf820b66ed6ed459c43c5eb3ac9f6eba9ca729419a27c89528bc529c1716e24062185c5a469e0fbeadfecef4ebf90e81f244eba638c0de310d3af99c3c3a7171b04117a18a226e24e6ce011a4860c5e4522bc81ec5905a1d9a963cd8cdb2fb5e6d4d5c3a4588dcac410fa6097dcbb52da06441435f97893f156a72bcbfbaa13b9882bd1306baa76ec11145912de2a85b7324a1a120fe399f45d5278a4fdbea7c26fb22023daef1fed5ea5c9c1e6c8fb223d19744fda6154fcab8dfcd268f36275d417dc61863001ccc50028511db84e4b8d497abb987bb8b2e61aab9de94d407ab660d6fe1ee0e5c1cbdbabeb2a4c19f1eb246fa405673a6c0383817f071dcf30c7d85392ed67e6956fbc4100a648745a18b9dbe7e0b160a8329768b62fd822e990435b929833bf08841f4db2d18f0fc1d6c861c34be50105ee1053d6d504d30e19363d48cb327a06e3f93cd3aacf329fc867b8c1304b324888f6004b43e640479887f86561f79e4e49c820b5552f581dc1c81e25f9dcf8b962a448e81b5917fceb62dc297590132f25276f335f37a3157ee7c437af7805024a6f8d091bf94c470a0292591726c8cd0b65c2940b7cab32126101b575b648585c1a6f34e20eca000e6ae4c869e632b987e9e3f9345b13eab2da2c2a8a1943ac2840c4bea84b87ec0343262502a135cdd02cb85bd3b0e1c70d87e91fa37d172fc09b51cfe34e60ae6a05326fff92ef3e0e0f72bc5e8c7aab0e1ba36f7b72b4926513b1169f0d6e5f96f8405d4f0288c0d76f96883a1afe0c41d1f17b1ee988f7b97d4272bf3f548a58994bbbec3577df82f9a30a07431cb08228ccb35d009fc2b5393fcc54b4292d0b5448febfdcb5f2dbc2719c8e4c659edd76d5e2ff3db0ae8c74b7f3ed4e5fbc72c2e079a9a36317d71f0c0ddac42effe688e1b53211e829aa63b59fda04ff8a5b64f0a7181447658bcb46f3ec9d6ead3e5134343b17354087a1a632b8c75d0c9f484f015b5ebbd056789f6a2c5056a2ba674fc71a2cf6b25626efc1cce865b215c3b03ee44e395b9c163ad5a4aac5e215d5b98dd17d3423afaaaa76f25da65af4dd076fcadee487f82a6d2d9f0631857ff9cde376d48257722f4a0e2a1b1208a535abb736480bdc8c1e173e9d569ee6f5059903fba367ce951c6c7c037aba69ea1b2aa8aabdefdc3da3ec0def813300a6513e8999f17255ccdf77f5df1b00bd3dc064307a834fcab055fcd1cc074123025a7f7acb44f17118787fd0ed33d0ffb6371853a6ab745f5852db8d770acef00a33f44e60fdb8e6fd3c4ada9714153fb0d1a761ceeeb920a4ef4bee9161f4c7361cf1086d7b5237560c6981e19e60bf46cc6b17dc8f7ebcd5a22606c2de0718c91ea46f614a761942a91b3e9a4696469702b18d4e4a09db3b9e5a3020af82bfb9199808d3c0b10f7b0c46e025fed027118cbe130e6c25ab7b1918348e301491afe10834dbc2e92c571cca520feea29488621e840aba1aaa70f7e366a21396044d1ed0e1f038f26dff7a95cc56801a6781cc0869d984918c2f8f09bfe1af2c9cb9bdbecba439b3609e2ed1c6f19e9db9c99d8ba6ed80257cd25dfdf429019e1fabf4f72490c5d32a5bd46cfc2019a5b79866e1f53571090a7de455852ea7003bb2f214f4499ed839bfa951ab2ca77d7b0666c50a0a2f7e5b3a034533d473dda666d0b29091325612a066b29aba77b7180d1c2456e2002ed16194a09a53282410fe5b0811a8c74d6a8864432e29944db242b032a9777c7b34a882e8e022ff6b97ccaaa502f73157e368315adfadf7e9f3234c556bf3f81cdc19660742383bbd85b9d74add4bb87384d6ed3e0d42f454e397788198f43703477d47f38708c4b1922a1d55cf89e06bd07ddb3dbb6b24fed4e5271e09498324429bb371f4bd6d03d854744021d82b90e0dd5bbad5283c98361aad73510127d19c2bd4103c7d21234d80b911f9a27e35321262a20d8d81cb116dd0e2d012ff8f78166693e28470af972a6582bea82740bf28c921da8eb7c6effe9e5cc953f9e3288304bcab395a312ae4e97801e344a4ec10164921edd6ce047ab3fddb4628f38fcbb299647ca412141ed603b4a7b091ad96a6e40142601b49ce0419d12694ded66de88b759f1e1f5c06ef112bc02b972954a8faaa55370be1ec4e1e5a13236ae3da30be6f8d833c3d80b74a982ae8abefef6c23553cc597a72dc87692d123eac7f46e96c4647bdd52775e406a57931c4d8bd79e7125d1a7a0a21cba3439c4d18d54f02a0ff5f6e1dcfabecdcad09ede67f972ac49550a9f9a85df7775ca76d387d78bd9759005c1db19d757cd078e3b12a11d031ae626761ab66dbd97a64b11cddf9722cbed50982cf8bc242b4809109a6075108db4a95055f28a1b4ebec89c49c537411d76f3c53574afb534377015c3be5d329af5d2b51e7b025e5f47cef369aa03817a63e153dca5888ae8bb9ab22760c37b0cf14fea9cdb94de936247e1ba1c22f927573f897dfe63b948476497ecef07d3466a8a3f05cddb52f491663f30a154365b78c89275268ed928023e4c7decb2e2b6ce43bb4cc6083307ad90193db83745946da1461391d038053c5a04008a8a266c522757ab0ab472cdc10a927df0ec6ee756e184850f947d0ed19214e2253aa3c3f74c23afdbedea49ef14b5fa8502ba8e6a78f2d390ad5788ad9b356a76e9388d0bbff9f7c8e3dbc1dd7ca54bf47c99f5e78f41f7a55dec39d053b7f016adeaf64d7e8ac131d3afa0b57743e99d6929585a0d192c535cb8d5be7bc8e9017895f68ae02829dd0fbbe99972264a8e3cbcab748c0e323ff7dca343940dff8bf8f15b90454abb4953450adb50548e29353c61cefe0f4f4ce1aab25beb0d070756675f40e39d01c19baa4c37e339cbe9202fe7e9f73576115118b2a7128a53d76318b232cb749fa6c6bac3b8330cab2c7e5f4f6871c48a4f4a405accc403ba2b836db7803f45b5556316f5f0f485255a767ce95d278f74051eb17d3ea8ea1d76df4f108bfba59dc094f651f95096f5655d9b04b82f2567db803e9e4c4d3cb43b265d9d046fcce6b731af8bf04e78b5c0708e926a6d8f9e2db721a47feb3408af3fc2e90bc4ed1225de14130f138ffe614dec43b5bef0becc05f13413a97c0e46d689ed6a07c93704227adb6c31293c81e5989a9bbd7375f3159b19a753ee93f2a5a1beec945af51e13373be2188700e20937cffd2a717985adc6f644ed2d70d6a2156d903f1ade14ab1cfc3bffba19db67ba4d8073aee7023a067329faae0b1f5bd552c8e2f71a47cf1ed4d577b9425ab822ba9d679ae0dcbae2bc580236ffee55c3806080bf2d76e147aa3217b169487fc3a33d25401f768eb5eab17d03d4d3201fa6e2095287e7bf632f9664a654225f736892a73b6a54f860b65a62fd93a0b709cd2dd36a9a3f8a9bf429194f1f0e986efbfcd3585ff1cf32204a74202d5627be09b9cf3409ab11d5482db01bcd94477ac2d92abf3d12aa75b223f06a2762f8b7c22a737591ec6d679274e7dbb402ed6eecdac6a0a6c77010d3c487c4ed548dce89704254c6cbc117ee0725be13983206034cfe491419e04a25903d5909aeb1cfbcca1c4b08be0f22f4faf1b30a70bbcaf161bf45e4233294dba860fd394c45ad0ac73728c836b6c1927d1b26aa7a0e1aadc5127c66d994c5446dd58ea507175cfc40b339c515c91dd69dbb01c1bf6815310d00478a4c91d211f0f834139c37acdc1f0fae21e140e4f8319e0246bc4eb053478a9d79287df21f7f7a296da2305680f5c8226ccbb6d704236086d3c7b260e054a41feaf1caf33a72c4c688dee365c5f7e01ecbf923b0cb71468dc22f1b4ede290438db001e4e83df01b150766a10fa4e759a2623ebf4e3955f7def38a1cbe8223211238241a5d87c781294a449af5d319a7daa8166c54ef4ec03b5f68e3532f496f4797146ed4ca73267aeea9ed03a0903a04336cdc99f31b1e6b9eb6a311c1ffd13fcaabf66a3db3a755084ef88e7cb716fad54c521e181b02ba51e0189644e143b74323a4c8504191b593cbaab6099334cd40116049e758d40196d678a6a5df0010ca075a4cc8bdd415e2328990457e2e93657e72377574b6cd2df41e93d195bdd3a5e6e8d8f1b65459dff7d38d2d2bff9ddbfb3883ae54f7876e252da0313929f6a64c5a9e48851171fe286218605af7e0d2f8fc2482d7be34a7a2d0d18d362b111c5a16bbe894d9eea96ba3248788ed7c332c7f19f0040767eb10da0b812a3489b40adf22c7ee7a3c4f5e6db2945ec0bc3c5f5b1a3018ae428235feb339e7483f4c2e219ba961e347d9b457f9bd1298b42d386c43f797442b227f8c747bdb02e8da8f4857e5e8873b56c86884f781d04cf9bac0e9947e2d784f78dde1ab9b87f9431f1da69c03b3033e9abd24e3da6b5e04697cc616a5bc50284928267fdaac5c805cbd7ea64fd77447c65880b74555e38ba2a300da97d0f6a7fa5474a27569791ea762f8a7244aa024f9e0c7e14fbedd3b7707ce9786069cce2ec8d8e3dd557ba96034b996a60223f1756c92aee7b364d63994e7a344b9b8fb73b4e024d5a3ecd804e97f7b8b629061ca9ddaa38aec564c4a90ae3cb78b13d6bee175746e423ced7dc4b847628092e26e41f616a201f45d777b7099722d5569d96d0551cbcdaba8515f93bf266325f24361c4fdd54efdb139052c8c64445c16fa8158b295f84875fa671e0720d0207fe7a3e6f4b7fb92e985ec4b924d85495bff85a239406b9fcf6c581f035b39804f4c357333a772a275a2a70596f1c4566b0352966baef9052af8fd17f8b5bc9bec7cb282a23ab070c3df1a49d48a303997aeb7a38c9bbec99b66a8af4066cfd16dd76a115e4d85732166de4f28573c0e457a87e606d345e09a05df376de5f3318d187df8f40cadb29ae2b92ea03804d2fa05583c43605315f16cb3d61aca67389086810677321ea148b18aa7c01423ed0b10ffc1d045cd182240375d0b2c1bb13ff974fc0a931c202895f511a2695ebfbba29db16cd86f4a1e382a5cfcab59d38540147884264f1c62f6438fe6275791ebd0ed5034ab0241f67f4d4f15f36fb41019ccbe707ea24cb3b0133db0667c2c65789eb77e9fc74b3d0fc4d3561e7695b28ca111e78a620f591ebb2b94b4fe3e9d03530cd332d22d1e99bc956a07673882db4f0018ff77ec1ffa2af6129727d4afd3d1eee74ab00ec5792f7f10110e85b8c691cd409f0fcf890a62b484b4ff5917afefce66f082642724fbbb3ec13da268d4fef584b34c0133eb58bf4854652b970816169cce6b2b4cd64892f9ed550f37cd3027aaf180879d1f3c4813eda34bc6d9558b2905891ca29123b078f13047c34797332c4f835e5f1e418387e9a950024920faa5a11869749a48c83bafcbbe8d69e1d08bd50f7f1628afdc8062c819e89fdaefb1ec2484be0ca0581450f6f14e5d7b059c193b40eafd08efca82047d5e5baf44f1bd682d07ada56d94772cd9daf7befc4b410bba12679cd266f7e98aac90a6ec1a2f4849a4368c182fde315a03c1de2054a950ac314daacf6118f26bba4c0da36344b8cf5701a6f7628ed6f3511eade5891e631c05679e141d031e689a6d028e840032e3943eeffa2a1d2a2fc59fb20d66bd06599d4bab76d0414821471e1432d1aca0dfa6248d393e82d295c20a8584eeb823da9e5a0f24f661eda8e55f51f13009e42c0ba471882a8688472e29ff79bb34db9e8eb9e295e99a76bcc78080ba94bb848ed8633c31a63d4101f1d77c1b7437a96bd2b5fa8f55bfe6676c1bef83f66233041dd5d16bded7a490a1aba196bab365f3944a4cfeddadb6203b8230094706e84cc4d91a4b285a98cf9b554d4e469907079a1e327ff9326555d64f4e423e70d13c944ff5f8b3483a91483683bae8adb06cdb55323e3d952eb5eec0ea9a06ce75fd3b96b75cc95dfb13e93d4dbb4cabc0f7a4006559e2b12f0bc4a57cf013af3172ea775dfaffab4eb69042a0542cdb4b0cf9158d9259d734e7ccaa717665301b698a69bf9df0406c9e22b6094230076075ed7aa572cec6b45e89fcf6717f021c90ca42b48edc462289ba9cb76f742a9bfc4a9fdb8219cee0bc3755d4d75f0ebfe9eb297f99383448888072b5dc72e9fbc411a5737a6b7a4869b1c6bfaffed90f6d6dd1d67709c02a8764e1819d620052341f5990363a3976e4d2ab134d0ed6317ebc1b1e950d0438949d6995330b5207eaf7c38310db18ed810def18bf7b3dcf97e559751fbd84627466d8dbfeb11f808ff623fcf1b33c79a6a07c31394cefc857361a4af609a6a53bafa5d932d2baf85f389ce9b910a18606054cd1467bab31528f7080d3bd0f1dd0380e8937aa344cfe433ebf416f43dc7e966c1b04416352f1f1a39b61437603f9bf82dfe4d0e6ed1147f3df08ca3ce0a7566315401e17c26da4c48bc5c50cd0436d61f9bcbd12ba4645df2f8795129422b04f7550719a52b149e6a7aeffebf22a2d74b5e671ab5ff8bb99b0655cefb544bfca0acc22aa396c2a65ea196f68974827b574e4146e4dc9ff41df3104d2d6e9215ba16e996794858d16e0ba73f24c226890d838b97c884be3c5407a980c84d71a38736be4de2a189cd09cf06801a0ea1e4b388ca7fe730176876b7f71326cdab950a08f929c89464738aad0befe9bd85c9cb7ef7cb0061a602fcad801d6533b2bfab0d4d615f1e71488ed5d5db6ac44d2d0314ed4864b7dc0d4cbded5530b6453820eb7e442d8c8594a2c4b41675b1e68b8459a8bb24cca58eb1e0e97da1339942456d37e6032208db712c7411c2089d4961ea71f7749e367624e4ae5d7313ae802cfa03edb2ebc84e0fcd15ba92787e5ac9b388dcdffde0915705726a3430851d60c2d39610edcf4a0ebd9a900d3e075111f6f60e5780c5f8aeec42c4f096c1a29ac3226e77cc97a4c46c8f29da98ac13159a16a5f3d4347a961a0242383f65f10f141cc06c821c3dd435d14b388caf0e0c454723d930fbb8a0987f4b930aac1af46b8f12509de88ce185c9ad6bfae75895ced4fb442102f0a59008deff4d0bf18f2b10159df4a5f7ae6cd882315dfd236c4afc65193c111c9f29a56c9a2e9a8a8e5d59bf80d3f4b96160030cbc72fe29cfa19cc73370294bb9d0e32321c95c76fb527f9501753b286b0f66df4959718fc271c1eed5b812db3eb9116bb408ae164b24504a4231768f99ca1673899254ed9a8b667d0e6a3acc6f7121bc09a5a5fc0174e74c0a1a3043535697ce35e7d618e50c7834a6d4708d7e72be7329d04479f2eb6bdd9005b7c019b37cbe5eea3bbc8aef49290f638c623d779a1e4f7dd26de32056cd6c431034432d4a12e748bcc856008e9b42d13ca829cd90cfdfcbb609d59a206aa08e413724e5a54f6427979b2192df168c3f1ebd02f5a4d3dd8740f01098c2fda0380f2e21b6e7672d3425b320d38b04c64bbaba2573313785f0ae3a4379043f789dc929eeca8a90f80951ce02a6c9d8b9867201effbf7d6306f479008bb3cf1b2737cc2abf67f2832ba2b1fc0cd0c21ef0517de0a5a984afbd0791a81bd357991366b86b1eab58a2f01efedc17aeedb8ba9d0137f095a8e8fbdcb1a55594da6119aaf2146f065788ca831699e27be841eeee7eaddf37acb83730b848f500b7204e47ced5c83893cbee81166f291377473cb001d9d6bd81b56b088e559206976bf0d6ee599f19f9d60915aafd5310832187b3b3a347fd195a491dd121e89f031a3c36cdabab688e0329b36db3fa4e2e8a8cc55fcce6b4d9e82c7697ea8eb042c28ddbb546f121d8377633322b24b46f441f39547b89167972e781053f143156120f640586b36ef099a83c6256e84251d1f842dcf0016ae2b6e2ccf614e1f346898ad6dbf2b384fe61236c372b560a80444021d05913c292fdbe5adb14eef76527d2ec25562812983bfea61bf5e1b29d8368f6bec5c398aec2a1a79489266ff73905fd9151119302268214d5b4978d2f307972efd599facad235935db758a468843bab0141a13306fe5066dd197a6cd52b2dc67b5ac98379fc6225a8e95e50596ea45ad29d8ef9f45de5193a9f2e5805eb8d1efb3cc084186f306a30bc7ff83750ec9b0e4f65ef0109f5236a73d653d145b9757285facce03cfa057800df405d9c11365b6fd82cc63011afb1d97fa62faabc6e9a42d9b58f59c502ee71a563c4875d8b18c082e66efe730f3d61c848c03fd485648291b3a5c59857e1dd0b1ff62ef40c033a6bf6debdb7873b234ca57693a61a77b6b43c68b90d60bfc14ae5fcce5d6d0949df3b90dd38f2b436b3a70b71b193446a52f3683a28df0e4f58f73756c53f343df49b0708b8fdac29b6e4b4ca3b2369fd04eb239c45fbbbb070be838981846011d5d9cb41035ea0b6acdc7a04732873f9f0a8bdb9c2c56bc6489f0bc80c03f336c0b3b6389757d6660fa0cf891d7bbf9ecd7d321a7b32c79d570062797b443d0e138c1644c44d6aa1b817330f323ec351143943048896b14cccbd063e4372d53a0629b67ca24af1c58808095036b5b84756ed4632bf13d4a68d819142a0ad5bdce09e074ad73d3a0801e818965fd7203c0c3862e56c762794eadd5e7c60faa15aef6849976f461a6a202d92c4f37de8d0550b66699efc398ada9e906047fdc3e69ccaae0c5fe913a000763f759451f5c55c4db715502a90a9205a93864246e7d3351c0e7f25dfbd2f7ac1c03ca65f2539f538a61e424fe3c6b587795432b252d43985124e15b59e5b25502a26e84caf11d24cbb2e88bad80cf1e888242928d9766a2ba8f4a598056da248c8fccf0e2813caf3acfcff2f90f27a17babb95588f533ce0d92a87b0a03a54b8859f9243a3bce8cddf4fa1ba11ec2f1977d96bc70c6202a7d89186dd6e380c969de3e4a716c6425161f0b229e50ca6bda74e7b56c98994646c0aeadacb39d6b0c37c62d7faa55a61fdeb90bb7743149f07b722f44e47d1afddd52133fec01a4e9c76691a8bf588cfeed1351c8b08db710d7dc6f551462b0e0a767063a76233a508fad271bcfd6800d2c06834e7122c364f9a891f41f9b66caeb43ca819c36ee8bfe3193238efd3359329c14b2285c2b3bfc3030d7eba991a613c7a9d8316e93e9bff6e4f9abbde361c73de671137852def9709384129a2d11db95be39b3d23714115eec5c589cb8b778ea61cb7338c60223c91fc70b390d4d8a341e420b5cb6019aa0e9b4b6d90e8577eea2315e019bcf89e67cf79754baf1911696455b0137f3e53c1048040a3ac69ee6cec286b2368468762888dab973021d23761170adda6e15a4d713e2f83ffe564fd953163823a045669e9f3f8a674b28053c0b463f887ad7d0901b576714653033ca729b0fb4c9b1aee9e264b77a0e22aafa18b0935f6a46c518e430c34f6b034c1fc773cd82ecc0dc33da8f1ff6a29e215af31ccda7322b2e2a71bdc45246d00392f8df9d875fbbbc374404624833727f0b6604aac2ac844eb9b28c310d620f0d62f2741a117d9355956affb31268f045d1099024d8ed60379e4dc533d945456a608a0aad7206ad3cc7d92ca02b11e5e1665cbdd1d0607ee4cbfb1003d640beee0897daa3f117af82890c3aa6d33b555971d6e6dab58f8d73e33e895b6cd3cf36402994e02ad71a46de52ebe0aaa5c3ad06e1f5ad9a0fef1b48e963922ca532882569ef3b724b9c80832c63b87e73fb1429febafe2aca0d482f0caeb4494ca9d5c36f0ed7d589dd19ec3c2479f9b58412de214b165b3cd636139ab702d070b257c3fc2aa6ceb39bb5923adad8cac9f6f30ea1496d09e592c309a76b4ca9ebc686e807c67045d6cd67b485698c54816bbe4f2a50297431f7efcabddfd59355d08ef40be51e1169442ccf6f3d620543dbf1a89be1090e18acb131b21acd81b84cc2d1bbd3e20b7a1614e6098e252cd2cc7e37371a8f2e8b00872cb228911f93c3ef2e21b0cbac7a28e32d523f97b63202ac4f4f34a00ce843f807ba8cdf8daa64119f682dea2e610c27a6f42c9c568dcd436cfc13e35fec0e4598abd654c17b7580c96d1e85f46b36414191b7e32869c330291f4ccda8073c57fab2b7df898546eaba16062ee555ee964f861cfb3594d38b6a95cb33320ca5a9448d9423302975758d57d157b15617b8e8f9f6a6b56327a1d8af8c3b2edbcee960b05aa949ee36639c0968303bc6897aa2d69805805cb12adcec4075e1efbc3077529443197a8713b719f140bb82cb4c1706f702207ef8debae5ef98a7a2e0150625cb00678a092686aea297d65ccd983babe3b08ee82ec743a314b1d5eba5537ba41ee8658fc840e292b10ce40488e51a467981029daa3829d13c72809def343d878d3178e9b1762075f926f8397a62561863c26b6617a6107599faa3c1b35eeda04d108233249d9bdc6070f0d2089284d59ce386be004c73032746d2a56867f3533f74b1c56b9e03c19a39c0c7a04681b4af675f2460f445d9ee03e93e68f3cd0faadb3d469613a1fab51e57be5c047cb2bda9ae45b656826d6adf795bd83eed8b832f6dd261bd74612ce11db74f66565bc84adaa142d364db8386954b1c4a3ddd4c676101a553f4abefd097a1c00940ebf612d3491dc13b73b1324fc98845b4fa514a2e9c4cf35284e9be66f2fc10165f053ec3cb0dace2adad36fd1647006b113246a901425d448273e5056f89140070bdd79e7bff647cccd60b9ce447891d71d3abf69ca75cb8de28ed2ca119cdb642fdae75b055dc663307e25ac25b16a936b9933922f898c74254e058d745df3edd448be0ec8047c9782698072c78758887dd814a72ee9bdc1701a83b89ef45881d0ce29e9623d0adbc5c933120e1eeec9a2fb54f4794d79afc353a877e58f9fa016c0989661cc294a20c6a4aefa8e0fcb58dbbc86c36724e33bc4b8cc0eb9b42f53e55d08bc14c45fca6062c5d4f9deed006fe04743437db62906bcdd7b22dfff8a573eb661b025b08aa16d0d9f91264f535c2a25759424de89310e38649ddfec5f64877e3d16636693d2921ef8ff6f21217857efddd2dbd5256dded71cdc459fe192fe35d02c1de5acd1c710743fc6cddf104ca5efd7e1a6f8d814aef92a797c2cdb3baef57bd0ee52ed2b42db28b47b43c19e19513220e079726c32a5fb9e7e7c349268df38decbe37499893d2c04ba74c65b86cdbad9a253c61159d5450e93c7dc68a8a61f84874b153d53d58af7553ae8a41d0e47d59ee07b4bbb0ce337b5f250dafef0be46196616f0de867821bb004ea3b85645500ef1a610b1de645f7c1eae5f6c6f80489122321045ce4f31a40f2e2eb4600551d74a1ac508c887b301fdc8571d22f71d74450d780c0e55eab82c0aaaf5177e7682310c0d24279b837c51003ea1065fe69611c6753e5134d059e5f2a486aed95265c672c9abe595369e63cc76a46fe6d8fee43d2cc282ade9e985dcd1bf11ec9a6c83312f1ee957f6c57547cd41e2dfe3b73ffadc576a92f707e9b7556d1372436b41e55ba18f4f264ff059f52969c04f44ba29af61113a019a6ee2313cec646b228f475198457a5d1b899bdaefaf31f7a6e5db659535ad564586b9fd687e5cd1bf098d344f517443f5dcb6fe98fa20b80d0cc713fddba95c25b7e1d75ed467d5527bfe35648356bc0fb8104155e22b51e4a9db1d5210ffdf54cc0c956ad0971fa6c330822fa7e527643a7cb2458fad7fff49bac6ca231aca07b99461a173e61677fb8df6e718db3e08d3a13a2513ecd887e340668d4e11131455f2ed8ca9a7f1d65feb8e472ac7a78e254a7bd7097453aff0eef5f6b15e5061e992fddc6b50a7ed6e2abb127321790e4f284e2abcbcbe52d171791b22e37bca64267aa6eb4fcc0c8fd2374ceaee9d2d9ad5186f9a3316a3f76c51d2a20265d16056db54a319253e28fec6452518ba806fd77cb062765ead84394f799975156068bb75d3b40cc910bb128ceafc23a5eb6c2b5ad612ff92caabde7f53de32bf14eb1b3eb7ab819b8bef589dd23543dce79ecdd1a9ab1c6bb1ab9032d4d7eb1fd9e342109e20bd4bdd898500658107c56b8029dbb19df0fa0b835bdcb9382647c4da08628fd4e7fa7342fd9efa989fba98bec0d359680b55c414b1a4b424cf25f72a0eb44817e0891a025c775188aabeebb6cf7dffa99cf38f1459aff4b741e27b298c31f864d3e4bb30b07ce55a33213584b850b009524ec96be3c9ef253e602b7345654cc9482574396a172b7f0175b394a4a6e15528fa990bd0bbf04f563bb61654b833b18d8a58f9e359f4c5f42317aef046346e9cd802da21f3209dc77375acd0ce88d3a2e2f7a4d2dacbe1ee6773cbcfd7adc7a869a362fa9dfb82f6ca680fbb56ff10de162e6d4530b02511bb413155fe913e1e02677da0b6295c817f419962317194e05c7c68c1f999b116443ccce1b17994207164b4c06c66ff22981deff82a1556b50d5b2c164689553c539e7e1275197541b8ec59c2e161ee43ad944a3e8e70f6b0d535b56f34f68c56d60e7b7f78eac632f935d5cc5df5391b94c16105e8cf20e5c5915fb14859420c71ef8fbdbb0adbe2893d0cfeaf50dda429e957c8f23a8b557e6a7abbb780cb6f2614cda1a27950295d26ba91befd38ef642bbe40f8fc4bd251e3684238111b88bd8ef1063bec23979bceeb3207d1778776bd86eb44d0f5dd6e30b2b4c39cedc2e32490cbc536325f50c9a6b8f895748f10871f72516eb0097aa5ad244803af8ea49cb62e9b11569cd27eeee04c37ef400a557cd646e9c4758d0f7f58dee7a603f60d0a534df3bf0bda6b55ec0a81a194dc44a3ec2bc5123001d89125a88020af8f387dc416fe9f93d429fb83288e6f28c13506fd7e2053f0e26bde1d2e9410aaa45740653708a73389bd7a9ef4dd85acf45f19227ac60f2dc133d6285af29cff774544913eb6ae15c7986b94d55bfe7e41bc92652068b699c783efdcdac361c7bd0769f8b3fa03ef614991f73173163aa5960fe61d6dcf6f575e715221b0a7404655efd40b62cfecc09799273dc366662d994698eb00e09170579777941b3ed7ab13f95c14ab2a84e4cef3704d3917e8ee8530012074b7900b4e132f980413a486ba92104eea9bdc191af8cc8f0e755a246a0a5c3021c7e0561dfea15490d71e90d42b375ca69ddc4bc45dad4153430b33a7efdd9099f51e857bfff14cb89bca61fe1247af964c5f6a0a41d46381e013a6a0e06f66a3c40e9d78a16e465b0ca2589e980d23406a033230e3f7e05357c4f29d2dfcc5839776f87519d5d2b8a5548a8083c6d2148b87850dbd6d9f43b4985797ce3712fa7ddad5d917170425f4e06f9e7f3f5553b9c17ced7c1ba7d54cd365ec915d6f4214361509831034c91c00e3a78529cd9b51d4678c1c48198ad0d7ad618c0f3fd8a15741e8eaec96b809dc26e5f0d0634d1468088497bbb36d9fdaa5d4bb7f129fd0fc3abcfda336fb2ab1155b5e7d8c56cbdf26a193c6681d35d7c1e4db2ee8bab4a2bb28ffebfa02aafae842ea10a80add98760ff0f96c231d9eba5a7b04e8ff43647ee4666ac841bad7ea12dd6c9dc6f1b6fbb05a5f2addbd8305580b59daee15d99b16aae3a92c28a732e262a9aaa57922fd55b5f72919ee45d5ad4684562772747d8d37f9c72c36a4d24da119b0eed5c41e26c50160c47dbc9f95779b8654de2209fedf9e1fa8985f8312bf35f1fd12861f9d6de2ddfd7c6536764fea050726615c020f5b05ae05135d4f0e77769e9e8b7d5b488930fdc6677e8e2b0fc5bed1e0a82c094950f907ba7091af465e179c6bc184e4d661d5f6131af323f225d54ce534c63f52b73caf6d6fbcd4b08488939ad14db1d1916cb8ad31d79eb19f45e251a053b5ed350a27eacf36bced8f8a8f190cc8860402c69bc1787eb0c72464ac64b5c7af5cac66e7bd893e1468a0e161b33720c3abdd4b74eb2a52d0a5dc59e33c7c1e9d59ed25420d232c81bf1f13a8cd1fafc1f5878c5998a9257e0737c6eef28076c37badd6f3fc30dea136fc5778eda7503f25df5d75dcd8dd70e9bf7df20b387b3adcd05185391f23abd38d2b6ca932414b5f36374e17868e598692506f264927b346f0329c15f281b9bf36d6cc9a99c3521db76ceb5746b477d99ad529846f34ce660a206b21c9c9f7c3c05300831f09944f68706376966b28c3d7b6e4562d1c9a113d5dc805e99a0aea778093d9851de955c6280f2edda634873ca0e11fe9598bdfb1a79a3def6076efb565fdf6d813438e1e5b727d4b4d2a2f99f59bdc6608f4d576c8e9b0906e92797245f8637b65ddeedc90e62c50670e6f58aff4514fa3f5145904e9e134cb534043fee6b7fbc454cbb64b4c2ae870da148f5b330e7e59383883469f3c2c8ab236dd0da3d176f0dc4ab66c2ca325f14ac6ba9198d5a4a493462d6c222e2faf3e1bc14f6d4f83fd4926169bfe9bc10ad419f9b804299d7eeed45354d7a4f2a32de8dec5ddb2071d5f9a9c4f6f2781935f2543928cb84ef4cc15427fbde98401cc724ac0608b1a2d6fee1e4d5276c3f11efd775c469f1a3273f3c468da6646564fe39471f1cb700ad8f807fcbda8c47026edad69e8331d39107e35907910f12fd91c70d24c7e7e72335dc89e08472d6579610623f36cae7869174bfdf53429c2b7d1a03bb5d716b847b7e680634f6ab6adb03a261472f09d90d702ec40861ba2010343552c3677738088b0197c56d6a0dadbbe9220858f9290efedf2d1d6f3e04f40cf2d601d1da0a20340ce88a9c8bae187dd3d48890af4da11233f6558a2d52e011934345494cc3b44f7b14dcda0e73f47dc4af340207b3859b3e8c307835698ac20f08542fa686b49bf440b34ed3780137918a78ee5d515972208a7554290a48b5efe5cbe6417c9174dfb3acda22f9491f933d6cc93ecf06dc0379482ce88891a0baeda1b304b538c82ade9a5835b3dcca0b116311420f5d6bed45a35c693d09bc4d3c05c7d36bca5c34aa2babf96c712bf171501565f46cb2ba2f08064eae9d44a95749379d97e2b8b388be9675c0e270bf3fb93dc6fee14eb5d802334dd803a0b6a924ba333a42053f3be4882e72b832d80c39adac3fa779ba38b8800b994b4c89d5d35749e41a120862ee2e6fe29cf55c7d3055f45b5436e1d60d1a53627671b9b4e6a330d9785309b62b192f46b9af13d9381272da7fe69f78ae477ded20c0f0e73f7ec1c5769a1fd4d680987c546b18546c2676d7d42c5583a572f4a94ff0b80bb552c1c2d9adffe444f4aab70d5a543223164775662d73c36e9e7c1d2fcc0995c1784da793a445b324483737c86def533e771cdb8b9547632fb1a7fa4e08d26f79e863c8d1f8e9f55eb2f3eb230310b8e293ba2b4cd48d574df7e860ce911a28f3a8798921d27d11ea8b484cadde2dd83d0211d486171c6beab26eed3059533a706683e363448ef023c13713e20585c4f3d109d46addbf474be1c48d3f71d0236094e7c343074668f5dc84f0654de675fcab4f246df8f76fea41a7f2873079b4e37ea2130070cc5a379622283f190fefdfbd66df7d5c95d80ca5a11395e10b690abd84e26eda6b7dde912aa9f0c90866faea4e64a830a6d4459f9a007ad7e47a2d793fbf861f8685cf21211ac513850c5d2fe26f05afabdbb9ad8d64b70d55bf4d95dbad87b236a5e1db05f5a5edd5b27042d4e9e784f54bf6966c70be1e2f2a74cd227256a3475d4cbd43288fef7590008e0d5981396e637305ad0309242b4c5cf4aeae037bef0f52050161e9d85beaf1d94b5c3298fbcb1f66ffce7f3a35b22e01f4422b613764170f01623885de923e68bf2c2bd6e5e5d9963217a2c7d0b79a460f53f2a774360ca8c69b6f85c0affce152a14a298fc4f9a7622c6d03a9cd4574376127092a0a5938770191a1a8b983ea4031762f70e342006a03c4011b99ea41fd20b0d25ce9a178072a9b1dd38657a8a09d3f2e4227a3c5f4bbf555a97041bdf7cb90f624b2977dd8e63b1ae3b32de0cf6e94dfe714cfcb968d569d49150cc023d9d2bf6152eacedd5538e0e59cc5db8f2e0665f87da28e53212d0e90eade0a72e747edf4d516011c7309046e5509f7d711992904d0c64fad23f70df638cc7068c1e47840dee896f33113c365cc7e492bc01aacf7fa752e9f3c02e2d1035035f4386aba1cfeb03c609df1add61d02f1ad6668dee60f303f44c529b832f7b36cf526585046feca377bf36a2536129deda276725a23b62cfa6778b4de8f8163daafe15a3d815489732fa3a414a6e2ad80213629f92d67cfb7b792034ff13c9cbf1cfecf445b09065a48a27783120683750cb88986f51bd713bbf2cbafdd8914262238a85ec5c93070d84ba82b1325dedd513cddf26b78b415bbf8b4d79613c52e0b92ccc2bb5f31eb6452c6780ab7cb001aaba0d1b5df245d13db043df7ac3b8750eb20bae8c2150dd677a9c72762b68845968488dd67f13163a8112261e1d158023fb3e74896b12b6595c7d969a8b2a0cd96ebd1ee5a600ec53ee530043f92353b3f6c83611cf8f626769a7b246223b80300567de5ababe17ad7fb1e62dfc09d40b27abb3e2290bba9824381f999a5ac3be7e022333eb3eba7087ea144b7d149b8dd2325a638e8c003ceeb239de3d8866ea84ed99be4f55aef2e97780cb41bb69fa8a0576bb032af1a6926d8389db97f37ce2cd1044dacaccbc46b316222e2323f625f36a31b41920c799f919efd9421188eb64546116a6d44008ff629ff189485efc299bd107a51d49e5279c29bbdba41a0d5b25554a9806b362ee6fb10a0b775b6b02a8490c40e978597ca69158e5e559b1bdf8b30c3b0a75f0398504f66b7c6845ac704c9fbb3fd13c01a9b64d063bc3349ad1a480e727463c48e65254aed2217baf565f64b666353dc5c2cb06e4e88aec79ba14e76088903e7d43b7e493121983d6ce84cf6a8ed2ea91653a732ffb704d62817b30477ca447e1abc0652fd830881c224826cf5a985cf0f21d82992f269c29f741cf0898c4a36aca363cf60e1c5ec610d78fdeed7355cc340855410fca3f555df41f1b1dd9bbbe5f5a5bc183365900842db3eeedf28baaabe7c411d9b900325142fc0a332fc018b7d1d1c37e6cb81202295620e1fccb9ca0ff0810aaf164739d4808851d3ab14a44872193a524cb20323eff47768c5f9c0c316c5a6ab39bd16758f223f163c271bb9ae3e5e58152dc5cb78e1a59af72f755694b16ac291495fe6ecd7f726e40ab92b1e0472d685ffc2c7003e1ade7721311debce50259e810cddece87c59c0bd980ad668b6c688d49493f49bc652c34dc0f4246131703426331222fa8c16ad9f08035609fdc375aa9d4f932c3d6351d495818a93870c6d763cd4d63eee8f0384ca3ac7c8516dc763d6a5efbdb76eed8e94ee98eef794dfb8645dc3d01e1dfcb99db8aa03eeb7ff951056be1c8b34279f257769a0cfc847a94d641f318fd63b51064901468fa2a782856038b2291d1f7d5dff36485981809a8c23b3af003f63dd787d5d5b1c3b2070eea2fc0662483b36ccd1c2b0310419db49e1857c7e3e4a36c793ecd8e04f22b71dcdd44f0c0a22714c4d940221612fd9804b7a96aeba886e1ad49c437b92b68f5d13b727d54e40a7624d454e7f5b7faa25feb6d70ab73c9031a080765389f7fa924dc98275c07ab64ba726c4219aa4998e019e87fbf9cb622a133827beb4ccdf0543103d3a3cd5acb3a2e21637fc019eda9ff805e76b7cd7e0b53476fb111dacfa98e7f61945d90cd40dfff5d799cd3f2aac8e463495b4323c50932bcb9a0e9294b56f0f9e51fbc17d4ff73e3b4ca01c6da2646a2e9cb853b2c59533fec261785b3d6aa038b0c25232b5e760607b837caa1e5371e8b6ee4ba9eae7ea0293059b0a505a2f6712d0afb8f7797f7ed1536d343a131bbcf15885a3b1ef2a663c2ada8ee343672e9dc6037bc27a0726e6a9d827226b0d079ef6c61bcbdcd153e3765aac92b49f29bf1cf93bdd83ca82977b7306cbb2eb3a84340a4c61aa65772b7a9e43b30777a62f53dc2f6400a315cae85169276ec4b618f67333647e119e9eb58931110f53c2f1d6cba105356205f0bf3bd354a0aaeb3d22290addad9f42eafc5f475a54631006c7317ebe60c6546ce1278a594674e2d4612cf7b305badf209b6624f9d072521218536b7e53981a56d21766fa247474580f52fb3d2b7220a91ba33593ba4a06146b5175463b8cf826db2eb8659de6951010c193e6e706326898a878ce70f32dd6854e3cdfa39bbc1bf483f23d416e1b7f1b98a13c5707902bf2ed4d3ae4ddd634ad0f93f4b5cdb45d3a59b0c15654b9b757da00afe525d36d2bbca6342731ebff8c26cd4a79ef4762483c83762e243edfcf19f5857cdc3828fb62fb9bfa7de7ad02b8dbeb373b5cde774f8d0dab19a4b13a212655574a217ae07d600820f9262f749001e86d079926bdda9d914076de0e1765db9ad779c899573804eddb90ec1f514772e065f183819646a1c5f09df20bec7169a2b2ea32b10dc7aefa72eea3dca735a4e0ba50fa98b2d70c63e5452179d386c7925934314b34b779209dcc430012f8783de5354bd78e855271a55d3768de95a48b43575dd61081ff2d38eb39b08dcfe5a41dc81d05c11e65c096cc6eb1c1059193b9946e9b8f83dba3f03678cada7b636f0357dce519c4c4008260f87f4ce760d0a99029910030caf5f3566f11067b328e90803f9985ab5141f2108189405f0b65bb33e943266e80a3535890dc5992fae91abec5749b1e3a8fcde88cdf43cf439f74cb876a99e45a0c8b5721a0cb9209413604fa6957a7384dc76d9f359c866d8091319d0c16f348fdbc2d4d59af34247e96183bd4a226dfdaf6b0388e0edfa6df5627c6915f7da39c6554644a5a417a41c169eef7eebbc4753bd9781b2e4352daa95d086c39587442f02436f2c98e88355f37c7ed529d47ac0d284d0e8a0c1c7652f3d65653cff24c5b5f7be5ecededd4678c48b29ad3c8ab6352862d9419d5d89b84523baa20fa63debc561bf4ad851e4395feaf4ef6e237ef267defcd4df7d0ab188a068ef4ed5311395dadd9a02e50a928aa97af17cc61d3a249c6347c7bb021300cc8c0a0f6f6c98732cc2fe47b1b5e1b67ec0dd7d4cb5471b41444af768c172cd17c79784c2181eeeac79311397db6db659e0d32e49fdefa45b6ba2d32d669ac1238861318a1a71e59aafba45aad4747b7de6dc1a90137615df2999f1bc410bd388a5312ac9f4f26b4e0767936993a7f422b757be2f3ae5ba3da6c642c4a390a6ddac7bdba60c386daf118ed02d62d081f3c4d77957f0a093e190464039206c8a511fad9db282599bcc362823807b24d2b211914b2440f939ea53c1401680ce35127bfb68386009763adbf3ded960b98a73a7cb341355adb642de4dbd5599ee900addbb152fc27ebbe0e9e5ebd8b8110e869f9b1274a6ef4909a1edb3ef5cf5f71e6e0c4a2768e754eb5e514d908e7e89a6c82cc60ddaf9464d9f16903d6beaec3fdcd7c82bb54f510710a5152d3f5da0179c503b84c04e0a532b9dad162b1ab9c15fca64ccd50918a10749c3e41ac2c6e4c04c5096ec359b6b7c9bd9e0077560fb89b15499dab3fe151733bc6ee48752192df3deb7132642172f709cf145b77faedc30cb122c7ad9b055aae729ba4b0788310d55a7889ddf4ddbeb43f42e365a4ae3a90a2141d890c32c922fc4d8b3fa99e5d7cf986dd6ed0ecc29b557c0d1c6150ea8bd9b885ff643b9f4a7e74617bdca1b61e08811986fa0e49180d62b39ae08903ffae8ce361474d67131c95f5bb8133443f1fb1699c8914b691bf4978214e709f99d22c184253e2f360ef4e1a497dc0c1e1c1ea585f07431a26eb8fe47c6e74fc190a64740ce573f81731a3c59db6d2a8bb5ff16787af3f3037bbe1d379071113df3f3f7c53cf572268af3ceac3b5879d175cff8f2be277a98cd42a264499767ba91e97c751712fe4ecff7f31e81b591ec3f1b0cd2d51ca160501dce358f0bea0ad1065644adc6dc21dbb648693325687708706e4e254d1dfd5e77656481a69d6c9f29edf8e9243c92080e38ca1b702a94a1da43fe82c234454149de83a0e28f3f782e70e0f8173f9d8f90e73fb59da8722da7e3ba76576c14728c5de4cdc49c33034de7e7edf68bb2003c85f226db463ac5c58db6e0027e3cf52688ff468f15d1179111451574d246fa66e7f35528e45d67467862b07c68e7a071fa0b2e059a8334ce1927a5a230d2637948bee69d4f355c9ea57479a9b810b4d7f9295f752d40fd3711e8c6c33a5589712fbad5691ebaae48ee99cacd26044f3302d581a024b15627eadec09fae01770913423aac432a68fa20c6cf84f779fbec7b47066f2f02162d78bbec550a37debb7943fb2d6d687feab436561cbea0e855a1e141a5ddceaee3799ef87a46e46fe1b5c45a084f6ea65e82da5e6df678d685877b826b6c1e2f7e1a2eb2f7e8db5a69ccf1d65741e32827914da9b00b0a0bd2599ca068a9130dc4df52b59f08221702303d33f43eda6f9b228fe9a59da8f1280b8b50cd49a5fc953639d0eec64229f03e4539a61c3414c2e0405b4014aad4792a9614b8b696651afaaf36d987c5ca555b14915e176d08a51dbe1b7e10e05e8be57b66054efa5a186cbad9472e686bb91c01fbb185dec12feeabf47a81691c8f1b8e623eb243adc77519bca9afb97d3088c1c44523e48902796102c9d52196ba22d8ab49d451b0824bc2a2c78d9dc83fe18e58c80065a20111e0556d6d4a1b7ffb46386bfc42dc3ea03a5e9a2d2aeb36362b3ca13141881151b8cc4fc10d668ae7d381b0bcefa9cdec14874ebd35103584559eb91d58edf45bfbe25a77078cce9f75bcd436b3f536c09cdd153e874197e198dcedfac07639a9aa100d76ea92c7fef45c854043533353b081c91c98fe83bef0247951858c18a775727e1259ffaf4130e345a675322bf51fafba5afa1183d4a935c92c8ffb24038c8295100818cc86d1ecb14723debcaf97b6089ac383cea2c4dfc239c555a4495601241f46f417fefa19380cd9060cecf85f8410e125bc8f5a8551bb928271457bae9d6f008fb70019811ea8da34ef6e8503e87c41ff2fda98328780b743ea8852ddaff880e0cc33151da36d0c1a09a28e51d7c919b6f558876783b020dc8ca412b6a5ec079d506df4c3a2a92a68ee994883acbbfcb3dadce04a197d2ade826509e11a9c9cad470794018ff95076b0b1d44a1769d2560ce9ee4951fdff1c0bc0359e18b8014b27822b2700153087ca16ac04c82b7377005d8289ef23797632a7ff8a57e4a996762a7dcf5f0cd4a3c24cbc519a45ba7f3030690060af5a954fa082f38b756f7296c9ef14daa632375a152da67dc3ad96ce39dabf17526330b2eece337baee2fc35027953e30ea4bac6a38f2594ccb06cc94e5783c0dac5231e08fda6e1a663893a54cd6bbd91e0c301f3e4a936de4add89eed4757944b9732f8bcf57c4c305174b4efe7eda0cad44f71a10bfa196cb604d65a0b6b131de90e3f7f331f09c7812ce8d61874158cd0e72ee13c7d755e32c4409d068ce5addbf1e9e064cb492aa7ec532b61f93d2e2be8ffc2ee31e514f671703b5bda2cc6b1852c521cb9e45f8c7ff8060f9d4fbf04e988b4b3a6bff5f3da81a72886b86b9633759bcc86019c8e0c760634b32e8667ec647723a1bf493785ab16ecb5edef958c07f4cfc766b25f082965143e7a8322a90c37b21f5be719f9f25308ae266e461245afee70531dcd4b46745a001342cfae71a30a8f4e36cfbbd963db12ffe2d2a202351010e5f54f3d1298287a47dba2ad8e94d0a1238185f394f244a9f1c139b77c41899b691e0ec2c83acf658e172b4c1c7347eb271da31972a98d0d9ac03a3e4c5fe20a795d15b0d27efc4a5f961b7ed1fa10d200fad88315dc88b0547699bf265cb9ab7d69e2b9be97c11b10475912c3ae088131ef4fa518f17d4ff38f0b2a3c10427c61022f050e98f22f61708f1425ee22f3a65ef05ed25b4b8790cd2051675afdb4c50eb0f94de7a934e533e3e51e5c200a6a0c715e88bcb0e8a0023cf4c3640dd6688d74617a4329838e6ec2ce0cb9281b3783c44e72e0d0f2930fe203b3405f9f9c69d2027e08d59d2f0e409eb08fd8a79f13e54b5a2af39c1dc511bfbca53bffc214a7c0b30737b611206d12d475d4faeaf36e49359eb7af2fdba9d17fb694b40e79b6dcefbee5426cffbbd6c0d702e1d08e485a103e086aebe1b2f9c13694c3dd3da613613aa0010b2afe1c6b86dac7f3fcd8e4a9da31afd84e30fa2751da85d229f74fead3e82d923f3cabaefcd170837e42fda9c3c0339a93585ff3236cc14740595ca8e634e0df9acec95f0f06d410985954268b618074337beb17aab57bea57b6748c1a8dec1945feb5b7ae855cf72884bebac30cfe2b0c1139b39936879cfa116b5753e519e243f4634d3357dcce109a83d3011c104f8c8ff14c6f7d2fb934d8d122e4f90d87162dff3422717dc6e36fa054fadf3105c333d2b4c4e8bdb3ab72d4fc8b1e0d8c6622d7b8c40db641442ea73dcad5642817ee63a715ed6026f274aa3e9dbbc438fe4f0429bea56178db401d5845eb996ae4daf08d8c4d6ced3a0ce778d408ec0a8ea055e67558858650f6ff7405f90e8e1bc92ea69c95a51893aec6d19408fcd5402eb9554bd9076751b40c6a758f28af417e0667b423357524a6300db084ca8f45cb6344cfd713ea83fd13b05d16905802f2d06a4e3187800d8cbe5bc00aae2f21512d1778a74521bb3b59e36a65a9fb3e9b62dc0e1819c869abd32bb3df0f9d66f64235ddfb5bd9111060b95cccf5f985324e3daf36c5050fb2b10bdfd663ffc24d266d8691b01a321d15bf3ae8f05a4a1b55a69c74a576de593418dfda8f151804614bbc3f4acc4a9fadd9a9b9f44e3bbdfbdb2805c1f78124b18f3bee509393e9d8ee68a72b8a844395a1317a6301a38d22c5183a4036aeb32d1a438ac1e19ebe64733dcc43ef7e4843a9b5d2690150edc6f1dbf3aad179e282bdb1138a58b57c3a2d451617391d5f11b39dc528d40b9e0e14b7734265793b3edc718b086833df1344cd6d8097afcf94e9673bfbb104b1e387d4153e7391b0ec071303a3c408e658f70f572bd5372bf702b8005c3dab5b3dfa54ff2c6080c614d2fc7d5c4ebe26697040f4a3efb1073a7ab2e65c2525a5700755c177bd40bbc9d4af48beb8175ae7ecfd650d37b8155f514223d9ae5ca707f80b2bbfeb9a8ccf83cef87c9234c7d0bde894f7a077ca5172792468e97d745dee6ef64fc86cceb62d0ff8489456540420d1843a7926ed3d75946097809433377b93f8028d6e11756a5946de269e819e965b4cd0a15ff2c3de6a2287fe226951c343b705c3e29db5780d07acec95a1a6630762d67e7be9197536cddb457d711c1ac3f09ab16af356bbe0060dc75c8ed8df7971bf60b2fd73093420fa9d691d84e4ad79d139abf15ab2b9bc627ea17a1c1f267d1350e03dd7d54b0d0a238cb798fad74e4105a3b6df4f237a20ee5bde67ea66ac471d8ab3cb0ae97dabcd4e3563722742c81d64dd59e4a4be2d49d707b622082ff46715a1812e144797907cc67b6772b6664bb6c63b16e3918b0d15e68d026f48b6449f957214b6d3a423ca6eeb0388f8d9483b688efdddb0e21e54715280f3d9df4441b8f7cc12c8d430720fdc37f3841ac6b991a8785276b7fe7f8333abcd75a8ffe955ecda37c3c321ff3dd941b7055d00d8562035fa158c7e11746aa1332f36cc9100ac2ee14fc722ba3d38cb87dd45cd5553803f48e65d8ffd8b88ea5c6e9f0393b3404f5518a14c630e6374189f50ffe2efb0ded5212d7197fdcf5d6b1258a38074a8fa484d150219742569a0a23f73ae6813070baebb8c31413b460388fff67956d63649da8d7af1fafacd3678d06056ac87d6c63b0457d22f74b06521c91287f117ab3a68e15261aff6944d4c7f1417aebe1a60509f4523d56afd573cf3a28348aa97db498e8fea3383ff2e25abdf5bc8126e01a9f9d4d744aebaf59452fc97408d4e520a624f9ac60b5d7b57e4bbef46101cafa610bc8572f84941f8e46dab0a70d2040111497fdb93c4a14f8413fa808d6591994926d5f16287f3cdc7d6c7e90f9c54258f1be11d5d15b6fb783033bd0c1baac21fefc00f9b28e5bf1642cf88d913f9f9e477c9b206184c353c15b0f25e998f25008c8270ae88c1a7c7df91182709cfa0866164bf2dcaa0a8373dfc286e2baf78baeae83812e3b97e122808a21a3fe96ec240ea030b07496e8f096b55cdbeed3ab4b288f9063507ab15bc988ffed5a2f197c85ac24e0a8cbec9f770f74848f064618df2a70ecca4a377aa0b6e78eb30efb91afca0e768c3fb23f5f3cb53495c25b561d16bc8416b2a588be068eb63cdd6b520442409429ae29235ee9ad93a11b36cc0ae354908c18ff7e9b984dfd79e3f0e03f065f672923f4e0220a99587802e92182d5f9e262d18d6a8fc1a978d7473d00772a701f35365221208c5b623fe807715041fcb073f803e0c41c668035442229ef947f60d2207de89f568205e8b93e96337efebd16db28de25ee6f3119e50bc83b8a601df2f3484e8b9d6326fc3be5a2503fead58ba03a8a6ae1337c2889e9c4ec2041e113c5a2f465c835fedc5c420946d48e13eacdf43776673dffaec1435a48055811cd91715b2874e74362a578bfff1a929fcd9b23509ceb4124e24d2b9d0417e07773fb779863e73a0cdf80acaa00975262bdce7a3bc471ae9b19fd9777f74ff09658582020bec6b1ed76beb9b70af23bb95aae885c4de529645a1fb4ea7aeab3a3639f664e2a8ab2aea6018372d3b8a45196623f198ff93291c17d6cf84c33732b06f8932a90d11cf82b4145266207805af1d143e36d6d5286383a648ffd491f4a78a51bde6b612e513a55a8119d40bde2a1fd587fafd8433bb989fc2b046ee0bb38ab992836a4a70bcf923baaec222a4d3d3c2996f17539c99512948244beedef70db1b92cf9de2c970e679060153051e28487d0d28b0405ce7de6be970887d46dbc4899b3fa3caaeecdd38d0917baf8f0d6166e495d105c801ab8666e5d2decdb8b3ed6efc6209cd61937edfb1f4769d5bd6df1bb02a47e13c3cad212d56fd9fdb2c03399eaa1787a51d7229118348e0cdf529cd249914a1cfb28eafdf11a31373078932c520e60f400970490897a4bac99f5966d7c9deaa2bfb8d5b8a4b4eff93f237bc0558bc32a33ed1a121cf22cfcf75d3517014890cc071fba566baf0a30227ba6f6f05593549c0d1e8411c9f22e716e5f52d12f7e668960f8922943ea38d341d0c34f2b366bd72435be4127df1a2af714be16686df58af57d403183be5a856a31fb19da57a80e00dd89160222d93b710b067bd81e579c71d7c40d48e537394a2e9069f10bd5b38f4cefe7beb41d60d53ddd3fe270e7ca2ac658761a01d6fe958b24460eede5f6c859dd36e3cc1b54dd86207a69e8bea3a5e7ae5de4df56f962e2788f7a443361a00a70f59d771ee2f597778a763ffddce0ae0229ddd6ec99f0a38d86b72b8fff214488cafc09022ec7e24e32772bb8d3f6513068a4b7c77042e0849a56a00b8c2eeaa28fb57f65c83f194584336a0b076888917a6d3d782b152772ba9b08c7e3fe7692646a0f972c39c4ee40211391a90ed8df12f42e2c5db927f3248f1004bd3b894a8b0acecaa6ef58ef9801c4cae866ced1f8db7c640367514469d9f783640f936bc328f68715e02b9a0e8708c450fb28e03e5268f30d14d775e1c4eb9fff9a2eb8704ea41545ef5169196a52a0419e6e3b98c5f100561a98ced1001d2381b6cfaedf5ebde681aa947b4ec82bc62762eaf9a254cbf545dcdbf8b6c43759461edb3fd8eb0f1327514540afdceda672cdffc1ee5a9180c9ce1f3c83bccfcb45a9da5a7d4e00a194d56284b3266ea5e230ba04231ab47de6be51549397b5180746e1d02bdc2f67732c9177ba81513a46e034761ad3674df650d40710849d8774508ae74702e32aa341270aedd860916abf3cfe8f42a7129e6886ff0abe805d8ca89710705e634f62ab03d2aceb2e1ffe13272cbee1e89ba861c5ed03584acd0aa0e7218d956d86a58816b95a65e6f5715c3acde0584fc499f1278062404b86ad07c8d17e59f8bfb4bef8c143cef2a49e27ae4864a3ab39cca0d081673dd0cf2d3d3c2e8dd98f675165a6b7cc1c248618c3f57eec1e419a9b89cd9391993ef6833b4329beec2bb9708bbf19e71c1c87885ba03fc50cdb3a1d4ef9232e5681ca5f0f0cb6853215465f3b0d4a2e7591d7f843ba6361918a34ee988a5974e3bcf6f56e43815bc2165fe3665fac7e5b6ed40dac4139c2f4be85f1eb8656c6bde9a67a84bb21f516fe6cbdea8c10b30840be9f2632e85f205ad940e477609da37aa92fbfc3216136a0603c8464c7aa4f001914e64da30ff4331d8486a6df46b4b54bf0ae31f6628dc54afd8fcb2adb2652acd96f55c625b4de141d50187d7f34a402ffdbccab22ab8335f15ae08428709c3b88f51e6bfff31df744f2e85ca858bbdeb93a0d3f7fc2174e54371c5b9199c4bf955910597af027c80c4b01efc8f381f50b4c9562a2de2fbc27c18e3546791bd0978955776c799c7f6e988ac08f194490843145477ce45dc67fe1d26f15213da00567525af295843f96c2e7e25456383a738bc3fe46245577894ba953d907dff55e825e5534c602e6e63ee6421ca8efac5e2f8a913e5ece10bcf32ff5e3aef34ae4cd10f10686c3e1bc1bca62e7dea37a5a7c6084d034f1802eddb6464126a7a2ad6004bcf629b8dffb666d461bef777686b311248b8d369de209c239b3ab492dfd178bed4012a94463c8627ebe518461a6346ea057250a046fbacbb6c9235da7b44f05045abfba16903940bb24fbe9886fc770763d3b645357ff4260ba5017f1fe5618e292ccd6ddd646314322c86d51a1b62cc1de9c7c37a1ff1669ebef0164c84b1abb135a5359c5d426fa577880c5d7a513b15360db810d132c37b83c7397ab4aed4471650c2a9026e1d6f9a6cbec017bbe1b41503e459a13d98f4b2d2aff2a93041fecda43983409d1d3e1859700ea3b5202b781428431d09b37f470abde0393c10bb0da57d3863e104baaa50f8dd50feaf65e7fb221bb2c82658861b8fdac35b053c09c49d929ff4348f7d0d69c600027c3cc80dbb069e694007b52b553ca76d4e49c71e63a04da27f49ec69860c257c26d267008bdfc939d4a1ede36070b28b5908b98f1c23033b5a02979ebf02b18387ff04fa706c915022140296a7fdaf69c107213e6509ce0a83df433050594763943e5e10042c698132f1d38915cd0f33bec2b5f6634ceaaad836fe88ac2fd956f9cfe0c125a99400cfdad31fb3c8c2e7117e3ab53d3c7003cf2852c8c0ffb5eabcca9c7b5e89aa8211b7f0ed21872039023600b0ddcf6a7767b20154b15ef3be592e6bb12dbf01f91d95bf9f468fda023cfae4c54078bd887325ca043e567725f66a812b6bb656da8e374e48bc64651395c5c20b2ff57dabaff0f6f28724d321a3bbfcf5ac232abd6bafe19fe372e4d1fd732bcf80e74946f2640231e392e7bfae1c1eec8e85d840bb61e1fb2666199cc17ddcb5fed2b39aecfa670c7500f109962cb8f1f4491fb81a92a7275384b903fcde93870175357e40f60da9d9fceb1366b4426d4f8a13618512a09aded424bc035c43ec663951dfae1cc836c75e08a0676ce77ce4bbf52705cadf3428c9d8c8710d0081b532f1012572f0a625a7789202e21fec5da12081c0993f69d8ccdf618ec8f33dac120bd8762a2611c7280a9fe1dad18b0159a7f026a87b6ce2e17882048205715c0e069c6fec794fa0a803f08ce915d0650af0666d00a76ac4748673d3fca5465ded8f101b59d35e22c377a8e90a97b5212a99fa73f80198851c4cd7ec543d979cfdafa28406c633f5a2cc85678d898e92cd61cf0cccc722ea1f5c118f5f58c70c01bf01f6f0db6c779cb75851f4d0f17c799b8a6de033cce4c4292521adcbe6f1d5f4857f48450dbb9c440f5e14962c34fb09f57467313ad9b4865777329798d2fb4a10e5fa680d3c7de77d18bdf762b3ad4b72bd74baaf43f9dbf3cf19260f3d4d7542fd02076b33d068bbacc8a7072c128f68ac513c3c1a1a23231b7a3ad5a95a10eea267a1d1270285eeb441590e7bc98071744e089e805502019677567d8f632edea759bf78632118a24dca2bef6fd963a6fc84420c537c5850ed6cc2cfac61c39b6071fcacd8fe64cc02afbd381241cc809c9b4dfadf5030ff5926d6508ecad482f316bb36b72bfed167f9183d6963b98946389508bb9d2a0881413dc6220fb18eb5dc86be90b49a6b9ac94f6e7230e69f147d6a19eb91db994aaf455136c87cd9d70425abc4bc526eab8b346793a748355878010957477b3bc03ace5a4206086131440a9f8a96208e5a43a375b497e99c6b421c5adbf95f86b186c6d9caed8741264b504501ff871034e1f147d1cfa428627d04aaab65cb6c685d0f80962ad23698b3dbeb884b45a1e2a65c7d6894c6a128efb5da73c22394ef36cbc4c5373d719fe555bce9ed1ff47bb5b36e9f4deb92b9f3981df2ad3786876f2e90806d791f5ce0336b9cf4690bac87f87db44d4346b1e59984d752eccfa3213e3c266fba3bc2a00d2cfec543f8e380ab61d3e9d4ce06b9cfc1e5c74b0ad26c70afe76ae04a53fb06ea999bfbaa9c2f6feb75fe3e4c7004f60f6c22d924b3d2744adbf7a7a8fdea278a12977f87101f858239dd0bed2f09b61dc89045ae1a017ab83fc2897c65badd60c790ed35fdeadd433def1eefb399bcd4cca3e8f3442ab6c814749c19afede61cb362f88bd5a9a41f6d83245b55e58335ce0723383f37ab1bb06391f46fd71b80bc7bda9557f913ccfa97c77cff09ae283e2a5ae4dc4d258356368c3ec1637055430eb117137cca1d9e9c999020d9a18342b65a539e595ca98b6c95cb86f421e4b10bee9d410ae8c7b45f7ed6fdbbbbf25813700f55ca696223d5592838473bf37df15911c4cc8c5af0d398a9c1f070bb9e862f19e90843969eff999fafe0a22f226eb0bb99ddb7ca4bf7e1a0f79ed37cd10dca9b4ac983f1bb074303043d98da413cc77e5560fd9c3df1292ac68e0b822fa14d331b5b23ac42c6a78c0b5562908f0e2098f24716ea24d063e6832982ef7dc990c0dd52340193e3fe6b44107a9e8fbc8805faa51d6b54b9e90bb6557acddf198bc8d9db4665d4fdd134341b016740288ceefd473a46e487f87bea163db118fcd4c3d59915f9cf5df8f2dc693076d473ce3615580ed685da3a82ea7a7540f3544039119d97b3fcf9faab26526cae54ccd8888c070b61c8d259e3b8553eb26eb57fbb37834595720c067832e96759445ccbddc7dd2170b6ce9d3774c8687e04bbe311505c4124ffb63ae094c758cd96526198cff9031967175f3ff8e00d65f127f5ef2acc41c9ddde5978f5b7d4c79d6746b5511ba1a830fc73a4034961a964c0fc0e56e33f7be196cb43726e271f01994265df093f090b1ee217cae0acbda22692fde7aee6571e6c371920efc28cfe7e1b5241637bfdce38872465730c020d848840026206f371270697b3f3c69fdf0ac8af4f8f2eaaf958cd63bad84d6fae80d93172c46af52b13c1e02b3aaa423a021581f4adc81be0b01455138c83a8cba3924d323c242bd4dbf9eca3d047e4531a94a8bc9d23910c03bbb487f3dc7fe58a282691504698e980ff26d75a6c171c8ba3e829ab707d33fe1ad8f5b3e86a112d5d98cb6c2558591df6a944d5f52836335c7d2e619ef82853f5ed27c8614538a20fa61020d0657098641034ba9fb2d7c010d8f5ab300582dcf32d9559641df8209a425c74a6a2ad58749246c120d1ec76060403d5059476b10b30765a7eaea1b2a7751f895f7f219b1796e6c717e77ed25e0ca3c8cf7da0da46dd43dfd273130733abac3ad97d46ed294e277fc548b30bafd51229b27e7c53d998b030ae0c94a36782a1fa3bb431946083ea5426d974e4289bdb7b9a2dc67c51546234d9f6edb86b79c0c3ae0fd8c6a817b08b2a7bfd5307c8dc953f5555ed8e601d43618d76fdcda0b1e3b486b51b0cf733ae3cbb6dc0c23e66a3bfeaf89339d7f27d5fa5dc4ea6986578d4867b429568a33478cab5df495639602367e615918de5d1e586f7cc89e27f878f8277b087f23e6bf88cf0af82d177c3cfb09ccb42a688fb5b5f8c6632533a2fdc1c9f7d19978d954d9a7f3c2598955343ad3162403d4f62b7b937f10cbdb3b5e5e7cd2390f158428e73ecbe0a13ad329b3131a4d541a13d7cec131deece19ff287b308b4a1d2fbd3220ae2efcaf1d7983929bceac06f466bd9da33fbf880fd37a736f4b358b2456daa22e21678c09068dfeaab112f2c4a44c8816ff4a60e63ceab7a053ed433cb96a9be1944adae03f7c63e640642d2a9cfe8645e3e783db8eb2ac7ba83e2fd3fc76b4df9f9717b77d0d0e1fe423326d96381e5987fc15079a30c0b7b2284f27f3f0774e8b69c8e04281b4216bf55a42d45ca88b062c9fbee3e04a07d6a15c3c7cb1698b4738facb27f1ab5495990da5a3adffd97507110ce1f64c4b69488dde5509e245f1f37036820c5adea88ce05f771b555a948032c74b64a3574fc7ad38896995cc4820f499c0378831b9cc7f15aceb4475b40f5f22a02273c0e971e12d500de3ec0d2c869de2b7472710e7c736c57436bffc5954be451779df7ac356e03b534cfff440ac30e26e36d541842ba238b90050c0e381ed4d7ae7bccf9d6405443c62bfc31b49d01c5208a5d1867368ded47b42f584ddf059645265dabd527207ccc8f2f7314ac6e894a2c06eae82017d2ed8177513203983fb4793b022379ce604aa22e70fde2973173ac73dcc1bf9c803f36d3089f26f915f8fcbe1898f1b8e12069676c96d8b4ec3672c72f52f53b715e06e258e34d2b14f0393671d31b0a7ff16d27ba11553dcb9a2443101ac87f134d35529cc0a6d2d775c3e680b6efc6eb1059999768afe2bd0f43695aea7f29d8bac3556f516010d99fd3003630a31c88a9c96e0b5d29c2d7847e83fdf6d2238e2f924b1ab3e4efe4dfd66637502bff57f859d752ce93d1d6756aa946f2bad7b30eb4cf0955218eccd44d27ed468dd9367b8311caf4f3896fdd1b0b9b7b69c7791dd20ca6b0cfe1b954520e0fe1a5fc620284c159113c771bcf42913c31a3240f50e49b58d1a87a7aa055f3ed2fcb73dba8df9e86f88acc3fd8fb3ad3042a5e1474d1305f07bdb8bceaa5848ef3c836fde69e0f50ce5f1bec2a36eb12947a4fb6ac81770c3f5ee7947539375edf790ced6005633e2f3d527dd56bf41da3d9e35b722e795d58e8c3d362e5a180ba45f03ede3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85549d20428269eaf4b0a87ec30a421abb387c02866e5cbdece4473c84c95b6c82a0d1ecbe84d59ba7201705582092c7a3608cf5986e3fffb30e872518cfdd19675b829f4b1f44ac99a56637d15af6291d19bc9a35945459adc0633bbc9627649f9f45b3d5d81b3bed5656a8254d45b884e202df174cec786c6d520d66128e2c6d9d4214e79c2fbc6e9d12e547100bfdc707a17ed2bcdb3dfe41d5a689cc6334c2af7adbb3ca747604e365f268ec5acddf877d2e599193f03f6d8ebb550f7d0330d8a0cf999c533eea6dd991f3e58bf36d5503a4a00fd3027fb8fd13cd1044f530914c47041aa06a7497f1e7ad5e19ac2aeb6bf5d1d4006f92ddbda07569069949d7e3725622365519d162a4fe028bb8933e218b0f40bb6c26093d5df421b810ef23febfdab2ea687e0d76d6324e3fa69cbfa36f06ebd7f1052782dcc2264100c1d4109ad1f00c741af1b89d40440869c94d0af41fa91ae5c0da8cbd2ce97761724829473e8b64c634b837bfcf5fbf3776b58d7709e1548912fb7931e554e7b588829c8df272a156e1b732bc36730a634cfbf5794aa17a16139722353b5e7975986a66f4e5ac2ba23284407e248cd18136bf50b7862be97b3b946ac2b606fb19b2995e00850c15f844eea4d4314735c3180714d21f199c0a1296600f30ec757e9f2693a32296f27956b56caa8adfa7c100b1f39ab3f3f06da972f71acf43b5d9ea9820828145d8f74ff2e02caa8b2ce190a2766f431e6d39711f8d0dd7000d269e667024acff4135bb8e9748fe900eea481ee41a9818ba41d632bbeaeff38f79ffba4c04992f54aedb14e98b30e6dc61f7d5ed43be238ba2926eaf41c4f3e5f82c971dc79289e1398a4d5b17ea3e69a68558a48a162ef737d61257120aa2dbc2f0719ee568f124ae82358950b7a6e2c9b8547f94932df99be9d01c78e0964ff7a939cd710294d0e3be23ea73f280a528ce8367167ddde4d75be7d3e7aebd7656d0798900cf83457b27ec4bbbf70800363dfd1cb68c5c9a7116628b2748fa787fc778bd6b07aa177a6233b35b4a98be3ce3c883fdfe7e479d162c85c5cbf3f362eae892dd0d9555b28122b9316f454b8321537bf8d90c06282cab86b7d223c1da1b2b418ee99843dc0d6e9ce96c7b2b249a1d9c1f22e8e3109d70ed557f0b2c865723ca8120f452646cbc7162185cddd9572d756f075b55526b721d3c1cf8057ebfe7a689d1d0985c2d17a1007648c01b33a5025162b610ced3204d0dc7f90434208faff5e68c52caed76cfed0f0c7ca6576dca38ee2f47ab71d21634ff77d72ba94e55cf51d35159e42c44a02183af5a08b42d2cea5ebc6c24d11c96ad0bc5a767ebe73386a1927ce69b5e6b76b1f869ae33112da2e45f563c290966956ef1d484eb003818e56c081af24c1262f92bee5bf710604d33781017b603322009db4e2bb0f16fd3eda32e1b1e27e998119d23a7ba9a1426c141febbc1d42ae35ca4b00578517967db9d8b58cc97a2224d93803afab85cc487dde026617601c598d446643605f150a69fa27d5264c4ff43787009f832ed42a52c0a4d1aa622a2177cfc79e5ceb63238c7b6a04f5fa4fd31cf7e83829102675b4ddd4070c2df12e96d3e227d72e4af14ddac05574f9c172c7bc676d4f3f3b0fcbbaa192a1fe05ece5f0e96af9d1ad935e0e99ffa134914622484536c59bae27a6ed70a85e05126c66d8e8b8e73aa5833b07ceb34281b2e678a4ca7d5b1ad10eb477c460f395374cde3d96e89baebe0b40de3bd623b271eeb682e214d7fc5d10d7d87d3f458d34652225d8a88ff28f721ee0e765e6a6bc2b5ac8ca910c3d17965b13e42a1fcf23a154d519fe99e2418ad7b19bbbd38fd59c7f4af28dc04f564617f0089cd0b391f8ecff74adea7abe865d77284eaa25c40a1075a00852f2196f27f8f31001b902ddf8b3c053359779a18031665f1ae01f0d42bcfce9f486ff0e975c64437a550e0d1f84721cda826d417a5a2b2cc6e05e8f50a5d112105b9d4dcbf4112ee97e453d9a7a45f37a0aeebc47c8b975aa59e142aa473c41f5734b92d1a030ffbe337e0a5fd931b2e4a8f2a00c5a371109f824670df1affd6f17395ebdfc16a84d8681102d893420a8cbe577e9ee4464085c75e07f38fc124e833ddaeb156a00371769326557fba4af3e434f3a4959505cccd7be034bb1e66bbb671ac579e2d29f12ee4d42c4949196a29daa11273363996c205991b53408890fe55fbef126d5477a899855ba623ebbbce00111322397a54e3a26c7ddef5553861c532b2db4ecf30942fd4dc2a7c80e430d014ac2f53e5be2fabef3d190c47a6f585802216677305686df632f6b2242b021fad1322310910a28991d0584795a304f03c7b7d22d0648e80587092f469fb144b0853de3c6f34dffb3f2845bcfb38bb5850965adacb419b2fc31df37a4781605b327ae1cafffc800f29167b310df771fdaaa995f0b765e966a07ff586c3b5c13e9bad92b615e4aa3fb3dcf4b4589c7604dec237df5fb030eaf066b17e275b0986fe4d3ce3971f0cceb384c1a823a57d7108e247f851936faba58332eec2ca74f39e8afec1b5548b8b2f25c577037b873839c73434884144223d5518dc6f505165dd08ef46cde5e16d73db3c98f99d98105151b487ed28b486f8e5423c0f743fd068cc1f42adaa14b693e0245c146c78792f08ad4bf9deae005cb888bdc25b172e70cdc374521cf165c32dcdedac704c854a3f0d319b7f39473002ef6c8a23c9dcad1cc0b423bf6898a616cac37957d0b38ab9c2e1dab603ca33c5fcf1c8ca5b17c2de6ffbdb7e9844680aa22e2d7d706d244dab708e8ff9cd986ae922d968e84cb06de6d07422771bcdc1b423f27bd3b3254323249aea22527047a34b5c711349e407e1820a033e1118f2a72732247a38a115391bc9030b41195c563a9d282570d969f73496eec08161ec71fa53f86a6359a53c3e3d7711a3a42d8eefa985577c5ccbde1704d67b24b5f1b3c7a7505958c1ac6f844f1e800e298968685416a5d431d572846554fd84641757e6a9b04a5611b922dd0b26da9d91e3663786df7459dcf7f13bea949d7d6c54c13a4e9b3f9fa2cabdc0c932d4dac8be8d32ada39782651f450ec028eb2a99d4b1191959365ddf90f5f58f818d783659b4ceff23dfedc29bb44e92cce9fb034a0befdb15f0f06077a9b5a68fcaa30a19dc302eef84bee37b44a3a0543110b103faa2d3f9d5d369037f1ee6164cab81974b54a750d93e3ebbd8b5185ccf0468fcffa6c1d29a9876c21ff5cd52f49750ad69a8da103c6336b379d52fbc718b927668b8c8ec1afe86365d2335ceeb6a8a2be55ee5d3743cf885abcfe6e25977317f862c1ea55467db1b2abb7d15ebc60c9000910c764acce5295c399d846a1822a87563638e0aecbffde86ca85a7f5429da24630ec7a47602b92a2282f5352984645930978afedb4b1959dff623b0d2f817a577156ffd2b7494f162c895cdf750b3d300c83c2a02f403dd4b4f7aa9e4ffe527925b1b968dfadd00f825bb53ff986d5b2fae9ca0ae16bab6a63d24aa47eb5e300ca068577ecd5750212676da69802eaf827725e5ca20a7c5564f96a733fe563dc61e53b2ba95e2139463cf5c332338c1b405506c2d71a6d337ed0da1409fe9f5d2e97a5a454955001cf2cb3b8db75e84719709a75e57ca87b38cd71e89864509d523ae6e1a2ddc0f66fd2b1b85b7214e4bc5718918493f95f06e21f4eab83c5ee0d7fdbab58e4d9409999aed433ae81e2a2fba5df27cd3707bd73c34f46f01415e7d785165e8ed99152b668532062df4de60d84ca9929cc7a6f9379918d15bc9aac5061136ed88ebc083e454e96bb81b065477da06a55d0b4e7bb431154df79ad6e3a5ba5294e47733f347899067a673251cacd294406300ffb3cea793123960bcf97ddc99c846ceb54bd95fb08fb0bf52f0fb86f9a9eb6bb20ab9bd006516aa3ace3255323d5dec1ca7ec34ae2673052a202cfcbf10b72ebbdabe16a6e199262048fbf50df92fffa4efbf9aff3d56b78dfb9d616641d5d9723c01a63ce970e7d9fab8ed5d7f688414747a099fd2f3c88c3b4edb6fa3654721a021918f7d746b6460de575d7a951d8f44c32b92f907936e53f7969f6075f8e4f21f52036d6bdfd16eec7217270528eaa78277d792461db054225714d877d06262e629597b1530904943aadc2bb72bb4ad042b095e09edd9c0f2a79208f3494a43f7054249cd4a06e44fecc25f2ca5daf25dc9eaed8fc84da1521a9f6cc8548dc82a5ca873338a788138ce8f4de6be91d15f4aa6a601cfb2feaaac23cd2a463ad162144caf6ea39eb536616a6cdd7aee192182f44c79074cfaf98bdaf628806c027737170e28d8765dafac29f4ea6b663c8ee7c34b5c560b964bb57921f5fb0087b87a00879b5656749e87edfa1bca6909aa4e804392bde1e7e57d1024b7d171a4950525549628c09fec7b9e81631860a09bd69405d3dbcc03713cdca7d1e4f5efd260ea9c91b598ce677d9f44250feffaa25130695fa72c4340e70f8218e21caa1d1b9eb080fef62d091a3f78456582e3badbbe9c824601b4133e86865470a437f49839821a339fe450e05322dd39e97d80b2c865a9bb6a7df82388e14f57715fe41a029baca221181e1e41f499713d92d6b5b38b88753c10ade4900a3e136cae2ae1aae2e930eb7b21e12c86379d957426f1339f8d72b414b8a5f081354be08f1a517e20391f8e0eb62185efb4e87032baa224fe9717226e7c3b5c387284e1fd863623945d13fd20841a268996ad929ee062303409b9f1bd536c1dfce8516fc121bed3331e41f4e8c9c754345ce105bf55f2597173d55a69a557c3854e0eb7ac6b3a87991d4fd93f3cdbfa1bcc86cc841544fee5a16c2f66a4da86b1065eaadab9700addb858369271fe56ef98918dd2f85d38a1bdf0c11439242e49a7ea1901243a0e541f0796c053fb457455f3d638020564e5dc1392e150ef4f0f87146ee7499ebe728c04ae7a178389c0880cc22131f441f8c41c856ea001fa1db6b0e862fd8a48cdebe33d8472e208eb9615dfb8304623589a96d83cd7c429a9f3c84bb91f68bc5c6be0571be9daa20a2c110017fd103b569fe33aa39fc694819205963ce975d8f9f89df111c127e16c3e3e8e13842d616ac1b54000bf38c1c72ba1ed8d6cfc6efdb9fece84b334fecf76f0c5eb7fca1e7e51d80d376b3468c2a747bf34b905f84707e009e273bb264cacd60bb005cfa558bee084558469b9107eaf40d7e1362571ed1bc94baba2f6e510cca6040eb3fc779f23f100d3929888bda13ca48e76cbbd0e328e95537b323536ddf9aefa33e642b5007ce2bb03086aaa8572b859646fdc6d9a73e774454e3a1e3e0294c445444a26fc519ec1e418db89b88a6a8a8ea0e2f32242940af803b1e02f1945cd215f54fc1d826f81d0471f9723230ae8c7d0f598d32e823f28939848aaa1a9011c279e2f2313ce00965da290aa0990125c7a13d6905a5d5fcdc72e355f55e423b90c3a3a670ce6b87ad02a82e9b07f15ae1a3d82c0ebc075533ab3440dec3250f14db21e841f154e5b27fc8bd30aae1185120c7459922efe1f121f083b7e579487bdf9af524a0301c100f694b03c5f80b2b76d3004357dc8df3ae6a879134cfdd87dcf7ab2c6251e9010bdba1a936ac5a8334ed72b8cbf94e671e2a68c28fd4a6ca75a687d376404678b0aaa4ed061702a9bf7467513bcdc4aa3586b32030ce760d4d69c4296e4ef8bb513c1fc9d8f4876f2d0bf04c551f402aff92bfee1ebb9f4e1d7f30f74781f614a0d1e27dcb124c2676620e696dc323ef908105a57b48ae2395fd6509b6c74caa8296e4ae23dc6478abd0da9612473ffa2fa199f6d450b19221e816e7ced5aed6b84eb0ab20b96e4ce148c33a1d29b5a945679a69080283a3c9667d465e49926c46d496c4b71b8470437bebb6a02739148e350e63ff8063179c3197008b1d32acc752def8e604926b6598702a26d4379a267bd228454a902a01703607b0224a51edf2c321c47e857335c85786b66161d587f52cfc1539cccbe8da36beb7be926501118587d137f975c120fbaeccdc57ec63363598dcc0f144ab7dcd9dba7ac4a280dd62e5b7d854cf06b9e2820e78df01ba026fc532dd8a45be4b7d0f7887da824dffdc9a08b4bdd243ae847f9148c30d881e28c9df857979ec00fb9b24e1d9084861a7a5c2c26be61ccbd4405fbfee52ee71a6a8e4f8f513b364a6e3d675a1f4522fa18aab229381329b977dd03ce57d2824e4182d145db4138a233b270d677f3117f45f3b96e8d2e0161bb915c0906d99af9f9518c2fd34446c20e8db44601c6c958185c60676428c2e78d7146399350005bc89c09119fb3e7e7eae46c28e9ac887b24717b63b43fa2fc37485d86852dcc8ba6b088fadf3c771f880fdb7b189a16d866a771ae1b6bd4e57e99e495038cba1b3ae3f954a035573c6eed31305c7a1c63345273cec172559f78c0a53c307971e383831f0a99b82663f82273ca6274aaf5cb5bfbd8ed9c6099899bc1b0d0909e800412802acfebc2d4a6af0be3d052582099d6757e7aa73a35dfe06c275c0438359d04c5dba677374dae784b11e3af4d1192b804d9a263e84439d23042c53f806905b8c796086fa2156edf1549b495c91db4061819cb51612026fbe6f1d6baa9903a4d980746b26c25c923e9395ff115ebea06db33b8e4b079d8882eb888f88ac9ca01af9280c335af48cf14f750c7c10ca96e6d68800c46a4e31e460c4dfda8f8a8f6d84cccc3d4542e62fb03e7eca7c870001229a3a99bed1658dc5b08160be927d81ef4d20da216ad1ad53f21a9820d641d83e2c8e2e97bbc07c3a38f65d75d5bbe03b4499748f8d34ce8cf720b4ebf471d77abd6e54a27aee6efc552db5bae8ee2f1ff32ddc2338687b50879318c83ac2dfbe0794cb5abdaf669a7d0c28a3489ec4904513313ff936ab394df025248b3d78b3d6067d55b7364f58b1f965a140048ae60ffeedb3243a94b5762dfa75f9b6a2f5bedeef4090a461bc963f46964f7d5c2ef40ab552136457a997ab41ed648758b075d2b034c65f7a21a339ce6e3f0131e026e79ff6d9c4e59d52868f93a65c70d3bee294defe1980322b73fc6d48f588436dc53be49f8c830ed091219638733d3679d8cf9049a1bb9e932b18be91014cd1442a890d4363788a78d99813e44b05708082400e03d441330d758121c0db4488262e1c3688273a1625fe8702dab299ce7f3a9ad664319851bd945ce4d0e20620187743e0c133d4f0f7a479efee6ceefc08a0acd1cb7db44e4f676501861260ea3d27e13d66fb99c70647abb597d25604b5f7efac0f4712ba9c8eb898a3bf2f2ccc58ad5221f5057cb33006d497d9fd4195c21fc4b28b8592637e2b0bfa21630d0c74a153305b142a2b7c0ba4bb8fa9c2d9d7fd40cad6c13fc9e4c4817fe23e988e4de0302e5e373c095a1be65d44cd08a4e0b69b6b5814cd5edb6041a03eaa2c872e9dcd03f76cbfabe5bf172e98290a14d8812beb9df77364d3d3ac7392c66e02ba131db05071a474c445121201e4f3b17da727a26abdfeb2ecc0ea7b5326fb3220726f30f9c87d810c8a50294d5cfa7ca5c24cc1793b14cdf5ec49cc9f185538e7ee63037bf91b3cd474b155960aa82cb4b0b4031736906c60950ac3c1534bbda0a59f20d2c8a64bc8f175e00833bc9b5b81b4dc36b9c303d4a00463b01627a34dd6ad04267b95011979297fcd6f56c6f8191a2b4cce38a855b2f2e76dd1044fc950d3cc360767ea1d0dfd783a386b0eeb78d5c185991029d5d0ea2015973cd58b75e678685a9826a9b412ef186d944328b1364b2cafd5a583c0375a1ffbdd9658a1d24dadccaec7b67226c8274f74f6636744017252e3f15be4fb4b6d503bc0bf87a209f556c3bf4a548abe9ccef3562f35a10bb6ca0f98dfd54cc0398e68ea4c13480fd1e0732e4ae03624e3b15ba6ce94f8095f2ae3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557c8f7b1f0146209e38b8ded1c7d0dfb0d4934746aedc5b68ecaec4dcc64183deab2bc08375f87c7aac90c3516fb98f2ee866ad58de8ad170995e1afdd3c3ef4b56bf108e1c58480049ea91f2686a8fff87a9bc9dcac5efa391892a8cc5359c2455f1e61aeb4bd4122146627cf6c88c669a256faac042fbf0c4e3b0b7be149bc33e9b36ba4f8c334c3b1dd6394e4db14d854c7a144dd14b0e87884b4a405a81a7892288b03b082746b2f607f5636aab328b23695d1d2f65b59e7b5f0cb8343133954f69822a79be70fd3dbf13b1fe64a6a6477f388a52f2e98df6a4539f1f82ee99bbafe061ee96e90443682b569b90d60b3efe25b7c5db73254965206648a14b4ae37c2608b594ff9943a149bec1366e1a4cf8b9cc97be2666129bb56bf9b39fb511a90a7a8f3ef91c12298f2b300864d650ef1924aeb1ab26c8798c161115bfac195d7e901557dc7a5f0888eaf342770c24a0df0bf44e252de7ce6a58602fa7a2c337e9a2634726ec71010cf77e450f77a9d81ac48e0a3b38673797d1cd56ace83d284735c71a91db832d0595f945d0950fc6ef24671b5732d516d24ccde1a2238ade5d00899b4d9b7811e83deb3444a3312e69b2d9b525bd40c11517bdd3f247e3671a54409473c1f5c7c7153239ab9a6bf0d3e78d60b2d1c9ebafb16dd476e37c204dd682dca32dd518fbf9c2b9e1560c90de00597bc6cc51917f827f2d8d3587a23a6d30fd44130973c2a6ca91f13344ef8aa29e301a12aa16b3f8d6d7f720e2589713ebc6d0aa6fc2ba7844df9fe6ad491ce209d744faac156075948ca16e0a981510d732cee2dd0cf0a496d1cf9bf1be1d725ffb74ba953082a48cd2b69321241f5f3624f399a89572515c21ce817d5cf37693b83bffb3c7c4aadc127d25994a28d5dc546d5b3322228b843b7854725a6cab3ac1013681f18ff33137775aa850de64a62752440c8de119d33e5824ebb66b82a205a102b5f906d156e6cee4cd230d7d5d48a18ac2380c6d250e121cd80c2ca447eddc1e2976038a0a9931a8fbd8e3855c7c81f69b35e278ade8df12c8a80cde9c8941b6e7ab0ec0914f0afc686618be614e481ef6bfdce9d33f97dde4e94682ec57af1138122c48a2df3bea95d03c9f86efa5c138fb3133f27ac48dc896c4d65188d9c2c65dbfabe99665e45fbe7566bd70a7c79426160d2756012d94548f5a74e364e0e4369b3ded377ffafb1692d3d4f88b12fc38a4ddfd818927b0c094f34eb5fdf05000694306de75c7ef84cb4b8fa47bd70aa2e89f7b96b2487c7716e1b5b2f1cb1ba79217d70724026a00fb501f44746f56af7a56ddead4ea6eee6bcd3dc2f2390caa11f0beba538ef095a6b57a082d89d029c8da3fbdaa16e83a231ac0598623f67e07dc0895f45e9ff7e9200872abc7390c5d297e274043d86885477a10f8844e968e78dad3598a665a7950e260d3e3207f0b792e6b99e8db28ecd3c0849653703c83ce995ab81412c8d13ec9ef79f4acf9e35ea467ef3c383f1950bcf16e231e5263334df5ff5f1ca4233702a3badd507f56679c634cf4fb054ba662bd729712b2a68a70570192947c05414af2790bdfe23c6fec8ff3a74a329f225f868aec6375108337a9f3a4ab765acdbdb04205be39e5b6c07700e1d2967480c1ac1b62eff2e960db908501475c7cced3ab876b5cba64ef56112e326393f64717368d3ad951295a470ac71e1a365c35e66267a092ffd89a8d9ccb6cc097a585b7f65cf366dea85cfc2f9e84504eac3c5bd8c90510f4c52a5bb4754486c4160b6503d3ae2e3e461643808c6c37aa3cf57671b1b074f84853f9dbd0fdb6764bb04af8200ffc256ae3ab3fd8c9e48ce9fd0967106c3959eac85a97744a9c3aa122a04e14a74b47d51976520de445671ee0b76c5595fd984bfe2c11090b7d1cf7a03334094cd107cd5917f3a883b39497c37efcb399622be3dc4493c09071fb502c04684164120ab01479025fcb4ee457514145f7a3ad2539491941857cc337c53b481875d041d1da85463073268c20c13e4f239c2fbdb060afe31b9910df5010ed88ac3bf3fe747818a74d03977f3dc402e6f20cd2515e86a26175da10b34c631ac513854ea3122743a5374795e50156b772602037571c7b184b66d10a5fb753be4d1c0c777ca21f188eba90c3862d5ba0b7411502a0c68538b7f2dcd53f273947d754f172c773f9bf63f8d7e4b9fb92a79c2e45c6465add1cfbaeed83521921ebdc503101e1d0f3445f583790b9945b3ee4b05fd8f96c92ea633a8a883d455f66a12535129f517f7fbbe09af0bc9d70498648ffc80d01c73e0648058be142cbeaa69cc9741e686da4099aea8c5dd7dd1f44f19529eff77b1cf52dc8483d2d30b7888236eb6d0038d523df83eac98ac27d43294942b0b52341f13b9d70fe245ba50ede36b9ddae855b32a0abf8b93e26d0643501a1775caf96c697673c8bbe30c4764d8cc6d2177babd741ab02ab325c0117e44a400c6db6343c76ceb279134166f81595e7fbf92d79e36e7cee85453d6c488fd2373b5f68dc4d9b3e7ae7003a4041540642ccfec001fe0e0db12b458031c157e1e85af58423ae4b2c17cf40321009ca6f4c5df6db975e000ae6ecedcd214434a16f0d2ca40a93ff55d6c155aba46f2cf8b25d58c97469dc16817770684a0e2f0d2106aa3473fdbb9755926a878088ff414374f84d68e0b899f94c11a2508dc4a01709dd6dae50c992f239b127acc0165bb93de109e4da9cde1367734d7c5462d61f1cf0b00b3738cb22e3b4d97ebc841e4d8d2f91b1886d8f3f951f80bcabe545e670a88997ddfa9f7bc89cc0b4465f39547e70f89ca5a20aaa37591b9e61950cb7fdcc7cc8a9f4622e8ca79028425c654f9b33e3bfdb23e03a470d602c92a5d58dc0123970fd2597dfd18d5ea2b7b20ad7cc2b2b2aa7bb5c003e3118b3d28b4d73daba0046f19c0c6e9a60ed94c0edb6b4d415a653d8d90d6d48ac0391fba77029fe248586ddd383d1367dc7813a93aae1ea0b6e236e78d306a9932e4db68d4c8622be71788c57a657349adc08faac2f6ce6e77846776a4775acbfd8de2f50820bf7e35c8e836a424cf3cde0f6ddd62f5110486d46399e19187260d32b65256b2e93c7cbb54c687e8aa5cb654aa7580cc617f9faf80a86cb73007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc81779d0639aba859c1338d31b531ae01cab769f5468ae4b3ac1bdde2716a85d8a4b0b6b84e6b1ef3f2a36e0f7a9cae7d33d2c17ab1646565f358765c74b2115dcf37673007768e92af3ca943491274afb83265f02073be4491674c4c16795fcc817795ba0ebc9709af1a672f674a4bb873cca7387990de378974661feb0b80cc293d6fddf8918cf7c974aca0addbc10e3c7066a48ddcdce94cbf9ee65b3422cbc7a8ab40a27ac37ef7745f882a55e4bc289f9e0ce96bfb1d88361ad458f639d61bd199734f4d3dc3b7b11a2580dd408895f66b5297badde7c387716f460b98ec7ff6265d3f5dddf79c4ea63bdcde8238ef12bdb41783969b0b80acefde242e68ba3d875499dfcb860186d854ecae6ae87086dcb1bce5bcacf2c532690c4576a36ae2a781bf6b4d39f308d08046e8c63c59907807da8717c3d45ff8e5111ac422d660abf9fbf2d0e92495d2cdafd50323cebbeb63a3c08a6bb7015ad22db6e7643cecb612a7be062682a0fac215c336007573978e6e8a12839d9d48b364a4465550cd9ffe3a3173334f7c7f74055c41e540a474d413040221a858c0091241bbf28e63eeb4619a8b740e3068b30d0fd91072fc2f0a7d193f28a543d863309f235f8f4ec68b21fa95958198e79240e3b5d19da9f2ee22f53470458135c6dc4595ea023a8e7e1b2c0a9031fbc9e999438d6d65847f80ddd76244dfc5a1efac71731d40f85c7eb0b68d5856593c34078d220bd92bb699060bf2540f9fc34c0d4fbae1a0cae94c2343923ac620a19ead21d3c1777070bca5ff90e0d228015def3184c5ed66e33362634ad837d9708bb0898f5609a1409d57215272813b9bdd7b6c02dc275a47e0938a4c5c83e53e533a0913ce3da53f54c873bb1f418af314c1be7e00a751b8bfa9a398e97152beaaf385847808ad2d828c1c7251f1a45bc7697723827e7e7b864c621c47c1be06cbcd26dba4833eaaf9c049628eeaab29e4621135204da61df1c78e4547494b866cd0278474a45e84327f580bb4d3edd6881f69d4c31e2f04786bfaf15f3c6de00946743dfe02a8dd7a5ecd595233a11c8146b3574276162796408a082526cd575413addb6ca97d48f141fa62e188690ca5222aa8845fbb606f8517f8828faaed54f2dd6f1c593af3beaf7b0e1340f0d1d0b39b47a2cbc3746c82944a5beeeeeb7e67577d7f68ff6371e6104827d0e670cd184c722b1daa39934523d603111be24805e70cde7f19b959e43845db7c8af2733471896dc8d88e4b4398694261203ee1a23125d0d546f0358c3a4bc1e9a2d42c6e16ab4a58376f95415cb700afe71be30c0f76713d87873dfb327b171d0781a9132da653190dd428cc805fb534b547e3e211b00899e6f2625913666e4e9d45674bdf87fbadfc571d8648ff82726c4587fbbbb5dca57f592dd2228a970255404f22c61865bd004cb9267b971b6300094d3a99a1eabdf139d13da86d8177e9f06cf74a2fb65051ec01348fa84bf2377838a55a513eb7d6185ffa6b0bff2af8d1c5678b531ec842de7551757bb2eeb606a4d3a41138036c07204e85fcf9c3b4ca53a0a232ccecffb9555e76d451d049eab675173c8ba5ed709e9749ab25f4846e69f83d54af147e46a19159142c5174614930130dc5b0f7485c91e6aba70339ef5b367844d102a4562413ba0b6b5a0972993a277c6b7045bc5764dc0b7b3dbaf3849fcb1dc842e0d61454ca8d58805929d815dccae00e12ea3d1ecccb209a461b0ab7f726bc390c2b84b89607743213a8fc2aa0e83d0ab72604da50e9164a2ffadf8d6de0c3ff66bb2760f1450273a6cd569cee83129c6e45aa9dea7b5b08251c168a1c816e3c228f9dc105e826eaa9901cfaf6198e79119ab91cae0ddc6a9657b946fb69a9451371036096e54ab2d897396a4d87741957f83cd92b82772b0ca7e15de36c4f59c28f5a4cf3ce45c01417ac82d5d3c5d93d521e7ababcd8e2e1145f967466eb77bd688420c57d32e4022f3899be94ba2fe56acf3be46b344c559e41659b2e9d1b1c566da59f2812882f752ed8ef81b3e61321102a2a763393f1d9f76c53bb7056dacc8441e76ee7953ab89f815130ce540aae9f40011121a7b499bb297d28060e6698a15a722622be79f24da3a25ac9a822235ca54817882cb664414dade30e476fb6ddfa7b39d162dddce71744c00f93eadac695f23437227db36cacbc8e7b0889faabcb109da1d058a654dea43ade8f36bc3f87d9cc27be2a38593bba1624c0eb7a34150482adfd90801876cf399253f9107a43d23c136df75a5e2cbc7c5710b2e89994e6d99bde5f653a74b9f48a4b0a6cdc604a8e4f050890ec96d5e89aa9a3295e1fba220c06e06b5cfeab8dda643966e568c5348b959695a22842f7c3ae8907b5e9e4b1ce5ba743e6180d5219f8238efd8e5dfbfa0c71a9f0b2062f2a1927c610d34dce8017841ec5882a147c263bfb794db7695c73335d8be59a0c77529fa548641a4ecb903606bd568ef7e4df1e505cdcb3366ff49ffa6bc886a6aec541efd0b754d69fb78b16716c9345ad4ed8b80bf6693672eea8324dfcae5100212089a2fad63f50d07687241e8cecbfcce91deea91d9ae908410c363347731f5c6e131488bd2c1674a6dfed2315e0cede0628fad895dc689a7431b8a81ade29f4c13e2bf7f8d4e0e48f5d341ae169c56559d8c1b26aa1d0d8de6ccd8d04c97602024aad47046d392789ea7eabe8b96b0ee23fc15149c808b79596eca524824444d3ed676d4f9741d5ab616238ea0a88329c2afb98887a0474396bc4d85dbf111d5a06cb472ed499d17b53f7e6ba62ae9598d7372e06f35cd095d3b08e9375d3774f9375764be8f8e651259c038d273c4c94f0ef37a61811ca45005240f32ad41de10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558755d777a827deaf32df19a72f81f5d7eb9ed54fd5914e1e5eeeb84c0eb5d5afb0842afec1a7948546fe6d0dac813b5b9e045a2f3b326a1df946f7045ab1a77fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85558b867b7b7c0076e744e973dbd2c51efcef8f880361d8f24f0b529fd22c9a43e0b97aa1c6c9fce15bca4fed7e6811fa0be4b7d2e330938c9baadd5f0312138345344df1def7ed0c3d9ac82fd86bfbcc36d92b65154973de95eaff6ec91af20c0d9dbc740ba9dae3fc02eeda599dffdffdcee19d3a052069705855a2770916b31796fb3c1f825c0c624d79c7b5299f593cb885b9587e550848dc37d747d6653009178ddbc4dd16ddc6bc3d9ec1dabf5ab721dfede42e1fbdadd747e7b0c9fef5c8ee70431c65f96ece6092131cea9e3a62fc186adc8a972041ed6f10f1cee89d00689f6d3f29b7c73f81dee162e2fbe8510e21a898f5e770306ac6f96c70b7968f17ca3099bf5cd36b7f62104c5c6a0e9b5fc96f583c4679132c0469c096cc50d20d2e1cd39366f175b4dc6a094263433475d527ba65bc97de62c6e27ab90c35c09a45e592b2811b3a5f63609fc8a14c6cc662f5ce98ab5a1d578d6eadcc656562a483d0390521060634e9cacc92422f6b42d5499b6a05e88a3f9fed181b3ed41893f889dbeafc55a2256fe0bbb968acfc18db8720e023ee1872c047ee08d8473dc075981ffa3c1461912a701bf4b9c9861c428097290a382feed3ef585b9cac5509d92b8e23061f3f739f55445c8dff645b1e455098527d5dab21917eb4e393068e90709d234314f6bdcbb8820b4b96673e0d2f343ebbcba58d5372c1edf4be77db525e801c760ce6aa154a22ce2942c69809779ff7620286930a580cd1f5c9ec0ed34862dd86700d6d7e6bcea14113089ce092635e92ef99e3a0905f3a15d15e8e6a3b88913196ae24bd80d140d6def5cf7cee75fffa8e90bdf62b82ae454a7460f890ed6997dca16d7389040a3c1119cf7d745e60a27b20ea0608c5dfc7019d2f61ac88e6afdda55b4785c7617688f54be83629ab76fbc2cc248195593dde79231f98beab1d8dc40235d4fdb3e1451c774d7012bb4300b93a40807476b1ee80373d6d61480f2a70ae82e4b391428e59269532b175fd1c894092061ee5424ebe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85585e41ec0fde536f82233a63855e43ac15d73f257b8baa7ff7f2e6adc428fa87e182052352978ea62fcb9e21dcb388990c9a4f0cef9058457a441fe0225f0ad5233115c8ae83b6d571d45099e1758b571209e2808eed26389ffc50c1d5409cb37374c47fa57c2775ef2dccf902d8f57a19fca4056ce996597f06f93f00ac75de02d625cf8a0f60bb971248f72ca505103338967450d78f4089273448b82d82f3ee3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d2af67b02c4de7379e30b1d753eb65b5720324ed73baed5a56c417027d63fe3790be9e0b7f5bc296d21b1d4d638213338af07c194c8d9094339b2a96924a2cf2d231c722f5cd047ba5f7d12159f3dc251920a4b4e86988a97abd48d8151f175d17203c1aa9f6feb3bd89f7232ee08970993eda5b32d244ebdd580ba14d4a3343b1c832871b3e240dcd753e3165088972fccc34d58f769d46d6936075c16f095a1741bfd255a09a7f2ec938f90fd0680d755507732781debb3b97716244a5aa0b975b8272f9b577b7edbcd9ceb1b65a9e1ca2404d6a1b45b2e1548efb83bb4c1e3dcfc58ec3b5a00af85317130c52ed783cafdd2a0bff56d83c0f57d13d790bf9fcb1ad17a335a866930c47863c888e9115d24a9c037a99192a3b25038d751cab496c680238bb5093ec1a6f521c3390f671396ab081a2679a55f9a92979f87e9d759a3218afa5c1b3691fe1acb11535a4ed738e5e6db6523b8428200b8995a77557cf5143d459b7f9724e42a6db4b2a422ace98c8469a8f2cabdd3b3e537302d04750344b16e8795e2752b3c41f8e35aff7f16368238ee1114018fc91c6b294f69728f60de1a2d75e52b111ba06a3d2a518ca0e84a9ce7bad8325561e2d09e128696d95a4acf34e5332c6a904fd04ec4524fb7165fc85a81633725c529558bef48619864e274a86a56edf062d4e3fbb751130da5555cefb323567edfaa69cd5201b86c9f64ff2c3333016dbc54345df88f0dd902bf099ab727983d36bd94a1981eec0a5e0fab930c8183ce0d19918ea36e4b4f5a93e0d75c512729eb0d7ee2b59e1d6771300a4bbc56f132586a8e2825d881896dd73de698eecfbb5d6b06113e47ef400f4b5856a35e95e747f14f8bfb36917beba21ed8987ddf08b3d0fe18bf690b65e4f3fd352acc9207b139f9fea324fc236abfa454388591e2ffb264726d3385c11a00849abd2afcd46e3841ad67ff546769ab21bdf16b7d7ed706b89aac847499b41a4b5ca1174669f718b40afb98753870e613e7548dc42476aeef23409639155706ccdf57f047566374acd40629e1876c9a3278ed2298216ffb91832b02bffad9577d181002bca117b9ed98089fa756b1567d646504b0be80ca10b2edeef1e112647319c33457e1e10275edac62d3e702c530d95a3f274111bffaddaca532af8f49bdbb703ddc79d4e928609c5bc01b6b0b806f38c124a09a3ca4ead74ff528001aebd8ee1a76619f7294df23f02ac9225c4e4ed8695ec8cb551e439c917f152a23c92297d10cc8af8dde85c05debadf78a2ce3a94a746e6355691b2841440fa423c60620b9724b004a99abaf2f56f7ddea7976e20ba7c409605dc7010258f884726e2f7a7a1f3bda50390777c99f1dc7ed915f8761f298c2b5b6072fac855fe5c9f985aa29a098eee0a6ccffae2c44157a6dc39eca974bef35997440b1b9054bfb1c95fda3355c51276c279984573c895709f9f4f4987f063ebb68a8075671e44bc7e7cb148aa0e36278f4f161dd48d41247dd8e52e19e69f55a1d92176d345fd548680177139838385e6c5c372598eed44f1caf751b33a7fa847a2287a2ee7405ad06b4f850a95cfcc9091722bcc04aee11fbc0fd44953ef666af8752a396325a98d944d86451f8b4ecc85f1fc38773a0d56aae1d553b343fb0c8acfcef65cba1c2f785ccbf9156db35ff83217a6913dface465366381a8b727dbaae537b44f3b1b646d78ff490d8feff1dff01a7dffc42d06e71148fbea6d68cb5e84e5689e47e5145bceef3d49e16f7a257a9d6bc2778cefa6eabd3ff0e90888913a857c3fa6c25e8a52b00e76a96eb9a387c3e0b97d46562373fb2220ed60900a15ad7f04da1991ca9fa677b7fe548825f7e45465ec9f7089e2fac2d7a9f6c02ab84d84c0ab5939dac61ce089d494d36167d87053771abeb548018d4de8a5780ead0621f0278f1b6dc78087cb6e43351894955d77cba575ed15b3aaf96ef00a4e6b4e5e9dc6b10ae761d945b290c060929d1c8996f758f4bbaf32fa7a0e4228d569db1cd4f2cfa92b3e94586b5e6ca49dcc52c16a8613fde5b1f0e068a34043985e172eb73ae9addab96a9eeae921ee35eebf4184e685429147a18b973cab210d49d7c5965ee14b24af69d968a33cbf8846c15da31538cba421a65fd8dc7cbcb237efe1c36f59ab040fc2459097fa49644d6761b2ccadfeb8ea4836500b971fcd64f9b51fff1a1c82f68405614590868ef1a147118ab6b5dc61abcf93ccc0495351c6d8efc9f3fe71c21bdff004d52f87fc2bdfebe58ec76f5ce90ecd697b3f7e945d5c4c252c7f489c5e50a79a553d3cb711073679a0954c4936aab3d39c3b4b22bcada4f4a70e3d1569dcc4d4593634431f90152f157b72aaa8516c73b4eac36f022b25cccdacac275b3e52d2d7d036fd22254f1aa2934ff03915c99534249bbb4121d75f320682f46b2f6506e053e812880339cdf0fe516bc1a9cee6a6ef068ffd22f1c1991110ef029f266f7d4f5c96adc41e575f4d72cc23faf64591b79924cb2f7d418561464945ab14ccc9cc6aa2c7ca56023116f5f07bd18a233e02efa252d258fdfb717c4b1f67f7beeab25ba2efbb8aa70b53f41c8fe686552d487d3328c78fa0498c49e872957f77c41b483c1b4e7cb27ac2801d75233335d38ef904acda8de90e4bbc152cb37e119ddf974af645a828f7f9945987208d49915302443c330824b6d3ed2c0858ae6aff2cecbc5f6f5b0447f3205abe13793be4686b9378dfed558bfa90eda824dee2f8eea3bb881f66e543606b819b7c334bb3ab8f132355932ff0aeb853ae27471aca7a80b4470653b1c3a082dc018505b73d74b0af1c05783c9efae1cfe1bf7f53462e5d96958bcf5927f4af1fb42fb0d0be7aa9fb6bf007edbe59a5157eae8acfb6851bb87560036e2335cc56c2272c6ac47b332767809dcea1ac90ec256c3edb65c6591269af008d413ae362df1494f8465999e7a108ef8c49535efedd075470dcab7b8006c27a3b51869d05f1e8b4a6264cfa41198c1931ee7991ef1d57480d4213950241c4f01e9494557b12621e96cad2698ec684d3707214fa2ebb113b6ed9bbec705e1bea95878fd6088f9c9ed3c3a840def37014a3f6752f2c2057ea5b50924bac303e02b417adcfe22daf170cdf58fcc719c6b6a472380111238e06c160c6bec4991adc34964b089ffb7b72dc8bdbcd598692312d890029fe1688556fe629d66e2eb61c9509303f269ae9f83b4002dabe90659f57884d2f9748275cdc686933bdef4e42975c1a79ac1993115a65473b66a3a5834275eccf2d31400f80192b73477e2ae2a3e38c1e0f49164b66c4e800b02a67667d828faf21e3ef3463932d7d97826f20cb6736de59bae5cc6c8e00d058540b7a7f93d7f00709590e4f3211a7bcb27f6598a26e036eb628b7ce0735e0a89eaae4854ced5f6e15ab5c75c9dc66f54066983c9c8ec92e2d68c863c3e249d23b32626bcc00f0407c941142c9e08ff48a49881f8faa5aa064c3aeb0d16ff85fd3cdc70c0ba1d68058ec525f4089d3a0511f595552cc8e5ac18028fe8f3dbf9cb30ae4ac3e6bcbce2447dd3c9789c36cc386b5ca7c86a7b4c2aaaa8ff93ccf16d0c8eb1076f40ee0dc120f24487929003c7f5e5c02d647e0ad2fdde76b964d8ef85ab33566ccc58eeed9f1e4ee443422fbbf6add3295353fd7aa135a8dbeb42b2b057a093e43c85e81d6803cbaf1028779f8384ce7376b102eb7c78815c41ea1cafed1d9837c8f9d7df304aa7cc669f22027be5958389e8ae79921bba5943a7edd814179ad32cb721442f065a97b7caefff9e4db9e6b2011679f23911a4255ec72ff407884e51468ea833cb00c81a4ed0294115d21374a148510c657bef477c2c420cbba44d3fc07988bfbd9a11dc8370ce697fdba7963735d6291922809c9b7adf4cd762bbef6e50eaa6799408579368461599ac0721f1b6202b1da03884466482446e30bbed44d550e837d54aded17f841e55e24523ccdaddef4b851abfc77e2ba70e9e046f682a14c95622c785ce2009b4551ca4f18450b984c7a657b443a77cac7955ef1fa67a87c90d8431011b1f74a7623bf46e994b69a4365069f021dc90a84cb5a899625f4703de4c236bd8c2a96a1314e06846288ba81a428088c76f2cd1c7b14e396accc5dceabca9ae7b854c5f7aa5196deaa667791195263370f7afdde39e80582c5620299a176a461638db5bd2e1caf8da1b70f03315b0eb33af1e353f4f60f45b737f6d02d6815fbdf26be3db4f96368b05ea769a39b527957f05d4e3c55aa37c376857f01c32af7a49baa01f2d671342614d9742d632d4060757783b5e62924d14320f46238eb720fd97233c59f334018ab2db5d3d0537031fc2f0ba974adb8e1ebbb92aa9422ccdf7cf7e8332e919fa43e7073f1f2c6e1a6e580bc06f898f2269b0607d9ab5208945e525154653d6fe2f8191a2bbecc0ceacd8ec38aaf9741317c753f27a47fbef709a2497ba0d3571f54c3f589320b0fbcc1ab842adfd7ee0fc209be2f986371f8cdcb3b6a10b8e325cb27d3682509ea99d2ca793c895053485693c0761587b2f2d29a2d771d4d8c2df6c3977ff24c988859f1b94d979a945b01f9138a43c7ad6664f6402bff2e1afeffa9a2d5bee9fa08b7031772d179d1032501754f629aca86bc1afb8570f9b8d4a5a7d6eb28bf7642361da0daede4bc3b4d51074b082a975f37c5a463639ba597b2fe2cb0379e961a91d320ccef8a344ad64b1950733abd16049b1f4d9dfdf4ed4f2150370feac9a0b2ee37d06f8e5421ff50c443146cecb5ff0332100c959e25758c84386a7509b8b9e9ae97938c3a569da6a075f10fc652bb46f5f94ed479034c1be965295f8f16d9cf15920efd005095dd2e2229a0b0cab34728cf27eb16d331ac87a8f495589e3a890b1846dcff5dd14afe3908beef9738b9ede70ae8d031f577d8dae6529d4abf3c0846ecc134385a4b0fa18ce7e3781399fa9c0091df974ffc81771597aa398f0ffa3cf347995a83376ce482bcbd16e44f87f2c947356c3399b18cefb7767f3ba50bc4c40af1a436ed55bfd5c36df629057eaccbc9df887b3f87c3249defbbafc33d3fedce1950c6ca8fbfc92cc66a079c27bff39cde2fa084df701dc7dc0e2952c893730e2a4f2928dcd361eb903c75ae9c4365751c67db308c2ec9f13d24c1185887938ac502a0383f58d592bd766f351751bb83ac4a240188d334335431af74dcb8d3834d1322ef69eb0604482ff1310697a1f504b9f1de35f83b4ab6a3080b3eb481e378c2e26f91a045831e3d61ed2543e1e60c208e64fec31c3da5a62326b3722caf13e9fe4202a555bbb7448b7979f802938c9f7e490078e96beb507219c6162a7750a45cd134d877ee0cf2aa176eb36c66238176408b2b67c7ca44483ca0d20b440e25c49ca188d981310e646f5415fbeb4b63111f0ad65d38f1dd30615370ee70f5c0b17dc63ac3580e4df87cbb64d3d4b8f62cc83ab3444f55e3219803815f5e4c5e88768c4410d10275aa9426550378c04b31bea6eb0797ba480265528fef7c9730c60e465413c8f12b63a7dbf179b310b0263c3a5bef5364db0844e6721c6c28dc9c509ed1f5de189dfb6e3708464c7d44b4d58cbfcf9d0f1768eae05e72d6dffd5129942e5e399e727b6360305e63c0ffee2084ccdf801b39ea7017d0379edfc9560c983fa092662a02120574f5ab1654e8d1dc5b093233b13a98fa0edfd64bc8be4b8537f8d4e83ec1e6f9ed4d1c3e7bdc63dd2bc11c39bee8312fcd988d783727380f7fcc11e69b26671890b55cbdff8656f93602835e7d83ef1856f22880d38b7851f846f6e9e577f587115c564a0e06ab2d7689230b6901f036dc24dc2ebfbf066bc38e5ffc673dda02a3330d9ce8ed379efa5cebe70cfda880526837c0d8f3b535fea9c6487ba336cbcb8b889dadcd0568e7328e0d9c25eb6e2c6144c5ffc5e60b74bdb610beb4dd438c7a882e779fdc8d3ec7262ece0e19c4c461baa9e6d591ca1dbfaefd8dd48f580d74331b9f5eccd8a2d6b0a818016d88528dc066eb50e0b2cb06061227a765dac2b42bc7d38b2204296a0b9d6fbc001bc9e987675086a776fc6028c2f8e3fc4ef284ac44977725124096d2426bf416e83bcdc45433657861619e280f7092e58acec50907d8da489ec4bc866119d1b2572d6fc7856fd762c8f6e03ea33ed277fb55a8f254714ab3790aff29124ed2d8277edea5a4eda13282e0b6c71180ddc9b0b408a86ba7d0cb7d3e255099163b9377d5dc130182998898a0aaa521c4ee626028755084097568d88797fde2be030379a3ced21584efd3f727bef895a3ef97f25cf6ecc9e7cc4a3bc1d2b8acefc2a949c41462d6f148ab7cb37e5992585338e55c37d6e3ddb03c1cfac2c986b26f899bb949119924eee94c5408579f1057ccd3a05919dc8637bc171a7973e20661448eb4ec468dfcf33ffdc0b5e36dfc6e277f888c9d593de160cd11d75cc1f4994dcf0c6c101c5d022b2ba32f9f55531bdab85f18b9c048a6f4a8f13a87913dfe25eb33c661d35b600d31f3a20806b53e5ab44953c3a2a3a25be73e47ba0a53543005272528b690c9307b136b41c12ce24dd1cd73ae82c099d0bb52cf1e015deb4e4ee2276d9ac5aa1f86cff73ead9ff5e04cbd0d18a3f5bce78cb1c54d6a1a32866ffc8b757a62e8fd401b620cecdfa2404e3f4d301de09aea98b637b5298651f74d5c1ecbaae61bfa16b0385239243adceabc78d70e91849d4b8f3977c1358c40833280acb36d397a02a2af3338e212f7164e623e37b91b0bd0af8e70b890270a15d32718b4bf1412c29a4c8555bd5e064bf0cefdf2faf66d0cb21d02f18cb3d30ad717a11b99a0180344c4bda5d41ec33595e411049f98bb717069c1294e0d546e661ab4201fb5697bd350402abb455f8a9468b5045385269088b7c4c9b44fe11ce71ee4acbbe9d210a5fbe04c2a3b22e25eaa474ca16599f96e14c5b4331ddc231307302729bc42eef14127720411a4c405068b8de0a7321879129d370b8f82dcb5bac72d7ca5ff9cef2f3163781ca05ddb24b6467d0ecd0e0699ea90ad85b5d451f4d698522cf9ffcd9ad70be03e58ff7a4525b11fe79f2b6a183ab41f423dac54e2b00b5207dbc8af684723dc6cc19a875e95a0c8b52be2f60f8ec8acd348cd9f90bb672121183d9516a07735c93e0f2ec783c272e478bee2445a9698e59214d6af238ad6e19a7c8ecf64e6437d4ba28a99af918f58a91564cd2400659964d154c5cb19943189034c76d47dda3f0fda30763b748fbb612682f9b6642bc4e335539cd3e8cb3f3e034e832360f6e8c3f6a9316ccc38ac34b61a58a1d63f640a0f6c5c976b5fb117a590e9a62a3a2f121335125b8463fcac29ab58fca59e5fe91ae18080de741ac2094437f71c268d424bfe0be7411ed853586291b7da4616c01edb42ffd54d9134450e570d1f5004b03d428dd2404869189b7f0d462a6877b0ea3615717a6b2ebd2fd95f02313f10870d0ba2c2a99c56c4eb225fdf6e4917826b54c131c4de7a3537f13076438fd0d7ef56af7e86df7ee6c0a5e827e69f06e158a56afb124b37efec0c75a1ec1a4b7db141c04ae9c60e64495fb74d8fffec6267ca150fb4adafa5dbe4e72b155a9df3b50a0fbda9b66ff8761af294614188d3b3c56aef6f54f85d0dfc5765302d8b8ce77c5765f5141b449b12cebd3d1eead2af810fd23967527905afd2d999276317717f6c4e7ac9c5f821f6fc8b43f53d3755eb44eb0e2eba9f7b8385ec5b859b7977e7b0df43eb096a46c9b3c87aa37b50d1b8661d94dee84a639f7dd220a8e530f4f45f3721c74937f01231ce0c0ddd827713e9579d72c60d4403fd3772abd05709a2855e63f2f612c95b33684afbf688bb37631542dd4cbfd7adedff606cda64205312f13d791c1dca6d5f1b35eb87e71d80284343a2f834b3ef1fdd57df8f240775346340369186b371417b1b22a3a6850a35e1e70e423879e6b6d68faa86b1036a74551d3fba019ae0144ebb5d07f8d90c3b2e96024dfc7be23c87c9f31f8e0e7437a9e60e6bf5172f1912e1475097c1cd32f57efccc487aa2c5e9f9864b83c53860ce02a74f5799b2ee9a1fca9c03d956d6131569f5c4d588753ba2cf3ff072b848be361509f0414ab97bb2bf760f3272ce4b093a0e586ce16b0641109f7bf5dad5fc2e075f3a54f31a6ca13581545d5d3c229449164ac0135629435fe67b5ff1481bf1f262a22eb866dea77dca64048d048d458633134c4e932b0c7cb0177bcc967eaab803a02e5e6c1969162b0e80a2623d28894cceda254399cd039cb34c55fb271da522dc3ee43f3d1e02d53d3597d8905d811be8716cd9508887fb7e886acf6e1eeaac346c0d52ed82a8034113f218236587d791f204516536f8d7670f4340f692a3cd34b60efdadec004700a5f2582164369edaacb08c5617f30ad59386981e1013e7bb49504dc1d890d180a53e78f9121c37a393dd713355c757a05e0de2c827ef397ce00d8dbf8c8250691ab980a1662d0317ff20240d81d31f95fc4b4f9877e894a6f093b90e4a1822a535b6df4c5f7cc12657028de1e8d57f2cfb29bef4e20501dc4ca882924aeb801847a976872452da0f7c397005bb2b86d16eb734024309e369e7cd63ddeb5583288048af6665e279a97f115a69abdd5f5dfaf9baf075e2d872b495b945aa35b9f2a710e2d0d7cbf641cae7efb81e7327e10a4e303970eec2b84c3e475ef5885ec7676c81d7e646bb3a88238289729f4e8e1dee7d8223a5dfc217c35391411a298d9405ae6dc26ac10b980f3e0483fe6e53927128568a32ed5f7eaa4615a5568164c13a72462029d3f4c3d63fd2fee11cc9440ed9aedb024016b1dc77f276bbeb4488bf5035b2a78603b85fa266d9a534ebbd2a8c0b4992209d6d8e43fd4a64b213da28d79db5b394fc45ca8f713d3d3681a503a36f480695ba267f8d53bd0c129a275e99ca83b857ab91e444dfc648ebfe0082a4e00533952832a056b00c5d402c1b9697f4d17fbb7b764a271a46c7b61041d8ab023b5c44b39198944dfb7b9a20c0df42eff401a82635ce4270b6dde90402052b2a0c159f280e73713e02fa5b7244e3b9b66f9df73eb52af63871772808efb2346832888783c63e6b0bbf936a0aa9e141a0120a2324e9383e769f50699da78ec1bdb7572627e7580acbf3cad72b1c9cdeaf711e922ca04e1ca4684c66211798eb26c35ec37aa71854a33f449e6f7456ad6bd2bff5b5d4df65929b6e9f7857f72262e991389eed9008ba093efe1ac7f36249ee530b2984924fcceb784e874690ab2f84bea903bc904c07f58f23cc8d54e6ac9ed83ab4da9c140f3ea897aaa2c24d05eaac4c796eed0c041b8db357e29bf824e1797bce9e1f6b0926a8560d59b7dc7cfd24b93db2170997c094d79e03c684933ad53e91a17023d3116c9eca1348bbd2b5e0d80c7c80a29ac4973ac83803eeddfaba4a7f430dfa87035e4c3f39bee14bcbb696a3f40bbb189dde1543adeab0b4d4ee625861da503c2fb5c748f351df4916bceb5a493be38ad4fb17e0273fbbfe06ae2ffb295269dd930a9823c33ef37c5470f49b1a0013594ad53e9173f5498e8a25b44e4fc01ed3b321a5269f11b7672192f196a098aac67dbcdcb925617385e02be54485efb1114ee2a69a77a4ec60a126815a29593b6eaccf9695ac6a28b13e8ba88bde3bf95b6121e5ef11a5b236fa7c00b47050de6a1db9b6326521f632c87690bbdb2db6f9628054e384f3d8bc3bb60255c097c95671f1ec7ea722366b992af7df8276b673a040b94058f5047ee53640eea910f171411a9cfa261cbc5bfa4b79f64c1c8eeaa3e2e2fa9fe861705c82985ed01d5a3bde50b523de10faca25c44c4eb78b3b9da9d4e563abd4867db7e4bc664677c8196f021f3a514394becb59f51a30858fc76defef4b104e2874e7a8a4562f61d7ddbbacdb5591d96d0ec14b332c23f76057e31e02510d462c69143c6e24b92018dfb79f06711aacc3f1fd9e01628f0c03e89466eb39195e6f99b5b273dd49b0a37d997e069282ba510b9b34075fb3a511bf4c34dcd3b50d2a439b4e0c920902628737f2b98c18b6c5df620422363214646c28534a15f67ee4ba7e2db6fff077731db7d49027c99549a119dbaa22e416a62d6626521b0572168d90dfedd4b64fd382b861b08201cc98225c0ee6e899bd2cc4de68b3bf83db779b1dcb433572397507bc9bfdea81d34eb1f8be64fae8f544ac985cbde2025c57e5f03bcc3fc6d951f7610e000439f61dff7407d7b4287ccc01d2f41f7165895e74106b337a446088b056fa1dee30fdb73007a57708706ad6c0607f93e0abb272c624cb50bdf528b7d3d92dab18cfd4447f61eafc2ec4e7d3f39c618274f24263a5d72627bc1b1478937c569df39f8b4a21aa982165590a7cca76466ba8cb47e373f4362880c55e34f80ce08d03d1ce9f152a4fc0e893bb4e8c4d90af3249c06894e063b0aa5a84d240b02778cf27df8a68a74d8ae74ab495fd73aabd70a203581559ee88a05d6feed165c2bcea3d89605c18cf53eeec13d15f7a0d0e0beafcbb59372af7128e3060040835c1316cd30f67a0f0c8ebb3cf511c501dde1dcfbbfde8619290020f13d0057f5e55c8e402747058c931e1b218a9fe723cfe5cca5fae7c1441edb9d61f7c6703d5811e6ec3492e8cae1d4b9029b7a333b953e28e029d1827cc6404749597fbbb573fce800e958ed506bc8a470ca7b3a6ab3781c16b68a6ff5dec810b68a1fe1cbccf26b3625c099bb2b3b580d3c22a410cca903425f8a722d630f76df507571affd9a19b78bf5702e00ae3763f5e90561666a9b817a01ac993cc739531771bfa761bf74deea8875868a48fef8d333075e0d2bb7a4d3c1d765a188b30043aac02c19a4370ce54be3b588877b17fa929e58925b52d36aae8e8eda135053438a43a9fb2cf6fd98b118c4232724278f4f5d31ad0c6c5a66506059edc9bab62ab479b84dbcaa8d93a4b919396abe36a8757b4080dd9ea45f8c7f921b390ee35c3f572c1dc01b432cc00c16a1a9b5940870b139d76991df7e8e985182365ef0b27f91b744bd4e0608bf1d12e54ea28c3615f1fe4d1873cbf1126170586577b5bcef33357e12e10d02b69a9f82984ab1a22badbb28927a263e0cf1fe75f58318cd41f9f00e836dab8392ec04de71244d52c313ee1121d24b10ea574e030c782f7be1d063eba42f535681a25d2e45c6077553fc9b798c250f31dcccc8443f0d5f27c824f965732a9bfb9d7bff64330af9bc78c831d655178599ffa187a2a096074ce03b26dce052cad9a37384290aa6356976a37c69813f1af2bbdcf17996edb7d2c1b7bd34d3e9d50ad749ff818e8c92615189128b759f71025a0030a4ee9468b2fcba9a6568cae0a65ae18c53fd2e6d557c821841a2c9cd72c74fd13dcb56d2a76eeee0942617aee16520c8637b7c3bfd825c146bac46e7191c75699bfe653640a902bb8691252d5474828ae2468e04e1fedbed9a499aea3e5c5ad09745671b69c00e2d23f5da6935f0232531ca3683b00eaa32bb3d258c6ca21e1a369c02905ed1472a97be35e81c19c469c8539545d5dda9d72656088492a65aa19b0fb9c29a69e7a00f89d7afcae67bff9501672dbc77067806a6a26ab7a467f9dc3e14e1749ca08fff250520bffc003e18edfa306db773264f8ae2a2e6c5417146dd82641b5f2a2c6855ba0767585f0a396e67f8d286140f02571b3adcba8b2faa66af0a65b9e5eb3163485eb8600d25553d0a2270b417f4d1b85cead0734ccf4c2e707671c99807a24eec3cb1a0befbf1dd6ea3b7e1d9a328e54da7162d36ca411e217d9591bba1a3aa9f48ac094577b551837e4e381399c93b430fe8c03b8e9925cd6cf19d22b04996090d1cd44af93381d5d1c0e953493d8248a5d9a860b825dcb7bead72e8e4934f09ca0007cb0e42746d166789ce8d67bb8e34019dfb6c8b2c318f16faa899c134d3824325986c8d9c95f4ea32078bce6b3071dcf82d1eef8ac13044777d21fc1d1d8d19f5bc4b042cd767b75bda31a7a73a0beba02b6944eed2690863b3465d522650da9b5e9085f9585cad250aadd7208c618496b0f4d3fb4bbc13c6bd31327e614e1b3ca09a6e55b772dc8ab66fcd5b40deac0267a8c58fec13f39ef98733f1086e0f726fb2b7fecbe6273c69ae9b3392c40f070e186217cd7055abddd4b475da23199da751b2a7484a0e0f74e40ae6bcb551a1717743368f78f7ee5b48f180dc5517a74c34642498be4b4f4adc055a39a8f1e38c22f39bf9ed8d14e7fdcf43144e971d065d29f7d22d893c2a1a996a0995d9e6b9269b059ffe7fc719988d8714740ec1d52cdc1ab1ad730b17eb5e137730d57556216e4b669622e745f3c833c69c13eb014f91c4bffd5912b03d1b41e960c4bdfc6afe31b1cbfe126d1c752bd9b2d92fcb9b81ef98cb99e245f661fdde5490bbfe6209d834b5dd619e30c819b411c2d2b49eed9c6a3f88a43b4b9fe3bf44bb49ea1b9b79374a09e4312e60c804a5f24ad282bda45684b3c3d246eeb0d57829f7e35730b12b4a2b6fd8274af98d17f922bade1e40bf440b3c03c5465bde4cb0a56363b92f2085ce9b5c2a091a5826f213c8b297e83068c785712a0f288d2f1a6fbdda89f0213abca256ad04a9cea3f692387760c83cfdae697f11ad88b8a41a07cc63aa331e8ea2b15cb084d8e6e07d17eb15314e0d14dcd038d35a5355b3c0b7c67ef23ed6e6776e5484ec8d659ed7cd12845a5934c5fe83344eaf05f266fbefaa8af090e2ad3868f18aac7f3c10c4eed20a6b3bc4efed27ab202d661e8d010722a77e419d5115bb7e24f6aa128c06303f401f3f2decd4ae2ae71921f9af8632a5f53e0838790b38f5e59338ebbd22994d929243c431803b81fe62ba6881d11819e62c2cee4a9d10156c62a595e58620a51f65d188b6fb5e821db4e2b050e6dfb8dfc9e55d967bedd8a147c7a40851a51650f35e123e90ca94add46e87f5e0b62e333ad1255567e7cc1e2da389353765794567af97d10702f5407d79313685a7b23f4460cebb3771d8c0f25710d990691442ab37e7652c361a305e22b00e5f6bc00832e0d1c11e79c775bb1576703a707057c92fa7646ba119e425f9beb73528b9c0bdcd09942ec59d5f2325403651f6aba49ed9dc969066557d48c2041d8c3a4cc69d5ab81a26c8ecaa3021b7aea72bd16ec95d16b4542eec65dfa65d1b811da6d8071b1e5737805e7d7be183215ad227e1ce3f97f5a0a1888207c06c6bf8903a33812ffb68415b442bad34cd44b44ea85b6e37f1cf1586825ca99e632076130d668945fe5753fd834663430aa046c3e407dbffdd51234a907476439d5097a8e31a32ad06c169b9350eb80c19a099a4c6e96491e2bdbfdee291bfbadc9c94117af45b9f75b445f9558a613984654e6624182936c35aff8b67a30447629e533bb76ebaf64693e671b2118c5687ca6dd5fad6958c3f01d0e9d6f5cfd5e3dd8531194a13bb3c553d54c85905d42dad4c70cf7ed8e5ba4762b0e5d2a012f65815a8c4a585fabfebd20f961aaef4ea7c96158e8fdfe5d6a3e02ee594af68011007df8e817408f819c71d1e6ff6b9a7f2d05e6d79e8db2639f648241fae5e265eb150da98c628646244cc62109eebca57fda0a718e69fcc12ca01fe182388950dc1f529e054a0b3c2a89866de87b40e54fed5b27a9acd784e41521d8bbf95922448d07bea17be6b4bb5fa792521227495384d7e90aee5ca0b2acae497bf1be5b3ac53e30be5c3d1204ccabadd0a04bd4953ecd8a14655949f85a04b6f6d48c20d7e46c2e51e1bfcecacb61f95ab9b2bc1541d9cd768421698f50a4a450a909656b667efdfb806b1d2531a98d86f0136928930e4d581bb2dd224bca16d13480abf62aee5ba9ddce2bfee470096cf7cad79d83be6f5f808acd2326d417e2dec4ff7d5990a10347d0caed407e50922937c3f479e99dce0740f1d1c164143efaedb393666976f096ab456b2c08e3d125ed7790acff62b3171f1820f4379f4d2143159509e0270b1fd10a7f6e4df08da1fcabead53645db54f2357b26b9118d2460b39e1ac4f5d5c59acbda8f418b78f4c6233652890b3c67f6ff18a8ff51010e24d70bae11eda2feee291eeb43c7cb647c1c2c09b3fa5561fea63a38106d11a2a273c814867677ac2c0aec94a0385a0c3507328b27ed2f60d4ac4cc0425edc744894edd364f9d2f4161dddeba0131e8237121003a35c198ab3184c943232547617915875904288e247821b06b9eb55ca43014db23cde8c0524f20e29da959343fbc7591b8f313a70493c29263f989da020d66649f9c496090b2abbbf0c6ff0d97307c5f6bd8042e857bbf929a7d9d00b0b519814a984555ba6c9724a627723d442d4c068b7be56936d801f18345c5e633ccb2a30d78702d555d4212a2315d72d7bc7f8a147ed6a8da3afb5d6a788f3ff7db4ccfe2f53f3d4e32f62849e38013089bd164f1ad5d9dbeeaa3b683ecc030635a50787e25f7c0ef0b1d93a42e119e08e7d5373e89286552ac919c7783ccbe2b36d899189829b0ba66fc9e407f8ce29b1cab361769cbbb2a38fe4f7a4d6a2fd185433006f957afb26ca625f593242992edc3c0699b01a3421b2e1a9b87d4a575c929e858eb2a2c90cf829982e6e54d85e5febdb2bbc2347b2bceedbdc9a5ccf62af91b96b6b5ec4c958bf322549eaff57b79941c11c5907267bc29938c64984acba0ef8fbacc9f7114e2e63472f69ce4ed9ff55f96849e93c1619a78d248303edc295102fef5994fb315e8c2c4865e149127738e3f7c4f36f97a00c9c0329ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c061535781bd2333a5c5cbc961a0c230ae8ed049f3cb26cce0afaa965675cae2a97dcf8c87d2916405cee52a5709225bf2dfb5452277e091b6f36ee251fc9f31532db44bb177a465208cf3b50212cf53d3c4b38df55d0051646b5fad13df3a0b6e09ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c063fc5b25de544ed98d8c6a1ec548c47a5523e939e8bf07326efdc133352c92b758035c841e4360799f0135deaa0a3c176479cc9d356fb8b3001ee624ba3b4c7c39ed1f1bc76ad05dc1cd1c1c80906a6fa52ac222716941a9fe129b3e5b65d8c062d8144189140bb7c3ac457c80db5c4e44a8d4e443e2773311c9fad69917dce60c97f4cceb9c2dd63df80675554f335640cc46875185af539e2b2f3d6b9e9d7ed57d1ba78e19dd46a4dc3be448ab14e7f5fa8019b3bcf94fc58c2d31d1268465410e277ae39e189a5405eb84d31408cff0e4e1bb4698a4778a86a3b78ba53b9a754a40c9f144e80fd40afc82eb5b85fa7da166804f41641cbdfd1b47c17ae4249962e3a7f7bfcc5742144c3f1e81ee7154b9c3f037e2616226eaef100e203094f8b399c1baadbe4d98eb1c5ec0c61d66af08f61c9280d8be84212bb3aba564f9a4e18b109b19b6aa79663d9635ddced8c8975dbea92e2f2c280e194449d261233fa3e1f3a9bc83ec3e56fdf4d164020792ccf9cc7ff62544e6b499095e5e984cca627a0af554b97ca19127b8fd4a395feea57a22e3a481bb74132c30f7a4c4cb3d891b1c7782cb72c1a45673de45b15d7d97442c83f4f89a63561eea9e5b2db1474967cc79b07f116dfb5f0df30993258310ae8c87b698d164248c81428906c12b38a8b4abc38531ee4da2c4d3a33a9f150147711254bb01e7a36fcc94d01be17fa566cb893fdf9409da62c4ebfe439f5d03dbf215f1cb604acb01b9e42e1c0d83b6e1ca0f0f11649c4b689b7a563f6cf82ac0d608708175515b1a568c4c52346285841d56c54638db511bff0f0bbc2958b1b0866674b54b99729f756887332ab18dbad97a02b74466fc3cd460fdf2a2eaaeedc51cfaf784305da8f01f2d21b1054ae1aade69c0378e2d3a612ed0ffc24fcbd781f7f93cbff1ce93e7933b08922648e164d616509dfba870cde711f63cd7105415ed680d5603977f7c4aa92b24ed869b213d8fa004b93da70314ba02e2a40a635326de3f88b4f854c2946ff25ec150c4c32ad3fdc8682baeb8c28e76f067abc27af406e95b53c22cefda75fbf996bf46b60603a24209d0b1b2dc656bcbed0b7df5a8d76079daa4e1552d5540b12f23a8eed09cc9e87bbd876ea155787e6d8025fc03fbb5eb35273091fbd1211e7f2e18f940087c85f2a9a7286b61a792c76e33387d6033f6fe1329f56d4c4a8e7c2ea4d0efbcfaedf4466fc28f1cadc2b5297529deb3d231839c08652bc8f61070951005e5851b4624eea7adc326ce0f2bd71009b05b50cf91697e983620684e7366f5e07480e9fc5015cbde9996770a2f0da5aa061fca258a31a647323a35d7e764e4c6d0f76c9cae5aaabf071bde7b5a006414914d01c8c33a0b9df6b699bb963f2019985f34d30d8577db06f1cab3bebdb327ed63d1abe28b78fafebc63bf30bb56c4759f57160674ea01f66be094e296a7465cdaba02f6b2a83acaca8f8bc1388faf3dc1db1dbb2deb29bc89f347745225101779b4b419ca58b87bd619683f51151bb45c6a786c5fad5a856b5e5de636d1c9492c06e7b9cc77144dc7f94f1b14abfce2e77d18f0143fe3d8c5275257b429efb6da34fd654cfcca98fb477909cce87c3e55abb2fdbd80d9eb1059a13c4d29f5e0c35b9522b7341e5132d6be1f2c11269d1a5703af7c9f902b3d107e898af939dcb8adac11cd39304a705d79551eba38cfcd045e26ac140d22eafd6448813e6ae8b2fa9d597d42d51ab3f23e702d92c0a306857004026ee6d9d805f705cb15131cd6a85f4fe6c562ee543b0fbb8c06e5e825630c9c36e41dc3939cc7fcc12c97f0d26ffa71f74847cbae4f6a51590b276e5220fcdd216b9ca348c2275d50b1005ed566e571ba36efcaad31830021608c2f422fde6e3851a9606b5a438743fa1fdb54e7df672bc0300249c0b7140f5c6e2c822b43f3069ce74b126e03cc976567552671473970ed5fe3b94bc5bcd3c8f45f47b93194eb3147fabc02c6c0b1337f388e33905c00ffadf99fc1486083750c78b8de368c512e36b6b501df190cdd0009017798e6e09873138fecb58922e9039d1234f122f365a49c5c4d2dee37d11b5267d4f46737e0c6549be0b2df663972fb108264bb8902560007582322de80dbaaf2d2b4977881fee569ccccc12140caf1087f869810eca7befec11accedac05229c0571e4e4113221ce8a09f6cd9c7d3061ec0c0b9ec2b8a0d4771a80974a24b347d30f44fc7fcd5e2055466efd07beb2bb6e0e0aa355ac4cb77e4edd15cdb6e7f4c1a6732ef9962cc741b8cdb7ad0450f6c3d31c21a80817c8c2088c29a5daadd9d66aaac828097afbf56c2780c25db0e66071c8db09103c2d97d9da01551d360382f57a94bcc84d2c827a8a0c5c3d172b1fcd13d63e9901e4ae8ecb1207d1fe8c223bc221da7643f28b836e21674212691329d478a71c4fdd6d383c401a6bb9e93f09819be6d0babfda599a23db562253f2d2b495ae6da82c66a8f63010ffd6e1989e927c176ed5c88b49f19cdeeaa97c4dd63c6e4a36246c3eaa40f4ca6d395cb9f707e059bf98baa2dde96f2086f8c709bf56f3c710768d6cffa617a26ff5a381cdc6b4d74c9078b9a756f1f4bcedb8cd6c177614c09eae8b455de22cafc2541ec7a0f9ac1977c732fd45956b255d96a5d8c855de47b57166054c46978bc728475fe96b0219c598dc71924534b76d68641356d9275dbe1148ad175713f3951f6ad5ba6a525d98db04a253e4fa22a0b7d13a2930bf74210921de659e331a1c1647fe0102ee547f83028d05ba76434ccfa8a7ecf3eecde2302276b9ba13192932fd60614b6d36e0ffaa005162523089d9981a70ad9d5a0233e08ac400ef0d6c2559de5ab375a3d3c4c1835527e65d2c6248d4069355ae8de32032168e5c8bbc68070d338e008c504ff434158adc395be0378e6680609ab937947a2062aba2b90935d6c96d75db61f843e10d6407265642042f448ab87af3173b1e21ce14cc51a181a19251874215cf79e9691f5d3edb271983e00d652ad037965f8b1c1c5a37b7dd8ce45d69e62ce0139112e4a962e8981d8aa6910608b99738eca62a5832e025b52d2849bf3d7a78a2021d5df221a241139f57f9edd464099b1d10679c7058e754c7230c37983c667b2fb2ae06eb37a688a8ab1ddbcd06f5353bab30b5f92a23c8db5ff307c5c7cfd3a9aae2b9191847bb6438398dec3db9a1519ca72d7160939894c093c18791c9a9a83f3a652e6d5d3225a6b9c09269b9f157f95ebf8e96b0bd8743f569e4930639f3ea985959307a4cbba12006bf14ad1140497976060f387bc75c338ccc7da15f3c222737e817af45561ba76f0519319fdc442d942ff7405462d58ae06af2e1ad2ea7fff86b2d3f1af0d649898a35e42dda4f26a3a7e920c86b85f90f5a40ac4936033049e6b02f5b4b13eff5acbf5c28f949dce714d44a5517fb92dbea952f933b0c86818315c01d0e39026fafe23dc2c564806bdd986cf849700533d0fa02aafc42b508432e94e837f2310a94595da24b6b6f11ff60df52ca17542a90af712971b98cc25b7c3857ed0315a848ebfbe20e4bb7dae8ea515673d25fe4c84eac5804818d67bf80e99a7a2c57dfbc3e105be913ed7d6117eff83c57eb11ee6994826003e7419ae200805b220b7d854b0ba02d793315637ffa6f2068866bf550eab83524f31459b31586d7abc0b7b7d8a74242eb2950b8fa66093340cf907fe9e6df5591840e65833f3dcd2ba5db2f11d4ca3d6a1b31f03ecdfda0fafafb6574cbc867b1bbf704392e366f0eb5d1a7f1b865f46978da6019015ab8dacf0e3c33641ce834f9f3f657aad65334c2b059cd7c4e64a390021f4ea250e40ab6456bc84c211b61f2b5568d37ff82ff11814ee6af76cf5d68cb8ef55adfe742649241c52d08b79eaa1721e99fc3378ddf5ea037c37311096dab4e278d4ec1e12eebbedf1d2c5dfd4c69e675f2751492c50b48ab04d2620601285185ae2858d4931ca6fdfdf2a8a88249ae7d0a538e3241c200a64518507a64b1bcec478e108d863a7f625171ed42582b7b9a9389eb3b665421f3d68f59425ba512f80434033bfc50e597def94fbe011380b4aff784295d72261fa2322ba0a24f56eb49e22957a47596452f0269bce077365ec09d1a5a45696fdab3bddcce23ae42a00d3927d03b8f214566ac4c1f5d7a1c872771da5176d41195b5d2b6c9645e0f21ee32ce61432062862068d262ce600cc128407eca99a7da780fcb3e53d215274512e58c7dac233906b856ba279b7156f1ab2c311f47814618f7ac0689733ca19ce9dc1b95d9a0d6e884ff2c1efc0e1ca6e4caf47b9a72f0c7560684e5205c1f2811707e5450d1abd20bcdd39bc37f3fd5374965f243d104d9eab3f752764ce8464ffe5e25e89d0a04fae437b42fa22a65bdbfc99b8ab0c2d8e5c2ff72329420f51369613ab2c92d8d20deaa106732cfa66b3fff2de56ab5d25b45ba37042612ad4833660a3d2a908157b199a150f00fa47e500e83f950f2e98a632b002396636f396153e0975f42e0f48be6be06a655be35612c6d7f8d64dbcd3e0b306313602f99c35a75d6169d6a3fdd8241d3f2e4b67aaa5bb77f40b696fdddc14a7357564c3924fdddcc43837610a231067d7403111ede3984976545fc9c860eb09259fdba7fce03ca9bb4ed90b961519f8559a8cea6625cc8d0891f4642d5529955a1a3adbb84dce88635dd8763aeeaae3ccb1ff30954f1a1e97aa47dd384458c5080f8c7a53c534b3e379a6c0e884cb35954c877685917d9dbc52e6bca78046ef4103be357b6e44946ecb8c4d5399b56efa85381be5d79fbeaf94027afeede3b623b17090bc0e6cd5dcf3a94c46066449def8531ccd1c18d8f3043500c532e0b0451e9c4682255c1853c44a58ea9adc47d55ca8a23e276dbfeec3f315eedfebc8271fe656ca0d43949abe60ac555d86d5c29d092df0229bd1986b40dd990356d5f23656fc05f48aab0705e9cf0ba24ac5e1fcb4d339cf2fec2d6942ee2ddd4c76a8740ebf60b3ff9be2fff6a5eee01eeeed802177fef4705de5efc45ef2c1a22fd745a802cd9b0f8ae9025218d78e0fa2408f63575b2c563c0dfbe778937e67ff4b6aa6b53e21fe0c6e922747e644f23d204ee01cbe63e6c0abbca916c47078f0cce8af94e3830d15e5df49cc716be8770c51914ff0e3f311d32a820bd0f7138f4bfc6e7865143b7e9b89eb2de9c498468155fe29326eace2b0049466086d14dbfc9b0a6f2e18f6b3fcccb6fef8f4f8eff919e726717544612fe567a3782225d52a381e06cd77c0b123e13344e8696ea2a3b3852ba129808299b42b9a96a8032d91005a4384eb16309e593850c80e4c237fd7eb2c008a7ad9673b898cd061ac82281aac3072752d4ffd0b3e5dd88c43bee0327c14aebe4839fa3685c2da9227a4b56770c8ee5f936fcb11d8dbc61cf6fd04746421de0539591fbd0c83f19a4b03d2eebffc7279faa45ad3a057844753d8d744bcd79b327fffb478924af20b870e365f3e1348710d7552d4ca61490744f587fd88674ac330d034a9c4ec63c198549226d745eddd979e3696e085489dafad0ff1796090e96e442af5db25e8ed864d5bba91dbe1e1dd679760ab4e3a7e1fc4e4f106544dd7d611171f64b0dfd2435352b5d61000694492de4a590bbf0b7997228dc7bc3d708c72cdd2ce24443963600dd975e553c22158239ae7e76935e3cb1749ec972e60ae84ddc46dadefe6c69f2a158ca9afa6ced8a715b86ad3c1da4afbc4eef16abd8a522bb946d841bd389ba7415ddc54b6ded71d237d28534e64dc638a5eba0c3b8a6cb1cfc202bafc7088497d4754af710ce3792994b395743f0dfdb096a39487a7f7b6e2d13b19a29f14cafbb51c194e98513e9d54c2fffee70d6008271dc535daa1bb9abd5c0594fa46bf17d309c11368f5d80fa5c62d3683546e4833b4e02ca11bf26e7085cc0482dbcda62ed68178cbece361394a7454c94444da72f600cf6c3dcc1029e0e5c8cf54e1bf92ec7a4f58d776063be0671f956a55ed4ba0355de686608143cc4868ca68ea8846ac0022d002ec43c2c75e5e35a92d4a4217c385cadf93f7a35867267f449b058438f08f013293c6ce274f749aa502f8042fcf9a1610ecd11edfd7ac365efec04ac27a5c2dd14acc307ad195c01e4972df13a1cc3d17aebc91d3e9fece1e414632fedd297bc892c862b55a5ed7aaeeaa4793eebaf6eb68c2a41339126c4204de48f6c529f0f1b98e616899b59ffd61b618f993c54dc1e9e0f82f7f9798708683b601e2ab06c3c0d3c3dd84a1b5a65fab2e5bfd405802a826d13709e8ff4fd48536ad925ab68ba5a99cd580ecb6c5c250bc0449cb803df98903ff23519813b3959a52c9be2f0a5f86846d6956166cfa1783f7a825c3728aea244fba31f2b6d979e3bce11b689ac14b29358cb90864cb3420bffca281cb92aa0b08bb54c74687eeb4259c7d372fcc97c9bc4e0b1464881c1809ddca66b696341ff1596e2cd2c60b4310ef4dc9942b7aee279838ab85094c5232b7e62edaad14b551692915634b7962ca70ed60d1f5eccd9520ce61560a27dae9d288daf08413d692eaf36b2441453ee3ded454e3b49ddf9db0289a../../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/dtsrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootkernel-rt-4.18.0-522.rt7.311.el8.src.rpminstallonlypkg(kernel)kernel-rt-debug-develkernel-rt-debug-devel(x86-64)kernel-rt-debug-devel-x86_64kernel-rt-devel-uname-rkernel-rt-devel-x86_64    /bin/shfindutilsfindutilsperl-interpreterrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3eJ&e@@e;@e9@e/e&@eev@e ddddܺ@d@dϋ@d˖díd ds@d~d@d[@dr@d@dC@dddqdldf@d\dX@dJcdFo@d>@d9@@d3@d.@d.@d-bd-bd-bd%yd%yddxdcU@cU@cc`cl@c@c@c@c@cwc&@c&@c@c@c@ccc=@cc@cۥcT@cױ@ccvc0cƍc@ccFcR@ccc@c@c|cwscr-cn9@ck@ch@cb[c_cV~@cMCc@c:c2c*c!@c*c@ccd@cb{@b{@b5@bbbb@bz@bޅb@bVbby@bb>bb@bUblbb2@b@bb@b@bbw@bb@b~H@bzSbu bk@bjbgbf@b_bX bT@bP#bMbMbF@bEbA@b; b8hb3"b1@b/.@b(b@b!b~b @b@ba@a aa7aaaa@a@aa5a@aza@a@aaW@aayav@amaaf@a]aQ@aLl@aC1a@a;Ha0a(a'@a&0a$@a#a@a@aS@a @aa a /a`@`` @``@`@`ݮ@`ٹ`@`"@`@`9@`D``r`r```@```Z`f@``@` @`@``@`@`e@`}p`x*`t6@`n@`m`e`c`a@`[)`X`P`KW`J@`Gc@`B@`?z@`<@`7@`2K@`0`-@`*b@`%@`#`"y@`!'``>`@``@` `@```2@___I@_@_@__1@__ܙ_H@__@__@_м@_v@_ǁ_ǁ__@__G@_@_ _i_#_@_/@__@_:_@___@_ _@_"_@__~@_}_w@_s!_k8_e_cO_`_X_P_>e_;_16_*@_&_"@__@__ L_X@_c^z^^@@^^K^@^W@^@^n@^y^^@^א^?@^ϧ^V@^^˳@^@^Ǿ^^@^'@^@^^@^^U@^^^&@^^@^1^^H^^^@^k@^@^@^0^^|@^{G^{G^wS@^v^t@^s^^r @^p^n^l@^j$@^g@^f/^c^Y^U @^Ri@^O@^Nt^M#@^F^C^AE^9\^4^2@^*@^&^!^@^g@^r]]]+]@]]]B]]Y]@]߶]e@]]]]@]Γ@]A]ʞ]@]@]{@])]]@]W]]]z@]]@]]@]V]@]m]z3@]v>]rJ@]i]g@]e@]c]^][]V]UI@]S]R@]QT]L]J@]D%]B@]A]@1@]>]9]8H@]6]1]0_@]/ ]-@](v@]'$]%@]$];]]@]^@]@]@]:]@\\@\Q\@\@\\\t@\@\\@\9\\ޢ@\P\@\ڭ\\@\g\@\\s@\-@\8\@\\O\@\\f\@\\r@\,@\\@\7\C@\\@\N\\@\@\6\B@\\\@\@\@\@\M\M\M\~d\k\eX@\d\^\\\Z@\HW@\C@\@n@\?\8@\73\3?@\@\\>@\@\I\@\ `\\l@\&@[[@[1[[@[H[@[_[@[[v[[@[@[ٙ@[S@[ @[ @[[@[[[@[;@[@[R@[[@[][ @[@[t[#@[[[:@[[@[Q@[[@[\[[[@[v[qrDenys Vlasenko [4.18.0-522.rt7.311.el8]Denys Vlasenko [4.18.0-521.rt7.310.el8]Denys Vlasenko [4.18.0-520.rt7.309.el8]Denys Vlasenko [4.18.0-519.rt7.308.el8]Denys Vlasenko [4.18.0-518.rt7.307.el8]Denys Vlasenko [4.18.0-517.rt7.306.el8]Denys Vlasenko [4.18.0-516.rt7.305.el8]Denys Vlasenko [4.18.0-515.rt7.304.el8]Denys Vlasenko [4.18.0-514.rt7.303.el8]Denys Vlasenko [4.18.0-513.rt7.302.el8]Denys Vlasenko [4.18.0-512.rt7.301.el8]Denys Vlasenko [4.18.0-511.rt7.300.el8]Denys Vlasenko [4.18.0-510.rt7.299.el8]Denys Vlasenko [4.18.0-509.rt7.298.el8]Denys Vlasenko [4.18.0-508.rt7.297.el8]Denys Vlasenko [4.18.0-507.rt7.296.el8]Denys Vlasenko [4.18.0-506.rt7.295.el8]Denys Vlasenko [4.18.0-505.rt7.294.el8]Denys Vlasenko [4.18.0-504.rt7.293.el8]Denys Vlasenko [4.18.0-503.rt7.292.el8]Denys Vlasenko [4.18.0-502.rt7.291.el8]Denys Vlasenko [4.18.0-501.rt7.290.el8]Denys Vlasenko [4.18.0-500.rt7.289.el8]Denys Vlasenko [4.18.0-499.rt7.288.el8]Denys Vlasenko [4.18.0-498.rt7.287.el8]Denys Vlasenko [4.18.0-497.rt7.286.el8]Denys Vlasenko [4.18.0-496.rt7.285.el8]Denys Vlasenko [4.18.0-495.rt7.284.el8]Denys Vlasenko [4.18.0-494.rt7.283.el8]Denys Vlasenko [4.18.0-493.rt7.282.el8]Denys Vlasenko [4.18.0-492.rt7.281.el8]Denys Vlasenko [4.18.0-491.rt7.280.el8]Derek Barbosa [4.18.0-489.rt7.278.el8]Derek Barbosa [4.18.0-488.rt7.277.el8]John B. Wyatt IV [4.18.0-487.rt7.276.el8]Derek Barbosa [4.18.0-486.rt7.275.el8]John B. Wyatt IV [4.18.0-485.rt7.274.el8]John B. Wyatt IV [4.18.0-484.rt7.273.el8]John B. Wyatt IV [4.18.0-483.rt7.272.el8]John B. Wyatt IV [4.18.0-482.rt7.271.el8]John B. Wyatt IV [4.18.0-481.rt7.270.el8]Luis Claudio R. Goncalves [4.18.0-480.rt7.269.el8]Luis Claudio R. Goncalves [4.18.0-479.rt7.268.el8]Luis Claudio R. Goncalves [4.18.0-478.rt7.267.el8]Denys Vlasenko [4.18.0-478.el8]Lucas Zampieri [4.18.0-477.2.1.el8]Lucas Zampieri [4.18.0-477.1.1.el8]Lucas Zampieri [4.18.0-477.el8]Lucas Zampieri [4.18.0-476.el8]Lucas Zampieri [4.18.0-475.el8]Lucas Zampieri [4.18.0-474.el8]Lucas Zampieri [4.18.0-473.el8]Lucas Zampieri [4.18.0-472.el8]Lucas Zampieri [4.18.0-471.el8]Lucas Zampieri [4.18.0-470.el8]Lucas Zampieri [4.18.0-469.el8]Lucas Zampieri [4.18.0-468.el8]Lucas Zampieri [4.18.0-467.el8]Lucas Zampieri [4.18.0-466.el8]Lucas Zampieri [4.18.0-465.el8]Lucas Zampieri [4.18.0-464.el8]Lucas Zampieri [4.18.0-463.el8]Lucas Zampieri [4.18.0-462.el8]Lucas Zampieri [4.18.0-461.el8]Lucas Zampieri [4.18.0-459.el8]Lucas Zampieri [4.18.0-458.el8]Lucas Zampieri [4.18.0-457.el8]Lucas Zampieri [4.18.0-456.el8]Lucas Zampieri [4.18.0-455.el8]Lucas Zampieri [4.18.0-454.el8]Lucas Zampieri [4.18.0-453.el8]Lucas Zampieri [4.18.0-452.el8]Lucas Zampieri [4.18.0-451.el8]Lucas Zampieri [4.18.0-450.el8]Lucas Zampieri [4.18.0-449.el8]Lucas Zampieri [4.18.0-448.el8]Lucas Zampieri [4.18.0-447.el8]Lucas Zampieri [4.18.0-446.el8]Lucas Zampieri [4.18.0-445.el8]Lucas Zampieri [4.18.0-444.el8]Lucas Zampieri [4.18.0-442.el8.v2.g6f5f]Lucas Zampieri [4.18.0-441.el8]Lucas Zampieri [4.18.0-440.el8]Lucas Zampieri [4.18.0-439.el8]Lucas Zampieri [4.18.0-438.el8]Lucas Zampieri [4.18.0-437.el8]Lucas Zampieri [4.18.0-436.el8]Lucas Zampieri [4.18.0-435.el8]Lucas Zampieri [4.18.0-434.el8]Lucas Zampieri [4.18.0-433.el8]Lucas Zampieri [4.18.0-432.el8]Lucas Zampieri [4.18.0-431.el8]Lucas Zampieri [4.18.0-430.el8]Lucas Zampieri [4.18.0-429.el8]Lucas Zampieri [4.18.0-428.el8]Lucas Zampieri [4.18.0-427.el8]Lucas Zampieri [4.18.0-426.el8]Jarod Wilson [4.18.0-425.el8]Jarod Wilson [4.18.0-424.el8]Jarod Wilson [4.18.0-423.el8]Jarod Wilson [4.18.0-422.el8]Jarod Wilson [4.18.0-421.el8]Jarod Wilson [4.18.0-420.el8]Jarod Wilson [4.18.0-419.el8]Jarod Wilson [4.18.0-418.el8]Jarod Wilson [4.18.0-417.el8]Jarod Wilson [4.18.0-416.el8]Jarod Wilson [4.18.0-415.el8]Jarod Wilson [4.18.0-414.el8]Jarod Wilson [4.18.0-413.el8]Jarod Wilson [4.18.0-412.el8]Jarod Wilson [4.18.0-411.el8]Jarod Wilson [4.18.0-410.el8]Jarod Wilson [4.18.0-409.el8]Jarod Wilson [4.18.0-408.el8]Jarod Wilson [4.18.0-407.el8]Jarod Wilson [4.18.0-406.el8]Jarod Wilson [4.18.0-405.el8]Jarod Wilson [4.18.0-404.el8]Jarod Wilson [4.18.0-403.el8]Jarod Wilson [4.18.0-402.el8]Jarod Wilson [4.18.0-401.el8]Jarod Wilson [4.18.0-400.el8]Jarod Wilson [4.18.0-399.el8]Jarod Wilson [4.18.0-398.el8]Jarod Wilson [4.18.0-397.el8]Jarod Wilson [4.18.0-396.el8]Jarod Wilson [4.18.0-395.el8]Jarod Wilson [4.18.0-394.el8]Jarod Wilson [4.18.0-393.el8]Jarod Wilson [4.18.0-392.el8]Jarod Wilson [4.18.0-391.el8]Jarod Wilson [4.18.0-390.el8]Jarod Wilson [4.18.0-389.el8]Jarod Wilson [4.18.0-388.el8]Jarod Wilson [4.18.0-387.el8]Jarod Wilson [4.18.0-386.el8]Jarod Wilson [4.18.0-385.el8]Bruno Meneguele [4.18.0-384.el8]Jarod Wilson [4.18.0-383.el8]Jarod Wilson [4.18.0-382.el8]Jarod Wilson [4.18.0-381.el8]Jarod Wilson [4.18.0-380.el8]Jarod Wilson [4.18.0-379.el8]Jarod Wilson [4.18.0-378.el8]Jarod Wilson [4.18.0-377.el8]Jarod Wilson [4.18.0-376.el8]Jarod Wilson [4.18.0-375.el8]Jarod Wilson [4.18.0-374.el8]Jarod Wilson [4.18.0-373.el8]Augusto Caringi [4.18.0-372.2.1.el8]Augusto Caringi [4.18.0-372.1.1.el8]Augusto Caringi [4.18.0-372.el8]Augusto Caringi [4.18.0-371.el8]Augusto Caringi [4.18.0-370.el8]Augusto Caringi [4.18.0-369.el8]Augusto Caringi [4.18.0-368.el8]Augusto Caringi [4.18.0-367.el8]Augusto Caringi [4.18.0-366.el8]Augusto Caringi [4.18.0-365.el8]Augusto Caringi [4.18.0-364.el8]Augusto Caringi [4.18.0-363.el8]Augusto Caringi [4.18.0-362.el8]Augusto Caringi [4.18.0-361.el8]Augusto Caringi [4.18.0-360.el8]Augusto Caringi [4.18.0-359.el8]Augusto Caringi [4.18.0-358.el8]Augusto Caringi [4.18.0-357.el8]Augusto Caringi [4.18.0-356.el8]Augusto Caringi [4.18.0-355.el8]Augusto Caringi [4.18.0-354.el8]Jan Stancek [4.18.0-353.el8]Jan Stancek [4.18.0-352.el8]Bruno Meneguele [4.18.0-351.el8]Bruno Meneguele [4.18.0-350.el8]Augusto Caringi [4.18.0-349.el8]Augusto Caringi [4.18.0-348.6.el8]Augusto Caringi [4.18.0-348.5.el8]Augusto Caringi [4.18.0-348.4.el8]Augusto Caringi [4.18.0-348.3.el8]Augusto Caringi [4.18.0-348.2.el8]Augusto Caringi [4.18.0-348.1.el8]Augusto Caringi [4.18.0-345.1.el8]Augusto Caringi [4.18.0-343.1.el8]Bruno Meneguele [4.18.0-343.el8]Bruno Meneguele [4.18.0-342.el8]Bruno Meneguele [4.18.0-341.el8]Bruno Meneguele [4.18.0-340.el8]Bruno Meneguele [4.18.0-339.el8]Bruno Meneguele [4.18.0-338.el8]Bruno Meneguele [4.18.0-337.el8]Bruno Meneguele [4.18.0-336.el8]Bruno Meneguele [4.18.0-335.el8]Bruno Meneguele [4.18.0-334.el8]Bruno Meneguele [4.18.0-333.el8]Bruno Meneguele [4.18.0-332.el8]Bruno Meneguele [4.18.0-331.el8]Bruno Meneguele [4.18.0-330.el8]Bruno Meneguele [4.18.0-329.el8]Bruno Meneguele [4.18.0-328.el8]Augusto Caringi [4.18.0-327.el8]Augusto Caringi [4.18.0-326.el8]Augusto Caringi [4.18.0-325.el8]Augusto Caringi [4.18.0-324.el8]Augusto Caringi [4.18.0-323.el8]Bruno Meneguele [4.18.0-322.el8]Bruno Meneguele [4.18.0-321.el8]Bruno Meneguele [4.18.0-320.el8]Bruno Meneguele [4.18.0-319.el8]Bruno Meneguele [4.18.0-318.el8]Bruno Meneguele [4.18.0-317.el8]Bruno Meneguele [4.18.0-316.el8]Bruno Meneguele [4.18.0-315.el8]Bruno Meneguele [4.18.0-314.el8]Bruno Meneguele [4.18.0-313.el8]Bruno Meneguele [4.18.0-312.el8]Bruno Meneguele [4.18.0-311.el8]Bruno Meneguele [4.18.0-310.el8]Bruno Meneguele [4.18.0-309.el8]Bruno Meneguele [4.18.0-308.el8]Bruno Meneguele [4.18.0-307.el8]Bruno Meneguele [4.18.0-306.el8]Bruno Meneguele [4.18.0-305.8.el8]Bruno Meneguele [4.18.0-305.7.el8]Bruno Meneguele [4.18.0-305.6.el8]Bruno Meneguele [4.18.0-305.5.el8]Bruno Meneguele [4.18.0-305.4.el8]Bruno Meneguele [4.18.0-305.3.el8]Bruno Meneguele [4.18.0-305.2.el8]Bruno Meneguele [4.18.0-305.1.el8]Bruno Meneguele [4.18.0-304.7.el8]Bruno Meneguele [4.18.0-304.6.el8]Bruno Meneguele [4.18.0-304.5.el8]Bruno Meneguele [4.18.0-304.4.el8]Bruno Meneguele [4.18.0-304.3.el8]Bruno Meneguele [4.18.0-304.2.el8]Bruno Meneguele [4.18.0-304.1.el8]Bruno Meneguele [4.18.0-303.1.el8]Bruno Meneguele [4.18.0-302.1.el8]Bruno Meneguele [4.18.0-301.1.el8]Bruno Meneguele [4.18.0-300.1.el8]Bruno Meneguele [4.18.0-299.1.el8]Bruno Meneguele [4.18.0-298.1.el8]Bruno Meneguele [4.18.0-297.1.el8]Jan Stancek [4.18.0-297.el8]Jan Stancek [4.18.0-296.el8]Jan Stancek [4.18.0-295.el8]Jan Stancek [4.18.0-294.el8]Jan Stancek [4.18.0-293.el8]Jan Stancek [4.18.0-292.el8]Jan Stancek [4.18.0-291.el8]Jan Stancek [4.18.0-290.el8]Jan Stancek [4.18.0-289.el8]Jan Stancek [4.18.0-288.el8]Jan Stancek [4.18.0-287.el8]Jan Stancek [4.18.0-286.el8]Jan Stancek [4.18.0-285.el8]Jan Stancek [4.18.0-284.el8]Jan Stancek [4.18.0-283.el8]Jan Stancek [4.18.0-282.el8]Jan Stancek [4.18.0-281.el8]Jan Stancek [4.18.0-280.el8]Jan Stancek [4.18.0-279.el8]Jan Stancek [4.18.0-278.el8]Jan Stancek [4.18.0-277.el8]Jan Stancek [4.18.0-276.el8]Jan Stancek [4.18.0-275.el8]Jan Stancek [4.18.0-274.el8]Jan Stancek [4.18.0-273.el8]Jan Stancek [4.18.0-272.el8]Jan Stancek [4.18.0-271.el8]Jan Stancek [4.18.0-270.el8]Jan Stancek [4.18.0-269.el8]Jan Stancek [4.18.0-268.el8]Jan Stancek [4.18.0-267.el8]Jan Stancek [4.18.0-266.el8]Jan Stancek [4.18.0-265.el8]Jan Stancek [4.18.0-264.el8]Jan Stancek [4.18.0-263.el8]Jan Stancek [4.18.0-262.el8]Jan Stancek [4.18.0-261.el8]Jan Stancek [4.18.0-260.el8]Jan Stancek [4.18.0-259.el8]Jan Stancek [4.18.0-258.el8]Jan Stancek [4.18.0-257.el8]Jan Stancek [4.18.0-256.el8]Jan Stancek [4.18.0-255.el8]Jan Stancek [4.18.0-254.el8]Jan Stancek [4.18.0-253.el8]Jan Stancek [4.18.0-252.el8]Jan Stancek [4.18.0-251.el8]Jan Stancek [4.18.0-250.el8]Jan Stancek [4.18.0-249.el8]Jan Stancek [4.18.0-248.el8]Jan Stancek [4.18.0-247.el8]Jan Stancek [4.18.0-246.el8]Jan Stancek [4.18.0-245.el8]Jan Stancek [4.18.0-244.el8]Jan Stancek [4.18.0-243.el8]Jan Stancek [4.18.0-242.el8]Jan Stancek [4.18.0-241.el8]Jan Stancek [4.18.0-240.10.el8]Jan Stancek [4.18.0-240.9.el8]Jan Stancek [4.18.0-240.8.el8]Jan Stancek [4.18.0-240.7.el8]Jan Stancek [4.18.0-240.6.el8]Jan Stancek [4.18.0-240.5.el8]Jan Stancek [4.18.0-240.4.el8]Jan Stancek [4.18.0-240.3.el8]Jan Stancek [4.18.0-240.2.el8]Jan Stancek [4.18.0-240.1.el8]Jan Stancek [4.18.0-239.1.el8]Frantisek Hrbata [4.18.0-239.el8]Frantisek Hrbata [4.18.0-238.el8]Frantisek Hrbata [4.18.0-237.el8]Frantisek Hrbata [4.18.0-236.el8]Frantisek Hrbata [4.18.0-235.el8]Frantisek Hrbata [4.18.0-234.el8]Frantisek Hrbata [4.18.0-233.el8]Frantisek Hrbata [4.18.0-232.el8]Frantisek Hrbata [4.18.0-231.el8]Frantisek Hrbata [4.18.0-230.el8]Frantisek Hrbata [4.18.0-229.el8]Frantisek Hrbata [4.18.0-228.el8]Frantisek Hrbata [4.18.0-227.el8]Frantisek Hrbata [4.18.0-226.el8]Frantisek Hrbata [4.18.0-225.el8]Frantisek Hrbata [4.18.0-224.el8]Frantisek Hrbata [4.18.0-223.el8]Frantisek Hrbata [4.18.0-222.el8]Frantisek Hrbata [4.18.0-221.el8]Frantisek Hrbata [4.18.0-220.el8]Frantisek Hrbata [4.18.0-219.el8]Frantisek Hrbata [4.18.0-218.el8]Frantisek Hrbata [4.18.0-217.el8]Frantisek Hrbata [4.18.0-216.el8]Frantisek Hrbata [4.18.0-215.el8]Frantisek Hrbata [4.18.0-214.el8]Frantisek Hrbata [4.18.0-213.el8]Frantisek Hrbata [4.18.0-212.el8]Frantisek Hrbata [4.18.0-211.el8]Frantisek Hrbata [4.18.0-210.el8]Frantisek Hrbata [4.18.0-209.el8]Frantisek Hrbata [4.18.0-208.el8]Frantisek Hrbata [4.18.0-207.el8]Frantisek Hrbata [4.18.0-206.el8]Frantisek Hrbata [4.18.0-205.el8]Frantisek Hrbata [4.18.0-204.el8]Frantisek Hrbata [4.18.0-203.el8]Frantisek Hrbata [4.18.0-202.el8]Frantisek Hrbata [4.18.0-201.el8]Frantisek Hrbata [4.18.0-200.el8]Frantisek Hrbata [4.18.0-199.el8]Frantisek Hrbata [4.18.0-198.el8]Frantisek Hrbata [4.18.0-197.el8]Frantisek Hrbata [4.18.0-196.el8]Frantisek Hrbata [4.18.0-195.el8]Frantisek Hrbata [4.18.0-194.el8]Frantisek Hrbata [4.18.0-193.15.el8]Frantisek Hrbata [4.18.0-193.14.el8]Frantisek Hrbata [4.18.0-193.13.el8]Frantisek Hrbata [4.18.0-193.12.el8]Frantisek Hrbata [4.18.0-193.11.el8]Frantisek Hrbata [4.18.0-193.10.el8]Frantisek Hrbata [4.18.0-193.9.el8]Frantisek Hrbata [4.18.0-193.8.el8]Frantisek Hrbata [4.18.0-193.7.el8]Frantisek Hrbata [4.18.0-193.6.el8]Frantisek Hrbata [4.18.0-193.5.el8]Frantisek Hrbata [4.18.0-193.4.el8]Frantisek Hrbata [4.18.0-193.3.el8]Frantisek Hrbata [4.18.0-193.2.el8]Frantisek Hrbata [4.18.0-193.1.el8]Frantisek Hrbata [4.18.0-192.2.el8]Frantisek Hrbata [4.18.0-192.1.el8]Frantisek Hrbata [4.18.0-191.2.el8]Frantisek Hrbata [4.18.0-191.1.el8]Frantisek Hrbata [4.18.0-190.3.el8]Frantisek Hrbata [4.18.0-190.2.el8]Frantisek Hrbata [4.18.0-190.1.el8]Frantisek Hrbata [4.18.0-189.1.el8]Frantisek Hrbata [4.18.0-188.3.el8]Frantisek Hrbata [4.18.0-188.2.el8]Frantisek Hrbata [4.18.0-188.1.el8]Frantisek Hrbata [4.18.0-187.2.el8]Frantisek Hrbata [4.18.0-187.1.el8]Frantisek Hrbata [4.18.0-186.2.el8]Frantisek Hrbata [4.18.0-186.1.el8]Bruno Meneguele [4.18.0-185.el8]Herton R. Krzesinski [4.18.0-184.el8]Herton R. Krzesinski [4.18.0-183.el8]Herton R. Krzesinski [4.18.0-182.el8]Herton R. Krzesinski [4.18.0-181.el8]Herton R. Krzesinski [4.18.0-180.el8]Herton R. Krzesinski [4.18.0-179.el8]Herton R. Krzesinski [4.18.0-178.el8]Herton R. Krzesinski [4.18.0-177.el8]Herton R. Krzesinski [4.18.0-176.el8]Bruno Meneguele [4.18.0-175.el8]Bruno Meneguele [4.18.0-174.el8]Bruno Meneguele [4.18.0-173.el8]Bruno Meneguele [4.18.0-172.el8]Bruno Meneguele [4.18.0-171.el8]Bruno Meneguele [4.18.0-170.el8]Bruno Meneguele [4.18.0-169.el8]Bruno Meneguele [4.18.0-168.el8]Bruno Meneguele [4.18.0-167.el8]Bruno Meneguele [4.18.0-166.el8]Bruno Meneguele [4.18.0-165.el8]Bruno Meneguele [4.18.0-164.el8]Bruno Meneguele [4.18.0-163.el8]Bruno Meneguele [4.18.0-162.el8]Bruno Meneguele [4.18.0-161.el8]Bruno Meneguele [4.18.0-160.el8]Bruno Meneguele [4.18.0-159.el8]Bruno Meneguele [4.18.0-158.el8]Bruno Meneguele [4.18.0-157.el8]Bruno Meneguele [4.18.0-156.el8]Bruno Meneguele [4.18.0-155.el8]Bruno Meneguele [4.18.0-154.el8]Bruno Meneguele [4.18.0-153.el8]Bruno Meneguele [4.18.0-152.el8]Phillip Lougher [4.18.0-151.el8]Phillip Lougher [4.18.0-150.el8]Phillip Lougher [4.18.0-149.el8]Phillip Lougher [4.18.0-148.el8]Phillip Lougher [4.18.0-147.13.el8]Phillip Lougher [4.18.0-147.12.el8]Phillip Lougher [4.18.0-147.11.el8]Phillip Lougher [4.18.0-147.10.el8]Phillip Lougher [4.18.0-147.9.el8]Phillip Lougher [4.18.0-147.8.el8]Phillip Lougher [4.18.0-147.7.el8]Phillip Lougher [4.18.0-147.6.el8]Phillip Lougher [4.18.0-147.5.el8]Phillip Lougher [4.18.0-147.4.el8]Phillip Lougher [4.18.0-147.3.el8]Phillip Lougher [4.18.0-147.2.el8]Phillip Lougher [4.18.0-147.1.el8]Phillip Lougher [4.18.0-146.1.el8]Phillip Lougher [4.18.0-145.1.el8]Phillip Lougher [4.18.0-144.1.el8]Herton R. Krzesinski [4.18.0-144.el8]Herton R. Krzesinski [4.18.0-143.el8]Herton R. Krzesinski [4.18.0-142.el8]Herton R. Krzesinski [4.18.0-141.el8]Herton R. Krzesinski [4.18.0-140.el8]Herton R. Krzesinski [4.18.0-139.el8]Herton R. Krzesinski [4.18.0-138.el8]Herton R. Krzesinski [4.18.0-137.el8]Herton R. Krzesinski [4.18.0-136.el8]Herton R. Krzesinski [4.18.0-135.el8]Herton R. Krzesinski [4.18.0-134.el8]Herton R. Krzesinski [4.18.0-133.el8]Herton R. Krzesinski [4.18.0-132.el8]Herton R. Krzesinski [4.18.0-131.el8]Herton R. Krzesinski [4.18.0-130.el8]Herton R. Krzesinski [4.18.0-129.el8]Herton R. Krzesinski [4.18.0-128.el8]Herton R. Krzesinski [4.18.0-127.el8]Herton R. Krzesinski [4.18.0-126.el8]Herton R. Krzesinski [4.18.0-125.el8]Herton R. Krzesinski [4.18.0-124.el8]Herton R. Krzesinski [4.18.0-123.el8]Herton R. Krzesinski [4.18.0-122.el8]Herton R. Krzesinski [4.18.0-121.el8]Herton R. Krzesinski [4.18.0-120.el8]Herton R. Krzesinski [4.18.0-119.el8]Herton R. Krzesinski [4.18.0-118.el8]Herton R. Krzesinski [4.18.0-117.el8]Herton R. Krzesinski [4.18.0-116.el8]Herton R. Krzesinski [4.18.0-115.el8]Herton R. Krzesinski [4.18.0-114.el8]Herton R. Krzesinski [4.18.0-113.el8]Herton R. Krzesinski [4.18.0-112.el8]Herton R. Krzesinski [4.18.0-111.el8]Herton R. Krzesinski [4.18.0-110.el8]Herton R. Krzesinski [4.18.0-109.el8]Herton R. Krzesinski [4.18.0-108.el8]Frantisek Hrbata [4.18.0-107.el8]Frantisek Hrbata [4.18.0-106.el8]Frantisek Hrbata [4.18.0-105.el8]Frantisek Hrbata [4.18.0-104.el8]Herton R. Krzesinski [4.18.0-103.el8]Herton R. Krzesinski [4.18.0-102.el8]Herton R. Krzesinski [4.18.0-101.el8]Herton R. Krzesinski [4.18.0-100.el8]Herton R. Krzesinski [4.18.0-99.el8]Herton R. Krzesinski [4.18.0-98.el8]Herton R. Krzesinski [4.18.0-97.el8]Herton R. Krzesinski [4.18.0-96.el8]Herton R. Krzesinski [4.18.0-95.el8]Herton R. Krzesinski [4.18.0-94.el8]Herton R. Krzesinski [4.18.0-93.el8]Herton R. Krzesinski [4.18.0-92.el8]Herton R. Krzesinski [4.18.0-91.el8]Herton R. Krzesinski [4.18.0-90.el8]Herton R. Krzesinski [4.18.0-89.el8]Herton R. Krzesinski [4.18.0-88.el8]Herton R. Krzesinski [4.18.0-87.el8]Herton R. Krzesinski [4.18.0-86.el8]Herton R. Krzesinski [4.18.0-85.el8]Herton R. Krzesinski [4.18.0-84.el8]Herton R. Krzesinski [4.18.0-83.el8]Herton R. Krzesinski [4.18.0-82.el8]Herton R. Krzesinski [4.18.0-81.el8]Herton R. Krzesinski [4.18.0-80.23.el8]Herton R. Krzesinski [4.18.0-80.22.el8]Herton R. Krzesinski [4.18.0-80.21.el8]Herton R. Krzesinski [4.18.0-80.20.el8]Herton R. Krzesinski [4.18.0-80.19.el8]Herton R. Krzesinski [4.18.0-80.18.el8]Herton R. Krzesinski [4.18.0-80.17.el8]Herton R. Krzesinski [4.18.0-80.16.el8]Herton R. Krzesinski [4.18.0-80.15.el8]Herton R. Krzesinski [4.18.0-80.14.el8]Herton R. Krzesinski [4.18.0-80.13.el8]Herton R. Krzesinski [4.18.0-80.12.el8]Herton R. Krzesinski [4.18.0-80.11.el8]Herton R. Krzesinski [4.18.0-80.10.el8]Herton R. Krzesinski [4.18.0-80.9.el8]Herton R. Krzesinski [4.18.0-80.8.el8]Herton R. Krzesinski [4.18.0-80.7.el8]Herton R. Krzesinski [4.18.0-80.6.el8]Herton R. Krzesinski [4.18.0-80.5.el8]Herton R. Krzesinski [4.18.0-80.4.el8]Herton R. Krzesinski [4.18.0-80.3.el8]Herton R. Krzesinski [4.18.0-80.2.el8]Herton R. Krzesinski [4.18.0-80.1.el8]Herton R. Krzesinski [4.18.0-79.1.el8]Herton R. Krzesinski [4.18.0-78.1.el8]Herton R. Krzesinski [4.18.0-77.1.el8]Herton R. Krzesinski [4.18.0-76.1.el8]Herton R. Krzesinski [4.18.0-75.1.el8]Herton R. Krzesinski [4.18.0-74.1.el8]Herton R. Krzesinski [4.18.0-73.1.el8]Herton R. Krzesinski [4.18.0-72.1.el8]Herton R. Krzesinski [4.18.0-71.1.el8]Herton R. Krzesinski [4.18.0-70.el8]Herton R. Krzesinski [4.18.0-69.el8]Herton R. Krzesinski [4.18.0-68.el8]Herton R. Krzesinski [4.18.0-67.el8]Herton R. Krzesinski [4.18.0-66.el8]Herton R. Krzesinski [4.18.0-65.el8]Herton R. Krzesinski [4.18.0-64.el8]Herton R. Krzesinski [4.18.0-63.el8]Herton R. Krzesinski [4.18.0-62.el8]Herton R. Krzesinski [4.18.0-61.el8]Herton R. Krzesinski [4.18.0-60.el8]Herton R. Krzesinski [4.18.0-59.el8]Herton R. Krzesinski [4.18.0-58.el8]Herton R. Krzesinski [4.18.0-57.el8]Herton R. Krzesinski [4.18.0-56.el8]Herton R. Krzesinski [4.18.0-55.el8]Herton R. Krzesinski [4.18.0-54.el8]Herton R. Krzesinski [4.18.0-53.el8]Herton R. Krzesinski [4.18.0-52.el8]Herton R. Krzesinski [4.18.0-51.el8]Herton R. Krzesinski [4.18.0-50.el8]Herton R. Krzesinski [4.18.0-49.el8]Herton R. Krzesinski [4.18.0-48.el8]Herton R. Krzesinski [4.18.0-47.el8]Herton R. Krzesinski [4.18.0-46.el8]Herton R. Krzesinski [4.18.0-45.el8]Herton R. Krzesinski [4.18.0-44.el8]Herton R. Krzesinski [4.18.0-43.el8]Herton R. Krzesinski [4.18.0-42.el8]Herton R. Krzesinski [4.18.0-41.el8]Herton R. Krzesinski [4.18.0-40.el8]Herton R. Krzesinski [4.18.0-39.el8]Herton R. Krzesinski [4.18.0-38.el8]Herton R. Krzesinski [4.18.0-37.el8]Herton R. Krzesinski [4.18.0-36.el8]Herton R. Krzesinski [4.18.0-35.el8]Herton R. Krzesinski [4.18.0-34.el8]Herton R. Krzesinski [4.18.0-33.el8]Herton R. Krzesinski [4.18.0-32.el8]Herton R. Krzesinski [4.18.0-31.el8]Herton R. Krzesinski [4.18.0-30.el8]Herton R. Krzesinski [4.18.0-29.el8]Herton R. Krzesinski [4.18.0-28.el8]Herton R. Krzesinski [4.18.0-27.el8]Herton R. Krzesinski [4.18.0-26.el8]Herton R. Krzesinski [4.18.0-25.el8]Herton R. Krzesinski [4.18.0-24.el8]Herton R. Krzesinski [4.18.0-23.el8]Herton R. Krzesinski [4.18.0-22.el8]Herton R. Krzesinski [4.18.0-21.el8]Herton R. Krzesinski [4.18.0-20.el8]Herton R. Krzesinski [4.18.0-19.el8]Herton R. Krzesinski [4.18.0-18.el8]Herton R. Krzesinski [4.18.0-17.el8]Herton R. Krzesinski [4.18.0-16.el8]Herton R. Krzesinski [4.18.0-15.el8]Herton R. Krzesinski [4.18.0-14.el8]Herton R. Krzesinski [4.18.0-13.el8]Herton R. Krzesinski [4.18.0-12.el8]Herton R. Krzesinski [4.18.0-11.el8]Herton R. Krzesinski [4.18.0-10.el8]Herton R. Krzesinski [4.18.0-9.el8]Herton R. Krzesinski [4.18.0-8.el8]Herton R. Krzesinski [4.18.0-7.el8]Herton R. Krzesinski [4.18.0-6.el8]Herton R. Krzesinski [4.18.0-5.el8]Herton R. Krzesinski [4.18.0-4.el8]Herton R. Krzesinski [4.18.0-3.el8]Herton R. Krzesinski [4.18.0-2.el8]Herton R. Krzesinski [4.18.0-1.el8]- [rt] build kernel-rt-4.18.0-522.rt7.311.el8 [RHEL-5332] - netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for ip_set_hash_netportnet.c (Florian Westphal) [RHEL-8444] {CVE-2023-42753} - cxgb4: fix use after free bugs caused by circular dependency problem (Ricardo Robaina) [RHEL-6261 RHEL-7058] {CVE-2023-4133} - ipvs: queue delayed work to expire no destination connections if expire_nodest_conn=1 (Florian Westphal) [RHEL-5742] - bpf: Fix incorrect verifier pruning due to missing register precision taints (Artem Savkov) [RHEL-7534 RHEL-7535] {CVE-2023-2163} - mm/memcontrol.c: remove the redundant updating of stats_flush_threshold (Waiman Long) [2238379] - virtio_balloon: Fix endless deflation and inflation on arm64 (Gavin Shan) [RHEL-1672] - i40e: Fix VF VLAN offloading when port VLAN is configured (Ivan Vecera) [RHEL-6384] - libfs: take cursors out of list when moving past the end of directory (Jeffrey Layton) [RHEL-15148] - net/core: Fix ETH_P_1588 flow dissector (Paolo Abeni) [RHEL-14379] - skbuff: skb_segment, Call zero copy functions before using skbuff frags (Paolo Abeni) [RHEL-14379] - net: prevent skb corruption on frag list segmentation (Paolo Abeni) [RHEL-14379] - udp6: Fix race condition in udp6_sendmsg & connect (Paolo Abeni) [RHEL-14379] - scsi: megaraid_sas: Driver version update to 07.727.03.00-rc1 (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Log message when controller reset is requested but not issued (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for selected registers (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Fix deadlock on firmware crashdump (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Use pci_dev_id() to simplify the code (Tomas Henzl) [RHEL-8244] - scsi: megaraid_sas: Convert union megasas_sgl to flex-arrays (Tomas Henzl) [RHEL-8244] - scsi: smartpqi: Change driver version to 2.1.24-046 (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance error messages (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance controller offline notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Enhance shutdown notification (Don Brace) [RHEL-1728] - scsi: smartpqi: Simplify lun_number assignment (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename pciinfo to pci_info (Don Brace) [RHEL-1728] - scsi: smartpqi: Rename MACRO to clarify purpose (Don Brace) [RHEL-1728] - scsi: smartpqi: Add abort handler (Don Brace) [RHEL-1728] - x86/sgx: mark as supported (Vladis Dronov) [2041881] - x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race (Vladis Dronov) [2041881] - x86/sgx: Break up long non-preemptible delays in sgx_vepc_release() (Vladis Dronov) [2041881] - Documentation: Fix typos (only the SGX part) (Vladis Dronov) [2041881] - x86/sgx: Avoid using iterator after loop in sgx_mmu_notifier_release() (Vladis Dronov) [2041881] - selftests/sgx: Add "test_encl.elf" to TEST_FILES (Vladis Dronov) [2041881] - convert sgx_set_attribute() to fdget()/fdput() (Vladis Dronov) [2041881] - x86/sgx: use VM_ACCESS_FLAGS (Vladis Dronov) [2041881] - x86/sgx: Replace kmap/kunmap_atomic() calls (Vladis Dronov) [2041881] - x86/sgx: Allow enclaves to use Asynchrounous Exit Notification (Vladis Dronov) [2041881] - x86/sgx: Reduce delay and interference of enclave release (Vladis Dronov) [2041881] - x86/vdso: Conditionally export __vdso_sgx_enter_enclave() (Vladis Dronov) [2041881] - x86/sgx: Add overflow check in sgx_validate_offset_length() (Vladis Dronov) [2041881]- [rt] build kernel-rt-4.18.0-521.rt7.310.el8 [RHEL-5332] - team: fix null-ptr-deref when team device type is changed (Hangbin Liu) [RHEL-13961] - team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves (Hangbin Liu) [RHEL-13961] - team: reset team's flags when down link is P2P device (Hangbin Liu) [RHEL-13961] - teaming: deliver link-local packets with the link they arrive on (Hangbin Liu) [RHEL-13961] - kernfs: change kernfs_rename_lock into a read-write lock. (Ian Kent) [RHEL-11484] - kernfs: Separate kernfs_pr_cont_buf and rename_lock. (Ian Kent) [RHEL-11484] - kernfs: fix missing kernfs_iattr_rwsem locking (Ian Kent) [RHEL-11484] - kernfs: Use a per-fs rwsem to protect per-fs list of kernfs_super_info (Ian Kent) [RHEL-11484] - kernfs: Introduce separate rwsem to protect inode attributes (Ian Kent) [RHEL-11484] - kernfs: move struct kernfs_root out of the public view. (Ian Kent) [RHEL-11484] - iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: add null-ptr-check after ip_dev_find() (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: Replace 0-length arrays with flexible arrays (Kamal Heib) [RHEL-1734] - RDMA/cxgb4: remove unnecessary NULL check in __c4iw_poll_cq_one() (Kamal Heib) [RHEL-1734] - block: check_events: don't bother with events if unsupported (Ming Lei) [RHEL-2407] - Revert "block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers" (Ming Lei) [RHEL-2407] - Revert "ide: unexport DISK_EVENT_MEDIA_CHANGE for ide-gd and ide-cd" (Ming Lei) [RHEL-2407] - block: disk_events: introduce event flags (Ming Lei) [RHEL-2407] - block: genhd: remove async_events field (Ming Lei) [RHEL-2407] - ibmvnic: Ensure login failure recovery is safe from other resets (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Do partial reset on login failure (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Handle DMA unmapping of login buffs in release functions (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Unmap DMA login rsp buffer on send login fail (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Enforce stronger sanity checks on login response (Mamatha Inamdar) [RHEL-11211] - ibmvnic: Free rwi on reset success (Mamatha Inamdar) [RHEL-11211] - selftests: tls: swap the TX and RX sockets in some tests (Hangbin Liu) [RHEL-13962] - selftests: mirror_gre_changes: Tighten up the TTL test match (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_tunnel_key: Make filters more specific (Hangbin Liu) [RHEL-13962] - selftests: forwarding: tc_flower: Relax success criterion (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool_extended_state: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: ethtool: Skip when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Add a helper to skip test when using veth pairs (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Set default IPv6 traceroute utility (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Switch off timeout (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Skip test when no interfaces are specified (Hangbin Liu) [RHEL-13962] - selftests: rtnetlink: remove netdevsim device after ipsec offload test (Hangbin Liu) [RHEL-13962] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [RHEL-13962] - selftests: fib_tests: mute cleanup error message (Hangbin Liu) [RHEL-13962] - sched/topology: Align group flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched/fair: Use recent_used_cpu to test p->cpus_ptr (Phil Auld) [RHEL-2524] - sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() (Phil Auld) [RHEL-2524] - sched/core: Fixed missing rq clock update before calling set_rq_offline() (Phil Auld) [RHEL-2524] - sched/topology: Mark set_sched_topology() __init (Phil Auld) [RHEL-2524] - sched/wait: Fix a kthread_park race with wait_woken() (Phil Auld) [RHEL-2524] - sched: Add schedule_user() declaration (Phil Auld) [RHEL-2524] - sched/topology: Propagate SMT flags when removing degenerate domain (Phil Auld) [RHEL-2524] - sched_getaffinity: don't assume 'cpumask_size()' is fully initialized (Phil Auld) [RHEL-2524] - sched/topology: Make sched_energy_mutex,update static (Phil Auld) [RHEL-2524] - sched/fair: Fix inaccurate tally of ttwu_move_affine (Phil Auld) [RHEL-2524] - sched/fair: Revise comment about lb decision matrix (Phil Auld) [RHEL-2524] - sched/topology: Remove unused numa_distance in cpu_attach_domain() (Phil Auld) [RHEL-2524] - perf vendor events: Update metric events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update metric event names for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Move JSON/events to appropriate files for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop STORES_PER_INST metric event for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Drop some of the JSON/events for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events: Update the JSON/events descriptions for power10 platform (Mamatha Inamdar) [RHEL-11205] - perf vendor events power10: Add JSON metric events to present CPI stall cycles in powerpc (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_partition sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via partition information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_domain sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via domain information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document affinity_domain_via_virtual_processor sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show affinity domain via virtual processor information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_config sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor config information (Mamatha Inamdar) [RHEL-11205] - docs: ABI: sysfs-bus-event_source-devices-hv_gpci: Document processor_bus_topology sysfs interface file (Mamatha Inamdar) [RHEL-11205] - powerpc/hv_gpci: Add sysfs file inside hv_gpci device to show processor bus topology information (Mamatha Inamdar) [RHEL-11205] - KVM: x86: Add SBPB support (Waiman Long) [RHEL-11272 RHEL-9298] - KVM: x86: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] - x86/retpoline: Document some thunk handling aspects (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove unnecessary semicolon (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/rethunk: Use SYM_CODE_START[_LOCAL]_NOALIGN macros (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disentangle rethunk-dependent options (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Move retbleed IBPB check into existing 'has_microcode' code block (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/bugs: Remove default case for fully switched enums (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Remove 'pred_cmd' label (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Unexport untraining functions (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Improve i-cache locality for alias mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix vulnerability reporting for missing microcode (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print mitigation for retbleed IBPB case (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Print actual mitigation if requested mitigation isn't possible (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for (possible) future fixed HW (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternatives: Remove faulty optimization (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix SBPB enablement for spec_rstack_overflow=off (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Don't probe microcode in a guest (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Set CPUID feature bits independently of bug or mitigation status (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix srso_show_state() side effect (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix amd_check_microcode() declaration (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Remove amd_get_topology_early() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Correct the mitigation status when SMT is disabled (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Explain the untraining sequences a bit more (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/kvm: Provide UNTRAIN_RET_VM (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Cleanup the untrain mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename srso_(.*)_alias to srso_alias_\1 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Rename original retbleed methods (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Clean up SRSO return thunk mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Make custom return thunk unconditional (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool/x86: Fix SRSO mess (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix up srso_safe_ret() and __x86_return_thunk() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu: Fix __x86_return_thunk symbol type (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retpoline,kprobes: Fix position of thunk sections with CONFIG_LTO_CLANG (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Disable the mitigation on unaffected configurations (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Fix the DIV(0) initial fix attempt (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/retpoline: Don't clobber RFLAGS during srso_safe_ret() (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20593} - driver core: cpu: Fix the fallback cpu_show_gds() name (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Move gds_ucode_mitigated() declaration to header (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/speculation: Add cpu_show_gds() prototype (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Make cpu_show_not_affected() static (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix build breakage with the LLVM linker (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - Documentation/srso: Document IBPB aspect and fix formatting (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - driver core: cpu: Unify redundant silly stubs (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/CPU/AMD: Do not leak quotient data after a division by 0 (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20588} - x86/srso: Tie SBPB bit setting to microcode patch detection (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a forgotten NOENDBR annotation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Fix return thunks in generated code (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB on VMEXIT (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add SRSO_NO support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add IBPB_BRTYPE support (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/srso: Add a Speculative RAS Overflow mitigation (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Add __x86_return_thunk alignment checks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/retbleed: Fix return thunk alignment (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/alternative: Optimize returns patching (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/microcode/AMD: Load late on both threads too (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86/returnthunk: Allow different return thunks (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - x86: Sanitize linker script (Waiman Long) [RHEL-11272 RHEL-9298] {CVE-2023-20569} - objtool: Fix .return_sites generation (Waiman Long) [RHEL-11272 RHEL-9298]- [rt] build kernel-rt-4.18.0-520.rt7.309.el8 [RHEL-5332] - kernel/rh_messages.c: move hardware tables to rh_messages.h (Scott Weaver) [2181912] - kernel/rh_messages.c: Wire up new calls (Prarit Bhargava) [2181912] - drivers/pci: Update rh_messages.c (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_hardware_deprecated() (Prarit Bhargava) [2181912] - treewide: Remove mark_driver_unmaintained() (Prarit Bhargava) [2181912] - drivers/pci: Remove RHEL-only pci_hw_*() functions (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_disabled() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_deprecated() calls (Prarit Bhargava) [2181912] - treewide: Remove pci_hw_unmaintained() calls (Prarit Bhargava) [2181912] - redhat: fix bug/zjira sort in the changelog (Patrick Talbert) - blk-mq: enforce op-specific segment limits in blk_insert_cloned_request (Ming Lei) [RHEL-14504] - tunnels: fix kasan splat when generating ipv4 pmtu error (Guillaume Nault) [RHEL-14377] - net:ipv6: check return value of pskb_trim() (Guillaume Nault) [RHEL-14377] - sit: update dev->needed_headroom in ipip6_tunnel_bind_dev() (Guillaume Nault) [RHEL-14377] - ipv4: fix null-deref in ipv4_link_failure (Felix Maurer) [RHEL-5427] {CVE-2023-42754} - powerpc/perf/hv-24x7: Update domain value check (Michael Petlan) [RHEL-13718] - vxlan: Expose helper vxlan_build_gbp_hdr (Izabela Bakollari) [RHEL-12413] - vxlan: Remove unused argument from vxlan_build_gbp_hdr( ) and vxlan_build_gpe_hdr( ) (Izabela Bakollari) [RHEL-12413] - net: ipv4: fix one memleak in __inet_del_ifa() (Guillaume Nault) [RHEL-14375] - ipv4: Fix potential uninit variable access bug in __ip_make_skb() (Guillaume Nault) [RHEL-14375] - icmp: guard against too small mtu (Guillaume Nault) [RHEL-14375] - ipv6: ping: fix wrong checksum for large frames (Guillaume Nault) [RHEL-14375] - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr (Hangbin Liu) [RHEL-13954] - ip6mr: Fix skb_under_panic in ip6mr_cache_report() (Hangbin Liu) [RHEL-13954] - ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new temporary address (Hangbin Liu) [RHEL-13954] - ipv6/addrconf: fix a potential refcount underflow for idev (Hangbin Liu) [RHEL-13954] - icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev(). (Hangbin Liu) [RHEL-13954] - ping6: Fix send to link-local addresses with VRF. (Hangbin Liu) [RHEL-13954] - ipv6: Fix out-of-bounds access in ipv6_find_tlv() (Hangbin Liu) [RHEL-13954]- [rt] build kernel-rt-4.18.0-519.rt7.308.el8 [RHEL-5332] - redhat: remove kabi-rhel810 directory (Prarit Bhargava) - redhat: Update .gitignore for 8.10 kabi files (Prarit Bhargava) - nvmet-tcp: Fix a possible UAF in queue intialization setup (John Meneghini) [RHEL-11509 RHEL-11527] {CVE-2023-5178} - sctp: update hb timer immediately after users change hb_interval (Xin Long) [RHEL-6045] - s390/zcrypt_ep11misc: support API ordinal 6 with empty pin-blob (Tobias Huschle) [RHEL-11200] - net: openvswitch: add support for l4 symmetric hashing (Antoine Tenart) [RHEL-10498] - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU (Hangbin Liu) [RHEL-10475 RHEL-10477] {CVE-2023-42752} - ip_tunnel: Preserve pointer const in ip_tunnel_info_opts (Ivan Vecera) [RHEL-12418] - tracing: Fix race in perf_trace_buf initialization (Michael Petlan) [RHEL-8648] - Input: gtco - bounds check collection indent level (Desnes Nunes) [RHEL-3014 RHEL-3892] {CVE-2019-13631} - x86/microcode/AMD: Rip out static buffers (Prarit Bhargava) [2225261] - perf/x86/amd: Do not WARN() on every IRQ (Michael Petlan) [RHEL-12340] - netfilter: conntrack: Fix gre tunneling over ipv6 (Florian Westphal) [RHEL-12497] - netfilter: handle the connecting collision properly in nf_conntrack_proto_sctp (Xin Long) [RHEL-6157] - sctp: update transport state when processing a dupcook packet (Xin Long) [RHEL-6157]- [rt] build kernel-rt-4.18.0-518.rt7.307.el8 [RHEL-5332] - trace: Add trace_ipi_send_cpu() (Jerome Marchand) [2192614] - sched, smp: Trace smp callback causing an IPI (Jerome Marchand) [2192614] - smp: reword smp call IPI comment (Jerome Marchand) [2192614] - treewide: Trace IPIs sent via smp_send_reschedule() (Jerome Marchand) [2192614] - irq_work: Trace self-IPIs sent via arch_irq_work_raise() (Jerome Marchand) [2192614] - smp: Trace IPIs sent via arch_send_call_function_ipi_mask() (Jerome Marchand) [2192614] - sched, smp: Trace IPIs sent via send_call_function_single_ipi() (Jerome Marchand) [2192614] - trace: Add trace_ipi_send_cpumask() (Jerome Marchand) [2192614] - RDMA/umem: Set iova in ODP flow (Kamal Heib) [RHEL-1032] - RDMA/core: Update CMA destination address on rdma_resolve_addr (Kamal Heib) [RHEL-1032] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [RHEL-1032] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1032] - IB/isert: Fix possible list corruption in CMA handler (Kamal Heib) [RHEL-1028] - IB/isert: Fix dead lock in ib_isert (Kamal Heib) [RHEL-1028] - RDMA/srpt: Add a check for valid 'mad_agent' pointer (Kamal Heib) [RHEL-1028] - IB/iser: remove redundant new line (Kamal Heib) [RHEL-1028] - IB/iser: centralize setting desc type and done callback (Kamal Heib) [RHEL-1028] - IB/iser: remove unused macros (Kamal Heib) [RHEL-1028] - IB/uverbs: Fix to consider event queue closing also upon non-blocking mode (Kamal Heib) [RHEL-1028] - RDMA/uverbs: Restrict usage of privileged QKEYs (Kamal Heib) [RHEL-1028] - RDMA/cma: Always set static rate to 0 for RoCE (Kamal Heib) [RHEL-1028] - RDMA/core: Fix GID entry ref leak when create_ah fails (Kamal Heib) [RHEL-1028] - RDMA/cm: Trace icm_send_rej event before the cm state is reset (Kamal Heib) [RHEL-1028] - RDMA/cma: Remove NULL check before dev_{put, hold} (Kamal Heib) [RHEL-1028] - RDMA/core: Fix multiple -Warray-bounds warnings (Kamal Heib) [RHEL-1028] - RDMA/cma: Allow UD qp_type to join multicast only (Kamal Heib) [RHEL-1028] - md/raid5: release batch_last before waiting for another stripe_head (Nigel Croxon) [RHEL-9875] - CI: Remove unused kpet_tree_family (Nikolai Kondrashov) - ice: Don't tx before switchdev is fully configured (Michal Schmidt) [RHEL-10997] - fbcon: set_con2fb_map needs to set con2fb_map! (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - fbcon: Fix error paths in set_con2fb_map (Wander Lairson Costa) [RHEL-1183] {CVE-2023-38409} - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() (Rafael Aquini) [RHEL-3652] - sched/rt: Fix bad task migration for rt tasks (Valentin Schneider) [RHEL-3872] - RDMA/irdma: Prevent zero-length STAG registration (Kamal Heib) [RHEL-6389] {CVE-2023-25775} - mm/memcontrol: export memcg.swap watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cgroup: add pids.peak interface for pids controller (Waiman Long) [RHEL-10099] - mm/memcontrol: export memcg->watermark via sysfs for v2 memcg (Waiman Long) [RHEL-10099] - cpufreq: amd-pstate: fix global sysfs attribute type (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add a kernel config option to set default mode (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Set a fallback policy based on preferred_profile (Prarit Bhargava) [2218687] - ACPI: CPPC: Add definition for undefined FADT preferred PM profile value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Write CPPC enable bit per-socket (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Update policy->cur in amd_pstate_adjust_perf() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Remove fast_switch_possible flag from active driver (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add ->fast_switch() callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Make varaiable mode_state_machine static (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided mode control support via sysfs (Prarit Bhargava) [2218687] - amd-pstate: Fix amd_pstate mode switch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Add guided autonomous mode (Prarit Bhargava) [2218687] - ACPI: CPPC: Add auto select register read/write support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: move to use bus_get_dev_root() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: remove MODULE_LICENSE in non-modules (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Let user know amd-pstate is disabled (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix invalid write to MSR_AMD_CPPC_REQ (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: avoid uninitialized variable use (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: convert sprintf with sysfs_emit() (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: add driver working mode switch support (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement suspend and resume callbacks (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement amd pstate cpu online and offline callback (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: implement Pstate EPP support for the AMD processors (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: optimize driver working mode selection in amd_pstate_param() (Prarit Bhargava) [2218687] - ACPI: CPPC: Add AMD pstate energy performance preference cppc control (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix kernel hang issue while amd-pstate unregistering (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Fix initial highest_perf value (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: Expose struct amd_cpudata (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: update pstate frequency transition delay time (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: map desired perf into pstate scope for powersave governor (Prarit Bhargava) [2218687] - cpufreq: amd_pstate: fix wrong lowest perf fetch (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: fix white-space (Prarit Bhargava) [2218687] - cpufreq: amd-pstate: simplify cpudata pointer assignment (Prarit Bhargava) [2218687] - locking: revert comment from KRTS JiraReadiness exercise (Eirik Fuller) [RHEL-11976]- [rt] build kernel-rt-4.18.0-517.rt7.306.el8 [RHEL-5332] - Bluetooth: L2CAP: Fix u8 overflow (Wander Lairson Costa) [2152857] {CVE-2022-45934} - tracing/histograms: Fix parsing of "sym-offset" modifier (Jerome Marchand) [2229575] - ice: always add legacy 32byte RXDID in supported_rxdids (Michal Schmidt) [RHEL-3379] - task_work: cleanup notification modes (Audra Mitchell) [RHEL-1064] - perf test topology: Use !strncmp(right platform) to fix guest PPC comparision check (Michael Petlan) [2131821] - perf test session topology: Fix test to skip the test in guest environment (Michael Petlan) [2131821] - sched/fair: Block nohz tick_stop when cfs bandwidth in use (Phil Auld) [RHEL-2527] - sched, cgroup: Restore meaning to hierarchical_quota (Phil Auld) [RHEL-2527] - sched/fair: Hide unused init_cfs_bandwidth() stub (Phil Auld) [RHEL-2527] - rbd: take header_rwsem in rbd_dev_refresh() only when updating (Ilya Dryomov) [RHEL-11241] - rbd: decouple parent info read-in from updating rbd_dev (Ilya Dryomov) [RHEL-11241] - rbd: decouple header read-in from updating rbd_dev->header (Ilya Dryomov) [RHEL-11241] - rbd: move rbd_dev_refresh() definition (Ilya Dryomov) [RHEL-11241] - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - Revert "mm, meminit: recalculate pcpu batch and high limits after init completes" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count()" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: move free_the_page" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: allow high-order pages to be stored on the per-cpu lists" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fetch the correct pcp buddy during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: track range of active PCP lists during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: simplify how many pages are selected per pcp list during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: drain the requested list first during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: free pages in a single pass during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: do not prefetch buddies during bulk free" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: check high-order pages for corruption during PCP operations" (Chris von Recklinghausen) [RHEL-8539] - Revert "mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page" (Chris von Recklinghausen) [RHEL-8539] - Revert "cnic: Use the bitmap API to allocate bitmaps" (Chris Leech) [RHEL-1950] - Revert "cnic: don't pass bogus GFP_ flags to dma_alloc_coherent" (Chris Leech) [RHEL-1950] - scsi: lpfc: Prevent use-after-free during rmmod with mapped NVMe rports (Paul Ely) [RHEL-2602] - scsi: lpfc: Early return after marking final NLP_DROPPED flag in dev_loss_tmo (Paul Ely) [RHEL-2602] - gfs2: Add quota_change type (Bob Peterson) [2224075]- [rt] build kernel-rt-4.18.0-516.rt7.305.el8 [RHEL-5332] - bpf: Adjust insufficient default bpf_jit_limit (Viktor Malik) [2219567] - bpf: Prevent increasing bpf_jit_limit above max (Viktor Malik) [2219567] - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN (Benjamin Coddington) [2231130] - perf/arm-dmc620: Fix dmc620_pmu_irqs_lock/cpu_hotplug_lock circular lock dependency (Waiman Long) [2177103] - bonding: fix macvlan over alb bond support (Hangbin Liu) [2117816] - s390/ipl: add missing secure/has_secure file to ipl type 'unknown' (Tobias Huschle) [RHEL-2852] - s390/zcrypt: fix reply buffer calculations for CCA replies (Tobias Huschle) [2227778] - intel_th: pci: Add Meteor Lake-P support (Michael Petlan) [2156847] - perf/x86/rapl: Add support for Intel Meteor Lake (Michael Petlan) [2156816] - iavf: schedule a request immediately after add/delete vlan (Petr Oros) [2231174] - iavf: add iavf_schedule_aq_request() helper (Petr Oros) [2231174] - PCI: rpaphp: Error out on busy status from get-sensor-state (Mamatha Inamdar) [2230045] - powerpc/rtas: export rtas_error_rc() for reuse. (Mamatha Inamdar) [2230045] - powerpc/eeh: Set channel state after notifying the drivers (Mamatha Inamdar) [2230045] - s390/pkey: fix PKEY_TYPE_EP11_AES handling for sysfs attributes (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_VERIFYKEY2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_KBLOB2PROTK[23] (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_GENSECK2 IOCTL (Tobias Huschle) [2225520] - s390/pkey: fix/harmonize internal keyblob headers (Tobias Huschle) [2225520] - s390/pkey: add support for ecc clear key (Tobias Huschle) [2225520] - s390/pkey: do not use struct pkey_protkey (Tobias Huschle) [2225520] - s390/pkey: introduce reverse x-mas trees (Tobias Huschle) [2225520] - s390/pkey: zeroize key blobs (Tobias Huschle) [2225520] - md/raid1: fix error: ISO C90 forbids mixed declarations (Nigel Croxon) [RHEL-5084] - md raid1: allow writebehind to work on any leg device set WriteMostly (Nigel Croxon) [RHEL-5084] - md/raid1: hold the barrier until handle_read_error() finishes (Nigel Croxon) [RHEL-5084] - md/raid1: free the r1bio before waiting for blocked rdev (Nigel Croxon) [RHEL-5084] - md/raid1: call free_r1bio() before allow_barrier() in raid_end_bio_io() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix null-ptr-deref for r5l_flush_stripe_to_raid() (Nigel Croxon) [RHEL-5084] - md/raid10: fix a 'conf->barrier' leakage in raid10_takeover() (Nigel Croxon) [RHEL-5084] - md: raid1: fix potential OOB in raid1_remove_disk() (Nigel Croxon) [RHEL-5084] - md/raid5-cache: fix a deadlock in r5l_exit_log() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: hold 'reconfig_mutex' in backlog_store() (Nigel Croxon) [RHEL-5084] - md/md-bitmap: remove unnecessary local variable in backlog_store() (Nigel Croxon) [RHEL-5084] - md: restore 'noio_flag' for the last mddev_resume() (Nigel Croxon) [RHEL-5084] - md: don't quiesce in mddev_suspend() (Nigel Croxon) [RHEL-5084] - md: move initialization and destruction of 'io_acct_set' to md.c (Nigel Croxon) [RHEL-5084] - md: enhance checking in md_check_recovery() (Nigel Croxon) [RHEL-5084] - md: wake up 'resync_wait' at last in md_reap_sync_thread() (Nigel Croxon) [RHEL-5084] - md: refactor idle/frozen_sync_thread() to fix deadlock (Nigel Croxon) [RHEL-5084] - md: add a mutex to synchronize idle and frozen in action_store() (Nigel Croxon) [RHEL-5084] - md: refactor action_store() for 'idle' and 'frozen' (Nigel Croxon) [RHEL-5084] - Revert "md: unlock mddev before reap sync_thread in action_store" (Nigel Croxon) [RHEL-5084] - md/raid0: add discard support for the 'original' layout (Nigel Croxon) [RHEL-5084] - md/raid10: prevent soft lockup while flush writes (Nigel Croxon) [RHEL-5084] - md/raid10: fix io loss while replacement replace rdev (Nigel Croxon) [RHEL-5084] - md/raid10: Do not add spare disk when recovery fails (Nigel Croxon) [RHEL-5084] - md/raid10: clean up md_add_new_disk() (Nigel Croxon) [RHEL-5084] - md/raid10: prioritize adding disk to 'removed' mirror (Nigel Croxon) [RHEL-5084] - md/raid10: improve code of mrdev in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request (Nigel Croxon) [RHEL-5084] - md/raid5: don't start reshape when recovery or replace is in progress (Nigel Croxon) [RHEL-5084] - md/bitmap: factor out a helper to set timeout (Nigel Croxon) [RHEL-5084] - md/bitmap: always wake up md_thread in timeout_store (Nigel Croxon) [RHEL-5084] - md: factor out a helper to wake up md_thread directly (Nigel Croxon) [RHEL-5084] - md/raid10: fix wrong setting of max_corr_read_errors (Nigel Croxon) [RHEL-5084] - md/raid10: fix overflow of md/safe_mode_delay (Nigel Croxon) [RHEL-5084] - md/raid5: fix a deadlock in the case that reshape is interrupted (Nigel Croxon) [RHEL-5084] - md: add a new api prepare_suspend() in md_personality (Nigel Croxon) [RHEL-5084] - md: export md_is_rdwr() and is_md_suspended() (Nigel Croxon) [RHEL-5084] - md: introduce md_ro_state (Nigel Croxon) [RHEL-5084] - md: fix data corruption for raid456 when reshape restart while grow up (Nigel Croxon) [RHEL-5084] - md/raid5: don't allow replacement while reshape is in progress (Nigel Croxon) [RHEL-5084] - md/raid10: check slab-out-of-bounds in md_bitmap_get_counter (Nigel Croxon) [RHEL-5084] - md: raid1: check if adding pages to resync bio fails (Nigel Croxon) [RHEL-5084] - md: raid1: use __bio_add_page for adding single page to bio (Nigel Croxon) [RHEL-5084] - md: check for failure when adding pages in alloc_behind_master_bio (Nigel Croxon) [RHEL-5084] - md: raid5: use __bio_add_page to add single page to new bio (Nigel Croxon) [RHEL-5084] - md: raid5-log: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md: use __bio_add_page to add single page (Nigel Croxon) [RHEL-5084] - md/raid5: fix miscalculation of 'end_sector' in raid5_read_one_chunk() (Nigel Croxon) [RHEL-5084] - drm/i915: Do not disable preemption for resets (John B. Wyatt IV) [2212309 2213314] - drm/i915: Drop the irqs_disabled() check (John B. Wyatt IV) [2212309 2213314] - drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + spin_lock() (John B. Wyatt IV) [2212309 2213314] - drm/i915/gt: Queue and wait for the irq_work item. (John B. Wyatt IV) [2212309 2213314] - drm/i915: Don't check for atomic context on PREEMPT_RT (John B. Wyatt IV) [2212309 2213314] - drm/i915: Don't disable interrupts on PREEMPT_RT during atomic updates (John B. Wyatt IV) [2212309 2213314] - drm/i915: Use preempt_disable/enable_rt() where recommended (John B. Wyatt IV) [2212309 2213314]- [rt] build kernel-rt-4.18.0-515.rt7.304.el8 [RHEL-5332] - s390/dasd: fix hanging device after quiesce/resume (Tobias Huschle) [RHEL-2838] - s390/dasd: fix hanging device after request requeue (Tobias Huschle) [RHEL-2830] - s390/dasd: fix command reject error on ESE devices (Tobias Huschle) [RHEL-2850] - s390/dasd: print copy pair message only for the correct error (Tobias Huschle) [RHEL-2831] - s390: add z16 elf platform (Tobias Huschle) [RHEL-2854] - s390/qeth: Don't call dev_close/dev_open (DOWN/UP) (Tobias Huschle) [RHEL-2410] - powerpc/kprobes: Fix null pointer reference in arch_prepare_kprobe() (Mamatha Inamdar) [2227601] - arm64: kdump: Remove custom linux,usable-memory-range handling (Baoquan He) [RHEL-2307] - arm64: kdump: Remove custom linux,elfcorehdr handling (Baoquan He) [RHEL-2307] - media: dvb-core: Fix use-after-free due to race condition at dvb_ca_en50221 (Dean Nelson) [RHEL-1784] {CVE-2022-45919} - media: dvb-core: Fix use-after-free due to race at dvb_register_device() (Dean Nelson) [RHEL-1841] {CVE-2022-45884} - media: dvb-core: Fix use-after-free due on race condition at dvb_net (Dean Nelson) [RHEL-1842] {CVE-2022-45886} - media: dvb_ca_en50221: fix a size write bug (Dean Nelson) [RHEL-1784] - media: dvbdev: fix refcnt bug (Dean Nelson) [RHEL-1841] - media: dvbdev: adopts refcnt to avoid UAF (Dean Nelson) [RHEL-1841] - media: dvbdev: fix error logic at dvb_register_device() (Dean Nelson) [RHEL-1841] - media: dvb_net: avoid speculation from net slot (Dean Nelson) [RHEL-1842] - media: dvb_ca_en50221: avoid speculation from CA slot (Dean Nelson) [RHEL-1784] - media: dvbdev: Fix memleak in dvb_register_device (Dean Nelson) [RHEL-1841] - media: media/dvb: Use kmemdup rather than duplicating its implementation (Dean Nelson) [RHEL-1841] - media: dvbdev: remove double-unlock (Dean Nelson) [RHEL-1841] - media: dvb-core: fix epoll() by calling poll_wait first (Dean Nelson) [RHEL-1784] - media: dvb_ca_en50221: off by one in dvb_ca_en50221_io_do_ioctl() (Dean Nelson) [RHEL-1784] - drm/amd/display: fix the white screen issue when >= 64GB DRAM (Mika Penttilä) [2231934] - gfs2: conversion deadlock do_promote bypass (Bob Peterson) [2225228] - gfs2: do_promote cleanup (Andreas Gruenbacher) [2225228] - gfs2: Make use of list_is_first (Andreas Gruenbacher) [2225228] - x86/cpu: Enable STIBP on AMD if Automatic IBRS is enabled (Waiman Long) [2227916] - Documentation/hw-vuln: Document the interaction between IBRS and STIBP (Waiman Long) [2227916] - x86/CPU/AMD: Make sure EFER[AIBRSE] is set (Waiman Long) [2227916] - fs: don't audit the capability check in simple_xattr_list() (Andrey Albershteyn) [RHEL-863]- [rt] build kernel-rt-4.18.0-514.rt7.303.el8 [2180997] - redhat: fix to be able to build with rpm 4.19.0 (Denys Vlasenko) - redhat: add additional gating boot tests (Denys Vlasenko) - redhat: list Z-Jiras in the changelog before Y-Jiras (Herton R. Krzesinski) - scsi: st: Add third party poweron reset handling (John Meneghini) [1930388] - kvm: initialize all of the kvm_debugregs structure before sending it to userspace (Jon Maloy) [2179898] {CVE-2023-1513} - bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire (Tomas Glozar) [2229965] - s390/ap: add ap status asynch error support (Tobias Huschle) [2110511] - s390/ap: implement SE AP bind, unbind and associate (Tobias Huschle) [2110511] - s390/ap: introduce low frequency polling possibility (Tobias Huschle) [2110511] - s390/ap: new low level inline functions ap_bapq() and ap_aapq() (Tobias Huschle) [2110511] - s390/ap: provide F bit parameter for ap_rapq() and ap_zapq() (Tobias Huschle) [2110511] - s390/ap: filter ap card functions, new queue functions attribute (Tobias Huschle) [2110511] - s390/ap: make tapq gr2 response a struct (Tobias Huschle) [2110511] - s390/ap: introduce new AP bus sysfs attribute features (Tobias Huschle) [2110511] - s390/ap: exploit new B bit from QCI config info (Tobias Huschle) [2110511] - s390/zcrypt: replace scnprintf with sysfs_emit (Tobias Huschle) [2110511] - s390/zcrypt: rework length information for dqap (Tobias Huschle) [2110511] - s390/zcrypt: make psmid unsigned long instead of long long (Tobias Huschle) [2110511] - s390/ap,zcrypt,vfio: introduce and use ap_queue_status_reg union (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_qact() (Tobias Huschle) [2110511] - s390/ap: fix status returned by ap_aqic() (Tobias Huschle) [2110511] - s390/ap: adjust whitespace (Tobias Huschle) [2110511] - s390/ap: use insn format for new instructions (Tobias Huschle) [2110511] - s390/zcrypt: Filter admin CPRBs on custom devices (Tobias Huschle) [2110511] - s390/zcrypt: Add admask to zcdn (Tobias Huschle) [2110511] - s390/zcrypt: CCA control CPRB sending (Tobias Huschle) [2110511] - s390/ap: add missing virt_to_phys address conversion (Tobias Huschle) [2110511] - s390/ap: get rid of register asm in ap_dqap() (Tobias Huschle) [2110511] - s390/ap: get rid of register asm (Tobias Huschle) [2110511] - s390/ap: Rework ap_dqap to deal with messages greater than recv buffer (Tobias Huschle) [2110511] - s390/ap: rework assembler functions to use unions for in/out register variables (Tobias Huschle) [2110511] - internal: add new files for RHEL_MINOR=10 change (Denys Vlasenko) - thunderbolt: Fix Thunderbolt 3 display flickering issue on 2nd hot plug onwards (Desnes Nunes) [2233974] - mm/userfaultfd: don't consider uffd-wp bit of writable migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp handling for THP migration entries (Rafael Aquini) [2231554] - mm/userfaultfd: fix uffd-wp special cases for fork() (Rafael Aquini) [2231554] - mm/thp: simplify copying of huge zero page pmd when fork (Rafael Aquini) [2231554] - internal: update RHEL_MINOR for the start of RHEL-8.10 development (Denys Vlasenko)- [rt] build kernel-rt-4.18.0-513.rt7.302.el8 [2180997] - redhat/configs: enable CONFIG_INET_DIAG_DESTROY (Andrea Claudi) [2230213] - net/sched: cls_u32: Fix reference counter leak leading to overflow (Davide Caratti) [2225202] {CVE-2023-3609} - cifs: fix bogus cifs_mount error handling in RHEL8 (Jeffrey Layton) [2215018] - KVM: nVMX: add missing consistency checks for CR0 and CR4 (Ricardo Robaina) [2190255] {CVE-2023-30456} - netfilter: snat: evict closing tcp entries on reply tuple collision (Florian Westphal) [2196717] - tun: avoid double free in tun_free_netdev (Jon Maloy) [2156366 2156371] {CVE-2022-4744} - net/sched: cls_fw: Fix improper refcount update leads to use-after-free (Davide Caratti) [2225103] {CVE-2023-3776} - net/sched: sch_qfq: account for stab overhead in qfq_enqueue (Davide Caratti) [2225196] {CVE-2023-3611} - net/sched: sch_qfq: reintroduce lmax bound check for MTU (Davide Caratti) [2225196] - net/sched: sch_qfq: refactor parsing of netlink parameters (Davide Caratti) [2225196] - net/sched: cls_route: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_fw: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - net/sched: cls_u32: No longer copy tcf_result on update to avoid use-after-free (Davide Caratti) [2225512] {CVE-2023-4128} - scsi: lpfc: Remove reftag check in DIF paths (Paul Ely) [2229152] - scsi: lpfc: Modify when a node should be put in device recovery mode during RSCN (Paul Ely) [2229152] - scsi: lpfc: Make fabric zone discovery more robust when handling unsolicited LOGO (Paul Ely) [2229152] - scsi: lpfc: Set Establish Image Pair service parameter only for Target Functions (Paul Ely) [2229152] - scsi: lpfc: Revise ndlp kref handling for dev_loss_tmo_callbk and lpfc_drop_node (Paul Ely) [2229152] - scsi: lpfc: Qualify ndlp discovery state when processing RSCN (Paul Ely) [2229152] - gfs2: Fix freeze consistency check in gfs2_trans_add_meta (Andreas Gruenbacher) [2095340] - gfs2: gfs2_freeze_lock_shared cleanup (Andreas Gruenbacher) [2095340] - gfs2: Replace sd_freeze_state with SDF_FROZEN flag (Andreas Gruenbacher) [2095340] - gfs2: Rework freeze / thaw logic (Andreas Gruenbacher) [2095340] - gfs2: Rename SDF_{FS_FROZEN => FREEZE_INITIATOR} (Andreas Gruenbacher) [2095340] - gfs2: Reconfiguring frozen filesystem already rejected (Andreas Gruenbacher) [2095340] - gfs2: Rename gfs2_freeze_lock{ => _shared } (Andreas Gruenbacher) [2095340] - gfs2: Rename the {freeze,thaw}_super callbacks (Andreas Gruenbacher) [2095340] - gfs2: Rename remaining "transaction" glock references (Andreas Gruenbacher) [2095340] - gfs2: init system threads before freeze lock (Bob Peterson) [2095340] - net: mana: Use the correct WQE count for ringing RQ doorbell (Bandan Das) [2222573] - net: mana: Batch ringing RX queue doorbell on receiving packets (Bandan Das) [2222573] - net: mana: Add support for vlan tagging (Bandan Das) [2222573] - net: mana: Fix perf regression: remove rx_cqes, tx_cqes counters (Bandan Das) [2222573] - net: mana: Check if netdev/napi_alloc_frag returns single page (Bandan Das) [2222573] - net: mana: Rename mana_refill_rxoob and remove some empty lines (Bandan Das) [2222573] - net: mana: Add support for jumbo frame (Bandan Das) [2222573] - net: mana: Enable RX path to handle various MTU sizes (Bandan Das) [2222573] - net: mana: Refactor RX buffer allocation code to prepare for various MTU (Bandan Das) [2222573] - net: mana: Use napi_build_skb in RX path (Bandan Das) [2222573] - net: mana: Remove redundant pci_clear_master (Bandan Das) [2222573] - net: mana: Add new MANA VF performance counters for easier troubleshooting (Bandan Das) [2222573] - ice: Fix NULL pointer deref during VF reset (Petr Oros) [2227743] - x86/kasan: Populate shadow for shared chunk of the CPU entry area (Rafael Aquini) [2232451] - x86/kasan: Add helpers to align shadow addresses up and down (Rafael Aquini) [2232451] - x86/kasan: Rename local CPU_ENTRY_AREA variables to shorten names (Rafael Aquini) [2232451] - x86/mm: Populate KASAN shadow for entire per-CPU range of CPU entry area (Rafael Aquini) [2232451] - x86/mm: Recompute physical address for every page of per-CPU CEA mapping (Rafael Aquini) [2232451]- [rt] build kernel-rt-4.18.0-512.rt7.301.el8 [2180997] - dm cache policy smq: ensure IO doesn't prevent cleaner policy progress (Benjamin Marzinski) [2227951] - netfilter: nf_tables: prevent OOB access in nft_byteorder_eval (Florian Westphal) [2221046] {CVE-2023-35001} - scsi: storvsc: Remove errant duplicate code (Cathy Avery) [2211725] - scsi: storvsc: Limit max_sectors for virtual Fibre Channel devices (Cathy Avery) [2211725] - redhat/configs: Enable CONFIG_AMPERE_ERRATUM_AC03_CPU_38 (Shaoqin Huang) [2219725] - arm64: errata: Mitigate Ampere1 erratum AC03_CPU_38 at stage-2 (Shaoqin Huang) [2219725] - KVM: arm64: Correctly handle page aging notifiers for unaligned memslot (Shaoqin Huang) [2219725] - KVM: arm64: timers: Fix resource leaks in kvm_timer_hyp_init() (Shaoqin Huang) [2219725] - KVM: arm64: vgic-v4: Make the doorbell request robust w.r.t preemption (Shaoqin Huang) [2219725] - KVM: arm64: Don't miss pending interrupts for suspended vCPU (Shaoqin Huang) [2219725] - KVM: arm64: Move vGIC v4 handling for WFI out arch callback hook (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Don't overwrite PMUSERENR with vcpu loaded (Shaoqin Huang) [2219725] - KVM: arm64: PMU: Restore the host's PMUSERENR_EL0 (Shaoqin Huang) [2219725] - KVM: arm64: Restore mdcr_el2 from vcpu (Shaoqin Huang) [2219725] - kvm: arm64: Remove __hyp_this_cpu_read (Shaoqin Huang) [2219725] - wifi: rtw88: unlock on error path in rtw_ops_add_interface() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check only affected links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send time sync only if needed (Íñigo Huguet) [2196823] - wifi: clean up erroneously introduced file (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Handle return value for iwl_mvm_sta_init (Íñigo Huguet) [2196823] - wifi: rtw88: delete timer and free skb queue when unloading (Íñigo Huguet) [2196823] - wifi: cfg80211: Fix return value in scan logic (Íñigo Huguet) [2196823] - Revert "wifi: ath11k: Enable threaded NAPI" (Íñigo Huguet) [2196823] - wifi: cfg80211: fix receiving mesh packets without RFC1042 header (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix init command fail with enabled device (Íñigo Huguet) [2196823] - wifi: ath9k: convert msecs to jiffies where needed (Íñigo Huguet) [2196823] - wifi: ath11k: Add missing check for ioremap (Íñigo Huguet) [2196823] - wifi: ath11k: fix memory leak in WMI firmware stats (Íñigo Huguet) [2196823] - wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key() (Íñigo Huguet) [2196823] - wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid baid size integer overflow (Íñigo Huguet) [2196823] - wifi: rtw88: process VO packets without workqueue to avoid PTK rekey failed (Íñigo Huguet) [2196823] - wifi: rtw88: Fix action frame transmission fail before association (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a few rate index validity checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: Validate slots_num before allocating memory (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Validate tid is in valid range before using it (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix NULL pointer dereference in iwl_pcie_irq_rx_msix_handler() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check link during TX (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add a NULL pointer check (Íñigo Huguet) [2196823] - wifi: iwlwifi: pull from TXQs with softirqs disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: Correctly indicate support for VHT TX STBC (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add NULL check before dereferencing the pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential array out of bounds access (Íñigo Huguet) [2196823] - wifi: rtw88: add missing unwind goto for __rtw_download_firmware() (Íñigo Huguet) [2196823] - wifi: iwlwifi: disable RX STBC when a device doesn't support it (Íñigo Huguet) [2196823] - wifi: iwlwifi: don't silently ignore missing suspend or resume ops (Íñigo Huguet) [2196823] - wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx (Íñigo Huguet) [2196823] - wifi: ath9k: fix AR9003 mac hardware hang check register offset calculation (Íñigo Huguet) [2196823] - wifi: rtw89: pci: fix interrupt enable mask for HALT C2H of RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw89: fix rtw89_read_chip_ver() for RTL8852B and RTL8851B (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_set_* (Íñigo Huguet) [2196823] - wifi: rtw88: fix incorrect error codes in rtw_debugfs_copy_from_user (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Handle SO-F device for PCI id 0x7AF0 (Íñigo Huguet) [2196823] - config: wifi: debug configs for brcm80211 (Íñigo Huguet) [2196823] - config: wifi: set RTL8821CS, RTL8822BS and RTL8822CS as disabled (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: spin_lock_bh() to fix lockdep regression (Íñigo Huguet) [2196823] - wifi: mac80211: fragment per STA profile correctly (Íñigo Huguet) [2196823] - wifi: mac80211: Use active_links instead of valid_links in Tx (Íñigo Huguet) [2196823] - wifi: cfg80211: remove links only on AP (Íñigo Huguet) [2196823] - wifi: mac80211: take lock before setting vif links (Íñigo Huguet) [2196823] - wifi: cfg80211: fix link del callback to call correct handler (Íñigo Huguet) [2196823] - wifi: mac80211: fix link activation settings order (Íñigo Huguet) [2196823] - wifi: cfg80211: fix double lock bug in reg_wdev_chan_valid() (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in regulatory disconnect (Íñigo Huguet) [2196823] - wifi: cfg80211: fix locking in sched scan stop work (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix -Warray-bounds bug in iwl_mvm_wait_d3_notif() (Íñigo Huguet) [2196823] - wifi: mac80211: fix switch count in EMA beacons (Íñigo Huguet) [2196823] - wifi: mac80211: don't translate beacon/presp addrs (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: fix non-inheritence element (Íñigo Huguet) [2196823] - wifi: cfg80211: reject bad AP MLD address (Íñigo Huguet) [2196823] - wifi: mac80211: use correct iftype HE cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix possible NULL pointer dereference in mt7996_mac_write_txwi() (Íñigo Huguet) [2196823] - wifi: rtw89: remove redundant check of entering LPS (Íñigo Huguet) [2196823] - wifi: rtw89: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: rtw88: correct PS calculation for SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: fix possible race in mt7615_mac_sta_poll (Íñigo Huguet) [2196823] - wifi: b43: fix incorrect __packed annotation (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Always use two consecutive bytes for word operations (Íñigo Huguet) [2196823] - mac80211_hwsim: fix memory leak in hwsim_new_radio_nl (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add locking to the rate read flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: Don't use valid_links to iterate sta links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't trust firmware n_channels (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix OEM's name in the tas approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix OEM's name in the ppag approved list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix initialization of a return value (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix access to fw_id_to_mac_id (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix DBGI dump (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix number of concurrent link checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix cancel_delayed_work_sync() deadlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't double-init spinlock (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always free dup_data (Íñigo Huguet) [2196823] - wifi: mac80211: recalc chanctx mindef before assigning (Íñigo Huguet) [2196823] - wifi: mac80211: consider reserved chanctx for mindef (Íñigo Huguet) [2196823] - wifi: mac80211: simplify chanctx allocation (Íñigo Huguet) [2196823] - wifi: mac80211: Abort running color change when stopping the AP (Íñigo Huguet) [2196823] - wifi: mac80211: fix min center freq offset tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rfi: disable RFI feature (Íñigo Huguet) [2196823] - wifi: mac80211: Fix puncturing bitmap handling in __ieee80211_csa_finalize() (Íñigo Huguet) [2196823] - wifi: mac80211: fortify the spinlock against deadlock by interrupt (Íñigo Huguet) [2196823] - wifi: cfg80211: Drop entries with invalid BSSIDs in RNR (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value (Íñigo Huguet) [2196823] - wifi: brcmfmac: Check for probe() id argument being NULL (Íñigo Huguet) [2196823] - wifi: rtw88: correct qsel_to_ep[] type as int (Íñigo Huguet) [2196823] - wifi: rtw88: use work to update rate to avoid RCU warning (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: adjust quota to avoid SER L1 caused by access null page (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix stats->tx_bytes calculation (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix endianness of MT_TXD6_TX_RATE (Íñigo Huguet) [2196823] - wifi: rtw88: Update spelling in main.h (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Simplify setting the initial gain (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Add rtl8xxxu_write{8,16,32}_{set,clear} (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Don't print the vendor/product/serial (Íñigo Huguet) [2196823] - wifi: rtw88: Fix memory leak in rtw88_usb (Íñigo Huguet) [2196823] - wifi: rtw88: call rtw8821c_switch_rf_set() according to chip variant (Íñigo Huguet) [2196823] - wifi: rtw88: set pkg_type correctly for specific rtw8821c variants (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Fix rfe_option field width (Íñigo Huguet) [2196823] - wifi: rtw88: usb: fix priority queue to endpoint mapping (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: add iface combination (Íñigo Huguet) [2196823] - wifi: rtw88: handle station mode concurrent scan with AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: prevent scan abort with other VIFs (Íñigo Huguet) [2196823] - wifi: rtw88: refine reserved page flow for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: disallow PS during AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: 8822c: extend reserved page number (Íñigo Huguet) [2196823] - wifi: rtw88: add port switch for AP mode (Íñigo Huguet) [2196823] - wifi: rtw88: add bitmap for dynamic port settings (Íñigo Huguet) [2196823] - wifi: rtw89: mac: use regular int as return type of DLE buffer request (Íñigo Huguet) [2196823] - wifi: mac80211: remove return value check of debugfs_create_dir() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix RFKILL report when driver is going down (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: re-ask for ownership after it was taken by CSME (Íñigo Huguet) [2196823] - wifi: iwlwifi: mei: make mei filtered scan more aggressive (Íñigo Huguet) [2196823] - wifi: iwlwifi: modify scan request and results when in link protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable support for MLO APIs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: prefer RCU_INIT_POINTER() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix potential memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix argument to efi.get_variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix MIC removal confusion (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: fix memory leak in debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update support for b0 version (Íñigo Huguet) [2196823] - wifi: ath11k: Remove disabling of 80+80 and 160 MHz (Íñigo Huguet) [2196823] - wifi: ath11k: Fix SKB corruption in REO destination ring (Íñigo Huguet) [2196823] - wifi: ath11k: Fix incorrect update of radiotap fields (Íñigo Huguet) [2196823] - wifi: ath11k: fix tx status reporting in encap offload mode (Íñigo Huguet) [2196823] - wifi: ath11k: add peer mac information in failure cases (Íñigo Huguet) [2196823] - wifi: ath11k: Prevent REO cmd failures (Íñigo Huguet) [2196823] - wifi: ath11k: fix double free of peer rx_tid during reo cmd failure (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fill txd by host driver (Íñigo Huguet) [2196823] - wifi: mt76: set NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 on supported drivers (Íñigo Huguet) [2196823] - wifi: mt76: dma: use napi_build_skb (Íñigo Huguet) [2196823] - wifi: mt76: mt7615: increase eeprom size for mt7663 (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable mesh HW amsdu/de-amsdu support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable configured beacon tx rate (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_MCAST_RATE support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable BSS_CHANGED_BASIC_RATES support (Íñigo Huguet) [2196823] - wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace (Íñigo Huguet) [2196823] - wifi: mac80211: remove ieee80211_tx_status_8023 (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 78 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: check firmware response size (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add MLO support to SF - use sta pointer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: configure TLC on link activation (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix iwl_mvm_max_amsdu_size() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove RS rate init update argument (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize per-link STA ratescale data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: properly access sband->iftype_data (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: only clients can be 20MHz-only (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix iwl_mvm_sta_rc_update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove per-STA MFP setting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use BSSID when building probe requests (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac id management (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adopt the latest firmware API (Íñigo Huguet) [2196823] - wifi: mt76: connac: add nss calculation into mt76_connac2_mac_tx_rate_val() (Íñigo Huguet) [2196823] - wifi: mt76: connac: fix txd multicast rate setting (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: stop chip reset worker in unregister hook (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: improve reliability of dma reset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix missing unwind goto in `mt7921u_probe` (Íñigo Huguet) [2196823] - mt76: mt7921: fix kernel panic by accessing unallocated eeprom.data (Íñigo Huguet) [2196823] - wifi: mt76: move mcu_uni_event and mcu_reg_event in common code (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable coredump support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add full system reset knobs into debugfs (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: enable full system reset support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: enable p2p support (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: Replace fake flex-arrays with flexible-array members (Íñigo Huguet) [2196823] - wifi: mt76: Replace zero-length array with flexible-array member (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: add Netgear AXE3000 (A8000) support (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: drop redundant prefix of mt7915_txpower_puts() (Íñigo Huguet) [2196823] - wifi: mt76: fix 6GHz high channel not be scanned (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: fix probe timeout after reboot (Íñigo Huguet) [2196823] - wifi: mt76: move shared mac definitions in mt76_connac2_mac.h (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: get rid of eeprom.h (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_gen_ppe_thresh utility routine (Íñigo Huguet) [2196823] - wifi: mt76: get rid of unused sta_ps callbacks (Íñigo Huguet) [2196823] - wifi: mt76: add mt76_connac_irq_enable utility routine (Íñigo Huguet) [2196823] - wifi: mt76: move irq_tasklet in mt76_dev struct (Íñigo Huguet) [2196823] - wifi: mt76: mt7921e: Set memory space enable in PCI_COMMAND if unset (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: use driver flags rather than mac80211 flags to mcu (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: introduce mt7921_get_mac80211_ops utility routine (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix eeprom tx path bitfields (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_set_pm() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: init mpdu density cap (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix pointer calculation in ie countdown event (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove unused eeprom band selection (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: let non-bufferable MMPDUs use correct hw queue (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: add eht rx rate support (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: remove mt7996_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: remove mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2196823] - wifi: mt76: connac: refresh tx session timer for WED device (Íñigo Huguet) [2196823] - wifi: mt76: add missing locking to protect against concurrent rx/status calls (Íñigo Huguet) [2196823] - wifi: mt76: handle failure of vzalloc in mt7615_coredump_work (Íñigo Huguet) [2196823] - wifi: mt76: drop the incorrect scatter and gather frame (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: rework init flow in mt7915_thermal_init() (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: add dev->hif2 support for mt7916 WED device (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: expose device tree match table (Íñigo Huguet) [2196823] - wifi: mt76: dynamic channel bandwidth changes in AP mode (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: fix radiotap bitfield (Íñigo Huguet) [2196823] - wifi: mt76: mt7915: unlock on error in mt7915_thermal_temp_store() (Íñigo Huguet) [2196823] - wifi: mt76: mt7996: Remove unneeded semicolon (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix PCI DMA hang after reboot (Íñigo Huguet) [2196823] - wifi: mt76: mt7921: fix wrong command to set STA channel (Íñigo Huguet) [2196823] - wifi: mt76: remove redundent MCU_UNI_CMD_* definitions (Íñigo Huguet) [2196823] - wifi: ath9k: fix per-packet TX-power cap for TPC (Íñigo Huguet) [2196823] - wifi: ath11k: fix undefined behavior with __fls in dp (Íñigo Huguet) [2196823] - wifi: ath11k: Ignore frags from uninitialized peer in dp. (Íñigo Huguet) [2196823] - wifi: ath11k: print a warning when crypto_alloc_shash() fails (Íñigo Huguet) [2196823] - wifi: ath11k: pci: Add more MODULE_FIRMWARE() entries (Íñigo Huguet) [2196823] - wifi: ath11k: enable SAR support on WCN6750 (Íñigo Huguet) [2196823] - wifi: ath11k: Disable Spectral scan upon removing interface (Íñigo Huguet) [2196823] - wifi: rtw89: add support of concurrent mode (Íñigo Huguet) [2196823] - wifi: rtw89: Disallow power save with multiple stations (Íñigo Huguet) [2196823] - wifi: rtw89: update statistics to FW for fine-tuning performance (Íñigo Huguet) [2196823] - wifi: rtw89: use struct instead of macros to set H2C command of hardware scan (Íñigo Huguet) [2196823] - wifi: rtw89: refine scan function after chanctx (Íñigo Huguet) [2196823] - wifi: rtw89: prohibit enter IPS during HW scan (Íñigo Huguet) [2196823] - wifi: rtw89: coex: send more hardware module info to firmware for 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update function to get BT RSSI and hardware counter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add path control register to monitor list (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Enable Wi-Fi RX gain control for free run solution (Íñigo Huguet) [2196823] - wifi: rtw89: fix power save function in WoWLAN mode (Íñigo Huguet) [2196823] - wifi: rtw89: support WoWLAN mode for 8852be (Íñigo Huguet) [2196823] - wifi: iwlwifi: move debug buffer allocation failure to info verbosity (Íñigo Huguet) [2196823] - wifi: iwlwifi: make the loop for card preparation effective (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow number of beacons from FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement key link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement BAID link switching (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track station mask for BAIDs (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 77 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use correct sta mask to remove queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid iterating over an un-initialized list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: factor out iwl_mvm_sta_fw_id_mask() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: properly implement HE AP support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix _iwl_mvm_get_scan_type() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix getting lowest TX rate for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: call napi_synchronize() before freeing rx/tx queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: add full BW UL MU-MIMO support (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support devices with 5-6 out endpoints (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Clean up some messy ifs (Íñigo Huguet) [2196823] - wifi: brcmfmac: add Cypress 43439 SDIO ids (Íñigo Huguet) [2196823] - wifi: rtw89: fix crash due to null pointer of sta in AP mode (Íñigo Huguet) [2196823] - wifi: rtw89: correct 5 MHz mask setting (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add tables for RFK (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (2 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: add BB and RF tables (1 of 2) (Íñigo Huguet) [2196823] - wifi: rtw89: pci: update PCI related settings to support 8851B (Íñigo Huguet) [2196823] - wifi: rtw89: mac: update MAC settings to support 8851b (Íñigo Huguet) [2196823] - wifi: rtw89: 8851b: fix TX path to path A for one RF path chip (Íñigo Huguet) [2196823] - wifi: rtw89: read version of analog hardware (Íñigo Huguet) [2196823] - wifi: rtw89: use hardware CFO to improve performance (Íñigo Huguet) [2196823] - wifi: rtw89: support parameter tables by RFE type (Íñigo Huguet) [2196823] - wifi: rtw89: fix authentication fail during scan (Íñigo Huguet) [2196823] - wifi: rtw89: add flag check for power state (Íñigo Huguet) [2196823] - wifi: rtw89: add ieee80211::remain_on_channel ops (Íñigo Huguet) [2196823] - wifi: rtw89: add function to wait for completion of TX skbs (Íñigo Huguet) [2196823] - wifi: rtw89: 8852c: add beacon filter and CQM support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: tx: remove misleading if statement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix setting the rate for non station cases (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: validate station properly in flush (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: set STA mask for keys in MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix ptk_pn memory leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make iwl_mvm_mac_ctxt_send_beacon() static (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: track AP STA pointer and use it for MFP (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: Fix integer overflow in iwl_write_to_user_buf (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: move memset before early return (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize seq variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Fix spelling mistake "Gerenal" -> "General" (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix spelling mistake "upto" -> "up to" (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable new MLD FW API (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a new PCI device ID for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add RF Step Type for BZ device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: scan legacy bands and UHB channels with same antenna (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Fix possible division by zero (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: skip dump correctly on hw error (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: fix possible NULL pointer dereference (Íñigo Huguet) [2196823] - wifi: iwlwifi: Fix the duplicate dump name (Íñigo Huguet) [2196823] - wifi: iwlwifi: pcie: work around ROM bug on AX210 integrated (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add DSM_FUNC_ENABLE_6E value to debugfs (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: cleanup beacon_inject_active during hw restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support wowlan info notification version 2 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make HLTK configuration for PASN station optional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: request limiting to 8 MSDUs per A-MSDU (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix shift-out-of-bounds (Íñigo Huguet) [2196823] - wifi: iwlwifi: acpi: support modules with high antenna gain (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't drop unencrypted MCAST frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: dbg: print pc register data once fw dump occurred (Íñigo Huguet) [2196823] - wifi: mac80211: add flush_sta method (Íñigo Huguet) [2196823] - wifi: mac80211: flush queues on STA removal (Íñigo Huguet) [2196823] - wifi: ieee80211: correctly mark FTM frames non-bufferable (Íñigo Huguet) [2196823] - wifi: ieee80211: clean up public action codes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't set CHECKSUM_COMPLETE for unsupported protocols (Íñigo Huguet) [2196823] - wifi: iwlwifi: trans: don't trigger d3 interrupt twice (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj-a0 and specific rf devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update init sequence if tx diversity supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move function sequence (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm: Update HE capabilities on 6GHz band for EHT device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor TX csum mode check (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix A-MSDU checks (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable bz hw checksum from c step (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use OFDM rate if IEEE80211_TX_CTL_NO_CCK_RATE is set (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: convert TID to FW value on queue remove (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configuration for SO,SOF MAC and HR RF (Íñigo Huguet) [2196823] - wifi: iwlwifi: add a validity check of queue_id in iwl_txq_reclaim (Íñigo Huguet) [2196823] - wifi: iwlwifi: nvm-parse: enable 160/320 MHz for AP mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: debug: fix crash in __iwl_err() (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8821CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822CS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: Add support for the SDIO based RTL8822BS chipset (Íñigo Huguet) [2196823] - wifi: rtw88: main: Reserve 8 bytes of extra TX headroom for SDIO cards (Íñigo Huguet) [2196823] - wifi: rtw88: main: Add the {cpwm,rpwm}_addr for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Support SDIO specific bits in the power on sequence (Íñigo Huguet) [2196823] - wifi: rtw88: sdio: Add HCI implementation for SDIO based chipsets (Íñigo Huguet) [2196823] - wifi: rtw88: Clear RTW_FLAG_POWERON early in rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: ath12k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: ath11k: Send 11d scan start before WMI_START_SCAN_CMDID (Íñigo Huguet) [2196823] - wifi: ath11k: fix writing to unintended memory region (Íñigo Huguet) [2196823] - wifi: ath11k: Fix invalid management rx frame length issue (Íñigo Huguet) [2196823] - wifi: ath11k: fix rssi station dump not updated in QCN9074 (Íñigo Huguet) [2196823] - wifi: ath11k: Configure the FTM responder role using firmware capability flag (Íñigo Huguet) [2196823] - wifi: ath11k: Optimize 6 GHz scan time (Íñigo Huguet) [2196823] - wifi: mac80211: set EHT support flag in AP mode (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: fix potential NULL deref in hwsim_pmsr_report_nl() (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix duplicate entry in iwl_dev_info_table (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix the order of TIMING_MEASUREMENT notifications (Íñigo Huguet) [2196823] - bus: mhi: host: Use mhi_tryset_pm_state() for setting fw error state (Íñigo Huguet) [2196823] - bus: mhi: host: Remove duplicate ee check for syserr (Íñigo Huguet) [2196823] - bus: mhi: host: Avoid ringing EV DB if there are no elements to process (Íñigo Huguet) [2196823] - net: rfkill-gpio: Add explicit include for of.h (Íñigo Huguet) [2196823] - net: qrtr: correct types of trace event parameters (Íñigo Huguet) [2196823] - wifi: rt2x00: Fix memory leak when handling surveys (Íñigo Huguet) [2196823] - wifi: b43legacy: Remove the unused function prev_slot() (Íñigo Huguet) [2196823] - wifi: rtw89: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rtw89: fix potential race condition between napi_init and napi_enable (Íñigo Huguet) [2196823] - wifi: rtw89: config EDCCA threshold during scan to prevent TX failed (Íñigo Huguet) [2196823] - wifi: rtw89: fix incorrect channel info during scan due to ppdu_sts filtering (Íñigo Huguet) [2196823] - wifi: rtw89: remove superfluous H2C of join_info (Íñigo Huguet) [2196823] - wifi: rtw89: set data lowest rate according to AP supported rate (Íñigo Huguet) [2196823] - wifi: rtw89: add counters of register-based H2C/C2H (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.1 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add report control v5 variation (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Update RTL8852B LNA2 hardware parameter (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Not to enable firmware report when WiFi is power saving (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add LPS protocol radio state for RTL8852B (Íñigo Huguet) [2196823] - bus: mhi: pci_generic: Add Foxconn T99W510 (Íñigo Huguet) [2196823] - bus: mhi: host: Use ERANGE for BHIOFF/BHIEOFF range check (Íñigo Huguet) [2196823] - bus: mhi: host: Range check CHDBOFF and ERDBOFF (Íñigo Huguet) [2196823] - wifi: mwifiex: remove unused evt_buf variable (Íñigo Huguet) [2196823] - wifi: brcmsmac: ampdu: remove unused suc_mpdu variable (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg() (Íñigo Huguet) [2196823] - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg() (Íñigo Huguet) [2196823] - wifi: brcmsmac: remove unused has_5g variable (Íñigo Huguet) [2196823] - wifi: b43legacy: remove unused freq_r3A_value function (Íñigo Huguet) [2196823] - wifi: rtlwifi: Replace fake flex-array with flex-array member (Íñigo Huguet) [2196823] - wifi: rtw88: Remove redundant pci_clear_master (Íñigo Huguet) [2196823] - wifi: rndis_wlan: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: rndis_wlan: clean up a type issue (Íñigo Huguet) [2196823] - wifi: rtw88: remove unused rtw_pci_get_tx_desc function (Íñigo Huguet) [2196823] - wifi: rsi: Slightly simplify rsi_set_channel() (Íñigo Huguet) [2196823] - wifi: ipw2x00: remove unused _ipw_read16 function (Íñigo Huguet) [2196823] - wifi: mac80211: enable EHT mesh support (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: correctly use link in iwl_mvm_sta_del() (Íñigo Huguet) [2196823] - wifi: iwlwifi: separate AP link management queues (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: free probe_resp_data later (Íñigo Huguet) [2196823] - wifi: iwlwifi: bump FW API to 75 for AX devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: move max_agg_bufsize into host TLC lq_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: send full STA during HW restart (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rework active links counting (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update mac config when assigning chanctx (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the correct link queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up mac_id vs. link_id in MLD sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix station link data leak (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: initialize max_rc_amsdu_len per-link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use appropriate link for rate selection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the new lockdep-checking macros (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove chanctx WARN_ON (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sending MAC context for idle (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove only link-specific AP keys (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip inactive links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_scan_respect_p2p_go_iter() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rxmq: report link ID to mac80211 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use bcast/mcast link station id (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: translate management frame address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement mac80211 callback change_sta_links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use the link sta address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust rs init to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust radar detection to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust iwl_mvm_sec_key_remove_ap to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make a few warnings only trigger once (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: coex: start handling multiple links (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs-fw: don't crash on missing channel (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: use STA link address (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: skip MEI update for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix narrow RU check for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make some HW flags conditional (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement link change ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some cleanup functions to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_mac_sta_state_common() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: update iwl_mvm_tx_reclaim() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust to MLO assign/unassign/switch_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add fw link id allocation (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust internal stations to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: replace bss_info_changed() with vif_cfg/link_info_changed() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link_conf parameter for add/remove/change link (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: don't check dtim_period in new API (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust SMPS for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add set_hw_timestamp to mld ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add link to firmware earlier (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust some PS and PM methods to MLD (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust mld_mac_ctxt_/beacon_changed() for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: adjust smart fifo configuration to MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: align to the LINK cmd update in the FW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: always use the sta->addr as the peers addr (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: modify link instead of removing it during csa (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix crash on queue removal for MLD API too (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix "modify_mask" value in the link cmd. (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all missing ops to iwl_mvm_mld_ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for post_channel_switch in MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: unite sta_modify_disable_tx flows (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add cancel/remain_on_channel for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_roc() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add some new MLD ops (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add sta handling flows for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an indication that the new MLD API is used (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: sta preparation for MLO (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: vif preparation for MLO (Íñigo Huguet) [2196823] - wifi: nl80211: support advertising S1G capabilities (Íñigo Huguet) [2196823] - wifi: mac80211: S1G capabilities information element in probe request (Íñigo Huguet) [2196823] - mac80211: minstrel_ht: remove unused n_supported variable (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Use 64-bit division helper in iwl_mvm_get_crosstimestamp_fw() (Íñigo Huguet) [2196823] - wifi: carl9170: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: carl9170: Fix multiple -Warray-bounds warnings (Íñigo Huguet) [2196823] - wifi: ath10k: remove unused ath10k_get_ring_byte function (Íñigo Huguet) [2196823] - wifi: ath12k: incorrect channel survey dump (Íñigo Huguet) [2196823] - wifi: ath12k: fix incorrect handling of AMSDU frames (Íñigo Huguet) [2196823] - wifi: ath12k: fix packets are sent in native wifi mode while we set raw mode (Íñigo Huguet) [2196823] - wifi: ath12k: fill peer meta data during reo_reinject (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR report support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR abort support via virtio (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR request support via virtio (Íñigo Huguet) [2196823] - wifi: nl80211: make nl80211_send_chandef non-static (Íñigo Huguet) [2196823] - mac80211_hwsim: add PMSR capability support (Íñigo Huguet) [2196823] - mac80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - cfg80211: support RNR for EMA AP (Íñigo Huguet) [2196823] - wifi: mac80211: use bullet list for amsdu_mesh_control formats list (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix NULL deref in iwl_mvm_mld_disable_txq (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: EMA support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Multiple BSSID support (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: move beacon transmission to a separate function (Íñigo Huguet) [2196823] - wifi: mac80211: generate EMA beacons in AP mode (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - wifi: mac80211: implement support for yet another mesh A-MSDU format (Íñigo Huguet) [2196823] - wifi: mac80211: add mesh fast-rx support (Íñigo Huguet) [2196823] - wifi: mac80211: use mesh header cache to speed up mesh forwarding (Íñigo Huguet) [2196823] - wifi: mac80211: mesh fast xmit support (Íñigo Huguet) [2196823] - wifi: mac80211: fix race in mesh sequence number assignment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add debugfs to get TAS status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: support enabling and disabling HW timestamping (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_add_sta(), iwl_mvm_rm_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove not needed initializations (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta_send_to_fw() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_sta (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor iwl_mvm_cfg_he_sta() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Don't send MAC CTXT cmd after deauthorization (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add stop_ap() and leave_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add start_ap() and join_ibss() callbacks for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: select ptp cross timestamp from multiple reads (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: implement PHC clock adjustments (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: enable TX beacon protection (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for timing measurement (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: report hardware timestamps in RX/TX status (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: read synced time from firmware if supported (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for PTP HW clock (PHC) (Íñigo Huguet) [2196823] - wifi: ath12k: Enable IMPS for WCN7850 (Íñigo Huguet) [2196823] - wifi: ath12k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2196823] - wifi: ath12k: fix firmware assert during channel switch for peer sta (Íñigo Huguet) [2196823] - wifi: ath12k: fix memory leak in ath12k_qmi_driver_event_work() (Íñigo Huguet) [2196823] - wifi: ath11k: fix BUFFER_DONE read on monitor ring rx buffer (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Support new chip RTL8710BU aka RTL8188GU (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: RTL8192EU always needs full init (Íñigo Huguet) [2196823] - wifi: iwlwifi: Avoid disabling GCC specific flag with clang (Íñigo Huguet) [2196823] - wifi: iwlwifi: suppress printf warnings in tracing (Íñigo Huguet) [2196823] - wifi: iwlwifi: fw: pnvm: fix uefi reduced TX power loading (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update configurations for Bnj and Bz devices (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rs: print BAD_RATE for invalid HT/VHT index (Íñigo Huguet) [2196823] - wifi: iwlwifi: Replace space with tabs as code indent (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add required space before open '(' (Íñigo Huguet) [2196823] - wifi: iwlwifi: Remove prohibited spaces (Íñigo Huguet) [2196823] - wifi: iwlwifi: fix typos in comment (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: remove setting of 'sta' parameter (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an unassign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_unassign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an assign_vif_chanctx() callback for MLD mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: refactor __iwl_mvm_assign_vif_chanctx() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add a remove_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Add an add_interface() callback for mld mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new STA related commands (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new LINK command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add support for the new MAC CTXT command (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor MAC_CONTEXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: Refactor STA_HE_CTXT_CMD sending flow (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add driver defined dump file name (Íñigo Huguet) [2196823] - wifi: iwlwifi: yoyo: Add new tlv for dump file name extension (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid sta lookup in queue alloc (Íñigo Huguet) [2196823] - wifi: ath11k: fix deinitialization of firmware resources (Íñigo Huguet) [2196823] - wifi: ath11k: Replace fake flex-array with flexible-array member (Íñigo Huguet) [2196823] - wifi: ath12k: Add missing unwind goto in ath12k_pci_probe() (Íñigo Huguet) [2196823] - net: Use of_property_present() for testing DT property presence (Íñigo Huguet) [2196823] - wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies() (Íñigo Huguet) [2196823] {CVE-2023-1380} - wifi: rtw88: fix memory leak in rtw_usb_probe() (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v5 firmware cycle status report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add v2 Bluetooth scan info (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Fix wrong structure assignment at null data report (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add register monitor report v2 format (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add traffic TX/RX info and its H2C (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add WiFi role info v2 (Íñigo Huguet) [2196823] - wifi: rtw89: coex: Add more error_map and counter to log (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: use module_usb_driver (Íñigo Huguet) [2196823] - wifi: rtw89: release RX standby timer of beamformee CSI to save power (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: mark Edimax EW-7811Un V2 as tested (Íñigo Huguet) [2196823] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 4356 (Íñigo Huguet) [2196823] - wifi: move raycs, wl3501 and rndis_wlan to legacy directory (Íñigo Huguet) [2196823] - wifi: move mac80211_hwsim and virt_wifi to virtual directory (Íñigo Huguet) [2196823] - wifi: ath11k: add debug prints in regulatory WMI event processing (Íñigo Huguet) [2196823] - wifi: ath11k: add support to parse new WMI event for 6 GHz (Íñigo Huguet) [2196823] - wifi: ath11k: use proper regulatory reference for bands (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Revert "Add a secondary AT port to Telit FN990" (Íñigo Huguet) [2196823] - bus: mhi: host: pci_generic: Drop redundant pci_enable_pcie_error_reporting() (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: fix EOF bit reporting (Íñigo Huguet) [2196823] - wifi: iwlwifi: Do not include radiotap EHT user info if not needed (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT RU allocation to radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: Update logs for yoyo reset sw changes (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: clean up duplicated defines (Íñigo Huguet) [2196823] - wifi: iwlwifi: rs-fw: break out for unsupported bandwidth (Íñigo Huguet) [2196823] - wifi: iwlwifi: Add support for B step of BnJ-Fm4 (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: make flush code a bit clearer (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: avoid UB shift of snif_queue (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add primary 80 known for EHT radiotap (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: parse FW frame metadata for EHT sniffer mode (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: decode USIG_B1_B7 RU to nl80211 RU width (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: rename define to generic name (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: allow Microsoft to use TAS (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add all EHT based on data0 info from HW (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add EHT radiotap info based on rate_n_flags (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add an helper function radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: separate vendor TLV into header/content (Íñigo Huguet) [2196823] - bus: mhi: ep: Demote unsupported channel error log to debug (Íñigo Huguet) [2196823] - bus: mhi: host: Remove mhi_poll() API (Íñigo Huguet) [2196823] - wifi: iwlwifi: reduce verbosity of some logging events (Íñigo Huguet) [2196823] - wifi: iwlwifi: Adding the code to get RF name for MsP device (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: mark mac header with no data frames (Íñigo Huguet) [2196823] - wifi: iwlwifi: mvm: add LSIG info to radio tap info in EHT (Íñigo Huguet) [2196823] - wifi: nl80211: Add support for randomizing TA of auth and deauth frames (Íñigo Huguet) [2196823] - wifi: mac80211: add LDPC related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: add EHT MU-MIMO related flags in ieee80211_bss_conf (Íñigo Huguet) [2196823] - wifi: mac80211: introduce ieee80211_refresh_tx_agg_session_timer() (Íñigo Huguet) [2196823] - wifi: mac80211: add support for driver adding radiotap TLVs (Íñigo Huguet) [2196823] - wifi: radiotap: Add EHT radiotap definitions (Íñigo Huguet) [2196823] - wifi: mac80211: fix ieee80211_link_set_associated() type (Íñigo Huguet) [2196823] - wifi: mac80211: simplify reasoning about EHT capa handling (Íñigo Huguet) [2196823] - wifi: mac80211: mlme: remove pointless sta check (Íñigo Huguet) [2196823] - wifi: mac80211_hwsim: Indicate support for NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT (Íñigo Huguet) [2196823] - wifi: mac80211: add netdev per-link debugfs data and driver hook (Íñigo Huguet) [2196823] - wifi: mac80211: remove SMPS from AP debugfs (Íñigo Huguet) [2196823] - wifi: mac80211: add pointer from bss_conf to vif (Íñigo Huguet) [2196823] - wifi: mac80211: warn only once on AP probe (Íñigo Huguet) [2196823] - wifi: cfg80211/mac80211: report link ID on control port RX (Íñigo Huguet) [2196823] - wifi: mac80211: add support for set_hw_timestamp command (Íñigo Huguet) [2196823] - wifi: nl80211: add a command to enable/disable HW timestamping (Íñigo Huguet) [2196823] - wifi: wireless: cleanup unused function parameters (Íñigo Huguet) [2196823] - wifi: wireless: correct primary channel validation on 6 GHz (Íñigo Huguet) [2196823] - wifi: wireless: return primary channel regardless of DUP (Íñigo Huguet) [2196823] - wifi: mac80211: allow beacon protection HW offload (Íñigo Huguet) [2196823] - wifi: mac80211: check key taint for beacon protection (Íñigo Huguet) [2196823] - wifi: mac80211: clear all bits that relate rtap fields on skb (Íñigo Huguet) [2196823] - wifi: mac80211: adjust scan cancel comment/check (Íñigo Huguet) [2196823] - wifi: nl80211: Update the documentation of NL80211_SCAN_FLAG_COLOCATED_6GHZ (Íñigo Huguet) [2196823] - gpiolib: split linux/gpio/driver.h out of linux/gpio.h (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192se: Remove some unused variables (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_mac_power_switch() (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add 4359C0 firmware definition (Íñigo Huguet) [2196823] - wifi: rtw89: fix SER L1 might stop entering LPS issue (Íñigo Huguet) [2196823] - wifi: ath11k: Add tx ack signal support for management packets (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add BCM4378B3 support (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for external calibration blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Load and provide TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: common: Add support for downloading TxCap blobs (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4387 (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for PMKID_V3 operations (Íñigo Huguet) [2196823] - wifi: brcmfmac: feature: Add support for setting feats based on WLC version (Íñigo Huguet) [2196823] - wifi: brcmfmac: cfg80211: Add support for scan params v2 (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Handle 1024-unit sizes for TCM blocks (Íñigo Huguet) [2196823] - wifi: brcmfmac: chip: Only disable D11 cores; handle an arbitrary number (Íñigo Huguet) [2196823] - wifi: ath11k: generate rx and tx mcs maps for supported HE mcs (Íñigo Huguet) [2196823] - wifi: ath11k: move HE MCS mapper to a separate function (Íñigo Huguet) [2196823] - wifi: ath11k: push MU-MIMO params from hostapd to hardware (Íñigo Huguet) [2196823] - wifi: ath11k: modify accessor macros to match index size (Íñigo Huguet) [2196823] - wifi: ath6kl: reduce WARN to dev_dbg() in callback (Íñigo Huguet) [2196823] - wifi: brcmfmac: support CQM RSSI notification with older firmware (Íñigo Huguet) [2196823] - wifi: brcmfmac: pcie: Provide a buffer of random bytes to the device (Íñigo Huguet) [2196823] - wifi: brcmfmac: acpi: Add support for fetching Apple ACPI properties (Íñigo Huguet) [2196823] - wifi: ath12k: remove memset with byte count of 278528 (Íñigo Huguet) [2196823] - wifi: wcn36xx: Slightly optimize PREPARE_HAL_BUF() (Íñigo Huguet) [2196823] - wifi: rtw89: refine FW feature judgement on packet drop (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: enable hw_scan support (Íñigo Huguet) [2196823] - wifi: rtw89: 8852b: add channel encoding for hw_scan (Íñigo Huguet) [2196823] - wifi: rtw89: adjust channel encoding to common function (Íñigo Huguet) [2196823] - wifi: rtw89: fw: configure CRASH_TRIGGER feature for 8852B (Íñigo Huguet) [2196823] - wifi: rtw89: add tx_wake notify for 8852B (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822c: Implement RTL8822CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8822b: Implement RTL8822BS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: rtw8821c: Implement RTL8821CS (SDIO) efuse parsing (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add SDIO HCI support in the TX/page table setup (Íñigo Huguet) [2196823] - wifi: rtw88: mac: Add support for the SDIO HCI in rtw_pwr_seq_parser() (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: Remove always true condition in rtl8xxxu_print_chipinfo (Íñigo Huguet) [2196823] - wifi: rtw89: add RNR support for 6 GHz scan (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192de: Remove the unused variable bcnfunc_enable (Íñigo Huguet) [2196823] - wifi: rtl8xxxu: 8188e: parse single one element of RA report for station mode (Íñigo Huguet) [2196823] - wifi: rtlwifi: rtl8192ce: fix dealing empty EEPROM values (Íñigo Huguet) [2196823] - wifi: ath11k: fix SAC bug on peer addition with sta band migration (Íñigo Huguet) [2196823] - wifi: ath10k: Remove redundant assignment to changed_flags (Íñigo Huguet) [2196823] - wifi: ath10k: snoc: enable threaded napi on WCN3990 (Íñigo Huguet) [2196823] - wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list() (Íñigo Huguet) [2196823] - wifi: ath5k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath11k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2196823] - wifi: ath12k: PCI ops for wakeup/release MHI (Íñigo Huguet) [2196823] - wifi: ath12k: Handle lock during peer_id find (Íñigo Huguet) [2196823] - wifi: ath9k: hif_usb: fix memory leak of remain_skbs (Íñigo Huguet) [2196823] - wifi: ath11k: fix return value check in ath11k_ahb_probe() (Íñigo Huguet) [2196823] - wifi: ath12k: use kfree_skb() instead of kfree() (Íñigo Huguet) [2196823] - wifi: ath: Silence memcpy run-time false positive warning (Íñigo Huguet) [2196823] - wifi: ath10k: Remove the unused function shadow_dst_wr_ind_addr() and ath10k_ce_error_intr_enable() (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: clean up some inconsistent indentings (Íñigo Huguet) [2196823] - wifi: ath12k: dp_mon: Fix unsigned comparison with less than zero (Íñigo Huguet) [2196823] - wifi: ath12k: Fix spelling mistakes in warning messages and comments (Íñigo Huguet) [2196823] - wifi: ath6kl: minor fix for allocation size (Íñigo Huguet) [2196823] - wifi: ath11k: Set ext passive scan flag to adjust passive scan start time (Íñigo Huguet) [2196823]- [rt] build kernel-rt-4.18.0-511.rt7.300.el8 [2180997] - xfrm: add NULL check in xfrm_update_ae_params (Daniel Mendes) [2224007] {CVE-2023-3772} - scsi: storvsc: Fix handling of virtual Fibre Channel timeouts (Cathy Avery) [1986067] - netfilter: xt_owner: Add supplementary groups option (Phil Sutter) [2136194] - netfilter: nf_tables: can't schedule in nft_chain_validate (Florian Westphal) [2230460] - drm/nouveau/nvkm/dp: Add workaround to fix DP 1.3+ DPCD issues (Karol Herbst) [2229989] - net: deprecate PF_KEY (Sabrina Dubroca) [RHEL-1257] - KVM: SEV: remove ghcb variable declarations (Vitaly Kuznetsov) [2213807] - KVM: SEV: only access GHCB fields once (Vitaly Kuznetsov) [2213805] {CVE-2023-4155} - KVM: SEV: snapshot the GHCB before accessing it (Vitaly Kuznetsov) [2213805] {CVE-2023-4155} - Documentation/x86: Fix backwards on/off logic about YMM support (Waiman Long) [2229889] {CVE-2022-40982} - KVM: Add GDS_NO support to KVM (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add Kconfig option for GDS (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add force option to GDS mitigation (Waiman Long) [2229889] {CVE-2022-40982} - x86/speculation: Add Gather Data Sampling mitigation (Waiman Long) [2229889] {CVE-2022-40982} - x86/bugs: Use sysfs_emit() (Waiman Long) [2229884] - Documentation/ABI: Mention retbleed vulnerability info file for sysfs (Waiman Long) [2229884] - docs/kernel-parameters: Update descriptions for "mitigations=" param with retbleed (Waiman Long) [2229884] - arm64: correct the effect of mitigations off on kpti (Waiman Long) [2229884] - x86/speculation: Add missing srbds=off to the mitigations= help text (Waiman Long) [2229884] - usb: typec: ucsi: Mark dGPUs as DEVICE scope (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Remove ccgx,firmware-build property (Desnes Nunes) [2222463] - usb: typec: ucsi_ccg: Add OF support (Desnes Nunes) [2222463] - usb: typec: ucsi/ucsi_ccg: Convert to i2c's .probe_new() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Add ACPI property to align with device-tree (Desnes Nunes) [2222463] - dt-bindings: usb: Add Cypress cypd4226 Type-C controller (Desnes Nunes) [2222463] - i2c: designware-pci: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Convert to use dev_err_probe() (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use temporary variable for struct device (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Switch to use i2c_new_ccgx_ucsi() (Desnes Nunes) [2222463] - i2c: Remove support for dangling device properties (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Constify the software node (Desnes Nunes) [2222463] - i2c: nvidia-gpu: Use PTR_ERR_OR_ZERO() to simplify code (Desnes Nunes) [2222463] - i2c: nvidia-gpu: convert to use i2c_new_client_device() (Desnes Nunes) [2222463] - i2c: Add support for software nodes (Desnes Nunes) [2222463] - i2c: Introduce common module to instantiate CCGx UCSI (Desnes Nunes) [2222463] - power: supply: Fix logic checking if system is running from battery (Desnes Nunes) [2222463] - redhat: support virtio-mem on x86-64 as tech-preview (David Hildenbrand) [2229123] - virtio/virtio_mem: handle a possible NULL as a memcpy parameter (David Hildenbrand) [2229123] - virtio-mem: support VIRTIO_MEM_F_UNPLUGGED_INACCESSIBLE (David Hildenbrand) [2229123] - virtio-mem: disallow mapping virtio-mem memory via /dev/mem (David Hildenbrand) [2229123] - kernel/resource: disallow access to exclusive system RAM regions (David Hildenbrand) [2229123] - kernel/resource: clean up and optimize iomem_is_exclusive() (David Hildenbrand) [2229123] - virtio-mem: kdump mode to sanitize /proc/vmcore access (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_remove() into virtio_mem_deinit_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_probe() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - virtio-mem: factor out hotplug specifics from virtio_mem_init() into virtio_mem_init_hotplug() (David Hildenbrand) [2229123] - proc/vmcore: fix possible deadlock on concurrent mmap and read (David Hildenbrand) [2229123] - proc/vmcore: don't fake reading zeroes on surprise vmcore_cb unregistration (David Hildenbrand) [2229123] - proc/vmcore: fix clearing user buffer by properly using clear_user() (David Hildenbrand) [2229123] - proc/vmcore: convert oldmem_pfn_is_ram callback to more generic vmcore callbacks (David Hildenbrand) [2229123] - proc/vmcore: let pfn_is_ram() return a bool (David Hildenbrand) [2229123] - x86/xen: print a warning when HVMOP_get_mem_type fails (David Hildenbrand) [2229123] - x86/xen: simplify xen_oldmem_pfn_is_ram() (David Hildenbrand) [2229123] - x86/xen: update xen_oldmem_pfn_is_ram() documentation (David Hildenbrand) [2229123] - virtio-mem: fix sleeping in RCU read side section in virtio_mem_online_page_cb() (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Big Block Mode (David Hildenbrand) [2229123] - virtio-mem: prioritize unplug from ZONE_MOVABLE in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level unplug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: simplify high-level plug handling in Sub Block Mode (David Hildenbrand) [2229123] - virtio-mem: use page_zonenum() in virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: don't read big block size in Sub Block Mode (David Hildenbrand) [2229123] - fs/proc/kcore: use page_offline_(freeze|thaw) (David Hildenbrand) [2229123] - virtio-mem: use page_offline_(start|end) when setting PageOffline() (David Hildenbrand) [2229123] - mm: introduce page_offline_(begin|end|freeze|thaw) to synchronize setting PageOffline() (David Hildenbrand) [2229123] - fs/proc/kcore: don't read offline sections, logically offline pages and hwpoisoned pages (David Hildenbrand) [2229123] - fs/proc/kcore: pfn_is_ram check only applies to KCORE_RAM (David Hildenbrand) [2229123] - fs/proc/kcore: drop KCORE_REMAP and KCORE_OTHER (David Hildenbrand) [2229123] - proc/kcore: Remove unused kclist_add_remap() (David Hildenbrand) [2229123] - x86/gart: Exclude GART aperture from kcore (David Hildenbrand) [2229123] - kernel/resource: remove first_lvl / siblings_only logic (David Hildenbrand) [2229123] - kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM resources (David Hildenbrand) [2229123] - kernel/resource: make walk_system_ram_res() find all busy IORESOURCE_SYSTEM_RAM resources (David Hildenbrand) [2229123] - kernel/resource.c: fix kernel-doc markups (David Hildenbrand) [2229123] - resource: avoid unnecessary lookups in find_next_iomem_res() (David Hildenbrand) [2229123] - resource: fix locking in find_next_iomem_res() (David Hildenbrand) [2229123] - virtio-mem: check against mhp_get_pluggable_range() which memory we can hotplug (David Hildenbrand) [2229123] - virtio-mem: Assign boolean values to a bool variable (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE -> MHP_MERGE_RESOURCE (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - safe memory hotunplug (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) - basic memory hotunplug (David Hildenbrand) [2229123] - mm/memory_hotplug: extend offline_and_remove_memory() to handle more than one memory block (David Hildenbrand) [2229123] - virtio-mem: allow to force Big Block Mode (BBM) and set the big block size (David Hildenbrand) [2229123] - virtio-mem: Big Block Mode (BBM) memory hotplug (David Hildenbrand) [2229123] - virtio-mem: factor out adding/removing memory from Linux (David Hildenbrand) [2229123] - virtio-mem: memory notifier callbacks are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: existing (un)plug functions are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block ids are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: nb_sb_per_mb and subblock_size are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: subblock states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: memory block states are specific to Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virito-mem: document Sub Block Mode (SBM) (David Hildenbrand) [2229123] - virtio-mem: generalize handling when memory is getting onlined deferred (David Hildenbrand) [2229123] - virtio-mem: don't always trigger the workqueue when offlining memory (David Hildenbrand) [2229123] - virtio-mem: drop last_mb_id (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_overlaps_range() (David Hildenbrand) [2229123] - virtio-mem: generalize virtio_mem_owned_mb() (David Hildenbrand) [2229123] - virtio-mem: generalize check for added memory (David Hildenbrand) [2229123] - virtio-mem: retry fake-offlining via alloc_contig_range() on ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio-mem: factor out handling of fake-offline pages in memory notifier (David Hildenbrand) [2229123] - virtio-mem: factor out fake-offlining into virtio_mem_fake_offline() (David Hildenbrand) [2229123] - virtio-mem: print debug messages from virtio_mem_send_*_request() (David Hildenbrand) [2229123] - virtio-mem: factor out calculation of the bit number within the subblock bitmap (David Hildenbrand) [2229123] - virtio-mem: use "unsigned long" for nr_pages when fake onlining/offlining (David Hildenbrand) [2229123] - virtio-mem: drop rc2 in virtio_mem_mb_plug_and_add() (David Hildenbrand) [2229123] - virtio-mem: simplify MAX_ORDER - 1 / pageblock_order handling (David Hildenbrand) [2229123] - virtio-mem: more precise calculation in virtio_mem_mb_state_prepare_next_mb() (David Hildenbrand) [2229123] - virtio-mem: determine nid only once using memory_add_physaddr_to_nid() (David Hildenbrand) [2229123] - MAINTAINERS: add URL for virtio-mem (David Hildenbrand) [2229123] - virtio-mem: Constify mem_id_table (David Hildenbrand) [2229123] - kernel/resource: make iomem_resource implicit in release_mem_region_adjustable() (David Hildenbrand) [2229123] - virtio-mem: try to merge system ram resources (David Hildenbrand) [2229123] - mm/memory_hotplug: MEMHP_MERGE_RESOURCE to specify merging of System RAM resources (David Hildenbrand) [2229123] - mm/memory_hotplug: prepare passing flags to add_memory() and friends (David Hildenbrand) [2229123] - mm/memory_hotplug: guard more declarations by CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [2229123] - include/linux/memory_hotplug.h: move definitions of {set,clear}_zone_contiguous (David Hildenbrand) [2229123] - kernel/resource: make release_mem_region_adjustable() never fail (David Hildenbrand) [2229123] - virtio-mem: don't special-case ZONE_MOVABLE (David Hildenbrand) [2229123] - virtio_mem: convert to LE accessors (David Hildenbrand) [2229123] - virtio_mem: correct tags for config space fields (David Hildenbrand) [2229123] - virtio-mem: Fix build error due to improper use 'select' (David Hildenbrand) [2229123] - virtio-mem: add memory via add_memory_driver_managed() (David Hildenbrand) [2229123] - virtio-mem: silence a static checker warning (David Hildenbrand) [2229123] - virtio_mem: convert device block size into 64bit (David Hildenbrand) [2229123] - virtio-mem: drop unnecessary initialization (David Hildenbrand) [2229123] - virtio-mem: Don't rely on implicit compiler padding for requests (David Hildenbrand) [2229123] - virtio-mem: Try to unplug the complete online memory block first (David Hildenbrand) [2229123] - virtio-mem: Use -ETXTBSY as error code if the device is busy (David Hildenbrand) [2229123] - virtio-mem: Unplug subblocks right-to-left (David Hildenbrand) [2229123] - virtio-mem: Drop manual check for already present memory (David Hildenbrand) [2229123] - virtio-mem: Add parent resource for all added "System RAM" (David Hildenbrand) [2229123] - virtio-mem: Better retry handling (David Hildenbrand) [2229123] - virtio-mem: Offline and remove completely unplugged memory blocks (David Hildenbrand) [2229123] - mm/memory_hotplug: Introduce offline_and_remove_memory() (David Hildenbrand) [2229123] - virtio-mem: Allow to offline partially unplugged memory blocks (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 2 (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotunplug part 1 (David Hildenbrand) [2229123] - virtio-mem: Allow to specify an ACPI PXM as nid (David Hildenbrand) [2229123] - MAINTAINERS: Add myself as virtio-mem maintainer (David Hildenbrand) [2229123] - virtio-mem: Paravirtualized memory hotplug (David Hildenbrand) [2229123] - Revert "drm/amd/display: edp do not add non-edid timings" (Jocelyn Falempe) [RHEL-845] - Revert "drm/amd/display: reallocate DET for dual displays with high pixel rate ratio" (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_modeset_probe (Jocelyn Falempe) [RHEL-845] - drm/client: Fix memory leak in drm_client_target_cloned (Jocelyn Falempe) [RHEL-845] - drm/atomic: Fix potential use-after-free in nonblocking commits (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane/speed switching for SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: share the code around SMU13 pcie parameters update (Jocelyn Falempe) [RHEL-845] - drm/ttm: Don't leak a resource on swapout move error (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: avoid restore process run into dead loop. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct `DMUB_FW_VERSION` macro (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix 128b132b link loss handling (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add a NULL pointer check (Jocelyn Falempe) [RHEL-845] - drm/amd: Disable PSR-SU on Parade 0803 TCON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix clearing mappings for BOs that are always valid in VM (Jocelyn Falempe) [RHEL-845] - drm/amd/display: disable seamless boot if force_odm_combine is enabled (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Remove Phantom Pipe Check When Calculating K1 and K2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix seamless odm transitions (Jocelyn Falempe) [RHEL-845] - drm/dp_mst: Clear MSG_RDY flag before sending new message (Jocelyn Falempe) [RHEL-845] - drm/atomic: Allow vblank-enabled + self-refresh "disable" (Jocelyn Falempe) [RHEL-845] - drm/amd/display: perform a bounds check before filling dirty rectangles (Jocelyn Falempe) [RHEL-845] - drm/nouveau: bring back blit subchannel for pre nv50 GPUs (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp/g94: enable HDMI (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: fix HDMI on gt215+ (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix one wrong caching mode enum usage (Jocelyn Falempe) [RHEL-845] - drm/i915: Don't preserve dpll_hw_state for slave crtc in Bigjoiner (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Fix auxiliary bus lifetime (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: Add connector_type for innolux_at043tn24 (Jocelyn Falempe) [RHEL-845] - drm/nouveau/acr: Abort loading ACR if no firmware was found (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for jpeg_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from jpeg instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move jpeg ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v4_0 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add RAS POISON interrupt funcs for vcn_v2_6 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: separate ras irq from vcn instance irq for UVD_POISON (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Move vcn ras block init to ras sw_init (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix usage of UMC fill record in RAS (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix memcpy() in sienna_cichlid_append_powerplay_table function. (Jocelyn Falempe) [RHEL-845] - amdgpu: validate offset_in_bo of drm_amdgpu_gem_va (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix possible division-by-zero errors (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix artifacting on eDP panels when engaging freesync video mode (Jocelyn Falempe) [RHEL-845] - drm/amdkfd: Fix potential deallocation of previously deallocated memory. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test dml32_rq_dlg_get_rq_reg() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Fix a test CalculatePrefetchSchedule() (Jocelyn Falempe) [RHEL-845] - drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable/disable flow to meet spec (Jocelyn Falempe) [RHEL-845] - drm/bridge: anx7625: Prevent endless probe loop (Jocelyn Falempe) [RHEL-845] - drm/nouveau: dispnv50: fix missing-prototypes warning (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358767: Switch to devm MIPI-DSI helpers (Jocelyn Falempe) [RHEL-845] - drm/vkms: Fix RGB565 pixel conversion (Jocelyn Falempe) [RHEL-845] - drm: Add fixed-point helper to get rounded integer values (Jocelyn Falempe) [RHEL-845] - drm/vkms: isolate pixel conversion functionality (Jocelyn Falempe) [RHEL-845] - drm/panel: sharp-ls043t1le01: adjust mode settings (Jocelyn Falempe) [RHEL-845] - drm/vram-helper: fix function names in vram helper doc (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TXTAGOCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix THS_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_TRAILCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix TCLK_ZEROCNT computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL target frequency (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: fix PLL parameters computation (Jocelyn Falempe) [RHEL-845] - drm/bridge: tc358768: always enable HS video mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi83: Fix enable error path (Jocelyn Falempe) [RHEL-845] - drm/bridge: it6505: Move a variable assignment behind a null pointer check in receive_timing_debugfs_show() (Jocelyn Falempe) [RHEL-845] - drm/i915/guc/slpc: Provide sysfs for efficient freq (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: More debug print updates - GuC SLPC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Explicitly specify update type per plane info change (Jocelyn Falempe) [RHEL-845] - radeon: avoid double free in ci_dpm_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix is_timing_changed() prototype (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add logging for display MALL refresh setting (Jocelyn Falempe) [RHEL-845] - drm: use mgr->dev in drm_dbg_kms in drm_dp_add_payload_part2 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Ensure vmin and vmax adjust for DCE (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Validate VM ioctl flags. (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Do not update DRR while BW optimizations pending (Jocelyn Falempe) [RHEL-845] - drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl (Jocelyn Falempe) [RHEL-845] - udmabuf: revert 'Add support for mapping hugepages (v4)' (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix the system hang while disable PSR (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Add wrapper to call planes and stream update (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use dc_update_planes_and_stream (Jocelyn Falempe) [RHEL-845] - drm/nouveau: add nv_encoder pointer check for NULL (Jocelyn Falempe) [RHEL-845] - drm/nouveau/dp: check for NULL nv_connector->native_mode (Jocelyn Falempe) [RHEL-845] - drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow (Jocelyn Falempe) [RHEL-845] - drm/nouveau: don't detect DSM for non-NVIDIA device (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Modify indirect buffer packages for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Implement gfx9 patch functions for resubmission (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Program gds backup address as zero if no gds allocated (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Reset CP_VMID_PREEMPT after trailing fence signaled (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: add missing radeon secondary PCI ID (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: workaround for compute workload type on some skus (Jocelyn Falempe) [RHEL-845] - drm/amd: Tighten permissions on VBIOS flashing attributes (Jocelyn Falempe) [RHEL-845] - drm/amd: Make sure image is written to trigger VBIOS image update flow (Jocelyn Falempe) [RHEL-845] - drm/amd/display: edp do not add non-edid timings (Jocelyn Falempe) [RHEL-845] - drm/amd/display: limit DPIA link rate to HBR3 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1 (Jocelyn Falempe) [RHEL-845] - Revert "drm/amdgpu: remove TOPDOWN flags when allocating VRAM in large bar system" (Jocelyn Falempe) [RHEL-845] - drm:amd:amdgpu: Fix missing buffer object unlock in failure path (Jocelyn Falempe) [RHEL-845] - drm: panel-orientation-quirks: Change Air's quirk to support Air Plus (Jocelyn Falempe) [RHEL-845] - drm/amd/display: add ODM case when looking for first split pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Reduce sdp bw after urgent to 90% (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix power context allocation in SMU13 (Jocelyn Falempe) [RHEL-845] - drm/amd: Disallow s0ix without BIOS support again (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: change reserved vram info print (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix xclk freq on CHIP_STONEY (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: conditionally disable pcie lane switching for some sienna_cichlid SKUs (Jocelyn Falempe) [RHEL-845] - drm/i915/gt: Use the correct error value when kernel_context() fails (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: fix Null pointer dereference error in amdgpu_device_recover_vram (Jocelyn Falempe) [RHEL-845] - drm/i915/selftests: Add some missing error propagation (Jocelyn Falempe) [RHEL-845] - drm/i915: Use 18 fast wake AUX sync len (Jocelyn Falempe) [RHEL-845] - drm/i915: Explain the magic numbers for AUX SYNC/precharge length (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for renoir (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for yellow carp (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5 (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: resolve reboot exception for si oland (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for vangogh (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: reverse mclk and fclk clocks levels for SMU v13.0.4 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: enable tmz by default for GC 11.0.1 (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Only wait for blank completion if OTG active (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: skip disabling fence driver src_irqs when device is unplugged (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: set gfx9 onwards APU atomics support to be true (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/nv: update VCN 3 max HEVC encoding resolution (Jocelyn Falempe) [RHEL-845] - drm/ast: Fix ARM compatibility (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Use the default reset when loading or reloading the driver (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fix memleak in aconnector->timing_requested (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: release gpu full access after "amdgpu_device_ip_late_init" (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix PIPEDMC disabling for a bigjoiner configuration (Jocelyn Falempe) [RHEL-845] - drm/i915: Disable DPLLs before disconnecting the TC PHY (Jocelyn Falempe) [RHEL-845] - drm/i915: Move shared DPLL disabling into CRTC disable hook (Jocelyn Falempe) [RHEL-845] - drm: fix drmm_mutex_init() (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: limit one queue per gang (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: Fix output of pp_od_clk_voltage (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: add missing NotifyPowerSource message mapping for SMU13.0.7 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: don't enable secure display on incompatible platforms (Jocelyn Falempe) [RHEL-845] - drm/radeon: reintroduce radeon_dp_work_func content (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Have Payload Properly Created After Resume (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: reserve the old gc_11_0_*_mes.bin (Jocelyn Falempe) [RHEL-845] - drm/amd/amdgpu: introduce gc_*_mes_2.bin v2 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: update gpu_clock_counter logic (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: refine get gpu clock counter method (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx11: Adjust gfxoff before powergating on gfx11 as well (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gfx10: Disable gfxoff before disabling powergating. (Jocelyn Falempe) [RHEL-845] - drm/amdgpu/gmc11: implement get_vbios_fb_size() (Jocelyn Falempe) [RHEL-845] - drm/amd/pm: fix possible power mode mismatch between driver and PMFW (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Enable IH retry CAM on GFX9 (Jocelyn Falempe) [RHEL-845] - drm/amdgpu: Fix sdma v4 sw fini error (Jocelyn Falempe) [RHEL-845] - drm/amd: Fix an out of bounds error in BIOS parser (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to follow HW SPEC (Jocelyn Falempe) [RHEL-845] - drm/amd/display: fixed dcn30+ underflow issue (Jocelyn Falempe) [RHEL-845] - drm/amd/display: reallocate DET for dual displays with high pixel rate ratio (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Use DC_LOG_DC in the trasform pixel function (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Enable HostVM based on rIOMMU active (Jocelyn Falempe) [RHEL-845] - drm/amd/display: enable DPG when disabling plane for phantom pipe (Jocelyn Falempe) [RHEL-845] - drm/amd/display: Correct DML calculation to align HW formula (Jocelyn Falempe) [RHEL-845] - drm/amd/display: populate subvp cmd info only for the top pipe (Jocelyn Falempe) [RHEL-845] - drm/displayid: add displayid_get_header() and check bounds better (Jocelyn Falempe) [RHEL-845] - drm/i915: taint kernel when force probing unsupported devices (Jocelyn Falempe) [RHEL-845] - drm/i915/dp: prevent potential div-by-zero (Jocelyn Falempe) [RHEL-845] - drm/i915: Fix NULL ptr deref by checking new_crtc_state (Jocelyn Falempe) [RHEL-845] - drm/i915/guc: Don't capture Gen8 regs on Xe devices (Jocelyn Falempe) [RHEL-845] - drm/sched: Check scheduler work queue before calling timeout handling (Jocelyn Falempe) [RHEL-845] - drm/mipi-dsi: Set the fwnode for mipi_dsi_device (Jocelyn Falempe) [RHEL-845] - drm/nouveau/disp: More DP_RECEIVER_CAP_SIZE array fixes (Jocelyn Falempe) [RHEL-845] - drm/dsc: fix DP_DSC_MAX_BPP_DELTA_* macro values (Jocelyn Falempe) [RHEL-845] - drm/fbdev-generic: prohibit potential out-of-bounds access (Jocelyn Falempe) [RHEL-845]- [rt] build kernel-rt-4.18.0-510.rt7.299.el8 [2180997] - locking: 8.9 KRTS JiraReadiness exercise (John B. Wyatt IV) [RHEL-982] - x86/show_trace_log_lvl: Ensure stack pointer is aligned, again (Oleg Nesterov) [2188093] - ahci: Add support for Dell S140 and later controllers (Tomas Henzl) [2222879] - s390/time: steer clocksource on STP syncs for CLOCK_MONOTONIC (Tobias Huschle) [2177649] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Wander Lairson Costa) [2216152] {CVE-2023-35825} - scsi: zfcp: Defer fc_rport blocking until after ADISC response (Tobias Huschle) [2230241] - RDMA/efa: Add EFA 0xefa2 PCI ID (Izabela Bakollari) [2170086] - RDMA/efa: Support CQ receive entries with source GID (Izabela Bakollari) [2170086] - Revert "isystem: ship and use stdarg.h" (Jocelyn Falempe) [2229185] - drm/drm_print: Use system include for (Jocelyn Falempe) [2229185] - x86/mm: Do not shuffle CPU entry areas without KASLR (Rafael Aquini) [2165932] {CVE-2023-0597} - x86/mm: Randomize per-cpu entry area (Rafael Aquini) [2165932] {CVE-2023-0597} - x86/kasan: Map shadow for percpu pages on demand (Rafael Aquini) [2165932] {CVE-2023-0597} - x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make the CPU_ENTRY_AREA_PAGES assert precise (Rafael Aquini) [2165932] {CVE-2023-0597}- [rt] build kernel-rt-4.18.0-509.rt7.298.el8 [2180997] - cifs: fix for following DFS links where sharename is the same as prepath (Ronnie Sahlberg) [2130474] - crypto: rng - Fix lock imbalance in crypto_del_rng (Herbert Xu) [2229700] - ibmvnic: Do not reset dql stats on NON_FATAL err (Mamatha Inamdar) [2227904] - mptcp: Correct the sock::sk_lock.owned lockdep annotations (Felix Maurer) [2228890] - gpio: name PCA953x gpio chips after device name (Steve Best) [2226775] - scsi: storvsc: Handle SRB status value 0x30 (Cathy Avery) [2218133] - netfilter: nft_set_pipapo: fix improper element removal (Phil Sutter) [2225276] {CVE-2023-4004} - macvlan: add forgotten nla_policy for IFLA_MACVLAN_BC_CUTOFF (Xin Long) [2226791] - tcp: Reduce chance of collisions in inet6_hashfn(). (Felix Maurer) [2176120] {CVE-2023-1206} - ipv6: fix locking issues with loops over idev->addr_list (Jiri Benc) [2123305] - relayfs: fix out-of-bounds access in relay_file_read (Bill O'Donnell) [2215511] {CVE-2023-3268} - kernel/relay.c: fix read_pos error when multiple readers (Bill O'Donnell) [2215510] - seq_buf: Make trace_seq_putmem_hex() support data longer than 8 (Ricardo Robaina) [2212207] {CVE-2023-28772} - seq_buf: Fix overflow in seq_buf_putmem_hex() (Ricardo Robaina) [2212207] {CVE-2023-28772} - tools/power/x86/intel-speed-select: Support more than 8 sockets. (Frank Ramsay) [2212508] - platform/x86: ISST: Remove 8 socket limit (Frank Ramsay) [2212508] - media: saa7134: fix use after free bug in saa7134_finidev due to race condition (Wander Lairson Costa) [2216140] {CVE-2023-35823} - Bluetooth: btmtksdio: fix possible FW initialization failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix the reset takes too long (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: mask out interrupt status (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add two more Bluetooth parts for WCN6855 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add protocol for MediaTek bluetooth devices(MT7922) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn MT7922A (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: Fix kernel oops when sdio suspend. (David Marlin) [2142489 2144730 2145097] - Enable MTK BT Support for RHEL (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add a new PID/VID 13d3/3567 for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: support bluetooth reset mechanism (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix btmtksdio_[drv|fw]_pmctrl() (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: refactor btmtksdio_runtime_[suspend|resume]() (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix bus hang with wrong privilege (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: fix firmware coredump retrieve (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Enable SCO over I2S (David Marlin) [2142489 2144730 2145097] - Bluetooth: mt7921s: Support wake on bluetooth (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: rename btsdio_mtk_reg_read (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable AOSP extension for MT7921 (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: enable msft opcode (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: fix resume failure (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: handle runtime pm only when sdio_func is available (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: drop the unnecessary variable created (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add support of processing firmware coredump and log (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add MT7921s Bluetooth support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: transmit packet according to status TX_EMPTY (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: use register CRPLR to read packet length (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: update register CSDIOCSR operation (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: move interrupt service to work (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: explicitly set WHISR as write-1-clear (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksdio: add .set_bdaddr support (David Marlin) [2142489 2144730 2145097] - Bluetooth: btmtksido: rely on BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: mediatek: add BT_MTK module (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support public address configuration for MediaTek Chip. (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Support Bluetooth Reset for Mediatek Chip(MT7921) (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: Add support for Foxconn Mediatek Chip (David Marlin) [2142489 2144730 2145097] - Bluetooth: btusb: fix blacklist_table context (David Marlin) [2142489 2144730 2145097]- [rt] build kernel-rt-4.18.0-508.rt7.297.el8 [2180997] - HID: betop: check shape of output reports (Desnes Nunes) [2212166] {CVE-2023-1073} - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb() (Desnes Nunes) [2153577] {CVE-2022-45887} - selinux: make labeled NFS work when mounted before policy load (Juraj Marcin) [1753646] - Revert "xfs: expose the blockgc workqueue knobs publicly" (Bill O'Donnell) [2223260] - media: dm1105: Fix use after free bug in dm1105_remove due to race condition (Dean Nelson) [2216148] {CVE-2023-35824} - media: dvb-core: Fix kernel WARNING for blocking operation in wait_event*() (Dean Nelson) [2213141] {CVE-2023-31084} - drm/ast: report connection status on Display Port. (Jocelyn Falempe) [2189645] - drm/ast: Add BMC virtual connector (Jocelyn Falempe) [2189645] - x86/cpu/amd: Add a Zenbleed fix (Waiman Long) [2226837] {CVE-2023-20593} - x86/cpu/amd: Move the errata checking functionality up (Waiman Long) [2226837] {CVE-2023-20593} - x86/amd: Cache debug register values in percpu variables (Waiman Long) [2226837] {CVE-2023-20593} - x86/cpu: Restore AMD's DE_CFG MSR after resume (Waiman Long) [2226837] {CVE-2023-20593} - x86/sev: Change snp_guest_issue_request()'s fw_err argument (John Allen) [2216284] - virt/coco/sev-guest: Double-buffer messages (John Allen) [2216284] - virt/coco/sev-guest: Add throttling awareness (John Allen) [2216284] - virt/coco/sev-guest: Convert the sw_exit_info_2 checking to a switch-case (John Allen) [2216284] - virt/coco/sev-guest: Do some code style cleanups (John Allen) [2216284] - virt/coco/sev-guest: Carve out the request issuing logic into a helper (John Allen) [2216284] - virt/coco/sev-guest: Remove the disable_vmpck label in handle_guest_request() (John Allen) [2216284] - virt/coco/sev-guest: Simplify extended guest request handling (John Allen) [2216284] - virt/coco/sev-guest: Check SEV_SNP attribute at probe time (John Allen) [2216284] - virt/sev-guest: Return -EIO if certificate buffer is not large enough (John Allen) [2216284] - x86/sev: Mark snp_abort() noreturn (John Allen) [2216284] - s390/uv: Update query for secret-UVCs (Cédric Le Goater) [2111749] - s390/uv: replace scnprintf with sysfs_emit (Cédric Le Goater) [2111749] - s390: Add attestation query information (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Lock Secret Store' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'List Secrets' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add 'Add Secret' UVC (Cédric Le Goater) [2111749] - s390/uvdevice: Add info IOCTL (Cédric Le Goater) [2111749] - s390/uv: Always export uv_info (Cédric Le Goater) [2111749] - s390/kasan: support protvirt with 4-level paging (Cédric Le Goater) [2111749] - s390/protvirt: support ultravisor without secure storage limit (Cédric Le Goater) [2111749] - s390/protvirt: parse prot_virt option in the decompressor (Cédric Le Goater) [2111749] - s390/mm: avoid trimming to MAX_ORDER (Cédric Le Goater) [2111749] - net/mlx5e: TC, CT: Offload ct clear only once (Amir Tzin) [2159233] - net/mlx5: DR, Fix wrong action data allocation in decap action (Amir Tzin) [2159233] - net/mlx5: DR, Support SW created encap actions for FW table (Amir Tzin) [2159233] - net/mlx5e: TC, Cleanup ct resources for nic flow (Amir Tzin) [2159233] - net/mlx5e: TC, Add null pointer check for hardware miss support (Amir Tzin) [2159233] - RDMA/mlx5: Fix affinity assignment (Amir Tzin) [2159233] - RDMA/mlx5: Create an indirect flow table for steering anchor (Amir Tzin) [2159233] - RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions (Amir Tzin) [2159233] - net/mlx5: DR, Add missing mutex init/destroy in pattern manager (Amir Tzin) [2117777] - net/mlx5: Read embedded cpu after init bit cleared (Amir Tzin) [2159233] - net/mlx5e: Fix error handling in mlx5e_refresh_tirs (Amir Tzin) [2159233] - net/mlx5e: Don't attach netdev profile while handling internal error (Amir Tzin) [2159233] - net/mlx5: Fix post parse infra to only parse every action once (Amir Tzin) [2159233] - net/mlx5: fw_tracer, Fix event handling (Amir Tzin) [2159233] - net/mlx5: SF, Drain health before removing device (Amir Tzin) [2159233] - net/mlx5e: Consider internal buffers size in port buffer calculations (Amir Tzin) [2159233] - net/mlx5e: Prevent encap offload when neigh update is running (Amir Tzin) [2159233] - net/mlx5e: Extract remaining tunnel encap code to dedicated file (Amir Tzin) [2159233] - net/mlx5e: TC, Remove sample and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove mirror and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove tuple rewrite and ct limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove multiple ct actions limitation (Amir Tzin) [2159233] - net/mlx5e: TC, Remove special handling of CT action (Amir Tzin) [2159233] - net/mlx5e: TC, Remove CT action reordering (Amir Tzin) [2159233] - net/mlx5e: CT: Use per action stats (Amir Tzin) [2159233] - net/mlx5e: TC, Move main flow attribute cleanup to helper func (Amir Tzin) [2159233] - net/mlx5e: TC, Remove unused vf_tun variable (Amir Tzin) [2159233] - net/mlx5e: Set default can_offload action (Amir Tzin) [2159233] - net/mlx5: Devcom, serialize devcom registration (Amir Tzin) [2159233] - net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device (Amir Tzin) [2159233] - net/mlx5e: Fix SQ wake logic in ptp napi_poll context (Amir Tzin) [2159233] - net/mlx5e: Fix deadlock in tc route query code (Amir Tzin) [2159233] - net/mlx5: Fix error message when failing to allocate device memory (Amir Tzin) [2159233] - net/mlx5e: Use correct encap attribute during invalidation (Amir Tzin) [2159233] - net/mlx5: DR, Check force-loopback RC QP capability independently from RoCE (Amir Tzin) [2159233] - net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs (Amir Tzin) [2159233] - net/mlx5: Handle pairing of E-switch via uplink un/load APIs (Amir Tzin) [2159233] - net/mlx5: Collect command failures data only for known commands (Amir Tzin) [2159233] - net/mlx5e: do as little as possible in napi poll when budget is 0 (Amir Tzin) [2159233] - net/mlx5: Use recovery timeout on sync reset flow (Amir Tzin) [2159233] - net/mlx5: DR, Add memory statistics for domain object (Amir Tzin) [2117777] - net/mlx5: DR, Add more info in domain dbg dump (Amir Tzin) [2117777] - net/mlx5: DR, Calculate sync threshold of each pool according to its type (Amir Tzin) [2117777] - net/mlx5: DR, Fix dumping of legacy modify_hdr in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Enable patterns and arguments for supporting devices (Amir Tzin) [2117777] - net/mlx5: DR, Add support for the pattern/arg parameters in debug dump (Amir Tzin) [2117777] - net/mlx5: DR, Modify header action of size 1 optimization (Amir Tzin) [2117777] - net/mlx5: DR, Support decap L3 action using pattern / arg mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Apply new accelerated modify action and decapl3 (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header argument pointer to actions attributes (Amir Tzin) [2117777] - net/mlx5: DR, Add modify header arg pool mechanism (Amir Tzin) [2117777] - net/mlx5: DR, Fix QP continuous allocation (Amir Tzin) [2117777] - net/mlx5: DR, Read ICM memory into dedicated buffer (Amir Tzin) [2117777] - net/mlx5: DR, Add support for writing modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Add create/destroy for modify-header-argument general object (Amir Tzin) [2117777] - net/mlx5: DR, Check for modify_header_argument device capabilities (Amir Tzin) [2117777] - net/mlx5: DR, Split chunk allocation to HW-dependent ways (Amir Tzin) [2117777] - net/mlx5: DR, Add cache for modify header pattern (Amir Tzin) [2117777] - net/mlx5: DR, Move ACTION_CACHE_LINE_SIZE macro to header (Amir Tzin) [2117777] - net/mlx5: DR, Add modify-header-pattern ICM pool (Amir Tzin) [2117777] - net/mlx5: DR, Prepare sending new WQE type (Amir Tzin) [2117777] - net/mlx5: Add new WQE for updating flow table (Amir Tzin) [2117777] - net/mlx5: Add mlx5_ifc bits for modify header argument (Amir Tzin) [2117777] - net/mlx5: DR, Set counter ID on the last STE for STEv1 TX (Amir Tzin) [2117777] - net/mlx5e: TC, Remove redundant parse_attr argument (Amir Tzin) [2165908] - net/mlx5e: Use a simpler comparison for uplink rep (Amir Tzin) [2165908] - net/mlx5: Lag, Add single RDMA device in multiport mode (Amir Tzin) [2165908] - net/mlx5: Lag, set different uplink vport metadata in multiport eswitch mode (Amir Tzin) [2165908] - net/mlx5: E-Switch, rename bond update function to be reused (Amir Tzin) [2165908] - net/mlx5e: TC, Add peer flow in mpesw mode (Amir Tzin) [2165908] - net/mlx5: Lag, Control MultiPort E-Switch single FDB mode (Amir Tzin) [2165908] - net/mlx5e: Add devlink fdb_large_groups parameter (Add missing Documentation) (Amir Tzin) [2165908] - SUNRPC: Fix READ_PLUS crasher (Benjamin Coddington) [2218539] - SUNRPC: Remove pointer type casts from xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - SUNRPC: Clean up xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2218539] - NFSv4.2: fix wrong shrinker_id (Benjamin Coddington) [2218539] - svcrdma: Prevent page release when nothing was received (Benjamin Coddington) [2218539] - SUNRPC: Fix UAF in svc_tcp_listen_data_ready() (Benjamin Coddington) [2218539] - nfsd: fix double fget() bug in __write_ports_addfd() (Benjamin Coddington) [2218539] - SUNRPC: Fix trace_svc_register() call site (Benjamin Coddington) [2218539] - SUNRPC: remove the maximum number of retries in call_bind_status (Benjamin Coddington) [2218539] - NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease (Benjamin Coddington) [2218539] - NFSD: callback request does not use correct credential for AUTH_SYS (Benjamin Coddington) [2218539] - sunrpc: only free unix grouplist after RCU settles (Benjamin Coddington) [2218539] - nfsd: call op_release, even when op_func returns an error (Benjamin Coddington) [2218539] - NFSD: Avoid calling OPDESC() with ops->opnum == OP_ILLEGAL (Benjamin Coddington) [2218539] - SUNRPC: fix shutdown of NFS TCP client socket (Benjamin Coddington) [2218539] - NFSv4: Fix hangs when recovering open state after a server reboot (Benjamin Coddington) [2218539] - NFSD: Protect against filesystem freezing (Benjamin Coddington) [2218539] - nfsd: fix race to check ls_layouts (Benjamin Coddington) [2218539] - nfs4trace: fix state manager flag printing (Benjamin Coddington) [2218539] - SUNRPC: ensure the matching upcall is in-flight upon downcall (Benjamin Coddington) [2218539] - nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure (Benjamin Coddington) [2218539] - SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails (Benjamin Coddington) [2218539] - NFSv4.x: Fail client initialisation if state manager thread can't run (Benjamin Coddington) [2218539] - SUNRPC: Fix missing release socket in rpc_sockname() (Benjamin Coddington) [2218539] - xprtrdma: Fix regbuf data not freed in rpcrdma_req_create() (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv3 GETACL result encoder (Benjamin Coddington) [2218539] - NFSD: Finish converting the NFSv2 GETACL result encoder (Benjamin Coddington) [2218539] - SUNRPC: Return true/false (not 1/0) from bool functions (Benjamin Coddington) [2218539] - NFS: Fix an Oops in nfs_d_automount() (Benjamin Coddington) [2218539] - NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn (Benjamin Coddington) [2218539] - NFSv4: Fix a credential leak in _nfs4_discover_trunking() (Benjamin Coddington) [2218539] - NFSv4.2: Fix initialisation of struct nfs4_label (Benjamin Coddington) [2218539] - NFSv4.2: Fix a memory stomp in decode_attr_security_label (Benjamin Coddington) [2218539] - NFSv4.2: Always decode the security label (Benjamin Coddington) [2218539] - NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding (Benjamin Coddington) [2218539] - nfs4: Fix kmemleak when allocate slot failed (Benjamin Coddington) [2218539] - NFSv4.2: Fixup CLONE dest file size for zero-length count (Benjamin Coddington) [2218539] - SUNRPC: Fix null-ptr-deref when xps sysfs alloc failed (Benjamin Coddington) [2218539] - NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot (Benjamin Coddington) [2218539] - NFSv4.1: Handle RECLAIM_COMPLETE trunking errors (Benjamin Coddington) [2218539] - NFSv4: Fix a potential state reclaim deadlock (Benjamin Coddington) [2218539] - NFSv4/pNFS: Always return layout stats on layout return for flexfiles (Benjamin Coddington) [2218539] - NFSD: Fix handling of oversized NFSv4 COMPOUND requests (Benjamin Coddington) [2218539] - nfsd: Fix a memory leak in an error handling path (Benjamin Coddington) [2218539] - Revert "SUNRPC: Remove unreachable error condition" (Benjamin Coddington) [2218539] - NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0 (Benjamin Coddington) [2218539] - SUNRPC: RPC level errors should set task->tk_rpc_status (Benjamin Coddington) [2218539] - NFS: Fix another fsync() issue after a server reboot (Benjamin Coddington) [2218539] - net/sunrpc: fix potential memory leaks in rpc_sysfs_xprt_state_change() (Benjamin Coddington) [2218539] - SUNRPC: Fix xdr_encode_bool() (Benjamin Coddington) [2218539] - SUNRPC: Reinitialise the backchannel request buffers before reuse (Benjamin Coddington) [2218539] - NFSv4.1: RECLAIM_COMPLETE must handle EACCES (Benjamin Coddington) [2218539] - sunrpc: fix expiry of auth creds (Benjamin Coddington) [2218539] - pNFS/flexfiles: Report RDMA connection errors to the server (Benjamin Coddington) [2218539] - Revert "pNFS: nfs3_set_ds_client should set NFS_CS_NOPING" (Benjamin Coddington) [2218539] - SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer() (Benjamin Coddington) [2218539] - pNFS: Avoid a live lock condition in pnfs_update_layout() (Benjamin Coddington) [2218539] - pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE (Benjamin Coddington) [2218539] - SUNRPC: Trap RDMA segment overflows (Benjamin Coddington) [2218539] - nfsd: Fix null-ptr-deref in nfsd_fill_super() (Benjamin Coddington) [2218539] - NFS: Further fixes to the writeback error handling (Benjamin Coddington) [2218539] - NFS: clean up a needless assignment in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: remove redundant code in nfs_file_write() (Benjamin Coddington) [2218539] - NFS: Add support for eager writes (Benjamin Coddington) [2218539] - NFS: 'flags' field should be unsigned in struct nfs_server (Benjamin Coddington) [2218539] - NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout (Benjamin Coddington) [2218539] - NFS: Memory allocation failures are not server fatal errors (Benjamin Coddington) [2218539] - SUNRPC: Ensure that the gssproxy client can start in a connected state (Benjamin Coddington) [2218539] - Revert "SUNRPC: Ensure gss-proxy connects on setup" (Benjamin Coddington) [2218539] - SUNRPC: Ensure gss-proxy connects on setup (Benjamin Coddington) [2218539] - NFSv4: Don't invalidate inode attributes on delegation return (Benjamin Coddington) [2218539] - SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec() (Benjamin Coddington) [2218539] - SUNRPC: Handle low memory situations in call_status() (Benjamin Coddington) [2218539] - SUNRPC: Handle ENOMEM in call_transmit_status() (Benjamin Coddington) [2218539] - SUNRPC: Fix the svc_deferred_event trace class (Benjamin Coddington) [2218539] - NFSv4: fix open failure with O_ACCMODE flag (Benjamin Coddington) [2218539] - NFSv4/pNFS: Fix another issue with a list iterator pointing to the head (Benjamin Coddington) [2218539] - NFSv4.1: Fix uninitialised variable in devicenotify (Benjamin Coddington) [2218539] - NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error (Benjamin Coddington) [2218539] - NFS: remove unneeded check in decode_devicenotify_args() (Benjamin Coddington) [2218539] - NFS: NFSv2/v3 clients should never be setting NFS_CAP_XATTR (Benjamin Coddington) [2218539] - NFS: Do not report writeback errors in nfs_getattr() (Benjamin Coddington) [2218539] - NFS: Remove an incorrect revalidation in nfs4_update_changeattr_locked() (Benjamin Coddington) [2218539] - nfsd: nfsd4_setclientid_confirm mistakenly expires confirmed client. (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in svcsock_accept_class trace points (Benjamin Coddington) [2218539] - SUNRPC: Fix sockaddr handling in the svc_xprt_create_error trace point (Benjamin Coddington) [2218539] - NFSD: Fix zero-length NFSv3 WRITEs (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before renaming (Benjamin Coddington) [2218539] - NFS: Ensure the server has an up to date ctime before hardlinking (Benjamin Coddington) [2218539]- [rt] build kernel-rt-4.18.0-507.rt7.296.el8 [2180997] - Revert "NFSv4: Retry LOCK on OLD_STATEID during delegation return" (Benjamin Coddington) [2217658] - powerpc/pseries/vas: Hold mmap_mutex after mmap lock during window close (Mamatha Inamdar) [2224883] - KVM: x86/mmu: Fix race condition in direct_page_fault (Jon Maloy) [2179931] {CVE-2022-45869} - x86/speculation: Allow enabling STIBP with legacy IBRS (Ricardo Robaina) [2187266] {CVE-2023-1998} - ACPI: sleep: Avoid breaking S3 wakeup due to might_sleep() (Mark Langsdorf) [2215625] - locking/semaphore: Add might_sleep() to down_*() family (Mark Langsdorf) [2215625] - perf stat: Support hybrid --topdown option (Michael Petlan) [2088833] - i40e: Wait for pending VF reset in VF set callbacks (Ivan Vecera) [2203921] - i40e: Add helper for VF inited state check with timeout (Ivan Vecera) [2203921] - tracing: Have filter accept "common_cpu" to be consistent (Jerome Marchand) [2210711] - tracing/histogram: Fix sorting on old "cpu" value (Jerome Marchand) [2210711] - tracing: Dump stacktrace trigger to the corresponding instance (Jerome Marchand) [2210711] - tracing/histogram: Rename "cpu" to "common_cpu" (Jerome Marchand) [2210711] - docs: histogram.txt: convert it to ReST file format (Jerome Marchand) [2210711] - bonding: add software tx timestamping support (Hangbin Liu) [2181339] - bonding: fix missed rcu protection (Hangbin Liu) [2181339] - bonding: use rcu_dereference_rtnl when get bonding active slave (Hangbin Liu) [2181339] - Bonding: return HWTSTAMP_FLAG_BONDED_PHC_INDEX to notify user space (Hangbin Liu) [2181339] - Bonding: force user to add HWTSTAMP_FLAG_BONDED_PHC_INDEX when get/set HWTSTAMP (Hangbin Liu) [2181339] - bond: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to active device (Hangbin Liu) [2181339] - compiler_attributes.h: Add kABI workaround (Waiman Long) [2215801] - linux/compiler-clang.h: define HAVE_BUILTIN_BSWAP* (Waiman Long) [2215801] - compiler.h: fix barrier_data() on clang (Waiman Long) [2215801] - compiler_types.h: Add __no_sanitize_{address,undefined} to noinstr (Waiman Long) [2215801] - x86, kcsan: Add __no_kcsan to noinstr (Waiman Long) [2215801] - kcsan: Add __no_kcsan function attribute (Waiman Long) [2215801] - kcsan: Reorganize compiler.h (Waiman Long) [2215801] - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR (Waiman Long) [2215801] - include/linux/compiler_types.h: don't pollute userspace with macro definitions (Waiman Long) [2215801] - include/linux/compiler*.h: define asm_volatile_goto (Waiman Long) [2215801] - Compiler Attributes: use feature checks instead of version checks (Waiman Long) [2215801] - Compiler Attributes: remove unneeded sparse (__CHECKER__) tests (Waiman Long) [2215801] - Compiler Attributes: homogenize __must_be_array (Waiman Long) [2215801] - Compiler Attributes: remove unneeded tests (Waiman Long) [2215801] - Compiler Attributes: always use the extra-underscores syntax (Waiman Long) [2215801] - Compiler Attributes: remove unused attributes (Waiman Long) [2215801] - Compiler Attributes: naked can be shared (Waiman Long) [2215801] - Compiler Attributes: naked was fixed in gcc 4.6 (Waiman Long) [2215801] - include/linux/compiler*.h: make compiler-*.h mutually exclusive (Waiman Long) [2215801] - Raise the minimum required gcc version to 4.6 (Waiman Long) [2215801] - deprecate the '__deprecated' attribute warnings entirely and for good (Waiman Long) [2215801]- [rt] build kernel-rt-4.18.0-506.rt7.295.el8 [2180997] - kernel-rt: config: adjust CONFIG_LOCKDEP_CHAINS_BITS (John B. Wyatt IV) [2193452] - libceph: harden msgr2.1 frame segment length checks (Ilya Dryomov) [2222256] - netfilter: nf_conntrack_netlink: need to hold rcu readlock when doing l4proto lookup (Florian Westphal) [2188230] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2223198] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2223198] - igbvf: add PCI reset handler functions (Corinna Vinschen) [2153365] - igbvf: Regard vf reset nack as success (Corinna Vinschen) [2153365] - intel/igbvf: free irq on the error path in igbvf_request_msix() (Corinna Vinschen) [2153365] - Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp} (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix build errors in some archs (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (Ricardo Robaina) [2139618] {CVE-2022-3640} - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put (Ricardo Robaina) [2139618] {CVE-2022-3640} - iavf: fix reset task race with iavf_remove() (Petr Oros) [2223604] - iavf: fix a deadlock caused by rtnl and driver's lock circular dependencies (Petr Oros) [2223604] - Revert "iavf: Do not restart Tx queues after reset task failure" (Petr Oros) [2223604] - Revert "iavf: Detach device during reset task" (Petr Oros) [2223604] - iavf: Wait for reset in callbacks which trigger it (Petr Oros) [2223604] - iavf: use internal state to free traffic IRQs (Petr Oros) [2223604] - iavf: Fix out-of-bounds when setting channels on remove (Petr Oros) [2223604] - iavf: Fix use-after-free in free_netdev (Petr Oros) [2223604] - iavf: make functions static where possible (Petr Oros) [2223604] - iavf: fix err handling for MAC replace (Petr Oros) [2223604] - iavf: remove some unused functions and pointless wrappers (Petr Oros) [2223604] - iavf: remove mask from iavf_irq_enable_queues() (Petr Oros) [2223604] - iavf: send VLAN offloading caps once after VFR (Petr Oros) [2223604] - cpufreq: Fix parameter in parse_perf_domain() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: remove MODULE_LICENSE in non-modules (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Adjust balance_performance EPP for Sapphire Rapids (Mark Langsdorf) [2181273] - cpufreq: Make kobj_type structure constant (Mark Langsdorf) [2181273] - driver core: make kobj_type constant. (Mark Langsdorf) [2181273] - cpufreq: Make cpufreq_unregister_driver() return void (Mark Langsdorf) [2181273] - drivers/cpufreq: Remove "select SRCU" (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Drop ACPI _PSS states table patching (Mark Langsdorf) [2181273] - cpufreq: stats: Convert to use sysfs_emit_at() API (Mark Langsdorf) [2181273] - cpufreq: Init completion before kobject_init_and_add() (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Allow EPP 0x80 setting by the firmware (Mark Langsdorf) [2181273] - cpufreq: ACPI: Use str_enabled_disabled() helper (Mark Langsdorf) [2181273] - cpufreq: Generalize of_perf_domain_get_sharing_cpumask phandle format (Mark Langsdorf) [2181273] - cpufreq: Add of_perf_domain_get_sharing_cpumask (Mark Langsdorf) [2181273] - cpufreq: intel_pstate: Read all MSRs on the target CPU (Mark Langsdorf) [2181273] - ACPI: CPPC: Add ACPI disabled check to acpi_cpc_valid() (Mark Langsdorf) [2181273] - mm/page_alloc: fix incorrect PGFREE and PGALLOC for high-order page (Chris von Recklinghausen) [2100592] - mm/page_alloc: check high-order pages for corruption during PCP operations (Chris von Recklinghausen) [2100592] - mm/page_alloc: do not prefetch buddies during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: free pages in a single pass during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: drain the requested list first during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: simplify how many pages are selected per pcp list during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: track range of active PCP lists during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: fetch the correct pcp buddy during bulk free (Chris von Recklinghausen) [2100592] - mm/page_alloc: allow high-order pages to be stored on the per-cpu lists (Chris von Recklinghausen) [2100592] - mm/page_alloc: move free_the_page (Chris von Recklinghausen) [2100592] - mm,memory_hotplug: factor out adjusting present pages into adjust_present_page_count() (Chris von Recklinghausen) [2100592] - mm, meminit: recalculate pcpu batch and high limits after init completes (Chris von Recklinghausen) [2100592] - [rt] Revert "Split IRQ-off and zone->lock while freeing pages from PCP list #1" (Chris White) [2225324] - [rt] Revert " Split IRQ-off and zone->lock while freeing pages from PCP list #2" (Chris White) [2225324]- [rt] build kernel-rt-4.18.0-505.rt7.294.el8 [2180997] - gfs2: Don't deref jdesc in evict (Bob Peterson) [2214357] {CVE-2023-3212} - md/raid5: Don't do accounting for non-align read io (Nigel Croxon) [2183033] - powerpc: Don't select HAVE_IRQ_EXIT_ON_IRQ_STACK (Mamatha Inamdar) [2218348] - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION (Benjamin Coddington) [2217963] - proc: Use PIDTYPE_TGID in next_tgid (Brian Foster) [2047252] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214964] {CVE-2023-3390} - fanotify,audit: Allow audit to use the full permission event response (Richard Guy Briggs) [2055328] - fanotify: define struct members to hold response decision context (Richard Guy Briggs) [2055328] - fanotify: Ensure consistent variable type for response (Richard Guy Briggs) [2055328] - RDMA/mlx4: Prevent shift wrapping in set_user_sq_size() (Amir Tzin) [2166019] - RDMA/mlx: Calling qp event handler in workqueue context (mlx4 hunks only) (Amir Tzin) [2166019] - net/mlx4: small optimization in mlx4_en_xmit() (Amir Tzin) [2166019] - net/mlx4: rename two constants (Amir Tzin) [2166019] - RDMA/mlx4: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166019] - ptp: mlx4: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166019] - mlx4: Do type_clear() for devlink ports when type_set() was called previously (Amir Tzin) [2166019] - cgroup: Reorganize css_set_lock and kernfs path processing (Waiman Long) [2193485] - cgroup: Fix build failure when CONFIG_SHRINKER_DEBUG (Waiman Long) [2193485] - cgroup: fix missing cpus_read_{lock,unlock}() in cgroup_transfer_tasks() (Waiman Long) [2193485] - cgroup: Make cgroup_get_from_id() prettier (Waiman Long) [2193485] - cgroup: remove obsolete comment on cgroup_on_dfl() (Waiman Long) [2193485] - cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach() (Waiman Long) [2193485] - kselftests: cgroup: update kmem test precision tolerance (Waiman Long) [2193485] - cgroup/cpuset: Improve cpuset_css_alloc() description (Waiman Long) [2193485] - selftests: cgroup: fix unsigned comparison with less than zero (Waiman Long) [2193485] - device_cgroup: Roll back to original exceptions after copy failure (Waiman Long) [2193485] - cgroup/cpuset: use hotplug_memory_notifier() directly (Waiman Long) [2193485] - mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled (Waiman Long) [2193485] - cgroup: cgroup_get_from_id() must check the looked-up kn is a directory (Waiman Long) [2193485] - sched/psi: Don't create cgroup PSI files when psi_disabled (Waiman Long) [2193485] - cgroup: Homogenize cgroup_get_from_id() return value (Waiman Long) [2193485] - cgroup: cgroup: Honor caller's cgroup NS when resolving cgroup id (Waiman Long) [2193485] - cgroup: Honor caller's cgroup NS when resolving path (Waiman Long) [2193485] - mm: memcontrol: introduce mem_cgroup_ino() and mem_cgroup_get_from_ino() (Waiman Long) [2193485] - cgroup: Use separate src/dst nodes when preloading css_sets for migration (Waiman Long) [2193485] - cgroup.c: add helper __cset_cgroup_from_root to cleanup duplicated codes (Waiman Long) [2193485] - cgroup/rstat: check updated_next only for root (Waiman Long) [2193485] - cgroup: rstat: explicitly put loop variant in while (Waiman Long) [2193485] - cgroup: return early if it is already on preloaded list (Waiman Long) [2193485] - cgroup: Trace event cgroup id fields should be u64 (Waiman Long) [2193485] - cgroup: fix a typo in comment (Waiman Long) [2193485] - hugetlb_cgroup: remove unused hugetlb_cgroup_from_counter macro (Waiman Long) [2193485] - cgroup: Make rebind_subsystems() disable v2 controllers all at once (Waiman Long) [2193485] - cgroup: Avoid compiler warnings with no subsystems (Waiman Long) [2193485] - cgroup: Fix kernel-doc (Waiman Long) [2193485] - kernfs: use 64bit inos if ino_t is 64bit (Waiman Long) [2193485] - kernfs: implement custom exportfs ops and fid type (Waiman Long) [2193485] - kernfs: combine ino/id lookup functions into kernfs_find_and_get_node_by_id() (Waiman Long) [2193485] - kernfs: kernfs_find_and_get_node_by_ino() should only look up activated nodes (Waiman Long) [2193485] - kernfs: use dumber locking for kernfs_find_and_get_node_by_ino() (Waiman Long) [2193485] - kernfs: fix ino wrap-around detection (Waiman Long) [2193485] - ice: prevent NULL pointer deref during reload (Petr Oros) [2153356] - ice: Unregister netdev and devlink_port only once (Petr Oros) [2153356] - ice: Fix ice module unload (Petr Oros) [2153356] - ice: Fix tx queue rate limit when TCs are configured (Petr Oros) [2153356] - ice: Fix max_rate check while configuring TX rate limits (Petr Oros) [2153356] - ice: Fix XDP memory leak when NIC is brought up and down (Petr Oros) [2153356] - ice: remove comment about not supporting driver reinit (Petr Oros) [2153356] - ice: block LAN in case of VF to VF offload (Petr Oros) [2153356] - ice: Fix stats after PF reset (Petr Oros) [2153356] - ice: Reset FDIR counter in FDIR init stage (Petr Oros) [2153356] - ice: fix wrong fallback logic for FDIR (Petr Oros) [2153356] - ice: add profile conflict check for AVF FDIR (Petr Oros) [2153356] - ice: Fix ice_cfg_rdma_fltr() to only update relevant fields (Petr Oros) [2153356] - ice: remove filters only if VSI is deleted (Petr Oros) [2153356] - ice: check if VF exists before mode check (Petr Oros) [2153356] - ice: xsk: disable txq irq before flushing hw (Petr Oros) [2153356] - ice: avoid bonding causing auxiliary plug/unplug under RTNL lock (Petr Oros) [2153356] - ethernet: ice: avoid gcc-9 integer overflow warning (Petr Oros) [2153356] - ice: don't ignore return codes in VSI related code (Petr Oros) [2153356] - ice: Fix DSCP PFC TLV creation (Petr Oros) [2153356] - ice: copy last block omitted in ice_get_module_eeprom() (Petr Oros) [2153356] - ice: properly alloc ICE_VSI_LB (Petr Oros) [2153356] - ice: xsk: Fix cleaning of XDP_TX frames (Petr Oros) [2153356] - ice: Mention CEE DCBX in code comment (Petr Oros) [2153356] - ice: Change ice_vsi_realloc_stat_arrays() to void (Petr Oros) [2153356] - ice: Add GPIO pin support for E823 products (Petr Oros) [2153356] - ice: switch: fix potential memleak in ice_add_adv_recipe() (Petr Oros) [2153356] - ice: Fix off by one in ice_tc_forward_to_queue() (Petr Oros) [2153356] - ice: Fix disabling Rx VLAN filtering with port VLAN enabled (Petr Oros) [2153356] - ice: fix out-of-bounds KASAN warning in virtchnl (Petr Oros) [2153356] - ice: Do not use WQ_MEM_RECLAIM flag for workqueue (Petr Oros) [2153356] - ice: remove unnecessary virtchnl_ether_addr struct use (Petr Oros) [2153356] - ice: introduce .irq_close VF operation (Petr Oros) [2153356] - ice: introduce clear_reset_state operation (Petr Oros) [2153356] - ice: convert vf_ops .vsi_rebuild to .create_vsi (Petr Oros) [2153356] - ice: introduce ice_vf_init_host_cfg function (Petr Oros) [2153356] - ice: add a function to initialize vf entry (Petr Oros) [2153356] - ice: Pull common tasks into ice_vf_post_vsi_rebuild (Petr Oros) [2153356] - ice: move ice_vf_vsi_release into ice_vf_lib.c (Petr Oros) [2153356] - ice: move vsi_type assignment from ice_vsi_alloc to ice_vsi_cfg (Petr Oros) [2153356] - ice: refactor VSI setup to use parameter structure (Petr Oros) [2153356] - ice: drop unnecessary VF parameter from several VSI functions (Petr Oros) [2153356] - ice: fix function comment referring to ice_vsi_alloc (Petr Oros) [2153356] - ice: Add more usage of existing function ice_get_vf_vsi(vf) (Petr Oros) [2153356] - ice: implement devlink reinit action (Petr Oros) [2153356] - ice: update VSI instead of init in some case (Petr Oros) [2153356] - ice: move VSI delete outside deconfig (Petr Oros) [2153356] - ice: sync netdev filters after clearing VSI (Petr Oros) [2153356] - ice: split probe into smaller functions (Petr Oros) [2153356] - ice: stop hard coding the ICE_VSI_CTRL location (Petr Oros) [2153356] - ice: split ice_vsi_setup into smaller functions (Petr Oros) [2153356] - ice: cleanup in VSI config/deconfig code (Petr Oros) [2153356] - ice: alloc id for RDMA using xa_array (Petr Oros) [2153356] - ice: move RDMA init to ice_idc.c (Petr Oros) [2153356] - ice: Prevent set_channel from changing queues while RDMA active (Petr Oros) [2153356] - ice: Remove redundant pci_enable_pcie_error_reporting() (Petr Oros) [2153356] - ice: move devlink port creation/deletion (Petr Oros) [2153356] - ice: Remove excess space (Petr Oros) [2153356] - ice: Introduce local var for readability (Petr Oros) [2153356] - ice: Match parameter name for ice_cfg_phy_fc() (Petr Oros) [2153356] - ice: Explicitly return 0 (Petr Oros) [2153356] - ice: Reduce scope of variables (Petr Oros) [2153356] - ice: Move support DDP code out of ice_flex_pipe.c (Petr Oros) [2153356] - ice: Remove cppcheck suppressions (Petr Oros) [2153356] - ice: combine cases in ice_ksettings_find_adv_link_speed() (Petr Oros) [2153356] - ice: Add support for 100G KR2/CR2/SR2 link reporting (Petr Oros) [2153356] - ice: add missing checks for PF vsi type (Petr Oros) [2153356] - ice: remove redundant non-null check in ice_setup_pf_sw() (Petr Oros) [2153356] - ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB (Petr Oros) [2153356] - ice: Support drop action (Petr Oros) [2153356] - ice: Handle LLDP MIB Pending change (Petr Oros) [2153356] - ice: Add 'Execute Pending LLDP MIB' Admin Queue command (Petr Oros) [2153356] - ice: xsk: do not use xdp_return_frame() on tx_buf->raw_buf (Petr Oros) [2153356] - ice: Use ICE_RLAN_BASE_S instead of magic number (Petr Oros) [2153356] - ice: Accumulate ring statistics over reset (Petr Oros) [2153356] - ice: Accumulate HW and Netdev statistics over reset (Petr Oros) [2153356] - ice: Remove and replace ice speed defines with ethtool.h versions (Petr Oros) [2153356] - ice: Check for PTP HW lock more frequently (Petr Oros) [2153356] - ice: Fix spurious interrupt during removal of trusted VF (Petr Oros) [2153356] - ice: Enable RX queue selection using skbedit action (Petr Oros) [2153356] - ice: Add support for VLAN priority filters in switchdev (Petr Oros) [2153356] - ice: support features on new E810T variants (Petr Oros) [2153356] - ice: xsk: drop power of 2 ring size restriction for AF_XDP (Petr Oros) [2153356] - ice: xsk: change batched Tx descriptor cleaning (Petr Oros) [2153356] - ice: reorder PF/representor devlink port register/unregister flows (Petr Oros) [2153356] - ice: Add L2TPv3 hardware offload support (Petr Oros) [2153356] - ice: Simplify memory allocation in ice_sched_init_port() (Petr Oros) [2153356] - ice: switch: Simplify memory allocation (Petr Oros) [2153356] - ice: add helper function to check FW API version (Petr Oros) [2153356] - ice: Print human-friendly PHY types (Petr Oros) [2153356] - ice: Add support for ip TTL & ToS offload (Petr Oros) [2153356] - ice: xsk: use Rx ring's XDP ring when picking NAPI context (Petr Oros) [2153356] - ice: xsk: prohibit usage of non-balanced queue id (Petr Oros) [2153356] - ice: remove non-inclusive language (Petr Oros) [2153356] - ice: Remove ucast_shared (Petr Oros) [2153356] - ice: Allow 100M speeds for some devices (Petr Oros) [2153356] - ice: Implement FCS/CRC and VLAN stripping co-existence policy (Petr Oros) [2153356] - ice: Implement control of FCS/CRC stripping (Petr Oros) [2153356] - ice: initialize cached_phctime when creating Rx rings (Petr Oros) [2153356] - ice: set tx_tstamps when creating new Tx rings via ethtool (Petr Oros) [2153356] - ice: link representors to PCI device (Petr Oros) [2153356] - ice, xsk: Avoid refilling single Rx descriptors (Petr Oros) [2153356] - ice, xsk: Diversify return values from xsk_wakeup call paths (Petr Oros) [2153356] - ice, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Petr Oros) [2153356] - ice, xsk: Decorate ICE_XDP_REDIR with likely() (Petr Oros) [2153356] - ice: xsk: check if Rx ring was filled up to the end (Petr Oros) [2153356] - ice: xsk: Eliminate unnecessary loop iteration (Petr Oros) [2153356] - ice: xsk: fix GCC version checking against pragma unroll presence (Petr Oros) [2153356] - ice: xsk: Borrow xdp_tx_active logic from i40e (Petr Oros) [2153356] - ice: xsk: Improve AF_XDP ZC Tx and use batching API (Petr Oros) [2153356] - ice: xsk: Avoid potential dead AF_XDP Tx processing (Petr Oros) [2153356] - ice: Make Tx threshold dependent on ring length (Petr Oros) [2153356] - ice: xsk: Handle SW XDP ring wrap and bump tail more often (Petr Oros) [2153356] - ice: xsk: Force rings to be sized to power of 2 (Petr Oros) [2153356] - ice: xsk: do not clear status_error0 for ntu + nb_buffs descriptor (Petr Oros) [2153356] - ice: remove dead store on XSK hotpath (Petr Oros) [2153356] - ice: xsk: clear status_error0 for each allocated desc (Petr Oros) [2153356] - intel: Simplify bool conversion (Petr Oros) [2153356] - ice: Use the xsk batched rx allocation interface (Petr Oros) [2153356] - softirq: Wake ktimers thread also in softirq. (Eder Zulian) [2219530] - netfilter: nf_tables: unbind non-anonymous set if rule construction fails (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound set/chain (Phil Sutter) [2214964] {CVE-2023-3390} - netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE (Phil Sutter) [2214964] {CVE-2023-3390}- [rt] build kernel-rt-4.18.0-504.rt7.293.el8 [2180997] - blk-cgroup: Reinit blkg_iostat_set after clearing in blkcg_reset_stats() (Waiman Long) [2212032] - ipvlan:Fix out-of-bounds caused by unclear skb->cb (Davide Caratti) [2218676] {CVE-2023-3090} - net: openvswitch: fix upcall counter access before allocation (Eelco Chaudron) [2214262] - netfilter: Drop fragmented ndisc packets assembled in netfilter (Phil Sutter) [2217795] - netfilter: conntrack: gre: don't set assured flag for clash entries (Florian Westphal) [2219357] - netfilter: conntrack: allow insertion clash of gre protocol (Florian Westphal) [2219357] - sfc: use budget for TX completions (Íñigo Huguet) [2179558] - sfc: fix XDP queues mode with legacy IRQ (Íñigo Huguet) [2214589] - memstick: r592: Fix UAF bug in r592_remove due to race condition (Ricardo Robaina) [2213206] {CVE-2023-3141} - audit: avoid missing-prototype warnings (Richard Guy Briggs) [2175322] - audit: update the mailing list in MAINTAINERS (Richard Guy Briggs) [2175322] - audit: fix undefined behavior in bit shift for AUDIT_BIT (Richard Guy Briggs) [2175322] - fork: Use IS_ENABLED() in account_kernel_stack() (Valentin Schneider) [2131754] - fork: Only cache the VMAP stack in finish_task_switch() (Valentin Schneider) [2131754] - fork: Move task stack accounting to do_exit() (Valentin Schneider) [2131754] - fork: Move memcg_charge_kernel_stack() into CONFIG_VMAP_STACK (Valentin Schneider) [2131754] - fork: Don't assign the stack pointer in dup_task_struct() (Valentin Schneider) [2131754] - fork, IA64: Provide alloc_thread_stack_node() for IA64 (Valentin Schneider) [2131754] - fork: Duplicate task_struct before stack allocation (Valentin Schneider) [2131754] - fork: Redo ifdefs around task stack handling (Valentin Schneider) [2131754] - fork: fix some -Wmissing-prototypes warnings (Valentin Schneider) [2131754] - igb: fix nvm.ops.read() error handling (Corinna Vinschen) [2153360] - igb: Fix extts capture value format for 82580/i354/i350 (Corinna Vinschen) [2153360] - igb: Define igb_pm_ops conditionally on CONFIG_PM (Corinna Vinschen) [2153360] - igb: fix bit_shift to be in [1..8] range (Corinna Vinschen) [2153360] - igb: refactor igb_ptp_adjfine_82580 to use diff_by_scaled_ppm (Corinna Vinschen) [2153360] - igb: revert rtnl_lock() that causes deadlock (Corinna Vinschen) [2153360] - igb: Remove unnecessary aer.h include (Corinna Vinschen) [2153360] - igb: Fix PPS input and output using 3rd and 4th SDP (Corinna Vinschen) [2153360] - igb: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153360] - igb: Add lock to avoid data race (Corinna Vinschen) [2153360] - x86/cpu: Include the header of init_ia32_feat_ctl()'s prototype (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/pm: Fix false positive kmemleak report in msr_build_context() (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/speculation: Restore speculation related MSRs during S3 resume (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: remove leftover comment for filechk utility (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/rdrand: Sanity-check RDRAND output (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - x86/CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: change filechk to surround the given command with { } (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - firmware: refactor firmware/Makefile (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: remove redundant 'set -e' from filechk_offsets (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: do not redirect the first prerequisite for filechk (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - kbuild: move bin2c back to scripts/ from scripts/basic/ (Chris von Recklinghausen) [2181907] {CVE-2023-1637} - perf/x86/ibs: Add new IBS register bits into header (Michael Petlan) [2088767] - perf tool x86: Fix perf_env memory leak (Michael Petlan) [2088767] - perf tool x86: Consolidate is_amd check into single function (Michael Petlan) [2088767] - perf env: Add perf_env__cpuid, perf_env__{nr_}pmu_mappings (Michael Petlan) [2088767] - perf/x86/amd/uncore: Fix memory leak for events array (Michael Petlan) [2088767] - perf script: Add missing fields in usage hint (Michael Petlan) [2086837] - perf mem: Print "LFB/MAB" for PERF_MEM_LVLNUM_LFB (Michael Petlan) [2088767] - perf mem/c2c: Avoid printing empty lines for unsupported events (Michael Petlan) [2088767] - perf mem/c2c: Add load store event mappings for AMD (Michael Petlan) [2088767] - perf mem/c2c: Set PERF_SAMPLE_WEIGHT for LOAD_STORE events (Michael Petlan) [2088767] - perf mem: Add support for printing PERF_MEM_LVLNUM_{CXL|IO} (Michael Petlan) [2088767] - perf/mem: Rename PERF_MEM_LVLNUM_EXTN_MEM to PERF_MEM_LVLNUM_CXL (Michael Petlan) [2088767] - perf amd ibs: Sync arch/x86/include/asm/amd-ibs.h header with the kernel (Michael Petlan) [2088767] - tools headers UAPI: Sync include/uapi/linux/perf_event.h header with the kernel (Michael Petlan) [2088767] - perf/uapi: Define PERF_MEM_SNOOPX_PEER in kernel header file (Michael Petlan) [2088767] - perf: correct SNOOPX field offset (Michael Petlan) [2088767] - perf tools: Sync addition of PERF_MEM_SNOOPX_PEER (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_PHY_ADDR (Michael Petlan) [2088767] - perf: Add sample_flags to indicate the PMU-filled sample data (Michael Petlan) [2086837] - perf/x86/amd: Support PERF_SAMPLE_ADDR (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_{WEIGHT|WEIGHT_STRUCT} (Michael Petlan) [2088767] - perf/x86/amd: Support PERF_SAMPLE_DATA_SRC (Michael Petlan) [2088767] - perf/x86/amd: Add IBS OP_DATA2 DataSrc bit definitions (Michael Petlan) [2088767] - perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO} (Michael Petlan) [2088767] - perf/x86/amd/uncore: Add PerfMonV2 RDPMC assignments (Michael Petlan) [2086837] - perf/x86/amd/uncore: Add PerfMonV2 DF event format (Michael Petlan) [2086837] - perf/x86/amd/uncore: Detect available DF counters (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use attr_update for format attributes (Michael Petlan) [2086837] - perf/x86/amd/uncore: Use dynamic events array (Michael Petlan) [2086837] - tracing/osnoise: set several trace_osnoise.c variables storage-class-specifier to static (John Kacur) [2175293] - tracing/osnoise: No need for schedule_hrtimeout range (John Kacur) [2175293] - tracing/osnoise: Use built-in RCU list checking (John Kacur) [2175293] - tracing/osnoise: Add preempt and/or irq disabled options (John Kacur) [2175293] - tracing/osnoise: Add PANIC_ON_STOP option (John Kacur) [2175293] - tracing/osnoise: Make osnoise_options static (John Kacur) [2175293] - tracing/osnoise: Add OSNOISE_WORKLOAD option (John Kacur) [2175293] - tracing/osnoise: Add osnoise/options file (John Kacur) [2175293] - tracing/osnoise: Fix duration type (John Kacur) [2175293] - tracing/osnoise: Fix possible recursive locking in stop_per_cpu_kthreads (John Kacur) [2175293] - tracing/timerlat: Do not wakeup the thread if the trace stops at the IRQ (John Kacur) [2175293] - tracing/timerlat: Print stacktrace in the IRQ handler if needed (John Kacur) [2175293] - tracing/timerlat: Notify IRQ new max latency only if stop tracing is set (John Kacur) [2175293] - drivers: base: cacheinfo: Fix shared_cpu_map changes in event of CPU hotplug (Mark Lansgdorf) [2178301] - drivers: base: cacheinfo: Update cpu_map_populated during CPU Hotplug (Mark Lansgdorf) [2178301] - driver core: bus: move documentation for lock_key to proper location. (Mark Langsdorf) [2178301] - cacheinfo: Check cache properties are present in DT (Mark Langsdorf) [2178301] - cacheinfo: Fix LLC is not exported through sysfs (Mark Langsdorf) [2178301] - of: Add of_property_present() helper (Mark Langsdorf) [2178301] - driver core: fw_devlink: Print full path and name of fwnode (Mark Langsdorf) [2178301] - driver core: fw_devlink: Avoid spurious error message (Mark Langsdorf) [2178301] - driver core: bus: Handle early calls to bus_to_subsys() (Mark Langsdorf) [2178301] - driver core: class: move EXPORT_SYMBOL_GPL() lines to the correct place (Mark Langsdorf) [2178301] - driver core: cpu: don't hand-override the uevent bus_type callback. (Mark Langsdorf) [2178301] - driver core: bus: update my copyright notice (Mark Langsdorf) [2178301] - driver core: bus: add bus_get_dev_root() function (Mark Langsdorf) [2178301] - driver core: bus: constify bus_unregister() (Mark Langsdorf) [2178301] - driver core: bus: constify some internal functions (Mark Langsdorf) [2178301] - driver core: bus: constify bus_get_kset() (Mark Langsdorf) [2178301] - driver core: bus: constify bus_register/unregister_notifier() (Mark Langsdorf) [2178301] - driver core: create bus_is_registered() (Mark Langsdorf) [2178301] - driver core: bus: clean up driver_find() (Mark Langsdorf) [2178301] - driver core: move driver_find() to bus.c (Mark Langsdorf) [2178301] - driver core: bus: clean up bus_sort_breadthfirst() (Mark Langsdorf) [2178301] - driver core: bus: bus iterator cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/remove_driver() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister_notifier() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_get_kset() cleanup (Mark Langsdorf) [2178301] - driver core: bus: subsys_interface_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_register/unregister() cleanups (Mark Langsdorf) [2178301] - driver core: bus: bus_add/probe/remove_device() cleanups (Mark Langsdorf) [2178301] - driver core: bus: sysfs function cleanups (Mark Langsdorf) [2178301] - driver core: bus: convert bus_create/remove_file to be constant (Mark Langsdorf) [2178301] - driver core: bus: constantify the bus_find_* functions (Mark Langsdorf) [2178301] - driver core: bus: implement bus_get/put() without the private pointer (Mark Langsdorf) [2178301] - driver core: add local subsys_get and subsys_put functions (Mark Langsdorf) [2178301] - driver core: fw_devlink: Make cycle detection more robust (Mark Langsdorf) [2178301] - driver core: fw_devlink: Consolidate device link flag computation (Mark Langsdorf) [2178301] - driver core: fw_devlink: Allow marking a fwnode link as being part of a cycle (Mark Langsdorf) [2178301] - driver core: Add wait_for_init_devices_probe helper function (Mark Langsdorf) [2178301] - driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links (Mark Langsdorf) [2178301] - driver core: fw_devlink: Improve check for fwnode with no device/driver (Mark Langsdorf) [2178301] - driver core: fw_devlink: Don't purge child fwnode's consumer links (Mark Langsdorf) [2178301] - drivers: base: dd: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers: base: component: fix memory leak with using debugfs_lookup() (Mark Langsdorf) [2178301] - drivers/base: Remove CONFIG_SRCU (Mark Langsdorf) [2178301] - devtmpfs: convert to pr_fmt (Mark Langsdorf) [2178301] - driver core: bus: move lock_class_key into dynamic structure (Mark Langsdorf) [2178301] - driver core: platform: simplify __platform_driver_probe() (Mark Langsdorf) [2178301] - driver core: platform: removed unneeded variable from __platform_driver_probe() (Mark Langsdorf) [2178301] - cacheinfo: Initialize variables in fetch_cache_info() (Mark Langsdorf) [2178301] - regmap: apply reg_base and reg_downshift for single register ops (Mark Langsdorf) [2178301] - driver core: soc: remove layering violation for the soc_bus (Mark Langsdorf) [2178301] - of: device: make of_device_uevent_modalias() take a const device * (Mark Langsdorf) [2178301] - driver core: device_get_devnode() should take a const * (Mark Langsdorf) [2178301] - driver core: fix up missed drivers/s390/char/hmcdrv_dev.c class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up missed scsi/cxlflash class.devnode() conversion. (Mark Langsdorf) [2178301] - driver core: fix up some missing class.devnode() conversions. (Mark Langsdorf) [2178301] - driver core: make struct class.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: make struct device_type.devnode() take a const * (Mark Langsdorf) [2178301] - driver core: class: Clear private pointer on registration failures (Mark Langsdorf) [2178301] - cacheinfo: Fix shared_cpu_map to handle shared caches at different levels (Mark Langsdorf) [2178301] - cacheinfo: Check 'cache-unified' property to count cache leaves (Mark Langsdorf) [2178301] - arch_topology: Build cacheinfo from primary CPU (Mark Langsdorf) [2178301] - cacheinfo: Make default acpi_get_cache_info() return an error (Mark Langsdorf) [2178301] - ACPI: PPTT: Update acpi_find_last_cache_level() to acpi_get_cache_info() (Mark Langsdorf) [2178301] - ACPI: PPTT: Remove acpi_find_cache_levels() (Mark Langsdorf) [2178301] - drivers: base: transport_class: fix resource leak when transport_add_device() fails (Mark Langsdorf) [2178301] - driver core: location: Free struct acpi_pld_info *pld before return false (Mark Langsdorf) [2178301] - driver core: fix resource leak in device_add() (Mark Langsdorf) [2178301] - drivers/base/memory: Fix comments for phys_index_show() (Mark Langsdorf) [2178301] - drivers/base/memory: rename base_memory_block_id to memory_block_id (Mark Langsdorf) [2178301] - driver core: Fix test_async_probe_init saves device in wrong array (Mark Langsdorf) [2178301] - device property: fix of node refcount leak in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2178301] - driver core: bus: move bus notifier logic into bus.c (Mark Langsdorf) [2178301] - driver core: bus.h: document bus notifiers better (Mark Langsdorf) [2178301] - cacheinfo: Return error code in init_of_cache_level() (Mark Langsdorf) [2178301] - cacheinfo: Use RISC-V's init_cache_level() as generic OF implementation (Mark Langsdorf) [2178301] - platform: remove useless if-branch in __platform_get_irq_byname() (Mark Langsdorf) [2178301] - platform: Document platform_add_devices() return value (Mark Langsdorf) [2178301] - software node: Remove unused APIs (Mark Langsdorf) [2178301] - software node: Switch property entry test to a new API (Mark Langsdorf) [2178301] - platform: Provide a remove callback that returns no value (Mark Langsdorf) [2178301] - regmap: Rework regmap_mdio_c45_{read|write} for new C45 API. (Mark Langsdorf) [2178301] - net: Convert more users of mdiobus_* to mdiodev_* (Mark Langsdorf) [2178301] - PM: runtime: Document that force_suspend() is incompatible with SMART_SUSPEND (Mark Langsdorf) [2178301] - cpuidle, ARM: OMAP2+: powerdomain: Remove trace_.*_rcuidle() (Mark Langsdorf) [2178301] - driver core: fix potential null-ptr-deref in device_add() (Mark Langsdorf) [2178301] - PM: domains: Allow a genpd consumer to require a synced power off (Mark Langsdorf) [2178301] - driver core: move struct subsys_dev_iter to a local file (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_exit() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_next() static (Mark Langsdorf) [2178301] - driver core: make subsys_dev_iter_init() static (Mark Langsdorf) [2178301] - driver core: remove subsys_find_device_by_id() (Mark Langsdorf) [2178301] - driver core: make bus_get_device_klist() static (Mark Langsdorf) [2178301] - platform/mellanox: mlxbf-pmc: Fix event typo (Mark Langsdorf) [2178301] - firmware_loader: remove #include (Mark Langsdorf) [2178301] - PM: runtime: Adjust white space in the core code (Mark Langsdorf) [2178301] - device property: Fix documentation for fwnode_get_next_parent() (Mark Langsdorf) [2178301] - PM: runtime: Relocate rpm_callback() right after __rpm_callback() (Mark Langsdorf) [2178301] - regmap: Add FSI bus support (Mark Langsdorf) [2178301] - PM: domains: Reverse the order of performance and enabling ops (Mark Langsdorf) [2178301] - driver core: make struct class.dev_uevent() take a const * (Mark Langsdorf) [2178301] - driver core: change to_subsys_private() to use container_of_const() (Mark Langsdorf) [2178301] - xen/xenbus: move to_xenbus_device() to use container_of_const() (Mark Langsdorf) [2178301] - virtio: move dev_to_virtio() to use container_of_const() (Mark Langsdorf) [2178301] - cacheinfo: Remove of_node_put() for fw_token (Mark Langsdorf) [2178301] - device property: Add a blank line in Kconfig of tests (Mark Langsdorf) [2178301] - device property: Rename goto label to be more precise (Mark Langsdorf) [2178301] - regmap: add regmap_might_sleep() (Mark Langsdorf) [2178301] - regmap: Add can_sleep configuration option (Mark Langsdorf) [2178301] - regmap: Use flexible sleep (Mark Lansgdorf) [2178301] - platform: use fwnode_irq_get_byname instead of of_irq_get_byname to get irq (Mark Langsdorf) [2178301] - driver core: Fix bus_type.match() error handling in __driver_attach() (Mark Langsdorf) [2178301] - driver core: Use kstrtobool() instead of strtobool() (Mark Langsdorf) [2178301] - cacheinfo: Decrement refcount in cache_setup_of_node() (Mark Langsdorf) [2178301] - driver core: mark driver_allows_async_probing static (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_group() (Mark Langsdorf) [2178301] - driver core: remove devm_device_remove_groups() (Mark Langsdorf) [2178301] - driver core: class: make namespace and get_ownership take const * (Mark Langsdorf) [2178301] - devres: Use kmalloc_size_roundup() to match ksize() usage (Mark Langsdorf) [2178301] - class: fix possible memory leak in __class_register() (Mark Langsdorf) [2178301] - PM: domains: Power off[on] domain in hibernate .freeze[thaw]_noirq hook (Mark Langsdorf) [2178301] - PM: domains: Consolidate genpd_restore_noirq() and genpd_resume_noirq() (Mark Langsdorf) [2178301] - PM: domains: Pass generic PM noirq hooks to genpd_finish_suspend() (Mark Langsdorf) [2178301] - PM: domains: Drop genpd status manipulation for hibernate restore (Mark Langsdorf) [2178301] - PM: domains: Fix handling of unavailable/disabled idle states (Mark Langsdorf) [2178301] - device property: Fix documentation for *_match_string() APIs (Mark Langsdorf) [2178301] - device property: Constify parameter in device_dma_supported() and device_get_dma_attr() (Mark Langsdorf) [2178301] - device property: Constify device child node APIs (Mark Langsdorf) [2178301] - device property: Constify fwnode connection match APIs (Mark Langsdorf) [2178301] - device property: Allow const parameter to dev_fwnode() (Mark Langsdorf) [2178301] - PM: domains: log failures to register always-on domains (Mark Langsdorf) [2178301] - dt-bindings: irqchip: Describe the IMX MU block as a MSI controller (Mark Langsdorf) [2178301] - platform-msi: Export symbol platform_msi_create_irq_domain() (Mark Langsdorf) [2178301] - PM: runtime: Return -EINPROGRESS from rpm_resume() in the RPM_NOWAIT case (Mark Langsdorf) [2178301] - device property: Add const qualifier to device_get_match_data() parameter (Mark Langsdorf) [2178301] - driver core: use IS_ERR_OR_NULL() helper in device_create_groups_vargs() (Mark Langsdorf) [2178301] - devcoredump : Serialize devcd_del work (Mark Langsdorf) [2178301] - regmap: mmio: replace return 0 with break in switch statement (Mark Langsdorf) [2178301] - mm: kill is_memblock_offlined() (Mark Langsdorf) [2178301] - driver core: remove make_class_name declaration (Mark Langsdorf) [2178301] - regmap/hexagon: Properly fix the generic IO helpers (Mark Langsdorf) [2178301] - regmap: trace: Remove unneeded blank lines (Mark Langsdorf) [2178301] - regmap: trace: Remove explicit castings (Mark Langsdorf) [2178301] - regmap: trace: Remove useless check for NULL for bulk ops (Mark Langsdorf) [2178301] - PM: wakeup: Add extra debugging statement for multiple active IRQs (Mark Langsdorf) [2178301] - devres: Slightly optimize alloc_dr() (Mark Langsdorf) [2178301] - drivers: base: Print error code on synthetic uevent failure (Mark Langsdorf) [2178301] - class: use IS_ERR_OR_NULL() helper in class_unregister() (Mark Langsdorf) [2178301] - regmap: introduce value tracing for regmap bulk operations (Mark Langsdorf) [2178301] - regmap: mmio: Fix MMIO accessors to avoid talking to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Introduce IO accessors that can talk to IO port (Mark Langsdorf) [2178301] - regmap: mmio: Get rid of broken 64-bit IO (Mark Langsdorf) [2178301] - regmap: mmio: Remove mmio_relaxed member from context (Mark Langsdorf) [2178301] - thunderbolt: Mask ring interrupt on Intel hardware as well (Desnes Nunes) [2216483] - thunderbolt: Clear registers properly when auto clear isn't in use (Desnes Nunes) [2216483] - dt-bindings: usb: fsa4480: Use generic node name (Desnes Nunes) [2216483] - media: Revert "media: uvcvideo: Set unique vdev name based in type" (Desnes Nunes) [2216483] - media: uvcvideo: Don't expose unsupported formats to userspace (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Fix configure initial pin assignment (Desnes Nunes) [2216483] - xhci: Free the command allocated for setting LPM if we return early (Desnes Nunes) [2216483] - xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu (Desnes Nunes) [2216483] - USB: serial: option: add Quectel RM500U-CN modem (Desnes Nunes) [2216483] - thunderbolt: Rename shadowed variables bit to interrupt_bit and auto_clear_bit (Desnes Nunes) [2216483] - thunderbolt: Disable interrupt auto clear for rings (Desnes Nunes) [2216483] - thunderbolt: Use const qualifier for `ring_interrupt_index` (Desnes Nunes) [2216483] - uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS583Gen 2 (Desnes Nunes) [2216483] - USB: serial: option: add Telit FE990 compositions (Desnes Nunes) [2216483] - USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs (Desnes Nunes) [2216483] - thunderbolt: Use scale field when allocating USB3 bandwidth (Desnes Nunes) [2216483] - thunderbolt: Limit USB3 bandwidth of certain Intel USB4 host routers (Desnes Nunes) [2216483] - thunderbolt: Call tb_check_quirks() after initializing adapters (Desnes Nunes) [2216483] - thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access (Desnes Nunes) [2216483] - thunderbolt: Fix memory leak in margining (Desnes Nunes) [2216483] - usb: typec: tcpm: fix warning when handle discover_identity message (Desnes Nunes) [2216483] - usb: typec: tcpm: fix create duplicate source-capabilities file (Desnes Nunes) [2216483] - usb: ucsi_acpi: Increase the command completion timeout (Desnes Nunes) [2216483] - usb: ucsi: Fix ucsi->connector race (Desnes Nunes) [2216483] - usb: ucsi: Fix NULL pointer deref in ucsi_connector_change() (Desnes Nunes) [2216483] - thunderbolt: Add quirk to disable CLx (Desnes Nunes) [2216483] - usb: typec: pd: Add higher capability sysfs for sink PDO (Desnes Nunes) [2216483] - usb: typec: pd: Remove usb_suspend_supported sysfs from sink PDO (Desnes Nunes) [2216483] - xhci: host: potential NULL dereference in xhci_generic_plat_probe() (Desnes Nunes) [2216483] - media: usb: siano: Fix warning due to null work_func_t function pointer (Desnes Nunes) [2216483] - media: usb: siano: Fix use after free bugs caused by do_submit_urb (Desnes Nunes) [2216483] - media: usb: dvb-usb-v2: af9015.c: return 0 instead of 'ret'. (Desnes Nunes) [2216483] - dt-bindings: usb: convert fcs,fusb302.txt to yaml (Desnes Nunes) [2216483] - dt-bindings: usb: fusb302: Remove deprecated properties (Desnes Nunes) [2216483] - usb: uvc: Enumerate valid values for color matching (Desnes Nunes) [2216483] - USB: ene_usb6250: Allocate enough memory for full object (Desnes Nunes) [2216483] - USB: uhci: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: ULPI: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - USB: serial: option: add support for VW/Skoda "Carstick LTE" (Desnes Nunes) [2216483] - usb: remove the dead USB_OHCI_SH option (Desnes Nunes) [2216483] - xhci: decouple usb2 port resume and get_port_status request handling (Desnes Nunes) [2216483] - xhci: clear usb2 resume related variables in one place. (Desnes Nunes) [2216483] - xhci: rename resume_done to resume_timestamp (Desnes Nunes) [2216483] - xhci: Pass port structure as parameter to xhci_disable_port(). (Desnes Nunes) [2216483] - xhci: move port specific items such as state completions to port structure (Desnes Nunes) [2216483] - xhci: pass port pointer as parameter to xhci_set_port_power() (Desnes Nunes) [2216483] - xhci: cleanup xhci_hub_control port references (Desnes Nunes) [2216483] - xhci: add helpers for enabling and disabling interrupters (Desnes Nunes) [2216483] - xhci: Refactor interrupter code for initial multi interrupter support. (Desnes Nunes) [2216483] - xhci: remove xhci_test_trb_in_td_math early development check (Desnes Nunes) [2216483] - xhci: fix event ring segment table related masks and variables in header (Desnes Nunes) [2216483] - USB: core: Don't hold device lock while reading the "descriptors" sysfs file (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Use memcpy_and_pad() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Optimize early_xdbc_write() (Desnes Nunes) [2216483] - usb: early: xhci-dbc: Fix a potential out-of-bound memory access (Desnes Nunes) [2216483] - Documentation: usb: correct spelling (Desnes Nunes) [2216483] - docs: usb: convert documents to ReST (Desnes Nunes) [2216483] - Documentation/usb: Fix typo (Desnes Nunes) [2216483] - USB: serial: clean up kl5kusb105 documentation (Desnes Nunes) [2216483] - usb: uvc: use v4l2_fill_fmtdesc instead of open coded format name (Desnes Nunes) [2216483] - usb: uvc: make uvc_format_desc table const (Desnes Nunes) [2216483] - usb: uvc: move uvc_fmts and uvc_format_by_guid to own compile unit (Desnes Nunes) [2216483] - usb: uvc: move media/v4l2-uvc.h to usb/uvc.h (Desnes Nunes) [2216483] - media: uvcvideo: Add GUID for BGRA/X 8:8:8:8 (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 try_format api call (Desnes Nunes) [2216483] - usb: gadget: uvc: add v4l2 enumeration api calls (Desnes Nunes) [2216483] - usb: gadget: uvc: allow for application to cleanly shutdown (Desnes Nunes) [2216483] - usb: gadget: uvc: rename function to be more consistent (Desnes Nunes) [2216483] - usb: gadget: uvc: fix multiple opens (Desnes Nunes) [2216483] - thunderbolt: Add missing kernel-doc comment to tb_tunnel_maximum_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Handle bandwidth allocation mode enablement notification (Desnes Nunes) [2216483] - xhci: split out rcar/rz support from xhci-plat.c (Desnes Nunes) [2216483] - usb: host: xhci-rcar: Use xhci_plat_priv.quirks instead of code settings (Desnes Nunes) [2216483] - usb: host: xhci-plat: Remove useless DMA-32 fallback configuration (Desnes Nunes) [2216483] - usb: host: xhci-plat: Add reset support (Desnes Nunes) [2216483] - usb: host: xhci-plat: Improve clock handling in probe() (Desnes Nunes) [2216483] - dt-bindings: usb: Convert Marvell Orion EHCI to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert OMAP OHCI/EHCI bindings to schema (Desnes Nunes) [2216483] - dt-bindings: usb: Convert multiple "usb-ohci" bindings to DT schema (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Document dr_mode property (Desnes Nunes) [2216483] - dt-bindings: ehci/ohci: Allow iommus property (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ohci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: usb: generic-ehci: Add missing compatible strings (Desnes Nunes) [2216483] - dt-bindings: Fix incorrect 'reg' property sizes (Desnes Nunes) [2216483] - dt-bindings: usb: ehci: Add missing 2nd register region (Desnes Nunes) [2216483] - usb: typec: tcpm: Remove altmode active state updates (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Update active state (Desnes Nunes) [2216483] - usb: typec: mux: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - redhat: configs: Add unset CONFIG_TYPEC_MUX_GPIO_SBU option (Desnes Nunes) [2216483] - usb: typec: mux: Add On Semi fsa4480 driver (Desnes Nunes) [2216483] - dt-bindings: usb: Add binding for fcs,fsa4480 (Desnes Nunes) [2216483] - dt-bindings: usb: Introduce GPIO-based SBU mux (Desnes Nunes) [2216483] - usb: host: ehci-fsl: Use DRV_NAME (Desnes Nunes) [2216483] - usb: typec: maxim_contaminant: Implement check_contaminant callback (Desnes Nunes) [2216483] - usb: typec: tcpci: Add callback for evaluating contaminant presence (Desnes Nunes) [2216483] - usb: typec: tcpm: Add callbacks to mitigate wakeups due to contaminant (Desnes Nunes) [2216483] - usb: typec: Make bus switch code retimer-aware (Desnes Nunes) [2216483] - usb: typec: retimer: Use device type for matching (Desnes Nunes) [2216483] - usb: typec: Add wrapper for bus switch set code (Desnes Nunes) [2216483] - usb: typec: Add retimer handle to port altmode (Desnes Nunes) [2216483] - usb: typec: tipd: Support wakeup (Desnes Nunes) [2216483] - dt-bindings: usb: tps6598x: Add wakeup property (Desnes Nunes) [2216483] - USB: fix memory leak with using debugfs_lookup() (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Deduplicate ACPI matching in probe (Desnes Nunes) [2216483] - usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count (Desnes Nunes) [2216483] - usb: typec: tcpci: Request IRQ with IRQF_SHARED (Desnes Nunes) [2216483] - USB: Improve usb_fill_* documentation (Desnes Nunes) [2216483] - usb: typec: hd3ss3220: Add polling support (Desnes Nunes) [2216483] - dt-bindings: usb: ti,hd3ss3220: Update interrupt property as optional (Desnes Nunes) [2216483] - dt-bindings: usb: convert ti,hd3ss3220 bindings to json-schema (Desnes Nunes) [2216483] - dt-bindings: Convert usb-connector to YAML format. (Desnes Nunes) [2216483] - dt-bindings: usb: rt1711h: Add connector bindings (Desnes Nunes) [2216483] - dt-bindings: usb: hd3ss3220 device tree binding document (Desnes Nunes) [2216483] - thunderbolt: Add support for DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Include the additional DP IN double word in debugfs dump (Desnes Nunes) [2216483] - thunderbolt: Add functions to support DisplayPort bandwidth allocation mode (Desnes Nunes) [2216483] - thunderbolt: Increase timeout of DP OUT adapter handshake (Desnes Nunes) [2216483] - thunderbolt: Take CL states into account when waiting for link to come up (Desnes Nunes) [2216483] - thunderbolt: Improve debug logging in tb_available_bandwidth() (Desnes Nunes) [2216483] - thunderbolt: Log DP adapter type (Desnes Nunes) [2216483] - thunderbolt: Use decimal port number in control and tunnel logs too (Desnes Nunes) [2216483] - media: uvcvideo: Silence memcpy() run-time false positive warnings (Desnes Nunes) [2216483] - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910 (Desnes Nunes) [2216483] - media: uvcvideo: Fix race condition with usb_kill_urb (Desnes Nunes) [2216483] - media: uvcvideo: Use standard names for menus (Desnes Nunes) [2216483] - media: uvcvideo: Fix power line control for Lenovo Integrated Camera (Desnes Nunes) [2216483] - media: uvcvideo: Add a quirk to force GEO GC6500 Camera bits-per-pixel value (Desnes Nunes) [2216483] - media: v4l: common: Fix naming of v4l2_get_link_rate (Desnes Nunes) [2216483] - media: ipu3-cio2: Use v4l2_get_link_freq helper (Desnes Nunes) [2216483] - media: ipu3-cio2: Update Copyright year and fix indentation issues (Desnes Nunes) [2216483] - media: v4l: Add a helper for obtaining the link frequency (Desnes Nunes) [2216483] - media: v4l2-common: add RGB565 and RGB55 to v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: add pixel encoding support (Desnes Nunes) [2216483] - media: v4l2-common: add support for new RGB32 pixelformats (Desnes Nunes) [2216483] - media: v4l2-common: add bayer formats in v4l2_format_info (Desnes Nunes) [2216483] - media: v4l2-common: Add an helper to apply frmsize constraints (Desnes Nunes) [2216483] - media: v4l2-common: Fix v4l2_fill_pixfmt[_mp]() prototypes (Desnes Nunes) [2216483] - media: Introduce helpers to fill pixel format structs (Desnes Nunes) [2216483] - media: uvcvideo: Refactor power_line_frequency_controls_limited (Desnes Nunes) [2216483] - media: uvcvideo: Refactor uvc_ctrl_mappings_uvcXX (Desnes Nunes) [2216483] - media: uvcvideo: Implement mask for V4L2_CTRL_TYPE_MENU (Desnes Nunes) [2216483] - media: uvcvideo: Extend documentation of uvc_video_clock_decode() (Desnes Nunes) [2216483] - media: uvcvideo: Refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2216483] - media: uvcvideo: Undup use uvc_endpoint_max_bpi() code (Desnes Nunes) [2216483] - media: uvcvideo: Simplify uvc_endpoint_max_bpi() (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak if uvc_ctrl_add_mapping fails (Desnes Nunes) [2216483] - media: uvcvideo: Avoid returning invalid controls (Desnes Nunes) [2216483] - media: uvcvideo: Avoid invalid memory access (Desnes Nunes) [2216483] - media: uvcvideo: Set the colorspace as sRGB if undefined (Desnes Nunes) [2216483] - media: uvcvideo: Fix memory leak of object map on error exit path (Desnes Nunes) [2216483] - media: uvcvideo: Fix handling on Bitmask controls (Desnes Nunes) [2216483] - media: uvcvideo: Do not return positive errors in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Return -EACCES for Wrong state error (Desnes Nunes) [2216483] - media: uvcvideo: Improve error logging in uvc_query_ctrl() (Desnes Nunes) [2216483] - media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible() (Desnes Nunes) [2216483] - media: uvcvideo: Factor out usb_string() calls (Desnes Nunes) [2216483] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2216483] - media: uvcvideo: Recover stalled ElGato devices (Desnes Nunes) [2216483] - media: uvcvideo: Remove void casting for the status endpoint (Desnes Nunes) [2216483] - media: uvcvideo: Increase UVC_CTRL_CONTROL_TIMEOUT to 5 seconds. (Desnes Nunes) [2216483] - media: uvcvideo: Fix usage of symbolic permissions to octal (Desnes Nunes) [2216483] - media: uvcvideo: Fix assignment inside if condition (Desnes Nunes) [2216483] - media: uvcvideo: Fix missing newline after declarations (Desnes Nunes) [2216483] - media: uvcvideo: Handle errors from calls to usb_string (Desnes Nunes) [2216483] - media: uvcvideo: Only create input devs if hw supports it (Desnes Nunes) [2216483] - media: uvcvideo: Handle cameras with invalid descriptors (Desnes Nunes) [2216483] - media: uvcvideo: Remove format descriptions (Desnes Nunes) [2216483] - media: docs: Document the behaviour of uvcvideo driver (Desnes Nunes) [2216483] - media: uvcvideo: Set error_idx during ctrl_commit errors (Desnes Nunes) [2216483] - media: uvcvideo: Check controls flags before accessing them (Desnes Nunes) [2216483] - media: uvcvideo: Use control names from framework (Desnes Nunes) [2216483] - media: uvcvideo: Set unique vdev name based in type (Desnes Nunes) [2216483] - media: uvcvideo: Use dev->name for querycap() (Desnes Nunes) [2216483] - media: uvcvideo: Add support for V4L2_CTRL_TYPE_CTRL_CLASS (Desnes Nunes) [2216483] - media: uvcvideo: Set capability in s_param (Desnes Nunes) [2216483] - media: uvcvideo: Remove s_ctrl and g_ctrl (Desnes Nunes) [2216483] - media: v4l2-ioctl: S_CTRL output the right value (Desnes Nunes) [2216483] - media: uvcvideo: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: pvrusb2: Do not check for V4L2_CTRL_WHICH_DEF_VAL (Desnes Nunes) [2216483] - media: v4l2-ioctl: Fix check_ext_ctrls (Desnes Nunes) [2216483] - net: thunderbolt: Add tracepoints (Desnes Nunes) [2216483] - net: thunderbolt: Add debugging when sending/receiving control packets (Desnes Nunes) [2216483] - net: thunderbolt: Move into own directory (Desnes Nunes) [2216483] - xhci: Convert to use list_count_nodes() (Desnes Nunes) [2216483] - usb: typec: ucsi: Register USB Power Delivery Capabilities (Desnes Nunes) [2216483] - xhci: Add hub_control to xhci_driver_overrides (Desnes Nunes) [2216483] - xhci: hub: export symbol on xhci_hub_control (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Add hpd sysfs attribute (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Notify drm subsys of (Desnes Nunes) [2216483] - usb: typec: altmodes/displayport: Make dp_altmode_notify() more generic (Desnes Nunes) [2216483] - thunderbolt: Refactor tb_acpi_add_link() (Desnes Nunes) [2216483] - thunderbolt: Use correct type in tb_port_is_clx_enabled() prototype (Desnes Nunes) [2216483] - x86/microcode: avoid unused variable warning (John B. Wyatt IV) [2222817]- [rt] build kernel-rt-4.18.0-503.rt7.292.el8 [2180997] - s390/diag: fix display of diagnose call statistics (Tobias Huschle) [2187995] - rseq, ptrace: Add PTRACE_GET_RSEQ_CONFIGURATION request (Adrian Reber) [2218454] - locking/rwbase: Mitigate indefinite writer starvation (Eder Zulian) [2077282] - fbcon: Check font dimension limits (Ricardo Robaina) [2213491] {CVE-2023-3161} - libnvdimm: Notify disk drivers to revalidate region read-only (Jeff Moyer) [1999673] - nvdimm/region: always show the 'align' attribute (Jeff Moyer) [1999673] - nvdimm/region: Fix default alignment for small regions (Jeff Moyer) [1999673] - libnvdimm/region: Allow setting align attribute on regions without mappings (Jeff Moyer) [1999673] - KVM: SVM: Return the local "r" variable from svm_set_msr() (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Virtualize FLUSH_L1D and passthrough MSR_IA32_FLUSH_CMD (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Move MSR_IA32_PRED_CMD WRMSR emulation to common code (Emanuele Giuseppe Esposito) [2124598] - KVM: SVM: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: VMX: Passthrough MSR_IA32_PRED_CMD based purely on host+guest CPUID (Emanuele Giuseppe Esposito) [2124598] - KVM: x86: Revert MSR_IA32_FLUSH_CMD.FLUSH_L1D enabling (Emanuele Giuseppe Esposito) [2124598] - kvm: x86: Advertise FLUSH_L1D to user space (Emanuele Giuseppe Esposito) [2124598] - kvm: svm: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - kvm: vmx: Add IA32_FLUSH_CMD guest support (Emanuele Giuseppe Esposito) [2124598] - rtc: lib_test: add MODULE_LICENSE (Lenny Szubowicz) [2207975] - rtc: efi: Remove the repeated module alias (Lenny Szubowicz) [2207975] - efi/efivars: Set generic ops before loading SSDT (Lenny Szubowicz) [2207975] - efi: efibc: check for efivars write capability (Lenny Szubowicz) [2207975] - efi/efivars: Expose RT service availability via efivars abstraction (Lenny Szubowicz) [2207975] - integrity: Check properly whether EFI GetVariable() is available (Lenny Szubowicz) [2207975] - x86/ima: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Use EFI ResetSystem only when available (Lenny Szubowicz) [2207975] - scsi: iscsi: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - infiniband: hfi1: Use EFI GetVariable only when available (Lenny Szubowicz) [2207975] - efi: Register EFI rtc platform device only when available (Lenny Szubowicz) [2207975] - efi: Use more granular check for availability for variable services (Lenny Szubowicz) [2207975] - efi: mark all efi runtime services as unsupported on non-efi boot (Lenny Szubowicz) [2207975] - efi: Add support for EFI_RT_PROPERTIES table (Lenny Szubowicz) [2207975] - crypto: ccp - Add support for PCI device 0x156E (Vladis Dronov) [2180960] - crypto: ccp - Add support for PCI device 0x17E0 (Vladis Dronov) [2180960] - crypto: ccp - Validate that platform access mailbox registers are declared (Vladis Dronov) [2180960] - crypto: ccp - Use lower 8 bytes to communicate with doorbell command register (Vladis Dronov) [2180960] - crypto: ccp - Return doorbell status code as an argument (Vladis Dronov) [2180960] - crypto: ccp - Bump up doorbell debug message to error (Vladis Dronov) [2180960] - crypto: ccp - Drop extra doorbell checks (Vladis Dronov) [2180960] - crypto: ccp - Don't initialize CCP for PSP 0x1649 (Vladis Dronov) [2180960] - crypto: ccp - Clear PSP interrupt status register before calling handler (Vladis Dronov) [2180960] - crypto: ccp - Add support for ringing a platform doorbell (Vladis Dronov) [2180960] - crypto: ccp - Enable platform access interface on client PSP parts (Vladis Dronov) [2180960] - crypto: ccp - Add support for an interface for platform features (Vladis Dronov) [2180960] - crypto: ccp - Move some PSP mailbox bit definitions into common header (Vladis Dronov) [2180960] - crypto: ccp - Add a header for multiple drivers to use `__psp_pa` (Vladis Dronov) [2180960] - crypto: ccp - Drop TEE support for IRQ handler (Vladis Dronov) [2180960] - crypto: ccp: Get rid of __sev_platform_init_locked()'s local function pointer (Vladis Dronov) [2180960] - crypto: ccp - Name -1 return value as SEV_RET_NO_FW_CALL (Vladis Dronov) [2180960] - crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware (Vladis Dronov) [2180960] - crypto: ccp - Add a firmware definition for EPYC gen 4 processors (Vladis Dronov) [2180960] - crypto: ccp - Provide MMIO register naming for documenation (Vladis Dronov) [2180960] - redhat/configs: enable CONFIG_INTEL_UNCORE_FREQ_CONTROL for x86_64 (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Return error on write frequency (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Add client processors (David Arcari) [2156826] - platform/x86: intel-uncore-freq: add Emerald Rapids support (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Use sysfs_emit() to instead of scnprintf() (David Arcari) [2156826] - platform/x86: intel-uncore-freq: Prevent driver loading in guests (David Arcari) [2156826] - platform/x86: intel-uncore-freq: fix uncore_freq_common_init() error codes (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Split common and enumeration part (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Display uncore current frequency (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Use sysfs API to create attributes (David Arcari) [2156826] - platform/x86/intel/uncore-freq: Move to uncore-frequency folder (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: use default_groups in kobj_type (David Arcari) [2156826] - platform/x86: intel-uncore-frequency: Move to intel sub-directory (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add Sapphire Rapids server support (David Arcari) [2156826] - platform/x86/intel-uncore-freq: make uncore_root_kobj static (David Arcari) [2156826] - platform/x86: Convert to new CPU match macros (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Add release callback (David Arcari) [2156826] - platform/x86/intel-uncore-freq: Fix static checker issue and potential race condition (David Arcari) [2156826] - MAINTAINERS: Update for the intel uncore frequency control (David Arcari) [2156826] - platform/x86: Add support for Uncore frequency control (David Arcari) [2156826]- [rt] build kernel-rt-4.18.0-502.rt7.291.el8 [2180997] - x86/microcode: avoid unused variable warning (John B. Wyatt IV) [2222369] - ceph: fix use-after-free bug for inodes when flushing capsnaps (Xiubo Li) [2209299] - net/tls: tls_is_tx_ready() checked list_entry (Sabrina Dubroca) [2212178] {CVE-2023-1075} - Revert "RDMA/umem: remove FOLL_FORCE usage" (Kamal Heib) [2210153 2210849] - Revert "RDMA/core: Refactor rdma_bind_addr" (Kamal Heib) [2212211 2212217] - cpufreq: intel_pstate: Fix scaling for hybrid-capable systems with disabled E-cores (David Arcari) [2221276] - netfilter: nf_tables: fix scheduling-while-atomic splat (Phil Sutter) [2217731] - netfilter: nf_tables: add rescheduling points during loop detection walks (Phil Sutter) [2217731] - ipv6: Remove dependency of ipv6_frag_thdr_truncated on ipv6 module (Phil Sutter) [2217794] - ipv6/netfilter: Discard first fragment not including all headers (Phil Sutter) [2217794] - s390/ipl: add eckd dump support (Tobias Huschle) [2159695] - net/smc: fix document build WARNING from smc-sysctl.rst (Tobias Huschle) [2159734] - s390/ism: switch from 'pci_' to 'dma_' API (Tobias Huschle) [2159734] - net/smc: Fix device de-init sequence (Tobias Huschle) [2159734] - net/smc: fix deadlock triggered by cancel_delayed_work_syn() (Tobias Huschle) [2159734] - net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler() (Tobias Huschle) [2159734] - net/smc: fix fallback failed while sendmsg with fastopen (Tobias Huschle) [2159734] - net/smc: fix application data exception (Tobias Huschle) [2159734] - net/smc: replace mutex rmbs_lock and sndbufs_lock with rw_semaphore (Tobias Huschle) [2159734] - net/smc: reduce unnecessary blocking in smcr_lgr_reg_rmbs() (Tobias Huschle) [2159734] - net/smc: use read semaphores to reduce unnecessary blocking in smc_buf_create() & smcr_buf_unuse() (Tobias Huschle) [2159734] - net/smc: llc_conf_mutex refactor, replace it with rw_semaphore (Tobias Huschle) [2159734] - net: add missing includes of linux/splice.h (Tobias Huschle) [2159734] - net/smc: De-tangle ism and smc device initialization (Tobias Huschle) [2159734] - s390/ism: Consolidate SMC-D-related code (Tobias Huschle) [2159734] - net/smc: Separate SMC-D and ISM APIs (Tobias Huschle) [2159734] - net/smc: Register SMC-D as ISM client (Tobias Huschle) [2159734] - net/ism: Add new API for client registration (Tobias Huschle) [2159734] - s390/ism: Introduce struct ism_dmb (Tobias Huschle) [2159734] - net/ism: Add missing calls to disable bus-mastering (Tobias Huschle) [2159734] - net/smc: Terminate connections prior to device removal (Tobias Huschle) [2159734] - net/smc: Fix possible leaked pernet namespace in smc_init() (Tobias Huschle) [2159734] - net/smc: Fix an error code in smc_lgr_create() (Tobias Huschle) [2159734] - net/smc: Support SO_REUSEPORT (Tobias Huschle) [2159734] - net/smc: Introduce a specific sysctl for TEST_LINK time (Tobias Huschle) [2159734] - net/smc: Stop the CLC flow if no link to map buffers on (Tobias Huschle) [2159734] - net/smc: Fix possible access to freed memory in link clear (Tobias Huschle) [2159734] - net/smc: Remove redundant refcount increase (Tobias Huschle) [2159734] - net/smc: Enable module load on netlink usage (Tobias Huschle) [2159734] - net/smc: Pass on DMBE bit mask in IRQ handler (Tobias Huschle) [2159734] - s390/ism: Cleanups (Tobias Huschle) [2159734] - net/smc: Eliminate struct smc_ism_position (Tobias Huschle) [2159734] - tcp: Fix data-races around keepalive sysctl knobs. (Tobias Huschle) [2159734] - net/smc: Extend SMC-R link group netlink attribute (Tobias Huschle) [2159734] - net/smc: Allow virtually contiguous sndbufs or RMBs for SMC-R (Tobias Huschle) [2159734] - net/smc: Use sysctl-specified types of buffers in new link group (Tobias Huschle) [2159734] - net/smc: Introduce a sysctl for setting SMC-R buffer type (Tobias Huschle) [2159734] - net/smc: optimize for smc_sndbuf_sync_sg_for_device and smc_rmb_sync_sg_for_cpu (Tobias Huschle) [2159734] - net/smc: remove redundant dma sync ops (Tobias Huschle) [2159734] - net/smc: fixes for converting from "struct smc_cdc_tx_pend **" to "struct smc_wr_tx_pend_priv *" (Tobias Huschle) [2159734] - net/smc: set ini->smcrv2.ib_dev_v2 to NULL if SMC-Rv2 is unavailable (Tobias Huschle) [2159734] - net/smc: postpone sk_refcnt increment in connect() (Tobias Huschle) [2159734] - net/smc: rdma write inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: send cdc msg inline if qp has sufficient inline space (Tobias Huschle) [2159734] - net/smc: align the connect behaviour with TCP (Tobias Huschle) [2159734] - net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending (Tobias Huschle) [2159734] - net/smc: Fix slab-out-of-bounds issue in fallback (Tobias Huschle) [2159734] - net/smc: Only save the original clcsock callback functions (Tobias Huschle) [2159734] - net/smc: sync err code when tcp connection was refused (Tobias Huschle) [2159734] - net/smc: Fix sock leak when release after smc_shutdown() (Tobias Huschle) [2159734] - net/smc: Send out the remaining data in sndbuf before close (Tobias Huschle) [2159734] - net/smc: fix a memory leak in smc_sysctl_net_exit() (Tobias Huschle) [2159734] - net/smc: fix -Wmissing-prototypes warning when CONFIG_SYSCTL not set (Tobias Huschle) [2159734] - net/smc: fix compile warning for smc_sysctl (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error cause by server (Tobias Huschle) [2159734] - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error generated by client (Tobias Huschle) [2159734] - net: smc: fix different types in min() (Tobias Huschle) [2159734] - net/smc: don't send in the BH context if sock_owned_by_user (Tobias Huschle) [2159734] - net/smc: correct settings of RMB window update limit (Tobias Huschle) [2159734] - net/smc: send directly on setting TCP_NODELAY (Tobias Huschle) [2159734] - net/smc: add sysctl for autocorking (Tobias Huschle) [2159734] - net/smc: add autocorking support (Tobias Huschle) [2159734] - net/smc: add sysctl interface for SMC (Tobias Huschle) [2159734] - x86/resctrl: Clear staged_config[] before and after it is used (Prarit Bhargava) [1989284] - x86/resctl: fix scheduler confusion with 'current' (Prarit Bhargava) [1989284] - x86/resctrl: Fix a silly -Wunused-but-set-variable warning (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to write mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_local_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Add interface to read mbm_total_bytes_config (Prarit Bhargava) [1989284] - x86/resctrl: Support monitor configuration (Prarit Bhargava) [1989284] - x86/resctrl: Add __init attribute to rdt_get_mon_l3_config() (Prarit Bhargava) [1989284] - x86/resctrl: Detect and configure Slow Memory Bandwidth Allocation (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Bandwidth Monitoring Event Configuration feature flag (Prarit Bhargava) [1989284] - x86/cpufeatures: Add Slow Memory Bandwidth Allocation feature flag (Prarit Bhargava) [1989284] - x86/resctrl: Include new features in command line options (Prarit Bhargava) [1989284] - x86/resctrl: Add a new resource type RDT_RESOURCE_SMBA (Prarit Bhargava) [1989284] - x86/resctrl: Replace smp_call_function_many() with on_each_cpu_mask() (Prarit Bhargava) [1989284] - x86/resctrl: Fix event counts regression in reused RMIDs (Prarit Bhargava) [1989284] - x86/resctrl: Fix task CLOSID/RMID update race (Prarit Bhargava) [1989284] - x86/resctrl: Move MSR defines into msr-index.h (Prarit Bhargava) [1989284] - x86/resctrl: Remove arch_has_empty_bitmaps (Prarit Bhargava) [1989284] - x86/resctrl: Fix min_cbm_bits for AMD (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_rmid_read() return values in bytes (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_rmid_realloc_limit to abstract x86's boot_cpu_data (Prarit Bhargava) [1989284] - x86/resctrl: Rename and change the units of resctrl_cqm_threshold (Prarit Bhargava) [1989284] - x86/resctrl: Move get_corrected_mbm_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Move mbm_overflow_count() into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Pass the required parameters into resctrl_arch_rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Abstract __rmid_read() (Prarit Bhargava) [1989284] - x86/resctrl: Allow per-rmid arch private storage to be reset (Prarit Bhargava) [1989284] - x86/resctrl: Add per-rmid arch private storage for overflow and chunks (Prarit Bhargava) [1989284] - x86/resctrl: Calculate bandwidth from the previous __mon_event_count() chunks (Prarit Bhargava) [1989284] - x86/resctrl: Allow update_mba_bw() to update controls directly (Prarit Bhargava) [1989284] - x86/resctrl: Remove architecture copy of mbps_val (Prarit Bhargava) [1989284] - x86/resctrl: Switch over to the resctrl mbps_val list (Prarit Bhargava) [1989284] - x86/resctrl: Create mba_sc configuration in the rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Abstract and use supports_mba_mbps() (Prarit Bhargava) [1989284] - x86/resctrl: Remove set_mba_sc()s control array re-initialisation (Prarit Bhargava) [1989284] - x86/resctrl: Add domain offline callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Group struct rdt_hw_domain cleanup (Prarit Bhargava) [1989284] - x86/resctrl: Add domain online callback for resctrl work (Prarit Bhargava) [1989284] - x86/resctrl: Merge mon_capable and mon_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Kill off alloc_enabled (Prarit Bhargava) [1989284] - x86/resctrl: Fix to restore to original value when re-enabling hardware prefetch register (Prarit Bhargava) [1989284] - x86: Replace cpumask_weight() with cpumask_empty() where appropriate (Prarit Bhargava) [1989284] - x86/resctrl: Remove redundant assignment to variable chunks (Prarit Bhargava) [1989284] - x86/resctrl: Fix kfree() of the wrong type in domain_add_cpu() (Prarit Bhargava) [1989284] - x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails (Prarit Bhargava) [1989284] - x86/resctrl: Make resctrl_arch_get_config() return its value (Prarit Bhargava) [1989284] - x86/resctrl: Merge the CDP resources (Prarit Bhargava) [1989284] - x86/resctrl: Expand resctrl_arch_update_domains()'s msr_param range (Prarit Bhargava) [1989284] - x86/resctrl: Remove rdt_cdp_peer_get() (Prarit Bhargava) [1989284] - x86/resctrl: Merge the ctrl_val arrays (Prarit Bhargava) [1989284] - x86/resctrl: Calculate the index from the configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Apply offset correction when config is staged (Prarit Bhargava) [1989284] - x86/resctrl: Make ctrlval arrays the same size (Prarit Bhargava) [1989284] - x86/resctrl: Pass configuration type to resctrl_arch_get_config() (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read a closid's configuration (Prarit Bhargava) [1989284] - x86/resctrl: Rename update_domains() to resctrl_arch_update_domains() (Prarit Bhargava) [1989284] - x86/resctrl: Allow different CODE/DATA configurations to be staged (Prarit Bhargava) [1989284] - x86/resctrl: Group staged configuration into a separate struct (Prarit Bhargava) [1989284] - x86/resctrl: Move the schemata names into struct resctrl_schema (Prarit Bhargava) [1989284] - x86/resctrl: Add a helper to read/set the CDP configuration (Prarit Bhargava) [1989284] - x86/resctrl: Swizzle rdt_resource and resctrl_schema in pseudo_lock_region (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema to resctrl filesystem functions (Prarit Bhargava) [1989284] - x86/resctrl: Add resctrl_arch_get_num_closid() (Prarit Bhargava) [1989284] - x86/resctrl: Store the effective num_closid in the schema (Prarit Bhargava) [1989284] - x86/resctrl: Walk the resctrl schema list instead of an arch list (Prarit Bhargava) [1989284] - x86/resctrl: Label the resources with their configuration type (Prarit Bhargava) [1989284] - x86/resctrl: Pass the schema in info dir's private pointer (Prarit Bhargava) [1989284] - x86/resctrl: Add a separate schema list for resctrl (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_domain (Prarit Bhargava) [1989284] - x86/resctrl: Split struct rdt_resource (Prarit Bhargava) [1989284] - x86/resctrl: Include pid.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in internal.h (Prarit Bhargava) [1989284] - x86/resctrl: Fix kernel-doc in pseudo_lock.c (Prarit Bhargava) [1989284] - x86/resctrl: Fix init const confusion (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments, take #2 (Prarit Bhargava) [1989284] - x86/resctrl: Fix various typos in comments (Prarit Bhargava) [1989284] - x86/resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid} (Prarit Bhargava) [1989284] - x86/resctrl: Use task_curr() instead of task_struct->on_cpu to prevent unnecessary IPI (Prarit Bhargava) [1989284] - x86/resctrl: Add printf attribute to log function (Prarit Bhargava) [1989284] - x86/resctrl: Don't move a task to the same resource group (Prarit Bhargava) [1989284] - x86/resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC MSR (Prarit Bhargava) [1989284] - x86/resctrl: Fix incorrect local bandwidth when mba_sc is enabled (Prarit Bhargava) [1989284] - x86/resctrl: Clean up unused function parameter in rmdir path (Prarit Bhargava) [1989284] - x86/resctrl: Add necessary kernfs_put() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Remove superfluous kernfs_get() calls to prevent refcount leak (Prarit Bhargava) [1989284] - x86/resctrl: Constify kernfs_ops (Prarit Bhargava) [1989284] - x86/resctrl: Correct MBM total and local values (Prarit Bhargava) [1989284] - x86/include/asm/msr-index.h: Add IFS Array test bits (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Update IFS doc (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Implement Array BIST test (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Sysfs interface for Array BIST (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Introduce Array Scan test to IFS (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: IFS cleanup (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Reorganize driver data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Separate ifs_pkg_auth from ifs_data (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add missing kernel-doc entry (Prarit Bhargava) [1971937] - Revert "platform/x86/intel/ifs: Mark as BROKEN" (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add current_batch sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove reload sysfs entry (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata validation (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Use generic microcode headers and functions (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add metadata support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove memory allocation from load path (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove image loading during init (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Return a more appropriate error code (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Remove unused selection (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Mark as BROKEN (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add CPU_SUP_INTEL dependency (Prarit Bhargava) [1971937] - Documentation: In-Field Scan (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_INTEL_IFS (Prarit Bhargava) [1971937] - redhat/configs: Add CONFIG_MICROCODE_LATE_LOADING (Prarit Bhargava) [1971937] - stop_machine: Add stop_core_cpuslocked() for per-core operations (Prarit Bhargava) [1971937] - trace: platform/x86/intel/ifs: Add trace point to track Intel IFS operations (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add IFS sysfs interface (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add scan test support (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Authenticate and copy to secured memory (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Check IFS Image sanity (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Read IFS firmware image (Prarit Bhargava) [1971937] - platform/x86/intel/ifs: Add stub driver for In-Field Scan (Prarit Bhargava) [1971937] - x86/msr-index: Define INTEGRITY_CAPABILITIES MSR (Prarit Bhargava) [1971937] - x86/microcode/core: Return an error only when necessary (Prarit Bhargava) [1971937] - x86/microcode/AMD: Fix mixed steppings support (Prarit Bhargava) [1971937] - x86/microcode/AMD: Add a @cpu parameter to the reloading functions (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter (Prarit Bhargava) [1971937] - x86/microcode: Allow only "1" as a late reload trigger value (Prarit Bhargava) [1971937] - x86/microcode/intel: Print old and new revision during early boot (Prarit Bhargava) [1971937] - x86/microcode/intel: Pass the microcode revision to print_ucode_info() directly (Prarit Bhargava) [1971937] - x86/microcode: Adjust late loading result reporting message (Prarit Bhargava) [1971937] - x86/microcode: Check CPU capabilities after late microcode update correctly (Prarit Bhargava) [1971937] - x86/microcode: Add a parameter to microcode_check() to store CPU capabilities (Prarit Bhargava) [1971937] - x86/microcode: Use the DEVICE_ATTR_RO() macro (Prarit Bhargava) [1971937] - x86/microcode/AMD: Handle multiple glued containers properly (Prarit Bhargava) [1971937] - x86/microcode/AMD: Rename a couple of functions (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not retry microcode reloading on the APs (Prarit Bhargava) [1971937] - x86/microcode/intel: Do not print microcode revision and processor flags (Prarit Bhargava) [1971937] - x86/microcode/intel: Use a reserved field for metasize (Prarit Bhargava) [1971937] - x86/microcode/intel: Add hdr_type to intel_microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Use appropriate type in microcode_sanity_check() (Prarit Bhargava) [1971937] - x86/microcode/intel: Reuse find_matching_signature() (Prarit Bhargava) [1971937] - x86/microcode: Drop struct ucode_cpu_info.valid (Prarit Bhargava) [1971937] - x86/microcode: Do some minor fixups (Prarit Bhargava) [1971937] - x86/microcode: Kill refresh_fw (Prarit Bhargava) [1971937] - x86/microcode: Simplify init path even more (Prarit Bhargava) [1971937] - x86/microcode: Rip out the subsys interface gunk (Prarit Bhargava) [1971937] - x86/microcode/AMD: Track patch allocation size explicitly (Prarit Bhargava) [1971937] - x86/microcode: Print previous version of microcode after reload (Prarit Bhargava) [1971937] - x86/microcode: Remove ->request_microcode_user() (Prarit Bhargava) [1971937] - misc: Mark MICROCODE_MINOR unused (Prarit Bhargava) [1971937] - x86/microcode: Remove unnecessary perf callback (Prarit Bhargava) [1971937] - x86/microcode: Taint and warn on late loading (Prarit Bhargava) [1971937] - x86/microcode: Default-disable late loading (Prarit Bhargava) [1971937] - x86/microcode: Rip out the OLD_INTERFACE (Prarit Bhargava) [1971937] - x86/microcode/intel: Expose collect_cpu_info_early() for IFS (Prarit Bhargava) [1971937] - x86/cpu: Load microcode during restore_processor_state() (Prarit Bhargava) [1971937] - microcode: Replace zero-length arrays with flexible-array members (Prarit Bhargava) [1971937] - x86/microcode: Use the firmware_loader built-in API (Prarit Bhargava) [1971937] - firmware: Export firmware_request_builtin() (Prarit Bhargava) [1971937] - x86/microcode: Replace deprecated CPU-hotplug functions. (Prarit Bhargava) [1971937] - x86/microcode: Make microcode_init() static (Prarit Bhargava) [1971937] - x86/microcode/intel: Check patch signature before saving microcode for early loading (Prarit Bhargava) [1971937] - x86/microcode/amd: Remove unneeded break (Prarit Bhargava) [1971937] - x86/microcode: Do not select FW_LOADER (Prarit Bhargava) [1971937] - x86/microcode: Fix return value for microcode late loading (Prarit Bhargava) [1971937] - docs: fix broken documentation links (Prarit Bhargava) [1971937]- [rt] build kernel-rt-4.18.0-501.rt7.290.el8 [2180997] - x86/cpu: Add Xeon Emerald Rapids to list of CPUs that support PPIN (Prarit Bhargava) [2215040] - redhat: configs: increase CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Audra Mitchell) [2215423] - docs: admin-guide: Add information about intel_pstate active mode (Prarit Bhargava) [2216962] - net/sched: flower: fix possible OOB write in fl_set_geneve_opt() (Davide Caratti) [2216997] {CVE-2023-35788} - scsi: aacraid: Reply queue mapping to CPUs based on IRQ affinity (Tomas Henzl) [2160149] - cifs: missing null pointer check in cifs_mount (Ronnie Sahlberg) [2215018] - cpufreq: intel_pstate: Enable HWP IO boost for all servers (Prarit Bhargava) [2175625] - block: make sure local irq is disabled when calling __blkcg_rstat_flush (Ming Lei) [2208904] - blk-cgroup: Flush stats before releasing blkcg_gq (Ming Lei) [2208904] - scsi: storvsc: Always set no_report_opcodes (Cathy Avery) [2217552] - scsi: storvsc: Don't pass unused PFNs to Hyper-V host (Cathy Avery) [2217552] - scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file (Cathy Avery) [2217552] - dm thin: fix issue_discard to pass GFP_NOIO to __blkdev_issue_discard (Benjamin Marzinski) [2212240] - dm thin metadata: check fail_io before using data_sm (Benjamin Marzinski) [2215418] - dm: don't lock fs when the map is NULL during suspend or resume (Benjamin Marzinski) [2215418] - redhat/configs: enable CONFIG_MANA_INFINIBAND for RHEL (Kamal Heib) [2188737] - RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering memory on first packet (Kamal Heib) [2188737] - RDMA/mana_ib: Prevent array underflow in mana_ib_create_qp_raw() (Kamal Heib) [2188737] - RDMA/mana: Remove redefinition of basic u64 type (Kamal Heib) [2188737] - RDMA/mana_ib: Add a driver for Microsoft Azure Network Adapter (Kamal Heib) [2188737] - net: mana: Define data structures for allocating doorbell page from GDMA (Kamal Heib) [2188737] - Documentation: net: net.core.txrehash is not specific to listening sockets (Antoine Tenart) [2175716] - net: ipv4: use consistent txhash in TIME_WAIT and SYN_RECV (Antoine Tenart) [2175716] - net: tcp: make the txhash available in TIME_WAIT sockets for IPv4 too (Antoine Tenart) [2175716] - net: ipv6: fix skb hash for some RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in RST packets (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in SYN_RECV state (Antoine Tenart) [2175716] - ipv6: tcp: send consistent autoflowlabel in TIME_WAIT state (Antoine Tenart) [2175716] - txhash: fix sk->sk_txrehash default (Antoine Tenart) [2175716] - socket: Don't use u8 type in uapi socket.h (Antoine Tenart) [2175716] - tcp: Change SYN ACK retransmit behaviour to account for rehash (Antoine Tenart) [2175716] - txhash: Add txrehash sysctl description (Antoine Tenart) [2175716] - txhash: Add socket option to control TX hash rethink behavior (Antoine Tenart) [2175716] - txhash: Make rethinking txhash behavior configurable via sysctl (Antoine Tenart) [2175716] - igc: Fix possible system crash when loading module (Corinna Vinschen) [2153370] - igc: Clean the TX buffer and TX descriptor ring (Corinna Vinschen) [2153370] - igc: Avoid transmit queue timeout for XDP (Corinna Vinschen) [2153370] - igc: read before write to SRRCTL register (Corinna Vinschen) [2153370] - igc: Enable and fix RX hash usage by netstack (Corinna Vinschen) [2153370] - igc: Remove obsolete DMA coalescing code (Corinna Vinschen) [2153370] - igc: fix the validation logic for taprio's gate list (Corinna Vinschen) [2153370] - igc: Add ndo_tx_timeout support (Corinna Vinschen) [2153370] - igc: return an error if the mac type is unknown in igc_ptp_systim_to_hwtstamp() (Corinna Vinschen) [2153370] - igc: Remove redundant pci_enable_pcie_error_reporting() (Corinna Vinschen) [2153370] - igc: Fix PPS delta between two synchronized end-points (Corinna Vinschen) [2153370] - igc: Remove reset adapter task for i226 during disable tsn config (Corinna Vinschen) [2153370] - igc: enable Qbv configuration for 2nd GCL (Corinna Vinschen) [2153370] - igc: remove I226 Qbv BaseTime restriction (Corinna Vinschen) [2153370] - igc: Set Qbv start_time and end_time to end_time if not being configured in GCL (Corinna Vinschen) [2153370] - igc: recalculate Qbv end_time by considering cycle time (Corinna Vinschen) [2153370] - igc: allow BaseTime 0 enrollment for Qbv (Corinna Vinschen) [2153370] - igc: Add checking for basetime less than zero (Corinna Vinschen) [2153370] - igc: Use strict cycles for Qbv scheduling (Corinna Vinschen) [2153370] - igc: Enhance Qbv scheduling by using first flag bit (Corinna Vinschen) [2153370] - r8152: fix the autosuspend doesn't work (Jose Ignacio Tornos Martinez) [2159264] - r8152: move setting r8153b_rx_agg_chg_indicate() (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the poor throughput for 2.5G devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix flow control issue of RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add __GFP_NOWARN to big allocations (Jose Ignacio Tornos Martinez) [2159264] - r8152: reduce the control transfer of rtl8152_get_version() (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove rtl_vendor_mode function (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to change cfg for all devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add vendor/device ID pair for Microsoft Devkit (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: no need to blacklist any r8152 devices (Jose Ignacio Tornos Martinez) [2159264] - r8152: add USB device driver for config selection (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add support for Thales Cinterion PLS62-W modem (Jose Ignacio Tornos Martinez) [2159264] - net: usb: cdc_ether: add u-blox 0x1343 composition (Jose Ignacio Tornos Martinez) [2159264] - r8152: Add MAC passthrough support for Lenovo Travel Hub (Jose Ignacio Tornos Martinez) [2159264] - r8152: allow userland to disable multicast (Jose Ignacio Tornos Martinez) [2159264] - r8152: add PID for the Lenovo OneLink+ Dock (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the RX FIFO settings when suspending (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the units of some registers for RTL8156A (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix a WOL issue (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix accessing unset transport header (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add in new Devices that are supported for Mac-Passthru (Jose Ignacio Tornos Martinez) [2159264] - cdc_ether: export usbnet_cdc_zte_rx_fixup (Jose Ignacio Tornos Martinez) [2159264] - USB: zaurus: support another broken Zaurus (Jose Ignacio Tornos Martinez) [2159264] - Revert "net: usb: r8152: Add MAC passthrough support for more Lenovo Docks" (Jose Ignacio Tornos Martinez) [2159264] - r8152: sync ocp base (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the force speed doesn't work for RTL8156 (Jose Ignacio Tornos Martinez) [2159264] - net: usb: r8152: Add MAC passthrough support for more Lenovo Docks (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() for dev->addr_len cases (Jose Ignacio Tornos Martinez) [2159264] - net: usb: use eth_hw_addr_set() instead of ether_addr_copy() (Jose Ignacio Tornos Martinez) [2159264] - r8152: avoid to resubmit rx immediately (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix the maximum number of PLA bp for RTL8153C (Jose Ignacio Tornos Martinez) [2159264] - r8152: fix writing USB_BP2_EN (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix a deadlock by doubly PM resume (Jose Ignacio Tornos Martinez) [2159264] - r8152: Fix potential PM refcount imbalance (Jose Ignacio Tornos Martinez) [2159264] - r8152: store the information of the pipes (Jose Ignacio Tornos Martinez) [2159264] - r8152: support pauseparam of ethtool_ops (Jose Ignacio Tornos Martinez) [2159264] - r8152: Avoid memcpy() over-reading of ETH_SS_STATS (Jose Ignacio Tornos Martinez) [2159264] - r8152: check the informaton of the device (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove some bit operations (Jose Ignacio Tornos Martinez) [2159264] - r8152: redefine REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: remove NCM mode from REALTEK_USB_DEVICE macro (Jose Ignacio Tornos Martinez) [2159264] - r8152: replace return with break for ram code speedup mode timeout (Jose Ignacio Tornos Martinez) [2159264] - r8152: search the configuration of vendor mode (Jose Ignacio Tornos Martinez) [2159264] - r8152: support PHY firmware for RTL8156 series (Jose Ignacio Tornos Martinez) [2159264] - r8152: support new chips (Jose Ignacio Tornos Martinez) [2159264] - r8152: add help function to change mtu (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust rtl8152_check_firmware function (Jose Ignacio Tornos Martinez) [2159264] - r8152: set inter fram gap time depending on speed (Jose Ignacio Tornos Martinez) [2159264] - r8152: adjust the flow of power cut for RTL8153B (Jose Ignacio Tornos Martinez) [2159264] - treewide: Use fallthrough pseudo-keyword (Jose Ignacio Tornos Martinez) [2159264] - nouveau: fix client work fence deletion race (Jocelyn Falempe) [2160452] - drm/mgag200: Fix gamma lut not initialized. (Jocelyn Falempe) [2160452] - drm/amd/display: Fix hang when skipping modeset (Jocelyn Falempe) [2160452] - drm/amd/display: Lowering min Z8 residency time (Jocelyn Falempe) [2160452] - drm/amd/display: Update minimum stutter residency for DCN314 Z8 (Jocelyn Falempe) [2160452] - drm/amd/display: Add minimum Z8 residency debug option (Jocelyn Falempe) [2160452] - drm/i915: disable sampler indirect state in bindless heap (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add Wa_14017856879 (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add workarounds Wa_14017066071 and Wa_14017654203 (Jocelyn Falempe) [2160452] - drm/i915: Add _PICK_EVEN_2RANGES() (Jocelyn Falempe) [2160452] - drm/amd/display: hpd rx irq not working with eDP interface (Jocelyn Falempe) [2160452] - drm/amd/display: merge dc_link.h into dc.h and dc_types.h (Jocelyn Falempe) [2160452] - drm/amd/pm: avoid potential UBSAN issue on legacy asics (Jocelyn Falempe) [2160452] - drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend (Jocelyn Falempe) [2160452] - drm/amdgpu: drop gfx_v11_0_cp_ecc_error_irq_funcs (Jocelyn Falempe) [2160452] - drm/amd/pm: parse pp_handle under appropriate conditions (Jocelyn Falempe) [2160452] - drm/amd/display: Enforce 60us prefetch for 200Mhz DCFCLK modes (Jocelyn Falempe) [2160452] - drm/amdgpu: Fix vram recover doesn't work after whole GPU reset (v2) (Jocelyn Falempe) [2160452] - drm/amdgpu: change gfx 11.0.4 external_id range (Jocelyn Falempe) [2160452] - drm/amdgpu/jpeg: Remove harvest checking for JPEG3 (Jocelyn Falempe) [2160452] - drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy gfx ras (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v11_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini() (Jocelyn Falempe) [2160452] - drm/amdgpu: fix amdgpu_irq_put call trace in gmc_v10_0_hw_fini (Jocelyn Falempe) [2160452] - drm/amd/display: Change default Z8 watermark values (Jocelyn Falempe) [2160452] - drm/amdgpu: drop redundant sched job cleanup when cs is aborted (Jocelyn Falempe) [2160452] - drm/amd/display: fix flickering caused by S/G mode (Jocelyn Falempe) [2160452] - drm/amd/display: fix access hdcp_workqueue assert (Jocelyn Falempe) [2160452] - drm/amd/display: filter out invalid bits in pipe_fuses (Jocelyn Falempe) [2160452] - drm/amd/display: Fix 4to1 MPC black screen with DPP RCO (Jocelyn Falempe) [2160452] - drm/amd/display: Add NULL plane_state check for cursor disable logic (Jocelyn Falempe) [2160452] - drm/panel: otm8009a: Set backlight parent to panel device (Jocelyn Falempe) [2160452] - drm/dsc: fix drm_edp_dsc_sink_output_bpp() DPCD high byte usage (Jocelyn Falempe) [2160452] - drm/i915/dsi: Use unconditional msleep() instead of intel_dsi_msleep() (Jocelyn Falempe) [2160452] - drm/i915: Check pipe source size when using skl+ scalers (Jocelyn Falempe) [2160452] - drm/i915/color: Fix typo for Plane CSC indexes (Jocelyn Falempe) [2160452] - drm/bridge: lt8912b: Fix DSI Video Mode (Jocelyn Falempe) [2160452] - drm/amdgpu: add a missing lock for AMDGPU_SCHED (Jocelyn Falempe) [2160452] - drm/i915/mtl: Add the missing CPU transcoder mask in intel_device_info (Jocelyn Falempe) [2160452] - drm/i915/guc: Actually return an error if GuC version range check fails (Jocelyn Falempe) [2160452] - drm/i915/guc: More debug print updates - UC firmware (Jocelyn Falempe) [2160452] - drm/amd/display: Update bounding box values for DCN321 (Jocelyn Falempe) [2160452] - drm/amd/display: Do not clear GPINT register when releasing DMUB from reset (Jocelyn Falempe) [2160452] - drm/amd/display: Reset OUTBOX0 r/w pointer on DMUB reset (Jocelyn Falempe) [2160452] - drm/amd/display: Fixes for dcn32_clk_mgr implementation (Jocelyn Falempe) [2160452] - drm/amd/display: Return error code on DSC atomic check failure (Jocelyn Falempe) [2160452] - drm/amd/display: Add missing WA and MCLK validation (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Only unregister DSI1 if it exists (Jocelyn Falempe) [2160452] - drm/panel: novatek-nt35950: Improve error handling (Jocelyn Falempe) [2160452] - drm/i915: Fix memory leaks in i915 selftests (Jocelyn Falempe) [2160452] - drm/i915: Make intel_get_crtc_new_encoder() less oopsy (Jocelyn Falempe) [2160452] - drm/amd/display: Fix potential null dereference (Jocelyn Falempe) [2160452] - drm/ttm/pool: Fix ttm_pool_alloc error path (Jocelyn Falempe) [2160452] - drm/i915/pxp: limit drm-errors or warning on firmware API failures (Jocelyn Falempe) [2160452] - drm/i915/pxp: Invalidate all PXP fw sessions during teardown (Jocelyn Falempe) [2160452] - drm/amd/display/dc/dce60/Makefile: Fix previous attempt to silence known override-init warnings (Jocelyn Falempe) [2160452] - accel: Link to compute accelerator subsystem intro (Jocelyn Falempe) [2160452] - drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and adv7535 (Jocelyn Falempe) [2160452] - drm/probe-helper: Cancel previous job before starting new one (Jocelyn Falempe) [2160452] - drm/vgem: add missing mutex_destroy (Jocelyn Falempe) [2160452] - drm/i915/dg2: Drop one PCI ID (Jocelyn Falempe) [2160452] - drm/amd/pm: re-enable the gfx imu when smu resume (Jocelyn Falempe) [2160452] - drm/vmwgfx: Fix Legacy Display Unit atomic drm support (Jocelyn Falempe) [2160452] - drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var (Jocelyn Falempe) [2160452] - redhat: include new drm tests in mod-internals (Jocelyn Falempe) [2160452] - drm/amd/display: build with std=gnu99 (Jocelyn Falempe) [2160452] - overflow: Introduce overflows_type() and castable_to_type() (Jocelyn Falempe) [2160452] - Revert "driver core: make struct bus_type.uevent() take a const *" (Jocelyn Falempe) [2160452] - Revert "iommu: Add a gfp parameter to iommu_map()" (Jocelyn Falempe) [2160452] - Revert "mm: replace vma->vm_flags direct modifications with modifier calls" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.2..v6.3 (Jocelyn Falempe) [2160452] - redhat: include new drm_kunit_helpers in mod-internals (Jocelyn Falempe) [2160452] - drm/i915: build i915 with std=gnu99 (Jocelyn Falempe) [2160452] - drm/amdgpu: Add missing include for ppc64le (Jocelyn Falempe) [2160452] - drm/fb-helper: Add missing include for s390x (Jocelyn Falempe) [2160452] - drm/edid: Add missing include (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: use atomic operations to change the vGPU status" (Jocelyn Falempe) [2160452] - Revert "kunit: Use KUNIT_EXPECT_MEMEQ macro" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_inclusive() when possible" (Jocelyn Falempe) [2160452] - Revert "treewide: use get_random_u32_below() instead of deprecated function" (Jocelyn Falempe) [2160452] - Revert "overflow: Introduce overflows_type() and castable_to_type()" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.1..v6.2 (Jocelyn Falempe) [2160452] - kconfig: disable DRM dynamic debug. (Jocelyn Falempe) [2160452] - drm/vkms: build driver with gnu99 (Jocelyn Falempe) [2160452] - Revert "drm: POC drm on dyndbg - use in core, 2 helpers, 3 drivers." (Jocelyn Falempe) [2160452] - Revert "mm: free device private pages have zero refcount" (Jocelyn Falempe) [2160452] - Revert "mm/memory.c: fix race when faulting a device private page" (Jocelyn Falempe) [2160452] - Revert "drm/i915/gvt: simplify vgpu configuration management" (Jocelyn Falempe) [2160452] - Revert "i915: use the VMA iterator" (Jocelyn Falempe) [2160452] - Revert "drm/i915/userptr: restore probe_range behaviour" (Jocelyn Falempe) [2160452] - Revert "dynamic_dname(): drop unused dentry argument" (Jocelyn Falempe) [2160452] - Revert "i2c: Make remove callback return void" (Jocelyn Falempe) [2160452] - Merge DRM changes from upstream v6.0..v6.1 (Jocelyn Falempe) [2160452] - Enable A64FX_DIAG config option (Charles Mirabile) [2047817] - NMI workaround for GIC irq controllers (Charles Mirabile) [2047817] - arm64: entry: avoid kprobe recursion (Charles Mirabile) [2047817] - soc: a64fx-diag: disable modular build (Charles Mirabile) [2047817] - soc: fujitsu: Add A64FX diagnostic interrupt driver (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority mask handling (Charles Mirabile) [2047817] - irqchip/gic-v3: Refactor ISB + EOIR at ack time (Charles Mirabile) [2047817] - irqchip/gic-v3: Ensure pseudo-NMIs have an ISB between ack and handling (Charles Mirabile) [2047817] - arm64: select TRACE_IRQFLAGS_NMI_SUPPORT (Charles Mirabile) [2047817] - arm64: entry: Save some nops when CONFIG_ARM64_PSEUDO_NMI is not set (Charles Mirabile) [2047817] - irqchip/gic-v3: Fix priority comparison when non-secure priorities are used (Charles Mirabile) [2047817] - arm64: entry: add missing noinstr (Charles Mirabile) [2047817] - arm64: suspend: Use cpuidle context helpers in cpu_suspend() (Charles Mirabile) [2047817] - PSCI: Use cpuidle context helpers in psci_cpu_suspend_enter() (Charles Mirabile) [2047817] - arm64: Convert cpu_do_idle() to using cpuidle context helpers (Charles Mirabile) [2047817] - arm64: Add cpuidle context save/restore helpers (Charles Mirabile) [2047817] - arm64: entry: make NMI entry/exit functions static (Charles Mirabile) [2047817] - arm64: entry: split SDEI entry (Charles Mirabile) [2047817] - arm64: entry: split bad stack entry (Charles Mirabile) [2047817] - arm64: entry: fold el1_inv() into el1h_64_sync_handler() (Charles Mirabile) [2047817] - arm64: entry: handle all vectors with C (Charles Mirabile) [2047817] - arm64: entry: template the entry asm functions (Charles Mirabile) [2047817] - arm64: entry: improve bad_mode() (Charles Mirabile) [2047817] - arm64: entry: move bad_mode() to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: consolidate EL1 exception returns (Charles Mirabile) [2047817] - arm64: entry: organise entry vectors consistently (Charles Mirabile) [2047817] - arm64: entry: organise entry handlers consistently (Charles Mirabile) [2047817] - arm64: entry: convert IRQ+FIQ handlers to C (Charles Mirabile) [2047817] - arm64: entry: add a call_on_irq_stack helper (Charles Mirabile) [2047817] - arm64: entry: move NMI preempt logic to C (Charles Mirabile) [2047817] - arm64: entry: move arm64_preempt_schedule_irq to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: convert SError handlers to C (Charles Mirabile) [2047817] - arm64: entry: unmask IRQ+FIQ after EL0 handling (Charles Mirabile) [2047817] - arm64: remove redundant local_daif_mask() in bad_mode() (Charles Mirabile) [2047817] - arm64: entry: always set GIC_PRIO_PSR_I_SET during entry (Charles Mirabile) [2047817] - arm64: entry: remove test_irqs_unmasked macro (Charles Mirabile) [2047817] - arm64: irq: allow FIQs to be handled (Charles Mirabile) [2047817] - arm64: Always keep DAIF.[IF] in sync (Charles Mirabile) [2047817] - arm64: entry: factor irq triage logic into macros (Charles Mirabile) [2047817] - arm64: irq: rework root IRQ handler registration (Charles Mirabile) [2047817] - arm64: don't use GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - genirq: Allow architectures to override set_handle_irq() fallback (Charles Mirabile) [2047817] - irqchip: Do not blindly select CONFIG_GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: entry: consolidate Cortex-A76 erratum 1463225 workaround (Charles Mirabile) [2047817] - arm64: entry: remove redundant IRQ flag tracing (Charles Mirabile) [2047817] - arm64: entry: suppress W=1 prototype warnings (Charles Mirabile) [2047817] - arm64: sdei: explicitly simulate PAN/UAO entry (Charles Mirabile) [2047817] - arm64: entry: fix EL1 debug transitions (Charles Mirabile) [2047817] - arm64: entry: fix NMI {user, kernel}->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI kernel<->kernel transitions (Charles Mirabile) [2047817] - arm64: ptrace: prepare for EL1 irq/rcu tracking (Charles Mirabile) [2047817] - arm64: entry: fix non-NMI user<->kernel transitions (Charles Mirabile) [2047817] - arm64: entry: move el1 irq/nmi logic to C (Charles Mirabile) [2047817] - arm64: entry: prepare ret_to_user for function call (Charles Mirabile) [2047817] - arm64: entry: move enter_from_user_mode to entry-common.c (Charles Mirabile) [2047817] - arm64: entry: mark entry code as noinstr (Charles Mirabile) [2047817] - arm64: mark idle code as noinstr (Charles Mirabile) [2047817] - arm64: add C wrappers for SET_PSTATE_*() (Charles Mirabile) [2047817] - kgdb: Honour the kprobe blocklist when setting breakpoints (Charles Mirabile) [2047817] - genirq: Add stub for set_handle_irq() when !GENERIC_IRQ_MULTI_HANDLER (Charles Mirabile) [2047817] - arm64: Improve diagnostics when trapping BRK with FAULT_BRK_IMM (Charles Mirabile) [2047817] - arm64/entry: deduplicate SW PAN entry/exit routines (Charles Mirabile) [2047817] - arm64: Prepare arch_nmi_enter() for recursion (Charles Mirabile) [2047817] - arm64: Make debug exception handlers visible from RCU (Charles Mirabile) [2047817] - irqchip: Remove unneeded select IRQ_DOMAIN (Charles Mirabile) [2047817] - net/mlx5e: TC, Fix using eswitch mapping in nic mode (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts cmd only once per mdev (Amir Tzin) [2166015] - net/mlx5e: Move Ethernet driver debugfs to profile init callback (Amir Tzin) [2166015] - net/mlx5e: Do not update SBCM when prio2buffer command is invalid (Amir Tzin) [2166015] - RDMA/mlx5: Use correct device num_ports when modify DC (Amir Tzin) [2166015] - net/mlx5e: Nullify table pointer when failing to create (Amir Tzin) [2166015] - net/mlx5e: Fix error flow in representor failing to add vport rx rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Don't destroy indirect table in split rule (Amir Tzin) [2166015] - net/mlx5: E-switch, Create per vport table based on devlink encap mode (Amir Tzin) [2166015] - net/mlx5e: Don't clone flow post action attributes second time (Amir Tzin) [2166015] - Revert "net/mlx5: Expose vnic diagnostic counters for eswitch managed vports" (Amir Tzin) [2166015] - RDMA/mlx5: Fix flow counter query via DEVX (Amir Tzin) [2166015] - RDMA/mlx5: Check pcie_relaxed_ordering_enabled() in UMR (Amir Tzin) [2166015] - net/mlx5: Fix wrong comment (Amir Tzin) [2166015] - net/mlx5e: Coding style fix, add empty line (Amir Tzin) [2166015] - RDMA/mlx5: Coding style fix reported by checkpatch (Amir Tzin) [2166015] - net/mlx5e: Release the label when replacing existing ct entry (Amir Tzin) [2165914] - net/mlx5: Release tunnel device after tc update skb (Amir Tzin) [2166015] - Revert "net/mlx5: Expose steering dropped packets counter" (Amir Tzin) [2166015] - Revert "net/mlx5e: Don't use termination table when redundant" (Amir Tzin) [2166015] - Revert "net/mlx5: Enable management PF initialization" (Amir Tzin) [2166015] - net/mlx5: E-Switch, Fix an Oops in error handling code (Amir Tzin) [2166015] - net/mlx5: Read the TC mapping of all priorities on ETS query (Amir Tzin) [2166015] - net/mlx5e: Initialize link speed to zero (Amir Tzin) [2166015] - net/mlx5: Fix steering rules cleanup (Amir Tzin) [2166015] - net/mlx5e: Block entering switchdev mode with ns inconsistency (Amir Tzin) [2166015 2166018] - net/mlx5e: Set uplink rep as NETNS_LOCAL (Amir Tzin) [2166015] - IB/mlx5: Add support for 400G_8X lane speed (Amir Tzin) [2166015] - net/mlx5e: TC, Remove error message log print (Amir Tzin) [2166015] - net/mlx5e: TC, fix cloned flow attribute (Amir Tzin) [2166015] - net/mlx5e: TC, fix missing error code (Amir Tzin) [2166015] - net/sched: TC, fix raw counter initialization (Amir Tzin) [2166015] - net/mlx5: Set BREAK_FW_WAIT flag first when removing driver (Amir Tzin) [2166013] - net/mlx5e: Fix cleanup null-ptr deref on encap lock (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix missing set of split_count when forward to ovs internal port (Amir Tzin) [2166013] - net/mlx5: E-switch, Fix wrong usage of source port rewrite in split rules (Amir Tzin) [2166013 2166018] - net/mlx5: Disable eswitch before waiting for VF pages (Amir Tzin) [2166013] - net/mlx5: Fix setting ec_function bit in MANAGE_PAGES (Amir Tzin) [2166013] - net/mlx5e: Don't cache tunnel offloads capability (Amir Tzin) [2166013] - net/mlx5e: Remove hairpin write debugfs files (Amir Tzin) [2166015] - net/mlx5: Remove NULL check before dev_{put, hold} (Amir Tzin) [2166015] - net/mlx5e: TC, Set CT miss to the specific ct action instance (Amir Tzin) [2166015] - net/mlx5e: Rename CHAIN_TO_REG to MAPPED_OBJ_TO_REG (Amir Tzin) [2166015] - net/mlx5: Refactor tc miss handling to a single function (Amir Tzin) [2166015] - net/mlx5: Kconfig: Make tc offload depend on tc skb extension (Amir Tzin) [2166015] - net/sched: Rename user cookie and act cookie (mlx5 hunk only) (Amir Tzin) [2166015] - IB/mlx5: Extend debug control for CC parameters (Amir Tzin) [2166015] - net/mlx5e: Allow offloading of ct 'new' match (Amir Tzin) [2165914 2166015] - net/mlx5e: Implement CT entry update (Amir Tzin) [2165914 2166015] - net: flow_offload: provision conntrack info in ct_metadata(mlx5 hunks only) (Amir Tzin) [2165914 2166015] - net/mlx5e: Fix outdated TLS comment (Amir Tzin) [2166015] - net/mlx5e: Remove unused function mlx5e_sq_xmit_simple (Amir Tzin) [2166015] - net/mlx5: Simplify eq list traversal (Amir Tzin) [2166015] - net/mlx5e: Switch to using napi_build_skb() (Amir Tzin) [2166015] - RDMA/mlx5: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5e: Use query_special_contexts for mkeys (Amir Tzin) [2166015] - net/mlx5: Change define name for 0x100 lkey value (Amir Tzin) [2166015] - net/mlx5: Expose bits for querying special mkeys (Amir Tzin) [2166015] - RDMA/mlx5: Use rdma_umem_for_each_dma_block() (Amir Tzin) [2166015] - net/mlx5e: TC, fix return value check in mlx5e_tc_act_stats_create() (Amir Tzin) [2166015] - net/mlx5e: TC, support per action stats (Amir Tzin) [2166015] - net/mlx5e: TC, map tc action cookie to a hw counter (Amir Tzin) [2166015] - net/mlx5e: TC, store tc action cookies per attr (Amir Tzin) [2166015] - net/mlx5e: TC, add hw counter to branching actions (Amir Tzin) [2166015] - RDMA/mlx5: Track netdev to avoid deadlock during netdev notifier unregister (Amir Tzin) [2166015] - net/mlx5e: Propagate an internal event in case uplink netdev changes (Amir Tzin) [2166015] - net/mlx5e: Fix trap event handling (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for unrecognized string (Amir Tzin) [2166015] - net/mlx5: fw_tracer, Add support for strings DB update event (Amir Tzin) [2166015] - net/mlx5: fw_tracer, allow 0 size string DBs (Amir Tzin) [2166015] - net/mlx5: fw_tracer: Fix debug print (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant assignment of size (Amir Tzin) [2166015] - net/mlx5: fs_core, Remove redundant variable err (Amir Tzin) [2166015] - net/mlx5: fs, Remove redundant vport_number assignment (Amir Tzin) [2166015] - net/mlx5e: Remove redundant code for handling vlan actions (Amir Tzin) [2166015 2166018] - net/mlx5: fw reset: Skip device ID check if PCI link up failed (Amir Tzin) [2166015] - net/mlx5: Remove redundant health work lock (Amir Tzin) [2166015] - mlx5: reduce stack usage in mlx5_setup_tc (Amir Tzin) [2166015] - net/mlx5e: Trigger NAPI after activating an SQ (Amir Tzin) [2166015] - net/mlx5e: IPoIB, Add support for XDR speed (Amir Tzin) [2166015] - net/mlx5: Lag, Move mpesw related definitions to mpesw.h (Amir Tzin) [2166015] - net/mlx5: Lag, Use flag to check for shared FDB mode (Amir Tzin) [2166015] - net/mlx5: Lag, Remove redundant bool allocation on the stack (Amir Tzin) [2166015] - net/mlx5: Lag, Use mlx5_lag_dev() instead of derefering pointers (Amir Tzin) [2166015] - net/mlx5: Lag, Update multiport eswitch check to log an error (Amir Tzin) [2166015] - net/mlx5: Add firmware support for MTUTC scaled_ppm frequency adjustments (Amir Tzin) [2166015] - net/mlx5: Add hardware extended range support for PTP adjtime and adjphase (Amir Tzin) [2166015] - net/mlx5: Add adjphase function to support hardware-only offset control (Amir Tzin) [2166015] - net/mlx5: Geneve, Fix handling of Geneve object id as error code (Amir Tzin) [2166015] - net/mlx5e: Verify flow_source cap before using it (Amir Tzin) [2166015 2166018] - net/mlx5: ECPF, wait for VF pages only after disabling host PFs (Amir Tzin) [2166015] - mlx5: fix possible ptp queue fifo use-after-free (Amir Tzin) [2166015] - mlx5: fix skb leak while fifo resync and push (Amir Tzin) [2166015] - net/mlx5: Fix memory leak in error flow of port set buffer (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in TLS (Amir Tzin) [2166015] - net/mlx5e: Remove incorrect debugfs_create_dir NULL check in hairpin (Amir Tzin) [2166015] - net/mlx5: Enhance debug print in page allocation failure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Improve connection rate by using fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Keep only one bulk of full available DEKs (Amir Tzin) [2166015] - net/mlx5: Add async garbage collector for DEK bulk (Amir Tzin) [2166015] - net/mlx5: Reuse DEKs after executing SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Use bulk allocation for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Add bulk allocation and modify_dek operation (Amir Tzin) [2166015] - net/mlx5: Add support SYNC_CRYPTO command (Amir Tzin) [2166015] - net/mlx5: Add new APIs for fast update encryption key (Amir Tzin) [2166015] - net/mlx5: Refactor the encryption key creation (Amir Tzin) [2166015] - net/mlx5: Add const to the key pointer of encryption key creation (Amir Tzin) [2166015] - net/mlx5: Prepare for fast crypto key update if hardware supports it (Amir Tzin) [2166015] - net/mlx5: Change key type to key purpose (Amir Tzin) [2166015] - net/mlx5: Add IFC bits and enums for crypto key (Amir Tzin) [2166015] - net/mlx5: Add IFC bits for general obj create param (Amir Tzin) [2166015] - net/mlx5: Header file for crypto (Amir Tzin) [2166015] - net/mlx5e: Use read lock for eswitch get callbacks (Amir Tzin) [2166015 2166018] - net/mlx5e: Remove redundant allocation of spec in create indirect fwd group (Amir Tzin) [2165994 2166015] - net/mlx5e: Support Geneve and GRE with VF tunnel offload (Amir Tzin) [2165994 2166015 2166018] - net/mlx5: E-Switch, Fix typo for egress (Amir Tzin) [2166015] - net/mlx5e: Warn when destroying mod hdr hash table that is not empty (Amir Tzin) [2166015] - net/mlx5e: TC, Use common function allocating flow mod hdr or encap mod hdr (Amir Tzin) [2166015] - net/mlx5e: TC, Add tc prefix to attach/detach hdr functions (Amir Tzin) [2166015] - net/mlx5e: TC, Pass flow attr to attach/detach mod hdr functions (Amir Tzin) [2166015] - net/mlx5: E-switch, Remove redundant comment about meta rules (Amir Tzin) [2166015] - net/mlx5: Suppress error logging on UCTX creation (Amir Tzin) [2166015] - net/mlx5e: Suppress Send WQEBB room warning for PAGE_SIZE >= 16KB (Amir Tzin) [2166015] - net/mlx5e: Use kzalloc() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166015] - net/mlx5: remove redundant ret variable (Amir Tzin) [2166015] - net/mlx5e: Replace 0-length array with flexible array (Amir Tzin) [2166015] - net/mlx5e: Replace zero-length array with flexible-array member (Amir Tzin) [2166015] - net/mlx5: Prevent high-rate FW commands from populating all slots (Amir Tzin) [2166015] - net/mlx5: Introduce and use opcode getter in command interface (Amir Tzin) [2166015] - net/mlx5: Enable management PF initialization (Amir Tzin) [2166015] - net/mlx5e: Add hairpin debugfs files (Amir Tzin) [2166015] - net/mlx5e: Add flow steering debugfs directory (Amir Tzin) [2166015] - net/mlx5e: Add hairpin params structure (Amir Tzin) [2166015] - net/mlx5e: kTLS, Add debugfs (Amir Tzin) [2166015] - net/mlx5e: Add Ethernet driver debugfs (Amir Tzin) [2166015] - net/mlx5e: Update shared buffer along with device buffer changes (Amir Tzin) [2166015] - net/mlx5e: Add API to query/modify SBPR and SBCM registers (Amir Tzin) [2166015] - net/mlx5: Expose shared buffer registers bits and structs (Amir Tzin) [2166015] - net/mlx5: Serialize module cleanup with reload and remove (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Zero consumer index when reloading the tracer (Amir Tzin) [2166013] - net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers (Amir Tzin) [2166013] - net/mlx5: Expose SF firmware pages counter (Amir Tzin) [2166013] - net/mlx5: Store page counters in a single array (Amir Tzin) [2166013] - net/mlx5e: IPoIB, Show unknown speed instead of error (Amir Tzin) [2166013] - net/mlx5e: Fix crash unsetting rx-vlan-filter in switchdev mode (Amir Tzin) [2055530 2166013] - net/mlx5: Bridge, fix ageing of peer FDB entries (Amir Tzin) [2166013] - net/mlx5: DR, Fix potential race in dr_rule_create_rule_nic (Amir Tzin) [2166013] - net/mlx5e: Update rx ring hw mtu upon each rx-fcs flag change (Amir Tzin) [2166013] - net/mlx5e: Don't support encap rules with gbp option (Amir Tzin) [2166013] - net/mlx5e: Fix memory leak on updating vport counters (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, Restore pkt rate policing support (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, ignore match level for post meter rules (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Fix 'stack frame size exceeds limit' error in dr_rule (Amir Tzin) [2166013] - net/mlx5: Lag, fix failure to cancel delayed bond work (Amir Tzin) [2166013] - net/mlx5e: Fix RX reporter for XSK RQs (Amir Tzin) [2166013] - net/mlx5: Expose steering dropped packets counter (Amir Tzin) [2166013] - net/mlx5: Refactor and expand rep vport stat group (Amir Tzin) [2165677 2166013] - net/mlx5e: TC, add support for meter mtu offload (Amir Tzin) [2165893 2166013 2166018] - net/mlx5e: meter, add mtu post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5e: meter, refactor to allow multiple post meter tables (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add support for range match action (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add function that tells if STE miss addr has been initialized (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Some refactoring of miss address handling (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Manage definers with refcounts (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Handle FT action in a separate function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Rework is_fw_table function (Amir Tzin) [2165893 2166013] - net/mlx5: DR, Add functions to create/destroy MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5: fs, add match on ranges API (Amir Tzin) [2165893 2166013] - net/mlx5: mlx5_ifc updates for MATCH_DEFINER general object (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, allow meter jump control action (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, init post meter rules with branching attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, rename post_meter actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branching action with target attr (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, initialize branch flow attributes (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, set control params for branching actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, validate action list per attribute (Amir Tzin) [2165893 2166013] - net/mlx5e: Adjust function actions_match_supported() to upstream. (Amir Tzin) [2166006] - net/mlx5e: TC, add terminating actions (Amir Tzin) [2165893 2166013] - net/mlx5e: TC, reuse flow attribute post parser processing (Amir Tzin) [2165893 2166013] - net/mlx5: fs, assert null dest pointer when dest_num is 0 (Amir Tzin) [2165893 2166013] - net/mlx5e: E-Switch, handle flow attribute with no destinations (Amir Tzin) [2165893 2166013 2166018] - RDMA/mlx5: Remove not-used IB_FLOW_SPEC_IB define (Amir Tzin) [2166013] - RDMA/mlx5: no need to kfree NULL pointer (Amir Tzin) [2166013] - net/mlx5e: TC, Add offload support for trap with additional actions (Amir Tzin) [2166013 2166018] - net/mlx5e: Do early return when setup vports dests for slow path flow (Amir Tzin) [2166013 2166018] - net/mlx5e: Support devlink reload of IPsec core (Amir Tzin) [2166013] - net/mlx5: Remove redundant check (Amir Tzin) [2166013] - net/mlx5e: Don't use termination table when redundant (Amir Tzin) [2166013] - net/mlx5: Remove unused ctx variables (Amir Tzin) [2166013] - net/mlx5e: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Amir Tzin) [2166013] - net/mlx5e: Remove unneeded io-mapping.h #include (Amir Tzin) [2166013] - net/mlx5e: CT, optimize pre_ct table lookup (Amir Tzin) [2166013] - net/mlx5e: kTLS, Use a single async context object per a callback bulk (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unnecessary per-callback completion (Amir Tzin) [2166013] - net/mlx5e: kTLS, Remove unused work field (Amir Tzin) [2166013] - net/mlx5e: TC, Remove redundant WARN_ON() (Amir Tzin) [2166013] - net/mlx5e: Add error flow when failing update_rx (Amir Tzin) [2166013] - net/mlx5e: Move params kernel log print to probe function (Amir Tzin) [2166013] - net/mlx5e: Support enhanced CQE compression (Amir Tzin) [2166013] - net/mlx5e: Use clamp operation instead of open coding it (Amir Tzin) [2166013] - net/mlx5e: remove unused list in arfs (Amir Tzin) [2166013] - net/mlx5: Expose vhca_id to debugfs (Amir Tzin) [2166013] - net/mlx5: Unregister traps on driver unload flow (Amir Tzin) [2166013] - net/mlx5: Fix spelling mistake "destoy" -> "destroy" (Amir Tzin) [2166013] - net/mlx5: Bridge, Use debug instead of warn if entry doesn't exists (Amir Tzin) [2166013] - RDMA/mlx5: Change debug log level for remote access error syndromes (Amir Tzin) [2166013] - ptp: mlx5: convert to .adjfine and adjust_by_scaled_ppm (Amir Tzin) [2166013] - net/mlx5: DR, Remove the buddy used_list (Amir Tzin) [2166013] - net/mlx5: DR, Keep track of hot ICM chunks in an array instead of list (Amir Tzin) [2166013] - net/mlx5: DR, Lower sync threshold for ICM hot memory (Amir Tzin) [2166013] - net/mlx5: DR, Allocate htbl from its own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Allocate icm_chunks from their own slab allocator (Amir Tzin) [2166013] - net/mlx5: DR, Manage STE send info objects in pool (Amir Tzin) [2166013] - net/mlx5: DR, In rehash write the line in the entry immediately (Amir Tzin) [2166013] - net/mlx5: DR, Handle domain memory resources init/uninit separately (Amir Tzin) [2166013] - net/mlx5: DR, Initialize chunk's ste_arrays at chunk creation (Amir Tzin) [2166013] - net/mlx5: DR, For short chains of STEs, avoid allocating ste_arr dynamically (Amir Tzin) [2166013] - net/mlx5: DR, Remove unneeded argument from dr_icm_chunk_destroy (Amir Tzin) [2166013] - net/mlx5: DR, Check device state when polling CQ (Amir Tzin) [2166013] - net/mlx5: DR, In destroy flow, free resources even if FW command failed (Amir Tzin) [2166013] - net/mlx5: Add support for NPPS with real time mode (Amir Tzin) [2166006] - net/mlx5: Expose NPPS related registers (Amir Tzin) [2166006] - net/mlx5e: Use kvfree() in mlx5e_accel_fs_tcp_create() (Amir Tzin) [2166006] - net/mlx5e: Remove leftovers from old XSK queues enumeration (Amir Tzin) [2166006] - net/mlx5: Lag, avoid lockdep warnings (Amir Tzin) [2166006] - net/mlx5: Update fw fatal reporter state on PCI handlers successful recover (Amir Tzin) [2166006] - net/mlx5: Make ASO poll CQ usable in atomic context (Amir Tzin) [2166006] - net/mlx5: E-Switch, Return EBUSY if can't get mode lock (Amir Tzin) [2166006] - net/mlx5: E-switch, Don't update group if qos is not enabled (Amir Tzin) [2166006] - net/mlx5: E-Switch, Allow offloading fwd dest flow table with vport (Amir Tzin) [2166006 2166018] - net/mlx5: Set default grace period based on function type (Amir Tzin) [2166006] - net/mlx5: Start health poll at earlier stage of driver load (Amir Tzin) [2166006] - net/mlx5e: Expose rx_oversize_pkts_buffer counter (Amir Tzin) [2166006] - net/mlx5: Remove from FPGA IFC file not-needed definitions (Amir Tzin) [2166006] - net/mlx5: Remove unused structs (Amir Tzin) [2166006] - net/mlx5: Remove unused functions (Amir Tzin) [2166006] - net/mlx5: detect and enable bypass port select flow table (Amir Tzin) [2166006] - net/mlx5: Lag, enable hash mode by default for all NICs (Amir Tzin) [2166006] - net/mlx5: Lag, set active ports if support bypass port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Don't set tx affinity when lag is in hash mode (Amir Tzin) [2166006] - net/mlx5: add IFC bits for bypassing port select flow table (Amir Tzin) [2166006] - RDMA/mlx5: Move function mlx5_core_query_ib_ppcnt() to mlx5_ib (Amir Tzin) [2166006] - IB/mlx5: Support querying eswitch functions from DEVX (Amir Tzin) [2166006] - net: ethernet: move from strlcpy with unused retval to strscpy (mlx5 hunks only) (Amir Tzin) [2166006] - net/mlx5e: Do not use err uninitialized in mlx5e_rep_add_meta_tunnel_rule() (Amir Tzin) [2166006] - IB/mlx5: Remove duplicate header inclusion related to ODP (Amir Tzin) [2166006] - net/mlx5: TC, Add support for SF tunnel offload (Amir Tzin) [2166006] - net/mlx5: E-Switch, Move send to vport meta rule creation (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Split creating fdb tables into smaller chunks (Amir Tzin) [2166006 2166018] - net/mlx5: E-Switch, Add default drop rule for unmatched packets (Amir Tzin) [2166006 2166018] - net/mlx5: Adjust function mlx5_eswitch_inline_mode_get() location (Amir Tzin) [2166006] - net/mlx5e: Completely eliminate priv from fs.h (Amir Tzin) [2166006] - net/mlx5e: Make all ttc functions of en_fs get fs struct as argument (Amir Tzin) [2166006] - net/mlx5e: Make flow steering arfs independent of priv (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering debug macros (Amir Tzin) [2166006] - net/mlx5e: Separate ethtool_steering from fs.h and make private (Amir Tzin) [2166006] - net/mlx5e: Directly get flow_steering struct as input when init/cleanup ethtool steering (Amir Tzin) [2166006] - Revert "[netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup" (Amir Tzin) [2166006] - net/mlx5e: Convert ethtool_steering member of flow_steering struct to pointer (Amir Tzin) [2166006] - net/mlx5e: Drop priv argument of ptp function in en_fs (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tcp from en.h (Amir Tzin) [2166006] - net/mlx5e: Decouple fs_tt_redirect from en.h (Amir Tzin) [2166006] - net/mlx5e: Introduce flow steering API (Amir Tzin) [2166006] - IB/mlx5: Call io_stop_wc() after writing to WC MMIO (Amir Tzin) [2166006]- [rt] build kernel-rt-4.18.0-500.rt7.289.el8 [2180997] - mm: page_counter: mitigate consequences of a page_counter underflow (Ty Berry) [2196726] - ceph: fix decoding of client session messages flags (Xiubo Li) [2213062] - net: stmmac: propagate feature flags to vlan (Corinna Vinschen) [2174701] - KVM: Avoid illegal stage2 mapping on invalid memory slot (Gavin Shan) [2190376] - perf/x86/rapl: Add support for Intel Emerald Rapids (Michael Petlan) [2165766] - s390/dasd: Use correct lock while counting channel queue length (Tobias Huschle) [2215889] - inotify: show inotify mask flags in proc fdinfo (Andrey Albershteyn) [2163455] - scsi: scsi_transport_fc: Add an additional flag to fc_host_fpin_rcv() (Ewan D. Milne) [2169276] - perf bench: Fix numa bench to fix usage of affinity for machines with #CPUs > 1K (Michael Petlan) [2134284] - perf bench: Fix numa testcase to check if CPU used to bind task is online (Michael Petlan) [2134284] - powerpc/64s: Make POWER10 and later use pause_short in cpu_relax loops (avchouha) [2188343] - powerpc: add ISA v3.0 / v3.1 wait opcode macro (avchouha) [2188343] - scsi: lpfc: Account for fabric domain ctlr device loss recovery (Dick Kennedy) [2213027] - scsi: lpfc: Clear NLP_IN_DEV_LOSS flag if already in rediscovery (Dick Kennedy) [2213027] - scsi: lpfc: Fix use-after-free rport memory access in lpfc_register_remote_port() (Dick Kennedy) [2213027] - PCI: hv: Add a per-bus mutex state_lock (Vitaly Kuznetsov) [2184863] - Revert "PCI: hv: Fix a timing issue which causes kdump to fail occasionally" (Vitaly Kuznetsov) [2184863] - PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition in hv_irq_unmask() that can cause panic (Vitaly Kuznetsov) [2184863] - PCI: hv: Fix a race condition bug in hv_pci_query_relations() (Vitaly Kuznetsov) [2184863] - RHEL-only: KVM: arm64: Fixes comments (Shaoqin Huang) [2202988] - KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg() (Shaoqin Huang) [2202988] - KVM: selftests: arm64: Fix pte encode/decode for PA bits > 48 (Shaoqin Huang) [2202988] - KVM: arm64: selftests: Use FIELD_GET() to extract ID register fields (Shaoqin Huang) [2202988] - tools: Copy bitfield.h from the kernel sources (Shaoqin Huang) [2202988] - x86/platform/uv: Update UV[23] platform code for SNC (Frank Ramsay) [2163467] - x86/platform/uv: Remove remaining BUG_ON() and BUG() calls (Frank Ramsay) [2163467] - x86/platform/uv: UV support for sub-NUMA clustering (Frank Ramsay) [2163467] - x86: uv: uv_hub.h: Delete duplicated word (Frank Ramsay) [2163467] - x86/platform/uv: Helper functions for allocating and freeing conversion tables (Frank Ramsay) [2163467] - x86/platform/uv: When searching for minimums, start at INT_MAX not 99999 (Frank Ramsay) [2163467] - x86/platform/uv: Fix printed information in calc_mmioh_map (Frank Ramsay) [2163467] - x86/platform/uv: Introduce helper function uv_pnode_to_socket. (Frank Ramsay) [2163467] - x86/platform/uv: Add platform resolving #defines for misc GAM_MMIOH_REDIRECT* (Frank Ramsay) [2163467] - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors (Izabela Bakollari) [2170629] - IB/hfi1: Fix math bugs in hfi1_can_pin_pages() (Izabela Bakollari) [2170629] - IB/hfi1: Restore allocated resources on failed copyout (Izabela Bakollari) [2170629] - IB/hfi1: Use dma_mmap_coherent for matching buffers (Izabela Bakollari) [2170629] - IB/hfi1: Update RMT size calculation (Izabela Bakollari) [2170629] - IB/hfi1: Split IB counter allocation (Izabela Bakollari) [2170629] - IB/hfi1: Improve TID validity checking (Izabela Bakollari) [2170629] - IB/hfi1: Consolidate the creation of user TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Assign npages earlier (Izabela Bakollari) [2170629] - IB/hfi1: Fix expected receive setup error exit issues (Izabela Bakollari) [2170629] - IB/hfi1: Reserve user expected TIDs (Izabela Bakollari) [2170629] - IB/hfi1: Reject a zero-length user expected buffer (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix doc for hfi1_free_ctxt (Izabela Bakollari) [2170629] - RDMA/hfi1: use sysfs_emit() to instead of scnprintf() (Izabela Bakollari) [2170629] - RDMA/hfi1: Fix error return code in parse_platform_config() (Izabela Bakollari) [2170629] - IB/hfi1: Switch to netif_napi_add() (Izabela Bakollari) [2170629] - RDMA/hfi: Decrease PCI device reference count in error path (Izabela Bakollari) [2170629] - RDMA/hfi1: don't pass bogus GFP_ flags to dma_alloc_coherent (Izabela Bakollari) [2170629] - IB/hfi1: Replace 1-element array with singleton (Izabela Bakollari) [2170629] - RDMA/opa_vnic: fix spelling typo in comment (Izabela Bakollari) [2170629] - IB/hfi1: Use skb_put_data() instead of skb_put/memcpy pair (Izabela Bakollari) [2170629] - IB/hfi1: remove rc_only_opcode and uc_only_opcode declarations (Izabela Bakollari) [2170629] - RDMA/hfi1: fix repeated words in comments (Izabela Bakollari) [2170629] - RDMA/hfi1: Remove the unneeded result variable (Izabela Bakollari) [2170629] - IB: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2170629] - perf intel-pt: Add documentation for Event Trace and TNT disable (Michael Petlan) [2154066] - perf scripts python: export-to-postgresql.py: Export all sample flags (Michael Petlan) [2154066] - perf scripts python: export-to-sqlite.py: Export all sample flags (Michael Petlan) [2154066] - perf scripting python: Add all sample flags to DB export (Michael Petlan) [2154066] - perf scripts python: intel-pt-events.py: Add Event Trace (Michael Petlan) [2154066] - perf script: Display new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf script: Display Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf script: Display Intel PT CFE (Control Flow Event) / EVD (Event Data) synthesized event (Michael Petlan) [2154066] - perf intel-pt: Force 'quick' mode when TNT (Taken/Not-Taken packet) is disabled (Michael Petlan) [2154066] - perf intel-pt: Synthesize new D (Intr Disabled) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf intel-pt: Synthesize iflag event (Michael Petlan) [2154066] - perf intel-pt: Synthesize CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: Record Event Trace capability flag (Michael Petlan) [2154066] - perf auxtrace: Add itrace option "I" (Michael Petlan) [2154066] - perf tools: Define new D (Intr Disable) and t (Intr Toggle) flags (Michael Petlan) [2154066] - perf tools: Define Intel PT iflag synthesized event (Michael Petlan) [2154066] - perf tools: Define Intel PT CFE (Control Flow Event) / EVD (Event Data) event (Michael Petlan) [2154066] - perf intel-pt: decoder: Add MODE.Exec IFLAG processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Add CFE (Control Flow Event) and EVD (Event Data) processing (Michael Petlan) [2154066] - perf intel-pt: decoder: Factor out clearing of FUP (Flow Update) event variables (Michael Petlan) [2154066] - perf intel-pt: Fix error timestamp setting on the decoder error path (Michael Petlan) [2154066] - perf intel-pt: Fix missing 'instruction' events with 'q' option (Michael Petlan) [2154066] - perf intel-pt: Fix next 'err' value, walking trace (Michael Petlan) [2154066] - perf intel-pt: Fix state setting when receiving overflow (OVF) packet (Michael Petlan) [2154066] - perf intel-pt: Fix intel_pt_fup_event() assumptions about setting state type (Michael Petlan) [2154066] - perf intel-pt: Fix sync state when a PSB (synchronization) packet is found (Michael Petlan) [2154066] - perf intel-pt: Fix some PGE (packet generation enable/control flow packets) usage (Michael Petlan) [2154066] - perf intel-pt: decoder: Add config bit definitions (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add MODE.Exec IFLAG bit (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Add CFE and EVD packets (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder: Remove misplaced linebreak (Michael Petlan) [2154066] - perf intel-pt: pkt-decoder-test: Fix scope of test_data (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for disabling TNTs (Michael Petlan) [2154066] - perf/x86/intel/pt: Add a capability and config bit for event tracing (Michael Petlan) [2154068] - container_of: Update header inclusions (Desnes Nunes) [2196368] - media: netup_unidvb: fix irq init by register it at the end of probe (Desnes Nunes) [2196368] - media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address (Desnes Nunes) [2196368] - media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer (Desnes Nunes) [2196368] - media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer() (Desnes Nunes) [2196368] - media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - Revert "usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS" (Desnes Nunes) [2196368] - usb: typec: Don't try to register component master without components (Desnes Nunes) [2196368] - usb: typec: Only attempt to link USB ports if there is fwnode (Desnes Nunes) [2196368] - usb: core: Unregister device on component_add() failure (Desnes Nunes) [2196368] - usb: core: add quirk for Alcor Link AK9563 smartcard reader (Desnes Nunes) [2196368] - USB: new quirk for Dell Gen 2 devices (Desnes Nunes) [2196368] - USB: quirks: add STRING quirk for VCOM device (Desnes Nunes) [2196368] - USB: quirks: add a Realtek card reader (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix probe pin assign check (Desnes Nunes) [2196368] - usb: typec: ucsi: Don't attempt to resume the ports before they exist (Desnes Nunes) [2196368] - USB: misc: iowarrior: fix up header size for USB_DEVICE_ID_CODEMERCS_IOW100 (Desnes Nunes) [2196368] - usb: host: ehci-fsl: Fix module alias (Desnes Nunes) [2196368] - usb: core: hub: disable autosuspend for TI TUSB8041 (Desnes Nunes) [2196368] - USB: fix misleading usb_set_intfdata() kernel doc (Desnes Nunes) [2196368] - usb: typec: tcpm: Fix altmode re-registration causes sysfs create fail (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Use proper macro for pin assignment check (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Fix pin assignment calculation (Desnes Nunes) [2196368] - usb: typec: altmodes/displayport: Add pin assignment helper (Desnes Nunes) [2196368] - usb: ucsi: Ensure connector delayed work items are flushed (Desnes Nunes) [2196368] - xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables (Desnes Nunes) [2196368] - usb: acpi: add helper to check port lpm capability using acpi _DSM (Desnes Nunes) [2196368] - xhci: Add a flag to disable USB3 lpm on a xhci root port level. (Desnes Nunes) [2196368] - xhci: Add update_hub_device override for PCI xHCI hosts (Desnes Nunes) [2196368] - xhci: Fix null pointer dereference when host dies (Desnes Nunes) [2196368] - usb: xhci: Check endpoint is valid before dereferencing it (Desnes Nunes) [2196368] - xhci-pci: set the dma max_seg_size (Desnes Nunes) [2196368] - usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05CN (SG) modem (Desnes Nunes) [2196368] - USB: serial: cp210x: add SCALANCE LPE-9000 device id (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200U modem (Desnes Nunes) [2196368] - USB: serial: qcserial: add EM9191 QDL support (Desnes Nunes) [2196368] - USB: serial: option: add prod. id for Quectel EG91 (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx composition 0x1204 (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (RS) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (GR) modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G (CS) modem (Desnes Nunes) [2196368] - thunderbolt: Disable XDomain lane 1 only in software connection manager (Desnes Nunes) [2196368] - thunderbolt: Use correct function to calculate maximum USB3 link rate (Desnes Nunes) [2196368] - thunderbolt: Do not call PM runtime functions in tb_retimer_scan() (Desnes Nunes) [2196368] - Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout" (Desnes Nunes) [2196368] - thunderbolt: Do not report errors if on-board retimers are found (Desnes Nunes) [2196368] - treewide: Convert del_timer*() to timer_shutdown*() (Desnes Nunes) [2196368] - USB: core: export usb_cache_string() (Desnes Nunes) [2196368] - usb: ulpi: defer ulpi_register on ulpi_read_id timeout (Desnes Nunes) [2196368] - usb: storage: Add check for kcalloc (Desnes Nunes) [2196368] - USB: sisusbvga: use module_usb_driver() (Desnes Nunes) [2196368] - USB: sisusbvga: rename sisusb.c to sisusbvga.c (Desnes Nunes) [2196368] - USB: sisusbvga: remove console support (Desnes Nunes) [2196368] - media: Switch to use dev_err_probe() helper (Desnes Nunes) [2196368] - media: uvcvideo: Fix memory leak in uvc_gpio_parse (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use flex array destination for memcpy() (Desnes Nunes) [2196368] - media: usb: pwc-uncompress: Use struct_size() helper in pwc_decompress() (Desnes Nunes) [2196368] - firmware_loader: fix up to_fw_sysfs() to preserve const (Desnes Nunes) [2196368] - usb.h: take advantage of container_of_const() (Desnes Nunes) [2196368] - device.h: move kobj_to_dev() to use container_of_const() (Desnes Nunes) [2196368] - container_of: add container_of_const() that preserves const-ness of the pointer (Desnes Nunes) [2196368] - driver core: allow kobj_to_dev() to take a const pointer (Desnes Nunes) [2196368] - container_of: remove container_of_safe() (Desnes Nunes) [2196368] - linux/container_of.h: switch to static_assert (Desnes Nunes) [2196368] - media: dvb-usb: m920x: make read-only arrays static const (Desnes Nunes) [2196368] - net: thunderbolt: Use bitwise types in the struct thunderbolt_ip_frame_header (Desnes Nunes) [2196368] - net: thunderbolt: Switch from __maybe_unused to pm_sleep_ptr() etc (Desnes Nunes) [2196368] - USB: serial: f81534: fix division by zero on line-speed change (Desnes Nunes) [2196368] - xhci: remove unused stream_id parameter from xhci_handle_halted_endpoint() (Desnes Nunes) [2196368] - xhci: Prevent infinite loop in transaction errors recovery for streams (Desnes Nunes) [2196368] - xhci: disable U3 suspended ports in S4 hibernate poweroff_late stage (Desnes Nunes) [2196368] - USB: hcd-pci: Fully suspend across freeze/thaw cycle (Desnes Nunes) [2196368] - USB: core: Disable remote wakeup for freeze/quiesce (Desnes Nunes) [2196368] - xhci: export two xhci_hub functions for xhci-pci module usage (Desnes Nunes) [2196368] - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N (Desnes Nunes) [2196368] - xhci: print warning when HCE was set (Desnes Nunes) [2196368] - Revert "xhci: Convert to use list_count()" (Desnes Nunes) [2196368] - xhci: Convert to use list_count() (Desnes Nunes) [2196368] - usb: typec: Add partner PD object wrapper (Desnes Nunes) [2196368] - usb: xhci-mtk: fix leakage of shared hcd when fail to set wakeup irq (Desnes Nunes) [2196368] - usb: add usb_set_intfdata() documentation (Desnes Nunes) [2196368] - usb: host: fix a typo in ehci.h (Desnes Nunes) [2196368] - usb: core: hcd: Fix return value check in usb_hcd_setup_local_mem() (Desnes Nunes) [2196368] - usb: typec: ucsi: Resume in separate work (Desnes Nunes) [2196368] - usb: roles: fix of node refcount leak in usb_role_switch_is_parent() (Desnes Nunes) [2196368] - net: thunderbolt: Use kmap_local_page() instead of kmap_atomic() (Desnes Nunes) [2196368] - media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer() (Desnes Nunes) [2196368] - media: dvb-usb: dib0700_devices: Remove unused struct dibx090p_adc (Desnes Nunes) [2196368] - media: dib0700: remove orphan dvb_usb_dib0700_ir_proto declaration (Desnes Nunes) [2196368] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init() (Desnes Nunes) [2196368] - media: dvb-core: Enhance shared multi-frontend support (Desnes Nunes) [2196368] - media: docs: fix minor typos (Desnes Nunes) [2196368] - media: dvb-frontends: a8293: fix LNB powerup failure in PCTV 461e (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: drop line-status helper (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: simplify line-status handling (Desnes Nunes) [2196368] - USB: serial: kl5kusb105: clean up line-status handling (Desnes Nunes) [2196368] - USB: serial: cp210x: add support for B0 hangup (Desnes Nunes) [2196368] - USB: serial: cp210x: add Kamstrup RF sniffer PIDs (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM520N (Desnes Nunes) [2196368] - USB: serial: ch341: fix lost character on LCR updates (Desnes Nunes) [2196368] - USB: serial: ch314: use usb_control_msg_recv() (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV31 with new baseline (Desnes Nunes) [2196368] - USB: serial: io_ti: add Agilent E5805A support (Desnes Nunes) [2196368] - USB: serial: whiteheat: fix heap overflow in WHITEHEAT_GET_DTR_RTS (Desnes Nunes) [2196368] - USB: serial: cp210x: add PIDs for Kamstrup USB Meter Reader (Desnes Nunes) [2196368] - USB: serial: option: add support for Cinterion MV32-WA/MV32-WB (Desnes Nunes) [2196368] - USB: serial: option: add Telit 0x1057, 0x1058, 0x1075 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Telit FN990 compositions (Desnes Nunes) [2196368] - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter (Desnes Nunes) [2196368] - USB: serial: cp210x: add part-number debug printk (Desnes Nunes) [2196368] - USB: serial: option: add Telit LN920 compositions (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM060K modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel RM500K module support (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EM05-G modem (Desnes Nunes) [2196368] - USB: serial: option: add Quectel EC200S-CN module support (Desnes Nunes) [2196368] - USB: serial: pl2303: add support for more HXN (G) types (Desnes Nunes) [2196368] - USB: serial: option: add Telit LE910Cx 0x1250 composition (Desnes Nunes) [2196368] - usb: typec: tipd: Set mode of operation for USB Type-C connector (Desnes Nunes) [2196368] - usb: typec: tipd: Move tps6598x_disconnect error path to its own label (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typec_unregister_port error paths (Desnes Nunes) [2196368] - usb: typec: tipd: Only update power status on IRQ (Desnes Nunes) [2196368] - usb: typec: tipd: Forward plug orientation to typec subsystem (Desnes Nunes) [2196368] - tps6598x: clear int mask on probe failure (Desnes Nunes) [2196368] - usb: typec: tipd: Fix initialization sequence for cd321x (Desnes Nunes) [2196368] - usb: typec: tipd: Fix typo in cd321x_switch_power_state (Desnes Nunes) [2196368] - usb: typec: tipd: Enable event interrupts by default (Desnes Nunes) [2196368] - usb: typec: tipd: Remove FIXME about testing with I2C_FUNC_I2C (Desnes Nunes) [2196368] - usb: typec: tipd: Switch CD321X power state to S0 (Desnes Nunes) [2196368] - usb: typec: tipd: Add support for Apple CD321X (Desnes Nunes) [2196368] - usb: typec: tipd: Add short-circuit for no irqs (Desnes Nunes) [2196368] - usb: typec: tipd: Split interrupt handler (Desnes Nunes) [2196368] - dt-bindings: usb: tps6598x: Add Apple CD321x compatible (Desnes Nunes) [2196368] - dt-bindings: usb: Add TI tps6598x device tree binding documentation (Desnes Nunes) [2196368] - usb: typec: tipd: Remove WARN_ON in tps6598x_block_read (Desnes Nunes) [2196368] - usb: typec: tipd: Add an additional overflow check (Desnes Nunes) [2196368] - usb: typec: tipd: Don't read/write more bytes than required (Desnes Nunes) [2196368] - usb: typec: tipd: Fix spurious fwnode_handle_put in error path (Desnes Nunes) [2196368] - usb: typec: tipd: Cleanup resources if devm_tps6598_psy_register fails (Desnes Nunes) [2196368] - usb: host: xhci-mtk: omit shared hcd if either root hub has no ports (Desnes Nunes) [2196368] - usb: xhci-mtk: enable wake-up interrupt after runtime_suspend called (Desnes Nunes) [2196368] - usb: typec: tcpci: fix of node refcount leak in tcpci_register_port() (Desnes Nunes) [2196368] - usb: typec: Check for ops->exit instead of ops->enter in altmode_exit (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable l (Desnes Nunes) [2196368] - Documentation: USB: correct possessive "its" usage (Desnes Nunes) [2196368] - usb: Check !irq instead of irq == NO_IRQ (Desnes Nunes) [2196368] - tools: usb: ffs-aio-example: Fix build error with aarch64-*-gnu-gcc toolchain(s) (Desnes Nunes) [2196368] - usb: xhci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - usb: ehci-pci: Set PROBE_PREFER_ASYNCHRONOUS (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Describe default dual-role mode (Desnes Nunes) [2196368] - dt-bindings: usb: xhci: Add Broadcom STB v2 compatible device (Desnes Nunes) [2196368] - dt-bindings: usb: Convert xHCI bindings to DT schema (Desnes Nunes) [2196368] - usb: host: Add ability to build new Broadcom STB USB drivers (Desnes Nunes) [2196368] - dt-bindings: Add Broadcom STB USB support (Desnes Nunes) [2196368] - dt-bindings: usb: Add generic "usb-phy" property (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Add "tpl-support" property (Desnes Nunes) [2196368] - dt-bindings: usb: Add "ulpi/serial/hsic" PHY types (Desnes Nunes) [2196368] - dt-bindings: usb: usb-drd: Add "otg-rev" property constraints (Desnes Nunes) [2196368] - dt-bindings: usb: Convert generic USB properties to DT schemas (Desnes Nunes) [2196368] - dt-bindings: usb: mtu3: add properties about USB Role Switch (Desnes Nunes) [2196368] - dt-bindings: usb: add binding for USB GPIO based connection detection driver (Desnes Nunes) [2196368] - dt-bindings: connector: add optional properties for Type-B (Desnes Nunes) [2196368] - dt-bindings: connector: Add self-powered property (Desnes Nunes) [2196368] - dt-bindings: usb: generic: Add role-switch-default-mode binding (Desnes Nunes) [2196368] - dt-binding: usb: add usb-role-switch property (Desnes Nunes) [2196368] - dt-binding: usb: add "super-speed-plus" (Desnes Nunes) [2196368] - dt-bindings: usb: usb-hcd: Detach generic USB controller properties (Desnes Nunes) [2196368] - dt-bindings: Explicitly allow additional properties in common schemas (Desnes Nunes) [2196368] - dt-bindings: usb: Bring back phy-names (Desnes Nunes) [2196368] - usb: core: stop USB enumeration if too many retries (Desnes Nunes) [2196368] - usb: hub: port: add sysfs entry to switch port power (Desnes Nunes) [2196368] - usb: typec: port-mapper: Convert to the component framework (Desnes Nunes) [2196368] - usb: Link the ports to the connectors they are attached to (Desnes Nunes) [2196368] - usb: Remove usb_for_each_port() (Desnes Nunes) [2196368] - thunderbolt: Add wake on connect/disconnect on USB4 ports (Desnes Nunes) [2196368] - thunderbolt: Link USB4 ports to their USB Type-C connectors (Desnes Nunes) [2196368] - usb: core: Use kstrtobool() instead of strtobool() (Desnes Nunes) [2196368] - kernel.h: split out kstrtox() and simple_strtox() to a separate header (Desnes Nunes) [2196368] - USB: core: Change configuration warnings to notices (Desnes Nunes) [2196368] - thunderbolt: ACPI: Use the helper fwnode_find_reference() (Desnes Nunes) [2196368] - thunderbolt: Remove redundant assignment to variable len (Desnes Nunes) [2196368] - thunderbolt: Use str_enabled_disabled() helper (Desnes Nunes) [2196368] - media: device property: Add a function to test is a fwnode is a graph endpoint (Desnes Nunes) [2196368] - usb: typec: mux: Allow multiple mux_devs per mux (Desnes Nunes) [2196368] - usb: typec: mux: Introduce indirection (Desnes Nunes) [2196368] - device property: Use multi-connection matchers for single case (Desnes Nunes) [2196368] - device property: Fix fwnode_graph_devcon_match() fwnode leak (Desnes Nunes) [2196368] - device property: Add helper to match multiple connections (Desnes Nunes) [2196368] - Documentation: Remove device connection documentation (Desnes Nunes) [2196368] - usb: ftdi-elan: remove variable err_count (Desnes Nunes) [2196368] - USB: make devnode() callback in usb_class_driver take a const * (Desnes Nunes) [2196368] - USB: remove usb_bus_type from usb.h (Desnes Nunes) [2196368] - USB: allow some usb functions to take a const pointer. (Desnes Nunes) [2196368]- [rt] build kernel-rt-4.18.0-499.rt7.288.el8 [2180997] - s390/ap: Fix hanging ioctl caused by orphaned replies (Tobias Huschle) [2215891] - crypto: jitter - correct health test during initialization (Vladis Dronov) [2214270] - x86: properly define CONFIG_AS_TPAUSE in Makefile (Nico Pache) [2193009] - zsmalloc: fix races between asynchronous zspage free and page migration (Oleksandr Natalenko) [2213146] - netfilter: ip6t_rpfilter: Fix regression with VRF interfaces (Phil Sutter) [2169958] - x86/mm: Avoid incomplete Global INVLPG flushes (Rafael Aquini) [2213793] - rbd: get snapshot context after exclusive lock is ensured to be held (Ilya Dryomov) [2214973] - rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting (Ilya Dryomov) [2214973] - vfio/pci: Also demote hiding standard cap messages (Oleksandr Natalenko) [2207849] - vfio/pci: demote hiding ecap messages to debug level (Oleksandr Natalenko) [2207849] - mm: avoid unnecessary page fault retires on shared memory types (Nico Pache) [2213877] - mm: remove redundant check about FAULT_FLAG_ALLOW_RETRY bit (Nico Pache) [2213877] - mm: Allow the [page|pfn]_mkwrite callbacks to drop the mmap_sem (Nico Pache) [2213877] - s390/qeth: convert sysfs snprintf to sysfs_emit (Tobias Huschle) [2203380] - s390/lcs: Fix return type of lcs_start_xmit() (Tobias Huschle) [2203380] - s390/netiucv: Fix return type of netiucv_tx() (Tobias Huschle) [2203380] - s390/ctcm: Fix return type of ctc{mp,}m_tx() (Tobias Huschle) [2203380] - s390/pci: clean up left over special treatment for function zero (Tobias Huschle) [2214268] - s390/pci: remove redundant pci_bus_add_devices() on new bus (Tobias Huschle) [2214268] - s390/pci: only add specific device in zpci_bus_scan_device() (Tobias Huschle) [2214268] - PCI: s390: Fix use-after-free of PCI resources with per-function hotplug (Tobias Huschle) [2214268] - net: atlantic: fix potential memory leak in aq_ndev_close() (Íñigo Huguet) [2184353] - net: atlantic: fix aq_vec index out of range error (Íñigo Huguet) [2179726 2184353] - net: atlantic: verify hw_head_ lies within TX buffer ring (Íñigo Huguet) [2184353] - net: atlantic: add check for MAX_SKB_FRAGS (Íñigo Huguet) [2184353] - net: atlantic: reduce scope of is_rsc_complete (Íñigo Huguet) [2184353] - net: atlantic: fix "frag[0] not initialized" (Íñigo Huguet) [2184353] - net: atlantic: Avoid out-of-bounds indexing (Íñigo Huguet) [2179726 2184353] - atlantic: Fix buff_ring OOB in aq_ring_rx_clean (Íñigo Huguet) [2184353] - atlantic: Remove warn trace message. (Íñigo Huguet) [2184353] - atlantic: Fix statistics logic for production hardware (Íñigo Huguet) [2184353] - atlantic: Add missing DIDs and fix 115c. (Íñigo Huguet) [2184353] - atlantic: Fix to display FW bundle version instead of FW mac version. (Íñigo Huguet) [2184353] - atlantic: Increase delay for fw transactions (Íñigo Huguet) [2184353] - atlantic: fix double-free in aq_ring_tx_clean (Íñigo Huguet) [2184353] - atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait (Íñigo Huguet) [2184353] - net: ethernet: aquantia: Handle error cleanup of start on open (Íñigo Huguet) [2184353] - aquantia: Remove the build_skb path (Íñigo Huguet) [2184353] - net: fix __dev_kfree_skb_any() vs drop monitor (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_echo_reply() (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_NS_OTHERHOST (Antoine Tenart) [2184076] - ipv6: icmp6: add SKB_DROP_REASON_IPV6_NDISC_BAD_OPTIONS (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_redirect_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_router_discovery() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_rs() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_na() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_recv_ns() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to ndisc_rcv() (Antoine Tenart) [2184076] - ipv6: icmp6: add drop reason support to icmpv6_notify() (Antoine Tenart) [2184076] - net: add pskb_may_pull_reason() helper (Antoine Tenart) [2184076] - net-next: skbuff: refactor pskb_pull (Antoine Tenart) [2184076] - net: dropreason: add SKB_DROP_REASON_IPV6_BAD_EXTHDR (Antoine Tenart) [2184076] - rxrpc: Use consume_skb() rather than kfree_skb_reason() (Antoine Tenart) [2184076] - ipv4: raw: add drop reasons (Antoine Tenart) [2184076] - ipv6: raw: add drop reasons (Antoine Tenart) [2184076] - tcp: add TCP_MINTTL drop reason (Antoine Tenart) [2184076] - net: fix call location in kfree_skb_list_reason (Antoine Tenart) [2184076] - rxrpc: Show consumed and freed packets as non-dropped in dropwatch (Antoine Tenart) [2184076] - net: tun: rebuild error handling in tun_get_user (Antoine Tenart) [2184076] - ALSA: Update kernel configuration for 8.9 (Jaroslav Kysela) [2179850] - soundwire: stream: Add missing clear of alloc_slave_rt (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add new mapping for HP Spectre x360 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable 4 amplifiers instead of 2 on a HP platform (Jaroslav Kysela) [2179850] - ALSA: hda: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: gus: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: cmipci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix kctl->id initialization (Jaroslav Kysela) [2179850] - ALSA: ice1712,ice1724: fix the kcontrol->id initialization (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo NS50AU (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Asus ROG 2024 laptops using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add "Intel Reference board" and "NUC 13" SSID in the ALC256 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Lenovo P3 Tower platform (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01 (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: fix PCM constraint error check (Jaroslav Kysela) [2179850] - ASoC: max98363: limit the number of channel to 1 (Jaroslav Kysela) [2179850] - ASoC: max98363: Removed 32bit support (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Thinkpad Neo14 to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: nau8824: Add quirk to active-high jack-detect (Jaroslav Kysela) [2179850] - ASoC: amd: ps: fix for acp_lock access in pdm driver (Jaroslav Kysela) [2179850] - ASoC: simple-card: Add missing of_node_put() in case of error (Jaroslav Kysela) [2179850] - ASoC: codecs: wsa881x: do not set can_multi_write flag (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: remove code for module namespaces (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable headset onLenovo M70/M90 (Jaroslav Kysela) [2179850] - regmap: sdw: check for invalid multi-register writes config (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: add quirk for EVGA X299 DARK (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing checks on FE startup (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix avs_path_module::instance_id size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Account for UID of ACPI device (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix declaration of enum avs_channel_config (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Access path components under lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Fix module lookup (Jaroslav Kysela) [2179850] - ALSA: hda: Fix unhandled register update during auto-suspend period (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: test if a BE can be prepared (Jaroslav Kysela) [2179850] - ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table (Jaroslav Kysela) [2179850] - ALSA: oss: avoid missing-prototype warnings (Jaroslav Kysela) [2179850] - ALSA: cs46xx: mark snd_cs46xx_download_image as static (Jaroslav Kysela) [2179850] - ALSA: hda: Fix Oops by 9.1 surround channel names (Jaroslav Kysela) [2179850] - ASoC: rt5682: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: Separate the tokens for input and output pin index (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix tuples array allocation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to program SoundWire PCMSyCM registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: initialize instance_offset member (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: use 'ml_addr' parameter consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix base_ptr computation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to get SoundWire hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: fix sublink refcounting (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix logic for copying tuples (Jaroslav Kysela) [2179850] - ASoC: dwc: move DMA init to snd_soc_dai_driver probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-topology: Make sure that only one cmd is sent in dai_config (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: save io region state in case of errors in resume (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-client-probes: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: fix pm_runtime imbalance in error handling (Jaroslav Kysela) [2179850] - ASoC: SOF: debug: conditionally bump runtime_pm counter on exceptions (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for yet another HP laptop (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add a sample rate workaround for Line6 Pod Go (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for ASUS GU604V and GU603V (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteBook G10 laptops (Jaroslav Kysela) [2179850] - tools include UAPI: Sync the sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850] - firewire: net: fix unexpected release of object for asynchronous request packet (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add workaround for playback distortions (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix NULL pointer crash in acp_sof_ipc_msg_data function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add a quirk for HP EliteDesk 805 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for 2nd ASUS GU603 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo L140AU (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entry to support System76 Pangolin 12 (Jaroslav Kysela) [2179850] - ALSA: pcm: use exit controlled loop in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: simplify top-up mode init in snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - move silence variable updates to separate function (Jaroslav Kysela) [2179850] - ALSA: pcm: playback silence - remove extra code (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - correct incremental silencing (Jaroslav Kysela) [2179850] - ALSA: pcm: fix playback silence - use the actual new_hw_ptr for the threshold mode (Jaroslav Kysela) [2179850] - ALSA: pcm: Revert "ALSA: pcm: rewrite snd_pcm_playback_silence()" (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix mute and micmute LEDs for an HP laptop (Jaroslav Kysela) [2179850] - ALSA: caiaq: input: Add error handling for unsupported input methods in `snd_usb_caiaq_input_init` (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Pioneer DDJ-800 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: support HP Pavilion Aero 13-be0xxx Mute LED (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402YAR using CS35L41 (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Asus VivoBook Pro 14 OLED M6400RC to the quirks list for acp6x (Jaroslav Kysela) [2179850] - ALSA: docs: Extend module parameters description (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-cht: Add quirk for Nextbook Ares 8A tablet (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use more existing defines instead of open-coded numbers (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M3402RA into DMI table (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ThinkPad P1 Gen 6 (Jaroslav Kysela) [2179850] - ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs. (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O in set_filterQ() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix error handling in snd_audigy_i2c_volume_put() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't stop DSP in _snd_emu10k1_{,audigy_}init_efx() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: skip Sound Blaster-specific hacks for E-MU cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fixup DSP defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: use high-level I/O functions also during init (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix SNDRV_EMU10K1_IOCTL_SINGLE_STEP (Jaroslav Kysela) [2179850] - ALSA: emu10k1: pull in some register definitions from kX-project (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove some bogus defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: eliminate some unused defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix lineup of EMU_HANA_* defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: comment updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix snd_emu1010_fpga_read() input masking for rev2 cards (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused emu->pcm_playback_efx_substream field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused `resume` parameter from snd_emu10k1_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: minor optimizations (Jaroslav Kysela) [2179850] - ASoC: max98090: make it selectable (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi-byt: Fix "WM510205" match no longer working (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Rate limit usb_set_interface error reporting (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove remaining cruft from snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clean up P16V part somewhat (Jaroslav Kysela) [2179850] - ALSA: emu10k1: clarify various fx8010.*_mask fields (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless EMU_HANA_OPTION_CARDS reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove apparently pointless FPGA reads (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove unused snd_emu10k1_voice.emu field (Jaroslav Kysela) [2179850] - ALSA: emu10k1: stop doing weird things with HCFG in snd_emu10k1_emu1010_init() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: remove obsolete card type variable and defines (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix access to Audigy GPIO port (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_pointer() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: properly assert E-MU FPGA access constaints (Jaroslav Kysela) [2179850] - ALSA: emu10k1: drop redundant snd_emu10k1_efx_playback_hw_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Add an option to skip platform trigger during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not stop/start DMA during pause/release (Jaroslav Kysela) [2179850] - ALSA: pcm: rewrite snd_pcm_playback_silence() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Split the set_power_op for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: append codec type to dai link name (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: support different devices on the same sdw link (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: set codec_num = 1 if the device is not aggregated (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_max98373: change sof_sdw_mx8373_late_probe to static call (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw: remove late_probe flag in struct sof_sdw_codec_info (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw at link 2 in RPL match table (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cirrus_common: Guard against missing buses (Jaroslav Kysela) [2179850] - ASoC: SOF: Use no_reply calls for TX (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: Add no reply inline calls (Jaroslav Kysela) [2179850] - ASoC: es8316: Don't use ranges based register lookup for a single register (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Remove specific patch for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: nau8825: fix bounds check for adc_delay (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify &pdev->dev in probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd9335: Simplify with dev_err_probe (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Remove some dead code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Fix default regmap values for some registers (Jaroslav Kysela) [2179850] - ASoC: ssm2602: Add support for CLKDIV2 (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add delay control for input path (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: disable KAE for Intel DG2 (Jaroslav Kysela) [2179850] - ASoC: da7218: Use devm_clk_get_optional() (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the relability of AAD IRQ process (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for Lenovo Z13/Z16 Gen2 (Jaroslav Kysela) [2179850] - ASoC: amd: Add check for acp config flags (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ThinkBook 14 G5+ ARP to quirks list for acp6x (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: fix page fault in dspless mode when DSP is disabled (Jaroslav Kysela) [2179850] - ASoC: tas5720: add missing unwind goto in tas5720_codec_probe (Jaroslav Kysela) [2179850] - ASoC: ep93xx: Add OF support (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: Make it individually selectable (Jaroslav Kysela) [2179850] - ASoC: cs4271: flat regcache, trivial simplifications (Jaroslav Kysela) [2179850] - ASoC: ep93xx: i2s: move enable call to startup callback (Jaroslav Kysela) [2179850] - ASoC: amd: Add Dell G15 5525 to quirks list (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Print the format_val as hexadecimal number (Jaroslav Kysela) [2179850] - ASoC: max98373: change power down sequence for smart amp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: conditionally wake WPIO1PG domain (Jaroslav Kysela) [2179850] - ASoC: Intel: Add rpl_mx98360_rt5682 driver (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add __func__ in SoundWire lcount() error logs (Jaroslav Kysela) [2179850] - ALSA: hda: patch_realtek: add quirk for Asus N7601ZM (Jaroslav Kysela) [2179850] - ALSA: hda: LNL: add HD Audio PCI ID (Jaroslav Kysela) [2179850] - ASoC: max98363: Make soc_codec_dev_max98363 static (Jaroslav Kysela) [2179850] - soundwire: bus: Fix unbalanced pm_runtime_put() causing usage count underflow (Jaroslav Kysela) [2179850] - ALSA: firewire-tascam: add missing unwind goto in snd_tscm_stream_start_duplex() (Jaroslav Kysela) [2179850] - ALSA: document that struct __snd_pcm_mmap_control64 is messed up (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Mic topology (Jaroslav Kysela) [2179850] - ASoC: add snd_soc_card_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dpcm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: expand snd_soc_dapm_mutex_lock/unlock() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup dapm_connect_dai_pair() (Jaroslav Kysela) [2179850] - ALSA: emu10k1: documentation updates (Jaroslav Kysela) [2179850] - ALSA: emu10k1: update label & help in config system (Jaroslav Kysela) [2179850] - ALSA: emu10k1: don't create old pass-through playback device on Audigy (Jaroslav Kysela) [2179850] - ALSA: emu10k1: fix capture interrupt handler unlinking (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards (Jaroslav Kysela) [2179850] - ALSA: i2c/cs8427: fix iec958 mixer control deactivation (Jaroslav Kysela) [2179850] - ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard (Jaroslav Kysela) [2179850] - ALSA: pcm: fix wait_time calculations (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Tear down pipelines only if DSP was active (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to retrieve eml_lock (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to offload link ownership (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to retrieve DMIC/SSP hlink (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: program SoundWire LSDIID registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to check cmdsync (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers for sync_arm/sync_go (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to set link SYNC frequency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to enable/check interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helper to return sublink count (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add convenience helpers for SoundWire PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: introduce helpers for 'extended links' PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: special-case HDaudio regular links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add structures to parse ALT links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: move to a dedicated module (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add return value for hda_bus_ml_get_capabilities() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: improve hda_bus_ml_free() helper (Jaroslav Kysela) [2179850] - ALSA: hda: add HDaudio Extended link definitions (Jaroslav Kysela) [2179850] - Documentation: sound: add description of Intel HDaudio multi-links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-skl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-mtl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-icl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-cnl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-apl: Allow DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: make DSPless mode work with DSP disabled in BIOS (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip interfaces not supported on a platform (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for DSPless mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Add flag and state which will be used for DSP-less mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: Do not dereference hstream until it is safe (Jaroslav Kysela) [2179850] - ASoC: tegra20_ac97: Add missing unwind goto in tegra20_ac97_platform_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Clarify bind failure caused by missing fw_module (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor dmic codec platform device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor error checks in probe call (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: refactor get_chip_info callback (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused variables (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove acp_dai_probe() function (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: remove unused code (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove unused params/num_params (Jaroslav Kysela) [2179850] - ASoC: samsung: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: switch to use c2c_params instead of params (Jaroslav Kysela) [2179850] - ASoC: soc.h: clarify Codec2Codec params (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A42) (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Clevo X370SNW (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Preserve the previous PCM device upon re-enablement (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update the acp clock source. (Jaroslav Kysela) [2179850] - ASoC: max98363: add soundwire amplifier driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Fix spelling mistake "schduler" -> "scheduler" (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add missing mutex_unlock() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4/intel: Add support for chained DMA (Jaroslav Kysela) [2179850] - ASoC: SOF: avoid a NULL dereference with unsupported widgets (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use register macro in place of integer literal (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Use u16 consistently for old_legacy_ctrl (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store additional legacy registers on suspend (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Store saved legacy registers in an array (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Move allocation of saved registers to struct snd_ymfpci (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Switch to DEFINE_SIMPLE_DEV_PM_OPS() (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Add error messages for abritrary IO ports on older chips (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Fix BUG_ON in probe function (Jaroslav Kysela) [2179850] - ALSA: ymfpci: Create card with device-managed snd_devm_card_new() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: dai_link->platform again (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Add a debugfs entry containing control details (Jaroslav Kysela) [2179850] - ASoC: wm8903: Remove outdated DMIC comment (Jaroslav Kysela) [2179850] - ASoC: es8316: Handle optional IRQ assignment (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z (Jaroslav Kysela) [2179850] - ASoC: da7213.c: add missing pm_runtime_disable() (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: use card->name to avoid long name (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: add snd_soc_add_pcm_runtimes() (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove unused loop_count variable (Jaroslav Kysela) [2179850] - ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots() (Jaroslav Kysela) [2179850] - ASoC: dapm: Sort speakers after other outputs (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Inherit atomicity from DAI link for Compress FE (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix regression on detection of Roland VS-100 (Jaroslav Kysela) [2179850] - ASoC: codecs: rt5682-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt715: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt712-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdca: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt711-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt700-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1318-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1316-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1308-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: max98373-sdw: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: sdw-mockup: simplify set_stream (Jaroslav Kysela) [2179850] - ASoC: codecs: cs42l42-sdw: clear stream (Jaroslav Kysela) [2179850] - ASoC: simple-card.c: add missing of_node_put() (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: ti: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ASoC: atmel: remove unnecessary dai_link->platform (Jaroslav Kysela) [2179850] - ALSA: hdspm: remove unused copy_u32_le function (Jaroslav Kysela) [2179850] - ALSA: docs: A few more words for PCM XRUN handling and stream locks (Jaroslav Kysela) [2179850] - ALSA: docs: Add description about ack callback -EPIPE error handling (Jaroslav Kysela) [2179850] - ALSA: pcm: Improved XRUN handling for indirect PCM helpers (Jaroslav Kysela) [2179850] - soundwire: intel_auxdevice: improve pm_prepare step (Jaroslav Kysela) [2179850] - soundwire: bus: Update sdw_nread/nwrite_no_pm to handle page boundaries (Jaroslav Kysela) [2179850] - soundwire: bus: Update kernel doc for no_pm functions (Jaroslav Kysela) [2179850] - soundwire: bus: Remove now outdated comments on no_pm IO (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7 B1-750 (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Improve the pcm trigger sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Make hw_params reset conditional for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Do not perform DMA cleanup during stop (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Ensure DSP is in D0I0 during sof_ipc4_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Remove conditional dpcm_capture setting (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for MTL RVP (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Update BT offload config for Rex (Jaroslav Kysela) [2179850] - soundwire: stream: uniquify dev_err() logs (Jaroslav Kysela) [2179850] - soundwire: stream: remove bus->dev from logs on multiple buses (Jaroslav Kysela) [2179850] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2179850] - ASoC: simple-card: add comment to indicate don't remove platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Return on error in sof_ipc4_widget_kcontrol_setup() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macros for chain-dma message bits (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set pipeline widget before updating IPC structures (Jaroslav Kysela) [2179850] - soundwire: amd: add pm_prepare callback and pm ops support (Jaroslav Kysela) [2179850] - soundwire: amd: handle SoundWire wake enable interrupt (Jaroslav Kysela) [2179850] - soundwire: amd: add runtime pm ops for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: add SoundWire manager interrupt handling (Jaroslav Kysela) [2179850] - soundwire: amd: enable build for AMD SoundWire manager driver (Jaroslav Kysela) [2179850] - soundwire: amd: register SoundWire manager dai ops (Jaroslav Kysela) [2179850] - soundwire: amd: Add support for AMD Manager driver (Jaroslav Kysela) [2179850] - soundwire: export sdw_compute_slave_ports() function (Jaroslav Kysela) [2179850] - soundwire: intel: don't save hw_params for use in prepare (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix recursive locking at XRUN during syncing (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: Partial revert of a quirk for Lenovo (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Simplify the logging of requested firmware files (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Add support for loading bin files without wmfw (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Expose the DSP boot work actions as wm_adsp_power_up() (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Support DSPs that don't require firmware download (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Use no_core_startstop to prevent creating preload control (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Introduce no_core_startstop for self-booting DSPs (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Add the missing device table IDs for OF (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Add 12288000 clk freq to cs35l41_fs_mon clk config (Jaroslav Kysela) [2179850] - ALSA: portman2x4: remove unused portman_read_command,data functions (Jaroslav Kysela) [2179850] - ALSA: ymfpci: remove unused snd_ymfpci_readb function (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirks for some Clevo laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Initialize in_format to NULL in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support Victus by HP Laptop 16-e1xxx (8A22) (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: update pipeline_params in process prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier output format for process module (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for base config extension (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add base module config extension structure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add effect widget support (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Move the kcontrol module_id update to helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use common helper function in copier prepare (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: support multiple configs for BE DAIs (Jaroslav Kysela) [2179850] - soundwire: stream: restore cumulative bus bandwidth when compute_params callback failed (Jaroslav Kysela) [2179850] - ASoC: amd: acp: rembrandt: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - ALSA: sh: aica: Drop if blocks with always false condition (Jaroslav Kysela) [2179850] - soundwire: bandwidth allocation: Use hweight32() to calculate set bits (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add table for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - ASOC: Intel: sof_sdw: add quirk for Intel 'Rooks County' NUC M15 (Jaroslav Kysela) [2179850] - soundwire: cadence: change access to IP_MCP_CMD_BASE (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CMDCTRL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONTROL fields (Jaroslav Kysela) [2179850] - soundwire: cadence: split access to IP_MCP_CONFIG fields (Jaroslav Kysela) [2179850] - soundwire: cadence: add helpers to access IP_MCP registers (Jaroslav Kysela) [2179850] - soundwire: cadence: remove CDNS_MCP_CONFIG_SSPMOD (Jaroslav Kysela) [2179850] - soundwire: intel: move bank switch routine to common intel_bus_common.c (Jaroslav Kysela) [2179850] - soundwire: intel: add abstraction for cmdsync check (Jaroslav Kysela) [2179850] - soundwire: intel: move bus common sequences to different file (Jaroslav Kysela) [2179850] - soundwire: intel: use indirection before moving bus start/stop sequences (Jaroslav Kysela) [2179850] - soundwire: intel: add sync_arm/sync_go to ops (Jaroslav Kysela) [2179850] - soundwire: intel: simplify sync_go sequence (Jaroslav Kysela) [2179850] - soundwire: intel: remove useless abstraction (Jaroslav Kysela) [2179850] - soundwire: intel: remove PDI-level restrictions on rates and formats (Jaroslav Kysela) [2179850] - soundwire: intel: remove stale/misleading comment (Jaroslav Kysela) [2179850] - soundwire: intel: move common definitions to header file (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Search only pin 0 formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add new tokens for input/output pin format count (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Remove the ref_audio_fmt field (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the signature of sof_ipc4_init_audio_fmt() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Modify the type of available input/output formats (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Always parse the output formats in topology (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Parse the SOF_COMP_TOKENS only once (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Do not parse the DMA_BUFFER_SIZE token (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add a new field in struct sof_ipc4_available_audio_format (Jaroslav Kysela) [2179850] - ASoC: SOF: Use input/output pin consistently (Jaroslav Kysela) [2179850] - ASoC: SOF: rename a couple of tokens (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: Add support for bytes control get and put (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for TPLG_CTL_BYTES (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-control: set_volume_data only applies to VOLSW family (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Update sof_abi_hdr doc for IPC4 use (Jaroslav Kysela) [2179850] - ASoC: SOF: uapi: header: Convert sof_abi_hdr comments to kernel style (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Merge functions to handle bytes_ext get variants (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3-control: Rename snd_sof_refresh_control() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: add support for setting up loopback routes (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set() (Jaroslav Kysela) [2179850] - ALSA: asihpi: check pao in control_message() (Jaroslav Kysela) [2179850] - ASoC: codecs: zl38060: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: rt1019: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: pcm179x-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: codecs: adau1977-spi: Mark OF related data as maybe unused (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on adl_rt1019_rt5682 (Jaroslav Kysela) [2179850] - ALSA: Use of_property_read_bool() for boolean properties (Jaroslav Kysela) [2179850] - ALSA: ppc/tumbler: Use of_property_present() for testing DT property presence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Don't access EM2 (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Steam Deck Shared boost properties quirk (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: fix hw->formats cleared by soc_pcm_hw_init() for dpcm (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: only startup/shutdown on supported streams (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cont_update_posn variable in pcm hw_params. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add pcm pointer callback for amd platforms. (Jaroslav Kysela) [2179850] - ASoC: tegra: Support MAX9808x by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support RT5631 by machine driver (Jaroslav Kysela) [2179850] - ASoC: tegra: Support coupled mic-hp detection (Jaroslav Kysela) [2179850] - ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU() (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro (Jaroslav Kysela) [2179850] - ASoC: da7219: Initialize jack_det_mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove redundant DAI config during hw_free (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Remove hda_ctrl_dai_widget_setup/free() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Unify DAI drv ops for IPC3 and IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define DAI widget DMA trigger ops for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the topology IPC dai_config op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Add setup_hext_stream/reset_hext_stream DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Define and set the HDA DAI widget DMA ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Introduce DAI widget ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Use the dai argument in ipc4_hda_dai_trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Pass the CPU dai pointer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Modify the signature of hda_link_dma_cleanup() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove struct hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove hda_link_dma_params() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: Remove BE DAI DRV ops for SSP DAI's (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add core token in each module extended token list (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Add support for core_id for pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to set the core_id in create_pipe message (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove log prefixes for snd_sof_run_firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Check for upper size limit for the received message (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Fix error handling in sof_widget_ready() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: don't squelch errors in WIDGET_SETUP phase (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Fix broken early bclk feature for SSP (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: process pending logs upon FW crash (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: don't allocate blob if it will not be used (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Fix incorrect sample rate print unit (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set dmic dai index from copier (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: update gain ipc msg definition to align with fw (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: fix copy-paste issue in topology names (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: harden D0i3 programming sequence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: re-add sleep after entering and exiting reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tng: revert invalid bar size setting (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Access MTL_HFPWRCTL from HDA_DSP_BAR (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASOC: SOF: Intel: pci-tgl: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: SKL: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: Fix device description (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Fix the device description (Jaroslav Kysela) [2179850] - ALSA: hda: intel-dsp-config: add MTL PCI id (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: remove useless dev_dbg() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove indirect runtime copy (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: add missing flag check at snd_soc_pcm_dai_probe() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use struct_size for struct avs_modcfg_ext size (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Adjust clock control (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: ssm4567: Remove nau8825 bits (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: max98357a: Explicitly define codec format (Jaroslav Kysela) [2179850] - ASoC: maxim,max9867: add "mclk" support (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: add option to start DMA after DAI (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI entries to support HP OMEN 16-n0xxx (8A43) (Jaroslav Kysela) [2179850] - ASoC: zl38060 add gpiolib dependency (Jaroslav Kysela) [2179850] - ASoC: mt6358: Remove undefined HPx Mux enumeration values (Jaroslav Kysela) [2179850] - ASoC: mt6358: Validate Wake on Voice 2 writes (Jaroslav Kysela) [2179850] - ASoC: mt6358: Fix event generation for wake on voice stage 2 switch (Jaroslav Kysela) [2179850] - ALSA: ice1712: Delete unreachable code in aureon_add_controls() (Jaroslav Kysela) [2179850] - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls() (Jaroslav Kysela) [2179850] - ASoC: adau7118: don't disable regulators on device unbind (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Replace fake flexible arrays with flexible-array member (Jaroslav Kysela) [2179850] - ALSA: cs35l41: Add shared boost feature (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Refactor error release code (Jaroslav Kysela) [2179850] - ASoC: cs35l41: Only disable internal boost (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC (Jaroslav Kysela) [2179850] - soundwire: qcom: gracefully handle too many ports in DT (Jaroslav Kysela) [2179850] - soundwire: qcom: define hardcoded version magic numbers (Jaroslav Kysela) [2179850] - soundwire: qcom: correct setting ignore bit on v1.5.1 (Jaroslav Kysela) [2179850] - ASoC: jack: allow multiple interrupt per gpio (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Improve support for Dell Precision 3260 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: Add quirk for Rex board with mx98360a amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: Enable DMI L1 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Restrict DMI L1 disable workaround (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Do not re-enable L1 if disabled before suspend (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Add components prefix in structs and function names (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Centralize strings definition (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Move nau8821 and CPU side code up for future platform (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Check Bit Clock rate before snd_soc_dai_set_pll (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use for_each_rtd_components instead of for (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: remove unnecessarily included headers (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: use sizeof of variable instead of struct type (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Small code refactor (Jaroslav Kysela) [2179850] - ASoC: amd: vangogh: Remove unnecessary init function (Jaroslav Kysela) [2179850] - ASoC: nau8821: Implement DRC controls (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak (Jaroslav Kysela) [2179850] - ASoC: amd: yp: Add OMEN by HP Gaming Laptop 16z-n000 to quirks (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Return correct error codes (Jaroslav Kysela) [2179850] - ASoC: da7219: Improve the IRQ process to increase the stability (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs and speaker support for HP Laptops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: Set streaming flag for d0i3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Enable d0i3 work for ipc4 (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Wake up dsp core before sending ipc msg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use set_pm_gate according to ipc version (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce a new set_pm_gate() IPC PM op (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix struct definition (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd934x: Use min macro for comparison and assignment (Jaroslav Kysela) [2179850] - ASoC: soc-ac97: Convert to agnostic GPIO API (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Enable Amp High Pass Filter (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Ensure firmware/tuning pairs are always loaded (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Correct error condition handling (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify error implicit declaration of function 'gpiod_set_value_cansleep' (Jaroslav Kysela) [2179850] - ASoC: codecs: Modify the log print statement (Jaroslav Kysela) [2179850] - ASoC: codecs: Fixed a spelling error in the function name (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - fixed wrong gpio assigned (Jaroslav Kysela) [2179850] - ALSA: hda: Fix codec device field initializan (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: fix coding style and unconditionally return issues (Jaroslav Kysela) [2179850] - ASoC: rt5640: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: set copier sink format (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Print queue IDs in error (Jaroslav Kysela) [2179850] - ALSA: hda: remove redundant variable in snd_hdac_stream_start() (Jaroslav Kysela) [2179850] - ALSA: hda/conexant: add a new hda codec SN6180 (Jaroslav Kysela) [2179850] - SoC: rt5682s: Disable jack detection interrupt during suspend (Jaroslav Kysela) [2179850] - ALSA: ppc: fix unused function local variable (Jaroslav Kysela) [2179850] - ASoC: codecs: max98090: simplify snd_soc_dai_driver (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: refine parameters order in function snd_sof_dsp_update8 (Jaroslav Kysela) [2179850] - ASoC: topology: Return -ENOMEM on memory allocation failure (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_free_when_closed() return void (Jaroslav Kysela) [2179850] - ALSA: core: Make snd_card_disconnect() return void (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add Positivo N14KP6-TG (Jaroslav Kysela) [2179850] - ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control() (Jaroslav Kysela) [2179850] - ASoC: rt712-sdca: Add RT712 SDCA driver for Jack and Amp topology (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform. (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Add quirk for ASUS UM3402 using CS35L41 (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Elitebook, 645 G9 (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: initialize cur_scene_id to 0 (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Fix DTS properties reading (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for handling spurious interrupts from DSP (Jaroslav Kysela) [2179850] - ASoC: codecs: fix platform_no_drv_owner.cocci warning (Jaroslav Kysela) [2179850] - ALSA: fireface: add field for the number of messages copied to user space (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add delay function support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: add get_stream_position support (Jaroslav Kysela) [2179850] - ASoC: SOF: add get_stream_position ops for pcm delay (Jaroslav Kysela) [2179850] - ASoC: SOF: add delay function support in sof framework (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: add hw_params (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: allocate time info for pcm delay feature (Jaroslav Kysela) [2179850] - ASoC: SOF: add time info structure for ipc4 path (Jaroslav Kysela) [2179850] - ASoC: SOF: add fw_info_box support (Jaroslav Kysela) [2179850] - ASoC: SOF: add ipc4_fw_reg header file (Jaroslav Kysela) [2179850] - ASoC: codecs: aw88395: Fix spelling mistake "cersion" -> "version" (Jaroslav Kysela) [2179850] - ASoC: SOF: fix intel-soundwire link failure (Jaroslav Kysela) [2179850] - ALSA: hda: Fix the control element identification for multiple codecs (Jaroslav Kysela) [2179850] - ASoC: amd: update ps platform acp header file (Jaroslav Kysela) [2179850] - ASoC: topology: Set correct unload callback for graph type (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add missed "else" in sof_connect_dai_widget (Jaroslav Kysela) [2179850] - ASoC: cs42l42: use helper function (Jaroslav Kysela) [2179850] - ALSA: pci: lx6464es: fix a debug loop (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: cleanup Playback/Capture data for snd_soc_dai (Jaroslav Kysela) [2179850] - ASoC: soc-topology.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dai.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: use helper function (Jaroslav Kysela) [2179850] - ASoC: ti: use helper function (Jaroslav Kysela) [2179850] - ASoC: tegra: use helper function (Jaroslav Kysela) [2179850] - ASoC: sof: use helper function (Jaroslav Kysela) [2179850] - ASoC: intel: use helper function (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: use helper function (Jaroslav Kysela) [2179850] - ASoC: spear: use helper function (Jaroslav Kysela) [2179850] - ASoC: cirrus: use helper function (Jaroslav Kysela) [2179850] - ASoC: rt: use helper function (Jaroslav Kysela) [2179850] - ASoC: max: use helper function (Jaroslav Kysela) [2179850] - ASoC: hda: use helper function (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: use helper function (Jaroslav Kysela) [2179850] - ASoC: soc.h: add snd_soc_card_is_instantiated() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_get/set_widget_playback/capture() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_tdm_mask_set/get() helper (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add snd_soc_dai_dma_data_set/get() for low level (Jaroslav Kysela) [2179850] - ASoC: soc-dai.h: add missing snd_soc_dai_set_widget() (Jaroslav Kysela) [2179850] - ALSA: doc: Fix PCM interface section typos (Jaroslav Kysela) [2179850] - ALSA: firewire-motu: fix unreleased lock warning in hwdep device (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: fix uninitialized local variable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor bit width calculation (Jaroslav Kysela) [2179850] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360 (Jaroslav Kysela) [2179850] - ASoC: tas5720: set bit 7 in ANALOG_CTRL_REG for TAS5720A-Q1 during probe (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: add support for TAS5720A-Q1 (automotive) variant (Jaroslav Kysela) [2179850] - ASoC: codecs: tas5720: split a tas5720_mute_soc_component() function (Jaroslav Kysela) [2179850] - ASoC: topology: Use unload() op directly (Jaroslav Kysela) [2179850] - ASoC: topology: Unify kcontrol removal code (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary check for EOF (Jaroslav Kysela) [2179850] - ASoC: topology: Return an error on complete() failure (Jaroslav Kysela) [2179850] - ASoC: topology: Pass correct pointer instead of casting (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unnecessary forward declarations (Jaroslav Kysela) [2179850] - ASoC: topology: Rename remove_ handlers (Jaroslav Kysela) [2179850] - ASoC: topology: Fix function name (Jaroslav Kysela) [2179850] - ASoC: topology: Fix typo in functions name (Jaroslav Kysela) [2179850] - ASoC: topology: Remove unused SOC_TPLG_PASS_PINS constant (Jaroslav Kysela) [2179850] - ASoC: topology: Properly access value coming from topology file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Wait for debounce interval after resume (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't set idle_bias_on (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SoundWire support (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export some functions for SoundWire (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Separate ASP config from PLL config (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Ensure MCLKint is a multiple of the sample rate (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add SOFT_RESET_REBOOT register (Jaroslav Kysela) [2179850] - soundwire: stream: Add specific prep/deprep commands to port_prep callback (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Do not run the trigger pipelines if no spipe is stored (Jaroslav Kysela) [2179850] - ASoC: SOF: Protect swidget->use_count with mutex for kcontrol access race (Jaroslav Kysela) [2179850] - ASoC: SOF: Avoid double decrementing use_count in sof_widget_setup on error (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Protect pipeline free with mutex (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Implement pipeline trigger reference counting (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Rename 'data' variable to trigger_list (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce struct snd_sof_pipeline (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Use the PCM stream's pipeline_info during trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Populate the PCM stream pipeline_info (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add flag to skip triggering pipelines during FE DAI trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-pcm: Define pcm_setup/free ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce PCM setup/free PCM IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Set IPC-specific trigger order for DAI links (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: do not free widgets during suspend trigger (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Only process widgets in the connected widget list (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Set up/free DAI/AIF widgets only once (Jaroslav Kysela) [2179850] - ASoC: soc-pcm: Export widget_in_list() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: No need to unbind routes within a pipeline (Jaroslav Kysela) [2179850] - Documentation: sound: correct spelling (Jaroslav Kysela) [2179850] - treewide: fix up files incorrectly marked executable (Jaroslav Kysela) [2179850] - ASoC: cs42l56: fix DT probe (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: add buffer type support (Jaroslav Kysela) [2179850] - ALSA: memalloc: Workaround for Xen PV (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: use different channel mask for each sdw amp feedback (Jaroslav Kysela) [2179850] - soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe() (Jaroslav Kysela) [2179850] - soundwire: cadence: further simplify low-level xfer_msg_defer() callback (Jaroslav Kysela) [2179850] - soundwire: stream: use consistent pattern for freeing buffers (Jaroslav Kysela) [2179850] - soundwire: bus: Remove unused reset_page_addr() callback (Jaroslav Kysela) [2179850] - soundwire: bus: Don't zero page registers after every transaction (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add set_jack and get_jack_type (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: create jack inputs for aux_devs (Jaroslav Kysela) [2179850] - ASoC: soc-component: add get_jack_type (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify probe-component implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: prepare_widgets: Check swidget for NULL on sink failure (Jaroslav Kysela) [2179850] - firewire: cdev: use single object to dispatch event for request to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: cdev: obsolete NULL check to detect IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - firewire: core: use kref structure to maintain lifetime of data for fw_request structure (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: zero clear HDMI pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: prevent underflow in sof_ipc4_priority_mask_dfs_write() (Jaroslav Kysela) [2179850] - soundwire: bus: remove sdw_defer argument in sdw_transfer_defer() (Jaroslav Kysela) [2179850] - soundwire: cadence: use directly bus sdw_defer structure (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add FIXED_RATE quirk for JBL Quantum610 Wireless (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs, speaker don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: SOF: keep prepare/unprepare widgets in sink path (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: skip prepare/unprepare if swidget is NULL (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: unprepare when swidget->use_count > 0 (Jaroslav Kysela) [2179850] - ALSA: fireface: fix locking bug in ff400_copy_msg_to_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: start with the right widget type (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Set compress data offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for compress API for stream data/offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare set_stream_data_offset for compress API (Jaroslav Kysela) [2179850] - ASoC: SOF: Prepare ipc_msg_data to be used with compress API (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132: minor fix for allocation size (Jaroslav Kysela) [2179850] - firewire: fix memory leak for payload of request subaction to IEC 61883-1 FCP region (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use asoc_substream_to_rtd() to obtain rtd (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Use min_t instead of min with cast (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Correctly access topology fields (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Implement PCI shutdown (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Fix possible NULL pointer dereference in snd_usb_pcm_has_fixed_rate() (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 chip register file, data type file and Kconfig Makefile (Jaroslav Kysela) [2179850] - ASoC: codecs: Aw88395 function for ALSA Audio Driver (Jaroslav Kysela) [2179850] - ASoC: codecs: ACF bin parsing and check library file for aw88395 (Jaroslav Kysela) [2179850] - ASoC: codecs: Add i2c and codec registration for aw88395 and their associated operation functions (Jaroslav Kysela) [2179850] - regmap: sdw: Remove 8-bit value size restriction (Jaroslav Kysela) [2179850] - regmap: sdw: Update misleading comment (Jaroslav Kysela) [2179850] - ALSA: fireface: implement message parser for Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: add local framework to message parser (Jaroslav Kysela) [2179850] - ALSA: fireface: update UAPI for data of knob control (Jaroslav Kysela) [2179850] - ALSA: fireface: add helper function to parse MIDI messages transmitted by Fireface 400 (Jaroslav Kysela) [2179850] - ALSA: fireface: pick up time stamp for request subaction of asynchronous transaction (Jaroslav Kysela) [2179850] - ALSA: fireface: rename callback functions (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_wm5102: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5651: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_es8316: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: acp-es8336: Drop reference count of ACPI device after use (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add DMI support for new acer/emdoor platforms (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: compute extra delay for runtime of PCM substream (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: obsolete return value from context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: move parameter for pcm frame multiplier from context payload processing layer (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Support mt8188 platform (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: extend tracepoints event including CYCLE_TIME of 1394 OHCI (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list (Jaroslav Kysela) [2179850] - ALSA: control-led: use strscpy in set_led_id() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Always initialize fixed_rate in snd_usb_find_implicit_fb_sync_format() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Enable i2s tdm support for skyrim platforms (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add i2s tdm support in machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor i2s clocks programming sequence (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Refactor dai format implementation (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add new cpu dai's in machine driver (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: keep history to process isochronous packet (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list for context payload processing layer (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: use circular linked list to enumerate packet descriptors (Jaroslav Kysela) [2179850] - ASoC: nau8315: remove dependency on GPIOLIB (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in sequence replay (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for cache position in tx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for pool position in rx packets (Jaroslav Kysela) [2179850] - ALSA: firewire-lib: code refactoring for helper functions to pool sequence in rx packets (Jaroslav Kysela) [2179850] - ALSA: aoa: make remove callback of soundbus driver void returned (Jaroslav Kysela) [2179850] - ALSA: ac97: make remove callback of ac97 driver void returned (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Fix uninitialized ret in create_acp64_platform_devs() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Check runtime suspend capability at runtime_idle (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Don't return -EINVAL from system suspend/resume (Jaroslav Kysela) [2179850] - mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: fix mute/micmute LEDs don't work for a HP platform (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use static function (Jaroslav Kysela) [2179850] - ASoC: nau8822: add speaker Bridge Tied Output configuration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: amd: ps: use acp_lock to protect common registers in pdm driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: add mutex lock for accessing common registers (Jaroslav Kysela) [2179850] - ALSA: hda - Enable headset mic on another Dell laptop with ALC3254 (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: remove unused variable (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-wm8804: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5672: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: cht_bsw_rt5645: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_da7213: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcht_cx2072x: Replace open coded acpi_dev_put() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: More refactoring of hw constraint rules (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Relax hw constraints for implicit fb sync (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Make sure to stop endpoints before closing EPs (Jaroslav Kysela) [2179850] - ALSA: hda/realtek - Turn on power early (Jaroslav Kysela) [2179850] - ASoC: rt9120: Make dev PM runtime bind AsoC component PM (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add ASUS M5402RA into DMI table (Jaroslav Kysela) [2179850] - ASoC: wm8904: fix wrong outputs volume after power reactivation (Jaroslav Kysela) [2179850] - ASoC: rt711-sdca: add jack detection mode for JD2 100K (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: add variant with nau8318 amplifier. (Jaroslav Kysela) [2179850] - ASoC: amd: ps: move irq handler registration (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update dev index value in irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: ps: refactor platform device creation logic (Jaroslav Kysela) [2179850] - ASoC: amd: ps: implement api to retrieve acp device config (Jaroslav Kysela) [2179850] - ASoC: Intel: fix sof-nau8825 link failure (Jaroslav Kysela) [2179850] - ASoC: Intel: sof-nau8825: fix module alias overflow (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: No need to check for op pointer in sof_fw_trace_free() (Jaroslav Kysela) [2179850] - ASoC: SOF: trace: Use sof_ipc_get_ops() in sof_fw_trace_init (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-priv: Mark fw_tracing ops optional in documentation (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: control: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: pcm: Extend the optionality of IPC ops to IPC as well (Jaroslav Kysela) [2179850] - ASoC: SOF: Add helper macro to be used to get an IPC ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Update documentation for sof_ipc_tplg_ops (Jaroslav Kysela) [2179850] - ASoC: SOF: sof-audio: Treat tplg_ops->route_setup() as optional (Jaroslav Kysela) [2179850] - ASoC: SOF: Add FW state to debugfs (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Always tear down pipelines before DSP suspend (Jaroslav Kysela) [2179850] - ASoC: SOF: pm: Set target state earlier (Jaroslav Kysela) [2179850] - ASoC: SOF: core: Print out the value of sof_debug if it is set (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC3 topology: Print the conflicting bytes sizes (Jaroslav Kysela) [2179850] - ASoC: wm8940: Read chip ID when wm8940 codec probing (Jaroslav Kysela) [2179850] - ASoC: wm8940: Rewrite code to set proper clocks (Jaroslav Kysela) [2179850] - ASoC: wm8940: Remove warning when no plat data present (Jaroslav Kysela) [2179850] - ASoC: amd: yc: Add Razer Blade 14 2022 into DMI table (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add new quirk FIXED_RATE for JBL Quantum810 Wireless (Jaroslav Kysela) [2179850] - ASoC: lochnagar: Fix unused lochnagar_of_match warning (Jaroslav Kysela) [2179850] - soundwire: intel: remove DAI startup/shutdown (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: remove a redundant comparison of sram (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Peakvol module configuration (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Parse control tuples (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add control volume operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add peakvol runtime-parameter requests (Jaroslav Kysela) [2179850] - ASoC: Intel: Add HP Stream 8 to bytcr_rt5640.c (Jaroslav Kysela) [2179850] - ASoC: da7213: Add support for mono, set frame width to 32 when possible (Jaroslav Kysela) [2179850] - ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071 tablet (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: initialize panic_info to zero (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Enable cache for AMD Rembrandt platform (Jaroslav Kysela) [2179850] - ALSA: azt3328: Remove the unused function snd_azf3328_codec_outl() (Jaroslav Kysela) [2179850] - ASoC: SOF: nocodec: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: wl1273: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: mc13783: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: cq93vc: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: bt-sco: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: adau7002: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: ac97: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: 88pm860x: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-pdmic: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: atmel-classd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: amd: Drop empty platform remove function (Jaroslav Kysela) [2179850] - ASoC: SOF: Revert: "core: unregister clients and machine drivers in .shutdown" (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: unblock S5 entry if DMA stop has failed" (Jaroslav Kysela) [2179850] - ASoC: rt5640: Allow configuration of LOUT to mono differential mode (Jaroslav Kysela) [2179850] - ALSA: hda: Error out if invalid stream is being setup (Jaroslav Kysela) [2179850] - ASoC: soc-compress: Reposition and add pcm_mutex (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_realtek_common: set ret = 0 as initial value (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add jsl_rt5682 board config (Jaroslav Kysela) [2179850] - ALSA: hda/cirrus: Add extra 10 ms delay to allow PLL settle and lock. (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Workaround for XRUN at prepare (Jaroslav Kysela) [2179850] - ALSA: pcm: Handle XRUN at trigger START (Jaroslav Kysela) [2179850] - ASoC : SOF: amd: Add support for IPC and DSP dumps (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use poll function instead to read ACP_SHA_DSP_FW_QUALIFIER (Jaroslav Kysela) [2179850] - ASoC: imx-audmux: use sysfs_emit() to instead of scnprintf() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Use SG allocation for SKL-based firmware load (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce single place for pipe-config selection (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Drop pipe_config_idx (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Remove skl_tplg_is_multi_fmt() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Update pipe_config_idx before filling BE params (Jaroslav Kysela) [2179850] - ASoC: codecs: wcd-clsh: Remove the unused function (Jaroslav Kysela) [2179850] - ASoC: rt715: Make read-only arrays capture_reg_H and capture_reg_L static const (Jaroslav Kysela) [2179850] - soundwire: cadence: Drain the RX FIFO after an IO timeout (Jaroslav Kysela) [2179850] - soundwire: cadence: Remove wasted space in response_buf (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overflow the command FIFOs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping debug window snapshot (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Allow for dumping FW_REGS area (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Gather remaining logs on strace_release() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probing and firmware tracing over debugfs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add probe machine board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Data probing soc-component (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Probe compress operations (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add data probing requests (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop usage of debug members in non-debug code (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Make enable_logs() dependent on DEBUG_FS (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce debug-context aware helpers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop fifo_lock (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce avs_log_buffer_status_locked() (Jaroslav Kysela) [2179850] - ALSA: hda: Interrupt servicing and BDL setup for compress streams (Jaroslav Kysela) [2179850] - ALSA: hda: Prepare for compress stream support (Jaroslav Kysela) [2179850] - ALSA: hda: Allow for compress stream to hdac_ext_stream assignment (Jaroslav Kysela) [2179850] - ALSA: dice: Remove left-over license text (Jaroslav Kysela) [2179850] - drm: tda99x: Don't advertise non-existent capture support (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: Allow playback and capture to be disabled (Jaroslav Kysela) [2179850] - ALSA: dice: add support for Focusrite Saffire Pro 40 with TCD3070 ASIC (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt5682: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Add quirk for Tascam Model 12 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add DAI configuration support for AMD platforms. (Jaroslav Kysela) [2179850] - ASoC: rt5640: Fix Jack work after system suspend (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: Clear DAIs parameters after stream_active is updated (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add shutdown callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop obsolete dependency on COMPILE_TEST (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt298: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt286: Add define for codec DAI name (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: rt274: Refer to DAI name through a constant (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: nau8825: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: da7219: Refactor jack handling (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Refactor jack handling (Jaroslav Kysela) [2179850] - ALSA: pcm: fix tracing reason in hw_ptr_error (Jaroslav Kysela) [2179850] - soundwire: stream: Move remaining register accesses over to no_pm (Jaroslav Kysela) [2179850] - soundwire: debugfs: Switch to sdw_read_no_pm (Jaroslav Kysela) [2179850] - soundwire: Provide build stubs for common functions (Jaroslav Kysela) [2179850] - soundwire: bus: export sdw_nwrite_no_pm and sdw_nread_no_pm functions (Jaroslav Kysela) [2179850] - firmware: cs_dsp: Rename KConfig symbol CS_DSP -> FW_CS_DSP (Jaroslav Kysela) [2179850] - ASoC: nau8315: add new acpi id and compatible id (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Return whether changed when writing controls (Jaroslav Kysela) [2179850] - firmware: cs_dsp: cs_dsp_coeff_write_ctrl() should report changed (Jaroslav Kysela) [2179850] - ASoC: sdw-mockup: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt715: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt711: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt700: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt5682-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - ASoC: max98373-sdw: Switch to new snd_sdw_params_to_config helper (Jaroslav Kysela) [2179850] - sound: sdw: Add hw_params to SoundWire config helper function (Jaroslav Kysela) [2179850] - ASoC: max9867: Implement exact integer mode (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: ADD HS and SP virtual DAI. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for selecting clock source as external clock. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Fix for reading position updates from stream box. (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add a manually mechanism for detection failure (Jaroslav Kysela) [2179850] - ASoC: nau8825: Adjust internal clock during jack detection (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing audio amplifier for KBL (Jaroslav Kysela) [2179850] - ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Fix Kconfig dependency (Jaroslav Kysela) [2179850] - ASoC: da7219: Fix pole orientation detection on OMTP headsets when playing music (Jaroslav Kysela) [2179850] - ASoC: max98396: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: ppc: keywest: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: tas: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ALSA: aoa: onyx: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - mfd: arizona-i2c: Convert to i2c's .probe_new() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Initialize private data for subsequent HDA FEs (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Fix possible UAF in acp_dma_open (Jaroslav Kysela) [2179850] - soundwire: enable optional clock registers for SoundWire 1.2 devices (Jaroslav Kysela) [2179850] - ASoC/soundwire: remove is_sdca boolean property (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_sdw_amp: mark coeff tables with __maybe_unused (Jaroslav Kysela) [2179850] - ASoC: SOF: dai: move AMD_HS to end of list to restore backwards-compatibility (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: support rt1015p speaker amplifier (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Check ops before memory allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Disconnect substream if suspend or resume fails (Jaroslav Kysela) [2179850] - ASoC: amd: ps: Move acp63_dev_data strcture from PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: ps: update macros with ps platform naming convention (Jaroslav Kysela) [2179850] - ALSA: pcm: avoid nused-but-set-variable warning (Jaroslav Kysela) [2179850] - ALSA: memalloc: Allocate more contiguous pages for fallback case (Jaroslav Kysela) [2179850] - ASoC: codecs: Remove a useless include (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: remove Experimental announce (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: read multi-link capabilities earlier (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove check on number of links (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove sdw_intel_enable_irq() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add callback to check SoundWire lcount information (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: move SoundWire interrupt enabling to callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: factor interrupt enable/disable interrupt functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add per-chip enable_sdw_irq() callback (Jaroslav Kysela) [2179850] - soundwire: intel_init: remove useless interrupt enablement in interrupt thread (Jaroslav Kysela) [2179850] - soundwire: intel: split auxdevice to different file (Jaroslav Kysela) [2179850] - soundwire: intel: add in-band wake callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add link power management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add bus management callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add register_dai callback in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: add debugfs callbacks in hw_ops (Jaroslav Kysela) [2179850] - soundwire: intel: start using hw_ops (Jaroslav Kysela) [2179850] - ASoC: Intel: soc-acpi: add MTL AIC SoundWire configurations (Jaroslav Kysela) [2179850] - ASoC: wm_adsp: Allow client to hook into pre_run callback (Jaroslav Kysela) [2179850] - ASoC: rt1316-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: get BQ params property and apply them (Jaroslav Kysela) [2179850] - ASoC: Intel: sof rt5682: remove the duplicate codes (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: add support for ALC5682I-VD with amp rt1019p (Jaroslav Kysela) [2179850] - ASoC: core: fix wrong size kzalloc for rtd's components member (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: get pipeline instance id from pipe_widget->instance_id (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: get max pipeline number (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: rename sof_ipc4_widget_free_comp (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: set d0i3 register with d0i3_offset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3_offset in chip_info (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add d0i3 definition for MTL (Jaroslav Kysela) [2179850] - ASoC: SOF: topology: Add helper to get/put widget queue id (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support to parse pin binding array from topology (Jaroslav Kysela) [2179850] - ASoC: SOF: Add support for parsing the number of sink/source pins (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: Implement tear_down_all_pipelines callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: use small buffer for iccmax stream (Jaroslav Kysela) [2179850] - ALSA: cs5535audio: Remove the redundant assignment (Jaroslav Kysela) [2179850] - ASoC: soc-dai: Do not call snd_soc_link_be_hw_params_fixup() twice (Jaroslav Kysela) [2179850] - ASoC: amd: fix ACP version typo mistake (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Make const array uid_strings static (Jaroslav Kysela) [2179850] - ARM: omap2: n8x0: stop instantiating codec platform data (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: tlv320aic3x: remove support for platform data (Jaroslav Kysela) [2179850] - ASoC: rt5682: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Support DBVDD and LDO1-IN supplies (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2: check also dpcm node for convert-xxx (Jaroslav Kysela) [2179850] - ASoC: audio-graph-card2-custom-sample.dtsi: add convert-rate for DPCM (MIXer) (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: remove asoc_simple_convert_fixup() (Jaroslav Kysela) [2179850] - soundwire: cadence: use dai_runtime_array instead of dma_data (Jaroslav Kysela) [2179850] - soundwire: cadence: rename sdw_cdns_dai_dma_data as sdw_cdns_dai_runtime (Jaroslav Kysela) [2179850] - ASoC: cs42xx8-i2c.c: add module device table for of (Jaroslav Kysela) [2179850] - ALSA: hda: clarify comments on SCF changes (Jaroslav Kysela) [2179850] - ASoC: SOF: fix compilation issue with readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Do not export internal symbols (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: amd: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: rockchip: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop da7219_aad_jack_det() usage (Jaroslav Kysela) [2179850] - ASoC: codecs: da7219: Introduce set_jack() callback (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc4_find_module() function (Jaroslav Kysela) [2179850] - ASoC: SOF: client: Add sof_client_ipc_set_get_data() (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Separate IPC3 operations to a separate file (Jaroslav Kysela) [2179850] - ASoC: SOF: probes: Replace [0] union members with DECLARE_FLEX_ARRAY() (Jaroslav Kysela) [2179850] - ASoC: adau1372: correct PGA enable & mute bit (Jaroslav Kysela) [2179850] - ASoC: adau1372: add support for S24_LE mode (Jaroslav Kysela) [2179850] - ASoC: adau1372: fix mclk (Jaroslav Kysela) [2179850] - ASoC: SOF: introduce new DEBUG_NOCODEC mode (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: use GPL-2.0-only license (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: clarify Kconfig dependencies (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add hda_bus_ml_free helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-mlink: add helpers to suspend/resume links (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: clarify bus_init and bus_exit sequences (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add helpers to suspend and resume cmd_io (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: clarify dependencies on SND_SOC_SOF_HDA (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: use helper to clear RIRB status (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_check_rirb_status() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: always allocate CORB/RIRB buffer (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add stop_cmd_io helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: add hda_codec_device_remove() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: add codec wakeup helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move all RIRB/CMD_IO helpers to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: add multi-link helper for LOSVID (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: start moving multi-link handling in dedicated file (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: move codec state change to hda-codec.c (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: simplify SND_SOC_SOF_HDA_AUDIO_CODEC handling (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove all dependencies on SND_SOC_HDAC_HDMI (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove option to disable the common_hdmi handling (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Enact power gating policy (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Power and clock gating policy overriding (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Standby power-state support (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Count low power streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Restart instead of resuming HDA capture streams (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Handle SUSPEND and RESUME triggers (Jaroslav Kysela) [2179850] - ALSA: hda: Introduce snd_hdac_stream_wait_drsm() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Introduce PCM power management routines (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Split pcm pages freeing operation from hw_free() (Jaroslav Kysela) [2179850] - ASoC: core: Exit all links before removing their components (Jaroslav Kysela) [2179850] - ASoC: tas5805m: add missing page switch. (Jaroslav Kysela) [2179850] - ASoC: tas5805m: rework to avoid scheduling while atomic. (Jaroslav Kysela) [2179850] - soundwire: qcom: add support for v1.7 Soundwire Controller (Jaroslav Kysela) [2179850] - soundwire: qcom: make reset optional for v1.6 controller (Jaroslav Kysela) [2179850] - soundwire: qcom: remove unused SWRM_SPECIAL_CMD_ID (Jaroslav Kysela) [2179850] - ASoC: dapm: Don't use prefix for regulator name (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Return ssize_t from sof_ipc4_fw_parse_ext_man() (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: Intel: boards: Fix typo in comments (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use readb/writeb for stream registers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: use SOF helper for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: rename CL_SD_CTL registers as SD_CTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-stream: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: remove useless check on GCTL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: always do a full reset (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-ctrl: remove useless sleep (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: remove useless members in hda_pipe_params (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use component_get_drvdata to find hdac_bus (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: start removing the use of runtime->private_data in BE (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: use SOF helpers for consistency (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add snd_sof_dsp_updateb() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: add readb/writeb helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use mmio fallback for all platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: ops: fallback to mmio in helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: fix comment error (Jaroslav Kysela) [2179850] - ALSA: asihpi: remove variable loops (Jaroslav Kysela) [2179850] - ALSA: rawmidi: remove variable dest_frames (Jaroslav Kysela) [2179850] - mfd: arizona: Remove #ifdef guards for PM related functions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-codec: fix possible memory leak in hda_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: fix possible memory leak in skl_codec_device_init() (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Support for loading external libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Remove the query_fw_configuration ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Stop using the query_fw_configuration fw_loader ops (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Add support for IPC dependent post firmware boot ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add ipc4 library loading implementation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add flag to indicate that the firmware is IMR booted (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Define platform dependent library loading callback (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Set the default firmware library path for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Add path definition for external firmware libraries (Jaroslav Kysela) [2179850] - ASoC: SOF: IPC4: Add helper for looking up module by UUID (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Convert the firmware handling (loader) to library convention (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Save the maximum number of libraries supported (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc: ops: Add support for optional init and exit callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: Drop the firmware and fw_offset from snd_sof_pdata (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader-skl: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Use the basefw firmware container directly (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce container struct for SOF firmware (Jaroslav Kysela) [2179850] - ASoC: SOF: loader: Set complete state before post_fw_run op (Jaroslav Kysela) [2179850] - soundwire: intel: Initialize clock stop timeout (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: move SPIB/DRMS functionality from ext layer (Jaroslav Kysela) [2179850] - ALSA: hda: hdac_ext_controller: remove useless loop (Jaroslav Kysela) [2179850] - ALSA: hda: ext: reduce ambiguity between 'multi-link' and 'link' DMA (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'bus' prefix for multi-link stream setting (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: remove 'link' prefix for stream-related operations (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: ext: add 'ext' prefix to snd_hdac_link_free_all (Jaroslav Kysela) [2179850] - ALSA/ASoC: hda: clarify bus_get_link() and bus_link_get() helpers (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dai: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hda_ext_controller: use hlink variable/parameter (Jaroslav Kysela) [2179850] - ALSA: hda: ext: hdac_ext_controller: use helpers in loop (Jaroslav Kysela) [2179850] - ASoC: rt1308-sdw: update the preset settings (Jaroslav Kysela) [2179850] - ASoC: simple-card: Fix up checks for HW param fixups (Jaroslav Kysela) [2179850] - ASoC: soc-dpcm.h: remove snd_soc_dpcm::hw_param (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: fixup comment for snd_soc_dapm_widget_for_each_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.h: cleanup white space (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: numerical order for dapm_up_seq (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup snd_soc_dapm_new_dai() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: merge dapm_power_one_widget() and dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: cleanup dapm_widget_set_power() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: ignore parameter NULL at snd_soc_dapm_free_widget() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: remove no meaning variable from snd_soc_dapm_add_path() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup error handling on snd_soc_dapm_add_route() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: replace snd_soc_dapm_wcache to snd_soc_dapm_widget (Jaroslav Kysela) [2179850] - ASoC: twl4030: make read-only array ramp_base static const (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc3: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Ack a received reply or notification separately (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Wait for channel to be free before sending a message (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: ipc4: Read the interrupt reason registers at the same time (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Log the tx message before sending it (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM slots setting support for ACP I2S controller (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-mtrace: protect per-core nodes against multiple open (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: simplify S3 resume flows (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed microphone widgets (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: add missed Mixer inputs (Jaroslav Kysela) [2179850] - ASoC: codecs: jz4725b: use right control for Master Playback (Jaroslav Kysela) [2179850] - ALSA: hda/realtek: simplify the return of comp_bind() (Jaroslav Kysela) [2179850] - ASoC: ak4458: add optional reset control to instead of gpio (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Support System Suspend (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Remove suspend/resume hda hooks (Jaroslav Kysela) [2179850] - ALSA: hda/cs_dsp_ctl: Fix mutex inversion when creating controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Ensure pwr_lock is held before reading/writing controls (Jaroslav Kysela) [2179850] - ALSA: hda: hda_cs_dsp_ctl: Minor clean and redundant code removal (Jaroslav Kysela) [2179850] - ASoC: codecs: hda: Fix spelling error in log message (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify log control for SKL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify ignore_fw_version description (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not print IPC error message twice (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not treat unsupported IPCs as invalid (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Do not reuse msg between different IPC handlers (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing include to HDA board (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Simplify d0ix disabling routine (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add missing SKL-based device IDs (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support da7219 on both KBL and APL (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Support AML with rt286 configuration (Jaroslav Kysela) [2179850] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2179850] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2179850] - ASoC: amd: Update Pink Sardine platform ACP register header (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid superfluous endpoint setup (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Correct the return code from snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Apply mutex around snd_usb_endpoint_set_params() (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Avoid unnecessary interface change at EP close (Jaroslav Kysela) [2179850] - ASoC: cx2072x: fix spelling typo in comment (Jaroslav Kysela) [2179850] - ALSA: hda: Update register polling macros (Jaroslav Kysela) [2179850] - Revert "ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync" (Jaroslav Kysela) [2179850] - ASoC: codecs: allow WM8961 to be selected by the user (Jaroslav Kysela) [2179850] - ASoC: wm8961: add support for devicetree (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Load max98927 on target platform (Jaroslav Kysela) [2179850] - ASoC: Intel: avs: Add max98927 machine board (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add TDM support (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ASoC: core: clarify the driver name initialization (Jaroslav Kysela) [2179850] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2179850] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2179850] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove unused struct hpi_subsys_response (Jaroslav Kysela) [2179850] - ALSA: sb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: wm8978: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs35l36: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fallback to headphones for type detect (Jaroslav Kysela) [2179850] - ASoC: uapi: Replace zero-length arrays with __DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: control.h: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - usb: gadget: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ASoC: intel: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usx2y: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: asihpi: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: hda: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: firewire: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: aloop: Replace runtime->status->state reference to runtime->state (Jaroslav Kysela) [2179850] - ALSA: pcm: Make mmap status read-only (Jaroslav Kysela) [2179850] - ALSA: pcm: Avoid reference to status->state (Jaroslav Kysela) [2179850] - ALSA: Remove some left-over license text in include/uapi/sound/ (Jaroslav Kysela) [2179850] - ALSA: firewire: Remove some left-over license text in sound/firewire (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_pointer callback (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add pcm_hw_params callback (Jaroslav Kysela) [2179850] - ALSA: memalloc: use __GFP_RETRY_MAYFAIL for DMA mem allocs (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Call snd_sof_handle_fw_exception() in case of timeout (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Only dump firmware registers for IPC3 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: Print relevant register in ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: skl: Use the ipc4 version of the ipc_dump (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: cnl: Add separate ops for ipc_dump for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: remove the unnecessary snd_sof_dsp_read() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: reuse the common ops for PM (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: HDA: use IPC version-specific ops (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: MTL: define and set the disable_interrupts op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set the disable_interrupts op for cavs platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add a new op for disabling interrupts (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: use power_down_dsp op in hda_dsp_remove (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: mtl: define and set power_down_dsp op (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: define and set power_down_dsp op for HDA platforms (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: introduce new op to handle dsp power down (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_da7219_mx98360a: Access num_codecs through dai_link (Jaroslav Kysela) [2179850] - ASoC: soc-component: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2179850] - ALSA: hda/ca0132 - remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: SOF: pci-tgl: add missing PCI IDs for RPL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: pci-tgl: reorder PCI IDs (Jaroslav Kysela) [2179850] - ASoC: es8316: fix register sync error in suspend/resume tests (Jaroslav Kysela) [2179850] - ASoC: cs42l83: change cs42l83_regmap to static (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_pointer callback for mt8186 (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add setbias level for rt5682s codec in machine driver (Jaroslav Kysela) [2179850] - ASoC: ts3a227e: add parameters to control debounce times (Jaroslav Kysela) [2179850] - ALSA: usb-audio: Split endpoint setups for hw_params and prepare (take#2) (Jaroslav Kysela) [2179850] - ASoC: rt5682s: simplify the return of rt5682s_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: don't unprepare widget used other pipelines (Jaroslav Kysela) [2179850] - ASoC: SOF: clear prepare state when widget is unprepared (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: remove useless assignment (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-topology: clarify calculation precedence (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add ops for SKL/KBL (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add initial SKL/KBL hardware support (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add SKL/KBL hardware code loader (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-dsp: expose functions for SKL support (Jaroslav Kysela) [2179850] - ALSA: es18xx: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: soc.h: use array instead of playback/capture_widget (Jaroslav Kysela) [2179850] - ASoC: soc.h: use defined number instead of direct number (Jaroslav Kysela) [2179850] - ASoC: soc.h: remove num_cpus/codecs (Jaroslav Kysela) [2179850] - soundwire: intel: add helper to stop bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce helpers to start bus (Jaroslav Kysela) [2179850] - soundwire: intel: introduce intel_shim_check_wake() helper (Jaroslav Kysela) [2179850] - soundwire: intel: simplify read ops assignment (Jaroslav Kysela) [2179850] - soundwire: intel: remove intel_init() wrapper (Jaroslav Kysela) [2179850] - soundwire: intel: move shim initialization before power up/down (Jaroslav Kysela) [2179850] - soundwire: intel: remove clock_stop parameter in intel_shim_init() (Jaroslav Kysela) [2179850] - soundwire: intel: move all PDI initialization under intel_register_dai() (Jaroslav Kysela) [2179850] - soundwire: intel: move DAI registration and debugfs init earlier (Jaroslav Kysela) [2179850] - soundwire: intel: simplify flow and use devm_ for DAI registration (Jaroslav Kysela) [2179850] - soundwire: intel: fix error handling on dai registration issues (Jaroslav Kysela) [2179850] - ASoC: SOF: replace ipc4-loader dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: replace dev_vdbg with tracepoints (Jaroslav Kysela) [2179850] - ASoC: SOF: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: remove unneeded dev_vdbg (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: add HDA interrupt source tracing (Jaroslav Kysela) [2179850] - ASoC: SOF: add widget setup/free tracing (Jaroslav Kysela) [2179850] - ALSA: hda: ext: remove always-true conditions on host and link release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: fix locking in stream_release (Jaroslav Kysela) [2179850] - ALSA: hda: ext: simplify logic for stream assignment (Jaroslav Kysela) [2179850] - ALSA: hda: Use hdac_ext prefix in snd_hdac_stream_free_all() for clarity (Jaroslav Kysela) [2179850] - ALSA: hda: ext: make snd_hdac_ext_stream_init() static (Jaroslav Kysela) [2179850] - ALSA: hda: document state machine for hdac_streams (Jaroslav Kysela) [2179850] - ALSA: hda: make snd_hdac_stream_clear() static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: override mclk_id after parsing NHLT SSP blob (Jaroslav Kysela) [2179850] - ALSA: hda: intel-nhlt: add intel_nhlt_ssp_mclk_mask() (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: refine SSP count support (Jaroslav Kysela) [2179850] - soundwire: cadence: Simplify error paths in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix error check in cdns_xfer_msg() (Jaroslav Kysela) [2179850] - soundwire: bus: Fix wrong port number in sdw_handle_slave_alerts() (Jaroslav Kysela) [2179850] - soundwire: cadence: Write to correct address for each FIFO chunk (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add pcm_hw_params callback for mt8186 (Jaroslav Kysela) [2179850] - ALSA: ppc: Switch to use for_each_child_of_node() macro (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: remove unnecessary dev_set_drvdata() (Jaroslav Kysela) [2179850] - soundwire: qcom: do not send status of device 0 during alert (Jaroslav Kysela) [2179850] - soundwire: qcom: update status from device id 1 (Jaroslav Kysela) [2179850] - ASoC: max98390: Fix dsm calibration reading (Jaroslav Kysela) [2179850] - soundwire: cadence: Don't overwrite msg->buf during write commands (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_ssp_amp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASOC: SOF: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_es8336: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_nau8825: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_cs42l42: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use function devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: use devm_kcalloc() instead of devm_kzalloc() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Implement 'set_bclk_ratio' (Jaroslav Kysela) [2179850] - ASoC: cs42l83: Extend CS42L42 support to new part (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Export regmap elements to core namespace (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split I2C identity into separate module (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Pass component and dai defs into common probe (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split cs42l42_resume into two functions (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Split probe() and remove() into stages (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use cs42l42->dev instead of &i2c_client->dev (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add bitclock frequency argument to cs42l42_pll_config() (Jaroslav Kysela) [2179850] - soundwire: bus: Don't exit early if no device IDs were programmed (Jaroslav Kysela) [2179850] - soundwire: cadence: Fix lost ATTACHED interrupts when enumerating (Jaroslav Kysela) [2179850] - soundwire: bus: Don't re-enumerate before status is UNATTACHED (Jaroslav Kysela) [2179850] - soundwire: bus: Don't lose unattach notifications (Jaroslav Kysela) [2179850] - soundwire: cadence: fix updating slave status when a bus has multiple peripherals (Jaroslav Kysela) [2179850] - ASoC: soc-dapm: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: bcm2835-i2s: Switch to use dev_err_probe() helper (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: increase SRAM inbox and outbox size to 1024 (Jaroslav Kysela) [2179850] - ASoC: SOF: Adding amd HS functionality to the sof core (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Add support for Rembrandt plaform. (Jaroslav Kysela) [2179850] - ASoC: SOF: amd: Make ACP core code generic for newer SOC transition (Jaroslav Kysela) [2179850] - ASoC: nau8825: Add ADCOUT IO drive strength control (Jaroslav Kysela) [2179850] - ASoC: ak4458: Add ak4458_reset in device probe and remove (Jaroslav Kysela) [2179850] - ASoC: Intel: sof_rt5682: remove SOF_RT1015_SPEAKER_AMP_100FS flag (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of PLLB setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of I2S1 setting (Jaroslav Kysela) [2179850] - ASoC: rt5682s: Reduce coupling of Micbias and Vref2 settings (Jaroslav Kysela) [2179850] - ALSA: dummy: Add customizable volume min/max. (Jaroslav Kysela) [2179850] - ALSA: dummy: Fix trailing whitespaces. (Jaroslav Kysela) [2179850] - soundwire: cadence: remove unused sdw_cdns_master_ops declaration (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Add mtrace type information for IPC4 (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add support for mtrace log extraction (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Configure the debug box offset (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add define for the outbox window index (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Add macro to get core ID from log buffer status message (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4: Only print LOG BUFFER update message info if requested (Jaroslav Kysela) [2179850] - sound: oss: dmasound: remove software_input_volume declaration (Jaroslav Kysela) [2179850] - ALSA: memalloc: remove snd_dma_sg_ops declaration (Jaroslav Kysela) [2179850] - ALSA: line6: remove line6_set_raw declaration (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec.c: use devm_kzalloc() for DMA data (Jaroslav Kysela) [2179850] - ASoC: soc-core.c: setup rtd->pmdown_time at soc_new_pcm_runtime() (Jaroslav Kysela) [2179850] - ASoC: ak4458: Remove component probe() and remove() (Jaroslav Kysela) [2179850] - ASoC: max98390: Remove unnecessary amp on/off conrtol (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: tidyup snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: add comment for kzalloc()/kfree() on snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ASoC: sti-sas: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: switch to using gpiod API (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add devicetree support to select topologies (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add generic pcm_{open,close} callbacks (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: mt8195: Add mailbox generic callbacks for IPC (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: fixup snd_soc_dapm_new_control_unlocked() error handling (Jaroslav Kysela) [2179850] - ASoC: soc-dapm.c: don't use WARN_ON() at snd_soc_dai_link_event_pre_pmu() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Utilize acpi_get_subsystem_id() (Jaroslav Kysela) [2179850] - ALSA: hda: cs35l41: Call put_device() in the scope of get_device() (Jaroslav Kysela) [2179850] - ASoC: SOF: Remove strsplit_u32() and tokenize_input() (Jaroslav Kysela) [2179850] - lib/string_helpers: Introduce parse_int_array_user() (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ALSA: asihpi - Remove useless code in hpi_meter_get_peak() (Jaroslav Kysela) [2179850] - ASoC: amd: fix spelling mistake: "i.e" -> "i.e." (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: check fe condition at out of loop (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: add soc_pcm_ret() (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: remove unnecessary codec2codec_close_delayed_work() (Jaroslav Kysela) [2179850] - ALSA: hda/hdmi: Replace zero-length array with DECLARE_FLEX_ARRAY() helper (Jaroslav Kysela) [2179850] - ASoC: codecs: max98088: remove redundant ret variable (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink sardine platform machine driver build. (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine machine driver using dmic (Jaroslav Kysela) [2179850] - ASoC: amd: create platform device for acp6.2 machine driver (Jaroslav Kysela) [2179850] - ASoC: amd: enable Pink Sardine acp6.2 drivers build (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pci driver pm ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm driver dma ops (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 irq handler (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 pdm platform driver (Jaroslav Kysela) [2179850] - ASoC: amd: add platform devices for acp6.2 pdm driver and dmic driver (Jaroslav Kysela) [2179850] - ASoC: amd: add acp6.2 init/de-init functions (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine ACP PCI driver (Jaroslav Kysela) [2179850] - ASoC: amd: add Pink Sardine platform ACP IP register header (Jaroslav Kysela) [2179850] - ASoC: max98396: Make data monitor features configurable (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Modify dai_id macros to be more generic (Jaroslav Kysela) [2179850] - ASoC: tas2562: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Export highpass filter setting (Jaroslav Kysela) [2179850] - ASoC: tas2764: Add IRQ handling (Jaroslav Kysela) [2179850] - ASoC: sigmadsp: switch to use kmemdup_nul() helper (Jaroslav Kysela) [2179850] - ASoC: max98088: add support for noise gate reg (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Use generic implementation for .ipc_msg_data field (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: add snd_sof_dsp_ops callbacks for pcm and mail box (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add dai driver for mt8186 (Jaroslav Kysela) [2179850] - ASoC: codecs: add suspend and resume for ES8316 (Jaroslav Kysela) [2179850] - ASoC: SOF: imx8ulp: add missing of_node_put() in imx8ulp_probe() (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: imx8ulp: declare ops structure as static (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Skip IMR boot after a firmware crash or boot failure (Jaroslav Kysela) [2179850] - ASoC: SOF: ipc4-loader: Verify ext manifest magic number (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_MESSAGE_INJECTOR depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ASoC: SOF: Kconfig: Make IPC_FLOOD_TEST depend on SND_SOC_SOF (Jaroslav Kysela) [2179850] - ALSA: memalloc: Drop special handling of GFP for CONTINUOUS allocation (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Switch to standard device pages (Jaroslav Kysela) [2179850] - ALSA: pdaudiocf: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ALSA: vx: Drop superfluous GFP setup (Jaroslav Kysela) [2179850] - ASoC: atmel_ssc_dai: Remove the unneeded result variable (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup WakeEnable and WakeStatus (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup AC Timing Control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup IO control (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM Stream channel map and channel count (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup PCM stream capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: add comment for control stream cap/chmap (Jaroslav Kysela) [2179850] - soundwire: intel: remove unused PDM capabilities (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup SHIM SYNC (Jaroslav Kysela) [2179850] - soundwire: intel: remove IPPTR unused definition (Jaroslav Kysela) [2179850] - soundwire: intel: regroup definitions for LCTL (Jaroslav Kysela) [2179850] - soundwire: intel: cleanup definition of LCOUNT (Jaroslav Kysela) [2179850] - soundwire: intel: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: bus: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2179850] - soundwire: intel: set dev_num_ida_min (Jaroslav Kysela) [2179850] - soundwire: bus: allow device number to be unique at system level (Jaroslav Kysela) [2179850] - soundwire: bus: rename sdw_ida as sdw_bus_ida (Jaroslav Kysela) [2179850] - soundwire: dmi-quirks: add remapping for HP Omen 16-k0005TX (Jaroslav Kysela) [2179850] - ALSA: hda: cleanup definitions for multi-link registers (Jaroslav Kysela) [2179850] - ASoC: wcd9335: remove always-true condition (Jaroslav Kysela) [2179850] - ASoC: hdmi-codec: remove unused definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove dai_posn variable (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add copy function for capture case (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Move sof_compr_copy functionality (Jaroslav Kysela) [2179850] - ASoC: Intel: fix unused-variable warning in probe_codec (Jaroslav Kysela) [2179850] - ASoC: soc-pcm.c: summarize related settings at soc_new_pcm() (Jaroslav Kysela) [2179850] - ASoC: SOF: Fix compilation when HDA_AUDIO_CODEC config is disabled (Jaroslav Kysela) [2179850] - ASoC: amd: acp: add a label to make error path more clean (Jaroslav Kysela) [2179850] - ASoC: amd: acp: switch to use dev_err_probe() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: remove unnecessary NULL checks (Jaroslav Kysela) [2179850] - ASoC: Change handling of unimplemented set_bclk_ratio (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused defines (Jaroslav Kysela) [2179850] - ALSA: hda: Remove unused MAX_PIN_CONFIGS constant (Jaroslav Kysela) [2179850] - ALSA: hda: Rework snd_hdac_stream_reset() to use macros (Jaroslav Kysela) [2179850] - ALSA: hda: Move stream-register polling macros (Jaroslav Kysela) [2179850] - ASoC: SOF: imx: Add i.MX8ULP HW support (Jaroslav Kysela) [2179850] - ASoC: soc-utils-test: Add test for snd_soc_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Use snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Fix comment typo in cs42l42_slow_start_put() (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Move cs42l42_supply_names to .c file (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Add include dependencies to cs42l42.h (Jaroslav Kysela) [2179850] - ASoC: cs42l42: Don't include kernel.h (Jaroslav Kysela) [2179850] - ASoC: codecs: es8326: change es8326_regmap_config to static (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Add support for computing timestamps (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Save channel count and sample bytes (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Introduce sof_compr_stream (Jaroslav Kysela) [2179850] - ASoC: SOF: compress: Remove byte offset computation (Jaroslav Kysela) [2179850] - soundwire: intel: Remove unnecessary TODO (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: core: remove setting platform_max in kcontrol macros (Jaroslav Kysela) [2179850] - ALSA: hda: Fix page fault in snd_hda_codec_shutdown() (Jaroslav Kysela) [2179850] - ALSA: hda: Remove codec init and exit routines (Jaroslav Kysela) [2179850] - ALSA: hda: Always free codec on the device release (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop hdac_ext usage for codec device creation (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: Intel: Skylake: Introduce HDA codec init and exit routines (Jaroslav Kysela) [2179850] - ASoC: codecs: add support for ES8326 (Jaroslav Kysela) [2179850] - ASoC: Intel: Drop legacy HSW/BDW board-match information (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Drop SND_SOC_ACPI_INTEL_MATCH dependency (Jaroslav Kysela) [2179850] - ASoC: Intel: bdw_rt286: Rename module (Jaroslav Kysela) [2179850] - ASoC: Intel: hsw_rt5640: Rename module (Jaroslav Kysela) [2179850] - ASoC: soc-utils: Improve kerneldoc for snd_soc_tdm_params_to_bclk() (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Add TDM support for acp i2s stream (Jaroslav Kysela) [2179850] - ASoC: amd: acp: Initialize list to store acp_stream during pcm_open (Jaroslav Kysela) [2179850] - ASoC: Variable type completion (Jaroslav Kysela) [2179850] - ASoC: simple-card-utils: Fixup DAI sample format (Jaroslav Kysela) [2179850] - ASoC: SOF: mediatek: Add sof_mt8186_machs for mt8186 (Jaroslav Kysela) [2179850] - ASoC: SOF: Introduce function sof_of_machine_select (Jaroslav Kysela) [2179850] - ASoC: omap: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: DAPM: Replace sprintf() calls with sysfs_emit_at() (Jaroslav Kysela) [2179850] - ASoC: core: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: skylake: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: catpt: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: sst: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: tlv320aic26: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: aoa: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ALSA: ac97: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2179850] - ASoC: Intel: cirrus-common: Use UID to map correct amp to prefix (Jaroslav Kysela) [2179850] - ASoC: codecs: show PING status on resume failures (Jaroslav Kysela) [2179850] - soundwire: add sdw_show_ping_status() helper (Jaroslav Kysela) [2179850] - soundwire: intel/cadence: expose PING status in manager ops (Jaroslav Kysela) [2179850] - soundwire: add read_ping_status helper definition in manager ops (Jaroslav Kysela) [2179850] - soundwire: qcom: Update error prints to debug prints (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda: Drop no longer used ROM state definitions (Jaroslav Kysela) [2179850] - ASoC: SOF: Intel: hda-loader: Use the FSR state definitions during bootup (Jaroslav Kysela) [2179850] - ALSA: wavefront: remove redundant assignment to pointer end (Jaroslav Kysela) [2179850] - soundwire: Use acpi_dev_for_each_child() (Jaroslav Kysela) [2179850] - firewire: cdev: fix potential leak of kernel stack due to uninitialized value (Jaroslav Kysela) [2179850] - list: Add list_next_entry_circular() and list_prev_entry_circular() (Jaroslav Kysela) [2179850] - ASoC: cs43130: Re-use generic struct u16_fract (Jaroslav Kysela) [2179850] - firewire: fix potential uaf in outbound_phy_packet_callback() (Jaroslav Kysela) [2179850] - firewire: add kernel API to access packet structure in request structure for AR context (Jaroslav Kysela) [2179850] - firewire: add kernel API to access CYCLE_TIME register (Jaroslav Kysela) [2179850] - firewire: Add dummy read_csr/write_csr functions (Jaroslav Kysela) [2179850] - treewide: Replace open-coded flex arrays in unions (Jaroslav Kysela) [2179850] - firewire: Remove function callback casts (Jaroslav Kysela) [2179850] - ALSA: doc: Document PC Beep Hidden Register on Realtek ALC256 (Jaroslav Kysela) [2179850] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2179850]- [rt] build kernel-rt-4.18.0-498.rt7.287.el8 [2180997] - Revert "softirq: Let ksoftirqd do its job" (Oleg Nesterov) [2196767] - perf: Fix check before add_event_to_groups() in perf_group_detach() (Michael Petlan) [2209647] {CVE-2023-2235} - perf/core: Call LSM hook after copying perf_event_attr (Audra Mitchell) [2172142] - kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case (Audra Mitchell) [2172142] - cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset (Audra Mitchell) [2172142] - cgroup: Fix race condition at rebind_subsystems() (Audra Mitchell) [2172142] - tick/nohz: unexport __init-annotated tick_nohz_full_setup() (Audra Mitchell) [2172142] - ipc/mqueue: use get_tree_nodev() in mqueue_get_tree() (Audra Mitchell) [2172142] - genirq: Synchronize interrupt thread startup (Audra Mitchell) [2172142] - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n (Audra Mitchell) [2172142] - scftorture: Fix distribution of short handler delays (Audra Mitchell) [2172142] - tick/nohz: Use WARN_ON_ONCE() to prevent console saturation (Audra Mitchell) [2172142] - ipc/sem: do not sleep with a spin lock held (Audra Mitchell) [2172142] - signal: In get_signal test for signal_group_exit every time through the loop (Audra Mitchell) [2172142] - genirq: Move prio assignment into the newly created thread (Audra Mitchell) [2172142] - sched,irq: Convert to sched_set_fifo() (Audra Mitchell) [2172142] - cgroup/cpuset: Fix violation of cpuset locking rule (Audra Mitchell) [2172142] - timers: Move clearing of base::timer_running under base:: Lock (Audra Mitchell) [2172142] - cgroup1: fix leaked context root causing sporadic NULL deref in LTP (Audra Mitchell) [2172142] - jump_label: Fix usage in module __init (Audra Mitchell) [2172142] - padata: fix possible padata_works_lock deadlock (Audra Mitchell) [2172142] - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() (Audra Mitchell) [2172142] - padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial (Audra Mitchell) [2172142] - cpu/speculation: Warn on unsupported mitigations= parameter (Audra Mitchell) [2172142] - x86/speculation: Remove redundant arch_smt_update() invocation (Audra Mitchell) [2172142] - cpu/hotplug: Non-SMP machines do not make use of booted_once (Audra Mitchell) [2172142] - can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error path (Jose Ignacio Tornos Martinez) [2156579] {CVE-2022-28388} - kernfs: Improve kernfs_notify() poll notification latency (Ian Kent) [2195844] - stmmac: fix changing mac address (Corinna Vinschen) [2177654] - net/sched: cls_tcindex: downgrade to imperfect hash (Davide Caratti) [2192300] {CVE-2023-1829} - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race condition (Ricardo Robaina) [2185962] {CVE-2023-1989} - net: qcom/emac: Fix use after free bug in emac_remove due to race condition (Ricardo Robaina) [2192672] {CVE-2023-2483} - s390/crypto: improve retry logic in case of master key change (Tobias Huschle) [2212794] - bpf: pull before calling skb_postpull_rcsum() (Felix Maurer) [2186521] - bpf, sockmap: fix race in sock_map_free() (Felix Maurer) [2186521] - bpf, sock_map: Move cancel_work_sync() out of sock lock (Felix Maurer) [2186521] - brcmfmac: Switch to appropriate helper to load EFI variable contents (Lenny Szubowicz) [2183047] - iwlwifi: Switch to proper EFI variable store interface (Lenny Szubowicz) [2183047] - efi: Store mask of supported runtime services in struct efi (Lenny Szubowicz) [2183047] - NFS: Don't report errors from nfs_pageio_complete() more than once (Benjamin Coddington) [2213644] - NFS: Do not report flush errors in nfs_write_end() (Benjamin Coddington) [2213644] - NFS: Don't report ENOSPC write errors twice (Benjamin Coddington) [2213644] - NFS: fsync() should report filesystem errors over EINTR/ERESTARTSYS (Benjamin Coddington) [2213644] - NFS: Do not report EINTR/ERESTARTSYS as mapping errors (Benjamin Coddington) [2213644] - net: openvswitch: release vport resources on failure (Antoine Tenart) [2190225] - net: openvswitch: Add support to count upcall packets (Antoine Tenart) [2190225] - net: openvswitch: fix race on port output (Antoine Tenart) [2190225] - net: openvswitch: fix possible memory leak in ovs_meter_cmd_set() (Antoine Tenart) [2190225] - net: openvswitch: fix flow memory leak in ovs_flow_cmd_new (Antoine Tenart) [2190225] - openvswitch: Fix flow lookup to use unmasked key (Antoine Tenart) [2190225] - openvswitch: switch from WARN to pr_warn (Antoine Tenart) [2190225] - EDAC/i10nm: Add Intel Emerald Rapids server support (Aristeu Rozanski) [2165649] - EDAC/skx_common: Delete duplicated and unreachable code (Aristeu Rozanski) [2165649] - EDAC/skx_common: Enable EDAC support for the "near" memory (Aristeu Rozanski) [2165649] - EDAC/i10nm: Print an extra register set of retry_rd_err_log (Aristeu Rozanski) [2165649] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers for HBM (Aristeu Rozanski) [2165649] - EDAC/skx_common: Add ChipSelect ADXL component (Aristeu Rozanski) [2165649] - EDAC/i10nm: Fix NVDIMM detection (Aristeu Rozanski) [2165649] - EDAC/skx_common: Set the memory type correctly for HBM memory (Aristeu Rozanski) [2165649] - EDAC/mc: Add new HBM2 memory type (Aristeu Rozanski) [2165649] - EDAC: Replace EDAC_DIMM_PTR() macro with edac_get_dimm() function (Aristeu Rozanski) [2165649] - tpm: disable hwrng for fTPM on some AMD designs (Štěpán Horáček) [2159583] - tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address (Štěpán Horáček) [2159583] - tpm: Use managed allocation for bios event log (Štěpán Horáček) [2159583] - efi: tpm: Avoid READ_ONCE() for accessing the event log (Štěpán Horáček) [2159583] - tpm: Allow system suspend to continue when TPM suspend fails (Štěpán Horáček) [2159583] - tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm: acpi: Call acpi_put_table() to fix memory leak (Štěpán Horáček) [2159583] - tpm/tpm_crb: Fix error message in __crb_relinquish_locality() (Štěpán Horáček) [2159583] - tpm: Avoid function type cast of put_device() (Štěpán Horáček) [2159583] - char: tpm: Protect tpm_pm_suspend with locks (Štěpán Horáček) [2159583] - efi/tpm: Pass correct address to memblock_reserve (Štěpán Horáček) [2159583] - char: move from strlcpy with unused retval to strscpy (Štěpán Horáček) [2159583] - tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH (Štěpán Horáček) [2159583] - tpm: Fix buffer access in tpm2_get_tpm_pt() (Štěpán Horáček) [2159583] - tpm: ibmvtpm: Correct the return value in tpm_ibmvtpm_probe() (Štěpán Horáček) [2159583] - tpm: use try_get_ops() in tpm-space.c (Štěpán Horáček) [2159583] - tpm: Fix error handling in async work (Štěpán Horáček) [2159583] - tpm: vtpm_proxy: Check length to avoid compiler warning (Štěpán Horáček) [2159583] - tpm: fix NPE on probe for missing device (Štěpán Horáček) [2159583] - tpm: fix potential NULL pointer access in tpm_del_char_device (Štěpán Horáček) [2159583] - tpm_tis: Fix an error handling path in 'tpm_tis_core_init()' (Štěpán Horáček) [2159583] - tpm: add request_locality before write TPM_INT_ENABLE (Štěpán Horáček) [2159583] - tpm_tis_spi: Add missing SPI ID (Štěpán Horáček) [2159583] - tpm: fix Atmel TPM crash caused by too frequent queries (Štěpán Horáček) [2159583] - tpm: Check for integer overflow in tpm2_map_response_body() (Štěpán Horáček) [2159583] - KEYS: trusted: Fix TPM reservation for seal/unseal (Štěpán Horáček) [2135881] - KVM: x86: Add helpers to recalc physical vs. logical optimized APIC maps (John Allen) [2117761] - KVM: x86: Allow APICv APIC ID inhibit to be cleared (John Allen) [2117761] - KVM: x86: Track required APICv inhibits with variable, not callback (John Allen) [2117761] - Revert "KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu" (John Allen) [2117761] - KVM: SVM: Handle multiple logical targets in AVIC kick fastpath (John Allen) [2117761] - KVM: SVM: Require logical ID to be power-of-2 for AVIC entry (John Allen) [2117761] - KVM: SVM: Update svm->ldr_reg cache even if LDR is "bad" (John Allen) [2117761] - KVM: SVM: Always update local APIC on writes to logical dest register (John Allen) [2117761] - KVM: SVM: Inhibit AVIC if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Inhibit APICv/AVIC if the optimized physical map is disabled (John Allen) [2117761] - KVM: x86: Honor architectural behavior for aliased 8-bit APIC IDs (John Allen) [2117761] - Documentation: KVM: Add SPDX-License-Identifier tag (John Allen) [2117761] - Documentation: KVM: add virtual CPU errata documentation (John Allen) [2117761] - KVM: x86: Disable APIC logical map if vCPUs are aliased in logical mode (John Allen) [2117761] - KVM: x86: Disable APIC logical map if logical ID covers multiple MDAs (John Allen) [2117761] - KVM: x86: Skip redundant x2APIC logical mode optimized cluster setup (John Allen) [2117761] - KVM: x86: Explicitly track all possibilities for APIC map's logical modes (John Allen) [2117761] - KVM: x86: Explicitly skip optimized logical map setup if vCPU's LDR==0 (John Allen) [2117761] - KVM: SVM: Add helper to perform final AVIC "kick" of single vCPU (John Allen) [2117761] - KVM: SVM: Document that vCPU ID == APIC ID in AVIC kick fastpatch (John Allen) [2117761] - Revert "KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible" (John Allen) [2117761] - KVM: SVM: Replace "avic_mode" enum with "x2avic_enabled" boolean (John Allen) [2117761] - KVM: x86: Inhibit APIC memslot if x2APIC and AVIC are enabled (John Allen) [2117761] - KVM: x86: Handle APICv updates for APIC "mode" changes via request (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC if xAPIC ID mismatch is due to 32-bit ID (John Allen) [2117761] - KVM: x86: Don't inhibit APICv/AVIC on xAPIC ID "change" if APIC is disabled (John Allen) [2117761] - KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target (John Allen) [2117761] - KVM: SVM: Flush the "current" TLB when activating AVIC (John Allen) [2117761] - KVM: x86: Purge "highest ISR" cache when updating APICv state (John Allen) [2117761] - KVM: x86: Blindly get current x2APIC reg value on "nodecode write" traps (John Allen) [2117761] - KVM: x86: Bug the VM if an accelerated x2APIC trap occurs on a "bad" reg (John Allen) [2117761] - KVM: x86: Do not block APIC write for non ICR registers (John Allen) [2117761] - KVM: x86: Add support for vICR APIC-write VM-Exits in x2APIC mode (John Allen) [2117761] - KVM: x86: fix APICv/x2AVIC disabled when vm reboot by itself (John Allen) [2117761] - KVM: SEV: fix misplaced closing parenthesis (John Allen) [2117761] - KVM: SVM: Do not virtualize MSR accesses for APIC LVTT register (John Allen) [2117761] - KVM: SVM: Fix x2APIC MSRs interception (John Allen) [2117761] - KVM: x86: nSVM: optimize svm_set_x2apic_msr_interception (John Allen) [2117761] - KVM: SVM: Add AVIC doorbell tracepoint (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete x2AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: Warning APICv inconsistency only when vcpu APIC mode is valid (John Allen) [2117761] - KVM: x86: Move APIC access page helper to common x86 code (John Allen) [2117761] - KVM: SVM: Introduce hybrid-AVIC mode (John Allen) [2117761] - KVM: SVM: Do not throw warning when calling avic_vcpu_load on a running vcpu (John Allen) [2117761] - KVM: SVM: Modify AVIC GATag to support max number of 512 vCPUs (John Allen) [2117761] - KVM: SVM: Fix a benign off-by-one bug in AVIC physical table mask (John Allen) [2117761] - KVM: SVM: Ignore writes to Remote Read Data on AVIC write traps (John Allen) [2117761] - KVM: SVM: Introduce logic to (de)activate x2AVIC mode (John Allen) [2117761] - KVM: x86: nSVM: always intercept x2apic msrs (John Allen) [2117761] - KVM: SVM: Don't put/load AVIC when setting virtual APIC mode (John Allen) [2117761] - KVM: SVM: Refresh AVIC configuration when changing APIC mode (John Allen) [2117761] - KVM: x86: Deactivate APICv on vCPU with APIC disabled (John Allen) [2117761] - KVM: SVM: Adding support for configuring x2APIC MSRs interception (John Allen) [2117761] - KVM: SVM: Do not support updating APIC ID when in x2APIC mode (John Allen) [2117761] - KVM: SVM: Compute dest based on sender's x2APIC status for AVIC kick (John Allen) [2117761] - KVM: SVM: Update avic_kick_target_vcpus to support 32-bit APIC ID (John Allen) [2117761] - KVM: SVM: Update max number of vCPUs supported for x2AVIC mode (John Allen) [2117761] - KVM: svm/avic: Drop "struct kvm_x86_ops" for avic_hardware_setup() (John Allen) [2117761] - KVM: SVM: Detect X2APIC virtualization (x2AVIC) support (John Allen) [2117761] - KVM: x86: lapic: Rename [GET/SET]_APIC_DEST_FIELD to [GET/SET]_XAPIC_DEST_FIELD (John Allen) [2117761] - x86/cpufeatures: Introduce x2AVIC CPUID bit (John Allen) [2117761] - KVM: x86: SVM: fix nested PAUSE filtering when L0 intercepts PAUSE (John Allen) [2117761] - KVM: x86: nSVM: support PAUSE filtering when L0 doesn't intercept PAUSE (John Allen) [2117761] - KVM: x86: SVM: drop preempt-safe wrappers for avic_vcpu_load/put (John Allen) [2117761] - KVM: x86: disable preemption around the call to kvm_arch_vcpu_{un|}blocking (John Allen) [2117761] - KVM: x86: disable preemption while updating apicv inhibition (John Allen) [2117761] - KVM: SVM: Fix x2APIC Logical ID calculation for avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: x86: SVM: fix avic_kick_target_vcpus_fast (John Allen) [2117761] - KVM: SVM: Use target APIC ID to complete AVIC IRQs when possible (John Allen) [2117761] - KVM: x86: SVM: remove avic's broken code that updated APIC ID (John Allen) [2117761] - KVM: x86: inhibit APICv/AVIC on changes to APIC ID or APIC base (John Allen) [2117761] - KVM: x86: document AVIC/APICv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow AVIC to co-exist with a nested guest running (John Allen) [2117761] - KVM: x86: allow per cpu apicv inhibit reasons (John Allen) [2117761] - KVM: x86: SVM: allow to force AVIC to be enabled (John Allen) [2117761]- [rt] build kernel-rt-4.18.0-497.rt7.286.el8 [2180997] - sctp: fix a potential overflow in sctp_ifwdtsn_skip (Xin Long) [2189324] - sctp: check send stream number after wait_for_sndbuf (Xin Long) [2189324] - sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list (Xin Long) [2189324] - sctp: fail if no bound addresses can be used for a given scope (Xin Long) [2189324] - sctp: sysctl: make extra pointers netns aware (Xin Long) [2189324] - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop (Xin Long) [2189324] - sctp: delete free member from struct sctp_sched_ops (Xin Long) [2189324] - sctp: fix memory leak in sctp_stream_outq_migrate() (Xin Long) [2189324] - sctp: clear out_curr if all frag chunks of current msg are pruned (Xin Long) [2189324] - sctp: remove the unnecessary sinfo_stream check in sctp_prsctp_prune_unsent (Xin Long) [2189324] - sched/fair: Fix imbalance overflow (Phil Auld) [RHEL-419] - sched/fair: Move calculate of avg_load to a better location (Phil Auld) [RHEL-419] - sched/fair: Sanitize vruntime of entity being migrated (Phil Auld) [RHEL-419] - sched/rt: pick_next_rt_entity(): check list_entry (Phil Auld) [RHEL-419] - sched/fair: sanitize vruntime of entity being placed (Phil Auld) [RHEL-419] - sched/fair: Limit sched slice duration (Phil Auld) [RHEL-419] - sched/topology: Add __init for sched_init_domains() (Phil Auld) [RHEL-419] - sched/core: Reorganize ttwu_do_wakeup() and ttwu_do_activate() (Phil Auld) [RHEL-419] - sched/core: Micro-optimize ttwu_runnable() (Phil Auld) [RHEL-419] - sched/numa: Stop an exhastive search if an idle core is found (Phil Auld) [RHEL-419] - sched/topology: Add __init for init_defrootdomain (Phil Auld) [RHEL-419] - sched: Clear ttwu_pending after enqueue_task() (Phil Auld) [RHEL-419] - sched/psi: Fix possible missing or delayed pending event (Phil Auld) [RHEL-419] - sched/fair: Cleanup for SIS_PROP (Phil Auld) [RHEL-419] - sched/fair: Default to false in test_idle_cores() (Phil Auld) [RHEL-419] - sched/fair: Remove useless check in select_idle_core() (Phil Auld) [RHEL-419] - sched/fair: Avoid double search on same cpu (Phil Auld) [RHEL-419] - sched/fair: Remove redundant check in select_idle_smt() (Phil Auld) [RHEL-419] - sched: Rename task_running() to task_on_cpu() (Phil Auld) [RHEL-419] - sched/fair: Move call to list_last_entry() in detach_tasks (Phil Auld) [RHEL-419] - sched/fair: Cleanup loop_max and loop_break (Phil Auld) [RHEL-419] - sched/fair: Make sure to try to detach at least one movable task (Phil Auld) [RHEL-419] - sched: Add update_current_exec_runtime helper (Phil Auld) [RHEL-419] - sched/fair: Don't init util/runnable_avg for !fair task (Phil Auld) [RHEL-419] - sched/fair: Move task sched_avg attach to enqueue_task_fair() (Phil Auld) [RHEL-419] - sched/fair: Update comments in enqueue/dequeue_entity() (Phil Auld) [RHEL-419] - sched/fair: Maintain task se depth in set_task_rq() (Phil Auld) [RHEL-419] - sched/debug: Print each field value left-aligned in sched_show_task() (Phil Auld) [RHEL-419] - sched/fair: Make per-cpu cpumasks static (Phil Auld) [RHEL-419] - sched/fair: Rename select_idle_mask to select_rq_mask (Phil Auld) [RHEL-419] - sched: Snapshot thread flags (Phil Auld) [RHEL-419] - sched/fair: find_idlest_group(): Remove unused sd_flag parameter (Phil Auld) [RHEL-419] - redhat/genlog.py: add support to list/process zstream Jira tickets (Herton R. Krzesinski) - powercap: intel_rapl: add support for Emerald Rapids (Prarit Bhargava) [2156804] - vsock: avoid to close connected socket after the timeout (Stefano Garzarella) [2209710] - sfc: Fix module EEPROM reporting for QSFP modules (Íñigo Huguet) [2192382] - perf script: Fix missing Retire Latency fields option documentation (Michael Petlan) [2177014] - perf event x86: Add retire_lat when synthesizing PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [2177014] - perf test x86: Support the retire_lat (Retire Latency) sample_type check (Michael Petlan) [2177014] - perf script: Support Retire Latency (Michael Petlan) [2177014] - perf report: Support Retire Latency (Michael Petlan) [2177014]- [rt] build kernel-rt-4.18.0-496.rt7.285.el8 [2180997] - netfilter: nft_redir: correct value of inet type `.maxattrs` (Florian Westphal) [2189517] - netfilter: tproxy: fix deadlock due to missing BH disable (Florian Westphal) [2189517] - netfilter: ebtables: fix table blob use-after-free (Florian Westphal) [2189517] - netfilter: ctnetlink: fix possible refcount leak in ctnetlink_create_conntrack() (Florian Westphal) [2189517] - netfilter: nf_tables: make table handle allocation per-netns friendly (Florian Westphal) [2189517] - netfilter: nf_tables: really skip inactive sets when allocating name (Florian Westphal) [2189517] - intel_idle: add Emerald Rapids Xeon support (Prarit Bhargava) [2156824] - tools/power turbostat: Introduce support for EMR (Prarit Bhargava) [2156806] - kunit: drm: make DRM buddy test compatible with other pages sizes (Nico Pache) [2209108] - redhat: fix missing kunit module in mod-internal.list (Nico Pache) [2209108] - bluetooth: Perform careful capability checks in hci_sock_ioctl() (Ricardo Robaina) [2196359] {CVE-2023-2002} - macvlan: Fix mc_filter calculation (Xin Long) [2186948] - macvlan: Add netlink attribute for broadcast cutoff (Xin Long) [2186948] - macvlan: Skip broadcast queue if multicast with single receiver (Xin Long) [2186948] - net: macvlan: fix memory leaks of macvlan_common_newlink (Xin Long) [2186948] - net: macvlan: change schedule system_wq to system_unbound_wq (Xin Long) [2186948] - net: macvlan: fix potential UAF problem for lowerdev (Xin Long) [2186948] - macvlan: Support for high multicast packet rate (Xin Long) [2186948] - macvlan: Skip loopback packets in RX handler (Xin Long) [2186948] - macvlan: fix null dereference in macvlan_device_event() (Xin Long) [2186948] - macvlan: add cond_resched() during multicast processing (Xin Long) [2186948] - macvlan: schedule bc_work even if error (Xin Long) [2186948] - macvlan: replace kfree_skb by consume_skb for drop profiles (Xin Long) [2186948] - tipc: fix unexpected link reset due to discovery messages (Xin Long) [2193242] - tipc: Fix potential OOB in tipc_link_proto_rcv() (Xin Long) [2193242] - tipc: check skb_linearize() return value in tipc_disc_rcv() (Xin Long) [2193242] - tipc: fix the msg->req tlv len check in tipc_nl_compat_name_table_dump_header (Xin Long) [2193242] - tipc: fix a null-ptr-deref in tipc_topsrv_accept (Xin Long) [2193242] - s390/dasd: fix hanging blockdevice after request requeue (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce event for start IO error (Tobias Huschle) [2043875] - s390/dasd: add aq_timeouts autoquiesce trigger (Tobias Huschle) [2043875] - s390/dasd: add aq_requeue sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add aq_mask sysfs attribute (Tobias Huschle) [2043875] - s390/dasd: add autoquiesce feature (Tobias Huschle) [2043875] - s390/dasd: remove unused DASD EER defines (Tobias Huschle) [2043875] - md: Fix bitmap offset type in sb writer (Nigel Croxon) [2189478] - md/raid5: Improve performance for sequential IO (Nigel Croxon) [2189478] - md/raid5: remove unused working_disks variable (Nigel Croxon) [2189478] - md/raid10: fix memleak of md thread (Nigel Croxon) [2189478] - md/raid10: fix memleak for 'conf->bio_split' (Nigel Croxon) [2189478] - md/raid10: fix leak of 'r10bio->remaining' for recovery (Nigel Croxon) [2189478] - md/raid10: don't BUG_ON() in raise_barrier() (Nigel Croxon) [2189478] - md: fix soft lockup in status_resync (Nigel Croxon) [2189478] - md: add error_handlers for raid0 and linear (Nigel Croxon) [2151208 2189478] - md: Use optimal I/O size for last bitmap page (Nigel Croxon) [2189478] - md: Fix types in sb writer (Nigel Croxon) [2189478] - md: Move sb writer loop to its own function (Nigel Croxon) [2189478] - md/raid10: Fix typo in comment (replacment -> replacement) (Nigel Croxon) [2189478] - md/raid10: fix null-ptr-deref in raid10_sync_request (Nigel Croxon) [2189478] - md/raid10: fix task hung in raid10d (Nigel Croxon) [2189478] - md: simplify sysctl registration (Nigel Croxon) [2189478] - HID: intel-ish-hid: ipc: Fix potential use-after-free in work function (Tony Camuso) [2182388] - devm-helpers: Fix devm_delayed_work_autocancel() kerneldoc (Tony Camuso) [2182388] - devm-helpers: Add resource managed version of work init (Tony Camuso) [2182388] - workqueue: Add resource managed version of delayed work init (Tony Camuso) [2182388] - HID: stop drivers from selecting CONFIG_HID (Tony Camuso) [2182388] - HID: intel_ish-hid: Add check for ishtp_dma_tx_map (Tony Camuso) [2182388] - HID: intel-ish-hid: ishtp: remove variable rb_count (Tony Camuso) [2182388]- [rt] build kernel-rt-4.18.0-495.rt7.284.el8 [2180997] - i40e: Add support for VF to specify its primary MAC address (Stefan Assmann) [2091552] - net/tg3: resolve deadlock in tg3_reset_task() during EEH (Ken Cox) [2159218 2166475] - HID: asus: use spinlock to safely schedule workers (Ricardo Robaina) [2186285] {CVE-2023-1079} - HID: asus: use spinlock to protect concurrent accesses (Ricardo Robaina) [2186285] {CVE-2023-1079} - e1000e: Disable TSO on i219-LM card to increase speed (Ken Cox) [2109782] - erspan: get the proto with the md version for collect_md (Xin Long) [2207724] - netfilter: nf_tables: deactivate anonymous set from preparation phase (Florian Westphal) [2196155] {CVE-2023-32233} - scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate() (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR (Ewan D. Milne) [2171092] - scsi: core: Add BLIST_NO_VPD_SIZE for some VDASD (Ewan D. Milne) [2171092] - scsi: core: Fix a source code comment (Ewan D. Milne) [2171092] - scsi: Revert "scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT" (Ewan D. Milne) [2171092] - scsi: scsi_debug: Delete unreachable code in inquiry_vpd_b0() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_INITIAL in do_scsi_scan_host() (Ewan D. Milne) [2171092] - scsi: core: Use SCSI_SCAN_RESCAN in __scsi_add_device() (Ewan D. Milne) [2171092] - scsi: Define the COMPLETED sense key (Ewan D. Milne) [2171092] - scsi: core: Add I/O timeout count for SCSI device (Ewan D. Milne) [2171092] - tipc: check the bearer min mtu properly when setting it by netlink (Xin Long) [2185143] - tipc: do not update mtu if msg_max is too small in mtu negotiation (Xin Long) [2185143] - tipc: add tipc_bearer_min_mtu to calculate min mtu (Xin Long) [2185143] - net/tipc: fix tipc header files for kernel-doc (Xin Long) [2185143] - scsi: smartpqi: Update version to 2.1.22-040 (Don Brace) [2162103] - scsi: smartpqi: Update copyright to 2023 (Don Brace) [2162103] - scsi: smartpqi: Add sysfs entry for NUMA node in /sys/block/sdX/device (Don Brace) [2162103] - scsi: smartpqi: Stop sending driver-initiated TURs (Don Brace) [2162103] - scsi: smartpqi: Fix byte aligned writew for ARM servers (Don Brace) [2162103] - scsi: smartpqi: Add support for RAID NCQ priority (Don Brace) [2162103] - scsi: smartpqi: Validate block layer host tag (Don Brace) [2162103] - scsi: smartpqi: Remove contention for raid_bypass_cnt (Don Brace) [2162103] - scsi: smartpqi: Fix rare SAS transport memory leak (Don Brace) [2162103] - scsi: smartpqi: Remove NULL pointer check (Don Brace) [2162103] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2162103] - scsi: smartpqi: Map full length of PCI BAR 0 (Don Brace) [2162103] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [2162103] - scsi: mpi3mr: Use -ENOMEM instead of -1 in mpi3mr_expander_add() (Tomas Henzl) [2163671] - scsi: mpi3mr: Use IRQ save variants of spinlock to protect chain frame allocation (Tomas Henzl) [2163671] - scsi: mpi3mr: Handle soft reset in progress fault code (0xF002) (Tomas Henzl) [2163671] - scsi: mpi3mr: Update driver version to 8.4.1.0.0 (Tomas Henzl) [2163671] - scsi: mpi3mr: Update copyright year (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [2163671] - scsi: mpi3mr: Update MPI Headers to revision 27 (Tomas Henzl) [2163671] - scsi: mpi3mr: Avoid escalating to higher level reset when target is removed (Tomas Henzl) [2163671] - scsi: mpi3mr: Modify MUR timeout value to 120 seconds (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix admin queue memory leak upon soft reset (Tomas Henzl) [2163671] - scsi: mpi3mr: Successive VD delete and add causes FW fault (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix expander node leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix memory leaks in mpi3mr_init_ioc() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix sas_hba.phy memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix mpi3mr_hba_port memory leak in mpi3mr_remove() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix config page DMA memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix throttle_groups memory leak (Tomas Henzl) [2163671] - scsi: mpi3mr: Bad drive in topology results kernel crash (Tomas Henzl) [2163671] - scsi: mpi3mr: NVMe command size greater than 8K fails (Tomas Henzl) [2163671] - scsi: mpi3mr: Return proper values for failures in firmware init path (Tomas Henzl) [2163671] - scsi: mpi3mr: Wait for diagnostic save during controller init (Tomas Henzl) [2163671] - scsi: mpi3mr: Driver unload crashes host when enhanced logging is enabled (Tomas Henzl) [2163671] - scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unneeded version.h include (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix missing mrioc->evtack_cmds initialization (Tomas Henzl) [2163671] - scsi: mpi3mr: Use number of bits to manage bitmap sizes (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove unnecessary memcpy() to alltgt_info->dmi (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix issues in mpi3mr_get_all_tgt_info() (Tomas Henzl) [2163671] - scsi: mpi3mr: Fix an issue found by KASAN (Tomas Henzl) [2163671] - scsi: mpi3mr: Refer CONFIG_SCSI_MPI3MR in Makefile (Tomas Henzl) [2163671] - scsi: mpi3mr: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2163671] - scsi: mpi3mr: Suppress command reply debug prints (Tomas Henzl) [2163671] - ipmi: ipmb: Fix the MODULE_PARM_DESC associated to 'retry_time_ms' (Tony Camuso) [2174220] - ipmi:ssif: Add a timer between request retries (Tony Camuso) [2174220] - ipmi:ssif: Remove rtc_us_timer (Tony Camuso) [2174220] - ipmi_ssif: Rename idle state and check (Tony Camuso) [2174220] - ipmi:ssif: resend_msg() cannot fail (Tony Camuso) [2174220] - ipmi/watchdog: use strscpy() to instead of strncpy() (Tony Camuso) [2174220] - ipmi: ssif_bmc: Convert to i2c's .probe_new() (Tony Camuso) [2174220] - ipmi: fix use after free in _ipmi_destroy_user() (Tony Camuso) [2174220] - ipmi:ssif: Increase the message retry time (Tony Camuso) [2174220] - ipmi: Fix some kernel-doc warnings (Tony Camuso) [2174220] - ipmi: ssif_bmc: Use EPOLLIN instead of POLLIN (Tony Camuso) [2174220] - ipmi: fix msg stack when IPMI is disconnected (Tony Camuso) [2174220] - ipmi: fix memleak when unload ipmi driver (Tony Camuso) [2174220] - ipmi: fix long wait in unload when IPMI disconnect (Tony Camuso) [2174220] - ipmi: kcs: Poll OBF briefly to reduce OBE latency (Tony Camuso) [2174220] - ipmi: ssif_bmc: Add SSIF BMC driver (Tony Camuso) [2174220] - ipmi: Remove unused struct watcher_entry (Tony Camuso) [2174220] - ipmi: kcs: aspeed: Update port address comments (Tony Camuso) [2174220] - ipmi: Add __init/__exit annotations to module init/exit funcs (Tony Camuso) [2174220] - ipmi:ipmb: Don't call ipmi_unregister_smi() on a register failure (Tony Camuso) [2174220] - ipmi:ipmb: Fix a vague comment and a typo (Tony Camuso) [2174220] - ipmi: Fix comment typo (Tony Camuso) [2174220] - char: ipmi: modify NPCM KCS configuration (Tony Camuso) [2174220] - cipso: Fix data-races around sysctl. (Juraj Marcin) [2181138] - netlabel: fix out-of-bounds memory accesses (Juraj Marcin) [2181138] - CIPSO: Fix unaligned memory access in cipso_v4_gentag_hdr (Juraj Marcin) [2181138] - netlabel_domainhash.c: Use built-in RCU list checking (Juraj Marcin) [2181138] - net: netlabel: Use built-in RCU list checking (Juraj Marcin) [2181138] - netlabel: remove redundant assignment to pointer iter (Juraj Marcin) [2181138] - capabilities: fix potential memleak on error path from vfs_getxattr_alloc() (Juraj Marcin) [2181138] - selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context() (Juraj Marcin) [2181138] - selinux: free contexts previously transferred in selinux_add_opt() (Juraj Marcin) [2181138] - LSM: general protection fault in legacy_parse_param (Juraj Marcin) [2181138] - selinux: check return value of sel_make_avc_files (Juraj Marcin) [2181138] - net/sched: flower: fix error handler on replace (Ivan Vecera) [2180870] - Revert "net/sched: flower: Fix wrong handle assignment during filter change" (Ivan Vecera) [2180870] - net/sched: flower: fix filter idr initialization (Ivan Vecera) [2180870] - net/sched: cls_api: remove block_cb from driver_list before freeing (Ivan Vecera) [2180870] - net/sched: flower: Fix wrong handle assignment during filter change (Ivan Vecera) [2180870] - net/sched: cls_api: Initialize miss_cookie_node when action miss is not used (Ivan Vecera) [2180870] - net/sched: sch_fq: fix integer overflow of "credit" (Ivan Vecera) [2180870] - net/sched: clear actions pointer in miss cookie init fail (Ivan Vecera) [2180870] - net/sched: mqprio: simplify handling of nlattr portion of TCA_OPTIONS (Ivan Vecera) [2180870] - l2tp: generate correct module alias strings (Ivan Vecera) [2180870] - net/sched: act_api: add specific EXT_WARN_MSG for tc action (Ivan Vecera) [2180870] - Revert "net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy" (Ivan Vecera) [2180870] - netfilter: ctnetlink: revert to dumping mark regardless of event type (Ivan Vecera) [2180870] - net/sched: flower: fix fl_change() error recovery path (Ivan Vecera) [2180870] - net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy (Ivan Vecera) [2180870] - net/sched: act_connmark: handle errno on tcf_idr_check_alloc (Ivan Vecera) [2180870] - net/sched: act_sample: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_mpls: fix action bind logic (Ivan Vecera) [2180870] - net/sched: act_pedit: fix action bind logic (Ivan Vecera) [2180870] - net/sched: cls_api: Move call to tcf_exts_miss_cookie_base_destroy() (Ivan Vecera) [2180870] - net/sched: flower: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: flower: Move filter handle initialization earlier (Ivan Vecera) [2180870] - net/sched: cls_api: Support hardware miss to tc action (Ivan Vecera) [2180870] - net/sched: Rename user cookie and act cookie (Ivan Vecera) [2180870] - net/sched: taprio: dynamic max_sdu larger than the max_mtu is unlimited (Ivan Vecera) [2180870] - net/sched: taprio: don't allow dynamic max_sdu to go negative after stab adjustment (Ivan Vecera) [2180870] - net/sched: taprio: fix calculation of maximum gate durations (Ivan Vecera) [2180870] - net/sched: act_pedit: use percpu overlimit counter when available (Ivan Vecera) [2180870] - net/sched: act_gate: use percpu stats (Ivan Vecera) [2180870] - net/sched: act_connmark: transition to percpu stats and rcu (Ivan Vecera) [2180870] - net/sched: act_nat: transition to percpu stats and rcu (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: cleanup temporary files when test is aborted (Ivan Vecera) [2180870] - net/sched: support per action hw stats (Ivan Vecera) [2180870] - net/sched: introduce flow_offload action cookie (Ivan Vecera) [2180870] - net/sched: pass flow_stats instead of multiple stats args (Ivan Vecera) [2180870] - net/sched: act_pedit, setup offload action for action stats query (Ivan Vecera) [2180870] - net/sched: optimize action stats api calls (Ivan Vecera) [2180870] - net/sched: act_ctinfo: use percpu stats (Ivan Vecera) [2180870] - net/sched: fix error recovery in qdisc_create() (Ivan Vecera) [2180870] - net/sched: taprio: don't segment unnecessarily (Ivan Vecera) [2180870] - net/sched: taprio: split segmentation logic from qdisc_enqueue() (Ivan Vecera) [2180870] - net/sched: taprio: automatically calculate queueMaxSDU based on TC gate durations (Ivan Vecera) [2180870] - net/sched: keep the max_frm_len information inside struct sched_gate_list (Ivan Vecera) [2180870] - net/sched: taprio: warn about missing size table (Ivan Vecera) [2180870] - net/sched: make stab available before ops->init() call (Ivan Vecera) [2180870] - net/sched: taprio: calculate guard band against actual TC gate close time (Ivan Vecera) [2180870] - net/sched: taprio: calculate budgets per traffic class (Ivan Vecera) [2180870] - net/sched: taprio: rename close_time to end_time (Ivan Vecera) [2180870] - net/sched: taprio: calculate tc gate durations (Ivan Vecera) [2180870] - net/sched: taprio: give higher priority to higher TCs in software dequeue mode (Ivan Vecera) [2180870] - net/sched: taprio: avoid calling child->ops->dequeue(child) twice (Ivan Vecera) [2180870] - net/sched: taprio: refactor one skb dequeue from TXQ to separate function (Ivan Vecera) [2180870] - net/sched: taprio: continue with other TXQs if one dequeue() failed (Ivan Vecera) [2180870] - net/sched: taprio: delete peek() implementation (Ivan Vecera) [2180870] - net: sched: sch: Fix off by one in htb_activate_prios() (Ivan Vecera) [2180870] - net/sched: taprio: only pass gate mask per TXQ for igc, stmmac, tsnep, am65_cpsw (Ivan Vecera) [2180870] - net/sched: taprio: pass mqprio queue configuration to ndo_setup_tc() (Ivan Vecera) [2180870] - net/sched: refactor mqprio qopt reconstruction to a library function (Ivan Vecera) [2180870] - net/sched: taprio: centralize mqprio qopt validation (Ivan Vecera) [2180870] - net/sched: mqprio: add extack messages for queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow offloading drivers to request queue count validation (Ivan Vecera) [2180870] - net/sched: mqprio: allow reverse TC:TXQ mappings (Ivan Vecera) [2180870] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Ivan Vecera) [2180870] - net/sched: mqprio: refactor offloading and unoffloading to dedicated functions (Ivan Vecera) [2180870] - net/sched: mqprio: refactor nlattr parsing to a separate function (Ivan Vecera) [2180870] - netlink: add support for formatted extack messages (Ivan Vecera) [2180870] - net/sched: simplify tcf_pedit_act (Ivan Vecera) [2180870] - net/sched: transition act_pedit to rcu and percpu stats (Ivan Vecera) [2180870] - net: sched: sch: Bounds check priority (Ivan Vecera) [2180870] - net: Kconfig: fix spellos (Ivan Vecera) [2180870] - net/sched: sch_taprio: do not schedule in taprio_reset() (Ivan Vecera) [2180870] - sched: add new attr TCA_EXT_WARN_MSG to report tc extact message (Ivan Vecera) [2180870] - net/sched: sch_taprio: fix possible use-after-free (Ivan Vecera) [2180870] - net: sched: htb: fix htb_classify() kernel-doc (Ivan Vecera) [2180870] - net/sched: fix retpoline wrapper compilation on configs without tc filters (Ivan Vecera) [2180870] - net: sched: update the nat flag for icmp error packets in ct_nat_execute (Ivan Vecera) [2180870] - net/sched: avoid indirect classify functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: avoid indirect act functions on retpoline kernels (Ivan Vecera) [2180870] - net/sched: add retpoline wrapper for tc (Ivan Vecera) [2180870] - net/sched: move struct action_ops definition out of ifdef (Ivan Vecera) [2180870] - netfilter: ctnetlink: fix compilation warning after data race fixes in ct mark (Ivan Vecera) [2180870] - net: sched: allow act_ct to be built without NF_NAT (Ivan Vecera) [2180870] - netfilter: conntrack: Fix data-races around ct mark (Ivan Vecera) [2180870] - net: flow_offload: add support for ARP frame matching (Ivan Vecera) [2180870] - selftests: tc-testing: Add matchJSON to tdc (Ivan Vecera) [2180870] - Documentation: networking: TC queue based filtering (Ivan Vecera) [2180870] - act_skbedit: skbedit queue mapping for receive queue (Ivan Vecera) [2180870] - net: sched: cake: fix null pointer access issue when cake_init() fails (Ivan Vecera) [2180870] - net: sched: use tc_cls_bind_class() in filter (Ivan Vecera) [2180870] - net: sched: cls_api: introduce tc_cls_bind_class() helper (Ivan Vecera) [2180870] - net: sched: ensure n arg not empty before call bind_class (Ivan Vecera) [2180870] - selftests/tc-testing: update qdisc/cls/action features in config (Ivan Vecera) [2180870] - net/sched: taprio: allow user input of per-tc max SDU (Ivan Vecera) [2180870] - net/sched: query offload capabilities through ndo_setup_tc() (Ivan Vecera) [2180870] - net: sched: act_bpf: simplify code logic in tcf_bpf_init() (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for teql qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for tbf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for taprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for skbprio qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for sfb qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for plug qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for pfifo_fast qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for hhf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for gred qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for fq qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for etf qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for codel qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for choke qdisc (Ivan Vecera) [2180870] - selftests/tc-testing: add selftests for atm qdisc (Ivan Vecera) [2180870] - headers: Remove some left-over license text (Ivan Vecera) [2180870] - net/sched: taprio: simplify list iteration in taprio_dev_notifier() (Ivan Vecera) [2180870] - net/sched: taprio: remove unnecessary taprio_list_lock (Ivan Vecera) [2180870] - net: sched: remove unused tcf_result extension (Ivan Vecera) [2180870] - net: sched: simplify code in mall_reoffload (Ivan Vecera) [2180870] - net: sched: act_ct: remove redundant variable err (Ivan Vecera) [2180870] - selftests/tc-testings: add list case for basic filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for tcindex filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for rsvp filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for route filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for flow filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for cgroup filter (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for bpf filter (Ivan Vecera) [2180870] - net/sched: use tc_cls_stats_dump() in filter (Ivan Vecera) [2180870] - net/sched: cls_api: add helper for tc cls walker stats dump (Ivan Vecera) [2180870] - net/sched: taprio: replace safety precautions with comments (Ivan Vecera) [2180870] - net/sched: taprio: add extack messages in taprio_init (Ivan Vecera) [2180870] - net/sched: taprio: stop going through private ops for dequeue and peek (Ivan Vecera) [2180870] - net/sched: taprio: remove redundant FULL_OFFLOAD_IS_ENABLED check in taprio_enqueue (Ivan Vecera) [2180870] - net/sched: taprio: use rtnl_dereference for oper and admin sched in taprio_destroy() (Ivan Vecera) [2180870] - net/sched: taprio: taprio_dump and taprio_change are protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: taprio_offload_config_changed() is protected by rtnl_mutex (Ivan Vecera) [2180870] - net/sched: taprio: avoid disabling offload when it was never enabled (Ivan Vecera) [2180870] - flow_offload: Introduce flow_match_l2tpv3 (Ivan Vecera) [2180870] - net/sched: flower: Add L2TPv3 filter (Ivan Vecera) [2180870] - flow_dissector: Add L2TPv3 dissectors (Ivan Vecera) [2180870] - skbuff: make __skb_header_pointer()'s data argument const (Ivan Vecera) [2180870] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2180870] - uapi: move IPPROTO_L2TP to in.h (Ivan Vecera) [2180870] - selftests/tc-testings: add tunnel_key action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add sample action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add nat action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add ife action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add connmark action deleting test case (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for xt action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for gate action (Ivan Vecera) [2180870] - selftests/tc-testings: add selftests for ctinfo action (Ivan Vecera) [2180870] - net: sched: act_vlan: get rid of tcf_vlan_walker and tcf_vlan_search (Ivan Vecera) [2180870] - net: sched: act_tunnel_key: get rid of tunnel_key_walker and tunnel_key_search (Ivan Vecera) [2180870] - net: sched: act_skbmod: get rid of tcf_skbmod_walker and tcf_skbmod_search (Ivan Vecera) [2180870] - net: sched: act_skbedit: get rid of tcf_skbedit_walker and tcf_skbedit_search (Ivan Vecera) [2180870] - net: sched: act_simple: get rid of tcf_simp_walker and tcf_simp_search (Ivan Vecera) [2180870] - net: sched: act_sample: get rid of tcf_sample_walker and tcf_sample_search (Ivan Vecera) [2180870] - net: sched: act_police: get rid of tcf_police_walker and tcf_police_search (Ivan Vecera) [2180870] - net: sched: act_pedit: get rid of tcf_pedit_walker and tcf_pedit_search (Ivan Vecera) [2180870] - net: sched: act_nat: get rid of tcf_nat_walker and tcf_nat_search (Ivan Vecera) [2180870] - net: sched: act_mpls: get rid of tcf_mpls_walker and tcf_mpls_search (Ivan Vecera) [2180870] - net: sched: act_mirred: get rid of tcf_mirred_walker and tcf_mirred_search (Ivan Vecera) [2180870] - net: sched: act_ipt: get rid of tcf_ipt_walker/tcf_xt_walker and tcf_ipt_search/tcf_xt_search (Ivan Vecera) [2180870] - net: sched: act_ife: get rid of tcf_ife_walker and tcf_ife_search (Ivan Vecera) [2180870] - net: sched: act_gate: get rid of tcf_gate_walker and tcf_gate_search (Ivan Vecera) [2180870] - net: sched: act_gact: get rid of tcf_gact_walker and tcf_gact_search (Ivan Vecera) [2180870] - net: sched: act_ctinfo: get rid of tcf_ctinfo_walker and tcf_ctinfo_search (Ivan Vecera) [2180870] - net: sched: act_ct: get rid of tcf_ct_walker and tcf_ct_search (Ivan Vecera) [2180870] - net: sched: act_csum: get rid of tcf_csum_walker and tcf_csum_search (Ivan Vecera) [2180870] - net: sched: act_connmark: get rid of tcf_connmark_walker and tcf_connmark_search (Ivan Vecera) [2180870] - net: sched: act_bpf: get rid of tcf_bpf_walker and tcf_bpf_search (Ivan Vecera) [2180870] - net: sched: act_api: implement generic walker and search for tc action (Ivan Vecera) [2180870] - net: sched: act: move global static variable net_id to tc_action_ops (Ivan Vecera) [2180870] - net: sched: htb: remove redundant resource cleanup in htb_init() (Ivan Vecera) [2180870] - net/sched: cls_api: remove redundant 0 check in tcf_qevent_init() (Ivan Vecera) [2180870] - net: sched: etf: remove true check in etf_enable_offload() (Ivan Vecera) [2180870] - net: sched: gred: remove NULL check before free table->tab in gred_destroy() (Ivan Vecera) [2180870] - net: sched: remove redundant NULL check in change hook function (Ivan Vecera) [2180870] - net: sched: gred/red: remove unused variables in struct red_stats (Ivan Vecera) [2180870] - net: sched: choke: remove unused variables in struct choke_sched_data (Ivan Vecera) [2180870] - net: sched: using TCQ_MIN_PRIO_BANDS in prio_tune() (Ivan Vecera) [2180870] - net_sched: remove impossible conditions (Ivan Vecera) [2180870] - net: sched: remove unnecessary init of qdisc skb head (Ivan Vecera) [2180870] - net: sched: delete duplicate cleanup of backlog and qlen (Ivan Vecera) [2180870] - net: sched: remove duplicate check of user rights in qdisc (Ivan Vecera) [2180870] - net_sched: move from strlcpy with unused retval to strscpy (Ivan Vecera) [2180870] - net: sched: delete unused input parameter in qdisc_create (Ivan Vecera) [2180870] - net: sched: remove the unused return value of unregister_qdisc (Ivan Vecera) [2180870] - net_sched: cls_route: disallow handle of 0 (Ivan Vecera) [2180870] - net/sched: sch_cbq: change the type of cbq_set_lss to void (Ivan Vecera) [2180870] - net/sched: remove qdisc_root_lock() helper (Ivan Vecera) [2180870] - net/sched: sch_cbq: Delete unused delay_timer (Ivan Vecera) [2180870] - net/sched: remove return value of unregister_tcf_proto_ops (Ivan Vecera) [2180870] - net: extract port range fields from fl_flow_key (Ivan Vecera) [2180870] - net/sched: act_ct: set 'net' pointer when creating new nf_flow_table (Ivan Vecera) [2180870] - net: sched: provide shim definitions for taprio_offload_{get,free} (Ivan Vecera) [2180870] - time64.h: consolidate uses of PSEC_PER_NSEC (Ivan Vecera) [2180870] - selftests: tc-testing: Add testcases to test new flush behaviour (Ivan Vecera) [2180870] - tc-testing: gitignore, delete plugins directory (Ivan Vecera) [2180870] - net/sched: sch_netem: Fix arithmetic in netem_dump() for 32-bit platforms (Ivan Vecera) [2180870] - net_sched: em_meta: add READ_ONCE() in var_sk_bound_if() (Ivan Vecera) [2180870] - selftests: forwarding: tc_actions: allow mirred egress test to run on non-offloaded h2 (Ivan Vecera) [2180870] - net: sched: support hash selecting tx queue (Ivan Vecera) [2180870] - net: sched: use queue_mapping to pick tx queue (Ivan Vecera) [2180870] - net_sched: make qdisc_reset() smaller (Ivan Vecera) [2180870] - sch_red: Fix a typo (Ivan Vecera) [2180870] - wifi: ath9k: Don't mark channelmap stack variable read-only in ath9k_mci_update_wlan_channels() (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix an uninit variable access bug in qrtr_tx_resume() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: ignore key disable commands (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: reduce the MHI timeout to 20s (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Do not do DEL_SERVER broadcast after DEL_CLIENT (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix fw used for offload check for mt7922 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: Fix use-after-free in fw features query. (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix SDIO suspend/resume regression (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: Fix a refcount bug in qrtr_recvmsg() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix flow dissection for forwarded packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh forwarding (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving mesh packets in forwarding=0 networks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix the size calculation of ieee80211_ie_len_eht_cap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix potential null pointer dereference (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop bogus static keywords in A-MSDU rx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix mesh path discovery based on unicast packets (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix qos on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Serialize ieee80211_handle_wake_tx_queue() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: mark OF related data as maybe unused (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: do not check WED status for non-mmio devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add back 160MHz channel width support for MT7915 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76_unregister_device() on unregistered hw (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext" (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix MLO connection ownership (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: check basic rates validity (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix puncturing bitmap policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: fix NULL-ptr deref in offchan check (Jose Ignacio Tornos Martinez) [2183487] - wifi: wext: warn about usage only once (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: allow system suspend to survive ath11k (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: add LEDS_CLASS dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove unused iwl_dbgfs_is_match() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix AP mode authentication transmission failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: use RTW_FLAG_POWERON flag to prevent to power on/off twice (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: p2p: Introduce generic flexible array frame member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add documentation for amsdu_mesh_control (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove gfp parameter from cfg80211_obss_color_collision_notify description (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: always initialize link_sta with sta (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: pass 'sta' to ieee80211_rx_data_set_sta() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Set SSID if it is not already set (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move H2C of del_pkt_offload before polling FW status ready (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use readable return 0 in rtw89_mac_cfg_ppdu_status() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: drop now unnecessary URB size check (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: send Zero length packets if necessary (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: usb: Set qsel correctly (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix off-by-one link setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix for Rx fragmented action frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: avoid u32_encode_bits() warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Don't translate MLD addresses for multicast (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: call reg_notifier for self managed wiphy from driver hint (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: get rid of gfp in cfg80211_bss_color_notify (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: Allow authentication frames and set keys on NAN interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix non-MLO station association (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Allow NSS change only up to capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add a workaround for receiving non-standard mesh A-MSDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix receiving A-MSDU frames on mesh interfaces (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove mesh forwarding congestion check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: factor out bridge tunnel / RFC1042 header check (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move A-MSDU check in ieee80211_data_to_8023_exthdr (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: make rate u32 in sta_set_rate_info_rx() (Jose Ignacio Tornos Martinez) [2183487] - rfkill: Use sysfs_emit() to instead of sprintf() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Allow action frames to be transmitted with link BSS in MLD (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: include puncturing bitmap in channel switch events (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: validate and configure puncturing bitmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: move puncturing bitmap validation from mac80211 (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: return error message for malformed chandef (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211_hwsim: Rename pid to portid to avoid confusion (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: add MLO_LINK_ID to CMD_STOP_AP event (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: emit CMD_START_AP on multicast group when an AP is started (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: handle EHT channel puncturing (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_update_owe_info_event() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Extend cfg80211_new_sta() for MLD AP (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: move color collision detection report in a delayed work (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix use after free for wext (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Authentication offload to user space for MLO connection in STA mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: trace: remove MAC_PR_{FMT,ARG} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fix txdw7 assignment of TX DESC v3 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8723AU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add LED control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Register the LED and make it blink (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: set TX power according to RF path number by chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct register mask name of TX power offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: use passed channel in set_tx_shape_dfir() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: enable CLKREQ of PCI capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: try to use NORMAL_CE type firmware first (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: don't support LPS-PG mode after firmware 0.29.26.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: reset IDMEM mode to default value (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add use of pkt_list offload to debug entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine packet offload flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix potential wrong mapping for pkt-offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: disallow enter PS mode after create TDLS link (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine MCC C2H debug logs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix parsing offset for MCC C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: deal with RXI300 error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: avoid invalid access on RTW89_DBG_SEL_MAC_30 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: add function to get TSF (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: split out generic part of rtw89_mac_port_tsf_sync() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct unit for port offset and refine macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi Bluetooth coexistence version to 7.0.0 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Fix test fail when coexist with raspberryPI A2DP idle (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Correct A2DP exist variable source (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Set Bluetooth background scan PTA request priority (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Refine coexistence log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Force to update TDMA parameter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Clear Bluetooth HW PTA counter when radio state change (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update Wi-Fi external control TDMA parameters/tables (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: change cfg80211_set_channel() name and signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Replace one-element arrays with flexible-array members (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support firmware hotfix version in GET_HW_SPEC responses (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Support SD8978 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mwifiex: Add missing compatible string for SD8787 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Perform correct BCM4364 firmware selection (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4377 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Rename Cypress 89459 to BCM4355 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: mac: Use existing macros in rtw_pwr_seq_parser() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move enum rtw_tx_queue_type mapping code to tx.{c,h} (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Change queue datatype to enum rtw_tx_queue_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: pci: Use enum type for rtw_hw_queue_mapping() and ac_to_hwq (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: support ww power config in dts node (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0u: report firmware version through ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: complete wed reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add mt7915 wed reset callbacks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: reset wed queues in mt76_dma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: add reset to mt76_dma_wed_setup signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT beamforming support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable EHT support in firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support for EHT rate report (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add EHT capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rework capability init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add helpers for wtbl and interface limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add variants support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT rate stats for ethtool (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: increase wcid size to 1088 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add cmd id related to EHT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add helpers for EHT capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add CMD_CBW_320MHZ (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add EHT phy type (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: remove __mt76_mcu_restart macro (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_tx_complete_skb (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_skb_unmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac_txp_common structure (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: rely on mt76_connac2_mac_tx_rate_val (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix error code of return in mt7921_acpi_read (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: release rxwi in mt7915_wed_release_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mmio_wed_init_rx_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix rx filter incorrect by drv/fw inconsistent (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add memory barrier to SDIO queue kick (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: reduce polling time in pmctrl (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add flexible polling wait-interval support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix WED TxS reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: wed: enable red per-band token drop (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set sku initial value to zero (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921u: add support for Comfast CF-952AX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix switch default case in mt7996_reverse_frag0_hdr_trans (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7603: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: avoid mcu_restart function pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix memory leak running mt76_dma_tx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix memory leak in mt7996_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix memory leak in mt7915_mcu_exit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce mt76_queue_is_wed_rx utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix invalid remain_on_channel duration (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: remove BW160 and BW80+80 support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: fix POWER_CTRL command name typo (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: do not hardcode vht beamform cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: update register for CFEND_RATE (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix chainmask calculation in mt7996_set_antenna() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix channel switch fail in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add chip id condition in mt7915_check_eeprom() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add error message in mt7915_thermal_set_cur_throttle_state() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_thermal_temp_store() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_mcu_set_thermal_throttling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after init_work (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: fix deadlock in mt7921_abort_roc (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix off by one in mhi_ep_process_cmd_ring() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix compilation errors in rfkill() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: bump FW API to 74 for AX devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Reset rate index if rate is wrong (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: simplify by using SKB MAC header pointer (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add sniffer meta data APIs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rx: add sniffer support for EHT mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: always send nullfunc frames on MGMT queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: remove h from printk format specifier (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: improve tag handling in iwl_request_firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mention the response structure in the kerneldoc (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add minimal EHT rate reporting (Jose Ignacio Tornos Martinez) [2183487] - net: qrtr: free memory on error path in radix_tree_insert() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Change state_lock to mutex (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Save channel state locally during suspend and resume (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Move chan->lock to the start of processing queued ch ring (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Fix the debug message for MHI_PKT_TYPE_RESET_CHAN_CMD cmd (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Only send -ENOTCONN status if client driver is available (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Check if the channel is supported by the controller (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: ep: Power up/down MHI stack during MHI RESET (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Update mhi driver description (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: Update Makefile to used Kconfig flags (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: deny wireless extensions on MLO-capable devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: wireless: warn on most wireless extension usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: drop extra 'e' from ieeee80211... name (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Deduplicate certificate loading (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add kernel-doc for EHT structure (Jose Ignacio Tornos Martinez) [2183487] - mac80211: support minimal EHT rate reporting on RX (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add HE MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Add VHT MU-MIMO related flags in ieee80211_bss_conf (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Use MLD address to indicate MLD STA disconnection (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Support 32 bytes KCK key in GTK rekey offload (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix extended KCK key length check in nl80211_set_rekey_data() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: remove support for static WEP (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add support to read EEPROM caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Add new qmi_bdf_type to handle caldata (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix incorrect qmi_file_type enum values (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix uninitialized warning related to the pktlog (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: dp_mon: Fix out of bounds clang warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal_rx: Use memset_startat() for clearing queue descriptors (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: Fix uninitilized variable clang warnings (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: wmi: delete PSOC_HOST_MAX_NUM_SS (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: convert offset macros to functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: hal: add ab parameter to macros using it (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix ce memory mapping for ahb devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove the unused function ath10k_ce_shadow_src_ring_write_index_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add channel 177 into 5 GHz channel list (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Add support to configure FTM responder role (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix potential stack-out-of-bounds write in ath9k_wmi_rsp_callback() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Dump the efuse only for untested devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Print the ROM version too (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use non-atomic sta iterator in rtw_ra_mask_info_update() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Use rtw_iterate_vifs() for rtw_vif_watch_dog_iter() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Move register access from rtw_bf_assoc() outside the RCU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use a longer retry limit of 48 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Report the RSSI to the firmware (Jose Ignacio Tornos Martinez) [2183487] - wifi: rt2x00: Remove useless else if (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt7601u: fix an integer underflow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723ae: fix obvious spelling error tyep->type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU (Jose Ignacio Tornos Martinez) [2183487] - Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: fix a regression in adding rx buffers (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: fill the missing configuration about queue empty checking (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix assignation of TX BD RAM table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct ADC clock settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct register definitions of digital CFO and spur elimination (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: set the correct mac_id for management frames (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix null vif pointer when get management frame date rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi role info related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change RTL8852B use v1 TDMA policy (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Packet traffic arbitration hardware owner monitor (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor debug log of slot list (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware steps report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change Wi-Fi Null data report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add version code for Wi-Fi firmware coexistence control (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update WiFi role info H2C report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: only read Bluetooth counter of report version 1 for RTL8852A (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v5 firmware control report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change firmware control report to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v4 version firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Rename BTC firmware cycle report by feature version (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Remove le32 to CPU translator at firmware cycle report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix a typo in debug message (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out-of-bounds (Jose Ignacio Tornos Martinez) [2183487] - wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid NULL-deref in survey dump for 2G only device (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: avoid handling disabled channels for survey dump (Jose Ignacio Tornos Martinez) [2183487] - net: rfkill: gpio: add DT support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix double space in comment (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: debugfs: fix to work with multiple PCI devices (Jose Ignacio Tornos Martinez) [2183487] - mac80211: Fix MLO address translation for multiple bss case (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: reset multiple BSSID options in stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Fix iTXQ AMPDU fragmentation handling (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: sdata can be NULL during AMPDU start (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Proper mark iTXQs for resumption (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Prefer DT board type over DMI board type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove most hidden macro dependencies on ah (Jose Ignacio Tornos Martinez) [2183487] - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add rate control code for RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188EU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Define masks for cck_agc_rpt bits (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make rtl8xxxu_load_firmware take const char* (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Deduplicate the efuse dumping code (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: refine AGC tuning flow of DPK for irregular PA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: refine 6 GHz scanning dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: update BSS color mapping register (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Change TDMA related logic to version separate (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: refactor _chk_btc_report() to extend more features (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Add v2 BT AFH report and related variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Update BTC firmware report bitmap definition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: Enable Bluetooth report when show debug info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: use new introduction BTC version format (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: add BTC format version derived from firmware version (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: select CONFIG_RELAY (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: Fix global-out-of-bounds bug in _rtl8812ae_phy_set_txpower_limit() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: recover RX DCK failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DPK settings (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct DACK setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of security section (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: consider ER SU as a TX capability (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->cck_agc_report_type (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix assignment to bit field priv->pi_enabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: get rid of wed rx_buf_ring page_frag_cache (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: resource leaks at mt7921_check_offload_capability() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: rely on queue page_frag_cache for wed rx queues (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: handle possible mt76_rx_token_consume failures (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: dma: do not increment queue head if mt76_dma_add_buf fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per-phy led support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds struct in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move leds field in leds struct (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix unintended sign extension of mt7915_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix unintended sign extension of mt7996_hw_queue_read() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add support to update fw capability with MTFG table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: fix oob access in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix endianness warning in mt7996_mcu_sta_he_tlv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: drop always true condition of __mt7996_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: drop always true condition of __mt7915_reg_addr() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check the correctness of event data (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: check return value before accessing free_block_num (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: split mcu chan_mib array up (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix integer handling issue of mt7996_rf_regval_set() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_rx_radar_detected() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_ie_countdown() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_rate_txpower_get() resource leaks (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921s: fix slab-out-of-bounds access in sdio host (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor mode bringup crash (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix scan request param frame size warning (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: fixing IQK failures for rtl8192eu (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: btcoexist: fix conditions branches that are never executed (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192se: remove redundant rtl_get_bbreg() call (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8723du chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8822bu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add rtw8821cu chipset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Add common USB chip support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: iterate over vif/sta list non-atomically (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop coex mutex (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop h2c.lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Drop rf_lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: Call rtw_fw_beacon_filter_config() with rtwdev->mutex held (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: print firmware type in info message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add join info upon create interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix unsuccessful interface_add flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: stop mac port function when stop_ap() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add mac TSF sync function (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Introduce rtl8xxxu_update_ra_report (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the channel width reporting (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add vendor name in revinfo debugfs file (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support Broadcom BCA firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for Cypress firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add support for vendor-specific firmware api (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add firmware vendor info in driver info (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: add function to unbind device to bus layer api (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add ipq5018 device support (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add new hw ops for IPQ5018 to get rx dest ring hashmap (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: initialize hw_ops for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hal srng regs for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: remap ce register space for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update ce configurations for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: update hw params for IPQ5018 (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: fw: use correct IML/ROM status register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for UMAC valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: d3: add TKIP to the GTK iterator (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: clean up comments (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Don't use deprecated register (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: pcie: Add reading and storing of crf and cdb id. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: replace usage of found with dedicated list iterator variable (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dump: Update check for valid FW address (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: don't access packet before checking len (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: modify new queue allocation command (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: enable WiFi7 for Fm radio for now (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to rx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix race condition with struct htt_ppdu_stats_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: fix QCOM_SMEM dependency (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921e: add pci .shutdown() support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: mmio: fix naming convention (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rely on band_idx of mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable per bandwidth power limit support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: introduce mt7915_get_power_bound() (Jose Ignacio Tornos Martinez) [2183487] - mt76: mt7915: Fix PCI device refcount leak in mt7915_pci_init_hif2() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix coverity overrun-call in mt76_get_txpower() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x0: remove dead code in mt76x0_phy_get_target_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix band_idx usage (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable .sta_set_txpwr support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add basedband Txpower info into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add support to configure spatial reuse parameter set (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add missing MODULE_PARM_DESC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX stats (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable WED RX support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_mcu_sta_wed_update utility routine (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add info parameter to rx_skb signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to dma queue alloc (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_rx_fill (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: add WED RX support to mt76_dma_{add,get}_buf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: introduce rxwi and rx token utility routines (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce helper for mt7996 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more starec command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more bss info command tags (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce unified event table (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add more unified command IDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework fields for larger bandwidth support in sta_rec_bf (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update struct sta_rec_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: rework macros for unified command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce chanctx support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: introduce remain_on_channel support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: accept hw scan request at a time (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: drop ieee80211_[start, stop]_queues in driver (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add unified ROC cmd/event support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7921: add chanctx parameter to mt76_connac_mcu_uni_add_bss signature (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: add mt76_connac_mcu_uni_set_chctx (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: do not run mt76u_status_worker if the device is not running (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: update nss calculation in txs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: don't claim 160MHz support with mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix VHT beamforming capabilities with DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: Fix chainmask calculation on mt7915 DBDC (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable coredump support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add full system reset into debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable full system reset support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework mt7915_dma_reset() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move aggr_stats array in mt76_phy (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: rely on mt7615_phy in mt7615_mac_reset_counters (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7615: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable use_cts_prot support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: fix bandwidth 80MHz link fail in 6GHz band (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add ack signal support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: improve accuracy of time_busy calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986-wmac chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: enable wed for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: move wed init routines in mmio.c (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix mt7915_mac_set_timing() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: set correct antenna for radar detection on MT7915D (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: add spatial extension index support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: connac: introduce mt76_connac_spe_idx() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework testmode tx antenna setting (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: deal with special variant of mt7916 (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: rework eeprom tx paths and streams init (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: reserve 8 bits for the index of rf registers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt7915: fix bounds checking for tx-free-done command (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: Remove unused inline function mt76_wcid_mask_test() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: mt76x02: simplify struct mt76x02_rate_power (Jose Ignacio Tornos Martinez) [2183487] - wifi: mt76: move mt76_rate_power from core to mt76x02 driver code (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix and simplify unencrypted drop check for mesh (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add support for restricting netdev features per vif (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: update TIM for S1G specification changes (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't parse multi-BSSID in assoc resp (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: use bss_from_pub() instead of container_of() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove unnecessary synchronize_net() (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop not needed check for NULL (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys() fails (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: fix comparison of BSS frequencies (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Correct example of ieee80211_iface_limit (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix memory leak in ieee80211_if_add() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Do not open-code qos address offsets (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: link rtw89_vif and chanctx stuffs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: implement MCC related H2C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: mac: process MCC related C2H (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: introduce helpers to wait/complete on condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if atomic before queuing c2h (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: rfk: rename rtw89_mcc_info to rtw89_rfk_mcc_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: 8821c: enable BT device recovery mechanism (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: turn off PoP function in monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add HE radiotap for monitor mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: enable mac80211 virtual monitor interface (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Check the count value of channel spec to prevent out-of-bounds reads (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath12k: driver for Qualcomm Wi-Fi 7 devices (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add reset to tx_ring_setup callback (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add mtk_wed_rx_reset routine (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: update mtk_wed_stop (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: move MTK_WDMA_RESET_IDX_TX configuration in mtk_wdma_tx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: return status value in mtk_wdma_rx_reset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add wcid overwritten support for wed v1 (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: add configure wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: rename tx_wdma array in rx_wdma (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed wo support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_wed: introduce wed mcu support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing of_node_put() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add missing put_device() in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add axi bus support (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add wed support for mt7986 chipset (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_wed: add mtk_wed_configure_irq and mtk_wed_dma_{enable/disable} (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix off by one check of ARRAY_SIZE (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: add check for allocation failure (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc/wed: fix sparse endian warnings (Jose Ignacio Tornos Martinez) [2183487] - net: ethernet: mtk_eth_soc: fix return value check in mtk_wed_add_hw() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix parameter passing to iwl_mei_alive_notif() (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: return error value in case PLDR sync failed (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: trigger PCI re-enumeration in case of PLDR sync (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: fix double free on tx path. (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print OTP info after alive (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm: Update EHT capabilities for GL device (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: nvm-parse: support A-MPDU in EHT 2.4 GHz (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: advertise 320 MHz in 6 GHz only conditionally (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: set HE PHY bandwidth according to band (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support PPE Thresholds for EHT (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: add support for EHT 1K aggregation size (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: rs: add support for parsing max MCS per NSS/BW in 11be (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support 320 MHz PHY configuration (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Advertise EHT capabilities (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw88: fix race condition when doing H2C command (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Store WLAN firmware version in SMEM image table (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: avoid inaccessible IO operations during doing change_interface() (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: switch BANDEDGE and TX_SHAPE based on OFDMA trigger frame (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: read CFO from FD or preamble CFO field of phy status ie_type 1 accordingly (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: correct TX power controlled by BT-coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() in code ralated to struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: replace one-element array with flexible-array member in struct brcmf_dload_data_le (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Use struct_size() and array_size() in code ralated to struct brcmf_gscan_config (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Replace one-element array with flexible-array member (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Remove redundant argument offset (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Fix return value in ath10k_pci_init() (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add definition for some VIDs (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: Fix some error handling path in rtw89_wow_enable() (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: Avoid clashing function prototypes (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use u32_get_bits in *_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use strscpy instead of sprintf (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Name some bits used in burst init (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Rename rtl8xxxu_8188f_channel_to_group (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Split up rtl8xxxu_identify_chip (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Move burst init to a function (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: wait for the mac to stop on suspend (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: iwlmei: report disconnection as temporary (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: use wait_event_timeout() return value (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: implement PLDR flow (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: Fix getting the lowest rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: support new key API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: use bit of DRAM alloc ID to store failed allocs (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: print an error instead of a warning on invalid rate (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: cfg: disable STBC for BL step A devices (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: dbg: add support for DBGC4 on BZ family and above (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: use old checksum for Bz A-step (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix potential NULL-ptr deref after clone (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: avoid blocking sap messages handling due to rtnl lock (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: fix tx DHCP packet for devices with new Tx API (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: don't send SAP commands if AMT is disabled (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mei: make sure ownership confirmed message is sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: iwlwifi: mvm: send TKIP connection status to csme (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Use IEEE80211_SEQ_TO_SN() for seq_ctrl conversion (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove unused variable mismatch (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: change debug mask of message of no TX resource (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Trigger sta disconnect on hardware restart (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: update D-MAC and C-MAC dump to diagnose SER (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: dump dispatch status via debug port (Jose Ignacio Tornos Martinez) [2183487] - wifi: Use kstrtobool() instead of strtobool() (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Avoiding Connection delay (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix for when connect request is not success (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: correctly remove all p2p vif (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add HP variant of T99W175 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: add support for sc8280xp-crd SDX55 variant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Use dev_* instead of pr_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Set IEEE80211_HW_SUPPORT_FAST_XMIT (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Recognise all possible chip cuts (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix the CCK RSSI calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Add central frequency offset tracking (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential NULL pointer dereference in 'brcmf_c_preinit_dcmds()' (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix a typo "unknow" (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtlwifi: rtl8192ee: remove static variable stop_report_cnt (Jose Ignacio Tornos Martinez) [2183487] - bcma: Use the proper gpio include (Jose Ignacio Tornos Martinez) [2183487] - mtd: rawnand: brcmnand: Add platform data structure for BCMA (Jose Ignacio Tornos Martinez) [2183487] - wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Make QMI message rules const (Jose Ignacio Tornos Martinez) [2183487] - soc: qcom: qmi: use const for struct qmi_elem_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: synchronize ath11k_mac_he_gi_to_nl80211_he_gi()'s return type (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix qmi_msg_handler data structure initialization (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: remove variable sent (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: Fix spelling mistake KIP_RESOTRE -> KIP_RESTORE (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN pattern match support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add WoWLAN function support (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add related H2C for WoWLAN mode (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add drop tx packet function (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add function to adjust and restore PLE quota (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: move enable_cpu/disable_cpu into fw_download (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: collect and send RF parameters to firmware for WoWLAN (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: check if sta's mac_id is valid under AP/TDLS (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add BW info for both TX and RX in phy_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: make table of RU mask constant (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: declare support bands with const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fw: adapt to new firmware format of dynamic header (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (net). (Jose Ignacio Tornos Martinez) [2183487] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Fix race between channel preparation and M0 event (Jose Ignacio Tornos Martinez) [2183487] - bus: mhi: host: Use mhi_soc_reset() API in place of register write (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: fix monitor vdev creation with firmware recovery (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reads of uninitialized variables hw_ctrl_s1, sw_ctrl_s1 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add 8852be to Makefile and Kconfig (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: add dummy C2H handler to avoid warning message (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to RF calibration (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add TSSI (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add IQK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RX DCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add RCK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: rfk: add DACK (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Delay the unmapping of the buffer (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Check return value of ath10k_get_arvif() in ath10k_wmi_event_tdls_peer() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix firmware crash on vdev delete race condition (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Send PME message during wakeup from D3cold (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: add support to configure channel dwell time (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: suppress add interface error (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic attributes of chip_info (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add functions to control BB to assist RF calibrations (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to configure TX/RX path (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to query PPDU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops related to BT coexistence (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to get thermal (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add basic baseband chip_ops (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add power on/off functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel_help (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Update module description (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Fix reading the vendor of combo chips (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Make some arrays const (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: fix wrong bandwidth settings after scan (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: correct 6 GHz scan behavior (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_channel (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: make generic functions to convert subband gain index (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add HFC quota arrays (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: set proper configuration before loading NCTL (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: parse PHY status only when PPDU is to_self (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: coex: move chip_ops::btc_bt_aci_imp to a generic code (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: verify the expected usb_endpoints are present (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb() (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Remove -Warray-bounds exception (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs() (Jose Ignacio Tornos Martinez) [2183487] - wifi: realtek: remove duplicated wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath9k: Make arrays prof_prio and channelmap static const (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Fix spelling mistake "chnange" -> "change" (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Drop support for TX push path (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add wake_tx_queue callback to drivers (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add internal handler for wake_tx_queue (Jose Ignacio Tornos Martinez) [2183487] - cfg80211: Update Transition Disable policy during port authorization (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: minstrel_ht: remove unused has_mrr member from struct minstrel_priv (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: remove support for AddBA with fragmentation (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: agg-rx: avoid band check (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: prohibit IEEE80211_HT_CAP_DELAY_BA with MLO (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: don't clear DTIM period after setting it (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: change AddBA deny error message (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: mlme: mark assoc link in output (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add RCU _check() link access variants (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: fix AddBA response addressing (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: set internal scan request BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: advertise TWT requester only with HW support (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: use link_id in ieee80211_change_bss() (Jose Ignacio Tornos Martinez) [2183487] - wifi: nl80211: use link ID in NL80211_CMD_SET_BSS (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: transmit AddBA with MLD address (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: wme: use ap_addr instead of deflink BSSID (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Process association status for affiliated links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: Parse station profile from association response (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size validation (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211/mac80211: Fix ML element common size calculation (Jose Ignacio Tornos Martinez) [2183487] - wifi: ieee80211: Support validating ML station profile length (Jose Ignacio Tornos Martinez) [2183487] - wifi: cfg80211: support reporting failed links (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: recalc station aggregate data during link switch (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: include link address in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add API to show the link STAs in debugfs (Jose Ignacio Tornos Martinez) [2183487] - wifi: mac80211: add pointer from link STA to STA (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: add to dump TX FIFO 0/1 for 8852C (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: set pin MUX to enable BT firmware log (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: ignore warning of bb gain cfg_type 4 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: update BB parameters to v28 (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: rfk: correct miscoding delay of DPK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852c: correct set of IQK backup registers (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix AP interface delete issue (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: support station interface creation version 1, 2 and 3 (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add creating station interface support (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: dump dongle memory when attaching failed (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: return error when getting invalid max_flowrings from dongle (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: add a timer to read console periodically in PCIE bus (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Fix authentication latency caused by OBSS stats survey (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix CERT-P2P:5.1.10 failure (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: fix firmware trap while dumping obss stats (Jose Ignacio Tornos Martinez) [2183487] - brcmfmac: Add dump_survey cfg80211 ops for HostApd AutoChannelSelection (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtl8xxxu: Support new chip RTL8188FU (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852be: add 8852BE PCI entry (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read phy cap (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops to read efuse (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add chip_ops::set_txpwr (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: debug: txpwr_table considers sign (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: phy: make generic txpwr setting functions (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add tables for RFK (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (2 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: rtw89: 8852b: add BB and RF tables (1 of 2) (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: Don't exit on wakeup failure (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath10k: Replace zero-length arrays with DECLARE_FLEX_ARRAY() helper (Jose Ignacio Tornos Martinez) [2183487] - wifi: ath11k: stop tx queues immediately upon firmware exit (Jose Ignacio Tornos Martinez) [2183487] - Revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jose Ignacio Tornos Martinez) [2183487] - treewide: use get_random_u32() when possible (Jose Ignacio Tornos Martinez) [2183487] - treewide: use prandom_u32_max() when possible, part 1 (Jose Ignacio Tornos Martinez) [2183487] - hwrng: core - let sleep be interrupted when unregistering hwrng (Jose Ignacio Tornos Martinez) [2183487] - tracing/kprobes: Do the notrace functions check without kprobes on ftrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix a double initialization typo (Mukesh Chaurasiya) [2203370] - tracing/kprobe: Check whether the non-suffixed symbol is notrace (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix to check notrace function with correct range (Mukesh Chaurasiya) [2203370] - tracing/kprobes: Fix within_notrace_func() to check only notrace functions (Mukesh Chaurasiya) [2203370] - powerpc/kprobes: Fix kprobe Oops happens in booke (Mukesh Chaurasiya) [2203370] - xfs: verify buffer contents when we skip log replay (Andrey Albershteyn) [2187464] {CVE-2023-2124} - perf c2c: Add report option to show false sharing in adjacent cachelines (Michael Petlan) [2193188] - powerpc/papr_scm: Update the NUMA distance table for the target node (Mamatha Inamdar) [2183474] - i2c: xgene-slimpro: Fix out-of-bounds bug in xgene_slimpro_i2c_xfer() (Tony Camuso) [2188406] {CVE-2023-2194} - prlimit: do_prlimit needs to have a speculation check (Alex Gladkov) [2196315] {CVE-2023-0458} - vmxnet3: use gro callback when UPT is enabled (Izabela Bakollari) [2183057] - r8152: Rate limit overflow messages (Jose Ignacio Tornos Martinez) [2153574] {CVE-2022-3594} - docs: Remove unnecessary unicode character (Patrick Talbert) [2207988] - PCI: vmd: Add quirk to configure PCIe ASPM and LTR (Myron Stowe) [2136922] - PCI: vmd: Create feature grouping for client products (Myron Stowe) [2136922] - PCI: vmd: Use PCI_VDEVICE in device list (Myron Stowe) [2136922] - PCI/ASPM: Add pci_enable_link_state() (Myron Stowe) [2136922] - PCI: vmd: Fix secondary bus reset for Intel bridges (Myron Stowe) [2136922] - PCI: vmd: Disable MSI remapping after suspend (Myron Stowe) [2136922] - PCI: vmd: Add DID 8086:7D0B and 8086:AD0B for Intel MTL SKUs (Myron Stowe) [2136922] - PCI: vmd: Use devm_kasprintf() instead of simple kasprintf() (Myron Stowe) [2136922]- [rt] build kernel-rt-4.18.0-494.rt7.283.el8 [2180997] - net/sched: sch_fq: fix integer overflow of "credit" (Davide Caratti) [2187718] - net: sched: gred: prevent races when adding offloads to stats (Davide Caratti) [2187718] - sch_htb: Avoid grafting on htb_destroy_class_offload when destroying htb (Davide Caratti) [2187718] - net/sched: act_mpls: Fix warning during failed attribute validation (Davide Caratti) [2187718] - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2187718] - net_sched: reject TCF_EM_SIMPLE case for complex ematch module (Davide Caratti) [2187718] - net: sched: Fix use after free in red_enqueue() (Davide Caratti) [2187718] - net: sched: fix race condition in qdisc_graft() (Davide Caratti) [2187718] - net: sched: sfb: fix null pointer access issue when sfb_init() fails (Davide Caratti) [2187718] - net/sched: cls_api: Fix flow action initialization (Davide Caratti) [2187718] - scsi: lpfc: Update inbox lpfc driver for RHEL 8.9 to 14.0.0.21. (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.11 patches (Paul Ely) [2165048] - scsi: lpfc: Copyright updates for 14.2.0.10 patches (Paul Ely) [2165048] - scsi: lpfc: Defer issuing new PLOGI if received RSCN before completing REG_LOGIN (Paul Ely) [2165048] - scsi: lpfc: Record LOGO state with discovery engine even if aborted (Paul Ely) [2165048] - scsi: lpfc: Fix lockdep warning for rx_monitor lock when unloading driver (Paul Ely) [2165048] - scsi: lpfc: Reorder freeing of various DMA buffers and their list removal (Paul Ely) [2165048] - scsi: lpfc: Prevent lpfc_debugfs_lockstat_write() buffer overflow (Paul Ely) [2165048] - scsi: lpfc: Introduce new attention types for lpfc_sli4_async_fc_evt() handler (Paul Ely) [2165048] - scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write (Paul Ely) [2165048] - scsi: lpfc: Exit PRLI completion handling early if ndlp not in PRLI_ISSUE state (Paul Ely) [2165048] - scsi: lpfc: Remove duplicate ndlp kref decrement in lpfc_cleanup_rpis() (Paul Ely) [2165048] - scsi: lpfc: Remove redundant clean up code in disable_vport() (Paul Ely) [2165048] - scsi: lpfc: Fix crash involving race between FLOGI timeout and devloss handler (Paul Ely) [2165048] - net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg (Ricardo Robaina) [2192681] {CVE-2023-2248 CVE-2023-31436} - vfio/ccw: remove old IDA format restrictions (Tobias Huschle) [2187662] - vfio/ccw: handle a guest Format-1 IDAL (Tobias Huschle) [2187662] - vfio/ccw: allocate/populate the guest idal (Tobias Huschle) [2187662] - vfio/ccw: calculate number of IDAWs regardless of format (Tobias Huschle) [2187662] - vfio/ccw: read only one Format-1 IDAW (Tobias Huschle) [2187662] - vfio/ccw: refactor the idaw counter (Tobias Huschle) [2187662] - vfio/ccw: populate page_array struct inline (Tobias Huschle) [2187662] - vfio/ccw: record the page offset in struct pfn_array (Tobias Huschle) [2187662] - vfio/ccw: pass page count to page_array struct (Tobias Huschle) [2187662] - vfio/ccw: simplify CCW chain fetch routines (Tobias Huschle) [2187662] - vfio/ccw: move where IDA flag is set in ORB (Tobias Huschle) [2187662] - vfio/ccw: allow non-zero storage keys (Tobias Huschle) [2187662] - iavf: remove active_cvlans and active_svlans bitmaps (Stefan Assmann) [2153349] - iavf: refactor VLAN filter states (Stefan Assmann) [2153349] - iavf: do not track VLAN 0 filters (Stefan Assmann) [2153349] - iavf: fix non-tunneled IPv6 UDP packet type and hashing (Stefan Assmann) [2153349] - iavf: fix inverted Rx hash condition leading to disabled hash (Stefan Assmann) [2153349] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153349] - iavf/iavf_main: actually log ->src mask when talking about it (Stefan Assmann) [2153349] - iavf: Fix VF driver counting VLAN 0 filters (Stefan Assmann) [2153349] - iavf: Change information about device removal in dmesg (Stefan Assmann) [2153349] - iavf: Replace __FUNCTION__ with __func__ (Stefan Assmann) [2153349] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2153349] - ipv4: prevent potential spectre v1 gadget in fib_metrics_match() (Guillaume Nault) [2188040] - ipv4: prevent potential spectre v1 gadget in ip_metrics_convert() (Guillaume Nault) [2188040] - ipv4: Fix error return code in fib_table_insert() (Guillaume Nault) [2188040] - ipv4: drop dst in multicast routing path (Guillaume Nault) [2188040] - net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter() (Guillaume Nault) [2188040] - xfrm: Zero padding when dumping algos and encap (Sabrina Dubroca) [2189212] - xfrm: redact SA secret with lockdown confidentiality (Sabrina Dubroca) [2189212] - xfrm: fix bug with DSCP copy to v6 from v4 tunnel (Sabrina Dubroca) [2189212] - xfrm: enforce validity of offload input flags (Sabrina Dubroca) [2189212] - ice: Remove LAG+SRIOV mutual exclusion (Michal Schmidt) [2120585] - ext4: correct the misjudgment in ext4_iget_extra_inode (Carlos Maiolino) [2193101] - ext4: correct max_inline_xattr_value_size computing (Carlos Maiolino) [2193101] - ext4: fix use-after-free in ext4_xattr_set_entry (Carlos Maiolino) [2193103] {CVE-2023-2513} - ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h (Carlos Maiolino) [2193101] - ixgbevf: Fix resource leak in ixgbevf_init_module() (Ken Cox) [2153374] - ixgbevf: Add error messages on vlan error (Ken Cox) [2153374]- [rt] build kernel-rt-4.18.0-493.rt7.282.el8 [2180997] - Revert "drm/i915: Depend on !PREEMPT_RT." (John B. Wyatt IV) [2149799] - kunit: make kunit_test_timeout compatible with comment (Nico Pache) [2168375] - kunit: fix assert_type for comparison macros (Nico Pache) [2168375] - redhat: include new kunit tests in mod-internals (Nico Pache) [2168375] - kernel.h: split out mathematical helpers (Nico Pache) [2168375] - linux/kernel.h: fix overflow for DIV_ROUND_UP_ULL (Nico Pache) [2168375] - linux/kernel.h: Use parentheses around argument in u64_to_user_ptr() (Nico Pache) [2168375] - : drop the gcc-3.3 'const' hack in roundup() (Nico Pache) [2168375] - kernel.h: documentation for roundup() vs round_up() (Nico Pache) [2168375] - apparmor: test: Use NULL macros (Nico Pache) [2168375] - kasan: test: Use NULL macros (Nico Pache) [2168375] - kunit: use NULL macros (Nico Pache) [2168375] - kunit: Introduce _NULL and _NOT_NULL macros (Nico Pache) [2168375] - kunit: decrease macro layering for EQ/NE asserts (Nico Pache) [2168375] - kunit: decrease macro layering for integer asserts (Nico Pache) [2168375] - kunit: reduce layering in string assertion macros (Nico Pache) [2168375] - kunit: drop unused intermediate macros for ptr inequality checks (Nico Pache) [2168375] - kunit: make KUNIT_EXPECT_EQ() use KUNIT_EXPECT_EQ_MSG(), etc. (Nico Pache) [2168375] - Documentation: kunit: Remove redundant 'tips.rst' page (Nico Pache) [2168375] - Documentation: KUnit: reword description of assertions (Nico Pache) [2168375] - kunit: tool: Don't download risc-v opensbi firmware with wget (Nico Pache) [2168375] - drm/tests: Split up test cases in igt_check_drm_format_min_pitch (Nico Pache) [2168375] - kunit: executor: Fix a memory leak on failure in kunit_filter_tests (Nico Pache) [2168375] - Documentation: kunit: Cleanup run_wrapper, fix x-ref (Nico Pache) [2168375] - kunit: use kmemdup in kunit_filter_tests(), take suite as const (Nico Pache) [2168375] - kunit: fix executor OOM error handling logic on non-UML (Nico Pache) [2168375] - drm: selftest: convert drm_mm selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_buddy selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_framebuffer selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_dp_mst_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_plane_helper selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_format selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_rect selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_cmdline_parser selftest to KUnit (Nico Pache) [2168375] - drm: selftest: convert drm_damage_helper selftest to KUnit (Nico Pache) [2168375] - drm/doc: Add KUnit documentation (Nico Pache) [2168375] - kunit: drop unused assert_type from kunit_assert and clean up macros (Nico Pache) [2168375] - kunit: split out part of kunit_assert into a static const (Nico Pache) [2168375] - kunit: factor out kunit_base_assert_format() call into kunit_fail() (Nico Pache) [2168375] - kunit: drop unused kunit* field in kunit_assert (Nico Pache) [2168375] - kunit: move check if assertion passed into the macros (Nico Pache) [2168375] - kunit: tool: misc cleanups (Nico Pache) [2168375] - kunit: tool: minor cosmetic cleanups in kunit_parser.py (Nico Pache) [2168375] - kunit: tool: make parser stop overwriting status of suites w/ no_tests (Nico Pache) [2168375] - kunit: tool: remove dead parse_crash_in_log() logic (Nico Pache) [2168375] - kunit: tool: print clearer error message when there's no TAP output (Nico Pache) [2168375] - kunit: tool: stop using a shell to run kernel under QEMU (Nico Pache) [2168375] - kunit: tool: update test counts summary line format (Nico Pache) [2168375] - kunit: bail out of test filtering logic quicker if OOM (Nico Pache) [2168375] - lib/Kconfig.debug: change KUnit tests to default to KUNIT_ALL_TESTS (Nico Pache) [2168375] - kunit: Rework kunit_resource allocation policy (Nico Pache) [2168375] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Nico Pache) [2168375] - drm/todo: Add entry for converting kselftests to kunit (Nico Pache) [2168375] - drm/todo: Add entry for using kunit in the subsystem (Nico Pache) [2168375] - kunit: fix debugfs code to use enum kunit_status, not bool (Nico Pache) [2168375] - kunit: add ability to specify suite-level init and exit functions (Nico Pache) [2168375] - kunit: rename print_subtest_{start,end} for clarity (s/subtest/suite) (Nico Pache) [2168375] - kunit: add support for kunit_suites that reference init code (Nico Pache) [2168375] - Documentation: kunit: change complete_and_exit to kthread_complete_and_exit (Nico Pache) [2168375] - mm/slub, kunit: Make slub_kunit unaffected by user specified flags (Nico Pache) [2168375] - kunit: Make kunit_remove_resource() idempotent (Nico Pache) [2168375] - list: test: Test the hlist structure (Nico Pache) [2168375] - ASoC: soc-utils: Add kunit test for snd_soc_tdm_params_to_bclk() (Nico Pache) [2168375] - ASoC: soc-utils: Add helper to calculate BCLK from TDM info (Nico Pache) [2168375] - Documentation: kunit: update kconfig options needed for UML coverage (Nico Pache) [2168375] - kunit: split resource API impl from test.c into new resource.c (Nico Pache) [2168375] - kunit: split resource API from test.h into new resource.h (Nico Pache) [2168375] - kunit: tool: more descriptive metavars/--help output (Nico Pache) [2168375] - kunit: tool: Do not colorize output when redirected (Nico Pache) [2168375] - kunit: tool: properly report the used arch for --json, or '' if not known (Nico Pache) [2168375] - kunit: tool: refactor how we plumb metadata into JSON (Nico Pache) [2168375] - kunit: tool: drop mostly unused KunitResult.result field (Nico Pache) [2168375] - kunit: tool: readability tweaks in KernelCI json generation logic (Nico Pache) [2168375] - kunit: tool: simplify code since build_dir can't be None (Nico Pache) [2168375] - kunit: tool: drop last uses of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: drop unused KernelDirectoryPath var (Nico Pache) [2168375] - kunit: tool: make --json handling a bit clearer (Nico Pache) [2168375] - Documentation: kunit: fix path to .kunitconfig in start.rst (Nico Pache) [2168375] - Documentation: kunit: Fix cross-referencing warnings (Nico Pache) [2168375] - binfmt_elf: Introduce KUnit test (Nico Pache) [2168375] - list: test: Add a test for list_entry_is_head() (Nico Pache) [2168375] - list: test: Add a test for list_is_head() (Nico Pache) [2168375] - list: test: Add test for list_del_init_careful() (Nico Pache) [2168375] - list: introduce list_is_head() helper and re-use it in list.h (Nico Pache) [2168375] - list: add "list_del_init_careful()" to go with "list_empty_careful()" (Nico Pache) [2168375] - kunit: add example test case showing off all the expect macros (Nico Pache) [2168375] - test_hash.c: refactor into kunit (Nico Pache) [2168375] - lib/Kconfig.debug: properly split hash test kernel entries (Nico Pache) [2168375] - test_hash.c: split test_hash_init (Nico Pache) [2168375] - test_hash.c: split test_int_hash into arch-specific functions (Nico Pache) [2168375] - hash.h: remove unused define directive (Nico Pache) [2168375] - iio: test: Add check against NULL for buffer in tests. (Nico Pache) [2168375] - net: kunit: add a test for dev_addr_lists (Nico Pache) [2168375] - kprobes: convert tests to kunit (Nico Pache) [2168375] - bitfield: build kunit tests without structleak plugin (Nico Pache) [2168375] - thunderbolt: build kunit tests without structleak plugin (Nico Pache) [2168375] - iio/test-format: build kunit tests without structleak plugin (Nico Pache) [2168375] - gcc-plugins/structleak: add makefile var for disabling structleak (Nico Pache) [2168375] - math: RATIONAL_KUNIT_TEST should depend on RATIONAL instead of selecting it (Nico Pache) [2168375] - math: make RATIONAL tristate (Nico Pache) [2168375] - rtc: move RTC_LIB_KUNIT_TEST to proper location (Nico Pache) [2168375] - rtc: Improve performance of rtc_time64_to_tm(). Add tests. (Nico Pache) [2168375] - lib/math/rational: add Kunit test cases (Nico Pache) [2168375] - time/kunit: Add missing MODULE_LICENSE() (Nico Pache) [2168375] - kasan: test: make use of kunit_skip() (Nico Pache) [2168375] - time: Improve performance of time64_to_tm() (Nico Pache) [2168375] - iio: Remove a cast in iio-test-format which is no longer required (Nico Pache) [2168375] - lib: kunit: suppress a compilation warning of frame size (Nico Pache) [2168375] - kasan: docs: update tests section (Nico Pache) [2168375] - iio: Add basic unit test for iio_format_value() (Nico Pache) [2168375] - Documentation: KUnit: Fix usage bug (Nico Pache) [2168375] - kunit: fix missing f in f-string in run_checks.py (Nico Pache) [2168375] - kunit: tool: Import missing importlib.abc (Nico Pache) [2168375] - kunit: replace kernel.h with the necessary inclusions (Nico Pache) [2168375] - Documentation: KUnit: Restyled Frequently Asked Questions (Nico Pache) [2168375] - Documentation: KUnit: Restyle Test Style and Nomenclature page (Nico Pache) [2168375] - Documentation: KUnit: Rework writing page to focus on writing tests (Nico Pache) [2168375] - Documentation: kunit: Reorganize documentation related to running tests (Nico Pache) [2168375] - Documentation: KUnit: Added KUnit Architecture (Nico Pache) [2168375] - Documentation: KUnit: Rewrite getting started (Nico Pache) [2168375] - Documentation: KUnit: Rewrite main page (Nico Pache) [2168375] - kunit: tool: Default --jobs to number of CPUs (Nico Pache) [2168375] - kunit: tool: fix newly introduced typechecker errors (Nico Pache) [2168375] - kunit: tool: make `build` subcommand also reconfigure if needed (Nico Pache) [2168375] - kunit: tool: delete kunit_parser.TestResult type (Nico Pache) [2168375] - kunit: tool: use dataclass instead of collections.namedtuple (Nico Pache) [2168375] - kunit: tool: suggest using decode_stacktrace.sh on kernel crash (Nico Pache) [2168375] - kunit: tool: reconfigure when the used kunitconfig changes (Nico Pache) [2168375] - kunit: tool: revamp message for invalid kunitconfig (Nico Pache) [2168375] - kunit: tool: add --kconfig_add to allow easily tweaking kunitconfigs (Nico Pache) [2168375] - kunit: tool: move Kconfig read_from_file/parse_from_string to package-level (Nico Pache) [2168375] - kunit: tool: print parsed test results fully incrementally (Nico Pache) [2168375] - kunit: Report test parameter results as (K)TAP subtests (Nico Pache) [2168375] - kunit: Don't crash if no parameters are generated (Nico Pache) [2168375] - kunit: tool: Report an error if any test has no subtests (Nico Pache) [2168375] - kunit: tool: Do not error on tests without test plans (Nico Pache) [2168375] - kunit: add run_checks.py script to validate kunit changes (Nico Pache) [2168375] - kunit: tool: fix --json output for skipped tests (Nico Pache) [2168375] - kunit: tool: fix typecheck errors about loading qemu configs (Nico Pache) [2168375] - kunit: tool: continue past invalid utf-8 output (Nico Pache) [2168375] - kunit: tool: improve compatibility of kunit_parser with KTAP specification (Nico Pache) [2168375] - kunit: tool: yield output from run_kernel in real time (Nico Pache) [2168375] - kunit: tool: support running each suite/test separately (Nico Pache) [2168375] - kunit: tool: actually track how long it took to run tests (Nico Pache) [2168375] - kunit: tool: factor exec + parse steps into a function (Nico Pache) [2168375] - kunit: add 'kunit.action' param to allow listing out tests (Nico Pache) [2168375] - kunit: tool: show list of valid --arch options when invalid (Nico Pache) [2168375] - kunit: tool: misc fixes (unused vars, imports, leaked files) (Nico Pache) [2168375] - kunit: fix too small allocation when using suite-only kunit.filter_glob (Nico Pache) [2168375] - kunit: tool: allow filtering test cases via glob (Nico Pache) [2168375] - kunit: tool: better handling of quasi-bool args (--json, --raw_output) (Nico Pache) [2168375] - kunit: tool: make --raw_output support only showing kunit output (Nico Pache) [2168375] - kunit: tool: add --kernel_args to allow setting module params (Nico Pache) [2168375] - kunit: tool: Assert the version requirement (Nico Pache) [2168375] - kunit: tool: remove unnecessary "annotations" import (Nico Pache) [2168375] - Documentation: kunit: drop obsolete note about uml_abort for coverage (Nico Pache) [2168375] - kunit: tool: Fix error messages for cases of no tests and wrong TAP header (Nico Pache) [2168375] - kunit: tool: Support skipped tests in kunit_tool (Nico Pache) [2168375] - kunit: tool: internal refactor of parser input handling (Nico Pache) [2168375] - kunit: Remove the unused all_tests.config (Nico Pache) [2168375] - kunit: Move default config from arch/um -> tools/testing/kunit (Nico Pache) [2168375] - kunit: arch/um/configs: Enable KUNIT_ALL_TESTS by default (Nico Pache) [2168375] - kunit: tool: add support for QEMU (Nico Pache) [2168375] - kunit: tool: make --kunitconfig accept dirs, add lib/kunit fragment (Nico Pache) [2168375] - kunit: tool: Disable PAGE_POISONING under --alltests (Nico Pache) [2168375] - kunit: tool: Fix a python tuple typing error (Nico Pache) [2168375] - iommu/amd: Indicate whether DMA remap support is enabled (Desnes Nunes) [2184064] - Revert "usb: typec: ucsi: add a common function ucsi_unregister_connectors()" (Desnes Nunes) [2184064] - usb: typec: ucsi: Only check the contract if there is a connection (Desnes Nunes) [2184064] - media: uvcvideo: Fix InterfaceProtocol for Quanta camera (Desnes Nunes) [2184064] - net: thunderbolt: fix memory leak in tbnet_open() (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-L6 modem (Desnes Nunes) [2184064] - USB: serial: option: add u-blox LARA-R6 00B modem (Desnes Nunes) [2184064] - USB: serial: option: remove old LARA-R6 PID (Desnes Nunes) [2184064] - net: thunderbolt: Fix error handling in tbnet_init() (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM160 0x0111 composition (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom MA510 modem (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom L610 modem (Desnes Nunes) [2184064] - USB: serial: option: add device id for Foxconn T99W265 (Desnes Nunes) [2184064] - USB: serial: option: add Fibocom FM101-GL variants (Desnes Nunes) [2184064] - USB: serial: option: add Telit LE910S1 0x9200 composition (Desnes Nunes) [2184064] - usb: add NO_LPM quirk for Realforce 87U Keyboard (Desnes Nunes) [2184064] - usb: typec: tipd: Prevent uninitialized event{1,2} in IRQ handler (Desnes Nunes) [2184064] - usb: typec: mux: Enter safe mode only when pins need to be reconfigured (Desnes Nunes) [2184064] - USB: bcma: Make GPIO explicitly optional (Desnes Nunes) [2184064] - USB: serial: option: add Sierra Wireless EM9191 (Desnes Nunes) [2184064] - xhci: Remove device endpoints from bandwidth list when freeing the device (Desnes Nunes) [2184064] - xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices (Desnes Nunes) [2184064] - xhci: Add quirk to reset host back to default state at shutdown (Desnes Nunes) [2184064] - usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96 controller (Desnes Nunes) [2184064] - Revert "xhci: turn off port power in shutdown" (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Meteor Lake xHCI (Desnes Nunes) [2184064] - xhci-pci: Allow host runtime PM as default for Intel Raptor Lake xHCI (Desnes Nunes) [2184064] - xhci: turn off port power in shutdown (Desnes Nunes) [2184064] - xhci: Keep interrupt disabled in initialization until host is running. (Desnes Nunes) [2184064] - fbdev: sisfb: use explicitly signed char (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Implement resume callback (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the connection on resume (Desnes Nunes) [2184064] - usb: host: ehci-exynos: switch to using gpiod API (Desnes Nunes) [2184064] - usb: typec: ucsi_ccg: Disable UCSI ALT support on Tegra (Desnes Nunes) [2184064] - usb: typec: Replace custom implementation of device_match_fwnode() (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't warn on probe deferral (Desnes Nunes) [2184064] - usb: typec: ucsi: Wait for the USB role switches (Desnes Nunes) [2184064] - usb: typec: ucsi: add a common function ucsi_unregister_connectors() (Desnes Nunes) [2184064] - usb: typec: ucsi: Better fix for missing unplug events issue (Desnes Nunes) [2184064] - usb: typec: ucsi: Read the PDOs in separate work (Desnes Nunes) [2184064] - usb: typec: ucsi: Check the partner alt modes always if there is PD contract (Desnes Nunes) [2184064] - usb: typec: ucsi: acpi: Reduce the command completion timeout (Desnes Nunes) [2184064] - usb: typec: ucsi: Add polling mechanism for partner tasks like alt mode checking (Desnes Nunes) [2184064] - usb: typec: ucsi: Don't stop alt mode registration on busy condition (Desnes Nunes) [2184064] - usb: typec: ucsi: Always cancel the command if PPM reports BUSY condition (Desnes Nunes) [2184064] - usb: add quirks for Lenovo OneLink+ Dock (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo USB-C to Ethernet Adapher(RTL8153-04) (Desnes Nunes) [2184064] - USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub (Desnes Nunes) [2184064] - usb: idmouse: fix an uninit-value in idmouse_open (Desnes Nunes) [2184064] - usb: ulpi: use DEFINE_SHOW_ATTRIBUTE to simplify ulpi_regs (Desnes Nunes) [2184064] - usb: ulpi: Add debugfs support (Desnes Nunes) [2184064] - usb: typec: fusb302: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: qcom-pmic-typec: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - usb: typec: stusb160x: Switch to use dev_err_probe() helper (Desnes Nunes) [2184064] - USB: serial: qcserial: add new usb-id for Dell branded EM7455 (Desnes Nunes) [2184064] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2184064] - media: flexcop-usb: use usb_endpoint_maxp() (Desnes Nunes) [2184064] - media: flexcop-usb: clean up URB initialisation (Desnes Nunes) [2184064] - media: flexcop-usb: clean up endpoint sanity checks (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint type check (Desnes Nunes) [2184064] - media: flexcop-usb: sanity checking of endpoint type (Desnes Nunes) [2184064] - media: dib0700: fix rc endpoint lookup (Desnes Nunes) [2184064] - media: flexcop-usb: fix endpoint sanity check (Desnes Nunes) [2184064] - media: b2c2-flexcop-usb: add sanity checking (Desnes Nunes) [2184064] - media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init() (Desnes Nunes) [2184064] - media: usb/dvb-usb-v2: fix repeated words in comments (Desnes Nunes) [2184064] - thunderbolt: Use dev_err_probe() (Desnes Nunes) [2184064] - thunderbolt: Convert to use sysfs_emit()/sysfs_emit_at() APIs (Desnes Nunes) [2184064] - Revert "usb: storage: Add quirk for Samsung Fit flash" (Desnes Nunes) [2184064] - USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM (Desnes Nunes) [2184064] - media: uvcvideo: move uvc_format_desc to common header (Desnes Nunes) [2184064] - media: uvcvideo: Add UVC_GUID_FORMAT_H265 (Desnes Nunes) [2184064] - media: v4l: move helper functions for fractions from uvc to v4l2-common (Desnes Nunes) [2184064] - xhci: remove unused lpm_failed_dev member from struct xhci_hcd (Desnes Nunes) [2184064] - xhci: remove unused command member from struct xhci_hcd struct (Desnes Nunes) [2184064] - xhci: show fault reason for a failed enable slot command (Desnes Nunes) [2184064] - xhci: Don't show warning for reinit on known broken suspend (Desnes Nunes) [2184064] - xhci: dbc: Fix memory leak in xhci_alloc_dbc() (Desnes Nunes) [2184064] - usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up driver prefix (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: move driver structure (Desnes Nunes) [2184064] - USB: serial: make remove callback return void (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute visibility logic (Desnes Nunes) [2184064] - USB: serial: console: move mutex_unlock() before usb_serial_put() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: convert to use dev_groups (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: add support for HP and HA devices (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: simplify divisor handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: assume hi-speed type (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up baudrate request (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up attribute handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up modem-status handling (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: tighten device-type detection (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename channel index (Desnes Nunes) [2184064] - USB: serial: kl5kusb105: use usb_control_msg_recv() and usb_control_msg_send() (Desnes Nunes) [2184064] - USB: serial: keyspan_pda: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: use usb_control_msg_recv() (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: include FT2232D in type string (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: rename chip types (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: drop redundant chip type comments (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: clean up chip type enum (Desnes Nunes) [2184064] - USB: serial: ftdi_sio: fix 300 bps rate for SIO (Desnes Nunes) [2184064] - usb: typec: intel_pmc_mux: Use the helper acpi_dev_get_memory_resources() (Desnes Nunes) [2184064] - usb: misc: usb3503: call clk_disable_unprepare in the error handling (Desnes Nunes) [2184064] - usb: misc: uss720: fix uninitialized variable rlen (Desnes Nunes) [2184064] - thunderbolt: debugfs: Fix spelling mistakes in seq_puts text (Desnes Nunes) [2184064] - thunderbolt: Add support for ASMedia NVM image format (Desnes Nunes) [2184064] - thunderbolt: Move vendor specific NVM handling into nvm.c (Desnes Nunes) [2184064] - thunderbolt: Provide tb_retimer_nvm_read() analogous to tb_switch_nvm_read() (Desnes Nunes) [2184064] - thunderbolt: Rename and make nvm_read() available for other files (Desnes Nunes) [2184064] - thunderbolt: Extend NVM version fields to 32-bits (Desnes Nunes) [2184064] - thunderbolt: Allow NVM upgrade of USB4 host routers (Desnes Nunes) [2184064] - scsi: uas: Drop DID_TARGET_FAILURE use (Desnes Nunes) [2184064] - usb: clean up after dropping driver registration log spam (Desnes Nunes) [2184064] - USB: host: ehci-atmel: Add support for HSIC phy (Desnes Nunes) [2184064] - dt-bindings: usb: atmel: add USB PHY type property (Desnes Nunes) [2184064] - USB: xhci: make xhci_get_endpoint_address static (Desnes Nunes) [2184064] - thunderbolt: Add support for receiver lane margining (Desnes Nunes) [2184064] - thunderbolt: Add helper to check if CL states are enabled on port (Desnes Nunes) [2184064] - thunderbolt: Pass CL state bitmask to tb_port_clx_supported() (Desnes Nunes) [2184064] - thunderbolt: Move port CL state functions into correct place in switch.c (Desnes Nunes) [2184064] - thunderbolt: Move tb_xdomain_parent() to tb.h (Desnes Nunes) [2184064] - USB: hcd-pci: Drop the unused id parameter from usb_hcd_pci_probe() (Desnes Nunes) [2184064] - USB: FHCI: Switch to GPIO descriptors (Desnes Nunes) [2184064] - net: thunderbolt: Update module description with mention of USB4 (Desnes Nunes) [2184064] - net: thunderbolt: Convert to use SPDX identifier (Desnes Nunes) [2184064] - net: thunderbolt: Enable full end-to-end flow control (Desnes Nunes) [2184064] - net: thunderbolt: Align the driver to the USB4 networking spec (Desnes Nunes) [2184064] - net: thunderbolt: Add comment clarifying prtcstns flags (Desnes Nunes) [2184064] - thunderbolt: Add back Intel Falcon Ridge end-to-end flow control workaround (Desnes Nunes) [2184064] - thunderbolt: Make iommu_dma_protection more accurate (Desnes Nunes) [2184064] - iommu: Add capability for pre-boot DMA protection (Desnes Nunes) [2184064] - iommu: Introduce device_iommu_capable() (Desnes Nunes) [2184064] - thunderbolt: Show link type for XDomain connections too (Desnes Nunes) [2184064] - thunderbolt: Add KUnit test for devices with no DisplayPort adapters (Desnes Nunes) [2184064] - thunderbolt: Add support for XDomain lane bonding (Desnes Nunes) [2184064] - thunderbolt: Split setting link width and lane bonding into own functions (Desnes Nunes) [2184064] - thunderbolt: Move tb_port_state() prototype to correct place (Desnes Nunes) [2184064] - thunderbolt: Fix typo in comment (Desnes Nunes) [2184064] - thunderbolt: Replace usage of found with dedicated list iterator variable (Desnes Nunes) [2184064] - net: thunderbolt: Enable DMA paths only after rings are enabled (Desnes Nunes) [2184064] - usb: reduce kernel log spam on driver registration (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend/resume clks for brcm (Desnes Nunes) [2184064] - usb: host: xhci-plat: suspend and resume clocks (Desnes Nunes) [2184064] - usb: host: Initiate urb ep with udev ep0 (Desnes Nunes) [2184064] - usb: ehci: Use endpoint in URB to get maxpacket (Desnes Nunes) [2184064] - dt-bindings: usb: Add missing (unevaluated|additional)Properties on child nodes (Desnes Nunes) [2184064] - dt-bindings: usb: Add DT bindings for STUSB160x Type-C controller (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Sonix Technology (Desnes Nunes) [2184064] - media: uvcvideo: Use entity get_cur in uvc_ctrl_set (Desnes Nunes) [2184064] - media: uvcvideo: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: uvcvideo: Use indexed loops in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Fix invalid pointer in uvc_ctrl_init_ctrl() (Desnes Nunes) [2184064] - media: uvcvideo: Remove unneeded goto (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Acer EasyCamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta cameras (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Chicony Easycamera (Desnes Nunes) [2184064] - media: uvcvideo: Limit power line control for Quanta UVC Webcam (Desnes Nunes) [2184064] - media: uvcvideo: Add support for per-device control mapping overrides (Desnes Nunes) [2184064] - media: uvcvideo: Add missing value for power_line_frequency (Desnes Nunes) [2184064] - media: uvcvideo: Replace broken URL (Desnes Nunes) [2184064] - media: uvcvideo: Fix comment blocks style (Desnes Nunes) [2184064] - media: uvcvideo: refactor __uvc_ctrl_add_mapping (Desnes Nunes) [2184064] - media: technisat-usb2: Fix comment typo (Desnes Nunes) [2184064] - media: tm6000: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - media: gspca: Fix typo 'the the' in comment (Desnes Nunes) [2184064] - thunderbolt: Add support for Intel Meteor Lake (Desnes Nunes) [2184064] - thunderbolt: Add comment where Thunderbolt 4 PCI IDs start (Desnes Nunes) [2184064] - usb/hcd: Fix dma_map_sg error check (Desnes Nunes) [2184064] - usb: move from strlcpy with unused retval to strscpy (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix CC PHY noise filter of voltage level (Desnes Nunes) [2184064] - usb: typec: tcpci: Move function "tcpci_to_typec_cc" to common (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add compatible id with rt1715 (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add initial phy setting (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Add regulator support when source vbus (Desnes Nunes) [2184064] - usb: typec: tcpci_rt1711h: Fix vendor setting when set vconn (Desnes Nunes) [2184064] - dt-bindings usb: typec: rt1711h: Add binding for Richtek RT1711H (Desnes Nunes) [2184064] - usb: common: debug: Check non-standard control requests (Desnes Nunes) [2184064] - usb: typec: ucsi: stm32g0: Fix spelling mistake "booloader" -> "bootloader" (Desnes Nunes) [2184064] - usb: common: usb-conn-gpio: Simplify some error message (Desnes Nunes) [2184064] - scsi: target: iscsi: Fix an error message in iscsi_check_key() (Maurizio Lombardi) [2186500] - scsi: target: core: Fix warning on RT kernels (Maurizio Lombardi) [2186500] - scsi: target: core: Remove unused variable 'unit_serial_len' (Maurizio Lombardi) [2186500] - scsi: target: Remove the unused function transport_lba_64_ext() (Maurizio Lombardi) [2186500] - fix iov_iter_bvec() "direction" argument (Maurizio Lombardi) [2186500] - scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus() (Maurizio Lombardi) [2186500] - scsi: target: core: New key must be used for moved PR (Maurizio Lombardi) [2186500] - scsi: target: core: UA on all LUNs after reset (Maurizio Lombardi) [2186500] - scsi: target: core: Abort all preempted regs if requested (Maurizio Lombardi) [2186500] - scsi: target: core: Fix memory leak in preempt_and_abort (Maurizio Lombardi) [2186500] - scsi: target: core: Fix preempt and abort for allreg res (Maurizio Lombardi) [2186500] - scsi: target: Remove unused se_tmr_req_cache declaration (Maurizio Lombardi) [2186500] - scsi: target: alua: Do not report emtpy port group (Maurizio Lombardi) [2186500] - scsi: target: core: Set MULTIP bit for se_device with multiple ports (Maurizio Lombardi) [2186500] - scsi: target: pscsi: Remove repeated word "calling" (Maurizio Lombardi) [2186500] - scsi: target: core: De-RCU of se_lun and se_lun acl (Maurizio Lombardi) [2186500] - scsi: target: core: Fix race during ACL removal (Maurizio Lombardi) [2186500] - scsi: target: Remove XDWRITEREAD emulated support (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Do not require target authentication (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Allow AuthMethod=None (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Support base64 in CHAP (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add support for extended CDB AHS (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix clang -Wformat warnings (Maurizio Lombardi) [2186500] - scsi: target: Remove incorrect zero blocks WRITE_SAME check (Maurizio Lombardi) [2186500] - scsi: target: Remove duplicate "the" (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Fix NULL pointer dereference in iscsi_conn_auth_required() (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Control authentication per ACL (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Extract auth functions (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Add upcast helpers (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Avoid holding XArray lock when calling lock_page (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_session to iscsit_session (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_conn to iscsit_conn (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Rename iscsi_cmd to iscsit_cmd (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible data corruption (Maurizio Lombardi) [2186500] - scsi: target: core: Silence the message about unknown VPD pages (Maurizio Lombardi) [2186500] - target: remove an incorrect unmap zeroes data deduction (Maurizio Lombardi) [2186500] - scsi: target: Fix incorrect use of cpumask_t (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Fix possible page UAF (Maurizio Lombardi) [2186500] - scsi: target: Add iscsi/cpus_allowed_list in configfs (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Make cmd_ring_size changeable via configfs (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Make sure the np under each tpg is unique (Maurizio Lombardi) [2186500] - scsi: target: configfs: Delete unnecessary checks for NULL (Maurizio Lombardi) [2186500] - scsi: target: core: Use RCU helpers for INQUIRY t10_alua_tg_pt_gp (Maurizio Lombardi) [2186500] - scsi: target: core: Remove from tmr_list during LUN unlink (Maurizio Lombardi) [2186500] - scsi: target: core: Stop using bdevname() (Maurizio Lombardi) [2186500] - scsi: target: Perform ALUA group changes in one step (Maurizio Lombardi) [2186500] - scsi: target: Replace lun_tg_pt_gp_lock with rcu in I/O path (Maurizio Lombardi) [2186500] - scsi: target: Fix alua_tg_pt_gps_count tracking (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered tag handling (Maurizio Lombardi) [2186500] - scsi: target: Fix ordered CMD_T_SENT handling (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Allocate zeroed pages for data area (Maurizio Lombardi) [2186500] - scsi: target: tcmu: Use struct_size() helper in kmalloc() (Maurizio Lombardi) [2186500] - scsi: target: sbp: Replace enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: iscsi: Replace tpg enable attr with ops.enable (Maurizio Lombardi) [2186500] - scsi: target: core: Add common tpg/enable attribute (Maurizio Lombardi) [2186500] - scsi: target: core: Make logs less verbose (Maurizio Lombardi) [2186500] - scsi: target: Remove unused function arguments (Maurizio Lombardi) [2186500] - scsi: target: Fix spelling mistake "CONFLIFT" -> "CONFLICT" (Maurizio Lombardi) [2186500] - dm: don't lock fs when the map is NULL in process of resume (Benjamin Marzinski) [2192702] - dm flakey: add an "error_reads" option (Benjamin Marzinski) [2192702] - dm flakey: remove trailing space in the table line (Benjamin Marzinski) [2192702] - dm flakey: fix a crash with invalid table line (Benjamin Marzinski) [2192702] - dm ioctl: fix nested locking in table_clear() to remove deadlock concern (Benjamin Marzinski) [2192702] - dm: unexport dm_get_queue_limits() (Benjamin Marzinski) [2192702] - dm: add helper macro for simple DM target module init and exit (Benjamin Marzinski) [2192702] - dm raid: remove unused d variable (Benjamin Marzinski) [2192702] - dm mirror: add DMERR message if alloc_workqueue fails (Benjamin Marzinski) [2192702] - dm: push error reporting down to dm_register_target() (Benjamin Marzinski) [2192702] - dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path (Benjamin Marzinski) [2192702] - dm error: add discard support (Benjamin Marzinski) [2192702] - dm zero: add discard support (Benjamin Marzinski) [2192702] - dm table: allow targets without devices to set ->io_hints (Benjamin Marzinski) [2192702] - dm verity: fix error handling for check_at_most_once on FEC (Benjamin Marzinski) [2192702] - dm thin: speed up cell_defer_no_holder() (Benjamin Marzinski) [2192702] - dm bufio: don't bug for clear developer oversight (Benjamin Marzinski) [2192702] - dm bufio: never crash if dm_bufio_in_request() (Benjamin Marzinski) [2192702] - dm bufio: use WARN_ON in dm_bufio_client_destroy and dm_bufio_exit (Benjamin Marzinski) [2192702] - dm bufio: remove unused dm_bufio_release_move interface (Benjamin Marzinski) [2192702] - dm stats: check for and propagate alloc_percpu failure (Benjamin Marzinski) [2192702] - dm crypt: avoid accessing uninitialized tasklet (Benjamin Marzinski) [2192702] - dm crypt: add cond_resched() to dmcrypt_write() (Benjamin Marzinski) [2192702] - dm thin: fix deadlock when swapping to thin device (Benjamin Marzinski) [2192702] - units: add the HZ macros (Jocelyn Falempe) [2160451] - isystem: ship and use stdarg.h (Jocelyn Falempe) [2160451] - i915: Move list_count() to list.h as list_count_nodes() for broader use (Jocelyn Falempe) [2160451] - resource: Convert DEFINE_RES_NAMED() to be compound literal (Jocelyn Falempe) [2160451] - media: videobuf2: Assert held reservation lock for dma-buf mmapping (Jocelyn Falempe) [2160451] - media: videobuf2: Stop using internal dma-buf lock (Jocelyn Falempe) [2160451] - media: videobuf2: Prepare to dynamic dma-buf locking specification (Jocelyn Falempe) [2160451] - media: videobuf2-dma-contig.c: remove spurious 'b' in message (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of attachment-mapping functions (Jocelyn Falempe) [2160451] - dma-buf: Add unlocked variant of vmapping functions (Jocelyn Falempe) [2160451] - kbuild: simplify access to the kernel's version (Jocelyn Falempe) [2160451] - hwmon: (core) Add support for rated attributes (Jocelyn Falempe) [2160451] - ACPI: video: Allow GPU drivers to report no panels (Jocelyn Falempe) [2160451] - drm: Move nomodeset kernel parameter to drivers/video (Jocelyn Falempe) [2160451] - PM: core: Add EXPORT[_GPL]_SIMPLE_DEV_PM_OPS macros (Jocelyn Falempe) [2160451] - PM: runtime: Add DEFINE_RUNTIME_DEV_PM_OPS() macro (Jocelyn Falempe) [2160451] - ACPI: video: Make backlight class device registration a separate step (v2) (Jocelyn Falempe) [2160451] - ACPI: video: Add acpi_video_backlight_use_native() helper (Jocelyn Falempe) [2160451] - scsi: sched/wait: Add wait_event_lock_irq_timeout for TASK_UNINTERRUPTIBLE usage (Jocelyn Falempe) [2160451] - iosys-map: Add IOSYS_MAP_INIT_VADDR_IOMEM() (Jocelyn Falempe) [2160451] - perf branch: Fix interpretation of branch records (Michael Petlan) [2086826] - perf/x86/amd/lbr: Adjust LBR regardless of filtering (Michael Petlan) [2086826] - perf/x86/utils: Fix uninitialized var in get_branch_type() (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch speculation info support (Michael Petlan) [2086826] - perf/core: Add speculation info to branch entries (Michael Petlan) [2086826] - perf/x86/amd/lbr: Use fusion-aware branch classifier (Michael Petlan) [2086826] - perf/x86: Make branch classifier fusion-aware (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 software branch filter support (Michael Petlan) [2086826] - perf/x86: Move branch classifier (Michael Petlan) [2086826] - perf: Add irq and exception return branch types (Michael Petlan) [2086826] - perf/x86/intel/ds: Check return values of insn decoder functions (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 hardware branch filter support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Add LbrExtV2 branch record support (Michael Petlan) [2086826] - perf/x86/amd/lbr: Detect LbrExtV2 support (Michael Petlan) [2086826] - x86/cpufeatures: Add LbrExtV2 feature bit (Michael Petlan) [2086826] - perf/x86/amd/core: Add generic branch record interfaces (Michael Petlan) [2086826] - perf/x86/amd/core: Refactor branch attributes (Michael Petlan) [2086826] - perf/x86/amd/brs: Move feature-specific functions (Michael Petlan) [2086826] - scsi: zfcp: Trace when request remove fails after qdio send fails (Tobias Huschle) [2159733] - scsi: zfcp: Change the type of all fsf request id fields and variables to u64 (Tobias Huschle) [2159733] - scsi: zfcp: Make the type for accessing request hashtable buckets size_t (Tobias Huschle) [2159733] - scsi: zfcp: Drop redundant "the" in the comments (Tobias Huschle) [2159733] - s390/qeth: Convert sprintf/snprintf to scnprintf (Tobias Huschle) [2159732] - s390/qeth: Convert sysfs sprintf to sysfs_emit (Tobias Huschle) [2159732] - s390/qeth: Use constant for IP address buffers (Tobias Huschle) [2159732] - s390/ctcm: cleanup indenting (Tobias Huschle) [2159732] - s390/ipl: add loadparm parameter to eckd ipl/reipl data (Tobias Huschle) [2159689] - s390/ipl: add DEFINE_GENERIC_LOADPARM() (Tobias Huschle) [2159689] - s390/ipl: use octal values instead of S_* macros (Tobias Huschle) [2159689] - s390/ipl: add eckd support (Tobias Huschle) [2159689] - net/iucv: Fix size of interrupt data (Tobias Huschle) [2192507] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Waiman Long) [2176760] - workqueue: make sysfs of unbound kworker cpumask more clever (Waiman Long) [2176760] - workqueue: Rename "delayed" (delayed by active management) to "inactive" (Waiman Long) [2176760] - workqueue: Kick a worker based on the actual activation of delayed works (Waiman Long) [2176760] - workqueue: fix UAF in pwq_unbound_release_workfn() (Waiman Long) [2176760] - workqueue: fix a piece of comment about reserved bits for work flags (Waiman Long) [2176760] - workqueue: void unneeded requeuing the pwq in rescuer thread (Waiman Long) [2176760] - mm/memcg: Fix mem_cgroup_id_get_online() underflow problem (Waiman Long) [2176760] - net: fix NULL pointer in skb_segment_list (Paolo Abeni) [2188595] - net: stream: purge sk_error_queue in sk_stream_kill_queues() (Paolo Abeni) [2188595] - skbuff: Account for tail adjustment during pull operations (Paolo Abeni) [2188595] - net: vmxnet3: Fix NULL pointer dereference in vmxnet3_rq_rx_complete() (Seiji Nishikawa) [2186419] - tipc: add an extra conn_get in tipc_conn_alloc (Xin Long) [2177375] {CVE-2023-1382} - tipc: set con sock in tipc_conn_alloc (Xin Long) [2177375] {CVE-2023-1382} - net: sched: fix memory leak in tcindex_set_parms (Davide Caratti) [2181874] - net/sched: tcindex: search key must be 16 bits (Davide Caratti) [2181874] - net/sched: tcindex: update imperfect hash filters respecting rcu (Davide Caratti) [2181880] {CVE-2023-1281} - crypto: rng - Use a different crypto_rng for reseeding (Herbert Xu) [2193410] - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim() (Ricardo Robaina) [2174410] {CVE-2023-1118}- [rt] build kernel-rt-4.18.0-492.rt7.281.el8 [2180997] - xfs: assert in xfs_btree_del_cursor should take into account error (Andrey Albershteyn) [2183168] - xfs: prevent a UAF when log IO errors race with unmount (Andrey Albershteyn) [2183168] - xfs: fix NULL pointer dereference in xfs_getbmap() (Andrey Albershteyn) [2183168] - xfs: avoid a UAF when log intent item recovery fails (Andrey Albershteyn) [2183168] - xfs: fix memory leak in xfs_errortag_init (Andrey Albershteyn) [2183168] - xfs: Fix unreferenced object reported by kmemleak in xfs_sysfs_init() (Andrey Albershteyn) [2183168] - xfs: fix sb write verify for lazysbcount (Andrey Albershteyn) [2183168] - xfs: invalidate block device page cache during unmount (Andrey Albershteyn) [2183168] - xfs: invalidate xfs_bufs when allocating cow extents (Andrey Albershteyn) [2183168] - xfs: dquot shrinker doesn't check for XFS_DQFLAG_FREEING (Andrey Albershteyn) [2183168] - xfs: fix intermittent hang during quotacheck (Andrey Albershteyn) [2183168] - xfs: fix exception caused by unexpected illegal bestcount in leaf dir (Andrey Albershteyn) [2183168] - xfs: fix super block buf log item UAF during force shutdown (Andrey Albershteyn) [2183168] - xfs: fix uninitialized variable access (Andrey Albershteyn) [2183168] - xfs: fix potential log item leak (Andrey Albershteyn) [2183168] - xfs: fix inode reservation space for removing transaction (Andrey Albershteyn) [2183168] - xfs: fix extent busy updating (Andrey Albershteyn) [2183168] - xfs: fix low space alloc deadlock (Andrey Albershteyn) [2183168] - xfs: purge dquots after inode walk fails during quotacheck (Andrey Albershteyn) [2183168] - xfs: get root inode correctly at bulkstat (Andrey Albershteyn) [2183168] - iomap: iomap: fix memory corruption when recording errors during writeback (Andrey Albershteyn) [2183168] - xfs: attach dquots to inode before reading data/cow fork mappings (Andrey Albershteyn) [2183168] - xfs: get rid of assert from xfs_btree_islastblock (Andrey Albershteyn) [2183168] - xfs: fix use-after-free in xattr node block inactivation (Andrey Albershteyn) [2183168] - xfs: pass the correct cursor to xfs_iomap_prealloc_size (Andrey Albershteyn) [2183168] - xfs: don't report reserved bnobt space as available (Andrey Albershteyn) [2183168] - xfs: fix overfilling of reserve pool (Andrey Albershteyn) [2183168] - xfs: always succeed at setting the reserve pool size (Andrey Albershteyn) [2183168] - xfs: remove infinite loop when reserving free block pool (Andrey Albershteyn) [2166567 2183168] - xfs: don't include bnobt blocks when reserving free block pool (Andrey Albershteyn) [2183168] - xfs: document the XFS_ALLOC_AGFL_RESERVE constant (Andrey Albershteyn) [2183168] - xfs: prevent UAF in xfs_log_item_in_current_chkpt (Andrey Albershteyn) [2183168] - xfs: fix incorrect i_nlink caused by inode racing (Andrey Albershteyn) [2183168] - xfs: fix incorrect error-out in xfs_remove (Andrey Albershteyn) [2183168] - KVM: s390: GISA: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: disable migration mode when dirty tracking is disabled (Cédric Le Goater) [2169294] - KVM: s390: Unwind kvm_arch_init() piece-by-piece() if a step fails (Cédric Le Goater) [2169294] - iommu/s390: Make attach succeed even if the device is in error state (Cédric Le Goater) [2169294] - KVM: s390: pci: Fix allocation size of aift kzdev elements (Cédric Le Goater) [2169294] - iommu/s390: Fix incorrect aperture check (Cédric Le Goater) [2169294] - KVM: s390: VSIE: sort out virtual/physical address in pin_guest_page (Cédric Le Goater) [2169294] - KVM: s390: pv: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sida: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - KVM: s390: sort out physical vs virtual pointers usage (Cédric Le Goater) [2169294] - iommu/s390: Fail probe for non-PCI devices (Cédric Le Goater) [2169294] - PCI/AER: Remove redundant Device Control Error Reporting Enable (Myron Stowe) [2180894] - PCI/AER: Configure ECRC only if AER is native (Myron Stowe) [2180894] - PCI/AER: Iterate over error counters instead of error strings (Myron Stowe) [2180894] - PCI/AER: Enable error reporting when AER is native (Myron Stowe) [2180894] - PCI/AER: Configure ECRC for every device (Myron Stowe) [2180894] - PCI/AER: Clear MULTI_ERR_COR/UNCOR_RCV bits (Myron Stowe) [2180894] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [2180894] - PCI/AER: Use consistent format when printing PCI device (Myron Stowe) [2180894] - PCI/sysfs: Rely on lengths from scnprintf(), dsm_label_utf16s_to_utf8s() (Myron Stowe) [2180894] - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun (Myron Stowe) [2180894] - mlxsw: minimal: Fix deadlock in ports creation (Petr Oros) [2177956] - mlxsw: core: Fix use-after-free calling devl_unlock() in mlxsw_core_bus_device_unregister() (Petr Oros) [2177956] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2177956] - mlxsw: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2177956] - mlxsw: Narrow the critical section of devl_lock during ports creation/removal (Petr Oros) [2177956] - ice: sleep, don't busy-wait, in the SQ send retry loop (Michal Schmidt) [2184013] - ice: remove unused buffer copy code in ice_sq_send_cmd_retry() (Michal Schmidt) [2184013] - ice: sleep, don't busy-wait, for ICE_CTL_Q_SQ_CMD_TIMEOUT (Michal Schmidt) [2184013] - ice: remove ice_ctl_q_info::sq_cmd_timeout (Michal Schmidt) [2184013] - ice: increase the GNSS data polling interval to 20 ms (Michal Schmidt) [2184013] - ice: do not busy-wait to read GNSS data (Michal Schmidt) [2184013] - enic: Use irq_update_affinity_hint() (Michal Schmidt) [2101515] - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit (Michal Schmidt) [2101515] - net: enic: Cure the enic api locking trainwreck (Michal Schmidt) [2101515] - enic: switch from 'pci_' to 'dma_' API (Michal Schmidt) [2101515] - enic: convert to new udp_tunnel_nic infra (Michal Schmidt) [2101515] - enic: let core reject the unsupported coalescing parameters (Michal Schmidt) [2101515] - scsi: mpt3sas: Fix an issue when driver is being removed (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove HBA BIOS version in the kernel log (Tomas Henzl) [2166206] - scsi: mpt3sas: Don't print sense pool info twice (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix a memory leak (Tomas Henzl) [2166206] - scsi: mpt3sas: Demote log level for trace buffer allocation to info (Tomas Henzl) [2166206] - scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add() (Tomas Henzl) [2166206] - scsi: mpt3sas: Remove usage of dma_get_required_mask() API (Tomas Henzl) [2166206] - scsi: mpt3sas: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2166206] - ipmi: msghandler: kABI implementation was wrong (Tony Camuso) [2182345] - hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to race condition (Chris von Recklinghausen) [2184583] {CVE-2023-1855} - RDMA/irdma: Add ipv4 check to irdma_find_listener() (Kamal Heib) [2117129 2135976] - RDMA/irdma: Increase iWARP CM default rexmit count (Kamal Heib) [2117129 2135976] - RDMA/irdma: Fix memory leak of PBLE objects (Kamal Heib) [2117129 2135976] - RDMA/irdma: Do not generate SW completions for NOPs (Kamal Heib) [2117129 2135976] - RDMA/irdma: Remove a redundant irdma_arp_table() call (Kamal Heib) [2117129 2135976] - migrate: grab the compound head in migration_entry_wait_on_locked (Nico Pache) [2188249] - module: Don't wait for GOING modules (Mark Langsdorf) [1964563] - redhat/configs: Fix DEBUG_BLK_CGROUP and BFQ_CGROUP_DEBUG configs (Vladis Dronov) - x86/MCE/AMD: Clear DFR errors found in THR handler (Prarit Bhargava) [2190279] - Remove unused ZRTBZ variable (Lucas Zampieri)- [rt] build kernel-rt-4.18.0-491.rt7.280.el8 [2180997] - iommu/amd: Update amd_iommu_fault structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Update device_state structure to include PCI seg ID (Jerry Snitselaar) [2117775] - iommu/amd: Print PCI segment ID in error log messages (Jerry Snitselaar) [2117775] - iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid] commands (Jerry Snitselaar) [2117775] - iommu/amd: Specify PCI segment ID when getting pci device (Jerry Snitselaar) [2117775] - iommu/amd: Include PCI segment ID when initialize IOMMU (Jerry Snitselaar) [2117775] - iommu/amd: Introduce get_device_sbdf_id() helper function (Jerry Snitselaar) [2117775] - iommu/amd: Flush upto last_bdf only (Jerry Snitselaar) [2117775] - iommu/amd: Remove global amd_iommu_[dev_table/alias_table/last_bdf] (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dev_entry_bit() and get_dev_entry_bit() (Jerry Snitselaar) [2117775] - iommu/amd: Update (un)init_device_table_dma() (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_irq_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update dump_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Update iommu_ignore_device (Jerry Snitselaar) [2117775] - iommu/amd: Update set_dte_entry and clear_dte_entry (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment rlookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Update alloc_irq_table and alloc_irq_index (Jerry Snitselaar) [2117775] - iommu/amd: Update amd_irte_ops functions (Jerry Snitselaar) [2117775] - iommu/amd: Introduce struct amd_ir_data.iommu (Jerry Snitselaar) [2117775] - iommu/amd: Update irq_remapping_alloc to use IOMMU lookup helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use rlookup_amd_iommu helper function (Jerry Snitselaar) [2117775] - iommu/amd: Convert to use per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table size (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment last_bdf (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment unity map list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment alias_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment old_dev_tbl_cpy (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment dev_data_list (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment irq_lookup_table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment rlookup table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce per PCI segment device table (Jerry Snitselaar) [2117775] - iommu/amd: Introduce pci segment structure (Jerry Snitselaar) [2117775] - iommu/amd: Update struct iommu_dev_data definition (Jerry Snitselaar) [2117775] - redhat: configs: Enable CONFIG_INTEL_IOMMU_PERF_EVENTS (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix an IOMMU perfmon warning when CPU hotplug (Jerry Snitselaar) [2176995] - iommu/vt-d: Enable IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon overflow handler support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support cpumask for IOMMU perfmon (Jerry Snitselaar) [2176995] - iommu/vt-d: Add IOMMU perfmon support (Jerry Snitselaar) [2176995] - iommu/vt-d: Support Enhanced Command Interface (Jerry Snitselaar) [2176995] - iommu/vt-d: Retrieve IOMMU perfmon capability information (Jerry Snitselaar) [2176995] - iommu/vt-d: Fix error handling in sva enable/disable paths (Jerry Snitselaar) [2181397] - iommu/vt-d: Support size of the register set in DRHD (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow zero SAGAW if second-stage not supported (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove include/linux/intel-svm.h (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow to use flush-queue when first level is default (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PASID directory pointer coherency (Jerry Snitselaar) [2181397] - iommu/vt-d: Set No Execute Enable bit in PASID table entry (Jerry Snitselaar) [2181397] - iommu: Remove SVM_FLAG_SUPERVISOR_MODE support (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in prq_event_thread() (Jerry Snitselaar) [2181397] - PCI: Enable PASID only when ACS RR & UF enabled on upstream path (Jerry Snitselaar) [2181397] - iommu/vt-d: Set SRE bit only when hardware has SRS cap (Jerry Snitselaar) [2181397] - iommu/vt-d: Preset Access bit for IOVA in FL non-leaf paging entries (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove pasid_set_eafe() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unnecessary SVA data accesses in page fault path (Jerry Snitselaar) [2181397] - iommu/vt-d: Add RPLS to quirk list to skip TE disabling (Jerry Snitselaar) [2181397] - iommu: Remove guest pasid related interfaces and definitions (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove guest pasid related callbacks (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused PASID_DISABLED (Jerry Snitselaar) [2181397] - iommu/vt-d: Clean up unused PASID updating functions (Jerry Snitselaar) [2181397] - iommu/vtd: Replace acpi_bus_get_device() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused dma_to_mm_pfn function (Jerry Snitselaar) [2181397] - iommu/vt-d: Use bitmap_zalloc() when applicable (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove unused macros (Jerry Snitselaar) [2181397] - iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/vt-d: Use rcu_lock in get_resv_regions (Jerry Snitselaar) [2181397] - iommu: Add gfp parameter to iommu_alloc_resv_region (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init() (Jerry Snitselaar) [2181397] - iommu/vt-d: Fix PCI device refcount leak in has_external_pci() (Jerry Snitselaar) [2181397] - iommu/vt-d: Remove iova_cache_get/put() (Jerry Snitselaar) [2181397] - iommu/vt-d: Add missing "__init" for rmrr_sanity_check() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Force identity domains for legacy binding (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Properly handle the return value of arm_smmu_cmdq_build_cmd() (Jerry Snitselaar) [2181397] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands in arm_smmu_atc_inv_master() (Jerry Snitselaar) [2181397] - iommu/arm-smmu: Add clk_bulk_{prepare/unprepare} to system pm callbacks (Jerry Snitselaar) [2181397] - iommu: Make sysfs robust for non-API groups (Jerry Snitselaar) [2181397] - iommu: Use right way to retrieve iommu_ops (Jerry Snitselaar) [2181397] - iommu: Remove apply_resv_region (Jerry Snitselaar) [2181397] - iommu/dma: Explicitly sort PCI DMA windows (Jerry Snitselaar) [2181397] - iommu: Do not dereference fwnode in struct device (Jerry Snitselaar) [2181397] - iommu: Remove duplicate ida_free in iommu_group_alloc (Jerry Snitselaar) [2181397] - iommu: Directly use ida_alloc()/free() (Jerry Snitselaar) [2181397] - iommu/iova: change IOVA_MAG_SIZE to 127 to save memory (Jerry Snitselaar) [2181397] - iommu/iova: Fix alloc iova overflows issue (Jerry Snitselaar) [2181397] - iova: Remove iovad->rcaches check in iova_rcache_get() (Jerry Snitselaar) [2181397] - iova: Remove magazine BUG_ON() checks (Jerry Snitselaar) [2181397] - iova: Remove some magazine pointer NULL checks (Jerry Snitselaar) [2181397] - swiotlb: fix a braino in the alignment check fix (Jerry Snitselaar) [2181397] - swiotlb: fix slot alignment checks (Jerry Snitselaar) [2181397] - swiotlb: use wrap_area_index() instead of open-coding it (Jerry Snitselaar) [2181397] - swiotlb: fix the deadlock in swiotlb_do_find_slots (Jerry Snitselaar) [2181397] - swiotlb: mark swiotlb_memblock_alloc() as __init (Jerry Snitselaar) [2181397] - swiotlb: remove swiotlb_max_segment (Jerry Snitselaar) [2181397] - swiotlb: reduce the swiotlb buffer size on allocation failure (Jerry Snitselaar) [2181397] - swiotlb: replace kmap_atomic() with memcpy_{from,to}_page() (Jerry Snitselaar) [2181397] - swiotlb: don't panic! (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode (Jerry Snitselaar) [2175620] - iommu/amd: Add map/unmap_pages() iommu_domain_ops callback support (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement unmap_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/amd/io-pgtable: Implement map_pages io_pgtable_ops callback (Jerry Snitselaar) [2181397] - iommu/vt-d: Avoid unnecessary global DMA cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Avoid unnecessary global IRTE cache invalidation (Jerry Snitselaar) [2176983] - iommu/vt-d: Fix buggy QAT device mask (Jerry Snitselaar) [2169568] - iommu/vt-d: Add a fix for devices need extra dtlb flush (Jerry Snitselaar) [2169568] - xfs: fix off-by-one-block in xfs_discard_folio() (Carlos Maiolino) [2112147] - xfs: drop write error injection is unfixable, remove it (Carlos Maiolino) [2112147] - xfs: use iomap_valid method to detect stale cached iomaps (Carlos Maiolino) [2112147] - iomap: write iomap validity checks (Carlos Maiolino) [2112147] - xfs: xfs_bmap_punch_delalloc_range() should take a byte range (Carlos Maiolino) [2112147] - iomap: buffered write failure should not truncate the page cache (Carlos Maiolino) [2112147] - iomap: Export page_cache_seek_hole_data (Carlos Maiolino) [2112147] - xfs,iomap: move delalloc punching to iomap (Carlos Maiolino) [2112147] - xfs: use byte ranges for write cleanup ranges (Carlos Maiolino) [2112147] - xfs: punching delalloc extents on write failure is racy (Carlos Maiolino) [2112147] - xfs: write page faults in iomap are not buffered writes (Carlos Maiolino) [2112147] - iomap: iomap_read_inline_data cleanup (Carlos Maiolino) [2112147] - iomap: Fix inline extent handling in iomap_readpage (Carlos Maiolino) [2112147] - iomap: constify iomap_iter_srcmap (Carlos Maiolino) [2112147] - iomap: rework unshare flag (Carlos Maiolino) [2112147] - iomap: pass an iomap_iter to various buffered I/O helpers (Carlos Maiolino) [2112147] - iomap: remove iomap_apply (Carlos Maiolino) [2112147] - fsdax: Fix infinite loop in dax_iomap_rw() (Carlos Maiolino) [2112147] - fsdax: switch dax_iomap_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_swapfile_activate to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_data to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_seek_hole to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_bmap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_fiemap to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch __iomap_dio_rw to use iomap_iter (Carlos Maiolino) [2112147] - iomap: support REQ_OP_ZONE_APPEND (Carlos Maiolino) [2112147] - iomap: add a filesystem hook for direct I/O bio submission (Carlos Maiolino) [2112147] - iomap: switch iomap_page_mkwrite to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_zero_range to use iomap_iter (Carlos Maiolino) [2112147] - iomap: Change calling convention for zeroing (Carlos Maiolino) [2112147] - iomap: switch iomap_file_unshare to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch iomap_file_buffered_write to use iomap_iter (Carlos Maiolino) [2112147] - iomap: switch readahead and readpage to use iomap_iter (Carlos Maiolino) [2112147] - iomap: add the new iomap_iter model (Carlos Maiolino) [2112147] - iomap: fix the iomap_readpage_actor return value for inline data (Carlos Maiolino) [2112147] - iomap: Support inline data with block size < page size (Carlos Maiolino) [2112147] - fs: mark the iomap argument to __block_write_begin_int const (Carlos Maiolino) [2112147] - fsdax: mark the iomap argument to dax_iomap_sector as const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_page_sync const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_read_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data_valid const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_inline_data const (Carlos Maiolino) [2112147] - iomap: mark the iomap argument to iomap_sector const (Carlos Maiolino) [2112147] - ipv6: Fix an uninit variable access bug in __ip6_make_skb() (Hangbin Liu) [2185798] - ipv6: Fix tcp socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: Fix datagram socket connection with DSCP. (Hangbin Liu) [2185798] - ipv6: avoid use-after-free in ip6_fragment() (Hangbin Liu) [2185798] - ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network (Hangbin Liu) [2185798] - ipv6: fix WARNING in ip6_route_net_exit_late() (Hangbin Liu) [2185798] - ipv6: ensure sane device mtu in tunnels (Hangbin Liu) [2185798] - KVM: arm64: PMU: Restore the guest's EL0 event counting after migration (Shaoqin Huang) [2175146] - KVM: arm64: Retry fault if vma_lookup() results become invalid (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Don't save PMCR_EL0.{C,P} for the vCPU (Shaoqin Huang) [2175146] - KVM: arm64: PMU: Fix GET_ONE_REG for vPMC regs to return the current value (Shaoqin Huang) [2175146] - KVM: arm64: timers: Convert per-vcpu virtual offset to a global value (Shaoqin Huang) [2175146] - KVM: arm64: Fix non-kerneldoc comments (Shaoqin Huang) [2175146] - arm64/sysreg: clean up some inconsistent indenting (Shaoqin Huang) [2175146] - KVM: arm64: timers: Don't BUG() on unhandled timer trap (Shaoqin Huang) [2175146] - KVM: arm64: Reduce overhead of trapped timer sysreg accesses (Shaoqin Huang) [2175146] - KVM: arm64: Don't arm a hrtimer for an already pending timer (Shaoqin Huang) [2175146] - KVM: arm64: Fix S1PTW handling on RO memslots (Shaoqin Huang) [2175146] - KVM: arm64: Fix typo in comment (Shaoqin Huang) [2175146] - KVM: arm64: Fix pvtime documentation (Shaoqin Huang) [2175146] - KVM: arm64: Fix PAR_TO_HPFAR() to work independently of PA_BITS. (Shaoqin Huang) [2175146] - KVM: arm64: nvhe: Fix build with profile optimization (Shaoqin Huang) [2175146] - fuse: wait for writepages in syncfs (Brian Foster) [2185834] - virtio_fs: Modify format for virtio_fs_direct_access (Brian Foster) [2185834] - virtiofs: delete unused parameter for virtio_fs_cleanup_vqs (Brian Foster) [2185834] - virtiofs: use strscpy for copying the queue name (Brian Foster) [2185834] - virtiofs: propagate sync() to file server (Brian Foster) [2185834] - fuse: add a flag FUSE_SETXATTR_ACL_KILL_SGID to kill SGID (Brian Foster) [2185834] - fuse: extend FUSE_SETXATTR request (Brian Foster) [2185834] - virtiofs: fix userns (Brian Foster) [2185834] - virtiofs: remove useless function (Brian Foster) [2185834] - virtiofs: split requests that exceed virtqueue size (Brian Foster) [2185834] - virtiofs: fix memory leak in virtio_fs_probe() (Brian Foster) [2185834] - virtio_fs: convert to LE accessors (Brian Foster) [2185834] - dmaengine: use sysfs_emit() to instead of scnprintf() (Jerry Snitselaar) [2181398] - dmaengine: Simplify dmaenginem_async_device_register() function (Jerry Snitselaar) [2181398] - dmaengine: idma64: Update bytes_transferred field (Jerry Snitselaar) [2181398] - dmaengine: dw: Move check for paused channel to dwc_get_residue() (Jerry Snitselaar) [2181398] - dmaengine: ptdma: check for null desc before calling pt_cmd_callback (Jerry Snitselaar) [2181398] - dmaengine: idxd: Fix default allowed read buffers value in group (Jerry Snitselaar) [2181398] - dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0 (Jerry Snitselaar) [2181398] - ptdma: pt_core_execute_cmd() should use spinlock (Jerry Snitselaar) [2181398] - dmaengine: Fix double increment of client_count in dma_chan_get() (Jerry Snitselaar) [2181398] - dmaengine: ioat: stop mod_timer from resurrecting deleted timer in __cleanup() (Jerry Snitselaar) [2153929] - cifs: set a minimum of 120s for next dns resolution (Ronnie Sahlberg) [2182867] - cifs: use the expiry output of dns_query to schedule next resolution (Ronnie Sahlberg) [2182867] - cifs: sanitize paths in cifs_update_super_prepath. (Ronnie Sahlberg) [2182472] - redhat/configs: Fix incorrect configs location and content (Vladis Dronov) - scsi: megaraid_sas: Fix double kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix fw_crash_buffer_show() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix crash after a double completion (Tomas Henzl) [2163670] - scsi: megaraid_sas: Driver version update to 07.725.01.00-rc1 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add crash dump mode capability bit in MFI capabilities (Tomas Henzl) [2163670] - scsi: megaraid_sas: Update max supported LD IDs to 240 (Tomas Henzl) [2163670] - scsi: megaraid_sas: Add flexible array member for SGLs (Tomas Henzl) [2163670] - scsi: megaraid_sas: Fix some spelling mistakes in comment (Tomas Henzl) [2163670] - scsi: megaraid_sas: Remove unnecessary kfree() (Tomas Henzl) [2163670] - scsi: megaraid_sas: Use irq_set_affinity_and_hint() (Tomas Henzl) [2163670] - scsi: megaraid: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Tomas Henzl) [2163670] - scsi: ses: Handle enclosure with just a primary component gracefully (Tomas Henzl) [2188481] - ipvlan: hold lower dev to avoid possible use-after-free (Davide Caratti) [2188055] - net: macvlan: Use built-in RCU list checking (Davide Caratti) [2188055] - x86/split_lock: Enumerate architectural split lock disable bit (Prarit Bhargava) [2123535] - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state (Yauheni Kaliuta) [2175160] - hwmon: (coretemp) avoid RDMSR interrupts to isolated CPUs (Marcelo Tosatti) [2158707] - scsi: target: iscsi: Handle abort for WRITE_PENDING cmds (Maurizio Lombardi) [2156588] - scsi: target: iscsit: Fix TAS handling during conn cleanup (Maurizio Lombardi) [2156588] - [rt] build kernel-rt-4.18.0-490.rt7.279.el8 [2180997] - RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size (Kamal Heib) [2170083] - RDMA/umem: Remove unused 'work' member from struct ib_umem (Kamal Heib) [2170083] - RDMA/restrack: Correct spelling (Kamal Heib) [2170083] - scripts/spelling.txt: add "exsits" pattern and fix typo instances (Kamal Heib) [2170083] - RDMA/cma: Refactor the inbound/outbound path records process flow (Kamal Heib) [2170083] - RDMA/core: Refactor rdma_bind_addr (Kamal Heib) [2170083] - IB/IPoIB: Fix legacy IPoIB due to wrong number of queues (Kamal Heib) [2170076] - RDMA/core: Fix ib block iterator counter overflow (Kamal Heib) [2170076] - RDMA/srp: Move large values to a new enum for gcc13 (Kamal Heib) [2170076] - IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces (Kamal Heib) [2170076] - RDMA/cm: Make QP FLUSHABLE for supported device (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel verbs ABI to support flush (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support flush (Kamal Heib) [2170076] - RDMA/cma: Change RoCE packet life time from 18 to 16 (Kamal Heib) [2170076] - RDMA/srp: Fix error return code in srp_parse_options() (Kamal Heib) [2170076] - RDMA: Extend RDMA kernel ABI to support atomic write (Kamal Heib) [2170076] - RDMA: Extend RDMA user ABI to support atomic write (Kamal Heib) [2170076] - RDMA/umem: remove FOLL_FORCE usage (Kamal Heib) [2170076] - RDMA/nldev: Fix failure to send large messages (Kamal Heib) [2170076] - RDMA/nldev: Add NULL check to silence false warnings (Kamal Heib) [2170076] - RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps() (Kamal Heib) [2170076] - IB/isert: use the ISCSI_LOGIN_CURRENT_STAGE macro (Kamal Heib) [2170076] - RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port (Kamal Heib) [2170076] - RDMA/core: Make sure "ib_port" is valid when access sysfs node (Kamal Heib) [2170076] - RDMA/restrack: Release MR restrack when delete (Kamal Heib) [2170076] - IB/mad: Don't call to function that might sleep while in atomic context (Kamal Heib) [2170076] - RDMA/core: Fix order of nldev_exit call (Kamal Heib) [2170076] - RDMA/core: fix repeated words in comments (Kamal Heib) [2170076] - IB/iser: open code iser_disconnected_handler (Kamal Heib) [2170076] - IB/iser: add safety checks for state_mutex lock (Kamal Heib) [2170076] - IB/iser: open code iser_conn_state_comp_exch (Kamal Heib) [2170076] - RDMA/opa_vnic: fix spelling typo in comment (Kamal Heib) [2170076] - RDMA/core: return -EOPNOSUPP for ODP unsupported device (Kamal Heib) [2170076] - IB/uverbs: fix the typo of optional (Kamal Heib) [2170076] - treewide: use get_random_u32() when possible (Kamal Heib) [2170070] - treewide: use prandom_u32_max() when possible, part 1 (Kamal Heib) [2170070] - RDMA/core: Clean up a variable name in ib_create_srq_user() (Kamal Heib) [2170070] - RDMA/srp: Support more than 255 rdma ports (Kamal Heib) [2170070] - RDMA/cm: Use DLID from inbound/outbound PathRecords as the datapath DLID (Kamal Heib) [2170070] - RDMA/cma: Multiple path records support with netlink channel (Kamal Heib) [2170070] - RDMA/core: Rename rdma_route.num_paths field to num_pri_alt_paths (Kamal Heib) [2170070] - RDMA/srpt: Use flex array destination for memcpy() (Kamal Heib) [2170070] - IB/cm: Refactor cm_insert_listen() and cm_find_listen() (Kamal Heib) [2170070] - IB/cm: remove cm_id_priv->id.service_mask and service_mask parameter of cm_init_listen() (Kamal Heib) [2170070] - IB/cm: Remove the service_mask parameter from ib_cm_listen() (Kamal Heib) [2170070] - RDMA/core: Remove 'device' argument from rdma_build_skb() (Kamal Heib) [2170070] - RDMA/srp: Use the attribute group mechanism for sysfs attributes (Kamal Heib) [2170070] - RDMA/srp: Handle dev_set_name() failure (Kamal Heib) [2170070] - RDMA/srp: Remove the srp_host.released completion (Kamal Heib) [2170070] - RDMA/srp: Rework the srp_add_port() error path (Kamal Heib) [2170070] - IB: move from strlcpy with unused retval to strscpy (Kamal Heib) [2170070] - treewide: uapi: Replace zero-length arrays with flexible-array members (Kamal Heib) [2170070] - RDMA/core: Delete IPsec flow action logic from the core (Kamal Heib) [2170070] - net: Don't include filter.h from net/sock.h (Kamal Heib) [2170070] - scsi: qla2xxx: Synchronize the IOCB count to be in order (Nilesh Javali) [2164947] - scsi: qla2xxx: Perform lockless command completion in abort path (Nilesh Javali) [2164947] - scsi: qla2xxx: Use the proper SCSI midlayer interfaces for PI (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove the unused variable wwn (Nilesh Javali) [2164947] - scsi: qla2xxx: Simplify if condition evaluation (Nilesh Javali) [2164947] - scsi: qla2xxx: Use a variable for repeated mem_size computation (Nilesh Javali) [2164947] - scsi: qla2xxx: Make qla_trim_buf() and __qla_adjust_buf() static (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix printk() format string (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.200-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Select qpair depending on which CPU post_cmd() gets called (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Reduce memory usage during low I/O (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix stall session after app start (Nilesh Javali) [2164947] - scsi: qla2xxx: edif: Fix performance dip due to lock contention (Nilesh Javali) [2164947] - scsi: qla2xxx: Relocate/rename vp map (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GNN ID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (GPNID) (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove dead code (Nilesh Javali) [2164947] - scsi: qla2xxx: Update version to 10.02.08.100-k (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix IOCB resource check warning (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove increment of interface err cnt (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix erroneous link down (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unintended flag clearing (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix stalled login (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription for management commands (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix exchange oversubscription (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix link failure in NPIV environment (Nilesh Javali) [2164947] - scsi: qla2xxx: Check if port is online before sending ELS (Nilesh Javali) [2164947] - scsi: qla2xxx: Initialize vha->unknown_atio_[list, work] for NPIV hosts (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove duplicate of vha->iocb_work initialization (Nilesh Javali) [2164947] - scsi: qla2xxx: Remove unused variable 'found_devs' (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix set-but-not-used variable warnings (Nilesh Javali) [2164947] - scsi: qla2xxx: Fix memory leak in __qlt_24xx_handle_abts() (Nilesh Javali) [2164947] - ethtool: eeprom: fix null-deref on genl_info in dump (Davide Caratti) [2188002] - packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE (Davide Caratti) [2188002] - af_key: Fix send_acquire race with pfkey_register (Davide Caratti) [2188002] - net: llc: fix skb_over_panic (Davide Caratti) [2188002] - inet_ecn: Fix endianness of checksum update when setting ECT(1) (Davide Caratti) [2188002] - RDMA/irdma: Fix potential NULL-ptr-dereference (Kamal Heib) [2153377] - RDMA/irdma: Split CQ handler into irdma_reg_user_mr_type_cq (Kamal Heib) [2153377] - RDMA/irdma: Split QP handler into irdma_reg_user_mr_type_qp (Kamal Heib) [2153377] - RDMA/irdma: Split mr alloc and free into new functions (Kamal Heib) [2153377] - RDMA/irdma: Split MEM handler into irdma_reg_user_mr_type_mem (Kamal Heib) [2153377] - RDMA/irdma: Remove extra ret variable in favor of existing err (Kamal Heib) [2153377] - RDMA/irdma: Initialize net_type before checking it (Kamal Heib) [2153377] - RDMA/irdma: Do not request 2-level PBLEs for CQ alloc (Kamal Heib) [2153377] - RDMA/irdma: Fix RQ completion opcode (Kamal Heib) [2153377] - RDMA/irdma: Fix inline for multiple SGE's (Kamal Heib) [2153377] - bnxt_en: Fix mqprio and XDP ring checking logic (Ken Cox) [2159222] - bnxt: Do not read past the end of test names (Ken Cox) [2159222] - bnxt: report FEC block stats via standard interface (Ken Cox) [2159222] - bnxt_en: Remove debugfs when pci_register_driver failed (Ken Cox) [2159222] - bnxt_en: update RSS config using difference algorithm (Ken Cox) [2159222] - bnxt_en: refactor VNIC RSS update functions (Ken Cox) [2159222] - bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer (Ken Cox) [2159222] - bnxt_en: Fix possible crash in bnxt_hwrm_set_coal() (Ken Cox) [2159222] - bnxt_en: fix the handling of PCIE-AER (Ken Cox) [2159222] - bnxt_en: refactor bnxt_cancel_reservations() (Ken Cox) [2159222] - bnxt_en: check and resize NVRAM UPDATE entry before flashing (Ken Cox) [2159222] - bnxt_en: Update firmware interface to 1.10.2.118 (Ken Cox) [2159222] - bnxt_en: replace reset with config timestamps (Ken Cox) [2159222] - hugetlbfs: don't delete error page from pagecache (Aristeu Rozanski) [2188334] - mm: shmem: don't truncate page if memory failure happens (Aristeu Rozanski) [2188334] - mm: hwpoison: handle non-anonymous THP correctly (Aristeu Rozanski) [2188334] - mm: hwpoison: refactor refcount check handling (Aristeu Rozanski) [2188334] - scsi: qedf: Remove set but unused variable 'page' (Nilesh Javali) [2164955] - scsi: qedf: Fix a UAF bug in __qedf_probe() (Nilesh Javali) [2164955] - xfs: don't use BMBT btree split workers for IO completion (Carlos Maiolino) [2127493] - tools/power turbostat: Add support for MeteorLake platforms (Derek Barbosa) [2153966] - x86/bugs: Workaround for incorrectly set X86_BUG_RETBLEED under VMware (Waiman Long) [2184343]- [rt] build kernel-rt-4.18.0-489.rt7.278.el8 [2180997] - nvmet: fix workqueue MEM_RECLAIM flushing dependency (Maurizio Lombardi) [2187618] - nvmet: use a private workqueue instead of the system workqueue (Maurizio Lombardi) [2187618] - nvme: fix discard support without oncs (Maurizio Lombardi) [2187618] - nvme-pci: fix timeout request state check (Maurizio Lombardi) [2187618] - nvme: fix multipath crash caused by flush request when blktrace is enabled (Maurizio Lombardi) [2187618] - nvme: return err on nvme_init_non_mdts_limits fail (Maurizio Lombardi) [2187618] - nvme initialize core quirks before calling nvme_init_subsystem (Maurizio Lombardi) [2187618] - nvmet: fix memory leak in nvmet_subsys_attr_model_store_locked (Maurizio Lombardi) [2187618] - nvme: quiet user passthrough command errors (Maurizio Lombardi) [2187618] - nvme-tcp: fix possible circular locking when deleting a controller under memory pressure (Maurizio Lombardi) [2187618] - nvme-hwmon: kmalloc the NVME SMART log buffer (Maurizio Lombardi) [2187618] - nvme-hwmon: consistently ignore errors from nvme_hwmon_init (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeroes on various Kingston SSD (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro5000 SSDs (Maurizio Lombardi) [2187618] - nvme-rdma: fix possible hang caused during ctrl deletion (Maurizio Lombardi) [2187618] - nvmet-tcp: add bounds check on Transfer Tag (Maurizio Lombardi) [2187618] - nvmet-tcp: handle ICReq PDU received in NVMET_TCP_Q_LIVE state (Maurizio Lombardi) [2187618] - nvme-pci: set min_align_mask before calculating max_hw_sectors (Maurizio Lombardi) [2187618] - nvme: enumerate controller flags (Maurizio Lombardi) [2187618] - nvme: ensure subsystem reset is single threaded (Maurizio Lombardi) [2187618] - nvme: copy firmware_rev on each init (Maurizio Lombardi) [2187618] - nvme: restrict management ioctls to admin (Maurizio Lombardi) [2187618] - nvme: consider also host_iface when checking ip options (Maurizio Lombardi) [2187618] - nvme: move from strlcpy with unused retval to strscpy (Maurizio Lombardi) [2187618] - nvme: add comment for unaligned "fake" nqn (Maurizio Lombardi) [2187618] - nvme-pci: disable Write Zeroes on Phison E3C/E4C (Maurizio Lombardi) [2187618] - nvmet: fix mar and mor off-by-one errors (Maurizio Lombardi) [2187618] - nvmet: fix a use-after-free (Maurizio Lombardi) [2187618] - nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change() (Maurizio Lombardi) [2187618] - nvme-fabrics: Fix a typo in an error message (Maurizio Lombardi) [2187618] - nvme-fabrics: parse nvme connect Linux error codes (Maurizio Lombardi) [2187618] - nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue teardown (Maurizio Lombardi) [2187618] - nvme: rename nvme_validate_or_alloc_ns to nvme_scan_ns (Maurizio Lombardi) [2187618] - nvme: catch -ENODEV from nvme_revalidate_zones again (Maurizio Lombardi) [2187618] - nvme-pci: print the command name of aborted commands (Maurizio Lombardi) [2187618] - nvme: use command_id instead of req->tag in trace_nvme_complete_rq() (Maurizio Lombardi) [2187618] - nvme-pci: use nvme core helper to cancel requests in tagset (Maurizio Lombardi) [2187618] - nvme-tcp: use in-capsule data for I/O connect (Maurizio Lombardi) [2187618] - nvme-rdma: remove timeout for getting RDMA-CM established event (Maurizio Lombardi) [2187618] - nvmet: parse fabrics commands on io queues (Maurizio Lombardi) [2187618] - nvme-fabrics: decode 'authentication required' connect error (Maurizio Lombardi) [2187618] - nvme-loop: use nvme core helpers to cancel all requests in a tagset (Maurizio Lombardi) [2187618] - nvme: handle the persistent internal error AER (Maurizio Lombardi) [2187618] - nvme: remove a double word in a comment (Maurizio Lombardi) [2187618] - nvme: use struct group for generic command dwords (Maurizio Lombardi) [2187618] - nvme-pci: fix freeze accounting for error handling (Maurizio Lombardi) [2187618] - nvmet-tcp: fix regression in data_digest calculation (Maurizio Lombardi) [2187618] - nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH (Maurizio Lombardi) [2187618] - nvme-pci: disable write zeros support on UMIC and Samsung SSDs (Maurizio Lombardi) [2187618] - nvme-pci: avoid the deepest sleep state on ZHITAI TiPro7000 SSDs (Maurizio Lombardi) [2187618] - nvme-pci: add trouble shooting steps for timeouts (Maurizio Lombardi) [2187618] - nvme: add device name to warning in uuid_show() (Maurizio Lombardi) [2187618] - nvmet: fix typo in comment (Maurizio Lombardi) [2187618] - nvme: set controller enable bit in a separate write (Maurizio Lombardi) [2187618] - nvme: set non-mdts limits in nvme_scan_work (Maurizio Lombardi) [2187618] - nvme-pci: harden drive presence detect in nvme_dev_disable() (Maurizio Lombardi) [2187618] - nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags (Maurizio Lombardi) [2187618] - nvme: mark internal passthru request RQF_QUIET (Maurizio Lombardi) [2187618] - nvme: remove unneeded include from constants file (Maurizio Lombardi) [2187618] - nvme: set dma alignment to dword (Maurizio Lombardi) [2187618] - nvme: fix interpretation of DMRSL (Maurizio Lombardi) [2187618] - ixgbe: add double of VLAN header when computing the max MTU (Ken Cox) [2153372] - ixgbe: allow to increase MTU to 3K with XDP enabled (Ken Cox) [2153372] - ixgbe: Filter out spurious link up indication (Ken Cox) [2153372] - ixgbe: XDP: fix checker warning from rcu pointer (Ken Cox) [2153372] - ixgbe: fix pci device refcount leak (Ken Cox) [2153372] - ixgbe: change MAX_RXD/MAX_TXD based on adapter type (Ken Cox) [2153372] - tracing: kprobes: Prohibit probing on notrace function (Mukesh Chaurasiya) [2183475] - powerpc/kprobes: Ignore traps that happened in real mode (Mukesh Chaurasiya) [2183475] - nvme-rdma: handle number of queue changes (Kamal Heib) [2160665] - nvme-rdma: remove timeout for getting RDMA-CM established event (Kamal Heib) [2160665] - nvmet-rdma: fix kernel-doc warning for nvmet_rdma_device_removal (Kamal Heib) [2160665] - net: mpls: fix stale pointer if allocation fails during device rename (Guillaume Nault) [2184957] {CVE-2023-26545} - block: don't set GD_NEED_PART_SCAN if scan partition failed (Ming Lei) [2151112] - block: fix wrong mode for blkdev_put() from disk_scan_partitions() (Ming Lei) [2151112] - block: fix scan partition for exclusively open device again (Ming Lei) [2151112] - mm: swap: get rid of livelock in swapin readahead (Aristeu Rozanski) [2035182 2182084] - redhat: require reasonably recent grub2 _only_ if grub2 is already installed (Denys Vlasenko) [2183531] - i40e: Fix kernel crash during reboot when adapter is in recovery mode (Stefan Assmann) [2153348] - i40e: add double of VLAN header when computing the max MTU (Stefan Assmann) [2153348] - i40e: Add checking for null for nlmsg_find_attr() (Stefan Assmann) [2153348] - net/i40e: Replace 0-length array with flexible array (Stefan Assmann) [2153348] - i40e: use ERR_PTR error print in i40e messages (Stefan Assmann) [2153348] - i40e: use int for i40e_status (Stefan Assmann) [2153348] - i40e: Remove string printing for i40e_status (Stefan Assmann) [2153348] - i40e: Remove unused i40e status codes (Stefan Assmann) [2153348] - net/sched: move struct tc_mqprio_qopt_offload from pkt_cls.h to pkt_sched.h (Stefan Assmann) [2153348] - i40e: Remove redundant pci_enable_pcie_error_reporting() (Stefan Assmann) [2153348] - virtchnl: i40e/iavf: rename iwarp to rdma (Stefan Assmann) [2153348] - treewide: Convert del_timer*() to timer_shutdown*() (Stefan Assmann) [2153348] - i40e: allow toggling loopback mode via ndo_set_features callback (Stefan Assmann) [2153348] - i40e: Disallow ip4 and ip6 l4_4_bytes (Stefan Assmann) [2153348] - i40e: Fix for VF MAC address 0 (Stefan Assmann) [2153348] - i40e: Fix not setting default xps_cpus after reset (Stefan Assmann) [2153348] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2183559] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2183559] - dm: remove unnecessary (void*) conversion in event_callback() (Benjamin Marzinski) [2179207] - dm ioctl: remove unnecessary check when using dm_get_mdptr() (Benjamin Marzinski) [2179207] - dm ioctl: assert _hash_lock is held in __hash_remove (Benjamin Marzinski) [2179207] - dm cache: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm thin: add cond_resched() to various workqueue loops (Benjamin Marzinski) [2179207] - dm: add cond_resched() to dm_wq_work() (Benjamin Marzinski) [2179207] - dm: update targets using system workqueues to use a local workqueue (Benjamin Marzinski) [2179207] - dm: remove flush_scheduled_work() during local_exit() (Benjamin Marzinski) [2179207] - dm: declare variables static when sensible (Benjamin Marzinski) [2179207] - dm ioctl: prefer strscpy() instead of strlcpy() (Benjamin Marzinski) [2179207] - dm: avoid 'do {} while(0)' loop in single statement macros (Benjamin Marzinski) [2179207] - dm: favour __packed versus "__attribute__ ((packed))" (Benjamin Marzinski) [2179207] - dm: favour __aligned(N) versus "__attribute__ (aligned(N))" (Benjamin Marzinski) [2179207] - dm: adjust EXPORT_SYMBOL() to follow functions immediately (Benjamin Marzinski) [2179207] - dm block-manager: avoid not required parentheses (Benjamin Marzinski) [2179207] - dm: send just one event on resize, not two (Benjamin Marzinski) [2179207] - dm table: check that a dm device doesn't reference itself (Benjamin Marzinski) [2179207] - dm raid: fix some spelling mistakes in comments (Benjamin Marzinski) [2179207] - dm verity: stop using WQ_UNBOUND for verify_wq (Benjamin Marzinski) [2179207] - dm integrity: Remove bi_sector that's only used by commented debug code (Benjamin Marzinski) [2179207] - dm crypt: Slightly simplify crypt_set_keyring_key() (Benjamin Marzinski) [2179207] - dm ioctl: drop always-false condition (Benjamin Marzinski) [2179207] - dm flakey: fix logic when corrupting a bio (Benjamin Marzinski) [2179207] - dm flakey: fix a bug with 32-bit highmem systems (Benjamin Marzinski) [2179207] - dm flakey: don't corrupt the zero page (Benjamin Marzinski) [2179207] - dm cache: Add some documentation to dm-cache-background-tracker.h (Benjamin Marzinski) [2179207] - dm cache: free background tracker's queued work in btracker_destroy (Benjamin Marzinski) [2179207] - dm ioctl: fix a couple ioctl codes (Benjamin Marzinski) [2179207] - dm ioctl: a small code cleanup in list_version_get_info (Benjamin Marzinski) [2179207] - sfc: include vport_id in filter spec hash and equal() (Íñigo Huguet) [2159251] - ptp: convert remaining drivers to adjfine interface (Íñigo Huguet) [2159251] - sfc: Use kmap_local_page() instead of kmap_atomic() (Íñigo Huguet) [2159251] - sfc: use sysfs_emit() to instead of scnprintf() (Íñigo Huguet) [2159251] - selftests: forwarding: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add tunnel_key "nofrag" test case (Davide Caratti) [2103797] - selftests: tc-testing: add "depends_on" property to skip tests (Davide Caratti) [2103797] - net/sched: act_tunnel_key: add support for "don't fragment" (Davide Caratti) [2103797] - e1000e: Fix TX dispatch condition (Ken Cox) [2153313] - e1000e: Separate MTP board type from ADP (Ken Cox) [2153313] - drivers/net/ethernet/e1000e: check return value of e1e_rphy() (Ken Cox) [2153313] - ipvs: add sysctl_run_estimation to support disable estimation (Hangbin Liu) [2182003] - scsi: ses: Don't attach if enclosure has no components (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove() (Tomas Henzl) [1975026] - scsi: ses: Fix possible desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses (Tomas Henzl) [1975026] - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process() (Tomas Henzl) [1975026] - vmxnet3: move rss code block under eop descriptor (Izabela Bakollari) [2172579]- [rt] build kernel-rt-4.18.0-488.rt7.277.el8 [2180997] - crypto: qat - add support for 402xx devices (Vladis Dronov) [2144529] - crypto: qat - drop log level of msg in get_instance_node() (Vladis Dronov) [2144529] - crypto: qat - fix out-of-bounds read (Vladis Dronov) [2144529] - Documentation: qat: change kernel version (Vladis Dronov) [2144529] - crypto: qat - add qat_zlib_deflate (Vladis Dronov) [2144529] - crypto: qat - extend buffer list logic interface (Vladis Dronov) [2144529] - crypto: qat - fix spelling mistakes from 'bufer' to 'buffer' (Vladis Dronov) [2144529] - crypto: qat - add resubmit logic for decompression (Vladis Dronov) [2144529] - crypto: acomp - define max size for destination (Vladis Dronov) [2144529] - crypto: qat - enable deflate for QAT GEN4 (Vladis Dronov) [2144529] - crypto: qat - expose deflate through acomp api for QAT GEN2 (Vladis Dronov) [2144529] - crypto: qat - rename and relocate GEN2 config function (Vladis Dronov) [2144529] - crypto: qat - relocate qat_algs_alloc_flags() (Vladis Dronov) [2144529] - crypto: qat - relocate backlog related structures (Vladis Dronov) [2144529] - crypto: qat - extend buffer list interface (Vladis Dronov) [2144529] - crypto: qat - generalize crypto request buffers (Vladis Dronov) [2144529] - crypto: qat - change bufferlist logic interface (Vladis Dronov) [2144529] - crypto: qat - rename bufferlist functions (Vladis Dronov) [2144529] - crypto: qat - relocate bufferlist logic (Vladis Dronov) [2144529] - crypto: qat - Use helper to set reqsize (Vladis Dronov) [2144529] - crypto: kpp - Add helper to set reqsize (Vladis Dronov) [2144529] - crypto: qat - fix error return code in adf_probe (Vladis Dronov) [2144529] - crypto: qat - remove ADF_STATUS_PF_RUNNING flag from probe (Vladis Dronov) [2144529] - selftests: net: rps_default_mask.sh: delete veth link specifically (Hangbin Liu) [2185801] - selftests: net: devlink_port_split.py: skip test if no suitable device available (Hangbin Liu) [2185801] - selftests: mirror_gre_bridge_1q: Avoid changing PVID while interface is operational (Hangbin Liu) [2185801] - selftests/tls: Add {} to avoid static checker warning (Hangbin Liu) [2185801] - selftests: nft_nat: ensuring the listening side is up before starting the client (Hangbin Liu) [2185801] - selftest: fib_tests: Always cleanup before exit (Hangbin Liu) [2185801] - selftests/net: Interpret UDP_GRO cmsg data as an int value (Hangbin Liu) [2185801] - selftests: forwarding: lib: quote the sysctl values (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_tx: Cater for pending datagrams zerocopy benchmarking (Hangbin Liu) [2185801] - selftests: net: udpgso_bench: Fix racing bug between the rx/tx programs (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx/tx: Stop when wrong CLI args are provided (Hangbin Liu) [2185801] - selftests: net: udpgso_bench_rx: Fix 'used uninitialized' compiler warning (Hangbin Liu) [2185801] - selftests: rtnetlink: correct xfrm policy rule in kci_test_ipsec_offload (Hangbin Liu) [2185801] - selftests: forwarding: Fix failing tests with old libnet (Hangbin Liu) [2185801] - powerpc/pseries/mobility: set NMI watchdog factor during an LPM (Mamatha Inamdar) [2186026] - powerpc/watchdog: introduce a NMI watchdog's factor (Mamatha Inamdar) [2186026] - watchdog: export lockup_detector_reconfigure (Mamatha Inamdar) [2186026] - powerpc/mobility: wait for memory transfer to complete (Mamatha Inamdar) [2186026] - crypto: drbg - Only fail when jent is unavailable in FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - permanent and intermittent health errors (Vladis Dronov) [2175712] - crypto: jitter - quit sample collection loop upon RCT failure (Vladis Dronov) [2175712] - crypto: jitter - don't limit ->health_failure check to FIPS mode (Vladis Dronov) [2175712] - crypto: jitter - drop kernel-doc notation (Vladis Dronov) [2175712] - selftests/livepatch: normalize sysctl error message (Julia Denham) [RHEL-256] - livepatch: Skip livepatch tests if ftrace cannot be configured (Julia Denham) [RHEL-256] - livepatch: Add a missing newline character in klp_module_coming() (Julia Denham) [RHEL-256] - livepatch: fix race between fork and KLP transition (Julia Denham) [RHEL-256] - scsi: bnx2i: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Nilesh Javali) [2164956] - x86/xen: Split HVM vector callback setup and interrupt gate allocation (Prarit Bhargava) [2187810] - s390/uaccess: add missing earlyclobber annotations to __clear_user() (Tobias Huschle) [2183078] - s390/qeth: fix use-after-free in hsci (Tobias Huschle) [2183992] - SUNRPC: Fix a server shutdown leak (Benjamin Coddington) [2166107] - powerpc/pseries/vas: Ignore VAS update for DLPAR if copy/paste is not enabled (Mamatha Inamdar) [2184979] - cnic: don't pass bogus GFP_ flags to dma_alloc_coherent (Nilesh Javali) [2164958] - cnic: Use the bitmap API to allocate bitmaps (Nilesh Javali) [2164958]- [rt] build kernel-rt-4.18.0-487.rt7.276.el8 [2180997] - kernel/fork: Restore vfree_atomic in free_thread_stack() (Crystal Wood) [2159514] - perf vendor events intel: Add uncore event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add metrics for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Update core event list for Sapphirerapids (Michael Petlan) [2180657] - perf vendor events intel: Add sapphirerapids events (Michael Petlan) [2180657] - perf vendor events intel: Update metrics for Alderlake (Michael Petlan) [2180656] - perf vendor events: Fix Alderlake metric groups (Michael Petlan) [2180656] - perf vendor events intel: Add metrics for Alderlake (Michael Petlan) [2180656] - perf/x86/rapl: Add support for Intel Raptor Lake (Michael Petlan) [2180654] - perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[] (Michael Petlan) [2153896] - perf/x86/intel/cstate: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Emerald Rapids (Michael Petlan) [2156802] - perf/x86/msr: Add Sapphire Rapids CPU support (Michael Petlan) [2156802] - perf/x86/intel/uncore: Add Meteor Lake support (Michael Petlan) [2177039] - perf/x86/msr: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/cstate: Add Meteor Lake support (Michael Petlan) [2153962] - perf/x86/intel: Support Architectural PerfMon Extension leaf (Michael Petlan) [2153962] - x86/cpufeatures: Add Architectural PerfMon Extension bit (Michael Petlan) [2153962] - perf/x86: Support Retire Latency (Michael Petlan) [2153962] - perf/x86: Add Meteor Lake support (Michael Petlan) [2153962] - perf: Add PMU_FORMAT_ATTR_SHOW (Michael Petlan) [2153962] - mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process (Rafael Aquini) [2153926] - mm/hugetlb: simplify the calculation of variables (Rafael Aquini) [2153926] - mm/mempolicy: fix lock contention on mems_allowed (Rafael Aquini) [2153926] - mm/mempolicy: do not allow illegal MPOL_F_NUMA_BALANCING | MPOL_LOCAL in mbind() (Rafael Aquini) [2153926] - mm/mempolicy.c: use in_task() in mempolicy_slab_node() (Rafael Aquini) [2153926] - mm/mempolicy: unify the create() func for bind/interleave/prefer-many policies (Rafael Aquini) [2153926] - mm/mempolicy: advertise new MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY (Rafael Aquini) [2153926] - mm/memplicy: add page allocation function for MPOL_PREFERRED_MANY policy (Rafael Aquini) [2153926] - mm/mempolicy: add MPOL_PREFERRED_MANY for multiple preferred nodes (Rafael Aquini) [2153926] - mm/mempolicy: use readable NUMA_NO_NODE macro instead of magic number (Rafael Aquini) [2153926] - mm/mempolicy: unify the parameter sanity check for mbind and set_mempolicy (Rafael Aquini) [2153926] - mm/mempolicy: use unified 'nodes' for bind/interleave/prefer policies (Rafael Aquini) [2153926] - mm/mempolicy: don't handle MPOL_LOCAL like a fake MPOL_PREFERRED policy (Rafael Aquini) [2153926] - mm/mempolicy: cleanup nodemask intersection check for oom (Rafael Aquini) [2153926] - mm/mempolicy: fix mpol_misplaced kernel-doc (Rafael Aquini) [2153926] - numa balancing: migrate on fault among multiple bound nodes (Rafael Aquini) [2153926] - mm/hugetlb: add mempolicy check in the reservation routine (Rafael Aquini) [2153926] - mm: remove unused alloc_page_vma_node() (Rafael Aquini) [2153926] - mm/mempolicy: remove or narrow the lock on current (Rafael Aquini) [2153926] - mm, mempolicy: fix uninit memory access (Rafael Aquini) [2153926] - mm/mempool: minor coding style tweaks (Rafael Aquini) [2153926] - mm: fix typos in comments (Rafael Aquini) [2153926] - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI (Joel Savitz) [2170113] - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT op") (Joel Savitz) [2170113] - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data() (Joel Savitz) [2170113] - futex: Remove unneeded gotos (Joel Savitz) [2170113] - rtmutex: Ensure that the top waiter is always woken up (Joel Savitz) [2170113] - rtmutex: Add acquire semantics for rtmutex lock acquisition slow path (Joel Savitz) [2170113] - locking/lockdep: Fix lockdep_init_map_*() confusion (Joel Savitz) [2170113] - locking/lockdep: Avoid potential access of invalid memory in lock_class (Joel Savitz) [2170113] - lockdep: Correct lock_classes index mapping (Joel Savitz) [2170113] - locking/rtmutex: Squash self-deadlock check for ww_rt_mutex. (Joel Savitz) [2170113] - locking/rtmutex: Fix incorrect condition in rtmutex_spin_on_owner() (Joel Savitz) [2170113] - kallsyms: remove arch specific text and data check (Joel Savitz) [2170113] - lockdep: Let lock_is_held_type() detect recursive read as read (Joel Savitz) [2170113] - lockdep: Fix wait-type for empty stack (Joel Savitz) [2170113] - locking/lockdep: Improve noinstr vs errors (Joel Savitz) [2170113] - locking/lockdep: Correct calling tracepoints (Joel Savitz) [2170113] - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count (Joel Savitz) [2170113] - locking/ww_mutex: Fix runtime warning in the WW mutex selftest (Joel Savitz) [2170113] - fortify: Do not cast to "unsigned char" (Josef Oskera) [2139487] - fortify: Use SIZE_MAX instead of (size_t)-1 (Josef Oskera) [2139487] - afs: Work around strnlen() oops with CONFIG_FORTIFIED_SOURCE=y (Josef Oskera) [2139487] - net/mlx4_en: Introduce flexible array to silence overflow warning (Josef Oskera) [2139487] - wusbcore: silence fortify warning (Josef Oskera) [2139487] - skbuff: Switch structure bounds to struct_group() (Josef Oskera) [2139487] - RDMA/cxgb4: fix accept failure due to increased cpl_t5_pass_accept_rpl size (Josef Oskera) [2139487] - intel_th: msu: Use memset_startat() for clearing hw header (Josef Oskera) [2139487] - dm integrity: Use struct_group() to zero struct journal_sector (Josef Oskera) [2139487] - iw_cxgb4: Use memset_startat() for cpl_t5_pass_accept_rpl (Josef Oskera) [2139487] - scsi: lpfc: Use struct_group() to initialize struct lpfc_cgn_info (Josef Oskera) [2139487] - netfilter: conntrack: Use memset_startat() to zero struct nf_conn (Josef Oskera) [2139487] - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning (Josef Oskera) [2139487] - thermal: int340x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - net/af_iucv: Use struct_group() to zero struct iucv_sock region (Josef Oskera) [2139487] - ipv6: Use memset_after() to zero rt6_info (Josef Oskera) [2139487] - bnx2x: Use struct_group() for memcpy() region (Josef Oskera) [2139487] - tracing: Use memset_startat() to zero struct trace_iterator (Josef Oskera) [2139487] - xfrm: Use memset_after() to clear padding (Josef Oskera) [2139487] - HID: roccat: Use struct_group() to zero kone_mouse_event (Josef Oskera) [2139487] - scsi: ibmvscsi: Avoid multi-field memset() overflow by aiming at srp (Josef Oskera) [2139487] - ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs() (Josef Oskera) [2139487] - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() (Josef Oskera) [2139487] - s390/zcrypt: Switch to flexible array member (Josef Oskera) [2139487] - s390/speculation: Use statically initialized const for instructions (Josef Oskera) [2139487] - cifs: avoid extra calls in posix_info_parse (Josef Oskera) [2139487] - x86/entry: Fixup bad_iret vs noinstr (Josef Oskera) [2139487] - x86/traps: Mark fixup_bad_iret() noinstr (Josef Oskera) [2139487] - x86/doublefault: Remove memmove() call (Josef Oskera) [2139487] - tracing: Initialize iter->seq after zeroing in tracing_read_pipe() (Josef Oskera) [2139487] - tracing: Silence GCC 9 array bounds warning (Josef Oskera) [2139487] - fortify: Fix __compiletime_strlen() under UBSAN_BOUNDS_LOCAL (Josef Oskera) [2139487] - fortify: Provide a memcpy trap door for sharp corners (Josef Oskera) [2139487] - fortify: Make pointer arguments const (Josef Oskera) [2139487] - fortify: Replace open-coded __gnu_inline attribute (Josef Oskera) [2139487] - fortify: Update compile-time tests for Clang 14 (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memset() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memmove() at compile-time (Josef Oskera) [2139487] - fortify: Detect struct member overflows in memcpy() at compile-time (Josef Oskera) [2139487] - fortify: strlen: Avoid shadowing previous locals (Josef Oskera) [2139487] - fortify: Add compile-time FORTIFY_SOURCE tests (Josef Oskera) [2139487] - fortify: Allow strlen() and strnlen() to pass compile-time known lengths (Josef Oskera) [2139487] - fortify: Prepare to improve strnlen() and strlen() warnings (Josef Oskera) [2139487] - fortify: Fix dropped strcpy() compile-time write overflow check (Josef Oskera) [2139487] - fortify: Explicitly disable Clang support (Josef Oskera) [2139487] - fortify: Move remaining fortify helpers into fortify-string.h (Josef Oskera) [2139487] - lib/string: Move helper functions out of string.c (Josef Oskera) [2139487] - lib/string.c: update match_string() doc-strings with correct behavior (Josef Oskera) [2139487] - string.h: move fortified functions definitions in a dedicated header. (Josef Oskera) [2139487] - string.h: add FORTIFY coverage for strscpy() (Josef Oskera) [2139487] - lib: string.h: detect intra-object overflow in fortified string functions (Josef Oskera) [2139487] - lib: string_helpers: provide kfree_strarray() (Josef Oskera) [2139487] - lib/string.c: implement stpcpy (Josef Oskera) [2139487] - kernel-doc: core-api: include string.h into core-api (Josef Oskera) [2139487] - docs/core-api: move *{str,mem}dup* to "String Manipulation" (Josef Oskera) [2139487] - selftests/tc-testing: add show class case for red qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for prio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for mq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add show class case for ingress qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for qfq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for netem qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for multiq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for mqprio qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for htb qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for hfsc qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for fq_codel qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for dsmark qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for drr qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbs qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cbq qdisc (Ivan Vecera) [2172130] - selftests/tc-testing: add selftests for cake qdisc (Ivan Vecera) [2172130] - net/sched: use tc_qdisc_stats_dump() in qdisc (Ivan Vecera) [2172130] - net/sched: sch_api: add helper for tc qdisc walker stats dump (Ivan Vecera) [2172130] - hwrng: core - use per-rng quality value instead of global setting (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - start and stop in-kernel rngd in separate function (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - do not bother to order list of devices by quality (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - credit entropy for low quality sources of randomness (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - break out of hwrng_fillfn if current rng is not trusted (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - only set cur_rng_set_by_user if it is working (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - use rng_fillbuf in add_early_randomness() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - read() callback must be called for size of 32 or more bytes (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - explicit ordering of initcalls (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Use DEVICE_ATTR_ macro (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable err (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - convert sysfs sprintf/snprintf family to sysfs_emit (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - remove redundant initialization of variable ret (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - Fix use-after-free warning in hwrng_register() (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - move add_early_randomness() out of rng_mutex (Jose Ignacio Tornos Martinez) [2172884] - hwrng: core - document the quality field (Jose Ignacio Tornos Martinez) [2172884] - netfilter: nf_conntrack: allow early drop of offloaded UDP conns (Florian Westphal) [2183080] - net/sched: act_ct: offload UDP NEW connections (Florian Westphal) [2183080] - net/sched: act_ct: set ctinfo in meta action depending on ct state (Florian Westphal) [2183080] - netfilter: flowtable: cache info of last offload (Florian Westphal) [2183080] - netfilter: flowtable: allow unidirectional rules (Florian Westphal) [2183080] - netfilter: flowtable: fixup UDP timeout depending on ct state (Florian Westphal) [2183080] - ptp_clock: Let the ADJ_OFFSET interface respect the ADJ_NANO flag for PHC devices. (Íñigo Huguet) [2180896] - ptp: Add adjust_phase to ptp_clock_caps capability. (Íñigo Huguet) [2180896] - ptp: Add adjphase function to support phase offset control. (Íñigo Huguet) [2180896] - kernfs: dont take d_lock on revalidate (Ian Kent) [2126350] - kernfs: dont take i_lock on inode attr read (Ian Kent) [2126350] - kernfs: remove redundant kernfs_rwsem declaration. (Ian Kent) [2126350] - kernfs: fix potential NULL dereference in __kernfs_remove (Ian Kent) [2126350] - kernfs: fix NULL dereferencing in kernfs_remove (Ian Kent) [2126350] - kernfs: prevent early freeing of root node (Ian Kent) [2126350] - kernfs: switch global kernfs_rwsem lock to per-fs lock (Ian Kent) [2126350] - workqueue: Fold rebind_worker() within rebind_workers() (Valentin Schneider) [2088578] - workqueue: Unbind kworkers before sending them to exit() (Valentin Schneider) [2088578] - workqueue: Don't hold any lock while rcuwait'ing for !POOL_MANAGER_ACTIVE (Valentin Schneider) [2088578] - workqueue: Convert the idle_timer to a timer + work_struct (Valentin Schneider) [2088578] - workqueue: Factorize unbind/rebind_workers() logic (Valentin Schneider) [2088578] - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex (Valentin Schneider) [2088578] - workqueue: make sysfs of unbound kworker cpumask more clever (Valentin Schneider) [2088578] - fuse: add feature flag for expire-only (Pavel Reichl) [2109496] - fuse: add "expire only" mode to FUSE_NOTIFY_INVAL_ENTRY (Pavel Reichl) [2109496] - fuse: extend init flags (Pavel Reichl) [2109496] - wifi: iwlwifi: mvm: protect TXQ list manipulation (Jose Ignacio Tornos Martinez) [2152168] - wifi: iwlwifi: mvm: fix mvmtxq->stopped handling (Jose Ignacio Tornos Martinez) [2152168] - thunderbolt: Explicitly enable lane adapter hotplug events at startup (Desnes Nunes) [2130062] - x86/tsc: Add option to force frequency recalibration with HW timer (Prarit Bhargava) [2100597] - ovl: fix use after free in struct ovl_aio_req (Miklos Szeredi) [2176160] {CVE-2023-1252}- [rt] build kernel-rt-4.18.0-486.rt7.275.el8 [2180997] - mm/memremap: fix missing call to untrack_pfn() in pagemap_range() (Nico Pache) [2168370] - arm64: mm: correct the inside linear map range during hotplug check (Nico Pache) [2168370] - s390/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - arm64/mm: define arch_get_mappable_range() (Nico Pache) [2168370] - mm/memory_hotplug: prevalidate the address range being added with platform (Nico Pache) [2168370] - s390/extmem: return correct segment type in __segment_load() (Nico Pache) [2168370] - s390/vmem: get rid of memory segment list (Nico Pache) [2168370] - arm64/mm: Validate hotplug range before creating linear mapping (Nico Pache) [2168370] - mm/truncate.c: make __invalidate_mapping_pages() static (Nico Pache) [2168370] - powerpc/mm: fix "section_base" set but not used (Nico Pache) [2168370] - powerpc: Avoid link stack corruption in misc asm functions (Nico Pache) [2168370] - powerpc/booke: Avoid link stack corruption in several places (Nico Pache) [2168370] - powerpc/mm: Fix lockup on kernel exec fault (Nico Pache) [2168370] - x86: fix seq_file iteration for pat/memtype.c (Nico Pache) [2168370] - powerpc/book3s64/hash: Add cond_resched to avoid soft lockup warning (Nico Pache) [2168370] - powerpc/nvdimm: Update vmemmap_populated to check sub-section range (Nico Pache) [2168370] - powerpc/pseries: Fix cpu_hotplug_lock acquisition in resize_hpt() (Nico Pache) [2168370] - x86/mm: Sync also unmappings in vmalloc_sync_all() (Nico Pache) [2168370] - Fix page corruption caused by racy check in __free_pages (Nico Pache) [2168370] - mm/gup: fix gup_pud_range() for dax (Nico Pache) [2168370] - memcg: Fix possible use-after-free in memcg_write_event_control() (Nico Pache) [2168370] - mm/huge_memory: use pfn_to_online_page() in split_huge_pages_all() (Nico Pache) [2168370] - mm: fix madivse_pageout mishandling on non-LRU page (Nico Pache) [2168370] - mm/page_alloc: fix race condition between build_all_zonelists and page allocation (Nico Pache) [2168370] - mm/slub: fix to return errno if kmalloc() fails (Nico Pache) [2168370] - writeback: avoid use-after-free after removing device (Nico Pache) [2168370] - x86/mm: Use proper mask when setting PUD mapping (Nico Pache) [2168370] - mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region (Nico Pache) [2168370] - mm/hmm: fault non-owner device private entries (Nico Pache) [2168370] - mm: split huge PUD on wp_huge_pud fallback (Nico Pache) [2168370] - mm/page_owner: use strscpy() instead of strlcpy() (Nico Pache) [2168370] - mm/vmscan: take min_slab_pages into account when try to call shrink_node (Nico Pache) [2168370] - x86: Fix return value of __setup handlers (Nico Pache) [2168370] - mm: fix unexpected zeroed page mapping with zram swap (Nico Pache) [2168370] - mm, page_alloc: fix build_zonerefs_node() (Nico Pache) [2168370] - mm/mempolicy: fix mpol_new leak in shared_policy_replace (Nico Pache) [2168370] - mm/slub: remove forced_order parameter in calculate_sizes (Nico Pache) [2168370] - mm/usercopy: return 1 from hardened_usercopy __setup() handler (Nico Pache) [2168370] - mm/thp: ClearPageDoubleMap in first page_add_file_rmap() (Nico Pache) [2168370] - mm/thp: refix __split_huge_pmd_locked() for migration PMD (Nico Pache) [2168370] - mempolicy: mbind_range() set_policy() after vma_merge() (Nico Pache) [2168370] - mm/pages_alloc.c: don't create ZONE_MOVABLE beyond the end of a node (Nico Pache) [2168370] - mm: userfaultfd: fix missing cache flush in mcopy_atomic_pte() and __mcopy_atomic() (Nico Pache) [2168370] - mm: hugetlb: fix missing cache flush in copy_huge_page_from_user() (Nico Pache) [2168370] - mm: thp: fix wrong cache flush in remove_migration_pmd() (Nico Pache) [2168370] - mm: fix missing cache flush for all tail pages of compound page (Nico Pache) [2168370] - tmpfs: fix regressions from wider use of ZERO_PAGE (Nico Pache) [2168370] - tmpfs: do not allocate pages on read (Nico Pache) [2168370] - shmem: mapping_set_exiting() to help mapped resilience (Nico Pache) [2168370] - mm/hmm.c: allow VM_MIXEDMAP to work with hmm_range_fault (Nico Pache) [2168370] - shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode (Nico Pache) [2168370] - mm, slub: use prefetchw instead of prefetch (Nico Pache) [2168370] - arm64: mm: update max_pfn after memory hotplug (Nico Pache) [2168370] - mm, vmscan: guarantee drop_slab_node() termination (Nico Pache) [2168370] - fs, mm: fix race in unlinking swapfile (Nico Pache) [2168370] - fs: inode: count invalidated shadow pages in pginodesteal (Nico Pache) [2168370] - mm, fadvise: improve the expensive remote LRU cache draining after FADV_DONTNEED (Nico Pache) [2168370] - mm/filemap.c: rewrite mapping_needs_writeback in less fancy manner (Nico Pache) [2168370] - fs: drop_caches: fix skipping over shadow cache inodes (Nico Pache) [2168370] - mm: introduce and use mapping_empty() (Nico Pache) [2168370] - mm: remove irqsave/restore locking from contexts with irqs enabled (Nico Pache) [2168370] - mm: zswap: clean up confusing comment (Nico Pache) [2168370] - mm/memory_hotplug: use helper function zone_end_pfn() to get end_pfn (Nico Pache) [2168370] - mm: vmstat: add some comments on internal storage of byte items (Nico Pache) [2168370] - mm: vmstat: fix NOHZ wakeups for node stat changes (Nico Pache) [2168370] - mm/mmap.c: replace do_brk with do_brk_flags in comment of insert_vm_struct() (Nico Pache) [2168370] - mm/mmap.c: use helper function allow_write_access() in __remove_shared_vm_struct() (Nico Pache) [2168370] - mm: use helper function mapping_allow_writable() (Nico Pache) [2168370] - mm: memcontrol: reword obsolete comment of mem_cgroup_unmark_under_oom() (Nico Pache) [2168370] - mm/page_counter: correct the obsolete func name in the comment of page_counter_try_charge() (Nico Pache) [2168370] - mm: memcontrol: correct the comment of mem_cgroup_iter() (Nico Pache) [2168370] - x86/mm: use max memory block size on bare metal (Nico Pache) [2168370] - mm/util.c: remove the VM_WARN_ONCE for vm_committed_as underflow check (Nico Pache) [2168370] - include/linux/swapops.h: correct guards for non_swap_entry() (Nico Pache) [2168370] - mm: set vm_next and vm_prev to NULL in vm_area_dup() (Nico Pache) [2168370] - mm: don't prepare anon_vma if vma has VM_WIPEONFORK (Nico Pache) [2168370] - page-flags: fix a crash at SetPageError(THP_SWAP) (Nico Pache) [2168370] - mm/rmap.c: fix outdated comment in page_get_anon_vma() (Nico Pache) [2168370] - mm/mmap.c: extract __vma_unlink_list() as counterpart for __vma_link_list() (Nico Pache) [2168370] - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup() (Nico Pache) [2168370] - x86/mm: Kill stray kernel fault handling comment (Nico Pache) [2168370] - arm64/numa: Unify common error path in numa_init() (Nico Pache) [2168370] - tools/power/x86/intel-speed-select: v1.14 release (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Adjust uncore max/min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix display of uncore min frequency (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add Emerald Rapid quirk (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: turbo-freq auto mode with SMT off (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: cpufreq reads on offline CPUs (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Use null-terminated string (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove duplicate dup() (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Handle open() failure case (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused non_block flag (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove wrong check in set_isst_id() (Prarit Bhargava) [2154078] - platform/x86: ISST: Fix typo in comments (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Release v1.13 (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Optimize CPU initialization (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Utilize cpu_map to get physical id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused struct clos_config fields (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Enforce isst_id value (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Do not export get_physical_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce is_cpu_in_power_domain helper (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Cleanup get_physical_id usage (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Convert more function to use isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Add pkg and die in isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Introduce struct isst_id (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unused core_mask array (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove dead code (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix cpu count for TDP level display (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Remove unneeded semicolon (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix off by one check (Prarit Bhargava) [2154078] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Fix warning for perf_cap.cpu (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: Display error on turbo mode disabled (Prarit Bhargava) [2154078] - tools/power/x86/intel-speed-select: fix build failure when using -Wl,--as-needed (Prarit Bhargava) [2154078] - KVM: x86: Propagate the AMD Automatic IBRS feature to the guest (Waiman Long) [1989283] - x86/cpu: Support AMD Automatic IBRS (Waiman Long) [1989283] - x86/cpu, kvm: Add the SMM_CTL MSR not present feature (Waiman Long) [1989283] - x86/cpu, kvm: Add the Null Selector Clears Base feature (Waiman Long) [1989283] - x86/cpu, kvm: Move X86_FEATURE_LFENCE_RDTSC to its native leaf (Waiman Long) [1989283] - x86/cpu, kvm: Add the NO_NESTED_DATA_BP feature (Waiman Long) [1989283] - KVM: x86: Move open-coded CPUID leaf 0x80000021 EAX bit propagation code (Waiman Long) [1989283] - x86/cpu, kvm: Add support for CPUID_80000021_EAX (Waiman Long) [1989283] - x86/bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from S3 (Waiman Long) [1989283] - KVM: x86: Advertise that the SMM_CTL MSR is not supported (Waiman Long) [1989283] - Documentation/hw-vuln: Update spectre doc (Waiman Long) [1989283] - nvme-tcp: fence TCP socket on receive error (John Meneghini) [2116939] - nvme-multipath: fix possible hang in live ns resize with ANA access (John Meneghini) [2116939] - nvme-tcp: fix possible hang caused during ctrl deletion (John Meneghini) [2116939] - nvme-tcp: fix regression that causes sporadic requests to time out (John Meneghini) [2116939] - nvme-tcp: fix UAF when detecting digest errors (John Meneghini) [2116939] - nvme-tcp: check if the queue is allocated before stopping it (John Meneghini) [2116939] - nvme-tcp: always fail a request when sending it failed (John Meneghini) [2116939] - nvme: fix regression when disconnect a recovering ctrl (John Meneghini) [2116939] - nvme-multipath: use vmalloc for ANA log buffer (John Meneghini) [2116939] - bfq: fix waker_bfqq inconsistency crash (Ming Lei) [2177565] - blktrace: Fix output non-blktrace event when blk_classic option enabled (Ming Lei) [2177565] - blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init() (Ming Lei) [2177565] - blk-wbt: call rq_qos_add() after wb_normal is initialized (Ming Lei) [2177565] - block: sync mixed merged request's failfast with 1st bio's (Ming Lei) [2177565] - blk-mq: Fix potential io hung for shared sbitmap per tagset (Ming Lei) [2177565] - block: bio-integrity: Copy flags when bio_integrity_payload is cloned (Ming Lei) [2177565] - dim: initialize all struct fields (Audra Mitchell) [2172125] - XArray: Update the LRU list in xas_split() (Audra Mitchell) [2172125] - lib: bitmap: fix many kernel-doc warnings (Audra Mitchell) [2172125] - vsprintf: Fix %pK with kptr_restrict == 0 (Audra Mitchell) [2172125] - lib: uninline simple_strntoull() as well (Audra Mitchell) [2172125] - lib: dimlib: fix help text typos (Audra Mitchell) [2172125] - locks: fix TOCTOU race when granting write lease (Waiman Long) [2152051] - locks: eliminate false positive conflicts for write lease (Waiman Long) [2152051] - locks: Use inode_is_open_for_write (Waiman Long) [2152051] - fs/locks: remove unnecessary white space. (Waiman Long) [2152051] - fs/locks: use properly initialized file_lock when unlocking. (Waiman Long) [2152051] - redhat/configs: Enable CONFIG_PINCTRL_METEORLAKE in RHEL (Prarit Bhargava) [2156845] - pinctrl: intel: Add Intel Meteor Lake pin controller support (Prarit Bhargava) [2156845] - md: fix regression for null-ptr-deference in __md_stop() (Nigel Croxon) [2162231] - md: avoid signed overflow in slot_store() (Nigel Croxon) [2162231] - md: Free resources in __md_stop (Nigel Croxon) [2162231] - md: account io_acct_set usage with active_io (Nigel Croxon) [2162231] - md: use MD_RESYNC_* whenever possible (Nigel Croxon) [2162231] - md: Free writes_pending in md_stop (Nigel Croxon) [2162231] - md: Change active_io to percpu (Nigel Croxon) [2162231] - md: Factor out is_md_suspended helper (Nigel Croxon) [2162231] - md: don't update recovery_cp when curr_resync is ACTIVE (Nigel Croxon) [2162231] - md: fold unbind_rdev_from_array into md_kick_rdev_from_array (Nigel Croxon) [2162231] - md: mark md_kick_rdev_from_array static (Nigel Croxon) [2162231] - mm/kmemleak: fix UAF bug in kmemleak_scan() (Waiman Long) [2172763] - mm/kmemleak: simplify kmemleak_cond_resched() usage (Waiman Long) [2172763] - mm/kmemleak.c: fix a comment (Waiman Long) [2172763] - ptp: introduce a phase offset in the periodic output request (Íñigo Huguet) [2179072] - ptp: add ability to configure duty cycle for periodic output (Íñigo Huguet) [2179072] - platform/x86: intel/pmc/core: Add Meteor Lake mobile support (Prarit Bhargava) [2153968] - platform/x86: intel/pmc/core: Add Meteor Lake support to pmc core driver (Prarit Bhargava) [2153968] - sched/core: Fix arch_scale_freq_tick() on tickless systems (Phil Auld) [2184083] - qede: avoid uninitialized entries in coal_entry array (Michal Schmidt) [2160054] - qede: fix interrupt coalescing configuration (Jonathan Toppins) [2160054] - powerpc/64s: Unmerge EX_LR and EX_DAR (Mamatha Inamdar) [2134271] - powercap: intel_rapl: add support for Meteor Lake (Prarit Bhargava) [2153964] - dm: fix __send_duplicate_bios() to always allow for splitting IO (Benjamin Marzinski) [2184429] - dm: fix improper splitting for abnormal bios (Benjamin Marzinski) [2184429] - ovl: fail on invalid uid/gid mapping at copy up (Miklos Szeredi) [2165351] {CVE-2023-0386}- [rt] build kernel-rt-4.18.0-485.rt7.274.el8 [2180997] - timers: Provide timer_shutdown[_sync]() (Ivan Vecera) [2174474] - timers: Add shutdown mechanism to the internal functions (Ivan Vecera) [2174474] - timers: Split [try_to_]del_timer[_sync]() to prepare for shutdown mode (Ivan Vecera) [2174474] - timers: Silently ignore timers with a NULL function (Ivan Vecera) [2174474] - timers: Rename del_timer() to timer_delete() (Ivan Vecera) [2174474] - timers: Rename del_timer_sync() to timer_delete_sync() (Ivan Vecera) [2174474] - timers: Use del_timer_sync() even on UP (Ivan Vecera) [2174474] - timers: Update kernel-doc for various functions (Ivan Vecera) [2174474] - timers: Replace BUG_ON()s (Ivan Vecera) [2174474] - timers: Get rid of del_singleshot_timer_sync() (Ivan Vecera) [2174474] - clocksource/drivers/sp804: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - clocksource/drivers/arm_arch_timer: Do not use timer namespace for timer_shutdown() function (Ivan Vecera) [2174474] - misc/sgi-xp: Replace in_interrupt() usage (Ivan Vecera) [2174474] - timers: Don't block on ->expiry_lock for TIMER_IRQSAFE timers (Ivan Vecera) [2174474] - hvcs: Synchronize hotplug remove with port free (Mamatha Inamdar) [2167962] - hvcs: Use vhangup in hotplug remove (Mamatha Inamdar) [2167962] - hvcs: Get reference to tty in remove (Mamatha Inamdar) [2167962] - hvcs: Use driver groups to manage driver attributes (Mamatha Inamdar) [2167962] - hvcs: Use dev_groups to manage hvcs device attributes (Mamatha Inamdar) [2167962] - hvcs: Fix hvcs port reference counting (Mamatha Inamdar) [2167962] - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup() (Mamatha Inamdar) [2167962] - docs/memory-barriers.txt/kokr: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - docs/memory-barriers.txt: Add a missed closing parenthesis (Ivan Vecera) [2179061] - asm-generic: Add missing brackets for io_stop_wc macro (Ivan Vecera) [2179061] - asm-generic: introduce io_stop_wc() and add implementation for ARM64 (Ivan Vecera) [2179061] - ipv4: Fix incorrect table ID in IOCTL path (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when table ID 0 is used (Guillaume Nault) [2176792] - ipv4: Fix incorrect route flushing when source address is deleted (Guillaume Nault) [2176792] - selftests: Add source route tests to fib_tests (Guillaume Nault) [2176792] - mm/rmap: split page_dup_rmap() into page_dup_file_rmap() and page_try_dup_anon_rmap() (David Hildenbrand) [2179164] - mm/memory: slightly simplify copy_present_pte() (David Hildenbrand) [2179164] - mm/hugetlb: take src_mm->write_protect_seq in copy_hugetlb_page_range() (David Hildenbrand) [2179164] - mm: /proc/sys/vm/stat_refresh stop checking monotonic numa stats (Waiman Long) [2178001] - mm: /proc/sys/vm/stat_refresh skip checking known negative stats (Waiman Long) [2178001] - mm: no more EINVAL from /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - mm: restore node stat checking in /proc/sys/vm/stat_refresh (Waiman Long) [2178001] - sfc: ef10: don't overwrite offload features at NIC reset (Íñigo Huguet) [2154500] - sfc: correctly advertise tunneled IPv6 segmentation (Íñigo Huguet) [2154500] - igb: conditionalize I2C bit banging on external thermal sensor support (Corinna Vinschen) [2130727] - platform/x86: ISST: PUNIT device mapping with Sub-NUMA clustering (Prarit Bhargava) [2139963] - x86/nmi: Make register_nmi_handler() more robust (Ani Sinha) [2037005] - net: tls: fix possible race condition between do_tls_getsockopt_conf() and do_tls_setsockopt_conf() (Sabrina Dubroca) [2179825] {CVE-2023-28466} - cpufreq: intel_pstate: hybrid: Use known scaling factor for P-cores (Prarit Bhargava) [2179183] - target: iscsi: use GFP_NOIO with loopback connections (Maurizio Lombardi) [2156546] - core_pattern: add CPU specifier (Oleksandr Natalenko) [1968108] - Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM (David Marlin) [2148405] {CVE-2022-42896} - ipv6: prevent router_solicitations for team port (Xin Long) [2141600] - ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL (Xin Long) [2141600] - Bluetooth: L2CAP: Fix attempting to access uninitialized memory (David Marlin) [2148409] {CVE-2022-42895} - redhat/scripts/create-tarball.sh: Use nproc instead of rpm macros (Prarit Bhargava) - Revert "Switch to z-stream for 8.8 for CKI pipelines" (Denys Vlasenko)- [rt] build kernel-rt-4.18.0-484.rt7.273.el8 [2180997] - ethernet: Remove vf rate limit check for drivers (Izabela Bakollari) [2172124] - rtnetlink: verify rate parameters for calls to ndo_set_vf_rate (Izabela Bakollari) [2172124] - sfc: Change VF mac via PF as first preference if available. (Íñigo Huguet) [2117449] - Fix genlog.py to ensure that comments retain "%" characters. (Eder Zulian) [RHEL-340] - redhat: fix duplicate jira issues in the resolves line (Eder Zulian) [RHEL-340] - redhat: add support for Jira issues in changelog (Eder Zulian) [RHEL-340] - redhat/configs: Put CONFIG_SFC_* to a proper location (Vladis Dronov) - redhat/configs: Put CONFIG_SEV_GUEST to a proper location (Vladis Dronov) - Reinstate "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2181343] - iavf: fix hang on reboot with ice (Stefan Assmann) [2181811] - iavf: Fix race condition between iavf_shutdown and iavf_remove (Stefan Assmann) [2181811] - net/ulp: use consistent error code when blocking ULP (Sabrina Dubroca) [2176962] {CVE-2023-0461} - net/ulp: prevent ULP without clone op from entering the LISTEN status (Sabrina Dubroca) [2176962] {CVE-2023-0461} - lockd: lockd server-side shouldn't set fl_ops (Jeffrey Layton) [2179329] - NFS: Correct timing for assigning access cache timestamp (Benjamin Coddington) [2180851] - Switch to z-stream for 8.8 for CKI pipelines (Michael Hofmann) - KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS (Jon Maloy) [2160030] {CVE-2022-2196}- [rt] build kernel-rt-4.18.0-483.rt7.272.el8 [2180997] - tracing/hwlat: Replace sched_setaffinity with set_cpus_allowed_ptr (Jerome Marchand) [2174935] - drivers: hv, hyperv_fb: Untangle and refactor Hyper-V panic notifiers (Mohammed Gamal) [2172513] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172513] - HID: hyperv: remove unused struct synthhid_msg (Mohammed Gamal) [2172513] - HID: hyperv: Replace one-element array with flexible-array member (Mohammed Gamal) [2172513] - clocksource: hyper-v: Add TSC page support for root partition (Mohammed Gamal) [2172443] - clocksource: hyper-v: Use TSC PFN getter to map vvar page (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce TSC PFN getter (Mohammed Gamal) [2172443] - clocksource: hyper-v: Introduce a pointer to TSC page (Mohammed Gamal) [2172443] - HV: hv_balloon: fix memory leak with using debugfs_lookup() (Mohammed Gamal) [2172435] - debugfs: add debugfs_lookup_and_remove() (Mohammed Gamal) [2172435] - Drivers: hv: Enable vmbus driver for nested root partition (Mohammed Gamal) [2172435] - video: hyperv_fb: Avoid taking busy spinlock on panic path (Mohammed Gamal) [2172435]- [rt] build kernel-rt-4.18.0-482.rt7.271.el8 [2180997] - sched/deadline: Add more reschedule cases to prio_changed_dl() (Valentin Schneider) [2120570] - perf/x86/uncore: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/cstate: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86/msr: Add new Raptor Lake S support (Michael Petlan) [2120365] - perf/x86: Add new Raptor Lake S support (Michael Petlan) [2120365] - net: sched: atm: dont intepret cls results when asked to drop (Davide Caratti) [2168337] {CVE-2023-23455} - nvdimm: Allow overwrite in the presence of disabled dimms (Aristeu Rozanski) [2154070] - Revert "GFS2: free disk inode which is deleted by remote node -V2" (Bob Peterson) [2109600] - gfs2: Evict inodes cooperatively (Andreas Gruenbacher) [2109600] - gfs2: Flush delete work before shrinking inode cache (Andreas Gruenbacher) [2109600] - gfs2: Add SDF_DEACTIVATING super block flag (Bob Peterson) [2109600] - gfs2: check gl_object in rgrp glops (Bob Peterson) [2109600] - gfs2: Split the two kinds of glock "delete" work (Andreas Gruenbacher) [2109600] - gfs2: Move delete workqueue into super block (Andreas Gruenbacher) [2109600] - gfs2: Use container_of() for gfs2_glock(aspace) (Andreas Gruenbacher) [2109600] - gfs2: Get rid of GLF_PENDING_DELETE flag (Andreas Gruenbacher) [2109600] - gfs2: Make glock lru list scanning safer (Andreas Gruenbacher) [2109600] - gfs2: Fix use-after-free in gfs2_glock_shrink_scan (Andreas Gruenbacher) [2109600] - gfs2: Clean up gfs2_scan_glock_lru (Andreas Gruenbacher) [2109600] - gfs2: gl_object races fix (Andreas Gruenbacher) [2109600] - iomap/gfs2: Unlock and put folio in page_done handler (Andreas Gruenbacher) [2109600] - iomap: Add __iomap_put_folio helper (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (2) (Andreas Gruenbacher) [2109600] - gfs2: Remove support for glock holder auto-demotion (Andreas Gruenbacher) [2109600] - gfs2: Minor gfs2_try_evict cleanup (Andreas Gruenbacher) [2109600] - gfs2: Partially revert gfs2_inode_lookup change (Andreas Gruenbacher) [2109600] - gfs2: Add gfs2_inode_lookup comment (Andreas Gruenbacher) [2109600] - gfs2: Uninline and improve glock_{set,clear}_object (Andreas Gruenbacher) [2109600] - gfs2: Simply dequeue iopen glock in gfs2_evict_inode (Andreas Gruenbacher) [2109600] - gfs2: Clean up after gfs2_create_inode rework (Andreas Gruenbacher) [2109600] - gfs2: Avoid dequeuing GL_ASYNC glock holders twice (Andreas Gruenbacher) [2109600] - gfs2: Handle -EBUSY result of insert_inode_locked4 (Andreas Gruenbacher) [2109600] - gfs2: Fix and clean up create / evict interaction (Andreas Gruenbacher) [2109600] - gfs2: Clean up initialization of "ip" in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Get rid of ghs[] in gfs2_create_inode (Andreas Gruenbacher) [2109600] - gfs2: Dequeue waiters when withdrawn (Bob Peterson) [2109600] - gfs2: Prevent double iput for journal on error (Bob Peterson) [2109600] - Revert "gfs2: stop using generic_writepages in gfs2_ail1_start_one" (Andreas Gruenbacher) [2109600] - gfs2: remove ->writepage (Andreas Gruenbacher) [2109600] - gfs2: stop using generic_writepages in gfs2_ail1_start_one (Andreas Gruenbacher) [2109600] - gfs2: List traversal in do_promote is safe (Andreas Gruenbacher) [2109600] - gfs2: do_promote glock holder stealing fix (Bob Peterson) [2109600] - gfs2: Use better variable name (Andreas Gruenbacher) [2109600] - gfs2: Make go_instantiate take a glock (Andreas Gruenbacher) [2109600] - gfs2: Add new go_held glock operation (Andreas Gruenbacher) [2109600] - gfs2: Revert 'Fix "truncate in progress" hang' (Andreas Gruenbacher) [2109600] - gfs2: Instantiate glocks ouside of glock state engine (Andreas Gruenbacher) [2109600] - gfs2: Fix up gfs2_glock_async_wait (Andreas Gruenbacher) [2109600] - gfs2: Add GL_NOPID flag for process-independent glock holders (Andreas Gruenbacher) [2109600] - gfs2: dump inode object for iopen glocks (Bob Peterson) [2109600] - gfs2: convert to use DEFINE_SEQ_ATTRIBUTE macro (Andreas Gruenbacher) [2109600] - gfs2: Use TRY lock in gfs2_inode_lookup for UNLINKED inodes (Bob Peterson) [2109600] - Updated dist tag to el8_8 (Lucas Zampieri) - Revert "net/mlx5: Don't perform lookup after already known sec_path" (Amir Tzin) [2176349] - KVM: x86: do not report a vCPU as preempted outside instruction boundaries (Jon Maloy) [2124801] {CVE-2022-39189} - Drivers: vmbus: Check for channel allocation before looking up relids (Mohammed Gamal) [2178622] - drm/nouveau/fb/tu102-: fix register used to determine scrub status (Karol Herbst) [2168648] - drm/nouveau/devinit/tu102-: wait for GFW_BOOT_PROGRESS == COMPLETED (Karol Herbst) [2168648] - fs/proc: task_mmu.c: don't read mapcount for migration entry (Jay Shin) [2174623] - perf/core: Fix cgroup event list management (Michael Petlan) [2162525]- [rt] build kernel-rt-4.18.0-481.rt7.270.el8 [2180997] - redhat: include all certs (Red Hat and CentOS) in the srpm (Denys Vlasenko) [2179095] - redhat: do not require grub2 on s390x (Denys Vlasenko) [2179095] - thermal: int340x: Add Meteor Lake PCI device ID (Prarit Bhargava) [2156822] - i2c: i801: Add support for Intel Meteor Lake-P (Prarit Bhargava) [2156841]- [rt] build kernel-rt-4.18.0-480.rt7.269.el8 [2180997] - redhat: fix the signing failure on ppc64el on centos (Denys Vlasenko) [2179095]- [rt] build kernel-rt-4.18.0-479.rt7.268.el8 [2180997] - redhat: add centos signing certs (Denys Vlasenko) - redhat: fix "make rh-brew" not choosing _scratch_ build (Denys Vlasenko) - mfd: intel-lpss: Add Intel Meteor Lake-P PCI IDs (Prarit Bhargava) [2156843] - x86/cpu: Add CPU model numbers for Meteor Lake (Prarit Bhargava) [2153936] - redhat: require grub2 >= 2.02-99 (Denys Vlasenko) [2179095] - redhat: delete unused script and file (Denys Vlasenko) [2179095] - redhat: drop certificates that were deprecated after GRUB's BootHole flaw (Denys Vlasenko) [2179095] - redhat: align file names with names of signing keys for ppc and s390 (Denys Vlasenko) [2179095] - net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878] - ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- [rt] build kernel-rt-4.18.0-478.rt7.267.el8 [2180997] - net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348]- net/tunnel: wait until all sk_user_data reader finish before releasing the sock (Hangbin Liu) [2176344] - powerpc/pseries: unregister VPA when hot unplugging a CPU (Mamatha Inamdar) [2143007] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2172474] - net: mana: Fix return type of mana_start_xmit() (Mohammed Gamal) [2172474] - net: mana: Define data structures for protection domain and memory registration (Mohammed Gamal) [2172474] - net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES (Mohammed Gamal) [2172474] - net: mana: Define max values for SGL entries (Mohammed Gamal) [2172474] - net: mana: Move header files to a common location (Mohammed Gamal) [2172474] - net: mana: Record port number in netdev (Mohammed Gamal) [2172474] - net: mana: Export Work Queue functions for use by RDMA driver (Mohammed Gamal) [2172474] - net: mana: Set the DMA device max segment size (Mohammed Gamal) [2172474] - net: mana: Handle vport sharing between devices (Mohammed Gamal) [2172474] - net: mana: Record the physical address for doorbell page region (Mohammed Gamal) [2172474] - net: mana: Add support for auxiliary device (Mohammed Gamal) [2172474] - hv_netvsc: Check status in SEND_RNDIS_PKT completion message (Mohammed Gamal) [2172438] - hv_netvsc: Allocate memory in netvsc_dma_map() with GFP_ATOMIC (Mohammed Gamal) [2172438] - hv_netvsc: Fix missed pagebuf entries in netvsc_dma_map/unmap() (Mohammed Gamal) [2172438] - Drivers: hv: Make remove callback of hyperv driver void returned (Mohammed Gamal) [2172438] - hv: fix comment typo in vmbus_channel/low_latency (Mohammed Gamal) [2172434] - x86/hyperv: Introduce HV_MAX_SPARSE_VCPU_BANKS/HV_VCPUS_PER_SPARSE_BANK constants (Mohammed Gamal) [2172434] - x86/hyperv: Fix hv_get/set_register for nested bringup (Mohammed Gamal) [2172434] - x86/hyperv: Add an interface to do nested hypercalls (Mohammed Gamal) [2172434] - Drivers: hv: Setup synic registers in case of nested root partition (Mohammed Gamal) [2172434] - x86/hyperv: Add support for detecting nested hypervisor (Mohammed Gamal) [2172434] - x86/hyperv: Add HV_EXPOSE_INVARIANT_TSC define (Mohammed Gamal) [2172434] - x86/hyperv: Expand definition of struct hv_vp_assist_page (Mohammed Gamal) [2172434] - KVM: x86: hyper-v: Expose support for extended gva ranges for flush hypercalls (Mohammed Gamal) [2172434] - x86/hyperv: Move VMCB enlightenment definitions to hyperv-tlfs.h (Mohammed Gamal) [2172434] - iommu/hyper-v: Allow hyperv irq remapping without x2apic (Mohammed Gamal) [2172434] - smp: Fix offline cpu check in flush_smp_call_function_queue() (Waiman Long) [2169471] - sched/fair: Trigger the update of blocked load on newly idle cpu (Waiman Long) [2169471] - redhat: rh-dist-git should depend on rh-srpm (Denys Vlasenko) - redhat: change kabi tarballs to use the package release (Denys Vlasenko) - redhat/Makefile: add variables used in rhel9 makefiles (Denys Vlasenko) - redhat/Makefile: Remove RHPRODUCT variable (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: expand sources from srpm (Denys Vlasenko) - redhat: remove GL_DISTGIT_USER, RHDISTGIT and unify dist-git cloning (Denys Vlasenko) - redhat/scripts/rh-dist-git.sh: Use Makefile variables (Denys Vlasenko) - redhat: fix typo and make the output more silent for dist-git sync (Denys Vlasenko) - redhat: add initial support for centos stream dist-git sync on Makefiles (Denys Vlasenko) - internal: update RHEL_MINOR for the start of RHEL-8.9 development (Denys Vlasenko) - watchdog: diag288_wdt: fix __diag288() inline assembly (Tobias Huschle) [2171361] - watchdog: diag288_wdt: do not use stack buffers for hardware data (Tobias Huschle) [2171361] - bonding: add documentation for peer_notif_delay (Ryosuke Yasuoka) [2171348] - net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878] - ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- net: mana: Fix IRQ name - add PCI and queue number (Mohammed Gamal) [2166787] - crypto: des - disallow des3 in FIPS mode (Vladis Dronov) [2175234] - self-tests: more rps self tests (Paolo Abeni) [2168878] - net: make default_rps_mask a per netns attribute (Paolo Abeni) [2168878] - self-tests: introduce self-tests for RPS default mask (Paolo Abeni) [2168878] - net: introduce default_rps_mask netns attribute (Paolo Abeni) [2168878] - net-sysctl: factor-out rpm mask manipulation helpers (Paolo Abeni) [2168878] - net-sysctl: factor out cpumask parsing helper (Paolo Abeni) [2168878] - txhash: Make rethinking txhash behavior configurable via sysctl (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in rx_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: Call dev_hold always in netdev_queue_add_kobject (Paolo Abeni) [2168878] - net-sysfs: fix netdev_queue_add_kobject() breakage (Paolo Abeni) [2168878] - net-sysfs: Fix reference count leak in rx|netdev_queue_add_kobject (Paolo Abeni) [2168878]- ice/ptp: fix the PTP worker retrying indefinitely if the link went down (Petr Oros) [2166392] - ice: reschedule ice_ptp_wait_for_offset_valid during reset (Petr Oros) [2166392] - ice: make Tx and Rx vernier offset calibration independent (Petr Oros) [2166392] - ice: only check set bits in ice_ptp_flush_tx_tracker (Petr Oros) [2166392] - ice: handle flushing stale Tx timestamps in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: cleanup allocations in ice_ptp_alloc_tx_tracker (Petr Oros) [2166392] - ice: protect init and calibrating check in ice_ptp_request_ts (Petr Oros) [2166392] - ice: check Tx timestamp memory register for ready timestamps (Petr Oros) [2166392] - ice: handle discarding old Tx requests in ice_ptp_tx_tstamp (Petr Oros) [2166392] - ice: always call ice_ptp_link_change and make it void (Petr Oros) [2166392] - ice: fix misuse of "link err" with "link status" (Petr Oros) [2166392] - ice: Reset TS memory for all quads (Petr Oros) [2166392] - ice: Remove the E822 vernier "bypass" logic (Petr Oros) [2166392] - ice: Use more generic names for ice_ptp_tx fields (Petr Oros) [2166392] - ice: Merge pin initialization of E810 and E810T adapters (Petr Oros) [2166392] - ice: Check if reset in progress while waiting for offsets (Petr Oros) [2166392] - NFS: Judge the file access cache's timestamp in rcu path (Benjamin Coddington) [2161321] - redhat: switch to z-stream for 8.8 (Lucas Zampieri)- cpufreq: intel_pstate: Add Sapphire Rapids support in no-HWP mode (Prarit Bhargava) [2170564]- igb: Initialize mailbox message for VF reset (Corinna Vinschen) [2103948] - igb: Allocate MSI-X vector when testing (Corinna Vinschen) [2103948] - igb: Proactively round up to kmalloc bucket size (Corinna Vinschen) [2103948] - igb: Do not free q_vector unless new one was allocated (Corinna Vinschen) [2103948] - ptp: introduce helpers to adjust by scaled parts per million (Corinna Vinschen) [2103948] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103948] - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103948] - igb: convert .adjfreq to .adjfine (Corinna Vinschen) [2103948] - ASoC: Intel: soc-acpi: add configuration for variant of 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add configuration for variant of 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: use common helpers for all Realtek amps (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C11 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C40 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw: Add support for SKU 0C10 product (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1316: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: Intel: sof_sdw_rt1308: add BQ params for the Dell models (Jaroslav Kysela) [2100582] - ASoC: intel: sof_sdw: add rt1318 codec support. (Jaroslav Kysela) [2100582] - ASoC: rt1318: Add RT1318 SDCA vendor-specific driver (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: update codec addr on 0C11/0C4F product (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C11 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C40 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi: add SKU 0C10 SoundWire configuration (Jaroslav Kysela) [2100582] - ASoC: Intel: soc-acpi-intel-rpl-match: add rpl_sdca_3_in_1 support (Jaroslav Kysela) [2100582]- net: ena: Update NUMA TPH hint register upon NUMA node update (Petr Oros) [2167316] - net: ena: Set default value for RX interrupt moderation (Petr Oros) [2167316] - net: ena: Fix rx_copybreak value update (Petr Oros) [2167316] - net: ena: Use bitmask to indicate packet redirection (Petr Oros) [2167316] - net: ena: Account for the number of processed bytes in XDP (Petr Oros) [2167316] - net: ena: Don't register memory info on XDP exchange (Petr Oros) [2167316] - net: ena: Fix toeplitz initial hash value (Petr Oros) [2167316] - net: ena: Fix error handling in ena_init() (Petr Oros) [2167316] - net: sched: disallow noqueue for qdisc classes (Xin Long) [2168282] {CVE-2022-47929} - net: sched: cbq: dont intepret cls results when asked to drop (Xin Long) [2168327] {CVE-2023-23454} - sctp: do not check hb_timer.expires when resetting hb_timer (Xin Long) [2133092] - arm64: Add AMPERE1 to the Spectre-BHB affected list (Mark Salter) [2140727] - net: mana: Fix accessing freed irq affinity_hint (Emanuele Giuseppe Esposito) [2168969] - net: mana: Assign interrupts to CPUs based on NUMA nodes (Emanuele Giuseppe Esposito) [2168969] - Revert "RDMA/irdma: Report the correct link speed" (Kamal Heib) [2143088] - Documentation/sysctl: document page_lock_unfairness (Nico Pache) [2165737] {CVE-2022-3623} - mm: allow a controlled amount of unfairness in the page lock (Nico Pache) [2165737] {CVE-2022-3623} - mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page (Nico Pache) [2165737] {CVE-2022-3623} - mm/migration: fix potential pte_unmap on an not mapped pte (Nico Pache) [2165737] {CVE-2022-3623} - mm/migrate.c: rework migration_entry_wait() to not take a pageref (Nico Pache) [2165737] {CVE-2022-3623} - mm: make wait_on_page_writeback() wait for multiple pending writebacks (Nico Pache) [2165737] {CVE-2022-3623} - mm: rewrite wait_on_page_bit_common() logic (Nico Pache) [2165737] {CVE-2022-3623} - mm/gup.c: use is_vm_hugetlb_page() to check whether to follow huge (Nico Pache) [2165737] {CVE-2022-3623}- perf/x86/amd: Fix crash due to race between amd_pmu_enable_all, perf NMI and throttling (Michael Petlan) [2085282] - x86/perf: Fix snapshot_branch_stack warning in VM (Michael Petlan) [2085282] - perf/x86/amd/core: Fix reloading events for SVM (Michael Petlan) [2085282 2086722] - perf/x86/amd: Run AMD BRS code only on supported hw (Michael Petlan) [2085282] - perf/x86/amd: Fix AMD BRS period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Remove unused variable 'hwc' (Michael Petlan) [2085282] - perf/ibs: Fix comment (Michael Petlan) [2085282] - perf report: Add tools/arch/x86/include/asm/amd-ibs.h (Michael Petlan) [2085282] - perf/amd/ibs: Advertise zen4_ibs_extensions as pmu capability attribute (Michael Petlan) [2085282] - perf/amd/ibs: Add support for L3 miss filtering (Michael Petlan) [2085282] - perf/amd/ibs: Use ->is_visible callback for dynamic attributes (Michael Petlan) [2085282] - perf/amd/ibs: Cascade pmu init functions' return value (Michael Petlan) [2085282] - perf/amd/ibs: Use interrupt regs ip for stack unwinding (Michael Petlan) [2085282] - perf/x86/amd/core: Add PerfMonV2 overflow handling (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Add PerfMonV2 counter control (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect available counters (Michael Petlan) [2085282 2086722] - perf/x86/amd/core: Detect PerfMonV2 support (Michael Petlan) [2085282 2086722] - x86/msr: Add PerfCntrGlobal* registers (Michael Petlan) [2085282 2086722] - x86/cpufeatures: Add PerfMonV2 feature bit (Michael Petlan) [2085282 2086722] - perf/x86: Unify format of events sysfs show (Michael Petlan) [2085282] - perf/x86/amd: Add idle hooks for branch sampling (Michael Petlan) [2085282] - perf: Enable branch record for software events (Michael Petlan) [2085282] - redhat/configs: Enable AMD Zen3 branch sampling by default (Michael Petlan) [2085282] - perf/x86/amd: Make Zen3 branch sampling opt-in (Michael Petlan) [2085282] - perf/x86/amd: Add AMD branch sampling period adjustment (Michael Petlan) [2085282] - perf/x86/amd: Enable branch sampling priv level filtering (Michael Petlan) [2085282] - perf/x86/amd: Add branch-brs helper event for Fam19h BRS (Michael Petlan) [2085282] - perf/x86/amd: Add AMD Fam19h Branch Sampling support (Michael Petlan) [2085282] - perf/x86/amd/ibs: Add bitfield definitions in new header (Michael Petlan) [2085282] - perf/amd/uncore: Allow the driver to be built as a module (Michael Petlan) [2085282] - perf/amd/uncore: Clean up header use, use module_list from nf_tables_exit_net() (Florian Westphal) [2134371] - netfilter: nf_tables: fix nft_counters_enabled underflow at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: do not leave chain stats enabled on error (Florian Westphal) [2134371] - ipvs: use explicitly signed chars (Florian Westphal) [2134371] - netfilter: nf_tables: release flow rule object from commit path (Florian Westphal) [2134371] - netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain() (Florian Westphal) [2134371] - netfilter: nf_tables: clean up hook list when offload flags check fails (Florian Westphal) [2134371] - netfilter: br_netfilter: Drop dst references before setting. (Florian Westphal) [2134371] - netfilter: nft_tproxy: restrict to prerouting hook (Florian Westphal) [2134371] - netfilter: ebtables: fix memory leak when blob is malformed (Florian Westphal) [2134371] - netfilter: ebtables: reject blobs that don't provide all entry points (Florian Westphal) [2134371] - netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is specified (Florian Westphal) [2134371] - netfilter: nf_tables: relax NFTA_SET_ELEM_KEY_END set flags requirements (Florian Westphal) [2134371] - netfilter: nf_tables: NFTA_SET_ELEM_KEY_END requires concat and interval flags (Florian Westphal) [2134371] - netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on NFT_SET_OBJECT flag (Florian Westphal) [2134371] - netfilter: nf_tables: possible module reference underflow in error path (Florian Westphal) [2134371] - netfilter: nf_tables: disallow NFTA_SET_ELEM_KEY_END with NFT_SET_ELEM_INTERVAL_END flag (Florian Westphal) [2134371] - netfilter: nf_tables: use READ_ONCE and WRITE_ONCE for shared generation id access (Florian Westphal) [2134371] - netfilter: nf_tables: fix null deref due to zeroed list head (Florian Westphal) [2134371]- bnxt_en: fix memory leak in bnxt_nvm_test() (Ken Cox) [2112186] - bnxt_en: Fix HDS and jumbo thresholds for RX packets (Ken Cox) [2112186] - bnxt_en: Fix first buffer size calculations for XDP multi-buffer (Ken Cox) [2112186] - bnxt_en: Fix XDP RX path (Ken Cox) [2112186] - bnxt_en: Simplify bnxt_xdp_buff_init() (Ken Cox) [2112186] - bnxt: prevent skb UAF after handing over to PTP worker (Ken Cox) [2112186] - bnxt_en: fix flags to check for supported fw version (Ken Cox) [2112186] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112186] - bnxt_en: fix NQ resource accounting during vf creation on 57500 chips (Ken Cox) [2112186] - bnxt_en: set missing reload flag in devlink features (Ken Cox) [2112186] - bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in use (Ken Cox) [2112186] - bnxt_en: Remove duplicated include bnxt_devlink.c (Ken Cox) [2112186] - bnxt_en: implement callbacks for devlink selftests (Ken Cox) [2112186] - bnxt_en: Fix bnxt_refclk_read() (Ken Cox) [2112186] - bnxt_en: fix livepatch query (Ken Cox) [2112186] - bnxt_en: Fix bnxt_reinit_after_abort() code path (Ken Cox) [2112186] - bnxt_en: reclaim max resources if sriov enable fails (Ken Cox) [2112186] - bnxt: Use the bitmap API to allocate bitmaps (Ken Cox) [2112186] - bnxt: Fix typo in comments (Ken Cox) [2112186] - eth: bnxt: make ulp_id unsigned to make GCC 12 happy (Ken Cox) [2112186] - bnxt_en: Enable packet timestamping for all RX packets (Ken Cox) [2112186] - bnxt_en: Configure ptp filters during bnxt open (Ken Cox) [2112186] - bnxt_en: Update firmware interface to 1.10.2.95 (Ken Cox) [2112186] - bnxt: add page_pool support for aggregation ring when using xdp (Ken Cox) [2112186] - bnxt: change receive ring space parameters (Ken Cox) [2112186] - bnxt: rename bnxt_rx_pages to bnxt_rx_agg_pages_skb (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_pages operate on skb_shared_info (Ken Cox) [2112186] - bnxt: add flag to denote that an xdp program is currently attached (Ken Cox) [2112186] - bnxt: refactor bnxt_rx_xdp to separate xdp_init_buff/xdp_prepare_buff (Ken Cox) [2112186] - bnxt: report header-data split state (Ken Cox) [2112186] - net: Don't include filter.h from net/sock.h (Ken Cox) [2112186] - ethernet: constify references to netdev->dev_addr in drivers (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2112186] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2112186] - bnxt_en: Use struct_group_attr() for memcpy() region (Ken Cox) [2112186] - net: don't include ethtool.h from netdevice.h (Ken Cox) [2112186] - treewide: Use fallthrough pseudo-keyword (Ken Cox) [2112186] - net: Use skb_frag_off accessors (Ken Cox) [2112186] - net: Use skb accessors in network drivers (Ken Cox) [2112186] - ethernet: remove redundant memset (Ken Cox) [2112186] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ken Cox) [2112186]- ASoC: amd: renoir: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: renoir: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Add a module parameter to influence pdm_gain (Jaroslav Kysela) [2169761] - ASoC: amd: yc: Adjust the gain for PDM DMIC (Jaroslav Kysela) [2169761] - genirq: Fix reference leaks on irq affinity notifiers (Ricardo Robaina) [2154842] - genirq: Prevent use-after-free and work list corruption (Ricardo Robaina) [2154842] - perf/x86/uncore: Don't WARN_ON_ONCE() for a broken discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Add a quirk for UPI on SPR (Michael Petlan) [2154044] - perf/x86/uncore: Ignore broken units in discovery table (Michael Petlan) [2154044] - perf/x86/uncore: Fix potential NULL pointer in uncore_get_alias_name (Michael Petlan) [2154044] - perf/x86/uncore: Factor out uncore_device_to_die() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Support extra IMC channel on Ice Lake server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Snowridge (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix Intel ICX IIO event constraints (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in __uncore_imc_init_box() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in snr_uncore_mmio_map() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in hswep_has_limit_sbox() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Fix reference count leak in sad_cfg_iio_topology() (Michael Petlan) [2154044] - perf/x86/intel/uncore: Make set_mapping() procedure void (Michael Petlan) [2154044] - perf/x86/intel/uncore: Update sysfs-devices-mapping file (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Sapphire Rapids (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Icelake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Get UPI NodeID and GroupID (Michael Petlan) [2154044] - perf/x86/intel/uncore: Enable UPI topology discovery for Skylake Server (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize get_topology() for SKX PMUs (Michael Petlan) [2154044] - perf/x86/intel/uncore: Disable I/O stacks to PMU mapping on ICX-D (Michael Petlan) [2154044] - perf/x86/intel/uncore: Clear attr_update properly (Michael Petlan) [2154044] - perf/x86/intel/uncore: Introduce UPI topology type (Michael Petlan) [2154044] - perf/x86/intel/uncore: Generalize IIO topology support (Michael Petlan) [2154044]- net/mlx4: Check retval of mlx4_bitmap_init (Amir Tzin) [2150787] - net/mlx4: Fix error check for dma_map_sg (Amir Tzin) [2150787] - net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2150787] - RDMA/mlx4: Avoid flush_scheduled_work() usage (Amir Tzin) [2150787] - net: mellanox: fix open-coded for_each_set_bit() (Amir Tzin) [2150787] - tracing: Add linear buckets to histogram logic (Jerome Marchand) [2161509] - configs/generic: enable CONFIG_RTC_SYSTOHC (Marcelo Tosatti) [2135417] - watchdog: fix UAF in reboot notifier handling in watchdog core code (Wander Lairson Costa) [2131308]- drm/i915/fbdev: do not create fbdev if HPD is suspended (Jocelyn Falempe) [2156006] - drm/i915/fbdev: suspend HPD before fbdev unregistration (Jocelyn Falempe) [2156006] - drm/i915/hpd: suspend MST at the end of intel_modeset_driver_remove (Jocelyn Falempe) [2156006] - drm/i915/gvt: fix vgpu debugfs clean in remove (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix gvt debugfs destroy (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kernel warning during topology setup (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Enable Freesync Video Mode by default" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix double release compute pasid (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix kfd_process_device_init_vm error handling (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix size validation for non-exclusive domains (v4) (Jocelyn Falempe) [2115903] - drm/i915/gvt: fix double free bug in split_2MB_gtt_entry (Jocelyn Falempe) [2115903] - drm/i915: unpin on error in intel_vgpu_shadow_mm_pin() (Jocelyn Falempe) [2115903] - drm/amd/pm: correct the fan speed retrieving in PWM for some SMU13 asics (Jocelyn Falempe) [2115903] - drm/amd/pm: bump SMU13.0.0 driver_if header to version 0x34 (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.7 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/amd/pm: add missing SMU13.0.0 mm_dpm feature mapping (Jocelyn Falempe) [2115903] - drm/i915/migrate: Account for the reserved_space (Jocelyn Falempe) [2115903] - drm/i915: improve the catch-all evict to handle lock contention (Jocelyn Falempe) [2115903] - drm/amdgpu: make display pinning more flexible (v2) (Jocelyn Falempe) [2115903] - drm/amdgpu: handle polaris10/11 overlap asics (v2) (Jocelyn Falempe) [2115903] - drm/amd/display: Add DCN314 display SG Support (Jocelyn Falempe) [2115903] - drm/i915/ttm: consider CCS for backup objects (Jocelyn Falempe) [2115903] - drm/i915/dsi: fix VBT send packet port selection for dual link DSI (Jocelyn Falempe) [2115903] - drm/vmwgfx: Validate the box size for the snooped cursor (Jocelyn Falempe) [2115903] - drm/connector: send hotplug uevent on connector cleanup (Jocelyn Falempe) [2115903] - drm/amdgpu: fix mmhub register base coding error (Jocelyn Falempe) [2115903] - drm/amd/pm: correct SMU13.0.0 pstate profiling clock settings (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU13.0.0 reported maximum shader clock (Jocelyn Falempe) [2115903] - drm/amdgpu: skip MES for S0ix as well since it's part of GFX (Jocelyn Falempe) [2115903] - drm/amd/display: revert Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amd/pm: avoid large variable on kernel stack (Jocelyn Falempe) [2115903] - drm/i915/display: Don't disable DDI/Transcoder when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid() (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DTBCLK disable requests and SRC_SEL programming (Jocelyn Falempe) [2115903] - drm/amd/display: Use the largest vready_offset in pipe group (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in bios parser (Jocelyn Falempe) [2115903] - drm/amd/display: Workaround to increase phantom pipe vactive in pipesplit (Jocelyn Falempe) [2115903] - drm/sti: Use drm_mode_copy() (Jocelyn Falempe) [2115903] - drm/amd/display: Disable DRR actions during state commit (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix type of second parameter in trans_msg() callback (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: Limit max DSC target bpp for specific monitors" (Jocelyn Falempe) [2115903] - drm/edid: add a quirk for two LG monitors to get them to work on 10bpc (Jocelyn Falempe) [2115903] - drm/amd/display: prevent memory leak (Jocelyn Falempe) [2115903] - drm/i915/bios: fix a memory leak in generate_lfp_data_ptrs (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leakage (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios() (Jocelyn Falempe) [2115903] - drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios() (Jocelyn Falempe) [2115903] - amdgpu/nv.c: Corrected typo in the video capabilities resolution (Jocelyn Falempe) [2115903] - drm/amd/pm/smu11: BACO is supported when it's in BACO state (Jocelyn Falempe) [2115903] - drm/tegra: Add missing clk_disable_unprepare() in tegra_dc_probe() (Jocelyn Falempe) [2115903] - drm/i915/guc: make default_lists const data (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pci device refcount leak (Jocelyn Falempe) [2115903] - drm/fourcc: Fix vsub/hsub for Q410 and Q401 (Jocelyn Falempe) [2115903] - amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table() (Jocelyn Falempe) [2115903] - drm/radeon: Add the missed acpi_put_table() to fix memory leak (Jocelyn Falempe) [2115903] - drm/ttm: fix undefined behavior in bit shift for TTM_TT_FLAG_PRIV_POPULATED (Jocelyn Falempe) [2115903] - drm/panel/panel-sitronix-st7701: Remove panel on DSI attach failure (Jocelyn Falempe) [2115903] - drm/amd/display: wait for vblank during pipe programming (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix GuC error capture sizing estimation and reporting (Jocelyn Falempe) [2115903] - drm/i915/guc: Add error-capture init warnings when needed (Jocelyn Falempe) [2115903] - drm/i915/guc: Make GuC log sizes runtime configurable (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix capture size warning and bump the size (Jocelyn Falempe) [2115903] - drm/i915/guc: Add a helper for log buffer size (Jocelyn Falempe) [2115903] - drm/i915: Fix compute pre-emption w/a to apply to compute engines (Jocelyn Falempe) [2115903] - drm/i915/guc: Limit scheduling properties to avoid overflow (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Initialize AUX channel in it6505_i2c_probe (Jocelyn Falempe) [2115903] - drm/amdgpu/powerplay/psm: Fix memory leak in power state init (Jocelyn Falempe) [2115903] - drm/bridge: adv7533: remove dynamic lane switching from adv7533 bridge (Jocelyn Falempe) [2115903] - drm/atomic-helper: Don't allocate new plane state in CRTC check (Jocelyn Falempe) [2115903] - drm/amdgpu/vcn: update vcn4 fw shared data structure (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: fix preference of RGB modes over YUV420 (Jocelyn Falempe) [2115903] - drm/bridge: ti-sn65dsi86: Fix output polarity setting bug (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix race issue calling pin_user_pages (Jocelyn Falempe) [2115903] - drm/shmem-helper: Avoid vm_open error paths (Jocelyn Falempe) [2115903] - drm/shmem-helper: Remove errant put in error path (Jocelyn Falempe) [2115903] - drm/amd/display: fix array index out of bound error in DCN32 DML (Jocelyn Falempe) [2115903] - drm/amdgpu/sdma_v4_0: turn off SDMA ring buffer in the s2idle suspend (Jocelyn Falempe) [2115903] - drm/vmwgfx: Don't use screen objects when SEV is active (Jocelyn Falempe) [2115903] - drm/amdgpu: fix use-after-free during gpu recovery (Jocelyn Falempe) [2115903] - drm/amd/display: Use new num clk levels struct for max mclk index (Jocelyn Falempe) [2115903] - drm/amd/display: Avoid setting pixel rate divider to N/A (Jocelyn Falempe) [2115903] - drm/amd/display: Use viewport height for subvp mall allocation size (Jocelyn Falempe) [2115903] - drm/i915: Remove non-existent pipes from bigjoiner pipe mask (Jocelyn Falempe) [2115903] - drm/i915: Never return 0 if not all requests retired (Jocelyn Falempe) [2115903] - drm/i915: Fix negative value passed as remaining time (Jocelyn Falempe) [2115903] - drm/amdgpu: enable Vangogh VCN indirect sram mode (Jocelyn Falempe) [2115903] - drm/amdgpu: temporarily disable broken Clang builds due to blown stack-frame (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver if header for smu_13_0_7 (Jocelyn Falempe) [2115903] - drm/amd/pm: update driver-if header for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amd/pm: add smu_v13_0_10 driver if version (Jocelyn Falempe) [2115903] - drm/amdgpu: fix userptr HMM range handling v2 (Jocelyn Falempe) [2115903] - drm/amdgpu: cleanup error handling in amdgpu_cs_parser_bos (Jocelyn Falempe) [2115903] - drm/amdgpu: move setting the job resources (Jocelyn Falempe) [2115903] - drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info correctly when the edid is read" (Jocelyn Falempe) [2115903] - drm/amdgpu: always register an MMU notifier for userptr (Jocelyn Falempe) [2115903] - drm/amd/display: Update soc bounding box for dcn32/dcn321 (Jocelyn Falempe) [2115903] - drm/amd/amdgpu: reserve vm invalidation engine for firmware (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable Aldebaran devices to report CU Occupancy (Jocelyn Falempe) [2115903] - drm/amdgpu/psp: don't free PSP buffers on suspend (Jocelyn Falempe) [2115903] - drm/amd/display: No display after resume from WB/CB (Jocelyn Falempe) [2115903] - drm/amd/dc/dce120: Fix audio register mapping, stop triggering KASAN (Jocelyn Falempe) [2115903] - drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code (Jocelyn Falempe) [2115903] - drm/i915/ttm: never purge busy objects (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix a memory limit issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO support on more cards (Jocelyn Falempe) [2115903] - drm/amd/display: use uclk pstate latency for fw assisted mclk validation dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix calculation for cursor CAB allocation (Jocelyn Falempe) [2115903] - drm/amd/display: Update MALL SS NumWays calculation (Jocelyn Falempe) [2115903] - drm/amd/display: Add debug option for allocating extra way for cursor (Jocelyn Falempe) [2115903] - drm/amd/display: Added debug option for forcing subvp num ways (Jocelyn Falempe) [2115903] - drm/amdkfd: update GFX11 CWSR trap handler (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable SA software trap. (Jocelyn Falempe) [2115903] - dma-buf: Use dma_fence_unwrap_for_each when importing fences (Jocelyn Falempe) [2115903] - dma-buf: fix racing conflict of dma_heap_add() (Jocelyn Falempe) [2115903] - drm/i915: Fix warn in intel_display_power_*_domain() functions (Jocelyn Falempe) [2115903] - drm/amd/display: only fill dirty rectangles when PSR is enabled (Jocelyn Falempe) [2115903] - drm/amdgpu: Drop eviction lock when allocating PT BO (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: Revert "drm/amdgpu: getting fan speed pwm for vega10 properly"" (Jocelyn Falempe) [2115903] - drm/amd/display: Fix gpio port mapping issue (Jocelyn Falempe) [2115903] - drm/amd/display: Fix FCLK deviation and tool compile issues (Jocelyn Falempe) [2115903] - drm/amd/display: Zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017) (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Nanote UMPC-01 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix prefetch calculations for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: don't enable DRM CRTC degamma property for DCE (Jocelyn Falempe) [2115903] - drm/amd/display: Fix optc2_configure warning on dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Support parsing VRAM info v3.0 from VBIOS (Jocelyn Falempe) [2115903] - drm/amd/display: Fix access timeout to DPIA AUX at boot time (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix invalid DPIA AUX reply causing system hang (Jocelyn Falempe) [2115903] - drm/display: Don't assume dual mode adaptors support i2c sub-addressing (Jocelyn Falempe) [2115903] - drm/amd/pm: fix SMU13 runpm hang due to unintentional workaround (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.0 (Jocelyn Falempe) [2115903] - drm/amd/pm: enable runpm support over BACO for SMU13.0.7 (Jocelyn Falempe) [2115903] - drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker() (Jocelyn Falempe) [2115903] - drm/drv: Fix potential memory leak in drm_dev_init() (Jocelyn Falempe) [2115903] - drm/panel: simple: set bpc field for logic technologies displays (Jocelyn Falempe) [2115903] - drm/amd/display: Investigate tool reported FCLK P-state deviations (Jocelyn Falempe) [2115903] - drm/amd/display: Round up DST_after_scaler to nearest int (Jocelyn Falempe) [2115903] - drm/amd/display: Use forced DSC bpp in DML (Jocelyn Falempe) [2115903] - drm/amd/display: Fix DCN32 DSC delay calculation (Jocelyn Falempe) [2115903] - drm/amd: Fail the suspend if resources can't be evicted (Jocelyn Falempe) [2115903] - drm/amdgpu: set fb_modifiers_not_supported in vkms (Jocelyn Falempe) [2115903] - drm/amd/display: Enable timing sync on DCN32 (Jocelyn Falempe) [2115903] - drm/amd/display: Ignore Cable ID Feature (Jocelyn Falempe) [2115903] - drm/imx: imx-tve: Fix return type of imx_tve_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/scheduler: fix fence ref counting (Jocelyn Falempe) [2115903] - drm/amd/display: Don't return false if no stream (Jocelyn Falempe) [2115903] - drm/amd/display: Remove wrong pipe control lock (Jocelyn Falempe) [2115903] - drm/amdgpu: Adjust MES polling timeout for sriov (Jocelyn Falempe) [2115903] - drm/amdkfd: Migrate in CPU page fault use current mm (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in kfd_criu_restore_events (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix error handling in criu_checkpoint (Jocelyn Falempe) [2115903] - drm/amdgpu: disable BACO on special BEIGE_GOBY card (Jocelyn Falempe) [2115903] - drm/amdgpu: workaround for TLB seq race (Jocelyn Falempe) [2115903] - drm/amd/display: Update SR watermarks for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 msg interface header (Jocelyn Falempe) [2115903] - drm/amd/display: Fix reg timeout in enc314_enable_fifo (Jocelyn Falempe) [2115903] - drm/i915/dmabuf: fix sg_table handling in map_dma_buf (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix the lpfn checking condition in drm buddy (Jocelyn Falempe) [2115903] - drm/i915: Do not set cache_dirty for DGFX (Jocelyn Falempe) [2115903] - drm/i915/psr: Send update also on invalidate (Jocelyn Falempe) [2115903] - drm/vc4: Fix missing platform_unregister_drivers() call in vc4_drm_register() (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix NULL pointer dereference in svm_migrate_to_ram() (Jocelyn Falempe) [2115903] - drm/amdkfd: handle CPU fault on COW mapping (Jocelyn Falempe) [2115903] - drm/amd/display: Set memclk levels to be at least 1 for dcn32 (Jocelyn Falempe) [2115903] - drm/amd/display: Limit dcn32 to 1950Mhz display clock (Jocelyn Falempe) [2115903] - drm/amd/display: Acquire FCLK DPM levels on DCN32 (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Grab mode_config.mutex during LVDS init to avoid WARNs (Jocelyn Falempe) [2115903] - drm/i915: Simplify intel_panel_add_edid_alt_fixed_modes() (Jocelyn Falempe) [2115903] - drm/i915: Allow more varied alternate fixed modes for panels (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Setup DDC fully before output init (Jocelyn Falempe) [2115903] - drm/i915/sdvo: Filter out invalid outputs more sensibly (Jocelyn Falempe) [2115903] - drm/amd/display: Update DSC capabilitie for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Update latencies on DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: disable GFXOFF during compute for GFX11 (Jocelyn Falempe) [2115903] - drm/i915: stop abusing swiotlb_max_segment (Jocelyn Falempe) [2115903] - drm/rockchip: fix fbdev on non-IOMMU devices (Jocelyn Falempe) [2115903] - drm/rockchip: dw_hdmi: filter regulator -EPROBE_DEFER error messages (Jocelyn Falempe) [2115903] - drm/amdgpu: dequeue mes scheduler during fini (Jocelyn Falempe) [2115903] - drm/amdgpu: Program GC registers through RLCG interface in gfx_v11/gmc_v11 (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix type of reset_type parameter in hqd_destroy() callback (Jocelyn Falempe) [2115903] - drm/amd/pm: skip loading pptable from driver on secure board for smu_v13_0_10 (Jocelyn Falempe) [2115903] - drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV case (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix memory leak in kfd_mem_dmamap_userptr() (Jocelyn Falempe) [2115903] - drm/i915/dp: Reset frl trained flag before restarting FRL training (Jocelyn Falempe) [2115903] - drm/i915/dgfx: Keep PCI autosuspend control 'on' by default on all dGPU (Jocelyn Falempe) [2115903] - drm/bridge: ps8640: Add back the 50 ms mystery delay after HPD (Jocelyn Falempe) [2115903] - drm/msm: Fix return type of mdp4_lvds_connector_mode_valid (Jocelyn Falempe) [2115903] - drm/msm/hdmi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/msm/dsi: fix memory corruption with too many bridges (Jocelyn Falempe) [2115903] - drm/amdkfd: correct the cache info for gfx1036 (Jocelyn Falempe) [2115903] - drm/amdkfd: update gfx1037 Lx cache setting (Jocelyn Falempe) [2115903] - drm/amd/display: Revert logic for plane modifiers (Jocelyn Falempe) [2115903] - drm/amdgpu: fix pstate setting issue (Jocelyn Falempe) [2115903] - drm/amdgpu: disallow gfxoff until GC IP blocks complete s2idle resume (Jocelyn Falempe) [2115903] - drm/amdgpu: Remove ATC L2 access for MMHUB 2.1.x (Jocelyn Falempe) [2115903] - drm/i915: Extend Wa_1607297627 to Alderlake-P (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix for BO move issue (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix VRAM BO swap issue (Jocelyn Falempe) [2115903] - drm/vc4: Add module dependency on hdmi-codec (Jocelyn Falempe) [2115903] - drm/amdgpu: fix sdma doorbell init ordering on APUs (Jocelyn Falempe) [2115903] - drm/amd/pm: update SMU IP v13.0.4 driver interface version (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.0 cstate control interface (Jocelyn Falempe) [2115903] - drm/amd/pm: disable cstate feature for gpu reset scenario (Jocelyn Falempe) [2115903] - drm/amd/pm: add SMU IP v13.0.4 IF version define to V7 (Jocelyn Falempe) [2115903] - drm/amd/pm: fulfill SMU13.0.7 cstate control interface (Jocelyn Falempe) [2115903] - drm/i915/bios: Use hardcoded fp_timing size for generating LFP data pointers (Jocelyn Falempe) [2115903] - drm/i915/bios: Validate fp_timing terminator presence (Jocelyn Falempe) [2115903] - drm/amd/display: Fix build breakage with CONFIG_DEBUG_FS=n (Jocelyn Falempe) [2115903] - Revert "drm/amd/display: correct hostvm flag" (Jocelyn Falempe) [2115903] - drm/amdkfd: Fix UBSAN shift-out-of-bounds warning (Jocelyn Falempe) [2115903] - drm/amd/display: polling vid stream status in hpo dp blank (Jocelyn Falempe) [2115903] - drm/amd/display: Remove interface for periodic interrupt 1 (Jocelyn Falempe) [2115903] - drm/dp: Don't rewrite link config when setting phy test pattern (Jocelyn Falempe) [2115903] - drm/amdgpu: fix initial connector audio value (Jocelyn Falempe) [2115903] - drm/amd/display: correct hostvm flag (Jocelyn Falempe) [2115903] - drm/amd/display: Fix urgent latency override for DCN32/DCN321 (Jocelyn Falempe) [2115903] - drm/amdgpu: SDMA update use unlocked iterator (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Aya Neo Air (Jocelyn Falempe) [2115903] - drm: panel-orientation-quirks: Add quirk for Anbernic Win600 (Jocelyn Falempe) [2115903] - drm/vc4: vec: Fix timings for VEC modes (Jocelyn Falempe) [2115903] - drm/admgpu: Skip CG/PG on SOC21 under SRIOV VF (Jocelyn Falempe) [2115903] - drm/amdgpu: Skip the program of MMMC_VM_AGP_* in SRIOV on MMHUB v3_0_0 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix variable dereferenced before check (Jocelyn Falempe) [2115903] - drm: bridge: dw_hdmi: only trigger hotplug event on link change (Jocelyn Falempe) [2115903] - drm/amd: fix potential memory leak (Jocelyn Falempe) [2115903] - udmabuf: Set ubuf->sg = NULL if the creation of sg table fails (Jocelyn Falempe) [2115903] - drm/amd/display: fix overflow on MIN_I64 definition (Jocelyn Falempe) [2115903] - gpu: lontium-lt9611: Fix NULL pointer dereference in lt9611_connector_init() (Jocelyn Falempe) [2115903] - drm: Prevent drm_copy_field() to attempt copying a NULL pointer (Jocelyn Falempe) [2115903] - drm: Use size_t type for len variable in drm_copy_field() (Jocelyn Falempe) [2115903] - drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc() (Jocelyn Falempe) [2115903] - virtio-gpu: fix shift wrapping bug in virtio_gpu_fence_event_create() (Jocelyn Falempe) [2115903] - drm/vmwgfx: Fix memory leak in vmw_mksstat_add_ioctl() (Jocelyn Falempe) [2115903] - drm/amdgpu: Fix memory leak in hpd_rx_irq_create_workqueue() (Jocelyn Falempe) [2115903] - drm/bochs: fix blanking (Jocelyn Falempe) [2115903] - drm/virtio: set fb_modifiers_not_supported (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Fix the order of DP_SET_POWER commands (Jocelyn Falempe) [2115903] - drm/bridge: megachips: Fix a null pointer dereference bug (Jocelyn Falempe) [2115903] - drm/amdgpu: add missing pci_disable_device() in amdgpu_pmops_runtime_resume() (Jocelyn Falempe) [2115903] - drm: fix drm_mipi_dbi build errors (Jocelyn Falempe) [2115903] - drm/panel: use 'select' for Ili9341 panel driver helpers (Jocelyn Falempe) [2115903] - drm/virtio: Fix same-context optimization (Jocelyn Falempe) [2115903] - drm/i915/dg2: Bump up CDCLK for DG2 (Jocelyn Falempe) [2115903] - drm/dp_mst: fix drm_dp_dpcd_read return value checks (Jocelyn Falempe) [2115903] - drm/format-helper: Fix test on big endian architectures (Jocelyn Falempe) [2115903] - drm/bridge: parade-ps8640: Fix regulator supply order (Jocelyn Falempe) [2115903] - drm/bridge: tc358767: Add of_node_put() when breaking out of loop (Jocelyn Falempe) [2115903] - drm/bridge: anx7625: Fix refcount bug in anx7625_parse_dt() (Jocelyn Falempe) [2115903] - drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling (Jocelyn Falempe) [2115903] - drm/bridge: it6505: Power on downstream device in .atomic_enable (Jocelyn Falempe) [2115903] - drm/mipi-dsi: Detach devices when removing the host (Jocelyn Falempe) [2115903] - drm/bridge: Avoid uninitialized variable warning (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: unregister cec i2c device after cec adapter (Jocelyn Falempe) [2115903] - drm: bridge: adv7511: fix CEC power down control register offset (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable F32_WPTR_POLL_ENABLE in mqd (Jocelyn Falempe) [2115903] - drm/amdgpu: Enable VCN PG on GC11_0_1 (Jocelyn Falempe) [2115903] - drm/amd/display: explicitly disable psr_feature_enable appropriately (Jocelyn Falempe) [2115903] - drm/amd/display: Add HUBP surface flip interrupt handler (Jocelyn Falempe) [2115903] - drm/amd/display: Fix vblank refcount in vrr transition (Jocelyn Falempe) [2115903] - drm/amd/display: Enable 2 to 1 ODM policy if supported (Jocelyn Falempe) [2115903] - drm/amd/display: Enable dpia support for dcn314 (Jocelyn Falempe) [2115903] - drm/amd/display: Validate DSC After Enable All New CRTCs (Jocelyn Falempe) [2115903] - drm/amd/display: zeromem mypipe heap struct before using it (Jocelyn Falempe) [2115903] - drm/amd/display: Update PMFW z-state interface for DCN314 (Jocelyn Falempe) [2115903] - drm/amd/display: Fix watermark calculation (Jocelyn Falempe) [2115903] - drm/i915: Fix display problems after resume (Jocelyn Falempe) [2115903] - drm/i915/guc: Fix revocation of non-persistent contexts (Jocelyn Falempe) [2115903] - drm/i915/gt: Use i915_vm_put on ppgtt_create error paths (Jocelyn Falempe) [2115903] - drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table() (Jocelyn Falempe) [2115903] - drm/udl: Restore display mode on resume (Jocelyn Falempe) [2115903] - drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb() (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on dma_resv_reserve_fences() error (Jocelyn Falempe) [2115903] - drm/virtio: Unlock reservations on virtio_gpu_object_shmem_init() error (Jocelyn Falempe) [2115903] - drm/virtio: Check whether transferred 2D BO is shmem (Jocelyn Falempe) [2115903] - Revert "drm/amdgpu: use dirty framebuffer helper" (Jocelyn Falempe) [2115903]- nvme: fix SRCU protection of nvme_ns_head list (Ewan D. Milne) [2113865] - perf vendor events power10: Fix hv-24x7 metric events (Mamatha Inamdar) [2149192] - perf tests: Fix 'perf probe' error log check in skip_if_no_debuginfo (Mamatha Inamdar) [2149192] - perf tests: Fix *probe_vfs_getname.sh test failures (Mamatha Inamdar) [2149192] - blk-cgroup: Optimize blkcg_rstat_flush() (Waiman Long) [2162173] - blk-cgroup: Return -ENOMEM directly in blkcg_css_alloc() error path (Waiman Long) [2162173] - blk-cgroup: factor out blkcg_iostat_update() (Waiman Long) [2162173] - mm/memcg: Free percpu stats memory of dying memcg's again (Waiman Long) [2162173] - memcg: sync flush only if periodic flush is delayed (Waiman Long) [2162173] - memcg: better bounds on the memcg stats updates (Waiman Long) [2162173] - memcg: unify memcg stat flushing (Waiman Long) [2162173] - memcg: flush stats only if updated (Waiman Long) [2162173] - memcg: flush lruvec stats in the refault (Waiman Long) [2162173] - memcg: infrastructure to flush memcg stats (Waiman Long) [2162173] - memcg: switch lruvec stats to rstat (Waiman Long) [2162173] - mm/memcg: Remove mem_cgroup_per_node from being kABI protected (Waiman Long) [2162173] - mm/memcg: Revert "Free percpu stats memory of dying memcg's" (Waiman Long) [2162173]- virt/sev-guest: Prevent IV reuse in the SNP guest driver (John Allen) [2087262] - virt/sev-guest: Add a MODULE_ALIAS (John Allen) [2087262] - virt/sev-guest: Remove unnecessary free in init_crypto() (John Allen) [2087262] - x86/sev: Don't use cc_platform_has() for early SEV-SNP calls (John Allen) [2087262] - x86/boot: Don't propagate uninitialized boot_params->cc_blob_address (John Allen) [2087262] - x86/idt: Rework IDT setup for boot CPU (John Allen) [2087262] - x86/cpu: Init AP exception handling from cpu_init_secondary() (John Allen) [2087262] - x86/idt: Cleanup trap_init() (John Allen) [2087262] - x86/idt: Annotate alloc_intr_gate() with __init (John Allen) [2087262] - redhat/configs: enable CONFIG_SEV_GUEST (John Allen) [2087262] - virt: sev-guest: Pass the appropriate argument type to iounmap() (John Allen) [2087262] - x86/compressed/64: Add identity mappings for setup_data entries (John Allen) [2087262] - x86/sev: Mark the code returning to user space as syscall gap (John Allen) [2087262] - x86/sev: Annotate stack change in the #VC handler (John Allen) [2087262] - x86/sev: Remove duplicated assignment to variable info (John Allen) [2087262] - x86/sev: Fix address space sparse warning (John Allen) [2087262] - x86/sev: Get the AP jump table address from secrets page (John Allen) [2087262] - x86/sev: Add missing __init annotations to SEV init routines (John Allen) [2087262] - virt: sevguest: Rename the sevguest dir and files to sev-guest (John Allen) [2087262] - virt: sevguest: Change driver name to reflect generic SEV support (John Allen) [2087262] - x86/boot: Put globals that are accessed early into the .data section (John Allen) [2087262] - x86/boot: Add an efi.h header for the decompressor (John Allen) [2087262] - virt: sevguest: Fix bool function returning negative value (John Allen) [2087262] - virt: sevguest: Fix return value check in alloc_shared_pages() (John Allen) [2087262] - x86/sev: Unroll string mmio with CC_ATTR_GUEST_UNROLL_STRING_IO (John Allen) [2087262] - x86/sev-es: Replace open-coded hlt-loop with sev_es_terminate() (John Allen) [2087262] - virt: sevguest: Add documentation for SEV-SNP CPUID Enforcement (John Allen) [2087262] - virt: sevguest: Add support to get extended report (John Allen) [2087262] - virt: sevguest: Add support to derive key (John Allen) [2087262] - virt: Add SEV-SNP guest driver (John Allen) [2087262] - x86/sev: Register SEV-SNP guest request platform device (John Allen) [2087262] - x86/sev: Provide support for SNP guest request NAEs (John Allen) [2087262] - x86/sev: Add a sev= cmdline option (John Allen) [2087262] - x86/sev: Use firmware-validated CPUID for SEV-SNP guests (John Allen) [2087262] - x86/sev: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/sev: Check SME/SEV support in CPUID first (John Allen) [2087262] - x86/compressed/64: Add identity mapping for Confidential Computing blob (John Allen) [2087262] - x86/compressed: Export and rename add_identity_map() (John Allen) [2087262] - x86/compressed: Use firmware-validated CPUID leaves for SEV-SNP guests (John Allen) [2087262] - x86/compressed: Add SEV-SNP feature detection/setup (John Allen) [2087262] - x86/boot: Add a pointer to Confidential Computing blob in bootparams (John Allen) [2087262] - x86/boot: Preserve boot_params.secure_boot from sanitizing (John Allen) [2087262] - x86/boot: Fix boot regression caused by bootparam sanitizing (John Allen) [2087262] - x86/boot: Save fields explicitly, zero out everything else (John Allen) [2087262] - x86/compressed/64: Add support for SEV-SNP CPUID table in #VC handlers (John Allen) [2087262] - x86/sev: Move MSR-based VMGEXITs for CPUID to helper (John Allen) [2087262] - KVM: x86: Move lookup of indexed CPUID leafs to helper (John Allen) [2087262] - x86/boot: Add Confidential Computing type to setup_data (John Allen) [2087262] - x86/compressed/acpi: Move EFI kexec handling into common code (John Allen) [2087262] - x86/compressed/acpi: Move EFI vendor table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI config table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI system table lookup to helper (John Allen) [2087262] - x86/compressed/acpi: Move EFI detection to helper (John Allen) [2087262] - x86/head/64: Re-enable stack protection (John Allen) [2087262] - x86/sev: Use SEV-SNP AP creation to start secondary CPUs (John Allen) [2087262] - x86/apic/of: Fix CPU devicetree-node lookups (John Allen) [2087262] - x86/mm: Validate memory when changing the C-bit (John Allen) [2087262] - x86/kernel: Validate ROM memory before accessing when SEV-SNP is active (John Allen) [2087262] - x86/kernel: Mark the .bss..decrypted section as shared in the RMP table (John Allen) [2087262] - x86/sev: Add helper for validating pages in early enc attribute changes (John Allen) [2087262] - x86/sev: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Register GHCB memory when SEV-SNP is active (John Allen) [2087262] - x86/compressed: Add helper for validating pages in the decompression stage (John Allen) [2087262] - x86/sev: Check the VMPL level (John Allen) [2087262] - x86/sev: Add a helper for the PVALIDATE instruction (John Allen) [2087262] - x86/sev: Check SEV-SNP features support (John Allen) [2087262] - x86/mm: Extend cc_attr to include AMD SEV-SNP (John Allen) [2087262] - x86/sev: Detect/setup SEV/SME features earlier in boot (John Allen) [2087262] - x86/compressed/64: Detect/setup SEV/SME features earlier during boot (John Allen) [2087262] - x86/boot: Use MSR read/write helpers instead of inline assembly (John Allen) [2087262] - x86/boot: Introduce helpers for MSR reads/writes (John Allen) [2087262] - KVM: SVM: Update the SEV-ES save area mapping (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the GHCB save area (John Allen) [2087262] - KVM: SVM: Create a separate mapping for the SEV-ES save area (John Allen) [2087262] - KVM: SVM: Define sev_features and VMPL field in the VMSA (John Allen) [2087262] - x86/sev: Remove do_early_exception() forward declarations (John Allen) [2087262] - x86/sev: Make the #VC exception stacks part of the default stacks storage (John Allen) [2087262] - x86: Increase exception stack sizes (John Allen) [2087262] - x86/head64: Carve out the guest encryption postprocessing into a helper (John Allen) [2087262] - x86/sev: Get rid of excessive use of defines (John Allen) [2087262] - x86/sev: Add defines for GHCB version 2 MSR protocol requests (John Allen) [2087262] - x86/sev: Make sure IRQs are disabled while GHCB is active (John Allen) [2087262] - x86/sev: Propagate #GP if getting linear instruction address failed (John Allen) [2087262] - x86/insn: Extend error reporting from insn_fetch_from_user[_inatomic]() (John Allen) [2087262] - x86/sev-es: Convert to insn_decode() (John Allen) [2087262] - x86/sev-es: Split vc_decode_insn() (John Allen) [2087262] - x86/insn-eval: Make 0 a valid RIP for insn_get_effective_ip() (John Allen) [2087262] - x86/sev: Fix error message in runtime #VC handler (John Allen) [2087262] - x86/sev-es: Optimize __sev_es_ist_enter() for better readability (John Allen) [2087262] - x86/sev: Do not require Hypervisor CPUID bit for SEV guests (John Allen) [2087262] - x86/boot/compressed/64: Cleanup exception handling before booting kernel (John Allen) [2087262] - x86/sev-es: Remove subtraction of res variable (John Allen) [2087262]- net: mlx5: eliminate anonymous module_init & module_exit (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix switchdev mode after devlink reload (Amir Tzin) [2157750] - net/mlx5e: Set decap action based on attr for sample (Amir Tzin) [2157750] - net/mlx5e: QoS, Fix wrongfully setting parent_element_id on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5: E-switch, Fix setting of reserved fields on MODIFY_SCHEDULING_ELEMENT (Amir Tzin) [2157750] - net/mlx5e: Avoid false lock dependency warning on tc_ht even more (Amir Tzin) [2157750] - net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work() (Amir Tzin) [2157750] - net/mlx5: Fix ptp max frequency adjustment range (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Fix child PKEY interface stats on rx path (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Block queue count configuration when sub interfaces are present (Amir Tzin) [2157750] - net/mlx5e: Verify dev is present for fix features ndo (Amir Tzin) [2157750] - net/mlx5: Fix command stats access after free (Amir Tzin) [2157750] - net/mlx5e: TC, Keep mod hdr actions after mod hdr alloc (Amir Tzin) [2157750] - net/mlx5: check attr pointer validity before dereferencing it (Amir Tzin) [2157750] - RDMA/mlx5: Fix validation of max_rd_atomic caps for DC (Amir Tzin) [2157750] - RDMA/mlx5: Fix mlx5_ib_get_hw_stats when used for device (Amir Tzin) [2157750] - net/mlx5e: Set geneve_tlv_option_0_exist when matching on geneve option (Amir Tzin) [2157750] - net/mlx5e: Fix hw mtu initializing at XDP SQ allocation (Amir Tzin) [2157750] - net/mlx5e: Always clear dest encap in neigh-update-del (Amir Tzin) [2157750] - net/mlx5e: CT: Fix ct debugfs folder name (Amir Tzin) [2157750] - net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default (Amir Tzin) [2157750] - net/mlx5: Fix RoCE setting at HCA level (Amir Tzin) [2157750] - net/mlx5: Avoid recovery in probe flows (Amir Tzin) [2157750] - net/mlx5: Fix io_eq_size and event_eq_size params validation (Amir Tzin) [2157750] - net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path (Amir Tzin) [2157750] - net/mlx5: E-Switch, properly handle ingress tagged packets on VST (Amir Tzin) [2157750 2096109] - dm thin: Use last transaction's pmd->root when commit failed (Benjamin Marzinski) [2162537] - dm thin: resume even if in FAIL mode (Benjamin Marzinski) [2162537] - dm cache: set needs_check flag after aborting metadata (Benjamin Marzinski) [2162537] - dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort (Benjamin Marzinski) [2162537] - dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata (Benjamin Marzinski) [2162537] - dm integrity: Fix UAF in dm_integrity_dtr() (Benjamin Marzinski) [2162537] - dm cache: Fix UAF in destroy() (Benjamin Marzinski) [2162537] - dm thin: Fix UAF in run_timer_softirq() (Benjamin Marzinski) [2162537] - dm integrity: clear the journal on suspend (Benjamin Marzinski) [2162537] - dm integrity: flush the journal on suspend (Benjamin Marzinski) [2162537] - dm bufio: Fix missing decrement of no_sleep_enabled if dm_bufio_client_create failed (Benjamin Marzinski) [2162537] - dm ioctl: fix misbehavior if list_versions races with module loading (Benjamin Marzinski) [2162537]- net: gso: fix panic on frag_list with mixed head alloc types (Jiri Benc) [2136229] - futex: Resend potentially swallowed owner death notification (Rafael Aquini) [2161526] - Bluetooth: L2CAP: Fix memory leak in vhci_write (Wander Lairson Costa) [2155872] {CVE-2022-3619} - net: Use this_cpu_inc() to increment net->core_stats (Antoine Tenart) [2152542] - vlan: fix memory leak in vlan_newlink() (Xin Long) [2051415] - vlan: move dev_put into vlan_dev_uninit (Xin Long) [2051415] - vlan: introduce vlan_dev_free_egress_priority (Xin Long) [2051415] - vlan: fix memory leak in vlan_dev_set_egress_priority (Xin Long) [2051415] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103956] - intel/ixgbevf:fix repeated words in comments (Ken Cox) [2103956] - intel: remove unused macros (Ken Cox) [2103956] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103956] - ixgbevf: add disable link state (Ken Cox) [2103956] - ixgbevf: clean up some inconsistent indenting (Ken Cox) [2103956] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ken Cox) [2103956] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [2103956]- RDMA/siw: Always consume all skbuf data in sk_data_ready() upcall. (Kamal Heib) [2141420] - cifs: fix use-after-free caused by invalid pointer `hostname` (Ronnie Sahlberg) [2154172] - ceph: blocklist the kclient when receiving corrupted snap trace (Xiubo Li) [2162414] - ceph: move mount state enum to super.h (Xiubo Li) [2162414] - xfs: estimate post-merge refcounts correctly (Bill O'Donnell) [2161678] - xfs: hoist refcount record merge predicates (Bill O'Donnell) [2161678] - NFS: Fix revalidation of empty readdir pages (Benjamin Coddington) [2166364] - NFS: Don't deadlock when cookie hashes collide (Benjamin Coddington) [2166364] - locking/rwsem: Disable preemption in all down_read*() and up_read() code paths (Waiman Long) [2162139] - locking/rwsem: Prevent non-first waiter from spinning in down_write() slowpath (Waiman Long) [2162139] - locking/rwsem: Allow slowpath writer to ignore handoff bit if not set by first waiter (Waiman Long) [2162139] - locking/rwsem: Always try to wake waiters in out_nolock path (Waiman Long) [2162139] - locking/rwsem: No need to check for handoff bit if wait queue empty (Waiman Long) [2162139] - locking/rwsem: Make handoff bit handling more consistent (Waiman Long) [2162139] - dax: fix ENOMEM handling in grab_mapping_entry() (Andrey Albershteyn) [2128474] - crypto: ccp - Failure on re-initialization due to duplicate sysfs filename (Vladis Dronov) [2130714] - crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2 (Vladis Dronov) [2130714] - crypto: ccp - Add support for TEE for PCI ID 0x14CA (Vladis Dronov) [2130714] - crypto: ccp - Remove unused struct ccp_crypto_cpu (Vladis Dronov) [2130714] - crypto: ccp - Add __init/__exit annotations to module init/exit funcs (Vladis Dronov) [2130714] - i40e: Fix the inability to attach XDP program on downed interface (Ivan Vecera) [2121511] - mm, compaction: fix fast_isolate_around() to stay within boundaries (Daniel Vacek) [2149309]- aio: fix mremap after fork null-deref (Jeff Moyer) [2166088] - mm/hugetlb: use hugetlb_pte_stable in migration race check (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: fix race condition of uffd missing/minor handling (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: simplify the code when alloc_huge_page() failed in hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - mm/hugetlb: pass the old pte entry value to hugetlb_no_page() (Rafael Aquini) [2158120] {CVE-2022-3522} - perf/arm-cmn: Add more bits to child node address offset field (Charles Mirabile) [2122267] - perf/arm-cmn: Decode CAL devices properly in debugfs (Charles Mirabile) [2122267] - perf/arm-cmn: Fix filter_sel lookup (Charles Mirabile) [2122267] - drivers/perf: arm_spe: Expose saturating counter to 16-bit (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-700 support (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor occupancy filter selector (Charles Mirabile) [2122267] - perf/arm-cmn: Add CMN-650 support (Charles Mirabile) [2122267] - perf: check return value of armpmu_request_irq() (Charles Mirabile) [2122267] - arm_pmu: Validate single/group leader events (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator (Charles Mirabile) [2122267] - drivers/perf: arm_pmu: Handle 47 bit counters (Charles Mirabile) [2122267] - perf/arm-cmn: Update watchpoint format (Charles Mirabile) [2122267] - perf/arm-cmn: Hide XP PUB events for CMN-600 (Charles Mirabile) [2122267] - perf: replace bitmap_weight with bitmap_empty where appropriate (Charles Mirabile) [2122267] - perf: Replace acpi_bus_get_device() (Charles Mirabile) [2122267] - perf/arm-cmn: Make arm_cmn_debugfs static (Charles Mirabile) [2122267] - perf/arm-ccn: Use platform_get_irq() to get the interrupt (Charles Mirabile) [2122267] - perf/smmuv3: Don't cast parameter in bit operations (Charles Mirabile) [2122267] - perf/smmuv3: Use msi_get_virq() (Charles Mirabile) [2122267] - perf/smmuv3: Synthesize IIDR from CoreSight ID registers (Charles Mirabile) [2122267] - perf/arm-cmn: Add debugfs topology info (Charles Mirabile) [2122267] - perf/arm-cmn: Add CI-700 Support (Charles Mirabile) [2122267] - perf/arm-cmn: Support new IP features (Charles Mirabile) [2122267] - devres: provide devm_krealloc() (Charles Mirabile) [2122267] - devres: move the size check from alloc_dr() into a separate function (Charles Mirabile) [2122267] - perf/arm-cmn: Demarcate CMN-600 specifics (Charles Mirabile) [2122267] - perf/arm-cmn: Move group validation data off-stack (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTC counter accesses (Charles Mirabile) [2122267] - perf/arm-cmn: Optimise DTM counter reads (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor DTM handling (Charles Mirabile) [2122267] - perf/arm-cmn: Streamline node iteration (Charles Mirabile) [2122267] - perf/arm-cmn: Refactor node ID handling (Charles Mirabile) [2122267] - perf/arm-cmn: Drop compile-test restriction (Charles Mirabile) [2122267] - perf/arm-cmn: Account for NUMA affinity (Charles Mirabile) [2122267] - perf/arm-cmn: Fix CPU hotplug unregistration (Charles Mirabile) [2122267] - drivers/perf: thunderx2_pmu: Change data in size tx2_uncore_event_update() (Charles Mirabile) [2122267] - perf: qcom_l2_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm_pmu: move to use request_irq by IRQF_NO_AUTOEN flag (Charles Mirabile) [2122267] - arm64: perf: Fix 64-bit event counter read truncation (Charles Mirabile) [2122267] - drivers/perf: Replace spin_lock_irqsave to spin_lock (Charles Mirabile) [2122267] - arm_pmu: arm64: Use NMIs for PMU (Charles Mirabile) [2122267] - arm_pmu: Introduce pmu_irq_ops (Charles Mirabile) [2122267] - arm64: perf: Defer irq_work to IPI_IRQ_WORK (Charles Mirabile) [2122267] - arm64: perf: Remove PMU locking (Charles Mirabile) [2122267] - arm64: perf: Avoid PMXEV* indirection (Charles Mirabile) [2122267] - arm64: perf: Add missing ISB in armv8pmu_enable_counter() (Charles Mirabile) [2122267] - perf: arm_spe: Remove unnecessary zero check on 'nr_pages' (Charles Mirabile) [2122267] - drivers/perf: arm_pmu_acpi: Fix incorrect checking of gicc pointer (Charles Mirabile) [2122267] - perf/smmuv3: Use platform_get_irq_optional() for wired interrupt (Charles Mirabile) [2122267]- wifi: rtw89: Add missing check for alloc_workqueue (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix potential leak in rtw89_append_probe_req_ie() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix initialization of rx->link and rx->link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Drop stations iterator where the iterator function may sleep (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: use proper statements in conditionals (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MLO + AP_VLAN check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix coverity uninit_use_in_call in mt76_connac2_reverse_frag0_hdr_trans() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add checks for nla_nest_start() in nl80211_send_iface() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: Add missing __packed annotation of struct mt7921_clc (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: do not send firmware FW_FEATURE_NON_DL region (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix use after rcu_read_unlock in rtl8xxxu_bss_info_changed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix physts IE page check (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix wrong power after multiple SAR set (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: Fix some error handling path in rtw89_core_sta_assoc() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_encode_bits() to fill MAC quota value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix reporting of TX AGGR histogram (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix ifdef symbol name (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix firmware assert during bandwidth change for peer sta (Jose Ignacio Tornos Martinez) [2136125] - Revert "mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Turn on the rate control (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix warning in dma_free_coherent() of memory chunks while recovery (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: check link ID in auth/assoc continuation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: fix null-ptr deref on failed assoc (Jose Ignacio Tornos Martinez) [2136125] - wifi: fix multi-link element subelement iteration (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix antenna signal are way off in monitor mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: don't allow multi-BSSID in S1G (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix buffer overflow in elem comparison (Jose Ignacio Tornos Martinez) [2136125] - net: mhi: Fix memory leak in mhi_net_dellink() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix QCN9074 firmware boot on x86 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Set TWT Information Frame Disabled bit as 1 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Fix ack frame idr leak when mesh has no route (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix general-protection-fault in ieee80211_subif_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Fix bitrates overflow issue (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix memory leak in query_regdb_file() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix memory free error when registering wiphy fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: silence a sparse RCU warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: use explicitly signed or unsigned types (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mac: fix reading 16 bytes from a region of size 0 warning (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rx checksum offload on mt7615/mt7915/mt7921 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix receiving LLC packets on mt7615/mt7915 (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: update hidden BSSes to avoid WARN_ON (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix crash in beacon protection for P2P-device (Jose Ignacio Tornos Martinez) [2136125 2134582] {CVE-2022-42722} - wifi: mac80211_hwsim: avoid mac80211 warning on bad rate (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: avoid nontransmitted BSS list corruption (Jose Ignacio Tornos Martinez) [2136125 2134511] {CVE-2022-42721} - wifi: cfg80211: fix BSS refcounting bugs (Jose Ignacio Tornos Martinez) [2136125 2134460] {CVE-2022-42720} - wifi: cfg80211: ensure length byte is present before access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix MBSSID parsing use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: reject bad MBSSID elements (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans() (Jose Ignacio Tornos Martinez) [2136125 2134385] {CVE-2022-41674} - wifi: nl80211: Split memcpy() of struct nl80211_wowlan_tcp_data_token flexible array (Jose Ignacio Tornos Martinez) [2136125] - wifi: wext: use flex array destination for memcpy() (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: fix ieee80211_data_to_8023_exthdr handling of small packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: netdev compatible TX stop for iTXQ drivers (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix decap offload for stations on AP_VLAN interfaces (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: unlock on error in ieee80211_can_powered_addr_change() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove/avoid misleading prints (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix probe req HE capabilities access (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: do not drop packets smaller than the LLC-SNAP header on fast-rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix rate reporting / throughput regression on mt7915 and newer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Improve rtl8xxxu_queue_select (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Enable 40 MHz channel width (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: configure DLE mem (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: check DLE FIFO size with reserved size (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: correct register of report IMR (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: set power cut closed for 8852be (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: add to do PCI auto calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852b: implement chip_ops::{enable,disable}_bb_rf (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DMA busy checking bits to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: define DMA channel mask to avoid unsupported channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: mask out unsupported TX channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: Track scan_cmd allocation size explicitly (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Remove the call to "dtim_assoc" IOVAR (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase dcmd maximum buffer size (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: Support 89459 pcie (Jose Ignacio Tornos Martinez) [2136125] - brcmfmac: increase default max WOWL patterns to 16 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix deadlock during WoWLAN suspend (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Remove redundant ath11k_mac_drain_tx (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add spectral scan support for 160 MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to get power save duration for each client (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix peer addition/deletion error on sta band migration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for enable/disable MSDU aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: disable 26-tone RU HE TB PPDU transmissions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for processing P2P power saving (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support WMM-PS in P2P GO mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set wifi_role of P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: send OFDM rate only in P2P mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support P2P (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: correctly set BBP register 86 for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set SoC wmac clock register (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set VGC gain for both chains of MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: fix HT20/HT40 bandwidth switch on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move helper functions up in file (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add TX LOFT calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXIQ calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RXDCOC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add r calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add RF self TXDC calibration for MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: move up and reuse busy wait functions (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add support for external PA on MT7620 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: add throughput LED trigger (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: define RF5592 in init_eeprom routine (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix number of VHT beamformee spatial streams (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: retrieve MAC address from system firmware if provided (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: add get_txpower mac ops (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: move firmware stats out of debugfs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated the words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: fix repeated to words in a comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: reset pointer after memory free to avoid potential use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: fix failed to find the peer with peer_id 0 when disconnected (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: change complete() to complete_all() for scan.completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: update coexistence to 6.3.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add logic to control BT scan priority (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: summarize Wi-Fi to BT scoreboard and inform BT one time a cycle (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: modify LNA2 setting to avoid BT destroyed Wi-Fi aggregation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add WL_S0 hardware TX/RX mask to allow WL_S0 TX/RX during GNT_BT (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 Wi-Fi firmware steps report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 summary info to parse the traffic status from firmware (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: translate slot ID to readable name (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: add v1 cycle report to parsing Bluetooth A2DP status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix array of flexible structures warnings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rndis_wlan: fix array of flexible structures warning (Jose Ignacio Tornos Martinez) [2136125] - mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: pci_generic: Add a secondary AT port to Telit FN990 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add WoW support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Include STA_KEEPALIVE_ARP_RESPONSE TLV header by default (Jose Ignacio Tornos Martinez) [2136125] - wifi: rt2x00: Fix "Error - Attempt to send packet over invalid queue 2" (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: add multi-port ID to TX descriptor (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: fix rx filter after scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: free unused skb to prevent memory leak (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: reset halt registers before turn on wifi CPU (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: update LTR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: mac: set NAV upper to 25ms (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize DMA of CMAC (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support SER L1 simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support fw crash simulation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introudce functions to drop packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: unify use of rtw89_h2c_tx() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: concentrate control function of TX DMA channel (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct enable functions of HCI/PCI DMA (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: L1 DMA reset has offloaded to FW (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting TID specific configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support for setting HE GI and LTF (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: show connecting state in debug message (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Combine set grant WL/BT and correct the debug log (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Remove trace_step at COEX-MECH control structure for RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware TDMA info from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Parsing Wi-Fi firmware error message from reports (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Move coexistence firmware buffer size parameter to chip info (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: Add v1 Wi-Fi firmware power-saving null data report (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: coex: use void pointer as temporal type to copy report (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Add IDs/properties for BCM4378 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Support PCIe core revisions >= 64 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: msgbuf: Increase RX ring sizes to 1024 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Allow platform to override macaddr (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Perform firmware selection for Apple platforms (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: of: Fetch Apple properties (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie: Read Apple OTP information (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Support passing in multiple board_types (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: pcie/sdio/usb: Get CLM blob via standard firmware mechanism (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: firmware: Handle per-board clm_blob files (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: d3: parse keys from wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: iterate over interfaces after an assert in d3 (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: trigger resume flow before wait for notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add handling for scan offload match info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: enable resume based on notifications (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for d3 end notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan wake packet notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: Add support for wowlan info notification (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: don't check D0I3 version (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: cfg: remove IWL_DEVICE_BZ_COMMON macro (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: refactor iwl_mvm_set_sta_rate() a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: further unify some VHT/HE code (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: rxmq: refactor mac80211 rx_status setting (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: mvm: fix typo in struct iwl_rx_no_data API (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: pcie: add support for BZ devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix kernel-doc issues (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Fix miscellaneous spelling errors (Jose Ignacio Tornos Martinez) [2136125] - bus: mhi: host: always print detected modem name (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix random fw download fail (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: introduce Country Location Control support (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix rmmod crash in driver reload test (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: reset msta->airtime_ac while clearing up hw value (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: do not check state before configuring implicit beamform (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: fix uninitialized pointer in mt7921_mac_fill_rx (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix mcs value in ht mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: get rid of the false positive reset (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix in comment (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add PPDU based TxS support for WED device (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: move move mt76_sta_stats to mt76_wcid (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix the firmware version report (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: add mt7921_mutex_acquire at mt7921_[start, stop]_ap (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt76_usb.mt76u_mcu.burst is always false remove related code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7663s: add rx_check callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: fix possible unaligned access in mt76_connac_mcu_add_nested_tlv (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix possible unaligned access in mt7915_mac_add_twt_setup (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7615: add mt7615_mutex_acquire/release in mt7615_sta_set_decap_offload (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix transmitting packet hangs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: add rx_check callback for sdio devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: delete stray if statement (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: fix use after free in mt7921_acpi_read() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7915: fix an uninitialized variable bug (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: poll sta stat when device transmits data (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: sdio: fix the deadlock caused by sdio->stat_work (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921: move mt7921_rx_check and mt7921_queue_rx_skb in mac.c (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: remove unnecessary MT76_STATE_SUSPEND (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921u: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921s: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: mt7921e: fix race issue between reset and suspend/resume (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: add rx_check callback for usb devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: testmode: use random payload for tx packets (Jose Ignacio Tornos Martinez) [2136125] - wifi: mt76: connac: introduce mt76_connac_reg_map structure (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: split scan including lots of channels (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: support hw_scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: call tx_wake notify for 8852c in deep ps mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support deep ps mode for rtw8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: set response rate selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TX to single path TX on path B in 6GHz band (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enlarge polling timeout of RX DCK (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: enable the interference cancellation of MU-MIMO on 6GHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add DIG register struct to share common algorithm (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: support TX diversity for 1T2R chipset (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: record signal strength per RF path (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: configure TX path via H2C command (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: parse phycap of TX/RX antenna number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: use u32_get_bits to access C2H content of PHY capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Increase TCL data ring size for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add multi TX ring support for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Enable threaded NAPI (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: mhi: fix potential memory leak in ath11k_mhi_register() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: implement SRAM dump debugfs interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Split PCI write/read functions (Jose Ignacio Tornos Martinez) [2136125] - ath11k: Enable remain-on-channel support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian annotations in casts (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: fix endian conversion (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: mark a variable unused (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Fix skb misuse in TX queue selection (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: remove redundant variable err (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: add 43439 SDIO ids and initialization (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: Simplify the error handling code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mwifiex: Fix comment typo (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Add DMI nvram filename quirk for Chuwi Hi8 Pro tablet (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Use ISO3166 country code and rev 0 as fallback on 43430 (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit() (Jose Ignacio Tornos Martinez) [2136125] - wifi: iwlwifi: calib: Refactor iwl_calib_result usage for clarity (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: always activate all links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: implement link switching (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: keep A-MSDU data in sta and per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set up beacon timing config on links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add vif/sta link RCU dereference macros (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: send NDP for link (de)activation (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: extend ieee80211_nullfunc_get() for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: track active STA links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: skip inactive links on TX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add ieee80211_find_sta_by_link_addrs API (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: isolate driver from inactive links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: make smps_mode per-link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use correct rx link_sta instead of default (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link_sta in reorder timeout (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix multi-channel handling in netlink RX (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: call drv_sta_state() under sdata_lock() in reconfig (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: add MLD address to assoc BSS entries (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: refactor QoS settings code (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: warn on invalid link address (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix double SW scan stop (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: assign link address correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move link code to a new file (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: refactor RX a bit (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: check STA magic in change_sta_links (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: remove unused arg to ieee80211_chandef_eht_oper (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: remove multicast workaround (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: remove redundant err variable (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: Support POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: Add POWERED_ADDR_CHANGE feature (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent 4-addr use on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: prevent VLANs on MLDs (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add support to connect to non-transmit MBSSID profiles (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix hardware restart failure due to twt debugfs failure (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add TWT debugfs support for STA interface (Jose Ignacio Tornos Martinez) [2136125] - wifi: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add missing destroy_workqueue() on error path in rtw_core_init() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare to support beamformee above bandwidth 80MHz (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct polling address of address CAM (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: no HTC field if TX rate might fallback to legacy (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct TX resource checking in low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix interrupt stuck after leaving low power mode (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: enlarge the CFO tracking boundary (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: correct suspend/resume setting for variant chips (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: enable CLK_REQ, ASPM, L1 and L1ss for 8852c (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: pci: fix PCI PHY auto adaption by using software restore (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: set TBTT shift configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add retry to change power_mode state (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: correct BA CAM allocation (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: initialize and correct BA CAM content (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: declare correct BA CAM number (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update TX power tables to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852c: update RF radio A/B parameters to R49 (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: TX power limit/limit_ru consider negative (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Update Wi-Fi driver/firmware TDMA cycle report for RTL8852c (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 Wi-Fi SCC coexistence policy (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move _set_policy to chip_ops (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update WL role info v1 for RTL8852C branch using (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add v1 version TDMA format and parameters (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Define BT B1 slot length (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Add logic to parsing rtl8852c firmware type ctrl report (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: Move Wi-Fi firmware coexistence matching version to chip (Jose Ignacio Tornos Martinez) [2136125] - rtw89: coex: update radio state for RTL8852A/RTL8852C (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: adjust mactxen delay of mac/phy interface (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: modify PCIE prebkf time (Jose Ignacio Tornos Martinez) [2136125] - rtw89: ser: leave lps with mutex (Jose Ignacio Tornos Martinez) [2136125] - rtw89: declare support HE HTC always (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852a: update HW setting on BB (Jose Ignacio Tornos Martinez) [2136125] - rtw89: 8852c: disable dma during mac init (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: declare support for mac80211 chanctx ops by chip (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: add skeleton of mac80211 chanctx ops support (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce entity mode and its recalculated prototype (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: initialize entity and configure default chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate chandef setting to stack callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: concentrate parameter control for setting channel callback (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rfk: concentrate parameter control while set_channel() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: txpwr: concentrate channel related control to top (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: create rtw89_chan centrally to avoid breakage (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: re-arrange channel related stuffs under HAL (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: introduce rtw89_chan for channel stuffs (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: rewrite decision on channel by entity state (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Add cold boot calibration support on WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Fix incorrect QMI message ID mappings (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath11k: Register shutdown handler for WCN6750 (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix potential deadlock in ieee80211_key_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix uninitialized use of primary channel index (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use full 'unsigned int' type (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: move from strlcpy with unused retval to strscpy (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: read ethtool's sta_stats from sinfo (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: correct SMPS mode in HE 6 GHz capability (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id to cfg80211_ch_switch_started_notify() (Jose Ignacio Tornos Martinez) [2136125] - wifi: nl80211: send MLO links channel info in GET_INTERFACE (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow bw change during channel switch in mesh (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: clean up a needless assignment in ieee80211_sta_activate_link() (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: allow link address A2 in TXQ dequeue (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix control port frame addressing (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link ID in TX info for beacons (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: fix link change handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: maintain link_id in link_sta (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211/mac80211: check EHT capability size correctly (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211_hwsim: split iftype data into AP/non-AP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: mlme: don't add empty EML capabilities (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link ID for MLO in queued frames (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use the corresponding link for stats update (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: add link information in ieee80211_rx_status (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly implement MLO key handling (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Add link_id parameter to various key operations for MLO (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Prevent cfg80211_wext_siwencodeext() on MLD (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: reject connect response with MLO params for WEP (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: fix use-after-free (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: use link in TXQ parameter configuration (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: add link id to txq params (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: set link BSSID (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: get correct AP link chandef (Jose Ignacio Tornos Martinez) [2136125] - wifi: cfg80211: Update RNR parsing to align with Draft P802.11be_D2.0 (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: properly set old_links when removing a link (Jose Ignacio Tornos Martinez) [2136125] - wifi: mac80211: accept STA changes without link changes (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: prohibit enter IPS during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flag check before enter or leave IPS (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add flushing queue before HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix WARNING:rtw_get_tx_power_params() during HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add the update channel flow to support setting by parameters (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set regulatory and get Tx power table (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: add mutex when set SAR (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add skb free for TIM update info when tx is completed (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: Fix to add brcmf_clear_assoc_ies when rmmod (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix invalid address access when enabling SCAN log level (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix scheduling while atomic issue when deleting flowring (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmfmac: fix continuous 802.1x tx pending timeout error (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state() (Jose Ignacio Tornos Martinez) [2136125] - wifi: ath10k: Set tx credit to one for WCN3990 snoc based devices (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: 8852a: correct WDE IMR settings (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw89: refine leaving LPS function (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtlwifi: 8192de: correct checking of IQK reload (Jose Ignacio Tornos Martinez) [2136125] - wifi: brcmsmac: remove duplicate words (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: access chip_info by const pointer (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: phy: fix warning of possible buffer overflow (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix store OP channel info timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: fix stopping queues in wrong timing when HW scan (Jose Ignacio Tornos Martinez) [2136125] - wifi: rtw88: 8822c: extend supported probe request size (Jose Ignacio Tornos Martinez) [2136125]- ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF (Jaroslav Kysela) [2125548] {CVE-2023-0266} - ALSA: usb-audio: Remove redundant workaround for Roland quirk (Jaroslav Kysela) [2125548] - ASoC: jz4740-i2s: Handle independent FIFO flush bits (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops (Jaroslav Kysela) [2125548] - ALSA: patch_realtek: Fix Dell Inspiron Plus 16 (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Static PCM mapping again with AMD HDMI codecs (Jaroslav Kysela) [2125548] - ALSA: line6: fix stack overflow in line6_midi_transmit (Jaroslav Kysela) [2125548] - ALSA: line6: correct midi status byte when receiving data from podxt (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add the quirk for KT0206 device (Jaroslav Kysela) [2125548] - ASoC: rt5670: Remove unbalanced pm_runtime_put() (Jaroslav Kysela) [2125548] - ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: wm8994: Fix potential deadlock (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix stream-id config keep-alive for rt suspend (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: set default audio parameters for KAE silent-stream (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi: fix i915 silent stream programming flow (Jaroslav Kysela) [2125548] - ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume() (Jaroslav Kysela) [2125548] - ASoC: audio-graph-card: fix refcount leak of cpu_ep in __graph_for_each_link() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe() (Jaroslav Kysela) [2125548] - ASoC: Intel: Skylake: Fix driver hang during shutdown (Jaroslav Kysela) [2125548] - ALSA: hda: add snd_hdac_stop_streams() helper (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: fix possible use-after-free in sof_es8336_remove() (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Xiaomi Redmi Book Pro 14 2022 into DMI table (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ASoC: codecs: rt298: Add quirk for KBL-R RVP platform (Jaroslav Kysela) [2125548] - ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt (Jaroslav Kysela) [2125548] - ALSA: pcm: Set missing stop_operating flag at undoing trigger start (Jaroslav Kysela) [2125548] - ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe (Jaroslav Kysela) [2125548] - ALSA: asihpi: fix missing pci_disable_device() (Jaroslav Kysela) [2125548] - ASoC: mediatek: mtk-btcvsd: Add checks for write and read of mtk_btcvsd_snd (Jaroslav Kysela) [2125548] - ASoC: qcom: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Lock substream before snd_pcm_stop() (Jaroslav Kysela) [2125548] - ASoC: pxa: fix null-pointer dereference in filter() (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix potential RX buffer overflow (Jaroslav Kysela) [2125548] - ASoC: Intel: avs: Fix DMA mask assignment (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2125548] - ASoC: ops: Correct bounds check for second channel on SX controls (Jaroslav Kysela) [2125548] - ASoC: cs42l51: Correct PGA Volume minimum value (Jaroslav Kysela) [2125548] - ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear CHnF flags (Jaroslav Kysela) [2125548] - ASoC: fsl_micfil: explicitly clear software reset bit (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: More robust component matching for CS35L41 (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Add NULL check in BE reparenting (Jaroslav Kysela) [2125548] - ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event (Jaroslav Kysela) [2125548] - ASoC: rt711-sdca: fix the latency time of clock stop prepare state machine transitions (Jaroslav Kysela) [2125548] - ASoC: wm8962: Wait for updated value of WM8962_CLOCKING1 register (Jaroslav Kysela) [2125548] - ASoC: ops: Fix bounds check for _sx controls (Jaroslav Kysela) [2125548] - ALSA: dice: fix regression for Lexicon I-ONIX FW810S (Jaroslav Kysela) [2125548] - ASoC: sof_es8336: reduce pop noise on speaker (Jaroslav Kysela) [2125548] - ASoC: SOF: ipc3-topology: use old pipeline teardown flow with SOF2.1 and older (Jaroslav Kysela) [2125548] - ASoC: hda: intel-dsp-config: add ES83x6 quirk for IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: soc-acpi: add ES83x6 support to IceLake (Jaroslav Kysela) [2125548] - ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01 (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Alienware m17 R5 AMD into DMI table (Jaroslav Kysela) [2125548] - ASoC: max98373: Add checks for devm_kcalloc (Jaroslav Kysela) [2125548] - ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() (Jaroslav Kysela) [2125548] - ASoC: sgtl5000: Reset the CHIP_CLK_CTRL reg on remove (Jaroslav Kysela) [2125548] - ASoC: hdac_hda: fix hda pcm buffer overflow issue (Jaroslav Kysela) [2125548] - ALSA: usb-audio: add quirk to fix Hamedal C20 disconnect issue (Jaroslav Kysela) [2125548] - ASoC: SOF: topology: No need to assign core ID if token parsing failed (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open() (Jaroslav Kysela) [2125548] - ASoC: soc-utils: Remove __exit for snd_soc_util_exit() (Jaroslav Kysela) [2125548] - ASoC: rt5677: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: rt5514: fix legacy dai naming (Jaroslav Kysela) [2125548] - ASoC: tas2764: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: tas2770: Fix set_tdm_slot in case of single slot (Jaroslav Kysela) [2125548] - ASoC: core: Fix use-after-free in snd_soc_exit() (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: Fix spelling mistake "Sourc" -> "Source", "Routee" -> "Route" (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Thinkbook 14+ 2022 21D0 to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Adding Lenovo ThinkBook 14 Gen 4+ ARA and Lenovo ThinkBook 16 Gen 4+ ARA to the Quirks List (Jaroslav Kysela) [2125548] - ASoC: rt1308-sdw: add the default value of some registers (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_rt5682: Add quirk for Rex board (Jaroslav Kysela) [2125548] - ASoC: Intel: sof_sdw: add quirk variant for LAPBC710 NUC15 (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix capture selector naming (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: use right control for Capture Volume (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: fix reported volume for Master ctl (Jaroslav Kysela) [2125548] - ASoC: codecs: jz4725b: add missed Line In power control bit (Jaroslav Kysela) [2125548] - ASoC: wm8962: Add an event handler for TEMP_HP and TEMP_SPK (Jaroslav Kysela) [2125548] - ASoC: rt1019: Fix the TDM settings (Jaroslav Kysela) [2125548] - ASoC: rt5682s: Fix the TDM Tx settings (Jaroslav Kysela) [2125548] - ASoC: mt6660: Keep the pm_runtime enables before component stuff in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Revert "ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5110: Revert "ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe" (Jaroslav Kysela) [2125548] - ASoC: wm5102: Revert "ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe" (Jaroslav Kysela) [2125548] - ALSA: memalloc: Try dma_alloc_noncontiguous() at first (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add DSD support for Accuphase DAC-60 (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk entry for M-Audio Micro (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Yet more regression for for the delayed card registration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Positivo C6300 model quirk (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: hda: fix potential memleak in 'add_widget_node' (Jaroslav Kysela) [2125548] - ALSA: hda/ca0132: add quirk for EVGA Z390 DARK (Jaroslav Kysela) [2125548] - ALSA: hda/hdmi - enable runtime pm for more AMD display audio (Jaroslav Kysela) [2125548] - ALSA: memalloc: Don't fall back for SG-buffer with IOMMU (Jaroslav Kysela) [2125548] - ALSA: aoa: Fix I2S device accounting (Jaroslav Kysela) [2125548] - ALSA: aoa: i2sbus: fix possible memory leak in i2sbus_add_dev() (Jaroslav Kysela) [2125548] - ALSA: ac97: fix possible memory leak in snd_ac97_dev_register() (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: fix ADL-N descriptor (Jaroslav Kysela) [2125548] - ASoC: SOF: Intel: pci-tgl: use RPL specific firmware definitions (Jaroslav Kysela) [2125548] - ASoC: Intel: common: add ACPI matching tables for Raptor Lake (Jaroslav Kysela) [2125548] - ALSA: rme9652: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: au88x0: use explicitly signed char (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add another HP ZBook G9 model quirks (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirks for M-Audio Fast Track C400/600 (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS Zenbook using CS35L41 (Jaroslav Kysela) [2125548] - ALSA: Use del_timer_sync() before freeing timer (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix last interface check for registration (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add Lenovo Yoga Slim 7 Pro X to quirks table (Jaroslav Kysela) [2125548] - ASoC: amd: yc: Add ASUS UM5302TA into DMI table (Jaroslav Kysela) [2125548] - ASoC: SOF: add quirk to override topology mclk_id (Jaroslav Kysela) [2125548] - ASoC: SOF: pci: Change DMI match info to support all Chrome platforms (Jaroslav Kysela) [2125548] - ALSA: intel-dspconfig: add ES8336 support for AlderLake-PS (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Register card at the last interface (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Add quirk to enable Avid Mbox 3 support (Jaroslav Kysela) [2125548] - ASoC: mt6660: Fix PM disable depth imbalance in mt6660_i2c_probe (Jaroslav Kysela) [2125548] - ASoC: wm5102: Fix PM disable depth imbalance in wm5102_probe (Jaroslav Kysela) [2125548] - ASoC: wm5110: Fix PM disable depth imbalance in wm5110_probe (Jaroslav Kysela) [2125548] - ASoC: wm8997: Fix PM disable depth imbalance in wm8997_probe (Jaroslav Kysela) [2125548] - ASoC: stm: Fix PM disable depth imbalance in stm32_i2s_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: spdifrx: Fix PM disable depth imbalance in stm32_spdifrx_probe (Jaroslav Kysela) [2125548] - ASoC: stm32: dfsdm: Fix PM disable depth imbalance in stm32_adfsdm_probe (Jaroslav Kysela) [2125548] - ALSA: dmaengine: increment buffer pointer atomically (Jaroslav Kysela) [2125548] - ASoC: da7219: Fix an error handling path in da7219_register_dai_clks() (Jaroslav Kysela) [2125548] - ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API (Jaroslav Kysela) [2125548] - ASoC: wm_adsp: Handle optional legacy support (Jaroslav Kysela) [2125548] - ASoC: rsnd: Add check for rsnd_mod_power_on (Jaroslav Kysela) [2125548] - ASoC: soc-pcm.c: call __soc_pcm_close() in soc_pcm_close() (Jaroslav Kysela) [2125548] - ASoC: mt6359: fix tests for platform_get_irq() failure (Jaroslav Kysela) [2125548] - ASoC: wcd934x: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ASoC: wcd9335: fix order of Slimbus unprepare/disable (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add Intel Reference SSID to support headset keys (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for ASUS GV601R laptop (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix NULL dererence at error path (Jaroslav Kysela) [2125548] - ALSA: usb-audio: Fix potential memory leaks (Jaroslav Kysela) [2125548] - ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free() (Jaroslav Kysela) [2125548] - ALSA: oss: Fix potential deadlock at unregistration (Jaroslav Kysela) [2125548] - ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model (Jaroslav Kysela) [2125548] - ALSA: hda: Fix position reporting on Poulsbo (Jaroslav Kysela) [2125548]- KVM: x86: smm: preserve interrupt shadow in SMRAM (Maxim Levitsky) [2097144] - KVM: x86: SVM: don't save SVM state to SMRAM when VM is not long mode capable (Maxim Levitsky) [2097144] - KVM: x86: SVM: use smram structs (Maxim Levitsky) [2097144] - KVM: svm: drop explicit return value of kvm_vcpu_map (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 64 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram struct for 32 bit smram load/restore (Maxim Levitsky) [2097144] - KVM: x86: smm: use smram structs in the common code (Maxim Levitsky) [2097144] - KVM: x86: smm: add structs for KVM's smram layout (Maxim Levitsky) [2097144] - KVM: x86: smm: check for failures on smm entry (Maxim Levitsky) [2097144] - KVM: x86: do not go through ctxt->ops when emulating rsm (Maxim Levitsky) [2097144] - KVM: x86: move SMM exit to a new file (Maxim Levitsky) [2097144] - KVM: x86: move SMM entry to a new file (Maxim Levitsky) [2097144] - KVM: x86: start moving SMM-related functions to new files (Maxim Levitsky) [2097144] - bug: introduce ASSERT_STRUCT_OFFSET (Maxim Levitsky) [2097144] - KVM: x86: Rename and expose helper to detect if INIT/SIPI are allowed (Maxim Levitsky) [2097144] - KVM: x86: smm: number of GPRs in the SMRAM image depends on the image format (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after CR0 write (Maxim Levitsky) [2097144] - KVM: x86: emulator: update the emulation mode after rsm (Maxim Levitsky) [2097144] - KVM: x86: emulator: introduce emulator_recalc_and_set_mode (Maxim Levitsky) [2097144] - KVM: x86: emulator: em_sysexit should update ctxt->mode (Maxim Levitsky) [2097144] - KVM: x86: Bug the VM if the emulator accesses a non-existent GPR (Maxim Levitsky) [2097144] - KVM: x86: Reduce the number of emulator GPRs to '8' for 32-bit KVM (Maxim Levitsky) [2097144] - KVM: x86: Use 16-bit fields to track dirty/valid emulator GPRs (Maxim Levitsky) [2097144] - KVM: x86: Omit VCPU_REGS_RIP from emulator's _regs array (Maxim Levitsky) [2097144] - KVM: x86: Harden _regs accesses to guard against buggy input (Maxim Levitsky) [2097144] - KVM: x86: Grab regs_dirty in local 'unsigned long' (Maxim Levitsky) [2097144]- RDMA/bnxt_re: Fix endianness warning for req.pkey (Kamal Heib) [2142690] - RDMA/bnxt_re: Use bitmap_zalloc() when applicable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove dynamic pkey table (Kamal Heib) [2142690] - RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with pending cmd-bit" (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unneeded variable (Kamal Heib) [2142690] - RDMA/bnxt_re: Remove unsupported bnxt_re_modify_ah callback (Kamal Heib) [2142690] - RDMA/bnxt_re: Use helper function to set GUIDs (Kamal Heib) [2142690] - RDMA/bnxt_re: Check if the vlan is valid before reporting (Kamal Heib) [2142690] - RDMA/bnxt_re: Correct FRMR size calculation (Kamal Heib) [2142690] - RDMA/bnxt_re: Use GFP_KERNEL in non atomic context (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix FRMR issue with single page MR allocation (Kamal Heib) [2142690] - RDMA/bnxt_re: Fix query SRQ failure (Kamal Heib) [2142690] - RDMA/bnxt_re: Suppress unwanted error messages (Kamal Heib) [2142690] - RDMA/bnxt_re: Support multiple page sizes (Kamal Heib) [2142690] - RDMA/bnxt_re: Reduce the delay in polling for hwrm command completion (Kamal Heib) [2142690] - RDMA/bnxt_re: Use separate response buffer for stat_ctx_free (Kamal Heib) [2142690] - net/mlx5: Lag, Fix for loop when checking lag (Amir Tzin) [2112917] - net/mlx5e: Fix use-after-free when reverting termination table (Amir Tzin) [2112927] - net/mlx5: Fix uninitialized variable bug in outlen_write() (Amir Tzin) [2112927] - net/mlx5: E-switch, Fix duplicate lag creation (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Destroy legacy fdb table when needed (Amir Tzin) [2112927 2112917] - net/mlx5: DR, Fix uninitialized var warning (Amir Tzin) [2112927] - net/mlx5e: Offload rule only when all encaps are valid (Amir Tzin) [2112927] - net/mlx5: Fix sync reset event handler error flow (Amir Tzin) [2112927] - net/mlx5: E-Switch, Set correctly vport destination (Amir Tzin) [2112927] - net/mlx5: Fix handling of entry refcount when command is not issued to FW (Amir Tzin) [2112927] - net/mlx5: cmdif, Print info on any firmware cmd failure to tracepoint (Amir Tzin) [2112927] - net/mlx5: SF: Fix probing active SFs during driver probe phase (Amir Tzin) [2112927] - net/mlx5: Fix FW tracer timestamp calculation (Amir Tzin) [2112927] - net/mlx5: Do not query pci info while pci disabled (Amir Tzin) [2112927 2129249] - net/mlx5e: TC, Fix slab-out-of-bounds in parse_tc_actions (Amir Tzin) [2112927] - net/mlx5e: Clean up and fix error flows in mlx5e_alloc_rq (Amir Tzin) [2112927] - net/mlx5: DR, Fix the SMFS sync_steering for fast teardown (Amir Tzin) [2112927] - net/mlx5e: E-Switch, Fix comparing termination table instance (Amir Tzin) [2112927] - net/mlx5e: TC, Fix wrong rejection of packet-per-second policing (Amir Tzin) [2112927 2049622] - net/mlx5e: Fix tc acts array not to be dependent on enum order (Amir Tzin) [2112927] - net/mlx5e: Add missing sanity checks for max TX WQE size (Amir Tzin) [2112927] - net/mlx5: fw_reset: Don't try to load device in case PCI isn't working (Amir Tzin) [2112927] - net/mlx5: E-switch, Set to legacy mode if failed to change switchdev mode (Amir Tzin) [2112927 2112917] - net/mlx5: Allow async trigger completion execution on single CPU systems (Amir Tzin) [2112927] - net/mlx5: Bridge, verify LAG state when adding bond to bridge (Amir Tzin) [2112927] - net/mlx5: Fix crash during sync firmware reset (Amir Tzin) [2112927] - net/mlx5e: TC, Fix cloned flow attr instance dests are not zeroed (Amir Tzin) [2112927] - net/mlx5: Fix possible use-after-free in async command interface (Amir Tzin) [2112927] - net/mlx5: ASO, Create the ASO SQ with the correct timestamp format (Amir Tzin) [2112927 2049622] - net/mlx5e: Update restore chain id for slow path packets (Amir Tzin) [2112927] - net/mlx5e: Extend SKB room check to include PTP-SQ (Amir Tzin) [2112927] - net/mlx5: DR, Fix matcher disconnect error flow (Amir Tzin) [2112927] - net/mlx5: Wait for firmware to enable CRS before pci_restore_state (Amir Tzin) [2112927] - net/mlx5e: Do not increment ESN when updating IPsec ESN state (Amir Tzin) [2112927] - net/mlx5e: Fix calculations for ICOSQ size (Amir Tzin) [2112927] - net/mlx5: Fix spelling mistake "syndrom" -> "syndrome" (Amir Tzin) [2112927] - net/mlx5e: Fix a typo in mlx5e_xdp_mpwqe_is_full (Amir Tzin) [2112927] - RDMA/mlx5: Don't compare mkey tags in DEVX indirect mkey (Amir Tzin) [2112927] - RDMA/mlx5: Fix UMR cleanup on error flow of driver init (Amir Tzin) [2112927] - RDMA/mlx5: Rely on RoCE fw cap instead of devlink when setting profile (Amir Tzin) [2112927] - net/mlx5: Unlock on error in mlx5_sriov_enable() (Amir Tzin) [2112927] - net/mlx5e: Fix use after free in mlx5e_fs_init() (Amir Tzin) [2112927] - net/mlx5e: kTLS, Use _safe() iterator in mlx5e_tls_priv_tx_list_cleanup() (Amir Tzin) [2112927] - net/mlx5: unlock on error path in esw_vfs_changed_event_handler() (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix wrong tc flag used when set hw-tc-offload off (Amir Tzin) [2112927] - net/mlx5e: TC, Add missing policer validation (Amir Tzin) [2112927] - net/mlx5e: Fix wrong application of the LRO state (Amir Tzin) [2112927] - net/mlx5: Avoid false positive lockdep warning by adding lock_class_key (Amir Tzin) [2112927] - net/mlx5: Fix cmd error logging for manage pages cmd (Amir Tzin) [2112927] - net/mlx5: Disable irq when locking lag_lock (Amir Tzin) [2112927] - net/mlx5: Eswitch, Fix forwarding decision to uplink (Amir Tzin) [2112927 2150647] - net/mlx5: LAG, fix logic over MLX5_LAG_FLAG_NDEVS_READY (Amir Tzin) [2112927] - net/mlx5e: Properly disable vlan strip on non-UL reps (Amir Tzin) [2112927] - net/mlx5e: Allocate flow steering storage during uplink initialization (Amir Tzin) [2112927] - RDMA/mlx5: Use the proper number of ports (Amir Tzin) [2112927] - mlx5: do not use RT_TOS for IPv6 flowlabel (Amir Tzin) [2112927] - RDMA/mlx5: Add missing check for return value in get namespace flow (Amir Tzin) [2112927] - net/mlx5e: xsk: Discard unaligned XSK frames on striding RQ (Amir Tzin) [2112927] - net: devlink: convert reload command to take implicit devlink->lock (mlx5 hunk only) (Amir Tzin) [2112927] - devlink: Hold the instance lock in health callbacks (mlx5 hunk only) (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink health recovery callback (Amir Tzin) [2112927] - net/mlx5: Lock mlx5 devlink reload callbacks (Amir Tzin) [2112927] - net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload (Amir Tzin) [2112927] - net/mlx5e: kTLS, Dynamically re-size TX recycling pool (Amir Tzin) [2112927] - net/mlx5e: kTLS, Recycle objects of device-offloaded TLS TX connections (Amir Tzin) [2112927] - net/mlx5e: kTLS, Take stats out of OOO handler (Amir Tzin) [2112927] - net/mlx5e: kTLS, Introduce TLS-specific create TIS (Amir Tzin) [2112927] - net/mlx5e: Move mlx5e_init_l2_addr to en_main (Amir Tzin) [2112927] - net/mlx5e: Split en_fs ndo's and move to en_main (Amir Tzin) [2112927] - net/mlx5e: Separate mlx5e_set_rx_mode_work and move caller to en_main (Amir Tzin) [2112927] - net/mlx5e: Add mdev to flow_steering struct (Amir Tzin) [2112927] - net/mlx5e: Report flow steering errors with mdev err report API (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_flow_steering member of mlx5e_priv to pointer (Amir Tzin) [2112927] - net/mlx5e: Allocate VLAN and TC for featured profiles only (Amir Tzin) [2112927] - net/mlx5e: Make mlx5e_tc_table private (Amir Tzin) [2112927] - net/mlx5e: Convert mlx5e_tc_table member of mlx5e_flow_steering to pointer (Amir Tzin) [2112927] - net/mlx5e: TC, Support tc action api for police (Amir Tzin) [2112927] - net/mlx5e: TC, Separate get/update/replace meter functions (Amir Tzin) [2112927] - net/mlx5e: Add red and green counters for metering (Amir Tzin) [2112927] - net/mlx5e: TC, Allocate post meter ft per rule (Amir Tzin) [2112927] - net/mlx5: DR, Add support for flow metering ASO (Amir Tzin) [2112927] - net/mlx5: Fix driver use of uninitialized timeout (Amir Tzin) [2112927] - net/mlx5: DR, Fix SMFS steering info dump format (Amir Tzin) [2112927] - net/mlx5: Adjust log_max_qp to be 18 at most (Amir Tzin) [2112927] - net/mlx5e: Modify slow path rules to go to slow fdb (Amir Tzin) [2112927 2150647] - net/mlx5e: Fix calculations related to max MPWQE size (Amir Tzin) [2112927] - net/mlx5e: xsk: Account for XSK RQ UMRs when calculating ICOSQ size (Amir Tzin) [2112927] - net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS (Amir Tzin) [2112927] - net/mlx5e: TC, Fix post_act to not match on in_port metadata (Amir Tzin) [2112927] - net/mlx5e: Remove WARN_ON when trying to offload an unsupported TLS cipher/version (Amir Tzin) [2112927] - RDMA/mlx5: Rename the mkey cache variables and functions (Amir Tzin) [2112927] - RDMA/mlx5: Store in the cache mkeys instead of mrs (Amir Tzin) [2112927] - RDMA/mlx5: Store the number of in_use cache mkeys instead of total_mrs (Amir Tzin) [2112927] - RDMA/mlx5: Replace cache list with Xarray (Amir Tzin) [2112927] - RDMA/mlx5: Replace ent->lock with xa_lock (Amir Tzin) [2112927] - net/mlx5: CT: Remove warning of ignore_flow_level support for non PF (Amir Tzin) [2112927] - net/mlx5e: Add resiliency for PTP TX port timestamp (Amir Tzin) [2112927] - net/mlx5: Expose ts_cqe_metadata_size2wqe_counter (Amir Tzin) [2112927] - net/mlx5e: HTB, move htb functions to a new file (Amir Tzin) [2112927] - net/mlx5e: HTB, change functions name to follow convention (Amir Tzin) [2112927] - net/mlx5e: HTB, remove priv from htb function calls (Amir Tzin) [2112927] - net/mlx5e: HTB, hide and dynamically allocate mlx5e_htb structure (Amir Tzin) [2112927] - net/mlx5e: HTB, move stats and max_sqs to priv (Amir Tzin) [2112927] - net/mlx5e: HTB, move section comment to the right place (Amir Tzin) [2112927] - net/mlx5e: HTB, move ids to selq_params struct (Amir Tzin) [2112927] - net/mlx5e: HTB, reduce visibility of htb functions (Amir Tzin) [2112927] - net/mlx5e: Fix mqprio_rl handling on devlink reload (Amir Tzin) [2112927] - net/mlx5e: Report header-data split state through ethtool (Amir Tzin) [2112927] - RDMA/mlx5: Expose steering anchor to userspace (Amir Tzin) [2112927] - RDMA/mlx5: Refactor get flow table function (Amir Tzin) [2112927] - net/mlx5: fs, allow flow table creation with a UID (Amir Tzin) [2112927] - net/mlx5: fs, expose flow table ID to users (Amir Tzin) [2112927] - net/mlx5: Expose the ability to point to any UID from shared UID (Amir Tzin) [2112927] - net/mlx5e: Remove the duplicating check for striding RQ when enabling LRO (Amir Tzin) [2112927] - net/mlx5e: Move the LRO-XSK check to mlx5e_fix_features (Amir Tzin) [2112927] - net/mlx5e: Extend flower police validation (Amir Tzin) [2112927] - net/mlx5e: configure meter in flow action (Amir Tzin) [2112927 2150647 2049622] - net/mlx5e: Removed useless code in function (Amir Tzin) [2112927] - net/mlx5: Bridge, implement QinQ support (Amir Tzin) [2112927] - net/mlx5: Bridge, implement infrastructure for VLAN protocol change (Amir Tzin) [2112927] - net/mlx5: Bridge, extract VLAN push/pop actions creation (Amir Tzin) [2112927] - net/mlx5: Bridge, rename filter fg to vlan_filter (Amir Tzin) [2112927] - net/mlx5: Bridge, refactor groups sizes and indices (Amir Tzin) [2112927] - net/mlx5: debugfs, Add num of in-use FW command interface slots (Amir Tzin) [2112927] - net/mlx5: Expose vnic diagnostic counters for eswitch managed vports (Amir Tzin) [2112927 2150647 2049881] - net/mlx5: Use software VHCA id when it's supported (Amir Tzin) [2112927] - net/mlx5: Introduce ifc bits for using software vhca id (Amir Tzin) [2112927] - net/mlx5: Use the bitmap API to allocate bitmaps (Amir Tzin) [2112927] - devlink: Hold the instance lock in port_new / port_del callbacks (mlx5 hunks only) (Amir Tzin) [2112925] - net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5e_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register (Amir Tzin) [2112927] - net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register (Amir Tzin) [2112927 2150647] - net/mlx5: Use devl_ API for rate nodes destroy (Amir Tzin) [2112927 2150647] - net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter (Amir Tzin) [2112927 2150647] - net/mlx5: fix 32bit build (Amir Tzin) [2112927 2049622] - net/mlx5e: TC, Support offloading police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add flow_action to parse state (Amir Tzin) [2112927 2049622] - net/mlx5e: Add post meter table for flow metering (Amir Tzin) [2112927 2049622] - net/mlx5e: Add generic macros to use metadata register mapping (Amir Tzin) [2112927 2049622] - net/mlx5e: Get or put meter by the index of tc police action (Amir Tzin) [2112927 2049622] - net/mlx5e: Add support to modify hardware flow meter parameters (Amir Tzin) [2112927 2049622] - net/mlx5e: Prepare for flow meter offload if hardware supports it (Amir Tzin) [2112927 2049622] - net/mlx5: Implement interfaces to control ASO SQ and CQ (Amir Tzin) [2112927 2049622] - net/mlx5: Add support to create SQ and CQ for ASO (Amir Tzin) [2112927 2049622] - net/mlx5: E-switch: Change eswitch mode only via devlink command (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Remove dependency between sriov and eswitch mode (Amir Tzin) [2112927 2150647 2112917] - net/mlx5: E-switch, Introduce flag to indicate if fdb table is created (Amir Tzin) [2112927 2112917] - net/mlx5: E-switch, Introduce flag to indicate if vport acl namespace is created (Amir Tzin) [2112927 2112917] - net/mlx5: delete dead code in mlx5_esw_unlock() (Amir Tzin) [2112927] - net/mlx5: Delete ipsec_fs header file as not used (Amir Tzin) [2112927] - net/mlx5: Add bits and fields to support enhanced CQE compression (Amir Tzin) [2112927] - net/mlx5: Remove not used MLX5_CAP_BITS_RW_MASK (Amir Tzin) [2112927] - net/mlx5: group fdb cleanup to single function (Amir Tzin) [2112927] - net/mlx5: Add support EXECUTE_ASO action for flow entry (Amir Tzin) [2112927 2049622] - net/mlx5: Add HW definitions of vport debug counters (Amir Tzin) [2112927] - net/mlx5: Add IFC bits and enums for flow meter (Amir Tzin) [2112927 2049622] - RDMA/mlx5: Support handling of modify-header pattern ICM area (Amir Tzin) [2112927] - net/mlx5: Manage ICM of type modify-header pattern (Amir Tzin) [2112927] - net/mlx5: Introduce header-modify-pattern ICM properties (Amir Tzin) [2112927] - RDMA/mlx5: Add a umr recovery flow (Amir Tzin) [2112927] - net/mlx5e: Ring the TX doorbell on DMA errors (Amir Tzin) [2112925] - net/mlx5e: Fix capability check for updating vnic env counters (Amir Tzin) [2112925] - net/mlx5: Lag, correct get the port select mode str (Amir Tzin) [2112925] - net/mlx5e: Fix enabling sriov while tc nic rules are offloaded (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in RX (Amir Tzin) [2112925] - net/mlx5e: kTLS, Fix build time constant test in TX (Amir Tzin) [2112925] - net/mlx5: Lag, decouple FDB selection and shared FDB (Amir Tzin) [2112925] - net/mlx5: TC, allow offload from uplink to other PF's VF (Amir Tzin) [2112925] - mellanox: mlx5: avoid uninitialized variable warning with gcc-12 (Amir Tzin) [2112925] - net/mlx5: E-Switch, pair only capable devices (Amir Tzin) [2112925 2150647] - Revert "net/mlx5e: Allow relaxed ordering over VFs" (Amir Tzin) [2112925] - net/mlx5: Fix mlx5_get_next_dev() peer device matching (Amir Tzin) [2112925] - RDMA/mlx5: Remove duplicate pointer assignment in mlx5_ib_alloc_implicit_mr() (Amir Tzin) [2112925] - net/mlx5: fix multiple definitions of mlx5_lag_mpesw_init / mlx5_lag_mpesw_cleanup (Amir Tzin) [2112925] - net/mlx5: Support multiport eswitch mode (Amir Tzin) [2112925 2150647] - net/mlx5: Remove unused argument (Amir Tzin) [2112925] - net/mlx5: Lag, refactor lag state machine (Amir Tzin) [2112925] - net/mlx5e: Add XDP SQs to uplink representors steering tables (Amir Tzin) [2112925] - net/mlx5e: Allow relaxed ordering over VFs (Amir Tzin) [2112925] - net/mlx5e: Support partial GSO for tunnels over vlans (Amir Tzin) [2112925] - net/mlx5e: IPoIB, Improve ethtool rxnfc callback structure in IPoIB (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for reps structures (Amir Tzin) [2112925] - net/mlx5e: Allocate virtually contiguous memory for VLANs list (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in pci_irq.c (Amir Tzin) [2112925] - net/mlx5: Allocate virtually contiguous memory in vport.c (Amir Tzin) [2112925] - net/mlx5: Inline db alloc API function (Amir Tzin) [2112925] - net/mlx5: Add last command failure syndrome to debugfs (Amir Tzin) [2112925] - net/mlx5: sparse: error: context imbalance in 'mlx5_vf_get_core_dev' (Amir Tzin) [2112925] - net/mlx5: Expose mlx5_sriov_blocking_notifier_register / unregister APIs (Amir Tzin) [2112925] - net/mlx5: Lag, add debugfs to query hardware lag state (Amir Tzin) [2112925] - net/mlx5: Lag, use buckets in hash mode (Amir Tzin) [2112925] - net/mlx5: Lag, refactor dmesg print (Amir Tzin) [2112925] - net/mlx5: Support devices with more than 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, use actual number of lag ports (Amir Tzin) [2112925] - net/mlx5: Lag, use hash when in roce lag on 4 ports (Amir Tzin) [2112925] - net/mlx5: Lag, support single FDB only on 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, store number of ports inside lag object (Amir Tzin) [2112925] - net/mlx5: Lag, filter non compatible devices (Amir Tzin) [2112925] - net/mlx5: Lag, use lag lock (Amir Tzin) [2112925] - net/mlx5: Lag, move E-Switch prerequisite check into lag code (Amir Tzin) [2112925] - net/mlx5: devcom only supports 2 ports (Amir Tzin) [2112925] - net/mlx5: Lag, expose number of lag ports (Amir Tzin) [2112925] - net/mlx5: Increase FW pre-init timeout for health recovery (Amir Tzin) [2112925] - net/mlx5: Add exit route when waiting for FW (Amir Tzin) [2112925] - net/mlx5e: Use XFRM state direction instead of flags (Amir Tzin) [2112925] - net/mlx5: Allow future addition of IPsec object modifiers (Amir Tzin) [2112925] - net/mlx5: Don't perform lookup after already known sec_path (Amir Tzin) [2112925] - net/mlx5: Cleanup XFRM attributes struct (Amir Tzin) [2112925] - net/mlx5: Remove not-supported ICV length (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec capabilities logic (Amir Tzin) [2112925] - net/mlx5: Don't advertise IPsec netdev support for non-IPsec device (Amir Tzin) [2112925] - net/mlx5: Make sure that no dangling IPsec FS pointers exist (Amir Tzin) [2112925] - net/mlx5: Clean IPsec FS add/delete rules (Amir Tzin) [2112925] - net/mlx5: Simplify HW context interfaces by using SA entry (Amir Tzin) [2112925] - net/mlx5: Remove indirections from esp functions (Amir Tzin) [2112925] - net/mlx5: Merge various control path IPsec headers into one file (Amir Tzin) [2112925] - net/mlx5: Remove useless validity check (Amir Tzin) [2112925] - net/mlx5: Store IPsec ESN update work in XFRM state (Amir Tzin) [2112925] - net/mlx5: Reduce useless indirection in IPsec FS add/delete flows (Amir Tzin) [2112925] - net/mlx5: Don't hide fallback to software IPsec in FS code (Amir Tzin) [2112925] - net/mlx5: Check IPsec TX flow steering namespace in advance (Amir Tzin) [2112925] - net/mlx5: Simplify IPsec flow steering init/cleanup functions (Amir Tzin) [2112925] - net/mlx5: fs, an FTE should have no dests when deleted (Amir Tzin) [2112925] - net/mlx5: fs, call the deletion function of the node (Amir Tzin) [2112925] - net/mlx5: fs, delete the FTE when there are no rules attached to it (Amir Tzin) [2112925] - net/mlx5: fs, do proper bookkeeping for forward destinations (Amir Tzin) [2112925] - net/mlx5: fs, add unused destination type (Amir Tzin) [2112925] - net/mlx5: fs, jump to exit point and don't fall through (Amir Tzin) [2112925] - net/mlx5: fs, refactor software deletion rule (Amir Tzin) [2112925] - net/mlx5: fs, split software and IFC flow destination definitions (Amir Tzin) [2112925] - net/mlx5e: TC, set proper dest type (Amir Tzin) [2112925] - net/mlx5e: Remove unused mlx5e_dcbnl_build_rep_netdev function (Amir Tzin) [2112925] - net/mlx5e: Drop error CQE handling from the XSK RX handler (Amir Tzin) [2112925] - net/mlx5: Print initializing field in case of timeout (Amir Tzin) [2112925] - net/mlx5: Delete redundant default assignment of runtime devlink params (Amir Tzin) [2112925] - net/mlx5: Remove useless kfree (Amir Tzin) [2112925] - net/mlx5: use kvfree() for kvzalloc() in mlx5_ct_fs_smfs_matcher_create (Amir Tzin) [2112925] - RDMA/mlx5: Clean UMR QP type flow from mlx5_ib_post_send() (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update xlt (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to update MR pas (Amir Tzin) [2112925] - RDMA/mlx5: Move creation and free of translation tables to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to rereg pd access (Amir Tzin) [2112925] - RDMA/mlx5: Use mlx5_umr_post_send_wait() to revoke MRs (Amir Tzin) [2112925] - RDMA/mlx5: Introduce mlx5_umr_post_send_wait() (Amir Tzin) [2112925] - RDMA/mlx5: Expose wqe posting helpers outside of wr.c (Amir Tzin) [2112925] - RDMA/mlx5: Simplify get_umr_update_access_mask() (Amir Tzin) [2112925] - RDMA/mlx5: Move mkey ctrl segment logic to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Move umr checks to umr.h (Amir Tzin) [2112925] - RDMA/mlx5: Move init and cleanup of UMR to umr.c (Amir Tzin) [2112925] - RDMA/mlx5: Fix flow steering egress flow (Amir Tzin) [2112925] - mlx5, xsk: Diversify return values from xsk_wakeup call paths (Amir Tzin) [2112925] - net/mlx5: Remove not-implemented IPsec capabilities (Amir Tzin) [2112925] - net/mlx5: Remove ipsec_ops function table (Amir Tzin) [2112925] - net/mlx5: Reduce kconfig complexity while building crypto support (Amir Tzin) [2112925] - net/mlx5: Move IPsec file to relevant directory (Amir Tzin) [2112925] - net/mlx5: Remove not-needed IPsec config (Amir Tzin) [2112925] - net/mlx5: Align flow steering allocation namespace to common style (Amir Tzin) [2112925] - net/mlx5: Unify device IPsec capabilities check (Amir Tzin) [2112925] - net/mlx5: Remove useless IPsec device checks (Amir Tzin) [2112925] - net/mlx5: Remove ipsec vs. ipsec offload file separation (Amir Tzin) [2112925] - RDMA/mlx5: Drop crypto flow steering API (Amir Tzin) [2112925] - RDMA/mlx5: Delete never supported IPsec flow action (Amir Tzin) [2112925] - net/mlx5: Remove FPGA ipsec specific statistics (Amir Tzin) [2112925] - net/mlx5: Remove XFRM no_trailer flag (Amir Tzin) [2112925] - net/mlx5: Remove not-used IDA field from IPsec struct (Amir Tzin) [2112925] - net/mlx5: Delete metadata handling logic (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA IPsec support (Amir Tzin) [2112925] - net/mlx5: Cleanup kTLS function names and their exposure (Amir Tzin) [2112925] - net/mlx5: Remove tls vs. ktls separation as it is the same (Amir Tzin) [2112925] - net/mlx5: Remove indirection in TLS build (Amir Tzin) [2112925] - net/mlx5: Reliably return TLS device capabilities (Amir Tzin) [2112925] - net/mlx5_fpga: Drop INNOVA TLS support (Amir Tzin) [2112925] - ipv6: Use ipv6_only_sock() helper in condition (mlx5 hunk only). (Amir Tzin) [2112925] - Revert "stmmac/intel: mark driver as tech preview" (Mark Salter) [2122230] - net: stmmac: Fix queue statistics reading (Mark Salter) [2122230] - stmmac: intel: Update PCH PTP clock rate from 200MHz to 204.8MHz (Mark Salter) [2122230] - net: stmmac: power up/down serdes in stmmac_open/release (Mark Salter) [2122230] - stmmac: intel: Simplify intel_eth_pci_remove() (Mark Salter) [2122230] - net: stmmac: work around sporadic tx issue on link-up (Mark Salter) [2122230] - stmmac: intel: Add a missing clk_disable_unprepare() call in intel_eth_pci_remove() (Mark Salter) [2122230] - net: phylink: fix SGMII inband autoneg enable (Mark Salter) [2122230] - net: phylink: fix NULL pl->pcs dereference during phylink_pcs_poll_start (Mark Salter) [2122230] - net: phylink: disable PCS polling over major configuration (Mark Salter) [2122230] - net: phylink: remove pcs_ops member (Mark Salter) [2122230] - net: pcs: xpcs: depends on PHYLINK in Kconfig (Mark Salter) [2122230] - net: phylink: add QSGMII support to phylink_mii_c22_pcs_encode_advertisement() (Mark Salter) [2122230] - net: stmmac: make mdio register skips PHY scanning for fixed-link (Mark Salter) [2122230] - stmmac: intel: add phy-mode and fixed-link ACPI _DSD setting support (Mark Salter) [2122230] - net: pcs: xpcs: add CL37 1000BASE-X AN support (Mark Salter) [2122230] - stmmac: intel: prepare to support 1000BASE-X phy interface setting (Mark Salter) [2122230] - net: make xpcs_do_config to accept advertising for pcs-xpcs and sja1105 (Mark Salter) [2122230] - net: pcs: xpcs: propagate xpcs_read error to xpcs_get_state_c37_sgmii (Mark Salter) [2122230] - net: stmmac: remove redunctant disable xPCS EEE call (Mark Salter) [2122230] - net: stmmac: fix dma queue left shift overflow issue (Mark Salter) [2122230] - net: stmmac: switch to use interrupt for hw crosstimestamping (Mark Salter) [2122230] - net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow (Mark Salter) [2122230] - net: stmmac: fix pm runtime issue in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: dwc-qos: Disable split header for Tegra194 (Mark Salter) [2122230] - stmmac: intel: Fix an error handling path in intel_eth_pci_probe() (Mark Salter) [2122230] - stmmac: intel: Add RPL-P PCI ID (Mark Salter) [2122230] - net: stmmac: use dev_err_probe() for reporting mdio bus registration failure (Mark Salter) [2122230] - net: stmmac: remove unused get_addr() callback (Mark Salter) [2122230] - net: pcs: pcs-xpcs: Convert to mdiobus_c45_read (Mark Salter) [2122230] - net: phylink: Convert to mdiobus_c45_{read|write} (Mark Salter) [2122230] - net: stmmac: stmmac_main: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: phylink: remove phylink_helper_basex_speed() (Mark Salter) [2122230] - net: phylink: remove phylink_set_10g_modes() (Mark Salter) [2122230] - net: stmmac: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Mark Salter) [2122230] - net: stmmac: fix missing pci_disable_device() on error in stmmac_pci_probe() (Mark Salter) [2122230] - net: stmmac: disable Split Header (SPH) for Intel platforms (Mark Salter) [2122230] - net: stmmac: Use readl_poll_timeout_atomic() in atomic state (Mark Salter) [2122230] - net: stmmac: Fix unset max_speed difference between DT and non-DT platforms (Mark Salter) [2122230] - stmmac: intel: Add ADL-N PCI ID (Mark Salter) [2122230] - net: stmmac: switch no PTP HW support message to info level (Mark Salter) [2122230] - net: phylink: remove phylink_set_pcs() (Mark Salter) [2122230] - stmmac: intel: Enable 2.5Gbps for Intel AlderLake-S (Mark Salter) [2122230] - net: phylink: remove phylink_config's pcs_poll (Mark Salter) [2122230] - net: phylink: use legacy_pre_march2020 (Mark Salter) [2122230] - net: phylink: add legacy_pre_march2020 indicator (Mark Salter) [2122230] - net: stmmac: optimize locking around PTP clock reads (Mark Salter) [2122230] - net: stmmac: use .mac_select_pcs() interface (Mark Salter) [2122230] - net: stmmac: convert to phylink_generic_validate() (Mark Salter) [2122230] - net: stmmac: remove phylink_config.pcs_poll usage (Mark Salter) [2122230] - net: stmmac/xpcs: convert to pcs_validate() (Mark Salter) [2122230] - net: convert users of bitmap_foo() to linkmode_foo() (Mark Salter) [2122230] - net: phylink: add pcs_validate() method (Mark Salter) [2122230] - net: phylink: add mac_select_pcs() method to phylink_mac_ops (Mark Salter) [2122230] - net: phylink: tidy up disable bit clearing (Mark Salter) [2122230] - net: phylink: handle NA interface mode in phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phylink: Add helpers for c22 registers without MDIO (Mark Salter) [2122230] - net: phylink: add 1000base-KX to phylink_caps_to_linkmodes() (Mark Salter) [2122230] - net: phylink: add generic validate implementation (Mark Salter) [2122230] - net: phylink: use supported_interfaces for phylink validation (Mark Salter) [2122230] - net: phylink: add MAC phy_interface_t bitmap (Mark Salter) [2122230] - net: phy: add phy_interface_t bitmap support (Mark Salter) [2122230] - net: phylink: Convert some users of mdiobus_* to mdiodev_* (Mark Salter) [2122230] - net: phylink: use mdiobus_modify_changed() helper (Mark Salter) [2122230] - net: mdio: add mdiobus_modify_changed() (Mark Salter) [2122230] - net: phylink: add phylink_set_10g_modes() helper (Mark Salter) [2122230] - net: stmmac: fill in supported_interfaces (Mark Salter) [2122230] - net: stmmac: convert to phylink_get_linkmodes() (Mark Salter) [2122230] - net: xpcs: add support for retrieving supported interface modes (Mark Salter) [2122230] - net: mdio: Add helper functions for accessing MDIO devices (Mark Salter) [2122230] - net: stmmac: fix return value of __setup handler (Mark Salter) [2122230] - net: stmmac: only enable DMA interrupts when ready (Mark Salter) [2122230] - net: stmmac: ensure PTP time register reads are consistent (Mark Salter) [2122230] - net: stmmac: dump gmac4 DMA registers correctly (Mark Salter) [2122230] - net: stmmac: properly handle with runtime pm in stmmac_dvr_remove() (Mark Salter) [2122230] - net: stmmac: skip only stmmac_ptp_register when resume from suspend (Mark Salter) [2122230] - drivers/net/ethernet: clean up mis-targeted comments (Mark Salter) [2122230] - net: stmmac: configure PTP clock source prior to PTP initialization (Mark Salter) [2122230] - net: stmmac: reduce unnecessary wakeups from eee sw timer (Mark Salter) [2122230] - net: stmmac: remove unused members in struct stmmac_priv (Mark Salter) [2122230] - net: stmmac: Fix "Unbalanced pm_runtime_enable!" warning (Mark Salter) [2122230] - net: stmmac: add tc flower filter for EtherType matching (Mark Salter) [2122230] - net: stmmac: bump tc when get underflow error from DMA descriptor (Mark Salter) [2122230] - stmmac: remove ethtool driver version info (Mark Salter) [2122230] - net: stmmac: Calculate CDC error only once (Mark Salter) [2122230] - net: stmmac: ptp: fix potentially overflowing expression (Mark Salter) [2122230] - net: stmmac: fix tc flower deletion for VLAN priority Rx steering (Mark Salter) [2122230] - net: stmmac: Avoid DMA_CHAN_CONTROL write if no Split Header support (Mark Salter) [2122230] - net: stmmac: Disable Tx queues when reconfiguring the interface (Mark Salter) [2122230] - net: phylink: Force retrigger in case of latched link-fail indicator (Mark Salter) [2122230] - net: phylink: Force link down and retrigger resolve on interface change (Mark Salter) [2122230] - net: stmmac: retain PTP clock time during SIOCSHWTSTAMP ioctls (Mark Salter) [2122230] - stmmac_pci: Fix underflow size in stmmac_rx (Mark Salter) [2122230] - net: stmmac: Fix signed/unsigned wreckage (Mark Salter) [2122230] - net: stmmac: allow a tc-taprio base-time of zero (Mark Salter) [2122230] - ethernet: stmmac: use eth_hw_addr_set() (Mark Salter) [2122230] - net: phylink: Support disabling autonegotiation for PCS (Mark Salter) [2122230] - net: stmmac: fix off-by-one error in sanity check (Mark Salter) [2122230] - net: stmmac: fix gcc-10 -Wrestrict warning (Mark Salter) [2122230] - net: phylink: don't call netif_carrier_off() with NULL netdev (Mark Salter) [2122230] - net: stmmac: Fix E2E delay mechanism (Mark Salter) [2122230] - net: stmmac: add support for dwmac 3.40a (Mark Salter) [2122230] - net: stmmac: fix get_hw_feature() on old hardware (Mark Salter) [2122230] - net: stmmac: trigger PCS EEE to turn off on link down (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect steps on disable EEE (Mark Salter) [2122230] - net: pcs: xpcs: fix incorrect CL37 AN sequence (Mark Salter) [2122230] - net: stmmac: fix EEE init issue when paired with EEE capable PHYs (Mark Salter) [2122230] - net: stmmac: allow CSR clock of 300MHz (Mark Salter) [2122230] - net: stmmac: platform: fix build warning when with !CONFIG_PM_SLEEP (Mark Salter) [2122230] - net: stmmac: fix system hang caused by eee_ctrl_timer during suspend/resume (Mark Salter) [2122230] - net: stmmac: fix MAC not working when system resume back with WoL active (Mark Salter) [2122230] - net: phylink: add suspend/resume support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue irq statistic support (Mark Salter) [2122230] - net: stmmac: add ethtool per-queue statistic framework (Mark Salter) [2122230] - net: stmmac: fix INTR TBU status affecting irq count statistic (Mark Salter) [2122230] - net: pcs: xpcs: Add Pause Mode support for SGMII and 2500BaseX (Mark Salter) [2122230] - net: stmmac: fix kernel panic due to NULL pointer dereference of plat->est (Mark Salter) [2122230] - net: pcs: xpcs: fix error handling on failed to allocate memory (Mark Salter) [2122230] - net: stmmac: add est_irq_status callback function for GMAC 4.10 and 5.10 (Mark Salter) [2122230] - net: stmmac: ptp: update tas basetime after ptp adjust (Mark Salter) [2122230] - net: stmmac: add mutex lock to protect est parameters (Mark Salter) [2122230] - net: stmmac: separate the tas basetime calculation function (Mark Salter) [2122230] - net: stmmac: Terminate FPE workqueue in suspend (Mark Salter) [2122230] - stmmac: intel: set PCI_D3hot in suspend (Mark Salter) [2122230] - stmmac: intel: Enable PHY WOL option in EHL (Mark Salter) [2122230] - net: stmmac: option to enable PHY WOL with PMT enabled (Mark Salter) [2122230] - net: stmmac: remove redundant continue statement (Mark Salter) [2122230] - stmmac: intel: fix wrong kernel-doc (Mark Salter) [2122230] - stmmac: intel: move definitions to dwmac-intel header file (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_do_config and xpcs_link_up (Mark Salter) [2122230] - net: pcs: xpcs: also ignore phy id if it's all ones (Mark Salter) [2122230] - net: pcs: xpcs: add support for sgmii with no inband AN (Mark Salter) [2122230] - net: pcs: xpcs: move register bit descriptions to a header file (Mark Salter) [2122230] - net: stmmac: reduce indentation when calling stmmac_xpcs_setup (Mark Salter) [2122230] - net: stmmac: reverse Christmas tree notation in stmmac_xpcs_setup (Mark Salter) [2122230] - net: pcs: xpcs: rename mdio_xpcs_args to dw_xpcs (Mark Salter) [2122230] - net: phylink: Refactor phylink_of_phy_connect() (Mark Salter) [2122230] - net: phylink: introduce phylink_fwnode_phy_connect() (Mark Salter) [2122230] - net: phy: Introduce phy related fwnode functions (Mark Salter) [2122230] - net: phy: Introduce fwnode_mdio_find_device() (Mark Salter) [2122230] - net: stmmac: Fix unused values warnings (Mark Salter) [2122230] - net: stmmac: Fix mixed enum type warning (Mark Salter) [2122230] - net: stmmac: Fix missing { } around two statements in an if statement (Mark Salter) [2122230] - net: stmmac: explicitly deassert GMAC_AHB_RESET (Mark Salter) [2122230] - net: stmmac: platform: use optional clk/reset get APIs (Mark Salter) [2122230] - net: stmmac: fix NPD with phylink_set_pcs if there is no MDIO bus (Mark Salter) [2122230] - net: stmmac: enable Intel mGbE 2.5Gbps link speed (Mark Salter) [2122230] - net: pcs: add 2500BASEX support for Intel mGbE controller (Mark Salter) [2122230] - net: stmmac: split xPCS setup from mdio register (Mark Salter) [2122230] - net: pcs: xpcs: convert to phylink_pcs_ops (Mark Salter) [2122230] - net: pcs: xpcs: convert to mdio_device (Mark Salter) [2122230] - net: pcs: xpcs: use mdiobus_c45_addr in xpcs_{read,write} (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_probe (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_config_eee (Mark Salter) [2122230] - net: pcs: xpcs: export xpcs_validate (Mark Salter) [2122230] - net: pcs: xpcs: make the checks related to the PHY interface mode stateless (Mark Salter) [2122230] - net: pcs: xpcs: delete shim definition for mdio_xpcs_get_ops() (Mark Salter) [2122230] - net: pcs: xpcs: there is only one PHY ID (Mark Salter) [2122230] - net: stmmac: enable platform specific safety features (Mark Salter) [2122230] - net: stmmac: the XPCS obscures a potential "PHY not found" error (Mark Salter) [2122230] - net: stmmac: Add callbacks for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230] - net: pcs: Introducing support for DWC xpcs Energy Efficient Ethernet (Mark Salter) [2122230]- xfs: reserve quota for dir expansion when linking/unlinking files (Bill O'Donnell) [2086880] - scsi: storvsc: Fix swiotlb bounce buffer leak in confidential VM (Emanuele Giuseppe Esposito) [2150659] - ACPICA: Fix operand resolution (Mark Langsdorf) [2156144] - driver core: Add missing kernel doc for device::msi_lock (Myron Stowe) [2158839] - PCI/MSI: Protect msi_desc::masked for multi-MSI (Myron Stowe) [2158839] - KVM: arm64: Don't retrieve memory slot again in page fault handler (Gavin Shan) [2161161] - fs: allow cross-vfsmount reflink/dedupe (Andrey Albershteyn) [2086200] - powerpc/hv-gpci: Fix hv_gpci event list (Mamatha Inamdar) [2161258] - powerpc: declare unmodified attribute_group usages const (Mamatha Inamdar) [2161258] - drm/amd: Delay removal of the firmware framebuffer (Michel Dänzer) [2162039] - cpuidle: Add cpu_idle_miss trace event (Mark Langsdorf) [2122312] - cpuidle: haltpoll: Add trace points for guest_halt_poll_ns grow/shrink (Mark Langsdorf) [2122312] - efi/cper, cxl: Decode CXL Error Log (Lenny Szubowicz) [2143733] - efi/cper, cxl: Decode CXL Protocol Error Section (Lenny Szubowicz) [2143733] - efi: cper: Add support for printing Firmware Error Record Reference (Lenny Szubowicz) [2143733] - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu (Wander Lairson Costa) [2152927] {CVE-2022-3564} - drm/i915: Fix CFI violations in gt_sysfs (Jocelyn Falempe) [2154880] - NFS: Clear the file access cache upon login (Benjamin Coddington) [2050832] - NFS: don't store 'struct cred *' in struct nfs_access_entry (Benjamin Coddington) [2050832] - NFS: pass cred explicitly for access tests (Benjamin Coddington) [2050832] - NFS: change nfs_access_get_cached to only report the mask (Benjamin Coddington) [2050832] - init: Initialize noop_backing_dev_info early (Nico Pache) [2160228] - mm: vmscan: make rotations a secondary factor in balancing anon vs file (Nico Pache) [2160228] - writeback: Fix inode->i_io_list not be protected by inode->i_lock error (Nico Pache) [2160228] - mm: vmscan: fix extreme overreclaim and swap floods (Nico Pache) [2160228] - mm/page_alloc: ensure kswapd doesn't accidentally go to sleep (Nico Pache) [2160228] - mm/page_io: count submission time as thrashing delay for delayacct (Nico Pache) [2160228] - delayacct: support re-entrance detection of thrashing accounting (Nico Pache) [2160228] - filemap: make the accounting of thrashing more consistent (Nico Pache) [2160228] - writeback: don't warn on an unregistered BDI in __mark_inode_dirty (Nico Pache) [2160228] - s390/dasd: fix no record found for raw_track_access (Tobias Huschle) [2161270] - crypto: testmgr - disallow certain DRBG hash functions in FIPS mode (Vladis Dronov) [2152133] - dmaengine: idxd: Fix crc_val field for completion record (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make read buffer sysfs attributes invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Make max batch size attributes in sysfs invisible for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not call DMX TX callbacks during workqueue disable (Jerry Snitselaar) [2144375] - dmaengine: idxd: Prevent use after free on completion memory (Jerry Snitselaar) [2144375] - dmaengine: idxd: Let probe fail when workqueue cannot be enabled (Jerry Snitselaar) [2144375] - dmaengine: idxd: Fix max batch size for Intel IAA (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent batch descriptor processing (Jerry Snitselaar) [2144375] - dmanegine: idxd: reformat opcap output to match bitmap_parse() input (Jerry Snitselaar) [2144375] - dmaengine: idxd: add configuration for concurrent work descriptor processing (Jerry Snitselaar) [2144375] - dmaengine: idxd: add WQ operation cap restriction support (Jerry Snitselaar) [2144375] - dmaengine: idxd: convert ats_dis to a wq flag (Jerry Snitselaar) [2144375] - dmaengine: idxd: track enabled workqueues in bitmap (Jerry Snitselaar) [2144375] - dmaengine: idxd: Set wq state to disabled in idxd_wq_disable_cleanup() (Jerry Snitselaar) [2144375] - dmaengine: idxd: Do not enable user type Work Queue without Shared Virtual Addressing (Jerry Snitselaar) [2144375] - dmaengine: idxd: fix RO device state error after been disabled/reset (Jerry Snitselaar) [2144375] - dmaengine: idxd: avoid deadlock in process_misc_interrupts() (Jerry Snitselaar) [2144375] - KVM: x86: nSVM: implement nested LBR virtualization (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: correctly virtualize LBR msrs when L2 is running (Emanuele Giuseppe Esposito) [2155149] - kvm: x86: SVM: use vmcb* instead of svm->vmcb where it makes sense (Emanuele Giuseppe Esposito) [2155149] - KVM: x86: nSVM: implement nested VMLOAD/VMSAVE (Emanuele Giuseppe Esposito) [2155149] - eth: octeon: fix build after netif_napi_add() changes (Íñigo Huguet) [2152918] - net: drop the weight argument from netif_napi_add (Íñigo Huguet) [2152918] - net: remove netif_tx_napi_add() (Íñigo Huguet) [2152918] - ipoib: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - IB/hfi1: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - crypto: caam/qi2 - switch to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - can: can-dev: move to netif_napi_add_weight() (Íñigo Huguet) [2152918] - net: virtio: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - r8152: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - eth: switch to netif_napi_add_weight() (Íñigo Huguet) [2152918] - mt76: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - net: move snowflake callers to netif_napi_add_tx_weight() (Íñigo Huguet) [2152918] - net: switch to netif_napi_add_tx() (Íñigo Huguet) [2152918] - can: m_can: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove remaining copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: benet: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: atlantic: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: smsc: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - eth: remove copies of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2152918] - netdev: reshuffle netif_napi_add() APIs to allow dropping weight (Íñigo Huguet) [2152918] - ipv6: raw: Deduct extension header length in rawv6_push_pending_frames (Hangbin Liu) [2162124] {CVE-2023-0394} - netfilter: conntrack: handle tcp challenge acks during connection reuse (Florian Westphal) [2158726] - act_mirred: use the backlog for nested calls to mirred ingress (Davide Caratti) [2131339] {CVE-2022-4269} - net/sched: act_mirred: better wording on protection against excessive stack growth (Davide Caratti) [2131339] - xfs: add selinux labels to whiteout inodes (Andrey Albershteyn) [2094060] - tdx: enable TDX attestation driver (Wander Lairson Costa) [2076748] - selftests/tdx: Test TDX attestation GetReport support (Wander Lairson Costa) [2076748] - virt: Add TDX guest driver (Wander Lairson Costa) [2076748] - x86/tdx: Add a wrapper to get TDREPORT0 from the TDX Module (Wander Lairson Costa) [2076748] - proc: proc_skip_spaces() shouldn't think it is working on C strings (Wander Lairson Costa) [2152572] {CVE-2022-4378} - proc: avoid integer type confusion in get_proc_long (Wander Lairson Costa) [2152572] {CVE-2022-4378} - NFSv4.2: Update mode bits after ALLOCATE and DEALLOCATE (Jeffrey Layton) [2127153] - NFS: nfsiod should not block forever in mempool_alloc() (Jeffrey Layton) [2127153] - NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly (Benjamin Coddington) [2061259] - NFSv4.1: Don't decrease the value of seq_nr_highest_sent (Benjamin Coddington) [2061259]- uas: ignore UAS for Thinkplus chips (Torez Smith) [2113004] - usb-storage: Add Hiksemi USB3-FW to IGNORE_UAS (Torez Smith) [2113004] - thunderbolt: Explicitly reset plug events delay back to USB4 spec value (Torez Smith) [2113004] - USB: serial: option: add Quectel BG95 0x0203 composition (Torez Smith) [2113004] - thunderbolt: Add support for Intel Maple Ridge single port controller (Torez Smith) [2113004] - USB: core: Fix RST error in hub.c (Torez Smith) [2113004] - kunit: fix Kconfig for build-in tests USB4 and Nitro Enclaves (Torez Smith) [2113004] - usb: storage: Add ASUS <0x0b05:0x1932> to IGNORE_UAS (Torez Smith) [2113004] - USB: serial: cp210x: add Decagon UCA device id (Torez Smith) [2113004] - USB: core: Prevent nested device-reset calls (Torez Smith) [2113004] - usb: typec: Remove retimers properly (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id (Torez Smith) [2113004] - USB: serial: option: add support for OPPO R11 diag port (Torez Smith) [2113004] - xhci: Add grace period after xHC start to prevent premature runtime suspend. (Torez Smith) [2113004] - xhci: Fix null pointer dereference in remove if xHC has only one roothub (Torez Smith) [2113004] - USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020) (Torez Smith) [2113004] - usb: xhci-mtk: fix bandwidth release issue (Torez Smith) [2113004] - usb: xhci-mtk: relax TT periodic bandwidth allocation (Torez Smith) [2113004] - usb: typec: altmodes/displayport: correct pin assignment for UFP receptacles (Torez Smith) [2113004] - usb: typec: intel_pmc_mux: Add new ACPI ID for Meteor Lake IOM device (Torez Smith) [2113004] - usb-storage: Add ignore-residue quirk for NXP PN7462AU (Torez Smith) [2113004] - usb: typec: tcpm: Return ENOTSUPP for power supply prop writes (Torez Smith) [2113004] - thunderbolt: Check router generation before connecting xHCI (Torez Smith) [2113004] - thunderbolt: Use the actual buffer in tb_async_error() (Torez Smith) [2113004] - USB: usbsevseg: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - dt-bindings: usb: Add binding for TI USB8041 hub controller (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add bootloader support (Torez Smith) [2113004] - usb: typec: ucsi: stm32g0: add support for stm32g0 controller (Torez Smith) [2113004] - dt-bindings: usb: typec: add bindings for stm32g0 controller (Torez Smith) [2113004] - usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion (Torez Smith) [2113004] - usb: typec: retimer: Add missing id check in match callback (Torez Smith) [2113004] - USB: xhci: Fix comment typo (Torez Smith) [2113004] - usb/typec/tcpm: fix repeated words in comments (Torez Smith) [2113004] - usb/misc: fix repeated words in comments (Torez Smith) [2113004] - usb/image: fix repeated words in comments (Torez Smith) [2113004] - usb/host: fix repeated words in comments (Torez Smith) [2113004] - usb/core: fix repeated words in comments (Torez Smith) [2113004] - usb/atm: fix repeated words in comments (Torez Smith) [2113004] - USB: HCD: Fix URB giveback issue in tasklet function (Torez Smith) [2113004] - usb: xhci_plat_remove: avoid NULL dereference (Torez Smith) [2113004] - USB: serial: fix tty-port initialized comments (Torez Smith) [2113004] - USB: serial: usb_wwan: replace DTR/RTS magic numbers with macros (Torez Smith) [2113004] - USB: cdc-acm: use CDC serial-state defines (Torez Smith) [2113004] - USB: cdc-acm: use CDC control-line defines (Torez Smith) [2113004] - USB: cdc: add serial-state defines (Torez Smith) [2113004] - USB: cdc: add control-signal defines (Torez Smith) [2113004] - net/cdc_ncm: Increase NTB max RX/TX values to 64kb (Torez Smith) [2113004] - usb: typec: Add retimer handle to port (Torez Smith) [2113004] - usb: typec: Add support for retimers (Torez Smith) [2113004] - dt-bindings: usb: Add analogix anx7411 PD binding (Torez Smith) [2113004] - usb: ldusb: replace ternary operator with max_t() (Torez Smith) [2113004] - USB: serial: fix repeated word "the" in comments (Torez Smith) [2113004] - USB: serial: io_edgeport: fix spelling mistakes (Torez Smith) [2113004] - USB: serial: ftdi_sio: add Belimo device ids (Torez Smith) [2113004] - thunderbolt: test: Use kunit_test_suite() macro (Torez Smith) [2113004] - media: pvrusb2: drop unexpected word 'a' in comments (Torez Smith) [2113004] - media: gspca: drop unexpected word 'is' in the comments (Torez Smith) [2113004] - usb: typec: add missing uevent when partner support PD (Torez Smith) [2113004] - tools: usb: testusb: Add super-plus speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add super speed reporting (Torez Smith) [2113004] - tools: usb: testusb: Add wireless speed reporting (Torez Smith) [2113004] - usb: typec: tcpci: move tcpci.h to include/linux/usb/ (Torez Smith) [2113004] - ARM: sa1100/assabet: move dmabounce hack to ohci driver (Torez Smith) [2113004] - usb: host: xhci: use snprintf() in xhci_decode_trb() (Torez Smith) [2113004] - USB: cdc-acm: use define for timeout (Torez Smith) [2113004] - usb: typec_altmode: add a missing "@" at a kernel-doc parameter (Torez Smith) [2113004] - usb: core: sysfs: convert sysfs snprintf to sysfs_emit (Torez Smith) [2113004] - media: usb: gspca: aligned '*' each line (Torez Smith) [2113004] - media: hdpvr: fix error value returns in hdpvr_read (Torez Smith) [2113004] - media: em28xx: Remove useless license text when SPDX-License-Identifier is already used (Torez Smith) [2113004] - USB: serial: use kmemdup instead of kmalloc + memcpy (Torez Smith) [2113004] - usb: host: ehci-q: Fix ehci_submit_single_step_set_feature annotation typo (Torez Smith) [2113004] - USB: storage: Fix typo in comment (Torez Smith) [2113004] - usb: typec: mux: Add CONFIG guards for functions (Torez Smith) [2113004] - usb: typec: mux: Allow muxes to specify mode-switch (Torez Smith) [2113004] - usb: musb: Add support for PolarFire SoC's musb controller (Torez Smith) [2113004] - media: pvrusb2: fix memory leak in pvr_probe (Torez Smith) [2113004] - media: airspy: respect the DMA coherency rules (Torez Smith) [2113004] - media: usbtv: Add PAL-Nc standard (Torez Smith) [2113004] - thunderbolt: Fix typo in comment (Torez Smith) [2113004] - dt-bindings: usb: add documentation for aspeed udc (Torez Smith) [2113004] - usb: Avoid extra usb SET_SEL requests when enabling link power management (Torez Smith) [2113004] - usb: typec: tcpm: Register USB Power Delivery Capabilities (Torez Smith) [2113004] - usb: typec: USB Power Delivery helpers for ports and partners (Torez Smith) [2113004] - usb: typec: Separate USB Power Delivery from USB Type-C (Torez Smith) [2113004] - usb: hub: port: add sysfs entry to switch port power (Torez Smith) [2113004] - ucsi_ccg: ACPI based I2c client enumeration for AMD ASICs (Torez Smith) [2113004] - ucsi_ccg: Do not hardcode interrupt polarity and type (Torez Smith) [2113004] - usb: xhci-mtk: add support optional controller reset (Torez Smith) [2113004] - usb: typec: tcpm: fix typo in comment (Torez Smith) [2113004] - usb: xhci: tegra: Fix error check (Torez Smith) [2113004] - usb: common: usb-conn-gpio: Allow wakeup from system suspend (Torez Smith) [2113004] - usbip: vudc: Don't enable IRQs prematurely (Torez Smith) [2113004] - USB: usbip: clean up mixed use of _irq() and _irqsave() (Torez Smith) [2113004] - USB: Follow-up to SPDX identifiers addition - remove now useless comments (Torez Smith) [2113004] - thunderbolt: Fix some kernel-doc comments (Torez Smith) [2113004] - usb: hub: Simplify error and success path in port_over_current_notify (Torez Smith) [2113004] - usb: remove Link Powermanagement (LPM) disable before port reset. (Torez Smith) [2113004] - thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort tunneled (Torez Smith) [2113004] - usb: core: Bail out when port is stuck in reset loop (Torez Smith) [2113004] - thunderbolt: Add CL1 support for USB4 and Titan Ridge routers (Torez Smith) [2113004] - thunderbolt: Change downstream router's TMU rate in both TMU uni/bidir mode (Torez Smith) [2113004] - USB: core: Fix bug in resuming hub's handling of wakeup requests (Torez Smith) [2113004] - thunderbolt: Fix typos in CLx enabling (Torez Smith) [2113004] - usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0 (Torez Smith) [2113004] - usb: hub: make wait_for_connected() take an int instead of a pointer to int (Torez Smith) [2113004] - thunderbolt: CLx disable before system suspend only if previously enabled (Torez Smith) [2113004] - usb: hub: avoid warm port reset during USB3 disconnect (Torez Smith) [2113004] - thunderbolt: Silently ignore CLx enabling in case CLx is not supported (Torez Smith) [2113004]- config: Enable Security Path (Ricardo Robaina) [2161309] - tcp: Fix build break when CONFIG_IPV6=n (Jamie Bainbridge) [2143849] - tcp: annotate data-race around queue->synflood_warned (Jamie Bainbridge) [2143849] - tcp: Add listening address to SYN flood message (Jamie Bainbridge) [2143849] - tcp: Fix data-races around sysctl_tcp_syncookies. (Jamie Bainbridge) [2143849] - firmware_loader: Fix memory leak in firmware upload (Mark Langsdorf) [2122319] - firmware_loader: Fix use-after-free during unregister (Mark Langsdorf) [2122319] - firmware_loader: fix memory leak for paged buffer (Mark Langsdorf) [2122319] - firmware_loader: describe 'module' parameter of firmware_upload_register() (Mark Langsdorf) [2122319] - firmware_loader: Move definitions from sysfs_upload.h to sysfs.h (Mark Langsdorf) [2122319] - firmware_loader: Add sysfs nodes to monitor fw_upload (Mark Langsdorf) [2122319] - firmware_loader: Add firmware-upload support (Mark Langsdorf) [2122319] - firmware_loader: Split sysfs support from fallback (Mark Langsdorf) [2122319] - firmware_loader: Clear data and size in fw_free_paged_buf (Mark Langsdorf) [2122319] - firmware: Use kvmalloc for page tables (Mark Langsdorf) [2122319] - firmware: Unify the paged buffer release helper (Mark Langsdorf) [2122319] - firmware: Free temporary page table after vmapping (Mark Langsdorf) [2122319] - arch_topology: Make cluster topology span at least SMT CPUs (Mark Langsdorf) [2122319] - driver core: fix driver_set_override() issue with empty strings (Mark Langsdorf) [2122319] - arch_topology: Silence early cacheinfo errors when non-existent (Mark Langsdorf) [2122319] - driver core: Don't probe devices after bus_type.match() probe deferral (Mark Langsdorf) [2122319] - regmap: spi: Reserve space for register address/padding (Mark Langsdorf) [2122319] - arch_topology: Fix cache attributes detection in the CPU hotplug path (Mark Langsdorf) [2122319] - cacheinfo: Use atomic allocation for percpu cache attributes (Mark Langsdorf) [2122319] - regmap: permit to set reg_update_bits with bulk implementation (Mark Langsdorf) [2122319] - PM: domains: Ensure genpd_debugfs_dir exists before remove (Mark Langsdorf) [2122319] - PM: runtime: Extend support for wakeirq for force_suspend|resume (Mark Langsdorf) [2122319] - regmap: add WARN_ONCE when invalid mask is provided to regmap_field_init() (Mark Langsdorf) [2122319] - PM: wakeup: Unify device_init_wakeup() for PM_SLEEP and !PM_SLEEP (Mark Langsdorf) [2122319] - arch_topology: Warn that topology for nested clusters is not supported (Mark Langsdorf) [2122319] - arch_topology: Add support for parsing sockets in /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Set cluster identifier in each core/thread from /cpu-map (Mark Langsdorf) [2122319] - arch_topology: Limit span of cpu_clustergroup_mask() (Mark Langsdorf) [2122319] - arch_topology: Don't set cluster identifier as physical package identifier (Mark Langsdorf) [2122319] - arch_topology: Avoid parsing through all the CPUs once a outlier CPU is found (Mark Langsdorf) [2122319] - arch_topology: Check for non-negative value rather than -1 for IDs validity (Mark Langsdorf) [2122319] - arch_topology: Set thread sibling cpumask only within the cluster (Mark Langsdorf) [2122319] - arch_topology: Drop LLC identifier stash from the CPU topology (Mark Langsdorf) [2122319] - arm64: topology: Remove redundant setting of llc_id in CPU topology (Mark Langsdorf) [2122319] - arch_topology: Use the last level cache information from the cacheinfo (Mark Langsdorf) [2122319] - arch_topology: Add support to parse and detect cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Align checks in cache_shared_cpu_map_{setup,remove} for readability (Mark Langsdorf) [2122319] - cacheinfo: Use cache identifiers to check if the caches are shared if available (Mark Langsdorf) [2122319] - cacheinfo: Allow early detection and population of cache attributes (Mark Langsdorf) [2122319] - cacheinfo: Add support to check if last level cache(LLC) is valid or shared (Mark Langsdorf) [2122319] - cacheinfo: Move cache_leaves_are_shared out of CONFIG_OF (Mark Langsdorf) [2122319] - cacheinfo: Add helper to access any cache index for a given CPU (Mark Langsdorf) [2122319] - cacheinfo: Use of_cpu_device_node_get instead cpu_dev->of_node (Mark Langsdorf) [2122319] - regmap: cache: Add extra parameter check in regcache_init (Mark Langsdorf) [2122319] - regmap-irq: Refactor checks for status bulk read support (Mark Langsdorf) [2122319] - regmap-irq: Remove mask_writeonly and regmap_irq_update_bits() (Mark Langsdorf) [2122319] - regmap-irq: Remove inappropriate uses of regmap_irq_update_bits() (Mark Langsdorf) [2122319] - driver core: fix potential deadlock in __driver_attach (Mark Langsdorf) [2122319] - devtmpfs: fix the dangling pointer of global devtmpfsd thread (Mark Langsdorf) [2122319] - regmap: Don't warn about cache only mode for devices with no cache (Mark Langsdorf) [2122319] - regmap: Wire up regmap_config provided bulk write in missed functions (Mark Langsdorf) [2122319] - regmap: Make regmap_noinc_read() return -ENOTSUPP if map->read isn't set (Mark Langsdorf) [2122319] - regmap: Re-introduce bulk read support check in regmap_bulk_read() (Mark Langsdorf) [2122319] - init: Initialize noop_backing_dev_info early (Mark Langsdorf) [2122319] - driver core: Introduce device_find_any_child() helper (Mark Langsdorf) [2122319] - regmap: cache: Fix syntax errors in comments (Mark Langsdorf) [2122319] - PM: domains: Trust domain-idle-states from DT to be correct by genpd (Mark Langsdorf) [2122319] - PM: domains: Measure power-on/off latencies in genpd based on a governor (Mark Langsdorf) [2122319] - PM: domains: Allocate governor data dynamically based on a genpd governor (Mark Langsdorf) [2122319] - PM: domains: Clean up some code in pm_genpd_init() and genpd_remove() (Mark Langsdorf) [2122319] - PM: domains: Fix initialization of genpd's next_wakeup (Mark Langsdorf) [2122319] - PM: domains: Fixup QoS latency measurements for IRQ safe devices in genpd (Mark Langsdorf) [2122319] - PM: domains: Measure suspend/resume latencies in genpd based on governor (Mark Langsdorf) [2122319] - PM: domains: Move the next_wakeup variable into the struct gpd_timing_data (Mark Langsdorf) [2122319] - PM: domains: Allocate gpd_timing_data dynamically based on governor (Mark Langsdorf) [2122319] - PM: domains: Skip another warning in irq_safe_dev_in_sleep_domain() (Mark Langsdorf) [2122319] - PM: domains: Rename irq_safe_dev_in_no_sleep_domain() in genpd (Mark Langsdorf) [2122319] - PM: domains: Don't check PM_QOS_FLAG_NO_POWER_OFF in genpd (Mark Langsdorf) [2122319] - PM: domains: Drop redundant code for genpd always-on governor (Mark Langsdorf) [2122319] - PM: domains: Add GENPD_FLAG_RPM_ALWAYS_ON for the always-on governor (Mark Langsdorf) [2122319] - PM: wakeup: expose pm_wakeup_pending to modules (Mark Langsdorf) [2122319] - driver core: fix deadlock in __device_attach (Mark Langsdorf) [2122319] - driver: base: fix UAF when driver_attach failed (Mark Langsdorf) [2122319] - driver core: location: Add "back" as a possible output for panel (Mark Langsdorf) [2122319] - driver core: location: Free struct acpi_pld_info *pld (Mark Langsdorf) [2122319] - regmap: Add missing map->bus check (Mark Langsdorf) [2122319] - device property: Advertise fwnode and device property count API calls (Mark Langsdorf) [2122319] - driver core: location: Check for allocations failure (Mark Langsdorf) [2122319] - regmap: Add bulk read/write callbacks into regmap_config (Mark Langsdorf) [2122319] - device property: Fix recent breakage of fwnode_get_next_parent_dev() (Mark Langsdorf) [2122319] - drivers/base/memory: fix an unlikely reference counting issue in __add_memory_block() (Mark Langsdorf) [2122319] - driver core: Add dma_cleanup callback in bus_type (Mark Langsdorf) [2122319] - driver core: Add sysfs support for physical location of a device (Mark Langsdorf) [2122319] - drivers/base/node.c: fix compaction sysfs file leak (Mark Langsdorf) [2122319] - driver core: Prevent overriding async driver of a device before it probe (Mark Langsdorf) [2122319] - Documentation: dd: Use ReST lists for return values of driver_deferred_probe_check_state() (Mark Langsdorf) [2122319] - regmap: cache: set max_register with reg_stride (Mark Langsdorf) [2122319] - firmware_loader: Check fw_state_is_done in loading_store (Mark Langsdorf) [2122319] - driver: platform: Add helper for safer setting of driver_override (Mark Langsdorf) [2122319] - PM: domains: Move genpd's time-accounting to ktime_get_mono_fast_ns() (Mark Langsdorf) [2122319] - PM: runtime: Allow to call __pm_runtime_set_status() from atomic context (Mark Langsdorf) [2122319] - device property: Drop 'test' prefix in parameters of fwnode_is_ancestor_of() (Mark Langsdorf) [2122319] - device property: Introduce fwnode_for_each_parent_node() (Mark Langsdorf) [2122319] - device property: Allow error pointer to be passed to fwnode APIs (Mark Langsdorf) [2122319] - device property: Check fwnode->secondary in fwnode_graph_get_next_endpoint() (Mark Langsdorf) [2122319] - PM: runtime: Avoid device usage count underflows (Mark Langsdorf) [2122319] - PM: domains: Extend dev_pm_domain_detach() doc (Mark Langsdorf) [2122319]- gitlab-ci: use CI templates from production branch (Michael Hofmann) - cpufreq: ACPI: Remove unused variables 'acpi_cpufreq_online' and 'ret' (Mark Langsdorf) [2038200] - cpufreq: ACPI: Only set boost MSRs on supported CPUs (Mark Langsdorf) [2038200] - cpufreq: ACPI: Defer setting boost MSRs (Mark Langsdorf) [2038200] - s390/kexec: fix ipl report address for kdump (Tobias Huschle) [2161328] - iavf: schedule watchdog immediately when changing primary MAC (Michal Schmidt) [2152493] - iavf: Move netdev_update_features() into watchdog task (Michal Schmidt) [2152493] - iavf: fix temporary deadlock and failure to set MAC address (Michal Schmidt) [2152493] - iavf: Fix error handling in iavf_init_module() (Michal Schmidt) [2152493]- net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103955] - ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter (Ken Cox) [2103955] - ixgbe: Manual AN-37 for troublesome link partners for X550 SFI (Ken Cox) [2103955] - ixgbe: Don't call kmap() on page allocated with GFP_ATOMIC (Ken Cox) [2103955] - ixgbe: convert .adjfreq to .adjfine (Ken Cox) [2103955] - ixgbe: drop unexpected word 'for' in comments (Ken Cox) [2103955] - ixgbe: remove unexpected word "the" (Ken Cox) [2103955] - intel: remove unused macros (Ken Cox) [2103955] - ixgbe: Fix typos in comments (Ken Cox) [2103955] - drivers, ixgbe: export vf statistics (Ken Cox) [2103955] - ixgbe: fix unexpected VLAN Rx in promisc mode on VF (Ken Cox) [2103955] - ixgbe: fix bcast packets Rx on VF after promisc removal (Ken Cox) [2103955] - ixgbe: propagate XFRM offload state direction instead of flags (Ken Cox) [2103955] - ixgbe: Fix module_param allow_unsupported_sfp type (Ken Cox) [2103955] - ixgbe: ensure IPsec VF<->PF compatibility (Ken Cox) [2103955] - ixgbe, xsk: Get rid of redundant 'fallthrough' (Ken Cox) [2103955] - ixgbe, xsk: Diversify return values from xsk_wakeup call paths (Ken Cox) [2103955] - ixgbe, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ken Cox) [2103955] - ixgbe, xsk: Decorate IXGBE_XDP_REDIR with likely() (Ken Cox) [2103955] - ixgbe: add improvement for MDD response functionality (Ken Cox) [2103955] - ixgbe: add the ability for the PF to disable VF link state (Ken Cox) [2103955] - ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc() (Ken Cox) [2103955] - ixgbe: Remove non-inclusive language (Ken Cox) [2103955] - ixgbe: Use irq_update_affinity_hint() (Ken Cox) [2103955] - net: convert users of bitmap_foo() to linkmode_foo() (Ken Cox) [2103955] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2103955] - net: Use skb_frag_off accessors (Ken Cox) [2103955] - drm/i915: Fix watermark calculations for DG2 CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for DG2 CCS modifiers (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ CCS+CC modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ MC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915: Fix watermark calculations for gen12+ RC CCS modifier (Jocelyn Falempe) [2041686] - drm/i915/uc: fix device/bus include on rhel8 (Jocelyn Falempe) [2041686] - drm/i915/display: consider DG2_RC_CCS_CC when migrating buffers (Jocelyn Falempe) [2041686] - drm/i915: allow control over the flags when migrating (Jocelyn Falempe) [2041686] - drm/i915/display: handle migration for dpt (Jocelyn Falempe) [2041686] - drm/i915/huc: better define HuC status getparam possible return values. (Jocelyn Falempe) [2041686] - drm/i915/huc: stall media submission until HuC is loaded (Jocelyn Falempe) [2041686] - drm/i915/huc: track delayed HuC load with a fence (Jocelyn Falempe) [2041686] - drm/i915/dg2: setup HuC loading via GSC (Jocelyn Falempe) [2041686] - drm/i915/pxp: add huc authentication and loading command (Jocelyn Falempe) [2041686] - drm/i915/pxp: implement function for sending tee stream command (Jocelyn Falempe) [2041686] - drm/i915/pxp: load the pxp module when we have a gsc-loaded huc (Jocelyn Falempe) [2041686] - drm/i915/gt: Flush to global observation point before breadcrumb write (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Add SLPC selftest live_slpc_power (Jocelyn Falempe) [2041686] - drm/i915/guc/slpc: Run SLPC selftests on all tiles (Jocelyn Falempe) [2041686] - drm/i915: Remove unwanted pointer unpacking (Jocelyn Falempe) [2041686] - drm/i915/guc: Enable compute scheduling on DG2 (Jocelyn Falempe) [2041686] - drm/i915/dg2: introduce Wa_22015475538 (Jocelyn Falempe) [2041686] - drm/i915/uc: Update to latest GuC and use new-format GuC/HuC names (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: extend Wa_1409120013 to DG2" (Jocelyn Falempe) [2041686] - drm/i915/gsc: allocate extended operational memory in LMEM (Jocelyn Falempe) [2041686] - drm/i915/gsc: add GSC XeHP SDV platform definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: add slow_firmware flag to the gsc device definition (Jocelyn Falempe) [2041686] - drm/i915/gsc: skip irq initialization if using polling (Jocelyn Falempe) [2041686] - drm/i915/uc: Add patch level version number support (Jocelyn Falempe) [2041686] - drm/i915/uc: Support for version reduced and multiple firmware files (Jocelyn Falempe) [2041686] - drm/i915/ttm: Abort suspend on i915_ttm_backup failure (Jocelyn Falempe) [2041686] - drm/i915/dg2: Incorporate Wa_16014892111 into DRAW_WATERMARK tuning (Jocelyn Falempe) [2041686] - drm/i915/guc: Record CTB info in error logs (Jocelyn Falempe) [2041686] - drm/i915/guc: Add GuC <-> kernel time stamp translation information (Jocelyn Falempe) [2041686] - drm/i915/guc: Don't use pr_err when not necessary (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add support for DC5 state (Jocelyn Falempe) [2041686] - drm/i915/dmc: Update DG2 DMC firmware to v2.07 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional tuning settings (Jocelyn Falempe) [2041686] - drm/i915/gt: Add dedicated function for non-ctx register tuning settings (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add Wa_1509727124 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Update DG2 to GuC v70.4.1 (Jocelyn Falempe) [2041686] - drm/i915/dg2: Add additional HDMI pixel clock frequencies (Jocelyn Falempe) [2041686] - Revert "drm/i915/dg2: Add preemption changes for Wa_14015141709" (Jocelyn Falempe) [2041686] - config: Enable TDX Guest (Wander Lairson Costa) [1836977] - x86/tdx: mark TDX as a tech preview (Wander Lairson Costa) [1836977] - x86/tdx: Panic on bad configs that #VE on "private" memory access (Wander Lairson Costa) [1836977] - x86/tdx: Prepare for using "INFO" call for a second purpose (Wander Lairson Costa) [1836977] - x86/tdx: Handle load_unaligned_zeropad() page-cross to a shared page (Wander Lairson Costa) [1836977] - x86/tdx: Clarify RIP adjustments in #VE handler (Wander Lairson Costa) [1836977] - vt: Initialize conswitchp to dummy_con if unset (Wander Lairson Costa) [1836977] - x86/tdx: Fix early #VE handling (Wander Lairson Costa) [1836977] - x86/tdx: Fix RETs in TDX asm (Wander Lairson Costa) [1836977] - x86/apic: Do apic driver probe for "nosmp" use case (Wander Lairson Costa) [1836977] - x86/mm: Fix spacing within memory encryption features message (Wander Lairson Costa) [1836977] - x86/kaslr: Fix build warning in KASLR code in boot stub (Wander Lairson Costa) [1836977] - Documentation/x86: Document TDX kernel architecture (Wander Lairson Costa) [1836977] - ACPICA: Avoid cache flush inside virtual machines (Wander Lairson Costa) [1836977] - x86/tdx/ioapic: Add shared bit for IOAPIC base address (Wander Lairson Costa) [1836977] - x86/mm: Make DMA memory shared for TD guest (Wander Lairson Costa) [1836977] - x86/mm/cpa: Add support for TDX shared memory (Wander Lairson Costa) [1836977] - x86/tdx: Make pages shared in ioremap() (Wander Lairson Costa) [1836977] - x86/topology: Disable CPU online/offline control for TDX guests (Wander Lairson Costa) [1836977] - x86/boot: Avoid #VE during boot for TDX platforms (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Use TEST reg,reg instead of CMP $0,reg (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Do not corrupt EDX on EFER.LME=1 setting (Wander Lairson Costa) [1836977] - x86/boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before returning to long mode (Wander Lairson Costa) [1836977] - x86/boot: Set CR0.NE early and keep it set during the boot (Wander Lairson Costa) [1836977] - x86/acpi/x86/boot: Add multiprocessor wake-up support (Wander Lairson Costa) [1836977] - x86/boot: Add a trampoline for booting APs via firmware handoff (Wander Lairson Costa) [1836977] - x86/asm/realmode: Use SYM_DATA_* instead of GLOBAL (Wander Lairson Costa) [1836977] - x86/realmode: Remove trampoline_status (Wander Lairson Costa) [1836977] - x86/tdx: Wire up KVM hypercalls (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add early boot support (Wander Lairson Costa) [1836977] - x86/tdx: Port I/O: Add runtime hypercalls (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Add decompression-time support for TDX (Wander Lairson Costa) [1836977] - x86/boot: Port I/O: Allow to hook up alternative helpers (Wander Lairson Costa) [1836977] - x86: Consolidate port I/O helpers (Wander Lairson Costa) [1836977] - x86: Adjust types used in port I/O helpers (Wander Lairson Costa) [1836977] - x86/tdx: Detect TDX at early kernel decompression time (Wander Lairson Costa) [1836977] - x86/tdx: Handle in-kernel MMIO (Wander Lairson Costa) [1836977] - x86/tdx: Handle CPUID via #VE (Wander Lairson Costa) [1836977] - x86/tdx: Add MSR support for TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add HLT support for TDX guests (Wander Lairson Costa) [1836977] - x86/traps: Add #VE support for TDX guest (Wander Lairson Costa) [1836977] - x86/traps: Refactor exc_general_protection() (Wander Lairson Costa) [1836977] - x86/traps: Cleanup do_general_protection() (Wander Lairson Costa) [1836977] - x86/dumpstack: Introduce die_addr() for die() with #GP fault address (Wander Lairson Costa) [1836977] - x86/traps: Print address on #GP (Wander Lairson Costa) [1836977] - x86/kprobes: Inline kprobe_exceptions_notify() into do_general_protection() (Wander Lairson Costa) [1836977] - x86/tdx: Exclude shared bit from __PHYSICAL_MASK (Wander Lairson Costa) [1836977] - x86/tdx: Extend the confidential computing API to support TDX guests (Wander Lairson Costa) [1836977] - x86/tdx: Add __tdx_module_call() and __tdx_hypercall() helper functions (Wander Lairson Costa) [1836977] - x86/tdx: Provide common base for SEAMCALL and TDCALL C wrappers (Wander Lairson Costa) [1836977] - x86/tdx: Detect running as a TDX guest in early boot (Wander Lairson Costa) [1836977] - x86/mm/cpa: Generalize __set_memory_enc_pgtable() (Wander Lairson Costa) [1836977] - x86/mm/pat: Don't flush cache if hardware enforces cache coherency across encryption domnains (Wander Lairson Costa) [1836977] - x86/coco: Add API to handle encryption mask (Wander Lairson Costa) [1836977] - x86/cc: Move arch/x86/{kernel/cc_platform.c => coco/core.c} (Wander Lairson Costa) [1836977] - x86/sev-es: Use insn_decode_mmio() for MMIO implementation (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_decode_mmio() (Wander Lairson Costa) [1836977] - x86/insn-eval: Introduce insn_get_modrm_reg_ptr() (Wander Lairson Costa) [1836977] - x86/insn-eval: Handle insn_get_opcode() failure (Wander Lairson Costa) [1836977] - x86/sev: Move common memory encryption code to mem_encrypt.c (Wander Lairson Costa) [1836977] - x86/sev: Rename mem_encrypt.c to mem_encrypt_amd.c (Wander Lairson Costa) [1836977] - x86/virtio: Have SEV guests enforce restricted virtio memory access (Wander Lairson Costa) [1836977] - devlink: protect devlink dump by the instance lock (Petr Oros) [2131116] - devlink: hold region lock when flushing snapshots (Petr Oros) [2131116] - net: devlink: enable parallel ops on netlink interface (Petr Oros) [2131116] - net: devlink: remove devlink_mutex (Petr Oros) [2131116] - net: devlink: convert reload command to take implicit devlink->lock (Petr Oros) [2131116] - net: devlink: introduce "unregistering" mark and use it during devlinks iteration (Petr Oros) [2131116] - devlink: Fix use-after-free after a failed reload (Petr Oros) [2131116] - net: devlink: Fix missing mutex_unlock() call (Petr Oros) [2131116] - Documentation: devlink: add add devlink-selftests to the table of contents (Petr Oros) [2131116] - devlink: Hold the instance lock in health callbacks (Petr Oros) [2131116] - net/mlx4: Lock mlx4 devlink reload callback (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink port register / unregister (Petr Oros) [2131116] - net/mlx4: Use devl_ API for devlink region create / destroy (Petr Oros) [2131116] - net: devlink: remove region snapshots list dependency on devlink->lock (Petr Oros) [2131116] - net: devlink: remove region snapshot ID tracking dependency on devlink->lock (Petr Oros) [2131116] - devlink: introduce framework for selftests (Petr Oros) [2131116] - net: devlink: remove redundant net_eq() check from sb_pool_get_dumpit() (Petr Oros) [2131116] - net: devlink: move net check into devlinks_xa_for_each_registered_get() (Petr Oros) [2131116] - net: devlink: make sure that devlink_try_get() works with valid pointer during xarray iteration (Petr Oros) [2131116] - netdevsim: convert driver to use unlocked devlink API during init/fini (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_region_create/destroy() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_dpipe*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_sb*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devlink_resource*() functions (Petr Oros) [2131116] - net: devlink: add unlocked variants of devling_trap*() functions (Petr Oros) [2131116] - net: devlink: avoid false DEADLOCK warning reported by lockdep (Petr Oros) [2131116] - net: devlink: fix return statement in devlink_port_new_notify() (Petr Oros) [2131116] - net: devlink: fix a typo in function name devlink_port_new_notifiy() (Petr Oros) [2131116] - net: devlink: make devlink_dpipe_headers_register() return void (Petr Oros) [2131116] - net: devlink: move unlocked function prototypes alongside the locked ones (Petr Oros) [2131116] - net: devlink: use helpers to work with devlink->lock mutex (Petr Oros) [2131116] - net: devlink: fix unlocked vs locked functions descriptions (Petr Oros) [2131116] - devlink: Hold the instance lock in port_new / port_del callbacks (Petr Oros) [2131116] - powercap: intel_rapl: Add support for RAPTORLAKE_S (Prarit Bhargava) [2120363] - selftests/bpf: Fix test_varlen verification failure with latest llvm (Yauheni Kaliuta) [2149222] - iwlwifi: remove firmware version limit for AC9560 (Íñigo Huguet) [2129361] - wifi: iwlwifi: fw: skip PPAG for JF (Íñigo Huguet) [2129361] - sched: Improve wake_up_all_idle_cpus() take #2 (Julia Denham) [2134931] - selftests/livepatch: better synchronize test_klp_callbacks_busy (Julia Denham) [2121204] - sched,livepatch: Use wake_up_if_idle() (Joe Lawrence) [2134931] - sched: Simplify wake_up_*idle*() (Joe Lawrence) [2134931] - sched,livepatch: Use task_call_func() (Joe Lawrence) [2134931] - sched,rcu: Rework try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - sched: Improve try_invoke_on_locked_down_task() (Joe Lawrence) [2134931] - arm64/bpf: Remove 128MB limit for BPF JIT programs (Yauheni Kaliuta) [2140163] - bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT (Yauheni Kaliuta) [2140163] - arm64: extable: add `type` and `data` fields (Yauheni Kaliuta) [2140163] - arm64: extable: use `ex` for `exception_table_entry` (Yauheni Kaliuta) [2140163] - arm64: extable: make fixup_exception() return bool (Yauheni Kaliuta) [2140163] - arm64: extable: consolidate definitions (Yauheni Kaliuta) [2140163] - arm64: kvm: use kvm_exception_table_entry (Yauheni Kaliuta) [2140163] - s390/cio: check the subchannel validity for dev_busid (Tobias Huschle) [2160494] - s390/cio: add dev_busid sysfs entry for each subchannel (Tobias Huschle) [2160494]- intel_idle: Add AlderLake-N support (Prarit Bhargava) [2144692] - selftests/timens: add a test for vfork+exit (Oleg Nesterov) [2116444] - fs/exec: switch timens when a task gets a new mm (Oleg Nesterov) [2116444] - namespace: make timens_on_fork() return nothing (Oleg Nesterov) [2116444] - timens: make vdso_join_timens() always succeed (Oleg Nesterov) [2116444] - xfrm: Fix oops in __xfrm_state_delete() (Sabrina Dubroca) [2156048] - tcp: Fix data races around icsk->icsk_af_ops. (Guillaume Nault) [2143904] {CVE-2022-3566} - ice: synchronize the misc IRQ when tearing down Tx tracker (Petr Oros) [2148858] - ice: fix handling of burst Tx timestamps (Petr Oros) [2148858] - vhost/vsock: Fix error handling in vhost_vsock_init() (Stefano Garzarella) [2159969] - net: vmw_vsock: vmci: Check memcpy_from_msg() (Stefano Garzarella) [2159969] - vhost/vsock: Use kvmalloc/kvfree for larger packets. (Stefano Garzarella) [2159969] - vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout() (Stefano Garzarella) [2159969] - vsock: Fix memory leak in vsock_connect() (Stefano Garzarella) [2159969] - tools/power turbostat: Add support for RPL-S (Prarit Bhargava) [2122848]- nvme: re-order nvme_alloc_ns to match "nvme: use blk_mq_alloc_disk" (Chris Leech) [2152742] - perf vendor events amd: Add Zen 4 mapping (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 metrics (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 uncore events (Michael Petlan) [2148294] - perf vendor events amd: Add Zen 4 core events (Michael Petlan) [2148294] - cpuhotplug: Fix KABI breakage (Prarit Bhargava) [2156529] - scsi: target: core: Fix hard lockup when executing a compare-and-write command (Maurizio Lombardi) [2119897] - x86/topology: Fix duplicated core ID within a package (Prarit Bhargava) [2159553] - x86/topology: Fix multiple packages shown on a single-package system (Prarit Bhargava) [2159553] - hwmon/coretemp: Handle large core ID value (Prarit Bhargava) [2159553] - x86: Remove vendor checks from prefer_mwait_c1_over_halt (Prarit Bhargava) [2150067] - x86: Handle idle=nomwait cmdline properly for x86_idle (Prarit Bhargava) [2150067] - cpufreq: intel_pstate: Support Sapphire Rapids OOB mode (Prarit Bhargava) [2117767] - KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check fails (Emanuele Giuseppe Esposito) [2159433] - vmxnet3: correctly report csum_level for encapsulated packet (Izabela Bakollari) [2158809] - mei: pxp: support matching with a gfx discrete card (Jocelyn Falempe) [2147557] - mei: pxp: add command streamer API to the PXP driver (Jocelyn Falempe) [2147557] - mei: bus: extend bus API to support command streamer API (Jocelyn Falempe) [2147557] - mei: adjust extended header kdocs (Jocelyn Falempe) [2147557] - mei: bus: enable sending gsc commands (Jocelyn Falempe) [2147557] - mei: add support to GSC extended header (Jocelyn Falempe) [2147557] - mei: debugfs: add pxp mode to devstate in debugfs (Jocelyn Falempe) [2147557] - mei: drop ready bits check after start (Jocelyn Falempe) [2147557] - mei: gsc: add transition to PXP mode in resume flow (Jocelyn Falempe) [2147557] - mei: gsc: setup gsc extended operational memory (Jocelyn Falempe) [2147557] - mei: mkhi: add memory ready command (Jocelyn Falempe) [2147557] - mei: bus: export common mkhi definitions into a separate header (Jocelyn Falempe) [2147557] - mei: extend timeouts on slow devices (Jocelyn Falempe) [2147557] - mei: gsc: wait for reset thread on stop (Jocelyn Falempe) [2147557] - mei: gsc: use polling instead of interrupts (Jocelyn Falempe) [2147557] - mei: add slow_firmware flag to the mei auxiliary device (Jocelyn Falempe) [2147557] - mei: add kdoc for struct mei_aux_device (Jocelyn Falempe) [2147557] - mei: me: fix clang -Wformat warning (Jocelyn Falempe) [2147557] - mei: me: add raptor lake point S DID (Jocelyn Falempe) [2147557] - mei: hbm: drop capability response on early shutdown (Jocelyn Falempe) [2147557] - mei: me: set internal pg flag to off on hardware reset (Jocelyn Falempe) [2147557] - misc/mei: Add NULL check to component match callback functions (Jocelyn Falempe) [2147557] - drm/display: Move HDCP helpers into display-helper module (Jocelyn Falempe) [2147557] - mei: gsc: retrieve the firmware version (Jocelyn Falempe) [2147557] - mei: gsc: add runtime pm handlers (Jocelyn Falempe) [2147557] - mei: gsc: setup char driver alive in spite of firmware handshake failure (Jocelyn Falempe) [2147557] - mei: add support for graphics system controller (gsc) devices (Jocelyn Falempe) [2147557] - mei: avoid iterator usage outside of list_for_each_entry (Jocelyn Falempe) [2147557] - mei: do not overwrite state on hw start (Jocelyn Falempe) [2147557] - mei: me: fix reset policy on read error in interrupt (Jocelyn Falempe) [2147557] - mei: me: avoid link reset on shutdown (Jocelyn Falempe) [2147557] - mei: me: disable driver on the ign firmware (Jocelyn Falempe) [2147557] - mei: me: Use dma_set_mask_and_coherent() and simplify code (Jocelyn Falempe) [2147557] - mei: hbm: fix client dma reply status (Jocelyn Falempe) [2147557] - mei: cleanup status before client dma setup call (Jocelyn Falempe) [2147557] - mei: add POWERING_DOWN into device state print (Jocelyn Falempe) [2147557] - mei: Remove some dead code (Jocelyn Falempe) [2147557] - mei: bus: add client dma interface (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on early shutdown (Jocelyn Falempe) [2147557] - mei: me: add Ice Lake-N device id. (Jocelyn Falempe) [2147557] - mei: pxp: export pavp client to me client bus (Jocelyn Falempe) [2147557] - mei: Remove usage of the deprecated "pci-dma-compat.h" API (Jocelyn Falempe) [2147557] - mei: constify passed buffers and structures (Jocelyn Falempe) [2147557] - mei: revamp mei extension header structure layout. (Jocelyn Falempe) [2147557] - mei: fix kdoc in the driver (Jocelyn Falempe) [2147557] - mei: hdcp: SPDX tag should be the first line (Jocelyn Falempe) [2147557] - mei: request autosuspend after sending rx flow control (Jocelyn Falempe) [2147557] - mei: Drop unnecessary NULL check after container_of (Jocelyn Falempe) [2147557] - mei: me: add Alder Lake P device id. (Jocelyn Falempe) [2147557] - mei: allow map and unmap of client dma buffer only for disconnected client (Jocelyn Falempe) [2147557] - mei: use sysfs_emit() in tx_queue_limit_show sysfs (Jocelyn Falempe) [2147557] - mei: bus: block send with vtag on non-conformat FW (Jocelyn Falempe) [2147557] - mei: bus: change remove callback to return void (Jocelyn Falempe) [2147557] - mei: bus: simplify mei_cl_device_remove() (Jocelyn Falempe) [2147557] - mei: implement client dma setup. (Jocelyn Falempe) [2147557] - mei: hbm: add client dma hbm messages (Jocelyn Falempe) [2147557] - mei: add support for client dma capability (Jocelyn Falempe) [2147557] - mei: allow clients on bus to communicate in remove callback (Jocelyn Falempe) [2147557] - mei: me: add adler lake point LP DID (Jocelyn Falempe) [2147557] - mei: hbm: drop hbm responses on shutdown (Jocelyn Falempe) [2147557] - mei: hbm: call mei_set_devstate() on hbm stop response (Jocelyn Falempe) [2147557] - mei: document that mei_msg_hdr_init returns ERR_PTR (Jocelyn Falempe) [2147557] - mei: fix transfer over dma with extended header (Jocelyn Falempe) [2147557] - misc/mei/hdcp: Fix AUTH_STREAM_REQ cmd buffer len (Jocelyn Falempe) [2147557] - mei: bus: enable pavp device. (Jocelyn Falempe) [2147557] - mei: bus: add vtag support (Jocelyn Falempe) [2147557] - Revert "mei: virtio: virtualization frontend driver" (Jocelyn Falempe) [2147557] - mei: bus: fix a kernel-doc markup (Jocelyn Falempe) [2147557] - mei: protect mei_cl_mtu from null dereference (Jocelyn Falempe) [2147557] - mei: bus: deinitialize callback functions on init failure (Jocelyn Falempe) [2147557] - mei: bus: do not start a read for disconnected clients (Jocelyn Falempe) [2147557] - misc: mei: remove unneeded break (Jocelyn Falempe) [2147557] - mei: hw: Replace zero-length array with flexible-array member (Jocelyn Falempe) [2147557] - mei: virtio: virtualization frontend driver (Jocelyn Falempe) [2147557] - mei: add connect with vtag ioctl (Jocelyn Falempe) [2147557] - mei: bus: unconditionally enable clients with vtag support (Jocelyn Falempe) [2147557] - mei: bus: use zero vtag for bus clients. (Jocelyn Falempe) [2147557] - mei: handle tx queue flushing for vtag connections (Jocelyn Falempe) [2147557] - mei: add a vtag map for each client (Jocelyn Falempe) [2147557] - mei: add a spin lock to protect rd_completed queue (Jocelyn Falempe) [2147557] - mei: bump hbm version to 2.2 (Jocelyn Falempe) [2147557] - mei: add support for mei extended header. (Jocelyn Falempe) [2147557] - mei: add vtag support bit in client properties (Jocelyn Falempe) [2147557] - mei: restrict vtag support to hbm version 2.2 (Jocelyn Falempe) [2147557] - mei: hbm: add capabilities message (Jocelyn Falempe) [2147557] - Revert "scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding" (Chris Leech) [2122624] - Revert "scsi: iscsi: Use the session workqueue for recovery" (Chris Leech) [2122624] - l2tp: Don't sleep and disable BH under writer-side sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - l2tp: Serialize access to sk_user_data with sk_callback_lock (Guillaume Nault) [2145235] {CVE-2022-4129} - net: fix a concurrency bug in l2tp_tunnel_register() (Guillaume Nault) [2145235] {CVE-2022-4129} - net: tap: fix general protection fault when freeing an skb when the ring is full (Antoine Tenart) [2152802] - platform/x86/intel/pmt: Sapphire Rapids PMT errata fix (Prarit Bhargava) [2144689] - RDMA/core: Fix null-ptr-deref in ib_core_cleanup() (Kamal Heib) [2120677] - RDMA/rxe: Fix mr leak in RESPST_ERR_RNR (Kamal Heib) [2120677] - IB/hfi1: Correctly move list in sc_disable() (Kamal Heib) [2120677] - RDMA/cma: Use output interface for net_dev check (Kamal Heib) [2120677] - RDMA/usnic: fix set-but-not-unused variable 'flags' warning (Kamal Heib) [2120677] - IB/rdmavt: Add __init/__exit annotations to module init/exit funcs (Kamal Heib) [2120677] - RDMA/rxe: Fix resize_finish() in rxe_queue.c (Kamal Heib) [2120677] - IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers (Kamal Heib) [2120677] - RDMA/cm: Use SLID in the work completion as the DLID in responder side (Kamal Heib) [2120677] - RDMA/siw: Fix QP destroy to wait for all references dropped. (Kamal Heib) [2120677] - RDMA/srp: Fix srp_abort() (Kamal Heib) [2120677] - RDMA/irdma: Validate udata inlen and outlen (Kamal Heib) [2120677] - RDMA/irdma: Align AE id codes to correct flush code and event (Kamal Heib) [2120677] - RDMA/rxe: Fix the error caused by qp->sk (Kamal Heib) [2120677] - RDMA/rxe: Fix "kernel NULL pointer dereference" error (Kamal Heib) [2120677] - RDMA/rxe: Remove an unused member from struct rxe_mr (Kamal Heib) [2120677] - x86/fpu: Fix copy_xstate_to_uabi() to copy init states correctly (Dean Nelson) [2122850] - x86/fpu: Exclude dynamic states from init_fpstate (Dean Nelson) [2122850] - x86/fpu: Fix the init_fpstate size check with the actual size (Dean Nelson) [2122850] - x86/fpu: Configure init_fpstate attributes orderly (Dean Nelson) [2122850] - x86/fpu/xstate: Fix the ARCH_REQ_XCOMP_PERM implementation (Dean Nelson) [2122850] - ceph: rely on vfs for setgid stripping (Andrey Albershteyn) [2128904] - fs: move S_ISGID stripping into the vfs_*() helpers (Andrey Albershteyn) [2128904] - fs: Add missing umask strip in vfs_tmpfile (Andrey Albershteyn) [2128904] - fs: add mode_strip_sgid() helper (Andrey Albershteyn) [2128904]- x86/insn: Add AMX instructions to the x86 instruction decoder (Prarit Bhargava) [2117765] - intel_idle: Add a new flag to initialize the AMX state (Prarit Bhargava) [2117765] - x86/fpu: Add a helper to prepare AMX state for low-power CPU idle (Prarit Bhargava) [2117765] - intel_idle: make SPR C1 and C1E be independent (Prarit Bhargava) [2117765] - rpmspec: drop traceevent files instead of just excluding them from files list (Michael Petlan) [2155509] - powerpc/bpf/64: Add instructions for atomic_[cmp]xchg (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for atomic fetch operations (Mamatha Inamdar) [2113254] - powerpc/bpf/64: add support for BPF_ATOMIC bitwise operations (Mamatha Inamdar) [2113254] - powerpc/bpf: Simplify bpf_to_ppc() and adopt it for powerpc64 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Store temp registers' bpf to ppc mapping (Mamatha Inamdar) [2113254] - powerpc/bpf: Use _Rn macros for GPRs (Mamatha Inamdar) [2113254] - powerpc/bpf: Move bpf_jit64.h into bpf_jit_comp64.c (Mamatha Inamdar) [2113254] - powerpc/bpf: Cleanup bpf_jit.h (Mamatha Inamdar) [2113254] - powerpc64/bpf: Get rid of PPC_BPF_[LL|STL|STLU] macros (Mamatha Inamdar) [2113254] - powerpc64/bpf: Convert some of the uses of PPC_BPF_[LL|STL] to PPC_BPF_[LD|STD] (Mamatha Inamdar) [2113254] - powerpc64/bpf: Optimize instruction sequence used for function calls (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv1: Do not load TOC before calling functions (Mamatha Inamdar) [2113254] - powerpc64/bpf elfv2: Setup kernel TOC in r2 on entry (Mamatha Inamdar) [2113254] - powerpc64: Set PPC64_ELF_ABI_v[1|2] macros to 1 (Mamatha Inamdar) [2113254] - powerpc64/bpf: Use r12 for constant blinding (Mamatha Inamdar) [2113254] - powerpc64/bpf: Do not save/restore LR on each call to bpf_stf_barrier() (Mamatha Inamdar) [2113254] - powerpc/bpf: Handle large branch ranges with BPF_EXIT (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit a single branch instruction for known short branch ranges (Mamatha Inamdar) [2113254] - powerpc/bpf: Skip branch range validation during first pass (Mamatha Inamdar) [2113254] - powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA v2.06 (Mamatha Inamdar) [2113254] - tools/bpf: Rename 'struct event' to avoid naming conflict (Mamatha Inamdar) [2113254] - bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack() (Mamatha Inamdar) [2113254] - bpf ppc64: Access only if addr is kernel address (Mamatha Inamdar) [2113254] - bpf ppc64: Add BPF_PROBE_MEM support for JIT (Mamatha Inamdar) [2113254] - powerpc/ppc-opcode: introduce PPC_RAW_BRANCH() macro (Mamatha Inamdar) [2113254] - bpf powerpc: refactor JIT compiler code (Mamatha Inamdar) [2113254] - bpf powerpc: Remove extra_pass from bpf_jit_build_body() (Mamatha Inamdar) [2113254] - bpf powerpc: Remove unused SEEN_STACK (Mamatha Inamdar) [2113254] - powerpc/bpf: Emit stf barrier instruction sequences for BPF_NOSPEC (Mamatha Inamdar) [2113254] - powerpc/security: Add a helper to query stf_barrier type (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_SUB when imm == 0x80000000 (Mamatha Inamdar) [2113254] - powerpc/bpf: Fix BPF_MOD when imm == 1 (Mamatha Inamdar) [2113254] - powerpc/bpf: Validate branch ranges (Mamatha Inamdar) [2113254] - powerpc/lib: Add helper to check if offset is within conditional branch range (Mamatha Inamdar) [2113254] - powerpc/lib/feature-fixups: Use PPC_RAW_xxx() macros (Mamatha Inamdar) [2113254] - powerpc: Move PPC_HA() PPC_HI() and PPC_LO() to ppc-opcode.h (Mamatha Inamdar) [2113254] - swapfile: fix soft lockup in scan_swap_map_slots (Waiman Long) [2155734] - mm/swap: add helper swap_offset_available() (Waiman Long) [2155734] - pNFS/filelayout: Fix coalescing test for single DS (Benjamin Coddington) [2158520] - arm64: kdump: Support crashkernel=X fall back to reserve region above DMA zones (Pingfan Liu) [1940674] - arm64: kdump: Provide default size when crashkernel=Y,low is not specified (Pingfan Liu) [1940674] - media: dmxdev: fix UAF when dvb_register_device() fails (Dean Nelson) [2123301] {CVE-2022-41218} - crypto: s390/aes - drop redundant xts key check (Vladis Dronov) [2158893] - crypto: xts - implement xts_verify_key() with xts_check_key() (Vladis Dronov) [2158893] - audit: cache ctx->major in audit_filter_syscall() (Richard Guy Briggs) [2123854] - audit: free audit_proctitle only on task exit (Richard Guy Briggs) [2123854] - audit: explicitly check audit_context->context enum value (Richard Guy Briggs) [2123854] - audit: move audit_return_fixup before the filters (Richard Guy Briggs) [2123854] - audit: fix potential double free on error path from fsnotify_add_inode_mark (Richard Guy Briggs) [2123854] - i2c: ismt: Fix an out-of-bounds bug in ismt_access() (Prarit Bhargava) [2119066] {CVE-2022-2873} - net: dropreason: add SKB_DROP_REASON_FRAG_TOO_FAR (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_FRAG_REASM_TIMEOUT (Antoine Tenart) [2155186] - net: dropreason: add SKB_DROP_REASON_DUP_FRAG (Antoine Tenart) [2155186] - net: dropreason: propagate drop_reason to skb_release_data() (Antoine Tenart) [2155186] - net: dropreason: add SKB_CONSUMED reason (Antoine Tenart) [2155186] - ipv4: remove redundant null pointer check before kfree_skb (Antoine Tenart) [2155186]- turbostat: Bring code up-to-date with upstream (Prarit Bhargava) [2117769] - tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.07.28 (Prarit Bhargava) [2117769] - tools/power turbostat: do not decode ACC for ICX and SPR (Prarit Bhargava) [2117769] - tools/power turbostat: fix SPR PC6 limits (Prarit Bhargava) [2117769] - tools/power turbostat: cleanup 'automatic_cstate_conversion_probe()' (Prarit Bhargava) [2117769] - tools/power turbostat: separate SPR from ICX (Prarit Bhargava) [2117769] - tools/power turbosstat: fix comment (Prarit Bhargava) [2117769] - tools/power turbostat: Support RAPTORLAKE P (Prarit Bhargava) [2117769] - tools/power turbostat: add support for ALDERLAKE_N (Prarit Bhargava) [2117769] - tools/power turbostat: dump secondary Turbo-Ratio-Limit (Prarit Bhargava) [2117769] - tools/power turbostat: simplify dump_turbo_ratio_limits() (Prarit Bhargava) [2117769] - tools/power turbostat: dump CPUID.7.EDX.Hybrid (Prarit Bhargava) [2117769] - tools/power turbostat: update turbostat.8 (Prarit Bhargava) [2117769] - tools/power turbostat: Show uncore frequency (Prarit Bhargava) [2117769] - tools/power turbostat: Fix file pointer leak (Prarit Bhargava) [2117769] - tools/power turbostat: replace strncmp with single character compare (Prarit Bhargava) [2117769] - tools/power turbostat: print the kernel boot commandline (Prarit Bhargava) [2117769] - tools/power turbostat: Introduce support for RaptorLake (Prarit Bhargava) [2117769] - tools/power turbostat: version 2022.04.16 (Prarit Bhargava) [2117769] - tools/power turbostat: No build warnings with -Wextra (Prarit Bhargava) [2117769] - tools/power turbostat: be more useful as non-root (Prarit Bhargava) [2117769] - tools/power turbostat: fix ICX DRAM power numbers (Prarit Bhargava) [2117769] - tools/power turbostat: Support thermal throttle count print (Prarit Bhargava) [2117769] - tools/power turbostat: Allow printing header every N iterations (Prarit Bhargava) [2117769] - tools/power turbostat: Allow -e for all names. (Prarit Bhargava) [2117769] - tools/power turbostat: print power values upto three decimal (Prarit Bhargava) [2117769] - tools/power turbostat: Add Power Limit4 support (Prarit Bhargava) [2117769] - tools/power turbostat: fix dump for AMD cpus (Prarit Bhargava) [2117769] - tools/power turbostat: tweak --show and --hide capability (Prarit Bhargava) [2117769] - NFSv4: Retry LOCK on OLD_STATEID during delegation return (Benjamin Coddington) [2137826] - KVM: s390: pv: don't allow userspace to set the clock under PV (Tobias Huschle) [2154284] - net: mana: Fix race on per-CQ variable napi work_done (Emanuele Giuseppe Esposito) [2151722] - powercap: intel_rapl: support new layout of Psys PowerLimit Register on SPR (Prarit Bhargava) [2106143] - ceph: choose auth MDS for getxattr with the Xs caps (Milind Changire) [2126703] - ceph: try to choose the auth MDS if possible for getattr (Milind Changire) [2126703] - ceph: convert to generic_file_llseek (Milind Changire) [2126707] - ceph: don't leak snap_rwsem in handle_cap_grant (Milind Changire) [2126706] - ceph: prevent a client from exceeding the MDS maximum xattr size (Milind Changire) [2126704] - ceph: add session already open notify support (Milind Changire) [2126701] - ceph: use correct index when encoding client supported features (Milind Changire) [2143875] - ceph: switch TASK_INTERRUPTIBLE to TASK_KILLABLE (Milind Changire) [2126700] - ceph: allow ceph.dir.rctime xattr to be updatable (Milind Changire) [2126699] - ipv6: Use ipv6_only_sock() helper in condition. (Izabela Bakollari) [2144855] - ipv6: Remove __ipv6_only_sock(). (Izabela Bakollari) [2144855] - redhat/configs: Switch CONFIG_X86_AMD_PSTATE to built-in (Prarit Bhargava) [2150424] - Documentation: add amd-pstate kernel command line options (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: add amd-pstate driver parameter for mode selection (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: change amd-pstate driver to be built-in type (Prarit Bhargava) [2150424] - cpufreq: amd-pstate: cpufreq: amd-pstate: reset MSR_AMD_PERF_CTL register at init (Prarit Bhargava) [2150424] - scsi: target: iscsi: Fix a race condition between login_work and the login thread (Maurizio Lombardi) [2153832] - virtio_console: Introduce an ID allocator for virtual console numbers (Cédric Le Goater) [2072437] - blk-throttle: fix that io throttle can only work for single bio (Ming Lei) [2088193] - scsi: zfcp: Fix double free of FSF request when qdio send fails (Tobias Huschle) [2155157] - scsi: qla2xxx: Fix crash when I/O abort times out (Nilesh Javali) [2115820] - perf trace: Fix SIGSEGV when processing syscall args (Michael Petlan) [2145089] - config: mhi: set CONFIG_MHI_BUS_EP to disabled (Íñigo Huguet) [2136123] - config: rtw89: set CONFIG_RTW89_8852C to disabled (Íñigo Huguet) [2136123] - wifi: ath11k: avoid deadlock during regulatory update in ath11k_regd_update() (Íñigo Huguet) [2136123 2139481] - wifi: mac80211: mlme: Fix double unlock on assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: Fix missing unlock on beacon RX (Íñigo Huguet) [2136123] - wifi: mac80211: fix memory corruption in minstrel_ht_update_rates() (Íñigo Huguet) [2136123] - wifi: mac80211: fix regression with non-QoS drivers (Íñigo Huguet) [2136123] - wifi: mac80211: ensure vif queues are operational after start (Íñigo Huguet) [2136123] - wifi: mac80211: don't start TX with fq->lock to fix deadlock (Íñigo Huguet) [2136123] - wifi: cfg80211: fix MCS divisor value (Íñigo Huguet) [2136123] - wifi: mt76: fix 5 GHz connection regression on mt76x0/mt76x2 (Íñigo Huguet) [2136123] - wifi: mt76: fix reading current per-tid starting sequence number for aggregation (Íñigo Huguet) [2136123] - wifi: iwlwifi: Mark IWLMEI as broken (Íñigo Huguet) [2136123] - wifi: iwlwifi: don't spam logs with NSS>2 messages (Íñigo Huguet) [2136123] - wifi: use struct_group to copy addresses (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: check length for virtio packets (Íñigo Huguet) [2136123] - wifi: mac80211: fix locking in auth/assoc timeout (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: release deflink channel in error case (Íñigo Huguet) [2136123] - wifi: mac80211: fix link warning in RX agg timer expiry (Íñigo Huguet) [2136123] - bus: mhi: host: Fix up null pointer access in mhi_irq_handler (Íñigo Huguet) [2136123] - net: Use u64_stats_fetch_begin_irq() for stats fetch. (Íñigo Huguet) [2136123] - wifi: mt76: mt7921e: fix crash in chip reset fail (Íñigo Huguet) [2136123] - wifi: mac80211: potential NULL dereference in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: cfg80211: debugfs: fix return type in ht40allow_map_read() (Íñigo Huguet) [2136123] - wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected (Íñigo Huguet) [2136123] - wifi: mac80211: fix possible leak in ieee80211_tx_control_port() (Íñigo Huguet) [2136123] - wifi: mac80211: always free sta in __sta_info_alloc in case of error (Íñigo Huguet) [2136123] - wifi: mac80211: Fix UAF in ieee80211_scan_rx() (Íñigo Huguet) [2136123] - net: qrtr: start MHI channel after endpoit creation (Íñigo Huguet) [2136123] - wifi: cfg80211: Fix validating BSS pointers in __cfg80211_connect_result (Íñigo Huguet) [2136123] - wifi: rtw88: check the return value of alloc_workqueue() (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: adjust IMR for SER L1 (Íñigo Huguet) [2136123] - wifi: rtw89: 8852a: update RF radio A/B R56 (Íñigo Huguet) [2136123] - wifi: brcmfmac: prevent double-free on hardware-reset (Íñigo Huguet) [2136123] - wifi: brcmfmac: support brcm,ccode-map-trivial DT property (Íñigo Huguet) [2136123] - wifi: brcmfmac: Replace default (not configured) MAC with a random MAC (Íñigo Huguet) [2136123] - wifi: brcmfmac: Add brcmf_c_set_cur_etheraddr() helper (Íñigo Huguet) [2136123] - wifi: brcmfmac: Remove #ifdef guards for PM related functions (Íñigo Huguet) [2136123] - wifi: brcmfmac: use strreplace() in brcmf_of_probe() (Íñigo Huguet) [2136123] - wifi: rtl8xxxu: Fix the error handling of the probe function (Íñigo Huguet) [2136123] - wifi: mwifiex: clean up one inconsistent indenting (Íñigo Huguet) [2136123] - wifi: rtlwifi: Remove duplicate word and Fix typo (Íñigo Huguet) [2136123] - wifi: mwifiex: Fix comment typo (Íñigo Huguet) [2136123] - wifi: iwlwifi: mvm: fix clang -Wformat warnings (Íñigo Huguet) [2136123] - Revert "ath11k: add support for hardware rfkill for QCA6390" (Íñigo Huguet) [2136123] - wifi: ath11k: Fix register write failure on QCN9074 (Íñigo Huguet) [2136123] - wifi: mac80211: fix link data leak (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix disassoc with MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add macros to loop over active links (Íñigo Huguet) [2136123] - wifi: mac80211: remove erroneous sband/link validation (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: transmit assoc frame with address translation (Íñigo Huguet) [2136123] - wifi: mac80211: verify link addresses are different (Íñigo Huguet) [2136123] - wifi: mac80211: rx: track link in RX data (Íñigo Huguet) [2136123] - wifi: mac80211: optionally implement MLO multicast TX (Íñigo Huguet) [2136123] - wifi: mac80211: expand ieee80211_mgmt_tx() for MLO (Íñigo Huguet) [2136123] - wifi: nl80211: add MLO link ID to the NL80211_CMD_FRAME TX API (Íñigo Huguet) [2136123] - wifi: mac80211: report link ID to cfg80211 on mgmt RX (Íñigo Huguet) [2136123] - wifi: cfg80211: report link ID in NL80211_CMD_FRAME (Íñigo Huguet) [2136123] - wifi: mac80211: add hardware timestamps for RX and TX (Íñigo Huguet) [2136123] - wifi: cfg80211: add hardware timestamps to frame RX info (Íñigo Huguet) [2136123] - wifi: cfg80211/nl80211: move rx management data into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: add a function for reporting TX status with hardware timestamps (Íñigo Huguet) [2136123] - wifi: nl80211: add RX and TX timestamp attributes (Íñigo Huguet) [2136123] - nl80211: document uapi for CMD_FRAME_WAIT_CANCEL (Íñigo Huguet) [2136123] - wifi: ieee80211: add helper functions for detecting TM/FTM frames (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: handle links for wmediumd/virtio (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix link_sta insertion (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix link_sta setup (Íñigo Huguet) [2136123] - wifi: nl80211/mac80211: clarify link ID in control port TX (Íñigo Huguet) [2136123] - wifi: mac80211: return error from control port TX for drops (Íñigo Huguet) [2136123] - wifi: nl80211: require MLD address on link STA add/modify (Íñigo Huguet) [2136123] - wifi: mac80211: more station handling sanity checks (Íñigo Huguet) [2136123] - wifi: mac80211: fix link sta hash table handling (Íñigo Huguet) [2136123] - wifi: mac80211: validate link address doesn't change (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo to mlo state (Íñigo Huguet) [2136123] - wifi: mac80211: fast-xmit: handle non-MLO clients (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix address translation for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: fix RX MLD address translation (Íñigo Huguet) [2136123] - wifi: mac80211: fix NULL pointer deref with non-MLD STA (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: fix override calculation (Íñigo Huguet) [2136123] - wifi: mac80211: tx: use AP address in some places for MLO (Íñigo Huguet) [2136123] - net: add missing includes and forward declarations under net/ (Íñigo Huguet) [2136123] - wifi: rtl8192se: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: rt2x00: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmsmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: brcmfmac: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: mac80211: do not abuse fq.lock in ieee80211_do_stop() (Íñigo Huguet) [2136123] - wifi: mt7601u: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: mt7601u: eeprom: fix clang -Wformat warning (Íñigo Huguet) [2136123] - wifi: ath: fix repeated words in comments (Íñigo Huguet) [2136123] - wifi: ath11k: mac: fix long line (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: set sta.mlo correctly (Íñigo Huguet) [2136123] - wifi: mac80211: remove stray printk (Íñigo Huguet) [2136123] - wifi: mac80211: support MLO authentication/association with one link (Íñigo Huguet) [2136123] - wifi: mac80211: add API to parse multi-link element (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix TX link selection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use MLO link ID for TX (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: do rc update per link (Íñigo Huguet) [2136123] - wifi: mac80211: do link->MLD address translation on RX (Íñigo Huguet) [2136123] - wifi: mac80211: select link when transmitting to non-MLO stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix up link station creation/insertion (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: implement sta_state for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: limit A-MSDU subframes for client too (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_set_associated() (Íñigo Huguet) [2136123] - wifi: cfg80211: add cfg80211_get_iftype_ext_capa() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: look up beacon elems only if needed (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc link setup (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove address arg to ieee80211_mark_sta_auth() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc success handling (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor ieee80211_prep_channel() a bit (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor assoc req element building (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: switch some things back to deflink (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: change flags in ieee80211_determine_chantype() (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: shift some code around (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: refactor link station setup (Íñigo Huguet) [2136123] - wifi: mac80211: move IEEE80211_SDATA_OPERATING_GMODE to link (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_check_rate_mask() link-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add multi-link element to AUTH frames (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: clean up supported channels element code (Íñigo Huguet) [2136123] - wifi: mac80211: release channel context on link stop (Íñigo Huguet) [2136123] - wifi: mac80211: prohibit DEAUTH_NEED_MGD_TX_PREP in MLO (Íñigo Huguet) [2136123] - wifi: nl80211: fix some attribute policy entries (Íñigo Huguet) [2136123] - wifi: nl80211: reject fragmented and non-inheritance elements (Íñigo Huguet) [2136123] - wifi: nl80211: reject link specific elements on assoc link (Íñigo Huguet) [2136123] - wifi: cfg80211: set country_elem to NULL (Íñigo Huguet) [2136123] - wifi: mac80211: remove link_id parameter from link_info_changed() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in switch/(un)assign_vif_chanctx() (Íñigo Huguet) [2136123] - wifi: nl80211: advertise MLO support (Íñigo Huguet) [2136123] - wifi: mac80211: Support multi link in ieee80211_recalc_min_chandef() (Íñigo Huguet) [2136123] - wifi: mac80211: don't check carrier in chanctx code (Íñigo Huguet) [2136123] - wifi: nl80211: allow link ID in set_wiphy with frequency (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL tx from specific link (Íñigo Huguet) [2136123] - wifi: mac80211: Allow EAPOL frames from link addresses (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: Support control port TX from specific link (Íñigo Huguet) [2136123] - wifi: nl80211: Support MLD parameters in nl80211_set_station() (Íñigo Huguet) [2136123] - wifi: nl80211: check MLO support in authenticate (Íñigo Huguet) [2136123] - wifi: mac80211: add a helper to fragment an element (Íñigo Huguet) [2136123] - wifi: mac80211: skip rate statistics for MLD STAs (Íñigo Huguet) [2136123] - wifi: nl80211: set BSS to NULL if IS_ERR() (Íñigo Huguet) [2136123] - wifi: nl80211: add EML/MLD capabilities to per-iftype capabilities (Íñigo Huguet) [2136123] - wifi: nl80211: better validate link ID for stations (Íñigo Huguet) [2136123] - wifi: mac80211: fix link manipulation (Íñigo Huguet) [2136123] - wifi: mac80211: tighten locking check (Íñigo Huguet) [2136123] - wifi: cfg80211: clean up links appropriately (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: simplify adding ht/vht/he/eht elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding custom elements (Íñigo Huguet) [2136123] - wifi: mac80211: refactor adding rates to assoc request (Íñigo Huguet) [2136123] - wifi: mac80211: use only channel width in ieee80211_parse_bitrates() (Íñigo Huguet) [2136123] - wifi: cfg80211: add ieee80211_chanwidth_rate_flags() (Íñigo Huguet) [2136123] - wifi: mac80211: remove redundant condition (Íñigo Huguet) [2136123] - wifi: mac80211: don't set link address for station (Íñigo Huguet) [2136123] - wifi: mac80211: fix multi-BSSID element parsing (Íñigo Huguet) [2136123] - wifi: mac80211: move tdls_chan_switch_prohibited to link data (Íñigo Huguet) [2136123] - wifi: mac80211: don't re-parse elems in ieee80211_assoc_success() (Íñigo Huguet) [2136123] - wifi: mac80211: replace link_id with link_conf in start/stop_ap() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor elements parsing with parameter struct (Íñigo Huguet) [2136123] - wifi: cfg80211: extend cfg80211_rx_assoc_resp() for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: put cfg80211_rx_assoc_resp() arguments into a struct (Íñigo Huguet) [2136123] - wifi: cfg80211: adjust assoc comeback for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: unify assoc data event sending (Íñigo Huguet) [2136123] - wifi: cfg80211: prepare association failure APIs for MLO (Íñigo Huguet) [2136123] - wifi: cfg80211: remove BSS pointer from cfg80211_disassoc_request (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use correct link_sta (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: remove sta argument from ieee80211_config_bw (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: use ieee80211_get_link_sband() (Íñigo Huguet) [2136123] - wifi: mac80211: split IEEE80211_STA_DISABLE_WMM to link data (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: first adjustments for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: do IEEE80211_STA_RESET_SIGNAL_AVE per link (Íñigo Huguet) [2136123] - wifi: mac80211: mlme: track AP (MLD) address separately (Íñigo Huguet) [2136123] - wifi: mac80211: remove unused bssid variable (Íñigo Huguet) [2136123] - wifi: mac80211: change QoS settings API to take link into account (Íñigo Huguet) [2136123] - wifi: mac80211: expect powersave handling in driver for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: move ps setting to vif config (Íñigo Huguet) [2136123] - wifi: mac80211: provide link ID in link_conf (Íñigo Huguet) [2136123] - wifi: mac80211: set up/tear down client vif links properly (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_request_smps_mgd_work (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex for dump_survey (Íñigo Huguet) [2136123] - wifi: mac80211: fix key lookup (Íñigo Huguet) [2136123] - wifi: mac80211: separate out connection downgrade flags (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D2.0 (Íñigo Huguet) [2136123] - wifi: mac80211: Align with Draft P802.11be_D1.5 (Íñigo Huguet) [2136123] - wifi: mac80211: skip powersave recalc if driver SUPPORTS_DYNAMIC_PS (Íñigo Huguet) [2136123] - wifi: mac80211: debug: omit link if non-MLO connection (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Ack link addressed frames (Íñigo Huguet) [2136123] - wifi: cfg80211: drop BSS elements from assoc trace for now (Íñigo Huguet) [2136123] - wifi: cfg80211: make cfg80211_auth_request::key_idx signed (Íñigo Huguet) [2136123] - wifi: nl80211: enable setting the link address at new station (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link/link_conf pointers (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for station APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for channel switch APIs (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex in add/mod/del link station (Íñigo Huguet) [2136123] - wifi: mac80211: implement callbacks for _link_station (Íñigo Huguet) [2136123] - wifi: cfg80211/mac80211: separate link params from station params (Íñigo Huguet) [2136123] - wifi: cfg80211: add API to add/modify/remove a link station (Íñigo Huguet) [2136123] - wifi: mac80211: add an ieee80211_get_link_sband (Íñigo Huguet) [2136123] - wifi: mac80211: Remove AP SMPS leftovers (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow MLO TX with link source address (Íñigo Huguet) [2136123] - wifi: mac80211: Consider MLO links in offchannel logic (Íñigo Huguet) [2136123] - wifi: mac80211: rx: accept link-addressed frames (Íñigo Huguet) [2136123] - wifi: mac80211: consistently use sdata_dereference() (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Support link channel matching on rx (Íñigo Huguet) [2136123] - wifi: mac80211: fix mesh airtime link metric estimating (Íñigo Huguet) [2136123] - wifi: mac80211: make 4addr null frames using min_rate for WDS (Íñigo Huguet) [2136123] - wifi: cfg80211: use strscpy to replace strlcpy (Íñigo Huguet) [2136123] - wifi: mac80211: exclude multicast packets from AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: use 32-bit skb cookie (Íñigo Huguet) [2136123] - mt76: mt7921: Let PCI core handle power state and use pm_sleep_ptr() (Íñigo Huguet) [2136123] - mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init() (Íñigo Huguet) [2136123] - mt76: get rid of mt76_wcid_hw routine (Íñigo Huguet) [2136123] - mt76: convert MT_TX_HW_QUEUE_EXT_PHY to MT_TX_HW_QUEUE_PHY (Íñigo Huguet) [2136123] - mt76: add phy_idx to mt76_wcid (Íñigo Huguet) [2136123] - mt76: introduce phys array in mt76_dev structure (Íñigo Huguet) [2136123] - mt76: add phy_idx in mt76_rx_status (Íñigo Huguet) [2136123] - mt76: introduce MT_RXQ_BAND2 and MT_RXQ_BAND2_WA in mt76_rxq_id (Íñigo Huguet) [2136123] - mt76: add len parameter to __mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915 add ht mpdu density (Íñigo Huguet) [2136123] - mt76: mt7921: reduce the mutex lock scope during reset (Íñigo Huguet) [2136123] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2136123] - mt76: connac: move tx initialization/cleanup in mt76_connac module (Íñigo Huguet) [2136123] - mt76: mt7921: make mt7921_pci_driver static (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter in the initialization stage (Íñigo Huguet) [2136123] - mt76: mt7921: enable HW beacon filter not depending on PM flag (Íñigo Huguet) [2136123] - mt76: remove q->qid (Íñigo Huguet) [2136123] - mt76: do not use skb_set_queue_mapping for internal purposes (Íñigo Huguet) [2136123] - mt76: pass original queue id from __mt76_tx_queue_skb to the driver (Íñigo Huguet) [2136123] - mt76: allow receiving frames with invalid CCMP PN via monitor interfaces (Íñigo Huguet) [2136123] - mt76: mt76x02: improve reliability of the beacon hang check (Íñigo Huguet) [2136123] - mt76: mt7615: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update the maximum size of beacon offload (Íñigo Huguet) [2136123] - mt76: do not check the ccmp pn for ONLY_MONITOR frame (Íñigo Huguet) [2136123] - mt76: mt7915: add sta_rec with EXTRA_INFO_NEW for the first time only (Íñigo Huguet) [2136123] - mt76: mt7915: update mpdu density in 6g capability (Íñigo Huguet) [2136123] - mt76: mt7915: do not copy ieee80211_ops pointer in mt7915_mmio_probe (Íñigo Huguet) [2136123] - mt76: mt7915: disable UL MU-MIMO for mt7915 (Íñigo Huguet) [2136123] - mt76: move mt76_connac2_mcu_fill_message in mt76_connac module (Íñigo Huguet) [2136123] - mt76: move mcu_txd/mcu_rxd structures in shared code (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_connac_tx_free (Íñigo Huguet) [2136123] - mt76: connac: move mt7615_txp_skb_unmap in common code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_write_hw_txp in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_complete_skb in shared code (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_tx_free in shared code (Íñigo Huguet) [2136123] - mt76: move mt7615_txp_ptr in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac_fw_txp in common module (Íñigo Huguet) [2136123] - mt76: mt7915: get rid of unnecessary new line in mt7915_mac_write_txwi (Íñigo Huguet) [2136123] - mt76: mt7921s: remove unnecessary goto in mt7921s_mcu_drv_pmctrl (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_fill_rx_rate in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_reverse_frag0_hdr_trans in mt76-connac module (Íñigo Huguet) [2136123] - mt76: connac: move HE radiotap parsing in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: fix command timeout in AP stop period (Íñigo Huguet) [2136123] - mt76: mt7921: not support beacon offload disable command (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_mac_add_txs_skb in connac module (Íñigo Huguet) [2136123] - mt76: connac: move connac2_mac_write_txwi in mt76_connac module (Íñigo Huguet) [2136123] - mt76: connac: move mac connac2 defs in mt76_connac2_mac.h (Íñigo Huguet) [2136123] - mt76: mt7915: rely on mt76_dev in mt7915_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev in mt7921_mac_write_txwi signature (Íñigo Huguet) [2136123] - mt76: enable the VHT extended NSS BW feature (Íñigo Huguet) [2136123] - mt76: mt7663: rely on mt76_connac2_fw_trailer (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_patch in connac module (Íñigo Huguet) [2136123] - mt76: connac: move mt76_connac2_load_ram in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: move fw toggle in mt7921_load_firmware (Íñigo Huguet) [2136123] - mt76: connac: move shared fw structures in connac module (Íñigo Huguet) [2136123] - mt76: mt7921: get rid of mt7921_mcu_exit (Íñigo Huguet) [2136123] - mt76: mt7921: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7615: add missing bh-disable around rx napi schedule (Íñigo Huguet) [2136123] - mt76: mt7915: add missing bh-disable around tx napi enable/schedule (Íñigo Huguet) [2136123] - mt76: mt7921: add PATCH_FINISH_REQ cmd response handling (Íñigo Huguet) [2136123] - mt76: add DBDC rxq handlings into mac_reset_work (Íñigo Huguet) [2136123] - mt76: mt7915: add more ethtool stats (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR config in tx power (Íñigo Huguet) [2136123] - mt76: mt7921: introduce ACPI SAR support (Íñigo Huguet) [2136123] - mt76: add 6 GHz band support in mt76_sar_freq_ranges (Íñigo Huguet) [2136123] - mt76: mt7915: fix endian bug in mt7915_rf_regval_set() (Íñigo Huguet) [2136123] - mt76: mt76x02u: fix possible memory leak in __mt76x02u_mcu_send_msg (Íñigo Huguet) [2136123] - mt76: mt7915: fix endianness in mt7915_rf_regval_get (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: add back erroneously removed cast (Íñigo Huguet) [2136123] - wifi: mac80211: fix queue selection for mesh/OCB interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: fix race condition in pending packet (Íñigo Huguet) [2136123] - wifi: mac80211: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2136123] - wifi: mac80211: fix center freq calculation in ieee80211_chandef_downgrade (Íñigo Huguet) [2136123] - wifi: nl80211: fix sending link ID info of associated BSS (Íñigo Huguet) [2136123] - wifi: cfg80211: fix a comment in cfg80211_mlme_mgmt_tx() (Íñigo Huguet) [2136123] - wifi: nl80211: Fix reading NL80211_ATTR_MLO_LINK_ID in nl80211_pre_doit (Íñigo Huguet) [2136123] - bus: mhi: ep: Check dev_set_name() return value (Íñigo Huguet) [2136123] - ath9k: remove unexpected words "the" in comments (Íñigo Huguet) [2136123] - ath11k: Fix typo in comments (Íñigo Huguet) [2136123] - wifi: nl80211: retrieve EHT related elements in AP mode (Íñigo Huguet) [2136123] - wifi: cfg80211: Increase akm_suites array size in cfg80211_crypto_settings (Íñigo Huguet) [2136123] - wifi: cfg80211: remove chandef check in cfg80211_cac_event() (Íñigo Huguet) [2136123] - wifi: nl80211: relax wdev mutex check in wdev_chandef() (Íñigo Huguet) [2136123] - wifi: nl80211: acquire wdev mutex earlier in start_ap (Íñigo Huguet) [2136123] - wifi: nl80211: hold wdev mutex for tid config (Íñigo Huguet) [2136123] - wifi: cfg80211: handle IBSS in channel switch (Íñigo Huguet) [2136123] - wifi: mac80211: properly skip link info driver update (Íñigo Huguet) [2136123] - wifi: mac80211: only accumulate airtime deficit for active clients (Íñigo Huguet) [2136123] - wifi: mac80211: add debugfs file to display per-phy AQL pending airtime (Íñigo Huguet) [2136123] - wifi: mac80211: add a per-PHY AQL limit to improve fairness (Íñigo Huguet) [2136123] - wifi: mac80211: keep recently active tx queues in scheduling list (Íñigo Huguet) [2136123] - wifi: mac80211: consider aql_tx_pending when checking airtime deficit (Íñigo Huguet) [2136123] - wifi: mac80211: make sta airtime deficit field s32 instead of s64 (Íñigo Huguet) [2136123] - wifi: mac80211: fix a kernel-doc complaint (Íñigo Huguet) [2136123] - wifi: cfg80211: remove redundant documentation (Íñigo Huguet) [2136123] - wifi: mac80211: sta_info: fix a missing kernel-doc struct element (Íñigo Huguet) [2136123] - wifi: mac80211: add a missing comma at kernel-doc markup (Íñigo Huguet) [2136123] - wifi: cfg80211: fix kernel-doc warnings all over the file (Íñigo Huguet) [2136123] - wifi: ieee80211: s1g action frames are not robust (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add another Foxconn T99W175 (Íñigo Huguet) [2136123] - wifi: cfg80211: Allow P2P client interface to indicate port authorization (Íñigo Huguet) [2136123] - wifi: mac80211: do not wake queues on a vif that is being stopped (Íñigo Huguet) [2136123] - wifi: mac80211: check skb_shared in ieee80211_8023_xmit() (Íñigo Huguet) [2136123] - wifi: mac80211: add gfp_t parameter to ieeee80211_obss_color_collision_notify (Íñigo Huguet) [2136123] - bus: mhi: host: Move IRQ allocation to controller registration phase (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add Cinterion MV31-W with new baseline (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Add support for Quectel EM120 FCCL modem (Íñigo Huguet) [2136123] - wifi: rtw89: disable invalid phy reports for all ICs (Íñigo Huguet) [2136123] - wifi: rtw89: pci: fix PCI doesn't reclaim TX BD properly (Íñigo Huguet) [2136123] - wifi: rtw89: fix long RX latency in low power mode (Íñigo Huguet) [2136123] - wifi: rtw89: drop invalid TX rate report of legacy rate (Íñigo Huguet) [2136123] - wifi: rtw89: add UNEXP debug mask to keep monitor messages unexpected to happen frequently (Íñigo Huguet) [2136123] - wifi: rtw89: enable VO TX AMPDU (Íñigo Huguet) [2136123] - wifi: rtw89: fix potential TX stuck (Íñigo Huguet) [2136123] - wifi: rtw89: support TDLS (Íñigo Huguet) [2136123] - wifi: rtw89: allocate BSSID CAM per TDLS peer (Íñigo Huguet) [2136123] - wifi: rtw89: separate BSSID CAM operations (Íñigo Huguet) [2136123] - wifi: rtw89: allocate address CAM and MAC ID to TDLS peer (Íñigo Huguet) [2136123] - cfg80211: Indicate MLO connection info in connect and roam callbacks (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: print the link id (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: support creating MLO-capable radios (Íñigo Huguet) [2136123] - wifi: nl80211: expose link ID for associated BSSes (Íñigo Huguet) [2136123] - wifi: nl80211: expose link information for interfaces (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: send a beacon per link (Íñigo Huguet) [2136123] - wifi: mac80211: set STA deflink addresses (Íñigo Huguet) [2136123] - wifi: mac80211: maintain link-sta hash table (Íñigo Huguet) [2136123] - wifi: mac80211: RCU-ify link STA pointers (Íñigo Huguet) [2136123] - wifi: mac80211: ethtool: use deflink for now (Íñigo Huguet) [2136123] - wifi: mac80211: move ieee80211_bssid_match() function (Íñigo Huguet) [2136123] - wifi: mac80211: return a beacon for a specific link (Íñigo Huguet) [2136123] - wifi: mac80211: pass the link id in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: use link in start/stop ap (Íñigo Huguet) [2136123] - wifi: mac80211: implement add/del interface link callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: add optional link add/remove callbacks (Íñigo Huguet) [2136123] - wifi: cfg80211: sort trace.h (Íñigo Huguet) [2136123] - wifi: mac80211: add sta link addition/removal (Íñigo Huguet) [2136123] - wifi: mac80211: add MLO link ID to TX frame metadata (Íñigo Huguet) [2136123] - wifi: mac80211: remove band from TX info in MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add vif link addition/removal (Íñigo Huguet) [2136123] - wifi: nl80211: support MLO in auth/assoc (Íñigo Huguet) [2136123] - wifi: mac80211: ignore IEEE80211_CONF_CHANGE_SMPS in chanctx mode (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: split bss_info_changed to vif/link info_changed (Íñigo Huguet) [2136123] - wifi: cfg80211: simplify cfg80211_mlme_auth() prototype (Íñigo Huguet) [2136123] - wifi: ieee80211: add definitions for multi-link element (Íñigo Huguet) [2136123] - wifi: nl80211: refactor BSS lookup in nl80211_associate() (Íñigo Huguet) [2136123] - wifi: cfg80211: mlme: get BSS entry outside cfg80211_mlme_assoc() (Íñigo Huguet) [2136123] - wifi: mac80211: tx: simplify chanctx_conf handling (Íñigo Huguet) [2136123] - wifi: mac80211: status: look up band only where needed (Íñigo Huguet) [2136123] - wifi: mac80211: sort trace.h file (Íñigo Huguet) [2136123] - wifi: mac80211: correct link config data in tracing (Íñigo Huguet) [2136123] - wifi: mac80211: make ieee80211_he_cap_ie_to_sta_he_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: make some SMPS code MLD-aware (Íñigo Huguet) [2136123] - wifi: mac80211: HT: make ieee80211_ht_cap_ie_to_sta_ht_cap() MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to eht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: add link_id to vht.c code for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some link setup code (Íñigo Huguet) [2136123] - wifi: mac80211: validate some driver features for MLO (Íñigo Huguet) [2136123] - wifi: mac80211: use IEEE80211_MLD_MAX_NUM_LINKS (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some sta_info link handling (Íñigo Huguet) [2136123] - wifi: mac80211: remove sta_info_tx_streams() (Íñigo Huguet) [2136123] - wifi: mac80211: make channel context code MLO-aware (Íñigo Huguet) [2136123] - wifi: mac80211: pass link ID where already present (Íñigo Huguet) [2136123] - wifi: mac80211: add per-link configuration pointer (Íñigo Huguet) [2136123] - wifi: mac80211: split bss_info_changed method (Íñigo Huguet) [2136123] - mac80211: fix maybe-unused warning (Íñigo Huguet) [2136123] - wifi: mac80211: reorg some iface data structs for MLD (Íñigo Huguet) [2136123] - wifi: mac80211: move interface config to new struct (Íñigo Huguet) [2136123] - wifi: mac80211: move some future per-link data to bss_conf (Íñigo Huguet) [2136123] - wifi: cfg80211: do some rework towards MLO link APIs (Íñigo Huguet) [2136123] - wifi: mac80211: reject WEP or pairwise keys with key ID > 3 (Íñigo Huguet) [2136123] - wifi: mac80211_hwsim: Directly use ida_alloc()/free() (Íñigo Huguet) [2136123] - wifi: mac80211: refactor some key code (Íñigo Huguet) [2136123] - wifi: mac80211: remove cipher scheme support (Íñigo Huguet) [2136123] - wifi: nl80211: fix typo in comment (Íñigo Huguet) [2136123] - treewide: Replace GPLv2 boilerplate/reference with SPDX - gpl-2.0_391.RULE (Íñigo Huguet) [2136123] - rtw88: 8821c: fix access const table of channel parameters (Íñigo Huguet) [2136123] - rtw89: add new state to CFO state machine for UL-OFDMA (Íñigo Huguet) [2136123] - rtw89: 8852c: add trigger frame counter (Íñigo Huguet) [2136123] - ieee80211: add trigger frame definition (Íñigo Huguet) [2136123] - ath10k: fix recently introduced checkpatch warning (Íñigo Huguet) [2136123] - wifi: rtw89: support MULTI_BSSID and correct BSSID mask of H2C (Íñigo Huguet) [2136123] - wifi: ray_cs: Drop useless status variable in parse_addr() (Íñigo Huguet) [2136123] - wifi: ray_cs: Utilize strnlen() in parse_addr() (Íñigo Huguet) [2136123] - wifi: rtw88: use *ph to print small buffer (Íñigo Huguet) [2136123] - ath11k: Fix warnings reported by checkpatch (Íñigo Huguet) [2136123] - ath11k: Fix LDPC config in set_bitrate_mask hook (Íñigo Huguet) [2136123] - wifi: mac80211: fix use-after-free in chanctx code (Íñigo Huguet) [2136123] - ath10k: fix regdomain info of iw reg set/get (Íñigo Huguet) [2136123] - ath11k: support avg signal in station dump (Íñigo Huguet) [2136123] - wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c() (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8821c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8723d_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix Sparse warning for rtw8822c_hw_spec (Íñigo Huguet) [2136123] - wifi: rtw88: Fix sparse warning for rtw8822b_hw_spec (Íñigo Huguet) [2136123] - rtw88: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: sar: adjust and support SAR on 6GHz band (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: re-calibrate RX DCK once thermal changes a lot (Íñigo Huguet) [2136123] - rtw89: pci: handle hardware watchdog timeout interrupt status (Íñigo Huguet) [2136123] - rtw89: fix null vif pointer when hw_scan fails (Íñigo Huguet) [2136123] - rtw89: fix channel inconsistency during hw_scan (Íñigo Huguet) [2136123] - wifi: rtw88: add a work to correct atomic scheduling warning of ::set_tim (Íñigo Huguet) [2136123] - wifi: iwlwifi: pcie: rename CAUSE macro (Íñigo Huguet) [2136123] - wifi: brcmfmac: work around a GCC 12 -Warray-bounds warning (Íñigo Huguet) [2136123] - wifi: iwlwifi: use unsigned to silence a GCC 12 warning (Íñigo Huguet) [2136123] - wifi: rtlwifi: remove always-true condition pointed out by GCC 12 (Íñigo Huguet) [2136123] - wifi: ath9k: silence array-bounds warning on GCC 12 (Íñigo Huguet) [2136123] - ath9k: replace ternary operator with max() (Íñigo Huguet) [2136123] - ath11k: Init hw_params before setting up AHB resources (Íñigo Huguet) [2136123] - ath11k: Fix warning on variable 'sar' dereference before check (Íñigo Huguet) [2136123] - ath10k: fix misreported tx bandwidth for 160Mhz (Íñigo Huguet) [2136123] - ath10k: add encapsulation offloading support (Íñigo Huguet) [2136123] - ath10k: turn rawmode into frame_mode (Íñigo Huguet) [2136123] - ath10k: improve tx status reporting (Íñigo Huguet) [2136123] - ath10k: do not enforce interrupt trigger type (Íñigo Huguet) [2136123] - iwlwifi: mei: fix potential NULL-ptr deref (Íñigo Huguet) [2136123] - iwlwifi: mei: clear the sap data header before sending (Íñigo Huguet) [2136123] - iwlwifi: mvm: remove vif_count (Íñigo Huguet) [2136123] - iwlwifi: mvm: always tell the firmware to accept MCAST frames in BSS (Íñigo Huguet) [2136123] - iwlwifi: mvm: add OTP info in case of init failure (Íñigo Huguet) [2136123] - iwlwifi: mvm: fix assert 1F04 upon reconfig (Íñigo Huguet) [2136123] - iwlwifi: mvm: clean up authorized condition (Íñigo Huguet) [2136123] - iwlwifi: mvm: use NULL instead of ERR_PTR when parsing wowlan status (Íñigo Huguet) [2136123] - iwlwifi: pcie: simplify MSI-X cause mapping (Íñigo Huguet) [2136123] - ath11k: update missing MU-MIMO and OFDMA stats (Íñigo Huguet) [2136123] - rtw89: pci: only mask out INT indicator register for disable interrupt v1 (Íñigo Huguet) [2136123] - rtw89: convert rtw89_band to nl80211_band precisely (Íñigo Huguet) [2136123] - rtw89: 8852c: update txpwr tables to HALRF_027_00_052 (Íñigo Huguet) [2136123] - rtw89: cfo: check mac_id to avoid out-of-bounds (Íñigo Huguet) [2136123] - rtw89: 8852c: set TX antenna path (Íñigo Huguet) [2136123] - rtw89: add ieee80211::sta_rc_update ops (Íñigo Huguet) [2136123] - wireless: Fix Makefile to be in alphabetical order (Íñigo Huguet) [2136123] - mac80211: refactor freeing the next_beacon (Íñigo Huguet) [2136123] - cfg80211: fix kernel-doc for cfg80211_beacon_data (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: support ieee80211_rate_status (Íñigo Huguet) [2136123] - mac80211: extend current rate control tx status API (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fill all requested rates (Íñigo Huguet) [2136123] - mac80211: disable BSS color collision detection in case of no free colors (Íñigo Huguet) [2136123] - nl80211: Parse NL80211_ATTR_HE_BSS_COLOR as a part of nl80211_parse_beacon (Íñigo Huguet) [2136123] - mac80211: mlme: track assoc_bss/associated separately (Íñigo Huguet) [2136123] - mac80211: remove useless bssid copy (Íñigo Huguet) [2136123] - mac80211: remove unused argument to ieee80211_sta_connection_lost() (Íñigo Huguet) [2136123] - mac80211: mlme: use local SSID copy (Íñigo Huguet) [2136123] - mac80211: use ifmgd->bssid instead of ifmgd->associated->bssid (Íñigo Huguet) [2136123] - mac80211: mlme: move in RSSI reporting code (Íñigo Huguet) [2136123] - mac80211: remove stray multi_sta_back_32bit docs (Íñigo Huguet) [2136123] - mac80211: fix typo in documentation (Íñigo Huguet) [2136123] - mac80211: unify CCMP/GCMP AAD construction (Íñigo Huguet) [2136123] - mt76: mt7921: add ipv6 NS offload support (Íñigo Huguet) [2136123] - mt76: add gfp to mt76_mcu_msg_alloc signature (Íñigo Huguet) [2136123] - mt76: mt7915: add more statistics from fw_util debugfs knobs (Íñigo Huguet) [2136123] - mt76: mt7915: improve error handling for fw_debug knobs (Íñigo Huguet) [2136123] - mt76: mt7615/mt7915: do reset_work with mt76's work queue (Íñigo Huguet) [2136123] - mt76: mt7915: add support for 6G in-band discovery (Íñigo Huguet) [2136123] - mt76: mt7915: add Wireless Ethernet Dispatch support (Íñigo Huguet) [2136123] - net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED) (Íñigo Huguet) [2136123] - mt76: make number of tokens configurable dynamically (Íñigo Huguet) [2136123] - mt76: add support for overriding the device used for DMA mapping (Íñigo Huguet) [2136123] - mt76: dma: add wrapper macro for accessing queue registers (Íñigo Huguet) [2136123] - mt76: mt7915: move MT_INT_MASK_CSR to init.c (Íñigo Huguet) [2136123] - mt76: mt7915: introduce mt7915_mac_severe_check() (Íñigo Huguet) [2136123] - mt76: mt7915: rework SER debugfs knob (Íñigo Huguet) [2136123] - mt76: mt7915: limit minimum twt duration (Íñigo Huguet) [2136123] - mt76: mt7915: reject duplicated twt flows (Íñigo Huguet) [2136123] - mt76: mt7915: update mt7986 patch in mt7986_wmac_adie_patch_7976() (Íñigo Huguet) [2136123] - mt76: connac: use skb_put_data instead of open coding (Íñigo Huguet) [2136123] - mt76: mt7915: configure soc clocks in mt7986_wmac_init (Íñigo Huguet) [2136123] - mt76: fix encap offload ethernet type check (Íñigo Huguet) [2136123] - mt76: mt7915: disable RX_HDR_TRANS_SHORT (Íñigo Huguet) [2136123] - mt76: mt7603: move spin_lock_bh() to spin_lock() (Íñigo Huguet) [2136123] - mt76: mt7915: add debugfs knob for RF registers read/write (Íñigo Huguet) [2136123] - mt76: mt7921: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: make read-only array ppet16_ppet8_ru3_ru0 static const (Íñigo Huguet) [2136123] - mt76: mt7915: remove SCS feature (Íñigo Huguet) [2136123] - mt76: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2136123] - mt76: mt7921: Add AP mode support (Íñigo Huguet) [2136123] - mt76: mt7915: use 0xff to initialize bitrate_mask in mt7915_init_bitrate_mask (Íñigo Huguet) [2136123] - mt76: mt7915: always call mt7915_wfsys_reset() during init (Íñigo Huguet) [2136123] - mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter (Íñigo Huguet) [2136123] - mt76: mt7921u: add suspend/resume support (Íñigo Huguet) [2136123] - mt76: fix MBSS index condition in DBDC mode (Íñigo Huguet) [2136123] - mt76: fix use-after-free by removing a non-RCU wcid pointer (Íñigo Huguet) [2136123] - mt76: mt7921: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: mt7915: accept rx frames with non-standard VHT MCS10-11 (Íñigo Huguet) [2136123] - mt76: dma: use kzalloc instead of devm_kzalloc for txwi (Íñigo Huguet) [2136123] - mt76: reduce tx queue lock hold time (Íñigo Huguet) [2136123] - mt76: mt7915: rework hardware/phy initialization (Íñigo Huguet) [2136123] - rtlwifi: Use pr_warn instead of WARN_ONCE (Íñigo Huguet) [2136123] - rtw89: add debug entry to dump BSSID CAM (Íñigo Huguet) [2136123] - rtw89: add debug select to dump MAC pages 0x30 to 0x33 (Íñigo Huguet) [2136123] - rtw89: correct CCA control (Íñigo Huguet) [2136123] - rtw89: correct setting of RX MPDU length (Íñigo Huguet) [2136123] - rtw89: 8852c: add settings to decrease the effect of DC (Íñigo Huguet) [2136123] - brcmfmac: allow setting wlan MAC address using device tree (Íñigo Huguet) [2136123] - ath11k: remove redundant assignment to variables vht_mcs and he_mcs (Íñigo Huguet) [2136123] - ath11k: Reuse the available memory after firmware reload (Íñigo Huguet) [2136123] - ath11k: Designating channel frequency when sending management frames (Íñigo Huguet) [2136123] - ath11k: Implement remain-on-channel support (Íñigo Huguet) [2136123] - ath11k: Handle keepalive during WoWLAN suspend and resume (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Foxconn T99W373 and T99W368 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN990 (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: add Telit FN980 v1 hardware revision (Íñigo Huguet) [2136123] - bus: mhi: replace snprintf with sysfs_emit (Íñigo Huguet) [2136123] - rtw88: adjust adaptivity option to 1 (Íñigo Huguet) [2136123] - ath11k: Fix RX de-fragmentation issue on WCN6750 (Íñigo Huguet) [2136123] - ath10k: support bus and device specific API 1 BDF selection (Íñigo Huguet) [2136123] - ath10k: mac: fix too long lines (Íñigo Huguet) [2136123] - ath11k: mac: fix too long line (Íñigo Huguet) [2136123] - mac80211: support disabling EHT mode (Íñigo Huguet) [2136123] - cfg80211: support disabling EHT mode (Íñigo Huguet) [2136123] - mac80211: upgrade passive scan to active scan on DFS channels after beacon rx (Íñigo Huguet) [2136123] - mac80211: tx: delete a redundant if statement in ieee80211_check_fast_xmit() (Íñigo Huguet) [2136123] - mac80211: consider Order bit to fill CCMP AAD (Íñigo Huguet) [2136123] - cfg80211: declare MODULE_FIRMWARE for regulatory.db (Íñigo Huguet) [2136123] - nl80211: rework internal_flags usage (Íñigo Huguet) [2136123] - nl80211: don't hold RTNL in color change request (Íñigo Huguet) [2136123] - cfg80211: remove cfg80211_get_chan_state() (Íñigo Huguet) [2136123] - ath11k: Add support for targets without trustzone (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852ce to Makefile and Kconfig (Íñigo Huguet) [2136123] - rtw89: 8852c: fix warning of FIELD_PREP() mask type (Íñigo Huguet) [2136123] - rtw89: 8852c: correct register definitions used by 8852c (Íñigo Huguet) [2136123] - rtw89: correct AID settings of beamformee (Íñigo Huguet) [2136123] - rtw89: ps: fine tune polling interval while changing low power mode (Íñigo Huguet) [2136123] - rtw89: 8852c: add basic and remaining chip_info (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops::bb_ctrl_btc_preagc (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: get calibrated channels to notify firmware (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DPK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add IQK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RX DCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add TSSI (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add LCK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add DACK (Íñigo Huguet) [2136123] - rtw89: 8852c: rfk: add RFK tables (Íñigo Huguet) [2136123] - rtw88: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath10k: remove a copy of the NAPI_POLL_WEIGHT define (Íñigo Huguet) [2136123] - ath11k: Add support for WCN6750 device (Íñigo Huguet) [2136123] - ath11k: Datapath changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: HAL changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add QMI changes for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Fetch device information via QMI for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add register access logic for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Add HW params for WCN6750 (Íñigo Huguet) [2136123] - ath11k: Move parameters in bus_params to hw_params (Íñigo Huguet) [2136123] - ath11k: change management tx queue to avoid connection timed out (Íñigo Huguet) [2136123] - ath11k: fix warning of not found station for bssid in message (Íñigo Huguet) [2136123] - rtw88: fix hw scan may cause disconnect issue (Íñigo Huguet) [2136123] - rtw88: fix not disabling beacon filter after disconnection (Íñigo Huguet) [2136123] - rtw88: add HT MPDU density value for each chip (Íñigo Huguet) [2136123] - ath11k: Don't use GFP_KERNEL in atomic context (Íñigo Huguet) [2136123] - ath10k: skip ath10k_halt during suspend for driver state RESTARTING (Íñigo Huguet) [2136123] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2136123] - ath10k: simplify if-if to if-else (Íñigo Huguet) [2136123] - ath11k: read country code from SMBIOS for WCN6855/QCA6390 (Íñigo Huguet) [2136123] - ath11k: disable spectral scan during spectral deinit (Íñigo Huguet) [2136123] - ath11k: Update WBM idle ring HP after FW mode on (Íñigo Huguet) [2136123] - ath11k: WMI changes to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Do not put HW in DBS mode for WCN6750 (Íñigo Huguet) [2136123] - rtlwifi: btcoex: fix if == else warning (Íñigo Huguet) [2136123] - rtw88: use the correct bit in the REG_HCI_OPT_CTRL register (Íñigo Huguet) [2136123] - mwifiex: Add SD8997 SDIO-UART firmware (Íñigo Huguet) [2136123] - mwifiex: Select firmware based on strapping (Íñigo Huguet) [2136123] - rtw89: 8852c: add chip_ops related to BTC (Íñigo Huguet) [2136123] - rtw89: 8852c: fill freq and band of RX status by PPDU report (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops::get_thermal (Íñigo Huguet) [2136123] - rtw89: 8852c: implement chip_ops related to TX power (Íñigo Huguet) [2136123] - rtw89: 8852c: configure default BB TX/RX path (Íñigo Huguet) [2136123] - rtw89: add RF H2C to notify firmware (Íñigo Huguet) [2136123] - rtw89: don't flush hci queues and send h2c if power is off (Íñigo Huguet) [2136123] - rtw89: pci: allow to process RPP prior to TX BD (Íñigo Huguet) [2136123] - rtw89: ps: access TX/RX rings via another registers in low power mode (Íñigo Huguet) [2136123] - rtw89: ser: re-enable interrupt in threadfn if under_recovery (Íñigo Huguet) [2136123] - rtw89: pci: add a separate interrupt handler for low power mode (Íñigo Huguet) [2136123] - rtw89: pci: reclaim TX BD only if it really need (Íñigo Huguet) [2136123] - rtw89: pci: add variant RPWM/CPWM to enter low power mode (Íñigo Huguet) [2136123] - rtw89: pci: add variant IMR/ISR and configure functions (Íñigo Huguet) [2136123] - bus: mhi: host: Add support for Cinterion MV32-WA/MV32-WB (Íñigo Huguet) [2136123] - bus: mhi: host: Optimize and update MMIO register write method (Íñigo Huguet) [2136123] - bus: mhi: host: Bail on writing register fields if read fails (Íñigo Huguet) [2136123] - bus: mhi: host: Wait for ready state after reset (Íñigo Huguet) [2136123] - bus: mhi: host: Add soc_reset sysfs (Íñigo Huguet) [2136123] - bus: mhi: host: pci_generic: Sort mhi_pci_id_table based on the PID (Íñigo Huguet) [2136123] - bus: mhi: host: Use cached values for calculating the shared write pointer (Íñigo Huguet) [2136123] - rtw88: pci: 8821c: Disable 21ce completion timeout (Íñigo Huguet) [2136123] - rtw88: fix uninitialized 'tim_offset' warning (Íñigo Huguet) [2136123] - rtw89: 8852c: add help function of set channel (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel of BB part (Íñigo Huguet) [2136123] - rtw89: 8852c: set channel of MAC part (Íñigo Huguet) [2136123] - rtw89: 8852c: add set channel function of RF part (Íñigo Huguet) [2136123] - rtw89: 8852c: add HFC parameters (Íñigo Huguet) [2136123] - rtw89: 8852c: add efuse gain offset parser (Íñigo Huguet) [2136123] - rtw89: 8852c: support bb gain info (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB initial and reset functions (Íñigo Huguet) [2136123] - rtw89: 8852c: phy: configure TSSI bandedge (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power track tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add TX power by rate and limit tables (Íñigo Huguet) [2136123] - rtw89: 8852c: add BB and RF parameters tables (Íñigo Huguet) [2136123] - ath9k: fix QCA9561 PA bias level (Íñigo Huguet) [2136123] - ath9k_htc: fix potential out of bounds access with invalid rxstatus->rs_keyix (Íñigo Huguet) [2136123] - ath11k: Fix build warning without CONFIG_IPV6 (Íñigo Huguet) [2136123] - ath11k: fix missing unlock on error in ath11k_wow_op_resume() (Íñigo Huguet) [2136123] - ath11k: Add support for SAR (Íñigo Huguet) [2136123] - ath11k: add support for extended wmi service bit (Íñigo Huguet) [2136123] - rtw89: pci: correct return value handling of rtw89_write16_mdio_mask() (Íñigo Huguet) [2136123] - rtw89: configure security CAM for V1 chip (Íñigo Huguet) [2136123] - rtw89: add new H2C to configure security CAM via DCTL for V1 chip (Íñigo Huguet) [2136123] - rtw89: extend H2C of CMAC control info (Íñigo Huguet) [2136123] - rtlwifi: rtl8192cu: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2136123] - rtlwifi: Fix spelling mistake "cacluated" -> "calculated" (Íñigo Huguet) [2136123] - rtw88: 8821ce: Disable PCIe ASPM L1 for 8821CE using chip ID (Íñigo Huguet) [2136123] - rtw88: 8821ce: add support for device ID 0xb821 (Íñigo Huguet) [2136123] - rtw88: 8821c: fix debugfs rssi value (Íñigo Huguet) [2136123] - rtw88: do PHY calibration while starting AP (Íñigo Huguet) [2136123] - rtw88: 8821c: Enable TX report for management frames (Íñigo Huguet) [2136123] - rtw88: Add update beacon flow for AP mode (Íñigo Huguet) [2136123] - rtw88: fix incorrect frequency reported (Íñigo Huguet) [2136123] - rtw88: add ieee80211:sta_rc_update ops (Íñigo Huguet) [2136123] - rtw89: rtw89_ser: add const to struct state_ent and event_ent (Íñigo Huguet) [2136123] - rtw89: 8852c: add 8852c specific BT-coexistence initial function (Íñigo Huguet) [2136123] - rtw89: Skip useless dig gain and igi related settings for 8852C (Íñigo Huguet) [2136123] - rtw89: 8852c: disable firmware watchdog if CPU disabled (Íñigo Huguet) [2136123] - rtw89: reset BA CAM (Íñigo Huguet) [2136123] - rtw89: change station scheduler setting for hardware TX mode (Íñigo Huguet) [2136123] - rtw89: ser: configure top ERR IMR for firmware to recover (Íñigo Huguet) [2136123] - rtw89: ser: configure C-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: configure D-MAC interrupt mask (Íñigo Huguet) [2136123] - rtw89: ser: fix unannotated fall-through (Íñigo Huguet) [2136123] - ath9k: Remove unnecessary print function dev_err() (Íñigo Huguet) [2136123] - ath11k: Fix spelling mistake "reseting" -> "resetting" (Íñigo Huguet) [2136123] - ath9k: fix ath_get_rate_txpower() to respect the rate list end tag (Íñigo Huguet) [2136123] - mac80211: prepare sta handling for MLO support (Íñigo Huguet) [2136123] - mac80211: minstrel_ht: fix where rate stats are stored (fixes debugfs output) (Íñigo Huguet) [2136123] - nl80211: show SSID for P2P_GO interfaces (Íñigo Huguet) [2136123] - mac80211: introduce BSS color collision detection (Íñigo Huguet) [2136123] - mac80211: Improve confusing comment around tx_info clearing (Íñigo Huguet) [2136123] - mac80211: protect ieee80211_assign_beacon with next_beacon check (Íñigo Huguet) [2136123] - rtl8xxxu: fill up txrate info for gen1 chips (Íñigo Huguet) [2136123] - rtl8xxxu: feed antenna information for cfg80211 (Íñigo Huguet) [2136123] - rtlwifi: replace usage of found with dedicated list iterator variable (Íñigo Huguet) [2136123] - brcmfmac: Avoid keeping power to SDIO card unless WOWL is used (Íñigo Huguet) [2136123] - mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue (Íñigo Huguet) [2136123] - rtw89: fix misconfiguration on hw_scan channel time (Íñigo Huguet) [2136123] - rtw89: coex: Add case for scan offload (Íñigo Huguet) [2136123] - rtw89: packet offload handler to avoid warning (Íñigo Huguet) [2136123] - rtw89: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - rtw89: update ptcl_init (Íñigo Huguet) [2136123] - rtw89: update TMAC parameters (Íñigo Huguet) [2136123] - rtw89: initialize NAV control (Íñigo Huguet) [2136123] - rtw89: update scheduler setting (Íñigo Huguet) [2136123] - rtw89: 8852c: update security engine setting (Íñigo Huguet) [2136123] - rtw89: Turn on CR protection of CMAC (Íñigo Huguet) [2136123] - rtw89: add chip_ops::{enable,disable}_bb_rf to support v1 chip (Íñigo Huguet) [2136123] - rtw89: update STA scheduler parameters for v1 chip (Íñigo Huguet) [2136123] - rtw89: extend dmac_pre_init to support 8852C (Íñigo Huguet) [2136123] - rtw89: pci: add L1 settings (Íñigo Huguet) [2136123] - rtw89: pci: add deglitch setting (Íñigo Huguet) [2136123] - rtw89: pci: set address info registers depends on chips (Íñigo Huguet) [2136123] - rtw89: pci: add LTR setting for v1 chip (Íñigo Huguet) [2136123] - rtw89: pci: refine pci pre_init function (Íñigo Huguet) [2136123] - rtw89: pci: add pci attributes to configure operating mode (Íñigo Huguet) [2136123] - rtw89: pci: add register definition to rtw89_pci_info to generalize pci code (Íñigo Huguet) [2136123] - ath11k: mhi: remove unnecessary goto from ath11k_mhi_start() (Íñigo Huguet) [2136123] - ath11k: mhi: add error handling for suspend and resume (Íñigo Huguet) [2136123] - ath11k: mhi: remove state machine (Íñigo Huguet) [2136123] - rtw89: handle potential uninitialized variable (Íñigo Huguet) [2136123] - rtw89: read RX bandwidth from v1 type RX descriptor (Íñigo Huguet) [2136123] - rtw89: support hardware generate security header (Íñigo Huguet) [2136123] - rtw89: support variant of fill_txdesc (Íñigo Huguet) [2136123] - rtw89: pci: support variant of fill_txaddr_info (Íñigo Huguet) [2136123] - rtw89: add chip_info::h2c_desc_size/fill_txdesc_fwcmd to support new chips (Íñigo Huguet) [2136123] - rtw89: disabled IGI configuration for unsupported hardware (Íñigo Huguet) [2136123] - rtw89: packed IGI configuration flow into function for DIG feature (Íñigo Huguet) [2136123] - rtw89: regd: update mapping table to R59-R32 (Íñigo Huguet) [2136123] - rtw89: regd: consider 6G band (Íñigo Huguet) [2136123] - rtw89: 8852a: update txpwr tables to HALRF_027_00_038 (Íñigo Huguet) [2136123] - rtw89: add UK to regulation type (Íñigo Huguet) [2136123] - rtw89: reduce export symbol number of mac size and quota (Íñigo Huguet) [2136123] - rtw89: support FW crash simulation (Íñigo Huguet) [2136123] - rtw89: reconstruct fw feature (Íñigo Huguet) [2136123] - rtw89: ser: dump fw backtrace while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: dump memory for fw payload engine while L2 reset (Íñigo Huguet) [2136123] - rtw89: ser: control hci interrupts on/off by state (Íñigo Huguet) [2136123] - rtw89: mac: correct decision on error status by scenario (Íñigo Huguet) [2136123] - rtw89: mac: move table of mem base addr to common (Íñigo Huguet) [2136123] - rtw89: ser: fix CAM leaks occurring in L2 reset (Íñigo Huguet) [2136123] - rtw88: change idle mode condition during hw_scan (Íñigo Huguet) [2136123] - iwlwifi: mei: Replace zero-length array with flexible-array member (Íñigo Huguet) [2136123] - iwlwifi: fw: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2136123] - ath11k: fix driver initialization failure with WoW unsupported hw (Íñigo Huguet) [2136123] - ath11k: Remove unnecessary delay in ath11k_core_suspend (Íñigo Huguet) [2136123] - ath11k: Change max no of active probe SSID and BSSID to fw capability (Íñigo Huguet) [2136123] - ath11k: Remove core PCI references from PCI common code (Íñigo Huguet) [2136123] - ath11k: Refactor MSI logic to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: Choose MSI config based on HW revision (Íñigo Huguet) [2136123] - ath11k: Refactor PCI code to support WCN6750 (Íñigo Huguet) [2136123] - ath11k: PCI changes to support WCN6750 (Íñigo Huguet) [2136123] - bus: mhi: ep: Add uevent support for module autoloading (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for suspending and resuming channels (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for queueing SKBs to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing channel rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for reading from the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing command rings (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling SYS_ERR condition (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for handling MHI_RESET (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering down the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for powering up the MHI endpoint stack (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for processing MHI endpoint interrupts (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MHI state machine (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for sending events to the host (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for ring management (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for managing MMIO registers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for creating and destroying MHI EP devices (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint client drivers (Íñigo Huguet) [2136123] - bus: mhi: ep: Add support for registering MHI endpoint controllers (Íñigo Huguet) [2136123] - ath9k: make is2ghz consistent in ar9003_eeprom (Íñigo Huguet) [2136123] - ath10k: add support for MSDU IDs for USB devices (Íñigo Huguet) [2136123] - ath11k: add support to search regdb data in board-2.bin for WCN6855 (Íñigo Huguet) [2136123] - ath11k: store and send country code to firmware after recovery (Íñigo Huguet) [2136123] - ath9k: add functions to get paprd rate mask (Íñigo Huguet) [2136123] - ath9k: refactor ar9003_hw_spur_mitigate_ofdm (Íñigo Huguet) [2136123] - ath9k: fix ar9003_get_eepmisc (Íñigo Huguet) [2136123] - ath9k: use AR9300_MAX_CHAINS when appropriate (Íñigo Huguet) [2136123] - ath9k: split set11nRateFlags and set11nChainSel (Íñigo Huguet) [2136123] - ath9k: make ATH_SREV macros more consistent (Íñigo Huguet) [2136123] - ath11k: Add peer rhash table support (Íñigo Huguet) [2136123] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2136123] - ath11k: add fallback board name without variant while searching board-2.bin (Íñigo Huguet) [2136123] - ath11k: enable PLATFORM_CAP_PCIE_GLOBAL_RESET QMI host capability (Íñigo Huguet) [2136123] - ath11k: Add hw-restart option to simulate_fw_crash (Íñigo Huguet) [2136123] - ath11k: add synchronization operation between reconfigure of mac80211 and ath11k_base (Íñigo Huguet) [2136123] - ath11k: add support for device recovery for QCA6390/WCN6855 (Íñigo Huguet) [2136123] - ath11k: disable regdb support for QCA6390 (Íñigo Huguet) [2136123] - ath11k: remove unused ATH11K_BD_IE_BOARD_EXT (Íñigo Huguet) [2136123] - ath11k: change fw build id format in driver init log (Íñigo Huguet) [2136123] - ath11k: Refactor the peer delete (Íñigo Huguet) [2136123] - ath10k: Use of_device_get_match_data() helper (Íñigo Huguet) [2136123] - ath10k: Trigger sta disconnect on hardware restart (Íñigo Huguet) [2136123] - ath9k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2136123] - ath11k: support GTK rekey offload (Íñigo Huguet) [2136123] - ath11k: support ARP and NS offload (Íñigo Huguet) [2136123] - ath11k: purge rx pktlog when entering WoW (Íñigo Huguet) [2136123] - ath11k: implement hardware data filter (Íñigo Huguet) [2136123] - ath11k: Add WoW net-detect functionality (Íñigo Huguet) [2136123] - ath11k: Add basic WoW functionalities (Íñigo Huguet) [2136123] - x86/cpu: Add several Intel server CPU model numbers (Prarit Bhargava) [2158037] - ice: Implement devlink port split operations (Petr Oros) [2009705] - ice: Add additional flags to ice_nvm_write_activate (Petr Oros) [2009705] - ice: Add port option admin queue commands (Petr Oros) [2009705] - hwmon: (coretemp) Check for null before removing sysfs attrs (Phil Auld) [2152429] - KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID (Jon Maloy) [2099301] {CVE-2022-1789} - redhat/configs: enable HP_WATCHDOG for aarch64 (Mark Salter) [2113079] - watchdog/hpwdt: Enable HP_WATCHDOG for ARM64 systems. (Mark Salter) [2113079] - watchdog: Improve Kconfig entry ordering and dependencies (Mark Salter) [2113079] - watchdog/hpwdt: Include nmi.h only if CONFIG_HPWDT_NMI_DECODING (Mark Salter) [2113079] - uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix (Oleg Nesterov) [2133797] - platform/mellanox: Remove redundant 'NULL' check (Mark Langsdorf) [2122314] - platform/mellanox: Remove unnecessary code (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix locking issue (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix coverity warning (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-lc: Fix error flow and extend verbosity (Mark Langsdorf) [2122314] - platform/mellanox: mlxreg-io: Add locking for io operations (Mark Langsdorf) [2122314] - platform/mellanox: nvsw-sn2201: fix error code in nvsw_sn2201_create_static_devices() (Mark Langsdorf) [2122314] - platform/mellanox: Add static in struct declaration. (Mark Langsdorf) [2122314] - platform/mellanox: Spelling s/platfom/platform/ (Mark Langsdorf) [2122314] - redhat/configs: Enable Mellanox SN2201 management device (Mark Langsdorf) [2122314] - platform/mellanox: Add support for new SN2201 system (Mark Langsdorf) [2122314] - platform_data/mlxreg: Add field for notification callback (Mark Langsdorf) [2122314] - Bluetooth: btintel: Fix WBS setting for Intel legacy ROM products (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix broken LED quirk for legacy ROM devices (Gopal Tiwari) [2129295] - Bluetooth: Add support hdev to allocate private data (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the legacy bootloader returns tlv based version (Gopal Tiwari) [2129295] - Bluetooth: btintel: Clean the exported function to static (Gopal Tiwari) [2129295] - Bluetooth: btintel: Move hci quirks to setup routine (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for bootloader devices (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined set_diag functions (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the LED is not turning off immediately (Gopal Tiwari) [2129295] - Bluetooth: btintel: Fix the first HCI command not work with ROM device (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add btintel data struct (Gopal Tiwari) [2129295] - Bluetooth: btintel: Refactoring setup routine for legacy ROM sku (Gopal Tiwari) [2129295] - Bluetooth: btintel: Add combined setup and shutdown functions (Gopal Tiwari) [2129295] - EDAC/mc_sysfs: Increase legacy channel support to 12 (Aristeu Rozanski) [2139861] - NFS: Trigger the "ls -l" readdir heuristic sooner (Benjamin Coddington) [2025991] - NFS: Cache all entries in the readdirplus reply (Benjamin Coddington) [2025991] - NFS: Optimise away the previous cookie field (Benjamin Coddington) [2025991] - NFS: Fix up forced readdirplus (Benjamin Coddington) [2025991] - NFS: Convert readdir page cache to use a cookie based index (Benjamin Coddington) [2025991] - NFS: Clean up page array initialisation/free (Benjamin Coddington) [2025991] - NFS: Trace effects of the readdirplus heuristic (Benjamin Coddington) [2025991] - NFS: Trace effects of readdirplus on the dcache (Benjamin Coddington) [2025991] - NFS: Add basic readdir tracing (Benjamin Coddington) [2025991] - NFS: Don't request readdirplus when revalidation was forced (Benjamin Coddington) [2025991] - NFSv4: Ask for a full XDR buffer of readdir goodness (Benjamin Coddington) [2025991] - NFS: Don't ask for readdirplus unless it can help nfs_getattr() (Benjamin Coddington) [2025991] - NFS: Improve heuristic for readdirplus (Benjamin Coddington) [2025991] - NFS: Reduce use of uncached readdir (Benjamin Coddington) [2025991] - NFS: Simplify nfs_readdir_xdr_to_array() (Benjamin Coddington) [2025991] - NFS: If the cookie verifier changes, we must invalidate the page cache (Benjamin Coddington) [2025991] - NFS: Adjust the amount of readahead performed by NFS readdir (Benjamin Coddington) [2025991] - NFS: Don't advance the page pointer unless the page is full (Benjamin Coddington) [2025991] - NFS: Don't re-read the entire page cache to find the next cookie (Benjamin Coddington) [2025991] - NFS: Store the change attribute in the directory page cache (Benjamin Coddington) [2025991] - NFS: Calculate page offsets algorithmically (Benjamin Coddington) [2025991] - NFS: Use kzalloc() to avoid initialising the nfs_open_dir_context (Benjamin Coddington) [2025991] - NFS: Initialise the readdir verifier as best we can in nfs_opendir() (Benjamin Coddington) [2025991] - NFS: Trace lookup revalidation failure (Benjamin Coddington) [2025991] - NFS: constify nfs_server_capable() and nfs_have_writebacks() (Benjamin Coddington) [2025991] - NFS: Return valid errors from nfs2/3_decode_dirent() (Benjamin Coddington) [2025991] - NFS: Avoid duplicate uncached readdir calls on eof (Benjamin Coddington) [2025991] - NFS: Don't skip directory entries when doing uncached readdir (Benjamin Coddington) [2025991] - NFS: Don't overfill uncached readdir pages (Benjamin Coddington) [2025991] - block: unhash blkdev part inode when the part is deleted (Ming Lei) [2148497]- x86/fpu: Drop fpregs lock before inheriting FPU permissions (Eder Zulian) [2153549] - cpufreq: amd-pstate: Add resume and suspend callbacks (Mark Langsdorf) [2122310] - cpufreq: CPPC: Enable dvfs_possible_from_any_cpu (Mark Langsdorf) [2122310] - cpufreq: check only freq_table in __resolve_freq() (Mark Langsdorf) [2122310] - cpufreq: ondemand: Use cpumask_var_t for on-stack cpu mask (Mark Langsdorf) [2122310] - cpufreq: Change order of online() CB and policy->cpus modification (Mark Langsdorf) [2122310] - cpufreq: Warn users while freeing active policy (Mark Langsdorf) [2122310] - cpufreq: Drop unnecessary cpus locking from store() (Mark Langsdorf) [2122310] - cpufreq: Optimize cpufreq_show_cpus() (Mark Langsdorf) [2122310] - cpufreq: make interface functions and lock holding state clear (Mark Langsdorf) [2122310] - cpufreq: Abort show()/store() for half-initialized policies (Mark Langsdorf) [2122310] - cpufreq: Rearrange locking in cpufreq_remove_dev() (Mark Langsdorf) [2122310] - cpufreq: Split cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Reorganize checks in cpufreq_offline() (Mark Langsdorf) [2122310] - cpufreq: Clear real_cpus mask from remove_cpu_dev_symlink() (Mark Langsdorf) [2122310] - cpufreq: Prepare cleanup of powerpc's asm/prom.h (Mark Langsdorf) [2122310] - cpufreq: governor: Use kobject release() method to free dbs_data (Mark Langsdorf) [2122310] - ipv6: fix panic when fib_lookup_arg->result is fib6_info (Jiri Benc) [2140599] - tipc: re-fetch skb cb after tipc_msg_validate (Xin Long) [2142732] - Documentation: bonding: correct xmit hash steps (Jonathan Toppins) [2150390] - Documentation: bonding: update miimon default to 100 (Jonathan Toppins) [2150390] - selftests: bonding: up/down delay w/ slave link flapping (Jonathan Toppins) [2150390] - bonding (gcc13): synchronize bond_{a,t}lb_xmit() types (Jonathan Toppins) [2150390] - selftests: net: Fix cross-tree inclusion of scripts (Jonathan Toppins) [2150390] - treewide: use get_random_u32() when possible (Jonathan Toppins) [2150390] - selftests/bonding: re-add lladdr target test (Jonathan Toppins) [2150390] - selftests: bonding: cause oops in bond_rr_gen_slave_id (Jonathan Toppins) [2150390] - selftests/bonding: add a test for bonding lladdr target (Jonathan Toppins) [2150390] - net: Add tests for bonding and team address list management (Jonathan Toppins) [2150390] - net: bonding: Unsync device addresses on ndo_stop (Jonathan Toppins) [2150390] - net: bonding: Share lacpdu_mcast_addr definition (Jonathan Toppins) [2150390] - Documentation: bonding: clarify supported modes for tlb_dynamic_lb (Jonathan Toppins) [2150390] - selftests: include bonding tests into the kselftest infra (Jonathan Toppins) [2150390] - bonding: fix reference count leak in balance-alb mode (Jonathan Toppins) [2150390] - net:bonding:support balance-alb interface with vlan to bridge (Jonathan Toppins) [2150390] - bonding: cleanup bond_create (Jonathan Toppins) [2150390] - bonding: netlink error message support for options (Jonathan Toppins) [2150390] - bonding: Update layer2 and layer2+3 hash formula documentation (Jonathan Toppins) [2150390] - net: bonding: Add support for IPV6 ns/na to balance-alb/balance-tlb mode (Jonathan Toppins) [2150390] - net: remove bond_slave_has_mac_rcu() (Jonathan Toppins) [2150390] - net: bonding: debug: avoid printing debug logs when bond is not notifying peers (Jonathan Toppins) [2150390] - net: bonding: constify and use dev_addr_set() (Jonathan Toppins) [2150390] - net: use dev_addr_set() (Jonathan Toppins) [2150390] - bonding: remove extraneous definitions from bonding.h (Jonathan Toppins) [2150390] - net: bonding: bond_alb: Fix some typos in bond_alb.c (Jonathan Toppins) [2150390] - net: bonding: use tabs instead of space for code indent (Jonathan Toppins) [2150390] - net: bonding: remove unnecessary braces (Jonathan Toppins) [2150390] - net: bonding: fix code indent for conditional statements (Jonathan Toppins) [2150390] - net: bonding: add some required blank lines (Jonathan Toppins) [2150390] - docs: networking: bonding.rst Fix a typo in bonding.rst (Jonathan Toppins) [2150390] - docs: networking: bonding.rst resources section cleanup (Jonathan Toppins) [2150390] - bonding: Replace zero-length array with flexible-array member (Jonathan Toppins) [2150390] - include/net/bond_3ad: Simplify the code by using the ARRAY_SIZE (Jonathan Toppins) [2150390] - vmxnet3: use correct intrConf reference when using extended queues (Izabela Bakollari) [2150917] - vmxnet3: correctly report encapsulated LRO packet (Izabela Bakollari) [2150917] - net: move from strlcpy with unused retval to strscpy (Izabela Bakollari) [2150917] - vmxnet3: Implement ethtool's get_channels command (Izabela Bakollari) [2150917] - vmxnet3: Record queue number to incoming packets (Izabela Bakollari) [2150917] - [rt] Revert "mm/memcg: disable threshold event handlers on PREEMPT_RT" (Chris White) [2152035] - s390/pci: allow zPCI zbus without a function zero (Tobias Huschle) [2043829] - PCI: Extend isolated function probing to s390 (Tobias Huschle) [2043829] - PCI: Move jailhouse's isolated function handling to pci_scan_slot() (Tobias Huschle) [2043829] - PCI: Split out next_ari_fn() from next_fn() (Tobias Huschle) [2043829] - PCI: Clean up pci_scan_slot() (Tobias Huschle) [2043829] - KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Report optimal memory slots (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate memory (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Support variable guest page size (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Probe memory slots for once (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Consolidate loop conditions in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: memslot_perf_test: Use data->nslots in prepare_vm() (Gavin Shan) [2134650] - KVM: selftests: Make memslot_perf_test arch independent (Gavin Shan) [2134650] - selftests: netfilter: Fix and review rpath.sh (Phil Sutter) [1961152] - netfilter: Use l3mdev flow key when re-routing mangled packets (Phil Sutter) [1961152] - netfilter: Update ip6_route_me_harder to consider L3 domain (Phil Sutter) [1961152] - netfilter: Dissect flow after packet mangling (Phil Sutter) [1961152] - netfilter: rpfilter/fib: Populate flowic_l3mdev field (Phil Sutter) [1961152] - selftests: netfilter: Test reverse path filtering (Phil Sutter) [1961152] - netfilter: nft_fib: Fix for rpath check with VRF devices (Phil Sutter) [1961152] - net: seg6: fix seg6_lookup_any_nexthop() to handle VRFs using flowi_l3mdev (Phil Sutter) [1961152] - net: Handle l3mdev in ip_tunnel_init_flow (Phil Sutter) [1961152] - xfrm: Pass flowi_oif or l3mdev as oif to xfrm_dst_lookup (Phil Sutter) [1961152] - net: Add l3mdev index to flow struct and avoid oif reset for port devices (Phil Sutter) [1961152] - l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using netdev_master_upper_dev_get_rcu (Phil Sutter) [1961152] - l3mdev: add function to retreive upper master (Phil Sutter) [1961152] - sfc: move deprecation message to sfc_siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: add entries for new CONFIG_SFC_SIENA* configs (Íñigo Huguet) [2112205 2136107] - sfc: Fix an error handling path in efx_pci_probe() (Íñigo Huguet) [2112205] - sfc: support PTP over Ethernet (Íñigo Huguet) [2112205 2065017] - sfc: support PTP over IPv6/UDP (Íñigo Huguet) [2112205 2065017] - sfc: allow more flexible way of adding filters for PTP (Íñigo Huguet) [2112205 2065017] - sfc: correct filter_table_remove method for EF10 PFs (Íñigo Huguet) [2112205] - sfc/siena: fix null pointer dereference in efx_hard_start_xmit (Íñigo Huguet) [2112205] - sfc/siena: fix TX channel offset when using legacy interrupts (Íñigo Huguet) [2112205] - sfc: implement ethtool get/set RX ring size for EF100 reps (Íñigo Huguet) [2112205] - sfc: use a dynamic m-port for representor RX and set it promisc (Íñigo Huguet) [2112205] - sfc: move table locking into filter_table_{probe,remove} methods (Íñigo Huguet) [2112205] - sfc: insert default MAE rules to connect VFs to representors (Íñigo Huguet) [2112205] - sfc: receive packets from EF100 VFs into representors (Íñigo Huguet) [2112205] - sfc: check ef100 RX packets are from the wire (Íñigo Huguet) [2112205] - sfc: determine wire m-port at EF100 PF probe time (Íñigo Huguet) [2112205] - sfc: ef100 representor RX top half (Íñigo Huguet) [2112205] - sfc: ef100 representor RX NAPI poll (Íñigo Huguet) [2112205] - sfc: plumb ef100 representor stats (Íñigo Huguet) [2112205] - sfc: disable softirqs for ptp TX (Íñigo Huguet) [2112205] - sfc/siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: attach/detach EF100 representors along with their owning PF (Íñigo Huguet) [2112205] - sfc: hook up ef100 representor TX (Íñigo Huguet) [2112205] - sfc: support passing a representor to the EF100 TX path (Íñigo Huguet) [2112205] - sfc: determine representee m-port for EF100 representors (Íñigo Huguet) [2112205] - sfc: phys port/switch identification for ef100 reps (Íñigo Huguet) [2112205] - sfc: add basic ethtool ops to ef100 reps (Íñigo Huguet) [2112205] - sfc: add skeleton ef100 VF representors (Íñigo Huguet) [2112205] - sfc: detect ef100 MAE admin privilege/capability at probe time (Íñigo Huguet) [2112205] - sfc: update EF100 register descriptions (Íñigo Huguet) [2112205] - sfc: update MCDI protocol headers (Íñigo Huguet) [2112205] - sfc/siena: Use the bitmap API to allocate bitmaps (Íñigo Huguet) [2112205] - sfc: Separate netdev probe/remove from PCI probe/remove (Íñigo Huguet) [2112205] - sfc: replace function name in string with __func__ (Íñigo Huguet) [2112205] - sfc: Unsplit literal string. (Íñigo Huguet) [2112205] - sfc: Move EF100 efx_nic_type structs to the end of the file (Íñigo Huguet) [2112205] - sfc: Separate efx_nic memory from net_device memory (Íñigo Huguet) [2112205] - sfc: Encapsulate access to netdev_priv() (Íñigo Huguet) [2112205] - sfc: Change BUG_ON to WARN_ON and recovery code. (Íñigo Huguet) [2112205] - sfc: Remove netdev init from efx_init_struct (Íñigo Huguet) [2112205] - sfc: Add a PROBED state for EF100 VDPA use. (Íñigo Huguet) [2112205] - sfc: Split STATE_READY in to STATE_NET_DOWN and STATE_NET_UP. (Íñigo Huguet) [2112205] - sfc: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc: siena: fix repeated words in comments (Íñigo Huguet) [2112205] - sfc/siena: Fix typo in comment (Íñigo Huguet) [2112205] - sfc: Fix typo in comment (Íñigo Huguet) [2112205] - sfc/siena: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [2112205] - sfc/siena: fix considering that all channels have TX queues (Íñigo Huguet) [2112205] - sfc/siena: Remove duplicate check on segments (Íñigo Huguet) [2112205 2136107] - sfc: siena: Have a unique wrapper ifndef for efx channels header (Íñigo Huguet) [2112205 2136107] - eth: sfc: remove remnants of the out-of-tree napi_weight module param (Íñigo Huguet) [2112205] - sfc: siena: Fix Kconfig dependencies (Íñigo Huguet) [2112205 2136107] - sfc/siena: Reinstate SRIOV init/fini function calls (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make PTP and reset support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc/siena: Make MCDI logging support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make HWMON support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make SRIOV support specific for Siena (Íñigo Huguet) [2112205 2136107] - siena: Make MTD support specific for Siena (Íñigo Huguet) [2112205 2136107] - sfc: Add a basic Siena module (Íñigo Huguet) [2112205 2136107] - sfc/siena: Inline functions in sriov.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in nic_common.h to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in mcdi headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename peripheral functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename RX/TX functions to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Rename functions in efx headers to avoid conflicts with sfc (Íñigo Huguet) [2112205 2136107] - sfc/siena: Remove build references to missing functionality (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 2) (Íñigo Huguet) [2112205 2136107] - sfc: Copy shared files needed for Siena (part 1) (Íñigo Huguet) [2112205 2136107] - sfc: Move Siena specific files (Íñigo Huguet) [2112205 2136107] - sfc: Copy a subset of mcdi_pcol.h to siena (Íñigo Huguet) [2112205 2136107] - sfc: Disable Siena support (Íñigo Huguet) [2112205 2136107] - sfc: add EF100 VF support via a write to sriov_numvfs (Íñigo Huguet) [2112205] - sfc: Remove global definition of efx_reset_type_names (Íñigo Huguet) [2112205] - sfc: Remove duplicate definition of efx_xmit_done (Íñigo Huguet) [2112205] - sfc: efx_default_channel_type APIs can be static (Íñigo Huguet) [2112205] - sfc: Fix spelling mistake "writting" -> "writing" (Íñigo Huguet) [2112205] - sfc: ef10: Fix assigning negative value to unsigned variable (Íñigo Huguet) [2112205] - sfc: use hardware tx timestamps for more than PTP (Íñigo Huguet) [2112205 2065017] - net: ethernet: sfc: Make subdir logic consistent with other vendors (Íñigo Huguet) [2112205 2136107] - hugetlbfs: fix mount mode command line processing (Bill O'Donnell) [2148876] - igc: Correct the launchtime offset (Corinna Vinschen) [2103954] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Corinna Vinschen) [2103954] - igc: Remove IGC_MDIC_INT_EN definition (Corinna Vinschen) [2103954] - igc: Remove forced_speed_duplex value (Corinna Vinschen) [2103954] - igc: Remove MSI-X PBA Clear register (Corinna Vinschen) [2103954] - igc: Lift TAPRIO schedule restriction (Corinna Vinschen) [2103954] - wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker() (Wander Lairson Costa) [2150964] {CVE-2022-3628} - net: ethernet: move from strlcpy with unused retval to strscpy (Corinna Vinschen) [2103949] - tipc: call tipc_lxc_xmit without holding node_read_lock (Xin Long) [2141640] - mptcp: fix sleep in atomic at close time (Davide Caratti) [2150361] - mptcp: don't orphan ssk in mptcp_close() (Davide Caratti) [2150361] - net: Avoid overwriting valid skb->napi_id (Antoine Tenart) [2142593] - x86/microcode/AMD: Apply the patch early on every logical thread (Waiman Long) [2139856] - x86/bugs: Enable STIBP for IBPB mitigated RETBleed (Waiman Long) [2139856] - x86/bugs: Add "unknown" reporting for MMIO Stale Data (Waiman Long) [2139856] - tracing: Use a copy of the va_list for __assign_vstr() (Íñigo Huguet) [2143356] - tracing/events: Add __vstring() and __assign_vstr() helper macros (Íñigo Huguet) [2143356] - rtnetlink: add IFLA_PARENT_[DEV|DEV_BUS]_NAME (Jose Ignacio Tornos Martinez) [2144853] - rtnetlink: add alloc() method to rtnl_link_ops (Jose Ignacio Tornos Martinez) [2144853] - ipv6: Fix data races around sk->sk_prot. (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: annotate some data-races around sk->sk_prot (Guillaume Nault) [2144805] {CVE-2022-3567} - ipv6: use indirect call wrappers for {tcp, udpv6}_{recv, send}msg() (Guillaume Nault) [2144805] {CVE-2022-3567} - mm/mremap: hold the rmap lock in write mode when moving page table entries. (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: use pmd/pud_poplulate to update page table entries (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: don't enable optimized PUD move if page table levels is 2 (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: convert huge PUD move to separate helper (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: fix BUILD_BUG_ON() error in get_extent (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap.c: fix extent calculation (Waiman Long) [2140945] {CVE-2022-41222} - x86: mremap speedup - Enable HAVE_MOVE_PUD (Waiman Long) [2140945] {CVE-2022-41222} - mm: speedup mremap on 1GB or larger regions (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: start addresses are properly aligned (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: calculate extent in one place (Waiman Long) [2140945] {CVE-2022-41222} - mm/mremap: it is sure to have enough space when extent meets requirement (Waiman Long) [2140945] {CVE-2022-41222}- irqchip/gic, gic-v3: Make SGIs use handle_percpu_devid_irq() (Charles Mirabile) [2133892] - irqchip/gic-common: Don't enable SGIs by default (Charles Mirabile) [2133892] - irqchip/gic: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic: Refactor SMP configuration (Charles Mirabile) [2133892] - irqchip/gic-v3: Configure SGIs as standard interrupts (Charles Mirabile) [2133892] - irqchip/gic-v3: Describe the SGI range (Charles Mirabile) [2133892] - arm64: Allow IPIs to be handled as normal interrupts (Charles Mirabile) [2133892] - irqchip/gic, gic-v3: Prevent GSI to SGI translations (Charles Mirabile) [2133892] - Workaround to enable support for IPI (Charles Mirabile) [2133892] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2112182] - tg3: Disable tg3 device on system reboot to avoid triggering AER (Ken Cox) [2112182] - aquantia: Do not purge addresses when setting the number of rings (Izabela Bakollari) [2122571] - openvswitch: add nf_ct_is_confirmed check before assigning the helper (Antoine Tenart) [2135414] - net: openvswitch: allow conntrack in non-initial user namespace (Antoine Tenart) [2135414] - net: openvswitch: allow metering in non-initial user namespace (Antoine Tenart) [2135414] - openvswitch: Change the return type for vport_ops.send function hook to int (Antoine Tenart) [2135414] - net: openvswitch: fix repeated words in comments (Antoine Tenart) [2135414] - openvswitch: add OVS_DP_ATTR_PER_CPU_PIDS to get requests (Antoine Tenart) [2135414] - openvswitch: allow specifying ifindex of new interfaces (Antoine Tenart) [2135414] - openvswitch: move from strlcpy with unused retval to strscpy (Antoine Tenart) [2135414] - openvswitch: Fix overreporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: Fix double reporting of drops in dropwatch (Antoine Tenart) [2135414] - openvswitch: fix memory leak at failed datapath creation (Antoine Tenart) [2135414] - net: remove noblock parameter from skb_recv_datagram() (Íñigo Huguet) [2143359] - i40e: Fix error handling in i40e_init_module() (Stefan Assmann) [2103661] - i40e: Add appropriate error message logged for incorrect duplex setting (Stefan Assmann) [2103661] - i40e: Add i40e_napi_poll tracepoint (Stefan Assmann) [2103661] - i40e: Record number of RXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Record number TXes cleaned during NAPI (Stefan Assmann) [2103661] - i40e: Store the irq number in i40e_q_vector (Stefan Assmann) [2103661] - ptp: introduce helpers to adjust by scaled parts per million (Stefan Assmann) [2103661] - net: Remove the obsolte u64_stats_fetch_*_irq() users (drivers). (Stefan Assmann) [2103661] - i40e: Fix flow-type by setting GL_HASH_INSET registers (Stefan Assmann) [2103661] - i40e: Fix ethtool rx-flow-hash setting for X722 (Stefan Assmann) [2103661] - i40e: Fix ADQ rate limiting for PF (Stefan Assmann) [2103661] - i40e: add description and modify interrupts configuration procedure (Stefan Assmann) [2103661] - i40e: Add basic support for I710 devices (Stefan Assmann) [2103661] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103661] - i40e: Fix incorrect address type for IPv6 flow rules (Stefan Assmann) [2103661] - i40e: Fix to stop tx_timeout recovery if GLOBR fails (Stefan Assmann) [2103661] - i40e: convert .adjfreq to .adjfine (Stefan Assmann) [2103661] - i40e: use mul_u64_u64_div_u64 for PTP frequency calculation (Stefan Assmann) [2103661] - i40e: Fix interface init with MSI interrupts (no MSI-X) (Stefan Assmann) [2103661] - i40e: Refactor tc mqprio checks (Stefan Assmann) [2103661] - i40e: Fix erroneous adapter reinitialization during recovery process (Stefan Assmann) [2103661] - i40e: Fix VF's MAC Address change on VM (Stefan Assmann) [2103661] - i40e: Fix dropped jumbo frames statistics (Stefan Assmann) [2103661] - intel/i40e:fix repeated words in comments (Stefan Assmann) [2103661] - intel: remove unused macros (Stefan Assmann) [2103661] - i40e: read the XDP program once per NAPI (Stefan Assmann) [2103661] - intel/i40e: delete if NULL check before dev_kfree_skb (Stefan Assmann) [2103661] - i40e: Remove unnecessary synchronize_irq() before free_irq() (Stefan Assmann) [2103661] - i40e: Add support for ethtool -s speed (Stefan Assmann) [2103661] - i40e: Add VF VLAN pruning (Stefan Assmann) [2103661] - xsk: Wipe out dead zero_copy_allocator declarations (Stefan Assmann) [2103661] - gpio: amdpt: add new device ID and 24-pin support (Prarit Bhargava) [2097868] - platform/x86/intel: pmc/core: Add Raptor Lake support to pmc core driver (Prarit Bhargava) [2076732] - HID: hyperv: fix possible memory leak in mousevsc_probe() (Mohammed Gamal) [2139468] - HID: hyperv: Correctly access fields declared as __le16 (Mohammed Gamal) [2139468] - Drivers: hv: vmbus: fix possible memory leak in vmbus_device_register() (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: fix double free in the error path of vmbus_add_channel_work() (Mohammed Gamal) [2139473] - Drivers: hv: fix repeated words in comments (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Split memcpy of flex-array (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Don't wait for the ACPI device upon initialization (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Use PCI_VENDOR_ID_MICROSOFT for better discoverability (Mohammed Gamal) [2139473] - PCI: Move PCI_VENDOR_ID_MICROSOFT/PCI_DEVICE_ID_HYPERV_VIDEO definitions to pci_ids.h (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Fix kernel-doc (Mohammed Gamal) [2139473] - Drivers: hv: vmbus: Optimize vmbus_on_event (Mohammed Gamal) [2139473] - Drivers: hv: Never allocate anything besides framebuffer from framebuffer memory region (Mohammed Gamal) [2139473] - Drivers: hv: Always reserve framebuffer region for Gen1 VMs (Mohammed Gamal) [2139473] - Drivers: hv: remove duplicate word in a comment (Mohammed Gamal) [2139473] - Drivers: hv: Create debugfs file with hyper-v balloon usage information (Mohammed Gamal) [2139473] - Drivers: hv: vm_bus: Handle vmbus rescind calls after vmbus is suspended (Mohammed Gamal) [2139473] - scsi: storvsc: remove an extraneous "to" in a comment (Cathy Avery) [2143320] - Drivers: hv: vmbus: Optimize vmbus_on_event (Cathy Avery) [2143320] - scsi: storvsc: Drop DID_TARGET_FAILURE use (Cathy Avery) [2143320] - scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq (Cathy Avery) [2143320] - scsi: storvsc: Correct reporting of Hyper-V I/O size limits (Cathy Avery) [2143320] - scsi: storvsc: Removing Pre Win8 related logic (Cathy Avery) [2143320] - scsi: storvsc: Fix typo in comment (Cathy Avery) [2143320] - scsi: storvsc: Remove support for Hyper-V 2008 and 2008R2/Win7 (Cathy Avery) [2143320] - vdpa/mlx5: re-create forwarding rules after mac modified (Laurent Vivier) [2145136] - ipv6: Fix crash when IPv6 is administratively disabled (Guillaume Nault) [2140779] - raw: fix a typo in raw_icmp_error() (Guillaume Nault) [2140779] - raw: remove unused variables from raw6_icmp_error() (Guillaume Nault) [2140779] - raw: complete rcu conversion (Guillaume Nault) [2140779] - raw: Use helpers for the hlist_nulls variant. (Guillaume Nault) [2140779] - raw: Fix mixed declarations error in raw_icmp_error(). (Guillaume Nault) [2140779] - raw: convert raw sockets to RCU (Guillaume Nault) [2140779] - raw: use more conventional iterators (Guillaume Nault) [2140779] - raw: Add missing annotations to raw_seq_start() and raw_seq_stop() (Guillaume Nault) [2140779] - net: ethernet: move from strlcpy with unused retval to strscpy (Ken Cox) [2103941] - e1000e: convert .adjfreq to .adjfine (Ken Cox) [2103941] - e1000e: remove unnecessary range check in e1000e_phc_adjfreq (Ken Cox) [2103941] - Revert "e1000e: Fix possible HW unit hang after an s0ix exit" (Ken Cox) [2103941] - e1000e: Enable GPT clock before sending message to CSME (Ken Cox) [2103941] - intel/e1000e:fix repeated words in comments (Ken Cox) [2103941] - intel: remove unused macros (Ken Cox) [2103941] - net: move netif_set_gso_max helpers (Ivan Vecera) [2137564] - net: make drivers set the TSO limit not the GSO limit (Ivan Vecera) [2137564] - net: don't allow user space to lift the device limits (Ivan Vecera) [2137564] - net: add netif_inherit_tso_max() (Ivan Vecera) [2137564] - net: extract a few internals from netdevice.h (Ivan Vecera) [2137564] - net: unexport a handful of dev_* functions (Ivan Vecera) [2137564] - bpf: Fix extable address check. (Felix Maurer) [2138532] - bpf, x64: Factor out emission of REX byte in more cases (Felix Maurer) [2138532] - bpf: Support dual-stack sockets in bpf_tcp_check_syncookie (Felix Maurer) [2138532] - bpf: Fix extable fixup offset. (Felix Maurer) [2138532] - bpf: Fix the off-by-two error in range markings (Felix Maurer) [2138532] - bpf: Fix potential race in tail call compatibility check (Felix Maurer) [2138532] - bpf: Fix possible out of bound write in narrow load handling (Felix Maurer) [2138532] - bpf: Fix potential memleak and UAF in the verifier. (Felix Maurer) [2138532] - KVM: s390: vsie: Fix the initialization of the epoch extension (epdx) field (Thomas Huth) [2151854] - PM: core: Remove static qualifier in DEFINE_SIMPLE_DEV_PM_OPS macro (Íñigo Huguet) [2143354] - PM: core: Add new *_PM_OPS macros, deprecate old ones (Íñigo Huguet) [2143354] - PM: Make *_DEV_PM_OPS macros use __maybe_unused (Íñigo Huguet) [2143354] - PM: core: Redefine pm_ptr() macro (Íñigo Huguet) [2143354] - linux/kconfig.h: replace IF_ENABLED() with PTR_IF() in (Íñigo Huguet) [2143354] - net: Remove unused inline function sk_nulls_node_init() (Guillaume Nault) [2143239] - ping: convert to RCU lookups, get rid of rwlock (Guillaume Nault) [2143239] - mm/cgroup/reclaim: fix dirty pages throttling on cgroup v1 (Waiman Long) [2149544] - mm: vmscan: remove deadlock due to throttling failing to make progress (Waiman Long) [2149544] - mm: vmscan: reduce throttling due to a failure to make progress -fix (Waiman Long) [2149544] - mm: vmscan: Reduce throttling due to a failure to make progress (Waiman Long) [2149544] - mm/vmscan: delay waking of tasks throttled on NOPROGRESS (Waiman Long) [2149544] - mm/vmscan: increase the timeout if page reclaim is not making progress (Waiman Long) [2149544] - mm/vmscan: centralise timeout values for reclaim_throttle (Waiman Long) [2149544] - mm/page_alloc: remove the throttling logic from the page allocator (Waiman Long) [2149544] - mm/writeback: throttle based on page writeback instead of congestion (Waiman Long) [2149544] - mm/vmscan: throttle reclaim when no progress is being made (Waiman Long) [2149544] - mm/vmscan: throttle reclaim and compaction when too may pages are isolated (Waiman Long) [2149544] - mm/vmscan: throttle reclaim until some writeback completes if congested (Waiman Long) [2149544] - mm/vmscan.c: delete or fix duplicated words (Waiman Long) [2149544] - powerpc/pseries/vas: Add VAS IRQ primary handler (Mamatha Inamdar) [2131675] - powerpc: Ignore DSI error caused by the copy/paste instruction (Mamatha Inamdar) [2131675] - powerpc/pseries: Move vas_migration_handler early during migration (Mamatha Inamdar) [2131675] - vt: drop old FONT ioctls (Wander Lairson Costa) [2109164] {CVE-2021-33656}- x86/mce: Reduce number of machine checks taken during recovery (Prarit Bhargava) [2104388] - scsi: storvsc: Fix handling of srb_status and capacity change events (Mohammed Gamal) [2139728] - clocksource: hyper-v: unexport __init-annotated hv_init_clocksource() (Mohammed Gamal) [2139463] - hv_netvsc: Fix race between VF offering and VF association message from host (Mohammed Gamal) [2139475] - sbitmap: fix lockup while swapping (Ming Lei) [2140214] - sbitmap: fix batched wait_cnt accounting (Ming Lei) [2140214] - sbitmap: Avoid leaving waitqueue in invalid state in __sbq_wake_up() (Ming Lei) [2140214] - sbitmap: fix possible io hung due to lost wakeup (Ming Lei) [2140214] - sbitmap: add helper to clear a batch of tags (Ming Lei) [2140214] - x86/hyperv: Restore VP assist page after cpu offlining/onlining (Mohammed Gamal) [2139454] - clocksource/drivers/hyperv: add data structure for reference TSC MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix root partition faults when writing to VP assist page MSR (Mohammed Gamal) [2139454] - x86/hyperv: fix invalid writes to MSRs during root partition kexec (Mohammed Gamal) [2139454] - x86/hyperv: Remove BUG_ON() for kmap_local_page() (Mohammed Gamal) [2139454] - x86/hyperv: Disable hardlockup detector by default in Hyper-V guests (Mohammed Gamal) [2139454] - x86/hyperv: Update 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition (Mohammed Gamal) [2139454] - x86/hyperv: Replace kmap() with kmap_local_page() (Mohammed Gamal) [2139454] - hyperv: simplify and rename generate_guest_id (Mohammed Gamal) [2139454] - x86/Hyper-V: Add SEV negotiate protocol support in Isolation VM (Mohammed Gamal) [2139454] - x86/sev: Define the Linux-specific guest termination reasons (Mohammed Gamal) [2139454] - x86/sev: Shorten GHCB terminate macro names (Mohammed Gamal) [2139454] - x86/sev: Save the negotiated GHCB version (Mohammed Gamal) [2139454] - locking: Add __sched to semaphore functions (Waiman Long) [2141429] - locking/rwsem: Disable preemption while trying for rwsem lock (Waiman Long) [2141429] - locking/percpu-rwsem: Add percpu_is_write_locked() and percpu_is_read_locked() (Waiman Long) [2141429] - locking/rwsem: Conditionally wake waiters in reader/writer slowpaths (Waiman Long) [2141429] - locking: Mark racy reads of owner->on_cpu (Waiman Long) [2141429] - locking: Make owner_on_cpu() into (Waiman Long) [2141429] - locking/rwsem: Optimize down_read_trylock() under highly contended case (Waiman Long) [2141429] - locking/rwsem: Fix comments about reader optimistic lock stealing conditions (Waiman Long) [2141429] - locking/rwsem: Disable preemption for spinning region (Waiman Long) [2141429] - locking: Remove rcu_read_{,un}lock() for preempt_{dis,en}able() (Waiman Long) [2141429] - NFSD: Mark exports of NFS as unsupported (Benjamin Coddington) [2150902] - fuse: lock inode unconditionally in fuse_fallocate() (Miklos Szeredi) [2110883] - fuse: add file_modified() to fallocate (Miklos Szeredi) [2110883] - mei: me: add adler lake point S DID (Prarit Bhargava) [2141602] - ocfs2/dlm: move BITS_TO_BYTES() to bitops.h for wider use (Izabela Bakollari) [2144858] - libnvdimm/namespace: Fix visibility of namespace resource attribute (Jeff Moyer) [2016347] - PCI: hv: Only reuse existing IRTE allocation for Multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix the definition of vector in hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Take a const cpumask in hv_compose_msi_req_get_cpu() (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_pci_bus_exit() (Mohammed Gamal) [2139458] - PCI: hv: Add validation for untrusted Hyper-V values (Mohammed Gamal) [2139458] - PCI: hv: Fix interrupt mapping for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Reuse existing IRTE allocation in compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI (Mohammed Gamal) [2139458] - PCI: hv: Fix synchronization between channel callback and hv_compose_msi_msg() (Mohammed Gamal) [2139458] - PCI: hv: Use vmbus_requestor to generate transaction IDs for VMbus hardening (Mohammed Gamal) [2139458] - PCI: hv: Fix multi-MSI to allow more than one MSI vector (Mohammed Gamal) [2139458] - net: mana: Add rmb after checking owner bits (Mohammed Gamal) [2139462] - net: mana: Add support of XDP_REDIRECT action (Mohammed Gamal) [2139462] - net: mana: Add the Linux MANA PF driver (Mohammed Gamal) [2139462] - NFSD: Protect against send buffer overflow in NFSv3 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READ (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv3 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - NFSD: Protect against send buffer overflow in NFSv2 READDIR (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_encode's buflen calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - SUNRPC: Fix svcxdr_init_decode's end-of-buffer calculation (Scott Mayhew) [2141774] {CVE-2022-43945} - KVM: VMX: fully disable SGX if SECONDARY_EXEC_ENCLS_EXITING unavailable (Emanuele Giuseppe Esposito) [2127128] - cgroup/cpuset: Reduce cpuset_rwsem writer latency (Waiman Long) [2149031] - rcu/exp: Mark current CPU as exp-QS in IPI loop second pass (Waiman Long) [2149031] - rcu: Always inline rcu_dynticks_task*_{enter,exit}() (Waiman Long) [2149031] - rcu: Fix existing exp request check in sync_sched_exp_online_cleanup() (Waiman Long) [2149031] - rcu: Fix macro name CONFIG_TASKS_RCU_TRACE (Waiman Long) [2149031] - rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock (Waiman Long) [2149031] - rcu: Fix to include first blocked task in stall warning (Waiman Long) [2149031] - cgroup: Use cgroup_attach_{lock,unlock}() from cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all() (Waiman Long) [2149031] - cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock (Waiman Long) [2149031] - cgroup: Elide write-locking threadgroup_rwsem when updating csses on an empty subtree (Waiman Long) [2149031] - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug (Waiman Long) [2149031] - cgroup: reduce dependency on cgroup_mutex (Waiman Long) [2149031]- drm/i915: fix TLB invalidation for Gen12 video and compute engines (Wander Lairson Costa) [2148150] {CVE-2022-4139} - redhat/configs: Set CONFIG_X86_AMD_PSTATE to 'm' (Prarit Bhargava) [2145246] - bonding: uninitialized variable in bond_miimon_inspect() (Jonathan Toppins) [1973124] - bonding: fix link recovery in mode 2 when updelay is nonzero (Jonathan Toppins) [1973124] - RHEL: ALSA: update configuration (Jaroslav Kysela) [2125544] - RHEL: ALSA: fix compilation issues (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-mtl: fix firmware name (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Correct pin configs for ASUS G533Z (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530 (Jaroslav Kysela) [2125544] - ALSA: ac97: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: ca0106: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use snd_ctl_rename() to rename a control (Jaroslav Kysela) [2125544] - ALSA: control: add snd_ctl_rename() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Use only dynamic PCM device allocation (Jaroslav Kysela) [2125544] - regmap: add reg_sequence helpers (Jaroslav Kysela) [2125544] - regmap: fix the kerneldoc for regmap_test_bits() (Jaroslav Kysela) [2125544] - regmap: provide helpers for simple bit operations (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Free the ida when IPC fails in sof_ipc4_widget_setup() (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Handle BCLK set as PLL input configuration (Jaroslav Kysela) [2125544] - ASoC: test-component: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Add support for pll_r coefficient (Jaroslav Kysela) [2125544] - ASoC: ssm4567: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: rk3328: fix disabling mclk on pclk probe failure (Jaroslav Kysela) [2125544] - ASoC: pcm3060: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cs42l42: remove redundant test (Jaroslav Kysela) [2125544] - ALSA: ppc: beep: fix clang -Wimplicit-fallthrough (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add comment for the endianness flag (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: handle timeouts in resume path (Jaroslav Kysela) [2125544] - ASoC: wsa881x: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: codecs: wsa881x: add runtime pm support (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Fix event generation for wm_adsp_fw_put() (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Minor clean and redundant code removal (Jaroslav Kysela) [2125544] - ASoC: wm_adsp: Compressed stream DSP memory structs should be __packed (Jaroslav Kysela) [2125544] - ASoC: wm8998: Fix event generation for input mux (Jaroslav Kysela) [2125544] - ASoC: arizona: Fix a wrong free in wm8997_probe (Jaroslav Kysela) [2125544] - ASoC: wm8962: Allow switching between analog and digital inputs (Jaroslav Kysela) [2125544] - ASoC: wm8960: Fix clock configuration on slave mode (Jaroslav Kysela) [2125544] - ASoC: wm8962: Fix suspend while playing music (Jaroslav Kysela) [2125544] - ASoC: codecs: wm8962: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Jaroslav Kysela) [2125544] - ASoC: wm8960: Add ACPI support (Jaroslav Kysela) [2125544] - ASoC: wm8958: Fix change notifications for DSP controls (Jaroslav Kysela) [2125544] - ASoC: wm8940: add devicetree support (Jaroslav Kysela) [2125544] - ASoC: wm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: wm8903: Fix the error handling of wm8903_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: wm8731: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Make the wm5102, wm5110, wm8997 and wm8998 drivers use the new jack library (Jaroslav Kysela) [2125544] - ASoC: wm5102: Fix event generation for output compensation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use int array instead of bitmask for TX mixers (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Use DT bindings instead of local DAI definitions (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Fix spurious event generation (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Remove RX channel from old list before adding it to a new one (Jaroslav Kysela) [2125544] - ASoC: codecs: wcd9335: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: wcd9335: remove redundant tests (Jaroslav Kysela) [2125544] - ASoC: uda1380: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: twl4030: Drop legacy, non DT boot support (Jaroslav Kysela) [2125544] - ASoC: tscs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ts3a227e: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tpa6130: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tlv320dac3x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic33: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: codec: tlv320aic32x4: fix mono playback via I2S (Jaroslav Kysela) [2125544] - ASoC: tlv320aic32x4: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Fix typo in BCLK clock name (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: Rename tlv320aic31xx-micbias.h as tlv320aic31xx.h (Jaroslav Kysela) [2125544] - ASoC: tlv320aic31xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic26: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320aic23: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Return zero in remove callback (Jaroslav Kysela) [2125544] - ASoC: tda7419: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas6424: Fix the error handling of tas6424_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas6424: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas5720: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas571x: Fix the error handling of tas571x_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: tas5086: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas2552: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: tas2770: Reinit regcache on reset (Jaroslav Kysela) [2125544] - ASoC: tas2562: Propagate the error in tas2562_dac_event() (Jaroslav Kysela) [2125544] - ASoC: tas2562: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2764: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2764: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Fix handling of mute/unmute (Jaroslav Kysela) [2125544] - ASoC: tas2770: Drop conflicting set_bias_level power setting (Jaroslav Kysela) [2125544] - ASoC: tas2770: Allow mono streams (Jaroslav Kysela) [2125544] - ASoC: tas2770: Set correct FSYNC polarity (Jaroslav Kysela) [2125544] - ASoC: tas2770: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tas*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: tas2552: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta350: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: sta*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: sta32x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sta32x: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: ssm2602: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: ssm2518: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Fix noise on shutdown/remove (Jaroslav Kysela) [2125544] - ASoC: rt9120: Fix 3byte read, valule offset typo (Jaroslav Kysela) [2125544] - ASoC: rt9120: Use pm_runtime and regcache to optimize 'pwdnn' logic (Jaroslav Kysela) [2125544] - ASoC: codecs: rt715-sdca: remove useless assignment of ops (Jaroslav Kysela) [2125544] - ASoC: rt5682s: Separate the regulator consumer controls (Jaroslav Kysela) [2125544] - ASoC: rt5645: Fix the error handling of rt5645_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the issue of the abnormal JD2 status (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the JD voltage dropping issue (Jaroslav Kysela) [2125544] - ASoC: rt5640: Fix the wrong state of JD1 and JD2 (Jaroslav Kysela) [2125544] - ASoC: rt5640: Add the MICBIAS1 to the dapm routing (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix jack detection (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Fix NULL jack in interrupt (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Set component to NULL on remove (Jaroslav Kysela) [2125544] - ASoC: codecs: rt274: Always init jack_detect_work (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: add the default value of register 0xc320 (Jaroslav Kysela) [2125544] - ASoC: rk3328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: pcm1789: Make pcm1789_common_exit() return void (Jaroslav Kysela) [2125544] - ASoC: pcm186x: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: pcm186x: simplify the return expression of pcm186x_power_off() (Jaroslav Kysela) [2125544] - ASoC: pcm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: nau8825: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8825: Declare 2 channels for DAI of capture stream (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore is released unexpectedly (Jaroslav Kysela) [2125544] - ASoC: nau8824: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8824: Fix semaphore unbalance at error paths (Jaroslav Kysela) [2125544] - ASoC: nau8822: Don't reconfigure PLL to the same values (Jaroslav Kysela) [2125544] - ASoC: nau8822: Disable internal PLL if freq_out is zero (Jaroslav Kysela) [2125544] - ASoC: nau8821: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8821: Don't unconditionally free interrupt (Jaroslav Kysela) [2125544] - ASoC: nau8821: add new widget to control system clock (Jaroslav Kysela) [2125544] - ASoC: nau8821: Add headset button detection (Jaroslav Kysela) [2125544] - ASoC: codecs: mt6359-accdet: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6366: support for mt6366 codec (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Check failure for devm_snd_soc_register_component (Jaroslav Kysela) [2125544] - ASoC: nau8540: Implement hw constraint for rates (Jaroslav Kysela) [2125544] - ASoC: nau8*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6660: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: mt6359: Fix refcount leak bug (Jaroslav Kysela) [2125544] - ASoC: mediatek: mt6358: add missing EXPORT_SYMBOLs (Jaroslav Kysela) [2125544] - ASoC: msm8916-wcd-digital: Fix missing clk_disable_unprepare() in msm8916_wcd_digital_probe (Jaroslav Kysela) [2125544] - ASoC: codecs: msm8916-wcd-digital: move gains from SX_TLV to S8_TLV (Jaroslav Kysela) [2125544] - ASoC: ml26124: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98390: use linux/gpio/consumer.h to fix build (Jaroslav Kysela) [2125544] - ASoC: max98390: Add reset gpio control (Jaroslav Kysela) [2125544] - ASoC: codecs: soundwire: call pm_runtime_resume() in component probe (Jaroslav Kysela) [2125544] - ASoC: max98373: Removing 0x203E from the volatile reg (Jaroslav Kysela) [2125544] - ASoC: max98090: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: max98090: Fix event generation for custom controls (Jaroslav Kysela) [2125544] - ASoC: codecs: max98088: Clean up some inconsistent indenting (Jaroslav Kysela) [2125544] - ASoC: max980*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: lm4857: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da732x: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: da7219: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: max9*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: lm49xxx: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: es83*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: codes: Add support for ES8316 producer mode (Jaroslav Kysela) [2125544] - ASoC: dmic: Add support for DSD data format (Jaroslav Kysela) [2125544] - ASoC: da[79]*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: da7219: cancel AAD related work earlier for jack removal (Jaroslav Kysela) [2125544] - ASoC: da7219: Fix pole orientation detection on certain headsets (Jaroslav Kysela) [2125544] - ASoC: da7218: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: cx2072x: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: cs4349: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l56: Fix the error handling of cs42l56_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs42l51: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Only report button state if there was a button interrupt (Jaroslav Kysela) [2125544] - ASoC: cs4270: update kernel-doc (Jaroslav Kysela) [2125544] - ASoC: cs4270: Remove redundant big endian formats (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add support for CLSA3541 ACPI device ID (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Enable Internal Boost in shared lib (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Do not print error when waking from hibernation (Jaroslav Kysela) [2125544] - ASoC: cs35l36: Fix the error handling of cs35l36_i2c_probe() (Jaroslav Kysela) [2125544] - ASoC: cs*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: arizona: Update arizona_aif_cfg_changed to use RX_BCLK_RATE (Jaroslav Kysela) [2125544] - ASoC: alc56*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4613: cares Simple-Audio-Card case for TDM (Jaroslav Kysela) [2125544] - ASoC: ak4613: add TDM256 support (Jaroslav Kysela) [2125544] - ASoC: ak4613: rename constraint to constraint_rates (Jaroslav Kysela) [2125544] - ASoC: ak4613: priv has ctrl1 instead of iface (Jaroslav Kysela) [2125544] - ASoC: ak4613: return error if it was setup as clock provider (Jaroslav Kysela) [2125544] - ASoC: ak4613: tidyup ak4613_interface (Jaroslav Kysela) [2125544] - ASoC: ak4613: add missing mutex_lock() (Jaroslav Kysela) [2125544] - ASoC: ak4642: Drop no-op remove function (Jaroslav Kysela) [2125544] - ASoC: ak*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: ak4*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: adau1761: Add ADAU1761-as-ADAU1361 compatibility mode (Jaroslav Kysela) [2125544] - ASoC: ada*, ssm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove some leftover from the "Replace GPLv2 boilerplate/reference with SPDX" rules (Jaroslav Kysela) [2125544] - ASoC: ad1*, ada*, ssm*: use i2c_match_id and simple i2c probe (Jaroslav Kysela) [2125544] - ASoC: test-component: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: rename asoc_simple_init_dai_link_params() to asoc_simple_init_for_codec2codec() (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: care Codec2Codec vs DPCM:BE (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils.c: ignore Codec2Codec setting if it already have (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Make asoc_simple_clean_reference() return void (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: indicate "Experimental stage" warning only when successed (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoc: audio-graph-card2: Fix refcount leak bug in __graph_get_type() (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: remove pre-alloced Codec2Codec space (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: make Codec2Codec settings optional (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2.c: use of_property_read_u32() for rate (Jaroslav Kysela) [2125544] - ASoC: audio_graph_card2: Fix port numbers in example (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card2-custom-sample.dtsi: add verbose explanation (Jaroslav Kysela) [2125544] - ASoC: audio-graph-card: Add of_node_put() in fail path (Jaroslav Kysela) [2125544] - ASoC: test-component: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: use software node API in Atom boards (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: remove 'set-but-not-used' warning (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: avoid oops in error handling (Jaroslav Kysela) [2125544] - ASoC: Intel: use software node API in SoundWire machines (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: sof_sdw: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: Drop redundant enum constant (Jaroslav Kysela) [2125544] - ASoC: Intel: catpt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_ssp_amp: enable capture stream from cs35l41 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: allow HDaudio/HDMI disable (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add quirk for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: intel: sof_sdw: add RT711 SDCA card for MTL platform (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_pcm512x: remove unnecessary init (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: Move quirk check to the front in late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AFF (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_sdw: add support for Dell SKU 0AF0 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Perform quirk check first in card late probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for mtl_mx98357_rt5682 (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: fix out-of-bounds array access (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: rename RTL1019 compatible driver to rt1019p (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_nau8825: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ALSA: x86: intel_hdmi_audio: enable pm_runtime and set autosuspend delay (Jaroslav Kysela) [2125544] - ASoC: xtensa: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: xtensa: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: make arrays mul and div static const, makes object smaller (Jaroslav Kysela) [2125544] - ASoC: uniphier: simplify the return expression of uniphier_aio_compr_set_params() (Jaroslav Kysela) [2125544] - ASoC: spear: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: test DMA buffer first in hw_params (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-stream: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-ipc: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dsp: report error on power-up/down (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Drop misleading comment regarding dma_data (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: fix sof_es8336 probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: remove hard-coded SSP selection (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: reset the num_links during probe (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: add support for HDMI_In capture (Jaroslav Kysela) [2125544] - ASoC: Intel: common: fix typo for tplg naming (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_rt5682: Add support for adl_rt1019_rt5682s (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: add table for HP Omen 16-k0005TX (Jaroslav Kysela) [2125544] - ASoC: Intel: soc-acpi: Add entry for sof_es8336 in ADL match table (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: ignore GpioInt when looking for speaker/headset GPIO lines (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_es8336: Fix GPIO quirks set via module option (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_da7219_max98373: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: add adl_mx98360a_cs4242 board config (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: support BT offload audio (Jaroslav Kysela) [2125544] - ASoC: Intel: sof_cs42l42: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_ssm4567: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: skl_nau88l25_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_rt5514_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_rt5663_max98927: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: kbl_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: hda: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: Intel: glk_rt5682_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: cml_rt1011_rt5682: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: Use temporary variable for struct device (Jaroslav Kysela) [2125544] - ASoC: Intel: boards: reset acpi_chan_package (Jaroslav Kysela) [2125544] - ASoC: codecs: rt298: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: bxt_da7219_max98357a: remap jack pins (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: hsw_rt5640: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename haswell source file to hsw_rt5640 (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove redundant test (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Remove FE DAI ops (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve codec_init() quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve hw_params() debug-ability (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Improve probe() function quality (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update file comments (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Update code indentation (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword driver name (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt286: Reword prefixes of all driver members (Jaroslav Kysela) [2125544] - ASoC: Intel: Rename broadwell source file to bdw_rt286 (Jaroslav Kysela) [2125544] - ASoC: codecs: rt286: Reorganize jack detect handling (Jaroslav Kysela) [2125544] - ASoC: Intel: broadwell: Make broadwell_disable_jack() return void (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5677: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: bdw_rt5650: Mark BE DAI as nonatomic (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst_ipc: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: sst: remove useless initialization (Jaroslav Kysela) [2125544] - ASoC: intel: atom: Remove superfluous flush_scheduled_work() (Jaroslav Kysela) [2125544] - ASoC: Intel: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: Intel: atom: controls: remove useless initializations (Jaroslav Kysela) [2125544] - ASoC: Intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: skylake: skl-pcm: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: Intel: Skylake: remove redundant re-assignments to pointer array (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: byt: remove duplicating driver data retrieval (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: cnl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: Do snd_hdac_ext_stream_decouple() only once (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: add sanity check on SSP index reported by NHLT (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: only fixup topology name if not set already (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: don't set fw_filename (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: enable dmic handling with 2 or fewer SoundWire links (Jaroslav Kysela) [2125544] - ASoC: soc-core: accept zero format at snd_soc_runtime_set_dai_fmt() (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Prevent current kernel running with older FW (Jaroslav Kysela) [2125544] - ASoC: SOF: Copy compress parameters into extended data (Jaroslav Kysela) [2125544] - ASoC: SOF: compress: Dynamically allocate pcm params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: atom: don't keep a temporary string in fixup_tplg_name (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add trigger callback into sdw_callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Correct the ROM/FW state reporting code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: MTL: remove redundant snd_sof_dsp_read() call (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: Do not process IPC reply before firmware boot (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: mtl: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Introduce skip_imr_boot flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: disable IMR boot when resuming from ACPI S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: IPC4: enable IMR boot (Jaroslav Kysela) [2125544] - ASoC: SOC: Intel: introduce cl_init callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not (wrongly) assume positive return value in IMR path (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Revisit IMR boot sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Print out the non matching ext_man magic number (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-topology: Fix clang -Wformat warning (Jaroslav Kysela) [2125544] - ASoC: SOF: remove warning on ABI checks (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Fix error code in sof_ipc4_volume_put() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: set pcm rate to dai setting (Jaroslav Kysela) [2125544] - ASoC: SOF: reduce default verbosity of IPC logs (Jaroslav Kysela) [2125544] - Revert "RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default" (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix alh_group_ida max value (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: fix wrong use of sizeof in sof_ipc4_widget_setup_comp_src() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: set domain bit based on dp domain type (Jaroslav Kysela) [2125544] - ASoC: SOF: add ipc4 SRC module support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: move ida allocate/free to widget_setup/free (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: free memories allocated in sof_ipc4_get_audio_fmt (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: check dai->private in ipc_free() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: add SoundWire/ALH aggregation support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ASoC: SOF: Compile and runtime IPC version selection (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Align mt8186 clock names with dt-bindings (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix error code in probe (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Revise mt8195 boot flow (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: fix mt8195 StatvectorSel wrong setting (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: use pm_resume_and_get() on component probe (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: fix copy in sof_msg_inject_ipc4_dfs_write() (Jaroslav Kysela) [2125544] - ASoC: sof: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Only load the driver if IPC3 is used (Jaroslav Kysela) [2125544] - ASoC: SOF: probes: rename assign/free callbacks as startup/shutdown (Jaroslav Kysela) [2125544] - ASoC: SOF: Add cont_update_posn to platform parameters (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add definitions for S4 and S5 states (Jaroslav Kysela) [2125544] - ASoC: SOF: pm: add explicit behavior for ACPI S1 and S2 (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: Clarify the IPC timeout handling path (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: remove unused variable (Jaroslav Kysela) [2125544] - ASoC: SOF: Switch to IPC generic firmware tracing (Jaroslav Kysela) [2125544] - ALSA: sc6000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: gus: Fix memory leaks at memory allocator error paths (Jaroslav Kysela) [2125544] - ALSA: sound/isa/gus: check the return value of kstrdup() (Jaroslav Kysela) [2125544] - ALSA: gus: Fix erroneous memory allocation (Jaroslav Kysela) [2125544] - ALSA: galaxy: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2125544] - ALSA: cs4236: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2125544] - ALSA: aloop: Fix random zeros in capture data when using jiffies timer (Jaroslav Kysela) [2125544] - ALSA: Add generic serial MIDI driver using serial bus API (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix potential buffer overflow by snprintf() (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use lookup table to create modules (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Update AVS_FW_INIT_TIMEOUT_US declaration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Lower UNLOAD_MULTIPLE_MODULES IPC timeout (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace hardcodes with SD_CTL_STREAM_RESET (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Recognize FW_CFG_RESERVED (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Use helper function to set up DMA (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Set max DMA segment size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Block IPC channel on suspend (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Shield LARGE_CONFIG_GETs against zero payload_size (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Copy only as many RX bytes as necessary (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Relax DSP core transition timings (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Assign I2S gateway when parsing topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix i2s_test card name initialization (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: correct config reference for I2S test board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix parsing UUIDs in topology (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add da7219 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98373 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add max98357a machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add ssm4567 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add nau8825 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt5682 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt298 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt286 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add rt274 machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add I2S-test machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add DMIC machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Fix build error on arc, m68k and sparc (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: APL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: SKL-based platforms support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Power management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Machine board registration (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Replace link_mask usage with i2s_link_mask (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Event tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: D0ix power state support (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Register HDAudio ext-bus operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add HDAudio machine board (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: PCI driver implementation (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Coredump and recovery flow (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Drop direct ACPI dependency (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Depend on SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Enable AVS driver only on x86 platforms (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: non-HDA PCM BE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic PCM FE operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Generic soc component driver (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Account for libraries when booting basefw (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Configure modules according to their type (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Prepare modules before bindings them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Arm paths after creating them (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path state management (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Path creation and freeing (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare path and its components (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Support link_mask formatted string (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology loading operations (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse path and path templates tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pipeline and module tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse pplcfg and binding tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Parse module-extension tuples (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Add topology parsing infrastructure (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add MeteorLake machines (Jaroslav Kysela) [2125544] - ASoC: Intel: avs: Declare vendor tokens (Jaroslav Kysela) [2125544] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK_AON bit (Jaroslav Kysela) [2125544] - uapi: sof: abi: Bump SOF ABI for ext_data_length (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new structures for topology manifest data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: introduce cont_update_posn in sof_ipc_stream_params struct (Jaroslav Kysela) [2125544] - ASoC: SOF: bump SOF_ABI_MINOR (Jaroslav Kysela) [2125544] - ASoC: SOF: Add header for IPC4 manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: add code to parse config params for ACPDMIC dai (Jaroslav Kysela) [2125544] - ASoC: SOF: Add topology tokens for IPC4 (Jaroslav Kysela) [2125544] - ASoC: hdac_hda: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: max98504: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: adau1372: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cx2072x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6351: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6358: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6359: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: mt6660: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: pcm3060: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt9120: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wcd9335: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt700: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt715-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1308-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt1316-sdw: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: wsa881x: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: sdw-mockup: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lochnagar: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: tfa*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tfa9879: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2125544] - ASoC: tlv320*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cs*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wm9090: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor out the I2C and SPI bus code into separate modules (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor our MCLK and mutex initialisation (Jaroslav Kysela) [2125544] - ASoC: wm8731: Move regulator request into wm8731_init() (Jaroslav Kysela) [2125544] - ASoC: wm8731: Factor component init out of bus code (Jaroslav Kysela) [2125544] - ASoC: wm8731: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ASoC: wm2000: fix missing clk_disable_unprepare() on error in wm2000_anc_transition() (Jaroslav Kysela) [2125544] - ASoC: wm2000: Remove redundant endianness flag (Jaroslav Kysela) [2125544] - ASoC: wm*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix amp gain register offset & default (Jaroslav Kysela) [2125544] - ASoC: tas2764: Correct playback volume range (Jaroslav Kysela) [2125544] - ASoC: tas2764: Fix and extend FSYNC polarity handling (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add post reset delays (Jaroslav Kysela) [2125544] - ASoC: tas*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tas*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: tas2764: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2125544] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2125544] - ASoC: tas2764: Add the driver for the TAS2764 (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix TDM mode BSEL settings (Jaroslav Kysela) [2125544] - ASoC: max*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: max98396: Implement DSP speaker monitor (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix register access for PCM format settings (Jaroslav Kysela) [2125544] - ASoC: max98396: Improve some error prints (Jaroslav Kysela) [2125544] - ASoC: max98396: add voltage regulators (Jaroslav Kysela) [2125544] - ASoC: max98396: Fix build error for implicit function declaration (Jaroslav Kysela) [2125544] - ASoC: max98396: add amplifier driver (Jaroslav Kysela) [2125544] - ASoC: rt*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: rt1019: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: rt*: use simple i2c probe function (Jaroslav Kysela) [2125544] - ASoC: fsl: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pistachio: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: samsung: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sunxi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tegra: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: test-component: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uniphier: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ad*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ak*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: alc*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: da*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: es*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: msm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: nau*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: pcm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: spdif: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ssm*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sta*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: twl*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: uda*: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: 88pm860x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ab8500: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ac97: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ads117x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bd28623: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: bt-sco: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cpcap: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cq93vc: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: cx20442: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: dmic: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: gtm601: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdac_hdmi: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ics43432: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: inno_rk3036: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: isabelle: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: jz4740: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: lm49453: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: mc13783: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: ml26124: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sgtl5000: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: si476x: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: stac9766: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: sti-sas: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: tscs42xx: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: wl1273: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: zl38060: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_micfil: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: fsl_asrc_dma: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: soc-component: Remove non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: simple-card-utils: Move snd_soc_component_is_codec to be local (Jaroslav Kysela) [2125544] - ASoC: soc-component: Add legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Add new SOC_DOUBLE_SX_TLV macro (Jaroslav Kysela) [2125544] - ASoC: Remove unused hw_write_t type (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_EXT_TLV macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Introduce SOC_DOUBLE_R_S_EXT_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: soc.h: Add SOC_SINGLE_S_TLV() macro (Jaroslav Kysela) [2125544] - ASoC: hdmi-codec: Update to modern DAI terminology (Jaroslav Kysela) [2125544] - ALSA: hda: Skip event processing for unregistered codecs (Jaroslav Kysela) [2125544] - ASoC: codecs: Add HD-Audio codec driver (Jaroslav Kysela) [2125544] - ASoC: cs42l42: Move CS42L42 register descriptions to general include (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Read System Name from ACPI _SUB to identify firmware (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add common cs35l41 enter hibernate function (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 exit hibernate function into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs_dsp config struct into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41 fs errata into shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Move cs35l41_set_cspl_mbox_cmd to shared code (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2125544] - ASoC: cs35l41: Support external boost (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add support for MeteorLake (MTL) (Jaroslav Kysela) [2125544] - treewide: Replace zero-length arrays with flexible-array members (Jaroslav Kysela) [2125544] - ASoC: SOF: add definitions for different IPC types (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: enhance debug messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: add sdw blob (Jaroslav Kysela) [2125544] - AsoC: SOF: ipc4-topology: Add dai_get_clk op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for SSP/DMIC DAI's (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new IPC op for parsing topology manifest (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: init NHLT for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: Add ops_free (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: set the BE DAI ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-pcm: Expose sof_ipc4_set_pipeline_state() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add the dai_config op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add route_setup/route_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add widget_setup/widget_free ops (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add pcm ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control IO ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add control_setup op (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing mixer widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing and preparing pga widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for DAI type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add prepare op for AIF type widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing DAI_IN/DAI_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4-topology: Add support for parsing AIF_IN/AIF_OUT widgets (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Introduce topology ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Return from dtrace_read if there is no new data available (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Add helper function to update the sdev->host_offset (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Introduce SOF_DTRACE_INITIALIZING state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: implement pm ctx_save callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Switch to use the generic pm_ops.set_core_state (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Add initial header file for ipc4 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add set_core_state pm_ops implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: sof_ipc_pm_ops: Add support for DSP core power management (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 suspend check dsp idle (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 modify dram type as non-cache (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add shared_size for mediatek common chip information (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: revise mt8195 clock sequence (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add SOF pm ops callback for Renoir (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Fix reversed if statement (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Propagate write errors correctly (Jaroslav Kysela) [2125544] - ASoC: SOF: Fix potential NULL pointer dereference (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-flood-test: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: remove duplicate include in mt8195.c (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8195 debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mediatek common debug dump (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move dtrace related variables local from sof_dev (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce opaque storage of private data for firmware tracing (Jaroslav Kysela) [2125544] - ASoC: SOF: Modify the host trace_init parameter list to include dmab (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-dtrace: Move host ops wrappers from generic header to private (Jaroslav Kysela) [2125544] - ASoC: SOF: Clone the trace code to ipc3-dtrace as fw_tracing implementation (Jaroslav Kysela) [2125544] - ASoC: SOF: Rename dtrace_is_supported flag to fw_trace_is_supported (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC independent ops for firmware tracing support (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Cap the rmaining to count in IPC4 mode (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 ipc support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add ipc support for mt8195 (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set up sof_ipc4_fw_data for IPC4 (Jaroslav Kysela) [2125544] - ASoC: SOF: IPC4: Add FW loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add IPC4 private header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: HDA: Set IPC4-specific DSP ops for CaVS platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: trace: The dtrace is only available with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: IPC flood test can only work with SOF_IPC (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Add support for IPC4 messages (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Separate the message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add support IPC4 message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the ipc_type (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-probes: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc-msg-injector: Query the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client: Add API to get the maximum IPC payload size (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc4: Add support for mandatory message handling functionality (Jaroslav Kysela) [2125544] - ASoC: SOF: Add rx_data pointer to snd_sof_ipc_msg struct (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Remove the ipc3-ops.h header file (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: fix missing pci_release_regions() on error in sof_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Call optional query_fw_configuration on first boot (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove snd_sof_parse_module_memcpy() as it is not used (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: bdw/byt/pci-tng: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: renoir: Do not set the load_module ops (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Switch to use the fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for fw_loader ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3-loader: Implement firmware parsing and loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Introduce IPC dependent ops for firmware handling, loading (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a prepare op to IPC topology widget ops (Jaroslav Kysela) [2125544] - ASoC: SOF: clarify use of widget complete flag (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Skip parsing DAI link tokens if not needed (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: remove unnecessary function declaration (Jaroslav Kysela) [2125544] - ASoC: SOF: Add two new fields to struct snd_sof_widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a route_free op in struct sof_ipc_tplg_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: expose a couple of functions (Jaroslav Kysela) [2125544] - ASoC: SOF: pcm: Move the call to snd_sof_pcm_platform_hw_params() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Set up widgets from source to sink (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: reset route status before freeing widget (Jaroslav Kysela) [2125544] - ASoC: SOF: Add a new op to set up volume table (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Fix allyesconfig build error (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 change ipc timeout as 1 second (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-client-ipc-msg-injector: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: debug: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: control: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8186 (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 dsp clock support (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 sof fw loader and dsp ops (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: Add mt8186 hardware support (Jaroslav Kysela) [2125544] - ASoC: SOF: loader: Remove the old fw_ready related code (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: imx: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Do not set fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: Do not check for the fw_ready callback (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Add local implementation for handling fw_ready message (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: protect hw_params against successive calls (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add helper for link DMA cleanups (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: reset dma_data and release stream (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: improve suspend case (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: move code to deal with hda dai/dailink suspend (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: add hda_dai_hw_free_ipc() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: flag errors on pipeline teardown (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: regroup dai and link DMA operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: split link DMA and dai operations (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: use snd_soc_dai_get_widget() helper (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-dai: simplify hda_dai_widget_update() prototype (Jaroslav Kysela) [2125544] - ASOC: SOF: Intel: hda-dai: consistent naming for HDA DAI and HDA link DMA (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Add IPC-specific dai ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: remove incorrect clearing of prepared flag (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: simplify NHLT handling (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Check w->sname validity once in sof_connect_dai_widget() (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: remove useless assignment (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add RPL-P support (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: pci-tgl: add ADL-PS support (Jaroslav Kysela) [2125544] - ASOC: SOF: pci: add ipc_type override for Intel IPC4 tests (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: don't use the community key on APL Chromebooks (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Use dedicated MBOX for ACP and PSP communication (Jaroslav Kysela) [2125544] - ASoC: SOF: amd: Add psp_mbox_ready() and psp_send_cmd() callback (Jaroslav Kysela) [2125544] - ASoC: SOF: using pm_runtime_resume_and_get to simplify the code (Jaroslav Kysela) [2125544] - ASoC: SOF: Kconfig: Make SND_SOC_SOF_HDA_PROBES tristate (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: add IP identifier (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: expose some codeloader functions (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: Define rom_status_reg in sof_intel_dsp_desc (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: define check_ipc_irq op (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use BIT() macros for consistency (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: move HDA_CL_STREAM_FORMAT definition to header (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda: use common ops across platforms (Jaroslav Kysela) [2125544] - ASoC: SOF: remove const qualifier for 'struct snd_sof_dsp_ops' (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: preserve topology filename override in nocodec mode (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override topology filename (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-pci-dev: add parameter to override firmware filename (Jaroslav Kysela) [2125544] - ASoC: SOF: add IPC-dependent file names (Jaroslav Kysela) [2125544] - ASoC: SOF: add default IPC capability and file paths (Jaroslav Kysela) [2125544] - ASoC: SOF: add path indirection to each IPC type (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: Check the bar size before remapping (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Move the ipc_set_get_comp_data() local to ipc3-control (Jaroslav Kysela) [2125544] - ASoC: SOF: sof-audio: Use the widget_kcontrol_setup ops for kcontrol set up (Jaroslav Kysela) [2125544] - ASoC: SOF: Add widget_kcontrol_setup control ops for IPC3 (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the rx_msg ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Switch over to use the tx_msg and set_get_data ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use the get_reply ops in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add check for mandatory IPC message handling ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Separate the ops checks by functions/topics (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement rx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the get_reply IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the set_get_data IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Use sof_ipc3_tx_msg() internally for message sending (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc3: Implement the tx_msg IPC ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add high level IPC IO callback definitions to ipc_ops (Jaroslav Kysela) [2125544] - ASoC: SOF: Add helper function to prepare and send an IPC message (Jaroslav Kysela) [2125544] - ASoC: SOF: mediatek: mt8195 add shutdown callback (Jaroslav Kysela) [2125544] - ASoC: SOF: OF: Add shutdown callback for SOF OF device (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: Avoid open coded arithmetic in memory allocation (Jaroslav Kysela) [2125544] - ASoC: SOF: topology: use new sound control LED layer (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove redundant return statements (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove header from struct snd_sof_ipc_msg (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop 'header' parameter from tx_message() API (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use msg->reply_data directly in snd_sof_ipc_get_reply() (Jaroslav Kysela) [2125544] - ASoC: SOF: disable dma trace in s0ix (Jaroslav Kysela) [2125544] - ASoC: SOF: extend the interface to stop DMA trace (Jaroslav Kysela) [2125544] - ASoC: SOF: Drop support for mapped control data (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Use ipc->max_payload_size for message/reply size checking (Jaroslav Kysela) [2125544] - ASoC: SOF: ipc: Add max_payload_size field in struct snd_sof_ipc (Jaroslav Kysela) [2125544] - ASoC: SOF: Remove dmab and dmab_bdl from snd_sof_dev struct (Jaroslav Kysela) [2125544] - ASoC: SOF: Intel: hda-loader: Use local snd_dma_buffer (Jaroslav Kysela) [2125544] - ASoC: amd: acp: add missing platform_device_unregister() in acp_pci_probe() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix initialization of ext_intr_stat1 in i2s_irq_handler() (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Use non-legacy DAI naming for cs35l41 (Jaroslav Kysela) [2125544] - ASoC: amd: enable RPL Platform acp drivers build (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform pci driver pm-ops (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform init/de-init functions (Jaroslav Kysela) [2125544] - ASoC: amd: add ACP PCI driver for RPL platform (Jaroslav Kysela) [2125544] - ASoC: amd: add RPL Platform acp header file (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add error handling cases (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify const resource struct variable to generic (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Drop superfluous mmap callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Modify local variables name to generic (Jaroslav Kysela) [2125544] - ASoC: amd: yc: Decrease level of error message (Jaroslav Kysela) [2125544] - ASoC: amd: yc: add new YC platform varaint support (Jaroslav Kysela) [2125544] - ASoC: amd: fix Jadeite kconfig warning and build errors (Jaroslav Kysela) [2125544] - ASoC: amd: Fix error pointer dereference (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add legacy audio driver support for Rembrandt platform (Jaroslav Kysela) [2125544] - ASoC: amd: acp: ACP code generic to support newer platforms (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Remove rt1019_1 codec conf from machine driver (Jaroslav Kysela) [2125544] - ASoC: amd: Remove duplicated include in acp-es8336.c (Jaroslav Kysela) [2125544] - ASoC: amd: fix for variable set but not used warning (Jaroslav Kysela) [2125544] - ASoC: amd: drop machine driver remove function (Jaroslav Kysela) [2125544] - ASoC: amd: remove unused header file inclusion (Jaroslav Kysela) [2125544] - ASoC: amd: acp-es8336: use static variables (Jaroslav Kysela) [2125544] - ASoC: amd: fix ACPI dependency compile errors and warnings (Jaroslav Kysela) [2125544] - ASoC: amd: enable machine driver build for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add Machine driver for Jadeite platform (Jaroslav Kysela) [2125544] - ASoC: amd: add I2S MICSP instance support (Jaroslav Kysela) [2125544] - ASoC: amd: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Fix error handling in .remove() (Jaroslav Kysela) [2125544] - ASoC: amd: acp: fix typo in comment (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for rt5682s and rt1019 card with hs instance (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add support for nau8825 and max98360 card (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Rename set_fmt_new back to set_fmt (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Update to use set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver. (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Set Speaker enable/disable pin through rt1019 codec driver (Jaroslav Kysela) [2125544] - ASoC: amd: vangogh: Remove duplicate include files (Jaroslav Kysela) [2125544] - ASoC: amd: acp: Add pm ops callback in machine driver (Jaroslav Kysela) [2125544] - ASoC: soc-utils: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: Drop superfluous check of CONFIG_SND_CTL_VALIDATION (Jaroslav Kysela) [2125544] - ASoC: topology: Rename soc_tplg_init_kcontrol() function (Jaroslav Kysela) [2125544] - ASoC: topology: Correct error message (Jaroslav Kysela) [2125544] - ASoC: topology: Rename SOC_TPLG_PASS_MIXER to _CONTROL (Jaroslav Kysela) [2125544] - ASoC: topology: Return bool instead of int (Jaroslav Kysela) [2125544] - ASoC: topology: Remove unnecessary looping (Jaroslav Kysela) [2125544] - ASoC: topology: Use for loop instead of while (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Remove now redundant non_legacy_dai_naming flag (Jaroslav Kysela) [2125544] - ASoC: topology: KUnit: Followup prototype change of snd_soc_unregister_card() (Jaroslav Kysela) [2125544] - ASoC: DPCM: Don't pick up BE without substream (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: demote warnings on non-atomic BE connection (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: fix BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for TRIGGER_START (Jaroslav Kysela) [2125544] - ASoC: soc-pcm: improve BE transition for PAUSE_RELEASE (Jaroslav Kysela) [2125544] - ASoC: ops: Fix integer detection for when max possible values > 1 (Jaroslav Kysela) [2125544] - ASoC: ops: Fix boolean/integer detection for simple controls (Jaroslav Kysela) [2125544] - ASoC: ops: Don't modify the driver's plaform_max when reading state (Jaroslav Kysela) [2125544] - ASoC: ops: Remove unneeded delay.h inclusion (Jaroslav Kysela) [2125544] - ASoC: ops: Clarify snd_soc_info_volsw_sx() (Jaroslav Kysela) [2125544] - ASoC: soc-generic-dmaengine-pcm: Use default config when none is given (Jaroslav Kysela) [2125544] - ASoC: dapm: Move stereo autodisable check (Jaroslav Kysela) [2125544] - ASoC: soc-dai: Remove set_fmt_new callback (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: share code for snd_soc_of_get_dai_link_cpus/codecs() (Jaroslav Kysela) [2125544] - ASoC: soc-core.c: fixup snd_soc_of_get_dai_link_cpus() (Jaroslav Kysela) [2125544] - ASoC: core: Switch core to new DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: core: Make snd_soc_unregister_card() return void (Jaroslav Kysela) [2125544] - ASoC: core: Always send the CPU DAI a direct clock specifier (Jaroslav Kysela) [2125544] - ASoC: core: Add set_fmt_new callback that directly specifies provider (Jaroslav Kysela) [2125544] - ASoC: core: Pass legacy_dai_naming flag directly (Jaroslav Kysela) [2125544] - ASoC: core: Correct spelling fliped -> flipped (Jaroslav Kysela) [2125544] - ASoC: soc-core: remove always-false path (Jaroslav Kysela) [2125544] - ASoC: Introduce snd_soc_of_get_dai_link_cpus (Jaroslav Kysela) [2125544] - ASoC: soc-component: Update handling to component delays (Jaroslav Kysela) [2125544] - ASoC: Introduce 'fixup_controls' card method (Jaroslav Kysela) [2125544] - ASoC: soc-card: Create jack kcontrol without pins (Jaroslav Kysela) [2125544] - ALSA: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - Revert "ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations" (Jaroslav Kysela) [2125544] - ALSA: hda: beep: Simplify keep-power-at-enable behavior (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Don't skip notification handling during PM operation (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Limit the maximal count of PCM devices to 8 (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: ELD procfs - print the codec NIDs (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Simplify the pcm_idx condition in hdmi_pcm_setup_pin() (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter allocation for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: change type for the 'assigned' variable (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Move structs out of #define block (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 16 (8902) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/hdmi: Fix the converter reuse for the silent stream (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for ASUS GA503R laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Re-arrange quirk table entries (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop (Jaroslav Kysela) [2125544] - ALSA: hda: Fix Nvidia dp infoframe (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Huawei WRT-WX9 (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: set depop delay for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: add Intel 5 Series / 3400 PCI DID (Jaroslav Kysela) [2125544] - ALSA: hda: Fix hang at HD-audio codec unbinding due to refcount saturation (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc() (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Align BDL entry to 4KB boundary (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Fix unused variable warning for beep power change (Jaroslav Kysela) [2125544] - ALSA: hda/sigmatel: Keep power up while beep is enabled (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298 (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NS50PU, NS70PU (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Dolphin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga7 14IAL7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Clarify support for CSC3551 without _DSD Properties (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirks for ASUS Zenbooks using CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: Fix crash due to jack poll in suspend (Jaroslav Kysela) [2125544] - ALSA: hda/cirrus - support for iMac 12,1 model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 (8786) mute LED (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model (Jaroslav Kysela) [2125544] - ALSA: ice1712: remove redundant assignment to new (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for another Asus K42JZ model (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for HP Spectre x360 15-eb0xxx (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Clevo NV45PZ (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Add quirk for Lenovo Yoga9 14IAP7 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support CLSA0101 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Use the CS35L41 HDA internal define (Jaroslav Kysela) [2125544] - ALSA: hda/realtek: Enable speaker and mute LEDs for HP laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix build error unused-function (Jaroslav Kysela) [2125544] - ALSA: asihpi: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: asihpi: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Fix typo in comments (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add module parameter to control firmware load (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Firmware switching and reloading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add defaulted values into dsp bypass config sequence (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add fw id strings (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Read Speaker Calibration data from UEFI variables (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Hibernation during Suspend (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support Speaker ID for laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support multiple load paths for firmware (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Support reading subsystem id from ACPI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save Subsystem ID inside CS35L41 Driver (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add initial DSP support and firmware loading (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Save codec object inside component struct (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add apis to write the controls directly (Jaroslav Kysela) [2125544] - ALSA: hda: hda_cs_dsp_ctl: Add Library to support CS_DSP ALSA controls (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Consolidate selections under SND_HDA_SCODEC_CS35L41 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Drop wrong use of ACPI_PTR() (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Don't dereference fwnode handle (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Improve dev_err_probe() messaging (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix comments wrt serial-multi-instantiate reference (Jaroslav Kysela) [2125544] - ALSA: hda: Fix put_device() inconsistency in error path (Jaroslav Kysela) [2125544] - ALSA: hda: Make device usage_count consistent across subsequent probing (Jaroslav Kysela) [2125544] - ALSA: hda: Fix null-ptr-deref when i915 fails and hdmi is denylisted (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: change cs8409_fixups v.pins initializers to static (Jaroslav Kysela) [2125544] - ASoC: doc: Update dead links (Jaroslav Kysela) [2125544] - ALSA: hda/via: Delete does not require return (Jaroslav Kysela) [2125544] - ALSA: ctxfi: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: cs5535audio: fix typo in comment (Jaroslav Kysela) [2125544] - ALSA: lola: Bounds check loop iterator against streams array size (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Amp Name based on channel and index (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Enable GPIO2 Interrupt for CLSA0100 laptops (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Support for Interrupts (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove Set Channel Map api from binding (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Set Speaker Position for CLSA0100 Laptop (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix error in spi cs35l41 hda driver name (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Warlock (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Add Speaker Playback Switch for Cyborg (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support new Odin Variants (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Support manual mode detection for CS42L42 (Jaroslav Kysela) [2125544] - ALSA: hda/cs8409: Use general cs42l42 include in cs8409 hda driver (Jaroslav Kysela) [2125544] - ALSA: hdsp: remove redundant assignment to pointer kctl (Jaroslav Kysela) [2125544] - ALSA: hda/conexant: add a new hda codec SN6140 (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move external boost handling to lib for ASoC use (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Handle all external boost setups the same way (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Reorganize log for playback actions (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Remove cs35l41_hda_reg_sequence struct (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Move boost config to initialization code (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Mute the device before shutdown (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Put the device into safe mode for external boost (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Add Boost type flag (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Always configure the DAI (Jaroslav Kysela) [2125544] - ALSA: hda: cs35l41: Fix I2S params comments (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Move cs35l41_gpio_config to shared lib (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Check hw_config before using it (Jaroslav Kysela) [2125544] - ALSA: cs35l41: Unify hardware configuration (Jaroslav Kysela) [2125544] - ALSA: hda/tegra: Enable Jack poll for tegra (Jaroslav Kysela) [2125544] - ALSA: hda: Jack detection poll in suspend state (Jaroslav Kysela) [2125544] - ALSA: echoaudio: remove redundant assignment to variable i (Jaroslav Kysela) [2125544] - ALSA: emu10k1: Stop using iommu_present() (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dsp-config: add missing RaptorLake PCI IDs (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2125544] - ALSA: hda: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hda: Remove unused macro definition (Jaroslav Kysela) [2125544] - ALSA: hda: Reset all SIE bits in INTCTL (Jaroslav Kysela) [2125544] - tracing: ALSA: hda: Remove string manipulation out of the fast path (Jaroslav Kysela) [2125544] - ALSA: hda: intel-nhlt: remove use of __func__ in dev_dbg (Jaroslav Kysela) [2125544] - ALSA: hda: intel-dspcfg: use SOF for UpExtreme and UpExtreme11 boards (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Properly refcounting clock rate (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Clear fixed clock rate at closing EP (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix an out-of-bounds bug in __snd_usb_parse_audio_interface() (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Register card again for iface over delayed_register option (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Inform the delayed registration more properly (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for LH Labs Geek Out HD Audio 1V5 (Jaroslav Kysela) [2125544] - ALSA: usb-audio: make read-only array marker static const (Jaroslav Kysela) [2125544] - ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II (Jaroslav Kysela) [2125544] - ALSA: scarlett2: Add Focusrite Clarett+ 8Pre support (Jaroslav Kysela) [2125544] - ALSA: line6: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: hiface: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb/6fire: fix repeated words in comments (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add quirk for Behringer UMC202HD (Jaroslav Kysela) [2125544] - ALSA: bcd2000: Fix a UAF bug on the error path of probing (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Use atomic_try_cmpxchg in ep_state_update (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add endianness annotations (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Turn off 'manual mode' on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Support jack detection on Dell dock (Jaroslav Kysela) [2125544] - ALSA: usb-audio: US16x08: Move overflow check before array access (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Cancel pending work at closing a MIDI substream (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Add mixer mapping for Gigabyte B450/550 Mobos (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Fix wrong kfree issue in snd_usb_endpoint_free_all (Jaroslav Kysela) [2125544] - ALSA: usb-audio: Refcount multiple accesses on the single clock (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Add Android board ACPI table handling (Jaroslav Kysela) [2125544] - mfd: arizona-spi: Split Windows ACPI init code into its own function (Jaroslav Kysela) [2125544] - mfd: arizona: Add missing statics to the of_match_tables (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add memory chunk helpers (Jaroslav Kysela) [2125544] - firmware: cs_dsp: Add pre_stop callback (Jaroslav Kysela) [2125544] - regmap: sdw: add required header files (Jaroslav Kysela) [2125544] - regmap: soundwire: remove unused header mod_devicetable.h (Jaroslav Kysela) [2125544] - regmap: Constify static regmap_bus structs (Jaroslav Kysela) [2125544] - soundwire: peripheral: remove useless ops pointer (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume() on component probe (Jaroslav Kysela) [2125544] - soundwire: qcom: fix device status array range (Jaroslav Kysela) [2125544] - soundwire: qcom: remove duplicate reset control get (Jaroslav Kysela) [2125544] - soundwire: Intel: add trigger callback (Jaroslav Kysela) [2125544] - soundwire: qcom: Enable software clock gating requirement flag (Jaroslav Kysela) [2125544] - soundwire: qcom: Check device status before reading devid (Jaroslav Kysela) [2125544] - soundwire: qcom: Add flag for software clock gating check (Jaroslav Kysela) [2125544] - soundwire: revisit driver bind/unbind and callbacks (Jaroslav Kysela) [2125544] - soundwire: bus_type: fix remove and shutdown support (Jaroslav Kysela) [2125544] - soundwire: intel: Migrate to new style legacy DAI naming flag (Jaroslav Kysela) [2125544] - ASoC: qcom: soundwire: Add support for controlling audio CGCR from HLOS (Jaroslav Kysela) [2125544] - soundwire: qcom: adjust autoenumeration timeout (Jaroslav Kysela) [2125544] - soundwire: qcom: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: intel: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: cadence: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: bus: use pm_runtime_resume_and_get() (Jaroslav Kysela) [2125544] - soundwire: qcom: return error when pm_runtime_get_sync fails (Jaroslav Kysela) [2125544] - soundwire: bus: pm_runtime_request_resume on peripheral attachment (Jaroslav Kysela) [2125544] - soundwire: intel: disable WAKEEN in pm_runtime resume (Jaroslav Kysela) [2125544] - soundwire: cadence: recheck device0 attachment after status change (Jaroslav Kysela) [2125544] - soundwire: qcom: Add compatible name for v1.6.0 (Jaroslav Kysela) [2125544] - soundwire: stream: Fix error return code in do_bank_switch() (Jaroslav Kysela) [2125544] - soundwire: qcom: fix an error message in swrm_wait_for_frame_gen_enabled() (Jaroslav Kysela) [2125544] - soundwire: qcom: use __maybe_unused for swrm_runtime_resume() (Jaroslav Kysela) [2125544] - soundwire: qcom: constify static struct qcom_swrm_data global variables (Jaroslav Kysela) [2125544] - soundwire: qcom: add in-band wake up interrupt support (Jaroslav Kysela) [2125544] - soundwire: qcom: add runtime pm support (Jaroslav Kysela) [2125544] - soundwire: Replace acpi_bus_get_device() (Jaroslav Kysela) [2125544] - ALSA: Add snd_pcm_direction_name() helper (Jaroslav Kysela) [2125544] - ALSA: core: Fix double-free at snd_card_new() (Jaroslav Kysela) [2125544] - ALSA: hda: Once again fix regression of page allocations with IOMMU (Jaroslav Kysela) [2125544] - ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC (Jaroslav Kysela) [2125544] - ALSA: control: Re-order bounds checking in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: control: Fix an out-of-bounds bug in get_ctl_id_hash() (Jaroslav Kysela) [2125544] - ALSA: seq: Fix data-race at module auto-loading (Jaroslav Kysela) [2125544] - ALSA: seq: oss: Fix data-race for max_midi_devs access (Jaroslav Kysela) [2125544] - ALSA: memalloc: Revive x86-specific WC page allocations again (Jaroslav Kysela) [2125544] - ALSA: info: Fix llseek return value when using callback (Jaroslav Kysela) [2125544] - ALSA: pcm: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: core: Replace scnprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control-led: Replace sprintf() with sysfs_emit() (Jaroslav Kysela) [2125544] - ALSA: control: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: pcm: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: timer: Use deferred fasync helper (Jaroslav Kysela) [2125544] - ALSA: core: Add async signal helpers (Jaroslav Kysela) [2125544] - ALSA: core: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: memalloc: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: control: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Fix kernel doc warnings (Jaroslav Kysela) [2125544] - ALSA: dmaengine: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: pcm: Fix missing return value comments for kernel docs (Jaroslav Kysela) [2125544] - ALSA: compress: Enable kernel doc markers for some functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take buffer refcount while draining output (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Check stream state at exported functions (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Take open_mutex around parameter changes (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Move lock to snd_rawmidi_substream (Jaroslav Kysela) [2125544] - ALSA: rawmidi: Make internal functions local static (Jaroslav Kysela) [2125544] - ALSA: control: Add input validation (Jaroslav Kysela) [2125544] - ALSA: control: Drop superfluous ifdef CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Rename CONFIG_SND_CTL_VALIDATION to CONFIG_SND_CTL_DEBUG (Jaroslav Kysela) [2125544] - ALSA: control: Use xarray for faster lookups (Jaroslav Kysela) [2125544] - ALSA: seq: replace ternary operator with max() (Jaroslav Kysela) [2125544] - ALSA: pcm: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2125544] - pinctrl: amd: Don't save/restore interrupt status and wake status bits (Prarit Bhargava) [2130059] - x86/paravirt: Add a dummy __x86_paravirt_patch_template() function (Waiman Long) [2144161] - x86/paravirt: Fix kABI breakage in struct pv_mmu_ops (Waiman Long) [2144161]- can: af_can: fix NULL pointer dereference in can_rx_register() (Ivan Vecera) [2136823] - net: disable preemption in dev_core_stats_XXX_inc() helpers (Ivan Vecera) [2136823] - net: introduce CAN specific pointer in the struct net_device (Ivan Vecera) [2136823] - can: af_can: can_pernet_exit(): no need to iterate over and cleanup registered CAN devices (Ivan Vecera) [2136823] - net: add per-cpu storage and net->core_stats (Ivan Vecera) [2136823] - tun: switch to net core provided statistics counters (Ivan Vecera) [2136823] - tun: switch to u64_stats_t (Ivan Vecera) [2136823] - ceph: avoid putting the realm twice when decoding snaps fails (Xiubo Li) [2139881] - powerpc/64/kdump: Limit kdump base to 512MB (Mamatha Inamdar) [2132921] - ice: virtchnl rss hena support (Petr Oros) [2136516] - Documentation/admin-guide: Document nomodeset kernel parameter (Jocelyn Falempe) [2143952] - drm: Move nomodeset kernel parameter to the DRM subsystem (Jocelyn Falempe) [2143952] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - sound: usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - net: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - media: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - Input: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - HID: usbhid: remove third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - usb: deprecate the third argument of usb_maxpacket() (Íñigo Huguet) [2143362] - scsi: smartpqi: Change version to 2.1.20-035 (Don Brace) [2116976] - scsi: smartpqi: Initialize feature section info (Don Brace) [2116976] - scsi: smartpqi: Add controller cache flush during rmmod (Don Brace) [2116976] - scsi: smartpqi: Correct device removal for multi-actuator devices (Don Brace) [2116976] - scsi: smartpqi: Change sysfs raid_level attribute to N/A for controllers (Don Brace) [2116976] - scsi: smartpqi: Correct max LUN number (Don Brace) [2116976] - scsi: smartpqi: Add new controller PCI IDs (Don Brace) [2116976] - scsi: smartpqi: Convert to host_tagset (Don Brace) [2116976] - scsi: smartpqi: Stop using the SCSI pointer (Don Brace) [2116976] - smartpqi: Change request pointer to scsi_cmd_to_rq (Don Brace) [2116976] - scsi: smartpqi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Don Brace) [2116976] - EDAC/skx_common: Make output format similar (Aristeu Rozanski) [2124915] - EDAC/skx_common: Use driver decoder first (Aristeu Rozanski) [2124915] - ptp: introduce helpers to adjust by scaled parts per million (Izabela Bakollari) [2141639] - ptp: add missing documentation for parameters (Izabela Bakollari) [2141639] - mm: slub: fix flush_cpu_slab()/__free_slab() invocations in task context. (Nico Pache) [2144559] - scsi: target: loop: Fix handling of aborted TMRs (Maurizio Lombardi) [2141713] - ceph: fix NULL pointer dereference for req->r_session (Xiubo Li) [2137955] - ceph: Use kcalloc for allocating multiple elements (Xiubo Li) [2137955] - net/mlx5e: TC, Reject forwarding from internal port to internal port (Mohammad Kabat) [2131345] - md/raid1: stop mdx_raid1 thread when raid1 array run failed (Nigel Croxon) [2143270] - md: fix a crash in mempool_free (Nigel Croxon) [2143257] - md/raid0, raid10: Don't set discard sectors for request queue (Nigel Croxon) [2143250] - sgx: use ->f_mapping... (Vladis Dronov) [2130210] - x86/sgx: Improve comments for sgx_encl_lookup/alloc_backing() (Vladis Dronov) [2130210] - x86/sgx: Handle VA page allocation failure for EAUG on PF. (Vladis Dronov) [2130210] - x86/sgx: Do not fail on incomplete sanitization on premature stop of ksgxd (Vladis Dronov) [2130210] - selftests/sgx: Ignore OpenSSL 3.0 deprecated functions warning (Vladis Dronov) [2130210] - x86/sgx: Set active memcg prior to shmem allocation (Vladis Dronov) [2130210] - x86/sgx: Drop 'page_index' from sgx_backing (Vladis Dronov) [2130210] - selftests/sgx: Page removal stress test (Vladis Dronov) [2130210] - selftests/sgx: Test reclaiming of untouched page (Vladis Dronov) [2130210] - selftests/sgx: Test invalid access to removed enclave page (Vladis Dronov) [2130210] - selftests/sgx: Test faulty enclave behavior (Vladis Dronov) [2130210] - selftests/sgx: Test complete changing of page type flow (Vladis Dronov) [2130210] - selftests/sgx: Introduce TCS initialization enclave operation (Vladis Dronov) [2130210] - selftests/sgx: Introduce dynamic entry point (Vladis Dronov) [2130210] - selftests/sgx: Test two different SGX2 EAUG flows (Vladis Dronov) [2130210] - selftests/sgx: Add test for TCS page permission changes (Vladis Dronov) [2130210] - selftests/sgx: Add test for EPCM permission changes (Vladis Dronov) [2130210] - Documentation/x86: Introduce enclave runtime management section (Vladis Dronov) [2130210] - x86/sgx: Free up EPC pages directly to support large page ranges (Vladis Dronov) [2130210] - x86/sgx: Support complete page removal (Vladis Dronov) [2130210] - x86/sgx: Support modifying SGX page type (Vladis Dronov) [2130210] - x86/sgx: Tighten accessible memory range after enclave initialization (Vladis Dronov) [2130210] - x86/sgx: Support adding of pages to an initialized enclave (Vladis Dronov) [2130210] - x86/sgx: Support restricting of enclave page permissions (Vladis Dronov) [2130210] - x86/sgx: Support VA page allocation without reclaiming (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_page_alloc() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_{grow,shrink}() (Vladis Dronov) [2130210] - x86/sgx: Keep record of SGX page type (Vladis Dronov) [2130210] - x86/sgx: Create utility to validate user provided offset and length (Vladis Dronov) [2130210] - x86/sgx: Make sgx_ipi_cb() available internally (Vladis Dronov) [2130210] - x86/sgx: Move PTE zap code to new sgx_zap_enclave_ptes() (Vladis Dronov) [2130210] - x86/sgx: Rename sgx_encl_ewb_cpumask() as sgx_encl_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Export sgx_encl_ewb_cpumask() (Vladis Dronov) [2130210] - x86/sgx: Support loading enclave page without VMA permissions check (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EAUG function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODT function (Vladis Dronov) [2130210] - x86/sgx: Add wrapper for SGX2 EMODPR function (Vladis Dronov) [2130210] - x86/sgx: Add short descriptions to ENCLS wrappers (Vladis Dronov) [2130210] - x86/sgx: Ensure no data in PCMD page after truncate (Vladis Dronov) [2130210] - x86/sgx: Fix race between reclaimer and page fault handler (Vladis Dronov) [2130210] - x86/sgx: Obtain backing storage page with enclave mutex held (Vladis Dronov) [2130210] - x86/sgx: Mark PCMD page as dirty when modifying contents (Vladis Dronov) [2130210] - x86/sgx: Disconnect backing page references from dirty status (Vladis Dronov) [2130210] - HID: intel-ish-hid: ipc: Add Meteor Lake PCI device ID (Tony Camuso) [2132441] - hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered message (Tony Camuso) [2132441] - HID: ishtp-hid-clientHID: ishtp-hid-client: Fix comment typo (Tony Camuso) [2132441] - ID: intel-ish-hid: hid-client: drop unexpected word "the" in the comments (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: use time_before to replace "jiffies < a" (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: add ADL and RPL device id (Tony Camuso) [2132441] - HID: intel-ish-hid: Use dma_alloc_coherent for firmware update (Tony Camuso) [2132441] - HID: intel-ish-hid: ishtp-fw-loader: Fix a kernel-doc formatting issue (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: Specify no cache snooping on TGL and ADL (Tony Camuso) [2132441] - HID: intel-ish-hid: ipc: only enable IRQ wakeup when requested (Tony Camuso) [2132441] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [2132441] - HID: intel-ish-hid: hid-client: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: fw-loader: only load for matching devices (Tony Camuso) [2132441] - HID: intel-ish-hid: use constants for modaliases (Tony Camuso) [2132441] - s390/pci: add missing EX_TABLE entries to __pcistg_mio_inuser()/__pcilg_mio_inuser() (Tobias Huschle) [2141963] - s390/futex: add missing EX_TABLE entry to __futex_atomic_op() (Tobias Huschle) [2141963] - s390/uaccess: add missing EX_TABLE entries to __clear_user() (Tobias Huschle) [2141963] - net: usb: ax88179_178a: Fix packet receiving (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup (Jose Ignacio Tornos Martinez) [2142725] {CVE-2022-2964} - drm/i915/rpl-p: Add PCI IDs (Jocelyn Falempe) [2115880] - Revert "dma-buf: remove useless FMODE_LSEEK flag" (Jocelyn Falempe) [2115880] - drm/amd/display: Increase stack frame size limit for a few files. (Jocelyn Falempe) [2115880] - drm_crtc.h is missing include/linux/slab.h (Jocelyn Falempe) [2115880] - drm/amd/display: remove a duplicated declaration (Jocelyn Falempe) [2115880] - Revert "mm: shrinkers: provide shrinkers with names" (Jocelyn Falempe) [2115880] - Revert "drm/amdkfd: add SPM support for SVM" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.19..v6.0 (Jocelyn Falempe) [2115880] - drm/i915/gvt: IMPORT_MODULE_NS workaround (Jocelyn Falempe) [2115880] - Replace EXPORT_SYMBOL_NS_GPL with EXPORT_SYMBOL_GPL (Jocelyn Falempe) [2115880] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2115880] - Revert "vfio/mdev: Pass in a struct vfio_device * to vfio_dma_rw()" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: convert to use vfio_register_emulated_iommu_dev" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: merge gvt.c into kvmgvt.c" (Jocelyn Falempe) [2115880] - Revert "vfio/mdev: Remove mdev_parent_ops" (Jocelyn Falempe) [2115880] - Revert "vfio: Make vfio_(un)register_notifier accept a vfio_device" (Jocelyn Falempe) [2115880] - Revert "drm/i915/gvt: Change from vfio_group_(un)pin_pages to vfio_(un)pin_pages" (Jocelyn Falempe) [2115880] - Revert "vfio: remove VFIO_GROUP_NOTIFY_SET_KVM" (Jocelyn Falempe) [2115880] - Revert "i915: Call aops write_begin() and write_end() directly" (Jocelyn Falempe) [2115880] - Merge DRM changes from upstream v5.18..v5.19 (Jocelyn Falempe) [2115880] - crypto: testmgr - disallow plain cbcmac(aes) and ghash in FIPS mode (Vladis Dronov) [2107595] - crypto: set the required FIPS_INTERNAL flag for gcm and ccm (Vladis Dronov) [2107595] - crypto: seqiv - flag instantiations as FIPS compliant (Vladis Dronov) [2107595] - crypto: xts - restrict key lengths to approved values in FIPS mode (Vladis Dronov) [2107595] - crypto: api - allow algs only in specific constructions in FIPS mode (Vladis Dronov) [2107595] - crypto: api - check for ERR pointers in crypto_destroy_tfm() (Vladis Dronov) [2107595] - crypto: api - Fix use-after-free and race in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: algapi - Avoid spurious modprobe on LOADED (Vladis Dronov) [2107595] - crypto: api - Retain alg refcount in crypto_grab_spawn (Vladis Dronov) [2107595] - crypto: api - Do not zap spawn->alg (Vladis Dronov) [2107595] - crypto: api - Fix race condition in crypto_spawn_alg (Vladis Dronov) [2107595] - crypto: api - Check spawn->alg under lock in crypto_drop_spawn (Vladis Dronov) [2107595] - crypto: algapi - reject NULL crypto_spawn::inst (Vladis Dronov) [2107595] - iavf: remove INITIAL_MAC_SET to allow gARP to work properly (Stefan Assmann) [1938635] - mm, slab: remove duplicate kernel-doc comment for ksize() (Michal Schmidt) [2143367] - slab: Introduce kmalloc_size_roundup() (Michal Schmidt) [2143367] - thermal: int340x: Mode setting with new OS handshake (Prarit Bhargava) [2072652] - thermal: int340x: Update OS policy capability handshake (Prarit Bhargava) [2072652] - hugetlb: remove unnecessary set_page_count in prep_compound_gigantic_page (Chris von Recklinghausen) [2143631] - mm/hugetlb: clear compound_nr before freeing gigantic pages (Chris von Recklinghausen) [2143631] - uprobes: __replace_page() avoid BUG in munlock_vma_page() (Chris von Recklinghausen) [2143631] - s390/boot: add secure boot trailer (Tobias Huschle) [2141967] - ice: Fix configuring VIRTCHNL_OP_CONFIG_VSI_QUEUES with unbalanced queues (Michal Schmidt) [2137378] - nvme: wait until quiesce is done (Ming Lei) [2144258] - scsi: make sure that request queue queiesce and unquiesce balanced (Ming Lei) [2144258] - scsi: avoid to quiesce sdev->request_queue two times (Ming Lei) [2144258] - dm: don't stop request queue after the dm device is suspended (Ming Lei) [2144258]- ata: libata-core: Print timeout value when internal command times (Ewan D. Milne) [1823688] - ata: libata-core: fix sloppy parameter type in ata_exec_internal[_sg]() (Ewan D. Milne) [1823688] - ata: libata-core: make ata_exec_internal_sg() *static* (Ewan D. Milne) [1823688] - perf/x86/intel: Fix unchecked MSR access error for Alder Lake N (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS data source encoding for ADL (Michael Petlan) [2104807] - perf/x86/intel: Fix PEBS memory access info encoding for ADL (Michael Petlan) [2104807] - i40e: Fix DMA mappings leak (Ivan Vecera) [2077847] - fbcon: Fix delayed takeover locking (Jocelyn Falempe) [2134795] - fbcon: use min() to make code cleaner (Jocelyn Falempe) [2134795] - fbcon: Use array3_size() helper in scr_memcpyw() (Jocelyn Falempe) [2134795] - fbcon: Maintain a private array of fb_info (Jocelyn Falempe) [2134795] - fbcon: untangle fbcon_exit (Jocelyn Falempe) [2134795] - fbcon: Move more code into fbcon_release (Jocelyn Falempe) [2134795] - fbcon: Move console_lock for register/unlink/unregister (Jocelyn Falempe) [2134795] - fbcon: Consistently protect deferred_takeover with console_lock() (Jocelyn Falempe) [2134795] - fbcon: use lock_fb_info in fbcon_open/release (Jocelyn Falempe) [2134795] - fbcon: move more common code into fb_open() (Jocelyn Falempe) [2134795] - fbcon: Ditch error handling for con2fb_release_oldinfo (Jocelyn Falempe) [2134795] - fbcon: Extract fbcon_open/release helpers (Jocelyn Falempe) [2134795] - fb: Delete fb_info->queue (Jocelyn Falempe) [2134795] - fbcon: Replace FBCON_FLAGS_INIT with a boolean (Jocelyn Falempe) [2134795] - fbcon: Use delayed work for cursor (Jocelyn Falempe) [2134795] - fbdev/sysfs: Fix locking (Jocelyn Falempe) [2134795] - fbcon: delete delayed loading code (Jocelyn Falempe) [2134795] - fbcon: Introduce wrapper for console->fb_info lookup (Jocelyn Falempe) [2134795] - fbcon: Move fbcon_bmove(_rec) functions (Jocelyn Falempe) [2134795] - fbcon: delete a few unneeded forward decl (Jocelyn Falempe) [2134795] - fbcon: Avoid 'cap' set but not used warning (Jocelyn Falempe) [2134795] - video: fbcon: Fix warnings by using pr_debug() in fbcon (Jocelyn Falempe) [2134795] - fbcon: Fix user font detection test at fbcon_resize(). (Jocelyn Falempe) [2134795] - fbcon: remove now unusued 'softback_lines' cursor() argument (Jocelyn Falempe) [2134795] - fbcon: remove soft scrollback code (Jocelyn Falempe) [2134795] - fbcon: prevent user font height or width change from causing potential out-of-bounds access (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_update_vcs() out of fb_set_var() (Jocelyn Falempe) [2134795] - fbcon: fix null-ptr-deref in fbcon_switch (Jocelyn Falempe) [2134795] - fbcon: Adjust indentation in set_con2fb_map (Jocelyn Falempe) [2134795] - fbdev: Unexport unlink_framebuffer() (Jocelyn Falempe) [2134795] - backlight: drop EARLY_EVENT_BLANK support (Jocelyn Falempe) [2134795] - fbcon: Export fbcon_update_vcs (Jocelyn Falempe) [2134795] - backlight: simplify lcd notifier (Jocelyn Falempe) [2134795] - fbcon: Document what I learned about fbcon locking (Jocelyn Falempe) [2134795] - fbcon: Call con2fb_map functions directly (Jocelyn Falempe) [2134795] - fbcon: replace FB_EVENT_MODE_CHANGE/_ALL with direct calls (Jocelyn Falempe) [2134795] - fb: Flatten control flow in fb_set_var (Jocelyn Falempe) [2134795] - fbdev: remove FBINFO_MISC_USEREVENT around fb_blank (Jocelyn Falempe) [2134795] - fbmem: pull fbcon_fb_blanked out of fb_blank (Jocelyn Falempe) [2134795] - Revert "backlight/fbcon: Add FB_EVENT_CONBLANK" (Jocelyn Falempe) [2134795] - fbdev: Call fbcon_get_requirement directly (Jocelyn Falempe) [2134795] - fbcon: Call fbcon_mode_deleted/new_modelist directly (Jocelyn Falempe) [2134795] - fbdev: directly call fbcon_suspended/resumed (Jocelyn Falempe) [2134795] - fbdev: unify unlink_framebuffer paths (Jocelyn Falempe) [2134795] - fbdev: make unregister/unlink functions not fail (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_bind directly (Jocelyn Falempe) [2134795] - fbcon: call fbcon_fb_(un)registered directly (Jocelyn Falempe) [2134795] - fbdev: fbmem: fix memory access if logo is bigger than the screen (Jocelyn Falempe) [2134795] - fbdev: add kerneldoc do remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: allow apertures == NULL in remove_conflicting_framebuffers() (Jocelyn Falempe) [2134795] - fbdev: show fbdev number for debugging (Jocelyn Falempe) [2134795] - fbcon: use kvmalloc() for scrollback buffer (Jocelyn Falempe) [2134795] - fbdev: fbcon: Fix unregister crash when more than one framebuffer (Jocelyn Falempe) [2134795] - fb: fix lost console when the user unplugs a USB adapter (Jocelyn Falempe) [2134795] - fbcon: introduce for_each_registered_fb() helper (Jocelyn Falempe) [2134795] - timers/nohz: Last resort update jiffies on nohz_full IRQ entry (Waiman Long) [2108387] - irq: Call tick_irq_enter() inside HARDIRQ_OFFSET (Waiman Long) [2108387] - irqtime: Move irqtime entry accounting after irq offset incrementation (Waiman Long) [2108387] - sched/vtime: Consolidate IRQ time accounting (Waiman Long) [2108387] - s390/vtime: Use the generic IRQ entry accounting (Waiman Long) [2108387] - sched/cputime: Remove symbol exports from IRQ time accounting (Waiman Long) [2108387] - genirq/irqdomain: Don't try to free an interrupt that has no mapping (Waiman Long) [2108387] - genirq: Provide __irq_enter/exit_raw() (Waiman Long) [2108387] - powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 (Waiman Long) [2108387] - powerpc/time: isolate scaled cputime accounting in dedicated functions. (Waiman Long) [2108387] - perf: Fix list corruption in perf_cgroup_switch() (Aaron Tomlin) [2136548] - gen_compile_commands: fix issues in RHEL-8 (Íñigo Huguet) [2136840] - .gitignore: Add compilation database file (Íñigo Huguet) [2136840] - gen_compile_commands: fix missing 'sys' package (Íñigo Huguet) [2136840] - gen_compile_commands: extract compiler command from a series of commands (Íñigo Huguet) [2136840] - gen_compile_commands: prune some directories (Íñigo Huguet) [2136840] - scripts/clang-tools: switch explicitly to Python 3 (Íñigo Huguet) [2136840] - Makefile: Add clang-tidy and static analyzer support to makefile (Íñigo Huguet) [2136840] - kbuild: wire up the build rule of compile_commands.json to Makefile (Íñigo Huguet) [2136840] - gen_compile_commands: remove the warning about too few .cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: support *.o, *.a, modules.order in positional argument (Íñigo Huguet) [2136840] - gen_compile_commands: move directory walk to a generator function (Íñigo Huguet) [2136840] - gen_compile_commands: make -o option independent of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: reword the help message of -d option (Íñigo Huguet) [2136840] - gen_compile_commands: do not support .cmd files under tools/ directory (Íñigo Huguet) [2136840] - gen_compile_commands: use choices for --log_levels option (Íñigo Huguet) [2136840] - gen_compile_commands: parse only the first line of .*.cmd files (Íñigo Huguet) [2136840] - gen_compile_commands: lower the entry count threshold (Íñigo Huguet) [2136840] - scripts: add a tool to produce a compile_commands.json file (Íñigo Huguet) [2136840] - iavf: Do not restart Tx queues after reset task failure (Petr Oros) [2134005] - iavf: Fix a crash during reset task (Petr Oros) [2134005] - spec: add bpf_testmod.ko to kselftests/bpf (Yauheni Kaliuta) [2140082] - fuse: fix readdir cache race (Miklos Szeredi) [2131391] - ice: config netdev tc before setting queues number (Petr Oros) [2103946] - ice: Fix ice_xdp_xmit() when XDP TX queue number is not sufficient (Petr Oros) [2103946] - ice: Don't double unplug aux on peer initiated reset (Petr Oros) [2103946] - ice: use bitmap_free instead of devm_kfree (Petr Oros) [2103946] - ice: Fix DMA mappings leak (Petr Oros) [2103946] - ice: Fix call trace with null VSI during VF reset (Petr Oros) [2103946] - ice: Fix VSI rebuild WARN_ON check for VF (Petr Oros) [2103946] - net/ice: fix initializing the bitmap in the switch code (Petr Oros) [2103946] - net: ice: fix error NETIF_F_HW_VLAN_CTAG_FILTER check in ice_vsi_sync_fltr() (Petr Oros) [2103946] - ice: allow toggling loopback mode via ndo_set_features callback (Petr Oros) [2103946] - ice: compress branches in ice_set_features() (Petr Oros) [2103946] - ice: Add support for PPPoE hardware offload (Petr Oros) [2103946] - ice: add i2c write command (Petr Oros) [2103946] - ice: Remove pci_aer_clear_nonfatal_status() call (Petr Oros) [2103946] - ice: Remove unnecessary NULL check before dev_put (Petr Oros) [2103946] - ice: use eth_broadcast_addr() to set broadcast address (Petr Oros) [2103946] - ice: switch: dynamically add VLAN headers to dummy packets (Petr Oros) [2103946] - ice: Add support for VLAN TPID filters in switchdev (Petr Oros) [2103946] - ice: Add support for double VLAN in switchdev (Petr Oros) [2103946] - intel/ice:fix repeated words in comments (Petr Oros) [2103946] - drivers/net/ethernet/intel: fix typos in comments (Petr Oros) [2103946] - ice: Use correct order for the parameters of devm_kcalloc() (Petr Oros) [2103946] - ice: remove u16 arithmetic in ice_gnss (Petr Oros) [2103946] - ice: remove VLAN representor specific ops (Petr Oros) [2103946] - ice: don't set VF VLAN caps in switchdev (Petr Oros) [2103946] - kernel-doc: fix undefined args variable (Jan Stancek) [2134954]- sunrpc: Set sk_allocation to GFP_NOFS to avoid using current->task_frag. (Guillaume Nault) [2089660] - selftests/vm: enable running select groups of tests (Joel Savitz) [2089502] - selftests: make use of GUP_TEST_FILE macro (Nico Pache) [2089502] - selftests: clarify common error when running gup_test (Nico Pache) [2089502] - tools/testing/selftests/vm/gup_test.c: clarify error statement (Nico Pache) [2089502] - mm: remove the extra ZONE_DEVICE struct page refcount (Chris von Recklinghausen) [2082247] - mm: simplify freeing of devmap managed pages (Chris von Recklinghausen) [2082247] - mm: move free_devmap_managed_page to memremap.c (Chris von Recklinghausen) [2082247] - mm/memremap: add ZONE_DEVICE support for compound pages (Chris von Recklinghausen) [2082247] - mm/page_alloc: refactor memmap_init_zone_device() page init (Chris von Recklinghausen) [2082247] - mm/page_alloc: split prep_compound_page into head and tail subparts (Chris von Recklinghausen) [2082247] - mm/debug: sync up MR_CONTIG_RANGE and MR_LONGTERM_PIN (Chris von Recklinghausen) [2082247] - mm: gup: use helper PAGE_ALIGNED in populate_vma_page_range() (Chris von Recklinghausen) [2082247] - mm: gup: remove useless BUG_ON in __get_user_pages() (Chris von Recklinghausen) [2082247] - mm: gup: remove unneed local variable orig_refs (Chris von Recklinghausen) [2082247] - mm: gup: remove set but unused local variable major (Chris von Recklinghausen) [2082247] - writeback: make the laptop_mode prototypes available unconditionally (Chris von Recklinghausen) [2082247] - mm: hide laptop_mode_wb_timer entirely behind the BDI API (Chris von Recklinghausen) [2082247] - mm: remove special swap entry functions (Chris von Recklinghausen) [2082247] - hugetlb: address ref count racing in prep_compound_gigantic_page (Chris von Recklinghausen) [2082247] - hugetlb: remove prep_compound_huge_page cleanup (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): get vma_address_end() earlier (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use goto instead of while (1) (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): add a level of indentation (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): crossing page table boundary (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): settle PageHuge on entry (Chris von Recklinghausen) [2082247] - mm: page_vma_mapped_walk(): use page for pvmw->page (Chris von Recklinghausen) [2082247] - mm/gup: longterm pin migration cleanup (Chris von Recklinghausen) [2082247] - mm/gup: change index type to long as it counts pages (Chris von Recklinghausen) [2082247] - mm/gup: migrate pinned pages out of movable zone (Chris von Recklinghausen) [2082247] - mm: honor PF_MEMALLOC_PIN for all movable pages (Chris von Recklinghausen) [2082247] - mm cma: rename PF_MEMALLOC_NOCMA to PF_MEMALLOC_PIN (Chris von Recklinghausen) [2082247] - mm/huge_memory.c: use helper function migration_entry_to_page() (Chris von Recklinghausen) [2082247] - block: add queue_to_disk() to get gendisk from request_queue (Chris von Recklinghausen) [2082247] - mm/hugetlb: remove redundant check in preparing and destroying gigantic page (Chris von Recklinghausen) [2082247] - mm/hugetlb: use helper huge_page_order and pages_per_huge_page (Chris von Recklinghausen) [2082247] - mm: handle zone device pages in release_pages() (Chris von Recklinghausen) [2082247] - mm/gup: remove the vma allocation from gup_longterm_locked() (Chris von Recklinghausen) [2082247] - mm/mremap_pages: fix static key devmap_managed_key updates (Chris von Recklinghausen) [2082247] - mm/memremap.c: convert devmap static branch to {inc,dec} (Chris von Recklinghausen) [2082247] - mm/page_alloc: handle a missing case for memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: store compound_nr as well as compound_order (Chris von Recklinghausen) [2082247] - mm: clean up the last pieces of page fault accountings (Chris von Recklinghausen) [2082247] - mm/x86: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/s390: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/powerpc: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm/arm64: use general page fault accounting (Chris von Recklinghausen) [2082247] - mm: do page fault accounting in handle_mm_fault (Chris von Recklinghausen) [2082247] - include/linux/sched/mm.h: optimize current_gfp_context() (Chris von Recklinghausen) [2082247] - mm/page_alloc: fix memalloc_nocma_{save/restore} APIs (Chris von Recklinghausen) [2082247] - mm: remove redundant check non_swap_entry() (Chris von Recklinghausen) [2082247] - mm: rename gfpflags_to_migratetype to gfp_migratetype for same convention (Chris von Recklinghausen) [2082247] - mm,page_alloc,cma: conditionally prefer cma pageblocks for movable allocations (Chris von Recklinghausen) [2082247] - mm/vma: introduce VM_ACCESS_FLAGS (Chris von Recklinghausen) [2082247] - mm/vma: make vma_is_accessible() available for general use (Chris von Recklinghausen) [2082247] - kernel/events/uprobes.c: only do FOLL_SPLIT_PMD for uprobe register (Chris von Recklinghausen) [2082247] - uprobe: collapse THP pmd after removing all uprobes (Chris von Recklinghausen) [2082247] - uprobe: use FOLL_SPLIT_PMD instead of FOLL_SPLIT (Chris von Recklinghausen) [2082247] - mm, thp: introduce FOLL_SPLIT_PMD (Chris von Recklinghausen) [2082247] - mm: clean up is_device_*_page() definitions (Chris von Recklinghausen) [2082247] - driver core: Add helper device_find_child_by_name() (Chris von Recklinghausen) [2082247] - mm/page_alloc.c: remove unnecessary parameter in rmqueue_pcplist (Chris von Recklinghausen) [2082247] - sctp: handle the error returned from sctp_auth_asoc_init_active_key (Xin Long) [2134892] - sctp: leave the err path free in sctp_stream_init to sctp_stream_free (Xin Long) [2134892] - sctp: fix sleep in atomic context bug in timer handlers (Xin Long) [2134892] - stcp: Use memset_after() to zero sctp_stream_out_ext (Xin Long) [2134892] - sctp: read sk->sk_bound_dev_if once in sctp_rcv() (Xin Long) [2134892] - ethtool: add header/data split indication (Ivan Vecera) [2135624] - xfrm: store and rely on direction to construct offload flags (Sabrina Dubroca) [2137562] - platform/x86/intel: pmc: Support Intel Raptorlake P (Prarit Bhargava) [2076736]- KVM: selftests: Build the memslot tests for arm64 (Gavin Shan) [2132161] - KVM: selftests: Fix number of pages for memory slot in memslot_modification_stress_test (Gavin Shan) [2132161] - tools/include: Add _RET_IP_ and math definitions to kernel.h (Gavin Shan) [2132161] - tcp: fix early ETIMEDOUT after spurious non-SACK RTO (Davide Caratti) [2136409] - tcp: add a missing nf_reset_ct() in 3WHS handling (Davide Caratti) [2136409] - sock: redo the psock vs ULP protection check (Davide Caratti) [2136409] - tcp: tcp_rtx_synack() can be called from process context (Davide Caratti) [2136409] - tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd (Davide Caratti) [2136409] - tcp: fix F-RTO may not work correctly when receiving DSACK (Davide Caratti) [2136409] - selftests: xsk: do not send zero-length packets (Ivan Vecera) [2135634] - selftests/xsk: Introduce XDP prog load based on existing AF_XDP socket (Ivan Vecera) [2135634] - selftests, xsk: Fix rx_full stats test (Ivan Vecera) [2135634] - selftests/bpf: Fix xdpxceiver failures for no hugepages (Ivan Vecera) [2135634] - selftests/xsk: Add missing close() on netns fd (Ivan Vecera) [2135634] - selftests, xsk: Fix bpf_res cleanup test (Ivan Vecera) [2135634] - selftests: xsk: Add frame_headroom test (Ivan Vecera) [2135634] - selftests: xsk: Change interleaving of packets in unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Add single packet test (Ivan Vecera) [2135634] - selftests: xsk: Introduce pacing of traffic (Ivan Vecera) [2135634] - selftests: xsk: Fix socket creation retry (Ivan Vecera) [2135634] - selftests: xsk: Put the same buffer only once in the fill ring (Ivan Vecera) [2135634] - selftests: xsk: Fix missing initialization (Ivan Vecera) [2135634] - selftests: xsk: Add tests for 2K frame size (Ivan Vecera) [2135634] - selftests: xsk: Add tests for invalid xsk descriptors (Ivan Vecera) [2135634] - selftests: xsk: Eliminate test specific if-statement in test runner (Ivan Vecera) [2135634] - selftests: xsk: Add test for unaligned mode (Ivan Vecera) [2135634] - selftests: xsk: Introduce replacing the default packet stream (Ivan Vecera) [2135634] - selftests: xsk: Allow for invalid packets (Ivan Vecera) [2135634] - selftests: xsk: Eliminate MAX_SOCKS define (Ivan Vecera) [2135634] - selftests: xsx: Make pthreads local scope (Ivan Vecera) [2135634] - selftests: xsk: Make xdp_flags and bind_flags local (Ivan Vecera) [2135634] - selftests: xsk: Specify number of sockets to create (Ivan Vecera) [2135634] - selftests: xsk: Replace second_step global variable (Ivan Vecera) [2135634] - selftests: xsk: Introduce rx_on and tx_on in ifobject (Ivan Vecera) [2135634] - selftests: xsk: Add use_poll to ifobject (Ivan Vecera) [2135634] - selftests: xsx: Introduce test name in test spec (Ivan Vecera) [2135634] - selftests: xsk: Make frame_size configurable (Ivan Vecera) [2135634] - selftests: xsk: Move rxqsize into xsk_socket_info (Ivan Vecera) [2135634] - selftests: xsk: Move num_frames and frame_headroom to xsk_umem_info (Ivan Vecera) [2135634] - selftests: xsk: Introduce test specifications (Ivan Vecera) [2135634] - selftests: xsk: Introduce type for thread function (Ivan Vecera) [2135634] - selftests: xsk: Simplify xsk and umem arrays (Ivan Vecera) [2135634] - selftests: xsk: Preface options with opt (Ivan Vecera) [2135634] - selftests: xsk: Make enums lower case (Ivan Vecera) [2135634] - selftests: xsk: Generate packets from specification (Ivan Vecera) [2135634] - selftests: xsk: Generate packet directly in umem (Ivan Vecera) [2135634] - selftests: xsk: Simplify cleanup of ifobjects (Ivan Vecera) [2135634] - selftests: xsk: Decrease sending speed (Ivan Vecera) [2135634] - selftests: xsk: Validate tx stats on tx thread (Ivan Vecera) [2135634] - selftests: xsk: Simplify packet validation in xsk tests (Ivan Vecera) [2135634] - selftests: xsk: Rename worker_* functions that are not thread entry points (Ivan Vecera) [2135634] - selftests: xsk: Disassociate umem size with packets sent (Ivan Vecera) [2135634] - selftests: xsk: Remove end-of-test packet (Ivan Vecera) [2135634] - selftests: xsk: Simplify the retry code (Ivan Vecera) [2135634] - selftests: xsk: Return correct error codes (Ivan Vecera) [2135634] - selftests: xsk: Remove unused variables (Ivan Vecera) [2135634] - selftests: xsk: Remove the num_tx_packets option (Ivan Vecera) [2135634] - selftests: xsk: Remove color mode (Ivan Vecera) [2135634] - xsk: Fix possible crash when multiple sockets are created (Ivan Vecera) [2135634] - i40e: xsk: Move tmp desc array from driver to pool (Ivan Vecera) [2135634] - xsk: Initialise xskb free_list_node (Ivan Vecera) [2135634] - xsk: Fix corrupted packets for XDP_SHARED_UMEM (Ivan Vecera) [2135634] - xsk: Fix clang build error in __xp_alloc (Ivan Vecera) [2135634] - xsk: Do not write NULL in SW ring at allocation failure (Ivan Vecera) [2135634] - xsk: Fix crash on double free in buffer pool (Ivan Vecera) [2135634] - xsk: Optimize for aligned case (Ivan Vecera) [2135634] - xsk: Batched buffer allocation for the pool (Ivan Vecera) [2135634] - xsk: Get rid of unused entry in struct xdp_buff_xsk (Ivan Vecera) [2135634] - redhat/configs: Move config files under common/generic/x86 to generic/x86_64 (Waiman Long) [2139172] - fbmem: Check virtual screen sizes in fb_set_var() (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Prevent that screen size is smaller than font size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - fbcon: Disallow setting font bigger than screen size (Wander Lairson Costa) [2109116] {CVE-2021-33655} - video: of_display_timing.h: include errno.h (Wander Lairson Costa) [2109116] {CVE-2021-33655} - MAINTAINERS: pick up all vfio_ap docs for VFIO AP maintainers (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver doc (Cédric Le Goater) [1660908] - s390/docs: fix warnings for vfio_ap driver lock usage doc (Cédric Le Goater) [1660908] - s390/Docs: new doc describing lock usage by the vfio_ap device driver (Cédric Le Goater) [1660908] - s390/vfio-ap: bypass unnecessary processing of AP resources (Cédric Le Goater) [1660908] - s390/vfio-ap: update docs to include dynamic config support (Cédric Le Goater) [1660908] - s390/vfio-ap: handle config changed and scan complete notification (Cédric Le Goater) [1660908] - s390/vfio-ap: sysfs attribute to display the guest's matrix (Cédric Le Goater) [1660908] - s390/vfio-ap: implement in-use callback for vfio_ap driver (Cédric Le Goater) [1660908] - s390/vfio-ap: reset queues after adapter/domain unassignment (Cédric Le Goater) [1660908] - s390/vfio-ap: hot plug/unplug of AP devices when probed/removed (Cédric Le Goater) [1660908] - s390/vfio-ap: allow hot plug/unplug of AP devices when assigned/unassigned (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on queue probe/remove (Cédric Le Goater) [1660908] - s390/vfio-ap: prepare for dynamic update of guest's APCB on assign/unassign (Cédric Le Goater) [1660908] - s390/vfio-ap: use proper locking order when setting/clearing KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce new mutex to control access to the KVM pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: rename matrix_dev->lock mutex to matrix_dev->mdevs_lock (Cédric Le Goater) [1660908] - s390/vfio-ap: allow assignment of unavailable AP queues to mdev device (Cédric Le Goater) [1660908] - s390/vfio-ap: refresh guest's APCB by filtering AP resources assigned to mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: introduce shadow APCB (Cédric Le Goater) [1660908] - s390/vfio-ap: manage link between queue struct and matrix mdev (Cédric Le Goater) [1660908] - s390/vfio-ap: move probe and remove callbacks to vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/vfio-ap: use new AP bus interface to search for queue devices (Cédric Le Goater) [1660908] - s390/ap: fix error handling in __verify_queue_reservations() (Cédric Le Goater) [1660908] - s390/zcrypt: code cleanup (Cédric Le Goater) [1660908] - s390/zcrypt: fix wrong offset index for APKA master key valid state (Cédric Le Goater) [1660908] - s390/ap: uevent on apmask/aqpmask change (Cédric Le Goater) [1660908] - s390/vfio-ap: fix kernel doc and signature of group notifier functions (Cédric Le Goater) [1660908] - s390/ap: enable sysfs attribute scans to force AP bus rescan (Cédric Le Goater) [1660908] - s390/ap: fix crash on older machines based on QCI info missing (Cédric Le Goater) [1660908] - s390/ap: notify drivers on config changed and scan complete callbacks (Cédric Le Goater) [1660908] - s390/ap: driver callback to indicate resource in use (Cédric Le Goater) [1660908] - MAINTAINERS: update file path for S390 VFIO AP DRIVER (Cédric Le Goater) [1660908] - s390/vfio-ap: add status attribute to AP queue device's sysfs dir (Cédric Le Goater) [1660908] - s390/ap: function rework based on compiler warning (Cédric Le Goater) [1660908] - s390/vfio-ap: s390/crypto: fix all kernel-doc warnings (Cédric Le Goater) [1660908] - s390/ap: new module option ap.useirq (Cédric Le Goater) [1660908] - s390/ap: fix state machine hang after failure to enable irq (Cédric Le Goater) [1660908] - s390/crypto: fix all kernel-doc warnings in vfio_ap_ops.c (Cédric Le Goater) [1660908] - s390/ap: use the common device_driver pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: replace open coded locks for VFIO_GROUP_NOTIFY_SET_KVM notification (Cédric Le Goater) [1660908] - s390/vfio-ap: r/w lock for PQAP interception handler function pointer (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up mdev resources when remove callback invoked (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap_drv's definition (Cédric Le Goater) [1660908] - s390/vfio-ap: fix circular lockdep when setting/clearing crypto masks (Cédric Le Goater) [1660908] - s390/vfio-ap: clean up vfio_ap resources when KVM pointer invalidated (Cédric Le Goater) [1660908] - s390/vfio-ap: No need to disable IRQ after queue reset (Cédric Le Goater) [1660908] - Documentation: s390/vfio-ap: eliminate duplicated word (Cédric Le Goater) [1660908] - docs: s390: Fix wrong label Guest2 instead of Guest3 (Cédric Le Goater) [1660908] - s390: vfio-ap: make local functions and data static (Cédric Le Goater) [1660908] - i40e: Fix set max_tx_rate when it is lower than 1 Mbps (Petr Oros) [2106964] - i40e: Fix VF set max MTU size (Petr Oros) [2106964] - iavf: Fix set max MTU size with port VLAN and jumbo frames (Petr Oros) [2106964] - iavf: Fix bad page state (Petr Oros) [2106964] - i40e: Fix VF hang when reset is triggered on another VF (Ivan Vecera) [2103801] - mpi3mr: a minor change (Tomas Henzl) [2115748] - scsi: mpi3mr: Select CONFIG_SCSI_SAS_ATTRS (Tomas Henzl) [2115748] - scsi: mpi3mr: Remove unnecessary cast (Tomas Henzl) [2115748] - scsi: mpi3mr: Update driver version to 8.2.0.3.0 (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix scheduling while atomic type bug (Tomas Henzl) [2115748] - scsi: mpi3mr: Scan the devices during resume time (Tomas Henzl) [2115748] - scsi: mpi3mr: Free enclosure objects during driver unload (Tomas Henzl) [2115748] - scsi: mpi3mr: Handle 0xF003 Fault Code (Tomas Henzl) [2115748] - scsi: mpi3mr: Graceful handling of surprise removal of PCIe HBA (Tomas Henzl) [2115748] - scsi: mpi3mr: Support new power management framework (Tomas Henzl) [2115748] - scsi: mpi3mr: Update mpi3 header files (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error code in mpi3mr_transport_smp_handler() (Tomas Henzl) [2115748] - scsi: mpi3mr: Fix error codes in mpi3mr_report_manufacture() (Tomas Henzl) [2115748] - scsi: mpi3mr: Block I/Os while refreshing target dev objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Refresh SAS ports during soft reset (Tomas Henzl) [2115748] - scsi: mpi3mr: Support SAS transport class callbacks (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue MPT transport cmds (Tomas Henzl) [2115748] - scsi: mpi3mr: Add SAS SATA end devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Get target object based on rphy (Tomas Henzl) [2115748] - scsi: mpi3mr: Add expander devices to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable STL on HBAs where multipath is disabled (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to manage device's port (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve device objects (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to add phys to STL (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable Enclosure device add event (Tomas Henzl) [2115748] - scsi: mpi3mr: Add helper functions to retrieve config pages (Tomas Henzl) [2115748] - scsi: mpi3mr: Add framework to issue config requests (Tomas Henzl) [2115748] - scsi: mpi3mr: Add config and transport related debug flags (Tomas Henzl) [2115748] - scsi: mpi3mr: Delete a stray tab (Tomas Henzl) [2115748] - scsi: mpi3mr: Unlock on error path (Tomas Henzl) [2115748] - scsi: mpi3mr: Reduce VD queue depth on detecting throttling (Tomas Henzl) [2115748] - scsi: mpi3mr: Resource Based Metering (Tomas Henzl) [2115748] - scsi: mpi3mr: Increase cmd_per_lun to 128 (Tomas Henzl) [2115748] - scsi: mpi3mr: Enable shared host tagset (Tomas Henzl) [2115748] - lpfc version to 14.0.0.18. (Dick Kennedy) [2114050] - scsi: lpfc: Create a sysfs entry called lpfc_xcvr_data for transceiver info (Dick Kennedy) [2114050] - scsi: lpfc: Log when congestion management limits are in effect (Dick Kennedy) [2114050] - scsi: lpfc: Fix hard lockup when reading the rx_monitor from debugfs (Dick Kennedy) [2114050] - scsi: lpfc: Set sli4_param's cmf option to zero when CMF is turned off (Dick Kennedy) [2114050] - scsi: lpfc: Fix various issues reported by tools (Dick Kennedy) [2114050] - scsi: lpfc: Add reporting capability for Link Degrade Signaling (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI attribute registration for unintential padding (Dick Kennedy) [2114050] - scsi: lpfc: Rework lpfc_fdmi_cmd() routine for cleanup and consistency (Dick Kennedy) [2114050] - scsi: lpfc: Update congestion mode logging for Emulex SAN Manager application (Dick Kennedy) [2114050] - scsi: lpfc: Fix multiple NVMe remoteport registration calls for the same NPort ID (Dick Kennedy) [2114050] - scsi: lpfc: Add missing free iocb and nlp kref put for early return VMID cases (Dick Kennedy) [2114050] - scsi: lpfc: Fix mbuf pool resource detected as busy at driver unload (Dick Kennedy) [2114050] - scsi: lpfc: Fix FLOGI ACC with wrong SID in PT2PT topology (Dick Kennedy) [2114050] - scsi: lpfc: Fix prli_fc4_req checks in PRLI handling (Dick Kennedy) [2114050] - scsi: lpfc: Remove unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Remove the unneeded result variable (Dick Kennedy) [2114050] - scsi: lpfc: Copyright updates for 14.2.0.6 patches (Dick Kennedy) [2114050] - scsi: lpfc: Add warning notification period to CMF_SYNC_WQE (Dick Kennedy) [2114050] - scsi: lpfc: Rework MIB Rx Monitor debug info logic (Dick Kennedy) [2114050] - scsi: lpfc: Fix null ndlp ptr dereference in abnormal exit path for GFT_ID (Dick Kennedy) [2114050] - scsi: lpfc: Fix unsolicited FLOGI receive handling during PT2PT discovery (Dick Kennedy) [2114050] - scsi: lpfc: Check the return value of alloc_workqueue() (Dick Kennedy) [2114050] - scsi: lpfc: Rework FDMI initialization after link up (Dick Kennedy) [2114050] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix ioc->base_readl() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Revert "scsi: mpt3sas: Fix writel() use" (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix return value check of dma_get_required_mask() (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix use-after-free warning (Tomas Henzl) [2115763] - scsi: mpt3sas: Update driver version to 43.100.00.00 (Tomas Henzl) [2115763] - scsi: mpt3sas: Increase cmd_per_lun to 128 (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix trace buffer registration failed (Tomas Henzl) [2115763] - scsi: mpt3sas: Don't change DMA mask while reallocating pools (Tomas Henzl) [2115763] - scsi: mpt3sas: Prevent error handler escalation when device removed (Tomas Henzl) [2115763] - scsi: mpt3sas: Disable MPI2_FUNCTION_FW_DOWNLOAD for ATTO devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Add support for ATTO ExpressSAS H12xx GT devices (Tomas Henzl) [2115763] - scsi: mpt3sas: Remove flush_scheduled_work() call (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix whitespace and spelling mistake (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix typo in comment (Tomas Henzl) [2115763] - scsi: mpt3sas: Fix out-of-bounds compiler warning (Tomas Henzl) [2115763] - media: em28xx: initialize refcount before kref_get (Dean Nelson) [2128003] {CVE-2022-3239} - gfs2: Register fs after creating workqueues (Bob Peterson) [2121201] - sysctl: returns -EINVAL when a negative value is passed to proc_doulongvec_minmax (Vratislav Bendel) [2139096] - mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse (Waiman Long) [2137585] {CVE-2022-42703} - mm: rmap: explicitly reset vma->anon_vma in unlink_anon_vmas() (Waiman Long) [2137585] {CVE-2022-42703} - mm/rmap: Fix typos in comments (Waiman Long) [2137585] {CVE-2022-42703} - iavf: Fix set max MTU size with port VLAN and jumbo frames (Stefan Assmann) [2103944] - iavf: Fix bad page state (Stefan Assmann) [2103944] - iavf: Fix cached head and tail value for iavf_get_tx_pending (Stefan Assmann) [2103944] - iavf: Fix change VF's mac address (Stefan Assmann) [2103944] - iavf: Fix race between iavf_close and iavf_reset_task (Stefan Assmann) [2103944] - net: ethernet: move from strlcpy with unused retval to strscpy (Stefan Assmann) [2103944] - iavf: Fix 'tc qdisc show' listing too many queues (Stefan Assmann) [2103944] - iavf: Fix max_rate limiting (Stefan Assmann) [2103944] - iavf: Check for duplicate TC flower filter before parsing (Stefan Assmann) [2103944] - iavf: Fix handling of dummy receive descriptors (Stefan Assmann) [2103944] - iavf: Disallow changing rx/tx-frames and rx/tx-frames-irq (Stefan Assmann) [2103944] - intel/iavf:fix repeated words in comments (Stefan Assmann) [2103944] - intel: remove unused macros (Stefan Assmann) [2103944] - iavf: Add waiting for response from PF in set mac (Stefan Assmann) [2103944] - iavf: Use irq_update_affinity_hint() (Stefan Assmann) [2103944] - net: Fix return value of qdisc ingress handling on success (Ivan Vecera) [2131361]- PCI: hv: Do not set PCI_COMMAND_MEMORY to reduce VM boot time (Emanuele Giuseppe Esposito) [2082836] - megaraid_sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mpt3sas: add #ifdef CONFIG_RHEL_DIFFERENCES (Tomas Henzl) [2119096] - mptcp: fix unreleased socket in accept queue (Paolo Abeni) [2135884] - mptcp: factor out __mptcp_close() without socket lock (Paolo Abeni) [2135884] - mptcp: do not queue data on closed subflows (Paolo Abeni) [2135884] - mptcp: move subflow cleanup in mptcp_destroy_common() (Paolo Abeni) [2135884] - mptcp: fix msk traversal in mptcp_nl_cmd_set_flags() (Paolo Abeni) [2135884] - xfs: fix perag reference leak on iteration race with growfs (Brian Foster) [2081105] - xfs: terminate perag iteration reliably on agcount (Brian Foster) [2081105] - xfs: rename the next_agno perag iteration variable (Brian Foster) [2081105] - xfs: fold perag loop iteration logic into helper function (Brian Foster) [2081105] - xfs: prevent spoofing of rtbitmap blocks when recovering buffers (Brian Foster) [2081105] - xfs: Enforce attr3 buffer recovery order (Brian Foster) [2081105] - xfs: avoid unnecessary waits in xfs_log_force_lsn() (Brian Foster) [2081105] - xfs: factor out forced iclog flushes (Brian Foster) [2081105] - xfs: detect misaligned rtinherit directory extent size hints (Brian Foster) [2081105] - xfs: fix an integer overflow error in xfs_growfs_rt (Brian Foster) [2081105] - xfs: improve FSGROWFSRT precondition checking (Brian Foster) [2081105] - xfs: reset child dir '..' entry when unlinking child (Brian Foster) [2081105] - xfs: check for sparse inode clusters that cross new EOAG when shrinking (Brian Foster) [2081105] - xfs: Fix multiple fall-through warnings for Clang (Brian Foster) [2081105] - xfs: remove callback dequeue loop from xlog_state_do_iclog_callbacks (Brian Foster) [2081105] - xfs: don't nest icloglock inside ic_callback_lock (Brian Foster) [2081105] - xfs: Initialize error in xfs_attr_remove_iter (Brian Foster) [2081105] - xfs: remove dead stale buf unpin handling code (Brian Foster) [2081105] - xfs: hold buffer across unpin and potential shutdown processing (Brian Foster) [2081105] - xfs: force the log offline when log intent item recovery fails (Brian Foster) [2081105] - xfs: shorten the shutdown messages to a single line (Brian Foster) [2081105] - xfs: print name of function causing fs shutdown instead of hex pointer (Brian Foster) [2081105] - xfs: fix type mismatches in the inode reclaim functions (Brian Foster) [2081105] - xfs: separate primary inode selection criteria in xfs_iget_cache_hit (Brian Foster) [2081105] - xfs: refactor the inode recycling code (Brian Foster) [2081105] - xfs: add iclog state trace events (Brian Foster) [2081105] - xfs: xfs_log_force_lsn isn't passed a LSN (Brian Foster) [2081105] - xfs: remove need_start_rec parameter from xlog_write() (Brian Foster) [2081105] - xfs: remove xfs_blkdev_issue_flush (Brian Foster) [2081105] - xfs: Fix 64-bit division on 32-bit in xlog_state_switch_iclogs() (Brian Foster) [2081105] - xfs: log stripe roundoff is a property of the log (Brian Foster) [2081105] - xfs: remove redundant initialization of variable error (Brian Foster) [2081105] - xfs: perag may be null in xfs_imap() (Brian Foster) [2081105] - xfs: Make attr name schemes consistent (Brian Foster) [2081105] - xfs: Fix default ASSERT in xfs_attr_set_iter (Brian Foster) [2081105] - xfs: rename struct xfs_eofblocks to xfs_icwalk (Brian Foster) [2081105] - xfs: change the prefix of XFS_EOF_FLAGS_* to XFS_ICWALK_FLAG_ (Brian Foster) [2081105] - xfs: selectively keep sick inodes in memory (Brian Foster) [2081105] - xfs: drop IDONTCACHE on inodes when we mark them sick (Brian Foster) [2081105] - xfs: drop the AGI being passed to xfs_check_agi_freecount (Brian Foster) [2081105] - xfs: cleanup error handling in xfs_buf_get_map (Brian Foster) [2081105] - xfs: remove ->b_offset handling for page backed buffers (Brian Foster) [2081105] - xfs: refactor per-AG inode tagging functions (Brian Foster) [2081105] - xfs: merge xfs_reclaim_inodes_ag into xfs_inode_walk_ag (Brian Foster) [2081105] - xfs: pass struct xfs_eofblocks to the inode scan callback (Brian Foster) [2081105] - xfs: make the icwalk processing functions clean up the grab state (Brian Foster) [2081105] - xfs: clean up inode state flag tests in xfs_blockgc_igrab (Brian Foster) [2081105] - xfs: remove indirect calls from xfs_inode_walk{,_ag} (Brian Foster) [2081105] - xfs: remove iter_flags parameter from xfs_inode_walk_* (Brian Foster) [2081105] - xfs: move xfs_inew_wait call into xfs_dqrele_inode (Brian Foster) [2081105] - xfs: separate the dqrele_all inode grab logic from xfs_inode_walk_ag_grab (Brian Foster) [2081105] - xfs: pass the goal of the incore inode walk to xfs_inode_walk() (Brian Foster) [2081105] - xfs: rename xfs_inode_walk functions to xfs_icwalk (Brian Foster) [2081105] - xfs: move the inode walk functions further down (Brian Foster) [2081105] - xfs: detach inode dquots at the end of inactivation (Brian Foster) [2081105] - xfs: move the quotaoff dqrele inode walk into xfs_icache.c (Brian Foster) [2081105] - xfs: don't take a spinlock unconditionally in the DIO fastpath (Brian Foster) [2081105] - xfs: mark xfs_bmap_set_attrforkoff static (Brian Foster) [2081105] - xfs: Remove redundant assignment to busy (Brian Foster) [2081105] - xfs: sort variable alphabetically to avoid repeated declaration (Brian Foster) [2081105] - xfs: remove xfs_perag_t (Brian Foster) [2081105] - xfs: use perag through unlink processing (Brian Foster) [2081105] - xfs: clean up and simplify xfs_dialloc() (Brian Foster) [2081105] - xfs: inode allocation can use a single perag instance (Brian Foster) [2081105] - xfs: get rid of xfs_dir_ialloc() (Brian Foster) [2081105] - xfs: collapse AG selection for inode allocation (Brian Foster) [2081105] - xfs: simplify xfs_dialloc_select_ag() return values (Brian Foster) [2081105] - xfs: remove agno from btree cursor (Brian Foster) [2081105] - xfs: use perag for ialloc btree cursors (Brian Foster) [2081105] - xfs: convert allocbt cursors to use perags (Brian Foster) [2081105] - xfs: convert refcount btree cursor to use perags (Brian Foster) [2081105] - xfs: convert rmap btree cursor to using a perag (Brian Foster) [2081105] - xfs: add a perag to the btree cursor (Brian Foster) [2081105] - xfs: pass perags around in fsmap data dev functions (Brian Foster) [2081105] - xfs: push perags through the ag reservation callouts (Brian Foster) [2081105] - xfs: pass perags through to the busy extent code (Brian Foster) [2081105] - xfs: convert secondary superblock walk to use perags (Brian Foster) [2081105] - xfs: convert xfs_iwalk to use perag references (Brian Foster) [2081105] - xfs: convert raw ag walks to use for_each_perag (Brian Foster) [2081105] - xfs: make for_each_perag... a first class citizen (Brian Foster) [2081105] - xfs: move perag structure and setup to libxfs/xfs_ag.[ch] (Brian Foster) [2081105] - xfs: prepare for moving perag definitions and support to libxfs (Brian Foster) [2081105] - xfs: move xfs_perag_get/put to xfs_ag.[ch] (Brian Foster) [2081105] - xfs: remove unnecessary shifts (Brian Foster) [2081105] - xfs: clean up open-coded fs block unit conversions (Brian Foster) [2081105] - xfs: Clean up xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Remove xfs_attr_rmtval_set (Brian Foster) [2081105] - xfs: Add delay ready attr set routines (Brian Foster) [2081105] - xfs: Add delay ready attr remove routines (Brian Foster) [2081105] - xfs: Hoist node transaction handling (Brian Foster) [2081105] - xfs: Hoist xfs_attr_leaf_addname (Brian Foster) [2081105] - xfs: Hoist xfs_attr_node_addname (Brian Foster) [2081105] - xfs: Add helper xfs_attr_node_addname_find_attr (Brian Foster) [2081105] - xfs: Separate xfs_attr_node_addname and xfs_attr_node_addname_clear_incomplete (Brian Foster) [2081105] - xfs: Refactor xfs_attr_set_shortform (Brian Foster) [2081105] - xfs: Add xfs_attr_node_remove_name (Brian Foster) [2081105] - xfs: Reverse apply 72b97ea40d (Brian Foster) [2081105] - xfs: use xfs_buf_alloc_pages for uncached buffers (Brian Foster) [2081105] - xfs: split up xfs_buf_allocate_memory (Brian Foster) [2081105] - xfs: Fix fall-through warnings for Clang (Brian Foster) [2081105] - scsi: qla2xxx: Use transport-defined speed mask for supported_speeds (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix serialization of DCBX TLV data request (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused declarations for qla2xxx (Nilesh Javali) [2109830] - scsi: qla2xxx: Drop DID_TARGET_FAILURE use (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.900-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Add NVMe parameters support in Auxiliary Image Status (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debugfs create/delete helpers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Revert "scsi: qla2xxx: Fix response queue handler reading stale packets" (Nilesh Javali) [2109830] - scsi: qla2xxx: Log message "skipping scsi_scan_host()" as informational (Nilesh Javali) [2109830] - scsi: qla2xxx: Avoid flush_scheduled_work() usage (Nilesh Javali) [2109830] - scsi: qla2xxx: Always wait for qlt_sess_work_fn() from qlt_stop_phase1() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused del_sess_list field (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused qlt_tmr_work() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.800-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Update manufacturer details (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix discovery issues in FC-AL topology (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix dropped IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix response queue handler reading stale packets (Nilesh Javali) [2109830] - scsi: qla2xxx: Zero undefined mailbox IN registers (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix incorrect display of max frame size (Nilesh Javali) [2109830] - scsi: qla2xxx: Check correct variable in qla24xx_async_gffid() (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.700-k (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets on long port disable with I/Os (Nilesh Javali) [2109830] - scsi: qla2xxx: Add debug prints in the device remove path (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing target when it reappears during delete (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix losing FCP-2 targets during port perturbation tests (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix crash due to stale SRB access around I/O timeouts (Nilesh Javali) [2109830] - scsi: qla2xxx: Turn off multi-queue for 8G adapters (Nilesh Javali) [2109830] - scsi: qla2xxx: Wind down adapter after PCIe error (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.600-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix slow session teardown (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce N2N thrashing at app_start time (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no logout on delete for N2N (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix session thrash (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Tear down session if keys have been removed (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix no login after app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce disruption due to multiple app start (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Send LOGO for unexpected IKE message (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix I/O timeout due to over-subscription (Nilesh Javali) [2109830] - scsi: qla2xxx: Update version to 10.02.07.500-k (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n login retry for secure device (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix n2n discovery issue with secure target (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove old doorbell interface (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add retry for ELS passthrough (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Synchronize NPIV deletion with authentication application (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Fix potential stuck session in sa update (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Add bsg interface to read doorbell events (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Wait for app to ack on sess down (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: bsg refactor (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Reduce Initiator-Initiator thrashing (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unused 'ql_dm_tgt_ex_pct' parameter (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove setting of 'req' and 'rsp' parameters (Nilesh Javali) [2109830] - scsi: qla2xxx: Fix missed DMA unmap for aborted commands (Nilesh Javali) [2109830] - scsi: qla2xxx: edif: Remove unneeded variable (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove unneeded flush_workqueue() (Nilesh Javali) [2109830] - scsi: qla2xxx: Remove free_sg command flag (Nilesh Javali) [2109830] - scsi: megaraid_sas: Clean up some inconsistent indenting (Tomas Henzl) [2120070] - scsi: megaraid_sas: Move megasas_dbg_lvl init to megasas_init() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove unnecessary memset() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Simplify megasas_update_device_list (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct an error message (Tomas Henzl) [2120070] - scsi: megaraid_sas: Correct value passed to scsi_device_lookup() (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Use struct_size() in code related to struct MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_PD_CFG_SEQ_NUM_SYNC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_DRV_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP_DYNAMIC (Tomas Henzl) [2120070] - scsi: megaraid_sas: Replace one-element array with flexible-array member in MR_FW_RAID_MAP (Tomas Henzl) [2120070] - scsi: megaraid: Remove redundant assignment to variable mfiStatus (Tomas Henzl) [2120070] - scsi: megaraid_sas: Remove redundant variable cmd_type (Tomas Henzl) [2120070] - platform/x86/intel/vsec: Fix wrong type for local status variables (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add PCI error recovery support to Intel PMT (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Add support for Raptor Lake (Prarit Bhargava) [2076744] - platform/x86/intel/pmt: telemetry: Fix fixed region handling (Prarit Bhargava) [2076744] - platform/x86/intel/vsec: Rework early hardware code (Prarit Bhargava) [2076744] - platform/x86/intel: Fix pmt_crashlog array reference (Prarit Bhargava) [2076744] - powerpc/kexec_file: Use current CPU info while setting up FDT (Mamatha Inamdar) [2126520] - mm/kmemleak: prevent soft lockup in kmemleak_scan()'s object iteration loops (Waiman Long) [2095075] - mm/kmemleak: prevent soft lockup in first object iteration loop of kmemleak_scan() (Waiman Long) [2095075] - mm/kmemleak: skip unlikely objects in kmemleak_scan() without taking lock (Waiman Long) [2095075] - mm/kmemleak: use _irq lock/unlock variants in kmemleak_scan/_clear() (Waiman Long) [2095075] - mm/kmemleak: avoid scanning potential huge holes (Waiman Long) [2095075] - KVM: s390: pci: fix GAIT physical vs virtual pointers usage (Thomas Huth) [1664379] - KVM: s390: pci: fix plain integer as NULL pointer warnings (Thomas Huth) [1664379] - KVM: s390/pci: fix include duplicates (Thomas Huth) [1664379] - redhat: Use group notifier to get the KVM pointer in the vfio_pci_zdev code (Thomas Huth) [1664379] - KVM: s390: pci: register pci hooks without interpretation (Thomas Huth) [1664379] - KVM: s390: pci: Hook to access KVM lowlevel from VFIO (Thomas Huth) [1664379] - Documentation: kvm: extend KVM_S390_ZPCI_OP subheading underline (Thomas Huth) [1664379] - KVM: s390: add KVM_S390_ZPCI_OP to manage guest zPCI devices (Thomas Huth) [1664379] - vfio-pci/zdev: different maxstbl for interpreted devices (Thomas Huth) [1664379] - vfio-pci/zdev: add function handle to clp base capability (Thomas Huth) [1664379] - vfio-pci/zdev: add open/close device hooks (Thomas Huth) [1664379] - KVM: s390: pci: add routines to start/stop interpretive execution (Thomas Huth) [1664379] - KVM: s390: pci: provide routines for enabling/disabling interrupt forwarding (Thomas Huth) [1664379] - KVM: s390: mechanism to enable guest zPCI Interpretation (Thomas Huth) [1664379] - KVM: s390: pci: enable host forwarding of Adapter Event Notifications (Thomas Huth) [1664379] - KVM: s390: pci: do initial setup for AEN interpretation (Thomas Huth) [1664379] - KVM: s390: pci: add basic kvm_zdev structure (Thomas Huth) [1664379] - redhat: Enable the new CONFIG_VFIO_PCI_ZDEV_KVM switch (Thomas Huth) [1664379] - vfio/pci: introduce CONFIG_VFIO_PCI_ZDEV_KVM (Thomas Huth) [1664379] - vfio/pci: remove CONFIG_VFIO_PCI_ZDEV from Kconfig (Thomas Huth) [1664379] - vfio-pci/zdev: fix possible segmentation fault issue (Thomas Huth) [1664379] - s390/pci: stash dtsm and maxstbl (Thomas Huth) [1664379] - s390/pci: stash associated GISA designation (Thomas Huth) [1664379] - s390/pci: externalize the SIC operation controls and routine (Thomas Huth) [1664379] - s390/airq: allow for airq structure that uses an input vector (Thomas Huth) [1664379] - s390/airq: pass more TPI info to airq handlers (Thomas Huth) [1664379] - s390/cio: add tpi.h header file (Thomas Huth) [1664379] - s390/ap: fix kernel doc comments (Thomas Huth) [1664379] - s390/sclp: detect the AISI facility (Thomas Huth) [1664379] - s390/sclp: detect the AENI facility (Thomas Huth) [1664379] - s390/sclp: detect the AISII facility (Thomas Huth) [1664379] - s390/sclp: detect the zPCI load/store interpretation facility (Thomas Huth) [1664379] - s390/sclp: add detection of IPL-complete-control facility (Thomas Huth) [1664379] - s390/pci: add error record for CC 2 retries (Thomas Huth) [2134399] - s390/pci: add PCI access type and length to error records (Thomas Huth) [2134399] - s390/pci: don't log availability events as errors (Thomas Huth) [2134399] - s390/pci: make better use of zpci_dbg() levels (Thomas Huth) [2134399] - s390/pci: rename get_zdev_by_bus() to zdev_from_bus() (Thomas Huth) [2134399] - redhat: Restore clp_rescan_pci_devices_simple() function (Thomas Huth) [2134399] - s390/pci: improve zpci_dev reference counting (Thomas Huth) [2134399] - s390/pci: make zpci_set_irq()/zpci_clear_irq() static (Thomas Huth) [2134399] - s390/pci: simplify __pciwb_mio() inline asm (Thomas Huth) [2134399] - s390/pci: use physical addresses in DMA tables (Thomas Huth) [2134399] - s390/pci: use phys_to_virt() for AIBVs/DIBVs (Thomas Huth) [2134399] - s390/pci: implement minimal PCI error recovery (Thomas Huth) [2134399] - PCI: Export pci_dev_lock() (Thomas Huth) [2134399] - PCI: Export pci_dev_trylock() and pci_dev_unlock() (Thomas Huth) [2134399] - s390/pci: implement reset_slot for hotplug slot (Thomas Huth) [2134399] - s390/pci: refresh function handle in iomap (Thomas Huth) [2134399] - s390/pci: add simpler s390dbf traces for events (Thomas Huth) [2134399] - s390/pci: tolerate inconsistent handle in recover (Thomas Huth) [2134399] - s390/pci_mmio: fully validate the VMA before calling follow_pte() (Thomas Huth) [2134399] - s390/pci: read clp_list_pci_req only once (Thomas Huth) [2134399] - s390/pci: fix clp_get_state() handling of -ENODEV (Thomas Huth) [2134399] - s390/pci: improve DMA translation init and exit (Thomas Huth) [2134399] - s390/pci: simplify CLP List PCI handling (Thomas Huth) [2134399] - s390/pci: handle FH state mismatch only on disable (Thomas Huth) [2134399] - s390/pci: fix misleading rc in clp_set_pci_fn() (Thomas Huth) [2134399] - s390/pci: reset zdev->zbus on registration failure (Thomas Huth) [2134399] - s390/pci: cleanup resources only if necessary (Thomas Huth) [2134399] - s390/pci: add zpci_set_irq()/zpci_clear_irq() (Thomas Huth) [2134399] - s390/pci: use register pair instead of register asm (Thomas Huth) [2134399] - s390: introduce register pair union (Thomas Huth) [2134399] - s390/pci: handle stale deconfiguration events (Thomas Huth) [2134399] - s390/pci: rename zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: narrow scope of zpci_configure_device() (Thomas Huth) [2134399] - s390/pci: separate zbus registration from scanning (Thomas Huth) [2134399] - s390/pci: use mutex not spinlock for zbus list (Thomas Huth) [2134399] - s390/pci: separate zbus creation from scanning (Thomas Huth) [2134399] - s390/pci: do more bus setup in zpci_bus_scan() (Thomas Huth) [2134399] - s390/pci: introduce zpci_bus_scan_device() (Thomas Huth) [2134399] - s390/pci: fix DMA cleanup on hard deconfigure (Thomas Huth) [2134399] - s390/pci: move zpci_remove_device() to bus code (Thomas Huth) [2134399] - s390/pci: unify de-/configure for slots and events (Thomas Huth) [2134399] - s390/pci: add zpci_event_hard_deconfigured() (Thomas Huth) [2134399] - s390/pci: deconfigure device on release (Thomas Huth) [2134399] - s390/pci: refactor zpci function states (Thomas Huth) [2134399] - s390/pci: inform when missing required facilities (Thomas Huth) [2134399] - s390/pci: remove races against pte updates (Thomas Huth) [2134399] - s390: remove orphaned function declarations (Thomas Huth) [2134399] - s390/pci: add missing pci_iov.h include (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices_simple() (Thomas Huth) [2134399] - s390/pci: remove clp_rescan_pci_devices() (Thomas Huth) [2134399] - s390/pci: consolidate SR-IOV specific code (Thomas Huth) [2134399] - s390/pci: Implement ioremap_wc/prot() with MIO (Thomas Huth) [2134399] - s390/mm: properly clear _PAGE_NOEXEC bit when it is not supported (Thomas Huth) [2134399] - s390/pci: clarify comment in s390_mmio_read/write (Thomas Huth) [2134399] - s390/pci: remove unused functions (Thomas Huth) [2134399] - s390/pci: Log new handle in clp_disable_fh() (Thomas Huth) [2134399] - s390/pci: ioremap() align with generic code (Thomas Huth) [2134399] - s390: enforce CONFIG_SMP (Thomas Huth) [2134399] - s390/pci: mark function(s) __always_inline (Thomas Huth) [2134399] - s390/pci: avoid using strncmp with hardcoded length (Thomas Huth) [2134399] - s390/pci: PCI_IOV_RESOURCES loop refactoring in zpci_map_resources (Thomas Huth) [2134399] - s390: pci: no need to check return value of debugfs_create functions (Thomas Huth) [2134399] - s390/pci: fix sleeping in atomic during hotplug (Thomas Huth) [2134399] - s390/pci: remove fmb address from debug output (Thomas Huth) [2134399] - s390/pci: add fmt3 fmb (Thomas Huth) [2134399] - tools headers kvm s390: Sync headers with the kernel sources (Thomas Huth) [2111063] - KVM: s390: resetting the Topology-Change-Report (Thomas Huth) [2111063] - KVM: s390: guest support for topology function (Thomas Huth) [2111063] - KVM: s390: Cleanup ipte lock access and SIIF facility checks (Thomas Huth) [2111063] - KVM: s390: drop unexpected word 'and' in the comments (Thomas Huth) [2111063] - Documentation: KVM: update s390-diag.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update msr.rst reference (Thomas Huth) [2043872] - Documentation: KVM: update amd-memory-encryption.rst references (Thomas Huth) [2043872] - Documentation: KVM: update s390-pv.rst reference (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Explain rc/rrc delivery (Thomas Huth) [2043872] - Documentation/virt/kvm/api.rst: Add protvirt dump/info api descriptions (Thomas Huth) [2043872] - Documentation: KVM: add API issues section (Thomas Huth) [2043872] - Documentation: virt: Protected virtual machine dumps (Thomas Huth) [2043872] - Documentation: KVM: add separate directories for architecture-specific documentation (Thomas Huth) [2043872] - KVM: s390: Add KVM_CAP_S390_PROTECTED_DUMP (Thomas Huth) [2043872] - KVM: s390: Add CPU dump functionality (Thomas Huth) [2043872] - KVM: s390: Add configuration dump functionality (Thomas Huth) [2043872] - KVM: s390: pv: Add query dump information (Thomas Huth) [2043872] - KVM: s390: pv: Add dump support definitions (Thomas Huth) [2043872] - KVM: s390: pv: Add query interface (Thomas Huth) [2043872] - s390/uv: Add dump fields to query (Thomas Huth) [2043872] - s390/uv: Add SE hdr query information (Thomas Huth) [2043872] - kvm: Move KVM_GET_XSAVE2 IOCTL definition at the end of kvm.h (Thomas Huth) [2043872] - docs: kvm: fix WARNINGs from api.rst (Thomas Huth) [2043872] - s390/mm: use non-quiescing sske for KVM switch to keyed guest (Thomas Huth) [2043872] - s390/gmap: voluntarily schedule during key setting (Thomas Huth) [2043872] - KVM: s390: Don't indicate suppression on dirtying, failing memop (Thomas Huth) [2043872] - s390: uv: Add offset comments to UV query struct and fix naming (Thomas Huth) [2043872] - KVM: s390: Use Makefile.kvm for common files (Thomas Huth) [2043872] - KVM: s390: Skip gfn/size sanity checks on memslot DELETE or FLAGS_ONLY (Thomas Huth) [2043872] - fs: dlm: fix invalid derefence of sb_lvbptr (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in unlock validation (Alexander Aring) [2121790] - fs: dlm: handle -EBUSY first in lock arg validation (Alexander Aring) [2121790] - fs: dlm: fix race between test_bit() and queue_work() (Alexander Aring) [2121790] - scsi: core: Fix a use-after-free (Ming Lei) [1961010] - net/mlx5e: Fix wrong use of skb_tcp_all_headers() with encapsulation (Petr Oros) [2135685] - net: add skb_[inner_]tcp_all_headers helpers (Petr Oros) [2135685] - net: marvell: clean up trigraph warning on ??! string (Petr Oros) [2135685] - powerpc/pseries: Use lparcfg to reconfig VAS windows for DLPAR CPU (Steve Best) [2133103] - flow_dissector: Do not count vlan tags inside tunnel payload (Ivan Vecera) [2136875] - flow_offload: Introduce flow_match_pppoe (Ivan Vecera) [2136875] - net/sched: flower: Add PPPoE filter (Ivan Vecera) [2136875] - flow_dissector: Add PPPoE dissectors (Ivan Vecera) [2136875] - net/sched: flower: Consider the number of tags for vlan filters (Ivan Vecera) [2136875] - net/sched: flower: Add number of vlan tags filter (Ivan Vecera) [2136875] - flow_dissector: Add number of vlan tags dissector (Ivan Vecera) [2136875] - net/sched: flower: Reduce identation after is_key_vlan refactoring (Ivan Vecera) [2136875] - net/sched: flower: Helper function for vlan ethtype checks (Ivan Vecera) [2136875] - dissector: do not set invalid PPP protocol (Ivan Vecera) [2136875] - dm bufio: use the acquire memory barrier when testing for B_READING (Benjamin Marzinski) [2139161] - provide arch_test_bit_acquire for architectures that define test_bit (Benjamin Marzinski) [2139161] - wait_on_bit: add an acquire memory barrier (Benjamin Marzinski) [2139161] - add barriers to buffer_uptodate and set_buffer_uptodate (Benjamin Marzinski) [2139161] - dm verity: Add documentation for try_verify_in_tasklet option (Benjamin Marzinski) [2139161] - dm cache: delete the redundant word 'each' in comment (Benjamin Marzinski) [2139161] - dm raid: fix typo in analyse_superblocks code comment (Benjamin Marzinski) [2139161] - dm verity: enable WQ_HIGHPRI on verify_wq (Benjamin Marzinski) [2139161] - dm raid: delete the redundant word 'that' in comment (Benjamin Marzinski) [2139161] - dm: change from DMWARN to DMERR or DMCRIT for fatal errors (Benjamin Marzinski) [2139161] - dm bufio: fix some cases where the code sleeps with spinlock held (Benjamin Marzinski) [2139161] - dm writecache: fix smatch warning about invalid return from writecache_map (Benjamin Marzinski) [2139161] - dm verity: fix verity_parse_opt_args parsing (Benjamin Marzinski) [2139161] - dm verity: fix DM_VERITY_OPTS_MAX value yet again (Benjamin Marzinski) [2139161] - dm bufio: simplify DM_BUFIO_CLIENT_NO_SLEEP locking (Benjamin Marzinski) [2139161] - dm verity: have verify_wq use WQ_HIGHPRI if "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm verity: remove WQ_CPU_INTENSIVE flag since using WQ_UNBOUND (Benjamin Marzinski) [2139161] - dm verity: only copy bvec_iter in verity_verify_io if in_tasklet (Benjamin Marzinski) [2139161] - dm verity: optimize verity_verify_io if FEC not configured (Benjamin Marzinski) [2139161] - dm verity: conditionally enable branching for "try_verify_in_tasklet" (Benjamin Marzinski) [2139161] - dm bufio: conditionally enable branching for DM_BUFIO_CLIENT_NO_SLEEP (Benjamin Marzinski) [2139161] - dm verity: allow optional args to alter primary args handling (Benjamin Marzinski) [2139161] - dm verity: Add optional "try_verify_in_tasklet" feature (Benjamin Marzinski) [2139161] - dm bufio: Add DM_BUFIO_CLIENT_NO_SLEEP flag (Benjamin Marzinski) [2139161] - dm bufio: Add flags argument to dm_bufio_client_create (Benjamin Marzinski) [2139161] - dm: Start pr_preempt from the same starting path (Benjamin Marzinski) [2139161] - dm: Fix PR release handling for non All Registrants (Benjamin Marzinski) [2139161] - dm: Start pr_reserve from the same starting path (Benjamin Marzinski) [2139161] - dm: Allow dm_call_pr to be used for path searches (Benjamin Marzinski) [2139161] - Documentation: dm writecache: Render status list as list (Benjamin Marzinski) [2139161] - Documentation: dm writecache: add blank line before optional parameters (Benjamin Marzinski) [2139161] - dm snapshot: fix typo in snapshot_map() comment (Benjamin Marzinski) [2139161] - dm raid: remove redundant "the" in parse_raid_params() comment (Benjamin Marzinski) [2139161] - dm cache: fix typo in 2 comment blocks (Benjamin Marzinski) [2139161] - dm verity: fix checkpatch close brace error (Benjamin Marzinski) [2139161] - dm table: rename dm_target variable in dm_table_add_target() (Benjamin Marzinski) [2139161] - dm table: audit all dm_table_get_target() callers (Benjamin Marzinski) [2139161] - dm table: remove dm_table_get_num_targets() wrapper (Benjamin Marzinski) [2139161] - writeback: Avoid skipping inode writeback (Waiman Long) [2138886] - writeback: fix obtain a reference to a freeing memcg css (Waiman Long) [2138886] - mm/memcg: disable threshold event handlers on PREEMPT_RT (Waiman Long) [2138886] - memcg: increase MEMCG_CHARGE_BATCH to 64 (Waiman Long) [2138886] - mm: page_counter: rearrange struct page_counter fields (Waiman Long) [2138886] - mm: page_counter: remove unneeded atomic ops for low/min (Waiman Long) [2138886] - memcg: reduce size of memcg vmstats structures (Waiman Long) [2138886] - memcg: rearrange code (Waiman Long) [2138886] - memcg: extract memcg_vmstats from struct mem_cgroup (Waiman Long) [2138886] - mm: memcontrol: fix potential oom_lock recursion deadlock (Waiman Long) [2138886] - mm: memcontrol: add {pgscan,pgsteal}_{kswapd,direct} items in memory.stat of cgroup v2 (Waiman Long) [2138886] - mm/memcg: protect per-CPU counter by disabling preemption on PREEMPT_RT where needed. (Waiman Long) [2138886] - writeback: memcg: simplify cgroup_writeback_by_id (Waiman Long) [2138886] - writeback, cgroup: do not reparent dax inodes (Waiman Long) [2138886] - writeback, cgroup: remove wb from offline list before releasing refcnt (Waiman Long) [2138886] - writeback, cgroup: release dying cgwbs by switching attached inodes (Waiman Long) [2138886] - writeback, cgroup: support switching multiple inodes at once (Waiman Long) [2138886] - writeback, cgroup: split out the functional part of inode_switch_wbs_work_fn() (Waiman Long) [2138886] - writeback, cgroup: keep list of inodes attached to bdi_writeback (Waiman Long) [2138886] - writeback, cgroup: switch to rcu_work API in inode_switch_wbs() (Waiman Long) [2138886] - writeback, cgroup: increment isw_nr_in_flight before grabbing an inode (Waiman Long) [2138886] - writeback, cgroup: add smp_mb() to cgroup_writeback_umount() (Waiman Long) [2138886] - writeback, cgroup: do not switch inodes with I_WILL_FREE flag (Waiman Long) [2138886] - docs/admin-guide: cgroup-v2: typos and spaces (Waiman Long) [2138886] - fs: improve comments for writeback_single_inode() (Waiman Long) [2138886] - writeback: remove struct bdi_writeback_congested (Waiman Long) [2138886] - writeback: remove {set,clear}_wb_congested (Waiman Long) [2138886] - fs/writeback.c: use rcu_barrier() to wait for inflight wb switches going into workqueue when umount (Waiman Long) [2138886] - blkcg: remove unused __blkg_release_rcu() (Waiman Long) [2138886] - writeback: Add a bdi_writeback_rh extension to struct bdi_writeback (Waiman Long) [2138886] - RDMA/irdma: Report the correct link speed (Kamal Heib) [2125102] - blk-mq: avoid double ->queue_rq() because of early timeout (Ming Lei) [2132438] - blk-mq: add one API for waiting until quiesce is done (Ming Lei) [2132438] - blk-mq: support concurrent queue quiesce/unquiesce (Ming Lei) [2132438] - bridge: Do not send empty IFLA_AF_SPEC attribute (Ivan Vecera) [2139133] - net: bridge: Clear offload_fwd_mark when passing frame up bridge interface. (Ivan Vecera) [2139133] - net: bridge: vlan: fix memory leak in __allowed_ingress (Ivan Vecera) [2139133]- ice: Add additional CSR registers to ETHTOOL_GREGS (Petr Oros) [2131024] - udp: Update reuse->has_conns under reuseport_lock. (Xin Long) [2135937] - udp: Remove redundant __udp_sysctl_init() call from udp_init(). (Xin Long) [2135937] - udp: Fix a data-race around sysctl_udp_l3mdev_accept. (Xin Long) [2135937] - Documentation: fix udp_wmem_min in ip-sysctl.rst (Xin Long) [2135937] - be2net: Fix buffer overflow in be_get_module_eeprom (Josef Oskera) [2126917] - iommu/vt-d: Clean up si_domain in the init_dmars() error path (Jerry Snitselaar) [2133331]- md: Fix spelling mistake in comments of r5l_log (Nigel Croxon) [2112935] - md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d (Nigel Croxon) [2112935] - md/raid10: convert resync_lock to use seqlock (Nigel Croxon) [2112935] - md/raid10: fix improper BUG_ON() in raise_barrier() (Nigel Croxon) [2112935] - md/raid10: prevent unnecessary calls to wake_up() in fast path (Nigel Croxon) [2112935] - md/raid10: don't modify 'nr_waitng' in wait_barrier() for the case nowait (Nigel Croxon) [2112935] - md/raid10: factor out code from wait_barrier() to stop_waiting_barrier() (Nigel Croxon) [2112935] - md: Remove extra mddev_get() in md_seq_start() (Nigel Croxon) [2112935] - md/raid5: Remove unnecessary bio_put() in raid5_read_one_chunk() (Nigel Croxon) [2112935 2111563] - md/raid5: Ensure stripe_fill happens on non-read IO with journal (Nigel Croxon) [2112935] - md/raid5: Don't read ->active_stripes if it's not needed (Nigel Croxon) [2112935] - md/raid5: Cleanup prototype of raid5_get_active_stripe() (Nigel Croxon) [2112935] - md/raid5: Drop extern on function declarations in raid5.h (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md: Replace snprintf with scnprintf (Nigel Croxon) [2112935] - md/raid10: fix compile warning (Nigel Croxon) [2112935] - md/raid5: Fix spelling mistakes in comments (Nigel Croxon) [2112935] - md: call __md_stop_writes in md_stop (Nigel Croxon) [2112935] - md: Flush workqueue md_rdev_misc_wq in md_alloc() (Nigel Croxon) [2112935] - drivers:md:fix a potential use-after-free bug (Nigel Croxon) [2112935] - md/raid5: Ensure batch_last is released before sleeping for quiesce (Nigel Croxon) [2112935] - md/raid5: Move stripe_request_ctx up (Nigel Croxon) [2112935] - md/raid5: Drop unnecessary call to r5c_check_stripe_cache_usage() (Nigel Croxon) [2112935] - md/raid5: Make is_inactive_blocked() helper (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_get_active_stripe() (Nigel Croxon) [2112935] - md-raid10: fix KASAN warning (Nigel Croxon) [2112935] - md: fix build failure for !MODULE (Nigel Croxon) [2112935] - raid5: fix duplicate checks for rdev->saved_raid_disk (Nigel Croxon) [2112935] - md/raid5: Convert prepare_to_wait() to wait_woken() api (Nigel Croxon) [2112935] - md/raid5: Fix sectors_to_do bitmap overflow in raid5_make_request() (Nigel Croxon) [2112935] - md: Fix spelling mistake in comments (Nigel Croxon) [2112935] - md/raid5: Increase restriction on max segments per request (Nigel Croxon) [2112935] - md/raid5: Improve debug prints (Nigel Croxon) [2112935] - md/raid5: Pivot raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Check all disks in a stripe_head for reshape progress (Nigel Croxon) [2112935] - md/raid5: Refactor add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Keep a reference to last stripe_head for batch (Nigel Croxon) [2112935] - md/raid5: Refactor for loop in raid5_make_request() into while loop (Nigel Croxon) [2112935] - md/raid5: Move read_seqcount_begin() into make_stripe_request() (Nigel Croxon) [2112935] - md/raid5: Drop the do_prepare flag in raid5_make_request() (Nigel Croxon) [2112935] - md/raid5: Factor out helper from raid5_make_request() loop (Nigel Croxon) [2112935] - md/raid5: Move common stripe get code into new find_get_stripe() helper (Nigel Croxon) [2112935] - md/raid5: Move stripe_add_to_batch_list() call out of add_stripe_bio() (Nigel Croxon) [2112935] - md/raid5: Refactor raid5_make_request loop (Nigel Croxon) [2112935] - md/raid5: Factor out ahead_of_reshape() function (Nigel Croxon) [2112935] - md/raid5: Make logic blocking check consistent with logic that blocks (Nigel Croxon) [2112935] - md: unlock mddev before reap sync_thread in action_store (Nigel Croxon) [2112935] - md: Explicitly create command-line configured devices (Nigel Croxon) [2112935] - md: Notify sysfs sync_completed in md_reap_sync_thread() (Nigel Croxon) [2112935] - md: Ensure resync is reported after it starts (Nigel Croxon) [2112935] - md: Use enum for overloaded magic numbers used by mddev->curr_resync (Nigel Croxon) [2112935] - md/raid5-cache: Annotate pslot with __rcu notation (Nigel Croxon) [2112935] - md/raid5-cache: Clear conf->log after finishing work (Nigel Croxon) [2112935] - md/raid5-cache: Drop RCU usage of conf->log (Nigel Croxon) [2112935] - md/raid5-cache: Take mddev_lock in r5c_journal_mode_show() (Nigel Croxon) [2112935] - md/raid5: suspend the array for calls to log_exit() (Nigel Croxon) [2112935] - md/raid5-ppl: Drop unused argument from ppl_handle_flush_request() (Nigel Croxon) [2112935] - md/raid5-log: Drop extern decorators for function prototypes (Nigel Croxon) [2112935] - md/raid5: missing error code in setup_conf() (Nigel Croxon) [2112935] - Revert "md: don't unregister sync_thread with reconfig_mutex held" (Nigel Croxon) [2112935] - qed: fix typos in comments (Manish Chopra) [2111885] - net: qede: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - RDMA/qedr: Fix potential memory leak in __qedr_alloc_mr() (Manish Chopra) [2111885] - qlogic: qed: fix clang -Wformat warnings (Manish Chopra) [2111885] - qed: Use bitmap_empty() (Manish Chopra) [2111885] - qed: Use the bitmap API to allocate bitmaps (Manish Chopra) [2111885] - qlogic/qed: fix repeated words in comments (Manish Chopra) [2111885] - net: qed: fix typos in comments (Manish Chopra) [2111885] - RDMA/qedr: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: Remove unnecessary synchronize_irq() before free_irq() (Manish Chopra) [2111885] - qed: replace bitmap_weight with bitmap_empty in qed_roce_stop() (Manish Chopra) [2111885] - qed: rework qed_rdma_bmap_free() (Manish Chopra) [2111885] - qed: Remove IP services API. (Manish Chopra) [2111885] - qed: remove an unneed NULL check on list iterator (Manish Chopra) [2111885] - RDMA/irdma: Report RNR NAK generation in device caps (Kamal Heib) [2120676 2103957] - RDMA/irdma: Use s/g array in post send only when its valid (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return correct WC error for bind operation failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Return error on MR deregister CQP failure (Kamal Heib) [2120676 2103957] - RDMA/irdma: Report the correct max cqes from query device (Kamal Heib) [2120676 2103957] - RDMA/siw: Pass a pointer to virt_to_page() (Kamal Heib) [2120676] - RDMA/cma: Fix arguments order in net device validation (Kamal Heib) [2120676] - RDMA/irdma: Fix drain SQ hang with no completion (Kamal Heib) [2120676 2103957 2033244 2053376] - IB/iser: Fix login with authentication (Kamal Heib) [2120676] - RDMA/ib_srpt: Unify checking rdma_cm_id condition in srpt_cm_req_recv() (Kamal Heib) [2120676] - RDMA/rxe: Fix error unwind in rxe_create_qp() (Kamal Heib) [2120676] - RDMA/rxe: Split qp state for requester and completer (Kamal Heib) [2120676] - RDMA/rxe: Generate error completion for error requester QP state (Kamal Heib) [2120676] - RDMA/rxe: Update wqe_index for each wqe error completion (Kamal Heib) [2120676] - RDMA/srpt: Fix a use-after-free (Kamal Heib) [2120676] - RDMA/srpt: Introduce a reference count in struct srpt_device (Kamal Heib) [2120676] - RDMA/srpt: Duplicate port name members (Kamal Heib) [2120676] - Revert "RDMA/rxe: Create duplicate mapping tables for FMRs" (Kamal Heib) [2120676] - RDMA/rxe: Replace __rxe_do_task by rxe_run_task (Kamal Heib) [2120676] - RDMA/rxe: Limit the number of calls to each tasklet (Kamal Heib) [2120676] - RDMA/rxe: Make the tasklet exits the same (Kamal Heib) [2120676] - RDMA/rxe: Fix rnr retry behavior (Kamal Heib) [2120676] - RDMA/rxe: Add rxe_is_fenced() subroutine (Kamal Heib) [2120676] - RDMA/rxe: For invalidate compare according to set keys in mr (Kamal Heib) [2120676] - RDMA: Fix comment typo (Kamal Heib) [2120676] - IB: Fix repeated words 'the the' comments (Kamal Heib) [2120676] - RDMA/rxe: Fix mw bind to allow any consumer key portion (Kamal Heib) [2120676] - RDMA/rxe: Fix spelling mistake in error print (Kamal Heib) [2120676] - RDMA/rxe: Remove unused qp parameter (Kamal Heib) [2120676] - RDMA/hfi1: fix potential memory leak in setup_base_ctxt() (Kamal Heib) [2120676] - RDMA/rxe: Remove unused mask parameter (Kamal Heib) [2120676] - RDMA/rxe: Rename rxe_atomic_reply to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add common rxe_prepare_res() (Kamal Heib) [2120676] - RDMA/rxe: Fix BUG: KASAN: null-ptr-deref in rxe_qp_do_cleanup (Kamal Heib) [2120676] - RDMA/siw: Fix duplicated reported IW_CM_EVENT_CONNECT_REPLY event (Kamal Heib) [2120676] - RDMA/hfi1: Depend on !UML (Kamal Heib) [2120676] - RDMA/irdma: Use the bitmap API to allocate bitmaps (Kamal Heib) [2120676 2103957] - RDMA: remove useless condition in siw_create_cq() (Kamal Heib) [2120676] - RDMA/irdma: Fix setting of QP context err_rq_idx_valid field (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix VLAN connection with wildcard address (Kamal Heib) [2120676 2103957] - RDMA/irdma: Fix a window for use-after-free (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make resource distribution algorithm more QP oriented (Kamal Heib) [2120676 2103957] - RDMA/irdma: Make CQP invalid state error non-critical (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add AE source to error log (Kamal Heib) [2120676 2103957] - RDMA/irdma: Add 2 level PBLE support for FMR (Kamal Heib) [2120676 2103957] - IB: Fix spelling of 'writable' (Kamal Heib) [2120676] - RDMA/rxe: Remove unnecessary include statement (Kamal Heib) [2120676] - RDMA/rxe: Replace include statement (Kamal Heib) [2120676] - RDMA/rxe: Convert pr_warn/err to pr_debug in pyverbs (Kamal Heib) [2120676] - RDMA/rxe: Fix deadlock in rxe_do_local_ops() (Kamal Heib) [2120676] - RDMA/rxe: Merge normal and retry atomic flows (Kamal Heib) [2120676] - RDMA/rxe: Move atomic original value to res (Kamal Heib) [2120676] - RDMA/rxe: Move atomic responder res to atomic_reply (Kamal Heib) [2120676] - RDMA/rxe: Add a responder state for atomic reply (Kamal Heib) [2120676] - RDMA/rxe: Move code to rxe_prepare_atomic_res() (Kamal Heib) [2120676] - RDMA/rxe: Convert read side locking to rcu (Kamal Heib) [2120676] - RDMA/rxe: Stop lookup of partially built objects (Kamal Heib) [2120676] - RDMA/rxe: Remove useless pkt parameters (Kamal Heib) [2120676] - RDMA: Correct duplicated words in comments (Kamal Heib) [2120676] - IB/iser: Drain the entire QP during destruction flow (Kamal Heib) [2120676] - RDMA/rxe: fix xa_alloc_cycle() error return value check again (Kamal Heib) [2120676] - RDMA/core: Add a netevent notifier to cma (Kamal Heib) [2120676 2117912] - RDMA/core: Add an rb_tree that stores cm_ids sorted by ifindex and remote IP (Kamal Heib) [2120676 2117912] - RDMA/hfi1: Fix typo in comment (Kamal Heib) [2120676] - RDMA: Split kernel-only global device caps from uverbs device caps (Kamal Heib) [2120675] - RDMA/hfi1: Remove all traces of diagpkt support (Kamal Heib) [2120675] - RDMA/hfi1: Consolidate software versions (Kamal Heib) [2120675] - RDMA/hfi1: Remove pointless driver version (Kamal Heib) [2120675] - RDMA/hfi1: Prevent panic when SDMA is disabled (Kamal Heib) [2120675] - RDMA/core: Fix typo in comment (Kamal Heib) [2120675] - IB/hf1: Fix typo in comment (Kamal Heib) [2120675] - IB/iser: Fix typo in comment (Kamal Heib) [2120675] - IB/isert: Avoid flush_scheduled_work() usage (Kamal Heib) [2120675] - RDMA/siw: Enable siw on tunnel devices (Kamal Heib) [2120675] - RDMA/rxe: Enforce IBA C11-17 (Kamal Heib) [2120675] - RDMA/rxe: Move mw cleanup code to rxe_mw_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move mr cleanup code to rxe_mr_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Move qp cleanup code to rxe_qp_do_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Check rxe_get() return value (Kamal Heib) [2120675] - RDMA/rxe: Add rxe_srq_cleanup() (Kamal Heib) [2120675] - RDMA/rxe: Remove IB_SRQ_INIT_MASK (Kamal Heib) [2120675] - RDMA/rxe: Skip adjusting remote addr for write in retry operation (Kamal Heib) [2120675] - RDMA/rxe: Optimize the mr pool struct (Kamal Heib) [2120675] - RDMA/rxe: Replace paylen by payload (Kamal Heib) [2120675] - RDMA/core: Avoid flush_workqueue(system_unbound_wq) usage (Kamal Heib) [2120675] - RDMA/rxe: Remove useless parameters for update_state() (Kamal Heib) [2120675] - RDMA/rxe: Remove reliable datagram support (Kamal Heib) [2120675] - RDMA/rxe: Remove support for SMI QPs from rdma_rxe (Kamal Heib) [2120675] - RDMA/rxe: Remove mc_grp_pool from struct rxe_dev (Kamal Heib) [2120675] - RDMA/rxe: Remove type 2A memory window capability (Kamal Heib) [2120675] - RDMA/usnic: Refactor usnic_uiom_alloc_pd() (Kamal Heib) [2120675] - RDMA/usnic: Stop using iommu_present() (Kamal Heib) [2120675] - IB/SA: Replace usage of found with dedicated list iterator variable (Kamal Heib) [2120675] - IB/rdmavt: add missing locks in rvt_ruc_loopback (Kamal Heib) [2120675] - IB/uverbs: Move part of enum ib_device_cap_flags to uapi (Kamal Heib) [2120675] - IB/uverbs: Move enum ib_raw_packet_caps to uapi (Kamal Heib) [2120675] - RDMA/pvrdma: Remove useless DMA-32 fallback configuration (Kamal Heib) [2120675] - RDMA: switch from 'pci_' to 'dma_' API (Kamal Heib) [2120675] - scsi: RDMA/srp: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - scsi: RDMA/iser: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Kamal Heib) [2120675] - x86/fpu: Prevent FPU state corruption (Oleksandr Natalenko) [2130890] - net: team: Unsync device addresses on ndo_stop (Hangbin Liu) [2135240] - mmu_gather: fix the CONFIG_MMU_GATHER_NO_RANGE case (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Force tlb-flush VM_PFNMAP vmas (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Let there be one tlb_{start,end}_vma() implementation (Waiman Long) [2130166] {CVE-2022-39188} - mmu_gather: Remove per arch tlb_{start,end}_vma() (Waiman Long) [2130166] {CVE-2022-39188} - x86/ldt: Use tlb_gather_mmu_fullmm() when freeing LDT page-tables (Waiman Long) [2130166] {CVE-2022-39188} - tlb: arch: Remove empty __tlb_remove_tlb_entry() stubs (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove start/end arguments from tlb_gather_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Introduce tlb_gather_mmu_fullmm() (Waiman Long) [2130166] {CVE-2022-39188} - tlb: mmu_gather: Remove unused start/end arguments from tlb_finish_mmu() (Waiman Long) [2130166] {CVE-2022-39188} - mm: proc: Invalidate TLB after clearing soft-dirty page state (Waiman Long) [2130166] {CVE-2022-39188} - mm: fix clear_refs_write locking (Waiman Long) [2130166] {CVE-2022-39188} - s390/Kconfig: sort config S390 select list once again (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: provide MMU_GATHER_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_NO_GATHER (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: rename HAVE_RCU_TABLE_FREE (Waiman Long) [2130166] {CVE-2022-39188} - asm-generic/tlb: avoid potential double flush (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Flush the full mm even when need_flush_all is set (Waiman Long) [2130166] {CVE-2022-39188} - powerpc/mm/book3s64/radix: Use freed_tables instead of need_flush_all (Waiman Long) [2130166] {CVE-2022-39188} - mm/tlb: Remove CONFIG_HAVE_RCU_TABLE_INVALIDATE (Waiman Long) [2130166] {CVE-2022-39188} - Add skb drop reasons to IPv6 UDP receive path (Antoine Tenart) [2059158] - net: skb: export skb drop reaons to user by TRACE_DEFINE_ENUM (Antoine Tenart) [2059158] - net: skb: prevent the split of kfree_skb_reason() by gcc (Antoine Tenart) [2059158] - tcp: md5: fix IPv4-mapped support (Antoine Tenart) [2059158] - net: dropreason: reformat the comment fo skb drop reasons (Antoine Tenart) [2059158] - net: skb: use auto-generation to convert skb drop reason to string (Antoine Tenart) [2059158] - net: skb: move enum skb_drop_reason to standalone header file (Antoine Tenart) [2059158] - tcp_ipv6: set the drop_reason in the right place (Antoine Tenart) [2059158] - net: tcp: reset 'drop_reason' to NOT_SPCIFIED in tcp_v{4,6}_rcv() (Antoine Tenart) [2059158] - net: skb: change the definition SKB_DR_SET() (Antoine Tenart) [2059158] - net: skb: check the boundrary of drop reason in kfree_skb_reason() (Antoine Tenart) [2059158] - net: dm: check the boundary of skb drop reasons (Antoine Tenart) [2059158] - tcp: fix signed/unsigned comparison (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_ofo_queue() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_synsent_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_synsent_state_process() drop monitor friend (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_prune_ofo_queue() (Antoine Tenart) [2059158] - tcp: add two drop reasons for tcp_ack() (Antoine Tenart) [2059158] - tcp: add drop reasons to tcp_rcv_state_process() (Antoine Tenart) [2059158] - tcp: make tcp_rcv_state_process() drop monitor friendly (Antoine Tenart) [2059158] - tcp: add drop reason support to tcp_validate_incoming() (Antoine Tenart) [2059158] - tcp: get rid of rst_seq_match (Antoine Tenart) [2059158] - tcp: consume incoming skb leading to a reset (Antoine Tenart) [2059158] - tcp: tcp_send_challenge_ack delete useless param `skb` (Antoine Tenart) [2059158] - ipv6: fix NULL deref in ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_rcv_core() (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to TLV parse (Antoine Tenart) [2059158] - net: ipv6: remove redundant statistics in ipv6_hop_jumbo() (Antoine Tenart) [2059158] - net: icmp: introduce function icmpv6_param_prob_reason() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons to ip forwarding (Antoine Tenart) [2059158] - net: ipv6: add skb drop reasons to ip6_pkt_drop() (Antoine Tenart) [2059158] - net: ipv4: add skb drop reasons to ip_error() (Antoine Tenart) [2059158] - skb: add some helpers for skb drop reasons (Antoine Tenart) [2059158] - net: icmp: add skb drop reasons to icmp protocol (Antoine Tenart) [2059158] - ping: Check return value of function 'ping_queue_rcv_skb' (Antoine Tenart) [2059158] - net: icmp: introduce __ping_queue_rcv_skb() to report drop reasons (Antoine Tenart) [2059158] - net: skb: rename SKB_DROP_REASON_PTYPE_ABSENT (Antoine Tenart) [2059158] - net: sock: introduce sock_queue_rcv_skb_reason() (Antoine Tenart) [2059158] - net: tcp: fix shim definition of tcp_inbound_md5_hash (Antoine Tenart) [2059158] - skb: make drop reason booleanable (Antoine Tenart) [2059158] - net/tcp: Merge TCP-MD5 inbound callbacks (Antoine Tenart) [2059158] - tcp: md5: add tcp_md5_needed jump label (Antoine Tenart) [2059158] - net: tun: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: tun: split run_ebpf_filter() and pskb_trim() into different "if statement" (Antoine Tenart) [2059158] - net: tap: track dropped skb via kfree_skb_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for __netif_receive_skb_core() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_ingress() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for do_xdp_generic() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for enqueue_to_backlog() (Antoine Tenart) [2059158] - net: dev: add skb drop reasons to __dev_xmit_skb() (Antoine Tenart) [2059158] - net: skb: introduce the function kfree_skb_list_reason() (Antoine Tenart) [2059158] - net: dev: use kfree_skb_reason() for sch_handle_egress() (Antoine Tenart) [2059158] - net: neigh: add skb drop reasons to arp_error_report() (Antoine Tenart) [2059158] - net: neigh: use kfree_skb_reason() for __neigh_event_send() (Antoine Tenart) [2059158] - net: ip: add skb drop reasons for ip egress path (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue_ofo() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_data_queue() (Antoine Tenart) [2059158] - net: tcp: use tcp_drop_reason() for tcp_rcv_established() (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v{4,6}_do_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_add_backlog() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v{4,6}_inbound_md5_hash() (Antoine Tenart) [2059158] - ipv4/tcp: Pass dif and sdif to tcp_v4_inbound_md5_hash (Antoine Tenart) [2059158] - ipv6/tcp: Pass dif and sdif to tcp_v6_inbound_md5_hash (Antoine Tenart) [2059158] - ipv4/tcp: Use local variable for tcp_md5_addr (Antoine Tenart) [2059158] - net: tcp: use kfree_skb_reason() for tcp_v6_rcv() (Antoine Tenart) [2059158] - net: tcp: add skb drop reasons to tcp_v4_rcv() (Antoine Tenart) [2059158] - net: tcp: introduce tcp_drop_reason() (Antoine Tenart) [2059158] - ipv6: Add reasons for skb drops to __udp6_lib_rcv (Antoine Tenart) [2059158] - net: drop_monitor: support drop reason (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in __udp_queue_rcv_skb() (Antoine Tenart) [2059158] - net: udp: use kfree_skb_reason() in udp_queue_rcv_one_skb() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_protocol_deliver_rcu() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_finish_core() (Antoine Tenart) [2059158] - net: ipv4: use kfree_skb_reason() in ip_rcv_core() (Antoine Tenart) [2059158] - net: netfilter: use kfree_drop_reason() for NF_DROP (Antoine Tenart) [2059158] - net: skb_drop_reason: add document for drop reasons (Antoine Tenart) [2059158] - net: socket: rename SKB_DROP_REASON_SOCKET_FILTER (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in __udp4_lib_rcv() (Antoine Tenart) [2059158] - net: skb: use kfree_skb_reason() in tcp_v4_rcv() (Antoine Tenart) [2059158] - net: skb: introduce kfree_skb_reason() (Antoine Tenart) [2059158] - bnx2x: Fix comment typo (Manish Chopra) [2111882] - bnx2x: Fix spelling mistake "regiser" -> "register" (Manish Chopra) [2111882] - bnx2x: Fix undefined behavior due to shift overflowing the constant (Manish Chopra) [2111882] - net: sched: act_ct: fix possible refcount leak in tcf_ct_init() (Davide Caratti) [2133741] - net: sched: fix possible refcount leak in tc_new_tfilter() (Davide Caratti) [2133741] - sch_sfb: Also store skb len before calling child enqueue (Davide Caratti) [2133741] - sch_sfb: Don't assume the skb is still around after enqueueing to child (Davide Caratti) [2133741] - net/sched: fix netdevice reference leaks in attach_default_qdiscs() (Davide Caratti) [2133741] - net: sched: tbf: don't call qdisc_put() while holding tree lock (Davide Caratti) [2133741] - net: Fix data-races around weight_p and dev_weight_[rt]x_bias. (Davide Caratti) [2133741] - net/sched: act_api: Notify user space if any actions were flushed before error (Davide Caratti) [2133741] - tipc: fix an information leak in tipc_topsrv_kern_subscr (Xin Long) [2134962] - tipc: Fix recognition of trial period (Xin Long) [2134962] - tipc: fix shift wrapping bug in map_get() (Xin Long) [2134962] - PCI/ASPM: Make Intel DG2 L1 acceptable latency unlimited (Myron Stowe) [2072656] - x86/pci/xen: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2133518] - PCI: MSI: Fix Kconfig dependencies for PCI_MSI_ARCH_FALLBACKS (Jerry Snitselaar) [2133518] - x86/apic/msi: Unbreak DMAR and HPET MSI (Jerry Snitselaar) [2133518] - iommu/amd: Remove domain search for PCI/MSI (Jerry Snitselaar) [2133518] - iommu/vt-d: Remove domain search for PCI/MSI[X] (Jerry Snitselaar) [2133518] - x86/irq: Make most MSI ops XEN private (Jerry Snitselaar) [2133518] - x86/irq: Cleanup the arch_*_msi_irqs() leftovers (Jerry Snitselaar) [2133518] - PCI/MSI: Make arch_.*_msi_irq[s] fallbacks selectable (Jerry Snitselaar) [2133518] - x86/xen: Wrap XEN MSI management into irqdomain (Jerry Snitselaar) [2133518] - x86/xen: Consolidate XEN-MSI init (Jerry Snitselaar) [2133518] - x86/xen: Rework MSI teardown (Jerry Snitselaar) [2133518] - x86/xen: Make xen_msi_init() static and rename it to xen_hvm_msi_init() (Jerry Snitselaar) [2133518] - x86/irq: Move apic_post_init() invocation to one place (Jerry Snitselaar) [2133518] - x86/msi: Use generic MSI domain ops (Jerry Snitselaar) [2133518] - x86/msi: Remove pointless vcpu_affinity callback (Jerry Snitselaar) [2133518] - netfilter: nf_conntrack_irc: Tighten matching on DCC message (Wander Lairson Costa) [2124092] {CVE-2022-2663} - netfilter: nf_conntrack_irc: Fix forged IP logic (Wander Lairson Costa) [2124092] {CVE-2022-2663} - ice: Add support Flex RXD (Michal Schmidt) [2131310] - asm-generic: sections: refactor memory_intersects (Jerry Snitselaar) [2112119] - swiotlb: fix passing local variable to debugfs_create_ulong() (Jerry Snitselaar) [2112119] - swiotlb: move struct io_tlb_slot to swiotlb.c (Jerry Snitselaar) [2112119] - swiotlb: ensure a segment doesn't cross the area boundary (Jerry Snitselaar) [2112119] - swiotlb: consolidate rounding up default_nslabs (Jerry Snitselaar) [2112119] - swiotlb: remove unused fields in io_tlb_mem (Jerry Snitselaar) [2112119] - swiotlb: fix use after free on error handling path (Jerry Snitselaar) [2112119] - swiotlb: split up the global swiotlb lock (Jerry Snitselaar) [2112119] - swiotlb: fail map correctly with failed io_tlb_default_mem (Jerry Snitselaar) [2112119] - swiotlb: remove a useless return in swiotlb_init (Jerry Snitselaar) [2112119] - swiotlb: remove the unused swiotlb_force declaration (Jerry Snitselaar) [2112119] - iommu/dma: Fix race condition during iova_domain initialization (Jerry Snitselaar) [2112119] - iommu/amd: Fix compile warning in init code (Jerry Snitselaar) [2106599] - iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement (Jerry Snitselaar) [2106599] - iommu/vt-d: Check correct capability for sagaw determination (Jerry Snitselaar) [2112119] - iommu/vt-d: Correctly calculate sagaw value of IOMMU (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix kdump kernels boot failure with scalable mode (Jerry Snitselaar) [2080413] - iommu/amd: use full 64-bit value in build_completion_wait() (Jerry Snitselaar) [2112119] - swiotlb: avoid potential left shift overflow (Jerry Snitselaar) [2112119] - dma-debug: improve search for partial syncs (Jerry Snitselaar) [2112119] - iommu/iova: Improve 32-bit free space estimate (Jerry Snitselaar) [2112119] - iommu/amd: Handle return of iommu_device_sysfs_add (Jerry Snitselaar) [2112119] - swiotlb: fix setting ->force_bounce (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs-derived sizes in swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: use the right nslabs value in swiotlb_init_remap (Jerry Snitselaar) [2112119] - swiotlb: don't panic when the swiotlb buffer can't be allocated (Jerry Snitselaar) [2112119] - x86: remove cruft from (Jerry Snitselaar) [2112119] - swiotlb: remove swiotlb_init_with_tbl and swiotlb_init_late_with_tbl (Jerry Snitselaar) [2112119] - swiotlb: provide swiotlb_init variants that remap the buffer (Jerry Snitselaar) [2112119] - swiotlb: pass a gfp_mask argument to swiotlb_init_late (Jerry Snitselaar) [2112119] - swiotlb: add a SWIOTLB_ANY flag to lift the low memory restriction (Jerry Snitselaar) [2112119] - swiotlb: make the swiotlb_init interface more useful (Jerry Snitselaar) [2112119] - x86: centralize setting SWIOTLB_FORCE when guest memory encryption is enabled (Jerry Snitselaar) [2112119] - x86: remove the IOMMU table infrastructure (Jerry Snitselaar) [2112119] - swiotlb: rename swiotlb_late_init_with_default_size (Jerry Snitselaar) [2112119] - swiotlb: simplify swiotlb_max_segment (Jerry Snitselaar) [2112119] - iommu/vt-d: avoid invalid memory access via node_online(NUMA_NO_NODE) (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: check return value after calling platform_get_resource() (Jerry Snitselaar) [2112119] - iommu/arm-smmu: fix possible null-ptr-deref in arm_smmu_device_probe() (Jerry Snitselaar) [2112119] - iommu/amd: Increase timeout waiting for GA log enablement (Jerry Snitselaar) [2112119] - iommu/amd: Do not call sleep while holding spinlock (Jerry Snitselaar) [2112119] - iommu/amd: Remove redundant check (Jerry Snitselaar) [2112119] - swiotlb: simplify array allocation (Jerry Snitselaar) [2112119] - swiotlb: tidy up includes (Jerry Snitselaar) [2112119] - treewide: Replace the use of mem_encrypt_active() with cc_platform_has() (Jerry Snitselaar) [2112119] - swiotlb: simplify debugfs setup (Jerry Snitselaar) [2112119] - iommu: Log iova range in map/unmap trace events (Jerry Snitselaar) [2112119] - iommu/amd: Improve amd_iommu_v2_exit() (Jerry Snitselaar) [2112119] - iommu/amd: Remove unused struct fault.devid (Jerry Snitselaar) [2112119] - iommu/amd: Clean up function declarations (Jerry Snitselaar) [2112119] - iommu/amd: Improve error handling for amd_iommu_init_pci (Jerry Snitselaar) [2112119] - iommu/iova: Separate out rcache init (Jerry Snitselaar) [2112119] - iommu/iova: Temporarily include dma-mapping.h from iova.h (Jerry Snitselaar) [2112119] - iommu: Move flush queue data into iommu_dma_cookie (Jerry Snitselaar) [2112119] - iommu/iova: Move flush queue code to iommu-dma (Jerry Snitselaar) [2112119] - iommu/iova: Consolidate flush queue code (Jerry Snitselaar) [2112119] - iommu/vt-d: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Use put_pages_list (Jerry Snitselaar) [2112119] - iommu/amd: Simplify pagetable freeing (Jerry Snitselaar) [2112119] - iommu/iova: Squash flush_cb abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Squash entry_dtor abstraction (Jerry Snitselaar) [2112119] - iommu/iova: Move fast alloc size roundup into alloc_iova_fast() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: fix event handling soft lockup (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Avoid open coded arithmetic in memory allocation (Jerry Snitselaar) [2112119] - iommu/amd: Fix loop timeout issue in iommu_ga_log_enable() (Jerry Snitselaar) [2112119] - iommu/intel: Use msi_msg shadow structs (Jerry Snitselaar) [2112119] - dma-mapping: use 'bitmap_zalloc()' when applicable (Jerry Snitselaar) [2112119] - iommu/dma: Use kvcalloc() instead of kvzalloc() (Jerry Snitselaar) [2112119] - iommu/vt-d: Convert the return type of first_pte_in_page to bool (Jerry Snitselaar) [2112119] - iommu/vt-d: Use second level for GPA->HPA translation (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove duplicate identity domain flag (Jerry Snitselaar) [2112119] - iommu/vt-d: Do not falsely log intel_iommu is unsupported kernel option (Jerry Snitselaar) [2112119] - iommu/dma: Unexport IOVA cookie management (Jerry Snitselaar) [2112119] - iommu/amd: Use struct_group() for memcpy() region (Jerry Snitselaar) [2112119] - dma-mapping: remove bogus test for pfn_valid from dma_map_resource (Jerry Snitselaar) [2112119] - iommu/vt-d: Use pci_dev_id() helper (Jerry Snitselaar) [2112119] - swiotlb-xen: this is PV-only on x86 (Jerry Snitselaar) [2112119] - xen/pci-swiotlb: reduce visibility of symbols (Jerry Snitselaar) [2112119] - iova: Export alloc_iova_fast() and free_iova_fast() (Jerry Snitselaar) [2112119] - iommu: Clarify default domain Kconfig (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Abstract iommu_iotlb_gather access (Jerry Snitselaar) [2112119] - iommu/vt-d: Refactor Kconfig a bit (Jerry Snitselaar) [2112119] - iommu: Allow enabling non-strict mode dynamically (Jerry Snitselaar) [2112119] - iommu: Merge strictness and domain type configs (Jerry Snitselaar) [2112119] - iommu: Only log strictness for DMA domains (Jerry Snitselaar) [2112119] - iommu: Expose DMA domain strictness via sysfs (Jerry Snitselaar) [2112119] - iommu: Express DMA strictness via the domain type (Jerry Snitselaar) [2112119] - iommu/vt-d: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/arm-smmu: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu/amd: Prepare for multiple DMA domain types (Jerry Snitselaar) [2112119] - iommu: Introduce explicit type for non-strict DMA domains (Jerry Snitselaar) [2112119] - iommu/io-pgtable: Remove non-strict quirk (Jerry Snitselaar) [2112119] - iommu: Indicate queued flushes via gather data (Jerry Snitselaar) [2112119] - iommu/amd: Remove stale amd_iommu_unmap_flush usage (Jerry Snitselaar) [2112119] - iommu: Remove mode argument from iommu_set_dma_strict() (Jerry Snitselaar) [2112119] - iommu/amd: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu/vt-d: Add support for IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Enhance IOMMU default DMA mode build options (Jerry Snitselaar) [2112119] - iommu: Print strict or lazy mode at init time (Jerry Snitselaar) [2112119] - iommu: Deprecate Intel and AMD cmdline methods to enable strict mode (Jerry Snitselaar) [2112119] - dma-debug: use memory_intersects() directly (Jerry Snitselaar) [2112119] - dma-debug: fix return value of __setup handlers (Jerry Snitselaar) [2112119] - arm-smmu-qcom: Ensure the qcom_scm driver has finished probing (Jerry Snitselaar) [2112119] - iommu/io-pgtable-arm: Clean up faulty sanity check (Jerry Snitselaar) [2112119] - iommu/vt-d: Fix RCU list debugging warnings (Jerry Snitselaar) [2112119] - iommu/dma: add a new dma_map_ops of get_merge_boundary() (Jerry Snitselaar) [2112119] - swiotlb: do not zero buffer in set_memory_decrypted() (Jerry Snitselaar) [2112119] - iommu: iommu_ops RH_KABI cleanup (Jerry Snitselaar) [2112119] - device: Fix RH_KABI work around (Jerry Snitselaar) [2112357] - iommu/vt-d: Drop stop marker messages (Jerry Snitselaar) [2112119] - iommu/vt-d: Remove unused function intel_svm_capable() (Jerry Snitselaar) [2112119] - iommu/arm-smmu-v3: Fix size calculation in arm_smmu_mm_invalidate_range() (Jerry Snitselaar) [2112119] - iommu/vt-d: Delete dev_has_feat callback (Jerry Snitselaar) [2112119] - iommu/amd: Remove useless irq affinity notifier (Jerry Snitselaar) [2112119]- scsi: qedi: Fix ABBA deadlock in qedi_process_tmf_resp() and qedi_process_cmd_cleanup_resp() (Nilesh Javali) [2109890] - scsi: qedi: Remove set but unused 'page' variable (Nilesh Javali) [2109890] - x86/elf: Disable automatic READ_IMPLIES_EXEC on 64-bit (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Split READ_IMPLIES_EXEC from executable PT_GNU_STACK (Wander Lairson Costa) [2070700] {CVE-2022-25265} - x86/elf: Add table to document READ_IMPLIES_EXEC (Wander Lairson Costa) [2070700] {CVE-2022-25265} - RHEL-only: KVM: selftests: Enable rseq_test on aarch64 (Gavin Shan) [2128974] - KVM: selftests: Use getcpu() instead of sched_getcpu() in rseq_test (Gavin Shan) [2128974] - selftests: kvm: Fix a compile error in selftests/kvm/rseq_test.c (Gavin Shan) [2128974] - KVM: selftests: Fix target thread to be migrated in rseq_test (Gavin Shan) [2128974] - selftests: KVM: Handle compiler optimizations in ucall (Gavin Shan) [2128974] - selftests: kvm: replace ternary operator with min() (Gavin Shan) [2128974] - KVM: selftests: Fix typo in vgic_init test (Gavin Shan) [2128974] - KVM: selftests: Fix buggy-but-benign check in test_v3_new_redist_regions() (Gavin Shan) [2128974] - KVM: arm64: vgic: Fix exit condition in scan_its_table() (Gavin Shan) [2128974] - KVM: arm64: selftests: Add support for GICv2 on v3 (Gavin Shan) [2128974] - KVM: arm64: Fix comment typo in nvhe/switch.c (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove duplicate check in update_affinity_collection() (Gavin Shan) [2128974] - KVM: arm64: Don't return from void function (Gavin Shan) [2128974] - KVM: arm64: Drop stale comment (Gavin Shan) [2128974] - KVM: arm64: Warn if accessing timer pending state outside of vcpu context (Gavin Shan) [2128974] - KVM: arm64: Replace vgic_v3_uaccess_read_pending with vgic_uaccess_read_pending (Gavin Shan) [2128974] - KVM: arm64: vgic: Undo work in failed ITS restores (Gavin Shan) [2128974] - KVM: arm64: vgic: Do not ignore vgic_its_restore_cte failures (Gavin Shan) [2128974] - KVM: arm64: vgic: Add more checks when restoring ITS tables (Gavin Shan) [2128974] - KVM: arm64: vgic: Check that new ITEs could be saved in guest memory (Gavin Shan) [2128974] - KVM: arm64: nvhe: Eliminate kernel-doc warnings (Gavin Shan) [2128974] - KVM: arm64: Print emulated register table name when it is unsorted (Gavin Shan) [2128974] - KVM: arm64: Don't BUG_ON() if emulated register table is unsorted (Gavin Shan) [2128974] - KVM: arm64: Inject exception on out-of-IPA-range translation fault (Gavin Shan) [2128974] - KVM: arm64: vgic: Remove unnecessary type castings (Gavin Shan) [2128974] - KVM: arm64: Drop unused param from kvm_psci_version() (Gavin Shan) [2128974] - KVM: arm64: vgic: Add memcg accounting to vgic allocations (Gavin Shan) [2128974] - x86/split_lock: Enable the split lock feature on Raptor Lake (Prarit Bhargava) [2076738] - mm: prevent page_frag_alloc() from corrupting the memory (Izabela Bakollari) [2132265] - RDMA/mlx5: Set local port to one when accessing counters (Mohammad Kabat) [2077119] - scsi: ch: Do not initialise statics to 0 (Ewan D. Milne) [2132458] - scsi: core: Fix warning in scsi_alloc_sgtables() (Ewan D. Milne) [2132458] - scsi: core: Move the definition of SCSI_QUEUE_DELAY (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix zone transition to full condition (Ewan D. Milne) [2132458] - scsi: sd_zbc: Prevent zone information memory leak (Ewan D. Milne) [2132458] - scsi: sd: Fix potential NULL pointer dereference (Ewan D. Milne) [2132458] - scsi: sr: Add memory allocation failure handling for get_capabilities() (Ewan D. Milne) [2132458] - scsi: sd: Use cached ATA Information VPD page (Ewan D. Milne) [2132458] - scsi: core: Do not truncate INQUIRY data on modern devices (Ewan D. Milne) [2132458] - scsi: core: Pick suitable allocation length in scsi_report_opcode() (Ewan D. Milne) [2132458] - scsi: core: Query VPD size before getting full page (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add gap zone support (Ewan D. Milne) [2132458] - scsi: scsi_debug: Rename zone type constants (Ewan D. Milne) [2132458] - scsi: scsi_debug: Fix a typo (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Hide gap zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Return early in sd_zbc_check_zoned_characteristics() (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Introduce struct zoned_disk_info (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Use logical blocks as unit when querying zones (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Verify that the zone size is a power of two (Ewan D. Milne) [2132458] - scsi: sd: sd_zbc: Improve source code documentation (Ewan D. Milne) [2132458] - scsi: sr: Do not leak information in ioctl (Ewan D. Milne) [2132458] - scsi: core: Remove unreachable code warning (Ewan D. Milne) [2132458] - scsi: libfc: Fix use after free in fc_exch_abts_resp() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Silence unexpected unlock warnings (Ewan D. Milne) [2132458] - scsi: Remove unused member cmd_pool for structure scsi_host_template (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add environmental reporting log subpage (Ewan D. Milne) [2132458] - scsi: scsi_debug: Add no_rwlock parameter (Ewan D. Milne) [2132458] - scsi: scsi_debug: Divide power on reset UNIT ATTENTION (Ewan D. Milne) [2132458] - scsi: scsi_debug: Use TASK SET FULL more (Ewan D. Milne) [2132458] - scsi: scsi_debug: Strengthen defer_t accesses (Ewan D. Milne) [2132458] - scsi: ch: Don't use GFP_DMA (Ewan D. Milne) [2132458] - scsi: scsi_transport_sas: Add 22.5 Gbps link rate definitions (Ewan D. Milne) [2132458] - scsi: sd: Free scsi_disk device via put_device() (Ewan D. Milne) [2132458] - scsi: scsi_debug: Adjust num_parts to create equally sized partitions (Ewan D. Milne) [2132458] - scsi: ch: remove ch_mutex() (Ewan D. Milne) [2132458] - scsi: ch: synchronize ch_probe() and ch_open() (Ewan D. Milne) [2132458] - scsi: ch: fixup refcounting imbalance for SCSI devices (Ewan D. Milne) [2132458] - scsi: mpi3mr: Schedule IRQ kthreads only on non-RT kernels (Tomas Henzl) [2134535] - netfilter: flowtable: fix stuck flows on cleanup due to pending work (Phil Sutter) [2131370] - netfilter: flowtable: add function to invoke garbage collection immediately (Phil Sutter) [2131370] - netfilter: flowtable: pass flowtable to nf_flow_table_iterate() (Phil Sutter) [2131370] - netfilter: flowtable: separate replace, destroy and stats to different workqueues (Phil Sutter) [2131370] - drm/mgag200: Fix PLL setup for G200_SE_A rev >=4 (Jocelyn Falempe) [2130159] - af_key: Do not call xfrm_probe_algs in parallel (Sabrina Dubroca) [2122369] {CVE-2022-3028} - xfrm: Update ipcomp_scratches with NULL when freed (Sabrina Dubroca) [2136193] - esp: choose the correct inner protocol for GSO on inter address family tunnels (Sabrina Dubroca) [2136193] - xfrm: fix refcount leak in __xfrm_policy_check() (Sabrina Dubroca) [2136193] - xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in xfrm_bundle_lookup() (Sabrina Dubroca) [2136193] - net: Fix esp GSO on inter address family tunnels. (Sabrina Dubroca) [2136193] - esp: Fix BEET mode inter address family tunneling on GSO (Sabrina Dubroca) [2136193] - cifs: fix check of dfs interlinks (Ronnie Sahlberg) [2132414] - powerpc/pseries: Fix numa FORM2 parsing fallback code (Nico Pache) [2089496] - powerpc/pseries: rename numa_dist_table to form2_distances (Nico Pache) [2089496] - x86/pkey: Fix undefined behaviour with PKRU_WD_BIT (Nico Pache) [2089496] - hugetlb: add lockdep check for i_mmap_rwsem held in huge_pmd_share (Nico Pache) [2089496] - mm: page_io: fix psi memory pressure error on cold swapins (Nico Pache) [2089496] - mm/memcg: Remove 'page' parameter to mem_cgroup_charge_statistics() (Nico Pache) [2089496] - mm: workingset: replace IRQ-off check with a lockdep assert. (Nico Pache) [2089496] - mm/madvise: fix potential pte_unmap_unlock pte error (Nico Pache) [2089496] - mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove() (Nico Pache) [2089496] - mm/sparse.c: remove NULL check in clear_hwpoisoned_pages() (Nico Pache) [2089496] - node: fix device cleanups in error handling code (Nico Pache) [2089496] - x86/setup: Fix static memory detection (Nico Pache) [2089496] - x86/fault: Don't send SIGSEGV twice on SEGV_PKUERR (Nico Pache) [2089496] - s390/startup: round down "mem" option to page boundary (Nico Pache) [2089496] - powerpc/64s: Remove 'dummy_copy_buffer' (Nico Pache) [2089496] - page_alloc: fix invalid watermark check on a negative value (Nico Pache) [2089496] - lib/radix-tree: remove unused argument of insert_entries (Nico Pache) [2089496] - drm/radeon: fix incorrrect SPDX-License-Identifiers (Nico Pache) [2089496] - mm/swap: fix the obsolete comment for SWP_TYPE_SHIFT (Nico Pache) [2089496] - irq_work: use kasan_record_aux_stack_noalloc() record callstack (Nico Pache) [2089496] - kdb: Fix the putarea helper function (Nico Pache) [2089496] - mm: slab: Delete unused SLAB_DEACTIVATED flag (Nico Pache) [2089496] - mm, kasan: use compare-exchange operation to set KASAN page tag (Nico Pache) [2089496] - rcu: Avoid alloc_pages() when recording stack (Nico Pache) [2089496] - workqueue, kasan: avoid alloc_pages() when recording stack (Nico Pache) [2089496] - kasan: generic: introduce kasan_record_aux_stack_noalloc() (Nico Pache) [2089496] - kasan: common: provide can_alloc in kasan_save_stack() (Nico Pache) [2089496] - lib/stackdepot: remove unused function argument (Nico Pache) [2089496] - lib/stackdepot: include gfp.h (Nico Pache) [2089496] - blk-cgroup: blk_cgroup_bio_start() should use irq-safe operations on blkg->iostat_cpu (Nico Pache) [2089496] - libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind (Nico Pache) [2089496] - include/trace/events/vmscan.h: remove mm_vmscan_inactive_list_is_low (Nico Pache) [2089496] - khugepaged: selftests: remove debug_cow (Nico Pache) [2089496] - mm/mmzone.h: simplify is_highmem_idx() (Nico Pache) [2089496] - mm/page-writeback: use __this_cpu_inc() in account_page_dirtied() (Nico Pache) [2089496] - mm/page-writeback: update the comment of Dirty position control (Nico Pache) [2089496] - mm/page-writeback: Fix performance when BDI's share of ratio is 0. (Nico Pache) [2089496] - fuse: ignore PG_workingset after stealing (Nico Pache) [2089496] - mm/slub: actually fix freelist pointer vs redzoning (Nico Pache) [2089496] - mm/slub: clarify verification reporting (Nico Pache) [2089496] - irq_work: Make irq_work_queue() NMI-safe again (Nico Pache) [2089496] - mm/huge_memory.c: remove unused macro TRANSPARENT_HUGEPAGE_DEBUG_COW_FLAG (Nico Pache) [2089496] - irq_work: record irq_work_queue() call stack (Nico Pache) [2089496] - arm64: kasan: fix page_alloc tagging with DEBUG_VIRTUAL (Nico Pache) [2089496] - mm/arm64: Correct obsolete comment in do_page_fault() (Nico Pache) [2089496] - kernel: kexec: remove the lock operation of system_transition_mutex (Nico Pache) [2089496] - libnvdimm/pmem: Remove unused header (Nico Pache) [2089496] - workqueue: kasan: record workqueue stack (Nico Pache) [2089496] - lib/test_kasan.c: add workqueue test case (Nico Pache) [2089496] - page_frag: Recover from memory pressure (Nico Pache) [2089496] - mm: use helper function put_write_access() (Nico Pache) [2089496] - mm/swapfile.c: remove unnecessary goto out in _swap_info_get() (Nico Pache) [2089496] - mm/swap.c: fix incomplete comment in lru_cache_add_inactive_or_unevictable() (Nico Pache) [2089496] - mm/page_io.c: remove useless out label in __swap_writepage() (Nico Pache) [2089496] - mm/swap_slots.c: remove always zero and unused return value of enable_swap_slots_cache() (Nico Pache) [2089496] - mm/swap.c: fix confusing comment in release_pages() (Nico Pache) [2089496] - mm: annotate a data race in page_zonenum() (Nico Pache) [2089496] - mm/swap.c: annotate data races for lru_rotate_pvecs (Nico Pache) [2089496] - mm/rmap: annotate a data race at tlb_flush_batched (Nico Pache) [2089496] - mm/mempool: fix a data race in mempool_free() (Nico Pache) [2089496] - mm/list_lru: fix a data race in list_lru_count_one (Nico Pache) [2089496] - mm/memcontrol: fix a data race in scan count (Nico Pache) [2089496] - mm/swapfile: fix and annotate various data races (Nico Pache) [2089496] - mm: thp: remove debug_cow switch (Nico Pache) [2089496] - page_alloc: consider highatomic reserve in watermark fast (Nico Pache) [2089496] - mm: remove unnecessary wrapper function do_mmap_pgoff() (Nico Pache) [2089496] - doc: don't use deprecated "---help---" markers in target docs (Nico Pache) [2089496] - doc: cgroup: update note about conditions when oom killer is invoked (Nico Pache) [2089496] - mm: add kvfree_sensitive() for freeing sensitive data objects (Nico Pache) [2089496] - f2fs: fix retry logic in f2fs_write_cache_pages() (Nico Pache) [2089496] - mm/hugetlb: avoid unnecessary check on pud and pmd entry in huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: remove unused variable (Nico Pache) [2089496] - zswap: docs/vm: Fix typo accept_threshold_percent in zswap.rst (Nico Pache) [2089496] - tracing: Add a vmalloc_sync_mappings() for safe measure (Nico Pache) [2089496] - mm/hugetlb: fix a addressing exception caused by huge_pte_offset (Nico Pache) [2089496] - mm/page-writeback.c: write_cache_pages(): deduplicate identical checks (Nico Pache) [2089496] - revert "topology: add support for node_to_mem_node() to determine the fallback node" (Nico Pache) [2089496] - net: memcg: fix lockdep splat in inet_csk_accept() (Nico Pache) [2089496] - net: memcg: late association of sock to memcg (Nico Pache) [2089496] - tmpfs: deny and force are not huge mount options (Nico Pache) [2089496] - mm/zswap.c: add allocation hysteresis if pool limit is hit (Nico Pache) [2089496] - mm/swapfile.c: swap_next should increase position index (Nico Pache) [2089496] - fat: use prandom_u32() for i_generation (Nico Pache) [2089496] - mm/mmap.c: rb_parent is not necessary in __vma_link_list() (Nico Pache) [2089496] - mm/mmap.c: __vma_unlink_prev() is not necessary now (Nico Pache) [2089496] - docs: kmemleak: DEBUG_KMEMLEAK_EARLY_LOG_SIZE changed names (Nico Pache) [2089496] - mm/mmap.c: prev could be retrieved from vma->vm_prev (Nico Pache) [2089496] - mm/zsmalloc.c: fix a -Wunused-function warning (Nico Pache) [2089496] - mm/rmap.c: remove set but not used variable 'cstart' (Nico Pache) [2089496] - tools headers UAPI: Update tools's copy of mman.h headers (Nico Pache) [2089496] - mm/mmap: move common defines to mman-common.h (Nico Pache) [2089496] - mm: fix the MAP_UNINITIALIZED flag (Nico Pache) [2089496] - mm: vmalloc: show number of vmalloc pages in /proc/meminfo (Nico Pache) [2089496] - slab: remove /proc/slab_allocators (Nico Pache) [2089496] - mm/huge_memory.c: fix "orig_pud" set but not used (Nico Pache) [2089496] - mm: hwpoison: use do_send_sig_info() instead of force_sig() (Nico Pache) [2089496] - mm, page_alloc: drop should_suppress_show_mem (Nico Pache) [2089496] - mm,page_alloc: PF_WQ_WORKER threads must sleep at should_reclaim_retry() (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for perf counters setup (Nico Pache) [2089496] - powerpc/8xx: Use patch_site for memory setup patching (Nico Pache) [2089496] - Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED for CONFIG_SWAP" (Nico Pache) [2089496] - mm/swapfile.c: put_swap_page: share more between huge/normal code path (Nico Pache) [2089496] - mm, swap, get_swap_pages: use entry_size instead of cluster in parameter (Nico Pache) [2089496] - mm/swapfile.c: add __swap_entry_free_locked() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in put_swap_page() (Nico Pache) [2089496] - mm/swapfile.c: unify normal/huge code path in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm/swapfile.c: replace some #ifdef with IS_ENABLED() (Nico Pache) [2089496] - mm: swap: add comments to lock_cluster_or_swap_info() (Nico Pache) [2089496] - mm/swapfile.c: use swap_count() in swap_page_trans_huge_swapped() (Nico Pache) [2089496] - mm, oom: remove sleep from under oom_lock (Nico Pache) [2089496] - mm/hugetlb: remove gigantic page support for HIGHMEM (Nico Pache) [2089496] - mm/page-writeback.c: update stale account_page_redirty() comment (Nico Pache) [2089496] - shmem: use monotonic time for i_generation (Nico Pache) [2089496] - mptcp: increase default max additional subflows to 2 (Paolo Abeni) [2127136] - ipv6/addrconf: fix a null-ptr-deref bug for ip6_ptr (Davide Caratti) [2103990] - ipv6: Refactor fib6_ignore_linkdown (Davide Caratti) [2103990] - Revert "net: af_key: add check for pfkey_broadcast in function pfkey_process" (Davide Caratti) [2103990] - net: af_key: add check for pfkey_broadcast in function pfkey_process (Davide Caratti) [2103990] - certs: Add FIPS selftests (Vladis Dronov) [2134828] - certs: Move load_certificate_list() to be with the asymmetric keys code (Vladis Dronov) [2134828]- selftests/bpf: Limit unroll_count for pyperf600 test (Viktor Malik) [2139128]- perf affinity: Fix out of bound access to "sched_cpus" mask (Michael Petlan) [2125952] - net: skb: introduce and use a single page frag cache (Paolo Abeni) [2063335] - powerpc/pseries/vas: Pass hw_cpu_id to node associativity HCALL (Steve Best) [2131651] - agp/intel: Rename intel-gtt symbols (Jocelyn Falempe) [2115871] - drm/i915/gt: Split intel-gtt functions by arch (Jocelyn Falempe) [2115871] - drm: Implement DRM aperture helpers under video/ (Jocelyn Falempe) [2115871] - efi: Fix build error due to enum collision between efi.h and ima.h (Jocelyn Falempe) [2115871] - Revert "workqueue: remove unused cancel_work()" (Jocelyn Falempe) [2115871] - dma-buf: fix use of DMA_BUF_SET_NAME_{A,B} in userspace (Jocelyn Falempe) [2115871] - drm/i915/gsc: add gsc as a mei auxiliary device (Jocelyn Falempe) [2115871] - drm/i915: Prepare for multiple GTs (Jocelyn Falempe) [2115871] - drm/i915/gt: add gt_is_root() helper (Jocelyn Falempe) [2115871] - drm/i915: Rename INTEL_REGION_LMEM with INTEL_REGION_LMEM_0 (Jocelyn Falempe) [2115871] - drm/i915: fixup the initial fb base on DGFX (Jocelyn Falempe) [2115871] - drm/i915: add i915_gem_object_create_region_at() (Jocelyn Falempe) [2115871] - drm/i915: Report steering details in debugfs (Jocelyn Falempe) [2115871] - x86/gpu: include drm/i915_pciids.h directly in early quirks (Jocelyn Falempe) [2115871] - staging: fbtft: core: set smem_len before fb_deferred_io_init call (Jocelyn Falempe) [2115871] - fbdev: Put mmap for deferred I/O into drivers (Jocelyn Falempe) [2115871] - fbdev: Track deferred-I/O pages in pageref struct (Jocelyn Falempe) [2115871] - fbdev: defio: fix the pagelist corruption (Jocelyn Falempe) [2115871] - fbdev: Don't sort deferred-I/O pages by default (Jocelyn Falempe) [2115871] - staging: fbtft: Add spaces around / - Style (Jocelyn Falempe) [2115871] - fbdev/defio: Early-out if page is already enlisted (Jocelyn Falempe) [2115871] - panic, kexec: make __crash_kexec() NMI safe (Valentin Schneider) [2134126] - kexec: turn all kexec_mutex acquisitions into trylocks (Valentin Schneider) [2134126] - kexec: move locking into do_kexec_load (Valentin Schneider) [2134126] - ice: Fix interface being down after reset with link-down-on-close flag on (Petr Oros) [2024110] - ice: Add low latency Tx timestamp read (Petr Oros) [2092425] - ice: introduce ice_ptp_reset_cached_phctime function (Petr Oros) [2092425] - ice: re-arrange some static functions in ice_ptp.c (Petr Oros) [2092425] - ice: track and warn when PHC update is late (Petr Oros) [2092425] - ice: track Tx timestamp stats similar to other Intel drivers (Petr Oros) [2092425] - ice: implement adjfine with mul_u64_u64_div_u64 (Petr Oros) [2092425] - ice: Add EXTTS feature to the feature bitmap (Petr Oros) [2092425] - math: Export mul_u64_u64_div_u64 (Petr Oros) [2092425] - neighbour: allow NUD_NOARP entries to be forced GCed (Xin Long) [2076534] - neighbour: Prevent Race condition in neighbour subsytem (Xin Long) [2076534] - neighbour: Prevent a dead entry from updating gc_list (Xin Long) [2076534] - net: Exempt multicast addresses from five-second neighbor lifetime (Xin Long) [2076534] - neighbor: Reset gc_entries counter if new entry is released before insert (Xin Long) [2076534] - neighbor: Remove externally learned entries from gc_list (Xin Long) [2076534] - neighbor: Move neigh_update_ext_learned to core file (Xin Long) [2076534] - neighbor: Remove state and flags arguments to neigh_del (Xin Long) [2076534] - neighbor: Fix state check in neigh_forced_gc (Xin Long) [2076534] - neighbor: Fix locking order for gc_list changes (Xin Long) [2076534] - neighbor: gc_list changes should be protected by table lock (Xin Long) [2076534] - neighbor: Improve garbage collection (Xin Long) [2076534] - neighbour: send netlink notification if NTF_ROUTER changes (Xin Long) [2076534] - neighbour: allow admin to set NTF_ROUTER (Xin Long) [2076534] - s390/dasd: add device ping attribute (Tobias Huschle) [2043877] - s390/dasd: suppress generic error messages for PPRC secondary devices (Tobias Huschle) [2043877] - s390/dasd: add ioctl to perform a swap of the drivers copy pair (Tobias Huschle) [2043877] - s390/dasd: add copy pair swap capability (Tobias Huschle) [2043877] - s390/dasd: add copy pair setup (Tobias Huschle) [2043877] - s390/dasd: add query PPRC function (Tobias Huschle) [2043877] - s390/dasd: put block allocation in separate function (Tobias Huschle) [2043877] - s390/dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup (Tobias Huschle) [2043877] - s390/qeth: Split memcpy() of struct qeth_ipacmd_addr_change flexible array (Tobias Huschle) [2110426] - s390/qeth: Fix typo 'the the' in comment (Tobias Huschle) [2110426] - s390/qdio: Fix spelling mistake (Tobias Huschle) [2110426] - qeth: remove a copy of the NAPI_POLL_WEIGHT define (Tobias Huschle) [2110426] - scsi: bnx2fc: Avoid using get_cpu() in bnx2fc_cmd_alloc() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix spelling mistake "mis-match" -> "mismatch" (Nilesh Javali) [2109895] - scsi: bnx2fc: Make use of the helper macro kthread_run() (Nilesh Javali) [2109895] - scsi: bnx2fc: Fix typo in comments (Nilesh Javali) [2109895] - scsi: qedf: Populate sysfs attributes for vport (Nilesh Javali) [2120219] - scsi: qedf: Fix typo in comment (Nilesh Javali) [2109893] - scsi: qedf: Remove redundant variable op (Nilesh Javali) [2109893] - scsi: qedf: Remove an unneeded NULL check on list iterator (Nilesh Javali) [2109893] - scsi: qedf: Remove unnecessary code (Nilesh Javali) [2109893] - s390/sclp: reserve memory occupied by sclp early buffer (Mete Durlu) [2060830] - s390: make command line configurable (Mete Durlu) [2060830] - s390: support command lines longer than 896 bytes (Mete Durlu) [2060830] - s390/kexec_file: move kernel image size check (Mete Durlu) [2060830] - s390/boot: move sclp early buffer from fixed address in asm to C (Mete Durlu) [2060830] - drivers/base: Fix unsigned comparison to -1 in CPUMAP_FILE_MAX_BYTES (Phil Auld) [2115518] - sched/core: Do not requeue task on CPU excluded from cpus_mask (Phil Auld) [2115518] - workqueue: Avoid a false warning in unbind_workers() (Phil Auld) [2115518] - sched/core: Always flush pending blk_plug (Phil Auld) [2115518] - sched/fair: fix case with reduced capacity CPU (Phil Auld) [2115518] - sched: Remove unused function group_first_cpu() (Phil Auld) [2115518] - sched/fair: Remove redundant word " *" (Phil Auld) [2115518] - sched: only perform capability check on privileged operation (Phil Auld) [2115518] - sched: Allow newidle balancing to bail out of load_balance (Phil Auld) [2115518] - sched: Remove the limitation of WF_ON_CPU on wakelist if wakee cpu is idle (Phil Auld) [2115518] - sched: Fix the check of nr_running at queue wakelist (Phil Auld) [2115518] - sched: Fix balance_push() vs __sched_setscheduler() (Phil Auld) [2115518] - sched/fair: Optimize and simplify rq leaf_cfs_rq_list (Phil Auld) [2115518] - topology: Remove unused cpu_cluster_mask() (Phil Auld) [2115518] - sched: Update task_tick_numa to ignore tasks without an mm (Phil Auld) [2115518] - sched/deadline: Remove superfluous rq clock update in push_dl_task() (Phil Auld) [2115518] - time/sched_clock: Fix formatting of frequency reporting code (Phil Auld) [2115518] - time/sched_clock: Use Hz as the unit for clock rate reporting below 4kHz (Phil Auld) [2115518] - time/sched_clock: Round the frequency reported to nearest rather than down (Phil Auld) [2115518] - sched/fair: Delete useless condition in tg_unthrottle_up() (Phil Auld) [2115518] - sched/fair: Fix cfs_rq_clock_pelt() for throttled cfs_rq (Phil Auld) [2115518] - workqueue: Restrict kworker in the offline CPU pool running on housekeeping CPUs (Phil Auld) [2115518] - kernel/sched: Remove dl_boosted flag comment (Phil Auld) [2115518] - workqueue: Remove schedule() in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove outdated comment about exceptional workers in unbind_workers() (Phil Auld) [2115518] - workqueue: Remove the advanced kicking of the idle workers in rebind_workers() (Phil Auld) [2115518] - workqueue: Fix unbind_workers() VS wq_worker_running() race (Phil Auld) [2115518] - sched/membarrier: fix missing local execution of ipi_sync_rq_state() (Phil Auld) [2115518] - kthread: Move prio/affinite change into the newly created thread (Phil Auld) [2115518]- dmaengine: idxd: Correct IAX operation code names (Jerry Snitselaar) [2112121] - dmaengine: dmatest: use strscpy to replace strlcpy (Jerry Snitselaar) [2112121] - dmaengine: remove DMA_MEMCPY_SG once again (Jerry Snitselaar) [2112121] - MAINTAINERS: idxd driver maintainer update (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Replace symbolic permissions by octal permissions (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Remove spaces before tabs (Jerry Snitselaar) [2112121] - dma:dw: remove reference to AVR32 architecture in core.c (Jerry Snitselaar) [2112121] - dmaengine: idxd: Only call idxd_enable_system_pasid() if succeeded in enabling SVA feature (Jerry Snitselaar) [2112121] - dmaengine: idxd: force wq context cleanup on device disable path (Jerry Snitselaar) [2112121] - dmaengine: Revert "dmaengine: add verification of DMA_INTERRUPT capability for dmatest" (Jerry Snitselaar) [2112121] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2112121] - dmaengine: ptdma: statify pt_tx_status (Jerry Snitselaar) [2112121] - dmaengine: hidma: In hidma_prep_dma_memset treat value as a single byte (Jerry Snitselaar) [2112121] - dmaengine: Document dmaengine_prep_dma_memset (Jerry Snitselaar) [2112121] - dmaengine: PTDMA: support polled mode (Jerry Snitselaar) [2112121] - dmaengine: Remove a useless mutex (Jerry Snitselaar) [2112121] - dmaengine: idxd: update IAA definitions for user header (Jerry Snitselaar) [2112121] - dmaengine: Clarify cyclic transfer residue documentation (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: iot: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: use default_groups in kobj_type (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Correctly describe dmatest with channel unset (Jerry Snitselaar) [2112121] - Documentation: dmaengine: Add a description of what dmatest does (Jerry Snitselaar) [2112121] - dmaengine: Add core function and capability check for DMA_MEMCPY_SG (Jerry Snitselaar) [2112121] - dmaengine: Add documentation for new memcpy scatter-gather function (Jerry Snitselaar) [2112121] - dmaengine: remove slave_id config field (Jerry Snitselaar) [2112121] - dmaengine: ioat: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: hsu: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: dw: switch from 'pci_' to 'dma_' API (Jerry Snitselaar) [2112121] - dmaengine: remove debugfs #ifdef (Jerry Snitselaar) [2112121] - dmaengine: dmaengine_desc_callback_valid(): Check for `callback_result` (Jerry Snitselaar) [2112121] - dmaengine: Remove redundant initialization of variable err (Jerry Snitselaar) [2112121] - dmaengine: Extend the dma_slave_width for 128 bytes (Jerry Snitselaar) [2112121] - dmaengine: ioat: depends on !UML (Jerry Snitselaar) [2112121] - dmaengine: dw: Simplify DT property parser (Jerry Snitselaar) [2112121] - dmaengine: dw: Convert members to u32 in platform data (Jerry Snitselaar) [2112121] - dmaengine: dw: Remove error message from DT parsing code (Jerry Snitselaar) [2112121] - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is not yet available (Jerry Snitselaar) [2112121] - dmaengine: hsu: Account transferred bytes (Jerry Snitselaar) [2112121] - dmaengine: Move kdoc description of struct dma_chan_percpu closer to it (Jerry Snitselaar) [2112121] - dmaengine: QCOM_HIDMA_MGMT depends on HAS_IOMEM (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: comment platform_driver_register call (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: remove unused code (Jerry Snitselaar) [2112121] - dmaengine: Fix a double free in dma_async_device_register (Jerry Snitselaar) [2112121] - dmaengine: hsu: disable spurious interrupt (Jerry Snitselaar) [2112121] - dmaengine: Extend the dmaengine_alignment for 128 and 256 bytes (Jerry Snitselaar) [2112121] - dmaengine: dmatest: Use dmaengine_get_dma_device (Jerry Snitselaar) [2112121] - dmaengine: doc: client: Update for dmaengine_get_dma_device() usage (Jerry Snitselaar) [2112121] - dmaengine: Add support for per channel coherency handling (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Add support for optional router configuration callback (Jerry Snitselaar) [2112121] - dmaengine: add peripheral configuration (Jerry Snitselaar) [2112121] - dmaengine: idma64: Switch to use __maybe_unused instead of ifdeffery (Jerry Snitselaar) [2112121] - dmaengine: ioatdma: remove unused function missed during dma_v2 removal (Jerry Snitselaar) [2112121] - dmaengine: Save few bytes and increase readability of dma_request_chan() (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling (Jerry Snitselaar) [2112121] - dmaengine: dw: Don't include unneeded header to platform data header (Jerry Snitselaar) [2112121] - dmaengine: linux/dmaengine.h: drop duplicated word in a comment (Jerry Snitselaar) [2112121] - dmaengine: ioat: Fix some parameter misspelling and provide description for phys_complete (Jerry Snitselaar) [2112121] - dmaengine: of-dma: Fix misspellings/formatting issues in some function headers (Jerry Snitselaar) [2112121] - Documentation/driver-api: dmaengine/provider: drop doubled word (Jerry Snitselaar) [2112121] - dmaengine: Add support for repeating transactions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: use true,false for bool variable (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Simplify error handling path in hidma_probe (Jerry Snitselaar) [2112121] - dmaengine: Fix misspelling of "Analog Devices" (Jerry Snitselaar) [2112121] - docs: dmaengine: provider.rst: get rid of some warnings (Jerry Snitselaar) [2112121] - dmaengine: doc: fix warnings/issues of client.rst (Jerry Snitselaar) [2112121] - dmaengine: doc: Properly indent metadata title (Jerry Snitselaar) [2112121] - dmaengine: doc: Add sections for per descriptor metadata support (Jerry Snitselaar) [2112121] - dmaengine: Fix Kconfig indentation (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma_mgmt: Add of_node_put() before goto (Jerry Snitselaar) [2112121] - dmaengine: Remove dev_err() usage after platform_get_irq() (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: Remove call to memset after dmam_alloc_coherent (Jerry Snitselaar) [2112121] - Documentation: dmaengine: clean up description of dmatest usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Revert "set HSU_CH_MTSR to memory width" (Jerry Snitselaar) [2112121] - dmaengine: qcom: hidma: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: assign channel cookie correctly (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_* (Jerry Snitselaar) [2112121] - dmaengine: qcom_hidma: convert to DEFINE_SHOW_ATTRIBUTE (Jerry Snitselaar) [2112121] - dmaengine: Documentation: Add documentation for multi chan testing (Jerry Snitselaar) [2112121] - dmaengine: hsu: remove dma_slave_config direction usage (Jerry Snitselaar) [2112121] - dmaengine: hsu: Support dmaengine_terminate_sync() (Jerry Snitselaar) [2112121] - scsi: core: Allow the ALUA transitioning state enough time (Tomas Henzl) [2084250] - scsi: core: Return BLK_STS_TRANSPORT for ALUA transitioning (Tomas Henzl) [2084250] - macvlan: enforce a consistent minimal mtu (Davide Caratti) [2134032] - ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header (Davide Caratti) [2134032] - net: ipvtap - add __init/__exit annotations to module init/exit funcs (Davide Caratti) [2134032] - tunnels: do not assume mac header is set in skb_tunnel_check_pmtu() (Guillaume Nault) [2134099] - erspan: do not assume transport header is always set (Guillaume Nault) [2134099] - net: ip_gre: do not report erspan_ver for gre or gretap (Guillaume Nault) [2134099] - selftests: Fix the if conditions of in test_extra_filter() (Hangbin Liu) [2135232] - selftests: forwarding: add shebang for sch_red.sh (Hangbin Liu) [2135232] - selftests: forwarding: fix error message in learning_test (Hangbin Liu) [2135232] - selftests/net: pass ipv6_args to udpgso_bench's IPv6 TCP test (Hangbin Liu) [2135232] - ping: remove pr_err from ping_lookup (Guillaume Nault) [2135424] - ping: fix the dif and sdif check in ping_lookup (Guillaume Nault) [2135424] - ping: fix the sk_bound_dev_if match in ping_lookup (Guillaume Nault) [2135424] - tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct(). (Hangbin Liu) [2135259] - udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM). (Hangbin Liu) [2135259] - tcp/udp: Fix memory leak in ipv6_renew_options(). (Hangbin Liu) [2135259] - ipv6: sr: fix out-of-bounds read when setting HMAC data. (Hangbin Liu) [2135259] - ipv6: do not use RT_TOS for IPv6 flowlabel (Hangbin Liu) [2135259] - ipv6/sit: fix ipip6_tunnel_get_prl return value (Hangbin Liu) [2135259] - sit: use min (Hangbin Liu) [2135259] - net: ipv6: unexport __init-annotated seg6_hmac_init() (Hangbin Liu) [2135259] - sit: do not call ipip6_dev_free() from sit_init_net() (Hangbin Liu) [2135259] - block: avoid sign extend problem with default queue flags mask (Nico Pache) [2131929] - mm/hwpoison: do not lock page again when me_huge_page() successfully recovers (Aristeu Rozanski) [2110292] - crypto: ccp - Remove the unneeded result variable (Vladis Dronov) [2130195] - crypto: ccp - Release dma channels before dmaengine unrgister (Vladis Dronov) [2130195] - crypto: ccp - Fail the PSP initialization when writing psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Initialize PSP when reading psp data file failed (Vladis Dronov) [2130195] - crypto: ccp - Add a quirk to firmware update (Vladis Dronov) [2130195] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [2130195] - crypto: ccp - During shutdown, check SEV data pointer before using (Vladis Dronov) [2130195] - crypto: ccp - Fix device IRQ counting by using platform_irq_count() (Vladis Dronov) [2130195] - crypto: ccp - fix typo in comment (Vladis Dronov) [2130195] - crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent kernel memory leak (Vladis Dronov) [2130195] - crypto: ccp - Fix the INIT_EX data file open failure (Vladis Dronov) [2130195] - crypto: ccp - Log when resetting PSP SEV state (Vladis Dronov) [2130195] - crypto: ccp - When TSME and SME both detected notify user (Vladis Dronov) [2130195] - crypto: ccp - Allow PSP driver to load without SEV/TEE support (Vladis Dronov) [2130195] - crypto: ccp - Export PSP security bits to userspace (Vladis Dronov) [2130195] - crypto: ccp - cache capability into psp device (Vladis Dronov) [2130195] - PCI: Add support for dev_groups to struct pci_driver (Vladis Dronov) [2130195] - ACPI: processor idle: Practically limit "Dummy wait" workaround to old Intel systems (Wei Huang) [2130653] - blk-mq: fix io hung due to missing commit_rqs (Ming Lei) [2130028] - block: schedule queue restart after BLK_STS_ZONE_RESOURCE (Ming Lei) [2130028] - blk-mq: call commit_rqs while list empty but error happen (Ming Lei) [2130028] - null_blk: fix ida error handling in null_add_dev() (Ming Lei) [2130028] - blktrace: Trace remapped requests correctly (Ming Lei) [2130028] - virtio_blk: fix the discard_granularity and discard_alignment queue limits (Ming Lei) [2130028] - block: fix bio_clone_blkg_association() to associate with proper blkcg_gq (Ming Lei) [2130028] - blk-mq: do not update io_ticks with passthrough requests (Ming Lei) [2130028] - blk-mq: don't touch ->tagset in blk_mq_get_sq_hctx (Ming Lei) [2130028] - ipmi:ipmb: Fix refcount leak in ipmi_ipmb_probe (Tony Camuso) [2130238] - ipmi: remove unnecessary type castings (Tony Camuso) [2130238] - ipmi: Make two logs unique (Tony Camuso) [2130238] - ipmi:si: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Convert pr_debug() to dev_dbg() (Tony Camuso) [2130238] - ipmi: Fix pr_fmt to avoid compilation issues (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_recv_msg struct (Tony Camuso) [2130238] - ipmi: Add an intializer for ipmi_smi_msg struct (Tony Camuso) [2130238] - ipmi:ssif: Check for NULL msg when handling events and messages (Tony Camuso) [2130238] - ipmi: use simple i2c probe function (Tony Camuso) [2130238] - ipmi: Add a sysfs count of total outstanding messages for an interface (Tony Camuso) [2130238] - ipmi: Add a sysfs interface to view the number of users (Tony Camuso) [2130238] - ipmi: Limit the number of message a user may have outstanding (Tony Camuso) [2130238] - ipmi: Add a limit on the number of users that may use IPMI (Tony Camuso) [2130238] - ipmi:ipmi_ipmb: Fix null-ptr-deref in ipmi_unregister_smi() (Tony Camuso) [2130238] - ipmi: When handling send message responses, don't process the message (Tony Camuso) [2130238] - ipmi: fix IPMI_SMI_MSG_TYPE_IPMB_DIRECT response length checking (Tony Camuso) [2130238] - ipmi: fix oob access due to uninit smi_msg type (Tony Camuso) [2130238] - ipmi: Make kABI adjustments (Tony Camuso) [2130238] - ipmi: Add support for IPMB direct messages (Tony Camuso) [2130238] - ice: Fix crash by keep old cfg when update TCs more than queues (Petr Oros) [2129902] - ice: Fix tunnel checksum offload with fragmented traffic (Petr Oros) [2129902] - ice: handle E822 generic device ID in PLDM header (Petr Oros) [2129902] - ice: ethtool: Prohibit improper channel config for DCB (Petr Oros) [2129902] - ice: ethtool: advertise 1000M speeds properly (Petr Oros) [2129902] - ice: Fix switchdev rules book keeping (Petr Oros) [2129902] - ice: fix access-beyond-end in the switch code (Petr Oros) [2129902] - eth: ice: silence the GCC 12 array-bounds warning (Petr Oros) [2129902] - ice: Expose RSS indirection tables for queue groups via ethtool (Petr Oros) [2129902] - Revert "ice: Hide bus-info in ethtool for PRs in switchdev mode" (Petr Oros) [2129902] - ice: remove period on argument description in ice_for_each_vf (Petr Oros) [2129902] - ice: add a function comment for ice_cfg_mac_antispoof (Petr Oros) [2129902] - ice: fix wording in comment for ice_reset_vf (Petr Oros) [2129902] - ice: remove return value comment for ice_reset_all_vfs (Petr Oros) [2129902] - ice: always check VF VSI pointer values (Petr Oros) [2129902] - ice: add newline to dev_dbg in ice_vf_fdir_dump_info (Petr Oros) [2129902] - ice: get switch id on switchdev devices (Petr Oros) [2129902] - ice: return ENOSPC when exceeding ICE_MAX_CHAIN_WORDS (Petr Oros) [2129902] - ice: introduce common helper for retrieving VSI by vsi_num (Petr Oros) [2129902] - ice: use min_t() to make code cleaner in ice_gnss (Petr Oros) [2129902] - ice: Add mpls+tso support (Petr Oros) [2129902] - ice: switch: convert packet template match code to rodata (Petr Oros) [2129902] - ice: switch: use convenience macros to declare dummy pkt templates (Petr Oros) [2129902] - ice: switch: use a struct to pass packet template params (Petr Oros) [2129902] - ice: switch: unobscurify bitops loop in ice_fill_adv_dummy_packet() (Petr Oros) [2129902] - ice: switch: add and use u16[] aliases to ice_adv_lkup_elem::{h, m}_u (Petr Oros) [2129902] - ice: Support GTP-U and GTP-C offload in switchdev (Petr Oros) [2129902] - ice: Remove useless DMA-32 fallback configuration (Petr Oros) [2129902] - ice: switch to napi_build_skb() (Petr Oros) [2129902] - nbd: fix race between nbd_alloc_config() and module removal (Ming Lei) [2127601] - nbd: call genl_unregister_family() first in nbd_cleanup() (Ming Lei) [2127601] - kselftests: memcg: speed up the memory.high test (Waiman Long) [1839057] - tools/testing/selftests/cgroup/cgroup_util.c: cg_read_strcmp: fix null pointer dereference (Waiman Long) [1839057] - kselftest/cgroup: fix incorrect test_core skip (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_core (Waiman Long) [1839057] - selftests: cgroup: fix cleanup path in test_memcg_subtree_control() (Waiman Long) [1839057] - cgroup: fix an error handling path in alloc_pagecache_max_30M() (Waiman Long) [1839057] - selftests: memcg: expect no low events in unprotected sibling (Waiman Long) [1839057] - selftests: memcg: fix compilation (Waiman Long) [1839057] - kseltest/cgroup: Make test_stress.sh work if run interactively (Waiman Long) [1839057] - cgroup: fix racy check in alloc_pagecache_max_30M() helper function (Waiman Long) [1839057] - cgroup: remove racy check in test_memcg_sock() (Waiman Long) [1839057] - cgroup: account for memory_localevents in test_memcg_oom_group_leaf_events() (Waiman Long) [1839057] - cgroup: account for memory_recursiveprot in test_memcg_low() (Waiman Long) [1839057] - cgroups: refactor children cgroups in memcg tests (Waiman Long) [1839057] - kselftest/cgroup: fix test_stress.sh to use OUTPUT dir (Waiman Long) [1839057] - selftests: cgroup: add a selftest for memory.reclaim (Waiman Long) [1839057] - selftests: cgroup: fix alloc_anon_noexit() instantly freeing memory (Waiman Long) [1839057] - selftests: cgroup: return -errno from cg_read()/cg_write() on failure (Waiman Long) [1839057] - memcg: introduce per-memcg reclaim interface (Waiman Long) [1839057] - kselftests: memcg: update the oom group leaf events test (Waiman Long) [1839057] - mm/memcontrol: return 1 from cgroup.memory __setup() handler (Waiman Long) [1839057] - memcg: synchronously enforce memory.high for large overcharges (Waiman Long) [1839057] - selftests: memcg: test high limit for single entry allocation (Waiman Long) [1839057] - memcg: unify force charging conditions (Waiman Long) [1839057] - memcg: refactor mem_cgroup_oom (Waiman Long) [1839057] - memcg: prohibit unconditional exceeding the limit of dying tasks (Waiman Long) [1839057] - mm, oom: do not trigger out_of_memory from the #PF (Waiman Long) [1839057] - mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks (Waiman Long) [1839057] - mm: memcontrol: fix root_mem_cgroup charging (Waiman Long) [1839057] - tests/cgroup: move cg_wait_for(), cg_prepare_for_wait() (Waiman Long) [1839057] - mm: memcontrol: don't count limit-setting reclaim as memory pressure (Waiman Long) [1839057] - selftests: Uninitialized variable in test_cgcore_proc_migration() (Waiman Long) [1839057] - kselftests: cgroup: Avoid the reuse of fd after it is deallocated (Waiman Long) [1839057] - selftests: cgroup: Run test_core under interfering stress (Waiman Long) [1839057] - selftests: cgroup: Add task migration tests (Waiman Long) [1839057] - selftests: cgroup: Simplify task self migration (Waiman Long) [1839057] - cgroup: kselftest: relax fs_spec checks (Waiman Long) [1839057] - kselftests: cgroup: remove duplicated include from test_freezer.c (Waiman Long) [1839057] - kselftest/cgroup: fix unexpected testing failure on test_memcontrol (Waiman Long) [1839057] - kselftests: cgroup: add freezer controller self-tests (Waiman Long) [1839057] - Add tests for memory.oom.group (Waiman Long) [1839057] - Fix cg_read_strcmp() (Waiman Long) [1839057] - cgroup: kselftests: add test_core to .gitignore (Waiman Long) [1839057] - selftests: cgroup: add gitignore file (Waiman Long) [1839057] - Add cgroup core selftests (Waiman Long) [1839057] - devdax: Fix soft-reservation memory description (Mark Langsdorf) [2122316] - arm64: cacheinfo: Fix incorrect assignment of signed error value to unsigned fw_level (Mark Langsdorf) [2122316] - ACPI: property: Remove default association from integer maximum values (Mark Langsdorf) [2122316] - ACPI: property: Ignore already existing data node tags (Mark Langsdorf) [2122316] - ACPI: property: Fix type detection of unified integer reading functions (Mark Langsdorf) [2122316] - ACPI: processor: Remove freq Qos request for all CPUs (Mark Langsdorf) [2122316] - ACPI: property: Fix error handling in acpi_init_properties() (Mark Langsdorf) [2122316] - ACPI/IORT: Fix build error implicit-function-declaration (Mark Langsdorf) [2122316] - ACPI/PCI: Remove useless NULL pointer checks (Mark Langsdorf) [2122316] - ACPI: property: Read buffer properties as integers (Mark Langsdorf) [2122316] - ACPI: property: Add support for parsing buffer property UUID (Mark Langsdorf) [2122316] - ACPI: property: Unify integer value reading functions (Mark Langsdorf) [2122316] - ACPI: property: Switch node property referencing from ifs to a switch (Mark Langsdorf) [2122316] - ACPI: property: Move property ref argument parsing into a new function (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_object_type consistently in property ref parsing (Mark Langsdorf) [2122316] - ACPI: property: Tie data nodes to acpi handles (Mark Langsdorf) [2122316] - ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool (Mark Langsdorf) [2122316] - ACPI: CPPC: Do not prevent CPPC from working in the future (Mark Langsdorf) [2122316] - ACPI: PM: x86: Print messages regarding LPS0 idle support (Mark Langsdorf) [2122316] - ACPI: PPTT: Leave the table mapped for the runtime usage (Mark Langsdorf) [2122316] - ACPI: resource: skip IRQ override on AMD Zen platforms (Mark Langsdorf) [2122316] - ACPI: irq: Allow acpi_gsi_to_irq() to have an arch-specific fallback (Mark Langsdorf) [2122316] - APCI: irq: Add support for multiple GSI domains (Mark Langsdorf) [2122316] - irqchip/gic: Drop support for secondary GIC in non-DT systems (Mark Langsdorf) [2122316] - ACPI: video: Use native backlight on Dell Inspiron N4010 (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Use LPS0 idle if ACPI_FADT_LOW_POWER_S0 is unset (Mark Langsdorf) [2122316] - Revert "[acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT" (Mark Langsdorf) [2122316] - ACPI: utils: Add api to read _SUB from ACPI (Mark Langsdorf) [2122316] - ACPI: video: Shortening quirk list by identifying Clevo by board_name only (Mark Langsdorf) [2122316] - ACPI: video: Force backlight native for some TongFang devices (Mark Langsdorf) [2122316] - PCI/ACPI: Guard ARM64-specific mcfg_quirks (Mark Langsdorf) [2122316] - ACPI/IORT: Add a helper to retrieve RMR info directly (Mark Langsdorf) [2122316] - ACPI/IORT: Add support to retrieve IORT RMR reserved regions (Mark Langsdorf) [2122316] - ACPI/IORT: Provide a generic helper to retrieve reserve regions (Mark Langsdorf) [2122316] - ACPI/IORT: Make iort_iommu_msi_get_resv_regions() return void (Mark Langsdorf) [2122316] - iommu: Introduce a callback to struct iommu_resv_region (Mark Langsdorf) [2122316] - ACPI: PM: s2idle: Add support for upcoming AMD uPEP HID AMDI008 (Mark Langsdorf) [2122316] - ACPI: PPTT: Use table offset as fw_token instead of virtual address (Mark Langsdorf) [2122316] - ACPI: Move PRM config option under the main ACPI config (Mark Langsdorf) [2122316] - ACPI: Enable Platform Runtime Mechanism(PRM) support on ARM64 (Mark Langsdorf) [2122316] - efi: Simplify arch_efi_call_virt() macro (Mark Langsdorf) [2122316] - efi/x86: Avoid redundant cast of EFI firmware service pointer (Mark Langsdorf) [2122316] - efi/libstub: Annotate firmware routines as __efiapi (Mark Langsdorf) [2122316] - ACPI: PRM: Change handler_addr type to void pointer (Mark Langsdorf) [2122316] - ACPI: bus: Drop driver member of struct acpi_device (Mark Langsdorf) [2122316] - ACPI: bus: Drop redundant check in acpi_device_remove() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP (Mark Langsdorf) [2122316] - ACPI: LPSS: Fix missing check in register_device_clock() (Mark Langsdorf) [2122316] - ACPI: APEI: Better fix to avoid spamming the console with old error logs (Mark Langsdorf) [2122316] - ACPI: PM: save NVS memory for Lenovo G40-45 (Mark Langsdorf) [2122316] - ACPI: EC: Drop unused ident initializers from dmi_system_id tables (Mark Langsdorf) [2122316] - ACPI: EC: Re-use boot_ec when possible even when EC_FLAGS_TRUST_DSDT_GPE is set (Mark Langsdorf) [2122316] - ACPI: EC: Drop the EC_FLAGS_IGNORE_DSDT_GPE quirk (Mark Langsdorf) [2122316] - ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks (Mark Langsdorf) [2122316] - ACPI: processor: Drop leftover acpi_processor_get_limit_info() declaration (Mark Langsdorf) [2122316] - ACPI: processor: Split out thermal initialization from ACPI PSS (Mark Langsdorf) [2122316] - redhat/configs: move CONFIG_ACPI_VIDEO to common/generic (Mark Langsdorf) [2122316] - ACPI: video: Drop X86 dependency from Kconfig (Mark Langsdorf) [2122316] - ACPI: video: Fix acpi_video_handles_brightness_key_presses() (Mark Langsdorf) [2122316] - ACPI: video: Change how we determine if brightness key-presses are handled (Mark Langsdorf) [2122316] - ACPI / MMC: PM: Unify fixing up device power (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Use the new soc_intel_is_byt() helper (Mark Langsdorf) [2122316] - mmc: sdhci-acpi: Remove special handling for GPD win/pocket devices (Mark Langsdorf) [2122316] - ACPI: scan: Walk ACPI device's children using driver core (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child_reverse() (Mark Langsdorf) [2122316] - ACPI: video: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: property: Use acpi_dev_for_each_child() for child lookup (Mark Langsdorf) [2122316] - ACPI: container: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: bus: Export acpi_dev_for_each_child() to modules (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_find_child_by_adr() (Mark Langsdorf) [2122316] - ACPI: glue: Introduce acpi_dev_has_children() (Mark Langsdorf) [2122316] - ACPI: glue: Use acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: APEI: Fix double word in a comment (Mark Langsdorf) [2122316] - ACPI: processor/idle: Annotate more functions to live in cpuidle section (Mark Langsdorf) [2122316] - ACPI: DPTF: Support Meteor Lake (Mark Langsdorf) [2122316] - ACPI: CPPC: fix typo in comment (Mark Langsdorf) [2122316] - ACPI: video: improve PM notifer callback (Mark Langsdorf) [2122316] - ACPI: utils: include UUID in _DSM evaluation warning (Mark Langsdorf) [2122316] - cpufreq: CPPC: Enable fast_switch (Mark Langsdorf) [2122316] - acpi/nfit: rely on mce->misc to determine poison granularity (Mark Langsdorf) [2122316] - ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default (Mark Langsdorf) [2122316] - ACPI: clean up white space in a few places for consistency (Mark Langsdorf) [2122316] - ACPI: glue: Rearrange find_child_checks() (Mark Langsdorf) [2122316] - ACPI: DPTF: Add support for high frequency impedance notification (Mark Langsdorf) [2122316] - ACPI: processor: idle: Expose max_cstate/nocst/bm_check_disable read-only in sysfs (Mark Langsdorf) [2122316] - ACPI: battery: Make "not-charging" the default on no charging or full info (Mark Langsdorf) [2122316] - PCI/ACPI: negotiate CXL _OSC (Mark Langsdorf) [2122316] - PCI/ACPI: Prefer CXL _OSC instead of PCIe _OSC for CXL host bridges (Mark Langsdorf) [2122316] - PCI/ACPI: add a helper for retrieving _OSC Control DWORDs (Mark Langsdorf) [2122316] - ACPI: bus: Avoid non-ACPI device objects in walks over children (Mark Langsdorf) [2122316] - ACPI: DPTF: Correct description of INT3407 / INT3532 attributes (Mark Langsdorf) [2122316] - ACPI: BGRT: use static for BGRT_SHOW kobj_attribute defines (Mark Langsdorf) [2122316] - ACPI, APEI, EINJ: Refuse to inject into the zero page (Mark Langsdorf) [2122316] - ACPI: PM: Always print final debug message in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: SPCR: Add support for NVIDIA 16550-compatible port subtype (Mark Langsdorf) [2122316] - ACPI: APEI: Fix missing ERST record id (Mark Langsdorf) [2122316] - ACPICA: Update version to 20220331 (Mark Langsdorf) [2122316] - ACPICA: IORT: Updates for revision E.d (Mark Langsdorf) [2122316] - ACPICA: iASL/MADT: Add OEM-defined subtable (Mark Langsdorf) [2122316] - ACPICA: Add support for ARM Performance Monitoring Unit Table. (Mark Langsdorf) [2122316] - ACPICA: Headers: Replace zero-length array with flexible-array member (Mark Langsdorf) [2122316] - ACPICA: Removed some tabs and // comments (Mark Langsdorf) [2122316] - ACPICA: Update copyright notices to the year 2022 (Mark Langsdorf) [2122316] - ACPICA: Clean up double word in comment (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics for LoadTable() operator (Mark Langsdorf) [2122316] - ACPICA: Add new ACPI 6.4 semantics to the Load() operator (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Rename linux specific strucures to device_info (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Fix parsing undocumented bytes at the end of Endpoint Descriptor (Mark Langsdorf) [2122316] - ACPICA: iASL: NHLT: Treat Terminator as specific_config (Mark Langsdorf) [2122316] - ACPICA: Add the subtable CFMWS to the CEDT table (Mark Langsdorf) [2122316] - ACPICA: Add support for the Windows 11 _OSI string (Mark Langsdorf) [2122316] - ACPI: sysfs: Fix BERT error region memory mapping (Mark Langsdorf) [2122316] - ACPI: property: Release subnode properties with data nodes (Mark Langsdorf) [2122316] - PCI: ACPI: PM: Power up devices in D3cold before scanning them (Mark Langsdorf) [2122316] - ACPI: PM: Introduce acpi_dev_power_up_children_with_adr() (Mark Langsdorf) [2122316] - ACPI: bus: Introduce acpi_dev_for_each_child() (Mark Langsdorf) [2122316] - ACPI: PM: Unify debug messages in acpi_device_set_power() (Mark Langsdorf) [2122316] - ACPI: PM: Convert debug message in acpi_device_get_power() (Mark Langsdorf) [2122316] - device property: Add irq_get to fwnode operation (Mark Langsdorf) [2122316] - device property: Add iomap to fwnode operations (Mark Langsdorf) [2122316] - ACPI: property: Move acpi_fwnode_device_get_match_data() up (Mark Langsdorf) [2122316] - device property: Convert device_{dma_supported,get_dma_attr} to fwnode (Mark Langsdorf) [2122316] - ACPI: Add perf low power callback (Mark Langsdorf) [2122316] - s390: fix double free of GS and RI CBs on fork() failure (Brian Foster) [1944540] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (other cases) (Jose Ignacio Tornos Martinez) [2086480] - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue (Jose Ignacio Tornos Martinez) [2086480]- crypto: ecdh - disallow plain "ecdh" usage in FIPS mode (Vladis Dronov) [2129392] - crypto: dh - disallow plain "dh" usage in FIPS mode (Vladis Dronov) [2129392] - x86/cpu: Add new Raptor Lake CPU model number (Prarit Bhargava) [2120361] - mm, oom: fix missing tlb_finish_mmu() in __oom_reap_task_mm(). (Waiman Long) [2130954] - net: atlantic: remove aq_nic_deinit() when resume (Íñigo Huguet) [2130839] - net: atlantic: remove deep parameter on suspend/resume functions (Íñigo Huguet) [2130839] - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared (Lenny Szubowicz) [2128172] - bonding: 3ad: make ad_ticks_per_sec a const (Jonathan Toppins) [2020773] - bonding: 802.3ad: fix no transmission of LACPDUs (Jonathan Toppins) [2020773] - redhat: workaround CKI cross compilation for scripts (Jan Stancek) [2123399] - nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt() (Phil Auld) [2107238] - gfs2: Make sure FITRIM minlen is rounded up to fs block size (Andrew Price) [2118256] - ceph: don't truncate file in atomic_open (Xiubo Li) [2120924] - of: address: Work around missing device_type property in pcie nodes (Jerry Snitselaar) [2118732] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2118732] - of/address: check for invalid range.cpu_addr (Jerry Snitselaar) [2118732] - of: address: Fix parser address/size cells initialization (Jerry Snitselaar) [2118732] - of_address: Guard of_bus_pci_get_flags with CONFIG_PCI (Jerry Snitselaar) [2118732] - of_address: Add bus type match for pci ranges parser (Jerry Snitselaar) [2118732] - of/address: Support multiple 'dma-ranges' entries (Jerry Snitselaar) [2118732] - of/address: use range parser for of_dma_get_range (Jerry Snitselaar) [2118732] - of/address: Rework of_pci_range parsing for non-PCI buses (Jerry Snitselaar) [2118732] - of: Drop struct of_pci_range.pci_space field (Jerry Snitselaar) [2118732] - of/address: Move range parser code out of CONFIG_PCI (Jerry Snitselaar) [2118732] - of: Make of_dma_get_range() work on bus nodes (Jerry Snitselaar) [2118732] - Revert "arm64: dts: juno: add dma-ranges property" (Jerry Snitselaar) [2118732] - of/address: Fix of_pci_range_parser_one translation of DMA addresses (Jerry Snitselaar) [2118732] - of/address: Translate 'dma-ranges' for parent nodes missing 'dma-ranges' (Jerry Snitselaar) [2118732] - of: address: Follow DMA parent for "dma-coherent" (Jerry Snitselaar) [2118732] - of: Factor out #{addr,size}-cells parsing (Jerry Snitselaar) [2118732] - of/address: Introduce of_get_next_dma_parent() helper (Jerry Snitselaar) [2118732] - of: address: Report of_dma_get_range() errors meaningfully (Jerry Snitselaar) [2118732] - of: address: Add support for the parent DMA bus (Jerry Snitselaar) [2118732] - of: address: Retrieve a parent through a callback in __of_translate_address (Jerry Snitselaar) [2118732] - of: reserved_mem: fix reserve memory leak (Jerry Snitselaar) [2118732] - of: Use device_type helpers to access the node type (Jerry Snitselaar) [2118732] - of: make PowerMac cache node search conditional on CONFIG_PPC_PMAC (Jerry Snitselaar) [2118732]- crypto: qat - add limit to linked list parsing (Vladis Dronov) [2129897] - crypto: qat - use reference to structure in dma_map_single() (Vladis Dronov) [2129897] - Revert "crypto: qat - reduce size of mapped region" (Vladis Dronov) [2129897] - crypto: qat - fix DMA transfer direction (Vladis Dronov) [2129897] - crypto: qat - fix default value of WDT timer (Vladis Dronov) [2129897] - crypto: drivers - move from strlcpy with unused retval to strscpy (Vladis Dronov) [2129897] - crypto: qat - add check to validate firmware images (Vladis Dronov) [2129897] - Documentation: qat: rewrite description (Vladis Dronov) [2129897] - Documentation: qat: Use code block for qat sysfs example (Vladis Dronov) [2129897] - KVM: x86: Inject #UD on emulated XSETBV if XSAVES isn't enabled (Dr. David Alan Gilbert) [2079311] - KVM: x86: Always enable legacy FP/SSE in allowed user XFEATURES (Dr. David Alan Gilbert) [2079311] - KVM: x86: Reinstate kvm_vcpu_arch.guest_supported_xcr0 (Dr. David Alan Gilbert) [2079311] - bonding: fix NULL deref in bond_rr_gen_slave_id (Jonathan Toppins) [2051778] - tty: use new tty_insert_flip_string_and_push_buffer() in pty_write() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drop tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: the rest, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - tty: drivers/tty/, stop using tty_schedule_flip() (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: keyboard, use tty_insert_flip_string in puts_queue (Rafael Aquini) [2078869] {CVE-2022-1462} - vt: use tty_insert_flip_string in respond_string (Rafael Aquini) [2078869] {CVE-2022-1462}- intel_th: pci: Add Raptor Lake-S CPU support (Michael Petlan) [2040035] - intel_th: pci: Add Raptor Lake-S PCH support (Michael Petlan) [2040035] - virtio-net: support XDP when not more queues (Eugenio Pérez) [2122225] - virtio_net: Don't process redirected XDP frames when XDP is disabled (Eugenio Pérez) [2122225] - virtio_net: Fix not restoring real_num_rx_queues (Eugenio Pérez) [2122225] - x86,config: Enable straight-line-speculation fix (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/alternative: Relax text_poke_bp() constraint (Wander Lairson Costa) [2062175] {CVE-2021-26341} - perf/x86: Add support for perf text poke event for text_poke_bp_batch() callers (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Add straight-line-speculation validation (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Support conditional retpolines (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Refactor sibling call detection logic (Wander Lairson Costa) [2062175] {CVE-2021-26341} - objtool: Change dead_end_function() to return boolean (Wander Lairson Costa) [2062175] {CVE-2021-26341} - x86/lib/atomic64_386_32: Rename things (Wander Lairson Costa) [2062175] {CVE-2021-26341} - KVM: arm64: Fix debug architecture version (Gavin Shan) [2123587] - thunderbolt: Add support for Intel Raptor Lake (Torez Smith) [2040037] - iommu/vt-d: Fix compile error with CONFIG_PCI_ATS not set (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Cure VF irqdomain hickup (Myron Stowe) [2118428 2122515 2127028] - x86/pci: Set default irq domain in pcibios_add_device() (Myron Stowe) [2118428 2122515 2127028] - iommm/amd: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - iommm/vt-d: Store irq domain in struct device (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Provide pci_dev_has_special_msi_domain() helper (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate MSI allocation (Myron Stowe) [2118428 2122515 2127028] - PCI/MSI: Rework pci_msi_domain_calc_hwirq() (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate UV domain allocation (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Consolidate DMAR irq allocation (Myron Stowe) [2118428 2122515 2127028] - x86_ioapic_Consolidate_IOAPIC_allocation (Myron Stowe) [2118428 2122515 2127028] - x86/msi: Consolidate HPET allocation (Myron Stowe) [2118428 2122515 2127028] - iommu/irq_remapping: Consolidate irq domain lookup (Myron Stowe) [2118428 2122515 2127028] - iommu/amd: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - iommu/vt-d: Consolidate irq domain getter (Myron Stowe) [2118428 2122515 2127028] - x86/irq: Add allocation type for parent domain retrieval (Myron Stowe) [2118428 2122515 2127028] - irqdomain: Export irq_domain_update_bus_token (Myron Stowe) [2118428 2122515 2127028] - perf/x86/intel: Update the FRONTEND MSR mask on Sapphire Rapids (Michael Petlan) [2125349] - perf/x86/intel/uncore: Fix invalid unit check (Michael Petlan) [2125349]- KVM: s390: pv: don't present the ecall interrupt twice (Tobias Huschle) [2125236] - s390/mm: do not trigger write fault when vma does not allow VM_WRITE (Tobias Huschle) [2125218] - PCI: Print a debug message on PCI device release (Tobias Huschle) [2125216] - s390/pci: fix leak of PCI device structure (Tobias Huschle) [2125216] - s390/pci: refactor zpci_create_device() (Tobias Huschle) [2125216] - s390/pci: remove superfluous zdev->zbus check (Tobias Huschle) [2125216] - x86/boot/64: Add missing fixup_pointer() for next_early_pgt access (Rafael Aquini) [2082806] - x86/boot/64: Fix crash if kernel image crosses page table boundary (Rafael Aquini) [2082806] - mm/slab_common: fix possible double free of kmem_cache (Waiman Long) [2093781] - mm/slab_common: Deleting kobject in kmem_cache_destroy() without holding slab_mutex/cpu_hotplug_lock (Waiman Long) [2093781] - mm/slab_common: use WARN() if cache still has objects on destroy (Waiman Long) [2093781] - slab: use __func__ to trace function name (Waiman Long) [2093781] - s390/hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages (Tobias Huschle) [2125215] - platform/x86: intel/pmc: Add Alder Lake N support to PMC core driver (Prarit Bhargava) [2072654] - crash_core: Increase crashkernel=auto size for x86_64, s390 and arm64 (Lichen Liu) [2122874] - virtio-net: fix use-after-free in skb_gro_receive (Cindy Lu) [2069047] - virtio-net: fix use-after-free in page_to_skb() (Cindy Lu) [2069047] - virtio-net: restrict build_skb() use to some arches (Cindy Lu) [2069047] - virtio-net: page_to_skb() use build_skb when there's sufficient tailroom (Cindy Lu) [2069047] - sched/fair: Consider CPU affinity when allowing NUMA imbalance in find_idlest_group() (Phil Auld) [2110020] - sched/numa: Adjust imb_numa_nr to a better approximation of memory channels (Phil Auld) [2110020] - sched/numa: Apply imbalance limitations consistently (Phil Auld) [2110020] - sched/numa: Do not swap tasks between nodes when spare capacity is available (Phil Auld) [2110020] - sched/numa: Initialise numa_migrate_retry (Phil Auld) [2110020] - cpufreq: intel_pstate: Handle no_turbo in frequency invariance (Phil Auld) [2100594] - sched/fair: Introduce SIS_UTIL to search idle CPU based on sum of util_avg (Phil Auld) [2100594] - i2c: piix4: Fix a memory leak in the EFCH MMIO support (Sudheesh Mavila) [2105160] - assoc_array: Fix BUG_ON during garbage collect (Dave Wysochanski) [1920523] - wait: Fix __wait_event_hrtimeout for RT/DL tasks (Derek Barbosa) [2125233]- raid1: ensure write behind bio has less than BIO_MAX_VECS sectors (Nigel Croxon) [2116209] - ceph: fix statfs for subdir mounts (Xiubo Li) [2120943] - ceph: try to queue a writeback if revoking fails (Xiubo Li) [2120940] - ceph: update the auth cap when the async create req is forwarded (Xiubo Li) [2120932] - ceph: make change_auth_cap_ses a global symbol (Xiubo Li) [2120932] - fs/dcache: export d_same_name() helper (Xiubo Li) [2120932] - ceph: wait for the first reply of inflight async unlink (Xiubo Li) [2120932] - redhat: Enable KASAN_VMALLOC (Nico Pache) [2108620] - arm64: select KASAN_VMALLOC for SW/HW_TAGS modes (Nico Pache) [2108620] - x86/crash: Fix crash_setup_memmap_entries() out-of-bounds access (Nico Pache) [2108620] - mm: defer kmemleak object creation of module_alloc() (Nico Pache) [2108620] - arm64: kaslr: keep modules inside module region when KASAN is enabled (Nico Pache) [2108620] - kasan: arm64: fix pcpu_page_first_chunk crash with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: select KASAN_VMALLOC if KANSAN_GENERIC is enabled (Nico Pache) [2108620] - arm64: kaslr: support randomized module area with KASAN_VMALLOC (Nico Pache) [2108620] - arm64: Kconfig: support CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - arm64: kasan: abstract _text and _end to KERNEL_START/END (Nico Pache) [2108620] - arm64: kasan: don't populate vmalloc area for CONFIG_KASAN_VMALLOC (Nico Pache) [2108620] - x86/kasan: support KASAN_VMALLOC (Nico Pache) [2108620] - ath9k: htc: clean up statistics macros (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: hif_usb: simplify if-if to if-else (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - ath9k: fix use-after-free in ath9k_hif_usb_rx_cb (Jose Ignacio Tornos Martinez) [2084598] {CVE-2022-1679} - igmp: Add ip_mc_list lock in ip_check_mc_rcu (Hangbin Liu) [2114946] {CVE-2022-20141} - scsi: zfcp: Fix missing auto port scan and thus missing target ports (Tobias Huschle) [2121089] - vfio/type1: Unpin zero pages (Alex Williamson) [2123015]- iommu/vt-d: Make DMAR_UNITS_SUPPORTED default 1024 (Jerry Snitselaar) [2120412] - Revert "iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting" (Jerry Snitselaar) [2120412] - ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE (Oleg Nesterov) [2121269] {CVE-2022-30594} - redhat: remove unused STAMP variable from genspec.sh (Herton R. Krzesinski) - internal: Update RHEL_MINOR for the start of RHEL-8.8 development (Lucas Zampieri)- EDAC/amd64: Add new register offset support and related changes (Aristeu Rozanski) [2048792] - EDAC/amd64: Set memory type per DIMM (Aristeu Rozanski) [2048792] - Revert "ixgbevf: Mailbox improvements" (Ken Cox) [2120545] - Revert "ixgbevf: Add support for new mailbox communication between PF and VF" (Ken Cox) [2120545] - drm/amdgpu: Only disable prefer_shadow on hawaii (Lyude Paul) [2118755]- redhat: configs: add CONFIG_SERIAL_MULTI_INSTANTIATE=m for x86_64 (Jaroslav Kysela) [2005073] - ACPI: scan: Add CLSA0101 Laptop Support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add CLSA0101 Laptop (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Sort ACPI IDs by HID (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Get rid of redundant 'else' (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Use while (i--) pattern to clean up (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve dev_err_probe() messaging (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Drop duplicate check (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Improve autodetection (Jaroslav Kysela) [2005073] - ACPI / scan: Create platform device for CS35L41 (Jaroslav Kysela) [2005073] - ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Add SPI support (Jaroslav Kysela) [2005073] - platform/x86: serial-multi-instantiate: Reorganize I2C functions (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Rename it for a generic serial driver name (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use the new i2c_acpi_client_count() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use device_get_match_data() to get driver data (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Simplify with dev_err_probe() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Drop redundant ACPI_PTR() (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Fail the probe if no IRQ provided (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Derive the device name from parent (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Use struct_size() helper (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Allow to have same slaves (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Introduce IOAPIC IRQ support (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Distinguish IRQ resource type (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Count I2cSerialBus() resources (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Get rid of obsolete conditional (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Defer probe when no adapter found (Jaroslav Kysela) [2005073] - platform/x86: i2c-multi-instantiate: Accept errors of i2c_acpi_new_device() (Jaroslav Kysela) [2005073] - serdev: Fix detection of UART devices on Apple machines. (Jaroslav Kysela) [2005073] - serdev: Add ACPI devices by ResourceSource field (Jaroslav Kysela) [2005073] - spi: Return deferred probe error when controller isn't yet available (Jaroslav Kysela) [2005073] - spi/acpi: avoid spurious matches during slave enumeration (Jaroslav Kysela) [2005073] - spi: Add API to count spi acpi resources (Jaroslav Kysela) [2005073] - spi: Support selection of the index of the ACPI Spi Resource before alloc (Jaroslav Kysela) [2005073] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [2005073] - spi/acpi: fix incorrect ACPI parent check (Jaroslav Kysela) [2005073] - spi: Create helper API to lookup ACPI info for spi device (Jaroslav Kysela) [2005073] - spi/acpi: enumerate all SPI slaves in the namespace (Jaroslav Kysela) [2005073] - spi: kill useless initializer in spi_register_controller() (Jaroslav Kysela) [2005073] - spi: fix ctrl->num_chipselect constraint (Jaroslav Kysela) [2005073] - spi: Don't call spi_get_gpio_descs() before device name is set (Jaroslav Kysela) [2005073] - spi: Avoid undefined behaviour when counting unused native CSs (Jaroslav Kysela) [2005073] - spi: Allow to have all native CSs in use along with GPIOs (Jaroslav Kysela) [2005073] - spi: Add missing error handling for CS GPIOs (Jaroslav Kysela) [2005073] - spi: export tracepoint symbols to modules (Jaroslav Kysela) [2005073] - spi: Fix zero length xfer bug (Jaroslav Kysela) [2005073] - spi: Add generic support for unused native cs with cs-gpios (Jaroslav Kysela) [2005073] - spi: Reduce kthread priority (Jaroslav Kysela) [2005073] - spi: core: Use DEVICE_ATTR_RW() for SPI slave control sysfs attribute (Jaroslav Kysela) [2005073] - i2c: acpi: Add an i2c_acpi_client_count() helper function (Jaroslav Kysela) [2005073] - s390/qeth: cache link_info for ethtool (Michal Schmidt) [2117098] - nfp: amend removal of MODULE_VERSION (Stefan Assmann) [1955769] - x86/speculation: Add LFENCE to RSB fill sequence (Waiman Long) [2115080] {CVE-2022-26373} - x86/speculation: Add RSB VM Exit protections (Waiman Long) [2115080] {CVE-2022-26373} - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - tools headers cpufeatures: Sync with the kernel sources (Waiman Long) [2115080] - x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n (Waiman Long) [2115080] - x86/bugs: Do not enable IBPB at firmware entry when IBPB is not available (Waiman Long) [2115080] - x86/amd: Use IBPB for firmware calls (Waiman Long) [2115080] - x86/bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts (Waiman Long) [2115080] - iavf: Fix reset error handling (Petr Oros) [2119759] - iavf: Fix NULL pointer dereference in iavf_get_link_ksettings (Petr Oros) [2119759] - iavf: Fix adminq error handling (Petr Oros) [2119759] - iavf: Fix missing state logs (Petr Oros) [2119759] - ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero (Ken Cox) [1978613]- netfilter: ipset: fix suspicious RCU usage in find_set_and_id (Florian Westphal) [2118526] - net/mlx5e: Update netdev features after changing XDP state (Amir Tzin) [2049440] - net/mlx5e: CT: Use own workqueue instead of mlx5e priv (Amir Tzin) [2049440] - net/mlx5e: CT: Add ct driver counters (Amir Tzin) [2049440] - net/mlx5e: CT: Fix cleanup of CT before cleanup of TC ct rules (Amir Tzin) [2049440] - net/mlx5e: Align mlx5e_cleanup_uplink_rep_tx() with upstream code. (Amir Tzin) [2049440] - net/mlx5e: Correct the calculation of max channels for rep (Amir Tzin) [2049440] - Documentation: devlink: mlx5.rst: Fix htmldoc build warning (Amir Tzin) [2049440] - net/mlx5: fs, fail conflicting actions (Amir Tzin) [2049440] - net/mlx5: Rearm the FW tracer after each tracer event (Amir Tzin) [2049440] - net/mlx5: correct ECE offset in query qp output (Amir Tzin) [2049440] - net/mlx5e: Disable softirq in mlx5e_activate_rq to avoid race condition (Amir Tzin) [2049440] - net/mlx5e: TC NIC mode, fix tc chains miss table (Amir Tzin) [2049440] - net/mlx5: Don't use already freed action pointer (Amir Tzin) [2049440] - net/mlx5: fix typo in comment (Amir Tzin) [2049440] - IB/mlx5: Fix undefined behavior due to shift overflowing the constant (Amir Tzin) [2049440] - net/mlx5e: Force ethertype usage in mlx5_ct_fs_smfs_fill_mask() (Amir Tzin) [2049440] - net/mlx5: Drain fw_reset when removing device (Amir Tzin) [2049440] - net/mlx5e: CT: Fix setting flow_source for smfs ct tuples (Amir Tzin) [2049440] - net/mlx5e: CT: Fix support for GRE tuples (Amir Tzin) [2049440] - net/mlx5e: Remove HW-GRO from reported features (Amir Tzin) [2049440] - net/mlx5e: Properly block HW GRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Properly block LRO when XDP is enabled (Amir Tzin) [2049440] - net/mlx5e: Block rx-gro-hw feature in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: Wrap mlx5e_trap_napi_poll into rcu_read_lock (Amir Tzin) [2049440] - net/mlx5: Initialize flow steering during driver probe (Amir Tzin) [2049440] - net/mlx5: Fix matching on inner TTC (Amir Tzin) [2049440] - net/mlx5: Avoid double clear or set of sync reset requested (Amir Tzin) [2049440] - net/mlx5: Fix deadlock in sync reset flow (Amir Tzin) [2049440] - net/mlx5e: Fix trust state reset in reload (Amir Tzin) [2049440] - net/mlx5e: Avoid checking offload capability in post_parse action (Amir Tzin) [2049440] - net/mlx5e: CT: Fix queued up restore put() executing after relevant ft release (Amir Tzin) [2049440] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2049440] - net/mlx5e: Lag, Don't skip fib events on current dst (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix fib_info pointer assignment (Amir Tzin) [2049440] - net/mlx5e: Lag, Fix use-after-free in fib event handler (Amir Tzin) [2049440] - net/mlx5e: Fix the calling of update_buffer_lossy() API (Amir Tzin) [2049440] - net/mlx5e: Don't match double-vlan packets if cvlan is not set (Amir Tzin) [2049440] - net/mlx5: Fix slab-out-of-bounds while reading resource dump menu (Amir Tzin) [2049440] - RDMA/mlx5: Add a missing update of cache->last_add (Amir Tzin) [2049440] - RDMA/mlx5: Don't remove cache MRs when a delay is needed (Amir Tzin) [2049440] - net/mlx5e: HTB, remove unused function declaration (Amir Tzin) [2049440] - net/mlx5e: Statify function mlx5_cmd_trigger_completions (Amir Tzin) [2049440] - net/mlx5: Remove unused fill page array API function (Amir Tzin) [2049440] - net/mlx5: Remove unused exported contiguous coherent buffer allocation API (Amir Tzin) [2049440] - net/mlx5: CT: Remove extra rhashtable remove on tuple entries (Amir Tzin) [2049440] - net/mlx5: DR, Remove hw_ste from mlx5dr_ste to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove 4 members from mlx5dr_ste_htbl to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove num_of_entries byte_size from struct mlx5_dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Remove icm_addr from mlx5dr_icm_chunk to reduce memory (Amir Tzin) [2049440] - net/mlx5: DR, Remove mr_addr rkey from struct mlx5dr_icm_chunk (Amir Tzin) [2049440] - net/mlx5: DR, Adjust structure member to reduce memory hole (Amir Tzin) [2049440] - net/mlx5e: Drop cqe_bcnt32 from mlx5e_skb_from_cqe_mpwrq_linear (Amir Tzin) [2049440] - net/mlx5e: Drop the len output parameter from mlx5e_xdp_handle (Amir Tzin) [2049440] - net/mlx5e: RX, Test the XDP program existence out of the handler (Amir Tzin) [2049440] - net/mlx5e: Build SKB in place over the first fragment in non-linear legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Add headroom only to the first fragment in legacy RQ (Amir Tzin) [2049440] - net/mlx5e: Validate MTU when building non-linear legacy RQ fragments info (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP encap, support action vlan pop_eth explicitly (Amir Tzin) [2049440] - net/mlx5e: MPLSoUDP decap, use vlan push_eth instead of pedit (Amir Tzin) [2049440] - RDMA/mlx5: Fix memory leak in error flow for subscribe event routine (Amir Tzin) [2049440] - net/mlx5e: Fix use-after-free in mlx5e_stats_grp_sw_update_stats (Amir Tzin) [2049440] - net/mlx5e: Remove overzealous validations in netlink EEPROM query (Amir Tzin) [2049440] - net/mlx5: Parse module mapping using mlx5_ifc (Amir Tzin) [2049440] - net/mlx5: Query the maximum MCIA register read size from firmware (Amir Tzin) [2049440] - net/mlx5: CT: Create smfs dr matchers dynamically (Amir Tzin) [2049440] - net/mlx5: CT: Add software steering ct flow steering provider (Amir Tzin) [2049440] - net/mlx5: Add smfs lib to export direct steering API to CT (Amir Tzin) [2049440] - net/mlx5: DR, Add helper to get backing dr table from a mlx5 flow table (Amir Tzin) [2049440] - net/mlx5: CT: Introduce a platform for multiple flow steering providers (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the doorbell pgdir (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for UAR (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQs (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the EQ table (Amir Tzin) [2049440] - net/mlx5: Node-aware allocation for the IRQ table (Amir Tzin) [2049440] - net/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - net/mlx5: DR, Add support for ConnectX-7 steering (Amir Tzin) [2049440] - net/mlx5: DR, Refactor ste_ctx handling for STE v0/1 (Amir Tzin) [2049440] - net/mlx5: DR, Rename action modify fields to reflect naming in HW spec (Amir Tzin) [2049440] - net/mlx5: DR, Fix handling of different actions on the same STE in STEv1 (Amir Tzin) [2049440] - net/mlx5: DR, Remove unneeded comments (Amir Tzin) [2049440] - net/mlx5: DR, Add support for matching on Internet Header Length (IHL) (Amir Tzin) [2049440] - net/mlx5: DR, Align mlx5dv_dr API vport action with FW behavior (Amir Tzin) [2049440] - net/mlx5: Add debugfs counters for page commands failures (Amir Tzin) [2049440] - net/mlx5: Add pages debugfs (Amir Tzin) [2049440] - net/mlx5: Move debugfs entries to separate struct (Amir Tzin) [2049440] - net/mlx5: Change release_all_pages cap bit location (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on reclaim pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant error on give pages (Amir Tzin) [2049440] - net/mlx5: Remove redundant notify fail on give pages (Amir Tzin) [2049440] - net/mlx5: Add command failures data to debugfs (Amir Tzin) [2049440] - net/mlx5e: TC, Fix use after free in mlx5e_clone_flow_attr_for_post_act() (Amir Tzin) [2049440] - net/mlx5: Support GRE conntrack offload (Amir Tzin) [2049440] - mlx5: add support for page_pool_get_stats (Amir Tzin) [2049440] - net/mlx5: Add migration commands definitions (Amir Tzin) [2049440] - net/mlx5: Introduce migration bits and structures (Amir Tzin) [2049440] - net/mlx5: Expose APIs to get/put the mlx5 core device (Amir Tzin) [2049440] - net/mlx5: Disable SRIOV before PF removal (Amir Tzin) [2049440] - net/mlx5: Reuse exported virtfn index function call (Amir Tzin) [2049440] - net/mlx5: Add clarification on sync reset failure (Amir Tzin) [2049440] - net/mlx5: Add reset_state field to MFRL register (Amir Tzin) [2049440] - RDMA/mlx5: Use new command interface API (Amir Tzin) [2049440] - net/mlx5: cmdif, Refactor error handling and reporting of async commands (Amir Tzin) [2049440] - net/mlx5: Use mlx5_cmd_do() in core create_{cq,dct} (Amir Tzin) [2049440] - net/mlx5: cmdif, Add new api for command execution (Amir Tzin) [2049440] - net/mlx5: cmdif, cmd_check refactoring (Amir Tzin) [2049440] - net/mlx5: cmdif, Return value improvements (Amir Tzin) [2049440] - net/mlx5: Lag, offload active-backup drops to hardware (Amir Tzin) [2049440] - net/mlx5: Lag, record inactive state of bond device (Amir Tzin) [2049440] - net/mlx5: Lag, don't use magic numbers for ports (Amir Tzin) [2049440] - net/mlx5: Lag, use local variable already defined to access E-Switch (Amir Tzin) [2049440] - net/mlx5: E-switch, add drop rule support to ingress ACL (Amir Tzin) [2049440] - net/mlx5: E-switch, remove special uplink ingress ACL handling (Amir Tzin) [2049440 2049580] - net/mlx5: E-Switch, reserve and use same uplink metadata across ports (Amir Tzin) [2049440 2049580] - net/mlx5: Add ability to insert to specific flow group (Amir Tzin) [2049440] - mlx5: remove unused static inlines (Amir Tzin) [2049440] - RDMA/mlx5: Reorder calls to pcie_relaxed_ordering_enabled() (Amir Tzin) [2049440] - RDMA/mlx5: Store ndescs instead of the translation table size (Amir Tzin) [2049440] - RDMA/mlx5: Merge similar flows of allocating MR from the cache (Amir Tzin) [2049440] - RDMA/mlx5: Fix the flow of a miss in the allocation of a cache ODP MR (Amir Tzin) [2049440] - RDMA/mlx5: Remove redundant work in struct mlx5_cache_ent (Amir Tzin) [2049440] - net/mlx5e: TC, Allow sample action with CT (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Make post_act parse CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Clean redundant counter flag from tc action parsers (Amir Tzin) [2049440 2049659] - net/mlx5e: Use multi table support for CT and sample actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Create new flow attr for multi table actions (Amir Tzin) [2049440 2049659] - net/mlx5e: Add post act offload/unoffload API (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass actions param to actions_match_supported() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move flow hashtable to be per rep (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add support for tx_port_ts in switchdev mode (Amir Tzin) [2049440] - net/mlx5e: E-Switch, Add PTP counters for uplink representor (Amir Tzin) [2049440] - net/mlx5e: RX, Restrict bulk size for small Striding RQs (Amir Tzin) [2049440] - net/mlx5e: Default to Striding RQ when not conflicting with CQE compression (Amir Tzin) [2049440] - net/mlx5e: Generalize packet merge error message (Amir Tzin) [2049440] - net/mlx5e: Add support for using xdp->data_meta (Amir Tzin) [2049440] - net/mlx5e: Fix spelling mistake "supoported" -> "supported" (Amir Tzin) [2049440] - net/mlx5e: Optimize the common case condition in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize modulo in mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Optimize mlx5e_select_queue (Amir Tzin) [2049440] - net/mlx5e: Use READ_ONCE/WRITE_ONCE for DCBX trust state (Amir Tzin) [2049440] - net/mlx5e: Move repeating code that gets TC prio into a function (Amir Tzin) [2049440] - net/mlx5e: Use select queue parameters to sync with control flow (Amir Tzin) [2049440] - net/mlx5e: Move mlx5e_select_queue to en/selq.c (Amir Tzin) [2049440] - net/mlx5e: Introduce select queue parameters (Amir Tzin) [2049440] - net/mlx5e: Sync txq2sq updates with mlx5e_xmit for HTB queues (Amir Tzin) [2049440] - net/mlx5e: Use a barrier after updating txq2sq (Amir Tzin) [2049440] - net/mlx5e: Disable TX queues before registering the netdev (Amir Tzin) [2049440] - net/mlx5e: Cleanup of start/stop all queues (Amir Tzin) [2049440] - net/mlx5e: Use FW limitation for max MPW WQEBBs (Amir Tzin) [2049440] - net/mlx5e: Read max WQEBBs on the SQ from firmware (Amir Tzin) [2049440] - net/mlx5e: Remove unused tstamp SQ field (Amir Tzin) [2049440] - RDMA/mlx5: Delete useless module.h include (Amir Tzin) [2049440] - RDMA/mlx5: Delete get_num_static_uars function (Amir Tzin) [2049440] - net/mlx5: VLAN push on RX, pop on TX (Amir Tzin) [2049440 2049616] - net/mlx5: Introduce software defined steering capabilities (Amir Tzin) [2049440 2049616] - net/mlx5: Remove unused TIR modify bitmask enums (Amir Tzin) [2049440] - net/mlx5e: CT, Remove redundant flow args from tc ct calls (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Store mapped tunnel id on flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Test CT and SAMPLE on flow attr (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: Refactor eswitch attr flags to just attr flags (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: CT, Don't set flow flag CT for ct clear flow (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Hold sample_attr on stack instead of pointer (Amir Tzin) [2049440 2049580 2049659] - net/mlx5e: TC, Reject rules with multiple CT actions (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Refactor mlx5e_tc_add_flow_mod_hdr() to get flow attr (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Pass attr to tc_act can_offload() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Split pedit offloads verify from alloc_tc_pedit_action() (Amir Tzin) [2049440 2049659] - net/mlx5e: TC, Move pedit_headers_action to parse_attr (Amir Tzin) [2049440 2049659] - net/mlx5e: Move counter creation call to alloc_flow_attr_counter() (Amir Tzin) [2049440 2049659] - net/mlx5e: Pass attr arg for attaching/detaching encaps (Amir Tzin) [2049440 2049659] - net/mlx5e: Move code chunk setting encap dests into its own function (Amir Tzin) [2049440 2049659] - net_sched: cls_route: remove from list when handle is 0 (Felix Maurer) [2116328] {CVE-2022-2588} - netfilter: nf_tables: do not allow RULE_ID to refer to another chain (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_tables: do not allow SET_ID to refer to another table (Florian Westphal) [2116356] {CVE-2022-2586} - netfilter: nf_queue: do not allow packet truncation below transport header offset (Florian Westphal) [2116159] {CVE-2022-36946} - net: let flow have same hash in two directions (Ivan Vecera) [2111094] - ipv4: Fix data-races around sysctl_fib_multipath_hash_fields. (Ivan Vecera) [2111094] - net: Add notifications when multipath hash field change (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv6 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash with IPv4 GRE (Ivan Vecera) [2111094] - selftests: forwarding: Add test for custom multipath hash (Ivan Vecera) [2111094] - ipv6: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv6: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv6: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use a more suitable label name (Ivan Vecera) [2111094] - ipv4: Add custom multipath hash policy (Ivan Vecera) [2111094] - ipv4: Add a sysctl to control multipath hash fields (Ivan Vecera) [2111094] - ipv4: Calculate multipath hash inside switch statement (Ivan Vecera) [2111094] - ipv6: Use math to point per net sysctls into the appropriate struct net (Ivan Vecera) [2111094] - selftest/net/forwarding: declare NETIFS p9 p10 (Ivan Vecera) [2111094] - ipv6: Fix sysctl max for fib_multipath_hash_policy (Ivan Vecera) [2111094] - selftests: forwarding: Test multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv6: Support multipath hashing on inner IP pkts (Ivan Vecera) [2111094] - ipv4: Multipath hashing on inner L3 needs to consider inner IPv6 pkts (Ivan Vecera) [2111094] - ipv4: Support multipath hashing on inner IP pkts for GRE tunnel (Ivan Vecera) [2111094] - ipv4: Initialize flowi4_multipath_hash in data path (Ivan Vecera) [2111094] - net: ipv4: Fix NULL pointer dereference in route lookup (Ivan Vecera) [2111094] - route: Add multipath_hash in flowi_common to make user-define hash (Ivan Vecera) [2111094]- drm/nouveau/kms/nv140-: Disable interlacing (Lyude Paul) [2097647] - rpm: convert gcc and libelf to Recommends (Jarod Wilson) [2114900] - redhat: add ca7 to redhat/git/files (Jarod Wilson)- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, reduce TIR indication (Amir Tzin) [2049436] - net/mlx5e: Lag, Only handle events from highest priority multipath entry (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5: Fix a race on command flush flow (Amir Tzin) [2049436] - net/mlx5: Fix size field in bufferx_reg struct (Amir Tzin) [2049436] - net/mlx5e: Fix VF min/max rate parameters interchange mistake (Amir Tzin) [2049436] - net/mlx5e: Add missing increment of count (Amir Tzin) [2049436] - net/mlx5e: MPLSoUDP decap, fix check for unsupported matches (Amir Tzin) [2049436] - net/mlx5e: Fix MPLSoUDP encap to use MPLS action information (Amir Tzin) [2049436] - net/mlx5e: Add feature check for set fec counters (Amir Tzin) [2049436 2049711] - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5e: kTLS, Use CHECKSUM_UNNECESSARY for device-offloaded packets (Amir Tzin) [2049436] - net/mlx5e: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Fix wrong return value on ioctl EEPROM query failure (Amir Tzin) [2049436] - net/mlx5: Fix possible deadlock on rule deletion (Amir Tzin) [2049436] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [2049436] - net/mlx5: Update log_max_qp value to be 17 at most (Amir Tzin) [2049436] - net/mlx5: DR, Don't allow match on IP w/o matching on full ethertype/ip_version (Amir Tzin) [2049436] - net/mlx5e: Avoid field-overflowing memcpy() (Amir Tzin) [2049436] - net/mlx5e: Use struct_group() for memcpy() region (Amir Tzin) [2049436] - net/mlx5e: IPsec: Fix tunnel mode crypto offload for non TCP/UDP traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: IPsec: Fix crypto offload for non TCP/UDP encapsulated traffic (Amir Tzin) [2049436 2052871] - net/mlx5e: Don't treat small ceil values as unlimited in HTB offload (Amir Tzin) [2049436] - net/mlx5: E-Switch, Fix uninitialized variable modact (Amir Tzin) [2049436] - net/mlx5e: Fix handling of wrong devices during bond netevent (Amir Tzin) [2049436] - net/mlx5e: Fix broken SKB allocation in HW-GRO (Amir Tzin) [2049436] - net/mlx5e: Fix wrong calculation of header index in HW_GRO (Amir Tzin) [2049436] - net/mlx5: Fix offloading with ESWITCH_IPV4_TTL_MODIFY_ENABLE (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with forward and drop actions (Amir Tzin) [2049436] - net/mlx5: Use del_timer_sync in fw reset flow of halting poll (Amir Tzin) [2049436] - net/mlx5e: Fix module EEPROM query (Amir Tzin) [2049436] - net/mlx5e: TC, Reject rules with drop and modify hdr action (Amir Tzin) [2049436] - net/mlx5: Bridge, ensure dev_name is null-terminated (Amir Tzin) [2049436] - net/mlx5: Bridge, take rtnl lock in init error handler (Amir Tzin) [2049436] - mlx5: Don't accidentally set RTO_ONLINK before mlx5e_route_lookup_ipv4_get() (Amir Tzin) [2049436] - net/mlx5e: Fix build error in fec_set_block_stats() (Amir Tzin) [2049436] - Revert "net/mlx5: Add retry mechanism to the command entry index allocation" (Amir Tzin) [2049436] - net/mlx5: Set command entry semaphore up once got index free (Amir Tzin) [2049436] - net/mlx5e: Sync VXLAN udp ports during uplink representor profile change (Amir Tzin) [2049436] - net/mlx5: Fix access to sf_dev_table on allocation failure (Amir Tzin) [2049436] - net/mlx5e: Fix matching on modified inner ip_ecn bits (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for GRE tunnel" (Amir Tzin) [2049436] - Revert "net/mlx5e: Block offload of outer header csum for UDP tunnels" (Amir Tzin) [2049436] - net/mlx5e: Fix nullptr on deleting mirroring rule (Amir Tzin) [2049436] - net/mlx5e: Fix page DMA map/unmap attributes (Amir Tzin) [2049436] - net/mlx5: Use dma device access helper (add dropped hunk) (Amir Tzin) [2049436] - net/mlx5e: Add recovery flow in case of error CQE (Amir Tzin) [2049436] - net/mlx5e: Refactor set_pflag_cqe_based_moder (Amir Tzin) [2049436] - net/mlx5e: Move HW-GRO and CQE compression check to fix features flow (Amir Tzin) [2049436] - net/mlx5e: Fix feature check per profile (Amir Tzin) [2049436] - net/mlx5e: Unblock setting vid 0 for VF in case PF isn't eswitch manager (Amir Tzin) [2049436] - net/mlx5e: Expose FEC counters via ethtool (Amir Tzin) [2049436 2049711] - net/mlx5: Update log_max_qp value to FW max capability (Amir Tzin) [2049436] - net/mlx5: Use irq_set_affinity_and_hint() (Amir Tzin) [2049436] - net/mlx5: SF, Use all available cpu for setting cpu affinity (Amir Tzin) [2049436] - net/mlx5: Introduce API for bulk request and release of IRQs (Amir Tzin) [2049436] - net/mlx5: Split irq_pool_affinity logic to new file (Amir Tzin) [2049436] - net/mlx5: Move affinity assignment into irq_request (Amir Tzin) [2049436] - net/mlx5: Introduce control IRQ request API (Amir Tzin) [2049436] - net/mlx5: mlx5e_hv_vhca_stats_create return type to void (Amir Tzin) [2049436] - RDMA/mlx5: Print wc status on CQE error and dump needed (Amir Tzin) [2049436] - net: fixup build after bpf header changes (Amir Tzin) [2049436] - net/mlx5: CT: Set flow source hint from provided tuple device (Amir Tzin) [2049436] - net/mlx5: Set SMFS as a default steering mode if device supports it (Amir Tzin) [2049436] - net/mlx5: DR, Improve steering for empty or RX/TX-only matchers (Amir Tzin) [2049436] - net/mlx5: DR, Add support for matching on geneve_tlv_option_0_exist field (Amir Tzin) [2049436] - net/mlx5: DR, Support matching on tunnel headers 0 and 1 (Amir Tzin) [2049436] - net/mlx5: DR, Add misc5 to match_param structs (Amir Tzin) [2049436] - net/mlx5: Add misc5 flow table match parameters (Amir Tzin) [2049436] - net/mlx5: DR, Add support for UPLINK destination type (Amir Tzin) [2049436] - net/mlx5e: Use auxiliary_device driver data helpers (Amir Tzin) [2049436] - net/mlx5e: Take packet_merge params directly from the RX res struct (Amir Tzin) [2049436] - net/mlx5e: Allocate per-channel stats dynamically at first usage (Amir Tzin) [2049436] - net/mlx5e: Use dynamic per-channel allocations in stats (Amir Tzin) [2049436] - net/mlx5e: Allow profile-specific limitation on max num of channels (Amir Tzin) [2049436] - net/mlx5e: Save memory by using dynamic allocation in netdev priv (Amir Tzin) [2049436] - net/mlx5e: Add profile indications for PTP and QOS HTB features (Amir Tzin) [2049436] - net/mlx5e: Use bitmap field for profile features (Amir Tzin) [2049436] - net/mlx5: Remove the repeated declaration (Amir Tzin) [2049436] - net/mlx5: Let user configure max_macs generic param (Amir Tzin) [2049436] - net/mlx5: Let user configure event_eq_size param (Amir Tzin) [2049436] - net/mlx5: Let user configure io_eq_size param (Amir Tzin) [2049436] - net/mlx5: Introduce log_max_current_uc_list_wr_supported bit (Amir Tzin) [2049436] - net/mlx5e: Move goto action checks into tc_action goto post parse op (Amir Tzin) [2049436] - net/mlx5e: Move vlan action chunk into tc action vlan post parse op (Amir Tzin) [2049436] - net/mlx5e: Add post_parse() op to tc action infrastructure (Amir Tzin) [2049436] - net/mlx5e: Move sample attr allocation to tc_action sample parse op (Amir Tzin) [2049436] - net/mlx5e: TC action parsing loop (Amir Tzin) [2049436] - net/mlx5e: Add redirect ingress to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add sample and ptype to tc_action infra (Amir Tzin) [2049436] - net/mlx5e: Add ct to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add mirred/redirect to tc action infra (Amir Tzin) [2049436] - Revert "net/mlx5e: TC, Remove redundant error logging" (Amir Tzin) [2049436] - net/mlx5e: Add mpls push/pop to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add vlan push/pop/mangle to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add pedit to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add csum to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tunnel encap/decap to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add goto to tc action infra (Amir Tzin) [2049436] - net/mlx5e: Add tc action infrastructure (Amir Tzin) [2049436] - RDMA/mlx5: Use memset_after() to zero struct mlx5_ib_mr (Amir Tzin) [2049436] - RDMA/mlx5: Add support to multiple priorities for FDB rules (Amir Tzin) [2049436] - net/mlx5: Create more priorities for FDB bypass namespace (Amir Tzin) [2049436] - net/mlx5: Refactor mlx5_get_flow_namespace (Amir Tzin) [2049436] - net/mlx5: Separate FDB namespace (Amir Tzin) [2049436] - net/mlx5: Dynamically resize flow counters query buffer (Amir Tzin) [2049436] - net/mlx5e: TC, Set flow attr ip_version earlier (Amir Tzin) [2049436] - net/mlx5e: TC, Move common flow_action checks into function (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from vlan push/pop funcs (Amir Tzin) [2049436] - net/mlx5e: Remove redundant actions arg from validate_goto_chain() (Amir Tzin) [2049436] - net/mlx5e: TC, Remove redundant action stack var (Amir Tzin) [2049436] - net/mlx5e: Hide function mlx5e_num_channels_changed (Amir Tzin) [2049436] - net/mlx5e: SHAMPO, clean MLX5E_MAX_KLM_PER_WQE macro (Amir Tzin) [2049436] - net/mlx5: Print more info on pci error handlers (Amir Tzin) [2049436] - net/mlx5: SF, silence an uninitialized variable warning (Amir Tzin) [2049436] - net/mlx5: Fix error return code in esw_qos_create() (Amir Tzin) [2049436] - net/mlx5: E-switch, Create QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, Enable vport QoS on demand (Amir Tzin) [2049436] - net/mlx5: E-switch, move offloads mode callbacks to offloads file (Amir Tzin) [2049436] - net/mlx5: E-switch, Reuse mlx5_eswitch_set_vport_mac (Amir Tzin) [2049436] - net/mlx5: E-switch, Remove vport enabled check (Amir Tzin) [2049436] - net/mlx5e: Specify out ifindex when looking up decap route (Amir Tzin) [2049436] - net/mlx5e: TC, Move comment about mod header flag to correct place (Amir Tzin) [2049436] - net/mlx5e: TC, Move kfree() calls after destroying all resources (Amir Tzin) [2049436] - net/mlx5e: TC, Destroy nic flow counter if exists (Amir Tzin) [2049436] - net/mlx5: TC, using swap() instead of tmp variable (Amir Tzin) [2049436] - net/mlx5: CT: Allow static allocation of mod headers (Amir Tzin) [2049436] - net/mlx5e: Refactor mod header management API (Amir Tzin) [2049436] - net/mlx5: Avoid printing health buffer when firmware is unavailable (Amir Tzin) [2049436 2049717] - net/mlx5e: Support ethtool cq mode (Amir Tzin) [2049436 2049840] - Revert "RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow" (Amir Tzin) [2049435] - net/mlx5: Use first online CPU instead of hard coded CPU (Amir Tzin) [2049435] - net/mlx5e: SHAMPO, Fix constant expression result (Amir Tzin) [2049435] - net/mlx5: Fix access to a non-supported register (Amir Tzin) [2049435 2049717] - net/mlx5: Fix too early queueing of log timestamp work (Amir Tzin) [2049435 2049717] - net/mlx5: Fix use after free in mlx5_health_wait_pci_up (Amir Tzin) [2049435] - net/mlx5: Lag, Fix recreation of VF LAG (Amir Tzin) [2049435] - net/mlx5e: Sync TIR params updates against concurrent create/modify (Amir Tzin) [2049435] - RDMA/mlx5: Fix releasing unallocated memory in dereg MR flow (Amir Tzin) [2049435] - net/mlx5: Fix flow counters SF bulk query len (Amir Tzin) [2049435] - net/mlx5: Lag, fix a potential Oops with mlx5_lag_create_definer() (Amir Tzin) [2049435] - net/mlx5e: Prevent HW-GRO and CQE-COMPRESS features operate together (Amir Tzin) [2049435] - net/mlx5e: Add HW-GRO offload (Amir Tzin) [2049435] - net/mlx5e: Add HW_GRO statistics (Amir Tzin) [2049435] - net/mlx5e: HW_GRO cqe handler implementation (Amir Tzin) [2049435] - net/mlx5e: Add data path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add handle SHAMPO cqe support (Amir Tzin) [2049435] - net/mlx5e: Add control path for SHAMPO feature (Amir Tzin) [2049435] - net/mlx5e: Add support to klm_umr_wqe (Amir Tzin) [2049435] - net/mlx5e: Rename TIR lro functions to TIR packet merge functions (Amir Tzin) [2049435] - net/mlx5e: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - net/mlx5: Add SHAMPO caps, HW bits and enumerations (Amir Tzin) [2049435] - net/mlx5e: Rename lro_timeout to packet_merge_timeout (Amir Tzin) [2049435] - net/mlx5: SF_DEV Add SF device trace points (Amir Tzin) [2049435] - net/mlx5: SF, Add SF trace points (Amir Tzin) [2049435] - net/mlx5: Bridge, support replacing existing FDB entry (Amir Tzin) [2049435] - net/mlx5: Bridge, extract code to lookup and del/notify entry (Amir Tzin) [2049435] - net/mlx5: Add periodic update of host time to firmware (Amir Tzin) [2049435 2049717] - net/mlx5: Print health buffer by log level (Amir Tzin) [2049435 2049717] - net/mlx5: Extend health buffer dump (Amir Tzin) [2049435 2049717] - net/mlx5: Reduce flow counters bulk query buffer size for SFs (Amir Tzin) [2049435] - net/mlx5: Fix unused function warning of mlx5i_flow_type_mask (Amir Tzin) [2049435] - net/mlx5: Remove unnecessary checks for slow path flag (Amir Tzin) [2049435] - net/mlx5e: don't write directly to netdev->dev_addr (Amir Tzin) [2049435] - RDMA/mlx5: Use dev_addr_mod() (Amir Tzin) [2049435] - RDMA/mlx5: fix build error with INFINIBAND_USER_ACCESS=n (Amir Tzin) [2049435] - RDMA/mlx5: Attach ndescs to mlx5_ib_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Move struct mlx5_core_mkey to mlx5_ib (Amir Tzin) [2049435] - RDMA/mlx5: Replace struct mlx5_core_mkey by u32 key (Amir Tzin) [2049435] - RDMA/mlx5: Align mlx5e_resources with upstream code. (Amir Tzin) [2049435] - RDMA/mlx5: Remove pd from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove size from struct mlx5_core_mkey (Amir Tzin) [2049435] - RDMA/mlx5: Remove iova from struct mlx5_core_mkey (Amir Tzin) [2049435] - net/mlx5: E-Switch, Increase supported number of forward destinations to 32 (Amir Tzin) [2049435] - net/mlx5: E-Switch, Use dynamic alloc for dest array (Amir Tzin) [2049435] - net/mlx5: Lag, use steering to select the affinity port in LAG (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create/destroy/modify port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create TTC tables for LAG port selection (Amir Tzin) [2049435] - net/mlx5: Lag, add support to create definers for LAG (Amir Tzin) [2049435] - net/mlx5: Lag, set match mask according to the traffic type bitmap (Amir Tzin) [2049435] - net/mlx5: Lag, set LAG traffic type mapping (Amir Tzin) [2049435] - net/mlx5: Lag, move lag files into directory (Amir Tzin) [2049435] - net/mlx5: Introduce new uplink destination type (Amir Tzin) [2049435] - net/mlx5: Add support to create match definer (Amir Tzin) [2049435] - net/mlx5: Introduce port selection namespace (Amir Tzin) [2049435] - net/mlx5: Support partial TTC rules (Amir Tzin) [2049435] - mlx5: prevent 64bit divide (Amir Tzin) [2049435] - net/mlx5: Use system_image_guid to determine bonding (Amir Tzin) [2049435] - net/mlx5: Use native_port_num as 1st option of device index (Amir Tzin) [2049435] - net/mlx5: Introduce new device index wrapper (Amir Tzin) [2049435] - net/mlx5: Check return status first when querying system_image_guid (Amir Tzin) [2049435] - net/mlx5: DR, Prefer kcalloc over open coded arithmetic (Amir Tzin) [2049435] - net/mlx5e: Add extack msgs related to TC for better debug (Amir Tzin) [2049435] - net/mlx5: CT: Fix missing cleanup of ct nat table on init failure (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Skip redundant ct clear actions" (Amir Tzin) [2049435] - net/mlx5: Disable roce at HCA level (Amir Tzin) [2049435] - net/mlx5i: Enable Rx steering for IPoIB via ethtool (Amir Tzin) [2049435] - net/mlx5: Bridge, provide flow source hints (Amir Tzin) [2049435] - net/mlx5: Read timeout values from DTOR (Amir Tzin) [2049435] - net/mlx5: Read timeout values from init segment (Amir Tzin) [2049435] - net/mlx5: Add layout to support default timeouts register (Amir Tzin) [2049435] - net/mlx5: Set devlink reload feature bit for supported devices only (Amir Tzin) [2049435] - RDMA/mlx5: Add optional counter support in get_hw_stats callback (Amir Tzin) [2049435] - RDMA/mlx5: Add modify_op_stat() support (Amir Tzin) [2049435] - RDMA/mlx5: Add steering support in optional flow counters (Amir Tzin) [2049435] - RDMA/mlx5: Support optional counters in hw_stats initialization (Amir Tzin) [2049435] - net/mlx5: Add priorities for counters in RDMA namespaces (Amir Tzin) [2049435] - net/mlx5: Add ifc bits to support optional counters (Amir Tzin) [2049435] - net/mlx5: Enable single IRQ for PCI Function (Amir Tzin) [2049435] - net/mlx5: Shift control IRQ to the last index (Amir Tzin) [2049435] - net/mlx5: Bridge, pop VLAN on egress table miss (Amir Tzin) [2049435] - net/mlx5: Bridge, mark reg_c1 when pushing VLAN (Amir Tzin) [2049435] - net/mlx5: Bridge, extract VLAN pop code to dedicated functions (Amir Tzin) [2049435] - net/mlx5: Bridge, refactor eswitch instance usage (Amir Tzin) [2049435] - net/mlx5e: Support accept action (Amir Tzin) [2049435] - net/mlx5e: Specify out ifindex when looking up encap route (Amir Tzin) [2049435] - net/mlx5e: Reserve a value from TC tunnel options mapping (Amir Tzin) [2049435] - net/mlx5e: Move parse fdb check into actions_match_supported_fdb() (Amir Tzin) [2049435] - net/mlx5e: Split actions_match_supported() into a sub function (Amir Tzin) [2049435] - net/mlx5e: Move mod hdr allocation to a single place (Amir Tzin) [2049435] - net/mlx5e: TC, Refactor sample offload error flow (Amir Tzin) [2049435] - RDMA/mlx5: Avoid taking MRs from larger MR cache pools when a pool is empty (Amir Tzin) [2049435] - IB/mlx5: Flow through a more detailed return code from get_prefetchable_mr() (Amir Tzin) [2049435] - net/mlx5e: Use array_size() helper (Amir Tzin) [2049435] - net/mlx5: Use struct_size() helper in kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Use kvcalloc() instead of kvzalloc() (Amir Tzin) [2049435] - net/mlx5: Tolerate failures in debug features while driver load (Amir Tzin) [2049435] - IB/mlx5: Enable UAR to have DevX UID (Amir Tzin) [2049435] - net/mlx5: Add uid field to UAR allocation structures (Amir Tzin) [2049435] - net/mlx5e: check return value of rhashtable_init (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for ingress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: Enable TC offload for egress MACVLAN (Amir Tzin) [2049435] - net/mlx5e: loopback test is not supported in switchdev mode (Amir Tzin) [2049435] - net/mlx5e: Use NL_SET_ERR_MSG_MOD() for errors parsing tunnel attributes (Amir Tzin) [2049435] - net/mlx5e: Use tc sample stubs instead of ifdefs in source file (Amir Tzin) [2049435] - net/mlx5e: Remove redundant priv arg from parse_pedit_to_reformat() (Amir Tzin) [2049435] - net/mlx5e: Check action fwd/drop flag exists also for nic flows (Amir Tzin) [2049435] - net/mlx5e: Set action fwd flag when parsing tc action goto (Amir Tzin) [2049435] - net/mlx5e: Remove incorrect addition of action fwd flag (Amir Tzin) [2049435] - Revert "net/mlx5e: TC, Fix ct_clear overwriting ct action metadata" (Amir Tzin) [2049435] - net/mlx5e: Use correct return type (Amir Tzin) [2049435] - net/mlx5e: Add error flow for ethtool -X command (Amir Tzin) [2049435] - net/mlx5: Fix rdma aux device on devlink reload (Amir Tzin) [2049434] - RDMA/mlx5: Relax DCS QP creation checks (Amir Tzin) [2049434] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049434] - net/mlx5e: Make use of netdev_warn() (Amir Tzin) [2049434] - net/mlx5: Initialize numa node for all core devices (Amir Tzin) [2049434] - net/mlx5: Allocate individual capability (Amir Tzin) [2049434] - net/mlx5: Reorganize current and maximal capabilities to be per-type (Amir Tzin) [2049434] - net/mlx5: SF, use recent sysfs api (Amir Tzin) [2049434] - net/mlx5: Refcount mlx5_irq with integer (Amir Tzin) [2049434] - net/mlx5: Change SF missing dedicated MSI-X err message to dbg (Amir Tzin) [2049434] - net/mlx5: Align mlx5_irq structure (Amir Tzin) [2049434] - net/mlx5: Delete impossible dev->state checks (Amir Tzin) [2049434] - net/mlx5: Support enable_vnet devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_rdma devlink dev param (Amir Tzin) [2049434] - net/mlx5: Support enable_eth devlink dev param (Amir Tzin) [2049434] - RDMA/mlx5: Drop in-driver verbs object creations (Amir Tzin) [2049434] - RDMA/mlx5: Delete device resource mutex that didn't protect anything (Amir Tzin) [2049434] - RDMA/mlx5: Cancel pkey work before destroying device resources (Amir Tzin) [2049434] - net/mlx5e: Return -EOPNOTSUPP if more relevant when parsing tc actions (Amir Tzin) [2049434] - net/mlx5e: Remove redundant assignment of counter to null (Amir Tzin) [2049434] - net/mlx5e: Remove redundant parse_attr arg (Amir Tzin) [2049434] - net/mlx5e: Remove redundant cap check for flow counter (Amir Tzin) [2049434] - net/mlx5e: Remove redundant filter_dev arg from parse_tc_fdb_actions() (Amir Tzin) [2049434] - net/mlx5e: Remove redundant tc act includes (Amir Tzin) [2049434] - IB/mlx5: Rename is_apu_thread_cq function to is_apu_cq (Amir Tzin) [2049434] - RDMA/mlx5: Add DCS offload support (Amir Tzin) [2049434] - RDMA/mlx5: Separate DCI QP creation logic (Amir Tzin) [2049434] - net/mlx5: Add DCS caps & fields support (Amir Tzin) [2049434] - KVM: nVMX: Inject #UD if VMXON is attempted with incompatible CR0/CR4 (Vitaly Kuznetsov) [2119233] - mm: Fix PASID use-after-free issue (Jerry Snitselaar) [2113046] - scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn() (Rahul Lakkireddy) [2105815] - scsi: csiostor: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix a typo (Rahul Lakkireddy) [2105815] - scsi: csiostor: Assign boolean values to a bool variable (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix fall-through warnings for Clang (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix spelling mistake "couldnt" -> "couldn't" (Rahul Lakkireddy) [2105815] - scsi: csiostor: Add missing description for csio_rnode_fwevt_handler()'s 'fwevt' param (Rahul Lakkireddy) [2105815] - scsi: csiostor: Remove 2 unused variables {mc,edc}_bist_status_rdata_reg (Rahul Lakkireddy) [2105815] - scsi: csiostor: Demote kerneldoc that fails to meet the criteria (Rahul Lakkireddy) [2105815] - scsi: csiostor: Fix misnamed function parameter (Rahul Lakkireddy) [2105815] - scsi: csiostor: Adjust indentation in csio_device_reset (Rahul Lakkireddy) [2105815] - mediatek: mt76: eeprom: fix missing of_node_put() in mt76_find_power_limits_node() (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: consider EHT element size in assoc request (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211: switch airtime fairness back to deficit round-robin scheduling (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: fix throughput regression on DFS channels (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix incorrect testmode ipg on band 1 caused by wmm_idx (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: enlarge maximum VHT MPDU length to 11454 (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix aggregation subframes setting to HE max (Jose Ignacio Tornos Martinez) [2103625] - wifi: mac80211_hwsim: set virtio device ready in probe() (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix possible sdio deadlock in command fail (Jose Ignacio Tornos Martinez) [2103625] - wifi: rtw89: 8852a: rfk: fix div 0 exception (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: do not update pm states in case of error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7615: do not update pm stats in case of error (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Avoid REO CMD failed prints during firmware recovery (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Fix incorrect debug_mask mappings (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix missing skb drop on htc_tx_completion error (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921s: fix firmware download random fail (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix IRQ affinity warning on shutdown (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix netdev open race (Jose Ignacio Tornos Martinez) [2103625] - iwlwifi: fw: init SAR GEO table only if data is present (Jose Ignacio Tornos Martinez) [2103625] - ath10k: htt_tx: do not interpret Eth frames as WiFi (Jose Ignacio Tornos Martinez) [2103625] - ath11k: Don't check arvif->is_started before sending management frames (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix twt table_mask to u16 in mt7915_dev (Jose Ignacio Tornos Martinez) [2103625] - ath11k: reset 11d state in process of recovery (Jose Ignacio Tornos Martinez) [2103625] - brcmfmac: use ISO3166 country code and 0 rev as fallback on brcmfmac43602 chips (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix tx status related use-after-free race on station removal (Jose Ignacio Tornos Martinez) [2103625] - mt76: do not attempt to reorder received 802.3 packets without agg session (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: fix kernel crash at mt7921_pci_remove (Jose Ignacio Tornos Martinez) [2103625] - mt76: fix antenna config missing in 6G cap (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: report rx mode value in mt7915_mac_fill_rx_rate (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: do not pass data pointer to mt7915_mcu_muru_debug_set (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible NULL pointer dereference in mt7915_mac_fill_rx_vector (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix possible uninitialized pointer dereference in mt7986_wmac_gpio_setup (Jose Ignacio Tornos Martinez) [2103625] - ath10k: enable napi on RX path for usb (Jose Ignacio Tornos Martinez) [2103625] - ath11k: fix the warning of dev_wake in mhi_pm_disable_transition() (Jose Ignacio Tornos Martinez) [2103625] - ath11k: acquire ab->base_lock in unassign when finding the peer by addr (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7915: fix DBDC default band selection on MT7915D (Jose Ignacio Tornos Martinez) [2103625] - mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter (Jose Ignacio Tornos Martinez) [2103625] - i40e: Fix tunnel checksum offload with fragmented traffic (Ivan Vecera) [2107977] - net/mlx5e: Fix matchall police parameters validation (Ivan Vecera) [2106271] - net/sched: act_police: allow 'continue' action offload (Ivan Vecera) [2106271] - net: Print hashed skb addresses for all net and qdisc events (Ivan Vecera) [2106271] - net: sched: fixed barrier to prevent skbuff sticking in qdisc backlog (Ivan Vecera) [2106271] - net/sched: act_pedit: sanitize shift argument before usage (Ivan Vecera) [2106271] - net/sched: act_pedit: really ensure the skb is writable (Ivan Vecera) [2106271] - net/sched: taprio: Check if socket flags are valid (Ivan Vecera) [2106271] - net/sched: flower: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: matchall: Avoid overwriting error messages (Ivan Vecera) [2106271] - net/sched: cls_api: Add extack message for unsupported action offload (Ivan Vecera) [2106271] - net/sched: act_vlan: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_tunnel_key: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_skbedit: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_police: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_pedit: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_mpls: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_mirred: Add extack message for offload failure (Ivan Vecera) [2106271] - net/sched: act_gact: Add extack messages for offload failure (Ivan Vecera) [2106271] - net/sched: act_api: Add extack to offload_act_setup() callback (Ivan Vecera) [2106271] - net/sched: flower: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: matchall: Take verbose flag into account when logging error messages (Ivan Vecera) [2106271] - net/sched: fix incorrect vlan_push_eth dest field (Ivan Vecera) [2106271] - net/sched: add vlan push_eth and pop_eth action to the hardware IR (Ivan Vecera) [2106271] - selftests: tc-testing: Increase timeout in tdc config file (Ivan Vecera) [2106271] - flow_offload: improve extack msg for user when adding invalid filter (Ivan Vecera) [2106271] - flow_offload: reject offload for all drivers with invalid police parameters (Ivan Vecera) [2106271] - net: flow_offload: add tc police action parameters (Ivan Vecera) [2106271] - net: sched: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2106271] - net_sched: add __rcu annotation to netdev->qdisc (Ivan Vecera) [2106271] - net/sched: act_police: more accurate MTU policing (Ivan Vecera) [2106271] - net/sched: Enable tc skb ext allocation on chain miss only when needed (Ivan Vecera) [2106271] - net: sched: remove qdisc_qlen_cpu() (Ivan Vecera) [2106271] - net: sched: remove psched_tdiff_bounded() (Ivan Vecera) [2106271] - net: sched: Clarify error message when qdisc kind is unknown (Ivan Vecera) [2106271] - sch_cake: revise Diffserv docs (Ivan Vecera) [2106271] - flow_offload: fix suspicious RCU usage when offloading tc action (Ivan Vecera) [2106271] - net/sched: use min() macro instead of doing it manually (Ivan Vecera) [2106271] - selftests: tc-testing: add action offload selftest for action and filter (Ivan Vecera) [2106271] - flow_offload: validate flags of filter and actions (Ivan Vecera) [2106271] - flow_offload: add reoffload process to update hw_count (Ivan Vecera) [2106271] - net: sched: save full flags for tc action (Ivan Vecera) [2106271] - flow_offload: add process to update action stats from hardware (Ivan Vecera) [2106271] - flow_offload: rename exts stats update functions with hw (Ivan Vecera) [2106271] - flow_offload: add skip_hw and skip_sw to control if offload the action (Ivan Vecera) [2106271] - flow_offload: allow user to offload tc action to net device (Ivan Vecera) [2106271] - flow_offload: add ops to tc_action_ops for flow action setup (Ivan Vecera) [2106271] - flow_offload: rename offload functions with offload instead of flow (Ivan Vecera) [2106271] - flow_offload: add index to flow_action_entry structure (Ivan Vecera) [2106271] - flow_offload: reject to offload tc actions in offload drivers (Ivan Vecera) [2106271] - flow_offload: fill flags to action structure (Ivan Vecera) [2106271] - sch_cake: do not call cake_destroy() from cake_init() (Ivan Vecera) [2106271] - net/sched: fq_pie: prevent dismantle issue (Ivan Vecera) [2106271] - selftests/tc-testing: Fix cannot create /sys/bus/netdevsim/new_device: Directory nonexistent (Ivan Vecera) [2106271] - selftests/tc-testing: add missing config (Ivan Vecera) [2106271] - selftests/tc-testing: add exit code (Ivan Vecera) [2106271] - net/sched: act_ct: Offload only ASSURED connections (Ivan Vecera) [2106271] - selftests/tc-testings: Be compatible with newer tc output (Ivan Vecera) [2106271] - selftests: forwarding: Fix packet matching in mirroring selftests (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any (Ivan Vecera) [2106271] - cls_flower: Fix inability to match GRE/IPIP packets (Ivan Vecera) [2106271] - sch_htb: Add extack messages for EOPNOTSUPP errors (Ivan Vecera) [2106271] - net: sch: simplify condtion for selecting mini_Qdisc_pair buffer (Ivan Vecera) [2106271] - net: sch: eliminate unnecessary RCU waits in mini_qdisc_pair_swap() (Ivan Vecera) [2106271] - net: sched: gred: dynamically allocate tc_gred_qopt_offload (Ivan Vecera) [2106271] - net: stats: Read the statistics in ___gnet_stats_copy_basic() instead of adding. (Ivan Vecera) [2106271] - net: sched: Allow statistics reads from softirq. (Ivan Vecera) [2106271] - net: sched: remove one pair of atomic operations (Ivan Vecera) [2106271] - net: sched: fix logic error in qdisc_run_begin() (Ivan Vecera) [2106271] - net: sch_tbf: Add a graft command (Ivan Vecera) [2106271] - net: sched: Remove Qdisc::running sequence counter (Ivan Vecera) [2106271] - net: sched: Merge Qdisc::bstats and Qdisc::cpu_bstats data types (Ivan Vecera) [2106271] - net: sched: Use _bstats_update/set() instead of raw writes (Ivan Vecera) [2106271] - net: sched: Protect Qdisc::bstats with u64_stats (Ivan Vecera) [2106271] - u64_stats: Introduce u64_stats_set() (Ivan Vecera) [2106271] - gen_stats: Move remaining users to gnet_stats_add_queue(). (Ivan Vecera) [2106271] - mq, mqprio: Use gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add gnet_stats_add_queue(). (Ivan Vecera) [2106271] - gen_stats: Add instead Set the value in __gnet_stats_copy_basic(). (Ivan Vecera) [2106271] - testing: selftests: tc_common: Add tc_check_at_least_x_packets() (Ivan Vecera) [2106271] - testing: selftests: forwarding.config.sample: Add tc flag (Ivan Vecera) [2106271] - net/sched: sch_taprio: properly cancel timer from taprio_destroy() (Ivan Vecera) [2106271] - net: sched: Use struct_size() helper in kvmalloc() (Ivan Vecera) [2106271] - net_sched: Use struct_size() and flex_array_size() helpers (Ivan Vecera) [2106271] - net: prevent user from passing illegal stab size (Ivan Vecera) [2106271] - net: sched: move and reuse mq_change_real_num_tx() (Ivan Vecera) [2106271] - selftests: net: test ethtool -L vs mq (Ivan Vecera) [2106271] - netdevsim: add ability to change channel count (Ivan Vecera) [2106271] - net: add netif_set_real_num_queues() for device reconfig (Ivan Vecera) [2106271] - net: sched: update default qdisc visibility after Tx queue cnt changes (Ivan Vecera) [2106271] - fix array-index-out-of-bounds in taprio_change (Ivan Vecera) [2106271] - Revert "flow_offload: action should not be NULL when it is referenced" (Ivan Vecera) [2106271] - sch_cake: fix srchost/dsthost hashing mode (Ivan Vecera) [2106271] - net/sched: cls_api, reset flags on replay (Ivan Vecera) [2106271] - net: sched: provide missing kdoc for tcf_pkt_info and tcf_ematch_ops (Ivan Vecera) [2106271] - net: flow_offload: correct comments mismatch with code (Ivan Vecera) [2106271] - net/sched: taprio: Fix init procedure (Ivan Vecera) [2106271] - net_sched: refactor TC action init API (Ivan Vecera) [2106271] - tc-testing: Add control-plane selftest for skbmod SKBMOD_F_ECN option (Ivan Vecera) [2106271] - net/sched: act_skbmod: Add SKBMOD_F_ECN option support (Ivan Vecera) [2106271] - qdisc: add new field for qdisc_enqueue tracepoint (Ivan Vecera) [2106271] - net/sched: act_skbmod: Skip non-Ethernet packets (Ivan Vecera) [2106271] - net/sched: Remove unnecessary if statement (Ivan Vecera) [2106271] - net_sched: introduce tracepoint trace_qdisc_enqueue() (Ivan Vecera) [2106271] - net_sched: use px to print skb address in trace_qdisc_dequeue() (Ivan Vecera) [2106271] - net: use px to print skb address in trace_netif_receive_skb (Ivan Vecera) [2106271] - net/sched: sch_taprio: fix typo in comment (Ivan Vecera) [2106271] - flow_offload: action should not be NULL when it is referenced (Ivan Vecera) [2106271] - net: sched: remove qdisc->empty for lockless qdisc (Ivan Vecera) [2106271] - net: sched: implement TCQ_F_CAN_BYPASS for lockless qdisc (Ivan Vecera) [2106271] - net: sched: avoid unnecessary seqcount operation for lockless qdisc (Ivan Vecera) [2106271] - Revert "net/sched: cls_flower: Remove match on n_proto" (Ivan Vecera) [2106271] - net: sched: add barrier to ensure correct ordering for lockless qdisc (Ivan Vecera) [2106271] - net: sched: fix error return code in tcf_del_walker() (Ivan Vecera) [2106271] - net/sched: cls_flower: Remove match on n_proto (Ivan Vecera) [2106271] - sch_cake: revise docs for RFC 8622 LE PHB support (Ivan Vecera) [2106271] - sch_cake: Fix out of bounds when parsing TCP options and header (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_lookup_leaf() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_do_events() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_charge_class() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_change_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_class_mode() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_deactivate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_activate_prios() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_remove_class_from_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_class_to_row() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_next_rb_node() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_wait_tree() (Ivan Vecera) [2106271] - sch_htb: fix doc warning in htb_add_to_id_tree() (Ivan Vecera) [2106271] - net/sched: act_vlan: Test priority 0 modification (Ivan Vecera) [2106271] - net/sched: act_vlan: No dump for unset priority (Ivan Vecera) [2106271] - net: sched: Fix spelling mistakes (Ivan Vecera) [2106271] - net/sched: fq_pie: fix OOB access in the traffic path (Ivan Vecera) [2106271] - net/sched: fq_pie: re-factor fix for fq_pie endless loop (Ivan Vecera) [2106271] - net: taprio offload: enforce qdisc to netdev queue mapping (Ivan Vecera) [2106271] - net/sched: taprio: Drop unnecessary NULL check after container_of (Ivan Vecera) [2106271] - net: flow_offload: add FLOW_ACTION_PPPOE_PUSH (Ivan Vecera) [2106271] - gve: Recording rx queue before sending to napi (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer queue index check (Jordan Kimbrough) [2018609] - gve: Fix GFP flags when allocing pages (Jordan Kimbrough) [2018609] - gve: Add tx|rx-coalesce-usec for DQO (Jordan Kimbrough) [2018609] - gve: Add consumed counts to ethtool stats (Jordan Kimbrough) [2018609] - gve: Implement suspend/resume/shutdown (Jordan Kimbrough) [2018609] - gve: Add optional metadata descriptor type GVE_TXD_MTD (Jordan Kimbrough) [2018609] - gve: remove memory barrier around seqno (Jordan Kimbrough) [2018609] - gve: Update gve_free_queue_page_list signature (Jordan Kimbrough) [2018609] - gve: Move the irq db indexes out of the ntfy block struct (Jordan Kimbrough) [2018609] - gve: Correct order of processing device options (Jordan Kimbrough) [2018609] - gve: fix for null pointer dereference. (Jordan Kimbrough) [2018609] - gve: fix unmatched u64_stats_update_end() (Jordan Kimbrough) [2018609] - gve: Fix off by one in gve_tx_timeout() (Jordan Kimbrough) [2018609] - gve: Add a jumbo-frame device option. (Jordan Kimbrough) [2018609] - gve: Implement packet continuation for RX. (Jordan Kimbrough) [2018609] - gve: Add RX context. (Jordan Kimbrough) [2018609] - gve: Track RX buffer allocation failures (Jordan Kimbrough) [2018609] - gve: Allow pageflips on larger pages (Jordan Kimbrough) [2018609] - gve: Add netif_set_xps_queue call (Jordan Kimbrough) [2018609] - gve: Recover from queue stall due to missed IRQ (Jordan Kimbrough) [2018609] - gve: Do lazy cleanup in TX path (Jordan Kimbrough) [2018609] - gve: Add rx buffer pagecnt bias (Jordan Kimbrough) [2018609] - gve: Switch to use napi_complete_done (Jordan Kimbrough) [2018609] - gve: report 64bit tx_bytes counter from gve_handle_report_stats() (Jordan Kimbrough) [2018609] - gve: fix gve_get_stats() (Jordan Kimbrough) [2018609] - gve: Properly handle errors in gve_assign_qpl (Jordan Kimbrough) [2018609] - gve: Avoid freeing NULL pointer (Jordan Kimbrough) [2018609] - gve: Correct available tx qpl check (Jordan Kimbrough) [2018609] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Jordan Kimbrough) [2018609] - gve: Use kvcalloc() instead of kvzalloc() (Jordan Kimbrough) [2018609] - gve: DQO: avoid unused variable warnings (Jordan Kimbrough) [2018609] - gve: fix the wrong AdminQ buffer overflow check (Jordan Kimbrough) [2018609] - gve: DQO: Remove incorrect prefetch (Jordan Kimbrough) [2018609] - gve: Simplify code and axe the use of a deprecated API (Jordan Kimbrough) [2018609] - gve: Propagate error codes to caller (Jordan Kimbrough) [2018609] - gve: Fix an error handling path in 'gve_probe()' (Jordan Kimbrough) [2018609] - gve: DQO: Fix off by one in gve_rx_dqo() (Jordan Kimbrough) [2018609] - gve: Fix swapped vars when fetching max queues (Jordan Kimbrough) [2018609] - gve: Fix warnings reported for DQO patchset (Jordan Kimbrough) [2018609] - gve: DQO: Add RX path (Jordan Kimbrough) [2018609] - gve: DQO: Add TX path (Jordan Kimbrough) [2018609] - gve: DQO: Configure interrupts on device up (Jordan Kimbrough) [2018609] - gve: DQO: Add ring allocation and initialization (Jordan Kimbrough) [2018609] - gve: DQO: Add core netdev features (Jordan Kimbrough) [2018609] - gve: Update adminq commands to support DQO queues (Jordan Kimbrough) [2018609] - gve: Add DQO fields for core data structures (Jordan Kimbrough) [2018609] - gve: Add dqo descriptors (Jordan Kimbrough) [2018609] - gve: Add support for DQO RX PTYPE map (Jordan Kimbrough) [2018609] - gve: adminq: DQO specific device descriptor logic (Jordan Kimbrough) [2018609] - gve: Introduce per netdev `enum gve_queue_format` (Jordan Kimbrough) [2018609] - gve: Introduce a new model for device options (Jordan Kimbrough) [2018609] - gve: Make gve_rx_slot_page_info.page_offset an absolute offset (Jordan Kimbrough) [2018609] - gve: gve_rx_copy: Move padding to an argument (Jordan Kimbrough) [2018609] - gve: Move some static functions to a common file (Jordan Kimbrough) [2018609] - gve: Correct SKB queue index validation. (Jordan Kimbrough) [2018609] - gve: Upgrade memory barrier in poll routine (Jordan Kimbrough) [2018609] - gve: Add NULL pointer checks when freeing irqs. (Jordan Kimbrough) [2018609] - gve: Update mgmt_msix_idx if num_ntfy changes (Jordan Kimbrough) [2018609] - gve: Check TX QPL was actually assigned (Jordan Kimbrough) [2018609] - net: gve: remove duplicated allowed (Jordan Kimbrough) [2018609] - net: gve: convert strlcpy to strscpy (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing in the tx path (Jordan Kimbrough) [2018609] - gve: Rx Buffer Recycling (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing to the rx path (Jordan Kimbrough) [2018609] - gve: Add support for raw addressing device option (Jordan Kimbrough) [2018609] - net: don't include ethtool.h from netdevice.h (Jordan Kimbrough) [2018609] - gve: Replace zero-length array with flexible-array member (Jordan Kimbrough) [2018609] - gve: Enable Link Speed Reporting in the driver. (Jordan Kimbrough) [2018609] - gve: Use link status register to report link status (Jordan Kimbrough) [2018609] - gve: Batch AQ commands for creating and destroying queues. (Jordan Kimbrough) [2018609] - gve: NIC stats for report-stats and for ethtool (Jordan Kimbrough) [2018609] - gve: Add Gvnic stats AQ command and ethtool show/set-priv-flags. (Jordan Kimbrough) [2018609] - gve: Use dev_info/err instead of netif_info/err. (Jordan Kimbrough) [2018609] - gve: Add stats for gve. (Jordan Kimbrough) [2018609] - gve: Get and set Rx copybreak via ethtool (Jordan Kimbrough) [2018609] - redhat: update ppc64le secureboot signing key (Jarod Wilson) [2109215] - tools: add cpupower daemon reload when installed/upgraded (Jarod Wilson) [2042424] - sfc: fix use after free when disabling sriov (Íñigo Huguet) [2105999] - drm/nouveau: recognise GA103 (Karol Herbst) [1923125] - drm/aperture: Run fbdev removal before internal helpers (Michel Dänzer) [2088410] - drm/i915/ttm: fix 32b build (Michel Dänzer) [2088410] - drm/amd/display: Ensure valid event timestamp for cursor-only commits (Michel Dänzer) [2088410] - drm/amd/pm: Prevent divide by zero (Michel Dänzer) [2088410] - drm/amd/display: Only use depth 36 bpp linebuffers on DCN display engines. (Michel Dänzer) [2088410] - drm/amdkfd: correct the MEC atomic support firmware checking for GC 10.3.7 (Michel Dänzer) [2088410] - drm/i915/selftests: fix subtraction overflow bug (Michel Dänzer) [2088410] - drm/i915/gt: Serialize TLB invalidates with GT resets (Michel Dänzer) [2088410] - drm/i915/gt: Serialize GRDOM access between multiple engine resets (Michel Dänzer) [2088410] - drm/i915/ttm: fix sg_table construction (Michel Dänzer) [2088410] - drm/i915/selftests: fix a couple IS_ERR() vs NULL tests (Michel Dänzer) [2088410] - drm/i915/gvt: IS_ERR() vs NULL bug in intel_gvt_update_reg_whitelist() (Michel Dänzer) [2088410] - drm/i915/guc: ADL-N should use the same GuC FW as ADL-S (Michel Dänzer) [2088410] - drm/i915: fix a possible refcount leak in intel_dp_add_mst_connector() (Michel Dänzer) [2088410] - drm/amdgpu/display: disable prefer_shadow for generic fb helpers (Michel Dänzer) [2088410] - drm/amdgpu: keep fbdev buffers pinned during suspend (Michel Dänzer) [2088410] - drm/fourcc: fix integer type usage in uapi header (Michel Dänzer) [2088410] - drm/i915/dgfx: Disable d3cold at gfx root port (Michel Dänzer) [2088410] - drm/i915/gem: add missing else (Michel Dänzer) [2088410] - drm/amdgpu: To flush tlb for MMHUB of RAVEN series (Michel Dänzer) [2088410] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2088410] - drm/amdgpu: fix adev variable used in amdgpu_device_gpu_recover() (Michel Dänzer) [2088410] - drm/amd: Revert "drm/amd/display: keep eDP Vdd on when eDP stream is already enabled" (Michel Dänzer) [2088410] - udmabuf: add back sanity check (Michel Dänzer) [2088410] - drm/amd/display: Fix typo in override_lane_settings (Michel Dänzer) [2088410] - amd/display/dc: Fix COLOR_ENCODING and COLOR_RANGE doing nothing for DCN20+ (Michel Dänzer) [2088410] - drm/i915: Implement w/a 22010492432 for adl-s (Michel Dänzer) [2088410] - drm/i915/uc: remove accidental static from a local variable (Michel Dänzer) [2088410] - drm/amd/display: Cap OLED brightness per max frame-average luminance (Michel Dänzer) [2088410] - drm/amdgpu: Fix GTT size reporting in amdgpu_ioctl (Michel Dänzer) [2088410] - drm/i915/reset: Fix error_state_read ptr + offset use (Michel Dänzer) [2088410] - drm/amdkfd: add pinned BOs to kfd_bo_list (Michel Dänzer) [2088410] - drm/amdkfd: Use mmget_not_zero in MMU notifier (Michel Dänzer) [2088410] - drm/amdgpu: Resolve RAS GFX error count issue after cold boot on Arcturus (Michel Dänzer) [2088410] - drm/amd/display: Read Golden Settings Table from VBIOS (Michel Dänzer) [2088410] - Revert "drm/amd/display: Fix DCN3 B0 DP Alt Mapping" (Michel Dänzer) [2088410] - drm/amdgpu: update VCN codec support for Yellow Carp (Michel Dänzer) [2088410] - drm/amd/display: remove stale config guards (Michel Dänzer) [2088410] - drm/amdgpu/jpeg2: Add jpeg vmid update under IB submit (Michel Dänzer) [2088410] - drm/atomic: Force bridge self-refresh-exit on CRTC switch (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Support PSR-exit to disable transition (Michel Dänzer) [2088410] - drm/amdkfd:Fix fw version for 10.3.6 (Michel Dänzer) [2088410] - drm/amd/pm: use bitmap_{from,to}_arr32 where appropriate (Michel Dänzer) [2088410] - drm/amd/pm: correct the metrics version for SMU 11.0.11/12/13 (Michel Dänzer) [2088410] - drm/amd/pm: Fix missing thermal throttler status (Michel Dänzer) [2088410] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2088410] - drm/radeon: fix a possible null pointer dereference (Michel Dänzer) [2088410] - drm/amd/display: Check zero planes for OTG disable W/A on clock change (Michel Dänzer) [2088410] - drm/amd/display: Check if modulo is 0 before dividing. (Michel Dänzer) [2088410] - drm/amdgpu: fix limiting AV1 to the first instance on VCN3 (Michel Dänzer) [2088410] - drm/bridge: ti-sn65dsi83: Handle dsi_lanes == 0 as invalid (Michel Dänzer) [2088410] - drm/amdgpu: Off by one in dm_dmub_outbox1_low_irq() (Michel Dänzer) [2088410] - gma500: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/i915/dsi: fix VBT send packet port selection for ICL+ (Michel Dänzer) [2088410] - drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX (Michel Dänzer) [2088410] - drm/nouveau/kms/nv50-: atom: fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/clk: Fix an incorrect NULL check on list iterator (Michel Dänzer) [2088410] - drm/nouveau/subdev/bus: Ratelimit logging for fault errors (Michel Dänzer) [2088410] - drm/amdgpu/cs: make commands with 0 chunks illegal behaviour. (Michel Dänzer) [2088410] - drm/amdgpu: add beige goby PCI ID (Michel Dänzer) [2088410] - drm/i915: Fix CFI violation with show_dynamic_id() (Michel Dänzer) [2088410] - drm/bridge: it6505: Send DPCD SET_POWER to downstream (Michel Dänzer) [2088410] - drm/panel: panel-simple: Fix proper bpc for AM-1280800N3TZQW-T00H (Michel Dänzer) [2088410] - drm/panel: simple: Add missing bus flags for Innolux G070Y2-L01 (Michel Dänzer) [2088410] - drm/bridge: Fix it6505 Kconfig DRM_DP_AUX_BUS dependency (Michel Dänzer) [2088410] - drm/bridge: Fix error handling in analogix_dp_probe (Michel Dänzer) [2088410] - drm/bridge: anx7625: Use uint8 for lane-swing arrays (Michel Dänzer) [2088410] - drm/amd/amdgpu: Remove static from variable in RLCG Reg RW (Michel Dänzer) [2088410] - drm/amd/amdgpu: Fix asm/hypervisor.h build error. (Michel Dänzer) [2088410] - drm/amd/amdgpu: Only reserve vram for firmware with vega9 MS_HYPERV host. (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix HFP_HSW_HBP_HI and HFP_MIN handling (Michel Dänzer) [2088410] - drm: bridge: icn6211: Fix register layout (Michel Dänzer) [2088410] - drm/bridge: adv7511: clean up CEC adapter when probe fails (Michel Dänzer) [2088410] - drm/bridge: anx7625: add missing destroy_workqueue() in anx7625_i2c_probe() (Michel Dänzer) [2088410] - drm/edid: fix invalid EDID extension block filtering (Michel Dänzer) [2088410] - drm/bridge: it6505: Fix build error (Michel Dänzer) [2088410] - drm: bridge: it66121: Fix the register page length (Michel Dänzer) [2088410] - drm/vmwgfx: Fix an invalid read (Michel Dänzer) [2088410] - drm/ssd130x: Reduce temporary buffer sizes (Michel Dänzer) [2088410] - drm/ssd130x: Fix rectangle updates (Michel Dänzer) [2088410] - drm/format-helper: Fix XRGB888 to monochrome conversion (Michel Dänzer) [2088410] - drm/format-helper: Rename drm_fb_xrgb8888_to_mono_reversed() (Michel Dänzer) [2088410] - drm/solomon: Make DRM_SSD130X depends on MMU (Michel Dänzer) [2088410] - drm: ssd130x: Always apply segment remap setting (Michel Dänzer) [2088410] - drm: ssd130x: Fix COM scan direction register mask (Michel Dänzer) [2088410] - drm/bridge: anx7625: check the return on anx7625_aux_trans (Michel Dänzer) [2088410] - drm/selftests: missing error code in igt_buddy_alloc_smoke() (Michel Dänzer) [2088410] - drm/bridge_connector: enable HPD by default if supported (Michel Dänzer) [2088410] - drm: fix EDID struct for old ARM OABI format (Michel Dänzer) [2088410] - drm/amdgpu: Move mutex_init(&smu->message_lock) to smu_early_init() (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu13 (Michel Dänzer) [2088410] - drm/amd/pm: update smartshift powerboost calc for smu12 (Michel Dänzer) [2088410] - drm/amdgpu/ucode: Remove firmware load type check in amdgpu_ucode_free_bo (Michel Dänzer) [2088410] - drm/amdgpu/psp: move PSP memory alloc from hw_init to sw_init (Michel Dänzer) [2088410] - drm/amd/pm: fix the compile warning (Michel Dänzer) [2088410] - drm/amdkfd: Fix circular lock dependency warning (Michel Dänzer) [2088410] - drm/plane: Move range check for format_count earlier (Michel Dänzer) [2088410] - drm/amdgpu/sdma: Fix incorrect calculations of the wptr of the doorbells (Michel Dänzer) [2088410] - drm/amd/pm: fix double free in si_parse_power_table() (Michel Dänzer) [2088410] - drm/amdgpu/pm: fix the null pointer while the smu is disabled (Michel Dänzer) [2088410] - drm/amd/display: Disabling Z10 on DCN31 (Michel Dänzer) [2088410] - drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes (Michel Dänzer) [2088410] - drm/vmwgfx: validate the screen formats (Michel Dänzer) [2088410] - drm/selftests: fix a shift-out-of-bounds bug (Michel Dänzer) [2088410] - drm/i915: Fix -Wstringop-overflow warning in call to intel_read_wm_latency() (Michel Dänzer) [2088410] - selftests/xsk: Disable hanging BPF RES tests (Felix Maurer) [2116940] - NLM: Defend against file_lock changes after vfs_test_lock() (Benjamin Coddington) [2094884] - ice: Fix VF not able to send tagged traffic with no VLAN filters (Petr Oros) [2055446] - ice: Ignore error message when setting same promiscuous mode (Petr Oros) [2100683] - ice: Fix clearing of promisc mode with bridge over bond (Petr Oros) [2100683] - ice: Ignore EEXIST when setting promisc mode (Petr Oros) [2100683] - ice: Fix double VLAN error when entering promisc mode (Petr Oros) [2100683]- fs: dlm: fix build with CONFIG_IPV6 disabled (Alexander Aring) [2036988] - fs: dlm: don't call kernel_getpeername() in error_report() (Alexander Aring) [2036988] - fs: dlm: use sk->sk_socket instead of con->sock (Alexander Aring) [2036988] - x86: intel_epb: Allow model specific normal EPB value (Prarit Bhargava) [2101488] - x86: intel_epb: Do not build when CONFIG_PM is unset (Prarit Bhargava) [2101488] - x86: intel_epb: Take CONFIG_PM into account (Prarit Bhargava) [2101488] - PM / arch: x86: MSR_IA32_ENERGY_PERF_BIAS sysfs interface (Prarit Bhargava) [2101488] - PM / arch: x86: Rework the MSR_IA32_ENERGY_PERF_BIAS handling (Prarit Bhargava) [2101488] - thermal: int340x: Add Raptor Lake PCI device id (Prarit Bhargava) [2064828] - thermal: int340x: Support Raptor Lake (Prarit Bhargava) [2064828] - nvme-fc: restart admin queue if the caller needs to restart queue (Ewan D. Milne) [2095693] - netfilter: nf_tables: replace BUG_ON by element length check (Florian Westphal) [2104497] - netfilter: nf_log: incorrect offset to network header (Florian Westphal) [2104497] - netfilter: nft_set_pipapo: release elements in clone from abort path (Florian Westphal) [2104497] - netfilter: nf_tables: stricter validation of element data (Florian Westphal) [2104497] - netfilter: nft_dynset: restore set element counter when failing to update (Florian Westphal) [2104497] - netfilter: use get_random_u32 instead of prandom (Florian Westphal) [2104497] - netfilter: nf_tables: memleak flow rule from commit path (Florian Westphal) [2104497] - netfilter: nf_tables: hold mutex on netns pre_exit path (Florian Westphal) [2104497] - netfilter: conntrack: re-fetch conntrack after insertion (Florian Westphal) [2104497] - netfilter: flowtable: fix excessive hw offload attempts after failure (Florian Westphal) [2104497] - netfilter: flowtable: avoid possible false sharing (Florian Westphal) [2104497] - netfilter: nf_nat_h323: eliminate anonymous module_init & module_exit (Florian Westphal) [2104497] - netfilter: ip6t_rt: fix rt0_hdr parsing in rt_mt6 (Florian Westphal) [2104497] - netfilter: socket: icmp6: fix use-after-scope (Florian Westphal) [2104497] - netfilter: nft_fib_ipv6: skip ipv6 packets from any to link-local (Florian Westphal) [2104497] - net/mlx5: Remove ConnectX-7 device from the unsupported devices (Kamal Heib) [1899567] - fs: dlm: change posix lock sigint handling (Alexander Aring) [2088499] - fs: dlm: use dlm_plock_info for do_unlock_close (Alexander Aring) [2088499] - fs: dlm: change plock interrupted message to debug again (Alexander Aring) [2088499] - fs: dlm: add pid to debug log (Alexander Aring) [2088499] - fs: dlm: plock use list_first_entry (Alexander Aring) [2088499] - dlm: replace usage of found with dedicated list iterator variable (Alexander Aring) [2088499] - dlm: move global to static inits (Alexander Aring) [2088499] - dlm: remove unnecessary INIT_LIST_HEAD() (Alexander Aring) [2088499] - dlm: improve plock logging if interrupted (Alexander Aring) [2088499] - dlm: rearrange async condition return (Alexander Aring) [2088499] - dlm: cleanup plock_op vs plock_xop (Alexander Aring) [2088499] - dlm: replace sanity checks with WARN_ON (Alexander Aring) [2088499]- selftests: mptcp: make sendfile selftest work (Florian Westphal) [2109046] - selftests: mptcp: more stable simult_flows tests (Florian Westphal) [2109046] - be2net: Remove useless DMA-32 fallback configuration (Petr Oros) [2051324] - ethernet: constify references to netdev->dev_addr in drivers (Petr Oros) [2051324] - ethernet: Remove redundant 'flush_workqueue()' calls (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2051324] - ethernet: use eth_hw_addr_set() (Petr Oros) [2051324] - be2net: Use irq_update_affinity_hint() (Petr Oros) [2051324] - RedHat: ASoC: SOF: Intel: do not enable IMR boot when resuming by default (Jaroslav Kysela) [2114931] - ASoC: SOF: make ctx_store and ctx_restore as optional (Jaroslav Kysela) [2114931] - ASoC: SOF: ipc3-topology: Prevent double freeing of ipc_control_data via load_bytes (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries for AMD platforms (Jaroslav Kysela) [2114931] - ASoC: amd: yc: Update DMI table entries (Jaroslav Kysela) [2114931] - thunderbolt: Add DP OUT resource when DP tunnel is discovered (Torez Smith) [2107601] - iavf: Fix VLAN_V2 addition/rejection (Petr Oros) [2115618] - iavf: Fix deadlock in initialization (Petr Oros) [2054656] - qede: Reduce verbosity of ptp tx timestamp (Manish Chopra) [2080655] - dmaengine: idxd: Fixup merge conflict resolution from upstream (Jerry Snitselaar) [2100927] - dmaengine: idxd: skip clearing device context when device is read-only (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_transfer_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: add RO check for wq max_batch_size write (Jerry Snitselaar) [2100927] - dmaengine: idxd: fix device cleanup on disable (Jerry Snitselaar) [2100927] - Revert "dmaengine: idxd: Separate user and kernel pasid enabling" (Jerry Snitselaar) [2100927] - net: atlantic: always deep reset on pm op, fixing up my null deref regression (Foggy Liu) [2039680] - net: atlantic: invert deep par in pm functions, preventing null derefs (Foggy Liu) [2039680] - s390/ap: extend AP change bindings-complete uevent with counter (Mete Durlu) [2114907] - powerpc/memhotplug: Make lmb size 64bit (Diego Domingos) [2116517] - powerpc/drmem: Make lmb_size 64 bit (Diego Domingos) [2116517] - RHEL-only: tools: arm64: Use alternative.h header in sysreg.h (Eric Auger) [2118527]- vmxnet3: do not reschedule napi for rx processing (Kamal Heib) [2117263] - lockdown: also lock down previous kgdb use (Lenny Szubowicz) [2104748] {CVE-2022-21499} - sfc: fix kernel panic when creating VF (Íñigo Huguet) [2114738] - net/mlx4_en: use kzalloc (Amir Tzin) [2049433] - net/mlx4: Delete useless moduleparam include (Amir Tzin) [2049433] - RDMA/mlx4: remove redundant assignment to variable nreq (Amir Tzin) [2049433] - RDMA/mlx4: Delete useless module.h include (Amir Tzin) [2049433] - RDMA/mlx4: Don't continue event handler after memory allocation failure (Amir Tzin) [2049433] - net/mlx4: Use irq_update_affinity_hint() (Amir Tzin) [2049433] - RDMA/mlx4: Use bitmap_alloc() when applicable (Amir Tzin) [2049433] - net/mlx4_en: Update reported link modes for 1/10G (Amir Tzin) [2049433] - ethernet: Remove redundant 'flush_workqueue()' calls (Amir Tzin) [2049433] - mlx4: constify args for const dev_addr (Amir Tzin) [2049433] - mlx4: remove custom dev_addr clearing (Amir Tzin) [2049433] - mlx4: replace mlx4_u64_to_mac() with u64_to_ether_addr() (Amir Tzin) [2049433] - mlx4: replace mlx4_mac_to_u64() with ether_addr_to_u64() (Amir Tzin) [2049433] - net/mlx4_en: avoid one cache line miss to ring doorbell (Amir Tzin) [2049433] - net/mlx4_en: Add XDP_REDIRECT statistics (Amir Tzin) [2049433] - net/mlx4: Use array_size() helper in copy_to_user() (Amir Tzin) [2049433] - net: mlx4: Add support for XDP_REDIRECT (Amir Tzin) [2049433] - net/mellanox: switch from 'pci_' to 'dma_' API (Amir Tzin) [2049433] - net/mlx4: Use ARRAY_SIZE to get an array's size (Amir Tzin) [2049433] - net/mlx4: make the array states static const, makes object smaller (Amir Tzin) [2049433] - dma-direct: use the correct size for dma_set_encrypted() (Jerry Snitselaar) [2105608] - dma-debug: make things less spammy under memory pressure (Jerry Snitselaar) [2105608] - dma-iommu: Check that swiotlb is active before trying to use it (Jerry Snitselaar) [2105608] - cpufreq: powernow-k8: Re-order the init checks (Mark Langsdorf) [2072974] - cpufreq: unify show() and store() naming and use __ATTR_XX (Mark Langsdorf) [2072974] - cpufreq: amd-pstate: Add more tracepoint for AMD P-State module (Mark Langsdorf) [2072974] - cpufreq: CPPC: Fix performance/frequency conversion (Mark Langsdorf) [2072974] - cpufreq: Move to_gov_attr_set() to cpufreq.h (Mark Langsdorf) [2072974] - cpufreq: use default_groups in kobj_type (Mark Langsdorf) [2072974] - cpufreq: Fix initialization of min and max frequency QoS requests (Mark Langsdorf) [2072974] - cpufreq: Fix a comment in cpufreq_policy_free (Mark Langsdorf) [2072974] - cpufreq: Fix get_cpu_device() failure in add_cpu_dev_symlink() (Mark Langsdorf) [2072974] - cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory (Mark Langsdorf) [2072974] - cpufreq: sh: Remove sh_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: acpi: Remove acpi_cpufreq_cpu_ready() (Mark Langsdorf) [2072974] - cpufreq: Fix fall-through warning for Clang (Mark Langsdorf) [2072974] - cpufreq: Remove ->resolve_freq() (Mark Langsdorf) [2072974] - cpufreq: Reuse cpufreq_driver_resolve_freq() in __cpufreq_driver_target() (Mark Langsdorf) [2072974] - cpufreq: Remove the ->stop_cpu() driver callback (Mark Langsdorf) [2072974] - cpufreq: powernv: Migrate to ->exit() callback instead of ->stop_cpu() (Mark Langsdorf) [2072974] - cpufreq: Make cpufreq_online() call driver->offline() on errors (Mark Langsdorf) [2072974] - cpufreq: sh: Remove unused linux/sched.h headers (Mark Langsdorf) [2072974] - cpufreq: stats: Clean up local variable in cpufreq_stats_create_table() (Mark Langsdorf) [2072974] - cpufreq: Remove unused for_each_policy macro (Mark Langsdorf) [2072974] - cpufreq: Rudimentary typos fix in the file s5pv210-cpufreq.c (Mark Langsdorf) [2072974] - ACPI: CPPC: Fix enabling CPPC on AMD systems with shared memory (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require flexible address space if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Don't require _OSC if X86_FEATURE_CPPC is supported (Mark Langsdorf) [2067296] - x86/ACPI: CPPC: Rename cppc_msr.c to cppc.c (Mark Langsdorf) [2067296] - ACPI: CPPC: Only probe for _CPC if CPPC v2 is acked (Mark Langsdorf) [2067296] - ACPI: CPPC: Assume no transition latency if no PCCT (Mark Langsdorf) [2067296] - ACPI: bus: Set CPPC _OSC bits for all and when CPPC_LIB is supported (Mark Langsdorf) [2067296] - ACPI: CPPC: Check _OSC for flexible address space (Mark Langsdorf) [2067296] - ACPI: processor: idle: Avoid falling back to C3 type C-states (Mark Langsdorf) [2067296] - Revert "ACPI: processor: idle: Only flush cache on entering C3" (Mark Langsdorf) [2067296] - ACPI: CPPC: Change default error code and clean up debug messages in probe (Mark Langsdorf) [2067296] - ACPI: CPPC: Avoid out of bounds access when parsing _CPC data (Mark Langsdorf) [2067296] - ACPI: tables: Make LAPIC_ADDR_OVR address readable in message (Mark Langsdorf) [2067296] - ACPI: IPMI: replace usage of found with dedicated list iterator variable (Mark Langsdorf) [2067296] - ACPI, APEI: Use the correct variable for sizeof() (Mark Langsdorf) [2067296] - clocksource: acpi_pm: fix return value of __setup handler (Mark Langsdorf) [2067296] - ACPI / x86: Add support for LPS0 callback handler (Mark Langsdorf) [2067296] - ACPI: bus: Avoid using CPPC if not supported by firmware (Mark Langsdorf) [2067296] - Revert "ACPI: Pass the same capabilities to the _OSC regardless of the query flag" (Mark Langsdorf) [2067296] - ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU (Mark Langsdorf) [2067296] - PM: hibernate: Honour ACPI hardware signature by default for virtual guests (Mark Langsdorf) [2067296] - ACPI: NFIT: Remove block aperture support (Mark Langsdorf) [2067296] - x86, ACPI: rename init_freq_invariance_cppc() to arch_init_invariance_cppc() (Mark Langsdorf) [2067296] - ACPI/APEI: Limit printable size of BERT table data (Mark Langsdorf) [2067296] - ACPI: APEI: fix return value of __setup handlers (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Lenovo Yoga Tablet 1050F/L (Mark Langsdorf) [2067296] - ACPI / x86: Add skip i2c clients quirk for Nextbook Ares 8 (Mark Langsdorf) [2067296] - ACPICA: Avoid walking the ACPI Namespace if it is not there (Mark Langsdorf) [2067296] - ACPI: processor idle: Check for architectural support for LPI (Mark Langsdorf) [2067296] - ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3 (Mark Langsdorf) [2067296] - ACPI: fan: Add additional attributes for fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Properly handle fine grain control (Mark Langsdorf) [2067296] - ACPI: fan: Optimize struct acpi_fan_fif (Mark Langsdorf) [2067296] - ACPI: fan: Separate file for attributes creation (Mark Langsdorf) [2067296] - ACPI: fan: Fix error reporting to user space (Mark Langsdorf) [2067296] - ACPI: clean up double words in two comments (Mark Langsdorf) [2067296] - ACPI: property: Get rid of redundant 'else' (Mark Langsdorf) [2067296] - ACPI: EC: Rearrange code in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Reduce indentation level in acpi_ec_submit_event() (Mark Langsdorf) [2067296] - ACPI: EC: Do not return result from advance_transaction() (Mark Langsdorf) [2067296] - ACPI: EC / PM: Print additional debug message in acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067296] - ACPI: PM: Print additional debug message in acpi_s2idle_wake() (Mark Langsdorf) [2067296] - ACPI: tables: Add CEDT signature to the list of known tables (Mark Langsdorf) [2067296] - ACPI: properties: Consistently return -ENOENT if there are no more references (Mark Langsdorf) [2067296] - ACPI: OSL: Fix and clean up acpi_os_read/write_port() (Mark Langsdorf) [2067296] - ACPICA: Use uintptr_t and offsetof() in Linux kernel builds (Mark Langsdorf) [2067296] - ACPI: processor: idle: Only flush cache on entering C3 (Mark Langsdorf) [2067296] - intel_idle: Add AlderLake support (Lenny Szubowicz) [2075709] - intel_idle: Fix SPR C6 optimization (Lenny Szubowicz) [2075709] - intel_idle: Fix the 'preferred_cstates' module parameter (Lenny Szubowicz) [2075709] - cpuidle: intel_idle: Update intel_idle() kerneldoc comment (Lenny Szubowicz) [2075709] - ice: Fix promiscuous mode not turning off (Petr Oros) [2088787] - ice: Introduce enabling promiscuous mode on multiple VF's (Petr Oros) [2088787] - PCI/IOV: Add pci_iov_get_pf_drvdata() to allow VF reaching the drvdata of a PF (Myron Stowe) [2106259] - PCI/IOV: Add pci_iov_vf_id() to get VF index (Myron Stowe) [2106259] - redhat: enable CONFIG_MAXLINEAR_GPHY as module (Petr Oros) [2071856] - net: phy: enhance GPY115 loopback disable function (Petr Oros) [2071856] - net: phy: add Maxlinear GPY115/21x/24x driver (Petr Oros) [2071856] - cgroup: Use css_tryget() instead of css_tryget_online() in task_get_css() (Vratislav Bendel) [2111491] - ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe (Jaroslav Kysela) [2065580] - ASoC: amd: Add support for enabling DMIC on acp6x via _DSD (Jaroslav Kysela) [2065580] - soundwire: intel: prevent pm_runtime resume prior to system suspend (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (fw v1.0.0) (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk for Fiero SC-01 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Add ASP TX3/4 source to register patch (Jaroslav Kysela) [2065580] - ASoC: dapm: Initialise kcontrol data for mux/demux controls (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: fix kernel NULL pointer dereference when IO error (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Correct some control names (Jaroslav Kysela) [2065580] - ASoC: wm5110: Fix DRE control (Jaroslav Kysela) [2065580] - ASoC: wm_adsp: Fix event for preloader (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_wm5102: Fix GPIO related probe-ordering problem (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Clarify the cl_dsp_init() flow (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-loader: Make sure that the fw load sequence is followed (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda-dsp: Expose hda_dsp_core_power_up() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: initialize workqueues in probe (Jaroslav Kysela) [2065580] - ASoC: rt7*-sdw: harden jack_detect_handler (Jaroslav Kysela) [2065580] - ASoC: rt711: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_sdw: handle errors on card registration (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca-sdw: fix calibrate mutex initialization (Jaroslav Kysela) [2065580] - ASoC: Realtek/Maxim SoundWire codecs: disable pm_runtime on remove (Jaroslav Kysela) [2065580] - ASoC: ops: Fix off by one in range control validation (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the handling of fmt_config flexible array (Jaroslav Kysela) [2065580] - ASoC: Intel: Skylake: Correct the ssp rate discovery in skl_get_ssp_clks() (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc221 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: fix mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix headset mic for Acer SF313-51 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Apply quirk for another HP ProDesk 600 G3 model (Jaroslav Kysela) [2065580] - ALSA: hda - Add fixup for Dell Latitidue E5430 (Jaroslav Kysela) [2065580] - ASoC: SOF: Intel: hda: Fix compressed stream position tracking (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Move and correct size checks in sof_ipc3_control_load_bytes() (Jaroslav Kysela) [2065580] - ASoC: codecs: rt700/rt711/rt711-sdca: resume bus/codec in .set_jack_detect (Jaroslav Kysela) [2065580] - ASoC: rt711-sdca: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: rt711: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ALSA: cs46xx: Fix missing snd_card_free() call at probe error (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo L140PU (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workarounds for Behringer UMC 204/404 HD (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo NS50PU (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for Clevo PD70PNT (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Apply fixup for Lenovo Yoga Duet 7 properly (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - ALC897 headset MIC no sound (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add mute LED quirk for HP Omen laptop (Jaroslav Kysela) [2065580] - ALSA: hda/conexant: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: hda: Fix discovery of i915 graphics PCI device (Jaroslav Kysela) [2065580] - ALSA: hda/via: Fix missing beep setup (Jaroslav Kysela) [2065580] - ALSA: memalloc: Drop x86-specific hack for WC allocations (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add HW8326 support (Jaroslav Kysela) [2065580] - ALSA: hda: MTL: add HD Audio PCI ID and HDMI codec vendor ID (Jaroslav Kysela) [2065580] - ASoC: es8328: Fix event generation for deemphasis control (Jaroslav Kysela) [2065580] - ASoC: cs42l51: Correct minimum value for SX volume control (Jaroslav Kysela) [2065580] - ASoC: cs42l56: Correct typo in minimum level for SX volume controls (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Correct TLV for Bypass Volume (Jaroslav Kysela) [2065580] - ASoC: cs53l30: Correct number of volume levels on SX controls (Jaroslav Kysela) [2065580] - ASoC: cs35l36: Update digital volume TLV (Jaroslav Kysela) [2065580] - ASoC: cs42l52: Fix TLV scales for mixer controls (Jaroslav Kysela) [2065580] - ASoC: Intel: cirrus-common: fix incorrect channel mapping (Jaroslav Kysela) [2065580] - ASoC: nau8822: Add operation for internal PLL off and on (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Add quirk for HP Dev One (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo Yoga DuetITL 2021 (Jaroslav Kysela) [2065580] - ALSA: hda/conexant - Fix loopback issue with CX20632 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Set up (implicit) sync for Saffire 6 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Skip generic sync EP parse for secondary EP (Jaroslav Kysela) [2065580] - ASoC: rt5640: Do not manipulate pin "Platform Clock" if the "Platform Clock" is not in the DAPM (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: Fixed Build error (Jaroslav Kysela) [2065580] - ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control (Jaroslav Kysela) [2065580] - ASoC: max98090: Move check for invalid values before casting in max98090_put_enab_tlv() (Jaroslav Kysela) [2065580] - ALSA: pcm: Check for null pointer of pointer substream before dereferencing it (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Set scontrol->priv to NULL after freeing it (Jaroslav Kysela) [2065580] - ASoC: cs35l41: Fix an out-of-bounds access in otp_packed_element_t (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Move generic implicit fb quirk entries into quirks.c (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add quirk bits for enabling/disabling generic implicit fb (Jaroslav Kysela) [2065580] - ASoC: amd: Add driver data to acp6x machine driver (Jaroslav Kysela) [2065580] - ASoC: rt1015p: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: max98357a: remove dependency on GPIOLIB (Jaroslav Kysela) [2065580] - ASoC: rt5645: Fix errorenous cleanup order (Jaroslav Kysela) [2065580] - ASoC: SOF: amd: add missing platform_device_unregister in acp_pci_rn_probe (Jaroslav Kysela) [2065580] - ASoC: Intel: sof_ssp_amp: fix no DMIC BE Link on Chromebooks (Jaroslav Kysela) [2065580] - ASoC: tscs454: Add endianness flag in snd_soc_component_driver (Jaroslav Kysela) [2065580] - ASoC: SOF: ipc3-topology: Correct get_control_data for non bytes payload (Jaroslav Kysela) [2065580] - ASoC: dapm: Don't fold register value changes into notifications (Jaroslav Kysela) [2065580] - ASoC: Intel: bytcr_rt5640: Add quirk for the HP Pro Tablet 408 (Jaroslav Kysela) [2065580] - ALSA: jack: Access input_dev under mutex (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS (Jaroslav Kysela) [2065580] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9520 laptop (Jaroslav Kysela) [2065580] - ALSA: hda/realtek - Add new type for ALC245 (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Optimize TEAC clock quirk (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Configure sync endpoints before data (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Add missing ep_idx in fixed EP quirks (Jaroslav Kysela) [2065580] - ALSA: usb-audio: Workaround for clock setup on TEAC devices (Jaroslav Kysela) [2065580] - ALSA: ctxfi: Add SB046x PCI ID (Jaroslav Kysela) [2065580] - NFS: Fix initialisation of nfs_client cl_flags field (Scott Mayhew) [2114577] - Documentation: Add an explanation of NFSv4 client identifiers (Dave Wysochanski) [1801326]- crypto: chelsio/chcr - Remove useless MODULE_VERSION (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove unused function (Rahul Lakkireddy) [2105817] - crypto: chelsio - Read rxchannel-id from firmware (Rahul Lakkireddy) [2105817] - crypto: chelsio - Fix some kernel-doc issues (Rahul Lakkireddy) [2105817] - crypto: chelsio - remove set but not used variable 'adap' (Rahul Lakkireddy) [2105817] - dm raid: fix address sanitizer warning in raid_resume (Benjamin Marzinski) [2115118] - dm raid: fix address sanitizer warning in raid_status (Benjamin Marzinski) [2115118] - dm: return early from dm_pr_call() if DM device is suspended (Benjamin Marzinski) [2115118] - dm thin: fix use-after-free crash in dm_sm_register_threshold_callback (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks discarded, not number of discard bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks written, not number of write bios (Benjamin Marzinski) [2115118] - dm writecache: count number of blocks read, not number of read bios (Benjamin Marzinski) [2115118] - dm writecache: return void from functions (Benjamin Marzinski) [2115118] - dm kcopyd: use __GFP_HIGHMEM when allocating pages (Benjamin Marzinski) [2115118] - dm writecache: set a default MAX_WRITEBACK_JOBS (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_add_disks (Benjamin Marzinski) [2115118] - dm raid: fix KASAN warning in raid5_remove_disk (Benjamin Marzinski) [2115118] - KVM: x86: do not report preemption if the steal time cache is stale (Vitaly Kuznetsov) [2115240] - KVM: x86: revalidate steal time cache if MSR value changes (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Always enable TSC scaling for L2 when it was enabled for L1 (Vitaly Kuznetsov) [2115240] - KVM: x86: Fully initialize 'struct kvm_lapic_irq' in kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2115240] - KVM: SEV: Init target VMCBs in sev_migrate_from (Vitaly Kuznetsov) [2115240] - KVM: SVM: fix tsc scaling cache logic (Vitaly Kuznetsov) [2115240] - KVM: x86/mmu: Check every prev_roots in __kvm_mmu_free_obsolete_roots() (Vitaly Kuznetsov) [2115240] - KVM: LAPIC: Drop pending LAPIC timer injection when canceling the timer (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid calling x86 emulator without a decoded instruction (Vitaly Kuznetsov) [2115240] - KVM: SVM: Use kzalloc for sev ioctl interfaces to prevent kernel data leak (Vitaly Kuznetsov) [2115240] - KVM: x86: avoid loading a vCPU after .vm_destroy was called (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Clear IDT vectoring on nested VM-Exit for double/triple fault (Vitaly Kuznetsov) [2115240] - KVM: nVMX: Leave most VM-Exit info fields unmodified on failed VM-Entry (Vitaly Kuznetsov) [2115240] - KVM: x86: Drop WARNs that assert a triple fault never "escapes" from L2 (Vitaly Kuznetsov) [2115240] - sched/deadline: Fix BUG_ON condition for deboosted tasks (Phil Auld) [2111860] - scsi: qla2xxx: Fix excessive I/O error messages by default (Nilesh Javali) [2100728] - scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection (Nilesh Javali) [2044160] - drm/radeon: fix build rules of *_reg_safe.h (Michel Dänzer) [2006451] - RDMA/irdma: Fix sleep from invalid context BUG (Kamal Heib) [2097318] - RDMA/irdma: Do not advertise 1GB page size for x722 (Kamal Heib) [2097318] - RDMA/cm: Fix memory leak in ib_cm_insert_listen (Kamal Heib) [2097318] - RDMA/hfi1: Fix potential integer multiplication overflow errors (Kamal Heib) [2097318] - RDMA/hfi1: Prevent use of lock before it is initialized (Kamal Heib) [2097318] - RDMA/rxe: Fix an error handling path in rxe_get_mcg() (Kamal Heib) [2097318] - RDMA/rxe: Generate a completion for unsupported/invalid opcode (Kamal Heib) [2097318] - scsi: target: cxgbit: Enable Delayed ACK (Rahul Lakkireddy) [2105813] - scsi: target: cxgbit: Increase max DataSegmentLength (Rahul Lakkireddy) [2105813] - cxgb4: Use the bitmap API to allocate bitmaps (Rahul Lakkireddy) [2105806] - cxgb4: Fix typo in string (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Fix typo in comments (Rahul Lakkireddy) [2105806] - cxgb4vf: remove unexpected word "the" (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Avoid potential negative array offset (Rahul Lakkireddy) [2105806] - libcxgb: Don't accidentally set RTO_ONLINK in cxgb_find_route() (Rahul Lakkireddy) [2105806] - cxgb4vf: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: Remove useless DMA-32 fallback configuration (Rahul Lakkireddy) [2105806] - cxgb4: allow reading unrecognized port module eeprom (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix an error code in cxgb4vf_pci_probe() (Rahul Lakkireddy) [2105806] - cxgb4: Use struct_group() for memcpy() region (Rahul Lakkireddy) [2105806] - cxgb4: fix eeprom len when diagnostics not implemented (Rahul Lakkireddy) [2105806] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Rahul Lakkireddy) [2105806] - ethernet: chelsio: use eth_hw_addr_set() (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Make use of the helper function dev_err_probe() (Rahul Lakkireddy) [2105806] - cxgb4: improve printing NIC information (Rahul Lakkireddy) [2105806] - net: chelsio: switch from 'pci_' to 'dma_' API (Rahul Lakkireddy) [2105806] - cxgb4: make the array match_all_mac static, makes object smaller (Rahul Lakkireddy) [2105806] - cxgb4: fix IRQ free race during driver unload (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: use eth_zero_addr() to assign zero address (Rahul Lakkireddy) [2105806] - cxgb4: Fix -Wunused-const-variable warning (Rahul Lakkireddy) [2105806] - cxgb4: clip_tbl: use list_del_init instead of list_del/INIT_LIST_HEAD (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4vf: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - net: chelsio: cxgb4: Fix wrong function name in comments (Rahul Lakkireddy) [2105806] - cxgb4: Remove redundant NULL check (Rahul Lakkireddy) [2105806] - net: ethernet: chelsiofix: spelling typo of 'rewriteing' (Rahul Lakkireddy) [2105806] - net: don't include ethtool.h from netdevice.h (Rahul Lakkireddy) [2105806] - cxgb4vf: convert to use DEFINE_SEQ_ATTRIBUTE macro (Rahul Lakkireddy) [2105806] - cxgb4vf: fix t4vf_eth_xmit()'s return type (Rahul Lakkireddy) [2105806] - cxgb4vf: update kernel-doc line comments (Rahul Lakkireddy) [2105806] - cxgb4: remove duplicate headers (Rahul Lakkireddy) [2105806] - cxgb4/cxgb4vf: Remove superfluous void * cast in debugfs_create_file() call (Rahul Lakkireddy) [2105806] - cxgb4: Add missing annotation for service_ofldq() (Rahul Lakkireddy) [2105806] - net: cxgb4vf: reject unsupported coalescing params (Rahul Lakkireddy) [2105806] - scsi: mpt3sas: Stop fw fault watchdog work item during system shutdown (Tomas Henzl) [2106413] - drm/amd/display: Fix new dmub notification enabling in DM (Mika Penttilä) [2107632] - Revert "crypto: chelsio - Inline single pdu only" (Rahul Lakkireddy) [2105818] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Rahul Lakkireddy) [2105818] - net/xfrm: IPsec tunnel mode fix inner_ipproto setting in sec_path (Sabrina Dubroca) [2107200] - scsi: ch: Make it possible to open a ch device multiple times again (Ewan D. Milne) [2108649] - lpfc updates for rh8.7 14.0.0.15 (Paul Ely) [2107726] - scsi: lpfc: Copyright updates for 14.2.0.5 patches (Paul Ely) [2107726] - scsi: lpfc: Fix lost NVMe paths during LIF bounce stress test (Paul Ely) [2107726] - scsi: lpfc: Fix attempted FA-PWWN usage after feature disable (Paul Ely) [2107726] - scsi: lpfc: Fix possible memory leak when failing to issue CMF WQE (Paul Ely) [2107726] - scsi: lpfc: Remove extra atomic_inc on cmd_pending in queuecommand after VMID (Paul Ely) [2107726] - scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user input (Paul Ely) [2107726] - scsi: lpfc: Fix uninitialized cqe field in lpfc_nvme_cancel_iocb() (Paul Ely) [2107726] - scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd completion (Paul Ely) [2107726] - scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology (Paul Ely) [2107726] - scsi: lpfc: Resolve NULL ptr dereference after an ELS LOGO is aborted (Paul Ely) [2107726] - scsi: lpfc: Correct BDE type for XMIT_SEQ64_WQE in lpfc_ct_reject_event() (Paul Ely) [2107726] - scsi: qla2xxx: Fix imbalance vha->vref_count (Nilesh Javali) [2108964] - scsi: smartpqi: Update version to 2.1.18-045 (Don Brace) [2101548] - scsi: smartpqi: Update copyright to current year (Don Brace) [2101548] - scsi: smartpqi: Add ctrl ready timeout module parameter (Don Brace) [2101548] - scsi: smartpqi: Update deleting a LUN via sysfs (Don Brace) [2101548] - scsi: smartpqi: Add module param to disable managed ints (Don Brace) [2101548] - scsi: smartpqi: Fix RAID map race condition (Don Brace) [2101548] - scsi: smartpqi: Fix DMA direction for RAID requests (Don Brace) [2101548] - scsi: smartpqi: Stop logging spurious PQI reset failures (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for Lenovo controllers (Don Brace) [2101548] - scsi: smartpqi: Add PCI ID for Adaptec SmartHBA 2100-8i (Don Brace) [2101548] - scsi: smartpqi: Fix PCI control linkdown system hang (Don Brace) [2101548] - scsi: smartpqi: Add driver support for multi-LUN devices (Don Brace) [2101548] - scsi: smartpqi: Close write read holes (Don Brace) [2101548] - scsi: smartpqi: Add PCI IDs for ramaxel controllers (Don Brace) [2101548] - scsi: smartpqi: Add controller fw version to console log (Don Brace) [2101548] - scsi: smartpqi: Shorten drive visibility after removal (Don Brace) [2101548] - scsi: smartpqi: Fix typo in comment (Don Brace) [2101548] - docs: kdump: Update the crashkernel description for arm64 (Pingfan Liu) [2093920] - of: Support more than one crash kernel regions for kexec -s (Pingfan Liu) [2093920] - of: kexec: Remove FDT_PROP_* definitions (Pingfan Liu) [2093920] - arm64: kexec: Fix missing error code 'ret' warning in load_other_segments() (Pingfan Liu) [2093920] - arm64: Use common of_kexec_alloc_and_setup_fdt() (Pingfan Liu) [2093920] - of: Add a common kexec FDT setup function (Pingfan Liu) [2093920] - arm64: Use ELF fields defined in 'struct kimage' (Pingfan Liu) [2093920] - kexec: Move ELF fields to struct kimage (Pingfan Liu) [2093920] - of: fdt: Add memory for devices by DT property "linux,usable-memory-range" (Pingfan Liu) [2093920] - efi: apply memblock cap after memblock_add() (Pingfan Liu) [2093920] - of: fdt: Aggregate the processing of "linux,usable-memory-range" (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_memory() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_root() to call directly (Pingfan Liu) [2093920] - of/fdt: Rework early_init_dt_scan_chosen() to call directly (Pingfan Liu) [2093920] - of: fdt: Rename reserve_elfcorehdr() to fdt_reserve_elfcorehdr() (Pingfan Liu) [2093920] - of: fdt: Add generic support for handling elf core headers property (Pingfan Liu) [2093920] - arm64: kdump: Reimplement crashkernel=X (Pingfan Liu) [2093920] - arm64: Use insert_resource() to simplify code (Pingfan Liu) [2093920] - kdump: return -ENOENT if required cmdline option does not exist (Pingfan Liu) [2093920]- sched: Add WARN_ONCE_SAFE for use during critical scheduler code. (Phil Auld) [2095898] - printk: remove NMI tracking [partial] (Phil Auld) [2095898] - ext4: make sure ext4_append() always allocates new block (Lukas Czerner) [2070216] - ext4: check if directory block is within i_size (Lukas Czerner) [2070216] - redhat: nvme/tcp mistakenly uses blk_mq_tag_to_rq(nvme_tcp_tagset(queue)) (John Meneghini) [2112036] - RDMA/cxgb4: Set queue pair state when being queried (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use non-atomic bitmap functions when possible (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_set() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use bitmap_zalloc() when applicable (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use helper function to set GUIDs (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Fix refcount underflow while destroying cqs. (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use refcount_t instead of atomic_t for reference counting (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Fix missing error code in create_qp() (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Remove useless assignments (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: add missing qpid increment (Rahul Lakkireddy) [2105809] - RDMA/iw_cxgb4: Use DEFINE_SPINLOCK() for spinlock (Rahul Lakkireddy) [2105809] - RDMA/cxgb4: Use sizeof() notation (Rahul Lakkireddy) [2105809] - drm/amd/display: Ignore First MST Sideband Message Return Error (Michel Dänzer) [2089853] - sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed (Waiman Long) [2115165] - sched/deadline: Merge dl_task_can_attach() and dl_cpu_busy() (Waiman Long) [2115165] - ibmvnic: Properly dispose of all skbs during a failover. (Steve Best) [2107560] - redhat/configs: Enable CONFIG_AMD_HSMP for x86_64 (John Allen) [2072233] - platform/x86: Add AMD system management interface (John Allen) [2072233] - ice: do not setup vlan for loopback VSI (Petr Oros) [2103845] - ice: check (DD | EOF) bits on Rx descriptor rather than (EOP | RS) (Petr Oros) [2103845] - ice: Fix VSIs unable to share unicast MAC (Petr Oros) [2080033] - ice: Fix max VLANs available for VF (Petr Oros) [2112298] - ice: change devlink code to read NVM in blocks (Petr Oros) [2093904] - ALSA: Enable more Intel and AMD x86 chipset drivers (Jaroslav Kysela) [2065575] - ALSA: Remove module symbols namespace (Jaroslav Kysela) [2065575] - ASoC: SOF: tokens: add token for Mediatek AFE (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Expand firmware loading search options (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add trace caps to speaker protection FW (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Make compressed buffers optional (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct control read size when parsing compressed buffer (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add support for "toggle" preloaders (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Fix overrun of unterminated control name string (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clear core reset for cache (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Move lockdep asserts to avoid potential null pointer (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Allow creation of event controls (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add offset to cs_dsp read/write (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Clarify some kernel doc comments (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Perform NULL check in cs_dsp_coeff_write/read_ctrl (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add support for rev 2 coefficient files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Print messages from bin files (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add pre_run callback (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add version checks on coefficient loading (Jaroslav Kysela) [2065575] - firmware: cs_dsp: Add lockdep asserts to interface functions (Jaroslav Kysela) [2065575] - firmware: cs_dsp: tidy includes in cs_dsp.c and cs_dsp.h (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove the wmfw_add_ctl helper function (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: wm_adsp_control_add() error: uninitialized symbol 'ret' (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove a repeated including (Jaroslav Kysela) [2065575] - firmware: cs_dsp: add driver to support firmware loading on Cirrus Logic DSPs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate wm_adsp specifics in cs_dsp_client_ops (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split out struct cs_dsp from struct wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: move firmware loading to client (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Pass firmware names as parameters when starting DSP core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check of dsp->running to better place (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate generic cs_dsp_coeff_ctl handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move sys_config_size to wm_adsp (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Split DSP power operations into helper functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Separate some ASoC and generic functions (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Introduce cs_dsp logging macros (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Rename generic DSP support (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Cancel ongoing work when removing controls (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Switch to using wm_coeff_read_ctrl for compressed buffers (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Move check for control existence (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove use of snd_ctl_elem_type_t (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Put debugfs_remove_recursive back in (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Let soc_cleanup_component_debugfs remove debugfs (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Remove pointless string comparison (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Add CCM_CORE_RESET to Halo start core (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Correct wm_coeff_tlv_get handling (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix control name parsing for multi-fw (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Fix uninitialized variable warnings (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Use snd_ctl_elem_type_t for control types (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Only use __be32 for big-endian data (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: Improve handling of raw byte streams (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: remove "ctl" from list on error in wm_adsp_create_control() (Jaroslav Kysela) [2065575] - ASoC: wm_adsp: fix error return code in wm_adsp_load() (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the binding include file for the HDA header support (Jaroslav Kysela) [2065575] - ALSA: uapi: use C90 comment style instead of C99 style (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: Add RaptorLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915: Fix one too many pci_dev_put() (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: update AlderLake PCI IDs (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - skip acomp init if no matching display (Jaroslav Kysela) [2065575] - ALSA: hda/i915 - avoid hung task timeout in i915 wait (Jaroslav Kysela) [2065575] - ALSA: intel-dspconfig: add ES8336 support for CNL (Jaroslav Kysela) [2065575] - ALSA: intel-dsp-config: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: reorder the config table (Jaroslav Kysela) [2065575] - ALSA: hda: intel-dsp-config: add JasperLake support (Jaroslav Kysela) [2065575] - ALSA: hda: Simplify DMIC-in-NHLT check (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: x86: Use standard mmap helper for Intel HDMI LPE audio (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ALSA: intel_hdmi: Check for error num after setting mask (Jaroslav Kysela) [2065575] - tools include uapi: Update asound.h copy (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2065575] - ALSA: hda: Add helper macros for DSP capable devices (Jaroslav Kysela) [2065575] - ALSA: intel-nhlt: add helper to detect SSP link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: add information on I2S/TDM link mask (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: fix kernel-doc descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: fix 32 signed bit overflow (Jaroslav Kysela) [2065575] - ALSA: hda: Add snd_hdac_ext_bus_link_at() helper (Jaroslav Kysela) [2065575] - ALSA: cleanup double word in comment (Jaroslav Kysela) [2065575] - ASoC: SOF: add _D3_PERSISTENT flag to fw_ready message (Jaroslav Kysela) [2065575] - ALSA: HDA: hdac_ext_stream: use consistent prefixes for variables (Jaroslav Kysela) [2065575] - ipc: debug: Add shared memory heap to memory scan (Jaroslav Kysela) [2065575] - ALSA: pcm: comment about relation between msbits hw parameter and [S|U]32 formats (Jaroslav Kysela) [2065575] - ALSA: hda: Fill gaps in NHLT endpoint-interface (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Add new IPC command to free trace DMA (Jaroslav Kysela) [2065575] - soundwire: stream: make enable/disable/deprepare idempotent (Jaroslav Kysela) [2065575] - soundwire: stream: sdw_stream_add_ functions can be called multiple times (Jaroslav Kysela) [2065575] - soundwire: stream: introduce sdw_slave_rt_find() helper (Jaroslav Kysela) [2065575] - soundwire: stream: separate alloc and config within sdw_stream_add_xxx() (Jaroslav Kysela) [2065575] - soundwire: stream: move list addition to sdw_slave_alloc_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: rename and move master/slave_rt_free routines (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_stream_ functions (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_slave_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: move sdw_alloc_slave_rt() before 'master' helpers (Jaroslav Kysela) [2065575] - soundwire: stream: split sdw_alloc_master_rt() in alloc and config (Jaroslav Kysela) [2065575] - soundwire: stream: simplify sdw_alloc_master_rt() (Jaroslav Kysela) [2065575] - soundwire: stream: group sdw_port and sdw_master/slave_port functions (Jaroslav Kysela) [2065575] - soundwire: stream: add 'slave' prefix for port range checks (Jaroslav Kysela) [2065575] - soundwire: stream: split alloc and config in two functions (Jaroslav Kysela) [2065575] - soundwire: stream: split port allocation and configuration loops (Jaroslav Kysela) [2065575] - soundwire: stream: add alloc/config/free helpers for ports (Jaroslav Kysela) [2065575] - soundwire: stream: simplify check on port range (Jaroslav Kysela) [2065575] - soundwire: stream: add slave runtime to list earlier (Jaroslav Kysela) [2065575] - soundwire: stream: remove unused parameter in sdw_stream_add_slave (Jaroslav Kysela) [2065575] - soundwire: intel: fix wrong register name in intel_shim_wake (Jaroslav Kysela) [2065575] - soundwire: bus: add dev_warn() messages to track UNATTACHED devices (Jaroslav Kysela) [2065575] - soundwire: intel: remove PDM support (Jaroslav Kysela) [2065575] - soundwire: intel: remove unnecessary init (Jaroslav Kysela) [2065575] - ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire (Jaroslav Kysela) [2065575] - soundwire: intel: improve suspend flows (Jaroslav Kysela) [2065575] - soundwire: intel: Use auxiliary_device driver data helpers (Jaroslav Kysela) [2065575] - soundwire: qcom: remove redundant version number read (Jaroslav Kysela) [2065575] - ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback (Jaroslav Kysela) [2065575] - ASoC: ops: Validate input values in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: dmaengine: Restore NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: max98090: Generate notifications on changes for custom control (Jaroslav Kysela) [2065575] - ASoC: max98090: Reject invalid values in custom control put() (Jaroslav Kysela) [2065575] - ASoC: rt9120: Correct the reg 0x09 size to one byte (Jaroslav Kysela) [2065575] - ASoC: soc-ops: fix error handling (Jaroslav Kysela) [2065575] - ASoC: da7219: Fix change notifications for tone generator frequency (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: fix sysclk shutdown (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: Add a quirk for Huawei Matebook D15 (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add a quirk for headset at mic1 port (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: support a separate gpio to control headphone (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: simplify speaker gpio naming (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: correct device endpoints for max98373 (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: do not switch off SIDO Buck when codec is in use (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak in sof_control_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: cleanup dailinks on widget unload (Jaroslav Kysela) [2065575] - ASoC: rt711/5682: check if bus is active before deferred jack detection (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp on SSP2 (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Avoid NULL deref in asoc_simple_set_tdm() (Jaroslav Kysela) [2065575] - ASoC: soc-core: add debugfs_prefix member to snd_soc_component_driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix a shift-out-of-bounds warning found by UBSAN (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add one more variable in the debug log (Jaroslav Kysela) [2065575] - ASoC: rt5682: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-dapm: fix two incorrect uses of list iterator (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_KERNEL when the code is sleepable (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Fix memory leak of scontrol->name (Jaroslav Kysela) [2065575] - codecs: rt5682s: fix an incorrect NULL check on list iterator (Jaroslav Kysela) [2065575] - ASoC: topology: Correct error handling in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix build error without SND_SOC_SOF_PCI_DEV (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a new dai_get_clk topology IPC op (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add ops for setting up and tearing down pipelines (Jaroslav Kysela) [2065575] - ASoC: SOF: expose sof_route_setup() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add dai_link_fixup PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add trigger PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Define hw_params PCM op for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 PCM hw_free op (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: expose the sof_pcm_setup_connected_widgets() function (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC-specific PCM ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_ext control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add bytes_get/put control IPC ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add enum_get/put control ops for IPC3 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add switch get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add volume_get/put IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add IPC3 topology control ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC ops for kcontrol IO (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_suspend/resume IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Make sof_widget_setup/free IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: set up scheduler widget before all other widgets in the pipeline (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Use kmemdup() to replace kzalloc + memcpy (Jaroslav Kysela) [2065575] - ASoC: ak4642: Use of_device_get_match_data() (Jaroslav Kysela) [2065575] - ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call (Jaroslav Kysela) [2065575] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: Add missing of_node_put() in wcd934x_codec_parse_data (Jaroslav Kysela) [2065575] - ASoC: rt1308-sdw: get calibration params after power on (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Fix error handling in pm8916_wcd_analog_spmi_probe (Jaroslav Kysela) [2065575] - ASoC: ti: Fix spelling mistake "cant" -> "can't" (Jaroslav Kysela) [2065575] - ASoC: samsung: i2s: check the return value of kstrdup() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove snd_sof_complete_pipeline() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make widget binding IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make control parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make DAI widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make route setup IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make effect widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make siggen widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make asrc widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make src widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mux/demux widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make mixer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make pga widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make buffer widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Make scheduler widget parsing IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC3 ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add helper function for processing tuple arrays (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: Introduce IPC ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce struct snd_sof_dai_link (Jaroslav Kysela) [2065575] - ASoC: soc-compress: Change the check for codec_dai (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over HDA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Code loading over CLDMA (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Implement CLDMA transfer (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: General code loading flow (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Dynamic firmware resources management (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Declare module configuration types (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Firmware resources management utilities (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add basefw runtime-parameter requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add ROM requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add power management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add module management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add pipeline management requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Add code loading requests (Jaroslav Kysela) [2065575] - ASoC: Intel: avs: Inter process communication (Jaroslav Kysela) [2065575] - ASoC: Intel: Introduce AVS driver (Jaroslav Kysela) [2065575] - ASoC: Export DAI register and widget ctor and dctor functions (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Don't reset clock of active DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove ipc_pcm_params() ops (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Convert to use the generic set_stream_data_offset ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ipc: Add hda_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: stream-ipc: Add sof_set_stream_data_offset() (Jaroslav Kysela) [2065575] - ASoC: SOF: Mark snd_sof_dsp_ops.ipc_pcm_params() callback optional (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce optional callback to configure stream data offset (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Remove sof_pcm_dsp_params() wrapper (Jaroslav Kysela) [2065575] - ASoC: SOF: Make pcm_hw_params snd_sof_dsp_ops callback IPC neutral (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Remove stale snd_sof_ipc_stream_pcm_params() declaration (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: Add entry for rt711-sdca-sdw in ADL match table (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add topology overwrite for Taniks (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Use proper DMA direction for the trace data buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: compress: fix null check after dereference (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: enable DMI L1 for playback streams (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc-msg-injector: Use devm_kzalloc() for the rx_buffer (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Remove unneeded semicolon (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix randconfig issue (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcht_es8316: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add cfg-dmics component for UCM support (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: extend machine driver to support ES8326 codec (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add support for JD inverted quirk (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: move comment to the right place (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: log all quirks (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: use NHLT information to set dmic and SSP (Jaroslav Kysela) [2065575] - ASoC: Intel: Revert "ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021" (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: make gpio optional (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add ESSX8336 support on Cannon Lake machines (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add more ACPI HIDs for ES83x6 devices (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: quirk topology filename dynamically (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: report SSP link mask to machine driver (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: retrieve DMIC number for I2S boards (Jaroslav Kysela) [2065575] - ASoC: SOF: move definition of snd_sof_ipc to header file (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_dai IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_tokens() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Rename arguments in sof_parse_token_sets() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify signature for token parsing functions (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a tuples array to struct snd_sof_widget (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: make sof_route_load() IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: SOF: make struct snd_sof_widget IPC agnostic (Jaroslav Kysela) [2065575] - ASoC: mxs: Fix error handling in mxs_sgtl5000_probe (Jaroslav Kysela) [2065575] - ASoC: dmaengine: do not use a NULL prepare_slave_config() callback (Jaroslav Kysela) [2065575] - ASoC: SOF: Add missing of_node_put() in imx8m_probe (Jaroslav Kysela) [2065575] - ASoC: rockchip: i2s: Fix missing clk_disable_unprepare() in rockchip_i2s_probe (Jaroslav Kysela) [2065575] - ASoC: amd: acp3x: Fix signedness bug in acp3x (Jaroslav Kysela) [2065575] - ASoC: amd: acp5x-pcm-dma: Fix signedness bug (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: SOF: change comp_dai to a pointer in struct snd_sof_dai (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: expose some get_token ops (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Modify the get_token op for string tokens (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Drop the size parameter from struct sof_topology_token (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code in sof_link_afe_load() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove redundant code (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: removed unused function (Jaroslav Kysela) [2065575] - ASoC: SOF: set swidget's core for scheduler widget (Jaroslav Kysela) [2065575] - ASoC: SOF: simplify snd_sof_device_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: remove snd_sof_pipeline_find() (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix signedness bug in acp5x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove unnecessary param (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Stabilize the combo jack detection (Jaroslav Kysela) [2065575] - ASoC: wm8350: Handle error for wm8350_register_irq (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp3x_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Fix signedness bug in acp_pdm_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Fix signedness bug in renoir_audio_probe() (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: fix quirks for 2022 HP Spectre x360 13" (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add GPIOLIB dependency where missed (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: remove explicit dependency on GPIOLIB when DMIC is used" (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: store full version instead of major/minor (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify register poking in fsl_sai_set_bclk (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: simplify irq return value (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Drop unnecessary defines (Jaroslav Kysela) [2065575] - ASoC: codecs: Add Awinic AW8738 audio amplifier driver (Jaroslav Kysela) [2065575] - ASoC: audio_graph_card2: Add support for variable slot widths (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: clarify operator precedence (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Increase ACP_HW_SEM_RETRY_COUNT value (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Move group register configuration to acp-loader (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Use semaphore register to synchronize ipc's irq (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Flush cache after ATU_BASE_ADDR_GRP register update (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Do not set ipc_pcm_params ops as it is optional (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: acp-pcm: Take buffer information directly from runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: pci-tgl: add RPL-S support (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix DSP mbox start command and global enable order (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix max number of TX channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix GPIO2 configuration (Jaroslav Kysela) [2065575] - ASoC: bt-sco: fix bt-sco-pcm-wb dai widget don't connect to the endpoint (Jaroslav Kysela) [2065575] - ASoC: hdac_hda: Avoid unexpected match when pcm_name is "Analog" (Jaroslav Kysela) [2065575] - ASoC: soc-compress: prevent the potentially use of null pointer (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: set period_bytes_min based on maxburst (Jaroslav Kysela) [2065575] - ASoC: dwc-i2s: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [2065575] - ASoC: atmel_ssc_dai: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: mxs-saif: Handle errors for clk_enable (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_ssp_amp: rename driver and support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: cirrus-common: support cs35l41 amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt1308: move rt1308 code to common module (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: create sof-realtek-common module (Jaroslav Kysela) [2065575] - ASoC: Intel: add RT1308 I2S machine driver and HDMI-in capture via I2S support. (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: fix spelling in comments (Jaroslav Kysela) [2065575] - ASoC: soc-acpi: remove sof_fw_filename (Jaroslav Kysela) [2065575] - ASoC: es7241: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98927: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98926: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98925: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9867: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9860: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max9850: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98390: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98371: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98095: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: max98088: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda134x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ml26124: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm512x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm186x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm1681: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: pcm3060: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-i2s: Add check for clk_enable() (Jaroslav Kysela) [2065575] - ASoC: mc13783: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: isabelle: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: fix uninitialized symbol warning in machine driver (Jaroslav Kysela) [2065575] - ASoC: amd: vg: remove warnings and errors pointed out by checkpatch pl (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update DAI link name (Jaroslav Kysela) [2065575] - ASoC: amd: vg: fix for pm resume callback sequence (Jaroslav Kysela) [2065575] - ASoC: es8328: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: inno_rk3036: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es8316: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: wl1273: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: es7134: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: twl4030: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1334: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: uda1380: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: si476x: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: sti-sas: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: amd: pcm-dma: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: tscs454: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: tscs42xx: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: lm49453: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2065575] - ASoC: qcom: lpass-platform: Update warning print to control excess logging (Jaroslav Kysela) [2065575] - ASoC: acp: check the return value of devm_kzalloc() in acp_legacy_dai_links_create() (Jaroslav Kysela) [2065575] - ASoC: rt5663: check the return value of devm_kzalloc() in rt5663_parse_dp() (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-priv: Drop duplicate sof_compressed_ops declaration (Jaroslav Kysela) [2065575] - ASoC: amd: Use platform_get_irq_byname() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: SOF: Declare sof_compress_ops in sof-priv.h (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Fix NULL ptr dereference when ENOMEM (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add DMIC machine driver ops (Jaroslav Kysela) [2065575] - ASoC: amd: acp-legacy: Add legacy card support for new machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Change card name for Guybrush Machine (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: Add compress_ops for SOF platform component driver (Jaroslav Kysela) [2065575] - ASoC: rt5682s: Fix the wrong jack type detected (Jaroslav Kysela) [2065575] - ASoC: Intel: soc-acpi-byt: Add new WM5102 ACPI HID (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update acp init and deinit sequence (Jaroslav Kysela) [2065575] - ASoC: amd: vg: apply sample bits pcm constraint (Jaroslav Kysela) [2065575] - ASoC: amd: vg: update platform clock control sequence (Jaroslav Kysela) [2065575] - ASoC: nau8821: enable no_capture_mute flag (Jaroslav Kysela) [2065575] - ASoC: amd: vangogh: refactor i2s master mode clock sequence code (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Add topology overwrite for Felwinter (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_es8336: add quirk for Huawei D15 2021 (Jaroslav Kysela) [2065575] - ASoC: intel: skylake: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ASoC: SOF: core: unregister clients and machine drivers in .shutdown (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix the duplicated control name (Jaroslav Kysela) [2065575] - ASoC: ops: Shift tested values in snd_soc_put_volsw() by +min (Jaroslav Kysela) [2065575] - ASoC: soc-core: skip zero num_dai component in searching dai name (Jaroslav Kysela) [2065575] - ASoC: SOF: Makefile: Fix randconfig sof-client build when SND_SOC_SOF=y (Jaroslav Kysela) [2065575] - ASoC: codec: wm8960: complete discharge on BIAS OFF->STANDBY (Jaroslav Kysela) [2065575] - ASoC: wm8731: Delete empty remove() function (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: remove numeric PCM3168A_NUM_SUPPLIES (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor format handling (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: refactor hw_params routine (Jaroslav Kysela) [2065575] - ASoC: pcm3168a: cleanup unintuitive mask usage (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Mark snd_compress_ops static (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_wm5102: use GFP_KERNEL (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic probe support to SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC message injector into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: Convert the generic IPC flood test into SOF client (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-client: Add support for clients not managed by pm framework (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce IPC SOF client support (Jaroslav Kysela) [2065575] - ASoC: SOF: Split up utils.c into sof-utils and iomem-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Read and pass the whole message to handlers for IPC events (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum sof_dsp_power_states to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop unused DSP power states: D3_HOT and D3_COLD (Jaroslav Kysela) [2065575] - ASoC: rt5640: Remove the sysclk and sysclk_src checking (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hdac_ext_stream: consistent prefixes for variables/members (Jaroslav Kysela) [2065575] - ASoC: fsl_sai: Enable combine mode soft (Jaroslav Kysela) [2065575] - ASoC: SOF: compr: Add compress ops implementation (Jaroslav Kysela) [2065575] - ASoC: SOF: dma-trace: Pass pointer to params_ext struct in trace_init() (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: hda-trace: Pass the dma buffer pointer to hda_dsp_trace_prepare (Jaroslav Kysela) [2065575] - ASoC: zl38060: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: max9759: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: simple-amplifier: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt9120: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: dmic: Remove spurious gpiolib select (Jaroslav Kysela) [2065575] - ASoC: rt5682: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5668: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: rt5682s: do not block workqueue if card is unbound (Jaroslav Kysela) [2065575] - ASoC: tas2770: Insert post reset delay (Jaroslav Kysela) [2065575] - ASoC: samsung: Explicitly include gpiolib header (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Set gpio_spkr_en to None for max speaker amplifer in machine driver (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: max98927: add missing header file (Jaroslav Kysela) [2065575] - ASoC: ops: Check for negative values before reading them (Jaroslav Kysela) [2065575] - ASoC: cs42l51: Improve error handling in cs42l51_remove() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Do not allocate buffer for msg_data (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Drop header parameter from sof_ipc_tx_message_unlocked() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: cnl: Use pm_gate->hdr.cmd in cnl_compact_ipc_compress() (Jaroslav Kysela) [2065575] - ASoC: amd: renoir: Add check for acp configuration flags (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-legacy: Add DMIC dai link support for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add ACP init()/deinit() callback for Renoir. (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic PCI driver module for ACP device (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add PDM controller based dmic dai for Renoir (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Add generic support for PDM controller on ACP (Jaroslav Kysela) [2065575] - ASoC: rk3399_gru_sound: Wire up DP jack detection (Jaroslav Kysela) [2065575] - ASoC: rt5682: Fix deadlock on resume (Jaroslav Kysela) [2065575] - ASoC: hdmi-codec: Fix OOB memory accesses (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Move debugfs removal out of spinlock (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: Simplify count adjustment in trace_read (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Remove link assignment limitation (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_xr_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx() (Jaroslav Kysela) [2065575] - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw() (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Add new system-clock-fixed flag (Jaroslav Kysela) [2065575] - ASoC: simple-card-utils: Set sysclk on all components (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add 512FS MCLK clock configuration (Jaroslav Kysela) [2065575] - ASoC: amd: sof-mach: Add support for RT5682S and RT1019 card (Jaroslav Kysela) [2065575] - ASoC: soc-generic-dmaengine-pcm: separate max_buffer_size assignment (Jaroslav Kysela) [2065575] - ASoC: samsung: remove unneeded ret variable (Jaroslav Kysela) [2065575] - ASoC: codecs: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: fsl-asoc-card: Add optional dt property for setting mclk-id (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Add support for platform without amplifier (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: add support for systems without i915 audio (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: Compare sdw adr directly (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: match sdw version on link_slaves_found (Jaroslav Kysela) [2065575] - ASoC: add support for TAS5805M digital amplifier (Jaroslav Kysela) [2065575] - ASoC: topology: Optimize soc_tplg_dapm_graph_elems_load behavior (Jaroslav Kysela) [2065575] - ASoC: topology: Allow TLV control to be either read or write (Jaroslav Kysela) [2065575] - ASoC: topology: Remove superfluous error prints (Jaroslav Kysela) [2065575] - ASoC: SOF: add flag to disable IMR restore to sof_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add IMR restore support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: add SSP helper (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: use inclusive language for SSP clocks (Jaroslav Kysela) [2065575] - ASoC: amd: acp-mach: Fix Left and Right rt1019 amp devices (Jaroslav Kysela) [2065575] - ASoC: max9759: fix underflow in speaker_gain_control_put() (Jaroslav Kysela) [2065575] - ASoC: cpcap: Check for NULL pointer after calling of_get_child_by_name (Jaroslav Kysela) [2065575] - ASoC: simple-card: fix probe failure on platform component (Jaroslav Kysela) [2065575] - ASoC: xilinx: xlnx_formatter_pcm: Make buffer bytes multiple of period bytes (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add support for hibernate memory retention mode (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Update handling of test key registers (Jaroslav Kysela) [2065575] - ASoC: wcd9335: Keep a RX port value for each SLIM RX mux (Jaroslav Kysela) [2065575] - ASoC: amd: acp: acp-mach: Change default RT1019 amp dev id (Jaroslav Kysela) [2065575] - ASoC: topology: Fix typo (Jaroslav Kysela) [2065575] - ASoC: fsl_asrc: refine the check of available clock divider (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Add support for external GPIO jack-detect (Jaroslav Kysela) [2065575] - ASoC: Intel: bytcr_rt5640: Support retrieving the codec IRQ from the AMCR0F28 ACPI dev (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add support for boards with an external jack-detect GPIO (Jaroslav Kysela) [2065575] - ASoC: rt5640: Allow snd_soc_component_set_jack() to override the codec IRQ (Jaroslav Kysela) [2065575] - ASoC: rt5640: Change jack_work to a delayed_work (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix possible NULL pointer deref on resume (Jaroslav Kysela) [2065575] - ASoC: ak4375: Fix unused function error (Jaroslav Kysela) [2065575] - ASoC: cs4265: Add a remove() function (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct handling of some registers in the cache (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Correct DSP power down (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Remove incorrect comment (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Add cs35l51/53 IDs (Jaroslav Kysela) [2065575] - ASoC: fsl_mqs: fix MODULE_ALIAS (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for boost configuration (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for setting channels (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Create shared function for errata patches (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move power initializations to reg_sequence (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Move cs35l41_otp_unpack to shared code (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Convert tables to shared source code (Jaroslav Kysela) [2065575] - ASoC: samsung: idma: Check of ioremap return value (Jaroslav Kysela) [2065575] - ASoC: cs4265: Fix part number ID error message (Jaroslav Kysela) [2065575] - ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Power on/off the speaker enable gpio pin based on DAPM callback. (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: reduce log verbosity in probe() (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8183: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: mediatek: mt8173: fix device_node leak (Jaroslav Kysela) [2065575] - ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio (Jaroslav Kysela) [2065575] - ASoC/soundwire: intel: simplify callbacks for params/hw_free (Jaroslav Kysela) [2065575] - ASOC: SOF: Intel: use snd_soc_dai_get_widget() (Jaroslav Kysela) [2065575] - ASoC: msm8916-wcd-analog: Use separate outputs for HPH_L/HPH_R (Jaroslav Kysela) [2065575] - ASoC: qcom: common: Parse "pin-switches" and "widgets" from DT (Jaroslav Kysela) [2065575] - ASoC: core: Add snd_soc_of_parse_pin_switches() from simple-card-utils (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Use DEBUG log level for optional prints (Jaroslav Kysela) [2065575] - ASoC: SOF: Add clarifying comments for sof_core_debug and DSP dump flags (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename snd_sof_get_status() and add kernel log level parameter (Jaroslav Kysela) [2065575] - ASoC: SOF: dsp_arch_ops: add kernel log level parameter for oops and stack (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Always print DSP Panic message but use different message (Jaroslav Kysela) [2065575] - ASoc: SOF: core: Update the FW boot state transition diagram (Jaroslav Kysela) [2065575] - ASoC: SOF: pm: Force DSP off on suspend in BOOT_FAILED state also (Jaroslav Kysela) [2065575] - ASoC: SOF: Set SOF_FW_BOOT_FAILED in case we have failure during boot (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Only allow sending of an IPC in SOF_FW_BOOT_COMPLETE state (Jaroslav Kysela) [2065575] - ASoC: SOF: Rename 'enum snd_sof_fw_state' to 'enum sof_fw_state' (Jaroslav Kysela) [2065575] - ASoC: SOF: Move the definition of enum snd_sof_fw_state to global header (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_BOOT_READY_OK (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce new firmware state: SOF_FW_CRASHED (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a 'message' parameter to snd_sof_dsp_dbg_dump() (Jaroslav Kysela) [2065575] - ASoC: SOF: Add 'non_recoverable' parameter to snd_sof_dsp_panic() (Jaroslav Kysela) [2065575] - ASoC: SOF: Use sof_debug_check_flag() instead of sof_core_debug directly (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Add simple wrapper to check flags in sof_core_debug (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-loader: Avoid re-defining the HDA_FW_BOOT_ATTEMPTS (Jaroslav Kysela) [2065575] - ASoC: SOF: ops: Use dev_warn() if the panic offsets differ (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4375: Change invert controls to a stereo switch (Jaroslav Kysela) [2065575] - ASoC: Add AK4375 support (Jaroslav Kysela) [2065575] - ASoC: bcm: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: xlnx: Use platform_get_irq() to get the interrupt (Jaroslav Kysela) [2065575] - ASoC: amd: acp: Remove duplicate dependency in Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: AMD: simplify return status handling (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Update sof_tplg_filename for SOF machines (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Enable SOF audio for Google chrome boards. (Jaroslav Kysela) [2065575] - ASoC: sunxi: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: samsung: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: rockchip: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: qcom: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: mxs: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: img: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: generic: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ti: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: ateml: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: tlv320aic31xx: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ssm2305: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: simple-amplifier: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: sgtl5000: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: pcm3168a: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9860: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: max9759: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: es7241: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: codecs: ak4118: Use dev_err_probe() helper (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Streamline locals declaration for PCM-functions (Jaroslav Kysela) [2065575] - ASoC: Intel: catpt: Reduce size of catpt_component_open() (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Improve driver's code (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Support device-tree (Jaroslav Kysela) [2065575] - ASoC: tegra20: spdif: Set FIFO trigger level (Jaroslav Kysela) [2065575] - ASoC: SOF: Kconfig: Make the SOF_DEVELOPER_SUPPORT depend on SND_SOC_SOF (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Add null pointer check for substream->runtime (Jaroslav Kysela) [2065575] - ASoC: SOF: avoid casting "const" attribute away (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME in platform trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: remove support for RESUME trigger (Jaroslav Kysela) [2065575] - ASoC: tegra20-spdif: stop setting slave_id (Jaroslav Kysela) [2065575] - ASoC: AMD: fix depend/select mistake on SND_AMD_ACP_CONFIG (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: read back control data from DSP (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_type parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: control: Do not handle control notification with component type (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-audio: Drop the `cmd` member from struct snd_sof_control (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ctrl_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Set control_data->cmd alongside scontrol->cmd (Jaroslav Kysela) [2065575] - ASoC: SOF: Drop ipc_cmd parameter for snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: SOF: ipc: Rename send parameter in snd_sof_ipc_set_get_comp_data() (Jaroslav Kysela) [2065575] - ASoC: rt5663: Handle device_property_read_u32_array error codes (Jaroslav Kysela) [2065575] - ASoC: SOF: OF: Avoid reverse module dependency (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-probes: Constify sof_probe_compr_ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Remove pm_runtime_put_autosuspend() for SOF OF device (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add comment on JasperLake support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-dai: remove unused fields (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: add quirks for HDAudio DMA position information (Jaroslav Kysela) [2065575] - ASoC: SOF: hda-stream: only enable DPIB if needed (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-ctrl: apply symmetry for DPIB (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda-stream: limit PROCEN workaround (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: ICL: move ICL-specific ops to icl.c (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - ASoC: amd: Convert to new style DAI format definitions (Jaroslav Kysela) [2065575] - ASoC: AMD: acp-config: fix missing dependency on SND_SOC_ACPI (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_rt5682: Move rt1015 speaker amp to common file (Jaroslav Kysela) [2065575] - ASoC: rt5682s: add delay time to fix pop sound issue (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add 'static' qualifiers for max98390 routes (Jaroslav Kysela) [2065575] - ASoC: amd: acp6x-pdm-dma: Constify static snd_soc_dai_ops (Jaroslav Kysela) [2065575] - ASoC: ti: davinci-mcasp: Get rid of duplicate of_node assignment (Jaroslav Kysela) [2065575] - ASoC: zl38060: Setup parent device and get rid of unnecessary of_node assignment (Jaroslav Kysela) [2065575] - ASoC: test-component: fix null pointer dereference. (Jaroslav Kysela) [2065575] - sound/soc: remove useless bool conversion to bool variable (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix undefined reference to core functions (Jaroslav Kysela) [2065575] - ASoC: rt5640: Fix the wrong state of the JD in the HDA header (Jaroslav Kysela) [2065575] - ASoC: codecs: wcd934x: remove redundant ret variable (Jaroslav Kysela) [2065575] - ASoC: tegra: Add master volume/mute control support (Jaroslav Kysela) [2065575] - ASoC: Intel: Skylake: Use NHLT API to search for blob (Jaroslav Kysela) [2065575] - ASoC: Intel: boards: add max98390 2/4 speakers support (Jaroslav Kysela) [2065575] - ASoC: intel: boards: bytcht*: Constify static snd_soc_ops (Jaroslav Kysela) [2065575] - ASoC: Intel: hda_dsp_common: don't multiline PCM topology warning (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: tidyup soc_pcm_pointer()'s delay update method (Jaroslav Kysela) [2065575] - ASoC: intel: sst-mfld-platform-pcm: add .delay support (Jaroslav Kysela) [2065575] - ASoC: amd: acp-pcm-dma: add .delay support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Use pR/pa to print resources/physical addresses (Jaroslav Kysela) [2065575] - ASoC: cs35l41: Fix link problem (Jaroslav Kysela) [2065575] - ASoC: codecs/jz4770: Add missing gain control after DAC/ADC mixer (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: send DAI_CONFIG IPC during pause (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: dai: Expand DAI_CONFIG IPC flags (Jaroslav Kysela) [2065575] - ASoC: SOF: align the hw_free sequence with stop (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: move the check for prepared flag (Jaroslav Kysela) [2065575] - ASoC: SOF: Add a helper for freeing PCM stream (Jaroslav Kysela) [2065575] - ASoC: SOF: call platform hw_free for paused streams during suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: invoke platform hw_free for STOP/SUSPEND triggers (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: reset stream before coupling host and link DMA's (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: Add a helper function for stream reset (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: clear stream before freeing the DAI widget (Jaroslav Kysela) [2065575] - ASoC: rt5640: Add the HDA header support (Jaroslav Kysela) [2065575] - ASoC: uniphier: drop selecting non-existing SND_SOC_UNIPHIER_AIO_DMA (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add missing of_node_put() in platform_parse_resource() (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: don't use list_for_each_entry_reverse() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: add .ack support for HDaudio platforms (Jaroslav Kysela) [2065575] - ASoC: SOF: pcm: add .ack callback support (Jaroslav Kysela) [2065575] - ASoC: SOF: sof-pci-dev: use community key on all Up boards (Jaroslav Kysela) [2065575] - ASoC: stm32: spdifrx: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: stm32: dfsdm: add pm_runtime support for audio (Jaroslav Kysela) [2065575] - ASoC: stm32: i2s: add pm_runtime support (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: free DAI widget during stop and suspend (Jaroslav Kysela) [2065575] - ASoC: SOF: add support for dynamic pipelines with multi-core (Jaroslav Kysela) [2065575] - ASoC: SOF: hda: don't use the core op for power up/power down (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: remove sof_load_pipeline_ipc() (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: CNL/ICL/APL: set core_get/core_put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: TGL: set core_get/put ops (Jaroslav Kysela) [2065575] - ASoC: SOF: Add ops for core_get and core_put (Jaroslav Kysela) [2065575] - ASoC: SOF: Introduce num_cores and ref count per core (Jaroslav Kysela) [2065575] - ASoC: SOF: Intel: hda: expose get_chip_info() (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement reset callback (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Implement DSP start (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8m: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx8: Add runtime PM / System PM support (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Add code to manage DSP related clocks (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add DSP system PM callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 dsp clock support (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add dai driver dsp ops callback for mt8195 (Jaroslav Kysela) [2065575] - ASoC: SOF: Add mt8195 device descriptor (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add fw loader and mt8195 dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for Mediatek AFE DAI (Jaroslav Kysela) [2065575] - ASoC: SOF: mediatek: Add mt8195 hardware support (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add support for SOF firmware authentication (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add trace logger support (Jaroslav Kysela) [2065575] - ASoC: SOF: topology: Add support for AMD ACP DAIs (Jaroslav Kysela) [2065575] - ASoC: amd: acp-config: Remove legacy acpi based machine struct (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir PCI driver interface (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add machine driver dsp ops for Renoir platform (Jaroslav Kysela) [2065575] - ASoC: amd: Add module to determine ACP configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add PCM stream callback for Renoir dai's (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add dai driver dsp ops callback for Renoir (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add IPC support for ACP IP block (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add fw loader and renoir dsp ops to load firmware (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add helper callbacks for ACP's DMA configuration (Jaroslav Kysela) [2065575] - ASoC: SOF: amd: Add Renoir ACP HW support (Jaroslav Kysela) [2065575] - ASoC: stm32: sai: increase channels_max limit (Jaroslav Kysela) [2065575] - ASoC: SOF: debug: Add support for IPC message injection (Jaroslav Kysela) [2065575] - ASoC: SOF: intel: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: imx: Use the generic helper to get the reply (Jaroslav Kysela) [2065575] - ASoC: SOF: utils: Add generic function to get the reply for a tx message (Jaroslav Kysela) [2065575] - ASoC: SOF: i.MX: simplify Kconfig (Jaroslav Kysela) [2065575] - ASoC: SOF: core: Unregister machine driver before IPC and debugfs (Jaroslav Kysela) [2065575] - ASoC: adau1701: Replace legacy gpio interface for gpiod (Jaroslav Kysela) [2065575] - ASoC: Intel: add sof-nau8825 machine driver (Jaroslav Kysela) [2065575] - ASoC: cs35l41: DSP Support (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: add link adr order check (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove get_next_be_id (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove sof_sdw_mic_codec_mockup_init (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: remove SOF_RT715_DAI_ID_FIX quirk (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: move DMIC link id overwrite to create_sdw_dailink (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: Use a fixed DAI link id for AMP (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: rename be_index/link_id to link_index (Jaroslav Kysela) [2065575] - ASoC: Intel: sof_sdw: add SKU for Dell Latitude 9520 (Jaroslav Kysela) [2065575] - ASoC: intel: sof_sdw: return the original error number (Jaroslav Kysela) [2065575] - ASoC: SOF: trace: send DMA_TRACE_FREE IPC during release (Jaroslav Kysela) [2065575] - ASoC: SOF: IPC: update ipc_log_header() (Jaroslav Kysela) [2065575] - ALSA: mtpav: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: virmidi: Remove duplicated code (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for TongFang devices with pop noise (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for the Framework Laptop (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Dell Latitude 7520 (Jaroslav Kysela) [2065575] - ALSA: hda - fix unused Realtek function when PM is not enabled (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix mute led issue on thinkpad with cs35l41 s-codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNP (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845/865 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add HDMI codec VID for Raptorlake-P (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: fix warning about PCM count when used with SOF (Jaroslav Kysela) [2065575] - ALSA: nm256: Don't call card private_free at probe error path (Jaroslav Kysela) [2065575] - ALSA: rme9652: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdspm: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hdsp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: oxygen: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lx6464es: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cmipci: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: aw2: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als300: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: lola: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: bt87x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sis7019: Fix the missing error handling (Jaroslav Kysela) [2065575] - ALSA: via82xx: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: sonicvibes: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme96: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: rme32: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: riptide: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: maestro3: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: korg1212: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: intel8x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ice1724: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: fm801: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1968: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: es1938: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ens137x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: emu10k1x: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs5535audio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: cs4281: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ca0106: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: azt3328: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: au88x0: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: atiixp: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: als4000: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ali5451: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: ad1889: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: echoaudio: Fix the missing snd_card_free() call at probe error (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo PD50PNT (Jaroslav Kysela) [2065575] - ALSA: hda: Avoid unsol event during RPM suspending (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix audio regression on Mi Notebook Pro 2020 (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Dolphin HW variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Disable HSBIAS_SENSE_EN for Cyborg (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Support new Warlock MLK Variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Full Scale Volume setting for all variants (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Re-order quirk table into ascending order (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Fix Warlock to use mono mic configuration (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Enable headset mic on Lenovo P360 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add mute and micmut LED support for Zbook Fury 17 G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add alc256-samsung-headphone fixup (Jaroslav Kysela) [2065575] - ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix LED on Zbook Studio G9 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [2065575] - ALSA: cmipci: Restore aux vol on suspend/resume (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GA402 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671 (Jaroslav Kysela) [2065575] - ALSA: hda: Add AlderLake-PS variant PCI ID (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP50PNJ (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Clevo NP70PNJ (Jaroslav Kysela) [2065575] - ALSA: lola: add a check for the return of vmalloc() (Jaroslav Kysela) [2065575] - ALSA: echoaudio: remove redundant assignment to variable bytes (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Make use of the helper component_compare_dev_name (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Update scratch reg. communication (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Hardcode GCAP ISS value on T234 (Jaroslav Kysela) [2065575] - ALSA: hda/tegra: Add Tegra234 hda driver support (Jaroslav Kysela) [2065575] - ALSA: hda: Expose codec cleanup and power-save functions (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose codec register procedures (Jaroslav Kysela) [2065575] - ALSA: hda: Update and expose snd_hda_codec_device_init() (Jaroslav Kysela) [2065575] - ALSA: hda/hdmi: add keep-alive support for ADL-P and DG2 (Jaroslav Kysela) [2065575] - ALSA: hda: Set max DMA segment size (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix deadlock by COEF mutex (Jaroslav Kysela) [2065575] - ALSA: hda: Fix missing codec probe on Shenker Dock 15 (Jaroslav Kysela) [2065575] - ALSA: hda: Fix regression on forced probe mask option (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2019 (Jaroslav Kysela) [2065575] - ALSA: hda: Add PCI and HDMI IDs for Intel Raptor Lake (Jaroslav Kysela) [2065575] - ALSA: ca0106: Rename register macro names (Jaroslav Kysela) [2065575] - ALSA: hda: Fix driver index handling at re-binding (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for HP Laptops (Jaroslav Kysela) [2065575] - ALSA: hda: Skip codec shutdown in case the codec is not registered (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add quirk for ASUS GU603 (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570 Aorus Xtreme after reboot from Windows (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Fix silent output on Gigabyte X570S Aorus Master (newer chipset) (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add missing fixup-model entry for Gigabyte X570 ALC1220 quirks (Jaroslav Kysela) [2065575] - ALSA: hda: realtek: Fix race at concurrent COEF updates (Jaroslav Kysela) [2065575] - ALSA: hda: Fix signedness of sscanf() arguments (Jaroslav Kysela) [2065575] - ALSA: hda: Fix UAF of leds class devs at unbinding (Jaroslav Kysela) [2065575] - ALSA: hda/cs8409: Add new Warlock SKUs to patch_cs8409 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make cs35l41_hda_remove() return void (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Tidyup code (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Make use of the helper function dev_err_probe() (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add missing default cases (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Move cs35l41* calls to its own symbol namespace (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add calls to newly added test key function (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Avoid overwriting register patch (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: fix speakers and micmute on HP 855 G8 (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: fix double free on error in probe() (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependencies of CS35L41 on SPI/I2C buses (Jaroslav Kysela) [2065575] - ALSA: hda: Fix dependency on ASoC cs35l41 codec (Jaroslav Kysela) [2065575] - ALSA: hda: ALC287: Add Lenovo IdeaPad Slim 9i 14ITL5 speaker quirk (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add CS35L41 support for Thinkpad laptops (Jaroslav Kysela) [2065575] - ALSA: hda/realtek: Add support for Legion 7 16ACHg6 laptop (Jaroslav Kysela) [2065575] - ALSA: hda: cs35l41: Add support for CS35L41 in HDA systems (Jaroslav Kysela) [2065575] - MAINTAINERS: Update Cirrus Logic codec driver maintainers (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Convert binding to yaml (Jaroslav Kysela) [2065575] - dt-bindings: remove 'interrupt-parent' from bindings (Jaroslav Kysela) [2065575] - ASoC: dt-bindings: cs42l42: Correct description of ts-inv (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add warnings about DETECT_MODE and PLL_START (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Handle system suspend (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Change jack_detect_mutex to a lock of all IRQ handling (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Report full jack status when plug is detected (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant pll_divout member (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Simplify reporting of jack unplug (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to RS_PLUG/RS_UNPLUG masks (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Remove redundant writes to DETECT_MODE (Jaroslav Kysela) [2065575] - ASoC: cs42l42: Add control for audio slow-start switch (Jaroslav Kysela) [2065575] - ALSA: mixart: Add sanity check for timer notify streams (Jaroslav Kysela) [2065575] - ALSA: mixart: Reduce size of mixart_timer_notify (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Restore Rane SL-1 quirk (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't get sample rate for MCT Trigger 5 USB-to-HDMI (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Clear MIDI port active flag after draining (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for MSI MAG X570S Torpedo MAX. (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Limit max buffer and period sizes per time (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Increase max buffer size (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Cap upper limits of buffer/period bytes for implicit fb (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Fix undefined behavior due to shift overflowing the constant (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Add support for the internal "standalone" switch (Jaroslav Kysela) [2065575] - ALSA: scarlett2: Split scarlett2_config_items[] into 3 sections (Jaroslav Kysela) [2065575] - ALSA: usb-audio: add mapping for new Corsair Virtuoso SE (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Don't abort resume upon errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: revert to IMPLICIT_FB_FIXED_DEV for M-Audio FastTrack Ultra (Jaroslav Kysela) [2065575] - ALSA: usb-audio: remove redundant assignment to variable c (Jaroslav Kysela) [2065575] - ALSA: usb-audio: Correct quirk for VF0770 (Jaroslav Kysela) [2065575] - ALSA: usb-audio: initialize variables that could ignore errors (Jaroslav Kysela) [2065575] - ALSA: usb-audio: scarlett2: Use struct_size() helper in scarlett2_usb() (Jaroslav Kysela) [2065575] - ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes (Jaroslav Kysela) [2065575] - ALSA: firewire-lib: fix uninitialized flag for AV/C deferred transaction (Jaroslav Kysela) [2065575] - ALSA: memalloc: Add fallback SG-buffer allocations for x86 (Jaroslav Kysela) [2065575] - ALSA: core: Add snd_card_free_on_error() helper (Jaroslav Kysela) [2065575] - ALSA: pcm: Test for "silence" field in struct "pcm_format_data" (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock (Jaroslav Kysela) [2065575] - ALSA: pcm: Add stream lock during PCM reset ioctl operations (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prealloc proc writes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent prepare and hw_params/hw_free calls (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent read/write and buffer changes (Jaroslav Kysela) [2065575] - ALSA: pcm: Fix races among concurrent hw_params and hw_free calls (Jaroslav Kysela) [2065575] - ALSA: oss: Release temporary buffers upon errors (Jaroslav Kysela) [2065575] - ALSA: oss: Fix PCM OSS buffer allocation overflow (Jaroslav Kysela) [2065575] - ALSA: core: Fix typo in 'PCM Timer Interface' help (Jaroslav Kysela) [2065575] - ALSA: seq: oss: fix typo (Jaroslav Kysela) [2065575] - ALSA: seq: oss: use kzalloc (Jaroslav Kysela) [2065575] - ALSA: memalloc: invalidate SG pages before sync (Jaroslav Kysela) [2065575] - ALSA: memalloc: Fix dma_need_sync() checks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix DPCM lockdep warning due to nested stream locks (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: fix BE handling of PAUSE_RELEASE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: serialize BE triggers (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: Fix and cleanup DPCM locking (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: align BE 'atomicity' with that of the FE (Jaroslav Kysela) [2065575] - ASoC: soc-pcm: use GFP_ATOMIC for dpcm structure (Jaroslav Kysela) [2065575] - ASoC: soc-component: add snd_soc_pcm_component_delay() (Jaroslav Kysela) [2065575] - ASoC: soc-dai: update snd_soc_dai_delay() to snd_soc_pcm_dai_delay() (Jaroslav Kysela) [2065575] - ALSA: core: Simplify snd_power_ref_and_wait() with the standard macro (Jaroslav Kysela) [2065575] - ALSA: seq: virmidi: Add a drain operation (Jaroslav Kysela) [2065575] - ASoC: dai_dma: remove slave_id field (Jaroslav Kysela) [2065575] - ALSA: seq: Set upper limit of processed events (Jaroslav Kysela) [2065575] - ALSA: oss: remove useless NULL check before kfree (Jaroslav Kysela) [2065575] - ALSA: pcm: introduce INFO_NO_REWINDS flag (Jaroslav Kysela) [2065575] - ALSA: pcm: unconditionally check if appl_ptr is in 0..boundary range (Jaroslav Kysela) [2065575] - Revert "ASoC: Intel: soc-acpi: add entries in ADL match table" (Jaroslav Kysela) [2065575] - devlink: hold the instance lock during eswitch_mode callbacks (Petr Oros) [2101715] - netdevsim: replace vfs_lock with devlink instance lock (Petr Oros) [2101715] - netdevsim: replace port_list_lock with devlink instance lock (Petr Oros) [2101715] - devlink: add explicitly locked flavor of the rate node APIs (Petr Oros) [2101715] - bnxt: use the devlink instance lock to protect sriov (Petr Oros) [2101715] - devlink: pass devlink_port to port_split / port_unsplit callbacks (Petr Oros) [2101715] - devlink: hold the instance lock in port_split / port_unsplit callbacks (Petr Oros) [2101715] - eth: mlxsw: switch to explicit locking for port registration (Petr Oros) [2101715] - eth: nfp: replace driver's "pf" lock with devlink instance lock (Petr Oros) [2101715] - eth: nfp: wrap locking assertions in helpers (Petr Oros) [2101715] - devlink: expose instance locking and add locked port registering (Petr Oros) [2101715] - ethtool: don't drop the rtnl_lock half way thru the ioctl (Petr Oros) [2101715] - ethtool: handle info/flash data copying outside rtnl_lock (Petr Oros) [2101715] - ethtool: push the rtnl_lock into dev_ethtool() (Petr Oros) [2101715] - mlxsw: reg: Remove PMTM register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PMTDB register to obtain split info (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Module To local DataBase Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Use PLLP to get front panel number and split number (Ivan Vecera) [2101715] - mlxsw: reg: Add Port Local port to Label Port mapping Register (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port SWID set before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Move port module mapping before core port init (Ivan Vecera) [2101715] - mlxsw: spectrum: Bump minimum FW version to xx.2008.3326 (Ivan Vecera) [2101715] - bpf: fix build error due to missing bpf_perf_event.h header (Desnes A. Nunes do Rosario) [1908140] - powerpc/bpf: Fix use of user_pt_regs in uapi (Desnes A. Nunes do Rosario) [1908140] - net: ena: Do not waste napi skb cache (Michal Schmidt) [2097644] - net: ena: Extract recurring driver reset code into a function (Michal Schmidt) [2097644] - net: ena: Change the name of bad_csum variable (Michal Schmidt) [2097644] - net: ena: Add debug prints for invalid req_id resets (Michal Schmidt) [2097644] - net: ena: Remove ena_calc_queue_size_ctx struct (Michal Schmidt) [2097644] - net: ena: Move reset completion print to the reset function (Michal Schmidt) [2097644] - net: ena: Remove redundant return code check (Michal Schmidt) [2097644] - net: ena: Change ENI stats support check to use capabilities field (Michal Schmidt) [2097644] - net: ena: Add capabilities field with support for ENI stats capability (Michal Schmidt) [2097644] - net: ena: Change return value of ena_calc_io_queue_size() to void (Michal Schmidt) [2097644] - powerpc/ptrace: replace ptrace_report_syscall() with a tracehook call (Desnes A. Nunes do Rosario) [1992947] - powerpc/ptrace: Add support for PTRACE_SYSEMU (Desnes A. Nunes do Rosario) [1992947] - selftests/powerpc: New PTRACE_SYSEMU test (Desnes A. Nunes do Rosario) [1992947] - powerpc: Redefine TIF_32BITS thread flag (Desnes A. Nunes do Rosario) [1992947] - redhat: fix libnl3-devel BuildRequires for intel-speed-select (Jarod Wilson)- redhat: enable mtty module for internal testing (Jarod Wilson) [2071992] - tools/power/x86/intel-speed-select: v1.12 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: HFI support (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: OOB daemon mode (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: v1.11 release (Martin McConnell) [2072658] - tools/power/x86/intel-speed-select: Update max frequency (Martin McConnell) [2072658] - Spec fixes for intel-speed-select (Martin McConnell) [2072658] - Add BuildRequires libnl3-devel for intel-speed-select (Martin McConnell) [2072658] - xfs: fix soft lockup via spinning in filestream ag selection loop (Brian Foster) [2033293] - net: ping6: Fix memleak in ipv6_renew_options(). (Ivan Vecera) [2112339] - Input: i8042 - Add quirk for Fujitsu Lifebook T725 (Benjamin Tissoires) [2019942] - HID: amd_sfh: Modify the hid name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Modify the bus name (Benjamin Tissoires) [2090040] - HID: amd_sfh: Add support for sensor discovery (Benjamin Tissoires) [2090040] - igc: Reinstate IGC_REMOVED logic and implement it properly (Corinna Vinschen) [2037969] - intel/igc:fix repeated words in comments (Corinna Vinschen) [2037969] - intel: remove unused macros (Corinna Vinschen) [2037969] - igc: Change type of the 'igc_check_downshift' method (Corinna Vinschen) [2037969] - igc: Remove unused phy_type enum (Corinna Vinschen) [2037969] - igc: Remove igc_set_spd_dplx method (Corinna Vinschen) [2037969] - igc: Fix suspending when PTM is active (Corinna Vinschen) [2037969] - igc: Fix BUG: scheduling while atomic (Corinna Vinschen) [2037969 2014971] - igc: Fix infinite loop in release_swfw_sync (Corinna Vinschen) [2037969] - igc: igc_write_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: igc_read_phy_reg_gpy: drop premature return (Corinna Vinschen) [2037969] - igc: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Corinna Vinschen) [2037969] - igc: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037969] - igc: Fix TX timestamp support for non-MSI-X platforms (Corinna Vinschen) [2037969] - igc: Do not enable crosstimestamping for i225-V models (Corinna Vinschen) [2037969] - igc: switch to napi_build_skb() (Corinna Vinschen) [2037969] - igc: Remove obsolete define (Corinna Vinschen) [2037969] - igc: Remove obsolete mask (Corinna Vinschen) [2037969] - igc: Remove obsolete nvm type (Corinna Vinschen) [2037969] - igc: Remove unused phy type (Corinna Vinschen) [2037969] - igc: Remove unused _I_PHY_ID define (Corinna Vinschen) [2037969] - igc: enable XDP metadata in driver (Corinna Vinschen) [2037969] - intel_idle: Fix false positive RCU splats due to incorrect hardirqs state (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/spec_ctrl: Enable RHEL only ibrs_always & retpoline,ibrs_user spectre_v2 options (Waiman Long) [2090229] - KVM: emulate: do not adjust size of fastop and setcc subroutines (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: fix FASTOP_SIZE when return thunks are enabled (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - efi/x86: use naked RET on mixed mode call wrapper (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Remove apostrophe typo (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove UNTRAIN_RET from native_irq_return_ldt (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Mark retbleed_strings static (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/asm/32: Fix ANNOTATE_UNRET_SAFE use on 32-bit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Disable RRSBA behavior (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kexec: Disable RET on kexec (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do not enable IBPB-on-entry when IBPB is not supported (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add Cannon lake to RETBleed affected CPU list (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - redhat/configs: Add new mitigation configs for RetBleed CVEs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retbleed: Add fine grained Kconfig knobs (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Enumerate BTC_NO (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/common: Stamp out the stepping madness (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent RSB underflow before vmenter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fill RSB on vmexit for IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Fix IBRS handling after vmexit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Convert launched argument to flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - KVM: VMX: Flatten __vmx_vcpu_run() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Remove x86_spec_ctrl_mask (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix SPEC_CTRL write on SMT state change (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Fix firmware entry SPEC_CTRL handling (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpu/amd: Add Spectral Chicken (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Do IBPB fallback check only once (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add retbleed=ibpb (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - objtool: Update Retpoline validation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - intel_idle: Disable IBRS during long idle (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report Intel retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Split spectre_v2_select_mitigation() and spectre_v2_user_select_mitigation() (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Optimize SPEC_CTRL MSR writes (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Add kernel IBRS implementation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Enable STIBP for JMP2RET (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Add AMD retbleed= boot parameter (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bugs: Report AMD retbleed vulnerability (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Add magic AMD return-thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Use return-thunk in asm code (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/sev: Avoid using __x86_return_thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/vsyscall_emu/64: Don't use RET in vsyscall emulation (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm: Fix SETcc emulation for return thunks (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/bpf: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/ftrace: Use alternative RET encoding (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86,objtool: Create .return_sites (Josh Poimboeuf) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: Undo return-thunk damage (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Use -mfunction-return (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Swizzle retpoline thunk (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/retpoline: Cleanup some #ifdefery (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/cpufeatures: Move RETPOLINE flags to word 11 (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/kvm/vmx: Make noinstr clean (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - arch/x86/boot/compressed: Add -D__DISABLE_EXPORTS to kbuild flags (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86: (Ab)use __DISABLE_EXPORTS to disable RETHUNK in real mode (Waiman Long) [2090229] {CVE-2022-23816 CVE-2022-23825 CVE-2022-29900 CVE-2022-29901} - x86/entry: Remove skip_r11rcx (Waiman Long) [2090229] - cpuidle,intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE (Waiman Long) [2090229] - x86/speculation/srbds: Do not try to turn mitigation off when not supported (Waiman Long) [2090229] - x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch() (Waiman Long) [2090229] - x86/text-patching: Make text_gen_insn() play nice with ANNOTATE_NOENDBR (Waiman Long) [2090229] - x86/module: Fix the paravirt vs alternative order (Waiman Long) [2090229] - x86: Add straight-line-speculation mitigation (Waiman Long) [2090229] - x86: Prepare inline-asm for straight-line-speculation (Waiman Long) [2090229] - x86: Prepare asm files for straight-line-speculation (Waiman Long) [2090229] - x86: Use -mindirect-branch-cs-prefix for RETPOLINE builds (Waiman Long) [2090229] - x86: Move RETPOLINE*_CFLAGS to arch Makefile (Waiman Long) [2090229] - x86/entry: Add a fence for kernel entry SWAPGS in paranoid_entry() (Waiman Long) [2090229] - Makefile: remove stale cc-option checks (Waiman Long) [2090229] - tools headers: Remove broken definition of __LITTLE_ENDIAN (Waiman Long) [2090229] - tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf bench mem memcpy' (Waiman Long) [2090229] - x86: Add insn_decode_kernel() (Waiman Long) [2090229] - tools/insn: Restore the relative include paths for cross building (Waiman Long) [2090229] - x86/alternative: Use insn_decode() (Waiman Long) [2090229] - x86/insn: Add an insn_decode() API (Waiman Long) [2090229] - x86/insn: Rename insn_decode() to insn_decode_from_regs() (Waiman Long) [2090229] - x86/paravirt: Add new features for paravirt patching (Waiman Long) [2090229] - x86/alternative: Support not-feature (Waiman Long) [2090229] - x86/alternative: Merge include files (Waiman Long) [2090229] - objtool: Fix error handling for STD/CLD warnings (Waiman Long) [2090229] - x86/alternatives: Teach text_poke_bp() to emulate RET (Waiman Long) [2090229] - x86/ftrace: Have ftrace trampolines turn read-only at the end of system boot up (Waiman Long) [2090229] - x86/speculation: Change FILL_RETURN_BUFFER to work with objtool (Waiman Long) [2090229] - objtool: Add support for intra-function calls (Waiman Long) [2090229] - objtool: Rework allocating stack_ops on decode (Waiman Long) [2090229] - objtool: Better handle IRET (Waiman Long) [2090229] - objtool: Support multiple stack_op per instruction (Waiman Long) [2090229] - objtool: Make BP scratch register warning more robust (Waiman Long) [2090229] - x86/kexec: Make relocate_kernel_64.S objtool clean (Waiman Long) [2090229] - objtool: Introduce validate_return() (Waiman Long) [2090229] - Makefile: disallow data races on gcc-10 as well (Waiman Long) [2090229] - objtool: Improve call destination function detection (Waiman Long) [2090229] - x86/alternatives: Implement a better poke_int3_handler() completion scheme (Waiman Long) [2090229] - lib/: fix Kconfig indentation (Waiman Long) [2090229] - x86/alternatives: Use INT3_INSN_SIZE (Waiman Long) [2090229] - x86/kprobes: Fix ordering while text-patching (Waiman Long) [2090229] - x86/kprobes: Convert to text-patching.h (Waiman Long) [2090229] - x86/alternative: Shrink text_poke_loc (Waiman Long) [2090229] - x86/alternative: Remove text_poke_loc::len (Waiman Long) [2090229] - x86/ftrace: Use text_gen_insn() (Waiman Long) [2090229] - x86/alternative: Add text_opcode_size() (Waiman Long) [2090229] - x86/ftrace: Use text_poke() (Waiman Long) [2090229] - x86/ftrace: Use vmalloc special flag (Waiman Long) [2090229] - x86/ftrace: Explicitly include vmalloc.h for set_vm_flush_reset_perms() (Waiman Long) [2090229] - x86/alternatives: Add and use text_gen_insn() helper (Waiman Long) [2090229] - x86/alternatives, jump_label: Provide better text_poke() batching interface (Waiman Long) [2090229] - x86/asm: Annotate relocate_kernel_{32,64}.c (Waiman Long) [2090229] - x86: kprobes: Prohibit probing on instruction which has emulate prefix (Waiman Long) [2090229] - x86: Correct misc typos (Waiman Long) [2090229] - x86/speculation/mds: Apply more accurate check on hypervisor platform (Waiman Long) [2090229] - objtool: Convert insn type to enum (Waiman Long) [2090229] - objtool: Track original function across branches (Waiman Long) [2090229] - objtool: Rename elf_open() to prevent conflict with libelf from elftoolchain (Waiman Long) [2090229] - x86/ftrace: Make enable parameter bool where applicable (Waiman Long) [2090229] - x86/CPU/AMD: Don't force the CPB cap when running under a hypervisor (Waiman Long) [2090229] - objtool: Fix function fallthrough detection (Waiman Long) [2090229] - x86/paravirt: Detect over-sized patching bugs in paravirt_patch_call() (Waiman Long) [2090229] - x86/cpu/amd: Exclude 32bit only assembler from 64bit build (Waiman Long) [2090229] - x86/asm: Mark all top level asm statements as .text (Waiman Long) [2090229] - x86/cpu/bugs: Use __initconst for 'const' init data (Waiman Long) [2090229] - objtool: Add Direction Flag validation (Waiman Long) [2090229] - objtool: Rewrite add_ignores() (Waiman Long) [2090229] - x86/nospec, objtool: Introduce ANNOTATE_IGNORE_ALTERNATIVE (Waiman Long) [2090229] - x86/ftrace: Fix warning and considate ftrace_jmp_replace() and ftrace_call_replace() (Waiman Long) [2090229] - kbuild: Disable extra debugging info in .s output (Waiman Long) [2090229] - x86/CPU/AMD: Set the CPB bit unconditionally on F17h (Waiman Long) [2090229] - x86/alternatives: Print containing function (Waiman Long) [2090229] - x86/ftrace: Do not call function graph from dynamic trampolines (Waiman Long) [2090229] - ftrace: Create new ftrace_internal.h header (Waiman Long) [2090229] - kprobes/x86: Fix instruction patching corruption when copying more than one RIP-relative instruction (Waiman Long) [2090229] - tracing/Makefile: Fix handling redefinition of CC_FLAGS_FTRACE (Waiman Long) [2090229] - x86/paravirt: Remove unused paravirt bits (Waiman Long) [2090229] - x86/paravirt: Remove clobbers parameter from paravirt patch functions (Waiman Long) [2090229] - x86/paravirt: Make paravirt_patch_call() and paravirt_patch_jmp() static (Waiman Long) [2090229] - x86/l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled (Waiman Long) [2090229] - ftrace: Remove unused pointer ftrace_swapper_pid (Waiman Long) [2090229] - x86/spec_ctrl: Temporarily remove RHEL specific IBRS code (Waiman Long) [2090229] - net: bonding: fix use-after-free after 802.3ad slave unbind (Jonathan Toppins) [2109327] - net: bonding: fix possible NULL deref in rlb code (Jonathan Toppins) [2109327] - bonding: ARP monitor spams NETDEV_NOTIFY_PEERS notifiers (Jonathan Toppins) [2109327] - bonding: do not discard lowest hash bit for non layer3+4 hashing (Jonathan Toppins) [2109327] - bonding: helper macro __ATTR_RO to make code more clear (Jonathan Toppins) [2109327] - bonding: force carrier update when releasing slave (Jonathan Toppins) [2109327] - bonding: fix data-races around agg_select_timer (Jonathan Toppins) [2109327] - bonding: switch bond_net_exit() to batch mode (Jonathan Toppins) [2109327] - bonding: pair enable_port with slave_arr_updates (Jonathan Toppins) [2109327] - net: bonding: fix bond_xmit_broadcast return value error bug (Jonathan Toppins) [2109327] - tracing: Show size of requested perf buffer (Michael Petlan) [2103836] - tracing: Increase PERF_MAX_TRACE_SIZE to handle Sentinel1 and docker together (Michael Petlan) [2103836] - drivers/base/memory: determine and store zone for single-zone memory blocks (David Hildenbrand) [1997803] - drivers/base/node: rename link_mem_sections() to register_memory_block_under_node() (David Hildenbrand) [1997803] - drivers/base/node: consolidate node device subsystem initialization in node_dev_init() (David Hildenbrand) [1997803] - drivers/base/memory: introduce memory_block_{online,offline} (David Hildenbrand) [1997803] - mm/memory_hotplug: remove stale function declarations (David Hildenbrand) [1997803] - mm/memory_hotplug: remove HIGHMEM leftovers (David Hildenbrand) [1997803] - redhat/configs: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: restrict CONFIG_MEMORY_HOTPLUG to 64 bit (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_MEMORY_HOTPLUG_SPARSE (David Hildenbrand) [1997803] - mm/memory_hotplug: remove CONFIG_X86_64_ACPI_NUMA dependency from CONFIG_MEMORY_HOTPLUG (David Hildenbrand) [1997803] - memory: remove unused CONFIG_MEM_BLOCK_SIZE (David Hildenbrand) [1997803] - mm/memory_hotplug: disable the functionality for 32b (David Hildenbrand) [1997803] - include/linux/memory.h: drop fields 'hw' and 'phys_callback' from struct memory_block (David Hildenbrand) [1997803] - iommu/vt-d: Fix PCI bus rescan device hot add (Jerry Snitselaar) [2101591] - iommu/vt-d: Fix RID2PASID setup/teardown failure (Jerry Snitselaar) [2101591]- cifs: support share failover when remounting (Ronnie Sahlberg) [2095258] - cifs: avoid starvation when refreshing dfs cache (Ronnie Sahlberg) [2095258] - cifs: fix path comparison and hash calc (Ronnie Sahlberg) [2095258] - cifs: handle different charsets in dfs cache (Ronnie Sahlberg) [2095258] - spi: amd: Limit max transfer and message size (Sudheesh Mavila) [2047996] - redhat/configs: enable CONFIG_SPI_AMD for x86_64 (Sudheesh Mavila) [2047996] - spi: amd: Fix building without ACPI enabled (Sudheesh Mavila) [2047996] - spi: amd: Add support for version AMDI0062 (Sudheesh Mavila) [2047996] - spi: amd: Remove needless rom_addr variable (Sudheesh Mavila) [2047996] - spi: amd: Use iopoll for busy waiting (Sudheesh Mavila) [2047996] - spi: amd: Don't wait for a write-only transfer to finish (Sudheesh Mavila) [2047996] - spi: amd: Remove unneeded variable (Sudheesh Mavila) [2047996] - spi: amd: Refactor amd_spi_busy_wait (Sudheesh Mavila) [2047996] - spi: amd: Refactor code to use less spi_master_get_devdata (Sudheesh Mavila) [2047996] - spi: amd: Use devm_platform_ioremap_resource() in amd_spi_probe (Sudheesh Mavila) [2047996] - spi: spi-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Sudheesh Mavila) [2047996] - spi: amd: Drop superfluous member from struct amd_spi (Sudheesh Mavila) [2047996] - spi: amd: Fix refcount underflow on remove (Sudheesh Mavila) [2047996] - spi: amd: Drop duplicate driver data assignments (Sudheesh Mavila) [2047996] - spi: amd: Pass probe errors back to driver core (Sudheesh Mavila) [2047996] - spi: amd: Fix duplicate iounmap in error path (Sudheesh Mavila) [2047996] - spi: spi-amd: Fix a NULL vs IS_ERR() check in amd_spi_probe() (Sudheesh Mavila) [2047996] - spi: spi-amd: fix warning (Sudheesh Mavila) [2047996] - spi: spi-amd: Add AMD SPI controller driver support (Sudheesh Mavila) [2047996] - selftests/tc-testings: Be compatible with newer tc output (Hangbin Liu) [2100322] - selftests/net: enable lo.accept_local in psock_snd test (Hangbin Liu) [2100322] - selftests/net: Use kselftest skip code for skipped tests (Hangbin Liu) [2100322] - Bluetooth: SCO: Fix sco_send_frame returning skb->len (Gopal Tiwari) [1984641] - Bluetooth: Add bt_skb_sendmsg helper (Gopal Tiwari) [1984641] - Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg (Gopal Tiwari) [1984641] - Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg() (Gopal Tiwari) [1984641] - platform/mellanox: mlxbf-pmc: Fix an IS_ERR() vs NULL bug in mlxbf_pmc_map_counters (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: fix error code in mlxreg_lc_create_static_devices() (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-lc: Add initial support for Nvidia line card devices (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Extend number of hwmon attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-hotplug: Extend logic for hotplug devices operations (Mark Langsdorf) [2068297] - platform_data/mlxreg: Add new type to support modular systems (Mark Langsdorf) [2068297] - platform/mellanox: mlxreg-io: Fix read access of n-bytes size attributes (Mark Langsdorf) [2068297] - platform/mellanox: mlxbf-pmc: fix kernel-doc notation (Mark Langsdorf) [2068297] - platform/mellanox: Typo fix in the file mlxbf-bootctl.c (Mark Langsdorf) [2068297] - redhat/configs: Support QAT devices for x86 only (Vladis Dronov) [2040724] - crypto: qat - expose device config through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - relocate and rename adf_sriov_prepare_restart() (Vladis Dronov) [2040724] - crypto: qat - change behaviour of adf_cfg_add_key_value_param() (Vladis Dronov) [2040724] - crypto: qat - expose device state through sysfs for 4xxx (Vladis Dronov) [2040724] - crypto: qat - Removes the x86 dependency on the QAT drivers (Vladis Dronov) [2040724] - crypto: qat - replace get_current_node() with numa_node_id() (Vladis Dronov) [2040724] - crypto: qat - add support for 401xx devices (Vladis Dronov) [2040724] - crypto: qat - re-enable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - honor CRYPTO_TFM_REQ_MAY_SLEEP flag (Vladis Dronov) [2040724] - crypto: qat - add param check for DH (Vladis Dronov) [2040724] - crypto: qat - add param check for RSA (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for DH (Vladis Dronov) [2040724] - crypto: qat - remove dma_free_coherent() for RSA (Vladis Dronov) [2040724] - crypto: qat - fix memory leak in RSA (Vladis Dronov) [2040724] - crypto: qat - add backlog mechanism (Vladis Dronov) [2040724] - crypto: qat - refactor submission logic (Vladis Dronov) [2040724] - crypto: qat - use pre-allocated buffers in datapath (Vladis Dronov) [2040724] - crypto: qat - set to zero DH parameters before free (Vladis Dronov) [2040724] - crypto: qat - Fix unsigned function returning negative constant (Vladis Dronov) [2040724] - crypto: qat - remove line wrapping for pfvf_ops functions (Vladis Dronov) [2040724] - crypto: qat - use u32 variables in all GEN4 pfvf_ops (Vladis Dronov) [2040724] - crypto: qat - replace disable_vf2pf_interrupts() (Vladis Dronov) [2040724] - crypto: qat - leverage the GEN2 VF mask definiton (Vladis Dronov) [2040724] - crypto: qat - rework the VF2PF interrupt handling logic (Vladis Dronov) [2040724] - crypto: qat - fix off-by-one error in PFVF debug print (Vladis Dronov) [2040724] - crypto: qat - fix wording and formatting in code comment (Vladis Dronov) [2040724] - crypto: qat - test PFVF registers for spurious interrupts on GEN4 (Vladis Dronov) [2040724] - crypto: qat - add check for invalid PFVF protocol version 0 (Vladis Dronov) [2040724] - crypto: qat - add missing restarting event notification in VFs (Vladis Dronov) [2040724] - crypto: qat - remove unnecessary tests to detect PFVF support (Vladis Dronov) [2040724] - crypto: qat - remove unused PFVF stubs (Vladis Dronov) [2040724] - crypto: qat - remove unneeded braces (Vladis Dronov) [2040724] - crypto: qat - fix ETR sources enabled by default on GEN2 devices (Vladis Dronov) [2040724] - crypto: qat - set COMPRESSION capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - set CIPHER capability for DH895XCC (Vladis Dronov) [2040724] - crypto: qat - stop using iommu_present() (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf rts_map_msg structures (Vladis Dronov) [2040724] - crypto: qat - fix initialization of pfvf cap_msg structures (Vladis Dronov) [2040724] - crypto: qat - remove unneeded assignment (Vladis Dronov) [2040724] - crypto: qat - disable registration of algorithms (Vladis Dronov) [2040724] - crypto: qat - enable power management for QAT GEN4 (Vladis Dronov) [2040724] - crypto: qat - move and rename GEN4 error register definitions (Vladis Dronov) [2040724] - crypto: qat - add misc workqueue (Vladis Dronov) [2040724] - crypto: qat - don't cast parameter in bit operations (Vladis Dronov) [2040724] - crypto: qat - fix access to PFVF interrupt registers for GEN4 (Vladis Dronov) [2040724] - crypto: qat - fix a signedness bug in get_service_enabled() (Vladis Dronov) [2040724] - dlm: fix missing lkb refcount handling (Alexander Aring) [2084606] - scsi: storvsc: Fix unsigned comparison to zero (Mohammed Gamal) [2020774] - scsi: storvsc: Fix validation for unsolicited incoming packets (Mohammed Gamal) [2020774] - scsi: storvsc: Fix storvsc_queuecommand() memory leak (Mohammed Gamal) [2020774] - x86/kvm: Add kexec support for SEV Live Migration. (Mohammed Gamal) [2018614] - x86/kvm: Add guest support for detecting and enabling SEV Live Migration feature. (Mohammed Gamal) [2018614] - mm: x86: Invoke hypercall when page encryption status is changed (Mohammed Gamal) [2018614] - hv_netvsc: Fix potential dereference of NULL pointer (Mohammed Gamal) [2086611] - hv_netvsc: Add support for XDP_REDIRECT (Mohammed Gamal) [2086611] - hv_netvsc: Print value of invalid ID in netvsc_send_{completion,tx_complete}() (Mohammed Gamal) [2086611] - net: hyperv: remove use of bpf_op_t (Mohammed Gamal) [2086611] - hv_netvsc: Add check for kvmalloc_array (Mohammed Gamal) [2086611] - net: netvsc: remove break after return (Mohammed Gamal) [2086611] - hv_netvsc: Use bitmap_zalloc() when applicable (Mohammed Gamal) [2086611] - SMB3: EBADF/EIO errors in rename/open caused by race condition in smb2_compound_op (Ronnie Sahlberg) [2108871] - vsock/virtio: enable VQs early on probe (Stefano Garzarella) [2107594] - vsock/virtio: initialize vdev->priv before using VQs (Stefano Garzarella) [2107594] - vsock: each transport cycles only on its own sockets (Stefano Garzarella) [2107594] - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing (Stefano Garzarella) [2107594] - vsock: remove vsock from connected table when connect is interrupted by a signal (Stefano Garzarella) [2107594] - ipv6: take care of disable_policy when restoring routes (Andrea Claudi) [2103894] - tools/testing/nvdimm: Fix security_init() symbol collision (Jeff Moyer) [2096791] - redhat: make kernel-devel pkgs Requires elfutils and gcc (Jarod Wilson) [1701282] - xhci: Fix null pointer dereference in resume if xhci has only one roothub (Dean Nelson) [2061791] - usb: dwc3: gadget: Move null pinter check to proper place (Dean Nelson) [2061791] - xhci: Don't defer primary roothub registration if there is only one roothub (Dean Nelson) [2061791] - USB: serial: pl2303: fix type detection for odd device (Dean Nelson) [2061791] - media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init (Dean Nelson) [2061791] - usb: xhci-mtk: remove bandwidth budget table (Dean Nelson) [2061791] - usb: xhci-mtk: fix fs isoc's transfer error (Dean Nelson) [2061791] - xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI (Dean Nelson) [2061791] - xhci: prevent U2 link power state if Intel tier policy prevented U1 (Dean Nelson) [2061791] - xhci: use generic command timer for stop endpoint commands. (Dean Nelson) [2061791] - usb: host: xhci-plat: omit shared hcd if either root hub has no ports (Dean Nelson) [2061791] - usb: host: xhci-plat: prepare operation w/o shared hcd (Dean Nelson) [2061791] - usb: host: xhci-plat: create shared hcd after having added main hcd (Dean Nelson) [2061791] - xhci: prepare for operation w/o shared hcd (Dean Nelson) [2061791] - xhci: factor out parts of xhci_gen_setup() (Dean Nelson) [2061791] - xhci: Set HCD flag to defer primary roothub registration (Dean Nelson) [2061791] - usb: core: hcd: Add support for deferring roothub registration (Dean Nelson) [2061791] - thunderbolt: Fix buffer allocation of devices with no DisplayPort adapters (Dean Nelson) [2061791] - media: uvcvideo: Fix bit overflow in uvc_probe_video (Dean Nelson) [2061791] - media: uvcvideo: Fix missing check to determine if element is found in list (Dean Nelson) [2061791] - usb: typec: tcpci: Don't skip cleanup in .remove() on error (Dean Nelson) [2061791] - usb: cdc-wdm: fix reading stuck on device close (Dean Nelson) [2061791] - thunderbolt: Ignore port locked error in tb_port_wait_for_link_width() (Dean Nelson) [2061791] - thunderbolt: Add debug logging when lane is enabled/disabled (Dean Nelson) [2061791] - usb: dwc3: gadget: Return proper request status (Dean Nelson) [2061791] - usb: typec: mux: Check dev_set_name() return value (Dean Nelson) [2061791] - usb: dwc3: pci: Fix pm_runtime_get_sync() error checking (Dean Nelson) [2061791] - usb: dwc3: gadget: Replace list_for_each_entry_safe() if using giveback (Dean Nelson) [2061791] - usb: dwc3: core: Only handle soft-reset in DCTL (Dean Nelson) [2061791] - usb: dwc3: Try usb-role-switch first in dwc3_drd_init (Dean Nelson) [2061791] - usb: dwc3: core: Fix tx/rx threshold settings (Dean Nelson) [2061791] - USB: storage: karma: fix rio_karma_init return (Dean Nelson) [2061791] - xhci: Enable runtime PM on second Alderlake controller (Dean Nelson) [2061791] - usb: misc: fix improper handling of refcount in uss720_probe() (Dean Nelson) [2061791] - usb: typec: ucsi: Fix role swapping (Dean Nelson) [2061791] - usb: typec: ucsi: Fix reuse of completion structure (Dean Nelson) [2061791] - thunderbolt: Use different lane for second DisplayPort tunnel (Dean Nelson) [2061791] - thunderbolt: Dump path config space entries during discovery (Dean Nelson) [2061791] - thunderbolt: Use decimal number with port numbers (Dean Nelson) [2061791] - xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms (Dean Nelson) [2061791] - xhci: stop polling roothubs after shutdown (Dean Nelson) [2061791] - USB: Fix xhci event ring dequeue pointer ERDP update issue (Dean Nelson) [2061791] - USB: storage: ums-realtek: fix error code in rts51x_read_mem() (Dean Nelson) [2061791] - usb: early: xhci-dbc: Fix xdbc number parsing (Dean Nelson) [2061791] - usb: early: xhci-dbc: Remove duplicate keep parsing (Dean Nelson) [2061791] - USB: serial: pl2303: fix GS type detection (Dean Nelson) [2061791] - usb: host: xhci: Remove some unnecessary return value initializations (Dean Nelson) [2061791] - usb: host: xhci: add blank line in xhci_halt() (Dean Nelson) [2061791] - usb: host: xhci: update hci_version operation in xhci_gen_setup() (Dean Nelson) [2061791] - usb: host: xhci: fix a comment typo in xhci_mem_init() (Dean Nelson) [2061791] - usb: host: xhci: use ffs() in xhci_mem_init() (Dean Nelson) [2061791] - xhci: fix runtime PM imbalance in USB2 resume (Dean Nelson) [2061791] - xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx() (Dean Nelson) [2061791] - xhci: fix garbage USBSTS being logged in some cases (Dean Nelson) [2061791] - xhci: make xhci_handshake timeout for xhci_reset() adjustable (Dean Nelson) [2061791] - xhci: omit mem read just after allocation of trb (Dean Nelson) [2061791] - Revert "USB: serial: ch341: add new Product ID for CH341A" (Dean Nelson) [2061791] - usb: xhci: fix minmax.cocci warnings (Dean Nelson) [2061791] - usb: host: xhci: drop redundant checks (Dean Nelson) [2061791] - xhci: Allocate separate command structures for each LPM command (Dean Nelson) [2061791] - xhci: dbgtty: use IDR to support several dbc instances. (Dean Nelson) [2061791] - xhci: dbc: Don't call dbc_tty_init() on every dbc tty probe (Dean Nelson) [2061791] - xhci: dbc: Rename xhci_dbc_init and xhci_dbc_exit (Dean Nelson) [2061791] - xhci: dbc: create and remove dbc structure in dbgtty driver. (Dean Nelson) [2061791] - xhci: dbc: refactor xhci_dbc_init() (Dean Nelson) [2061791] - usb: dwc3: pci: Fix Bay Trail phy GPIO mappings (Dean Nelson) [2061791] - xhci: Prevent futile URB re-submissions due to incorrect return value. (Dean Nelson) [2061791] - xhci: re-initialize the HC during resume if HCE was set (Dean Nelson) [2061791] - usb: dwc3: pci: Add "snps,dis_u2_susphy_quirk" for Intel Bay Trail (Dean Nelson) [2061791] - usb: dwc3: pci: add support for the Intel Raptor Lake-S (Dean Nelson) [2061791] - usb: xhci-mtk: add support ip-sleep wakeup for mt8195 (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent core from processing stale TRBs (Dean Nelson) [2061791] - thunderbolt: Replace acpi_bus_get_device() (Dean Nelson) [2061791] - thunderbolt: Add internal xHCI connect flows for Thunderbolt 3 devices (Dean Nelson) [2061791] - thunderbolt: Add missing device ID to tb_switch_is_alpine_ridge() (Dean Nelson) [2061791] - thunderbolt: Disable LTTPR on Intel Titan Ridge (Dean Nelson) [2061791] - usb: ulpi: Call of_node_put correctly (Dean Nelson) [2061791] - usb: ulpi: Move of_node_put to ulpi_dev_release (Dean Nelson) [2061791] - usb: xhci-mtk: Use struct_size() helper in create_sch_ep() (Dean Nelson) [2061791] - usb: common: ulpi: Fix crash in ulpi_match() (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect when receiving VSAFE0V (Dean Nelson) [2061791] - usb: typec: tcpm: Do not disconnect while receiving VBUS off (Dean Nelson) [2061791] - xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set. (Dean Nelson) [2061791] - usb: typec: tcpci: don't touch CC line if it's Vconn source (Dean Nelson) [2061791] - thunderbolt: Remove useless DMA-32 fallback configuration (Dean Nelson) [2061791] - media: uvcvideo: Support devices that report an OT as an entity source (Dean Nelson) [2061791] - Revert "media: uvcvideo: Support devices that report an OT as an entity source" (Dean Nelson) [2061791] - thunderbolt: Add module parameter for CLx disabling (Dean Nelson) [2061791] - thunderbolt: Enable CL0s for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Rename Intel TB_VSE_CAP_IECS capability (Dean Nelson) [2061791] - thunderbolt: Implement TMU time disruption for Intel Titan Ridge (Dean Nelson) [2061791] - thunderbolt: Move usb4_switch_wait_for_bit() to switch.c (Dean Nelson) [2061791] - thunderbolt: Add CL0s support for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Add TMU uni-directional mode (Dean Nelson) [2061791] - xhci: use max() to make code cleaner (Dean Nelson) [2061791] - usb: ftdi-elan: fix memory leak on device disconnect (Dean Nelson) [2061791] - Revert "usb: early: convert to readl_poll_timeout_atomic()" (Dean Nelson) [2061791] - usb: typec: tcpm: fix tcpm unregister port but leave a pending timer (Dean Nelson) [2061791] - thunderbolt: Check return value of kmemdup() in icm_handle_event() (Dean Nelson) [2061791] - media: dw2102: Fix use after free (Dean Nelson) [2061791] - USB: serial: cp210x: fix CP2105 GPIO registration (Dean Nelson) [2061791] - usb: xhci-mtk: fix list_del warning when enable list debug (Dean Nelson) [2061791] - usb: core: config: fix validation of wMaxPacketValue entries (Dean Nelson) [2061791] - xhci: avoid race between disable slot command and host runtime suspend (Dean Nelson) [2061791] - xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime suspending (Dean Nelson) [2061791] - thunderbolt: Do not dereference fwnode in struct device (Dean Nelson) [2061791] - thunderbolt: Add debug logging of DisplayPort resource allocation (Dean Nelson) [2061791] - thunderbolt: Do not program path HopIDs for USB4 routers (Dean Nelson) [2061791] - thunderbolt: Do not allow subtracting more NFC credits than configured (Dean Nelson) [2061791] - thunderbolt: Runtime resume USB4 port when retimers are scanned (Dean Nelson) [2061791] - thunderbolt: Tear down existing tunnels when resuming from hibernate (Dean Nelson) [2061791] - thunderbolt: Runtime PM activate both ends of the device link (Dean Nelson) [2061791] - thunderbolt: xdomain: Avoid potential stack OOB read (Dean Nelson) [2061791] - media: uvcvideo: fix division by zero at stream start (Dean Nelson) [2061791] - usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect (Dean Nelson) [2061791] - xhci: Fix commad ring abort, write all 64 bits to CRCR register. (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip reading GEVNTSIZn (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore Update Transfer cmd params (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip checking Update Transfer status (Dean Nelson) [2061791] - usb: hub: Fix locking issues with address0_mutex (Dean Nelson) [2061791] - media: dib0700: Only touch one bit when start/stop an adapter (Dean Nelson) [2061791] - media: dib0700: cleanup start/stop streaming logic (Dean Nelson) [2061791] - media: dib0700: fix undefined behavior in tuner shutdown (Dean Nelson) [2061791] - media: s2255: fix control-message timeouts (Dean Nelson) [2061791] - media: pvrusb2: fix control-message timeouts (Dean Nelson) [2061791] - media: flexcop-usb: fix control-message timeouts (Dean Nelson) [2061791] - usb: hub: Fix usb enumeration issue due to address0 race (Dean Nelson) [2061791] - usb: typec: fusb302: Fix masking of comparator and bc_lvl interrupts (Dean Nelson) [2061791] - usb: dwc3: gadget: Fix null pointer exception (Dean Nelson) [2061791] - usb: dwc3: gadget: Check for L1/L2/U3 for Start Transfer (Dean Nelson) [2061791] - usb: dwc3: gadget: Ignore NoStream after End Transfer (Dean Nelson) [2061791] - usb: xhci-mtk: fix random remote wakeup (Dean Nelson) [2061791] - usb: xhci-mtk: remove unnecessary error check (Dean Nelson) [2061791] - USB: serial: keyspan: fix memleak on probe errors (Dean Nelson) [2061791] - USB: iowarrior: fix control-message timeouts (Dean Nelson) [2061791] - usb: dwc3: gadget: Skip resizing EP's TX FIFO if already resized (Dean Nelson) [2061791] - usb: dwc3: gadget: Change to dev_dbg() when queuing to inactive gadget/ep (Dean Nelson) [2061791] - xhci: Enable trust tx length quirk for Fresco FL11 USB controller (Dean Nelson) [2061791] - xhci: Fix command ring pointer corruption while aborting a command (Dean Nelson) [2061791] - USB: xhci: dbc: fix tty registration race (Dean Nelson) [2061791] - xhci: add quirk for host controllers that don't update endpoint DCS (Dean Nelson) [2061791] - xhci: guard accesses to ep_state in xhci_endpoint_reset() (Dean Nelson) [2061791] - media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte() (Dean Nelson) [2061791] - USB: cdc-acm: fix break reporting (Dean Nelson) [2061791] - USB: cdc-acm: fix racy tty buffer accesses (Dean Nelson) [2061791] - usb: typec: tcpm: handle SRC_STARTUP state if cc changes (Dean Nelson) [2061791] - usb: typec: tcpci: don't handle vSafe0V event if it's not enabled (Dean Nelson) [2061791] - usb: xhci-mtk: use xhci_dbg() to print log (Dean Nelson) [2061791] - media: mxl111sf: change mutex_init() location (Dean Nelson) [2061791] - media: tm6000: Avoid card name truncation (Dean Nelson) [2061791] - media: gspca: Limit frame size to sizeimage. (Dean Nelson) [2061791] - media: uvcvideo: Don't spam the log in uvc_ctrl_restore_values() (Dean Nelson) [2061791] - media: uvcvideo: Increase the size of UVC_METADATA_BUF_SIZE (Dean Nelson) [2061791] - media: uvcvideo: Return -EIO for control errors (Dean Nelson) [2061791] - media: uvcvideo: Remove unused including (Dean Nelson) [2061791] - media: m5602_ov7660: remove the repeated declaration (Dean Nelson) [2061791] - media: dvb-usb: fix ununit-value in az6027_rc_query (Dean Nelson) [2061791] - thunderbolt: Fix -Wrestrict warning (Dean Nelson) [2061791] - USB: serial: cp210x: fix dropped characters with CP2102 (Dean Nelson) [2061791] - usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC unbind (Dean Nelson) [2061791] - USB: serial: option: remove duplicate USB device ID (Dean Nelson) [2061791] - USB: serial: mos7840: remove duplicated 0xac24 device ID (Dean Nelson) [2061791] - USB: cdc-acm: fix minor-number release (Dean Nelson) [2061791] - usb: dwc3: reference clock period configuration (Dean Nelson) [2061791] - usb: xhci-mtk: allow bandwidth table rollover (Dean Nelson) [2061791] - usb: xhci-mtk: modify the SOF/ITP interval for mt8195 (Dean Nelson) [2061791] - usb: xhci-mtk: add a member of num_esit (Dean Nelson) [2061791] - usb: xhci-mtk: check boundary before check tt (Dean Nelson) [2061791] - usb: xhci-mtk: update fs bus bandwidth by bw_budget_table (Dean Nelson) [2061791] - usb: xhci-mtk: support option to disable usb2 ports (Dean Nelson) [2061791] - usb: xhci-mtk: fix use-after-free of mtk->hcd (Dean Nelson) [2061791] - usb: dwc3: pci: add support for AMD's newer generation platform. (Dean Nelson) [2061791] - xhci: Add bus number to some debug messages (Dean Nelson) [2061791] - xhci: Add additional dynamic debug to follow URBs in cancel and error cases. (Dean Nelson) [2061791] - Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set" (Dean Nelson) [2061791] - xhci: Fix failure to give back some cached cancelled URBs. (Dean Nelson) [2061791] - xhci: fix even more unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - xhci: fix unsafe memory usage in xhci tracing (Dean Nelson) [2061791] - usb: typec: tcpm: Support non-PD mode (Dean Nelson) [2061791] - USB: serial: cp210x: determine fw version for CP2105 and CP2108 (Dean Nelson) [2061791] - USB: serial: cp210x: clean up type detection (Dean Nelson) [2061791] - USB: serial: cp210x: clean up set-chars request (Dean Nelson) [2061791] - USB: serial: cp210x: clean up control-request timeout (Dean Nelson) [2061791] - USB: serial: cp210x: fix flow-control error handling (Dean Nelson) [2061791] - USB: serial: cp210x: fix control-characters error handling (Dean Nelson) [2061791] - tty: drop put_tty_driver (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr (Dean Nelson) [2061791] - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init (Dean Nelson) [2061791] - usb: renesas-xhci: Remove renesas_xhci_pci_exit() (Dean Nelson) [2061791] - usb: dwc3: Resize TX FIFOs to meet EP bursting requirements (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: fix UAF (Dean Nelson) [2061791] - usb: dwc3: gadget: Clear DEP flags after stop transfers in ep disable (Dean Nelson) [2061791] - usb: dwc3: gadget: Set gadget_max_speed when set ssp_rate (Dean Nelson) [2061791] - usb: dwc3: gadget: Prevent EP queuing while stopping transfers (Dean Nelson) [2061791] - media: lmedm04: Fix misuse of comma (Dean Nelson) [2061791] - media: tm6000: Fix memleak in tm6000_start_stream (Dean Nelson) [2061791] - usb: dwc3: gadget: Restart DWC3 gadget when enabling pullup (Dean Nelson) [2061791] - memstick: Skip allocating card when removing host (Dean Nelson) [2061791] - USB: Replace zero-length array with flexible-array member (Dean Nelson) [2061791] - USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Dean Nelson) [2061791] - Revert "[usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd" (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Support runtime power management (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Use ms_dev() helper (Dean Nelson) [2061791] - memstick: Prevent memstick host from getting runtime suspended during card detection (Dean Nelson) [2061791] - misc: rtsx_usb: Use USB remote wakeup signaling for card insertion detection (Dean Nelson) [2061791] - memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe function (Dean Nelson) [2061791]- RDMA/qedr: Fix reporting QP timeout attribute (Kamal Heib) [2083620] - NFSD: Handle COPYer - Not suppored in RHEL8 (Benjamin Coddington) [2108628] - NFSD add ca_source_server<> to COPY (Benjamin Coddington) [2108628] - NFS NFSD: defining nl4_servers structure needed by both (Benjamin Coddington) [2108628] - fix backport powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Diego Domingos) [2106984] - bpf: Enable bpf_ktime_get_coarse_ns helper (Viktor Malik) [2105133] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2047999] - i2c: piix4: Enable EFCH MMIO for Family 17h+ (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support for SMBus port select (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to SMBus base address detect (Sudheesh Mavila) [2047999] - i2c: piix4: Add EFCH MMIO support to region request and release (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus port selection into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move SMBus controller base address detect into function (Sudheesh Mavila) [2047999] - i2c: piix4: Move port I/O region request/release code into functions (Sudheesh Mavila) [2047999] - i2c: piix4: Replace hardcoded memory map size with a #define (Sudheesh Mavila) [2047999] - i2c: piix4: Detect secondary SMBus controller on AMD AM4 chipsets (Sudheesh Mavila) [2047999] - i2c: piix4: Add ACPI support (Sudheesh Mavila) [2047999] - i2c: piix4: Fix probing of reserved ports on AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c: piix4: Fix port selection for AMD Family 16h Model 30h (Sudheesh Mavila) [2047999] - i2c-piix4: Add Hygon Dhyana SMBus support (Sudheesh Mavila) [2047999] - tracing: Remove WARN_ON in start_thread() (Jerome Marchand) [2090967] - net: usb: Fix spelling mistakes (José Ignacio Tornos Martínez) [1984353] - net: usb: cdc_ether: record speed in status method (José Ignacio Tornos Martínez) [1984353] - net: usb: usbnet: add method for reporting speed without MII (José Ignacio Tornos Martínez) [1984353] - e1000e: Fix possible overflow in LTR decoding (Ken Cox) [2037965] - e1000e: Print PHY register address when MDI read/write fails (Ken Cox) [2037965] - e1000e: Correct NVM checksum verification flow (Ken Cox) [2037965] - e1000e: Fix possible HW unit hang after an s0ix exit (Ken Cox) [2037965 2049952] - e1000e: Handshake with CSME starts from ADL platforms (Ken Cox) [2037965 2049952] - e1000e: Separate ADP board type from TGP (Ken Cox) [2037965 2049952] - e1000e: Remove useless DMA-32 fallback configuration (Ken Cox) [2037965] - e1000e: Remove redundant statement (Ken Cox) [2037965] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2037965] - net: e1000e: solve insmod 'Unknown symbol mutex_lock' error (Ken Cox) [2037965] - RDMA/irdma: Add SW mechanism to generate completions on error (Kamal Heib) [2100316] - RDMA/irdma: Remove the redundant variable (Kamal Heib) [2100316] - RDMA/irdma: Add support for DSCP (Kamal Heib) [2100316] - RDMA/irdma: Use irq_update_affinity_hint() (Kamal Heib) [2100316] - RDMA/irdma: Set protocol based on PF rdma_mode flag (Kamal Heib) [2100316 2096481] - virtio-ring: fix DMA metadata flags (Cindy Lu) [1969742] - virtio_ring: fix typos in vring_desc_extra (Jason Wang) [1969742] - virtio-ring: store DMA metadata in desc_extra for split virtqueue (Jason Wang) [1969742] - virtio: use err label in __vring_new_virtqueue() (Jason Wang) [1969742] - virtio_ring: introduce virtqueue_desc_add_split() (Jason Wang) [1969742] - virtio_ring: secure handling of mapping errors (Jason Wang) [1969742] - virtio-ring: factor out desc_extra allocation (Jason Wang) [1969742] - virtio_ring: rename vring_desc_extra_packed (Jason Wang) [1969742] - virtio-ring: maintain next in extra state for packed virtqueue (Jason Wang) [1969742] - drivers/base: fix userspace break from using bin_attributes for cpumap and cpulist (Phil Auld) [2089715] - rpminspect: disable abidiff scanning (Jarod Wilson)- Netvsc: Call hv_unmap_memory() in the netvsc_device_remove() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Release cpu lock in error case (Mohammed Gamal) [2086613] - Drivers: hv: Fix syntax errors in comments (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Don't assign VMbus channel interrupts to isolated CPUs (Mohammed Gamal) [2086613] - hv_balloon: Fix balloon_probe() and balloon_remove() error handling (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: fix typo in comment (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove support for Hyper-V 2008 and Hyper-V 2008R2/Win7 (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Refactor the ring-buffer iterator functions (Mohammed Gamal) [2086613] - hv_sock: Copy packets sent by Hyper-V out of the ring buffer (Mohammed Gamal) [2086613] - hv_sock: Check hv_pkt_iter_first_raw()'s return value (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Accept hv_sock offers in isolated guests (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce {lock,unlock}_requestor() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_request_addr_match() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Introduce vmbus_sendpacket_getid() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix handling of messages with transaction ID of zero (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add VMbus IMC device to unsupported list (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Disable balloon and hot-add accordingly (Mohammed Gamal) [2086613] - Drivers: hv: balloon: Support status report for larger page sizes (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Prevent load re-ordering when reading ring buffer (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix potential crash on module unload (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix initialization of device object in vmbus_device_register() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Deactivate sysctl_record_panic_msg by default in isolated guests (Mohammed Gamal) [2086613] - drivers: hv: log when enabling crash_kexec_post_notifiers (Mohammed Gamal) [2086613] - Drivers: hv: utils: Make use of the helper macro LIST_HEAD() (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Rework use of DMA_BIT_MASK(64) (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj (Mohammed Gamal) [2086613] - Drivers: hv: Compare cpumasks and not their weights in init_vp_index() (Mohammed Gamal) [2086613] - Drivers: hv: Rename 'alloced' to 'allocated' (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Use struct_size() helper in kmalloc() (Mohammed Gamal) [2086613] - Drivers: hv: balloon: account for vmbus packet header in max_pkt_size (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize request offers message for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: Fix definition of hypercall input & output arg variables (Mohammed Gamal) [2086613] - net: netvsc: Add Isolation VM support for netvsc driver (Mohammed Gamal) [2086613] - scsi: storvsc: Add Isolation VM support for storvsc driver (Mohammed Gamal) [2086613] - Drivers: hv : vmbus: Adding NULL pointer check (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Remove unused code to check for subchannels (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Initialize VMbus ring buffer for Isolation VM (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Add SNP support for VMbus channel initiate message (Mohammed Gamal) [2086613] - Drivers: hv: vmbus: Mark vmbus ring buffer visible to host in Isolation VM (Mohammed Gamal) [2086613] - SUNRPC: Don't leak sockets in xs_local_connect() (Jeffrey Layton) [2089429] - SUNRPC: clean up some inconsistent indenting (Jeffrey Layton) [2089429] - SUNRPC: Ensure we flush any closed sockets before xs_xprt_free() (Jeffrey Layton) [2089429] - SUNRPC: Don't call connect() more than once on a TCP socket (Jeffrey Layton) [2089429] - net: openvswitch: fix misuse of the cached connection on tuple changes (Timothy Redaelli) [2099213] - sfc: fix considering that all channels have TX queues (Íñigo Huguet) [1851823] - sfc: fix wrong tx channel offset with efx_separate_tx_channels (Íñigo Huguet) [1851823] - intel/igb:fix repeated words in comments (Corinna Vinschen) [2037959] - igb: remove unexpected word "the" (Corinna Vinschen) [2037959] - igb: Make DMA faster when CPU is active on the PCIe link (Corinna Vinschen) [2037959] - igb: fix a use-after-free issue in igb_clean_tx_ring (Corinna Vinschen) [2037959] - igb: Remove duplicate defines (Corinna Vinschen) [2037959] - igb: skip phy status check where unavailable (Corinna Vinschen) [2037959] - igb: Convert kmap() to kmap_local_page() (Corinna Vinschen) [2037959] - igb: zero hwtstamp by default (Corinna Vinschen) [2037959] - igb: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037959] - PCI: Work around Intel I210 ROM BAR overlap defect (Corinna Vinschen) [2037959] - igb: support EXTTS on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: support PEROUT on 82580/i354/i350 (Corinna Vinschen) [2037959] - igb: move PEROUT and EXTTS isr logic to separate functions (Corinna Vinschen) [2037959] - igb: move SDP config initialization to separate function (Corinna Vinschen) [2037959] - igb: switch to napi_build_skb() (Corinna Vinschen) [2037959] - igb: remove never changed variable `ret_val' (Corinna Vinschen) [2037959] - NFSv4: Add an fattr allocation to _nfs4_discover_trunking() (Scott Mayhew) [2096393] - sunrpc: set cl_max_connect when cloning an rpc_clnt (Scott Mayhew) [2096393] - NFSv4.1 mark qualified async operations as MOVEABLE tasks (Scott Mayhew) [2096393] - powerpc/rtas: Allow ibm,platform-dump RTAS call with null buffer address (Desnes A. Nunes do Rosario) [2095041] - audit: free module name (Richard Guy Briggs) [2100259] - bfq: fix blkio cgroup leakage v4 (Ming Lei) [2093206] - scsi: scsi_dh_alua: Properly handle the ALUA transitioning state (Ewan D. Milne) [1992870] - mm: sparse: remove __section_nr() function (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to find_memory_block (Mark Langsdorf) [2067280] - mm: sparse: pass section_nr to section_mark_present (Mark Langsdorf) [2067280] - headers/uninline: Uninline single-use function: kobject_has_children() (Mark Langsdorf) [2067280] - arch_topology: Do not set llc_sibling if llc_id is invalid (Mark Langsdorf) [2067280] - topology: make core_mask include at least cluster_siblings (Mark Langsdorf) [2067280] - regmap: allow a defined reg_base to be added to every address (Mark Langsdorf) [2067280] - regmap: add configurable downshift for addresses (Mark Langsdorf) [2067280] - drivers/base/dd.c : Remove the initial value of the global variable (Mark Langsdorf) [2067280] - devres: fix typos in comments (Mark Langsdorf) [2067280] - base: soc: Make soc_device_match() simpler and easier to read (Mark Langsdorf) [2067280] - driver core: Refactor sysfs and drv/bus remove hooks (Mark Langsdorf) [2067280] - driver core: Refactor multiple copies of device cleanup (Mark Langsdorf) [2067280] - arch_topology: obtain cpu capacity using information from CPPC (Mark Langsdorf) [2067280] - PM: core: keep irq flags in device_pm_check_callbacks() (Mark Langsdorf) [2067280] - PM: sleep: Add device name to suspend_report_result() (Mark Langsdorf) [2067280] - PM: runtime: Have devm_pm_runtime_enable() handle pm_runtime_dont_use_autosuspend() (Mark Langsdorf) [2067280] - PM: sleep: wakeup: Fix typos in comments (Mark Langsdorf) [2067280] - PM: domains: Fix sleep-in-atomic bug caused by genpd_debug_remove() (Mark Langsdorf) [2067280] - PM: domains: use dev_err_probe() to simplify error handling (Mark Langsdorf) [2067280] - PM: domains: Prevent power off for parent unless child is in deepest state (Mark Langsdorf) [2067280] - driver core: cleanup double words comments (Mark Langsdorf) [2067280] - device property: Don't split fwnode_get_irq*() APIs in the code (Mark Langsdorf) [2067280] - regmap: irq: cleanup comments (Mark Langsdorf) [2067280] - platform: use dev_err_probe() in platform_get_irq_byname() (Mark Langsdorf) [2067280] - devtmpfs: drop redundant fs parameters from internal fs (Mark Langsdorf) [2067280] - component: Replace most references to 'master' with 'aggregate device' (Mark Langsdorf) [2067280] - device property: Add fwnode_irq_get_byname (Mark Langsdorf) [2067280] - regmap-irq: Fix typo in comment (Mark Langsdorf) [2067280] - driver core: Free DMA range map when device is released (Mark Langsdorf) [2067280] - regmap-irq: Update interrupt clear register for proper reset (Mark Langsdorf) [2067280] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067280] - devtmpfs regression fix: reconfigure on each mount (Mark Langsdorf) [2067280] - regmap: debugfs: Fix indentation (Mark Langsdorf) [2067280] - regmap: Call regmap_debugfs_exit() prior to _init() (Mark Langsdorf) [2067280] - driver core: Make bus notifiers in right order in really_probe() (Mark Langsdorf) [2067280] - driver core: Move driver_sysfs_remove() after driver_sysfs_add() (Mark Langsdorf) [2067280] - driver core: Simplify async probe test code by using ktime_ms_delta() (Mark Langsdorf) [2067280] - PM: runtime: Simplify locking in pm_runtime_put_suppliers() (Mark Langsdorf) [2067280] - software node: fix wrong node passed to find nargs_prop (Mark Langsdorf) [2067280] - driver core: platform: document registration-failure requirement (Mark Langsdorf) [2067280] - device property: Add fwnode_iomap() (Mark Langsdorf) [2067280] - device property: Use fwnode_graph_for_each_endpoint() macro (Mark Langsdorf) [2067280] - device property: Implement fwnode_graph_get_endpoint_count() (Mark Langsdorf) [2067280] - device property: Fix documentation for FWNODE_GRAPH_DEVICE_DISABLED (Mark Langsdorf) [2067280] - rtc: Check return value from mc146818_get_time() (Mark Langsdorf) [2067280] - device property: Check fwnode->secondary when finding properties (Mark Langsdorf) [2067280] - topology/sysfs: rework book and drawer topology ifdefery (Mark Langsdorf) [2067280] - topology/sysfs: export cluster attributes only if an architectures has support (Mark Langsdorf) [2067280] - topology/sysfs: export die attributes only if an architectures has support (Mark Langsdorf) [2067280] - driver core: Don't call device_remove_properties() from device_del() (Mark Langsdorf) [2067280] - regmap: allow to define reg_update_bits for no bus configuration (Mark Langsdorf) [2067280] - platform/x86: amd-pmc: Set QOS during suspend on CZN w/ timer wakeup (Mark Langsdorf) [2067250] - PM: sleep: Fix error handling in dpm_prepare() (Mark Langsdorf) [2067250] - PM: sleep: Avoid calling put_device() under dpm_list_mtx (Mark Langsdorf) [2067250] - PM: sleep: Fix runtime PM based cpuidle support (Mark Langsdorf) [2067250] - PM / wakeirq: support enabling wake-up irq after runtime_suspend called (Mark Langsdorf) [2067250] - device property: Drop redundant NULL checks (Mark Langsdorf) [2067250] - PM: sleep: Pause cpuidle later and resume it earlier during system transitions (Mark Langsdorf) [2067250] - PM: suspend: Do not pause cpuidle in the suspend-to-idle path (Mark Langsdorf) [2067250] - regmap: spi: Set regmap max raw r/w from max_transfer_size (Mark Langsdorf) [2067250] - PM: sleep: Do not let "syscore" devices runtime-suspend during system transitions (Mark Langsdorf) [2067250] - component: do not leave master devres group open after bind (Mark Langsdorf) [2067250] - driver core: Provide device_match_acpi_handle() helper (Mark Langsdorf) [2067250] - regmap: Fix possible double-free in regcache_rbtree_exit() (Mark Langsdorf) [2067250] - device property: build kunit tests without structleak plugin (Mark Langsdorf) [2067250] - driver core: Reject pointless SYNC_STATE_ONLY device links (Mark Langsdorf) [2067250] - firmware_loader: add a sanity check for firmware_request_builtin() (Mark Langsdorf) [2067250] - firmware_loader: split built-in firmware call (Mark Langsdorf) [2067250] - firmware_loader: fix pre-allocated buf built-in firmware use (Mark Langsdorf) [2067250] - drivers/base/component.c: remove superfluous header files from component.c (Mark Langsdorf) [2067250] - drivers/base/arch_topology.c: remove superfluous header (Mark Langsdorf) [2067250] - driver core: use NUMA_NO_NODE during device_initialize (Mark Langsdorf) [2067250] - driver core: Fix possible memory leak in device_link_add() (Mark Langsdorf) [2067250] - driver core: Add debug logs when fwnode links are added/deleted (Mark Langsdorf) [2067250] - driver core: Create __fwnode_link_del() helper function (Mark Langsdorf) [2067250] - driver core: Set deferred probe reason when deferred by driver core (Mark Langsdorf) [2067250] - driver core: fw_devlink: Add support for FWNODE_FLAG_NEEDS_CHILD_BOUND_ON_ADD (Mark Langsdorf) [2067250] - driver core: Clarify that dev_err_probe() is OK even w/out -EPROBE_DEFER (Mark Langsdorf) [2067250] - driver core: fw_devlink: Improve handling of cyclic dependencies (Mark Langsdorf) [2067250] - software node: balance refcount for managed software nodes (Mark Langsdorf) [2067250] - driver core: platform: Make use of the helper macro SET_RUNTIME_PM_OPS() (Mark Langsdorf) [2067250] - PM: base: power: don't try to use non-existing RTC for storing data (Mark Langsdorf) [2067250] - PM: sleep: core: Avoid setting power.must_resume to false (Mark Langsdorf) [2067250] - PM: sleep: wakeirq: drop useless parameter from dev_pm_attach_wake_irq() (Mark Langsdorf) [2067250] - PM: domains: Fix domain attach for CONFIG_PM_OPP=n (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_clk_create helper (Mark Langsdorf) [2067250] - PM: runtime: add devm_pm_runtime_enable helper (Mark Langsdorf) [2067250] - regmap: teach regmap to use raw spinlocks if requested in the config (Mark Langsdorf) [2067250] - PM: domains: Add support for 'required-opps' to set default perf state (Mark Langsdorf) [2067250] - Revert "media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary" (Mark Langsdorf) [2067250] - driver: base: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - cacheinfo: clear cache_leaves(cpu) in free_cache_attributes() (Mark Langsdorf) [2067250] - driver core: Fix error return code in really_probe() (Mark Langsdorf) [2067250] - driver: base: Replace symbolic permissions with octal permissions (Mark Langsdorf) [2067250] - regmap: Prefer unsigned int to bare use of unsigned (Mark Langsdorf) [2067250] - regmap: fix the offset of register error log (Mark Langsdorf) [2067250] - bpf: Fix request_sock leak in sk lookup helpers (Antoine Tenart) [2085313] - crypto: fips - make proc files report fips module name and version (Vladis Dronov) [2103966] - net: tipc: fix possible refcount leak in tipc_sk_create() (Xin Long) [2106048] - tipc: move bc link creation back to tipc_node_create (Xin Long) [2106048] - tipc: fix use-after-free Read in tipc_named_reinit (Xin Long) [2106048] - tipc: check attribute length for bearer name (Xin Long) [2106048] - ice: Fix memory corruption in VF driver (Petr Oros) [2037937] - ice: Fix queue config fail handling (Petr Oros) [2037937] - ice: Sync VLAN filtering features for DVM (Petr Oros) [2037937] - ice: Fix PTP TX timestamp offset calculation (Petr Oros) [2037937] - ice: Fix interrupt moderation settings getting cleared (Petr Oros) [2037937] - ice: fix possible under reporting of ethtool Tx and Rx statistics (Petr Oros) [2037937] - ice: allow creating VFs for !CONFIG_NET_SWITCHDEV (Petr Oros) [2037937] - ice: add trace events for tx timestamps (Petr Oros) [2037937] - ice: fix return value check in ice_gnss.c (Petr Oros) [2037937] - ice: remove PF pointer from ice_check_vf_init (Petr Oros) [2037937] - ice: introduce ice_virtchnl.c and ice_virtchnl.h (Petr Oros) [2037937] - ice: cleanup long lines in ice_sriov.c (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_LOCK flag (Petr Oros) [2037937] - ice: introduce ICE_VF_RESET_NOTIFY flag (Petr Oros) [2037937] - ice: convert ice_reset_vf to take flags (Petr Oros) [2037937] - ice: convert ice_reset_vf to standard error codes (Petr Oros) [2037937] - ice: make ice_reset_all_vfs void (Petr Oros) [2037937] - ice: drop is_vflr parameter from ice_reset_all_vfs (Petr Oros) [2037937] - ice: move reset functionality into ice_vf_lib.c (Petr Oros) [2037937] - ice: fix a long line warning in ice_reset_vf (Petr Oros) [2037937] - ice: introduce VF operations structure for reset flows (Petr Oros) [2037937] - ice: fix incorrect dev_dbg print mistaking 'i' for vf->vf_id (Petr Oros) [2037937] - ice: introduce ice_vf_lib.c, ice_vf_lib.h, and ice_vf_lib_private.h (Petr Oros) [2037937] - ice: use ice_is_vf_trusted helper function (Petr Oros) [2037937] - ice: log an error message when eswitch fails to configure (Petr Oros) [2037937] - ice: cleanup error logging for ice_ena_vfs (Petr Oros) [2037937] - ice: move ice_set_vf_port_vlan near other .ndo ops (Petr Oros) [2037937] - ice: refactor spoofchk control code in ice_sriov.c (Petr Oros) [2037937] - ice: rename ICE_MAX_VF_COUNT to avoid confusion (Petr Oros) [2037937] - ice: remove unused definitions from ice_sriov.h (Petr Oros) [2037937] - ice: convert vf->vc_ops to a const pointer (Petr Oros) [2037937] - ice: remove circular header dependencies on ice.h (Petr Oros) [2037937] - ice: rename ice_virtchnl_pf.c to ice_sriov.c (Petr Oros) [2037937] - ice: rename ice_sriov.c to ice_vf_mbx.c (Petr Oros) [2037937] - ice: Fix FV offset searching (Petr Oros) [2037937] - ice: Add support for outer dest MAC for ADQ tunnels (Petr Oros) [2037937] - ice: avoid XDP checks in ice_clean_tx_irq() (Petr Oros) [2037937] - ice: change "can't set link" message to dbg level (Petr Oros) [2037937] - ice: Add slow path offload stats on port representor in switchdev (Petr Oros) [2037937] - ice: Add support for inner etype in switchdev (Petr Oros) [2037937] - ice: convert VF storage to hash table with krefs and RCU (Petr Oros) [2037937] - ice: introduce VF accessor functions (Petr Oros) [2037937] - ice: factor VF variables to separate structure (Petr Oros) [2037937] - ice: convert ice_for_each_vf to include VF entry iterator (Petr Oros) [2037937] - ice: use ice_for_each_vf for iteration during removal (Petr Oros) [2037937] - ice: remove checks in ice_vc_send_msg_to_vf (Petr Oros) [2037937] - ice: move VFLR acknowledge during ice_free_vfs (Petr Oros) [2037937] - ice: move clear_malvf call in ice_free_vfs (Petr Oros) [2037937] - ice: pass num_vfs to ice_set_per_vf_res() (Petr Oros) [2037937] - ice: store VF pointer instead of VF ID (Petr Oros) [2037937] - ice: refactor unwind cleanup in eswitch mode (Petr Oros) [2037937] - ice: add TTY for GNSS module for E810T device (Petr Oros) [2037937] - ice: Simplify tracking status of RDMA support (Petr Oros) [2037937] - ice: Add ability for PF admin to enable VF VLAN pruning (Petr Oros) [2037937] - ice: Add support for 802.1ad port VLANs VF (Petr Oros) [2037937] - ice: Advertise 802.1ad VLAN filtering and offloads for PF netdev (Petr Oros) [2037937] - ice: Support configuring the device to Double VLAN Mode (Petr Oros) [2037937] - ice: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Petr Oros) [2037937] - ice: Add hot path support for 802.1Q and 802.1ad VLAN offloads (Petr Oros) [2037937] - ice: Add outer_vlan_ops and VSI specific VLAN ops implementations (Petr Oros) [2037937] - ice: Adjust naming for inner VLAN operations (Petr Oros) [2037937] - ice: Use the proto argument for VLAN ops (Petr Oros) [2037937] - ice: Refactor vf->port_vlan_info to use ice_vlan (Petr Oros) [2037937] - ice: Introduce ice_vlan struct (Petr Oros) [2037937] - ice: Add new VSI VLAN ops (Petr Oros) [2037937] - ice: Add helper function for adding VLAN 0 (Petr Oros) [2037937] - ice: Refactor spoofcheck configuration functions (Petr Oros) [2037937] - Revert "ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured" (Petr Oros) [2037937] - Revert "ice: Do not enable VLAN pruning when spoofchk is enabled" (Petr Oros) [2037937] - ice: Remove likely for napi_complete_done (Petr Oros) [2037937] - ice: add support for DSCP QoS for IDC (Petr Oros) [2037937] - ice: respect metadata on XSK Rx to skb (Petr Oros) [2037937] - ice: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Petr Oros) [2037937] - ice: respect metadata in legacy-rx/ice_construct_skb() (Petr Oros) [2037937] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2037937]- i40e: Fix call trace in setup_tx_descriptors (Ivan Vecera) [2037943] - i40e: Fix calculating the number of queue pairs (Ivan Vecera) [2037943] - i40e: Fix adding ADQ filter to TC0 (Ivan Vecera) [2037943] - i40e: i40e_main: fix a missing check on list iterator (Ivan Vecera) [2037943] - i40e, xsk: Get rid of redundant 'fallthrough' (Ivan Vecera) [2037943] - i40e, xsk: Diversify return values from xsk_wakeup call paths (Ivan Vecera) [2037943] - i40e, xsk: Terminate Rx side of NAPI when XSK Rx queue gets full (Ivan Vecera) [2037943] - i40e: Add Ethernet Connection X722 for 10GbE SFP+ support (Ivan Vecera) [2037943] - i40e: Add vsi.tx_restart to i40e ethtool stats (Ivan Vecera) [2037943] - i40e: Add tx_stopped stat (Ivan Vecera) [2037943] - i40e: Add support for MPLS + TSO (Ivan Vecera) [2037943] - i40e: little endian only valid checksums (Ivan Vecera) [2037943] - i40e: stop disabling VFs due to PF error responses (Ivan Vecera) [2037943] - i40e: remove dead stores on XSK hotpath (Ivan Vecera) [2037943] - i40e: Add a stat for tracking busy rx pages (Ivan Vecera) [2037943] - i40e: Add a stat for tracking pages waived (Ivan Vecera) [2037943] - i40e: Add a stat tracking new RX page allocations (Ivan Vecera) [2037943] - i40e: Aggregate and export RX page reuse stat (Ivan Vecera) [2037943] - i40e: Remove rx page reuse double count (Ivan Vecera) [2037943] - i40e: Fix race condition while adding/deleting MAC/VLAN filters (Ivan Vecera) [2037943] - i40e: Add new version of i40e_aq_add_macvlan function (Ivan Vecera) [2037943] - i40e: Add new versions of send ASQ command functions (Ivan Vecera) [2037943] - i40e: Add sending commands in atomic context (Ivan Vecera) [2037943] - i40e: Remove unused RX realloc stat (Ivan Vecera) [2037943] - i40e: Disable hw-tc-offload feature on driver load (Ivan Vecera) [2037943] - i40e: Fix reset path while removing the driver (Ivan Vecera) [2037943] - i40e: respect metadata on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ivan Vecera) [2037943] - i40e: Remove useless DMA-32 fallback configuration (Ivan Vecera) [2037943] - i40e: fix unsigned stat widths (Ivan Vecera) [2037943] - i40e: Fix for failed to init adminq while VF reset (Ivan Vecera) [2037943] - i40e: Fix queues reservation for XDP (Ivan Vecera) [2037943] - i40e: Fix issue when maximum queues is exceeded (Ivan Vecera) [2037943] - i40e: Increase delay to 1 s after global EMP reset (Ivan Vecera) [2037943] - i40e: remove variables set but not used (Ivan Vecera) [2037943] - i40e: Remove non-inclusive language (Ivan Vecera) [2037943] - i40e: Update FW API version (Ivan Vecera) [2037943] - i40e: Minimize amount of busy-waiting during AQ send (Ivan Vecera) [2037943] - i40e: Add ensurance of MacVlan resources for every trusted VF (Ivan Vecera) [2037943] - i40e: Fix incorrect netdev's real number of RX/TX queues (Ivan Vecera) [2037943] - i40e: Fix for displaying message regarding NVM version (Ivan Vecera) [2037943] - i40e: fix use-after-free in i40e_sync_filters_subtask() (Ivan Vecera) [2037943] - i40e: Fix to not show opcode msg on unsuccessful VF MAC change (Ivan Vecera) [2037943] - i40e: switch to napi_build_skb() (Ivan Vecera) [2037943] - i40e: Use irq_update_affinity_hint() (Ivan Vecera) [2037943] - mptcp: fix race on unaccepted mptcp sockets (Davide Caratti) [2076971] - mptcp: fix local endpoint accounting (Davide Caratti) [2076971] - mptcp: fix race in overlapping signal events (Davide Caratti) [2076971] - mptcp: fix subflow accounting on close (Davide Caratti) [2076971] - mptcp: introduce implicit endpoints (Davide Caratti) [2076971] - mptcp: constify a bunch of of helpers (Davide Caratti) [2076971] - mptcp: drop port parameter of mptcp_pm_add_addr_signal (Davide Caratti) [2076971] - mptcp: fix removing ids bitmap setting (Davide Caratti) [2076971] - selftests: mptcp: be more conservative with cookie MPJ limits (Davide Caratti) [2076971] - selftests: mptcp: more robust signal race test (Davide Caratti) [2076971] - mptcp: cleanup MPJ subflow list handling (Davide Caratti) [2076971] - mptcp: do not block subflows creation on errors (Davide Caratti) [2076971] - mptcp: keep track of local endpoint still available for each msk (Davide Caratti) [2076971] - mptcp: clean up harmless false expressions (Davide Caratti) [2076971] - mptcp: fix per socket endpoint accounting (Davide Caratti) [2076971] - selftests: mptcp: add fullmesh testcases (Davide Caratti) [2076971] - selftests: mptcp: set and print the fullmesh flag (Davide Caratti) [2076971] - mptcp: local addresses fullmesh (Davide Caratti) [2076971] - mptcp: remote addresses fullmesh (Davide Caratti) [2076971] - mptcp: remove MPTCP_ADD_ADDR_IPV6 and MPTCP_ADD_ADDR_PORT (Davide Caratti) [2076971] - mptcp: build ADD_ADDR/echo-ADD_ADDR option according pm.add_signal (Davide Caratti) [2076971] - mptcp: fix ADD_ADDR and RM_ADDR maybe flush addr_signal each other (Davide Caratti) [2076971] - mptcp: make MPTCP_ADD_ADDR_SIGNAL and MPTCP_ADD_ADDR_ECHO separate (Davide Caratti) [2076971] - mptcp: move drop_other_suboptions check under pm lock (Davide Caratti) [2076971] - mptcp: drop flags and ifindex arguments (Davide Caratti) [2076971] - mptcp: allow to use port and non-signal in set_flags (Davide Caratti) [2076971] - NFSv4.1 support for NFS4_RESULT_PRESERVER_UNLINKED (Scott Mayhew) [2066369] - KVM: selftests: get-reg-list: Add KVM_REG_ARM_FW_REG(3) (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Include unprivileged eBPF status in Spectre v2 miti (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Use the clearbhb instruction in mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: add ID_AA64ISAR2_EL1 sys register (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and migrated (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Mitigate spectre style branch history side channels (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - KVM: arm64: Add templates for BHB mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: proton-pack: Report Spectre-BHB vulnerabilities as part of Spect (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add percpu vectors for EL1 (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add macro for reading symbol addresses from the trampolin (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add vectors that have the bhb mitigation sequences (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Add non-kpti __bp_harden_el1_vectors for mitigations (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow the trampoline text to occupy multiple pages (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the kpti trampoline's kpti sequence optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move trampoline macros out of ifdef'd section (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Don't assume tramp_vectors is the start of the vectors (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Allow tramp_alias to access symbols after the 4K boundary (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Move the trampoline data page before the text page (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Free up another register on kpti's tramp_exit path (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry: Make the trampoline cleanup optional (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: entry.S: Add ventry overflow sanity checks (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Cortex-X2 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: Add Neoverse-N2, Cortex-A710 CPU part definition (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: syscall: exit userspace before unmasking exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - arm64: ptrace: Consistently use pseudo-singlestep exceptions (Chris von Recklinghausen) [2062287] {CVE-2022-23960} - ethtool: Fix get module eeprom fallback (Ivan Vecera) [2091772] - xfs: use setattr_copy to set vfs inode attributes (Andrey Albershteyn) [2085622] - xfs: ensure log flush at the end of a synchronous fallocate call (Andrey Albershteyn) [2085622] - xfs: set prealloc flag in xfs_alloc_file_space() (Andrey Albershteyn) [2085622] - xfs: fallocate() should call file_modified() (Andrey Albershteyn) [2085622] - xfs: remove XFS_PREALLOC_SYNC (Andrey Albershteyn) [2085622] - drm/ast: Fix black screen when getting out of suspend (Jocelyn Falempe) [2097492] - drm/ast: Create the driver for ASPEED proprietory Display-Port (Jocelyn Falempe) [2097492] - x86: change default to spec_store_bypass_disable=prctl spectre_v2_user=prctl (Waiman Long) [2101938] - x86/speculation/mmio: Print SMT warning (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - KVM: x86/speculation: Disable Fill buffer clear within guests (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Reuse SRBDS mitigation for SBDS (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/srbds: Update SRBDS mitigation selection (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enable CPU Fill buffer clearing on idle (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation: Add a common function for MD_CLEAR mitigation update (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - Documentation: Add documentation for Processor MMIO Stale Data (Waiman Long) [2090252] {CVE-2022-21123 CVE-2022-21125 CVE-2022-21166} - x86/tsx: Disable TSX development mode at boot (Waiman Long) [2090252] - x86/tsx: Use MSR_TSX_CTRL to clear CPUID bits (Waiman Long) [2090252] - x86/tsx: Clear CPUID bits when TSX always force aborts (Waiman Long) [2090252] - cpu/speculation: Add prototype for cpu_show_srbds() (Waiman Long) [2090252] - x86/cpu: Move arch_smt_update() to a neutral place (Waiman Long) [2090252] - serial: 8250_pci: rewrite pericom_do_set_divisor() (Myron Stowe) [2096364] - serial: 8250_pci: Fix ACCES entries in pci_serial_quirks array (Myron Stowe) [2096364] - serial: 8250_pci: Merge 8250_moxa to 8250_pci (Myron Stowe) [2096364] - serial: 8250: Use dev_get_drvdata where possible (Myron Stowe) [2096364] - serial: 8250: pericom_do_set_divisor can be static (Myron Stowe) [2096364] - serial: 8250: Add support for higher baud rates to Pericom chips (Myron Stowe) [2096364] - serial: 8250_pci: Have ACCES cards that use the four port Pericom PI7C9X7954 chip use the pci_pericom_setup() (Myron Stowe) [2096364] - serial: 8250_pci: Fix number of ports for ACCES serial cards (Myron Stowe) [2096364] - serial: 8250_pci: Replace custom code with pci_match_id() (Myron Stowe) [2096364] - net/sched: act_police: more accurate MTU policing (Davide Caratti) [2100893] - selinux: initialize proto variable in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - selinux: fix a sock regression in selinux_ip_postroute_compat() (Ondrej Mosnacek) [2005892] - LSM: Avoid warnings about potentially unused hook variables (Ondrej Mosnacek) [2005892] - selinux: fix all of the W=1 build warnings (Ondrej Mosnacek) [2005892] - selinux: make better use of the nf_hook_state passed to the NF hooks (Ondrej Mosnacek) [2005892] - selinux: fix race condition when computing ocontext SIDs (Ondrej Mosnacek) [2005892 1969344] - selinux: remove unneeded ipv6 hook wrappers (Ondrej Mosnacek) [2005892] - lsm_audit: avoid overloading the "key" audit field (Ondrej Mosnacek) [2005892] - security: remove unneeded subdir-$(CONFIG_...) (Ondrej Mosnacek) [2005892] - selinux: return early for possible NULL audit buffers (Ondrej Mosnacek) [2005892] - selinux: correct the return value when loads initial sids (Ondrej Mosnacek) [2005892] - audit: remove unnecessary 'ret' initialization (Ondrej Mosnacek) [2005892] - selinux: kill 'flags' argument in avc_has_perm_flags() and avc_audit() (Ondrej Mosnacek) [2005892] - selinux: slow_avc_audit has become non-blocking (Ondrej Mosnacek) [2005892] - selinux: Fix kernel-doc (Ondrej Mosnacek) [2005892] - selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC (Ondrej Mosnacek) [2005892] - lsm_audit,selinux: pass IB device name by reference (Ondrej Mosnacek) [2005892] - selinux: Remove redundant assignment to rc (Ondrej Mosnacek) [2005892] - selinux: Corrected comment to match kernel-doc comment (Ondrej Mosnacek) [2005892] - selinux: delete selinux_xfrm_policy_lookup() useless argument (Ondrej Mosnacek) [2005892] - selinux: constify some avtab function arguments (Ondrej Mosnacek) [2005892] - selinux: simplify duplicate_policydb_cond_list() by using kmemdup() (Ondrej Mosnacek) [2005892] - selinux: add proper NULL termination to the secclass_map permissions (Ondrej Mosnacek) [2005892] - security: commoncap: clean up kernel-doc comments (Ondrej Mosnacek) [2005892] - security: commoncap: fix -Wstringop-overread warning (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - selinux: fix misspellings using codespell tool (Ondrej Mosnacek) [2005892] - ext4: mballoc: Use this_cpu_read instead of this_cpu_ptr (Lukas Czerner) [2102619] - ext4: add reserved GDT blocks check (Lukas Czerner) [2099702] - ext4: make variable "count" signed (Lukas Czerner) [2099702] - ext4: fix bug_on ext4_mb_use_inode_pa (Lukas Czerner) [2099702] - ext4: fix super block checksum incorrect after mount (Lukas Czerner) [2099702] - ext4: fix bug_on in __es_tree_search (Lukas Czerner) [2099702] - ext4: avoid cycles in directory h-tree (Lukas Czerner) [2099702] - ext4: verify dir block before splitting it (Lukas Czerner) [2099702] - ext4: fix bug_on in ext4_writepages (Lukas Czerner) [2099702] - ext4: reject the 'commit' option on ext2 filesystems (Lukas Czerner) [2099702] - ext4: fix use-after-free in ext4_rename_dir_prepare (Lukas Czerner) [2099702] - ext4: fix warning in ext4_handle_inode_extension (Lukas Czerner) [2099702]- i915: Explicitly #include (Michel Dänzer) [2041811] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Michel Dänzer) [2041811] - drm/i915: #include for k(un)map APIs (Michel Dänzer) [2041811] - Revert "mm: remove the extra ZONE_DEVICE struct page refcount" (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.17..v5.18 (Michel Dänzer) [2041811] - iosys-map: Add a few more helpers (Michel Dänzer) [2041811] - iosys-map: Add offset to iosys_map_memcpy_to() (Michel Dänzer) [2041811] - dma-buf-map: Rename to iosys-map (Michel Dänzer) [2041811] - Revert "drm/amdgpu/display: set vblank_disable_immediate for DC" (Michel Dänzer) [2041811] - Revert "drm: import DMA_BUF module namespace" (Michel Dänzer) [2041811] - drm/virtio: Do not use virtio_reset_device (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.16..v5.17 (Michel Dänzer) [2041811] - agp/intel-gtt: reduce intel-gtt dependencies more (Michel Dänzer) [2041811] - agp/intel-gtt: Replace kernel.h with the necessary inclusions (Michel Dänzer) [2041811] - x86/gpu: Reserve stolen memory for first integrated Intel GPU (Michel Dänzer) [2041811] - drm/i915/rpl-s: Add PCI IDS for Raptor Lake S (Michel Dänzer) [2041811] - drm/amdgpu: Use MCE_PRIO_FIRST instead of MCE_PRIO_UC (Michel Dänzer) [2041811] - Revert "drm/amdgpu: disable runpm if we are the primary adapter" (Michel Dänzer) [2041811] - Revert "treewide: Replace the use of mem_encrypt_active() with cc_platform_has()" (Michel Dänzer) [2041811] - Revert "dma-buf: move dma-buf symbols into the DMA_BUF module namespace" (Michel Dänzer) [2041811] - Revert "fix for "dma-buf: move dma-buf symbols into the DMA_BUF module namespace"" (Michel Dänzer) [2041811] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.15..v5.16 (Michel Dänzer) [2041811] - drm/bochs: Explicitly #include (Michel Dänzer) [2041811] - Revert "gpu: Bulk conversion to generic_handle_domain_irq()" (Michel Dänzer) [2041811] - Revert "vfio/gvt: Fix open/close when multiple device FDs are open" (Michel Dänzer) [2041811] - drm: Drop linux/ prefix from stdarg.h include (Michel Dänzer) [2041811] - drm/i915: Convert to older tasklet API (Michel Dänzer) [2041811] - Merge DRM changes from upstream v5.14.21..v5.15 (Michel Dänzer) [2041811] - dma-buf: Fix kerneldoc comment for struct dma_fence_array (Michel Dänzer) [2041811] - Makefile: Add RHEL_DRM_EXTRAVERSION (Michel Dänzer) [2041811] - mei: me: add Alder Lake N device id. (Prarit Bhargava) [2072660] - pinctrl: alderlake: Fix register offsets for ADL-N variant (Prarit Bhargava) [2049965] - pinctrl: alderlake: Add Intel Alder Lake-N pin controller support (Prarit Bhargava) [2049965] - pinctrl: tigerlake: Revert "Add Alder Lake-M ACPI ID" (Prarit Bhargava) [2049965] - spi: pxa2xx: Add support for Intel Alder Lake PCH-M (Prarit Bhargava) [2089507] - RHEL-only: KVM: selftests: Compile rseq_test out on aarch64 (Eric Auger) [2078919] - KVM: arm64: Don't read a HW interrupt pending state in user context (Eric Auger) [2078919] - KVM: arm64: selftests: Add init ITS device test (Eric Auger) [2078919] - KVM: arm64: selftests: Add test for legacy GICv3 REDIST base partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add tests for GIC redist/cpuif partially above IPA range (Eric Auger) [2078919] - KVM: arm64: selftests: Add some tests for GICv2 in vgic_init (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init/vm_gic_create version agnostic (Eric Auger) [2078919] - KVM: arm64: selftests: Make vgic_init gic version agnostic (Eric Auger) [2078919] - KVM: arm64: vgic: Drop vgic_check_ioaddr() (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check ITS region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v2: Check cpu interface region is not above the VM IPA size (Eric Auger) [2078919] - KVM: arm64: vgic-v3: Check redist region is not above the VM IPA size (Eric Auger) [2078919] - kvm: arm64: vgic: Introduce vgic_check_iorange (Eric Auger) [2078919] - Revert "RHEL-only: KVM: selftests: Fix AArch64 compilation" (Eric Auger) [2078919] - selftests: KVM: Free the GIC FD when cleaning up in arch_timer (Eric Auger) [2078919] - selftests: KVM: Don't leak GIC FD across dirty log test iterations (Eric Auger) [2078919] - KVM: arm64: selftests: Introduce vcpu_width_config (Eric Auger) [2078919] - KVM: arm64: mixed-width check should be skipped for uninitialized vCPUs (Eric Auger) [2078919] - KVM: arm64: Generalise VM features into a set of flags (Eric Auger) [2078919] - KVM: selftests: aarch64: Skip tests if we can't create a vgic-v3 (Eric Auger) [2078919] - kvm: selftests: aarch64: use a tighter assert in vgic_poke_irq() (Eric Auger) [2078919] - kvm: selftests: aarch64: fix some vgic related comments (Eric Auger) [2078919] - kvm: selftests: aarch64: fix the failure check in kvm_set_gsi_routing_irqchip_check (Eric Auger) [2078919] - kvm: selftests: aarch64: pass vgic_irq guest args as a pointer (Eric Auger) [2078919] - kvm: selftests: aarch64: fix assert in gicv3_access_reg (Eric Auger) [2078919] - KVM: selftests: Add vgic initialization for dirty log perf test for ARM (Eric Auger) [2078919] - KVM: arm64: vgic: Read HW interrupt pending state from the HW (Eric Auger) [2078919] - KVM: arm64: Emulate the OS Lock (Eric Auger) [2078919] - KVM: arm64: Allow guest to set the OSLK bit (Eric Auger) [2078919] - KVM: arm64: Stash OSLSR_EL1 in the cpu context (Eric Auger) [2078919] - KVM: arm64: Correctly treat writes to OSLSR_EL1 as undefined (Eric Auger) [2078919] - KVM: arm64: vgic: Replace kernel.h with the necessary inclusions (Eric Auger) [2078919] - KVM: arm64: Fix comment typo in kvm_vcpu_finalize_sve() (Eric Auger) [2078919] - KVM: arm64: selftests: get-reg-list: Add pauth configuration (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test for restoring active IRQs (Eric Auger) [2078919] - KVM: selftests: aarch64: Add ISPENDR write tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for IRQFD in vgic_irq (Eric Auger) [2078919] - KVM: selftests: Add IRQ GSI routing library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add test_inject_fail to vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add tests for LEVEL_INFO in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Level-sensitive interrupts tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add preemption tests in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set EOI mode in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Cmdline arg to set number of IRQs in vgic_irq test (Eric Auger) [2078919] - KVM: selftests: aarch64: Abstract the injection functions in vgic_irq (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vgic_irq to test userspace IRQ injection (Eric Auger) [2078919] - KVM: selftests: aarch64: Add vGIC library functions to deal with vIRQ state (Eric Auger) [2078919] - KVM: selftests: Add kvm_irq_line library function (Eric Auger) [2078919] - KVM: selftests: aarch64: Add GICv3 register accessor library functions (Eric Auger) [2078919] - KVM: selftests: aarch64: Add function for accessing GICv3 dist and redist registers (Eric Auger) [2078919] - KVM: selftests: aarch64: Move gic_v3.h to shared headers (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for various modes with 16kB page size (Eric Auger) [2078919] - KVM: selftests: arm64: Add support for VM_MODE_P36V48_{4K,64K} (Eric Auger) [2078919] - KVM: arm64: Fix comment on barrier in kvm_psci_vcpu_on() (Eric Auger) [2078919] - KVM: arm64: Fix comment for kvm_reset_vcpu() (Eric Auger) [2078919] - KVM: arm64: Use defined value for SCTLR_ELx_EE (Eric Auger) [2078919] - KVM: arm64: vgic: Demote userspace-triggered console prints to kvm_debug() (Eric Auger) [2078919] - KVM: arm64: Consolidate dist->ready setting into kvm_vgic_map_resources() (Eric Auger) [2078919] - arm64/kvm: Fix bitrotted comment for SVE handling in handle_exit.c (Eric Auger) [2078919] - KVM: arm64: Drop vcpu->arch.has_run_once for vcpu->pid (Eric Auger) [2078919] - KVM: arm64: Merge kvm_arch_vcpu_run_pid_change() and kvm_vcpu_first_run_init() (Eric Auger) [2078919] - KVM: arm64: Restructure the point where has_run_once is advertised (Eric Auger) [2078919] - KVM: arm64: Move kvm_arch_vcpu_run_pid_change() out of line (Eric Auger) [2078919] - KVM: arm64: Move SVE state mapping at HYP to finalize-time (Eric Auger) [2078919] - KVM: arm64: Move double-checked lock to kvm_vgic_map_resources() (Eric Auger) [2078919] - KVM: arm64: Constify kvm_io_gic_ops (Eric Auger) [2078919] - KVM: arm64: Avoid setting the upper 32 bits of TCR_EL2 and CPTR_EL2 to 1 (Eric Auger) [2078919] - selftests: KVM: Fix kvm device helper ioctl assertions (Eric Auger) [2078919] - ACPI: tables: Quiet ACPI table not found warning (Mark Langsdorf) [2067290] - ACPI/IORT: Check node revision for PMCG resources (Mark Langsdorf) [2067290] - PM: s2idle: ACPI: Fix wakeup interrupts handling (Mark Langsdorf) [2067290] - ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE (Mark Langsdorf) [2067290] - ACPI: PM: Revert "Only mark EC GPE for wakeup on Intel systems" (Mark Langsdorf) [2067290] - ACPI: require CRC32 to build (Mark Langsdorf) [2067290] - ACPI: DPTF: Support Raptor Lake (Mark Langsdorf) [2067290] - ACPI: scan: Rename label in acpi_scan_init() (Mark Langsdorf) [2067290] - ACPI: scan: Simplify initialization of power and sleep buttons (Mark Langsdorf) [2067290] - ACPI: scan: Change acpi_scan_init() return value type to void (Mark Langsdorf) [2067290] - ACPI: SPCR: check if table->serial_port.access_width is too wide (Mark Langsdorf) [2067290] - ACPI: APD: Check for NULL pointer after calling devm_ioremap() (Mark Langsdorf) [2067290] - ACPI: pfr_telemetry: Fix info leak in pfrt_log_ioctl() (Mark Langsdorf) [2067290] - ACPI: APD: Add a fmw property clk-name (Mark Langsdorf) [2067290] - ACPI: pfr_update: Fix return value check in pfru_write() (Mark Langsdorf) [2067290] - ACPI: processor: thermal: avoid cpufreq_get_policy() (Mark Langsdorf) [2067290] - ACPI / x86: Add acpi_quirk_skip_[i2c_client|serdev]_enumeration() helpers (Mark Langsdorf) [2067290] - ACPI: battery: Add the ThinkPad "Not Charging" quirk (Mark Langsdorf) [2067290] - acpi: Store CRC-32 hash of the _PLD in struct acpi_device (Mark Langsdorf) [2067290] - acpi: Export acpi_bus_type (Mark Langsdorf) [2067290] - ACPI: sysfs: use default_groups in kobj_type (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Telemetry driver (Mark Langsdorf) [2067290] - ACPI: Introduce Platform Firmware Runtime Update device driver (Mark Langsdorf) [2067290] - efi: Introduce EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER and corresponding structures (Mark Langsdorf) [2067290] - ACPICA: Update version to 20211217 (Mark Langsdorf) [2067290] - ACPICA: iASL/NHLT table: "Specific Data" field support (Mark Langsdorf) [2067290] - ACPICA: iASL: Add suppport for AGDI table (Mark Langsdorf) [2067290] - ACPICA: iASL: Add TDEL table to both compiler/disassembler (Mark Langsdorf) [2067290] - ACPICA: Fixed a couple of warnings under MSVC (Mark Langsdorf) [2067290] - ACPICA: Change a return_ACPI_STATUS (AE_BAD_PARAMETER) (Mark Langsdorf) [2067290] - ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 (Mark Langsdorf) [2067290] - ACPICA: Add support for PCC Opregion special context data (Mark Langsdorf) [2067290] - ACPICA: Fix wrong interpretation of PCC address (Mark Langsdorf) [2067290] - ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() (Mark Langsdorf) [2067290] - ACPICA: Utilities: Avoid deleting the same object twice in a row (Mark Langsdorf) [2067290] - ACPICA: Fix AEST Processor generic resource substructure data field byte length (Mark Langsdorf) [2067290] - ACPICA: iASL/Disassembler: Additional support for NHLT table (Mark Langsdorf) [2067290] - ACPICA: Avoid subobject buffer overflow when validating RSDP signature (Mark Langsdorf) [2067290] - ACPICA: Macros: Remove ACPI_PHYSADDR_TO_PTR (Mark Langsdorf) [2067290] - ACPICA: Use original pointer for virtual origin tables (Mark Langsdorf) [2067290] - ACPICA: Use original data_table_region pointer for accesses (Mark Langsdorf) [2067290] - ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions (Mark Langsdorf) [2067290] - ACPI: CPPC: Amend documentation in the comments (Mark Langsdorf) [2067290] - ACPI: NFIT: Import GUID before use (Mark Langsdorf) [2067290] - ACPI: PM: Remove redundant cache flushing (Mark Langsdorf) [2067290] - ACPI: Use acpi_fetch_acpi_dev() instead of acpi_bus_get_device() (Mark Langsdorf) [2067290] - ACPI: tables: Add AEST to the list of known table signatures (Mark Langsdorf) [2067290] - ACPI: PM: Avoid CPU cache flush when entering S4 (Mark Langsdorf) [2067290] - PM: hibernate: Allow ACPI hardware signature to be honoured (Mark Langsdorf) [2067290] - ACPI: PMIC: xpower: Fix _TMP ACPI errors (Mark Langsdorf) [2067290] - ACPI: PMIC: allow drivers to provide a custom lpat_raw_to_temp() function (Mark Langsdorf) [2067290] - ACPI: PMIC: constify all struct intel_pmic_opregion_data declarations (Mark Langsdorf) [2067290] - ACPI: EC: Mark the ec_sys write_support param as module_param_hw() (Mark Langsdorf) [2067290] - ACPI: EC: Relocate acpi_ec_create_query() and drop acpi_ec_delete_query() (Mark Langsdorf) [2067290] - ACPI: EC: Make the event work state machine visible (Mark Langsdorf) [2067290] - ACPI: EC: Avoid queuing unnecessary work in acpi_ec_submit_event() (Mark Langsdorf) [2067290] - ACPI: EC: Rename three functions (Mark Langsdorf) [2067290] - ACPI: EC: Simplify locking in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Rearrange the loop in acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Fold acpi_ec_check_event() into acpi_ec_event_handler() (Mark Langsdorf) [2067290] - ACPI: EC: Pass one argument to acpi_ec_query() (Mark Langsdorf) [2067290] - ACPI: EC: Call advance_transaction() from acpi_ec_dispatch_gpe() (Mark Langsdorf) [2067290] - ACPI: EC: Rework flushing of EC work while suspended to idle (Mark Langsdorf) [2067290] - ACPI / x86: Add PWM2 on the Xiaomi Mi Pad 2 to the always_present list (Mark Langsdorf) [2067290] - ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on the GPD win (Mark Langsdorf) [2067290] - ACPI / x86: Allow specifying acpi_device_override_status() quirks by path (Mark Langsdorf) [2067290] - ACPI: Change acpi_device_always_present() into acpi_device_override_status() (Mark Langsdorf) [2067290] - ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present table (Mark Langsdorf) [2067290] - ACPI: processor idle: Use swap() instead of open coding it (Mark Langsdorf) [2067290] - ACPI: processor: Replace kernel.h with the necessary inclusions (Mark Langsdorf) [2067290] - ACPI: DPTF: Update device ID in a comment (Mark Langsdorf) [2067290] - ACPI: PM: Emit debug messages when enabling/disabling wakeup power (Mark Langsdorf) [2067290] - ACPI: thermal: drop an always true check (Mark Langsdorf) [2067290] - ACPI: Add a context argument for table parsing handlers (Mark Langsdorf) [2067290] - ACPI: Teach ACPI table parsing about the CEDT header format (Mark Langsdorf) [2067290] - ACPI: Keep sub-table parsing infrastructure available for modules (Mark Langsdorf) [2067290] - cxgb4: fix wrong shift. (Raju Rangoju) [1977437] - cxgb4: fix wrong ethtool n-tuple rule lookup (Raju Rangoju) [1977437] - cxgb4: halt chip before flashing PHY firmware image (Raju Rangoju) [1977437] - cxgb4: fix sleep in atomic when flashing PHY firmware (Raju Rangoju) [1977437] - cxgb4: fix endianness when flashing boot image (Raju Rangoju) [1977437] - cxgb4: avoid link re-train during TC-MQPRIO configuration (Raju Rangoju) [1977437] - cxgb4: fix regression with HASH tc prio value update (Raju Rangoju) [1977437] - cxgb4: avoid accessing registers when clearing filters (Raju Rangoju) [1977437] - net:CXGB4: fix leak if sk_buff is not used (Raju Rangoju) [1977437] - cxgb4: Fix unintentional sign extension issues (Raju Rangoju) [1977437] - cxgb4: remove unneeded if-null-free check (Raju Rangoju) [1977437] - PCI: vmd: Assign VMD IRQ domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Prevent recursive locking on interrupt allocation (Myron Stowe) [2050850] - PCI: vmd: Add DID 8086:A77F for all Intel Raptor Lake SKU's (Myron Stowe) [2050850] - PCI: vmd: Honor ACPI _OSC on PCIe features (Myron Stowe) [2050850] - PCI: vmd: Clean up domain before enumeration (Myron Stowe) [2050850] - PCI: vmd: Use PCI_POSSIBLE_ERROR() to check config reads (Myron Stowe) [2050850] - PCI: Add PCI_ERROR_RESPONSE and related definitions (Myron Stowe) [2050850] - PCI: vmd: Drop redundant includes of , (Myron Stowe) [2050850] - PCI: vmd: Assign a number to each VMD controller (Myron Stowe) [2050850] - PCI: vmd: Disable MSI-X remapping when possible (Myron Stowe) [2050850] - PCI: vmd: Offset Client VMD MSI-X vectors (Myron Stowe) [2050850] - PCI: vmd: Use msi_msg shadow structs (Myron Stowe) [2050850] - Merge tag 'pci-v5.10-changes' of git://git.kernel.org/pub/scm/linux/kernel/g (Myron Stowe) [2050850] - PCI: vmd: Update VMD PM to correctly use generic PCI PM (Myron Stowe) [2050850] - PCI: vmd: Create IRQ allocation helper (Myron Stowe) [2050850] - PCI: vmd: Create IRQ Domain configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create bus offset configuration helper (Myron Stowe) [2050850] - PCI: vmd: Create physical offset helper (Myron Stowe) [2050850] - PCI_vmd_Mark_VMD_irqdomain_with_DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - irqdomain/msi: Provide DOMAIN_BUS_VMD_MSI (Myron Stowe) [2050850] - PCI: vmd: Dont abuse vector irqomain as parent (Myron Stowe) [2050850] - PCI: designware-ep: Fix the Header Type check (Myron Stowe) [2050850] - PCI: vmd: Use Shadow MEMBAR registers for QEMU/KVM guests (Myron Stowe) [2050850] - PCI: vmd: Filter resource type bits from shadow register (Myron Stowe) [2050850] - PCI: Fix indentation (Myron Stowe) [2050850] - scsi: iscsi: Fix session removal on shutdown (Chris Leech) [2101760] - scsi: qedi: Use QEDI_MODE_NORMAL for error handling (Chris Leech) [2101760] - scsi: iscsi: Add helper to remove a session from the kernel (Chris Leech) [2101760] - scsi: iscsi: Clean up bound endpoints during shutdown (Chris Leech) [2101760] - scsi: iscsi: Allow iscsi_if_stop_conn() to be called from kernel (Chris Leech) [2101760] - scsi: iscsi: Fix HW conn removal use after free (Chris Leech) [2101760] - scsi: iscsi: Make iscsi_unregister_transport() return void (Chris Leech) [2101760] - scsi: core: iscsi: Directly use ida_alloc()/ida_free() (Chris Leech) [2101760] - scsi: iscsi: Exclude zero from the endpoint ID range (Chris Leech) [2101760] - scsi: iscsi: Fix harmless double shift bug (Chris Leech) [2101760] - scsi: libiscsi: Remove unnecessary memset() in iscsi_conn_setup() (Chris Leech) [2101760] - scsi: libiscsi: Teardown iscsi_cls_conn gracefully (Chris Leech) [2101760] - scsi: libiscsi: Add iscsi_cls_conn to sysfs after initialization (Chris Leech) [2101760] - scsi: iscsi: Add helper functions to manage iscsi_cls_conn (Chris Leech) [2101760] - scsi: iscsi: Drop temp workq_name (Chris Leech) [2101760] - scsi: iscsi: Use the session workqueue for recovery (Chris Leech) [2101760] - scsi: iscsi: ql4xxx: Use per-session workqueue for unbinding (Chris Leech) [2101760] - scsi: iscsi: Remove iscsi_scan_finished() (Chris Leech) [2101760] - scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown() (Chris Leech) [2101760] - scsi: libiscsi: Move ehwait initialization to iscsi_session_setup() (Chris Leech) [2101760] - x86/sme: Explicitly map new EFI memmap table as encrypted (Chris von Recklinghausen) [2091831] - x86/sme: Use #define USE_EARLY_PGTABLE_L5 in mem_encrypt_identity.c (Chris von Recklinghausen) [2091831] - efi/x86: Fix boot regression on systems with invalid memmap entries (Chris von Recklinghausen) [2091831] - efi: Add tracking for dynamically allocated memmaps (Chris von Recklinghausen) [2091831] - efi: Add a flags parameter to efi_memory_map (Chris von Recklinghausen) [2091831] - x86/kexec: fix memory leak of elf header buffer (Tao Liu) [2014945] - net: sched: add barrier to fix packet stuck problem for lockless qdisc (Davide Caratti) [2103025] - powercap: intel_rapl: add support for ALDERLAKE_N (David Arcari) [2096964] - clk: fix invalid usage of list cursor in unregister (David Arcari) [2105258] - clk: fix invalid usage of list cursor in register (David Arcari) [2105258] - powercap: intel_rapl: add support for RaptorLake (David Arcari) [2076724] - lib/math: move int_pow() from pwm_bl.c for wider use (Ivan Vecera) [2101700] - x86/fpu: KVM: Set the base guest FPU uABI size to sizeof(struct kvm_xsave) (Paul Lai) [2092066]- net/sched: cls_u32: fix possible leak in u32_init_knode() (Davide Caratti) [2081283] - net/sched: cls_u32: fix netns refcount changes in u32_change() (Davide Caratti) [2081283] - net/sched: flower: fix parsing of ethertype following VLAN header (Davide Caratti) [2081283] - net: sched: limit TC_ACT_REPEAT loops (Davide Caratti) [2081283] - net_sched: add __rcu annotation to netdev->qdisc (Davide Caratti) [2081283] - sch_htb: Fail on unsupported parameters when offload is requested (Davide Caratti) [2081283] - net_sched: restore "mpu xxx" handling (Davide Caratti) [2081283] - net: sched: sch_netem: Refactor code in 4-state loss generator (Davide Caratti) [2081283] - net/mlx5e: TC, Fix ct_clear overwriting ct action metadata (Amir Tzin) [2100474] - bpftool: man: Add missing top level docs (Yauheni Kaliuta) [2097615] - net/mlx5: CT: Fix header-rewrite re-use for tupels (Amir Tzin) [2101162] - cpuidle: haltpoll: Call cpuidle_poll_state_init() later (Mark Langsdorf) [2067313] - cpuidle: use default_groups in kobj_type (Mark Langsdorf) [2067313] - cpuidle: Fix cpuidle_remove_state_sysfs() kerneldoc comment (Mark Langsdorf) [2067313] - cpuidle: menu: Fix typo in a comment (Mark Langsdorf) [2067313] - cpuidle: Fix kobject memory leaks in error paths (Mark Langsdorf) [2067313] - cpuidle: menu: Take negative "sleep length" values into account (Mark Langsdorf) [2067313] - HID: elo: Revert USB reference counting (Benjamin Tissoires) [2073833] - HID: elo: fix memory leak in elo_probe (Benjamin Tissoires) [2073833] - fs: dlm: filter user dlm messages for kernel locks (Alexander Aring) [2026116] - psample: Add a fwd declaration for skbuff (Ivan Vecera) [2101706] - platform/x86/intel/sdsi: Fix bug in multi packet reads (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Poll on ready bit for writes (Prarit Bhargava) [2100948] - platform/x86/intel/sdsi: Handle leaky bucket (Prarit Bhargava) [2100948] - indirect_call_wrapper: extend indirect wrapper to support up to 4 calls (Petr Oros) [2101705] - block: Fix handling of offline queues in blk_mq_alloc_request_hctx() (Ming Lei) [2081913] - netfilter: br_netfilter: do not skip all hooks with 0 priority (Florian Westphal) [2099732] - net: openvswitch: fix parsing of nw_proto for IPv6 fragments (Eelco Chaudron) [2101537] - s390/smp,vdso: fix ASCE handling (Tobias Huschle) [2103887] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2102305] - intel/igbvf:fix repeated words in comments (Corinna Vinschen) [2037962] - igbvf: Remove useless DMA-32 fallback configuration (Corinna Vinschen) [2037962] - SUNRPC: avoid race between mod_timer() and del_timer_sync() (Benjamin Coddington) [2104507] - iavf: Fix issue with MAC address of VF shown as zero (Petr Oros) [2037938] - iavf: switch to napi_build_skb() (Petr Oros) [2037938] - iavf: Remove non-inclusive language (Petr Oros) [2037938] - iavf: Fix incorrect use of assigning iavf_status to int (Petr Oros) [2037938] - iavf: stop leaking iavf_status as "errno" values (Petr Oros) [2037938] - iavf: Add usage of new virtchnl format to set default MAC (Petr Oros) [2037938] - iavf: refactor processing of VLAN V2 capability message (Petr Oros) [2037938] - iavf: Add support for 50G/100G in AIM algorithm (Petr Oros) [2037938] - iavf: remove redundant ret variable (Petr Oros) [2037938] - iavf: Remove useless DMA-32 fallback configuration (Petr Oros) [2037938] - cifs: fix potential double free during failed mount (Ronnie Sahlberg) [2088799] - cifs: escape spaces in share names (Dave Wysochanski) [2100367] - Documentation: add documentation for force_cgroup_v2_swappiness control (Nico Pache) [2084242] - Introduce force_cgroup_v2_swappiness tuneable to deprecate cgv1 per-cgroup swappiness (Nico Pache) [2084242] - redhat: trim rpminspect config file (Jarod Wilson)- powerpc/smp: Set numa node before updating mask (Diego Domingos) [2103833] - iommu/vt-d: Fix potential memory leak in intel_setup_irq_remapping() (Mohammed Gamal) [2088366] - irqdomain/treewide: Free firmware node after domain removal (Mohammed Gamal) [2088366] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Mohammed Gamal) [2088366] - x86/kvm: Don't waste memory if kvmclock is disabled (Mohammed Gamal) [2088366] - x86/pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init() (Mohammed Gamal) [2088366] - x86/pci: Reducde #ifdeffery in PCI init code (Mohammed Gamal) [2088366] - hv_utils: Add comment about max VMbus packet size in VSS driver (Mohammed Gamal) [2088366] - x86/coco: Explicitly declare type of confidential computing platform (Mohammed Gamal) [2088366] - x86/hyper-v: Add hyperv Isolation VM check in the cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Use CC_ATTR attribute to generalize string I/O unroll (Mohammed Gamal) [2088366] - random: remove unused irq_flags argument from add_interrupt_randomness() (Mohammed Gamal) [2088366] - x86/hyperv: Fix definition of hv_ghcb_pg variable (Mohammed Gamal) [2088366] - swiotlb: Add CONFIG_HAS_IOMEM check around swiotlb_mem_remap() (Mohammed Gamal) [2088366] - hyper-v: Enable swiotlb bounce buffer for Isolation VM (Mohammed Gamal) [2088366] - swiotlb: Add swiotlb bounce buffer remap function for HV IVM (Mohammed Gamal) [2088366] - x86/hyperv: Refactor hv_msi_domain_free_irqs() (Mohammed Gamal) [2088366] - x86/hyperv: Move required MSRs check to initial platform probing (Mohammed Gamal) [2088366] - x86/hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup fails (Mohammed Gamal) [2088366] - x86/hyperv: Protect set_hv_tscchange_cb() against getting preempted (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicate include (Mohammed Gamal) [2088366] - x86/hyperv: Remove duplicated include in hv_init (Mohammed Gamal) [2088366] - x86/hyperv: Add ghcb hvcall support for SNP VM (Mohammed Gamal) [2088366] - x86/hyperv: Add Write/Read MSR registers via ghcb page (Mohammed Gamal) [2088366] - x86/hyperv: Add new hvcall guest address host visibility support (Mohammed Gamal) [2088366] - x86/hyperv: Initialize shared memory boundary in the Isolation VM. (Mohammed Gamal) [2088366] - x86/hyperv: Initialize GHCB page in Isolation VM (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_es_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Replace occurrences of sev_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev-es: Do not unroll string I/O for SEV-ES guests (Mohammed Gamal) [2088366] - efi/x86: Avoid RWX mappings for all of DRAM (Mohammed Gamal) [2088366] - x86/sme: Replace occurrences of sme_active() with cc_platform_has() (Mohammed Gamal) [2088366] - x86/sev: Add an x86 version of cc_platform_has() (Mohammed Gamal) [2088366] - vmalloc: fix the owner argument for the new __vmalloc_node_range callers (Mohammed Gamal) [2088366] - mm: remove vmalloc_exec (Mohammed Gamal) [2088366] - arm64: use PAGE_KERNEL_ROX directly in alloc_insn_page (Mohammed Gamal) [2088366] - arm64/kprobes: set VM_FLUSH_RESET_PERMS on kprobe instruction pages (Mohammed Gamal) [2088366] - x86/hyperv: allocate the hypercall page with only read and execute bits (Mohammed Gamal) [2088366] - x86/hyperv: use vmalloc_exec for the hypercall page (Mohammed Gamal) [2088366] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2088366] - x86/irq: Initialize PCI/MSI domain at PCI init time (Mohammed Gamal) [2088366] - x86/hyperv: implement an MSI domain for root partition (Mohammed Gamal) [2088366] - irqdomain/treewide: Keep firmware node unconditionally allocated (Mohammed Gamal) [2088366] - irqdomain/msi: Allow to override msi_domain_alloc/free_irqs() (Mohammed Gamal) [2088366] - x86/sev: Expose sev_es_ghcb_hv_call() for use by HyperV (Mohammed Gamal) [2088366] - x86/sev: Carve out HV call's return value verification (Mohammed Gamal) [2088366] - x86/sev: Fix noinstr for vc_ghcb_invalidate() (Mohammed Gamal) [2088366] - arch/cc: Introduce a function to check for confidential computing features (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - Revert "drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status" (Mohammed Gamal) [2088366] - libperf tests: Fix typo in perf_evlist__open() failure error messages (Michael Petlan) [1878555] - libperf: Fix 32-bit build for tests uint64_t printf (Michael Petlan) [1878555] - libperf: Add arm64 support to perf_mmap__read_self() (Michael Petlan) [1878555] - libperf tests: Add test_stat_multiplexing test (Michael Petlan) [1878555] - libperf: Remove scaling process from perf_mmap__read_self() (Michael Petlan) [1878555] - libperf: Adopt perf_counts_values__scale() from tools/perf/util (Michael Petlan) [1878555] - arm64: perf: Don't register user access sysctl handler multiple times (Michael Petlan) [1878555] - Documentation: arm64: Document PMU counters access from userspace (Michael Petlan) [1878555] - arm64: perf: Enable PMU counter userspace access for perf event (Michael Petlan) [1878555] - arm64: perf: Add support for ARMv8.5-PMU 64-bit counters (Michael Petlan) [1878555] - arm64: perf: Clean up enable/disable calls (Michael Petlan) [1878555] - arm64: perf: Only advertise cap_user_time for arch_timer (Michael Petlan) [1878555] - arm64: perf: Implement correct cap_user_time (Michael Petlan) [1878555] - arm64: perf: Add userspace counter access disable switch (Michael Petlan) [1878555] - perf: Add a counter for number of user access events in context (Michael Petlan) [1878555] - x86: perf: Move RDPMC event flag to a common definition (Michael Petlan) [1878555] - Fix null ptr dereference crash due to premature release of ndlp. Upstream Status: RHEL-Only Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2034425 (Dick Kennedy) - lpfc updates for rh8.7 14.0.0.13 (Dick Kennedy) [2034425] - scsi: lpfc: Use sg_dma_address() and sg_dma_len() macros for NVMe I/O (Dick Kennedy) [2034425] - scsi: lpfc: Alter FPIN stat accounting logic (Dick Kennedy) [2034425] - scsi: lpfc: Decrement outstanding gidft_inp counter if lpfc_err_lost_link() (Dick Kennedy) [2034425] - scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check() (Dick Kennedy) [2034425] - scsi: lpfc: Fix ndlp put following a LOGO completion (Dick Kennedy) [2034425] - scsi: lpfc: Fix additional reference counting in lpfc_bsg_rport_els() (Dick Kennedy) [2034425] - scsi: lpfc: Fix resource leak in lpfc_sli4_send_seq_to_ulp() (Dick Kennedy) [2034425] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [2034425] - scsi: lpfc: Copyright updates for 14.2.0.2 patches (Dick Kennedy) [2034425] - scsi: lpfc: Expand setting ELS_ID field in ELS_REQUEST64_WQE (Dick Kennedy) [2034425] - scsi: lpfc: Update stat accounting for READ_STATUS mbox command (Dick Kennedy) [2034425] - scsi: lpfc: Change FA-PWWN detection methodology (Dick Kennedy) [2034425] - scsi: lpfc: Register for Application Services FC-4 type in Fabric topology (Dick Kennedy) [2034425] - scsi: lpfc: Remove false FDMI NVMe FC-4 support for NPIV ports (Dick Kennedy) [2034425] - scsi: lpfc: Revise FDMI reporting of supported port speed for trunk groups (Dick Kennedy) [2034425] - scsi: lpfc: Fix call trace observed during I/O with CMF enabled (Dick Kennedy) [2034425] - scsi: lpfc: Correct CRC32 calculation for congestion stats (Dick Kennedy) [2034425] - scsi: lpfc: Move MI module parameter check to handle dynamic disable (Dick Kennedy) [2034425] - scsi: lpfc: Remove unnecessary NULL pointer assignment for ELS_RDF path (Dick Kennedy) [2034425] - scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted (Dick Kennedy) [2034425] - scsi: lpfc: Update fc_prli_sent outstanding only after guaranteed IOCB submit (Dick Kennedy) [2034425] - scsi: lpfc: Protect memory leak for NPIV ports sending PLOGI_RJT (Dick Kennedy) [2034425] - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI (Dick Kennedy) [2034425] - scsi: lpfc: Fix SCSI I/O completion and abort handler deadlock (Dick Kennedy) [2034425] - scsi: lpfc: Requeue SCSI I/O to upper layer when fw reports link down (Dick Kennedy) [2034425] - scsi: lpfc: Zero SLI4 fcp_cmnd buffer's fcpCntl0 field (Dick Kennedy) [2034425] - scsi: lpfc: Fix diagnostic fw logging after a function reset (Dick Kennedy) [2034425] - scsi: lpfc: Move cfg_log_verbose check before calling lpfc_dmp_dbg() (Dick Kennedy) [2034425] - scsi: lpfc: Tweak message log categories for ELS/FDMI/NVMe rescan (Dick Kennedy) [2034425] - scsi: lpfc: Fix queue failures when recovering from PCI parity error (Dick Kennedy) [2034425] - scsi: lpfc: Fix unload hang after back to back PCI EEH faults (Dick Kennedy) [2034425] - scsi: lpfc: Improve PCI EEH Error and Recovery Handling (Dick Kennedy) [2034425] - scsi: lpfc: Use kcalloc() (Dick Kennedy) [2034425] - scsi: lpfc: Fix typos in comments (Dick Kennedy) [2034425] - scsi: lpfc: Remove failing soft_wwn support (Dick Kennedy) [2034425] - scsi: lpfc: Reduce log messages seen after firmware download (Dick Kennedy) [2034425] - scsi: lpfc: Remove NVMe support if kernel has NVME_FC disabled (Dick Kennedy) [2034425] - scsi: lpfc: Remove redundant flush_workqueue() call (Dick Kennedy) [2034425] - scsi: lpfc: Terminate string in lpfc_debugfs_nvmeio_trc_write() (Dick Kennedy) [2034425] - scsi: lpfc: Use irq_set_affinity() (Dick Kennedy) [2034425] - time: Handle negative seconds correctly in timespec64_to_ns() (Íñigo Huguet) [2098634] - time: Prevent undefined behaviour in timespec64_to_ns() (Íñigo Huguet) [2098634] - mm,hwpoison: return -EBUSY when migration fails (Rafael Aquini) [2092671 2099510] - mm,hwpoison: remove drain_all_pages from shake_page (Rafael Aquini) [2092671] - mm,hwpoison: disable pcplists before grabbing a refcount (Rafael Aquini) [2092671] - mm,hwpoison: fix printing of page flags (Rafael Aquini) [2092671] - mm,hwpoison: refactor get_any_page (Rafael Aquini) [2092671] - mm,hwpoison: drop unneeded pcplist draining (Rafael Aquini) [2092671] - mm,hwpoison: drain pcplists before bailing out for non-buddy zero-refcount page (Rafael Aquini) [2092671] - redhat: Exclude cpufreq.h from kernel-headers (Patrick Talbert)- dm raid: fix accesses beyond end of raid member array (Benjamin Marzinski) [2012340] - dm mirror log: clear log bits up to BITS_PER_LONG boundary (Benjamin Marzinski) [2012340] - dm: fix BLK_STS_DM_REQUEUE handling when dm_io represents split bio (Benjamin Marzinski) [2012340] - dm mirror log: round up region bitmap size to BITS_PER_LONG (Benjamin Marzinski) [2012340] - dm: improve abnormal bio processing (Benjamin Marzinski) [2012340] - dm: simplify bio-based IO accounting further (Benjamin Marzinski) [2012340] - dm: don't grab target io reference in dm_zone_map_bio (Benjamin Marzinski) [2012340] - dm: improve bio splitting and associated IO accounting (Benjamin Marzinski) [2012340] - dm era: commit metadata in postsuspend after worker stops (Benjamin Marzinski) [2012340] - dm: fix race in dm_start_io_acct (Benjamin Marzinski) [2012340] - block: remove bioset_init_from_src (Benjamin Marzinski) [2012340] - dm: fix bio_set allocation (Benjamin Marzinski) [2012340] - dm verity: set DM_TARGET_IMMUTABLE feature flag (Benjamin Marzinski) [2012340] - dm cache metadata: remove unnecessary variable in __dump_mapping (Benjamin Marzinski) [2012340] - dm mpath: provide high-resolution timer to HST for bio-based (Benjamin Marzinski) [2012340] - dm crypt: make printing of the key constant-time (Benjamin Marzinski) [2012340] - dm integrity: fix error code in dm_integrity_ctr() (Benjamin Marzinski) [2012340] - dm stats: add cond_resched when looping over entries (Benjamin Marzinski) [2012340] - dm: improve dm_io reference counting (Benjamin Marzinski) [2012340] - dm: switch to bdev based IO accounting interfaces (Benjamin Marzinski) [2012340] - block: add sectors parameter to bio_start_io_acct_time() (Benjamin Marzinski) [2012340] - dm: pass dm_io instance to dm_io_acct directly (Benjamin Marzinski) [2012340] - dm: don't pass bio to __dm_start_io_acct and dm_end_io_acct (Benjamin Marzinski) [2012340] - dm: use bio_sectors in dm_aceept_partial_bio (Benjamin Marzinski) [2012340] - dm: simplify basic targets (Benjamin Marzinski) [2012340] - dm: conditionally enable branching for less used features (Benjamin Marzinski) [2012340] - dm: move hot dm_io members to same cacheline as dm_target_io (Benjamin Marzinski) [2012340] - dm: add local variables to clone_endio and __map_bio (Benjamin Marzinski) [2012340] - dm: mark various branches unlikely (Benjamin Marzinski) [2012340] - dm: simplify dm_start_io_acct (Benjamin Marzinski) [2012340] - dm: simplify dm_io access in dm_split_and_process_bio (Benjamin Marzinski) [2012340] - dm: factor out dm_io_set_error and __dm_io_dec_pending (Benjamin Marzinski) [2012340] - block: fix offset/size check in bio_trim() (Benjamin Marzinski) [2012340] - block: fix argument type of bio_trim() (Benjamin Marzinski) [2012340] - dm: allow dm_accept_partial_bio() for dm_io without duplicate bios (Benjamin Marzinski) [2012340] - dm mpath: only use ktime_get_ns() in historical selector (Benjamin Marzinski) [2012340] - dm: fix dm_io and dm_target_io flags race condition on Alpha (Benjamin Marzinski) [2012340] - dm integrity: set journal entry unused when shrinking device (Benjamin Marzinski) [2012340] - dm ioctl: log an error if the ioctl structure is corrupted (Benjamin Marzinski) [2012340] - dm: consolidate spinlocks in dm_io struct (Benjamin Marzinski) [2012340] - dm: reduce size of dm_io and dm_target_io structs (Benjamin Marzinski) [2012340] - dm: switch dm_target_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: switch dm_io booleans over to proper flags (Benjamin Marzinski) [2012340] - dm: return void from __send_empty_flush (Benjamin Marzinski) [2012340] - dm: factor out dm_io_complete (Benjamin Marzinski) [2012340] - dm cache: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: simplify dm_sumbit_bio_remap interface (Benjamin Marzinski) [2012340] - dm thin: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add WARN_ON_ONCE to dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: requeue IO if mapping table not yet available (Benjamin Marzinski) [2012340] - dm thin metadata: remove unused dm_thin_remove_block and __remove (Benjamin Marzinski) [2012340] - dm thin: use time_is_before_jiffies instead of open coding it (Benjamin Marzinski) [2012340] - dm crypt: fix get_key_size compiler warning if !CONFIG_KEYS (Benjamin Marzinski) [2012340] - dm ioctl: prevent potential spectre v1 gadget (Benjamin Marzinski) [2012340] - dm cache policy smq: make static read-only array table const (Benjamin Marzinski) [2012340] - dm delay: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm crypt: use dm_submit_bio_remap (Benjamin Marzinski) [2012340] - dm: add dm_submit_bio_remap interface (Benjamin Marzinski) [2012340] - dm: flag clones created by __send_duplicate_bios (Benjamin Marzinski) [2012340] - dm: reduce dm_io and dm_target_io struct sizes (Benjamin Marzinski) [2012340] - dm: move duplicate code from callers of alloc_tio into alloc_tio (Benjamin Marzinski) [2012340] - dm: record old_sector in dm_target_io before calling map function (Benjamin Marzinski) [2012340] - dm: remove legacy code only needed before submit_bio recursion (Benjamin Marzinski) [2012340] - dm: remove unused mapped_device argument from free_tio (Benjamin Marzinski) [2012340] - dm: remove impossible BUG_ON in __send_empty_flush (Benjamin Marzinski) [2012340] - dm: reduce code duplication in __map_bio (Benjamin Marzinski) [2012340] - dm: refactor dm_split_and_process_bio a bit (Benjamin Marzinski) [2012340] - dm: fold __clone_and_map_data_bio into __split_and_process_bio (Benjamin Marzinski) [2012340] - dm: rename split functions (Benjamin Marzinski) [2012340] - dm: eliminate copying of dm_io fields in dm_io_dec_pending (Benjamin Marzinski) [2012340] - dm ioctl: return UUID in DM_LIST_DEVICES_CMD result (Benjamin Marzinski) [2012340] - dm crypt: support using trusted keys (Benjamin Marzinski) [2012340] - dm crypt: replaced #if defined with IS_ENABLED (Benjamin Marzinski) [2012340] - ext4: add check to prevent attempting to resize an fs with sparse_super2 (Lukas Czerner) [2077760] - fscache: Avoid ASSERTCMP if two threads race into fscache_disable_cookie (Dave Wysochanski) [2073260] - lib: bitmap: Introduce node-aware alloc API (Ivan Vecera) [2101701] - exec: Force single empty string when argv is empty (Rafael Aquini) [2100955] - powerpc: Enable execve syscall exit tracepoint (Steve Best) [2095521] - cgroup: disable controllers at parse time (Waiman Long) [2098264] - init: initialize jump labels before command line option parsing (Waiman Long) [2098264] - smp: Make softirq handling RT safe in flush_smp_call_function_queue() (Phil Auld) [2097364] - smp: Rename flush_smp_call_function_from_idle() (Phil Auld) [2097364] - cpupower: Add "perf" option to print AMD P-State information (Steve Best) [2059365] - cpupower: Add function to print AMD P-State performance capabilities (Steve Best) [2059365] - cpupower: Move print_speed function into misc helper (Steve Best) [2059365] - cpupower: Enable boost state support for AMD P-State module (Steve Best) [2059365] - cpupower: Add AMD P-State sysfs definition and access helper (Steve Best) [2059365] - cpupower: Introduce ACPI CPPC library (Steve Best) [2059365] - cpupower: Add the function to get the sysfs value from specific table (Steve Best) [2059365] - cpupower: Initial AMD P-State capability (Steve Best) [2059365] - cpupower: Add the function to check AMD P-State enabled (Steve Best) [2059365] - cpupower: Add AMD P-State capability flag (Steve Best) [2059365] - tools/power/cpupower/{ToDo => TODO}: Rename the todo file (Steve Best) [2059365] - tools: cpupower: fix typo in cpupower-idle-set(1) manpage (Steve Best) [2059365] - ntb: intel: fix port config status offset for SPR (John W. Linville) [2048750] - NTB/msi: Use struct_size() helper in devm_kzalloc() (John W. Linville) [2048750] - ntb_hw_switchtec: Fix a minor issue in config_req_id_table() (John W. Linville) [2048750] - ntb_hw_switchtec: Remove code for disabling ID protection (John W. Linville) [2048750] - ntb_hw_switchtec: Update the way of getting VEP instance ID (John W. Linville) [2048750] - ntb_hw_switchtec: AND with the part_map for a valid tpart_vec (John W. Linville) [2048750] - ntb_hw_switchtec: Fix bug with more than 32 partitions (John W. Linville) [2048750] - ntb_hw_switchtec: Fix pff ioread to read into mmio_part_cfg_all (John W. Linville) [2048750] - ntb_hw_switchtec: fix the spelling of "its" (John W. Linville) [2048750] - NTB/msi: Fix ntbm_msi_request_threaded_irq() kernel-doc comment (John W. Linville) [2048750] - NTB: switch from 'pci_' to 'dma_' API (John W. Linville) [2048750] - ntb: ntb_pingpong: remove redundant initialization of variables msg_data and spad_data (John W. Linville) [2048750] - NTB: perf: Fix an error code in perf_setup_inbuf() (John W. Linville) [2048750] - NTB: Fix an error code in ntb_msit_probe() (John W. Linville) [2048750] - ntb: intel: remove invalid email address in header comment (John W. Linville) [2048750] - NTB: Add support for EPF PCI Non-Transparent Bridge (John W. Linville) [2048750] - ntb: intel: add Intel NTB LTR vendor support for gen4 NTB (John W. Linville) [2048750] - ntb: idt: fix error check in ntb_hw_idt.c (John W. Linville) [2048750]- KVM: x86: Fix the intel_pt PMI handling wrongly considered from guest (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't rebuild page when the page is synced and no tlb flushing is required (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Verify the pmu event filter matches the correct event (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add the helper function create_pmu_event_filter (Vitaly Kuznetsov) [2074835] - kvm: x86/pmu: Fix the compare function used by the pmu event filter (Vitaly Kuznetsov) [2074835] - KVM: Free new dirty bitmap if creating a new memslot fails (Vitaly Kuznetsov) [2074835] - KVM: Initialize debugfs_dentry when a VM is created to avoid NULL deref (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync asm/cpufeatures.h with the with the kernel (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU (Vitaly Kuznetsov) [2074835] - KVM: PPC: Book3S HV: Fix conversion to gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Fix boolreturn.cocci warnings (Vitaly Kuznetsov) [2074835] - KVM: VMX: Exit to userspace if vCPU has injected exception and invalid state (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of vcpu->lock (Vitaly Kuznetsov) [2074835] - kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has architectural PMU (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Account for family 17h event renumberings in amd_pmc_perf_hw_id (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use atomic XCHG to write TDP MMU SPTEs with volatile bits (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move shadow-present check out of spte_has_volatile_bits() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't treat fully writable SPTEs as volatile (modulo A/D) (Vitaly Kuznetsov) [2074835] - selftests: kvm: add amx_test to .gitignore (Vitaly Kuznetsov) [2074835] - Revert "x86/mm: Introduce lookup_address_in_mm()" (Vitaly Kuznetsov) [2074835] - KVM: x86: work around QEMU issue with synthetic CPUID leaves (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix potential races when walking host page table (Vitaly Kuznetsov) [2074835] - Documentation: KVM: Update documentation to indicate KVM is arm64-only (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do not create SPTEs for GFNs that exceed host.MAXPHYADDR (Vitaly Kuznetsov) [2074835] - kvm: selftests: introduce and use more page size-related constants (Vitaly Kuznetsov) [2074835] - kvm: selftests: do not use bitfields larger than 32-bits for PTEs (Vitaly Kuznetsov) [2074835] - KVM: SEV: add cache flush to solve SEV cache incoherency issues (Vitaly Kuznetsov) [2074835] - KVM: SVM: Flush when freeing encrypted pages even on SME_COHERENT CPUs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Simplify and harden helper to flush SEV guest page(s) (Vitaly Kuznetsov) [2074835] - KVM: selftests: Silence compiler warning in the kvm_page_table_test (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Update AMD PMC sample period to fix guest NMI-watchdog (Vitaly Kuznetsov) [2074835] - x86/kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip KVM_GUESTDBG_BLOCKIRQ APICv update if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86: Pend KVM_REQ_APICV_UPDATE during vCPU creation to fix a race (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Defer APICv updates while L2 is active until L1 is active (Vitaly Kuznetsov) [2074835] - KVM: x86: Tag APICv DISABLE inhibit, not ABSENT, if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wrap vcpu->srcu_idx and yell if it's abused (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't re-acquire SRCU lock in complete_emulated_io() (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Check for supported page sizes (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Initialise default guest mode at test startup time (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Introduce a variable default IPA size (Vitaly Kuznetsov) [2074835] - KVM: selftests: arm64: Rework TCR_EL1 configuration (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid writing to TSC page without an active vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Do not activate AVIC for SEV-enabled guest (Vitaly Kuznetsov) [2074835] - selftests: kvm: add tsc_scaling_sync to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: Don't create VM debugfs files outside of the VM directory (Vitaly Kuznetsov) [2074835] - KVM: avoid NULL pointer dereference in kvm_dirty_ring_push (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: remove unnecessary flush_workqueue() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add cond_resched() to loop in sev_clflush_pages() (Vitaly Kuznetsov) [2074835] - KVM: x86: fix sending PV IPI (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do compare-and-exchange of gPTE via the user address (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove redundant vm_entry_controls_clearbit() call (Vitaly Kuznetsov) [2074835] - KVM: x86: cleanup enter_rmode() (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix tsc scaling when the host doesn't support it (Vitaly Kuznetsov) [2074835] - kvm: x86: SVM: remove unused defines (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move tsc ratio definitions to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: fix avic spec based definitions again (Vitaly Kuznetsov) [2074835] - KVM: x86: Only do MSR filtering when access MSR by rdmsr/wrmsr (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Emulate RDPID only if it is enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix and isolate TSX-specific performance event logic (Vitaly Kuznetsov) [2074835] - KVM: x86: mmu: trace kvm_mmu_set_spte after the new SPTE was set (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Trace all APICv inhibit changes and capture overall status (Vitaly Kuznetsov) [2074835] - KVM: x86: Add wrappers for setting/clearing APICv inhibits (Vitaly Kuznetsov) [2074835] - KVM: x86: Make APICv inhibit reasons an enum and cleanup naming (Vitaly Kuznetsov) [2074835] - KVM: X86: Handle implicit supervisor access with SMAP (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename variable smap to not_smap in permission_fault() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comments in update_permission_bitmask (Vitaly Kuznetsov) [2074835] - KVM: X86: Change the type of access u32 to u64 (Vitaly Kuznetsov) [2074835] - KVM: Remove dirty handling from gfn_to_pfn_cache completely (Vitaly Kuznetsov) [2074835] - KVM: Use enum to track if cached PFN will be used in guest and/or host (Vitaly Kuznetsov) [2074835] - KVM: SVM: Fix kvm_cache_regs.h inclusions for is_guest_mode() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use different raw event masks for AMD and Intel (Vitaly Kuznetsov) [2074835] - KVM: Don't actually set a request when evicting vCPUs for GFN cache invd (Vitaly Kuznetsov) [2074835] - KVM: avoid double put_page with gfn-to-pfn cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in zap range and mmu_notifier unmap (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix panic on out-of-bounds guest IRQ (Vitaly Kuznetsov) [2074835] - KVM: MMU: propagate alloc_workqueue failure (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid VMM to set SYNIC/STIMER MSRs when SynIC wasn't activated (Vitaly Kuznetsov) [2074835] - KVM: x86: Avoid theoretical NULL pointer dereference in kvm_irq_delivery_to_apic_fast() (Vitaly Kuznetsov) [2074835] - KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC irq (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix clang -Wimplicit-fallthrough in do_host_cpuid() (Vitaly Kuznetsov) [2074835] - Revert "KVM: set owner of cpu and vm file operations" (Vitaly Kuznetsov) [2074835] - KVM: Prevent module exit until all VMs are freed (Vitaly Kuznetsov) [2074835] - KVM: use kvcalloc for array allocations (Vitaly Kuznetsov) [2074835] - KVM: x86: Introduce KVM_CAP_DISABLE_QUIRKS2 (Vitaly Kuznetsov) [2074835] - kvm: x86: Require const tsc for RT (Vitaly Kuznetsov) [2074835] - KVM: x86: synthesize CPUID leaf 0x80000021h if useful (Vitaly Kuznetsov) [2074835] - KVM: x86: add support for CPUID leaf 0x80000021 (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range()" (Vitaly Kuznetsov) [2074835] - kvm: x86/mmu: Flush TLB before zap_gfn_range releases RCU (Vitaly Kuznetsov) [2074835] - kvm/emulate: Fix SETcc emulation function offsets with SLS (Vitaly Kuznetsov) [2074835] - KVM: compat: riscv: Prevent KVM_COMPAT from being selected (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to populate a VM with the max possible guest mem (Vitaly Kuznetsov) [2074835] - KVM: selftests: Define cpu_relax() helpers for s390 and x86 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Split out helper to allocate guest mem via memfd (Vitaly Kuznetsov) [2074835] - KVM: selftests: add shared hugetlbfs backing source type (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move raw KVM_SET_USER_MEMORY_REGION helper to utils (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN on any attempt to atomically update REMOVED SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for a REMOVED leaf SPTE before making the SPTE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap defunct roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap roots in two passes to avoid inducing RCU stalls (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding when zapping GFNs for defunct TDP MMU root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap invalidated roots via asynchronous worker (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Defer TLB flush to caller when freeing TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Do remote TLB flush before dropping RCU in TDP MMU resched (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only TDP MMU leafs in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write to zap TDP MMU range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add dedicated helper to zap TDP MMU root shadow page (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip remote TLB flush when zapping all of TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only the target TDP MMU shadow page in NX recovery (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor low-level TDP MMU set SPTE helper to take raw values (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: WARN if old _or_ new SPTE is REMOVED in non-atomic path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add helpers to read/write TDP MMU SPTEs and document RCU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop RCU after processing each root in MMU notifier hooks (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Batch TLB flushes from TDP MMU for MMU notifier change_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for !leaf=>leaf, not PFN change, in TDP MMU SP removal (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not allow readers to acquire references to invalid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: only perform eager page splitting on valid roots (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Require mmu_lock be held for write in unyielding root iter (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document that zapping invalidated roots doesn't need to flush (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Formalize TDP MMU's (unintended?) deferred TLB flush logic (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix wrong/misleading comments in TDP MMU fast zap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP MMU (Vitaly Kuznetsov) [2074835] - selftests: kvm: add generated file to the .gitignore (Vitaly Kuznetsov) [2074835] - KVM: x86: pull kvm->srcu read-side to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Passing up the error state of mmu_alloc_shadow_roots() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Disable preemption across AVIC load/put during APICv refresh (Vitaly Kuznetsov) [2074835] - KVM: SVM: Exit to userspace on ENOMEM/EFAULT GHCB errors (Vitaly Kuznetsov) [2074835] - KVM: WARN if is_unsync_root() is called on a root without a shadow page (Vitaly Kuznetsov) [2074835] - KVM: Drop KVM_REQ_MMU_RELOAD and update vcpu-requests.rst documentation (Vitaly Kuznetsov) [2074835] - KVM: s390: Replace KVM_REQ_MMU_RELOAD usage with arch specific request (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap only obsolete roots if a root shadow page is zapped (Vitaly Kuznetsov) [2074835] - KVM: Drop kvm_reload_remote_mmus(), open code request in x86 users (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_mmu_unload() directly on CR4.PCIDE change (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Move the unhandled outer privilege level logic of far return into __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Fix wrong privilege check for code segment in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulator: Defer not-present segment check in __load_segment_descriptor() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify KVM handling of ICR (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_set_reg() a "private" xAPIC helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Treat x2APIC's ICR as a 64-bit register, not two 32-bit regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Add helpers to handle 64-bit APIC MSR read/writes (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_lapic_reg_{read,write}() static (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN if KVM emulates an IPI without clearing the BUSY flag (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't rewrite guest ICR on AVIC IPI virtualization failure (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use common kvm_apic_write_nodecode() for AVIC write traps (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "raw" APIC register read for handling APIC-write VM-Exit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle APIC-write offset wrangling in VMX code (Vitaly Kuznetsov) [2074835] - KVM: x86: Do not change ICR on write to APIC_SELF_IPI (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix emulation in writing cr8 (Vitaly Kuznetsov) [2074835] - KVM: x86: flush TLB separately from MMU reset (Vitaly Kuznetsov) [2074835] - KVM: x86: Yield to IPI target vCPU only if it is busy (Vitaly Kuznetsov) [2074835] - x86/kvmclock: Fix Hyper-V Isolated VM's boot issue when vCPUs > 64 (Vitaly Kuznetsov) [2074835] - x86/kvm: Don't waste memory if kvmclock is disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clear MMIO cache when unloading the MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Always use current mmu's role when loading new PGD (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: load new PGD after the shadow MMU is initialized (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: look for a cached PGD when going from 32-bit to 64-bit (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not pass vcpu to root freeing functions (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: do not consult levels when freeing roots (Vitaly Kuznetsov) [2074835] - KVM: x86: use struct kvm_mmu_root_info for mmu->root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: avoid NULL-pointer dereference on page freeing bugs (Vitaly Kuznetsov) [2074835] - KVM: x86: do not deliver asynchronous page faults if CR0.PG=0 (Vitaly Kuznetsov) [2074835] - KVM: x86: Reinitialize context if host userspace toggles EFER.LME (Vitaly Kuznetsov) [2074835] - KVM: selftests: Verify disabling PMU virtualization via KVM_CAP_CONFIG_PMU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Carve out helper to create "default" VM without vCPUs (Vitaly Kuznetsov) [2074835] - KVM: x86: Provide per VM capability for disabling PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: Move VM's worker kthreads back to the original cgroup before exiting. (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove scratch 'cpu' variable that shadows an identical scratch var (Vitaly Kuznetsov) [2074835] - kvm: vmx: Fix typos comment in __loaded_vmcs_clear() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Make setup/unsetup under the same conditions (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: HVCALL_SEND_IPI_EX is an XMM fast hypercall (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Fix the maximum number of sparse banks for XMM fast TLB flush hypercalls (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_flush_tlb() (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Drop redundant 'ex' parameter from kvm_hv_send_ipi() (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest()" (Vitaly Kuznetsov) [2074835] - Revert "KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs()" (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: disallow userspace setting of MSR_AMD64_TSC_RATIO to non default value when tsc scaling disabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: make apf token non-zero to fix bug (Vitaly Kuznetsov) [2074835] - selftests: kvm: Add the uapi headers include variable (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add EXTRA_CFLAGS in top-level Makefile (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove MMU auditing (Vitaly Kuznetsov) [2074835] - KVM: x86: make several APIC virtualization callbacks optional (Vitaly Kuznetsov) [2074835] - KVM: x86: warn on incorrectly NULL members of kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: remove KVM_X86_OP_NULL and mark optional kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: use static_call_cond for optional callbacks (Vitaly Kuznetsov) [2074835] - KVM: x86: return 1 unconditionally for availability of KVM_CAP_VAPIC (Vitaly Kuznetsov) [2074835] - selftests: KVM: allow sev_migrate_tests on machines without SEV-ES (Vitaly Kuznetsov) [2074835] - KVM: SEV: Allow SEV intra-host migration of VM with mirrors (Vitaly Kuznetsov) [2074835] - x86/kvm: Fix compilation warning in non-x86_64 builds (Vitaly Kuznetsov) [2074835] - kvm: x86: Disable KVM_HC_CLOCK_PAIRING if tsc is in always catchup mode (Vitaly Kuznetsov) [2074835] - KVM: Fix lockdep false negative during host resume (Vitaly Kuznetsov) [2074835] - KVM: x86: Add KVM_CAP_ENABLE_CAP to x86 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename AVIC helpers to use "avic" prefix instead of "svm" (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Don't truncate the PerfEvtSeln MSR when creating a perf event (Vitaly Kuznetsov) [2074835] - KVM: x86: Replace memset() "optimization" with normal per-field writes (Vitaly Kuznetsov) [2074835] - KVM: SVM: fix race between interrupt delivery and AVIC inhibition (Vitaly Kuznetsov) [2074835] - KVM: SVM: set IRR in svm_deliver_interrupt (Vitaly Kuznetsov) [2074835] - KVM: SVM: extract avic_ring_doorbell (Vitaly Kuznetsov) [2074835] - selftests: kvm: Remove absent target file (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use local pointer to vcpu_vmx in vmx_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Update 'struct vmcb_control_area' definition (Vitaly Kuznetsov) [2074835] - KVM: selftests: nSVM: Set up MSR-Bitmap for SVM guests (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Add enlightened MSR-Bitmap selftest (Vitaly Kuznetsov) [2074835] - KVM: selftests: nVMX: Properly deal with 'hv_clean_fields' (Vitaly Kuznetsov) [2074835] - KVM: selftests: Adapt hyperv_cpuid test to the newly introduced Enlightened MSR-Bitmap (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Implement Enlightened MSR-Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Split off common definitions for Hyper-V on KVM and KVM on Hyper-V (Vitaly Kuznetsov) [2074835] - KVM: x86: Make kvm_hv_hypercall_enabled() static inline (Vitaly Kuznetsov) [2074835] - KVM: nSVM: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add an option to disable MANUAL_PROTECT_ENABLE and INITIALLY_SET (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add tracepoint for splitting huge pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU during KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Split huge pages mapped by the TDP MMU when dirty logging is enabled (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Separate TDP MMU shadow page allocation and initialization (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Derive page role for TDP MMU shadow pages from parent (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove redundant role overrides for TDP MMU shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Refactor TDP MMU iterators to take kvm_mmu_page root (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move restore_acc_track_spte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop new_spte local variable from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unnecessary warnings from restore_acc_track_spte() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate logic to atomically install a new TDP MMU page table (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename handle_removed_tdp_mmu_page() to handle_removed_pt() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename TDP MMU functions that handle shadow pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Change tdp_mmu_{set,zap}_spte_atomic() to return 0/-EBUSY (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Automatically update iter->old_spte if cmpxchg fails (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __rmap_write_protect() to rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename rmap_write_protect() to kvm_vcpu_write_protect_gfn() (Vitaly Kuznetsov) [2074835] - KVM: x86: Add checks for reserved-to-zero Hyper-V hypercall fields (Vitaly Kuznetsov) [2074835] - KVM: x86: Reject fixeds-size Hyper-V hypercalls with non-zero "var_cnt" (Vitaly Kuznetsov) [2074835] - KVM: x86: Shove vp_bitmap handling down into sparse_set_to_vcpu_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't bother reading sparse banks that end up being ignored (Vitaly Kuznetsov) [2074835] - KVM: x86: Add a helper to get the sparse VP_SET for IPIs and TLB flushes (Vitaly Kuznetsov) [2074835] - KVM: x86: Refactor kvm_hv_flush_tlb() to reduce indentation (Vitaly Kuznetsov) [2074835] - KVM: x86: Get the number of Hyper-V sparse banks from the VARHEAD field (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Consolidate comments about {Host,MMU}-writable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename DEFAULT_SPTE_MMU_WRITEABLE to DEFAULT_SPTE_MMU_WRITABLE (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move is_writable_pte() to spte.h (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Check SPTE writable invariants when setting leaf SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move SPTE writable invariant checks to a helper function (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Enable timer posted-interrupt only when mwait/hlt is advertised (Vitaly Kuznetsov) [2074835] - KVM: VMX: Dont' send posted IRQ if vCPU == this vCPU and vCPU is IN_GUEST_MODE (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename hook implementations to conform to kvm_x86_ops' names (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename SEV implemenations to conform to kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use more verbose names for mem encrypt kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unused MAX_INST_SIZE #define (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename svm_flush_tlb() to svm_flush_tlb_current() (Vitaly Kuznetsov) [2074835] - KVM: x86: Move get_cs_db_l_bits() helper to SVM (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename VMX functions to conform to kvm_x86_ops names (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for copy/move encryption context ioctls() (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport kvm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: x86: Uninline and export hv_track_root_tdp() (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Refactor PMU refresh to avoid referencing kvm_x86_ops.pmu_ops (Vitaly Kuznetsov) [2074835] - KVM: xen: Use static_call() for invoking kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Use static_call() for .vcpu_deliver_sipi_vector() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Call vmx_get_cpl() directly in handle_dr() (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_x86_ops pointers to align w/ preferred vendor names (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop export for .tlb_flush_current() static_call key (Vitaly Kuznetsov) [2074835] - KVM: x86: skip host CPUID call for hypervisor leaves (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "flags" of kvm_pv_kick_cpu_op() (Vitaly Kuznetsov) [2074835] - KVM: Remove unused "kvm" of kvm_make_vcpu_request() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove unused "vcpu" of kvm_scale_tsc() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "tss_selector" of task_switch_{16, 32}() (Vitaly Kuznetsov) [2074835] - KVM: x86/emulate: Remove unused "ctxt" of setup_syscalls_segments() (Vitaly Kuznetsov) [2074835] - KVM: x86/ioapic: Remove unused "addr" and "length" of ioapic_read_indirect() (Vitaly Kuznetsov) [2074835] - KVM: x86/i8259: Remove unused "addr" of elcr_ioport_{read,write}() (Vitaly Kuznetsov) [2074835] - KVM: SVM: improve split between svm_prepare_guest_switch and sev_es_prepare_guest_switch (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Remove unused "vcpu" of svm_check_exit_valid() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu_audit: Remove unused "level" of audit_spte_after_sync() (Vitaly Kuznetsov) [2074835] - KVM: x86/tdp_mmu: Remove unused "kvm" of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "vcpu" of reset_{tdp,ept}_shadow_zero_bits_mask() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of __rmap_write_protect() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove unused "kvm" of kvm_mmu_unlink_parents() (Vitaly Kuznetsov) [2074835] - KVM: x86: Skip APICv update if APICv is disable at the module level (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop NULL check on kvm_x86_ops.check_apicv_inhibit_reasons (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport __kvm_request_apicv_update() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Zap _all_ roots when unmapping gfn range in TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Move "invalid" check out of kvm_tdp_mmu_get_root() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use common TDP MMU zap helper for MMU notifier unmap hook (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Fix runstate updates to be atomic when preempting vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: move avic definitions from AMD's spec to svm.h (Vitaly Kuznetsov) [2074835] - KVM: x86: lapic: don't touch irr_pending in kvm_apic_update_apicv when inhibiting it (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: deal with L1 hypervisor that intercepts interrupts but lets L2 control them (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: expose clean bit support to the guest (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM/nVMX: set nested_run_pending on VM entry which is a result of RSM (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: mark vmcb01 as dirty when restoring SMM saved state (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: fix potential NULL derefernce on nested migration (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: don't passthrough SMAP/SMEP/PKE bits in !NPT && !gCR0.PG case (Vitaly Kuznetsov) [2074835] - Revert "svm: Add warning message for AVIC IPI invalid target" (Vitaly Kuznetsov) [2074835] - selftests: KVM: Test OS lock behavior (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add OSLSR_EL1 to the list of blessed regs (Vitaly Kuznetsov) [2074835] - KVM: x86: Report deprecated x87 features in supported CPUID (Vitaly Kuznetsov) [2074835] - x86/cpufeatures: Add FDP_EXCPTN_ONLY and ZERO_FCS_FDS (Vitaly Kuznetsov) [2074835] - KVM: x86: use the KVM side max supported fixed counter (Vitaly Kuznetsov) [2074835] - x86: Share definition of __is_canonical_address() (Vitaly Kuznetsov) [2074835] - perf/x86/intel/pt: Relax address filter validation (Vitaly Kuznetsov) [2074835] - KVM: x86: Move delivery of non-APICv interrupt into vendor code (Vitaly Kuznetsov) [2074835] - KVM: eventfd: Fix false positive RCU usage warning (Vitaly Kuznetsov) [2074835] - selftests: kvm: check dynamic bits against KVM_X86_XCOMP_GUEST_SUPP (Vitaly Kuznetsov) [2074835] - KVM: x86: Sync the states size with the XCR0/IA32_XSS at, any time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS (Vitaly Kuznetsov) [2074835] - KVM: x86: Keep MSR_IA32_XSS unchanged for INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: Free kvm_cpuid_entry2 array on post-KVM_RUN KVM_SET_CPUID{,2} (Vitaly Kuznetsov) [2074835] - KVM: nVMX: WARN on any attempt to allocate shadow VMCS for vmcs02 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Don't skip L2's VMCALL in SMM test for SVM guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Check .flags in kvm_cpuid_check_equal() too (Vitaly Kuznetsov) [2074835] - KVM: x86: Forcibly leave nested virt when SMM state is toggled (Vitaly Kuznetsov) [2074835] - KVM: SVM: drop unnecessary code in svm_hv_vmcb_dirty_nested_enlightenments() (Vitaly Kuznetsov) [2074835] - KVM: SVM: hyper-v: Enable Enlightened MSR-Bitmap support for real (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't kill SEV guest if SMAP erratum triggers in usermode (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't apply SEV+SMAP workaround on code fetch or PT access (Vitaly Kuznetsov) [2074835] - KVM: SVM: Inject #UD on attempted emulation for SEV guest w/o insn buffer (Vitaly Kuznetsov) [2074835] - KVM: SVM: WARN if KVM attempts emulation on #UD or #GP for SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: Pass emulation type to can_emulate_instruction() (Vitaly Kuznetsov) [2074835] - KVM: SVM: Explicitly require DECODEASSISTS to enable SEV support (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't intercept #GP for SEV guests (Vitaly Kuznetsov) [2074835] - Revert "KVM: SVM: avoid infinite loop on NPF from bad address" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: skip eax alignment check for non-SVM instructions (Vitaly Kuznetsov) [2074835] - KVM: LAPIC: Also cancel preemption timer during SET_LAPIC (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vmcs_config.order (Vitaly Kuznetsov) [2074835] - KVM/X86: Make kvm_vcpu_reload_apic_access_page() static (Vitaly Kuznetsov) [2074835] - KVM: selftests: Re-enable access_tracking_perf_test (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set vmcs.PENDING_DBG.BS on #DB in STI/MOVSS blocking shadow (Vitaly Kuznetsov) [2074835] - KVM: remove async parameter of hva_to_pfn_remapped() (Vitaly Kuznetsov) [2074835] - x86,kvm/xen: Remove superfluous .fixup usage (Vitaly Kuznetsov) [2074835] - KVM: VMX: Zero host's SYSENTER_ESP iff SYSENTER is NOT used (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in lib/x86_64/processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Fix the warning in pmu_event_filter_test.c (Vitaly Kuznetsov) [2074835] - kvm: selftests: Do not indent with spaces (Vitaly Kuznetsov) [2074835] - KVM: SVM: Nullify vcpu_(un)blocking() hooks if AVIC is disabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move svm_hardware_setup() and its helpers below svm_x86_ops (Vitaly Kuznetsov) [2074835] - KVM: SVM: Drop AVIC's intermediate avic_set_running() helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when handling posted interrupt wakeup (Vitaly Kuznetsov) [2074835] - KVM: VMX: Fold fallback path into triggering posted IRQ helper (Vitaly Kuznetsov) [2074835] - KVM: VMX: Pass desired vector instead of bool for triggering posted IRQ (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't do full kick when triggering posted interrupt "fails" (Vitaly Kuznetsov) [2074835] - KVM: SVM: Skip AVIC and IRTE updates when loading blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: SVM: Use kvm_vcpu_is_blocking() in AVIC load to handle preemption (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove unnecessary APICv/AVIC update in vCPU unblocking path (Vitaly Kuznetsov) [2074835] - KVM: SVM: Don't bother checking for "running" AVIC when kicking for IPIs (Vitaly Kuznetsov) [2074835] - KVM: SVM: Signal AVIC doorbell iff vCPU is in guest mode (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct pre_block/post_block kvm_x86_ops hooks (Vitaly Kuznetsov) [2074835] - KVM: x86: Unexport LAPIC's switch_to_{hv,sw}_timer() helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move preemption timer <=> hrtimer dance to common x86 (Vitaly Kuznetsov) [2074835] - KVM: Move x86 VMX's posted interrupt list_head to vcpu_vmx (Vitaly Kuznetsov) [2074835] - KVM: Drop unused kvm_vcpu.pre_pcpu field (Vitaly Kuznetsov) [2074835] - KVM: VMX: Handle PI descriptor updates during vcpu_put/load (Vitaly Kuznetsov) [2074835] - KVM: avoid warning on s390 in mark_page_dirty (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add a test to force emulation with a pending exception (Vitaly Kuznetsov) [2074835] - KVM: VMX: Reject KVM_RUN if emulation is required with pending exception (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Add test for KVM_SET_PMU_EVENT_FILTER (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce x86_model() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Export x86_family() for use outside of processor.c (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Introduce is_amd_cpu() (Vitaly Kuznetsov) [2074835] - selftests: kvm/x86: Parameterize the CPUID vendor string check (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Use binary search to check filtered events (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Improve TLB flush comment in kvm_mmu_slot_remove_write_access() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Document and enforce MMU-writable and Host-writable invariants (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Clear MMU-writable during changed_pte notifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix write-protection of PTs mapped by the TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86: Making the module parameter of vPMU more common (Vitaly Kuznetsov) [2074835] - KVM: selftests: Test KVM_SET_CPUID2 after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Rename 'get_cpuid_test' to 'cpuid_test' (Vitaly Kuznetsov) [2074835] - KVM: x86: Partially allow KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix available_event_types check for REF_CPU_CYCLES event (Vitaly Kuznetsov) [2074835] - KVM: x86: Check for rmaps allocation (Vitaly Kuznetsov) [2074835] - KVM: SEV: Mark nested locking of kvm->lock (Vitaly Kuznetsov) [2074835] - KVM: SVM: include CR3 in initial VMSA state for SEV-ES guests (Vitaly Kuznetsov) [2074835] - KVM: VMX: Provide vmread version using asm-goto-with-outputs (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix wall clock writes in Xen shared_info not to mark page dirty (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Add KVM_IRQ_ROUTING_XEN_EVTCHN and event channel delivery (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Maintain valid mapping of Xen shared_info page (Vitaly Kuznetsov) [2074835] - KVM: Reinstate gfn_to_pfn_cache with invalidation support (Vitaly Kuznetsov) [2074835] - KVM: Warn if mark_page_dirty() is called without an active vCPU (Vitaly Kuznetsov) [2074835] - x86/kvm: Silence per-cpu pr_info noise about KVM clocks and steal time (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring branch instructions (Vitaly Kuznetsov) [2074835] - KVM: x86: Update vPMCs when retiring instructions (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Add pmc->intr to refactor kvm_perf_overflow{_intr}() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Reuse pmc_perf_hw_id() and drop find_fixed_event() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id() (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Setup pmc->eventsel for fixed PMCs (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid out of bounds indices for fixed performance counters (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_CR3 dirty when !CR0_PG -> CR0_PG if EPT + !URG (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Reconstruct shadow page root if the guest PDPTEs is changed (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_set_host_fs_gs() (Vitaly Kuznetsov) [2074835] - Revert "KVM: X86: Update mmu->pdptrs only when it is changed" (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Add mirror command tests (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix sev_ioctl() (Vitaly Kuznetsov) [2074835] - selftests: KVM: sev_migrate_tests: Fix test_sev_mirror() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Wake vCPU when delivering posted IRQ even if vCPU == this vCPU (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add test to verify TRIPLE_FAULT on invalid L2 guest state (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Synthesize TRIPLE_FAULT for L2 if emulation is required (Vitaly Kuznetsov) [2074835] - KVM: VMX: Always clear vmx->fail on emulation_required (Vitaly Kuznetsov) [2074835] - selftests: KVM: Fix non-x86 compiling (Vitaly Kuznetsov) [2074835] - KVM: x86: Always set kvm_run->if_flag (Vitaly Kuznetsov) [2074835] - KVM: x86: remove PMU FIXED_CTR3 from msrs_to_save_all (Vitaly Kuznetsov) [2074835] - KVM: x86: Retry page fault if MMU reload is pending and root has no sp (Vitaly Kuznetsov) [2074835] - KVM: selftests: vmx_pmu_msrs_test: Drop tests mangling guest visible CPUIDs (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop guest CPUID check for host initiated writes to MSR_IA32_PERF_CAPABILITIES (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test to verify KVM doesn't explode on "bad" I/O (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't WARN if userspace mucks with RCX during string I/O exit (Vitaly Kuznetsov) [2074835] - KVM: X86: Raise #GP when clearing CR0_PG in 64 bit mode (Vitaly Kuznetsov) [2074835] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2074835] - KVM: x86: Ignore sparse banks size for an "all CPUs", non-sparse IPI req (Vitaly Kuznetsov) [2074835] - KVM: Add Makefile.kvm for common files, use it for x86 (Vitaly Kuznetsov) [2074835] - KVM: Introduce CONFIG_HAVE_KVM_DIRTY_RING (Vitaly Kuznetsov) [2074835] - KVM: x86: selftests: svm_int_ctl_test: fix intercept calculation (Vitaly Kuznetsov) [2074835] - KVM: VMX: Clean up PI pre/post-block WARNs (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Ensure vCPU honors event request if posting nested IRQ fails (Vitaly Kuznetsov) [2074835] - KVM: x86: add a tracepoint for APICv/AVIC interrupt delivery (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Implement Enlightened MSR Bitmap feature (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Track whether changes in L0 require MSR bitmap for L2 to be rebuilt (Vitaly Kuznetsov) [2074835] - KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper (Vitaly Kuznetsov) [2074835] - KVM: x86: Exit to userspace if emulation prepared a completion callback (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Don't use Enlightened MSR Bitmap for L3 (Vitaly Kuznetsov) [2074835] - KVM: x86: Use different callback if msr access comes from the emulator (Vitaly Kuznetsov) [2074835] - KVM: x86: Add an emulation type to handle completion of user exits (Vitaly Kuznetsov) [2074835] - KVM: x86: Handle 32-bit wrap of EIP for EMULTYPE_SKIP with flat code seg (Vitaly Kuznetsov) [2074835] - KVM: Clear pv eoi pending bit only when it is set (Vitaly Kuznetsov) [2074835] - KVM: x86: don't print when fail to read/write pv eoi memory (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu parameter from load_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Rename gpte_is_8_bytes to has_4_byte_gpte and invert the direction (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use ept_caps_to_lpage_level() in hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter huge_page_level to kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [2074835] - KVM: X86: Add huge_page_level to __reset_rsvds_bits_mask_ept() (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove mmu->translate_gpa (Vitaly Kuznetsov) [2074835] - KVM: X86: Add parameter struct kvm_mmu *mmu into mmu->gva_to_gpa() (Vitaly Kuznetsov) [2074835] - KVM: X86: Calculate quadrant when !role.gpte_is_8_bytes (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove useless code to set role.gpte_is_8_bytes when role.direct (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove unused declaration of __kvm_mmu_free_some_pages() (Vitaly Kuznetsov) [2074835] - KVM: X86: Fix comment in __kvm_mmu_create() (Vitaly Kuznetsov) [2074835] - KVM: X86: Skip allocating pae_root for vcpu->arch.guest_mmu when !tdp_enabled (Vitaly Kuznetsov) [2074835] - KVM: SVM: Allocate sd->save_area with __GFP_ZERO (Vitaly Kuznetsov) [2074835] - KVM: SVM: Rename get_max_npt_level() to get_npt_level() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Change comments about vmx_get_msr() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use kvm_set_msr_common() for MSR_IA32_TSC_ADJUST in the default way (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save HOST_CR3 in vmx_prepare_switch_to_guest() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update msr value after kvm_set_user_return_msr() succeeds (Vitaly Kuznetsov) [2074835] - KVM: VMX: Avoid to rdmsrl(MSR_IA32_SYSENTER_ESP) (Vitaly Kuznetsov) [2074835] - KVM: X86: Update mmu->pdptrs only when it is changed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_register_clear_available() (Vitaly Kuznetsov) [2074835] - KVM: vmx, svm: clean up mass updates to regs_avail/regs_dirty bits (Vitaly Kuznetsov) [2074835] - KVM: VMX: Update vmcs.GUEST_CR3 only when the guest CR3 is dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: Mark CR3 dirty when vcpu->arch.cr3 is changed (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove references to VCPU_EXREG_CR3 (Vitaly Kuznetsov) [2074835] - KVM: SVM: Remove outdated comment in svm_load_mmu_pgd() (Vitaly Kuznetsov) [2074835] - KVM: X86: Move CR0 pdptr_bits into header file as X86_CR0_PDPTR_BITS (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_PDPTR_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add and use X86_CR4_TLBFLUSH_BITS when !enable_ept (Vitaly Kuznetsov) [2074835] - KVM: SVM: Track dirtiness of PDPTRs even if NPT is disabled (Vitaly Kuznetsov) [2074835] - KVM: VMX: Mark VCPU_EXREG_PDPTR available in ept_save_pdptrs() (Vitaly Kuznetsov) [2074835] - KVM: X86: Ensure that dirty PDPTRs are loaded (Vitaly Kuznetsov) [2074835] - KVM: x86/svm: Add module param to control PMU virtualization (Vitaly Kuznetsov) [2074835] - KVM: VMX: Remove vCPU from PI wakeup list before updating PID.NV (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move Posted Interrupt ndst computation out of write loop (Vitaly Kuznetsov) [2074835] - KVM: VMX: Read Posted Interrupt "control" exactly once per loop iteration (Vitaly Kuznetsov) [2074835] - KVM: VMX: Save/restore IRQs (instead of CLI/STI) during PI pre/post block (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop pointless PI.NDST update when blocking (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use boolean returns for Posted Interrupt "test" helpers (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop unnecessary PI logic to handle impossible conditions (Vitaly Kuznetsov) [2074835] - KVM: VMX: Skip Posted Interrupt updates if APICv is hard disabled (Vitaly Kuznetsov) [2074835] - KVM: Add helpers to wake/query blocking vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86: Invoke kvm_vcpu_block() directly for non-HALTED wait states (Vitaly Kuznetsov) [2074835] - KVM: x86: Directly block (instead of "halting") UNINITIALIZED vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Don't redo ktime_get() when calculating halt-polling stop/deadline (Vitaly Kuznetsov) [2074835] - KVM: stats: Add stat to detect if vcpu is currently blocking (Vitaly Kuznetsov) [2074835] - KVM: Split out a kvm_vcpu_block() helper from kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Rename kvm_vcpu_block() => kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Drop obsolete kvm_arch_vcpu_block_finish() (Vitaly Kuznetsov) [2074835] - KVM: x86: Tweak halt emulation helper names to free up kvm_vcpu_halt() (Vitaly Kuznetsov) [2074835] - KVM: Don't block+unblock when halt-polling is successful (Vitaly Kuznetsov) [2074835] - KVM: Reconcile discrepancies in halt-polling stats (Vitaly Kuznetsov) [2074835] - KVM: Refactor and document halt-polling stats update helper (Vitaly Kuznetsov) [2074835] - KVM: Update halt-polling stats if and only if halt-polling was attempted (Vitaly Kuznetsov) [2074835] - KVM: Force PPC to define its own rcuwait object (Vitaly Kuznetsov) [2074835] - KVM: SVM: Ensure target pCPU is read once when signalling AVIC doorbell (Vitaly Kuznetsov) [2074835] - KVM: VMX: Don't unblock vCPU w/ Posted IRQ if IRQs are disabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: change TLB flush indicator to bool (Vitaly Kuznetsov) [2074835] - KVM: Avoid atomic operations when kicking the running vCPU (Vitaly Kuznetsov) [2074835] - KVM: x86/MMU: Simplify flow of vmx_get_mt_mask (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Propagate memslot const qualifier (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove need for a vcpu from kvm_slot_page_track_is_active (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use shadow page role to detect PML-unfriendly pages for L2 (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce struct vmcb_ctrl_area_cached (Vitaly Kuznetsov) [2074835] - KVM: nSVM: split out __nested_vmcb_check_controls (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use svm->nested.save to load vmcb12 registers and avoid TOC/TOU races (Vitaly Kuznetsov) [2074835] - KVM: nSVM: use vmcb_save_area_cached in nested_vmcb_valid_sregs() (Vitaly Kuznetsov) [2074835] - KVM: nSVM: rename nested_load_control_from_vmcb12 in nested_copy_vmcb_control_to_cache (Vitaly Kuznetsov) [2074835] - KVM: nSVM: introduce svm->nested.save to cache save area before checks (Vitaly Kuznetsov) [2074835] - KVM: nSVM: move nested_vmcb_check_cr3_cr4 logic in nested_vmcb_valid_sregs (Vitaly Kuznetsov) [2074835] - KVM: Dynamically allocate "new" memslots from the get-go (Vitaly Kuznetsov) [2074835] - KVM: Wait 'til the bitter end to initialize the "new" memslot (Vitaly Kuznetsov) [2074835] - KVM: Optimize overlapping memslots check (Vitaly Kuznetsov) [2074835] - KVM: Optimize gfn lookup in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: Call kvm_arch_flush_shadow_memslot() on the old slot in kvm_invalidate_memslot() (Vitaly Kuznetsov) [2074835] - KVM: Keep memslots in tree-based structures instead of array-based ones (Vitaly Kuznetsov) [2074835] - KVM: Use interval tree to do fast hva lookup in memslots (Vitaly Kuznetsov) [2074835] - KVM: Resolve memslot ID via a hash table instead of via a static array (Vitaly Kuznetsov) [2074835] - KVM: Move WARN on invalid memslot index to update_memslots() (Vitaly Kuznetsov) [2074835] - KVM: x86: Use nr_memslot_pages to avoid traversing the memslots array (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't call kvm_mmu_change_mmu_pages() if the count hasn't changed (Vitaly Kuznetsov) [2074835] - KVM: Don't make a full copy of the old memslot in __kvm_set_memory_region() (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't assume old/new memslots are non-NULL at memslot commit (Vitaly Kuznetsov) [2074835] - KVM: Use prepare/commit hooks to handle generic memslot metadata updates (Vitaly Kuznetsov) [2074835] - KVM: Stop passing kvm_userspace_memory_region to arch memslot hooks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Avoid referencing userspace memory region in memslot updates (Vitaly Kuznetsov) [2074835] - KVM: x86: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: s390: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: arm64: Use "new" memslot instead of userspace memory region (Vitaly Kuznetsov) [2074835] - KVM: Let/force architectures to deal with arch specific memslot data (Vitaly Kuznetsov) [2074835] - KVM: Use "new" memslot's address space ID instead of dedicated param (Vitaly Kuznetsov) [2074835] - KVM: Resync only arch fields when slots_arch_lock gets reacquired (Vitaly Kuznetsov) [2074835] - KVM: Open code kvm_delete_memslot() into its only caller (Vitaly Kuznetsov) [2074835] - KVM: Require total number of memslot pages to fit in an unsigned long (Vitaly Kuznetsov) [2074835] - KVM: Convert kvm_for_each_vcpu() to using xa_for_each_range() (Vitaly Kuznetsov) [2074835] - KVM: arm64: vgic-v3: Fix vcpu index comparison (Vitaly Kuznetsov) [2074835] - KVM: Use 'unsigned long' as kvm_for_each_vcpu()'s index (Vitaly Kuznetsov) [2074835] - KVM: Convert the kvm->vcpus array to a xarray (Vitaly Kuznetsov) [2074835] - KVM: Move wiping of the kvm->vcpus array to common code (Vitaly Kuznetsov) [2074835] - KVM: MMU: update comment on the number of page role combinations (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Retry page fault if root is invalidated by memslot update (Vitaly Kuznetsov) [2074835] - KVM: VMX: Set failure code in prepare_vmcs02() (Vitaly Kuznetsov) [2074835] - KVM: ensure APICv is considered inactive if there is no APIC (Vitaly Kuznetsov) [2074835] - KVM: x86/pmu: Fix reserved bits for AMD PerfEvtSeln register (Vitaly Kuznetsov) [2074835] - x86: Snapshot thread flags (Vitaly Kuznetsov) [2074835] - thread_info: Add helpers to snapshot thread flags (Vitaly Kuznetsov) [2074835] - KVM: fix avic_set_running for preemptable kernels (Vitaly Kuznetsov) [2074835] - KVM: VMX: clear vmx_x86_ops.sync_pir_to_irr if APICv is disabled (Vitaly Kuznetsov) [2074835] - KVM: SEV: accept signals in sev_lock_two_vms (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not take kvm->lock when destroying (Vitaly Kuznetsov) [2074835] - KVM: SEV: Prohibit migration of a VM that has mirrors (Vitaly Kuznetsov) [2074835] - KVM: SEV: Do COPY_ENC_CONTEXT_FROM with both VMs locked (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: add tests for KVM_CAP_VM_COPY_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: move mirror status to destination of KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: initialize regions_list of a mirror VM (Vitaly Kuznetsov) [2074835] - KVM: SEV: cleanup locking for KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: SEV: do not use list_replace_init on an empty list (Vitaly Kuznetsov) [2074835] - KVM: x86: Use a stable condition around all VT-d PI paths (Vitaly Kuznetsov) [2074835] - KVM: x86: check PIR even for vCPUs with disabled APICv (Vitaly Kuznetsov) [2074835] - KVM: VMX: prepare sync_pir_to_irr for running with APICv disabled (Vitaly Kuznetsov) [2074835] - KVM: selftests: page_table_test: fix calculation of guest_test_phys_mem (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Handle "default" period when selectively waking kthread (Vitaly Kuznetsov) [2074835] - KVM: MMU: shadow nested paging does not have PKU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Remove spurious TLB flushes in TDP MMU zap collapsible path (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Use yield-safe TDP MMU root iter in MMU notifier unmapping (Vitaly Kuznetsov) [2074835] - KVM: X86: Use vcpu->arch.walk_mmu for kvm_mmu_invlpg() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Make sure kvm_create_max_vcpus test won't hit RLIMIT_NOFILE (Vitaly Kuznetsov) [2074835] - KVM: x86: Forbid KVM_SET_CPUID{,2} after KVM_RUN (Vitaly Kuznetsov) [2074835] - KVM: selftests: Avoid KVM_SET_CPUID2 after KVM_RUN in hyperv_features test (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Emulate guest TLB flush on nested VM-Enter with new vpid12 (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Abide to KVM_REQ_TLB_FLUSH_GUEST request on nested vmentry/vmexit (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Flush current VPID (L1 vs. L2) for KVM_REQ_TLB_FLUSH_GUEST (Vitaly Kuznetsov) [2074835] - KVM: SEV: expose KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM capability (Vitaly Kuznetsov) [2074835] - selftests: sev_migrate_tests: free all VMs (Vitaly Kuznetsov) [2074835] - selftests: fix check for circular KVM_CAP_VM_MOVE_ENC_CONTEXT_FROM (Vitaly Kuznetsov) [2074835] - KVM: x86: ignore APICv if LAPIC is not enabled (Vitaly Kuznetsov) [2074835] - KVM: downgrade two BUG_ONs to WARN_ON_ONCE (Vitaly Kuznetsov) [2074835] - KVM: VMX: do not use uninitialized gfn_to_hva_cache (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass parameter flush as false in kvm_tdp_mmu_zap_collapsible_sptes() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip tlb flush if it has been done in zap_gfn_range() (Vitaly Kuznetsov) [2074835] - x86/kvm: remove unused ack_notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Disallow user memslot with size that exceeds "unsigned long" (Vitaly Kuznetsov) [2074835] - KVM: Ensure local memslot copies operate on up-to-date arch-specific data (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fix TLB flush range when handling disconnected pt (Vitaly Kuznetsov) [2074835] - KVM: x86: Assume a 64-bit hypercall for guests with protected state (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add /x86_64/sev_migrate_tests to .gitignore (Vitaly Kuznetsov) [2074835] - KVM: SEV: Fix typo in and tweak name of cmd_allowed_from_miror() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Drop a redundant setting of sev->asid during initialization (Vitaly Kuznetsov) [2074835] - KVM: SEV: WARN if SEV-ES is marked active but SEV is not (Vitaly Kuznetsov) [2074835] - KVM: SEV: Set sev_info.active after initial checks in sev_guest_init() (Vitaly Kuznetsov) [2074835] - KVM: SEV: Disallow COPY_ENC_CONTEXT_FROM if target has created vCPUs (Vitaly Kuznetsov) [2074835] - KVM: Kill kvm_map_gfn() / kvm_unmap_gfn() and gfn_to_pfn_cache (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use a gfn_to_hva_cache for vmptrld (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_read_guest_offset_cached() for nested VMCS check (Vitaly Kuznetsov) [2074835] - KVM: x86/xen: Use sizeof_field() instead of open-coding it (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Use kvm_{read,write}_guest_cached() for shadow_vmcs12 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: include EFER.LMA in extended mmu role (Vitaly Kuznetsov) [2074835] - KVM: nVMX: don't use vcpu->arch.efer when checking host state on nested state load (Vitaly Kuznetsov) [2074835] - KVM: Fix steal time asm constraints (Vitaly Kuznetsov) [2074835] - KVM: x86: Move Intel Processor Trace interrupt handler to vmx.c (Vitaly Kuznetsov) [2074835] - KVM: Move x86's perf guest info callbacks to generic KVM (Vitaly Kuznetsov) [2074835] - KVM: x86: More precisely identify NMI from guest when handling PMI (Vitaly Kuznetsov) [2074835] - KVM: x86: Drop current_vcpu for kvm_running_vcpu + kvm_arch_vcpu variable (Vitaly Kuznetsov) [2074835] - perf/core: Rework guest callbacks to prepare for static_call support (Vitaly Kuznetsov) [2074835] - perf: Protect perf_guest_cbs with RCU (Vitaly Kuznetsov) [2074835] - KVM: x86: Register Processor Trace interrupt hook iff PT enabled in guest (Vitaly Kuznetsov) [2074835] - KVM: x86: Register perf callbacks after calling vendor's hardware_setup() (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix uninitialized eoi_exit_bitmap usage in vcpu_load_eoi_exitmap() (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf_test_destroy_vm in memslot_modification_stress_test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Wait for all vCPU to be created before entering guest mode (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move vCPU thread creation and joining to common helpers (Vitaly Kuznetsov) [2074835] - KVM: selftests: Sync perf_test_args to guest during VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fill per-vCPU struct during "perf_test" VM creation (Vitaly Kuznetsov) [2074835] - KVM: selftests: Start at iteration 0 instead of -1 (Vitaly Kuznetsov) [2074835] - KVM: selftests: Create VM with adjusted number of guest pages for perf tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Remove perf_test_args.host_page_size (Vitaly Kuznetsov) [2074835] - KVM: selftests: Move per-VM GPA into perf_test_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use perf util's per-vCPU GPA/pages in demand paging test (Vitaly Kuznetsov) [2074835] - KVM: selftests: Capture per-vCPU GPA in perf_test_vcpu_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Use shorthand local var to access struct perf_tests_args (Vitaly Kuznetsov) [2074835] - KVM: selftests: Require GPA to be aligned when backed by hugepages (Vitaly Kuznetsov) [2074835] - KVM: selftests: Assert mmap HVA is aligned when using HugeTLB (Vitaly Kuznetsov) [2074835] - KVM: selftests: Expose align() helpers to tests (Vitaly Kuznetsov) [2074835] - KVM: selftests: Explicitly state indicies for vm_guest_mode_params array (Vitaly Kuznetsov) [2074835] - KVM: selftests: Add event channel upcall support to xen_shinfo_test (Vitaly Kuznetsov) [2074835] - KVM: SEV: unify cgroup cleanup code for svm_vm_migrate_from (Vitaly Kuznetsov) [2074835] - KVM: x86: move guest_pv_has out of user_access section (Vitaly Kuznetsov) [2074835] - KVM: Move INVPCID type check from vmx and svm to the common kvm_handle_invpcid() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Add a helper function to retrieve the GPR index for INVPCID, INVVPID, and INVEPT (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Clean up x2APIC MSR handling for L2 (Vitaly Kuznetsov) [2074835] - KVM: VMX: Macrofy the MSR bitmap getters and setters (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Handle dynamic MSR intercept toggling (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in use (Vitaly Kuznetsov) [2074835] - KVM: x86: Don't update vcpu->arch.pv_eoi.msr_val when a bogus value was written to MSR_KVM_PV_EOI_EN (Vitaly Kuznetsov) [2074835] - KVM: x86: Rename kvm_lapic_enable_pv_eoi() (Vitaly Kuznetsov) [2074835] - kvm: mmu: Use fast PF path for access tracking of huge pages when possible (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Properly dereference rcu-protected TDP MMU sptep iterator (Vitaly Kuznetsov) [2074835] - kvm: x86: Convert return type of *is_valid_rdpmc_ecx() to bool (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix recording of guest steal time / preempted status (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add intra host migration tests (Vitaly Kuznetsov) [2074835] - selftest: KVM: Add open sev dev helper (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV-ES intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: Add support for SEV intra host migration (Vitaly Kuznetsov) [2074835] - KVM: SEV: provide helpers to charge/uncharge misc_cg (Vitaly Kuznetsov) [2074835] - KVM: generalize "bugged" VM to "dead" VM (Vitaly Kuznetsov) [2074835] - EFI: Introduce the new AMD Memory Encryption GUID. (Vitaly Kuznetsov) [2074835] - x86/kvm: Add AMD SEV specific Hypercall3 (Vitaly Kuznetsov) [2074835] - KVM: x86: SGX must obey the KVM_INTERNAL_ERROR_EMULATION protocol (Vitaly Kuznetsov) [2074835] - KVM: x86: On emulation failure, convey the exit reason, etc. to userspace (Vitaly Kuznetsov) [2074835] - KVM: x86: Get exit_reason as part of kvm_x86_ops.get_exit_info (Vitaly Kuznetsov) [2074835] - KVM: x86: Clarify the kvm_run.emulation_failure structure layout (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix nested SVM tests when built with clang (Vitaly Kuznetsov) [2074835] - kvm: x86: Remove stale declaration of kvm_no_apic_vcpu (Vitaly Kuznetsov) [2074835] - KVM: x86: Move SVM's APICv sanity check to common x86 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Extract zapping of rmaps for gfn range to separate helper (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant remote TLB flush in kvm_zap_gfn_range() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop a redundant, broken remote TLB flush (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unload MMU in kvm_vcpu_flush_tlb_guest() (Vitaly Kuznetsov) [2074835] - KVM: X86: pair smp_wmb() of mmu_try_to_unsync_pages() with smp_rmb() (Vitaly Kuznetsov) [2074835] - KVM: emulate: Comment on difference between RDPMC implementation and manual (Vitaly Kuznetsov) [2074835] - KVM: x86: Add vendor name to kvm_x86_ops, use it for error messages (Vitaly Kuznetsov) [2074835] - kvm: x86: mmu: Make NX huge page recovery period configurable (Vitaly Kuznetsov) [2074835] - KVM: vPMU: Fill get_msr MSR_CORE_PERF_GLOBAL_OVF_CTRL w/ 0 (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename slot_handle_leaf to slot_handle_level_4k (Vitaly Kuznetsov) [2074835] - KVM: VMX: RTIT_CTL_BRANCH_EN has no dependency on other CPUID bit (Vitaly Kuznetsov) [2074835] - KVM: VMX: Rename pt_desc.addr_range to pt_desc.num_address_ranges (Vitaly Kuznetsov) [2074835] - KVM: VMX: Use precomputed vmx->pt_desc.addr_range (Vitaly Kuznetsov) [2074835] - KVM: VMX: Restore host's MSR_IA32_RTIT_CTL when it's not zero (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: clean up prefetch/prefault/speculative naming (Vitaly Kuznetsov) [2074835] - KVM: cleanup allocation of rmaps and page tracking data (Vitaly Kuznetsov) [2074835] - selftests: KVM: Introduce system counter offset test (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add helpers for vCPU device attributes (Vitaly Kuznetsov) [2074835] - selftests: KVM: Add test for KVM_{GET,SET}_CLOCK (Vitaly Kuznetsov) [2074835] - kvm: x86: protect masterclock with a seqcount (Vitaly Kuznetsov) [2074835] - KVM: x86: Report host tsc and realtime values in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: avoid warning with -Wbitwise-instead-of-logical (Vitaly Kuznetsov) [2074835] - KVM: x86: only allocate gfn_track when necessary (Vitaly Kuznetsov) [2074835] - KVM: x86: add config for non-kvm users of page tracking (Vitaly Kuznetsov) [2074835] - nSVM: Check for reserved encodings of TLB_CONTROL in nested VMCB (Vitaly Kuznetsov) [2074835] - kvm: use kvfree() in kvm_arch_free_vm() (Vitaly Kuznetsov) [2074835] - KVM: x86: Expose Predictive Store Forwarding Disable (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in make_spte and mmu_try_to_unsync_pages (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in rmap_add (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass struct kvm_page_fault to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass kvm_mmu_page struct to make_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: set ad_disabled in TDP MMU role (Vitaly Kuznetsov) [2074835] - KVM: MMU: remove unnecessary argument to mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: MMU: clean up make_spte return value (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in FNAME(sync_page) (Vitaly Kuznetsov) [2074835] - KVM: MMU: inline set_spte in mmu_set_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Avoid memslot lookup in page_fault_handle_page_track (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Pass the memslot around via struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: unify tdp_mmu_map_set_spte_atomic and tdp_mmu_set_spte_atomic_no_dirty_log (Vitaly Kuznetsov) [2074835] - KVM: MMU: mark page dirty in make_spte (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fold rmap_recycle into rmap_add (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Verify shadow walk doesn't terminate early in page faults (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tracepoints arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change disallowed_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_mmu_hugepage_adjust() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change fast_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change tdp_mmu_map_handle_target_level() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_tdp_mmu_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change FNAME(fetch)() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change __direct_map() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change handle_abnormal_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change kvm_faultin_pfn() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change page_fault_handle_page_track() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change direct_page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: change mmu->page_fault() arguments to kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: Introduce struct kvm_page_fault (Vitaly Kuznetsov) [2074835] - KVM: MMU: pass unadulterated gpa to direct_page_fault (Vitaly Kuznetsov) [2074835] - KVM: x86: Fix potential race in KVM_GET_CLOCK (Vitaly Kuznetsov) [2074835] - KVM: x86: extract KVM_GET_CLOCK/KVM_SET_CLOCK to separate functions (Vitaly Kuznetsov) [2074835] - kvm: x86: abstract locking around pvclock_update_vm_gtod_copy (Vitaly Kuznetsov) [2074835] - KVM: X86: Move PTE present check from loop body to __shadow_walk_next() (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: implement nested TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control TSC scaling (Vitaly Kuznetsov) [2074835] - KVM: x86: SVM: add module param to control LBR virtualization (Vitaly Kuznetsov) [2074835] - KVM: x86: nSVM: don't copy pause related settings (Vitaly Kuznetsov) [2074835] - kvm: irqfd: avoid update unmodified entries of the routing (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't check unsync if the original spte is writible (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't unsync pagetables when speculative (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove FNAME(update_pte) (Vitaly Kuznetsov) [2074835] - KVM: X86: Zap the invalid list after remote tlb flushing (Vitaly Kuznetsov) [2074835] - KVM: X86: Change kvm_sync_page() to return true when remote flush is needed (Vitaly Kuznetsov) [2074835] - KVM: X86: Remove kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [2074835] - KVM: X86: Don't flush current tlb on shadow page modification (Vitaly Kuznetsov) [2074835] - KVM: selftests: Fix kvm_vm_free() in cr4_cpuid_sync and vmx_tsc_adjust tests (Vitaly Kuznetsov) [2074835] - kvm: selftests: Fix spelling mistake "missmatch" -> "mismatch" (Vitaly Kuznetsov) [2074835] - KVM: x86: Manually retrieve CPUID.0x1 when getting FMS for RESET/INIT (Vitaly Kuznetsov) [2074835] - KVM: x86: WARN on non-zero CRs at RESET to detect improper initalization (Vitaly Kuznetsov) [2074835] - KVM: SVM: Move RESET emulation to svm_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Move RESET emulation to vmx_vcpu_reset() (Vitaly Kuznetsov) [2074835] - KVM: VMX: Drop explicit zeroing of MSR guest values at vCPU creation (Vitaly Kuznetsov) [2074835] - KVM: x86: Fold fx_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of XCR0 for guest during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Remove defunct setting of CR0.ET for guests during vCPU create (Vitaly Kuznetsov) [2074835] - KVM: x86: Simplify retrieving the page offset when loading PDTPRs (Vitaly Kuznetsov) [2074835] - KVM: x86: Subsume nested GPA read helper into load_pdptrs() (Vitaly Kuznetsov) [2074835] - kvm: rename KVM_MAX_VCPU_ID to KVM_MAX_VCPU_IDS (Vitaly Kuznetsov) [2074835] - KVM: Make kvm_make_vcpus_request_mask() use pre-allocated cpu_kick_mask (Vitaly Kuznetsov) [2074835] - KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [2074835] - KVM: Drop 'except' parameter from kvm_make_vcpus_request_mask() (Vitaly Kuznetsov) [2074835] - KVM: Optimize kvm_make_vcpus_request_mask() a bit (Vitaly Kuznetsov) [2074835] - KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with vcpu_mask==NULL (Vitaly Kuznetsov) [2074835] - KVM: use vma_pages() helper (Vitaly Kuznetsov) [2074835] - KVM: nVMX: Reset vmxon_ptr upon VMXOFF emulation. (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline to_svm() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline vmload() / vmsave() (Vitaly Kuznetsov) [2074835] - x86/kvm: Always inline sev_*guest() (Vitaly Kuznetsov) [2074835] - KVM: Remove tlbs_dirty (Vitaly Kuznetsov) [2074835] - KVM: X86: fix lazy allocation of rmaps (Vitaly Kuznetsov) [2074835] - KVM: Remove unnecessary export of kvm_{inc,dec}_notifier_count() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Drop 'shared' param from tdp_mmu_link_page() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Add detailed page size stats (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: bump mmu notifier count in kvm_zap_gfn_range (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: fix parameters to kvm_flush_remote_tlbs_with_address (Vitaly Kuznetsov) [2074835] - Revert "KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock" (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce mmu_rmaps_stat per-vm debugfs file (Vitaly Kuznetsov) [2074835] - KVM: X86: Introduce kvm_mmu_slot_lpages() helpers (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Protect marking SPs unsync when using TDP MMU with spinlock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't step down in the TDP iterator when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Don't leak non-leaf SPTEs when zapping all SPTEs (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Rename __gfn_to_rmap to gfn_to_rmap (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Leverage vcpu->last_used_slot in tdp_mmu_map_handle_target_level (Vitaly Kuznetsov) [2074835] - KVM: const-ify all relevant uses of struct kvm_memory_slot (Vitaly Kuznetsov) [2074835] - KVM: Don't take mmu_lock for range invalidation unless necessary (Vitaly Kuznetsov) [2074835] - KVM: Block memslot updates across range_start() and range_end() (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Lazily allocate memslot rmaps (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Skip rmap operations if rmaps not allocated (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Tear down roots before kvm_mmu_zap_all_fast returns (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Fast invalidation for TDP MMU (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow enabling/disabling dirty logging under MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zapping collapsible SPTEs to use MMU read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow zap gfn range to operate under the mmu read lock (Vitaly Kuznetsov) [2074835] - KVM: x86/mmu: Allow yielding during MMU notifier unmap/zap, if possible (Vitaly Kuznetsov) [2074835] - KVM: Take mmu_lock when handling MMU notifier iff the hva hits a memslot (Vitaly Kuznetsov) [2074835] - KVM: Move MMU notifier's mmu_lock acquisition into common helper (Vitaly Kuznetsov) [2074835] - KVM: Kill off the old hva-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: PPC: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: arm64: Convert to the gfn-based MMU notifier callbacks (Vitaly Kuznetsov) [2074835] - KVM: Move x86's MMU notifier memslot walkers to generic code (Vitaly Kuznetsov) [2074835] - KVM: Assert that notifier count is elevated in .change_pte() (Vitaly Kuznetsov) [2074835] - KVM: Move arm64's MMU notifier trace events to generic code (Vitaly Kuznetsov) [2074835] - KVM: Switch to new MMU notifiers API (Vitaly Kuznetsov) [2074835] - scsi: qedi: Remove redundant flush_workqueue() calls (Nilesh Javali) [2044837] - scsi: qedi: Fix SYSFS_FLAG_FW_SEL_BOOT formatting (Nilesh Javali) [2044837] - xfs: reserve quota for dir expansion when linking/unlinking files (Carlos Maiolino) [2082833] - iwlwifi: fix use-after-free (Jose Ignacio Tornos Martinez) [2091539] - nfs: fix broken handling of the softreval mount option (Benjamin Coddington) [2083224] - ethtool: extend ringparam setting/getting API with rx_buf_len (Ivan Vecera) [2091857] - ethtool: add support to set/get rx buf len via ethtool (Ivan Vecera) [2091857] - ethtool: add support to set/get tx copybreak buf size via ethtool (Ivan Vecera) [2091857]- x86/apic: Make TSC deadline timer detection message visible (David Arcari) [2098086] - x86/apic: Move TSC deadline timer debug printk (David Arcari) [2098086] - [s390] KVM: s390: selftests: Add error memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add more copy memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add named stages for memop test (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Add macro as abstraction for MEM_OP (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Split memop tests (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Fix lockdep issue in vm memop (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add missing vm MEM_OP size check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Clarify key argument for MEM_OP in api docs (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Update api documentation for memop ioctl (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add capability for storage key extension of MEM_OP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Rename existing vcpu memop functions (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add vm IOCTL for key checked guest absolute memory access (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Add optional storage key checking to MEMOP IOCTL (Claudio Imbrenda) [1984917] - [s390] KVM: s390: selftests: Test TEST PROTECTION emulation (Claudio Imbrenda) [1984917] - [s390] KVM: s390: handle_tprot: Honor storage keys (Claudio Imbrenda) [1984917] - [s390] KVM: s390: Honor storage keys when accessing guest memory (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: Add copy_from/to_user_key functions (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: fix compile error (Claudio Imbrenda) [1984917] - [s390] s390/uaccess: introduce bit field for OAC specifier (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Cleanup access to guest pages (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor access address range check (Claudio Imbrenda) [1984917] - [s390] KVM: s390: gaccess: Refactor gpa and length calculation (Claudio Imbrenda) [1984917] - xfs: reorder iunlink remove operation in xfs_ifree (Brian Foster) [2081146] - tcp: fix TCP socket rehash stats mis-accounting (Antoine Tenart) [2073082] - tcp: export count for rehash attempts (Antoine Tenart) [2073082] - tcp: add SRTT to SCM_TIMESTAMPING_OPT_STATS (Antoine Tenart) [2073082] - tcp: add new SNMP counter for drops when try to queue in rcv queue (Antoine Tenart) [2073082] - tcp: add SNMP counter for zero-window drops (Antoine Tenart) [2073082] - net: udp: introduce UDP_MIB_MEMERRORS for udp_mem (Antoine Tenart) [2073082] - context_tracking: Sync up lockdep and cpu irqs state to prevent false warnings (Waiman Long) [2098074] - platform/x86: ISST: Fix possible circular locking dependency detected (Prarit Bhargava) [2072659] - platform/x86: ISST: use semi-colons instead of commas (Prarit Bhargava) [2072659] - platform/x86: intel_speed_select_if: Move to intel sub-directory (Prarit Bhargava) [2072659] - x86/sgx: Free backing memory after faulting the enclave page (Vladis Dronov) [2081351] - x86/sgx: Fix missing poison handling in reclaimer (Vladis Dronov) [2081351] - x86/sgx: Silence softlockup detection when releasing large enclaves (Vladis Dronov) [2081351] - selftests/sgx: Treat CC as one argument (Vladis Dronov) [2081351] - selftests/x86: Add validity check and allow field splitting (Vladis Dronov) [2081351] - selftests/sgx: Remove extra newlines in test output (Vladis Dronov) [2081351] - selftests/sgx: Ensure enclave data available during debug print (Vladis Dronov) [2081351] - selftests/sgx: Do not attempt enclave build without valid enclave (Vladis Dronov) [2081351] - selftests/sgx: Fix NULL-pointer-dereference upon early test failure (Vladis Dronov) [2081351] - x86/sgx: Remove .fixup usage (Vladis Dronov) [2081351] - x86/sgx: Fix NULL pointer dereference on non-SGX systems (Vladis Dronov) [2081351] - x86/sgx: Add an attribute for the amount of SGX memory in a NUMA node (Vladis Dronov) [2081351] - vmxnet3: disable overlay offloads if UPT device does not support (Kamal Heib) [2100226] - vmxnet3: update to version 7 (Kamal Heib) [2100226] - vmxnet3: use ext1 field to indicate encapsulated packet (Kamal Heib) [2100226] - vmxnet3: limit number of TXDs used for TSO packet (Kamal Heib) [2100226] - vmxnet3: add command to set ring buffer sizes (Kamal Heib) [2100226] - vmxnet3: add support for out of order rx completion (Kamal Heib) [2100226] - vmxnet3: add support for large passthrough BAR register (Kamal Heib) [2100226] - vmxnet3: add support for capability registers (Kamal Heib) [2100226] - vmxnet3: prepare for version 7 changes (Kamal Heib) [2100226] - net: vmxnet3: fix possible NULL pointer dereference in vmxnet3_rq_cleanup() (Kamal Heib) [2100226] - net: vmxnet3: fix possible use-after-free bugs in vmxnet3_rq_alloc_rx_buf() (Kamal Heib) [2100226]- iommu/amd: Enable swiotlb in all cases (Jerry Snitselaar) [2072179] - iommu/arm-smmu-v3-sva: Fix mm use-after-free (Jerry Snitselaar) [2072179] - dma-direct: don't over-decrypt memory (Jerry Snitselaar) [2072179] - dma-direct: always leak memory that can't be re-encrypted (Jerry Snitselaar) [2072179] - dma-direct: clean up the remapping checks in dma_direct_alloc (Jerry Snitselaar) [2072179] - dma-direct: don't call dma_set_decrypted for remapped allocations (Jerry Snitselaar) [2072179] - dma-direct: factor out dma_set_{de,en}crypted helpers (Jerry Snitselaar) [2072179] - swiotlb: max mapping size takes min align mask into account (Jerry Snitselaar) [2072179] - dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC (Jerry Snitselaar) [2072179] - dma-direct: don't fail on highmem CMA pages in dma_direct_alloc_pages (Jerry Snitselaar) [2072179] - dma-direct: factor out a helper for DMA_ATTR_NO_KERNEL_MAPPING allocations (Jerry Snitselaar) [2072179] - swiotlb: make swiotlb_exit a no-op if SWIOTLB_FORCE is set (Jerry Snitselaar) [2072179] - dma-direct: use is_swiotlb_active in dma_direct_map_page (Jerry Snitselaar) [2072179] - iommu/vt-d: Calculate mask for non-aligned flushes (Jerry Snitselaar) [2072179] - iommu/amd: Call memunmap in error path (Jerry Snitselaar) [2072179] - iommu/vt-d: Drop duplicate check in dma_pte_free_pagetable() (Jerry Snitselaar) [2072179] - iommu/vt-d: Use correctly sized arguments for bit field (Jerry Snitselaar) [2072179] - Revert "iommu/arm-smmu-v3: Decrease the queue size of evtq and priq" (Jerry Snitselaar) [2072179] - iommu: Fix potential use-after-free during probe (Jerry Snitselaar) [2072179] - dma-direct: avoid redundant memory sync for swiotlb (Jerry Snitselaar) [2072179] - iommu/iova: Fix race between FQ timeout and teardown (Jerry Snitselaar) [2072179] - iommu/io-pgtable-arm: Fix table descriptor paddr formatting (Jerry Snitselaar) [2072179] - iommu: Extend mutex lock scope in iommu_probe_device() (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: mask/unmask interrupts on suspend/resume (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: setup the INTX registers on mask/unmask (Jerry Snitselaar) [2072179] - iommu/amd: X2apic mode: re-enable after resume (Jerry Snitselaar) [2072179] - iommu/amd: Restore GA log/tail pointer on host resume (Jerry Snitselaar) [2072179] - iommu/amd: Clarify AMD IOMMUv2 initialization messages (Jerry Snitselaar) [2072179] - iommu/vt-d: Avoid duplicate removing in __domain_mapping() (Jerry Snitselaar) [2072179] - iommu/vt-d: Fix an unbalanced rcu_read_lock/rcu_read_unlock() (Jerry Snitselaar) [2072179] - iommu/vt-d: Check FL and SL capability sanity in scalable mode (Jerry Snitselaar) [2072179] - iommu/vt-d: Add present bit check in pasid entry setup helpers (Jerry Snitselaar) [2072179] - iommu/vt-d: Preset A/D bits for user space DMA usage (Jerry Snitselaar) [2072179] - iommu/vt-d: Remove unnecessary oom message (Jerry Snitselaar) [2072179] - iommu/vt-d: Enable ATS for the devices in SATC table (Jerry Snitselaar) [1893460] - iommu/vt-d: Parse SATC reporting structure (Jerry Snitselaar) [1893460] - iommu/vt-d: Dump DMAR translation structure when DMA fault occurs (Jerry Snitselaar) [1868826] - nvme: fix typos in nvme status code values (Gopal Tiwari) [2091824] - Adding CONFIG_NVME_VERBOSE_ERRORS to RHEL-8. (Gopal Tiwari) [2091824] - nvme: add missing status values to verbose logging (Gopal Tiwari) [2091824] - nvme: don't print verbose errors for internal passthrough requests (Gopal Tiwari) [2091824] - nvme: add verbose error logging (Gopal Tiwari) [2091824] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2094572] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2094572] - perf/x86/cstate: Add SAPPHIRERAPIDS_X CPU support (Michael Petlan) [2094572] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2094572] - [s390] s390/lcs: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/ctcm: fix potential memory leak (Mete Durlu) [2043835] - [s390] s390/ctcm: fix variable dereferenced before check (Mete Durlu) [2043835] - [s390] s390/net: sort out physical vs virtual pointers usage (Mete Durlu) [2043835] - [s390] s390/qeth: remove check for packing mode in qeth_check_outbound_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: fine-tune .ndo_select_queue() (Mete Durlu) [2043835] - [s390] s390/qeth: don't offer .ndo_bridge_* ops for OSA devices (Mete Durlu) [2043835] - [s390] s390/qeth: split up L2 netdev_ops (Mete Durlu) [2043835] - [s390] s390/qeth: simplify qeth_receive_skb() (Mete Durlu) [2043835] - [s390] s390/lcs: add braces around empty function body (Mete Durlu) [2043835] - [s390] s390/ctcm: add __printf format attribute to ctcm_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/ctcm: fix format string (Mete Durlu) [2043835] - [s390] s390/qeth: allocate RX queue at probe time (Mete Durlu) [2043835] - [s390] s390/qeth: update kerneldoc for qeth_add_hw_header() (Mete Durlu) [2043835] - [s390] s390/qeth: fix kernel doc comments (Mete Durlu) [2043835] - [s390] s390/qeth: add __printf format attribute to qeth_dbf_longtext (Mete Durlu) [2043835] - [s390] s390/qeth: fix various format strings (Mete Durlu) [2043835] - [s390] s390/qeth: don't keep track of Input Queue count (Mete Durlu) [2043835] - [s390] s390/qeth: clarify remaining dev_kfree_skb_any() users (Mete Durlu) [2043835] - [s390] s390/qeth: move qdio's QAOB cache into qeth (Mete Durlu) [2043835] - [s390] s390/qeth: improve trace entries for MAC address (un)registration (Mete Durlu) [2043835] - [s390] s390/netiucv: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/lcs: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/ctcm: remove incorrect kernel doc indicators (Mete Durlu) [2043835] - [s390] s390/qeth: clean up device_type management (Mete Durlu) [2043835] - [s390] s390/qeth: clean up QETH_PROT_* naming (Mete Durlu) [2043835] - mm/memcg: Free percpu stats memory of dying memcg's (Waiman Long) [2004037] - netfilter: flowtable: fix TCP flow teardown (Florian Westphal) [2088234] - netfilter: conntrack: annotate data-races around ct->timeout (Florian Westphal) [2088234] - netfilter: conntrack: initialize ct->timeout (Florian Westphal) [2088234] - NFSv4: Fix free of uninitialized nfs4_label on referral lookup. (Scott Mayhew) [2090994] - md: fix double free of io_acct_set bioset (Nigel Croxon) [2094076] - md: Don't set mddev private to NULL in raid0 pers->free (Nigel Croxon) [2094076] - md: protect md_unregister_thread from reentrancy (Nigel Croxon) [2094076] - md: don't unregister sync_thread with reconfig_mutex held (Nigel Croxon) [2094076] - raid5: don't set the discard_alignment queue limit (Nigel Croxon) [2094076] - md: Replace role magic numbers with defined constants (Nigel Croxon) [2094076] - md/raid0: Ignore RAID0 layout if the second zone has only one device (Nigel Croxon) [2094076] - md/raid5: Annotate functions that hold device_lock with __must_hold (Nigel Croxon) [2094076] - md/raid5-ppl: Annotate with rcu_dereference_protected() (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement access when mddev_lock is held (Nigel Croxon) [2094076] - md/raid5: Annotate rdev/replacement accesses when nr_pending is elevated (Nigel Croxon) [2094076] - md/raid5: Add __rcu annotation to struct disk_info (Nigel Croxon) [2094076] - md/raid5: Un-nest struct raid5_percpu definition (Nigel Croxon) [2094076] - md/raid5: Cleanup setup_conf() error returns (Nigel Croxon) [2094076] - md: replace deprecated strlcpy & remove duplicated line (Nigel Croxon) [2094076] - md/bitmap: don't set sb values if can't pass sanity check (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in md_reload_sb (Nigel Croxon) [2094076] - md: fix an incorrect NULL check in does_sb_need_changing (Nigel Croxon) [2094076] - md: use msleep() in md_notify_reboot() (Nigel Croxon) [2094076] - ext4: force overhead calculation if the s_overhead_cluster makes no sense (Lukas Czerner) [2079886] - ext4: fix overhead calculation to account for the reserved gdt blocks (Lukas Czerner) [2079886] - ext4: limit length to bitmap_maxbytes - blocksize in punch_hole (Lukas Czerner) [2079886] - ext4: fix use-after-free in ext4_search_dir (Lukas Czerner) [2079886] - ext4: fix symlink file size not match to file content (Lukas Czerner) [2079886] - ext4: fix fallocate to use file_modified to update permissions consistently (Lukas Czerner) [2085623] - ext4: remove unused macro MPAGE_DA_EXTENT_TAIL (Lukas Czerner) [2079886] - ext4: add missing braces in ext4_ext_drop_refs() (Lukas Czerner) [2079886] - ext4: remove obsolete comment from ext4_can_extents_be_merged() (Lukas Czerner) [2079886] - ext4: make some functions static in extents.c (Lukas Czerner) [2079886] - ext4: remove redundant S_ISREG() checks from ext4_fallocate() (Lukas Czerner) [2079886] - ext4: clean up len and offset checks in ext4_fallocate() (Lukas Czerner) [2079886] - ext4: remove ext4_{ind,ext}_calc_metadata_amount() (Lukas Czerner) [2079886] - ext4: fix fs corruption when tring to remove a non-empty directory with IO error (Lukas Czerner) [2079886] - ext4: fix error handling in ext4_restore_inline_data() (Lukas Czerner) [2079886] - jbd2: export jbd2_journal_[grab|put]_journal_head (Lukas Czerner) [2079886] - ext4: don't use the orphan list when migrating an inode (Lukas Czerner) [2079886] - ext4: set csum seed in tmp inode while migrating to extents (Lukas Czerner) [2079886] - ext4: fix an use-after-free issue about data=journal writeback mode (Lukas Czerner) [2079886] - ext4: fix bh ref count on error paths (Lukas Czerner) [2079886] - ext4: fix a possible ABBA deadlock due to busy PA (Lukas Czerner) [2079886] - ext4: discard preallocations before releasing group lock (Lukas Czerner) [2079886] - ext4: make ext_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: mballoc: make mb_debug() implementation to use pr_debug() (Lukas Czerner) [2079886] - ext4: improve ext_debug() msg in case of block allocation failure (Lukas Czerner) [2079886] - ext4: use BIT() macro for BH_** state bits (Lukas Czerner) [2079886] - ext4: balloc: use task_pid_nr() helper (Lukas Czerner) [2079886] - ext4: mballoc: fix possible NULL ptr & remove BUG_ONs from DOUBLE_CHECK (Lukas Czerner) [2079886] - ext4: mballoc: refactor code inside DOUBLE_CHECK into separate function (Lukas Czerner) [2079886] - ext4: mballoc: make ext4_mb_use_preallocated() return type as bool (Lukas Czerner) [2079886] - ext4: mballoc: simplify error handling in ext4_init_mballoc() (Lukas Czerner) [2079886] - ext4: mballoc: fix few other format specifier in mb_debug() (Lukas Czerner) [2079886] - ext4: mballoc: correct the mb_debug() format specifier for pa_len var (Lukas Czerner) [2079886] - ext4: mballoc: add more mb_debug() msgs (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_show_ac() (Lukas Czerner) [2079886] - ext4: mballoc: print bb_free info even when it is 0 (Lukas Czerner) [2079886] - ext4: fix dead loop in ext4_mb_new_blocks (Lukas Czerner) [2079886] - ext4: mballoc: use lock for checking free blocks while retrying (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_good_group() (Lukas Czerner) [2079886] - ext4: mballoc: introduce pcpu seqcnt for freeing PA to improve ENOSPC handling (Lukas Czerner) [2079886] - ext4: mballoc: refactor ext4_mb_discard_preallocations() (Lukas Czerner) [2079886] - ext4: mballoc: add blocks to PA list under same spinlock after allocating blocks (Lukas Czerner) [2079886] - ext4: fix lazy initialization next schedule time computation in more granular unit (Lukas Czerner) [2079886] - ext4: fix avefreec in find_group_orlov (Lukas Czerner) [2079886] - ext4: allow the dax flag to be set and cleared on inline directories (Lukas Czerner) [2079886] - ext4: annotate data race in jbd2_journal_dirty_metadata() (Lukas Czerner) [2079886] - ext4: annotate data race in start_this_handle() (Lukas Czerner) [2079886] - ext4: fix superblock checksum failure when setting password salt (Lukas Czerner) [2079886] - ext4: correctly report "not supported" for {usr,grp}jquota when !CONFIG_QUOTA (Lukas Czerner) [2079886] - jbd2: fix ocfs2 corrupt when clearing block group bits (Lukas Czerner) [2079886] - ext4: fix ext4_empty_dir() for directories with holes (Lukas Czerner) [2079886] - ext4: allow directory holes (Lukas Czerner) [2079886] - net/af_packet: make sure to pull mac header (Hangbin Liu) [2066976] - rcu/nocb: Make rcu_core() callbacks acceleration preempt-safe (Waiman Long) [2097549] - redhat: drop expired testing secureboot signing key (Jarod Wilson) [2095199]- atlantic: Fix issue in the pm resume flow. (Igor Russkikh) [2002395] - atlantic: Fix driver resume flow. (Igor Russkikh) [2002395] - Build intel_sdsi with {tools_make} (Prarit Bhargava) [1971951] - redhat/kernel.spec.template: Add intel_sdsi tool (Prarit Bhargava) [1971951] - redhat/configs: Add CONFIG_INTEL_SDSI (Prarit Bhargava) [1971951] - selftests: sdsi: test sysfs setup (Prarit Bhargava) [1971951] - tools arch x86: Add Intel SDSi provisiong tool (Prarit Bhargava) [1971951] - platform/x86: Add Intel Software Defined Silicon driver (Prarit Bhargava) [1971951] - platform/x86/intel: Fix 'rmmod pmt_telemetry' panic (Prarit Bhargava) [2080426] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Prarit Bhargava) [2040019 2040059] - netfilter: nf_tables: sanitize nft_set_desc_concat_parse() (Florian Westphal) [2096403] {CVE-2022-2078} - mt76: mt7921: Fix the error handling path of mt7921_pci_probe() (Íñigo Huguet) [2096758] - Watchdog: sp5100_tco: Enable Family 17h+ CPUs (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Add initialization using EFCH MMIO (Sudheesh Mavila) [2031643] - kernel/resource: Introduce request_mem_region_muxed() (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Refactor MMIO base address initialization (Sudheesh Mavila) [2031643] - Watchdog: sp5100_tco: Move timer initialization into function (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Add support for get_timeleft (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: Enable watchdog on Family 17h devices if disabled (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after registering device (Sudheesh Mavila) [2031643] - watchdog: sp5100_tco: drop warning after calling watchdog_init_timeout (Sudheesh Mavila) [2031643] - Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE"" (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - swiotlb: fix info leak with DMA_FROM_DEVICE (Chris von Recklinghausen) [2059701] {CVE-2022-0854} - redhat/configs: Add CONFIG_S390_UV_UAPI (Claudio Imbrenda) [1984905] - [s390] s390/uv_uapi: depend on CONFIG_S390 (Claudio Imbrenda) [1984905] - [s390] drivers/s390/char: Add Ultravisor io device (Claudio Imbrenda) [1984905] - cpufreq: Specify default governor on command line (Prarit Bhargava) [2083766] - cpufreq: Fix locking issues with governors (Prarit Bhargava) [2083766] - cpufreq: Register governors at core_initcall (Prarit Bhargava) [2083766] - nvme: fix RCU hole that allowed for endless looping in multipath round robin (Gopal Tiwari) [2078806] - nvme-multipath: fix hang when disk goes live over reconnect (Gopal Tiwari) [2078806] - nvme-tcp: send H2CData PDUs based on MAXH2CDATA (Gopal Tiwari) [2078806] - nvme: also mark passthrough-only namespaces ready in nvme_update_ns_info (Gopal Tiwari) [2078806] - nvme: don't return an error from nvme_configure_metadata (Gopal Tiwari) [2078806] - nvme-tcp: fix bogus request completion when failing to send AER (Gopal Tiwari) [2078806] - nvme-fabrics: remove the unneeded ret variable in nvmf_dev_show (Gopal Tiwari) [2078806] - nvme-pci: add the IGNORE_DEV_SUBNQN quirk for Intel P4500/P4600 SSDs (Gopal Tiwari) [2078806] - nvme-fabrics: print out valid arguments when reading from /dev/nvme-fabrics (Gopal Tiwari) [2078806] - nvmet-tcp: fix possible list corruption for unexpected command failure (Gopal Tiwari) [2078806] - nvme: fix use after free when disconnecting a reconnecting ctrl (Gopal Tiwari) [2078806] - nvme-multipath: set ana_log_size to 0 after free ana_log_buf (Gopal Tiwari) [2078806] - nvme: disable namespace access for unsupported metadata (Gopal Tiwari) [2078806] - nvme: report write pointer for a full zone as zone start + zone len (Gopal Tiwari) [2078806] - nvme: show subsys nqn for duplicate cntlids (Gopal Tiwari) [2078806] - nvme-pci: add NO APST quirk for Kioxia device (Gopal Tiwari) [2078806] - nvme: fix write zeroes pi (Gopal Tiwari) [2078806] - nvmet: use flex_array_size and struct_size (Gopal Tiwari) [2078806] - nvme: drop scan_lock and always kick requeue list when removing namespaces (Gopal Tiwari) [2078806] - nvmet: use struct_size over open coded arithmetic (Gopal Tiwari) [2078806] - nvme-pci: clear shadow doorbell memory on resets (Gopal Tiwari) [2078806] - nvmet: use macro definitions for setting cmic value (Gopal Tiwari) [2078806] - nvme-rdma: fix error code in nvme_rdma_setup_ctrl (Gopal Tiwari) [2078806] - nvmet: use macro definition for setting nmic value (Gopal Tiwari) [2078806] - nvmet-rdma: implement get_max_queue_size controller op (Gopal Tiwari) [2078806] - nvmet: add get_max_queue_size op for controllers (Gopal Tiwari) [2078806] - nvme-rdma: limit the maximal queue size for RDMA controllers (Gopal Tiwari) [2078806] - nvme: paring quiesce/unquiesce (Gopal Tiwari) [2078806] - nvme: add APIs for stopping/starting admin queue (Gopal Tiwari) [2078806] - nvme: prepare for pairing quiescing and unquiescing (Gopal Tiwari) [2078806] - nvme: apply nvme API to quiesce/unquiesce admin queue (Gopal Tiwari) [2078806] - nvme: loop: clear NVME_CTRL_ADMIN_Q_STOPPED after admin queue is reallocated (Gopal Tiwari) [2078806] - nvme: remove the call to nvme_update_disk_info in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme: remove the GENHD_FL_UP check in nvme_ns_remove (Gopal Tiwari) [2078806] - nvme-rdma: destroy cm id before destroy qp to avoid use after free (Gopal Tiwari) [2078806] - nvme: only call synchronize_srcu when clearing current path (Gopal Tiwari) [2078806] - nvme-multipath: revalidate paths during rescan (Gopal Tiwari) [2078806] - nvme: remove the unused NVME_NS_* enum (Gopal Tiwari) [2078806] - nvme: Have NVME_FABRICS select NVME_CORE instead of transport drivers (Gopal Tiwari) [2078806] - nvme-pci: disable hmb on idle suspend (Gopal Tiwari) [2078806] - nvme: allow user toggling hmb usage (Gopal Tiwari) [2078806] - nvme-fabrics: remove superfluous nvmf_host_put in nvmf_parse_options (Gopal Tiwari) [2078806] - nvme: add set feature tracing support (Gopal Tiwari) [2078806] - nvmet: add set feature tracing support (Gopal Tiwari) [2078806] - nvme-pci: cmb sysfs: one file, one value (Gopal Tiwari) [2078806] - nvme-pci: use attribute group for cmb sysfs (Gopal Tiwari) [2078806] - compiler.h: Introduce absolute_pointer macro (Gopal Tiwari) [2078806] - vdpa: Fix vdpa-vhost driver (Laurent Vivier) [2093851] - nl80211: fix locking in nl80211_set_tx_bitrate_mask() (Íñigo Huguet) [2059994] - mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection (Íñigo Huguet) [2059994] - mac80211_hwsim: fix RCU protected chanctx access (Íñigo Huguet) [2059994] - mac80211: Reset MBSSID parameters upon connection (Íñigo Huguet) [2059994] - cfg80211: retrieve S1G operating channel number (Íñigo Huguet) [2059994] - nl80211: validate S1G channel width (Íñigo Huguet) [2059994] - mac80211: fix rx reordering with non explicit / psmp ack policy (Íñigo Huguet) [2059994] - ath11k: reduce the wait time of 11d scan and hw scan while add interface (Íñigo Huguet) [2059994] - iwlwifi: iwl-dbg: Use del_timer_sync() before freeing (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Flush recovery worker during freeze (Íñigo Huguet) [2059994] - bus: mhi: host: pci_generic: Add missing poweroff() PM callback (Íñigo Huguet) [2059994] - mac80211: fix ht_capa printout in debugfs (Íñigo Huguet) [2059994] - cfg80211: hold bss_lock while updating nontrans_list (Íñigo Huguet) [2059994] - nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size (Íñigo Huguet) [2059994] - ath9k: Fix usage of driver-private space in tx_info (Íñigo Huguet) [2059994] - brcmfmac: sdio: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - mt76: Fix undefined behavior due to shift overflowing the constant (Íñigo Huguet) [2059994] - Revert "ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax" (Íñigo Huguet) [2059994] - ath9k: Properly clear TX status area before reporting to mac80211 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't fail if PPAG isn't supported (Íñigo Huguet) [2059994] - bus: mhi: Make mhi_state_str[] array static inline and move to common.h (Íñigo Huguet) [2059994] - bus: mhi: Move common MHI definitions out of host directory (Íñigo Huguet) [2059994] - bus: mhi: host: Rename "struct mhi_tre" to "struct mhi_ring_element" (Íñigo Huguet) [2059994] - bus: mhi: Cleanup the register definitions used in headers (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for handling DWORDs of ring elements (Íñigo Huguet) [2059994] - bus: mhi: Use bitfield operations for register read and write (Íñigo Huguet) [2059994] - bus: mhi: Move host MHI code to "host" directory (Íñigo Huguet) [2059994] - bus: mhi: Fix MHI DMA structure endianness (Íñigo Huguet) [2059994] - bus: mhi: Fix pm_state conversion to string (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Quectel EM1xx series (Íñigo Huguet) [2059994] - rfkill: make new event layout opt-in (Íñigo Huguet) [2059994] - rtw89: implement stop and resume channels transmission v1 (Íñigo Huguet) [2059994] - rtw89: extend mac tx_en bits from 16 to 32 (Íñigo Huguet) [2059994] - rtw89: change value assignment style of rtw89_mac_cfg_gnt() (Íñigo Huguet) [2059994] - rtw89: 8852c: add mac_ctrl_path and mac_cfg_gnt APIs (Íñigo Huguet) [2059994] - rtw89: disable FW and H2C function if CPU disabled (Íñigo Huguet) [2059994] - rtw89: initialize preload window of D-MAC (Íñigo Huguet) [2059994] - rtw89: modify MAC enable functions (Íñigo Huguet) [2059994] - rtw89: add config_rf_reg_v1 to configure RF parameter tables (Íñigo Huguet) [2059994] - rtw89: 8852c: add read/write rf register function (Íñigo Huguet) [2059994] - rtw89: 8852c: add setting of TB UL TX power offset (Íñigo Huguet) [2059994] - rtw89: 8852c: add write/read crystal function in CFO tracking (Íñigo Huguet) [2059994] - rtw89: modify dcfo_comp to share with chips (Íñigo Huguet) [2059994] - rtw89: Fix spelling mistake "Mis-Match" -> "Mismatch" (Íñigo Huguet) [2059994] - brcmfmac: p2p: Fix spelling mistake "Comback" -> "Comeback" (Íñigo Huguet) [2059994] - iwlwifi: mei: fix building iwlmei (Íñigo Huguet) [2059994] - mt76: fix monitor rx FCS error in DFS channel (Íñigo Huguet) [2059994] - mt76: mt7921: don't enable beacon filter when IEEE80211_CONF_CHANGE_MONITOR is set (Íñigo Huguet) [2059994] - mt76: fix wrong HE data rate in sniffer tool (Íñigo Huguet) [2059994] - mt76: mt7915: introduce 802.11ax multi-bss support (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_init_hw in a dedicated work (Íñigo Huguet) [2059994] - mt76: mt7921: add mt7921u driver (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_status_data in mac common code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_complete_skb in common mac code. (Íñigo Huguet) [2059994] - mt76: mt7921: move mt7921_usb_sdio_tx_prepare_skb in common mac code (Íñigo Huguet) [2059994] - mt76: mt7921: update mt7921_skb_add_usb_sdio_hdr to support usb (Íñigo Huguet) [2059994] - mt76: mt7921: disable runtime pm for usb (Íñigo Huguet) [2059994] - mt76: usb: introduce __mt76u_init utility routine (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_wr signature (Íñigo Huguet) [2059994] - mt76: usb: add req_type to ___mt76u_rr signature (Íñigo Huguet) [2059994] - mt76: mt7915: fix typos in comments (Íñigo Huguet) [2059994] - mt76: mt7915: fix phy cap in mt7915_set_stream_he_txbf_caps() (Íñigo Huguet) [2059994] - mt76: mt7915: fix beamforming mib stats (Íñigo Huguet) [2059994] - mt76: mt7915: set band1 TGID field in tx descriptor (Íñigo Huguet) [2059994] - mt76: fix invalid rssi report (Íñigo Huguet) [2059994] - mt76: use le32/16_get_bits() whenever possible (Íñigo Huguet) [2059994] - mt76: connac: make read-only array ba_range static const (Íñigo Huguet) [2059994] - mt76: mt7915: check for devm_pinctrl_get() failure (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_wait_for_mcu_init declaration (Íñigo Huguet) [2059994] - mt76: mt7915: add txpower init for 6GHz (Íñigo Huguet) [2059994] - mt76: mt7915: fix eeprom fields of txpower init values (Íñigo Huguet) [2059994] - mt76: mt7915: add 6 GHz support (Íñigo Huguet) [2059994] - mt76: connac: add 6 GHz support for wtbl and starec configuration (Íñigo Huguet) [2059994] - mt76: mt7915: allow beaconing on all chains (Íñigo Huguet) [2059994] - mt76: fix monitor mode crash with sdio driver (Íñigo Huguet) [2059994] - mt76: mt7921: fix mt7921_queues_acq implementation (Íñigo Huguet) [2059994] - mt76: mt7921: fix xmit-queue dump for usb and sdio (Íñigo Huguet) [2059994] - mt76: mt7921: make mt7921_init_tx_queues static (Íñigo Huguet) [2059994] - mt76: split single ldpc cap bit into bits (Íñigo Huguet) [2059994] - mt76: mt7915: fix DFS no radar detection event (Íñigo Huguet) [2059994] - mt76: mt7921: use mt76_hw instead of open coding it (Íñigo Huguet) [2059994] - mt76: mt7921: fix up the monitor mode (Íñigo Huguet) [2059994] - mt76: mt7663u: introduce mt7663u_mcu_power_on routine (Íñigo Huguet) [2059994] - mt76: mt7615: honor ret from mt7615_mcu_restart in mt7663u_mcu_init (Íñigo Huguet) [2059994] - rtw89: fix uninitialized variable of rtw89_append_probe_req_ie() (Íñigo Huguet) [2059994] - rtlwifi: rtl8821ae: fix typos in comments (Íñigo Huguet) [2059994] - rtlwifi: rtl8192cu: Add On Networks N150 (Íñigo Huguet) [2059994] - mwifiex: make read-only array wmm_oui static const (Íñigo Huguet) [2059994] - mac80211: update bssid_indicator in ieee80211_assign_beacon (Íñigo Huguet) [2059994] - mac80211: MBSSID channel switch (Íñigo Huguet) [2059994] - mac80211: MBSSID beacon handling in AP mode (Íñigo Huguet) [2059994] - mac80211: always have ieee80211_sta_restart() (Íñigo Huguet) [2059994] - mac80211: Add support to trigger sta disconnect on hardware restart (Íñigo Huguet) [2059994] - mac80211: fix potential double free on mesh join (Íñigo Huguet) [2059994] - mac80211: correct legacy rates check in ieee80211_calc_rx_airtime (Íñigo Huguet) [2059994] - nl80211: fix typo of NL80211_IF_TYPE_OCB in documentation (Íñigo Huguet) [2059994] - mac80211: Use GFP_KERNEL instead of GFP_ATOMIC when possible (Íñigo Huguet) [2059994] - mac80211: replace DEFINE_SIMPLE_ATTRIBUTE with DEFINE_DEBUGFS_ATTRIBUTE (Íñigo Huguet) [2059994] - rtw89: 8852c: process logic efuse map (Íñigo Huguet) [2059994] - rtw89: 8852c: process efuse of phycap (Íñigo Huguet) [2059994] - rtw89: support DAV efuse reading operation (Íñigo Huguet) [2059994] - rtw89: 8852c: add chip::dle_mem (Íñigo Huguet) [2059994] - rtw89: add page_regs to handle v1 chips (Íñigo Huguet) [2059994] - rtw89: add chip_info::{h2c,c2h}_reg to support more chips (Íñigo Huguet) [2059994] - rtw89: add hci_func_en_addr to support variant generation (Íñigo Huguet) [2059994] - rtw89: add power_{on/off}_func (Íñigo Huguet) [2059994] - rtw89: read chip version depends on chip ID (Íñigo Huguet) [2059994] - rtw89: pci: use a struct to describe all registers address related to DMA channel (Íñigo Huguet) [2059994] - rtw89: pci: add V1 of PCI channel address (Íñigo Huguet) [2059994] - rtw89: pci: add struct rtw89_pci_info (Íñigo Huguet) [2059994] - rtw89: 8852c: add 8852c empty files (Íñigo Huguet) [2059994] - brcmfmac: make the read-only array pktflags static const (Íñigo Huguet) [2059994] - rtlwifi: rtl8192ce: remove duplicated function '_rtl92ce_phy_set_rf_sleep' (Íñigo Huguet) [2059994] - ath10k: Fix error handling in ath10k_setup_msa_resources (Íñigo Huguet) [2059994] - ath11k: remove unneeded flush_workqueue (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 72 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: acpi: move ppag code from mvm to fw/acpi (Íñigo Huguet) [2059994] - iwlwifi: dbg: check trigger data before access (Íñigo Huguet) [2059994] - iwlwifi: dbg: in sync mode don't call schedule (Íñigo Huguet) [2059994] - iwlwifi: use 4k queue size for Bz A-step (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix SW error MSI-X mapping (Íñigo Huguet) [2059994] - iwlwifi: yoyo: dump IMR DRAM only for HW and FW error (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for IMR based on platform (Íñigo Huguet) [2059994] - iwlwifi: yoyo: disable IMR DRAM region if IMR is disabled (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove cipher scheme support (Íñigo Huguet) [2059994] - iwlwifi: Configure FW debug preset via module param. (Íñigo Huguet) [2059994] - iwlwifi: mvm: add a flag to reduce power command. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 71 for AX devices (Íñigo Huguet) [2059994] - ath9k: make array voice_priority static const (Íñigo Huguet) [2059994] - rtw89: declare HE capabilities in 6G band (Íñigo Huguet) [2059994] - rtw89: fix HE PHY bandwidth capability (Íñigo Huguet) [2059994] - rtw89: add tx_wake notify for low ps mode (Íñigo Huguet) [2059994] - rtw89: 8852a: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - Revert "ath: add support for special 0x0 regulatory domain" (Íñigo Huguet) [2059994] - rtw89: get channel parameters of 160MHz bandwidth (Íñigo Huguet) [2059994] - mt76: fix dfs state issue with 160 MHz channels (Íñigo Huguet) [2059994] - mt76: mt7915: simplify conditional (Íñigo Huguet) [2059994] - mt76: mt7921: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - mt76: mt7915e: Enable thermal management by default (Íñigo Huguet) [2059994] - mt76: mt7915e: Add a hwmon attribute to get the actual throttle state. (Íñigo Huguet) [2059994] - mt76: mt7915e: Fix degraded performance after temporary overheat (Íñigo Huguet) [2059994] - mt76: improve signal strength reporting (Íñigo Huguet) [2059994] - mt76: mt7915: use min_t() to make code cleaner (Íñigo Huguet) [2059994] - mt76: mt7915: fix the muru tlv issue (Íñigo Huguet) [2059994] - mt76: mt7915: check band idx for bcc event (Íñigo Huguet) [2059994] - mt76: mt7615: Fix assigning negative values to unsigned variable (Íñigo Huguet) [2059994] - mt76: connac: adjust wlan_idx size from u8 to u16 (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_mac_tx_free() (Íñigo Huguet) [2059994] - mt76: mt7915: fix endianness warnings in mt7915_debugfs_rx_fw_monitor (Íñigo Huguet) [2059994] - mt76: mt7615: fix compiler warning on frame size (Íñigo Huguet) [2059994] - mt76: mt7915: initialize smps mode in mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: introduce band_idx in mt7915_phy (Íñigo Huguet) [2059994] - mt76: mt7915: add support for MT7986 (Íñigo Huguet) [2059994] - ath10k: fix pointer arithmetic error in trace call (Íñigo Huguet) [2059994] - ath11k: add dbring debug support (Íñigo Huguet) [2059994] - ath11k: translate HE status to radiotap format (Íñigo Huguet) [2059994] - ath11k: decode HE status tlv (Íñigo Huguet) [2059994] - ath11k: switch to using ieee80211_tx_status_ext() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix missing fc type/sub-type for 802.11 pkts (Íñigo Huguet) [2059994] - mt76: mt7915: fix potential memory leak of fw monitor packets (Íñigo Huguet) [2059994] - mt76: mt7915: Fix channel state update error issue (Íñigo Huguet) [2059994] - mt76: fix endianness errors in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt7615: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: fix injected MPDU transmission to not use HW A-MSDU (Íñigo Huguet) [2059994] - rtw88: change rtw_info() to proper message level (Íñigo Huguet) [2059994] - rtw89: Limit the CFO boundaries of x'tal value (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: phy: handle txpwr lmt/lmt_ru of 6G band (Íñigo Huguet) [2059994] - ath11k: Fix frames flush failure caused by deadlock (Íñigo Huguet) [2059994] - ath11k: Handle failure in qmi firmware ready (Íñigo Huguet) [2059994] - ath11k: Invalidate cached reo ring entry before accessing it (Íñigo Huguet) [2059994] - ath: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath11k: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - ath10k: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - ath9k: use hw_random API instead of directly dumping into random.c (Íñigo Huguet) [2059994] - ath11k: configure RDDM size to mhi for recovery by firmware (Íñigo Huguet) [2059994] - ath11k: fix invalid m3 buffer address (Íñigo Huguet) [2059994] - ath11k: add ath11k_qmi_free_resource() for recovery (Íñigo Huguet) [2059994] - rtw89: core.h: Replace zero-length array with flexible-array member (Íñigo Huguet) [2059994] - brcmfmac: Replace zero-length arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: fix RCU usage in rtw89_core_txq_push() (Íñigo Huguet) [2059994] - rtw88: coex: Update rtl8822c COEX version to 22020720 (Íñigo Huguet) [2059994] - rtw88: coex: Add C2H/H2C handshake with BT mailbox for asking HID Info (Íñigo Huguet) [2059994] - rtw88: coex: Add WLAN MIMO power saving for Bluetooth gaming controller (Íñigo Huguet) [2059994] - rtw88: coex: update BT PTA counter regularly (Íñigo Huguet) [2059994] - rtw88: coex: Improve WLAN throughput when HFP COEX (Íñigo Huguet) [2059994] - rtw88: 8822ce: add support for TX/RX 1ss mode (Íñigo Huguet) [2059994] - iwlwifi: dbg_ini: Split memcpy() to avoid multi-field write (Íñigo Huguet) [2059994] - iwlwifi: mvm: Fix an error code in iwl_mvm_up() (Íñigo Huguet) [2059994] - iwlwifi: Fix -EIO error code that is never returned (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: use kmemdup() to replace kzalloc + memcpy (Íñigo Huguet) [2059994] - iwlwifi: Fix syntax errors in comments (Íñigo Huguet) [2059994] - iwlwifi: dvm: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi/fw: use struct_size over open coded arithmetic (Íñigo Huguet) [2059994] - iwlwifi: Make use of the helper macro LIST_HEAD() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix off by one in iwl_mvm_stat_iterator_all_macs() (Íñigo Huguet) [2059994] - iwlwifi: yoyo: send hcmd to fw after dump collection completes. (Íñigo Huguet) [2059994] - iwlwifi: mvm: move only to an enabled channel (Íñigo Huguet) [2059994] - iwlwifi: mvm: update BAID allocation command again (Íñigo Huguet) [2059994] - iwlwifi: api: remove ttl field from TX command (Íñigo Huguet) [2059994] - iwlwifi: support new queue allocation command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support dump policy for the dump size (Íñigo Huguet) [2059994] - iwlwifi: pcie: iwlwifi: fix device id 7F70 struct (Íñigo Huguet) [2059994] - iwlwifi: tlc: Add logs in rs_fw_rate_init func to print TLC configuration (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove iwl_mvm_disable_txq() flags argument (Íñigo Huguet) [2059994] - iwlwifi: remove command ID argument from queue allocation (Íñigo Huguet) [2059994] - iwlwifi: make iwl_txq_dyn_alloc_dma() return the txq (Íñigo Huguet) [2059994] - iwlwifi: fix small doc mistake for iwl_fw_ini_addr_val (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: always remove the session protection after association (Íñigo Huguet) [2059994] - iwlwifi: mvm: make iwl_mvm_reconfig_scd() static (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor setting PPE thresholds in STA_HE_CTXT_CMD (Íñigo Huguet) [2059994] - iwlwifi: mvm: Disable WiFi bands selectively with BIOS (Íñigo Huguet) [2059994] - iwlwifi: mvm: add additional info for boot info failures (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send BAID removal to the FW during hw_restart (Íñigo Huguet) [2059994] - iwlwifi: don't dump_stack() when we get an unexpected interrupt (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: handle deactivation notification (Íñigo Huguet) [2059994] - iwlwifi: mvm: Consider P2P GO operation during scan (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 70 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: Unify the scan iteration functions (Íñigo Huguet) [2059994] - iwlwifi: mei: use C99 initializer for device IDs (Íñigo Huguet) [2059994] - iwlwifi: debugfs: remove useless double condition (Íñigo Huguet) [2059994] - iwlwifi: remove unused macros (Íñigo Huguet) [2059994] - iwlwifi: eeprom: clean up macros (Íñigo Huguet) [2059994] - iwlwifi: drv: load tlv debug data earlier (Íñigo Huguet) [2059994] - iwlwifi: pcie: Adapt rx queue write pointer for Bz family (Íñigo Huguet) [2059994] - iwlwifi: pcie: adjust to Bz completion descriptor (Íñigo Huguet) [2059994] - iwlwifi: mvm: Passively scan non PSC channels only when requested so (Íñigo Huguet) [2059994] - iwlwifi: scan: Modify return value of a function (Íñigo Huguet) [2059994] - iwlwifi: yoyo: Avoid using dram data if allocation failed (Íñigo Huguet) [2059994] - iwlwifi: mvm: Correctly set fragmented EBS (Íñigo Huguet) [2059994] - iwlwifi: nvm: Correct HE capability (Íñigo Huguet) [2059994] - iwlwifi: mei: avoid -Wpointer-arith and -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: make some functions friendly to sparse (Íñigo Huguet) [2059994] - iwlwifi: avoid variable shadowing (Íñigo Huguet) [2059994] - iwlwifi: remove unused DC2DC_CONFIG_CMD definitions (Íñigo Huguet) [2059994] - iwlwifi: dbg-tlv: clean up iwl_dbg_tlv_update_drams() (Íñigo Huguet) [2059994] - iwlwifi: fw: make dump_start callback void (Íñigo Huguet) [2059994] - iwlwifi: pcie: make sure iwl_rx_packet_payload_len() will not underflow (Íñigo Huguet) [2059994] - iwlwifi: mvm: use debug print instead of WARN_ON() (Íñigo Huguet) [2059994] - iwlwifi: read and print OTP minor version (Íñigo Huguet) [2059994] - iwlwifi: add support for BZ-U and BZ-L HW (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for CT-KILL notification version 2 (Íñigo Huguet) [2059994] - iwlwifi: yoyo: remove DBGI_SRAM address reset writing (Íñigo Huguet) [2059994] - iwlwifi: mvm: support v3 of station HE context command (Íñigo Huguet) [2059994] - iwlwifi: yoyo: add IMR DRAM dump support (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGC allocation flow (Íñigo Huguet) [2059994] - iwlwifi: pcie: add support for MS devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: align locking in D3 test debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't iterate unadded vifs when handling FW SMPS req (Íñigo Huguet) [2059994] - iwlwifi: advertise support for HE - DCM BPSK RX/TX (Íñigo Huguet) [2059994] - iwlwifi: mvm: only enable HE DCM if we also support TX (Íñigo Huguet) [2059994] - iwlwifi: yoyo: fix DBGI_SRAM ini dump header. (Íñigo Huguet) [2059994] - iwlwifi: dbg: add infra for tracking free buffer size (Íñigo Huguet) [2059994] - iwlwifi: mvm: starting from 22000 we have 32 Rx AMPDU sessions (Íñigo Huguet) [2059994] - iwlwifi: mvm: support new BAID allocation command (Íñigo Huguet) [2059994] - iwlwifi: mvm: refactor iwl_mvm_sta_rx_agg() (Íñigo Huguet) [2059994] - iwlwifi: cfg: add support for 1K BA queue (Íñigo Huguet) [2059994] - iwlwifi: avoid void pointer arithmetic (Íñigo Huguet) [2059994] - iwlwifi: fix various more -Wcast-qual warnings (Íñigo Huguet) [2059994] - iwlwifi: propagate (const) type qualifier (Íñigo Huguet) [2059994] - iwlwifi: de-const properly where needed (Íñigo Huguet) [2059994] - iwlwifi: make iwl_fw_lookup_cmd_ver() take a cmd_id (Íñigo Huguet) [2059994] - iwlwifi: mvm: fw: clean up hcmd struct creation (Íñigo Huguet) [2059994] - iwlwifi: prefer WIDE_ID() over iwl_cmd_id() (Íñigo Huguet) [2059994] - iwlwifi: mvm: allow enabling UHB TAS in the USA via ACPI setting (Íñigo Huguet) [2059994] - iwlwifi: mvm: offload channel switch timing to FW (Íñigo Huguet) [2059994] - iwlwifi: mvm: Don't call iwl_mvm_sta_from_mac80211() with NULL sta (Íñigo Huguet) [2059994] - mac80211_hwsim: Advertise support for EHT capabilities (Íñigo Huguet) [2059994] - mac80211: parse AddBA request with extended AddBA element (Íñigo Huguet) [2059994] - mac80211: calculate max RX NSS for EHT mode (Íñigo Huguet) [2059994] - mac80211: Add support for storing station EHT capabilities (Íñigo Huguet) [2059994] - mac80211: Handle station association response with EHT (Íñigo Huguet) [2059994] - mac80211: Add EHT capabilities to association/probe request (Íñigo Huguet) [2059994] - mac80211: Add initial support for EHT and 320 MHz channels (Íñigo Huguet) [2059994] - mac80211: Support parsing EHT elements (Íñigo Huguet) [2059994] - cfg80211: Support configuration of station EHT capabilities (Íñigo Huguet) [2059994] - nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN (Íñigo Huguet) [2059994] - cfg80211: add NO-EHT flag to regulatory (Íñigo Huguet) [2059994] - nl80211: add support for 320MHz channel limitation (Íñigo Huguet) [2059994] - nl80211: add EHT MCS support (Íñigo Huguet) [2059994] - cfg80211: Add support for EHT 320 MHz channel width (Íñigo Huguet) [2059994] - cfg80211: Add data structures to capture EHT capabilities (Íñigo Huguet) [2059994] - ieee80211: add EHT 1K aggregation definitions (Íñigo Huguet) [2059994] - ieee80211: Add EHT (802.11be) definitions (Íñigo Huguet) [2059994] - mac80211_hwsim: Add custom regulatory for 6GHz (Íñigo Huguet) [2059994] - mac80211_hwsim: don't shadow a global variable (Íñigo Huguet) [2059994] - mac80211_hwsim: check TX and STA bandwidth (Íñigo Huguet) [2059994] - nl80211: accept only HE capability elements with valid size (Íñigo Huguet) [2059994] - mac80211: parse only HE capability elements with valid size (Íñigo Huguet) [2059994] - ieee80211: add helper to check HE capability element size (Íñigo Huguet) [2059994] - nl80211: use RCU to read regdom in reg get/dump (Íñigo Huguet) [2059994] - mac80211_hwsim: Add debugfs to control rx status RSSI (Íñigo Huguet) [2059994] - ieee80211: use tab to indent struct ieee80211_neighbor_ap_info (Íñigo Huguet) [2059994] - rtw89: handle TX/RX 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: declare if chip support 160M bandwidth (Íñigo Huguet) [2059994] - rtw89: add 6G support to rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: extend subband for 6G band (Íñigo Huguet) [2059994] - rtw89: refine naming of rfk helpers with prefix (Íñigo Huguet) [2059994] - rtw89: make rfk helpers common across chips (Íñigo Huguet) [2059994] - brcmfmac: Add BCM43454/6 support (Íñigo Huguet) [2059994] - ath11k: fix destination monitor ring out of sync (Íñigo Huguet) [2059994] - ath11k: fix radar detection in 160 Mhz (Íñigo Huguet) [2059994] - ath11k: fix WARN_ON during ath11k_mac_update_vif_chan (Íñigo Huguet) [2059994] - ath11k: fix uninitialized rate_idx in ath11k_dp_tx_update_txcompl() (Íñigo Huguet) [2059994] - brcmfmac: of: remove redundant variable len (Íñigo Huguet) [2059994] - brcmfmac: p2p: Replace one-element arrays with flexible-array members (Íñigo Huguet) [2059994] - rtw89: coex: set EN bit to PLT register (Íñigo Huguet) [2059994] - rtw89: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw88: recover rates of rate adaptive mechanism (Íñigo Huguet) [2059994] - rtw89: declare AP mode support (Íñigo Huguet) [2059994] - rtw89: debug: add stations entry to show ID assignment (Íñigo Huguet) [2059994] - rtw89: implement ieee80211_ops::start_ap and stop_ap (Íñigo Huguet) [2059994] - rtw89: maintain assoc/disassoc STA states of firmware and hardware (Íñigo Huguet) [2059994] - rtw89: only STA mode change vif_type mapping dynamically (Íñigo Huguet) [2059994] - rtw89: add addr_cam field to sta to support AP mode (Íñigo Huguet) [2059994] - rtw89: extend role_maintain to support AP mode (Íñigo Huguet) [2059994] - rtw88: fix use after free in rtw_hw_scan_update_probe_req() (Íñigo Huguet) [2059994] - mac80211: Remove redundent assignment channel_type (Íñigo Huguet) [2059994] - mac80211: remove useless ieee80211_vif_is_mesh() check (Íñigo Huguet) [2059994] - mac80211: fix struct ieee80211_tx_info size (Íñigo Huguet) [2059994] - mac80211: mlme: validate peer HE supported rates (Íñigo Huguet) [2059994] - mac80211: remove unused macros (Íñigo Huguet) [2059994] - cfg80211: pmsr: remove useless ifdef guards (Íñigo Huguet) [2059994] - mac80211: airtime: avoid variable shadowing (Íñigo Huguet) [2059994] - mac80211: mlme: add documentation from spec to code (Íñigo Huguet) [2059994] - mac80211: vht: use HE macros for parsing HE capabilities (Íñigo Huguet) [2059994] - ieee80211: radiotap: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - ieee80211: fix -Wcast-qual warnings (Íñigo Huguet) [2059994] - cfg80211: don't add non transmitted BSS to 6GHz scanned channels (Íñigo Huguet) [2059994] - ieee80211: fix HE SPR size calculation (Íñigo Huguet) [2059994] - cfg80211/mac80211: assume CHECKSUM_COMPLETE includes SNAP (Íñigo Huguet) [2059994] - mac80211: consider RX NSS in UHB connection (Íñigo Huguet) [2059994] - mac80211: limit bandwidth in HE capabilities (Íñigo Huguet) [2059994] - mt76: redefine mt76_for_each_q_rx to adapt mt7986 changes (Íñigo Huguet) [2059994] - mt76: dma: initialize skip_unmap in mt76_dma_rx_fill (Íñigo Huguet) [2059994] - mt76: do not always copy ethhdr in reverse_frag0_hdr_trans (Íñigo Huguet) [2059994] - mt76: mt76x02: use mt76_phy_dfs_state to determine radar detector state (Íñigo Huguet) [2059994] - mt76: mt7615: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt7915: fix/rewrite the dfs state handling logic (Íñigo Huguet) [2059994] - mt76: mt76x02: improve tx hang detection (Íñigo Huguet) [2059994] - mt76x02: improve mac error check/reset reliability (Íñigo Huguet) [2059994] - mt76: mt7921s: run sleep mode by default (Íñigo Huguet) [2059994] - mt76: sdio: honor the largest Tx buffer the hardware can support (Íñigo Huguet) [2059994] - mt76: mt7915: fix the nss setting in bitrates (Íñigo Huguet) [2059994] - mt76: mt7915: update max_mpdu_size in mt7915_mcu_sta_amsdu_tlv() (Íñigo Huguet) [2059994] - mt76: mt7915: fix mcs_map in mt7915_mcu_set_sta_he_mcs() (Íñigo Huguet) [2059994] - mt76: mt7921s: fix a possible memory leak in mt7921_load_patch (Íñigo Huguet) [2059994] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_sta (Íñigo Huguet) [2059994] - mt76: stop the radar detector after leaving dfs channel (Íñigo Huguet) [2059994] - mt76: mt7615: check sta_rates pointer in mt7615_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7603: check sta_rates pointer in mt7603_sta_rate_tbl_update (Íñigo Huguet) [2059994] - mt76: mt7663s: flush runtime-pm queue after waking up the device (Íñigo Huguet) [2059994] - mt76: mt7615: add support for LG LGSBWAC02 (MT7663BUN) (Íñigo Huguet) [2059994] - mt76: mt7921: remove duplicated code in mt7921_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: mt7915: add missing DATA4_TB_SPTL_REUSE1 to mt7915_mac_decode_he_radiotap (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_lmac_mapping in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar background detection (Íñigo Huguet) [2059994] - mt76: mt7915: report radar pattern if detected by rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce rdd_monitor debugfs node (Íñigo Huguet) [2059994] - mt76: mt7915: enable radar trigger on rdd2 (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt7915_set_radar_background routine (Íñigo Huguet) [2059994] - mt76: mt7915: set bssinfo/starec command when adding interface (Íñigo Huguet) [2059994] - mt76: mt7921: toggle runtime-pm adding a monitor vif (Íñigo Huguet) [2059994] - mt76: mt7921: fix endianness issues in mt7921_mcu_set_tx() (Íñigo Huguet) [2059994] - mt76: sdio: disable interrupt in mt76s_sdio_irq (Íñigo Huguet) [2059994] - mt76: mt7921: fix crash when startup fails. (Íñigo Huguet) [2059994] - mt76: mt7921s: fix mt7921s_mcu_[fw|drv]_pmctrl (Íñigo Huguet) [2059994] - mt76: mt7921: fix ht mcs in mt7921_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7915: fix ht mcs in mt7915_mac_add_txs_skb() (Íñigo Huguet) [2059994] - mt76: mt7615: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: fix a leftover race in runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: do not always disable fw runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7915: add support for passing chip/firmware debug data to user space (Íñigo Huguet) [2059994] - mt76: mt7615e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7915: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: mt7615: update bss_info with cipher after setting the group key (Íñigo Huguet) [2059994] - mt76: connac: add support for passing the cipher field in bss_info (Íñigo Huguet) [2059994] - mt76: mt7921e: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: mt7615: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2059994] - mt76: mt7921: set EDCA parameters with the MCU CE command (Íñigo Huguet) [2059994] - mt76: mt76_connac: fix MCU_CE_CMD_SET_ROC definition error (Íñigo Huguet) [2059994] - mt76: mt7921: forbid the doze mode when coredump is in progress (Íñigo Huguet) [2059994] - mt76: mt7921e: make dev->fw_assert usage consistent (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_rdd_cmd in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_set_rts_thresh (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_gen_dl_mode in mt76-connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_init_download (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_patch_sem_ctrl/mt76_connac_mcu_start_patch (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_restart in common module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_start_firmware (Íñigo Huguet) [2059994] - mt76: mt7921: get rid of mt7921_mcu_get_eeprom (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_set_pm in connac module (Íñigo Huguet) [2059994] - mt76: connac: introduce is_connac_v1 utility routine (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_wtbl_update_hdr_trans in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ht_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_smps_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_uapsd (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_generic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_wtbl_ba_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_sta_ba_tlv (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_basic_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_ext_tlv in connac module (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_bss_omac_tlv in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: remove duplicated defs in mcu.h (Íñigo Huguet) [2059994] - mt76: mt7915: move pci specific code back to pci.c (Íñigo Huguet) [2059994] - mt76: mt7921s: update mt7921s_wfsys_reset sequence (Íñigo Huguet) [2059994] - mt76: mt7921s: clear MT76_STATE_MCU_RUNNING immediately after reset (Íñigo Huguet) [2059994] - mt76: sdio: lock sdio when it is needed (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_sta_basic_tlv (Íñigo Huguet) [2059994] - mt76: mt7915: use proper aid value in mt7915_mcu_wtbl_generic_tlv in sta mode (Íñigo Huguet) [2059994] - mt76: make mt76_sar_capa static (Íñigo Huguet) [2059994] - mt76: mt7915: add device id for mt7916 (Íñigo Huguet) [2059994] - mt76: set wlan_idx_hi on mt7916 (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_add_key in connac module (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_get_phy utilities (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_chan_bw in common code (Íñigo Huguet) [2059994] - mt76: connac: move mt76_connac_mcu_get_cipher in common code (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_add_tlv routine (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_wtbl_req (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac_mcu_alloc_sta_req (Íñigo Huguet) [2059994] - mt76: connac: fix sta_rec_wtbl tag len (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7916 calibrated data support (Íñigo Huguet) [2059994] - mt76: mt7915: update mt7915_chan_mib_offs for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: update rx rate reporting for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: add txfree event v3 (Íñigo Huguet) [2059994] - mt76: mt7915: enlarge wcid size to 544 (Íñigo Huguet) [2059994] - mt76: mt7915: rework eeprom.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: mt7915: add firmware support for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: rework dma.c to adapt mt7916 changes (Íñigo Huguet) [2059994] - mt76: add MT_RXQ_MAIN_WA for mt7916 (Íñigo Huguet) [2059994] - mt76: mt7915: refine register definition (Íñigo Huguet) [2059994] - mt76: mt7915: add mt7915_mmio_probe() as a common probing function (Íñigo Huguet) [2059994] - mt76: mt7915: fix polling firmware-own status (Íñigo Huguet) [2059994] - brcmfmac: pcie: Read the console on init and shutdown (Íñigo Huguet) [2059994] - brcmfmac: fwil: Constify iovar name arguments (Íñigo Huguet) [2059994] - brcmfmac: of: Use devm_kstrdup for board_type & check for errors (Íñigo Huguet) [2059994] - brcmfmac: pcie: Fix crashes due to early IRQs (Íñigo Huguet) [2059994] - brcmfmac: pcie: Replace brcmf_pcie_copy_mem_todev with memcpy_toio (Íñigo Huguet) [2059994] - brcmfmac: pcie: Declare missing firmware files in pcie.c (Íñigo Huguet) [2059994] - brcmfmac: firmware: Allocate space for default boardrev in nvram (Íñigo Huguet) [2059994] - brcmfmac: pcie: Release firmwares in the brcmf_pcie_setup error path (Íñigo Huguet) [2059994] - rtlwifi: remove redundant initialization of variable ul_encalgo (Íñigo Huguet) [2059994] - ray_cs: Check ioremap return value (Íñigo Huguet) [2059994] - ath11k: add debugfs for TWT debug calls (Íñigo Huguet) [2059994] - ath11k: add WMI calls to manually add/del/pause/resume TWT dialogs (Íñigo Huguet) [2059994] - ath11k: Add debugfs interface to configure firmware debug log level (Íñigo Huguet) [2059994] - rtw88: rtw8821c: enable rfe 6 devices (Íñigo Huguet) [2059994] - rtw88: fix memory overrun and memory leak during hw_scan (Íñigo Huguet) [2059994] - rtw88: fix idle mode flow for hw scan (Íñigo Huguet) [2059994] - rtw88: check for validity before using a pointer (Íñigo Huguet) [2059994] - ath11k: mhi: use mhi_sync_power_up() (Íñigo Huguet) [2059994] - ath11k: pci: fix crash on suspend if board file is not found (Íñigo Huguet) [2059994] - ath11k: Fix missing rx_desc_get_ldpc_support in wcn6855_ops (Íñigo Huguet) [2059994] - ath11k: Fix uninitialized symbol 'rx_buf_sz' (Íñigo Huguet) [2059994] - ath11k: fix kernel panic during unload/load ath11k modules (Íñigo Huguet) [2059994] - ath11k: Rename ath11k_ahb_ext_irq_config (Íñigo Huguet) [2059994] - brcmfmac: add CYW43570 PCIE device (Íñigo Huguet) [2059994] - brcmfmac: use ISO3166 country code and 0 rev as fallback on some devices (Íñigo Huguet) [2059994] - rtw89: use pci_read/write_config instead of dbi read/write (Íñigo Huguet) [2059994] - rtw89: refine DIG feature to support 160M and CCK PD (Íñigo Huguet) [2059994] - rtw89: include subband type in channel params (Íñigo Huguet) [2059994] - rtw89: handle 6G band if supported by a chipset (Íñigo Huguet) [2059994] - rtw89: separate {init,deinit}_addr_cam functions (Íñigo Huguet) [2059994] - rtw89: set mac_id and port ID to TXWD (Íñigo Huguet) [2059994] - rtw89: send broadcast/multicast packets via HIQ if STAs are in sleep mode (Íñigo Huguet) [2059994] - rtw89: configure mac port HIQ registers (Íñigo Huguet) [2059994] - rtw89: rename vif_maintain to role_maintain (Íñigo Huguet) [2059994] - rtw89: extend firmware commands on states of sta_assoc and sta_disconnect (Íñigo Huguet) [2059994] - rtw89: allocate mac_id for each station in AP mode (Íñigo Huguet) [2059994] - rtw89: implement mac80211_ops::set_tim to indicate STA to receive packets (Íñigo Huguet) [2059994] - rtw89: add C2H handle of BCN_CNT (Íñigo Huguet) [2059994] - rtw89: download beacon content to firmware (Íñigo Huguet) [2059994] - rtw89: use hardware SSN to TX management frame (Íñigo Huguet) [2059994] - rtw89: configure rx_filter according to FIF_PROBE_REQ (Íñigo Huguet) [2059994] - rtw89: correct use of BA CAM (Íñigo Huguet) [2059994] - rtw89: encapsulate RX handlers to single function (Íñigo Huguet) [2059994] - rtw89: Add RX counters of VHT MCS-10/11 to debugfs (Íñigo Huguet) [2059994] - rtw89: remove duplicate definition of hardware port number (Íñigo Huguet) [2059994] - rtw89: extract modules by chipset (Íñigo Huguet) [2059994] - ath11k: avoid firmware crash when reg set for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: set WMI_PEER_40MHZ while peer assoc for 6 GHz (Íñigo Huguet) [2059994] - ath9k_htc: fix uninit value bugs (Íñigo Huguet) [2059994] - ath10k: abstract htt_rx_desc structure (Íñigo Huguet) [2059994] - ath9k: remove redundant status variable (Íñigo Huguet) [2059994] - ath11k: Reconfigure hardware rate for WCN6855 after vdev is started (Íñigo Huguet) [2059994] - ath: dfs_pattern_detector: Avoid open coded arithmetic in memory allocation (Íñigo Huguet) [2059994] - ath10k: Use platform_get_irq() to get the interrupt (Íñigo Huguet) [2059994] - ath11k: fix error code in ath11k_qmi_assign_target_mem_chunk() (Íñigo Huguet) [2059994] - ath11k: move function ath11k_dp_rx_process_mon_status (Íñigo Huguet) [2059994] - ath11k: enable RX PPDU stats in monitor co-exist mode (Íñigo Huguet) [2059994] - ath11k: free peer for station when disconnect from AP for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - ath11k: add LDPC FEC type in 802.11 radiotap header (Íñigo Huguet) [2059994] - ath11k: Refactor the fallback routine when peer create fails (Íñigo Huguet) [2059994] - ath11k: fix workqueue not getting destroyed after rmmod (Íñigo Huguet) [2059994] - ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern (Íñigo Huguet) [2059994] - ath11k: add missing of_node_put() to avoid leak (Íñigo Huguet) [2059994] - rfkill: define rfill_soft_blocked() if !RFKILL (Íñigo Huguet) [2059994] - Revert "ath10k: drop beacon and probe response which leak from other channel" (Íñigo Huguet) [2059994] - iwlwifi: mvm: return value for request_ownership (Íñigo Huguet) [2059994] - nl80211: Update bss channel on channel switch for P2P_CLIENT (Íñigo Huguet) [2059994] - iwlwifi: fix build error for IWLMEI (Íñigo Huguet) [2059994] - mac80211: treat some SAE auth steps as final (Íñigo Huguet) [2059994] - nl80211: Handle nla_memdup failures in handle_nan_filter (Íñigo Huguet) [2059994] - iwlwifi: mvm: check debugfs_dir ptr before use (Íñigo Huguet) [2059994] - iwlwifi: don't advertise TWT support (Íñigo Huguet) [2059994] - mac80211: fix forwarded mesh frames AC & queue selection (Íñigo Huguet) [2059994] - mac80211: refuse aggregations sessions before authorized (Íñigo Huguet) [2059994] - mac80211: fix EAPoL rekey fail in 802.3 rx path (Íñigo Huguet) [2059994] - iwlwifi: fix use-after-free (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Cinterion MV31-W (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add mru_default for Foxconn SDX55 (Íñigo Huguet) [2059994] - cfg80211: fix race in netlink owner interface destruction (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't send SAR GEO command for 3160 devices (Íñigo Huguet) [2059994] - iwlwifi: remove deprecated broadcast filtering feature (Íñigo Huguet) [2059994] - iwlwifi: mei: report RFKILL upon register when needed (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't feed the hardware RFKILL into iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: retry mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix the pskb_may_pull check in ipv4 (Íñigo Huguet) [2059994] - iwlwifi: pcie: gen2: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: pcie: fix locking when "HW not ready" (Íñigo Huguet) [2059994] - iwlwifi: fix iwl_legacy_rate_to_fw_idx (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix condition which checks the version of rate_n_flags (Íñigo Huguet) [2059994] - mac80211_hwsim: initialize ieee80211_tx_info at hw_scan_work (Íñigo Huguet) [2059994] - mac80211_hwsim: report NOACK frames in tx_status (Íñigo Huguet) [2059994] - mac80211: mlme: check for null after calling kmemdup (Íñigo Huguet) [2059994] - brcmfmac: firmware: Fix crash in brcm_alt_fw_path (Íñigo Huguet) [2059994] - mac80211: use ieee80211_bss_get_elem() (Íñigo Huguet) [2059994] - nl80211: clarify comment for mesh PLINK_BLOCKED state (Íñigo Huguet) [2059994] - mac80211: Add stations iterator where the iterator function may sleep (Íñigo Huguet) [2059994] - mac80211: allow non-standard VHT MCS-10/11 (Íñigo Huguet) [2059994] - codel: remove unnecessary pkt_sched.h include (Íñigo Huguet) [2059994] - codel: remove unnecessary sock.h include (Íñigo Huguet) [2059994] - rtw88: don't consider deep PS mode when transmitting packet (Íñigo Huguet) [2059994] - ath11k: add support of firmware logging for WCN6855 (Íñigo Huguet) [2059994] - ath10k: replace strlcpy with strscpy (Íñigo Huguet) [2059994] - rtw88: support SAR via kernel common API (Íñigo Huguet) [2059994] - rtw88: 8822c: add ieee80211_ops::hw_scan (Íñigo Huguet) [2059994] - iwlwifi: mei: wait before mapping the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: clear the ownership when the driver goes down (Íñigo Huguet) [2059994] - iwlwifi: fw: fix some scan kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove card state notification code (Íñigo Huguet) [2059994] - iwlwifi: mvm: drop too short packets silently (Íñigo Huguet) [2059994] - iwlwifi: return op_mode only in case the failure is from MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: support Bz TX checksum offload (Íñigo Huguet) [2059994] - iwlwifi: mvm: add US/CA to TAS block list if OEM isn't allowed (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set schedule scan profiles (Íñigo Huguet) [2059994] - iwlwifi: mvm: correctly set channel flags (Íñigo Huguet) [2059994] - iwlwifi: mvm: always store the PPAG table as the latest version. (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 69 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support TLV-based firmware reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: change old-SN drop threshold (Íñigo Huguet) [2059994] - iwlwifi: mvm: don't trust hardware queue number (Íñigo Huguet) [2059994] - iwlwifi: mvm: handle RX checksum on Bz devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: use a define for checksum flags mask (Íñigo Huguet) [2059994] - iwlwifi: remove module loading failure message (Íñigo Huguet) [2059994] - iwlwifi: mvm: isolate offload assist (checksum) calculation (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for OCE scan (Íñigo Huguet) [2059994] - iwlwifi: dump RCM error tables (Íñigo Huguet) [2059994] - iwlwifi: dump both TCM error tables if present (Íñigo Huguet) [2059994] - iwlwifi: dump CSR scratch from outer function (Íñigo Huguet) [2059994] - iwlwifi: parse error tables from debug TLVs (Íñigo Huguet) [2059994] - iwlwifi: recognize missing PNVM data and then log filename (Íñigo Huguet) [2059994] - iwlwifi: rs: add support for TLC config command ver 4 (Íñigo Huguet) [2059994] - iwlwifi: mvm: rfi: update rfi table (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add list of OEMs allowed to use TAS (Íñigo Huguet) [2059994] - iwlwifi: mvm: support revision 1 of WTAS table (Íñigo Huguet) [2059994] - iwlwifi: fw: remove dead error log code (Íñigo Huguet) [2059994] - iwlwifi: do not use __unused as variable name (Íñigo Huguet) [2059994] - iwlwifi: iwl-eeprom-parse: mostly dvm only (Íñigo Huguet) [2059994] - iwlwifi: mvm: clean up indenting in iwl_mvm_tlc_update_notif() (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a stray tab (Íñigo Huguet) [2059994] - ath11k: add regdb.bin download for regdb offload (Íñigo Huguet) [2059994] - rtl8xxxu: Improve the A-MPDU retransmission rate with RTS/CTS protection (Íñigo Huguet) [2059994] - rtw88: don't check CRC of VHT-SIG-B in 802.11ac signal (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix imbalanced locking in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2059994] - iwlwifi: mvm: add dbg_time_point to debugfs (Íñigo Huguet) [2059994] - iwlwifi: mvm: add missing min_size to kernel-doc (Íñigo Huguet) [2059994] - iwlwifi: mei: fix W=1 warnings (Íñigo Huguet) [2059994] - ath11k: add support for hardware rfkill for QCA6390 (Íñigo Huguet) [2059994] - ath11k: report tx bitrate for iw wlan station dump (Íñigo Huguet) [2059994] - ath11k: fix warning of RCU usage for ath11k_mac_get_arvif_by_vdev_id() (Íñigo Huguet) [2059994] - ath11k: add signal report to mac80211 for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: report rssi of each chain to mac80211 for QCA6390/WCN6855 (Íñigo Huguet) [2059994] - cfg80211: Enable regulatory enforcement checks for drivers supporting mesh iface (Íñigo Huguet) [2059994] - rfkill: allow to get the software rfkill state (Íñigo Huguet) [2059994] - cfg80211: refactor cfg80211_get_ies_channel_number() (Íñigo Huguet) [2059994] - nl82011: clarify interface combinations wrt. channels (Íñigo Huguet) [2059994] - nl80211: Add support to offload SA Query procedures for AP SME device (Íñigo Huguet) [2059994] - nl80211: Add support to set AP settings flags with single attribute (Íñigo Huguet) [2059994] - mac80211: add more HT/VHT/HE state logging (Íñigo Huguet) [2059994] - cfg80211: Use the HE operation IE to determine a 6GHz BSS channel (Íñigo Huguet) [2059994] - cfg80211: rename offchannel_chain structs to background_chain to avoid confusion with ETSI standard (Íñigo Huguet) [2059994] - mac80211: Notify cfg80211 about association comeback (Íñigo Huguet) [2059994] - cfg80211: Add support for notifying association comeback (Íñigo Huguet) [2059994] - mac80211: introduce channel switch disconnect function (Íñigo Huguet) [2059994] - cfg80211: Fix order of enum nl80211_band_iftype_attr documentation (Íñigo Huguet) [2059994] - cfg80211: simplify cfg80211_chandef_valid() (Íñigo Huguet) [2059994] - mac80211: Remove a couple of obsolete TODO (Íñigo Huguet) [2059994] - mac80211: use coarse boottime for airtime fairness code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix cmd timeout in throughput test (Íñigo Huguet) [2059994] - mt76: mt7921s: fix suspend error with enlarging mcu timeout value (Íñigo Huguet) [2059994] - mt76: mt7921s: make pm->suspended usage consistent (Íñigo Huguet) [2059994] - mt76: mt7921: clear pm->suspended in mt7921_mac_reset_work (Íñigo Huguet) [2059994] - mt76: connac: rely on le16_add_cpu in mt76_connac_mcu_add_nested_tlv (Íñigo Huguet) [2059994] - mt76: mt7921: remove dead definitions (Íñigo Huguet) [2059994] - mt76: mt7915: add mu-mimo and ofdma debugfs knobs (Íñigo Huguet) [2059994] - mt76: mt7915: introduce mt76_vif in mt7915_vif (Íñigo Huguet) [2059994] - mt76: mt7921: reduce log severity levels for informative messages (Íñigo Huguet) [2059994] - mt76: mt7915: rely on mt76_connac definitions (Íñigo Huguet) [2059994] - mt76: connac: rely on MCU_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_CE_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_UNI_CMD macro (Íñigo Huguet) [2059994] - mt76: connac: remove MCU_FW_PREFIX bit (Íñigo Huguet) [2059994] - mt76: connac: align MCU_EXT definitions with 7915 driver (Íñigo Huguet) [2059994] - mt76: connac: introduce MCU_EXT macros (Íñigo Huguet) [2059994] - mt76: mt7615: in debugfs queue stats, skip wmm index 3 on mt7663 (Íñigo Huguet) [2059994] - mt76: mt7915: process txfree and txstatus without allocating skbs (Íñigo Huguet) [2059994] - mt76: allow drivers to drop rx packets early (Íñigo Huguet) [2059994] - mt76: mt7663: disable 4addr capability (Íñigo Huguet) [2059994] - mt76: only access ieee80211_hdr after mt76_insert_ccmp_hdr (Íñigo Huguet) [2059994] - mt76: move sar_capa configuration in common code (Íñigo Huguet) [2059994] - mt76: mt7921s: fix possible kernel crash due to invalid Rx count (Íñigo Huguet) [2059994] - mt76: mt7921s: fix bus hang with wrong privilege (Íñigo Huguet) [2059994] - mt76: eeprom: tolerate corrected bit-flips (Íñigo Huguet) [2059994] - mt76: mt7603: improve reliability of tx powersave filtering (Íñigo Huguet) [2059994] - mt76: clear sta powersave flag after notifying driver (Íñigo Huguet) [2059994] - mt76: mt7915: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7603: introduce SAR support (Íñigo Huguet) [2059994] - mt76: mt7915: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7615: improve wmm index allocation (Íñigo Huguet) [2059994] - mt76: mt7921s: fix the device cannot sleep deeply in suspend (Íñigo Huguet) [2059994] - mt76: mt7615: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt7915: fix decap offload corner case with 4-addr VLAN frames (Íñigo Huguet) [2059994] - mt76: mt76x02: introduce SAR support (Íñigo Huguet) [2059994] - mt76: move sar utilities to mt76-core module (Íñigo Huguet) [2059994] - mt76: mt7921: honor mt76_connac_mcu_set_rate_txpower return value in mt7921_config (Íñigo Huguet) [2059994] - mt76: do not pass the received frame with decryption error (Íñigo Huguet) [2059994] - mt76: connac: remove PHY_MODE_AX_6G configuration in mt76_connac_get_phy_mode (Íñigo Huguet) [2059994] - mt76: mt7615: remove dead code in get_omac_idx (Íñigo Huguet) [2059994] - mt76: mt7921: introduce 160 MHz channel bandwidth support (Íñigo Huguet) [2059994] - mt76: mt7921: add support for PCIe ID 0x0608/0x0616 (Íñigo Huguet) [2059994] - mt76: testmode: add support to set MAC (Íñigo Huguet) [2059994] - mt76: mt7915: add default calibrated data support (Íñigo Huguet) [2059994] - mt76: only set rx radiotap flag from within decoder functions (Íñigo Huguet) [2059994] - mt76: reverse the first fragmented frame to 802.11 (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Introduce Sierra EM919X support (Íñigo Huguet) [2059994] - bus: mhi: core: Add an API for auto queueing buffers for DL channel (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Simplify code and axe the use of a deprecated API (Íñigo Huguet) [2059994] - bus: mhi: core: Use macros for execution environment features (Íñigo Huguet) [2059994] - bus: mhi: pci_generic: Add new device ID support for T99W175 (Íñigo Huguet) [2059994] - ath11k: Use reserved host DDR addresses from DT for PCI devices (Íñigo Huguet) [2059994] - ath11k: Change qcn9074 fw to operate in mode-2 (Íñigo Huguet) [2059994] - ath11k: add ab to TARGET_NUM_VDEVS & co (Íñigo Huguet) [2059994] - brcmfmac: Fix incorrect type assignments for keep-alive (Íñigo Huguet) [2059994] - ath11k: Avoid false DEADLOCK warning reported by lockdep (Íñigo Huguet) [2059994] - ath11k: set DTIM policy to stick mode for station interface (Íñigo Huguet) [2059994] - ath11k: support MAC address randomization in scan (Íñigo Huguet) [2059994] - ath10k: wmi: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: htt: remove array of flexible structures (Íñigo Huguet) [2059994] - ath10k: drop beacon and probe response which leak from other channel (Íñigo Huguet) [2059994] - ath11k: Process full monitor mode rx support (Íñigo Huguet) [2059994] - ath11k: add software monitor ring descriptor for full monitor (Íñigo Huguet) [2059994] - ath11k: Add htt cmd to enable full monitor mode (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS for WCN6855 (Íñigo Huguet) [2059994] - rtw88: refine tx_pwr_tbl debugfs to show channel and bandwidth (Íñigo Huguet) [2059994] - rtw88: add debugfs to fix tx rate (Íñigo Huguet) [2059994] - ath: regdom: extend South Korea regulatory domain support (Íñigo Huguet) [2059994] - ath11k: add wait operation for tx management packets for flush from mac80211 (Íñigo Huguet) [2059994] - ath11k: add 11d scan offload support (Íñigo Huguet) [2059994] - ath11k: add configure country code for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work (Íñigo Huguet) [2059994] - iwlwifi: work around reverse dependency on MEI (Íñigo Huguet) [2059994] - iwlwifi: mvm: optionally suppress assert log (Íñigo Huguet) [2059994] - iwlwifi: fw: correctly detect HW-SMEM region subtype (Íñigo Huguet) [2059994] - iwlwifi: implement reset flow for Bz devices (Íñigo Huguet) [2059994] - iwlwifi: dbg: disable ini debug in 8000 family and below (Íñigo Huguet) [2059994] - iwlwifi: support SAR GEO Offset Mapping override via BIOS (Íñigo Huguet) [2059994] - iwlwifi: pcie: retake ownership after reset (Íñigo Huguet) [2059994] - iwlwifi: mvm: always use 4K RB size by default (Íñigo Huguet) [2059994] - iwlwifi: mvm/api: define system control command (Íñigo Huguet) [2059994] - iwlwifi: bump FW API to 68 for AX devices (Íñigo Huguet) [2059994] - iwlwifi: mvm: add some missing command strings (Íñigo Huguet) [2059994] - iwlwifi: fw: add support for splitting region type bits (Íñigo Huguet) [2059994] - iwlwifi: swap 1650i and 1650s killer struct names (Íñigo Huguet) [2059994] - iwlwifi: yoyo: support for DBGC4 for dram (Íñigo Huguet) [2059994] - iwlwifi: mvm: update rate scale in moving back to assoc state (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for statistics update version 15 (Íñigo Huguet) [2059994] - iwlwifi: mvm: Add support for a new version of scan request command (Íñigo Huguet) [2059994] - iwlwifi: mvm: remove session protection upon station removal (Íñigo Huguet) [2059994] - iwlwifi: mvm: add support for PHY context command v4 (Íñigo Huguet) [2059994] - iwlwifi: fw: api: add link to PHY context command struct v1 (Íñigo Huguet) [2059994] - iwlwifi: mvm: support RLC configuration command (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: support v12 wowlan status (Íñigo Huguet) [2059994] - iwlwifi: mvm: parse firmware alive message version 6 (Íñigo Huguet) [2059994] - iwlwifi: pcie: support Bz suspend/resume trigger (Íñigo Huguet) [2059994] - iwlwifi: mvm: d3: move GTK rekeys condition (Íñigo Huguet) [2059994] - ath11k: change to use dynamic memory for channel list of scan (Íñigo Huguet) [2059994] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2059994] - ath9k: switch to rate table based lookup (Íñigo Huguet) [2059994] - iwlwifi: mvm: demote non-compliant kernel-doc header (Íñigo Huguet) [2059994] - iwlwifi: mvm: fix a possible NULL pointer deference (Íñigo Huguet) [2059994] - iwlwifi: mei: Fix spelling mistake "req_ownserhip" -> "req_ownership" (Íñigo Huguet) [2059994] - iwlwifi: mei: don't rely on the size from the shared area (Íñigo Huguet) [2059994] - iwlwifi: mei: fix linking when tracing is not enabled (Íñigo Huguet) [2059994] - ath11k: Avoid NULL ptr access during mgmt tx cleanup (Íñigo Huguet) [2059994] - rtlwifi: rtl8192de: Style clean-ups (Íñigo Huguet) [2059994] - brcmfmac: Configure keep-alive packet on suspend (Íñigo Huguet) [2059994] - ieee80211: change HE nominal packet padding value defines (Íñigo Huguet) [2059994] - cfg80211: use ieee80211_bss_get_elem() instead of _get_ie() (Íñigo Huguet) [2059994] - iwlwifi: mvm: read the rfkill state and feed it to iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mvm: add vendor commands needed for iwlmei (Íñigo Huguet) [2059994] - iwlwifi: integrate with iwlmei (Íñigo Huguet) [2059994] - iwlwifi: mei: add debugfs hooks (Íñigo Huguet) [2059994] - iwlwifi: mei: add the driver to allow cooperation with CSME (Íñigo Huguet) [2059994] - mwifiex: Ensure the version string from the firmware is 0-terminated (Íñigo Huguet) [2059994] - mwifiex: Add quirk to disable deep sleep with certain hardware revision (Íñigo Huguet) [2059994] - mwifiex: Use a define for firmware version string length (Íñigo Huguet) [2059994] - rtw88: add debugfs to force lowest basic rate (Íñigo Huguet) [2059994] - rtw88: follow the AP basic rates for tx mgmt frame (Íñigo Huguet) [2059994] - mac80211: Use memset_after() to clear tx status (Íñigo Huguet) [2059994] - mac80211: notify non-transmitting BSS of color changes (Íñigo Huguet) [2059994] - mac80211: minstrel_ht: remove unused SAMPLE_SWITCH_THR define (Íñigo Huguet) [2059994] - cfg80211: allow continuous radar monitoring on offchannel chain (Íñigo Huguet) [2059994] - cfg80211: schedule offchan_cac_abort_wk in cfg80211_radar_event (Íñigo Huguet) [2059994] - cfg80211: delete redundant free code (Íñigo Huguet) [2059994] - mac80211: Remove unused assignment statements (Íñigo Huguet) [2059994] - cfg80211: fix possible NULL pointer dereference in cfg80211_stop_offchan_radar_detection (Íñigo Huguet) [2059994] - ath11k: Use memset_startat() for clearing queue descriptors (Íñigo Huguet) [2059994] - ath11k: Fix spelling mistake "detetction" -> "detection" (Íñigo Huguet) [2059994] - Revert "ath11k: add read variant from SMBIOS for download board data" (Íñigo Huguet) [2059994] - ath11k: add read variant from SMBIOS for download board data (Íñigo Huguet) [2059994] - ath11k: calculate the correct NSS of peer for HE capabilities (Íñigo Huguet) [2059994] - ath11k: change to treat alpha code na as world wide regdomain (Íñigo Huguet) [2059994] - cfg80211: move offchan_cac_event to a dedicated work (Íñigo Huguet) [2059994] - mac80211_hwsim: Fix spelling mistake "Droping" -> "Dropping" (Íñigo Huguet) [2059994] - mac80211: introduce set_radar_offchan callback (Íñigo Huguet) [2059994] - cfg80211: implement APIs for dedicated radar detection HW (Íñigo Huguet) [2059994] - ath11k: add support for BSS color change (Íñigo Huguet) [2059994] - ath11k: add trace log support (Íñigo Huguet) [2059994] - ath11k: Add missing qmi_txn_cancel() (Íñigo Huguet) [2059994] - ath11k: Disabling credit flow for WMI path (Íñigo Huguet) [2059994] - ath11k: Increment pending_mgmt_tx count before tx send invoke (Íñigo Huguet) [2059994] - ath11k: send proper txpower and maxregpower values to firmware (Íñigo Huguet) [2059994] - ath11k: move peer delete after vdev stop of station for QCA6390 and WCN6855 (Íñigo Huguet) [2059994] - ath11k: remove return for empty tx bitrate in mac_op_sta_statistics (Íñigo Huguet) [2059994] - ath11k: enable IEEE80211_VHT_EXT_NSS_BW_CAPABLE if NSS ratio enabled (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary lock contention in tx_completion path (Íñigo Huguet) [2059994] - ath11k: add branch predictors in dp_tx path (Íñigo Huguet) [2059994] - ath11k: avoid while loop in ring selection of tx completion interrupt (Íñigo Huguet) [2059994] - ath11k: remove mod operator in dst ring processing (Íñigo Huguet) [2059994] - ath11k: allocate HAL_WBM2SW_RELEASE ring from cacheable memory (Íñigo Huguet) [2059994] - ath11k: add branch predictors in process_rx (Íñigo Huguet) [2059994] - ath11k: remove usage quota while processing rx packets (Íñigo Huguet) [2059994] - ath11k: avoid active pdev check for each msdu (Íñigo Huguet) [2059994] - ath11k: avoid additional access to ath11k_hal_srng_dst_num_free (Íñigo Huguet) [2059994] - ath11k: modify dp_rx desc access wrapper calls inline (Íñigo Huguet) [2059994] - ath11k: allocate dst ring descriptors from cacheable memory (Íñigo Huguet) [2059994] - ath11k: disable unused CE8 interrupts for ipq8074 (Íñigo Huguet) [2059994] - ath11k: avoid unnecessary BH disable lock in STA kickout event (Íñigo Huguet) [2059994] - ath11k: enable 802.11 power save mode in station mode (Íñigo Huguet) [2059994] - ath11k: convert ath11k_wmi_pdev_set_ps_mode() to use enum wmi_sta_ps_mode (Íñigo Huguet) [2059994] - ath9k: use swap() to make code cleaner (Íñigo Huguet) [2059994] - ath10k: fetch (pre-)calibration data via nvmem subsystem (Íñigo Huguet) [2059994] - Revert "ath11k: add support for WCN6855 hw2.1" (Íñigo Huguet) [2059994] - iommu/vt-d: Make DMAR_UNITS_SUPPORTED a config setting (Jerry Snitselaar) [2095498] - scsi: mpi3mr: Fix kernel-doc (Tomas Henzl) [2091878] - scsi: mpi3mr: Rework mrioc->bsg_device model to fix warnings (Tomas Henzl) [2091878] - scsi: mpi3mr: Add target device related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Add shost related sysfs attributes (Tomas Henzl) [2091878] - scsi: mpi3mr: Return error if dma_alloc_coherent() fails (Tomas Henzl) [2091878] - scsi: mpi3mr: Fix a NULL vs IS_ERR() bug in mpi3mr_bsg_init() (Tomas Henzl) [2091878] - scsi: mpi3mr: Return I/Os to an unrecoverable HBA with DID_ERROR (Tomas Henzl) [2091878] - scsi: mpi3mr: Hidden drives not removed during soft reset (Tomas Henzl) [2091878] - scsi: mpi3mr: Increase I/O timeout value to 60s (Tomas Henzl) [2091878] - scsi: mpi3mr: Update driver version to 8.0.0.69.0 (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for NVMe passthrough (Tomas Henzl) [2091878] - scsi: mpi3mr: Expose adapter state to sysfs (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for PEL commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for MPT commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Move data structures/definitions from MPI headers to uapi header (Tomas Henzl) [2091878] - scsi: mpi3mr: Add support for driver commands (Tomas Henzl) [2091878] - scsi: mpi3mr: Add bsg device support (Tomas Henzl) [2091878] - selftests/powerpc: Add PPC_FEATURE2_ARCH_3_1 and PPC_FEATURE2_EBB bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add helper to exit on failure (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add interface test for mmcra register fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr3_src fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_fcs_fch fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr2_l2l3 field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr1_comb field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmc56 using pmc5 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_fc56 field using pmc1 (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmcjce field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_pmccext bit (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0_cc56run field (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu/: Add interface test for mmcr0 exception bits (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr3 and mmcra fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macro to extract mmcr0/mmcr1 fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to extract mmcr fields (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add event_init_sampling function (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add utility functions to post process the mmap buffer (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add macros to parse event codes (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Add support for perf sampling tests (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc: Add a test of counting larx/stcx (Desnes A. Nunes do Rosario) [2071113] - selftests/powerpc/pmu: Include mmap_buffer field as part of struct event (Desnes A. Nunes do Rosario) [2071113] - [s390] net/smc: Fix af_ops of child socket pointing to released memory (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereference in smc_pnet_find_ib() (Tobias Huschle) [2043832] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Tobias Huschle) [2043832] - [s390] net/smc: Call trace_smc_tx_sendmsg when data corked (Tobias Huschle) [2043832] - [s390] net/smc: Fix cleanup when register ULP fails (Tobias Huschle) [2043832] - [s390] net/smc: fix connection leak (Tobias Huschle) [2043832] - [s390] net/smc: Use a mutex for locking "struct smc_pnettable" (Tobias Huschle) [2043832] - [s390] net/smc: unlock on error paths in __smc_setsockopt() (Tobias Huschle) [2043832] - [s390] net/smc: return ETIMEDOUT when smc_connect_clc() timeout (Tobias Huschle) [2043832] - [s390] net/smc: Add comment for smc_tx_pending (Tobias Huschle) [2043832] - [s390] net/smc: Add global configure for handshake limitation by netlink (Tobias Huschle) [2043832] - [s390] net/smc: Dynamic control handshake limitation by socket options (Tobias Huschle) [2043832] - [s390] net/smc: Limit SMC visits when handshake workqueue congested (Tobias Huschle) [2043832] - [s390] net/smc: Limit backlog connections (Tobias Huschle) [2043832] - [s390] net/smc: Make smc_tcp_listen_work() independent (Tobias Huschle) [2043832] - [s390] net/smc: Avoid overwriting the copies of clcsock callback functions (Tobias Huschle) [2043832] - [s390] Partially revert "net/smc: Add netlink net namespace support" (Tobias Huschle) [2043832] - [s390] net/smc: Cork when sendpage with MSG_SENDPAGE_NOTLAST flag (Tobias Huschle) [2043832] - [s390] net/smc: Remove corked dealyed work (Tobias Huschle) [2043832] - [s390] net/smc: Send directly when TCP_CORK is cleared (Tobias Huschle) [2043832] - [s390] net/smc: Forward wakeup to smc socket waitqueue after fallback (Tobias Huschle) [2043832] - [s390] net/smc: Transitional solution for clcsock race issue (Tobias Huschle) [2043832] - [s390] net/smc: Fix hung_task when removing SMC-R devices (Tobias Huschle) [2043832] - [s390] net/smc: Remove unused function declaration (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between SMC-R link access and clear (Tobias Huschle) [2043832] - [s390] net/smc: Introduce a new conn->lgr validity check helper (Tobias Huschle) [2043832] - [s390] net/smc: Resolve the race between link group access and termination (Tobias Huschle) [2043832] - [s390] net/smc: Reset conn->lgr when link group registration fails (Tobias Huschle) [2043832] - [s390] net/smc: add comments for smc_link_{usable|sendable} (Tobias Huschle) [2043832] - [s390] net/smc: remove redundant re-assignment of pointer link (Tobias Huschle) [2043832] - [s390] net/smc: Introduce TCP ULP support (Tobias Huschle) [2043832] - [s390] net/smc: Add net namespace for tracepoints (Tobias Huschle) [2043832] - [s390] net/smc: Print net namespace in log (Tobias Huschle) [2043832] - [s390] net/smc: Add netlink net namespace support (Tobias Huschle) [2043832] - [s390] net/smc: Introduce net namespace support for linkgroup (Tobias Huschle) [2043832] - [s390] net/smc: Use the bitmap API when applicable (Tobias Huschle) [2043832] - [s390] net/smc: fix kernel panic caused by race of smc_sock (Tobias Huschle) [2043832] - [s390] net/smc: don't send CDC/LLC message if link not ready (Tobias Huschle) [2043832] - [s390] net/smc: fix using of uninitialized completions (Tobias Huschle) [2043832] - [s390] net/smc: Prevent smc_release() from long blocking (Tobias Huschle) [2043832] - [s390] net/smc: Clear memory when release and reuse buffer (Tobias Huschle) [2043832] - [s390] net/smc: Keep smc_close_final rc during active close (Tobias Huschle) [2043832] - [s390] net/smc: fix wrong list_del in smc_lgr_cleanup_early (Tobias Huschle) [2043832] - [s390] net/smc: Don't call clcsock shutdown twice when smc shutdown (Tobias Huschle) [2043832] - [s390] net/smc: Fix loop in smc_listen (Tobias Huschle) [2043832] - [s390] net/smc: Fix NULL pointer dereferencing in smc_vlan_by_tcpsk() (Tobias Huschle) [2043832] - [s390] net/smc: Ensure the active closing peer first closes clcsock (Tobias Huschle) [2043832] - [s390] net/smc: Clean up local struct sock variables (Tobias Huschle) [2043832] - [s390] net/smc: Avoid warning of possible recursive locking (Tobias Huschle) [2043832] - [s390] net/smc: Make sure the link_id is unique (Tobias Huschle) [2043832] - [s390] net/smc: Transfer remaining wait queue entries during fallback (Tobias Huschle) [2043832] - [s390] net/smc: fix sk_refcnt underflow on linkdown and fallback (Tobias Huschle) [2043832] - [s390] net/smc: Print function name in smcr_link_down tracepoint (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for smcr link down (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoints for tx and rx msg (Tobias Huschle) [2043832] - [s390] net/smc: Introduce tracepoint for fallback (Tobias Huschle) [2043832] - [s390] net/smc: Correct spelling mistake to TCPF_SYN_RECV (Tobias Huschle) [2043832] - [s390] net/smc: Fix smc_link->llc_testlink_time overflow (Tobias Huschle) [2043832] - [s390] net/smc: stop links when their GID is removed (Tobias Huschle) [2043832] - [s390] net/smc: add netlink support for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: extend LLC layer for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add v2 support to the work request layer (Tobias Huschle) [2043832] - [s390] net/smc: retrieve v2 gid from IB device (Tobias Huschle) [2043832] - [s390] net/smc: add v2 format of CLC decline message (Tobias Huschle) [2043832] - [s390] net/smc: add listen processing for SMC-Rv2 (Tobias Huschle) [2043832] - [s390] net/smc: add SMC-Rv2 connection establishment (Tobias Huschle) [2043832] - [s390] net/smc: prepare for SMC-Rv2 connection (Tobias Huschle) [2043832] - [s390] net/smc: save stack space and allocate smc_init_info (Tobias Huschle) [2043832] - [s390] net/smc: add generic netlink support for system EID (Tobias Huschle) [2043832] - [s390] net/smc: keep static copy of system EID (Tobias Huschle) [2043832] - [s390] net/smc: add support for user defined EIDs (Tobias Huschle) [2043832] - [s390] net/smc: Allow SMC-D 1MB DMB allocations (Tobias Huschle) [2043832] - [s390] net/smc: no need to flush smcd_dev's event_wq before destroying it (Tobias Huschle) [2043832] - [s390] net/smc: avoid possible duplicate dmb unregistration (Tobias Huschle) [2043832] - [s390] net/smc: remove device from smcd_dev_list after failed device_add() (Tobias Huschle) [2043832]- bnxt_en: parse and report result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: Fix unnecessary dropping of RX packets (Ken Cox) [2043782] - bnxt_en: Initiallize bp->ptp_lock first before using it (Ken Cox) [2043782] - bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag (Ken Cox) [2043782] - bnxt_en: Prevent XDP redirect from running when stopping TX queue (Ken Cox) [2043782 1944997] - bnxt_en: reserve space inside receive page for skb_shared_info (Ken Cox) [2043782 1944997] - bnxt_en: Synchronize tx when xdp redirects happen on same ring (Ken Cox) [2043782 1944997] - net: bnxt_ptp: fix compilation error (Ken Cox) [2043782] - bnxt: revert hastily merged uAPI aberrations (Ken Cox) [2043782] - bnxt_en: add an nvm test for hw diagnose (Ken Cox) [2043782] - bnxt_en: implement hw health reporter (Ken Cox) [2043782] - bnxt_en: Do not destroy health reporters during reset (Ken Cox) [2043782] - bnxt_en: Eliminate unintended link toggle during FW reset (Ken Cox) [2043782] - bnxt_en: Properly report no pause support on some cards (Ken Cox) [2043782] - bnxt_en: introduce initial link state of unknown (Ken Cox) [2043782] - bnxt_en: parse result field when NVRAM package install fails (Ken Cox) [2043782] - bnxt_en: add more error checks to HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: refactor error handling of HWRM_NVM_INSTALL_UPDATE (Ken Cox) [2043782] - bnxt_en: Increase firmware message response DMA wait time (Ken Cox) [2043782] - bnxt_en: Fix incorrect multicast rx mask setting when not requested (Ken Cox) [2043782] - bnxt_en: Fix occasional ethtool -t loopback test failures (Ken Cox) [2043782] - bnxt_en: Fix offline ethtool selftest with RDMA enabled (Ken Cox) [2043782] - bnxt_en: Fix active FEC reporting to ethtool (Ken Cox) [2043782] - bnxt_en: Fix devlink fw_activate (Ken Cox) [2043782] - bnxt_en: Restore the resets_reliable flag in bnxt_open() (Ken Cox) [2043782] - bnxt_en: Handle async event when the PHC is updated in RTC mode (Ken Cox) [2043782] - bnxt_en: Implement .adjtime() for PTP RTC mode (Ken Cox) [2043782] - bnxt_en: Add driver support to use Real Time Counter for PTP (Ken Cox) [2043782] - bnxt_en: PTP: Refactor PTP initialization functions (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.73 (Ken Cox) [2043782] - bnxt_en: improve firmware timeout messaging (Ken Cox) [2043782] - bnxt_en: use firmware provided max timeout for messages (Ken Cox) [2043782] - bnxt_en: improve VF error messages when PF is unavailable (Ken Cox) [2043782] - bnxt_en: add dynamic debug support for HWRM messages (Ken Cox) [2043782] - bnxt_en: Use page frag RX buffers for better software GRO performance (Ken Cox) [2043782] - bnxt_en: convert to xdp_do_flush (Ken Cox) [2043782] - bnxt_en: Support CQE coalescing mode in ethtool (Ken Cox) [2043782] - bnxt_en: Support configurable CQE coalescing mode (Ken Cox) [2043782] - bnxt_en: enable interrupt sampling on 5750X for DIM (Ken Cox) [2043782] - bnxt_en: Log error report for dropped doorbell (Ken Cox) [2043782] - bnxt_en: Add event handler for PAUSE Storm event (Ken Cox) [2043782] - flow_offload: reject to offload tc actions in offload drivers (Ken Cox) [2043782] - bnxt_en: Fix compile error regression when CONFIG_BNXT_SRIOV is not set (Ken Cox) [2043782] - bnxt_en: fix format specifier in live patch error message (Ken Cox) [2043782] - bnxt_en: extend RTNL to VF check in devlink driver_reinit (Ken Cox) [2043782] - bnxt_en: avoid newline at end of message in NL_SET_ERR_MSG_MOD (Ken Cox) [2043782] - bnxt_en: Remove not used other ULP define (Ken Cox) [2043782] - bnxt_en: Provide stored devlink "fw" version on older firmware (Ken Cox) [2043782] - bnxt_en: implement firmware live patching (Ken Cox) [2043782] - bnxt_en: Update firmware interface to 1.10.2.63 (Ken Cox) [2043782] - bnxt_en: implement dump callback for fw health reporter (Ken Cox) [2043782] - bnxt_en: extract coredump command line from current task (Ken Cox) [2043782] - bnxt_en: Retrieve coredump and crashdump size via FW command (Ken Cox) [2043782] - bnxt_en: Add compression flags information in coredump segment header (Ken Cox) [2043782] - bnxt_en: move coredump functions into dedicated file (Ken Cox) [2043782] - bnxt_en: Refactor coredump functions (Ken Cox) [2043782] - bnxt_en: improve fw diagnose devlink health messages (Ken Cox) [2043782] - bnxt_en: consolidate fw devlink health reporters (Ken Cox) [2043782] - bnxt_en: remove fw_reset devlink health reporter (Ken Cox) [2043782] - bnxt_en: improve error recovery information messages (Ken Cox) [2043782] - bnxt_en: add enable_remote_dev_reset devlink parameter (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload fw_activate (Ken Cox) [2043782] - bnxt_en: implement devlink dev reload driver_reinit (Ken Cox) [2043782] - bnxt_en: refactor cancellation of resource reservations (Ken Cox) [2043782] - bnxt_en: refactor printing of device info (Ken Cox) [2043782] - bnxt: use netif_is_rxfh_configured instead of open code (Ken Cox) [2043782] - ethernet: use eth_hw_addr_set() (Ken Cox) [2043782] - bnxt_en: Fix TX timeout when TX ring size is set to the smallest (Ken Cox) [2043782] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Ken Cox) [2043782] - bnxt_en: make bnxt_free_skbs() safe to call after bnxt_free_mem() (Ken Cox) [2043782] - netfilter: nat: really support inet nat without l3 address (Phil Sutter) [2092424] - netfilter: nf_tables: use kfree_rcu(ptr, rcu) to release hooks in clean_net path (Phil Sutter) [2094236] - netfilter: nf_tables: double hook unregistration in netns path (Phil Sutter) [2094236] - video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1 (Mohammed Gamal) [1948442] - cpufreq: intel_pstate: Use firmware default EPP (Steve Best) [2072671] - cpufreq: intel_pstate: Update cpuinfo.max_freq on HWP_CAP changes (Steve Best) [2072671] - cpufreq: intel_pstate: Update EPP for AlderLake mobile (Steve Best) [2072671] - cpufreq: intel_pstate: Drop redundant intel_pstate_get_hwp_cap() call (Steve Best) [2072671] - cpufreq: intel_pstate: ITMT support for overclocked system (Steve Best) [2072671] - cpufreq: intel_pstate: Fix active mode offline/online EPP handling (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP Status during HWP Interrupt enable (Steve Best) [2072671] - cpufreq: intel_pstate: Fix unchecked MSR 0x773 access (Steve Best) [2072671] - cpufreq: intel_pstate: Clear HWP desired on suspend/shutdown and offline (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpufreq: intel_pstate: Override parameters if HWP forced by BIOS (Steve Best) [2072671] - Revert "cpufreq: intel_pstate: Process HWP Guaranteed change notification" (Steve Best) [2072671] - cpufreq: intel_pstate: Process HWP Guaranteed change notification (Steve Best) [2072671] - cpuidle: intel_idle: Drop redundant backslash at line end (Steve Best) [2072893] - intel_idle: add core C6 optimization for SPR (Steve Best) [2072893] - intel_idle: add 'preferred_cstates' module argument (Steve Best) [2072893] - intel_idle: add SPR support (Steve Best) [2072893] - intel_idle: enable interrupts before C1 on Xeons (Steve Best) [2072893]- [s390] s390/airq: use DMA memory for summary indicators (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Provide target domain for EP11 cprbs to scheduling function (Tobias Huschle) [2043905] - [s390] s390/zcrypt: change reply buffer size offering (Tobias Huschle) [2043905] - [s390] s390/zcrypt: Support CPRB minor version T7 (Tobias Huschle) [2043905] - [s390] s390/zcrypt: handle checkstopped cards with new state (Tobias Huschle) [2043905] - [s390] s390/zcrypt: CEX8S exploitation support (Tobias Huschle) [2043905] - [s390] s390/ap/zcrypt: debug feature improvements (Tobias Huschle) [2043905] - [s390] s390/zcrypt: rework of debug feature messages (Tobias Huschle) [2043905] - powerpc/perf: Fix the threshold compare group constraint for power10 (Steve Best) [2090058] - arch/x86: Disable system wide bus lock rate limiting (Prarit Bhargava) [2028252] - rtnetlink: return ENODEV when IFLA_ALT_IFNAME is used in dellink (Xin Long) [2062780] - rtnetlink: enable alt_ifname for setlink/newlink (Xin Long) [2062780] - rtnetlink: return ENODEV when ifname does not exist and group is given (Xin Long) [2062780] - rtnetlink: Return correct error on changing device netns (Xin Long) [2062780] - net: remove the new_ifindex argument from dev_change_net_namespace (Xin Long) [2062780] - net: Allow to specify ifindex when device is moved to another namespace (Xin Long) [2062780] - net: rtnetlink: add possibility to use alternative names as message handle (Xin Long) [2062780] - net: rtnetlink: introduce helper to get net_device instance by ifname (Xin Long) [2062780] - net: rtnetlink: unify the code in __rtnl_newlink get dev with the rest (Xin Long) [2062780] - net: rtnetlink: put alternative names to getlink message (Xin Long) [2062780] - block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern (Ewan D. Milne) [2049198] {CVE-2022-0494} - [s390] s390/dasd: prevent double format of tracks for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: fix data corruption for ESE devices (Mete Durlu) [2094296] - [s390] s390/dasd: Fix read inconsistency for ESE DASD devices (Mete Durlu) [2094294] - [s390] s390/dasd: Fix read for ESE with blksize < 4k (Mete Durlu) [2094294] - xfs: validate inode fork size against fork format (Andrey Albershteyn) [2089447] - selftests/tc-testing: match any qdisc type (Petr Oros) [2021843] - tc-testing: Add control-plane selftests for sch_mq (Petr Oros) [2021843] - netdevsim: Zero-initialize memory for new map's value in function nsim_bpf_map_alloc (Petr Oros) [2021843] - netdevsim: don't overwrite read only ethtool parms (Petr Oros) [2021843] - netdevsim: fix uninit value in nsim_drv_configure_vfs() (Petr Oros) [2021843] - netdevsim: rename 'driver' entry points (Petr Oros) [2021843] - netdevsim: move max vf config to dev (Petr Oros) [2021843] - netdevsim: move details of vf config to dev (Petr Oros) [2021843] - netdevsim: move vfconfig to nsim_dev (Petr Oros) [2021843] - netdevsim: take rtnl_lock when assigning num_vfs (Petr Oros) [2021843] - netdevsim: Protect both reload_down and reload_up paths (Petr Oros) [2021843] - netdevsim: make array res_ids static const, makes object smaller (Petr Oros) [2021843] - netdevsim: Add multi-queue support (Petr Oros) [2021843] - net: netdevsim: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Petr Oros) [2021843] - netdevsim: delete unnecessary debugfs checking (Petr Oros) [2021843] - netdevsim: switch to memdup_user_nul() (Petr Oros) [2021843] - netdevsim: init u64 stats for 32bit hardware (Petr Oros) [2021843] - dm: fix bio length of empty flush (Ming Lei) [2090940] - block: initialize the target bio in __bio_clone_fast (Ming Lei) [2090940] - dm: use bio_clone_fast in alloc_io/alloc_tio (Ming Lei) [2090940] - block: clone crypto and integrity data in __bio_clone_fast (Ming Lei) [2090940] - dm-cache: remove __remap_to_origin_clear_discard (Ming Lei) [2090940] - dm: simplify the single bio fast path in __send_duplicate_bios (Ming Lei) [2090940] - dm: retun the clone bio from alloc_tio (Ming Lei) [2090940] - dm: pass the bio instead of tio to __map_bio (Ming Lei) [2090940] - dm: move cloning the bio into alloc_tio (Ming Lei) [2090940] - dm: fold __send_duplicate_bios into __clone_and_map_simple_bio (Ming Lei) [2090940] - dm: fold clone_bio into __clone_and_map_data_bio (Ming Lei) [2090940] - dm: add a clone_to_tio helper (Ming Lei) [2090940] - block: make bio_crypt_clone() able to fail (Ming Lei) [2090940] - perf/x86/uncore: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/uncore: Clean up uncore_pci_ids[] (Michael Petlan) [2088831] - perf/x86/uncore: Add Raptor Lake uncore support (Michael Petlan) [2088831] - perf/x86/cstate: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/cstate: Add Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86/msr: Add Raptor Lake CPU support (Michael Petlan) [2088831] - perf/x86: Add new Alder Lake and Raptor Lake support (Michael Petlan) [2088831] - perf/x86: Add Intel Raptor Lake support (Michael Petlan) [2088831] - x86/cpu: Add new Alderlake and Raptorlake CPU model numbers (Michael Petlan) [2088831] - x86/intel: Add common OPTDIFFs (Michael Petlan) [2088831] - x86/cpu: Explain Intel model naming convention (Michael Petlan) [2088831] - KVM: s390: vsie/gmap: reduce gmap_rmap overhead (Thomas Huth) [2072387] - KVM: s390x: fix SCK locking (Thomas Huth) [2072387] - s390/kvm: use union tod_clock (Thomas Huth) [2072387] - s390/time: introduce new store_tod_clock_ext() (Thomas Huth) [2072387] - s390/time: introduce union tod_clock (Thomas Huth) [2072387] - KVM: s390: Clarify SIGP orders versus STOP/RESTART (Thomas Huth) [2043868] - KVM: s390: Clear valid_wakeup in kvm_s390_handle_wait(), not in arch hook (Thomas Huth) [2072387] - KVM: s390: Ensure kvm_arch_no_poll() is read once when blocking vCPU (Thomas Huth) [2072387] - KVM: s390: Introduce kvm_s390_get_gfn_end() (Thomas Huth) [2072387] - KVM: Integrate gfn_to_memslot_approx() into search_memslots() (Thomas Huth) [2072387] - KVM: s390: Use kvm_get_vcpu() instead of open-coded access (Thomas Huth) [2072387] - KVM: s390: add debug statement for diag 318 CPNC data (Thomas Huth) [2072387] - KVM: s390: pv: properly handle page flags for protected guests (Thomas Huth) [2072387] - KVM: s390: Add a routine for setting userspace CPU state (Thomas Huth) [2072387] - net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe() (Íñigo Huguet) [2042840] - net: sfc: fix memory leak due to ptp channel (Íñigo Huguet) [2042840] - net: sfc: fix using uninitialized xdp tx_queue (Íñigo Huguet) [2042840] - sfc: Do not free an empty page_ring (Íñigo Huguet) [2042840] - net: sfc: add missing xdp queue reinitialization (Íñigo Huguet) [2042840] - sfc: Avoid NULL pointer dereference on systems without numa awareness (Íñigo Huguet) [2042840] - sfc: extend the locking on mcdi->seqno (Íñigo Huguet) [2042840] - sfc: set affinity hints in local NUMA node only (Íñigo Huguet) [2042840] - sfc: default config to 1 channel/core in local NUMA node only (Íñigo Huguet) [2042840] - sfc: The size of the RX recycle ring should be more flexible (Íñigo Huguet) [2042840] - sfc: Use swap() instead of open coding it (Íñigo Huguet) [2042840] - ethernet/sfc: remove redundant rc variable (Íñigo Huguet) [2042840] - PCI/ACPI: Allow D3 only if Root Port can signal and wake from D3 (Myron Stowe) [2015785] - thunderbolt: Do not make DROM read success compulsory (Myron Stowe) [2015785] - thunderbolt: Do not resume routers if UID is not set (Myron Stowe) [2015785] - thunderbolt: Retry DROM reads for more failure scenarios (Myron Stowe) [2015785] - PCI/ACPI: Replace acpi_bus_get_device() with acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - ACPI: scan: Introduce acpi_fetch_acpi_dev() (Myron Stowe) [2015785] - PCI: PM: Fix ordering of operations in pci_back_from_sleep() (Myron Stowe) [2015785] - PCI: PM: Do not call platform_pci_power_manageable() unnecessarily (Myron Stowe) [2015785] - PCI: PM: Make pci_choose_state() call pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Rearrange pci_target_state() (Myron Stowe) [2015785] - PCI: PM: Simplify acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: PM: Drop struct pci_platform_pm_ops (Myron Stowe) [2015785] - PCI: ACPI: PM: Do not use pci_platform_pm_ops for ACPI (Myron Stowe) [2015785] - PCI: PM: Do not use pci_platform_pm_ops for Intel MID PM (Myron Stowe) [2015785] - ACPI: glue: Look for ACPI bus type only if ACPI companion is not known (Myron Stowe) [2015785] - ACPI: glue: Drop cleanup callback from struct acpi_bus_type (Myron Stowe) [2015785] - PCI: ACPI: Drop acpi_pci_bus (Myron Stowe) [2015785] - PCI: ACPI: Check parent pointer in acpi_pci_find_companion() (Myron Stowe) [2015785] - PCI/ACPI: Don't reset a fwnode set by OF (Myron Stowe) [2015785] - PCI: VMD: ACPI: Make ACPI companion lookup work for VMD bus (Myron Stowe) [2015785] - PCI: Change the type of probe argument in reset functions (Myron Stowe) [2015785] - PCI: Add support for ACPI _RST reset method (Myron Stowe) [2015785] - PCI: Setup ACPI fwnode early and at the same time with OF (Myron Stowe) [2015785] - PCI: Use acpi_pci_power_manageable() (Myron Stowe) [2015785] - PCI: Add pci_set_acpi_fwnode() to set ACPI_COMPANION (Myron Stowe) [2015785] - PCI: Allow userspace to query and set device reset mechanism (Myron Stowe) [2015785] - PCI: Remove reset_fn field from pci_dev (Myron Stowe) [2015785] - PCI: Add array to track reset method ordering (Myron Stowe) [2015785] - PCI: Add pcie_reset_flr() with 'probe' argument (Myron Stowe) [2015785] - PCI: Cache PCIe Device Capabilities register (Myron Stowe) [2015785] - driver core: Split device_platform_notify() (Myron Stowe) [2015785] - software nodes: Split software_node_notify() (Myron Stowe) [2015785] - PCI: PM: Enable PME if it can be signaled from D3cold (Myron Stowe) [2015785] - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently (Myron Stowe) [2015785] - PCI: Use pci_update_current_state() in pci_enable_device_flags() (Myron Stowe) [2015785] - PCI: Add pci_reset_bus_function() Secondary Bus Reset interface (Myron Stowe) [2015785] - ACPI: scan: Rearrange code related to acpi_get_device_data() (Myron Stowe) [2015785] - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI (Myron Stowe) [2015785] - crypto: cavium/nitrox - use pcie_flr instead of duplicating it (Myron Stowe) [2015785] - NFSv4 only print the label when its queried (Scott Mayhew) [2030827] - NFSv4.1 provide mount option to toggle trunking discovery (Scott Mayhew) [2030827] - NFSv4.1 test and add 4.1 trunking transport (Scott Mayhew) [2030827] - SUNRPC allow for unspecified transport time in rpc_clnt_add_xprt (Scott Mayhew) [2030827] - NFSv4 handle port presence in fs_location server string (Scott Mayhew) [2030827] - NFSv4 expose nfs_parse_server_name function (Scott Mayhew) [2030827] - NFSv4.1 query for fs_location attr on a new file system (Scott Mayhew) [2030827] - NFSv4 store server support for fs_location attribute (Scott Mayhew) [2030827] - NFSv4 remove zero number of fs_locations entries error check (Scott Mayhew) [2030827] - NFSv4.1 add network transport when session trunking is detected (Scott Mayhew) [2030827] - SUNRPC enforce creation of no more than max_connect xprts (Scott Mayhew) [2030827] - NFSv4 introduce max_connect mount options (Scott Mayhew) [2030827] - SUNRPC add xps_nunique_destaddr_xprts to xprt_switch_info in sysfs (Scott Mayhew) [2030827] - SUNRPC keep track of number of transports to unique addresses (Scott Mayhew) [2030827] - powerpc/papr_scm: Make 'perf_stats' invisible if perf-stats unavailable (Diego Domingos) [1986188] - powerpc/papr_scm: Fix warnings about undeclared variable (Diego Domingos) [1986188] - VMCI: Add support for ARM64 (Cathy Avery) [2080095] - VMCI: Release notification_bitmap in error path (Cathy Avery) [2080095] - VMCI: Check exclusive_vectors when freeing interrupt 1 (Cathy Avery) [2080095] - VMCI: Fix some error handling paths in vmci_guest_probe_device() (Cathy Avery) [2080095] - VMCI: No need to clear memory after a dma_alloc_coherent() call (Cathy Avery) [2080095] - VMCI: Fix the description of vmci_check_host_caps() (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams receive (Cathy Avery) [2080095] - VMCI: dma dg: add support for DMA datagrams sends (Cathy Avery) [2080095] - VMCI: dma dg: allocate send and receive buffers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: register dummy IRQ handlers for DMA datagrams (Cathy Avery) [2080095] - VMCI: dma dg: set OS page size (Cathy Avery) [2080095] - VMCI: dma dg: whitespace formatting change for vmci register defines (Cathy Avery) [2080095] - VMCI: dma dg: detect DMA datagram capability (Cathy Avery) [2080095] - VMCI: Use BIT() macro for bit definitions (Cathy Avery) [2080095] - VMCI: dma dg: add MMIO access to registers (Cathy Avery) [2080095] - misc: vmw_vmci: Switch to kvfree_rcu() API (Cathy Avery) [2080095] - VMCI: fix NULL pointer dereference when unmapping queue pair (Cathy Avery) [2080095] - misc: vmci: remove redundant variable is_local (Cathy Avery) [2080095] - misc: vmw_vmci: return the correct errno code (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_datagram payload (Cathy Avery) [2080095] - misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct (Cathy Avery) [2080095] - vmci_host: print unexpanded names of ioctl requests in debug messages (Cathy Avery) [2080095] - drivers/misc/vmw_vmci: restrict too big queue size in qp_host_alloc_queue (Cathy Avery) [2080095] - VMCI: Enforce queuepair max size for IOCTL_VMCI_QUEUEPAIR_ALLOC (Cathy Avery) [2080095] - VMCI: Use set_page_dirty_lock() when unregistering guest memory (Cathy Avery) [2080095] - misc/vmw_vmci: fix typo (Cathy Avery) [2080095] - misc: vmw_vmci: fix kernel info-leak by initializing dbells in vmci_ctx_get_chkpt_doorbells() (Cathy Avery) [2080095] - VMCI: check return value of get_user_pages_fast() for errors (Cathy Avery) [2080095] - vmci_host: get rid of pointless access_ok() (Cathy Avery) [2080095] - treewide: Add SPDX license identifier - Makefile/Kconfig (Cathy Avery) [2080095] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Cathy Avery) [2080095] - VMCI: Use memdup_user() rather than duplicating its implementation (Cathy Avery) [2080095] - VMCI: remove set but not used variable 'cid' (Cathy Avery) [2080095] - vmci: type promotion bug in qp_host_get_user_memory() (Cathy Avery) [2080095]- misc: pvpanic: introduce device capability (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: add crash loaded event (Emanuele Giuseppe Esposito) [2088457] - misc: pvpanic: move bit definition to uapi header file (Emanuele Giuseppe Esposito) [2088457] - rfkill: make new event layout opt-in (Jose Ignacio Tornos Martinez) [2023175] - lib/sbitmap: fix sb->map leak (Ming Lei) [2093549] - openvswitch: fix OOB access in reserve_sfa_size() (Antoine Tenart) [2082023] - net: openvswitch: don't send internal clone attribute to the userspace. (Antoine Tenart) [2082023 2085509] - openvswitch: Add recirc_id to recirc warning (Antoine Tenart) [2082023] - openvswitch: Fixed nd target mask field in the flow dump. (Antoine Tenart) [2082023] - net: openvswitch: Remove redundant if statements (Antoine Tenart) [2082023] - netfilter: nf_tables: disallow non-stateful expression in sets earlier (Phil Sutter) [2092987] {CVE-2022-1966} - cachefiles: Drop superfluous readpages aops NULL check (Dave Wysochanski) [2083136] - audit: fix AUDIT_DISABLED undeclared error when AUDITSYSCALL unconfigured (Richard Guy Briggs) [2035123] - audit: log AUDIT_TIME_* records only from rules (Richard Guy Briggs) [2035123] - audit: improve audit queue handling when "audit=1" on cmdline (Richard Guy Briggs) [2035123] - audit: replace zero-length array with flexible-array member (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in audit_[send|make]_reply() (Richard Guy Briggs) [2035123] - audit: ensure userspace is penalized the same as the kernel when under pressure (Richard Guy Briggs) [2035123] - audit: use struct_size() helper in kmalloc() (Richard Guy Briggs) [2035123] - audit: improve robustness of the audit queue handling (Richard Guy Briggs) [2035123] - audit: return early if the filter rule has a lower priority (Richard Guy Briggs) [2035123] - lsm_audit: avoid overloading the "key" audit field (Richard Guy Briggs) [2035123] - audit: Convert to SPDX identifier (Richard Guy Briggs) [2035123] - audit: rename struct node to struct audit_node to prevent future name collisions (Richard Guy Briggs) [2035123] - audit: prepare audit_context for use in calling contexts beyond syscalls (Richard Guy Briggs) [2035123] - audit: fix possible null-pointer dereference in audit_filter_rules (Richard Guy Briggs) [2035123] - audit: add header protection to kernel/audit.h (Richard Guy Briggs) [2035123] - audit: remove unnecessary 'ret' initialization (Richard Guy Briggs) [2035123] - audit: remove trailing spaces and tabs (Richard Guy Briggs) [2035123] - audit: Use list_move instead of list_del/list_add (Richard Guy Briggs) [2035123] - audit: Rename enum audit_state constants to avoid AUDIT_DISABLED redefinition (Richard Guy Briggs) [2035123] - selftests/bpf: Fix btf_dump test under new clang (Yauheni Kaliuta) [2087050] - perf: Fix sys_perf_event_open() race against self (Michael Petlan) [2087949] - scsi: fnic: Finish scsi_cmnd before dropping the spinlock (John Meneghini) [2062905] - [s390] s390/setup: Fix secure ipl message (Mete Durlu) [2058619] - perf evlist: Fix failed to use cpu list for uncore events (Michael Petlan) [2088835] - perf tools: Enable on a list of CPUs for hybrid (Michael Petlan) [2088835] - perf tools: Create hybrid flag in target (Michael Petlan) [2088835] - libperf: Add perf_cpu_map__default_new() (Michael Petlan) [2088835] - drm/i915: Stop force enabling pipe bottom color gammma/csc (Foggy Liu) [2054487] - blk-mq: fix blk_mq_flush_plug_list (Ming Lei) [2088397] - kernel/resource: move and rename IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - powerpc/numa: Handle partially initialized numa nodes (Nico Pache) [2028988] - mm: make free_area_init_node aware of memory less nodes (Nico Pache) [2028988] - mm, memory_hotplug: reorganize new pgdat initialization (Nico Pache) [2028988] - mm, memory_hotplug: drop arch_free_nodedata (Nico Pache) [2028988] - mm: handle uninitialized numa nodes gracefully (Nico Pache) [2028988] - mm, memory_hotplug: make arch_alloc_nodedata independent on CONFIG_MEMORY_HOTPLUG (Nico Pache) [2028988] - kexec_file: don't place kexec images on IORESOURCE_MEM_DRIVER_MANAGED (Nico Pache) [2028988] - mm/memory_hotplug: handle memblock_add_node() failures in add_memory_resource() (Nico Pache) [2028988] - mm/memory_hotplug: introduce add_memory_driver_managed() (Nico Pache) [2028988] - mm/memory_hotplug: handle memblocks only with CONFIG_ARCH_KEEP_MEMBLOCK (Nico Pache) [2028988] - mm/memory_hotplug: set node_start_pfn of hotadded pgdat to 0 (Nico Pache) [2028988] - mm/hotplug: reorder memblock_[free|remove]() calls in try_remove_memory() (Nico Pache) [2028988] - mm: memblock: make keeping memblock memory opt-in rather than opt-out (Nico Pache) [2028988] - [s390] s390/cpumf: add new extended counter set for IBM z16 (Mete Durlu) [2047728]- [s390] s390/qdio: clarify logical vs absolute in QIB's kerneldoc (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded sanity check in qdio_do_sqbs() (Mete Durlu) [2043836] - [s390] s390/qdio: split do_QDIO() (Mete Durlu) [2043836] - [s390] s390/qdio: split qdio_inspect_queue() (Mete Durlu) [2043836] - [s390] s390/qdio: clarify handler logic for qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: clean up access to queue in qdio_handle_activate_check() (Mete Durlu) [2043836] - [s390] s390/qdio: avoid allocating the qdio_irq with GFP_DMA (Mete Durlu) [2043836] - [s390] s390/qdio: improve handling of CIWs (Mete Durlu) [2043836] - [s390] s390/qdio: remove QDIO_SBAL_SIZE macro (Mete Durlu) [2043836] - [s390] scsi: zfcp: fix kernel doc comments (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused support for SLIB parameters (Mete Durlu) [2043836] - [s390] s390/qdio: consolidate QIB code (Mete Durlu) [2043836] - [s390] s390/qdio: use dev_info() in qdio_print_subchannel_info() (Mete Durlu) [2043836] - [s390] s390/qdio: fine-tune the queue sync (Mete Durlu) [2043836] - [s390] s390/qdio: clean up SIGA capability tracking (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused sync-after-IRQ infrastructure (Mete Durlu) [2043836] - [s390] s390/qdio: use absolute data address in ESTABLISH ccw (Mete Durlu) [2043836] - [s390] s390/qdio: remove unused macros (Mete Durlu) [2043836] - [s390] s390/qdio: clarify reporting of errors to the drivers (Mete Durlu) [2043836] - [s390] s390/qdio: remove unneeded siga-sync for Output Queue (Mete Durlu) [2043836] - [s390] s390/qdio: remove remaining tasklet & timer code (Mete Durlu) [2043836] - ice: clear stale Tx queue settings before configuring (Petr Oros) [2079926] - ice: fix crash when writing timestamp on RX rings (Petr Oros) [2079926] - ice: Fix race during aux device (un)plugging (Petr Oros) [2079926] - ice: fix PTP stale Tx timestamps cleanup (Petr Oros) [2079926] - ice: ice_sched: fix an incorrect NULL check on list iterator (Petr Oros) [2079926] - ice: fix use-after-free when deinitializing mailbox snapshot (Petr Oros) [2079926] - ice: wait 5 s for EMP reset after firmware flash (Petr Oros) [2079926] - ice: Protect vf_state check by cfg_lock in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix incorrect locking in ice_vc_process_vf_msg() (Petr Oros) [2079926] - ice: Fix memory leak in ice_get_orom_civd_data() (Petr Oros) [2079926] - ice: fix crash in switchdev mode (Petr Oros) [2079926] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Petr Oros) [2079926] - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap (Petr Oros) [2079926] - ice: clear cmd_type_offset_bsz for TX rings (Petr Oros) [2079926] - ice: xsk: fix VSI state check in ice_xsk_wakeup() (Petr Oros) [2079926] - ice: synchronize_rcu() when terminating rings (Petr Oros) [2079926] - ice: Do not skip not enabled queues in ice_vc_dis_qs_msg (Petr Oros) [2079926] - ice: Set txq_teid to ICE_INVAL_TEID on ring creation (Petr Oros) [2079926] - ice: Fix broken IFF_ALLMULTI handling (Petr Oros) [2079926] - ice: Fix MAC address setting (Petr Oros) [2079926] - redhat/configs: Remove CONFIG_MFD_INTEL_PMT (Prarit Bhargava) [2058805] - redhat/configs: Add CONFIG_INTEL_VSEC (Prarit Bhargava) [2058805] - platform/x86/intel: Move intel_pmt from MFD to Auxiliary Bus (Prarit Bhargava) [2058805] - PCI: Add #defines for accessing PCIe DVSEC fields (Prarit Bhargava) [2058805] - platform/x86: intel_pmt_telemetry: Ignore zero sized entries (Prarit Bhargava) [2058805] - platform/x86/intel: pmt: Use y instead of objs in Makefile (Prarit Bhargava) [2058805] - platform/x86/intel: Move Intel PMT drivers to new subfolder (Prarit Bhargava) [2058805] - dlm: fix plock invalid read (Alexander Aring) [2053095] - NFS: LOOKUP_DIRECTORY is also ok with symlinks (Scott Mayhew) [2059727] - NFSv4: nfs_atomic_open() can race when looking up a non-regular file (Scott Mayhew) [2059727] - NFSv4: Handle case where the lookup of a directory fails (Scott Mayhew) [2059727] - redhat: always tag non-maintainer builds with .gXXXX (Jarod Wilson) - mm, compaction: fast_find_migrateblock() should return pfn in the target zone (Rafael Aquini) [2067130] - [s390] s390/pci: expose a PCI device's UID as its index (Mete Durlu) [1939916] - [s390] s390/pci: expose UID uniqueness guarantee (Mete Durlu) [1939916] - [s390] s390/pci: Documentation for zPCI (Mete Durlu) [1939916] - powerpc/fadump: print start of preserved area (Diego Domingos) [2075092] - powerpc/fadump: align destination address to pagesize (Diego Domingos) [2075092] - powerpc/fadump: fix PT_LOAD segment for boot memory area (Diego Domingos) [2075092] - dmaengine: idxd: make idxd_wq_enable() return 0 if wq is already enabled (Jerry Snitselaar) [2083414] - dmaengine: idxd: Remove unnecessary synchronize_irq() before free_irq() (Jerry Snitselaar) [2083414] - dmaengine: idxd: add missing callback function to support DMA_INTERRUPT (Jerry Snitselaar) [2083414] - dmaengine: idxd: skip irq free when wq type is not kernel (Jerry Snitselaar) [2083414] - dmaengine: idxd: make idxd_register/unregister_dma_channel() static (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove redudant idxd_wq_disable_cleanup() call (Jerry Snitselaar) [2083414] - dmaengine: idxd: free irq before wq type is reset (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix lockdep warning on device driver removal (Jerry Snitselaar) [2083414] - dmaengine: idxd: Separate user and kernel pasid enabling (Jerry Snitselaar) [2083414] - dmaengine: idxd: refactor wq driver enable/disable operations (Jerry Snitselaar) [2083414] - dmaengine: idxd: move wq irq enabling to after device enable (Jerry Snitselaar) [2083414] - dmaengine: idxd: set max_xfer and max_batch for RO device (Jerry Snitselaar) [2083414] - dmaengine: idxd: Fix the error handling path in idxd_cdev_register() (Jerry Snitselaar) [2083414] - dmaengine: idxd: set DMA_INTERRUPT cap bit (Jerry Snitselaar) [2083414] - dmaengine: add verification of DMA_INTERRUPT capability for dmatest (Jerry Snitselaar) [2083414] - dmaengine: idxd: remove trailing white space on input str for wq name (Jerry Snitselaar) [2083414] - dmaengine: idxd: don't load pasid config until needed (Jerry Snitselaar) [2083414] - dmaengine: idxd: fix retry value to be constant for duration of function call (Jerry Snitselaar) [2075705] - dmaengine: idxd: match type for retries var in idxd_enqcmds() (Jerry Snitselaar) [2075705] - net: mana: Reuse XDP dropped page (Mohammed Gamal) [2086556] - net: mana: Add counter for XDP_TX (Mohammed Gamal) [2086556] - net: mana: Add counter for packet dropped by XDP (Mohammed Gamal) [2086556] - net: mana: Use struct_size() helper in mana_gd_create_dma_region() (Mohammed Gamal) [2086556] - SUNRPC release the transport of a relocated task with an assigned transport (Scott Mayhew) [2023840] - SUNRPC: Do not dereference non-socket transports in sysfs (Scott Mayhew) [2023840] - SUNRPC don't resend a task on an offlined transport (Scott Mayhew) [2023840] - SUNRPC: lock against ->sock changing during sysfs read (Scott Mayhew) [2023840] - SUNRPC: Check if the xprt is connected before handling sysfs reads (Scott Mayhew) [2023840] - SUNRPC: Add dst_port to the sysfs xprt info file (Scott Mayhew) [2023840] - SUNRPC: Add srcaddr as a file in sysfs (Scott Mayhew) [2023840] - sunrpc: Fix return value of get_srcport() (Scott Mayhew) [2023840] - sunrpc: remove an offlined xprt using sysfs (Scott Mayhew) [2023840] - sunrpc: display xprt's queuelen of assigned tasks via sysfs (Scott Mayhew) [2023840] - SUNRPC: take a xprt offline using sysfs (Scott Mayhew) [2023840] - SUNRPC for TCP display xprt's source port in sysfs xprt_info (Scott Mayhew) [2023840] - SUNRPC query transport's source port (Scott Mayhew) [2023840] - SUNRPC display xprt's main value in sysfs's xprt_info (Scott Mayhew) [2023840] - SUNRPC mark the first transport (Scott Mayhew) [2023840] - NFSv4.1 identify and mark RPC tasks that can move between transports (Scott Mayhew) [2023840] - sunrpc: provide showing transport's state info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide multipath info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: provide transport info in the sysfs directory (Scott Mayhew) [2023840] - sunrpc: add dst_attr attributes to the sysfs xprt directory (Scott Mayhew) [2023840] - sunrpc: add add sysfs directory per xprt under each xprt_switch (Scott Mayhew) [2023840] - sunrpc: add a symlink from rpc-client directory to the xprt_switch (Scott Mayhew) [2023840] - sunrpc: add xprt_switch direcotry to sunrpc's sysfs (Scott Mayhew) [2023840] - sunrpc: keep track of the xprt_class in rpc_xprt structure (Scott Mayhew) [2023840] - sunrpc: add IDs to multipath (Scott Mayhew) [2023840] - sunrpc: add xprt id (Scott Mayhew) [2023840] - sunrpc: Create per-rpc_clnt sysfs kobjects (Scott Mayhew) [2023840] - sunrpc: Create a client/ subdirectory in the sunrpc sysfs (Scott Mayhew) [2023840] - sunrpc: Create a sunrpc directory under /sys/kernel/ (Scott Mayhew) [2023840] - vfs: check fd has read access in kernel_read_file_from_fd() (Ian Kent) [2040615] - SUNRPC: Fix NFSD's request deferral on RDMA transports (Benjamin Coddington) [2090525] - vdpa/mlx5: Use consistent RQT size (Cindy Lu) [2063108] - vdpa/mlx5: add validation for VIRTIO_NET_CTRL_MQ_VQ_PAIRS_SET command (Cindy Lu) [2063108] - vdpa/mlx5: should verify CTRL_VQ feature exists for MQ (Cindy Lu) [2063108] - gfs2: Stop using glock holder auto-demotion for now (Andreas Gruenbacher) [2054855] - gfs2: buffered write prefaulting (Andreas Gruenbacher) [2054855] - gfs2: Align read and write chunks to the page cache (Andreas Gruenbacher) [2054855] - gfs2: Pull return value test out of should_fault_in_pages (Andreas Gruenbacher) [2054855] - gfs2: Clean up use of fault_in_iov_iter_{read,write}able (Andreas Gruenbacher) [2054855] - gfs2: Variable rename (Andreas Gruenbacher) [2054855] - gfs2: Fix filesystem block deallocation for short writes (Andreas Gruenbacher) [2054855] - iomap: iomap_write_end cleanup (Andreas Gruenbacher) [2054855] - iomap: iomap_write_failed fix (Andreas Gruenbacher) [2054855] - gfs2: Don't re-check for write past EOF unnecessarily (Andreas Gruenbacher) [2054855] - gfs2: No short reads or writes upon glock contention (Andreas Gruenbacher) [2054855] - fs/iomap: Fix buffered write page prefaulting (Andreas Gruenbacher) [2054855] - generic_perform_write()/iomap_write_actor(): saner logics for short copy (Andreas Gruenbacher) [2054855] - iomap: Convert iomap_write_end types (Andreas Gruenbacher) [2054855] - gfs2: Make sure not to return short direct writes (Andreas Gruenbacher) [2054855] - gfs2: Remove dead code in gfs2_file_read_iter (Andreas Gruenbacher) [2054855] - gfs2: Fix gfs2_file_buffered_write endless loop workaround (Andreas Gruenbacher) [2054855] - gfs2: Minor retry logic cleanup (Andreas Gruenbacher) [2054855] - gfs2: Disable page faults during lockless buffered reads (Andreas Gruenbacher) [2054855] - gfs2: Fix should_fault_in_pages() logic (Andreas Gruenbacher) [2054855] - mm: gup: make fault_in_safe_writeable() use fixup_user_fault() (Andreas Gruenbacher) [2054855] - gfs2: Initialize gh_error in gfs2_glock_nq (Andreas Gruenbacher) [2054855] - gfs2: Switch lock order of inode and iopen glock (Andreas Gruenbacher) [2054855] - gfs2: cancel timed-out glock requests (Andreas Gruenbacher) [2054855] - gfs2: Expect -EBUSY after canceling dlm locking requests (Andreas Gruenbacher) [2054855] - gfs2: gfs2_setattr_size error path fix (Andreas Gruenbacher) [2054855] - gfs2: assign rgrp glock before compute_bitstructs (Bob Peterson) [2054855] - gfs2: Fix gfs2_release for non-writers regression (Bob Peterson) [1955591] - gfs2: gfs2_create_inode rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup rework (Andreas Gruenbacher) [1955591] - gfs2: gfs2_inode_lookup cleanup (Andreas Gruenbacher) [1955591] - gfs2: Fix remote demote of weak glock holders (Andreas Gruenbacher) [1955591] - gfs2: Fix glock_hash_walk bugs (Andreas Gruenbacher) [1955591] - gfs2: Cancel remote delete work asynchronously (Bob Peterson) [1955591] - gfs2: set glock object after nq (Bob Peterson) [1955591] - gfs2: remove RDF_UPTODATE flag (Bob Peterson) [1955591] - gfs2: Eliminate GIF_INVALID flag (Bob Peterson) [1955591] - gfs2: Fix atomic bug in gfs2_instantiate (Andreas Gruenbacher) [1955591] - gfs2: fix GL_SKIP node_scope problems (Bob Peterson) [1955591] - gfs2: Add some flags missing from glock output (Bob Peterson) [1955591] - gfs2: split glock instantiation off from do_promote (Bob Peterson) [1955591] - gfs2: further simplify do_promote (Bob Peterson) [1955591] - gfs2: re-factor function do_promote (Bob Peterson) [1955591] - gfs2: Remove 'first' trace_gfs2_promote argument (Andreas Gruenbacher) [1955591] - gfs2: change go_lock to go_instantiate (Bob Peterson) [1955591] - gfs2: Switch some BUG_ON to GLOCK_BUG_ON for debug (Bob Peterson) [1955591] - gfs2: move GL_SKIP check from glops to do_promote (Bob Peterson) [1955591] - gfs2: Add GL_SKIP holder flag to dump_holder (Bob Peterson) [1955591] - gfs2: remove redundant check in gfs2_rgrp_go_lock (Bob Peterson) [1955591] - gfs2: Fix mmap + page fault deadlocks for direct I/O (Andreas Gruenbacher) [1955591] - iov_iter: Introduce ITER_IOVEC_FLAG_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - gup: Introduce FOLL_NOFAULT flag to disable page faults (Andreas Gruenbacher) [1955591] - iomap: Add done_before argument to iomap_dio_rw (Andreas Gruenbacher) [1955591] - iomap: Support partial direct I/O on user copy failures (Andreas Gruenbacher) [1955591] - iomap: Fix iomap_dio_rw return value for user copies (Andreas Gruenbacher) [1955591] - iomap: support reading inline data from non-zero pos (Andreas Gruenbacher) [1955591] - gfs2: Only dereference i->iov when iter_is_iovec(i) (Andreas Gruenbacher) [1955591] - gfs2: Prevent endless loops in gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix mmap + page fault deadlocks for buffered I/O (Andreas Gruenbacher) [1955591] - gfs2: Eliminate ip->i_gh (Andreas Gruenbacher) [1955591] - gfs2: Move the inode glock locking to gfs2_file_buffered_write (Andreas Gruenbacher) [1955591] - gfs2: Fix "Introduce flag for glock holder auto-demotion" (Andreas Gruenbacher) [1955591] - gfs2: Introduce flag for glock holder auto-demotion (Bob Peterson) [1955591] - gfs2: fix scheduling while atomic bug in glocks (Bob Peterson) [1955591] - gfs2: Clean up function may_grant (Andreas Gruenbacher) [1955591] - gfs2: Add wrapper for iomap_file_buffered_write (Andreas Gruenbacher) [1955591] - iov_iter: Introduce fault_in_iov_iter_writeable (Andreas Gruenbacher) [1955591] - iov_iter: Turn iov_iter_fault_in_readable into fault_in_iov_iter_readable (Andreas Gruenbacher) [1955591] - gup: Turn fault_in_pages_{readable,writeable} into fault_in_{readable,writeable} (Andreas Gruenbacher) [1955591] - powerpc/signal64: Don't opencode page prefaulting (Andreas Gruenbacher) [1955591] - sanitize iov_iter_fault_in_readable() (Andreas Gruenbacher) [1955591] - [xarray] iov_iter_fault_in_readable() should do nothing in xarray case (Andreas Gruenbacher) [1955591] - powerpc/kvm: Fix kvm_use_magic_page (Andreas Gruenbacher) [1955591] - iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value (Andreas Gruenbacher) [1955591] - gfs2: Fix length of holes reported at end-of-file (Andreas Gruenbacher) [1955591] - gfs2: Remove redundant check from gfs2_glock_dq (Bob Peterson) [1955591] - gfs2: release iopen glock early in evict (Bob Peterson) [1955591] - mm: change fault_in_pages_* to have an unsigned size parameter (Andreas Gruenbacher) [1955591] - gfs2: Eliminate vestigial HIF_FIRST (Bob Peterson) [1955591] - iomap: remove the iomap arguments to ->page_{prepare,done} (Andreas Gruenbacher) [1955591] - net: sched: fix use-after-free in tc_new_tfilter() (Ivan Vecera) [2071704]- Bluetooth: virtio_bt: fix memory leak in virtbt_rx_handle() (Gopal Tiwari) [2076180] - powerpc/papr_scm: Fix buffer overflow issue with CONFIG_FORTIFY_SOURCE (Gustavo Walbon) [2069468] - powerpc/papr_scm: Fix build failure when (Gustavo Walbon) [2069468] - drivers/nvdimm: Fix build failure when CONFIG_PERF_EVENTS is not set (Gustavo Walbon) [2069468] - powerpc/papr_scm: Add perf interface support (Gustavo Walbon) [2069468] - drivers/nvdimm: Add perf interface to expose nvdimm performance stats (Gustavo Walbon) [2069468] - drivers/nvdimm: Add nvdimm pmu structure (Gustavo Walbon) [2069468] - mptcp: Fix crash due to tcp_tsorted_anchor was initialized before release skb (Davide Caratti) [2084048] - mptcp: Correctly set DATA_FIN timeout when number of retransmits is large (Davide Caratti) [2084048] - mptcp: add mibs counter for ignored incoming options (Davide Caratti) [2084048] - mptcp: fix race in incoming ADD_ADDR option processing (Davide Caratti) [2084048] - mptcp: netlink: process IPv6 addrs in creating listening sockets (Davide Caratti) [2084048] - mptcp: use delegate action to schedule 3rd ack retrans (Davide Caratti) [2084048] - mptcp: fix delack timer (Davide Caratti) [2084048] - powerpc/module_64: use module_init_section instead of patching names (Jan Stancek) [1985851] - module: check for exit sections in layout_sections() instead of module_init_section() (Jan Stancek) [1985851] - module: treat exit sections the same as init sections when !CONFIG_MODULE_UNLOAD (Jan Stancek) [1985851] - module: allow arch overrides for .exit section names (Jan Stancek) [1985851] - ARM: 8976/1: module: allow arch overrides for .init section names (Jan Stancek) [1985851] - KVM: s390: pv: make use of ultravisor AIV support (Thomas Huth) [2043870] - redhat: Enable VM kselftests (Nico Pache) [1978539] - selftests: vm: Makefile: rename TARGETS to VMTARGETS (Nico Pache) [1978539] - redhat: enable CONFIG_TEST_VMALLOC for vm selftests (Nico Pache) [1978539] - redhat: enable GUP TEST for kselftests (Nico Pache) [1978539] - redhat: Enable HMM test to be used by the kselftest test suite (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really, really random (Nico Pache) [1978539] - selftests/vm: fix display of page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: fix building protection keys test (Nico Pache) [1978539] - lib/test_vmalloc.c: do not create cpumask_t variable on stack (Nico Pache) [1978539] - vmalloc: add test driver to analyse vmalloc allocator (Nico Pache) [1978539] - vmalloc: export __vmalloc_node_range for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - selftests/vm: add protection_keys_32 / protection_keys_64 to gitignore (Nico Pache) [1978539] - selftests/vm: rename file run_vmtests to run_vmtests.sh (Nico Pache) [1978539] - mm/gup_benchmark: support threading (Nico Pache) [1978539] - selftests/vm: gup_test: test faulting in kernel, and verify pinnable pages (Nico Pache) [1978539] - selftests/vm: gup_test: fix test flag (Nico Pache) [1978539] - selftests/vm: fix out-of-tree build (Nico Pache) [1978539] - selftests/vm: 2x speedup for run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: hmm-tests: remove the libhugetlbfs dependency (Nico Pache) [1978539] - selftests/vm: run_vmtests.sh: update and clean up gup_test invocation (Nico Pache) [1978539] - selftests/vm: gup_test: introduce the dump_pages() sub-test (Nico Pache) [1978539] - selftests/vm: only some gup_test items are really benchmarks (Nico Pache) [1978539] - selftests/vm: minor cleanup: Makefile and gup_test.c (Nico Pache) [1978539] - selftests/vm: rename run_vmtests --> run_vmtests.sh (Nico Pache) [1978539] - selftests/vm: use a common gup_test.h (Nico Pache) [1978539] - mm/gup_benchmark: rename to mm/gup_test (Nico Pache) [1978539] - tools/testing/selftests/vm: fix build error (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_GUP_BENCHMARK (Nico Pache) [1978539] - selftests/vm: 8x compaction_test speedup (Nico Pache) [1978539] - selftests/vm: fix incorrect gcc invocation in some cases (Nico Pache) [1978539] - selftests/vm: fix false build success on the second and later attempts (Nico Pache) [1978539] - mm/gup: don't permit users to call get_user_pages with FOLL_LONGTERM (Nico Pache) [1978539] - mm/gup_benchmark: use pin_user_pages for FOLL_LONGTERM flag (Nico Pache) [1978539] - mm/gup_benchmark: update the documentation in Kconfig (Nico Pache) [1978539] - khugepaged: selftests: fix timeout condition in wait_for_scan() (Nico Pache) [1978539] - selftests: vm: pkeys: fix multilib builds for x86 (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct page size on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: override access right definitions on powerpc (Nico Pache) [1978539] - selftests/vm/pkeys: test correct behaviour of pkey-0 (Nico Pache) [1978539] - selftests/vm/pkeys: introduce a sub-page allocator (Nico Pache) [1978539] - selftests/vm/pkeys: detect write violation on a mapped access-denied-key page (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect write violation (Nico Pache) [1978539] - selftests/vm/pkeys: associate key on a mapped page and detect access violation (Nico Pache) [1978539] - selftests/vm/pkeys: improve checks to determine pkey support (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in test_pkey_alloc_exhaust() (Nico Pache) [1978539] - selftests/vm/pkeys: fix number of reserved powerpc pkeys (Nico Pache) [1978539] - selftests/vm/pkeys: introduce powerpc support (Nico Pache) [1978539] - selftests/vm/pkeys: introduce generic pkey abstractions (Nico Pache) [1978539] - selftests: vm: pkeys: use the correct huge page size (Nico Pache) [1978539] - selftests/vm/pkeys: fix alloc_random_pkey() to make it really random (Nico Pache) [1978539] - selftests/vm/pkeys: fix assertion in pkey_disable_set/clear() (Nico Pache) [1978539] - selftests/vm/pkeys: fix pkey_disable_clear() (Nico Pache) [1978539] - selftests: vm: pkeys: add helpers for pkey bits (Nico Pache) [1978539] - selftests: vm: pkeys: Use sane types for pkey register (Nico Pache) [1978539] - selftests/vm/pkeys: make gcc check arguments of sigsafe_printf() (Nico Pache) [1978539] - selftests/vm/pkeys: move some definitions to arch-specific header (Nico Pache) [1978539] - selftests/vm/pkeys: move generic definitions to header file (Nico Pache) [1978539] - selftests/vm/pkeys: rename all references to pkru to a generic name (Nico Pache) [1978539] - selftests/x86/pkeys: move selftests to arch-neutral directory (Nico Pache) [1978539] - selftests/vm: 10x speedup for hmm-tests (Nico Pache) [1978539] - mm/migrate: add migrate-shared test for migrate_vma_*() (Nico Pache) [1978539] - mm/migrate: optimize migrate_vma_setup() for holes (Nico Pache) [1978539] - lib/test_hmm: use vma_lookup() in dmirror_migrate() (Nico Pache) [1978539] - lib/test_hmm.c: fix an error code in dmirror_allocate_chunk() (Nico Pache) [1978539] - lib/test_hmm.c: remove unused dmirror_zero_page (Nico Pache) [1978539] - mm/memremap_pages: support multiple ranges per invocation (Nico Pache) [1978539] - mm/memremap_pages: convert to 'struct range' (Nico Pache) [1978539] - tools/testing/selftests/vm/hmm-tests.c: use the new SKIP() macro (Nico Pache) [1978539] - mm/hmm/test: use the new migration invalidation (Nico Pache) [1978539] - lib/test_hmm.c: add a flag parameter to migrate_vma (Nico Pache) [1978539] - mm/hmm: add tests for hmm_pfn_to_map_order() (Nico Pache) [1978539] - lib: fix test_hmm.c reference after free (Nico Pache) [1978539] - mm/hmm/test: add selftests for HMM (Nico Pache) [1978539] - mm/hmm/test: add selftest driver for HMM (Nico Pache) [1978539] - mm: convert insert_pfn() to vm_fault_t (Nico Pache) [1978539] - selftests/vm/.gitignore: add mremap_dontunmap (Nico Pache) [1978539] - selftests: vm: Fix 64-bit test builds for powerpc64le (Nico Pache) [1978539] - selftests: vm: Do not override definition of ARCH (Nico Pache) [1978539] - selftests/vm: fix map_hugetlb length used for testing read and write (Nico Pache) [1978539] - selftests/vm: add missed tests in run_vmtests (Nico Pache) [1978539] - selftests: vm: add fragment CONFIG_TEST_VMALLOC (Nico Pache) [1978539] - selftests: vm: Build/Run 64bit tests only on 64bit arch (Nico Pache) [1978539] - selftests: vm: Fix test build failure when built by itself (Nico Pache) [1978539] - selftests: vm: install test_vmalloc.sh for run_vmtests (Nico Pache) [1978539] - tools: mark 'test_vmalloc.sh' executable (Nico Pache) [1978539] - tools/selftest/vm: allow choosing mem size and page size in map_hugetlb (Nico Pache) [1978539] - selftests/vm: add script helper for CONFIG_TEST_VMALLOC_MODULE (Nico Pache) [1978539] - tools/testing/selftests/vm/map_fixed_noreplace.c: add test for MAP_FIXED_NOREPLACE (Nico Pache) [1978539] - tools/testing/selftests/vm/: add MAP_POPULATE test (Nico Pache) [1978539] - xfs: return errors in xfs_fs_sync_fs (Andrey Albershteyn) [2087991] - vfs: make sync_filesystem return errors from ->sync_fs (Andrey Albershteyn) [2087991] - PCI: hv: Remove unused hv_set_msi_entry_from_desc() (Mohammed Gamal) [2086560] - PCI: hv: Avoid the retarget interrupt hypercall in irq_unmask() on ARM64 (Mohammed Gamal) [2086560] - PCI: hv: Fix NUMA node assignment when kernel boots with custom NUMA topology (Mohammed Gamal) [2086560] - PCI: hv: Use PCI_ERROR_RESPONSE to identify config read errors (Mohammed Gamal) [2086560] - vdpa: clean up get_config_size ret value handling (Cindy Lu) [2059841] - vdpa: mlx5: synchronize driver status with CVQ (Jason Wang) [2048009] - vdpa: mlx5: prevent cvq work from hogging CPU (Jason Wang) [2048009] - vdpa/mlx5: Avoid processing works if workqueue was destroyed (Cindy Lu) [2048009] - cpufreq: Cancel policy update work scheduled before freeing (Prarit Bhargava) [2083728] - tcp: fix potential xmit stalls caused by TCP_NOTSENT_LOWAT (Paolo Abeni) [2081411] - tcp: ensure to use the most recently sent skb when filling the rate sample (Paolo Abeni) [2081411] - tcp: make sure treq->af_specific is initialized (Paolo Abeni) [2081411] - tcp: md5: incorrect tcp_header_len for incoming connections (Paolo Abeni) [2081411] - tcp: ensure PMTU updates are processed during fastopen (Paolo Abeni) [2081411] - tcp: add missing tcp_skb_can_collapse() test in tcp_shift_skb_data() (Paolo Abeni) [2081411] - inet: fully convert sk->sk_rx_dst to RCU rules (Paolo Abeni) [2081411] - tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited flows (Paolo Abeni) [2081411]- selftests/bpf/test_xdp_redirect_multi: use temp netns for testing (Felix Maurer) [2017875] - selftests/bpf/xdp_redirect_multi: Limit the tests in netns (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Give tcpdump a chance to terminate cleanly (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Use arping to accurate the arp number (Jiri Benc) [2017875] - selftests/bpf/xdp_redirect_multi: Put the logs to tmp folder (Jiri Benc) [2017875] - bpf, sockmap: Zap ingress queues after stopping strparser (Jiri Benc) [2017875] - xdp, net: Fix use-after-free in bpf_xdp_link_release (Jiri Benc) [2017875] - doc, af_xdp: Fix bind flags option typo (Jiri Benc) [2017875] - bpf, devmap: Convert remaining READ_ONCE() to rcu_dereference_check() (Jiri Benc) [2017875] - xdp: Move the rxq_info.mem clearing to unreg_mem_model() (Jiri Benc) [2017875] - bpf, sched: Remove unneeded rcu_read_lock() around BPF program invocation (Jiri Benc) [2017875] - xdp: Add proper __rcu annotations to redirect map entries (Jiri Benc) [2017875] - doc: Give XDP as example of non-obvious RCU reader/updater pairing (Jiri Benc) [2017875] - doc: Clarify and expand RCU updaters and corresponding readers (Jiri Benc) [2017875] - bpfilter: Specify the log level for the kmsg message (Jiri Benc) [2017875] - docs, af_xdp: Consistent indentation in examples (Jiri Benc) [2017875] - xsk: Fix missing validation for skb and unaligned mode (Jiri Benc) [2017875] - bpf: Support all gso types in bpf_skb_change_proto() (Jiri Benc) [2017875] - bpf: Do not change gso_size during bpf_skb_change_proto() (Jiri Benc) [2017875] - Revert "bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto" (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi into .gitignore (Jiri Benc) [2017875] - bpf, devmap: Remove drops variable from bq_xmit_all() (Jiri Benc) [2017875] - locking/atomic: net: use linux/atomic.h for xchg & cmpxchg (Jiri Benc) [2017875] - xsk: Use kvcalloc to support large umems (Jiri Benc) [2017875] - selftests/bpf: Add xdp_redirect_multi test (Jiri Benc) [2017875] - sample/bpf: Add xdp_redirect_map_multi for redirect_map broadcast test (Jiri Benc) [2017875] - xdp: Extend xdp_redirect_map with broadcast support (Jiri Benc) [2017875] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Felix Maurer) [2017875] - bpf: Run devmap xdp_prog on flush instead of bulk enqueue (Jiri Benc) [2017875] - skmsg: Remove unused parameters of sk_msg_wait_data() (Jiri Benc) [2017875] - bpf: Use struct_size() in kzalloc() (Jiri Benc) [2017875] - bpf: Check for BPF_F_ADJ_ROOM_FIXED_GSO when bpf_skb_change_proto (Jiri Benc) [2017875] - treewide: Replace zero-length arrays with flexible-array members (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.68.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Update the copyright year (Tomas Henzl) [2049660] - scsi: mpi3mr: Update MPI3 headers (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix formatting problems in some kernel-doc comments (Tomas Henzl) [2049660] - scsi: mpi3mr: Fix some spelling mistakes (Tomas Henzl) [2049660] - scsi: mpi3mr: Bump driver version to 8.0.0.61.0 (Tomas Henzl) [2049660] - scsi: mpi3mr: Add io_uring interface support in I/O-polled mode (Tomas Henzl) [2049660] - scsi: mpi3mr: Print cable mngnt and temp threshold events (Tomas Henzl) [2049660] - scsi: mpi3mr: Support Prepare for Reset event (Tomas Henzl) [2049660] - scsi: mpi3mr: Add Event acknowledgment logic (Tomas Henzl) [2049660] - scsi: mpi3mr: Gracefully handle online FW update operation (Tomas Henzl) [2049660] - scsi: mpi3mr: Detect async reset that occurred in firmware (Tomas Henzl) [2049660] - scsi: mpi3mr: Add IOC reinit function (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle offline FW activation in graceful manner (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part2 (Tomas Henzl) [2049660] - scsi: mpi3mr: Code refactor of IOC init - part1 (Tomas Henzl) [2049660] - scsi: mpi3mr: Fault IOC when internal command gets timeout (Tomas Henzl) [2049660] - scsi: mpi3mr: Display IOC firmware package version (Tomas Henzl) [2049660] - scsi: mpi3mr: Handle unaligned PLL in unmap cmnds (Tomas Henzl) [2049660] - scsi: mpi3mr: Add support for PCIe Managed Switch SES device (Tomas Henzl) [2049660] - [s390] s390/cio: verify the driver availability for path_event call (Mete Durlu) [2058620] - selinux: fix bad cleanup on error in hashtab_duplicate() (Ondrej Mosnacek) [2005890] - selinux: fix race between old and new sidtab (Ondrej Mosnacek) [2005890] - selinux: fix cond_list corruption when changing booleans (Ondrej Mosnacek) [2005890] - selinux: make nslot handling in avtab more robust (Ondrej Mosnacek) [2005890] - selinuxfs: unify policy load error reporting (Ondrej Mosnacek) [2005890] - selinux: fix variable scope issue in live sidtab conversion (Ondrej Mosnacek) [2005890] - selinux: don't log MAC_POLICY_LOAD record on failed policy load (Ondrej Mosnacek) [2005890] - selinux: simplify away security_policydb_len() (Ondrej Mosnacek) [2005890] - selinux: move policy mutex to selinux_state, use in lockdep checks (Ondrej Mosnacek) [2005890] - selinux: fix error handling bugs in security_load_policy() (Ondrej Mosnacek) [2005890] - selinux: convert policy read-write lock to RCU (Ondrej Mosnacek) [2005890] - selinux: Create new booleans and class dirs out of tree (Ondrej Mosnacek) [2005890] - selinux: Standardize string literal usage for selinuxfs directory names (Ondrej Mosnacek) [2005890] - selinux: Refactor selinuxfs directory populating functions (Ondrej Mosnacek) [2005890] - selinux: Create function for selinuxfs directory cleanup (Ondrej Mosnacek) [2005890] - selinux: fix memdup.cocci warnings (Ondrej Mosnacek) [2005890] - selinux: avoid dereferencing the policy prior to initialization (Ondrej Mosnacek) [2005890] - selinux: fix allocation failure check on newpolicy->sidtab (Ondrej Mosnacek) [2005890] - selinux: refactor changing booleans (Ondrej Mosnacek) [2005890] - selinux: move policy commit after updating selinuxfs (Ondrej Mosnacek) [2005890] - selinux: encapsulate policy state, refactor policy load (Ondrej Mosnacek) [2005890] - Revert "selinux: fix deadlock in security_set_bools()" (Ondrej Mosnacek) [2005890] - thunderx nic: mark device as deprecated (Íñigo Huguet) [2060286] - cpufreq: intel_pstate: Add Ice Lake server to out-of-band IDs (Vitaly Kuznetsov) [2091523] - [s390] s390/hypfs: include z/VM guests with access control group set (Mete Durlu) [2058621] - scsi: mpt3sas: Fix a few kernel-doc issues (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix a typo (Tomas Henzl) [2049623] - scsi: mpt3sas: Update driver version to 42.100.00.00 (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix junk chars displayed while printing ChipName (Tomas Henzl) [2049623] - scsi: mpt3sas: Use cached ATA Information VPD page (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix adapter replyPostRegisterIndex declaration (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix event callback log_code value handling (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix ioc->base_readl() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix writel() use (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix _ctl_set_task_mid() TaskMID check (Tomas Henzl) [2049623] - scsi: mpt3sas: Fail reset operation if config request timed out (Tomas Henzl) [2049623] - scsi: mpt3sas: Fix use after free in _scsih_expander_node_remove() (Tomas Henzl) [2049623] - scsi: mpt3sas: Page fault in reply q processing (Tomas Henzl) [2049623] - scsi: mpt3sas: Convert to flexible arrays (Tomas Henzl) [2049623] - scsi: mpt3sas: Update persistent trigger pages from sysfs interface (Tomas Henzl) [2049623] - Revert "netfilter: conntrack: tag conntracks picked up in local out hook" (Florian Westphal) [2062870] - Revert "netfilter: nat: force port remap to prevent shadowing well-known ports" (Florian Westphal) [2062870] - drm/amdgpu: vi: disable ASPM on Intel Alder Lake based systems (Michel Dänzer) [2066918] - drm/amd: Use amdgpu_device_should_use_aspm on navi umd pstate switching (Michel Dänzer) [2066918] - drm/amd: Refactor `amdgpu_aspm` to be evaluated per device (Michel Dänzer) [2066918] - drm/amd: Check if ASPM is enabled from PCIe subsystem (Michel Dänzer) [2066918] - [s390] s390/tape: fix timer initialization in tape_std_assign() (Mete Durlu) [2085420] - powerpc/pseries/vas: Use QoS credits from the userspace (Steve Best) [2075174] - thermal: don't make THERMAL_NETLINK 'default y' (Prarit Bhargava) [2040062] - redhat/configs: Add CONFIG_INTEL_HFI_THERMAL (Prarit Bhargava) [2040062] - thermal/drivers/core: Remove module unload code (Prarit Bhargava) [2040062] - thermal: core: Fix TZ_GET_TRIP NULL pointer dereference (Prarit Bhargava) [2040062] - thermal: intel: hfi: INTEL_HFI_THERMAL depends on NET (Prarit Bhargava) [2040062] - thermal: netlink: Fix parameter type of thermal_genl_cpu_capability_event() stub (Prarit Bhargava) [2040062] - thermal: intel: hfi: Notify user space for HFI events (Prarit Bhargava) [2040062] - thermal: netlink: Add a new event to notify CPU capabilities change (Prarit Bhargava) [2040062] - thermal: intel: hfi: Enable notification interrupt (Prarit Bhargava) [2040062] - thermal: intel: hfi: Handle CPU hotplug events (Prarit Bhargava) [2040062] - thermal: intel: hfi: Minimally initialize the Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/cpu: Add definitions for the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - x86/Documentation: Describe the Intel Hardware Feedback Interface (Prarit Bhargava) [2040062] - thermal: intel: Allow processing of HWP interrupt (Prarit Bhargava) [2040062] - x86/thermal: Fix LVT thermal setup for SMI delivery mode (Prarit Bhargava) [2040062] - thermal: Move therm_throt there from x86/mce (Prarit Bhargava) [2040062] - thermal: core: Adding missing nlmsg_free() in thermal_genl_sampling_temp() (Prarit Bhargava) [2040062] - thermal: move to smaller ops wherever possible (Prarit Bhargava) [2040062] - thermal: add small version of ops (Prarit Bhargava) [2040062] - thermal: netlink: Improve the initcall ordering (Prarit Bhargava) [2040062] - thermal: core: remove redundant initialization of variable ret (Prarit Bhargava) [2040062] - thermal: netlink: Fix compilation error when CONFIG_NET=n (Prarit Bhargava) [2040062] - thermal: core: Fix thermal zone lookup by ID (Prarit Bhargava) [2040062] - thermal: core: Get thermal zone by id (Prarit Bhargava) [2040062] - thermal: core: Add helpers to browse the cdev, tz and governor list (Prarit Bhargava) [2040062] - thermal: Remove netlink support (Prarit Bhargava) [2040062] - thermal: core: genetlink support for events/cmd/sampling (Prarit Bhargava) [2040062]- mailbox: pcc: Handle all PCC subtypes correctly in pcc_mbox_irq (Mark Langsdorf) [1997698] - i2c: xgene-slimpro: Fix wrong pointer passed to PTR_ERR() (Mark Langsdorf) [1997698] - ACPI: Make acpi_node_get_parent() local (Mark Langsdorf) [1997698] - ACPI: Get acpi_device's parent from the parent field (Mark Langsdorf) [1997698] - ACPI: PM: Fix device wakeup power reference counting error (Mark Langsdorf) [1997698] - ACPI: video: use platform backlight driver on Xiaomi Mi Pad 2 (Mark Langsdorf) [1997698] - ACPI: video: Drop dmi_system_id.ident settings from video_detect_dmi_table[] (Mark Langsdorf) [1997698] - ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses (Mark Langsdorf) [1997698] - ACPI: EC: Use ec_no_wakeup on HP ZHAN 66 Pro (Mark Langsdorf) [1997698] - ACPI: Add a convenience function to tell a device is in D0 state (Mark Langsdorf) [1997698] - ACPI: scan: Obtain device's desired enumeration power state (Mark Langsdorf) [1997698] - perf: qcom_l2_pmu: ACPI: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI/PCC: Add maintainer for PCC mailbox driver (Mark Langsdorf) [1997698] - mailbox: pcc: Add support for PCCT extended PCC subspaces(type 3/4) (Mark Langsdorf) [1997698] - mailbox: pcc: Drop handling invalid bit-width in {read,write}_register (Mark Langsdorf) [1997698] - mailbox: pcc: Avoid accessing PCCT table in pcc_send_data and pcc_mbox_irq (Mark Langsdorf) [1997698] - mailbox: pcc: Add PCC register bundle and associated accessor functions (Mark Langsdorf) [1997698] - mailbox: pcc: Rename doorbell ack to platform interrupt ack register (Mark Langsdorf) [1997698] - mailbox: pcc: Use PCC mailbox channel pointer instead of standard (Mark Langsdorf) [1997698] - mailbox: pcc: Add pcc_mbox_chan structure to hold shared memory region info (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace doorbell register parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Consolidate subspace interrupt information parsing (Mark Langsdorf) [1997698] - mailbox: pcc: Refactor all PCC channel information into a structure (Mark Langsdorf) [1997698] - mailbox: pcc: Fix kernel doc warnings (Mark Langsdorf) [1997698] - ACPI: glue: Use acpi_device_adr() in acpi_find_child_device() (Mark Langsdorf) [1997698] - ACPI: APEI: mark apei_hest_parse() static (Mark Langsdorf) [1997698] - ACPI: APEI: EINJ: Relax platform response timeout to 1 second (Mark Langsdorf) [1997698] - ACPI: resources: Add one more Medion model in IRQ override quirk (Mark Langsdorf) [1997698] - ACPI: AC: Quirk GK45 to skip reading _PSR (Mark Langsdorf) [1997698] - ACPI: PM: sleep: Do not set suspend_ops unnecessarily (Mark Langsdorf) [1997698] - ACPI: PRM: Handle memory allocation and memory remap failure (Mark Langsdorf) [1997698] - ACPI: PRM: Remove unnecessary blank lines (Mark Langsdorf) [1997698] - ACPI: PM: Turn off wakeup power resources on _DSW/_PSW errors (Mark Langsdorf) [1997698] - ACPI: PM: Fix sharing of wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Turn off unused wakeup power resources (Mark Langsdorf) [1997698] - ACPI: PM: Check states of power resources during initialization (Mark Langsdorf) [1997698] - hwmon: (acpi_power_meter) Use acpi_bus_get_acpi_device() (Mark Langsdorf) [1997698] - ACPI: replace snprintf() in "show" functions with sysfs_emit() (Mark Langsdorf) [1997698] - ACPI: LPSS: Use ACPI_COMPANION() directly (Mark Langsdorf) [1997698] - ACPI: battery: Accept charges over the design capacity as full (Mark Langsdorf) [1997698] - ACPICA: Update version to 20210930 (Mark Langsdorf) [1997698] - ACPICA: iASL table disassembler: Added disassembly support for the NHLT ACPI table (Mark Langsdorf) [1997698] - ACPICA: ACPI 6.4 SRAT: add Generic Port Affinity type (Mark Langsdorf) [1997698] - ACPICA: Add support for Windows 2020 _OSI string (Mark Langsdorf) [1997698] - ACPICA: Avoid evaluating methods too early during system resume (Mark Langsdorf) [1997698] - ACPI: processor: idle: fix lockup regression on 32-bit ThinkPad T40 (Mark Langsdorf) [1997698] - ACPI: processor idle: Allow playing dead in C3 state (Mark Langsdorf) [1997698] - ACPI: Kconfig: Fix a typo in Kconfig (Mark Langsdorf) [1997698] - ACPI: PNP: remove duplicated BRI0A49 and BDP3336 entries (Mark Langsdorf) [1997698] - ACPI: resources: Add DMI-based legacy IRQ override quirk (Mark Langsdorf) [1997698] - ACPICA: Add support for MADT online enabled bit (Mark Langsdorf) [1997698] - acpi/arm64: fix next_platform_timer() section mismatch error (Mark Langsdorf) [1997697] - ACPI: PM: Include alternate AMDI0005 id in special behaviour (Mark Langsdorf) [1997697] - MAINTAINERS: Change Rafael's e-mail address (Mark Langsdorf) [1997697] - ACPI: scan: Remove unneeded header linux/nls.h (Mark Langsdorf) [1997697] - ACPI: PM: s2idle: Run both AMD and Microsoft methods if both are supported (Mark Langsdorf) [1997697] - ACPI: power: Drop name from struct acpi_power_resource (Mark Langsdorf) [1997697] - ACPI: power: Use acpi_handle_debug() to print debug messages (Mark Langsdorf) [1997697] - ACPI: button: Add DMI quirk for Lenovo Yoga 9 (14INTL5) (Mark Langsdorf) [1997697] - ACPI: SPCR: Add support for the new 16550-compatible Serial Port Subtype (Mark Langsdorf) [1997697] - ACPI: platform-profile: call sysfs_notify() from platform_profile_store() (Mark Langsdorf) [1997697] - ACPICA: Update version to 20210730 (Mark Langsdorf) [1997697] - ACPICA: Add method name "_DIS" For use with aslmethod.c (Mark Langsdorf) [1997697] - ACPICA: iASL: Fix for WPBT table with no command-line arguments (Mark Langsdorf) [1997697] - ACPICA: Headers: Add new DBG2 Serial Port Subtypes (Mark Langsdorf) [1997697] - ACPICA: Macros should not use a trailing semicolon (Mark Langsdorf) [1997697] - ACPICA: Fix an if statement (add parens) (Mark Langsdorf) [1997697] - ACPICA: iASL: Add support for the AEST table (data compiler) (Mark Langsdorf) [1997697] - clk: fractional-divider: Introduce POWER_OF_TWO_PS flag (Mark Langsdorf) [1997697] - clk: fractional-divider: add explicit big endian support (Mark Langsdorf) [1997697] - clk: gate: add explicit big endian support (Mark Langsdorf) [1997697] - clk: fractional-divider: add CLK_FRAC_DIVIDER_ZERO_BASED flag support (Mark Langsdorf) [1997697] - ACPI: processor: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [1997697] - ABI: sysfs-platform-dptf: Add tables markup to a table (Mark Langsdorf) [1997697] - ACPI: DPTF: Add new PCH FIVR methods (Mark Langsdorf) [1997697] - clk: x86: Rename clk-lpt to more specific clk-lpss-atom (Mark Langsdorf) [1997697] - ACPI: configfs: Make get_header() to return error pointer (Mark Langsdorf) [1997697] - ACPI: configfs: Use sysfs_emit() in "show" functions (Mark Langsdorf) [1997697] - ACPI: glue: Eliminate acpi_platform_notify() (Mark Langsdorf) [1997697] - ACPI: bus: Rename functions to avoid name collision (Mark Langsdorf) [1997697] - ACPI: glue: Change return type of two functions to void (Mark Langsdorf) [1997697] - ACPI: glue: Rearrange acpi_device_notify() (Mark Langsdorf) [1997697] - ACPI: Add LoongArch support for ACPI_PROCESSOR/ACPI_NUMA (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize MIPI PMIQ sequence I2C-bus accesses (Mark Langsdorf) [1997697] - ACPI / PMIC: XPower: optimize I2C-bus accesses (Mark Langsdorf) [1997697] - stddef: Introduce DECLARE_FLEX_ARRAY() helper (Josef Oskera) [2062594] - Revert "iavf: Fix deadlock occurrence during resetting VF interface" (Ivan Vecera) [2066693] - scsi: core: Fix sbitmap depth in scsi_realloc_sdev_budget_map() (Ewan D. Milne) [2071831] - lib/sbitmap: allocate sb->map via kvzalloc_node (Ewan D. Milne) [2071831] - mm: move kvmalloc-related functions to slab.h (Ewan D. Milne) [2071831] - scsi: core: sd: Add silence_suspend flag to suppress some PM messages (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Fix FPIN Link Integrity statistics counters (Ewan D. Milne) [2071831] - sd: call sd_zbc_release_disk before releasing the scsi_device reference (Ewan D. Milne) [2071831] - scsi: core: Reallocate device's budget map on queue depth change (Ewan D. Milne) [2071831] - scsi: sr: Don't use GFP_DMA (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_device_max_queue_depth() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix buffer size of REPORT ZONES command (Ewan D. Milne) [2071831] - scsi: sd_zbc: Clean up sd_zbc_parse_report() setting of wp (Ewan D. Milne) [2071831] - scsi: sd_zbc: Simplify zone full condition check (Ewan D. Milne) [2071831] - scsi: core: Show SCMD_LAST in text form (Ewan D. Milne) [2071831] - scsi: scsi_debug: Zero clear zones at reset write pointer (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix setting device state to SDEV_RUNNING (Ewan D. Milne) [2071831] - scsi: scsi_debug: Sanity check block descriptor length in resp_mode_select() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix type in min_t to avoid stack OOB (Ewan D. Milne) [2071831] - scsi: core: Simplify control flow in scmd_eh_abort_handler() (Ewan D. Milne) [2071831] - scsi: core: sysfs: Fix hang when device state is set via sysfs (Ewan D. Milne) [2071831] - scsi: scsi_debug: Don't call kcalloc() if size arg is zero (Ewan D. Milne) [2071831] - scsi: sr: Remove duplicate assignment (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs() (Ewan D. Milne) [2071831] - scsi: scsi_debug: Fix out-of-bound read in resp_readcap16() (Ewan D. Milne) [2071831] - scsi: sd: Print write through due to no caching mode page as warning (Ewan D. Milne) [2071831] - scsi: sd: Fix crashes in sd_resume_runtime() (Ewan D. Milne) [2071831] - scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma() (Ewan D. Milne) [2071831] - scsi: core: Fix spelling in a source code comment (Ewan D. Milne) [2071831] - scsi: sd: Fix sd_do_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_select() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Fix scsi_mode_sense() buffer length handling (Ewan D. Milne) [2071831] - scsi: core: Remove include from scsi_cmnd.h (Ewan D. Milne) [2071831] - scsi: sd_zbc: Support disks with more than 2**32 logical blocks (Ewan D. Milne) [2071831] - scsi: sd: Make sd_spinup_disk() less noisy (Ewan D. Milne) [2071831] - scsi: sr: Fix spelling mistake "does'nt" -> "doesn't" (Ewan D. Milne) [2071831] - scsi: sd_zbc: Ensure buffer size is aligned to SECTOR_SIZE (Ewan D. Milne) [2071831] - scsi: sd: Do not exit sd_spinup_disk() quietly (Ewan D. Milne) [2071831] - scsi: core: Add helper to return number of logical blocks in a request (Ewan D. Milne) [2071831] - scsi: scsi_debug: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_spi: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: scsi_transport_fc: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sr: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: sd: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request (Ewan D. Milne) [2071831] - scsi: core: Introduce the scsi_cmd_to_rq() function (Ewan D. Milne) [2071831] - scsi: core: Add BLIST_IGN_MEDIA_CHANGE for Ultra HS-SD/MMC USB card readers (Ewan D. Milne) [2071831] - scsi: sd: REQUEST SENSE for BLIST_IGN_MEDIA_CHANGE devices in runtime_resume() (Ewan D. Milne) [2071831] - scsi: core: Add new flag BLIST_IGN_MEDIA_CHANGE (Ewan D. Milne) [2071831] - scsi: scsi_debug: Improve RDPROTECT/WRPROTECT handling (Ewan D. Milne) [2071831] - scsi: scsi_debug: Remove dump_sector() (Ewan D. Milne) [2071831] - scsi: core: Add scsi_prot_ref_tag() helper (Ewan D. Milne) [2071831] - scsi: core: Add scsi_msg_to_host_byte() (Ewan D. Milne) [2071831] - scsi: core: Add get_{status,host}_byte() accessor functions (Ewan D. Milne) [2071831] - scsi: core: Cap scsi_host cmd_per_lun at can_queue (Ewan D. Milne) [2071831] - scsi: Fix spelling mistakes in header files (Ewan D. Milne) [2071831] - scsi: core: Treat device offline as a failure (Ewan D. Milne) [2071831] - sched/topology: Skip updating masks for non-online nodes (Diego Domingos) [1946251] - powerpc/numa: Update cpu_cpu_map on CPU online/offline (Diego Domingos) [1946251] - powerpc/numa: Print debug statements only when required (Diego Domingos) [1946251] - powerpc/numa: convert printk to pr_xxx (Diego Domingos) [1946251] - powerpc/numa: Drop dbg in favour of pr_debug (Diego Domingos) [1946251] - livepatch: Fix missing unlock on error in klp_enable_patch() (Julia Denham) [2069340] - livepatch: Fix kobject refcount bug on klp_init_patch_early failure path (Julia Denham) [2069340] - Documentation: livepatch: Add livepatch API page (Julia Denham) [2069340] - scsi: megaraid_sas: Remove unnecessary memset (Tomas Henzl) [2049686] - scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan (Tomas Henzl) [2049686] - scsi: megasas: Clean up some inconsistent indenting (Tomas Henzl) [2049686] - scsi: megasas: Stop using the SCSI pointer (Tomas Henzl) [2049686] - aarch64: enable memory hotplug (Baoquan He) [1818517] - mm/memory_hotplug: introduce default dummy memory_add_physaddr_to_nid() (Baoquan He) [1818517] - arm64/mm: Add one hunk back missed in earlier back porting (Baoquan He) [1818517] - arm64/mm: Hold memory hotplug lock while walking for kernel page table dump (Baoquan He) [1818517] - ARM64: dump: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Baoquan He) [1818517] - net/mlx5: DR, Ignore modify TTL on RX if device doesn't support it (Amir Tzin) [2072934] - net: bridge: switchdev: check br_vlan_group() return value (Ivan Vecera) [2080332] - net: bridge: mst: Restrict info size queries to bridge ports (Ivan Vecera) [2080332] - net: bridge: mst: prevent NULL deref in br_mst_info_size() (Ivan Vecera) [2080332] - selftests: forwarding: Use same VRF for port and VLAN upper (Ivan Vecera) [2080332] - selftests: forwarding: Disable learning before link up (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to query a port's MST state (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to check if MST is enabled (Ivan Vecera) [2080332] - net: bridge: mst: Add helper to map an MSTI to a VID set (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST state changes (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of VLAN MSTI migrations (Ivan Vecera) [2080332] - net: bridge: mst: Notify switchdev drivers of MST mode changes (Ivan Vecera) [2080332] - net: bridge: mst: Support setting and reporting MST port states (Ivan Vecera) [2080332] - net: bridge: mst: Allow changing a VLAN's MSTI (Ivan Vecera) [2080332] - net: bridge: mst: Multiple Spanning Tree (MST) mode (Ivan Vecera) [2080332] - net: switchdev: remove lag_mod_cb from switchdev_handle_fdb_event_to_device (Ivan Vecera) [2080332] - selftests: forwarding: tests of locked port feature (Ivan Vecera) [2080332] - net: bridge: Add support for offloading of locked port flag (Ivan Vecera) [2080332] - net: bridge: Add support for bridge port in locked mode (Ivan Vecera) [2080332] - net: switchdev: avoid infinite recursion from LAG to bridge with port object handler (Ivan Vecera) [2080332] - bridge: switch br_net_exit to batch mode (Ivan Vecera) [2080332] - net: bridge: multicast: notify switchdev driver whenever MC processing gets disabled (Ivan Vecera) [2080332] - net: switchdev: introduce switchdev_handle_port_obj_{add,del} for foreign interfaces (Ivan Vecera) [2080332] - net: switchdev: rename switchdev_lower_dev_find to switchdev_lower_dev_find_rcu (Ivan Vecera) [2080332] - net: bridge: switchdev: replay all VLAN groups (Ivan Vecera) [2080332] - net: bridge: make nbp_switchdev_unsync_objs() follow reverse order of sync() (Ivan Vecera) [2080332] - net: bridge: switchdev: differentiate new VLANs from changed ones (Ivan Vecera) [2080332] - net: bridge: vlan: notify switchdev only when something changed (Ivan Vecera) [2080332] - net: bridge: vlan: make __vlan_add_flags react only to PVID and UNTAGGED (Ivan Vecera) [2080332] - net: bridge: vlan: don't notify to switchdev master VLANs without BRENTRY flag (Ivan Vecera) [2080332] - net: bridge: vlan: check early for lack of BRENTRY flag in br_vlan_add_existing (Ivan Vecera) [2080332] - net: bridge: vlan: check for errors from __vlan_del in __vlan_flush (Ivan Vecera) [2080332] - net/switchdev: use struct_size over open coded arithmetic (Ivan Vecera) [2080332] - net: bridge: vlan: fix single net device option dumping (Ivan Vecera) [2080332] - net: bridge: mcast: fix br_multicast_ctx_vlan_global_disabled helper (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce startup query interval minimum (Ivan Vecera) [2080332] - net: bridge: mcast: add and enforce query interval minimum (Ivan Vecera) [2080332] - netfilter: bridge: add support for pppoe filtering (Ivan Vecera) [2080332] - bridge: use __set_bit in __br_vlan_set_default_pvid (Ivan Vecera) [2080332] - net: bridge: Allow base 16 inputs in sysfs (Ivan Vecera) [2080332] - net/bridge: replace simple_strtoul to kstrtol (Ivan Vecera) [2080332] - net: bridge: Slightly optimize 'find_portno()' (Ivan Vecera) [2080332] - net: bridge: switchdev: fix shim definition for br_switchdev_mdb_notify (Ivan Vecera) [2080332] - net: bridge: switchdev: consistent function naming (Ivan Vecera) [2080332] - net: bridge: mdb: move all switchdev logic to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: split out the switchdev portion of br_mdb_notify (Ivan Vecera) [2080332] - net: bridge: move br_vlan_replay to br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: provide shim definition for br_vlan_flags (Ivan Vecera) [2080332] - net: switchdev: merge switchdev_handle_fdb_{add,del}_to_device (Ivan Vecera) [2080332] - net: bridge: create a common function for populating switchdev FDB entries (Ivan Vecera) [2080332] - net: bridge: move br_fdb_replay inside br_switchdev.c (Ivan Vecera) [2080332] - net: bridge: reduce indentation level in fdb_create (Ivan Vecera) [2080332] - net: bridge: rename br_fdb_insert to br_fdb_add_local (Ivan Vecera) [2080332] - net: bridge: rename fdb_insert to fdb_add_local (Ivan Vecera) [2080332] - net: bridge: remove fdb_insert forward declaration (Ivan Vecera) [2080332] - net: bridge: remove fdb_notify forward declaration (Ivan Vecera) [2080332] - net: make use of helper netif_is_bridge_master() (Ivan Vecera) [2080332] - net: use eth_hw_addr_set() (Ivan Vecera) [2080332] - net: bridge: Use array_size() helper in copy_to_user() (Ivan Vecera) [2080332] - net/mlx5: DR, Fix missing flow_source when creating multi-destination FW table (Amir Tzin) [2072920] - net/mlx5: DR, Fix slab-out-of-bounds in mlx5_cmd_dr_create_fte (Amir Tzin) [2072920] - ixgbevf: Require large buffers for build_skb on 82599VF (Ken Cox) [2037956] - ixgbevf: Remove useless DMA-32 fallback configuration (Ken Cox) [2037956] - ixgbevf: switch to napi_build_skb() (Ken Cox) [2037956] - ixgbevf: Add support for new mailbox communication between PF and VF (Ken Cox) [2037956] - ixgbevf: Mailbox improvements (Ken Cox) [2037956] - ixgbevf: Add legacy suffix to old API mailbox functions (Ken Cox) [2037956] - ixgbevf: Improve error handling in mailbox (Ken Cox) [2037956] - ixgbevf: Rename MSGTYPE to SUCCESS and FAILURE (Ken Cox) [2037956] - net: ixgbevf: Remove redundant initialization of variable ret_val (Ken Cox) [2037956] - selftests: mptcp: fix diag instability (Hangbin Liu) [2077358] - selftests: mptcp: fix ipv6 routing setup (Hangbin Liu) [2077358] - selftests: mptcp: clean tmp files in simult_flows (Hangbin Liu) [2077358] - selftests: netfilter: fix exit value for nft_concat_range (Hangbin Liu) [2077358] - selftests: netfilter: remove stray bash debug line (Hangbin Liu) [2077358] - selftests: Fix IPv6 address bind tests (Hangbin Liu) [2077358] - selftests: Fix raw socket bind tests with VRF (Hangbin Liu) [2077358] - selftests: net: Correct case name (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill nettest processes launched in subshell. (Hangbin Liu) [2077358] - selftests: pmtu.sh: Kill tcpdump processes launched by subshell. (Hangbin Liu) [2077358] - selftests: net: Fix a typo in udpgro_fwd.sh (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_tx: fix dst ip argument (Hangbin Liu) [2077358] - selftests/net: udpgso_bench_rx: fix port argument (Hangbin Liu) [2077358] - selftests: net: tls: remove unused variable and code (Hangbin Liu) [2077358] - selftest: net: fix typo in altname test (Hangbin Liu) [2077358]- net/mlx5: DR, Fix the threshold that defines when pool sync is initiated (Amir Tzin) [2062715] - net/mlx5: DR, Cache STE shadow memory (Amir Tzin) [2062715] - perf/x86/intel/lbr: Add static_branch for LBR INFO flags (Michael Petlan) [2039998] - perf/x86/intel/lbr: Support LBR format V7 (Michael Petlan) [2039998] - net/mlx5e: TC, fix decap fallback to uplink when int port not supported (Amir Tzin) [2077048] - net/mlx5e: Fix wrong source vport matching on tunnel rule (Amir Tzin) [2064589] - hv_balloon: rate-limit "Unhandled message" warning (Vitaly Kuznetsov) [2087270] - tcp: drop the hash_32() part from the index calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: increase source port perturb table to 2^16 (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: dynamically allocate the perturb table used by source ports (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add small random increments to the source port (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: resalt the secret every 10 seconds (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: use different parts of the port_offset for index and offset (Guillaume Nault) [2064876] {CVE-2022-1012} - secure_seq: use the 64 bits of the siphash for port offset calculation (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: add some entropy in __inet_hash_connect() (Guillaume Nault) [2064876] {CVE-2022-1012} - tcp: change source port randomizarion at connect() time (Guillaume Nault) [2064876] {CVE-2022-1012} - net/mlx5e: TC, Skip redundant ct clear actions (Amir Tzin) [2055590] - spi: pxa2xx: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040031] - mfd: intel-lpss: Add Intel Raptor Lake PCH-S PCI IDs (Prarit Bhargava) [2040031] - pinctrl: alderlake: Add Raptor Lake-S ACPI ID (Prarit Bhargava) [2040033] - i2c: i801: Add support for Intel Raptor Lake PCH-S (Prarit Bhargava) [2040027 2040029] - redhat/configs: Add CONFIG_INTEL_IDXD_PERFMON (Jerry Snitselaar) [1921296] - x86/fpu/xstate: Consolidate size calculations (Jerry Snitselaar) [2071461] - x86/fpu/xstate: Handle supervisor states in XSTATE permissions (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Handle compacted offsets correctly with supervisor states (Jerry Snitselaar) [2071461] - x86/fpu: Cache xfeature flags from CPUID (Jerry Snitselaar) [2071461] - x86/fpu/xsave: Initialize offset/size cache early (Jerry Snitselaar) [2071461] - x86/fpu: Remove unused supervisor only offsets (Jerry Snitselaar) [2071461] - dmaengine: idxd: Change license on idxd.h to LGPL (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix delta_rec and crc size field for completion record (Jerry Snitselaar) [1971892] - dmaengine: idxd: Remove useless DMA-32 fallback configuration (Jerry Snitselaar) [2072156] - dmaengine: idxd: restore traffic class defaults after wq reset (Jerry Snitselaar) [2046469] - dmaengine: idxd: deprecate token sysfs attributes for read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: change bandwidth token to read buffers (Jerry Snitselaar) [2040042] - dmaengine: idxd: fix wq settings post wq disable (Jerry Snitselaar) [2040045] - dmaengine: idxd: change MSIX allocation based on per wq activation (Jerry Snitselaar) [2040495] - edmaengine: idxd: fix descriptor flushing locking (Jerry Snitselaar) [2040495] - dmaengine: idxd: embed irq_entry in idxd_wq struct (Jerry Snitselaar) [2040495] - dmaengine: idxd: fix calling wq quiesce inside spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: add knob for enqcmds retries (Jerry Snitselaar) [2040047] - dmaengine: idxd: set defaults for wq configs (Jerry Snitselaar) [2040047] - dmaengine: idxd: handle interrupt handle revoked event (Jerry Snitselaar) [2040051] - dmaengine: idxd: handle invalid interrupt handle descriptors (Jerry Snitselaar) [2040051] - dmaengine: idxd: create locked version of idxd_quiesce() call (Jerry Snitselaar) [2040051] - dmaengine: idxd: add helper for per interrupt handle drain (Jerry Snitselaar) [2040051] - dmaengine: idxd: move interrupt handle assignment (Jerry Snitselaar) [2040051] - dmaengine: idxd: int handle management refactoring (Jerry Snitselaar) [2040051] - dmaengine: idxd: rework descriptor free path on failure (Jerry Snitselaar) [2040051] - dmaengine: idxd: fix missed completion on abort path (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix resource leak on dmaengine driver disable (Jerry Snitselaar) [2040040] - dmaengine: idxd: cleanup completion record allocation (Jerry Snitselaar) [2040040] - dmaengine: idxd: reconfig device after device reset command (Jerry Snitselaar) [2072156] - dmaengine: idxd: add halt interrupt support (Jerry Snitselaar) [2040047] - dmaengine: idxd: Use list_move_tail instead of list_del/list_add_tail (Jerry Snitselaar) [2072156] - dmanegine: idxd: fix resource free ordering on driver removal (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove kernel wq type set when load configuration (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove gen cap field per spec 1.2 update (Jerry Snitselaar) [2040040] - dmaengine: idxd: check GENCAP config support for gencfg register (Jerry Snitselaar) [2040040] - dmaengine: idxd: move out percpu_ref_exit() to ensure it's outside submission (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for dev_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt disable for cmd_lock (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix setting up priv mode for dwq (Jerry Snitselaar) [2040040] - dmaengine: idxd: set descriptor allocation size to threshold for swq (Jerry Snitselaar) [2040040] - dmaengine: idxd: make submit failure path consistent on desc freeing (Jerry Snitselaar) [2040040] - dmaengine: idxd: remove interrupt flag for completion list spinlock (Jerry Snitselaar) [2040040] - dmaengine: idxd: make I/O interrupt handler one shot (Jerry Snitselaar) [2040040] - dmaengine: idxd: clear block on fault flag when clear wq (Jerry Snitselaar) [2040040] - dmaengine: idxd: add capability check for 'block on fault' attribute (Jerry Snitselaar) [2040040] - dmaengine: idxd: Remove unused status variable in irq_process_work_list() (Jerry Snitselaar) [2072156] - dmaengine: idxd: Fix a possible NULL pointer dereference (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix abort status check (Jerry Snitselaar) [2040040] - dmanegine: idxd: add software command status (Jerry Snitselaar) [2040047] - dmaengine: idxd: rotate portal address for better performance (Jerry Snitselaar) [2040047] - dmaengine: idxd: fix wq slot allocation index check (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix uninit var for alt_drv (Jerry Snitselaar) [2072156] - dmaengine: idxd: Set defaults for GRPCFG traffic class (Jerry Snitselaar) [2040047] - dmaengine: idxd: remove fault processing code (Jerry Snitselaar) [2040040] - dmaengine: idxd: move dsa_drv support to compatible mode (Jerry Snitselaar) [1971961] - dmaengine: dsa: move dsa_bus_type out of idxd driver to standalone (Jerry Snitselaar) [1971961] - dmaengine: idxd: create user driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create dmaengine driver for wq 'device' (Jerry Snitselaar) [1971961] - dmaengine: idxd: create idxd_device sub-driver (Jerry Snitselaar) [1971961] - dmaengine: idxd: add type to driver in order to allow device matching (Jerry Snitselaar) [1971961] - dmanegine: idxd: open code the dsa_drv registration (Jerry Snitselaar) [1971961] - dmaengine: idxd: idxd: move remove() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move probe() bits for idxd 'struct device' to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: fix bus_probe() and bus_remove() for dsa_bus (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove iax_bus_type prototype (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove bus shutdown (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_disable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: move wq_enable() to device.c (Jerry Snitselaar) [1971961] - dmaengine: idxd: remove IDXD_DEV_CONF_READY (Jerry Snitselaar) [1971961] - dmaengine: idxd: add 'struct idxd_dev' as wrapper for conf_dev (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver name (Jerry Snitselaar) [1971961] - dmaengine: idxd: add driver register helper (Jerry Snitselaar) [1971961] - dmaengine: idxd: depends on !UML (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix PCI_MSI build errors (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix submission race window (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix sequence for pci driver remove() and shutdown() (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix setup sequence for MSIXPERM table (Jerry Snitselaar) [2040040] - dmaengine: idxd: fix array index when int_handles are being used (Jerry Snitselaar) [2040040] - dmaengine: idxd: assign MSIX vectors to each WQ rather than roundrobin (Jerry Snitselaar) [2072156] - dmaengine: idxd: fix desc->vector that isn't being updated (Jerry Snitselaar) [2040040] - dmaengine: idxd: add missing percpu ref put on failure (Jerry Snitselaar) [2072156] - dmaengine: idxd: have command status always set (Jerry Snitselaar) [1973882] - dmanegine: idxd: cleanup all device related bits after disabling device (Jerry Snitselaar) [2072156] - dmaengine: idxd: Simplify code and axe the use of a deprecated API (Jerry Snitselaar) [2072156] - dmaengine: idxd: remove devm allocation for idxd->int_handles (Jerry Snitselaar) [2072156] - dmaengine: idxd: Remove redundant variable cdev_ctx (Jerry Snitselaar) [2072156] - dmaengine: idxd: Add missing cleanup for early error out in probe call (Jerry Snitselaar) [1971892] - dmaengine: idxd: Enable IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: Add IDXD performance monitor support (Jerry Snitselaar) [1921296] - dmaengine: idxd: device cmd should use dedicated lock (Jerry Snitselaar) [1971892] - dmaengine: idxd: support reporting of halt interrupt (Jerry Snitselaar) [1971890] - dmaengine: idxd: convert sprintf() to sysfs_emit() for all usages (Jerry Snitselaar) [1971890] - dmaengine: idxd: add interrupt handle request and release support (Jerry Snitselaar) [1971890] - dmaengine: idxd: add support for readonly config mode (Jerry Snitselaar) [1971890] - dmaengine: idxd: add percpu_ref to descriptor submission path (Jerry Snitselaar) [1971949] - dmaengine: idxd: remove detection of device type (Jerry Snitselaar) [1971963] - Documentation/x86: Update documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [2071461] - tools/objtool: Check for use of the ENQCMD instruction in the kernel (Jerry Snitselaar) [2071461] - x86/cpufeatures: Re-enable ENQCMD (Jerry Snitselaar) [2071461] - x86/traps: Demand-populate PASID MSR via #GP (Jerry Snitselaar) [2071461] - sched: Define and initialize a flag to identify valid PASID in the task (Jerry Snitselaar) [2071461] - x86/fpu: Clear PASID when copying fpstate (Jerry Snitselaar) [2071461] - iommu/sva: Assign a PASID to mm on PASID allocation and free it on mm exit (Jerry Snitselaar) [2071461] - iommu/ioasid: Introduce a helper to check for valid PASIDs (Jerry Snitselaar) [2071461] - kernel/fork: Initialize mm's PASID (Jerry Snitselaar) [2071461] - mm: Change CONFIG option for mm->pasid field (Jerry Snitselaar) [2071461] - mm/fork: clear PASID for new mm (Jerry Snitselaar) [2071461] - iommu/sva: Rename CONFIG_IOMMU_SVA_LIB to CONFIG_IOMMU_SVA (Jerry Snitselaar) [2071461] - turbostat: fix PC6 displaying on some systems (Steve Best) [2040078]- quota: make dquot_quota_sync return errors from ->sync_fs (Lukas Czerner) [2083057] - redhat: disable more noisy rpminspect tests (Jarod Wilson) - mm: thp: replace the page lock with the seqlock for the THP mapcount (Andrea Arcangeli) [1958020] - mm: do_wp_page: deduplicate smart_lock_page (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup_must_unshare() cleanup (Andrea Arcangeli) [1958020] - mm: GUP: cleanup FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: COW: skip the page lock in the COW copy path (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() use can_read_pin_swap_page() (Andrea Arcangeli) [1958020] - mm: hugetlbfs: gup: gup_must_unshare(): enable hugetlbfs (Andrea Arcangeli) [1958020] - mm: hugetlbfs: FOLL_FAULT_UNSHARE (Andrea Arcangeli) [1958020] - mm: hugetlbfs: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE RHEL (Andrea Arcangeli) [1958020] - mm: gup: FOLL_NOUNSHARE: optimize follow_page (Andrea Arcangeli) [1958020] - mm: gup: FOLL_UNSHARE (Andrea Arcangeli) [1958020] - mm: gup: gup_must_unshare() (Andrea Arcangeli) [1958020] - mm: gup: COR: copy-on-read fault (Andrea Arcangeli) [1958020] - mm: thp: introduce page_trans_huge_anon_shared (Andrea Arcangeli) [1958020] - mm: thp: stabilize the THP mapcount in page_remove_anon_compound_rmap (Andrea Arcangeli) [1958020] - mm: thp: make the THP mapcount atomic with a seqlock (Andrea Arcangeli) [1958020] - mm: thp: consolidate mapcount logic on THP split (David Hildenbrand) [1958020] - vmxnet3: Remove useless DMA-32 fallback configuration (Kamal Heib) [2083561] - vmxnet3: fix minimum vectors alloc issue (Kamal Heib) [2083561] - net: vmxnet3: remove multiple false checks in vmxnet3_ethtool.c (Kamal Heib) [2083561] - vmxnet3: do not stop tx queues after netif_device_detach() (Kamal Heib) [2083561] - block: limit request dispatch loop duration (Ming Lei) [2005082] - esp: limit skb_page_frag_refill use to a single page (Sabrina Dubroca) [2062115] {CVE-2022-27666} - esp: Fix possible buffer overflow in ESP transformation (Sabrina Dubroca) [2062115] {CVE-2022-27666} - can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error path (Chris von Recklinghausen) [2080376] {CVE-2022-28390} - NFSD: Deprecate NFS_OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix offset type in I/O trace points (Scott Mayhew) [2064216] - NFSD: COMMIT operations must not return NFS?ERR_INVAL (Scott Mayhew) [2064216] - NFSD: Clamp WRITE offsets (Scott Mayhew) [2064216] - NFSD: Fix NFSv3 SETATTR/CREATE's handling of large file sizes (Scott Mayhew) [2064216] - NFSD: Fix ia_size underflow (Scott Mayhew) [2064216] - NFSD: Fix the behavior of READ near OFFSET_MAX (Scott Mayhew) [2064216] - NFSD: Fix READDIR buffer overflow (Scott Mayhew) [2064216] - nfsd: Fix nsfd startup race (again) (Scott Mayhew) [2064216] - NFS: Add a tracepoint to show the results of nfs_set_cache_invalid() (Scott Mayhew) [2064216] - NFSv42: Don't fail clone() unless the OP_CLONE operation failed (Scott Mayhew) [2064216] - NFSD: Fix exposure in nfsd4_decode_bitmap() (Scott Mayhew) [2064216] - NFSv4: Sanity check the parameters in nfs41_update_target_slotid() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from decode_getattr_*() functions (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_setsecurity (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_fhget() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_add_or_obtain() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label argument from nfs_instantiate() (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_setattrres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_getattr_res (Scott Mayhew) [2064216] - NFS: Remove the f_label from the nfs4_opendata and nfs_openres (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_lookupp_res struct (Scott Mayhew) [2064216] - NFS: Remove the label from the nfs4_lookup_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_link_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs4_create_res struct (Scott Mayhew) [2064216] - NFS: Remove the nfs4_label from the nfs_entry struct (Scott Mayhew) [2064216] - NFS: Create a new nfs_alloc_fattr_with_label() function (Scott Mayhew) [2064216] - NFS: Always initialise fattr->label in nfs_fattr_alloc() (Scott Mayhew) [2064216] - NFSv4: Remove unnecessary 'minor version' check (Scott Mayhew) [2064216] - NFSv4: Fix potential Oops in decode_op_map() (Scott Mayhew) [2064216] - NFSv4: Ensure decode_compound_hdr() sanity checks the tag (Scott Mayhew) [2064216] - NFS: Don't trace an uninitialised value (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to OFFLOAD_CANCEL (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CB_OFFLOAD (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to CLONE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to COPY (Scott Mayhew) [2064216] - NFSv4.2 add tracepoints to FALLOCATE and DEALLOCATE (Scott Mayhew) [2064216] - NFSv4.2 add tracepoint to SEEK (Scott Mayhew) [2064216] - nfs4: take a reference on the nfs_client when running FREE_STATEID (Scott Mayhew) [2064216] - NFS: Move NFS protocol display macros to global header (Scott Mayhew) [2064216] - NFS: Move generic FS show macros to global header (Scott Mayhew) [2064216] - SUNRPC: Clean up xs_tcp_setup_sock() (Scott Mayhew) [2064216] - NFSv4: Fix a regression in nfs_set_open_stateid_locked() (Scott Mayhew) [2064216] - NFS: Remove redundant call to __set_page_dirty_nobuffers (Scott Mayhew) [2064216] - NFS: Unexport nfs_probe_fsinfo() (Scott Mayhew) [2064216] - NFS: Call nfs_probe_server() during a fscontext-reconfigure event (Scott Mayhew) [2064216] - NFS: Replace calls to nfs_probe_fsinfo() with nfs_probe_server() (Scott Mayhew) [2064216] - NFS: Move nfs_probe_destination() into the generic client (Scott Mayhew) [2064216] - NFS: Create an nfs4_server_set_init_caps() function (Scott Mayhew) [2064216] - NFS: Remove --> and <-- dprintk call sites (Scott Mayhew) [2064216] - SUNRPC: Trace calls to .rpc_call_done (Scott Mayhew) [2064216] - NFS: Replace dprintk callsites in nfs_readpage(s) (Scott Mayhew) [2064216] - SUNRPC: Use BIT() macro in rpc_show_xprt_state() (Scott Mayhew) [2064216] - SUNRPC: Tracepoints should display tk_pid and cl_clid as a fixed-size field (Scott Mayhew) [2064216] - xprtrdma: Remove rpcrdma_ep::re_implicit_roundup (Scott Mayhew) [2064216] - xprtrdma: Provide a buffer to pad Write chunks of unaligned length (Scott Mayhew) [2064216] - Fix user namespace leak (Scott Mayhew) [2064216] - NFS: Save some space in the inode (Scott Mayhew) [2064216] - NFS: Fix WARN_ON due to unionization of nfs_inode.nrequests (Scott Mayhew) [2064216] - NFSv4: Fixes for nfs4_inode_return_delegation() (Scott Mayhew) [2064216] - NFS: Fix an Oops in pnfs_mark_request_commit() (Scott Mayhew) [2064216] - NFS: Fix up commit deadlocks (Scott Mayhew) [2064216] - NFSD:fix boolreturn.cocci warning (Scott Mayhew) [2064216] - nfsd: update create verifier comment (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_encode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_encode (Scott Mayhew) [2064216] - NFSD: Save location of NFSv4 COMPOUND status (Scott Mayhew) [2064216] - SUNRPC: Change return value type of .pc_decode (Scott Mayhew) [2064216] - SUNRPC: Replace the "__be32 *p" parameter to .pc_decode (Scott Mayhew) [2064216] - SUNRPC: De-duplicate .pc_release() call sites (Scott Mayhew) [2064216] - SUNRPC: Simplify the SVC dispatch code path (Scott Mayhew) [2064216] - NFS: Fix deadlocks in nfs_scan_commit_list() (Scott Mayhew) [2064216] - NFS: Instrument i_size_write() (Scott Mayhew) [2064216] - SUNRPC: Per-rpc_clnt task PIDs (Scott Mayhew) [2064216] - NFS: Remove unnecessary TRACE_DEFINE_ENUM()s (Scott Mayhew) [2064216] - SUNRPC: Capture value of xdr_buf::page_base (Scott Mayhew) [2064216] - svcrdma: Split svcrmda_wc_{read,write} tracepoints (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_send() tracepoint (Scott Mayhew) [2064216] - svcrdma: Split the svcrdma_wc_receive() tracepoint (Scott Mayhew) [2064216] - pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds (Scott Mayhew) [2064216] - NFS: Remove unnecessary page cache invalidations (Scott Mayhew) [2064216] - NFS: Fix dentry verifier races (Scott Mayhew) [2064216] - NFS: Further optimisations for 'ls -l' (Scott Mayhew) [2064216] - NFS: Fix up nfs_readdir_inode_mapping_valid() (Scott Mayhew) [2064216] - NFS: Ignore the directory size when marking for revalidation (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_DATA_INVAL_DEFER and NFS_INO_INVALID_DATA (Scott Mayhew) [2064216] - NFS: Default change_attr_type to NFS4_CHANGE_TYPE_IS_UNDEFINED (Scott Mayhew) [2064216] - NFSv4: Retrieve ACCESS on open if we're not using NFS4_CREATE_EXCLUSIVE (Scott Mayhew) [2064216] - NFS: Fix a few more clear_bit() instances that need release semantics (Scott Mayhew) [2064216] - SUNRPC: xprt_clear_locked() only needs release memory semantics (Scott Mayhew) [2064216] - SUNRPC: Remove unnecessary memory barriers (Scott Mayhew) [2064216] - SUNRPC: Remove WQ_HIGHPRI from xprtiod (Scott Mayhew) [2064216] - SUNRPC: Add cond_resched() at the appropriate point in __rpc_execute() (Scott Mayhew) [2064216] - SUNRPC: Partial revert of commit 6f9f17287e78 (Scott Mayhew) [2064216] - NFS: Fix up nfs_ctx_key_to_expire() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_rmdir() and nfs_unlink() (Scott Mayhew) [2064216] - NFS: Label the dentry with a verifier in nfs_link(), nfs_symlink() (Scott Mayhew) [2064216] - NFSD: Have legacy NFSD WRITE decoders use xdr_stream_subsegment() (Scott Mayhew) [2064216] - SUNRPC: xdr_stream_subsegment() must handle non-zero page_bases (Scott Mayhew) [2064216] - NFSD: simplify struct nfsfh (Scott Mayhew) [2064216] - NFSD: drop support for ancient filehandles (Scott Mayhew) [2064216] - NFSD: move filehandle format declarations out of "uapi". (Scott Mayhew) [2064216] - UNRPC: Return specific error code on kmalloc failure (Scott Mayhew) [2064216] - NFSD: Optimize DRC bucket pruning (Scott Mayhew) [2064216] - nfsd: don't alloc under spinlock in rpc_parse_scope_id (Scott Mayhew) [2064216] - NFSD: Keep existing listeners on portlist error (Scott Mayhew) [2064216] - nfs: Fix kerneldoc warning shown up by W=1 (Scott Mayhew) [2064216] - nfsd: back channel stuck in SEQ4_STATUS_CB_PATH_DOWN (Scott Mayhew) [2064216] - NLM: Fix svcxdr_encode_owner() (Scott Mayhew) [2064216] - SUNRPC: improve error response to over-size gss credential (Scott Mayhew) [2064216] - NFS: Always provide aligned buffers to the RPC read layers (Scott Mayhew) [2064216] - NFSv3: Delete duplicate judgement in nfs3_async_handle_jukebox (Scott Mayhew) [2064216] - SUNRPC: Tweak TCP socket shutdown in the RPC client (Scott Mayhew) [2064216] - svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free() (Scott Mayhew) [2064216] - rpc: fix gss_svc_init cleanup on failure (Scott Mayhew) [2064216] - SUNRPC: Add RPC_AUTH_TLS protocol numbers (Scott Mayhew) [2064216] - NFSD: remove vanity comments (Scott Mayhew) [2064216] - svcrdma: Convert rdma->sc_rw_ctxts to llist (Scott Mayhew) [2064216] - svcrdma: Relieve contention on sc_send_lock. (Scott Mayhew) [2064216] - svcrdma: Fewer calls to wake_up() in Send completion handler (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for nfsd_clid_class (Scott Mayhew) [2064216] - NFSD: Use new __string_len C macros for the nfs_dirent tracepoint (Scott Mayhew) [2064216] - tracing: Add trace_event helper macros __string_len() and __assign_str_len() (Scott Mayhew) [2064216] - NFSD: Clean up splice actor (Scott Mayhew) [2064216] - NFS: Clean up the synopsis of callback process_op() (Scott Mayhew) [2064216] - NFS: Extract the xdr_init_encode/decode() calls from decode_compound (Scott Mayhew) [2064216] - NFS: Remove unused callback void decoder (Scott Mayhew) [2064216] - NFS: Add a private local dispatcher for NFSv4 callback operations (Scott Mayhew) [2064216] - SUNRPC: Eliminate the RQ_AUTHERR flag (Scott Mayhew) [2064216] - SUNRPC: Set rq_auth_stat in the pg_authenticate() callout (Scott Mayhew) [2064216] - SUNRPC: Add svc_rqst::rq_auth_stat (Scott Mayhew) [2064216] - NFSv4/pNFS: Remove dead code (Scott Mayhew) [2064216] - SUNRPC: Convert rpc_client refcount to use refcount_t (Scott Mayhew) [2064216] - xprtrdma: Eliminate rpcrdma_post_sends() (Scott Mayhew) [2064216] - xprtrdma: Add an xprtrdma_post_send_err tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add xprtrdma_post_recvs_err() tracepoint (Scott Mayhew) [2064216] - xprtrdma: Add an rpcrdma_mr_completion_class (Scott Mayhew) [2064216] - xprtrdma: Don't display r_xprt memory addresses in tracepoints (Scott Mayhew) [2064216] - xprtrdma: Disconnect after an ib_post_send() immediate error (Scott Mayhew) [2064216] - SUNRPC: Record timeout value in xprt_retransmit tracepoint (Scott Mayhew) [2064216] - SUNRPC: xprt_retransmit() displays the the NULL procedure incorrectly (Scott Mayhew) [2064216] - treewide: Add missing semicolons to __assign_str uses (Scott Mayhew) [2064216] - SUNRPC: Remove unneeded TRACE_DEFINE_ENUMs (Scott Mayhew) [2064216] - SUNRPC: Unset RPC_TASK_NO_RETRANS_TIMEOUT for NULL RPCs (Scott Mayhew) [2064216] - SUNRPC: Refactor rpc_ping() (Scott Mayhew) [2064216] - nfsd: fix NULL dereference in nfs3svc_encode_getaclres (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv4 void arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void results encoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 FREE_ALL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SHARE arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 SM_NOTIFY arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 nlm_res arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 UNLOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 CANCEL arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 LOCK arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 TEST arguments decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Update the NLMv1 void argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - lockd: Common NLM XDR helpers (Scott Mayhew) [2064216] - lockd: Create a simplified .vs_dispatch method for NLM requests (Scott Mayhew) [2064216] - lockd: Remove stale comments (Scott Mayhew) [2064216] - nfsd: rpc_peeraddr2str needs rcu lock (Scott Mayhew) [2064216] - rpc: remove redundant initialization of variable status (Scott Mayhew) [2064216] - NFSv4: setlease should return EAGAIN if locks are not available (Scott Mayhew) [2064216] - NFS: Avoid duplicate resets of attribute cache timeouts (Scott Mayhew) [2064216] - NFSv4: Fix handling of non-atomic change attrbute updates (Scott Mayhew) [2064216] - NFS: Fix up inode attribute revalidation timeouts (Scott Mayhew) [2064216] - NFSv4: Add support for application leases underpinned by a delegation (Scott Mayhew) [2064216] - NFSv4: Add lease breakpoints in case of a delegation recall or return (Scott Mayhew) [2064216] - NFSv4: Fix delegation return in cases where we have to retry (Scott Mayhew) [2064216] - nfsd: move some commit_metadata()s outside the inode lock (Scott Mayhew) [2064216] - NFSD: Update nfsd_cb_args tracepoint (Scott Mayhew) [2064216] - NFSD: Remove the nfsd_cb_work and nfsd_cb_done tracepoints (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_probe tracepoint (Scott Mayhew) [2064216] - NFSD: Replace the nfsd_deleg_break tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_offload tracepoint (Scott Mayhew) [2064216] - NFSD: Add an nfsd_cb_lm_notify tracepoint (Scott Mayhew) [2064216] - NFSD: Enhance the nfsd_cb_setup tracepoint (Scott Mayhew) [2064216] - NFSD: Remove spurious cb_setup_err tracepoint (Scott Mayhew) [2064216] - NFSD: Adjust cb_shutdown tracepoint (Scott Mayhew) [2064216] - NFSD: Add cb_lost tracepoint (Scott Mayhew) [2064216] - NFSD: Drop TRACE_DEFINE_ENUM for NFSD4_CB_ macros (Scott Mayhew) [2064216] - NFSD: Capture every CB state transition (Scott Mayhew) [2064216] - NFSD: Constify @fh argument of knfsd_fh_hash() (Scott Mayhew) [2064216] - NFSD: Add tracepoints for EXCHANGEID edge cases (Scott Mayhew) [2064216] - NFSD: Add tracepoints for SETCLIENTID edge cases (Scott Mayhew) [2064216] - NFSD: Add a couple more nfsd_clid_expired call sites (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_destroyed tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_reclaim_complete tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_confirmed tracepoint (Scott Mayhew) [2064216] - NFSD: Remove trace_nfsd_clid_inuse_err (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_verf_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add nfsd_clid_cred_mismatch tracepoint (Scott Mayhew) [2064216] - NFSD: Add an RPC authflavor tracepoint display helper (Scott Mayhew) [2064216] - NFS: Ensure the NFS_CAP_SECURITY_LABEL capability is set when appropriate (Scott Mayhew) [2064216] - NFS: Split attribute support out from the server capabilities (Scott Mayhew) [2064216] - NFS: Don't store NFS_INO_REVAL_FORCED (Scott Mayhew) [2064216] - NFSv4: link must update the inode nlink. (Scott Mayhew) [2064216] - NFSv4: nfs4_inc/dec_nlink_locked should also invalidate ctime (Scott Mayhew) [2064216] - NFS: Another inode revalidation improvement (Scott Mayhew) [2064216] - NFS: Use information about the change attribute to optimise updates (Scott Mayhew) [2064216] - NFSv4: Add support for the NFSv4.2 "change_attr_type" attribute (Scott Mayhew) [2064216] - NFS: Simplify cache consistency in nfs_check_inode_attributes() (Scott Mayhew) [2064216] - NFS: Remove a line of code that has no effect in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode() (Scott Mayhew) [2064216] - NFS: Separate tracking of file mode cache validity from the uid/gid (Scott Mayhew) [2064216] - NFS: Separate tracking of file nlinks cache validity from the mode/uid/gid (Scott Mayhew) [2064216] - NFSv4: Fix nfs4_bitmap_copy_adjust() (Scott Mayhew) [2064216] - NFS: Don't set NFS_INO_REVAL_PAGECACHE in the inode cache validity (Scott Mayhew) [2064216] - NFS: Replace use of NFS_INO_REVAL_PAGECACHE when checking cache validity (Scott Mayhew) [2064216] - NFS: Add a cache validity flag argument to nfs_revalidate_inode() (Scott Mayhew) [2064216] - NFS: nfs_setattr_update_inode() should clear the suid/sgid bits (Scott Mayhew) [2064216] - NFS: Fix up statx() results (Scott Mayhew) [2064216] - NFS: Don't revalidate attributes that are not being asked for (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based encoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv2 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR entry encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv2 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 STATFS result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 diropres encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 attrstat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 stat encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Reduce svc_rqst::rq_pages churn during READDIR operations (Scott Mayhew) [2064216] - NFSD: Remove unused NFSv3 directory entry encoders (Scott Mayhew) [2064216] - NFSD: Update NFSv3 READDIR entry encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READDIR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Count bytes instead of pages in the NFSv3 READDIR encoder (Scott Mayhew) [2064216] - NFSD: Add a helper that encodes NFSv3 directory offset cookies (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 COMMIT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 PATHCONF3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSINFO3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 FSSTAT3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 RENAMEv3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 CREATE family of encoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 WRITE3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READ3res encode to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 READLINK3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 wccstat result encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 LOOKUP3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 ACCESS3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the GETATTR3res encoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Extract the svcxdr_init_encode() helper (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv3 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Clean up after updating NFSv2 ACL decoders (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL ACCESS argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 ACL GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add an xdr_stream-based decoder for NFSv2/3 ACLs (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETACL argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Remove argument length checking in nfsd_dispatch() (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SYMLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 CREATE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 SETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 LINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 RENAME argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update NFSv2 diropargs decoding to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READDIR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READLINK argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 WRITE argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 READ argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv2 GETATTR argument decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKNOD3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SYMLINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the MKDIR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the CREATE3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the SETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the LINK3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the RENAME3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update the NFSv3 DIROPargs decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update COMMIT3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READDIR3args decoders to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Add helper to set up the pages where the dirlist is encoded (Scott Mayhew) [2064216] - NFSD: Fix returned READDIR offset cookie (Scott Mayhew) [2064216] - NFSD: Update READLINK3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update WRITE3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update READ3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update ACCESS3arg decoder to use struct xdr_stream (Scott Mayhew) [2064216] - NFSD: Update GETATTR3args decoder to use struct xdr_stream (Scott Mayhew) [2064216] - SUNRPC: Move definition of XDR_UNIT (Scott Mayhew) [2064216] - rpcrdma: Capture bytes received in Receive completion tracepoints (Scott Mayhew) [2064216] - NFSD: Restore NFSv4 decoding's SAVEMEM functionality (Scott Mayhew) [2064216] - NFSD: Remove macros that are no longer used (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_compound() (Scott Mayhew) [2064216] - NFSD: Make nfsd4_ops::opnum a u32 (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_listxattrs() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setxattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_xattr_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_clone() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_seek() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_offload_status() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_copy() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fallocate() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_reclaim_complete() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_clientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_test_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_sequence() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo_no_name() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutget() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_layoutcommit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getdeviceinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_free_stateid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_destroy_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create_session() (Scott Mayhew) [2064216] - NFSD: Add a helper to decode channel_attrs4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode nfs_impl_id4 (Scott Mayhew) [2064216] - NFSD: Add a helper to decode state_protect4_a (Scott Mayhew) [2064216] - NFSD: Add a separate decoder for ssv_sp_parms (Scott Mayhew) [2064216] - NFSD: Add a separate decoder to handle state_protect_ops (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_bind_conn_to_session() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_backchannel_ctl() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_cb_sec() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_release_lockowner() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_write() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_verify() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setclientid() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_setattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_secinfo() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_renew() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_rename() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_remove() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_readdir() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_read() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_putfh() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_downgrade() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open_confirm() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_open() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's open_claim4 argument (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_deny() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_share_access() (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's openflag4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode OPEN's createhow4 argument (Scott Mayhew) [2064216] - NFSD: Add helper to decode NFSv4 verifiers (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lookup() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_locku() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lockt() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_lock() (Scott Mayhew) [2064216] - NFSD: Add helper for decoding locker4 (Scott Mayhew) [2064216] - NFSD: Add helpers to decode a clientid4 and an NFSv4 state owner (Scott Mayhew) [2064216] - NFSD: Relocate nfsd4_decode_opaque() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_link() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_getattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_delegreturn() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_create() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_fattr() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 umask attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 security label attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 time_set attributes (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner_group attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 owner attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 mode attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 acl attribute (Scott Mayhew) [2064216] - NFSD: Replace READ* macros that decode the fattr4 size attribute (Scott Mayhew) [2064216] - NFSD: Change the way the expected length of a fattr4 is checked (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_commit() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_close() (Scott Mayhew) [2064216] - NFSD: Replace READ* macros in nfsd4_decode_access() (Scott Mayhew) [2064216] - NFSD: Replace the internals of the READ_BUF() macro (Scott Mayhew) [2064216] - nfsd/nfs3: remove unused macro nfsd3_fhandleres (Scott Mayhew) [2064216] - vt: vt_ioctl: fix race in VT_RESIZEX (Čestmír Kalina) [2068338] - net/mlx5: Bridge, Fix devlink deadlock on net namespace deletion (Amir Tzin) [2055580] - openvswitch: Fix setting ipv6 fields causing hw csum failure (Eelco Chaudron) [1974356]- Fix up versioning for maintainer builds (Jarod Wilson) - powerpc/iommu: Enable remaining IOMMU Pagesizes present in LoPAR (Gustavo Walbon) [1987109] - sizes.h: add SZ_8G/SZ_16G/SZ_32G macros (Gustavo Walbon) [1987109] - x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN (Puneet Sethi) [2040336] - dm integrity: fix memory corruption when tag_size is less than digest size (Benjamin Marzinski) [2081775] - sctp: check asoc strreset_chunk in sctp_generate_reconf_event (Xin Long) [2079980] - sctp: Initialize daddr on peeled off socket (Xin Long) [2079980] - sctp: fix kernel-infoleak for SCTP sockets (Xin Long) [2079980] - sctp: do not update transport pathmtu if SPP_PMTUD_ENABLE is not set (Xin Long) [2079980] - dm crypt: fix copy and paste bug in crypt_alloc_req_aead (Benjamin Marzinski) [2073431] - dm crypt: defer decryption to a tasklet if interrupts disabled (Benjamin Marzinski) [2073431] - dm crypt: do not call bio_endio() from the dm-crypt tasklet (Benjamin Marzinski) [2073431] - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq (Benjamin Marzinski) [2073431] - dm crypt: do not wait for backlogged crypto request completion in softirq (Benjamin Marzinski) [2073431] - dm crypt: document new no_workqueue flags (Benjamin Marzinski) [2073431] - dm crypt: add flags to optionally bypass kcryptd workqueues (Benjamin Marzinski) [2073431] - tracing/osnoise: Force quiescent states while tracing (Jerome Marchand) [2069710] - tracing/osnoise: Do not unregister events twice (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_main to sleep for microseconds (Jerome Marchand) [2069710] - tracing/osnoise: Properly unhook events if start_per_cpu_kthreads() fails (Jerome Marchand) [2069710] - tracing/osnoise: Make osnoise_instances static (Jerome Marchand) [2069710] - tracing/osnoise: Remove PREEMPT_RT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Remove STACKTRACE ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Allow multiple instances of the same tracer (Jerome Marchand) [2069710] - tracing/osnoise: Remove TIMERLAT ifdefs from inside functions (Jerome Marchand) [2069710] - tracing/osnoise: Support a list of trace_array *tr (Jerome Marchand) [2069710] - tracing/osnoise: Use start/stop_per_cpu_kthreads() on osnoise_cpus_write() (Jerome Marchand) [2069710] - tracing/osnoise: Split workload start from the tracer start (Jerome Marchand) [2069710] - tracing/osnoise: Improve comments about barrier need for NMI callbacks (Jerome Marchand) [2069710] - tracing/osnoise: Do not follow tracing_cpumask (Jerome Marchand) [2069710] - trace/timerlat: Add migrate-disabled field to the timerlat header (Jerome Marchand) [2069710] - trace/osnoise: Add migrate-disabled field to the osnoise header (Jerome Marchand) [2069710] - tracing/doc: Fix typos on the timerlat tracer documentation (Jerome Marchand) [2069710] - trace/osnoise: Fix an ifdef comment (Jerome Marchand) [2069710] - redhat: indicate HEAD state in tarball/rpm name (Jarod Wilson) - selftest: net: Test IPv4 PMTU exceptions with DSCP and ECN (Guillaume Nault) [2081453] - ipv4: Fix route lookups when handling ICMP redirects and PMTU updates (Guillaume Nault) [2081453] - ipv4: tcp: send zero IPID in SYNACK messages (Guillaume Nault) [2081453] - ipv4: raw: lock the socket in raw_bind() (Guillaume Nault) [2081453] - net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO (Hangbin Liu) [2066976] - net/packet: fix packet_sock xmit return value checking (Hangbin Liu) [2066976] - doc/ip-sysctl: add bc_forwarding (Xin Long) [2080486] - net/packet: fix packet_sock xmit return value checking (Xin Long) [2080486] - net: handle ARPHRD_PIMREG in dev_is_mac_header_xmit() (Xin Long) [2080486] - net/packet: fix slab-out-of-bounds access in packet_recvmsg() (Xin Long) [2080486] - veth: fix races around rq->rx_notify_masked (Xin Long) [2080486] - af_packet: fix data-race in packet_setsockopt / packet_setsockopt (Xin Long) [2080486] - ipv4: remove sparse error in ip_neigh_gw4() (Xin Long) [2080486] - af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress (Xin Long) [2080486] - veth: Do not record rx queue hint in veth_xmit (Xin Long) [2080486] - veth: ensure skb entering GRO are not cloned. (Xin Long) [2080486] - ethtool: Fix link extended state for big endian (Xin Long) [2080486] - ethtool: do not perform operations on net devices being unregistered (Xin Long) [2080486] - ethtool: Add transceiver module extended state (Xin Long) [2080486] - ethtool: runtime-resume netdev parent in ethnl_ops_begin (Xin Long) [2080486] - ethtool: move netif_device_present check from ethnl_parse_header_dev_get to ethnl_ops_begin (Xin Long) [2080486] - ethtool: move implementation of ethnl_ops_begin/complete to netlink.c (Xin Long) [2080486] - net: validate lwtstate->data before returning from skb_tunnel_info() (Xin Long) [2080486]- bnx2x: fix napi API usage sequence (Manish Chopra) [2080659] - netfilter: fix use-after-free in __nf_register_net_hook() (Florian Westphal) [2080272] - netfilter: nf_tables: unregister flowtable hooks on netns exit (Florian Westphal) [2080272] - netfilter: nftables: add helper function to release hooks of one single table (Florian Westphal) [2080272] - netfilter: nft_socket: only do sk lookups when indev is available (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: re-init for syn packets only (Florian Westphal) [2080272] - netfilter: nft_set_rbtree: overlap detection with element re-addition after deletion (Florian Westphal) [2080272] - netfilter: nf_tables: fix memory leak during stateful obj update (Florian Westphal) [2080272] - netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options (Florian Westphal) [2080272] - netfilter: ctnetlink: disable helper autoassign (Florian Westphal) [2080272] - netfilter: nft_payload: don't allow th access for fragments (Florian Westphal) [2080272] - netfilter: nft_payload: simplify vlan header handling (Florian Westphal) [2080272] - RDMA/rxe: Change mcg_lock to a _bh lock (Kamal Heib) [2056500] - RDMA/rxe: Do not call dev_mc_add/del() under a spinlock (Kamal Heib) [2056500] - RDMA/rxe: Recheck the MR in when generating a READ reply (Kamal Heib) [2056500] - RDMA/rxe: Fix "Replace mr by rkey in responder resources" (Kamal Heib) [2056500] - RDMA/siw: Fix a condition race issue in MPA request processing (Kamal Heib) [2056500] - RDMA/irdma: Fix possible crash due to NULL netdev in notifier (Kamal Heib) [2056500] - RDMA/irdma: Reduce iWARP QP destroy time (Kamal Heib) [2056500] - RDMA/irdma: Flush iWARP QP if modified to ERR from RTR state (Kamal Heib) [2056500] - RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core() (Kamal Heib) [2056500] - RDMA/hfi1: Fix use-after-free bug for mm struct (Kamal Heib) [2056500] - IB/rdmavt: add lock to call to rvt_error_qp to prevent a race condition (Kamal Heib) [2056500] - IB/cm: Cancel mad on the DREQ event when the state is MRA_REP_RCVD (Kamal Heib) [2056500] - RDMA/nldev: Prevent underflow in nldev_stat_set_counter_dynamic_doit() (Kamal Heib) [2056500] - IB/iser: Fix error flow in case of registration failure (Kamal Heib) [2056500] - IB/iser: Generalize map/unmap dma tasks (Kamal Heib) [2056500] - IB/iser: Use iser_fr_desc as registration context (Kamal Heib) [2056500] - IB/iser: Remove iser_reg_data_sg helper function (Kamal Heib) [2056500] - RDMA/rxe: Use standard names for ref counting (Kamal Heib) [2056500] - RDMA/rxe: Replace red-black trees by xarrays (Kamal Heib) [2056500] - RDMA/rxe: Shorten pool names in rxe_pool.c (Kamal Heib) [2056500] - RDMA/rxe: Move max_elem into rxe_type_info (Kamal Heib) [2056500] - RDMA/rxe: Replace obj by elem in declaration (Kamal Heib) [2056500] - RDMA/rxe: Delete _locked() APIs for pool objects (Kamal Heib) [2056500] - RDMA/rxe: Reverse the sense of RXE_POOL_NO_ALLOC (Kamal Heib) [2056500] - RDMA/rxe: Replace mr by rkey in responder resources (Kamal Heib) [2056500] - RDMA/rxe: Fix ref error in rxe_av.c (Kamal Heib) [2056500] - RDMA/irdma: Add support for address handle re-use (Kamal Heib) [2056500] - Revert "RDMA/core: Fix ib_qp_usecnt_dec() called when error" (Kamal Heib) [2056500] - RDMA/rxe: Remove useless argument for update_state() (Kamal Heib) [2056500] - RDMA/rxe: Change variable and function argument to proper type (Kamal Heib) [2056500] - RDMA/irdma: Prevent some integer underflows (Kamal Heib) [2056500] - RDMA/core: Fix ib_qp_usecnt_dec() called when error (Kamal Heib) [2056500] - IB/hfi1: Allow larger MTU without AIP (Kamal Heib) [2056500] - RDMA/core: Remove unnecessary statements (Kamal Heib) [2056500] - RDMA/irdma: Remove incorrect masking of PD (Kamal Heib) [2056500] - RDMA/irdma: Fix Passthrough mode in VM (Kamal Heib) [2056500] - RDMA/irdma: Fix netdev notifications for vlan's (Kamal Heib) [2056500] - RDMA/irdma: Make irdma_create_mg_ctx return a void (Kamal Heib) [2056500] - RDMA/irdma: Move union irdma_sockaddr to header file (Kamal Heib) [2056500] - RDMA/irdma: Remove the unnecessary variable saddr (Kamal Heib) [2056500] - RDMA/irdma: Use net_type to check network type (Kamal Heib) [2056500] - RDMA/rxe: Cleanup rxe_mcast.c (Kamal Heib) [2056500] - RDMA/rxe: Collect cleanup mca code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Collect mca init code in a subroutine (Kamal Heib) [2056500] - RDMA/rxe: Warn if mcast memory is not freed (Kamal Heib) [2056500] - RDMA/irdma: Remove excess error variables (Kamal Heib) [2056500] - RDMA/irdma: Propagate error codes (Kamal Heib) [2056500] - RDMA/irdma: Remove enum irdma_status_code (Kamal Heib) [2056500] - RDMA/ib_srp: Add more documentation (Kamal Heib) [2056500] - IB/cma: Allow XRC INI QPs to set their local ACK timeout (Kamal Heib) [2056500] - RDMA/rxe: Remove mcg from rxe pools (Kamal Heib) [2056500] - RDMA/rxe: Remove key'ed object support (Kamal Heib) [2056500] - RDMA/rxe: Replace pool key by rxe->mcg_tree (Kamal Heib) [2056500] - RDMA/rxe: Replace int num_qp by atomic_t qp_num (Kamal Heib) [2056500] - RDMA/rxe: Replace grp by mcg, mce by mca (Kamal Heib) [2056500] - RDMA/rxe: Use kzmalloc/kfree for mca (Kamal Heib) [2056500] - RDMA/rxe: Move mcg_lock to rxe (Kamal Heib) [2056500] - RDMA/hfi: Replace cpumask_weight with cpumask_empty where appropriate (Kamal Heib) [2056500] - RDMA/irdma: Refactor DCB bits in prep for DSCP support (Kamal Heib) [2056500] - RDMA/opa: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/iser: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/ipoib: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/rxe: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/usnic: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/hfi1: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Delete useless module.h include (Kamal Heib) [2056500] - RDMA/core: Set MR type in ib_reg_user_mr (Kamal Heib) [2056500] - md: Set MD_BROKEN for RAID1 and RAID10 (Nigel Croxon) [2042729] - raid5: introduce MD_BROKEN (Nigel Croxon) [2042729] - RHEL only Changes to support block changes not picked up (Nigel Croxon) [2042729] - md: fix NULL pointer deref with nowait but no mddev->queue (Nigel Croxon) [2042729] - md: use default_groups in kobj_type (Nigel Croxon) [2042729] - md: Move alloc/free acct bioset in to personality (Nigel Croxon) [2042729] - md: fix spelling of "its" (Nigel Croxon) [2042729] - md: raid456 add nowait support (Nigel Croxon) [2042729] - md: raid10 add nowait support (Nigel Croxon) [2042729] - md: raid1 add nowait support (Nigel Croxon) [2042729] - md: add support for REQ_NOWAIT (Nigel Croxon) [2042729] - md/raid5: play nice with PREEMPT_RT (Nigel Croxon) [2042729] - md/raid1: fix missing bitmap update w/o WriteMostly devices (Nigel Croxon) [2042729] - md: fix double free of mddev->private in autorun_array() (Nigel Croxon) [2042729] - md: fix update super 1.0 on rdev size change (Nigel Croxon) [2042729] - raid5-ppl: use swap() to make code cleaner (Nigel Croxon) [2042729] - md/bitmap: don't set max_write_behind if there is no write mostly device (Nigel Croxon) [2042729] - md: update superblock after changing rdev flags in state_store (Nigel Croxon) [2042729] - md: remove unused argument from md_new_event (Nigel Croxon) [2042729] - md/raid5: call roundup_pow_of_two in raid5_run (Nigel Croxon) [2042729] - md/raid1: use rdev in raid1_write_request directly (Nigel Croxon) [2042729] - md/raid1: only allocate write behind bio for WriteMostly device (Nigel Croxon) [2042729] - md: properly unwind when failing to add the kobject in md_alloc (Nigel Croxon) [2042729] - md: extend disks_mutex coverage (Nigel Croxon) [2042729] - md: add the bitmap group to the default groups for the md kobject (Nigel Croxon) [2042729] - md: add error handling support for add_disk() (Nigel Croxon) [2042729] - md: fix a lock order reversal in md_alloc (Nigel Croxon) [2042729] - scsi: qedf: Stop using the SCSI pointer (Nilesh Javali) [2044843] - scsi: qedf: Change context reset messages to ratelimited (Nilesh Javali) [2044843] - scsi: qedf: Fix refcount issue when LOGO is received during TMF (Nilesh Javali) [2044843] - scsi: qedf: Add stag_work to all the vports (Nilesh Javali) [2044843] - scsi: qedf: Fix potential dereference of NULL pointer (Nilesh Javali) [2044843] - eth: fwnode: remove the addr len from mac helpers (Íñigo Huguet) [2069565] - eth: fwnode: change the return type of mac address helpers (Íñigo Huguet) [2069565] - device property: move mac addr helpers to eth.c (Íñigo Huguet) [2069565] - net: thunderx: Use fwnode_get_mac_address() (Íñigo Huguet) [2069565] - qede: confirm skb is allocated before using (Manish Chopra) [2040267] - qed: fix ethtool register dump (Manish Chopra) [2040267] - qed: remove unnecessary memset in qed_init_fw_funcs (Manish Chopra) [2040267] - qed: return status of qed_iov_get_link (Manish Chopra) [2040267] - net: qlogic: check the return value of dma_alloc_coherent() in qed_vf_hw_prepare() (Manish Chopra) [2040267] - qed: validate and restrict untrusted VFs vlan promisc mode (Manish Chopra) [2040267] - qed: display VF trust config (Manish Chopra) [2040267] - qed: prevent a fw assert during device shutdown (Manish Chopra) [2040267] - qed: use msleep() in qed_mcp_cmd() and add qed_mcp_cmd_nosleep() for udelay. (Manish Chopra) [2040267] - qed: Use dma_set_mask_and_coherent() and simplify code (Manish Chopra) [2040267] - qed*: esl priv flag support through ethtool (Manish Chopra) [2040267] - qed*: enhance tx timeout debug info (Manish Chopra) [2040267] - qede: validate non LSO skb length (Manish Chopra) [2040267] - qed: Enhance rammod debug prints to provide pretty details (Manish Chopra) [2040267] - net: qed: fix the array may be out of bound (Manish Chopra) [2040267] - qed: Use the bitmap API to simplify some functions (Manish Chopra) [2040267] - RDMA/qed: Use helper function to set GUIDs (Manish Chopra) [2040267] - net: qed_dev: fix check of true !rc expression (Manish Chopra) [2040267] - net: qed_ptp: fix check of true !rc expression (Manish Chopra) [2040267] - RDMA/qedr: Remove unsupported qedr_resize_cq callback (Manish Chopra) [2040267] - qed: Change the TCP common variable - "iscsi_ooo" (Manish Chopra) [2040267] - qed: Optimize the ll2 ooo flow (Manish Chopra) [2040267] - net: qed_debug: fix check of false (grc_param < 0) expression (Manish Chopra) [2040267] - qed: Fix missing error code in qed_slowpath_start() (Manish Chopra) [2040267] - qed: Fix compilation for CONFIG_QED_SRIOV undefined scenario (Manish Chopra) [2040267] - qed: Initialize debug string array (Manish Chopra) [2040267] - qed: Fix spelling mistake "ctx_bsaed" -> "ctx_based" (Manish Chopra) [2040267] - qed: fix ll2 establishment during load of RDMA driver (Manish Chopra) [2040267] - qed: Update the TCP active termination 2 MSL timer ("TIME_WAIT") (Manish Chopra) [2040267] - qed: Update TCP silly-window-syndrome timeout for iwarp, scsi (Manish Chopra) [2040267] - qed: Update debug related changes (Manish Chopra) [2040267] - qed: Add '_GTT' suffix to the IRO RAM macros (Manish Chopra) [2040267] - qed: Update FW init functions to support FW 8.59.1.0 (Manish Chopra) [2040267] - qed: Use enum as per FW 8.59.1.0 in qed_iro_hsi.h (Manish Chopra) [2040267] - qed: Update qed_hsi.h for fw 8.59.1.0 (Manish Chopra) [2040267] - qed: Update qed_mfw_hsi.h for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Update common_hsi for FW ver 8.59.1.0 (Manish Chopra) [2040267] - qed: Split huge qed_hsi.h header file (Manish Chopra) [2040267] - qed: Remove e4_ and _e4 from FW HSI (Manish Chopra) [2040267] - qed: Fix kernel-doc warnings (Manish Chopra) [2040267] - qed: Don't ignore devlink allocation failures (Manish Chopra) [2040267] - qed: Improve the stack space of filter_config() (Manish Chopra) [2040267] - RDMA/qedr: Move variables reset to qedr_set_common_qp_params() (Manish Chopra) [2040267] - ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode (Guillaume Nault) [2081030] - ip6_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip_gre: Make o_seqno start from 0 in native mode (Guillaume Nault) [2081030] - ip6_gre: Fix skb_under_panic in __gre6_xmit() (Guillaume Nault) [2081030] - ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit() (Guillaume Nault) [2081030] - ipv6_tunnel: Rate limit warning messages (Guillaume Nault) [2081030] - net: fix up skbs delta_truesize in UDP GRO frag_list (Hangbin Liu) [2082388] - drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit (Hangbin Liu) [2082388] - rtnetlink: make sure to refresh master_dev/m_ops in __rtnl_newlink() (Hangbin Liu) [2082388] - netns: add schedule point in ops_exit_list() (Hangbin Liu) [2082388] - lwtunnel: Validate RTA_ENCAP_TYPE attribute length (Hangbin Liu) [2082388] - net, neigh: clear whole pneigh_entry at alloc time (Hangbin Liu) [2082388] - net: annotate data-races on txq->xmit_lock_owner (Hangbin Liu) [2082388] - sock: fix /proc/net/sockstat underflow in sk_clone_lock() (Hangbin Liu) [2082388] - net: stream: don't purge sk_error_queue in sk_stream_kill_queues() (Hangbin Liu) [2082388] - rtnetlink: fix if_nlmsg_stats_size() under estimation (Hangbin Liu) [2082388] - net: watchdog: hold device global xmit lock during tx disable (Hangbin Liu) [2082388] - torture: Fix incorrectly redirected "exit" in kvm-remote.sh (Waiman Long) [2065993] - rcu: Allow rcu_irq_enter_check_tick() from NMI (Waiman Long) [2065993] - srcu: Early test SRCU polling start (Waiman Long) [2065993] - rcu/nocb: Unify timers (Waiman Long) [2065993] - rcu/nocb: Prepare for fine-grained deferred wakeup (Waiman Long) [2065993] - rcu/nocb: Only cancel nocb timer if not polling (Waiman Long) [2065993] - rcu/nocb: Delete bypass_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Cancel nocb_timer upon nocb_gp wakeup (Waiman Long) [2065993] - rcu/nocb: Allow de-offloading rdp leader (Waiman Long) [2065993] - rcu/nocb: Directly call __wake_nocb_gp() from bypass timer (Waiman Long) [2065993] - refscale: Avoid false-positive warnings in ref_scale_reader() (Waiman Long) [2065993] - scftorture: Avoid false-positive warnings in scftorture_invoker() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader() (Waiman Long) [2065993] - rcu-tasks: Don't delete holdouts within trc_inspect_reader() (Waiman Long) [2065993] - rcutorture: Move mem_dump_obj() tests into separate function (Waiman Long) [2065993] - rcu: Remove obsolete rcu_read_unlock() deadlock commentary (Waiman Long) [2065993] - rcu: Improve comments describing RCU read-side critical sections (Waiman Long) [2065993] - rcu: Add missing __releases() annotation (Waiman Long) [2065993] - kvfree_rcu: Fix comments according to current code (Waiman Long) [2065993] - torture: Don't cap remote runs by build-system number of CPUs (Waiman Long) [2065993] - torture: Make kvm-remote.sh account for network failure in pathname checks (Waiman Long) [2065993] - rcu: Create an unrcu_pointer() to remove __rcu from a pointer (Waiman Long) [2065993] - kvfree_rcu: Refactor kfree_rcu_monitor() (Waiman Long) [2065993] - srcu: Fix broken node geometry after early ssp init (Waiman Long) [2065993] - rcu: Point to documentation of ordering guarantees (Waiman Long) [2065993] - rcu: Don't penalize priority boosting when there is nothing to boost (Waiman Long) [2065993] - kvfree_rcu: Use kfree_rcu_monitor() instead of open-coded variant (Waiman Long) [2065993] - kvfree_rcu: Update "monitor_todo" once a batch is started (Waiman Long) [2065993] - kvfree_rcu: Add a bulk-list check when a scheduler is run (Waiman Long) [2065993] - kvfree_rcu: Use [READ/WRITE]_ONCE() macros to access to nr_bkv_objs (Waiman Long) [2065993] - kvfree_rcu: Release a page cache under memory pressure (Waiman Long) [2065993] - rcu: Shrink each possible cpu krcp (Waiman Long) [2065993] - rcu/segcblist: Prevent useless GP start if no CBs to accelerate (Waiman Long) [2065993] - rcutorture: Don't count CPU-stalled time against priority boosting (Waiman Long) [2065993] - rcu: Make rcu_gp_cleanup() be noinline for tracing (Waiman Long) [2065993] - rcutorture: Add BUSTED-BOOST to test RCU priority boosting tests (Waiman Long) [2065993] - srcu: Initialize SRCU after timers (Waiman Long) [2065993] - srcu: Unconditionally embed struct lockdep_map (Waiman Long) [2065993] - rcutorture: Forgive RCU boost failures when CPUs don't pass through QS (Waiman Long) [2065993] - rcutorture: Test start_poll_synchronize_rcu() and poll_state_synchronize_rcu() (Waiman Long) [2065993] - rcu: Provide polling interfaces for Tree RCU grace periods (Waiman Long) [2065993] - rcutorture: Make rcu_torture_boost_failed() check for GP end (Waiman Long) [2065993] - rcutorture: Consolidate rcu_torture_boost() timing and statistics (Waiman Long) [2065993] - rcutorture: Delay-based false positives for RCU priority boosting tests (Waiman Long) [2065993] - rcu: Restrict RCU_STRICT_GRACE_PERIOD to at most four CPUs (Waiman Long) [2065993] - rcu: Make show_rcu_gp_kthreads() dump rcu_node structures blocking GP (Waiman Long) [2065993] - rcu: Add quiescent states and boost states to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Make RCU priority boosting work on single-CPU rcu_node structures (Waiman Long) [2065993] - rcu: Reject RCU_LOCKDEP_WARN() false positives (Waiman Long) [2065993] - lockdep: Explicitly flag likely false-positive report (Waiman Long) [2065993] - rcu: Add ->gp_max to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - rcu: Add ->rt_priority and ->gp_start to show_rcu_gp_kthreads() output (Waiman Long) [2065993] - srcu: Remove superfluous sdp->srcu_lock_count zero filling (Waiman Long) [2065993] - srcu: Remove superfluous ssp initialization for early callbacks (Waiman Long) [2065993] - torture: Set kvm.sh language to English (Waiman Long) [2065993] - torture: Correctly fetch number of CPUs for non-English languages (Waiman Long) [2065993] - rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread() (Waiman Long) [2065993] - rcutorture: Judge RCU priority boosting on grace periods, not callbacks (Waiman Long) [2065993] - sched,rcutorture: Convert to sched_set_fifo_low() (Waiman Long) [2065993] - rcu: Improve tree.c comments and add code cleanups (Waiman Long) [2065993] - rcu: Abstract out rcu_irq_enter_check_tick() from rcu_nmi_enter() (Waiman Long) [2065993] - rcu: Remove the unused rcu_irq_exit_preempt() function (Waiman Long) [2065993] - torture: Make kvm-find-errors.sh account for kvm-remote.sh (Waiman Long) [2065993] - torture: Make the build machine control N in "make -jN" (Waiman Long) [2065993] - torture: Make kvm.sh use abstracted kvm-end-run-stats.sh (Waiman Long) [2065993] - torture: Abstract end-of-run summary (Waiman Long) [2065993] - rcu: Fix typo in comment: kthead -> kthread (Waiman Long) [2065993] - rcutorture: Abstract read-lock-held checks (Waiman Long) [2065993] - refscale: Add acqrel, lock, and lock-irq (Waiman Long) [2065993] - torture: Add kvm-remote.sh script for distributed rcutorture test runs (Waiman Long) [2065993] - refscale: Allow CPU hotplug to be enabled (Waiman Long) [2065993] - torture: Make kvm-again.sh use "scenarios" rather than "batches" file (Waiman Long) [2065993] - torture: Add "scenarios" option to kvm.sh --dryrun parameter (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Rude design (Waiman Long) [2065993] - torture: Fix remaining erroneous torture.sh instance of $* (Waiman Long) [2065993] - rcu/tree: Add a trace event for RCU CPU stall warnings (Waiman Long) [2065993] - torture: Fix kvm.sh --datestamp regex check (Waiman Long) [2065993] - rcu: Add explicit barrier() to __rcu_read_unlock() (Waiman Long) [2065993] - rcu-tasks: Add block comment laying out RCU Tasks Trace design (Waiman Long) [2065993] - rcu: Make nocb_nobypass_lim_per_jiffy static (Waiman Long) [2065993] - torture: Consolidate qemu-cmd duration editing into kvm-transform.sh (Waiman Long) [2065993] - torture: Print proper vmlinux path for kvm-again.sh runs (Waiman Long) [2065993] - torture: Make TORTURE_TRUST_MAKE available in kvm-again.sh environment (Waiman Long) [2065993] - docs: Correctly spell Stephen Hemminger's name (Waiman Long) [2065993] - rcu/nocb: Use the rcuog CPU's ->nocb_timer (Waiman Long) [2065993] - rcu/nocb: Move trace_rcu_nocb_wake() calls outside nocb_lock when possible (Waiman Long) [2065993] - rcu/nocb: Remove stale comment above rcu_segcblist_offload() (Waiman Long) [2065993] - rcu/nocb: Disable bypass when CPU isn't completely offloaded (Waiman Long) [2065993] - rcu/nocb: Fix missed nocb_timer requeue (Waiman Long) [2065993] - rcu/nocb: Trigger self-IPI on late deferred wake up before user resume (Waiman Long) [2065993] - torture: Make kvm-transform.sh update jitter commands (Waiman Long) [2065993] - torture: Add --duration argument to kvm-again.sh (Waiman Long) [2065993] - rcu: deprecate "all" option to rcu_nocbs= (Waiman Long) [2065993] - torture: Rename SRCU-t and SRCU-u to avoid lowercase characters (Waiman Long) [2065993] - torture: Add kvm-again.sh to rerun a previous torture-test (Waiman Long) [2065993] - torture: Create a "batches" file for build reuse (Waiman Long) [2065993] - torture: De-capitalize TORTURE_SUITE (Waiman Long) [2065993] - rcuscale: Add kfree_rcu() single-argument scale test (Waiman Long) [2065993] - torture: Make upper-case-only no-dot no-slash scenario names official (Waiman Long) [2065993] - torture: Remove no-mpstat error message (Waiman Long) [2065993] - torture: Record kvm-test-1-run.sh and kvm-test-1-run-qemu.sh PIDs (Waiman Long) [2065993] - torture: Record jitter start/stop commands (Waiman Long) [2065993] - softirq: Don't try waking ksoftirqd before it has been spawned (Waiman Long) [2065993] - torture: Extract kvm-test-1-run-qemu.sh from kvm-test-1-run.sh (Waiman Long) [2065993] - torture: Record TORTURE_KCONFIG_GDB_ARG in qemu-cmd (Waiman Long) [2065993] - torture: Abstract jitter.sh start/stop into scripts (Waiman Long) [2065993] - torture: Reverse jittering and duration parameters for jitter.sh (Waiman Long) [2065993] - torture: Eliminate jitter_pids file (Waiman Long) [2065993] - torture: Use "jittering" file to control jitter.sh execution (Waiman Long) [2065993] - torture: Use file-based protocol to mark batch's runs complete (Waiman Long) [2065993] - torture: Move build/run synchronization files into scenario directories (Waiman Long) [2065993] - torture: Make jitter.sh handle large systems (Waiman Long) [2065993] - torture: Improve readability of the testid.txt file (Waiman Long) [2065993] - torture: Provide bare-metal modprobe-based advice (Waiman Long) [2065993] - kvfree_rcu: Use same set of GFP flags as does single-argument (Waiman Long) [2065993] - kvfree_rcu: Replace __GFP_RETRY_MAYFAIL by __GFP_NORETRY (Waiman Long) [2065993] - torture: Allow 1G of memory for torture.sh kvfree testing (Waiman Long) [2065993] - torture: Do Kconfig analysis only once per scenario (Waiman Long) [2065993] - torture: Compress KASAN vmlinux files (Waiman Long) [2065993] - torture: Add --kcsan-kmake-arg to torture.sh for KCSAN (Waiman Long) [2065993] - torture: Add command and results directory to torture.sh log (Waiman Long) [2065993] - torture: Allow scenarios to be specified to torture.sh (Waiman Long) [2065993] - torture: Drop log.long generation from torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refuse to do zero-length runs (Waiman Long) [2065993] - torture: Make torture.sh throttle VERBOSE_TOROUT_*() for refscale (Waiman Long) [2065993] - torture: Make torture.sh allmodconfig retain and label output (Waiman Long) [2065993] - torture: Create doyesno helper function for torture.sh (Waiman Long) [2065993] - torture: Make torture.sh refscale runs use verbose_batched module parameter (Waiman Long) [2065993] - torture: Make torture.sh rcuscale and refscale deal with allmodconfig (Waiman Long) [2065993] - torture: Enable torture.sh argument checking (Waiman Long) [2065993] - torture: Auto-size SCF and scaling runs based on number of CPUs (Waiman Long) [2065993] - torture: Add "make allmodconfig" to torture.sh (Waiman Long) [2065993] - torture: Remove use of "eval" in torture.sh (Waiman Long) [2065993] - torture: Make torture.sh use common time-duration bash functions (Waiman Long) [2065993] - torture: Add torture.sh torture-everything script (Waiman Long) [2065993] - refscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcuscale: Disable verbose torture-test output (Waiman Long) [2065993] - rcu/nocb: Rename nocb_gp_update_state to nocb_gp_update_state_deoffloading (Waiman Long) [2065993] - rcu/nocb: Avoid confusing double write of rdp->nocb_cb_sleep (Waiman Long) [2065993] - rcu/nocb: Only (re-)initialize segcblist when needed on CPU up (Waiman Long) [2065993] - rcu/nocb: Forbid NOCB toggling on offline CPUs (Waiman Long) [2065993] - rcu/nocb: Comment the reason behind BH disablement on batch processing (Waiman Long) [2065993] - rcu: Make rcu_read_unlock_special() expedite strict grace periods (Waiman Long) [2065993] - rcu-tasks: Rectify kernel-doc for struct rcu_tasks (Waiman Long) [2065993] - rcutorture: Replace rcu_torture_stall string with s (Waiman Long) [2065993] - torture: Replace torture_init_begin string with s (Waiman Long) [2065993] - rcutorture: Use "all" and "N" in "nohz_full" and "rcu_nocbs" (Waiman Long) [2065993] - kvfree_rcu: Make krc_this_cpu_unlock() use raw_spin_unlock_irqrestore() (Waiman Long) [2065993] - kvfree_rcu: Use __GFP_NOMEMALLOC for single-argument kvfree_rcu() (Waiman Long) [2065993] - kvfree_rcu: Directly allocate page for single-argument case (Waiman Long) [2065993] - rcutorture: Fix testing of RCU priority boosting (Waiman Long) [2065993] - rculist: Replace reference to atomic_ops.rst (Waiman Long) [2065993] - rcutorture: Make TREE03 use real-time tree.use_softirq setting (Waiman Long) [2065993] - rcu: Expedite deboost in case of deferred quiescent state (Waiman Long) [2065993] - rcu: Fix CPU-offline trace in rcutree_dying_cpu (Waiman Long) [2065993] - rcu: Remove superfluous rdp fetch (Waiman Long) [2065993] - torturescript: Don't rerun failed rcutorture builds (Waiman Long) [2065993] - rcutorture: Add crude tests for mem_dump_obj() (Waiman Long) [2065993] - mm: Don't build mm_dump_obj() on CONFIG_PRINTK=n kernels (Waiman Long) [2065993] - rcu/nocb: Detect unsafe checks for offloaded rdp (Waiman Long) [2065993] - sched/pelt: Fix attach_entity_load_avg() corner case (Phil Auld) [2056383] - devlink: Clarifies max_macs generic devlink param (Petr Oros) [2076586] - devlink: Add new "event_eq_size" generic device param (Petr Oros) [2076586] - devlink: Add new "io_eq_size" generic device param (Petr Oros) [2076586] - devlink: fix netns refcount leak in devlink_nl_cmd_reload() (Petr Oros) [2076586] - devlink: Simplify devlink resources unregister call (Petr Oros) [2076586] - devlink: Remove misleading internal_flags from health reporter dump (Petr Oros) [2076586] - devlink: Don't throw an error if flash notification sent before devlink visible (Petr Oros) [2076586] - devlink: fix flexible_array.cocci warning (Petr Oros) [2076586] - devlink: expose get/put functions (Petr Oros) [2076586] - devlink: make all symbols GPL-only (Petr Oros) [2076586] - devlink: Simplify internal devlink params implementation (Petr Oros) [2076586] - devlink: Clean not-executed param notifications (Petr Oros) [2076586] - devlink: Delete obsolete parameters publish API (Petr Oros) [2076586] - devlink: Remove extra device_lock assert checks (Petr Oros) [2076586] - devlink: Delete reload enable/disable interface (Petr Oros) [2076586] - devlink: Allow control devlink ops behavior through feature mask (Petr Oros) [2076586] - devlink: Annotate devlink API calls (Petr Oros) [2076586] - devlink: Move netdev_to_devlink helpers to devlink.c (Petr Oros) [2076586] - devlink: Reduce struct devlink exposure (Petr Oros) [2076586] - devlink: report maximum number of snapshots with regions (Petr Oros) [2076586] - devlink: Add missed notifications iterators (Petr Oros) [2076586] - netdevsim: Move devlink registration to be last devlink command (Petr Oros) [2076586] - qed: Move devlink registration to be last devlink command (Petr Oros) [2076586] - ionic: Move devlink registration to be last devlink command (Petr Oros) [2076586] - nfp: Move delink_register to be last command (Petr Oros) [2076586] - mlxsw: core: Register devlink instance last (Petr Oros) [2076586] - net/mlx5: Accept devlink user input after driver initialization complete (Petr Oros) [2076586] - net/mlx4: Move devlink_register to be the last initialization command (Petr Oros) [2076586] - ice: Open devlink when device is ready (Petr Oros) [2076586] - liquidio: Overcome missing device lock protection in init/remove flows (Petr Oros) [2076586] - bnxt_en: Register devlink instance at the end devlink configuration (Petr Oros) [2076586] - devlink: Notify users when objects are accessible (Petr Oros) [2076586] - devlink: Remove single line function obfuscations (Petr Oros) [2076586] - devlink: Delete not used port parameters APIs (Petr Oros) [2076586] - bnxt_en: Properly remove port parameter support (Petr Oros) [2076586] - bnxt_en: Check devlink allocation and registration status (Petr Oros) [2076586] - devlink: Make devlink_register to be void (Petr Oros) [2076586] - devlink: Delete not-used devlink APIs (Petr Oros) [2076586] - devlink: Delete not-used single parameter notification APIs (Petr Oros) [2076586] - devlink: Use xarray to store devlink instances (Petr Oros) [2076586] - devlink: Count struct devlink consumers (Petr Oros) [2076586] - devlink: Remove check of always valid devlink pointer (Petr Oros) [2076586] - devlink: Simplify devlink_pernet_pre_exit call (Petr Oros) [2076586] - devlink: Add APIs to publish, unpublish individual parameter (Petr Oros) [2076586] - devlink: Add API to register and unregister single parameter (Petr Oros) [2076586] - devlink: Create a helper function for one parameter registration (Petr Oros) [2076586] - devlink: Fix port_type_set function pointer check (Petr Oros) [2076586] - devlink: Set device as early as possible (Petr Oros) [2076586] - devlink: Simplify devlink port API calls (Petr Oros) [2076586] - devlink: Allocate devlink directly in requested net namespace (Petr Oros) [2076586] - devlink: Break parameter notification sequence to be before/after unload/load driver (Petr Oros) [2076586] - devlink: Remove duplicated registration check (Petr Oros) [2076586] - net/mlx5: Don't rely on always true registered field (Petr Oros) [2076586] - devlink: Unlock on error in dumpit() (Petr Oros) [2076586] - devlink: Fix some error codes (Petr Oros) [2076586] - net: devlink: Add support for port regions (Petr Oros) [2076586] - netdevsim: Forbid devlink reload when adding or deleting ports (Petr Oros) [2076586] - netdevsim: dev: Initialize FIB module after debugfs (Petr Oros) [2076586] - pidfd: fix a poll race when setting exit_state (Oleg Nesterov) [2044587] - fork: fix pidfd_poll()'s return type (Oleg Nesterov) [2044587] - pidfd: add polling support (Oleg Nesterov) [2044587] - kabi: introduce the kabi_aux_*() helpers (Oleg Nesterov) [2044587] - tg3: Remove redundant assignments (Ken Cox) [2043792] - ethernet: Remove redundant statement (Ken Cox) [2043792] - ethernet: tg3: remove direct netdev->dev_addr writes (Ken Cox) [2043792] - net: tg3: fix redundant check of true expression (Ken Cox) [2043792] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ken Cox) [2043792] - net: ethernet: Use existing define with polynomial (Ken Cox) [2043792]- scsi: mpt3sas: Fix mpt3sas_check_same_4gb_region() kdoc comment (Tomas Henzl) [2068045] - scsi: mpt3sas: Fix incorrect 4GB boundary check (Tomas Henzl) [2068045] - genirq/affinity: Consider that CPUs on nodes can be unbalanced (Ming Lei) [2074317] - scsi: target: pscsi: Set SCF_TREAT_READ_AS_NORMAL flag only if there is valid data (Maurizio Lombardi) [2074246] - audit: don't deref the syscall args when checking the openat2 open_how::flags (Carlos Maiolino) [2026590] - audit: add OPENAT2 record to list "how" info (Carlos Maiolino) [2026590] - audit: add support for the openat2 syscall (Carlos Maiolino) [2026590] - audit: replace magic audit syscall class numbers with macros (Carlos Maiolino) [2026590] - tools include UAPI: Sync x86's syscalls_64.tbl, generic unistd.h and fcntl.h to pick up openat2 and pidfd_getfd (Carlos Maiolino) [2026590] - open: don't silently ignore unknown O-flags in openat2() (Carlos Maiolino) [2026590] - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT (Carlos Maiolino) [2026590] - open: introduce openat2(2) syscall (Carlos Maiolino) [2026590] - namei: LOOKUP_{IN_ROOT,BENEATH}: permit limited ".." resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_IN_ROOT: chroot-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_BENEATH: O_BENEATH-like scoped resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_XDEV: block mountpoint crossing (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_MAGICLINKS: block magic-link resolution (Carlos Maiolino) [2026590] - namei: LOOKUP_NO_SYMLINKS: block symlink resolution (Carlos Maiolino) [2026590] - namei: allow set_root() to produce errors (Carlos Maiolino) [2026590] - namei: allow nd_jump_link() to produce errors (Carlos Maiolino) [2026590] - nsfs: clean-up ns_get_path() signature to return int (Carlos Maiolino) [2026590] - namei: only return -ECHILD from follow_dotdot_rcu() (Carlos Maiolino) [2026590] - make path_init() unconditionally paired with terminate_walk() (Carlos Maiolino) [2026590] - nsfs: unobfuscate (Carlos Maiolino) [2026590] - ASoC: Intel: soc-acpi: add entries in ADL match table (Jaroslav Kysela) [2052011] - nvme-fc: add support for ->map_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix typos in comments (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.400-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Increase max limit of ql2xnvme_queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Use correct feature type field during RFF_ID processing (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session of PRLI reject (Nilesh Javali) [2044833] - scsi: qla2xxx: Reduce false trigger to login (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix laggy FC remote port session recovery (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix hang due to session stuck (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix N2N inconsistent PLOGI (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash during module load unload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix missed DMA unmap for NVMe ls requests (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix loss of NVMe namespaces after driver reload test (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix incorrect reporting of task management failure (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for q_dev_state (Nilesh Javali) [2044833] - scsi: qla2xxx: Use named initializers for port_[d]state_str (Nilesh Javali) [2044833] - scsi: qla2xxx: Stop using the SCSI pointer (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove unused qla_sess_op_cmd_list from scsi_qla_host_t (Nilesh Javali) [2044833] - scsi: qla2xxx: Add qla2x00_async_done() for async routines (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.300-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware dump already collected (Nilesh Javali) [2044833] - scsi: qla2xxx: Add devids and conditionals for 28xx (Nilesh Javali) [2044833] - scsi: qla2xxx: Suppress a kernel complaint in qla_create_qpair() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix T10 PI tag escape and IP guard options for 28XX adapters (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix clang warning (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning for missing error code (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix device reconnect in loop topology (Nilesh Javali) [2044833] - scsi: qla2xxx: Add ql2xnvme_queues module param to configure number of NVMe queues (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix wrong FDMI data for 64G adapter (Nilesh Javali) [2044833] - scsi: qla2xxx: Add retry for exec firmware (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix scheduling while atomic (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix premature hw access after PCI error (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix warning message due to adisc being flushed (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix stuck session in gpdb (Nilesh Javali) [2044833] - scsi: qla2xxx: Implement ref count for SRB (Nilesh Javali) [2044833] - scsi: qla2xxx: Refactor asynchronous command initialization (Nilesh Javali) [2044833] - scsi: qla2xxx: Synchronize rport dev_loss_tmo setting (Nilesh Javali) [2044833] - scsi: qla2xxx: Format log strings only if needed (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix off by one bug in qla_edif_app_getfcinfo() (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id() (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.200-k (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix EDIF bsg (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix inconsistent check of db_flags (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Increase ELS payload (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Reduce connection thrash (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Tweak trace message (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Replace list_for_each_safe with list_for_each_entry_safe (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Flush stale events and msgs on session down (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start delay (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Fix app start fail (Nilesh Javali) [2044833] - scsi: qla2xxx: Turn off target reset during issue_lip (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix gnl list corruption (Nilesh Javali) [2044833] - scsi: qla2xxx: Relogin during fabric disturbance (Nilesh Javali) [2044833] - qla2xxx: add ->map_queues support for nvme (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix unmap of already freed sgl (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix a memory leak in an error path of qla2x00_process_els() (Nilesh Javali) [2044833] - scsi: qla2xxx: Return -ENOMEM if kzalloc() fails (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove a declaration (Nilesh Javali) [2044833] - scsi: target: qla2xxx: Replace enable attr with ops.enable (Nilesh Javali) [2044833] - scsi: qla2xxx: Restore initiator in dual mode (Nilesh Javali) [2044833] - scsi: qla2xxx: Remove redundant initialization of pointer req (Nilesh Javali) [2044833] - scsi: qla2xxx: Update version to 10.02.07.100-k (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix use after free in eh_abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Move heartbeat handling from DPC thread to workqueue (Nilesh Javali) [2044833] - scsi: qla2xxx: Call process_response_queue() in Tx path (Nilesh Javali) [2044833] - scsi: qla2xxx: edif: Use link event to wake up app (Nilesh Javali) [2044833] - scsi: qla2xxx: Fix crash in NVMe abort path (Nilesh Javali) [2044833] - scsi: qla2xxx: Check for firmware capability before creating QPair (Nilesh Javali) [2044833] - scsi: qla2xxx: Display 16G only as supported speeds for 3830c card (Nilesh Javali) [2044833] - scsi: qla2xxx: Indicate correct supported speeds for Mezz card (Nilesh Javali) [2044833] - scsi: qla2xxx: Add support for mailbox passthru (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_device_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Open-code qla2xxx_eh_target_reset() (Nilesh Javali) [2044833] - scsi: qla2xxx: Do not call fc_block_scsi_eh() during bus reset (Nilesh Javali) [2044833] - sctp: count singleton chunks in assoc user stats (Jamie Bainbridge) [2073913] - hrtimer: Unbreak hrtimer_force_reprogram() (Fernando Pacheco) [2071776] - hrtimer: Use raw_cpu_ptr() in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid more SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Avoid unnecessary SMP function calls in clock_was_set() (Fernando Pacheco) [2071776] - hrtimer: Add bases argument to clock_was_set() (Fernando Pacheco) [2071776] - time/timekeeping: Avoid invoking clock_was_set() twice (Fernando Pacheco) [2071776] - timekeeping: Distangle resume and clock-was-set events (Fernando Pacheco) [2071776] - timerfd: Provide timerfd_resume() (Fernando Pacheco) [2071776] - hrtimer: Force clock_was_set() handling for the HIGHRES=n, NOHZ=y case (Fernando Pacheco) [2071776] - hrtimer: Ensure timerfd notification for HIGHRES=n (Fernando Pacheco) [2071776] - hrtimer: Consolidate reprogramming code (Fernando Pacheco) [2071776] - hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns() (Fernando Pacheco) [2071776] - hrtimer: Update softirq_expires_next correctly after __hrtimer_get_next_event() (Fernando Pacheco) [2071776] - hrtimer: Annotate lockless access to timer->state (Fernando Pacheco) [2071776] - drm/i915/display: Remove check for low voltage sku for max dp source rate (Jocelyn Falempe) [2063931] - s390/kexec: handle R_390_PLT32DBL rela in arch_kexec_apply_relocations_add() (Philipp Rudo) [2039278] - s390/kexec_file: fix error handling when applying relocations (Philipp Rudo) [2039278] - s390/kexec_file: print some more error messages (Philipp Rudo) [2039278] - ixgbe: respect metadata on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb (Ken Cox) [2037952] - ixgbe: pass bi->xdp to ixgbe_construct_skb_zc() directly (Ken Cox) [2037952] - ixgbe: Remove useless DMA-32 fallback configuration (Ken Cox) [2037952] - ixgbe: switch to napi_build_skb() (Ken Cox) [2037952] - ixgbe: set X550 MDIO speed before talking to PHY (Ken Cox) [2037952] - ixgbe: Document how to enable NBASE-T support (Ken Cox) [2037952] - xsk: Wipe out dead zero_copy_allocator declarations (Ken Cox) [2037952] - ixgbe: let the xdpdrv work with more than 64 cpus (Ken Cox) [2037952] - scsi: fcoe: Fix I/O path allocation (Ken Cox) [2037952] - ixgbe: extend PTP gettime function to read system clock (Ken Cox) [2037952] - ixgbe: Replace GFP_ATOMIC with GFP_KERNEL (Ken Cox) [2037952] - net: mpls: Fix notifications when deleting a device (Guillaume Nault) [2081757]- sched/cputime, proc/stat: Fix incorrect guest nice cpustat value (Waiman Long) [2017382] - procfs: Use all-in-one vtime aware kcpustat accessor (Waiman Long) [2017382] - procfs: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Waiman Long) [2017382] - proc: read kernel cpu stat pointer once (Waiman Long) [2017382] - proc: use "unsigned int" in /proc/stat hook (Waiman Long) [2017382] - sched/cputime: Support other fields on kcpustat_field() (Waiman Long) [2017382] - sched/cputime: Add vtime guest task state (Waiman Long) [2017382] - sched/cputime: Add vtime idle task state (Waiman Long) [2017382] - sched/cputime: Spare a seqcount lock/unlock cycle on context switch (Waiman Long) [2017382] - sched/vtime: Move task_struct_rh->vtime_cpu back to vtime structure (Waiman Long) [2017382] - usb: xhci-plat: fix crash when suspend if remote wake enable (Mark Langsdorf) [2065730] - PM: domains: Improve runtime PM performance state handling (Mark Langsdorf) [2065730] - firmware_loader: fix use-after-free in firmware_fallback_sysfs (Mark Langsdorf) [2065730] - firmware_loader: use -ETIMEDOUT instead of -EAGAIN in fw_load_sysfs_fallback (Mark Langsdorf) [2065730] - driver core: Prevent warning when removing a device link from unregistered consumer (Mark Langsdorf) [2065730] - PM: domains: Shrink locking area of the gpd_list_lock (Mark Langsdorf) [2065730] - PM: sleep: Use ktime_us_delta() in initcall_debug_report() (Mark Langsdorf) [2065730] - driver core: Export device_driver_attach() (Mark Langsdorf) [2065730] - driver core: Don't return EPROBE_DEFER to userspace during sysfs bind (Mark Langsdorf) [2065730] - driver core: Flow the return code from ->probe() through to sysfs bind (Mark Langsdorf) [2065730] - driver core: Better distinguish probe errors in really_probe (Mark Langsdorf) [2065730] - driver core: Pull required checks into driver_probe_device() (Mark Langsdorf) [2065730] - driver core: add a helper to setup both the of_node and fwnode of a device (Mark Langsdorf) [2065730] - devres: Enable trace events (Mark Langsdorf) [2065730] - devres: No need to call remove_nodes() when there none present (Mark Langsdorf) [2065730] - devres: Use list_for_each_safe_from() in remove_nodes() (Mark Langsdorf) [2065730] - devres: Make locking straight forward in release_nodes() (Mark Langsdorf) [2065730] - regmap: mdio: Reject invalid addresses (Mark Langsdorf) [2065730] - regmap: mdio: Fix regmap_bus pointer constness (Mark Langsdorf) [2065730] - PM: runtime: Allow unassigned ->runtime_suspend|resume callbacks (Mark Langsdorf) [2065730] - PM: runtime: Improve path in rpm_idle() when no callback (Mark Langsdorf) [2065730] - PM: domains: Drop/restore performance state votes for devices at runtime PM (Mark Langsdorf) [2065730] - PM: domains: Return early if perf state is already set for the device (Mark Langsdorf) [2065730] - PM: domains: Split code in dev_pm_genpd_set_performance_state() (Mark Langsdorf) [2065730] - PM: domains: fix some kernel-doc issues (Mark Langsdorf) [2065730] - regmap: mdio: Add clause-45 support (Mark Langsdorf) [2065730] - regmap: mdio: Clean up invalid clause-22 addresses (Mark Langsdorf) [2065730] - regmap-irq: Introduce inverted status registers support (Mark Langsdorf) [2065730] - ACPI: property: Constify stubs for CONFIG_ACPI=n case (Mark Langsdorf) [2065730] - device property: Unify access to of_node (Mark Langsdorf) [2065730] - drivers/base: Constify static attribute_group structs (Mark Langsdorf) [2065730] - devcoredump: remove contact information (Mark Langsdorf) [2065730] - component: Rename 'dev' to 'parent' (Mark Langsdorf) [2065730] - component: Drop 'dev' argument to component_match_realloc() (Mark Langsdorf) [2065730] - device property: Don't check for NULL twice in the loops (Mark Langsdorf) [2065730] - regmap: add support for 7/17 register formating (Mark Langsdorf) [2065730] - PM: wakeirq: Set IRQF_NO_AUTOEN when requesting the IRQ (Mark Langsdorf) [2065730] - drivers/base/node.c: make CACHE_ATTR define static DEVICE_ATTR_RO (Mark Langsdorf) [2065730] - regmap: mdio: Don't modify output if error happened (Mark Langsdorf) [2065730] - regmap: Add MDIO bus support (Mark Langsdorf) [2065730] - regmap-i2c: Set regmap max raw r/w from quirks (Mark Langsdorf) [2065730] - driver core: attribute_container: fix W=1 warnings (Mark Langsdorf) [2065730] - driver core: replace open-coded device_lock_assert() (Mark Langsdorf) [2065730] - device property: Retrieve fwnode from of_node via accessor (Mark Langsdorf) [2065730] - cpufreq: Kconfig: fix documentation links (Mark Langsdorf) [2065730] - PM: wakeup: remove redundant assignment to variable retval (Mark Langsdorf) [2065730] - PM / wakeup: use dev_set_name() directly (Mark Langsdorf) [2065730] - PM: clk: remove kernel-doc warning (Mark Langsdorf) [2065730] - PM: wakeup: fix kernel-doc warnings and fix typos (Mark Langsdorf) [2065730] - PM: runtime: remove kernel-doc warnings (Mark Langsdorf) [2065730] - software node: Introduce SOFTWARE_NODE_REFERENCE() helper macro (Mark Langsdorf) [2065730] - software node: Imply kobj_to_swnode() to be no-op (Mark Langsdorf) [2065730] - software node: Deduplicate code in fwnode_create_software_node() (Mark Langsdorf) [2065730] - software node: Introduce software_node_alloc()/software_node_free() (Mark Langsdorf) [2065730] - software node: Free resources explicitly when swnode_register() fails (Mark Langsdorf) [2065730] - driver core: add helper for deferred probe reason setting (Mark Langsdorf) [2065730] - driver core: Improve fw_devlink & deferred_probe_timeout interaction (Mark Langsdorf) [2065730] - driver core: Replace printf() specifier and drop unneeded casting (Mark Langsdorf) [2065730] - driver core: Cast to (void *) with __force for __percpu pointer (Mark Langsdorf) [2065730] - devcoredump: fix kernel-doc warning (Mark Langsdorf) [2065730] - platform-msi: fix kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: attribute_container: remove kernel-doc warnings (Mark Langsdorf) [2065730] - driver core: remove kernel-doc warnings (Mark Langsdorf) [2065730] - base: dd: fix error return code of driver_sysfs_add() (Mark Langsdorf) [2065730] - driver core: Use unbound workqueue for deferred probes (Mark Langsdorf) [2065730] - devcoredump: avoid -Wempty-body warnings (Mark Langsdorf) [2065730] - device property: Add test cases for fwnode_property_count_*() APIs (Mark Langsdorf) [2065730] - device property: Sync descriptions of swnode array and group APIs (Mark Langsdorf) [2065730] - driver core: Update device link status properly for device_bind_driver() (Mark Langsdorf) [2065730] - driver core: Avoid pointless deferred probe attempts (Mark Langsdorf) [2065730] - drivers/base/cpu: remove redundant assignment of variable retval (Mark Langsdorf) [2065730] - driver core: dd: remove deferred_devices variable (Mark Langsdorf) [2065730] - driver core: component: remove dentry pointer in "struct master" (Mark Langsdorf) [2065730] - driver core: auxiliary bus: Remove unneeded module bits (Mark Langsdorf) [2065730] - PM: domains: Don't runtime resume devices at genpd_prepare() (Mark Langsdorf) [2065730] - redhat/configs: Add CONFIG_X86_AMD_PSTATE (Prarit Bhargava) - ACPI: CPPC: Drop redundant local variable from cpc_read() (Prarit Bhargava) [1961726] - ACPI: CPPC: Fix up I/O port access in cpc_read() (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix Kconfig dependencies for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Fix struct amd_cpudata kernel-doc comment (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State performance attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add AMD P-State frequencies attributes (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add boost mode support for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add trace for AMD P-State module (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce the support for the processors with shared memory solution (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Add fast switch function for AMD P-State (Prarit Bhargava) [1961726] - cpufreq: amd-pstate: Introduce a new AMD P-State driver to support future processors (Prarit Bhargava) [1961726] - ACPI: CPPC: Add CPPC enable register function (Prarit Bhargava) [1961726] - ACPI: CPPC: Check present CPUs for determining _CPC is valid (Prarit Bhargava) [1961726] - ACPI: CPPC: Implement support for SystemIO registers (Prarit Bhargava) [1961726] - x86/msr: Add AMD CPPC MSR definitions (Prarit Bhargava) [1961726] - x86/cpufeatures: Add AMD Collaborative Processor Performance Control feature flag (Prarit Bhargava) [1961726] - cpufreq: remove useless INIT_LIST_HEAD() (Prarit Bhargava) [1961726] - cpufreq: CPPC: Pass structure instance by reference (Prarit Bhargava) [1961726] - cpufreq: CPPC: Fix potential memleak in cppc_cpufreq_cpu_init (Prarit Bhargava) [1961726] - cpufreq: CPPC: Migrate to ->exit() callback instead of ->stop_cpu() (Prarit Bhargava) [1961726] - cpufreq: cppc: simplify default delay_us setting (Prarit Bhargava) [1961726] - cppc_cpufreq: replace per-cpu data array with a list (Prarit Bhargava) [1961726] - cppc_cpufreq: expose information on frequency domains (Prarit Bhargava) [1961726] - cppc_cpufreq: clarify support for coordination types (Prarit Bhargava) [1961726] - cppc_cpufreq: use policy->cpu as driver of frequency setting (Prarit Bhargava) [1961726] - cppc_cpufreq: simplify use of performance capabilities (Prarit Bhargava) [1961726] - cppc_cpufreq: clean up cpu, cpu_num and cpunum variable use (Prarit Bhargava) [1961726] - cppc_cpufreq: fix misspelling, code style and readability issues (Prarit Bhargava) [1961726] - cpufreq: CPPC: Reuse caps variable in few routines (Prarit Bhargava) [1961726] - cpufreq: cppc: Reorder code and remove apply_hisi_workaround variable (Prarit Bhargava) [1961726] - cpufreq: CPPC: add SW BOOST support (Prarit Bhargava) [1961726] - net/sched: act_ct: fix ref leak when switching zones (Marcelo Ricardo Leitner) [2014027] - net/sched: act_ct: Fix flow table lookup after ct clear or switching zones (Marcelo Ricardo Leitner) [2014027] - genirq: Provide new interfaces for affinity hints (Ivan Vecera) [2070044] - af_key: add __GFP_ZERO flag for compose_sadb_supported in function pfkey_register (Xin Long) [2075181] - ipv6: make ip6_rt_gc_expire an atomic_t (Hangbin Liu) [2077365] - ipv6: fix panic when forwarding a pkt with no in6 dev (Hangbin Liu) [2077365] - net: ipv6: ensure we call ipv6_mc_down() at most once (Hangbin Liu) [2077365] - ipv6/addrconf: use a boolean to choose between UNREGISTER/DOWN (Hangbin Liu) [2077365] - ipv6/addrconf: call addrconf_ifdown with consistent values (Hangbin Liu) [2077365] - ipmr,ip6mr: acquire RTNL before calling ip[6]mr_free_table() on failure path (Hangbin Liu) [2077365] - ipv6: annotate accesses to fn->fn_sernum (Hangbin Liu) [2077365] - ipv6: correct comments about fib6_node sernum (Hangbin Liu) [2077365] - ipv6: fix typos in __ip6_finish_output() (Hangbin Liu) [2077365] - oom_kill.c: futex: delay the OOM reaper to allow time for proper futex cleanup (Nico Pache) [1778048] - KVM: PPC: Fix TCE handling for VFIO (Daniel Henrique Barboza) [2062687] - udf: Restore i_lenAlloc when inode expansion fails (Carlos Maiolino) [2054653] {CVE-2022-0617} - udf: Fix NULL ptr deref when converting from inline format (Carlos Maiolino) [2054653] {CVE-2022-0617} - net/tls: fix slab-out-of-bounds bug in decrypt_internal (Sabrina Dubroca) [2080344] - tls: fix replacing proto_ops (Sabrina Dubroca) [2080344] - net/tls: use semicolons rather than commas to separate statements (Sabrina Dubroca) [2080344] - redhat: further rpminspect tuning (Jarod Wilson)- tun: annotate access to queue->trans_start (Ivan Vecera) [2069673] - net: annotate accesses to queue->trans_start (Ivan Vecera) [2069673] - ntb_hw_amd: Add NTB PCI ID for new gen CPU (Sudheesh Mavila) [2037287] - ipmi: initialize len variable (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Remove old bindings support (Tony Camuso) [2069839] - ipmi:ipmb: Add the ability to have a separate slave and master device (Tony Camuso) [2069839] - ipmi:ipmi_ipmb: Unregister the SMI on remove (Tony Camuso) [2069839] - ipmi: kcs: aspeed: Add AST2600 compatible string (Tony Camuso) [2069839] - ipmi: ssif: replace strlcpy with strscpy (Tony Camuso) [2069839] - ipmi/watchdog: Constify ident (Tony Camuso) [2069839] - ipmi: Fix UAF when uninstall ipmi_si and ipmi_msghandler module (Tony Camuso) [2069839] - ipmi: fix initialization when workqueue allocation fails (Tony Camuso) [2069839] - ipmi: bail out if init_srcu_struct fails (Tony Camuso) [2069839] - ipmi: ssif: initialize ssif_info->client early (Tony Camuso) [2069839] - ipmi: msghandler: Make symbol 'remove_work_wq' static (Tony Camuso) [2069839] - ipmi: Move remove_work to dedicated workqueue (Tony Camuso) [2069839] - ipmi: kcs_bmc: Fix a memory leak in the error handling path of 'kcs_bmc_serio_add_device()' (Tony Camuso) [2069839] - char: ipmi: replace snprintf in show functions with sysfs_emit (Tony Camuso) [2069839] - ipmi: ipmb: fix dependencies to eliminate build error (Tony Camuso) [2069839] - ipmi:ipmb: Add OF support (Tony Camuso) [2069839] - ipmi: bt: Add ast2600 compatible string (Tony Camuso) [2069839] - ipmi: bt-bmc: Use registers directly (Tony Camuso) [2069839] - ipmi: ipmb: Fix off-by-one size check on rcvlen (Tony Camuso) [2069839] - ipmi:ssif: Use depends on, not select, for I2C (Tony Camuso) [2069839] - ipmi:ipmb: Add initial support for IPMI over IPMB (Tony Camuso) [2069839] - ipmi: Export ipmb_checksum() (Tony Camuso) [2069839] - ipmi: Check error code before processing BMC response (Tony Camuso) [2069839] - ipmi:devintf: Return a proper error when recv buffer too small (Tony Camuso) [2069839] - ipmi: Disable some operations during a panic (Tony Camuso) [2069839] - ipmi:watchdog: Set panic count to proper value on a panic (Tony Camuso) [2069839] - char: ipmi: use DEVICE_ATTR helper macro (Tony Camuso) [2069839] - ipmi: rate limit ipmi smi_event failure message (Tony Camuso) [2069839] - cifs: fix NULL ptr dereference in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - cifs: prevent bad output lengths in smb2_ioctl_query_info() (Ronnie Sahlberg) [2074316] - net: tcp better handling of reordering then loss cases (Marcelo Ricardo Leitner) [2074566] - tcp: tcp_mark_head_lost is only valid for sack-tcp (Marcelo Ricardo Leitner) [2074566] - udp6: allow SO_MARK ctrl msg to affect routing (Xin Long) [2066598] - ip: Fix SO_MARK in RST, ACK and ICMP packets (Xin Long) [2066598] - ip: support SO_MARK cmsg (Xin Long) [2066598] - ip: unconditionally set cork gso_size (Xin Long) [2066598] - ip: remove tx_flags from ipcm_cookie and use same logic for v4 and v6 (Xin Long) [2066598] - ipv6: fold sockcm_cookie into ipcm6_cookie (Xin Long) [2066598] - sock: sockc cookie initializer (Xin Long) [2066598] - ipv6: ipcm6_cookie initializer (Xin Long) [2066598] - ipv4: ipcm_cookie initializers (Xin Long) [2066598] - s390/kexec: fix memory leak of ipl report buffer (Lichen Liu) [2001758] - s390/kexec: fix return code handling (Lichen Liu) [2001758] - block: don't try to throttle split bio if iops limit isn't set (Ming Lei) [2027241] - block: throttle split bio in case of iops limit (Ming Lei) [2027241] - block: don't check bio in blk_throtl_dispatch_work_fn (Ming Lei) [2027241] - x86/apic/vector: Fix ordering in vector assignment (Frank Ramsay) [2076607] - mt76: mt7921e: fix possible probe failure after reboot (Íñigo Huguet) [2078877] - veth: Ensure eth header is in skb's linear part (Guillaume Nault) [1966887] - net: annotate accesses to dev->gso_max_segs (Ivan Vecera) [2080317] - net: annotate accesses to dev->gso_max_size (Ivan Vecera) [2080317] - NFS: Don't loop forever in nfs_do_recoalesce() (Scott Mayhew) [2080467] - tipc: fix the timer expires after interval 100ms (Xin Long) [2080369] - tipc: Fix end of loop tests for list_for_each_entry() (Xin Long) [2080369] - tipc: fix a bit overflow in tipc_crypto_key_rcv() (Xin Long) [2080369] - tipc: rate limit warning for received illegal binding update (Xin Long) [2080369] - net: tipc: remove unused static inlines (Xin Long) [2080369] - tipc: fix unique bearer names sanity check (Xin Long) [2080369] - net/tipc: fix missing destroy_workqueue() on error in tipc_crypto_start() (Xin Long) [2080369] - tipc: add extack messages for bearer/media failure (Xin Long) [2080369] - scsi: smartpqi: Fix unused variable pqi_pm_ops for clang (Don Brace) [2012227] - scsi: smartpqi: Update version to 2.1.14-035 (Don Brace) [2012227] - scsi: smartpqi: Fix lsscsi -t SAS addresses (Don Brace) [2012227] - scsi: smartpqi: Fix hibernate and suspend (Don Brace) [2012227] - scsi: smartpqi: Fix BUILD_BUG_ON() statements (Don Brace) [2012227] - scsi: smartpqi: Fix NUMA node not updated during init (Don Brace) [2012227] - scsi: smartpqi: Expose SAS address for SATA drives (Don Brace) [2012227] - scsi: smartpqi: Speed up RAID 10 sequential reads (Don Brace) [2012227] - scsi: smartpqi: Fix kdump issue when controller is locked up (Don Brace) [2012227] - scsi: smartpqi: Update volume size after expansion (Don Brace) [2012227] - scsi: smartpqi: Avoid drive spin-down during suspend (Don Brace) [2012227] - scsi: smartpqi: Resolve delay issue with PQI_HZ value (Don Brace) [2012227] - scsi: smartpqi: Fix a typo in func pqi_aio_submit_io() (Don Brace) [2012227] - scsi: smartpqi: Fix a name typo and cleanup code (Don Brace) [2012227] - scsi: smartpqi: Quickly propagate path failures to SCSI midlayer (Don Brace) [2012227] - scsi: smartpqi: Eliminate drive spin down on warm boot (Don Brace) [2012227] - scsi: smartpqi: Enable SATA NCQ priority in sysfs (Don Brace) [2012227] - scsi: smartpqi: Add PCI IDs (Don Brace) [2012227] - scsi: smartpqi: Fix rmmod stack trace (Don Brace) [2012227] - ibmvnic: fix race between xmit and reset (Diego Domingos) [2051354] - ibmvnic: Allow queueing resets during probe (Diego Domingos) [2051354] - ibmvnic: clear fop when retrying probe (Diego Domingos) [2051354] - ibmvnic: init init_done_rc earlier (Diego Domingos) [2051354] - ibmvnic: register netdev after init of adapter (Diego Domingos) [2051354] - ibmvnic: complete init_done on transport events (Diego Domingos) [2051354] - ibmvnic: define flush_reset_queue helper (Diego Domingos) [2051354] - ibmvnic: initialize rc before completing wait (Diego Domingos) [2051354] - ibmvnic: free reset-work-item when flushing (Diego Domingos) [2051354] - ibmvnic: schedule failover only if vioctl fails (Diego Domingos) [2051354] - net/ibmvnic: Cleanup workaround doing an EOI after partition migration (Diego Domingos) [2051354]- xfs: don't expose misaligned extszinherit hints to userspace (Brian Foster) [2072552] - xfs: correct the narrative around misaligned rtinherit/extszinherit dirs (Brian Foster) [2072552] - xfs: fix endianness issue in xfs_ag_shrink_space (Brian Foster) [2072552] - xfs: bunmapi has unnecessary AG lock ordering issues (Brian Foster) [2072552] - xfs: btree format inode forks can have zero extents (Brian Foster) [2072552] - xfs: validate extsz hints against rt extent size when rtinherit is set (Brian Foster) [2072552] - xfs: standardize extent size hint validation (Brian Foster) [2072552] - xfs: check free AG space when making per-AG reservations (Brian Foster) [2072552] - xfs: retry allocations when locality-based search fails (Brian Foster) [2072552] - xfs: adjust rt allocation minlen when extszhint > rtextsize (Brian Foster) [2072552] - iomap: remove unused private field from ioend (Brian Foster) [2072552] - xfs: don't allow log writes if the data device is readonly (Brian Foster) [2072552] - xfs: count free space btree blocks when scrubbing pre-lazysbcount fses (Brian Foster) [2072552] - xfs: update superblock counters correctly for !lazysbcount (Brian Foster) [2072552] - xfs: don't check agf_btreeblks on pre-lazysbcount filesystems (Brian Foster) [2072552] - xfs: rename struct xfs_legacy_ictimestamp (Brian Foster) [2072552] - xfs: rename xfs_ictimestamp_t (Brian Foster) [2072552] - xfs: remove xfs_quiesce_attr declaration (Brian Foster) [2072552] - xfs: remove XFS_IFEXTENTS (Brian Foster) [2072552] - xfs: remove XFS_IFINLINE (Brian Foster) [2072552] - xfs: remove XFS_IFBROOT (Brian Foster) [2072552] - xfs: only look at the fork format in xfs_idestroy_fork (Brian Foster) [2072552] - xfs: simplify xfs_attr_remove_args (Brian Foster) [2072552] - xfs: rename and simplify xfs_bmap_one_block (Brian Foster) [2072552] - xfs: move the XFS_IFEXTENTS check into xfs_iread_extents (Brian Foster) [2072552] - xfs: get rid of the ip parameter to xchk_setup_* (Brian Foster) [2072552] - xfs: move the check for post-EOF mappings into xfs_can_free_eofblocks (Brian Foster) [2072552] - xfs: move the xfs_can_free_eofblocks call under the IOLOCK (Brian Foster) [2072552] - xfs: precalculate default inode attribute offset (Brian Foster) [2072552] - xfs: default attr fork size does not handle device inodes (Brian Foster) [2072552] - xfs: inode fork allocation depends on XFS_IFEXTENT flag (Brian Foster) [2072552] - xfs: eager inode attr fork init needs attr feature awareness (Brian Foster) [2072552] - xfs: scrub: Disable check for unoptimized data fork bmbt node (Brian Foster) [2072552] - xfs: Use struct xfs_bmdr_block instead of struct xfs_btree_block to calculate root node size (Brian Foster) [2072552] - xfs: merge _xfs_dic2xflags into xfs_ip2xflags (Brian Foster) [2072552] - xfs: move the di_crtime field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags2 field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_flags field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_forkoff field to struct xfs_inode (Brian Foster) [2072552] - xfs: use a union for i_cowextsize and i_flushiter (Brian Foster) [2072552] - xfs: use XFS_B_TO_FSB in xfs_ioctl_setattr (Brian Foster) [2072552] - xfs: cleanup xfs_fill_fsxattr (Brian Foster) [2072552] - xfs: move the di_flushiter field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_cowextsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_extsize field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_nblocks field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_size field to struct xfs_inode (Brian Foster) [2072552] - xfs: move the di_projid field to struct xfs_inode (Brian Foster) [2072552] - xfs: don't clear the "dinode core" in xfs_inode_alloc (Brian Foster) [2072552] - xfs: remove the di_dmevmask and di_dmstate fields from struct xfs_icdinode (Brian Foster) [2072552] - xfs: remove the unused xfs_icdinode_has_bigtime helper (Brian Foster) [2072552] - xfs: handle crtime more carefully in xfs_bulkstat_one_int (Brian Foster) [2072552] - xfs: consistently initialize di_flags2 (Brian Foster) [2072552] - xfs: split xfs_imap_to_bp (Brian Foster) [2072552] - xfs: scrub: Remove incorrect check executed on block format directories (Brian Foster) [2072552] - xfs: add error injection for per-AG resv failure (Brian Foster) [2072552] - xfs: support shrinking unused space in the last AG (Brian Foster) [2072552] - xfs: introduce xfs_ag_shrink_space() (Brian Foster) [2072552] - xfs: hoist out xfs_resizefs_init_new_ags() (Brian Foster) [2072552] - xfs: update lazy sb counters immediately for resizefs (Brian Foster) [2072552] - xfs: __percpu_counter_compare() inode count debug too expensive (Brian Foster) [2072552] - xfs: reduce debug overhead of dir leaf/node checks (Brian Foster) [2072552] - xfs: No need for inode number error injection in __xfs_dir3_data_check (Brian Foster) [2072552] - xfs: type verification is expensive (Brian Foster) [2072552] - xfs: optimise xfs_buf_item_size/format for contiguous regions (Brian Foster) [2072552] - xfs: xfs_buf_item_size_segment() needs to pass segment offset (Brian Foster) [2072552] - xfs: reduce buffer log item shadow allocations (Brian Foster) [2072552] - xfs: initialise attr fork on inode create (Brian Foster) [2072552] - xfs: ensure xfs_errortag_random_default matches XFS_ERRTAG_MAX (Brian Foster) [2072552] - xfs: rename variable mp to parsing_mp (Brian Foster) [2072552] - xfs: rename the blockgc workqueue (Brian Foster) [2072552] - xfs: validate ag btree levels using the precomputed values (Brian Foster) [2072552] - xfs: remove return value from xchk_ag_btcur_init (Brian Foster) [2072552] - xfs: set the scrub AG number in xchk_ag_read_headers (Brian Foster) [2072552] - xfs: bail out of scrub immediately if scan incomplete (Brian Foster) [2072552] - xfs: drop freeze protection when running GETFSMAP (Brian Foster) [2072552] - selftest/powerpc: Add PAPR sysfs attributes sniff test (Steve Best) [1986183] - powerpc/pseries: Interface to represent PAPR firmware attributes (Steve Best) [1986183] - net: mana: Remove unnecessary check of cqe_type in mana_process_rx_cqe() (Mohammed Gamal) [2051719] - net: mana: Add handling of CQE_RX_TRUNCATED (Mohammed Gamal) [2051719] - RDMA/rxe: Revert changes from irqsave to bh locks (Kamal Heib) [2056499] - RDMA/rxe: Check the last packet by RXE_END_MASK (Kamal Heib) [2056499] - RDMA/rxe: Remove qp->grp_lock and qp->grp_list (Kamal Heib) [2056499] - RDMA/rxe: Remove rxe_drop_all_macst_groups (Kamal Heib) [2056499] - RDMA/rxe: Enforce IBA o10-2.2.3 (Kamal Heib) [2056499] - RDMA/rxe: Rename rxe_mc_grp and rxe_mc_elem (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_attach/detach to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/rxe: Move rxe_mcast_add/delete to rxe_mcast.c (Kamal Heib) [2056499] - RDMA/cma: Do not change route.addr.src_addr outside state checks (Kamal Heib) [2056499] - RDMA/ib_srp: Fix a deadlock (Kamal Heib) [2056499] - RDMA/siw: Fix broken RDMA Read Fence/Resume logic. (Kamal Heib) [2056499] - IB/cm: Release previously acquired reference counter in the cm_id_priv (Kamal Heib) [2056499] - RDMA/siw: Fix refcounting leak in siw_create_qp() (Kamal Heib) [2056499] - RDMA/ucma: Protect mc during concurrent multicast leaves (Kamal Heib) [2056499] - RDMA/cma: Use correct address when leaving multicast group (Kamal Heib) [2056499] - IB/hfi1: Fix tstats alloc and dealloc (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix AIP early init panic (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix alloc failure with larger txqueuelen (Kamal Heib) [2056499 2049845] - IB/hfi1: Fix panic with larger ipoib send_queue_size (Kamal Heib) [2056499 2049845] - all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where appropriate (Kamal Heib) [2056499] - RDMA/irdma: Remove the redundant return (Kamal Heib) [2056499 2037972] - RDMA/rxe: Use the standard method to produce udp source port (Kamal Heib) [2056499] - RDMA/irdma: Make the source udp port vary (Kamal Heib) [2056499 2037972] - RDMA/core: Calculate UDP source port based on flow label or lqpn/rqpn (Kamal Heib) [2056499] - IB/iser: Align coding style across driver (Kamal Heib) [2056499] - IB/iser: Remove un-needed casting to/from void pointer (Kamal Heib) [2056499] - IB/iser: Don't suppress send completions (Kamal Heib) [2056499] - IB/iser: Rename ib_ret local variable (Kamal Heib) [2056499] - IB/iser: Fix RNR errors (Kamal Heib) [2056499] - IB/iser: Remove deprecated pi_guard module param (Kamal Heib) [2056499] - IB/mlx5: Expose NDR speed through MAD (Kamal Heib) [2056499] - RDMA/rxe: Delete deprecated module parameters interface (Kamal Heib) [2056499] - RDMA/mad: Delete duplicated init_query_mad functions (Kamal Heib) [2056499] - RDMA/rxe: Fix indentations and operators sytle (Kamal Heib) [2056499] - RDMA: Use default_groups in kobj_type (Kamal Heib) [2056499] - RDMA/rxe: Fix a typo in opcode name (Kamal Heib) [2056499] - RDMA/rxe: Remove the unused xmit_errors member (Kamal Heib) [2056499] - RDMA/rxe: Remove redundant err variable (Kamal Heib) [2056499] - RDMA/irdma: Use auxiliary_device driver data helpers (Kamal Heib) [2056499 2037972] - driver core: auxiliary bus: Add driver data helpers (Kamal Heib) [2056499] - RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Let ib_find_gid() continue search even after empty entry (Kamal Heib) [2056499] - RDMA/core: Modify rdma_query_gid() to return accurate error codes (Kamal Heib) [2056499] - RDMA/rxe: Remove the unnecessary variable (Kamal Heib) [2056499] - RDMA/irdma: Fix the type used to declare a bitmap (Kamal Heib) [2056499 2037972] - RDMA/uverbs: Remove the unnecessary assignment (Kamal Heib) [2056499] - RDMA/siw: Use max() instead of doing it manually (Kamal Heib) [2056499] - RDMA/pvrdma: Use non-atomic bitmap functions when possible (Kamal Heib) [2056499] - RDMA/pvrdma: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499] - IB/hfi1: Use bitmap_zalloc() when applicable (Kamal Heib) [2056499 2049845] - RDMA/siw: Use helper function to set sys_image_guid (Kamal Heib) [2056499] - RDMA/cma: Remove open coding of overflow checking for private_data_len (Kamal Heib) [2056499] - RDMA/rxe: Remove some #defines from rxe_pool.h (Kamal Heib) [2056499] - RDMA/rxe: Remove #include "rxe_loc.h" from rxe_pool.c (Kamal Heib) [2056499] - RDMA/rxe: Save object pointer in pool element (Kamal Heib) [2056499] - RDMA/rxe: Copy setup parameters into rxe_pool (Kamal Heib) [2056499] - RDMA/rxe: Cleanup rxe_pool_entry (Kamal Heib) [2056499] - RDMA/rxe: Replace irqsave locks with bh locks (Kamal Heib) [2056499] - RDMA/usnic: Clean up usnic_ib_alloc_pd() (Kamal Heib) [2056499] - RDMA/irdma: Use helper function to set GUIDs (Kamal Heib) [2056499 2037972] - RDMA/rxe: Prevent double freeing rxe_map_set() (Kamal Heib) [2056498] - IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr (Kamal Heib) [2056498 2049845] - IB/hfi1: Fix early init panic (Kamal Heib) [2056498 2049845] - IB/hfi1: Insure use of smp_processor_id() is preempt disabled (Kamal Heib) [2056498 2049845] - IB/hfi1: Correct guard on eager buffer deallocation (Kamal Heib) [2056498 2049845] - RDMA: Fix use-after-free in rxe_queue_cleanup (Kamal Heib) [2056498] - RDMA/nldev: Check stat attribute before accessing it (Kamal Heib) [2056498] - IB/hfi1: Properly allocate rdma counter desc memory (Kamal Heib) [2056498 2049845] - RDMA/core: Set send and receive CQ before forwarding to the driver (Kamal Heib) [2056498] - RDMA/netlink: Add __maybe_unused to static inline in C file (Kamal Heib) [2056498] - RDMA/core: Require the driver to set the IOVA correctly during rereg_mr (Kamal Heib) [2056498] - RDMA/irdma: optimize rx path by removing unnecessary copy (Kamal Heib) [2056498 2037972] - IB/opa_vnic: Rebranding of OPA VNIC driver to Cornelis Networks (Kamal Heib) [2056498] - IB/hfi1: Rebranding of hfi1 driver to Cornelis Networks (Kamal Heib) [2056498 2049845] - RDMA/rxe: Make rxe_type_info static const (Kamal Heib) [2056498] - RDMA/rxe: Use 'bitmap_zalloc()' when applicable (Kamal Heib) [2056498] - RDMA/rxe: Save a few bytes from struct rxe_pool (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused variable local_qp (Kamal Heib) [2056498 2037972] - RDMA/core: Fix missed initialization of rdma_hw_stats::lock (Kamal Heib) [2056498] - RDMA/irdma: Remove the unused spin lock in struct irdma_qp_uk (Kamal Heib) [2056498 2037972] - RDMA: Constify netdev->dev_addr accesses (Kamal Heib) [2056498] - RDMA/ipoib: Use dev_addr_mod() (Kamal Heib) [2056498] - RDMA/core: Use kvzalloc when allocating the struct ib_port (Kamal Heib) [2056498] - RDMA/irdma: Make irdma_uk_cq_init() return a void (Kamal Heib) [2056498 2037972] - RDMA/rxe: Convert kernel UD post send to use ah_num (Kamal Heib) [2056498] - RDMA/rxe: Lookup kernel AH from ah index in UD WQEs (Kamal Heib) [2056498] - RDMA/rxe: Replace ah->pd by ah->ibah.pd (Kamal Heib) [2056498] - RDMA/rxe: Create AH index and return to user space (Kamal Heib) [2056498] - RDMA/rxe: Change AH objects to indexed (Kamal Heib) [2056498] - RDMA/rxe: Move AV from rxe_send_wqe to rxe_send_wr (Kamal Heib) [2056498] - RDMA/irdma: Remove irdma_cqp_up_map_cmd() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_get_hw_addr() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_sc_send_lsmm_nostag() (Kamal Heib) [2056498 2037972] - RDMA/irdma: Remove irdma_uk_mw_bind() (Kamal Heib) [2056498 2037972] - RDMA: Remove redundant 'flush_workqueue()' calls (Kamal Heib) [2056498] - RDMA/iwpm: Remove redundant initialization of pointer err_str (Kamal Heib) [2056498] - RDMA/nldev: Allow optional-counter status configuration through RDMA netlink (Kamal Heib) [2056498] - RDMA/nldev: Split nldev_stat_set_mode_doit out of nldev_stat_set_doit (Kamal Heib) [2056498] - RDMA/nldev: Add support to get status of all counters (Kamal Heib) [2056498] - RDMA/counter: Add optional counter support (Kamal Heib) [2056498] - RDMA/counter: Add an is_disabled field in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/core: Add a helper API rdma_free_hw_stats_struct (Kamal Heib) [2056498] - RDMA/bnxt_re: Fix kernel panic when trying to access bnxt_re_stat_descs (Kamal Heib) [2056499] - RDMA/counter: Add a descriptor in struct rdma_hw_stats (Kamal Heib) [2056498] - RDMA/bnxt_re: Update statistics counter name (Kamal Heib) [2056498] - RDMA/bnxt_re: Add extended statistics counters (Kamal Heib) [2056498] - RDMA/efa: CQ notifications (Kamal Heib) [2056498] - RDMA/rxe: Remove duplicate settings (Kamal Heib) [2056498] - RDMA/rxe: Set partial attributes when completion status != IBV_WC_SUCCESS (Kamal Heib) [2056498] - RDMA/rxe: Change the is_user member of struct rxe_cq to bool (Kamal Heib) [2056498] - RDMA/rxe: Remove the is_user members of struct rxe_sq/rxe_rq/rxe_srq (Kamal Heib) [2056498] - RDMA/irdma: Delete unused struct irdma_bth (Kamal Heib) [2056498 2037972] - IB/hf1: Use string_upper() instead of an open coded variant (Kamal Heib) [2056498] - RDMA/cma: Split apart the multiple uses of the same list heads (Kamal Heib) [2056498] - RDMA/rxe: Remove unused WR_READ_WRITE_OR_SEND_MASK (Kamal Heib) [2056498] - RDMA/rxe: Add MASK suffix for RXE_READ_OR_ATOMIC and RXE_WRITE_OR_SEND (Kamal Heib) [2056498] - RDMA/rxe: Add new RXE_READ_OR_WRITE_MASK (Kamal Heib) [2056498] - RDMA/hfi1: Use struct_size() and flex_array_size() helpers (Kamal Heib) [2056498 2049845] - IB/hfi1: Add ring consumer and producers traces (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove atomic completion count (Kamal Heib) [2056498 2049845] - IB/hfi1: Tune netdev xmit cachelines (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of tx priv backpointer (Kamal Heib) [2056498 2049845] - IB/hfi1: Get rid of hot path divide (Kamal Heib) [2056498 2049845] - IB/hfi1: Remove cache and embed txreq in ring (Kamal Heib) [2056498 2049845] - RDMA/rxe: Only allow invalidate for appropriate MRs (Kamal Heib) [2056498] - RDMA/rxe: Create duplicate mapping tables for FMRs (Kamal Heib) [2056498] - RDMA/rxe: Separate HW and SW l/rkeys (Kamal Heib) [2056498] - RDMA/rxe: Cleanup MR status and type enums (Kamal Heib) [2056498] - RDMA/rxe: Add memory barriers to kernel queues (Kamal Heib) [2056498] - RDMA/rxe: remove the unnecessary variable (Kamal Heib) [2056498] - RDMA/rxe: remove the redundant variable (Kamal Heib) [2056498] - RDMA/rxe: Fix wrong port_cap_flags (Kamal Heib) [2056498] - RDMA/rdmavt: Fix error code in rvt_create_qp() (Kamal Heib) [2056497 2049845] - IB/hfi1: Fix abba locking issue with sc_disable() (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Fix kernel pointer leak (Kamal Heib) [2056497 2049845] - RDMA/usnic: Lock VF with mutex instead of spinlock (Kamal Heib) [2056497] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2056497] - IB/hfi1: make hist static (Kamal Heib) [2056497 2049845] - RDMA/hfi1: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - IB/rdmavt: Convert to SPDX identifier (Kamal Heib) [2056497 2049845] - RDMA/core/sa_query: Retry SA queries (Kamal Heib) [2056497] - IB/core: Remove deprecated current_seq comments (Kamal Heib) [2056497] - RDMA/efa: Rename vector field in efa_irq struct to irqn (Kamal Heib) [2056497] - RDMA/efa: Remove unused cpu field from irq struct (Kamal Heib) [2056497] - RDMA/core/sa_query: Remove unused function (Kamal Heib) [2056497] - RDMA/hfi1: Stop using seq_get_buf in _driver_stats_seq_show (Kamal Heib) [2056497 2049845] - RDMA/core: Create clean QP creations interface for uverbs (Kamal Heib) [2056497] - RDMA/core: Properly increment and decrement QP usecnts (Kamal Heib) [2056497] - RDMA/core: Configure selinux QP during creation (Kamal Heib) [2056497] - RDMA/core: Reorganize create QP low-level functions (Kamal Heib) [2056497] - RDMA/core: Remove protection from wrong in-kernel API usage (Kamal Heib) [2056497] - RDMA/core: Delete duplicated and unreachable code (Kamal Heib) [2056497] - rdma/qedr: Fix crash due to redundant release of device's qp memory (Kamal Heib) [2056497] - RDMA: Globally allocate and release QP memory (Kamal Heib) [2056497] - RDMA/mlx5: Rework custom driver QP type creation (Kamal Heib) [2056497] - RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp (Kamal Heib) [2056497] - RDMA/rdmavt: Decouple QP and SGE lists allocations (Kamal Heib) [2056497 2049845] - RDMA/efa: Remove double QP type assignment (Kamal Heib) [2056497] - RDMA/hfi1: Fix typo in comments (Kamal Heib) [2056497 2049845] - RDMA/iwpm: Rely on the rdma_nl_[un]register() to ensure that requests are valid (Kamal Heib) [2056497] - RDMA/iwpm: Remove not-needed reference counting (Kamal Heib) [2056497] - RDMA/hfi1: Convert from atomic_t to refcount_t on hfi1_devdata->user_refcount (Kamal Heib) [2056497 2049845] - IB/hfi1: Adjust pkey entry in index 0 (Kamal Heib) [2056497 2049845] - IB/hfi1: Indicate DMA wait when txq is queued for wakeup (Kamal Heib) [2056497 2049845] - RDMA/rxe: Fix types in rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Add kernel-doc comments to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Move crc32 init code to rxe_icrc.c (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_icrc_hdr (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_crc32 to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC generation to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Fixup rxe_send and rxe_loopback (Kamal Heib) [2056497] - RDMA/rxe: Move rxe_xmit_packet to a subroutine (Kamal Heib) [2056497] - RDMA/rxe: Move ICRC checking to a subroutine (Kamal Heib) [2056497] - IB/core: Read subnet_prefix in ib_query_port via cache. (Kamal Heib) [2056497] - IB/core: Shifting initialization of device->cache_lock (Kamal Heib) [2056497] - IB/core: Updating cache for subnet_prefix in config_non_roce_gid_cache() (Kamal Heib) [2056497] - RDMA/efa: Split hardware stats to device and port stats (Kamal Heib) [2056497] - RDMA/rxe: Remove the repeated 'mr->umem = umem' (Kamal Heib) [2056497] - RDMA/siw: Convert siw_tx_hdt() to kmap_local_page() (Kamal Heib) [2056497] - RDMA/siw: Remove kmap() (Kamal Heib) [2056497] - treewide: Add missing semicolons to __assign_str uses (Kamal Heib) [2056497] - RDMA/hfi1: Remove use of kmap() (Kamal Heib) [2056497 2049845] - RDMA: Delete not-used static inline functions (Kamal Heib) [2056497] - mm/page_owner.c: record tgid (Waiman Long) [2069294] - mm/page_owner: record task command name (Waiman Long) [2069294] - mm/page_owner: print memcg information (Waiman Long) [2069294] - mm/page_owner: use scnprintf() to avoid excessive buffer overrun check (Waiman Long) [2069294] - lib/vsprintf: avoid redundant work with 0 size (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries into buffer (Waiman Long) [2069294] - lib, stackdepot: add helper to print stack entries (Waiman Long) [2069294] - lib, stackdepot: check stackdepot handle before accessing slabs (Waiman Long) [2069294] - stacktrace: move filter_irq_stacks() to kernel/stacktrace.c (Waiman Long) [2069294] - lib/stackdepot: introduce __stack_depot_save() (Waiman Long) [2069294] - mm: introduce PAGEFLAGS_MASK to replace ((1UL << NR_PAGEFLAGS) - 1) (Waiman Long) [2069294] - mm/page_owner: constify dump_page_owner (Waiman Long) [2069294] - mm: page_owner: detect page_owner recursion via task_struct (Waiman Long) [2069294] - mm: page_owner: use kstrtobool() to parse bool option (Waiman Long) [2069294] - mm: page_owner: fetch backtrace only for tracked pages (Waiman Long) [2069294] - mm, page_owner: remove unused parameter in __set_page_owner_handle (Waiman Long) [2069294] - mm/page_owner: record the timestamp of all pages during free (Waiman Long) [2069294] - mm/page_owner: use helper function zone_end_pfn() to get end_pfn (Waiman Long) [2069294] - mm/page_owner: record timestamp and pid (Waiman Long) [2069294] - x86/platform/uv: Log gap hole end size (Frank Ramsay) [2074098] - x86/platform/uv: Update TSC sync state for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Update NMI Handler for UV5 (Frank Ramsay) [2074098] - x86/platform/uv: Remove unused variable in UV5 NMI handler (Frank Ramsay) [2074098] - timekeeping: Boot should be boottime for coarse ns accessor (Ivan Vecera) [2076879]- net_tstamp: define new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net_tstamp: add new flag HWTSTAMP_FLAG_BONDED_PHC_INDEX (Petr Oros) [2070041] - net: fix NULL pointer reference in cipso_v4_doi_free (Guillaume Nault) [2074597] - partitions/efi: Fix partition name parsing in GUID partition entry (Ming Lei) [2075085] - psi: Fix uaf issue when psi trigger is destroyed while being polled (Waiman Long) [2046396] - cgroup/cpuset: Make child cpusets restrict parents on v1 hierarchy (Waiman Long) [2046396] - cgroup/cpuset: Don't let child cpusets restrict parent in default hierarchy (Waiman Long) [2046396] - mm/page_alloc: detect allocation forbidden by cpuset and bail out early (Waiman Long) [2046396] - cgroup: Fix rootcg cpu.stat guest double counting (Waiman Long) [2046396] - cgroup: no need for cgroup_mutex for /proc/cgroups (Waiman Long) [2046396] - cgroup: remove cgroup_mutex from cgroupstats_build (Waiman Long) [2046396] - cgroup: Fix memory leak caused by missing cgroup_bpf_offline (Waiman Long) [2046396] - cgroup: cgroup-v1: do not exclude cgrp_dfl_root (Waiman Long) [2046396] - bpf, test, cgroup: Use sk_{alloc,free} for test cases (Waiman Long) [2046396] - bpf, cgroup: Assign cgroup in cgroup_sk_alloc when called from interrupt (Waiman Long) [2046396] - bpf, cgroups: Fix cgroup v2 fallback on v1/v2 mixed mode (Waiman Long) [2046396] - cgroup/cpuset: Change references of cpuset_mutex to cpuset_rwsem (Waiman Long) [2046396] - cgroup: Replace deprecated CPU-hotplug functions. (Waiman Long) [2046396] - cgroup/cpuset: Fix a partition bug with hotplug (Waiman Long) [2046396] - cgroup/cpuset: Miscellaneous code cleanup (Waiman Long) [2046396] - cgroup/cpuset: fix typos in comments (Waiman Long) [2046396] - enable DAMON configs (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/reclaim: document statistics parameters (Chris von Recklinghausen) [2004233] - mm/damon: hide kernel pointer from tracepoint event (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: hide kernel pointer from damon_va_three_regions() failure log (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: use pr_debug() for damon_va_three_regions() failure logging (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary variable (Chris von Recklinghausen) [2004233] - mm/damon: move the implementation of damon_insert_region to damon.h (Chris von Recklinghausen) [2004233] - mm/damon: add access checking for hugetlb pages (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for schemes statistics (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support all DAMOS stats (Chris von Recklinghausen) [2004233] - mm/damon/reclaim: provide reclamation statistics (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account how many times quota limit has exceeded (Chris von Recklinghausen) [2004233] - mm/damon/schemes: account scheme actions that successfully applied (Chris von Recklinghausen) [2004233] - mm/damon: remove a mistakenly added comment for a future feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for kdamond_pid and (mk|rm)_contexts (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: mention tracepoint at the beginning (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: remove redundant information (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/usage: update for scheme quotas and watermarks (Chris von Recklinghausen) [2004233] - mm/damon: convert macro functions to static inline functions (Chris von Recklinghausen) [2004233] - mm/damon: modify damon_rand() macro to static inline function (Chris von Recklinghausen) [2004233] - mm/damon: move damon_rand() definition into damon.h (Chris von Recklinghausen) [2004233] - mm/damon/schemes: add the validity judgment of thresholds (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove swap_ranges() and replace it with swap() (Chris von Recklinghausen) [2004233] - mm/damon: remove some unneeded function definitions in damon.h (Chris von Recklinghausen) [2004233] - mm/damon/core: use abs() instead of diff_of() (Chris von Recklinghausen) [2004233] - mm/damon: unified access_check function naming rules (Chris von Recklinghausen) [2004233] - mm/damon: add 'age' of region tracepoint support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix 'struct pid' leaks in 'dbgfs_target_ids_write()' (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: protect targets destructions with kdamond_lock (Chris von Recklinghausen) [2004233] - selftests/damon: split test cases (Chris von Recklinghausen) [2004233] - selftests/damon: test debugfs file reads/writes with huge count (Chris von Recklinghausen) [2004233] - selftests/damon: test wrong DAMOS condition ranges input (Chris von Recklinghausen) [2004233] - selftests/damon: test DAMON enabling with empty target_ids case (Chris von Recklinghausen) [2004233] - selftests/damon: skip test if DAMON is running (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr-test: split a test function having >1024 bytes frame size (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: remove an unnecessary warning message (Chris von Recklinghausen) [2004233] - mm/damon/core: remove unnecessary error messages (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove an unnecessary error message (Chris von Recklinghausen) [2004233] - mm/damon/core: use better timer mechanisms selection threshold (Chris von Recklinghausen) [2004233] - mm/damon/core: fix fake load reports due to uninterruptible sleeps (Chris von Recklinghausen) [2004233] - timers: implement usleep_idle_range() (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: fix missed use of damon_dbgfs_lock (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: use '__GFP_NOWARN' for user-specified size buffer allocation (Chris von Recklinghausen) [2004233] - mm/damon: remove return value from before_terminate callback (Chris von Recklinghausen) [2004233] - mm/damon: fix a few spelling mistakes in comments and a pr_debug message (Chris von Recklinghausen) [2004233] - mm/damon: simplify stop mechanism (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: simplify the content (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix a wrong link (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon/start: fix wrong example commands (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: add adaptive_targets list check before enable monitor_on (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary variable initialization (Chris von Recklinghausen) [2004233] - Documentation/admin-guide/mm/damon: add a document for DAMON_RECLAIM (Chris von Recklinghausen) [2004233] - mm/damon: introduce DAMON-based Reclamation (DAMON_RECLAIM) (Chris von Recklinghausen) [2004233] - selftests/damon: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support watermarks (Chris von Recklinghausen) [2004233] - mm/damon/schemes: activate schemes based on a watermarks mechanism (Chris von Recklinghausen) [2004233] - tools/selftests/damon: update for regions prioritization of schemes (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support prioritization weights (Chris von Recklinghausen) [2004233] - mm/damon/vaddr,paddr: support pageout prioritization (Chris von Recklinghausen) [2004233] - mm/damon/schemes: prioritize regions within the quotas (Chris von Recklinghausen) [2004233] - mm/damon/selftests: support schemes quotas (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support quotas of schemes (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement time quota (Chris von Recklinghausen) [2004233] - mm/damon/schemes: skip already charged targets and regions (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement size quota for schemes application speed control (Chris von Recklinghausen) [2004233] - mm/damon/paddr: support the pageout scheme (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: remove unnecessary variables (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: constify static mm_walk_ops (Chris von Recklinghausen) [2004233] - Docs/DAMON: document physical memory monitoring support (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support physical memory monitoring (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for physical address space monitoring (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: separate commonly usable functions (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs-test: add a unit test case for 'init_regions' (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document 'init_regions' feature (Chris von Recklinghausen) [2004233] - Docs/admin-guide/mm/damon: document DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - docs/vm/damon: remove broken reference (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: allow users to set initial monitoring target regions (Chris von Recklinghausen) [2004233] - selftests/damon: add 'schemes' debugfs tests (Chris von Recklinghausen) [2004233] - mm/damon/schemes: implement statistics feature (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/vaddr: support DAMON-based Operation Schemes (Chris von Recklinghausen) [2004233] - mm/damon/core: implement DAMON-based Operation Schemes (DAMOS) (Chris von Recklinghausen) [2004233] - mm/damon/core: account age of target regions (Chris von Recklinghausen) [2004233] - mm/damon/core: nullify pointer ctx->kdamond with a NULL (Chris von Recklinghausen) [2004233] - mm/damon: needn't hold kdamond_lock to print pid of kdamond (Chris von Recklinghausen) [2004233] - mm/damon: remove unnecessary do_exit() from kdamond (Chris von Recklinghausen) [2004233] - mm/damon/core: print kdamond start log in debug mode only (Chris von Recklinghausen) [2004233] - mm/damon: grammar s/works/work/ (Chris von Recklinghausen) [2004233] - mm/damon/core-test: fix wrong expectations for 'damon_split_regions_of()' (Chris von Recklinghausen) [2004233] - mm/damon: don't use strnlen() with known-bogus source length (Chris von Recklinghausen) [2004233] - mm/damon: add kunit tests (Chris von Recklinghausen) [2004233] - Documentation: add documents for DAMON (Chris von Recklinghausen) [2004233] - mm/damon: add user space selftests (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: support multiple contexts (Chris von Recklinghausen) [2004233] - mm/damon/dbgfs: export kdamond pid to the user space (Chris von Recklinghausen) [2004233] - mm/damon: implement a debugfs-based user space interface (Chris von Recklinghausen) [2004233] - mm/damon: add a tracepoint (Chris von Recklinghausen) [2004233] - mm/damon: implement primitives for the virtual memory address spaces (Chris von Recklinghausen) [2004233] - mm/damon: adaptively adjust regions (Chris von Recklinghausen) [2004233] - mm/damon/core: implement region-based sampling (Chris von Recklinghausen) [2004233] - mm: introduce Data Access MONitor (DAMON) (Chris von Recklinghausen) [2004233] - khugepaged: use helper khugepaged_test_exit() in __khugepaged_enter() (Chris von Recklinghausen) [2004233] - mm/madvise: pass mm to do_madvise (Chris von Recklinghausen) [2004233] - ceph: fix possible NULL pointer dereference for req->r_session (Xiubo Li) [2076165] - thermal: int340x: Fix VCoRefLow MMIO bit offset for TGL (Prarit Bhargava) [2039994] - MAINTAINERS: sort field names for all entries (Joel Savitz) [2064843] - parse-maintainers: Do not sort section content by default (Joel Savitz) [2064843] - parse-maintainers: Mark as executable (Joel Savitz) [2064843] - KVM: x86: Use ERR_PTR_USR() to return -EFAULT as a __user pointer (Paul Lai) [2074679] - KVM: x86: add system attribute to retrieve full set of supported xsave states (Paul Lai) [2074679] - KVM: x86: Add a helper to retrieve userspace address from kvm_device_attr (Paul Lai) [2074679] - tools: arch: x86: pull in pvclock headers (Paul Lai) [2074679] - KVM: x86: Expose TSC offset controls to userspace (Paul Lai) [2074679] - KVM: x86: Refactor tsc synchronization code (Paul Lai) [2074679] - selftests: kvm: move vm_xsave_req_perm call to amx_test (Paul Lai) [2074679] - powerpc/pseries/vas: Add VAS migration handler (Steve Best) [2028678] - powerpc/pseries/vas: Modify reconfig open/close functions for migration (Steve Best) [2028678] - powerpc/pseries/vas: Define global hv_cop_caps struct (Steve Best) [2028678] - powerpc/pseries/vas: Add 'update_total_credits' entry for QoS capabilities (Steve Best) [2028678] - powerpc/pseries/vas: sysfs interface to export capabilities (Steve Best) [2028678] - powerpc/pseries/vas: Reopen windows with DLPAR core add (Steve Best) [2028678] - powerpc/pseries/vas: Close windows with DLPAR core removal (Steve Best) [2028678] - powerpc/vas: Map paste address only if window is active (Steve Best) [2028678] - powerpc/vas: Return paste instruction failure if no active window (Steve Best) [2028678] - powerpc/vas: Add paste address mmap fault handler (Steve Best) [2028678] - powerpc/pseries/vas: Save PID in pseries_vas_window struct (Steve Best) [2028678] - powerpc/pseries/vas: Use common names in VAS capability structure (Steve Best) [2028678] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [2051358] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [2051358] - block: loop:use kstatfs.f_bsize of backing file to set discard granularity (Ming Lei) [2069472] - blk-cgroup: set blkg iostat after percpu stat aggregation (Ming Lei) [2069472] - block: update io_ticks when io hang (Ming Lei) [2069472] - block: don't delete queue kobject before its children (Ming Lei) [2069472] - block/wbt: fix negative inflight counter when remove scsi device (Ming Lei) [2069472] - block: bio-integrity: Advance seed correctly for larger interval sizes (Ming Lei) [2069472] - block: fix async_depth sysfs interface for mq-deadline (Ming Lei) [2069472] - bfq: Do not let waker requests skip proper accounting (Ming Lei) [2069472] - block: Fix fsync always failed if once failed (Ming Lei) [2069472] - blktrace: fix use after free for struct blk_trace (Ming Lei) [2069472] - block: Check ADMIN before NICE for IOPRIO_CLASS_RT (Ming Lei) [2069472] - blk-cgroup: fix missing put device in error path from blkg_conf_pref() (Ming Lei) [2069472] - blkcg: Remove extra blkcg_bio_issue_init (Ming Lei) [2069472] - nbd: Fix use-after-free in pid_show (Ming Lei) [2069472] - block/mq-deadline: Improve request accounting further (Ming Lei) [2069472] - block, bfq: fix UAF problem in bfqg_stats_init() (Ming Lei) [2069472] - blk-cgroup: synchronize blkg creation against policy deactivation (Ming Lei) [2069472] - block, bfq: reset last_bfqq_created on group change (Ming Lei) [2069472] - block: bfq: fix bfq_set_next_ioprio_data() (Ming Lei) [2069472] - sched/topology: Remove redundant variable and fix incorrect type in build_sched_domains (Phil Auld) [2065200] - sched/fair: Adjust the allowed NUMA imbalance when SD_NUMA spans multiple LLCs (Phil Auld) [2065200] - sched/fair: Improve consistency of allowed NUMA balance calculations (Phil Auld) [2065200] - Revert: sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [2065200] - NFSv4.1: handle NFS4ERR_NOSPC by CREATE_SESSION (Steve Dickson) [2023844] - SUNRPC: use different lock keys for INET6 and LOCAL (Guillaume Nault) [2061651] - arm64: Restore forced disabling of KPTI on ThunderX (Mark Salter) [1999157] - arm64: mte: initialize RGSR_EL1.SEED in __cpu_setup (Mark Salter) [1999157] - arm64: Remove exporting cpu_logical_map symbol (Mark Salter) [1999157] - arm64: tlb: fix the TTL value of tlb_get_level (Mark Salter) [1999157] - arm64: Validate tagged addresses in access_ok() called from kernel threads (Mark Salter) [1999157] - arm64: ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL) (Mark Salter) [1999157] - arm64: ptrace: Use NO_SYSCALL instead of -1 in syscall_trace_enter() (Mark Salter) [1999157] - arm64: mm: Fix TLBI vs ASID rollover (Mark Salter) [1999157] - arm64: errata: Fix exec handling in erratum 1418040 workaround (Mark Salter) [1999157] - arm64: Generate cpucaps.h (Mark Salter) [1999157] - arm64/sve: Skip flushing Z registers with 128 bit vectors (Mark Salter) [1999157] - arm64/sve: Rework SVE access trap to convert state in registers (Mark Salter) [1999157] - arm64/sve: Use the sve_flush macros in sve_load_from_fpsimd_state() (Mark Salter) [1999157] - arm64/sve: Split _sve_flush macro into separate Z and predicate flushes (Mark Salter) [1999157] - arm64: fix inline asm in load_unaligned_zeropad() (Mark Salter) [1999157] - arm64: Extend workaround for erratum 1024718 to all versions of Cortex-A55 (Mark Salter) [1999157] - arm64/fpsimd: add to to fix fpsimd build (Mark Salter) [1999157] - arm64: cpu_errata: Apply Erratum 845719 to KRYO2XX Silver (Mark Salter) [1999157] - arm64: kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO2XX gold/silver CPU cores (Mark Salter) [1999157] - arm64: errata: Fix handling of 1418040 with late CPU onlining (Mark Salter) [1999157] - arm64: cpufeature: upgrade hyp caps to final (Mark Salter) [1999157] - arm64: cpufeature: reorder cpus_have_{const, final}_cap() (Mark Salter) [1999157] - arm64: Add workaround for Arm Cortex-A77 erratum 1508412 (Mark Salter) [1999157] - arm64: Add part number for Arm Cortex-A77 (Mark Salter) [1999157] - arm64: reject prctl(PR_PAC_RESET_KEYS) on compat tasks (Mark Salter) [1999157] - arm64: Treat SSBS as a non-strict system feature (Mark Salter) [1999157] - arm64: Group start_thread() functions together (Mark Salter) [1999157] - arm64: Remove Spectre-related CONFIG_* options (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_2 enabling code on all CPUs (Mark Salter) [1999157] - arm64: Run ARCH_WORKAROUND_1 enabling code on all CPUs (Mark Salter) [1999157] - arm64: mte: CPU feature detection and initial sysreg configuration (Mark Salter) [1999157] - arm64: cpufeature: Export symbol read_sanitised_ftr_reg() (Mark Salter) [1999157] - arm64/fpsimd: Fix missing-prototypes in fpsimd.c (Mark Salter) [1999157] - arm64: traps: Add str of description to panic() in die() (Mark Salter) [1999157] - arm64/sve: Implement a helper to load SVE registers from FPSIMD state (Mark Salter) [1999157] - arm64/sve: Implement a helper to flush SVE registers (Mark Salter) [1999157] - arm64/fpsimdmacros: Allow the macro "for" to be used in more cases (Mark Salter) [1999157] - arm64/fpsimdmacros: Introduce a macro to update ZCR_EL1.LEN (Mark Salter) [1999157] - arm64/signal: Update the comment in preserve_sve_context (Mark Salter) [1999157] - arm64/fpsimd: Update documentation of do_sve_acc (Mark Salter) [1999157] - arm64: cpufeature: Modify address authentication cpufeature to exact (Mark Salter) [1999157] - arm64: ptrauth: Introduce Armv8.3 pointer authentication enhancements (Mark Salter) [1999157] - arm64: traps: Allow force_signal_inject to pass esr error code (Mark Salter) [1999157] - arm64/cpuinfo: Define HWCAP name arrays per their actual bit definitions (Mark Salter) [1999157] - arm64: Reserve HWCAP2_MTE as (1 << 18) (Mark Salter) [1999157] - arm64: Allow CPUs unffected by ARM erratum 1418040 to come in late (Mark Salter) [1999157] - arm64: Allow booting of late CPUs affected by erratum 1418040 (Mark Salter) [1999157] - arm64: Drop unnecessary include from asm/smp.h (Mark Salter) [1999157] - arm64: Move handling of erratum 1418040 into C code (Mark Salter) [1999157] - arm64: Fix __cpu_logical_map undefined issue (Mark Salter) [1999157] - arm64: tlb: don't set the ttl value in flush_tlb_page_nosync (Mark Salter) [1999157] - arm64: Shift the __tlbi_level() indentation left (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_*_tlb_range (Mark Salter) [1999157] - arm64: tlb: Set the TTL field in flush_tlb_range (Mark Salter) [1999157] - arm64: Add tlbi_user_level TLB invalidation helper (Mark Salter) [1999157] - arm64: Add level-hinted TLB invalidation helper (Mark Salter) [1999157] - arm64: Document SW reserved PTE/PMD bits in Stage-2 descriptors (Mark Salter) [1999157] - arm64/cpufeature: Validate feature bits spacing in arm64_ftr_regs[] (Mark Salter) [1999157] - arm64/cpufeature: Replace all open bits shift encodings with macros (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR2 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR1 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64MMFR0 register (Mark Salter) [1999157] - arm64: csum: Fix handling of bad packets (Mark Salter) [1999157] - arm64: Add missing sentinel to erratum_1463225 (Mark Salter) [1999157] - arm64: Documentation: Fix broken table in generated HTML (Mark Salter) [1999157] - arm64: kgdb: Fix single-step exception handling oops (Mark Salter) [1999157] - arm64: entry: Tidy up block comments and label numbers (Mark Salter) [1999157] - arm64: Rework ARM_ERRATUM_1414080 handling (Mark Salter) [1999157] - arm64: entry: Fix the typo in the comment of el1_dbg() (Mark Salter) [1999157] - arm64: Add KRYO4XX silver CPU cores to erratum list 1530923 and 1024718 (Mark Salter) [1999157] - arm64: Add KRYO4XX gold CPU cores to erratum list 1463225 and 1418040 (Mark Salter) [1999157] - arm64: Add MIDR value for KRYO4XX gold CPU cores (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX silver CPU cores to SSB safelist (Mark Salter) [1999157] - arm64: kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist (Mark Salter) [1999157] - arm64: sve: Fix build failure when ARM64_SVE=y and SYSCTL=n (Mark Salter) [1999157] - arm64: mm: reset address tag set by kasan sw tagging (Mark Salter) [1999157] - arm64: traps: Dump registers prior to panic() in bad_mode() (Mark Salter) [1999157] - arm64/sve: Eliminate data races on sve_default_vl (Mark Salter) [1999157] - arm64: csum: Disable KASAN for do_csum() (Mark Salter) [1999157] - arm64/cpufeature: Add get_arm64_ftr_reg_nowarn() (Mark Salter) [1999157] - arm64/cpuinfo: Add ID_MMFR4_EL1 into the cpuinfo_arm64 context (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_MMFR4 register (Mark Salter) [1999157] - arm64/cpufeature: Add remaining feature bits in ID_PFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_MMFR5 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_DFR1 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Introduce ID_PFR2 CPU register (Mark Salter) [1999157] - arm64/cpufeature: Make doublelock a signed feature in ID_AA64DFR0 (Mark Salter) [1999157] - arm64/cpufeature: Drop TraceFilt feature exposure from ID_DFR0 register (Mark Salter) [1999157] - arm64/cpufeature: Add explicit ftr_id_isar0[] for ID_ISAR0 register (Mark Salter) [1999157] - arm64: cpufeature: Group indexed system register definitions by name (Mark Salter) [1999157] - arm64: cpufeature: Extend comment to describe absence of field info (Mark Salter) [1999157] - arm64: drop duplicate definitions of ID_AA64MMFR0_TGRAN constants (Mark Salter) [1999157] - arm64: cpufeature: Add an overview comment for the cpufeature framework (Mark Salter) [1999157] - arm64: cpufeature: Relax checks for AArch32 support at EL[0-2] (Mark Salter) [1999157] - arm64: cpufeature: Relax AArch32 system checks if EL1 is 64-bit only (Mark Salter) [1999157] - arm64: cpufeature: Factor out checking of AArch32 features (Mark Salter) [1999157] - arm64: cpufeature: Remove redundant call to id_aa64pfr0_32bit_el0() (Mark Salter) [1999157] - arm64: cpufeature: Spell out register fields for ID_ISAR4 and ID_PFR1 (Mark Salter) [1999157] - arm64: cpufeature: Relax check for IESB support (Mark Salter) [1999157] - arm64: mm: Add asid_gen_match() helper (Mark Salter) [1999157] - arm64: Call debug_traps_init() from trap_init() to help early kgdb (Mark Salter) [1999157] - arm64: cacheflush: Fix KGDB trap detection (Mark Salter) [1999157] - arm64/cpuinfo: Move device_initcall() near cpuinfo_regs_init() (Mark Salter) [1999157] - arm64: kexec_file: print appropriate variable (Mark Salter) [1999157] - arm: mm: use __pfn_to_section() to get mem_section (Mark Salter) [1999157] - arm64: Reorder the macro arguments in the copy routines (Mark Salter) [1999157] - KVM: arm64: Drop PTE_S2_MEMATTR_MASK (Mark Salter) [1999157] - arm64/kernel: Fix range on invalidating dcache for boot page tables (Mark Salter) [1999157] - arm64: set TEXT_OFFSET to 0x0 in preparation for removing it entirely (Mark Salter) [1999157] - arm64/mm: Use phys_to_page() to access pgtable memory (Mark Salter) [1999157] - arm64: smp: Make cpus_stuck_in_kernel static (Mark Salter) [1999157] - arm64: entry: remove unneeded semicolon in el1_sync_handler() (Mark Salter) [1999157] - arm64: cpufeature: Add "or" to mitigations for multiple errata (Mark Salter) [1999157] - arm64: Sort vendor-specific errata (Mark Salter) [1999157] - arm64: simplify ptrauth initialization (Mark Salter) [1999157] - arm64: remove ptrauth_keys_install_kernel sync arg (Mark Salter) [1999157] - arm64: insn: Provide a better name for aarch64_insn_is_nop() (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Refactor and modernise annotation for ret_to_user (Mark Salter) [1999157] - arm64: BTI: Reset BTYPE when skipping emulated instructions (Mark Salter) [1999157] - arm64: traps: Shuffle code to eliminate forward declarations (Mark Salter) [1999157] - arm64: unify native/compat instruction skipping (Mark Salter) [1999157] - arm64: BTI: Decode BYTPE bits when printing PSTATE (Mark Salter) [1999157] - arm64: Basic Branch Target Identification support (Mark Salter) [1999157] - arm64/kernel: Fix return value when cpu_online() fails in __cpu_up() (Mark Salter) [1999157] - arm64: Add get_user() type annotation on the !access_ok() path (Mark Salter) [1999157] - arm64: Fix PTRACE_SYSEMU semantics (Mark Salter) [1999157] - arm64: fix the flush_icache_range arguments in machine_kexec (Mark Salter) [1999157] - Documentation: arm64: fix amu.rst doc warnings (Mark Salter) [1999157] - arm64: sync kernel APIAKey when installing (Mark Salter) [1999157] - arm64: Delete the space separator in __emit_inst (Mark Salter) [1999157] - arm64: remove CONFIG_DEBUG_ALIGN_RODATA feature (Mark Salter) [1999157] - arm64: head: Convert install_el2_stub to SYM_INNER_LABEL (Mark Salter) [1999157] - arm64: Introduce get_cpu_ops() helper function (Mark Salter) [1999157] - arm64: Rename cpu_read_ops() to init_cpu_ops() (Mark Salter) [1999157] - arm64: Declare ACPI parking protocol CPU operation if needed (Mark Salter) [1999157] - arm64: move kimage_vaddr to .rodata (Mark Salter) [1999157] - arm64: sdei: Annotate SDEI entry points using new style annotations (Mark Salter) [1999157] - arm64: kernel: Convert to modern annotations for assembly data (Mark Salter) [1999157] - arm64: head: Annotate stext and preserve_boot_args as code (Mark Salter) [1999157] - arm64: head.S: Convert to modern annotations for assembly functions (Mark Salter) [1999157] - arm64: entry: Additional annotation conversions for entry.S (Mark Salter) [1999157] - arm64: entry: Annotate ret_from_fork as code (Mark Salter) [1999157] - arm64: entry: Annotate vector table and handlers as code (Mark Salter) [1999157] - kconfig: Add support for 'as-option' (Mark Salter) [1999157] - arm64: suspend: restore the kernel ptrauth keys (Mark Salter) [1999157] - arm64: __show_regs: strip PAC from lr in printk (Mark Salter) [1999157] - arm64: unwind: strip PAC from kernel addresses (Mark Salter) [1999157] - arm64/crash_core: Export KERNELPACMASK in vmcoreinfo (Mark Salter) [1999157] - arm64: mask PAC bits of __builtin_return_address (Mark Salter) [1999157] - compiler.h: Allow arch-specific asm/compiler.h (Mark Salter) [1999157] - arm64: initialize ptrauth keys for kernel booting task (Mark Salter) [1999157] - arm64: initialize and switch ptrauth kernel keys (Mark Salter) [1999157] - arm64: enable ptrauth earlier (Mark Salter) [1999157] - arm64: cpufeature: handle conflicts based on capability (Mark Salter) [1999157] - arm64: cpufeature: Move cpu capability helpers inside C file (Mark Salter) [1999157] - arm64: ptrauth: Add bootup/runtime flags for __cpu_setup (Mark Salter) [1999157] - arm64: install user ptrauth keys at kernel exit time (Mark Salter) [1999157] - arm64: rename ptrauth key structures to be user-specific (Mark Salter) [1999157] - arm64: cpufeature: add pointer auth meta-capabilities (Mark Salter) [1999157] - arm64: cpufeature: Fix meta-capability cpufeature check (Mark Salter) [1999157] - arm64: define __alloc_zeroed_user_highpage (Mark Salter) [1999157] - arm64/kernel: Simplify __cpu_up() by bailing out early (Mark Salter) [1999157] - arm64: smp: Mark expected switch fall-through (Mark Salter) [1999157] - arm64: remove redundant blank for '=' operator (Mark Salter) [1999157] - arm64: kexec_file: Fixed code style. (Mark Salter) [1999157] - arm64: add blank after 'if' (Mark Salter) [1999157] - arm64: fix spelling mistake "ca not" -> "cannot" (Mark Salter) [1999157] - arm64: entry: unmask IRQ in el0_sp() (Mark Salter) [1999157] - arm64: efi: add efi-entry.o to targets instead of extra-$(CONFIG_EFI) (Mark Salter) [1999157] - arm64: csum: Optimise IPv6 header checksum (Mark Salter) [1999157] - arch/arm64: fix typo in a comment (Mark Salter) [1999157] - arm64: remove gratuitious/stray .ltorg stanzas (Mark Salter) [1999157] - arm64: Update comment for ASID() macro (Mark Salter) [1999157] - arm64: mm: convert cpu_do_switch_mm() to C (Mark Salter) [1999157] - Documentation: arm64: document support for the AMU extension (Mark Salter) [1999157] - arm64: trap to EL1 accesses to AMU counters from EL0 (Mark Salter) [1999157] - arm64: add support for the AMU extension v1 (Mark Salter) [1999157] - arm64: smp: fix crash_smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: smp: fix smp_send_stop() behaviour (Mark Salter) [1999157] - arm64: context: Fix ASID limit in boot messages (Mark Salter) [1999157] - docs: arm64: fix trivial spelling enought to enough in memory.rst (Mark Salter) [1999157] - arm64: time: Replace by (Mark Salter) [1999157] - arm64: ssbs: Fix context-switch when SSBS is present on all CPUs (Mark Salter) [1999157] - arm64: use shared sysctl constants (Mark Salter) [1999157] - arm64: Drop do_el0_ia_bp_hardening() & do_sp_pc_abort() declarations (Mark Salter) [1999157] - arm64: entry: Avoid empty alternatives entries (Mark Salter) [1999157] - arm64: Kconfig: select HAVE_FUTEX_CMPXCHG (Mark Salter) [1999157] - arm64: Use macros instead of hard-coded constants for MAIR_EL1 (Mark Salter) [1999157] - arm64: Add KRYO{3,4}XX CPU cores to spectre-v2 safe list (Mark Salter) [1999157] - arm64: context: Free up kernel ASIDs if KPTI is not in use (Mark Salter) [1999157] - arm64: Remove __exception_text_start and __exception_text_end from asm/section.h (Mark Salter) [1999157] - arm64: armv8_deprecated: update the comments of armv8_deprecated_init() (Mark Salter) [1999157] - arm64: kpti: Add Broadcom Brahma-B53 core to the KPTI whitelist (Mark Salter) [1999157] - arm64: csum: Fix pathological zero-length calls (Mark Salter) [1999157] - arm64: Implement optimised checksum routine (Mark Salter) [1999157] - arm64: entry: cleanup sp_el0 manipulation (Mark Salter) [1999157] - arm64: entry: cleanup el0 svc handler naming (Mark Salter) [1999157] - arm64: entry: mark all entry code as notrace (Mark Salter) [1999157] - arm64: assembler: remove smp_dmb macro (Mark Salter) [1999157] - arm64: assembler: remove inherit_daif macro (Mark Salter) [1999157] - arm64: signal: nofpsimd: Handle fp/simd context for signal frames (Mark Salter) [1999157] - arm64: ptrace: nofpsimd: Fail FP/SIMD regset operations (Mark Salter) [1999157] - arm64: cpufeature: Set the FP/SIMD compat HWCAP bits properly (Mark Salter) [1999157] - arm64: cpufeature: Fix the type of no FP/SIMD capability (Mark Salter) [1999157] - arm64: fpsimd: Make sure SVE setup is complete before SIMD is used (Mark Salter) [1999157] - arm64: kernel: Correct annotation of end of el0_sync (Mark Salter) [1999157] - arm64: asm: Remove ENDPIPROC() (Mark Salter) [1999157] - arm64: mm: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: lib: Use modern annotations for assembly functions (Mark Salter) [1999157] - arm64: asm: Add new-style position independent function annotations (Mark Salter) [1999157] - arm64: kernel: avoid x18 in __cpu_soft_restart (Mark Salter) [1999157] - arm64/lib: copy_page: avoid x18 register in assembler code (Mark Salter) [1999157] - arm64: mm: avoid x18 in idmap_kpti_install_ng_mappings (Mark Salter) [1999157] - arm64: cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list (Mark Salter) [1999157] - arm64: entry: refine comment of stack overflow check (Mark Salter) [1999157] - arm64: kpti: Add NVIDIA's Carmel core to the KPTI whitelist (Mark Salter) [1999157] - arm64: mm: simplify the page end calculation in __create_pgd_mapping() (Mark Salter) [1999157] - arm64: print additional fault message when executing non-exec memory (Mark Salter) [1999157] - arm64: pgtable: Correct typo in comment (Mark Salter) [1999157] - arm64: cpufeature: Fix typos in comment (Mark Salter) [1999157] - arm64: entry-common: don't touch daif before bp-hardening (Mark Salter) [1999157] - arm64: Remove asmlinkage from updated functions (Mark Salter) [1999157] - arm64: entry: convert el0_sync to C (Mark Salter) [1999157] - arm64: entry: convert el1_sync to C (Mark Salter) [1999157] - arm64: Add prototypes for functions called by entry.S (Mark Salter) [1999157] - arm64: remove __exception annotations (Mark Salter) [1999157] - arm64: kprobes: Move exception_text check in blacklist (Mark Salter) [1999157] - arm64: kprobes: Remove unneeded RODATA check (Mark Salter) [1999157] - arm64: kprobes: Move extable address check into arch_prepare_kprobe() (Mark Salter) [1999157] - arm64: cpufeature: introduce helper cpu_has_hw_af() (Mark Salter) [1999157] - arm64: Document ICC_CTLR_EL3.PMHE setting requirements (Mark Salter) [1999157] - firmware: arm_sdei: use common SMCCC_CONDUIT_* (Mark Salter) [1999157] - arm64: uaccess: Remove uaccess_*_not_uao asm macros (Mark Salter) [1999157] - arm64: uaccess: Ensure PAN is re-enabled after unhandled uaccess fault (Mark Salter) [1999157] - arm64: Do not mask out PTE_RDONLY in pte_same() (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: Brahma-B53 is SSB and spectre v2 safe (Mark Salter) [1999157] - arm64: apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo (Mark Salter) [1999157] - arm64: cpufeature: Enable Qualcomm Falkor/Kryo errata 1003 (Mark Salter) [1999157] - arm64: Ensure VM_WRITE|VM_SHARED ptes are clean by default (Mark Salter) [1999157] - arm64: mm: fix inverted PAR_EL1.F check (Mark Salter) [1999157] - arm64: hibernate: check pgd table allocation (Mark Salter) [1999157] - arm64: armv8_deprecated: Checking return value for memory allocation (Mark Salter) [1999157] - arm64: mm: fix spurious fault detection (Mark Salter) [1999157] - arm64: ftrace: Ensure synchronisation in PLT setup for Neoverse-N1 #1542419 (Mark Salter) [1999157] - arm64: mm: avoid virt_to_phys(init_mm.pgd) (Mark Salter) [1999157] - docs: arm64: Fix indentation and doc formatting (Mark Salter) [1999157] - arm64: errata: Update stale comment (Mark Salter) [1999157] - arm64: consider stack randomization for mmap base only when necessary (Mark Salter) [1999157] - arm64: make use of is_compat_task instead of hardcoding this test (Mark Salter) [1999157] - arm64: kpti: ensure patched kernel text is fetched from PoU (Mark Salter) [1999157] - arm64: Clarify when cpu_enable() is called (Mark Salter) [1999157] - arm64: constify sys64_hook instances (Mark Salter) [1999157] - arm64: constify aarch64_insn_encoding_class[] (Mark Salter) [1999157] - arm64: constify icache_policy_str[] (Mark Salter) [1999157] - arm64: prefer __section from compiler_attributes.h (Mark Salter) [1999157] - arm64/ptrace: Fix typoes in sve_set() comment (Mark Salter) [1999157] - arm64: mm: print hexadecimal EC value in mem_abort_decode() (Mark Salter) [1999157] - ahci: thunderx2: Fix workaround to use new inline function (Mark Salter) [1999157] - arm64/prefetch: fix a -Wtype-limits warning (Mark Salter) [1999157] - arm64: Move TIF_* documentation to individual definitions (Mark Salter) [1999157] - arm64: mm: free the initrd reserved memblock in a aligned manner (Mark Salter) [1999157] - arm64: io: Relax implicit barriers in default I/O accessors (Mark Salter) [1999157] - arm64: Remove unused cpucap_multi_entry_cap_cpu_enable() (Mark Salter) [1999157] - arm64: sysreg: Remove unused and rotting SCTLR_ELx field definitions (Mark Salter) [1999157] - arm64: esr: Add ESR exception class encoding for trapped ERET (Mark Salter) [1999157] - arm64/kexec: Use consistent convention of initializing 'kxec_buf.mem' with KEXEC_BUF_MEM_UNKNOWN (Mark Salter) [1999157] - arm64: remove pointless __KERNEL__ guards (Mark Salter) [1999157] - arm64: Remove unused assembly macro (Mark Salter) [1999157] - arm64: memory: Cosmetic cleanups (Mark Salter) [1999157] - arm64: memory: Add comments to end of non-trivial #ifdef blocks (Mark Salter) [1999157] - arm64: memory: Simplify virt_to_page() implementation (Mark Salter) [1999157] - arm64: memory: Rewrite default page_to_virt()/virt_to_page() (Mark Salter) [1999157] - arm64: mm: Ignore spurious translation faults taken from the kernel (Mark Salter) [1999157] - arm64: mm: Add ISB instruction to set_pgd() (Mark Salter) [1999157] - arm64: tlb: Ensure we execute an ISB following walk cache invalidation (Mark Salter) [1999157] - Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}" (Mark Salter) [1999157] - arm64: pgtable: Implement p[mu]d_valid() and check in set_p[mu]d() (Mark Salter) [1999157] - arm64: Change the tagged_addr sysctl control semantics to only prevent the opt-in (Mark Salter) [1999157] - redhat/configs: Add CONFIG_ARM64_TAGGED_ADDR_ABI (Mark Salter) [1999157] - arm64: Introduce prctl() options to control the tagged user addresses ABI (Mark Salter) [1999157] - arm64: smp: Treat unknown boot failures as being 'stuck in kernel' (Mark Salter) [1999157] - arm64: smp: Don't enter kernel with NULL stack pointer or task struct (Mark Salter) [1999157] - arm64: map FDT as RW for early_init_dt_scan() (Mark Salter) [1999157] - arm64: ftrace: Ensure module ftrace trampoline is coherent with I-side (Mark Salter) [1999157] - arch: replace _BITUL() in kernel-space headers with BIT() (Mark Salter) [1999157] - arm64: move jump_label_init() before parse_early_param() (Mark Salter) [1999157] - arm64: don't use asm-generic/ptrace.h (Mark Salter) [1999157] - arm64: rename dump_instr as dump_kernel_instr (Mark Salter) [1999157] - arm64/mm: Drop [PTE|PMD]_TYPE_FAULT (Mark Salter) [1999157] - arm64: module: create module allocations without exec permissions (Mark Salter) [1999157] - acpi/arm64: ignore 5.1 FADTs that are reported as 5.0 (Mark Salter) [1999157] - arm64: remove redundant 'default n' from Kconfig (Mark Salter) [1999157] - arm64: mm: avoid redundant READ_ONCE(*ptep) (Mark Salter) [1999157] - arm64/mm: Document write abort detection from ESR (Mark Salter) [1999157] - arm64: Fix comment after #endif (Mark Salter) [1999157] - arm64: ptrace: add support for syscall emulation (Mark Salter) [1999157] - arm64: add PTRACE_SYSEMU{,SINGLESTEP} definations to uapi headers (Mark Salter) [1999157] - arm64/mm: Identify user instruction aborts (Mark Salter) [1999157] - arm64/mm: Change BUG_ON() to VM_BUG_ON() in [pmd|pud]_set_huge() (Mark Salter) [1999157] - arm64: kernel: use aff3 instead of aff2 in comment (Mark Salter) [1999157] - arm64/mm: Simplify protection flag creation for kernel huge mappings (Mark Salter) [1999157] - arm64/mm: Move PTE_VALID from SW defined to HW page table entry definitions (Mark Salter) [1999157] - arm64/sve: should not depend on (Mark Salter) [1999157] - arm64: ssbd: explicitly depend on (Mark Salter) [1999157] - ARM64: trivial: s/TIF_SECOMP/TIF_SECCOMP/ comment typo fix (Mark Salter) [1999157] - arm64: smp: Moved cpu_logical_map[] to smp.h (Mark Salter) [1999157] - arm64: use the correct function type for __arm64_sys_ni_syscall (Mark Salter) [1999157] - arm64: use the correct function type in SYSCALL_DEFINE0 (Mark Salter) [1999157] - arm64: fix syscall_fn_t type (Mark Salter) [1999157] - signal/arm64: Use force_sig not force_sig_fault for SIGKILL (Mark Salter) [1999157] - arm64: Fix the arm64_personality() syscall wrapper redirection (Mark Salter) [1999157] - arm64: Remove useless message during oops (Mark Salter) [1999157] - arm64: don't trash config with compat symbol if COMPAT is disabled (Mark Salter) [1999157] - arm64: assembler: Update comment above cond_yield_neon() macro (Mark Salter) [1999157] - arm64: Fix size of __early_cpu_boot_status (Mark Salter) [1999157] - arm64: mm: Remove pte_unmap_nested() (Mark Salter) [1999157] - arm64: Fix compiler warning from pte_unmap() with -Wunused-but-set-variable (Mark Salter) [1999157] - arm64: compat: Reduce address limit for 64K pages (Mark Salter) [1999157] - arm64: mmap: Ensure file offset is treated as unsigned (Mark Salter) [1999157] - arm64: instrument smp_{load_acquire,store_release} (Mark Salter) [1999157] - arm64: mm: check virtual addr in virt_to_page() if CONFIG_DEBUG_VIRTUAL=y (Mark Salter) [1999157] - arm64: ptrace: Add function argument access API (Mark Salter) [1999157] - arm64: compat: Reduce address limit (Mark Salter) [1999157] - arm64: Save and restore OSDLR_EL1 across suspend/resume (Mark Salter) [1999157] - arm64: Clear OSDLR_EL1 on CPU boot (Mark Salter) [1999157] - arm64: debug: Separate debug hooks based on target exception level (Mark Salter) [1999157] - arm64: debug: Remove meaningless comment (Mark Salter) [1999157] - arm64: debug: Rename addr parameter for non-watchpoint exception hooks (Mark Salter) [1999157] - arm64: Use defines instead of magic numbers (Mark Salter) [1999157] - arm64: cpu_ops: fix a leaked reference by adding missing of_node_put (Mark Salter) [1999157] - arm64: mm: Make show_pte() a static function (Mark Salter) [1999157] - arm64: setup min_low_pfn (Mark Salter) [1999157] - arm64: mm: fix incorrect assignment of 'max_mapnr' (Mark Salter) [1999157] - arm64: perf_event: Remove wrongfully used inline (Mark Salter) [1999157] - arm64: backtrace: Don't bother trying to unwind the userspace stack (Mark Salter) [1999157] - arm64: replace memblock_alloc_low with memblock_alloc (Mark Salter) [1999157] - arm64: kdump: no need to mark crashkernel pages manually PG_reserved (Mark Salter) [1999157] - arm64: kexec: no need to ClearPageReserved() (Mark Salter) [1999157] - arm64: mmu: drop paging_init comments (Mark Salter) [1999157] - arm64: debug: Ensure debug handlers check triggering exception level (Mark Salter) [1999157] - arm64: io: Hook up __io_par() for inX() ordering (Mark Salter) [1999157] - arm64: Rename get_thread_info() (Mark Salter) [1999157] - arm64: Remove documentation about TIF_USEDFPU (Mark Salter) [1999157] - arm64: uaccess: Cleanup get/put_user() (Mark Salter) [1999157] - arm64: Remove asm/memblock.h (Mark Salter) [1999157] - arm64: default NR_CPUS to 256 (Mark Salter) [1999157] - arm64: perf: remove misleading comment (Mark Salter) [1999157] - arm64: Relax GIC version check during early boot (Mark Salter) [1999157] - arm64, mm, efi: Account for GICv3 LPI tables in static memblock reserve table (Mark Salter) [1999157] - arm64: hibernate: Clean the __hyp_text to PoC after resume (Mark Salter) [1999157] - arm64: hyp-stub: Forbid kprobing of the hyp-stub (Mark Salter) [1999157] - arm64: kprobe: Always blacklist the KVM world-switch code (Mark Salter) [1999157] - kasan, arm64: remove redundant ARCH_SLAB_MINALIGN define (Mark Salter) [1999157] - arm64: asm-prototypes: Fix fat-fingered typo in comment (Mark Salter) [1999157] - arm64: compat: Hook up io_pgetevents() for 32-bit tasks (Mark Salter) [1999157] - arm64: compat: Don't pull syscall number from regs in arm_compat_syscall (Mark Salter) [1999157] - arm64: compat: Avoid sending SIGILL for unallocated syscall numbers (Mark Salter) [1999157] - arm64: kaslr: Reserve size of ARM64_MEMSTART_ALIGN in linear region (Mark Salter) [1999157] - arm64: smp: Fix compilation error (Mark Salter) [1999157] - arm64: select ACPI PCI code only when both features are enabled (Mark Salter) [1999157] - arm64: kaslr: print PHYS_OFFSET in dump_kernel_offset() (Mark Salter) [1999157] - arm64: sysreg: Use _BITUL() when defining register bits (Mark Salter) [1999157] - arm64: perf: Treat EXCLUDE_EL* bit definitions as unsigned (Mark Salter) [1999157] - arm64: percpu: Fix LSE implementation of value-returning pcpu atomics (Mark Salter) [1999157] - arm64: smp: Handle errors reported by the firmware (Mark Salter) [1999157] - arm64: smp: Rework early feature mismatched detection (Mark Salter) [1999157] - arm64: percpu: Rewrite per-cpu ops to allow use of LSE atomics (Mark Salter) [1999157] - arm64: crypto: add NEON accelerated XOR implementation (Mark Salter) [1999157] - arm64/neon: add workaround for ambiguous C99 stdint.h types (Mark Salter) [1999157] - arm64: ftrace: always pass instrumented pc in x0 (Mark Salter) [1999157] - arm64: ftrace: use GLOBAL() (Mark Salter) [1999157] - arm64: io: Ensure value passed to __iormb() is held in a 64-bit register (Mark Salter) [1999157] - arm64: acpi: Prepare for longer MADTs (Mark Salter) [1999157] - arm64: io: Ensure calls to delay routines are ordered against prior readX() (Mark Salter) [1999157] - arm64: perf: Fix typos in comment (Mark Salter) [1999157] - arm64: function_graph: Simplify with function_graph_enter() (Mark Salter) [1999157] - arm64: sysreg: fix sparse warnings (Mark Salter) [1999157] - arm64: mm: define NET_IP_ALIGN to 0 (Mark Salter) [1999157] - arm64: kprobe: make page to RO mode when allocate it (Mark Salter) [1999157] - arm64: kdump: fix small typo (Mark Salter) [1999157] - arm64: mm: Use #ifdef for the __PAGETABLE_P?D_FOLDED defines (Mark Salter) [1999157] - arm64: Trap WFI executed in userspace (Mark Salter) [1999157] - arm64/mm: Use ESR_ELx_FSC macro while decoding fault exception (Mark Salter) [1999157] - arm64: compat: Add CNTFRQ trap handler (Mark Salter) [1999157] - arm64: compat: Add CNTVCT trap handler (Mark Salter) [1999157] - arm64: compat: Add cp15_32 and cp15_64 handler arrays (Mark Salter) [1999157] - arm64: compat: Add condition code checks and IT advance (Mark Salter) [1999157] - arm64: Add decoding macros for CP15_32 and CP15_64 traps (Mark Salter) [1999157] - arm64: Remove unused VGA console support (Mark Salter) [1999157] - arm64: Kconfig: Remove ARCH_HAS_HOLES_MEMORYMODEL (Mark Salter) [1999157] - arm64/cpufeatures: Emulate MRS instructions by parsing ESR_ELx.ISS (Mark Salter) [1999157] - arm64/cpufeatures: Factorize emulate_mrs() (Mark Salter) [1999157] - arm64: fix for bad_mode() handler to always result in panic (Mark Salter) [1999157] - arm64: force_signal_inject: WARN if called from kernel context (Mark Salter) [1999157] - arm64: tlb: Adjust stride and type of TLBI according to mmu_gather (Mark Salter) [1999157] - arm64: percpu: Initialize ret in the default case (Mark Salter) [1999157] - arm64: mm: always enable CONFIG_HOLES_IN_ZONE (Mark Salter) [1999157] - arm64: Avoid calling stop_machine() when patching jump labels (Mark Salter) [1999157] - arm64: Drop asmlinkage qualifier from syscall_trace_{enter,exit} (Mark Salter) [1999157] - arm64: zero GPRs upon entry from EL0 (Mark Salter) [1999157] - arm64: don't reload GPRs after apply_ssbd (Mark Salter) [1999157] - arm64: consistently use unsigned long for thread flags (Mark Salter) [1999157] - arm64: insn: Don't fallback on nosync path for general insn patching (Mark Salter) [1999157] - arm64: remove unused COMPAT_PSR definitions (Mark Salter) [1999157] - kvm/arm: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: use PSR_AA32 definitions (Mark Salter) [1999157] - arm64: compat: map SPSR_ELx<->PSR for signals (Mark Salter) [1999157]- RDMA/qedr: Fix reporting max_{send/recv}_wr attrs (Kamal Heib) [2051524] - thermal/drivers/int340x: Fix RFIM mailbox write commands (Prarit Bhargava) [2040065] - thermal: int340x: Limit Kconfig to 64-bit (Prarit Bhargava) [2040065] - thermal: int340x: fix build on 32-bit targets (Prarit Bhargava) [2040065] - thermal/drivers/int340x: processor_thermal: Suppot 64 bit RFIM responses (Prarit Bhargava) [2040065] - PCI/MSI: Clear PCI_MSIX_FLAGS_MASKALL on error (Myron Stowe) [1911591] - PCI/MSI: Skip masking MSI-X on Xen PV (Myron Stowe) [1911591] - PCI/MSI: Mask all unused MSI-X entries (Myron Stowe) [1911591] - PCI/MSI: Enable and mask MSI-X early (Myron Stowe) [1911591] - genirq: Use rcu in kstat_irqs_usr() (Waiman Long) [2068445] - scsi: target: Allow changing dbroot if there are no registered devices (Maurizio Lombardi) [2073435] - powerpc/pseries: Fix use after free in remove_phb_dynamic() (Steve Best) [2073707] - sctp: use the correct skb for security_sctp_assoc_request (Xin Long) [2070915] - s390/mm: check 2KB-fragment page on release (Rafael Aquini) [2026578] - s390/mm: better annotate 2KB pagetable fragments handling (Rafael Aquini) [2026578] - s390/mm: fix 2KB pgtable release race (Rafael Aquini) [2026578] - s390/mm: fix phys vs virt confusion in pgtable allocation routines (Rafael Aquini) [2026578] - net: openvswitch: fix leak of nested actions (Eelco Chaudron) [2073538] - bpf: Let bpf_warn_invalid_xdp_action() report more info (Petr Oros) [2069671] - bpf: Do not WARN in bpf_warn_invalid_xdp_action() (Petr Oros) [2069671]- scsi: qedi: Fix failed disconnect handling (Chris Leech) [2071519] - scsi: iscsi: Fix unbound endpoint error handling (Chris Leech) [2071519] - scsi: iscsi: Fix conn cleanup and stop race during iscsid restart (Chris Leech) [2071519] - scsi: iscsi: Fix endpoint reuse regression (Chris Leech) [2071519] - scsi: iscsi: Release endpoint ID when its freed (Chris Leech) [2071519] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2071519] - Revert "scsi: iscsi: Fix offload conn cleanup when iscsid restarts" (Chris Leech) [2071519] - scsi: iscsi: Speed up session unblocking and removal (Chris Leech) [2071519] - scsi: iscsi: Fix recovery and unblocking race (Chris Leech) [2071519] - scsi: iscsi: Unblock session then wake up error handler (Chris Leech) [2071519] - bnxt_en: make hw-tc-offload default to off (Ken Cox) [2005101] - bnxt_en: reject indirect blk offload when hw-tc-offload is off (Ken Cox) [2005101]- bpf, test_offload.py: Skip base maps without names (Yauheni Kaliuta) [2025787] - bnx2x: truncate value to original sizing (Manish Chopra) [2040271] - bnx2x: use correct format characters (Manish Chopra) [2040271] - bnx2x: fix built-in kernel driver load failure (Manish Chopra) [2040271] - bnx2x: fix driver load from initrd (Manish Chopra) [2040271] - bnx2x: Replace one-element array with flexible-array member (Manish Chopra) [2040271] - bnx2x: Remove useless DMA-32 fallback configuration (Manish Chopra) [2040271] - bnx2x: Invalidate fastpath HSI version for VFs (Manish Chopra) [2040271] - bnx2x: Utilize firmware 7.13.21.0 (Manish Chopra) [2040271] - bnx2x: constify static inline stub for dev_addr (Manish Chopra) [2040271] - net: bnx2x: fix variable dereferenced before check (Manish Chopra) [2040271] - ethernet: bnx2x: use eth_hw_addr_set() (Manish Chopra) [2040271] - bnx2x: Fix enabling network interfaces without VFs (Manish Chopra) [2040271] - bnx2x: fix an error code in bnx2x_nic_load() (Manish Chopra) [2040271] - bnx2x: remove unused variable 'cur_data_offset' (Manish Chopra) [2040271] - bnx2x: Remove the repeated declaration (Manish Chopra) [2040271] - bnx2x: Fix missing error code in bnx2x_iov_init_one() (Manish Chopra) [2040271] - net: broadcom: bnx2x: Fix wrong function name in comments (Manish Chopra) [2040271] - bnx2x: Remove redundant assignment to err (Manish Chopra) [2040271] - bnx2x: Use fallthrough pseudo-keyword (Manish Chopra) [2040271] - bnx2x: use true,false for bool variables (Manish Chopra) [2040271] - bnx2x: Fix some kernel-doc warnings (Manish Chopra) [2040271] - bnx2x: convert to new udp_tunnel_nic infra (Manish Chopra) [2040271] - bnx2x: Remove hw_reset_t function casts (Manish Chopra) [2040271] - bnx2x: Remove format_fw_ver_t function casts (Manish Chopra) [2040271] - bnx2x: Remove config_init_t function casts (Manish Chopra) [2040271] - bnx2x: Remove read_status_t function casts (Manish Chopra) [2040271] - bnx2x: Drop redundant callback function casts (Manish Chopra) [2040271] - bnx2x: Use napi_alloc_frag() (Manish Chopra) [2040271] - HID: intel-ish-hid: fix module device-id handling (Tony Camuso) [1921300] - mod_devicetable: fix kdocs for ishtp_device_id (Tony Camuso) [1921300] - HID: intel-ish-hid: add support for MODULE_DEVICE_TABLE() (Tony Camuso) [1921300] - platform/x86: isthp_eclite: only load for matching devices (Tony Camuso) [1921300] - platform/x86: Add Intel ishtp eclite driver (Tony Camuso) [1921300] - platform/x86: Add config file for Intel ishtp eclite driver (Tony Camuso) [1921300] - modpost: add guid_t type definition (Tony Camuso) [1921300] - squashfs: provide backing_dev_info in order to disable read-ahead (Brian Foster) [2025351] - mm: fix readahead_page_batch for retry entries (Brian Foster) [2025351] - iomap: convert from readpages to readahead (Brian Foster) [2025351] - fs: convert mpage_readpages to mpage_readahead (Brian Foster) [2025351] - mm: use memalloc_nofs_save in readahead path (Brian Foster) [2025351] - mm: document why we don't set PageReadahead (Brian Foster) [2025351] - mm: add page_cache_readahead_unbounded (Brian Foster) [2025351] - mm: move end_index check out of readahead loop (Brian Foster) [2025351] - mm: add readahead address space operation (Brian Foster) [2025351] - mm: put readahead pages in cache earlier (Brian Foster) [2025351] - mm: remove 'page_offset' from readahead loop (Brian Foster) [2025351] - mm: rename readahead loop variable to 'i' (Brian Foster) [2025351] - mm: rename various 'offset' parameters to 'index' (Brian Foster) [2025351] - mm: use readahead_control to pass arguments (Brian Foster) [2025351] - mm: add new readahead_control API (Brian Foster) [2025351] - mm: move readahead nr_pages check into read_pages (Brian Foster) [2025351] - mm: ignore return value of ->readpages (Brian Foster) [2025351] - mm: return void from various readahead functions (Brian Foster) [2025351] - mm: move readahead prototypes from mm.h (Brian Foster) [2025351] - mpage: mpage_readpages() should submit IO as read-ahead (Brian Foster) [2025351] - mpage: add argument structure for do_mpage_readpage() (Brian Foster) [2025351] - redhat/configs: enable CONFIG_AMD_PTDMA for x86_64 (Sudheesh Mavila) [2027231] - dmaengine: ptdma: handle the cases based on DMA is complete (Sudheesh Mavila) [2027231] - dmaengine: ptdma: fix concurrency issue with multiple dma transfer (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Fix the error handling path in pt_core_init() (Sudheesh Mavila) [2027231] - MAINTAINERS: Fix AMD PTDMA DRIVER entry (Sudheesh Mavila) [2027231] - dmaengine: ptdma: remove PT_OFFSET to avoid redefnition (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Add debugfs entries for PTDMA (Sudheesh Mavila) [2027231] - dmaengine: ptdma: register PTDMA controller as a DMA resource (Sudheesh Mavila) [2027231] - dmaengine: ptdma: Initial driver for the AMD PTDMA (Sudheesh Mavila) [2027231] - isert: support for unsolicited NOPIN with no response (Maurizio Lombardi) [2035915] - iscsit: increment max_cmd_sn for isert on command release (Maurizio Lombardi) [2035915] - sched/debug: Remove mpol_get/put and task_lock/unlock from sched_show_numa (Phil Auld) [2062841] - sched/numa: initialize numa statistics when forking new task (Phil Auld) [2062841] - cgroup: Fix suspicious rcu_dereference_check() usage warning (Phil Auld) [2062841] - sched/cpuacct: Remove redundant RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Optimize away RCU read lock (Phil Auld) [2062841] - sched/cpuacct: Fix charge percpu cpuusage (Phil Auld) [2062841] - sched: replace cpumask_weight with cpumask_empty where appropriate (Phil Auld) [2062841] - sched/rt: Plug rt_mutex_setprio() vs push_rt_task() race (Phil Auld) [2062841] - psi: fix possible trigger missing in the window (Phil Auld) [2062841] - sched: Avoid double preemption in __cond_resched_*lock*() (Phil Auld) [2062841] - sched/fair: Fix all kernel-doc warnings (Phil Auld) [2062841] - sched/rt: Try to restart rt period timer when rt runtime exceeded (Phil Auld) [2062841] - sched/fair: Fix detection of per-CPU kthreads waking a task (Phil Auld) [2062841] - locking: Remove rt_rwlock_is_contended(). (Phil Auld) [2062841] - sched: Trigger warning if ->migration_disabled counter underflows. (Phil Auld) [2062841] - sched/cpuacct: Make user/system times in cpuacct.stat more precise (Phil Auld) [2062841] - sched/cpuacct: Fix user/system in shown cpuacct.usage* (Phil Auld) [2062841] - cpuacct: Convert BUG_ON() to WARN_ON_ONCE() (Phil Auld) [2062841] - cputime, cpuacct: Include guest time in user time in cpuacct.stat (Phil Auld) [2062841] - sched/fair: Document the slow path and fast path in select_task_rq_fair (Phil Auld) [2062841] - drm/i915/ehl: Remove require_force_probe protection (Michel Dänzer) [2048674] - net/sched: fix initialization order when updating chain 0 head (Marcelo Ricardo Leitner) [2044711] - smp: Process pending softirqs in flush_smp_call_function_from_idle() (Waiman Long) [2066087] - irq_work: Optimize irq_work_single() (Waiman Long) [2066087] - irq_work: Cleanup (Waiman Long) [2066087] - smp, irq_work: Continue smp_call_function*() and irq_work*() integration (Waiman Long) [2066087] - irq_work: Define irq_work_single() on !CONFIG_IRQ_WORK too (Waiman Long) [2066087] - sched/headers: Split out open-coded prototypes into kernel/sched/smp.h (Waiman Long) [2066087] - sched: Replace rq::wake_list (Waiman Long) [2066087] - sched: Add rq::ttwu_pending (Waiman Long) [2066087] - irq_work, smp: Allow irq_work on call_single_queue (Waiman Long) [2066087] - smp: Optimize send_call_function_single_ipi() (Waiman Long) [2066087] - smp: Move irq_work_run() out of flush_smp_call_function_queue() (Waiman Long) [2066087] - smp: Optimize flush_smp_call_function_queue() (Waiman Long) [2066087] - sched: Fix smp_call_function_single_async() usage for ILB (Waiman Long) [2066087] - sched: Make scheduler_ipi inline (Waiman Long) [2066087] - sched: Clean up scheduler_ipi() (Waiman Long) [2066087] - sched/core: Remove rq.hrtick_csd_pending (Waiman Long) [2066087] - sched/fair: Clean up comment in nohz_idle_balance() (Waiman Long) [2066087] - context_tracking: Rename context_tracking_is_enabled() => context_tracking_enabled() (Waiman Long) [2066087] - context_tracking: Remove context_tracking_active() (Waiman Long) [2066087] - redhat: configs: Disable CONFIG_MPLS for s390x/zfcpdump (Guillaume Nault) [2051659] - KVM: PPC: Book3S HV: Add infrastructure to support 2nd DAWR (Laurent Vivier) [2059318] - KVM: PPC: Book3S HV: Rename current DAWR macros and variables (Laurent Vivier) [2059318] - uapi/linux/stddef.h: Add include guards (Michel Dänzer) [2072125] - stddef: Introduce struct_group() helper macro (Michel Dänzer) [2072125] - component: Add common helper for compare/release functions (Michel Dänzer) [2072125] - PCI/VGA: Move vgaarb to drivers/pci (Michel Dänzer) [2072125] - vgaarb: don't pass a cookie to vga_client_register (Michel Dänzer) [2072125] - vgaarb: remove the unused irq_set_state argument to vga_client_register (Michel Dänzer) [2072125] - vgaarb: provide a vga_client_unregister wrapper (Michel Dänzer) [2072125] - vgaarb: cleanup vgaarb.h (Michel Dänzer) [2072125] - vgaarb: move the kerneldoc for vga_set_legacy_decoding to vgaarb.c (Michel Dänzer) [2072125] - vgaarb: remove vga_conflicts (Michel Dänzer) [2072125] - vgaarb: remove VGA_DEFAULT_DEVICE (Michel Dänzer) [2072125] - lib/string_helpers: Consolidate string helpers implementation (Michel Dänzer) [2072125] - include/linux/string_helpers.h: add linux/string.h for strlen() (Michel Dänzer) [2072125] - kernel.h: split out container_of() and typeof_member() macros (Michel Dänzer) [2072125] - mm/vmscan: add sync_shrinkers function v3 (Michel Dänzer) [2072125] - lib: devres: Add managed arch_io_reserve_memtype_wc() (Michel Dänzer) [2072125] - lib: devres: Add managed arch_phys_wc_add() (Michel Dänzer) [2072125] - kernel/locking: Use a pointer in ww_mutex_trylock(). (Michel Dänzer) [2072125] - locking/ww-mutex: Fix uninitialized use of ret in test_aa() (Michel Dänzer) [2072125] - kernel/locking: Add context to ww_mutex_trylock() (Michel Dänzer) [2072125] - locking/lockdep: Provide lockdep_assert{,_once}() helpers (Michel Dänzer) [2072125] - mm: gup: pack has_pinned in MMF_HAS_PINNED (Chris von Recklinghausen) [2073217] - mm: gup: allow FOLL_PIN to scale in SMP (Chris von Recklinghausen) [2073217] - CI: Drop baseline runs (Veronika Kabatova)- powerpc/xive: Export XIVE IPI information for online-only processors. (Steve Best) [2038448] - netfilter: conntrack: fix reading nf_conntrack_buckets (Phil Sutter) [2053628] - netfilter: nf_tables: initialize registers in nft_do_chain() (Florian Westphal) [2067966] {CVE-2022-1016} - x86/sev-es: Use __put_user()/__get_user() for data accesses (Vitaly Kuznetsov) [2063719] - x86/sev-es: Handle string port IO to kernel memory properly (Vitaly Kuznetsov) [2063719] - x86/sev: Return an error on a returned non-zero SW_EXITINFO1[31:0] (Vitaly Kuznetsov) [2063719] - x86/sev-es: Use __copy_from_user_inatomic() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Check regs->sp is trusted before adjusting #VC IST stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Introduce ip_within_syscall_gap() helper (Vitaly Kuznetsov) [2063719] - x86/sev-es: Forward page-faults which happen during emulation (Vitaly Kuznetsov) [2063719] - x86/sev-es: Don't return NULL from sev_es_get_ghcb() (Vitaly Kuznetsov) [2063719] - x86/sev-es: Invalidate the GHCB after completing VMGEXIT (Vitaly Kuznetsov) [2063719] - x86/sev-es: Move sev_es_put_ghcb() in prep for follow on patch (Vitaly Kuznetsov) [2063719] - x86/sev: Fix stack type check in vc_switch_off_ist() (Vitaly Kuznetsov) [2063719] - x86/sev: Allow #VC exceptions on the VC2 stack (Vitaly Kuznetsov) [2063719] - x86/sev-es: Enable #VC specific entry point for real (Vitaly Kuznetsov) [2063719] - x86/cpu: Use pinning mask for CR4 bits needing to be 0 (Vitaly Kuznetsov) [2063719] - x86/asm: Move native_write_cr0/4() out of line (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR4 bits (Vitaly Kuznetsov) [2063719] - x86/asm: Pin sensitive CR0 bits (Vitaly Kuznetsov) [2063719] - powerpc/mce: Modify the real address error logging messages (Desnes A. Nunes do Rosario) [2068761] - selftests/powerpc: Add test for real address error handling (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries: Parse control memory access error (Desnes A. Nunes do Rosario) [2068761] - powerpc/pseries/mce: Fix a typo in error type assignment (Desnes A. Nunes do Rosario) [2068761] - netfilter: nf_tables: validate registers coming from userspace. (Florian Westphal) [2065357] {CVE-2022-1015} - PCI: hv: Propagate coherence from VMbus device to PCI device (Vitaly Kuznetsov) [2068429] - Drivers: hv: vmbus: Propagate VMbus coherence to each VMbus device (Vitaly Kuznetsov) [2068429] - Revert "xfs: actually bump warning counts when we send warnings" (Carlos Maiolino) [2059262] - perf/x86/intel: Add a quirk for the calculation of the number of counters on Alder Lake (Michael Petlan) [2039996] - perf stat: Support --cputype option for hybrid events (Michael Petlan) [1971941] - perf/x86/intel/uncore: Add IMC uncore support for ADL (Michael Petlan) [2042217] - tipc: fix kernel panic when enabling bearer (Xin Long) [2061233] - media: v4l: ioctl: Fix memory leak in video_usercopy (Jarod Wilson) [1954604] {CVE-2021-30002}- esp6: fix check on ipv6_skip_exthdr's return value (Sabrina Dubroca) [2054075] - scsi: iscsi: Fix nop handling during conn recovery (Chris Leech) [2069969] - scsi: iscsi: Merge suspend fields (Chris Leech) [2069969] - scsi: iscsi: Fix offload conn cleanup when iscsid restarts (Chris Leech) [2069969] - scsi: iscsi: Move iscsi_ep_disconnect (Chris Leech) [2069969] - CI: Remove deprecated option (Veronika Kabatova)- redhat: add new KUNIT tests to mod-internal.list (Nico Pache) [2065444] - kasan: test: prevent cache merging in kmem_cache_double_destroy (Nico Pache) [2065444] - kasan: test: fix compatibility with FORTIFY_SOURCE (Nico Pache) [2065444] - kasan: test: add test case for double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: add ability to detect double-kmem_cache_destroy() (Nico Pache) [2065444] - kasan: test: add globals left-out-of-bounds test (Nico Pache) [2065444] - kasan: test: silence intentional read overflow warnings (Nico Pache) [2065444] - kasan: test: bypass __alloc_size checks (Nico Pache) [2065444] - kasan: test: add memcpy test that avoids out-of-bounds write (Nico Pache) [2065444] - kasan: test: clean up ksize_uaf (Nico Pache) [2065444] - kasan: test: disable kmalloc_memmove_invalid_size for HW_TAGS (Nico Pache) [2065444] - kasan: test: only do kmalloc_uaf_memset for generic mode (Nico Pache) [2065444] - kasan: test: avoid corrupting memory via memset (Nico Pache) [2065444] - kasan: test: avoid writing invalid memory (Nico Pache) [2065444] - kasan: test: rework kmalloc_oob_right (Nico Pache) [2065444] - Documentation: kunit: remove claims that kunit is a mocking framework (Nico Pache) [2065444] - kunit: Reset suite count after running tests (Nico Pache) [2065444] - kunit: drop assumption in kunit-log-test about current suite (Nico Pache) [2065444] - string.h: Introduce memset_startat() for wiping trailing members and padding (Nico Pache) [2065444] - string.h: Introduce memset_after() for wiping trailing members/padding (Nico Pache) [2065444] - lib: Introduce CONFIG_MEMCPY_KUNIT_TEST (Nico Pache) [2065444] - kunit: fix kernel-doc warnings due to mismatched arg names (Nico Pache) [2065444] - kunit: fix reference count leak in kfree_at_end (Nico Pache) [2065444] - kunit: Print test statistics on failure (Nico Pache) [2065444] - fat: Add KUnit tests for checksums and timestamps (Nico Pache) [2065444] - kunit: add unit test for filtering suites by names (Nico Pache) [2065444] - kunit: test: Add example tests which are always skipped (Nico Pache) [2065444] - kunit: Support skipped tests (Nico Pache) [2065444] - redhat: remove TEST_LIST_SORT config definitions (Nico Pache) [2065444] - lib/test: convert test_sort.c to use KUnit (Nico Pache) [2065444] - lib/test: convert lib/test_list_sort.c to use KUnit (Nico Pache) [2065444] - kunit: introduce kunit_kmalloc_array/kunit_kcalloc() helpers (Nico Pache) [2065444] - kunit: Add gnu_printf specifiers (Nico Pache) [2065444] - lib/cmdline_kunit: Remove a cast which are no-longer required (Nico Pache) [2065444] - kernel/sysctl-test: Remove some casts which are no-longer required (Nico Pache) [2065444] - device property: Remove some casts in property-entry-test (Nico Pache) [2065444] - Documentation: kunit: Clean up some string casts in examples (Nico Pache) [2065444] - kunit: Assign strings to 'const char*' in STREQ assertions (Nico Pache) [2065444] - kunit: Do not typecheck binary assertions (Nico Pache) [2065444] - Documentation: kunit: document support for QEMU in kunit_tool (Nico Pache) [2065444] - kunit: Add 'kunit_shutdown' option (Nico Pache) [2065444] - Documentation: kunit: Update kunit_tool page (Nico Pache) [2065444] - Documentation: kunit: add tips for running KUnit (Nico Pache) [2065444] - slub: remove resiliency_test() function (Nico Pache) [2065444] - mm/slub, kunit: add a KUnit test for SLUB debugging functionality (Nico Pache) [2065444] - kunit: make test->lock irq safe (Nico Pache) [2065444] - docs: dev-tools: kunit: avoid using ReST :doc:`foo` markup (Nico Pache) [2065444] - docs: dev-tools: kunit: don't use a table for docs name (Nico Pache) [2065444] - kunit: make KUNIT_EXPECT_STREQ() quote values, don't print literals (Nico Pache) [2065444] - kunit: Match parenthesis alignment to improve code readability (Nico Pache) [2065444] - openvswitch: always update flow key after nat (Aaron Conole) [2066885] - md: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Nigel Croxon) [2032272] - net: fix a memleak when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: do not keep the dst cache when uncloning an skb dst and its metadata (Hangbin Liu) [2068355] - net: phy: at803x: move page selection fix to config_init (Petr Oros) [2021822] - net: phylink: rejig SFP interface selection in ksettings_set() (Petr Oros) [2021822] - ptp: dp83640: don't define PAGE0 (Petr Oros) [2021822] - net: phylink: Update SFP selected interface on advertising changes (Petr Oros) [2021822] - net: phy: marvell10g: fix broken PHY interrupts for anyone after us in the driver probe list (Petr Oros) [2021822] - net: phy: marvell: Add WAKE_PHY support to WOL event (Petr Oros) [2021822] - net: phy: micrel: Fix link detection on ksz87xx switch" (Petr Oros) [2021822] - net: phy: micrel: Fix detection of ksz87xx switch (Petr Oros) [2021822] - net: phy: broadcom: re-add check for PHY_BRCM_DIS_TXCRXC_NOENRGY on the BCM54811 PHY (Petr Oros) [2021822] - net: phy: at803x: simplify custom phy id matching (Petr Oros) [2021822] - net: phy: intel-xway: Add RGMII internal delay configuration (Petr Oros) [2021822] - net: phylink: cleanup ksettings_set (Petr Oros) [2021822] - net: phylink: add phy change pause mode debug (Petr Oros) [2021822] - net: phy: add API to read 802.3-c45 IDs (Petr Oros) [2021822] - net: phy: Fix data type in DP83822 dp8382x_disable_wol() (Petr Oros) [2021822] - net: phy: marvell10g: enable WoL for 88X3310 and 88E2110 (Petr Oros) [2021822] - net: phy: marvell10g: fix differentiation of 88X3310 from 88X3340 (Petr Oros) [2021822] - net: phy: replace if-else statements with switch (Petr Oros) [2021822] - net: phy: remove unnecessary line continuation (Petr Oros) [2021822] - net: phy: print the function name by __func__ instead of an fixed string (Petr Oros) [2021822] - net: phy: fix formatting issues with braces (Petr Oros) [2021822] - net: phy: fix space alignment issues (Petr Oros) [2021822] - net: phy: delete repeated words of comments (Petr Oros) [2021822] - net: phy: correct format of block comments (Petr Oros) [2021822] - net: phy: change format of some declarations (Petr Oros) [2021822] - net: phy: micrel: remove redundant assignment to pointer of_node (Petr Oros) [2021822] - net: phy: dp83867: perform soft reset and retain established link (Petr Oros) [2021822] - net: phy: do not print dump stack if device was removed (Petr Oros) [2021822] - net: phy: probe for C45 PHYs that return PHY ID of zero in C22 space (Petr Oros) [2021822] - net: phy: marvell: use phy_modify_changed() for marvell_set_polarity() (Petr Oros) [2021822] - net: phy: Fix inconsistent indenting (Petr Oros) [2021822] - net: mdiobus: get rid of a BUG_ON() (Petr Oros) [2021822] - net: phy: marvell: enable downshift by default (Petr Oros) [2021822] - net: phy: marvell: add downshift support for M88E1240 (Petr Oros) [2021822] - net: phy: marvell: fix m88e1111_set_downshift (Petr Oros) [2021822] - net: phy: marvell: fix m88e1011_set_downshift (Petr Oros) [2021822] - net: phy: marvell: don't use empty switch default case (Petr Oros) [2021822] - net: phy: intel-xway: enable integrated led functions (Petr Oros) [2021822] - net: phy: at803x: fix probe error if copper page is selected (Petr Oros) [2021822] - net: phy: marvell: add support for Amethyst internal PHY (Petr Oros) [2021822] - net: dsa: mv88e6xxx: simulate Amethyst PHY model number (Petr Oros) [2021822] - net: phy: marvell: use assignment by bitwise AND operator (Petr Oros) [2021822] - net: phy: marvell: fix HWMON enable register for 6390 (Petr Oros) [2021822] - net: phy: marvell: refactor HWMON OOP style (Petr Oros) [2021822] - net: phy: at803x: select correct page on config init (Petr Oros) [2021822] - net: phy: marvell: fix detection of PHY on Topaz switches (Petr Oros) [2021822] - net: phy: marvell10g: change module description (Petr Oros) [2021822] - net: phy: marvell10g: differentiate 88E2110 vs 88E2111 (Petr Oros) [2021822] - net: phy: add constants for 2.5G and 5G speed in PCS speed register (Petr Oros) [2021822] - net: phy: marvell10g: fix driver name for mv88e2110 (Petr Oros) [2021822] - net: phy: marvell10g: add separate structure for 88X3340 (Petr Oros) [2021822] - net: phy: marvell10g: support other MACTYPEs (Petr Oros) [2021822] - net: phy: marvell10g: store temperature read method in chip strucutre (Petr Oros) [2021822] - net: phy: marvell10g: check for correct supported interface mode (Petr Oros) [2021822] - net: phy: marvell10g: support all rate matching modes (Petr Oros) [2021822] - net: phy: marvell10g: add MACTYPE definitions for 88E21xx (Petr Oros) [2021822] - net: phy: marvell10g: add all MACTYPE definitions for 88X33x0 (Petr Oros) [2021822] - net: phy: marvell10g: indicate 88X33x0 only port control registers (Petr Oros) [2021822] - net: phy: marvell10g: allow 5gbase-r and usxgmii (Petr Oros) [2021822] - net: phy: marvell10g: fix typo (Petr Oros) [2021822] - net: phy: marvell10g: rename register (Petr Oros) [2021822] - net: fec: use mac-managed PHY PM (Petr Oros) [2021822] - net: phy: broadcom: Add statistics for all Gigabit PHYs (Petr Oros) [2021822] - net: phy: broadcom: Only advertise EEE for supported modes (Petr Oros) [2021822] - net: phy: remove repeated word (Petr Oros) [2021822] - net: phy: Correct function name mdiobus_register_board_info() in comment (Petr Oros) [2021822] - net: phy: lan87xx: fix access to wrong register of LAN87xx (Petr Oros) [2021822] - net: phy: at803x: remove at803x_aneg_done() (Petr Oros) [2021822] - net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M (Petr Oros) [2021822] - docs: networking: phy: Improve placement of parenthesis (Petr Oros) [2021822] - net: phy: broadcom: Add power down exit reset state delay (Petr Oros) [2021822] - net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused (Petr Oros) [2021822] - net: mdio: Remove of_phy_attach() (Petr Oros) [2021822] - net: phy: broadcom: Do not modify LED configuration for SFP module PHYs (Petr Oros) [2021822] - net: phy: Add is_on_sfp_module flag and phy_on_sfp helper (Petr Oros) [2021822] - net: phy: broadcom: Set proper 1000BaseX/SGMII interface mode for BCM54616S (Petr Oros) [2021822] - net: phy: marvell: Ensure SGMII auto-negotiation is enabled for 88E1111 (Petr Oros) [2021822] - net: phylink: Add 5gbase-r support (Petr Oros) [2021822] - net: phy: Add 5GBASER interface mode (Petr Oros) [2021822] - net: phy: rename PHY_IGNORE_INTERRUPT to PHY_MAC_INTERRUPT (Petr Oros) [2021822] - net: phy: at803x: add MDIX support to AR8031/33 (Petr Oros) [2021822] - net: phy: broadcom: Allow BCM54210E to configure APD (Petr Oros) [2021822] - net: phy: broadcom: Remove unused flags (Petr Oros) [2021822] - net: phy: broadcom: Avoid forward for bcm54xx_config_clock_delay() (Petr Oros) [2021822] - net: phy: consider that suspend2ram may cut off PHY power (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72116 (Petr Oros) [2021822] - net: mdiobus: Remove WARN_ON_ONCE(in_interrupt()) (Petr Oros) [2021822] - net: Use kobj_to_dev() API (Petr Oros) [2021822] - net: phy: Fixup kernel doc (Petr Oros) [2021822] - net: phy: bcm7xxx: Add an entry for BCM72113 (Petr Oros) [2021822] - net: phy: mchp: Add support for LAN8814 QUAD PHY (Petr Oros) [2021822] - net: dp83867: Fix WoL SecureOn password (Petr Oros) [2021822] - net: phy: at803x: constify static regulator_ops (Petr Oros) [2021822] - net: phy: marvell10g: support XFI rate matching mode (Petr Oros) [2021822] - net: switch to using PHY_INTERFACE_MODE_10GBASER rather than 10GKR (Petr Oros) [2021822] - netfilter: conntrack: Add and use nf_ct_set_auto_assign_helper_warned() (Phil Sutter) [1896241] - net: do not reuse skbuff allocated from skbuff_fclone_cache in the skb cache (Ivan Vecera) [2069781] - skbuff: queue NAPI_MERGED_FREE skbs into NAPI cache instead of freeing (Ivan Vecera) [2069781] - skbuff: allow to use NAPI cache from __napi_alloc_skb() (Ivan Vecera) [2069781] - skbuff: allow to optionally use NAPI cache from __alloc_skb() (Ivan Vecera) [2069781] - skbuff: introduce {,__}napi_build_skb() which reuses NAPI cache heads (Ivan Vecera) [2069781] - skbuff: move NAPI cache declarations upper in the file (Ivan Vecera) [2069781] - skbuff: remove __kfree_skb_flush() (Ivan Vecera) [2069781] - skbuff: use __build_skb_around() in __alloc_skb() (Ivan Vecera) [2069781] - skbuff: simplify __alloc_skb() a bit (Ivan Vecera) [2069781] - skbuff: make __build_skb_around() return void (Ivan Vecera) [2069781] - skbuff: simplify kmalloc_reserve() (Ivan Vecera) [2069781] - skbuff: move __alloc_skb() next to the other skb allocation functions (Ivan Vecera) [2069781] - net: Introduce {netdev,napi}_alloc_frag_align() (Ivan Vecera) [2069781] - mm: page_frag: Introduce page_frag_alloc_align() (Ivan Vecera) [2069781] - perf tests attr: Add missing topdown metrics events (Michael Petlan) [1986275] - cifs: Return correct error code from smb2_get_enc_key (Ronnie Sahlberg) [2058369] - ipv4: avoid using shared IP generator for connected sockets (Paolo Abeni) [2062427] {CVE-2020-36516} - crypto: cryptd - Fix skcipher instance memory leak (Vladis Dronov) [2004344] - EVM: fix the evm= __setup handler return value (Bruno Meneguele) [2063900] - integrity: include keyring name for unknown key request (Bruno Meneguele) [2063900] - ima: limit secure boot feedback scope for appraise (Bruno Meneguele) [2063900] - integrity: invalid kernel parameters feedback (Bruno Meneguele) [2063900] - ima: add check for enforced appraise option (Bruno Meneguele) [2063900] - ima: Allow template selection with ima_template[_fmt]= after ima_hash= (Bruno Meneguele) [2063900] - ima: Remove ima_policy file before directory (Bruno Meneguele) [2063900] - integrity: check the return value of audit_log_start() (Bruno Meneguele) [2063900] - ima: fix deadlock when traversing "ima_default_rules". (Bruno Meneguele) [2063900] - evm: Introduce evm_revalidate_status() (Bruno Meneguele) [2063900] - evm: Refuse EVM_ALLOW_METADATA_WRITES only if an HMAC key is loaded (Bruno Meneguele) [2063900] - evm: Load EVM key in ima_load_x509() to avoid appraisal (Bruno Meneguele) [2063900] - evm: Execute evm_inode_init_security() only when an HMAC key is loaded (Bruno Meneguele) [2063900] - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum (Bruno Meneguele) [2063900] - RHEL-only: KVM: selftests: Fix AArch64 compilation (Andrew Jones) [2071997] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Andrew Jones) [2071997] - RHEL-only: KVM: selftests: Remove unused modes (Andrew Jones) [2071997]- netfilter: nf_tables_offload: incorrect flow offload action array size (Florian Westphal) [2056728] {CVE-2022-25636} - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in nft_flow_rule_create (Florian Westphal) [2056728] - KVM: SVM: Allow AVIC support on system w/ physical APIC ID > 255 (Bandan Das) [2033068] - PCI/ACPI: Fix acpi_pci_osc_control_set() kernel-doc comment (Mark Langsdorf) [2049209] - PCI/ACPI: Check for _OSC support in acpi_pci_osc_control_set() (Mark Langsdorf) [2049209] - PCI/ACPI: Move _OSC query checks to separate function (Mark Langsdorf) [2049209] - PCI/ACPI: Move supported and control calculations to separate functions (Mark Langsdorf) [2049209] - PCI/ACPI: Remove OSC_PCI_SUPPORT_MASKS and OSC_PCI_CONTROL_MASKS (Mark Langsdorf) [2049209] - kabi: Adding symbol blkdev_get_by_dev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol thaw_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - kabi: Adding symbol freeze_bdev (fs/block_dev.c) (Čestmír Kalina) [2010296] - s390/cio: make ccw_device_dma_* more robust (Thomas Huth) [2066709] - perf/x86/intel/uncore: Make uncore_discovery clean for 64 bit addresses (Michael Petlan) [2069237] - redhat: switch secureboot kernel image signing to release keys (Augusto Caringi) - ice: xsk: Stop Rx processing when ntc catches ntu (Ivan Vecera) [2069082] - ice: xsk: Fix indexing in ice_tx_xsk_pool() (Ivan Vecera) [2069082] - ice: Fix kernel crash in XDP scenario (Ivan Vecera) [2069082]- do_wait: make PIDTYPE_PID case O(1) instead of O(n) (Nico Pache) [2055973] - n_tty: wake up poll(POLLRDNORM) on receiving data (Rafael Aquini) [2033338] - powerpc/papr_scm: Implement initial support for injecting smart errors (Steve Best) [1987103] - mm: memcg: synchronize objcg lists with a dedicated spinlock (Rafael Aquini) [2064847] - kasan: fix quarantine conflicting with init_on_free (Rafael Aquini) [2064847] - mm/hwpoison: clear MF_COUNT_INCREASED before retrying get_any_page() (Rafael Aquini) [2064847] - mm/memcg: relocate mod_objcg_mlstate(), get_obj_stock() and put_obj_stock() (Rafael Aquini) [2064847] - mm: move node_reclaim_distance to fix NUMA without SMP (Rafael Aquini) [2064847] - vmalloc: choose a better start address in vm_area_register_early() (Rafael Aquini) [2064847] - mm/vmalloc: check various alignments when debugging (Rafael Aquini) [2064847] - mm/vmalloc: don't allow VM_NO_GUARD on vmap() (Rafael Aquini) [2064847] - mm, thp: bail out early in collapse_file for writeback page (Rafael Aquini) [2064847] - mm/sparse: set SECTION_NID_SHIFT to 6 (Rafael Aquini) [2064847] - mm/memory_hotplug: fix kerneldoc comment for __remove_memory (Rafael Aquini) [2064847] - mm: fix memory_failure() handling of dax-namespace metadata (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() about ZONE_DEVICE section collisions (Rafael Aquini) [2064847] - mm: teach pfn_to_online_page() to consider subsection validity (Rafael Aquini) [2064847] - mm: move pfn_to_online_page() out of line (Rafael Aquini) [2064847] - Revert "mm: use early_pfn_to_nid in page_ext_init" (Rafael Aquini) [2064847] - x86/mm: Fix kern_addr_valid() to cope with existing but not present entries (Rafael Aquini) [2064847] - powerpc/book3s64: Fix error handling in mm_iommu_do_alloc() (Rafael Aquini) [2064847] - powerpc/pkeys: remove unused pkey_allows_readwrite (Rafael Aquini) [2064847] - x86/hyperv: Output host build info as normal Windows version number (Vitaly Kuznetsov) [2060700] - powerpc/smp: Update cpu_core_map on all PowerPc systems (Diego Domingos) [2064104] - crypto: ccp - ccp_dmaengine_unregister release dma channels (Vladis Dronov) [2015374] - crypto: ccp - remove redundant ret variable (Vladis Dronov) [2015374] - crypto: ccp - Ensure psp_ret is always init'd in __sev_platform_init_locked() (Vladis Dronov) [2015374] - crypto: ccp - remove unneeded semicolon (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT_EX support (Vladis Dronov) [2015374] - crypto: ccp - Add psp_init_on_probe module parameter (Vladis Dronov) [2015374] - crypto: ccp - Refactor out sev_fw_alloc() (Vladis Dronov) [2015374] - crypto: ccp - Move SEV_INIT retry for corrupted data (Vladis Dronov) [2015374] - crypto: ccp - Add SEV_INIT rc error logging on init (Vladis Dronov) [2015374] - crypto: ccp - no need to initialise statics to 0 (Vladis Dronov) [2015374] - ccp: ccp - add support for Green Sardine (Vladis Dronov) [2015374] - crypto: ccp - fix command queuing to TEE ring buffer (Vladis Dronov) [2015374] - crypto: ccp - reduce tee command status polling interval from 5ms to 1ms (Vladis Dronov) [2015374] - crypto: ccp - provide in-kernel API to submit TEE commands (Vladis Dronov) [2015374] - crypto: ccp - add TEE support for Raven Ridge (Vladis Dronov) [2015374] - crypto: ccp - check whether PSP supports SEV or TEE before initialization (Vladis Dronov) [2015374] - ice: Allow to pass VLAN tagged packets to VF when port VLAN is configured (Ivan Vecera) [2071027] - tools headers UAPI: Sync linux/perf_event.h with the kernel sources (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix power_pmu_disable to call clear_pmi_irq_pending only if PMI is pending (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Only define power_pmu_wants_prompt_pmi() for CONFIG_PPC64 (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add data source encodings for power10 platform (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Add encodings to represent data based on newer composite PERF_MEM_LVLNUM* fields (Desnes A. Nunes do Rosario) [1992813] - perf: Add new macros for mem_hops field (Desnes A. Nunes do Rosario) [1992813] - tools headers UAPI: Add new macros for mem_hops field to perf_event.h (Desnes A. Nunes do Rosario) [1992813] - bpf: Remove config check to enable bpf support for branch records (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Update global/local variants for p_stage_cyc (Desnes A. Nunes do Rosario) [1992813] - perf sort: Include global and local variants for p_stage_cyc sort key (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'p_stage_cyc' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'ins_lat' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf sort: Fix the 'weight' sort key behavior (Desnes A. Nunes do Rosario) [1992813] - perf vendor events power10: Add metric events JSON file for power10 platform (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Add support to expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - perf powerpc: Refactor the code definition of perf reg extended mask in tools side header file (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Expose instruction and data address registers as part of extended regs (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Refactor the code definition of perf reg extended mask (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix data source encodings for L2.1 and L3.1 accesses (Desnes A. Nunes do Rosario) [1992813] - tools/perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add mem_hops field in perf_mem_data_src structure (Desnes A. Nunes do Rosario) [1992813] - perf: Add comment about current state of PERF_MEM_LVL_* namespace and remove an extra line (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix the check for SIAR value (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Drop the case of returning 0 as instruction pointer (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Use stack siar instead of mfspr (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf/hv-gpci: Fix counter value parsing (Desnes A. Nunes do Rosario) [1992813] - powerpc/perf: Fix PMU callbacks to clear pending PMI before resetting an overflown PMC (Desnes A. Nunes do Rosario) [1992813] - CI: Remove deprecated option (Veronika Kabatova)- bareudp: use ipv6_mod_enabled to check if IPv6 enabled (Hangbin Liu) [2063813] - powerpc/mm/numa: skip NUMA_NO_NODE onlining in parse_numa_properties() (Diego Domingos) [2048218] - redhat: copy rpminspect to dist-git repo (Jarod Wilson) - configs: enable CONFIG_RMI4_F3A (Benjamin Tissoires) [2067219] - Input: synaptics-rmi4 - add support for F3A (Benjamin Tissoires) [2067219] - RDMA/cma: Do not change route.addr.src_addr.ss_family (Kamal Heib) [2032074] {CVE-2021-4028} - drm/i915/adl_s: Remove require_force_probe protection (Michel Dänzer) [2025896] - drm/i915/adl_s: Update ADL-S PCI IDs (Michel Dänzer) [2025896] - drm/i915: Limit Wa_22010178259 to affected platforms (Michel Dänzer) [2025896] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Michel Dänzer) [2025896] - drm/i915/dmc: Update DMC to v2.14 on ADL-P (Michel Dänzer) [2060051] - drm/i915: Update memory bandwidth formulae (Michel Dänzer) [2060051] - drm/i915/fb: Fold modifier CCS type/tiling attribute to plane caps (Michel Dänzer) [2060051] - drm/i915/fb: Don't store bitmasks in the intel_plane_caps enum (Michel Dänzer) [2060051] - drm/i915/adl_p: Add ddc pin mapping (Michel Dänzer) [2060051] - iommu/amd: Fix I/O page table memory leak (Jerry Snitselaar) [2053210] - iommu/amd: Recover from event log overflow (Jerry Snitselaar) [2053210]- redhat: tune rpminspect w/additions from rhel9 branch (Jarod Wilson) - powerpc/pseries/ddw: Revert "Extend upper limit for huge DMA window for persistent memory" (Steve Best) [2056080] - x86/tsc: Disable clocksource watchdog for TSC on qualified platorms (Prarit Bhargava) [1971939] - x86/tsc: Add a timer to make sure TSC_adjust is always checked (Prarit Bhargava) [1971939] - x86/hpet: Use another crystalball to evaluate HPET usability (Prarit Bhargava) [1971939] - x86/tsc: Respect tsc command line paraemeter for clocksource_tsc_early (Prarit Bhargava) [1971939] - [s390] s390/pci: fix zpci_zdev_put() on reserve (Claudio Imbrenda) [2039185] - [s390] s390/pci: fix use after free of zpci_dev (Claudio Imbrenda) [2039185] - [s390] s390/cio: make ccw_device_dma_* more robust (Claudio Imbrenda) [2039186] - [s390] s390/pci: add s390_iommu_aperture kernel parameter (Claudio Imbrenda) [2039181] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Paul Lai) [1918929] - kvm: selftests: sync uapi/linux/kvm.h with Linux header (Paul Lai) [1918929] - kvm: selftests: conditionally build vm_xsave_req_perm() (Paul Lai) [1918929] - x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0 (Paul Lai) [1918929] - x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0 (Paul Lai) [1918929] - KVM: x86/cpuid: Exclude unpermitted xfeatures sizes at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to __kvm_update_cpuid_runtime() (Paul Lai) [1918929] - KVM: x86/cpuid: Clear XFD for component i if the base feature is missing (Paul Lai) [1918929] - KVM: x86: Do runtime CPUID update before updating vcpu->arch.cpuid_entries (Paul Lai) [1918929] - x86/fpu: Fix inline prefix warnings (Paul Lai) [1918929] - selftest: kvm: Add amx selftest (Paul Lai) [1918929] - selftest: kvm: Move struct kvm_x86_state to header (Paul Lai) [1918929] - selftest: kvm: Reorder vcpu_load_state steps for AMX (Paul Lai) [1918929] - kvm: x86: Disable interception for IA32_XFD on demand (Paul Lai) [1918929] - x86/fpu: Provide fpu_sync_guest_vmexit_xfd_state() (Paul Lai) [1918929] - kvm: selftests: Add support for KVM_CAP_XSAVE2 (Paul Lai) [1918929] - kvm: x86: Add support for getting/setting expanded xstate buffer (Paul Lai) [1918929] - x86/fpu: Add uabi_size to guest_fpu (Paul Lai) [1918929] - kvm: x86: Add CPUID support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Add XCR0 support for Intel AMX (Paul Lai) [1918929] - kvm: x86: Disable RDMSR interception of IA32_XFD_ERR (Paul Lai) [1918929] - kvm: x86: Emulate IA32_XFD_ERR for guest (Paul Lai) [1918929] - kvm: x86: Intercept #NM for saving IA32_XFD_ERR (Paul Lai) [1918929] - x86/fpu: Prepare xfd_err in struct fpu_guest (Paul Lai) [1918929] - kvm: x86: Add emulation for IA32_XFD (Paul Lai) [1918929] - x86/fpu: Provide fpu_update_guest_xfd() for IA32_XFD emulation (Paul Lai) [1918929] - kvm: x86: Enable dynamic xfeatures at KVM_SET_CPUID2 (Paul Lai) [1918929] - x86/fpu: Provide fpu_enable_guest_xfd_features() for KVM (Paul Lai) [1918929] - x86/fpu: Add guest support to xfd_enable_feature() (Paul Lai) [1918929] - x86/fpu: Make XFD initialization in __fpstate_reset() a function argument (Paul Lai) [1918929] - kvm: x86: Exclude unpermitted xfeatures at KVM_GET_SUPPORTED_CPUID (Paul Lai) [1918929] - kvm: x86: Fix xstate_required_size() to follow XSTATE alignment rule (Paul Lai) [1918929] - x86/fpu: Prepare guest FPU for dynamically enabled FPU features (Paul Lai) [1918929] - x86/fpu: Extend fpu_xstate_prctl() with guest permissions (Paul Lai) [1918929] - kvm: selftests: move ucall declarations into ucall_common.h (Paul Lai) [1918929] - kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h (Paul Lai) [1918929] - cpuid: kvm_find_kvm_cpuid_features() should be declared 'static' (Paul Lai) [1918929] - KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES (Paul Lai) [1918929] - KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows (Paul Lai) [1918929]- scsi: mpi3mr: Fix flushing !WQ_MEM_RECLAIM events warning (Tomas Henzl) [2052278] - scsi: mpi3mr: Fix memory leaks (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix reporting of actual data transfer size (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix cmnd getting marked as in use forever (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix hibernation issue (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix printing of pending I/O count (Tomas Henzl) [2054814] - scsi: mpi3mr: Fix deadlock while canceling the fw event (Tomas Henzl) [2054814] - scsi: mpi3mr: Fixes around reply request queues (Tomas Henzl) [2054814] - scsi: mpi3mr: Enhanced Task Management Support Reply handling (Tomas Henzl) [2054814] - scsi: mpi3mr: Use TM response codes from MPI3 headers (Tomas Henzl) [2054814] - scsi: mpi3mr: Increase internal cmnds timeout to 60s (Tomas Henzl) [2054814] - scsi: mpi3mr: Do access status validation before adding devices (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part2 (Tomas Henzl) [2054814] - scsi: mpi3mr: Update MPI3 headers - part1 (Tomas Henzl) [2054814] - scsi: mpi3mr: Don't reset IOC if cmnds flush with reset status (Tomas Henzl) [2054814] - scsi: mpi3mr: Replace spin_lock() with spin_lock_irqsave() (Tomas Henzl) [2054814] - scsi: mpi3mr: Add debug APIs based on logging_level bits (Tomas Henzl) [2054814] - scsi: mpt3sas: Remove scsi_dma_map() error messages (Tomas Henzl) [2057021] - net/mlx5: Fix wrong limitation of metadata match on ecpf (Amir Tzin) [2049094] - nfsd: fix use-after-free due to delegation race (Thiago Becker) [2053262] - dma-buf: cma_heap: Fix mutex locking section (Michel Dänzer) [2044440] - drm/amdkfd: Check for null pointer after calling kmemdup (Michel Dänzer) [2044440] - drm/atomic: Check new_crtc_state->active to determine if CRTC needs disable in self refresh mode (Michel Dänzer) [2044440] - drm/amd: avoid suspend on dGPUs w/ s2idle support when runtime PM enabled (Michel Dänzer) [2044440] - drm/i915/overlay: Prevent divide by zero bugs in scaling (Michel Dänzer) [2044440] - dma-buf: heaps: Fix potential spectre v1 gadget (Michel Dänzer) [2044440] - drm/amd/display: Force link_rate as LINK_RATE_RBR2 for 2018 15" Apple Retina panels (Michel Dänzer) [2044440] - drm/amd/display: watermark latencies is not enough on DCN31 (Michel Dänzer) [2044440] - drm/amd/pm: correct the MGpuFanBoost support for Beige Goby (Michel Dänzer) [2044440] - drm/i915/adlp: Fix TypeC PHY-ready status readout (Michel Dänzer) [2044440] - drm/nouveau: fix off by one in BIOS boundary checking (Michel Dänzer) [2044440] - drm/i915: Disable DSB usage for now (Michel Dänzer) [2044440] - Revert "drm/ast: Support 1600x900 with 108MHz PCLK" (Michel Dänzer) [2044440] - drm/amd/display: Fix FP start/end for dcn30_internal_validate_bw. (Michel Dänzer) [2044440] - drm/atomic: Add the crtc to affected crtc only if uapi.enable = true (Michel Dänzer) [2044440] - drm/amdgpu: Use correct VIEWPORT_DIMENSION for DCN2 (Michel Dänzer) [2044440] - drm/amd/display: reset dcn31 SMU mailbox on failures (Michel Dänzer) [2044440] - drm/vmwgfx: Remove explicit transparent hugepages support (Michel Dänzer) [2044440] - drm/radeon: fix error handling in radeon_driver_open_kms (Michel Dänzer) [2044440] - drm/i915/display/ehl: Update voltage swing table (Michel Dänzer) [2044440] - drm/nouveau/kms/nv04: use vzalloc for nv04_display (Michel Dänzer) [2044440] - drm/amd/display: Fix the uninitialized variable in enable_stream_features() (Michel Dänzer) [2044440] - amdgpu/pm: Make sysfs pm attributes as read-only for VFs (Michel Dänzer) [2044440] - drm/amdgpu: fixup bad vram size on gmc v8 (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix gmc bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix psp tmr bo pin count leak in SRIOV (Michel Dänzer) [2044440] - drm/amdkfd: Fix error handling in svm_range_add (Michel Dänzer) [2044440] - drm/vmwgfx: Introduce a new placement for MOB page tables (Michel Dänzer) [2044440] - drm/vmwgfx: Release ttm memory if probe fails (Michel Dänzer) [2044440] - drm/amd/display: add else to avoid double destroy clk_mgr (Michel Dänzer) [2044440] - drm/amdgpu/display: set vblank_disable_immediate for DC (Michel Dänzer) [2044440] - drm/amd/display: check top_pipe_to_program pointer (Michel Dänzer) [2044440] - drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L (Michel Dänzer) [2044440] - drm/amd/display: Fix out of bounds access on DNC31 stream encoder regs (Michel Dänzer) [2044440] - drm/amd/display: Fix bug in debugfs crc_win_update entry (Michel Dänzer) [2044440] - drm/radeon/radeon_kms: Fix a NULL pointer dereference in radeon_driver_open_kms() (Michel Dänzer) [2044440] - drm/amdgpu: Fix a NULL pointer dereference in amdgpu_connector_lcd_native_mode() (Michel Dänzer) [2044440] - drm/vmwgfx: Fail to initialize on broken configs (Michel Dänzer) [2044440] - drm/vmwgfx: Remove the deprecated lower mem limit (Michel Dänzer) [2044440] - drm/vboxvideo: fix a NULL vs IS_ERR() check (Michel Dänzer) [2044440] - drm: fix null-ptr-deref in drm_dev_init_release() (Michel Dänzer) [2044440] - drm/ttm: Put BO in its memory manager's lru list (Michel Dänzer) [2044440] - dma_fence_array: Fix PENDING_ERROR leak in dma_fence_array_signaled() (Michel Dänzer) [2044440] - drm/amd/display: explicitly set is_dsc_supported to false before use (Michel Dänzer) [2044440] - drm/i915: Avoid bitwise vs logical OR warning in snb_wm_latency_quirk() (Michel Dänzer) [2044440] - drm/amd/pm: keep the BACO feature enabled for suspend (Michel Dänzer) [2044440] - Revert "drm/amdgpu: stop scheduler when calling hw_fini (v2)" (Michel Dänzer) [2044440] - drm/amd/display: Added power down for DCN10 (Michel Dänzer) [2044440] - drm/amd/display: fix B0 TMDS deepcolor no dislay issue (Michel Dänzer) [2044440] - drm/amdgpu: put SMU into proper state on runpm suspending for BOCO capable platform (Michel Dänzer) [2044440] - drm/amd/pm: skip setting gfx cgpg in the s0ix suspend-resume (Michel Dänzer) [2044440] - drm/amd/pm: Fix xgmi link control on aldebaran (Michel Dänzer) [2044440] - drm/amdgpu: fix dropped backing store handling in amdgpu_dma_buf_move_notify (Michel Dänzer) [2044440] - drm/amd/display: Changed pipe split policy to allow for multi-display pipe split (Michel Dänzer) [2044440] - drm/amdgpu: add support for IP discovery gc_info table v2 (Michel Dänzer) [2044440] - drm/amdgpu: When the VCN(1.0) block is suspended, powergating is explicitly enabled (Michel Dänzer) [2044440] - drm/nouveau: wait for the exclusive fence after the shared ones v2 (Michel Dänzer) [2044440] - drm/nouveau: always wait for the exclusive fence (Michel Dänzer) [2044440] - drm/amd/display: Set optimize_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/amd/display: Send s0i2_rdy in stream_count == 0 optimization (Michel Dänzer) [2044440] - drm/amd/pm: fix reading SMU FW version from amdgpu_firmware_info on YC (Michel Dänzer) [2044440] - drm/amdgpu: don't override default ECO_BITs setting (Michel Dänzer) [2044440] - drm/amdgpu: correct register access for RLC_JUMP_TABLE_RESTORE (Michel Dänzer) [2044440] - drm/amd/pm: fix a potential gpu_metrics_table memory leak (Michel Dänzer) [2044440] - drm/amd/display: Set exit_optimized_pwr_state for DCN31 (Michel Dänzer) [2044440] - drm/i915/display: Fix an unsigned subtraction which can never be negative. (Michel Dänzer) [2044440] - drm/ast: potential dereference of null pointer (Michel Dänzer) [2044440] - drm: simpledrm: fix wrong unit with pixel clock (Michel Dänzer) [2044440] - Revert "drm/fb-helper: improve DRM fbdev emulation device names" (Michel Dänzer) [2044440] - drm/i915/hdmi: Turn DP++ TMDS output buffers back on in encoder->shutdown() (Michel Dänzer) [2044440] - drm/i915/hdmi: convert intel_hdmi_to_dev to intel_hdmi_to_i915 (Michel Dänzer) [2044440] - drm/amdkfd: process_info lock not needed for svm (Michel Dänzer) [2044440] - drm/amd/display: add connector type check for CRC source set (Michel Dänzer) [2044440] - drm/amdkfd: fix double free mem structure (Michel Dänzer) [2044440] - drm/amd/display: Fix for the no Audio bug with Tiled Displays (Michel Dänzer) [2044440] - drm/amdgpu: check atomic flag to differeniate with legacy path (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after S3/S4/reset (Michel Dänzer) [2044440] - drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence. (Michel Dänzer) [2044440] - drm/i915/dp: Perform 30ms delay after source OUI write (Michel Dänzer) [2044440] - drm/amd/display: Allow DSC on supported MST branch devices (Michel Dänzer) [2044440] - dma-buf: system_heap: Use 'for_each_sgtable_sg' in pages free flow (Michel Dänzer) [2044440] - drm/amd/amdgpu: fix potential memleak (Michel Dänzer) [2044440] - drm/amd/amdkfd: Fix kernel panic when reset failed and been triggered again (Michel Dänzer) [2044440] - drm/amd/pm: Remove artificial freq level on Navi1x (Michel Dänzer) [2044440] - drm/amdgpu/gfx9: switch to golden tsc registers for renoir+ (Michel Dänzer) [2044440] - drm/amd/display: Set plane update flags for all planes in reset (Michel Dänzer) [2044440] - drm/amd/display: Fix DPIA outbox timeout after GPU reset (Michel Dänzer) [2044440] - drm/aspeed: Fix vga_pw sysfs output (Michel Dänzer) [2044440] - drm/nouveau/acr: fix a couple NULL vs IS_ERR() checks (Michel Dänzer) [2044440] - drm/amd/display: Fix OLED brightness control on eDP (Michel Dänzer) [2044440] - drm/amdgpu: IH process reset count when restart (Michel Dänzer) [2044440] - drm/amd/pm: avoid duplicate powergate/ungate setting (Michel Dänzer) [2044440] - drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga and dvi connectors (Michel Dänzer) [2044440] - drm/i915: Fix type1 DVI DP dual mode adapter heuristic for modern platforms (Michel Dänzer) [2044440] - drm/i915/dp: Ensure max link params are always valid (Michel Dänzer) [2044440] - drm/i915/dp: Ensure sink rate values are always valid (Michel Dänzer) [2044440] - drm/prime: Fix use after free in mmap with drm_gem_ttm_mmap (Michel Dänzer) [2044440] - drm/udl: fix control-message timeout (Michel Dänzer) [2044440] - drm/amd/display: Limit max DSC target bpp for specific monitors (Michel Dänzer) [2044440] - drm/amd/display: Update swizzle mode enums (Michel Dänzer) [2044440] - drm/cma-helper: Release non-coherent memory with dma_free_noncoherent() (Michel Dänzer) [2044440] - Revert "drm/i915/tgl/dsi: Gate the ddi clocks after pll mapping" (Michel Dänzer) [2044440] - drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame (Michel Dänzer) [2044440] - x86/speculation: Check CPU capability before applying IBRS spectre v2 mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about eIBRS + LFENCE + Unprivileged eBPF + SMT (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Warn about Spectre v2 LFENCE mitigation (Waiman Long) [2062156 2062166] {CVE-2022-0001 CVE-2022-0002 CVE-2021-26401} - x86/speculation: Update link to AMD speculation whitepaper (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Use generic retpoline by default on AMD (Waiman Long) [2062166] {CVE-2021-26401} - x86/speculation: Include unprivileged eBPF status in Spectre v2 mitigation reporting (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - Documentation/hw-vuln: Update spectre doc (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Add eIBRS + Retpoline options (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86/speculation: Rename RETPOLINE_AMD to RETPOLINE_LFENCE (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86,bugs: Unconditionally allow spectre_v2=retpoline,amd (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - x86: deduplicate the spectre_v2_user documentation (Waiman Long) [2062156] {CVE-2022-0001 CVE-2022-0002} - fuse: fix pipe buffer lifetime for direct_io (Miklos Szeredi) [2064863] {CVE-2022-1011} - ice: Do not enable VLAN pruning when spoofchk is enabled (Ivan Vecera) [2062343] - ice: don't allow to run ice_send_event_to_aux() in atomic ctx (Ivan Vecera) [2062343] - ice: fix 'scheduling while atomic' on aux critical err interrupt (Ivan Vecera) [2062343] - ice: Fix MAC address setting (Ivan Vecera) [2062343] - ice: Clear default forwarding VSI during release (Ivan Vecera) [2062343] - ice: Fix broken IFF_ALLMULTI handling (Ivan Vecera) [2062343] - iavf: Fix hang during reboot/shutdown (Ivan Vecera) [2062343] - iavf: Fix double free in iavf_reset_task (Ivan Vecera) [2062343] - ice: destroy flow director filter mutex after releasing VSIs (Ivan Vecera) [2062343] - ice: fix NULL pointer dereference in ice_update_vsi_tx_ring_stats() (Ivan Vecera) [2062343] - iavf: Fix adopting new combined setting (Ivan Vecera) [2062343] - iavf: Fix handling of vlan strip virtual channel messages (Ivan Vecera) [2062343] - iavf: Fix __IAVF_RESETTING state usage (Ivan Vecera) [2062343] - iavf: Fix missing check for running netdev (Ivan Vecera) [2062343] - iavf: Fix deadlock in iavf_reset_task (Ivan Vecera) [2062343] - iavf: Fix race in init state (Ivan Vecera) [2062343] - iavf: Fix locking for VIRTCHNL_OP_GET_OFFLOAD_VLAN_V2_CAPS (Ivan Vecera) [2062343] - iavf: Fix init state closure on remove (Ivan Vecera) [2062343] - iavf: Add waiting so the port is initialized in remove (Ivan Vecera) [2062343] - iavf: Rework mutexes for better synchronisation (Ivan Vecera) [2062343] - iavf: remove an unneeded variable (Ivan Vecera) [2062343] - iavf: Fix limit of total number of queues to active queues of VF (Ivan Vecera) [2062343] - iavf: Restrict maximum VLAN filters for VIRTCHNL_VF_OFFLOAD_VLAN_V2 (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 offload enable/disable (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 hotpath (Ivan Vecera) [2062343] - iavf: Add support VIRTCHNL_VF_OFFLOAD_VLAN_V2 during netdev config (Ivan Vecera) [2062343] - iavf: Add support for VIRTCHNL_VF_OFFLOAD_VLAN_V2 negotiation (Ivan Vecera) [2062343] - virtchnl: Add support for new VLAN capabilities (Ivan Vecera) [2062343] - virtchnl: Use the BIT() macro for capability/offload flags (Ivan Vecera) [2062343] - virtchnl: Remove unused VIRTCHNL_VF_OFFLOAD_RSVD define (Ivan Vecera) [2062343] - virtchnl: Add missing padding to virtchnl_proto_hdrs (Ivan Vecera) [2062343] - ice: Fix race condition during interface enslave (Ivan Vecera) [2062343] - ice: Fix curr_link_speed advertised speed (Ivan Vecera) [2062343] - ice: Don't use GFP_KERNEL in atomic context (Ivan Vecera) [2062343] - ice: Fix error with handling of bonding MTU (Ivan Vecera) [2062343] - ice: stop disabling VFs due to PF error responses (Ivan Vecera) [2062343] - ice: initialize local variable 'tlv' (Ivan Vecera) [2062343] - ice: check the return of ice_ptp_gettimex64 (Ivan Vecera) [2062343] - ice: fix concurrent reset and removal of VFs (Ivan Vecera) [2062343] - ice: fix setting l4 port flag when adding filter (Ivan Vecera) [2062343] - ice: Match on all profiles in slow-path (Ivan Vecera) [2062343] - ice: enable parsing IPSEC SPI headers for RSS (Ivan Vecera) [2062343] - ice: Avoid RTNL lock when re-creating auxiliary device (Ivan Vecera) [2062343] - ice: Fix KASAN error in LAG NETDEV_UNREGISTER handler (Ivan Vecera) [2062343] - ice: fix IPIP and SIT TSO offload (Ivan Vecera) [2062343] - ice: fix an error code in ice_cfg_phy_fec() (Ivan Vecera) [2062343] - ice: Use bitmap_free() to free bitmap (Ivan Vecera) [2062343] - ice: Optimize a few bitmap operations (Ivan Vecera) [2062343] - ice: Slightly simply ice_find_free_recp_res_idx (Ivan Vecera) [2062343] - ice: improve switchdev's slow-path (Ivan Vecera) [2062343] - ice: replay advanced rules after reset (Ivan Vecera) [2062343] - ice: Add flow director support for channel mode (Ivan Vecera) [2062343] - ice: trivial: fix odd indenting (Ivan Vecera) [2062343] - ice: support crosstimestamping on E822 devices if supported (Ivan Vecera) [2062343] - ice: exit bypass mode once hardware finishes timestamp calibration (Ivan Vecera) [2062343] - ice: ensure the hardware Clock Generation Unit is configured (Ivan Vecera) [2062343] - ice: implement basic E822 PTP support (Ivan Vecera) [2062343] - ice: convert clk_freq capability into time_ref (Ivan Vecera) [2062343] - ice: introduce ice_ptp_init_phc function (Ivan Vecera) [2062343] - ice: use 'int err' instead of 'int status' in ice_ptp_hw.c (Ivan Vecera) [2062343] - ice: PTP: move setting of tstamp_config (Ivan Vecera) [2062343] - ice: introduce ice_base_incval function (Ivan Vecera) [2062343] - ice: xsk: fix cleaned_count setting (Ivan Vecera) [2062343] - ice: xsk: allow empty Rx descriptors on XSK ZC data path (Ivan Vecera) [2062343] - ice: xsk: allocate separate memory for XDP SW ring (Ivan Vecera) [2062343] - ice: xsk: return xsk buffers back to pool when cleaning the ring (Ivan Vecera) [2062343] - ice: use modern kernel API for kick (Ivan Vecera) [2062343] - ice: tighter control over VSI_DOWN state (Ivan Vecera) [2062343] - ice: use prefetch methods (Ivan Vecera) [2062343] - ice: update to newer kernel API (Ivan Vecera) [2062343] - ice: support immediate firmware activation via devlink reload (Ivan Vecera) [2062343] - ice: reduce time to read Option ROM CIVD data (Ivan Vecera) [2062343] - ice: move ice_devlink_flash_update and merge with ice_flash_pldm_image (Ivan Vecera) [2062343] - ice: move and rename ice_check_for_pending_update (Ivan Vecera) [2062343] - ice: devlink: add shadow-ram region to snapshot Shadow RAM (Ivan Vecera) [2062343] - ice: Remove unused ICE_FLOW_SEG_HDRS_L2_MASK (Ivan Vecera) [2062343] - ice: Remove unnecessary casts (Ivan Vecera) [2062343] - ice: Propagate error codes (Ivan Vecera) [2062343] - ice: Remove excess error variables (Ivan Vecera) [2062343] - ice: Cleanup after ice_status removal (Ivan Vecera) [2062343] - ice: Remove enum ice_status (Ivan Vecera) [2062343] - ice: Use int for ice_status (Ivan Vecera) [2062343] - ice: Remove string printing for ice_status (Ivan Vecera) [2062343] - ice: Refactor status flow for DDP load (Ivan Vecera) [2062343] - ice: Refactor promiscuous functions (Ivan Vecera) [2062343] - ice: refactor PTYPE validating (Ivan Vecera) [2062343] - ice: Add package PTYPE enable information (Ivan Vecera) [2062343] - ice: safer stats processing (Ivan Vecera) [2062343] - ice: fix adding different tunnels (Ivan Vecera) [2062343] - ice: fix choosing UDP header type (Ivan Vecera) [2062343] - ice: ignore dropped packets during init (Ivan Vecera) [2062343] - ice: rearm other interrupt cause register after enabling VFs (Ivan Vecera) [2062343] - net/ice: Remove unused enum (Ivan Vecera) [2062343] - net/ice: Fix boolean assignment (Ivan Vecera) [2062343] - net/ice: Add support for enable_iwarp and enable_roce devlink param (Ivan Vecera) [2062343] - ice: avoid bpf_prog refcount underflow (Ivan Vecera) [2062343] - ice: fix vsi->txq_map sizing (Ivan Vecera) [2062343] - ice: Hide bus-info in ethtool for PRs in switchdev mode (Ivan Vecera) [2062343] - ice: Clear synchronized addrs when adding VFs in switchdev mode (Ivan Vecera) [2062343] - ice: fix error return code in ice_get_recp_frm_fw() (Ivan Vecera) [2062343] - ice: Fix clang -Wimplicit-fallthrough in ice_pull_qvec_from_rc() (Ivan Vecera) [2062343] - ice: Add support to print error on PHY FW load failure (Ivan Vecera) [2062343] - ice: Add support for changing MTU on PR in switchdev mode (Ivan Vecera) [2062343] - ice: send correct vc status in switchdev (Ivan Vecera) [2062343] - ice: support for GRE in eswitch (Ivan Vecera) [2062343] - ice: low level support for tunnels (Ivan Vecera) [2062343] - ice: VXLAN and Geneve TC support (Ivan Vecera) [2062343] - ice: support for indirect notification (Ivan Vecera) [2062343] - ice: Add tc-flower filter support for channel (Ivan Vecera) [2062343] - ice: enable ndo_setup_tc support for mqprio_qdisc (Ivan Vecera) [2062343] - ice: Add infrastructure for mqprio support via ndo_setup_tc (Ivan Vecera) [2062343] - ice: fix an error code in ice_ena_vfs() (Ivan Vecera) [2062343] - ice: use devm_kcalloc() instead of devm_kzalloc() (Ivan Vecera) [2062343] - ice: Make use of the helper function devm_add_action_or_reset() (Ivan Vecera) [2062343] - ice: Refactor PR ethtool ops (Ivan Vecera) [2062343] - ice: Forbid trusted VFs in switchdev mode (Ivan Vecera) [2062343] - ice: Manage act flags for switchdev offloads (Ivan Vecera) [2062343] - ice: introduce XDP_TX fallback path (Ivan Vecera) [2062343] - ice: optimize XDP_TX workloads (Ivan Vecera) [2062343] - ice: propagate xdp_ring onto rx_ring (Ivan Vecera) [2062343] - ice: do not create xdp_frame on XDP_TX (Ivan Vecera) [2062343] - ice: unify xdp_rings accesses (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PR (Ivan Vecera) [2062343] - ice: ndo_setup_tc implementation for PF (Ivan Vecera) [2062343] - ice: Allow changing lan_en and lb_en on all kinds of filters (Ivan Vecera) [2062343] - ice: cleanup rules info (Ivan Vecera) [2062343] - ice: allow deleting advanced rules (Ivan Vecera) [2062343] - ice: allow adding advanced rules (Ivan Vecera) [2062343] - ice: create advanced switch recipe (Ivan Vecera) [2062343] - ice: manage profiles and field vectors (Ivan Vecera) [2062343] - ice: implement low level recipes functions (Ivan Vecera) [2062343] - ice: add port representor ethtool ops and stats (Ivan Vecera) [2062343] - ice: switchdev slow path (Ivan Vecera) [2062343] - ice: rebuild switchdev when resetting all VFs (Ivan Vecera) [2062343] - ice: enable/disable switchdev when managing VFs (Ivan Vecera) [2062343] - ice: introduce new type of VSI for switchdev (Ivan Vecera) [2062343] - ice: set and release switchdev environment (Ivan Vecera) [2062343] - net: export metadata_dst_free() (Ivan Vecera) [2062343] - ice: allow changing lan_en and lb_en on dflt rules (Ivan Vecera) [2062343] - ice: manage VSI antispoof and destination override (Ivan Vecera) [2062343] - ice: allow process VF opcodes in different ways (Ivan Vecera) [2062343] - ice: introduce VF port representor (Ivan Vecera) [2062343] - ice: Move devlink port to PF/VF struct (Ivan Vecera) [2062343] - ice: support basic E-Switch mode control (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Ivan Vecera) [2062343] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Ivan Vecera) [2062343] - ice: Use xdp_buf instead of rx_buf for xsk zero-copy (Ivan Vecera) [2062343] - ice: fix FDIR init missing when reset VF (Ivan Vecera) [2062343] - intel: Remove rcu_read_lock() around XDP program invocation (Ivan Vecera) [2062343] - intel: Update drivers to use ethtool_sprintf (Ivan Vecera) [2062343] - ice: fix conversion to new udp_tunnel infrastructure (Ivan Vecera) [2062343] - intel-ethernet: clean up W=1 warnings in kdoc (Ivan Vecera) [2062343] - PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Ivan Vecera) [2062343] - treewide: Use sizeof_field() macro (Ivan Vecera) [2062343] - devlink: Add 'enable_iwarp' generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_vnet" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_rdma" generic device param (Ivan Vecera) [2062343] - devlink: Add new "enable_eth" generic device param (Ivan Vecera) [2062343] - gfs2: dequeue iopen holder in gfs2_inode_lookup error (Bob Peterson) [2061665] - redhat/configs: Increase CONFIG_LOCKDEP_CHAINS_BITS from 16 to 17 (Waiman Long) [2057339] - redhat: spec: trigger dracut when modules are installed separately (Jan Stancek) [2060237 2016948]- makefile: Add dist-* targets (Prarit Bhargava) - Fonts: Replace discarded const qualifier (Nico Pache) [1904374] - Fonts: Support FONT_EXTRA_WORDS macros for built-in fonts (Nico Pache) [1904374] - fbdev, newport_con: Move FONT_EXTRA_WORDS macros into linux/font.h (Nico Pache) [1904374] - x86/cpu: Drop spurious underscore from RAPTOR_LAKE #define (Prarit Bhargava) [2040021] - x86/cpu: Add Raptor Lake to Intel family (Prarit Bhargava) [2040021] - powerpc/64: Move paca allocation later in boot (Desnes A. Nunes do Rosario) [2016335] - powerpc/prom: fix early DEBUG messages (Desnes A. Nunes do Rosario) [2016335] - powerpc: Set crashkernel offset to mid of RMA region (Desnes A. Nunes do Rosario) [2016335] - KVM: x86/mmu: Don't advance iterator after restart due to yielding (Nico Pache) [2058907] - igb: refactor XDP registration (Corinna Vinschen) [2040171] - igc: avoid kernel warning when changing RX ring parameters (Corinna Vinschen) [2040171] - scsi: qedi: Fix cmd_cleanup_cmpl counter mismatch issue (Nilesh Javali) [2054565] - EDAC/amd64: Save max number of controllers for F19 M70 (Aristeu Rozanski) [2064285] - CI: Use 8.6-rt branch for rhel8 realtime_check (Chris White) - blk-mq: avoid extending delays of active hctx from blk_mq_delay_run_hw_queues (Ming Lei) [2046525] - tipc: fix incorrect order of state message data sanity check (Xin Long) [2048971] - tipc: improve size validations for received domain records (Xin Long) [2048971] {CVE-2022-0435} - efi/x86: Call efi_parse_options() from efi_main() (Lenny Szubowicz) [2049233]- net/mlx5e: TC, Remove redundant error logging (Amir Tzin) [2023907] - net/mlx5: DR, Warn on failure to destroy objects due to refcount (Amir Tzin) [2022325] - net/mlx5: DR, Add support for dumping steering info (Amir Tzin) [2022325] - net/mlx5: DR, Add missing reserved fields to dr_match_param (Amir Tzin) [2022325] - net/mlx5: DR, Add check for flex parser ID value (Amir Tzin) [2022325] - net/mlx5: DR, Rename list field in matcher struct to list_node (Amir Tzin) [2022325] - net/mlx5: DR, Remove unused struct member in matcher (Amir Tzin) [2022325] - net/mlx5: DR, Fix error flow in creating matcher (Amir Tzin) [2022325] - net/mlx5e: Avoid implicit modify hdr for decap drop rule (Amir Tzin) [2015434] - net/mlx5e: TC, Fix memory leak with rules with internal port (Amir Tzin) [2015434] - net/mlx5e: Fix skb memory leak when TC classifier action offloads are disabled (Amir Tzin) [2015434] - net/mlx5: Fix some error handling paths in 'mlx5e_tc_add_fdb_flow()' (Amir Tzin) [2015434] - net/mlx5: E-Switch, Check group pointer before reading bw_share value (Amir Tzin) [2015434] - net/mlx5: E-Switch, fix single FDB creation on BlueField (Amir Tzin) [2015434] - net/mlx5: E-switch, Respect BW share of the new group (Amir Tzin) [2015434] - net/mlx5: DR, Fix check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: E-Switch, rebuild lag only when needed (Amir Tzin) [2015434] - net/mlx5e: Delete forward rule for ct or sample action (Amir Tzin) [2015434] - net/mlx5: E-Switch, Use indirect table only if all destinations support it (Amir Tzin) [2015434] - net/mlx5: Support internal port as decap route device (Amir Tzin) [2015434] - net/mlx5e: Term table handling of internal port rules (Amir Tzin) [2015434] - net/mlx5e: Add indirect tc offload of ovs internal port (Amir Tzin) [2015434] - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert (Amir Tzin) [2015434] - net/mlx5e: Offload internal port as encap route device (Amir Tzin) [2015434] - net/mlx5e: Offload tc rules that redirect to ovs internal port (Amir Tzin) [2015434] - net/mlx5e: Accept action skbedit in the tc actions list (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add ovs internal port mapping to metadata support (Amir Tzin) [2015434] - net/mlx5e: Use generic name for the forwarding dev pointer (Amir Tzin) [2015434] - net/mlx5e: Refactor rx handler of represetor device (Amir Tzin) [2015434] - net/mlx5: DR, Add check for unsupported fields in match param (Amir Tzin) [2015434] - net/mlx5: Allow skipping counter refresh on creation (Amir Tzin) [2015434] - net/mlx5e: IPsec: Refactor checksum code in tx data path (Amir Tzin) [2015434] - net/mlx5: CT: Remove warning of ignore_flow_level support for VFs (Amir Tzin) [2015434] - net/mlx5: Add esw assignment back in mlx5e_tc_sample_unoffload() (Amir Tzin) [2015434] - net/mlx5: Bridge, fix uninitialized variable usage (Amir Tzin) [2015434] - net/mlx5: Lag, don't update lag if lag isn't supported (Amir Tzin) [2015434] - net/mlx5: E-switch, Return correct error code on group creation failure (Amir Tzin) [2015434] - net/mlx5: Bridge, support LAG (Amir Tzin) [2015434] - net/mlx5: Bridge, allow merged eswitch connectivity (Amir Tzin) [2015434] - net/mlx5: Bridge, extract FDB delete notification to function (Amir Tzin) [2015434] - net/mlx5: Bridge, identify port by vport_num+esw_owner_vhca_id pair (Amir Tzin) [2015434] - net/mlx5: Bridge, obtain core device from eswitch instead of priv (Amir Tzin) [2015434] - net/mlx5: Bridge, release bridge in same function where it is taken (Amir Tzin) [2015434] - net/mlx5: Lag, Create shared FDB when in switchdev mode (Amir Tzin) [2015434] - net/mlx5: E-Switch, add logic to enable shared FDB (Amir Tzin) [2015434] - net/mlx5: Lag, properly lock eswitch if needed (Amir Tzin) [2015434] - net/mlx5: Add send to vport rules on paired device (Amir Tzin) [2015434] - net/mlx5: E-Switch, Add event callback for representors (Amir Tzin) [2015434] - net/mlx5e: Use shared mappings for restoring from metadata (Amir Tzin) [2015434] - net/mlx5e: Add an option to create a shared mapping (Amir Tzin) [2015434] - net/mlx5: E-Switch, set flow source for send to uplink rule (Amir Tzin) [2015434] - RDMA/mlx5: Add shared FDB support (Amir Tzin) [2015434] - {net, RDMA}/mlx5: Extend send to vport rules (Amir Tzin) [2015434] - RDMA/mlx5: Fill port info based on the relevant eswitch (Amir Tzin) [2015434] - net/mlx5: Lag, add initial logic for shared FDB (Amir Tzin) [2015434] - net/mlx5: Return mdev from eswitch (Amir Tzin) [2015434] - net/mlx5: E-switch, Add QoS tracepoints (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow to add vports to rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Allow setting share/max tx rate limits of rate groups (Amir Tzin) [2015434] - net/mlx5: E-switch, Introduce rate limiting groups API (Amir Tzin) [2015434] - net/mlx5: E-switch, Enable devlink port tx_{share|max} rate control (Amir Tzin) [2015434] - net/mlx5: E-switch, Move QoS related code to dedicated file (Amir Tzin) [2015434] - net/mlx5e: TC, Support sample offload action for tunneled traffic (Amir Tzin) [2015434] - net/mlx5e: TC, Restore tunnel info for sample offload (Amir Tzin) [2015434] - net/mlx5e: TC, Remove CONFIG_NET_TC_SKB_EXT dependency when restoring tunnel (Amir Tzin) [2015434] - net/mlx5e: Refactor ct to use post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: Introduce post action infrastructure (Amir Tzin) [2015434] - net/mlx5e: CT, Use xarray to manage fte ids (Amir Tzin) [2015434] - net/mlx5e: Move sample attribute to flow attribute (Amir Tzin) [2015434] - net/mlx5e: Move esw/sample to en/tc/sample (Amir Tzin) [2015434] - net/mlx5e: Remove mlx5e dependency from E-Switch sample (Amir Tzin) [2015434] - net/mlx5: DR, Fix querying eswitch manager vport for ECPF (Amir Tzin) [2018097] - net/mlx5: DR, Handle eswitch manager and uplink vports separately (Amir Tzin) [2018097] - net/mlx5: DR, Add missing string for action type SAMPLER (Amir Tzin) [2018097] - net/mlx5: DR, init_next_match only if needed (Amir Tzin) [2018097] - net/mlx5: DR, Increase supported num of actions to 32 (Amir Tzin) [2018097] - net/mlx5: DR, Add support for SF vports (Amir Tzin) [2018097] - net/mlx5: DR, Support csum recalculation flow table on SFs (Amir Tzin) [2018097] - net/mlx5: DR, Align error messages for failure to obtain vport caps (Amir Tzin) [2018097] - net/mlx5: DR, Add missing query for vport 0 (Amir Tzin) [2018097] - net/mlx5: DR, Replace local WIRE_PORT macro with the existing MLX5_VPORT_UPLINK (Amir Tzin) [2018097] - scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop (Dick Kennedy) [1943202] - nvme-tcp: change target from tech-preview to unmaintained (John Meneghini) [2061577] - drm/amd/display: Don't reinitialize DMCUB on s0ix resume (Karol Herbst) [2059680] - tcp: Add snd_wnd to TCP_INFO (Davide Caratti) [2056608] - tcp: Add TCP_INFO counter for packets received out-of-order (Davide Caratti) [2056608] - net/mlx5: Move MODIFY_RQT command to ignore list in internal error state (Amir Tzin) [1982236] - net/mlx5e: Add TX max rate support for MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Specify SQ stats struct for mlx5e_open_txqsq() (Amir Tzin) [1982236] - net/mlx5e: Allow only complete TXQs partition in MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Mutually exclude setting of TX-port-TS and MQPRIO in channel mode (Amir Tzin) [1982236] - net/mlx5e: Fix condition when retrieving PTP-rqn (Amir Tzin) [1982236] - net/mlx5: Fix inner TTC table creation (Amir Tzin) [1982236] - net/mlx5e: Fix division by 0 in mlx5e_select_queue for representors (Amir Tzin) [1982236] - net/mlx5e: Improve MQPRIO resiliency (Amir Tzin) [1982236] - net/mlx5e: Support MQPRIO channel mode (Amir Tzin) [1982236] - net/mlx5e: Handle errors of netdev_set_num_tc() (Amir Tzin) [1982236] - net/mlx5e: Maintain MQPRIO mode parameter (Amir Tzin) [1982236] - net/mlx5e: Abstract MQPRIO params (Amir Tzin) [1982236] - net/mlx5e: Support flow classification into RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Support multiple RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Dynamically allocate TIRs in RSS contexts (Amir Tzin) [1982236] - net/mlx5e: Convert RSS to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Introduce abstraction of RSS context (Amir Tzin) [1982236] - net/mlx5e: Introduce TIR create/destroy API in rx_res (Amir Tzin) [1982236] - net/mlx5e: Do not try enable RSS when resetting indir table (Amir Tzin) [1982236] - net/mlx5: Embed mlx5_ttc_table (Amir Tzin) [1982236] - net/mlx5: Move TTC logic to fs_ttc (Amir Tzin) [1982236] - net/mlx5e: Decouple TTC logic from mlx5e (Amir Tzin) [1982236] - net/mlx5e: Rename some related TTC args and functions (Amir Tzin) [1982236] - net/mlx5e: Rename traffic type enums (Amir Tzin) [1982236] - net/mlx5e: Allocate the array of channels according to the real max_nch (Amir Tzin) [1982236] - net/mlx5e: Hide all implementation details of mlx5e_rx_res (Amir Tzin) [1982236] - net/mlx5e: Introduce mlx5e_channels API to get RQNs (Amir Tzin) [1982236] - net/mlx5e: Use a new initializer to build uniform indir table (Amir Tzin) [1982236] - net/mlx5e: Use the new TIR API for kTLS (Amir Tzin) [1982236] - net/mlx5e: Move management of indir traffic types to rx_res (Amir Tzin) [1982236] - net/mlx5e: Convert TIR to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Create struct mlx5e_rss_params_hash (Amir Tzin) [1982236] - net/mlx5e: Remove mdev from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove lro_param from mlx5e_build_indir_tir_ctx_common() (Amir Tzin) [1982236] - net/mlx5e: Remove mlx5e_priv usage from mlx5e_build_*tir_ctx*() (Amir Tzin) [1982236] - net/mlx5e: Use mlx5e_rqt_get_rqtn to access RQT hardware id (Amir Tzin) [1982236] - net/mlx5e: Take RQT out of TIR and group RX resources (Amir Tzin) [1982236] - net/mlx5e: Move RX resources to a separate struct (Amir Tzin) [1982236] - net/mlx5e: Move mlx5e_build_rss_params() call to init_rx (Amir Tzin) [1982236] - net/mlx5e: Convert RQT to a dedicated object (Amir Tzin) [1982236] - net/mlx5e: Check if inner FT is supported outside of create/destroy functions (Amir Tzin) [1982236] - net/mlx5: Take TIR destruction out of the TIR list lock (Amir Tzin) [1982236] - PCI: pciehp: Ignore Link Down/Up caused by error-induced Hot Reset (Myron Stowe) [2060122] - PCI/portdrv: Rename pm_iter() to pcie_port_device_iter() (Myron Stowe) [2060122] - iommu/vt-d: Fix double list_add when enabling VMD in scalable mode (Jerry Snitselaar) [2062094] - redhat/configs: Disable CONFIG_SENSORS_NCT6683 in RHEL for arm/aarch64 (Dean Nelson) [2059695] - redhat: drop the -sha512 suffix from default rhpkg invocation (Jarod Wilson) - sysctl: return -EINVAL if val violates minmax (Rafael Aquini) [2062571] - kernel/sysctl.c: switch to bitmap_zalloc() (Rafael Aquini) [2062571] - netlabel: remove unused parameter in netlbl_netlink_auditinfo() (William Zhao) [1985319] - netlabel: Fix memory leak in netlbl_mgmt_add_common (William Zhao) [1985319] - bpftool: Fix indent in option lists in the documentation (Yauheni Kaliuta) [2014861] - libbpf: Fix memleak in libbpf_netlink_recv() (Yauheni Kaliuta) [2014861] - libbpf: Use dynamically allocated buffer when receiving netlink messages (Yauheni Kaliuta) [2014861] - libbpf: Clean gen_loader's attach kind. (Yauheni Kaliuta) [2014861] - powerpc/bpf: Use bctrl for making function calls (Jiri Olsa) [2014861] - powerpc/signal: Use PPC_RAW_xx() macros (Jiri Olsa) [2014861] - powerpc/ebpf64: Use PPC_RAW_MFLR() (Jiri Olsa) [2014861] - powerpc/opcodes: Add shorter macros for registers for use with PPC_RAW_xx() (Jiri Olsa) [2014861] - lib/test: fix spelling mistakes (Jiri Olsa) [2014861] - tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing (Jiri Olsa) [2014861] - bpf: Allow bpf_get_current_ancestor_cgroup_id for tracing (Jiri Olsa) [2014861] - docs: bpf: bpf_lsm.rst: avoid using ReST :doc:`foo` markup (Jiri Olsa) [2014861] - bpf, docs: Add llvm_reloc.rst to explain llvm bpf relocations (Jiri Olsa) [2014861] - bpf, arm64: Remove redundant switch case about BPF_DIV and BPF_MOD (Jiri Olsa) [2014861] - bpf, arm64: Replace STACK_ALIGN() with round_up() to align stack size (Jiri Olsa) [2014861] - selftests, bpf: Test that dead ldx_w insns are accepted (Jiri Olsa) [2014861] - bpf, selftests: Add test cases for pointer alu from multiple paths (Jiri Olsa) [2014861] - bpf: Selftest to verify mixing bpf2bpf calls and tailcalls with insn patch (Jiri Olsa) [2014861] - selftests/bpf: Fix ringbuf test fetching map FD (Jiri Olsa) [2014861] - selftests/bpf: Whitelist test_progs.h from .gitignore (Jiri Olsa) [2014861] - selftests, bpf: Make docs tests fail more reliably (Jiri Olsa) [2014861] - selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks (Jiri Olsa) [2014861] - selftests/bpf: Add bpf_lookup_and_delete_elem tests (Jiri Olsa) [2014861] - selftests/bpf: Convert test trace_printk to lskel. (Jiri Olsa) [2014861] - selftests/bpf: Convert test printk to use rodata. (Jiri Olsa) [2014861] - selftests/bpf: Convert atomics test to light skeleton. (Yauheni Kaliuta) [2014861] - selftests/bpf: Convert few tests to light skeleton. (Jiri Olsa) [2014861] - selftests/bpf: Test for btf_load command. (Jiri Olsa) [2014861] - selftests/bpf: Test for syscall program type (Jiri Olsa) [2014861] - libbpf: Add selftests for TC-BPF management API (Jiri Olsa) [2014861] - selftests/bpf: Validate skeleton gen handles skipped fields (Jiri Olsa) [2014861] - selftests/bpf: Stop using static variables for passing data to/from user-space (Jiri Olsa) [2014861] - tools: bpftool: Document and add bash completion for -L, -B options (Jiri Olsa) [2014861] - tools: bpftool: Update and synchronise option list in doc and help msg (Jiri Olsa) [2014861] - bpftool: Remove unused includes to (Jiri Olsa) [2014861] - powerpc/bpf: Fix write protecting JIT code (Jiri Olsa) [2014861] - libbpf: Fix lookup_and_delete_elem_flags error reporting (Jiri Olsa) [2014861] - bpftool: Check malloc return value in mount_bpffs_for_pin (Jiri Olsa) [2014861] - tools: bpf: Fix error in 'make -C tools/ bpf_install' (Jiri Olsa) [2014861] - bpftool: Properly close va_list 'ap' by va_end() on error (Jiri Olsa) [2014861] - bpf: Fix libelf endian handling in resolv_btfids (Jiri Olsa) [2014861] - tools/bpftool: Fix error return code in do_batch() (Jiri Olsa) [2014861] - tools/bpftool: Fix cross-build (Jiri Olsa) [2014861] - bpftool: Set errno on skeleton failures and propagate errors (Jiri Olsa) [2014861] - bpftool: Use syscall/loader program in "prog load" and "gen skeleton" command. (Jiri Olsa) [2014861] - bpftool: Stop emitting static variables in BPF skeleton (Jiri Olsa) [2014861] - bpftool: Strip const/volatile/restrict modifiers from .bss and .data vars (Jiri Olsa) [2014861] - bpf: Add missing bpf_read_[un]lock_trace() for syscall program (Jiri Olsa) [2014861] - libbpf: Fix skel_internal.h to set errno on loader retval < 0 (Jiri Olsa) [2014861] - libbpf: Fix segfault in light skeleton for objects without BTF (Jiri Olsa) [2014861] - libbpf: Return non-null error on failures in libbpf_find_prog_btf_id() (Jiri Olsa) [2014861] - libbpf, doc: Eliminate warnings in libbpf_naming_convention (Jiri Olsa) [2014861] - net, core: Allow netdev_lower_get_next_private_rcu in bh context (Jiri Olsa) [2014861] - samples/bpf: Fix the error return code of xdp_redirect's main() (Jiri Olsa) [2014861] - samples/bpf: Fix Segmentation fault for xdp_redirect command (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_sample_pkts usage (Jiri Olsa) [2014861] - samples/bpf: Add missing option to xdp_fwd usage (Jiri Olsa) [2014861] - samples, bpf: Suppress compiler warning (Jiri Olsa) [2014861] - file: Rename __close_fd to close_fd and remove the files parameter (Jiri Olsa) [2014861] - bpf: Fix ringbuf helper function compatibility (Jiri Olsa) [2014861] - bpf: Clear zext_dst of dead insns (Jiri Olsa) [2014861] - bpf: Add rcu_read_lock in bpf_get_current_[ancestor_]cgroup_id() helpers (Jiri Olsa) [2014861] - bpf, core: Fix kernel-doc notation (Jiri Olsa) [2014861] - libbpf: Do not close un-owned FD 0 on errors (Jiri Olsa) [2014861] - libbpf: Fix probe for BPF_PROG_TYPE_CGROUP_SOCKOPT (Jiri Olsa) [2014861] - s390/bpf: Perform r1 range checking before accessing jit->seen_reg[r1] (Jiri Olsa) [2014861] - libbpf: Restore errno return for functions that were already returning it (Jiri Olsa) [2014861] - powerpc/bpf: Write protect JIT code (Jiri Olsa) [2014861] - powerpc/bpf: Remove bpf_jit_free() (Jiri Olsa) [2014861] - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc (Jiri Olsa) [2014861] - bpf: Fix false positive kmemleak report in bpf_ringbuf_area_alloc() (Jiri Olsa) [2014861] - bpf: Allow RCU-protected lookups to happen from bh context (Jiri Olsa) [2014861] - bpf, x86: Remove unused cnt increase from EMIT macro (Jiri Olsa) [2014861] - libbpf: Switch to void * casting in netlink helpers (Jiri Olsa) [2014861] - libbpf: Add request buffer type for netlink messages (Jiri Olsa) [2014861] - libbpf: Add extra BPF_PROG_TYPE check to bpf_object__probe_loading (Jiri Olsa) [2014861] - bpf: Add documentation for libbpf including API autogen (Jiri Olsa) [2014861] - bpf: Fix up register-based shifts in interpreter to silence KUBSAN (Jiri Olsa) [2014861] - libbpf: Fail compilation if target arch is missing (Jiri Olsa) [2014861] - bpf: Fix typo in kernel/bpf/bpf_lsm.c (Jiri Olsa) [2014861] - bpf: Support BPF_FUNC_get_socket_cookie() for BPF_PROG_TYPE_SK_REUSEPORT. (Jiri Olsa) [2014861] - libbpf: Set NLM_F_EXCL when creating qdisc (Jiri Olsa) [2014861] - libbpf: Remove unneeded check for flags during tc detach (Jiri Olsa) [2014861] - libbpf: Simplify the return expression of bpf_object__init_maps function (Jiri Olsa) [2014861] - libbpf: Fix pr_warn type warnings on 32bit (Jiri Olsa) [2014861] - libbpf: Install skel_internal.h header used from light skeletons (Jiri Olsa) [2014861] - libbpf: Refactor header installation portions of Makefile (Jiri Olsa) [2014861] - libbpf: Move few APIs from 0.4 to 0.5 version (Jiri Olsa) [2014861] - bpf, tnums: Provably sound, faster, and more precise algorithm for tnum_mul (Jiri Olsa) [2014861] - libbpf: Move BPF_SEQ_PRINTF and BPF_SNPRINTF to bpf_helpers.h (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for high-level APIs (Jiri Olsa) [2014861] - libbpf: Streamline error reporting for low-level APIs (Jiri Olsa) [2014861] - libbpf: Add libbpf_set_strict_mode() API to turn on libbpf 1.0 behaviors (Jiri Olsa) [2014861] - bpf: Fix spelling mistakes (Jiri Olsa) [2014861] - bpf: Extend libbpf with bpf_map_lookup_and_delete_elem_flags (Jiri Olsa) [2014861] - bpf: Add lookup_and_delete_elem support to hashtab (Jiri Olsa) [2014861] - libbpf: Skip bpf_object__probe_loading for light skeleton (Jiri Olsa) [2014861] - bpf: Make some symbols static (Jiri Olsa) [2014861] - bpf: Add cmd alias BPF_PROG_RUN (Jiri Olsa) [2014861] - libbpf: Introduce bpf_map__initial_value(). (Jiri Olsa) [2014861] - libbpf: Cleanup temp FDs when intermediate sys_bpf fails. (Jiri Olsa) [2014861] - libbpf: Generate loader program out of BPF ELF file. (Jiri Olsa) [2014861] - libbpf: Preliminary support for fd_idx (Jiri Olsa) [2014861] - libbpf: Add bpf_object pointer to kernel_supports(). (Jiri Olsa) [2014861] - libbpf: Change the order of data and text relocations. (Jiri Olsa) [2014861] - bpf: Add bpf_sys_close() helper. (Jiri Olsa) [2014861] - bpf: Add bpf_btf_find_by_name_kind() helper. (Jiri Olsa) [2014861] - bpf: Introduce fd_idx (Jiri Olsa) [2014861] - bpf: Make btf_load command to be bpfptr_t compatible. (Jiri Olsa) [2014861] - libbpf: Support for syscall program type (Jiri Olsa) [2014861] - bpf: Prepare bpf syscall to be used from kernel and user space. (Jiri Olsa) [2014861] - bpf: Introduce bpfptr_t user/kernel pointer. (Jiri Olsa) [2014861] - bpf: Introduce bpf_sys_bpf() helper and program type. (Jiri Olsa) [2014861] - libbpf: Add low level TC-BPF management API (Jiri Olsa) [2014861] - libbpf: Add various netlink helpers (Jiri Olsa) [2014861] - libbpf: Reject static entry-point BPF programs (Jiri Olsa) [2014861] - libbpf: Reject static maps (Jiri Olsa) [2014861] - libbpf: Treat STV_INTERNAL same as STV_HIDDEN for functions (Jiri Olsa) [2014861] - libbpf: Add per-file linker opts (Jiri Olsa) [2014861] - bpf: verifier: Use copy_array for jmp_history (Jiri Olsa) [2014861] - bpf: verifier: Improve function state reallocation (Jiri Olsa) [2014861]- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190] - megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek) - internal: update RHEL_MINOR for the start of RHEL-8.7 development (Jarod Wilson)- ice: fix getting UDP tunnel entry (Jonathan Toppins) [2015409] - ice: convert to new udp_tunnel infrastructure (Jonathan Toppins) [2015409] - selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050807] - KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050807] {CVE-2022-0516} - lib/iov_iter: initialize "flags" in new pipe_buffer (Jan Stancek) [2060875] {CVE-2022-0847} - fget: clarify and improve __fget_files() implementation (Patrick Talbert) [2032303] - fget: check that the fd still exists after getting a ref to it (Patrick Talbert) [2032303] {CVE-2021-4083} - drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2053358] - cgroup-v1: Correct privileges check in release_agent writes (Waiman Long) [2052167] - cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052167] {CVE-2022-0492} - spec: Fix separate tools build (Yauheni Kaliuta) [2056301] - net/mlx5: DR, Add support for update FTE (Amir Tzin) [2047231] - net/mlx5: DR, Improve rule tracking memory consumption (Amir Tzin) [2047231] - net/mlx5: DR, Remove rehash ctrl struct from dr_htbl (Amir Tzin) [2047231] - net/mlx5: DR, Remove HW specific STE type from nic domain (Amir Tzin) [2047231] - net/mlx5: DR, Merge DR_STE_SIZE enums (Amir Tzin) [2047231] - net/mlx5: DR, Skip source port matching on FDB RX domain (Amir Tzin) [2047231] - net/mlx5: DR, Add ignore_flow_level support for multi-dest flow tables (Amir Tzin) [2047231] - net/mlx5: DR, replace uintN_t with kernel-style types (Amir Tzin) [2047231] - net/mlx5: DR, Support IPv6 matching on flow label for STEv0 (Amir Tzin) [2047231] - net/mlx5: DR, Reduce print level for FT chaining level check (Amir Tzin) [2047231] - net/mlx5: DR, Warn and ignore SW steering rule insertion on QP err (Amir Tzin) [2047231] - net/mlx5: DR, Improve error flow in actions_build_ste_arr (Amir Tzin) [2047231] - net/mlx5: DR, Enable QP retransmission (Amir Tzin) [2047231] - net/mlx5: DR, Enable VLAN pop on TX and VLAN push on RX (Amir Tzin) [2047231] - net/mlx5: DR, Split modify VLAN state to separate pop/push states (Amir Tzin) [2047231] - net/mlx5: DR, Added support for REMOVE_HEADER packet reformat (Amir Tzin) [2047231] - net/mlx4_en: Resolve bad operstate value (Amir Tzin) [1982190] - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources() (Amir Tzin) [1982190] - RDMA/mlx4: Do not fail the registration on port stats (Amir Tzin) [1982190] - RDMA/mlx4: Return missed an error if device doesn't support steering (Amir Tzin) [1982190] - net/mlx4_en: Don't allow aRFS for encapsulated packets (Amir Tzin) [1982190] - mlx4: Fix missing error code in mlx4_load_one() (Amir Tzin) [1982190] - net/mlx4: Fix fall-through warning for Clang (Amir Tzin) [1982190] - mlx4: Remove rcu_read_lock() around XDP program invocation (Amir Tzin) [1982190] - IB/mlx4: Avoid field-overflowing memcpy() (Amir Tzin) [1982190] - RDMA/mlx4: Do not map the core_clock page to user space unless enabled (Amir Tzin) [1982190] - net/mlx4: Treat VFs fair when handling comm_channel_events (Amir Tzin) [1982190] - RDMA/mlx4: Remove an unused variable (Amir Tzin) [1982190]- megaraid_sas: Add new messaging - a fix (Tomas Henzl) [2055248] - HID: amd_sfh: Add interrupt handler to process interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add functionality to clear interrupts (Benjamin Tissoires) [2054929] - HID: amd_sfh: Disable the interrupt for all command (Benjamin Tissoires) [2054929] - HID: amd_sfh: Correct the structure field name (Benjamin Tissoires) [2054929] - HID: amd_sfh: Handle amd_sfh work buffer in PM ops (Benjamin Tissoires) [2054929] - HID: amd_sfh: Add illuminance mask to limit ALS max value (Benjamin Tissoires) [2054929] - HID: amd_sfh: Increase sensor command timeout (Benjamin Tissoires) [2054929] - HID: amd_sfh: Update Copyright details (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dev_' API (Benjamin Tissoires) [2054929] - HID: amd_sfh: Use dma_set_mask_and_coherent() (Benjamin Tissoires) [2054929] - HID: amd_sfh: switch from 'pci_' to 'dma_' API (Benjamin Tissoires) [2054929] - dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2057166] - dm: fix double accounting of flush with data (Benjamin Marzinski) [2057166] - dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2057166] - x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [2050410 2048786 2050412] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Handle three rank interleaving mode (Aristeu Rozanski) [2050410 2048786 2050412] - EDAC/amd64: Set proper family type for Family 19h Models 20h-2Fh (Aristeu Rozanski) [2050410 2048786 2050412] - netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2009786] - netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2009786] - selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2009786] - netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2009786] - Enable HSA_AMD_SVM config (Donald Dutile) [2025123] - mm/memremap_pages: support multiple ranges per invocation (Donald Dutile) [2025123] - mm/memremap_pages: convert to 'struct range' (Donald Dutile) [2025123] - device-dax: add an allocation interface for device-dax instances (Donald Dutile) [2025123] - device-dax: make pgmap optional for instance creation (Donald Dutile) [2025123] - device-dax: move instance creation parameters to 'struct dev_dax_data' (Donald Dutile) [2025123] - device-dax: drop the dax_region.pfn_flags attribute (Donald Dutile) [2025123] - memremap: rename MEMORY_DEVICE_DEVDAX to MEMORY_DEVICE_GENERIC (Donald Dutile) [2025123] - PCI/P2PDMA: Introduce private pagemap structure (Donald Dutile) [2025123] - security: implement sctp_assoc_established hook in selinux (Ondrej Mosnacek) [2015525 2048251] - security: add sctp_assoc_established hook (Ondrej Mosnacek) [2015525 2048251] - security: call security_sctp_assoc_request in sctp_sf_do_5_1D_ce (Ondrej Mosnacek) [2015525 2048251] - security: pass asoc to sctp_assoc_request and sctp_sk_clone (Ondrej Mosnacek) [2015525 2048251] - net: sctp: Fix some typos (Ondrej Mosnacek) [2015525 2048251] - iwlwifi: mvm: read 6E enablement flags from DSM and pass to FW (Íñigo Huguet) [1923170 1936001] - net/mlx5: Lag, Make mlx5_lag_is_multipath() be static inline (Amir Tzin) [1982193] - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove() (Amir Tzin) [1982193] - net/mlx5: DR, Ignore modify TTL if device doesn't support it (Amir Tzin) [1982193 2028504] - net/mlx5: Warn for devlink reload when there are VFs alive (Amir Tzin) [1982193] - net/mlx5: DR, Fix lower case macro prefix "mlx5_" to "MLX5_" (Amir Tzin) [1982193] - net/mlx5e: Fix wrong features assignment in case of error (Amir Tzin) [1982193] - net/mlx5e: Fix ICOSQ recovery flow for XSK (Amir Tzin) [1982193] - net/mlx5e: Fix interoperability between XSK and ICOSQ recovery flow (Amir Tzin) [1982193] - net/mlx5e: Wrap the tx reporter dump callback to extract the sq (Amir Tzin) [1982193] - net/mlx5: Fix tc max supported prio for nic mode (Amir Tzin) [1982193] - net/mlx5: Fix SF health recovery flow (Amir Tzin) [1982193] - net/mlx5: Fix error print in case of IRQ request failed (Amir Tzin) [1982193] - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources (Amir Tzin) [1982193] - mlx5: fix mlx5i_grp_sw_update_stats() stack usage (Amir Tzin) [1982193] - mlx5: fix psample_sample_packet link error (Amir Tzin) [1982193] - net/mlx5: Fix format-security build warnings (Amir Tzin) [1982193] - net/mlx5e: Fix missing IPsec statistics on uplink representor (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix Software parser inner l3 type setting in case of encapsulation (Amir Tzin) [1982193] - net/mlx5: E-Switch, return error if encap isn't supported (Amir Tzin) [1982193] - net/mlx5: Lag, update tracker when state change event received (Amir Tzin) [1982193] - net/mlx5e: CT, Fix multiple allocations and memleak of mod acts (Amir Tzin) [1982193 2017675] - net/mlx5: Update error handler for UCTX and UMEM (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix resetting of encap mode when entering switchdev (Amir Tzin) [1982193] - net/mlx5e: Wait for concurrent flow deletion during neigh/fib events (Amir Tzin) [1982193] - net/mlx5e: kTLS, Fix crash in RX resync flow (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix work queue entry ethernet segment checksum flags (Amir Tzin) [1982193] - net/mlx5e: IPsec: Fix a misuse of the software parser's fields (Amir Tzin) [1982193] - net/mlx5e: Fix vlan data lost during suspend flow (Amir Tzin) [1982193] - net/mlx5: Lag, change multipath and bonding to be mutually exclusive (Amir Tzin) [1982193] - net/mlx5: Lag, move lag destruction to a workqueue (Amir Tzin) [1982193] - RDMA/mlx5: Initialize the ODP xarray when creating an ODP MR (Amir Tzin) [1982193] - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp (Amir Tzin) [1982193] - net/mlx5e: Switchdev representors are not vlan challenged (Amir Tzin) [1982193] - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path (Amir Tzin) [1982193] - net/mlx5: Fix cleanup of bridge delayed work (Amir Tzin) [1982193] - RDMA/mlx5: Set user priority for DCT (Amir Tzin) [1982193] - net/mlx5: DR, Fix typo 'offeset' to 'offset' (Amir Tzin) [1982193] - net/mlx5: DR, Fix vport number data type to u16 (Amir Tzin) [1982193] - net/mlx5e: Fix the presented RQ index in PTP stats (Amir Tzin) [1982193] - net/mlx5: Fix setting number of EQs of SFs (Amir Tzin) [1982193] - net/mlx5: Fix length of irq_index in chars (Amir Tzin) [1982193] - net/mlx5: Avoid generating event after PPS out in Real time mode (Amir Tzin) [1982193] - net/mlx5: Force round second at 1PPS out start time (Amir Tzin) [1982193] - net/mlx5: E-Switch, Fix double allocation of acl flow counter (Amir Tzin) [1982193] - net/mlx5e: Keep the value for maximum number of channels in-sync (Amir Tzin) [1982193] - net/mlx5e: IPSEC RX, enable checksum complete (Amir Tzin) [1982193] - net/mlx5: DR, Fix code indentation in dr_ste_v1 (Amir Tzin) [1982193] - RDMA/mlx5: Fix xlt_chunk_align calculation (Amir Tzin) [1982193] - RDMA/mlx5: Fix number of allocated XLT entries (Amir Tzin) [1982193] - net/mlx5e: Fix mutual exclusion between CQE compression and HW TS (Amir Tzin) [1982193] - net/mlx5: Fix potential sleeping in atomic context (Amir Tzin) [1982193] - net/mlx5: FWTrace, cancel work on alloc pd error flow (Amir Tzin) [1982193] - net/mlx5: DR, fix a potential use-after-free bug (Amir Tzin) [1982193] - net/mlx5e: Use correct eswitch for stack devices with lag (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set vhca id valid flag when creating indir fwd group (Amir Tzin) [1982193] - net/mlx5: Remove all auxiliary devices at the unregister event (Amir Tzin) [1982193] - net/mlx5: Lag, fix multipath lag activation (Amir Tzin) [1982193] - net/mlx5: Fix variable type to match 64bit (Amir Tzin) [1982193] - net/mlx5: Fix typo in comments (Amir Tzin) [1982193] - net/mlx5e: Remove Duplicated hunk in function __parse_cls_flower() (Amir Tzin) [1982193] - net/mlx5: Fix unpublish devlink parameters (Amir Tzin) [1982193] - RDMA/mlx5: Delete not-available udata check (Amir Tzin) [1982193] - net/mlx5: Fix missing return value in mlx5_devlink_eswitch_inline_mode_set() (Amir Tzin) [1982193] - net/mlx5e: Block LRO if firmware asks for tunneled LRO (Amir Tzin) [1982193] - net/mlx5e: Prohibit inner indir TIRs in IPoIB (Amir Tzin) [1982193] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Amir Tzin) [1982193] - net/mlx5: Fix return value from tracer initialization (Amir Tzin) [1982193] - net/mlx5: Synchronize correct IRQ when destroying CQ (Amir Tzin) [1982193 1982219] - net/mlx5e: TC, Fix error handling memory leak (Amir Tzin) [1982193] - net/mlx5: Destroy pool->mutex (Amir Tzin) [1982193] - net/mlx5: Set all field of mlx5_irq before inserting it to the xarray (Amir Tzin) [1982193] - net/mlx5: Fix order of functions in mlx5_irq_detach_nb() (Amir Tzin) [1982193] - net/mlx5: Block switchdev mode while devlink traps are active (Amir Tzin) [1982193] - net/mlx5e: Destroy page pool after XDP SQ to fix use-after-free (Amir Tzin) [1982193] - net/mlx5: Bridge, fix ageing time (Amir Tzin) [1982193] - net/mlx5e: Avoid creating tunnel headers for local route (Amir Tzin) [1982193] - net/mlx5: DR, Add fail on error check on decap (Amir Tzin) [1982193] - net/mlx5: Don't skip subfunction cleanup in case of error in module init (Amir Tzin) [1982193] - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it recently (Amir Tzin) [1982193] - net/mlx5: Fix mlx5_vport_tbl_attr chain from u16 to u32 (Amir Tzin) [1982193] - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev() (Amir Tzin) [1982193] - net/mlx5: Unload device upon firmware fatal error (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for ptp-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Fix page allocation failure for trap-RQ over SF (Amir Tzin) [1982193] - net/mlx5e: Consider PTP-RQ when setting RX VLAN stripping (Amir Tzin) [1982193] - net/mlx5e: Add NETIF_F_HW_TC to hw_features when HTB offload is available (Amir Tzin) [1982193] - net/mlx5e: RX, Avoid possible data corruption when relaxed ordering and LRO combined (Amir Tzin) [1982193] - net/mlx5: E-Switch, handle devcom events only for ports on the same device (Amir Tzin) [1982193] - net/mlx5: E-Switch, Set destination vport vhca id only when merged eswitch is supported (Amir Tzin) [1982193] - net/mlx5e: Disable Rx ntuple offload for uplink representor (Amir Tzin) [1982193] - net/mlx5e: kTLS, Add stats for number of deleted kTLS TX offloaded connections (Amir Tzin) [1982193] - net/mlx5: SF, Improve performance in SF allocation (Amir Tzin) [1982193] - net/mlx5: Increase hairpin buffer size (Amir Tzin) [1982193] - net/mlx5: DR, Add support for flow sampler offload (Amir Tzin) [1982193] - net/mlx5: Compare sampler flow destination ID in fs_core (Amir Tzin) [1982193] - net/mlx5: remove "default n" from Kconfig (Amir Tzin) [1982193] - net/mlx5: Fix spelling mistake "enught" -> "enough" (Amir Tzin) [1982193] - net/mlx5: Use cpumask_available() in mlx5_eq_create_generic() (Amir Tzin) [1982193] - net/mlx5: Fix missing error code in mlx5_init_fs() (Amir Tzin) [1982193] - RDMA/mlx5: Support real-time timestamp directly from the device (Amir Tzin) [1982193] - RDMA/mlx5: Refactor get_ts_format functions to simplify code (Amir Tzin) [1982193] - RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs (Amir Tzin) [1982193] - net/mlx5: Round-Robin EQs over IRQs (Amir Tzin) [1982193] - net/mlx5: Separate between public and private API of sf.h (Amir Tzin) [1982193] - net/mlx5: Enlarge interrupt field in CREATE_EQ (Amir Tzin) [1982193] - net/mlx5: Allocating a pool of MSI-X vectors for SFs (Amir Tzin) [1982193] - net/mlx5: Change IRQ storage logic from static to dynamic (Amir Tzin) [1982193] - net/mlx5: Moving rmap logic to EQs (Amir Tzin) [1982193] - net/mlx5: Extend mlx5_irq_request to request IRQ from the kernel (Amir Tzin) [1982193] - net/mlx5: Removing rmap per IRQ (Amir Tzin) [1982193] - net/mlx5: Clean license text in eq.[c|h] files (Amir Tzin) [1982193] - net/mlx5: Provide cpumask at EQ creation phase (Amir Tzin) [1982193] - net/mlx5: Introduce API for request and release IRQs (Amir Tzin) [1982193] - net/mlx5: Delay IRQ destruction till all users are gone (Amir Tzin) [1982193] - net/mlx5: Change ownership model for lag (Amir Tzin) [1982193] - net/mlx5: Lag, Don't rescan if the device is going down (Amir Tzin) [1982193] - net/mlx5: Lag, refactor disable flow (Amir Tzin) [1982193] - net/mlx5: Bridge, add tracepoints (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, filter tagged packets that didn't match tagged fg (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, support pvid and untagged vlan configurations (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, match FDB entry vlan tag (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, implement infrastructure for vlans (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, dynamic entry ageing (Amir Tzin) [1982193 1982234] - net/mlx5: Bridge, handle FDB events (Amir Tzin) [1982193 1982234] - docs: networking: Add missing mlx5 documentation (Amir Tzin) [1982193] - net/mlx5: Bridge, add offload infrastructure (Amir Tzin) [1982193 1982234] - net/mlx5e: Refactor mlx5e_eswitch_{*}rep() helpers (Amir Tzin) [1982193 1982234] - net/mlx5: Create TC-miss priority and table (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Support EMD tag in modify header for STEv1 (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Added support for INSERT_HEADER reformat type (Amir Tzin) [1982193 1982234] - net/mlx5: Added new parameters to reformat context (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Allow encap action for RX for supporting devices (Amir Tzin) [1982193 1982234] - net/mlx5: DR, Split reformat state to Encap and Decap (Amir Tzin) [1982193 1982234] - net/mlx5: mlx5_ifc support for header insert/remove (Amir Tzin) [1982193 1982234] - net/mlx5e: Remove unreachable code in mlx5e_xmit() (Amir Tzin) [1982193] - net/mlx5e: RX, Re-place page pool numa node change logic (Amir Tzin) [1982193] - net/mlx5e: Zero-init DIM structures (Amir Tzin) [1982193] - net/mlx5e: IPoIB, Add support for NDR speed (Amir Tzin) [1982193] - net/mlx5e: Remove the repeated declaration (Amir Tzin) [1982193] - net/mlx5: check for allocation failure in mlx5_ft_pool_init() (Amir Tzin) [1982193] - mlx5: count all link events (Amir Tzin) [1982193] - net/mlx5: Expose FW version over defined keyword (Amir Tzin) [1982193] - net/mlx5: Use boolean arithmetic to evaluate roce_lag (Amir Tzin) [1982193] - net/mlx5: Remove unnecessary spin lock protection (Amir Tzin) [1982193] - net/mlx5: Cap the maximum flow group size to 16M entries (Amir Tzin) [1982193] - net/mlx5: DR, Set max table size to 2G entries (Amir Tzin) [1982193] - net/mlx5: Move chains ft pool to be used by all firmware steering (Amir Tzin) [1982193] - net/mlx5: Move table size calculation to steering cmd layer (Amir Tzin) [1982193] - net/mlx5: Add case for FS_FT_NIC_TX FT in MLX5_CAP_FLOWTABLE_TYPE (Amir Tzin) [1982193] - net/mlx5: DR, Remove unused field of send_ring struct (Amir Tzin) [1982193] - net/mlx5e: RX, Remove unnecessary check in RX CQE compression handling (Amir Tzin) [1982193] - net/mlx5: CT: Avoid reusing modify header context for natted entries (Amir Tzin) [1982193] - net/mlx5e: CT, Remove newline from ct_dbg call (Amir Tzin) [1982193] - RDMA/mlx5: Take qp type from mlx5_ib_qp (Amir Tzin) [1982193] - RDMA/mlx5: Add SQD2RTS bit to the alloc ucontext response (Amir Tzin) [1982193] - RDMA/mlx5: Support SQD2RTS for modify QP (Amir Tzin) [1982193] - RDMA/mlx5: Remove redundant assignment to ret (Amir Tzin) [1982193] - firewire: fix support status (Tomas Henzl) [2055319] - dlci: fix support status (Tomas Henzl) [2055319] - dlink: fix support status (Tomas Henzl) [2055319] - rxe: fix support status (Tomas Henzl) [2055319] - qic: fix support status (Tomas Henzl) [2055319] - Revert "ceph: enable async dirops by default" (Jeffrey Layton) [2052542] - libceph: optionally use bounce buffer on recv path in crc mode (Jeffrey Layton) [2024725] - libceph: make recv path in secure mode work the same as send path (Jeffrey Layton) [2024725] - mm: use kmap_local_page in memzero_page (Jeffrey Layton) [2024725] - mm: call flush_dcache_page() in memcpy_to_page() and memzero_page() (Jeffrey Layton) [2024725] - iov_iter: lift memzero_page() to highmem.h (Jeffrey Layton) [2024725] - mm/highmem: Convert memcpy_[to|from]_page() to kmap_local_page() (Jeffrey Layton) [2024725] - mm/highmem: Lift memcpy_[to|from]_page to core (Jeffrey Layton) [2024725] - ceph: set pool_ns in new inode layout for async creates (Jeffrey Layton) [2046021] - ceph: properly put ceph_string reference after async create attempt (Jeffrey Layton) [2046021] - ceph: put the requests/sessions when it fails to alloc memory (Jeffrey Layton) [2046021] - ceph: remove redundant Lsx caps check (Jeffrey Layton) [2046021] - ceph: don't check for quotas on MDS stray dirs (Jeffrey Layton) [2046021] - ceph: drop send metrics debug message (Jeffrey Layton) [2046021] - ceph: Fix incorrect statfs report for small quota (Jeffrey Layton) [2011104] - scsi: qla2xxx: stop timer in shutdown path (Nilesh Javali) [2056055] - Revert "PCI: Add support for dev_groups to struct pci_driver" (Michel Dänzer) [2054595] - drm/amdgpu: Assign amdgpu_sysfs_groups to struct device_driver directly (Michel Dänzer) [2054595] - EDAC/i10nm: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1998359] - redhat: enable zstream release numbering for rhel 8.6 (Augusto Caringi) - redhat: generate distgit changelog in genspec.sh as well (Jan Stancek) - redhat: always upload kabi tarballs (Jan Stancek) - redhat: make genspec prefer metadata from git notes (Jan Stancek)- xfs: don't generate selinux audit messages for capability testing (Brian Foster) [2059835]- ice: Implement support for SMA and U.FL on E810-T (Jonathan Toppins) [1975007] - ice: Add support for SMA control multiplexer (Jonathan Toppins) [1975007] - ice: Implement functions for reading and setting GPIO pins (Jonathan Toppins) [1975007] - ice: Refactor ice_aqc_link_topo_addr (Jonathan Toppins) [1975007] - xfs: restore speculative_cow_prealloc_lifetime sysctl (Bill O'Donnell) [2015621] - xfs: Fix the free logic of state in xfs_attr_node_hasname (Bill O'Donnell) [2015621 2037498] - xfs: punch out data fork delalloc blocks on COW writeback failure (Bill O'Donnell) [2015621 2012872] - xfs: use kmem_cache_free() for kmem_cache objects (Bill O'Donnell) [2015621] - xfs: logging the on disk inode LSN can make it go backwards (Bill O'Donnell) [2015621] - xfs: only reset incore inode health state flags when reclaiming an inode (Bill O'Donnell) [2015621] - xfs: remove obsolete AGF counter debugging (Bill O'Donnell) [2015621] - xfs: Initialize xfs_alloc_arg->total correctly when allocating minlen extents (Bill O'Donnell) [2015621] - xfs: Fix dax inode extent calculation when direct write is performed on an unwritten extent (Bill O'Donnell) [2015621] - xfs: mark a data structure sick if there are cross-referencing errors (Bill O'Donnell) [2015621] - xfs: fix maxlevels comparisons in the btree staging code (Bill O'Donnell) [2015621] - xfs: fix incorrect unit conversion in scrub tracepoint (Bill O'Donnell) [2015621] - xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes (Bill O'Donnell) [2015621] - xfs: fix radix tree tag signs (Bill O'Donnell) [2015621] - xfs: force log and push AIL to clear pinned inodes when aborting mount (Bill O'Donnell) [2015621] - xfs: use current->journal_info for detecting transaction recursion (Bill O'Donnell) [2015621] - xfs: don't nest transactions when scanning for eofblocks (Bill O'Donnell) [2015621] - xfs: fix boolreturn.cocci warnings (Bill O'Donnell) [2015621] - xfs: get rid of xfs_growfs_{data,log}_t (Bill O'Donnell) [2015621] - xfs: rename `new' to `delta' in xfs_growfs_data_private() (Bill O'Donnell) [2015621] - xfs: don't bounce the iolock between free_{eof,cow}blocks (Bill O'Donnell) [2015621] - xfs: expose the blockgc workqueue knobs publicly (Bill O'Donnell) [2015621] - xfs: parallelize block preallocation garbage collection (Bill O'Donnell) [2015621] - xfs: rename block gc start and stop functions (Bill O'Donnell) [2015621] - xfs: only walk the incore inode tree once per blockgc scan (Bill O'Donnell) [2015621] - xfs: consolidate the eofblocks and cowblocks workers (Bill O'Donnell) [2015621] - xfs: consolidate incore inode radix tree posteof/cowblocks tags (Bill O'Donnell) [2015621] - xfs: remove trivial eof/cowblocks functions (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_cowblocks (Bill O'Donnell) [2015621] - xfs: hide xfs_icache_free_eofblocks (Bill O'Donnell) [2015621] - xfs: relocate the eofb/cowb workqueue functions (Bill O'Donnell) [2015621] - xfs: set WQ_SYSFS on all workqueues in debug mode (Bill O'Donnell) [2015621] - xfs: increase the default parallelism levels of pwork clients (Bill O'Donnell) [2015621] - xfs: flush speculative space allocations when we run out of space (Bill O'Donnell) [2015621] - xfs: refactor xfs_icache_free_{eof,cow}blocks call sites (Bill O'Donnell) [2015621] - xfs: add a tracepoint for blockgc scans (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for chown (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for inode creation (Bill O'Donnell) [2015621] - xfs: flush eof/cowblocks if we can't reserve quota for file blocks (Bill O'Donnell) [2015621] - xfs: try worst case space reservation upfront in xfs_reflink_remap_extent (Bill O'Donnell) [2015621] - xfs: pass flags and return gc errors from xfs_blockgc_free_quota (Bill O'Donnell) [2015621] - xfs: move and rename xfs_inode_free_quota_blocks to avoid conflicts (Bill O'Donnell) [2015621] - xfs: xfs_inode_free_quota_blocks should scan project quota (Bill O'Donnell) [2015621] - xfs: don't stall cowblocks scan if we can't take locks (Bill O'Donnell) [2015621] - xfs: trigger all block gc scans when low on quota space (Bill O'Donnell) [2015621] - xfs: shut down the filesystem if we screw up quota reservation (Bill O'Donnell) [2015621] - xfs: rename code to error in xfs_ioctl_setattr (Bill O'Donnell) [2015621] - xfs: remove xfs_qm_vop_chown_reserve (Bill O'Donnell) [2015621] - xfs: refactor inode ownership change transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor inode creation transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: refactor reflink functions to use xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: allow reservation of rtblocks with xfs_trans_alloc_inode (Bill O'Donnell) [2015621] - xfs: refactor common transaction/inode/quota allocation idiom (Bill O'Donnell) [2015621] - xfs: reserve data and rt quota at the same time (Bill O'Donnell) [2015621] - xfs: clean up icreate quota reservation calls (Bill O'Donnell) [2015621] - xfs: remove xfs_trans_unreserve_quota_nblks completely (Bill O'Donnell) [2015621] - xfs: create convenience wrappers for incore quota block reservations (Bill O'Donnell) [2015621] - xfs: clean up quota reservation callsites (Bill O'Donnell) [2015621] - xfs: reduce quota reservation when doing a dax unwritten extent conversion (Bill O'Donnell) [2015621] - xfs: reduce exclusive locking on unaligned dio (Bill O'Donnell) [2015621] - xfs: split the unaligned DIO write code out (Bill O'Donnell) [2015621] - xfs: improve the reflink_bounce_dio_write tracepoint (Bill O'Donnell) [2015621] - xfs: simplify the read/write tracepoints (Bill O'Donnell) [2015621] - xfs: remove the buffered I/O fallback assert (Bill O'Donnell) [2015621] - xfs: cleanup the read/write helper naming (Bill O'Donnell) [2015621] - xfs: make xfs_file_aio_write_checks IOCB_NOWAIT-aware (Bill O'Donnell) [2015621] - xfs: factor out a xfs_ilock_iocb helper (Bill O'Donnell) [2015621] - xfs: Fix 'set but not used' warning in xfs_bmap_compute_alignments() (Bill O'Donnell) [2015621] - xfs: fix unused log variable in xfs_log_cover() (Bill O'Donnell) [2015621] - iomap: add a IOMAP_DIO_OVERWRITE_ONLY flag (Bill O'Donnell) [2015621] - iomap: pass a flags argument to iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: rename the flags variable in __iomap_dio_rw (Bill O'Donnell) [2015621] - iomap: Allow filesystem to call iomap_dio_complete without i_rwsem (Bill O'Donnell) [2015621] - xfs: reduce ilock acquisitions in xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: refactor xfs_file_fsync (Bill O'Donnell) [2015621] - xfs: cover the log on freeze instead of cleaning it (Bill O'Donnell) [2015621] - xfs: remove xfs_quiesce_attr() (Bill O'Donnell) [2015621] - xfs: remove duplicate wq cancel and log force from attr quiesce (Bill O'Donnell) [2015621] - xfs: fold sbcount quiesce logging into log covering (Bill O'Donnell) [2015621] - xfs: don't reset log idle state on covering checkpoints (Bill O'Donnell) [2015621] - xfs: cover the log during log quiesce (Bill O'Donnell) [2015621] - xfs: separate log cleaning from log quiesce (Bill O'Donnell) [2015621] - xfs: lift writable fs check up into log worker task (Bill O'Donnell) [2015621] - xfs: set inode size after creating symlink (Bill O'Donnell) [2015621] - xfs: remove a stale comment from xfs_file_aio_write_checks() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to allocate only minlen size extents for files (Bill O'Donnell) [2015621] - xfs: Process allocated extent in a separate function (Bill O'Donnell) [2015621] - xfs: Compute bmap extent alignments in a separate function (Bill O'Donnell) [2015621] - xfs: Remove duplicate assert statement in xfs_bmap_btalloc() (Bill O'Donnell) [2015621] - xfs: Introduce error injection to reduce maximum inode fork extent count (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when swapping extents (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when remapping an extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when moving extent from cow to data fork (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when writing to unwritten extent (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding/removing xattrs (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when renaming dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when removing dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when adding dir entries (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when punching a hole (Bill O'Donnell) [2015621] - xfs: Check for extent overflow when trivally adding a new extent (Bill O'Donnell) [2015621] - xfs: Add helper for checking per-inode extent count overflow (Bill O'Donnell) [2015621] - iwlwifi: pcie: add killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: add support for BNJ HW (Íñigo Huguet) [2043453] - iwlwifi: Fix FW name for gl (Íñigo Huguet) [2043453] - iwlwifi: Read the correct addresses when getting the crf id (Íñigo Huguet) [2043453] - iwlwifi: pcie: add jacket bit to device configuration parsing (Íñigo Huguet) [2043453] - iwlwifi: add new ax1650 killer device (Íñigo Huguet) [2043453] - iwlwifi: add new Qu-Hr device (Íñigo Huguet) [2043453] - iwlwifi: add missing entries for Gf4 with So and SoF (Íñigo Huguet) [2043453] - iwlwifi: remove unused iwlax210_2ax_cfg_so_hr_a0 structure (Íñigo Huguet) [2043453] - iwlwifi: add support for Bz-Z HW (Íñigo Huguet) [2043453] - iwlwifi: support 4-bits in MAC step value (Íñigo Huguet) [2043453] - iwlwifi: mvm: Increase the scan timeout guard to 30 seconds (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing() (Íñigo Huguet) [2043453] - mt76: mt7921: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2043453] - ath11k: Fix unexpected return buffer manager error for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Fix napi related hang (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fix issue with new DBGI_SRAM region read. (Íñigo Huguet) [2043453] - iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix AUX ROC removal (Íñigo Huguet) [2043453] - iwlwifi: mvm: set protected flag only for NDP ranging (Íñigo Huguet) [2043453] - iwlwifi: mvm: perform 6GHz passive scan after suspend (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix calculation of frame length (Íñigo Huguet) [2043453] - iwlwifi: mvm: test roc running status bits before removing the sta (Íñigo Huguet) [2043453] - iwlwifi: don't pass actual WGDS revision number in table_revision (Íñigo Huguet) [2043453] - iwlwifi: fix leaks/bad data after failed firmware load (Íñigo Huguet) [2043453] - iwlwifi: fix debug TLV parsing (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix 32-bit build in FTM (Íñigo Huguet) [2043453] - iwlwifi: fix Bz NMI behaviour (Íñigo Huguet) [2043453] - rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled (Íñigo Huguet) [2043453] - rtw88: 8822c: update rx settings to prevent potential hw deadlock (Íñigo Huguet) [2043453] - rtw88: Disable PCIe ASPM while doing NAPI poll on 8821CE (Íñigo Huguet) [2043453] - ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() (Íñigo Huguet) [2043453] - ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() (Íñigo Huguet) [2043453] - mac80211: fix FEC flag in radio tap header (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible resume failure (Íñigo Huguet) [2043453] - mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files (Íñigo Huguet) [2043453] - mt76: mt7921: fix network buffer leak by txs missing (Íñigo Huguet) [2043453] - mt76: mt7615: clear mcu error interrupt status on mt7663 (Íñigo Huguet) [2043453] - mt76: connac: fix last_chan configuration in mt76_connac_mcu_rate_txpower_band (Íñigo Huguet) [2043453] - mt76: mt7921: use correct iftype data on 6GHz cap init (Íñigo Huguet) [2043453] - mt76: mt7921: fix boolreturn.cocci warning (Íñigo Huguet) [2043453] - mt76: mt7615: fix unused tx antenna mask in testmode (Íñigo Huguet) [2043453] - mt76: fix the wiphy's available antennas to the correct value (Íñigo Huguet) [2043453] - mt76: connac: fix a theoretical NULL pointer dereference in mt76_connac_get_phy_mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix possible NULL pointer dereference in mt7921_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: fix possible OOB issue in mt76_calculate_default_rate (Íñigo Huguet) [2043453] - mt76: debugfs: fix queue reporting for mt76-usb (Íñigo Huguet) [2043453] - mt76: mt7915: fix SMPS operation fail (Íñigo Huguet) [2043453] - mt76: mt7915: fix return condition in mt7915_tm_reg_backup_restore() (Íñigo Huguet) [2043453] - mt76: mt7921: fix MT7921E reset failure (Íñigo Huguet) [2043453] - mt76: mt7615: fix possible deadlock while mt7615_register_ext_phy() (Íñigo Huguet) [2043453] - mt76: mt7921: drop offload_flags overwritten (Íñigo Huguet) [2043453] - mt76: mt7915: get rid of mt7915_mcu_set_fixed_rate routine (Íñigo Huguet) [2043453] - bus: mhi: core: Use correctly sized arguments for bit field (Íñigo Huguet) [2043453] - bus: mhi: core: Fix race while handling SYS_ERR at power up (Íñigo Huguet) [2043453] - bus: mhi: core: Fix reading wake_capable channel configuration (Íñigo Huguet) [2043453] - bus: mhi: core: Minor style and comment fixes (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Graceful shutdown on freeze (Íñigo Huguet) [2043453] - ath11k: Fix a NULL pointer dereference in ath11k_mac_op_hw_scan() (Íñigo Huguet) [2043453] - mt76: remove variable set but not used (Íñigo Huguet) [2043453] - ath11k: Fix deleting uninitialized kernel timer during fragment cache flush (Íñigo Huguet) [2043453] - ath11k: add spectral/CFR buffer validation support (Íñigo Huguet) [2043453] - ath11k: Fix buffer overflow when scanning with extraie (Íñigo Huguet) [2043453] - mwifiex: Fix possible ABBA deadlock (Íñigo Huguet) [2043453] - ath10k: fix scan abort when duration is set for hw scan (Íñigo Huguet) [2043453] - ath10k: Fix tx hanging (Íñigo Huguet) [2043453] - iwlwifi: acpi: fix wgds rev 3 size (Íñigo Huguet) [2043453] - iwlwifi: mvm: avoid clearing a just saved session protection id (Íñigo Huguet) [2043453] - iwlwifi: mvm: Fix wrong documentation for scan request command (Íñigo Huguet) [2043453] - iwlwifi: mvm: synchronize with FW after multicast commands (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix delBA vs. NSSN queue sync race (Íñigo Huguet) [2043453] - ath11k: Fix QMI file type enum value (Íñigo Huguet) [2043453] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - ath10k: Fix the MTU size on QCA9377 SDIO (Íñigo Huguet) [2043453] - wireless: iwlwifi: Fix a double free in iwl_txq_dyn_alloc_dma (Íñigo Huguet) [2043453] - mwifiex: Ignore BTCOEX events from the 88W8897 firmware (Íñigo Huguet) [2043453] - mwifiex: Fix skb_over_panic in mwifiex_usb_recv() (Íñigo Huguet) [2043453] - ath11k: Use host CE parameters for CE interrupts configuration (Íñigo Huguet) [2043453] - ath11k: Fix mon status ring rx tlv processing (Íñigo Huguet) [2043453] - ath11k: skip sending vdev down for channel switch (Íñigo Huguet) [2043453] - ath11k: fix read fail for htt_stats and htt_peer_stats for single pdev (Íñigo Huguet) [2043453] - ath11k: Set IRQ affinity to CPU0 in case of one MSI vector (Íñigo Huguet) [2043453] - ath11k: do not restore ASPM in case of single MSI vector (Íñigo Huguet) [2043453] - ath11k: add support one MSI vector (Íñigo Huguet) [2043453] - ath11k: refactor multiple MSI vector implementation (Íñigo Huguet) [2043453] - ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ (Íñigo Huguet) [2043453] - ath11k: add CE and ext IRQ flag to indicate irq_handler (Íñigo Huguet) [2043453] - ath11k: get msi_data again after request_irq is called (Íñigo Huguet) [2043453] - ath9k: fix intr_txqs setting (Íñigo Huguet) [2043453] - ath11k: add hw_param for wakeup_mhi (Íñigo Huguet) [2043453] - ath11k: reset RSN/WPA present state for open BSS (Íñigo Huguet) [2043453] - ath11k: clear the keys properly via DISABLE_KEY (Íñigo Huguet) [2043453] - ath11k: Fix crash caused by uninitialized TX ring (Íñigo Huguet) [2043453] - ath11k: use cache line aligned buffers for dbring (Íñigo Huguet) [2043453] - ath11k: Fix ETSI regd with weather radar overlap (Íñigo Huguet) [2043453] - ath11k: fix FCS_ERR flag in radio tap header (Íñigo Huguet) [2043453] - ath11k: fix the value of msecs_to_jiffies in ath11k_debugfs_fw_stats_request (Íñigo Huguet) [2043453] - ath11k: fix firmware crash during channel switch (Íñigo Huguet) [2043453] - ath11k: Fix 'unused-but-set-parameter' error (Íñigo Huguet) [2043453] - ath11k: fix DMA memory free in CE pipe cleanup (Íñigo Huguet) [2043453] - ath11k: fix error routine when fallback of add interface fails (Íñigo Huguet) [2043453] - ath11k: fix fw crash due to peer get authorized before key install (Íñigo Huguet) [2043453] - ath11k: Clear auth flag only for actual association in security mode (Íñigo Huguet) [2043453] - ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware (Íñigo Huguet) [2043453] - ath11k: set correct NL80211_FEATURE_DYNAMIC_SMPS for WCN6855 (Íñigo Huguet) [2043453] - mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh (Íñigo Huguet) [2043453] - mac80211: initialize variable have_higher_than_11mbit (Íñigo Huguet) [2043453] - mac80211: fix locking in ieee80211_start_ap error path (Íñigo Huguet) [2043453] - mac80211: do drv_reconfig_complete() before restarting all (Íñigo Huguet) [2043453] - mac80211: mark TX-during-stop for TX in in_reconfig (Íñigo Huguet) [2043453] - mac80211: update channel context before station state (Íñigo Huguet) [2043453] - mac80211: Fix the size used for building probe request (Íñigo Huguet) [2043453] - mac80211: fix lookup when adding AddBA extension element (Íñigo Huguet) [2043453] - mac80211: validate extended element ID is present (Íñigo Huguet) [2043453] - cfg80211: Acquire wiphy mutex on regulatory work (Íñigo Huguet) [2043453] - mac80211: agg-tx: don't schedule_and_wake_txq() under sta->lock (Íñigo Huguet) [2043453] - nl80211: remove reload flag from regulatory_request (Íñigo Huguet) [2043453] - mac80211: send ADDBA requests using the tid/queue of the aggregation session (Íñigo Huguet) [2043453] - bus: mhi: core: Add support for forced PM resume (Íñigo Huguet) [2043453] - mt76: mt7921: fix build regression (Íñigo Huguet) [2043453] - brcmsmac: rework LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: fix LED dependencies (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't crash on invalid rate w/o STA (Íñigo Huguet) [2043453] - bus: mhi: pci_generic: Fix device recovery failed issue (Íñigo Huguet) [2043453] - mt76: fix key pointer overwrite in mt7921s_write_txwi/mt7663_usb_sdio_write_txwi (Íñigo Huguet) [2043453] - rt2x00: do not mark device gone on EPROTO errors during start (Íñigo Huguet) [2043453] - nl80211: reset regdom when reloading regdb (Íñigo Huguet) [2043453] - mac80211: add docs for ssn in struct tid_ampdu_tx (Íñigo Huguet) [2043453] - mac80211: fix a memory leak where sta_info is not freed (Íñigo Huguet) [2043453] - mac80211: set up the fwd_skb->dev for mesh forwarding (Íñigo Huguet) [2043453] - mac80211: fix regression in SSN handling of addba tx (Íñigo Huguet) [2043453] - mac80211: fix rate control for retransmitted frames (Íñigo Huguet) [2043453] - mac80211: track only QoS data frames for admission control (Íñigo Huguet) [2043453] - mac80211: fix TCP performance on mesh interface (Íñigo Huguet) [2043453] - mt76: fix possible pktid leak (Íñigo Huguet) [2043453] - mt76: fix timestamp check in tx_status (Íñigo Huguet) [2043453] - mt76: mt7915: fix NULL pointer dereference in mt7915_get_phy_mode (Íñigo Huguet) [2043453] - iwlwifi: Fix memory leaks in error handling path (Íñigo Huguet) [2043453] - iwlwifi: fix warnings produced by kernel debug options (Íñigo Huguet) [2043453] - iwlwifi: mvm: retry init flow if failed (Íñigo Huguet) [2043453] - iwlwifi: Fix missing error code in iwl_pci_probe() (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix constant-conversion warning (Íñigo Huguet) [2043453] - mac80211: fix throughput LED trigger (Íñigo Huguet) [2043453] - mac80211: fix monitor_sdata RCU/locking assertions (Íñigo Huguet) [2043453] - mac80211: drop check for DONT_REORDER in __ieee80211_select_queue (Íñigo Huguet) [2043453] - mac80211: fix radiotap header generation (Íñigo Huguet) [2043453] - mac80211: do not access the IV when it was stripped (Íñigo Huguet) [2043453] - nl80211: fix radio statistics in survey dump (Íñigo Huguet) [2043453] - cfg80211: call cfg80211_stop_ap when switch from P2P_GO type (Íñigo Huguet) [2043453] - mwifiex: fix division by zero in fw download path (Íñigo Huguet) [2043453] - iwlwifi: bump FW API to 67 for AX devices (Íñigo Huguet) [2043453] - iwlwifi: mvm: extend session protection on association (Íñigo Huguet) [2043453] - iwlwifi: rename CHANNEL_SWITCH_NOA_NOTIF to CHANNEL_SWITCH_START_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection on disassoc (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix WGDS table print in iwl_mvm_chub_update_mcc() (Íñigo Huguet) [2043453] - iwlwifi: rename GEO_TX_POWER_LIMIT to PER_CHAIN_LIMIT_OFFSET_CMD (Íñigo Huguet) [2043453] - iwlwifi: mvm: d3: use internal data representation (Íñigo Huguet) [2043453] - iwlwifi: mvm: update RFI TLV (Íñigo Huguet) [2043453] - iwlwifi: mvm: don't get address of mvm->fwrt just to dereference as a pointer (Íñigo Huguet) [2043453] - iwlwifi: yoyo: support for ROM usniffer (Íñigo Huguet) [2043453] - iwlwifi: fw: uefi: add missing include guards (Íñigo Huguet) [2043453] - iwlwifi: dump host monitor data when NIC doesn't init (Íñigo Huguet) [2043453] - iwlwifi: pcie: simplify iwl_pci_find_dev_info() (Íñigo Huguet) [2043453] - iwlwifi: ACPI: support revision 3 WGDS tables (Íñigo Huguet) [2043453] - iwlwifi: pcie: update sw error interrupt for BZ family (Íñigo Huguet) [2043453] - iwlwifi: add new pci SoF with JF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Use all Rx chains for roaming scan (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove two duplicate PNJ device entries (Íñigo Huguet) [2043453] - iwlwifi: pcie: refactor dev_info lookup (Íñigo Huguet) [2043453] - iwlwifi: pcie: remove duplicate entry (Íñigo Huguet) [2043453] - iwlwifi: pcie: fix killer name matching for AX200 (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix some kerneldoc issues (Íñigo Huguet) [2043453] - ath10k: fix division by zero in send path (Íñigo Huguet) [2043453] - ath10k: fix control-message timeout (Íñigo Huguet) [2043453] - ath10k: fix module load regression with iram-recovery feature (Íñigo Huguet) [2043453] - ath10k: fix invalid dma_addr_t token assignment (Íñigo Huguet) [2043453] - ath11k: change return buffer manager for QCA6390 (Íñigo Huguet) [2043453] - mt76: connac: fix unresolved symbols when CONFIG_PM is unset (Íñigo Huguet) [2043453] - mt76: Make use of the helper macro kthread_run() (Íñigo Huguet) [2043453] - mt76: Print error message when reading EEPROM from mtd failed (Íñigo Huguet) [2043453] - mt76: mt7921: disable 4addr capability (Íñigo Huguet) [2043453] - mt76: mt7915: add debugfs knobs for MCU utilization (Íñigo Huguet) [2043453] - mt76: mt7915: add WA firmware log support (Íñigo Huguet) [2043453] - mt76: mt7915: fix endiannes warning mt7915_mcu_beacon_check_caps (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs fixed-rate knob (Íñigo Huguet) [2043453] - mt76: mt7915: rework .set_bitrate_mask() to support more options (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_mcu_add_he() (Íñigo Huguet) [2043453] - mt76: mt7615: apply cached RF data for DBDC (Íñigo Huguet) [2043453] - mt76: mt7615: mt7622: fix ibss and meshpoint (Íñigo Huguet) [2043453] - mt76: mt7921: fix Wformat build warning (Íñigo Huguet) [2043453] - mt76: mt7921: fix mt7921s Kconfig (Íñigo Huguet) [2043453] - iwlwifi: pnvm: print out the version properly (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat non active regions as unsupported regions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Read acpi dsm to get channel activation bitmap (Íñigo Huguet) [2043453] - iwlwifi: add new device id 7F70 (Íñigo Huguet) [2043453] - iwlwifi: mvm: improve log when processing CSA (Íñigo Huguet) [2043453] - iwlwifi: mvm: set BT-coex high priority for 802.1X/4-way-HS (Íñigo Huguet) [2043453] - iwlwifi: dbg: treat dbgc allocation failure when tlv is missing (Íñigo Huguet) [2043453] - iwlwifi: add new killer devices to the driver (Íñigo Huguet) [2043453] - iwlwifi: mvm: set inactivity timeouts also for PS-poll (Íñigo Huguet) [2043453] - iwlwifi: pcie: try to grab NIC access early (Íñigo Huguet) [2043453] - iwlwifi: mvm: reduce WARN_ON() in TX status path (Íñigo Huguet) [2043453] - iwlwifi: allow rate-limited error messages (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove session protection after auth/assoc (Íñigo Huguet) [2043453] - iwlwifi: remove redundant iwl_finish_nic_init() argument (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add RTS and CTS flags to iwl_tx_cmd_flags. (Íñigo Huguet) [2043453] - iwlwifi: mvm: remove csi from iwl_mvm_pass_packet_to_mac80211() (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new rate_n_flags for REPLY_RX_MPDU_CMD and RX_NO_DATA_NOTIF (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new TX_RSP and COMPRESSED_BA_RES versions (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of BEACON_TEMPLATE_CMD. (Íñigo Huguet) [2043453] - iwlwifi: mvm: Add support for new rate_n_flags in tx_cmd. (Íñigo Huguet) [2043453] - iwlwifi: BZ Family SW reset support (Íñigo Huguet) [2043453] - iwlwifi: BZ Family BUS_MASTER_DISABLE_REQ code duplication (Íñigo Huguet) [2043453] - iwlwifi: yoyo: fw debug config from context info and preset (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support new version of ranging response notification (Íñigo Huguet) [2043453] - iwlwifi: mvm: Support version 3 of tlc_update_notif. (Íñigo Huguet) [2043453] - iwlwifi: mvm: convert old rate & flags to the new format. (Íñigo Huguet) [2043453] - iwlwifi: mvm: add definitions for new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: update definitions due to new rate & flags (Íñigo Huguet) [2043453] - iwlwifi: mvm: scrub key material in firmware dumps (Íñigo Huguet) [2043453] - iwlwifi: parse debug exclude data from firmware file (Íñigo Huguet) [2043453] - iwlwifi: fw dump: add infrastructure for dump scrubbing (Íñigo Huguet) [2043453] - iwlwifi: mvm: correct sta-state logic for TDLS (Íñigo Huguet) [2043453] - iwlwifi: api: fix struct iwl_wowlan_status_v7 kernel-doc (Íñigo Huguet) [2043453] - iwlwifi: fix fw/img.c license statement (Íñigo Huguet) [2043453] - iwlwifi: remove contact information (Íñigo Huguet) [2043453] - iwlwifi: remove MODULE_AUTHOR() statements (Íñigo Huguet) [2043453] - iwlwifi: api: remove unused RX status bits (Íñigo Huguet) [2043453] - iwlwifi: add some missing kernel-doc in struct iwl_fw (Íñigo Huguet) [2043453] - iwlwifi: mvm: Remove antenna c references (Íñigo Huguet) [2043453] - iwlwifi: mvm: add support for 160Mhz in ranging measurements (Íñigo Huguet) [2043453] - iwlwifi: add vendor specific capabilities for some RFs (Íñigo Huguet) [2043453] - iwlwifi: mvm: add lmac/umac PC info in case of error (Íñigo Huguet) [2043453] - iwlwifi: mvm: disable RX-diversity in powersave (Íñigo Huguet) [2043453] - iwlwifi: mvm: fix ieee80211_get_he_iftype_cap() iftype (Íñigo Huguet) [2043453] - iwlwifi: Start scratch debug register for Bz family (Íñigo Huguet) [2043453] - iwlwifi: Add support for more BZ HWs (Íñigo Huguet) [2043453] - iwlwifi: Add support for getting rf id with blank otp (Íñigo Huguet) [2043453] - cfg80211: fix kernel-doc for MBSSID EMA (Íñigo Huguet) [2043453] - mac80211: Prevent AP probing during suspend (Íñigo Huguet) [2043453] - nl80211: Add LC placeholder band definition to nl80211_band (Íñigo Huguet) [2043453] - mac80211: split beacon retrieval functions (Íñigo Huguet) [2043453] - cfg80211: separate get channel number from ies (Íñigo Huguet) [2043453] - mac80211: use ieee80211_bss_get_elem() in most places (Íñigo Huguet) [2043453] - cfg80211: scan: use element finding functions in easy cases (Íñigo Huguet) [2043453] - nl80211: use element finding functions (Íñigo Huguet) [2043453] - mac80211: fils: use cfg80211_find_ext_elem() (Íñigo Huguet) [2043453] - mac80211: fix memory leaks with element parsing (Íñigo Huguet) [2043453] - cfg80211: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - mac80211: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - wireless: mac80211_hwsim: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - mac80211: debugfs: calculate free buffer size correctly (Íñigo Huguet) [2043453] - fq_codel: generalise ce_threshold marking for subset of traffic (Íñigo Huguet) [2043453] - wl3501_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - ray_cs: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - brcmfmac: prepare for const netdev->dev_addr (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2043453] - wireless: use eth_hw_addr_set() (Íñigo Huguet) [2043453] - iwlwifi: cfg: set low-latency-xtal for some integrated So devices (Íñigo Huguet) [2043453] - iwlwifi: pnvm: read EFI data only if long enough (Íñigo Huguet) [2043453] - iwlwifi: pnvm: don't kmemdup() more than we have (Íñigo Huguet) [2043453] - iwlwifi: change all JnP to NO-160 configuration (Íñigo Huguet) [2043453] - iwlwifi: mvm: reset PM state on unsuccessful resume (Íñigo Huguet) [2043453] - mwifiex: Deactive host sleep using HSCFG after it was activated manually (Íñigo Huguet) [2043453] - mwifiex: Send DELBA requests according to spec (Íñigo Huguet) [2043453] - mwifiex: Fix an incorrect comment (Íñigo Huguet) [2043453] - mwifiex: Log an error on command failure during key-material upload (Íñigo Huguet) [2043453] - mwifiex: Don't log error on suspend if wake-on-wlan is disabled (Íñigo Huguet) [2043453] - mt76: mt7915: change max rx len limit of hw modules (Íñigo Huguet) [2043453] - mt76: mt7915: fix missing HE phy cap (Íñigo Huguet) [2043453] - mt76: mt7915: rework mt7915_mcu_sta_muru_tlv() (Íñigo Huguet) [2043453] - mt76: mt7915: enable HE UL MU-MIMO (Íñigo Huguet) [2043453] - mt76: mt7921: add per-vif counters in ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7921: add sta stats accounting in mt7921_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: introduce stats reporting through ethtool (Íñigo Huguet) [2043453] - mt76: mt7921: add some more MIB counters (Íñigo Huguet) [2043453] - mt76: do not reset MIB counters in get_stats callback (Íñigo Huguet) [2043453] - mt76: mt7915: move tx amsdu stats in mib_stats (Íñigo Huguet) [2043453] - mt76: mt7915: run mt7915_get_et_stats holding mt76 mutex (Íñigo Huguet) [2043453] - mt76: move mt76_ethtool_worker_info in mt76 module (Íñigo Huguet) [2043453] - mt76: move mt76_sta_stats in mt76.h (Íñigo Huguet) [2043453] - mt76: mt76x0: correct VHT MCS 8/9 tx power eeprom offset (Íñigo Huguet) [2043453] - mt76: mt7921s: add reset support (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921s support (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mt7921_mcu_send_message (Íñigo Huguet) [2043453] - mt76: mt7921: rely on mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: connac: extend mcu_get_nic_capability (Íñigo Huguet) [2043453] - mt76: sdio: extend sdio module to support CONNAC2 (Íñigo Huguet) [2043453] - mt76: sdio: introduce parse_irq callback (Íñigo Huguet) [2043453] - mt76: sdio: move common code in mt76_sdio module (Íñigo Huguet) [2043453] - mt76: mt7921: use physical addr to unify register access (Íñigo Huguet) [2043453] - mt76: mt7921: make all event parser reusable between mt7921s and mt7921e (Íñigo Huguet) [2043453] - mt76: mt7663s: rely on mcu reg access utility (Íñigo Huguet) [2043453] - mt76: connac: move mcu reg access utility routines in mt76_connac_lib module (Íñigo Huguet) [2043453] - mt76: mt7921: add MT7921_COMMON module (Íñigo Huguet) [2043453] - mt76: mt7921: refactor init.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mcu.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: refactor dma.c to be pcie specific (Íñigo Huguet) [2043453] - mt76: mt7921: refactor mac.c to be bus independent (Íñigo Huguet) [2043453] - mt76: mt7921: add MU EDCA cmd support (Íñigo Huguet) [2043453] - mt76: mt7915: remove dead code in debugfs code (Íñigo Huguet) [2043453] - mt76: sdio: export mt76s_alloc_rx_queue and mt76s_alloc_tx routines (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability for xmit-queue handler (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt76 debugfs sub-dir for ext-phy (Íñigo Huguet) [2043453] - mt76: rely on phy pointer in mt76_register_debugfs_fops routine signature (Íñigo Huguet) [2043453] - mt76: mt7915: set muru platform type (Íñigo Huguet) [2043453] - mt76: mt7915: set VTA bit in tx descriptor (Íñigo Huguet) [2043453] - mt76: mt7915: fix muar_idx in mt7915_mcu_alloc_sta_req() (Íñigo Huguet) [2043453] - mt76: mt7915: rework starec TLV tags (Íñigo Huguet) [2043453] - mt76: mt7915: fix sta_rec_wtbl tag len (Íñigo Huguet) [2043453] - mt76: mt7915: improve starec readability of txbf (Íñigo Huguet) [2043453] - mt76: mt7915: fix txbf starec TLV issues (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_beacon_check_caps() (Íñigo Huguet) [2043453] - mt76: connac: fix possible NULL pointer dereference in mt76_connac_get_phy_mode_v2 (Íñigo Huguet) [2043453] - mt76: do not access 802.11 header in ccmp check for 802.3 rx skbs (Íñigo Huguet) [2043453] - mt76: use a separate CCMP PN receive counter for management frames (Íñigo Huguet) [2043453] - mt76: mt7921: add delay config for sched scan (Íñigo Huguet) [2043453] - mt76: mt7615: fix monitor mode tear down crash (Íñigo Huguet) [2043453] - mt76: debugfs: improve queue node readability (Íñigo Huguet) [2043453] - mt76: mt7915: add twt_stats knob in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: enable twt responder capability (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mac_add_twt_setup routine (Íñigo Huguet) [2043453] - mt76: mt7915: introduce mt7915_mcu_twt_agrt_update mcu command (Íñigo Huguet) [2043453] - mt76: mt7915: introduce __mt7915_get_tsf routine (Íñigo Huguet) [2043453] - mt76: drop MCU header size from buffer size in __mt76_mcu_send_firmware (Íñigo Huguet) [2043453] - mt76: introduce __mt76_mcu_send_firmware routine (Íñigo Huguet) [2043453] - mt76: support reading EEPROM data embedded in fdt (Íñigo Huguet) [2043453] - mt76: schedule status timeout at dma completion (Íñigo Huguet) [2043453] - mt76: substitute sk_buff_head status_list with spinlock_t status_lock (Íñigo Huguet) [2043453] - mt76: remove mt76_wcid pointer from mt76_tx_status_check signature (Íñigo Huguet) [2043453] - mt76: introduce packet_id idr (Íñigo Huguet) [2043453] - mt76: mt7921: add 6GHz support (Íñigo Huguet) [2043453] - mt76: add 6GHz support (Íñigo Huguet) [2043453] - mt76: connac: enable hw amsdu @ 6GHz (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_uni_add_bss (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_sta_tlv (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in single-sku support (Íñigo Huguet) [2043453] - mt76: connac: add 6GHz support to mt76_connac_mcu_set_channel_domain (Íñigo Huguet) [2043453] - mt76: connac: enable 6GHz band for hw scan (Íñigo Huguet) [2043453] - mt76: connac: set 6G phymode in mt76_connac_get_phy_mode{,v2} (Íñigo Huguet) [2043453] - mt76: mt7915: add mib counters to ethtool stats (Íñigo Huguet) [2043453] - mt76: mt7915: add more MIB registers (Íñigo Huguet) [2043453] - mt76: mt7915: add tx mu/su counters to mib (Íñigo Huguet) [2043453] - mt76: mt7915: add some per-station tx stats to ethtool (Íñigo Huguet) [2043453] - mt76: mt7915: add tx stats gathered from tx-status callbacks (Íñigo Huguet) [2043453] - mt76: mt7915: add ethtool stats support (Íñigo Huguet) [2043453] - mt76: mt7921: fix retrying release semaphore without end (Íñigo Huguet) [2043453] - mt76: mt7921: robustify hardware initialization flow (Íñigo Huguet) [2043453] - mt76: mt7915: fix possible infinite loop release semaphore (Íñigo Huguet) [2043453] - mt76: mt7915: honor all possible error conditions in mt7915_mcu_init() (Íñigo Huguet) [2043453] - mt76: move spin_lock_bh to spin_lock in tasklet (Íñigo Huguet) [2043453] - mt76: mt7921: remove mt7921_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7921: remove mcu rate reporting code (Íñigo Huguet) [2043453] - mt76: mt7921: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7921: add support for tx status reporting (Íñigo Huguet) [2043453] - mt76: mt7921: start reworking tx rate reporting (Íñigo Huguet) [2043453] - mt76: mt7615: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: fix hwmon temp sensor mem use-after-free (Íñigo Huguet) [2043453] - mt76: mt7915: enable configured beacon tx rate (Íñigo Huguet) [2043453] - mt76: disable BH around napi_schedule() calls (Íñigo Huguet) [2043453] - mt76: fill boottime_ns in Rx path (Íñigo Huguet) [2043453] - mt76: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2043453] - mt76: fix boolreturn.cocci warnings (Íñigo Huguet) [2043453] - mt76: mt7921: update mib counters dumping phy stats (Íñigo Huguet) [2043453] - mt76: mt7921: always wake device if necessary in debugfs (Íñigo Huguet) [2043453] - mt76: mt7915: rename debugfs tx-queues (Íñigo Huguet) [2043453] - mt76: mt7915: rework debugfs queue info (Íñigo Huguet) [2043453] - mt76: mt7921: move mt7921_queue_rx_skb to mac.c (Íñigo Huguet) [2043453] - mt76: mt7915: fix WMM index on DBDC cards (Íñigo Huguet) [2043453] - mt76: mt7915: improve code readability in mt7915_mcu_sta_bfer_ht (Íñigo Huguet) [2043453] - mt76: mt7915: introduce bss coloring support (Íñigo Huguet) [2043453] - mt76: mt7915: add LED support (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential NPE in TXS processing (Íñigo Huguet) [2043453] - mt76: mt7915: fix he_mcs capabilities for 160mhz (Íñigo Huguet) [2043453] - mt76: use IEEE80211_OFFLOAD_ENCAP_ENABLED instead of MT_DRV_AMSDU_OFFLOAD (Íñigo Huguet) [2043453] - mt76: mt7915: update mac timing settings (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warnings in mt7921_mac_decode_he_mu_radiotap (Íñigo Huguet) [2043453] - mt76: mt7921: fix kernel warning from cfg80211_calculate_bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix firmware usage of RA info using legacy rates (Íñigo Huguet) [2043453] - mt76: mt7915: add HE-LTF into fixed rate command (Íñigo Huguet) [2043453] - mt76: mt7921: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt7615: move mt7615_mcu_set_p2p_oppps in mt76_connac module (Íñigo Huguet) [2043453] - mt76: overwrite default reg_ops if necessary (Íñigo Huguet) [2043453] - mt76: mt7921: introduce mt7921_mcu_set_beacon_filter utility routine (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of mt7921_mac_set_beacon_filter (Íñigo Huguet) [2043453] - mt76: mt7921: get rid of monitor_vif (Íñigo Huguet) [2043453] - mt76: connac: add support for limiting to maximum regulatory Tx power (Íñigo Huguet) [2043453] - mt76: connac: fix GTK rekey offload failure on WPA mixed mode (Íñigo Huguet) [2043453] - mt76: mt7921: fix dma hang in rmmod (Íñigo Huguet) [2043453] - mt76: add support for setting mcast rate (Íñigo Huguet) [2043453] - mt76: mt7915: fix bit fields for HT rate idx (Íñigo Huguet) [2043453] - mt76: mt7915: switch proper tx arbiter mode in testmode (Íñigo Huguet) [2043453] - mt76: mt7915: fix potential overflow of eeprom page index (Íñigo Huguet) [2043453] - mt76: mt7921: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: send EAPOL frames at lowest rate (Íñigo Huguet) [2043453] - mt76: mt7915: add control knobs for thermal throttling (Íñigo Huguet) [2043453] - mt76: mt7921: Add mt7922 support (Íñigo Huguet) [2043453] - mt76: mt7615: fix skb use-after-free on mac reset (Íñigo Huguet) [2043453] - mt76: mt7921: Fix out of order process by invalid event pkt (Íñigo Huguet) [2043453] - mt76: mt7915: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: mt7921: fix mgmt frame using unexpected bitrate (Íñigo Huguet) [2043453] - mt76: add mt76_default_basic_rate more devices can rely on (Íñigo Huguet) [2043453] - mt76: mt7921: introduce testmode support (Íñigo Huguet) [2043453] - mt76: mt7915: remove mt7915_sta_stats (Íñigo Huguet) [2043453] - mt76: mt7915: report tx rate directly from tx status (Íñigo Huguet) [2043453] - mt76: mt7915: cleanup -Wunused-but-set-variable (Íñigo Huguet) [2043453] - mt76: mt7915: take RCU read lock when calling ieee80211_bss_get_elem() (Íñigo Huguet) [2043453] - mt76: mt7915: fix an off-by-one bound check (Íñigo Huguet) [2043453] - mt76: mt7921: add .set_sar_specs support (Íñigo Huguet) [2043453] - mt76: mt7915: adapt new firmware to update BA winsize for Rx session (Íñigo Huguet) [2043453] - mt76: mt7915: report HE MU radiotap (Íñigo Huguet) [2043453] - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c (Íñigo Huguet) [2043453] - mt76: mt7921: fix survey-dump reporting (Íñigo Huguet) [2043453] - mt76: fix build error implicit enumeration conversion (Íñigo Huguet) [2043453] - mt76: mt7921: enable aspm by default (Íñigo Huguet) [2043453] - mt76: connac: fix mt76_connac_gtk_rekey_tlv usage (Íñigo Huguet) [2043453] - mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter (Íñigo Huguet) [2043453] - mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal() (Íñigo Huguet) [2043453] - mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness warning in mt7921_update_txs (Íñigo Huguet) [2043453] - mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb (Íñigo Huguet) [2043453] - mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event (Íñigo Huguet) [2043453] - mwifiex: Try waking the firmware until we get an interrupt (Íñigo Huguet) [2043453] - mwifiex: Read a PCI register after writing the TX ring write pointer (Íñigo Huguet) [2043453] - fq_codel: implement L4S style ce_threshold_ect1 marking (Íñigo Huguet) [2043453] - net: add skb_get_dsfield() helper (Íñigo Huguet) [2043453] - wireless: Remove redundant 'flush_workqueue()' calls (Íñigo Huguet) [2043453] - mt7601u: Remove redundant initialization of variable ret (Íñigo Huguet) [2043453] - rtlwifi: rtl8192ee: Remove redundant initialization of variable version (Íñigo Huguet) [2043453] - ath10k: fix max antenna gain unit (Íñigo Huguet) [2043453] - ath9k: fix an IS_ERR() vs NULL check (Íñigo Huguet) [2043453] - ath11k: Identify DFS channel when sending scan channel list command (Íñigo Huguet) [2043453] - ath9k: support DT ieee80211-freq-limit property to limit channels (Íñigo Huguet) [2043453] - ath11k: Change number of TCL rings to one for QCA6390 (Íñigo Huguet) [2043453] - ath11k: Handle MSI enablement during rmmod and SSR (Íñigo Huguet) [2043453] - ath: dfs_pattern_detector: Fix possible null-pointer dereference in channel_detector_create() (Íñigo Huguet) [2043453] - ath11k: Use kcalloc() instead of kzalloc() (Íñigo Huguet) [2043453] - ath11k: Remove redundant assignment to variable fw_size (Íñigo Huguet) [2043453] - ath11k: fix m68k and xtensa build failure in ath11k_peer_assoc_h_smps() (Íñigo Huguet) [2043453] - ath11k: Fix spelling mistake "incompaitiblity" -> "incompatibility" (Íñigo Huguet) [2043453] - ath11k: Remove unused variable in ath11k_dp_rx_mon_merg_msdus() (Íñigo Huguet) [2043453] - ath9k: Fix potential interrupt storm on queue reset (Íñigo Huguet) [2043453] - ath9k: add option to reset the wifi chip via debugfs (Íñigo Huguet) [2043453] - ath10k: Don't always treat modem stop events as crashes (Íñigo Huguet) [2043453] - rtl8xxxu: Use lower tx rates for the ack packet (Íñigo Huguet) [2043453] - brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet (Íñigo Huguet) [2043453] - rtw88: refine fw_crash debugfs to show non-zero while triggering (Íñigo Huguet) [2043453] - rtw88: fix RX clock gate setting while fifo dump (Íñigo Huguet) [2043453] - net: qrtr: combine nameservice into main module (Íñigo Huguet) [2043453] - ath10k: sdio: Add missing BH locking around napi_schdule() (Íñigo Huguet) [2043453] - ath10k: Fix missing frame timestamp for beacon/probe-resp (Íñigo Huguet) [2043453] - ath10k: high latency fixes for beacon buffer (Íñigo Huguet) [2043453] - ath11k: Change DMA_FROM_DEVICE to DMA_TO_DEVICE when map reinjected packets (Íñigo Huguet) [2043453] - ath11k: support SMPS configuration for 6 GHz (Íñigo Huguet) [2043453] - ath11k: add 6 GHz params in peer assoc command (Íñigo Huguet) [2043453] - ieee80211: Add new A-MPDU factor macro for HE 6 GHz peer caps (Íñigo Huguet) [2043453] - ath11k: indicate to mac80211 scan complete with aborted flag for ATH11K_SCAN_STARTING state (Íñigo Huguet) [2043453] - ath11k: indicate scan complete for scan canceled when scan running (Íñigo Huguet) [2043453] - ath11k: add handler for scan event WMI_SCAN_EVENT_DEQUEUED (Íñigo Huguet) [2043453] - ath11k: add HTT stats support for new stats (Íñigo Huguet) [2043453] - ath11k: Change masking and shifting in htt stats (Íñigo Huguet) [2043453] - ath11k: Remove htt stats fixed size array usage (Íñigo Huguet) [2043453] - ath11k: Replace HTT_DBG_OUT with scnprintf (Íñigo Huguet) [2043453] - ath11k: Rename macro ARRAY_TO_STRING to PRINT_ARRAY_TO_BUF (Íñigo Huguet) [2043453] - ath11k: Fix memory leak in ath11k_qmi_driver_event_work (Íñigo Huguet) [2043453] - ath11k: Fix inaccessible debug registers (Íñigo Huguet) [2043453] - ath11k: Drop MSDU with length error in DP rx path (Íñigo Huguet) [2043453] - ath11k: copy cap info of 6G band under WMI_HOST_WLAN_5G_CAP for WCN6855 (Íñigo Huguet) [2043453] - ath11k: enable 6G channels for WCN6855 (Íñigo Huguet) [2043453] - ath11k: re-enable ht_cap/vht_cap for 5G band for WCN6855 (Íñigo Huguet) [2043453] - ath11k: fix survey dump collection in 6 GHz (Íñigo Huguet) [2043453] - ath11k: fix packet drops due to incorrect 6 GHz freq value in rx status (Íñigo Huguet) [2043453] - ath11k: add channel 2 into 6 GHz channel list (Íñigo Huguet) [2043453] - mac80211: MBSSID support in interface handling (Íñigo Huguet) [2043453] - ath11k: Add wmi peer create conf event in wmi_tlv_event_id (Íñigo Huguet) [2043453] - ath11k: Avoid "No VIF found" warning message (Íñigo Huguet) [2043453] - ath11k: Fix crash during firmware recovery on reo cmd ring access (Íñigo Huguet) [2043453] - ath11k: Assign free_vdev_map value before ieee80211_register_hw (Íñigo Huguet) [2043453] - ath11k: Add vdev start flag to disable hardware encryption (Íñigo Huguet) [2043453] - ath11k: Avoid race during regd updates (Íñigo Huguet) [2043453] - ath11k: Avoid reg rules update during firmware recovery (Íñigo Huguet) [2043453] - ath11k: Update pdev tx and rx firmware stats (Íñigo Huguet) [2043453] - ath11k: Fix pktlog lite rx events (Íñigo Huguet) [2043453] - ath11k: Add support for RX decapsulation offload (Íñigo Huguet) [2043453] - ath11k: fix some sleeping in atomic bugs (Íñigo Huguet) [2043453] - ath11k: qmi: avoid error messages when dma allocation fails (Íñigo Huguet) [2043453] - ath11k: Replace one-element array with flexible-array member (Íñigo Huguet) [2043453] - ath11k: add caldata download support from EEPROM (Íñigo Huguet) [2043453] - ath11k: add caldata file for multiple radios (Íñigo Huguet) [2043453] - ath11k: clean up BDF download functions (Íñigo Huguet) [2043453] - ath11k: use hw_params to access board_size and cal_offset (Íñigo Huguet) [2043453] - ath11k: Wstringop-overread warning (Íñigo Huguet) [2043453] - ath11k: Add spectral scan support for QCN9074 (Íñigo Huguet) [2043453] - ath11k: Fix the spectral minimum FFT bin count (Íñigo Huguet) [2043453] - ath11k: Introduce spectral hw configurable param (Íñigo Huguet) [2043453] - ath11k: Refactor spectral FFT bin size (Íñigo Huguet) [2043453] - ath11k: add support for 80P80 and 160 MHz bandwidth (Íñigo Huguet) [2043453] - ath11k: add support for setting fixed HE rate/gi/ltf (Íñigo Huguet) [2043453] - nl80211: MBSSID and EMA support in AP mode (Íñigo Huguet) [2043453] - nl80211: don't kfree() ERR_PTR() value (Íñigo Huguet) [2043453] - cfg80211: always free wiphy specific regdomain (Íñigo Huguet) [2043453] - mac80211: save transmit power envelope element and power constraint (Íñigo Huguet) [2043453] - mac80211: add parse regulatory info in 6 GHz operation information (Íñigo Huguet) [2043453] - ieee80211: add power type definition for 6 GHz (Íñigo Huguet) [2043453] - mac80211: twt: don't use potentially unaligned pointer (Íñigo Huguet) [2043453] - cfg80211: AP mode driver offload for FILS association crypto (Íñigo Huguet) [2043453] - ath11k: monitor mode clean up to use separate APIs (Íñigo Huguet) [2043453] - ath11k: add separate APIs for monitor mode (Íñigo Huguet) [2043453] - ath11k: move static function ath11k_mac_vdev_setup_sync to top (Íñigo Huguet) [2043453] - rtw88: 8821c: correct 2.4G tx power for type 2/4 NIC (Íñigo Huguet) [2043453] - rtw88: 8821c: support RFE type4 wifi NIC (Íñigo Huguet) [2043453] - brcmfmac: Replace zero-length array with flexible array member (Íñigo Huguet) [2043453] - mac80211_hwsim: enable 6GHz channels (Íñigo Huguet) [2043453] - mac80211: use ieee802_11_parse_elems() in ieee80211_prep_channel() (Íñigo Huguet) [2043453] - nl80211: don't put struct cfg80211_ap_settings on stack (Íñigo Huguet) [2043453] - mac80211: always allocate struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mlme: find auth challenge directly (Íñigo Huguet) [2043453] - mac80211: move CRC into struct ieee802_11_elems (Íñigo Huguet) [2043453] - mac80211: mesh: clean up rx_bcn_presp API (Íñigo Huguet) [2043453] - mac80211: reduce stack usage in debugfs (Íñigo Huguet) [2043453] - nl80211: prefer struct_size over open coded arithmetic (Íñigo Huguet) [2043453] - mac80211: check hostapd configuration parsing twt requests (Íñigo Huguet) [2043453] - cfg80211: honour V=1 in certificate code generation (Íñigo Huguet) [2043453] - rt2x00: remove duplicate USB device ID (Íñigo Huguet) [2043453] - mwifiex: Fix copy-paste mistake when creating virtual interface (Íñigo Huguet) [2043453] - mwifiex: Properly initialize private structure on interface type changes (Íñigo Huguet) [2043453] - mwifiex: Handle interface type changes from AP to STATION (Íñigo Huguet) [2043453] - mwifiex: Allow switching interface type from P2P_CLIENT to P2P_GO (Íñigo Huguet) [2043453] - mwifiex: Update virtual interface counters right after setting bss_type (Íñigo Huguet) [2043453] - mwifiex: Use helper function for counting interface types (Íñigo Huguet) [2043453] - mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type (Íñigo Huguet) [2043453] - mwifiex: Use function to check whether interface type change is allowed (Íñigo Huguet) [2043453] - mwifiex: Small cleanup for handling virtual interface type changes (Íñigo Huguet) [2043453] - rtw88: move adaptivity mechanism to firmware (Íñigo Huguet) [2043453] - rtw88: support adaptivity for ETSI/JP DFS region (Íñigo Huguet) [2043453] - rtw88: add regulatory strategy by chip type (Íñigo Huguet) [2043453] - rtw88: upgrade rtw_regulatory mechanism and mapping (Íñigo Huguet) [2043453] - brcmfmac: fix incorrect error prints (Íñigo Huguet) [2043453] - ath11k: Align bss_chan_info structure with firmware (Íñigo Huguet) [2043453] - ath11k: add support in survey dump with bss_chan_info (Íñigo Huguet) [2043453] - ath11k: Rename atf_config to flag1 in target_resource_config (Íñigo Huguet) [2043453] - ath11k: fix 4addr multicast packet tx (Íñigo Huguet) [2043453] - ath11k: fix 4-addr tx failure for AP and STA modes (Íñigo Huguet) [2043453] - ath9k: owl-loader: fetch pci init values through nvmem (Íñigo Huguet) [2043453] - ath9k: fetch calibration data via nvmem subsystem (Íñigo Huguet) [2043453] - ath9k: Use tasklet_disable_in_atomic() (Íñigo Huguet) [2043453] - mt76: fix wrong conflict resolution in previous backport (Íñigo Huguet) [2043453] - mac80211: Allow HE operation to be longer than expected. (Íñigo Huguet) [2043453] - revert ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [2043453] - RDMA/mlx5: Delete right entry from MR signature database (Amir Tzin) [1982191] - net/mlx5e: Fix select queue to consider SKBTX_HW_TSTAMP (Amir Tzin) [1982191] - net/mlx5e: Don't update netdev RQs with PTP-RQ (Amir Tzin) [1982191] - net/mlx5e: Fix an error code in mlx5e_arfs_create_tables() (Amir Tzin) [1982191] - net/mlx5e: Fix conflict with HW TS and CQE compression (Amir Tzin) [1982191] - net/mlx5e: Fix HW TS with CQE compression according to profile (Amir Tzin) [1982191] - mlx5e: add add missing BH locking around napi_schdule() (Amir Tzin) [1982191] - net/mlx5: Don't overwrite HCA capabilities when setting MSI-X count (Amir Tzin) [1982191] - net/mlx5: Fix err prints and return when creating termination table (Amir Tzin) [1982191] - RDMA/mlx5: Verify that DM operation is reasonable (Amir Tzin) [1982191] - RDMA/mlx5: Expose private query port (Amir Tzin) [1982191] - RDMA/mlx5: Fix type assignment for ICM DM (Amir Tzin) [1982191] - net/mlx5: DR, Add support for isolate_vl_tc QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for force-loopback QP (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching tunnel GTP-U (Amir Tzin) [1982191] - net/mlx5: DR, Set flex parser for TNL_MPLS dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for matching on geneve TLV option (Amir Tzin) [1982191] - net/mlx5: DR, Set STEv0 ICMP flex parser dynamically (Amir Tzin) [1982191] - net/mlx5: DR, Add support for dynamic flex parser (Amir Tzin) [1982191] - net/mlx5: DR, Remove protocol-specific flex_parser_3 definitions (Amir Tzin) [1982191] - net/mlx5: mlx5_ifc updates for flex parser (Amir Tzin) [1982191] - net/mlx5: E-Switch, Improve error messages in term table creation (Amir Tzin) [1982191] - net/mlx5: DR, Rename an argument in dr_rdma_segments (Amir Tzin) [1982191] - net/mlx5e: RX, Add checks for calculated Striding RQ attributes (Amir Tzin) [1982191] - net/mlx5e: Fix possible non-initialized struct usage (Amir Tzin) [1982191] - mlx5: implement ethtool standard stats (Amir Tzin) [1982191] - net/mlx5: Enhance diagnostics info for TX/RX reporters (Amir Tzin) [1982191] - net/mlx5: Add helper to initialize 1PPS (Amir Tzin) [1982191] - net/mlx5e: Add ethtool extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Add register layout to support extended link state (Amir Tzin) [1982191 1982232] - net/mlx5: Allocate FC bulk structs with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5e: Cleanup safe switch channels API by passing params (Amir Tzin) [1982191] - net/mlx5e: Refactor on-the-fly configuration changes (Amir Tzin) [1982191] - net/mlx5e: Use mlx5e_safe_switch_channels when channels are closed (Amir Tzin) [1982191] - net/mlx5e: Allow mlx5e_safe_switch_channels to work with channels closed (Amir Tzin) [1982191] - mlx5: implement ethtool::get_fec_stats (Amir Tzin) [1982191] - net/mlx5e: Fix RQ creation flow for queues which doesn't support XDP (Amir Tzin) [1982191] - net/mlx5: Remove return statement exist at the end of void function (Amir Tzin) [1982191] - net/mlx5: Add a blank line after declarations (Amir Tzin) [1982191] - net/mlx5: DR, Alloc cmd buffer with kvzalloc() instead of kzalloc() (Amir Tzin) [1982191] - net/mlx5: DR, Use variably sized data structures for different actions (Amir Tzin) [1982191] - RDMA/mlx5: Expose UAPI to query DM (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support in MEMIC operations (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Add support to MODIFY_MEMIC command (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Re-organize the DM code (Amir Tzin) [1982191 1926606 1926603] - RDMA/mlx5: Move all DM logic to separate file (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add MEMIC operations related bits (Amir Tzin) [1982191 1926606 1926603] - net/mlx5: Add support for DSFP module EEPROM dumps (Amir Tzin) [1982191 1982233] - net/mlx5: Implement get_module_eeprom_by_page() (Amir Tzin) [1982191 1982233] - net/mlx5: Refactor module EEPROM query (Amir Tzin) [1982191 1982233] - IB/mlx5: Reduce max order of memory allocated for xlt update (Amir Tzin) [1982191] - net/mlx5: Implement sriov_get_vf_total_msix/count() callbacks (Amir Tzin) [1982191 1982230] - net/mlx5: Dynamically assign MSI-X vectors count (Amir Tzin) [1982191 1982230] - net/mlx5: Add dynamic MSI-X capabilities bits (Amir Tzin) [1982191 1982230] - net/mlx5e: Dynamic alloc vlan table for netdev when needed (Amir Tzin) [1982191] - net/mlx5e: Dynamic alloc arfs table for netdev when needed (Amir Tzin) [1982191] - net/mlx5: Use ida_alloc_range() instead of ida_simple_alloc() (Amir Tzin) [1982191] - net/mlx5e: Update ethtool setting of CQE compression (Amir Tzin) [1982191] - net/mlx5e: Allow coexistence of CQE compression and HW TS PTP (Amir Tzin) [1982191] - net/mlx5e: Add PTP Flow Steering support (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering ANY API (Amir Tzin) [1982191] - net/mlx5e: Introduce Flow Steering UDP API (Amir Tzin) [1982191] - net/mlx5e: Cleanup Flow Steering level (Amir Tzin) [1982191] - net/mlx5e: Add PTP RQ to RX reporter (Amir Tzin) [1982191] - net/mlx5e: Refactor RX reporter diagnostics (Amir Tzin) [1982191] - net:mlx5e: Add PTP-TIR and PTP-RQT (Amir Tzin) [1982191] - net/mlx5e: Add PTP-RX statistics (Amir Tzin) [1982191] - net/mlx5e: Add RQ to PTP channel (Amir Tzin) [1982191] - net/mlx5e: Add states to PTP channel (Amir Tzin) [1982191] - RDMA/mlx5: Set ODP caps only if device profile support ODP (Amir Tzin) [1982191] - net/mlx5e: Cleanup PTP (Amir Tzin) [1982191] - net/mlx5e: Generalize PTP implementation (Amir Tzin) [1982191] - net/mlx5e: Generalize direct-TIRs and direct-RQTs API (Amir Tzin) [1982191] - net/mlx5e: Generalize close RQ (Amir Tzin) [1982191] - net/mlx5e: Generalize RQ activation (Amir Tzin) [1982191] - net/mlx5e: Generalize open RQ (Amir Tzin) [1982191] - net/mlx5: Add helper to set time-stamp translator on a queue (Amir Tzin) [1982191] - net/mlx5e: Allow creating mpwqe info without channel (Amir Tzin) [1982191] - net/mlx5e: alloc the correct size for indirection_rqt (Amir Tzin) [1982191] - net: ethernet: indir_table.h is included twice (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Create ODP EQ only when ODP MR is created (Amir Tzin) [1982191] - RDMA/mlx5: Add missing returned error check of mlx5_ib_dereg_mr (Amir Tzin) [1982191] - net/mlx5: Move devlink port from mlx5e priv to mlx5e resources (Amir Tzin) [1982191] - net/mlx5e: Allow to match on ICMP parameters (Amir Tzin) [1982191] - net/mlx5: Display the command index in command mailbox dump (Amir Tzin) [1982191] - net/mlx5e: allocate 'indirection_rqt' buffer dynamically (Amir Tzin) [1982191] - net/mlx5e: Dump ICOSQ WQE descriptor on CQE with error events (Amir Tzin) [1982191] - net/mlx5e: Use net_prefetchw instead of prefetchw in MPWQE TX datapath (Amir Tzin) [1982191] - net/mlx5e: Remove redundant newline in NL_SET_ERR_MSG_MOD (Amir Tzin) [1982191] - net/mlx5: Read congestion counters from all ports when lag is active (Amir Tzin) [1982191] - net/mlx5: remove unneeded semicolon (Amir Tzin) [1982191] - net/mlx5: DR, Remove unneeded rx_decap_l3 function for STEv1 (Amir Tzin) [1982191] - net/mlx5: Use order-0 allocations for EQs (Amir Tzin) [1982191] - net/mlx5: Add IFC bits needed for single FDB mode (Amir Tzin) [1982191] - net/mlx5: E-Switch, Refactor send to vport to be more generic (Amir Tzin) [1982191 1982195] - RDMA/mlx5: Use representor E-Switch when getting netdev and metadata (Amir Tzin) [1982191] - net/mlx5: E-Switch, Add eswitch pointer to each representor (Amir Tzin) [1982191 1982195] - net/mlx5: E-Switch, Add match on vhca id to default send rules (Amir Tzin) [1982191 1982195] - net/mlx5: Remove unused mlx5_core_health member recover_work (Amir Tzin) [1982191] - net/mlx5: simplify the return expression of mlx5_esw_offloads_pair() (Amir Tzin) [1982191 1982195] - net/mlx5: Cleanup prototype warning (Amir Tzin) [1982191] - RDMA/mlx5: Allow larger pages in DevX umem (Amir Tzin) [1982191] - RDMA/mlx5: Rename mlx5_mr_cache_invalidate() to revoke_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Consolidate MR destruction to mlx5_ib_dereg_mr() (Amir Tzin) [1982191] - RDMA/mlx5: Use a union inside mlx5_ib_mr (Amir Tzin) [1982191] - platform/mellanox: mlxbf-tmfifo: Fix a memory barrier issue (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: : Fix the license information (Amir Tzin) [2018145] - mmc: dw_mmc-bluefield: simplify the probe() function (Amir Tzin) [2018145] - benet: mark device 0xe220 (Lancer) as deprecated (Michal Schmidt) [2054409] - myri10ge: mark as deprecated (Michal Schmidt) [2054409] - liquidio: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - netxen_nic: remove unmaintained mark, keep deprecated (Michal Schmidt) [2054409] - bnx2: mark as deprecated, not unmaintained (Michal Schmidt) [2054409] - SUNRPC: Don't dereference xprt->snd_task if it's a cookie (Dave Wysochanski) [2046545] - SUNRPC: Add source address/port to rpc_socket* traces (Dave Wysochanski) [2046545] - netfilter: conntrack: re-init state for retransmitted syn-ack (Florian Westphal) [2043093] - netfilter: conntrack: move synack init code to helper (Florian Westphal) [2043093]- ibmvnic: remove unused defines (Diego Domingos) [2047920] - ibmvnic: Update driver return codes (Diego Domingos) [2047920] - ARM: iop32x: disable N2100 PCI parity reporting (Josef Oskera) [2031880] - r8169: fix incorrect mac address assignment (Josef Oskera) [2031880] - r8169: Add device 10ec:8162 to driver r8169 (Josef Oskera) [2031880] - ethernet: r8169: use eth_hw_addr_set() (Josef Oskera) [2031880] - net: phy: realtek: add support for RTL8365MB-VC internal PHYs (Josef Oskera) [2031880] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Josef Oskera) [2031880] - r8169: enable ASPM L0s state (Josef Oskera) [2031880] - r8169: rename rtl_csi_access_enable to rtl_set_aspm_entry_latency (Josef Oskera) [2031880] - r8169: change the L0/L1 entrance latencies for RTL8106e (Josef Oskera) [2031880] - Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM" (Josef Oskera) [2031880] - r8169: Avoid duplicate sysfs entry creation error (Josef Oskera) [2031880] - r8169: Avoid memcpy() over-reading of ETH_SS_STATS (Josef Oskera) [2031880] - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM (Josef Oskera) [2031880] - net: phy: realtek: net: Fix less than zero comparison of a u16 (Josef Oskera) [2031880] - net: phy: realtek: add delay to fix RXC generation issue (Josef Oskera) [2031880] - net: phy: realtek: add dt property to enable ALDPS mode (Josef Oskera) [2031880] - net: phy: realtek: add dt property to disable CLKOUT clock (Josef Oskera) [2031880] - r8169: Fix fall-through warning for Clang (Josef Oskera) [2031880] - r8169: use KBUILD_MODNAME instead of own module name definition (Josef Oskera) [2031880] - r8169: keep pause settings on interface down/up cycle (Josef Oskera) [2031880] - r8169: add support for pause ethtool ops (Josef Oskera) [2031880] - r8169: use mac-managed PHY PM (Josef Oskera) [2031880] - r8169: remove rtl_hw_start_8168c_3 (Josef Oskera) [2031880] - r8169: add support for ethtool get_ringparam (Josef Oskera) [2031880] - r8169: use lower_32_bits/upper_32_bits macros (Josef Oskera) [2031880] - net: phy: make PHY PM ops a no-op if MAC driver manages PHY PM (Josef Oskera) [2031880] - mm/gup: remove unused get_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm: change lookup_node() to use get_user_pages_fast() (Chris von Recklinghausen) [2048650] - mm/gup: remove unused pin_user_pages_locked() (Chris von Recklinghausen) [2048650] - mm/gup: follow_pfn_pte(): -EEXIST cleanup (Chris von Recklinghausen) [2048650] - mm: fix invalid page pointer returned with FOLL_PIN gups (Chris von Recklinghausen) [2048650] - mm: fix typos in comments (Chris von Recklinghausen) [2048650] - vfio/iommu_type1: replace kfree with kvfree (Alex Williamson) [2046547] - vfio/pci: Fix error return code in vfio_ecap_init() (Alex Williamson) [2046547] - vfio/pci: Add missing range check in vfio_pci_mmap (Alex Williamson) [2046547] - vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer (Alex Williamson) [2046547] - vfio/mdev: Make to_mdev_device() into a static inline (Alex Williamson) [2046547] - vfio/iommu_type1: Mantain a counter for non_pinned_groups (Alex Williamson) [2046547] - vfio/iommu_type1: Fix some sanity checks in detach group (Alex Williamson) [2046547] - vfio/iommu_type1: Populate full dirty when detach non-pinned group (Alex Williamson) [2046547] - vfio/pci: Move dummy_resources_list init in vfio_pci_probe() (Alex Williamson) [2046547] - vfio/virqfd: Drain events from eventfd in virqfd_wakeup() (Alex Williamson) [2046547] - ext4: fix direct I/O read error (Lukas Czerner) [1868258] - usb: xhci: Extend support for runtime power management for AMD's Yellow carp. (Renjith Pananchikkal) [2015775] - usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform (Renjith Pananchikkal) [2015775] - thunderbolt: Enable retry logic for intra-domain control packets (David Arcari) [2028287] - nvme-fabrics: fix state check in nvmf_ctlr_matches_baseopts() (Gopal Tiwari) [2043755] - smb3: do not error on fsync when readonly (Ronnie Sahlberg) [2037811] - cifs: serialize all mount attempts (Ronnie Sahlberg) [2008434] - ALSA: memalloc: Unify x86 SG-buffer handling (take#3) (Jaroslav Kysela) [2049437] - ALSA: usb-audio: add mapping for MSI MPG X570S Carbon Max Wifi. (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop CONFIG_PM ifdefs (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Fix dB level of Bose Revolve+ SoundLink (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Add minimal-mute notion in dB mapping table (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Use int for dB map values (Jaroslav Kysela) [2049437] - ALSA: hda/tegra: Fix Tegra194 HDA reset failure (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Use ALC285_FIXUP_HP_GPIO_LED on another HP laptop (Jaroslav Kysela) [2049437] - ALSA: hda: Add new AlderLake-P variant PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: Add AlderLake-N PCI ID (Jaroslav Kysela) [2049437] - ALSA: hda: use swap() to make code cleaner (Jaroslav Kysela) [2049437] - ALSA: Fix some typo (Jaroslav Kysela) [2049437] - ALSA: hda/hdmi: Consider ELD is invalid when no SAD is present (Jaroslav Kysela) [2049437] - ALSA: hda: Remove redundant runtime PM calls (Jaroslav Kysela) [2049437] - ALSA: hda: Do disconnect jacks at codec unbind (Jaroslav Kysela) [2049437] - ALSA: hda: intel: More comprehensive PM runtime setup for controller driver (Jaroslav Kysela) [2049437] - ASoC: SOF: Intel: fix build issue related to CODEC_PROBE_ENTRIES (Jaroslav Kysela) [2049437] - ASoC: cs42l42: Report initial jack state (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Re-order quirk entries for Lenovo (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add quirk for Legion Y9000X 2020 (Jaroslav Kysela) [2049437] - ALSA: hda/realtek: Add speaker fixup for some Yoga 15ITL5 devices (Jaroslav Kysela) [2049437] - tools headers UAPI: Sync sound/asound.h with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - tools include UAPI: Sync sound/asound.h copy with the kernel sources (Jaroslav Kysela) [2049437] - ASoC: SOF: handle paused streams during system suspend (Jaroslav Kysela) [2049437] - ASoC: SOF: sof-audio: setup sched widgets during pipeline complete step (Jaroslav Kysela) [2049437] - ASoC: SOF: free widgets in sof_tear_down_pipelines() for static pipelines (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Fix Jack detection after resume (Jaroslav Kysela) [2049437] - ALSA: hda/cs8409: Increase delay during jack detection (Jaroslav Kysela) [2049437] - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master after reboot from Windows (Jaroslav Kysela) [2049437] - ASoC: Intel: catpt: Test dmaengine_submit() result before moving on (Jaroslav Kysela) [2049437] - ASoC: amd: Fix dependency for SPI master (Jaroslav Kysela) [2049437] - ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID (Jaroslav Kysela) [2049437] - ALSA: oss: fix compile error when OSS_DEBUG is enabled (Jaroslav Kysela) [2049437] - ALSA: hda: Make proper use of timecounter (Jaroslav Kysela) [2049437] - ALSA: led: Use restricted type for iface assignment (Jaroslav Kysela) [2049437] - ALSA: hda: Fix potential deadlock at codec unbinding (Jaroslav Kysela) [2049437] - ALSA: hda: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: PCM: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ALSA: jack: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2049437] - ASoC: Intel: sof_sdw: fix jack detection on HP Spectre x360 convertible (Jaroslav Kysela) [2049437] - kernel: fork: properly initialize mm->mm_rh in dup_mm() and mm_alloc() (Rafael Aquini) [2047242] - vdpa/mlx5: Fix tracking of current number of VQs (Cindy Lu) [2052849] - vdpa/mlx5: Fix is_index_valid() to refer to features (Cindy Lu) [2052849] - vdpa: Protect vdpa reset with cf_mutex (Cindy Lu) [2052849] - vdpa: Avoid taking cf_mutex lock on get status (Cindy Lu) [2052849] - vdpa/vdpa_sim_net: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Use BIT_ULL for bit operations (Cindy Lu) [2052849] - vdpa/vdpa_sim: Configure max supported virtqueues (Cindy Lu) [2052849] - vdpa/mlx5: Report max device capabilities (Cindy Lu) [2052849] - vdpa: Support reporting max device capabilities (Cindy Lu) [2052849] - vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() (Cindy Lu) [2052849] - vdpa: Add support for returning device configuration information (Cindy Lu) [2052849] - vdpa/mlx5: Support configuring max data virtqueue (Cindy Lu) [2052849] - vdpa/mlx5: Fix config_attr_mask assignment (Cindy Lu) [2052849] - vdpa: Allow to configure max data virtqueues (Cindy Lu) [2052849] - vdpa: Read device configuration only if FEATURES_OK (Cindy Lu) [2052849] - vdpa: Sync calls set/get config/status with cf_mutex (Cindy Lu) [2052849] - vdpa/mlx5: Distribute RX virtqueues in RQT object (Cindy Lu) [2052849] - vdpa: Provide interface to read driver features (Cindy Lu) [2052849] - vdpa/mlx5: Fix wrong configuration of virtio_version_1_0 (Cindy Lu) [2052849] - vdpa: Mark vdpa_config_ops.get_vq_notification as optional (Cindy Lu) [2052849] - vdpa: Avoid duplicate call to vp_vdpa get_status (Cindy Lu) [2052849] - net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU (Cindy Lu) [2052849] - vdpa: add driver_override support (Cindy Lu) [2052849] - docs: document sysfs ABI for vDPA bus (Cindy Lu) [2052849] - ifcvf/vDPA: fix misuse virtio-net device config size for blk dev (Cindy Lu) [2052849] - Revert "efi/libstub: arm64: Double check image alignment at entry" (Vitaly Kuznetsov) [2046303] - ethtool: ioctl: fix potential NULL deref in ethtool_set_coalesce() (William Zhao) [2046342] - cifs: Do not leak EDEADLK to dgetents64 for STATUS_USER_SESSION_DELETED (Ronnie Sahlberg) [1994393] - cifs: constify pathname arguments in a bunch of helpers (Ronnie Sahlberg) [1994393] - cgroup: Use open-time cgroup namespace for process migration perm checks (Chris von Recklinghausen) [2035766] - cgroup: Allocate cgroup_file_ctx for kernfs_open_file->priv (Chris von Recklinghausen) [2035766] - cgroup: Use open-time credentials for process migraton perm checks (Chris von Recklinghausen) [2035766] - cgroup: make per-cgroup pressure stall tracking configurable (Chris von Recklinghausen) [2035766] - powerpc/idle: Don't corrupt back chain when going idle (Laurent Vivier) [2052793] - powerpc64/idle: Fix SP offsets when saving GPRs (Laurent Vivier) [2052793] - sfc: ef10: implement ethtool::get_fec_stats (Íñigo Huguet) [2042798] - sfc: The RX page_ring is optional (Íñigo Huguet) [2042798] - sfc: Check null pointer of rx_queue->page_ring (Íñigo Huguet) [2042798] - sfc_ef100: potential dereference of null pointer (Íñigo Huguet) [2042798] - sfc: Don't use netif_info before net_device setup (Íñigo Huguet) [2042798] - sfc: Export fibre-specific supported link modes (Íñigo Huguet) [2042798] - sfc: Fix reading non-legacy supported link modes (Íñigo Huguet) [2042798] - ethernet: constify references to netdev->dev_addr in drivers (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Íñigo Huguet) [2042798] - ethernet: use eth_hw_addr_set() (Íñigo Huguet) [2042798] - sfc: last resort fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - sfc: fallback for lack of xdp tx queues (Íñigo Huguet) [2042798 1995444] - ext4: fix potential uninitialized access to retval in kmmpd (Lukas Czerner) [2046355] - ext4: fix possible UAF when remounting r/o a mmp-protected file system (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - quota: check block number when reading the block in quota file (Lukas Czerner) [2046999] - quota: correct error number in free_dqentry() (Lukas Czerner) [2046999] - quota: Fix memory leak when handling corrupted quota file (Lukas Czerner) [2046999] - quota: Sanity-check quota file headers on load (Lukas Czerner) [2046999] - quota: clear padding in v2r1_mem2diskdqb() (Lukas Czerner) [2046999] - quota: Check that quota is not dirty before release (Lukas Czerner) [2046999] - quota: fix livelock in dquot_writeback_dquots (Lukas Czerner) [2046999] - ext4: fix e2fsprogs checksum failure for mounted filesystem (Lukas Czerner) [1937180] - ext4: prevent partial update of the extent blocks (Lukas Czerner) [2035877] - ext4: check for inconsistent extents between index and leaf block (Lukas Czerner) [2035877] - ext4: check for out-of-order index extents in ext4_valid_extent_entries() (Lukas Czerner) [2035877] - ext4: avoid trim error on fs with small groups (Lukas Czerner) [2046355] - ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits' (Lukas Czerner) [2046355] - ext4: make sure to reset inode lockdep class when quota enabling fails (Lukas Czerner) [2046355] - ext4: make sure quota gets properly shutdown on error (Lukas Czerner) [2046355] - ext4: Fix BUG_ON in ext4_bread when write quota data (Lukas Czerner) [2046355] - ext4: refresh the ext4_ext_path struct after dropping i_data_sem. (Lukas Czerner) [2046355] - ext4: ensure enough credits in ext4_ext_shift_path_extents (Lukas Czerner) [2046355] - ext4: fix potential infinite loop in ext4_dx_readdir() (Lukas Czerner) [2046355] - ext4: fix loff_t overflow in ext4_max_bitmap_size() (Lukas Czerner) [2046355] - ext4: fix reserved space counter leakage (Lukas Czerner) [2046355] - ext4: fix race writing to an inline_data file while its xattrs are changing (Lukas Czerner) [2046355] - ext4: fix potential htree corruption when growing large_dir directories (Lukas Czerner) [2046355] - ext4: use ext4_grp_locked_error in mb_find_extent (Lukas Czerner) [2046355] - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit (Lukas Czerner) [2046355] - ext4: remove check for zero nr_to_scan in ext4_es_scan() (Lukas Czerner) [2046355] - ext4: return error code when ext4_fill_flex_info() fails (Lukas Czerner) [2046355] - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a transaction handle (Lukas Czerner) [2046355] - ext4: fix kernel infoleak via ext4_extent_header (Lukas Czerner) [2046355] - ext4: fix memory leak in ext4_fill_super (Lukas Czerner) [2046355] - ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed (Lukas Czerner) [2046355] - ext4: fix error code in ext4_commit_super (Lukas Czerner) [2046355] - crash_core, vmcoreinfo: append 'SECTION_SIZE_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - arm64/crash_core: Export TCR_EL1.T1SZ in vmcoreinfo (Pingfan Liu) [2046631] - arm64: kernel: arch_crash_save_vmcoreinfo() should depend on CONFIG_CRASH_CORE (Mark Salter) [2046631] - Revert "[arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo" (Pingfan Liu) [2046631] - crash_core, vmcoreinfo: Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Pingfan Liu) [2046631] - ibmvnic: don't release napi in __ibmvnic_open() (Gustavo Walbon) [2051793]- EDAC/igen6: Add Intel Alder Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel Tiger Lake SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/igen6: Add Intel ICL-NNPI SoC support (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add support for high bandwidth memory (Aristeu Rozanski) [1971965 1783145] - EDAC/i10nm: Add detection of memory levels for ICX/SPR servers (Aristeu Rozanski) [1971965 1783145] - EDAC/skx_common: Add new ADXL components for 2-level memory (Aristeu Rozanski) [1971965 1783145] - EDAC, skx: Retrieve and print retry_rd_err_log registers (Aristeu Rozanski) [1971965 1783145] - EDAC, skx_common: Refactor so that we initialize "dev" in result of adxl decode. (Aristeu Rozanski) [1971965 1783145] - selinux: parse contexts for mount options early (Scott Mayhew) [1984355] - selinux: try to use preparsed sid before calling parse_sid() (Scott Mayhew) [1984355] - selinux: Fix selinux_sb_mnt_opts_compat() (Scott Mayhew) [1984355] - selinux: access superblock_security_struct in LSM blob way (Scott Mayhew) [1984355] - selinux: minor tweaks to selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix potential memleak in selinux_add_opt() (Scott Mayhew) [1984355] - selinux: fix sleeping function called from invalid context (Scott Mayhew) [1984355] - LSM: Infrastructure management of the superblock (Scott Mayhew) [1984355] - selinux: drop super_block backpointer from superblock_security_struct (Scott Mayhew) [1984355] - selinux: remove redundant allocation and helper functions (Scott Mayhew) [1984355] - ath11k: add support for WCN6855 hw2.1 (Íñigo Huguet) [1970036 1988269] - ath11k: add string type to search board data in board-2.bin for WCN6855 (Íñigo Huguet) [1970036 1988269] - firmware: smccc: Fix check for ARCH_SOC_ID not implemented (Vitaly Kuznetsov) [2053450] - bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC (Yauheni Kaliuta) [2051789] - bpf/selftests: disable a verifier test for powerpc (Viktor Malik) [2046032] - bpf/selftests: allow disabling verifier tests (Viktor Malik) [2046032] - vfs: check dentry is still valid in get_link() (Ian Kent) [2014846] - xfs: don't expose internal symlink metadata buffers to the vfs (Brian Foster) [2014846] - scsi: vmw_pvscsi: Set residual data length conditionally (Cathy Avery) [2052345] - scsi: mpt3sas: Fix incorrect system timestamp (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix system going into read-only mode (Tomas Henzl) [2026212] - scsi: mpt3sas: Fix kernel panic during drive powercycle test (Tomas Henzl) [2026212] - scsi: mpt3sas: Clean up some inconsistent indenting (Tomas Henzl) [2026212] - scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state (Ewan D. Milne) [2028290] - blktrace: switch trace spinlock to a raw spinlock (Wander Lairson Costa) [1905749] - blktrace: Fix uaf in blk_trace access after removing by sysfs (Wander Lairson Costa) [1905749] - blk-wbt: export internal state via debugfs (Ming Lei) [2047313] - platform/x86: ISST: Fix optimization with use of numa (Prarit Bhargava) [2023820] - platform/x86: ISST: Use numa node id for cpu pci dev mapping (Prarit Bhargava) [2023818] - platform/x86: ISST: Optimize CPU to PCI device mapping (Prarit Bhargava) [2023818] - efi/x86: drop task_lock() from efi_switch_mm() (Fernando Pacheco) [2035415] - configs: enable LOGITECH_FF (Benjamin Tissoires) [1945987] - Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl (Benjamin Tissoires) [1974089] - Input: joydev - prevent potential read overflow in ioctl (Benjamin Tissoires) [1974089] - xfs: Fix CIL throttle hang when CIL space used going backwards (Thiago Becker) [2040371] - netfilter: nf_conntrack_netbios_ns: fix helper module alias (Florian Westphal) [2038015] - selftests: nft_concat_range: add test for reload with no element add/del (Florian Westphal) [2046309] - netfilter: fix regression in looped (broad|multi)cast's MAC handling (Florian Westphal) [2046309] - selftests: netfilter: Add correctness test for mac,net set type (Florian Westphal) [2046309] - netfilter: flowtable: fix IPv6 tunnel addr match (Florian Westphal) [2046309] - netfilter: conntrack: don't increment invalid counter on NF_REPEAT (Florian Westphal) [2046309] - netfilter: nft_set_pipapo: allocate pcpu scratch maps on clone (Florian Westphal) [2046309] - netfilter: nft_payload: do not update layer 4 checksum when mangling fragments (Florian Westphal) [2046309] - netfilter: ipvs: Fix reuse connection if RS weight is 0 (Florian Westphal) [2046309] - netfilter: ctnetlink: do not erase error code with EINVAL (Florian Westphal) [2046309] - netfilter: ctnetlink: fix filtering with CTA_TUPLE_REPLY (Florian Westphal) [2046309] - netfilter: nfnetlink_queue: fix OOB when mac header was cleared (Florian Westphal) [2046309] - netfilter: nft_dynset: relax superfluous check on set updates (Florian Westphal) [2046309] - netfilter: use kvmalloc_array to allocate memory for hashtable (Phil Sutter) [2001762] - netfilter: nf_tables: skip netdev events generated on netns removal (Phil Sutter) [2053436] - xfrm: add state hashtable keyed by seq (Sabrina Dubroca) [1926538]- cgroup/cpuset: Fix "suspicious RCU usage" lockdep warning (Waiman Long) [2050418] - cpuset: Fix the bug that subpart_cpus updated wrongly in update_cpumask() (Waiman Long) [2050418] - IB/rdmavt: Validate remote_addr during loopback atomic tests (Kamal Heib) [2033480] - in wb_init, use gfp instead of GFP_KERNEL when allocating bw_dwork (Chris von Recklinghausen) [2046179] - scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe (John Meneghini) [2051691] - scsi: bnx2fc: Flush destroy_work queue before calling bnx2fc_interface_put() (John Meneghini) [1973208] - nvme: drop unused variable ctrl in nvme_setup_cmd (John Meneghini) [2033384] - nvme: increment request genctr on completion (John Meneghini) [2033384] - nvme-pci: Fix abort command id (John Meneghini) [2033384] - nvme: add command id quirk for apple controllers (John Meneghini) [2033384] - nvme: move nvme_multi_css into nvme.h (John Meneghini) [2033384] - nvme: code command_id with a genctr for use-after-free validation (John Meneghini) [2033384] - nvme-pci: limit maximum queue depth to 4095 (John Meneghini) [2033384] - params: lift param_set_uint_minmax to common code (John Meneghini) [2033384] - CI: Enable baseline realtime checks (Veronika Kabatova) - CI: Rename pipelines to include release names (Veronika Kabatova) - sched/pelt: Relax the sync of load_sum with load_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of runnable_sum with runnable_avg (Phil Auld) [2037123] - sched/pelt: Continue to relax the sync of util_sum with util_avg (Phil Auld) [2037123] - sched/pelt: Relax the sync of util_sum with util_avg (Phil Auld) [2037123] - cifs: fix memory leak of smb3_fs_context_dup::server_hostname (Ronnie Sahlberg) [2044670] - cifs: To match file servers, make sure the server hostname matches (Ronnie Sahlberg) [2044670] - perf/x86/intel/uncore: Fix Intel SPR M3UPI event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR M2PCIE event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR IIO event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Fix Intel SPR CHA event constraints (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IMC free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Support IIO free-running counters on Sapphire Rapids server (Michael Petlan) [1837402] - perf/x86/intel/uncore: Factor out snr_uncore_mmio_map() (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add alias PMU name (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server MDF support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M3UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server UPI support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2M support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IMC support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server PCU support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server M2PCIe support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IRP support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server IIO support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server CHA support (Michael Petlan) [1837402] - perf/x86/intel/uncore: Add Sapphire Rapids server framework (Michael Petlan) [1837402] - ovl: fix deadlock in splice write (Miklos Szeredi) [2028998] - selinux: fix NULL-pointer dereference when hashtab allocation fails (Ondrej Mosnacek) [2021467] - selinux: fix double free of cond_list on error paths (Ondrej Mosnacek) [2043605] - ibmvnic: remove unused ->wait_capability (Diego Domingos) [2049368] - ibmvnic: don't spin in tasklet (Diego Domingos) [2049368] - ibmvnic: init ->running_cap_crqs early (Diego Domingos) [2049368] - ibmvnic: Allow extra failures before disabling (Diego Domingos) [2049368] - hpsa: add new messaging (Tomas Henzl) [1801777] - aacraid: add new messaging (Tomas Henzl) [2044365] - Revert "[scsi] Revert "[scsi] aacraid: add removed id table"" (Tomas Henzl) [2044365] - mpt3sas: Add new messaging (Tomas Henzl) [2044366] - Revert "[scsi] mpt*: remove certain deprecated pci-ids" (Tomas Henzl) [2044366] - mptsas: add new messaging (Tomas Henzl) [2044366] - sctp: hold endpoint before calling cb in sctp_transport_lookup_process (Xin Long) [2043822] - sctp: use call_rcu to free endpoint (Xin Long) [2043822] - sctp: move hlist_node and hashent out of sctp_ep_common (Xin Long) [2043822] - net: Use nlmsg_unicast() instead of netlink_unicast() (Xin Long) [2043822] - video: hyperv_fb: Fix validation of screen resolution (Mohammed Gamal) [1952821] - powerpc/pseries: extract host bridge from pci_bus prior to bus removal (Diego Domingos) [2051509] - dm: properly fix redundant bio-based IO accounting (Mike Snitzer) [2051803] - dm: revert partial fix for redundant bio-based IO accounting (Mike Snitzer) [2051803] - block: add bio_start_io_acct_time() to control start_time (Mike Snitzer) [2051803] - block: document iostat changes for disk busy time accounting (Mike Snitzer) [2051803]- tee: optee: Fix incorrect page free bug (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: handle lookup of shm with reference count 0 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: smc_abi.c: add missing #include (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: isolate smc abi (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: refactor driver with internal callbacks (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify optee_release() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix missing devices unregister during optee_remove (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/optee/shm_pool: fix application of sizeof to pointer (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add tee_shm_alloc_kernel_buf() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Clear stale cache entries during initialization (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: fix tee out of memory failure seen during kexec reboot (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Refuse to load the driver under the kdump kernel (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix memory leak when failing to register shm pages (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use export_uuid() to copy client UUID (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: do not check memref size on return from Secure World (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix build error caused by recent optee tracepoints feature (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add invoke_fn tracepoints (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: simplify i2c access (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: remove need_resched() before cond_resched() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: sync OP-TEE headers (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: replace might_sleep with cond_resched (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: fix i2c build issue (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - drivers: optee: allow op-tee to access devices on the i2c bus (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - driver: tee: Handle NULL pointer indication from client (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: enable support for multi-stage bus enumeration (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: use uuid for sysfs driver entry (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Add support for session login client UUID generation (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: enable support to register kernel memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unnecessary NULL check in tee_shm_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: don't assign shm id for private shms (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove unused tee_shm_priv_alloc() (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: tee_shm_op_mmap(): use TEE_SHM_USER_MAPPED (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove redundant teedev in struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: remove linked list of struct tee_shm (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: Fix multi page dynamic shm pool alloc (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: model OP-TEE as a platform device/driver (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: fix device enumeration error handling (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix dynamic shm pool allocations (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee/shm: untag user pointers in tee_shm_register (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add might_sleep for RPC requests (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - optee: allow to work without static shared memory (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: update optee_msg.h and optee_smc.h to dual license (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add missing of_node_put after of_device_is_available (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Fix unsigned comparison with less than zero (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: fix possible error pointer ctx dereferencing (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: Initialize some structs using memset instead of braces (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: add TEE bus device enumeration support (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add supp_nowait flag in tee_context struct (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: log message if dynamic shm is enabled (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: add kernel internal client interface (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: take DT status property into account (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - tee: optee: making OPTEE_SHM_NUM_PRIV_PAGES configurable via Kconfig (Chris von Recklinghausen) [2030755] {CVE-2021-44733} - x86/mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN (David Arcari) [2035286] - regset: kill ->get() (Prarit Bhargava) [2032854] - arm64: switch to ->regset_get() (Prarit Bhargava) [2032854] - arm64: take fetching compat reg out of pt_regs into a new helper (Prarit Bhargava) [2032854] - powerpc: switch to ->regset_get() (Prarit Bhargava) [2032854] - s390: switch to ->regset_get() (Prarit Bhargava) [2032854] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [2032854] - mm/page_alloc.c: do not warn allocation failure on zone DMA if no managed pages (Baoquan He) [2024011] - dma/pool: create dma atomic pool only if dma zone has managed pages (Baoquan He) [2024011] - mm_zone: add function to check if managed dma zone exists (Baoquan He) [2024011] - tipc: discard MSG_CRYPTO msgs when key_exchange_enabled is not set (Xin Long) [2043825] - tipc: delete the unlikely branch in tipc_aead_encrypt (Xin Long) [2043825] - tipc: check for null after calling kmemdup (Xin Long) [2043825] - tipc: only accept encrypted MSG_CRYPTO msgs (Xin Long) [2043825] - powerpc/pseries: use slab context cpumask allocation in CPU hotplug init (Waiman Long) [2048220] - powerpc/pseries: Fix build error when NUMA=n (Waiman Long) [2048220] - lpfc: Add new messaging (Ewan D. Milne) [1841323] - cpu/hotplug: Cure the cpusets trainwreck (Phil Auld) [1904593] - scsi: ses: Fix unsigned comparison with less than zero (Tomas Henzl) [1995086] - scsi: ses: Retry failed Send/Receive Diagnostic commands (Tomas Henzl) [1995086] - serial: exar: Fix GPIO configuration for Sealevel cards based on XR17V35X (John W. Linville) [2022906] - PCI: vmd: Add indirection layer to vmd irq lists (Scott Wood) [2048202] - redhat/configs: Enable CONFIG_PCI_HYPERV on Aarch64 (Vitaly Kuznetsov) [2024853] - PCI: hv: Add arm64 Hyper-V vPCI support (Vitaly Kuznetsov) [2024853] - PCI: hv: Make the code arch neutral by adding arch specific interfaces (Vitaly Kuznetsov) [2024853] - PCI: hv: Remove unnecessary use of hx (Vitaly Kuznetsov) [2024853] - nvme-rdma: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme-tcp: fix possible use-after-free in transport error_recovery work (Chris Leech) [1988361] - nvme: fix a possible use-after-free in controller reset during load (Chris Leech) [1988361] - ipv6: check return value of ipv6_skip_exthdr (Sabrina Dubroca) [2046234] - selftests: Calculate udpgso segment count without header adjustment (Xin Long) [2044133] - udp: using datalen to cap ipv6 udp max gso segments (Xin Long) [2044133] - inet_diag: fix kernel-infoleak for UDP sockets (Xin Long) [2044133] - udp: using datalen to cap max gso segments (Xin Long) [2044133] - [s390] s390/cpumf: Support for CPU Measurement Facility CSVN 7 (Mete Durlu) [2048980] - [s390] s390/cpumf: Support for CPU Measurement Sampling Facility LS bit (Mete Durlu) [2048980] - tools/power/x86/intel-speed-select: v1.10 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Fix uncore memory frequency display (Prarit Bhargava) [2023909] - platform/x86: ISST: Account for increased timeout in some cases (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Add options to force online (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Drop __DATE__ and __TIME__ macros (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: v1.9 release (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Process mailbox read error for core-power (Prarit Bhargava) [2023909] - tools/power/x86/intel-speed-select: Increase string size (Prarit Bhargava) [2023909] - qla2xxx: Add new messaging (Ewan D. Milne) [1900072]- platform/x86: amd-pmc: only use callbacks for suspend (David Arcari) [2016039] - platform/x86: amd-pmc: Add support for AMD Smart Trace Buffer (David Arcari) [2016039] - platform/x86: amd-pmc: Simplify error handling and store the pci_dev in amd_pmc_dev structure (David Arcari) [2016039] - platform/x86: amd-pmc: Fix s2idle failures on certain AMD laptops (David Arcari) [2016039] - platform/x86: amd-pmc: Make CONFIG_AMD_PMC depend on RTC_CLASS (David Arcari) [2016039] - platform/x86: amd-pmc: Drop check for valid alarm time (David Arcari) [2016039] - platform/x86: amd-pmc: Downgrade dev_info message to dev_dbg (David Arcari) [2016039] - platform/x86: amd-pmc: fix compilation without CONFIG_RTC_SYSTOHC_DEVICE (David Arcari) [2016039] - platform/x86: amd-pmc: Add special handling for timer based S0i3 wakeup (David Arcari) [2016039] - platform/x86: amd-pmc: adjust arguments for `amd_pmc_send_cmd` (David Arcari) [2016039] - platform/x86: amd-pmc: Add alternative acpi id for PMC controller (David Arcari) [2016039] - platform/x86: amd-pmc: Add a message to print resume time info (David Arcari) [2016039] - platform/x86: amd-pmc: Send command to dump data after clearing OS_HINT (David Arcari) [2016039] - platform/x86: amd-pmc: Fix compilation when CONFIG_DEBUGFS is disabled (David Arcari) [2016039] - platform/x86: amd-pmc: Export Idlemask values based on the APU (David Arcari) [2016039] - platform/x86: amd-pmc: Check s0i3 cycle status (David Arcari) [2016039] - scsi: lpfc: Fix non-recovery of remote ports following an unsolicited LOGO (Dick Kennedy) [2027558] - sch_api: Don't skip qdisc attach on ingress (Davide Caratti) [2044806] - sch_qfq: prevent shift-out-of-bounds in qfq_init_qdisc (Davide Caratti) [2044806] - flow_offload: return EOPNOTSUPP for the unsupported mpls action type (Davide Caratti) [2044806] - selftests: bpf: Less strict size check in sockopt_sk (Felix Maurer) [2025809] - net-zerocopy: Fast return if inq < PAGE_SIZE (Felix Maurer) [2025809] - tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE) (Felix Maurer) [2025809] - tcp-zerocopy: Ensure excess getsockopt buffer is zeroed (Felix Maurer) [2025809] - tcp-zerocopy: Update returned getsockopt() optlen. (Felix Maurer) [2025809] - tcp-zerocopy: Fix getsockopt buffer size check (Felix Maurer) [2025809] - gre: Don't accidentally set RTO_ONLINK in gre_fill_metadata_dst() (Guillaume Nault) [2046339] - net: fix use-after-free in tw_timer_handler (Guillaume Nault) [2046339] - ALSA: core: Fix SSID quirk lookup for subvendor=0 (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Restore hardware state on runtime PM resume (Jaroslav Kysela) [2003613] - ALSA: RHEL - update kernel configs for RHEL 8.6 (Jaroslav Kysela) [2003613] - ASoC: remove module namespaces (Jaroslav Kysela) [2003613] - ASoC: codecs: rt5682(s): use the older clock API calls, but keep some modern (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Cleanup logging (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use snd_soc_jack to report jack events (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: convert into a helper library for codec drivers (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Use arizona->dev for runtime-pm (Jaroslav Kysela) [2003613] - ASoC: arizona-jack: Move jack-detect variables to struct arizona_priv (Jaroslav Kysela) [2003613] - ASoC/extcon: arizona: Move arizona jack code to sound/soc/codecs/arizona-jack.c (Jaroslav Kysela) [2003613] - extcon: arizona: Always use pm_runtime_get_sync() when we need the device to be awake (Jaroslav Kysela) [2003613] - extcon: arizona: Fix flags parameter to the gpiod_get("wlf,micd-pol") call (Jaroslav Kysela) [2003613] - extcon: arizona: Fix various races on driver unbind (Jaroslav Kysela) [2003613] - extcon: arizona: Fix some issues when HPDET IRQ fires after the jack has been unplugged (Jaroslav Kysela) [2003613] - extcon: arizona: Fix runtime PM imbalance on error (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone and button detection (Jaroslav Kysela) [2003613] - extcon: arizona: Factor out microphone impedance into a function (Jaroslav Kysela) [2003613] - extcon: arizona: Invert logic of check in arizona_hpdet_do_id (Jaroslav Kysela) [2003613] - extcon: arizona: Remove excessive WARN_ON (Jaroslav Kysela) [2003613] - extcon: arizona: Remove unnecessary sets of ACCDET_MODE (Jaroslav Kysela) [2003613] - extcon: arizona: Tidy up transition from mic to headphone detect (Jaroslav Kysela) [2003613] - extcon: arizona: Clear jack status regardless of detection type (Jaroslav Kysela) [2003613] - extcon: arizona: Move pdata extraction to probe (Jaroslav Kysela) [2003613] - extcon: arizona: Make rev A register sequences atomic (Jaroslav Kysela) [2003613] - extcon: arizona: Correct clean up if arizona_identify_headphone fails (Jaroslav Kysela) [2003613] - extcon: arizona: Switch to use device_property_count_u32() (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [2003613] - extcon: arizona: Correct error handling on regmap_update_bits_check (Jaroslav Kysela) [2003613] - extcon: arizona: Disable mic detect if running when driver is removed (Jaroslav Kysela) [2003613] - mfd: arizona: Fix rumtime PM imbalance on error (Jaroslav Kysela) [2003613] - mfd: arizona: Split of_match table into I2C and SPI versions (Jaroslav Kysela) [2003613] - mfd: arizona: Make some symbols static (Jaroslav Kysela) [2003613] - mfd: arizona: Add support for ACPI enumeration of WM5102 connected over SPI (Jaroslav Kysela) [2003613] - mfd: arizona: Add MODULE_SOFTDEP("pre: arizona_ldo1") (Jaroslav Kysela) [2003613] - mfd: arizona: Drop arizona-extcon cells (Jaroslav Kysela) [2003613] - mfd: arizona: Replace arizona_of_get_type() with device_get_match_data() (Jaroslav Kysela) [2003613] - mfd: arizona: Ensure 32k clock is put on driver unbind and error (Jaroslav Kysela) [2003613] - mfd: arizona: Remove BUG_ON usage (Jaroslav Kysela) [2003613] - mfd: arizona: Switch to using devm_gpiod_get() (Jaroslav Kysela) [2003613] - mfd: arizona: Fix undefined behavior (Jaroslav Kysela) [2003613] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [2003613] - mfd: arizona: Correct calling of runtime_put_sync (Jaroslav Kysela) [2003613] - mfd: arizona: Don't use regmap_read_poll_timeout (Jaroslav Kysela) [2003613] - clkdev: Hold clocks_mutex while iterating clocks list (Jaroslav Kysela) [2003613] - clkdev: add managed clkdev lookup registration (Jaroslav Kysela) [2003613] - genirq: Add IRQF_NO_AUTOEN for request_irq/nmi() (Jaroslav Kysela) [2003613] - ALSA: es1688: Avoid devres management for es1688 object creation (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probes of snd_gus_create() (Jaroslav Kysela) [2003613] - ALSA: x86: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: x86: simplify with sync_stop PCM ops (Jaroslav Kysela) [2003613] - ALSA: x86: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: virtio: Replace zero-length array with flexible-array member (Jaroslav Kysela) [2003613] - ALSA: emux: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: synth: missing check for possible NULL after the call to kstrdup (Jaroslav Kysela) [2003613] - ALSA: synth: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sparc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver name explicitly (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_clk_get() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add system level suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Add reset control (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Correct driver removal order (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: align function prototypes (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra20_das: clarify expression (Jaroslav Kysela) [2003613] - ASoC: tegra: remove unneeded semicolon (Jaroslav Kysela) [2003613] - ASoC: tegra: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [2003613] - ASoC: tegra20: ac97: Add reset control (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add support for SoundWire of TGL-H-RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add mutual exclusion between PCH DMIC and RT715 (Jaroslav Kysela) [2003613] - ASoC: codecs: wsa881x: fix return values from kcontrol put (Jaroslav Kysela) [2003613] - ASoc: wm8731: Drop empty spi_driver remove callback (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: channel -> channels rename (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 channel count (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Disable irq on slave ports in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a double irq free in the remove function (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Fix a memory leak in the error handling path of the probe function (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: make array clocks static, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505/TAS2521 processing block selection (Jaroslav Kysela) [2003613] - ASoC: da7218: Drop CONFIG_OF ifdef (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Fix TAS2505 volume controls (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: Make aic32x4_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add support for TAS2505 (Jaroslav Kysela) [2003613] - ASoC: tlv320aic32x4: add type to device private data struct (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: fix reversed bclk/wclk master bits (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Fix jack detection after suspend (Jaroslav Kysela) [2003613] - ASoC: tlv320aic31xx: Make regmap cache only on probe() (Jaroslav Kysela) [2003613] - ASoC: sigmadsp: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ASoC: rt286: Remove redundant assignment to d_len_code (Jaroslav Kysela) [2003613] - ASoC: codecs: rt1019: clarify expression (Jaroslav Kysela) [2003613] - ASoC: rt1019: Add non_legacy_dai_naming config (Jaroslav Kysela) [2003613] - ASoC: rk3328: fix missing clk_disable_unprepare() on error in rk3328_platform_probe() (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: Fix unexpected error in bind/unbind flow (Jaroslav Kysela) [2003613] - ASoc: codecs: mt6359: remove useless initializations (Jaroslav Kysela) [2003613] - ASoC: mediatek: mt6359: convert to use module_platform_driver (Jaroslav Kysela) [2003613] - ASoC: ics43432: add CMM-4030D-261 support (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Fix return value in hdmi_codec_set_jack() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Get ELD in before reporting plugged event (Jaroslav Kysela) [2003613] - ASoC: cs53l30: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs43130: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs42l73: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs4265: Minor tidy up of error paths (Jaroslav Kysela) [2003613] - ASoC: cs35l36: Remove unneeded variable initialisation (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l35: Correct errata handling (Jaroslav Kysela) [2003613] - ASoC: cs35l34: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs35l33: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cirrus: Add helper function for reading the device ID (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Add missing regmap use_single config (Jaroslav Kysela) [2003613] - ASoC: cs35l32: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: adav80x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ASoC: codecs: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: ab8500: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: fix spelling mistake in Kconfig "comunicate" -> "communicate" (Jaroslav Kysela) [2003613] - ASoC: 88pm860x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Remove redundant assignment to pdm_ctrl and pdm_enable and pdm_dma_enable (Jaroslav Kysela) [2003613] - ASoC: amd: add missing break (Jaroslav Kysela) [2003613] - ALSA: sh: Fix compile warning wrt const (Jaroslav Kysela) [2003613] - ALSA: sh: Fix unused variable warnings (Jaroslav Kysela) [2003613] - ALSA: sh: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: sh: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: aica: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ALSA: sh: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [2003613] - ALSA: ps3: fix spelling typo of values (Jaroslav Kysela) [2003613] - ALSA: ppc: drop if block with always false condition (Jaroslav Kysela) [2003613] - ALSA: ppc: remove redundant checks in PS3 driver probe (Jaroslav Kysela) [2003613] - ALSA: ppc: fix error return code in snd_pmac_probe() (Jaroslav Kysela) [2003613] - ALSA: ppc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [2003613] - ALSA: ppc: Constify snd_device_ops definitions (Jaroslav Kysela) [2003613] - ALSA: ppc: keywest: remove outdated comment (Jaroslav Kysela) [2003613] - ALSA: poewrmac: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcmcia: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pci: vx222: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: Remove trailing semicolon in macros (Jaroslav Kysela) [2003613] - ALSA: hda: generic: Remove redundant assignment to dac (Jaroslav Kysela) [2003613] - ALSA: hda: Allow model option to specify PCI SSID alias (Jaroslav Kysela) [2003613] - ALSA: asihpi: fix comment syntax in file headers (Jaroslav Kysela) [2003613] - ALSA: harmony: Drop superfluous address setup (Jaroslav Kysela) [2003613] - ALSA: parisc: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: fix kernel-doc warning (Jaroslav Kysela) [2003613] - ALSA: aloop: Constify ops structs (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop resindex_dma_base, dma_engine, dma_size from sof_dev_desc (Jaroslav Kysela) [2003613] - ALSA: wavefront: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wavefront: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sscape: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sc6000: Use explicit cast for __iomem pointer (Jaroslav Kysela) [2003613] - ALSA: sc6000: Assign vport directly on card's private_data (Jaroslav Kysela) [2003613] - ALSA: sc6000: Fix incorrect sizeof operator (Jaroslav Kysela) [2003613] - ALSA: sc6000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - Revert "ALSA: sb: fix a missing check of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: sb: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sb8: Add a comment note regarding an unused pointer (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential ABBA deadlock in CSP driver (Jaroslav Kysela) [2003613] - ALSA: sb: Fix potential double-free of CSP mixer elements (Jaroslav Kysela) [2003613] - ALSA: sb: Minor coding style fixes (Jaroslav Kysela) [2003613] - ALSA: sb: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sb: Fix two use after free in snd_sb_qsound_build (Jaroslav Kysela) [2003613] - ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer (Jaroslav Kysela) [2003613] - ALSA: opti9xx: fix missing { } around an if block (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opti9xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: opl3sa2: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: msnd: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: msnd: Use proper mmap method (Jaroslav Kysela) [2003613] - ALSA: gus: Fix repeated probe for ISA interwave card (Jaroslav Kysela) [2003613] - Revert "ALSA: gus: add a check of the status of snd_ctl_add" (Jaroslav Kysela) [2003613] - ALSA: gus: fix null pointer dereference on pointer block (Jaroslav Kysela) [2003613] - ALSA: gus: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: gus: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: gus: Replace unsafe strcpy() with strscpy() (Jaroslav Kysela) [2003613] - ALSA: galaxy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: Replace with fallthrough pseudo keyword in the remaining places (Jaroslav Kysela) [2003613] - ALSA: es18xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es18xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: isa: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1688: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: wss: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs423x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - sound/oss/dmasound: Remove superfluous "break" (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: isa: Fix error return code in snd_cmi8330_probe() (Jaroslav Kysela) [2003613] - ALSA: cmi8330: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmi8328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt2320: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als100: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als100: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: adlib: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1848: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1816a: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: i2c: tea6330t: Remove redundant initialization of variable err (Jaroslav Kysela) [2003613] - ALSA: i2c: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: add missing include files (Jaroslav Kysela) [2003613] - ALSA: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ALSA: aoa: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ALSA: arm: Remove unnecessary variables (Jaroslav Kysela) [2003613] - ALSA: ac97: fix PM reference leak in ac97_bus_remove() (Jaroslav Kysela) [2003613] - ALSA: ac97: Constify static struct attribute_group (Jaroslav Kysela) [2003613] - ALSA: virtio: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: virtio: use module_virtio_driver() to simplify the code (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce device suspend/resume support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce PCM channel map support (Jaroslav Kysela) [2003613] - ALSA: virtio: introduce jack support (Jaroslav Kysela) [2003613] - ALSA: virtio: PCM substream operators (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control and I/O messages for the PCM device (Jaroslav Kysela) [2003613] - ALSA: virtio: build PCM devices and substream hardware descriptors (Jaroslav Kysela) [2003613] - ALSA: virtio: handling control messages (Jaroslav Kysela) [2003613] - ALSA: virtio: add virtio sound driver (Jaroslav Kysela) [2003613] - uapi: virtio_ids: add a sound device type ID from OASIS spec (Jaroslav Kysela) [2003613] - ALSA: firewire: Fix C++ style comments in uapi header (Jaroslav Kysela) [2003613] - ALSA: uapi: Fix a C++ style comment in asound.h (Jaroslav Kysela) [2003613] - ASoC: topology: Fix stub for snd_soc_tplg_component_remove() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate dai_fmt if exist (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: indicate missing CPU/Codec numbers for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: dai-intel: add SOF_DAI_INTEL_SSP_CLKCTRL_MCLK/BCLK_ES bits (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup dev_dbg() to use 1 line (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup debug info for clock (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum DAI links limit to 512 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Use set_jack ops to set jack (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Codec2Codec sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Multi) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add DPCM sample (Single) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Nulti) (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2-custom-sample.dtsi: add Sample DT for Normal (Single) (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 Custom Sample (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Codec2Codec support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add DPCM support (Jaroslav Kysela) [2003613] - ASoC: audio-graph-card2: add Multi CPU/Codec support (Jaroslav Kysela) [2003613] - ASoC: add Audio Graph Card2 driver (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add codec2codec support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: add asoc_graph_is_ports0() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Fixup CPU endpoint hw_params in a BE<->BE link (Jaroslav Kysela) [2003613] - ASoC: audio-graph: respawn Platform Support (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Avoid over-allocating DLCs (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fix breakage on kontron-sl28-var3-ads2 (Jaroslav Kysela) [2003613] - ASoC: audio-graph: tidyup graph_dai_link_of_dpcm() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_link_init() (Jaroslav Kysela) [2003613] - ASoC: simple-card: add simple_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_link_init() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: add graph_parse_node() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove Platform support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove unused "node" from graph_parse_mclk_fs() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: remove "audio-graph-card, " preix support (Jaroslav Kysela) [2003613] - ASoC: audio-graph: check ports if exists (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_remove() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: tegra: Add driver remove() callback (Jaroslav Kysela) [2003613] - ASoC: audio-graph: move audio_graph_card_probe() to simple-card-utils.c (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Allocate link info structure on heap (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Increase maximum number of links to 128 (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Propagate errors on too many links (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: audio-graph: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use simple_props_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: use asoc_link_to_xxx() macro (Jaroslav Kysela) [2003613] - ASoC: simple-card: remove unused variable from simple_parse_of() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: tidyup asoc_simple_parse_convert() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: multi support at asoc_simple_canonicalize_cpu/platform() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: care multi DAI at asoc_simple_clean_reference() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove asoc_simple_parse_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: use for_each_prop_xxx() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: remove li->dais/li->conf (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: setup dai_props cpu_dai/codec_dai at initial timing (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: share dummy DAI and reduce memory (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: enable flexible CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card: fix possible uninitialized single_cpu local variable (Jaroslav Kysela) [2003613] - ASoC: simple-card: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: simple-card: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: audio-graph: cleanup graph_for_each_link() (Jaroslav Kysela) [2003613] - ASoC: audio-graph: count DAI / link numbers as in order (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: alloc dai_link information for CPU/Codec/Platform (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils.c: remove old comment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Do not handle device clock (Jaroslav Kysela) [2003613] - ASoC: generic: simple-card-utils: remove useless assignment (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: Fix device module clock (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Rename functions needed for export (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose helpers from audio graph (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Expose new members for asoc_simple_priv (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Support empty Codec endpoint (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Identify 'no_pcm' DAI links for DPCM (Jaroslav Kysela) [2003613] - ASoC: audio-graph: Use of_node and DAI for DPCM DAI link names (Jaroslav Kysela) [2003613] - ALSA: memalloc: Drop superfluous snd_dma_buffer_sync() declaration (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: include new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: SOF: dai: mirror group_id definition added in firmware (Jaroslav Kysela) [2003613] - ALSA: core: Use READ_ONCE() / WRITE_ONCE() for power state change (Jaroslav Kysela) [2003613] - ALSA: hda_audio_ext: fix kernel-doc (Jaroslav Kysela) [2003613] - ALSA: make snd_kcontrol_new name a normal string (Jaroslav Kysela) [2003613] - ASoC: constify of_phandle_args in snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: tas2770: Fix setting of high sample rates (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix the wrong jack type detected (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore headphones jack name on Nyan Big (Jaroslav Kysela) [2003613] - ASoC: tegra: Add DAPM switches for headphones and mic jack (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add new ADL-P variant (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-N support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Retry codec probing if it fails (Jaroslav Kysela) [2003613] - ASoC: amd: fix uninitialized variable in snd_acp6x_probe() (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix crash due to out of scope stack vars (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Use normal system sleep for SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Balance runtime PM count (Jaroslav Kysela) [2003613] - ASoC: SOF: hda: reset DAI widget before reconfiguring it (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Set the max SPI speed for the whole device (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on CML (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: Set mach->id field on comp_ids matches (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in Mixer (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AMX (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in AHUB (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix kcontrol put callback in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in MVC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in SFC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DSPK (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in DMIC (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in I2S (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix wrong value type in ADMAIF (Jaroslav Kysela) [2003613] - ASoC: topology: Add missing rwsem around snd_ctl_remove() calls (Jaroslav Kysela) [2003613] - ASoC: SOF: build compression interface into snd_sof.ko (Jaroslav Kysela) [2003613] - ASoC: rt5682: Re-detect the combo jack after resuming (Jaroslav Kysela) [2003613] - ASoC: rt5682: Avoid the unexpected IRQ event during going to suspend (Jaroslav Kysela) [2003613] - ASoC: rt1011: revert 'I2S Reference' to SOC_ENUM_EXT (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add the compatibility with rt9120s (Jaroslav Kysela) [2003613] - ASoC: rt9120: Fix clock auto sync issue when fs is the multiple of 48 (Jaroslav Kysela) [2003613] - ASoC: rt9120: Update internal ocp level to the correct value (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B12 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B29 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B29 product (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0B13 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B13 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B11 product (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0B00 and 0B01 products (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add SKU 0AF3 SoundWire configuration (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: Add support for SKU 0AF3 product (Jaroslav Kysela) [2003613] - ASoC: DAPM: Cover regression by kctl change notification fix (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix hotplug when only codec is suspended (Jaroslav Kysela) [2003613] - ASoC: SOF:control: Fix variable type in snd_sof_refresh_control() (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Change monitor widgets to siggens (Jaroslav Kysela) [2003613] - ASoC: tlv320aic3x: Make aic3x_remove() return void (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: use const for all uses of snd_soc_acpi_codecs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-cht: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi-byt: shrink tables using compatible IDs (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: use comp_ids to enumerate rt5682s (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: detect codec variant in probe function (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: add comp_ids field for machine driver matching (Jaroslav Kysela) [2003613] - ASoC: Stop dummy from overriding hwparams (Jaroslav Kysela) [2003613] - ASoC: topology: Change topology device to card device (Jaroslav Kysela) [2003613] - ASoC: topology: Use correct device for prints (Jaroslav Kysela) [2003613] - ASoC: topology: Check for dapm widget completeness (Jaroslav Kysela) [2003613] - ASoC: topology: Add header payload_size verification (Jaroslav Kysela) [2003613] - ASoC: core: Remove invalid snd_soc_component_set_jack call (Jaroslav Kysela) [2003613] - ASoC: amd: acp: select CONFIG_SND_SOC_ACPI (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: es8316: add support for ESSX8336 ACPI _HID (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct configuring of switch inversion from ts-inv (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC (Jaroslav Kysela) [2003613] - ASoC: amd: acp: fix Kconfig dependencies (Jaroslav Kysela) [2003613] - ASoC: rt5682-i2c: Use devm_clk_get_optional for optional clock (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entry for ESSX8336 on JSL (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Fix return value check in acp_machine_select() (Jaroslav Kysela) [2003613] - ASoC: max98520: add max98520 audio amplifier driver (Jaroslav Kysela) [2003613] - ASoC: nau8821: clarify out-of-bounds check (Jaroslav Kysela) [2003613] - ASoC: nau8821: fix kernel-doc (Jaroslav Kysela) [2003613] - ASoC: rt5682s: use 'static' qualifier (Jaroslav Kysela) [2003613] - ASoC: topology: handle endianness warning (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_ACP_COMMON should depend on X86 && PCI (Jaroslav Kysela) [2003613] - ASoC: amd: acp: SND_SOC_AMD_{LEGACY_MACH,SOF_MACH} should depend on X86 && PCI && I2C (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Wrap AMD Audio ACP components in SND_SOC_AMD_ACP_COMMON (Jaroslav Kysela) [2003613] - ASoC: cs42l42: free_irq() before powering-down on probe() fail (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Reset and power-down on remove() and failed probe() (Jaroslav Kysela) [2003613] - ASoC: nau8825: add clock management for power saving (Jaroslav Kysela) [2003613] - ASoC: nau8825: add set_jack coponment support (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Prevent NULL pointer deref in interrupt handler (Jaroslav Kysela) [2003613] - ASoC: wm8962: Convert to devm_clk_get_optional() (Jaroslav Kysela) [2003613] - ASoC: fix unmet dependency on GPIOLIB for SND_SOC_MAX98357A (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Make cs35l41_remove() return void (Jaroslav Kysela) [2003613] - ASoC: tegra: Set default card name for Trimslice (Jaroslav Kysela) [2003613] - ASoC: tegra: Restore AC97 support (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add acp_machine struct for renoir platform. (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Downsizing the DAC volume scale (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove unused runtime_suspend/runtime_resume callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor error paths fixups (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for ACPI table match entry (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use device_property API instead of of_property (Jaroslav Kysela) [2003613] - ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow Carp platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add YC machine driver using dmic (Jaroslav Kysela) [2003613] - ASoC: amd: create platform device for acp6x machine driver (Jaroslav Kysela) [2003613] - ASoC: amd: enable Yellow carp acp6x drivers build (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm driver dma ops (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x irq handler (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x pdm platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: add platform devices for acp6x pdm driver and dmic driver (Jaroslav Kysela) [2003613] - ASoC: amd: add acp6x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Yellow Carp ACP6x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for RT5682-VS codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add support for Maxim amplifier codec (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add SOF audio support on Chrome board (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add legacy sound card support for Chrome audio (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add generic machine driver support for ACP cards (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add callback for machine driver on ACP (Jaroslav Kysela) [2003613] - ASoC: amd: acp: Add I2S support on Renoir platform (Jaroslav Kysela) [2003613] - ASoC: amd: Add common framework to support I2S on ACP SOC (Jaroslav Kysela) [2003613] - ASoC: soc-core: tidyup empty function (Jaroslav Kysela) [2003613] - ASoC: soc-component: add snd_soc_component_is_codec() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step2 (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: tidyup soc_pcm_hw_clean() - step1 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always enable TS_PLUG and TS_UNPLUG interrupts (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix WARN in remove() if running without an interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Mark OSC_SWITCH_STATUS register volatile (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Set correct SRC MCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Allow time for HP/ADC to power-up after enable (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use PLL for SCLK > 12.288MHz (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't claim to support 192k (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Defer probe if request_threaded_irq() returns EPROBE_DEFER (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't set defaults for volatile registers (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct some register default values (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Always configure both ASP TX channels (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't reconfigure the PLL while it is running (Jaroslav Kysela) [2003613] - ASoC: soc-component: improve error reporting for register access (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh platform machine driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh machine driver (Jaroslav Kysela) [2003613] - ASoc: amd: create platform device for VG machine driver (Jaroslav Kysela) [2003613] - ASoC: test-component: add Test Component for Sound debug/test (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix a little pop while playback (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [2003613] - ASoC: rt9120: Drop rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: rt1011: Fix 'I2S Reference' enum control caused error (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Ensure 0dB full scale volume is used for headsets (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: switch to using devm_fwnode_gpiod_get() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5651: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: use devm_clk_get_optional() for mclk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: amd: Kconfig: Select fch clock support with machine driver (Jaroslav Kysela) [2003613] - ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked() (Jaroslav Kysela) [2003613] - ASoC: SOF: prepare code to allocate IPC messages in fw_ready (Jaroslav Kysela) [2003613] - ASoC: rt9120: Add rt9210 audio amplifier support (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: restore mixer functionality (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix hp pop produced immediately after resuming (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce fragment elapsed notification API (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Use newly introduced generic IPC stream ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Make Intel IPC stream ops generic (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce snd_sof_mailbox_read / snd_sof_mailbox_write callbacks (Jaroslav Kysela) [2003613] - ASoC: SOF: pipelines: Harmonize all functions to use struct snd_sof_dev (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: do not power down primary core during topology removal (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Dump registers and stack when SOF_DBG_DUMP_REGS is set (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-loader: Drop SOF_DBG_DUMP_REGS flag from dbg_dump calls (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Drop SOF_DBG_DUMP_REGS flag when firmware start fails (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Clean up snd_sof_get_status() prints (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: Drop 'error' prefix from error dump functions (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce macro to set the firmware state (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: Force DSP panic dumps to be printed (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Re-enable dumps after successful IPC tx (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Print out the fw_state along with the DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: Drop SOF_DBG_DUMP_FORCE_ERR_LEVEL and sof_dev_dbg_or_err (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda-loader: Use snd_sof_dsp_dbg_dump() for DSP dump (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add SOF_DBG_DUMP_OPTIONAL flag for DSP dumping (Jaroslav Kysela) [2003613] - ASoC: SOF: debug/ops: Move the IPC and DSP dump functions out from the header (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: atom: No need to do a DSP dump in atom_run() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Print the DSP dump if boot fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Print the dbg_dump and ipc_dump once to reduce kernel log noise (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc and dsp dump: Add markers for better visibility (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Swap the dsp_dump and ipc_dump sequence for fw_exception (Jaroslav Kysela) [2003613] - ASoC: SOF: core: debug: force all processing on primary core (Jaroslav Kysela) [2003613] - ASoC: max98927: Handle reset gpio when probing i2c (Jaroslav Kysela) [2003613] - ASoC: DAPM: Fix missing kctl change notifications (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Utilize dev_err_probe() to avoid log saturation (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Switch to use gpiod_get_optional() (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Use temporary variable for struct device (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcht_es8316: Get platform data via dev_get_platdata() (Jaroslav Kysela) [2003613] - ASoC: SOF: OF: Add fw_path and tplg_path parameters (Jaroslav Kysela) [2003613] - ASoC: amd: acp-rt5645: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: return error if sof_connect_dai_widget() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: allow for dynamic pipelines override for debug (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: show clks_control value in dynamic debug (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: improve SSP DAI handling for dynamic pipelines (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: add new flags for DAI_CONFIG (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add missing quirk for Dell SKU 0A45 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add missing quirk for TGL SDCA single amp (Jaroslav Kysela) [2003613] - ASoC: Intel: add machine driver for SOF+ES8336 (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: apl/glk/tgl: add entry for devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ASoC: Intel: cht_bsw_nau8824: Set card.components string (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add a nau8824_components() helper (Jaroslav Kysela) [2003613] - ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix NAU8824_JACK_LOGIC define (Jaroslav Kysela) [2003613] - ASoC: rt5651: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ (Jaroslav Kysela) [2003613] - ASoC: nau8821: new driver (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add kernel parameter for topology verification (Jaroslav Kysela) [2003613] - ASoC: SOF: Add support for dynamic pipelines (Jaroslav Kysela) [2003613] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: make sure DAI widget is set up before IPC (Jaroslav Kysela) [2003613] - ASoC: SOF: Introduce widget use_count (Jaroslav Kysela) [2003613] - ASoC: SOF: Don't set up widgets during topology parsing (Jaroslav Kysela) [2003613] - ASoC: SOF: restore kcontrols for widget during set up (Jaroslav Kysela) [2003613] - ASoC: SOF: Add new fields to snd_sof_route (Jaroslav Kysela) [2003613] - AsoC: dapm: export a couple of functions (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-audio: add helpers for widgets, kcontrols and dai config set up (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: Add new token for dynamic pipeline (Jaroslav Kysela) [2003613] - ASoC: SOF: control: Add access field in struct snd_sof_control (Jaroslav Kysela) [2003613] - ASoC: topology: change the complete op in snd_soc_tplg_ops to return int (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Fix HP noise caused by SAR mode switch when the system resumes (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Enable ASRC auto-disable to fix pop during jack plug-in while playback (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Add support for max98360a speaker amp (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: rt5682: move clk related code to rt5682_i2c_probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: Use clk_hw based APIs for registration (Jaroslav Kysela) [2003613] - ASoC: rt5682: Drop usage of __clk_get_name() (Jaroslav Kysela) [2003613] - ASoC: SOF: Change SND_SOC_SOF_TOPLEVEL from config to menuconfig (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Revise the macro RT5682S_PLLB_SRC_MASK (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Use dev_dbg instead of pr_debug (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Remove the volatile SW reset register from reg_default (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix headphone vs headset, button-press detection no longer working (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: update platform device name for Maxim amplifier (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Make the error prints consistent in tx_wait_done() (Jaroslav Kysela) [2003613] - ASoC: SOF: prefix some terse and cryptic dev_dbg() with __func__ (Jaroslav Kysela) [2003613] - ASoC: SOF: add error handling to snd_sof_ipc_msg_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: add header file for ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pm: fix a stale comment (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: Print stream name on STREAM_SD_OFFSET timeout (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dai: fix potential locking issue (Jaroslav Kysela) [2003613] - ASoC: ak4458: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak5558: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: dwc-i2s: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4671: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: alc5623: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: bcm: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cpcap: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: codecs: Fix spelling mistake "Unsupport" -> "Unsupported" (Jaroslav Kysela) [2003613] - ASoC: ad193x: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: tegra: Constify static snd_soc_dai_ops structs (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Use two thresholds and increased wait time for manual type detection (Jaroslav Kysela) [2003613] - ASoC: adau1977: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau17x1: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1701: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1373: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: adau1372: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ad1836: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ep93xx: Convert to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: samsung: add missing "fallthrough;" (Jaroslav Kysela) [2003613] - ASoC: ak4642: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: wcd9335: Use correct version to initialize Class H (Jaroslav Kysela) [2003613] - ASoC: alc5632: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: ak4104: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: ak4118: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: zl38060: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cs4341: Add SPI device ID table (Jaroslav Kysela) [2003613] - ASoC: pcm179x: Add missing entries SPI to device ID table (Jaroslav Kysela) [2003613] - ASoC: pl1022_rdk: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: pl1022_ds: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: mpc8610_hpcd: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-sgtl5000: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-es8328: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: imx-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl_sai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-mqs: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-esai: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: fsl-audmix: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: eureka-tlv320: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: cros_ec_codec: Use modern ASoC DAI format terminology (Jaroslav Kysela) [2003613] - ASoC: pcm512x: Mend accesses to the I2S_1 and I2S_2 registers (Jaroslav Kysela) [2003613] - ASoC: codecs: max98390: simplify getting the adapter of a client (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Update to modern clocking terminology (Jaroslav Kysela) [2003613] - ASoC: SOF: Remove struct sof_ops_table and sof_get_ops() macro (Jaroslav Kysela) [2003613] - ASoC: rt5682s: make rt5682s_aif2_dai_ops and rt5682s_soc_component_dev (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based Mixer driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based ADX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based AMX driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based SFC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add Tegra210 based MVC driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Add routes for few AHUB modules (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: Don't reconnect an already active BE (Jaroslav Kysela) [2003613] - ASoC: compress/component: Use module_get_when_open/put_when_close for cstream (Jaroslav Kysela) [2003613] - ASoC: soc-component: Convert the mark_module to void* (Jaroslav Kysela) [2003613] - ASoC: SOF: Rename sof_arch_ops to dsp_arch_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove redundant error check from sof_ipc_tx_message_unlocked (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Print 0x prefix for errors in ipc_trace/stream_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Clarify the parameter name for ipc_trace_message() (Jaroslav Kysela) [2003613] - ASoC: SOF: trace: Omit error print when waking up trace sleepers (Jaroslav Kysela) [2003613] - misc: cs35l41: Remove unused pdn variable (Jaroslav Kysela) [2003613] - ASoC: SOF: imx8m: add SAI1 info (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Minor fix all errors reported by checkpatch.pl script (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Move probe work related code under a single if () branch (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Implement Manual Type detection as fallback (Jaroslav Kysela) [2003613] - ASoC: SOF: sof-probes: Correct the function names used for snd_soc_cdai_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Rename hda-compress.c to hda-probes.c (Jaroslav Kysela) [2003613] - ASoC: SOF: probe: Merge and clean up the probe and compress files (Jaroslav Kysela) [2003613] - ASoC: SOF: compress: move and export sof_probe_compr_ops (Jaroslav Kysela) [2003613] - ASoC: SOF: pcm: Remove non existent CONFIG_SND_SOC_SOF_COMPRESS reference (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Add probe message logging to ipc_log_header() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Re-phrase the missing firmware error to avoid duplication (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: release_firmware() on load failure to avoid batching (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: No need to export the snd_sof_debugfs_io_item() (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use the generic ops for region debugfs handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Provide debugfs_add_region_item ops for core (Jaroslav Kysela) [2003613] - ASoC: SOF: debug: Add generic API and ops for DSP regions (Jaroslav Kysela) [2003613] - ASoC: SOF: core: Do not use 'bar' as parameter for block_read/write (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: No need to export snd_sof_fw_parse_ext_data() (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Do not initialize the snd_sof_dsp_ops.read64 (Jaroslav Kysela) [2003613] - ASoC: SOF: ipc: Remove snd_sof_dsp_mailbox_init() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: bdw: Set the mailbox offset directly in bdw_probe (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8m: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: imx8: Bar index is only valid for IRAM and SRAM types (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix a bunch of trivial code formating/style issues (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fixup the error messages (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Don't overwrite returned error code (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Combine adjacent register writes (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Use regmap_read_poll_timeout to wait for OTP boot (Jaroslav Kysela) [2003613] - ASoC: cs35l41: Fix use of an uninitialised variable (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: load_firmware callback is mandatory, treat it like that (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Relocate inline definitions from hda.h to hda.c for sdw (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove boot_firmware skl and iccmax_icl declarations (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-dsp: Declare locally used functions as static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: Do no initialize resindex_dma_base (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_mx98360a board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015 board (Jaroslav Kysela) [2003613] - ASoC: intel: sof_rt5682: support jsl_rt5682s_rt1015p board (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: support ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: Fix DSP oops stack dump output contents (Jaroslav Kysela) [2003613] - ASoC: pcm5102a: increase rate from 192k to 384k (Jaroslav Kysela) [2003613] - ASoC: rt1011: add i2s reference control for rt1011 (Jaroslav Kysela) [2003613] - ASoC: SOF: Handle control change notification from firmware (Jaroslav Kysela) [2003613] - ASoC: SOF: control: fix a typo in put operations for kcontrol (Jaroslav Kysela) [2003613] - ASoC: rt5682s: Add driver for ALC5682I-VS codec (Jaroslav Kysela) [2003613] - ASoC: SOF: core: allow module parameter to override dma trace Kconfig (Jaroslav Kysela) [2003613] - ASoC: soc-topology: Move template info print soc_tplg_dapm_widget_create() (Jaroslav Kysela) [2003613] - ASoC: amd: acp: declare and add prefix to 'bt_uart_enable' symbol (Jaroslav Kysela) [2003613] - ASoC: cs35l41: CS35L41 Boosted Smart Amplifier (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: tag SoundWire BEs as non-atomic (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: Fix CONFIG_SND_SOC_SDW_MOCKUP select (Jaroslav Kysela) [2003613] - ASoC: rt5682: fix headset background noise when S3 state (Jaroslav Kysela) [2003613] - ASoC: Revert PCM trigger changes (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: test refcount before triggering (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: protect BE dailink state changes in trigger (Jaroslav Kysela) [2003613] - ASoC: dwc: Get IRQ optionally (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the vol+ button detection issue (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Make rt5640_jack_gpio/rt5640_jack2_gpio static (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: remove duplicate include (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: move common ATOM stuff to module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: byt: prepare split between Baytrail and Merrifield (Jaroslav Kysela) [2003613] - ASoC: rt1015: remove possible unused variable `bclk_ms' (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Mark hp_elitepad_1000g2_jack?_check functions static (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select first entry for singular pipe config arrays (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Properly configure modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support modules with generic extension (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Support multiple format configs (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Simplify m_state for loadable modules (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix passing loadable flag for module (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Fix module resource and format selection (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Select proper format for NHLT blob (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98927: Fix format selection for max98373 (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Revert PCM buffer address setup workaround again (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for HP Elite Pad 1000G2 jack-detect (Jaroslav Kysela) [2003613] - ASoC: Intel: bytct_rt5640: Add a separate "Headset Mic 2" DAPM pin for the mic on the 2nd jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add rt5640_set_ovcd_params() helper (Jaroslav Kysela) [2003613] - ASoC: rt5640: Add optional hp_det_gpio parameter to rt5640_detect_headset() (Jaroslav Kysela) [2003613] - ASoC: rt5640: Delay requesting IRQ until the machine-drv calls set_jack (Jaroslav Kysela) [2003613] - ASoC: rt5640: Move rt5640_disable_jack_detect() up in the rt5640.c file (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix breakage for PCM buffer address setup (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Use cfg-lineout:2 in the components string (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Fix incorrect usage of of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: i2s: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use of_device_get_match_data (Jaroslav Kysela) [2003613] - ASoC: soc-ac97: cleanup cppcheck warning (Jaroslav Kysela) [2003613] - ASoC: soc-component: cleanup cppcheck warning at snd_soc_pcm_component_pm_runtime_get() (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning for CONFIG_GPIOLIB (Jaroslav Kysela) [2003613] - ASoC: soc-jack: cleanup cppcheck warning at snd_soc_jack_report() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_pcm_dai_new() (Jaroslav Kysela) [2003613] - ASoC: soc-dai: cleanup cppcheck warning at snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_copy_user() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_new() (Jaroslav Kysela) [2003613] - ASoC: soc-generic-dmaengine-pcm: cleanup cppcheck warning at dmaengine_pcm_hw_params() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_rt711*: keep codec device reference until remove (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: pass card information to init/exit functions (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: get codec device with ACPI instead of bus search (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle errors with acpi_dev_get_first_match_dev() (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: harden codec property handling (Jaroslav Kysela) [2003613] - ASoC: rt5682: Remove unused variable in rt5682_i2c_remove() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: make DMI L1 selection more robust (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: simplify logic for DMI_L1 handling (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-stream: remove always true condition (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: clarify DMI L1 option description (Jaroslav Kysela) [2003613] - ASoC: rt5682: Properly turn off regulators if wrong device ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Implement remove callback (Jaroslav Kysela) [2003613] - ASoC: rt5682: Disable irq on shutdown (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold again (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix platform ID matching (Jaroslav Kysela) [2003613] - ASoC: rt1015p: add new acpi id and comapatible id (Jaroslav Kysela) [2003613] - ASoC: max98390: Add support change dsm param name (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Update module authors (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Assume 24-bit samples are in 32-bit slots (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Validate dai_set_sysclk() frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add PLL configuration for 44.1kHz/16-bit (Jaroslav Kysela) [2003613] - ASoC: rt5640: Silence warning message about missing interrupt (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix mono playback (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Constrain sample rate to prevent illegal SCLK (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix LRCLK frame start edge (Jaroslav Kysela) [2003613] - ASoC: cs42l42: PLL must be running when changing MCLK_SRC_SEL (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for set_jack calls (Jaroslav Kysela) [2003613] - ASoC: mt6359-accdet.c: remove useless assignments (Jaroslav Kysela) [2003613] - ASoC: max98090: remove duplicate status reads and useless assignmment (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at soc_dapm_dai_stream_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_new_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_weak_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_add_routes() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at snd_soc_dapm_del_route() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_run() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_seq_check_event() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_new_pga() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_set_mixer_path_status() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_connect_mux() (Jaroslav Kysela) [2003613] - ASoC: soc-dapm: cleanup cppcheck warning at dapm_wcache_lookup() (Jaroslav Kysela) [2003613] - ASoC: amd: vangogh: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: sprd: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: qcom: qdsp6: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: mpc5200: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl_asrc_dma: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: tegra: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: fsl: imx-pcm-fiq: Use managed buffer allocation (Jaroslav Kysela) [2003613] - ASoC: bcm: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ALSA: pxa2xx: Use managed PCM buffer allocation (Jaroslav Kysela) [2003613] - ASoC: rt5514: make array div static const, makes object smaller (Jaroslav Kysela) [2003613] - ASoC: codecs: ad193x: add support for 96kHz and 192kHz playback rates (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_get_xr_sx() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_limit_volume() (Jaroslav Kysela) [2003613] - ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_volsw_sx() (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw_max98373: remove useless inits (Jaroslav Kysela) [2003613] - ASoC: Intel: update sof_pcm512x quirks (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Use DMI string to search for adl_mx98373_rt5682 variant (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk for Dell XPS 9710 (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Remove duplicate control for WNF filter frequency (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix inversion of ADC Notch Switch control (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda-ipc: fix reply size checking (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Kconfig: fix SoundWire dependencies (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Fix HP ElitePad 1000 G2 quirk (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headset mic input (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add support for a second headphones output (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add a byt_rt5640_get_codec_dai() helper (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Add line-out support (Jaroslav Kysela) [2003613] - ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps for the matching in-/output (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add snd_sof_dsp_check_sdw_irq ops (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: move sof_intel_dsp_desc() forward (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: hda: remove HDA_DSP_REG_SNDW_WAKE_STS definition (Jaroslav Kysela) [2003613] - ASoC: SOF: intel: add sdw_shim/alh_base to sof_intel_dsp_desc (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at snd_soc_find_dai_link() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_kcontrol_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dapm_widget_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_dai_elems_load() (Jaroslav Kysela) [2003613] - ASoC: soc-topology: cleanup cppcheck warning at soc_tplg_process_headers() (Jaroslav Kysela) [2003613] - ASoC: amd: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - soundwire: add flag to ignore all command/control for mockup devices (Jaroslav Kysela) [2003613] - ASoC: nau8824: Fix open coded prefix handling (Jaroslav Kysela) [2003613] - ASoC: uniphier: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: xilinx: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: atom: Fix reference to PCM buffer address (Jaroslav Kysela) [2003613] - ASoC: intel: skylake: Drop superfluous mmap callback (Jaroslav Kysela) [2003613] - ASoC: amd: Drop superfluous mmap callbacks (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix bclk calculation for mono (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Don't allow SND_SOC_DAIFMT_LEFT_J (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of ADC Volume control (Jaroslav Kysela) [2003613] - ASoC: v253_init: eliminate pointer to string (Jaroslav Kysela) [2003613] - ASoC: samsung: Constify static snd_soc_ops (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_of_parse_audio_simple_widgets() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_add_controls() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_unregister_component() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_daifmt_parse_format() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_get_dai_name() (Jaroslav Kysela) [2003613] - ASoC: soc-core: cleanup cppcheck warning at snd_soc_set_dmi_name() (Jaroslav Kysela) [2003613] - ASoC: Intel: Fix spelling contraction "cant" -> "can't" (Jaroslav Kysela) [2003613] - ASoC: component: Remove misplaced prefix handling in pin control functions (Jaroslav Kysela) [2003613] - ASoC: amd: fix an IS_ERR() vs NULL bug in probe (Jaroslav Kysela) [2003613] - ASoC: rt5682: enable SAR ADC power saving mode during suspend (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_runtime_setup_be_chan() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at dpcm_be_is_active() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_get_playback_capture() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_components_close() (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: cleanup cppcheck warning at soc_pcm_apply_msb() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: enforce exclusion between HDaudio and SoundWire (Jaroslav Kysela) [2003613] - ASoC: topology: Select SND_DYNAMIC_MINORS (Jaroslav Kysela) [2003613] - ASoC: rt1015: Remove unnecessary flush work on rt1015 driver (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_mx98360a: fail to initialize soundcard (Jaroslav Kysela) [2003613] - ASoC: amd: Use dev_probe_err helper (Jaroslav Kysela) [2003613] - ASoC: amd: Don't show messages about deferred probing by default (Jaroslav Kysela) [2003613] - ASoC: amd: enable stop_dma_first flag for cz_dai_7219_98357 dai link (Jaroslav Kysela) [2003613] - ASoC: amd: enable vangogh acp5x driver build (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dma driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh pci driver pm ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s dai driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: add vangogh i2s controller driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x pcm dma driver ops (Jaroslav Kysela) [2003613] - ASoC: amd: irq handler changes for ACP5x PCM dma driver (Jaroslav Kysela) [2003613] - ASoC: amd: add ACP5x PCM platform driver (Jaroslav Kysela) [2003613] - ASoC: amd: create acp5x platform devices (Jaroslav Kysela) [2003613] - ASoc: amd: add acp5x init/de-init functions (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP PCI driver (Jaroslav Kysela) [2003613] - ASoC: amd: add Vangogh ACP5x IP register header (Jaroslav Kysela) [2003613] - ASoC: amd: renoir: Run hibernation callbacks (Jaroslav Kysela) [2003613] - ASoC: rt5682: Adjust headset volume button threshold (Jaroslav Kysela) [2003613] - ASOC: Intel: sof_sdw: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend (Jaroslav Kysela) [2003613] - ASoC: amd: reverse stop sequence for stoneyridge platform (Jaroslav Kysela) [2003613] - ASoC: soc-pcm: add a flag to reverse the stop sequence (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: sof_sdw: add SoundWire mockup codecs for tests (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: tgl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: soc-acpi: cnl: add table for SoundWire mockup devices (Jaroslav Kysela) [2003613] - ASoC: codecs: add SoundWire mockup device support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: update quirk for jack detection in ADL RVP (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: extends SOF_RT711_JDSRC to 4 bits (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: code refactor for max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: Enable Bluetooth offload on tgl and adl (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: add support for jsl_cs4242_mx98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98360a (Jaroslav Kysela) [2003613] - ASoC: Intel: maxim-common: support max98357a (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: support arbitrary DAI link sequence (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Update ADL descriptor to use ACPI power states (Jaroslav Kysela) [2003613] - ASoC: rt5631: Fix regcache sync errors on resume (Jaroslav Kysela) [2003613] - ASoC: amd: fix spelling mistakes (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: use helper function to get bclk frequency (Jaroslav Kysela) [2003613] - ASoC: SOF: add a helper to get topology configured bclk (Jaroslav Kysela) [2003613] - ASoC: tegra: Use ADMAIF component for DMA allocations (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: fix xrun issue on platform with max98373 (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: mark runtime-pm functions as __maybe_unused (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Remove handing of disabled runtime PM (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Correct suspend-resume callbacks (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Reset global variable (Jaroslav Kysela) [2003613] - ASoC: tegra30: ahub: Switch to use reset-bulk API (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Reset hardware properly (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Use clk_bulk helpers (Jaroslav Kysela) [2003613] - ASoC: tegra: ahub: Add missing resets (Jaroslav Kysela) [2003613] - ASoC: tegra: tegra210_admaif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra20: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: simple-card: Fill in driver name (Jaroslav Kysela) [2003613] - ASoC: SOF: imx: Add missing of_node_put() in imx8_probe() (Jaroslav Kysela) [2003613] - ASoC: Intel: skl_hda_dsp_generic: Update Kconfig documentation (Jaroslav Kysela) [2003613] - ASoC: Intel: use MODULE_DEVICE_TABLE with platform_device_id tables (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: fix signed/unsigned warning (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_da7219_max98373: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: glk_rt5682_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_rt5682: shrink platform_id names below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: remove hdac-hdmi support (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: use mach data for ADL RVP DMIC count (Jaroslav Kysela) [2003613] - ASoC: tegra: Fix a NULL vs IS_ERR() check (Jaroslav Kysela) [2003613] - ASoC: rt711: add two jack detection modes (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c24xx-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: s3c2412-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: pcm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: samsung: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: remove snd_soc_of_parse_daifmt() (Jaroslav Kysela) [2003613] - ASoC: simple-card-utils: switch to use snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_parse_format/clock_provider() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_fliped() (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_daifmt_clock_provider_from_bitmap() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: fix race condition on system suspend (Jaroslav Kysela) [2003613] - ASoC: fsi: fix spelling mistake (Jaroslav Kysela) [2003613] - ASoC: Intel: bdw-rt5677: remove unnecessary oom message (Jaroslav Kysela) [2003613] - ASoC: spear: spdif_out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: sprd: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: soc-core: Fix the error return code in snd_soc_of_parse_audio_routing() (Jaroslav Kysela) [2003613] - ASoC: sti: sti_uniperif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: spdifrx: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: sai: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: stm32: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: make hdmi_codec_controls static (Jaroslav Kysela) [2003613] - ASoC: rockchip: spdif: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: pdm: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: rockchip: i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Correct definition of CS42L42_ADC_PDN_MASK (Jaroslav Kysela) [2003613] - ASoC: hisilicon: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: jz4740-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-spdif-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-parallel-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-out: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: img-i2s-in: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: dwc: dwc-i2s: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ASoC: tegra: Squash utils into common machine driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Specify components string for each card (Jaroslav Kysela) [2003613] - ASoC: tegra: Unify ASoC machine drivers (Jaroslav Kysela) [2003613] - ASoC: tegra: SND_SOC_TEGRA_AUDIO_GRAPH_CARD should depend on SND_SOC_TEGRA (Jaroslav Kysela) [2003613] - ASoC: tegra20-spdif: remove "default m" (Jaroslav Kysela) [2003613] - ASoC: tegra: Add audio graph based card driver (Jaroslav Kysela) [2003613] - ASoC: tegra: Set driver_name=tegra for all machine drivers (Jaroslav Kysela) [2003613] - ASoC: rt5640: Make codec selectable (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add a prepare hook (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Add iec958 controls (Jaroslav Kysela) [2003613] - ASoC: rt5645: Avoid upgrading static warnings to errors (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: Rework to support more controls (Jaroslav Kysela) [2003613] - ASoC: soc-core: don't use discriminatory terms on snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca: handle mbq_regmap in rt711_sdca_io_init (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: add readable for SDW_SDCA_CTL() registers (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: set regcache_cache_only false before reading RT5682_DEVICE_ID (Jaroslav Kysela) [2003613] - ASoC: rt5682: Fix a problem with error handling in the io init function of the soundwire (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca: fix clock stop prepare timeout issue (Jaroslav Kysela) [2003613] - ASoC: rt715-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt715-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt711-sdca-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt700-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt5682-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1316-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: rt1308-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: use first_hw_init flag on resume (Jaroslav Kysela) [2003613] - ASoC: max98373-sdw: add missing memory allocation check (Jaroslav Kysela) [2003613] - ASoC: hdmi-codec: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: fsi: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: pcm3168a: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: ak4613: add .auto_selectable_formats support (Jaroslav Kysela) [2003613] - ASoC: soc-core: add snd_soc_runtime_get_dai_fmt() (Jaroslav Kysela) [2003613] - ASoC: soc-core: move snd_soc_runtime_set_dai_fmt() to upside (Jaroslav Kysela) [2003613] - ASoC: Intel: Skylake: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - mfd: arizona: Allow building arizona MFD-core as module (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: pci-tgl: add ADL-M support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: don't print ROM status if cl_dsp_init() fails (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: clean up hda_dsp_dump() (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: Constify sof_probe_compressed_ops (Jaroslav Kysela) [2003613] - ASoC: wm5110: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: wm5102: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs47125: Constify static struct snd_compress_ops (Jaroslav Kysela) [2003613] - ASoC: cs42l52: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs35l3x: Use neutral language in amp drivers (Jaroslav Kysela) [2003613] - ASoC: cs43130: Use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: wm8962: Use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: cs42l56: use DEVICE_ATTR_WO macro (Jaroslav Kysela) [2003613] - ASoC: tlv320aic26: use DEVICE_ATTR_RW macro (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Check jack status before reporting button events (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2400000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Add support for 2304000 Bit clock (Jaroslav Kysela) [2003613] - ASoC: cs42l42: Fix 1536000 Bit Clock instability (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add quirk support for Brya and BT-offload (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add SOF_RT715_DAI_ID_FIX for AlderLake (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: remove .nonatomic for BE dailinks (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_sdw: add support for Bluetooth offload (Jaroslav Kysela) [2003613] - ASoC: Intel: common: Add entries for sdw codecs in ADL match table (Jaroslav Kysela) [2003613] - ASoC: Intel: soc-acpi: add entries for i2s machines in ADL match table (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: Remove conditions against CONFIG_PCI (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: don't return void value (Jaroslav Kysela) [2003613] - ASoC: SOF: topology: fix assignment to use le32_to_cpu (Jaroslav Kysela) [2003613] - ASoC: SOF: loader: Use snd_sof_dsp_block_read() instead sof_block_read() (Jaroslav Kysela) [2003613] - ASoC: SOF: ops: print out the polling register (Jaroslav Kysela) [2003613] - ASoC: SOF: pci: No need to cast second time to save the desc (Jaroslav Kysela) [2003613] - ASoC: SOF: Check desc->ops directly in acpi/pci/of probe functions (Jaroslav Kysela) [2003613] - ASoC: topology: Fix using uninitialized pointer (Jaroslav Kysela) [2003613] - ASoC: soc-dai: fix up hw params only if it is needed (Jaroslav Kysela) [2003613] - ASoC: soc-core: use DEVICE_ATTR_RO macro (Jaroslav Kysela) [2003613] - ASoC: topology: Add support for multiple kcontrol types to a widget (Jaroslav Kysela) [2003613] - ASoC: intel/boards: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [2003613] - ASoC: cs43130: handle errors in cs43130_probe() properly (Jaroslav Kysela) [2003613] - Revert "ASoC: cs43130: fix a NULL pointer dereference" (Jaroslav Kysela) [2003613] - ASoC: cs42l42: make HSBIAS_SENSE_EN optional (Jaroslav Kysela) [2003613] - ASoC: wm2200: remove include of wmfw.h (Jaroslav Kysela) [2003613] - ASoC: wm_adsp: mark more data structures with the const qualifier (Jaroslav Kysela) [2003613] - ASoC: Intel: bxt_da7219_max98357a: shrink platform_id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: sof_cs42l42: shrink platform id below 20 characters (Jaroslav Kysela) [2003613] - ASoC: Intel: add sof-cs42l42 machine driver (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: create sof-maxim-common module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: handle hda-dsp-common as a module (Jaroslav Kysela) [2003613] - ASoC: Intel: boards: add support for adl boards in sof-rt5682 (Jaroslav Kysela) [2003613] - ASoC: Intel: Boards: tgl_max98373: Add BT offload support (Jaroslav Kysela) [2003613] - ASoC: SOF: Intel: hda: fix index used in inner loop (Jaroslav Kysela) [2003613] - ALSA: fireworks: add support for Loud Onyx 1200f quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Track 16 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU Traveler mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: remove TODO for interaction with userspace about control message (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functional regression for Mackie Onyx 1640i in v5.14 or later (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: export meter information to userspace as float value (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: refine parser for meter information in register DSP models (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix null pointer dereference when polling hwdep character device (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: notify event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: queue event for parameter change in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for line input parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer output parameters in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: parse messages for mixer source parameters in register-DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add ioctl command to read cached hardware meter (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser for meter information in command DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add message parser to gather meter information in register DSP model (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix truncated bytes in message tracepoints (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix transmission method for Loud models based on OXFW971 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896HD (Jaroslav Kysela) [2003613] - ALSA: oxfw: fix functioal regression for silence in Apogee Duet FireWire (Jaroslav Kysela) [2003613] - ALSA: bebob: correct duplicated entries with TerraTec OUI (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM stream is found (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix register handling for 828 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for source detection of sampling clock in v3 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for packet format detection in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro instead of magic number for clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for AES/EBU clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: code refactoring for detection of clock source in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix detection for S/PDIF source on optical interface in v2 protocol (Jaroslav Kysela) [2003613] - ALSA: bebob: add support for ToneWeal FW66 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix rx packet format at higher rate for MOTU 828 mk3 Hybrid (Jaroslav Kysela) [2003613] - ALSA: bebob: fix rx packet format for Yamaha GO44/GO46, Terratec Phase 24/x24 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix stream format for MOTU 8pre FireWire (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 896 (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for MOTU 828 (Jaroslav Kysela) [2003613] - ALSA: bebob: Fix bit flag quirk constants (Jaroslav Kysela) [2003613] - ALSA: firewire: fill Kconfig with entries for devices based on DICE ASICs (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entries for Phonic Helix Board and FireFly series (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for M-Audio models (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Acoustic Reality eAR Master One, Eroica, Figaro, and Ciaccona (Jaroslav Kysela) [2003613] - ALSA: bebob: correct device entry for Mackie D.2 FireWire option card (Jaroslav Kysela) [2003613] - ALSA: fireworks: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: bebob: fulfil device entries (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replace in_interrupt() with in_softirq() (Jaroslav Kysela) [2003613] - ALSA: bebob: code refactoring for model-dependent quirks (Jaroslav Kysela) [2003613] - ALSA: bebob: delete workaround for protocol version 3 (Jaroslav Kysela) [2003613] - ALSA: bebob: dismiss sleep after breaking connections (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete workqueue for period update (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: operate for period elapse event in process context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: delete unused kernel API (Jaroslav Kysela) [2003613] - ALSA: fireface: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: dice: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: oxfw: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: fireworks: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: bebob: cease from delayed card registration (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: add support for hybrid model of MOTU Ultralite mk3 (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: remove useless operations for kernel preemption (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: fix error codes for allocation failure (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: fix error return code in snd_motu_stream_reserve_duplex() (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: sequence replay for source packet header (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: cache event ticks in source packet header per data block (Jaroslav Kysela) [2003613] - ALSA: firewire-motu: use macro for magic numbers relevant to IEC 61883-1 (Jaroslav Kysela) [2003613] - ALSA: bebob: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: dice: wait just for NOTIFY_CLOCK_ACCEPTED after GLOBAL_CLOCK_SELECT operation (Jaroslav Kysela) [2003613] - ALSA: fireface: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-tascam: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: firewire-digi00x: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: oxfw: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: perform sequence replay for media clock recovery (Jaroslav Kysela) [2003613] - ALSA: fireworks: delete SYTMATCH clock source (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: support NO_PERIOD_WAKEUP in ALSA PCM runtime (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: transfer rx packets on-the-fly when replaying (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: replay sequence of incoming packets for outgoing packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add replay target to cache sequence of packet (Jaroslav Kysela) [2003613] - ALSA: bebob: distinguish M-Audio ProFire Lightbridge quirk (Jaroslav Kysela) [2003613] - ALSA: bebob: cancel switching connection order (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: obsolete callbacked member (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: drop initial NODATA or empty packet (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for transfer delay (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of data block sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of syt sequence (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for generation of packet descriptors (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: pool sequence of packet in IT context independently (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: add flag to unaware of syt in CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: Fix uninitialized variable err issue (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: change waking up timing to process packets (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IT contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to start several IT/IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: skip initial packets instead of scheduling IR context (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: start processing content of packet at the same cycle in several IR contexts (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for selection of IT context header length (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for calculation of context payload (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for size of CIP header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: insert descriptor for skipped cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: check cycle continuity (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for check of CIP header about payload size (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for parser of IR context header (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for helper function to compute OHCI 1394 cycle (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for sequence descriptor' (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: handle the case that empty isochronous packet payload for CIP (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring to refer the same frame count per period in domain structure (Jaroslav Kysela) [2003613] - ALSA: oxfw: add quirk flag for blocking transmission method (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for wrong_dbs quirk (Jaroslav Kysela) [2003613] - ALSA: firewire-lib: code refactoring for jumbo payload quirk (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for jumbo-payload quirk in OXFW970 (Jaroslav Kysela) [2003613] - ALSA: oxfw: add comment for the type of ASICs (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Mackie Onyx Sattelite (Jaroslav Kysela) [2003613] - ALSA: oxfw: add explicit device entry for Loud Technologies Tapco Link.FireWire 4x6 (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring to detect mackie models (Jaroslav Kysela) [2003613] - ALSA: oxfw: code refactoring for existent device entry with specifier_id and version (Jaroslav Kysela) [2003613] - ALSA: firewire-lib/motu: use int type for the value of bitwise OR with enumerator-constant (Jaroslav Kysela) [2003613] - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro" (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for Clevo NJ51CU (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Disable silent stream on GLK (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add new alc285-hp-amp-init model (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Amp init fixup for HP ZBook 15 G6 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: fix HDA codec entry table order for ADL-P (Jaroslav Kysela) [2003613] - ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set PMSG_ON earlier inside cs8409 driver (Jaroslav Kysela) [2003613] - ALSA: ctxfi: Fix out-of-range access (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix LED on HP ProBook 435 G7 (Jaroslav Kysela) [2003613] - ALSA: cmipci: Drop stale variable assignment (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASRock NUC Box 1100 (Jaroslav Kysela) [2003613] - ALSA: hda: fix general protection fault in azx_runtime_idle (Jaroslav Kysela) [2003613] - ALSA: hda: Free card instance properly at probe errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for ASUS UX550VE (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC70HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14 (Jaroslav Kysela) [2003613] - ALSA: ISA: not for M68K (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fixes HP Spectre x360 15-eb1xxx speakers (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo PC50HS (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo 13s Gen2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel: Allow repeatedly probing on codec configuration errors (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for TongFang PHxTxX1 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - ALC236 headset MIC recording issue (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add quirk for Clevo X170KM-G (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Complete partial device name to avoid ambiguity (Jaroslav Kysela) [2003613] - ALSA: hda - Enable headphone mic on Dell Latitude laptops with ALC3254 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell Precision 5560 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Use position buffer for SKL+ again (Jaroslav Kysela) [2003613] - ALSA: hda: Reduce udelay() at SKL+ position reporting (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Setup Dolphin Headset Mic as Phantom Jack (Jaroslav Kysela) [2003613] - ALSA: pcxhr: "fix" PCXHR_REG_TO_PORT definition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirks to enable speaker output for Lenovo Legion 7i 15IMHG05, Yoga 7i 14ITL5/15ITL5, and 13s Gen2 laptops. (Jaroslav Kysela) [2003613] - Revert "ALSA: hda: Drop workaround for a hang at shutdown again" (Jaroslav Kysela) [2003613] - ALSA: vx222: fix null-ptr-deref (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Initialize Codec only in init fixup. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Ensure Type Detection is only run on startup when necessary (Jaroslav Kysela) [2003613] - ALSA: hda: Disable runtime resume at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [2003613] - ALSA: hda: Code refactoring snd_hda_pick_fixup() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/analog - Sink ad198x_shutup() and shuffle CONFIG_PM guards (Jaroslav Kysela) [2003613] - ALSA: hda/sigmatel - Sink stac_shutup() into stac_suspend() (Jaroslav Kysela) [2003613] - ALSA: hda: Drop workaround for a hang at shutdown again (Jaroslav Kysela) [2003613] - ALSA: hda/via: Apply runtime PM workaround for ASUS B23E (Jaroslav Kysela) [2003613] - ALSA: hda: Fix hang during shutdown due to link reset (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop (Jaroslav Kysela) [2003613] - ALSA: hda: Nuke unused reboot_notify callback (Jaroslav Kysela) [2003613] - ALSA: hda: Suspend codec at shutdown (Jaroslav Kysela) [2003613] - ALSA: hda: conexant: Turn off EAPD at suspend, too (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent pops and clicks during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Unmute/Mute codec when stream starts/stops (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Follow correct CS42L42 power down sequence for suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Remove unnecessary delays (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use timeout rather than retries for I2C transaction waits (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Set fixed sample rate of 48kHz for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Enable Full Scale Volume for Line Out Codec on Dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add support for dolphin (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Add Support to disable jack type detection for CS42L42 (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support multiple sub_codecs for Suspend/Resume/Unsol events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move codec properties to its own struct (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Separate CS8409, CS42L42 and project functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Support i2c bulk read/write functions (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid re-setting the same page as the last access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Avoid setting the same I2C address for every access (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Dont disable I2C clock between consecutive accesses (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Generalize volume controls (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Prevent I2C access during suspend time (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Simplify CS42L42 jack detect. (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask CS42L42 wake events (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited response for the first boot (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unsolicited responses during suspend (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Disable unnecessary Ring Sense for Cyborg/Warlock/Bullseye (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Reduce HS pops/clicks for Cyborg (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Mask all CS42L42 interrupts on initialization (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Use enums for register names and coefficients (Jaroslav Kysela) [2003613] - ALSA: hda/cs8409: Move arrays of configuration to a new file (Jaroslav Kysela) [2003613] - ALSA: hda/cirrus: Move CS8409 HDA bridge to separate module (Jaroslav Kysela) [2003613] - ALSA: hda - fix the 'Capture Switch' value change notifications (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: pci: cs46xx: Fix set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: hda: Add quirk for ASUS Flow x13 (Jaroslav Kysela) [2003613] - ALSA: pci/korg1212: completely remove 'set but not used' warnings (Jaroslav Kysela) [2003613] - ALSA: pcxhr: use __func__ to get funcion's name in an output message (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: add mic quirk for Acer SF314-42 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256) (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix wrongly shuffled firmware loader code (Jaroslav Kysela) [2003613] - ALSA: als300: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix missing chip initialization (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add quirk to force pin connectivity on NUC10 (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix error return code in snd_nm256_create() (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx222: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: trident: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Fix unaligned buffer addresses (Jaroslav Kysela) [2003613] - ALSA: pci: rme: Set up buffer type properly (Jaroslav Kysela) [2003613] - ALSA: rme9652: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme9652: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hdspm: don't disable if not enabled (Jaroslav Kysela) [2003613] - ALSA: hdspm: Fix fall-through warnings for Clang (Jaroslav Kysela) [2003613] - ALSA: hdsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: riptide: Replace tasklet with threaded irq (Jaroslav Kysela) [2003613] - ALSA: riptide: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [2003613] - ALSA: oxygen: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: nm256: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lx6464es: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: lola: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: korg1212: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1724: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ice1712: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ca0106: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aw2: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: au88x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ali5451: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: via82xx: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: sis7019: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme96: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: rme32: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: maestro3: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: fm801: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1968: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: es1938: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ens137x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs5530: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cs4281: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: cmipci: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: bt87x: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: azt3328: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als4000: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: als300: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: ad1889: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: atiixp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix pop noise and 2 Front Mic issues on a machine (Jaroslav Kysela) [2003613] - ALSA: hdmi: Expose all pins on MSI MS-7C94 board (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Skip ac97 clock measurement on VM (Jaroslav Kysela) [2003613] - ALSA: hda/hdmi: Add option to enable all pins forcibly (Jaroslav Kysela) [2003613] - ALSA: ice1724: Remove superfluous loop over model table (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: remove redundant initialization of variable status (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix breakage at ac97 clock measurement (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute led of the HP Pavilion 15-eh1xxx series (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add ALC285 HP init procedure (Jaroslav Kysela) [2003613] - ALSA: hda/realtek - Add type for ALC287 (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook PC (Jaroslav Kysela) [2003613] - ALSA: hda: Release codec display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda: Release controller display power during shutdown/reboot (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too (Jaroslav Kysela) [2003613] - ALSA: hdsp: fix a test for copy_to_user() failure (Jaroslav Kysela) [2003613] - ALSA: hda: Add IRQ check for platform_get_irq() (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Add another ALC236 variant support (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook x360 830 G8 (Jaroslav Kysela) [2003613] - ALSA: hda/tegra: Use devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [2003613] - ALSA: trident: Fix build error (Jaroslav Kysela) [2003613] - ALSA: trident: Drop shadow TLB pointer table (Jaroslav Kysela) [2003613] - ALSA: ymfpci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx222: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: trident: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme9652: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hdsp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: riptide: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: pcxhr: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: nm256: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mixart: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: korg1212: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ice1712: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: emu10k1: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: echoaudio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs5535audio: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs46xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ca0106: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: au88x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ac97: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: via82xx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: sonicvibes: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme96: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: rme32: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: maestro3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: intel8x0: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: fm801: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1968: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: es1938: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ens137x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cs4281: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: cmipci: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: bt87x: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: azt3328: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: atiixp: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als4000: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: als300: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ak4531: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: ad1889: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: hda/realtek: Change device names for quirks to barebone names (Jaroslav Kysela) [2003613] - ALSA: hda/ca0132: Make a const array static, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: pci: lx6464es: remove useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: Fix incorrect use of vp->state (Jaroslav Kysela) [2003613] - ALSA: pcsp: Make hrtimer forwarding more robust (Jaroslav Kysela) [2003613] - ALSA: pcsp: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: dummy: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: aloop: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mpu401: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: serial-u16550: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: mtpav: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: virmidi: Allocate resources with device-managed APIs (Jaroslav Kysela) [2003613] - ALSA: vx: Manage vx_core object with devres (Jaroslav Kysela) [2003613] - ALSA: aloop: Fix spelling mistake "synchronization" -> "synchronization" (Jaroslav Kysela) [2003613] - ALSA: serial: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: opl3: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: vx: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: mpu401: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: drivers: opl3: fix useless self-comparison (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: go through HDAS ACPI at max depth of 2 (Jaroslav Kysela) [2003613] - ALSA: hda: intel-sdw-acpi: harden detection of controller (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for CML devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for JSL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: avoid write to STATESTS if controller is in reset (Jaroslav Kysela) [2003613] - ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336 codec (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_ext_stream: fix potential locking issues (Jaroslav Kysela) [2003613] - ALSA: hda: hdac_stream: fix potential locking issue in snd_hdac_stream_assign() (Jaroslav Kysela) [2003613] - ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID (Jaroslav Kysela) [2003613] - ALSA: usb-audio: usx2y - use GFP_NOIO flag (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reorder snd_djm_devices[] entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Don't start stream for capture at prepare (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Switch back to non-latency mode at a later point (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for Audient iD14 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 400 (Jaroslav Kysela) [2003613] - ALSA: ua101: fix division by zero at probe (Jaroslav Kysela) [2003613] - ALSA: line6: fix control and interrupt message timeouts (Jaroslav Kysela) [2003613] - ALSA: 6fire: fix control and bulk message timeouts (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix null pointer dereference on pointer cs_desc (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix microphone sound on Jieli webcam. (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Initialize every feature unit once at probe time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Drop superfluous error message after disconnection (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Downgrade error message in get_ctl_value_v2() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: add Schiit Hel device to quirk table (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk for VF0770 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Less restriction for low-latency playback mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for the Pioneer DJM 750MK2 Mixer/Soundcard (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pass JOINT_DUPLEX info flag for implicit fb streams (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Enable rate validation for Scarlett devices (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix packet size calculation regression (Jaroslav Kysela) [2003613] - ALSA: usb-audio: disable implicit feedback sync for Behringer UFX1204 and UFX1604 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid killing in-flight URBs during draining (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Improved lowlatency playback support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add spinlock to stop_urbs() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Check available frames for the next packet size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency mode for implicit feedback sync (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Disable low-latency playback for free-wheel mode (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Rename early_playback_start flag with lowlatency_playback (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix possible race at sync of urb completions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Restrict rates for the shared clocks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix a missing error check in scarlett gen2 mixer (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix comment reference in __uac_clock_find_source (Jaroslav Kysela) [2003613] - ALSA: usx2y: Prefer struct_size over open coded arithmetic (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Unify mixer resume and reset_resume procedure (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 800 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add lowlatency module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Work around for XRUN with low latency playback (Jaroslav Kysela) [2003613] - ASoC: dmaengine: Introduce module option prealloc_buffer_size_kbytes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move set-interface-first workaround into common quirk (Jaroslav Kysela) [2003613] - ALSA: doc: Fix indentation warning (Jaroslav Kysela) [2003613] - ALSA: hda: Update documentation for aliasing via the model option (Jaroslav Kysela) [2003613] - ALSA: doc: Add the description of quirk_flags option for snd-usb-audio (Jaroslav Kysela) [2003613] - ALSA: doc: Fix reference to mixart.rst (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Update the documentation for the new delayed_register option (Jaroslav Kysela) [2003613] - ALSA: hda - Update descriptions about new position_fix values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix regression on Sony WALKMAN NW-A45 DAC (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Input source control - digidesign mbox (Jaroslav Kysela) [2003613] - ALSA: usb-audio: make array static const, makes object smaller (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add quirk_flags module option (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move generic DSD raw detection into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ignore_ctl_error check into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move autosuspend quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move rate validation quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move interface setup delay into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move control message delay quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move ITF-USB DSD quirk handling into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move clock setup quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move playback_first flag into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move tx_length quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move txfr_quirk handling to quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Move media-controller API quirk into quirk_flags (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Introduce quirk_flags field (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Avoid unnecessary or invalid connector selection at resume (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum 600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix superfluous autosuspend recovery (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix incorrect clock source setting (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix line out/speaker switching notifications (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Correct channel mute status after mute button pressed (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Direct Monitor control name for 2i2 (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix Mute/Dim/MSD Mode control names (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add missing proc text entry for BESPOKEN type (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Reduce latency at playback start, take#2 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usx2y: fix spelling mistakes (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix for loop increment in scarlett2_usb_get_config (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix scarlett2_*_ctl_put() return values again (Jaroslav Kysela) [2003613] - ALSA: scarlett2: Fix pad count for 18i8 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for the talkback feature (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update get_config to do endian conversion (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add speaker switching support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update mux controls to allow updates (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add sw_hw_ctls and mux_ctls (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split up sw_hw_enum_ctl_put() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Label 18i8 Gen 3 line outputs correctly (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add direct monitor support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add phantom power switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "air" switch support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for Solo and 2i2 Gen 3 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow bit-level access to config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move get config above set config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 MSD mode switch (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add support for "input-other" notify (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add Gen 3 mixer support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix wrong resume call (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix Level Meter control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Split struct scarlett2_ports (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Allow arbitrary ordering of mux entries (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add mute support (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add scarlett2_vol_ctl_write() helper (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove repeated device info comments (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Move info lookup out of init function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Improve device info lookup (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Reformat scarlett2_config_items[] (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Merge common line in capture strings (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add "Sync Status" control (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Always enable interrupt polling (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Update initialisation sequence (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add usb_tx/rx functions (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix OOB access at proc output (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove hard-coded USB #defines (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Don't copy struct scarlett2_config (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix union usage in mixer control callbacks (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix data_mutex lock (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Add temp variable for consistency (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename struct scarlett2_mixer_data (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Rename buttons/interrupts/vol (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove redundant info->button_count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove interrupt debug message (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove unused/useless code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Coding style improvements (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Remove incorrect S/PDIF comment (Jaroslav Kysela) [2003613] - ALSA: usb-audio: fix rate on Ozone Z90 USB headset (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Add support for Denon DN-X1600 (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mux at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: scarlett2: Read mixer volumes at init time (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Factor out DSD bitrev copy function (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring delay account code (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Pre-calculate buffer byte size (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Make snd_usb_pcm_delay() static (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Remove the repeated declaration (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Fix uninitialized variable at __uac_clock_find_source() (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Handle error for the current selector gracefully (Jaroslav Kysela) [2003613] - ALSA: usb-audio: Refactoring UAC2/3 clock setup code (Jaroslav Kysela) [2003613] - ALSA: usx2y: Nuke pcm_list (Jaroslav Kysela) [2003613] - ALSA: usx2y: Cleanup probe and disconnect callbacks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Don't call free_pages_exact() with NULL address (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix shmem initialization (Jaroslav Kysela) [2003613] - ALSA: usxy2: Fix potential doubly allocations (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential memory leaks (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid self-killing (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix potential leaks of uninitialized memory (Jaroslav Kysela) [2003613] - ALSA: usx2y: Coding style fixes (Jaroslav Kysela) [2003613] - ALSA: usx2y: Fix spaces (Jaroslav Kysela) [2003613] - ALSA: usx2y: Avoid camelCase (Jaroslav Kysela) [2003613] - module: remove never implemented MODULE_SUPPORTED_DEVICE (Jaroslav Kysela) [2003613] - ALSA: pcm: Allow exact buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed request_dma() (Jaroslav Kysela) [2003613] - ALSA: core: use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: core: Fix double calls of snd_card_free() via devres (Jaroslav Kysela) [2003613] - ALSA: core: Add managed card creation (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap without buffer preallocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Call substream ack() method upon compat mmap commit (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap breakage without explicit buffer setup (Jaroslav Kysela) [2003613] - ALSA: pcm - fix mmap capability check for the snd-dummy driver (Jaroslav Kysela) [2003613] - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Catch call with NULL snd_dma_buffer pointer (Jaroslav Kysela) [2003613] - ALSA: memalloc: Remove a stale comment (Jaroslav Kysela) [2003613] - ALSA: memalloc: Use proper SG helpers for noncontig allocations (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix a typo in snd_dma_buffer_sync() description (Jaroslav Kysela) [2003613] - ALSA: PCM: Fix NULL dereference at mmap checks (Jaroslav Kysela) [2003613] - ALSA: pcm: Check mmap capability of runtime dma buffer at first (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix mmap capability check (Jaroslav Kysela) [2003613] - ALSA: pcm: use krealloc_array() (Jaroslav Kysela) [2003613] - ALSA: pcm: Add SNDRV_PCM_INFO_EXPLICIT_SYNC flag (Jaroslav Kysela) [2003613] - ALSA: pcm: Add more disconnection checks at file ops (Jaroslav Kysela) [2003613] - mm: don't include asm/pgtable.h if linux/mm.h is already included (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix mmap of SG-buffer with WC pages (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-coherent page allocation (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support for non-contiguous page allocation (Jaroslav Kysela) [2003613] - ALSA: pcm: Unify snd_pcm_delay() and snd_pcm_hwsync() (Jaroslav Kysela) [2003613] - ALSA: core: Fix build error due to missing PAGE_SIZE (Jaroslav Kysela) [2003613] - ALSA: pcm: Workaround for a wrong offset in SYNC_PTR compat ioctl (Jaroslav Kysela) [2003613] - ALSA: memalloc: Count continuous pages in vmalloc buffer handler (Jaroslav Kysela) [2003613] - ALSA: memalloc: Store snd_dma_buffer.addr for continuous pages, too (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix pgprot for WC mmap on x86 (Jaroslav Kysela) [2003613] - ALSA: memalloc: Support WC allocation on all architectures (Jaroslav Kysela) [2003613] - ALSA: memalloc: Correctly name as WC (Jaroslav Kysela) [2003613] - ALSA: memalloc: Minor refactoring (Jaroslav Kysela) [2003613] - ALSA: memalloc: Fix regression with SNDRV_DMA_TYPE_CONTINUOUS (Jaroslav Kysela) [2003613] - ALSA: core: Add device-managed page allocator helper (Jaroslav Kysela) [2003613] - ALSA: core: Add continuous and vmalloc mmap ops (Jaroslav Kysela) [2003613] - ALSA: core: Move mmap handler into memalloc ops (Jaroslav Kysela) [2003613] - ALSA: core: Abstract memory alloc helpers (Jaroslav Kysela) [2003613] - ALSA: pcm: add snd_pcm_period_elapsed() variant without acquiring lock of PCM substream (Jaroslav Kysela) [2003613] - ALSA: pcm: Block the release until the system resume finishes (Jaroslav Kysela) [2003613] - ALSA: Drop superfluous argument from snd_power_wait() (Jaroslav Kysela) [2003613] - ALSA: pcm: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Drop snd_sgbuf_get_ptr() (Jaroslav Kysela) [2003613] - ALSA: jack: Check the return value of kstrdup() (Jaroslav Kysela) [2003613] - ALSA: seq: oss: Fix error check at system port creation (Jaroslav Kysela) [2003613] - ALSA: seq: Fix comments of wrong client number for MIDI Passthrough (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Handle missing errors in snd_pcm_oss_change_params*() (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Limit the period size to 16MB (Jaroslav Kysela) [2003613] - ALSA: pcm: oss: Fix negative period/buffer sizes (Jaroslav Kysela) [2003613] - ALSA: iec958: Split status creation and fill (Jaroslav Kysela) [2003613] - ALSA: rawmidi - fix the uninitalized user_pversion (Jaroslav Kysela) [2003613] - ALSA: rawmidi: introduce SNDRV_RAWMIDI_IOCTL_USER_PVERSION (Jaroslav Kysela) [2003613] - ALSA: rawmidi: fix incorrect array bounds check on clock_names (Jaroslav Kysela) [2003613] - ALSA: rawmidi: Add framing mode (Jaroslav Kysela) [2003613] - ALSA: seq: Fix racy deletion of subscriber (Jaroslav Kysela) [2003613] - ALSA: seq: Fix a potential UAF by wrong private_free call order (Jaroslav Kysela) [2003613] - ALSA: seq: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: timer: Unconditionally unlink slave instances, too (Jaroslav Kysela) [2003613] - ALSA: timer: Fix use-after-free problem (Jaroslav Kysela) [2003613] - ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume (Jaroslav Kysela) [2003613] - ALSA: mixer: oss: Fix racy access to slots (Jaroslav Kysela) [2003613] - ALSA: oss: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: Fix assignment in if condition (Jaroslav Kysela) [2003613] - ALSA: core: control_led: use strscpy instead of strlcpy (Jaroslav Kysela) [2003613] - ALSA: control_led - use DEVICE_ATTR_*() macro (Jaroslav Kysela) [2003613] - ALSA: ctl: Fix copy of updated id with element read/write (Jaroslav Kysela) [2003613] - ALSA: compress: Initialize mutex in snd_compress_new() (Jaroslav Kysela) [2003613] - ALSA: control: Minor optimization for SNDRV_CTL_IOCTL_POWER_STATE (Jaroslav Kysela) [2003613] - ALSA: control: Drop superfluous snd_power_wait() calls (Jaroslav Kysela) [2003613] - ALSA: control: Track in-flight control read/write/tlv accesses (Jaroslav Kysela) [2003613] - ALSA: compress: Drop unused functions (Jaroslav Kysela) [2003613] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Jaroslav Kysela) [2003613] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Jaroslav Kysela) [2003613] - regmap: sdw: use _no_pm functions in regmap_read/write (Jaroslav Kysela) [2003613] - soundwire: stream: Fix test for DP prepare complete (Jaroslav Kysela) [2003613] - soundwire/ASoC: add leading zeroes in peripheral device name (Jaroslav Kysela) [2003613] - soundwire: bandwidth allocation: improve error messages (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: remove duplicate initialization (Jaroslav Kysela) [2003613] - soundwire: cadence: remove the repeated declaration (Jaroslav Kysela) [2003613] - soundwire: bus: stop dereferencing invalid slave pointer (Jaroslav Kysela) [2003613] - soundwire: bus: add missing \n in dynamic debug (Jaroslav Kysela) [2003613] - soundwire: bus: handle -ENODATA errors in clock stop/start sequences (Jaroslav Kysela) [2003613] - soundwire: qcom: add debugfs entry for soundwire register dump (Jaroslav Kysela) [2003613] - soundwire: debugfs: use controller id and link_id for debugfs (Jaroslav Kysela) [2003613] - soundwire: cadence: do not extend reset delay (Jaroslav Kysela) [2003613] - soundwire: intel: conditionally exit clock stop mode on system suspend (Jaroslav Kysela) [2003613] - soundwire: intel: skip suspend/resume/wake when link was not started (Jaroslav Kysela) [2003613] - soundwire: intel: fix potential race condition during power down (Jaroslav Kysela) [2003613] - soundwire: intel: introduce shim and alh base (Jaroslav Kysela) [2003613] - soundwire: move intel sdw register definitions to sdw_intel.h (Jaroslav Kysela) [2003613] - soundwire: cadence: override PDI configurations to create loopback (Jaroslav Kysela) [2003613] - soundwire: cadence: add debugfs interface for PDI loopbacks (Jaroslav Kysela) [2003613] - soundwire: stream: don't program mockup device ports (Jaroslav Kysela) [2003613] - soundwire: bus: squelch error returned by mockup devices (Jaroslav Kysela) [2003613] - soundwire: stream: don't abort bank switch on Command_Ignored/-ENODATA (Jaroslav Kysela) [2003613] - soundwire: cadence: add paranoid check on self-clearing bits (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add quirk for Intel 'Bishop County' NUC M15 (Jaroslav Kysela) [2003613] - soundwire: bus: update Slave status in sdw_clear_slave_status (Jaroslav Kysela) [2003613] - soundwire: cadence: Remove ret variable from sdw_cdns_irq() (Jaroslav Kysela) [2003613] - soundwire: bus: filter out more -EDATA errors on clock stop (Jaroslav Kysela) [2003613] - soundwire: dmi-quirks: add ull suffix for SoundWire _ADR values (Jaroslav Kysela) [2003613] - soundwire: export sdw_update() and sdw_update_no_pm() (Jaroslav Kysela) [2003613] - soundwire: bus: Make sdw_nwrite() data pointer argument const (Jaroslav Kysela) [2003613] - soundwire: intel: move to auxiliary bus (Jaroslav Kysela) [2003613] - soundwire: add missing kernel-doc description (Jaroslav Kysela) [2003613] - soundwire: cadence_master: always set CMD_ACCEPT (Jaroslav Kysela) [2003613] - soundwire: bus: only use CLOCK_STOP_MODE0 and fix confusions (Jaroslav Kysela) [2003613] - software node: Handle software node injection to an existing device properly (Mark Langsdorf) [2032600] - software node: Allow node addition to already existing device (Mark Langsdorf) [2032600] - driver core: clear deferred probe reason on probe retry (Mark Langsdorf) [2032600] - driver core: add deferring probe reason to devices_deferred property (Mark Langsdorf) [2032600] - driver core: Fix locking bug in deferred_probe_timeout_work_func() (Mark Langsdorf) [2032600] - PM: runtime: Fix race getting/putting suppliers at probe (Mark Langsdorf) [2032600] - PM: runtime: Fix ordering in pm_runtime_get_suppliers() (Mark Langsdorf) [2032600] - PM: runtime: Defer suspending suppliers (Mark Langsdorf) [2032600] - software node: Fix device_add_software_node() (Mark Langsdorf) [2032600] - software node: Fix node registration (Mark Langsdorf) [2032600] - drivers/base/memory: don't store phys_device in memory blocks (Mark Langsdorf) [2032600] - arch_numa: fix common code printing of phys_addr_t (Mark Langsdorf) [2032600] - driver core: platform: Drop of_device_node_put() wrapper (Mark Langsdorf) [2032600] - regmap: sdw-mbq: use MODULE_LICENSE("GPL") (Mark Langsdorf) [2032600] - regmap: sdw: use no_pm routines for SoundWire 1.2 MBQ (Mark Langsdorf) [2032600] - regmap: sdw: use _no_pm functions in regmap_read/write (Mark Langsdorf) [2032600] - PM: domains: Mark fwnodes when their powerdomain is added/removed (Mark Langsdorf) [2032600] - driver core: fw_devlink: Handle suppliers that don't use driver core (Mark Langsdorf) [2032600] - driver core: Add fw_devlink.strict kernel param (Mark Langsdorf) [2032600] - driver core: platform: Emit a warning if a remove callback returned non-zero (Mark Langsdorf) [2032600] - PM: domains: Simplify the calculation of variables (Mark Langsdorf) [2032600] - PM: sleep: Use dev_printk() when possible (Mark Langsdorf) [2032600] - media: software_node: Add support for fwnode_graph*() family of functions (Mark Langsdorf) [2032600] - media: software_node: unregister software_nodes in reverse order (Mark Langsdorf) [2032600] - media: software_node: Enforce parent before child ordering of nodes arrays (Mark Langsdorf) [2032600] - media: device property: Call fwnode_graph_get_endpoint_by_id() for fwnode->secondary (Mark Langsdorf) [2032600] - media: device property: Return true in fwnode_device_is_available for NULL ops (Mark Langsdorf) [2032600] - media: software_node: Fix refcounts in software_node_get_next_child() (Mark Langsdorf) [2032600] - PM: domains: Add "performance" column to debug summary (Mark Langsdorf) [2032600] - PM: domains: Make of_genpd_add_subdomain() return -EPROBE_DEFER (Mark Langsdorf) [2032600] - PM: domains: Make set_performance_state() callback optional (Mark Langsdorf) [2032600] - PM: domains: use device's next wakeup to determine domain idle state (Mark Langsdorf) [2032600] - PM: domains: inform PM domain of a device's next wakeup (Mark Langsdorf) [2032600] - PM: runtime: Fix resposible -> responsible in runtime.c (Mark Langsdorf) [2032600] - PM: domains: Restore comment indentation for generic_pm_domain.child_links (Mark Langsdorf) [2032600] - PM: domains: Fix up terminology with parent/child (Mark Langsdorf) [2032600] - regmap: Assign boolean values to a bool variable (Mark Langsdorf) [2032600] - software node: Introduce device_add_software_node() (Mark Langsdorf) [2032600] - numa: Move numa implementation to common code (Mark Langsdorf) [2032600] - arm64, numa: Change the numa init functions name to be generic (Mark Langsdorf) [2032600] - driver core: fw_devlink_relax_cycle() can be static (Mark Langsdorf) [2032600] - driver core: Handle cycles in device links created by fw_devlink (Mark Langsdorf) [2032600] - driver core: Have fw_devlink use DL_FLAG_INFERRED (Mark Langsdorf) [2032600] - driver core: Add device link support for INFERRED flag (Mark Langsdorf) [2032600] - drivers: base: Kconfig: fix spelling mistake "heterogenous" -> "heterogeneous" (Mark Langsdorf) [2032600] - driver core: Add debug logs for device link related probe deferrals (Mark Langsdorf) [2032600] - drivers: base: remove unused function find_bus() (Mark Langsdorf) [2032600] - PM: runtime: Drop runtime PM references to supplier on link removal (Mark Langsdorf) [2032600] - dmaengine: idxd: Add wq occupancy information to sysfs attribute (Julia Denham) [1971887] - vdpa/mlx5: Forward only packets with allowed MAC address (Cindy Lu) [2031595] - vdpa/mlx5: Support configuration of MAC (Cindy Lu) [2031595] - vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit (Cindy Lu) [2031595] - vdpa_sim_net: Enable user to set mac address and mtu (Cindy Lu) [2031595] - vdpa: Enable user to set mac and mtu of vdpa device (Cindy Lu) [2031595] - vdpa: Use kernel coding style for structure comments (Cindy Lu) [2031595] - vdpa: Introduce query of device config layout (Cindy Lu) [2031595] - vdpa: Introduce and use vdpa device get, set config helpers (Cindy Lu) [2031595] - vdpa/mlx5: Propagate link status from device to vdpa driver (Cindy Lu) [2031595] - vdpa/mlx5: Rename control VQ workqueue to vdpa wq (Cindy Lu) [2031595] - vdpa/mlx5: Remove mtu field from vdpa net device (Cindy Lu) [2031595] - eni_vdpa: add vDPA driver for Alibaba ENI (Cindy Lu) [2031595] - vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE (Cindy Lu) [2031595] - virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min} (Cindy Lu) [2031595] - vdpa: min vq num of vdpa device cannot be greater than max vq num (Cindy Lu) [2031595] - vdpa: add new callback get_vq_num_min in vdpa_config_ops (Cindy Lu) [2031595] - vp_vdpa: add vq irq offloading support (Cindy Lu) [2031595] - vdpa: fix typo (Cindy Lu) [2031595] - vhost-vdpa: Fix the wrong input in config_cb (Cindy Lu) [2031595] - vhost_vdpa: unset vq irq before freeing irq (Cindy Lu) [2031595] - vdpa: potential uninitialized return in vhost_vdpa_va_map() (Cindy Lu) [2031595] - vdpa/mlx5: Avoid executing set_vq_ready() if device is reset (Cindy Lu) [2031595] - vdpa/mlx5: Clear ready indication for control VQ (Cindy Lu) [2031595] - vdpa: Support transferring virtual addressing during DMA mapping (Cindy Lu) [2031595] - vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap() (Cindy Lu) [2031595] - vdpa: Add an opaque pointer for vdpa_config_ops.dma_map() (Cindy Lu) [2031595] - vhost-iotlb: Add an opaque pointer for vhost IOTLB (Cindy Lu) [2031595] - vhost-vdpa: Handle the failure of vdpa_reset() (Cindy Lu) [2031595] - vdpa: Add reset callback in vdpa_config_ops (Cindy Lu) [2031595] - vdpa: Fix some coding style issues (Cindy Lu) [2031595] - vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro (Cindy Lu) [2031595] - vdpa_sim: Use iova_shift() for the size passed to alloc_iova() (Cindy Lu) [2031595] - vdpa/mlx5: Add multiqueue support (Cindy Lu) [2031595] - vdpa/mlx5: Add support for control VQ and MAC setting (Cindy Lu) [2031595] - vdpa/mlx5: Ensure valid indices are provided (Cindy Lu) [2031595] - vdpa/mlx5: Decouple virtqueue callback from struct mlx5_vdpa_virtqueue (Cindy Lu) [2031595] - vdpa/mlx5: function prototype modifications in preparation to control VQ (Cindy Lu) [2031595] - vdpa/mlx5: Remove redundant header file inclusion (Cindy Lu) [2031595] - vDPA/ifcvf: enable multiqueue and control vq (Cindy Lu) [2031595] - vDPA/ifcvf: detect and use the onboard number of queues directly (Cindy Lu) [2031595] - vDPA/ifcvf: implement management netlink framework for ifcvf (Cindy Lu) [2031595] - vDPA/ifcvf: introduce get_dev_type() which returns virtio dev id (Cindy Lu) [2031595] - vdpa/mlx5: Fix queue type selection logic (Cindy Lu) [2031595] - vdpa/mlx5: Avoid destroying MR on empty iotlb (Cindy Lu) [2031595] - virtio_vdpa: reject invalid vq indices (Cindy Lu) [2031595] - vdpa: Add documentation for vdpa_alloc_device() macro (Cindy Lu) [2031595] - vDPA/ifcvf: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vp_vdpa: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vdpa_sim: Fix return value check for vdpa_alloc_device() (Cindy Lu) [2031595] - vhost: Fix the calculation in vhost_overflow() (Cindy Lu) [2031595] - vhost-vdpa: Fix integer overflow in vhost_vdpa_process_iotlb_update() (Cindy Lu) [2031595] - iommu/vt-d: Fix unmap_pages support (Jerry Snitselaar) [2027765] - dm sysfs: use default_groups in kobj_type (Benjamin Marzinski) [2047358] - dm space map common: add bounds check to sm_ll_lookup_bitmap() (Benjamin Marzinski) [2047358] - dm btree: add a defensive bounds check to insert_at() (Benjamin Marzinski) [2047358] - dm btree remove: change a bunch of BUG_ON() calls to proper errors (Benjamin Marzinski) [2047358] - dm btree spine: eliminate duplicate le32_to_cpu() in node_check() (Benjamin Marzinski) [2047358] - dm btree spine: remove extra node_check function declaration (Benjamin Marzinski) [2047358] - selftests/bpf: Adding delay in socketmap_listen to reduce flakyness (Felix Maurer) [2026433] - net: openvswitch: Fix ct_state nat flags for conns arriving from tc (Marcelo Ricardo Leitner) [2040334] - net: openvswitch: Fix matching zone id for invalid conns arriving from tc (Marcelo Ricardo Leitner) [2040452] - net/sched: flow_dissector: Fix matching on zone id for invalid conns (Marcelo Ricardo Leitner) [2040452] - net/sched: Extend qdisc control block with tc control block (Marcelo Ricardo Leitner) [2040452] - mm: Fix an use-after-free error in mm_struct (Waiman Long) [2046161] - rh_flags: Rename rh_features to rh_flags (Prarit Bhargava) [2021700] - redhat: add initial rpminspect configuration (Augusto Caringi)- can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF (Balazs Nemeth) [2026692] - drm/vmwgfx: Fix stale file descriptors on failed usercopy (Dave Airlie) [2047602] {CVE-2022-22942} - drm/i915: Flush TLBs before releasing backing store (Dave Airlie) [2044329] {CVE-2022-0330} - [s390] s390/pci: move pseudo-MMIO to prevent MIO overlap (Mete Durlu) [2047757] - [s390] scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV FCP devices (Mete Durlu) [2048919] - tun: fix bonding active backup with arp monitoring (Jonathan Toppins) [2024964] - x86/hyperv: Properly deal with empty cpumasks in hyperv_flush_tlb_multi() (Vitaly Kuznetsov) [2044237] - xfs: check sb_meta_uuid for dabuf buffer recovery (Bill O'Donnell) [2020764] - vfs: fs_context: fix up param length parsing in legacy_parse_param (Carlos Maiolino) [2040586] {CVE-2022-0185} - KVM: nVMX: Allow VMREAD when Enlightened VMCS is in use (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Implement evmcs_field_offset() suitable for handle_vmread() (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Rename vmcs_to_field_offset{,_table} (Vitaly Kuznetsov) [2012105] - KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS (Vitaly Kuznetsov) [2012105] - KVM: nVMX: Use INVALID_GPA for pointers used in nVMX. (Vitaly Kuznetsov) [2012105] - x86/kvm: Always inline evmcs_write64() (Vitaly Kuznetsov) [2012105] - powerpc/powernv: Remove POWER9 PVR version check for entry and uaccess flushes (Diego Domingos) [2030954] - powerpc/pesries: Get STF barrier requirement from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - powerpc/security: Add a security feature for STF barrier (Diego Domingos) [2030954] - powerpc/pseries: Get entry and uaccess flush required bits from H_GET_CPU_CHARACTERISTICS (Diego Domingos) [2030954] - drm/nouveau/disp/dp: add support for eDP link rates (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for hbr3 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for lttprs (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: fixup cr/eq delays for 1.4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: add support for tps4 (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: generate supported link rates table at detect time (Ben Skeggs) [2043523] - drm/nouveau/disp/dp: explicitly control scrambling when setting pattern (Ben Skeggs) [2043523] - drm/nouveau/disp: remove some remnant of a rework (Ben Skeggs) [2043523] - drm/nouveau: recognise GA106 (Ben Skeggs) [2043523] - redhat/scripts: Update merge-subtrees.sh (Prarit Bhargava)- pinctrl: amd: Fix wakeups when IRQ is shared with SCI (Renjith Pananchikkal) [2039124] - bonding: fix ad_actor_system option setting to default (Jonathan Toppins) [2042564 1931881] - bonding: make tx_rebalance_counter an atomic (Jonathan Toppins) [2042564] - bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed (Jonathan Toppins) [2042564] - bonding: 3ad: pass parameter bond_params by reference (Jonathan Toppins) [2042564] - bonding: complain about missing route only once for A/B ARP probes (Jonathan Toppins) [2042564] - bonding: improve nl error msg when device can't be enslaved because of IFF_MASTER (Jonathan Toppins) [2042564] - bonding: combine netlink and console error messages (Jonathan Toppins) [2042564] - bonding: add new option lacp_active (Jonathan Toppins) [2042564] - bonding: 3ad: fix the concurrency between __bond_release_one() and bond_3ad_state_machine_handler() (Jonathan Toppins) [2042564] - bonding: fix build issue (Jonathan Toppins) [2042564] - bonding: fix incorrect return value of bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_offload_ok() (Jonathan Toppins) [2042564] - bonding: Add struct bond_ipesc to manage SA (Jonathan Toppins) [2042564] - bonding: disallow setting nested bonding + ipsec offload (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_del_sa() (Jonathan Toppins) [2042564] - bonding: fix null dereference in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - bonding: fix suspicious RCU usage in bond_ipsec_add_sa() (Jonathan Toppins) [2042564] - net: bonding: Use per-cpu rr_tx_counter (Jonathan Toppins) [2042564] - bonding: remove redundant initialization of variable ret (Jonathan Toppins) [2042564] - net: bonding: Use strscpy_pad() instead of manually-truncated strncpy() (Jonathan Toppins) [2042564] - bonding: init notify_work earlier to avoid uninitialized use (Jonathan Toppins) [2042564] - bonding: 3ad: Fix the conflict between bond_update_slave_arr and the state machine (Jonathan Toppins) [2042564] - scsi: lpfc: Update lpfc version to 14.0.0.4 (Dick Kennedy) [2034276] - scsi: lpfc: Add additional debugfs support for CMF (Dick Kennedy) [2034276] - scsi: lpfc: Cap CMF read bytes to MBPI (Dick Kennedy) [2034276] - scsi: lpfc: Adjust CMF total bytes and rxmonitor (Dick Kennedy) [2034276] - scsi: lpfc: Trigger SLI4 firmware dump before doing driver cleanup (Dick Kennedy) [2034276] - scsi: lpfc: Fix NPIV port deletion crash (Dick Kennedy) [2034276] - scsi: lpfc: Fix lpfc_force_rscn ndlp kref imbalance (Dick Kennedy) [2034276] - scsi: lpfc: Change return code on I/Os received during link bounce (Dick Kennedy) [2034276] - scsi: lpfc: Fix leaked lpfc_dmabuf mbox allocations with NPIV (Dick Kennedy) [2034276] - ppp: ensure minimum packet size in ppp_write() (Guillaume Nault) [2042937] - KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock (Marcelo Tosatti) [2034126] - configs: Enable CONFIG_THINKPAD_LMI on x86_64 (Mark Pearson) [2030772] - platform/x86: think-lmi: Abort probe on analyze failure (Mark Pearson) [2030772] - platform/x86: think-lmi: add debug_cmd (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix possible mem-leaks on tlmi_analyze() error-exit (Mark Pearson) [2030772] - platform/x86: think-lmi: Split kobject_init() and kobject_add() calls (Mark Pearson) [2030772] - platform/x86: think-lmi: Move pending_reboot_attr to the attributes sysfs dir (Mark Pearson) [2030772] - platform/x86: think-lmi: Add pending_reboot support (Mark Pearson) [2030772] - platform/x86: think-lmi: Move kfree(setting->possible_values) to tlmi_attr_setting_release() (Mark Pearson) [2030772] - platform/x86: think-lmi: Split current_value to reflect only the value (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix issues with duplicate attributes (Mark Pearson) [2030772] - platform/x86: think-lmi: Return EINVAL when kbdlang gets set to a 0 length string (Mark Pearson) [2030772] - platform/x86: think-lmi: Add missing MODULE_DEVICE_TABLE (Mark Pearson) [2030772] - platform/x86: think-lmi: Avoid potential read before start of the buffer (Mark Pearson) [2030772] - platform/x86: think-lmi: Fix check for admin password being set (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman/think-lmi: Make fw_attr_class global static (Mark Pearson) [2030772] - platform/x86: thinkpad-lmi: Remove unused display_name member from struct tlmi_pwd_setting (Mark Pearson) [2030772] - platform/x86: think-lmi: Add WMI interface support on Lenovo platforms (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: fw_attr_inuse can be static (Mark Pearson) [2030772] - platform/x86: dell-wmi-sysman: Use firmware_attributes_class helper (Mark Pearson) [2030772] - platform/x86: firmware_attributes_class: Create helper file for handling firmware-attributes class registration events (Mark Pearson) [2030772] - x86/apic: Handle missing global clockevent gracefully (Lenny Szubowicz) [2033197] - RDMA/core: Don't infoleak GRH fields (Kamal Heib) [2036597] - RDMA/uverbs: Check for null return of kmalloc_array (Kamal Heib) [2036597] - RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string (Kamal Heib) [2036597] - RDMA/rw: switch to dma_map_sgtable() (Kamal Heib) [2036597] - RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests (Kamal Heib) [2036597] - RDMA/cma: Fix listener leak in rdma_cma_listen_on_all() failure (Kamal Heib) [2036597] - RDMA/iwcm: Release resources if iw_cm module initialization fails (Kamal Heib) [2036597] - net: Set true network header for ECN decapsulation (Antoine Tenart) [2045059] - powerpc/bpf: Update ldimm64 instructions during extra pass (Yauheni Kaliuta) [2035973] - selftests: bpf: Fix bind on used port (Felix Maurer) [2025795] - bpf/selftests: Fix namespace mount setup in tc_redirect (Jiri Olsa) [2036016] - selftests/bpf: Fix possible/online index mismatch in perf_buffer test (Yauheni Kaliuta) [2039602] - selftests/bpf: Fix perf_buffer test on system with offline cpus (Yauheni Kaliuta) [2039602] - tracing: Tag trace_percpu_buffer as a percpu pointer (Jerome Marchand) [2031604] - tracing: Fix check for trace_percpu_buffer validity in get_trace_buf() (Jerome Marchand) [2031604] - hwmon: (k10temp) Support up to 12 CCDs on AMD Family of processors (David Arcari) [2022539] - hwmon: (k10temp) Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (David Arcari) [2022539] - hwmon: (k10temp) Remove unused definitions (David Arcari) [2022539] - x86/amd_nb: Add AMD Family 19h Models (10h-1Fh) and (A0h-AFh) PCI IDs (David Arcari) [2022539] - hwmon: (k10temp) Remove residues of current and voltage (David Arcari) [2022539] - hwmon: (k10temp) Update driver documentation (David Arcari) [2022539] - hwmon: (k10temp) Update documentation and add temp2_input info (David Arcari) [2022539] - docs: hwmon: k10temp: convert to ReST format (David Arcari) [2022539] - mptcp: fix deadlock in __mptcp_push_pending() (Davide Caratti) [2043598] - mptcp: clear 'kern' flag from fallback sockets (Davide Caratti) [2043598] - mptcp: remove tcp ulp setsockopt support (Davide Caratti) [2043598] - mptcp: never allow the PM to close a listener subflow (Davide Caratti) [2043598]- redhat: set LC_ALL=C before sorting config content (Frantisek Hrbata) - net: mana: Add RX fencing (Mohammed Gamal) [2030132] - net: mana: Add XDP support (Mohammed Gamal) [2030132] - net: mana: Fix memory leak in mana_hwc_create_wq (Mohammed Gamal) [2030132] - net: mana: Fix spelling mistake "calledd" -> "called" (Mohammed Gamal) [2030132] - net: mana: Support hibernation and kexec (Mohammed Gamal) [2030132] - net: mana: Improve the HWC error handling (Mohammed Gamal) [2030132] - net: mana: Report OS info to the PF driver (Mohammed Gamal) [2030132] - net: mana: Fix the netdev_err()'s vPort argument in mana_init_port() (Mohammed Gamal) [2030132] - net: mana: Allow setting the number of queues while the NIC is down (Mohammed Gamal) [2030132] - net: stmmac: Add GFP_DMA32 for rx buffers if no 64 capability (Mark Salter) [1989540] - net: stmmac: Fix potential integer overflow (Mark Salter) [1989540] - net: stmmac: fix issue where clk is being unprepared twice (Mark Salter) [1989540] - net: stmmac: fix kernel panic due to NULL pointer dereference of mdio_bus_data (Mark Salter) [1989540] - net: stmmac: fix system hang if change mac address after interface ifdown (Mark Salter) [1989540] - net: stmmac: correct clocks enabled in stmmac_vlan_rx_kill_vid() (Mark Salter) [1989540] - net: remove the mutex_acquire from __lock_sock_fast (Xin Long) [2026612] - net: core: Correct the sock::sk_lock.owned lockdep annotations (Xin Long) [2026612] - inet: use bigger hash table for IP ID generation (Xin Long) [2039969] {CVE-2021-45486} - net: revert "net: get rid of an signed integer overflow in ip_idents_reserve()" (Xin Long) [2039969] - net/mlx5: DR, Use FW API when updating FW-owned flow table (Michal Schmidt) [2042651] - ipv6: Continue processing multipath route even if gateway attribute is invalid (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route (Hangbin Liu) [2041375] - ipv6: Do cleanup if attribute validation fails in multipath route (Hangbin Liu) [2041375] - ipv6: Check attribute length for RTA_GATEWAY in multipath route (Hangbin Liu) [2041375] - rtw89: fix maybe-uninitialized error (Íñigo Huguet) [2033291] - rtw89: enable driver and device RTL8852AE (Íñigo Huguet) [2033291] - rtw89: fix maybe-uninitialized error (RHEL only) (Íñigo Huguet) [2033291] - rtw89: 8852a: correct bit definition of dfs_en (Íñigo Huguet) [2033291] - rtw89: coex: Update COEX to 5.5.8 (Íñigo Huguet) [2033291] - rtw89: coex: Cancel PS leaving while C2H comes (Íñigo Huguet) [2033291] - rtw89: coex: Update BT counters while receiving report (Íñigo Huguet) [2033291] - rtw89: coex: Define LPS state for BTC using (Íñigo Huguet) [2033291] - rtw89: coex: Add MAC API to get BT polluted counter (Íñigo Huguet) [2033291] - rtw89: coex: Not to send H2C when WL not ready and count H2C (Íñigo Huguet) [2033291] - rtw89: coex: correct C2H header length (Íñigo Huguet) [2033291] - rtw89: don't kick off TX DMA if failed to write skb (Íñigo Huguet) [2033291] - rtw89: remove cch_by_bw which is not used (Íñigo Huguet) [2033291] - rtw89: fix sending wrong rtwsta->mac_id to firmware to fill address CAM (Íñigo Huguet) [2033291] - rtw89: fix incorrect channel info during scan (Íñigo Huguet) [2033291] - rtw89: update scan_mac_addr during scanning period (Íñigo Huguet) [2033291] - rtw89: use inline function instead macro to set H2C and CAM (Íñigo Huguet) [2033291] - rtw89: add const in the cast of le32_get_bits() (Íñigo Huguet) [2033291] - rtw89: add AXIDMA and TX FIFO dump in mac_mem_dump (Íñigo Huguet) [2033291] - rtw89: fix potentially access out of range of RF register array (Íñigo Huguet) [2033291] - rtw89: remove unneeded variable (Íñigo Huguet) [2033291] - rtw89: remove unnecessary conditional operators (Íñigo Huguet) [2033291] - rtw89: update rtw89_regulatory map to R58-R31 (Íñigo Huguet) [2033291] - rtw89: update tx power limit/limit_ru tables to R54 (Íñigo Huguet) [2033291] - rtw89: update rtw89 regulation definition to R58-R31 (Íñigo Huguet) [2033291] - rtw89: fill regd field of limit/limit_ru tables by enum (Íñigo Huguet) [2033291] - rtw89: update partition size of firmware header on skb->data (Íñigo Huguet) [2033291] - rtw89: Fix variable dereferenced before check 'sta' (Íñigo Huguet) [2033291] - rtw89: fix return value in hfc_pub_cfg_chk (Íñigo Huguet) [2033291] - rtw89: remove duplicate register definitions (Íñigo Huguet) [2033291] - rtw89: fix error function parameter (Íñigo Huguet) [2033291] - rtw89: remove unneeded semicolon (Íñigo Huguet) [2033291] - rtw89: fix return value check in rtw89_cam_send_sec_key_cmd() (Íñigo Huguet) [2033291] - rtw89: Remove redundant check of ret after call to rtw89_mac_enable_bb_rf (Íñigo Huguet) [2033291] - rtw89: Fix two spelling mistakes in debug messages (Íñigo Huguet) [2033291] - rtw89: add Realtek 802.11ax driver (Íñigo Huguet) [2033291] - powerpc/doc: Fix htmldocs errors (Diego Domingos) [2004798] - pseries/drmem: update LMBs after LPM (Diego Domingos) [2004798] - powerpc/pseries: Add support for FORM2 associativity (Diego Domingos) [2004798] - powerpc/pseries: Add a helper for form1 cpu distance (Diego Domingos) [2004798] - powerpc/pseries: Consolidate different NUMA distance update code paths (Diego Domingos) [2004798] - powerpc/pseries: Rename TYPE1_AFFINITY to FORM1_AFFINITY (Diego Domingos) [2004798] - powerpc/pseries: rename min_common_depth to primary_domain_index (Diego Domingos) [2004798] - powerpc/numa: Fix build when CONFIG_NUMA=n (Diego Domingos) [2004798] - pseries/hotplug-memory: hot-add: skip redundant LMB lookup (Diego Domingos) [2004798] - selftests: icmp_redirect: pass xfail=0 to log_test() (Hangbin Liu) [2041308] - selftests: net: Correct ping6 expected rc from 2 to 1 (Hangbin Liu) [2041308] - mt76: enable new device MT7921E (Íñigo Huguet) [2024056 1972045] - vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit (Antoine Tenart) [2044254] - SUNRPC: prevent port reuse on transports which don't request it. (Benjamin Coddington) [2016646] - SUNRPC: Fix races when closing the socket (Benjamin Coddington) [2016646] - SUNRPC: Prevent immediate close+reconnect (Benjamin Coddington) [2016646] - SUNRPC: Clean up scheduling of autoclose (Benjamin Coddington) [2016646] - SUNRPC: Fix potential memory corruption (Benjamin Coddington) [2016646] - sunrpc: remove unnecessary test in rpc_task_set_client() (Benjamin Coddington) [2016646] - SUNRPC: Replace use of socket sk_callback_lock with sock_lock (Benjamin Coddington) [2016646] - arm64: numa: simplify dummy_numa_init() (Vitaly Kuznetsov) [2029774] - ACPI: NUMA: Process hotpluggable memblocks when !CONFIG_MEMORY_HOTPLUG (Vitaly Kuznetsov) [2029774] - s390/sclp: fix Secure-IPL facility detection (Stefan Schulze Frielinghaus) [2039182] - powerpc/pseries/mobility: ignore ibm, platform-facilities updates (Diego Domingos) [2031827] - of: Fix property name in of_node_get_device_type (Diego Domingos) [2031827] - of: Add device_type access helper functions (Diego Domingos) [2031827] - powerpc/watchdog: help remote CPUs to flush NMI printk output (Diego Domingos) [2030259] - powerpc/watchdog: Fix wd_smp_last_reset_tb reporting (Diego Domingos) [2030259] - powerpc/watchdog: read TB close to where it is used (Diego Domingos) [2030259] - powerpc/watchdog: Avoid holding wd_smp_lock over printk and smp_send_nmi_ipi (Diego Domingos) [2030259] - powerpc/watchdog: tighten non-atomic read-modify-write access (Diego Domingos) [2030259] - powerpc/watchdog: Fix missed watchdog reset due to memory ordering race (Diego Domingos) [2030259] - selftests/sgx: Fix corrupted cpuid macro invocation (Vladis Dronov) [1920030] - x86/sgx: Fix minor documentation issues (Vladis Dronov) [1920030] - selftests/sgx: Add test for multiple TCS entry (Vladis Dronov) [1920030] - selftests/sgx: Enable multiple thread support (Vladis Dronov) [1920030] - selftests/sgx: Add page permission and exception test (Vladis Dronov) [1920030] - selftests/sgx: Rename test properties in preparation for more enclave tests (Vladis Dronov) [1920030] - selftests/sgx: Provide per-op parameter structs for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Add a new kselftest: Unclobbered_vdso_oversubscribed (Vladis Dronov) [1920030] - selftests/sgx: Move setup_test_encl() to each TEST_F() (Vladis Dronov) [1920030] - selftests/sgx: Encpsulate the test enclave creation (Vladis Dronov) [1920030] - selftests/sgx: Dump segments and /proc/self/maps only on failure (Vladis Dronov) [1920030] - selftests/sgx: Create a heap for the test enclave (Vladis Dronov) [1920030] - selftests/sgx: Make data measurement for an enclave segment optional (Vladis Dronov) [1920030] - selftests/sgx: Assign source for each segment (Vladis Dronov) [1920030] - selftests/sgx: Fix a benign linker warning (Vladis Dronov) [1920030] - x86/sgx: Fix free page accounting (Vladis Dronov) [1920030] - x86/sgx: Add check for SGX pages to ghes_do_memory_failure() (Vladis Dronov) [1920030] - x86/sgx: Add hook to error injection address validation (Vladis Dronov) [1920030] - x86/sgx: Hook arch_memory_failure() into mainline code (Vladis Dronov) [1920030] - x86/sgx: Add SGX infrastructure to recover from poison (Vladis Dronov) [1920030] - x86/sgx: Initial poison handling for dirty and free pages (Vladis Dronov) [1920030] - x86/sgx: Add infrastructure to identify SGX EPC pages (Vladis Dronov) [1920030] - x86/sgx: Add new sgx_epc_page flag bit to mark free pages (Vladis Dronov) [1920030] - selftests/sgx: Fix Q1 and Q2 calculation in sigstruct.c (Vladis Dronov) [1920030] - selftests/sgx: remove checks for file execute permissions (Vladis Dronov) [1920030] - selftests/sgx: Refine the test enclave to have storage (Vladis Dronov) [1920030] - selftests/sgx: Add EXPECT_EEXIT() macro (Vladis Dronov) [1920030] - selftests/sgx: Dump enclave memory map (Vladis Dronov) [1920030] - selftests/sgx: Migrate to kselftest harness (Vladis Dronov) [1920030] - selftests/sgx: Rename 'eenter' and 'sgx_call_vdso' (Vladis Dronov) [1920030] - x86/sgx: Add missing xa_destroy() when virtual EPC is destroyed (Vladis Dronov) [1920030] - x86/sgx: Correct kernel-doc's arg name in sgx_encl_release() (Vladis Dronov) [1920030] - x86: Fix leftover comment typos (Vladis Dronov) [1920030] - mm,hwpoison: return -EHWPOISON to denote that the page has already been poisoned (Vladis Dronov) [1920030] - mm/memory-failure: use a mutex to avoid memory_failure() races (Vladis Dronov) [1920030] - mm,hwpoison: take free pages off the buddy freelists (Vladis Dronov) [1920030] - sched/fair: Consider SMT in ASYM_PACKING load balance (Prarit Bhargava) [1971924] - sched/fair: Carve out logic to mark a group for asymmetric packing (Prarit Bhargava) [1971924] - sched/fair: Provide update_sg_lb_stats() with sched domain statistics (Prarit Bhargava) [1971924] - sched/fair: Optimize checking for group_asym_packing (Prarit Bhargava) [1971924] - sched/topology: Introduce sched_group::flags (Prarit Bhargava) [1971924] - x86/sched: Decrease further the priorities of SMT siblings (Prarit Bhargava) [1971924]- nvme-fc: remove freeze/unfreeze around update_nr_hw_queues (Ewan D. Milne) [1996109] - nvme-fc: avoid race between time out and tear down (Ewan D. Milne) [1996109] - nvme-fc: update hardware queues before using them (Ewan D. Milne) [1996109] - igbvf: Refactor trace (Corinna Vinschen) [2039886] - igbvf: fix double free in `igbvf_probe` (Corinna Vinschen) [2039886] - mm/memory_hotplug: remove is_mem_section_removable() (David Hildenbrand) [2008072] - powerpc/pseries/hotplug-memory: stop checking is_mem_section_removable() (David Hildenbrand) [2008072] - drivers/base/memory.c: indicate all memory blocks as removable (David Hildenbrand) [2008072] - drivers/base/memory.c: fixup documentation of removable/phys_index/block_size_bytes (David Hildenbrand) [2008072] - Revert "mpi3mr: mark as tech preview" (Tomas Henzl) [1989634] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Tomas Henzl) [1977833] - scsi: mpi3mr: Use scnprintf() instead of snprintf() (Tomas Henzl) [1998599] - scsi: mpi3mr: Fix duplicate device entries when scanning through sysfs (Tomas Henzl) [1998599] - scsi: mpi3mr: Clean up mpi3mr_print_ioc_info() (Tomas Henzl) [1989634] - scsi: mpi3mr: Set up IRQs in resume path (Tomas Henzl) [1991577] - Revert "scsi: lpfc: ls_rjt erroneus FLOGIs" (Dick Kennedy) [2032488] - pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init (Steve Best) [2028253] - arm64: smp: Add missing prototype for some smp.c functions (Mark Salter) [1996738] - irqchip/gic-v3-its: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic-v2m: Remove unnecessary oom message (Mark Salter) [1996738] - irqchip/gic: Split vGIC probing information from the GIC code (Mark Salter) [1996738] - irqchip/gic-v3: Workaround inconsistent PMR setting on NMI entry (Mark Salter) [1996738] - irqchip/gic-v3: Do not enable irqs when handling spurious interrups (Mark Salter) [1996738] - irqchip/gic-v4.1: Disable vSGI upon (GIC CPUIF < v4.1) detection (Mark Salter) [1996738] - irqchip/gic-v3: Fix OF_BAD_ADDR error handling (Mark Salter) [1996738] - arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h (Mark Salter) [1996738] - irqchip/gic-v3-its: Drop the setting of PTZ altogether (Mark Salter) [1996738] - irqchip/gic-v3-its: Add a cache invalidation right after vPE unmapping (Mark Salter) [1996738] - irqchip/gic-v3: Fix typos in PMR/RPR SCR_EL3.FIQ handling explanation (Mark Salter) [1996738] - genirq/msi: Initialize msi_alloc_info before calling msi_domain_prepare_irqs() (Mark Salter) [1996738] - irqchip/gic: Spelling s/REturn/Return/ (Mark Salter) [1996738] - irqchip/gic-v3-its: Unconditionally save/restore the ITS state on suspend (Mark Salter) [1996738] - irq-chip/gic-v3-its: Fix crash if ITS is in a proximity domain without processor or memory (Mark Salter) [1996738] - irqchip/gic: Cleanup Franken-GIC handling (Mark Salter) [1996738] - arm64: Implement panic_smp_self_stop() (Mark Salter) [1996738] - arm64: Improve parking of stopped CPUs (Mark Salter) [1996738] - genirq: Allow interrupts to be excluded from /proc/interrupts (Mark Salter) [1996738] - irqchip/gic-v3: Support pseudo-NMIs when SCR_EL3.FIQ == 0 (Mark Salter) [1996738] - irqchip/gic-v3: Spell out when pseudo-NMIs are enabled (Mark Salter) [1996738] - irqchip/gic-v2, v3: Prevent SW resends entirely (Mark Salter) [1996738] - irqchip/git-v3-its: Implement irq_retrigger callback for device-triggered LPIs (Mark Salter) [1996738] - irqchip/gic-v2, v3: Implement irq_chip->irq_retrigger() (Mark Salter) [1996738] - irqchip/gic-v4.1: Use GFP_ATOMIC flag in allocate_vpe_l1_table() (Mark Salter) [1996738] - irqchip/gic-v4.1: Ensure accessing the correct RD when writing INVALLR (Mark Salter) [1996738] - irqchip/gic-v3: Remove unused register definition (Mark Salter) [1996738] - drivers/irqchip: Use new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - drivers/acpi: Add new macro ACPI_DECLARE_SUBTABLE_PROBE_ENTRY (Mark Salter) [1996738] - KVM: arm64: vgic-v4: Plug race between non-residency and v4.1 doorbell (Mark Salter) [1996738] - irqchip/gic: Atomically update affinity (Mark Salter) [1996738] - irqchip/gic-v4.1: Use readx_poll_timeout_atomic() to fix sleep in atomic (Mark Salter) [1996738] - irqchip/gic-v2, v3: Drop extra IRQ_NOAUTOEN setting for (E)PPIs (Mark Salter) [1996738] - irqchip/gic-v3-its: Balance initial LPI affinity across CPUs (Mark Salter) [1996738] - irqchip/gic-v3-its: Track LPI distribution on a per CPU basis (Mark Salter) [1996738] - irqchip/gic-v3: Fix missing "__init" for gic_smp_init() (Mark Salter) [1996738] - selftests/bpf: Enlarge select() timeout for test_maps (Jiri Benc) [1869444] - PCI: Do not enable AtomicOps on VFs (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix stats counters (Selvin Xavier) [1987081 1984339 2001893] - RDMA/bnxt_re: Prefer kcalloc over open coded arithmetic (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Remove unpaired rtnl unlock in bnxt_re_dev_init() (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Fix uninitialized struct bit field rsvd1 (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Update ABI to pass wqe-mode to user space (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Enable global atomic ops if platform supports (Selvin Xavier) [1987081 1984339] - RDMA/bnxt_re: Drop unnecessary NULL checks after container_of (Selvin Xavier) [1987081 1984339] - dm btree remove: fix use after free in rebalance_children() (Benjamin Marzinski) [2034424] - dm table: log table creation error code (Benjamin Marzinski) [2034424] - dm: make workqueue names device-specific (Benjamin Marzinski) [2034424] - dm writecache: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm crypt: Make use of the helper macro kthread_run() (Benjamin Marzinski) [2034424] - dm: fix mempool NULL pointer race when completing IO (Benjamin Marzinski) [2034424] - dm rq: don't queue request to blk-mq during DM suspend (Benjamin Marzinski) [1891486] - dm verity: skip redundant verity_handle_err() on I/O errors (Benjamin Marzinski) [2034424] - dm writecache: add event counters (Benjamin Marzinski) [2034424] - dm writecache: report invalid return from writecache_map helpers (Benjamin Marzinski) [2034424] - dm writecache: further writecache_map() cleanup (Benjamin Marzinski) [2034424] - dm writecache: factor out writecache_map_remap_origin() (Benjamin Marzinski) [2034424] - dm writecache: split up writecache_map() to improve code readability (Benjamin Marzinski) [2034424] - dm btree remove: assign new_root only when removal succeeds (Benjamin Marzinski) [2034424] - dm ps io affinity: remove redundant continue statement (Benjamin Marzinski) [2034424] - dm: rearrange core declarations for extended use from dm-zone.c (Benjamin Marzinski) [2034424] - dm space map disk: cache a small number of index entries (Benjamin Marzinski) [2034424] - dm space maps: improve performance with inc/dec on ranges of blocks (Benjamin Marzinski) [2034424] - dm space maps: don't reset space map allocation cursor when committing (Benjamin Marzinski) [2034424] - dm btree: improve btree residency (Benjamin Marzinski) [2034424] - dm integrity: fix sparse warnings (Benjamin Marzinski) [2034424] - dm: replace dm_vcalloc() (Benjamin Marzinski) [2034424] - dm integrity: add the "reset_recalculate" feature flag (Benjamin Marzinski) [2034424] - dm cache: remove needless request_queue NULL pointer checks (Benjamin Marzinski) [2034424] - dm thin: remove needless request_queue NULL pointer check (Benjamin Marzinski) [2034424] - dm ioctl: replace device hash with red-black tree (Benjamin Marzinski) [2034424] - recordmcount.pl: fix typo in s390 mcount regex (Jerome Marchand) [2025890] - recordmcount.pl: look for jgnop instruction as well as bcrl on s390 (Jerome Marchand) [2025890] - KVM: x86: Wait for IPIs to be delivered when handling Hyper-V TLB flush hypercall (Vitaly Kuznetsov) [1868572] - HID: magicmouse: prevent division by 0 on scroll (Benjamin Tissoires) [2022814] - HID: input: set usage type to key on keycode remap (Benjamin Tissoires) [2022814] - HID: input: Fix parsing of HID_CP_CONSUMER_CONTROL fields (Benjamin Tissoires) [2022814] - HID: u2fzero: properly handle timeouts in usb_submit_urb (Benjamin Tissoires) [2022814] - HID: u2fzero: clarify error check and length calculations (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: u2fzero: ignore incomplete packets without data (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix potential NULL pointer dereference (Benjamin Tissoires) [2022814] - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs (Benjamin Tissoires) [2022814] - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS (Benjamin Tissoires) [2022814] - HID: betop: fix slab-out-of-bounds Write in betop_probe (Benjamin Tissoires) [2022814] - HID: usbhid: Simplify code in hid_submit_ctrl() (Benjamin Tissoires) [2022814] - HID: usbhid: Fix warning caused by 0-length input reports (Benjamin Tissoires) [2022814] - HID: usbhid: Fix flood of "control queue full" messages (Benjamin Tissoires) [2022814] - HID: sony: Fix more ShanWan clone gamepads to not rumble when plugged in. (Benjamin Tissoires) [2022814] - HID: sony: support for the ghlive ps4 dongles (Benjamin Tissoires) [2022814] - HID: thrustmaster: clean up Makefile and adapt quirks (Benjamin Tissoires) [2022814] - HID: i2c-hid: Fix Elan touchpad regression (Benjamin Tissoires) [2022814] - HID: asus: Prevent Claymore sending suspend event (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add dyndbg prints for debugging (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add support for PM suspend and resume (Benjamin Tissoires) [2022814] - HID: amd_sfh: Move hid probe after sensor is enabled (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add command response to check command status (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix period data field to enable sensor (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: battery: provide CAPACITY property for newer devices (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in thrustmaster_interrupts() (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leak in remove (Benjamin Tissoires) [2022814] - HID: thrustmaster: Fix memory leaks in probe (Benjamin Tissoires) [2022814] - HID: elo: update the reference count of the usb device structure (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Use 'atomic_inc_return' instead of hand-writing it (Benjamin Tissoires) [2022814] - HID: ft260: fix device removal due to USB disconnect (Benjamin Tissoires) [2022814] - HID: apple: Add missing scan code event for keys handled by hid-apple (Benjamin Tissoires) [2022814] - HID: cmedia: add support for HS-100B mute button (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Use the devm variant of regulator_register_notifier() (Benjamin Tissoires) [2022814] - HID: wacom: Refactor touch input mute checks into a common function (Benjamin Tissoires) [2022814] - HID: wacom: Avoid sending empty sync events (Benjamin Tissoires) [2022814] - HID: wacom: Short-circuit processing of touch when it is disabled (Benjamin Tissoires) [2022814] - HID: wacom: set initial hardware touch switch state to 'off' (Benjamin Tissoires) [2022814] - HID: wacom: Skip processing of touches with negative slot values (Benjamin Tissoires) [2022814] - HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT (Benjamin Tissoires) [2022814] - HID: Kconfig: Fix spelling mistake "Uninterruptable" -> "Uninterruptible" (Benjamin Tissoires) [2022814] - HID: apple: Add support for Keychron K1 wireless keyboard (Benjamin Tissoires) [2022814] - HID: usbhid: free raw_report buffers in usbhid_stop (Benjamin Tissoires) [2022814] - HID: fix typo in Kconfig (Benjamin Tissoires) [2022814] - HID: ft260: fix format type warning in ft260_word_show() (Benjamin Tissoires) [2022814] - HID: i2c-hid: goodix: Tie the reset line to true state of the regulator (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use correct MMIO register for DMA address (Benjamin Tissoires) [2022814] - HID: magicmouse: high-resolution scroll threshold (Benjamin Tissoires) [2022814] - HID: magicmouse: enable high-resolution scroll (Benjamin Tissoires) [2022814] - HID: asus: Remove check for same LED brightness on set (Benjamin Tissoires) [2022814] - HID: input: do not report stylus battery state as "full" (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: use async resume function (Benjamin Tissoires) [2022814] - HID: thrustmaster: Switch to kmemdup() when allocate change_request (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend when the device is not a wakeup-source (Benjamin Tissoires) [2022814] - HID: logitech-dj: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: usbhid: Implement may_wakeup ll-driver callback (Benjamin Tissoires) [2022814] - HID: core: Add hid_hw_may_wakeup() function (Benjamin Tissoires) [2022814] - HID: input: Add support for Programmable Buttons (Benjamin Tissoires) [2022814] - HID: wacom: Correct base usage for capacitive ExpressKey status bits (Benjamin Tissoires) [2022814] - HID: amd_sfh: Add initial support for HPD sensor (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend ALS support for newer AMD platform (Benjamin Tissoires) [2022814 1961759] - HID: amd_sfh: Extend driver capabilities for multi-generation support (Benjamin Tissoires) [2022814 1961759] - HID: surface-hid: Fix get-report request (Benjamin Tissoires) [2022814] - HID: sony: fix freeze when inserting ghlive ps3/wii dongles (Benjamin Tissoires) [2022814] - HID: usbkbd: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Specify that EHL no cache snooping (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp: Add dma_no_cache_snooping() callback (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Set ISH driver depends on x86 (Benjamin Tissoires) [2022814] - HID: hid-input: add Surface Go battery quirk (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix minor typos in comments (Benjamin Tissoires) [2022814] - HID: magicmouse: fix NULL-deref on disconnect (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Alder Lake device IDs (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix format string mismatch (Benjamin Tissoires) [2022814] - HID: amd_sfh: Fix memory leak in amd_sfh_work (Benjamin Tissoires) [2022814] - HID: amd_sfh: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [2022814] - HID: ft260: improve error handling of ft260_hid_feature_report_get() (Benjamin Tissoires) [2022814] - HID: asus: Cleanup Asus T101HA keyboard-dock handling (Benjamin Tissoires) [2022814] - HID: magicmouse: fix crash when disconnecting Magic Trackpad 2 (Benjamin Tissoires) [2022814] - HID: gt683r: add missing MODULE_DEVICE_TABLE (Benjamin Tissoires) [2022814] - HID: pidff: fix error return code in hid_pidff_init() (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: initialize level variable (Benjamin Tissoires) [2022814] - HID: multitouch: Disable event reporting on suspend on the Asus T101HA touchpad (Benjamin Tissoires) [2022814] - HID: core: Remove extraneous empty line before EXPORT_SYMBOL_GPL(hid_check_keys_pressed) (Benjamin Tissoires) [2022814] - HID: usbmouse: Avoid GFP_ATOMIC when GFP_KERNEL is possible (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Process failure of sensor_hub_set_feature() (Benjamin Tissoires) [2022814] - HID: i2c-hid: Skip ELAN power-on command after reset (Benjamin Tissoires) [2022814] - HID: usbhid: fix info leak in hid_submit_ctrl (Benjamin Tissoires) [2022814] - HID: Add BUS_VIRTUAL to hid_connect logging (Benjamin Tissoires) [2022814] - HID: input: replace outdated HID numbers+comments with macros (Benjamin Tissoires) [2022814] - HID: multitouch: set Stylus suffix for Stylus-application devices, too (Benjamin Tissoires) [2022814] - HID: multitouch: require Finger field to mark Win8 reports as MT (Benjamin Tissoires) [2022814] - HID: remove the unnecessary redefinition of a macro (Benjamin Tissoires) [2022814] - HID: quirks: Add quirk for Lenovo optical mouse (Benjamin Tissoires) [2022814] - HID: asus: filter G713/G733 key event to prevent shutdown (Benjamin Tissoires) [2022814] - HID: lg-g15 + ite: Add MODULE_AUTHOR (Benjamin Tissoires) [2022814] - HID: lg-g15: Add support for the Logitech Z-10 speakers (Benjamin Tissoires) [2022814] - HID: lg-g15: Make the LED-name used by lg_g15_register_led() a parameter (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_init_input_dev() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Add a lg_g15_handle_lcd_menu_keys() helper function (Benjamin Tissoires) [2022814] - HID: lg-g15: Remove unused size argument from lg_*_event() functions (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Return error for hid_set_field() failure (Benjamin Tissoires) [2022814] - HID: ft260: check data size in ft260_smbus_write() (Benjamin Tissoires) [2022814] - HID: surface-hid: Fix integer endian conversion (Benjamin Tissoires) [2022814] - HID: hid-debug: recognize KEY_ASSISTANT and KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [2022814] - HID: hid-input: add mapping for emoji picker key (Benjamin Tissoires) [2022814] - HID: a4tech: use A4_2WHEEL_MOUSE_HACK_B8 for A4TECH NB-95 (Benjamin Tissoires) [2022814] - HID: logitech-dj/hidpp: Add info/warn/err messages about 27 MHz keyboard encryption (Benjamin Tissoires) [2022814] - HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K15A keyboard-dock (Benjamin Tissoires) [2022814] - HID: thrustmaster: fix return value check in thrustmaster_probe() (Benjamin Tissoires) [2022814] - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65 (Benjamin Tissoires) [2022814] - HID: do not use down_interruptible() when unbinding devices (Benjamin Tissoires) [2022814] - HID: asus: Filter keyboard EC for old ROG keyboard (Benjamin Tissoires) [2022814] - HID: semitek: new driver for GK6X series keyboards (Benjamin Tissoires) [2022814] - HID: wacom: Setup pen input capabilities to the targeted tools (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Move 'hsdev' description to correct struct definition (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Remove unused struct member 'quirks' (Benjamin Tissoires) [2022814] - HID: wacom_sys: Demote kernel-doc abuse (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-uclogic-params: Ensure function names are present and correct in kernel-doc headers (Benjamin Tissoires) [2022814] - HID: hid-uclogic-rdesc: Kernel-doc is for functions and structs (Benjamin Tissoires) [2022814] - HID: hid-logitech-hidpp: Fix conformant kernel-doc header and demote abuses (Benjamin Tissoires) [2022814] - HID: hid-picolcd_core: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: hid-kye: Fix incorrect function name for kye_tablet_enable() (Benjamin Tissoires) [2022814] - HID: hid-core: Fix incorrect function name in header (Benjamin Tissoires) [2022814] - HID: hid-alps: Correct struct misnaming (Benjamin Tissoires) [2022814] - HID: usbhid: hid-pidff: Demote a couple kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: usbhid: Repair a formatting issue in a struct description (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix 'suggest-attribute=format' compiler warning (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ishtp-fw-loader: Fix a bunch of formatting issues (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Fix incorrect function name report_bad_packet() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Correct fw_reset_work_fn() function name in header (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix potential copy/paste error (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Fix a little doc-rot (Benjamin Tissoires) [2022814] - HID: intel-ish: Fix a naming disparity and a formatting error (Benjamin Tissoires) [2022814] - HID: intel-ish: Supply some missing param descriptions (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: pci-ish: Remove unused variable 'ret' (Benjamin Tissoires) [2022814] - HID: ishtp-hid-client: Move variable to where it's actually used (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unused variable 'err' (Benjamin Tissoires) [2022814] - HID: hid-thrustmaster: Demote a bunch of kernel-doc abuses (Benjamin Tissoires) [2022814] - HID: input: map battery capacity (00850065) (Benjamin Tissoires) [2022814] - HID: magicmouse: fix reconnection of Magic Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: fix 3 button emulation of Mouse 2 (Benjamin Tissoires) [2022814] - HID: magicmouse: add Apple Magic Mouse 2 support (Benjamin Tissoires) [2022814] - HID: lenovo: Add support for Thinkpad X1 Tablet Thin keyboard (Benjamin Tissoires) [2022814] - HID: lenovo: Rework how the tp10ubkbd code decides which USB interface to use (Benjamin Tissoires) [2022814] - HID: lenovo: Set default_triggers for the mute and micmute LEDs (Benjamin Tissoires) [2022814] - HID: lenovo: Map mic-mute button to KEY_F20 instead of KEY_MICMUTE (Benjamin Tissoires) [2022814] - HID: lenovo: Set LEDs max_brightness value (Benjamin Tissoires) [2022814] - HID: lenovo: Remove lenovo_led_brightness_get() (Benjamin Tissoires) [2022814] - HID: lenovo: Check hid_get_drvdata() returns non NULL in lenovo_event() (Benjamin Tissoires) [2022814] - HID: lenovo: Fix lenovo_led_set_tp10ubkbd() error handling (Benjamin Tissoires) [2022814] - HID: lenovo: Use brightness_set_blocking callback for setting LEDs brightness (Benjamin Tissoires) [2022814] - HID: elan: Remove elan_mute_led_get_brigtness() (Benjamin Tissoires) [2022814] - HID: elan: Set default_trigger for the mute LED (Benjamin Tissoires) [2022814] - HID: elan: Silence mute LED errors being logged when the device is unplugged (Benjamin Tissoires) [2022814] - HID: fix memdup.cocci warnings (Benjamin Tissoires) [2022814] - HID: surface-hid: Add support for legacy keyboard interface (Benjamin Tissoires) [2022814] - HID: Add support for Surface Aggregator Module HID transport (Benjamin Tissoires) [2022814] - HID: thrustmaster: introduce proper USB dependency (Benjamin Tissoires) [2022814] - HID: intel_ish-hid: HBM: Use connected standby state bit during suspend/resume (Benjamin Tissoires) [2022814] - HID: ft260: fix an error message in ft260_i2c_write_read() (Benjamin Tissoires) [2022814] - HID: support for initialization of some Thrustmaster wheels (Benjamin Tissoires) [2022814] - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices (Benjamin Tissoires) [2022814] - HID: ft260: add usb hid to i2c host bridge driver (Benjamin Tissoires) [2022814] - iio: Add relative sensitivity support (Benjamin Tissoires) [2022814] - iio: hid-sensors: Move get sensitivity attribute to hid-sensor-common (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Make remove callback return void (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Simplify logic in ishtp_cl_device_remove() (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Drop if block with an always false condition (Benjamin Tissoires) [2022814] - AMD_SFH: Add DMI quirk table for BIOS-es which don't set the activestatus bits (Benjamin Tissoires) [2022814] - AMD_SFH: Add sensor_mask module parameter (Benjamin Tissoires) [2022814] - AMD_SFH: Removed unused activecontrolstatus member from the amd_mp2_dev struct (Benjamin Tissoires) [2022814] - HID: wacom: Assign boolean values to a bool variable (Benjamin Tissoires) [2022814] - HID cp2112: fix support for multiple gpiochips (Benjamin Tissoires) [2022814] - HID: alps: fix error return code in alps_input_configured() (Benjamin Tissoires) [2022814] - HID: asus: Add support for 2021 ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: hiddev: Return specific error codes on connect failure (Benjamin Tissoires) [2022814] - HID: plantronics: Workaround for double volume key presses (Benjamin Tissoires) [2022814] - HID: logitech-dj: Handle newer quad/bt2.0 receivers in HID proxy mode (Benjamin Tissoires) [2022814] - HID: logitech-dj: Use hid-ids.h defines for USB device-ids for all supported devices (Benjamin Tissoires) [2022814] - HID: google: add don USB id (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Drop redundant ACPI_PTR() (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Move GUID out of function and described it (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Switch to new style i2c-driver probe function (Benjamin Tissoires) [2022814] - HID: i2c-hid: acpi: Get ACPI companion only once and reuse it (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense player LED support. (Benjamin Tissoires) [2022814] - HID: playstation: add microphone mute support for DualSense. (Benjamin Tissoires) [2022814] - HID: playstation: add initial DualSense lightbar support. (Benjamin Tissoires) [2022814] - HID: wacom: Ignore attempts to overwrite the touch_max value from HID (Benjamin Tissoires) [2022814] - HID: playstation: fix array size comparison (off-by-one) (Benjamin Tissoires) [2022814] - HID: playstation: fix unused variable in ps_battery_get_property. (Benjamin Tissoires) [2022814] - HID: playstation: report DualSense hardware and firmware version. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense classic rumble support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense Bluetooth support. (Benjamin Tissoires) [2022814] - HID: playstation: track devices in list. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense accelerometer and gyroscope support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense touchpad support. (Benjamin Tissoires) [2022814] - HID: playstation: add DualSense battery support. (Benjamin Tissoires) [2022814] - HID: playstation: use DualSense MAC address as unique identifier. (Benjamin Tissoires) [2022814] - HID: playstation: initial DualSense USB support. (Benjamin Tissoires) [2022814] - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on HP Spectre X360 15-df0xxx (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for the new lightspeed connection iteration (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Add Tiger Lake H PCI device ID (Benjamin Tissoires) [2022814] - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming (Benjamin Tissoires) [2022814] - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on Voyo Winpad A15 (Benjamin Tissoires) [2022814] - HID: displays: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: wacom: convert sysfs sprintf/snprintf family to sysfs_emit (Benjamin Tissoires) [2022814] - HID: lg-g15: make a const array static, makes object smaller (Benjamin Tissoires) [2022814] - HID: google: Get HID report on probe to confirm tablet switch state (Benjamin Tissoires) [2022814] - HID: hid-input: avoid splitting keyboard, system and consumer controls (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in hid-quirks.c (Benjamin Tissoires) [2022814] - HID: correct kernel-doc notation in (Benjamin Tissoires) [2022814] - HID: wacom: Correct NULL dereference on AES pen proximity (Benjamin Tissoires) [2022814] - HID: multitouch: Set to high latency mode on suspend. (Benjamin Tissoires) [2022814] - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices (Benjamin Tissoires) [2022814] - HID: hid-sensor-custom: Add custom sensor iio support (Benjamin Tissoires) [2022814] - HID: i2c-hid: Introduce goodix-i2c-hid using i2c-hid core (Benjamin Tissoires) [2022814] - redhat: HID: enable I2C_HID_ACPI (Benjamin Tissoires) [2022814] - HID: i2c-hid: Reorganize so ACPI and OF are separate modules (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: add support for Unified Battery (1004) feature (Benjamin Tissoires) [2022814] - HID: sony: Add support for tilt on guitar hero guitars (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode (Benjamin Tissoires) [2022814] - HID: chicony: Add Wireless Radio Control feature for Chicony devices (Benjamin Tissoires) [2022814] - HID: Ignore battery for Elan touchscreen on ASUS UX550 (Benjamin Tissoires) [2022814] - HID: logitech-dj: add the G602 receiver (Benjamin Tissoires) [2022814] - HID: core: detect and skip invalid inputs to snto32() (Benjamin Tissoires) [2022814] - HID: uclogic: Improve support for Trust Panora (Benjamin Tissoires) [2022814] - HID: wiimote: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: uclogic: remove h from printk format specifier (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: Address EHL Sx resume issues (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: ipc: finish power flow for EHL OOB (Benjamin Tissoires) [2022814] - HID: sony: select CONFIG_CRC32 (Benjamin Tissoires) [2022814] - HID: sfh: fix address space confusion (Benjamin Tissoires) [2022814] - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad device (Benjamin Tissoires) [2022814] - HID: wacom: Fix memory leakage caused by kfifo_alloc (Benjamin Tissoires) [2022814] - HID: i2c-hid: add Vero K147 to descriptor override (Benjamin Tissoires) [2022814] - HID: ite: Add support for Acer S1002 keyboard-dock (Benjamin Tissoires) [2022814] - HID: sony: support for ghlive ps3/wii u dongles (Benjamin Tissoires) [2022814] - HID: hidraw: Add additional hidraw input/output report ioctls. (Benjamin Tissoires) [2022814] - HID: Increase HID maximum report size to 16KB (Benjamin Tissoires) [2022814] - HID: elecom: drop stray comment (Benjamin Tissoires) [2022814] - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube Adapter (Benjamin Tissoires) [2022814] - HID: elecom: add support for EX-G M-XGL20DLBK wireless mouse (Benjamin Tissoires) [2022814] - HID: elecom: rewrite report based on model specific parameters (Benjamin Tissoires) [2022814] - HID: wacom: Constify attribute_groups (Benjamin Tissoires) [2022814] - HID: input: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: usbhid: Fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add hid_device_id for V470 bluetooth mouse (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: Remove unnecessary assignment to variable rv (Benjamin Tissoires) [2022814] - HID: sony: Workaround for DS4 dongle hotplug kernel crash. (Benjamin Tissoires) [2022814] - HID: sony: Don't use fw_version/hw_version for sysfs cleanup. (Benjamin Tissoires) [2022814] - HID: sony: Report more accurate DS4 power status. (Benjamin Tissoires) [2022814] - SFH: fix error return check for -ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: Add Logitech Dinovo Edge battery quirk (Benjamin Tissoires) [2022814] - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo Edge (Benjamin Tissoires) [2022814] - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices (Benjamin Tissoires) [2022814] - HID: mcp2221: Fix GPIO output handling (Benjamin Tissoires) [2022814] - HID: hid-sensor-hub: Fix issue with devices with no report ID (Benjamin Tissoires) [2022814] - HID: hid-input: occasionally report stylus battery even if not changed (Benjamin Tissoires) [2022814] - timekeeping: Add missing _ns functions for coarse accessors (Benjamin Tissoires) [2022814] - HID: i2c-hid: show the error when failing to fetch the HID descriptor (Benjamin Tissoires) [2022814] - AMD_SFH: Fix for incorrect Sensor index (Benjamin Tissoires) [2022814] - HID: asus: Add support for ASUS N-Key keyboard (Benjamin Tissoires) [2022814] - HID: i2c-hid: Put ACPI enumerated devices in D3 on shutdown (Benjamin Tissoires) [2022814] - HID: add support for Sega Saturn (Benjamin Tissoires) [2022814] - HID: cypress: Support Varmilo Keyboards' media hotkeys (Benjamin Tissoires) [2022814] - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off keypresses (Benjamin Tissoires) [2022814] - SFH: Create HID report to Enable support of AMD sensor fusion Hub (SFH) (Benjamin Tissoires) [2022814] - SFH:Transport Driver to add support of AMD Sensor Fusion Hub (SFH) (Benjamin Tissoires) [2022814] - redhat: HID: enable AMD_SFH_HUB (Benjamin Tissoires) [1965674] - SFH: PCIe driver to add support of AMD sensor fusion hub (Benjamin Tissoires) [2022814] - HID: uclogic: Add ID for Trust Flex Design Tablet (Benjamin Tissoires) [2022814] - HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle (Benjamin Tissoires) [2022814] - HID: add vivaldi HID driver (Benjamin Tissoires) [2022814] - HID: i2c-hid: fix kerneldoc warnings in i2c-hid-core.c (Benjamin Tissoires) [2022814] - HID: core: fix kerneldoc warnings in hid-core.c (Benjamin Tissoires) [2022814] - HID: multitouch: Lenovo X1 Tablet Gen2 trackpoint and buttons (Benjamin Tissoires) [2022814] - HID: alps: clean up indentation issue (Benjamin Tissoires) [2022814] - HID: intel-ish-hid: simplify the return expression of ishtp_bus_remove_device() (Benjamin Tissoires) [2022814] - HID: hid-debug: fix nonblocking read semantics wrt EIO/ERESTARTSYS (Benjamin Tissoires) [2022814] - HID: i2c-hid: Prefer asynchronous probe (Benjamin Tissoires) [2022814] - HID: wiimote: narrow spinlock range in wiimote_hid_event() (Benjamin Tissoires) [2022814] - HID: wiimote: make handlers[] const (Benjamin Tissoires) [2022814] - HID: logitech-dj: Fix spelling in comment (Benjamin Tissoires) [2022814] - HID: apple: Add support for Matias wireless keyboard (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for controller in Whitebox (Benjamin Tissoires) [2022814] - Input: parkbd - switch to use module_parport_driver() (Benjamin Tissoires) [2022814] - Input: i8042 - fix typos in comments (Benjamin Tissoires) [2022814] - Input: elantech - Prepare a complete software node for the device (Benjamin Tissoires) [2022814] - Input: apbps2 - remove useless variable (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix a typo in parameter name (Benjamin Tissoires) [2022814] - Input: i8042 - fix Pegatron C15B ID entry (Benjamin Tissoires) [2022814] - Input: elan_i2c - reduce the resume time for new devices (Benjamin Tissoires) [2022814] - Input: i8042 - add ASUS Zenbook Flip to noselftest list (Benjamin Tissoires) [2022814] - Input: add missing dependencies on CONFIG_HAS_IOMEM (Benjamin Tissoires) [2022814] - ARM: 9048/1: sa1111: make sa1111 bus's remove callback return void (Benjamin Tissoires) [2022814] - Input: synaptics - replace NOOP with suitable commentary (Benjamin Tissoires) [2022814] - Input: i8042 - unbreak Pegatron C15B (Benjamin Tissoires) [2022814] - Input: parkbd - convert comma to semicolon (Benjamin Tissoires) [2022814] - Input: elantech - fix protocol errors for some trackpoints in SMBus mode (Benjamin Tissoires) [2022814] - Input: elan_i2c - add new trackpoint report type 0x5F (Benjamin Tissoires) [2022814] - Input: i8042 - add Acer laptops to the i8042 reset list (Benjamin Tissoires) [2022814] - Input: i8042 - add ByteSpeed touchpad to noloop table (Benjamin Tissoires) [2022814] - Input: i8042 - fix error return code in i8042_setup_aux() (Benjamin Tissoires) [2022814] - Input: libps2 - fix fall-through warnings for Clang (Benjamin Tissoires) [2022814] - Input: synaptics - demote non-conformant kernel-doc header (Benjamin Tissoires) [2022814] - Input: elan_i2c_core - move header inclusion inside (Benjamin Tissoires) [2022814] - Input: elan_i2c - fix firmware update on newer ICs (Benjamin Tissoires) [2022814] - Input: elantech - demote obvious abuse of kernel-doc header (Benjamin Tissoires) [2022814] - Input: i8042 - allow insmod to succeed on devices without an i8042 controller (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad T14 Gen 1 (Benjamin Tissoires) [2022814] - Input: synaptics - enable InterTouch for ThinkPad P1/X1E gen 2 (Benjamin Tissoires) [2022814] - Input: synaptics-rmi4 - rename f30_data to gpio_data (Benjamin Tissoires) [2022814] - Input: sun4i-ps2 - fix handling of platform_get_irq() error (Benjamin Tissoires) [2022814] - Input: allocate keycode for Fn + right shift (Benjamin Tissoires) [2022814] - Input: allocate keycodes for notification-center, pickup-phone and hangup-phone (Benjamin Tissoires) [2022814] - HID: cp2112: Use irqchip template (Benjamin Tissoires) [2022814] - HID: mcp2221: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [2022814] - treewide: replace '---help---' in Kconfig files with 'help' (Benjamin Tissoires) [2022814] - HID: asus: Add depends on USB_HID to HID_ASUS Kconfig option (Benjamin Tissoires) [2022814] - HID: asus: Fix mute and touchpad-toggle keys on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add support for multi-touch touchpad on Medion Akoya E1239T (Benjamin Tissoires) [2022814] - HID: asus: Add report_size to struct asus_touchpad_info (Benjamin Tissoires) [2022814] - HID: asus: Add hid_is_using_ll_driver(usb_hid_driver) check (Benjamin Tissoires) [2022814] - HID: asus: Simplify skipping of mappings for Asus T100CHI keyboard-dock (Benjamin Tissoires) [2022814] - HID: asus: Only set EV_REP if we are adding a mapping (Benjamin Tissoires) [2022814] - HID: mcp2221: add gpiolib dependency (Benjamin Tissoires) [2022814] - HID: mcp2221: add GPIO functionality support (Benjamin Tissoires) [2022814] - HID: mcp2221: add usb to i2c-smbus host bridge (Benjamin Tissoires) [2022814] - HID: asus: Ignore Asus vendor-page usage-code 0xff events (Benjamin Tissoires) [2022814] - HID: sb0540: add support for Creative SB0540 IR receivers (Benjamin Tissoires) [2022814] - gpio: pass lookup and descriptor flags to request_own (Benjamin Tissoires) [2022814] - HID: hid-asus: select CONFIG_POWER_SUPPLY (Benjamin Tissoires) [2022814] - HID: hid-asus: Add BT keyboard dock battery monitoring support (Benjamin Tissoires) [2022814] - HID: hid-asus: Add Transbook T90CHI support (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS T101HA keyboard dock (Benjamin Tissoires) [2022814] - HID: asus: Add support for the ASUS FX503VD laptop (Benjamin Tissoires) [2022814] - HID: asus: Add event handler to catch unmapped Asus Vendor UsagePage codes (Benjamin Tissoires) [2022814] - af_unix: fix garbage collect vs MSG_PEEK (Patrick Talbert) [2031975] {CVE-2021-0920} - net: add kerneldoc comment for sk_peer_lock (Guillaume Nault) [2037782] - af_unix: fix races in sk_peer_pid and sk_peer_cred accesses (Guillaume Nault) [2037782] {CVE-2021-4203} - netfilter: nat: force port remap to prevent shadowing well-known ports (Florian Westphal) [2006167] {CVE-2021-3773} - netfilter: conntrack: tag conntracks picked up in local out hook (Florian Westphal) [2006167] - selftests: nft_nat: switch port shadow test cases to socat (Florian Westphal) [2006167] - selftests: nft_nat: Simplify port shadow notrack test (Florian Westphal) [2006167] - selftests: nft_nat: Improve port shadow test stability (Florian Westphal) [2006167] - selftests: nft_nat: add udp hole punch test case (Florian Westphal) [2006167] - ipv6: use prandom_u32() for ID generation (Hangbin Liu) [2040158] {CVE-2021-45485} - igc: fix tunnel offloading (Corinna Vinschen) [1910885] - virtio/vsock: fix the transport to work with VMADDR_CID_ANY (Stefano Garzarella) [2026442] - vhost/vsock: cleanup removing `len` variable (Stefano Garzarella) [2026442] - vhost/vsock: fix incorrect used length reported to the guest (Stefano Garzarella) [2026442] - vsock: prevent unnecessary refcnt inc for nonblocking connect (Stefano Garzarella) [2026442] - vsock/virtio: avoid potential deadlock when vsock device remove (Stefano Garzarella) [2026442] - VSOCK: handle VIRTIO_VSOCK_OP_CREDIT_REQUEST (Stefano Garzarella) [2026442] - vsock: notify server to shutdown when client has pending signal (Stefano Garzarella) [2026442] - virtio/vsock: simplify credit update function API (Stefano Garzarella) [2026442] - virtio/vsock: set packet's type in virtio_transport_send_pkt_info() (Stefano Garzarella) [2026442] - net: vlan: fix underflow for the real_dev refcnt (Balazs Nemeth) [2026375] - net: vlan: fix a UAF in vlan_dev_real_dev() (Balazs Nemeth) [2026375]- xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate (Carlos Maiolino) [2034865] {CVE-2021-4155} - isdn: cpai: check ctr->cnr to avoid array index out of bound (Chris von Recklinghausen) [2016491] {CVE-2021-43389} - vt: keyboard: avoid signed integer overflow in k_ascii (Chris von Recklinghausen) [2017044] {CVE-2020-13974} - USB: serial: pl2303: fix GC type detection (Torez Smith) [1975985] - usb: dwc3: leave default DMA for PCI devices (Torez Smith) [1975985] - usb: xhci: tegra: Check padctrl interrupt presence in device tree (Torez Smith) [1975985] - usb: dwc3: core: Revise GHWPARAMS9 offset (Torez Smith) [1975985] - xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good delay (Torez Smith) [1975985] - usb: typec: tipd: Remove dependency on "connector" child fwnode (Torez Smith) [1975985] - usb: xhci: tegra: mark PM functions as __maybe_unused (Torez Smith) [1975985] - media: ttusb-dec: avoid release of non-acquired mutex (Torez Smith) [1975985] - ABI: sysfs-devices-removable: make a table valid as ReST markup (Torez Smith) [1975985] - usb: dwc3: core: balance phy init and exit (Torez Smith) [1975985] - USB: serial: pl2303: fix GL type detection (Torez Smith) [1975985] - usb: xhci-mtk: Do not use xhci's virt_dev in drop_endpoint (Torez Smith) [1975985] - usb: xhci-mtk: fix issue of out-of-bounds array access (Torez Smith) [1975985] - usb: dwc3: Decouple USB 2.0 L1 & L2 events (Torez Smith) [1975985] - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect (Torez Smith) [1975985] - media: dvb-usb: Fix error handling in dvb_usb_i2c_init (Torez Smith) [1975985] - power: supply: Fix build error when CONFIG_POWER_SUPPLY is not enabled. (Torez Smith) [1975985] - thunderbolt: test: split up test cases in tb_test_credit_alloc_all (Torez Smith) [1975985] - thunderbolt: Handle ring interrupt by reading interrupt status register (Torez Smith) [1975985] - thunderbolt: Add vendor specific NHI quirk for auto-clearing interrupt status (Torez Smith) [1975985] - thunderbolt: Fix port linking by checking all adapters (Torez Smith) [1975985] - thunderbolt: Do not read control adapter config space (Torez Smith) [1975985] - thunderbolt: Add authorized value to the KOBJ_CHANGE uevent (Torez Smith) [1975985] - usb: typec: tcpm: Raise vdm_sm_running flag only when VDM SM is running (Torez Smith) [1975985] - usb: dwc3: gadget: Stop EP0 transfers during pullup disable (Torez Smith) [1975985] - usb: dwc3: gadget: Fix dwc3_calc_trbs_left() (Torez Smith) [1975985] - Revert "USB: serial: ch341: fix character loss at high transfer rates" (Torez Smith) [1975985] - USB: serial: option: add new VID/PID to support Fibocom FG150 (Torez Smith) [1975985] - usb: typec: tcpm: Fix VDMs sometimes not being forwarded to alt-mode drivers (Torez Smith) [1975985] - Revert "usb: dwc3: gadget: Use list_replace_init() before traversing lists" (Torez Smith) [1975985] - usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus events (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid runtime resume if disabling pullup (Torez Smith) [1975985] - usb: dwc3: gadget: Use list_replace_init() before traversing lists (Torez Smith) [1975985] - USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2 (Torez Smith) [1975985] - USB: serial: pl2303: fix GT type detection (Torez Smith) [1975985] - USB: serial: option: add Telit FD980 composition 0x1056 (Torez Smith) [1975985] - USB: serial: pl2303: fix HX type detection (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: Revert "media: rtl28xxu: fix zero-length control request" (Torez Smith) [1975985] - USB: serial: ch341: fix character loss at high transfer rates (Torez Smith) [1975985] - usb: otg-fsm: Fix hrtimer list corruption (Torez Smith) [1975985] - USB: usbtmc: Fix RCU stall warning (Torez Smith) [1975985] - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick (Torez Smith) [1975985] - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem" (Torez Smith) [1975985] - usb: dwc2: gadget: Fix sending zero length packet in DDMA mode. (Torez Smith) [1975985] - usb: dwc2: Skip clock gating on Samsung SoCs (Torez Smith) [1975985] - usb: dwc2: gadget: Fix GOUTNAK flow for Slave mode. (Torez Smith) [1975985] - usb: xhci: avoid renesas_usb_fw.mem when it's unusable (Torez Smith) [1975985] - usb: dwc3: avoid NULL access of usb_gadget_driver (Torez Smith) [1975985] - usb: typec: stusb160x: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - usb: typec: stusb160x: register role switch before interrupt registration (Torez Smith) [1975985] - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS (Torez Smith) [1975985] - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high (Torez Smith) [1975985] - usb: hub: Fix link power management max exit latency (MEL) calculations (Torez Smith) [1975985] - usb: typec: tipd: Don't block probing of consumer of "connector" nodes (Torez Smith) [1975985] - xhci: Fix lost USB 2 remote wake (Torez Smith) [1975985] - USB: serial: cp210x: fix comments for GE CS1000 (Torez Smith) [1975985] - USB: core: Fix incorrect pipe calculation in do_proc_control() (Torez Smith) [1975985] - USB: serial: option: add support for u-blox LARA-R6 family (Torez Smith) [1975985] - thunderbolt: test: Reinstate a few casts of bitfields (Torez Smith) [1975985] - USB: cdc-acm: blacklist Heimann USB Appset device (Torez Smith) [1975985] - usb: xhci-mtk: allow multiple Start-Split in a microframe (Torez Smith) [1975985] - usb: ftdi-elan: remove redundant continue statement in a while-loop (Torez Smith) [1975985] - thunderbolt: test: Remove some casts which are no longer required (Torez Smith) [1975985] - xhci: remove redundant continue statement (Torez Smith) [1975985] - usb: dwc3: Fix debugfs creation flow (Torez Smith) [1975985] - docs: driver-api: usb: avoid using ReST :doc:`foo` markup (Torez Smith) [1975985] - xhci: solve a double free problem while doing s4 (Torez Smith) [1975985] - xhci: handle failed buffer copy to URB sg list and fix a W=1 copiler warning (Torez Smith) [1975985] - xhci: Add adaptive interrupt rate for isoch TRBs with XHCI_AVOID_BEI quirk (Torez Smith) [1975985] - xhci: Remove unused defines for ERST_SIZE and ERST_ENTRIES (Torez Smith) [1975985] - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode() (Torez Smith) [1975985] - usb: typec: tcpm: Relax disconnect threshold during power negotiation (Torez Smith) [1975985] - usb: typec: tcpm: Ignore Vsafe0v in PR_SWAP_SNK_SRC_SOURCE_ON state (Torez Smith) [1975985] - usb: typec: tcpci: Fix up sink disconnect thresholds for PD (Torez Smith) [1975985] - usb: core: hub: Disable autosuspend for Cypress CY7C65632 (Torez Smith) [1975985] - usb: host: xhci-tegra: Use devm_platform_get_and_ioremap_resource() (Torez Smith) [1975985] - usb: host: xhci-tegra: Add missing of_node_put() in tegra_xusb_probe() (Torez Smith) [1975985] - usb: host: xhci-tegra: add missing put_device() in tegra_xusb_probe() (Torez Smith) [1975985] - media: usb: cpia2: Fixed Coding Style issues (Torez Smith) [1975985] - media: ttusb-dec: cleanup an error handling logic (Torez Smith) [1975985] - cypress_m8: switch data_bits to real character bits (Torez Smith) [1975985] - thunderbolt: Fix DROM handling for USB4 DROM (Torez Smith) [1975985] - usb: xhci: tegra: Enable ELPG for runtime/system PM (Torez Smith) [1975985] - usb: xhci: tegra: Unlink power domain devices (Torez Smith) [1975985] - thunderbolt: Bond lanes only when dual_link_port != NULL in alloc_dev_default() (Torez Smith) [1975985] - thunderbolt: No need to include in usb4_port.c (Torez Smith) [1975985] - thunderbolt: Poll 10ms for REG_FW_STS_NVM_AUTH_DONE to be set (Torez Smith) [1975985] - thunderbolt: Add device links only when software connection manager is used (Torez Smith) [1975985] - thunderbolt: Add support for Intel Alder Lake (Torez Smith) [1975985] - usb: typec: mux: Fix copy-paste mistake in typec_mux_match (Torez Smith) [1975985] - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path (Torez Smith) [1975985] - usb: typec: wcove: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: ucsi: Fix a comment in ucsi_init() (Torez Smith) [1975985] - USB: dwc3: remove debugfs root dentry storage (Torez Smith) [1975985] - USB: serial: cp210x: fix CP2102N-A01 modem control (Torez Smith) [1975985] - USB: serial: cp210x: fix alternate function for CP2102N QFN20 (Torez Smith) [1975985] - usb: dwc2: Don't reset the core after setting turnaround time (Torez Smith) [1975985] - usb: dwc3: support 64 bit DMA in platform driver (Torez Smith) [1975985] - USB: core: Avoid WARNings for 0-length descriptor requests (Torez Smith) [1975985] - usb: dwc3: core: fix kernel panic when do reboot (Torez Smith) [1975985] - usb: dwc3: ep0: fix NULL pointer exception (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put ACPI device using acpi_dev_put() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Add missed error check for devm_ioremap_resource() (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Put fwnode in error case during ->probe() (Torez Smith) [1975985] - usb: typec: tcpm: Do not finish VDM AMS for retrying Responses (Torez Smith) [1975985] - media: cinergyt2: make properties const (Torez Smith) [1975985] - media: dvd_usb: memory leak in cinergyt2_fe_attach (Torez Smith) [1975985] - USB: serial: ftdi_sio: add NovaTech OrionMX product ID (Torez Smith) [1975985] - usb: typec: tcpm: cancel send discover hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel frs hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: cancel vdm and state machine hrtimer when unregister tcpm port (Torez Smith) [1975985] - usb: typec: tcpm: Properly handle Alert and Status Messages (Torez Smith) [1975985] - usb: dwc3: meson-g12a: Disable the regulator in the error handling path of the probe (Torez Smith) [1975985] - usb: typec: tcpm: Fix misuses of AMS invocation (Torez Smith) [1975985] - usb: typec: tcpm: Introduce snk_vdo_v1 for SVDM version 1.0 (Torez Smith) [1975985] - dt-bindings: connector: Add PD rev 2.0 VDO definition (Torez Smith) [1975985] - usb: typec: tcpm: Correct the responses in SVDM Version 2.0 DFP (Torez Smith) [1975985] - Revert "usb: dwc3: core: Add shutdown callback for dwc3" (Torez Smith) [1975985] - dt-bindings: connector: Replace BIT macro with generic bit ops (Torez Smith) [1975985] - media: gspca: ov519: replace RIGHT SINGLE QUOTATION MARK (Torez Smith) [1975985] - usb: typec: intel_pmc_mux: Update IOM port status offset for AlderLake (Torez Smith) [1975985] - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms (Torez Smith) [1975985] - usb: dwc3: gadget: Bail from dwc3_gadget_exit() if dwc->gadget is NULL (Torez Smith) [1975985] - usb: dwc3: gadget: Disable gadget IRQ during pullup disable (Torez Smith) [1975985] - usb: dwc3: debugfs: Add and remove endpoint dirs dynamically (Torez Smith) [1975985] - Revert "usb: typec: mux: Remove requirement for the "orientation-switch" device property" (Torez Smith) [1975985] - media: rtl28xxu: fix zero-length control request (Torez Smith) [1975985] - media: gspca/sunplus: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/gl860: fix zero-length control requests (Torez Smith) [1975985] - media: gspca/sq905: fix control-request direction (Torez Smith) [1975985] - media: dtv5100: fix control-request directions (Torez Smith) [1975985] - media: drivers/media/usb/gspca/cpia1.c : fix spelling typo (Torez Smith) [1975985] - media: drivers/media/usb/em28xx/em28xx-cards.c : fix typo issues (Torez Smith) [1975985] - media: zr364xx: fix memory leak in zr364xx_start_readpipe (Torez Smith) [1975985] - media: em28xx: Fix possible memory leak of em28xx struct (Torez Smith) [1975985] - thunderbolt: Check for NVM authentication status after the operation started (Torez Smith) [1975985] - thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers (Torez Smith) [1975985] - thunderbolt: Allow router NVM authenticate separately (Torez Smith) [1975985] - thunderbolt: Move nvm_write_ops to tb.h (Torez Smith) [1975985] - thunderbolt: Log the link as TBT instead of TBT3 (Torez Smith) [1975985] - thunderbolt: Add support for retimer NVM upgrade when there is no link (Torez Smith) [1975985] - thunderbolt: Add additional USB4 port operations for retimer access (Torez Smith) [1975985] - thunderbolt: Add support for ACPI _DSM to power on/off retimers (Torez Smith) [1975985] - thunderbolt: Add USB4 port devices (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for credit allocation (Torez Smith) [1975985] - thunderbolt: Allocate credits according to router preferences (Torez Smith) [1975985] - USB: core: Check buffer length matches wLength for control transfers (Torez Smith) [1975985] - usb: typec: ucsi: Fix copy/paste issue for 'ucsi_set_drvdata()' (Torez Smith) [1975985] - usb: dwc2: gadget: Repair 'dwc2_hsotg_core_init_disconnected()'s documentation (Torez Smith) [1975985] - usb: dwc2: pci: Fix possible copy/paste issue (Torez Smith) [1975985] - usb: dwc2: hcd_queue: Fix typeo in function name 'dwc2_hs_pmap_unschedule()' (Torez Smith) [1975985] - usb: dwc2: params: Fix naming of 'dwc2_get_hwparams()' in the docs (Torez Smith) [1975985] - usb: common: ulpi: Add leading underscores for function name '__ulpi_register_driver()' (Torez Smith) [1975985] - usb: dwc2: platform: Provide function name for 'dwc2_check_core_version()' (Torez Smith) [1975985] - driver core: Move the "removable" attribute from USB to core (Torez Smith) [1975985] - usb: dwc3: trace: Remove unused fields in dwc3_log_trb (Torez Smith) [1975985] - usb: typec: mux: Remove requirement for the "orientation-switch" device property (Torez Smith) [1975985] - usb: typec: mux: Use device type instead of device name for matching (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use usb_role_string() to print role status (Torez Smith) [1975985] - usb: roles: add helper usb_role_string() (Torez Smith) [1975985] - USB: serial: omninet: update driver description (Torez Smith) [1975985] - USB: serial: omninet: add device id for Zyxel Omni 56K Plus (Torez Smith) [1975985] - USB: serial: quatech2: fix control-request directions (Torez Smith) [1975985] - usb: typec: tcpci: Make symbol 'tcpci_apply_rc' static (Torez Smith) [1975985] - USB: usbfs: remove double evaluation of usb_sndctrlpipe() (Torez Smith) [1975985] - usb: typec: tcpm: Respond Not_Supported if no snk_vdo (Torez Smith) [1975985] - usb: typec: tcpm: Properly interrupt VDM AMS (Torez Smith) [1975985] - media: lmedm04: delete lme2510_get_adapter_count() (Torez Smith) [1975985] - media: dvb-usb: fix wrong definition (Torez Smith) [1975985] - USB: core: WARN if pipe direction != setup packet direction (Torez Smith) [1975985] - USB: trancevibrator: fix control-request direction (Torez Smith) [1975985] - USB: dwc2: drop irq-flags initialisations (Torez Smith) [1975985] - usb: typec: tcpci: Implement callback for apply_rc (Torez Smith) [1975985] - usb: typec: tcpm: Move TCPC to APPLY_RC state during PR_SWAP (Torez Smith) [1975985] - usb: typec: tcpm: Refactor logic to enable/disable auto vbus dicharge (Torez Smith) [1975985] - usb: typec: tcpm: Fix up PR_SWAP when vsafe0v is signalled (Torez Smith) [1975985] - usb: atm: cxacru: Fix typo in comment (Torez Smith) [1975985] - usb: isp1760: remove platform data struct and code (Torez Smith) [1975985] - usb: fix spelling mistakes in header files (Torez Smith) [1975985] - USB: serial: digi_acceleport: add chars_in_buffer locking (Torez Smith) [1975985] - USB: serial: digi_acceleport: reduce chars_in_buffer over-reporting (Torez Smith) [1975985] - usb: Restore the usb_header label (Torez Smith) [1975985] - usb: typec: tcpm: Use LE to CPU conversion when accessing msg->header (Torez Smith) [1975985] - usb: typec: mux: Fix matching with typec_altmode_desc (Torez Smith) [1975985] - misc/uss720: fix memory leak in uss720_probe (Torez Smith) [1975985] - usb: dwc3: gadget: Properly track pending and queued SG (Torez Smith) [1975985] - USB: usbfs: Don't WARN about excessively large memory allocations (Torez Smith) [1975985] - usb: common: usb-conn-gpio: use dev_err_probe() to print log (Torez Smith) [1975985] - usb: common: usb-conn-gpio: fix NULL pointer dereference of charger (Torez Smith) [1975985] - Revert "USB: Add reset-resume quirk for WD19's Realtek Hub" (Torez Smith) [1975985] - USB: Verify the port status when timeout happens during port suspend (Torez Smith) [1975985] - usb: typec: wcove: Fx wrong kernel doc format (Torez Smith) [1975985] - media: pvrusb2: fix warning in pvr2_i2c_core_done (Torez Smith) [1975985] - media: rtl2832_sdr/vivid/airspy/hackrf/msi2500: drop memset of fmt.sdr.reserved (Torez Smith) [1975985] - media: cpia2: fix memory leak in cpia2_usb_probe (Torez Smith) [1975985] - media: s2255drv: remove redundant assignment to variable field (Torez Smith) [1975985] - media: gspca: properly check for errors in po1030_probe() (Torez Smith) [1975985] - Revert "media: gspca: Check the return value of write_bridge for timeout" (Torez Smith) [1975985] - media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1975985] - Revert "media: gspca: mt9m111: Check write_bridge for timeout" (Torez Smith) [1975985] - Revert "media: usb: gspca: add a missed check for goto_low_power" (Torez Smith) [1975985] - usb: core: hcd: use map_urb_for_dma for single step set feature urb (Torez Smith) [1975985] - usb: dwc3: pci: Fix DEFINE for Intel Elkhart Lake (Torez Smith) [1975985] - usb: core: hub: fix race condition about TRSMRCY of resume (Torez Smith) [1975985] - usb: typec: tcpm: Fix SINK_DISCOVERY current limit for Rp-default (Torez Smith) [1975985] - xhci: Add reset resume quirk for AMD xhci controller. (Torez Smith) [1975985] - usb: xhci: Increase timeout for HC halt (Torez Smith) [1975985] - xhci: Do not use GFP_KERNEL in (potentially) atomic context (Torez Smith) [1975985] - xhci: Fix giving back cancelled URBs even if halted endpoint can't reset (Torez Smith) [1975985] - xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI (Torez Smith) [1975985] - usb: typec: tcpm: Don't block probing of consumers of "connector" nodes (Torez Smith) [1975985] - usb: xhci-mtk: use first-fit for LS/FS (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary assignments in periodic TT scheduler (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary setting of has_ippc (Torez Smith) [1975985] - usb: xhci-mtk: use bitfield instead of bool (Torez Smith) [1975985] - usb: typec: tcpm: Fix wrong handling for Not_Supported in VDM AMS (Torez Smith) [1975985] - usb: typec: tcpm: Send DISCOVER_IDENTITY from dedicated work (Torez Smith) [1975985] - usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4 (Torez Smith) [1975985] - usb: dwc3: omap: improve extcon initialization (Torez Smith) [1975985] - usb: typec: ucsi: Put fwnode in any case during ->probe() (Torez Smith) [1975985] - usb: dwc2: Remove obsolete MODULE_ constants from platform.c (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix error return code in dwc3_imx8mp_probe() (Torez Smith) [1975985] - usb: dwc3: imx8mp: detect dwc3 core node via compatible string (Torez Smith) [1975985] - usb: dwc3: gadget: Return success always for kick transfer in ep queue (Torez Smith) [1975985] - usb: dwc3: gadget: Free gadget structure only after freeing endpoints (Torez Smith) [1975985] - usb: dwc2: Fix gadget DMA unmap direction (Torez Smith) [1975985] - usb: dwc3: gadget: Rename EOPF event macros to Suspend (Torez Smith) [1975985] - usb: dwc3: gadget: Enable suspend events (Torez Smith) [1975985] - usb: Restore the reference to ch9.h (Torez Smith) [1975985] - usb: dwc3: core: Add missing GHWPARAMS9 doc (Torez Smith) [1975985] - usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel Merrifield (Torez Smith) [1975985] - cdc-wdm: untangle a circular dependency between callback and softint (Torez Smith) [1975985] - usb: dwc3: remove repeated setting of current_dr_role (Torez Smith) [1975985] - USB: serial: pl2303: add device id for ADLINK ND-6530 GC (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add startech.com device id (Torez Smith) [1975985] - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011 (Torez Smith) [1975985] - USB: serial: ftdi_sio: add IDs for IDS GmbH Products (Torez Smith) [1975985] - usb: Fix up movement of USB core kerneldoc location (Torez Smith) [1975985] - usb: dwc3: gadget: Handle DEV_TXF_FLUSH_BYPASS capability (Torez Smith) [1975985] - usb: dwc3: Capture new capability register GHWPARAMS9 (Torez Smith) [1975985] - usb: dwc3: core: Do core softreset when switch mode (Torez Smith) [1975985] - usb: dwc2: Get rid of useless error checks in suspend interrupt (Torez Smith) [1975985] - usb: dwc2: Update dwc2_handle_usb_suspend_intr function. (Torez Smith) [1975985] - usb: dwc2: Add exit hibernation mode before removing drive (Torez Smith) [1975985] - usb: dwc2: Add hibernation exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add hibernation entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit hibernation in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Move exit hibernation to dwc2_port_resume() function (Torez Smith) [1975985] - usb: dwc2: Move enter hibernation to dwc2_port_suspend() function (Torez Smith) [1975985] - usb: dwc2: Clear GINTSTS_RESTOREDONE bit after restore is generated. (Torez Smith) [1975985] - usb: dwc2: Clear fifo_map when resetting core. (Torez Smith) [1975985] - usb: dwc2: Allow exiting hibernation from gpwrdn rst detect (Torez Smith) [1975985] - usb: dwc2: Fix hibernation between host and device modes. (Torez Smith) [1975985] - usb: dwc2: Fix host mode hibernation exit with remote wakeup flow. (Torez Smith) [1975985] - usb: dwc2: Reset DEVADDR after exiting gadget hibernation. (Torez Smith) [1975985] - usb: dwc2: Update exit hibernation when port reset is asserted (Torez Smith) [1975985] - usb: dwc3: gadget: Remove FS bInterval_m1 limitation (Torez Smith) [1975985] - usb: xhci-mtk: remove bus status check (Torez Smith) [1975985] - usb: dwc2: Enable RPi in ACPI mode (Torez Smith) [1975985] - USB: Add reset-resume quirk for WD19's Realtek Hub (Torez Smith) [1975985] - usb: storage: datafab: remove redundant assignment of variable result (Torez Smith) [1975985] - usb: misc: adutux: fix whitespace coding style issue (Torez Smith) [1975985] - usb: dwc3: gadget: Fix START_TRANSFER link state check (Torez Smith) [1975985] - usb: typec: tcpm: Fix error while calculating PPS out values (Torez Smith) [1975985] - usb: xhci-mtk: remove unused members (Torez Smith) [1975985] - usb: xhci-mtk: use clock bulk to get clocks (Torez Smith) [1975985] - usb: xhci-mtk: add support runtime PM (Torez Smith) [1975985] - usb: xhci-mtk: check return value in suspend/resume hooks (Torez Smith) [1975985] - usb: typec: tcpm: Allow slow charging loops to comply to pSnkStby (Torez Smith) [1975985] - usb: typec: tcpm: Honour pSnkStdby requirement during negotiation (Torez Smith) [1975985] - usb: dwc3: gadget: Check for disabled LPM quirk (Torez Smith) [1975985] - usb: dwc3: core: Add shutdown callback for dwc3 (Torez Smith) [1975985] - usb: dwc3: gadget: Ignore Packet Pending bit (Torez Smith) [1975985] - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet (Torez Smith) [1975985] - usb: typec: silence a static checker warning (Torez Smith) [1975985] - USB: cdc-acm: add more Maxlinear/Exar models to ignore list (Torez Smith) [1975985] - USB: serial: xr: add copyright notice (Torez Smith) [1975985] - USB: serial: xr: reset FIFOs on open (Torez Smith) [1975985] - USB: serial: xr: add support for XR22801, XR22802, XR22804 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1411 (Torez Smith) [1975985] - USB: serial: xr: add support for XR21B1421, XR21B1422 and XR21B1424 (Torez Smith) [1975985] - USB: serial: xr: add type abstraction (Torez Smith) [1975985] - USB: serial: xr: drop type prefix from shared defines (Torez Smith) [1975985] - USB: serial: xr: move pin configuration to probe (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-pin defines (Torez Smith) [1975985] - USB: serial: xr: rename GPIO-mode defines (Torez Smith) [1975985] - USB: serial: xr: add support for XR21V1412 and XR21V1414 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up termios CSIZE handling (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: use kernel types consistently (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: add port-command helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: drop unnecessary packed attributes (Torez Smith) [1975985] - USB: serial: io_ti: use kernel types consistently (Torez Smith) [1975985] - USB: serial: io_ti: add read-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: add send-port-command helper (Torez Smith) [1975985] - USB: serial: io_ti: clean up vendor-request helpers (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop drain delay for 3410 (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: reduce drain delay to one char (Torez Smith) [1975985] - USB: serial: io_ti: document reason for drain delay (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating before removing driver (Torez Smith) [1975985] - usb: dwc2: Add clock gating exiting flow by system resume (Torez Smith) [1975985] - usb: dwc2: Add clock gating entering flow by system suspend (Torez Smith) [1975985] - usb: dwc2: Allow exit clock gating in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Update exit clock gating when port is resumed (Torez Smith) [1975985] - usb: dwc2: Update enter clock gating when port is suspended (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from session request interrupt (Torez Smith) [1975985] - usb: dwc2: Add exit clock gating from wakeup interrupt (Torez Smith) [1975985] - usb: dwc2: Allow entering clock gating from USB_SUSPEND interrupt (Torez Smith) [1975985] - usb: dwc2: Add host clock gating support functions (Torez Smith) [1975985] - usb: dwc2: Add device clock gating support functions (Torez Smith) [1975985] - Revert "usb: Link the ports to the connectors they are attached to" (Torez Smith) [1975985] - USB: serial: cp210x: add gpio-configuration debug printk (Torez Smith) [1975985] - USB: serial: cp210x: provide gpio valid mask (Torez Smith) [1975985] - usb: dwc3: qcom: Detect DWC3 DT-nodes using compatible string (Torez Smith) [1975985] - usb: dwc3: qcom: Remove redundant dev_err call in dwc3_qcom_probe() (Torez Smith) [1975985] - usb: core: reduce power-on-good delay time of root hub (Torez Smith) [1975985] - USB:ehci:fix Kunpeng920 ehci hardware problem (Torez Smith) [1975985] - USB: serial: do not use tty class device for debugging (Torez Smith) [1975985] - USB: cdc-acm: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: cdc-acm: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL" (Torez Smith) [1975985] - usb: typec: tcpm: Add support for altmodes (Torez Smith) [1975985] - usb: typec: Add typec_port_register_altmodes() (Torez Smith) [1975985] - usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() (Torez Smith) [1975985] - usb: dwc3: xilinx: Remove the extra freeing of clocks (Torez Smith) [1975985] - usb: dwc3: Resolve kernel-doc warning for Xilinx DWC3 driver (Torez Smith) [1975985] - usb: core: hub: Fix PM reference leak in usb_port_resume() (Torez Smith) [1975985] - usb: dwc3: pci: add support for the Intel Alder Lake-M (Torez Smith) [1975985] - usb: typec: Link all ports during connector registration (Torez Smith) [1975985] - usb: Iterator for ports (Torez Smith) [1975985] - usb: Link the ports to the connectors they are attached to (Torez Smith) [1975985] - usb: typec: Port mapping utility (Torez Smith) [1975985] - usb: typec: tcpm: update power supply once partner accepts (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for pps supply (Torez Smith) [1975985] - usb: typec: tcpm: Address incorrect values of tcpm psy for fixed supply (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down before removing driver (Torez Smith) [1975985] - usb: dwc2: Fix partial power down exiting by system resume (Torez Smith) [1975985] - usb: dwc2: Update partial power down entering by system suspend (Torez Smith) [1975985] - usb: dwc2: Fix session request interrupt handler (Torez Smith) [1975985] - usb: dwc2: Allow exit partial power down in urb enqueue (Torez Smith) [1975985] - usb: dwc2: Add part. power down exit from dwc2_conn_id_status_change(). (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port reset is asserted (Torez Smith) [1975985] - usb: dwc2: Add exit partial power down when port is resumed (Torez Smith) [1975985] - usb: dwc2: Add enter partial power down when port is suspended (Torez Smith) [1975985] - usb: dwc2: Update port suspend/resume function definitions. (Torez Smith) [1975985] - usb: dwc2: Add partial power down exit flow in wakeup intr. (Torez Smith) [1975985] - usb: dwc2: Update enter and exit partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add host partial power down functions (Torez Smith) [1975985] - usb: dwc2: Add device partial power down functions (Torez Smith) [1975985] - media: gscpa/stv06xx: fix memory leak (Torez Smith) [1975985] - media: gspca: Fix memory leak in probe (Torez Smith) [1975985] - media: dvb-usb: avoid -Wempty-body warnings (Torez Smith) [1975985] - media: flexcop: avoid -Wempty-body warning (Torez Smith) [1975985] - media: dvb-usb: fix memory leak in dvb_usb_adapter_init (Torez Smith) [1975985] - media: dvb-usb-remote: fix dvb_usb_nec_rc_key_to_event type mismatch (Torez Smith) [1975985] - thunderbolt: Add details to router uevent (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unused definitions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: io_ti: switch to 30-second closing wait (Torez Smith) [1975985] - USB: serial: io_ti: drop closing_wait module parameter (Torez Smith) [1975985] - USB: serial: ftdi_sio: clean up TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: ftdi_sio: simplify TIOCGSERIAL permission check (Torez Smith) [1975985] - USB: serial: ftdi_sio: ignore baud_base changes (Torez Smith) [1975985] - USB: serial: stop reporting legacy UART types (Torez Smith) [1975985] - USB: serial: add generic support for TIOCSSERIAL (Torez Smith) [1975985] - USB: serial: fix return value for unsupported ioctls (Torez Smith) [1975985] - USB: serial: whiteheat: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: usb_wwan: fix unprivileged TIOCCSERIAL (Torez Smith) [1975985] - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check (Torez Smith) [1975985] - USB: serial: ti_usb_3410_5052: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ssu100: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: quatech2: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: pl2303: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: opticon: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7840: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: mos7720: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_ti: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: io_edgeport: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ftdi_sio: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - USB: serial: ark3116: fix TIOCGSERIAL implementation (Torez Smith) [1975985] - media: em28xx/em28xx.h: Remove duplicate struct declaration (Torez Smith) [1975985] - media: cx231xx/cx231xx.h: Remove repeated struct declaration (Torez Smith) [1975985] - xhci: prevent double-fetch of transfer and transfer event TRBs (Torez Smith) [1975985] - xhci: fix potential array out of bounds with several interrupters (Torez Smith) [1975985] - xhci: check control context is valid before dereferencing it. (Torez Smith) [1975985] - xhci: check port array allocation was successful before dereferencing it (Torez Smith) [1975985] - media: em28xx: fix memory leak (Torez Smith) [1975985] - usb: typec: Declare the typec_class static (Torez Smith) [1975985] - usb: typec: Organize the private headers properly (Torez Smith) [1975985] - usb: xhci-mtk: support quirk to disable usb2 lpm (Torez Smith) [1975985] - usb: xhci-mtk: fix oops when unbind driver (Torez Smith) [1975985] - usb: xhci-mtk: fix wrong remainder of bandwidth budget (Torez Smith) [1975985] - usb: dwc2: delete duplicate word in the comment (Torez Smith) [1975985] - usb: dwc2: add parenthess and space around * (Torez Smith) [1975985] - usb: dwc3: add cancelled reasons for dwc3 requests (Torez Smith) [1975985] - usb: dwc3: fix incorrect kernel-doc comment syntax in files (Torez Smith) [1975985] - usb: dwc3: st: fix incorrect kernel-doc comment syntax in file (Torez Smith) [1975985] - usb: dwc3: imx8mp: fix incorrect kernel-doc comment syntax (Torez Smith) [1975985] - USB: serial: xr: claim both interfaces (Torez Smith) [1975985] - USB: serial: add support for multi-interface functions (Torez Smith) [1975985] - USB: serial: refactor endpoint classification (Torez Smith) [1975985] - USB: serial: drop unused suspending flag (Torez Smith) [1975985] - USB: serial: xr: fix CSIZE handling (Torez Smith) [1975985] - USB: serial: iuu_phoenix: remove redundant variable 'error' (Torez Smith) [1975985] - usb: dwc3: Create helper function getting MDWIDTH (Torez Smith) [1975985] - usb: xhci-mtk: remove MODULE_ALIAS (Torez Smith) [1975985] - usb: xhci-mtk: drop CONFIG_OF (Torez Smith) [1975985] - usb: misc: usbsevseg: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: misc: ezusb: update to use usb_control_msg_send() (Torez Smith) [1975985] - usb: dwc3: gadget: modify the scale in vbus_draw callback (Torez Smith) [1975985] - usb: xhci-mtk: add support ip-sleep wakeup for mT8192 (Torez Smith) [1975985] - usb: xhci-mtk: support ip-sleep wakeup for MT8183 (Torez Smith) [1975985] - usb: dwc3: trace: Print register read and write offset (Torez Smith) [1975985] - usb: typec: tcpci_maxim: Make symbol 'max_tcpci_tcpci_write_table' static (Torez Smith) [1975985] - usbip: tools: add usage of device mode in usbip_list.c (Torez Smith) [1975985] - usbip: tools: add options and examples in man page related to device mode (Torez Smith) [1975985] - tools: usbip: list.h: fix kernel-doc for list_del() (Torez Smith) [1975985] - xhci: Fix uninitialized errors (Torez Smith) [1975985] - usb: typec: Fix a typo (Torez Smith) [1975985] - usb: xhci: Remove unused function (Torez Smith) [1975985] - usb: xhci: Rewrite xhci_create_usb3_bos_desc() (Torez Smith) [1975985] - usb: xhci: Fix port minor revision (Torez Smith) [1975985] - usb: xhci: Init root hub SSP rate (Torez Smith) [1975985] - thunderbolt: Unlock on error path in tb_domain_add() (Torez Smith) [1975985] - usb: core: sysfs: Check for SSP rate in speed attr (Torez Smith) [1975985] - usb: core: hub: Print speed name based on ssp rate (Torez Smith) [1975985] - usb: core: hub: Remove port_speed_is_ssp() (Torez Smith) [1975985] - usb: core: Track SuperSpeed Plus GenXxY (Torez Smith) [1975985] - usb: dwc3: gadget: Avoid continuing preparing TRBs during teardown (Torez Smith) [1975985] - USB: xhci: drop workaround for forced irq threading (Torez Smith) [1975985] - usb: dwc3: Add driver for Xilinx platforms (Torez Smith) [1975985] - USB: core: rename usb_driver_claim_interface() data parameter (Torez Smith) [1975985] - USB: core: drop outdated interface-binding comment (Torez Smith) [1975985] - media: media/usb: fix kernel-doc header issues (Torez Smith) [1975985] - media: gspca/sq905.c: fix uninitialized variable (Torez Smith) [1975985] - media: media/usb/gspca/w996Xcf.c: /** -> /* (Torez Smith) [1975985] - media: flexcop-usb: delete unneeded return (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Add support for USB4 DROM (Torez Smith) [1975985] - thunderbolt: Check quirks in tb_switch_add() (Torez Smith) [1975985] - thunderbolt: Add KUnit tests for XDomain properties (Torez Smith) [1975985] - thunderbolt: Drop unused tb_port_set_initial_credits() (Torez Smith) [1975985] - thunderbolt: Use dedicated flow control for DMA tunnels (Torez Smith) [1975985] - thunderbolt: Allow multiple DMA tunnels over a single XDomain connection (Torez Smith) [1975985] - thunderbolt: Add support for maxhopid XDomain property (Torez Smith) [1975985] - thunderbolt: Add tb_property_copy_dir() (Torez Smith) [1975985] - thunderbolt: Align XDomain protocol timeouts with the spec (Torez Smith) [1975985] - thunderbolt: Use pseudo-random number as initial property block generation (Torez Smith) [1975985] - thunderbolt: Do not re-establish XDomain DMA paths automatically (Torez Smith) [1975985] - thunderbolt: Decrease control channel timeout for software connection manager (Torez Smith) [1975985] - thunderbolt: Disable retry logic for intra-domain control packets (Torez Smith) [1975985] - thunderbolt: Do not pass timeout for tb_cfg_reset() (Torez Smith) [1975985] - thunderbolt: Add more logging to XDomain connections (Torez Smith) [1975985] - usb: typec: tcpm: PD3.0 sinks can send Discover Identity even in device mode (Torez Smith) [1975985] - drivers: usb: Fix a typo in dwc3-qcom.c (Torez Smith) [1975985] - usb: webcam: Invalid size of Processing Unit Descriptor (Torez Smith) [1975985] - usb: typec: tcpci: Added few missing TCPCI register definitions (Torez Smith) [1975985] - USB: serial: pl2303: TA & TB alternate divider with non-standard baud rates (Torez Smith) [1975985] - USB: serial: pl2303: add device-type names (Torez Smith) [1975985] - USB: serial: pl2303: tighten type HXN (G) detection (Torez Smith) [1975985] - USB: serial: pl2303: rename legacy PL2303H type (Torez Smith) [1975985] - USB: serial: pl2303: amend and tighten type detection (Torez Smith) [1975985] - USB: serial: pl2303: clean up type detection (Torez Smith) [1975985] - USB: serial: io_edgeport: drop unneeded forward declarations (Torez Smith) [1975985] - USB: serial: keyspan: drop unneeded forward declarations (Torez Smith) [1975985] - usb: typec: tipd: Separate file for tracepoint creation (Torez Smith) [1975985] - usb: typec: tps6598x: Move the driver under its own subdirectory (Torez Smith) [1975985] - usb: typec: tps6598x: Fix tracepoint header file (Torez Smith) [1975985] - usb: typec: tcpci: Refactor tcpc_presenting_cc1_rd macro (Torez Smith) [1975985] - thunderbolt: debugfs: Show all accessible dwords (Torez Smith) [1975985] - media: fix incorrect kernel doc usages (Torez Smith) [1975985] - media: drivers/media/usb: fix memory leak in zr364xx_probe (Torez Smith) [1975985] - media: anysee: simplify the return expression of anysee_ci_* function (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" in the ttusb_dec.c (Torez Smith) [1975985] - media: media/usb:Remove superfluous "breaks" (Torez Smith) [1975985] - media: usbtv: constify static structs (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461eV2 (Torez Smith) [1975985] - media: em28xx: Add pid for bulk revision of Hauppauge 461e (Torez Smith) [1975985] - media: dvb-usb: Fix use-after-free access (Torez Smith) [1975985] - media: dvb-usb: Fix memory leak at error in dvb_usb_device_init() (Torez Smith) [1975985] - media: dvb-usb: make dvb_usb_device_properties const (Torez Smith) [1975985] - usb: typec: tps6598x: Fix return value check in tps6598x_probe() (Torez Smith) [1975985] - usb: typec: stusb160x: fix return value check in stusb160x_probe() (Torez Smith) [1975985] - usb: typec: tcpm: turn tcpm_ams_finish into void function (Torez Smith) [1975985] - usb: typec: tcpci: Check ROLE_CONTROL while interpreting CC_STATUS (Torez Smith) [1975985] - usb: common: move function's kerneldoc next to its definition (Torez Smith) [1975985] - usb: xhci-mtk: print debug info of endpoint interval (Torez Smith) [1975985] - usb: common: add function to get interval expressed in us unit (Torez Smith) [1975985] - usb: xhci-mtk: support to build xhci-mtk-hcd.ko (Torez Smith) [1975985] - usb: xhci-mtk: remove declaration of xhci_mtk_setup() (Torez Smith) [1975985] - usb: xhci-mtk: add some schedule error number (Torez Smith) [1975985] - usb: xhci-mtk: rebuild the way to get bandwidth domain (Torez Smith) [1975985] - usb: xhci-mtk: use @tt_info to check the FS/LS device is under a HS hub (Torez Smith) [1975985] - usb: xhci-mtk: add a member @speed in mu3h_sch_ep_info struct (Torez Smith) [1975985] - usb: xhci-mtk: use clear type instead of void (Torez Smith) [1975985] - usb: xhci-mtk: remove unnecessary members of mu3h_sch_tt struct (Torez Smith) [1975985] - usb: xhci-mtk: add a function to get bandwidth boundary (Torez Smith) [1975985] - usb: xhci-mtk: add a function to (un)load bandwidth info (Torez Smith) [1975985] - usb: xhci-mtk: use @sch_tt to check whether need do TT schedule (Torez Smith) [1975985] - usb: xhci-mtk: add only one extra CS for FS/LS INTR (Torez Smith) [1975985] - usb: xhci-mtk: get the microframe boundary for ESIT (Torez Smith) [1975985] - usb: dwc3: Fix dereferencing of null dwc->usb_psy (Torez Smith) [1975985] - media: uvc: don't do DMA on stack (Torez Smith) [1975985] - usb: dwc3: document usb_psy in struct dwc3 (Torez Smith) [1975985] - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K (Torez Smith) [1975985] - USB: typec: tcpm: create debugfs subdir for the driver (Torez Smith) [1975985] - usb: dwc2: Add STM32 related debugfs entries (Torez Smith) [1975985] - media: uvcvideo: Support devices that report an OT as an entity source (Torez Smith) [1975985] - media: uvcvideo: Fix XU id print in forward scan (Torez Smith) [1975985] - USB: typec: fusb302: create debugfs subdir for the driver (Torez Smith) [1975985] - media: uvcvideo: Use dma_alloc_noncontiguous API (Torez Smith) [1975985] - USB: host: uhci: remove dentry pointer for debugfs (Torez Smith) [1975985] - media: uvc: strncpy -> strscpy (Torez Smith) [1975985] - media: uvcvideo: Rename debug functions (Torez Smith) [1975985] - media: uvcvideo: use dev_printk() for uvc_trace() (Torez Smith) [1975985] - media: uvcvideo: New macro uvc_trace_cont (Torez Smith) [1975985] - USB: core: no need to save usb_devices_root (Torez Smith) [1975985] - media: uvcvideo: Use dev_ printk aliases (Torez Smith) [1975985] - usb: dwc3: add an alternate path in vbus_draw callback (Torez Smith) [1975985] - media: uvcvideo: Add Privacy control based on EXT_GPIO (Torez Smith) [1975985] - usb: dwc3: add a power supply for current control (Torez Smith) [1975985] - media: uvcvideo: Implement UVC_EXT_GPIO_UNIT (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for data status (Torez Smith) [1975985] - media: uvcvideo: Allow entity-defined get_info and get_cur (Torez Smith) [1975985] - media: uvcvideo: Provide sync and async uvc_ctrl_status_event (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for power status register (Torez Smith) [1975985] - media: uvcvideo: Allow entities with no pads (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for status register (Torez Smith) [1975985] - media: uvcvideo: Allow extra entities (Torez Smith) [1975985] - usb: typec: tps6598x: Add trace event for IRQ events (Torez Smith) [1975985] - tty: make everyone's write_room return >= 0 (Torez Smith) [1975985] - media: uvcvideo: Move guid to entity (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref on disconnect (Torez Smith) [1975985] - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values (Torez Smith) [1975985] - thunderbolt: Drop unused functions tb_switch_is_[ice|tiger]_lake() (Torez Smith) [1975985] - media: uvcvideo: Force UVC version to 1.0a for 1bcf:0b40 (Torez Smith) [1975985] - thunderbolt: debugfs: Handle fail reading block (Torez Smith) [1975985] - media: uvcvideo: Use DIV_ROUND_CLOSEST directly to make it readable (Torez Smith) [1975985] - media: usb: uvc: no need to check return value of debugfs_create functions (Torez Smith) [1975985] - media: uvcvideo: Convey full colorspace information to V4L2 (Torez Smith) [1975985] - driver core: fw_devlink: Detect supplier devices that will never be added (Torez Smith) [1975985] - media: uvcvideo: Ensure all probed info is returned to v4l2 (Torez Smith) [1975985] - media: uvcvideo: Silence shift-out-of-bounds warning (Torez Smith) [1975985] - media: uvcvideo: Fix dereference of out-of-bound list iterator (Torez Smith) [1975985] - media: zr364xx: fix memory leaks in probe() (Torez Smith) [1975985] - media: uvcvideo: Cleanup uvc_ctrl_add_info() error handling (Torez Smith) [1975985] - USB: serial: xr: fix B0 handling (Torez Smith) [1975985] - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect (Torez Smith) [1975985] - USB: serial: xr: fix pin configuration (Torez Smith) [1975985] - media: uvcvideo: Replace HTTP links with HTTPS ones (Torez Smith) [1975985] - USB: serial: xr: fix gpio-mode handling (Torez Smith) [1975985] - media: uvcvideo: Set media controller entity functions (Torez Smith) [1975985] - USB: serial: xr: simplify line-speed logic (Torez Smith) [1975985] - media: uvcvideo: Add mapping for HEVC payloads (Torez Smith) [1975985] - USB: serial: xr: clean up line-settings handling (Torez Smith) [1975985] - media: uvcvideo: Fix annotation for uvc_video_clock_update() (Torez Smith) [1975985] - USB: serial: xr: document vendor-request recipient (Torez Smith) [1975985] - USB: serial: xr: use termios flag helpers (Torez Smith) [1975985] - USB: serial: xr: use subsystem usb_device at probe (Torez Smith) [1975985] - media: media/usb: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix interface leak at disconnect (Torez Smith) [1975985] - media: rename VFL_TYPE_GRABBER to _VIDEO (Torez Smith) [1975985] - USB: serial: xr: fix NULL-deref at probe (Torez Smith) [1975985] - USB: cdc-acm: ignore Exar XR21V141X when serial driver is built (Torez Smith) [1975985] - media: uvcvideo: drop error check of debugfs_create_dir() (Torez Smith) [1975985] - USB: serial: add MaxLinear/Exar USB to Serial driver (Torez Smith) [1975985] - media: uvcvideo: Fix a typo in UVC_METATADA_BUF_SIZE (Torez Smith) [1975985] - media: uvcvideo: Fix error path in control parsing failure (Torez Smith) [1975985] - media: drivers/media: don't set pix->priv = 0 (Torez Smith) [1975985] - media: Bulk remove BUG_ON(in_interrupt()) (Torez Smith) [1975985] - media: zr364xx: propagate errors from zr364xx_start_readpipe() (Torez Smith) [1975985] - media: uvcvideo: Add a D4M camera description (Torez Smith) [1975985] - media: em28xx: Enable Hauppauge 461e rev2 (Torez Smith) [1975985] - crypto: qat - fix definition of ring reset results (Vladis Dronov) [1960307] - crypto: qat - add support for compression for 4xxx (Vladis Dronov) [1960307] - crypto: qat - allow detection of dc capabilities for 4xxx (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to enable the reset of ring pairs (Vladis Dronov) [1960307] - crypto: qat - add PFVF support to the GEN4 host driver (Vladis Dronov) [1960307] - crypto: qat - config VFs based on ring-to-svc mapping (Vladis Dronov) [1960307] - crypto: qat - exchange ring-to-service mappings over PFVF (Vladis Dronov) [1960307] - crypto: qat - support fast ACKs in the PFVF protocol (Vladis Dronov) [1960307] - crypto: qat - exchange device capabilities over PFVF (Vladis Dronov) [1960307] - crypto: qat - introduce support for PFVF block messages (Vladis Dronov) [1960307] - crypto: qat - store the ring-to-service mapping (Vladis Dronov) [1960307] - crypto: qat - store the PFVF protocol version of the endpoints (Vladis Dronov) [1960307] - crypto: qat - improve the ACK timings in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage read_poll_timeout in PFVF send (Vladis Dronov) [1960307] - crypto: qat - leverage bitfield.h utils for PFVF messages (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF messages with struct pfvf_message (Vladis Dronov) [1960307] - crypto: qat - set PFVF_MSGORIGIN just before sending (Vladis Dronov) [1960307] - crypto: qat - make PFVF send and receive direction agnostic (Vladis Dronov) [1960307] - crypto: qat - make PFVF message construction direction agnostic (Vladis Dronov) [1960307] - crypto: qat - add the adf_get_pmisc_base() helper function (Vladis Dronov) [1960307] - crypto: qat - support the reset of ring pairs on PF (Vladis Dronov) [1960307] - crypto: qat - extend crypto capability detection for 4xxx (Vladis Dronov) [1960307] - crypto: qat - set COMPRESSION capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - set CIPHER capability for QAT GEN2 (Vladis Dronov) [1960307] - crypto: qat - get compression extended capabilities (Vladis Dronov) [1960307] - crypto: qat - improve logging of PFVF messages (Vladis Dronov) [1960307] - crypto: qat - fix VF IDs in PFVF log messages (Vladis Dronov) [1960307] - crypto: qat - do not rely on min version (Vladis Dronov) [1960307] - crypto: qat - refactor pfvf version request messages (Vladis Dronov) [1960307] - crypto: qat - pass the PF2VF responses back to the callers (Vladis Dronov) [1960307] - crypto: qat - use enums for PFVF protocol codes (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF protocol definitions (Vladis Dronov) [1960307] - crypto: qat - reorganize PFVF code (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF receive logic (Vladis Dronov) [1960307] - crypto: qat - abstract PFVF send function (Vladis Dronov) [1960307] - crypto: qat - differentiate between pf2vf and vf2pf offset (Vladis Dronov) [1960307] - crypto: qat - add pfvf_ops (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF disabled function (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF VF related logic (Vladis Dronov) [1960307] - crypto: qat - relocate PFVF PF related logic (Vladis Dronov) [1960307] - crypto: qat - handle retries due to collisions in adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - split PFVF message decoding from handling (Vladis Dronov) [1960307] - crypto: qat - re-enable interrupts for legacy PFVF messages (Vladis Dronov) [1960307] - crypto: qat - change PFVF ACK behaviour (Vladis Dronov) [1960307] - crypto: qat - move interrupt code out of the PFVF handler (Vladis Dronov) [1960307] - crypto: qat - move VF message handler to adf_vf2pf_msg.c (Vladis Dronov) [1960307] - crypto: qat - move vf2pf interrupt helpers (Vladis Dronov) [1960307] - crypto: qat - refactor PF top half for PFVF (Vladis Dronov) [1960307] - crypto: qat - fix undetected PFVF timeout in ACK loop (Vladis Dronov) [1960307] - crypto: qat - do not handle PFVF sources for qat_4xxx (Vladis Dronov) [1960307] - crypto: qat - simplify adf_enable_aer() (Vladis Dronov) [1960307] - crypto: qat - share adf_enable_pf2vf_comms() from adf_pf2vf_msg.c (Vladis Dronov) [1960307] - crypto: qat - extract send and wait from adf_vf2pf_request_version() (Vladis Dronov) [1960307] - crypto: qat - add VF and PF wrappers to common send function (Vladis Dronov) [1960307] - crypto: qat - rename pfvf collision constants (Vladis Dronov) [1960307] - crypto: qat - move pfvf collision detection values (Vladis Dronov) [1960307] - crypto: qat - make pfvf send message direction agnostic (Vladis Dronov) [1960307] - crypto: qat - use hweight for bit counting (Vladis Dronov) [1960307] - crypto: qat - remove duplicated logic across GEN2 drivers (Vladis Dronov) [1960307] - crypto: qat - fix handling of VF to PF interrupts (Vladis Dronov) [1960307] - crypto: qat - remove unnecessary collision prevention step in PFVF (Vladis Dronov) [1960307] - crypto: qat - disregard spurious PFVF interrupts (Vladis Dronov) [1960307] - crypto: qat - detect PFVF collision after ACK (Vladis Dronov) [1960307] - crypto: qat - power up 4xxx device (Vladis Dronov) [1960307] - crypto: qat - remove unneeded packed attribute (Vladis Dronov) [1960307] - crypto: qat - free irq in case of failure (Vladis Dronov) [1960307] - crypto: qat - free irqs only if allocated (Vladis Dronov) [1960307] - crypto: qat - remove unmatched CPU affinity to cluster IRQ (Vladis Dronov) [1960307] - crypto: qat - replace deprecated MSI API (Vladis Dronov) [1960307] - crypto: qat - store vf.compatible flag (Vladis Dronov) [1960307] - crypto: qat - do not export adf_iov_putmsg() (Vladis Dronov) [1960307] - crypto: qat - flush vf workqueue at driver removal (Vladis Dronov) [1960307] - crypto: qat - remove the unnecessary get_vintmsk_offset() (Vladis Dronov) [1960307] - crypto: qat - fix naming of PF/VF enable functions (Vladis Dronov) [1960307] - crypto: qat - complete all the init steps before service notification (Vladis Dronov) [1960307] - crypto: qat - move IO virtualization functions (Vladis Dronov) [1960307] - crypto: qat - fix naming for init/shutdown VF to PF notifications (Vladis Dronov) [1960307] - crypto: qat - protect interrupt mask CSRs with a spinlock (Vladis Dronov) [1960307] - crypto: qat - move pf2vf interrupt [en|dis]able to adf_vf_isr.c (Vladis Dronov) [1960307] - crypto: qat - fix reuse of completion variable (Vladis Dronov) [1960307] - crypto: qat - remove intermediate tasklet for vf2pf (Vladis Dronov) [1960307] - crypto: qat - rename compatibility version definition (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in PF (Vladis Dronov) [1960307] - crypto: qat - prevent spurious MSI interrupt in VF (Vladis Dronov) [1960307] - crypto: qat - handle both source of interrupt in VF ISR (Vladis Dronov) [1960307] - crypto: qat - do not ignore errors from enable_vf2pf_comms() (Vladis Dronov) [1960307] - crypto: qat - enable interrupts only after ISR allocation (Vladis Dronov) [1960307] - crypto: qat - remove empty sriov_configure() (Vladis Dronov) [1960307] - crypto: qat - use proper type for vf_mask (Vladis Dronov) [1960307] - crypto: qat - fix a typo in a comment (Vladis Dronov) [1960307] - crypto: qat - disable AER if an error occurs in probe functions (Vladis Dronov) [1960307] - crypto: qat - set DMA mask to 48 bits for Gen2 (Vladis Dronov) [1960307] - crypto: qat - simplify code and axe the use of a deprecated API (Vladis Dronov) [1960307] - crypto: qat - ratelimit invalid ioctl message and print the invalid cmd (Vladis Dronov) [1960307] - lib: crc8: pointer to data block should be const (Vladis Dronov) [1960307] - redhat/configs: disable CONFIG_HYPERV_BALLOON on Aarch64 (Vitaly Kuznetsov) [2035292] - net/mlx5e: Fix possible use-after-free deleting fdb rule (Amir Tzin) [2000003] - e1000e: Fix packet loss on Tiger Lake and later (Ken Cox) [1952803] - e1000e: Separate TGP board type from SPT (Ken Cox) [1952803] - e1000e: Add support for the next LOM generation (Ken Cox) [1952803] - e1000e: Add support for Lunar Lake (Ken Cox) [1952803] - ACPI: tables: FPDT: Do not print FW_BUG message if record types are reserved (Mark Langsdorf) [1999906] - powerpc/xmon: Dump XIVE information for online-only processors. (Steve Best) [2037639] - of: net: pass the dst buffer to of_get_mac_address() (Petr Oros) [2026468] - net: ethernet: improve eth_platform_get_mac_address (Petr Oros) [2026468] - net: ethernet: fix similar warning reported by kbuild test robot (Petr Oros) [2026468] - net: ethernet: support of_get_mac_address new ERR_PTR error (Petr Oros) [2026468] - [s390] s390: add HWCAP_S390_PCI_MIO to ELF hwcaps (Mete Durlu) [2030641] - [s390] s390: make PCI mio support a machine flag (Mete Durlu) [2030641] - Allocate bw_dwork as a pointer and introduce a backpointer in the work struct (Nico Pache) [1990580] - writeback: use READ_ONCE for unlocked reads of writeback stats (Nico Pache) [1990580] - writeback: rename domain_update_bandwidth() (Nico Pache) [1990580] - writeback: fix bandwidth estimate for spiky workload (Nico Pache) [1990580] - writeback: reliably update bandwidth estimation (Nico Pache) [1990580] - writeback: track number of inodes under writeback (Nico Pache) [1990580] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Nico Pache) [1990580] - bdi: invert BDI_CAP_NO_ACCT_WB (Nico Pache) [1990580] - bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag (Nico Pache) [1990580] - mm: use SWP_SYNCHRONOUS_IO more intelligently (Nico Pache) [1990580] - bdi: remove BDI_CAP_SYNCHRONOUS_IO (Nico Pache) [1990580] - bcache: inherit the optimal I/O size (Nico Pache) [1990580] - fs: remove the unused SB_I_MULTIROOT flag (Nico Pache) [1990580] - Revert "bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag" (Nico Pache) [1990580] - mm/page_io.c: annotate refault stalls from swap_readpage (Nico Pache) [1990580] - mmc: mmc_spi: Enable stable writes (Nico Pache) [1990580] - virtio-blk: modernize sysfs attribute creation (Nico Pache) [1990580] - aoe: register default groups with device_add_disk() (Nico Pache) [1990580] - block: make QUEUE_SYSFS_BIT_FNS more useful (Nico Pache) [1990580] - block: add helper macros for queue sysfs entries (Nico Pache) [1990580] - cifs: sanitize multiple delimiters in prepath (Thiago Becker) [2031200] - igc: Fix typo in i225 LTR functions (Corinna Vinschen) [1970667] - igc: AF_XDP zero-copy metadata adjust breaks SKBs on XDP_PASS (Corinna Vinschen) [1970667] - igc: Change Device Reset to Port Reset (Corinna Vinschen) [1970667] - igc: Add new device ID (Corinna Vinschen) [1970667] - igc: Remove media type checking on the PHY initialization (Corinna Vinschen) [1970667] - igc: Update I226_K device ID (Corinna Vinschen) [1970667] - net: intel: igc_ptp: fix build for UML (Corinna Vinschen) [1970667] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970667] - igc: Add support for CBS offloading (Corinna Vinschen) [1970667] - igc: Simplify TSN flags handling (Corinna Vinschen) [1970667] - igc: Use default cycle 'start' and 'end' values for queues (Corinna Vinschen) [1970667] - igc: Add support for PTP getcrosststamp() (Corinna Vinschen) [1970667] - igc: Enable PCIe PTM (Corinna Vinschen) [1970667] - igc: Use num_tx_queues when iterating over tx_ring queue (Corinna Vinschen) [1970667] - igc: fix page fault when thunderbolt is unplugged (Corinna Vinschen) [1970667] - igc: Increase timeout value for Speed 100/1000/2500 (Corinna Vinschen) [1970667] - igc: Set QBVCYCLET_S to 0 for TSN Basic Scheduling (Corinna Vinschen) [1970667] - igc: Remove phy->type checking (Corinna Vinschen) [1970667] - igc: Remove _I_PHY_ID checking (Corinna Vinschen) [1970667] - igc: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970667] - Revert "igc: Export LEDs" (Corinna Vinschen) [1970667] - igc: Export LEDs (Corinna Vinschen) [1970667] - igc: Make flex filter more flexible (Corinna Vinschen) [1970667] - igc: Allow for Flex Filters to be installed (Corinna Vinschen) [1970667] - igc: Integrate flex filter into ethtool ops (Corinna Vinschen) [1970667] - igc: Add possibility to add flex filter (Corinna Vinschen) [1970667] - igc: Fix an error handling path in 'igc_probe()' (Corinna Vinschen) [1970667] - igc: change default return of igc_read_phy_reg() (Corinna Vinschen) [1970667] - igc: Fix use-after-free error during reset (Corinna Vinschen) [1970667] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970667] - igc: Enable HW VLAN Insertion and HW VLAN Stripping (Corinna Vinschen) [1970667] - igc: Indentation fixes (Corinna Vinschen) [1970667] - igc: Remove unused MDICNFG register (Corinna Vinschen) [1970667] - igc: Remove unused asymmetric pause bit from igc defines (Corinna Vinschen) [1970667] - igc: Update driver to use ethtool_sprintf (Corinna Vinschen) [1970667] - igc: add correct exception tracing for XDP (Corinna Vinschen) [1970667] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970667] - intel: remove checker warning (Corinna Vinschen) [1970667] - igc: Enable TX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Enable RX via AF_XDP zero-copy (Corinna Vinschen) [1970667] - igc: Replace IGC_TX_FLAGS_XDP flag by an enum (Corinna Vinschen) [1970667] - igc: Introduce igc_unmap_tx_buffer() helper (Corinna Vinschen) [1970667] - igc: Introduce TX/RX stats helpers (Corinna Vinschen) [1970667] - igc: Refactor XDP rxq info registration (Corinna Vinschen) [1970667] - igc: Refactor igc_clean_rx_ring() (Corinna Vinschen) [1970667] - igc: Refactor __igc_xdp_run_prog() (Corinna Vinschen) [1970667] - igc: Move igc_xdp_is_enabled() (Corinna Vinschen) [1970667] - igc: use XDP helpers (Corinna Vinschen) [1970667] - igc: Expose LPI counters (Corinna Vinschen) [1970667] - igc: enable auxiliary PHC functions for the i225 (Corinna Vinschen) [1970667] - igc: Enable internal i225 PPS (Corinna Vinschen) [1970667] - igc: Add support for XDP_REDIRECT action (Corinna Vinschen) [1970667] - igc: Add support for XDP_TX action (Corinna Vinschen) [1970667] - igc: Add initial XDP support (Corinna Vinschen) [1970667] - drivers: net: mhi: fix error path in mhi_net_newlink (Íñigo Huguet) [2004141] - cfg80211: correct bridge/4addr mode check (Íñigo Huguet) [2004141] - cfg80211: fix management registrations locking (Íñigo Huguet) [2004141] - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list() (Íñigo Huguet) [2004141] - mac80211: mesh: fix HE operation element length check (Íñigo Huguet) [2004141] - mwifiex: avoid null-pointer-subtraction warning (Íñigo Huguet) [2004141] - Revert "brcmfmac: use ISO3166 country code and 0 rev as fallback" (Íñigo Huguet) [2004141] - iwlwifi: pcie: add configuration of a Wi-Fi adapter on Dell XPS 15 (Íñigo Huguet) [2004141] - mac80211: Fix Ptk0 rekey documentation (Íñigo Huguet) [2004141] - mac80211: check return value of rhashtable_init (Íñigo Huguet) [2004141] - mac80211: fix use-after-free in CCMP/GCMP RX (Íñigo Huguet) [2004141] - mac80211-hwsim: fix late beacon hrtimer handling (Íñigo Huguet) [2004141] - mac80211: mesh: fix potentially unaligned access (Íñigo Huguet) [2004141] - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap (Íñigo Huguet) [2004141] - mac80211: Drop frames from invalid MAC address in ad-hoc mode (Íñigo Huguet) [2004141] - mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug (Íñigo Huguet) [2004141] - Revert "mac80211: do not use low data rates for data frames with no ack flag" (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: missing unlock in iwl_mvm_wowlan_program_keys() (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: Fix off by ones in iwl_mvm_wowlan_get_rsc_v5_data() (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix possible NULL dereference (Íñigo Huguet) [2004141] - iwlwifi: fix printk format warnings in uefi.c (Íñigo Huguet) [2004141] - iwlwifi: pnvm: Fix a memory leak in 'iwl_pnvm_get_from_fs()' (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 66 for AX devices (Íñigo Huguet) [2004141] - iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha (Íñigo Huguet) [2004141] - iwlwifi: mvm: add rtnl_lock() in iwl_mvm_start_get_nvm() (Íñigo Huguet) [2004141] - net: qrtr: revert check in qrtr_endpoint_post() (Íñigo Huguet) [2004141] - net: qrtr: make checks in qrtr_endpoint_post() stricter (Íñigo Huguet) [2004141] - intel: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - mwifiex: pcie: add reset_d3cold quirk for Surface gen4+ devices (Íñigo Huguet) [2004141] - mwifiex: pcie: add DMI-based quirk implementation for Surface devices (Íñigo Huguet) [2004141] - brcmfmac: pcie: fix oops on failure to resume and reprobe (Íñigo Huguet) [2004141] - brcmfmac: Add WPA3 Personal with FT to supported cipher suites (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fix initialization of place in _rtl92c_phy_get_rightchnlplace() (Íñigo Huguet) [2004141] - rtw88: add quirk to disable pci caps on HP Pavilion 14-ce0xxx (Íñigo Huguet) [2004141] - ath9k: fix sleeping in atomic context (Íñigo Huguet) [2004141] - ath9k: fix OOB read ar9300_eeprom_restore_internal (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't use FW key ID in beacon protection (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix scan channel flags settings (Íñigo Huguet) [2004141] - iwlwifi: mvm: support broadcast TWT alone (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_stored_beacon_notif_v3 (Íñigo Huguet) [2004141] - iwlwifi: move get pnvm file name to a separate function (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for responder config command version 9 (Íñigo Huguet) [2004141] - iwlwifi: mvm: add support for range request command version 13 (Íñigo Huguet) [2004141] - iwlwifi: allow debug init in RF-kill (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't schedule the roc_done_wk if it is already running (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support for new DBGI_SRAM region (Íñigo Huguet) [2004141] - iwlwifi: add 'Rx control frame to MBSSID' HE capability (Íñigo Huguet) [2004141] - iwlwifi: fw: fix debug dump data declarations (Íñigo Huguet) [2004141] - iwlwifi: api: remove datamember from struct (Íñigo Huguet) [2004141] - iwlwifi: fix __percpu annotation (Íñigo Huguet) [2004141] - iwlwifi: pcie: avoid dma unmap/remap in crash dump (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in SAR tables with defaults (Íñigo Huguet) [2004141] - iwlwifi: acpi: fill in WGDS table with defaults (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 65 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WGDS revision 2 (Íñigo Huguet) [2004141] - iwlwifi: mvm: load regdomain at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read the PPAG and SAR tables at INIT stage (Íñigo Huguet) [2004141] - iwlwifi: mvm: trigger WRT when no beacon heard (Íñigo Huguet) [2004141] - iwlwifi: fw: correctly limit to monitor dump (Íñigo Huguet) [2004141] - iwlwifi: skip first element in the WTAS ACPI table (Íñigo Huguet) [2004141] - iwlwifi: mvm: support version 11 of wowlan statuses notification (Íñigo Huguet) [2004141] - iwlwifi: convert flat GEO profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: remove unused ACPI_WGDS_TABLE_SIZE definition (Íñigo Huguet) [2004141] - iwlwifi: support reading and storing EWRD revisions 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: acpi: support reading and storing WRDS revision 1 and 2 (Íñigo Huguet) [2004141] - iwlwifi: pass number of chains and sub-bands to iwl_sar_set_profile() (Íñigo Huguet) [2004141] - iwlwifi: remove ACPI_SAR_NUM_TABLES definition (Íñigo Huguet) [2004141] - iwlwifi: convert flat SAR profile table to a struct version (Íñigo Huguet) [2004141] - iwlwifi: rename ACPI_SAR_NUM_CHAIN_LIMITS to ACPI_SAR_NUM_CHAINS (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix access to BSS elements (Íñigo Huguet) [2004141] - iwlwifi: mvm: Refactor setting of SSIDs for 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: mvm: silently drop encrypted frames for unknown station (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: implement RSC command version 5 (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: make key reprogramming iteration optional (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: add separate key iteration for GTK type (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: refactor TSC/RSC configuration (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: remove fixed cmd_flags argument (Íñigo Huguet) [2004141] - iwlwifi: mvm: d3: separate TKIP data from key iteration (Íñigo Huguet) [2004141] - iwlwifi: mvm: simplify __iwl_mvm_set_sta_key() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support new station key API (Íñigo Huguet) [2004141] - iwlwifi: mvm: Fix umac scan request probe parameters (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz reset flow (Íñigo Huguet) [2004141] - iwlwifi: implement Bz NMI behaviour (Íñigo Huguet) [2004141] - iwlwifi: pcie: implement Bz device startup (Íñigo Huguet) [2004141] - iwlwifi: read MAC address from correct place on Bz (Íñigo Huguet) [2004141] - iwlwifi: give Bz devices their own name (Íñigo Huguet) [2004141] - iwlwifi: split off Bz devices into their own family (Íñigo Huguet) [2004141] - iwlwifi: yoyo: cleanup internal buffer allocation in D3 (Íñigo Huguet) [2004141] - iwlwifi: mvm: treat MMPDUs in iwl_mvm_mac_tx() as bcast (Íñigo Huguet) [2004141] - iwlwifi: mvm: clean up number of HW queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid static queue number aliasing (Íñigo Huguet) [2004141] - iwlwifi: use DEFINE_MUTEX() for mutex lock (Íñigo Huguet) [2004141] - iwlwifi: remove trailing semicolon in macro definition (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix old-style static const declaration (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove check for vif in iwl_mvm_vif_from_mac80211() (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove spaces from queue names (Íñigo Huguet) [2004141] - iwlwifi: mvm: restrict FW SMPS request (Íñigo Huguet) [2004141] - iwlwifi: mvm: set replay counter on key install (Íñigo Huguet) [2004141] - iwlwifi: mvm: remove trigger EAPOL time event (Íñigo Huguet) [2004141] - iwlwifi: iwl-dbg-tlv: add info about loading external dbg bin (Íñigo Huguet) [2004141] - iwlwifi: mvm: Add support for hidden network scan on 6GHz band (Íñigo Huguet) [2004141] - iwlwifi: mvm: Do not use full SSIDs in 6GHz scan (Íñigo Huguet) [2004141] - iwlwifi: print PNVM complete notification status in hexadecimal (Íñigo Huguet) [2004141] - iwlwifi: pcie: dump error on FW reset handshake failures (Íñigo Huguet) [2004141] - iwlwifi: prepare for synchronous error dumps (Íñigo Huguet) [2004141] - iwlwifi: pcie: free RBs during configure (Íñigo Huguet) [2004141] - iwlwifi: pcie: optimise struct iwl_rx_mem_buffer layout (Íñigo Huguet) [2004141] - iwlwifi: mvm: avoid FW restart while shutting down (Íñigo Huguet) [2004141] - iwlwifi: nvm: enable IEEE80211_HE_PHY_CAP10_HE_MU_M1RU_MAX_LTF (Íñigo Huguet) [2004141] - iwlwifi: mvm: set BROADCAST_TWT_SUPPORTED in MAC policy (Íñigo Huguet) [2004141] - iwlwifi: iwl-nvm-parse: set STBC flags for HE phy capabilities (Íñigo Huguet) [2004141] - cfg80211: use wiphy DFS domain if it is self-managed (Íñigo Huguet) [2004141] - mac80211: parse transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition for transmit power envelope element (Íñigo Huguet) [2004141] - ieee80211: add definition of regulatory info in 6 GHz operation information (Íñigo Huguet) [2004141] - mac80211: introduce individual TWT support in AP mode (Íñigo Huguet) [2004141] - ieee80211: add TWT element definitions (Íñigo Huguet) [2004141] - brcmsmac: make array addr static const, makes object smaller (Íñigo Huguet) [2004141] - rtw88: Remove unnecessary check code (Íñigo Huguet) [2004141] - rtw88: wow: fix size access error of probe request (Íñigo Huguet) [2004141] - rtw88: wow: report wow reason through mac80211 api (Íñigo Huguet) [2004141] - rtw88: wow: build wow function only if CONFIG_PM is on (Íñigo Huguet) [2004141] - rtw88: refine the setting of rsvd pages for different firmware (Íñigo Huguet) [2004141] - rtw88: use read_poll_timeout instead of fixed sleep (Íñigo Huguet) [2004141] - rtw88: 8822ce: set CLKREQ# signal to low during suspend (Íñigo Huguet) [2004141] - rtw88: change beacon filter default mode (Íñigo Huguet) [2004141] - rtw88: 8822c: add tx stbc support under HT mode (Íñigo Huguet) [2004141] - rtw88: adjust the log level for failure of tx report (Íñigo Huguet) [2004141] - rtl8xxxu: Fix the handling of TX A-MPDU aggregation (Íñigo Huguet) [2004141] - rtl8xxxu: disable interrupt_in transfer for 8188cu and 8192cu (Íñigo Huguet) [2004141] - mwifiex: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - mwifiex: usb: Replace one-element array with flexible-array member (Íñigo Huguet) [2004141] - mwifiex: drop redundant null-pointer check in mwifiex_dnld_cmd_to_fw() (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: make arrays static const, makes object smaller (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Remove redundant variable initializations (Íñigo Huguet) [2004141] - ray_cs: Split memcpy() to avoid bounds check warning (Íñigo Huguet) [2004141] - ray_cs: use *ph to print small buffer (Íñigo Huguet) [2004141] - brcmfmac: add 43752 SDIO ids and initialization (Íñigo Huguet) [2004141] - brcmfmac: Set SDIO workqueue as WQ_HIGHPRI (Íñigo Huguet) [2004141] - brcmfmac: use separate firmware for 43430 revision 2 (Íñigo Huguet) [2004141] - brcmfmac: support chipsets with different core enumeration space (Íñigo Huguet) [2004141] - brcmfmac: add xtlv support to firmware interface layer (Íñigo Huguet) [2004141] - brcmfmac: increase core revision column aligning core list (Íñigo Huguet) [2004141] - brcmfmac: use different error value for invalid ram base address (Íñigo Huguet) [2004141] - brcmfmac: firmware: Fix firmware loading (Íñigo Huguet) [2004141] - net: qrtr: fix another OOB Read in qrtr_endpoint_post (Íñigo Huguet) [2004141] - cfg80211: fix BSS color notify trace enum confusion (Íñigo Huguet) [2004141] - mac80211: fix locking in ieee80211_restart_work() (Íñigo Huguet) [2004141] - mac80211: Fix insufficient headroom issue for AMSDU (Íñigo Huguet) [2004141] - mac80211: add support for BSS color change (Íñigo Huguet) [2004141] - nl80211: add support for BSS coloring (Íñigo Huguet) [2004141] - mac80211: Use flex-array for radiotap header bitmap (Íñigo Huguet) [2004141] - mac80211: radiotap: Use BIT() instead of shifts (Íñigo Huguet) [2004141] - mac80211: Remove unnecessary variable and label (Íñigo Huguet) [2004141] - mac80211: include (Íñigo Huguet) [2004141] - mac80211: Fix monitor MTU limit so that A-MSDUs get through (Íñigo Huguet) [2004141] - mac80211: remove unnecessary NULL check in ieee80211_register_hw() (Íñigo Huguet) [2004141] - mac80211: Reject zero MAC address in sta_info_insert_check() (Íñigo Huguet) [2004141] - mt76: fix enum type mismatch (Íñigo Huguet) [2004141] - bus: mhi: core: Improve debug messages for power up (Íñigo Huguet) [2004141] - bus: mhi: core: Replace DMA allocation wrappers with original APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Add range checks for BHI and BHIe (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Set register access length for MHI driver (Íñigo Huguet) [2004141] - ath11k: set register access length for MHI driver (Íñigo Huguet) [2004141] - bus: mhi: Add MMIO region length to controller structure (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI and BHIe pointers to NULL in clean-up (Íñigo Huguet) [2004141] - bus: mhi: core: Set BHI/BHIe offsets on power up preparation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add Cinterion MV31-W PCIe to MHI (Íñigo Huguet) [2004141] - Revert "mhi: Fix networking tree build." (Íñigo Huguet) [2004141] - mhi: Fix networking tree build. (Íñigo Huguet) [2004141] - brcmfmac: firmware: Allow per-board firmware binaries (Íñigo Huguet) [2004141] - iwlwifi: add new so-jf devices (Íñigo Huguet) [2004141] - iwlwifi: add new SoF with JF devices (Íñigo Huguet) [2004141] - iwlwifi: pnvm: accept multiple HW-type TLVs (Íñigo Huguet) [2004141] - cfg80211: Fix possible memory leak in function cfg80211_bss_update (Íñigo Huguet) [2004141] - nl80211: limit band information in non-split data (Íñigo Huguet) [2004141] - mac80211: fix enabling 4-address mode on a sta vif after assoc (Íñigo Huguet) [2004141] - mac80211: fix starting aggregation sessions on mesh interfaces (Íñigo Huguet) [2004141] - mac80211: Do not strip skb headroom on monitor frames (Íñigo Huguet) [2004141] - net: mhi: Remove MBIM protocol (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix inbound IPCR channel (Íñigo Huguet) [2004141] - bus: mhi: core: Validate channel ID when processing command completions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Apply no-op for wake using sideband wake boolean (Íñigo Huguet) [2004141] - net: mhi: Improve MBIM packet counting (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: configurable network interface MRU (Íñigo Huguet) [2004141] - mt76: mt7921: Fix fall-through warning for Clang (Íñigo Huguet) [2004141] - mt76: mt7921: continue to probe driver when fw already downloaded (Íñigo Huguet) [2004141] - ath11k: Remove some duplicate code (Íñigo Huguet) [2004141] - ath: switch from 'pci_' to 'dma_' API (Íñigo Huguet) [2004141] - iwlwifi: acpi: remove unused function iwl_acpi_eval_dsm_func() (Íñigo Huguet) [2004141] - rtw88: fix c2h memory leak (Íñigo Huguet) [2004141] - brcmfmac: support parse country code map from DT (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Add missing 'pci_disable_pcie_error_reporting()' calls (Íñigo Huguet) [2004141] - bus: mhi: Wait for M2 state during system resume (Íñigo Huguet) [2004141] - bus: mhi: core: Fix power down latency (Íñigo Huguet) [2004141] - brcmfmac: Silence error messages about unsupported firmware features (Íñigo Huguet) [2004141] - cfg80211: Add wiphy_info_once() (Íñigo Huguet) [2004141] - mac80211: Switch to a virtual time-based airtime scheduler (Íñigo Huguet) [2004141] - Revert "mac80211: HE STA disassoc due to QOS NULL not sent" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround NDPs of null_response (Íñigo Huguet) [2004141] - mac80211: fix NULL ptr dereference during mesh peer connection for non HE devices (Íñigo Huguet) [2004141] - mac80211: Enable power save after receiving NULL packet ACK (Íñigo Huguet) [2004141] - mac80211: add HE 6 GHz capability only if supported (Íñigo Huguet) [2004141] - mac80211: notify driver on mgd TX completion (Íñigo Huguet) [2004141] - mac80211: always include HE 6GHz capability in probe request (Íñigo Huguet) [2004141] - mac80211: add vendor-specific capabilities to assoc request (Íñigo Huguet) [2004141] - cfg80211: allow advertising vendor-specific capabilities (Íñigo Huguet) [2004141] - cfg80211: set custom regdomain after wiphy registration (Íñigo Huguet) [2004141] - cfg80211: Support hidden AP discovery over 6GHz band (Íñigo Huguet) [2004141] - mac80211: conditionally advertise HE in probe requests (Íñigo Huguet) [2004141] - cfg80211: add cfg80211_any_usable_channels() (Íñigo Huguet) [2004141] - cfg80211: reg: improve bad regulatory warning (Íñigo Huguet) [2004141] - nl80211: Fix typo pmsr->pmsr (Íñigo Huguet) [2004141] - mac80211: fix some spelling mistakes (Íñigo Huguet) [2004141] - cfg80211: remove ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - mac80211: remove use of ieee80211_get_he_sta_cap() (Íñigo Huguet) [2004141] - cfg80211: trace more information in assoc trace event (Íñigo Huguet) [2004141] - mac80211: improve AP disconnect message (Íñigo Huguet) [2004141] - mac80211: rearrange struct txq_info for fewer holes (Íñigo Huguet) [2004141] - ieee80211: add defines for HE PHY cap byte 10 (Íñigo Huguet) [2004141] - mac80211: Properly WARN on HW scan before restart (Íñigo Huguet) [2004141] - nl80211/cfg80211: add BSS color to NDP ranging parameters (Íñigo Huguet) [2004141] - mac80211: add to bss_conf if broadcast TWT is supported (Íñigo Huguet) [2004141] - mac80211: move SMPS mode setting after ieee80211_prep_connection (Íñigo Huguet) [2004141] - mac80211: free skb in WEP error case (Íñigo Huguet) [2004141] - mac80211: handle rate control (RC) racing with chanctx definition (Íñigo Huguet) [2004141] - ieee80211: define timing measurement in extended capabilities IE (Íñigo Huguet) [2004141] - mac80211_hwsim: record stats in non-netlink path (Íñigo Huguet) [2004141] - ieee80211: add the value for Category '6' in "rtw_ieee80211_category" (Íñigo Huguet) [2004141] - mac80211: remove iwlwifi specific workaround that broke sta NDP tx (Íñigo Huguet) [2004141] - mac80211: allow SMPS requests only in client mode (Íñigo Huguet) [2004141] - mac80211: check per vif offload_flags in Tx path (Íñigo Huguet) [2004141] - mac80211: add rate control support for encap offload (Íñigo Huguet) [2004141] - mac80211: call ieee80211_tx_h_rate_ctrl() when dequeue (Íñigo Huguet) [2004141] - mac80211: move A-MPDU session check from minstrel_ht to mac80211 (Íñigo Huguet) [2004141] - cfg80211: expose the rfkill device to the low level driver (Íñigo Huguet) [2004141] - wireless: add check of field VHT Extended NSS BW Capable for 160/80+80 MHz setting (Íñigo Huguet) [2004141] - mac80211_hwsim: add concurrent channels scanning support over virtio (Íñigo Huguet) [2004141] - mac80211: don't open-code LED manipulations (Íñigo Huguet) [2004141] - mac80211: consider per-CPU statistics if present (Íñigo Huguet) [2004141] - cfg80211: fix default HE tx bitrate mask in 2G band (Íñigo Huguet) [2004141] - mac80211: remove the repeated declaration (Íñigo Huguet) [2004141] - mac80211: refactor rc_no_data_or_no_ack_use_min function (Íñigo Huguet) [2004141] - mac80211: do not use low data rates for data frames with no ack flag (Íñigo Huguet) [2004141] - mac80211: add ieee80211_is_tx_data helper function (Íñigo Huguet) [2004141] - mac80211: simplify ieee80211_add_station() (Íñigo Huguet) [2004141] - mac80211: use sdata->skb_queue for TDLS (Íñigo Huguet) [2004141] - mac80211: refactor SKB queue processing a bit (Íñigo Huguet) [2004141] - mac80211: unify queueing SKB to iface (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: ignore frame that was sent with noAck flag (Íñigo Huguet) [2004141] - cfg80211: clean up variable use in cfg80211_parse_colocated_ap() (Íñigo Huguet) [2004141] - cfg80211: remove CFG80211_MAX_NUM_DIFFERENT_CHANNELS (Íñigo Huguet) [2004141] - mac80211: Remove redundant assignment to ret (Íñigo Huguet) [2004141] - net: wireless: wext_compat.c: Remove redundant assignment to ps (Íñigo Huguet) [2004141] - wireless: wext-spy: Fix out-of-bounds warning (Íñigo Huguet) [2004141] - ath11k: Avoid memcpy() over-reading of he_cap (Íñigo Huguet) [2004141] - mt7601u: add USB device ID for some versions of XiaoDu WiFi Dongle. (Íñigo Huguet) [2004141] - mwifiex: Avoid memset() over-write of WEP key_material (Íñigo Huguet) [2004141] - rtlwifi: rtl8192de: Fully initialize curvecount_val (Íñigo Huguet) [2004141] - rtw88: coex: remove unnecessary variable and label (Íñigo Huguet) [2004141] - rtw88: add quirks to disable pci capabilities (Íñigo Huguet) [2004141] - rtw88: refine unwanted h2c command (Íñigo Huguet) [2004141] - rtw88: dump FW crash via devcoredump (Íñigo Huguet) [2004141] - rtw88: notify fw when driver in scan-period to avoid potential problem (Íñigo Huguet) [2004141] - rtw88: add rtw_fw_feature_check api (Íñigo Huguet) [2004141] - rtw88: 8822c: update RF parameter tables to v62 (Íñigo Huguet) [2004141] - rtw88: Remove duplicate include of coex.h (Íñigo Huguet) [2004141] - rtw88: 8822c: fix lc calibration timing (Íñigo Huguet) [2004141] - rtw88: add path diversity (Íñigo Huguet) [2004141] - rtw88: add beacon filter support (Íñigo Huguet) [2004141] - iwlwifi: bump FW API to 64 for AX devices (Íñigo Huguet) [2004141] - iwlwifi: fw: dump TCM error table if present (Íñigo Huguet) [2004141] - iwlwifi: add 9560 killer device (Íñigo Huguet) [2004141] - iwlwifi: move error dump to fw utils (Íñigo Huguet) [2004141] - iwlwifi: support loading the reduced power table from UEFI (Íñigo Huguet) [2004141] - iwlwifi: move UEFI code to a separate file (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_get_status_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_wowlan_kek_kck_material_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: mvm: update iwl_wowlan_patterns_cmd (Íñigo Huguet) [2004141] - iwlwifi: mvm: introduce iwl_proto_offload_cmd_v4 (Íñigo Huguet) [2004141] - iwlwifi: fix NUM_IWL_UCODE_TLV_* definitions to avoid sparse errors (Íñigo Huguet) [2004141] - iwlwifi: pcie: free some DMA memory earlier (Íñigo Huguet) [2004141] - iwlwifi: mvm: fill phy_data.d1 for no-data RX (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix context info freeing (Íñigo Huguet) [2004141] - iwlwifi: pcie: free IML DMA memory allocation (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LONG_GROUP for WOWLAN_GET_STATUSES version (Íñigo Huguet) [2004141] - iwlwifi: support ver 6 of WOWLAN_CONFIGURATION and ver 10 of WOWLAN_GET_STATUSES (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request mac80211 to disable/enable sta's queues (Íñigo Huguet) [2004141] - iwlwifi: mvm: Explicitly stop session protection before unbinding (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove TR/CR tail allocations (Íñigo Huguet) [2004141] - iwlwifi: mvm: Read acpi dsm to get unii4 enable/disable bitmap. (Íñigo Huguet) [2004141] - iwlwifi: pcie: fix some kernel-doc comments (Íñigo Huguet) [2004141] - iwlwifi: advertise broadcast TWT support (Íñigo Huguet) [2004141] - iwlwifi: mvm: support LMR feedback (Íñigo Huguet) [2004141] - iwlwifi: correct HE capabilities (Íñigo Huguet) [2004141] - iwlwifi: mvm: Call NMI instead of REPLY_ERROR (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix error print when session protection ends (Íñigo Huguet) [2004141] - iwlwifi: mvm: honour firmware SMPS requests (Íñigo Huguet) [2004141] - iwlwifi: mvm: apply RX diversity per PHY context (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't request SMPS in AP mode (Íñigo Huguet) [2004141] - iwlwifi: pcie: identify the RF module (Íñigo Huguet) [2004141] - iwlwifi: yoyo: support region TLV version 2 (Íñigo Huguet) [2004141] - iwlwifi: remove duplicate iwl_ax201_cfg_qu_hr declaration (Íñigo Huguet) [2004141] - iwlwifi: pcie: remove CSR_HW_RF_ID_TYPE_CHIP_ID (Íñigo Huguet) [2004141] - iwlwifi: pcie: print interrupt number, not index (Íñigo Huguet) [2004141] - iwlwifi: pcie: Add support for AX231 radio module with Ma devices (Íñigo Huguet) [2004141] - iwlwifi: increase PNVM load timeout (Íñigo Huguet) [2004141] - iwlwifi: pcie: handle pcim_iomap_table() failures better (Íñigo Huguet) [2004141] - iwlwifi: mvm: don't change band on bound PHY contexts (Íñigo Huguet) [2004141] - iwlwifi: remove unused REMOTE_WAKE_CONFIG_CMD definitions (Íñigo Huguet) [2004141] - iwlwifi: mvm: fix indentation in some scan functions (Íñigo Huguet) [2004141] - iwlwifi: mvm: pass the clock type to iwl_mvm_get_sync_time() (Íñigo Huguet) [2004141] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Russia (Íñigo Huguet) [2004141] - ath11k: Enable QCN9074 device (Íñigo Huguet) [2004141] - ath10k: demote chan info without scan request warning (Íñigo Huguet) [2004141] - rtl8xxxu: avoid parsing short RX packet (Íñigo Huguet) [2004141] - rtl8xxxu: Fix device info for RTL8192EU devices (Íñigo Huguet) [2004141] - mt76: mt7921: allow chip reset during device restart (Íñigo Huguet) [2004141] - mt76: mt7615: set macwork timeout according to runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: enable runtime-pm (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Íñigo Huguet) [2004141] - mt76: mt7663s: rely on pm reference counting (Íñigo Huguet) [2004141] - mt76: sdio: do not run mt76_txq_schedule directly (Íñigo Huguet) [2004141] - mt76: mt7921: enable HE BFee capability (Íñigo Huguet) [2004141] - mt76: disable TWT capabilities for the moment (Íñigo Huguet) [2004141] - mt76: fix iv and CCMP header insertion (Íñigo Huguet) [2004141] - mt76: mt7921: fix the coredump is being truncated (Íñigo Huguet) [2004141] - mt76: mt7921: fix kernel warning when reset on vif is not sta (Íñigo Huguet) [2004141] - mt76: mt7921: introduce dedicated control for deep_sleep (Íñigo Huguet) [2004141] - mt76: mt7921: limit txpower according to userlevel power (Íñigo Huguet) [2004141] - mt76: mt7921: improve code readability for mt7921_update_txs (Íñigo Huguet) [2004141] - mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode (Íñigo Huguet) [2004141] - mt76: use SPDX header file comment style (Íñigo Huguet) [2004141] - mt76: add a space between comment char and SPDX tag (Íñigo Huguet) [2004141] - mt76: mt7915: improve MU stability (Íñigo Huguet) [2004141] - mt76: mt7921: add deep sleep control to runtime-pm knob (Íñigo Huguet) [2004141] - mt76: mt7921: enable deep sleep at runtime (Íñigo Huguet) [2004141] - mt76: mt7915: introduce mt7915_mcu_set_txbf() (Íñigo Huguet) [2004141] - mt76: make mt76_update_survey() per phy (Íñigo Huguet) [2004141] - mt76: move mt76_get_next_pkt_id in mt76.h (Íñigo Huguet) [2004141] - mt76: reduce rx buffer size to 2048 (Íñigo Huguet) [2004141] - mt76: connac: fix the maximum interval schedule scan can support (Íñigo Huguet) [2004141] - mt76: mt7915: fix rx fcs error count in testmode (Íñigo Huguet) [2004141] - mt76: testmode: move chip-specific stats dump before common stats (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine (Íñigo Huguet) [2004141] - mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower (Íñigo Huguet) [2004141] - mt76: mt7915: drop the use of repeater entries for station interfaces (Íñigo Huguet) [2004141] - mt76: mt7921: enable VHT BFee capability (Íñigo Huguet) [2004141] - mt76: mt7921: make mt7921_set_channel static (Íñigo Huguet) [2004141] - mt76: mt7921: wake the device before dumping power table (Íñigo Huguet) [2004141] - mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref (Íñigo Huguet) [2004141] - mt76: connac: fix UC entry is being overwritten (Íñigo Huguet) [2004141] - mt76: mt7615: update radar parameters (Íñigo Huguet) [2004141] - mt76: mt7915: setup drr group for peers (Íñigo Huguet) [2004141] - mt76: mt7921: enable random mac address during sched_scan (Íñigo Huguet) [2004141] - mt76: mt7921: remove mt7921_get_wtbl_info routine (Íñigo Huguet) [2004141] - mt76: mt7915: fix MT_EE_CAL_GROUP_SIZE (Íñigo Huguet) [2004141] - mt76: mt7915: improve error recovery reliability (Íñigo Huguet) [2004141] - mt76: mt7921: enable hw offloading for wep keys (Íñigo Huguet) [2004141] - mt76: mt7915: read all eeprom fields from fw in efuse mode (Íñigo Huguet) [2004141] - mt76: mt7921: set MT76_RESET during mac reset (Íñigo Huguet) [2004141] - mt76: mt7921: introduce mac tx done handling (Íñigo Huguet) [2004141] - mt76: allow hw driver code to overwrite wiphy interface_modes (Íñigo Huguet) [2004141] - mt76: mt7921: update statistic in active mode only (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_mib_info() to get survey data (Íñigo Huguet) [2004141] - mt76: mt7615: fix potential overflow on large shift (Íñigo Huguet) [2004141] - mt76: testmode: remove undefined behaviour in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: testmode: remove unnecessary function calls in mt76_testmode_free_skb (Íñigo Huguet) [2004141] - mt76: testmode: fix memory leak in mt76_testmode_alloc_skb (Íñigo Huguet) [2004141] - mt76: mt7615: remove useless if condition in mt7615_add_interface() (Íñigo Huguet) [2004141] - mt76: mt7915: use mt7915_mcu_get_txpower_sku() to get per-rate txpower (Íñigo Huguet) [2004141] - mt76: mt7615: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7915: add .offset_tsf callback (Íñigo Huguet) [2004141] - mt76: mt7921: reset wfsys during hw probe (Íñigo Huguet) [2004141] - mt76: mt7921: do not schedule hw reset if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: return proper error value in mt7921_mac_init (Íñigo Huguet) [2004141] - mt76: mt7921: enable runtime pm by default (Íñigo Huguet) [2004141] - mt76: mt7921: fix OMAC idx usage (Íñigo Huguet) [2004141] - mt76: mt7921: fix invalid register access in wake_work (Íñigo Huguet) [2004141] - mt76: mt7921: avoid unnecessary consecutive WiFi resets (Íñigo Huguet) [2004141] - mt76: connac: update BA win size in Rx direction (Íñigo Huguet) [2004141] - mt76: connac: add bss color support for sta mode (Íñigo Huguet) [2004141] - mt76: mt7615: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal cooling device support (Íñigo Huguet) [2004141] - mt76: mt7915: add thermal sensor device support (Íñigo Huguet) [2004141] - mt76: mt7921: fix reset under the deep sleep is enabled (Íñigo Huguet) [2004141] - mt76: mt7921: add back connection monitor support (Íñigo Huguet) [2004141] - mt76: mt7921: consider the invalid value for to_rssi (Íñigo Huguet) [2004141] - mt76: connac: fix WoW with disconnetion and bitmap pattern (Íñigo Huguet) [2004141] - mt76: connac: fw_own rely on all packet memory all being free (Íñigo Huguet) [2004141] - mt76: mt7921: Don't alter Rx path classifier (Íñigo Huguet) [2004141] - mt76: mt7921: fix mt7921_wfsys_reset sequence (Íñigo Huguet) [2004141] - mt76: mt7663: enable hw rx header translation (Íñigo Huguet) [2004141] - mt76: mt7615: free irq if mt7615_mmio_probe fails (Íñigo Huguet) [2004141] - mt76: mt76x0: use dev_debug instead of dev_err for hw_rf_ctrl (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx csum offload (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx header traslation offload (Íñigo Huguet) [2004141] - mt76: connac: add missing configuration in mt76_connac_mcu_wtbl_hdr_trans_tlv (Íñigo Huguet) [2004141] - mt76: mt7921: enable rx hw de-amsdu (Íñigo Huguet) [2004141] - mt76: mt7915: fix a signedness bug in mt7915_mcu_apply_tx_dpd() (Íñigo Huguet) [2004141] - mt76: mt7615: fix NULL pointer dereference in tx_prepare_skb() (Íñigo Huguet) [2004141] - mt76: fix possible NULL pointer dereference in mt76_tx (Íñigo Huguet) [2004141] - mt76: mt7915: add .set_bitrate_mask() callback (Íñigo Huguet) [2004141] - mt76: mt7915: cleanup mt7915_mcu_sta_rate_ctrl_tlv() (Íñigo Huguet) [2004141] - mt76: mt7915: fix tssi indication field of DBDC NICs (Íñigo Huguet) [2004141] - mt76: move mt76_rates in mt76 module (Íñigo Huguet) [2004141] - mac80211: reset profile_periodicity/ema_ap (Íñigo Huguet) [2004141] - mac80211: handle various extensible elements correctly (Íñigo Huguet) [2004141] - cfg80211: avoid double free of PMSR request (Íñigo Huguet) [2004141] - cfg80211: make certificate generation more robust (Íñigo Huguet) [2004141] - mac80211: minstrel_ht: fix sample time check (Íñigo Huguet) [2004141] - mt76: mt7915: add support for tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: rework tx rate reporting (Íñigo Huguet) [2004141] - mt76: dma: use ieee80211_tx_status_ext to free packets when tx fails (Íñigo Huguet) [2004141] - mt76: improve tx status codepath (Íñigo Huguet) [2004141] - mt76: intialize tx queue entry wcid to 0xffff by default (Íñigo Huguet) [2004141] - mt76: mt7603: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: avoid use of ieee80211_tx_info_clear_status (Íñigo Huguet) [2004141] - mt76: mt7615: fix fixed-rate tx status reporting (Íñigo Huguet) [2004141] - mt76: mt7915: move mt7915_queue_rx_skb to mac.c (Íñigo Huguet) [2004141] - mt76: mt7915: disable ASPM (Íñigo Huguet) [2004141] - mt76: mt7915: add MSI support (Íñigo Huguet) [2004141] - ath11k: send beacon template after vdev_start/restart during csa (Íñigo Huguet) [2004141] - ath10k: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - ath10k: remove the repeated declaration (Íñigo Huguet) [2004141] - ath10k: Fix an error code in ath10k_add_interface() (Íñigo Huguet) [2004141] - ath11k: Fix an error handling path in ath11k_core_fetch_board_data_api_n() (Íñigo Huguet) [2004141] - ath: Fix wrong function name in comments (Íñigo Huguet) [2004141] - rtlwifi: Fix spelling of 'download' (Íñigo Huguet) [2004141] - rtlwifi: Remove redundant assignments to ul_enc_algo (Íñigo Huguet) [2004141] - rtlwifi: rtl8723ae: remove redundant initialization of variable rtstatus (Íñigo Huguet) [2004141] - rtlwifi: btcoex: 21a 2ant: Delete several duplicate condition branch codes (Íñigo Huguet) [2004141] - rtlwifi: 8821a: btcoexist: add comments to explain why if-else branches are identical (Íñigo Huguet) [2004141] - rt2x00: do not set timestamp for injected frames (Íñigo Huguet) [2004141] - rndis_wlan: simplify is_associated() (Íñigo Huguet) [2004141] - rt2x00: remove leading spaces before tabs (Íñigo Huguet) [2004141] - rtlwifi: Fix wrong function name in comments (Íñigo Huguet) [2004141] - brcmsmac: Remove the repeated declaration (Íñigo Huguet) [2004141] - brcmsmac: mac80211_if: Fix a resource leak in an error handling path (Íñigo Huguet) [2004141] - brcmsmac: Drop unnecessary NULL check after container_of (Íñigo Huguet) [2004141] - brcmsmac: improve readability on addresses copy (Íñigo Huguet) [2004141] - brcmfmac: Add clm_blob firmware files to modinfo (Íñigo Huguet) [2004141] - brcmfmac: Delete second brcm folder hierarchy (Íñigo Huguet) [2004141] - brcmfmac: Fix a double-free in brcmf_sdio_bus_reset (Íñigo Huguet) [2004141] - brcmfmac: Demote non-compliant kernel-doc headers (Íñigo Huguet) [2004141] - brcmfmac: correctly report average RSSI in station info (Íñigo Huguet) [2004141] - brcmfmac: fix setting of station info chains bitmask (Íñigo Huguet) [2004141] - brcmfmac: use ISO3166 country code and 0 rev as fallback (Íñigo Huguet) [2004141] - ath10k: remove unused more_frags variable (Íñigo Huguet) [2004141] - ath10k: add missing error return code in ath10k_pci_probe() (Íñigo Huguet) [2004141] - ath10k: go to path err_unsupported when chip id is not supported (Íñigo Huguet) [2004141] - ath11k: don't call ath11k_pci_set_l1ss for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add support to get peer id for WCN6855 (Íñigo Huguet) [2004141] - ath11k: setup WBM_IDLE_LINK ring once again (Íñigo Huguet) [2004141] - ath11k: setup REO for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add dp support for WCN6855 (Íñigo Huguet) [2004141] - ath11k: add hw reg support for WCN6855 (Íñigo Huguet) [2004141] - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal() (Íñigo Huguet) [2004141] - mwifiex: bring down link before deleting interface (Íñigo Huguet) [2004141] - mt76: mt7615: Use devm_platform_get_and_ioremap_resource() (Íñigo Huguet) [2004141] - wwan: core: add WWAN common private data for netdev (Íñigo Huguet) [2004141] - wwan: core: support default netdev creation (Íñigo Huguet) [2004141] - wwan: core: no more hold netdev ops owning module (Íñigo Huguet) [2004141] - net: mhi_net: Update the transmit handler prototype (Íñigo Huguet) [2004141] - bus: mhi: pci-generic: Fix hibernation (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Fix possible use-after-free in mhi_pci_remove() (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: T99W175: update channel name from AT to DUN (Íñigo Huguet) [2004141] - mac80211: drop multicast fragments (Íñigo Huguet) [2004141] - mac80211: move interface shutdown out of wiphy lock (Íñigo Huguet) [2004141] - cfg80211: shut down interfaces on failed resume (Íñigo Huguet) [2004141] - cfg80211: fix phy80211 symlink creation (Íñigo Huguet) [2004141] - mac80211: fix 'reset' debugfs locking (Íñigo Huguet) [2004141] - mac80211: fix deadlock in AP/VLAN handling (Íñigo Huguet) [2004141] - mac80211: Fix NULL ptr deref for injected rate info (Íñigo Huguet) [2004141] - mac80211: fix skb length check in ieee80211_scan_rx() (Íñigo Huguet) [2004141] - mac80211: correct ieee80211_iterate_active_interfaces_mtx() locking comments (Íñigo Huguet) [2004141] - cfg80211: call cfg80211_leave_ocb when switching away from OCB (Íñigo Huguet) [2004141] - mac80211_hwsim: drop pending frames on stop (Íñigo Huguet) [2004141] - mac80211: remove warning in ieee80211_get_sband() (Íñigo Huguet) [2004141] - mt76: mt7921: remove leftover 80+80 HE capability (Íñigo Huguet) [2004141] - mt76: mt7615: do not set MT76_STATE_PM at bootstrap (Íñigo Huguet) [2004141] - ath9k: ar9003_mac: read STBC indicator from rx descriptor (Íñigo Huguet) [2004141] - ath10k/ath11k: fix spelling mistake "requed" -> "requeued" (Íñigo Huguet) [2004141] - mwifiex: re-fix for unaligned accesses (Íñigo Huguet) [2004141] - mt76: mt76x0e: fix device hang during suspend/resume (Íñigo Huguet) [2004141] - mt76: mt7921: fix max aggregation subframes setting (Íñigo Huguet) [2004141] - mt76: connac: fix HT A-MPDU setting field in STA_REC_PHY (Íñigo Huguet) [2004141] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [2004141] - mt76: mt7921: fix possible AOOB issue in mt7921_mcu_tx_rate_report (Íñigo Huguet) [2004141] - brcmfmac: properly check for bus register errors (Íñigo Huguet) [2004141] - Revert "brcmfmac: add a check for the status of usb_register" (Íñigo Huguet) [2004141] - net: rtlwifi: properly check for alloc_workqueue() failure (Íñigo Huguet) [2004141] - Revert "rtlwifi: fix a potential NULL pointer dereference" (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join (Íñigo Huguet) [2004141] - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt (Íñigo Huguet) [2004141] - iwlwifi: mvm: tt: Replace thermal_notify_framework (Íñigo Huguet) [2004141] - mt76: debugfs: introduce napi_threaded node (Íñigo Huguet) [2004141] - wl3501: fix typo of 'Networks' in comment (Íñigo Huguet) [2004141] - mt76: use threaded NAPI (Íñigo Huguet) [2004141] - net: mhi_net: make mhi_wwan_ops static (Íñigo Huguet) [2004141] - net: mhi_net: Register wwan_ops for link creation (Íñigo Huguet) [2004141] - net: mhi: remove pointless conditional before kfree_skb() (Íñigo Huguet) [2004141] - net: mhi: Allow decoupled MTU/MRU (Íñigo Huguet) [2004141] - net: mhi: Add support for non-linear MBIM skb processing (Íñigo Huguet) [2004141] - bus: mhi: fix typo in comments for struct mhi_channel_config (Íñigo Huguet) [2004141] - bus: mhi: core: Fix shadow declarations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Constify mhi_controller_config struct definitions (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce Foxconn T99W175 support (Íñigo Huguet) [2004141] - bus: mhi: core: Sanity check values from remote device before use (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add FIREHOSE channels (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Implement PCI shutdown callback (Íñigo Huguet) [2004141] - bus: mhi: Improve documentation on channel transfer setup APIs (Íñigo Huguet) [2004141] - bus: mhi: core: Remove __ prefix for MHI channel unprepare function (Íñigo Huguet) [2004141] - bus: mhi: core: Check channel execution environment before issuing reset (Íñigo Huguet) [2004141] - bus: mhi: core: Clear configuration from channel context during reset (Íñigo Huguet) [2004141] - bus: mhi: core: Hold device wake for channel update commands (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug messages to use client device (Íñigo Huguet) [2004141] - bus: mhi: core: Improvements to the channel handling state machine (Íñigo Huguet) [2004141] - bus: mhi: core: Clear context for stopped channels from remove() (Íñigo Huguet) [2004141] - bus: mhi: core: Allow sending the STOP channel command (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX65 based modem support (Íñigo Huguet) [2004141] - bus: mhi: core: Remove pre_init flag used for power purposes (Íñigo Huguet) [2004141] - bus: mhi: pm: reduce PM state change verbosity (Íñigo Huguet) [2004141] - bus: mhi: core: Fix MHI runtime_pm behavior (Íñigo Huguet) [2004141] - bus: mhi: core: Move to polling method to wait for MHI ready (Íñigo Huguet) [2004141] - bus: mhi: core: Introduce internal register poll helper function (Íñigo Huguet) [2004141] - bus: mhi: core: Improve state strings for debug messages (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for MHI READY state in most scenarios (Íñigo Huguet) [2004141] - bus: mhi: core: Identify Flash Programmer as a mission mode use case (Íñigo Huguet) [2004141] - bus: mhi: core: Add support for Flash Programmer execution environment (Íñigo Huguet) [2004141] - bus: mhi: core: Handle EDL mode entry appropriately (Íñigo Huguet) [2004141] - bus: mhi: core: Wait for ready after an EDL firmware download (Íñigo Huguet) [2004141] - bus: mhi: core: Rely on accurate method to determine EDL mode (Íñigo Huguet) [2004141] - bus: mhi: core: Check state before processing power_down (Íñigo Huguet) [2004141] - bus: mhi: core: Return EAGAIN if MHI ring is full (Íñigo Huguet) [2004141] - net: export dev_set_threaded symbol (Íñigo Huguet) [2004141] - bus: mhi: core: remove redundant initialization of variables state and ee (Íñigo Huguet) [2004141] - bus: mhi: Make firmware image optional for controller (Íñigo Huguet) [2004141] - bus: mhi: core: Add missing checks for MMIO register entries (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add support for runtime PM (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Use generic PCI power management (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: No-Op for device_wake operations (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Add SDX24 based modem support (Íñigo Huguet) [2004141] - bus: mhi: Early MHI resume failure in non M3 state (Íñigo Huguet) [2004141] - bus: mhi: core: Update debug prints to include local device state (Íñigo Huguet) [2004141] - bus: mhi: core: Process execution environment changes serially (Íñigo Huguet) [2004141] - bus: mhi: core: Download AMSS image from appropriate function (Íñigo Huguet) [2004141] - bus: mhi: core: Destroy SBL devices when moving to mission mode (Íñigo Huguet) [2004141] - bus: mhi: core: Rename debugfs directory name (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Introduce quectel EM1XXGR-L support (Íñigo Huguet) [2004141] - bus: mhi: pci_generic: Parametrable element count for events (Íñigo Huguet) [2004141] - ath10k: Detect conf_mutex held ath10k_drain_tx() calls (Íñigo Huguet) [2004141] - net: mhi: Add mbim proto (Íñigo Huguet) [2004141] - net: mhi: Add rx_length_errors stat (Íñigo Huguet) [2004141] - net: mhi: Create mhi.h (Íñigo Huguet) [2004141] - net: mhi: Add dedicated folder (Íñigo Huguet) [2004141] - net: mhi: Add protocol support (Íñigo Huguet) [2004141] - net: mhi-net: Add re-aggregation of fragmented packets (Íñigo Huguet) [2004141] - net: mhi: Get rid of local rx queue count (Íñigo Huguet) [2004141] - net: mhi: Get RX queue size from MHI core (Íñigo Huguet) [2004141] - net: mhi: Set wwan device type (Íñigo Huguet) [2004141] - net: mhi: Add raw IP mode support (Íñigo Huguet) [2004141] - net: mhi: Fix unexpected queue wake (Íñigo Huguet) [2004141] - net: Add mhi-net driver (Íñigo Huguet) [2004141] - ipv4: make exception cache less predictible (Antoine Tenart) [2015111] {CVE-2021-20322} - ipv4: use siphash instead of Jenkins in fnhe_hashfun() (Antoine Tenart) [2015111] {CVE-2021-20322} - iommu/dma: Account for min_align_mask w/swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Support aligned swiotlb buffers (Jerry Snitselaar) [2018601] - iommu/dma: Check CONFIG_SWIOTLB more broadly (Jerry Snitselaar) [2018601] - iommu/dma: Fold _swiotlb helpers into callers (Jerry Snitselaar) [2018601] - iommu/dma: Skip extra sync during unmap w/swiotlb (Jerry Snitselaar) [2018601] - iommu/dma: Fix arch_sync_dma for map (Jerry Snitselaar) [2018601] - iommu/dma: Fix sync_sg with swiotlb (Jerry Snitselaar) [2018601] - redhat/configs: Add CONFIG_DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - swiotlb: use depends on for DMA_RESTRICTED_POOL (Jerry Snitselaar) [2018601] - powerpc/svm: Don't issue ultracalls if !mem_encrypt_active() (Jerry Snitselaar) [2018601] - s390/pv: fix the forcing of the swiotlb (Jerry Snitselaar) [2018601] - swiotlb: Free tbl memory in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Emit diagnostic in swiotlb_exit() (Jerry Snitselaar) [2018601] - swiotlb: Convert io_default_tlb_mem to static allocation (Jerry Snitselaar) [2018601] - swiotlb: fix implicit debugfs declarations (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA pool initialization (Jerry Snitselaar) [2018601] - swiotlb: Add restricted DMA alloc/free support (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_tbl_unmap_single (Jerry Snitselaar) [2018601] - swiotlb: Move alloc_size to swiotlb_find_slots (Jerry Snitselaar) [2018601] - swiotlb: Use is_swiotlb_force_bounce for swiotlb data bouncing (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_active to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Update is_swiotlb_buffer to add a struct device argument (Jerry Snitselaar) [2018601] - swiotlb: Set dev->dma_io_tlb_mem to the swiotlb pool used (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb_create_debugfs (Jerry Snitselaar) [2018601] - swiotlb: Refactor swiotlb init functions (Jerry Snitselaar) [2018601] - of: Drop superfluous ULL suffix for ~0 (Jerry Snitselaar) [2018601] - dma-mapping: fix 32-bit overflow with CONFIG_ARM_LPAE=n (Jerry Snitselaar) [2018601] - of/device: Update dma_range_map only when dev has valid dma-ranges (Jerry Snitselaar) [2018601] - drivers core: Fix oops when driver probe fails (Jerry Snitselaar) [2018601] - drivers core: Free dma_range_map when driver probe failed (Jerry Snitselaar) [2018601] - driver core: Postpone DMA tear-down until after devres release for probe failure (Jerry Snitselaar) [2018601] - powerpc/pseries/iommu: Fix window size for direct mapping with pmem (Jerry Snitselaar) [2018601] - dma-mapping: add a dma_init_global_coherent helper (Jerry Snitselaar) [2018601] - dma-mapping: simplify dma_init_coherent_memory (Jerry Snitselaar) [2018601] - dma-debug: fix debugfs initialization order (Jerry Snitselaar) [2018601] - dma-debug: teach add_dma_entry() about DMA_ATTR_SKIP_CPU_SYNC (Jerry Snitselaar) [2018601] - dma-debug: fix sg checks in debug_dma_map_sg() (Jerry Snitselaar) [2018601] - swiotlb-xen: ensure to issue well-formed XENMEM_exchange requests (Jerry Snitselaar) [2018601] - dma-debug: prevent an error message from causing runtime problems (Jerry Snitselaar) [2018601] - swiotlb-xen: drop DEFAULT_NSLABS (Jerry Snitselaar) [2018601] - swiotlb-xen: arrange to have buffer info logged (Jerry Snitselaar) [2018601] - swiotlb-xen: drop leftover __ref (Jerry Snitselaar) [2018601] - swiotlb-xen: limit init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: suppress certain init retries (Jerry Snitselaar) [2018601] - swiotlb-xen: maintain slab count properly (Jerry Snitselaar) [2018601] - swiotlb-xen: fix late init retry (Jerry Snitselaar) [2018601] - swiotlb-xen: avoid double free (Jerry Snitselaar) [2018601] - dma-mapping: handle vmalloc addresses in dma_common_{mmap,get_sgtable} (Jerry Snitselaar) [2018601] - dma-debug: report -EEXIST errors in add_dma_entry (Jerry Snitselaar) [2018601] - dma-mapping: remove a trailing space (Jerry Snitselaar) [2018601] - dma-mapping: add unlikely hint to error path in dma_mapping_error (Jerry Snitselaar) [2018601] - dma-mapping: remove a pointless empty line in dma_alloc_coherent (Jerry Snitselaar) [2018601] - swiotlb: Make SWIOTLB_NO_FORCE perform no allocation (Jerry Snitselaar) [2018601] - swiotlb: remove swiotlb_nr_tbl (Jerry Snitselaar) [2018601] - xen/swiotlb: check if the swiotlb has already been initialized (Jerry Snitselaar) [2018601] - swiotlb: add overflow checks to swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: don't override user specified size in swiotlb_adjust_size (Jerry Snitselaar) [2002023] - swiotlb: dynamically allocate io_tlb_default_mem (Jerry Snitselaar) [2002023] - swiotlb: move global variables into a new io_tlb_mem structure (Jerry Snitselaar) [2002023] - xen-swiotlb: remove the unused size argument from xen_swiotlb_fixup (Jerry Snitselaar) [2018601] - xen-swiotlb: split xen_swiotlb_init (Jerry Snitselaar) [2018601] - swiotlb: lift the double initialization protection from xen-swiotlb (Jerry Snitselaar) [2002023] - xen-swiotlb: remove xen_io_tlb_start and xen_io_tlb_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: remove xen_set_nslabs (Jerry Snitselaar) [2018601] - xen-swiotlb: use io_tlb_end in xen_swiotlb_dma_supported (Jerry Snitselaar) [2018601] - xen-swiotlb: use is_swiotlb_buffer in is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb: split swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: manipulate orig_addr when tlb_addr has offset (Jerry Snitselaar) [2002023] - swiotlb: move orig addr and size validation into swiotlb_bounce (Jerry Snitselaar) [2002023] - swiotlb: remove the alloc_size parameter to swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: Fix the type of index (Jerry Snitselaar) [2018601] - swiotlb: Validate bounce size in the sync/unmap path (Jerry Snitselaar) [2002023] - powerpc/svm: stop using io_tlb_start (Jerry Snitselaar) [2002023] - nvme-pci: set min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: respect min_align_mask (Jerry Snitselaar) [2002023] - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single (Jerry Snitselaar) [2002023] - swiotlb: refactor swiotlb_tbl_map_single (Jerry Snitselaar) [2002023] - swiotlb: clean up swiotlb_tbl_unmap_single (Jerry Snitselaar) [2002023] - swiotlb: factor out a nr_slots helper (Jerry Snitselaar) [2002023] - swiotlb: factor out an io_tlb_offset helper (Jerry Snitselaar) [2002023] - swiotlb: add a IO_TLB_SIZE define (Jerry Snitselaar) [2002023] - driver core: add a min_align_mask field to struct device_dma_parameters (Jerry Snitselaar) [2002023] - sdhci: stop poking into swiotlb internals (Jerry Snitselaar) [2018601] - driver core: lift dma_default_coherent into common code (Jerry Snitselaar) [2018601] - dma-pool: no need to check return value of debugfs_create functions (Jerry Snitselaar) [2018601] - powerpc/dma: Fallback to dma_ops when persistent memory present (Jerry Snitselaar) [2018601] - dma-mapping: Allow mixing bypass and mapped DMA operation (Jerry Snitselaar) [2018601] - dma-mapping: remove the dma_direct_set_offset export (Jerry Snitselaar) [2018601] - dma-mapping: move more functions to dma-map-ops.h (Jerry Snitselaar) [2018601] - dma-mapping: merge into (Jerry Snitselaar) [2018601] - dma-mapping: move large parts of to kernel/dma (Jerry Snitselaar) [2018601] - dma-mapping: add (back) arch_dma_mark_clean for ia64 (Jerry Snitselaar) [2018601] - dma-mapping: move dma-debug.h to kernel/dma/ (Jerry Snitselaar) [2018601] - dma-mapping: split (Jerry Snitselaar) [2018601] - dma-mapping: introduce DMA range map, supplanting dma_pfn_offset (Jerry Snitselaar) [2018601] - of: Make of_dma_get_range() private (Jerry Snitselaar) [2018601] - swiotlb: fix comment on swiotlb_bounce() (Jerry Snitselaar) [2018601] - xen/arm: introduce phys/dma translations in xen_dma_sync_for_* (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_device (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_dma_sync_for_cpu (Jerry Snitselaar) [2018601] - swiotlb-xen: introduce phys_to_dma/dma_to_phys translations (Jerry Snitselaar) [2018601] - swiotlb-xen: remove XEN_PFN_PHYS (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to is_xen_swiotlb_buffer (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_bus_to_phys (Jerry Snitselaar) [2018601] - swiotlb-xen: add struct device * parameter to xen_phys_to_bus (Jerry Snitselaar) [2018601] - swiotlb-xen: use vmalloc_to_page on vmalloc virt addresses (Jerry Snitselaar) [2018601] - swiotlb-xen: Convert to use macro (Jerry Snitselaar) [2018601] - swiotlb-xen: merge xen_unmap_single into xen_swiotlb_unmap_page (Jerry Snitselaar) [2018601] - swiotlb-xen: remove xen_swiotlb_dma_mmap and xen_swiotlb_dma_get_sgtable (Jerry Snitselaar) [2018601] - xen/swiotlb: remember having called xen_create_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: simplify range_straddles_page_boundary() (Jerry Snitselaar) [2018601] - xen/swiotlb: fix condition for calling xen_destroy_contiguous_region() (Jerry Snitselaar) [2018601] - xen/swiotlb: don't initialize swiotlb twice on arm64 (Jerry Snitselaar) [2018601] - xen-swiotlb: use actually allocated size on check physical continuous (Jerry Snitselaar) [2018601] - igb: fix deadlock caused by taking RTNL in RPM resume path (Corinna Vinschen) [2039882] - igb: Fix removal of unicast MAC filters of VFs (Corinna Vinschen) [2039882] - net: ena: Fix error handling when calculating max IO queues number (Petr Oros) [2038158] - net: ena: Fix wrong rx request id by resetting device (Petr Oros) [2038158] - net: ena: Fix undefined state when tx request id is out of bounds (Petr Oros) [2038158] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Petr Oros) [2038158] - ena: Remove rcu_read_lock() around XDP program invocation (Petr Oros) [2038158] - net: ena: make symbol 'ena_alloc_map_page' static (Petr Oros) [2038158] - net: ena: fix DMA mapping function issues in XDP (Petr Oros) [2038158] - net: ena: re-organize code to improve readability (Petr Oros) [2038158] - net: ena: Use dev_alloc() in RX buffer allocation (Petr Oros) [2038158] - net: ena: aggregate doorbell common operations into a function (Petr Oros) [2038158] - net: ena: fix RST format in ENA documentation file (Petr Oros) [2038158] - net: ena: Remove module param and change message severity (Petr Oros) [2038158] - net: ena: add jiffies of last napi call to stats (Petr Oros) [2038158] - net: ena: use build_skb() in RX path (Petr Oros) [2038158] - net: ena: Improve error logging in driver (Petr Oros) [2038158] - net: ena: Remove unused code (Petr Oros) [2038158] - net: ena: optimize data access in fast-path code (Petr Oros) [2038158] - kasan, slub: reset tag when printing address (Nico Pache) [1954335] - kasan: fix Kconfig check of CC_HAS_WORKING_NOSANITIZE_ADDRESS (Nico Pache) [1954335] - Documentation: kunit: add tips for using current->kunit_test (Nico Pache) [1954335] - kunit: fix -Wunused-function warning for __kunit_fail_current_test (Nico Pache) [1954335] - kunit: support failure from dynamic analysis tools (Nico Pache) [1954335] - Add KASAN KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1954335] - kasan, mm: fix resetting page_alloc tags for HW_TAGS (Nico Pache) [1954335] - kasan, mm: fix conflicts with init_on_alloc/free (Nico Pache) [1954335] - powerpc/uaccess: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - kasan: remove redundant config option (Nico Pache) [1954335] - kasan: fix hwasan build for gcc (Nico Pache) [1954335] - lib/test_kasan_module.c: suppress unused var warning (Nico Pache) [1954335] - kasan: fix conflict with page poisoning (Nico Pache) [1954335] - kasan: fix per-page tags for non-page_alloc pages (Nico Pache) [1954335] - kasan: fix KASAN_STACK dependency for HW_TAGS (Nico Pache) [1954335] - kasan: clarify that only first bug is reported in HW_TAGS (Nico Pache) [1954335] - kasan: inline HW_TAGS helper functions (Nico Pache) [1954335] - kasan: ensure poisoning size alignment (Nico Pache) [1954335] - kasan, mm: optimize krealloc poisoning (Nico Pache) [1954335] - kasan, mm: fail krealloc on freed objects (Nico Pache) [1954335] - kasan: rework krealloc tests (Nico Pache) [1954335] - kasan: unify large kfree checks (Nico Pache) [1954335] - kasan: clean up setting free info in kasan_slab_free (Nico Pache) [1954335] - kasan: optimize large kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: optimize kmalloc poisoning (Nico Pache) [1954335] - kasan, mm: don't save alloc stacks twice (Nico Pache) [1954335] - kasan: don't run tests when KASAN is not enabled (Nico Pache) [1954335] - kasan: add a test for kmem_cache_alloc/free_bulk (Nico Pache) [1954335] - kasan: add proper page allocator tests (Nico Pache) [1954335] - kasan: fix bug detection via ksize for HW_TAGS mode (Nico Pache) [1954335] - kasan: move _RET_IP_ to inline wrappers (Nico Pache) [1954335] - kasan: fix memory corruption in kasan_bitops_tags test (Nico Pache) [1954335] - kasan: rename CONFIG_TEST_KASAN_MODULE (Nico Pache) [1954335] - kasan: add match-all tag tests (Nico Pache) [1954335] - kasan: add macros to simplify checking test constraints (Nico Pache) [1954335] - kasan: clean up comments in tests (Nico Pache) [1954335] - kasan: clarify HW_TAGS impact on TBI (Nico Pache) [1954335] - kasan: prefix global functions with kasan_ (Nico Pache) [1954335] - kasan: fix stack traces dependency for HW_TAGS (Nico Pache) [1954335] - kasan: make addr_has_metadata() return true for valid addresses (Nico Pache) [1954335] - kasan: add explicit preconditions to kasan_report() (Nico Pache) [1954335] - kasan: fix HW_TAGS boot parameters (Nico Pache) [1954335] - kasan: fix null pointer dereference in kasan_record_aux_stack (Nico Pache) [1954335] - kasan: update documentation (Nico Pache) [1954335] - kasan, mm: allow cache merging with no metadata (Nico Pache) [1954335] - kasan: sanitize objects when metadata doesn't fit (Nico Pache) [1954335] - kasan: clarify comment in __kasan_kfree_large (Nico Pache) [1954335] - kasan: simplify assign_tag and set_tag calls (Nico Pache) [1954335] - kasan: don't round_up too much (Nico Pache) [1954335] - kasan, mm: rename kasan_poison_kfree (Nico Pache) [1954335] - kasan, mm: check kasan_enabled in annotations (Nico Pache) [1954335] - kasan: add and integrate kasan boot parameters (Nico Pache) [1954335] - kasan: inline (un)poison_range and check_invalid_free (Nico Pache) [1954335] - kasan: open-code kasan_unpoison_slab (Nico Pache) [1954335] - kasan: inline random_tag for HW_TAGS (Nico Pache) [1954335] - kasan: inline kasan_reset_tag for tag-based modes (Nico Pache) [1954335] - kasan: remove __kasan_unpoison_stack (Nico Pache) [1954335] - kasan: allow VMAP_STACK for HW_TAGS mode (Nico Pache) [1954335] - kasan, arm64: unpoison stack only with CONFIG_KASAN_STACK (Nico Pache) [1954335] - kasan: introduce set_alloc_info (Nico Pache) [1954335] - kasan: rename get_alloc/free_info (Nico Pache) [1954335] - kasan: simplify quarantine_put call site (Nico Pache) [1954335] - kasan: add documentation for hardware tag-based mode (Nico Pache) [1954335] - kasan, mm: reset tags when accessing metadata (Nico Pache) [1954335] - kasan, arm64: print report from tag fault handler (Nico Pache) [1954335] - kasan, arm64: implement HW_TAGS runtime (Nico Pache) [1954335] - kasan, arm64: expand CONFIG_KASAN checks (Nico Pache) [1954335] - string.h: fix incompatibility between FORTIFY_SOURCE and KASAN (Nico Pache) [1954335] - kasan, x86, s390: update undef CONFIG_KASAN (Nico Pache) [1954335] - kasan: define KASAN_GRANULE_SIZE for HW_TAGS (Nico Pache) [1954335] - arm64: kasan: add arch layer for memory tagging helpers (Nico Pache) [1954335] - kasan, mm: untag page address in free_reserved_area (Nico Pache) [1954335] - mm: Allow non-direct-map arguments to free_reserved_area() (Nico Pache) [1954335] - kasan: introduce CONFIG_KASAN_HW_TAGS (Nico Pache) [1954335] - kasan: separate metadata_fetch_row for each mode (Nico Pache) [1954335] - kasan: rename SHADOW layout macros to META (Nico Pache) [1954335] - kasan: rename print_shadow_for_address to print_memory_metadata (Nico Pache) [1954335] - kasan: rename addr_has_shadow to addr_has_metadata (Nico Pache) [1954335] - kasan, arm64: rename kasan_init_tags and mark as __init (Nico Pache) [1954335] - kasan, arm64: move initialization message (Nico Pache) [1954335] - kasan, arm64: only use kasan_depth for software modes (Nico Pache) [1954335] - kasan, arm64: only init shadow for software modes (Nico Pache) [1954335] - kasan: decode stack frame only with KASAN_STACK_ENABLE (Nico Pache) [1954335] - kasan: hide invalid free check implementation (Nico Pache) [1954335] - kasan: don't duplicate config dependencies (Nico Pache) [1954335] - kasan: rename report and tags files (Nico Pache) [1954335] - kasan: define KASAN_MEMORY_PER_SHADOW_PAGE (Nico Pache) [1954335] - kasan: split out shadow.c from common.c (Nico Pache) [1954335] - kasan: only build init.c for software modes (Nico Pache) [1954335] - kasan: rename KASAN_SHADOW_* to KASAN_GRANULE_* (Nico Pache) [1954335] - kasan: rename (un)poison_shadow to (un)poison_range (Nico Pache) [1954335] - fork: support VMAP_STACK with KASAN_VMALLOC (Nico Pache) [1954335] - kasan: shadow declarations only for software modes (Nico Pache) [1954335] - kasan: group vmalloc code (Nico Pache) [1954335] - kasan: KASAN_VMALLOC depends on KASAN_GENERIC (Nico Pache) [1954335] - kasan: drop unnecessary GPL text from comment headers (Nico Pache) [1954335] - kasan: update documentation for generic kasan (Nico Pache) [1954335] - kasan: print workqueue stack (Nico Pache) [1954335] - kasan: fix object remaining in offline per-cpu quarantine (Nico Pache) [1954335] - kasan: adopt KUNIT tests to SW_TAGS mode (Nico Pache) [1954335] - docs: kasan.rst: add two missing blank lines (Nico Pache) [1954335] - mm: kasan: do not panic if both panic_on_warn and kasan_multishot set (Nico Pache) [1954335] - KASAN: Testing Documentation (Nico Pache) [1954335] - KASAN: port KASAN Tests to KUnit (Nico Pache) [1954335] - KUnit: KASAN Integration (Nico Pache) [1954335] - kasan/kunit: add KUnit Struct to Current Task (Nico Pache) [1954335] - kasan: remove mentions of unsupported Clang versions (Nico Pache) [1954335] - kbuild: move CFLAGS_{KASAN,UBSAN,KCSAN} exports to relevant Makefiles (Nico Pache) [1954335] - s390/kasan: make shadow memory noexec (Nico Pache) [1954335] - kasan: adjust kasan_stack_oob for tag-based mode (Nico Pache) [1954335] - kasan: allow enabling stack tagging for tag-based mode (Nico Pache) [1954335] - kasan: don't tag stacks allocated with pagealloc (Nico Pache) [1954335] - lib/test_kasan.c: fix KASAN unit tests for tag-based KASAN (Nico Pache) [1954335] - kasan: remove kasan_unpoison_stack_above_sp_to() (Nico Pache) [1954335] - kasan: add tests for call_rcu stack recording (Nico Pache) [1954335] - kprobes: Remove show_registers() function prototype (Nico Pache) [1954335] - kasan: stop tests being eliminated as dead code with FORTIFY_SOURCE (Nico Pache) [1954335] - kasan: move kasan_report() into report.c (Nico Pache) [1954335] - kasan: stackdepot: move filter_irq_stacks() to stackdepot.c (Nico Pache) [1954335] - lib/stackdepot.c: check depot_index before accessing the stack slab (Nico Pache) [1954335] - lib/stackdepot: Remove obsolete functions (Nico Pache) [1954335] - kasan: add test for invalid size in memmove (Nico Pache) [1954335] - mm/memory-failure.c: use page_shift() in add_to_kill() (Nico Pache) [1954335] - x86: get rid of small constant size cases in raw_copy_{to,from}_user() (Nico Pache) [1954335] - s390/kasan: add KASAN_VMALLOC support (Nico Pache) [1954335] - s390: move vmalloc option parsing to startup code (Nico Pache) [1954335] - kasan: add test for vmalloc (Nico Pache) [1954335] - ehea: replace with page_shift() in ehea_is_hugepage() (Nico Pache) [1954335] - mm: introduce page_shift() (Nico Pache) [1954335] - lib/test_kasan.c: add roundtrip tests (Nico Pache) [1954335] - lib/test_kasan: Add test for double-kzfree detection (Nico Pache) [1954335] - lib/test_kasan: add bitops tests (Nico Pache) [1954335] - asm-generic, x86: add bitops instrumentation for KASAN (Nico Pache) [1954335] - x86: use static_cpu_has in uaccess region to avoid instrumentation (Nico Pache) [1954335] - x86/asm: Use stricter assembly constraints in bitops (Nico Pache) [1954335] - x86/asm: Remove dead __GNUC__ conditionals (Nico Pache) [1954335] - s390/kasan: adapt disabled_wait usage to avoid build error (Nico Pache) [1954335] - s390: simplify disabled_wait (Nico Pache) [1954335] - lib/test_kasan.c: add tests for several string/memory API functions (Nico Pache) [1954335] - arm64: Fix typo in a comment in arch/arm64/mm/kasan_init.c (Nico Pache) [1954335] - kprobes: Remove jprobe stub API (Nico Pache) [1954335] - Documentation/kprobes: Add how to change the execution path (Nico Pache) [1954335] - kprobes/x86: Do not disable preempt on int3 path (Nico Pache) [1954335] - bpf/error-inject/kprobes: Clear current_kprobe and enable preempt in kprobe (Nico Pache) [1954335] - s390/kprobes: Don't call the ->break_handler() in s390 kprobes code (Nico Pache) [1954335] - powerpc/kprobes: Don't call the ->break_handler() in powerpc kprobes code (Nico Pache) [1954335] - arm64/kprobes: Don't call the ->break_handler() in arm64 kprobes code (Nico Pache) [1954335] - kprobes/x86: Don't call the ->break_handler() in x86 kprobes (Nico Pache) [1954335] - kprobes: Don't check the ->break_handler() in generic kprobes code (Nico Pache) [1954335] - kprobes/x86: Remove jprobe implementation (Nico Pache) [1954335] - s390/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - powerpc/kprobes: Remove jprobe powerpc implementation (Nico Pache) [1954335] - arm64/kprobes: Remove jprobe implementation (Nico Pache) [1954335] - kprobes: Remove jprobe API implementation (Nico Pache) [1954335] - Documentation/kprobes: Remove jprobes related leftover (Nico Pache) [1954335] - redhat: config: explicitly set CONFIG_ARM64_VA_BITS_48 for ARM64 (Nico Pache) [1954335] - arm64: mm: use a 48-bit ID map when possible on 52-bit VA builds (Nico Pache) [1954335] - arm64: mm: limit linear region to 51 bits for KVM in nVHE mode (Nico Pache) [1954335] - Documentation/arm64: fix RST layout of memory.rst (Nico Pache) [1954335] - arm64: mm: Remove MAX_USER_VA_BITS definition (Nico Pache) [1954335] - arm64: Use simpler arithmetics for the linear map macros (Nico Pache) [1954335] - arm64: mm: use single quantity to represent the PA to VA translation (Nico Pache) [1954335] - kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE (Nico Pache) [1954335] - arm64: Do not pass tagged addresses to __is_lm_address() (Nico Pache) [1954335] - arm64: Fix kernel address detection of __is_lm_address() (Nico Pache) [1954335] - arm64: mm: extend linear region for 52-bit VA configurations (Nico Pache) [1954335] - arm64: Fix kcore macros after 52-bit virtual addressing fallout (Nico Pache) [1954335] - arm64: fix fixmap copy for 16K pages and 48-bit VA (Nico Pache) [1954335] - arm64: memory: rename VA_START to PAGE_END (Nico Pache) [1954335] - arm64: memory: Simplify _VA_START and _PAGE_OFFSET definitions (Nico Pache) [1954335] - arm64: memory: fix flipped VA space fallout (Nico Pache) [1954335] - arm64: memory: Fix virt_addr_valid() using __is_lm_address() (Nico Pache) [1954335] - arm64: memory: Ensure address tag is masked in conversion macros (Nico Pache) [1954335] - arm64: mm: Simplify definition of virt_addr_valid() (Nico Pache) [1954335] - docs: arm64: Add layout and 52-bit info to memory document (Nico Pache) [1954335] - arm64: mm: Remove vabits_user (Nico Pache) [1954335] - arm64: mm: Introduce 52-bit Kernel VAs (Nico Pache) [1954335] - arm64: mm: Modify calculation of VMEMMAP_SIZE (Nico Pache) [1954335] - arm64: mm: Separate out vmemmap (Nico Pache) [1954335] - arm64: mm: Logic to make offset_ttbr1 conditional (Nico Pache) [1954335] - arm64: mm: Introduce vabits_actual (Nico Pache) [1954335] - arm64: Print physical address of page table base in show_pte() (Nico Pache) [1954335] - arm64: mm: Introduce VA_BITS_MIN (Nico Pache) [1954335] - arm64: dump: De-constify VA_START and KASAN_SHADOW_START (Nico Pache) [1954335] - arm64: kasan: Switch to using KASAN_SHADOW_OFFSET (Nico Pache) [1954335] - arm64: mm: Flip kernel VA space (Nico Pache) [1954335] - arm64: mm: Remove bit-masking optimisations for PAGE_OFFSET and VMEMMAP_START (Nico Pache) [1954335] - arm64: dump: Use consistent capitalisation for page-table dumps (Nico Pache) [1954335] - kernel/rwsem: Use proper directories for rwsem_init.c (Scott Wood) [2040087] - redhat: Cleanup use of mark_hardware_removed (Prarit Bhargava) [2019378] - redhat: Cleanup use of mark_hardware_unsupported (Prarit Bhargava) [2019378] - redhat: clean up mark_hardware_deprecated() (Prarit Bhargava) [2019378] - nvme: Mark NVMe over FC Target support unmaintained (Prarit Bhargava) [2019378] - hdlc_fr: Mark driver unmaintained (Prarit Bhargava) [2019378] - sfc: Mark siena driver deprecated (Prarit Bhargava) [2019378] - qla3xxx: Mark driver unmaintained (Prarit Bhargava) [2019378] - netxen: Mark nic driver unmaintained (Prarit Bhargava) [2019378] - ethoc: Mark driver unmaintained (Prarit Bhargava) [2019378] - dnet: Mark driver unmaintained (Prarit Bhargava) [2019378] - drivers/pci/pci-driver.c: Fix if/ifdef typo (Prarit Bhargava) [2019378] - kernel/rh_taint.c: Update to new messaging (Prarit Bhargava) [2019378] - drm/i915/dmc: Change max DMC FW size on ADL-P (Michel Dänzer) [1988103] - drm/i915: Add workaround numbers to GEN7_COMMON_SLICE_CHICKEN1 whitelisting (Michel Dänzer) [1988103] - drm/i915: Fix Memory BW formulae for ADL-P (Michel Dänzer) [1988103] - drm/i915: Restore memory mapping for DPT FBs across system suspend/resume (Michel Dänzer) [1988103] - drm/i915: Factor out i915_ggtt_suspend_vm/i915_ggtt_resume_vm() (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on CCS AUX plane strides (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Remove restriction on semiplanar UV plane offset (Michel Dänzer) [1988103] - drm/i915/fb: Rename i915_color_plane_view::stride to mapping_stride (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Fix remapping of linear CCS AUX surfaces (Michel Dänzer) [1988103] - drm/i915/fb: Factor out functions to remap contiguous FB obj pages (Michel Dänzer) [1988103] - drm/i915/adlp/fb: Prevent the mapping of redundant trailing padding NULL pages (Michel Dänzer) [1988103] - drm/i915: Add functions to check for RC CCS CC and MC CCS modifiers (Michel Dänzer) [1988103] - drm/i915: Move is_ccs_modifier() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to check for CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Handle CCS CC planes separately from CCS AUX planes (Michel Dänzer) [1988103] - drm/i915: Add a platform independent way to get the RC CCS CC plane (Michel Dänzer) [1988103] - drm/i915: Move intel_format_info_is_yuv_semiplanar() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Unexport is_semiplanar_uv_plane() (Michel Dänzer) [1988103] - drm/i915: Simplify the modifier check for interlaced scanout support (Michel Dänzer) [1988103] - drm/i915: Add tiling attribute to the modifier descriptor (Michel Dänzer) [1988103] - drm/i915: Move intel_get_format_info() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: Add a table with a descriptor for all i915 modifiers (Michel Dänzer) [1988103] - drm/i915/adlp: Implement workaround 16013190616 (Michel Dänzer) [1988103] - drm/i915/adlp: Extend PSR2 support in transcoder B (Michel Dänzer) [1988103] - drm/i915/display: Wait PSR2 get out of deep sleep to update pipe (Michel Dänzer) [1988103] - drm/i915/display/adlp: Allow PSR2 to be enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Optimize PSR2 power-savings in corner cases (Michel Dänzer) [1988103] - drm/i915/display: Fix glitches when moving cursor with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display: Handle frontbuffer rendering when PSR2 selective fetch is enabled (Michel Dänzer) [1988103] - drm/i915/display: Drop unnecessary frontbuffer flushes (Michel Dänzer) [1988103] - drm/i915/display/psr: Do full fetch when handling multi-planar formats (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle plane and pipe restrictions at every page flip (Michel Dänzer) [1988103] - drm/i915/display: Only keep PSR enabled if there is active planes (Michel Dänzer) [1988103] - drm/i915/display: Match PSR2 selective fetch sequences with specification (Michel Dänzer) [1988103] - drm/i915/display/dmc: Set DC_STATE_DEBUG_MASK_CORES after firmware load (Michel Dänzer) [1988103] - drm/i915: Nuke intel_prepare_shared_dpll() (Michel Dänzer) [1988103] - drm/i915: Fold ibx_pch_dpll_prepare() into ibx_pch_dpll_enable() (Michel Dänzer) [1988103] - drm/i915: Fold i9xx_set_pll_dividers() into i9xx_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Reuse ilk_needs_fb_cb_tune() for the reduced clock as well (Michel Dänzer) [1988103] - drm/i915: Call {vlv,chv}_prepare_pll() from {vlv,chv}_enable_pll() (Michel Dänzer) [1988103] - drm/i915: Program DPLL P1 dividers consistently (Michel Dänzer) [1988103] - drm/i915: Remove the 'reg' local variable (Michel Dänzer) [1988103] - drm/i915: Clean up variable names in old dpll functions (Michel Dänzer) [1988103] - drm/i915: Clean dpll calling convention (Michel Dänzer) [1988103] - drm/i915: Constify struct dpll all over (Michel Dänzer) [1988103] - drm/i915: Extract ilk_update_pll_dividers() (Michel Dänzer) [1988103] - drm/i915: Clean up gen2 DPLL readout (Michel Dänzer) [1988103] - drm/i915: Set output_types to EDP for vlv/chv DPLL forcing (Michel Dänzer) [1988103] - drm/i915: Silence __iomem sparse warn (Michel Dänzer) [1988103] - drm/i915: split fdi link training from display vtable. (Michel Dänzer) [1988103] - drm/i915: split irq hotplug function from display vtable (Michel Dänzer) [1988103] - drm/i915: split cdclk functions from display vtable. (Michel Dänzer) [1988103] - drm/i915: split audio functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split color functions from display vtable (Michel Dänzer) [1988103] - drm/i915: split watermark vfuncs from display vtable. (Michel Dänzer) [1988103] - drm/i915: split clock gating init from display vtable (Michel Dänzer) [1988103] - drm/i915/display: add intel_fdi_link_train wrapper. (Michel Dänzer) [1988103] - drm/i915: add wrappers around cdclk vtable funcs. (Michel Dänzer) [1988103] - drm/i915/wm: provide wrappers around watermark vfuncs calls (v3) (Michel Dänzer) [1988103] - drm/i915: make update_wm take a dev_priv. (Michel Dänzer) [1988103] - drm/i915/pm: drop get_fifo_size vfunc. (Michel Dänzer) [1988103] - drm/i915: Clean up pre-skl wm calling convention (Michel Dänzer) [1988103] - drm/i915/dmc: Update to DMC v2.12 (Michel Dänzer) [1988103] - drm/i915: Implement PSF GV point support (Michel Dänzer) [1988103] - drm/i915: Extend QGV point restrict mask to 0x3 (Michel Dänzer) [1988103] - drm/i915/display: Disable audio, DRRS and PSR before planes (Michel Dänzer) [1988103] - drm/i915: Make display workaround upper bounds exclusive (Michel Dänzer) [1988103] - drm/i915: Program DFR enable/disable as a GT workaround (Michel Dänzer) [1988103] - drm/i915/step: s/_revid_tbl/_revids (Michel Dänzer) [1988103] - drm/i915/display: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915: Settle on "adl-x" in WA comments (Michel Dänzer) [1988103] - drm/i915/display/adlp: Disable underrun recovery (Michel Dänzer) [1988103] - drm/i915/tc: Fix system hang on ADL-P during TypeC PHY disconnect (Michel Dänzer) [1988103] - drm/i915/tc: Drop extra TC cold blocking from intel_tc_port_connected() (Michel Dänzer) [1988103] - drm/i915/tc: Fix TypeC PHY connect/disconnect logic on ADL-P (Michel Dänzer) [1988103] - drm/i915/icl/tc: Remove the ICL special casing during TC-cold blocking (Michel Dänzer) [1988103] - drm/i915/tc: Avoid using legacy AUX PW in TBT mode (Michel Dänzer) [1988103] - drm/i915/tc: Refactor TC-cold block/unblock helpers (Michel Dänzer) [1988103] - drm/i915/tc: Add a mode for the TypeC PHY's disconnected state (Michel Dänzer) [1988103] - drm/i915/tc: Don't keep legacy TypeC ports in connected state w/o a sink (Michel Dänzer) [1988103] - drm/i915/tc: Add/use helpers to retrieve TypeC port properties (Michel Dänzer) [1988103] - drm/i915/tc: Check for DP-alt, legacy sinks before taking PHY ownership (Michel Dänzer) [1988103] - drm/i915/tc: Remove waiting for PHY complete during releasing ownership (Michel Dänzer) [1988103] - drm/i915/adlp/tc: Fix PHY connected check for Thunderbolt mode (Michel Dänzer) [1988103] - drm/i915: Force a TypeC PHY disconnect during suspend/shutdown (Michel Dänzer) [1988103] - drm/i915/adlp: Add support for remapping CCS FBs (Michel Dänzer) [1988103] - drm/i915: Follow a new->old platform check order in intel_fb_stride_alignment (Michel Dänzer) [1988103] - drm/i915/adlp: Assert that VMAs in DPT start at 0 (Michel Dänzer) [1988103] - drm/i915/adlp: Require always a power-of-two sized CCS surface stride (Michel Dänzer) [1988103] - drm/i915: Use tile block based dimensions for CCS origin x, y check (Michel Dänzer) [1988103] - drm/i915/fb: move user framebuffer stuff to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display: split out dpt out of intel_display.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_surf_alignment() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915: add HAS_ASYNC_FLIPS feature macro (Michel Dänzer) [1988103] - drm/i915/fb: move intel_fb_align_height() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/fb: move intel_tile_width_bytes() to intel_fb.c (Michel Dänzer) [1988103] - drm/i915/display/adlp: Add new PSR2 workarounds (Michel Dänzer) [1988103] - drm/i915: Program chicken bit during DP MST sequence on TGL+ (Michel Dänzer) [1988103] - drm/i915/display: Workaround cursor left overs with PSR2 selective fetch enabled (Michel Dänzer) [1988103] - drm/i915/display/adlp: Fix PSR2_MAN_TRK_CTL_SU_REGION_END_ADDR calculation (Michel Dänzer) [1988103] - drm/i915: Update memory bandwidth parameters (Michel Dänzer) [1988103] - drm/i915/dp: fix for ADL_P/S dp/edp max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix DG1 and RKL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: fix EHL/JSL max source rates calculation (Michel Dänzer) [1988103] - drm/i915/dp: fix TGL and ICL max source rates (Michel Dänzer) [1988103] - drm/i915/dp: Fix eDP max rate for display 11+ (Michel Dänzer) [1988103] - drm/i915/dp: fix DG2 max source rate check (Michel Dänzer) [1988103] - drm/i915/dg2: add DG2 UHBR source rates (Michel Dänzer) [1988103] - drm/i915/display: remove explicit CNL handling from intel_dp.c (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Enable mipi dsi support. (Michel Dänzer) [1988103] - drm/i915/dsi/xelpd: Add WA to program LP to HS wakeup guardband (Michel Dänzer) [1988103] - drm/i915/display: Update small joiner ram size (Michel Dänzer) [1988103] - drm/i915/adl_p: Also disable underrun recovery with MSO (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Correctly program MBUS DBOX A credits (Michel Dänzer) [1988103] - drm/i915: Apply CMTG clock disabling WA while DPLL0 is enabled (Michel Dänzer) [1988103] - drm/i915/adl_p: Add ddi buf translation tables for combo PHY (Michel Dänzer) [1988103] - drm/i915/adl_s: Update ddi buf translation tables (Michel Dänzer) [1988103] - drm/i915: Add the missing adls vswing tables (Michel Dänzer) [1988103] - drm/i915/adlp: Add workaround to disable CMTG clock gating (Michel Dänzer) [1988103] - drm/i915/adl_p: Allow underrun recovery when possible (Michel Dänzer) [1988103] - drm/i915: Add dummy IS_DG2 definition (Michel Dänzer) [1988103] - drm/i915: Extend Wa_1406941453 to adl-p (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement PSR changes (Michel Dänzer) [1988103] - drm/i915/debugfs: DISPLAY_VER 13 lpsp capability (Michel Dänzer) [1988103] - drm/i915/adlp: Add ADL-P GuC/HuC firmware files (Michel Dänzer) [1988103] - drm/i915/huc: Update TGL and friends to HuC 7.9.3 (Michel Dänzer) [1988103] - drm/i915/guc: Update firmware to v62.0.0 (Michel Dänzer) [1988103] - drm/i915/guc: Introduce unified HXG messages (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011303918 (Michel Dänzer) [1988103] - drm/i915/xelpd: Handle PSR2 SDP indication in the prior scanline (Michel Dänzer) [1988103] - drm/i915/display/psr: Handle SU Y granularity (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_16011168373 (Michel Dänzer) [1988103] - drm/i915/display/adl_p: Implement Wa_22012278275 (Michel Dänzer) [1988103] - drm/i915: Nuke buf_trans hdmi functions (Michel Dänzer) [1988103] - drm/i915: Clean up jsl/ehl buf trans functions (Michel Dänzer) [1988103] - drm/i915: Fix ehl edp hbr2 vswing table (Michel Dänzer) [1988103] - drm/i915: Deduplicate icl DP HBR2 vs. eDP HBR3 table (Michel Dänzer) [1988103] - drm/i915: Fix dg1 buf trans tables (Michel Dänzer) [1988103] - drm/i915: Introduce rkl_get_combo_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Clean up hsw/bdw/skl/kbl buf trans funcs (Michel Dänzer) [1988103] - drm/i915: Introduce encoder->get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Store the HDMI default entry in the bug trans struct (Michel Dänzer) [1988103] - drm/i915; Return the whole buf_trans struct from get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Introduce intel_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: Wrap the buf trans tables into a struct (Michel Dänzer) [1988103] - drm/i915: Rename dkl phy buf trans tables (Michel Dänzer) [1988103] - drm/i915: Wrap the platform specific buf trans structs into a union (Michel Dänzer) [1988103] - drm/i915: Introduce hsw_get_buf_trans() (Michel Dänzer) [1988103] - drm/i915: s/intel/hsw/ for hsw/bdw/skl buf trans (Michel Dänzer) [1988103] - drm/i915/adl_p: Load DMC (Michel Dänzer) [1988103] - drm/i915/adl_p: Pipe B DMC Support (Michel Dänzer) [1988103] - drm/i915/xelpd: Pipe A DMC plugging (Michel Dänzer) [1988103] - drm/i915/dmc: Introduce DMC_FW_MAIN (Michel Dänzer) [1988103] - drm/i915/adl_p: Add initial ADL_P Workarounds (Michel Dänzer) [1988103] - drm/i915/xelpd: break feature inheritance (Michel Dänzer) [1988103] - backlight: backlight: Make of_find_backlight static (Jérôme Glisse) [1988103] - backlight: backlight: Drop backlight_put() (Jérôme Glisse) [1988103] - backlight: backlight: Introduce backlight_get_brightness() (Jérôme Glisse) [1988103] - backlight: backlight: Drop extern from prototypes (Jérôme Glisse) [1988103] - backlight: generic_bl: Remove this driver as it is unused (Michel Dänzer) [1988103] - backlight: backlight: Document enums in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Document inline functions in backlight.h (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_device documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_properties documentation (Jérôme Glisse) [1988103] - backlight: backlight: Improve backlight_ops documentation (Jérôme Glisse) [1988103] - backlight: backlight: Add backlight_is_blank() (Jérôme Glisse) [1988103] - backlight: Add backlight_device_get_by_name() (Jérôme Glisse) [1988103] - backlight: Expose brightness curve type through sysfs (Michel Dänzer) [1988103] - backlight: Remove obsolete comment for ->state (Jérôme Glisse) [1988103] - x86/gpu: add JasperLake to gen11 early quirks (Michel Dänzer) [1988103] - drm/i915/adl_p: ADL_P device info enabling (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_DRM_VMWGFX on aarch64 (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31 UseMinimumDCFCLK (Michel Dänzer) [1988103] - drm/amd/display: Reduce stack size for dml31_ModeSupportAndSystemConfigurationFull (Michel Dänzer) [1988103] - drm/amdgpu: Initialize max/min_dpm_level (Michel Dänzer) [1988103] - redhat/configs: Disable CONFIG_HSA_AMD_SVM for now (Michel Dänzer) [1988103] - i915: Convert to older tasklet API (Michel Dänzer) [1988103] - drm/ttm: Include asm/pgtable.h (Michel Dänzer) [1988103] - Merge DRM changes from upstream v5.13..v5.14.21 (Michel Dänzer) [1988103] - PCI: Add support for dev_groups to struct pci_driver (Jérôme Glisse) [1988103] - drm: Initialize some local variables to avoid compiler warnings (Jérôme Glisse) [1988103] - drm: Use swiotlb_nr_tbl instead of is_swiotlb_active (Jérôme Glisse) [1988103] - i915: Use mdev_type_kobj_to_group_id instead of mtype_get_type_group_id (Jérôme Glisse) [1988103] - i915: Convert to older tasklet API (Jérôme Glisse) [1988103] - drm: Drop const from list_sort compare function prototypes (Jérôme Glisse) [1988103] - Merge DRM changes from upstream v5.12.14..v5.13 (Michel Dänzer) [1988103] - vfio/mdev: add helper to get index of mdev_type sysfs file (Jérôme Glisse) [1988103] - drm/syncobj: make lockdep complain on WAIT_FOR_SUBMIT v3 (Jérôme Glisse) [1988103] - Revert "drm/i915: Implement Wa_1508744258" (Michel Dänzer) [1988103] - Revert "drm/i915: Add the missing adls vswing tables" (Michel Dänzer) [1988103] - x86/gpu: Add Alderlake-S stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add RKL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add TGL stolen memory support (Michel Dänzer) [1988103] - x86/gpu: add ElkhartLake to gen11 early quirks (Michel Dänzer) [1988103] - x86/gpu: reserve ICL's graphics stolen memory (Michel Dänzer) [1988103] - selftest/x86/signal: Include test cases for validating sigaltstack (Prarit Bhargava) [1837321] - x86/signal: Detect and prevent an alternate signal stack overflow (Prarit Bhargava) [1837321] - selftest/sigaltstack: Use the AT_MINSIGSTKSZ aux vector if available (Prarit Bhargava) [1837321] - x86/fpu: Additional cleanups (Prarit Bhargava) [1837321] - binfmt_elf: Respect error return from `regset->active' (Prarit Bhargava) [1837321] - x86/fpu: Optimize out sigframe xfeatures when in init state (Prarit Bhargava) [1837321] - Documentation/x86: Add documentation for using dynamic XSTATE features (Prarit Bhargava) [1837321] - selftests/x86/amx: Add context switch test (Prarit Bhargava) [1837321] - selftests/x86/amx: Add test cases for AMX state management (Prarit Bhargava) [1837321] - x86/fpu: Include vmalloc.h for vzalloc() (Prarit Bhargava) [1837321] - x86/fpu/amx: Enable the AMX feature in 64-bit mode (Prarit Bhargava) [1837321] - x86/fpu: Add XFD handling for dynamic states (Prarit Bhargava) [1837321] - x86/fpu: Calculate the default sizes independently (Prarit Bhargava) [1837321] - x86/fpu/amx: Define AMX state components and have it used for boot-time checks (Prarit Bhargava) [1837321] - x86/fpu/xstate: Prepare XSAVE feature table for gaps in state component numbers (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add fpstate_realloc()/free() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Add XFD #NM handler (Prarit Bhargava) [1837321] - x86/fpu: Update XFD state where required (Prarit Bhargava) [1837321] - x86/fpu: Add sanity checks for XFD (Prarit Bhargava) [1837321] - x86/fpu: Add XFD state to fpstate (Prarit Bhargava) [1837321] - x86/msr-index: Add MSRs for XFD (Prarit Bhargava) [1837321] - x86/cpufeatures: Add eXtended Feature Disabling (XFD) feature bit (Prarit Bhargava) [1837321] - x86/fpu: Reset permission and fpstate on exec() (Prarit Bhargava) [1837321] - x86/fpu: Prepare fpu_clone() for dynamically enabled features (Prarit Bhargava) [1837321] - x86/fpu/signal: Prepare for variable sigframe length (Prarit Bhargava) [1837321] - x86/signal: Use fpu::__state_user_size for sigalt stack validation (Prarit Bhargava) [1837321] - x86/fpu: Add basic helpers for dynamically enabled features (Prarit Bhargava) [1837321] - x86/arch_prctl: Add controls for dynamic XSTATE components (Prarit Bhargava) [1837321] - x86/fpu: Add fpu_state_config::legacy_features (Prarit Bhargava) [1837321] - x86/fpu: Add members to struct fpu to cache permission information (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide xstate_calculate_size() (Prarit Bhargava) [1837321] - x86/signal: Implement sigaltstack size validation (Prarit Bhargava) [1837321] - signal: Add an optional check for altstack size (Prarit Bhargava) [1837321] - x86/fpu: Remove old KVM FPU interface (Prarit Bhargava) [1837321] - x86/kvm: Convert FPU handling to a single swap buffer (Prarit Bhargava) [1837321] - x86/fpu: Provide infrastructure for KVM FPU cleanup (Prarit Bhargava) [1837321] - x86/fpu: Prepare for sanitizing KVM FPU code (Prarit Bhargava) [1837321] - x86/fpu/xstate: Move remaining xfeature helpers to core (Prarit Bhargava) [1837321] - x86/fpu: Rework restore_regs_from_fpstate() (Prarit Bhargava) [1837321] - x86/fpu: Mop up xfeatures_mask_uabi() (Prarit Bhargava) [1837321] - x86/fpu: Move xstate feature masks to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu: Move xstate size to fpu_*_cfg (Prarit Bhargava) [1837321] - x86/fpu/xstate: Cleanup size calculations (Prarit Bhargava) [1837321] - x86/fpu: Cleanup fpu__init_system_xstate_size_legacy() (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpu_config (Prarit Bhargava) [1837321] - x86/fpu/signal: Use fpstate for size and features (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for copy_uabi_to_xstate() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in __copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate in fpu_copy_kvm_uabi_to_fpstate() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/xstate: Use fpstate for os_xsave() (Prarit Bhargava) [1837321] - x86/fpu: Use fpstate::size (Prarit Bhargava) [1837321] - x86/fpu: Add size and mask information to fpstate (Prarit Bhargava) [1837321] - x86/process: Move arch_thread_struct_whitelist() out of line (Prarit Bhargava) [1837321] - x86/fpu: Do not leak fpstate pointer on fork (Prarit Bhargava) [1837321] - x86/fpu: Remove fpu::state (Prarit Bhargava) [1837321] - x86/math-emu: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/core: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/signal: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu/regset: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert tracing to fpstate (Prarit Bhargava) [1837321] - x86/KVM: Convert to fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs xstate component clearing (Prarit Bhargava) [1837321] - x86/fpu: Convert restore_fpregs_from_fpstate() to struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Convert fpstate_init() to struct fpstate (Prarit Bhargava) [1837321] - fpu/types.h: KABI fix Part I (Prarit Bhargava) [1837321] - x86/fpu: Provide struct fpstate (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy to user (Prarit Bhargava) [1837321] - x86/fpu: Provide a proper function for ex_handler_fprestore() (Prarit Bhargava) [1837321] - x86/fpu: Replace the includes of fpu/internal.h (Prarit Bhargava) [1837321] - x86/fpu: Mop up the internal.h leftovers (Prarit Bhargava) [1837321] - x86/sev: Include fpu/xcr.h (Prarit Bhargava) [1837321] - x86/fpu: Remove internal.h dependency from fpu/signal.h (Prarit Bhargava) [1837321] - x86/fpu: Move fpstate functions to api.h (Prarit Bhargava) [1837321] - x86/fpu: Move mxcsr related code to core (Prarit Bhargava) [1837321] - x86/fpu: Move fpregs_restore_userregs() to core (Prarit Bhargava) [1837321] - x86/fpu: Make WARN_ON_FPU() private (Prarit Bhargava) [1837321] - x86/fpu: Move legacy ASM wrappers to core (Prarit Bhargava) [1837321] - x86/fpu: Move os_xsave() and os_xrstor() to core (Prarit Bhargava) [1837321] - x86/fpu: Make os_xrstor_booting() private (Prarit Bhargava) [1837321] - x86/fpu: Clean up CPU feature tests (Prarit Bhargava) [1837321] - x86/fpu: Move context switch and exit to user inlines into sched.h (Prarit Bhargava) [1837321] - x86/fpu: Mark fpu__init_prepare_fx_sw_frame() as __init (Prarit Bhargava) [1837321] - x86/fpu: Rework copy_xstate_to_uabi_buf() (Prarit Bhargava) [1837321] - x86/fpu: Replace KVMs home brewed FPU copy from user (Prarit Bhargava) [1837321] - x86/fpu: Move KVMs FPU swapping to FPU core (Prarit Bhargava) [1837321] - x86/fpu/xstate: Mark all init only functions __init (Prarit Bhargava) [1837321] - x86/fpu/xstate: Provide and use for_each_xfeature() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup xstate xcomp_bv initialization (Prarit Bhargava) [1837321] - x86/fpu: Do not inherit FPU context for kernel and IO worker threads (Prarit Bhargava) [1837321] - x86/process: Clone FPU in copy_thread() (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless memset in fpu_clone() (Prarit Bhargava) [1837321] - x86/fpu: Cleanup the on_boot_cpu clutter (Prarit Bhargava) [1837321] - x86/fpu: Restrict xsaves()/xrstors() to independent states (Prarit Bhargava) [1837321] - x86/pkru: Remove useless include (Prarit Bhargava) [1837321] - x86/fpu: Update stale comments (Prarit Bhargava) [1837321] - x86/fpu: Remove pointless argument from switch_fpu_finish() (Prarit Bhargava) [1837321] - x86/fpu: Mask out the invalid MXCSR bits properly (Prarit Bhargava) [1837321] - x86/fpu: Restore the masking out of reserved MXCSR bits (Prarit Bhargava) [1837321] - x86/fpu/signal: Fix missed conversion to correct boolean retval in save_xstate_epilog() (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of restore_fpregs_from_user() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return code of check_xstate_in_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of __fpu_restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of fpu__restore_sig() to boolean (Prarit Bhargava) [1837321] - x86/signal: Change return type of restore_sigcontext() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpregs_to_sigframe() helpers to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Change return type of copy_fpstate_to_sigframe() to boolean (Prarit Bhargava) [1837321] - x86/fpu/signal: Move xstate clearing out of copy_fpregs_to_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Move header zeroing out of xsave_to_user_sigframe() (Prarit Bhargava) [1837321] - x86/fpu/signal: Clarify exception handling in restore_fpregs_from_user() (Prarit Bhargava) [1837321] - x86/elf: Support a new ELF aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - uapi/auxvec: Define the aux vector AT_MINSIGSTKSZ (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in restore_sigcontext() (Prarit Bhargava) [1837321] - x86: get rid of get_user_ex() in ia32_restore_sigcontext() (Prarit Bhargava) [1837321] - x86: Remove force_iret() (Prarit Bhargava) [1837321] - x86/uaccess, signal: Fix AC=1 bloat (Prarit Bhargava) [1837321] - x86/ia32: Fix ia32_restore_sigcontext() AC leak (Prarit Bhargava) [1837321] - x86/tsc: Add tsc_early_khz command line parameter (Prarit Bhargava) [1957375] - x86/debug: Support negative polarity DR6 bits (Prarit Bhargava) [2017958]- KVM: SVM: Do not terminate SEV-ES guests on GHCB validation failure (Vitaly Kuznetsov) [2032931] - KVM: SEV: Fall back to vmalloc for SEV-ES scratch area if necessary (Vitaly Kuznetsov) [2032931] - KVM: SEV: Return appropriate error codes if SEV-ES scratch setup fails (Vitaly Kuznetsov) [2032931] - KVM: SEV: Refactor out sev_es_state struct (Vitaly Kuznetsov) [2032931] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [1984910] - KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it went to guest (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: PPC: Book3S HV: Fix stack handling in idle_kvm_start_guest() (Jon Maloy) [2018960] {CVE-2021-43056} - KVM: arm64: selftests: arch_timer: Support vCPU migration (Gavin Shan) [2024808] - KVM: arm64: selftests: Add arch_timer test (Gavin Shan) [2024808] - KVM: arm64: selftests: Add host support for vGIC (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic GICv3 support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add light-weight spinlock support (Gavin Shan) [2024808] - KVM: arm64: selftests: Add guest support to get the vcpuid (Gavin Shan) [2024808] - KVM: arm64: selftests: Maintain consistency for vcpuid type (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support to disable and enable local IRQs (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support to generate delays (Gavin Shan) [2024808] - KVM: arm64: selftests: Add basic support for arch_timers (Gavin Shan) [2024808] - KVM: arm64: selftests: Add support for cpu_relax (Gavin Shan) [2024808] - KVM: arm64: selftests: Introduce ARM64_SYS_KVM_REG (Gavin Shan) [2024808] - tools: arm64: Import sysreg.h (Gavin Shan) [2024808] - KVM: arm64: selftests: Add MMIO readl/writel support (Gavin Shan) [2024808] - selftests: KVM: Introduce psci_cpu_on_test (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: actually enable pmu regs in pmu sublist (Gavin Shan) [2024808] - KVM: arm64: Update MAINTAINERS to include selftests (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Split base and pmu registers (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Remove get-reg-list-sve (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Provide config selection option (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Prepare to run multiple configs at once (Gavin Shan) [2024808] - KVM: arm64: selftests: get-reg-list: Introduce vcpu configs (Gavin Shan) [2024808] - sctp: make the raise timer more simple and accurate (Xin Long) [2020474] - Enable flowtable ipv4/ipv6 support (Phil Sutter) [1850324] - ip6_vti: initialize __ip6_tnl_parm struct in vti6_siocdevprivate (William Zhao) [1941928] - svcrdma: Fix a crash in svcrdma_counter_handler (Benjamin Coddington) [2037213] - fbcon: Fix global-out-of-bounds read in fbcon_get_font() (Lyude Paul) [1904374] - bnxt_en: Clean up completion ring page arrays completely (Ken Cox) [1987074] - bnxt_en: Fix error recovery regression (Ken Cox) [1987074] - bnxt_en: Fix possible unintended driver initiated error recovery (Ken Cox) [1987074] - bnxt_en: Fix UDP tunnel logic (Ken Cox) [1987074] - bnxt_en: Fix asic.rev in devlink dev info command (Ken Cox) [1987074] - bnxt_en: fix read of stored FW_PSID version on P5 devices (Ken Cox) [1987074] - bnxt_en: fix stored FW_PSID version masks (Ken Cox) [1987074] - bnxt_en: fix kernel doc warnings in bnxt_hwrm.c (Ken Cox) [1987074] - bnxt_en: Fix 64-bit doorbell operation on 32-bit kernels (Ken Cox) [1987074] - bnxt_en: support multiple HWRM commands in flight (Ken Cox) [1987074] - bnxt_en: remove legacy HWRM interface (Ken Cox) [1987074] - bnxt_en: update all firmware calls to use the new APIs (Ken Cox) [1987074] - bnxt_en: use link_lock instead of hwrm_cmd_lock to protect link_info (Ken Cox) [1987074] - bnxt_en: add support for HWRM request slices (Ken Cox) [1987074] - bnxt_en: add HWRM request assignment API (Ken Cox) [1987074] - bnxt_en: discard out of sequence HWRM responses (Ken Cox) [1987074] - bnxt_en: introduce new firmware message API based on DMA pools (Ken Cox) [1987074] - bnxt_en: move HWRM API implementation into separate file (Ken Cox) [1987074] - bnxt_en: Refactor the HWRM_VER_GET firmware calls (Ken Cox) [1987074] - bnxt_en: remove DMA mapping for KONG response (Ken Cox) [1987074] - bnxt: count discards due to memory allocation errors (Ken Cox) [1987074] - bnxt: count packets discarded because of netpoll (Ken Cox) [1987074] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987074] - bnxt_en: Add missing DMA memory barriers (Ken Cox) [1987074] - bnxt_en: Disable aRFS if running on 212 firmware (Ken Cox) [1987074] - bnxt: count Tx drops (Ken Cox) [1987074] - bnxt: make sure xmit_more + errors does not miss doorbells (Ken Cox) [1987074] - bnxt: disable napi before canceling DIM (Ken Cox) [1987074] - bnxt: don't lock the tx queue from napi poll (Ken Cox) [1987074] - bnxt_en: Use register window 6 instead of 5 to read the PHC (Ken Cox) [1987074] - bnxt_en: Update firmware call to retrieve TX PTP timestamp (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.52 (Ken Cox) [1987074] - bnxt_en: Increase maximum RX ring size if jumbo ring is not used (Ken Cox) [1987074] - bnxt_en: Don't use static arrays for completion ring pages (Ken Cox) [1987074] - bnxt_en: Add missing periodic PHC overflow check (Ken Cox) [1987074] - bnxt_en: Log if an invalid signal detected on TSIO pin (Ken Cox) [1987074] - bnxt_en: Event handler for PPS events (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS functions to configure TSIO pins (Ken Cox) [1987074 1990156] - bnxt_en: 1PPS support for 5750X family chips (Ken Cox) [1987074 1990156] - bnxt_en: Do not read the PTP PHC during chip reset (Ken Cox) [1987074 1990156] - bnxt_en: Move bnxt_ptp_init() from bnxt_open() back to bnxt_init_one() (Ken Cox) [1987074 1990156] - bnxt_en: Fix PTP capability discovery (Ken Cox) [1987074] - bnxt_en: Move bnxt_ptp_init() to bnxt_open() (Ken Cox) [1987074] - bnxt: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1987074] - bnxt_en: Enable hardware PTP support (Ken Cox) [1987074] - bnxt_en: Transmit and retrieve packet timestamps (Ken Cox) [1987074] - bnxt_en: Get the RX packet timestamp (Ken Cox) [1987074] - bnxt_en: Get the full 48-bit hardware timestamp periodically (Ken Cox) [1987074] - bnxt_en: Add PTP clock APIs, ioctls, and ethtool methods (Ken Cox) [1987074] - bnxt_en: Get PTP hardware capability from firmware (Ken Cox) [1987074] - bnxt_en: Update firmware interface to 1.10.2.47 (Ken Cox) [1987074] - bnxt_en: Fix fall-through warnings for Clang (Ken Cox) [1987074] - bnxt_en: Fix and improve .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Implement .ndo_features_check(). (Ken Cox) [1987074] - bnxt_en: Support IFF_SUPP_NOFCS feature to transmit without ethernet FCS. (Ken Cox) [1987074] - bnxt_en: Call bnxt_approve_mac() after the PF gives up control of the VF MAC. (Ken Cox) [1987074] - bnxt_en: Move bnxt_approve_mac(). (Ken Cox) [1987074] - bnxt_en: allow VF config ops when PF is closed (Ken Cox) [1987074] - bnxt_en: Add support for fw managed link down feature. (Ken Cox) [1987074] - bnxt_en: Add a new phy_flags field to the main driver structure. (Ken Cox) [1987074] - bnxt_en: report signal mode in link up messages (Ken Cox) [1987074] - bnxt: add more ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool standard stats (Ken Cox) [1987074] - bnxt: implement ethtool::get_fec_stats (Ken Cox) [1987074] - bnxt_en: Free and allocate VF-Reps during error recovery. (Ken Cox) [1987074] - bnxt_en: Refactor __bnxt_vf_reps_destroy(). (Ken Cox) [1987074] - bnxt_en: Refactor bnxt_vf_reps_create(). (Ken Cox) [1987074] - bnxt_en: Invalidate health register mapping at the end of probe. (Ken Cox) [1987074] - bnxt_en: Treat health register value 0 as valid in bnxt_try_reover_fw(). (Ken Cox) [1987074] - bnxt_en: Enhance retry of the first message to the firmware. (Ken Cox) [1987074] - bnxt_en: Set BNXT_STATE_FW_RESET_DET flag earlier for the RDMA driver. (Ken Cox) [1987074] - bnxt_en: check return value of bnxt_hwrm_func_resc_qcaps (Ken Cox) [1987074] - bnxt_en: don't fake firmware response success when PCI is disabled (Ken Cox) [1987074] - bnxt_en: Improve wait for firmware commands completion (Ken Cox) [1987074] - bnxt_en: Improve the status_reliable flag in bp->fw_health. (Ken Cox) [1987074] - Bluetooth: fix use-after-free error in lock_sock_nested() (Gopal Tiwari) [2005689] - rpmspec: add release string to kernel doc directory name (Jan Stancek) [1824836] - cpufreq: intel_pstate: Fix cpu->pstate.turbo_freq initialization (Mark Langsdorf) [2031830] - ACPI: CPPC: Add NULL pointer check to cppc_get_perf() (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Rework HWP calibration (Mark Langsdorf) [2031830] - ACPI: CPPC: Introduce cppc_get_nominal_perf() (Mark Langsdorf) [2031830] - cpufreq: Replace deprecated CPU-hotplug functions (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Fix build with CONFIG_ACPI unset (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: CPU-specific scaling factor (Mark Langsdorf) [2031830] - cpufreq: intel_pstate: hybrid: Avoid exposing two global attributes (Mark Langsdorf) [2031830] - ASoC: amd: renoir: Run hibernation callbacks (Renjith Pananchikkal) [1987617] - hugetlb: fix hugetlb cgroup refcounting during vma split (Waiman Long) [2032811] - hugetlb_cgroup: fix imbalanced css_get and css_put pair for shared mappings (Waiman Long) [2032811] - mm/hugetlb: change hugetlb_reserve_pages() to type bool (Waiman Long) [2032811] - hugetlb: fix an error code in hugetlb_reserve_pages() (Waiman Long) [2032811] - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations (Waiman Long) [2032811] - hugetlb_cgroup: fix reservation accounting (Waiman Long) [2032811] - mm/hugetlb: narrow the hugetlb_lock protection area during preparing huge page (Waiman Long) [2032811] - mm/hugetlb: a page from buddy is not on any list (Waiman Long) [2032811] - mm/hugetlb: not necessary to coalesce regions recursively (Waiman Long) [2032811] - selftests/vm/write_to_hugetlbfs.c: fix unused variable warning (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation tests (Waiman Long) [2032811] - hugetlb: support file_region coalescing again (Waiman Long) [2032811] - hugetlb_cgroup: support noreserve mappings (Waiman Long) [2032811] - hugetlb_cgroup: add accounting for shared mappings (Waiman Long) [2032811] - hugetlb: disable region_add file_region coalescing (Waiman Long) [2032811] - hugetlb_cgroup: add reservation accounting for private mappings (Waiman Long) [2032811] - mm/hugetlb_cgroup: fix hugetlb_cgroup migration (Waiman Long) [2032811] - hugetlb_cgroup: add interface for charge/uncharge hugetlb reservations (Waiman Long) [2032811] - hugetlb_cgroup: add hugetlb_cgroup reservation counter (Waiman Long) [2032811] - mm/vma: move VM_NO_KHUGEPAGED into generic header (Waiman Long) [2032811] - mm/cma.c: switch to bitmap_zalloc() for cma bitmap allocation (Waiman Long) [2032811] - hugetlb: remove duplicated code (Waiman Long) [2032811] - hugetlb: region_chg provides only cache entry (Waiman Long) [2032811] - arm64/mm: Refactor __do_page_fault() (Waiman Long) [2032811] - arm64/mm: Drop task_struct argument from __do_page_fault() (Waiman Long) [2032811] - hugetlbfs: always use address space in inode for resv_map pointer (Waiman Long) [2032811] - mm: remove redundant 'default n' from Kconfig-s (Waiman Long) [2032811] - hugetlbfs: fix potential over/underflow setting node specific nr_hugepages (Waiman Long) [2032811] - hugetlb: allow to free gigantic pages regardless of the configuration (Waiman Long) [2032811] - mm/cma.c: fix crash on CMA allocation if bitmap allocation fails (Waiman Long) [2032811] - mm/cma.c: fix the bitmap status to show failed allocation reason (Waiman Long) [2032811] - mm/cma_debug.c: fix the break condition in cma_maxchunk_get() (Waiman Long) [2032811] - mm: no need to check return value of debugfs_create functions (Waiman Long) [2032811] - x86/mm: Break out user address space handling (Waiman Long) [2032811] - fs: add vfs_parse_fs_param_source() helper (Waiman Long) [2034609] - cgroup: verify that source is a string (Waiman Long) [2034609] - ice: Fix E810 PTP reset flow (Jonathan Toppins) [2013478] - ice: Use div64_u64 instead of div_u64 in adjfine (Jonathan Toppins) [2013478] - ice: Don't put stale timestamps in the skb (Jonathan Toppins) [2013478] - ice: Fix problems with DSCP QoS implementation (Jonathan Toppins) [2030400] - ice: fix software generating extra interrupts (Jonathan Toppins) [2030400] - ice: fix rate limit update after coalesce change (Jonathan Toppins) [2030400] - ice: update dim usage and moderation (Jonathan Toppins) [2030400] - ice: make use of ice_for_each_* macros (Jonathan Toppins) [2030400] - ice: Remove boolean vlan_promisc flag from function (Jonathan Toppins) [2030400] - ice: check whether PTP is initialized in ice_ptp_release() (Jonathan Toppins) [2030400] - ice: devlink: Make devlink_register to be void (Jonathan Toppins) [2030400] - ice: split ice_ring onto Tx/Rx separate structs (Jonathan Toppins) [2030400] - ice: Prefer kcalloc over open coded arithmetic (Jonathan Toppins) [2030400] - ice: Fix macro name for IPv4 fragment flag (Jonathan Toppins) [2030400] - ice: refactor devlink getter/fallback functions to void (Jonathan Toppins) [2030400] - ice: Fix link mode handling (Jonathan Toppins) [2030400] - ice: Add feature bitmap, helpers and a check for DSCP (Jonathan Toppins) [2030400] - ice: Add DSCP support (Jonathan Toppins) [2030400]- fanotify: Make waits for fanotify events only killable (Miklos Szeredi) [1897416] - fanotify: Use interruptible wait when waiting for permission events (Miklos Szeredi) [1897416] - fanotify: Track permission event state (Miklos Szeredi) [1897416] - fanotify: Simplify cleaning of access_list (Miklos Szeredi) [1897416] - fsnotify: Create function to remove event from notification list (Miklos Szeredi) [1897416] - fanotify: Move locking inside get_one_event() (Miklos Szeredi) [1897416] - fanotify: Fold dequeue_event() into process_access_response() (Miklos Szeredi) [1897416] - fanotify: rename struct fanotify_{,perm_}event_info (Miklos Szeredi) [1897416] - RDMA/mlx5: Fix crash when unbind multiport slave (Amir Tzin) [1997386] - redhat: Fix mock.cfg cleanup in redhat/Makefile (Benjamin Coddington) - timekeeping: Use proper clock specifier names in functions (Josef Oskera) [2026471] - leds: ledtrig-activity: use ktime_get_boot_ns() (Josef Oskera) [2026471] - iio: use timespec64 based interfaces for iio_get_time_ns() (Josef Oskera) [2026471] - drivers: net: netdevsim: fix devlink_trap selftests failing (Petr Oros) [2021837] - netdevsim: remove max_vfs dentry (Petr Oros) [2021837] - netdevsim: Fix unsigned being compared to less than zero (Petr Oros) [2021837] - devlink: Protect rate list with lock while switching modes (Petr Oros) [2021837] - devlink: Remove eswitch mode check for mode set call (Petr Oros) [2021837] - devlink: Decrease refcnt of parent rate object on leaf destroy (Petr Oros) [2021837] - docs: networking: devlink: avoid using ReST :doc:`foo` markup (Petr Oros) [2021837] - testing: selftests: drivers: net: netdevsim: devlink: add test case for hard drop statistics (Petr Oros) [2021837] - drivers: net: netdevsim: add devlink trap_drop_counter_get implementation (Petr Oros) [2021837] - testing: selftests: net: forwarding: add devlink-required functionality to test (hard) dropped stats field (Petr Oros) [2021837] - net: core: devlink: add dropped stats traps field (Petr Oros) [2021837] - devlink: Fix error message in devlink_rate_set_ops_supported() (Petr Oros) [2021837] - Documentation: devlink rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate grouping test (Petr Oros) [2021837] - netdevsim: Allow setting parent node of rate objects (Petr Oros) [2021837] - devlink: Allow setting parent node of rate objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate nodes test (Petr Oros) [2021837] - netdevsim: Implement support for devlink rate nodes (Petr Oros) [2021837] - devlink: Introduce rate nodes (Petr Oros) [2021837] - selftest: netdevsim: Add devlink port shared/max tx rate test (Petr Oros) [2021837] - netdevsim: Implement devlink rate leafs tx rate support (Petr Oros) [2021837] - devlink: Allow setting tx rate for devlink rate leaf objects (Petr Oros) [2021837] - selftest: netdevsim: Add devlink rate test (Petr Oros) [2021837] - netdevsim: Register devlink rate leaf objects per VF (Petr Oros) [2021837] - devlink: Introduce rate object (Petr Oros) [2021837] - netdevsim: Implement legacy/switchdev mode for VFs (Petr Oros) [2021837] - netdevsim: Implement VFs (Petr Oros) [2021837] - netdevsim: Implement port types and indexing (Petr Oros) [2021837] - netdevsim: Disable VFs on nsim_dev_reload_destroy() call (Petr Oros) [2021837] - netdevsim: Add max_vfs to bus_dev (Petr Oros) [2021837] - devlink: append split port number to the port name (Petr Oros) [2021837] - devlink: Correct VIRTUAL port to not have phys_port attributes (Petr Oros) [2021837] - docs: net: add missing devlink health cmd - trigger (Petr Oros) [2021837] - docs: net: tweak devlink health documentation (Petr Oros) [2021837] - devlink: fix typo in documentation (Petr Oros) [2021837] - devlink: Extend devlink port documentation for subfunctions (Petr Oros) [2021837] - udp: Validate checksum in udp_read_sock() (Jiri Benc) [1947007] - bpf, sockmap: sk_skb data_end access incorrect when src_reg = dst_reg (Jiri Benc) [1947007] - bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding (Jiri Benc) [1947007] - selftests, bpf: Add one test for sockmap with strparser (Jiri Benc) [1947007] - selftests, bpf: Fix test_txmsg_ingress_parser error (Jiri Benc) [1947007] - skmsg: Lose offset info in sk_psock_skb_ingress (Jiri Benc) [1947007] - bpf, sockmap: Fix potential memory leak on unlikely error case (Jiri Benc) [1947007] - tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function (Jiri Benc) [1947007] - bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats (Jiri Benc) [1947007] - bpf, sockmap: Fix memleak on ingress msg enqueue (Jiri Benc) [1947007] - bpf, sockmap: On cleanup we additionally need to remove cached skb (Jiri Benc) [1947007] - skmsg: Increase sk->sk_drops when dropping packets (Jiri Benc) [1947007] - skmsg: Pass source psock to sk_psock_skb_redirect() (Jiri Benc) [1947007] - skmsg: Teach sk_psock_verdict_apply() to return errors (Jiri Benc) [1947007] - skmsg: Fix a memory leak in sk_psock_verdict_apply() (Jiri Benc) [1947007] - skmsg: Clear skb redirect pointer before dropping it (Jiri Benc) [1947007] - udp: Fix a memory leak in udp_read_sock() (Jiri Benc) [1947007] - selftests/bpf: Retry for EAGAIN in udp_redir_to_connected() (Jiri Benc) [1947007] - skmsg: Improve udp_bpf_recvmsg() accuracy (Jiri Benc) [1947007] - bpf: Limit static tcp-cc functions in the .BTF_ids list to x86 (Jiri Benc) [1947007] - flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target() (Jiri Benc) [1947007] - sock_map: Fix a potential use-after-free in sock_map_close() (Jiri Benc) [1947007] - skmsg: Pass psock pointer to ->psock_update_sk_prot() (Jiri Benc) [1947007] - bpf, udp: Remove some pointless comments (Jiri Benc) [1947007] - selftests/bpf: Add a test case for loading BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - selftests/bpf: Add a test case for udp sockmap (Jiri Benc) [1947007] - sock_map: Update sock type checks for UDP (Jiri Benc) [1947007] - udp: Implement udp_bpf_recvmsg() for sockmap (Jiri Benc) [1947007] - skmsg: Extract __tcp_bpf_recvmsg() and tcp_bpf_wait_data() (Jiri Benc) [1947007] - udp: Implement ->read_sock() for sockmap (Jiri Benc) [1947007] - sock: Introduce sk->sk_prot->psock_update_sk_prot() (Jiri Benc) [1947007] - sock_map: Introduce BPF_SK_SKB_VERDICT (Jiri Benc) [1947007] - sock_map: Kill sock_map_link_no_progs() (Jiri Benc) [1947007] - sock_map: Simplify sock_map_link() a bit (Jiri Benc) [1947007] - skmsg: Use GFP_KERNEL in sk_psock_create_ingress_msg() (Jiri Benc) [1947007] - skmsg: Use rcu work for destroying psock (Jiri Benc) [1947007] - skmsg: Avoid lock_sock() in sk_psock_backlog() (Jiri Benc) [1947007] - net: Introduce skb_send_sock() for sock_map (Jiri Benc) [1947007] - skmsg: Introduce a spinlock to protect ingress_msg (Jiri Benc) [1947007] - skmsg: Lock ingress_skb when purging (Jiri Benc) [1947007] - bpf: tcp: Limit calling some tcp cc functions to CONFIG_DYNAMIC_FTRACE (Jiri Benc) [1947007] - bpf: tcp: Fix an error in the bpf_tcp_ca_kfunc_ids list (Jiri Benc) [1947007] - bpf: tcp: Remove comma which is causing build error (Jiri Benc) [1947007] - bpf: tcp: Put some tcp cong functions in allowlist for bpf-tcp-cc (Jiri Benc) [1947007] - tcp: Rename bictcp function prefix to cubictcp (Jiri Benc) [1947007] - bpf: Add getter and setter for SO_REUSEPORT through bpf_{g,s}etsockopt (Jiri Benc) [1947007] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Jiri Benc) [1947007] - xsk: Update rings for load-acquire/store-release barriers (Jiri Benc) [1947007] - skmsg: Add function doc for skb->_sk_redir (Jiri Benc) [1947007] - skmsg: Remove unused sk_psock_stop() declaration (Jiri Benc) [1947007] - skmsg: Get rid of sk_psock_bpf_run() (Jiri Benc) [1947007] - skmsg: Make __sk_psock_purge_ingress_msg() static (Jiri Benc) [1947007] - sock_map: Make sock_map_prog_update() static (Jiri Benc) [1947007] - sock_map: Rename skb_parser and skb_verdict (Jiri Benc) [1947007] - skmsg: Move sk_redir from TCP_SKB_CB to skb (Jiri Benc) [1947007] - bpf: Compute data_end dynamically with JIT code (Jiri Benc) [1947007] - skmsg: Get rid of struct sk_psock_parser (Jiri Benc) [1947007] - bpf: Clean up sockmap related Kconfigs (Jiri Benc) [1947007] - xsk: Build skb by page (aka generic zerocopy xmit) (Jiri Benc) [1947007] - xsk: Respect device's headroom and tailroom on generic xmit path (Jiri Benc) [1947007] - virtio-net: Support IFF_TX_SKB_NO_LINEAR flag (Jiri Benc) [1947007] - net: Add priv_flags for allow tx skb without linear (Jiri Benc) [1947007] - netdevice: Add missing IFF_PHONY_HEADROOM self-definition (Jiri Benc) [1947007] - skmsg: Make sk_psock_destroy() static (Jiri Benc) [1947007] - skmsg: Use fallthrough pseudo-keyword (Jiri Benc) [1947007] - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP (Jiri Benc) [1947007] - virtio_net: Account for tx bytes and packets on sending xdp_frames (Jiri Benc) [1947007] - inet: udp{4|6}_lib_lookup_skb() skb argument is const (Jiri Benc) [1947007] - inet: constify inet_sdif() argument (Jiri Benc) [1947007] - udp: move gro declarations to net/udp.h (Jiri Benc) [1947007] - net: move tcp gro declarations to net/tcp.h (Jiri Benc) [1947007] - tcp: add declarations to avoid warnings (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->send_check (Jiri Benc) [1947007] - tcp: remove indirect calls for icsk->icsk_af_ops->queue_xmit (Jiri Benc) [1947007] - net: remove unused skb_send_sock() (Jiri Benc) [1947007] - net: Use skb_frag_off accessors (Jiri Benc) [1947007] - net: Use skb accessors in network core (Jiri Benc) [1947007] - skbuff: fix compilation warnings in skb_dump() (Jiri Benc) [1947007] - skbuff: increase verbosity when dumping skb data (Jiri Benc) [1947007] - net: dump more useful information in netdev_rx_csum_fault() (Jiri Benc) [1947007] - net: avoid indirect calls in L4 checksum calculation (Jiri Benc) [1947007] - net/core: Allow the compiler to verify declaration and definition consistency (Jiri Benc) [1947007] - efi/arm64: Drop erroneous '__pure' attribute from set_nokaslr() (Vitaly Kuznetsov) [2026995] - drm/nouveau: clean up all clients on device removal (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: Add a dedicated mutex for the clients list (Karol Herbst) [1901903] {CVE-2020-27820} - drm/nouveau: use drm_dev_unplug() during device removal (Karol Herbst) [1901903] {CVE-2020-27820} - block: avoid to quiesce queue in elevator_init_mq (Ming Lei) [2025759] - blk-mq: cancel blk-mq dispatch work in both blk_cleanup_queue and disk_release() (Ming Lei) [2021399] - PCI/portdrv: Enable Bandwidth Notification only if port supports it (Myron Stowe) [1981738] - cifs: keep referral server sessions alive (Ronnie Sahlberg) [2030880] - cifs: check pointer before freeing (Ronnie Sahlberg) [2030880] - cifs: constify path argument of ->make_node() (Ronnie Sahlberg) [2030880] - cifs: constify get_normalized_path() properly (Ronnie Sahlberg) [2030880] - cifs: don't cargo-cult strndup() (Ronnie Sahlberg) [2030880] - cifs: cleanup misc.c (Ronnie Sahlberg) [2030880] - cifs: get rid of @noreq param in __dfs_cache_find() (Ronnie Sahlberg) [2030880] - cifs: do not send tree disconnect to ipc shares (Ronnie Sahlberg) [2030880] - cifs: fix doc warnings in cifs_dfs_ref.c (Ronnie Sahlberg) [2030880] - cifs: introduce helper for finding referral server to improve DFS target resolution (Ronnie Sahlberg) [2030880] - cifs: check all path components in resolved dfs target (Ronnie Sahlberg) [2030880] - cifs: fix DFS failover (Ronnie Sahlberg) [2030880] - Enable CONFIG_SCHED_CLUSTER (Phil Auld) [1920645] - sched,x86: Don't use cluster topology for x86 hybrid CPUs (Phil Auld) [1920645] - arch_topology: Fix missing clear cluster_cpumask in remove_cpu_topology() (Phil Auld) [1920645] - x86/smp: Factor out parts of native_smp_prepare_cpus() (Phil Auld) [1920645] - sched,x86: Fix L2 cache mask (Phil Auld) [1920645] - sched: Add cluster scheduler level for x86 (Phil Auld) [1920645] - sched: Add cluster scheduler level in core and related Kconfig for ARM64 (Phil Auld) [1920645] - topology: Represent clusters of CPUs within a die (Phil Auld) [1920645] - cpumask: Omit terminating null byte in cpumap_print_{list,bitmask}_to_buf (Phil Auld) [1920645] - drivers/base/node.c: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - topology: use bin_attribute to break the size limitation of cpumap ABI (Phil Auld) [1920645] - cpumask: introduce cpumap_print_list/bitmask_to_buf to support large bitmask and list (Phil Auld) [1920645] - x86/cpu: Add get_llc_id() helper function (Phil Auld) [1920645] - x86/smp: Add a per-cpu view of SMT state (Phil Auld) [1920645] - ARM: 8943/1: Fix topology setup in case of CPU hotplug for CONFIG_SCHED_MC (Phil Auld) [1920645] - arm: Use common cpu_topology structure and functions. (Phil Auld) [1920645] - cpu-topology: Move cpu topology code to common code. (Phil Auld) [1920645] - netfilter: ctnetlink: allow to filter dump by status bits (Florian Westphal) [1991526] - netfilter: ctnetlink: add and use a helper for mark parsing (Florian Westphal) [1991526] - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo (Florian Westphal) [1991526] - netfilter: ctnetlink: add timeout and protoinfo to destroy events (Florian Westphal) [1991526] - netfilter: ctnetlink: fix mark based dump filtering regression (Florian Westphal) [1991526] - netfilter: ctnetlink: memleak in filter initialization error path (Florian Westphal) [1991526] - netfilter: ctnetlink: add kernel side filtering for dump (Florian Westphal) [1991526] - netfilter: ctnetlink: don't dump ct extensions of unconfirmed conntracks (Florian Westphal) [1991526] - netfilter: ctnetlink: be more strict when NF_CONNTRACK_MARK is not set (Florian Westphal) [1991526] - netfilter: ctnetlink: Fix regression in conntrack entry deletion (Florian Westphal) [1991526] - netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression (Florian Westphal) [1991526] - netfilter: ctnetlink: always honor CTA_MARK_MASK (Florian Westphal) [1991526] - netfilter: ctnetlink: must check mark attributes vs NULL (Florian Westphal) [1991526] - netfilter: ctnetlink: Support L3 protocol-filter on flush (Florian Westphal) [1991526] - netfilter: nftables: fix incorrect increment of loop counter (Phil Sutter) [1983635] - netfilter: nf_tables: initialize set before expression setup (Phil Sutter) [1983635] - netfilter: nftables: add set expression flags (Phil Sutter) [1983635] - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature (Phil Sutter) [1983635] - netfilter: nft_dynset: dump expressions when set definition contains no expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: honor stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: do not leave dangling pointer in nf_tables_set_alloc_name (Phil Sutter) [1983635] - netfilter: nftables: clone set element expression template (Phil Sutter) [1983635] - netfilter: nftables: relax check for stateful expressions in set definition (Phil Sutter) [1983635] - netfilter: nftables: netlink support for several set element expressions (Phil Sutter) [1983635] - netfilter: nf_tables: skip set types that do not support for expressions (Phil Sutter) [1983635] - netfilter: nft_dynset: allow dynamic updates of non-anonymous set (Phil Sutter) [1983635] - netfilter: nftables: generalize set extension to support for several expressions (Phil Sutter) [1983635] - netfilter: nf_tables: do not update stateful expressions if lookup is inverted (Phil Sutter) [1983635] - netfilter: nftables: move nft_expr before nft_set (Phil Sutter) [1983635] - netfilter: nf_tables: Align nft_expr private data to 64-bit (Phil Sutter) [1983635] - netfilter: nftables: generalize set expressions support (Phil Sutter) [1983635] - netfilter: nft_dynset: validate set expression definition (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_destroy() and use it (Phil Sutter) [1983635] - netfilter: nf_tables: fix double-free on set expression from the error path (Phil Sutter) [1983635] - netfilter: nf_tables: allow to specify stateful expression in set definition (Phil Sutter) [1983635] - netfilter: nf_tables: bogus EBUSY when deleting set after flush (Phil Sutter) [1983635] - netfilter: nf_tables: pass context to nft_set_destroy() (Phil Sutter) [1983635] - netfilter: nf_tables: move nft_expr_clone() to nf_tables_api.c (Phil Sutter) [1983635] - netfilter: nf_tables: relocate header content to consumer (Phil Sutter) [1983635] - netfilter: nft_lookup: update element stateful expression (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_update_expr() helper function (Phil Sutter) [1983635] - netfilter: nf_tables: add elements with stateful expressions (Phil Sutter) [1983635] - netfilter: nf_tables: statify nft_expr_init() (Phil Sutter) [1983635] - netfilter: nf_tables: add nft_set_elem_expr_alloc() (Phil Sutter) [1983635] - netfilter: nf_tables: enable set expiration time for set elements (Phil Sutter) [1983635] - hugetlbfs: flush TLBs correctly after huge_pmd_unshare (Rafael Aquini) [2026376] {CVE-2021-4002} - tlb: mmu_gather: add tlb_flush_*_range APIs (Rafael Aquini) [2026376] {CVE-2021-4002} - ACPI: PM: Do not turn off power resources in unknown state (Mark Langsdorf) [1997696] - ACPI: PRM: Find PRMT table before parsing it (Mark Langsdorf) [1997696] - ACPI: NFIT: Fix support for virtual SPA ranges (Mark Langsdorf) [1997696] - ACPI: DPTF: Fix reading of attributes (Mark Langsdorf) [1997696] - ACPI: PM: Add support for upcoming AMD uPEP HID AMDI007 (Mark Langsdorf) [1997696] - ACPI: Kconfig: Fix table override from built-in initrd (Mark Langsdorf) [1997696] - ACPI: video: Add quirk for the Dell Vostro 3350 (Mark Langsdorf) [1997696] - ACPI: AMBA: Fix resource name in /proc/iomem (Mark Langsdorf) [1997696] - ACPI: PM: postpone bringing devices to D0 unless we need them (Mark Langsdorf) [1997696] - ACPI: tables: Add custom DSDT file as makefile prerequisite (Mark Langsdorf) [1997696] - ACPI: bgrt: Use sysfs_emit (Mark Langsdorf) [1997696] - ACPI: bgrt: Fix CFI violation (Mark Langsdorf) [1997696] - ACPI: EC: trust DSDT GPE for certain HP laptop (Mark Langsdorf) [1997696] - ACPI: scan: Simplify acpi_table_events_fn() (Mark Langsdorf) [1997696] - ACPI: sysfs: Remove tailing return statement in void function (Mark Langsdorf) [1997696] - ACPI: sysfs: Use __ATTR_RO() and __ATTR_RW() macros (Mark Langsdorf) [1997696] - ACPI: sysfs: Sort headers alphabetically (Mark Langsdorf) [1997696] - ACPI: sysfs: Refactor param_get_trace_state() to drop dead code (Mark Langsdorf) [1997696] - ACPI: sysfs: Unify pattern of memory allocations (Mark Langsdorf) [1997696] - ACPI: sysfs: Allow bitmap list to be supplied to acpi_mask_gpe (Mark Langsdorf) [1997696] - ACPI: sysfs: Make sparse happy about address space in use (Mark Langsdorf) [1997696] - ACPI: scan: Fix race related to dropping dependencies (Mark Langsdorf) [1997696] - ACPI: scan: Reorganize acpi_device_add() (Mark Langsdorf) [1997696] - ACPI: scan: Fix device object rescan in acpi_scan_clear_dep() (Mark Langsdorf) [1997696] - ACPI: scan: Make acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange acpi_dev_get_first_consumer_dev_cb() (Mark Langsdorf) [1997696] - ACPI: scan: Define acpi_bus_put_acpi_device() as static inline (Mark Langsdorf) [1997696] - ACPI: NVS: fix doc warnings in nvs.c (Mark Langsdorf) [1997696] - ACPI: sysfs: fix doc warnings in device_sysfs.c (Mark Langsdorf) [1997696] - ACPI: APEI: fix synchronous external aborts in user-mode (Mark Langsdorf) [1997696] - mfd: tps68470: Remove tps68470 MFD driver (Mark Langsdorf) [1997696] - ACPI: power: Use dev_dbg() to print some messages (Mark Langsdorf) [1997696] - ACPI: Add quirks for AMD Renoir/Lucienne CPUs to force the D3 hint (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Fix several coding style issues (Mark Langsdorf) [1997696] - ACPI: sysfs: Drop four redundant return statements (Mark Langsdorf) [1997696] - ACPI: video: Drop three redundant return statements (Mark Langsdorf) [1997696] - ACPI: sleep: Fix acpi_pm_pre_suspend() kernel-doc (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Remove redundant initialization of 'obj' (Mark Langsdorf) [1997696] - ACPI: utils: Introduce acpi_get_local_address() (Mark Langsdorf) [1997696] - ACPI: scan: initialize local variable to avoid garbage being returned (Mark Langsdorf) [1997696] - ACPI: Remove redundant clearing of context->ret.pointer from acpi_run_osc() (Mark Langsdorf) [1997696] - redhat/configs: Add Enable CONFIG_ACPI_PRMT (Mark Langsdorf) [1997696] - ACPI: PRM: Deal with table not present or no module found (Mark Langsdorf) [1997696] - ACPI: Do not singal PRM support if not enabled (Mark Langsdorf) [1997696] - ACPI: Kconfig: Provide help text for the ACPI_PRMT option (Mark Langsdorf) [1997696] - ACPI: PRM: make symbol 'prm_module_list' static (Mark Langsdorf) [1997696] - ACPI: Correct \_SB._OSC bit definition for PRM (Mark Langsdorf) [1997696] - ACPI: Add \_SB._OSC bit for PRM (Mark Langsdorf) [1997696] - ACPI: PRM: implement OperationRegion handler for the PlatformRtMechanism subtype (Mark Langsdorf) [1997696] - ACPICA: Add PRMT module header to facilitate parsing (Mark Langsdorf) [1997696] - ACPI: scan: Add function to fetch dependent of ACPI device (Mark Langsdorf) [1997696] - ACPI: scan: Extend acpi_walk_dep_device_list() (Mark Langsdorf) [1997696] - i2c: core: Restore acpi_walk_dep_device_list() getting called after registering the ACPI i2c devs (Mark Langsdorf) [1997696] - ACPI: NUMA: fix typo in a comment (Mark Langsdorf) [1997696] - ACPI: sysfs: Fix a buffer overrun problem with description_show() (Mark Langsdorf) [1997696] - ACPI: LPSS: Use kstrtol() instead of simple_strtol() (Mark Langsdorf) [1997696] - ACPI: tables: FPDT: Add missing acpi_put_table() in acpi_init_fpdt() (Mark Langsdorf) [1997696] - ACPI: tables: PPTT: Populate cache-id if provided by firmware (Mark Langsdorf) [1997696] - ACPI: OSL: Use DEFINE_RES_IO_NAMED() to simplify code (Mark Langsdorf) [1997696] - ACPI: bus: Call kobject_put() in acpi_init() error path (Mark Langsdorf) [1997696] - ACPI: bus: Remove unneeded assignment (Mark Langsdorf) [1997696] - ACPI: sleep: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sbs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: scan: Unify the log message printing (Mark Langsdorf) [1997696] - ACPI: sbshc: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: sysfs: Cleanup message printing (Mark Langsdorf) [1997696] - ACPI: reboot: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: processor_throttling: Cleanup the printing messages (Mark Langsdorf) [1997696] - ACPI: processor_perflib: Cleanup print messages (Mark Langsdorf) [1997696] - ACPI: processor_thermal: Remove unused PREFIX for printing (Mark Langsdorf) [1997696] - ACPI: pci_root: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: osl: Remove the duplicated PREFIX for message printing (Mark Langsdorf) [1997696] - ACPI: nvs: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: glue: Clean up the printing messages (Mark Langsdorf) [1997696] - ACPI: event: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: bus: Use pr_*() macros to replace printk() (Mark Langsdorf) [1997696] - ACPI: blacklist: Unify the message printing (Mark Langsdorf) [1997696] - ACPI: cmos_rtc: Using pr_fmt() and remove PREFIX (Mark Langsdorf) [1997696] - ACPI: scan: Constify acpi_dma_supported() helper function (Mark Langsdorf) [1997696] - ACPICA: Update version to 20210604 (Mark Langsdorf) [1997696] - ACPICA: Add support for PlatformRtMechanism OperationRegion handler (Mark Langsdorf) [1997696] - ACPICA: iASL: add disassembler support for PRMT (Mark Langsdorf) [1997696] - ACPICA: Add the CFMWS structure definition to the CEDT table (Mark Langsdorf) [1997696] - ACPICA: Add defines for the CXL Host Bridge Structure (CHBS) (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the BDAT ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add _PLD panel positions (Mark Langsdorf) [1997696] - ACPICA: Use ACPI_FALLTHROUGH (Mark Langsdorf) [1997696] - ACPICA: iASL Table Compiler: Add full support for RGRT ACPI table (Mark Langsdorf) [1997696] - ACPICA: iASL: Add support for the SVKL table (Mark Langsdorf) [1997696] - ACPICA: iASL: Finish support for the IVRS ACPI table (Mark Langsdorf) [1997696] - ACPICA: Add SVKL table headers (Mark Langsdorf) [1997696] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Mailbox Structure (Mark Langsdorf) [1997696] - ACPI: power: Rework turning off unused power resources (Mark Langsdorf) [1997696] - ACPI: power: Save the last known state of each power resource (Mark Langsdorf) [1997696] - ACPI: power: Use u8 as the power resource state data type (Mark Langsdorf) [1997696] - ACPI: configfs: Replace ACPI_INFO() with pr_debug() (Mark Langsdorf) [1997696] - ACPI: ipmi: Remove address space handler in error path (Mark Langsdorf) [1997696] - ACPI: EC: Make more Asus laptops use ECDT _GPE (Mark Langsdorf) [1997696] - ACPI: event: Remove redundant initialization of local variable (Mark Langsdorf) [1997696] - ACPI: sbshc: Fix fall-through warning for Clang (Mark Langsdorf) [1997696] - ACPI: PM / fan: Put fan device IDs into separate header file (Mark Langsdorf) [1997696] - ACPI: APEI: Don't warn if ACPI is disabled (Mark Langsdorf) [1997696] - ACPI: processor idle: Fix up C-state latency if not ordered (Mark Langsdorf) [1997696] - ACPI: scan: Rearrange dep_unmet initialization (Mark Langsdorf) [1997696] - ACPI: DPTF: Add battery participant for Intel SoCs (Mark Langsdorf) [1997696] - md/raid5: avoid device_lock in read_one_chunk() (Nigel Croxon) [1985919] - md: add comments in md_integrity_register (Nigel Croxon) [1985919] - md: check level before create and exit io_acct_set (Nigel Croxon) [1985919] - md/raid10: enable io accounting (Nigel Croxon) [1985919] - md/raid1: enable io accounting (Nigel Croxon) [1985919] - md/raid5: avoid redundant bio clone in raid5_read_one_chunk (Nigel Croxon) [1985919] - md/raid5: move checking badblock before clone bio in raid5_read_one_chunk (Nigel Croxon) [1985919] - md: add io accounting for raid0 and raid5 (Nigel Croxon) [1985919] - md: revert io stats accounting (Nigel Croxon) [1985919] - md/raid5: remove an incorrect assert in in_chunk_boundary (Nigel Croxon) [1985919] - md: use rdev_read_only in restart_array (Nigel Croxon) [1985919] - md/raid6: refactor raid5_read_one_chunk (Nigel Croxon) [1985919] - md: remove md_bio_alloc_sync (Nigel Croxon) [1985919] - md: simplify sync_page_io (Nigel Croxon) [1985919] - md: remove bio_alloc_mddev (Nigel Croxon) [1985919] - md: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct (Nigel Croxon) [1985919] - md: improve io stats accounting (Nigel Croxon) [1985919]- ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970663] - igbvf: convert to strongly typed descriptors (Corinna Vinschen) [1970663] - intel: call csum functions with well formatted arguments (Corinna Vinschen) [1970663] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970663] - igb: fix netpoll exit with traffic (Corinna Vinschen) [1970662] - igb: unbreak I2C bit-banging on i350 (Corinna Vinschen) [1970662] - ethernet: use eth_hw_addr_set() for dev->addr_len cases (Corinna Vinschen) [1970662] - igb: Avoid memcpy() over-reading of ETH_SS_STATS (Corinna Vinschen) [1970662] - igb: Add counter to i21x doublecheck (Corinna Vinschen) [1970662] - igb: Fix position of assignment to *ring (Corinna Vinschen) [1970662] - igb: Check if num of q_vectors is smaller than max before array access (Corinna Vinschen) [1970662] - igb: Fix an error handling path in 'igb_probe()' (Corinna Vinschen) [1970662] - igb: Fix use-after-free error during reset (Corinna Vinschen) [1970662] - intel: Remove rcu_read_lock() around XDP program invocation (Corinna Vinschen) [1970662] - igb: add correct exception tracing for XDP (Corinna Vinschen) [1970662] - igb: Fix XDP with PTP enabled (Corinna Vinschen) [1970662] - igb: Fix -Wunused-const-variable warning (Corinna Vinschen) [1970662] - igb: override two checker warnings (Corinna Vinschen) [1970662] - igb: fix assignment on big endian machines (Corinna Vinschen) [1970662] - igb: handle vlan types with checker enabled (Corinna Vinschen) [1970662] - igb/igc: use strongly typed pointer (Corinna Vinschen) [1970662] - intel: remove checker warning (Corinna Vinschen) [1970662] - i40e: Fix NULL pointer dereference in i40e_dbg_dump_desc (Stefan Assmann) [1970651] - i40e: Fix pre-set max number of queues for VF (Stefan Assmann) [1970651] - i40e: Fix failed opcode appearing if handling messages from VF (Stefan Assmann) [1970651] - i40e: Fix display error code in dmesg (Stefan Assmann) [1970651] - i40e: Fix creation of first queue by omitting it if is not power of two (Stefan Assmann) [1970651] - i40e: Fix warning message and call stack during rmmod i40e driver (Stefan Assmann) [1970651] - i40e: Fix ping is lost after configuring ADq on VF (Stefan Assmann) [1970651] - i40e: Fix changing previously set num_queue_pairs for PFs (Stefan Assmann) [1970651] - i40e: Fix NULL ptr dereference on VSI filter sync (Stefan Assmann) [1970651] - i40e: Fix correct max_pkt_size on VF RX queue (Stefan Assmann) [1970651] - ethernet: constify references to netdev->dev_addr in drivers (Stefan Assmann) [1970651] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970651] - i40e: Fix ATR queue selection (Stefan Assmann) [1970651] - i40e: Fix spelling mistake "dissable" -> "disable" (Stefan Assmann) [1970651] - iavf: do not override the adapter state in the watchdog task (again) (Stefan Assmann) [1970650] - iavf: missing unlocks in iavf_watchdog_task() (Stefan Assmann) [1970650] - iavf: Fix reporting when setting descriptor count (Stefan Assmann) [1970650] - iavf: restore MSI state on reset (Stefan Assmann) [1970650] - iavf: Fix displaying queue statistics shown by ethtool (Stefan Assmann) [1970650] - iavf: Refactor string format to avoid static analysis warnings (Stefan Assmann) [1970650] - iavf: Refactor text of informational message (Stefan Assmann) [1970650] - iavf: Fix static code analysis warning (Stefan Assmann) [1970650] - iavf: Refactor iavf_mac_filter struct memory usage (Stefan Assmann) [1970650] - iavf: Enable setting RSS hash key (Stefan Assmann) [1970650] - iavf: Add trace while removing device (Stefan Assmann) [1970650] - iavf: return errno code instead of status code (Stefan Assmann) [1970650] - iavf: Log info when VF is entering and leaving Allmulti mode (Stefan Assmann) [1970650] - iavf: Add change MTU message (Stefan Assmann) [1970650] - iavf: Fix VLAN feature flags after VFR (Stefan Assmann) [1970650] - iavf: Fix refreshing iavf adapter stats on ethtool request (Stefan Assmann) [1970650] - iavf: Fix deadlock occurrence during resetting VF interface (Stefan Assmann) [1970650] - iavf: Prevent changing static ITR values if adaptive moderation is on (Stefan Assmann) [1970650] - iavf: Restore VLAN filters after link down (Stefan Assmann) [1970650] - iavf: Fix for setting queues to 0 (Stefan Assmann) [1970650] - iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset (Stefan Assmann) [1970650] - iavf: validate pointers (Stefan Assmann) [1970650] - iavf: prevent accidental free of filter structure (Stefan Assmann) [1970650] - iavf: Fix failure to exit out from last all-multicast mode (Stefan Assmann) [1970650] - iavf: don't clear a lock we don't hold (Stefan Assmann) [1970650] - iavf: free q_vectors before queues in iavf_disable_vf (Stefan Assmann) [1970650] - iavf: check for null in iavf_fix_features (Stefan Assmann) [1970650] - iavf: Fix return of set the new channel count (Stefan Assmann) [1970650] - iavf: Fix kernel BUG in free_msi_irqs (Stefan Assmann) [1970650] - iavf: Add helper function to go from pci_dev to adapter (Stefan Assmann) [1970650] - iavf: Combine init and watchdog state machines (Stefan Assmann) [1970650] - iavf: Add __IAVF_INIT_FAILED state (Stefan Assmann) [1970650] - iavf: Refactor iavf state machine tracking (Stefan Assmann) [1970650] - iavf: fix double unlock of crit_lock (Stefan Assmann) [1970650] - ethernet: use eth_hw_addr_set() instead of ether_addr_copy() (Stefan Assmann) [1970650] - iavf: Fix ping is lost after untrusted VF had tried to change MAC (Stefan Assmann) [1970650] - iavf: use mutexes for locking of critical sections (Stefan Assmann) [1970650] - qed: rdma - don't wait for resources under hw error recovery flow (Manish Chopra) [1998195] - qed: Handle management FW error (Manish Chopra) [1998195] - qede: Fix memset corruption (Manish Chopra) [1998195] - qed: Enable automatic recovery on error condition. (Manish Chopra) [1998195] - qed: Fix the VF msix vectors flow (Manish Chopra) [1998195] - qed: Fix null-pointer dereference in qed_rdma_create_qp() (Manish Chopra) [1998195] - qed: qed ll2 race condition fixes (Manish Chopra) [1998195] - qed: Remove duplicated include of kernel.h (Manish Chopra) [1998195] - qed: Remove redundant prints from the iWARP SYN handling (Manish Chopra) [1998195] - qed: Skip DORQ attention handling during recovery (Manish Chopra) [1998195] - qed: Avoid db_recovery during recovery (Manish Chopra) [1998195] - qede: fix crash in rmmod qede while automatic debug collection (Manish Chopra) [1998195] - RDMA/qedr: Improve error logs for rdma_alloc_tid error return (Manish Chopra) [1998195] - RDMA/qed: Use accurate error num in qed_cxt_dynamic_ilt_alloc (Manish Chopra) [1998195] - net: qed: remove unneeded return variables (Manish Chopra) [1998195] - net: qede: Fix end of loop tests for list_for_each_entry (Manish Chopra) [1998195] - qede: Remove rcu_read_lock() around XDP program invocation (Manish Chopra) [1998195] - net: qed: Fix memcpy() overflow of qed_dcbx_params() (Manish Chopra) [1998195] - net: qede: Use list_for_each_entry() to simplify code (Manish Chopra) [1998195] - qed: Fix duplicate included linux/kernel.h (Manish Chopra) [1998195] - qed: Add IP services APIs support (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW Initializations (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload IO Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add support of HW filter block (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload Connection Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add NVMeTCP Offload PF Level FW and HW HSI (Manish Chopra) [1998195] - qed: Add TCP_ULP FW resource layout (Manish Chopra) [1998195] - net: qed: remove redundant initialization of variable rc (Manish Chopra) [1998195] - net: qed: remove unused including (Manish Chopra) [1998195] - qede: remove unused including (Manish Chopra) [1998195] - linux/qed: Mundane spelling fixes throughout the file (Manish Chopra) [1998195] - qed: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Use true and false for bool variable (Manish Chopra) [1998195] - qede: preserve per queue stats across up/down of interface (Manish Chopra) [1998195] - qede: add per queue coalesce support for qede driver (Manish Chopra) [1998195] - qede: add netpoll support for qede driver (Manish Chopra) [1998195] - RDMA/qedr: Remove in_irq() usage from debug output (Manish Chopra) [1998195] - linux/qed: fix spelling typo in qed_chain.h (Manish Chopra) [1998195] - qed: select CONFIG_CRC32 (Manish Chopra) [1998195] - IB/qedr: Fix fall-through warnings for Clang (Manish Chopra) [1998195] - RDMA/qedr: Endianness warnings cleanup (Manish Chopra) [1998195] - qed/qed_ll2: Replace one-element array with flexible-array member (Manish Chopra) [1998195] - net: qed: use true,false for bool variables (Manish Chopra) [1998195] - RDMA/qedr: Fix reported max_pkeys (Manish Chopra) [1998195] - qed: align adjacent indent (Manish Chopra) [1998195] - qed: fix kconfig help entries (Manish Chopra) [1998195] - sched/cputime: Fix getrusage(RUSAGE_THREAD) with nohz_full (Phil Auld) [1992387] - net: tg3: fix obsolete check of !err (Ken Cox) [1987082] - net: broadcom: switch from 'pci_' to 'dma_' API (Ken Cox) [1987082] - tg3: Remove unused PHY_BRCM flags (Ken Cox) [1987082] - net: check skb sec_path when re-initializing slow_gro in gro_list_prepare (Xin Long) [2030476] - e1000e: Fix the max snoop/no-snoop latency for 10M (Ken Cox) [1970665] - net/e1000e: Fix spelling mistake "The" -> "This" (Ken Cox) [1970665] - e1000e: Add space to the debug print (Ken Cox) [1970665] - e1000e: Additional PHY power saving in S0ix (Ken Cox) [1970665] - e1000e: Add polling mechanism to indicate CSME DPG exit (Ken Cox) [1970665] - e1000e: Add handshake with the CSME to support S0ix (Ken Cox) [1970665] - e1000e: Fix an error handling path in 'e1000_probe()' (Ken Cox) [1970665] - e1000e: Check the PCIm state (Ken Cox) [1970665] - net: e1000e: fix misspell word "retreived" (Ken Cox) [1970665] - net: e1000e: remove repeated word "slot" for netdev.c (Ken Cox) [1970665] - net: e1000e: remove repeated word "the" for ich8lan.c (Ken Cox) [1970665] - ppc64: Fix incorrect qrwlock use in debug kernel (Waiman Long) [2027200] - locking: Remove spin_lock_flags() etc (Waiman Long) [2027200] - Bluetooth: btusb: Add one more Bluetooth part for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add the new support IDs for WCN6855 (Gopal Tiwari) [2007903] - Bluetooth: btusb: re-definition for board_id in struct qca_version (Gopal Tiwari) [2007903] - Bluetooth: btusb: Add support using different nvm for variant WCN6855 controller (Gopal Tiwari) [2007903] - bpf/selftests: enable atomic_bounds test (Viktor Malik) [2030572] - Revert "bpf: Remove atomics tests from test_progs" (Viktor Malik) [2030572] - bpf/selftests: disable tests failing on RHEL 8.6 (Viktor Malik) [2025797 2025801 2025810 2025812 2025813] - bpf/selftests: allow disabling prog_tests (Viktor Malik) [2030572] - xfs: drop experimental warnings for bigtime and inobtcount (Bill O'Donnell) [2022903] - libxfs: expose inobtcount in xfs geometry (Bill O'Donnell) [2022903] - xfs: enable new inode btree counters feature (Bill O'Donnell) [2022903] - xfs: enable big timestamps (Bill O'Donnell) [2022903] - selftests: net: bridge: fix typo in vlan_filtering dependency test (Ivan Vecera) [2019055] - selftests: net: bridge: add test for vlan_filtering dependency (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_router tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast query and query response interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_querier_interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_membership_interval test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_startup_query_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast_last_member_count/interval tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast igmp/mld version tests (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast querier test (Ivan Vecera) [2019055] - selftests: net: bridge: add vlan mcast snooping control test (Ivan Vecera) [2019055] - selftests: net: bridge: update IGMP/MLD membership interval value (Ivan Vecera) [2019055] - net: bridge: mcast: use multicast_membership_interval for IGMPv3 (Ivan Vecera) [2019055] - net: bridge: fix under estimation in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size() (Ivan Vecera) [2019055] - net: bridge: mcast: Associate the seqcount with its protecting lock. (Ivan Vecera) [2019055] - net: bridge: mcast: fix vlan port router deadlock (Ivan Vecera) [2019055] - net: bridge: use mld2r_ngrec instead of icmpv6_dataun (Ivan Vecera) [2019055] - net: bridge: change return type of br_handle_ingress_vlan_tunnel (Ivan Vecera) [2019055] - net: bridge: vlan: convert mcast router global option to per-vlan entry (Ivan Vecera) [2019055] - net: bridge: mcast: br_multicast_set_port_router takes multicast context as argument (Ivan Vecera) [2019055] - net: bridge: mcast: toggle also host vlan state in br_multicast_toggle_vlan (Ivan Vecera) [2019055] - net: bridge: mcast: use the correct vlan group helper (Ivan Vecera) [2019055] - net: bridge: vlan: account for router port lists when notifying (Ivan Vecera) [2019055] - net: bridge: vlan: enable mcast snooping for existing master vlans (Ivan Vecera) [2019055] - net: bridge: mcast: account for ipv6 size when dumping querier state (Ivan Vecera) [2019055] - net: bridge: mcast: drop sizeof for nest attribute's zero size (Ivan Vecera) [2019055] - net: bridge: mcast: don't dump querier state if snooping is disabled (Ivan Vecera) [2019055] - net: bridge: vlan: dump mcast ctx querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv6 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: dump ipv4 querier state (Ivan Vecera) [2019055] - net: bridge: mcast: consolidate querier selection for ipv4 and ipv6 (Ivan Vecera) [2019055] - net: bridge: mcast: make sure querier port/address updates are consistent (Ivan Vecera) [2019055] - net: bridge: mcast: record querier port device ifindex instead of pointer (Ivan Vecera) [2019055] - net: bridge: vlan: use br_rports_fill_info() to export mcast router ports (Ivan Vecera) [2019055] - net: bridge: mcast: use the proper multicast context when dumping router ports (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast router global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier global option (Ivan Vecera) [2019055] - net: bridge: mcast: querier and query state affect only current context type (Ivan Vecera) [2019055] - net: bridge: mcast: move querier state to the multicast context (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query response interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast query interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast querier interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast membership interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member interval global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast startup query count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast last member count global option (Ivan Vecera) [2019055] - net: bridge: vlan: add support for mcast igmp/mld version global options (Ivan Vecera) [2019055] - net: switchdev: zero-initialize struct switchdev_notifier_fdb_info emitted by drivers towards the bridge (Ivan Vecera) [2019055] - net: bridge: fix flags interpretation for extern learn fdb entries (Ivan Vecera) [2019055] - net: bridge: vlan: fix global vlan option range dumping (Ivan Vecera) [2019055] - net: bridge: fix memleak in br_add_if() (Ivan Vecera) [2019055] - net: make switchdev_bridge_port_{,unoffload} loosely coupled with the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: fix incorrect use of FDB flags when picking the dst device (Ivan Vecera) [2019055] - net: bridge: validate the NUD_PERMANENT bit when adding an extern_learn FDB entry (Ivan Vecera) [2019055] - net: bridge: switchdev: treat local FDBs the same as entries towards the bridge (Ivan Vecera) [2019055] - net: bridge: switchdev: replay the entire FDB for each port (Ivan Vecera) [2019055] - net: bridge: add a helper for retrieving port VLANs from the data path (Ivan Vecera) [2019055] - net: bridge: update BROPT_VLAN_ENABLED before notifying switchdev in br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: bridge: fix build when setting skb->offload_fwd_mark with CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: switchdev: allow the TX data plane forwarding to be offloaded (Ivan Vecera) [2019055] - net: switchdev: fix FDB entries towards foreign ports not getting propagated to us (Ivan Vecera) [2019055] - net: bridge: move the switchdev object replay helpers to "push" mode (Ivan Vecera) [2019055] - net: bridge: guard the switchdev replay helpers against a NULL notifier block (Ivan Vecera) [2019055] - net: bridge: switchdev: let drivers inform which bridge ports are offloaded (Ivan Vecera) [2019055] - net: bridge: switchdev: recycle unused hwdoms (Ivan Vecera) [2019055] - net: bridge: disambiguate offload_fwd_mark (Ivan Vecera) [2019055] - net: bridge: multicast: add context support for host-joined groups (Ivan Vecera) [2019055] - net: bridge: multicast: add mdb context support (Ivan Vecera) [2019055] - net: bridge: multicast: fix igmp/mld port context null pointer dereferences (Ivan Vecera) [2019055] - net: switchdev: recurse into __switchdev_handle_fdb_del_to_device (Ivan Vecera) [2019055] - net: switchdev: remove stray semicolon in switchdev_handle_fdb_del_to_device shim (Ivan Vecera) [2019055] - net: bridge: vlan: add mcast snooping control (Ivan Vecera) [2019055] - net: bridge: vlan: notify when global options change (Ivan Vecera) [2019055] - net: bridge: vlan: add support for dumping global vlan options (Ivan Vecera) [2019055] - net: bridge: vlan: add support for global options (Ivan Vecera) [2019055] - net: bridge: multicast: include router port vlan id in notifications (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan querier and query support (Ivan Vecera) [2019055] - net: bridge: multicast: check if should use vlan mcast ctx (Ivan Vecera) [2019055] - net: bridge: multicast: use the port group to port context helper (Ivan Vecera) [2019055] - net: bridge: multicast: add helper to get port mcast context from port group (Ivan Vecera) [2019055] - net: bridge: add vlan mcast snooping knob (Ivan Vecera) [2019055] - net: bridge: multicast: add vlan state initialization and control (Ivan Vecera) [2019055] - net: bridge: vlan: add global and per-port multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: use multicast contexts instead of bridge or port (Ivan Vecera) [2019055] - net: bridge: multicast: factor out bridge multicast context (Ivan Vecera) [2019055] - net: bridge: multicast: factor out port multicast context (Ivan Vecera) [2019055] - net: switchdev: introduce a fanout helper for SWITCHDEV_FDB_{ADD,DEL}_TO_DEVICE (Ivan Vecera) [2019055] - net: switchdev: introduce helper for checking dynamically learned FDB entries (Ivan Vecera) [2019055] - net: bridge: do not replay fdb entries pointing towards the bridge twice (Ivan Vecera) [2019055] - net: bridge: multicast: fix MRD advertisement router port marking race (Ivan Vecera) [2019055] - net: bridge: multicast: fix PIM hello router port marking race (Ivan Vecera) [2019055] - net: bridge: sync fdb to new unicast-filtering ports (Ivan Vecera) [2019055] - net: bridge: allow br_fdb_replay to be called for the bridge device (Ivan Vecera) [2019055] - net: bridge: switchdev: send FDB notifications for host addresses (Ivan Vecera) [2019055] - net: bridge: use READ_ONCE() and WRITE_ONCE() compiler barriers for fdb->dst (Ivan Vecera) [2019055] - net: bridge: allow the switchdev replay functions to be called for deletion (Ivan Vecera) [2019055] - net: bridge: constify variables in the replay helpers (Ivan Vecera) [2019055] - net: bridge: ignore switchdev events for LAG ports which didn't request replay (Ivan Vecera) [2019055] - net: switchdev: add a context void pointer to struct switchdev_notifier_info (Ivan Vecera) [2019055] - net: bridge: include the is_local bit in br_fdb_replay (Ivan Vecera) [2019055] - net: bridge: mrp: Update the Test frames for MRA (Ivan Vecera) [2019055] - bridge: cfm: remove redundant return (Ivan Vecera) [2019055] - net: bridge: remove redundant continue statement (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst refcnt when egressing (Ivan Vecera) [2019055] - net: bridge: fix vlan tunnel dst null pointer dereference (Ivan Vecera) [2019055] - net: bridge: mrp: Update ring transitions. (Ivan Vecera) [2019055] - net: bridge: remove redundant assignment (Ivan Vecera) [2019055] - net: bridge: fix br_multicast_is_router stub when igmp is disabled (Ivan Vecera) [2019055] - net: bridge: fix build when IPv6 is disabled (Ivan Vecera) [2019055] - net: bridge: mcast: export multicast router presence adjacent to a port (Ivan Vecera) [2019055] - net: bridge: mcast: add ip4+ip6 mcast router timers to mdb netlink (Ivan Vecera) [2019055] - net: bridge: mcast: split multicast router state for IPv4 and IPv6 (Ivan Vecera) [2019055] - net: bridge: mcast: split router port del+notify for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare add-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare expiry functions for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare is-router function for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare query reception for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: prepare mdb netlink for mcast router split (Ivan Vecera) [2019055] - net: bridge: mcast: add wrappers for router node retrieval (Ivan Vecera) [2019055] - net: bridge: mcast: rename multicast router lists and timers (Ivan Vecera) [2019055] - bridge: Fix possible races between assigning rx_handler_data and setting IFF_BRIDGE_PORT bit (Ivan Vecera) [2019055] - net: bridge: mcast: fix broken length + header check for MRDv6 Adv. (Ivan Vecera) [2019055] - net: bridge: fix error in br_multicast_add_port when CONFIG_NET_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate error code and extack from br_mc_disabled_update (Ivan Vecera) [2019055] - net: bridge: Fix missing return assignment from br_vlan_replay_one call (Ivan Vecera) [2019055] - bridge: mrp: Disable roles before deleting the MRP instance (Ivan Vecera) [2019055] - net: bridge: add helper to replay VLANs installed on port (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and local fdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to replay port and host-joined mdb entries (Ivan Vecera) [2019055] - net: bridge: add helper to retrieve the current ageing time (Ivan Vecera) [2019055] - net: bridge: add helper for retrieving the current bridge port STP state (Ivan Vecera) [2019055] - net: bridge: when suppression is enabled exclude RARP packets (Ivan Vecera) [2019055] - net: bridge: declare br_vlan_tunnel_lookup argument tunnel_id as __be64 (Ivan Vecera) [2019055] - Documentation: networking: switchdev: add missing "and" word (Ivan Vecera) [2019055] - Documentation: networking: switchdev: separate bulleted items with new line (Ivan Vecera) [2019055] - Documentation: networking: switchdev: fix command for static FDB entries (Ivan Vecera) [2019055] - Documentation: networking: switchdev: clarify device driver behavior (Ivan Vecera) [2019055] - net: bridge: mcast: factor out common allow/block EHT handling (Ivan Vecera) [2019055] - net: bridge: mcast: remove unreachable EHT code (Ivan Vecera) [2019055] - net: bridge: Fix fall-through warnings for Clang (Ivan Vecera) [2019055] - bridge: mrp: Update br_mrp to use new return values of br_mrp_switchdev (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_switchdev to detect better the errors (Ivan Vecera) [2019055] - bridge: mrp: Add 'enum br_mrp_hw_support' (Ivan Vecera) [2019055] - switchdev: mrp: Extend ring_role_mrp and in_role_mrp (Ivan Vecera) [2019055] - switchdev: mrp: Remove CONFIG_BRIDGE_MRP (Ivan Vecera) [2019055] - net: bridge: fix br_vlan_filter_toggle stub when CONFIG_BRIDGE_VLAN_FILTERING=n (Ivan Vecera) [2019055] - net: bridge: fix switchdev_port_attr_set stub when CONFIG_SWITCHDEV=n (Ivan Vecera) [2019055] - net: bridge: propagate extack through switchdev_port_attr_set (Ivan Vecera) [2019055] - net: bridge: propagate extack through store_bridge_parm (Ivan Vecera) [2019055] - net: bridge: remove __br_vlan_filter_toggle (Ivan Vecera) [2019055] - net: switchdev: pass flags and mask to both {PRE_,}BRIDGE_FLAGS attributes (Ivan Vecera) [2019055] - net: bridge: don't print in br_switchdev_set_port_flag (Ivan Vecera) [2019055] - net: bridge: offload all port flags at once in br_setport (Ivan Vecera) [2019055] - net: switchdev: propagate extack to port attributes (Ivan Vecera) [2019055] - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT (Ivan Vecera) [2019055] - bridge: mrp: Fix the usage of br_mrp_port_switchdev_set_state (Ivan Vecera) [2019055] - net: bridge: mcast: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Ivan Vecera) [2019055] - net: bridge: add warning comments to avoid extending sysfs (Ivan Vecera) [2019055] - net: bridge: mcast: drop hosts limit sysfs support (Ivan Vecera) [2019055] - net: bridge: multicast: make tracked EHT hosts limit configurable (Ivan Vecera) [2019055] - net: bridge: multicast: add per-port EHT hosts limit (Ivan Vecera) [2019055] - net: switchdev: use obj-$(CONFIG_NET_SWITCHDEV) form in net/Makefile (Ivan Vecera) [2019055] - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP (Ivan Vecera) [2019055] - net: bridge: multicast: fix br_multicast_eht_set_entry_lookup indentation (Ivan Vecera) [2019055] - bridge: Use PTR_ERR_OR_ZERO instead if(IS_ERR(...)) + PTR_ERR (Ivan Vecera) [2019055] - net: mrp: move struct definitions out of uapi (Ivan Vecera) [2019055] - net: mrp: fix definitions of MRP test packets (Ivan Vecera) [2019055] - net: bridge: multicast: mark IGMPv3/MLDv2 fast-leave deletes (Ivan Vecera) [2019055] - net: bridge: multicast: handle block pg delete for all cases (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host filter_mode handling (Ivan Vecera) [2019055] - net: bridge: multicast: optimize TO_INCLUDE EHT timeouts (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT include and exclude handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT allow/block handling (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host delete function (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT source set handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT host handling functions (Ivan Vecera) [2019055] - net: bridge: multicast: add EHT structures and definitions (Ivan Vecera) [2019055] - net: bridge: multicast: calculate idx position without changing ptr (Ivan Vecera) [2019055] - net: bridge: multicast: __grp_src_block_incl can modify pg (Ivan Vecera) [2019055] - net: bridge: multicast: pass host src address to IGMPv3/MLDv2 functions (Ivan Vecera) [2019055] - net: bridge: multicast: rename src_size to addr_size (Ivan Vecera) [2019055] - net: bridge: check vlan with eth_type_vlan() method (Ivan Vecera) [2019055] - net: switchdev: delete the transaction object (Ivan Vecera) [2019055] - mlxsw: spectrum_switchdev: remove transactional logic for VLAN objects (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port attributes (Ivan Vecera) [2019055] - net: switchdev: delete switchdev_port_obj_add_now (Ivan Vecera) [2019055] - net: switchdev: remove the transaction structure from port object notifiers (Ivan Vecera) [2019055] - net: switchdev: remove vid_begin -> vid_end range from VLAN objects (Ivan Vecera) [2019055] - net: bridge: fix misspellings using codespell tool (Ivan Vecera) [2019055] - net: bridge: notify switchdev of disappearance of old FDB entry upon migration (Ivan Vecera) [2019055] - bridge: Fix a deadlock when enabling multicast snooping (Ivan Vecera) [2019055] - bridge: mrp: Implement LC mode for MRP (Ivan Vecera) [2019055] - net: bridge: switch to net core statistics counters handling (Ivan Vecera) [2019055] - net: bridge: replace struct br_vlan_stats with pcpu_sw_netstats (Ivan Vecera) [2019055] - bridge: mrp: Use hlist_head instead of list_head for mrp (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for mldv2 inc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add initial MLDv2 include test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out and rename sg state functions (Ivan Vecera) [2019055] - selftests: net: lib: add support for IPv6 mcast packet test (Ivan Vecera) [2019055] - selftests: net: bridge: factor out mcast_packet_test (Ivan Vecera) [2019055] - net: bridge: mcast: fix stub definition of br_multicast_querier_exists (Ivan Vecera) [2019055] - net: bridge: explicitly convert between mdb entry state and port group flags (Ivan Vecera) [2019055] - net: bridge: mcast: add support for raw L2 multicast groups (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 *,g auto-add (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exclude timeout (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> block report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 exc -> allow report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> to_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_exclude report (Ivan Vecera) [2019055] - selftests: net: bridge: add test for igmpv3 inc -> is_include report (Ivan Vecera) [2019055] - selftests: net: bridge: add tests for igmpv3 is_include and inc -> allow reports (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add IGMPv3 entries' state helpers (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: check for specific udp ip protocol (Ivan Vecera) [2019055] - selftests: net: bridge: igmp: add support for packet source address (Ivan Vecera) [2019055] - selftests: net: bridge: rename current igmp tests to igmpv2 (Ivan Vecera) [2019055] - net: bridge: fix uninitialized variables when BRIDGE_CFM is disabled (Ivan Vecera) [2019055] - bridge: cfm: Netlink Notifications. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET status Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink GET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Netlink SET configuration Interface. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame RX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. CCM frame TX added. (Ivan Vecera) [2019055] - bridge: cfm: Kernel space implementation of CFM. MEP create/delete. (Ivan Vecera) [2019055] - bridge: uapi: cfm: Added EtherType used by the CFM protocol. (Ivan Vecera) [2019055] - bridge: cfm: Add BRIDGE_CFM to Kconfig. (Ivan Vecera) [2019055] - net: bridge: extend the process of special frames (Ivan Vecera) [2019055] - bridge: Netlink interface fix. (Ivan Vecera) [2019055] - net: bridge: mcast: remove only S,G port groups from sg_port hash (Ivan Vecera) [2019055] - net: switchdev: Fixed kerneldoc warning (Ivan Vecera) [2019055] - net: bridge: mcast: when forwarding handle filter mode and blocked flag (Ivan Vecera) [2019055] - net: bridge: mcast: handle host state (Ivan Vecera) [2019055] - net: bridge: mcast: add support for blocked port groups (Ivan Vecera) [2019055] - net: bridge: mcast: handle port group filter modes (Ivan Vecera) [2019055] - net: bridge: mcast: install S,G entries automatically based on reports (Ivan Vecera) [2019055] - net: bridge: mcast: add sg_port rhashtable (Ivan Vecera) [2019055] - net: bridge: mcast: add rt_protocol field to the port group struct (Ivan Vecera) [2019055] - net: bridge: mcast: when igmpv3/mldv2 are enabled lookup (S,G) first, then (*,G) (Ivan Vecera) [2019055] - net: bridge: mdb: add support for add/del/dump of entries with source (Ivan Vecera) [2019055] - net: bridge: mdb: add support to extend add/del commands (Ivan Vecera) [2019055] - net: bridge: mcast: rename br_ip's u member to dst (Ivan Vecera) [2019055] - net: bridge: mcast: use br_ip's src for src groups and querier address (Ivan Vecera) [2019055] - net: bridge: add src field to br_ip (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_add() and br_mdb_add_group() (Ivan Vecera) [2019055] - net: bridge: mdb: move all port and bridge checks to br_mdb_add (Ivan Vecera) [2019055] - net: bridge: mdb: use extack in br_mdb_parse() (Ivan Vecera) [2019055] - net: bridge: delete duplicated words (Ivan Vecera) [2019055] - net: bridge: mcast: don't ignore return value of __grp_src_toex_excl (Ivan Vecera) [2019055] - __netif_receive_skb_core: don't untag vlan from skb on DSA master (Ivan Vecera) [2019055] - bridge: mcast: Fix incomplete MDB dump (Ivan Vecera) [2019055] - net: bridge: mcast: fix unused br var when lockdep isn't defined (Ivan Vecera) [2019055] - net: bridge: mcast: destroy all entries via gc (Ivan Vecera) [2019055] - net: bridge: mcast: improve IGMPv3/MLDv2 query processing (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 BLOCK_OLD_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 CHANGE_TO_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPV3/MLDv2 MODE_IS_INCLUDE/EXCLUDE report (Ivan Vecera) [2019055] - net: bridge: mcast: support for IGMPv3/MLDv2 ALLOW_NEW_SOURCES report (Ivan Vecera) [2019055] - net: bridge: mcast: delete expired port groups without srcs (Ivan Vecera) [2019055] - net: bridge: mdb: use mdb and port entries in notifications (Ivan Vecera) [2019055] - net: bridge: mdb: push notifications in __br_mdb_add/del (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group query retransmit (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group-and-source specific queries (Ivan Vecera) [2019055] - net: bridge: mcast: add support for src list and filter mode dumping (Ivan Vecera) [2019055] - net: bridge: mcast: add support for group source list (Ivan Vecera) [2019055] - net: bridge: mcast: factor out port group del (Ivan Vecera) [2019055] - net: bridge: mdb: arrange internal structs so fast-path fields are close (Ivan Vecera) [2019055] - netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_IN_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP_INFO attributes for interconnect status (Ivan Vecera) [2019055] - bridge: mrp: Extend MRP netlink interface for configuring MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Implement the MRP Interconnect API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Extend MRP API for switchdev for MRP Interconnect (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_in_port_open function (Ivan Vecera) [2019055] - bridge: mrp: Rename br_mrp_port_open to br_mrp_ring_port_open (Ivan Vecera) [2019055] - bridge: mrp: Extend br_mrp for MRP interconnect (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes for MRP interconnect (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API for MRP Interconnect (Ivan Vecera) [2019055] - net: bridge: fix undefined br_vlan_can_enter_range in tunnel code (Ivan Vecera) [2019055] - net: switchdev: kerneldoc fixes (Ivan Vecera) [2019055] - net: bridge: notify on vlan tunnel changes done via the old api (Ivan Vecera) [2019055] - bridge: Extend br_fill_ifinfo to return MPR status (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_fill_info (Ivan Vecera) [2019055] - bridge: uapi: mrp: Extend MRP attributes to get the status (Ivan Vecera) [2019055] - bridge: mrp: Fix endian conversion and some other warnings (Ivan Vecera) [2019055] - net: bridge: add a flag to avoid refreshing fdb when changing/adding (Ivan Vecera) [2019055] - net: bridge: add option to allow activity notifications for any fdb entries (Ivan Vecera) [2019055] - net: neighbor: add fdb extended attribute (Ivan Vecera) [2019055] - net: bridge: fdb_add_entry takes ndm as argument (Ivan Vecera) [2019055] - bridge: mrp: Validate when setting the port role (Ivan Vecera) [2019055] - bridge: uapi: mrp: Fix MRP_PORT_ROLE (Ivan Vecera) [2019055] - bridge: mrp: Add support for role MRA (Ivan Vecera) [2019055] - bridge: mrp: Set the priority of MRP instance (Ivan Vecera) [2019055] - bridge: mrp: Update MRP frame type (Ivan Vecera) [2019055] - bridge: multicast: work around clang bug (Ivan Vecera) [2019055] - bridge: mrp: Rework the MRP netlink interface (Ivan Vecera) [2019055] - bridge: mrp: Fix out-of-bounds read in br_mrp_parse (Ivan Vecera) [2019055] - bridge: mrp: Restore port state when deleting MRP instance (Ivan Vecera) [2019055] - switchdev: mrp: Remove the variable mrp_ring_state (Ivan Vecera) [2019055] - bridge: mrp: Add br_mrp_unique_ifindex function (Ivan Vecera) [2019055] - net: bridge: allow enslaving some DSA master network devices (Ivan Vecera) [2019055] - net: remove newlines in NL_SET_ERR_MSG_MOD (Ivan Vecera) [2019055] - net: bridge: return false in br_mrp_enabled() (Ivan Vecera) [2019055] - docs: networking: convert switchdev.txt to ReST (Ivan Vecera) [2019055] - net: bridge: Add checks for enabling the STP. (Ivan Vecera) [2019055] - bridge: mrp: Integrate MRP into the bridge (Ivan Vecera) [2019055] - bridge: mrp: Implement netlink interface to configure MRP (Ivan Vecera) [2019055] - bridge: mrp: Connect MRP API with the switchdev API (Ivan Vecera) [2019055] - bridge: switchdev: mrp: Implement MRP API for switchdev (Ivan Vecera) [2019055] - switchdev: mrp: Extend switchdev API to offload MRP (Ivan Vecera) [2019055] - bridge: mrp: Add MRP interface. (Ivan Vecera) [2019055] - net: bridge: Add port attribute IFLA_BRPORT_MRP_RING_OPEN (Ivan Vecera) [2019055] - bridge: mrp: Extend bridge interface (Ivan Vecera) [2019055] - bridge: mrp: Update Kconfig (Ivan Vecera) [2019055] - bridge: uapi: mrp: Add mrp attributes. (Ivan Vecera) [2019055] - net: bridge: vlan options: move the tunnel command to the nested attribute (Ivan Vecera) [2019055] - net: bridge: vlan options: nest the tunnel id into a tunnel info attribute (Ivan Vecera) [2019055] - net: bridge: vlan: include stats in dumps if requested (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel mapping set/del (Ivan Vecera) [2019055] - net: bridge: vlan options: add support for tunnel id dumping (Ivan Vecera) [2019055] - net: bridge: vlan tunnel: constify bridge and port arguments (Ivan Vecera) [2019055] - net: bridge: vlan options: rename br_vlan_opts_eq to br_vlan_opts_eq_range (Ivan Vecera) [2019055] - net: switchdev: do not propagate bridge updates across bridges (Ivan Vecera) [2019055] - bridge: br_stp: Use built-in RCU list checking (Ivan Vecera) [2019055] - net: switchdev: Replace zero-length array with flexible-array member (Ivan Vecera) [2019055] - net: bridge: vlan: add per-vlan state (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option setting support (Ivan Vecera) [2019055] - net: bridge: vlan: add basic option dumping support (Ivan Vecera) [2019055] - net: bridge: check port state before br_allowed_egress (Ivan Vecera) [2019055] - net: bridge: vlan: notify on vlan add/delete/change flags (Ivan Vecera) [2019055] - net: bridge: vlan: add rtnetlink group and notify support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm range support (Ivan Vecera) [2019055] - net: bridge: vlan: add del rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add new rtm message support (Ivan Vecera) [2019055] - net: bridge: vlan: add rtm definitions and dump support (Ivan Vecera) [2019055] - net: bridge: netlink: add extack error messages when processing vlans (Ivan Vecera) [2019055] - net: bridge: vlan: add helpers to check for vlan id/range validity (Ivan Vecera) [2019055] - net: bridge: add STP xstats (Ivan Vecera) [2019055] - treewide: Use sizeof_field() macro (Ivan Vecera) [2019055] - bridge: implement get_link_ksettings ethtool method (Ivan Vecera) [2019055] - net: bridge: fdb: eliminate extra port state tests from fast-path (Ivan Vecera) [2019055] - net: bridge: fdb: restore unlikely() when taking over externally added entries (Ivan Vecera) [2019055] - net: bridge: fdb: avoid two atomic bitops in br_fdb_external_learn_add() (Ivan Vecera) [2019055] - net: bridge: fdb: br_fdb_update can take flags directly (Ivan Vecera) [2019055] - net: bridge: Populate the pvid flag in br_vlan_get_info (Ivan Vecera) [2019055] - net: fix __ip_mc_inc_group usage (Ivan Vecera) [2019055] - net: bridge: mdb: allow add/delete for host-joined groups (Ivan Vecera) [2019055] - net: bridge: mdb: dump host-joined entries as well (Ivan Vecera) [2019055] - net: bridge: mdb: factor out mdb filling (Ivan Vecera) [2019055] - net: bridge: mdb: move vlan comments (Ivan Vecera) [2019055] - net: bridge: mcast: add delete due to fast-leave mdb flag (Ivan Vecera) [2019055] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier for missed files (Ivan Vecera) [2019055] - treewide: Add SPDX license identifier - Makefile/Kconfig (Ivan Vecera) [2019055] - bridge: Fix error path for kobject_init_and_add() (Ivan Vecera) [2019055] - bridge: only include nf_queue.h if needed (Ivan Vecera) [2019055] - bridge: broute: make broute a real ebtables table (Ivan Vecera) [2019055] - bridge: netfilter: unroll NF_HOOK helper in bridge input path (Ivan Vecera) [2019055] - bridge: reduce size of input cb to 16 bytes (Ivan Vecera) [2019055] - net: bridge: update multicast stats from maybe_deliver() (Ivan Vecera) [2019055] - net: bridge: mcast: remove unused br_ip_equal function (Ivan Vecera) [2019055] - net: bridge: optimize backup_port fdb convergence (Ivan Vecera) [2019055] - net: bridge: use netif_is_bridge_port() (Ivan Vecera) [2019055] - net: bridge: use eth_broadcast_addr() to assign broadcast address (Ivan Vecera) [2019055] - tools headers uapi: Update linux/in.h copy (Ivan Vecera) [2019055] - switchdev: Remove unused transaction item queue (Ivan Vecera) [2019055] - bridge: remove redundant check on err in br_multicast_ipv4_rcv (Ivan Vecera) [2019055] - net: Fix ip_mc_{dec,inc}_group allocation context (Ivan Vecera) [2019055] - bridge: remove duplicated include from br_multicast.c (Ivan Vecera) [2019055] - bridge: Snoop Multicast Router Advertisements (Ivan Vecera) [2019055] - bridge: join all-snoopers multicast address (Ivan Vecera) [2019055] - bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() internals (Ivan Vecera) [2019055] - tools include uapi: Sync linux/if_link.h copy with the kernel sources (Ivan Vecera) [2019055] - net: bridge: fix a bug on using a neighbour cache entry without checking its state (Ivan Vecera) [2019055] - net: bridge: remove unneeded variable 'err' (Ivan Vecera) [2019055] - net: bridge: remove redundant checks for null p->dev and p->br (Ivan Vecera) [2019055] - net: bridge: export supported boolopts (Ivan Vecera) [2019055] - net: bridge: add no_linklocal_learn bool option (Ivan Vecera) [2019055] - net: bridge: add support for user-controlled bool options (Ivan Vecera) [2019055] - bridge: use __vlan_hwaccel helpers (Ivan Vecera) [2019055] - netfilter: bridge: define INT_MIN & INT_MAX in userspace (Ivan Vecera) [2019055] - docs: fix some broken documentation references (Ivan Vecera) [2019055] - bridge: Switch to bitmap_zalloc() (Ivan Vecera) [2019055] - netfilter: bridge: Expose nf_tables bridge hook priorities through uapi (Ivan Vecera) [2019055] - net: bridge: add support for backup port (Ivan Vecera) [2019055] - net: bridge: add support for raw sysfs port options (Ivan Vecera) [2019055] - docs: networking: Convert bridge.txt to rst (Ivan Vecera) [2019055] - net: switchdev: consolidate RH_KABI macros usage (Ivan Vecera) [2019055] - kcov: Remove kcov include from sched.h and move it to its users. (Josef Oskera) [2026467] - tasklets: Provide tasklet_disable_in_atomic() (Ivan Vecera) [2026475] - tasklets: Use static inlines for stub implementations (Ivan Vecera) [2026475] - net: sock: introduce sk_error_report (Ivan Vecera) [2026469] - redhat: Add CONFIG_RHEL_DIFFERENCES (Prarit Bhargava) [2021571]- serial: 8520_port: Fix function param documentation (Waiman Long) [1970241] - serial: 8250: Optimize irq enable after console write (Waiman Long) [1970241] - serial: 8250: Fix rs485 delay after console write (Waiman Long) [1970241] - serial: 8250: Support console on software emulated rs485 ports (Waiman Long) [1970241] - serial: 8250: Generalize rs485 software emulation (Waiman Long) [1970241] - serial: 8250: Deduplicate rs485 active_timer assignment (Waiman Long) [1970241] - serial: 8250: Sanitize rs485 config harder (Waiman Long) [1970241] - serial: 8250: Deduplicate ->rs485_config() callback (Waiman Long) [1970241] - serial: 8250: Support rs485 devicetree properties (Waiman Long) [1970241] - serial: 8250_port: Don't use power management for kernel console (Waiman Long) [1970241] - console: Introduce ->exit() callback (Waiman Long) [1970241] - console: Don't notify user space when unregister non-listed console (Waiman Long) [1970241] - tty: 8250_of: Use software emulated RS485 direction control (Waiman Long) [1970241] - serial: 8250: Add MSR/MCR TIOCM conversion wrapper functions (Waiman Long) [1970241] - serial: 8250_of: Use of_device_get_match_data() (Waiman Long) [1970241] - serial: 8250_of: Fix for lack of interrupt support (Waiman Long) [1970241] - serial: 8250: of: Defer probe on missing IRQ (Waiman Long) [1970241] - serial: 8250: of: Correct of_platform_serial_setup() error handling (Waiman Long) [1970241] - mm/vmstat: protect per cpu variables with preempt disable on RT (Scott Wood) [2011667] - mm, slub: convert kmem_cpu_slab protection to local_lock (Scott Wood) [2011667] - mm, slub: use migrate_disable() on PREEMPT_RT (Scott Wood) [2011667] - mm, slub: protect put_cpu_partial() with disabled irqs instead of cmpxchg (Scott Wood) [2011667] - mm, slub: make slab_lock() disable irqs with PREEMPT_RT (Scott Wood) [2011667] - mm: slub: make object_map_lock a raw_spinlock_t (Scott Wood) [2011667] - mm: slub: move flush_cpu_slab() invocations __free_slab() invocations out of IRQ context (Scott Wood) [2011667] - mm, slab: split out the cpu offline variant of flush_slab() (Scott Wood) [2011667] - mm, slub: don't disable irqs in slub_cpu_dead() (Scott Wood) [2011667] - mm, slub: only disable irq with spin_lock in __unfreeze_partials() (Scott Wood) [2011667] - mm, slub: separate detaching of partial list in unfreeze_partials() from unfreezing (Scott Wood) [2011667] - mm, slub: detach whole partial list at once in unfreeze_partials() (Scott Wood) [2011667] - mm, slub: discard slabs in unfreeze_partials() without irqs disabled (Scott Wood) [2011667] - mm, slub: move irq control into unfreeze_partials() (Scott Wood) [2011667] - mm, slub: call deactivate_slab() without disabling irqs (Scott Wood) [2011667] - mm, slub: make locking in deactivate_slab() irq-safe (Scott Wood) [2011667] - mm, slub: move reset of c->page and freelist out of deactivate_slab() (Scott Wood) [2011667] - mm, slub: stop disabling irqs around get_partial() (Scott Wood) [2011667] - mm, slub: check new pages with restored irqs (Scott Wood) [2011667] - mm, slub: validate slab from partial list or page allocator before making it cpu slab (Scott Wood) [2011667] - mm, slub: restore irqs around calling new_slab() (Scott Wood) [2011667] - mm, slub: move disabling irqs closer to get_partial() in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: do initial checks in ___slab_alloc() with irqs enabled (Scott Wood) [2011667] - mm, slub: move disabling/enabling irqs to ___slab_alloc() (Scott Wood) [2011667] - mm, slub: simplify kmem_cache_cpu and tid setup (Scott Wood) [2011667] - mm, slub: restructure new page checks in ___slab_alloc() (Scott Wood) [2011667] - mm, slub: return slab page from get_partial() and set c->page afterwards (Scott Wood) [2011667] - mm, slub: dissolve new_slab_objects() into ___slab_alloc() (Scott Wood) [2011667] - mm, slub: extract get_partial() from new_slab_objects() (Scott Wood) [2011667] - mm, slub: remove redundant unfreeze_partials() from put_cpu_partial() (Scott Wood) [2011667] - mm, slub: don't disable irq for debug_check_no_locks_freed() (Scott Wood) [2011667] - mm, slub: allocate private object map for validate_slab_cache() (Scott Wood) [2011667] - mm, slub: allocate private object map for debugfs listings (Scott Wood) [2011667] - mm, slub: don't call flush_all() from slab_debug_trace_open() (Scott Wood) [2011667] - mm/slub.c: drop lockdep_assert_held() from put_map() (Scott Wood) [2011667] - mm/slub.c: replace cpu_slab->partial with wrapped APIs (Scott Wood) [2011667] - mm/slub.c: replace kmem_cache->cpu_partial with wrapped APIs (Scott Wood) [2011667] - sched/rt, mm: Use CONFIG_PREEMPTION (Scott Wood) [2011667] - tcp: fix page frag corruption on page fault (Paolo Abeni) [1996074] - net: fix sk_page_frag() recursion from memory reclaim (Paolo Abeni) [1996074] - net: udp6: replace __UDP_INC_STATS() with __UDP6_INC_STATS() (Xin Long) [2020407] - net: udp: annotate data race around udp_sk(sk)->corkflag (Xin Long) [2020407] - net/ipv4/udp_tunnel_core.c: remove superfluous header files from udp_tunnel_core.c (Xin Long) [2020407] - udp_tunnel: Fix udp_tunnel_nic work-queue type (Xin Long) [2020407] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Xin Long) [2020407] - bareudp: Add extack support to bareudp_configure() (Guillaume Nault) [1946040] - bareudp: Move definition of struct bareudp_conf to bareudp.c (Guillaume Nault) [1946040] - bareudp: Remove bareudp_dev_create() (Guillaume Nault) [1946040] - net: bareudp: simplify error paths calling dellink (Guillaume Nault) [1946040] - mptcp: re-arm retransmit timer if data is pending (Paolo Abeni) [2019493] - mptcp: remove tx_pending_data (Paolo Abeni) [2019493] - mptcp: do not shrink snd_nxt when recovering (Paolo Abeni) [2019493] - mptcp: drop unused sk in mptcp_push_release (Paolo Abeni) [2019493] - selftests: mptcp: fix proto type in link_failure tests (Paolo Abeni) [2019493] - selftests: mptcp: add testcase for active-back (Paolo Abeni) [2019493] - mptcp: backup flag from incoming MPJ ack option (Paolo Abeni) [2019493] - mptcp: add mibs for stale subflows processing (Paolo Abeni) [2019493] - mptcp: faster active backup recovery (Paolo Abeni) [2019493] - mptcp: cleanup sysctl data and helpers (Paolo Abeni) [2019493] - mptcp: handle pending data on closed subflow (Paolo Abeni) [2019493] - mptcp: less aggressive retransmission strategy (Paolo Abeni) [2019493] - mptcp: more accurate timeout (Paolo Abeni) [2019493] - mptcp: stop relying on tcp_tx_skb_cache (Paolo Abeni) [2019493] - tcp: expose the tcp_mark_push() and tcp_skb_entail() helpers (Paolo Abeni) [2019493] - selftests: KVM: avoid failures due to reserved HyperTransport region (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix when shadow_root_level=5 && guest root_level<4 (Vitaly Kuznetsov) [2009340] - KVM: x86: inhibit APICv when KVM_GUESTDBG_BLOCKIRQ active (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix get_attr of KVM_XEN_ATTR_TYPE_SHARED_INFO (Vitaly Kuznetsov) [2009340] - KVM: x86: Use rw_semaphore for APICv lock to allow vCPU parallelism (Vitaly Kuznetsov) [2009340] - KVM: selftests: test KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: implement SGX_IOC_VEPC_REMOVE ioctl (Vitaly Kuznetsov) [2009340] - x86/sgx/virt: extract sgx_vepc_remove_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Complete prefetch for trailing SPTEs for direct, legacy MMU (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not mark all registers as avail/dirty during RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: don't set VMLOAD/VMSAVE intercepts on vCPU reset (Vitaly Kuznetsov) [2009340] - KVM: VMX: Unregister posted interrupt wakeup handler on hardware unsetup (Vitaly Kuznetsov) [2009340] - Revert "x86/kvm: fix vcpu-id indexed array sizes" (Vitaly Kuznetsov) [2009340] - KVM: X86: Cache CR3 in prev_roots when PCID is disabled (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix tlb flush for tdp in kvm_invalidate_pcid() (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when toggling X86_CR4_PGE (Vitaly Kuznetsov) [2009340] - KVM: X86: Don't reset mmu context when X86_CR4_PCIDE 1->0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: kvm_faultin_pfn has to return false if pfh is returned (Vitaly Kuznetsov) [2009340] - KVM: x86: Take srcu lock in post_kvm_run_save() (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix another issue with string I/O VMGEXITs (Vitaly Kuznetsov) [2009340] - KVM: x86/xen: Fix kvm_xen_has_interrupt() sleeping in kvm_vcpu_block() (Vitaly Kuznetsov) [2009340] - KVM: x86: switch pvclock_gtod_sync_lock to a raw spinlock (Vitaly Kuznetsov) [2009340] - KVM: selftests: Refactor help message for -s backing_src (Vitaly Kuznetsov) [2009340] - KVM: selftests: Change backing_src flag to -s in demand_paging_test (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync x86's asm/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: go over the sev_pio_data buffer in multiple passes if needed (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: keep INS functions together (Vitaly Kuznetsov) [2009340] - KVM: x86: remove unnecessary arguments from complete_emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: x86: split the two parts of emulator_pio_in (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: clean up kvm_sev_es_ins/outs (Vitaly Kuznetsov) [2009340] - KVM: x86: leave vcpu->arch.pio.count alone in emulator_pio_in_out (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: rename guest_ins_data to sev_pio_data (Vitaly Kuznetsov) [2009340] - KVM: SEV: Flush cache on non-coherent systems before RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: MMU: Reset mmu->pkru_mask to avoid stale data (Vitaly Kuznetsov) [2009340] - KVM: nVMX: promptly process interrupts delivered while in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: check for interrupts before deciding whether to exit the fast path (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: reduce ghcb_sa_len to 32 bits (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant handling of bus lock vmexit (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if APIC HW/SW disable static keys are non-zero on unload (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: fix length of string I/O (Vitaly Kuznetsov) [2009340] - KVM: SEV-ES: Set guest_state_protected after VMSA update (Vitaly Kuznetsov) [2009340] - KVM: kvm_stat: do not show halt_wait_ns (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET" (Vitaly Kuznetsov) [2009340] - KVM: s390: restore old debugfs names (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Sync linux/kvm.h with the kernel sources (Vitaly Kuznetsov) [2009340] - tools headers UAPI: Synch KVM's svm.h header with the kernel (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P44V64 for z196 and EC12 (Vitaly Kuznetsov) [2009340] - KVM: selftests: introduce P47V64 for s390x (Vitaly Kuznetsov) [2009340] - x86/sev: Use "SEV: " prefix for messages from sev.c (Vitaly Kuznetsov) [2009340] - KVM: stats: remove dead stores (Vitaly Kuznetsov) [2009340] - kvm: x86: Add AMD PMU MSRs to msrs_to_save_all[] (Vitaly Kuznetsov) [2009340] - kvm: fix objtool relocation warning (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ensure all migrations are performed when test is affined (Vitaly Kuznetsov) [2009340] - KVM: x86: Swap order of CPUID entry "index" vs. "significant flag" checks (Vitaly Kuznetsov) [2009340] - x86/kvmclock: Move this_cpu_pvti into kvmclock.h (Vitaly Kuznetsov) [2009340] - selftests: KVM: Don't clobber XMM register when read (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fix a TSX_CTRL_CPUID_CLEAR field mask issue (Vitaly Kuznetsov) [2009340] - selftests: KVM: Explicitly use movq to read xmm registers (Vitaly Kuznetsov) [2009340] - selftests: KVM: Call ucall_init when setting up in rseq_test (Vitaly Kuznetsov) [2009340] - KVM: X86: Synchronize the shadow pagetable before link it (Vitaly Kuznetsov) [2009340] - KVM: X86: Fix missed remote tlb flush in rmap_write_protect() (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: don't copy virt_ext from vmcb12 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: test eax for 4K alignment for GP errata workaround (Vitaly Kuznetsov) [2009340] - KVM: x86: selftests: test simultaneous uses of V_IRQ from L1 and L0 (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore int_vector in svm_clear_vintr (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: re-evaluate emulation_required on nested VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: nVMX: don't fail nested VM entry on invalid guest state if !from_vmentry (Vitaly Kuznetsov) [2009340] - KVM: x86: VMX: synthesize invalid VM exit when emulating invalid guest state (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: refactor svm_leave_smm and smm_enter_smm (Vitaly Kuznetsov) [2009340] - KVM: x86: SVM: call KVM_REQ_GET_NESTED_STATE_PAGES on exit from SMM mode (Vitaly Kuznetsov) [2009340] - KVM: x86: reset pdptrs_from_userspace when exiting smm (Vitaly Kuznetsov) [2009340] - KVM: x86: nSVM: restore the L1 host state prior to resuming nested guest on SMM exit (Vitaly Kuznetsov) [2009340] - KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: Clean up benign vcpu->cpu data races when kicking vCPUs (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix stack-out-of-bounds memory access from ioapic_write_indirect() (Vitaly Kuznetsov) [2009340] - KVM: selftests: Create a separate dirty bitmap per slot (Vitaly Kuznetsov) [2009340] - KVM: SEV: Allow some commands for mirror VM (Vitaly Kuznetsov) [2009340] - KVM: SEV: Update svm_vm_copy_asid_from for SEV-ES (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fix nested bus lock VM exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Identify vCPU0 by its vcpu_idx instead of its vCPUs array entry (Vitaly Kuznetsov) [2009340] - KVM: x86: Query vcpu->vcpu_idx directly and drop its accessor (Vitaly Kuznetsov) [2009340] - kvm: fix wrong exception emulation in check_rdtsc (Vitaly Kuznetsov) [2009340] - KVM: SEV: Pin guest memory for write for RECEIVE_UPDATE_DATA (Vitaly Kuznetsov) [2009340] - KVM: SVM: fix missing sev_decommission in sev_receive_start (Vitaly Kuznetsov) [2009340] - KVM: SEV: Acquire vcpu mutex when updating VMSA (Vitaly Kuznetsov) [2009340] - KVM: do not shrink halt_poll_ns below grow_start (Vitaly Kuznetsov) [2009340] - KVM: nVMX: fix comments of handle_vmon() (Vitaly Kuznetsov) [2009340] - KVM: x86: Handle SRCU initialization failure during page track init (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove defunct "nr_active_uret_msrs" field (Vitaly Kuznetsov) [2009340] - selftests: KVM: Align SMCCC call with the spec in steal_time (Vitaly Kuznetsov) [2009340] - selftests: KVM: Fix check for !POLLIN in demand_paging_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Clear KVM's cached guest CR3 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Mark all registers as avail/dirty at vCPU creation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add a test for KVM_RUN+rseq to detect task migration bugs (Vitaly Kuznetsov) [2009340] - tools: Move x86 syscall number fallbacks to .../uapi/ (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix get_run_delay() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests: kvm: move get_run_delay() into lib/test_util (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_trans_hugepagesz() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - selftests:kvm: fix get_warnings_count() ignoring fscanf() return warn (Vitaly Kuznetsov) [2009340] - tools: rename bitmap_alloc() to bitmap_zalloc() (Vitaly Kuznetsov) [2009340] - KVM: Drop unused kvm_dirty_gfn_invalid() (Vitaly Kuznetsov) [2009340] - KVM: MMU: mark role_regs and role accessors as maybe unused (Vitaly Kuznetsov) [2009340] - x86/kvm: Don't enable IRQ when IRQ enabled in kvm_wait (Vitaly Kuznetsov) [2009340] - KVM: stats: Add VM stat for remote tlb flush requests (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move lpage_disallowed_link further "down" in kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Relocate kvm_mmu_page.tdp_mmu_page for better cache locality (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: mmu: Add guest physical address check in translate_gpa()" (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove unused field mmio_cached in struct kvm_mmu_page (Vitaly Kuznetsov) [2009340] - KVM: VMX: avoid running vmx_handle_exit_irqoff in case of emulation (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't freak out if pml5_root is NULL on 4-level host (Vitaly Kuznetsov) [2009340] - KVM: SVM: Add 5-level page table support for SVM (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Support shadowing NPT when 5-level paging is enabled in host (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow CPU to force vendor-specific TDP level (Vitaly Kuznetsov) [2009340] - KVM: x86: clamp host mapping level to max_level in kvm_mmu_max_mapping_level (Vitaly Kuznetsov) [2009340] - KVM: x86: implement KVM_GUESTDBG_BLOCKIRQ (Vitaly Kuznetsov) [2009340] - KVM: SVM: split svm_handle_invalid_exit (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Avoid collision with !PRESENT SPTEs in TDP MMU lpage stats (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant spte present check in mmu_set_spte (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt polling related histogram stats (Vitaly Kuznetsov) [2009340] - KVM: stats: Add halt_wait_ns stats for all architectures (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add checks for histogram stats bucket_size field (Vitaly Kuznetsov) [2009340] - KVM: stats: Update doc for histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: stats: Support linear and logarithmic histogram statistics (Vitaly Kuznetsov) [2009340] - KVM: SVM: AVIC: drop unsupported AVIC base relocation code (Vitaly Kuznetsov) [2009340] - KVM: SVM: call avic_vcpu_load/avic_vcpu_put when enabling/disabling AVIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: move check for kvm_vcpu_apicv_active outside of avic_vcpu_{put|load} (Vitaly Kuznetsov) [2009340] - KVM: SVM: avoid refreshing avic if its state didn't change (Vitaly Kuznetsov) [2009340] - KVM: SVM: remove svm_toggle_avic_for_irq_window (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Deactivate APICv only when AutoEOI feature is in use (Vitaly Kuznetsov) [2009340] - KVM: SVM: add warning for mistmatch between AVIC vcpu state and AVIC inhibition (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: fix race in kvm_request_apicv_update on SVM (Vitaly Kuznetsov) [2009340] - KVM: x86: don't disable APICv memslot when inhibited (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow APICv memslot to be enabled but invisible (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: allow kvm_faultin_pfn to return page fault handling code (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: rename try_async_pf to kvm_faultin_pfn (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: add comment explaining arguments to kvm_zap_gfn_range (Vitaly Kuznetsov) [2009340] - KVM: Allow to have arch-specific per-vm debugfs files (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Unconditionally clear nested.pi_pending on nested VM-Enter (Vitaly Kuznetsov) [2009340] - KVM: x86: Clean up redundant ROL16(val, n) macro definition (Vitaly Kuznetsov) [2009340] - KVM: x86: Move declaration of kvm_spurious_fault() to x86.h (Vitaly Kuznetsov) [2009340] - KVM: x86: Kill off __ex() and __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Hide VMCS control calculators in vmx.c (Vitaly Kuznetsov) [2009340] - KVM: VMX: Drop caching of KVM's desired sec exec controls for vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Pull KVM L0's desired controls directly from vmcs01 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Reset DR6 only when KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Set host DR6 only on VMX and for KVM_DEBUGREG_WONT_EXIT (Vitaly Kuznetsov) [2009340] - KVM: X86: Remove unneeded KVM_DEBUGREG_RELOAD (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a #PF (Vitaly Kuznetsov) [2009340] - kvm: vmx: Sync all matching EPTPs when injecting nested EPT fault (Vitaly Kuznetsov) [2009340] - KVM: x86: remove dead initialization (Vitaly Kuznetsov) [2009340] - KVM: x86: Allow guest to set EFER.NX=1 on non-PAE 32-bit kernels (Vitaly Kuznetsov) [2009340] - x86: Fix typo s/ECLR/ELCR/ for the PIC register (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use current VMCS to query WAITPKG support for MSR emulation (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move vcpu_args_set into perf_test_util (Vitaly Kuznetsov) [2009340] - KVM: selftests: Support multiple slots in dirty_log_perf_test (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Leverage vcpu->last_used_slot for rmap_add and rmap_recycle (Vitaly Kuznetsov) [2009340] - KVM: Cache the last used slot index per vCPU (Vitaly Kuznetsov) [2009340] - KVM: Move last_used_slot logic out of search_memslots (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds (Vitaly Kuznetsov) [2009340] - KVM: xen: do not use struct gfn_to_hva_cache (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix hyperv_clock test (Vitaly Kuznetsov) [2009340] - KVM: SVM: improve the code readability for ASID management (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB (Vitaly Kuznetsov) [2009340] - KVM: Do not leak memory for duplicate debugfs directories (Vitaly Kuznetsov) [2009340] - KVM: x86/pmu: Introduce pmc->is_paused to reduce the call time of perf interfaces (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize zapping rmap (Vitaly Kuznetsov) [2009340] - KVM: X86: Optimize pte_list_desc with per-array counter (Vitaly Kuznetsov) [2009340] - KVM: X86: MMU: Tune PTE_LIST_EXT to be bigger (Vitaly Kuznetsov) [2009340] - KVM: selftests: Test access to XMM fast hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check if guest is allowed to use XMM registers for hypercall input (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce trace_kvm_hv_hypercall_done() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to hypercall before reading XMM registers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: remove useless kvm_clear_*_queue (Vitaly Kuznetsov) [2009340] - KVM: x86: Preserve guest's CR0.CD/NW on INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant clearing of vcpu->arch.hflags at INIT/RESET (Vitaly Kuznetsov) [2009340] - KVM: SVM: Emulate #INIT in response to triple fault shutdown (Vitaly Kuznetsov) [2009340] - KVM: VMX: Move RESET-only VMWRITE sequences to init_vmcs() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove redundant write to set vCPU as active at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Smush x2APIC MSR bitmap adjustments into single function (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove unnecessary initialization of msr_bitmap_mode (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't redo x2APIC MSR bitmaps when userspace filter is changed (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Remove obsolete MSR bitmap refresh at nested transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove obsolete MSR bitmap refresh at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move setting of sregs during vCPU RESET/INIT to common x86 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Don't _explicitly_ reconfigure user return MSRs on vCPU INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refresh list of user return MSRs after setting guest CPUID (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip pointless MSR bitmap update when setting EFER (Vitaly Kuznetsov) [2009340] - KVM: SVM: Stuff save->dr6 at during VMSA sync, not at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop redundant writes to vmcb->save.cr4 at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Tweak order of cr0/cr4/efer writes at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't evaluate "emulation required" on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip emulation required checks during pmode/rmode transitions (Vitaly Kuznetsov) [2009340] - KVM: VMX: Process CR0.PG side effects after setting CR0 assets (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Skip the permission_fault() check on MMIO if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Pull GUEST_CR3 from the VMCS iff CR3 load exiting is disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em (Vitaly Kuznetsov) [2009340] - KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0() (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove direct write to vcpu->arch.cr0 during vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted guest (Vitaly Kuznetsov) [2009340] - KVM: SVM: Don't bother writing vmcb->save.rip at vCPU RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: Move EDX initialization at vCPU RESET to common code (Vitaly Kuznetsov) [2009340] - KVM: x86: Consolidate APIC base RESET initialization code (Vitaly Kuznetsov) [2009340] - KVM: x86: Open code necessary bits of kvm_lapic_set_base() at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: VMX: Stuff vcpu->arch.apic_base directly at vCPU RESET (Vitaly Kuznetsov) [2009340] - KVM: x86: Set BSP bit in reset BSP vCPU's APIC base by default (Vitaly Kuznetsov) [2009340] - KVM: x86: Don't force set BSP bit when local APIC is managed by userspace (Vitaly Kuznetsov) [2009340] - KVM: x86: Migrate the PIT only if vcpu0 is migrated, not any BSP (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove defunct BSP "update" in local APIC reset (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN if the APIC map is dirty without an in-kernel local APIC (Vitaly Kuznetsov) [2009340] - KVM: SVM: Drop explicit MMU reset at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Remove explicit MMU reset in enter_rmode() (Vitaly Kuznetsov) [2009340] - KVM: SVM: Fall back to KVM's hardcoded value for EDX at RESET/INIT (Vitaly Kuznetsov) [2009340] - KVM: SVM: Require exact CPUID.0x1 match when stuffing EDX at INIT (Vitaly Kuznetsov) [2009340] - KVM: VMX: Set EDX at INIT with CPUID.0x1, Family-Model-Stepping (Vitaly Kuznetsov) [2009340] - KVM: SVM: Zero out GDTR.base and IDTR.base on INIT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Set LDTR to its architecturally defined value on nested VM-Exit (Vitaly Kuznetsov) [2009340] - KVM: x86: Flush the guest's TLB on INIT (Vitaly Kuznetsov) [2009340] - KVM: x86: APICv: drop immediate APICv disablement on current vCPU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: fast_page_fault support for the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make walk_shadow_page_lockless_{begin,end} interoperate with the TDP MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix use of enums in trace_fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename cr2_or_gpa to gpa in fast_page_fault (Vitaly Kuznetsov) [2009340] - KVM: Introduce kvm_get_kvm_safe() (Vitaly Kuznetsov) [2009340] - x86/kvm: remove non-x86 stuff from arch/x86/kvm/ioapic.h (Vitaly Kuznetsov) [2009340] - KVM: X86: Add per-vm stat for max rmap list size (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Return old SPTE from mmu_spte_clear_track_bits() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor shadow walk in __direct_map() to reduce indentation (Vitaly Kuznetsov) [2009340] - KVM: x86: Hoist kvm_dirty_regs check out of sync_regs() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Mark VM as bugged if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_BUG/KVM_BUG_ON to handle bugs that are fatal to the VM (Vitaly Kuznetsov) [2009340] - KVM: Export kvm_make_all_cpus_request() for use in marking VMs as bugged (Vitaly Kuznetsov) [2009340] - KVM: Add infrastructure and macro to mark VM as bugged (Vitaly Kuznetsov) [2009340] - KVM: Get rid of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: arm64: Use get_page() instead of kvm_get_pfn() (Vitaly Kuznetsov) [2009340] - KVM: x86: accept userspace interrupt only if no event is injected (Vitaly Kuznetsov) [2009340] - KVM: add missing compat KVM_CLEAR_DIRTY_LOG (Vitaly Kuznetsov) [2009340] - KVM: use cpu_relax when halt polling (Vitaly Kuznetsov) [2009340] - KVM: SVM: use vmcb01 in svm_refresh_apicv_exec_ctrl (Vitaly Kuznetsov) [2009340] - KVM: SVM: tweak warning about enabled AVIC on nested entry (Vitaly Kuznetsov) [2009340] - KVM: SVM: svm_set_vintr don't warn if AVIC is active but is about to be deactivated (Vitaly Kuznetsov) [2009340] - KVM: SVM: delay svm_vcpu_init_msrpm after svm->vmcb is initialized (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce access_tracking_perf_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix missing break in dirty_log_perf_test arg parsing (Vitaly Kuznetsov) [2009340] - x86/kvm: fix vcpu-id indexed array sizes (Vitaly Kuznetsov) [2009340] - KVM: x86: Check the right feature bit for MSR_KVM_ASYNC_PF_ACK access (Vitaly Kuznetsov) [2009340] - KVM: Documentation: Fix KVM_CAP_ENFORCE_PV_FEATURE_CPUID name (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Swap the parameter order for svm_copy_vmrun_state()/svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Rename nested_svm_vmloadsave() to svm_copy_vmloadsave_state() (Vitaly Kuznetsov) [2009340] - docs: virt: kvm: api.rst: replace some characters (Vitaly Kuznetsov) [2009340] - docs: kvm: properly format code blocks and lists (Vitaly Kuznetsov) [2009340] - docs: kvm: fix build warnings (Vitaly Kuznetsov) [2009340] - KVM: selftests: Address extra memslot parameters in vm_vaddr_alloc (Vitaly Kuznetsov) [2009340] - kvm: debugfs: fix memory leak in kvm_create_vm_debugfs (Vitaly Kuznetsov) [2009340] - Revert "KVM: x86: WARN and reject loading KVM if NX is supported but not enabled" (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Address missing vm_install_exception_handler conversions (Vitaly Kuznetsov) [2009340] - KVM: selftests: change pthread_yield to sched_yield (Vitaly Kuznetsov) [2009340] - KVM: x86: rename apic_access_page_done to apic_access_memslot_enabled (Vitaly Kuznetsov) [2009340] - kvm: x86: disable the narrow guest module parameter on unload (Vitaly Kuznetsov) [2009340] - selftests: kvm: Allows userspace to handle emulation errors. (Vitaly Kuznetsov) [2009340] - kvm: x86: Allow userspace to handle emulation errors (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Let guest use GBPAGES if supported in hardware and TDP is on (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR4.SMEP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get CR0.WP from MMU, not vCPU, in shadow page fault (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop redundant rsvd bits reset for nested NPT (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Optimize and clean up so called "last nonleaf level" logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Enhance comments for MMU roles and nested transition trickiness (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN on any reserved SPTE value when making a valid SPTE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helpers to do full reserved SPTE checks w/ generic MMU (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to determine PTTYPE (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Collapse 32-bit PAE and 64-bit statements for helpers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a helper to calculate root from role_regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add helper to update paging metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't update nested guest's paging bitmasks if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate reset_rsvds_bits_mask() calls (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role_regs to get LA57, and drop vCPU LA57 helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Get nested MMU's root level from the MMU's role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop "nx" from MMU context now that there are no readers (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get EFER.NX during MMU configuration (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role/role_regs to compute context's metadata (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to detect EFER.NX in guest page walk (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's roles to compute last non-leaf level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute PKRU bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to compute permission bitmask (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop vCPU param from reserved bits calculator (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role to get CR4.PSE for computing rsvd bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't grab CR4.PSE for calculating shadow reserved bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Always set new mmu_role immediately after checking old role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Set CR4.PKE/LA57 in MMU role iff long mode is active (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Do not set paging-related bits in MMU role if CR0.PG=0 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add accessors to query mmu_role bits (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename "nxe" role bit to "efer_nx" for macro shenanigans (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU's role_regs, not vCPU state, to compute mmu_role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Ignore CR0 and CR4 bits in nested EPT MMU role (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Consolidate misc updates into shadow_mmu_init_context() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add struct and helpers to retrieve MMU role bits from regs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab shadow root level from mmu_role for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Move nested NPT reserved bit calculation into MMU proper (Vitaly Kuznetsov) [2009340] - KVM: x86: Read and pass all CR0/CR4 role bits to shadow MMU helper (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop smep_andnot_wp check from "uses NX" for shadow MMUs (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Add a comment to document why nNPT uses vmcb01, not vCPU state (Vitaly Kuznetsov) [2009340] - KVM: x86: Fix sizes used to pass around CR0, CR4, and EFER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Rename unsync helper and update related comments (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Drop the intermediate "transient" __kvm_sync_page() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: comment on kvm_mmu_get_page's syncing of pages (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: WARN and zap SP when sync'ing if MMU role mismatches (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Use MMU role to check for matching guest page sizes (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Unconditionally zap unsync SPs when creating >4k SP at GFN (Vitaly Kuznetsov) [2009340] - Revert "KVM: MMU: record maximum physical address width in kvm_mmu_extended_role" (Vitaly Kuznetsov) [2009340] - KVM: x86: Alert userspace that KVM_SET_CPUID{,2} after KVM_RUN is broken (Vitaly Kuznetsov) [2009340] - KVM: debugfs: Reuse binary stats descriptors (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add selftest for KVM statistics data binary interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Add documentation for binary statistics interface (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VCPU (Vitaly Kuznetsov) [2009340] - KVM: stats: Support binary stats retrieval for a VM (Vitaly Kuznetsov) [2009340] - KVM: stats: Add fd-based API to read binary stats data (Vitaly Kuznetsov) [2009340] - KVM: stats: Separate generic stats from architecture specific ones (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Don't WARN on a NULL shadow page in TDP MMU check (Vitaly Kuznetsov) [2009340] - KVM: sefltests: Add x86-64 test to verify MMU reacts to CPUID updates (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add hugepage support for x86-64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Genericize upper level page table entry struct (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add PTE helper for x86-64 in preparation for hugepages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename x86's page table "address" to "pfn" (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add wrapper to allocate page table page (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally allocate EPT tables in memslot 0 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot '0' for page table allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for vaddr allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for CPUID test alloc (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc page helper for xAPIC IPI test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use alloc_page helper for x86-64's GDT/IDT/TSS allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Lower the min virtual address for misc page allocations (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add helpers to allocate N pages of virtual memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: Use "standard" min virtual address for Hyper-V pages (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 for x86's GDT/TSS setup (Vitaly Kuznetsov) [2009340] - KVM: selftests: Unconditionally use memslot 0 when loading elf binary (Vitaly Kuznetsov) [2009340] - KVM: selftests: Zero out the correct page in the Hyper-V features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Remove errant asm/barrier.h include to fix arm64 build (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix uninitialized boolean variable flush (Vitaly Kuznetsov) [2009340] - KVM: selftests: fix triple fault if ept=0 in dirty_log_test (Vitaly Kuznetsov) [2009340] - KVM: x86: Print CPU of last attempted VM-entry when dumping VMCS/VMCB (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Dynamically compute max VMCS index for vmcs12 (Vitaly Kuznetsov) [2009340] - KVM: VMX: Skip #PF(RSVD) intercepts when emulating smaller maxphyaddr (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant root_hpa checks (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Refactor is_tdp_mmu_root into is_tdp_mmu (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_enabled check (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Remove redundant is_tdp_mmu_root check (Vitaly Kuznetsov) [2009340] - KVM: x86: Stub out is_tdp_mmu_root on 32-bit hosts (Vitaly Kuznetsov) [2009340] - KVM: x86: WARN and reject loading KVM if NX is supported but not enabled (Vitaly Kuznetsov) [2009340] - KVM: SVM: Refuse to load kvm_amd if NX support is not available (Vitaly Kuznetsov) [2009340] - KVM: VMX: Refuse to load kvm_intel if EPT and NX are disabled (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix TDP MMU page table level (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix pf_fixed count in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix return value in tdp_mmu_map_handle_target_level() (Vitaly Kuznetsov) [2009340] - KVM: LAPIC: Keep stored TMCCT register value 0 after KVM_SET_LAPIC (Vitaly Kuznetsov) [2009340] - KVM: X86: Introduce KVM_HC_MAP_GPA_RANGE hypercall (Vitaly Kuznetsov) [2009340] - KVM: switch per-VM stats to u64 (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Grab nx_lpage_splits as an unsigned long before division (Vitaly Kuznetsov) [2009340] - KVM: x86: Check for pending interrupts when APICv is getting disabled (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop redundant checks on vmcs12 in EPTP switching emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: WARN if subtly-impossible VMFUNC conditions occur (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop pointless @reset_roots from kvm_init_mmu() (Vitaly Kuznetsov) [2009340] - KVM: x86: Defer MMU sync on PCID invalidation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Use fast PGD switch when emulating VMFUNC[EPTP_SWITCH] (Vitaly Kuznetsov) [2009340] - KVM: x86: Use KVM_REQ_TLB_FLUSH_GUEST to handle INVPCID(ALL) emulation (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Free only guest_mode (L2) roots on INVVPID w/o EPT (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Consolidate VM-Enter/VM-Exit TLB flush and MMU sync logic (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop skip MMU sync and TLB flush params from "new PGD" helpers (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Move TLB flushing logic (or lack thereof) to dedicated helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Uncondtionally skip MMU sync/TLB flush in MOV CR3's PGD switch (Vitaly Kuznetsov) [2009340] - KVM: x86: Invalidate all PGDs for the current PCID on MOV CR3 w/ flush (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Don't clobber nested MMU's A/D status on EPTP switch (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Sync all PGDs on nested transition with shadow paging (Vitaly Kuznetsov) [2009340] - KVM: x86: avoid loading PDPTRs after migration when possible (Vitaly Kuznetsov) [2009340] - KVM: x86: Introduce KVM_GET_SREGS2 / KVM_SET_SREGS2 (Vitaly Kuznetsov) [2009340] - KVM: x86: introduce kvm_register_clear_available (Vitaly Kuznetsov) [2009340] - KVM: nVMX: delay loading of PDPTRs to KVM_REQ_GET_NESTED_STATE_PAGES (Vitaly Kuznetsov) [2009340] - KVM: nSVM: refactor the CR3 reload on migration (Vitaly Kuznetsov) [2009340] - KVM: x86: Always load PDPTRs on CR3 load for SVM w/o NPT and a PAE guest (Vitaly Kuznetsov) [2009340] - KVM: nSVM: Drop pointless pdptrs_changed() check on nested transition (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Drop obsolete (and pointless) pdptrs_changed() check (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce hyperv_features test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move evmcs.h to x86_64/ (Vitaly Kuznetsov) [2009340] - KVM: selftests: move Hyper-V MSR definitions to hyperv.h (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_CLUSTER_IPI_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_DEBUGGING privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_SIGNAL_EVENTS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_POST_MESSAGES privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Check access to HVCALL_NOTIFY_LONG_SPIN_WAIT hypercall (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_STIMER_DIRECT_MODE_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Inverse the default in hv_check_msr_access() (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_DEBUG_MSRS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_REENLIGHTENMENT privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_ACCESS_FREQUENCY_MSRS privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_APIC_ACCESS_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNTIMER_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_SYNIC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_REFERENCE_TSC_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_RESET_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_INDEX_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_TIME_REF_COUNT_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_VP_RUNTIME_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Honor HV_MSR_HYPERCALL_AVAILABLE privilege bit (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Prepare to check access to Hyper-V MSRs (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Cache guest CPUID leaves determining features availability (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Introduce KVM_CAP_HYPERV_ENFORCE_CPUID (Vitaly Kuznetsov) [2009340] - asm-generic/hyperv: add HV_STATUS_ACCESS_DENIED definition (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Direct Virtual Flush support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Enlightened MSR-Bitmap support (Vitaly Kuznetsov) [2009340] - KVM: SVM: hyper-v: Remote TLB flush for SVM (Vitaly Kuznetsov) [2009340] - KVM: SVM: Software reserved fields (Vitaly Kuznetsov) [2009340] - KVM: x86: hyper-v: Move the remote TLB flush logic out of vmx (Vitaly Kuznetsov) [2009340] - KVM: nVMX: nSVM: Add a new VCPU statistic to show if VCPU is in guest mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop "pre_" from enter/leave_smm() helpers (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop .post_leave_smm(), i.e. the manual post-RSM MMU reset (Vitaly Kuznetsov) [2009340] - KVM: x86: Rename SMM tracepoint to make it reflect reality (Vitaly Kuznetsov) [2009340] - KVM: x86: Move "entering SMM" tracepoint into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Move (most) SMM hflags modifications into kvm_smm_changed() (Vitaly Kuznetsov) [2009340] - KVM: x86: Invoke kvm_smm_changed() immediately after clearing SMM flag (Vitaly Kuznetsov) [2009340] - KVM: x86: Replace .set_hflags() with dedicated .exiting_smm() helper (Vitaly Kuznetsov) [2009340] - KVM: x86: Emulate triple fault shutdown if RSM emulation fails (Vitaly Kuznetsov) [2009340] - KVM: x86: Drop vendor specific functions for APICv/AVIC enablement (Vitaly Kuznetsov) [2009340] - KVM: x86: Use common 'enable_apicv' variable for both APICv and AVIC (Vitaly Kuznetsov) [2009340] - kvm: x86: implement KVM PM-notifier (Vitaly Kuznetsov) [2009340] - kvm: add PM-notifier (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce x2APIC register manipulation functions (Vitaly Kuznetsov) [2009340] - KVM: selftests: Hoist APIC functions out of individual tests (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move APIC definitions into a separate file (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Disable vmcs02 posted interrupts if vmcs12 PID isn't mappable (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Fail on MMIO completion for nested posted interrupts (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to kvm_apic_accept_events (Vitaly Kuznetsov) [2009340] - KVM: x86: Add a return code to inject_pending_event (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a return code to vmx_complete_nested_posted_interrupt (Vitaly Kuznetsov) [2009340] - KVM: x86: Remove guest mode check from kvm_check_nested_events (Vitaly Kuznetsov) [2009340] - KVM: selftests: x86: Add vmx_nested_tsc_scaling_test (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Enable nested TSC scaling (Vitaly Kuznetsov) [2009340] - KVM: X86: Add vendor callbacks for writing the TSC multiplier (Vitaly Kuznetsov) [2009340] - KVM: X86: Move write_l1_tsc_offset() logic to common code and rename it (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions that calculate the nested TSC fields (Vitaly Kuznetsov) [2009340] - KVM: X86: Add functions for retrieving L2 TSC fields from common code (Vitaly Kuznetsov) [2009340] - KVM: nVMX: Add a TSC multiplier field in VMCS12 (Vitaly Kuznetsov) [2009340] - KVM: X86: Add a ratio parameter to kvm_scale_tsc() (Vitaly Kuznetsov) [2009340] - KVM: X86: Rename kvm_compute_tsc_offset() to kvm_compute_l1_tsc_offset() (Vitaly Kuznetsov) [2009340] - KVM: X86: Store L1's TSC scaling ratio in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [2009340] - math64.h: Add mul_s64_u64_shr() (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Add a field to control memslot rmap allocation (Vitaly Kuznetsov) [2009340] - KVM: mmu: Add slots_arch_lock for memslot arch fields (Vitaly Kuznetsov) [2009340] - KVM: mmu: Refactor memslot copy (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Factor out allocating memslot rmap (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Deduplicate rmap freeing (Vitaly Kuznetsov) [2009340] - KVM: x86: Do not write protect huge page in initially-all-set mode (Vitaly Kuznetsov) [2009340] - KVM: x86: Support write protecting only large pages (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Advertise support for fast XMM hypercalls (Vitaly Kuznetsov) [2009340] - KVM: x86: kvm_hv_flush_tlb use inputs from XMM registers (Vitaly Kuznetsov) [2009340] - KVM: hyper-v: Collect hypercall params into struct (Vitaly Kuznetsov) [2009340] - KVM: x86: Move FPU register accessors into fpu.h (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Make is_nx_huge_page_enabled an inline function (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix kvm_check_cap() assertion (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add aarch64/debug-exceptions test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Add exception handling support for aarch64 (Vitaly Kuznetsov) [2009340] - KVM: selftests: Move GUEST_ASSERT_EQ to utils header (Vitaly Kuznetsov) [2009340] - KVM: selftests: Introduce UCALL_UNHANDLED for unhandled vector reporting (Vitaly Kuznetsov) [2009340] - KVM: selftests: Complete x86_64/sync_regs_test ucall (Vitaly Kuznetsov) [2009340] - KVM: selftests: Rename vm_handle_exception (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix compiling errors when initializing the static structure (Vitaly Kuznetsov) [2009340] - selftests: kvm: Add support for customized slot0 memory size (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix overlapping addresses in memslot_perf_test (Vitaly Kuznetsov) [2009340] - selftests: kvm: do only 1 memslot_perf_test run by default (Vitaly Kuznetsov) [2009340] - KVM: X86: Use _BITUL() macro in UAPI headers (Vitaly Kuznetsov) [2009340] - KVM: selftests: create alias mappings when using shared memory (Vitaly Kuznetsov) [2009340] - KVM: selftests: add shmem backing source type (Vitaly Kuznetsov) [2009340] - KVM: selftests: refactor vm_mem_backing_src_type flags (Vitaly Kuznetsov) [2009340] - KVM: selftests: allow different backing source types (Vitaly Kuznetsov) [2009340] - KVM: selftests: compute correct demand paging size (Vitaly Kuznetsov) [2009340] - KVM: selftests: simplify setup_demand_paging error handling (Vitaly Kuznetsov) [2009340] - KVM: selftests: Print a message if /dev/kvm is missing (Vitaly Kuznetsov) [2009340] - KVM: selftests: trivial comment/logging fixes (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix hang in hardware_disable_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Ignore CPUID.0DH.1H in get_cpuid_test (Vitaly Kuznetsov) [2009340] - KVM: selftests: Fix 32-bit truncation of vm_get_max_gfn() (Vitaly Kuznetsov) [2009340] - KVM: selftests: add a memslot-related performance benchmark (Vitaly Kuznetsov) [2009340] - KVM: selftests: Keep track of memslots more efficiently (Vitaly Kuznetsov) [2009340] - selftests: kvm: fix potential issue with ELF loading (Vitaly Kuznetsov) [2009340] - selftests: kvm: make allocation of extra memory take effect (Vitaly Kuznetsov) [2009340] - docs: virt: api.rst: fix a pointer to SGX documentation (Vitaly Kuznetsov) [2009340] - docs: vcpu-requests.rst: fix reference for atomic ops (Vitaly Kuznetsov) [2009340] - x86/msr: Rename MSR_K8_SYSCFG to MSR_AMD64_SYSCFG (Vitaly Kuznetsov) [2009340] - x86/sev: Move GHCB MSR protocol and NAE definitions in a common header (Vitaly Kuznetsov) [2009340] - x86/sev-es: Rename sev-es.{ch} to sev.{ch} (Vitaly Kuznetsov) [2009340] - x86/sev-es: Replace open-coded hlt-loops with sev_es_terminate() (Vitaly Kuznetsov) [2009340] - tools/kvm_stat: Fix documentation typo (Vitaly Kuznetsov) [2009340] - KVM: x86: Hide RDTSCP and RDPID if MSR_TSC_AUX probing failed (Vitaly Kuznetsov) [2009340] - KVM: x86: Tie Intel and AMD behavior for MSR_TSC_AUX to guest CPU model (Vitaly Kuznetsov) [2009340] - KVM: x86: Move uret MSR slot management to common x86 (Vitaly Kuznetsov) [2009340] - KVM: x86: Export the number of uret MSRs to vendor modules (Vitaly Kuznetsov) [2009340] - KVM: VMX: Disable loading of TSX_CTRL MSR the more conventional way (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use common x86's uret MSR list as the one true list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Use flag to indicate "active" uret MSRs instead of sorting list (Vitaly Kuznetsov) [2009340] - KVM: VMX: Configure list of user return MSRs at module init (Vitaly Kuznetsov) [2009340] - KVM: x86: Add support for RDPID without RDTSCP (Vitaly Kuznetsov) [2009340] - selftests: kvm: remove reassignment of non-absolute variables (Vitaly Kuznetsov) [2009340] - doc/kvm: Fix wrong entry for KVM_CAP_X86_MSR_FILTER (Vitaly Kuznetsov) [2009340] - KVM: x86/mmu: Fix kdoc of __handle_changed_spte (Vitaly Kuznetsov) [2009340] - KVM: documentation: fix sphinx warnings (Vitaly Kuznetsov) [2009340] - KVM: x86: document behavior of measurement ioctls with len==0 (Vitaly Kuznetsov) [2009340] - documentation/kvm: additional explanations on KVM_SET_BOOT_CPU_ID (Vitaly Kuznetsov) [2009340] - docs: kvm: Fix a typo ("althought") (Vitaly Kuznetsov) [2009340] - KVM: move EXIT_FASTPATH_REENTER_GUEST to common code (Vitaly Kuznetsov) [2009340] - mm, kvm: account kvm_vcpu_mmap to kmemcg (Vitaly Kuznetsov) [2009340] - x86/kvm: Use msi_msg shadow structs (Vitaly Kuznetsov) [2009340] - ceph: fix up non-directory creation in SGID directories (Jeffrey Layton) [2017796] - ceph: initialize pathlen variable in reconnect_caps_cb (Jeffrey Layton) [2017796] - ceph: initialize i_size variable in ceph_sync_read (Jeffrey Layton) [2017796] - ceph: fix duplicate increment of opened_inodes metric (Jeffrey Layton) [2017796] - ceph: add a new metric to keep track of remote object copies (Jeffrey Layton) [2017796] - libceph, ceph: move ceph_osdc_copy_from() into cephfs code (Jeffrey Layton) [2017796] - ceph: clean-up metrics data structures to reduce code duplication (Jeffrey Layton) [2017796] - ceph: split 'metric' debugfs file into several files (Jeffrey Layton) [2017796] - ceph: return the real size read when it hits EOF (Jeffrey Layton) [2017796] - ceph: properly handle statfs on multifs setups (Jeffrey Layton) [2017796] - ceph: shut down mount on bad mdsmap or fsmap decode (Jeffrey Layton) [2017796] - ceph: fix mdsmap decode when there are MDS's beyond max_mds (Jeffrey Layton) [2017796] - ceph: ignore the truncate when size won't change with Fx caps issued (Jeffrey Layton) [2017796] - ceph: don't rely on error_string to validate blocklisted session. (Jeffrey Layton) [2017796] - ceph: just use ci->i_version for fscache aux info (Jeffrey Layton) [2017796] - ceph: shut down access to inode when async create fails (Jeffrey Layton) [2017796] - ceph: refactor remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: fix auth cap handling logic in remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: drop private list from remove_session_caps_cb (Jeffrey Layton) [2017796] - ceph: don't use -ESTALE as special return code in try_get_cap_refs (Jeffrey Layton) [2017796] - ceph: print inode numbers instead of pointer values (Jeffrey Layton) [2017796] - ceph: enable async dirops by default (Jeffrey Layton) [2017796] - libceph: drop ->monmap and err initialization (Jeffrey Layton) [2017796] - ceph: convert to noop_direct_IO (Jeffrey Layton) [2017796] - ceph: fix off by one bugs in unsafe_request_wait() (Jeffrey Layton) [2017796] - ceph: fix handling of "meta" errors (Jeffrey Layton) [2017796] - ceph: drop the mdsc_get_session/put_session dout messages (Jeffrey Layton) [2017796] - ceph: lockdep annotations for try_nonblocking_invalidate (Jeffrey Layton) [2017796] - ceph: don't WARN if we're forcibly removing the session caps (Jeffrey Layton) [2017796] - ceph: don't WARN if we're force umounting (Jeffrey Layton) [2017796] - ceph: remove the capsnaps when removing caps (Jeffrey Layton) [2017796] - ceph: request Fw caps before updating the mtime in ceph_write_iter (Jeffrey Layton) [2017796] - ceph: reconnect to the export targets on new mdsmaps (Jeffrey Layton) [2017796] - ceph: print more information when we can't find snaprealm (Jeffrey Layton) [2017796] - ceph: add ceph_change_snap_realm() helper (Jeffrey Layton) [2017796] - ceph: remove redundant initializations from mdsc and session (Jeffrey Layton) [2017796] - ceph: cancel delayed work instead of flushing on mdsc teardown (Jeffrey Layton) [2017796] - ceph: add a new vxattr to return auth mds for an inode (Jeffrey Layton) [2017796] - ceph: flush the mdlog before waiting on unsafe reqs (Jeffrey Layton) [2017796] - ceph: flush mdlog before umounting (Jeffrey Layton) [2017796] - ceph: make iterate_sessions a global symbol (Jeffrey Layton) [2017796] - ceph: make ceph_create_session_msg a global symbol (Jeffrey Layton) [2017796] - ceph: fix comment about short copies in ceph_write_end (Jeffrey Layton) [2017796] - ceph: fix memory leak on decode error in ceph_handle_caps (Jeffrey Layton) [2017796] - RDMA/irdma: Fix a potential memory allocation issue in 'irdma_prm_add_pble_mem()' (Kamal Heib) [1970672] - RDMA/irdma: Don't arm the CQ more than two times if no CE for this CQ (Kamal Heib) [1970672] - RDMA/irdma: Fix a user-after-free in add_pble_prm (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC errors (Kamal Heib) [1970672] - RDMA/irdma: Do not hold qos mutex twice on QP resume (Kamal Heib) [1970672] - RDMA/irdma: Set VLAN in UD work completion correctly (Kamal Heib) [1970672] - RDMA/irdma: Process extended CQ entries correctly (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when there are MW bind errors (Kamal Heib) [1970672] - RDMA/irdma: Report correct WC error when transport retry counter is exceeded (Kamal Heib) [1970672] - RDMA/irdma: Validate number of CQ entries on create CQ (Kamal Heib) [1970672] - RDMA/irdma: Skip CQP ring during a reset (Kamal Heib) [1970672] - RDMA/irdma: Remove the repeated declaration (Kamal Heib) [1970672] - RDMA/irdma: Use correct kconfig symbol for AUXILIARY_BUS (Kamal Heib) [1970672] - RDMA/irdma: Change returned type of irdma_setup_virt_qp to void (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type of irdma_set_hw_rsrc to void (Kamal Heib) [1970672] - RDMA/irdma: change the returned type of irdma_sc_repost_aeq_entries to void (Kamal Heib) [1970672] - RDMA/irdma: Check vsi pointer before using it (Kamal Heib) [1970672] - RDMA/irdma: Change the returned type to void (Kamal Heib) [1970672] - RDMA/irdma: Make spdxcheck.py happy (Kamal Heib) [1970672] - RDMA/irdma: Fix unused variable total_size warning (Kamal Heib) [1970672] - RDMA/irdma: Fix potential overflow expression in irdma_prm_get_pbles (Kamal Heib) [1970672] - RDMA/irdma: Check contents of user-space irdma_mem_reg_req object (Kamal Heib) [1970672] - RDMA/irdma: Remove use of kmap() (Kamal Heib) [1970672] - RDMA/irdma: Use the queried port attributes (Kamal Heib) [1970672] - RDMA/irdma: Check return value from ib_umem_find_best_pgsz (Kamal Heib) [1970672] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [1970672] - RDMA/irdma: Store PBL info address a pointer type (Kamal Heib) [1970672] - RDMA/irdma: Use list_last_entry/list_first_entry (Kamal Heib) [1970672] - RDMA/irdma: Use list_move instead of list_del/list_add (Kamal Heib) [1970672] - RDMA/irdma: Fix return error sign from irdma_modify_qp (Kamal Heib) [1970672] - RDMA/irdma: Fix spelling mistake "Allocal" -> "Allocate" (Kamal Heib) [1970672] - RDMA/irdma: remove redundant initialization of variable val (Kamal Heib) [1970672] - RDMA/irdma: remove extraneous indentation on a statement (Kamal Heib) [1970672] - RDMA/irdma: Fix issues with u8 left shift operation (Kamal Heib) [1970672] - RDMA/irdma: Add irdma Kconfig/Makefile and remove i40iw (Kamal Heib) [1970672] - RDMA/irdma: Add ABI definitions (Kamal Heib) [1970672] - RDMA/irdma: Add dynamic tracing for CM (Kamal Heib) [1970672] - RDMA/irdma: Add miscellaneous utility definitions (Kamal Heib) [1970672] - RDMA/irdma: Add user/kernel shared libraries (Kamal Heib) [1970672] - RDMA/irdma: Add RoCEv2 UD OP support (Kamal Heib) [1970672] - RDMA/irdma: Implement device supported verb APIs (Kamal Heib) [1970672] - RDMA/irdma: Add PBLE resource manager (Kamal Heib) [1970672] - RDMA/irdma: Add connection manager (Kamal Heib) [1970672] - RDMA/irdma: Add QoS definitions (Kamal Heib) [1970672] - RDMA/irdma: Add privileged UDA queue implementation (Kamal Heib) [1970672] - RDMA/irdma: Add HMC backing store setup functions (Kamal Heib) [1970672] - RDMA/irdma: Implement HW Admin Queue OPs (Kamal Heib) [1970672] - RDMA/irdma: Implement device initialization definitions (Kamal Heib) [1970672] - RDMA/irdma: Register auxiliary driver and implement private channel OPs (Kamal Heib) [1970672] - i40e: Register auxiliary devices to provide RDMA (Kamal Heib) [1970672] - i40e: Prep i40e header for aux bus conversion (Kamal Heib) [1970672] - i40e: Replace one-element array with flexible-array member (Kamal Heib) [1970672] - ibmvnic: drop bad optimization in reuse_tx_pools() (Gustavo Walbon) [2028722] - ibmvnic: drop bad optimization in reuse_rx_pools() (Gustavo Walbon) [2028722] - /proc//cmdline: add back the setproctitle() special case (Ian Kent) [1979446] - /proc//cmdline: remove all the special cases (Ian Kent) [1979446] - perf tests vmlinux-kallsyms: Ignore hidden symbols (Michael Petlan) [1903157] - net/sched: sch_ets: don't remove idle classes from the round-robin list (Davide Caratti) [2013073] - net/sched: sch_ets: don't peek at classes beyond 'nbands' (Davide Caratti) [2013073] - net/sched: sch_ets: properly init all active DRR list handles (Davide Caratti) [2013073] - serial: 8250: fix racy uartclk update (Puneet Sethi) [1784121] - serial: 8250: Skip uninitialized TTY port baud rate update (Puneet Sethi) [1784121] - serial: 8250: Discard RTS/DTS setting from clock update method (Puneet Sethi) [1784121] - serial: 8250: Add 8250 port clock update method (Puneet Sethi) [1784121] - serial: 8250_dw: drop bogus uartclk optimisation (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable PSE UART Auto Flow Control (Puneet Sethi) [1784121] - serial: 8250_lpss: Extract dw8250_do_set_termios() for common use (Puneet Sethi) [1784121] - serial: 8250_dw: Fix the trivial typo in the comment (Puneet Sethi) [1784121] - serial: 8250_dw: Re-use temporary variable for of_node (Puneet Sethi) [1784121] - serial: 8250_dw: Drop wrong use of ACPI_PTR() (Puneet Sethi) [1784121] - serial: 8250_lpss: Enable DMA on Intel Elkhart Lake (Puneet Sethi) [1784121] - serial: 8250_dw: Add device HID for new AMD UART controller (Puneet Sethi) [1784121] - serial: 8250_dw: Fix clk-notifier/port suspend deadlock (Puneet Sethi) [1784121] - serial: 8250_dw: Fix common clocks usage race condition (Puneet Sethi) [1784121] - serial: 8250_dw: Pass the same rate to the clk round and set rate methods (Puneet Sethi) [1784121] - serial: 8250_dw: Simplify the ref clock rate setting procedure (Puneet Sethi) [1784121] - serial: 8250_dw: Use devm_clk_get_optional() to get the input clock (Puneet Sethi) [1784121] - serial: 8250_dw: Avoid double error messaging when IRQ absent (Puneet Sethi) [1784121] - serial: 8250_dw: switch to use 8250_dwlib library (Puneet Sethi) [1784121] - serial: 8250_dw: use pointer to uart local variable (Puneet Sethi) [1784121] - serial: 8250_dw: Use a unified new dev variable in remove (Puneet Sethi) [1784121] - serial: 8250_dw: always set baud rate in dw8250_set_termios (Puneet Sethi) [1784121] - serial: 8250_dw: add fractional divisor support (Puneet Sethi) [1784121] - serial: 8250_dw: Introduce IO accessors to extended registers (Puneet Sethi) [1784121] - dmaengine: dw: Program xBAR hardware for Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Make it dependent to HAS_IOMEM (Puneet Sethi) [1784121] - dmaengine dw: Revert "dmaengine: dw: Enable runtime PM" (Puneet Sethi) [1784121] - dmaengine: dw: Enable runtime PM (Puneet Sethi) [1784121] - dmaengine: dw: Add DMA-channels mask cell support (Puneet Sethi) [1784121] - dmaengine: dw: Ignore burst setting for memory peripherals (Puneet Sethi) [1784121] - dmaengine: dw: Discard dlen from the dev-to-mem xfer width calculation (Puneet Sethi) [1784121] - dmaengine: dw: Activate FIFO-mode for memory peripherals only (Puneet Sethi) [1784121] - dmaengine: dw: Initialize max_sg_burst capability (Puneet Sethi) [1784121] - dmaengine: dw: Introduce max burst length hw config (Puneet Sethi) [1784121] - dmaengine: dw: Initialize min and max burst DMA device capability (Puneet Sethi) [1784121] - dmaengine: dw: Set DMA device max segment size parameter (Puneet Sethi) [1784121] - dmaengine: dw: Take HC_LLP flag into account for noLLP auto-config (Puneet Sethi) [1784121] - dmaengine: Introduce DMA-device device_caps callback (Puneet Sethi) [1784121] - dmaengine: Introduce max SG burst capability (Puneet Sethi) [1784121] - dmaengine: Introduce min burst length capability (Puneet Sethi) [1784121] - dmaengine: dw: Initialize channel before each transfer (Puneet Sethi) [1784121] - dmaengine: dw: Replace 'objs' by 'y' (Puneet Sethi) [1784121] - dmaengine: dw: Register ACPI DMA controller for PCI that has companion (Puneet Sethi) [1784121] - dmaengine: dw: platform: Mark 'hclk' clock optional (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split OF helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Split ACPI helpers to separate module (Puneet Sethi) [1784121] - dmaengine: dw: platform: Move handle check to dw_dma_acpi_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Switch to acpi_dma_controller_register() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use devm_platform_ioremap_resource() (Puneet Sethi) [1784121] - dmaengine: dw: platform: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: platform: Use struct dw_dma_chip_pdata (Puneet Sethi) [1784121] - dmaengine: dw: Export struct dw_dma_chip_pdata for wider use (Puneet Sethi) [1784121] - dmaengine: dw: Update Intel Elkhart Lake Service Engine acronym (Puneet Sethi) [1784121] - dmaengine: dw: Enable iDMA 32-bit on Intel Elkhart Lake (Puneet Sethi) [1784121] - dmaengine: dw: Distinguish ->remove() between DW and iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: convert to SPDX identifiers (Puneet Sethi) [1784121] - dmaengine: dw: Don't pollute CTL_LO on iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: Reset DRAIN bit when resume the channel (Puneet Sethi) [1784121] - dmaengine: dw: Split DW and iDMA 32-bit operations (Puneet Sethi) [1784121] - dmaengine: dw: Remove unused internal property (Puneet Sethi) [1784121] - dmaengine: dw: Add missed multi-block support for iDMA 32-bit (Puneet Sethi) [1784121] - dmaengine: dw: drop useless LIST_HEAD (Puneet Sethi) [1784121] - dmaengine: dw: Fix FIFO size for Intel Merrifield (Puneet Sethi) [1784121] - dmaengine: dw-dmac: implement dma protection control setting (Puneet Sethi) [1784121] - dmaengine: dw: remove dma_slave_config direction usage (Puneet Sethi) [1784121] - dmaengine: dw: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Puneet Sethi) [1784121] - perf/arm-cmn: Fix invalid pointer when access dtc object sharing the same IRQ number (Mark Langsdorf) [1997732] - drivers/perf: Simplify EVENT ATTR macro in SMMU PMU driver (Mark Langsdorf) [1997732] - perf/smmuv3: Don't trample existing events with global filter (Mark Langsdorf) [1997732] - perf: qcom: Remove redundant dev_err call in qcom_l3_cache_pmu_probe() (Mark Langsdorf) [1997732] - perf: arm_spe: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: xgene_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: qcom: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - perf: arm_pmu: use DEVICE_ATTR_RO macro (Mark Langsdorf) [1997732] - drivers/perf: arm-cci: Fix checkpatch spacing error (Mark Langsdorf) [1997732] - drivers/perf: arm-cmn: Add space after ',' (Mark Langsdorf) [1997732] - drivers/perf: arm_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Fix some coding style issues (Mark Langsdorf) [1997732] - drivers/perf: Remove redundant dev_err call in tx2_uncore_pmu_init_dev() (Mark Langsdorf) [1997732] - perf/arm-smmuv3: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dsu: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-dmc620: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-cmn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Use irq_set_affinity() (Mark Langsdorf) [1997732] - perf/arm-ccn: Clean up CPU hotplug handling (Mark Langsdorf) [1997732] - perf/arm-cci: Remove broken race mitigation (Mark Langsdorf) [1997732] - genirq: Export affinity setter for modules (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Clean up with dev_printk (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Fix error handling (Mark Langsdorf) [1997732] - perf/arm_pmu_platform: Use dev_err_probe() for IRQ errors (Mark Langsdorf) [1997732] - drivers/perf: Simplify the SMMUv3 PMU event attributes (Mark Langsdorf) [1997732] - perf: Constify static struct attribute_group (Mark Langsdorf) [1997732] - perf: qcom: Constify static struct attribute_group (Mark Langsdorf) [1997732] - drivers/perf: Add support for ARMv8.3-SPE (Mark Langsdorf) [1997732] - driver/perf: Remove ARM_SMMU_V3_PMU dependency on ARM_SMMU_V3 (Mark Langsdorf) [1997732] - perf/smmuv3: Support sysfs identifier file (Mark Langsdorf) [1997732] - perf: remove duplicate check on fwnode (Mark Langsdorf) [1997732] - redhat/configs: enable ARM_DMC620_PMU memory controller perf counters (Mark Langsdorf) [1997732] - perf/arm_dmc620_pmu: Fix error return code in dmc620_pmu_device_probe() (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of ARM_DMC620_PMU drivers (Mark Langsdorf) [1997732] - driver/perf: Add PMU driver for the ARM DMC-620 memory controller (Mark Langsdorf) [1997732] - drivers/perf: thunderx2_pmu: Fix memory resource error handling (Mark Langsdorf) [1997732] - drivers/perf: xgene_pmu: Fix uninitialized resource struct (Mark Langsdorf) [1997732] - perf: arm_dsu: Support DSU ACPI devices (Mark Langsdorf) [1997732] - perf/smmuv3: To simplify code for ioremap page in pmcg (Mark Langsdorf) [1997732] - drivers/perf: Prevent forced unbinding of PMU drivers (Mark Langsdorf) [1997732] - drivers/perf: Fix kernel panic when rmmod PMU modules during perf sampling (Mark Langsdorf) [1997732] - pmu/smmuv3: Clear IRQ affinity hint on device removal (Mark Langsdorf) [1997732] - drivers/perf: arm_spe_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: arm_dsu_pmu: Avoid duplicate printouts (Mark Langsdorf) [1997732] - drivers/perf: Open access for CAP_PERFMON privileged process (Mark Langsdorf) [1997732] - perf/smmuv3: Remove the leftover put_cpu() in error path (Mark Langsdorf) [1997732] - perf: arm-ccn: Enable stats for CCN-512 interconnect (Mark Langsdorf) [1997732] - perf/smmuv3: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-cci: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/arm-ccn: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf: xgene: use devm_platform_ioremap_resource() to simplify code (Mark Langsdorf) [1997732] - perf/smmuv3: Validate groups for global filtering (Mark Langsdorf) [1997732] - perf/smmuv3: Validate group size (Mark Langsdorf) [1997732] - perf/smmuv3: Enable HiSilicon Erratum 162001800 quirk (Mark Langsdorf) [1997732] - perf/smmuv3: Add MSI irq support (Mark Langsdorf) [1997732] - perf/smmuv3: Add arm64 smmuv3 pmu driver (Mark Langsdorf) [1997732] - perf: xgene: Remove set but not used variable 'config' (Mark Langsdorf) [1997732] - perf/drivers: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Mark Langsdorf) [1997732] - For drivers that do not support context exclusion let's advertise the PERF_PMU_CAP_NO_EXCLUDE capability. This ensures that perf will prevent us from handling events where any exclusion flags are set. Let's also remove the now unnecessary check for exclusion flags. (Mark Langsdorf) [1997732] - perf/core, arch/arm: Use PERF_PMU_CAP_NO_EXCLUDE conditionally (Mark Langsdorf) [1997732] - drivers/perf: arm-ccn: Use devm_ioremap_resource() to map memory (Mark Langsdorf) [1997732] - drivers/perf: Initialise return value in armpmu_request_irqs() (Mark Langsdorf) [1997732] - perf/arm-cci: Remove VLA usage (Mark Langsdorf) [1997732] - tools/power turbostat: version 2021.05.04 (Prarit Bhargava) [2030472] - tools/power turbostat: Support "turbostat --hide idle" (Prarit Bhargava) [2030472] - tools/power turbostat: elevate priority of interval mode (Prarit Bhargava) [2030472] - tools/power turbostat: formatting (Prarit Bhargava) [2030472] - tools/power turbostat: rename tcc variables (Prarit Bhargava) [2030472] - tools/power turbostat: save original CPU model (Prarit Bhargava) [2030472] - tools/power turbostat: add TCC Offset support (Prarit Bhargava) [2030472] - tools/power turbostat: Fix Core C6 residency on Atom CPUs (Prarit Bhargava) [2030472] - tools/power turbostat: Print the C-state Pre-wake settings (Prarit Bhargava) [2030472] - tools/power turbostat: unmark non-kernel-doc comment (Prarit Bhargava) [2030472] - tools/power/turbostat: Remove Package C6 Retention on Ice Lake Server (Prarit Bhargava) [2030472] - tools/power turbostat: Fix offset overflow issue in index converting (Prarit Bhargava) [2030472] - tools/power/turbostat: Fix turbostat for AMD Zen CPUs (Prarit Bhargava) [2030472] - Revert "tools/power turbostat: adjust for temperature offset" (Prarit Bhargava) [2030472] - tools/power turbostat: Fix DRAM Energy Unit on SKX (Prarit Bhargava) [2030472] - tools/power turbostat: print microcode patch level (Prarit Bhargava) [2030472] - tools/power turbostat: add built-in-counter for IPC -- Instructions per Cycle (Prarit Bhargava) [2030472]- [s390] virtio: write back F_VERSION_1 before validate (Claudio Imbrenda) [2026234] - cpufreq: powernv: Fix init_chip_info initialization in numa=off (Steve Best) [2017665] - tcp: don't free a FIN sk_buff in tcp_remove_empty_skb() (Guillaume Nault) [2016210] - tipc: fix size validations for the MSG_CRYPTO type (Xin Long) [2020507] {CVE-2021-43267} - tipc: increase timeout in tipc_sk_enqueue() (Xin Long) [2020401] - Revert "tipc: Return the correct errno code" (Xin Long) [2020401] - tipc: fix an use-after-free issue in tipc_recvmsg (Xin Long) [2020401] - tipc: keep the skb in rcv queue until the whole data is read (Xin Long) [2020401] - powerpc/perf: Fix cycles/instructions as PM_CYC/PM_INST_CMPL in power10 (Steve Best) [2025400] - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI (Myron Stowe) [2028298] - media: uvcvideo: Avoid cyclic entity chains due to malformed USB descriptors (Dean Nelson) [1921871] {CVE-2020-0404} - sctp: fix transport encap_port update in sctp_vtag_verify (Xin Long) [2020393] - sctp: account stream padding length for reconf chunk (Xin Long) [2020393] - sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb (Xin Long) [2020393] - net: cipso: fix warnings in netlbl_cipsov4_add_std (Balazs Nemeth) [2026691] - net/sched: act_ct: fix err check for nf_conntrack_confirm (Davide Caratti) [2018109] - net/sched: act_ct: Fix byte count on fragmented packets (Davide Caratti) [2018109] - mqprio: Correct stats in mqprio_dump_class_stats(). (Davide Caratti) [2018109] - net_sched: fix NULL deref in fifo_set_limit() (Davide Caratti) [2018109] - net: sched: flower: protect fl_walk() with rcu (Davide Caratti) [2018109] - fq_codel: reject silly quantum parameters (Davide Caratti) [2018109] - net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed (Davide Caratti) [2018109] - sch_htb: Fix inconsistency when leaf qdisc creation fails (Davide Caratti) [2018109] - net: sched: fix lockdep_set_class() typo error for sch->seqlock (Davide Caratti) [2018109] - net: sched: cls_api: Fix the the wrong parameter (Davide Caratti) [2018109] - net/sched: act_vlan: Fix modify to allow 0 (Davide Caratti) [2018109] - net-sysfs: initialize uid and gid before calling net_ns_get_ownership (Xin Long) [1979820] - net: fix sysfs permssions when device changes network namespace (Xin Long) [1979820] - net-sysfs: add queue_change_owner() (Xin Long) [1979820] - net-sysfs: add netdev_change_owner() (Xin Long) [1979820] - drivers/base/power: add dpm_sysfs_change_owner() (Xin Long) [1979820] - device: add device_change_owner() (Xin Long) [1979820] - sysfs: Fix regression when adding a file to an existing group (Xin Long) [1979820] - bridge: make sure objects belong to container's owner (Xin Long) [1979820] - net: create reusable function for getting ownership info of sysfs inodes (Xin Long) [1979820] - net-sysfs: make sure objects belong to container's owner (Xin Long) [1979820] - net-sysfs: require net admin in the init ns for setting tx_maxrate (Xin Long) [1979820] - driver core: set up ownership of class devices in sysfs (Xin Long) [1979820] - kobject: kset_create_and_add() - fetch ownership info from parent (Xin Long) [1979820] - sysfs, kobject: allow creating kobject belonging to arbitrary users (Xin Long) [1979820] - NFSv42: Fix pagecache invalidation after COPY/CLONE (Benjamin Coddington) [2017166] - SUNRPC: fix sign error causing rpcsec_gss drops (Benjamin Coddington) [2017166] - nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero (Benjamin Coddington) [2017166] - nfsd: fix error handling of register_pernet_subsys() in init_nfsd() (Benjamin Coddington) [2017166] - SUNRPC: Simplify socket shutdown when not reusing TCP ports (Benjamin Coddington) [2017166] - nfsd4: Fix forced-expiry locking (Benjamin Coddington) [2017166] - SUNRPC/xprtrdma: Fix reconnection locking (Benjamin Coddington) [2017166] - NFSv4/pnfs: The layout barrier indicate a minimal value for the seqid (Benjamin Coddington) [2017166] - NFSv4/pNFS: Always allow update of a zero valued layout barrier (Benjamin Coddington) [2017166] - NFSv4/pNFS: Fix a layoutget livelock loop (Benjamin Coddington) [2017166] - xprtrdma: Put rpcrdma_reps before waking the tear-down completion (Benjamin Coddington) [2017166] - NFSD: Fix TP_printk() format specifier in nfsd_clid_class (Benjamin Coddington) [2017166] - NFSv42: Copy offload should update the file size when appropriate (Benjamin Coddington) [2017166] - SUNRPC: Fix XPT_BUSY flag leakage in svc_handle_xprt()... (Benjamin Coddington) [2017166] - NFSv4/pNFS: Return an error if _nfs4_pnfs_v3_ds_connect can't load NFSv3 (Benjamin Coddington) [2017166] - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times (Benjamin Coddington) [2017166] - NFSv4/pnfs: Clean up layout get on open (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix layoutget behaviour after invalidation (Benjamin Coddington) [2017166] - NFSv4/pnfs: Fix the layout barrier update (Benjamin Coddington) [2017166] - NFSD: Prevent a possible oops in the nfs_dirent() tracepoint (Benjamin Coddington) [2017166] - nfsd: remove redundant assignment to pointer 'this' (Benjamin Coddington) [2017166] - nfs_common: fix doc warning (Benjamin Coddington) [2017166] - nfsd4: Expose the callback address and state of each NFS4 client (Benjamin Coddington) [2017166] - xprtrdma: Fix spelling mistakes (Benjamin Coddington) [2017166] - NFS: nfs_find_open_context() may only select open files (Benjamin Coddington) [2017166] - SUNRPC: Should wake up the privileged task firstly. (Benjamin Coddington) [2017166] - SUNRPC: Fix the batch tasks count wraparound. (Benjamin Coddington) [2017166] - nfs: update has_sec_mnt_opts after cloning lsm options from parent (Benjamin Coddington) [2017166] - nfs: fix acl memory leak of posix_acl_create() (Benjamin Coddington) [2017166] - rpc: remove redundant initialization of variable status (Benjamin Coddington) [2017166] - NFSv4: Initialise connection to the server in nfs4_alloc_client() (Benjamin Coddington) [2017166] - nfsd: Prevent truncation of an unlinked inode from blocking access to its directory (Benjamin Coddington) [2017166] - xprtrdma: Fix a maybe-uninitialized compiler warning (Benjamin Coddington) [2017166] - NFSv4: Fix second deadlock in nfs4_evict_inode() (Benjamin Coddington) [2017166] - NFSv4: Fix deadlock between nfs4_evict_inode() and nfs4_opendata_get_inode() (Benjamin Coddington) [2017166] - NFS: FMODE_READ and friends are C macros, not enum types (Benjamin Coddington) [2017166] - NFS: Fix a potential NULL dereference in nfs_get_client() (Benjamin Coddington) [2017166] - NFS: Fix use-after-free in nfs4_init_client() (Benjamin Coddington) [2017166] - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error. (Benjamin Coddington) [2017166] - nfs: Remove trailing semicolon in macros (Benjamin Coddington) [2017166] - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config (Benjamin Coddington) [2017166] - NFS: Clean up reset of the mirror accounting variables (Benjamin Coddington) [2017166] - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce() (Benjamin Coddington) [2017166] - NFS: Fix an Oopsable condition in __nfs_pageio_add_request() (Benjamin Coddington) [2017166] - SUNRPC: More fixes for backlog congestion (Benjamin Coddington) [2017166] - SUNRPC: Fix Oops in xs_tcp_send_request() when transport is disconnected (Benjamin Coddington) [2017166] - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return() (Benjamin Coddington) [2017166] - SUNRPC in case of backlog, hand free slots directly to waiting task (Benjamin Coddington) [2017166] - pNFS/NFSv4: Remove redundant initialization of 'rd_size' (Benjamin Coddington) [2017166] - NFS: fix an incorrect limit in filelayout_decode_layout() (Benjamin Coddington) [2017166] - fs/nfs: Use fatal_signal_pending instead of signal_pending (Benjamin Coddington) [2017166] - xprtrdma: Fix a NULL dereference in frwr_unmap_sync() (Benjamin Coddington) [2017166] - sunrpc: Fix misplaced barrier in call_decode (Benjamin Coddington) [2017166] - SUNRPC: set rq_page_end differently (Benjamin Coddington) [2017166] - xprtrdma: Move fr_mr field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move the Work Request union to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_linv_done field to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move cqe to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Move fr_cid to struct rpcrdma_mr (Benjamin Coddington) [2017166] - xprtrdma: Remove the RPC/RDMA QP event handler (Benjamin Coddington) [2017166] - xprtrdma: Add tracepoints showing FastReg WRs and remote invalidation (Benjamin Coddington) [2017166] - xprtrdma: Avoid Send Queue wrapping (Benjamin Coddington) [2017166] - xprtrdma: Do not wake RPC consumer on a failed LocalInv (Benjamin Coddington) [2017166] - xprtrdma: Do not recycle MR after FastReg/LocalInv flushes (Benjamin Coddington) [2017166] - xprtrdma: Clarify use of barrier in frwr_wc_localinv_done() (Benjamin Coddington) [2017166] - xprtrdma: Rename frwr_release_mr() (Benjamin Coddington) [2017166] - xprtrdma: rpcrdma_mr_pop() already does list_del_init() (Benjamin Coddington) [2017166] - xprtrdma: Delete rpcrdma_recv_buffer_put() (Benjamin Coddington) [2017166] - xprtrdma: Fix cwnd update ordering (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep creation (Benjamin Coddington) [2017166] - xprtrdma: Improve commentary around rpcrdma_reps_unmap() (Benjamin Coddington) [2017166] - xprtrdma: Improve locking around rpcrdma_rep destruction (Benjamin Coddington) [2017166] - xprtrdma: Put flushed Receives on free list instead of destroying them (Benjamin Coddington) [2017166] - xprtrdma: Do not refresh Receive Queue while it is draining (Benjamin Coddington) [2017166] - xprtrdma: Avoid Receive Queue wrapping (Benjamin Coddington) [2017166] - SUNRPC: fix ternary sign expansion bug in tracing (Benjamin Coddington) [2017166] - nfsd: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - nfsd: reshuffle some code (Benjamin Coddington) [2017166] - nfsd: track filehandle aliasing in nfs4_files (Benjamin Coddington) [2017166] - nfsd: hash nfs4_files by inode number (Benjamin Coddington) [2017166] - NFSv4.1: Simplify layout return in pnfs_layout_process() (Benjamin Coddington) [2017166] - NFSv4: Don't discard segments marked for return in _pnfs_return_layout() (Benjamin Coddington) [2017166] - nfsd: ensure new clients break delegations (Benjamin Coddington) [2017166] - NFS: Don't discard pNFS layout segments that are marked for return (Benjamin Coddington) [2017166] - NFSv4.x: Don't return NFS4ERR_NOMATCHING_LAYOUT if we're unmounting (Benjamin Coddington) [2017166] - nfsd: remove unused function (Benjamin Coddington) [2017166] - svcrdma: Pass a useful error code to the send_err tracepoint (Benjamin Coddington) [2017166] - svcrdma: Rename goto labels in svc_rdma_sendto() (Benjamin Coddington) [2017166] - svcrdma: Don't leak send_ctxt on Send errors (Benjamin Coddington) [2017166] - SUNRPC: Remove trace_xprt_transmit_queued (Benjamin Coddington) [2017166] - SUNRPC: Add tracepoint that fires when an RPC is retransmitted (Benjamin Coddington) [2017166] - SUNRPC: Move fault injection call sites (Benjamin Coddington) [2017166] - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh() (Benjamin Coddington) [2017166] - NFSv4: Catch and trace server filehandle encoding errors (Benjamin Coddington) [2017166] - NFSv4: Convert nfs_xdr_status tracepoint to an event class (Benjamin Coddington) [2017166] - NFSv4: Add tracing for COMPOUND errors (Benjamin Coddington) [2017166] - NFSv4: Don't modify the change attribute cached in the inode (Benjamin Coddington) [2017166] - NFSv4: Fix value of decode_fsinfo_maxsz (Benjamin Coddington) [2017166] - NFS: Fix up revalidation of space used (Benjamin Coddington) [2017166] - NFS: NFS_INO_REVAL_PAGECACHE should mark the change attribute invalid (Benjamin Coddington) [2017166] - NFS: Mask out unsupported attributes in nfs_getattr() (Benjamin Coddington) [2017166] - NFS: Fix up inode cache tracing (Benjamin Coddington) [2017166] - NFS: Deal correctly with attribute generation counter overflow (Benjamin Coddington) [2017166] - NFSv4.2: Always flush out writes in nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: Fix attribute bitmask in _nfs42_proc_fallocate() (Benjamin Coddington) [2017166] - NFS: nfs4_bitmask_adjust() must not change the server global bitmasks (Benjamin Coddington) [2017166] - NFSD: Use DEFINE_SPINLOCK() for spinlock (Benjamin Coddington) [2017166] - sunrpc: Remove unused function ip_map_lookup (Benjamin Coddington) [2017166] - NFS: Fix fscache invalidation in nfs_set_cache_invalid() (Benjamin Coddington) [2017166] - SUNRPC: Ensure the transport backchannel association (Benjamin Coddington) [2017166] - nfs: hornor timeo and retrans option when mounting NFSv3 (Benjamin Coddington) [2017166] - sunrpc: honor rpc_task's timeout value in rpcb_create() (Benjamin Coddington) [2017166] - nfs: Fix a typo in the file nfs42xattr.c (Benjamin Coddington) [2017166] - NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds (Benjamin Coddington) [2017166] - NFS: Fix up incorrect documentation (Benjamin Coddington) [2017166] - NFSv4: Simplify nfs4_retry_setlk() (Benjamin Coddington) [2017166] - UAPI: nfsfh.h: Replace one-element array with flexible-array member (Benjamin Coddington) [2017166] - svcrdma: Clean up dto_q critical section in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Remove svc_rdma_recv_ctxt::rc_pages and ::rc_arg (Benjamin Coddington) [2017166] - svcrdma: Remove sc_read_complete_q (Benjamin Coddington) [2017166] - svcrdma: Single-stage RDMA Read (Benjamin Coddington) [2017166] - SUNRPC: Move svc_xprt_received() call sites (Benjamin Coddington) [2017166] - SUNRPC: Export svc_xprt_received() (Benjamin Coddington) [2017166] - svcrdma: Retain the page backing rq_res.head[0].iov_base (Benjamin Coddington) [2017166] - svcrdma: Remove unused sc_pages field (Benjamin Coddington) [2017166] - svcrdma: Normalize Send page handling (Benjamin Coddington) [2017166] - svcrdma: Add a "deferred close" helper (Benjamin Coddington) [2017166] - svcrdma: Maintain a Receive water mark (Benjamin Coddington) [2017166] - svcrdma: Use svc_rdma_refresh_recvs() in wc_receive (Benjamin Coddington) [2017166] - svcrdma: Add a batch Receive posting mechanism (Benjamin Coddington) [2017166] - svcrdma: Remove stale comment for svc_rdma_wc_receive() (Benjamin Coddington) [2017166] - svcrdma: Provide an explanatory comment in CMA event handler (Benjamin Coddington) [2017166] - svcrdma: RPCDBG_FACILITY is no longer used (Benjamin Coddington) [2017166] - nfsd: don't ignore high bits of copy count (Benjamin Coddington) [2017166] - nfsd: COPY with length 0 should copy to end of file (Benjamin Coddington) [2017166] - nfsd: Fix typo "accesible" (Benjamin Coddington) [2017166] - nfsd: Ensure knfsd shuts down when the "nfsd" pseudofs is unmounted (Benjamin Coddington) [2017166] - nfsd: Log client tracking type log message as info instead of warning (Benjamin Coddington) [2017166] - nfsd: helper for laundromat expiry calculations (Benjamin Coddington) [2017166] - NFSD: Clean up NFSDDBG_FACILITY macro (Benjamin Coddington) [2017166] - NFSD: Add a tracepoint to record directory entry encoding (Benjamin Coddington) [2017166] - rpc: fix NULL dereference on kmalloc failure (Benjamin Coddington) [2017166] - sunrpc: fix refcount leak for rpc auth modules (Benjamin Coddington) [2017166] - NFSD: Repair misuse of sv_lock in 5.10.16-rt30. (Benjamin Coddington) [2017166] - svcrdma: disable timeouts on rdma backchannel (Benjamin Coddington) [2017166] - svcrdma: Hold private mutex while invoking rdma_accept() (Benjamin Coddington) [2017166] - NFS: Don't set NFS_INO_INVALID_XATTR if there is no xattr cache (Benjamin Coddington) [2017166] - NFS: Always clear an invalid mapping when attempting a buffered write (Benjamin Coddington) [2017166] - NFS: Optimise sparse writes past the end of file (Benjamin Coddington) [2017166] - NFS: Fix documenting comment for nfs_revalidate_file_size() (Benjamin Coddington) [2017166] - rpcrdma: Fix comments about reverse-direction operation (Benjamin Coddington) [2017166] - xprtrdma: Refactor invocations of offset_in_page() (Benjamin Coddington) [2017166] - xprtrdma: Simplify rpcrdma_convert_kvec() and frwr_map() (Benjamin Coddington) [2017166] - xprtrdma: Remove FMR support in rpcrdma_convert_iovs() (Benjamin Coddington) [2017166] - NFS: Fix fscache read from NFS after cache error (Benjamin Coddington) [2017166] - NFS: Ensure nfs_readpage returns promptly when internal error occurs (Benjamin Coddington) [2017166] - NFS: Remove unnecessary inode parameter from nfs_pageio_complete_read() (Benjamin Coddington) [2017166] - NFS: Add nfs_pageio_complete_read() and remove nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Call readpage_async_filler() from nfs_readpage_async() (Benjamin Coddington) [2017166] - NFS: Refactor nfs_readpage() and nfs_readpage_async() to use nfs_readdesc (Benjamin Coddington) [2017166] - NFS: In nfs_readpage() only increment NFSIOS_READPAGES when read succeeds (Benjamin Coddington) [2017166] - NFS: Clean up nfs_readpage() and nfs_readpages() (Benjamin Coddington) [2017166] - nfs: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - SUNRPC: Fix fall-through warnings for Clang (Benjamin Coddington) [2017166] - net: sunrpc: xprtsock.c: Corrected few spellings ,in comments (Benjamin Coddington) [2017166] - SUNRPC: correct error code comment in xs_tcp_setup_socket() (Benjamin Coddington) [2017166] - nfsd: cstate->session->se_client -> cstate->clp (Benjamin Coddington) [2017166] - nfsd: simplify nfsd4_check_open_reclaim (Benjamin Coddington) [2017166] - nfsd: remove unused set_client argument (Benjamin Coddington) [2017166] - nfs/blocklayout: remove cruft in bl_alloc_init_bio (Benjamin Coddington) [2017166] - nfsd: refactor set_client (Benjamin Coddington) [2017166] - nfsd: rename lookup_clientid->set_client (Benjamin Coddington) [2017166] - nfsd: simplify nfsd_renew (Benjamin Coddington) [2017166] - nfsd: simplify process_lock (Benjamin Coddington) [2017166] - nfsd4: simplify process_lookup1 (Benjamin Coddington) [2017166] - SUNRPC: Correct a comment (Benjamin Coddington) [2017166] - svcrdma: DMA-sync the receive buffer in svc_rdma_recvfrom() (Benjamin Coddington) [2017166] - svcrdma: Restore read and write stats (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_sq_starve to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Convert rdma_stat_recv to a per-CPU counter (Benjamin Coddington) [2017166] - svcrdma: Refactor svc_rdma_init() and svc_rdma_clean_up() (Benjamin Coddington) [2017166] - nfsd: remove fault injection code (Benjamin Coddington) [2017166] - SUNRPC: Fix a NULL pointer deref in trace_svc_stats_latency() (Benjamin Coddington) [2017166] - SUNRPC: Display RPC procedure names instead of proc numbers (Benjamin Coddington) [2017166] - SUNRPC: Make trace_svc_process() display the RPC procedure symbolically (Benjamin Coddington) [2017166] - EDAC/mce_amd: Do not load edac_mce_amd module on guests (Aristeu Rozanski) [2000776] - tracing: Map all PIDs to command lines (Jerome Marchand) [1913211] - mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and zs_unregister_migration() (Rafael Aquini) [2016441] - mm: mark the OOM reaper thread as freezable (Rafael Aquini) [2016441] - mm/page_isolation: guard against possible putback unisolated page (Rafael Aquini) [2016441] - mm/page_isolation: fix potential missing call to unset_migratetype_isolate() (Rafael Aquini) [2016441] - mm/page_alloc: use accumulated load when building node fallback list (Rafael Aquini) [2016441] - mm/vmalloc: do not adjust the search size for alignment overhead (Rafael Aquini) [2016441] - mm/vmalloc: make sure to dump unpurged areas in /proc/vmallocinfo (Rafael Aquini) [2016441] - Revert "mm, slub: consider rest of partial list if acquire_slab() fails" (Rafael Aquini) [2016441] - mm, slub: consider rest of partial list if acquire_slab() fails (Rafael Aquini) [2016441] - mm, slub: fix incorrect memcg slab count for bulk free (Rafael Aquini) [2016441] - mm, slub: fix mismatch between reconstructed freelist depth and cnt (Rafael Aquini) [2016441] - slub: add back check for free nonslab objects (Rafael Aquini) [2016441] - slub: fix kmalloc_pagealloc_invalid_free unit test (Rafael Aquini) [2016441] - slub: fix unreclaimable slab stat for bulk free (Rafael Aquini) [2016441] - mm/slub: add taint after the errors are printed (Rafael Aquini) [2016441] - mm/slab.c: remove useless lines in enable_cpucache() (Rafael Aquini) [2016441] - kasan: fix tag for large allocations when using CONFIG_SLAB (Rafael Aquini) [2016441] - mm/hmm: bypass devmap pte when all pfn requested flags are fulfilled (Rafael Aquini) [2016441] - mm: memcontrol: set the correct memcg swappiness restriction (Rafael Aquini) [2016441] - memcg: replace in_interrupt() by !in_task() in active_memcg() (Rafael Aquini) [2016441] - huge tmpfs: fix split_huge_page() after FALLOC_FL_KEEP_SIZE (Rafael Aquini) [2016441] - huge tmpfs: fix fallocate(vanilla) advance over huge pages (Rafael Aquini) [2016441] - huge tmpfs: revert shmem's use of transhuge_vma_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: remove unnecessary tlb_remove_page_size() for huge zero pmd (Rafael Aquini) [2016441] - mm/huge_memory.c: add missing read-only THP checking in transparent_hugepage_enabled() (Rafael Aquini) [2016441] - mm/huge_memory.c: use page->deferred_list (Rafael Aquini) [2016441] - mm/huge_memory.c: remove dedicated macro HPAGE_CACHE_INDEX_MASK (Rafael Aquini) [2016441] - mm/thp: decrease nr_thps in file's mapping on THP split (Rafael Aquini) [2016441] - mm/thp: fix page_address_in_vma() on file THP tails (Rafael Aquini) [2016441] - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting (Rafael Aquini) [2016441] - mm/thp: make is_huge_zero_pmd() safe and quicker (Rafael Aquini) [2016441] - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry (Rafael Aquini) [2016441] - mm/truncate: fix truncation for pages of arbitrary size (Rafael Aquini) [2016441] - mm/rmap: fix potential pte_unmap on an not mapped pte (Rafael Aquini) [2016441] - mm/rmap: correct obsolete comment of page_get_anon_vma() (Rafael Aquini) [2016441] - mm/rmap: use page_not_mapped in try_to_unmap() (Rafael Aquini) [2016441] - mm/rmap: fix obsolete comment in __page_check_anon_rmap() (Rafael Aquini) [2016441] - mm/rmap: remove unneeded semicolon in page_not_mapped() (Rafael Aquini) [2016441] - mm/rmap: correct some obsolete comments of anon_vma (Rafael Aquini) [2016441] - mm/pgtable-generic.c: optimize the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm/pgtable-generic.c: simplify the VM_BUG_ON condition in pmdp_huge_clear_flush() (Rafael Aquini) [2016441] - mm: prevent a warning when casting void* -> enum (Rafael Aquini) [2016441] - mm/hugeltb: simplify the return code of __vma_reservation_common() (Rafael Aquini) [2016441] - mm,thp,shmem: make khugepaged obey tmpfs mount flags (Rafael Aquini) [2016441] - mm/vma: make is_vma_temporary_stack() available for general use (Rafael Aquini) [2016441] - mm/vma: make vma_is_foreign() available for general use (Rafael Aquini) [2016441] - hugetlb: fix copy_huge_page_from_user contig page struct assumption (Rafael Aquini) [2016441] - mm/sparsemem: pfn_to_page is not valid yet on SPARSEMEM (Rafael Aquini) [2016441] - mm/sparse.c: use __nr_to_section(section_nr) to get mem_section (Rafael Aquini) [2016441] - mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [2016441] - mm/huge_memory.c: make __thp_get_unmapped_area static (Rafael Aquini) [2016441] - mm/mempolicy.c: fix checking unmapped holes for mbind (Rafael Aquini) [2016441] - s390/mm: fix VMA and page table handling code in storage key handling functions (Rafael Aquini) [2016441] - s390/mm: validate VMA in PGSTE manipulation functions (Rafael Aquini) [2016441] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Rafael Aquini) [2016441] - s390/gmap: validate VMA in __gmap_zap() (Rafael Aquini) [2016441] - s390: mm: Fix secure storage access exception handling (Rafael Aquini) [2016441] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Rafael Aquini) [2016441] - powerpc/64s: Fix pte update for kernel memory on radix (Rafael Aquini) [2016441] - powerpc/mm: sanity_check_fault() should work for all, not only BOOK3S (Rafael Aquini) [2016441] - powerpc/book3s64/pkeys: Use PVR check instead of cpu feature (Rafael Aquini) [2016441] - powerpc/mm: Fix reporting of kernel execute faults on the 8xx (Rafael Aquini) [2016441] - powerpc/mm/hash: Handle user access of kernel address gracefully (Rafael Aquini) [2016441] - powerpc/mm: Add missing tracepoint for tlbie (Rafael Aquini) [2016441] - arm64: hugetlb: avoid potential NULL dereference (Rafael Aquini) [2016441] - arm64/numa: Report correct memblock range for the dummy node (Rafael Aquini) [2016441] - x86/pat: Pass valid address to sanitize_phys() (Rafael Aquini) [2016441] - x86/mm: Check for pfn instead of page in vmalloc_sync_one() (Rafael Aquini) [2016441] - x86/mm/tlb: Revert "x86/mm: Align TLB invalidation info" (Rafael Aquini) [2016441] - x86/mm: Report which part of kernel image is freed (Rafael Aquini) [2016441] - mm: make free_reserved_area() return "const char *" (Rafael Aquini) [2016441] - x86/mm/init: Remove freed kernel image areas from alias mapping (Rafael Aquini) [2016441] - x86/mm/init: Add helper for freeing kernel image pages (Rafael Aquini) [2016441] - x86/mm/init: Pass unconverted symbol addresses to free_init_pages() (Rafael Aquini) [2016441] - x86/mm: Add TLB purge to free pmd/pte page interfaces (Rafael Aquini) [2016441] - mm/mmu_notifier: Make drm-backport/linux/mmu_notifier.h use RH_MMU_NOTIFIER_V2 (Waiman Long) [1946746] - mm/migrate: fix migrate_pgmap_owner w/o CONFIG_MMU_NOTIFIER (Waiman Long) [1946746] - mm/notifier: add migration invalidation type (Waiman Long) [1946746] - mm/migrate: add a flags parameter to migrate_vma (Waiman Long) [1946746] - mm/mmu_notifiers: ensure range_end() is paired with range_start() (Waiman Long) [1946746] - mm: track mmu notifiers in fs_reclaim_acquire/release (Waiman Long) [1946746] - mm: mmu_notifier: fix and extend kerneldoc (Waiman Long) [1946746] - mm/mmu_notifier: silence PROVE_RCU_LIST warnings (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'interval_sub' as the variable for mmu_interval_notifier (Waiman Long) [1946746] - mm/mmu_notifiers: Use 'subscription' as the variable name for mmu_notifier (Waiman Long) [1946746] - mm/mmu_notifier: Rename struct mmu_notifier_mm to mmu_notifier_subscriptions (Waiman Long) [1946746] - mm, notifier: Catch sleeping/blocking for !blockable (Waiman Long) [1946746] - mm/mmu_notifiers: use the right return code for WARN_ON (Waiman Long) [1946746] - mm/mmu_notifiers: check if mmu notifier callbacks are allowed to fail (Waiman Long) [1946746] - mm/mmu_notifier: mmu_notifier_range_update_to_read_only() helper (Waiman Long) [1946746] - mm/mmu_notifier: pass down vma and reasons why mmu notifier is happening (Waiman Long) [1946746] - mm/mmu_notifier: use structure for invalidate_range_start/end callback (Waiman Long) [1946746] - Revert "mm, mmu_notifier: annotate mmu notifiers with blockable invalidate callbacks" (Waiman Long) [1946746] - mm, mmu_notifier: be explicit about range invalition non-blocking mode (Waiman Long) [1946746] - mm/oom_kill.c: clean up oom_reap_task_mm() (Waiman Long) [1946746] - mm, oom: distinguish blockable mode for mmu notifiers (Waiman Long) [1946746] - mm/mmu_notifier: helper to test if a range invalidation is blockable (Waiman Long) [1946746] - mm/mmu_notifier: Relocate mmu_notifier_put() (Waiman Long) [1946746] - mm/mmu_notifier: Add mmu_notifier versioning mechanism (Waiman Long) [1946746] - af_unix: Return errno instead of NULL in unix_create1(). (Balazs Nemeth) [2026690] - netfilter: nf_tables: fix audit memory leak in nf_tables_commit (Phil Sutter) [2028926] - ethtool: Validate module EEPROM offset as part of policy (Ivan Vecera) [2019090] - ethtool: Validate module EEPROM length as part of policy (Ivan Vecera) [2019090] - ethtool: Use kernel data types for internal EEPROM struct (Ivan Vecera) [2019090] - ethtool: Document behavior when module EEPROM bank attribute is omitted (Ivan Vecera) [2019090] - ethtool: Decrease size of module EEPROM get policy array (Ivan Vecera) [2019090] - ethtool: Document correct attribute type (Ivan Vecera) [2019090] - ethtool: Use correct command name in title (Ivan Vecera) [2019090] - net: fix mistake path for netdev_features_strings (Ivan Vecera) [2019089 2019090 2019092] - ethtool: add a stricter length check (Ivan Vecera) [2019089 2019090 2019092] - ethtool: Fix a typo (Ivan Vecera) [2019089 2019090 2019092] - net: ethtool: clear heap allocations for ethtool function (Ivan Vecera) [2019090] - ethtool: Fix NULL pointer dereference during module EEPROM dump (Ivan Vecera) [2019090] - ethtool: stats: Fix a copy-paste error (Ivan Vecera) [2019092] - ethtool: add missing EEPROM to list of messages (Ivan Vecera) [2019090] - ethtool: stats: clarify the initialization to ETHTOOL_STAT_NOT_SET (Ivan Vecera) [2019092] - ethtool: ioctl: Fix out-of-bounds warning in store_link_ksettings_for_user() (Ivan Vecera) [2019092] - ethtool: add interface to read RMON stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC Ctrl stats (Ivan Vecera) [2019092] - ethtool: add interface to read standard MAC stats (Ivan Vecera) [2019092] - ethtool: add a new command for reading standard stats (Ivan Vecera) [2019092] - docs: ethtool: document standard statistics (Ivan Vecera) [2019092] - docs: networking: extend the statistics documentation (Ivan Vecera) [2019092] - ethtool: add FEC statistics (Ivan Vecera) [2019089] - docs: net: statistics.rst: remove a duplicated kernel-doc (Ivan Vecera) [2019089] - ethtool: fec_prepare_data() - jump to error handling (Ivan Vecera) [2019089] - ethtool: move ethtool_stats_init (Ivan Vecera) [2019089] - ethtool: wire in generic SFP module access (Ivan Vecera) [2019090] - phy: sfp: add netlink SFP support to generic SFP code (Ivan Vecera) [2019090] - ethtool: Add fallback to get_module_eeprom from netlink command (Ivan Vecera) [2019090] - net: ethtool: Export helpers for getting EEPROM info (Ivan Vecera) [2019090] - ethtool: Allow network drivers to dump arbitrary EEPROM data (Ivan Vecera) [2019090] - docs: ethtool: correct quotes (Ivan Vecera) [2019090] - selftests: ethtool: add a netdevsim FEC test (Ivan Vecera) [2019089] - netdevsim: add FEC settings support (Ivan Vecera) [2019089] - ethtool: support FEC settings over netlink (Ivan Vecera) [2019089] - ethtool: document the enum values not defines (Ivan Vecera) [2019089] - ethtool: fec: fix FEC_NONE check (Ivan Vecera) [2019089] - ethtool: fec: add note about reuse of reserved (Ivan Vecera) [2019089] - ethtool: clarify the ethtool FEC interface (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->active_fec (Ivan Vecera) [2019089] - ethtool: fec: sanitize ethtool_fecparam->reserved (Ivan Vecera) [2019089] - ethtool: fec: remove long structure description (Ivan Vecera) [2019089] - ethtool: fec: fix typo in kdoc (Ivan Vecera) [2019089] - net: Remove redundant if statements (Petr Oros) [2026472] - netdevice: add the case if dev is NULL (Petr Oros) [2026472] - nvmet: use IOCB_NOWAIT only if the filesystem supports it (Chris Leech) [2015563] - nvmet-tcp: fix incomplete data digest send (Chris Leech) [2015563] - nvmet-tcp: fix memory leak when performing a controller reset (Chris Leech) [2015563] - nvmet-tcp: add an helper to free the cmd buffers (Chris Leech) [2015563] - nvmet-tcp: fix a race condition between release_queue and io_work (Chris Leech) [2015563] - nvmet-tcp: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-rdma: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet: fix use-after-free when a port is removed (Chris Leech) [2015563] - nvmet-tcp: fix header digest verification (Chris Leech) [2015563] - nvmet-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvmet-tcp: fix a memory leak when releasing a queue (Chris Leech) [2015563] - nvmet: fix a width vs precision bug in nvmet_subsys_attr_serial_show() (Chris Leech) [2015563] - nvmet: fixup buffer overrun in nvmet_subsys_attr_serial() (Chris Leech) [2015563] - nvmet: return bool from nvmet_passthru_ctrl and nvmet_is_passthru_req (Chris Leech) [2015563] - nvmet: looks at the passthrough controller when initializing CAP (Chris Leech) [2015563] - nvmet: check that host sqsize does not exceed ctrl MQES (Chris Leech) [2015563] - nvmet: avoid duplicate qid in connect cmd (Chris Leech) [2015563] - nvmet: pass back cntlid on successful completion (Chris Leech) [2015563] - nvmet: remove redundant assignments of variable status (Chris Leech) [2015563] - nvme-fabrics: ignore invalid fast_io_fail_tmo values (Chris Leech) [2015563] - nvme-tcp: fix memory leak when freeing a queue (Chris Leech) [2015563] - nvme-tcp: validate R2T PDU in nvme_tcp_handle_r2t() (Chris Leech) [2015563] - nvme-tcp: fix data digest pointer calculation (Chris Leech) [2015563] - nvme-tcp: fix possible req->offset corruption (Chris Leech) [2015563] - nvme-tcp: fix H2CData PDU send accounting (again) (Chris Leech) [2015563] - nvme: keep ctrl->namespaces ordered (Chris Leech) [2015563] - nvme-tcp: fix incorrect h2cdata pdu offset accounting (Chris Leech) [2015563] - nvme-tcp: fix io_work priority inversion (Chris Leech) [2015563] - nvme-multipath: fix ANA state updates when a namespace is not present (Chris Leech) [2015563] - nvme: avoid race in shutdown namespace removal (Chris Leech) [2015563] - nvme: update keep alive interval when kato is modified (Chris Leech) [2015563] - nvme: use return value from blk_execute_rq() (Chris Leech) [2015563] - nvme-tcp: Do not reset transport on data digest errors (Chris Leech) [2015563] - nvme-rdma: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: don't update queue count when failing to set io queues (Chris Leech) [2015563] - nvme-tcp: pair send_mutex init with destroy (Chris Leech) [2015563] - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data (Chris Leech) [2015563] - RDMA/rxe: Bump up default maximum values used via uverbs (Kamal Heib) [2029675]- scsi: qedi: Fix error codes in qedi_alloc_global_queues() (Nilesh Javali) [1983905] - scsi: qedi: Add support for fastpath doorbell recovery (Nilesh Javali) [1983905] - scsi: qedi: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983905] - scsi: qedi: Fix host removal with running sessions (Nilesh Javali) [1983905] - scsi: qedi: Wake up if cmd_cleanup_req is set (Nilesh Javali) [1983905] - scsi: qedi: Complete TMF works before disconnect (Nilesh Javali) [1983905] - scsi: qedi: Pass send_iscsi_tmf task to abort (Nilesh Javali) [1983905] - scsi: qedi: Fix cleanup session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF session block/unblock use (Nilesh Javali) [1983905] - scsi: qedi: Use GFP_NOIO for TMF allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix TMF tid allocation (Nilesh Javali) [1983905] - scsi: qedi: Fix use after free during abort cleanup (Nilesh Javali) [1983905] - scsi: qedi: Fix race during abort timeouts (Nilesh Javali) [1983905] - scsi: qedi: Fix null ref during abort handling (Nilesh Javali) [1983905] - vrf: Fix fast path output packet handling with async Netfilter rules (Antoine Tenart) [2019333] - ipv6: do not drop vrf udp multicast packets (Antoine Tenart) [2019333] - ipv6: handling of multicast packets received in VRF (Antoine Tenart) [2019333] - vrf: Do not attempt to create IPv6 mcast rule if IPv6 is disabled (Antoine Tenart) [2019333] - ipv6: add vrf table handling code for ipv6 mcast (Antoine Tenart) [2019333] - ipv4: Allow sending multicast packets on specific i/f using VRF socket (Antoine Tenart) [2019333] - xfs: fix I_DONTCACHE (Carlos Maiolino) [2024969] - kernfs: don't create a negative dentry if inactive node exists (Ian Kent) [2001597] - kernfs: also call kernfs_set_rev() for positive dentry (Ian Kent) [2001597] - ixgbevf: use xso.real_dev instead of xso.dev in callback functions of struct xfrmdev_ops (Ken Cox) [1970656] - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup (Ken Cox) [1970653] - ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path (Ken Cox) [1970653] - powerpc/perf: Fix missing is_sier_aviable() during build (Gustavo Walbon) [2011687] - perf script: Fix PERF_SAMPLE_WEIGHT_STRUCT support (Michael Petlan) [2026390] - RDMA/core: Set sgtable nents when using ib_dma_virt_map_sg() (Kamal Heib) [2025496] - RDMA: Use the sg_table directly and remove the opencoded version from umem (Kamal Heib) [2025496] - ovs: clear skb->tstamp in forwarding path (Antoine Tenart) [2020160] - net: openvswitch: fix kernel-doc warnings in flow.c (Antoine Tenart) [2020160] - openvswitch: Optimize operation for key comparison (Antoine Tenart) [2020160] - net: openvswitch: Remove unnecessary skb_nfct() (Antoine Tenart) [2020160] - openvswitch: meter: fix race when getting now_ms. (Antoine Tenart) [2020160] - net: openvswitch: Use 'skb_push_rcsum()' instead of hand coding it (Antoine Tenart) [2020160] - openvswitch: Fix a typo (Antoine Tenart) [2020160] - openvswitch: Warn over-mtu packets only if iface is UP. (Antoine Tenart) [2020160] - openvswitch: meter: remove rate from the bucket size calculation (Antoine Tenart) [2020160] - net: openvswitch: use core API to update/provide stats (Antoine Tenart) [2020160] - net: openvswitch: use new function dev_fetch_sw_netstats (Antoine Tenart) [2020160] - net: openvswitch: use dev_sw_netstats_rx_add() (Antoine Tenart) [2020160] - net: openvswitch: Constify static struct genl_small_ops (Antoine Tenart) [2020160] - selftests: add a test case for mirred egress to ingress (Xin Long) [1983894] - net: sched: act_mirred: drop dst for the direction from egress to ingress (Xin Long) [1983894] - usb: hso: fix error handling code of hso_create_net_device (José Ignacio Tornos Martínez) [1986489] {CVE-2021-37159} - i40e: Fix freeing of uninitialized misc IRQ vector (Stefan Assmann) [1990683] - x86/topology: Make __max_die_per_package available unconditionally (Aristeu Rozanski) [1949284] - x86/cpu/amd: Set __max_die_per_package on AMD (Aristeu Rozanski) [1949284] - x86/topology: Set cpu_die_id only if DIE_TYPE found (Aristeu Rozanski) [1949284] - x86/mce: Drop AMD-specific "DEFERRED" case from Intel severity rule list (Aristeu Rozanski) [1949284] - EDAC/mce_amd: Add new error descriptions for existing types (Aristeu Rozanski) [1949284] - x86/mce/amd, edac: Remove report_gart_errors (Aristeu Rozanski) [1949284] - x86/mce/amd: Make threshold bank setting hotplug robust (Aristeu Rozanski) [1949284] - x86/mce/amd: Cleanup threshold device remove path (Aristeu Rozanski) [1949284] - x86/mce/amd: Straighten CPU hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Sanitize thresholding device creation hotplug path (Aristeu Rozanski) [1949284] - x86/mce/amd: Protect a not-fully initialized bank from the thresholding interrupt (Aristeu Rozanski) [1949284] - x86/mce/amd: Init thresholding machinery only on relevant vendors (Aristeu Rozanski) [1949284] - x86/mce/amd: Do proper cleanup on error paths (Aristeu Rozanski) [1949284] - x86/mce/amd: Fix kobject lifetime (Aristeu Rozanski) [1949284] - x86/mce/amd: Publish the bank pointer only after setup has succeeded (Aristeu Rozanski) [1949284] - x86/mce/amd: Make disable_err_thresholding() static (Aristeu Rozanski) [1949284] - x86/MCE: Determine MCA banks' init state properly (Aristeu Rozanski) [1949284] - x86/MCE: Group AMD function prototypes in (Aristeu Rozanski) [1949284] - x86/MCE: Switch to use the new generic UUID API (Aristeu Rozanski) [1949284] - ipv4: fix endianness issue in inet_rtm_getroute_build_skb() (Guillaume Nault) [2022057] - net: igmp: fix data-race in igmp_ifc_timer_expire() (Guillaume Nault) [2022057] - net/ipv4: swap flow ports when validating source (Guillaume Nault) [2022057] - tools headers UAPI: Sync linux/in.h copy with the kernel sources (Guillaume Nault) [2022057] - icmp: don't send out ICMP messages with a source address of 0.0.0.0 (Guillaume Nault) [2022057] - cipso: correct comments of cipso_v4_cache_invalidate() (Guillaume Nault) [2022057] - crypto: ccp - Make use of the helper macro kthread_run() (Vladis Dronov) [1997593] - crypto: ccp - Fix whitespace in sev_cmd_buffer_len() (Vladis Dronov) [1997593] - crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd() (Vladis Dronov) [1997593] - crypto: jitter - consider 32 LSB for APT (Herbert Xu) [1994390] - rcu: Tighten rcu_advance_cbs_nowake() checks (Daniel Vacek) [2013408] - cxgb3: Remove seeprom_write and use VPD API (Myron Stowe) [2019086] - cxgb3: Use VPD API in t3_seeprom_wp() (Myron Stowe) [2019086] - cxgb3: Remove t3_seeprom_read and use VPD API (Myron Stowe) [2019086] - PCI/VPD: Use pci_read_vpd_any() in pci_vpd_size() (Myron Stowe) [2019086] - PCI/VPD: Add pci_read/write_vpd_any() (Myron Stowe) [2019086] - PCI/VPD: Defer VPD sizing until first access (Myron Stowe) [2019086] - PCI/VPD: Use unaligned access helpers (Myron Stowe) [2019086] - PCI/VPD: Clean up public VPD defines and inline functions (Myron Stowe) [2019086] - cxgb4: Use pci_vpd_find_id_string() to find VPD ID string (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_id_string() (Myron Stowe) [2019086] - PCI/VPD: Include post-processing in pci_vpd_find_tag() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Stop exporting pci_vpd_find_tag() (Myron Stowe) [2019086] - scsi: cxlflash: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - cxgb4: Remove unused vpd_param member ec (Myron Stowe) [2019086] - cxgb4: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - bnxt: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnxt: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2x: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - bnx2x: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - bnx2: Replace open-coded byte swapping with swab32s() (Myron Stowe) [2019086] - bnx2: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: falcon: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - tg3: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - tg3: Validate VPD checksum with pci_vpd_check_csum() (Myron Stowe) [2019086] - tg3: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - sfc: Search VPD with pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - sfc: Read VPD with pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_check_csum() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_find_ro_info_keyword() (Myron Stowe) [2019086] - PCI/VPD: Add pci_vpd_alloc() (Myron Stowe) [2019086] - PCI/VPD: Treat invalid VPD like missing VPD capability (Myron Stowe) [2019086] - PCI/VPD: Determine VPD size in pci_vpd_init() (Myron Stowe) [2019086] - PCI/VPD: Embed struct pci_vpd in struct pci_dev (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.valid member (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd_ops (Myron Stowe) [2019086] - PCI/VPD: Reorder pci_read_vpd(), pci_write_vpd() (Myron Stowe) [2019086] - PCI/VPD: Remove struct pci_vpd.flag (Myron Stowe) [2019086] - PCI/VPD: Make pci_vpd_wait() uninterruptible (Myron Stowe) [2019086] - PCI/VPD: Remove pci_vpd_size() old_size argument (Myron Stowe) [2019086] - PCI/VPD: Allow access to valid parts of VPD if some is invalid (Myron Stowe) [2019086] - PCI/VPD: Don't check Large Resource Item Names for validity (Myron Stowe) [2019086] - PCI/VPD: Reject resource tags with invalid size (Myron Stowe) [2019086] - PCI/VPD: Treat initial 0xff as missing EEPROM (Myron Stowe) [2019086] - PCI/VPD: Check Resource Item Names against those valid for type (Myron Stowe) [2019086] - PCI/VPD: Correct diagnostic for VPD read failure (Myron Stowe) [2019086] - net: create netdev->dev_addr assignment helpers (Josef Oskera) [2016478] - scsi: ibmvfc: Fix up duplicate response detection (Steve Best) [2015732] - scsi: core: Avoid leaving shost->last_reset with stale value if EH does not run (Ewan D. Milne) [2011330] - libbpf: Add support for new llvm bpf relocations (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak in strset (Yauheni Kaliuta) [1944799] - selftests: bpf: skip test_doc_build.sh (Yauheni Kaliuta) [1944799] - bpf: Stop caching subprog index in the bpf_pseudo_func insn (Yauheni Kaliuta) [1944799] - redhat/configs: enable CONFIG_BPF_UNPRIV_DEFAULT_OFF (Yauheni Kaliuta) [1944799] - kbuild: Quote OBJCOPY var to avoid a pahole call break the build (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_JIT kconfig symbol dependency (Yauheni Kaliuta) [1944799] - bpf: Add kconfig knob for disabling unpriv bpf by default (Yauheni Kaliuta) [1944799] - bpf, kconfig: Add consolidated menu entry for bpf with core options (Yauheni Kaliuta) [1944799] - tools/resolve_btfids: Fix warnings (Yauheni Kaliuta) [1944799] - tools/runqslower: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1944799] - lib/string.c: allow searching for NUL with strnchr (Yauheni Kaliuta) [1944799] - rpmspec: update manpages installation after 5.13 rebase (bpf-helpers, bpf-syscall) (Yauheni Kaliuta) [1944799] - libbpf: Fix segfault in static linker for objects without BTF (Yauheni Kaliuta) [1944799] - bpf: Avoid using ARRAY_SIZE on an uninitialized pointer (Yauheni Kaliuta) [1944799] - bpf: Remove superfluous aux sanitation on subprog rejection (Yauheni Kaliuta) [1944799] - bpf: Clarify a bpf_bprintf_prepare macro (Yauheni Kaliuta) [1944799] - bpf: Fix nested bpf_bprintf_prepare with more per-cpu buffers (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the snprintf test (Yauheni Kaliuta) [1944799] - bpf: Implement formatted output helpers with bstr_printf (Yauheni Kaliuta) [1944799] - seq_file: Add a seq_bprintf function (Yauheni Kaliuta) [1944799] - bpf: Notify user if we ever hit a bpf_snprintf verifier bug (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a series of tests for bpf_snprintf (Yauheni Kaliuta) [1944799] - bpf: Lock bpf_trace_printk's tmp buf before it is written to (Yauheni Kaliuta) [1944799] - bpf: Add a bpf_snprintf helper (Yauheni Kaliuta) [1944799] - bpf: Factorize bpf_trace_printk and bpf_seq_printf (Yauheni Kaliuta) [1944799] - Stop the ad-hoc games with -Wno-maybe-initialized (Yauheni Kaliuta) [1944799] - kbuild: compute false-positive -Wmaybe-uninitialized cases in Kconfig (Yauheni Kaliuta) [1944799] - bpf: Fix potentially incorrect results with bpf_get_local_storage() (Yauheni Kaliuta) [1944799] - bpf, samples: Fix xdpsock with '-M' parameter missing unload process (Yauheni Kaliuta) [1944799] - libbpf: Don't crash on object files with no symbol tables (Yauheni Kaliuta) [1944799] - libbpf: Fix ELF symbol visibility update logic (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest outcomes wrt unreachable code (Yauheni Kaliuta) [1944799] - bpf: Do not mark insn as seen under speculative path verification (Yauheni Kaliuta) [1944799] - bpf: Inherit expanded/patched seen count from old aux data (Yauheni Kaliuta) [1944799] - bpf, selftests: Adjust few selftest result_unpriv outcomes (Yauheni Kaliuta) [1944799] - bpf: Fix BPF_LSM kconfig symbol dependency (Yauheni Kaliuta) [1944799] - selftests/bpf: Add test for l3 use of bpf_redirect_peer (Yauheni Kaliuta) [1944799] - bpftool: Add sock_release help info for cgroup attach/prog load command (Yauheni Kaliuta) [1944799] - bpf, offload: Reorder offload callback 'prepare' in verifier (Yauheni Kaliuta) [1944799] - selftests/bpf: Test ringbuf mmap read-only and read-write restrictions (Yauheni Kaliuta) [1944799] - selftests/bpf: Convert static to global in tc_redirect progs (Yauheni Kaliuta) [1944799] - selftests/bpf: Rewrite test_tc_redirect.sh as prog_tests/tc_redirect.c (Yauheni Kaliuta) [1944799] - libbpf: Provide GELF_ST_VISIBILITY() define for older libelf (Yauheni Kaliuta) [1944799] - bpf: Add deny list of btf ids check for tracing programs (Yauheni Kaliuta) [1944799] - bpf: Forbid trampoline attach for functions with variable arguments (Yauheni Kaliuta) [1944799] - samples/bpf: Consider frame size in tx_only of xdpsock sample (Yauheni Kaliuta) [1944799] - libbpf: Add NULL check to add_dummy_ksym_var (Yauheni Kaliuta) [1944799] - libbpf: Fix signed overflow in ringbuf_process_ring (Yauheni Kaliuta) [1944799] - bpf, selftests: Update array map tests for per-cpu batched ops (Yauheni Kaliuta) [1944799] - bpf: Add batched ops support for percpu array (Yauheni Kaliuta) [1944799] - bpf, docs: Fix literal block for example code (Yauheni Kaliuta) [1944799] - bpf, cpumap: Bulk skb using netif_receive_skb_list (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix field existence CO-RE reloc tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix BPF_CORE_READ_BITFIELD() macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Use ASSERT macros in lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Test that module can't be unloaded with attached trampoline (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to lsm test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fexit_test (Yauheni Kaliuta) [1944799] - selftests/bpf: Add re-attach test to fentry_test (Yauheni Kaliuta) [1944799] - bpf: Allow trampoline re-attach for tracing and lsm programs (Yauheni Kaliuta) [1944799] - bpf: Document the pahole release info related to libbpf in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - selftests/bpf: Document latest Clang fix expectations for linking tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Add map linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add global variables linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Add function linking selftest (Yauheni Kaliuta) [1944799] - selftests/bpf: Omit skeleton generation for multi-linked BPF object files (Yauheni Kaliuta) [1944799] - selftests/bpf: Use -O0 instead of -Og in selftests builds (Yauheni Kaliuta) [1944799] - libbpf: Support extern resolution for BTF-defined maps in .maps section (Yauheni Kaliuta) [1944799] - libbpf: Add linker extern resolution support for functions and global variables (Yauheni Kaliuta) [1944799] - libbpf: Tighten BTF type ID rewriting with error checking (Yauheni Kaliuta) [1944799] - libbpf: Extend sanity checking ELF symbols with externs validation (Yauheni Kaliuta) [1944799] - libbpf: Make few internal helpers available outside of libbpf.c (Yauheni Kaliuta) [1944799] - libbpf: Factor out symtab and relos sanity checks (Yauheni Kaliuta) [1944799] - libbpf: Refactor BTF map definition parsing (Yauheni Kaliuta) [1944799] - libbpf: Allow gaps in BPF program sections to support overriden weak functions (Yauheni Kaliuta) [1944799] - libbpf: Mark BPF subprogs with hidden visibility as static for BPF verifier (Yauheni Kaliuta) [1944799] - libbpf: Suppress compiler warning when using SEC() macro with externs (Yauheni Kaliuta) [1944799] - bpftool: Dump more info about DATASEC members (Yauheni Kaliuta) [1944799] - bpftool: Support dumping BTF VAR's "extern" linkage (Yauheni Kaliuta) [1944799] - bpf: Remove unnecessary map checks for ARG_PTR_TO_CONST_STR (Yauheni Kaliuta) [1944799] - xsk: Align XDP socket batch size with DPDK (Yauheni Kaliuta) [1944799] - bpf, doc: Fix some invalid links in bpf_devel_QA.rst (Yauheni Kaliuta) [1944799] - net, xdp: Update pkt_type if generic XDP changes unicast MAC (Yauheni Kaliuta) [1944799] - powerpc/ebpf32: Use standard function call for functions within 32M distance (Yauheni Kaliuta) [1944799] - selftests/bpf: Add docs target as all dependency (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds test_prog (Yauheni Kaliuta) [1944799] - bpf/selftests: Add bpf_get_task_stack retval bounds verifier test (Yauheni Kaliuta) [1944799] - bpf: Refine retval for bpf_get_task_stack helper (Yauheni Kaliuta) [1944799] - samples/bpf: Fix broken tracex1 due to kprobe argument change (Yauheni Kaliuta) [1944799] - libbpf: Introduce a BPF_SNPRINTF helper macro (Yauheni Kaliuta) [1944799] - libbpf: Initialize the bpf_seq_printf parameters array field by field (Yauheni Kaliuta) [1944799] - bpf: Add a ARG_PTR_TO_CONST_STR argument type (Yauheni Kaliuta) [1944799] - bpftool: Fix a clang compilation warning (Yauheni Kaliuta) [1944799] - selftests/bpf: Silence clang compilation warnings (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix test_cpp compilation failure with clang (Yauheni Kaliuta) [1944799] - selftests: Set CC to clang in lib.mk if LLVM is set (Yauheni Kaliuta) [1944799] - libbpf: Remove unused field. (Yauheni Kaliuta) [1944799] - tools/testing: Remove unused variable (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix the ASSERT_ERR_PTR macro (Yauheni Kaliuta) [1944799] - selftests/bpf: Add tests for target information in bpf_link info queries (Yauheni Kaliuta) [1944799] - bpf: Return target info when a tracing bpf_link is queried (Yauheni Kaliuta) [1944799] - libbpf: Clarify flags in ringbuf helpers (Yauheni Kaliuta) [1944799] - bpf: Sync bpf headers in tooling infrastucture (Yauheni Kaliuta) [1944799] - bpf: Document PROG_TEST_RUN limitations (Yauheni Kaliuta) [1944799] - bpf, inode: Remove second initialization of the bpf_preload_lock (Yauheni Kaliuta) [1944799] - libbpf: Fix KERNEL_VERSION macro (Yauheni Kaliuta) [1944799] - bpf: selftests: Specify CONFIG_DYNAMIC_FTRACE in the testing config (Yauheni Kaliuta) [1944799] - powerpc/bpf: Reallocate BPF registers to volatile registers when possible on PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change values of SEEN_ flags (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common functions into bpf_jit_comp.c (Yauheni Kaliuta) [1944799] - powerpc/bpf: Remove classical BPF support for PPC32 (Yauheni Kaliuta) [1944799] - powerpc/bpf: Move common helpers into bpf_jit.h (Yauheni Kaliuta) [1944799] - powerpc/bpf: Change register numbering for bpf_set/is_seen_register() (Yauheni Kaliuta) [1944799] - libbpf: Remove redundant semi-colon (Yauheni Kaliuta) [1944799] - bpf: Remove repeated struct btf_type declaration (Yauheni Kaliuta) [1944799] - bpf, cgroup: Delete repeated struct bpf_prog declaration (Yauheni Kaliuta) [1944799] - bpf: Remove unused parameter from ___bpf_prog_run (Yauheni Kaliuta) [1944799] - bpf, selftests: test_maps generating unrecognized data section (Yauheni Kaliuta) [1944799] - selftests/bpf: Add an option for a debug shell in vmtest.sh (Yauheni Kaliuta) [1944799] - bpf: Remove redundant assignment of variable id (Yauheni Kaliuta) [1944799] - bpf: Remove unused bpf_load_pointer (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused defines (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove mutex and condition variable (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread attribute (Yauheni Kaliuta) [1944799] - selftests: xsk: Implement bpf_link test (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove sync_mutex_tx and atomic var (Yauheni Kaliuta) [1944799] - selftests: xsk: Refactor teardown/bidi test cases and testapp_validate (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove Tx synchronization resources (Yauheni Kaliuta) [1944799] - selftests: xsk: Split worker thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove thread for netns switch (Yauheni Kaliuta) [1944799] - samples: bpf: Do not unload prog within xdpsock (Yauheni Kaliuta) [1944799] - libbpf: xsk: Use bpf_link (Yauheni Kaliuta) [1944799] - selftests: xsk: Simplify frame traversal in dumping thread (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove inline keyword from source file (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove unused function (Yauheni Kaliuta) [1944799] - selftests: xsk: Remove struct ifaceconfigobj (Yauheni Kaliuta) [1944799] - selftests: xsk: Don't call worker_pkt_dump() for stats test (Yauheni Kaliuta) [1944799] - libbpf: Fix memory leak when emitting final btf_ext (Yauheni Kaliuta) [1944799] - bpf: selftests: Update clang requirement in README.rst for testing kfunc call (Yauheni Kaliuta) [1944799] - bpf: Update bpf_design_QA.rst to clarify the kfunc call is not ABI (Yauheni Kaliuta) [1944799] - bpf: selftests: Add kfunc_call test (Yauheni Kaliuta) [1944799] - bpf: selftests: Bpf_cubic and bpf_dctcp calling kernel functions (Yauheni Kaliuta) [1944799] - bpf: selftests: Rename bictcp to bpf_cubic (Yauheni Kaliuta) [1944799] - libbpf: Support extern kernel function (Yauheni Kaliuta) [1944799] - libbpf: Record extern sym relocation first (Yauheni Kaliuta) [1944799] - libbpf: Rename RELO_EXTERN to RELO_EXTERN_VAR (Yauheni Kaliuta) [1944799] - libbpf: Refactor codes for finding btf id of a kernel symbol (Yauheni Kaliuta) [1944799] - libbpf: Refactor bpf_object__resolve_ksyms_btf_id (Yauheni Kaliuta) [1944799] - bpf: Support bpf program calling kernel function (Yauheni Kaliuta) [1944799] - bpf: Refactor btf_check_func_arg_match (Yauheni Kaliuta) [1944799] - bpf: Simplify freeing logic in linfo and jited_linfo (Yauheni Kaliuta) [1944799] - libbpf: Preserve empty DATASEC BTFs during static linking (Yauheni Kaliuta) [1944799] - bpf: struct sock is declared twice in bpf_sk_storage header (Yauheni Kaliuta) [1944799] - bpf: Remove unused headers (Yauheni Kaliuta) [1944799] - libbpf: Add bpf object kern_version attribute setter (Yauheni Kaliuta) [1944799] - bpf: selftests: Add tests for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - bpf: Add support for batched ops in LPM trie maps (Yauheni Kaliuta) [1944799] - selftests/bpf: Better error messages for ima_setup.sh failures (Yauheni Kaliuta) [1944799] - bpf: Fix NULL pointer dereference in bpf_get_local_storage() helper (Yauheni Kaliuta) [1944799] - libbpf: Constify few bpf_program getters (Yauheni Kaliuta) [1944799] - bpf: Fix typo 'accesible' into 'accessible' (Yauheni Kaliuta) [1944799] - tracing: Fix various typos in comments (Yauheni Kaliuta) [1944799] - libbpf: Skip BTF fixup if object file has no BTF (Yauheni Kaliuta) [1944799] - bpf: Remove insn_buf[] declaration in inner block (Yauheni Kaliuta) [1944799] - selftests/bpf: Add multi-file statically linked BPF object file test (Yauheni Kaliuta) [1944799] - selftests/bpf: Pass all BPF .o's through BPF static linker (Yauheni Kaliuta) [1944799] - selftests/bpf: Re-generate vmlinux.h and BPF skeletons if bpftool changed (Yauheni Kaliuta) [1944799] - bpftool: Add `gen object` command to perform BPF static linking (Yauheni Kaliuta) [1944799] - bpftool: Add ability to specify custom skeleton object name (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker BTF and BTF.ext support (Yauheni Kaliuta) [1944799] - libbpf: Add BPF static linker APIs (Yauheni Kaliuta) [1944799] - libbpf: Add generic BTF type shallow copy API (Yauheni Kaliuta) [1944799] - libbpf: Extract internal set-of-strings datastructure APIs (Yauheni Kaliuta) [1944799] - libbpf: Rename internal memory-management helpers (Yauheni Kaliuta) [1944799] - libbpf: Generalize BTF and BTF.ext type ID and strings iteration (Yauheni Kaliuta) [1944799] - libbpf: Expose btf_type_by_id() internally (Yauheni Kaliuta) [1944799] - x86: Fix various typos in comments (Yauheni Kaliuta) [1944799] - selftests/bpf: drop custom NULL #define in skb_pkt_end selftest (Yauheni Kaliuta) [1944799] - libbpf: provide NULL and KERNEL_VERSION macros in bpf_helpers.h (Yauheni Kaliuta) [1944799] - bpf: net: Emit anonymous enum with BPF_TCP_CLOSE value explicitly (Yauheni Kaliuta) [1944799] - selftests/bpf: Use nanosleep() syscall instead of sleep() in get_cgroup_id (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Build everything in debug mode (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix maybe-uninitialized warning in xdpxceiver test (Yauheni Kaliuta) [1944799] - bpftool: Fix maybe-uninitialized warnings (Yauheni Kaliuta) [1944799] - libbpf: Add explicit padding to bpf_xdp_set_link_opts (Yauheni Kaliuta) [1944799] - kernel/bpf/: Fix misspellings using codespell tool (Yauheni Kaliuta) [1944799] - s390/bpf: Implement new atomic ops (Yauheni Kaliuta) [1944799] - bpf: selftests: Remove unused 'nospace_err' in tests for batched ops in array maps (Yauheni Kaliuta) [1944799] - samples: bpf: Fix a spelling typo in do_hbm_test.sh (Yauheni Kaliuta) [1944799] - libbpf: Avoid inline hint definition from 'linux/stddef.h' (Yauheni Kaliuta) [1944799] - libbpf: xsk: Move barriers from libbpf_util.h to xsk.h (Yauheni Kaliuta) [1944799] - libbpf: xsk: Remove linux/compiler.h header (Yauheni Kaliuta) [1944799] - bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix warning comparing pointer to 0 (Yauheni Kaliuta) [1944799] - bpf, xdp: Restructure redirect actions (Yauheni Kaliuta) [1944799] - bpf, xdp: Make bpf_redirect_map() a map operation (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix compiler warning in BPF_KPROBE definition in loop6.c (Yauheni Kaliuta) [1944799] - selftests/bpf: Fix typo in Makefile (Yauheni Kaliuta) [1944799] - libbpf: Fix arm64 build (Yauheni Kaliuta) [1944799] - libbpf, xsk: Add libbpf_smp_store_release libbpf_smp_load_acquire (Yauheni Kaliuta) [1944799] - selftests, bpf: Extend test_tc_tunnel test with vxlan (Yauheni Kaliuta) [1944799] - bpf: Add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_ENCAP_L2_ETH (Yauheni Kaliuta) [1944799] - selftests/bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - bpf: Simplify the calculation of variables (Yauheni Kaliuta) [1944799] - selftests: bpf: Don't run sk_lookup in verifier tests (Yauheni Kaliuta) [1944799] - selftests: bpf: Check that PROG_TEST_RUN repeats as requested (Yauheni Kaliuta) [1944799] - selftests: bpf: Convert sk_lookup ctx access tests to PROG_TEST_RUN (Yauheni Kaliuta) [1944799] - bpf: Add PROG_TEST_RUN support for sk_lookup programs (Yauheni Kaliuta) [1944799] - bpf: Consolidate shared test timing code (Yauheni Kaliuta) [1944799] - docs/bpf: Add bpf() syscall command reference (Yauheni Kaliuta) [1944799] - selftests/bpf: Test syscall command parsing (Yauheni Kaliuta) [1944799] - selftests/bpf: Templatize man page generation (Yauheni Kaliuta) [1944799] - tools/bpf: Remove bpf-helpers from bpftool docs (Yauheni Kaliuta) [1944799] - scripts/bpf: Add syscall commands printer (Yauheni Kaliuta) [1944799] - tools: Sync uapi bpf.h header with latest changes (Yauheni Kaliuta) [1944799] - scripts/bpf: Abstract eBPF API target parameter (Yauheni Kaliuta) [1944799] - bpf: Document BPF_MAP_*_BATCH syscall commands (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_QUERY syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_TEST_RUN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_ATTACH syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_PROG_PIN syscall command (Yauheni Kaliuta) [1944799] - bpf: Document BPF_F_LOCK in syscall commands (Yauheni Kaliuta) [1944799] - bpf: Add minimal bpf() command documentation (Yauheni Kaliuta) [1944799] - bpf: Import syscall arg documentation (Yauheni Kaliuta) [1944799] - libbpf: Fix whitespace in btf_add_composite() comment (Yauheni Kaliuta) [1944799] - selftests/bpf: Add a verifier scale test with unknown bounded loop (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Exit non-zero on errors (Yauheni Kaliuta) [1944799] - tools, bpf_asm: Hard error on out of range jumps (Yauheni Kaliuta) [1944799] - selftests/bpf: Add arraymap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - selftests/bpf: Add hashmap test for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpftool: Print subprog address properly (Yauheni Kaliuta) [1944799] - libbpf: Support subprog address relocation (Yauheni Kaliuta) [1944799] - libbpf: Move function is_ldimm64() earlier in libbpf.c (Yauheni Kaliuta) [1944799] - bpf: Add arraymap support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add hashtab support for bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Add bpf_for_each_map_elem() helper (Yauheni Kaliuta) [1944799] - bpf: Change return value of verifier function add_subprog() (Yauheni Kaliuta) [1944799] - bpf: Refactor check_func_call() to allow callback function (Yauheni Kaliuta) [1944799] - bpf: Factor out verbose_invalid_scalar() (Yauheni Kaliuta) [1944799] - bpf: Factor out visit_func_call_insn() in check_cfg() (Yauheni Kaliuta) [1944799] - selftests/bpf: Copy extras in out-of-srctree builds (Yauheni Kaliuta) [1944799] - selftests/bpf: Propagate error code of the command to vmtest.sh (Yauheni Kaliuta) [1944799] - selftests/bpf: Introduce xsk statistics tests (Yauheni Kaliuta) [1944799] - selftests/bpf: Restructure xsk selftests (Yauheni Kaliuta) [1944799] - selftests/bpf: Expose and rename debug argument (Yauheni Kaliuta) [1944799] - selftest/bpf: Make xsk tests less verbose (Yauheni Kaliuta) [1944799] - bpf: Rename fixup_bpf_calls and add some comments (Yauheni Kaliuta) [1944799] - bpf: Use MAX_BPF_FUNC_REG_ARGS macro (Yauheni Kaliuta) [1944799] - bpf: runqslower: Prefer using local vmlimux to generate vmlinux.h (Yauheni Kaliuta) [1944799] - bpf: Add kernel/modules BTF presence checks to bpftool feature command (Yauheni Kaliuta) [1944799]- netfilter: log: work around missing softdep backend module (Florian Westphal) [2017794] - netfilter: nft_ct: protect nft_ct_pcpu_template_refcnt with mutex (Florian Westphal) [2017794] - netfilter: Fix fall-through warnings for Clang (Florian Westphal) [2017794] - netfilter: nft_nat: allow to specify layer 4 protocol NAT only (Florian Westphal) [2017794] - netfilter: conntrack: adjust stop timestamp to real expiry value (Florian Westphal) [2017794] - netfilter: ipvs: make global sysctl readonly in non-init netns (Florian Westphal) [2017794] - ipvs: fix possible memory leak in ip_vs_control_net_init (Florian Westphal) [2017794] - ipvs: fix the connection sync failed in some cases (Florian Westphal) [2017794] - net: Fix offloading indirect devices dependency on qdisc order creation (Davide Caratti) [1997381] - net/core: Remove unused field from struct flow_indr_dev (Davide Caratti) [1997381] - Drivers: hv: balloon: Use VMBUS_RING_SIZE() wrapper for dm_ring_size (Vitaly Kuznetsov) [2019101] - hv_balloon: Remove redundant assignment to region_start (Vitaly Kuznetsov) [2019101] - hv_balloon: disable warning when floor reached (Vitaly Kuznetsov) [2019101] - net/tls: Fix flipped sign in async_wait.err assignment (Sabrina Dubroca) [2019176] - net/tls: Fix flipped sign in tls_err_abort() calls (Sabrina Dubroca) [2019176] - tls: prevent oversized sendfile() hangs by ignoring MSG_MORE (Sabrina Dubroca) [2019176] - tls splice: remove inappropriate flags checking for MSG_PEEK (Sabrina Dubroca) [2019176] - net/tls: Fix use-after-free after the TLS device goes down and up (Sabrina Dubroca) [2019176] - net/tls: Replace TLS_RX_SYNC_RUNNING with RCU (Sabrina Dubroca) [2019176] - tls splice: check SPLICE_F_NONBLOCK instead of MSG_DONTWAIT (Sabrina Dubroca) [2019176] - net/tls: Remove redundant initialization of record (Sabrina Dubroca) [2019176] - ibmvnic: don't stop queue in xmit (Diego Domingos) [2011995] - selftests: net: switch to socat in the GSO GRE test (Hangbin Liu) [2018059] - selftests: net: properly support IPv6 in GSO GRE test (Hangbin Liu) [2018059] - kselftests/net: add missed setup_loopback.sh/setup_veth.sh to Makefile (Hangbin Liu) [2018059] - selftests: add simple GSO GRE test (Hangbin Liu) [2018059] - selftests/net: allow GRO coalesce test on veth (Hangbin Liu) [2018059] - selftests/net: GRO coalesce test (Hangbin Liu) [2018059] - perf/x86: Reset destroy callback on event init failure (Michael Petlan) [2003982] - x86/msr: Define new bits in TSX_FORCE_ABORT MSR (Michael Petlan) [2003982] - perf script: Fix --list-dlfilters documentation (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix IIO cleanup mapping procedure for SNR/ICX (Michael Petlan) [2003982] - Revert "perf map: Fix dso->nsinfo refcounting" (Michael Petlan) [2003982] - perf pmu: Fix alias matching (Michael Petlan) [2003982] - perf cs-etm: Split --dump-raw-trace by AUX records (Michael Petlan) [2003982] - perf sched: Fix record failure when CONFIG_SCHEDSTATS is not set (Michael Petlan) [2003982] - perf probe: Fix add event failure when running 32-bit perf in a 64-bit kernel (Michael Petlan) [2003982] - perf data: Close all files in close_dir() (Michael Petlan) [2003982] - perf probe-file: Delete namelist in del_events() on the error path (Michael Petlan) [2003982] - perf test bpf: Free obj_buf (Michael Petlan) [2003982] - perf trace: Free strings in trace__parse_events_option() (Michael Petlan) [2003982] - perf trace: Free syscall tp fields in evsel->priv (Michael Petlan) [2003982] - perf trace: Free syscall->arg_fmt (Michael Petlan) [2003982] - perf trace: Free malloc'd trace fields on exit (Michael Petlan) [2003982] - perf lzma: Close lzma stream on exit (Michael Petlan) [2003982] - perf script: Fix memory 'threads' and 'cpus' leaks on exit (Michael Petlan) [2003982] - perf script: Release zstd data (Michael Petlan) [2003982] - perf session: Cleanup trace_event (Michael Petlan) [2003982] - perf inject: Close inject.output on exit (Michael Petlan) [2003982] - perf report: Free generated help strings for sort option (Michael Petlan) [2003982] - perf env: Fix memory leak of cpu_pmu_caps (Michael Petlan) [2003982] - perf test maps__merge_in: Fix memory leak of maps (Michael Petlan) [2003982] - perf dso: Fix memory leak in dso__new_map() (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of unit (Michael Petlan) [2003982] - perf test event_update: Fix memory leak of evlist (Michael Petlan) [2003982] - perf test session_topology: Delete session->evlist (Michael Petlan) [2003982] - perf env: Fix sibling_dies memory leak (Michael Petlan) [2003982] - perf probe: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf map: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf inject: Fix dso->nsinfo refcounting (Michael Petlan) [2003982] - perf cs-etm: Split Coresight decode by aux records (Michael Petlan) [2003982] - perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into sysconf(__SC_THREAD_STACK_MIN_VALUE) (Michael Petlan) [2003982] - libperf: Fix build error with LIBPFM4=1 (Michael Petlan) [2003982] - perf stat: Merge uncore events by default for hybrid platform (Michael Petlan) [2003982] - perf tests: Fix 'Convert perf time to TSC' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Roundtrip evsel->name' on core-only system (Michael Petlan) [2003982] - perf tests: Fix 'Parse event definition strings' on core-only system (Michael Petlan) [2003982] - perf pmu: Skip invalid hybrid pmu (Michael Petlan) [2003982] - perf test: Add free() calls for scandir() returned dirent entries (Michael Petlan) [2003982] - libperf: Add tests for perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Remove BUG_ON() from library code in get_group_fd() (Michael Petlan) [2003982] - libperf: Add group support to perf_evsel__open() (Michael Petlan) [2003982] - perf tools: Fix pattern matching for same substring in different PMU type (Michael Petlan) [2003982] - perf record: Add a dummy event on hybrid systems to collect metadata records (Michael Petlan) [2003982] - perf stat: Add Topdown metrics L2 events as default events (Michael Petlan) [2003982] - libperf: Adopt evlist__set_leader() from tools/perf as perf_evlist__set_leader() (Michael Petlan) [2003982] - libperf: Move 'nr_groups' from tools/perf to evlist::nr_groups (Michael Petlan) [2003982] - libperf: Move 'leader' from tools/perf to perf_evsel::leader (Michael Petlan) [2003982] - libperf: Move 'idx' from tools/perf to perf_evsel::idx (Michael Petlan) [2003982] - libperf: Change tests to single static and shared binaries (Michael Petlan) [2003982] - perf intel-pt: Add a config for max loops without consuming a packet (Michael Petlan) [2003982] - perf stat: Disable the NMI watchdog message on hybrid (Michael Petlan) [2003982] - perf trace: Fix the perf trace link location (Michael Petlan) [2003982] - perf top: Fix overflow in elf_sec__is_text() (Michael Petlan) [2003982] - perf annotate: Fix 's' on source line when disasm is empty (Michael Petlan) [2003982] - perf probe: Do not show @plt function by default (Michael Petlan) [2003982] - perf symbol-elf: Decode dynsym even if symtab exists (Michael Petlan) [2003982] - perf probe: Fix debuginfo__new() to enable build-id based debuginfo (Michael Petlan) [2003982] - perf stat: Enable BPF counter with --for-each-cgroup (Michael Petlan) [2003982] - perf report: Fix --task and --stat with pipe input (Michael Petlan) [2003982] - perf session: Add missing evlist__delete when deleting a session (Michael Petlan) [2003982] - perf annotate: Allow 's' on source code lines (Michael Petlan) [2003982] - perf dlfilter: Add object_code() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add attr() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add srcline() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add insn() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf dlfilter: Add resolve_address() to perf_dlfilter_fns (Michael Petlan) [2003982] - perf build: Install perf_dlfilter.h (Michael Petlan) [2003982] - perf script: Add option to pass arguments to dlfilters (Michael Petlan) [2003982] - perf script: Add option to list dlfilters (Michael Petlan) [2003982] - perf script: Add dlfilter__filter_event_early() (Michael Petlan) [2003982] - perf script: Add API for filtering via dynamically loaded shared object (Michael Petlan) [2003982] - perf llvm: Return -ENOMEM when asprintf() fails (Michael Petlan) [2003982] - perf cs-etm: Delay decode of non-timeless data until cs_etm__flush_events() (Michael Petlan) [2003982] - perf arm-spe: Don't wait for PERF_RECORD_EXIT event (Michael Petlan) [2003982] - perf arm-spe: Bail out if the trace is later than perf event (Michael Petlan) [2003982] - perf arm-spe: Assign kernel time to synthesized event (Michael Petlan) [2003982] - perf arm-spe: Convert event kernel time to counter value (Michael Petlan) [2003982] - perf arm-spe: Save clock parameters from TIME_CONV event (Michael Petlan) [2003982] - perf cs-etm: Remove callback cs_etm_find_snapshot() (Michael Petlan) [2003982] - perf bpf_counter: Move common functions to bpf_counter.h (Michael Petlan) [2003982] - perf tools: Add cgroup_is_v2() helper (Michael Petlan) [2003982] - perf tools: Add read_cgroup_id() function (Michael Petlan) [2003982] - tools lib: Adopt bitmap_intersects() operation from the kernel sources (Michael Petlan) [2003982] - perf top: Add cgroup support for perf top (-G) (Michael Petlan) [2003982] - perf script: Share addr_al between functions (Michael Petlan) [2003982] - perf script: Move filtering before scripting (Michael Petlan) [2003982] - perf script: Move filter_cpu() earlier (Michael Petlan) [2003982] - perf test: Pass the verbose option to shell tests (Michael Petlan) [2003982] - perf probe: Add --bootconfig to output definition in bootconfig format (Michael Petlan) [2003982] - perf probe: Cleanup synthesize_probe_trace_command() (Michael Petlan) [2003982] - perf probe: Support probes on init functions for offline kernel (Michael Petlan) [2003982] - perf test: Make stat bpf counters test more robust (Michael Petlan) [2003982] - perf test: Add verbose skip output for bpf counters (Michael Petlan) [2003982] - perf annotate: Add itrace options support (Michael Petlan) [2003982] - perf mem-events: Remove duplicate #undef (Michael Petlan) [2003982] - perf evsel: Adjust hybrid event and global event mixed group (Michael Petlan) [2003982] - perf probe: Provide clearer message permission error for tracefs access (Michael Petlan) [2003982] - perf auxtrace: Change to use SMP memory barriers (Michael Petlan) [2003982] - perf srccode: Use list_move() instead of equivalent list_del() + list_add() sequence (Michael Petlan) [2003982] - perf probe: Report possible permission error for map__load() failure (Michael Petlan) [2003982] - perf probe: Add permission and sysctl notice to man page (Michael Petlan) [2003982] - perf c2c: Support record for hybrid platform (Michael Petlan) [2003982] - perf mem: Disable 'mem-loads-aux' group before reporting (Michael Petlan) [2003982] - perf mem: Fix wrong verbose output for recording events (Michael Petlan) [2003982] - perf mem: Support record for hybrid platform (Michael Petlan) [2003982] - perf tools: Check if mem_events is supported for hybrid platform (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-store event (Michael Petlan) [2003982] - perf tools: Support pmu prefix for mem-load event (Michael Petlan) [2003982] - perf tools: Check mem-loads auxiliary event (Michael Petlan) [2003982] - perf scripting python: intel-pt-events.py: Add --insn-trace and --src-trace (Michael Petlan) [2003982] - perf scripting python: exported-sql-viewer.py: Factor out libxed.py (Michael Petlan) [2003982] - perf scripting python: Update documentation for srcline etc (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_srcline() and perf_sample_srccode() (Michael Petlan) [2003982] - perf scripting python: Add perf_set_itrace_options() (Michael Petlan) [2003982] - perf auxtrace: Factor out itrace_do_parse_synth_opts() (Michael Petlan) [2003982] - perf scripting python: Add perf_sample_insn() (Michael Petlan) [2003982] - perf script: Factor out script_fetch_insn() (Michael Petlan) [2003982] - perf scripting python: Assign perf_script_context (Michael Petlan) [2003982] - perf scripting: Add perf_session to scripting_context (Michael Petlan) [2003982] - perf scripting: Add scripting_context__update() (Michael Petlan) [2003982] - perf scripting python: Simplify perf-trace-context module functions (Michael Petlan) [2003982] - perf scripting python: Remove unnecessary 'static' (Michael Petlan) [2003982] - perf test: Test 2 libpfm4 error cases (Michael Petlan) [2003982] - perf test: Iterate over shell tests in alphabetical order (Michael Petlan) [2003982] - perf probe: Provide more detail with relocation warning (Michael Petlan) [2003982] - perf parse-events: Add bison --file-prefix-map option (Michael Petlan) [2003982] - perf inject: Do not inject BUILD_ID record if MMAP2 has it (Michael Petlan) [2003982] - perf inject: Call dso__put() even if dso->hit is set (Michael Petlan) [2003982] - perf scripts python: intel-pt-events.py: Add branches to script (Michael Petlan) [2003982] - perf scripting python: Add auxtrace error (Michael Petlan) [2003982] - perf scripting python: Add context switch (Michael Petlan) [2003982] - perf scripting python: Add cpumode (Michael Petlan) [2003982] - perf scripting python: Add IPC (Michael Petlan) [2003982] - perf scripting python: Add sample flags (Michael Petlan) [2003982] - perf script: Factor out perf_sample__sprintf_flags() (Michael Petlan) [2003982] - perf scripting python: Add 'addr_location' for 'addr' (Michael Petlan) [2003982] - perf scripting python: Factor out set_sym_in_dict() (Michael Petlan) [2003982] - perf scripting python: Fix tuple_set_u64() (Michael Petlan) [2003982] - perf auxtrace: Make perf_event__process_auxtrace*() callable (Michael Petlan) [2003982] - perf script: Find script file relative to exec path (Michael Petlan) [2003982] - perf arm-spe: Remove redundant checking for "full_auxtrace" (Michael Petlan) [2003982] - perf arm-spe: Enable timestamp for per-cpu mode (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for dummy event (Michael Petlan) [2003982] - perf arm-spe: Correct sample flags for SPE event (Michael Petlan) [2003982] - perf vendor events intel: Update event list for Icelake Client (Michael Petlan) [2003982] - perf vendor events intel: Add uncore event list for Icelake Server (Michael Petlan) [2003982] - perf vendor events intel: Add core event list for Icelake Server (Michael Petlan) [2003982] - perf tests: Drop __maybe_unused on x86 test declarations (Michael Petlan) [2003982] - perf tests: Consolidate test__arch_unwind_sample declaration (Michael Petlan) [2003982] - perf build: Improve error message for old/missing clang (Michael Petlan) [2003982] - perf tools: Test build with libbpf/LIBBPF_DYNAMIC=1 (Michael Petlan) [2003982] - perf tools: Test build with libopencsd/CORESIGHT=1 (Michael Petlan) [2003982] - perf cs-etm: Prevent and warn on underflows during timestamp calculation. (Michael Petlan) [2003982] - perf cs-etm: Start reading 'Z' --itrace option (Michael Petlan) [2003982] - perf cs-etm: Move synth_opts initialisation (Michael Petlan) [2003982] - perf header: Support HYBRID_CPU_PMU_CAPS feature (Michael Petlan) [2003982] - perf header: Support HYBRID_TOPOLOGY feature (Michael Petlan) [2003982] - perf cs-etm: Set time on synthesised samples to preserve ordering (Michael Petlan) [2003982] - perf cs-etm: Refactor timestamp variable names (Michael Petlan) [2003982] - perf x86 kvm-stat: Support to analyze kvm MSR (Michael Petlan) [2003982] - perf stat: Use aggregated counts directly (Michael Petlan) [2003982] - perf record: Set timestamp boundary for AUX area events (Michael Petlan) [2003982] - perf intel-pt: Parse VM Time Correlation options and set up decoding (Michael Petlan) [2003982] - perf intel-pt: Add VM Time Correlation to decoder (Michael Petlan) [2003982] - perf intel-pt: Better 7-byte timestamp wraparound logic (Michael Petlan) [2003982] - perf intel-pt: Pass the first timestamp to the decoder (Michael Petlan) [2003982] - perf intel-pt: Add a tree for VMCS information (Michael Petlan) [2003982] - perf intel-pt: Let overlap detection handle VM timestamps (Michael Petlan) [2003982] - perf auxtrace: Allow buffers to be mapped read / write (Michael Petlan) [2003982] - perf inject: Add --vm-time-correlation option (Michael Petlan) [2003982] - perf inject: Add facility to do in place update (Michael Petlan) [2003982] - perf intel-pt: Support Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf intel-pt: Move synth_opts initialization earlier (Michael Petlan) [2003982] - perf auxtrace: Add Z itrace option for timeless decoding (Michael Petlan) [2003982] - perf/x86/amd/power: Assign pmu.module (Michael Petlan) [2003982] - perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op (Michael Petlan) [2003982] - perf/x86/amd/ibs: Work around erratum #1197 (Michael Petlan) [2003982] - perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of a u32 (Michael Petlan) [2003982] - perf/x86/intel/pt: Fix mask of num_address_ranges (Michael Petlan) [2003982] - perf/x86: Fix out of bound MSR access (Michael Petlan) [2003982] - perf/x86/cstate: Add ICELAKE_X and ICELAKE_D support (Michael Petlan) [2003982] - perf: MAP_EXECUTABLE does not indicate VM_MAYEXEC (Michael Petlan) [2003982] - arm64: perf: Simplify EVENT ATTR macro in perf_event.c (Michael Petlan) [2003982] - arm64: perf: Simplify the ARMv8 PMUv3 event attributes (Michael Petlan) [2003982] - arm64: perf: Remove unused macro (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l2_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in qcom_l3_pmu.c (Michael Petlan) [2003982] - drivers/perf: Simplify EVENT ATTR macro in xgene_pmu.c (Michael Petlan) [2003982] - drivers/perf: convert sysfs sprintf family to sysfs_emit (Michael Petlan) [2003982] - drivers/perf: convert sysfs scnprintf family to sysfs_emit_at() and sysfs_emit() (Michael Petlan) [2003982] - perf: arm-ccn: Use scnprintf() for robustness (Michael Petlan) [2003982] - drivers/perf: convert sysfs snprintf family to sysfs_emit (Michael Petlan) [2003982] - perf: Add EVENT_ATTR_ID to simplify event attributes (Michael Petlan) [2003982] - perf/x86/intel: Fix instructions:ppp support in Sapphire Rapids (Michael Petlan) [2003982] - perf/x86/intel: Add more events requires FRONTEND MSR on Sapphire Rapids (Michael Petlan) [2003982] - perf/x86: Reset the dirty counter to prevent the leak for an RDPMC task (Michael Petlan) [2003982] - uprobes: Update uprobe_write_opcode() kernel-doc comment (Michael Petlan) [2003982] - perf/hw_breakpoint: Fix DocBook warnings in perf hw_breakpoint (Michael Petlan) [2003982] - perf/core: Fix DocBook warnings (Michael Petlan) [2003982] - perf/core: Make local function perf_pmu_snapshot_aux() static (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on ICX (Michael Petlan) [2003982] - perf/x86/intel/uncore: Enable I/O stacks to IIO PMON mapping on SNR (Michael Petlan) [2003982] - perf/x86/intel/uncore: Generalize I/O stacks to PMON mapping procedure (Michael Petlan) [2003982] - perf/x86/intel/uncore: Drop unnecessary NULL checks after container_of() (Michael Petlan) [2003982] - x86/events/intel: Do not deploy TSX force abort workaround when TSX is deprecated (Michael Petlan) [2003982] - netpoll: don't require irqs disabled in rt kernels (Wander Lairson Costa) [1905440] - net/netif_receive_skb_core: Use migrate_disable() (Luis Claudio R. Goncalves) [2024168] - RDMA/qedr: Fix NULL deref for query_qp on the GSI QP (Kamal Heib) [2006260 1984280] - RDMA/core: Always release restrack object (Kamal Heib) [2006260] - RDMA/core: Fix incorrect print format specifier (Kamal Heib) [2006260] - RDMA: Remove rdma_set_device_sysfs_group() (Kamal Heib) [2006260] - RDMA/core: Allow port_groups to be used with namespaces (Kamal Heib) [2006260] - RDMA: Change ops->init_port to ops->port_groups (Kamal Heib) [2006260] - RDMA/hfi1: Use attributes for the port sysfs (Kamal Heib) [2006260 1989164] - RDMA/cm: Use an attribute_group on the ib_port_attribute intead of kobj's (Kamal Heib) [2006260] - RDMA/core: Expose the ib port sysfs attribute machinery (Kamal Heib) [2006260] - RDMA/core: Remove the kobject_uevent() NOP (Kamal Heib) [2006260] - RDMA/core: Create the device hw_counters through the normal groups mechanism (Kamal Heib) [2006260] - RDMA/core: Simplify how the port sysfs is created (Kamal Heib) [2006260] - RDMA/core: Simplify how the gid_attrs sysfs is created (Kamal Heib) [2006260] - RDMA/core: Split gid_attrs related sysfs from add_port() (Kamal Heib) [2006260] - RDMA/core: Split port and device counter sysfs attributes (Kamal Heib) [2006260] - RDMA/core: Replace the ib_port_data hw_stats pointers with a ib_port pointer (Kamal Heib) [2006260] - RDMA: Split the alloc_hw_stats() ops to port and device variants (Kamal Heib) [2006260] - RDMA/rxe: Zero out index member of struct rxe_queue (Kamal Heib) [2006260] - RDMA/efa: Free IRQ vectors on error flow (Kamal Heib) [2006260] - RDMA/rxe: Fix memory allocation while in a spin lock (Kamal Heib) [2006260] - IB/hfi1: Fix possible null-pointer dereference in _extend_sdma_tx_descs() (Kamal Heib) [2006260 1989164] - RDMA/rxe: Restore setting tot_len in the IPv4 header (Kamal Heib) [2006260] - RDMA/rxe: Use the correct size of wqe when processing SRQ (Kamal Heib) [2006260] - RDMA/cma: Revert INIT-INIT patch (Kamal Heib) [2006260] - RDMA/rxe: Fix memory leak in error path code (Kamal Heib) [2006260] - RDMA/rxe: Missing unlock on error in get_srq_wqe() (Kamal Heib) [2006260] - RDMA/cma: Fix rdma_resolve_route() memory leak (Kamal Heib) [2006260] - RDMA/core/sa_query: Remove unused argument (Kamal Heib) [2006260] - RDMA/cma: Fix incorrect Packet Lifetime calculation (Kamal Heib) [2006260] - RDMA/cma: Protect RMW with qp_mutex (Kamal Heib) [2006260] - RDMA/cma: Remove unnecessary INIT->INIT transition (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant skb_put_zero (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copy in prepare_ack_packet (Kamal Heib) [2006260] - RDMA/rxe: Fix over copying in get_srq_wqe (Kamal Heib) [2006260] - RDMA/rxe: Fix extra copies in build_rdma_network_hdr (Kamal Heib) [2006260] - RDMA/rxe: Fix redundant call to ip_send_check (Kamal Heib) [2006260] - RDMA/rxe: Fix useless copy in send_atomic_ack (Kamal Heib) [2006260] - RDMA/core: Use flexible array for mad data (Kamal Heib) [2006260] - RDMA/rxe: Don't overwrite errno from ib_umem_get() (Kamal Heib) [2006260] - IB/core: Shuffle locks in ib_port_data to save memory (Kamal Heib) [2006260] - IB/core: Removed port validity check from ib_get_cached_subnet_prefix (Kamal Heib) [2006260] - RDMA: Fix kernel-doc warnings about wrong comment (Kamal Heib) [2006260] - RDMA/rxe: Disallow MR dereg and invalidate when bound (Kamal Heib) [2006260] - RDMA/rxe: Implement memory access through MWs (Kamal Heib) [2006260] - RDMA/rxe: Implement invalidate MW operations (Kamal Heib) [2006260] - RDMA/rxe: Add support for bind MW work requests (Kamal Heib) [2006260] - RDMA/rxe: Move local ops to subroutine (Kamal Heib) [2006260] - RDMA/rxe: Replace WR_REG_MASK by WR_LOCAL_OP_MASK (Kamal Heib) [2006260] - RDMA/rxe: Add ib_alloc_mw and ib_dealloc_mw verbs (Kamal Heib) [2006260] - RDMA/rxe: Enable MW object pool (Kamal Heib) [2006260] - RDMA/rxe: Return errors for add index and key (Kamal Heib) [2006260] - RDMA/rxe: Add bind MW fields to rxe_send_wr (Kamal Heib) [2006260] - RDMA/rxe: Fix qp reference counting for atomic ops (Kamal Heib) [2006260] - IB/cm: Remove dgid from the cm_id_priv av (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of ib_uverbs_device (Kamal Heib) [2006260] - RDMA/ipoib: Use refcount_t instead of atomic_t for reference counting (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_port (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of mcast_member (Kamal Heib) [2006260] - RDMA/core: Remove refcount from struct ib_mad_snoop_private (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwpm_admin_data (Kamal Heib) [2006260] - RDMA/core: Use refcount_t instead of atomic_t on refcount of iwcm_id_private (Kamal Heib) [2006260] - RDMA/rxe: Protext kernel index from user space (Kamal Heib) [2006260] - RDMA/rxe: Protect user space index loads/stores (Kamal Heib) [2006260] - RDMA/rxe: Add a type flag to rxe_queue structs (Kamal Heib) [2006260] - IB/cm: Protect cm_dev, cm_ports and mad_agent with kref and lock (Kamal Heib) [2006260] - IB/cm: Improve the calling of cm_init_av_for_lap and cm_init_av_by_path (Kamal Heib) [2006260] - IB/cm: Simplify ib_cancel_mad() and ib_modify_mad() calls (Kamal Heib) [2006260] - Revert "IB/cm: Mark stale CM id's whenever the mad agent was unregistered" (Kamal Heib) [2006260] - IB/cm: Tidy remaining cm_msg free paths (Kamal Heib) [2006260] - IB/cm: Call the correct message free functions in cm_send_handler() (Kamal Heib) [2006260] - IB/cm: Split cm_alloc_msg() (Kamal Heib) [2006260] - IB/cm: Pair cm_alloc_response_msg() with a cm_free_response_msg() (Kamal Heib) [2006260] - RDMA/core: Sanitize WQ state received from the userspace (Kamal Heib) [2006260] - RDMA/srp: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - RDMA/core: Use the DEVICE_ATTR_RO macro (Kamal Heib) [2006260] - IB/ipoib: Use DEVICE_ATTR_*() macros (Kamal Heib) [2006260] - IB/core: Only update PKEY and GID caches on respective events (Kamal Heib) [2006260] - RDMA/srp: Fix a recently introduced memory leak (Kamal Heib) [2006260] - RDMA/srp: Add more structure size checks (Kamal Heib) [2006260] - IB/hfi1: Move a function from a header file into a .c file (Kamal Heib) [2006260 1989164] - IB/hfi1: Remove the repeated declaration (Kamal Heib) [2006260 1989164] - IB/hfi1: Delete an unneeded bool conversion (Kamal Heib) [2006260 1989164] - RDMA: Remove unnecessary struct declaration (Kamal Heib) [2006260] - RDMA/core: Remove never used ib_modify_wq function call (Kamal Heib) [2006260] - IB/srpt: Remove redundant assignment to ret (Kamal Heib) [2006260] - RDMA/ucma: Cleanup to reduce duplicate code (Kamal Heib) [2006260] - RDMA/umem: batch page unpin in __ib_umem_release() (Kamal Heib) [2006259] - RDMA/rxe: Return CQE error if invalid lkey was supplied (Kamal Heib) [2006259] - RDMA/nldev: Add copy-on-fork attribute to get sys command (Kamal Heib) [2006259] - IB/hfi1: Remove redundant variable rcd (Kamal Heib) [2006259 1989164] - RDMA/nldev: Add QP numbers to SRQ information (Kamal Heib) [2006259] - RDMA/nldev: Return SRQ information (Kamal Heib) [2006259] - RDMA/restrack: Add support to get resource tracking for SRQ (Kamal Heib) [2006259] - RDMA/nldev: Return context information (Kamal Heib) [2006259] - RDMA/cma: Skip device which doesn't support CM (Kamal Heib) [2006259 1957239] - IB/ipoib: Remove unnecessary struct declaration (Kamal Heib) [2006259] - IB/ipoib: Improve latency in ipoib/cm connection formation (Kamal Heib) [2006259] - RDMA/ipoib: Print a message if only child interface is UP (Kamal Heib) [2006259] - RDMA/uverbs: Make UVERBS_OBJECT_METHODS to consider line number (Kamal Heib) [2006259] - IB/hfi1: Rework AIP and VNIC dummy netdev usage (Kamal Heib) [2006259 1989164] - IB/cma: Introduce rdma_set_min_rnr_timer() (Kamal Heib) [2006259] - RDMA/core: Correct format of block comments (Kamal Heib) [2006259] - RDMA/core: Correct format of braces (Kamal Heib) [2006259] - RDMA/core: Remove redundant spaces (Kamal Heib) [2006259] - RDMA/core: Add necessary spaces (Kamal Heib) [2006259] - RDMA/core: Remove the redundant return statements (Kamal Heib) [2006259] - RDMA/core: Print the function name by __func__ instead of an fixed string (Kamal Heib) [2006259] - RDMA/rxe: Fix missing acks from responder (Kamal Heib) [2006259] - RDMA/core: Make the wc status prompt message clearer (Kamal Heib) [2006259] - IB/hfi1: Remove indirect call to hfi1_ipoib_send_dma() (Kamal Heib) [2006259 1989164] - IB/hfi1: Use napi_schedule_irqoff() for tx napi (Kamal Heib) [2006259 1989164] - IB/hfi1: Correct oversized ring allocation (Kamal Heib) [2006259 1989164] - IB/{ipoib,hfi1}: Add a timeout handler for rdma_netdev (Kamal Heib) [2006259 1989164] - IB/hfi1: Add AIP tx traces (Kamal Heib) [2006259 1989164] - RDMA/uverbs: Fix -Wunused-function warning (Kamal Heib) [2006259] - RDMA/iser: struct iscsi_iser_task is declared twice (Kamal Heib) [2006259] - RDMA/rxe: Split MEM into MR and MW (Kamal Heib) [2006259] - RDMA/efa: Use strscpy instead of strlcpy (Kamal Heib) [2006259] - RDMA: Fix a typo (Kamal Heib) [2006259] - IB/hfi1: Fix a typo (Kamal Heib) [2006259 1989164] - RDMA/core: Correct misspellings of two words in comments (Kamal Heib) [2006259] - RDMA/uverbs: Refactor rdma_counter_set_auto_mode and __counter_set_mode (Kamal Heib) [2006259] - RDMA: Support more than 255 rdma ports (Kamal Heib) [2006259 1957239] - RDMA/include: Mundane typo fixes throughout the file (Kamal Heib) [2006259] - RDMA/cma: Remove unused leftovers in cma code (Kamal Heib) [2006259] - RDMA: Fix kernel-doc compilation warnings (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_virtchnl: Fix a bunch of kernel-doc issues (Kamal Heib) [2006259] - RDMA/hw/i40iw/i40iw_utils: Fix some misspellings and missing param descriptions (Kamal Heib) [2006259] - IB/core: Split uverbs_get_const/default to consider target type (Kamal Heib) [2006259] - IB/core: Drop WARN_ON() from ib_umem_find_best_pgsz() (Kamal Heib) [2006259] - RDMA/core: Remove unused req_ncomp_notif device operation (Kamal Heib) [2006259] - RDMA/iwcm: Allow AFONLY binding for IPv6 addresses (Kamal Heib) [2006259] - IB/hfi1: switch to core handling of rx/tx byte/packet counters (Kamal Heib) [2006259 1989164] - RDMA: Convert various random sprintf sysfs _show uses to sysfs_emit (Kamal Heib) [2006259] - RDMA: Manual changes for sysfs_emit and neatening (Kamal Heib) [2006259] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Kamal Heib) [2006259] - IB/hfi1: use new function dev_fetch_sw_netstats (Kamal Heib) [2006259 1989164] - RDMA/ipoib: Convert to use DEFINE_SEQ_ATTRIBUTE macro (Kamal Heib) [2006259] - include/linux/seq_file.h: introduce DEFINE_SEQ_ATTRIBUTE() helper macro (Kamal Heib) [2006259] - ibmvnic: delay complete() (Diego Domingos) [2019210] - ibmvnic: Process crqs after enabling interrupts (Diego Domingos) [2019210] - Documentation: sysrq: update description about sysrq crash (Chris von Recklinghausen) [2019943] - sysrq: Use panic() to force a crash (Chris von Recklinghausen) [2019943] - ethtool: extend coalesce setting uAPI with CQE mode (Ivan Vecera) [2006829] - ethtool: add two coalesce attributes for CQE mode (Ivan Vecera) [2006829] - ice: Add support for VF rate limiting (Jonathan Toppins) [1973187] - net: Prevent infinite while loop in skb_tx_hash() (Paolo Abeni) [2018437] - napi: fix race inside napi_enable (Paolo Abeni) [2018437] - net/af_unix: fix a data-race in unix_dgram_poll (Paolo Abeni) [2018437] - devlink: Clear whole devlink_flash_notify struct (Paolo Abeni) [2018437] - net: linkwatch: fix failure to restore device state across suspend/resume (Paolo Abeni) [2018437] - gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check (Paolo Abeni) [2018437] - gro: ensure frag0 meets IP header alignment (Paolo Abeni) [2018437] - net: core: allow fast GRO for skbs with Ethernet header in head (Paolo Abeni) [2018437] - udp: fix skb_copy_and_csum_datagram with odd segment sizes (Paolo Abeni) [2018437] - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too (Paolo Abeni) [2018437] - selftests/net: remove min gso test in packet_snd (Paolo Abeni) [2018437] - net: be more gentle about silly gso requests coming from user (Paolo Abeni) [2018437] - virtio_net: Do not pull payload in skb->head (Paolo Abeni) [2018437] - net: check untrusted gso_size at kernel entry (Paolo Abeni) [2018437] - net: stricter validation of untrusted gso packets$ (Paolo Abeni) [2018437] - net: avoid 32 x truesize under-estimation for tiny skbs (Paolo Abeni) [2018437] - ionic: no devlink_unregister if not registered (Jonathan Toppins) [2016705] - ionic: tame the filter no space message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: allow adminq requests to override default error message (Jonathan Toppins) [2016705 1959512 2002943] - ionic: handle vlan id overflow (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter delete (Jonathan Toppins) [2016705 1959512 2002943] - ionic: generic filter add (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add generic filter search (Jonathan Toppins) [2016705 1959512 2002943] - ionic: remove mac overflow flags (Jonathan Toppins) [2016705 1959512 2002943] - ionic: move lif mac address functions (Jonathan Toppins) [2016705 1959512 2002943] - ionic: add filterlist to debugfs (Jonathan Toppins) [2016705 1959512 2002943] - ionic: don't remove netdev->dev_addr when syncing uc list (Jonathan Toppins) [2016705 2012030] - ionic: move filter sync_needed bit set (Jonathan Toppins) [2016705] - ionic: add lif param to ionic_qcq_disable (Jonathan Toppins) [2016705] - ionic: have ionic_qcq_disable decide on sending to hardware (Jonathan Toppins) [2016705] - ionic: add polling to adminq wait (Jonathan Toppins) [2016705] - ionic: widen queue_lock use around lif init and deinit (Jonathan Toppins) [2016705] - ionic: move lif mutex setup and delete (Jonathan Toppins) [2016705] - ionic: check for binary values in FW ver string (Jonathan Toppins) [2016705] - ionic: remove debug stats (Jonathan Toppins) [2016705] - ionic: fix gathering of debug stats (Jonathan Toppins) [2016705] - ionic: fix a sleeping in atomic bug (Jonathan Toppins) [2016705] - ionic: fix double use of queue-lock (Jonathan Toppins) [2016705] - ionic: recreate hwstamp queues on ifup (Jonathan Toppins) [2016705 1981590] - ionic: pull hwstamp queue_lock up a level (Jonathan Toppins) [2016705 1981590] - ionic: add queue lock around open and stop (Jonathan Toppins) [2016705 1981590] - ionic: fill mac addr earlier in add_addr (Jonathan Toppins) [2016705 1981590] - ionic: squelch unnecessary fw halted message (Jonathan Toppins) [2016705 1981590] - ionic: fire watchdog again after fw_down (Jonathan Toppins) [2016705 1981590] - ionic: handle mac filter overflow (Jonathan Toppins) [2016705 1981590] - ionic: refactor ionic_lif_addr to remove a layer (Jonathan Toppins) [2016705 1981590] - ionic: sync the filters in the work task (Jonathan Toppins) [2016705 1981590] - ionic: flatten calls to set-rx-mode (Jonathan Toppins) [2016705 1981590] - ionic: remove old work task types (Jonathan Toppins) [2016705 1981590] - ionic: add function tag to debug string (Jonathan Toppins) [2016705] - ionic: enable rxhash only with multiple queues (Jonathan Toppins) [2016705] - ionic: block some ethtool operations when fw in reset (Jonathan Toppins) [2016705] - ionic: remove unneeded comp union fields (Jonathan Toppins) [2016705] - ionic: increment num-vfs before configure (Jonathan Toppins) [2016705] - ionic: use fewer inits on the buf_info struct (Jonathan Toppins) [2016705] - ionic: init reconfig err to 0 (Jonathan Toppins) [2016705] - ionic: print firmware version on identify (Jonathan Toppins) [2016705] - ionic: monitor fw status generation (Jonathan Toppins) [2016705] - ionic: minimize resources when under kdump (Jonathan Toppins) [2016705] - ionic: cleanly release devlink instance (Jonathan Toppins) [2016705] - ionic: drop useless check of PCI driver data validity (Jonathan Toppins) [2016705] - ionic: Remove unused function pointer typedef ionic_reset_cb (Jonathan Toppins) [2016705] - ACPI: Use fwnode_init() to set up fwnode (Mark Langsdorf) [1982374] - device property: Add missed header in fwnode.h (Mark Langsdorf) [1982374] - regmap: set debugfs_name to NULL after it is freed (Mark Langsdorf) [1982374] - mfd: cpcap: Fix interrupt regression with regmap clear_ack (Mark Langsdorf) [1982374] - driver core: Fix device link device name collision (Mark Langsdorf) [1982374] - driver core: Extend device_is_dependent() (Mark Langsdorf) [1982374] - device property: add description of fwnode cases (Mark Langsdorf) [1982374] - Revert "device property: Keep secondary firmware node secondary by type" (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init() (Mark Langsdorf) [1982374] - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev (Mark Langsdorf) [1982374] - driver core: platform: Add extra error check in devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - driver core: platform: don't oops in platform_shutdown() on unbound devices (Mark Langsdorf) [1982374] - PM: domains: create debugfs nodes when adding power domains (Mark Langsdorf) [1982374] - driver core: platform: Add devm_platform_get_irqs_affinity() (Mark Langsdorf) [1982374] - platform-msi: Track shared domain allocation (Mark Langsdorf) [1982374] - driver core: platform: Introduce platform_get_mem_or_io() (Mark Langsdorf) [1982374] - soc: fix comment for freeing soc_dev_attr (Mark Langsdorf) [1982374] - driver core: platform: use bus_type functions (Mark Langsdorf) [1982374] - driver core: platform: change logic implementing platform_driver_probe (Mark Langsdorf) [1982374] - driver core: platform: reorder functions (Mark Langsdorf) [1982374] - driver core: make driver_probe_device() static (Mark Langsdorf) [1982374] - driver core: Fix a couple of typos (Mark Langsdorf) [1982374] - driver core: Refactor fw_devlink feature (Mark Langsdorf) [1982374] - efi: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - of: property: Update implementation of add_links() to create fwnode links (Mark Langsdorf) [1982374] - driver core: Use device's fwnode to check if it is waiting for suppliers (Mark Langsdorf) [1982374] - driver core: Add fw_devlink_parse_fwtree() (Mark Langsdorf) [1982374] - driver core: Redefine the meaning of fwnode_operations.add_links() (Mark Langsdorf) [1982374] - device property: Add fwnode_is_ancestor_of() and fwnode_get_next_parent_dev() (Mark Langsdorf) [1982374] - driver core: Allow only unprobed consumers for SYNC_STATE_ONLY device links (Mark Langsdorf) [1982374] - driver core: Add fwnode link support (Mark Langsdorf) [1982374] - driver core: Add fwnode_init() (Mark Langsdorf) [1982374] - Revert "[base] driver core: fw_devlink: Add support for batching fwnode parsing" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Remove check in driver_deferred_probe_force_trigger()" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Don't do deferred probe in parallel with kernel_init thread" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Rename dev_links_info.defer_sync to defer_hook" (Mark Langsdorf) [1982374] - Revert "[base] driver core: Avoid deferred probe due to fw_devlink_pause/resume()" (Mark Langsdorf) [1982374] - regmap: Remove duplicate `type` field from regmap `regcache_sync` trace event (Mark Langsdorf) [1982374] - PM: sleep: Add dev_wakeup_path() helper (Mark Langsdorf) [1982374] - regmap: Fix order of regmap write log (Mark Langsdorf) [1982374] - regmap: use less #ifdef for LOG_DEVICE (Mark Langsdorf) [1982374] - PM: domains: Enable dev_pm_genpd_suspend|resume() for suspend-to-idle (Mark Langsdorf) [1982374] - PM: domains: Rename pm_genpd_syscore_poweroff|poweron() (Mark Langsdorf) [1982374] - PM: sleep: Print driver flags for all devices during suspend/resume (Mark Langsdorf) [1982374] - driver core: Fix lockdep warning on wfs_lock (Mark Langsdorf) [1982374] - regmap: irq: Convert to use irq_domain_create_legacy() (Mark Langsdorf) [1982374] - irqdomain: Introduce irq_domain_create_legacy() API (Mark Langsdorf) [1982374] - irqdomain: Replace open coded of_node_to_fwnode() (Mark Langsdorf) [1982374] - irqdomain: Add forward declaration of fwnode_handle (Mark Langsdorf) [1982374] - irqdomain: Remove unused of_device_id forward declaration (Mark Langsdorf) [1982374] - regmap-irq: use fwnode instead of device node in add_irq_chip() (Mark Langsdorf) [1982374] - regmap: mmio: add config option to allow relaxed MMIO accesses (Mark Langsdorf) [1982374] - PM: sleep: remove unreachable break (Mark Langsdorf) [1982374] - PM: domains: enable domain idle state accounting (Mark Langsdorf) [1982374] - PM: domains: Add curly braces to delimit comment + statement block (Mark Langsdorf) [1982374] - PM: domains: Add support for PM domain on/off notifiers for genpd (Mark Langsdorf) [1982374] - PM / Domains: Simplify genpd_lookup_dev() (Mark Langsdorf) [1982374] - regmap: irq: Add support to clear ack registers (Mark Langsdorf) [1982374] - PM: domains: Allow to abort power off when no ->power_off() callback (Mark Langsdorf) [1982374] - PM: domains: Rename power state enums for genpd (Mark Langsdorf) [1982374] - regmap: debugfs: use semicolons rather than commas to separate statements (Mark Langsdorf) [1982374] - drivers core: node: Use a more typical macro definition style for ACCESS_ATTR (Mark Langsdorf) [1982374] - drivers core: Use sysfs_emit for shared_cpu_map_show and shared_cpu_list_show (Mark Langsdorf) [1982374] - efi: Rename arm-init to efi-init common for all arch (Mark Langsdorf) [1982374] - efi/arm: Defer probe of PCIe backed efifb on DT systems (Mark Langsdorf) [1982374] - net/smc: improved fix wait on already cleared link (Sumanth Korikkar) [1984991] - net/smc: fix 'workqueue leaked lock' in smc_conn_abort_work (Sumanth Korikkar) [1984991] - net/smc: add missing error check in smc_clc_prfx_set() (Sumanth Korikkar) [1984991] - net/smc: Correct smc link connection counter in case of smc client (Sumanth Korikkar) [1984991] - net/smc: fix wait on already cleared link (Sumanth Korikkar) [1984991] - KVM: s390: Fix handle_sske page fault handling (Thomas Huth) [2022731] - KVM: s390: Simplify SIGP Set Arch handling (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls when making pages secure (Thomas Huth) [2022731] - KVM: s390: pv: avoid stalls for kvm_s390_pv_init_vm (Thomas Huth) [2022731] - KVM: s390: pv: avoid double free of sida page (Thomas Huth) [2022731] - KVM: s390: pv: add macros for UVC CC values (Thomas Huth) [2022731] - s390/uv: fully validate the VMA before calling follow_page() (Thomas Huth) [2022731] - s390/gmap: don't unconditionally call pte_unmap_unlock() in __gmap_zap() (Thomas Huth) [2022731] - s390/gmap: validate VMA in __gmap_zap() (Thomas Huth) [2022731] - KVM: s390: preserve deliverable_mask in __airqs_kick_single_vcpu (Thomas Huth) [2022731] - KVM: s390: clear kicked_mask before sleeping again (Thomas Huth) [2022731] - KVM: s390: Function documentation fixes (Thomas Huth) [2022731] - s390/mm: fix kernel doc comments (Thomas Huth) [2022731] - KVM: s390: index kvm->arch.idle_mask by vcpu_idx (Thomas Huth) [2022731] - KVM: s390: generate kvm hypercall functions (Thomas Huth) [2022731] - KVM: Rename lru_slot to last_used_slot (Thomas Huth) [2022731] - s390: mm: Fix secure storage access exception handling (Thomas Huth) [2022731] - virtio/s390: get rid of open-coded kvm hypercall (Thomas Huth) [2022731] - KVM: s390: get rid of register asm usage (Thomas Huth) [2022731] - powerpc/vas: Fix potential NULL pointer dereference (Steve Best) [1907522] - powerpc/pseries/vas: Declare pseries_vas_fault_thread_fn() as static (Steve Best) [1907522] - crypto/nx: Register and unregister VAS interface on PowerVM (Steve Best) [1907522] - crypto/nx: Add sysfs interface to export NX capabilities (Steve Best) [1907522] - crypto/nx: Get NX capabilities for GZIP coprocessor type (Steve Best) [1907522] - crypto/nx: Rename nx-842-pseries file name to nx-common-pseries (Steve Best) [1907522] - powerpc/pseries/vas: Setup IRQ and fault handling (Steve Best) [1907522] - powerpc/pseries/vas: Integrate API with open/close windows (Steve Best) [1907522] - powerpc/pseries/vas: Implement getting capabilities from hypervisor (Steve Best) [1907522] - powerpc/pseries/vas: Add hcall wrappers for VAS handling (Steve Best) [1907522] - powerpc/vas: Define QoS credit flag to allocate window (Steve Best) [1907522] - powerpc/pseries/vas: Define VAS/NXGZIP hcalls and structs (Steve Best) [1907522] - powerpc/vas: Define and use common vas_window struct (Steve Best) [1907522] - powerpc/powernv: no need to check return value of debugfs_create functions (Steve Best) [1907522] - powerpc/vas: Move update_csb/dump_crb to common book3s platform (Steve Best) [1907522] - powerpc/vas: Create take/drop pid and mm reference functions (Steve Best) [1907522] - powerpc/vas: Add platform specific user window operations (Steve Best) [1907522] - powerpc/powernv/vas: Rename register/unregister functions (Steve Best) [1907522] - powerpc/vas: Move VAS API to book3s common platform (Steve Best) [1907522] - powerpc/powernv/vas: Release reference to tgid during window close (Steve Best) [1907522] - powerpc/pseries: Prevent free CPU ids being reused on another node (Desnes A. Nunes do Rosario) [2004808] - powerpc/numa: Consider the max NUMA node for migratable LPAR (Desnes A. Nunes do Rosario) [2004808]- zram: replace fsync_bdev with sync_blockdev (Ming Lei) [2015755] - zram: avoid race between zram_remove and disksize_store (Ming Lei) [2015755] - zram: don't fail to remove zram during unloading module (Ming Lei) [2015755] - zram: fix race between zram_reset_device() and disksize_store() (Ming Lei) [2015755] - zram: register default groups with device_add_disk() (Ming Lei) [2015755] - hyperv/vmbus: include linux/bitops.h (Mohammed Gamal) [2008565] - hv: vmbus: Avoid -Werror=maybe-uninitialized error (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix kernel crash upon unbinding a device from uio_hv_generic driver (Mohammed Gamal) [2008565] - Drivers: hv: vmbus: Fix duplicate CPU assignments within a device (Mohammed Gamal) [2008565] - drivers: hv: Fix missing error code in vmbus_connect() (Mohammed Gamal) [2008565] - hv_utils: Fix passing zero to 'PTR_ERR' warning (Mohammed Gamal) [2008565] - ice: Fix VF true promiscuous mode (Jonathan Toppins) [1970643] - ice: Remove toggling of antispoof for VF trusted promiscuous mode (Jonathan Toppins) [1970643] - ice: Fix replacing VF hardware MAC to existing MAC filter (Jonathan Toppins) [1970643] - ice: Fix not stopping Tx queues for VFs (Jonathan Toppins) [1970643] - ice: Fix race conditions between virtchnl handling and VF ndo ops (Jonathan Toppins) [1970643] - ice: move ice_container_type onto ice_ring_container (Jonathan Toppins) [1970643] - ice: remove ring_active from ice_ring (Jonathan Toppins) [1970643] - ice: Print the api_patch as part of the fw.mgmt.api (Jonathan Toppins) [1970643] - ice: Avoid crash from unnecessary IDA free (Jonathan Toppins) [1970643] - ice: Fix failure to re-add LAN/RDMA Tx queues (Jonathan Toppins) [1970643] - ice: Add missing E810 device ids (Jonathan Toppins) [1970643] - ice: fix locking for Tx timestamp tracking flush (Jonathan Toppins) [1970643] - ice: Delete always true check of PF pointer (Jonathan Toppins) [1970643] - ice: Correctly deal with PFs that do not support RDMA (Jonathan Toppins) [1970643] - ice: add lock around Tx timestamp tracker flush (Jonathan Toppins) [1970643] - ice: remove dead code for allocating pin_config (Jonathan Toppins) [1970643] - ice: do not abort devlink info if board identifier can't be found (Jonathan Toppins) [1970643] - ice: Fix a memory leak in an error handling path in 'ice_pf_dcb_cfg()' (Jonathan Toppins) [1970643] - ice: remove unnecessary VSI assignment (Jonathan Toppins) [1970643] - ice: remove the VSI info from previous agg (Jonathan Toppins) [1970643] - ice: add tracepoints (Jonathan Toppins) [1970643] - ice: report hash type such as L2/L3/L4 (Jonathan Toppins) [1970643] - ice: remove redundant continue statement in a for-loop (Jonathan Toppins) [1970643] - net: ice: ptp: fix compilation warning if PTP_1588_CLOCK is disabled (Jonathan Toppins) [1970643] - ice: remove unnecessary NULL checks before ptp_read_system_* (Jonathan Toppins) [1970643] - ice: Remove the repeated declaration (Jonathan Toppins) [1970643] - ice: remove local variable (Jonathan Toppins) [1970643] - ice: reduce scope of variables (Jonathan Toppins) [1970643] - ice: mark PTYPE 2 as reserved (Jonathan Toppins) [1970643] - ice: fix incorrect payload indicator on PTYPE (Jonathan Toppins) [1970643] - ice: parameterize functions responsible for Tx ring management (Jonathan Toppins) [1970643] - ice: add ndo_bpf callback for safe mode netdev ops (Jonathan Toppins) [1970643] - ice: fix clang warning regarding deadcode.DeadStores (Jonathan Toppins) [1970643] - ice: downgrade error print to debug print (Jonathan Toppins) [1970643] - ice: Detect and report unsupported module power levels (Jonathan Toppins) [1970643] - ice: (re)initialize NVM fields when rebuilding (Jonathan Toppins) [1970643] - ice: wait for reset before reporting devlink info (Jonathan Toppins) [1970643] - ice: add error message when pldmfw_flash_image fails (Jonathan Toppins) [1970643] - ice: add extack when unable to read device caps (Jonathan Toppins) [1970643] - ice: use static inline for dummy functions (Jonathan Toppins) [1970643] - ice: Re-organizes reqstd/avail {R, T}XQ check/code for efficiency (Jonathan Toppins) [1970643] - ice: set the value of global config lock timeout longer (Jonathan Toppins) [1970643] - ice: Refactor VIRTCHNL_OP_CONFIG_VSI_QUEUES handling (Jonathan Toppins) [1970643] - ice: Refactor ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: Save VF's MAC across reboot (Jonathan Toppins) [1970643] - ice: Manage VF's MAC address for both legacy and new cases (Jonathan Toppins) [1970643] - ice: Register auxiliary device to provide RDMA (Jonathan Toppins) [1970643] - ice: Implement iidc operations (Jonathan Toppins) [1970643] - virtchnl: Use pad byte in virtchnl_ether_addr to specify MAC type (Jonathan Toppins) [1970643] - iidc: Introduce iidc.h (Jonathan Toppins) [1970643] - ice: Initialize RDMA support (Jonathan Toppins) [1970643] - ice: Respond to a NETDEV_UNREGISTER event for LAG (Jonathan Toppins) [1970643] - Revert "Revert "ice: Add initial support framework for LAG"" (Jonathan Toppins) [1970643] - ice: reduce scope of variable (Jonathan Toppins) [1970643] - ice: remove return variable (Jonathan Toppins) [1970643] - ice: suppress false cppcheck issues (Jonathan Toppins) [1970643] - ice: Set vsi->vf_id as ICE_INVAL_VFID for non VF VSI types (Jonathan Toppins) [1970643] - ice: remove unused struct member (Jonathan Toppins) [1970643] - ice: use local for consistency (Jonathan Toppins) [1970643] - ice: print name in /proc/iomem (Jonathan Toppins) [1970643] - ice: Reimplement module reads used by ethtool (Jonathan Toppins) [1970643] - ice: refactor ITR data structures (Jonathan Toppins) [1970643] - ice: manage interrupts during poll exit (Jonathan Toppins) [1970643] - ice: replace custom AIM algorithm with kernel's DIM library (Jonathan Toppins) [1970643] - ice: refactor interrupt moderation writes (Jonathan Toppins) [1970643] - ice: Add new VSI states to track netdev alloc/registration (Jonathan Toppins) [1970643] - ice: Drop leading underscores in enum ice_pf_state (Jonathan Toppins) [1970643] - ice: use kernel definitions for IANA protocol ports and ether-types (Jonathan Toppins) [1970643] - ice: Remove unnecessary blank line (Jonathan Toppins) [1970643] - ice: Remove unnecessary checks in add/kill_vid ndo ops (Jonathan Toppins) [1970643] - ice: Remove rx_gro_dropped stat (Jonathan Toppins) [1970643] - ice: Use local variable instead of pointer derefs (Jonathan Toppins) [1970643] - ice: Remove unnecessary variable (Jonathan Toppins) [1970643] - ice: Limit forced overrides based on FW version (Jonathan Toppins) [1970643] - ice: Use default configuration mode for PHY configuration (Jonathan Toppins) [1970643] - ice: Replace some memsets and memcpys with assignment (Jonathan Toppins) [1970643] - ice: Fix error return codes in ice_set_link_ksettings (Jonathan Toppins) [1970643] - ice: Rename a couple of variables (Jonathan Toppins) [1970643] - ice: Remove unnecessary checker loop (Jonathan Toppins) [1970643] - ice: Ignore EMODE return for opcode 0x0605 (Jonathan Toppins) [1970643] - ice: Align macro names to the specification (Jonathan Toppins) [1970643] - ice: Modify recursive way of adding nodes (Jonathan Toppins) [1970643] - ice: Re-send some AQ commands, as result of EBUSY AQ error (Jonathan Toppins) [1970643] - ice: Correct comment block style (Jonathan Toppins) [1970643] - ice: cleanup style issues (Jonathan Toppins) [1970643] - ice: rename ptype bitmap (Jonathan Toppins) [1970643] - ice: correct memory allocation call (Jonathan Toppins) [1970643] - ice: Check for bail out condition early (Jonathan Toppins) [1970643] - ice: remove unnecessary duplicated AQ command flag setting (Jonathan Toppins) [1970643] - ice: change link misconfiguration message (Jonathan Toppins) [1970643] - ice: Update to use package info from ice segment (Jonathan Toppins) [1970643] - ice: Delay netdev registration (Jonathan Toppins) [1970643] - ice: Add Support for XPS (Jonathan Toppins) [1970643] - ice: Fix fall-through warnings for Clang (Jonathan Toppins) [1970643] - ice: Fix prototype warnings (Jonathan Toppins) [1970643] - ice: move headroom initialization to ice_setup_rx_ctx (Jonathan Toppins) [1970643] - ice: store the result of ice_rx_offset() onto ice_ring (Jonathan Toppins) [1970643] - sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain() (Phil Auld) [2011436] - sched/fair: Prevent dead task groups from regaining cfs_rq's (Phil Auld) [2011436] - sched/fair: Removed useless update of p->recent_used_cpu (Phil Auld) [2011436] - sched: Always inline is_percpu_thread() (Phil Auld) [2011436] - sched/fair: Add ancestors of unthrottled undecayed cfs_rq (Phil Auld) [2011436] - sched: Remove unused inline function __rq_clock_broken() (Phil Auld) [2011436] - sched: Prevent balance_push() on remote runqueues (Phil Auld) [2011436] - cpumask/hotplug: Fix cpu_dying() state tracking (Phil Auld) [2011436] - sched: Use cpu_dying() to fix balance_push vs hotplug-rollback (Phil Auld) [2011436] - cpumask: Introduce DYING mask (Phil Auld) [2011436] - cpumask: Make cpu_{online,possible,present,active}() inline (Phil Auld) [2011436] - cpu/hotplug: Cache number of online CPUs (Phil Auld) [2011436] - sched: Switch wait_task_inactive to HRTIMER_MODE_REL_HARD (Phil Auld) [2011436] - psi: Fix race between psi_trigger_create/destroy (Phil Auld) [2011436] - sctp: add vtag check in sctp_sf_ootb (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (Xin Long) [2001767] - sctp: add vtag check in sctp_sf_violation (Xin Long) [2001767] - sctp: fix the processing for COOKIE_ECHO chunk (Xin Long) [2001767] - sctp: fix the processing for INIT_ACK chunk (Xin Long) [2001767] - sctp: fix the processing for INIT chunk (Xin Long) [2001767] - sctp: use init_tag from inithdr for ABORT chunk (Xin Long) [2001767]- KVM: arm64: Extract ESR_ELx.EC only (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Align emulated cpuif LPI state machine with the pseudocode (Gavin Shan) [2008070] - KVM: arm64: vgic-v3: Don't advertise ICC_CTLR_EL1.SEIS (Gavin Shan) [2008070] - KVM: arm64: Fix reporting of endianess when the access originates at EL0 (Gavin Shan) [2008070] - KVM: arm64: Trim guest debug exception handling (Gavin Shan) [2008070] - KVM: arm64: Upgrade VMID accesses to {READ,WRITE}_ONCE (Gavin Shan) [2008070] - KVM: arm64: vgic: Drop WARN from vgic_get_irq (Gavin Shan) [2008070] - KVM: arm64: Enforce reserved bits for PSCI target affinities (Gavin Shan) [2008070] - KVM: arm64: Handle PSCI resets before userspace touches vCPU state (Gavin Shan) [2008070] - KVM: arm64: Fix read-side race on updates to vcpu reset state (Gavin Shan) [2008070] - KVM: arm64: Restore PMU configuration on first run (Gavin Shan) [2008070] - KVM: arm64: Don't zero the cycle count register when PMCR_EL0.P is set (Gavin Shan) [2008070] - KVM: arm64: Prevent mixed-width VM creation (Gavin Shan) [2008070] - KVM: arm64: Fix debug register indexing (Gavin Shan) [2008070] - KVM: arm64: Reject VM creation when the default IPA size is unsupported (Gavin Shan) [2008070] - KVM: arm64: Limit the debug architecture to ARMv8.0 (Gavin Shan) [2008070] - KVM: arm64: Handle SCXTNUM_ELx traps (Gavin Shan) [2008070] - arm64: kvm: mte: Hide the MTE CPUID information from the guests (Gavin Shan) [2008070] - arm64: mte: Fix typo in macro definition (Gavin Shan) [2008070] - arm64/cpufeature: Add remaining feature bits in ID_AA64PFR1 register (Gavin Shan) [2008070] - arm64: mte: system register definitions (Gavin Shan) [2008070] - arm64: sysreg: Clean up instructions for modifying PSTATE fields (Gavin Shan) [2008070] - KVM: arm64: Only reschedule if MMU_NOTIFIER_RANGE_BLOCKABLE is not set (Gavin Shan) [2008070] - arm64: kvm: Fix IDMAP overlap with HYP VA (Gavin Shan) [2008070] - packet: rework packet_pick_tx_queue() to use common code selection (Petr Oros) [2016477] - net: dev: rename queue selection helpers. (Petr Oros) [2016477] - Revert "cpuset: Make cpuset hotplug synchronous" (Waiman Long) [2023783] - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN (Paolo Abeni) [2018546] - net: Only allow init netns to set default tcp cong to a restricted algo (Paolo Abeni) [2018546] - ipv6: tcp: drop silly ICMPv6 packet too big messages (Paolo Abeni) [2018546] - tcp: annotate data races around tp->mtu_info (Paolo Abeni) [2018546] - net: send SYNACK packet with accepted fwmark (Paolo Abeni) [2018546] - tcp: call sk_wmem_schedule before sk_mem_charge in zerocopy path (Paolo Abeni) [2018546] - net/tcp_fastopen: fix data races around tfo_active_disable_stamp (Paolo Abeni) [2018546] - net/tcp_fastopen: remove obsolete extern (Paolo Abeni) [2018546] - net, gro: Set inner transport header offset in tcp/udp GRO hook (Paolo Abeni) [2018546] - tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B packets (Paolo Abeni) [2018546] - tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos (Paolo Abeni) [2018546] - tcp: fix tp->undo_retrans accounting in tcp_sacktag_one() (Paolo Abeni) [2018546] - evm: mark evm_fixmode as __ro_after_init (Bruno Meneguele) [2017155] - IMA: remove -Wmissing-prototypes warning (Bruno Meneguele) [2017155] - ima: Set correct casting types (Bruno Meneguele) [2017155] - evm: Don't return an error in evm_write_xattrs() if audit is not enabled (Bruno Meneguele) [2017155] - evm: fix writing /evm overflow (Bruno Meneguele) [2017155] - ima: Fix function name error in comment. (Bruno Meneguele) [2017155] - ima: Fix the error code for restoring the PCR value (Bruno Meneguele) [2017155] - integrity: double check iint_cache was initialized (Bruno Meneguele) [2017155] - certs: Fix blacklist flag type confusion (Bruno Meneguele) [2017155] - integrity: Make function integrity_add_key() static (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer after kexec syscall (Bruno Meneguele) [2017155] - ima: Free IMA measurement buffer on error (Bruno Meneguele) [2017155] - evm: Fix memleak in init_desc (Bruno Meneguele) [2017155] - crypto: shash - remove shash_desc::flags (Bruno Meneguele) [2017155] - ima: Don't modify file descriptor mode on the fly (Bruno Meneguele) [2017155] - evm: Check size of security.evm before using it (Bruno Meneguele) [2017155] - ima: Remove semicolon at the end of ima_get_binary_runtime_size() (Bruno Meneguele) [2017155] - ima: Don't ignore errors from crypto_shash_update() (Bruno Meneguele) [2017155] - integrity: remove redundant initialization of variable ret (Bruno Meneguele) [2017155] - ima: Fail rule parsing when appraise_flag=blacklist is unsupportable (Bruno Meneguele) [2017155] - ima: Fail rule parsing when the KEXEC_CMDLINE hook is combined with an invalid cond (Bruno Meneguele) [2017155] - ima: Fail rule parsing when buffer hook functions have an invalid action (Bruno Meneguele) [2017155] - ima: Free the entire rule if it fails to parse (Bruno Meneguele) [2017155] - ima: Free the entire rule when deleting a list of rules (Bruno Meneguele) [2017155] - evm: Fix possible memory leak in evm_calc_hmac_or_hash() (Bruno Meneguele) [2017155] - ima: Fix ima digest hash table key calculation (Bruno Meneguele) [2017155] - ima: Fix return value of ima_write_policy() (Bruno Meneguele) [2017155] - evm: Fix a small race in init_desc() (Bruno Meneguele) [2017155] - crypto: drop mask=CRYPTO_ALG_ASYNC from 'shash' tfm allocations (Bruno Meneguele) [2017155] - evm: Don't deadlock if a crypto algorithm is unavailable (Bruno Meneguele) [2017155] - evm: Check also if *tfm is an error pointer in init_desc() (Bruno Meneguele) [2017155] - ima: avoid appraise error for hash calc interrupt (Bruno Meneguele) [2017155] - integrity: remove pointless subdir-$(CONFIG_...) (Bruno Meneguele) [2017155] - integrity: remove unneeded, broken attempt to add -fshort-wchar (Bruno Meneguele) [2017155] - x86/cpu: Fix migration safety with X86_BUG_NULL_SEL (Vitaly Kuznetsov) [2016961] - fs/xfs: convert comma to semicolon (Bill O'Donnell) [2009521] - xfs: remove xfs_buf_t typedef (Bill O'Donnell) [2009521] - xfs: open code updating i_mode in xfs_set_acl (Bill O'Donnell) [2009521] - xfs: remove xfs_vn_setattr_nonsize (Bill O'Donnell) [2009521] - xfs: remove unneeded return value check for *init_cursor() (Bill O'Donnell) [2009521] - xfs: introduce xfs_validate_stripe_geometry() (Bill O'Donnell) [2009521] - xfs: show the proper user quota options (Bill O'Donnell) [2009521] - xfs: remove the unused XFS_B_FSB_OFFSET macro (Bill O'Donnell) [2009521] - xfs: remove unnecessary null check in xfs_generic_create (Bill O'Donnell) [2009521] - xfs: directly return if the delta equal to zero (Bill O'Donnell) [2009521] - xfs: delete duplicated tp->t_dqinfo null check and allocation (Bill O'Donnell) [2009521] - xfs: rename xfs_fc_* back to xfs_fs_* (Bill O'Donnell) [2009521] - xfs: refactor file range validation (Bill O'Donnell) [2009521] - xfs: refactor realtime volume extent validation (Bill O'Donnell) [2009521] - xfs: refactor data device extent validation (Bill O'Donnell) [2009521] - xfs: scrub should mark a directory corrupt if any entries cannot be iget'd (Bill O'Donnell) [2009521] - xfs: detect overflows in bmbt records (Bill O'Donnell) [2009521] - xfs: trace log intent item recovery failures (Bill O'Donnell) [2009521] - xfs: validate feature support when recovering rmap/refcount intents (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered extent-free intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered extent-free intent checks out of xfs_efi_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered refcount intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered refcount intent checks out of xfs_cui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered rmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered rmap intent checks out of xfs_rui_item_recover (Bill O'Donnell) [2009521] - xfs: improve the code that checks recovered bmap intent items (Bill O'Donnell) [2009521] - xfs: hoist recovered bmap intent checks out of xfs_bui_item_recover (Bill O'Donnell) [2009521] - xfs: move kernel-specific superblock validation out of libxfs (Bill O'Donnell) [2009521] - platform/x86: amd-pmc: Increase the response register timeout (David Arcari) [2005064] - ARM: 9093/1: drivers: firmwapsci: Register with kernel restart handler (Mark Salter) [1996748] - arm64/kernel: Remove needless Call Frame Information annotations (Mark Salter) [1996748] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Mark Salter) [1996748] - psci: Remove unneeded semicolon (Mark Salter) [1996748] - firmware: smccc: Add SMCCC TRNG function call IDs (Mark Salter) [1996748] - arm64: Add support for SMCCC TRNG entropy source (Mark Salter) [1996748] - firmware: smccc: Introduce SMCCC TRNG framework (Mark Salter) [1996748] - arm64: random: Remove no longer needed prototypes (Mark Salter) [1996748] - arm64: kaslr: Use standard early random function (Mark Salter) [1996748] - random: random.h should include archrandom.h, not the other way around (Mark Salter) [1996748] - arm64: add credited/trusted RNG support (Mark Salter) [1996748] - arm64: Use v8.5-RNG entropy for KASLR seed (Mark Salter) [1996748] - arm64: kaslr: Check command line before looking for a seed (Mark Salter) [1996748] - arm64: kaslr: Announce KASLR status on boot (Mark Salter) [1996748] - psci: Add accessor for psci_0_1_function_ids (Mark Salter) [1996748] - psci: Replace psci_function_id array with a struct (Mark Salter) [1996748] - psci: Split functions to v0.1 and v0.2+ variants (Mark Salter) [1996748] - psci: Support psci_ops.get_version for v0.1 (Mark Salter) [1996748] - arm64: psci: Avoid printing in cpu_psci_cpu_die() (Mark Salter) [1996748] - firmware: psci: Extend psci_set_osi_mode() to allow reset to PC mode (Mark Salter) [1996748] - smccc: Use separate variables for args and results (Mark Salter) [1996748] - smccc: Define vendor hyp owned service call region (Mark Salter) [1996748] - firmware: smccc: Export both smccc functions (Mark Salter) [1996748] - sched,psci: Convert to sched_set_fifo*() (Mark Salter) [1996748] - firmware: smccc: Add ARCH_SOC_ID support (Mark Salter) [1996748] - base: soc: Add serial_number attribute to soc (Mark Salter) [1996748] - drivers/firmware/psci: Assign @err directly in hotplug_tests() (Mark Salter) [1996748] - drivers/firmware/psci: Fix memory leakage in alloc_init_cpu_groups() (Mark Salter) [1996748] - firmware: smccc: Fix missing prototype warning for arm_smccc_version_init (Mark Salter) [1996748] - firmware: smccc: Add function to fetch SMCCC version (Mark Salter) [1996748] - firmware: smccc: Refactor SMCCC specific bits into separate file (Mark Salter) [1996748] - firmware: smccc: Drop smccc_version enum and use ARM_SMCCC_VERSION_1_x instead (Mark Salter) [1996748] - firmware: smccc: Add HAVE_ARM_SMCCC_DISCOVERY to identify SMCCC v1.1 and above (Mark Salter) [1996748] - firmware: psci: Replace cpu_up/down() with add/remove_cpu() (Mark Salter) [1996748] - firmware: psci: Export functions to manage the OSI mode (Mark Salter) [1996748] - arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill() (Mark Salter) [1996748] - firmware/psci: use common SMCCC_CONDUIT_* (Mark Salter) [1996748] - arm64: smp: disable hotplug on trusted OS resident CPU (Mark Salter) [1996748] - PSCI: cpuidle: Refactor CPU suspend power_state parameter handling (Mark Salter) [1996748] - ARM: psci: cpuidle: Enable PSCI CPUidle driver (Mark Salter) [1996748] - drivers: firmware: psci: Decouple checker from generic ARM CPUidle (Mark Salter) [1996748] - firmware/psci: psci_checker: Park kthreads before stopping them (Mark Salter) [1996748] - firmware/psci: add support for SYSTEM_RESET2 (Mark Salter) [1996748] - drivers: firmware: psci: Announce support for OS initiated suspend mode (Mark Salter) [1996748] - drivers: firmware: psci: Simplify error path of psci_dt_init() (Mark Salter) [1996748] - drivers: firmware: psci: Split psci_dt_cpu_init_idle() (Mark Salter) [1996748] - drivers: firmware: psci: Move psci to separate directory (Mark Salter) [1996748] - arm64: remove unused asm/compiler.h header file (Mark Salter) [1996748] - ppc64: Adding read_lock definition to nvme (Gopal Tiwari) [1990475] - nvme: fix per-namespace chardev deletion (Gopal Tiwari) [1990475] - nvme: set the PRACT bit when using Write Zeroes with T10 PI (Gopal Tiwari) [1990475] - nvme: fix nvme_setup_command metadata trace event (Gopal Tiwari) [1990475] - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING (Gopal Tiwari) [1990475] - nvme: fix refcounting imbalance when all paths are down (Gopal Tiwari) [1990475] - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove (Gopal Tiwari) [1990475] - nvme-pci: fix multiple races in nvme_setup_io_queues (Gopal Tiwari) [1990475] - nvme-tcp: use __dev_get_by_name instead dev_get_by_name for OPT_HOST_IFACE (Gopal Tiwari) [1990475] - nvme-tcp: can't set sk_user_data without write_lock (Gopal Tiwari) [1990475] - nvme: use blk_execute_rq() for passthrough commands (Gopal Tiwari) [1990475] - nvmet: use NVMET_MAX_NAMESPACES to set nn value (Gopal Tiwari) [1990475] - nvme-pci: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvme: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: add ZBD over ZNS backend support (Gopal Tiwari) [1990475] - nvmet: remove zeroout memset call for struct (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in file-ns fast path (Gopal Tiwari) [1990475] - nvmet: add Command Set Identifier support (Gopal Tiwari) [1990475] - nvmet: add nvmet_req_bio put helper for backends (Gopal Tiwari) [1990475] - nvmet: use nvme status value directly (Gopal Tiwari) [1990475] - nvmet: use u32 for nvmet_subsys max_nsid (Gopal Tiwari) [1990475] - nvmet: remove local variable (Gopal Tiwari) [1990475] - nvmet: add req cns error complete helper (Gopal Tiwari) [1990475] - nvmet: use req->cmd directly in bdev-ns fast path (Gopal Tiwari) [1990475] - nvmet: use u32 type for the local variable nsid (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect io q (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_write32() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in connect admin q (Gopal Tiwari) [1990475] - nvmet: make ver stable once connection established (Gopal Tiwari) [1990475] - nvmet: make sn stable once connection was established (Gopal Tiwari) [1990475] - nvmet: change sn size and check validity (Gopal Tiwari) [1990475] - nvme-tcp: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst() (Gopal Tiwari) [1990475] - nvme-fabrics: remove memset in nvmf_reg_read64() (Gopal Tiwari) [1990475] - nvmet: allow mn change if subsys not discovered (Gopal Tiwari) [1990475] - nvme-fc: use ctrl sgl check helper (Gopal Tiwari) [1990475] - nvme-pci: fix var. type for increasing cq_head (Gopal Tiwari) [1990475] - nvme: add a helper to check ctrl sgl support (Gopal Tiwari) [1990475] - nvme: factor out a nvme_validate_passthru_nsid helper (Gopal Tiwari) [1990475] - nvme-tcp: fix error codes in nvme_tcp_setup_ctrl() (Gopal Tiwari) [1990475] - nvme: fix grammar in the CONFIG_NVME_MULTIPATH kconfig help text (Gopal Tiwari) [1990475] - nvme: verify MNAN value if ANA is enabled (Gopal Tiwari) [1990475] - ACPI: Check StorageD3Enable _DSD property in ACPI code (Gopal Tiwari) [1990475] - nvmet: move ka_work initialization to nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvme: remove nvme_{get,put}_ns_from_disk (Gopal Tiwari) [1990475] - nvme: split nvme_report_zones (Gopal Tiwari) [1990475] - nvmet: remove a superfluous variable (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_chr_ioctl (Gopal Tiwari) [1990475] - nvme: move the CSI sanity check into nvme_ns_report_zones (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra braces (Gopal Tiwari) [1990475] - nvme: open code nvme_{get,put}_ns_from_disk in nvme_ns_head_ioctl (Gopal Tiwari) [1990475] - nvme: add a sparse annotation to nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme-fabrics: remove an extra comment (Gopal Tiwari) [1990475] - nvme-fabrics: remove extra new lines in the switch (Gopal Tiwari) [1990475] - nvme: open code nvme_put_ns_from_disk in nvme_ns_head_ctrl_ioctl (Gopal Tiwari) [1990475] - nvme: extend and modify the APST configuration algorithm (Gopal Tiwari) [1990475] - nvme-tcp: allow selecting the network interface for connections (Gopal Tiwari) [1990475] - nvme-fabrics: fix the kerneldco comment for nvmf_log_connect_error() (Gopal Tiwari) [1990475] - nvme: remove redundant initialization of variable ret (Gopal Tiwari) [1990475] - nvmet: fix freeing unallocated p2pmem (Gopal Tiwari) [1990475] - nvme-loop: reset queue count to 1 in nvme_loop_destroy_io_queues() (Gopal Tiwari) [1990475] - nvme-loop: do not warn for deleted controllers during reset (Gopal Tiwari) [1990475] - nvme-loop: check for NVME_LOOP_Q_LIVE in nvme_loop_destroy_admin_queue() (Gopal Tiwari) [1990475] - nvme-loop: clear NVME_LOOP_Q_LIVE when nvme_loop_configure_admin_queue() fails (Gopal Tiwari) [1990475] - nvme-rdma: fix in-casule data send for chained sgls (Gopal Tiwari) [1990475] - nvmet: fix false keep-alive timeout when a controller is torn down (Gopal Tiwari) [1990475] - nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response (Gopal Tiwari) [1990475] - nvme-tcp: remove incorrect Kconfig dep in BLK_DEV_NVME (Gopal Tiwari) [1990475] - nvme-fabrics: decode host pathing error for connect (Gopal Tiwari) [1990475] - nvme-fc: short-circuit reconnect retries (Gopal Tiwari) [1990475] - nvme: fix potential memory leaks in nvme_cdev_add (Gopal Tiwari) [1990475] - nvme-fc: clear q_live at beginning of association teardown (Gopal Tiwari) [1990475] - nvme-tcp: rerun io_work if req_list is not empty (Gopal Tiwari) [1990475] - nvme-tcp: fix possible use-after-completion (Gopal Tiwari) [1990475] - nvme-loop: fix memory leak in nvme_loop_create_ctrl() (Gopal Tiwari) [1990475] - nvmet: fix memory leak in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: seset ns->file when open fails (Gopal Tiwari) [1990475] - nvmet: demote fabrics cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for passthru (Gopal Tiwari) [1990475] - nvmet: fix inline bio check for bdev-ns (Gopal Tiwari) [1990475] - nvmet: use helper to remove the duplicate code (Gopal Tiwari) [1990475] - nvmet: demote discovery cmd parse err msg to debug (Gopal Tiwari) [1990475] - nvmet: remove unsupported command noise (Gopal Tiwari) [1990475] - nvme-pci: fix controller reset hang when racing with nvme_timeout (Gopal Tiwari) [1990475] - nvme: move the fabrics queue ready check routines to core (Gopal Tiwari) [1990475] - nvme: avoid memset for passthrough requests (Gopal Tiwari) [1990475] - nvme: add nvme_get_ns helper (Gopal Tiwari) [1990475] - nvme: fix controller ioctl through ns_head (Gopal Tiwari) [1990475] - nvme: introduce generic per-namespace chardev (Gopal Tiwari) [1990475] - nvme: cleanup nvme_configure_apst (Gopal Tiwari) [1990475] - nvme: do not try to reconfigure APST when the controller is not live (Gopal Tiwari) [1990475] - nvme: sanitize KATO setting (Gopal Tiwari) [1990475] - nvmet: avoid queuing keep-alive timer if it is disabled (Gopal Tiwari) [1990475] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1990475] - nvme: let namespace probing continue for unsupported features (Gopal Tiwari) [1990475] - nvme: factor out nvme_ns_open and nvme_ns_release helpers (Gopal Tiwari) [1990475] - nvme: move nvme_ns_head_ops to multipath.c (Gopal Tiwari) [1990475] - nvme: factor out a nvme_tryget_ns_head helper (Gopal Tiwari) [1990475] - nvme: move the ioctl code to a separate file (Gopal Tiwari) [1990475] - nvme: don't bother to look up a namespace for controller ioctls (Gopal Tiwari) [1990475] - nvme: simplify block device ioctl handling for the !multipath case (Gopal Tiwari) [1990475] - nvme: simplify the compat ioctl handling (Gopal Tiwari) [1990475] - nvme-multipath: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: pass a user pointer to nvme_nvm_ioctl (Gopal Tiwari) [1990475] - nvme: factor out a nvme_ns_ioctl helper (Gopal Tiwari) [1990475] - nvme: cleanup setting the disk name (Gopal Tiwari) [1990475] - nvme: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme-pci: remove single trailing whitespace (Gopal Tiwari) [1990475] - nvme: add a nvme_ns_head_multipath helper (Gopal Tiwari) [1990475] - nvmet: fix a spelling mistake "nubmer" -> "number" (Gopal Tiwari) [1990475] - nvmet-fc: simplify nvmet_fc_alloc_hostport (Gopal Tiwari) [1990475] - nvmet-tcp: fix a segmentation fault during io parsing error (Gopal Tiwari) [1990475] - lightnvm: use kobj_to_dev() (Gopal Tiwari) [1990475] - nvme: fix handling of large MDTS values (Gopal Tiwari) [1990475] - nvme: implement non-mdts command limits (Gopal Tiwari) [1990475] - nvme: disallow passthru cmd from targeting a nsid != nsid of the block dev (Gopal Tiwari) [1990475] - nvme: use sysfs_emit instead of sprintf (Gopal Tiwari) [1990475] - nvme-fc: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: remove superfluous else in nvme_ctrl_loss_tmo_store (Gopal Tiwari) [1990475] - nvme: warn of unhandled effects only once (Gopal Tiwari) [1990475] - nvmet-tcp: enable optional queue idle period tracking (Gopal Tiwari) [1990475] - nvmet-tcp: fix incorrect locking in state_change sk callback (Gopal Tiwari) [1990475] - nvme-tcp: block BH in sk state_change sk callback (Gopal Tiwari) [1990475] - nvmet: return proper error code from discovery ctrl (Gopal Tiwari) [1990475] - nvme-tcp: check sgl supported by target (Gopal Tiwari) [1990475] - nvme: use driver pdu command for passthrough (Gopal Tiwari) [1990475] - nvmet: remove unnecessary ctrl parameter (Gopal Tiwari) [1990475] - nvmet-fc: update function documentation (Gopal Tiwari) [1990475] - nvme-pci: allocate nvme_command within driver pdu (Gopal Tiwari) [1990475] - nvmet: do not allow model_number exceed 40 bytes (Gopal Tiwari) [1990475] - nvme-fc: fix the function documentation comment (Gopal Tiwari) [1990475] - nvme: add new line after variable declatation (Gopal Tiwari) [1990475] - nvme: don't check nvme_req flags for new req (Gopal Tiwari) [1990475] - nvme: mark nvme_setup_passsthru() inline (Gopal Tiwari) [1990475] - nvme: split init identify into helper (Gopal Tiwari) [1990475] - nvme: rename nvme_init_identify() (Gopal Tiwari) [1990475] - nvme: reduce checks for zero command effects (Gopal Tiwari) [1990475] - nvmet: update error log page in nvmet_alloc_ctrl() (Gopal Tiwari) [1990475] - nvmet: remove an unnecessary function parameter to nvmet_check_ctrl_status (Gopal Tiwari) [1990475] - nvmet: remove a duplicate status assignment in nvmet_alloc_ctrl (Gopal Tiwari) [1990475] - nvmet: replace white spaces with tabs (Gopal Tiwari) [1990475] - nvme: use NVME_CTRL_CMIC_ANA macro (Gopal Tiwari) [1990475] - nvme-pci: cleanup nvme_irq() (Gopal Tiwari) [1990475] - nvme-pci: remove the barriers in nvme_irq() (Gopal Tiwari) [1990475] - nvmet-tcp: fix kmap leak when data digest in use (Gopal Tiwari) [1990475] - nvmet: don't check iosqes,iocqes for discovery controllers (Gopal Tiwari) [1990475] - nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU (Gopal Tiwari) [1990475] - nvme-rdma: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-tcp: fix possible hang when failing to set io queues (Gopal Tiwari) [1990475] - nvme-fabrics: only reserve a single tag (Gopal Tiwari) [1990475] - nvme: allocate the keep alive request using BLK_MQ_REQ_NOWAIT (Gopal Tiwari) [1990475] - nvme: merge nvme_keep_alive into nvme_keep_alive_work (Gopal Tiwari) [1990475] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1990475] - nvme: update enumerations for status codes (Gopal Tiwari) [1990475]- scsi: mpt3sas: Fix incorrectly assigned error return and check (Tomas Henzl) [1990535] - scsi: mpt3sas: Introduce sas_ncq_prio_supported sysfs sttribute (Tomas Henzl) [1990535] - scsi: mpt3sas: Update driver version to 39.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Use firmware recommended queue depth (Tomas Henzl) [1990535] - scsi: mpt3sas: Bump driver version to 38.100.00.00 (Tomas Henzl) [1990535] - scsi: mpt3sas: Transition IOC to Ready state during shutdown (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix error return value in _scsih_expander_add() (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix Coverity reported issue (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix fall-through warnings for Clang (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during second half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Handle firmware faults during first half of IOC init (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix deadlock while cancelling the running firmware event (Tomas Henzl) [1990535] - scsi: mpt3sas: Documentation cleanup (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix two kernel-doc headers (Tomas Henzl) [1990535] - scsi: mpt3sas: Fix out-of-bounds warnings in _ctl_addnl_diag_query (Tomas Henzl) [1990535] - scsi: megaraid_sas: Driver version update to 07.719.03.00-rc1 (Tomas Henzl) [1989643] - scsi: megaraid_sas: Add helper functions for irq_context (Tomas Henzl) [1989643] - scsi: megaraid: Clean up some inconsistent indenting (Tomas Henzl) [1989643] - scsi: megaraid: Fix Coccinelle warning (Tomas Henzl) [1989643] - IB/cma: Do not send IGMP leaves for sendonly Multicast groups (Kamal Heib) [2007269] - hv_netvsc: Add comment of netvsc_xdp_xmit() (Mohammed Gamal) [2008560] - hv_netvsc: use netif_is_bond_master() instead of open code (Mohammed Gamal) [2008560] - hv_netvsc: Avoid field-overflowing memcpy() (Mohammed Gamal) [2008560] - hv_netvsc: Set needed_headroom according to VF (Mohammed Gamal) [2008560] - netfilter: conntrack: fix error path in nf_conntrack_pernet_init() (Florian Westphal) [1922568] - netfilter: nf_conntrack: provide modparam to always register conntrack hooks (Florian Westphal) [1922568] - sctp: return true only for pathmtu update in sctp_transport_pl_toobig (Xin Long) [1890383] - sctp: subtract sctphdr len in sctp_transport_pl_hlen (Xin Long) [1890383] - sctp: reset probe_timer in sctp_transport_pl_update (Xin Long) [1890383] - sctp: allow IP fragmentation when PLPMTUD enters Error state (Xin Long) [1890383] - sctp: send pmtu probe only if packet loss in Search Complete state (Xin Long) [1890383] - sctp: improve the code for pmtu probe send and recv update (Xin Long) [1890383] - sctp: prevent info leak in sctp_make_heartbeat() (Xin Long) [1890383] - sctp: check pl.raise_count separately from its increment (Xin Long) [1890383] - sctp: send the next probe immediately once the last one is acked (Xin Long) [1890383] - sctp: do black hole detection in search complete state (Xin Long) [1890383] - sctp: process sctp over udp icmp err on sctp side (Xin Long) [1890383] - sctp: extract sctp_v4_err_handle function from sctp_v4_err (Xin Long) [1890383] - sctp: extract sctp_v6_err_handle function from sctp_v6_err (Xin Long) [1890383] - sctp: remove the unessessary hold for idev in sctp_v6_err (Xin Long) [1890383] - sctp: enable PLPMTUD when the transport is ready (Xin Long) [1890383] - sctp: do state transition when receiving an icmp TOOBIG packet (Xin Long) [1890383] - sctp: do state transition when a probe succeeds on HB ACK recv path (Xin Long) [1890383] - sctp: do state transition when PROBE_COUNT == MAX_PROBES on HB send path (Xin Long) [1890383] - sctp: do the basic send and recv for PLPMTUD probe (Xin Long) [1890383] - sctp: add the probe timer in transport for PLPMTUD (Xin Long) [1890383] - sctp: add the constants/variables and states and some APIs for transport (Xin Long) [1890383] - sctp: add SCTP_PLPMTUD_PROBE_INTERVAL sockopt for sock/asoc/transport (Xin Long) [1890383] - sctp: add probe_interval in sysctl and sock/asoc/transport (Xin Long) [1890383] - sctp: add pad chunk and its make function and event table (Xin Long) [1890383] - blk-mq: still set q->make_request_fn for blk-mq (Ming Lei) [1999728] - PCI: Add AMD RS690 quirk to enable 64-bit DMA (Myron Stowe) [1993279] - PCI: Add ACS quirk for Broadcom BCM57414 NIC (Myron Stowe) [1993279] - PCI: Mark some NVIDIA GPUs to avoid bus reset (Myron Stowe) [1993279] - PCI: of: Clear 64-bit flag for non-prefetchable memory below 4GB (Myron Stowe) [1993279] - x86/PCI: Remove unused alloc_pci_root_info() return value (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P4510 NVMe (Myron Stowe) [1993279] - PCI: Delay after FLR of Intel DC P3700 NVMe (Myron Stowe) [1993279] - PCI: Disable Samsung SM961/PM961 NVMe before FLR (Myron Stowe) [1993279] - PCI/sysfs: Use sysfs_emit() and sysfs_emit_at() in "show" functions (Myron Stowe) [1993279] - PCI/sysfs: Rearrange smbios_attr_group and acpi_attr_group (Myron Stowe) [1993279] - PCI/sysfs: Tidy SMBIOS & ACPI label attributes (Myron Stowe) [1993279] - PCI/sysfs: Convert "index", "acpi_index", "label" to static attributes (Myron Stowe) [1993279] - PCI/sysfs: Define SMBIOS label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Define ACPI label attributes with DEVICE_ATTR*() (Myron Stowe) [1993279] - PCI/sysfs: Rename device_has_dsm() to device_has_acpi_name() (Myron Stowe) [1993279] - PCI/sysfs: Convert "vpd" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Rename "vpd" attribute accessors (Myron Stowe) [1993279] - PCI/sysfs: Convert "reset" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "rom" to static attribute (Myron Stowe) [1993279] - PCI/sysfs: Convert "config" to static attribute (Myron Stowe) [1993279] - PCI: Allow VPD access for QLogic ISP2722 (Myron Stowe) [1993279] - PCI/VPD: Add helper pci_get_func0_dev() (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() SRDT handling (Myron Stowe) [1993279] - PCI/VPD: Remove pci_vpd_find_tag() 'offset' argument (Myron Stowe) [1993279] - PCI/VPD: Change pci_vpd_init() return type to void (Myron Stowe) [1993279] - PCI/VPD: Make missing VPD message less alarming (Myron Stowe) [1993279] - PCI/VPD: Remove pci_set_vpd_size() (Myron Stowe) [1993279] - PCI/VPD: Remove sysfs accessor size checking dead code (Myron Stowe) [1993279] - PCI/VPD: Remove obsolete Broadcom NIC quirk (Myron Stowe) [1993279] - PCI/ACPI: Fix acpi_pci_set_power_state() debug message (Myron Stowe) [1993279] - PCI: acpiphp: Fix whitespace issue (Myron Stowe) [1993279] - PCI: shpchp: Remove unused shpc_writeb() (Myron Stowe) [1993279] - PCI: cpqphp: Use DEFINE_SPINLOCK() for int15_lock (Myron Stowe) [1993279] - ACPI / hotplug / PCI: Fix reference count leak in enable_slot() (Myron Stowe) [1993279] - PCI: Add pci_disable_parity() (Myron Stowe) [1993279] - PCI: Release OF node in pci_scan_device()'s error path (Myron Stowe) [1993279] - fs: dlm: fix check for multi-homed hosts (Alexander Aring) [1889887] - iommu: remove iommu_domain_{get,set}_attr (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: enable the liodn when attaching a device (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: replace DOMAIN_ATTR_FSL_PAMU_STASH with a direct call (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove ->domain_window_enable (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove support for multiple windows (Jerry Snitselaar) [2004349] - iommu/fsl_pamu: remove fsl_pamu_get_domain_attr (Jerry Snitselaar) [2004349] - iommu: remove the unused domain_window_disable method (Jerry Snitselaar) [2004349] - iommu: Remove .domain_{get,set}_windows (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Decrease the queue size of evtq and priq (Jerry Snitselaar) [2004349] - iommu/vt-d: Use pasid_pte_is_present() helper function (Jerry Snitselaar) [2004349] - iommu/vt-d: Update the virtual command related registers (Jerry Snitselaar) [2004349] - ACPI: IORT: Handle device properties with software node API (Jerry Snitselaar) [2004349] - iommu: Update "iommu.strict" documentation (Jerry Snitselaar) [2004349] - iommu/dma: Remove redundant "!dev" checks (Jerry Snitselaar) [2004349] - iommu/virtio: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/vt-d: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu/amd: Drop IOVA cookie management (Jerry Snitselaar) [2004349] - iommu: Pull IOVA cookie management into the core (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Stop pre-zeroing batch commands (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Extract reusable function __arm_smmu_cmdq_skip_err() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_get_cmdq() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove some unneeded init in arm_smmu_cmdq_issue_cmdlist() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add and use static helper function arm_smmu_cmdq_issue_cmd_with_sync() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use command queue batching helpers to improve performance (Jerry Snitselaar) [2004349] - iommu/amd: Use only natural aligned flushes in a VM (Jerry Snitselaar) [2004349] - iommu/amd: Sync once for scatter-gather operations (Jerry Snitselaar) [2004349] - iommu/amd: Tailored gather logic for AMD (Jerry Snitselaar) [2004349] - iommu: Factor iommu_iotlb_gather_is_disjoint() out (Jerry Snitselaar) [2004349] - iommu: Improve iommu_iotlb_gather helpers (Jerry Snitselaar) [2004349] - iommu/amd: Do not use flush-queue when NpCache is on (Jerry Snitselaar) [2004349] - iommu/amd: Selective flush on unmap (Jerry Snitselaar) [2004349] - iommu/amd: Convert from atomic_t to refcount_t on pasid_state->count (Jerry Snitselaar) [2004349] - iommu: Streamline iommu_iova_to_phys() (Jerry Snitselaar) [2004349] - iommu/vt-d: Allow devices to have more than 32 outstanding PRs (Jerry Snitselaar) [1920744] - iommu/vt-d: Drop "0x" prefix from PCI bus & device addresses (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix a deadlock in intel_svm_drain_prq() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID leak in intel_svm_unbind_mm() (Jerry Snitselaar) [2004349] - iommu/amd: Fix printing of IOMMU events when rate limiting kicks in (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix missing unlock on error in arm_smmu_device_group() (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix race condition during iommu_group creation (Jerry Snitselaar) [2004349] - iommu: Fix race condition during default domain allocation (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu-v3: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Move clflush'es from iotlb_sync_map() to map_pages() (Jerry Snitselaar) [1971977] - iommu/vt-d: Implement map/unmap_pages() iommu_ops callback (Jerry Snitselaar) [1971977] - iommu/vt-d: Report real pgsize bitmap to iommu core (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the map_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/arm-smmu: Implement the unmap_pages() IOMMU driver callback (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_map_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Implement arm_lpae_unmap_pages() (Jerry Snitselaar) [1971977] - iommu/io-pgtable-arm: Prepare PTE methods for handling multiple entries (Jerry Snitselaar) [1971977] - iommu: Add support for the map_pages() callback (Jerry Snitselaar) [1971977] - iommu: Hook up '->unmap_pages' driver callback (Jerry Snitselaar) [1971977] - iommu: Split 'addr_merge' argument to iommu_pgsize() into separate parts (Jerry Snitselaar) [1971977] - iommu: Use bitmap to calculate page size in iommu_pgsize() (Jerry Snitselaar) [1971977] - iommu: Add a map_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce map_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu: Add an unmap_pages() op for IOMMU drivers (Jerry Snitselaar) [1971977] - iommu/io-pgtable: Introduce unmap_pages() as a page table op (Jerry Snitselaar) [1971977] - iommu/vt-d: Fix incomplete cache flush in intel_pasid_tear_down_entry() (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix PASID reference leak (Jerry Snitselaar) [2004349] - iommu: Check if group is NULL before remove device (Jerry Snitselaar) [2004349] - iommu/dma: Fix leak in non-contiguous API (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Fix fall-through warning for Clang (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix clearing real DMA device's scalable-mode context entries (Jerry Snitselaar) [2004349] - iommu/vt-d: Global devTLB flush when present context entry changed (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Use Tegra implementation on Tegra186 (Jerry Snitselaar) [2004349] - iommu: Delete a duplicate check in iommu_change_dev_def_domain() (Jerry Snitselaar) [2004349] - iommu/dma: Fix compile warning in 32-bit builds (Jerry Snitselaar) [2004349] - iommu: Drop unnecessary of_iommu.h includes (Jerry Snitselaar) [2004349] - iommu: Remove unused of_get_dma_window() (Jerry Snitselaar) [2004349] - iommu/iova: Put free_iova_mem() outside of spinlock iova_rbtree_lock (Jerry Snitselaar) [2004349] - iommu/dma: Fix IOVA reserve dma ranges (Jerry Snitselaar) [2004349] - iommu/virtio: Enable x86 support (Jerry Snitselaar) [2004349] - iommu/dma: Pass address limit rather than size to iommu_setup_dma_ops() (Jerry Snitselaar) [2004349] - iommu/amd: Fix section mismatch warning for detect_ivrs() (Jerry Snitselaar) [2004349] - iommu/amd: Add amd_iommu=force_enable option (Jerry Snitselaar) [2004349] - iommu/amd: Fix extended features logging (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix dereference of pointer info before it is null checked (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix linker error on 32-bit (Jerry Snitselaar) [2004349] - iommu/vt-d: No need to typecast (Jerry Snitselaar) [2004349] - iommu/vt-d: Define counter explicitly as unsigned int (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove unnecessary braces (Jerry Snitselaar) [2004349] - iommu/vt-d: Removed unused iommu_count in dmar domain (Jerry Snitselaar) [2004349] - iommu/vt-d: Use bitfields for DMAR capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Use DEVICE_ATTR_RO macro (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix out-bounds-warning in intel/svm.c (Jerry Snitselaar) [2004349] - iommu/vt-d: Add PRQ handling latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Add cache invalidation latency sampling (Jerry Snitselaar) [1971935] - iommu/vt-d: Expose latency monitor data through debugfs (Jerry Snitselaar) [1971935] - iommu/vt-d: Add common code for dmar latency performance monitors (Jerry Snitselaar) [1971935] - iommu/vt-d: Add prq_report trace event (Jerry Snitselaar) [1971973] - iommu/vt-d: Report prq to io-pgfault framework (Jerry Snitselaar) [1971971] - iommu/vt-d: Allocate/register iopf queue for sva devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Refactor prq_event_thread() (Jerry Snitselaar) [1971971] - iommu/vt-d: Use common helper to lookup svm devices (Jerry Snitselaar) [1971971] - iommu/vt-d: Use iommu_sva_alloc(free)_pasid() helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Add pasid private data helpers (Jerry Snitselaar) [1971971] - iommu/vt-d: Support asynchronous IOMMU nested capabilities (Jerry Snitselaar) [2004349] - iommu/vt-d: Select PCI_ATS explicitly (Jerry Snitselaar) [2004349] - iommu/vt-d: Tweak the description of a DMA fault (Jerry Snitselaar) [1971975] - iommu/vt-d: Fix kernel-doc syntax in file header (Jerry Snitselaar) [2004349] - iommu/vt-d: Remove redundant assignment to variable agaw (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Check smmu->impl pointer before dereferencing (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Implement ->probe_finalize() (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Remove unnecessary oom message (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Fix arm_smmu_device refcount leak when arm_smmu_rpm_get fails (Jerry Snitselaar) [2004349] - PM: runtime: Add documentation for pm_runtime_resume_and_get() (Jerry Snitselaar) [2004349] - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter (Jerry Snitselaar) [2004349] - iommu/arm: Cleanup resources in case of probe error path (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Ratelimit event dump (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Add stall support for platform devices (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Change *array into *const array (Jerry Snitselaar) [2004349] - iommu/amd: Remove redundant assignment of err (Jerry Snitselaar) [2004349] - iommu/amd: Tidy up DMA ops init (Jerry Snitselaar) [2004349] - iommu/arm-smmu: Add support for driver IOMMU fault handlers (Jerry Snitselaar) [2004349] - iommu/virtio: Add missing MODULE_DEVICE_TABLE (Jerry Snitselaar) [2004349] - iommu/amd: Fix wrong parentheses on page-specific invalidations (Jerry Snitselaar) [2004349] - iommu: Streamline registration interface (Jerry Snitselaar) [2004349] - iommu: Statically set module owner (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_IO_PGTABLE_CFG (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE (Jerry Snitselaar) [2004349] - iommu: remove iommu_set_cmd_line_dma_api and iommu_cmd_line_dma_api (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_NESTING (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_GEOMETRY (Jerry Snitselaar) [2004349] - iommu: remove DOMAIN_ATTR_PAGING (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Maintain a SID->device structure (Jerry Snitselaar) [2004349] - iommu: Add a page fault handler (Jerry Snitselaar) [2004349] - iommu/vt-d: Support IOMMU_DEV_FEAT_IOPF (Jerry Snitselaar) [2004349] - iommu: Separate IOMMU_DEV_FEAT_IOPF from IOMMU_DEV_FEAT_SVA (Jerry Snitselaar) [2004349] - iommu/arm-smmu-v3: Use device properties for pasid-num-bits (Jerry Snitselaar) [2004349] - of/device: Add input id to of_dma_configure() (Jerry Snitselaar) [2004349] - of/iommu: Make of_map_rid() PCI agnostic (Jerry Snitselaar) [2004349] - iommu: Fix comment for struct iommu_fwspec (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of devid (Jerry Snitselaar) [2004349] - iommu/amd: Page-specific invalidations for more than one page (Jerry Snitselaar) [2004349] - iommu/amd: Move a few prototypes to include/linux/amd-iommu.h (Jerry Snitselaar) [2004349] - iommu/amd: Remove a few unused exports (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused amd_iommu_get_v2_domain function (Jerry Snitselaar) [2004349] - iommu/amd: Remove the unused device errata code (Jerry Snitselaar) [2004349] - iommu/amd: Remove duplicate check of pasids (Jerry Snitselaar) [2004349] - iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry() (Jerry Snitselaar) [2004349] - iommu/amd: Remove iommu_init_ga() (Jerry Snitselaar) [1998265] - iommu/amd: Relocate GAMSup check to early_enable_iommus (Jerry Snitselaar) [1998265] - x86/Kconfig: Do not enable AMD_MEM_ENCRYPT_ACTIVE_BY_DEFAULT automatically (Prarit Bhargava) [2021219] - hyper-v: Replace uuid.h with types.h (Mohammed Gamal) [2008563] - x86/hyperv: Avoid erroneously sending IPI to 'self' (Mohammed Gamal) [2008563] - asm-generic/hyperv: provide cpumask_to_vpset_noself (Mohammed Gamal) [2008563] - asm-generic/hyperv: Add missing function prototypes per -W1 warnings (Mohammed Gamal) [2008563] - hv: hyperv.h: Remove unused inline functions (Mohammed Gamal) [2008563] - hv: hyperv.h: a few mundane typo fixes (Mohammed Gamal) [2008563] - hv: hyperv.h: Replace one-element array with flexible-array in struct icmsg_negotiate (Mohammed Gamal) [2008563] - x86/hyperv: add comment describing TSC_INVARIANT_CONTROL MSR setting bit 0 (Mohammed Gamal) [2008563] - x86/hyperv: fix for unwanted manipulation of sched_clock when TSC marked unstable (Mohammed Gamal) [2008563] - hyperv: Detect Nested virtualization support for SVM (Mohammed Gamal) [2008563] - hyperv: SVM enlightened TLB flush support flag (Mohammed Gamal) [2008563] - x86/hyperv: remove on-stack cpumask from hv_send_ipi_mask_allbutself (Mohammed Gamal) [2008563] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [2008563] - x86/hyperv: remove unused linux/version.h header (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'hi' warning in hv_apic_read (Mohammed Gamal) [2008563] - x86/hyperv: Fix unused variable 'msr_val' warning in hv_qlock_wait (Mohammed Gamal) [2008563] - PCI: hv: Fix sleep while in non-sleep context when removing child devices from the bus (Mohammed Gamal) [2008562] - PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv() (Mohammed Gamal) [2008562] - PCI: hv: Drop msi_controller structure (Mohammed Gamal) [2008562] - PCI/IOV: Add sysfs MSI-X vector assignment interface (Myron Stowe) [2019087] - x86: ACPI: cstate: Optimize C3 entry on AMD CPUs (David Arcari) [1998529] - Bluetooth: Move shutdown callback before flushing tx and rx queue (Gopal Tiwari) [1990477] - Bluetooth: btusb: check conditions before enabling USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: Fix VIRTIO_ID_BT assigned number (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix wrong opcode in the response for add_adv cmd (Gopal Tiwari) [1990477] - Bluetooth: defer cleanup of resources in hci_unregister_dev() (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event (Gopal Tiwari) [1990477] - Bluetooth: Fix Set Extended (Scan Response) Data (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when filtering devices (Gopal Tiwari) [1990477] - Bluetooth: smp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI role comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language when tracking connections (Gopal Tiwari) [1990477] - Bluetooth: sco: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: a2mp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: amp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: cmtp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: bnep: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: hidp: Use the correct print format (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in comments (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in SMP (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language in HCI LE features (Gopal Tiwari) [1990477] - Bluetooth: use inclusive language to describe CPB (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid (Gopal Tiwari) [1990477] - Bluetooth: disable filter dup when scan for adv monitor (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Fix the command returns garbage parameter value (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use DEVICE_ATTR_RO macro (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn_comp (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access on ECRED Connection response (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix invalid access if ECRED Reconfigure fails (Gopal Tiwari) [1990477] - Bluetooth: Remove spurious error message (Gopal Tiwari) [1990477] - Bluetooth: Shutdown controller after workqueues are flushed or cancelled (Gopal Tiwari) [1990477] - Bluetooth: Add ncmd=0 recovery handling (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: remove unused function (Gopal Tiwari) [1990477] - Bluetooth: Fix alt settings for incoming SCO with transparent coding format (Gopal Tiwari) [1990477] - Bluetooth: Fix the HCI to MGMT status conversion table (Gopal Tiwari) [1990477] - Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails (Gopal Tiwari) [1990477] - Bluetooth: 6lowpan: delete unneeded variable initialization (Gopal Tiwari) [1990477] - Bluetooth: Return whether a connection is outbound (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix crash when receiving new connection when debug is enabled (Gopal Tiwari) [1990477] - Bluetooth: Fix spelling mistakes (Gopal Tiwari) [1990477] - Bluetooth: Set defaults for le_scan_{int,window}_adv_monitor (Gopal Tiwari) [1990477] - Bluetooth: Allow Microsoft extension to indicate curve validation (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading AOSP vendor capabilities (Gopal Tiwari) [1990477] - Bluetooth: LL privacy allow RPA (Gopal Tiwari) [1990477] - Bluetooth: Handle own address type change with HCI_ENABLE_LL_PRIVACY (Gopal Tiwari) [1990477] - Bluetooth: Do not set cur_adv_instance in adv param MGMT request (Gopal Tiwari) [1990477] - Bluetooth: Use ext adv handle from requests in CCs (Gopal Tiwari) [1990477] - Bluetooth: use the correct print format for L2CAP debug statements (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fix variable dereferenced before check 'conn' (Gopal Tiwari) [1990477] - Bluetooth: Check inquiry status before sending one (Gopal Tiwari) [1990477] - Bluetooth: Coding style fix (Gopal Tiwari) [1990477] - Bluetooth: Remove 'return' in void function (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Move the advertisement monitor events to correct list (Gopal Tiwari) [1990477] - Bluetooth: Add missing entries for PHY configuration commands (Gopal Tiwari) [1990477] - Bluetooth: Fix mgmt status for LL Privacy experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix wrong opcode error for read advertising features (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Rudimentary typo fixes (Gopal Tiwari) [1990477] - Bluetooth: Remove trailing semicolon in macros (Gopal Tiwari) [1990477] - Bluetooth: check for zapped sk before connecting (Gopal Tiwari) [1990477] - Bluetooth: fix set_ecdh_privkey() prototype (Gopal Tiwari) [1990477] - Bluetooth: initialize skb_queue_head at l2cap_chan_create() (Gopal Tiwari) [1990477] - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default (Gopal Tiwari) [1990477] - Bluetooth: Fix incorrect status handling in LE PHY UPDATE event (Gopal Tiwari) [1990477] - Bluetooth: avoid deadlock between hci_dev->lock and socket lock (Gopal Tiwari) [1990477] - Bluetooth: SMP: Convert BT_ERR/BT_DBG to bt_dev_err/bt_dev_dbg (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix not checking for maximum number of DCID (Gopal Tiwari) [1990477] - Bluetooth: Cancel le_scan_restart work when stopping discovery (Gopal Tiwari) [1990477] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1990477] - Bluetooth: Allow scannable adv with extended MGMT APIs (Gopal Tiwari) [1990477] - Bluetooth: Remove unneeded commands for suspend (Gopal Tiwari) [1990477] - Bluetooth: Notify suspend on le conn failed (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Remove redundant assignment to fw_ptr (Gopal Tiwari) [1990477] - Bluetooth: btmrvl: remove redundant continue statement (Gopal Tiwari) [1990477] - Bluetooth: btusb: use default nvm if boardID is 0 for wcn6855. (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc. (Gopal Tiwari) [1990477] - Bluetooth: btmtkuart: using pm_runtime_resume_and_get instead of pm_runtime_get_sync (Gopal Tiwari) [1990477] - Bluetooth: btrtl: rename USB fw for RTL8761 (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add 0x0b05:0x190e Realtek 8761BU (ASUS BT500) device. (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add RTL8822CS capabilities (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support USB ALT 3 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add a new QCA_ROME device (0cf3:e500) (Gopal Tiwari) [1990477] - Bluetooth: btqca: Don't modify firmware contents in-place (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add entry for BCM43430B0 UART Bluetooth (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: fix potential GPF (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for Lite-On Mediatek Chip (Gopal Tiwari) [1990477] - Bluetooth: virtio_bt: add missing null pointer check on alloc_skb call return (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix failing to init controllers with operation firmware (Gopal Tiwari) [1990477] - Bluetooth: Add a new USB ID for RTL8822CE (Gopal Tiwari) [1990477] - Bluetooth: btusb: Revert Fix the autosuspend enable and disable (Gopal Tiwari) [1990477] - Bluetooth: Add support for virtio transport driver (Gopal Tiwari) [1990477] - Bluetooth: btusb: Enable quirk boolean flag for Mediatek Chip. (Gopal Tiwari) [1990477] - Bluetooth: btintel: Skip reading firmware file version while in bootloader mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Collect tlv based active firmware build info in FW mode (Gopal Tiwari) [1990477] - Bluetooth: btintel: Reorganized bootloader mode tlv checks in intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware to boot (Gopal Tiwari) [1990477] - Bluetooth: btusb: Consolidate code for waiting firmware download (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Consolidate intel_version_tlv parsing (Gopal Tiwari) [1990477] - Bluetooth: btintel: Move operational checks after version check (Gopal Tiwari) [1990477] - Bluetooth: btintel: Check firmware version before download (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Mundane typo fix (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Add BCM4330 and BCM4334 compatibles (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Add device_may_wakeup support (Gopal Tiwari) [1990477] - Bluetooth: btintel: Fix offset calculation boot address parameter (Gopal Tiwari) [1990477] - Bluetooth: btusb: print firmware file name on error loading firmware (Gopal Tiwari) [1990477] - Bluetooth: btbcm: Obtain and handle reset GPIO (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix incorrect type in assignment and uninitialized symbol (Gopal Tiwari) [1990477] - Bluetooth: btusb: support 0cb5:c547 Realtek 8822CE device (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fixed issue during suspend (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix excessive stack usage (Gopal Tiwari) [1990477] - Bluetooth: btusb: remove set but not used variable in btusb_mtk_setup_firmware_79xx (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix typo and correct the log print (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add protocol support for MediaTek MT7921U USB devices (Gopal Tiwari) [1990477] - Bluetooth: btusb: Fine-tune mt7663 mechanism. (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: check for SSR triggered flag while suspend (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable WBS for the specific Realtek devices (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Wait for SSR completion during suspend (Gopal Tiwari) [1990477] - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump (Gopal Tiwari) [1990477] - Bluetooth: hci_h5: Add support for binding RTL8723DS with device tree (Gopal Tiwari) [1990477] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Add null check in setup (Gopal Tiwari) [1990477] - Bluetooth: btrtl: Enable central-peripheral role (Gopal Tiwari) [1990477] - Bluetooth: btusb: Remove duplicate newlines from logging (Gopal Tiwari) [1990477] - Bluetooth: btmtksdio: Fixed switch and case should be at the same indent (Gopal Tiwari) [1990477] - Revert "Bluetooth: btintel: Fix endianness issue for TLV version information" (Gopal Tiwari) [1990477] - Bluetooth: hci_bcm: Add support for ISO packets (Gopal Tiwari) [1990477] - Bluetooth: btusb: add shutdown function for wcn6855 (Gopal Tiwari) [1990477] - Bluetooth: hci_uart: Fix a race for write_work scheduling (Gopal Tiwari) [1990477] - Bluetooth: btqca: Add support to read FW build version for WCN3991 BTSoC (Gopal Tiwari) [1990477] - Bluetooth: btusb: Always fallback to alt 1 for WBS (Gopal Tiwari) [1990477] - Bluetooth: btqcomsmd: Fix a resource leak in error handling paths in the probe function (Gopal Tiwari) [1990477] - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1990477] - Bluetooth: Skip eSCO 2M params when not supported (Gopal Tiwari) [1990477] - Bluetooth: fix indentation and alignment reported by checkpatch (Gopal Tiwari) [1990477] - Bluetooth: fix coccicheck warnings debugfs (Gopal Tiwari) [1990477] - Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Try harder to accept device not knowing options (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling fragmented length (Gopal Tiwari) [1990477] - Bluetooth: btusb: fix memory leak on suspend and resume (Gopal Tiwari) [1990477] - Bluetooth: Put HCI device if inquiry procedure interrupts (Gopal Tiwari) [1990477] - Bluetooth: drop HCI device reference before return (Gopal Tiwari) [1990477] - Bluetooth: avoid u128_xor() on potentially misaligned inputs (Gopal Tiwari) [1990477] - Bluetooth: Fix initializing response id after clearing struct (Gopal Tiwari) [1990477] - Bluetooth: Cancel Inquiry before Create Connection (Gopal Tiwari) [1990477] - Bluetooth: Pause service discovery for suspend (Gopal Tiwari) [1990477] - Bluetooth: Remove hci_req_le_suspend_config (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: Set missing suspend task bits (Gopal Tiwari) [1990477] - Bluetooth: Change MGMT security info CMD to be more generic (Gopal Tiwari) [1990477] - Bluetooth: Query LE tx power on startup (Gopal Tiwari) [1990477] - Bluetooth: Use intervals and tx power from mgmt cmds (Gopal Tiwari) [1990477] - Bluetooth: Break add adv into two mgmt commands (Gopal Tiwari) [1990477] - Bluetooth: Add helper to set adv data (Gopal Tiwari) [1990477] - Bluetooth: Add toggle to switch off interleave scan (Gopal Tiwari) [1990477] - Bluetooth: Refactor read default sys config for various types (Gopal Tiwari) [1990477] - Bluetooth: Handle active scan case (Gopal Tiwari) [1990477] - Bluetooth: Handle system suspend resume case (Gopal Tiwari) [1990477] - Bluetooth: Interleave with allowlist scan (Gopal Tiwari) [1990477] - Bluetooth: Fix attempting to set RPA timeout when unsupported (Gopal Tiwari) [1990477] - Bluetooth: Rename get_adv_instance_scan_rsp (Gopal Tiwari) [1990477] - Bluetooth: Fix not sending Set Extended Scan Response (Gopal Tiwari) [1990477] - Bluetooth: Fix for Bluetooth SIG test L2CAP/COS/CFD/BV-14-C (Gopal Tiwari) [1990477] - Bluetooth: sco: Fix crash when using BT_SNDMTU/BT_RCVMTU option (Gopal Tiwari) [1990477] - Bluetooth: Replace BT_DBG with bt_dev_dbg in HCI request (Gopal Tiwari) [1990477] - Bluetooth: consolidate error paths in hci_phy_link_complete_evt() (Gopal Tiwari) [1990477] - Bluetooth: Enforce key size of 16 bytes on FIPS level (Gopal Tiwari) [1990477] - Bluetooth: hidp: use correct wait queue when removing ctrl_wait (Gopal Tiwari) [1990477] - Bluetooth: Move force_bredr_smp debugfs into hci_debugfs_create_bredr (Gopal Tiwari) [1990477] - Bluetooth: Fix: LL PRivacy BLE device fails to connect (Gopal Tiwari) [1990477] - Bluetooth: Resume advertising after LE connection (Gopal Tiwari) [1990477] - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt() (Gopal Tiwari) [1990477] - Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: MGMT: Fix not checking if BT_HS is enabled (Gopal Tiwari) [1990477] - Bluetooth: Disable High Speed by default (Gopal Tiwari) [1990477] - Bluetooth: Fix update of own_addr_type if ll_privacy supported (Gopal Tiwari) [1990477] - Bluetooth: Fix auto-creation of hci_conn at Conn Complete event (Gopal Tiwari) [1990477] - Bluetooth: Set scan parameters for ADV Monitor (Gopal Tiwari) [1990477] - Bluetooth: Update Adv monitor count upon removal (Gopal Tiwari) [1990477] - net: bluetooth: delete duplicated words (Gopal Tiwari) [1990477] - Bluetooth: pause/resume advertising around suspend (Gopal Tiwari) [1990477] - Bluetooth: Emit controller suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Add suspend reason for device disconnect (Gopal Tiwari) [1990477] - Bluetooth: Add mgmt suspend and resume events (Gopal Tiwari) [1990477] - Bluetooth: Set ext scan response only when it exists (Gopal Tiwari) [1990477] - Bluetooth: Only mark socket zapped after unlocking (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT capability flags for tx power and ext advertising (Gopal Tiwari) [1990477] - Bluetooth: Report num supported adv instances for hw offloading (Gopal Tiwari) [1990477] - Bluetooth: sco: new getsockopt options BT_SNDMTU/BT_RCVMTU (Gopal Tiwari) [1990477] - Bluetooth: Re-order clearing suspend tasks (Gopal Tiwari) [1990477] - Bluetooth: Fix memory leak in read_adv_mon_features() (Gopal Tiwari) [1990477] - Bluetooth: Clear suspend tasks on unregister (Gopal Tiwari) [1990477] - Bluetooth: Remove CRYPTO_ALG_INTERNAL flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: use the proper scan params when conn is pending (Gopal Tiwari) [1990477] - Bluetooth: Enable controller RPA resolution using Experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Let controller creates RPA during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type during le_conn (Gopal Tiwari) [1990477] - Bluetooth: Enable RPA Timeout (Gopal Tiwari) [1990477] - Bluetooth: Enable/Disable address resolution during le create conn (Gopal Tiwari) [1990477] - Bluetooth: Configure controller address resolution if available (Gopal Tiwari) [1990477] - Bluetooth: Translate additional address type correctly (Gopal Tiwari) [1990477] - Bluetooth: Update resolving list when updating whitelist (Gopal Tiwari) [1990477] - Bluetooth: Fix suspend notifier race (Gopal Tiwari) [1990477] - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier (Gopal Tiwari) [1990477] - Bluetooth: Add per-instance adv disable/remove (Gopal Tiwari) [1990477] - Replace HTTP links with HTTPS ones: BLUETOOTH SUBSYSTEM (Gopal Tiwari) [1990477] - Bluetooth: RFCOMM: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: core: Use fallthrough pseudo-keyword (Gopal Tiwari) [1990477] - Bluetooth: Use whitelist for scan policy when suspending (Gopal Tiwari) [1990477] - Bluetooth: le_simult_central_peripheral experimental feature (Gopal Tiwari) [1990477] - Bluetooth: Fix kernel oops triggered by hci_adv_monitors_clear() (Gopal Tiwari) [1990477] - Bluetooth: use configured default params for active scans (Gopal Tiwari) [1990477] - Bluetooth: Adding a configurable autoconnect timeout (Gopal Tiwari) [1990477] - Bluetooth: Don't restart scanning if paused (Gopal Tiwari) [1990477] - Bluetooth: add a mutex lock to avoid UAF in do_enale_set (Gopal Tiwari) [1990477] - Bluetooth: use configured params for ext adv (Gopal Tiwari) [1990477] - Bluetooth: Add hci_dev_lock to get/set device flags (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Use command complete on success for set system config (Gopal Tiwari) [1990477] - Bluetooth: Terminate the link if pairing is cancelled (Gopal Tiwari) [1990477] - Bluetooth: Update background scan and report device based on advertisement monitors (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor removed event (Gopal Tiwari) [1990477] - Bluetooth: Notify adv monitor added event (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_REMOVE_ADV_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_ADD_ADV_PATTERNS_MONITOR (Gopal Tiwari) [1990477] - Bluetooth: Add handler of MGMT_OP_READ_ADV_MONITOR_FEATURES (Gopal Tiwari) [1990477] - Bluetooth: Add definitions for advertisement monitor features (Gopal Tiwari) [1990477] - Bluetooth: Add get/set device flags mgmt op (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable in hci_conn_params (Gopal Tiwari) [1990477] - Bluetooth: Replace wakeable list with flag (Gopal Tiwari) [1990477] - Bluetooth: Add bdaddr_list_with_flags for classic whitelist (Gopal Tiwari) [1990477] - Bluetooth: mgmt: Add commands for runtime configuration (Gopal Tiwari) [1990477] - Bluetooth: implement read/set default system parameters mgmt (Gopal Tiwari) [1990477] - Bluetooth: mgmt: read/set system parameter definitions (Gopal Tiwari) [1990477] - Bluetooth: centralize default value initialization. (Gopal Tiwari) [1990477] - Bluetooth: Use only 8 bits for the HCI CMSG state flags (Gopal Tiwari) [1990477] - Bluetooth: Add support for BT_PKT_STATUS CMSG data for SCO connections (Gopal Tiwari) [1990477] - Bluetooth: Removing noisy dbg message (Gopal Tiwari) [1990477] - Bluetooth: Fix update of connection state in `hci_encrypt_cfm` (Gopal Tiwari) [1990477] - Bluetooth: Fix assuming EIR flags can result in SSP authentication (Gopal Tiwari) [1990477] - Bluetooth: Consolidate encryption handling in hci_encrypt_cfm (Gopal Tiwari) [1990477] - Bluetooth: Add SCO fallback for invalid LMP parameters error (Gopal Tiwari) [1990477] - Bluetooth: Fix for GAP/SEC/SEM/BI-10-C (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: add support for waiting disconnection resp (Gopal Tiwari) [1990477] - Bluetooth: Handle Inquiry Cancel error after Inquiry Complete (Gopal Tiwari) [1990477] - Bluetooth: Rename BT_SUSPEND_COMPLETE (Gopal Tiwari) [1990477] - Bluetooth: Introduce debug feature when dynamic debug is disabled (Gopal Tiwari) [1990477] - Bluetooth: Fix advertising handle is set to 0 (Gopal Tiwari) [1990477] - Bluetooth: Introduce HCI_MGMT_HDEV_OPTIONAL option (Gopal Tiwari) [1990477] - Bluetooth: Add support for experimental features configuration (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix errors during L2CAP_CREDIT_BASED_CONNECTION_REQ (0x17) (Gopal Tiwari) [1990477] - Bluetooth: Add MGMT_EV_PHY_CONFIGURATION_CHANGED to supported list (Gopal Tiwari) [1990477] - Bluetooth: use crypto_shash_tfm_digest() (Gopal Tiwari) [1990477] - Bluetooth: allow scatternet connections if supported. (Gopal Tiwari) [1990477] - Bluetooth: Enhanced Connection Complete event belongs to LL Privacy (Gopal Tiwari) [1990477] - Bluetooth: Enable LE Enhanced Connection Complete event. (Gopal Tiwari) [1990477] - Bluetooth: Use extra variable to make code more readable (Gopal Tiwari) [1990477] - Bluetooth: log advertisement packet length if it gets corrected (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (LE SC) (Gopal Tiwari) [1990477] - Bluetooth: Simplify / fix return values from tk_request (Gopal Tiwari) [1990477] - Bluetooth: debugfs option to unset MITM flag (Gopal Tiwari) [1990477] - Bluetooth: Increment management interface revision (Gopal Tiwari) [1990477] - Bluetooth: replace zero-length array with flexible-array member (Gopal Tiwari) [1990477] - Bluetooth: Add support for reading security information (Gopal Tiwari) [1990477] - Bluetooth: Add support for Read Local Simple Pairing Options (Gopal Tiwari) [1990477] - Bluetooth: Add framework for Microsoft vendor extension (Gopal Tiwari) [1990477] - Bluetooth: Move debugfs configuration above the selftests (Gopal Tiwari) [1990477] - Bluetooth: fixing minor typo in comment (Gopal Tiwari) [1990477] - Bluetooth: Prioritize SCO traffic (Gopal Tiwari) [1990477] - Bluetooth: L2CAP: Fix handling LE modes by L2CAP_OPTIONS (Gopal Tiwari) [1990477] - Bluetooth: Always request for user confirmation for Just Works (Gopal Tiwari) [1990477] - Bluetooth: Add BT_MODE socket option (Gopal Tiwari) [1990477] - crypto: shash - remove shash_desc::flags (Gopal Tiwari) [1990477] - cifs: On cifs_reconnect, resolve the hostname again. (Ronnie Sahlberg) [2018046] - cifs: Handle witness client move notification (Ronnie Sahlberg) [2018046] - cifs: Send witness register messages to userspace daemon in echo task (Ronnie Sahlberg) [2018046] - cifs: Add witness information to debug data dump (Ronnie Sahlberg) [2018046] - cifs: Set witness notification handler for messages from userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Send witness register and unregister commands to userspace daemon (Ronnie Sahlberg) [2018046] - cifs: Register generic netlink family (Ronnie Sahlberg) [2018046] - cifs: add witness mount option and data structs (Ronnie Sahlberg) [2018046] - cifs: Simplify reconnect code when dfs upcall is enabled (Ronnie Sahlberg) [2018046] - file: fix close_range() for unshare+cloexec (Pavel Reichl) [1950248] - scsi: lpfc: Update lpfc version to 14.0.0.3 (Dick Kennedy) [1989265] - scsi: lpfc: Allow fabric node recovery if recovery is in progress before devloss (Dick Kennedy) [1989265] - scsi: lpfc: Fix link down processing to address NULL pointer dereference (Dick Kennedy) [1989265] - scsi: lpfc: Allow PLOGI retry if previous PLOGI was aborted (Dick Kennedy) [1989265] - scsi: lpfc: Fix use-after-free in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Correct sysfs reporting of loop support after SFP status change (Dick Kennedy) [1989265] - scsi: lpfc: Wait for successful restart of SLI3 adapter during host sg_reset (Dick Kennedy) [1989265] - scsi: lpfc: Revert LOG_TRACE_EVENT back to LOG_INIT prior to driver_resource_setup() (Dick Kennedy) [1989265] - scsi: lpfc: Fix memory overwrite during FC-GS I/O abort handling (Dick Kennedy) [1989265] - scsi: lpfc: Add support for optional PLDV handling (Dick Kennedy) [1989265] - scsi: lpfc: Return NULL rather than a plain 0 integer (Dick Kennedy) [1989265] - scsi: lpfc: Fix a function name in comments (Dick Kennedy) [1989265] - scsi: lpfc: Fix mailbox command failure during driver initialization (Dick Kennedy) [1989265] - scsi: lpfc: Fix gcc -Wstringop-overread warning, again (Dick Kennedy) [1989265] - scsi: lpfc: Use correct scnprintf() limit (Dick Kennedy) [1989265] - scsi: lpfc: Fix sprintf() overflow in lpfc_display_fpin_wwpn() (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.2 (Dick Kennedy) [1989265] - scsi: lpfc: Improve PBDE checks during SGL processing (Dick Kennedy) [1989265] - scsi: lpfc: Zero CGN stats only during initial driver load and stat reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix I/O block after enabling managed congestion mode (Dick Kennedy) [1989265] - scsi: lpfc: Adjust bytes received vales during cmf timer interval (Dick Kennedy) [1989265] - scsi: fc: Add EDC ELS definition (Dick Kennedy) [1989265] - scsi: lpfc: Fix EEH support for NVMe I/O (Dick Kennedy) [1989265] - scsi: lpfc: Fix FCP I/O flush functionality for TMF routines (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe I/O failover to non-optimized path (Dick Kennedy) [1989265] - scsi: lpfc: Don't remove ndlp on PRLI errors in P2P mode (Dick Kennedy) [1989265] - scsi: lpfc: Fix rediscovery of tape device after LIP (Dick Kennedy) [1989265] - scsi: lpfc: Fix hang on unload due to stuck fport node (Dick Kennedy) [1989265] - scsi: lpfc: Fix premature rpi release for unsolicited TPLS and LS_RJT (Dick Kennedy) [1989265] - scsi: lpfc: Don't release final kref on Fport node while ABTS outstanding (Dick Kennedy) [1989265] - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq() (Dick Kennedy) [1989265] - scsi: lpfc: Remove unneeded variable (Dick Kennedy) [1989265] - scsi: lpfc: Fix compilation errors on kernels with no CONFIG_DEBUG_FS (Dick Kennedy) [1989265] - scsi: lpfc: Fix CPU to/from endian warnings introduced by ELS processing (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.1 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.1 (Dick Kennedy) [1989265] - scsi: lpfc: Add bsg support for retrieving adapter cmf data (Dick Kennedy) [1989265] - scsi: lpfc: Add cmf_info sysfs entry (Dick Kennedy) [1989265] - scsi: lpfc: Add debugfs support for cm framework buffers (Dick Kennedy) [1989265] - scsi: lpfc: Add support for maintaining the cm statistics buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add rx monitoring statistics (Dick Kennedy) [1989265] - scsi: lpfc: Add support for the CM framework (Dick Kennedy) [1989265] - scsi: lpfc: Add cmfsync WQE support (Dick Kennedy) [1989265] - scsi: lpfc: Add support for cm enablement buffer (Dick Kennedy) [1989265] - scsi: lpfc: Add cm statistics buffer support (Dick Kennedy) [1989265] - scsi: lpfc: Add EDC ELS support (Dick Kennedy) [1989265] - scsi: lpfc: Expand FPIN and RDF receive logging (Dick Kennedy) [1989265] - scsi: lpfc: Add MIB feature enablement support (Dick Kennedy) [1989265] - scsi: lpfc: Add SET_HOST_DATA mbox cmd to pass date/time info to firmware (Dick Kennedy) [1989265] - scsi: lpfc: Fix possible ABBA deadlock in nvmet_xri_aborted() (Dick Kennedy) [1989265] - scsi: lpfc: Remove redundant assignment to pointer pcmd (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 14.0.0.0 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 14.0.0.0 (Dick Kennedy) [1989265] - scsi: lpfc: Add 256 Gb link speed support (Dick Kennedy) [1989265] - scsi: lpfc: Revise Topology and RAS support checks for new adapters (Dick Kennedy) [1989265] - scsi: lpfc: Fix cq_id truncation in rq create (Dick Kennedy) [1989265] - scsi: lpfc: Add PCI ID support for LPe37000/LPe38000 series adapters (Dick Kennedy) [1989265] - scsi: lpfc: Copyright updates for 12.8.0.11 patches (Dick Kennedy) [1989265] - scsi: lpfc: Update lpfc version to 12.8.0.11 (Dick Kennedy) [1989265] - scsi: lpfc: Skip issuing ADISC when node is in NPR state (Dick Kennedy) [1989265] - scsi: lpfc: Skip reg_vpi when link is down for SLI3 in ADISC cmpl path (Dick Kennedy) [1989265] - scsi: lpfc: Call discovery state machine when handling PLOGI/ADISC completions (Dick Kennedy) [1989265] - scsi: lpfc: Delay unregistering from transport until GIDFT or ADISC completes (Dick Kennedy) [1989265] - scsi: lpfc: Enable adisc discovery after RSCN by default (Dick Kennedy) [1989265] - scsi: lpfc: Use PBDE feature enabled bit to determine PBDE support (Dick Kennedy) [1989265] - scsi: lpfc: Clear outstanding active mailbox during PCI function reset (Dick Kennedy) [1989265] - scsi: lpfc: Fix KASAN slab-out-of-bounds in lpfc_unreg_rpi() routine (Dick Kennedy) [1989265] - scsi: lpfc: Remove REG_LOGIN check requirement to issue an ELS RDF (Dick Kennedy) [1989265] - scsi: lpfc: Fix NULL ptr dereference with NPIV ports for RDF handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix target reset handler from falsely returning FAILURE (Dick Kennedy) [1989265] - scsi: lpfc: Discovery state machine fixes for LOGO handling (Dick Kennedy) [1989265] - scsi: lpfc: Fix function description comments for vmid routines (Dick Kennedy) [1989265] - scsi: lpfc: Improve firmware download logging (Dick Kennedy) [1989265] - scsi: lpfc: Remove use of kmalloc() in trace event logging (Dick Kennedy) [1989265] - scsi: lpfc: Fix NVMe support reporting in log message (Dick Kennedy) [1989265] - scsi: lpfc: Fix build error in lpfc_scsi.c (Dick Kennedy) [1989265] - scsi: lpfc: Use list_move_tail() instead of list_del()/list_add_tail() (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Introduce VMID in I/O path (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add QFPA and VMID timeout check in worker thread (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Timeout implementation for VMID (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Append the VMID to the wqe before sending (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement CT commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Functions to manage VMIDs (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Implement ELS commands for appid (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add support for VMID in mailbox command (Dick Kennedy) [1989265] - scsi: lpfc: vmid: VMID parameter initialization (Dick Kennedy) [1989265] - scsi: lpfc: vmid: Add datastructure for supporting VMID in lpfc (Dick Kennedy) [1989265] - redhat/config: Rename CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE to CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE (Waiman Long) [2018425] - kasan, kmemleak: reset tags when scanning block (Waiman Long) [2018425] - mm/kmemleak: rely on rcu for task stack scanning (Waiman Long) [2018425] - mm/kmemleak: silence KCSAN splats in checksum (Waiman Long) [2018425] - mm/kmemleak: turn kmemleak_lock and object->lock to raw_spinlock_t (Waiman Long) [2018425] - kmemleak: Do not corrupt the object_list during clean-up (Waiman Long) [2018425] - mm: kmemleak: use the memory pool for early allocations (Waiman Long) [2018425] - mm: kmemleak: simple memory allocation pool for kmemleak objects (Waiman Long) [2018425] - mm: kmemleak: make the tool tolerant to struct scan_area allocation failures (Waiman Long) [2018425] - kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K (Waiman Long) [2018425] - mm: kmemleak: disable early logging in case of error (Waiman Long) [2018425] - mm/kmemleak.c: fix unused-function warning (Waiman Long) [2018425] - kmemleak: powerpc: skip scanning holes in the .bss section (Waiman Long) [2018425] - mm: kmemleak: no need to check return value of debugfs_create functions (Waiman Long) [2018425]- powerpc/smp: Use existing L2 cache_map cpumask to find L3 cache siblings (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Remove the redundant get_shared_cpu_map() (Desnes A. Nunes do Rosario) [2013537] - powerpc/cacheinfo: Lookup cache by dt node and thread-group id (Desnes A. Nunes do Rosario) [2013537] - Revert "thunderbolt: Hide authorized attribute if router does not support PCIe tunnels" (Torez Smith) [1969444] - thunderbolt: Add quirk for Intel Goshen Ridge DP credits (Torez Smith) [1969444] - thunderbolt: Update port credits after bonding is enabled/disabled (Torez Smith) [1969444] - thunderbolt: Wait for the lanes to actually bond (Torez Smith) [1969444] - thunderbolt: Read router preferred credit allocation information (Torez Smith) [1969444] - thunderbolt: Make tb_port_type() take const parameter (Torez Smith) [1969444] - thunderbolt: Move nfc_credits field to struct tb_path_hop (Torez Smith) [1969444] - thunderbolt: Align USB4 router wakes configuration with the CM guide (Torez Smith) [1969444] - thunderbolt: Add wake from DisplayPort (Torez Smith) [1969444] - thunderbolt: Use generic tb_nvm_[read|write]_data() for Thunderbolt 2/3 devices (Torez Smith) [1969444] - thunderbolt: Split NVM read/write generic functions out from usb4.c (Torez Smith) [1969444] - thunderbolt: Add self-authenticate support for new dock (Torez Smith) [1969444] - thunderbolt: usb4: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue (Torez Smith) [1969444] - thunderbolt: Hide authorized attribute if router does not support PCIe tunnels (Torez Smith) [1969444] - x86/mce: Avoid infinite loop for copy from user recovery (Prarit Bhargava) [1999550] - x86/mce: Rename kill_it to kill_current_task (Prarit Bhargava) [1999550] - x86/mce: Recover from poison found while copying from user space (Prarit Bhargava) [1999550] - x86/mce: Delay clearing IA32_MCG_STATUS to the end of do_machine_check() (Prarit Bhargava) [1999550] - x86/mce: Send #MC singal from task work (Prarit Bhargava) [1999550] - redhat/config: Enable Nitro Enclaves on aarch64 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fixes for checkpatch match open parenthesis reports (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Update copyright statement to include 2021 (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Add fix for the kernel-doc report (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Enable Arm64 support (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Set Bus Master for the NE PCI device (Vitaly Kuznetsov) [2001581] - nitro_enclaves: Fixup type and simplify logic of the poll mask setup (Vitaly Kuznetsov) [2001581] - mptcp: Make mptcp_pm_nl_mp_prio_send_ack() static (Davide Caratti) [2020198] - mptcp: fix possible stall on recvmsg() (Davide Caratti) [2020198] - mptcp: don't clear MPTCP_DATA_READY in sk_wait_event() (Davide Caratti) [2020198] - net: introduce and use lock_sock_fast_nested() (Davide Caratti) [2020198] - net: add annotation for sock_{lock,unlock}_fast (Davide Caratti) [2020198] - mptcp: allow changing the 'backup' bit when no sockets are open (Davide Caratti) [2020198] - mptcp: don't return sockets in foreign netns (Davide Caratti) [2020198] - mptcp: ensure tx skbs always have the MPTCP ext (Davide Caratti) [2020198] - mptcp: full fully established support after ADD_ADDR (Davide Caratti) [2020198] - redhat/configs: Move Hyper-V configs to 'generic' (Vitaly Kuznetsov) [1949614] - redhat/configs: enable CONFIG_INPUT_KEYBOARD on Aarch64 (Vitaly Kuznetsov) [1949614] - efi/libstub/random: Align allocate size to EFI_ALLOC_ALIGN (Vitaly Kuznetsov) [1949614] - efi/libstub: arm64: Double check image alignment at entry (Vitaly Kuznetsov) [1949614] - efi/arm64: Update debug prints to reflect other entropy sources (Vitaly Kuznetsov) [1949614] - efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL failure (Vitaly Kuznetsov) [1949614] - Drivers: hv: Enable Hyper-V code to be built on ARM64 (Vitaly Kuznetsov) [1949614] - x86/Kconfig: Add new X86_HV_CALLBACK_VECTOR config symbol (Vitaly Kuznetsov) [1949614] - arm64: efi: Export screen_info (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Initialize hypervisor on boot (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add panic handler (Vitaly Kuznetsov) [1949614] - arm64: hyperv: Add Hyper-V hypercall and register access utilities (Vitaly Kuznetsov) [1949614] - arm64: add arch/arm64/Kbuild (Vitaly Kuznetsov) [1949614] - PCI: hv: Turn on the host bridge probing on ARM64 (Vitaly Kuznetsov) [1949614] - PCI: hv: Set up MSI domain at bridge probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Set ->domain_nr of pci_host_bridge at probing time (Vitaly Kuznetsov) [1949614] - PCI: hv: Generify PCI probing (Vitaly Kuznetsov) [1949614] - arm64: PCI: Support root bridge preparation for Hyper-V (Vitaly Kuznetsov) [1949614] - arm64: PCI: Restructure pcibios_root_bridge_prepare() (Vitaly Kuznetsov) [1949614] - PCI: Support populating MSI domains of root buses via bridges (Vitaly Kuznetsov) [1949614] - PCI: Introduce domain_nr in pci_host_bridge (Vitaly Kuznetsov) [1949614] - drivers: hv: Decouple Hyper-V clock/timer code from VMbus drivers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V misc functionality to arch-neutral code (Vitaly Kuznetsov) [1949614] - x86/hyperv: handling hypercall page setup for root (Vitaly Kuznetsov) [1949614] - Drivers: hv: Add arch independent default functions for some Hyper-V handlers (Vitaly Kuznetsov) [1949614] - Drivers: hv: Make portions of Hyper-V init code be arch neutral (Vitaly Kuznetsov) [1949614] - asm-generic/hyperv: Add missing #include of nmi.h (Vitaly Kuznetsov) [1949614] - PCI: hv: Support for create interrupt v3 (Vitaly Kuznetsov) [1949614] - Drivers: hv: Move Hyper-V extended capability check to arch neutral code (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Re-enable VDSO_CLOCKMODE_HVCLOCK on X86 (Vitaly Kuznetsov) [1949614] - clocksource/drivers/hyper-v: Handle vDSO differences inline (Vitaly Kuznetsov) [1949614] - arm64: smccc: Add support for SMCCCv1.2 extended input/output registers (Vitaly Kuznetsov) [1949614] - smccc: Define vendor hyp owned service call region (Vitaly Kuznetsov) [1949614] - scsi: smartpqi: Update version to 2.1.12-055 (Don Brace) [2018317] - scsi: smartpqi: Add 3252-8i PCI id (Don Brace) [2018317] - scsi: smartpqi: Fix duplicate device nodes for tape changers (Don Brace) [2018317] - scsi: smartpqi: Fix boot failure during LUN rebuild (Don Brace) [2018317] - scsi: smartpqi: Add extended report physical LUNs (Don Brace) [2018317] - scsi: smartpqi: Avoid failing I/Os for offline devices (Don Brace) [2018317] - scsi: smartpqi: Add TEST UNIT READY check for SANITIZE operation (Don Brace) [2018317] - scsi: smartpqi: Update LUN reset handler (Don Brace) [2018317] - scsi: smartpqi: Capture controller reason codes (Don Brace) [2018317] - scsi: smartpqi: Add controller handshake during kdump (Don Brace) [2018317] - scsi: smartpqi: Update device removal management (Don Brace) [2018317] - KVM: PPC: Tick accounting should defer vtime accounting 'til after IRQ handling (Laurent Vivier) [2009312] - vhost_net: fix OoB on sendmsg() failure. (Paolo Abeni) [1922828] - scsi: qla2xxx: Update version to 10.02.06.200-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix returnvar.cocci warnings (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe session down detection (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe retry (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang on NVMe command timeouts (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NVMe | FCP personality change (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Do secure PLOGI when auth app is present (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add N2N support for EDIF (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix hang during NVMe session tear down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix EDIF enable flag (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Reject AUTH ELS on session down (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Fix stale session (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.06.100-k (Nilesh Javali) [1983874] - scsi: qla2xxx: Sync queue idx with queue_pair_map idx (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support kdump kernel (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix NPIV create erroneous error (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix unsafe removal from linked list (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix port type info (Nilesh Javali) [1983874] - scsi: qla2xxx: Add debug print of 64G link speed (Nilesh Javali) [1983874] - scsi: qla2xxx: Show OS name and version in FDMI-1 (Nilesh Javali) [1983874] - scsi: qla2xxx: Changes to support FCP2 Target (Nilesh Javali) [1983874] - scsi: qla2xxx: Adjust request/response queue size for 28xx (Nilesh Javali) [1983874] - scsi: qla2xxx: Add host attribute to trigger MPI hang (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant initialization of variable num_cnt (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix use after free in debug code (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix spelling mistakes "allloc" -> "alloc" (Nilesh Javali) [1983874] - scsi: qla2xxx: Update version to 10.02.00.107-k (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Increment command and completion counts (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add encryption to I/O path (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add doorbell notification for app (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add detection of secure device (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add authentication pass + fail bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add key update (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add extraction of auth_els from the wire (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add send, receive, and accept for auth_els (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add getfcinfo and statistic bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: edif: Add start + stop bsgs (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unused variable 'status' (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant continue statement in a for-loop (Nilesh Javali) [1983874] - scsi: qla2xxx: Add heartbeat check (Nilesh Javali) [1983874] - scsi: qla2xxx: Use list_move_tail() instead of list_del()/list_add_tail() (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove duplicate declarations (Nilesh Javali) [1983874] - scsi: qla2xxx: Log PCI address in qla_nvme_unregister_remote_port() (Nilesh Javali) [1983874] - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove redundant assignment to rval (Nilesh Javali) [1983874] - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword() (Nilesh Javali) [1983874] - scsi: qla2xxx: Prevent PRLI in target mode (Nilesh Javali) [1983874] - scsi: qla2xxx: Reuse existing error handling path (Nilesh Javali) [1983874] - scsi: qla2xxx: Remove unneeded if-null-free check (Nilesh Javali) [1983874] - thermal/drivers/int340x: Do not set a wrong tcc offset on resume (David Arcari) [1997757] - thermal: core: Add new event for sending keep alive notifications (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix tcc setting (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Fix warning for return value (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Add PCI MMIO based thermal driver (David Arcari) [1997757] - thermal/drivers/int340x/processor_thermal: Split enumeration and processing part (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export additional attributes (David Arcari) [1997757] - thermal/drivers/int340x: processor_thermal: Export mailbox interface (David Arcari) [1997757] - thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID (David Arcari) [1997757] - thermal: int340x: Fix unexpected shutdown at critical temperature (David Arcari) [1997757] - thermal: int340x: Support Alder Lake (David Arcari) [1997757] - thermal: int340x: processor_thermal: Correct workload type name (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add mailbox driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add RFIM driver (David Arcari) [1997757] - thermal: int340x: processor_thermal: Add AlderLake PCI device id (David Arcari) [1997757] - thermal: int340x: processor_thermal: Refactor MMIO interface (David Arcari) [1997757] - thermal: int340x: Add keep alive response method (David Arcari) [1997757] - thermal: int340x: Provide notification for OEM variable change (David Arcari) [1997757] - treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1997757] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1997757] - intel_idle: Adjust the SKX C6 parameters if PC6 is disabled (David Arcari) [2003731] - intel_idle: update ICX C6 data (David Arcari) [2003731] - nbd: provide a way for userspace processes to identify device backends (Ming Lei) [1997338] - Revert "block, bfq: honor already-setup queue merges" (Ming Lei) [1997338] - blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd (Ming Lei) [1997338] - blkcg: fix memory leak in blk_iolatency_init (Ming Lei) [1997338] - blk-mq: avoid to iterate over stale request (Ming Lei) [1997338] - blk-mq: allow 4x BLK_MAX_REQUEST_COUNT at blk_plug for multiple_queues (Ming Lei) [1997338] - block, bfq: honor already-setup queue merges (Ming Lei) [1997338] - block/mq-deadline: Move dd_queued() to fix defined but not used warning (Ming Lei) [1997338] - cryptoloop: add a deprecation warning (Ming Lei) [1997338] - Revert "block/mq-deadline: Prioritize high-priority requests" (Ming Lei) [1997338] - mq-deadline: Fix request accounting (Ming Lei) [1997338] - nbd: Aovid double completion of a request (Ming Lei) [1997338] - blk-mq: clear active_queues before clearing BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1997338] - Revert "block/mq-deadline: Add cgroup support" (Ming Lei) [1997338] - kyber: make trace_block_rq call consistent with documentation (Ming Lei) [1997338] - blk-iolatency: error out if blk_get_queue() failed in iolatency_set_limit() (Ming Lei) [1997338] - blk-mq-sched: Fix blk_mq_sched_alloc_tags() error handling (Ming Lei) [1997338] - loop: reintroduce global lock for safe loop_validate_file() traversal (Ming Lei) [1997338] - blk-cgroup: prevent rcu_sched detected stalls warnings while iterating blkgs (Ming Lei) [1997338] - block: fix the problem of io_ticks becoming smaller (Ming Lei) [1997338] - block: return errors from blk_execute_rq() (Ming Lei) [1997338] - block: support polling through blk_execute_rq (Ming Lei) [1997338] - loop: rewrite loop_exit using idr_for_each_entry (Ming Lei) [1997338] - loop: split loop_lookup (Ming Lei) [1997338] - loop: don't allow deleting an unspecified loop device (Ming Lei) [1997338] - loop: move loop_ctl_mutex locking into loop_add (Ming Lei) [1997338] - loop: split loop_control_ioctl (Ming Lei) [1997338] - loop: don't call loop_lookup before adding a loop device (Ming Lei) [1997338] - loop: remove the l argument to loop_add (Ming Lei) [1997338] - loop: reduce loop_ctl_mutex coverage in loop_exit (Ming Lei) [1997338] - loop: reorder loop_exit (Ming Lei) [1997338] - loop: Fix missing discard support when using LOOP_CONFIGURE (Ming Lei) [1997338] - block: export blk_next_bio() (Ming Lei) [1997338] - rsxx: Use struct_size() in vmalloc() (Ming Lei) [1997338] - block/mq-deadline: Remove a WARN_ON_ONCE() call (Ming Lei) [1997338] - blk: Fix lock inversion between ioc lock and bfqd lock (Ming Lei) [1997338] - bfq: Remove merged request already in bfq_requests_merged() (Ming Lei) [1997338] - block: fix trace completion for chained bio (Ming Lei) [1997338] - block/partitions/msdos: Fix typo inidicator -> indicator (Ming Lei) [1997338] - block, bfq: reset waker pointer with shared queues (Ming Lei) [1997338] - block, bfq: check waker only for queues with no in-flight I/O (Ming Lei) [1997338] - block, bfq: avoid delayed merge of async queues (Ming Lei) [1997338] - block, bfq: boost throughput by extending queue-merging times (Ming Lei) [1997338] - block, bfq: consider also creation time in delayed stable merge (Ming Lei) [1997338] - block, bfq: fix delayed stable merge check (Ming Lei) [1997338] - block, bfq: let also stably merged queues enjoy weight raising (Ming Lei) [1997338] - blk-wbt: make sure throttle is enabled properly (Ming Lei) [1997338] - blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled() (Ming Lei) [1997338] - block/mq-deadline: Prioritize high-priority requests (Ming Lei) [1997338] - block/mq-deadline: Add cgroup support (Ming Lei) [1997338] - block/mq-deadline: Track I/O statistics (Ming Lei) [1997338] - block/mq-deadline: Add I/O priority support (Ming Lei) [1997338] - block/mq-deadline: Micro-optimize the batching algorithm (Ming Lei) [1997338] - block/mq-deadline: Reserve 25 of scheduler tags for synchronous requests (Ming Lei) [1997338] - block/mq-deadline: Improve the sysfs show and store macros (Ming Lei) [1997338] - block/mq-deadline: Improve compile-time argument checking (Ming Lei) [1997338] - block: mq-deadline: Fix queue restart handling (Ming Lei) [1997338] - block/mq-deadline: Rename dd_init_queue() and dd_exit_queue() (Ming Lei) [1997338] - block/mq-deadline: Remove two local variables (Ming Lei) [1997338] - block/mq-deadline: Add two lockdep_assert_held() statements (Ming Lei) [1997338] - block/mq-deadline: Add several comments (Ming Lei) [1997338] - block: Introduce the ioprio rq-qos policy (Ming Lei) [1997338] - block/blk-rq-qos: Move a function from a header file into a C file (Ming Lei) [1997338] - block/blk-cgroup: Swap the blk_throtl_init() and blk_iolatency_init() calls (Ming Lei) [1997338] - blkcg: fix memleak for iolatency (Ming Lei) [1997338] - blk-wbt: remove outdated comment (Ming Lei) [1997338] - block: Remove unnecessary elevator operation checks (Ming Lei) [1997338] - blk-mq: factor out a blk_mq_alloc_sq_tag_set helper (Ming Lei) [1997338] - block: Update blk_update_request() documentation (Ming Lei) [1997338] - blkcg: drop CLONE_IO check in blkcg_can_attach() (Ming Lei) [1997338] - aoe: remove unnecessary mutex_init() (Ming Lei) [1997338] - block: loop: fix deadlock between open and remove (Ming Lei) [1997338] - loop: scale loop device by introducing per device lock (Ming Lei) [1997338] - block/partitions/efi.c: Fix the efi_partition() kernel-doc header (Ming Lei) [1997338] - nbd: share nbd_put and return by goto put_nbd (Ming Lei) [1997338] - nbd: Fix NULL pointer in flush_workqueue (Ming Lei) [1997338] - blkdev.h: remove unused codes blk_account_rq (Ming Lei) [1997338] - block, bfq: avoid circular stable merges (Ming Lei) [1997338] - block: uapi: fix comment about block device ioctl (Ming Lei) [1997338] - block: reexpand iov_iter after read/write (Ming Lei) [1997338] - bfq/mq-deadline: remove redundant check for passthrough request (Ming Lei) [1997338] - blk-mq: bypass IO scheduler's limit_depth for passthrough request (Ming Lei) [1997338] - block: Fix sys_ioprio_set(.which=IOPRIO_WHO_PGRP) task iteration (Ming Lei) [1997338] - blk-mq: Always use blk_mq_is_sbitmap_shared (Ming Lei) [1997338] - block: add sysfs entry for virt boundary mask (Ming Lei) [1997338] - block, bfq: merge bursts of newly-created queues (Ming Lei) [1997338] - block, bfq: keep shared queues out of the waker mechanism (Ming Lei) [1997338] - block, bfq: fix weight-raising resume with !low_latency (Ming Lei) [1997338] - block, bfq: make shared queues inherit wakers (Ming Lei) [1997338] - block, bfq: put reqs of waker and woken in dispatch list (Ming Lei) [1997338] - block, bfq: always inject I/O of queues blocked by wakers (Ming Lei) [1997338] - blk-mq: Sentence reconstruct for better readability (Ming Lei) [1997338] - block: update a few comments in uapi/linux/blkpg.h (Ming Lei) [1997338] - block: don't ignore REQ_NOWAIT for direct IO (Ming Lei) [1997338] - block: clear GD_NEED_PART_SCAN later in bdev_disk_changed (Ming Lei) [1997338] - block: Discard page cache of zone reset target range (Ming Lei) [1997338] - block: Suppress uevent for hidden device when removed (Ming Lei) [1997338] - block: rsxx: fix error return code of rsxx_pci_probe() (Ming Lei) [1997338] - block: Fix REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1997338] - blk-cgroup: Fix the recursive blkg rwstat (Ming Lei) [1997338] - rsxx: Return -EFAULT if copy_to_user() fails (Ming Lei) [1997338] - block/bfq: update comments and default value in docs for fifo_expire (Ming Lei) [1997338] - block: Drop leftover references to RQF_SORTED (Ming Lei) [1997338] - blktrace: fix documentation for blk_fill_rw() (Ming Lei) [1997338] - blktrace: remove debugfs file dentries from struct blk_trace (Ming Lei) [1997338] - block: get rid of the trace rq insert wrapper (Ming Lei) [1997338] - blktrace: fix blk_rq_merge documentation (Ming Lei) [1997338] - blktrace: fix blk_rq_issue documentation (Ming Lei) [1997338] - blktrace: add blk_fill_rwbs documentation comment (Ming Lei) [1997338] - block: remove superfluous param in blk_fill_rwbs() (Ming Lei) [1997338] - block: Remove unused blk_pm_*() function definitions (Ming Lei) [1997338] - blk-mq: Use llist_head for blk_cpu_done (Ming Lei) [1997338] - blk-mq: Always complete remote completions requests in softirq (Ming Lei) [1997338] - block: use bi_max_vecs to find the bvec pool (Ming Lei) [1997338] - md/raid10: remove dead code in reshape_request (Ming Lei) [1997338] - block: remove the 1 and 4 vec bvec_slabs entries (Ming Lei) [1997338] - block: streamline bvec_alloc (Ming Lei) [1997338] - block: factor out a bvec_alloc_gfp helper (Ming Lei) [1997338] - block: move struct biovec_slab to bio.c (Ming Lei) [1997338] - block: reuse BIO_INLINE_VECS for integrity bvecs (Ming Lei) [1997338] - block: move three bvec helpers declaration into private helper (Ming Lei) [1997338] - blk-cgroup: Remove obsolete macro (Ming Lei) [1997338] - block: use an on-stack bio in blkdev_issue_flush (Ming Lei) [1997338] - blkcg: delete redundant get/put operations for queue (Ming Lei) [1997338] - block: unexport truncate_bdev_range (Ming Lei) [1997338] - blk: wbt: remove unused parameter from wbt_should_throttle (Ming Lei) [1997338] - bdev: Do not return EBUSY if bdev discard races with write (Ming Lei) [1997338] - bfq: don't duplicate code for different paths (Ming Lei) [1997338] - block: remove the request_queue to argument request based tracepoints (Ming Lei) [1997338] - virtio_net: disable cb aggressively (Stefan Hajnoczi) [1965914] - virtio: fix up virtio_disable_cb (Stefan Hajnoczi) [1965914] - virtio_net: move txq wakeups under tx q lock (Stefan Hajnoczi) [1965914] - virtio_net: move tx vq operation under tx queue lock (Stefan Hajnoczi) [1965914] - virtio_net: bulk free tx skbs (Stefan Hajnoczi) [1965914] - [s390] s390/qdio: propagate error when cancelling a ccw fails (Mete Durlu) [1984989] - [s390] s390/qdio: improve roll-back after error on ESTABLISH ccw (Mete Durlu) [1984989] - [s390] s390/qdio: cancel the ESTABLISH ccw after timeout (Mete Durlu) [1984989] - [s390] scsi: zfcp: Lift Request Queue tasklet & timer from qdio (Mete Durlu) [1984989] - [s390] scsi: zfcp: Move the position of put_device() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Clean up sysfs code for SFP diagnostics (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix sysfs roll-back on error in zfcp_adapter_enqueue() (Mete Durlu) [1984989] - [s390] scsi: zfcp: Fix indentation coding style issue (Mete Durlu) [1984989] - [s390] scsi: zfcp: Remove unneeded INIT_LIST_HEAD() for FSF requests (Mete Durlu) [1984989] - x86/fpu/xstate: Clear xstate header in copy_xstate_to_uabi_buf() again (Prarit Bhargava) [1981448] - x86/fpu/signal: Let xrstor handle the features to init (Prarit Bhargava) [1981448] - x86/fpu/signal: Handle #PF in the direct restore path (Prarit Bhargava) [1981448] - x86/fpu: Return proper error codes from user access functions (Prarit Bhargava) [1981448] - x86/fpu/signal: Split out the direct restore code (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1981448] - x86/fpu/signal: Sanitize the xstate check on sigframe (Prarit Bhargava) [1981448] - x86/fpu/signal: Remove the legacy alignment check (Prarit Bhargava) [1981448] - x86/fpu/signal: Move initial checks into fpu__restore_sig() (Prarit Bhargava) [1981448] - x86/fpu: Mark init_fpstate __ro_after_init (Prarit Bhargava) [1981448] - x86/pkru: Remove xstate fiddling from write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Don't store PKRU in xstate in fpu_reset_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Remove PKRU handling from switch_fpu_finish() (Prarit Bhargava) [1981448] - x86/fpu: Mask PKRU from kernel XRSTOR[S] operations (Prarit Bhargava) [1981448] - x86/fpu: Hook up PKRU into ptrace() (Prarit Bhargava) [1981448] - x86/fpu: Add PKRU storage outside of task XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Dont restore PKRU in fpregs_restore_userspace() (Prarit Bhargava) [1981448] - x86/fpu: Rename xfeatures_mask_user() to xfeatures_mask_uabi() (Prarit Bhargava) [1981448] - x86/fpu: Move FXSAVE_LEAK quirk info __copy_kernel_to_fpregs() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_kernel_to_fpregs() to restore_fpregs_from_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename __fpregs_load_activate() to fpregs_restore_userregs() (Prarit Bhargava) [1981448] - x86/fpu: Clean up the fpu__clear() variants (Prarit Bhargava) [1981448] - x86/fpu: Rename fpu__clear_all() to fpu_flush_thread() (Prarit Bhargava) [1981448] - x86/fpu: Use pkru_write_default() in copy_init_fpstate_to_fpregs() (Prarit Bhargava) [1981448] - x86/cpu: Write the default PKRU value when enabling PKE (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_write_default() (Prarit Bhargava) [1981448] - x86/pkru: Provide pkru_get_init_value() (Prarit Bhargava) [1981448] - x86/cpu: Sanitize X86_FEATURE_OSPKE (Prarit Bhargava) [1981448] - x86/pkeys: Move read_pkru() and write_pkru() (Prarit Bhargava) [1981448] - x86/fpu: Rename and sanitize fpu__save/copy() (Prarit Bhargava) [1981448] - x86/fpu/xstate: Sanitize handling of independent features (Prarit Bhargava) [1981448] - x86/fpu: Rename "dynamic" XSTATEs to "independent" (Prarit Bhargava) [1981448] - x86/fpu: Rename initstate copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of the FNSAVE optimization (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_fpregs_to_fpstate() to save_fpregs_to_fpstate() (Prarit Bhargava) [1981448] - x86/fpu: Deduplicate copy_uabi_from_user/kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Rename xstate copy functions which are related to UABI (Prarit Bhargava) [1981448] - x86/fpu: Rename fregs-related copy functions (Prarit Bhargava) [1981448] - x86/math-emu: Rename frstor() (Prarit Bhargava) [1981448] - x86/fpu: Rename fxregs-related copy functions (Prarit Bhargava) [1981448] - x86/fpu: Get rid of CONFIG_AS_FXSAVEQ (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_user_to_xregs() and copy_xregs_to_user() (Prarit Bhargava) [1981448] - x86/fpu: Rename copy_xregs_to_kernel() and copy_kernel_to_xregs() (Prarit Bhargava) [1981448] - x86/fpu: Get rid of copy_supervisor_to_kernel() (Prarit Bhargava) [1981448] - x86/fpu: Cleanup arch_set_user_pkey_access() (Prarit Bhargava) [1981448] - x86/kvm: Avoid looking up PKRU in XSAVE buffer (Prarit Bhargava) [1981448] - x86/fpu: Get rid of using_compacted_format() (Prarit Bhargava) [1981448] - x86/fpu: Move fpu__write_begin() to regset (Prarit Bhargava) [1981448] - x86/fpu/regset: Move fpu__read_begin() into regset (Prarit Bhargava) [1981448] - x86/fpu: Remove fpstate_sanitize_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Use copy_xstate_to_uabi_buf() in xfpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Make copy_xstate_to_kernel() usable for [x]fpregs_get() (Prarit Bhargava) [1981448] - x86/fpu: Clean up fpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Fail ptrace() requests that try to set invalid MXCSR values (Prarit Bhargava) [1981448] - x86/fpu: Rewrite xfpregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Simplify PTRACE_GETREGS code (Prarit Bhargava) [1981448] - x86/fpu: Reject invalid MXCSR values in copy_kernel_to_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Sanitize xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Move inlines where they belong (Prarit Bhargava) [1981448] - x86/fpu: Get rid of fpu__get_supported_xfeatures_mask() (Prarit Bhargava) [1981448] - x86/fpu: Make xfeatures_mask_all __ro_after_init (Prarit Bhargava) [1981448] - x86/fpu: Mark various FPU state variables __ro_after_init (Prarit Bhargava) [1981448] - x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to init_fpstate") (Prarit Bhargava) [1981448] - x86/fpu: Fix copy_xstate_to_kernel() gap handling (Prarit Bhargava) [1981448] - x86/fpu: Limit xstate copy size in xstateregs_set() (Prarit Bhargava) [1981448] - x86/fpu: Make init_fpstate correct with optimized XSAVE (Prarit Bhargava) [1981448] - x86/fpu: Preserve supervisor states in sanitize_restored_user_xstate() (Prarit Bhargava) [1981448] - x86/fpu: Reset state for all signal restore failures (Prarit Bhargava) [1981448] - x86/signal: Introduce helpers to get the maximum signal frame size (Prarit Bhargava) [1981448] - x86/fpu: Fix various typos in comments (Prarit Bhargava) [1981448] - x86/fpu/xstate: Use sizeof() instead of a constant (Prarit Bhargava) [1981448] - x86/fpu: Handle FPU-related and clearcpuid command line arguments earlier (Prarit Bhargava) [1981448] - x86/fpu: Allow multiple bits in clearcpuid= parameter (Prarit Bhargava) [1981448] - x86: switch to ->regset_get() (Prarit Bhargava) [1981448] - regset: new method and helpers for it (Prarit Bhargava) [1981448] - copy_regset_to_user(): do all copyout at once. (Prarit Bhargava) [1981448] - introduction of regset ->get() wrappers, switching ELF coredumps to those (Prarit Bhargava) [1981448] - user_regset_copyout_zero(): use clear_user() (Prarit Bhargava) [1981448] - x86: kill dump_fpu() (Prarit Bhargava) [1981448] - x86: copy_fpstate_to_sigframe(): have fpregs_soft_get() use kernel buffer (Prarit Bhargava) [1981448] - x86/pkeys: Add check for pkey "overflow" (Prarit Bhargava) [1981448] - x86/fpu: Deactivate FPU state after failure during state load (Prarit Bhargava) [1981448] - x86/fpu: Use sizeof_field() macro (Prarit Bhargava) [1981448] - x86/fpu: Inline fpu__xstate_clear_all_cpu_caps() (Prarit Bhargava) [1981448] - x86/fpu: Make 'no387' and 'nofxsr' command line options useful (Prarit Bhargava) [1981448] - x86/fpu: Remove the fpu__save() export (Prarit Bhargava) [1981448] - x86/process: Add AVX-512 usage elapsed time to /proc/pid/arch_status (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1981448] - x86/fpu: Add SPDX license identifier for missed files (Prarit Bhargava) [1981448] - x86/fpu: Fix __user annotations (Prarit Bhargava) [1981448] - x86/fpu: Move init_xstate_size() to __init section (Prarit Bhargava) [1981448] - x86/fpu: Update comment for __raw_xsave_addr() (Prarit Bhargava) [1981448] - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file (Nilesh Javali) [1981433] - scsi: core: Put LLD module refcnt after SCSI device is released (Ming Lei) [1996509] - scsi: iscsi: Fix set_param() handling (Chris Leech) [2011470] - scsi: iscsi: Fix iscsi_task use after free (Chris Leech) [2011470] - scsi: iscsi: Adjust iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Fix iface sysfs attr detection (Chris Leech) [2011470] - scsi: iscsi: Move pool freeing (Chris Leech) [2011470] - scsi: iscsi: Hold task ref during TMF timeout handling (Chris Leech) [2011470] - scsi: iscsi: Flush block work before unblock (Chris Leech) [2011470] - scsi: iscsi: Fix completion check during abort races (Chris Leech) [2011470] - scsi: iscsi: Fix shost->max_id use (Chris Leech) [2011470] - scsi: iscsi: Fix conn use after free during resets (Chris Leech) [2011470] - scsi: iscsi: Get ref to conn during reset handling (Chris Leech) [2011470] - scsi: iscsi: Have abort handler get ref to conn (Chris Leech) [2011470] - scsi: iscsi: Add iscsi_cls_conn refcount helpers (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Start socket shutdown during conn stop (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Set no linger (Chris Leech) [2011470] - scsi: iscsi: Fix in-kernel conn failure handling (Chris Leech) [2011470] - scsi: iscsi: Rel ref after iscsi_lookup_endpoint() (Chris Leech) [2011470] - scsi: iscsi: Use system_unbound_wq for destroy_work (Chris Leech) [2011470] - scsi: iscsi: Force immediate failure during shutdown (Chris Leech) [2011470] - scsi: iscsi: Drop suspend calls from ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Stop queueing during ep_disconnect (Chris Leech) [2011470] - scsi: iscsi: Add task completion helper (Chris Leech) [2011470] - scsi: iscsi: Fix iSCSI cls conn state (Chris Leech) [2011470] - scsi: iscsi: Fix race condition between login and sync thread (Chris Leech) [2011470] - scsi: iscsi: Drop session lock in iscsi_session_chkready() (Chris Leech) [2011470] - scsi: libiscsi: Reset max/exp cmdsn during recovery (Chris Leech) [2011470] - scsi: iscsi_tcp: Fix shost can_queue initialization (Chris Leech) [2011470] - scsi: libiscsi: Add helper to calculate max SCSI cmds per session (Chris Leech) [2011470] - scsi: libiscsi: Fix iSCSI host workq destruction (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_task use after free() (Chris Leech) [2011470] - scsi: libiscsi: Drop taskqueuelock (Chris Leech) [2011470] - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling (Chris Leech) [2011470] - scsi: iscsi: Fix inappropriate use of put_device() (Chris Leech) [2011470] - scsi: iscsi: Fail session and connection on transport registration failure (Chris Leech) [2011470] - scsi: drivers: base: Propagate errors through the transport component (Chris Leech) [2011470] - scsi: drivers: base: Support atomic version of attribute_container_device_trigger (Chris Leech) [2011470] - scsi: libiscsi: Fix NOP race condition (Chris Leech) [2011470] - scsi: libiscsi: use sendpage_ok() in iscsi_tcp_segment_map() (Chris Leech) [2011470] - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling getpeername() (Chris Leech) [2011470] - scsi: iscsi: Do not put host in iscsi_set_flashnode_param() (Chris Leech) [2011470] - scsi: iscsi: Register sysfs for workqueue iscsi_destroy (Chris Leech) [2011470] - scsi: iscsi: Remove sessdestroylist (Chris Leech) [2011470] - scsi: iscsi: Optimize work queue flush use (Chris Leech) [2011470] - scsi: iscsi: Delay freeing target_id (Chris Leech) [2011470] - scsi: iscsi: Change iSCSI workqueue max_active back to 1 (Chris Leech) [2011470] - scsi: iscsi: Fix reference count leak in iscsi_boot_create_kobj (Chris Leech) [2011470]- scsi: qedf: Fix error codes in qedf_alloc_global_queues() (Nilesh Javali) [1983908] - scsi: qedf: Add check to synchronize abort and flush (Nilesh Javali) [1983908] - scsi: qedf: Use DEVICE_ATTR_RO() macro (Nilesh Javali) [1983908] - scsi: qedf: Use vzalloc() instead of vmalloc()/memset(0) (Nilesh Javali) [1983908] - scsi: qedf: Drop unnecessary NULL checks after container_of() (Nilesh Javali) [1983908] - scsi: qedf: Use devlink to report errors and recovery (Nilesh Javali) [1983908] - scsi: qedf: Enable devlink support (Nilesh Javali) [1983908] - scsi: qedf: Remove unused include of linux/version.h (Nilesh Javali) [1983908] - qed: implement devlink dump (Nilesh Javali) [1983908] - qed*: make use of devlink recovery infrastructure (Nilesh Javali) [1983908] - qed: use devlink logic to report errors (Nilesh Javali) [1983908] - qed: health reporter init deinit seq (Nilesh Javali) [1983908] - qed: implement devlink info request (Nilesh Javali) [1983908] - qed/qede: make devlink survive recovery (Nilesh Javali) [1983908] - qed: move out devlink logic into a new file (Nilesh Javali) [1983908] - i40e: fix endless loop under rtnl (Stefan Assmann) [1903921] - ovl: fix missing negative dentry check in ovl_rename() (Miklos Szeredi) [2010887] {CVE-2021-20321} - [RHEL8.6 BZ 1849234] cifs: report error instead of invalid when revalidating a dentry fails (Ronnie Sahlberg) [1849234] - mei: me: emmitsburg workstation DID (David Arcari) [2014195] - redhat/configs: Add CONFIG_INTEL_QEP (Prarit Bhargava) [1783559] - redhat/configs: Add CONFIG_COUNTER (Prarit Bhargava) [1783559] - counter: Rename counter_count_function to counter_function (Prarit Bhargava) [1783559] - counter: Rename counter_signal_value to counter_signal_level (Prarit Bhargava) [1783559] - counter: Standardize to ERANGE for limit exceeded errors (Prarit Bhargava) [1783559] - counter: intel-qep: Remove linux/bitops.h include (Prarit Bhargava) [1783559] - counter: intel-qep: Use to_pci_dev() helper (Prarit Bhargava) [1783559] - counter: intel-qep: Mark PM callbacks with __maybe_unused (Prarit Bhargava) [1783559] - counter: Add support for Intel Quadrature Encoder Peripheral (Prarit Bhargava) [1783559] - counter: Simplify the count_read and count_write callbacks (Prarit Bhargava) [1783559] - drivers/counter: Add SPDX license identifier - Makefile/Kconfig (Prarit Bhargava) [1783559] - counter: Introduce the Generic Counter interface (Prarit Bhargava) [1783559] - bpf: Fix integer overflow in prealloc_elems_and_freelist() (Yauheni Kaliuta) [2010492] {CVE-2021-41864} - audit: move put_tree() to avoid trim_trees refcount underflow and UAF (Richard Guy Briggs) [1978123] - tpm: ibmvtpm: Avoid error message when process gets signal while waiting (Štěpán Horáček) [1981473] - efi/tpm: Differentiate missing and invalid final event log table. (Štěpán Horáček) [1981473] - tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status() (Štěpán Horáček) [1981473] - tpm_tis: Use DEFINE_RES_MEM() to simplify code (Štěpán Horáček) [1981473] - tpm: fix some doc warnings in tpm1-cmd.c (Štěpán Horáček) [1981473] - tpm_tis_spi: add missing SPI device ID entries (Štěpán Horáček) [1981473] - tpm: add longer timeout for TPM2_CC_VERIFY_SIGNATURE (Štěpán Horáček) [1981473] - tpm_tis_spi: set default probe function if device id not match (Štěpán Horáček) [1981473] - tpm_crb: Use IOMEM_ERR_PTR when function returns iomem (Štěpán Horáček) [1981473] - tools/testing/scatterlist: Fix overflow of max segment size (Rafael Aquini) [2016426] - drm: Remove SCATTERLIST_MAX_SEGMENT (Rafael Aquini) [2016426] - lib/scatterlist: Fix wrong update of orig_nents (Rafael Aquini) [2016426] - lib/scatterlist: Provide a dedicated function to support table append (Rafael Aquini) [2016426] - tools/testing/scatterlist: Test dynamic __sg_alloc_table_from_pages (Rafael Aquini) [2016426] - tools/testing/scatterlist: Fix test to compile and run (Rafael Aquini) [2016426] - tools/testing/scatterlist: Show errors in human readable form (Rafael Aquini) [2016426] - tools/testing/scatterlist: Rejuvenate bit-rotten test (Rafael Aquini) [2016426] - Kconfig.debug: drop selecting non-existing HARDLOCKUP_DETECTOR_ARCH (Rafael Aquini) [2016426] - buildid: only consider GNU notes for build ID parsing (Rafael Aquini) [2016426] - lib/decompressors: remove set but not used variabled 'level' (Rafael Aquini) [2016426] - lib/math/rational.c: fix divide by zero (Rafael Aquini) [2016426] - lockdep/selftests: Fix selftests vs PROVE_RAW_LOCK_NESTING (Rafael Aquini) [2016426] - kunit: Fix result propagation for parameterised tests (Rafael Aquini) [2016426] - bug: Remove redundant condition check in report_bug (Rafael Aquini) [2016426] - zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of dfltcc_syms.c (Rafael Aquini) [2016426] - zlib: export S390 symbols for zlib modules (Rafael Aquini) [2016426] - lib/crc32test: remove extra local_irq_disable/enable (Rafael Aquini) [2016426] - random32: add a selftest for the prandom32 code (Rafael Aquini) [2016426] - random32: add noise from network and scheduling activity (Rafael Aquini) [2016426] - random32: make prandom_u32() output unpredictable (Rafael Aquini) [2016426] - lib: Correct comment of prandom_seed (Rafael Aquini) [2016426] - lib/crc32.c: fix trivial typo in preprocessor condition (Rafael Aquini) [2016426] - lib/crc: Use consistent naming for CRC-32 polynomials (Rafael Aquini) [2016426] - lib/crc: Move polynomial definition to separate header (Rafael Aquini) [2016426] - kstrto*: do not describe simple_strto*() as obsolete/replaced (Rafael Aquini) [2016426] - kstrto*: correct documentation references to simple_strto*() (Rafael Aquini) [2016426] - kernel.h: update comment about simple_strto() functions (Rafael Aquini) [2016426] - lib/bitmap.c: fix bitmap_cut() for partial overlapping case (Rafael Aquini) [2016426] - devres: keep both device name and resource name in pretty name (Rafael Aquini) [2016426] - crc-t10dif: Fix potential crypto notify dead-lock (Rafael Aquini) [2016426] - vsprintf: don't obfuscate NULL and error pointers (Rafael Aquini) [2016426] - lib/stackdepot.c: fix global out-of-bounds in stack_slabs (Rafael Aquini) [2016426] - lib/scatterlist.c: adjust indentation in __sg_alloc_table (Rafael Aquini) [2016426] - lib/stackdepot: Fix outdated comments (Rafael Aquini) [2016426] - lib/test_kasan.c: fix memory leak in kmalloc_oob_krealloc_more() (Rafael Aquini) [2016426] - lib: Remove select of inexistant GENERIC_IO (Rafael Aquini) [2016426] - lib: test_user_copy: style cleanup (Rafael Aquini) [2016426] - usercopy: Add parentheses around assignment in test_copy_struct_from_user (Rafael Aquini) [2016426] - lib: textsearch: fix escapes in example code (Rafael Aquini) [2016426] - Partially revert "kfifo: fix kfifo_alloc() and kfifo_init()" (Rafael Aquini) [2016426] - lib: logic_pio: Fix RCU usage (Rafael Aquini) [2016426] - lib/test_overflow.c: avoid tainting the kernel and fix wrap size (Rafael Aquini) [2016426] - lib/test_string.c: avoid masking memset16/32/64 failures (Rafael Aquini) [2016426] - lib/scatterlist: Fix mapping iterator when sg->offset is greater than PAGE_SIZE (Rafael Aquini) [2016426] - lib/mpi: Fix karactx leak in mpi_powm (Rafael Aquini) [2016426] - sbitmap: fix improper use of smp_mb__before_atomic() (Rafael Aquini) [2016426] - kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice. (Rafael Aquini) [2016426] - lib/div64.c: off by one in shift (Rafael Aquini) [2016426] - assoc_array: Fix shortcut creation (Rafael Aquini) [2016426] - lib/test_kmod.c: potential double free in error handling (Rafael Aquini) [2016426] - devres: always use dev_name() in devm_ioremap_resource() (Rafael Aquini) [2016426] - lib: fix build failure in CONFIG_DEBUG_VIRTUAL test (Rafael Aquini) [2016426] - test_firmware: fix error return getting clobbered (Rafael Aquini) [2016426] - lib: Fix ia64 bootloader linkage (Rafael Aquini) [2016426] - lib/test_hexdump.c: fix failure on big endian cpu (Rafael Aquini) [2016426] - hv_utils: Set the maximum packet size for VSS driver to the length of the receive buffer (Cathy Avery) [2012842] - scsi: storvsc: Log TEST_UNIT_READY errors as warnings (Cathy Avery) [2012842] - scsi: storvsc: Correctly handle multiple flags in srb_status (Cathy Avery) [2012842] - scsi: storvsc: Update error logging (Cathy Avery) [2012842] - scsi: storvsc: Miscellaneous code cleanups (Cathy Avery) [2012842] - scsi: storvsc: Use blk_mq_unique_tag() to generate requestIDs (Cathy Avery) [2012842] - Drivers: hv: vmbus: Copy packets sent by Hyper-V out of the ring buffer (Cathy Avery) [2012842] - scsi: core: Fix hang of freezing queue between blocking and running device (Ewan D. Milne) [2012323] - scsi: core: Fix capacity set to zero after offlinining device (Ewan D. Milne) [2012323] - scsi: sr: Return correct event when media event code is 3 (Ewan D. Milne) [2012323] - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO (Ewan D. Milne) [2012323] - scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach() (Ewan D. Milne) [2012323] - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid (Ewan D. Milne) [2012323] - scsi: core: Fix the documentation of the scsi_execute() time parameter (Ewan D. Milne) [2012323] - scsi: core: Retry I/O for Notify (Enable Spinup) Required error (Ewan D. Milne) [2012323] - scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART) (Ewan D. Milne) [2012323] - scsi: core: Inline scsi_mq_alloc_queue() (Ewan D. Milne) [2012323] - scsi: sr: Return appropriate error code when disk is ejected (Ewan D. Milne) [2012323] - scsi: core: Only put parent device if host state differs from SHOST_CREATED (Ewan D. Milne) [2012323] - scsi: core: Put .shost_dev in failure path if host state changes to RUNNING (Ewan D. Milne) [2012323] - scsi: core: Fix failure handling of scsi_add_host_with_dma() (Ewan D. Milne) [2012323] - scsi: core: Fix error handling of scsi_host_alloc() (Ewan D. Milne) [2012323] - scsi: st: Return error code in st_scsi_execute() (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Retry RTPG on a different path after failure (Ewan D. Milne) [2012323] - scsi: scsi_transport_fc: Remove double FC_FPORT_DELETED in mask creation (Ewan D. Milne) [2012323] - scsi: core: Fix a comment in function scsi_host_dev_release() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Drop if with an always false condition (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd_per_lun, set to max_queue (Ewan D. Milne) [2012323] - scsi: sd: Introduce a new local variable in sd_check_events() (Ewan D. Milne) [2012323] - scsi: core: Modify the scsi_send_eh_cmnd() return value for the SDEV_BLOCK case (Ewan D. Milne) [2012323] - scsi: core: Rename scsi_softirq_done() into scsi_complete() (Ewan D. Milne) [2012323] - scsi: core: Remove an incorrect comment (Ewan D. Milne) [2012323] - scsi: core: Make the scsi_alloc_sgtables() documentation more accurate (Ewan D. Milne) [2012323] - scsi: scsi_dh_alua: Prevent duplicate pg info print in alua_rtpg() (Ewan D. Milne) [2012323] - scsi: core: scsi_host_cmd_pool is declared twice (Ewan D. Milne) [2012323] - scsi: core: Remove duplicate declarations (Ewan D. Milne) [2012323] - scsi: core: Fix comment typo (Ewan D. Milne) [2012323] - scsi: scsi_dh: Fix a typo (Ewan D. Milne) [2012323] - scsi: sd: Fix function name in header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Place function name into header (Ewan D. Milne) [2012323] - scsi: sd_zbc: Update write pointer offset cache (Ewan D. Milne) [2012323] - scsi: st: Fix a use after free in st_open() (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix cmd duration calculation (Ewan D. Milne) [2012323] - scsi: core: Set shost as hctx driver_data (Ewan D. Milne) [2012323] - scsi: scsi_debug: Add new defer type for mq_poll (Ewan D. Milne) [2012323] - scsi: scsi_debug: mq_poll support (Ewan D. Milne) [2012323] - scsi: core: Add mq_poll support to SCSI layer (Ewan D. Milne) [2012323] - scsi: sd: Remove obsolete variable in sd_remove() (Ewan D. Milne) [2012323] - scsi: handle zone resources errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Fix scp is NULL errors (Ewan D. Milne) [2012323] - scsi: scsi_debug: Improve command duration calculation (Ewan D. Milne) [2012323] - x86/platform: Increase maximum GPIO number for X86_64 (David Arcari) [2016796] - pinctrl: pinconf-generic: Add function parameter description 'pctldev' (David Arcari) [2016796] - pinctrl: core: Remove duplicated word from devm_pinctrl_unregister() (David Arcari) [2016796] - pinctrl: tigerlake: Fix GPIO mapping for newer version of software (David Arcari) [2016796] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [2016796] - docs: update pin-control.rst references (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (part 2) (David Arcari) [2016796] - pinctrl: core: Show pin numbers for the controllers with base = 0 (David Arcari) [2016796] - pinctrl: Add PIN_CONFIG_MODE_PWM to enum pin_config_param (David Arcari) [2016796] - pinctrl: Introduce MODE group in enum pin_config_param (David Arcari) [2016796] - pinctrl: Keep enum pin_config_param ordered by name (David Arcari) [2016796] - pinctrl: core: Fix kernel doc string for pin_get_name() (David Arcari) [2016796] - pinctrl: intel: check REVID register value for device presence (David Arcari) [2016796] - pinctrl: intel: No need to disable IRQs in the handler (David Arcari) [2016796] - pinctrl: core: Set ret to 0 when group is skipped (David Arcari) [2016796] - pinctrl: core: Handling pinmux and pinconf separately (David Arcari) [2016796] - Documentation: rename pinctl to pin-control (David Arcari) [2016796] - pinctrl: pinmux: Add pinmux-select debugfs file (David Arcari) [2016796] - pinctrl: use to octal permissions for debugfs files (David Arcari) [2016796] - pinctrl: intel: Show the GPIO base calculation explicitly (David Arcari) [2016796] - pinctrl: pinmux: add function selector to pinmux-functions (David Arcari) [2016796] - pinctrl: intel: Convert capability list to features (David Arcari) [2016796] - pinctrl: intel: Drop unnecessary check for predefined features (David Arcari) [2016796] - pinctrl: intel: Split intel_pinctrl_add_padgroups() for better maintenance (David Arcari) [2016796] - pinctrl: remove empty lines in pinctrl subsystem (David Arcari) [2016796] - pinctrl: intel: Actually disable Tx and Rx buffers on GPIO request (David Arcari) [2016796] - pinctrl: Remove hole in pinctrl_gpio_range (David Arcari) [2016796] - pinctrl: core: Add missing #ifdef CONFIG_GPIOLIB (David Arcari) [2016796] - pinctrl: intel: Set default bias in case no particular value given (David Arcari) [2016796] - pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm (David Arcari) [2016796] - pinctrl: core: print gpio in pins debugfs file (David Arcari) [2016796] - pinctrl: pinmux: Add some missing parameter descriptions (David Arcari) [2016796] - pinctrl: core: Fix a bunch of kerneldoc issues (David Arcari) [2016796] - pinctrl: Define of_pinctrl_get() dummy for !PINCTRL (David Arcari) [2016796] - pinctrl: core: Remove extra kref_get which blocks hogs being freed (David Arcari) [2016796] - pinctrl: Export some needed symbols at module load time (David Arcari) [2016796] - pinctrl: core: Add pinctrl_select_default_state() and export it (David Arcari) [2016796] - pinctrl: make pinconf.h self-contained (David Arcari) [2016796] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [2016796] - pinctrl: remove pinctrl/machine.h inclusion from pinctrl/pinconf.h (David Arcari) [2016796] - pinctrl: Document pin_config_group_get() return codes like pin_config_get() (David Arcari) [2016796] - pinctrl: intel: Convert to use SPDX identifier (David Arcari) [2016796] - mm/swapfile: fix an integer overflow in swap_show() (Rafael Aquini) [2008812] - mm: swapfile: fix /proc/swaps heading and Size/Used/Priority alignment (Rafael Aquini) [2008812] - Makefile: update early devel phase flag (Augusto Caringi) [2000679] - KVM: s390: Enable specification exception interpretation (Thomas Huth) [1984894] - KVM: x86: Update vCPU's hv_clock before back to guest when tsc_offset is adjusted (Marcelo Tosatti) [2007928] - ibmvnic: Remove the proper scrq flush (Desnes A. Nunes do Rosario) [2014097] - selftests/net/ipsec: Add test for xfrm_spdattr_type_t (Hangbin Liu) [2018056] - selftest/net/ipsec.c: Remove unneeded semicolon (Hangbin Liu) [2018056] - selftest/net/xfrm: Add test for ipsec tunnel (Hangbin Liu) [2018056] - ipv6: add ip6_sock_set_v6only (Josef Oskera) [2008908] - ipv6: When forwarding count rx stats on the orig netdev (Hangbin Liu) [2017704] - ipv6: make exception cache less predictible (Hangbin Liu) [2017704] - ipv6: use siphash in rt6_exception_hash() (Hangbin Liu) [2017704] - ipv6: use jhash2() in rt6_exception_hash() (Hangbin Liu) [2017704] - net/l2tp: Fix reference count leak in l2tp_udp_recv_core (Guillaume Nault) [2020380] - netfilter: nft_flow_offload: fix underflow in flowtable reference counter (Phil Sutter) [2008551] - net: xfrm: Fix end of loop tests for list_for_each_entry (Sabrina Dubroca) [2019168] - xfrm: Fix error reporting in xfrm_state_construct. (Sabrina Dubroca) [2019168]- nvme-mpath: replace direct_make_request with generic_make_request (Gopal Tiwari) [2013505] - net-sysfs: try not to restart the syscall if it will fail eventually (Antoine Tenart) [2016005] - net: mana: Fix error handling in mana_create_rxq() (Mohammed Gamal) [2011886] - net: mana: Prefer struct_size over open coded arithmetic (Mohammed Gamal) [2011886] - net: mana: Add WARN_ON_ONCE in case of CQE read overflow (Mohammed Gamal) [2011886] - net: mana: Add support for EQ sharing (Mohammed Gamal) [2011886] - net: mana: Move NAPI from EQ to CQ (Mohammed Gamal) [2011886] - net: mana: Fix a memory leak in an error handling path in 'mana_create_txq()' (Mohammed Gamal) [2011886] - net: mana: Use struct_size() in kzalloc() (Mohammed Gamal) [2011886] - vmxnet3: switch from 'pci_' to 'dma_' API (Kamal Heib) [2013202] - vmxnet3: update to version 6 (Kamal Heib) [2013202] - vmxnet3: increase maximum configurable mtu to 9190 (Kamal Heib) [2013202] - vmxnet3: set correct hash type based on rss information (Kamal Heib) [2013202] - vmxnet3: add support for ESP IPv6 RSS (Kamal Heib) [2013202] - vmxnet3: remove power of 2 limitation on the queues (Kamal Heib) [2013202] - vmxnet3: add support for 32 Tx/Rx queues (Kamal Heib) [2013202] - vmxnet3: prepare for version 6 changes (Kamal Heib) [2013202] - vmxnet3: fix cksum offload issues for tunnels with non-default udp ports (Kamal Heib) [2013202] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [2013202] - net: Use skb_frag_off accessors (Kamal Heib) [2013202] - net: Use skb accessors in network drivers (Kamal Heib) [2013202] - vmxnet3: Remove call to memset after dma_alloc_coherent (Kamal Heib) [2013202] - cgroup/debug: Fix lockdep splat with "pK" format specifier (Waiman Long) [2007919] - configs: Enable FC_APPID (Ewan D. Milne) [1643346] - configs: Enable BLK_CGROUP_FC_APPID (Ewan D. Milne) [1643346] - scsi: nvme: Added a new sysfs attribute appid_store (Ewan D. Milne) [1643346] - scsi: blkcg: Add app identifier support for blkcg (Ewan D. Milne) [1643346] - scsi: cgroup: Add cgroup_get_from_id() (Ewan D. Milne) [1643346] - perf iostat: Fix Segmentation fault from NULL 'struct perf_counts_values *' (Michael Petlan) [2003981] - perf iostat: Use system-wide mode if the target cpu_list is unspecified (Michael Petlan) [2003981] - perf beauty: Update copy of linux/socket.h with the kernel sources (Michael Petlan) [2003981] - perf test: Fix non-bash issue with stat bpf counters (Michael Petlan) [2003981] - perf machine: Fix refcount usage when processing PERF_RECORD_KSYMBOL (Michael Petlan) [2003981] - perf metricgroup: Return error code from metricgroup__add_metric_sys_event_iter() (Michael Petlan) [2003981] - perf metricgroup: Fix find_evsel_group() event selector (Michael Petlan) [2003981] - perf session: Correct buffer copying when peeking events (Michael Petlan) [2003981] - perf env: Fix memory leak of bpf_prog_info_linear member (Michael Petlan) [2003981] - perf symbol-elf: Fix memory leak by freeing sdt_note.args (Michael Petlan) [2003981] - perf stat: Honor event config name on --no-merge (Michael Petlan) [2003981] - perf test: Test 17 fails with make LIBPFM4=1 on s390 z/VM (Michael Petlan) [2003981] - perf stat: Fix error return code in bperf__load() (Michael Petlan) [2003981] - perf record: Move probing cgroup sampling support (Michael Petlan) [2003981] - perf probe: Fix NULL pointer dereference in convert_variable_location() (Michael Petlan) [2003981] - perf tools: Copy uapi/asm/perf_regs.h from the kernel for MIPS (Michael Petlan) [2003981] - perf stat: Fix error check for bpf_program__attach (Michael Petlan) [2003981] - perf jevents: Fix getting maximum number of fds (Michael Petlan) [2003981] - perf stat: Skip evlist__[enable|disable] when all events uses BPF (Michael Petlan) [2003981] - perf script: Add missing PERF_IP_FLAG_CHARS for VM-Entry and VM-Exit (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix warning display (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix Array TypeError (Michael Petlan) [2003981] - perf scripts python: exported-sql-viewer.py: Fix copy to clipboard from Top Calls by elapsed Time report (Michael Petlan) [2003981] - perf parse-events: Check if the software events array slots are populated (Michael Petlan) [2003981] - perf tools: Add 'cgroup-switches' software event (Michael Petlan) [2003981] - perf intel-pt: Remove redundant setting of ptq->insn_len (Michael Petlan) [2003981] - perf intel-pt: Fix sample instruction bytes (Michael Petlan) [2003981] - perf intel-pt: Fix transaction abort handling (Michael Petlan) [2003981] - perf test: Fix libpfm4 support (63) test error for nested event groups (Michael Petlan) [2003981] - perf buildid-list: Initialize zstd_data (Michael Petlan) [2003981] - tools build: Fix quiet cmd indentation (Michael Petlan) [2003981] - perf tools: Fix a build error on arm64 with clang (Michael Petlan) [2003981] - perf tools: Fix dynamic libbpf link (Michael Petlan) [2003981] - perf session: Fix swapping of cpu_map and stat_config records (Michael Petlan) [2003981] - perf jevents: Silence warning for ArchStd files (Michael Petlan) [2003981] - perf build: Defer printing detected features to the end of all feature checks (Michael Petlan) [2003981] - tools build: Allow deferring printing the results of feature detection (Michael Petlan) [2003981] - perf build: Regenerate the FEATURE_DUMP file after extra feature checks (Michael Petlan) [2003981] - perf session: Dump PERF_RECORD_TIME_CONV event (Michael Petlan) [2003981] - perf session: Add swap operation for event TIME_CONV (Michael Petlan) [2003981] - perf jit: Let convert_timestamp() to be backwards-compatible (Michael Petlan) [2003981] - perf tools: Change fields type in perf_record_time_conv (Michael Petlan) [2003981] - perf tools: Enable libtraceevent dynamic linking (Michael Petlan) [2003981] - perf report: Print percentage of each event statistics (Michael Petlan) [2003981] - perf report: Make --skip-empty as default (Michael Petlan) [2003981] - perf report: Add --skip-empty option to suppress 0 event stat (Michael Petlan) [2003981] - perf report: Show event sample counts in --stat output (Michael Petlan) [2003981] - perf hists: Split hists_stats from events_stats (Michael Petlan) [2003981] - perf top: Use evlist->events_stat to count events (Michael Petlan) [2003981] - perf data: Add JSON export (Michael Petlan) [2003981] - perf stat: Introduce bpf_counter_ops->disable() (Michael Petlan) [2003981] - perf stat: Introduce ':b' modifier (Michael Petlan) [2003981] - perf stat: Introduce config stat.bpf-counter-events (Michael Petlan) [2003981] - perf bpf: check perf_attr_map is compatible with the perf binary (Michael Petlan) [2003981] - perf util: Move bpf_perf definitions to a libperf header (Michael Petlan) [2003981] - perf tools: Update topdown documentation to permit rdpmc calls (Michael Petlan) [2003981] - perf tools: Add a build-test variant to use in builds from a tarball (Michael Petlan) [2003981] - perf arm64: Fix off-by-one directory paths. (Michael Petlan) [2003981] - perf: Update .gitignore file (Michael Petlan) [2003981] - perf stat: Enable iostat mode for x86 platforms (Michael Petlan) [2003981] - perf stat: Helper functions for PCIe root ports list in iostat mode (Michael Petlan) [2003981] - perf stat: Basic support for iostat in perf (Michael Petlan) [2003981] - libperf xyarray: Add bounds checks to xyarray__entry() (Michael Petlan) [2003981] - libperf: Add support for user space counter access (Michael Petlan) [2003981] - libperf tests: Add support for verbose printing (Michael Petlan) [2003981] - libperf: Add evsel mmap support (Michael Petlan) [2003981] - tools include: Add an initial math64.h (Michael Petlan) [2003981] - perf beauty: Fix fsconfig generator (Michael Petlan) [2003981] - perf record: Improve 'Workload failed' message printing events + what was exec'ed (Michael Petlan) [2003981] - perf evlist: Add a method to return the list of evsels as a string (Michael Petlan) [2003981] - perf annotate: Fix sample events lost in stdio mode (Michael Petlan) [2003981] - perf vendor events amd: Add Zen3 events (Michael Petlan) [2003981] - perf vendor events amd: Use 0x02x format for event code and umask (Michael Petlan) [2003981] - perf vendor events amd: Use lowercases for all the eventcodes and umasks (Michael Petlan) [2003981] - perf vendor events amd: Fix broken L2 Cache Hits from L2 HWPF metric (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L3 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L2 metrics (Michael Petlan) [2003981] - perf vendor events arm64: Add Hisi hip08 L1 metrics (Michael Petlan) [2003981] - perf pmu: Add pmu_events_map__find() function to find the common PMU map for the system (Michael Petlan) [2003981] - perf test: Handle metric reuse in pmu-events parsing test (Michael Petlan) [2003981] - perf metricgroup: Make find_metric() public with name change (Michael Petlan) [2003981] - perf mem-events: Remove unnecessary 'struct mem_info' forward declaration (Michael Petlan) [2003981] - perf evsel: Remove duplicate 'struct target' forward declaration (Michael Petlan) [2003981] - perf annotate: Add --demangle and --demangle-kernel (Michael Petlan) [2003981] - perf tools: Preserve identifier id in OCaml demangler (Michael Petlan) [2003981] - perf daemon: Remove duplicate includes (Michael Petlan) [2003981] - perf tools: Remove duplicate struct forward declarations (Michael Petlan) [2003981] - perf test: Add CSV summary test (Michael Petlan) [2003981] - perf stat: Align CSV output for summary mode (Michael Petlan) [2003981] - perf test: Add a shell test for 'perf stat --bpf-counters' new option (Michael Petlan) [2003981] - perf stat: Measure 't0' and 'ref_time' after enable_counters() (Michael Petlan) [2003981] - perf stat: Introduce 'bperf' to share hardware PMCs with BPF (Michael Petlan) [2003981] - perf tools: Fix various typos in comments (Michael Petlan) [2003981] - perf test: Add 30s timeout for wait for daemon start. (Michael Petlan) [2003981] - perf test: Cleanup daemon if test is interrupted. (Michael Petlan) [2003981] - perf test: Remove unused argument (Michael Petlan) [2003981] - perf stat: Improve readability of shadow stats (Michael Petlan) [2003981] - perf stat: Elaborate use cases for the -n/--null command line option (Michael Petlan) [2003981] - perf evlist: Change the COMM when preparing the workload (Michael Petlan) [2003981] - perf machine: Assign boolean values to a bool variable (Michael Petlan) [2003981] - perf tools: use ARRAY_SIZE (Michael Petlan) [2003981] - perf stat: Fixup __perf_stat_evsel__is() prefix (Michael Petlan) [2003981] - perf script: Fixup 'struct evsel_script' method prefix (Michael Petlan) [2003981] - perf symbols: Fix dso__fprintf_symbols_by_name() to return the number of printed chars (Michael Petlan) [2003981] - tools include: Add __sum16 and __wsum definitions. (Michael Petlan) [2003981] - perf annotate: Show full source location with 'l' hotkey (Michael Petlan) [2003981] - perf bench: Fix misspellings using codespell (Michael Petlan) [2003981] - perf config: Add annotate.demangle{,_kernel} (Michael Petlan) [2003981] - perf bpf: Minor whitespace cleanup. (Michael Petlan) [2003981] - perf tools: Enable warnings when compiling BPF programs (Michael Petlan) [2003981] - perf skel: Remove some unused variables. (Michael Petlan) [2003981] - perf report: Create option to disable raw event ordering (Michael Petlan) [2003981] - perf metric: Remove unneeded semicolon (Michael Petlan) [2003981] - perf cs-etm: Detect pid in VMID for kernel running at EL2 (Michael Petlan) [2003981] - perf cs-etm: Add helper cs_etm__get_pid_fmt() (Michael Petlan) [2003981] - perf cs-etm: Support PID tracing in config (Michael Petlan) [2003981] - perf cs-etm: Fix bitmap for option (Michael Petlan) [2003981] - perf cs-etm: Update ETM metadata format (Michael Petlan) [2003981] - perf vendor events power9: Remove unsupported metrics (Michael Petlan) [2003981] - perf buildid-cache: Add test for PE executable (Michael Petlan) [2003981] - perf docs: Add man pages to see also (Michael Petlan) [2003981] - perf tools: Generate mips syscalls_n64.c syscall table (Michael Petlan) [2003981] - perf s390: Move syscall.tbl check into check-headers.sh (Michael Petlan) [2003981] - perf tools: Support MIPS unwinding and dwarf-regs (Michael Petlan) [2003981] - tools: do not include scripts/Kbuild.include (Michael Petlan) [2003981] - tools: Allow proper CC/CXX/... override with LLVM=1 in Makefile.include (Michael Petlan) [2003981] - perf intel-pt: Use aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix M2M event umask for Ice Lake server (Michael Petlan) [2003981] - perf/x86/intel/uncore: Fix a kernel WARNING triggered by maxcpus=1 (Michael Petlan) [2003981] - perf: Fix data race between pin_count increment/decrement (Michael Petlan) [2003981] - perf/x86: Avoid touching LBR_TOS MSR for Arch LBR (Michael Petlan) [2003981] - perf/x86: Allow for 8running into P4 specific code (Michael Petlan) [2003981] - perf: Add support for event removal on exec (Michael Petlan) [2003981] - perf: Support only inheriting events if cloned with CLONE_THREAD (Michael Petlan) [2003981] - perf: Apply PERF_EVENT_IOC_MODIFY_ATTRIBUTES to children (Michael Petlan) [2003981] - perf: Rework perf_event_exit_event() (Michael Petlan) [2003981] - perf: Cap allocation order at aux_watermark (Michael Petlan) [2003981] - perf/x86/intel/uncore: Enable IIO stacks to PMON mapping for multi-segment SKX (Michael Petlan) [2003981] - perf core: Allocate perf_event in the target node memory (Michael Petlan) [2003981] - perf core: Add a kmem_cache for struct perf_event (Michael Petlan) [2003981] - perf core: Allocate perf_buffer in the target node memory (Michael Petlan) [2003981] - x86: Remove unusual Unicode characters from comments (Michael Petlan) [2003981] - redhat/configs: Add CONFIG_TIMERLAT_TRACER (Jerome Marchand) [1979382] - redhat/configs: Add CONFIG_OSNOISE_TRACER (Jerome Marchand) [1979382] - tracing/osnoise: Fix missed cpus_read_unlock() in start_per_cpu_kthreads() (Jerome Marchand) [1979382] - tracing: Replace deprecated CPU-hotplug functions. (Jerome Marchand) [1979382] - trace/osnoise: Print a stop tracing message (Jerome Marchand) [1979382] - trace/timerlat: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - trace/osnoise: Add a header with PREEMPT_RT additional fields (Jerome Marchand) [1979382] - tracing: Quiet smp_processor_id() use in preemptable warning in hwlat (Jerome Marchand) [1979382] - trace/timerlat: Fix indentation on timerlat_main() (Jerome Marchand) [1979382] - trace/osnoise: Make 'noise' variable s64 in run_osnoise() (Jerome Marchand) [1979382] - tracing: Fix spelling in osnoise tracer "interferences" -> "interference" (Jerome Marchand) [1979382] - Documentation: Fix a typo on trace/osnoise-tracer (Jerome Marchand) [1979382] - trace/osnoise: Fix return value on osnoise_init_hotplug_support (Jerome Marchand) [1979382] - trace/osnoise: Make interval u64 on osnoise_main (Jerome Marchand) [1979382] - trace/osnoise: Fix 'no previous prototype' warnings (Jerome Marchand) [1979382] - tracing: Have osnoise_main() add a quiescent state for task rcu (Jerome Marchand) [1979382] - trace/osnoise: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Support hotplug operations (Jerome Marchand) [1979382] - trace/hwlat: Protect kdata->kthread with get/put_online_cpus (Jerome Marchand) [1979382] - trace: Add timerlat tracer (Jerome Marchand) [1979382] - trace: Add osnoise tracer (Jerome Marchand) [1979382] - trace: Add __print_ns_to_secs() and __print_ns_without_secs() helpers (Jerome Marchand) [1979382] - trace/hwlat: Remove printk from sampling loop (Jerome Marchand) [1979382] - trace/hwlat: Use trace_min_max_param for width and window params (Jerome Marchand) [1979382] - trace: Add a generic function to read/write u64 values from tracefs (Jerome Marchand) [1979382] - trace/hwlat: Implement the per-cpu mode (Jerome Marchand) [1979382] - trace/hwlat: Switch disable_migrate to mode none (Jerome Marchand) [1979382] - trace/hwlat: Implement the mode config option (Jerome Marchand) [1979382] - uio_hv_generic: Fix another memory leak in error handling paths (Mohammed Gamal) [2008561] - uio_hv_generic: Fix a memory leak in error handling paths (Mohammed Gamal) [2008561] - mfd: intel-lpss: Add Intel Alder Lake-M PCI IDs (David Arcari) [1929498] - xfs: fix up non-directory creation in SGID directories (Brian Foster) [2004810] - xfs: kill ialloced in xfs_dialloc() (Brian Foster) [2004810] - xfs: spilt xfs_dialloc() into 2 functions (Brian Foster) [2004810] - xfs: move xfs_dialloc_roll() into xfs_dialloc() (Brian Foster) [2004810] - xfs: move on-disk inode allocation out of xfs_ialloc() (Brian Foster) [2004810] - xfs: introduce xfs_dialloc_roll() (Brian Foster) [2004810] - xfs: convert noroom, okalloc in xfs_dialloc() to bool (Brian Foster) [2004810] - xfs: check tp->t_dqinfo value instead of the XFS_TRANS_DQ_DIRTY flag (Brian Foster) [2004810] - scsi: vmw_pvscsi: Set correct residual data length (Cathy Avery) [2012237] - scsi: vmw_pvscsi: MAINTAINERS: Update maintainer (Cathy Avery) [2012237] - treewide: Use fallthrough pseudo-keyword (Cathy Avery) [2012237] - scsi: be2iscsi: Fix use-after-free during IP updates (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix some missing space in some messages (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Remove redundant initialization (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Demote incomplete/non-conformant kernel-doc header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Ensure function follows directly after its header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix beiscsi_phys_port()'s name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Provide missing function name in header (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix incorrect naming of beiscsi_iface_config_vlan() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Mark beiscsi_attrs with static keyword (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()" (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs() (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Correct misdocumentation of function param 'ep' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Add missing function parameter description (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix misdocumentation of 'pcontext' (Maurizio Lombardi) [1984347] - scsi: be2iscsi: Fix API/documentation slip (Maurizio Lombardi) [1984347] - powerpc/spinlock: Properly define pv_spinlocks_init() (Waiman Long) [2014363] - ACPI: Pass the same capabilities to the _OSC regardless of the query flag (Mark Langsdorf) [1982319] - Revert "[acpi] ACPI: sleep: Put the FACS table after using it" (Mark Langsdorf) [1982319] - ACPICA: Clean up context mutex during object deletion (Mark Langsdorf) [1982319] - ACPI: power: Refine turning off unused power resources (Mark Langsdorf) [1982319] - ACPI: NFIT: Fix support for variable 'SPA' structure size (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a possible memory leak (Mark Langsdorf) [1982319] - ACPI: custom_method: fix potential use-after-free issue (Mark Langsdorf) [1982319] - ACPI: irq: Prevent unregistering of GIC SGIs (Mark Langsdorf) [1982319] - ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe failure (Mark Langsdorf) [1982319] - ACPI: video: use native backlight for GA401/GA502/GA503 (Mark Langsdorf) [1982319] - ACPI: APEI: remove redundant assignment to variable rc (Mark Langsdorf) [1982319] - ACPI: utils: Capitalize abbreviations in the comments (Mark Langsdorf) [1982319] - ACPI: utils: Document for_each_acpi_dev_match() macro (Mark Langsdorf) [1982319] - ACPI: bus: Introduce acpi_dev_get() and reuse it in ACPI code (Mark Langsdorf) [1982319] - ACPI: scan: Utilize match_string() API (Mark Langsdorf) [1982319] - ACPI: CPPC: Replace cppc_attr with kobj_attribute (Mark Langsdorf) [1982319] - ACPI: scan: Call acpi_get_object_info() from acpi_set_pnp_ids() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_init_device_object() (Mark Langsdorf) [1982319] - ACPI: scan: Drop sta argument from acpi_add_single_object() (Mark Langsdorf) [1982319] - ACPI: scan: Rearrange checks in acpi_bus_check_add() (Mark Langsdorf) [1982319] - ACPI: scan: Fold acpi_bus_type_and_status() into its caller (Mark Langsdorf) [1982319] - ACPI: video: Check LCD flag on ACPI-reduced-hardware devices (Hans de Goede) [1982319] - ACPI: utils: Add acpi_reduced_hardware() helper (Mark Langsdorf) [1982319] - ACPI: dock: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: sysfs: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: PM: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: custom_method: fix a coding style issue (Mark Langsdorf) [1982319] - ACPI: CPPC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: button: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: battery: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: acpi_pad: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: LPSS: add a missed blank line after declarations (Mark Langsdorf) [1982319] - ACPI: ipmi: remove useless return statement for void function (Mark Langsdorf) [1982319] - ACPI: processor: fix some coding style issues (Mark Langsdorf) [1982319] - ACPI: APD: fix a block comment align issue (Mark Langsdorf) [1982319] - ACPI: AC: fix some coding style issues (Mark Langsdorf) [1982319] - ACPICA: Update version to 20210331 (Mark Langsdorf) [1982319] - ACPICA: IORT: Updates for revision E.b (Mark Langsdorf) [1982319] - ACPICA: iASL: Decode subtable type field for VIOT (Mark Langsdorf) [1982319] - ACPICA: iASL: Add support for CEDT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add support for PHAT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CSI2Bus resource template (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PMTT: add new fields/structures (Mark Langsdorf) [1982319] - ACPICA: CXL 2.0: CEDT: Add new CEDT table (Mark Langsdorf) [1982319] - ACPICA: acpisrc: Add missing conversion for VIOT support (Mark Langsdorf) [1982319] - ACPICA: iASL: Add definitions for the VIOT table (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add SDEV secure access components (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new flags in SRAT (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: HMAT: add new fields/flags (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: NFIT: add Location Cookie field (Mark Langsdorf) [1982319] - ACPICA: Tree-wide: fix various typos and spelling mistakes (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PPTT: add new version of subtable type 1 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: PCCT: add support for subtable type 5 (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Structure (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add CXL ACPI device ID and _CBR object (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: add USB4 capabilities UUID (Mark Langsdorf) [1982319] - ACPICA: ACPI 6.4: Add new predefined objects _BPC, _BPS, and _BPT (Mark Langsdorf) [1982319] - ACPICA: Add parsing for IVRS IVHD 40h and device entry F0h (Mark Langsdorf) [1982319] - ACPI: CPPC: Add emtpy stubs of functions for CONFIG_ACPI_CPPC_LIB unset (Mark Langsdorf) [1982319] - ACPI: scan: Turn off unused power resources during initialization (Mark Langsdorf) [1982319] - ACPI: power: Turn off unused power resources unconditionally (Mark Langsdorf) [1982319] - ACPI: fix various typos in comments (Mark Langsdorf) [1982319] - ACPI: utils: Introduce acpi_evaluation_failure_warn() (Mark Langsdorf) [1982319] - ACPI: processor: perflib: Eliminate redundant status check (Mark Langsdorf) [1982319] - ACPI: Drop unused ACPI_*_COMPONENT definitions and update documentation (Mark Langsdorf) [1982319] - ACPI: sysfs: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: HED: Drop unused ACPI_MODULE_NAME() definition (Mark Langsdorf) [1982319] - ACPI: processor: Get rid of ACPICA message printing (Mark Langsdorf) [1982319] - ACPI: processor: idle: Drop extra prefix from pr_notice() (Mark Langsdorf) [1982319] - ACPI: processor: Remove initialization of static variable (Mark Langsdorf) [1982319] - ACPI: PCI: Replace direct printk() invocations in pci_link.c (Mark Langsdorf) [1982319] - ACPI: PCI: Drop ACPI_PCI_COMPONENT that is not used any more (Mark Langsdorf) [1982319] - ACPI: PCI: Replace ACPI_DEBUG_PRINT() and ACPI_EXCEPTION() (Mark Langsdorf) [1982319] - ACPI: PCI: IRQ: Consolidate printing diagnostic messages (Mark Langsdorf) [1982319] - arm64: compat: Poison the compat sigpage (C. Erastus Toe) [1983849] {CVE-2021-21781} - ARM: ensure the signal page contains defined contents (C. Erastus Toe) [1983849] {CVE-2021-21781} - powerpc/pseries: Fix update of LPAR security flavor after LPM (Steve Best) [1997294] - s390/qeth: Update MACs of LEARNING_SYNC device (Robin Dapp) [1919227] - s390/qeth: Switchdev event handler (Robin Dapp) [1919227] - s390/qeth: Register switchdev event handler (Robin Dapp) [1919227] - PCI: Add pcie_ptm_enabled() (Petr Oros) [2006834] - Revert "PCI: Make pci_enable_ptm() private" (Petr Oros) [2006834] - x86/cpufeatures: Force disable X86_FEATURE_ENQCMD and remove update_pasid() (Jerry Snitselaar) [2004577] - s390: report more CPU capabilities (Robin Dapp) [1984839] - s390/disassembler: add instructions (Robin Dapp) [1984839] - s390/opcodes: rename selhhhr to selfhr (Robin Dapp) [1984839] - s390/disassembler: update opcode table (Robin Dapp) [1984839] - s390/opcodes: add missing instructions to the disassembler (Robin Dapp) [1984839] - CI: Add template for baseline gcov build (Israel Santana Aleman) - futex: Remove unused variable 'vpid' in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - futex: Prevent inconsistent state and exit race (Waiman Long) [2000293] - locking/ww_mutex: Initialize waiter.ww_ctx properly (Waiman Long) [2000293] - futex: Return error code instead of assigning it without effect (Waiman Long) [2000293] - Documentation: seqlock: s/LOCKTYPE/LOCKNAME/g (Waiman Long) [2000293] - lib/test_lockup.c: fix return value of test_lockup_init() (Waiman Long) [2000293] - locking/rwbase: Take care of ordering guarantee for fastpath reader (Waiman Long) [2000293] - locking/rwbase: Extract __rwbase_write_trylock() (Waiman Long) [2000293] - locking/rwbase: Properly match set_and_save_state() to restore_state() (Waiman Long) [2000293] - locking/rtmutex: Fix ww_mutex deadlock check (Waiman Long) [2000293] - locking/rwsem: Add missing __init_rwsem() for PREEMPT_RT (Waiman Long) [2000293] - locking/rtmutex: Return success on deadlock for ww_mutex waiters (Waiman Long) [2000293] - locking/rtmutex: Prevent spurious EDEADLK return caused by ww_mutexes (Waiman Long) [2000293] - locking/rtmutex: Dequeue waiter on ww_mutex deadlock (Waiman Long) [2000293] - locking/rtmutex: Dont dereference waiter lockless (Waiman Long) [2000293] - locking/local_lock: Add PREEMPT_RT support (Waiman Long) [2000293] - locking/spinlock/rt: Prepare for RT local_lock (Waiman Long) [2000293] - locking/rtmutex: Add adaptive spinwait mechanism (Waiman Long) [2000293] - locking/rtmutex: Implement equal priority lock stealing (Waiman Long) [2000293] - preempt: Adjust PREEMPT_LOCK_OFFSET for RT (Waiman Long) [2000293] - locking/rtmutex: Prevent lockdep false positive with PI futexes (Waiman Long) [2000293] - futex: Prevent requeue_pi() lock nesting issue on RT (Waiman Long) [2000293] - futex: Simplify handle_early_requeue_pi_wakeup() (Waiman Long) [2000293] - futex: Reorder sanity checks in futex_requeue() (Waiman Long) [2000293] - futex: Clarify comment in futex_requeue() (Waiman Long) [2000293] - futex: Restructure futex_requeue() (Waiman Long) [2000293] - futex: Correct the number of requeued waiters for PI (Waiman Long) [2000293] - futex: Remove bogus condition for requeue PI (Waiman Long) [2000293] - futex: Clarify futex_requeue() PI handling (Waiman Long) [2000293] - futex: Clean up stale comments (Waiman Long) [2000293] - futex: Validate waiter correctly in futex_proxy_trylock_atomic() (Waiman Long) [2000293] - lib/test_lockup: Adapt to changed variables (Waiman Long) [2000293] - locking/rtmutex: Add mutex variant for RT (Waiman Long) [2000293] - locking/ww_mutex: Implement rtmutex based ww_mutex API functions (Waiman Long) [2000293] - locking/rtmutex: Extend the rtmutex core to support ww_mutex (Waiman Long) [2000293] - locking/ww_mutex: Add rt_mutex based lock type and accessors (Waiman Long) [2000293] - locking/ww_mutex: Add RT priority to W/W order (Waiman Long) [2000293] - locking/ww_mutex: Implement rt_mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out internal lock accesses (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex types (Waiman Long) [2000293] - locking/ww_mutex: Abstract out mutex accessors (Waiman Long) [2000293] - locking/ww_mutex: Abstract out waiter enqueueing (Waiman Long) [2000293] - locking/ww_mutex: Abstract out the waiter iteration (Waiman Long) [2000293] - locking/ww_mutex: Remove the __sched annotation from ww_mutex APIs (Waiman Long) [2000293] - locking/ww_mutex: Split out the W/W implementation logic into kernel/locking/ww_mutex.h (Waiman Long) [2000293] - locking/ww_mutex: Split up ww_mutex_unlock() (Waiman Long) [2000293] - locking/ww_mutex: Gather mutex_waiter initialization (Waiman Long) [2000293] - locking/ww_mutex: Simplify lockdep annotations (Waiman Long) [2000293] - locking/mutex: Make mutex::wait_lock raw (Waiman Long) [2000293] - locking/ww_mutex: Move the ww_mutex definitions from into (Waiman Long) [2000293] - locking/mutex: Move the 'struct mutex_waiter' definition from to the internal header (Waiman Long) [2000293] - locking/mutex: Consolidate core headers, remove kernel/locking/mutex-debug.h (Waiman Long) [2000293] - locking/rtmutex: Squash !RT tasks to DEFAULT_PRIO (Waiman Long) [2000293] - locking/rwlock: Provide RT variant (Waiman Long) [2000293] - locking/spinlock: Provide RT variant (Waiman Long) [2000293] - locking/rtmutex: Provide the spin/rwlock core lock function (Waiman Long) [2000293] - locking/spinlock: Provide RT variant header: (Waiman Long) [2000293] - locking/spinlock: Provide RT specific spinlock_t (Waiman Long) [2000293] - locking/rtmutex: Reduce header dependencies, only include (Waiman Long) [2000293] - rbtree: Split out the rbtree type definitions into (Waiman Long) [2000293] - locking/lockdep: Reduce header dependencies in (Waiman Long) [2000293] - locking/rtmutex: Prevent future include recursion hell (Waiman Long) [2000293] - locking/spinlock: Split the lock types header, and move the raw types into (Waiman Long) [2000293] - locking/rtmutex: Guard regular sleeping locks specific functions (Waiman Long) [2000293] - locking/rtmutex: Prepare RT rt_mutex_wake_q for RT locks (Waiman Long) [2000293] - locking/rtmutex: Use rt_mutex_wake_q_head (Waiman Long) [2000293] - locking/rtmutex: Provide rt_wake_q_head and helpers (Waiman Long) [2000293] - locking/rtmutex: Add wake_state to rt_mutex_waiter (Waiman Long) [2000293] - locking/rwsem: Add rtmutex based R/W semaphore implementation (Waiman Long) [2000293] - locking/rt: Add base code for RT rw_semaphore and rwlock (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_base_is_locked() (Waiman Long) [2000293] - locking/rtmutex: Provide rt_mutex_slowlock_locked() (Waiman Long) [2000293] - locking/rtmutex: Split out the inner parts of 'struct rtmutex' (Waiman Long) [2000293] - locking/rtmutex: Split API from implementation (Waiman Long) [2000293] - locking/rtmutex: Convert macros to inlines (Waiman Long) [2000293] - locking/rtmutex: Remove rt_mutex_is_locked() (Waiman Long) [2000293] - sched/wake_q: Provide WAKE_Q_HEAD_INITIALIZER() (Waiman Long) [2000293] - sched/core: Provide a scheduling point for RT locks (Waiman Long) [2000293] - sched/core: Rework the __schedule() preempt argument (Waiman Long) [2000293] - sched/wakeup: Prepare for RT sleeping spin/rwlocks (Waiman Long) [2000293] - sched/wakeup: Reorganize the current::__state helpers (Waiman Long) [2000293] - sched/wakeup: Introduce the TASK_RTLOCK_WAIT state bit (Waiman Long) [2000293] - sched/wakeup: Split out the wakeup ->__state check (Waiman Long) [2000293] - locking/rtmutex: Set proper wait context for lockdep (Waiman Long) [2000293] - locking/local_lock: Add missing owner initialization (Waiman Long) [2000293] - locking/rtmutex: Use the correct rtmutex debugging config option (Waiman Long) [2000293] - tools/runqslower: Use __state instead of state (Waiman Long) [2000293] - locking/rwsem: Remove an unused parameter of rwsem_wake() (Waiman Long) [2000293] - locking/mutex: Add MUTEX_WARN_ON (Waiman Long) [2000293] - locking/mutex: Introduce __mutex_trylock_or_handoff() (Waiman Long) [2000293] - locking/mutex: Fix HANDOFF condition (Waiman Long) [2000293] - locking/mutex: Use try_cmpxchg() (Waiman Long) [2000293] - sched: Change task_struct::state (Waiman Long) [2000293] - isdn/hisax: Use get_current_state() (Waiman Long) [2000293] - sched,timer: Use __set_current_state() (Waiman Long) [2000293] - sched: Add get_current_state() (Waiman Long) [2000293] - sched,perf,kvm: Fix preemption condition (Waiman Long) [2000293] - sched: Introduce task_is_running() (Waiman Long) [2000293] - sched: Unbreak wakeups (Waiman Long) [2000293] - seqlock: Remove trailing semicolon in macros (Waiman Long) [2000293] - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal (Waiman Long) [2000293] - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly (Waiman Long) [2000293] - sched: Rename sched_info_{queued,dequeued} (Waiman Long) [2000293] - locking/rwsem: Fix comment typo (Waiman Long) [2000293] - bpf: runqslower: Use task local storage (Waiman Long) [2000293] - lib/test_lockup.c: minimum fix to get it compiled on PREEMPT_RT (Waiman Long) [2000293] - seqlock: kernel-doc: Specify when preemption is automatically altered (Waiman Long) [2000293] - seqlock: Prefix internal seqcount_t-only macros with a "do_" (Waiman Long) [2000293] - rcu: Check and report missed fqs timer wakeup on RCU stall (Waiman Long) [2000293] - softirq: Move related code into one section (Waiman Long) [2000293] - seqlock: Rename __seqprop() users (Waiman Long) [2000293] - seqlock: avoid -Wshadow warnings (Waiman Long) [2000293] - locking/seqlocks: Fix kernel-doc warnings (Waiman Long) [2000293] - locking/seqlock: Tweak DEFINE_SEQLOCK() kernel doc (Waiman Long) [2000293] - seqlock: Unbreak lockdep (Waiman Long) [2000293] - seqlock: PREEMPT_RT: Do not starve seqlock_t writers (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Introduce PREEMPT_RT support (Waiman Long) [2000293] - seqlock: seqcount_t: Implement all read APIs as statement expressions (Waiman Long) [2000293] - seqlock: Use unique prefix for seqcount_t property accessors (Waiman Long) [2000293] - seqlock: seqcount_LOCKNAME_t: Standardize naming convention (Waiman Long) [2000293] - seqlock: seqcount latch APIs: Only allow seqcount_latch_t (Waiman Long) [2000293] - rbtree_latch: Use seqcount_latch_t (Waiman Long) [2000293] - x86/tsc: Use seqcount_latch_t (Waiman Long) [2000293] - timekeeping: Use seqcount_latch_t (Waiman Long) [2000293] - time/sched_clock: Mark sched_clock_read_begin/retry() as notrace (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() (Waiman Long) [2000293] - time/sched_clock: Use raw_read_seqcount_latch() during suspend (Waiman Long) [2000293] - time/sched_clock: Use seqcount_latch_t (Waiman Long) [2000293] - sched_clock: Expose struct clock_read_data (Waiman Long) [2000293] - timers/sched_clock: Include local timekeeping.h for missing declarations (Waiman Long) [2000293] - sched/clock: Move sched clock initialization and merge with generic clock (Waiman Long) [2000293] - userfaultfd: simplify fault handling (Waiman Long) [2000293] - rwsem: fix commas in initialisation (Waiman Long) [2000293] - lib/test_lockup.c: make test_inode static (Waiman Long) [2000293] - genirq: Provide irq_enter/exit_rcu() (Waiman Long) [2000293] - lib/test_lockup.c: add parameters for locking generic vfs locks (Waiman Long) [2000293] - lib/test_lockup.c: fix spelling mistake "iteraions" -> "iterations" (Waiman Long) [2000293] - lib/test_lockup: test module to generate lockups (Waiman Long) [2000293] - x86/tsc: Move inline keyword to the beginning of function declarations (Waiman Long) [2000293] - softirq: Don't skip softirq execution when softirq thread is parking (Waiman Long) [2000293] - sched/core: Convert task_struct.stack_refcount to refcount_t (Waiman Long) [2000293] - kernel/hung_task.c: break RCU locks based on jiffies (Waiman Long) [2000293] - x86/process: Avoid unnecessary NULL check in get_wchan() (Waiman Long) [2000293] - kernel/rwsem: Remove ifdef __init_rwsem code from rwsem.c (Waiman Long) [2000293] - misc: hpilo: map iLO shared memory by PCI revision id (Joseph Szczypek) [1985076] - misc: hpilo: MAINTAINERS: add entry for hpilo (Joseph Szczypek) [1985076] - misc: hpilo: avoid a useless memset (Joseph Szczypek) [1985076] - misc: hpilo: switch from 'pci_' to 'dma_' API (Joseph Szczypek) [1985076] - hpilo: Replace one-element array with flexible-array member (Joseph Szczypek) [1985076] - perf flamegraph: flamegraph.py script improvements (Michael Petlan) [2010269]- ceph: skip existing superblocks that are blocklisted or shut down when mounting (Jeffrey Layton) [2011462] - cpufreq: intel_pstate: Combine ->stop_cpu() and ->offline() (David Arcari) [2003695] - cpufreq: intel_pstate: Add Cometlake support in no-HWP mode (David Arcari) [2003695] - cpufreq: intel_pstate: Add Icelake servers support in no-HWP mode (David Arcari) [2003695] - i2c: i801: Add support for Intel Alder Lake PCH-M (David Arcari) [1929497] - i2c: i801: Add Block Write-Block Read Process Call support (David Arcari) [1929497] - pinctrl: tigerlake: Add Alder Lake-M ACPI ID (David Arcari) [1929501] - x86/microcode: Check for offline CPUs before requesting new microcode (Puneet Sethi) [1971878] - x86/resctrl: Fix a maybe-uninitialized build warning treated as error (Terry Bowman) [1994090] - x86/resctrl: Fix default monitoring groups reporting (Terry Bowman) [1994090] - PCI: Remove WARN_ON(in_interrupt()) (Myron Stowe) [1993262] - PCI: Apply CONFIG_PCI_DEBUG to entire drivers/pci hierarchy (Myron Stowe) [1993262] - PCI: Add Silicom Denmark vendor ID (Myron Stowe) [1993262] - PCI: Align checking of syscall user config accessors (Myron Stowe) [1993262] - PCI: Decline to resize resources if boot config must be preserved (Myron Stowe) [1993262] - PCI/LINK: Remove bandwidth notification (Myron Stowe) [1993262] - PCI: acpiphp: Remove unused acpiphp_callback typedef (Myron Stowe) [1993262] - PCI: Fix pci_register_io_range() memory leak (Myron Stowe) [1993262] - EDAC/amd64: Add AMD family 17h model 60h PCI IDs (Aristeu Rozanski) [1930489] - EDAC/amd64: Add PCI device IDs for family 17h, model 70h (Aristeu Rozanski) [1930489] - scsi: bnx2fc: Remove meaningless bnx2fc_abts_cleanup() return value assignment (Nilesh Javali) [1983956] - scsi: bnx2fc: Return failure if io_req is already in ABTS processing (Nilesh Javali) [1983956] - scsi: target: ibmvscsi_tgt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: Fix sense key for invalid EXTENDED COPY request (Maurizio Lombardi) [2004470] - scsi: target: Allows backend drivers to fail with specific sense codes (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix possible null-pointer dereference in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop unnecessary se_cmd ASC/ASCQ members (Maurizio Lombardi) [2004470] - scsi: target: sbp: Drop incorrect ASC/ASCQ usage (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid using lun_tg_pt_gp after unlock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add new feature KEEP_BUF (Maurizio Lombardi) [2004470] - scsi: target: Remove redundant assignment to variable ret (Maurizio Lombardi) [2004470] - scsi: target: Fix NULL dereference on XCOPY completion (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove redundant continue statement (Maurizio Lombardi) [2004470] - scsi: target: Use standard SAM status types (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix boolreturn.cocci warnings (Maurizio Lombardi) [2004470] - scsi: target: core: Add the VERSION DESCRIPTOR fields to the INQUIRY data (Maurizio Lombardi) [2004470] - scsi: target: core: Bump INQUIRY VERSION to SPC-4 (Maurizio Lombardi) [2004470] - scsi: target: core: Add configurable IEEE Company ID attribute (Maurizio Lombardi) [2004470] - scsi: target: core: Unify NAA identifier generation (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Remove redundant assignment to pg_size (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Rename TCM_DEV_BIT_PLUGGED to TCMU_DEV_BIT_PLUGGED (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Drop unnecessary container_of() (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Switch to kmemdup_nul() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix smp_processor_id() BUG messages (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Fix xarray RCU warning (Maurizio Lombardi) [2004470] - scsi: target: core: Avoid smp_processor_id() in preemptible code (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not found (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Fix a kernel-doc header (Maurizio Lombardi) [2004470] - scsi: target: Shorten ALUA error messages (Maurizio Lombardi) [2004470] - scsi: target: Fix two format specifiers (Maurizio Lombardi) [2004470] - scsi: target: Compare explicitly with SAM_STAT_GOOD (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Make data_pages_per_blk changeable via configfs (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace block size definitions with new udev members (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Remove function tcmu_get_block_page() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Support DATA_BLOCK_SIZE = N * PAGE_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Prepare for PAGE_SIZE != DATA_BLOCK_SIZE (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust names of variables and definitions (Maurizio Lombardi) [2004470] - scsi: target: Make the virtual LUN 0 device (Maurizio Lombardi) [2004470] - scsi: target: Add the DUMMY flag to rd_mcp (Maurizio Lombardi) [2004470] - scsi: target: Fix htmldocs warning in target_submit_prep() (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Adjust parameter in call to tcmu_blocks_release() (Maurizio Lombardi) [2004470] - scsi: target: core: file: Don't duplicate memset(0xff) (Maurizio Lombardi) [2004470] - scsi: target: core: pr: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: configfs: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Initialize arrays at declaration time (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro PRINT_BUF (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro TEXT_LEN (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Remove unused macro ISCSI_INST_LAST_FAILURE_TYPE (Maurizio Lombardi) [2004470] - scsi: target: core: Remove unused macros NONE and ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: core: Get rid of warning in compare_and_write_do_cmp() (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Remove unused macro ISPRINT (Maurizio Lombardi) [2004470] - scsi: target: pscsi: Fix warning in pscsi_complete_cmd() (Maurizio Lombardi) [2004470] - scsi: target: iblock: Fix type of logs_per_phys (Maurizio Lombardi) [2004470] - scsi: target: iblock: Trim line longer than 80 characters (Maurizio Lombardi) [2004470] - scsi: target: iblock: Remove an extra argument (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Use GFP_NOIO while handling cmds or holding cmdr_lock (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace radix_tree with XArray (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Replace IDR by XArray (Maurizio Lombardi) [2004470] - scsi: target: core: Make completion affinity configurable (Maurizio Lombardi) [2004470] - scsi: target: core: Flush submission work during TMR processing (Maurizio Lombardi) [2004470] - scsi: target: tcmu: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: iblock: Add backend plug/unplug callouts (Maurizio Lombardi) [2004470] - scsi: target: core: Fix backend plugging (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use LIO wq cmd submission helper (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Use block cmd allocator for se_cmds (Maurizio Lombardi) [2004470] - scsi: target: core: Add workqueue based cmd submission (Maurizio Lombardi) [2004470] - scsi: target: core: Add gfp_t arg to target_cmd_init_cdb() (Maurizio Lombardi) [2004470] - scsi: target: core: Remove target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: srpt: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: qla2xxx: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_qla2xxx: Remove BUG_ON(in_interrupt()) (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Move sess cmd list/lock to driver (Maurizio Lombardi) [2004470] - scsi: qla2xxx: Drop TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [2004470] - scsi: target: tcm_fc: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: sbp_target: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: tcm_loop: Convert to new submission API (Maurizio Lombardi) [2004470] - scsi: target: core: Break up target_submit_cmd_map_sgls() (Maurizio Lombardi) [2004470] - scsi: target: core: Rename transport_init_se_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Drop kref_get_unless_zero() in target_get_sess_cmd() (Maurizio Lombardi) [2004470] - scsi: target: core: Move t_task_cdb initialization (Maurizio Lombardi) [2004470] - scsi: target: iscsi: Fix zero tag inside a trace event (Maurizio Lombardi) [2004470] - nfsd: move fsnotify on client creation outside spinlock (Steve Dickson) [1719330] - nfsd: report client confirmation status in "info" file (Steve Dickson) [1719330] - nfsd: fsnotify on rmdir under nfsd/clients/ (Steve Dickson) [1719330]- mm: gup: fix potential pgmap refcnt leak in __gup_device_huge() (Waiman Long) [2009258] - mm/gup: check for isolation errors (Waiman Long) [2009258] - mm/gup: return an error on migration failure (Waiman Long) [2009258] - mm/gup: check every subpage of a compound page during isolation (Waiman Long) [2009258] - mm/gup: don't pin migrated cma pages in movable zone (Waiman Long) [2009258] - mm/gup: add a range variant of unpin_user_pages_dirty_lock() (Waiman Long) [2009258] - mm/gup: decrement head page once for group of subpages (Waiman Long) [2009258] - mm/gup: add compound page list iterator (Waiman Long) [2009258] - mm/gup: protect unpin_user_pages() against npages==-ERRNO (Waiman Long) [2009258] - mm, memcg: remove unused functions (Waiman Long) [2008341] - mm,vmscan: fix divide by zero in get_scan_count (Waiman Long) [2008341] - mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim (Waiman Long) [2008341] - mm/memcg: fix incorrect flushing of lruvec data in obj_stock (Waiman Long) [2008341] - mm/memcg: fix NULL pointer dereference in memcg_slab_free_hook() (Waiman Long) [2008341] - mm: memcontrol: fix blocking rstat function called from atomic cgroup1 thresholding code (Waiman Long) [2008341] - cgroup: rstat: fix A-A deadlock on 32bit around u64_stats_sync (Waiman Long) [2008341] - percpu: flush tlb in pcpu_reclaim_populated() (Waiman Long) [2008341] - mm/memcontrol.c: fix kerneldoc comment for mem_cgroup_calculate_protection (Waiman Long) [2008341] - memcontrol: use flexible-array member (Waiman Long) [2008341] - mm: vmscan: remove noinline_for_stack (Waiman Long) [2008341] - mm: memcontrol: move obj_cgroup_uncharge_pages() out of css_set_lock (Waiman Long) [2008341] - mm: memcontrol: simplify the logic of objcg pinning memcg (Waiman Long) [2008341] - mm: memcontrol: rename lruvec_holds_page_lru_lock to page_matches_lruvec (Waiman Long) [2008341] - mm: memcontrol: simplify lruvec_holds_page_lru_lock (Waiman Long) [2008341] - mm: memcontrol: remove the pgdata parameter of mem_cgroup_page_lruvec (Waiman Long) [2008341] - mm: memcontrol: bail out early when !mm in get_mem_cgroup_from_mm (Waiman Long) [2008341] - mm: memcontrol: fix page charging in page replacement (Waiman Long) [2008341] - percpu: optimize locking in pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: initialize best_upa variable (Waiman Long) [2008341] - percpu: rework memcg accounting (Waiman Long) [2008341] - mm, memcg: introduce mem_cgroup_kmem_disabled() (Waiman Long) [2008341] - mm, memcg: mark cgroup_memory_nosocket, nokmem and noswap as __ro_after_init (Waiman Long) [2008341] - mm: vmscan: shrink deferred objects proportional to priority (Waiman Long) [2008341] - mm: memcontrol: reparent nr_deferred when memcg offline (Waiman Long) [2008341] - mm: vmscan: don't need allocate shrinker->nr_deferred for memcg aware shrinkers (Waiman Long) [2008341] - mm: vmscan: use per memcg nr_deferred of shrinker (Waiman Long) [2008341] - mm: vmscan: add per memcg shrinker nr_deferred (Waiman Long) [2008341] - mm: vmscan: use a new flag to indicate shrinker is registered (Waiman Long) [2008341] - mm: vmscan: add shrinker_info_protected() helper (Waiman Long) [2008341] - mm: memcontrol: rename shrinker_map to shrinker_info (Waiman Long) [2008341] - mm: vmscan: use kvfree_rcu instead of call_rcu (Waiman Long) [2008341] - mm: vmscan: remove memcg_shrinker_map_size (Waiman Long) [2008341] - mm: vmscan: use shrinker_rwsem to protect shrinker_maps allocation (Waiman Long) [2008341] - mm: vmscan: consolidate shrinker_maps handling code (Waiman Long) [2008341] - mm: vmscan: use nid from shrink_control for tracepoint (Waiman Long) [2008341] - linux/memcontrol.h: remove duplicate struct declaration (Waiman Long) [2008341] - memcg: charge before adding to swapcache on swapin (Waiman Long) [2008341] - kselftests: cgroup: update kmem test for new vmstat implementation (Waiman Long) [2008341] - mm: memcontrol: consolidate lruvec stat flushing (Waiman Long) [2008341] - mm: memcontrol: switch to rstat (Waiman Long) [2008341] - cgroup: rstat: punt root-level optimization to individual controllers (Waiman Long) [2008341] - cgroup: rstat: support cgroup1 (Waiman Long) [2008341] - mm: memcontrol: privatize memcg_page_state query functions (Waiman Long) [2008341] - mm: memcontrol: kill mem_cgroup_nodeinfo() (Waiman Long) [2008341] - memcg: enable memcg oom-kill for __GFP_NOFAIL (Waiman Long) [2008341] - memcg: cleanup root memcg checks (Waiman Long) [2008341] - mm: memcontrol: fix kernel stack account (Waiman Long) [2008341] - mm: page-writeback: simplify memcg handling in test_clear_page_writeback() (Waiman Long) [2008341] - percpu: implement partial chunk depopulation (Waiman Long) [2008341] - percpu: use pcpu_free_slot instead of pcpu_nr_slots - 1 (Waiman Long) [2008341] - percpu: factor out pcpu_check_block_hint() (Waiman Long) [2008341] - percpu: split __pcpu_balance_workfn() (Waiman Long) [2008341] - percpu: fix a comment about the chunks ordering (Waiman Long) [2008341] - mm/compaction: remove rcu_read_lock during page compaction (Waiman Long) [2008341] - mm/vmscan.c: make lruvec_lru_size() static (Waiman Long) [2008341] - include/linux/mm_inline.h: fold __update_lru_size() into its sole caller (Waiman Long) [2008341] - include/linux/mm_inline.h: fold page_lru_base_type() into its sole caller (Waiman Long) [2008341] - mm: VM_BUG_ON lru page flags (Waiman Long) [2008341] - mm: add __clear_page_lru_flags() to replace page_off_lru() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to del_page_from_lru_list() (Waiman Long) [2008341] - mm/swap.c: don't pass "enum lru_list" to trace_mm_lru_insertion() (Waiman Long) [2008341] - mm: don't pass "enum lru_list" to lru list addition functions (Waiman Long) [2008341] - include/linux/mm_inline.h: shuffle lru list addition and deletion functions (Waiman Long) [2008341] - mm/vmscan.c: use add_page_to_lru_list() (Waiman Long) [2008341] - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback) (Waiman Long) [2008341] - mm: remove superfluous __ClearPageActive() (Waiman Long) [2008341] - mm, memcg: decouple e{low,min} state mutations from protection checks (Waiman Long) [2008341] - Revert "cgroup: Add memory barriers to plug cgroup_rstat_updated() race window" (Waiman Long) [2008341] - mm/memcontrol.c: allocate shrinker_map on appropriate NUMA node (Waiman Long) [2008341] - include/bitmap.h: add new functions to documentation (Waiman Long) [2008341] - include/bitmap.h: add missing parameter in docs (Waiman Long) [2008341] - bitmap: genericize percpu bitmap region iterators (Waiman Long) [2008341] - cgroup, rstat: Don't flush subtree root unless necessary (Waiman Long) [2008341] - mm/memcg: Move mem_cgroup kABI compatibility structure into rh_kabi_memcg.h (Waiman Long) [2008341] - mm/swap: consider max pages in iomap_swapfile_add_extent (Brian Foster) [1969326] - mm/slub: Fix backtrace of objects to handle redzone adjustment (Waiman Long) [2008340] - powerpc/powernv: Fix CPU idle to be called with IRQs disabled (Waiman Long) [2008340] - torture: Fix grace-period rate output (Waiman Long) [2008340] - rcu: Fix kfree_rcu() docbook errors (Waiman Long) [2008340] - rcu/nocb: Perform deferred wake up before last idle's need_resched() check (Waiman Long) [2008340] - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers (Waiman Long) [2008340] - idle: Prevent late-arriving interrupts from disrupting offline (Waiman Long) [2008340] - torture: Maintain torture-specific set of CPUs-online books (Waiman Long) [2008340] - torture: Clean up after torture-test CPU hotplugging (Waiman Long) [2008340] - rcutorture: Make object_debug also double call_rcu() heap object (Waiman Long) [2008340] - torture: Throttle VERBOSE_TOROUT_*() output (Waiman Long) [2008340] - torture: Make refscale throttle high-rate printk()s (Waiman Long) [2008340] - rcutorture: Use hrtimers for reader and writer delays (Waiman Long) [2008340] - torture: Make stutter use torture_hrtimeout_*() functions (Waiman Long) [2008340] - rcutorture: Use torture_hrtimeout_jiffies() to avoid busy-waits (Waiman Long) [2008340] - torture: Add fuzzed hrtimer-based sleep functions (Waiman Long) [2008340] - rcutorture: Make rcu_torture_fakewriter() use blocking wait primitives (Waiman Long) [2008340] - rcutorture: Make synctype[] and nsynctype be static global (Waiman Long) [2008340] - rcutorture: Require entire stutter period be post-boot (Waiman Long) [2008340] - refscale: Allow summarization of verbose output (Waiman Long) [2008340] - torture: Allow standalone kvm-recheck.sh run detect --trust-make (Waiman Long) [2008340] - torture: Simplify exit-code plumbing for kvm-recheck.sh and kvm-find-errors.sh (Waiman Long) [2008340] - torture: s/STOP/STOP.1/ to avoid scenario collision (Waiman Long) [2008340] - torture: Add --dryrun batches to help schedule a distributed run (Waiman Long) [2008340] - torture: Stop hanging on panic (Waiman Long) [2008340] - torture: Add kvm.sh test summary to end of log file (Waiman Long) [2008340] - torture: Make kvm.sh include --kconfig arguments in CPU calculation (Waiman Long) [2008340] - torture: Make kvm.sh return failure upon build failure (Waiman Long) [2008340] - torture: Print run duration at end of kvm.sh execution (Waiman Long) [2008340] - torture: Make kvm.sh arguments accumulate (Waiman Long) [2008340] - torture: Make kvm.sh "Test Summary" date be end of test (Waiman Long) [2008340] - tools/rcutorture: Make identify_qemu_vcpus() independent of local language (Waiman Long) [2008340] - torture: Add config2csv.sh script to compare torture scenarios (Waiman Long) [2008340] - torture: Prepare for splitting qemu execution from kvm-test-1-run.sh (Waiman Long) [2008340] - torture: Allow kvm.sh --datestamp to specify subdirectories (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of builds (Waiman Long) [2008340] - torture: Make kvm.sh "--dryrun sched" summarize number of batches (Waiman Long) [2008340] - torture: Make --kcsan specify lockdep (Waiman Long) [2008340] - rcu: Do not NMI offline CPUs (Waiman Long) [2008340] - rcu: For RCU grace-period kthread starvation, dump last CPU it ran on (Waiman Long) [2008340] - rcu: Mark obtuse portion of stall warning as internal debug (Waiman Long) [2008340] - scftorture: Add debug output for wrong-CPU warning (Waiman Long) [2008340] - rcutorture: Add testing for RCU's global memory ordering (Waiman Long) [2008340] - rcutorture: Add reader-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Add writer-side tests of polling grace-period API (Waiman Long) [2008340] - rcutorture: Prepare for ->start_gp_poll and ->poll_gp_state (Waiman Long) [2008340] - srcu: Add comment explaining cookie overflow/wrap (Waiman Long) [2008340] - srcu: Document polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tree SRCU grace periods (Waiman Long) [2008340] - srcu: Provide polling interfaces for Tiny SRCU grace periods (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tree SRCU grace period (Waiman Long) [2008340] - srcu: Provide internal interface to start a Tiny SRCU grace period (Waiman Long) [2008340] - srcu: Make Tiny SRCU use multi-bit grace-period counter (Waiman Long) [2008340] - rcu: Enable rcu_normal_after_boot unconditionally for RT (Waiman Long) [2008340] - rcu: Unconditionally use rcuc threads on PREEMPT_RT (Waiman Long) [2008340] - rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT (Waiman Long) [2008340] - rcu: Eliminate the __kvfree_rcu() macro (Waiman Long) [2008340] - rcu: Introduce kfree_rcu() single-argument macro (Waiman Long) [2008340] - rcu: Record kvfree_call_rcu() call stack for KASAN (Waiman Long) [2008340] - rcu: Do any deferred nocb wakeups at CPU offline time (Waiman Long) [2008340] - rcu/nocb: Code-style nits in callback-offloading toggling (Waiman Long) [2008340] - rcu/nocb: Add nocb CB kthread list to show_rcu_nocb_state() output (Waiman Long) [2008340] - rcu/nocb: Add grace period and task state to show_rcu_nocb_state() output (Waiman Long) [2008340] - tools/rcutorture: Support nocb toggle in TREE01 (Waiman Long) [2008340] - rcutorture: Test runtime toggling of CPUs' callback offloading (Waiman Long) [2008340] - cpu/hotplug: Add lockdep_is_cpus_held() (Waiman Long) [2008340] - rcu/nocb: Locally accelerate callbacks as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Process batch locally as long as offloading isn't complete (Waiman Long) [2008340] - rcu/nocb: Only cond_resched() from actual offloaded batch processing (Waiman Long) [2008340] - rcu/nocb: Set SEGCBLIST_SOFTIRQ_ONLY at the very last stage of de-offloading (Waiman Long) [2008340] - rcu/nocb: Flush bypass before setting SEGCBLIST_SOFTIRQ_ONLY (Waiman Long) [2008340] - rcu/nocb: Shutdown nocb timer on de-offloading (Waiman Long) [2008340] - rcu/nocb: Re-offload support (Waiman Long) [2008340] - rcu/nocb: De-offloading GP kthread (Waiman Long) [2008340] - rcu/nocb: Don't deoffload an offline CPU with pending work (Waiman Long) [2008340] - rcu/nocb: De-offloading CB kthread (Waiman Long) [2008340] - rcu/nocb: Always init segcblist on CPU up (Waiman Long) [2008340] - rcu/nocb: Provide basic callback offloading state machine bits (Waiman Long) [2008340] - rcu/nocb: Turn enabled/offload states into a common flag (Waiman Long) [2008340] - rcu/segcblist: Add debug checks for segment lengths (Waiman Long) [2008340] - rcu/trace: Add tracing for how segcb list changes (Waiman Long) [2008340] - rcu/tree: segcblist: Remove redundant smp_mb()s (Waiman Long) [2008340] - rcu/segcblist: Add counters to segcblist datastructure (Waiman Long) [2008340] - rcu/segcblist: Add additional comments to explain smp_mb() (Waiman Long) [2008340] - rcu/tree: Make rcu_do_batch count how many callbacks were executed (Waiman Long) [2008340] - rcu: Make call_rcu() print mem_dump_obj() info for double-freed callback (Waiman Long) [2008340] - mm: Make mem_obj_dump() vmalloc() dumps include start and length (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle vmalloc() memory (Waiman Long) [2008340] - mm: Make mem_dump_obj() handle NULL and zero-sized pointers (Waiman Long) [2008340] - mm: Add mem_dump_obj() to print source of memory block (Waiman Long) [2008340] - rcu: Make TASKS_TRACE_RCU select IRQ_WORK (Waiman Long) [2008340] - rcu-tasks: Add RCU-tasks self tests (Waiman Long) [2008340] - rcu-tasks: Move RCU-tasks initialization to before early_initcall() (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to raw_spin_unlock_rcu_node() macros (Waiman Long) [2008340] - rcu: Add lockdep_assert_irqs_disabled() to rcu_sched_clock_irq() and callees (Waiman Long) [2008340] - rcutorture: Don't do need_resched() testing if ->sync is NULL (Waiman Long) [2008340] - scftorture: Add full-test stutter capability (Waiman Long) [2008340] - torture: Allow alternative forms of kvm.sh command-line arguments (Waiman Long) [2008340] - rcutorture: Small code cleanups (Waiman Long) [2008340] - torture: Accept time units on kvm.sh --duration argument (Waiman Long) [2008340] - rcutorture: Make stutter_wait() caller restore priority (Waiman Long) [2008340] - torture: Force weak-hashed pointers on console log (Waiman Long) [2008340] - rcutorture: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Prevent jitter processes from delaying failed run (Waiman Long) [2008340] - rcutorture: Adjust scenarios SRCU-t and SRCU-u to make kconfig happy (Waiman Long) [2008340] - refscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - rcuscale: Prevent hangs for invalid arguments (Waiman Long) [2008340] - torture: Exclude "NOHZ tick-stop error" from fatal errors (Waiman Long) [2008340] - rcuscale: Avoid divide by zero (Waiman Long) [2008340] - rcuscale: Add RCU Tasks Trace (Waiman Long) [2008340] - scftorture: Add an alternative IPI vector (Waiman Long) [2008340] - torture: Make torture_stutter() use hrtimer (Waiman Long) [2008340] - torture: Periodically pause in stutter_wait() (Waiman Long) [2008340] - torture: Don't kill gdb sessions (Waiman Long) [2008340] - refscale: Bounds-check module parameters (Waiman Long) [2008340] - rcu-tasks: Make the units of ->init_fract be jiffies (Waiman Long) [2008340] - rcutorture: Make grace-period kthread report match RCU flavor being tested (Waiman Long) [2008340] - rcu-tasks: Convert rcu_tasks_wait_gp() for-loop to while-loop (Waiman Long) [2008340] - rcutorture: Make preemptible TRACE02 enable lockdep (Waiman Long) [2008340] - srcu: Use a more appropriate lockdep helper (Waiman Long) [2008340] - srcu: Take early exit on memory-allocation failure (Waiman Long) [2008340] - rcu: Fix a typo in rcu_blocking_is_gp() header comment (Waiman Long) [2008340] - rcu: Prevent lockdep-RCU splats on lock acquisition/release (Waiman Long) [2008340] - rcu/tree: nocb: Avoid raising softirq for offloaded ready-to-execute CBs (Waiman Long) [2008340] - rcu/tree: Make struct kernel_param_ops definitions const (Waiman Long) [2008340] - rcu/tree: Add a warning if CPU being onlined did not report QS already (Waiman Long) [2008340] - rcu: Clarify nocb kthreads naming in RCU_NOCB_CPU config (Waiman Long) [2008340] - rcu: Fix single-CPU check in rcu_blocking_is_gp() (Waiman Long) [2008340] - rcu: Implement rcu_segcblist_is_offloaded() config dependent (Waiman Long) [2008340] - list.h: Update comment to explicitly note circular lists (Waiman Long) [2008340] - rcu: Panic after fixed number of stalls (Waiman Long) [2008340] - x86/smpboot: Move rcu_cpu_starting() earlier (Waiman Long) [2008340] - torture: Replace cpu_up/down() with add/remove_cpu() (Waiman Long) [2008340] - PCI/PTM: Remove error message at boot (Myron Stowe) [1993252] - PCI: Mark AMD Navi14 GPU ATS as broken (Myron Stowe) [1993252] - PCI: vmd: Update type of the __iomem pointers (Myron Stowe) [1993252] - PCI: Unify ECAM constants in native PCI Express drivers (Myron Stowe) [1993252] - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller (Myron Stowe) [1993252] - PCI: Mark AMD Raven iGPU ATS as broken in some platforms (Myron Stowe) [1993252] - PCI: Disable PTM during suspend to save power (Myron Stowe) [1993252] - PCI/PTM: Save/restore Precision Time Measurement Capability for suspend/resume (Myron Stowe) [1993252] - PCI: Add sysfs attribute for device power state (Myron Stowe) [1993252] - PCI/MSI: Set device flag indicating only 32-bit MSI support (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X flags updaters to msi.c (Myron Stowe) [1993252] - PCI/MSI: Move MSI/MSI-X init to msi.c (Myron Stowe) [1993252] - PCI: Use predefined Pericom Vendor ID (Myron Stowe) [1993252] - PCI: Disable MSI for Pericom PCIe-USB adapter (Myron Stowe) [1993252] - PCI: Reduce pci_set_cacheline_size() message to debug level (Myron Stowe) [1993252] - PCI: Remove unused HAVE_PCI_SET_MWI (Myron Stowe) [1993252] - PCI: Fix overflow in command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Bounds-check command-line resource alignment requests (Myron Stowe) [1993252] - PCI: Fix kernel-doc markup (Myron Stowe) [1993252] - PCI: ibmphp: Remove unneeded break (Myron Stowe) [1993252] - PCI/ACPI: Fix companion lookup for device 0 on the root bus (Myron Stowe) [1993252] - PCI: Keep both device and resource name for config space remaps (Myron Stowe) [1993252] - PCI: Return u16 from pci_find_ext_capability() and similar (Myron Stowe) [1993252] - PCI: Return u8 from pci_find_capability() and similar (Myron Stowe) [1993252] - PCI: Avoid duplicate IDs in driver dynamic IDs list (Myron Stowe) [1993252] - PCI: Move pci_match_device() ahead of new_id_store() (Myron Stowe) [1993252] - PCI: Decode PCIe 64 GT/s link speed (Myron Stowe) [1993252] - PCI: host-generic: Support building as modules (Myron Stowe) [1993252] - ata: sata_nv: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_ns87415.c: Document support on parisc with superio chip (Tomas Henzl) [1921465] - ata: fix some kernel-doc markups (Tomas Henzl) [1921465] - sata, highbank: simplify the return expression of ahci_highbank_suspend (Tomas Henzl) [1921465] - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks (Tomas Henzl) [1921465] - ata: ahci: use ata_link_info() instead of ata_link_printk() (Tomas Henzl) [1921465] - libata: Use per port sync for detach (Tomas Henzl) [1921465] - ata/libata: Fix usage of page address by page_address in ata_scsi_mode_select_xlat function (Tomas Henzl) [1921465] - sata_rcar: handle pm_runtime_get_sync failure cases (Tomas Henzl) [1921465] - ata: sata_inic162x fix a spelling issue (Tomas Henzl) [1921465] - ata: libata-core: fix a doc warning (Tomas Henzl) [1921465] - ata: ahci: Add sysfs attribute to show remapped NVMe device count (Tomas Henzl) [1921465] - ata: ahci-imx: remove redundant assignment to ret (Tomas Henzl) [1921465] - libata: Return correct status in sata_pmp_eh_recover_pm() when ATA_DFLAG_DETACH is set (Tomas Henzl) [1921465] - ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-eh.c (Tomas Henzl) [1921465] - ata: move ata_sas_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-scsi.c (Tomas Henzl) [1921465] - ata: move sata_deb_timing_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move ata_qc_complete_multiple() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_hardreset() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_link_{debounce,resume}() to libata-sata.c (Tomas Henzl) [1921465] - ata: move *sata_set_spd*() to libata-sata.c (Tomas Henzl) [1921465] - ata: move sata_scr_*() to libata-sata.c (Tomas Henzl) [1921465] - ata: start separating SATA specific code from libata-core.c (Tomas Henzl) [1921465] - ata: fix CodingStyle issues in PATA timings code (Tomas Henzl) [1921465] - ata: remove EXPORT_SYMBOL_GPL()s not used by modules (Tomas Henzl) [1921465] - ata: move EXPORT_SYMBOL_GPL()s close to exported code (Tomas Henzl) [1921465] - ata: optimize ata_scsi_rbuf[] size (Tomas Henzl) [1921465] - ata: optimize struct ata_force_param size (Tomas Henzl) [1921465] - ata: use COMMAND_LINE_SIZE for ata_force_param_buf[] size (Tomas Henzl) [1921465] - ata: simplify ata_scsiop_inq_89() (Tomas Henzl) [1921465] - sata_promise: use ata_cable_sata() (Tomas Henzl) [1921465] - ata: make SATA_PMP option selectable only if any SATA host driver is enabled (Tomas Henzl) [1921465] - ata: expose ncq_enable_prio sysfs attribute only on NCQ capable hosts (Tomas Henzl) [1921465] - ata: remove stale maintainership information from core code (Tomas Henzl) [1921465] - libata: Assign OF node to the SCSI device (Tomas Henzl) [1921465] - libata: Remove extra scsi_host_put() in ata_scsi_add_hosts() (Tomas Henzl) [1921465] - libata: transport: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1921465] - ata/acard_ahci: remove unused variable n_elem (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7216 reset is self de-asserting (Tomas Henzl) [1921465] - ata: ahci_brcm: Perform reset after obtaining resources (Tomas Henzl) [1921465] - ata: brcm: fix reset controller API usage (Tomas Henzl) [1921465] - ata: brcm: mark PM functions as __maybe_unused (Tomas Henzl) [1921465] - ata: ahci_brcm: Support BCM7216 reset controller name (Tomas Henzl) [1921465] - ata: ahci_brcm: Add a shutdown callback (Tomas Henzl) [1921465] - ata: ahci_brcm: Manage reset line during suspend/resume (Tomas Henzl) [1921465] - ata: ahci_brcm: Add missing clock management during recovery (Tomas Henzl) [1921465] - ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE (Tomas Henzl) [1921465] - ata: ahci_brcm: Fix AHCI resources management (Tomas Henzl) [1921465] - ata: libahci_platform: Export again ahci_platform_able_phys() (Tomas Henzl) [1921465] - libata: Fix retrieving of active qcs (Tomas Henzl) [1921465] - ata: pata_artop: make arrays static const, makes object smaller (Tomas Henzl) [1921465] - ata_piix: remove open-coded dmi_match(DMI_OEM_STRING) (Tomas Henzl) [1921465] - ata: sata_mv, avoid trigerrable BUG_ON (Tomas Henzl) [1921465] - ata: make qc_prep return ata_completion_errors (Tomas Henzl) [1921465] - ata: define AC_ERR_OK (Tomas Henzl) [1921465] - libata: Ensure ata_port probe has completed before detach (Tomas Henzl) [1921465] - ahci: tegra: use regulator_bulk_set_supply_names() (Tomas Henzl) [1921465] - ahci: Add support for Amazon's Annapurna Labs SATA controller (Tomas Henzl) [1921465] - ata: libahci_platform: Fix regulator_get_optional() misuse (Tomas Henzl) [1921465] - ata: ahci-imx: Covert to use GPIO descriptor (Tomas Henzl) [1921465] - libata/ahci: Fix PCS quirk application (Tomas Henzl) [1921465] - libata/ahci: Drop PCS quirk for Denverton and beyond (Tomas Henzl) [1921465] - libata: switch remaining drivers to use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_sil24: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_qstor: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_nv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - sata_mv: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - pdc_adma: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - acard_ahci: use dma_set_mask_and_coherent (Tomas Henzl) [1921465] - libata: add SG safety checks in SFF pio transfers (Tomas Henzl) [1921465] - libata: have ata_scsi_rw_xlat() fail invalid passthrough requests (Tomas Henzl) [1921465] - ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe (Tomas Henzl) [1921465] - ata: libahci: do not complain in case of deferred probe (Tomas Henzl) [1921465] - libata: zpodd: Fix small read overflow in zpodd_get_mech_type() (Tomas Henzl) [1921465] - ata: libahci_platform: remove redundant dev_err message (Tomas Henzl) [1921465] - drivers: ata: ahci_sunxi: Increased SATA/AHCI DMA TX/RX FIFOs (Tomas Henzl) [1921465] - libata: Drop firmware version check from the ST1000LM024 quirk (Tomas Henzl) [1921465] - ata: sata_sil24: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata:sata_qstor: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: sata_nv: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: pdc_adma: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: libahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - ata: acard-ahci: Remove call to memset after dmam_alloc_coherent (Tomas Henzl) [1921465] - libata: don't request sense data on !ZAC ATA devices (Tomas Henzl) [1921465] - libata: Extend quirks for the ST1000LM024 drives with NOLPM quirk (Tomas Henzl) [1921465] - sata_rcar: Remove ata_host_alloc() error printing (Tomas Henzl) [1921465] - libata: fix using DMA buffers on stack (Tomas Henzl) [1921465] - ata: libahci: Only warn for AHCI_HFLAG_MULTI_MSI set when genuine custom irq handler implemented (Tomas Henzl) [1921465] - libata: fix a typo in comment (Tomas Henzl) [1921465] - sata_rcar: fix deferred probing (Tomas Henzl) [1921465] - ata: sata_highbank: Convert to use GPIO descriptors (Tomas Henzl) [1921465] - sata_rcar: convert to SPDX identifiers (Tomas Henzl) [1921465] - ata: ep93xx: Use proper enums for directions (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow using driver or DSL SoCs (Tomas Henzl) [1921465] - ata: ahci_brcm: Match BCM63138 compatible strings (Tomas Henzl) [1921465] - ata: ahci_brcm: Allow optional reset controller to be used (Tomas Henzl) [1921465] - libata: mask swap internal and hardware tag (Tomas Henzl) [1921465] - pata_atiixp: Remove unnecessary parentheses (Tomas Henzl) [1921465] - ata: ahci_sunxi: add support for r40 (Tomas Henzl) [1921465] - ata: ahci_platform: add support for PHY controller regulator (Tomas Henzl) [1921465] - ata: ahci_platform: add support for AHCI controller regulator (Tomas Henzl) [1921465] - libata: Use SMART LBAM/LBAH password defines (Tomas Henzl) [1921465] - ata: ahci: Convert to using pOFn instead of device_node.name (Tomas Henzl) [1921465] - ata: ftide010: Add a quirk for SQ201 (Tomas Henzl) [1921465] - ata: ahci_platform: enable to get and control reset (Tomas Henzl) [1921465] - ata: libahci_platform: add reset control support (Tomas Henzl) [1921465] - ata: add an extra argument to ahci_platform_get_resources() (Tomas Henzl) [1921465] - ata: sata_rcar: exclude setting of PHY registers in Gen3 (Tomas Henzl) [1921465] - ata: sata_rcar: really mask all interrupts on Gen2 and later (Tomas Henzl) [1921465] - ata: libahci: Allow reconfigure of DEVSLP register (Tomas Henzl) [1921465] - ata: libahci: Correct setting of DEVSLP register (Tomas Henzl) [1921465] - ata: ahci: Enable DEVSLP by default on x86 with SLP_S0 (Tomas Henzl) [1921465] - ata: ahci: Support state with min power but Partial low power state (Tomas Henzl) [1921465] - Revert "ata: ahci_platform: convert kcalloc to devm_kcalloc" (Tomas Henzl) [1921465] - ata: sata_rcar: Add rudimentary Runtime PM support (Tomas Henzl) [1921465] - ata: sata_rcar: Provide a short-hand for &pdev->dev (Tomas Henzl) [1921465] - ata: Only output sg element mapped number in verbose debug (Tomas Henzl) [1921465] - ata: Guard ata_scsi_dump_cdb() by ATA_VERBOSE_DEBUG (Tomas Henzl) [1921465] - ata: ahci_platform: convert kcalloc to devm_kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: convert kzallloc to kcalloc (Tomas Henzl) [1921465] - ata: ahci_platform: correct parameter documentation for ahci_platform_shutdown (Tomas Henzl) [1921465] - libata: remove ata_sff_data_xfer_noirq() (Tomas Henzl) [1921465] - scsi: target: Fix the pgr/alua_support_store functions (Maurizio Lombardi) [1995935] - sched/deadline: Fix missing clock update in migrate_task_rq_dl() (Phil Auld) [1992254] - sched/fair: Avoid a second scan of target in select_idle_cpu (Phil Auld) [1992254] - sched/fair: Use prev instead of new target as recent_used_cpu (Phil Auld) [1992254] - sched: Replace deprecated CPU-hotplug functions. (Phil Auld) [1992254] - sched/deadline: Fix reset_on_fork reporting of DL tasks (Phil Auld) [1992254] - sched/numa: Fix is_core_idle() (Phil Auld) [1992254] - sched/fair: Sync load_sum with load_avg after dequeue (Phil Auld) [1992254] - sched/fair: Fix CFS bandwidth hrtimer expiry type (Phil Auld) [1992254] - sched/fair: Ensure _sum and _avg values stay consistent (Phil Auld) [1992254] - sched/fair: Ensure that the CFS parent is added after unthrottling (Phil Auld) [1992254] - sched/rt: Fix Deadline utilization tracking during policy change (Phil Auld) [1992254] - sched/rt: Fix RT utilization tracking during policy change (Phil Auld) [1992254] - sched/fair: Age the average idle time (Phil Auld) [1992254] - wait: use LIST_HEAD_INIT() to initialize wait_queue_head (Phil Auld) [1992254] - sched: Optimize housekeeping_cpumask() in for_each_cpu_and() (Phil Auld) [1992254] - sched/fair: Fix util_est UTIL_AVG_UNCHANGED handling (Phil Auld) [1992254] - sched/pelt: Check that *_avg are null when *_sum are (Phil Auld) [1992254] - sched/fair: Correctly insert cfs_rq's to list on unthrottle (Phil Auld) [1992254] - sched/pelt: Ensure that *_sum is always synced with *_avg (Phil Auld) [1992254] - sched/fair: Return early from update_tg_cfs_load() if delta == 0 (Phil Auld) [1992254] - sched/fair: Make sure to update tg contrib for blocked load (Phil Auld) [1992254] - sched/fair: Keep load_avg and load_sum synced (Phil Auld) [1992254] - sched: Stop PF_NO_SETAFFINITY from being inherited by various init system threads (Phil Auld) [1992254] - sched: Fix a stale comment in pick_next_task() (Phil Auld) [1992254] - sched/fair: Fix ascii art by relpacing tabs (Phil Auld) [1992254] - tick/nohz: Call tick_nohz_task_switch() with interrupts disabled (Phil Auld) [1992254] - sched/fair: Fix clearing of has_idle_cores flag in select_idle_cpu() (Phil Auld) [1992254] - sched/core: Remove the pointless BUG_ON(!task) from wake_up_q() (Phil Auld) [1992254] - sched: Make the idle task quack like a per-CPU kthread (Phil Auld) [1992254] - sched/fair: Fix unfairness caused by missing load decay (Phil Auld) [1992254] - sched: Make nr_iowait_cpu() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_iowait() return 32-bit value (Phil Auld) [1992254] - sched: Make nr_running() return 32-bit value (Phil Auld) [1992254] - sched/isolation: Reconcile rcu_nocbs= and nohz_full= (Phil Auld) [1992254] - sched/fair: Introduce a CPU capacity comparison helper (Phil Auld) [1992254] - sched/fair: Clean up active balance nr_balance_failed trickery (Phil Auld) [1992254] - sched/fair: Move update_nohz_stats() to the CONFIG_NO_HZ_COMMON block to simplify the code & fix an unused function warning (Phil Auld) [1992254] - sched/fair: Bring back select_idle_smt(), but differently (Phil Auld) [1992254] - sched,fair: Alternative sched_slice() (Phil Auld) [1992254] - sched/topology: Remove redundant cpumask_and() in init_overlap_sched_group() (Phil Auld) [1992254] - sched/numa: Allow runtime enabling/disabling of NUMA balance without SCHED_DEBUG (Phil Auld) [1992254] - sched/fair: Optimize test_idle_cores() for !SMT (Phil Auld) [1992254] - sched: Fix various typos (Phil Auld) [1992254] - sched: Remove unnecessary variable from schedule_tail() (Phil Auld) [1992254] - sched: Optimize __calc_delta() (Phil Auld) [1992254] - sched: Provide raw_spin_rq_*lock*() helpers (Phil Auld) [1992254] - sched/pelt: Fix task util_est update filtering (Phil Auld) [1992254] - sched/fair: use lsub_positive in cpu_util_next() (Phil Auld) [1992254] - sched/fair: Reduce the window for duplicated update (Phil Auld) [1992254] - sched/fair: Reorder newidle_balance pulled_task tests (Phil Auld) [1992254] - sched/fair: Remove unused parameter of update_nohz_stats (Phil Auld) [1992254] - sched/fair: Remove unused return of _nohz_idle_balance (Phil Auld) [1992254] - sched/fair: Remove update of blocked load from newidle_balance (Phil Auld) [1992254] - sched/topology: fix the issue groups don't span domain->span for NUMA diameter > 2 (Phil Auld) [1992254] - sched/fair: Merge select_idle_core/cpu() (Phil Auld) [1992254] - sched/fair: Remove select_idle_smt() (Phil Auld) [1992254] - sched/fair: Move avg_scan_cost calculations under SIS_PROP (Phil Auld) [1992254] - sched/fair: Remove SIS_AVG_CPU (Phil Auld) [1992254] - sched/eas: Don't update misfit status if the task is pinned (Phil Auld) [1992254] - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue (Phil Auld) [1992254] - sched/fair: Add a few assertions (Phil Auld) [1992254] - cpufreq: schedutil: Simplify sugov_update_next_freq() (Phil Auld) [1992254] - sched/topology: Warn when NUMA diameter > 2 (Phil Auld) [1992254] - sched: Use task_current() instead of 'rq->curr == p' (Phil Auld) [1992254] - sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled (Phil Auld) [1992254] - sched/fair: Exclude the current CPU from find_new_ilb() (Phil Auld) [1992254] - rbtree, sched/deadline: Use rb_add_cached() (Phil Auld) [1992254] - rbtree, sched/fair: Use rb_add_cached() (Phil Auld) [1992254] - sched/isolation: Prefer housekeeping CPU in local node (Phil Auld) [1992254] - sched: Fix various typos in comments (Phil Auld) [1992254] - s390/qeth: fix deadlock during failing recovery (Sumanth Korikkar) [1984990] - s390/qeth: Fix deadlock in remove_discipline (Sumanth Korikkar) [1984990] - s390/qeth: fix NULL deref in qeth_clear_working_pool_list() (Sumanth Korikkar) [1984990] - s390/qdio: fix roll-back after timeout on ESTABLISH ccw (Sumanth Korikkar) [1984990] - s390/qdio: get rid of register asm (Sumanth Korikkar) [1984990] - s390/netiuvc: get rid of forward declarations (Sumanth Korikkar) [1984990] - s390/qeth: Consider dependency on SWITCHDEV module (Sumanth Korikkar) [1984990] - s390/qeth: shrink TX buffer struct (Sumanth Korikkar) [1984990] - s390/qeth: remove TX buffer's pointer to its queue (Sumanth Korikkar) [1984990] - s390/qeth: remove QAOB's pointer to its TX buffer (Sumanth Korikkar) [1984990] - s390/qeth: consolidate completion of pending TX buffers (Sumanth Korikkar) [1984990] - s390/qeth: use ethtool_sprintf() (Sumanth Korikkar) [1984990] - s390/qeth: unify the tracking of active cmds on ccw device (Sumanth Korikkar) [1984990] - s390/qeth: also use TX NAPI for non-IQD devices (Sumanth Korikkar) [1984990] - s390/qeth: count TX completion interrupts (Sumanth Korikkar) [1984990] - powerpc/stacktrace: Include linux/delay.h (Steve Best) [2010674] - powerpc/stacktrace: Fix spurious "stale" traces in raise_backtrace_ipi() (Steve Best) [2010674] - powerpc/xmon: Reset RCU and soft lockup watchdogs (Steve Best) [2010674] - bpf, sockmap: Fix sk->prot unhash op reset (Jiri Benc) [1947006] - xdp: fix xdp_return_frame() kernel BUG throw for page_pool memory model (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper input mtu_len param (Jiri Benc) [1947006] - bpf: BPF-helper for MTU checking add length input (Jiri Benc) [1947006] - xsk: Remove dangling function declaration from header file (Jiri Benc) [1947006] - bpf: Remove blank line in bpf helper description comment (Jiri Benc) [1947006] - libbpf: Use AF_LOCAL instead of AF_INET in xsk.c (Jiri Benc) [1947006] - selftests/bpf: Tests using bpf_check_mtu BPF-helper (Jiri Benc) [1947006] - selftests/bpf: Use bpf_check_mtu in selftest test_cls_redirect (Jiri Benc) [1947006] - bpf: Drop MTU check when doing TC-BPF redirect to ingress (Jiri Benc) [1947006] - bpf: Add BPF-helper for MTU checking (Jiri Benc) [1947006] - bpf: bpf_fib_lookup return MTU value as output when looked up (Jiri Benc) [1947006] - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx (Jiri Benc) [1947006] - bpf: Remove MTU check in __bpf_skb_max_len (Jiri Benc) [1947006] - net, veth: Alloc skb in bulk for ndo_xdp_xmit (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_RECVMSG (Jiri Benc) [1947006] - selftests/bpf: Rewrite recvmsg{4,6} asm progs to c in test_sock_addr (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_INET{4,6}_GET{PEER,SOCK}NAME (Jiri Benc) [1947006] - bpf: Enable bpf_{g,s}etsockopt in BPF_CGROUP_UDP{4,6}_SENDMSG (Jiri Benc) [1947006] - selftests/bpf: Verify that rebinding to port < 1024 from BPF works (Jiri Benc) [1947006] - bpf: Allow rewriting to ports under ip_unprivileged_port_start (Jiri Benc) [1947006] - net: port < inet_prot_sock(net) --> inet_port_requires_bind_service(net, port) (Jiri Benc) [1947006] - net: inet_is_local_reserved_port() should return bool not int (Jiri Benc) [1947006] - libbpf, xsk: Select AF_XDP BPF program based on kernel version (Jiri Benc) [1947006] - xsk: Fold xp_assign_dev and __xp_assign_dev (Jiri Benc) [1947006] - xsk: Remove explicit_free parameter from __xsk_rcv() (Jiri Benc) [1947006] - bpf: Split cgroup_bpf_enabled per attach type (Jiri Benc) [1947006] - bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE (Jiri Benc) [1947006] - net, xdp: Introduce xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - net, xdp: Introduce __xdp_build_skb_from_frame utility routine (Jiri Benc) [1947006] - bpf: Extend bind v4/v6 selftests for mark/prio/bindtoifindex (Jiri Benc) [1947006] - bpf: Allow to retrieve sol_socket opts from sock_addr progs (Jiri Benc) [1947006] - bpf: Replace fput with sockfd_put in sock map (Jiri Benc) [1947006] - tools: bpf: add SO_BINDTOIFINDEX to socket.h in tools (Jiri Benc) [1947006] - media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt() (Lucas Zampieri) [1956472] {CVE-2021-3542}- mm/hmm: make HMM_MIRROR an implicit option (Rafael Aquini) [1998534] - mm/hmm: allow HMM_MIRROR on all architectures with MMU (Rafael Aquini) [1998534] - mm: don't select MIGRATE_VMA_HELPER from HMM_MIRROR (Rafael Aquini) [1998534] - mm: sort out the DEVICE_PRIVATE Kconfig mess (Rafael Aquini) [1998534] - s390/ap/zcrypt: notify userspace with online, config and mode info (Stefan Schulze Frielinghaus) [1984895] - docs: livepatch: Fix a typo and remove the unnecessary gaps in a sentence (C. Erastus Toe) [1995447] - Documentation: livepatch: document reliable stacktrace (C. Erastus Toe) [1995447] - Documentation: livepatch: Convert to automatically generated contents (C. Erastus Toe) [1995447] - scsi: ibmvfc: Reinitialize sub-CRQs and perform channel enquiry after LPM (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Store return code of H_FREE_SUB_CRQ during cleanup (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Treat H_CLOSED as success during sub-CRQ registration (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Fix invalid sub-CRQ handles after hard reset (Desnes A. Nunes do Rosario) [1932217] - scsi: ibmvfc: Simplify handling of sub-CRQ initialization (Desnes A. Nunes do Rosario) [1932217] - exec: Transform exec_update_mutex into a rw_semaphore (Chris von Recklinghausen) [1993665] - perf: Break deadlock involving exec_update_mutex (Chris von Recklinghausen) [1993665] - pidfd: Add missing sock updates for pidfd_getfd() (Chris von Recklinghausen) [1993665] - exec: Move the call of prepare_binprm into search_binary_handler (Chris von Recklinghausen) [1993665] - exec: Allow load_misc_binary to call prepare_binprm unconditionally (Chris von Recklinghausen) [1993665] - exec: Convert security_bprm_set_creds into security_bprm_repopulate_creds (Chris von Recklinghausen) [1993665] - exec: Factor security_bprm_creds_for_exec out of security_bprm_set_creds (Chris von Recklinghausen) [1993665] - exec: Move would_dump into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Rename flush_old_exec begin_new_exec (Chris von Recklinghausen) [1993665] - exec: Move most of setup_new_exec into flush_old_exec (Chris von Recklinghausen) [1993665] - exec: In setup_new_exec cache current in the local variable me (Chris von Recklinghausen) [1993665] - exec: Merge install_exec_creds into setup_new_exec (Chris von Recklinghausen) [1993665] - exec: Rename the flag called_exec_mmap point_of_no_return (Chris von Recklinghausen) [1993665] - exec: Make unlocking exec_update_mutex explict (Chris von Recklinghausen) [1993665] - binfmt: Move install_exec_creds after setup_new_exec to match binfmt_elf (Chris von Recklinghausen) [1993665] - pidfd: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - perf: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: io_accounting: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - proc: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel/kcmp.c: Use new infrastructure to fix deadlocks in execve (Chris von Recklinghausen) [1993665] - kernel: doc: remove outdated comment cred.c (Chris von Recklinghausen) [1993665] - mm: docs: Fix a comment in process_vm_rw_core (Chris von Recklinghausen) [1993665] - selftests/ptrace: add test cases for dead-locks (Chris von Recklinghausen) [1993665] - exec: Fix a deadlock in strace (Chris von Recklinghausen) [1993665] - exec: Add exec_update_mutex to replace cred_guard_mutex (Chris von Recklinghausen) [1993665] - exec: Move exec_mmap right after de_thread in flush_old_exec (Chris von Recklinghausen) [1993665] - exec: Move cleanup of posix timers on exec out of de_thread (Chris von Recklinghausen) [1993665] - exec: Factor unshare_sighand out of de_thread and call it separately (Chris von Recklinghausen) [1993665] - exec: Only compute current once in flush_old_exec (Chris von Recklinghausen) [1993665] - pid: Implement pidfd_getfd syscall (Chris von Recklinghausen) [1993665] - pidfd: add P_PIDFD to waitid() (Chris von Recklinghausen) [1993665] - fork: return proper negative error code (Chris von Recklinghausen) [1993665] - copy_process(): don't use ksys_close() on cleanups (Chris von Recklinghausen) [1993665] - fork: don't check parent_tidptr with CLONE_PIDFD (Chris von Recklinghausen) [1993665] - fs/exec.c: move ->recursion_depth out of critical sections (Chris von Recklinghausen) [1993665] - clone: add CLONE_PIDFD (Chris von Recklinghausen) [1993665] - signal: support CLONE_PIDFD with pidfd_send_signal (Chris von Recklinghausen) [1993665] - arch: add pidfd and io_uring syscalls everywhere (Chris von Recklinghausen) [1993665] - signal: don't silently convert SI_USER signals to non-current pidfd (Chris von Recklinghausen) [1993665] - signal: add pidfd_send_signal() syscall (Chris von Recklinghausen) [1993665] - sched/core: Convert signal_struct.sigcnt to refcount_t (Chris von Recklinghausen) [1993665] - sched/core: Convert sighand_struct.count to refcount_t (Chris von Recklinghausen) [1993665] - exec: make prepare_bprm_creds static (Chris von Recklinghausen) [1993665] - fork: don't copy inconsistent signal handler state to child (Chris von Recklinghausen) [1993665] - Revert "perf: Break deadlock involving exec_update_mutex" (Chris von Recklinghausen) [1993665] - powerpc/mm/highmem: use __set_pte_at() for kmap_local() (Nico Pache) [2001854] - mm: extract might_alloc() debug check (Nico Pache) [2001854] - mm/mempolicy: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/memory.c: use vma_lookup() in __access_remote_vm() (Nico Pache) [2001854] - mm/mremap: use vma_lookup() in vma_to_resize() (Nico Pache) [2001854] - mm/migrate: use vma_lookup() in do_pages_stat_array() (Nico Pache) [2001854] - mm/ksm: use vma_lookup() in find_mergeable_vma() (Nico Pache) [2001854] - kernel/events/uprobes: use vma_lookup() in find_active_uprobe() (Nico Pache) [2001854] - misc/sgi-gru/grufault: use vma_lookup() in gru_find_vma() (Nico Pache) [2001854] - media: videobuf2: use vma_lookup() in get_vaddr_frames() (Nico Pache) [2001854] - drm/amdgpu: use vma_lookup() in amdgpu_ttm_tt_get_user_pages() (Nico Pache) [2001854] - net/ipv5/tcp: use vma_lookup() in tcp_zerocopy_receive() (Nico Pache) [2001854] - vfio: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - virt/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - x86/sgx: use vma_lookup() in sgx_encl_find() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s: use vma_lookup() in kvmppc_hv_setup_htab_rma() (Nico Pache) [2001854] - arch/powerpc/kvm/book3s_hv_uvmem: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - arch/arm64/kvm: use vma_lookup() instead of find_vma_intersection() (Nico Pache) [2001854] - drm/i915/selftests: use vma_lookup() in __igt_mmap() (Nico Pache) [2001854] - mm: add vma_lookup(), update find_vma_intersection() comments (Nico Pache) [2001854] - i915_vma: Rename vma_lookup to i915_vma_lookup (Nico Pache) [2001854] - media: videobuf2: Move frame_vector into media subsystem (Nico Pache) [2001854] - mm/frame-vector: Use FOLL_LONGTERM (Nico Pache) [2001854] - vhost: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - docs: mm/gup: pin_user_pages.rst: add a "case 5" (Nico Pache) [2001854] - mm/gup: documentation fix for pin_user_pages*() APIs (Nico Pache) [2001854] - mm/gup: frame_vector: convert get_user_pages() --> pin_user_pages() (Nico Pache) [2001854] - mm/gup: update pin_user_pages.rst for "case 3" (mmu notifiers) (Nico Pache) [2001854] - mm: untag user pointers in get_vaddr_frames (Nico Pache) [2001854] - media: videobuf2-vmalloc: get_userptr: buffers are always writable (Nico Pache) [2001854] - net: expand textsearch ts_state to fit skb_seq_state (Nico Pache) [2001854] - esp: avoid unneeded kmap_atomic call (Nico Pache) [2001854] - net: compound page support in skb_seq_read (Nico Pache) [2001854] - net: support kmap_local forced debugging in skb_frag_foreach (Nico Pache) [2001854] - mm/highmem: fix CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - x86/crashdump/32: Simplify copy_oldmem_page() (Nico Pache) [2001854] - io-mapping: Provide iomap_local variant (Nico Pache) [2001854] - mm/highmem: Provide kmap_local* (Nico Pache) [2001854] - sched: highmem: Store local kmaps in task struct (Nico Pache) [2001854] - x86: Support kmap_local() forced debugging (Nico Pache) [2001854] - mm/highmem: Provide CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP (Nico Pache) [2001854] - mm/highmem: Provide and use CONFIG_DEBUG_KMAP_LOCAL (Nico Pache) [2001854] - mm/highmem: Take kmap_high_get() properly into account (Nico Pache) [2001854] - highmem: High implementation details and document API (Nico Pache) [2001854] - Documentation/io-mapping: Remove outdated blurb (Nico Pache) [2001854] - io-mapping: Cleanup atomic iomap (Nico Pache) [2001854] - mm/highmem: Remove the old kmap_atomic cruft (Nico Pache) [2001854] - highmem: Get rid of kmap_types.h (Nico Pache) [2001854] - powerpc/mm/highmem: Switch to generic kmap atomic (Nico Pache) [2001854] - x86/mm/highmem: Use generic kmap atomic implementation (Nico Pache) [2001854] - highmem: Make DEBUG_HIGHMEM functional (Nico Pache) [2001854] - highmem: Provide generic variant of kmap_atomic* (Nico Pache) [2001854] - asm-generic: Provide kmap_size.h (Nico Pache) [2001854] - fs: Remove asm/kmap_types.h includes (Nico Pache) [2001854] - highmem: Remove unused functions (Nico Pache) [2001854] - mm/highmem: Un-EXPORT __kmap_atomic_idx() (Nico Pache) [2001854] - kmap: consolidate kmap_prot definitions (Nico Pache) [2001854] - parisc/kmap: remove duplicate kmap code (Nico Pache) [2001854] - arch/kmap: define kmap_atomic_prot() for all arch's (Nico Pache) [2001854] - arch/kmap: ensure kmap_prot visibility (Nico Pache) [2001854] - arch/kunmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - arch/kmap_atomic: consolidate duplicate code (Nico Pache) [2001854] - {x86,powerpc,microblaze}/kmap: move preempt disable (Nico Pache) [2001854] - arch/kunmap: remove duplicate kunmap implementations (Nico Pache) [2001854] - arch/kmap: remove redundant arch specific kmaps (Nico Pache) [2001854] - arch/kmap: remove BUG_ON() (Nico Pache) [2001854] - ipc: remove memcg accounting for sops objects in do_semtimedop() (Rafael Aquini) [1999705] {CVE-2021-3759} - memcg: enable accounting of ipc resources (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc: use kmalloc for msg_queue and shmid_kernel (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc sem: use kvmalloc for sem_undo allocation (Rafael Aquini) [1999705] {CVE-2021-3759} - ipc/sem.c: replace kvmalloc/memset with kvzalloc and use struct_size (Rafael Aquini) [1999705] {CVE-2021-3759} - x86: sev-es: Restore SEV-ES-specific version of copy_from_kernel_nofault() (Vitaly Kuznetsov) [2010082] - perf machine: Initialize srcline string member in add_location struct (Michael Petlan) [1981880] - ipmi: kcs_bmc_aspeed: Fix less than zero comparison of a unsigned int (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Optionally apply status address (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Fix IBFIE typo from datasheet (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Implement KCS SerIRQ configuration (Tony Camuso) [2003186] - ipmi: kcs_bmc: Add serio adaptor (Tony Camuso) [2003186] - ipmi: kcs_bmc: Enable IBF on open (Tony Camuso) [2003186] - ipmi: kcs_bmc: Allow clients to control KCS IRQ state (Tony Camuso) [2003186] - ipmi: kcs_bmc: Decouple the IPMI chardev from the core (Tony Camuso) [2003186] - ipmi: kcs_bmc: Strip private client data from struct kcs_bmc (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split headers into device and client (Tony Camuso) [2003186] - ipmi: kcs_bmc: Turn the driver data-structures inside-out (Tony Camuso) [2003186] - ipmi: kcs_bmc: Split out kcs_bmc_cdev_ipmi (Tony Camuso) [2003186] - ipmi: kcs_bmc: Rename {read,write}_{status,data}() functions (Tony Camuso) [2003186] - ipmi: kcs_bmc: Make status update atomic (Tony Camuso) [2003186] - ipmi: kcs_bmc_aspeed: Use of match data to extract KCS properties (Tony Camuso) [2003186] - ipmi/watchdog: Stop watchdog timer when the current action is 'none' (Tony Camuso) [2003186] - ipmi: kcs: aspeed: Adapt to new LPC DTS layout (Tony Camuso) [2003186] - ipmi_si: Join string literals back (Tony Camuso) [2003186] - ipmi_si: Drop redundant check before calling put_device() (Tony Camuso) [2003186] - ipmi_si: Use strstrip() to remove surrounding spaces (Tony Camuso) [2003186] - ipmi_si: Get rid of ->addr_source_cleanup() (Tony Camuso) [2003186] - ipmi_si: Reuse si_to_str[] array in ipmi_hardcode_init_one() (Tony Camuso) [2003186] - ipmi_si: Introduce ipmi_panic_event_str[] array (Tony Camuso) [2003186] - ipmi_si: Use proper ACPI macros to check error code for failures (Tony Camuso) [2003186] - ipmi_si: Utilize temporary variable to hold device pointer (Tony Camuso) [2003186] - ipmi_si: Remove bogus err_free label (Tony Camuso) [2003186] - ipmi: Handle device properties with software node API (Tony Camuso) [2003186] - ipmi:ssif: make ssif_i2c_send() void (Tony Camuso) [2003186] - ipmi: Refine retry conditions for getting device id (Tony Camuso) [2003186] - redhat/configs: enable CONFIG_IMA_WRITE_POLICY (Bruno Meneguele) [2010530] - Disable CONFIG_CRYPTO_SM4 on aarch64 (Vladis Dronov) [2008943] - powerpc/iommu: Report the correct most efficient DMA mask for PCI devices (Steve Best) [2007425] - powerpc/dma: Fix dma_map_ops::get_required_mask (Steve Best) [2007425] - ibmvnic: Reuse tx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse rx pools when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Reuse LTB when possible (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use bitmap for LTB map_ids (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: init_tx_pools move loop-invariant code (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_tx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use/rename local vars in init_rx_pools (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Fix up some comments and messages (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Consolidate code in replenish_rx_pool() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: check failover_pending in login response (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: retry reset if there are no other resets (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: parenthesize a check (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: free tx_pool if tso_pool alloc fails (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: set ltb->buff to NULL after freeing (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: account for bufs already saved in indir_buf (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: clean pending indirect buffs during reset (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use strscpy() instead of strncpy() (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix send_request_map incompatible argument (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warnings in build_hdr_descs_arr (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: fix kernel build warning in strncpy (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Allow device probe if the device is not ready at boot (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: Use list_for_each_entry() to simplify code in ibmvnic.c (Desnes A. Nunes do Rosario) [1998677] - ibmvnic: remove default label from to_string switch (Desnes A. Nunes do Rosario) [1998677] - intel_th: pci: Add Alder Lake-M support (Jiri Olsa) [1929502] - i2c: designware: Fix indentation in the header (David Arcari) [2004468] - i2c: designware: Use DIV_ROUND_CLOSEST() macro (David Arcari) [2004468] - math64: New DIV_S64_ROUND_CLOSEST helper (David Arcari) [2004468] - units: Add SI metric prefix definitions (David Arcari) [2004468] - i2c: busses: i2c-designware-master: Fix misnaming of 'i2c_dw_init_master()' (David Arcari) [2004468] - MAINTAINERS: adjust to removing i2c designware platform data (David Arcari) [2004468] - i2c: designware: Get rid of legacy platform data (David Arcari) [2004468] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [2004468] - i2c: designware: Switch over to i2c_freq_mode_string() (David Arcari) [2004468] - i2c: core: add api to provide frequency mode strings (David Arcari) [2004468] - i2c: designware: Fix return value check in navi_amd_register_client() (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (part 2) (David Arcari) [2004468] - i2c: designware: Add driver support for AMD NAVI GPU (David Arcari) [2004468] - i2c: designware: Adjust bus_freq_hz when refuse high speed mode set (David Arcari) [2004468] - i2c: designware: Get right data length (David Arcari) [2004468] - i2c: designware: Make register offsets all of the same width (David Arcari) [2004468] - i2c: designware: Switch header to use BIT() and GENMASK() (David Arcari) [2004468] - i2c: designware: slave should do WRITE_REQUESTED before WRITE_RECEIVED (David Arcari) [2004468] - i2c: designware: call i2c_dw_read_clear_intrbits_slave() once (David Arcari) [2004468] - i2c: busses: Use fallthrough pseudo-keyword (David Arcari) [2004468] - i2c: designware: platdrv: Set class based on DMI (David Arcari) [2004468] - i2c: designware: Adjust bus speed independently of ACPI (David Arcari) [2004468] - i2c: designware: Add Baikal-T1 System I2C support (David Arcari) [2004468] - i2c: designware: Move reg-space remapping into a dedicated function (David Arcari) [2004468] - i2c: designware: Retrieve quirk flags as early as possible (David Arcari) [2004468] - i2c: designware: Convert driver to using regmap API (David Arcari) [2004468] - i2c: designware: Discard Cherry Trail model flag (David Arcari) [2004468] - i2c: designware: Drop hard coded FIFO depth assignment (David Arcari) [2004468] - i2c: designware: Read counters from ACPI for PCI driver (David Arcari) [2004468] - i2c: designware: Move ACPI parts into common module (David Arcari) [2004468] - i2c: designware: Drop unneeded condition in i2c_dw_validate_speed() (David Arcari) [2004468] - i2c: designware: Move i2c_dw_validate_speed() helper to a common code (David Arcari) [2004468] - i2c: designware: Include proper headers in i2c-desingware-core.h (David Arcari) [2004468] - i2c: designware: Get rid of PCI driver specifics in common code (David Arcari) [2004468] - i2c: designware: Allow slave mode for PCI enumerated devices (David Arcari) [2004468] - i2c: designware: Rename i2c_dw_probe() to i2c_dw_probe_master() (David Arcari) [2004468] - i2c: designware: Switch PCI driver to use i2c_dw_configure_master() (David Arcari) [2004468] - i2c: designware: Move configuration routines to respective modules (David Arcari) [2004468] - i2c: designware: Use devm_platform_ioremap_resource() to simplify code (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for High Speed Mode (David Arcari) [2004468] - i2c: designware: Calculate SCL timing parameter for Fast Mode Plus (David Arcari) [2004468] - i2c: designware: platdrv: Remove DPM_FLAG_SMART_SUSPEND flag on BYT and CHT (David Arcari) [2004468] - i2c: drivers: Use generic definitions for bus frequencies (David Arcari) [2004468] - i2c: core: Provide generic definitions for bus frequencies (David Arcari) [2004468] - i2c: designware: Fix spelling typos in the comments (David Arcari) [2004468] - i2c: designware: Discard i2c_dw_read_comp_param() function (David Arcari) [2004468] - i2c: designware: Detect the FIFO size in the common code (David Arcari) [2004468] - i2c: designware: Add ACPI HID for Hisilicon Hip08-Lite I2C controller (David Arcari) [2004468] - i2c: designware: Fix optional reset error handling (David Arcari) [2004468] - i2c: designware: assert reset when error happen at ->probe() (David Arcari) [2004468] - i2c: designware: Synchronize IRQs when unregistering slave client (David Arcari) [2004468] - i2c: designware: Fix unused variable warning (David Arcari) [2004468] - i2c: designware: make use of devm_gpiod_get_optional (David Arcari) [2004468] - i2c: busses: Use dev_get_drvdata where possible (David Arcari) [2004468] - i2c: designware: ratelimit 'transfer when suspended' errors (David Arcari) [2004468] - i2c: designware: Add support for an interface clock (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Always use a dynamic adapter number (David Arcari) [2004468] - i2c: i2c-designware-platdrv: Cleanup setting of the adapter number (David Arcari) [2004468] - i2c: designware: Do not allow i2c_dw_xfer() calls while suspended (David Arcari) [2004468] - i2c: designware: Cleanup bus lock handling (David Arcari) [2004468] - i2c: designware: Set IRQF_NO_SUSPEND flag for all BYT and CHT controllers (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only when calculating timings (David Arcari) [2004468] - i2c: designware: Remove Cherry Trail PMIC I2C bus pm_disabled workaround (David Arcari) [2004468] - i2c: designware: add MSCC Ocelot support (David Arcari) [2004468] - i2c: designware: allow IP specific sda_hold_time (David Arcari) [2004468] - i2c: designware: move #ifdef CONFIG_OF to the top (David Arcari) [2004468] - i2c: designware: use generic table matching (David Arcari) [2004468] - i2c: designware: Add SPDX license tag (David Arcari) [2004468] - i2c: designware: Convert to use struct i2c_timings (David Arcari) [2004468] - i2c: designware-pcidrv: Mark expected switch fall-through (David Arcari) [2004468] - i2c: designware-master: use core to detect 'no zero length' quirk (David Arcari) [2004468] - i2c: designware: Add debug print for bus speed (David Arcari) [2004468] - i2c: designware: Add debug print for SDA hold time value (David Arcari) [2004468] - i2c: designware: Separate timing parameter setting from HW initalization (David Arcari) [2004468] - i2c: designware: Move SDA hold time configuration to common code (David Arcari) [2004468] - i2c: designware: Call i2c_dw_clk_rate() only once in i2c_dw_init_master() (David Arcari) [2004468] - i2c: designware: Don't use internal ___constant_swab32 (David Arcari) [2004468] - i2c: designware: Move register access detection to common code (David Arcari) [2004468] - i2c: designware: Remove needless variable from i2c_dw_init_slave() (David Arcari) [2004468]- x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1987067] - x86/amd_nb: Check vendor in AMD-only functions (David Arcari) [1987067] - hwmon: (k10temp) Add support for yellow carp (David Arcari) [1987067] - x86/amd_nb: Add AMD family 19h model 50h PCI ids (David Arcari) [1987067] - x86: Fix various typos in comments, take #2 (David Arcari) [1987067] - x86/amd_nb, char/amd64-agp: Use amd_nb_num() accessor (David Arcari) [1987067] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1987067] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 477 (David Arcari) [1987067] - x86/amd_nb: Make hygon_nb_misc_ids static (David Arcari) [1987067] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1987067] - x86/cpu: Create Hygon Dhyana architecture support file (David Arcari) [1987067] - hwmon: (k10temp) Rework the temperature offset calculation (David Arcari) [1987067] - hwmon: (k10temp) Don't show Tdie for all Zen/Zen2/Zen3 CPU/APU (David Arcari) [1987067] - hwmon: (k10temp) Add additional missing Zen2 and Zen3 APUs (David Arcari) [1987067] - hwmon: (k10temp) support Zen3 APUs (David Arcari) [1987067] - CI: Fix RT branch name (Veronika Kabatova) - platform/x86/intel: pmc/core: Add GBE Package C10 fix for Alder Lake PCH (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alder Lake low power mode support for pmc core (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Latency Tolerance Reporting (LTR) support to Alder Lake (David Arcari) [1962965] - platform/x86/intel: pmc/core: Add Alderlake support to pmc core driver (David Arcari) [1962965] - redhat/configs: Add CONFIG_X86_PLATFORM_DRIVERS_INTEL (David Arcari) [1962965] - platform/x86: intel_pmc_core: Move to intel sub-directory (David Arcari) [1962965] - platform/x86: intel_skl_int3472: Move to intel/ subfolder (David Arcari) [1962965] - platform/x86: intel_pmc_core: Prevent possibile overflow (David Arcari) [1962965] - ipvs: check that ip_vs_conn_tab_bits is between 8 and 20 (Andrea Claudi) [1816769] - KVM: nVMX: Filter out all unsupported controls when eVMCS was activated (Vitaly Kuznetsov) [2001915] - pinctrl: amd: Handle wake-up interrupt (David Arcari) [2000228] - pinctrl: amd: Add irq field data (David Arcari) [2000228] - pinctrl: amd: Fix an issue with shutdown when system set to s0ix (David Arcari) [2000228] - pinctrl/amd: Add device HID for new AMD GPIO controller (David Arcari) [2000228] - pinctrl: amd: Implement irq_set_wake (David Arcari) [2000228] - genirq/PM: Introduce IRQCHIP_ENABLE_WAKEUP_ON_SUSPEND flag (David Arcari) [2000228] - pinctrl: amd: remove debounce filter setting in IRQ type setting (David Arcari) [2000228] - pinctrl: amd: print debounce filter info in debugfs (David Arcari) [2000228] - pinctrl: amd: use higher precision for 512 RtcClk (David Arcari) [2000228] - pinctrl: amd: fix incorrect way to disable debounce filter (David Arcari) [2000228] - pinctrl: amd: Use irqchip template (David Arcari) [2000228] - pinctrl: pinctrl-amd: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (David Arcari) [2000228] - pinctrl: amd: Honor IRQ trigger type requested by the caller (David Arcari) [2000228] - pinctrl: Use new GPIO_LINE_DIRECTION (David Arcari) [2000228] - remove ioremap_nocache and devm_ioremap_nocache (David Arcari) [2000228] - pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler() (David Arcari) [2000228] - pinctrl: amd: disable spurious-firing GPIO IRQs (David Arcari) [2000228] - pinctrl: Remove dev_err() usage after platform_get_irq() (David Arcari) [2000228] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (David Arcari) [2000228] - pinctrl/amd: fix typo (David Arcari) [2000228] - pinctrl: pinctrl-amd: simplify getting .driver_data (David Arcari) [2000228] - pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type (David Arcari) [2000228] - pinctrl: Include nothing else (David Arcari) [2000228] - pinctrl/amd: only handle irq if it is pending and unmasked (David Arcari) [2000228] - pinctrl/amd: fix gpio irq level in debugfs (David Arcari) [2000228] - smartpqi: Update version to 2.1.10-025 (Don Brace) [1980106] - scsi: smartpqi: Replace one-element array with flexible-array member (Don Brace) [1980106] - scsi: smartpqi: Fix an error code in pqi_get_raid_map() (Don Brace) [1980106] - scsi: smartpqi: Update version to 2.1.10-020 (Don Brace) [1980106] - scsi: smartpqi: Fix ISR accessing uninitialized data (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for new ZTE controllers (Don Brace) [1980106] - scsi: smartpqi: Add PCI ID for new ntcom controller (Don Brace) [1980106] - scsi: smartpqi: Add SCSI cmd info for resets (Don Brace) [1980106] - scsi: smartpqi: Change Kconfig menu entry to Microchip (Don Brace) [1980106] - scsi: smartpqi: Change driver module macros to Microchip (Don Brace) [1980106] - scsi: smartpqi: Update copyright notices (Don Brace) [1980106] - scsi: smartpqi: Add PCI IDs for H3C P4408 controllers (Don Brace) [1980106]- lib/linear_ranges: fix repeated words & one typo (Nico Pache) [2006475] - lib: linear_ranges: Add missing MODULE_LICENSE() (Nico Pache) [2006475] - bpf: Fix regression on BPF_OBJ_GET with non-O_RDWR flags (Jiri Olsa) [1944798] - bpf, x86: Fix extable offset calculation (Jiri Olsa) [1944798] - bpftool: Add Makefile target bootstrap (Jiri Olsa) [1944798] - bpf: Avoid warning when re-casting __bpf_call_base into __bpf_call_base_args (Jiri Olsa) [1944798] - docs, bpf: Add minimal markup to address doc warning (Jiri Olsa) [1944798] - test_bpf: Remove EXPECTED_FAIL flag from bpf_fill_maxinsns11 (Jiri Olsa) [1944798] - trace: bpf: Allow bpf to attach to bare tracepoints (Jiri Olsa) [1944798] - docs: bpf: Clarify -mcpu=v3 requirement for atomic ops (Jiri Olsa) [1944798] - tools, headers: Sync struct bpf_perf_event_data (Jiri Olsa) [1944798] - selftests/bpf: Add missing cleanup in atomic_bounds test (Jiri Olsa) [1944798] - docs: bpf: Clarify BPF_CMPXCHG wording (Jiri Olsa) [1944798] - docs: bpf: Fixup atomics markup (Jiri Olsa) [1944798] - bpf: Document new atomic instructions (Jiri Olsa) [1944798] - kbuild: Do not clean resolve_btfids if the output does not exist (Jiri Olsa) [1944798] - kbuild: Add resolve_btfids clean to root clean target (Jiri Olsa) [1944798] - bpf: Introduce task_vma bpf_iter (Jiri Olsa) [1944798] - bpf: Allow bpf_d_path in bpf_iter program (Jiri Olsa) [1944798] - selftests/bpf: Add test for bpf_iter_task_vma (Jiri Olsa) [1944798] - bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs (Jiri Olsa) [1944798] - libbpf: Use SOCK_CLOEXEC when opening the netlink socket (Jiri Olsa) [1944798] - bpf: Update selftests to reflect new error states (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-32 (Jiri Olsa) [1944798] - bpf, x86: Validate computation of branch displacements for x86-64 (Jiri Olsa) [1944798] - bpf: program: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1944798] - bpf: Take module reference for trampoline in module (Jiri Olsa) [1944798] - bpf/selftests: Test that kernel rejects a TCP CC with an invalid license (Jiri Olsa) [1944798] - bpf: Enforce that struct_ops programs be GPL-only (Jiri Olsa) [1944798] - libbpf: Fix bail out from 'ringbuf_process_ring()' on error (Jiri Olsa) [1944798] - selftests/bpf: Add selftest for pointer-to-array-of-struct BTF dump (Jiri Olsa) [1944798] - libbpf: Fix BTF dump of pointer-to-array-of-struct (Jiri Olsa) [1944798] - bpf, selftests: Fix up some test_verifier cases for unprivileged (Jiri Olsa) [1944798] - bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp (Jiri Olsa) [1944798] - libbpf: Fix INSTALL flag order (Jiri Olsa) [1944798] - libbpf: Clear map_info before each bpf_obj_get_info_by_fd (Jiri Olsa) [1944798] - samples, bpf: Add missing munmap in xdpsock (Jiri Olsa) [1944798] - tools/resolve_btfids: Fix build error with older host toolchains (Jiri Olsa) [1944798] - selftests/bpf: Fix a compiler warning in global func test (Jiri Olsa) [1944798] - bpf: Drop imprecise log message (Jiri Olsa) [1944798] - bpf: Clear percpu pointers in bpf_prog_clone_free() (Jiri Olsa) [1944798] - bpf: Fix a warning message in mark_ptr_not_null_reg() (Jiri Olsa) [1944798] - selftests/bpf: Add unit tests for pointers in global functions (Jiri Olsa) [1944798] - bpf: Support pointers in global func args (Jiri Olsa) [1944798] - bpf: Extract nullable reg type conversion into a helper function (Jiri Olsa) [1944798] - bpf: Rename bpf_reg_state variables (Jiri Olsa) [1944798] - tools/resolve_btfids: Add /libbpf to .gitignore (Jiri Olsa) [1944798] - bpf: selftests: Add non function pointer test to struct_ops (Jiri Olsa) [1944798] - libbpf: Ignore non function pointer member in struct_ops (Jiri Olsa) [1944798] - bpf: Clear per_cpu pointers during bpf_prog_realloc (Jiri Olsa) [1944798] - selftests/bpf: Add a selftest for the tracing bpf_get_socket_cookie (Jiri Olsa) [1944798] - selftests/bpf: Use vmlinux.h in socket_cookie_prog.c (Jiri Olsa) [1944798] - selftests/bpf: Integrate the socket_cookie test to test_progs (Jiri Olsa) [1944798] - bpf: Expose bpf_get_socket_cookie to tracing programs (Jiri Olsa) [1944798] - selftests/bpf: Convert test_xdp_redirect.sh to bash (Jiri Olsa) [1944798] - selftests/bpf: Add a test for map-in-map and per-cpu maps in sleepable progs (Jiri Olsa) [1944798] - bpf: Allows per-cpu maps and map-in-map in sleepable programs (Jiri Olsa) [1944798] - selftests/bpf: Improve recursion selftest (Jiri Olsa) [1944798] - selftest/bpf: Add a recursion test (Jiri Olsa) [1944798] - bpf: Count the number of times recursion was prevented (Jiri Olsa) [1944798] - bpf: Add per-program recursion prevention mechanism (Jiri Olsa) [1944798] - bpf: Compute program stats for sleepable programs (Jiri Olsa) [1944798] - bpf: Run sleepable programs with migration disabled (Jiri Olsa) [1944798] - bpf: Optimize program stats (Jiri Olsa) [1944798] - selftests/bpf: Simplify the calculation of variables (Jiri Olsa) [1944798] - selftest/bpf: Add test for var-offset stack access (Jiri Olsa) [1944798] - tools/resolve_btfids: Set srctree variable unconditionally (Jiri Olsa) [1944798] - tools/resolve_btfids: Check objects before removing (Jiri Olsa) [1944798] - tools/resolve_btfids: Build libbpf and libsubcmd in separate directories (Jiri Olsa) [1944798] - bpf: Simplify bool comparison (Jiri Olsa) [1944798] - selftests/bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf/benchs/bench_ringbufs: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Refactor BPF_PSEUDO_CALL checking as a helper function (Jiri Olsa) [1944798] - bpf/selftests: Update the IMA test to use BPF ring buffer (Jiri Olsa) [1944798] - bpf: Allow usage of BPF ringbuffer in sleepable programs (Jiri Olsa) [1944798] - bpf/selftests: Add a short note about vmtest.sh in README.rst (Jiri Olsa) [1944798] - bpf: Helper script for running BPF presubmit tests (Jiri Olsa) [1944798] - bpf: Emit explicit NULL pointer checks for PROBE_LDX instructions. (Jiri Olsa) [1944798] - libbpf: Stop using feature-detection Makefiles (Jiri Olsa) [1944798] - selftest/bpf: Testing for multiple logs on REJECT (Jiri Olsa) [1944798] - samples: bpf: Remove unneeded semicolon (Jiri Olsa) [1944798] - bpf: Propagate stack bounds to registers in atomics w/ BPF_FETCH (Jiri Olsa) [1944798] - samples/bpf: Add include dir for MIPS Loongson64 to fix build errors (Jiri Olsa) [1944798] - bpf: Simplify cases in bpf_base_func_proto (Jiri Olsa) [1944798] - samples/bpf: Set flag __SANE_USERSPACE_TYPES__ for MIPS to fix build warnings (Jiri Olsa) [1944798] - selftests/bpf: Avoid useless void *-casts (Jiri Olsa) [1944798] - selftests/bpf: Consistent malloc/calloc usage (Jiri Olsa) [1944798] - selftests/bpf: Avoid heap allocation (Jiri Olsa) [1944798] - selftests/bpf: Define local variables at the beginning of a block (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct generic_data * (Jiri Olsa) [1944798] - selftests/bpf: Change type from void * to struct ifaceconfigobj * (Jiri Olsa) [1944798] - selftests/bpf: Remove casting by introduce local variable (Jiri Olsa) [1944798] - selftests/bpf: Improve readability of xdpxceiver/worker_pkt_validate() (Jiri Olsa) [1944798] - selftests/bpf: Remove memory leak (Jiri Olsa) [1944798] - selftests/bpf: Fix style warnings (Jiri Olsa) [1944798] - selftests/bpf: Remove unused enums (Jiri Olsa) [1944798] - selftests/bpf: Remove a lot of ifobject casting (Jiri Olsa) [1944798] - samples/bpf: Add xdp program on egress for xdp_redirect_map (Jiri Olsa) [1944798] - bpf: Fix typo in scalar{,32}_min_max_rsh comments (Jiri Olsa) [1944798] - bpf, docs: Update build procedure for manually compiling LLVM and Clang (Jiri Olsa) [1944798] - selftest/bpf: Fix typo (Jiri Olsa) [1944798] - libbpf: Use string table index from index table if needed (Jiri Olsa) [1944798] - bpf: Try to avoid kzalloc in cgroup/{s,g}etsockopt (Jiri Olsa) [1944798] - bpf: Permit size-0 datasec (Jiri Olsa) [1944798] - selftests: bpf: Add a new test for bare tracepoints (Jiri Olsa) [1944798] - selftests/bpf: Add verifier tests for x64 jit jump padding (Jiri Olsa) [1944798] - bpf,x64: Pad NOPs to make images converge more easily (Jiri Olsa) [1944798] - tools/bpftool: Add -Wall when building BPF programs (Jiri Olsa) [1944798] - bpf: Declare __bpf_free_used_maps() unconditionally (Jiri Olsa) [1944798] - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h (Jiri Olsa) [1944798] - kernel.spec: Add support to use vmlinux.h (Jiri Olsa) [1989087] - spec: Add vmlinux.h to kernel-devel package (Jiri Olsa) [1989087] - lib/test_scanf: Handle n_bits == 0 in random tests (Chris von Recklinghausen) [1985062] - printk/console: Check consistent sequence number when handling race in console_unlock() (Chris von Recklinghausen) [1985062] - printk: fix cpu lock ordering (Chris von Recklinghausen) [1985062] - lib/dump_stack: move cpu lock to printk.c (Chris von Recklinghausen) [1985062] - random32: Fix implicit truncation warning in prandom_seed_state() (Chris von Recklinghausen) [1985062] - lib: test_scanf: Remove pointless use of type_min() with unsigned types (Chris von Recklinghausen) [1985062] - selftests: lib: Add wrapper script for test_scanf (Chris von Recklinghausen) [1985062] - lib: test_scanf: Add tests for sscanf number conversion (Chris von Recklinghausen) [1985062] - lib: vsprintf: Fix handling of number field widths in vsscanf (Chris von Recklinghausen) [1985062] - lib: vsprintf: scanf: Negative number must have field width > 1 (Chris von Recklinghausen) [1985062] - usb: host: xhci-tegra: Switch to use ptTs (Chris von Recklinghausen) [1985062] - nilfs2: Switch to use ptTs (Chris von Recklinghausen) [1985062] - kdb: Switch to use ptTs (Chris von Recklinghausen) [1985062] - lib/vsprintf: Allow to override ISO 8601 date and time separator (Chris von Recklinghausen) [1985062] - printk: Remove trailing semicolon in macros (Chris von Recklinghausen) [1985062] - printk: Move EXPORT_SYMBOL() closer to vprintk definition (Chris von Recklinghausen) [1985062] - kernel/printk.c: Fixed mundane typos (Chris von Recklinghausen) [1985062] - printk: rename vprintk_func to vprintk (Chris von Recklinghausen) [1985062] - printk: console: remove unnecessary safe buffer usage (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove _nolock() variants (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock (Chris von Recklinghausen) [1985062] - printk: introduce a kmsg_dump iterator (Chris von Recklinghausen) [1985062] - printk: kmsg_dumper: remove @active field (Chris von Recklinghausen) [1985062] - printk: add syslog_lock (Chris von Recklinghausen) [1985062] - printk: use atomic64_t for devkmsg_user.seq (Chris von Recklinghausen) [1985062] - printk: use seqcount_latch for clear_seq (Chris von Recklinghausen) [1985062] - printk: introduce CONSOLE_LOG_MAX (Chris von Recklinghausen) [1985062] - printk: consolidate kmsg_dump_get_buffer/syslog_print_all code (Chris von Recklinghausen) [1985062] - printk: refactor kmsg_dump_get_buffer() (Chris von Recklinghausen) [1985062] - printk: kmsg_dump: remove unused fields (Chris von Recklinghausen) [1985062] - printk: limit second loop of syslog_print_all (Chris von Recklinghausen) [1985062] - mtd: mtdoops: synchronize kmsg_dumper (Chris von Recklinghausen) [1985062] - vsprintf: dump full information of page flags in pGp (Chris von Recklinghausen) [1985062] - mm, slub: don't combine pr_err with INFO (Chris von Recklinghausen) [1985062] - mm, slub: use pGp to print page flags (Chris von Recklinghausen) [1985062] - lib/vsprintf.c: remove leftover 'f' and 'F' cases from bstr_printf() (Chris von Recklinghausen) [1985062] - printk: clarify the documentation for plain pointer printing (Chris von Recklinghausen) [1985062] - lib/vsprintf: do not show no_hash_pointers message multiple times (Chris von Recklinghausen) [1985062] - kdb: Refactor env variables get/set code (Chris von Recklinghausen) [1985062] - kernel: debug: Ordinary typo fixes in the file gdbstub.c (Chris von Recklinghausen) [1985062] - kdb: Simplify kdb commands registration (Chris von Recklinghausen) [1985062] - seqlock,lockdep: Fix seqcount_latch_init() (Chris von Recklinghausen) [1985062] - printk: avoid prb_first_valid_seq() where possible (Chris von Recklinghausen) [1985062] - printk: rectify kernel-doc for prb_rec_init_wr() (Chris von Recklinghausen) [1985062] - lib/vsprintf: no_hash_pointers prints all addresses as unhashed (Chris von Recklinghausen) [1985062] - kselftest: add support for skipped tests (Chris von Recklinghausen) [1985062] - lib: use KSTM_MODULE_GLOBALS macro in kselftest drivers (Chris von Recklinghausen) [1985062] - printk: fix deadlock when kernel panic (Chris von Recklinghausen) [1985062] - torture: Remove "Failed to add ttynull console" false positive (Chris von Recklinghausen) [1985062] - printk: fix string termination for record_print_text() (Chris von Recklinghausen) [1985062] - printk: fix buffer overflow potential for print_text() (Chris von Recklinghausen) [1985062] - printk: fix kmsg_dump_get_buffer length calulations (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix line counting (Chris von Recklinghausen) [1985062] - Revert "init/console: Use ttynull as a fallback when there is no console" (Chris von Recklinghausen) [1985062] - printk: remove obsolete dead assignment (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Reference text_data_ring directly in callees. (Chris von Recklinghausen) [1985062] - printk/console: Allow to disable console output by using console="" or console=null (Chris von Recklinghausen) [1985062] - init/console: Use ttynull as a fallback when there is no console (Chris von Recklinghausen) [1985062] - printk: remove logbuf_lock writer-protection of ringbuffer (Chris von Recklinghausen) [1985062] - printk: inline log_output(),log_store() in vprintk_store() (Chris von Recklinghausen) [1985062] - printk: remove unneeded dead-store assignment (Chris von Recklinghausen) [1985062] - printk: finalize records with trailing newlines (Chris von Recklinghausen) [1985062] - printk: ringbuffer: Wrong data pointer when appending small string (Chris von Recklinghausen) [1985062] - printk: reduce setup_text_buf size to LOG_LINE_MAX (Chris von Recklinghausen) [1985062] - printk: avoid and/or handle record truncation (Chris von Recklinghausen) [1985062] - printk: remove dict ring (Chris von Recklinghausen) [1985062] - printk: move dictionary keys to dev_printk_info (Chris von Recklinghausen) [1985062] - printk: move printk_info into separate array (Chris von Recklinghausen) [1985062] - printk: reimplement log_cont using record extension (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add finalization/extension support (Chris von Recklinghausen) [1985062] - printk: ringbuffer: change representation of states (Chris von Recklinghausen) [1985062] - printk: ringbuffer: clear initial reserved fields (Chris von Recklinghausen) [1985062] - printk: ringbuffer: add BLK_DATALESS() macro (Chris von Recklinghausen) [1985062] - printk: ringbuffer: relocate get_data() (Chris von Recklinghausen) [1985062] - printk: ringbuffer: avoid memcpy() on state_var (Chris von Recklinghausen) [1985062] - printk: ringbuffer: fix setting state in desc_read() (Chris von Recklinghausen) [1985062] - seqlock: Introduce seqcount_latch_t (Chris von Recklinghausen) [1985062] - scripts/gdb: update for lockless printk ringbuffer (Chris von Recklinghausen) [1985062] - scripts/gdb: add utils.read_ulong() (Chris von Recklinghausen) [1985062] - printk: reduce LOG_BUF_SHIFT range for H8300 (Chris von Recklinghausen) [1985062] - printk: ringbuffer: support dataless records (Chris von Recklinghausen) [1985062] - MAINTAIERS: Add John Ogness as printk reviewer (Chris von Recklinghausen) [1985062] - printk: use the lockless ringbuffer (Chris von Recklinghausen) [1985062] - Revert "printk: lock/unlock console only for new logbuf entries" (Chris von Recklinghausen) [1985062] - printk: add lockless ringbuffer (Chris von Recklinghausen) [1985062] - crash: add VMCOREINFO macro to define offset in a struct declared by typedef (Chris von Recklinghausen) [1985062] - printk: Use fallthrough pseudo-keyword (Chris von Recklinghausen) [1985062] - kernel.h: Move oops_in_progress to printk.h (Chris von Recklinghausen) [1985062] - serial: 8250: change lock order in serial8250_do_startup() (Chris von Recklinghausen) [1985062] - kernel: printk: delete repeated words in comments (Chris von Recklinghausen) [1985062] - random32: Restore __latent_entropy attribute on net_rand_state (Chris von Recklinghausen) [1985062] - random32: add a tracepoint for prandom_u32() (Chris von Recklinghausen) [1985062] - init: open code setting up stdin/stdout/stderr (Chris von Recklinghausen) [1985062] - hvc: unify console setup naming (Chris von Recklinghausen) [1985062] - console: Fix trivia typo 'change' -> 'chance' (Chris von Recklinghausen) [1985062] - console: Propagate error code from console ->setup() (Chris von Recklinghausen) [1985062] - tty: hvc: Return proper error code from console ->setup() hook (Chris von Recklinghausen) [1985062] - lib/vsprintf: Force type of flags value for gfp_t (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace custom spec to print decimals with generic one (Chris von Recklinghausen) [1985062] - lib/vsprintf: Replace hidden BUILD_BUG_ON() with static_assert() (Chris von Recklinghausen) [1985062] - printk: Make linux/printk.h self-contained (Chris von Recklinghausen) [1985062] - doc:kmsg: explicitly state the return value in case of SEEK_CUR (Chris von Recklinghausen) [1985062] - Replace HTTP links with HTTPS ones: vsprintf (Chris von Recklinghausen) [1985062] - Revert "kernel/printk: add kmsg SEEK_CUR handling" (Chris von Recklinghausen) [1985062] - random32: move the pseudo-random 32-bit definitions to prandom.h (Chris von Recklinghausen) [1985062] - printk/kdb: Redirect printk messages into kdb in any context (Chris von Recklinghausen) [1985062] - usb: pulse8-cec: Switch to use ptT (Chris von Recklinghausen) [1985062] - lib/vsprintf: Print time64_t in human readable format (Chris von Recklinghausen) [1985062] - printk: Remove pr_cont_once() (Chris von Recklinghausen) [1985062] - printk: handle blank console arguments passed in. (Chris von Recklinghausen) [1985062] - kernel/printk: add kmsg SEEK_CUR handling (Chris von Recklinghausen) [1985062] - printk: Fix a typo in comment "interator"->"iterator" (Chris von Recklinghausen) [1985062] - printk: Correctly set CON_CONSDEV even when preferred console was not registered (Chris von Recklinghausen) [1985062] - printk: Fix preferred console selection with multiple matches (Chris von Recklinghausen) [1985062] - printk: Move console matching logic into a separate function (Chris von Recklinghausen) [1985062] - lib/vsprintf: update comment about simple_strto() functions (Chris von Recklinghausen) [1985062] - printk: Convert a use of sprintf to snprintf in console_unlock (Chris von Recklinghausen) [1985062] - lib/dynamic_debug.c: use address-of operator on section symbols (Chris von Recklinghausen) [1985062] - printk: fix exclusive_console replaying (Chris von Recklinghausen) [1985062] - Revert "fs: remove ksys_dup()" (Chris von Recklinghausen) [1985062] - early init: fix error handling when opening /dev/console (Chris von Recklinghausen) [1985062] - device.h: move dev_printk()-like functions to dev_printk.h (Chris von Recklinghausen) [1985062] - docs: printk-formats: add ptrdiff_t type to printk-formats (Chris von Recklinghausen) [1985062] - fs: remove ksys_dup() (Chris von Recklinghausen) [1985062] - MAINTAINERS: Add VSPRINTF (Chris von Recklinghausen) [1985062] - tools lib api: Renaming pr_warning to pr_warn (Chris von Recklinghausen) [1985062] - lib: cpu_rmap: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - trace: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - vgacon: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - scsi: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: intel_oaktrail: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: asus-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - platform/x86: eeepc-laptop: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - oprofile: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - of: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - macintosh: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - idsn: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - ide: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - crypto: n2: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - clocksource: samsung_pwm_timer: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - gdrom: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - drbd: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - x86: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - arm64: Use pr_warn instead of pr_warning (Chris von Recklinghausen) [1985062] - dump_stack: avoid the livelock of the dump_lock (Chris von Recklinghausen) [1985062] - lib/vsprintf: Add pfw conversion specifier for printing fwnode names (Chris von Recklinghausen) [1985062] - lib/vsprintf: Make use of fwnode API to obtain node names and separators (Chris von Recklinghausen) [1985062] - ABI: Update dev-kmsg documentation to match current kernel behaviour (Chris von Recklinghausen) [1985062] - printk: Replace strncmp() with str_has_prefix() (Chris von Recklinghausen) [1985062] - lib/test_printf: Remove obvious comments from pd and pD tests (Chris von Recklinghausen) [1985062] - lib/test_printf: Add test of null/invalid pointer dereference for dentry (Chris von Recklinghausen) [1985062] - vsprintf: Prevent crash when dereferencing invalid pointers for pD (Chris von Recklinghausen) [1985062] - printk: Do not lose last line in kmsg buffer dump (Chris von Recklinghausen) [1985062] - scripts/gdb: fix lx-dmesg when CONFIG_PRINTK_CALLER is set (Chris von Recklinghausen) [1985062] - lib/vsprintf: Remove support for pF and pf in favour of pS and ps (Chris von Recklinghausen) [1985062] - tracing: kdb: Allow ftdump to skip all but the last few entries (Chris von Recklinghausen) [1985062] - tracing: kdb: The skip_lines parameter should have been skip_entries (Chris von Recklinghausen) [1985062] - tracing: Add trace_total_entries() / trace_total_entries_cpu() (Chris von Recklinghausen) [1985062] - tty: Add NULL TTY driver (Chris von Recklinghausen) [1985062] - treewide: Switch printk users from pf and pF to ps and pS, respectively (Chris von Recklinghausen) [1985062] - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver (Chris von Recklinghausen) [1985062] - device.h: Add __cold to dev_ logging functions (Chris von Recklinghausen) [1985062] - dynamic_debug: move pr_err from module.c to ddebug_add_module (Chris von Recklinghausen) [1985062] - dynamic_debug: don't duplicate modname in ddebug_add_module (Chris von Recklinghausen) [1985062] - kdb: use bool for binary state indicators (Chris von Recklinghausen) [1985062] - panic: avoid deadlocks in re-entrant console drivers (Chris von Recklinghausen) [1985062] - x86/apic: Trivial coding style fixes (Chris von Recklinghausen) [1985062] - video/console/vgacon: Print big fat warning with nomodeset (Chris von Recklinghausen) [1985062] - device: Add #define dev_fmt similar to #define pr_fmt (Chris von Recklinghausen) [1985062] - bcache: replace 'pF' by 'pS' in seq_printf() (Chris von Recklinghausen) [1985062] - Revert "Merge: redhat: switch secureboot kernel image signing to release keys" (Augusto Caringi) - drm/nouveau/fifo/ga102: initialise chid on return from channel creation (Ben Skeggs) [1997878] - drm/nouveau/ga102-: support ttm buffer moves via copy engine (Ben Skeggs) [1997878] - drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows (Ben Skeggs) [1997878] - drm/nouveau/kms/nv50: workaround EFI GOP window channel format differences (Ben Skeggs) [1997878] - drm/nouveau/disp: power down unused DP links during init (Ben Skeggs) [1997878] - drm/nouveau: recognise GA107 (Ben Skeggs) [1997878] - PCI: Mark TI C667X to avoid bus reset (Alex Williamson) [1975768] - redhat: switch secureboot kernel image signing to release keys (Bruno Meneguele) - CI: handle RT branches in a single config (Veronika Kabatova) - CI: Fix RT check branch name (Veronika Kabatova) - CI: Drop private CI config (Veronika Kabatova) - CI: extend template use (Veronika Kabatova) - Revert "Merge: mt7921e: enable new Mediatek wireless hardware" (Bruno Meneguele) [2009501] - megaraid_sas: fix concurrent access to ISR between IRQ polling and real interrupt (Tomas Henzl) [2009022] - scsi: megaraid_sas: mq_poll support (Tomas Henzl) [2009022] - [PATCH v2] scsi: qla2xxx: Suppress unnecessary log messages during login (Nilesh Javali) [1982186] - scsi: qla2xxx: Fix excessive messages during device logout (Nilesh Javali) [1982186] - PCI: pciehp: Ignore Link Down/Up caused by DPC (Myron Stowe) [1981741] - arm64: kpti: Fix "kpti=off" when KASLR is enabled (Mark Salter) [1979731] - arm64: Fix CONFIG_ARCH_RANDOM=n build (Mark Salter) [1979731] - redhat/configs: aarch64: add CONFIG_ARCH_RANDOM (Mark Salter) [1979731] - arm64: Implement archrandom.h for ARMv8.5-RNG (Mark Salter) [1979731] - arm64: kconfig: Fix alignment of E0PD help text (Mark Salter) [1979731] - arm64: Use register field helper in kaslr_requires_kpti() (Mark Salter) [1979731] - arm64: Simplify early check for broken TX1 when KASLR is enabled (Mark Salter) [1979731] - arm64: Use a variable to store non-global mappings decision (Mark Salter) [1979731] - arm64: Don't use KPTI where we have E0PD (Mark Salter) [1979731] - arm64: Factor out checks for KASLR in KPTI code into separate function (Mark Salter) [1979731] - redhat/configs: Add CONFIG_ARM64_E0PD (Mark Salter) [1979731] - arm64: Add initial support for E0PD (Mark Salter) [1979731] - arm64: cpufeature: Export matrix and other features to userspace (Mark Salter) [1980098] - arm64: docs: cpu-feature-registers: Document ID_AA64PFR1_EL1 (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Rewrite bitfields that don't follow [e, s] (Mark Salter) [1980098] - docs/arm64: cpu-feature-registers: Documents missing visible fields (Mark Salter) [1980098] - arm64: Introduce system_capabilities_finalized() marker (Mark Salter) [1980098] - arm64: entry.S: Do not preempt from IRQ before all cpufeatures are enabled (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: Document HWCAP_SB (Mark Salter) [1980098] - docs/arm64: elf_hwcaps: sort the HWCAP{, 2} documentation by ascending value (Mark Salter) [1980098] - arm64: cpufeature: Treat ID_AA64ZFR0_EL1 as RAZ when SVE is not enabled (Mark Salter) [1980098] - arm64: cpufeature: Effectively expose FRINT capability to userspace (Mark Salter) [1980098] - arm64: cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG} (Mark Salter) [1980098] - arm64: Expose FRINT capabilities to userspace (Mark Salter) [1980098] - arm64: Expose ARMv8.5 CondM capability to userspace (Mark Salter) [1980098] - docs: arm64: convert perf.txt to ReST format (Mark Salter) [1980098] - docs: arm64: convert docs to ReST and rename to .rst (Mark Salter) [1980098] - Documentation/arm64: HugeTLB page implementation (Mark Salter) [1980098] - Documentation/arm64/sve: Couple of improvements and typos (Mark Salter) [1980098] - arm64: cpufeature: Fix missing ZFR0 in __read_sysreg_by_encoding() (Mark Salter) [1980098] - arm64: Expose SVE2 features for userspace (Mark Salter) [1980098] - arm64: Advertise ARM64_HAS_DCPODP cpu feature (Mark Salter) [1980098] - arm64: add CVADP support to the cache maintenance helper (Mark Salter) [1980098] - arm64: Fix minor issues with the dcache_by_line_op macro (Mark Salter) [1980098] - arm64: Expose DC CVADP to userspace (Mark Salter) [1980098] - arm64: Handle trapped DC CVADP (Mark Salter) [1980098] - arm64: HWCAP: encapsulate elf_hwcap (Mark Salter) [1980098] - arm64: HWCAP: add support for AT_HWCAP2 (Mark Salter) [1980098] - x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [1965331] - x86/MCE/AMD, EDAC/mce_amd: Remove struct smca_hwid.xec_bitmap (Aristeu Rozanski) [1965331] - EDAC, mce_amd: Print ExtErrorCode and description on a single line (Aristeu Rozanski) [1965331]- scsi: ibmvfc: Fix command state accounting and stale response detection (Steve Best) [1988157] - tasklist_lock, ppc64: Convert tasklist_lock to use qrwlock for ppc64 (Waiman Long) [1978377] - tasklist_lock, ppc64: Provide infrastructure to support specific use of qrwlock (Waiman Long) [1978377] - redhat/configs: Disable CONFIG_PPC_QUEUED_SPINLOCKS (Waiman Long) [1978377] - qspinlock: use signed temporaries for cmpxchg (Waiman Long) [1978377] - powerpc/qspinlock: Optimised atomic_try_cmpxchg_lock() that adds the lock hint (Waiman Long) [1978377] - powerpc/pseries: Implement paravirt qspinlocks for SPLPAR (Waiman Long) [1978377] - powerpc/64s: Implement queued spinlocks and rwlocks (Waiman Long) [1978377] - powerpc: Move spinlock implementation to simple_spinlock (Waiman Long) [1978377] - locking/spinlocks: Remove an instruction from spin and write locks (Waiman Long) [1978377] - net: Fix skb->csum update in inet_proto_csum_replace16(). (Balazs Nemeth) [1975193] - [s390] s390/dasd: fix use after free in dasd path handling (Claudio Imbrenda) [1996764] - powerpc/bpf: Fix detecting BPF atomic instructions (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Test bpf_map__set_inner_map_fd (Viktor Malik) [1931483] - selftests/bpf: ringbuf_multi: Use runtime page size (Viktor Malik) [1931483] - libbpf: Add bpf_map__inner_map API (Viktor Malik) [1931483] - selftests/bpf: ringbuf: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: mmap: Use runtime page size (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in map_ptr (Viktor Malik) [1931483] - selftests/bpf: Pass page size from userspace in sockopt_sk (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Convert to use BPF skeleton (Viktor Malik) [1931483] - selftests/bpf: test_progs/sockopt_sk: Remove version (Viktor Malik) [1931483] - powerpc/64s: Fix crashes when toggling entry flush barrier (Diego Domingos) [1894804] - powerpc/64s: flush L1D after user accesses (Diego Domingos) [1894804] - powerpc/uaccess: Evaluate macro arguments once, before user access is allowed (Diego Domingos) [1894804] - powerpc: Fix __clear_user() with KUAP enabled (Diego Domingos) [1894804] - powerpc: Implement user_access_begin and friends (Diego Domingos) [1894804] - powerpc: Add a framework for user access tracking (Diego Domingos) [1894804] - powerpc/64s: flush L1D on kernel entry (Diego Domingos) [1894804] - redhat: enable CONFIG_SLAB_FREELIST_HARDENED (Rafael Aquini) [1862283] - include/uapi/linux/swab.h: fix userspace breakage, use __BITS_PER_LONG for swap (Rafael Aquini) [1862283] - uapi: rename ext2_swab() to swab() and share globally in swab.h (Rafael Aquini) [1862283] - lib/timerqueue: Rely on rbtree semantics for next timer (Phil Auld) [1984798] - e1000e: Do not take care about recovery NVM checksum (Ken Cox) [1984558] - qrtr: disable CONFIG_QRTR for non x86_64 archs (Íñigo Huguet) [1999642] - ceph: fix possible null-pointer dereference in ceph_mdsmap_decode() (Jeff Layton) [1989999] - ceph: fix dereference of null pointer cf (Jeff Layton) [1989999] - ceph: correctly handle releasing an embedded cap flush (Jeff Layton) [1989999] - ceph: take snap_empty_lock atomically with snaprealm refcount change (Jeff Layton) [1989999] - ceph: don't WARN if we're still opening a session to an MDS (Jeff Layton) [1989999] - rbd: don't hold lock_rwsem while running_list is being drained (Jeff Layton) [1989999] - rbd: always kick acquire on "acquired" and "released" notifications (Jeff Layton) [1989999] - ceph: take reference to req->r_parent at point of assignment (Jeff Layton) [1989999] - ceph: eliminate ceph_async_iput() (Jeff Layton) [1989999] - ceph: don't take s_mutex in ceph_flush_snaps (Jeff Layton) [1989999] - ceph: don't take s_mutex in try_flush_caps (Jeff Layton) [1989999] - ceph: don't take s_mutex or snap_rwsem in ceph_check_caps (Jeff Layton) [1989999] - ceph: eliminate session->s_gen_ttl_lock (Jeff Layton) [1989999] - ceph: allow ceph_put_mds_session to take NULL or ERR_PTR (Jeff Layton) [1989999] - ceph: clean up locking annotation for ceph_get_snap_realm and __lookup_snap_realm (Jeff Layton) [1989999] - ceph: add some lockdep assertions around snaprealm handling (Jeff Layton) [1989999] - ceph: decoding error in ceph_update_snap_realm should return -EIO (Jeff Layton) [1989999] - ceph: add IO size metrics support (Jeff Layton) [1989999] - ceph: update and rename __update_latency helper to __update_stdev (Jeff Layton) [1989999] - ceph: simplify the metrics struct (Jeff Layton) [1989999] - libceph: fix doc warnings in cls_lock_client.c (Jeff Layton) [1989999] - libceph: remove unnecessary ret variable in ceph_auth_init() (Jeff Layton) [1989999] - libceph: kill ceph_none_authorizer::reply_buf (Jeff Layton) [1989999] - ceph: make ceph_queue_cap_snap static (Jeff Layton) [1989999] - ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty (Jeff Layton) [1989999] - libceph: set global_id as soon as we get an auth ticket (Jeff Layton) [1989999] - libceph: don't pass result into ac->ops->handle_reply() (Jeff Layton) [1989999] - ceph: fix error handling in ceph_atomic_open and ceph_lookup (Jeff Layton) [1989999] - ceph: must hold snap_rwsem when filling inode for async create (Jeff Layton) [1989999] - libceph: Fix spelling mistakes (Jeff Layton) [1989999] - libceph: don't set global_id until we get an auth ticket (Jeff Layton) [1989999] - libceph: bump CephXAuthenticate encoding version (Jeff Layton) [1989999] - ceph: don't allow access to MDS-private inodes (Jeff Layton) [1989999] - ceph: fix up some bare fetches of i_size (Jeff Layton) [1989999] - ceph: support getting ceph.dir.rsnaps vxattr (Jeff Layton) [1989999] - ceph: drop pinned_page parameter from ceph_get_caps (Jeff Layton) [1989999] - ceph: fix inode leak on getattr error in __fh_to_dentry (Jeff Layton) [1989999] - ceph: only check pool permissions for regular files (Jeff Layton) [1989999] - ceph: send opened files/pinned caps/opened inodes metrics to MDS daemon (Jeff Layton) [1989999] - ceph: avoid counting the same request twice or more (Jeff Layton) [1989999] - ceph: rename the metric helpers (Jeff Layton) [1989999] - ceph: fix kerneldoc copypasta over ceph_start_io_direct (Jeff Layton) [1989999] - ceph: don't use d_add in ceph_handle_snapdir (Jeff Layton) [1989999] - ceph: don't clobber i_snap_caps on non-I_NEW inode (Jeff Layton) [1989999] - ceph: fix fall-through warnings for Clang (Jeff Layton) [1989999] - net: ceph: Fix a typo in osdmap.c (Jeff Layton) [1989999] - ceph: don't allow type or device number to change on non-I_NEW inodes (Jeff Layton) [1989999] - ceph: defer flushing the capsnap if the Fb is used (Jeff Layton) [1989999] - ceph: allow queueing cap/snap handling after putting cap references (Jeff Layton) [1989999] - ceph: clean up inode work queueing (Jeff Layton) [1989999] - ceph: fix flush_snap logic after putting caps (Jeff Layton) [1989999] - libceph: fix "Boolean result is used in bitwise operation" warning (Jeff Layton) [1989999] - new helper: inode_wrong_type() (Jeff Layton) [1989999] - kabi: Adding symbol single_release (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol single_open (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_read (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_printf (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol seq_lseek (fs/seq_file.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol unregister_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_init (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_del (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_alloc (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol cdev_add (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol alloc_chrdev_region (fs/char_dev.c) (Čestmír Kalina) [1945486] - kabi: Adding symbol pcie_capability_read_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_read_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pcie_capability_clear_and_set_word (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_write_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_set_power_state (drivers/pci/pci.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_dword (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_read_config_byte (drivers/pci/access.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_irq_vector (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_get_device (drivers/pci/search.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_free_irq_vectors (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol pci_alloc_irq_vectors_affinity (drivers/pci/msi.c) (Čestmír Kalina) [1945485] - kabi: Adding symbol kexec_crash_loaded (kernel/kexec_core.c) (Čestmír Kalina) [1945491] - perf/x86/intel: Fix PEBS-via-PT reload base value for Extended PEBS (Michael Petlan) [1998051] - perf/x86/intel/uncore: Fix Add BW copypasta (Michael Petlan) [1998051] - perf/x86/intel/uncore: Add BW counters for GT, IA and IO breakdown (Michael Petlan) [1998051] - Revert "ice: Add initial support framework for LAG" (Michal Schmidt) [1999016] - net: re-initialize slow_gro flag at gro_list_prepare time (Paolo Abeni) [2002367] - cxgb4: dont touch blocked freelist bitmap after free (Rahul Lakkireddy) [1998148] - cxgb4vf: configure ports accessible by the VF (Rahul Lakkireddy) [1961329] - scsi: lpfc: Fix memory leaks in error paths while issuing ELS RDF/SCR request (Dick Kennedy) [1976332] - scsi: lpfc: Keep NDLP reference until after freeing the IOCB after ELS handling (Dick Kennedy) [1976332] - scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash (Dick Kennedy) [1976332]- md/raid10: properly indicate failure when ending a failed write request (Nigel Croxon) [1983859] - md: Constify attribute_group structs (Nigel Croxon) [1983859] - md: mark some personalities as deprecated (Nigel Croxon) [1983859] - md/raid1: rename print_msg with r1bio_existed (Nigel Croxon) [1983859] - async_xor: check src_offs is not NULL before updating it (Nigel Croxon) [1983859] - async_xor: increase src_offs when dropping destination page (Nigel Croxon) [1983859] - md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1983859] - md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1983859] - md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1983859] - md/raid6: let async recovery function support different page offset (Nigel Croxon) [1983859] - md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1983859] - md/raid5: convert to new xor compution interface (Nigel Croxon) [1983859] - md/raid5: add new xor function to support different page offset (Nigel Croxon) [1983859] - md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1983859] - md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1983859] - x86/cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR (Jay Shin) [1994421] - crypto: ccp - Add support for new CCP/PSP device ID (Vladis Dronov) [1987094] - crypto: ccp - shutdown SEV firmware on kexec (Vladis Dronov) [1987094] - crypto: ccp - Use list_move_tail instead of list_del/list_add_tail in ccp-dmaengine.c (Vladis Dronov) [1987094] - crypto: ccp: ccp-dev: Fix a little doc-rot (Vladis Dronov) [1987094] - crypto: ccp - Fix a resource leak in an error handling path (Vladis Dronov) [1987094] - crypto: ccp - Annotate SEV Firmware file names (Vladis Dronov) [1987094] - crypto: ccp - Make ccp_dev_suspend and ccp_dev_resume void functions (Vladis Dronov) [1987094] - crypto: ccp - Use DEFINE_SPINLOCK() for spinlock (Vladis Dronov) [1987094] - crypto: ccp - A value assigned to a variable is never used (Vladis Dronov) [1987094] - crypto: ccp - Don't initialize SEV support without the SEV feature (Vladis Dronov) [1987094] - crypto: ccp - fix error handling (Vladis Dronov) [1987094] - crypto: ccp - use generic power management (Vladis Dronov) [1987094] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1987094] - crypto: ahash - remove useless setting of type flags (Vladis Dronov) [1987094] - crypto: ccp - Silence strncpy warning (Vladis Dronov) [1987094] - crypto: ccp - permit asynchronous skcipher as fallback (Vladis Dronov) [1987094] - crypto: ccp - Fix sparse warnings (Vladis Dronov) [1987094] - crypto: ccp - Update CCP driver maintainer information (Vladis Dronov) [1987094] - crypto: ccp - Fix use of merged scatterlists (Vladis Dronov) [1987094] - crypto: ccp - remove redundant assignment to variable ret (Vladis Dronov) [1987094] - crypto: ccp - use crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: hash - introduce crypto_shash_tfm_digest() (Vladis Dronov) [1987094] - crypto: ccp -- don't "select" CONFIG_DMADEVICES (Vladis Dronov) [1987094] - crypto: ccp - Update MAINTAINERS for CCP driver (Vladis Dronov) [1987094] - crypto: ccp - switch from ablkcipher to skcipher (Vladis Dronov) [1987094] - ipc: replace costly bailout check in sysvipc_find_ipc() (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - ipc/util.c: sysvipc_find_ipc() should increase position index (Rafael Aquini) [1980619 1987128] {CVE-2021-3669} - psi: Fix psi state corruption when schedule() races with cgroup move (Waiman Long) [2002025] - psi: Optimize task switch inside shared cgroups (Waiman Long) [2002025] - kthread: Fix PF_KTHREAD vs to_kthread() race (Waiman Long) [2002025] - sched/fair: Ignore percpu threads for imbalance pulls (Waiman Long) [2002025] - sched: Fix get_push_task() vs migrate_disable() (Waiman Long) [2002025] - sched: Don't defer CPU pick to migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Simplify set_affinity_pending refcounts (Waiman Long) [2002025] - sched: Fix affine_move_task() self-concurrency (Waiman Long) [2002025] - sched: Optimize migration_cpu_stop() (Waiman Long) [2002025] - sched: Collate affine_move_task() stoppers (Waiman Long) [2002025] - sched: Simplify migration_cpu_stop() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() requeueing (Waiman Long) [2002025] - sched: Relax the set_cpus_allowed_ptr() semantics (Waiman Long) [2002025] - sched: Fix CPU hotplug / tighten is_per_cpu_kthread() (Waiman Long) [2002025] - sched: Prepare to use balance_push in ttwu() (Waiman Long) [2002025] - workqueue: Restrict affinity change to rescuer (Waiman Long) [2002025] - workqueue: Tag bound workers with KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - kthread: Extract KTHREAD_IS_PER_CPU (Waiman Long) [2002025] - sched: Don't run cpu-online with balance_push() enabled (Waiman Long) [2002025] - workqueue: Use cpu_possible_mask instead of cpu_active_mask to break affinity (Waiman Long) [2002025] - sched/core: Print out straggler tasks in sched_cpu_dying() (Waiman Long) [2002025] - sched: Optimize finish_lock_switch() (Waiman Long) [2002025] - sched: Fix migration_cpu_stop() WARN (Waiman Long) [2002025] - sched/core: Add missing completion for affine_move_task() waiters (Waiman Long) [2002025] - stop_machine, rcu: Mark functions as notrace (Waiman Long) [2002025] - sched: Comment affine_move_task() (Waiman Long) [2002025] - sched: Deny self-issued __set_cpus_allowed_ptr() when migrate_disable() (Waiman Long) [2002025] - sched/proc: Print accurate cpumask vs migrate_disable() (Waiman Long) [2002025] - sched: Make migrate_disable/enable() independent of RT (Waiman Long) [2002025] - sched: Fix migrate_disable() vs rt/dl balancing (Waiman Long) [2002025] - sched, lockdep: Annotate ->pi_lock recursion (Waiman Long) [2002025] - sched,rt: Use the full cpumask for balancing (Waiman Long) [2002025] - sched,rt: Use cpumask_any*_distribute() (Waiman Long) [2002025] - sched/core: Make migrate disable and CPU hotplug cooperative (Waiman Long) [2002025] - sched: Fix migrate_disable() vs set_cpus_allowed_ptr() (Waiman Long) [2002025] - sched: Add migrate_disable() (Waiman Long) [2002025] - sched: Massage set_cpus_allowed() (Waiman Long) [2002025] - sched: Fix hotplug vs CPU bandwidth control (Waiman Long) [2002025] - sched/hotplug: Consolidate task migration on CPU unplug (Waiman Long) [2002025] - workqueue: Manually break affinity on hotplug (Waiman Long) [2002025] - sched/core: Wait for tasks being pushed away on hotplug (Waiman Long) [2002025] - sched/hotplug: Ensure only per-cpu kthreads run during hotplug (Waiman Long) [2002025] - sched: Fix balance_callback() (Waiman Long) [2002025] - maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault (Waiman Long) [2002025] - s390/ftrace: fix potential crashes when switching tracers (Waiman Long) [2002025] - psi: Move PF_MEMSTALL out of task->flags (Waiman Long) [2002025] - psi: Optimize switching tasks inside shared cgroups (Waiman Long) [2002025] - psi: Fix cpu.pressure for cpu.max and competing cgroups (Waiman Long) [2002025] - stop_machine: Make stop_cpus() static (Waiman Long) [2002025] - stop_machine: remove try_stop_cpus helper (Waiman Long) [2002025] - kernel.h: Add non_block_start/end() (Waiman Long) [2002025] - processor: get rid of cpu_relax_yield (Waiman Long) [2002025] - processor: remove spin_cpu_yield (Waiman Long) [2002025] - s390: improve wait logic of stop_machine (Waiman Long) [2002025] - sched/core: Fix typo in comment (Waiman Long) [2002025] - ia64/tlb: Eradicate tlb_migrate_finish() callback (Waiman Long) [2002025] - sched/core: Remove unnecessary unlikely() in push_*_task() (Waiman Long) [2002025] - sched/fair: Reduce long-tail newly idle balance cost (Phil Auld) [1971918] - hwmon: (acpi_power_meter) Fix lockdep splat (Waiman Long) [1997807] - redhat: open the RHEL-8.6 development (Augusto Caringi) [2000679] - rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086] - selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- rcu: Avoid unneeded function call in rcu_read_unlock() (Waiman Long) [1997500] - mt76: connac: do not schedule mac_work if the device is not running (Íñigo Huguet) [1956419 1972045] - mt7921e: enable module in config (Íñigo Huguet) [1956419 1972045] - Revert tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1999926] - libnvdimm/namespace: Differentiate between probe mapping and runtime mapping (Jeff Moyer) [1795719] - libnvdimm/pfn_dev: Don't clear device memmap area during generic namespace probe (Jeff Moyer) [1795719] - perf/x86/intel/uncore: Clean up error handling path of iio mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix for iio mapping on Skylake Server (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MMIO type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the PCI type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Rename uncore_notifier to uncore_pci_sub_notifier (Michael Petlan) [1837330] - perf/x86/intel/uncore: Generic support for the MSR type of uncore blocks (Michael Petlan) [1837330] - perf/x86/intel/uncore: Parse uncore discovery tables (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to IIO PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Wrap the max dies calculation into an accessor (Michael Petlan) [1837330] - perf/x86/intel/uncore: Expose an Uncore unit to PMON mapping (Michael Petlan) [1837330] - perf/x86/intel/uncore: Validate MMIO address before accessing (Michael Petlan) [1837330] - perf/x86/intel/uncore: Record the size of mapped area (Michael Petlan) [1837330] - perf/x86/intel/uncore: Fix oops when counting IMC uncore events on some TGL (Michael Petlan) [1837330] - crypto: qat - remove unused macro in FW loader (Vladis Dronov) [1920086] - crypto: qat - check return code of qat_hal_rd_rel_reg() (Vladis Dronov) [1920086] - crypto: qat - report an error if MMP file size is too large (Vladis Dronov) [1920086] - crypto: qat - check MMP size before writing to the SRAM (Vladis Dronov) [1920086] - crypto: qat - return error when failing to map FW (Vladis Dronov) [1920086] - crypto: qat - enable detection of accelerators hang (Vladis Dronov) [1920086] - crypto: qat - Fix a double free in adf_create_ring (Vladis Dronov) [1920086] - crypto: qat - fix error path in adf_isr_resource_alloc() (Vladis Dronov) [1920086] - crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init (Vladis Dronov) [1920086] - crypto: qat - don't release uninitialized resources (Vladis Dronov) [1920086] - crypto: qat - fix use of 'dma_map_single' (Vladis Dronov) [1920086] - crypto: qat - fix unmap invalid dma address (Vladis Dronov) [1920086] - crypto: qat - fix spelling mistake: "messge" -> "message" (Vladis Dronov) [1920086] - crypto: qat - reduce size of mapped region (Vladis Dronov) [1920086] - crypto: qat - change format string and cast ring size (Vladis Dronov) [1920086] - crypto: qat - fix potential spectre issue (Vladis Dronov) [1920086] - crypto: qat - configure arbiter mapping based on engines enabled (Vladis Dronov) [1920086]- selftest: netfilter: add test case for unreplied tcp connections (Florian Westphal) [1991523] - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state (Florian Westphal) [1991523] - net/sched: store the last executed chain also for clsact egress (Davide Caratti) [1980537] - ice: fix Tx queue iteration for Tx timestamp enablement (Ken Cox) [1999743] - perf evsel: Add missing cloning of evsel->use_config_name (Michael Petlan) [1838635] - perf Documentation: Document intel-hybrid support (Michael Petlan) [1838635] - perf tests: Skip 'perf stat metrics (shadow stat) test' for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Convert perf time to TSC' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Session topology' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Parse and process metrics' test for hybrid (Michael Petlan) [1838635] - perf tests: Support 'Track with sched_switch' test for hybrid (Michael Petlan) [1838635] - perf tests: Skip 'Setup struct perf_event_attr' test for hybrid (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Roundtrip evsel->name' test (Michael Petlan) [1838635] - perf tests: Add hybrid cases for 'Parse event definition strings' test (Michael Petlan) [1838635] - perf record: Uniquify hybrid event name (Michael Petlan) [1838635] - perf stat: Warn group events from different hybrid PMU (Michael Petlan) [1838635] - perf stat: Filter out unmatched aggregation for hybrid event (Michael Petlan) [1838635] - perf stat: Add default hybrid events (Michael Petlan) [1838635] - perf record: Create two hybrid 'cycles' events by default (Michael Petlan) [1838635] - perf parse-events: Support event inside hybrid pmu (Michael Petlan) [1838635] - perf parse-events: Compare with hybrid pmu name (Michael Petlan) [1838635] - perf parse-events: Create two hybrid raw events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid cache events (Michael Petlan) [1838635] - perf parse-events: Create two hybrid hardware events (Michael Petlan) [1838635] - perf stat: Uniquify hybrid event name (Michael Petlan) [1838635] - perf pmu: Add hybrid helper functions (Michael Petlan) [1838635] - perf pmu: Save detected hybrid pmus to a global pmu list (Michael Petlan) [1838635] - perf pmu: Save pmu name (Michael Petlan) [1838635] - perf pmu: Simplify arguments of __perf_pmu__new_alias (Michael Petlan) [1838635] - perf jevents: Support unit value "cpu_core" and "cpu_atom" (Michael Petlan) [1838635] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1838635]- mptcp: Only send extra TCP acks in eligible socket states (Paolo Abeni) [1997178] - mptcp: fix possible divide by zero (Paolo Abeni) [1997178] - mptcp: drop tx skb cache (Paolo Abeni) [1997178] - mptcp: fix memory leak on address flush (Paolo Abeni) [1997178] - ice: Only lock to update netdev dev_addr (Michal Schmidt) [1995868] - ice: restart periodic outputs around time changes (Ken Cox) [1992750] - ice: Fix perout start time rounding (Ken Cox) [1992750] - net/sched: ets: fix crash when flipping from 'strict' to 'quantum' (Davide Caratti) [1981184] - ovl: prevent private clone if bind mount is not allowed (Miklos Szeredi) [1993131] {CVE-2021-3732} - gfs2: Don't call dlm after protocol is unmounted (Bob Peterson) [1997193] - gfs2: don't stop reads while withdraw in progress (Bob Peterson) [1997193] - gfs2: Mark journal inodes as "don't cache" (Bob Peterson) [1997193] - bpf: bpftool: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1997124] - perf/x86/intel: Apply mid ACK for small core (Michael Petlan) [1838573] - perf/x86/intel/lbr: Zero the xstate buffer on allocation (Michael Petlan) [1838573] - perf: Fix task context PMU for Hetero (Michael Petlan) [1838573] - perf/x86/intel: Fix fixed counter check warning for some Alder Lake (Michael Petlan) [1838573] - perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context (Michael Petlan) [1838573] - x86/fpu/xstate: Fix an xstate size check warning with architectural LBRs (Michael Petlan) [1838573] - perf/x86/rapl: Add support for Intel Alder Lake (Michael Petlan) [1838573] - perf/x86/cstate: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/msr: Add Alder Lake CPU support (Michael Petlan) [1838573] - perf/x86/intel/uncore: Add Alder Lake support (Michael Petlan) [1838573] - perf: Extend PERF_TYPE_HARDWARE and PERF_TYPE_HW_CACHE (Michael Petlan) [1838573] - perf/x86/intel: Add Alder Lake Hybrid support (Michael Petlan) [1838573] - perf/x86: Support filter_match callback (Michael Petlan) [1838573] - perf/x86/intel: Add attr_update for Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Add structures for the attributes of Hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Register hybrid PMUs (Michael Petlan) [1838573] - perf/x86: Factor out x86_pmu_show_pmu_cap (Michael Petlan) [1838573] - perf/x86: Remove temporary pmu assignment in event_init (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_extra_regs (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_event_constraints (Michael Petlan) [1838573] - perf/x86/intel: Factor out intel_pmu_check_num_counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for extra_regs (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for event constraints (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for hardware cache event (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for unconstrained (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for counters (Michael Petlan) [1838573] - perf/x86: Hybrid PMU support for intel_ctrl (Michael Petlan) [1838573] - perf/x86/intel: Hybrid PMU support for perf capabilities (Michael Petlan) [1838573] - perf/x86: Track pmu in per-CPU cpu_hw_events (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES for arch LBR read (Michael Petlan) [1838573] - perf/x86/intel/lbr: Support XSAVES/XRSTORS for LBR context switch (Michael Petlan) [1838573] - x86/fpu/xstate: Add helpers for LBR dynamic supervisor feature (Michael Petlan) [1838573] - x86/fpu/xstate: Support dynamic supervisor feature for LBR (Michael Petlan) [1838573] - x86/fpu: Use proper mask to replace full instruction mask (Michael Petlan) [1838573] - x86/cpu: Add helper function to get the type of the current hybrid CPU (Michael Petlan) [1838573] - x86/cpufeatures: Enumerate Intel Hybrid Technology feature bit (Michael Petlan) [1838573] - HID: make arrays usage and value to be the same (Benjamin Tissoires) [1974942] - ACPI: PM: s2idle: Invert Microsoft UUID entry and exit (David Arcari) [1960440] - platform/x86: amd-pmc: Fix undefined reference to __udivdi3 (David Arcari) [1960440] - platform/x86: amd-pmc: Fix missing unlock on error in amd_pmc_send_cmd() (David Arcari) [1960440] - platform/x86: amd-pmc: Use return code on suspend (David Arcari) [1960440] - platform/x86: amd-pmc: Add new acpi id for future PMC controllers (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for ACPI ID AMDI0006 (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging s0ix counters (David Arcari) [1960440] - platform/x86: amd-pmc: Add support for logging SMU metrics (David Arcari) [1960440] - platform/x86: amd-pmc: call dump registers only once (David Arcari) [1960440] - platform/x86: amd-pmc: Fix SMU firmware reporting mechanism (David Arcari) [1960440] - platform/x86: amd-pmc: Fix command completion code (David Arcari) [1960440] - usb: pci-quirks: disable D3cold on xhci suspend for s2idle on AMD Renoir (David Arcari) [1960440] - ACPI: PM: Only mark EC GPE for wakeup on Intel systems (David Arcari) [1960440] - ACPI: PM: Adjust behavior for field problems on AMD systems (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for new Microsoft UUID (David Arcari) [1960440] - ACPI: PM: s2idle: Add support for multiple func mask (David Arcari) [1960440] - ACPI: PM: s2idle: Refactor common code (David Arcari) [1960440] - ACPI: PM: s2idle: Use correct revision id (David Arcari) [1960440] - ACPI: PM: s2idle: Add missing LPS0 functions for AMD (David Arcari) [1960440] - lockd: Fix invalid lockowner cast after vfs_test_lock (Benjamin Coddington) [1986138]- blk-mq: fix is_flush_rq (Ming Lei) [1992700] - blk-mq: fix kernel panic during iterating over flush request (Ming Lei) [1992700]- smb2: fix use-after-free in smb2_ioctl_query_info() (Ronnie Sahlberg) [1952781] - dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc() (Mike Snitzer) [1996854] - md/raid10: Remove rcu_dereference when it doesn't need rcu lock to protect (Nigel Croxon) [1978115] - scsi: csiostor: Mark known unused variable as __always_unused (Raju Rangoju) [1961333] - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw() (Raju Rangoju) [1961333] - scsi: csiostor: Remove set but not used variable 'rln' (Raju Rangoju) [1961333] - scsi: csiostor: Return value not required for csio_dfs_destroy (Raju Rangoju) [1961333] - scsi: csiostor: Fix NULL check before debugfs_remove_recursive (Raju Rangoju) [1961333] - scsi: csiostor: Don't enable IRQs too early (Raju Rangoju) [1961333] - scsi: csiostor: Fix spelling typos (Raju Rangoju) [1961333] - scsi: csiostor: Prefer pcie_capability_read_word() (Raju Rangoju) [1961333] - scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd() (Raju Rangoju) [1961394] - net: Use skb_frag_off accessors (Raju Rangoju) [1961394] - net: Use skb accessors in network drivers (Raju Rangoju) [1961394] - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in cxgb4 and ulds (Raju Rangoju) [1961394] - scsi: libcxgbi: Fix a use after free in cxgbi_conn_xmit_pdu() (Raju Rangoju) [1961394] - scsi: libcxgbi: Use kvzalloc instead of opencoded kzalloc/vzalloc (Raju Rangoju) [1961394] - scsi: libcxgbi: Remove unnecessary NULL checks for 'tdata' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove an unnecessary NULL check for 'cconn' pointer (Raju Rangoju) [1961394] - scsi: cxgb4i: Clean up a debug printk (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix dereference of pointer tdata before it is null checked (Raju Rangoju) [1961394] - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy() (Raju Rangoju) [1961394] - scsi: libcxgbi: remove unused function to stop warning (Raju Rangoju) [1961394] - scsi: libcxgbi: add a check for NULL pointer in cxgbi_check_route() (Raju Rangoju) [1961394] - net/chelsio: Delete drive and module versions (Raju Rangoju) [1961394] - chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1961394] - [netdrv] treewide: prefix header search paths with $(srctree)/ (Raju Rangoju) [1961394] - libcxgb: fix incorrect ppmax calculation (Raju Rangoju) [1961394] - scsi: cxgb4i: Fix TLS dependency (Raju Rangoju) [1961394] - [target] treewide: Use fallthrough pseudo-keyword (Raju Rangoju) [1961394] - scsi: cxgb4i: Add support for iSCSI segmentation offload (Raju Rangoju) [1961394] - [target] treewide: Use sizeof_field() macro (Raju Rangoju) [1961394] - [target] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961394] - scsi: cxgb4i: Remove superfluous null check (Raju Rangoju) [1961394]- KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl (CVE-2021-3653) (Jon Maloy) [1985413] {CVE-2021-3653} - KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656) (Jon Maloy) [1985430] {CVE-2021-3656} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1985159] - drm/i915/display: support ddr5 mem types (Lyude Paul) [1992233] - drm/i915/adl_s: Update ddi buf translation tables (Lyude Paul) [1992233] - drm/i915/adl_s: Wa_14011765242 is also needed on A1 display stepping (Lyude Paul) [1992233] - drm/i915/adl_s: Extend Wa_1406941453 (Lyude Paul) [1992233] - drm/i915: Implement Wa_1508744258 (Lyude Paul) [1992233] - drm/i915/adl_s: Fix dma_mask_size to 39 bit (Lyude Paul) [1992233] - drm/i915: Add the missing adls vswing tables (Lyude Paul) [1992233] - drm/i915: Add Wa_14011060649 (Lyude Paul) [1992233] - drm/i915/adl_s: Add Interrupt Support (Lyude Paul) [1992233] - drm/amdgpu: add another Renoir DID (Lyude Paul) [1980900]- net/mlx5: Fix flow table chaining (Amir Tzin) [1987139] - openvswitch: fix sparse warning incorrect type (Mark Gray) [1992773] - openvswitch: fix alignment issues (Mark Gray) [1992773] - openvswitch: update kdoc OVS_DP_ATTR_PER_CPU_PIDS (Mark Gray) [1992773] - openvswitch: Introduce per-cpu upcall dispatch (Mark Gray) [1992773] - KVM: X86: Expose bus lock debug exception to guest (Paul Lai) [1842322] - KVM: X86: Add support for the emulation of DR6_BUS_LOCK bit (Paul Lai) [1842322] - scsi: libfc: Fix array index out of bound exception (Chris Leech) [1972643] - scsi: libfc: FDMI enhancements (Chris Leech) [1972643] - scsi: libfc: Add FDMI-2 attributes (Chris Leech) [1972643] - scsi: qedf: Add vendor identifier attribute (Chris Leech) [1972643] - scsi: libfc: Initialisation of RHBA and RPA attributes (Chris Leech) [1972643] - scsi: libfc: Correct the condition check and invalid argument passed (Chris Leech) [1972643] - scsi: libfc: Work around -Warray-bounds warning (Chris Leech) [1972643] - scsi: fc: FDMI enhancement (Chris Leech) [1972643] - scsi: libfc: Move scsi/fc_encode.h to libfc (Chris Leech) [1972643] - scsi: fc: Correct RHBA attributes length (Chris Leech) [1972643] - block: return ELEVATOR_DISCARD_MERGE if possible (Ming Lei) [1991976] - x86/fpu: Prevent state corruption in __fpu__restore_sig() (Terry Bowman) [1970086] - x86/fpu: Invalidate FPU state after a failed XRSTOR from a user buffer (Terry Bowman) [1970086] - x86/pkru: Write hardware init value to PKRU when xstate is init (Terry Bowman) [1970086] - x86/process: Check PF_KTHREAD and not current->mm for kernel threads (Terry Bowman) [1970086] - x86/fpu: Add address range checks to copy_user_to_xstate() (Terry Bowman) [1970086] - selftests/x86: Test signal frame XSTATE header corruption handling (Terry Bowman) [1970086] - Bump DRM backport version to 5.12.14 (Lyude Paul) [1944405] - drm/i915: Use the correct max source link rate for MST (Lyude Paul) [1944405 1966599] - drm/dp_mst: Use Extended Base Receiver Capability DPCD space (Lyude Paul) [1944405 1966599] - drm/i915/display: Defeature PSR2 for RKL and ADL-S (Lyude Paul) [1944405] - drm/i915/adl_s: ADL-S platform Update PCI ids for Mobile BGA (Lyude Paul) [1944405] - drm/amdgpu: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/radeon: wait for moving fence after pinning (Lyude Paul) [1944405] - drm/nouveau: wait for moving fence after pinning v2 (Lyude Paul) [1944405] - radeon: use memcpy_to/fromio for UVD fw upload (Lyude Paul) [1944405] - drm/amd/amdgpu:save psp ring wptr to avoid attack (Lyude Paul) [1944405] - drm/amd/display: Fix potential memory leak in DMUB hw_init (Lyude Paul) [1944405] - drm/amdgpu: refine amdgpu_fru_get_product_info (Lyude Paul) [1944405] - drm/amd/display: Allow bandwidth validation for 0 streams. (Lyude Paul) [1944405] - drm: Lock pointer access in drm_master_release() (Lyude Paul) [1944405] - drm: Fix use-after-free read in drm_getunique() (Lyude Paul) [1944405] - drm/amdgpu: make sure we unpin the UVD BO (Lyude Paul) [1944405] - drm/amdgpu: Don't query CE and UE errors (Lyude Paul) [1944405] - drm/amdgpu/jpeg3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - amdgpu: fix GEM obj leak in amdgpu_display_user_framebuffer_create (Lyude Paul) [1944405] - drm/i915/selftests: Fix return value check in live_breadcrumbs_smoketest() (Lyude Paul) [1944405] - drm/amdgpu: stop touching sched.ready in the backend (Lyude Paul) [1944405] - drm/amd/amdgpu: fix a potential deadlock in gpu reset (Lyude Paul) [1944405] - drm/amdgpu: Fix a use-after-free (Lyude Paul) [1944405] - drm/amd/amdgpu: fix refcount leak (Lyude Paul) [1944405] - drm/amd/display: Disconnect non-DP with no EDID (Lyude Paul) [1944405] - drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error (Lyude Paul) [1944405] - drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate (Lyude Paul) [1944405] - drm/amd/pm: correct MGpuFanBoost setting (Lyude Paul) [1944405] - drm/i915: Reenable LTTPR non-transparent LT mode for DPCD_REV<1.4 (Lyude Paul) [1944405] - drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 (Lyude Paul) [1944405] - dma-buf: fix unintended pin/unpin warnings (Lyude Paul) [1944405] - drm/amdgpu: update sdma golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: update gc golden setting for Navi12 (Lyude Paul) [1944405] - drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang (Lyude Paul) [1944405] - drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE (Lyude Paul) [1944405] - drm/radeon: use the dummy page for GART if needed (Lyude Paul) [1944405] - drm/amd/display: Use the correct max downscaling value for DCN3.x family (Lyude Paul) [1944405] - drm/i915/gem: Pin the L-shape quirked object as unshrinkable (Lyude Paul) [1944405] - drm/ttm: Do not add non-system domain BO into swap list (Lyude Paul) [1944405] - drm/amd/display: Fix two cursor duplication when using overlay (Lyude Paul) [1944405] - amdgpu/pm: Prevent force of DCEFCLK on NAVI10 and SIENNA_CICHLID (Lyude Paul) [1944405] - drm/i915/display: fix compiler warning about array overrun (Lyude Paul) [1944405] - drm/i915: Fix crash in auto_retire (Lyude Paul) [1944405] - drm/i915/overlay: Fix active retire callback alignment (Lyude Paul) [1944405] - drm/i915: Read C0DRB3/C1DRB3 as 16 bits again (Lyude Paul) [1944405] - drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp (Lyude Paul) [1944405] - drm/i915/dp: Use slow and wide link training for everything (Lyude Paul) [1944405] - drm/i915: Avoid div-by-zero on gen2 (Lyude Paul) [1944405] - drm/amd/display: Initialize attribute for hdcp_srm sysfs file (Lyude Paul) [1944405] - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors are connected (Lyude Paul) [1944405] - drm/radeon: Avoid power table parsing memory leaks (Lyude Paul) [1944405] - drm/radeon: Fix off-by-one power_state index heap overwrite (Lyude Paul) [1944405] - drm/amdgpu: Add mem sync flag for IB allocated by SA (Lyude Paul) [1944405] - drm/amd/display: add handling for hdcp2 rx id list validation (Lyude Paul) [1944405] - drm/amd/display: fixed divide by zero kernel crash during dsc enablement (Lyude Paul) [1944405] - drm/amd/display: Force vsync flip when reconfiguring MPCC (Lyude Paul) [1944405] - arm64: enable tlbi range instructions (Jeremy Linton) [1861872] - arm64: tlb: Use the TLBI RANGE feature in arm64 (Jeremy Linton) [1861872] - arm64: tlb: Detect the ARMv8.4 TLBI RANGE feature (Jeremy Linton) [1861872] - arm64/cpufeature: Add remaining feature bits in ID_AA64ISAR0 register (Jeremy Linton) [1861872] - arm64: tlbflush: Ensure start/end of address range are aligned to stride (Jeremy Linton) [1861872] - arm64: Detect the ARMv8.4 TTL feature (Jeremy Linton) [1861872] - arm64: tlbi: Set MAX_TLBI_OPS to PTRS_PER_PTE (Jeremy Linton) [1861872]- bpf: Fix integer overflow involving bucket_size (Jiri Olsa) [1992588] - bpf: Fix leakage due to insufficient speculative store bypass mitigation (Jiri Olsa) [1992588] - bpf: Introduce BPF nospec instruction for mitigating Spectre v4 (Jiri Olsa) [1992588] - bpf: Fix OOB read when printing XDP link fdinfo (Jiri Olsa) [1992588] - bpf, test: fix NULL pointer dereference on invalid expected_attach_type (Jiri Olsa) [1992588] - bpf: Fix tail_call_reachable rejection for interpreter when jit failed (Jiri Olsa) [1992588] - bpf: Track subprog poke descriptors correctly and fix use-after-free (Jiri Olsa) [1992588] - bpf: Fix null ptr deref with mixed tail calls and subprogs (Jiri Olsa) [1992588] - bpf: Fix leakage under speculation on mispredicted branches (Jiri Olsa) [1992588] - bpf: Set mac_len in bpf_skb_change_head (Jiri Olsa) [1992588] - bpf: Prevent writable memory-mapping of read-only ringbuf pages (Jiri Olsa) [1992588] - bpf: Fix alu32 const subreg bound tracking on bitwise operations (Jiri Olsa) [1992588] - xsk: Fix broken Tx ring validation (Jiri Olsa) [1992588] - xsk: Fix for xp_aligned_validate_desc() when len == chunk_size (Jiri Olsa) [1992588] - bpf: link: Refuse non-O_RDWR flags in BPF_OBJ_GET (Jiri Olsa) [1992588] - bpf: Refcount task stack in bpf_get_task_stack (Jiri Olsa) [1992588] - bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for BPF_TRAMP_F_CALL_ORIG (Jiri Olsa) [1992588] - selftest/bpf: Add a test to check trampoline freeing logic. (Jiri Olsa) [1992588] - bpf: Fix fexit trampoline. (Jiri Olsa) [1992588] - ftrace: Fix modify_ftrace_direct. (Jiri Olsa) [1992588] - ftrace: Add a helper function to modify_ftrace_direct() to allow arch optimization (Jiri Olsa) [1992588] - ftrace: Add helper find_direct_entry() to consolidate code (Jiri Olsa) [1992588] - bpf: Fix truncation handling for mod32 dst reg wrt zero (Jiri Olsa) [1992588] - bpf: Fix an unitialized value in bpf_iter (Jiri Olsa) [1992588] - bpf_lru_list: Read double-checked variable once without lock (Jiri Olsa) [1992588] - mt76: validate rx A-MSDU subframes (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath11k: Drop multicast fragments (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath11k: Clear the fragment cache during key install (Íñigo Huguet) [1991459] {CVE-2020-24587} - ath10k: Validate first subframe of A-MSDU before processing the list (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - ath10k: Fix TKIP Michael MIC verification for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26141} - ath10k: drop MPDU which has discard flag set by firmware for SDIO (Íñigo Huguet) [1991459] {CVE-2020-24588} - ath10k: drop fragments with multicast DA for SDIO (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: drop fragments with multicast DA for PCIe (Íñigo Huguet) [1991459] {CVE-2020-26145} - ath10k: add CCMP PN replay protection for fragmented frames for PCIe (Íñigo Huguet) [1991459] - mac80211: extend protection against mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: do not accept/forward invalid EAPOL frames (Íñigo Huguet) [1991459] {CVE-2020-26139} - mac80211: prevent attacks on TKIP/WEP as well (Íñigo Huguet) [1991459] {CVE-2020-26141} - mac80211: check defrag PN against current frame (Íñigo Huguet) [1991459] - mac80211: add fragment cache to sta_info (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: drop A-MSDUs on old ciphers (Íñigo Huguet) [1991459] {CVE-2020-24588} - cfg80211: mitigate A-MSDU aggregation attacks (Íñigo Huguet) [1991459] {CVE-2020-24588 CVE-2020-26144} - mac80211: properly handle A-MSDUs that start with an RFC 1042 header (Íñigo Huguet) [1991459] - mac80211: prevent mixed key and fragment cache attacks (Íñigo Huguet) [1991459] {CVE-2020-24586 CVE-2020-24587} - mac80211: assure all fragments are encrypted (Íñigo Huguet) [1991459] {CVE-2020-26147} - tipc: call tipc_wait_for_connect only when dlen is not 0 (Xin Long) [1989361] - mptcp: remove tech preview warning (Florian Westphal) [1985120] - tcp: consistently disable header prediction for mptcp (Florian Westphal) [1985120] - selftests: mptcp: fix case multiple subflows limited by server (Florian Westphal) [1985120] - selftests: mptcp: turn rp_filter off on each NIC (Florian Westphal) [1985120] - selftests: mptcp: display proper reason to abort tests (Florian Westphal) [1985120] - mptcp: properly account bulk freed memory (Florian Westphal) [1985120] - mptcp: fix 'masking a bool' warning (Florian Westphal) [1985120] - mptcp: refine mptcp_cleanup_rbuf (Florian Westphal) [1985120] - mptcp: use fast lock for subflows when possible (Florian Westphal) [1985120] - mptcp: avoid processing packet if a subflow reset (Florian Westphal) [1985120] - mptcp: add sk parameter for mptcp_get_options (Florian Westphal) [1985120] - mptcp: fix syncookie process if mptcp can not_accept new subflow (Florian Westphal) [1985120] - mptcp: fix warning in __skb_flow_dissect() when do syn cookie for subflow join (Florian Westphal) [1985120] - mptcp: avoid race on msk state changes (Florian Westphal) [1985120] - mptcp: fix 32 bit DSN expansion (Florian Westphal) [1985120] - mptcp: fix bad handling of 32 bit ack wrap-around (Florian Westphal) [1985120] - tcp: parse mptcp options contained in reset packets (Florian Westphal) [1985120] - ionic: count csum_none when offload enabled (Jonathan Toppins) [1991646] - ionic: fix up dim accounting for tx and rx (Jonathan Toppins) [1991646] - ionic: remove intr coalesce update from napi (Jonathan Toppins) [1991646] - ionic: catch no ptp support earlier (Jonathan Toppins) [1991646] - ionic: make all rx_mode work threadsafe (Jonathan Toppins) [1991646] - dmaengine: idxd: Fix missing error code in idxd_cdev_open() (Jerry Snitselaar) [1990637] - dmaengine: idxd: add missing dsa driver unregister (Jerry Snitselaar) [1990637] - dmaengine: idxd: add engine 'struct device' missing bus type assignment (Jerry Snitselaar) [1990637] - dmaengine: idxd: remove MSIX masking for interrupt handlers (Jerry Snitselaar) [1990637] - dmaengine: idxd: Use cpu_feature_enabled() (Jerry Snitselaar) [1990637] - dmaengine: idxd: enable SVA feature for IOMMU (Jerry Snitselaar) [1990637] - dmagenine: idxd: Don't add portal offset in idxd_submit_desc (Jerry Snitselaar) [1990637] - ethtool: strset: fix message length calculation (Balazs Nemeth) [1989003] - net: add strict checks in netdev_name_node_alt_destroy() (Andrea Claudi) [1859038] - net: rtnetlink: fix bugs in rtnl_alt_ifname() (Andrea Claudi) [1859038] - net: rtnetlink: add linkprop commands to add and delete alternative ifnames (Andrea Claudi) [1859038] - net: check all name nodes in __dev_alloc_name (Andrea Claudi) [1859038] - net: fix a leak in register_netdevice() (Andrea Claudi) [1859038] - tun: fix memory leak in error path (Andrea Claudi) [1859038] - net: propagate errors correctly in register_netdevice() (Andrea Claudi) [1859038] - net: introduce name_node struct to be used in hashlist (Andrea Claudi) [1859038] - net: procfs: use index hashlist instead of name hashlist (Andrea Claudi) [1859038] - configs: Enable CONFIG_CHELSIO_INLINE_CRYPTO (Raju Rangoju) [1961368] - cxgb4/ch_ktls: Clear resources when pf4 device is removed (Raju Rangoju) [1961374] - ch_ktls: Remove redundant variable result (Raju Rangoju) [1961374] - ch_ktls: do not send snd_una update to TCB in middle (Raju Rangoju) [1961374] - ch_ktls: tcb close causes tls connection failure (Raju Rangoju) [1961374] - ch_ktls: fix device connection close (Raju Rangoju) [1961374] - ch_ktls: Fix kernel panic (Raju Rangoju) [1961374] - ch_ktls: fix enum-conversion warning (Raju Rangoju) [1961374] - net: ethernet: chelsio: inline_crypto: Mundane typos fixed throughout the file chcr_ktls.c (Raju Rangoju) [1961374] - ch_ipsec: Remove initialization of rxq related data (Raju Rangoju) [1961388] - ch_ktls: fix build warning for ipv4-only config (Raju Rangoju) [1961374] - ch_ktls: lock is not freed (Raju Rangoju) [1961374] - ch_ktls: stop the txq if reaches threshold (Raju Rangoju) [1961374] - ch_ktls: tcb update fails sometimes (Raju Rangoju) [1961374] - ch_ktls/cxgb4: handle partial tag alone SKBs (Raju Rangoju) [1961374] - ch_ktls: don't free skb before sending FIN (Raju Rangoju) [1961374] - ch_ktls: packet handling prior to start marker (Raju Rangoju) [1961374] - ch_ktls: Correction in middle record handling (Raju Rangoju) [1961374] - ch_ktls: missing handling of header alone (Raju Rangoju) [1961374] - ch_ktls: Correction in trimmed_len calculation (Raju Rangoju) [1961374] - cxgb4/ch_ktls: creating skbs causes panic (Raju Rangoju) [1961374] - ch_ktls: Update cheksum information (Raju Rangoju) [1961374] - ch_ktls: Correction in finding correct length (Raju Rangoju) [1961374] - cxgb4/ch_ktls: decrypted bit is not enough (Raju Rangoju) [1961374] - cxgb4/ch_ipsec: Replace the module name to ch_ipsec from chcr (Raju Rangoju) [1961388] - cxgb4/ch_ktls: ktls stats are added at port level (Raju Rangoju) [1961374] - ch_ktls: Issue if connection offload fails (Raju Rangoju) [1961374] - chelsio/chtls: Re-add dependencies on CHELSIO_T4 to fix modular CHELSIO_T4 (Raju Rangoju) [1961388] - chelsio/chtls: CHELSIO_INLINE_CRYPTO should depend on CHELSIO_T4 (Raju Rangoju) [1961388] - crypto: chelsio - fix minor indentation issue (Raju Rangoju) [1961368] - crypto/chcr: move nic TLS functionality to drivers/net (Raju Rangoju) [1961368] - cxgb4/ch_ipsec: Registering xfrmdev_ops with cxgb4 (Raju Rangoju) [1961388] - crypto/chcr: Moving chelsio's inline ipsec functionality to /drivers/net (Raju Rangoju) [1961368] - chelsio/chtls: separate chelsio tls driver from crypto driver (Raju Rangoju) [1961368] - crypto: chelsio - Fix some pr_xxx messages (Raju Rangoju) [1961368] - crypto: chelsio - Avoid some code duplication (Raju Rangoju) [1961368] - crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Raju Rangoju) [1961368] - crypto: aead - remove useless setting of type flags (Raju Rangoju) [1961368] - crypto: Replace zero-length array with flexible-array (Raju Rangoju) [1961368] - [Crypto] treewide: replace '---help---' in Kconfig files with 'help' (Raju Rangoju) [1961368] - Crypto/chcr: Checking cra_refcnt before unregistering the algorithms (Raju Rangoju) [1961368] - Crypto/chcr: Calculate src and dst sg lengths separately for dma map (Raju Rangoju) [1961368] - Crypto/chcr: Fixes a coccinile check error (Raju Rangoju) [1961368] - Crypto/chcr: Fixes compilations warnings (Raju Rangoju) [1961368] - crypto/chcr: IPV6 code needs to be in CONFIG_IPV6 (Raju Rangoju) [1961368] - crypto: lib/sha1 - remove unnecessary includes of linux/cryptohash.h (Raju Rangoju) [1961368] - Crypto/chcr: fix for hmac(sha) test fails (Raju Rangoju) [1961368] - Crypto/chcr: fix for ccm(aes) failed test (Raju Rangoju) [1961368] - Crypto/chcr: fix ctr, cbc, xts and rfc3686-ctr failed tests (Raju Rangoju) [1961368] - crypto: chelsio - remove redundant assignment to variable error (Raju Rangoju) [1961368] - chcr: Fix CPU hard lockup (Raju Rangoju) [1961368] - crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Raju Rangoju) [1961368] - crypto: chelsio - switch to skcipher API (Raju Rangoju) [1961368] - crypto: chelsio - Remove VLA usage of skcipher (Raju Rangoju) [1961368]- tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop. (Chris von Recklinghausen) [1989485] {CVE-2021-3679} - vmlinux.lds.h: Keep .ctors.* with .ctors (Jan Stancek) [1993208] - spi: pxa2xx: Add support for Intel Alder Lake PCH-P (Steve Best) [1978463] - bnxt_en: allow promiscuous mode for trusted VFs (Jonathan Toppins) [1730616] - arm64: memory: Add missing brackets to untagged_addr() macro (Chris von Recklinghausen) [1955809] - arm64: tags: Preserve tags for addresses translated via TTBR1 (Chris von Recklinghausen) [1955809] - arm64: entry: Move ct_user_exit before any other exception (Chris von Recklinghausen) [1955809] - arm64: memory: Implement __tag_set() as common function (Chris von Recklinghausen) [1955809] - arm64: mm: Really fix sparse warning in untagged_addr() (Chris von Recklinghausen) [1955809] - arm64: untag user pointers in access_ok and __uaccess_mask_ptr (Chris von Recklinghausen) [1955809] - arm64/mm: fix variable 'tag' set but not used (Chris von Recklinghausen) [1955809] - arm64: entry: SP Alignment Fault doesn't write to FAR_EL1 (Chris von Recklinghausen) [1955809] - arm64: compat: Add separate CP15 trapping hook (Chris von Recklinghausen) [1955809] - arm64: don't restore GPRs when context tracking (Chris von Recklinghausen) [1955809]- bareudp: Fix invalid read beyond skb's linear data (Guillaume Nault) [1990938] - perf/x86/amd: Don't touch the AMD64_EVENTSEL_HOSTONLY bit inside the guest (Michael Petlan) [1990695] - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands (Balazs Nemeth) [1956825] - net: dcb: Validate netlink message in DCB handler (Balazs Nemeth) [1956825] - xfrm: Fix RCU vs hash_resize_mutex lock inversion (Sabrina Dubroca) [1988405] - Revert "xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype" (Sabrina Dubroca) [1988405] - xfrm: policy: Read seqcount outside of rcu-read side in xfrm_policy_lookup_bytype (Sabrina Dubroca) [1988405] - [s390] s390/AP: support new dynamic AP bus size limit (Claudio Imbrenda) [1974581] - net: sched: act_mirred: Reset ct info when mirror/redirect skb (Hangbin Liu) [1980532] - ucounts: Move max_time_namespace according to ucount_type (Alex Gladkov) [1982954] - perf vendor events power10: Adds 24x7 nest metric events for power10 platform (Diego Domingos) [1946650] - perf/core: fix backport of PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf/core: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Diego Domingos) [1946650] - perf vendor events powerpc: Fix eventcode of power10 JSON events (Diego Domingos) [1946650] - perf vendor events: Initial JSON/events list for power10 platform (Diego Domingos) [1946650] - powerpc/perf: Fix sampled instruction type for larx/stcx (Diego Domingos) [1946650] - powerpc/perf: Fix the threshold event selection for memory events in power10 (Diego Domingos) [1946650] - perf sort: Display sort dimension p_stage_cyc only on supported archs (Diego Domingos) [1946650] - perf tools: Support pipeline stage cycles for powerpc (Diego Domingos) [1946650] - perf powerpc: Add support for PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - perf sort: Add dynamic headers for perf report columns (Diego Domingos) [1946650] - powerpc/perf: Expose processor pipeline stage cycles using PERF_SAMPLE_WEIGHT_STRUCT (Diego Domingos) [1946650] - Documentation/admin-guide: kernel-parameters: fix "disable_ddw" wording (Diego Domingos) [1946650] - powerpc/perf: Support PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - perf/core: Add PERF_SAMPLE_DATA_PAGE_SIZE (Diego Domingos) [1946650] - powerpc/perf: Infrastructure to support checking of attr.config* (Diego Domingos) [1946650] - powerpc/perf: Add platform specific check_attr_config (Diego Domingos) [1946650] - ice: add support for auxiliary input/output pins (Jonathan Toppins) [1956913] - ice: enable transmit timestamps for E810 devices (Jonathan Toppins) [1944818] - ice: enable receive hardware timestamping (Jonathan Toppins) [1944818] - ice: report the PTP clock index in ethtool .get_ts_info (Jonathan Toppins) [1944818] - ice: register 1588 PTP clock device object for E810 devices (Jonathan Toppins) [1944818] - ice: add low level PTP clock access functions (Jonathan Toppins) [1944818] - ice: add support for set/get of driver-stored firmware parameters (Jonathan Toppins) [1944818] - ice: process 1588 PTP capabilities during initialization (Jonathan Toppins) [1944818] - ice: add support for sideband messages (Jonathan Toppins) [1944818]- bnxt_en: Fix static checker warning in bnxt_fw_reset_task() (Jonathan Toppins) [1989274] - bnxt_en: Check abort error state in bnxt_half_open_nic() (Jonathan Toppins) [1989274] - bnxt_en: fix error path of FW reset (Jonathan Toppins) [1989274] - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task() (Jonathan Toppins) [1989274] - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe() (Jonathan Toppins) [1989274] - bnxt_en: reject ETS settings that will starve a TC (Jonathan Toppins) [1989274] - bnxt_en: don't disable an already disabled PCI device (Jonathan Toppins) [1989274] - bnxt_en: Remove the read of BNXT_FW_RESET_INPROG_REG after firmware reset. (Jonathan Toppins) [1989274] - i40e: Fix log TC creation failure when max num of queues is exceeded (Stefan Assmann) [1920274] - i40e: Fix queue-to-TC mapping on Tx (Stefan Assmann) [1920274] - i40e: Add additional info to PHY type error (Stefan Assmann) [1920274] - i40e: Fix firmware LLDP agent related warning (Stefan Assmann) [1920274] - i40e: Fix logic of disabling queues (Stefan Assmann) [1920274] - i40e: add support for PTP external synchronization clock (Stefan Assmann) [1920274] - i40e: improve locking of mac_filter_hash (Stefan Assmann) [1920274] - i40e: Fix missing rtnl locking when setting up pf switch (Stefan Assmann) [1920274] - i40e: fix PTP on 5Gb links (Stefan Assmann) [1920274] - i40e: Fix autoneg disabling for non-10GBaseT links (Stefan Assmann) [1920274] - i40e: Fix error handling in i40e_vsi_open (Stefan Assmann) [1920274] - intel: Remove rcu_read_lock() around XDP program invocation (Stefan Assmann) [1920274] - i40e: clean up packet type lookup table (Stefan Assmann) [1920274] - i40e: add correct exception tracing for XDP (Stefan Assmann) [1920274] - i40e: Remove LLDP frame filters (Stefan Assmann) [1920274] - i40e: Fix PHY type identifiers for 2.5G and 5G adapters (Stefan Assmann) [1920274] - i40e: Fix use-after-free in i40e_client_subtask() (Stefan Assmann) [1920274] - i40e: fix broken XDP support (Stefan Assmann) [1920274] - i40e: refactor repeated link state reporting code (Stefan Assmann) [1920274] - i40e: optimize for XDP_REDIRECT in xsk path (Stefan Assmann) [1920274] - i40e: fix the panic when running bpf in xdpdrv mode (Stefan Assmann) [1920274] - i40e: Fix sparse warning: missing error code 'err' (Stefan Assmann) [1920274] - i40e: Fix sparse error: 'vsi->netdev' could be null (Stefan Assmann) [1920274] - i40e: Fix sparse error: uninitialized symbol 'ring' (Stefan Assmann) [1920274] - i40e: Fix sparse errors in i40e_txrx.c (Stefan Assmann) [1920274] - i40e: Fix display statistics for veb_tc (Stefan Assmann) [1920274] - i40e: fix receiving of single packets in xsk zero-copy mode (Stefan Assmann) [1920274] - i40e: Fix inconsistent indenting (Stefan Assmann) [1920274] - i40e: Fix oops at i40e_rebuild() (Stefan Assmann) [1920274] - i40e: Fix kernel oops when i40e driver removes VF's (Stefan Assmann) [1920274] - i40e: Added Asym_Pause to supported link modes (Stefan Assmann) [1920274] - net: i40e: remove repeated words (Stefan Assmann) [1920274] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Stefan Assmann) [1920274] - intel: clean up mismatched header comments (Stefan Assmann) [1920274] - intel: Update drivers to use ethtool_sprintf (Stefan Assmann) [1920274] - i40e: move headroom initialization to i40e_configure_rx_ring (Stefan Assmann) [1920274] - i40e: Fix endianness conversions (Stefan Assmann) [1920274] - i40e: Fix add TC filter for IPv6 (Stefan Assmann) [1920274] - i40e: Fix addition of RX filters after enabling FW LLDP agent (Stefan Assmann) [1920274] - i40e: Fix overwriting flow control settings during driver loading (Stefan Assmann) [1920274] - i40e: Add zero-initialization of AQ command structures (Stefan Assmann) [1920274] - i40e: Fix memory leak in i40e_probe (Stefan Assmann) [1920274] - i40e: Fix flow for IPv6 next header (extension header) (Stefan Assmann) [1920274] - i40e: Fix incorrect argument in call to ipv6_addr_any() (Stefan Assmann) [1920274] - i40e: store the result of i40e_rx_offset() onto i40e_ring (Stefan Assmann) [1920274] - i40e: Simplify the do-while allocation loop (Stefan Assmann) [1920274] - i40e: adjust i40e_is_non_eop (Stefan Assmann) [1920274] - i40e: drop misleading function comments (Stefan Assmann) [1920274] - i40e: drop redundant check when setting xdp prog (Stefan Assmann) [1920274] - i40e: remove the useless value assignment in i40e_clean_adminq_subtask (Stefan Assmann) [1920274] - i40e: VLAN field for flow director (Stefan Assmann) [1920274] - i40e: Add flow director support for IPv6 (Stefan Assmann) [1920274] - i40e: Add EEE status getting & setting implementation (Stefan Assmann) [1920274] - i40e: Fix uninitialized variable mfs_max (Stefan Assmann) [1920274] - i40e: Add netlink callbacks support for software based DCB (Stefan Assmann) [1920274] - i40e: Add init and default config of software based DCB (Stefan Assmann) [1920274] - i40e: Add hardware configuration for software based DCB (Stefan Assmann) [1920274] - i40e: Log error for oversized MTU on device (Stefan Assmann) [1920274] - i40e: consolidate handling of XDP program actions (Stefan Assmann) [1920274] - i40e: remove the redundant buffer info updates (Stefan Assmann) [1920274] - i40e: remove unnecessary cleaned_count updates (Stefan Assmann) [1920274] - i40e: remove unnecessary memory writes of the next to clean pointer (Stefan Assmann) [1920274] - i40e: Use batched xsk Tx interfaces to increase performance (Stefan Assmann) [1920274] - i40e: convert to new udp_tunnel infrastructure (Stefan Assmann) [1920274] - netfilter: nf_tables: skip module reference count bump on object updates (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix unexpected EOPNOTSUPP error (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Fix an Oops in nf_tables_updobj() error handling (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: fix possible null-pointer dereference in object update (Fernando Fernandez Mancera) [1944487] - netfilter: nft_quota: add quota object update support (Fernando Fernandez Mancera) [1944487] - netfilter: nf_tables: Introduce stateful object update operation (Fernando Fernandez Mancera) [1944487] - cifs: retry lookup and readdir when EAGAIN is returned. (Ronnie Sahlberg) [1972411] - netfilter: nf_tables: Fix dereference of null pointer flow (Florian Westphal) [1985087] - netfilter: nf_tables: memleak in hw offload abort path (Florian Westphal) [1985087] - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols (Florian Westphal) [1985087] - netfilter: synproxy: Fix out of bounds when parsing TCP options (Florian Westphal) [1985087] - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches (Florian Westphal) [1985087] - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service (Florian Westphal) [1985087] - netfilter: nftables: avoid overflows in nft_hash_buckets() (Florian Westphal) [1985087] - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check (Florian Westphal) [1985087] - netfilter: nf_tables_offload: check FLOW_DISSECTOR_KEY_BASIC in VLAN transfer logic (Florian Westphal) [1985087] - netfilter: nftables_offload: special ethertype handling for VLAN (Florian Westphal) [1985087] - netfilter: nftables_offload: VLAN id needs host byteorder in flow dissector (Florian Westphal) [1985087] - netfilter: nft_payload: fix C-VLAN offload support (Florian Westphal) [1985087] - ipvs: allow connection reuse for unconfirmed conntrack (Florian Westphal) [1985087] - net: fix GRO skb truesize update (Paolo Abeni) [1987391] - sk_buff: avoid potentially clearing 'slow_gro' field (Paolo Abeni) [1987391] - veth: use skb_prepare_for_gro() (Paolo Abeni) [1987391] - skbuff: allow 'slow_gro' for skb carring sock reference (Paolo Abeni) [1987391] - net: optimize GRO for the common case. (Paolo Abeni) [1987391] - sk_buff: track extension status in slow_gro (Paolo Abeni) [1987391] - sk_buff: track dst status in slow_gro (Paolo Abeni) [1987391] - sk_buff: introduce 'slow_gro' flags (Paolo Abeni) [1987391] - skbuff: Fix build with SKB extensions disabled (Paolo Abeni) [1987391] - skbuff: Release nfct refcount on napi stolen or re-used skbs (Paolo Abeni) [1987391] - selftests: net: veth: add tests for set_channel (Paolo Abeni) [1987391] - veth: create by default nr_possible_cpus queues (Paolo Abeni) [1987391] - veth: implement support for set_channel ethtool op (Paolo Abeni) [1987391] - veth: factor out initialization helper (Paolo Abeni) [1987391] - veth: always report zero combined channels (Paolo Abeni) [1987391] - veth: Implement ethtool's get_channelis() callback (Paolo Abeni) [1987391] - net: add GSO UDP L4 and GSO fraglists to the list of software-backed types (Paolo Abeni) [1987391] - ice: Support RSS configure removal for AVF (Jonathan Toppins) [1946726] - ice: Enable RSS configure for AVF (Jonathan Toppins) [1946726] - ice: Add helper function to get the VF's VSI (Jonathan Toppins) [1946726] - ice: remove redundant assignment to pointer vsi (Jonathan Toppins) [1946726] - ice: Advertise virtchnl UDP segmentation offload capability (Jonathan Toppins) [1946726] - ice: Allow ignoring opcodes on specific VF (Jonathan Toppins) [1946726] - ice: warn about potentially malicious VFs (Jonathan Toppins) [1946726] - ice: Consolidate VSI state and flags (Jonathan Toppins) [1946726] - ice: Refactor ice_set/get_rss into LUT and key specific functions (Jonathan Toppins) [1946726] - ice: Refactor get/set RSS LUT to use struct parameter (Jonathan Toppins) [1946726] - ice: Change ice_vsi_setup_q_map() to not depend on RSS (Jonathan Toppins) [1946726] - ice: Check FDIR program status for AVF (Jonathan Toppins) [1946726] - ice: Add more FDIR filter type for AVF (Jonathan Toppins) [1946726] - ice: Add GTPU FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add non-IP Layer2 protocol FDIR filter for AVF (Jonathan Toppins) [1946726] - ice: Add new actions support for VF FDIR (Jonathan Toppins) [1946726] - ice: Add FDIR pattern action parser for VF (Jonathan Toppins) [1946726] - ice: Enable FDIR Configure for AVF (Jonathan Toppins) [1946726] - ice: Add support for per VF ctrl VSI enabling (Jonathan Toppins) [1946726] - ice: Enhanced IPv4 and IPv6 flow filter (Jonathan Toppins) [1946726] - ice: Support to separate GTP-U uplink and downlink (Jonathan Toppins) [1946726] - ice: Add more advanced protocol support in flow filter (Jonathan Toppins) [1946726] - ice: Support non word aligned input set field (Jonathan Toppins) [1946726] - ice: Add more basic protocol support for flow filter (Jonathan Toppins) [1946726] - sctp: move the active_key update after sh_keys is added (Xin Long) [1986966] - sctp: fix return value check in __sctp_rcv_asconf_lookup (Xin Long) [1986966] - sctp: delete addr based on sin6_scope_id (Xin Long) [1986966] - sctp: update active_key for asoc when old key is being replaced (Xin Long) [1986966] - sctp: move 198 addresses from unusable to private scope (Xin Long) [1986966] - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (Xin Long) [1986966] - sctp: validate chunk size in __rcv_asconf_lookup (Xin Long) [1986966] - sctp: add size validation when walking chunks (Xin Long) [1986966] - sctp: validate from_addr_param return (Xin Long) [1986966] - sctp: fix the proc_handler for sysctl encap_port (Xin Long) [1986966] - sctp: add the missing setting for asoc encap_port (Xin Long) [1986966] - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b (Xin Long) [1986966] - sctp: Fix out-of-bounds warning in sctp_process_asconf_param() (Xin Long) [1986966] - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms (Xin Long) [1986966] - bonding: allow nesting of bonding device (Antoine Tenart) [1989099] - bonding: avoid adding slave device with IFF_MASTER flag (Antoine Tenart) [1989099] - ice: don't remove netdev->dev_addr from uc sync list (Ken Cox) [1873969 1961018] - ice: Stop processing VF messages during teardown (Ken Cox) [1986451] - ice: Prevent probing virtual functions (Ken Cox) [1952810] - ima: extend boot_aggregate with kernel measurements (Bruno Meneguele) [1977422] - selftest/bpf: Verifier tests for var-off access (Jiri Olsa) [1960944] {CVE-2021-29155} - selftest/bpf: Adjust expected verifier errors (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: No need to simulate speculative domain for immediates (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix mask direction swap upon off reg sign change (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Wrap aux data inside bpf_sanitize_info container (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix pointer arithmetic mask tightening under state pruning (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix leakage of uninitialized bpf stack under speculation (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: Fix masking negation logic upon negative dst register (Jiri Olsa) [1960944 1958070] {CVE-2021-29155 CVE-2021-31829} - bpf: verifier: Allocate idmap scratch in verifier env (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Tighten speculative pointer arithmetic mask (Jiri Olsa) [1960944 1972496] {CVE-2021-29155 CVE-2021-33200} - bpf: Move sanitize_val_alu out of op switch (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Refactor and streamline bounds check into helper (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Allow variable-offset stack access (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Improve verifier error messages for users (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Rework ptr_limit into alu_limit and add common error path (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Ensure off_reg has no mixed signed bounds for all types (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Move off_reg into sanitize_ptr_alu (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Use correct permission flag for mixed signed bounds arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Add sanity check for upper ptr_limit (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Simplify alu_limit masking for pointer arithmetic (Jiri Olsa) [1960944] {CVE-2021-29155} - bpf: Fix off-by-one for area size in creating mask to left (Jiri Olsa) [1960944] {CVE-2021-29155} - Documentation/x86: Add ratelimit in buslock.rst (Prarit Bhargava) [1948048] - Documentation/admin-guide: Add bus lock ratelimit (Prarit Bhargava) [1948048] - x86/bus_lock: Set rate limit for bus lock (Prarit Bhargava) [1948048] - Documentation/x86: Add buslock.rst (Prarit Bhargava) [1948048] - [s390] net/smc: Ensure correct state of the socket in send path (Claudio Imbrenda) [1731026] - [s390] net/smc: Fix ENODATA tests in smc_nl_get_fback_stats() (Claudio Imbrenda) [1731026] - [s390] net/smc: Make SMC statistics network namespace aware (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC fallback statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add netlink support for SMC statistics (Claudio Imbrenda) [1731026] - [s390] net/smc: Add SMC statistics support (Claudio Imbrenda) [1731026] - [s390] s390/ap: Fix hanging ioctl caused by wrong msg counter (Claudio Imbrenda) [1984762] - KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow (Jon Maloy) [1988226] {CVE-2021-37576} - NFSv4: Fix an Oops in pnfs_mark_request_commit() when doing O_DIRECT (Benjamin Coddington) [1983793] - selftests/powerpc: EBB selftest for MMCR0 control for PMU SPRs in ISA v3.1 (Desnes A. Nunes do Rosario) [1991753] - selftests/powerpc: Fix "no_handler" EBB selftest (Desnes A. Nunes do Rosario) [1991753] - powerpc/perf: Fix crash in perf_instruction_pointer() when ppmu is not set (Desnes A. Nunes do Rosario) [1991753] - powerpc/pmu: Make the generic compat PMU use the architected events (Desnes A. Nunes do Rosario) [1991753] - perf script python: Fix buffer size to report iregs in perf script (Desnes A. Nunes do Rosario) [1991753] - ceph: reduce contention in ceph_check_delayed_caps() (Jeff Layton) [1953430]- net: mac802154: Fix general protection fault (Chris von Recklinghausen) [1984571] {CVE-2021-3659} - Bluetooth: fix the erroneous flush_work() order (Chris von Recklinghausen) [1964559] {CVE-2021-3564} - Bluetooth: use correct lock to prevent UAF of hdev object (Chris von Recklinghausen) [1968214] {CVE-2021-3573} - usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI (Torez Smith) [1972139] - usb: ehci: do not initialise static variables (Torez Smith) [1972139] - usb: host: move EH SINGLE_STEP_SET_FEATURE implementation to core (Torez Smith) [1972139] - USB: ehci: drop workaround for forced irq threading (Torez Smith) [1972139] - usb: ehci: add spurious flag to disable overcurrent checking (Torez Smith) [1972139] - perf test: Handle fd gaps in test__dso_data_reopen (Michael Petlan) [1871785] - tty: vt: always invoke vc->vc_sw->con_resize callback (Maxim Levitsky) [1957611] - iavf: fix locking of critical sections (Stefan Assmann) [1975245] - iavf: do not override the adapter state in the watchdog task (Stefan Assmann) [1975245] - ixgbe: Fix packet corruption due to missing DMA sync (Ken Cox) [1920269] - ixgbe: Fix an error handling path in 'ixgbe_probe()' (Ken Cox) [1920269] - intel: Remove rcu_read_lock() around XDP program invocation (Ken Cox) [1920269] - ixgbe: add correct exception tracing for XDP (Ken Cox) [1920269] - ixgbe: Fix out-bounds warning in ixgbe_host_interface_command() (Ken Cox) [1920269] - ixgbe: reduce checker warnings (Ken Cox) [1920269] - ixgbe: use checker safe conversions (Ken Cox) [1920269] - ixgbe: fix large MTU request from VF (Ken Cox) [1920269] - net: ethernet: intel: Fix a typo in the file ixgbe_dcb_nl.c (Ken Cox) [1920269] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920269] - ixgbe: Support external GBE SerDes PHY BCM54616s (Ken Cox) [1920269] - ixgbe: fix unbalanced device enable/disable in suspend/resume (Ken Cox) [1920269] - ixgbe: Fix NULL pointer dereference in ethtool loopback test (Ken Cox) [1920269] - ixgbe: Fix fall-through warnings for Clang (Ken Cox) [1920269] - intel: clean up mismatched header comments (Ken Cox) [1920269] - bpf, devmap: Move drop error path to devmap for XDP_REDIRECT (Ken Cox) [1920269] - intel: Update drivers to use ethtool_sprintf (Ken Cox) [1920269] - ixgbe: optimize for XDP_REDIRECT in xsk path (Ken Cox) [1920269] - ixgbe: move headroom initialization to ixgbe_configure_rx_ring (Ken Cox) [1920269] - ixgbe: Fix memleak in ixgbe_configure_clsu32 (Ken Cox) [1920269] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920269] - ixgbe: store the result of ixgbe_rx_offset() onto ixgbe_ring (Ken Cox) [1920269] - net: ixgbe: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920269] - ixgbe: avoid premature Rx buffer reuse (Ken Cox) [1920269] - net: remove unneeded break (Ken Cox) [1920269] - ixgbe: add pause frame stats (Ken Cox) [1920269] - iavf: Set RSS LUT and key in reset handle path (Ken Cox) [1910853] - [netdrv] chelsio: Replace zero-length array with flexible-array member (Raju Rangoju) [1955208] - cxgb4: avoid collecting SGE_QBASE regs during traffic (Raju Rangoju) [1955208] - cxgb4: collect serial config version from register (Raju Rangoju) [1955208] - cxgb4: remove unused vpd_cap_addr (Raju Rangoju) [1955208] - cxgb4: remove bogus CHELSIO_VPD_UNIQUE_ID constant (Raju Rangoju) [1955208] - cxgb4: Assign boolean values to a bool variable (Raju Rangoju) [1955208] - cxgb4: enable interrupt based Tx completions for T5 (Raju Rangoju) [1955208] - cxgb4: fix the panic caused by non smac rewrite (Raju Rangoju) [1955208] - cxgb4: Fix the -Wmisleading-indentation warning (Raju Rangoju) [1955208] - cxgb4: set up filter action after rewrites (Raju Rangoju) [1955208] - cxgb4: handle 4-tuple PEDIT to NAT mode translation (Raju Rangoju) [1955208] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Raju Rangoju) [1955208] - net: cxbg4: Remove pointless in_interrupt() check (Raju Rangoju) [1955208] - cxgb4: Avoid log flood (Raju Rangoju) [1955208] - cxgb4: fix memory leak during module unload (Raju Rangoju) [1955208] - cxgb4: Fix offset when clearing filter byte counters (Raju Rangoju) [1955208] - cxgb4: add error handlers to LE intr_handler (Raju Rangoju) [1955208] - cxgb4: insert IPv6 filter rules in next free region (Raju Rangoju) [1955208] - cxgb4: Fix race between loopback and normal Tx path (Raju Rangoju) [1955208] - cxgb4: Fix work request size calculation for loopback test (Raju Rangoju) [1955208] - cxgb4: add TC-MATCHALL IPv6 support (Raju Rangoju) [1955208] - cxgb4: fix extracting IP addresses in TC-FLOWER rules (Raju Rangoju) [1955208] - cxgb4: fix check for running offline ethtool selftest (Raju Rangoju) [1955208] - cxgb4: add loopback ethtool self-test (Raju Rangoju) [1955208] - net: cxgb4: reject unsupported coalescing params (Raju Rangoju) [1955208] - cxgb4: use eth_zero_addr() to clear mac address (Raju Rangoju) [1955208] - cxgb4: add missing release on skb in uld_send() (Raju Rangoju) [1955208] - cxgb4: convert to new udp_tunnel_nic infra (Raju Rangoju) [1955208] - cxgb4: fix all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: add main VI to mirror VI config replication (Raju Rangoju) [1955208] - cxgb4: add support for mirror Rxqs (Raju Rangoju) [1955208] - cxgb4: add mirror action to TC-MATCHALL offload (Raju Rangoju) [1955208] - net: cxgb4: fix return error value in t4_prep_fw (Raju Rangoju) [1955208] - cxgb4: move device dump arrays in header to C file (Raju Rangoju) [1955208] - cxgb4: always sync access when flashing PHY firmware (Raju Rangoju) [1955208] - cxgb4: update kernel-doc line comments (Raju Rangoju) [1955208] - cxgb4: fix set but unused variable when DCB is disabled (Raju Rangoju) [1955208] - cxgb4: move DCB version extern to header file (Raju Rangoju) [1955208] - cxgb4: remove cast when saving IPv4 partial checksum (Raju Rangoju) [1955208] - cxgb4: fix SGE queue dump destination buffer context (Raju Rangoju) [1955208] - cxgb4: use correct type for all-mask IP address comparison (Raju Rangoju) [1955208] - cxgb4: fix endian conversions for L4 ports in filters (Raju Rangoju) [1955208] - cxgb4: parse TC-U32 key values and masks natively (Raju Rangoju) [1955208] - cxgb4: use unaligned conversion for fetching timestamp (Raju Rangoju) [1955208] - cxgb4: move PTP lock and unlock to caller in Tx path (Raju Rangoju) [1955208] - cxgb4: move handling L2T ARP failures to caller (Raju Rangoju) [1955208] - cxgb4: Use struct_size() helper (Raju Rangoju) [1955208] - cxgb4: add action to steer flows to specific Rxq (Raju Rangoju) [1955208] - cxgb4: add support to fetch ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter deletion (Raju Rangoju) [1955208] - cxgb4: add ethtool n-tuple filter insertion (Raju Rangoju) [1955208] - [netdrv] flow_offload: check for basic action hw stats type (Raju Rangoju) [1955208] - cxgb4: add skeleton for ethtool n-tuple filters (Raju Rangoju) [1955208] - cxgb4: add support to read serial flash (Raju Rangoju) [1955208] - cxgb4: add support to flash boot cfg image (Raju Rangoju) [1955208] - cxgb4: add support to flash boot image (Raju Rangoju) [1955208] - cxgb4: add support to flash PHY image (Raju Rangoju) [1955208] - cxgb4: update set_flash to flash different images (Raju Rangoju) [1955208] - cxgb4: Use kfree() instead kvfree() where appropriate (Raju Rangoju) [1955208] - cxgb4: Use pM format specifier for MAC addresses (Raju Rangoju) [1955208] - net: sock: fix in-kernel mark setting (Alexander Aring) [1509204] - sock: Reset dst when changing sk_mark via setsockopt (Alexander Aring) [1509204] - fs: dlm: fix mark setting deadlock (Alexander Aring) [1509204] - fs: dlm: fix mark per nodeid setting (Alexander Aring) [1509204] - fs: dlm: remove lock dependency warning (Alexander Aring) [1509204] - fs: dlm: set skb mark per peer socket (Alexander Aring) [1509204] - fs: dlm: set skb mark for listen socket (Alexander Aring) [1509204] - net: sock: add sock_set_mark (Alexander Aring) [1509204] - Bluetooth: btusb: Add support for GarfieldPeak controller (Gopal Tiwari) [1959110] - can: gw: synchronize rcu operations before removing gw job entry (Balazs Nemeth) [1986334] - can: bcm: fix infoleak in struct bcm_msg_head (Balazs Nemeth) [1986334] - can: af_can: prevent potential access of uninitialized member in canfd_rcv() (Balazs Nemeth) [1956730] - can: af_can: prevent potential access of uninitialized member in can_rcv() (Balazs Nemeth) [1956730] - can: proc: can_remove_proc(): silence remove_proc_entry warning (Balazs Nemeth) [1956730] - cifs: add missing parsing of backupuid (Ronnie Sahlberg) [1987126] - cifs: use helpers when parsing uid/gid mount options and validate them (Ronnie Sahlberg) [1987126] - kernfs: dont call d_splice_alias() under kernfs node lock (Ian Kent) [1939133] - kernfs: use i_lock to protect concurrent inode updates (Ian Kent) [1939133] - kernfs: switch kernfs to use an rwsem (Ian Kent) [1939133] - kernfs: use VFS negative dentry caching (Ian Kent) [1939133] - kernfs: add a revision to identify directory node changes (Ian Kent) [1939133] - kernfs: move revalidate to be near lookup (Ian Kent) [1939133]- mlxsw: spectrum_mr: Update egress RIF list before route's action (Ivan Vecera) [1941938] - selftests: mlxsw: Fix mausezahn invocation in ERSPAN scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Increase the tolerance of backlog buildup (Ivan Vecera) [1941938] - selftests: mlxsw: Return correct error code in resource scale tests (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in tc_flower_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: Remove a redundant if statement in port_scale test (Ivan Vecera) [1941938] - selftests: mlxsw: sch_red_ets: Test proper counter cleaning in ETS (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Index future FIFOs by band number (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Allocate child qdiscs dynamically (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Guard all qdisc accesses with a lock (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track children per qdisc (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Promote backlog reduction to mlxsw_sp_qdisc_destroy() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Track tclass_num as int, not u8 (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop an always-true condition (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Simplify mlxsw_sp_qdisc_compare() (Ivan Vecera) [1941938] - mlxsw: spectrum_qdisc: Drop one argument from check_params callback (Ivan Vecera) [1941938] - mlxsw: core: Remove critical trip points from thermal zones (Ivan Vecera) [1941938] - selftests: mlxsw: Test vetoing of double sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Veto sampling if already enabled on port (Ivan Vecera) [1941938] - selftests: mlxsw: Test matchall failure with protocol match (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform priority checks earlier (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Convert if statements to a switch statement (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Perform protocol check earlier (Ivan Vecera) [1941938] - selftests: forwarding: vxlan_bridge_1d: Add more ECN decap test cases (Ivan Vecera) [1941938] - mlxsw: spectrum: Fix ECN marking in tunnel decapsulation (Ivan Vecera) [1941938] - selftests: net: forwarding: Fix a typo (Ivan Vecera) [1941938] - selftests: mlxsw: spectrum-2: Remove q_in_vni_veto test (Ivan Vecera) [1941938] - selftests: forwarding: Add test for dual VxLAN bridge (Ivan Vecera) [1941938] - mlxsw: Allow 802.1d and .1ad VxLAN bridges to coexist on Spectrum>=2 (Ivan Vecera) [1941938] - mlxsw: Add struct mlxsw_sp_switchdev_ops per ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Add mlxsw_sp_port_egress_ethtype_set() (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port Egress VLAN EtherType Register (Ivan Vecera) [1941938] - mlxsw: reg: Add egr_et_set field to SPVID (Ivan Vecera) [1941938] - selftests: mlxsw: Test egress sampling limitation on Spectrum-1 only (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests for new triggers (Ivan Vecera) [1941938] - mlxsw: spectrum_acl: Offload FLOW_ACTION_SAMPLE (Ivan Vecera) [1941938] - mlxsw: core_acl_flex_actions: Add mirror sampler action (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Add support for egress sampling (Ivan Vecera) [1941938] - mlxsw: spectrum: Start using sampling triggers hash table (Ivan Vecera) [1941938] - mlxsw: spectrum: Track sampling triggers in a hash table (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Pass matchall entry to sampling operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Push sampling checks to per-ASIC operations (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Propagate extack further (Ivan Vecera) [1941938] - selftests: mlxsw: Add tc sample tests (Ivan Vecera) [1941938] - mlxsw: spectrum: Report extra metadata to psample module (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove mlxsw_sp_sample_receive() (Ivan Vecera) [1941938] - mlxsw: spectrum: Remove unnecessary RCU read-side critical section (Ivan Vecera) [1941938] - mlxsw: pci: Set extra metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: Create dedicated field for Rx metadata in skb control block (Ivan Vecera) [1941938] - mlxsw: pci: Add more metadata fields to CQEv2 (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Implement sampling using mirroring (Ivan Vecera) [1941938] - mlxsw: spectrum_trap: Split sampling traps between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_matchall: Split sampling support between ASICs (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN probability rate support (Ivan Vecera) [1941938] - mlxsw: reg: Extend mirroring registers with probability rate field (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Add SPAN session identifier support (Ivan Vecera) [1941938] - mlxsw: Adjust some MFDE fields shift and size to fw implementation (Ivan Vecera) [1941938] - mlxsw: core: Expose MFDE.log_ip to devlink health (Ivan Vecera) [1941938] - mlxsw: reg: Extend MFDE register with new log_ip field (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2406 (Ivan Vecera) [1941938] - mlxsw: reg: Fix comment about slot_index field in PMAOS register (Ivan Vecera) [1941938] - mlxsw: spectrum: Reword an error message for Q-in-Q veto (Ivan Vecera) [1941938] - mlxsw: spectrum_ethtool: Add an external speed to PTYS register (Ivan Vecera) [1941938] - mlxsw: spectrum_span: Do not overwrite policer configuration (Ivan Vecera) [1941938] - selftests: forwarding: Specify interface when invoking mausezahn (Ivan Vecera) [1941938] - selftests: mlxsw: Add a scale test for physical ports (Ivan Vecera) [1941938] - mlxsw: Register physical ports as a devlink resource (Ivan Vecera) [1941938] - mlxsw: pci: switch from 'pci_' to 'dma_' API (Ivan Vecera) [1941938] - mlxsw: core: Increase critical threshold for ASIC thermal zone (Ivan Vecera) [1941938] - mlxsw: core: Add validation of transceiver temperature thresholds (Ivan Vecera) [1941938] - selftests: mlxsw: Set headroom size of correct port (Ivan Vecera) [1941938] - net/mlxfw: Use kzalloc for allocating only one thing (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use eXtended mezzanine to offload IPv4 router (Ivan Vecera) [1941938] - mlxsw: spectrum: Set KVH XLT cache mode for Spectrum2/3 (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Introduce basic XM cache flushing (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router LPM Cache ML Delete Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router_xm: Implement L-value tracking for M-index (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Router M Table Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce per-ASIC XM initialization (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Lookup Table Query Register (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT M select Register (Ivan Vecera) [1941938] - mlxsw: Ignore ports that are connected to eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: pci: Obtain info about ports used by eXtended mezanine (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce XM implementation of router low-level ops (Ivan Vecera) [1941938] - mlxsw: reg: Add Router XLT Enable Register (Ivan Vecera) [1941938] - mlxsw: reg: Add XM Direct Register (Ivan Vecera) [1941938] - selftests: mlxsw: Add Q-in-VNI veto tests (Ivan Vecera) [1941938] - selftests: forwarding: Add Q-in-VNI test (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Allow joining VxLAN to 802.1ad bridge (Ivan Vecera) [1941938] - mlxsw: Veto Q-in-VNI for Spectrum-1 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Use ops->vxlan_join() when adding VLAN to VxLAN device (Ivan Vecera) [1941938] - mlxsw: spectrum_nve_vxlan: Add support for Q-in-VNI for Spectrum-2 ASIC (Ivan Vecera) [1941938] - mlxsw: spectrum: Publish mlxsw_sp_ethtype_to_sver_type() (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_config (Ivan Vecera) [1941938] - mlxsw: Save EtherType as part of mlxsw_sp_nve_params (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common function for joining VxLAN to VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: reg: Add support for tunnel port in SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Stacking Register (Ivan Vecera) [1941938] - mlxsw: Use one enum for all registers that contain tunnel_port field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Reduce mlxsw_sp_ipip_fib_entry_op_gre4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Bump minimum FW version to xx.2008.2018 (Ivan Vecera) [1941938] - mlxsw: core_acl: Use an array instead of a struct with a zero-length array (Ivan Vecera) [1941938] - mlxsw: spectrum_mr: Use flexible-array member instead of zero-length array (Ivan Vecera) [1941938] - mlxsw: core: Trace EMAD events (Ivan Vecera) [1941938] - selftests: mlxsw: Test RIF's reference count when joining a LAG (Ivan Vecera) [1941938] - mlxsw: spectrum: Apply RIF configuration when joining a LAG (Ivan Vecera) [1941938] - selftests: forwarding: Add QinQ veto testing (Ivan Vecera) [1941938] - mlxsw: Add QinQ configuration vetoes (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Add support of QinQ traffic (Ivan Vecera) [1941938] - mlxsw: spectrum_switchdev: Create common functions for VLAN-aware bridge (Ivan Vecera) [1941938] - mlxsw: Make EtherType configurable when pushing VLAN at ingress (Ivan Vecera) [1941938] - mlxsw: spectrum: Only treat 802.1q packets as tagged packets (Ivan Vecera) [1941938] - mlxsw: reg: Add et_vlan field to SPVID register (Ivan Vecera) [1941938] - mlxsw: reg: Add Switch Port VLAN Classification Register (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Update adjacency index more efficiently (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track nexthop group virtual router membership (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Rollback virtual router adjacency pointer update (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass virtual router parameters directly instead of pointer (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix error handling issue (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Resolve RIF from nexthop struct instead of neighbour (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use loopback RIF for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use different trap identifier for unresolved nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Create loopback RIF during initialization (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Allow returning errors from mlxsw_sp_nexthop_group_refresh() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add an indication if a nexthop group can be destroyed (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Re-order mlxsw_sp_nexthop6_group_get() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type based on nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set FIB entry's type after creating nexthop group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass ifindex to mlxsw_sp_ipip_entry_find_by_decap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Set ifindex for IPv4 nexthops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Fix wrong kfree() in error path (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove outdated comment (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_fini() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Consolidate mlxsw_sp_nexthop{4, 6}_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused argument from mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop4_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass nexthop netdev to mlxsw_sp_nexthop6_type_init() (Ivan Vecera) [1941938] - mlxsw: spectrum_ipip: Remove overlay protocol from can_offload() callback (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Split nexthop group configuration to a different struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Move IPv4 FIB info into a union in nexthop group struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Remove unused field 'prio' from IPv4 FIB entry struct (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Store FIB info in route (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Associate neighbour table with nexthop instead of group (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use nexthop group type in hash table key (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Add nexthop group type field (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Compare key with correct object type (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB entry update op (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Track FIB entry committed state and skip uncommitted on delete (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce fib_entry priv for low-level ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Have FIB entry op context allocated for the instance (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Prepare work context for possible bulking (Ivan Vecera) [1941938] - mlxsw: spectrum: Push RALUE packing and writing into low-level router ops (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE pack helper from abort function (Ivan Vecera) [1941938] - mlxsw: reg: Allow to pass NULL pointer to mlxsw_reg_ralue_pack4/6() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass destination IP as a pointer to mlxsw_reg_ralue_pack4() (Ivan Vecera) [1941938] - mlxsw: spectrum: Export RALUE pack helper and use it from IPIP (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Push out RALUE pack into separate helper (Ivan Vecera) [1941938] - mlxsw: spectrum: Propagate context from work handler containing RALUE payload (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce FIB event queue instead of separate works (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Use RALUE-independent op arg (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Pass non-register proto enum to __mlxsw_sp_router_set_abort_trap() (Ivan Vecera) [1941938] - mlxsw: spectrum_router: Introduce low-level ops and implement them for RALXX regs (Ivan Vecera) [1941938] - mlxsw: reg: Add XRALXX Registers (Ivan Vecera) [1941938] - hwmon: (mlxreg-fan) Add support for fan drawers capability and present registers (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Add callback to notify mux creation completion (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend supported mux number (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Extend driver to support word address space devices (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Get rid of adapter numbers enforcement (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Prepare mux selection infrastructure for two-byte support (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Convert driver to platform driver (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Move header file out of x86 realm (Ivan Vecera) [1941938] - platform/x86: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mux: mlxcpld: Update module license (Ivan Vecera) [1941938] - i2c: mlxcpld: Add support for I2C bus frequency setting (Ivan Vecera) [1941938] - i2c: mlxcpld: Decrease polling time for performance improvement (Ivan Vecera) [1941938] - i2c: mlxcpld: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700/ComEx system (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix item counter assignment for MSN2700, MSN24xx systems (Ivan Vecera) [1941938] - platform/x86: mlx-platform: remove an unused variable (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM from default platform configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add capability field to platform FAN description (Ivan Vecera) [1941938] - platform_data/mlxreg: Extend core platform structure (Ivan Vecera) [1941938] - platform_data/mlxreg: Update module license (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Fix extended topology configuration for power supply units (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Remove PSU EEPROM configuration (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Extend FAN platform data description (Ivan Vecera) [1941938] - platform_data/mlxreg: Add presence register field for FAN devices (Ivan Vecera) [1941938] - Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-io: Add support for complex attributes (Ivan Vecera) [1941938] - platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1941938] - platform_data/mlxreg: Add support for complex attributes (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Add environmental data to uevent (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Use capability register for attribute creation (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: Modify module license (Ivan Vecera) [1941938] - lib/string_helpers: Introduce string_upper() and string_lower() helpers (Ivan Vecera) [1941938] - i2c: mlxcpld: check correct size of maximum RECV_LEN packet (Ivan Vecera) [1941938] - docs: watchdog: mlx-wdt: Add description of new watchdog type 3 (Ivan Vecera) [1941938] - watchdog: mlx-wdt: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/x86: mlx-platform: support new watchdog type with longer timeout (Ivan Vecera) [1941938] - platform_data/mlxreg: support new watchdog type with longer timeout period (Ivan Vecera) [1941938] - platform/mellanox: mlxreg-hotplug: convert to use i2c_new_client_device() (Ivan Vecera) [1941938] - selftests: icmp_redirect: IPv6 PMTU info should be cleared after redirect (Hangbin Liu) [1986227] - selftests: icmp_redirect: remove from checking for IPv6 route get (Hangbin Liu) [1986227] - selftests: icmp_redirect: support expected failures (Hangbin Liu) [1986227] - selftests: disable rp_filter for icmp_redirect.sh (Hangbin Liu) [1986227] - selftests: icmp_redirect: Add support for routing via nexthop objects (Hangbin Liu) [1986227] - selftest: Fixes for icmp_redirect test (Hangbin Liu) [1986227] - selftests: Add redirect tests (Hangbin Liu) [1986227] - redhat: enable vdpa_sim_net vdpa_sim_block vp_vdpa (Cindy Lu) [1975173] - virtio/vdpa: clear the virtqueue state during probe (Cindy Lu) [1975173] - vp_vdpa: allow set vq state to initial state after reset (Cindy Lu) [1975173] - virtio-pci library: introduce vp_modern_get_driver_features() (Cindy Lu) [1975173] - vdpa: support packed virtqueue for set/get_vq_state() (Cindy Lu) [1975173] - vdpa/mlx5: Clear vq ready indication upon device reset (Cindy Lu) [1975173] - vdpa/mlx5: Add support for doorbell bypassing (Cindy Lu) [1975173] - vdpa/mlx5: Add support for running with virtio_vdpa (Cindy Lu) [1975173] - vdp/mlx5: Fix setting the correct dma_device (Cindy Lu) [1975173] - vdpa/mlx5: Support creating resources with uid == 0 (Cindy Lu) [1975173] - vdpa/mlx5: Fix possible failure in umem size calculation (Cindy Lu) [1975173] - vdpa/mlx5: Fix umem sizes assignments on VQ create (Cindy Lu) [1975173] - vp_vdpa: correct the return value when fail to map notification (Cindy Lu) [1975173] - virtio_net: Fix error handling in virtnet_restore() (Cindy Lu) [1975173] - virtio-blk: Fix memory leak among suspend/resume procedure (Cindy Lu) [1975173] - vDPA/ifcvf: reuse pre-defined macros for device ids and vendor ids (Cindy Lu) [1975173] - virtio: update virtio id table, add transitional ids (Cindy Lu) [1975173] - vDPA/ifcvf: implement doorbell mapping for ifcvf (Cindy Lu) [1975173] - vDPA/ifcvf: record virtio notify base (Cindy Lu) [1975173] - vdpa_sim_blk: remove duplicate include of linux/blkdev.h (Cindy Lu) [1975173] - {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table (Cindy Lu) [1975173] - virtio_pci_modern: correct sparse tags for notify (Cindy Lu) [1975173] - virtio_pci_modern: __force cast the notify mapping (Cindy Lu) [1975173] - vDPA/ifcvf: get_config_size should return dev specific config size (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-block for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID when probe (Cindy Lu) [1975173] - vdpa_sim_blk: add support for vdpa management tool (Cindy Lu) [1975173] - vdpa_sim_blk: handle VIRTIO_BLK_T_GET_ID (Cindy Lu) [1975173] - vdpa_sim_blk: implement ramdisk behaviour (Cindy Lu) [1975173] - vdpa: add vdpa simulator for block device (Cindy Lu) [1975173] - vhost/vdpa: Remove the restriction that only supports virtio-net devices (Cindy Lu) [1975173] - vhost/vdpa: use get_config_size callback in vhost_vdpa_config_validate() (Cindy Lu) [1975173] - vdpa: add get_config_size callback in vdpa_config_ops (Cindy Lu) [1975173] - vdpa_sim: cleanup kiovs in vdpasim_free() (Cindy Lu) [1975173] - vringh: add vringh_kiov_length() helper (Cindy Lu) [1975173] - vringh: implement vringh_kiov_advance() (Cindy Lu) [1975173] - vringh: explain more about cleaning riov and wiov (Cindy Lu) [1975173] - vringh: reset kiov 'consumed' field in __vringh_iov() (Cindy Lu) [1975173] - vringh: add 'iotlb_lock' to synchronize iotlb accesses (Cindy Lu) [1975173] - vdpa_sim: use iova module to allocate IOVA addresses (Cindy Lu) [1975173] - vDPA/ifcvf: deduce VIRTIO device ID from pdev ids (Cindy Lu) [1975173] - vDPA/ifcvf: verify mandatory feature bits for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: fetch device feature bits when probe (Cindy Lu) [1975173] - vDPA/ifcvf: remove the version number string (Cindy Lu) [1975173] - vDPA/ifcvf: rename original IFCVF dev ids to N3000 ids (Cindy Lu) [1975173] - vDPA/ifcvf: enable Intel C5000X-PL virtio-net for vDPA (Cindy Lu) [1975173] - vDPA/ifcvf: get_vendor_id returns a device specific vendor id (Cindy Lu) [1975173] - vhost-vdpa: fix vm_flags for virtqueue doorbell mapping (Cindy Lu) [1975173] - vp_vdpa: report doorbell address (Cindy Lu) [1975173] - virtio-pci library: report resource address (Cindy Lu) [1975173] - virito_pci libray: hide vp_modern_map_capability() (Cindy Lu) [1975173] - virtio_pci_modern: hide vp_modern_get_queue_notify_off() (Cindy Lu) [1975173] - vp_vdpa: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio-pci library: switch to use vp_modern_map_vq_notify() (Cindy Lu) [1975173] - virtio_pci_modern: introduce helper to map vq notify area (Cindy Lu) [1975173] - virtio-net: don't allocate control_buf if not supported (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa: Follow kdoc comment style (Cindy Lu) [1975173] - vdpa/mlx5: Enable user to add/delete vdpa device (Cindy Lu) [1975173] - vdpa: introduce virtio pci driver (Cindy Lu) [1975173] - vdpa/mlx5: Set err = -ENOMEM in case dma_map_sg_attrs fails (Cindy Lu) [1975173] - vhost-vdpa: protect concurrent access to vhost device iotlb (Cindy Lu) [1975173] - vdpa/mlx5: Fix suspend/resume index restoration (Cindy Lu) [1975173] - vdpa/mlx5: Fix wrong use of bit numbers (Cindy Lu) [1975173] - vdpa/mlx5: should exclude header length and fcs from mtu (Cindy Lu) [1975173] - vhost-vdpa: set v->config_ctx to NULL if eventfd_ctx_fdget() fails (Cindy Lu) [1975173] - vhost-vdpa: fix use-after-free of v->config_ctx (Cindy Lu) [1975173] - vhost_vdpa: fix the missing irq_bypass_unregister_producer() invocation (Cindy Lu) [1975173] - vdpa_sim: Skip typecasting from void* (Cindy Lu) [1975173] - vdpa: set the virtqueue num during register (Cindy Lu) [1975173] - vdpa/mlx5: fix param validation in mlx5_vdpa_get_config() (Cindy Lu) [1975173] - virtio_vdpa: don't warn when fail to disable vq (Cindy Lu) [1975173] - virtio-pci: introduce modern device module (Cindy Lu) [1975173] - virito-pci-modern: rename map_capability() to vp_modern_map_capability() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to get notification offset (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for getting queue nums (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper for setting/geting queue size (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set/get queue_enable (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_queue_address() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_set_queue_vector() (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_generation() (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting features (Cindy Lu) [1975173] - virtio-pci-modern: introduce helpers for setting and getting status (Cindy Lu) [1975173] - virtio-pci-modern: introduce helper to set config vector (Cindy Lu) [1975173] - virtio-pci-modern: introduce vp_modern_remove() (Cindy Lu) [1975173] - virtio-pci-modern: factor out modern device initialization logic (Cindy Lu) [1975173] - virtio-pci: split out modern device (Cindy Lu) [1975173] - virtio-pci: do not access iomem via struct virtio_pci_device directly (Cindy Lu) [1975173] - vdpa_sim_net: Add support for user supported devices (Cindy Lu) [1975173] - vdpa: Enable user to query vdpa device info (Cindy Lu) [1975173] - vdpa: Enable a user to add and delete a vdpa device (Cindy Lu) [1975173] - vdpa: Define vdpa mgmt device, ops and a netlink interface (Cindy Lu) [1975173] - vdpa: Extend routine to accept vdpa device name (Cindy Lu) [1975173] - vdpa_sim_net: Make mac address array static (Cindy Lu) [1975173] - vdpa/mlx5: Restore the hardware used index after change map (Cindy Lu) [1975173] - vdpa/mlx5: Fix memory key MTT population (Cindy Lu) [1975173] - vdpa: Use simpler version of ida allocation (Cindy Lu) [1975173] - vdpa: Add missing comment for virtqueue count (Cindy Lu) [1975173] - vdpa: split vdpasim to core and net modules (Cindy Lu) [1975173] - vdpa_sim: split vdpasim_virtqueue's iov field in out_iov and in_iov (Cindy Lu) [1975173] - vdpa_sim: make vdpasim->buffer size configurable (Cindy Lu) [1975173] - vdpa_sim: use kvmalloc to allocate vdpasim->buffer (Cindy Lu) [1975173] - vdpa_sim: set vringh notify callback (Cindy Lu) [1975173] - vdpa_sim: add set_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add get_config callback in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: make 'config' generic and usable for any device type (Cindy Lu) [1975173] - vdpa_sim: store parsed MAC address in a buffer (Cindy Lu) [1975173] - vdpa_sim: add work_fn in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add supported_features field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add device id field in vdpasim_dev_attr (Cindy Lu) [1975173] - vdpa_sim: add struct vdpasim_dev_attr for device attributes (Cindy Lu) [1975173] - vdpa_sim: rename vdpasim_config_ops variables (Cindy Lu) [1975173] - vdpa_sim: make IOTLB entries limit configurable (Cindy Lu) [1975173] - vdpa_sim: remove hard-coded virtq count (Cindy Lu) [1975173] - vdpa_sim: remove unnecessary headers inclusion (Cindy Lu) [1975173] - vdpa: remove unnecessary 'default n' in Kconfig entries (Cindy Lu) [1975173] - vdpa: ifcvf: Use dma_set_mask_and_coherent to simplify code (Cindy Lu) [1975173] - vhost_vdpa: switch to vmemdup_user() (Cindy Lu) [1975173] - vhost: vringh: use krealloc_array() (Cindy Lu) [1975173] - vringh: fix vringh_iov_push_*() documentation (Cindy Lu) [1975173] - vringh: fix __vringh_iov() when riov and wiov are different (Cindy Lu) [1975173] - net: sched: fix memory leak in tcindex_partial_destroy_work (Davide Caratti) [1987042] - net/sched: act_ct: remove and free nf_table callbacks (Davide Caratti) [1987042] - net: sched: fix warning in tcindex_alloc_perfect_hash (Davide Caratti) [1987042] - pkt_sched: sch_qfq: fix qfq_change_class() error path (Davide Caratti) [1987042] - sch_htb: fix refcount leak in htb_parent_to_leaf_offload (Davide Caratti) [1987042] - sch_dsmark: fix a NULL deref in qdisc_reset() (Davide Caratti) [1987042] - sch_red: fix off-by-one checks in red_check_params() (Davide Caratti) [1987042] - ipv6: fix 'disable_policy' for fwd packets (Hangbin Liu) [1985837] - net: ipv6: fix return value of ip6_skb_dst_mtu (Hangbin Liu) [1985837] - ipv6: fix out-of-bound access in ip6_parse_tlv() (Hangbin Liu) [1985837] - ipv6: exthdrs: do not blindly use init_net (Hangbin Liu) [1985837] - ipv6: record frag_max_size in atomic fragments in input path (Hangbin Liu) [1985837] - selftests: net: devlink_port_split.py: skip the test if no devlink device (Hangbin Liu) [1985836] - selftests/net: bump timeout to 5 minutes (Hangbin Liu) [1985836] - selftests: net: forwarding: Fix a typo (Hangbin Liu) [1985836] - selftests/net: so_txtime: remove unneeded semicolon (Hangbin Liu) [1985836] - tools: selftests: add test for changing routes with PTMU exceptions (Hangbin Liu) [1985836] - selftests: fix the return value for UDP GRO test (Hangbin Liu) [1985836] - selftests: pmtu.sh: improve the test result processing (Hangbin Liu) [1985836] - selftests: pmtu.sh: use $ksft_skip for skipped return code (Hangbin Liu) [1985836] - selftests/net: timestamping: add ptp v2 support (Hangbin Liu) [1985836] - ixgbevf: add correct exception tracing for XDP (Ken Cox) [1920268] - intel: call csum functions with well formatted arguments (Ken Cox) [1920268] - net: intel: Remove unused function pointer typedef ixgbe_mc_addr_itr (Ken Cox) [1920268] - ixgbevf: Fix fall-through warnings for Clang (Ken Cox) [1920268] - intel: clean up mismatched header comments (Ken Cox) [1920268] - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA (Ken Cox) [1920268] - net: ixgbevf: use skb_csum_is_sctp instead of protocol check (Ken Cox) [1920268] - treewide: Use sizeof_field() macro (Ken Cox) [1920268] - selftests: net: add ESP-in-UDP PMTU test (Xin Long) [1986599] - udp: check encap socket in __udp_lib_err (Xin Long) [1986599] - udp: fix possible user after free in error handler (Xin Long) [1986599] - udpv6: fix possible user after free in error handler (Xin Long) [1986599] - udp: Support for error handlers of tunnels with arbitrary destination port (Xin Long) [1986599] - bpf, sockmap, udp: sk_prot needs inuse_idx set for proc stats (Xin Long) [1986599] - udp: properly flush normal packet at GRO time (Xin Long) [1986599] - udp: annotate data races around unix_sk(sk)->gso_size (Xin Long) [1986599] - udp: fix race between close() and udp_abort() (Xin Long) [1986599] - netfilter: conntrack: remove offload_pickup sysctl again (Florian Westphal) [1987101] - bpf, samples: Add -fno-asynchronous-unwind-tables to BPF Clang invocation (Yauheni Kaliuta) [1977162] - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock (Balazs Nemeth) [1986845] - netfilter: nf_tables: fix flowtable list del corruption (Jay Shin) [1977137] - net: qrtr: fix memory leaks (Íñigo Huguet) [1981236] - net: qrtr: fix OOB Read in qrtr_endpoint_post (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix error return code in qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Avoid potential use after free in MHI send (Íñigo Huguet) [1981236] - qrtr: Convert qrtr_ports from IDR to XArray (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak on qrtr_tx_wait failure (Íñigo Huguet) [1981236] - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (Íñigo Huguet) [1981236] - net: qrtr: fix error return code of qrtr_sendmsg() (Íñigo Huguet) [1981236] - net/qrtr: fix __netdev_alloc_skb call (Íñigo Huguet) [1981236] - net: qrtr: Fix memory leak in qrtr_tun_open (Íñigo Huguet) [1981236] - net/qrtr: restrict user-controlled length in qrtr_tun_write_iter() (Íñigo Huguet) [1981236] - net: qrtr: fix null-ptr-deref in qrtr_ns_remove (Íñigo Huguet) [1981236] - net: qrtr: Unprepare MHI channels during remove (Íñigo Huguet) [1981236] - net: qrtr: Start MHI channels during init (Íñigo Huguet) [1981236] - net: qrtr: Release distant nodes along the bridge node (Íñigo Huguet) [1981236] - net: qrtr: Add GFP flags parameter to qrtr_alloc_ctrl_packet (Íñigo Huguet) [1981236] - net: qrtr: Allow non-immediate node routing (Íñigo Huguet) [1981236] - net: qrtr: Allow forwarded services (Íñigo Huguet) [1981236] - net: qrtr: Fix port ID for control messages (Íñigo Huguet) [1981236] - net: qrtr: ns: Fix the incorrect usage of rcu_read_lock() (Íñigo Huguet) [1981236] - net: qrtr: ns: Protect radix_tree_deref_slot() using rcu read locks (Íñigo Huguet) [1981236] - net: qrtr: check skb_put_padto() return value (Íñigo Huguet) [1981236] - net: qrtr: fix usage of idr in port assignment to socket (Íñigo Huguet) [1981236] - qrtr: orphan socket in qrtr_release() (Íñigo Huguet) [1981236] - net: qrtr: Fix an out of bounds read qrtr_endpoint_post() (Íñigo Huguet) [1981236] - net: qrtr: free flow in __qrtr_node_release (Íñigo Huguet) [1981236] - treewide: replace '---help---' in Kconfig files with 'help' (Íñigo Huguet) [1981236] - net: qrtr: Allocate workqueue before kernel_bind (Íñigo Huguet) [1981236] - net: qrtr: Fix passing invalid reference to qrtr_local_enqueue() (Íñigo Huguet) [1981236] - net: qrtr: Add MHI transport layer (Íñigo Huguet) [1981236] - net: qrtr: Add tracepoint support (Íñigo Huguet) [1981236] - net: qrtr: send msgs from local of same id as broadcast (Íñigo Huguet) [1981236] - net: qrtr: Fix FIXME related to qrtr_ns_init() (Íñigo Huguet) [1981236] - net: qrtr: Respond to HELLO message (Íñigo Huguet) [1981236] - net: qrtr: Fix error pointer vs NULL bugs (Íñigo Huguet) [1981236] - net: qrtr: fix spelling mistake "serivce" -> "service" (Íñigo Huguet) [1981236] - net: qrtr: Fix the local node ID as 1 (Íñigo Huguet) [1981236] - net: qrtr: Migrate nameservice to kernel from userspace (Íñigo Huguet) [1981236] - net: qrtr: Remove receive worker (Íñigo Huguet) [1981236] - net: qrtr: Make qrtr_port_lookup() use RCU (Íñigo Huguet) [1981236] - net: qrtr: Migrate node lookup tree to spinlock (Íñigo Huguet) [1981236] - net: qrtr: Implement outgoing flow control (Íñigo Huguet) [1981236] - net: qrtr: Move resume-tx transmission to recvmsg (Íñigo Huguet) [1981236] - net: qrtr: fix len of skb_put_padto in qrtr_node_enqueue (Íñigo Huguet) [1981236] - net: qrtr: Simplify 'qrtr_tun_release()' (Íñigo Huguet) [1981236] - net: qrtr: Stop rx_worker before freeing node (Íñigo Huguet) [1981236] - net: qrtr: fix memort leak in qrtr_tun_write_iter (Íñigo Huguet) [1981236] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Íñigo Huguet) [1981236] - treewide: Add SPDX license identifier - Makefile/Kconfig (Íñigo Huguet) [1981236] - net: qrtr: Fix message type of outgoing packets (Íñigo Huguet) [1981236] - net: qrtr: use protocol endiannes variable (Íñigo Huguet) [1981236] - net: fix hangup on napi_disable for threaded napi (Paolo Abeni) [1949546] - net: fix race between napi kthread mode and busy poll (Paolo Abeni) [1949546] - net: add sysfs attribute to control napi threaded mode (Paolo Abeni) [1949546] - net: implement threaded-able napi poll loop support (Paolo Abeni) [1949546] - net: extract napi poll functionality to __napi_poll() (Paolo Abeni) [1949546] - mfd: intel-lpss: Use devm_ioremap_uc for MMIO (Steve Best) [1986715] - lib: devres: add a helper function for ioremap_uc (Steve Best) [1986715] - sched/rt: Fix double enqueue caused by rt_effective_prio (Juri Lelli) [1990566] - x86/crash: Remove crash_reserve_low_1M() (Lianbo Jiang) [1904318] - x86/setup: Remove CONFIG_X86_RESERVE_LOW and reservelow= options (Lianbo Jiang) [1904318] - x86/setup: Always reserve the first 1M of RAM (Lianbo Jiang) [1904318] - powerpc/kexec: blacklist functions called in real mode for kprobe (Desnes A. Nunes do Rosario) [1987281] - [s390] scsi: zfcp: Report port fc_security as unknown early during remote cable pull (Claudio Imbrenda) [1989910] - x86/boot: Use common BUILD_BUG_ON (Prarit Bhargava) [1979940] - net: phy: icplus: call phy_restore_page() when phy_select_page() fails (Petr Oros) [1955165] - net: phy: ti: take into account all possible interrupt sources (Petr Oros) [1955165] - net: phy: smsc: add missed clk_disable_unprepare in smsc_phy_probe() (Petr Oros) [1955165] - net: phy: Expose phydev::dev_flags through sysfs (Petr Oros) [1955165] - net: phy: fix save wrong speed and duplex problem if autoneg is on (Petr Oros) [1955165] - net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081 (Petr Oros) [1955165] - net: phy: icplus: add MDI/MDIX support for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: add PHY counter for IP101G (Petr Oros) [1955165] - net: phy: icplus: fix paged register access (Petr Oros) [1955165] - net: phy: icplus: don't set APS_EN bit on IP101G (Petr Oros) [1955165] - net: phy: icplus: split IP101A/G driver (Petr Oros) [1955165] - net: phy: icplus: use the .soft_reset() of the phy-core (Petr Oros) [1955165] - net: phy: icplus: drop address operator for functions (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_EXACT() for IP101A/G (Petr Oros) [1955165] - net: phy: icplus: use PHY_ID_MATCH_MODEL() macro (Petr Oros) [1955165] - net: phy: drop explicit genphy_read_status() op (Petr Oros) [1955165] - net: phy: broadcom: remove BCM5482 1000Base-BX support (Petr Oros) [1955165] - net: mdiobus: Prevent spike on MDIO bus reset signal (Petr Oros) [1955165] - net: phy: realtek: Add support for RTL9000AA/AN (Petr Oros) [1955165] - mdio, phy: fix -Wshadow warnings triggered by nested container_of() (Petr Oros) [1955165] - net: phy: national: remove definition of DEBUG (Petr Oros) [1955165] - net: phy: ar803x: disable extended next page bit (Petr Oros) [1955165] - net: phy: smsc: fix clk error handling (Petr Oros) [1955165] - net: phy: at803x: use phy_modify_mmd() (Petr Oros) [1955165] - net: phy: replace mutex_is_locked with lockdep_assert_held in phylib (Petr Oros) [1955165] - net: phy: micrel: Add KS8851 PHY support (Petr Oros) [1955165] - net: phy: marvell: replace phy_modify() (Petr Oros) [1955165] - net: phy: micrel: fix interrupt handling (Petr Oros) [1955165] - net: phy: remove the .did_interrupt() and .ack_interrupt() callback (Petr Oros) [1955165] - net: phy: qsemi: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: qsemi: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: ti: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ti: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: national: remove the use of the .ack_interrupt() (Petr Oros) [1955165] - net: phy: national: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: micrel: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: micrel: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: icplus: remove the use .ack_interrupt() (Petr Oros) [1955165] - net: phy: icplus: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: intel-xway: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: intel-xway: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - mdio_bus: suppress err message for reset gpio EPROBE_DEFER (Petr Oros) [1955165] - net: phy: don't duplicate driver name in phy_attached_print (Petr Oros) [1955165] - net: phy: ste10Xp: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: ste10Xp: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: smsc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: smsc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: amd: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: amd: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: lxt: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: lxt: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: marvell: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: marvell: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: microchip: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: microchip: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: vitesse: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: vitesse: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: do not return an error on clearing pending IRQs (Petr Oros) [1955165] - net: phy: microchip_t1: Don't set .config_aneg (Petr Oros) [1955165] - docs: networking: phy: s/2.5 times faster/2.5 times as fast/ (Petr Oros) [1955165] - net: phy: realtek: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: realtek: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: add genphy_handle_interrupt_no_ack() (Petr Oros) [1955165] - net: phy: davicom: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: davicom: implement generic .handle_interrupt() calback (Petr Oros) [1955165] - net: phy: cicada: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: cicada: implement the generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: broadcom: remove use of ack_interrupt() (Petr Oros) [1955165] - net: phy: broadcom: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: aquantia: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: aquantia: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: mscc: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: mscc: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: at803x: remove the use of .ack_interrupt() (Petr Oros) [1955165] - net: phy: at803x: implement generic .handle_interrupt() callback (Petr Oros) [1955165] - net: phy: make .ack_interrupt() optional (Petr Oros) [1955165] - net: phy: add a shutdown procedure (Petr Oros) [1955165] - net: phy: export phy_error and phy_trigger_machine (Petr Oros) [1955165] - drivers: net: phy: Fix spelling in comment defalut to default (Petr Oros) [1955165] - net: phy: marvell: add special handling of Finisar modules with 88E1111 (Petr Oros) [1955165] - net: phylink: disable BMCR_ISOLATE in phylink_mii_c22_pcs_config (Petr Oros) [1955165] - gpiolib: Extract gpiod_not_found() helper (Petr Oros) [1955165] - net: phy: marvell: Use phy_read_paged() instead of open coding it (Petr Oros) [1955165] - net: phy: dp83869: fix unsigned comparisons against less than zero values (Petr Oros) [1955165] - net: phy: dp83869: Add speed optimization feature (Petr Oros) [1955165] - net: phy: dp83869: support Wake on LAN (Petr Oros) [1955165] - net: phy: dp83822: Update the fiber advertisement for speed (Petr Oros) [1955165] - net: dp83869: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: phy: Do not warn in phy_stop() on PHY_DOWN (Petr Oros) [1955165] - net: phy: Avoid NPD upon phy_detach() when driver is unbound (Petr Oros) [1955165] - net: phy: bcm7xxx: request and manage GPHY clock (Petr Oros) [1955165] - net: phy: smsc: LAN8710/20: add phy refclk in support (Petr Oros) [1955165] - net: phy: smsc: simplify config_init callback (Petr Oros) [1955165] - net: phy: smsc: skip ENERGYON interrupt if disabled (Petr Oros) [1955165] - net: phy: dp83867: Fix various styling and space issues (Petr Oros) [1955165] - net: mdiobus: add clause 45 mdiobus write accessor (Petr Oros) [1955165] - net: phylink: consider QSGMII interface mode in phylink_mii_c22_pcs_get_state (Petr Oros) [1955165] - net: phylink: add helper function to decode USXGMII word (Petr Oros) [1955165] - net: phy: DP83822: Add ability to advertise Fiber connection (Petr Oros) [1955165] - net: dp83869: Fix RGMII internal delay configuration (Petr Oros) [1955165] - net: mdio-mux-gpio: use devm_gpiod_get_array() (Petr Oros) [1955165] - net: phy: add USXGMII link partner ability constants (Petr Oros) [1955165] - net: phy: mdio-octeon: Cleanup module loading dependencies (Petr Oros) [1955165] - net: phy: cavium: Improve __iomem mess (Petr Oros) [1955165] - net: phy: Add a helper to return the index for of the internal delay (Petr Oros) [1955165] - dt-bindings: net: Add RGMII internal delay for DP83869 (Petr Oros) [1955165] - net: dp83869: Add RGMII internal delay configuration (Petr Oros) [1955165] - net: phy: DP83822: Add setting the fixed internal delay (Petr Oros) [1955165] - net: dp83869: Fix OF_MDIO config check (Petr Oros) [1955165] - net: dp83867: Fix OF_MDIO config check (Petr Oros) [1955165] - net: marvell: Fix OF_MDIO config check (Petr Oros) [1955165] - net: phy: mscc: use mdiobus_get_phy() (Petr Oros) [1955165] - net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1955165]- net/mlx5e: Add IPsec support to uplink representor (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Reserved bit 31 of REG_C1 for IPsec offload (Alaa Hleihel) [1980171 1926098] - net/mlx5e: TC: Use bit counts for register mapping (Alaa Hleihel) [1980171 1926098] - RDMA/mlx5: Don't access NULL-cleared mpi pointer (Alaa Hleihel) [1980171] - RDMA/mlx5: Split mlx5_ib_update_xlt() into ODP and non-ODP cases (Alaa Hleihel) [1980171] - ip6_tunnel: allow redirecting ip6gre and ipxip6 packets to eth devices (Guillaume Nault) [1921539] - gre: let mac_header point to outer header only when necessary (Guillaume Nault) [1921539] - sit: allow redirecting ip6ip, ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - ipip: allow redirecting ipip and mplsip packets to eth devices (Guillaume Nault) [1921539] - bareudp: allow redirecting bareudp packets to eth devices (Guillaume Nault) [1921539] - net: handle ARPHRD_IP6GRE in dev_is_mac_header_xmit() (Guillaume Nault) [1921539] - net: ipv4: fix memory leak in ip_mc_add1_src (Guillaume Nault) [1987605] - net: ipv4: fix memory leak in netlbl_cipsov4_add_std (Guillaume Nault) [1987605] - ixgbe: fix probing of multi-port devices with one MDIO (Ken Cox) [1968696] - [s390] s390/qdio: let driver manage the QAOB (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove RX VLAN filter stubs in L3 driver (Claudio Imbrenda) [1919250] - [s390] s390/qeth: enable napi_consume_skb() for pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allocate initial TX Buffer structs with GFP_KERNEL (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix notification for pending buffers during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: schedule TX NAPI on QAOB completion (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve completion of pending TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix memory leak after failed TX Buffer allocation (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't fake a TX completion interrupt after TX error (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make cast type selection for af_iucv skbs robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: pass proto to qeth_l3_get_cast_type() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove qeth_get_ip_version() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up load/remove code for disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix L2 header access in qeth_l3_osa_features_check() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix locking for discipline setup / removal (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix deadlock during recovery (Claudio Imbrenda) [1919250] - [s390] s390/qeth: make qeth_qdio_handle_aob() more robust (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't replace a fully completed async TX buffer (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use dev->groups for common sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/ccwgroup: use bus->dev_groups for bus-based sysfs attributes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't call INIT_LIST_HEAD() on iob's list entry (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix tear down of async TX buffers (Claudio Imbrenda) [1919250] - [s390] s390/qeth: fix af_iucv notification race (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve selection of ethtool link modes (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use QUERY OAT for initial link info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up default cases for ethtool link mode (Claudio Imbrenda) [1919250] - [s390] s390/qeth: set static link info during initialization (Claudio Imbrenda) [1919250] - [s390] s390/qeth: improve QUERY CARD INFO processing (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tolerate error when querying card info (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove useless if/else (Claudio Imbrenda) [1919250] - [s390] s390/qeth: reduce rtnl locking for switchdev events (Claudio Imbrenda) [1919250] - [s390] s390/qeth: static checker cleanups (Claudio Imbrenda) [1919250] - [s390] s390/qeth: use netdev_name() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: constify the disciplines (Claudio Imbrenda) [1919250] - [s390] s390/qeth: allow configuration of TX queues for OSA devices (Claudio Imbrenda) [1919250] - [s390] s390/qeth: de-magic the QIB parm area (Claudio Imbrenda) [1919250] - [s390] s390/qeth: keep track of wanted TX queues (Claudio Imbrenda) [1919250] - [s390] s390/qeth: remove forward declarations in L2 code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate teardown code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: consolidate online code (Claudio Imbrenda) [1919250] - [s390] s390/qeth: cancel cmds earlier during teardown (Claudio Imbrenda) [1919250] - [s390] s390/qeth: tighten ucast IP locking (Claudio Imbrenda) [1919250] - [s390] s390/qeth: replace deprecated simple_stroul() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: clean up string ops in qeth_l3_parse_ipatoe() (Claudio Imbrenda) [1919250] - [s390] s390/qeth: relax locking for ipato config data (Claudio Imbrenda) [1919250] - [s390] s390/qeth: don't init refcount twice for mcast IPs (Claudio Imbrenda) [1919250] - mm, page_alloc: check for max order in hot path (Jay Shin) [1982466] - be2net: Fix an error handling path in 'be_probe()' (Petr Oros) [1980665] - net: emulex: benet: simplify the return expression of be_if_create() (Petr Oros) [1980665] - treewide: Use fallthrough pseudo-keyword (Petr Oros) [1980665] - be2net: convert to new udp_tunnel_nic infra (Petr Oros) [1980665] - benet: use generic power management (Petr Oros) [1980665] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1980665] - hwmon: (k10temp) Zen3 Ryzen Desktop CPUs support (David Arcari) [1980072] - hwmon: (k10temp) Remove support for displaying voltage and current on Zen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Add support for Zen3 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Take out debugfs code (David Arcari) [1980072] - hwmon: (k10temp) Define SVI telemetry and current factors for Zen2 CPUs (David Arcari) [1980072] - hwmon: (k10temp) Create common functions and macros for Zen CPU families (David Arcari) [1980072] - hwmon: (k10temp) Add AMD family 17h model 60h PCI match (David Arcari) [1980072] - hwmon: (k10temp) make some symbols static (David Arcari) [1980072] - hwmon: (k10temp) Reorganize and simplify temperature support detection (David Arcari) [1980072] - hwmon: (k10temp) Swap Tdie and Tctl on Family 17h CPUs (David Arcari) [1980072] - hwmon: (k10temp) Display up to eight sets of CCD temperatures (David Arcari) [1980072] - hwmon: (k10temp) Add debugfs support (David Arcari) [1980072] - hwmon: (k10temp) Don't show temperature limits on Ryzen (Zen) CPUs (David Arcari) [1980072] - hwmon: (k10temp) Show core and SoC current and voltages on Ryzen CPUs (David Arcari) [1980072] - hwmon: (k10temp) Report temperatures per CPU die (David Arcari) [1980072] - hmon: (k10temp) Convert to use devm_hwmon_device_register_with_info (David Arcari) [1980072] - hwmon: (k10temp) Use bitops (David Arcari) [1980072] - hwmon: (k10temp) Add support for AMD family 17h, model 70h CPUs (David Arcari) [1980072] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 56 (David Arcari) [1980072] - hwmon: (k10temp) Add Hygon Dhyana support (David Arcari) [1980072] - hwmon: (k10temp) Auto-convert to use SENSOR_DEVICE_ATTR_{RO, RW, WO} (David Arcari) [1980072] - hwmon: (k10temp) Support all Family 15h Model 6xh and Model 7xh processors (David Arcari) [1980072] - hwmon: k10temp: Support Threadripper 2920X, 2970WX; simplify offset table (David Arcari) [1980072] - hwmon: (k10temp) 27C Offset needed for Threadripper2 (David Arcari) [1980072] - x86/amd_nb: Add AMD family 17h model 60h PCI IDs (David Arcari) [1980072] - x86/amd_nb: Add PCI device IDs for family 17h, model 70h (David Arcari) [1980072] - x86/pci, x86/amd_nb: Add Hygon Dhyana support to PCI and northbridge (David Arcari) [1980072] - Revert "[hwmon] hwmon: (k10temp) Add support for Zen3 CPUs" (David Arcari) [1980072] - serial: 8250: Process sysrq at port unlock time (Prarit Bhargava) [1982016] - serial: core: Include console.h from serial_core.h (Prarit Bhargava) [1982016] - serial: core: Allow processing sysrq at port unlock time (Prarit Bhargava) [1982016] - [s390] s390/dasd: add missing discipline function (Claudio Imbrenda) [1981804] - bnxt_en: Validate vlan protocol ID on RX packets (Jonathan Toppins) [1960961] - KVM: do not allow mapping valid but non-reference-counted pages (Jon Maloy) [1975515] - gfs2: Fix error handling in init_statfs (Andreas Gruenbacher) [1872440] - gfs2: Fix underflow in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Pass glock holder to gfs2_file_direct_{read,write} (Andreas Gruenbacher) [1872440] - gfs2: Prevent direct-I/O write fallback errors from getting lost (Andreas Gruenbacher) [1872440] - gfs2: Improve mmap write vs. truncate consistency (Andreas Gruenbacher) [1872440] - iomap: Permit pages without an iop to enter writeback (Andreas Gruenbacher) [1872440] - iomap: Don't create iomap_page objects for inline files (Andreas Gruenbacher) [1872440] - gfs2: Clean up gfs2_unstuff_dinode (Andreas Gruenbacher) [1872440] - gfs2: Unstuff before locking page in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Clean up the error handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Fix end-of-file handling in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: Use resource group glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Allow node-wide exclusive glock sharing (Andreas Gruenbacher) [1442151] - gfs2: Add local resource group locking (Andreas Gruenbacher) [1442151] - gfs2: Add per-reservation reserved block accounting (Andreas Gruenbacher) [1442151] - gfs2: Rename rs_{free -> requested} and rd_{reserved -> requested} (Andreas Gruenbacher) [1442151] - gfs2: Check for active reservation in gfs2_release (Andreas Gruenbacher) [1442151] - gfs2: Don't search for unreserved space twice (Andreas Gruenbacher) [1442151] - gfs2: Only pass reservation down to gfs2_rbm_find (Andreas Gruenbacher) [1442151] - gfs2: Also reflect single-block allocations in rgd->rd_extfail_pt (Andreas Gruenbacher) [1442151] - gfs2: Set GBF_FULL flags when reading resource group (Andreas Gruenbacher) [1442151] - gfs2: Don't clear GBF_FULL flags in rs_deltree (Andreas Gruenbacher) [1442151] - Revert "gfs2: Don't reject a supposedly full bitmap if we have blocks reserved" (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_inplace_reserve cleanup (Andreas Gruenbacher) [1442151] - gfs2: Get rid of unnecessary variable in gfs2_alloc_blocks (Andreas Gruenbacher) [1442151] - gfs2: Only use struct gfs2_rbm for bitmap manipulations (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_rbm_incr into gfs2_rbm_add (Andreas Gruenbacher) [1872440] - gfs2: Replace gfs2_lblk_to_dblk with gfs2_get_extent (Andreas Gruenbacher) [1872440] - gfs2: Turn gfs2_extent_map into gfs2_{get,alloc}_extent (Andreas Gruenbacher) [1872440] - gfs2: Add new gfs2_iomap_get helper (Andreas Gruenbacher) [1872440] - gfs2: Make inode operations static (Andreas Gruenbacher) [1872440] - gfs2: use iomap for buffered I/O in ordered and writeback mode (Andreas Gruenbacher) [1872440] - gfs2: Never call gfs2_block_zero_range with an open transaction (Andreas Gruenbacher) [1872440] - gfs2: Upgrade shared glocks for atime updates (Andreas Gruenbacher) [1872440] - gfs2: Rework read and page fault locking (Andreas Gruenbacher) [1872440] - fs: Add IOCB_NOIO flag for generic_file_read_iter (Andreas Gruenbacher) [1872440] - gfs2: Remove duplicate call from gfs2_create_inode (Andreas Gruenbacher) [1872440] - gfs2: Multi-block allocations in gfs2_page_mkwrite (Andreas Gruenbacher) [1872440] - gfs2: implement gfs2_block_zero_range using iomap_zero_range (Andreas Gruenbacher) [1872440] - gfs2: Add support for IOMAP_ZERO (Andreas Gruenbacher) [1872440] - gfs2: gfs2_iomap_begin cleanup (Andreas Gruenbacher) [1872440] - gfs2: Remove unused gfs2_iomap_alloc argument (Andreas Gruenbacher) [1872440] - gfs2: don't use buffer_heads in gfs2_allocate_page_backing (Andreas Gruenbacher) [1872440] - gfs2: use iomap_bmap instead of generic_block_bmap (Andreas Gruenbacher) [1872440] - gfs2: mark stuffed_readpage static (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writepage_common into gfs2_writepage (Andreas Gruenbacher) [1872440] - gfs2: merge gfs2_writeback_aops and gfs2_ordered_aops (Andreas Gruenbacher) [1872440] - gfs2: remove the unused gfs2_stuffed_write_end function (Andreas Gruenbacher) [1872440] - gfs2: use page_offset in gfs2_page_mkwrite (Andreas Gruenbacher) [1442151] - gfs2: Add new sysfs file for gfs2 status (Andreas Gruenbacher) [1442151] - gfs2: Per-revoke accounting in transactions (Andreas Gruenbacher) [1442151] - gfs2: Rework the log space allocation logic (Andreas Gruenbacher) [1442151] - gfs2: Minor calc_reserved cleanup (Andreas Gruenbacher) [1442151] - gfs2: Move function gfs2_ail_empty_tr (Andreas Gruenbacher) [1442151] - gfs2: Get rid of current_tail() (Andreas Gruenbacher) [1442151] - gfs2: Use a tighter bound in gfs2_trans_begin (Andreas Gruenbacher) [1442151] - gfs2: Clean up gfs2_log_reserve (Andreas Gruenbacher) [1442151] - gfs2: Don't wait for journal flush in clean_journal (Andreas Gruenbacher) [1442151] - gfs2: Move lock flush locking to gfs2_trans_{begin,end} (Andreas Gruenbacher) [1442151] - gfs2: Get rid of sd_reserving_log (Andreas Gruenbacher) [1442151] - gfs2: Clean up on-stack transactions (Andreas Gruenbacher) [1442151] - gfs2: Use sb_start_intwrite in gfs2_ail_empty_gl (Andreas Gruenbacher) [1442151] - gfs2: Clean up ail2_empty (Andreas Gruenbacher) [1442151] - gfs2: Rename gfs2_{write => flush}_revokes (Andreas Gruenbacher) [1442151] - gfs2: Minor debugging improvement (Andreas Gruenbacher) [1442151] - gfs2: Some documentation updates (Andreas Gruenbacher) [1442151] - gfs2: Minor gfs2_write_revokes cleanups (Andreas Gruenbacher) [1442151] - gfs2: Simplify the buf_limit and databuf_limit definitions (Andreas Gruenbacher) [1442151] - gfs2: Un-obfuscate function jdesc_find_i (Andreas Gruenbacher) [1442151] - gfs2: Fix fall-through warnings for Clang (Andreas Gruenbacher) [1442151] - gfs2: Make gfs2_setattr_simple static (Andreas Gruenbacher) [1442151] - gfs2: Turn gfs2_meta_indirect_buffer into gfs2_meta_buffer (Andreas Gruenbacher) [1442151] - gfs2: Remove unused variable sb_format (Andreas Gruenbacher) [1442151] - gfs2: Fix dir.c function parameter descriptions (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gh parameter from go_xmote_bh func (Andreas Gruenbacher) [1442151] - gfs2: don't create empty buffers for NO_CREATE (Andreas Gruenbacher) [1442151] - gfs2: Flag a withdraw if init_threads() fails (Andreas Gruenbacher) [1442151] - gfs2: bypass log flush if the journal is not live (Andreas Gruenbacher) [1442151] - gfs2: bypass signal_our_withdraw if no journal (Andreas Gruenbacher) [1442151] - gfs2: fix use-after-free in trans_drain (Andreas Gruenbacher) [1442151] - gfs2: make function gfs2_make_fs_ro() to void type (Andreas Gruenbacher) [1442151] - whack-a-mole: don't open-code iminor/imajor (Andreas Gruenbacher) [1442151] - gfs2: amend SLAB_RECLAIM_ACCOUNT on gfs2 related slab cache (Andreas Gruenbacher) [1442151] - gfs2: Remove sb_start_write from gfs2_statfs_sync (Andreas Gruenbacher) [1442151] - gfs2: check for empty rgrp tree in gfs2_ri_update (Andreas Gruenbacher) [1442151] - gfs2: set lockdep subclass for iopen glocks (Andreas Gruenbacher) [1442151] - gfs2: Fix deadlock dumping resource group glocks (Andreas Gruenbacher) [1442151] - gfs2: Wake up when sd_glock_disposal becomes zero (Andreas Gruenbacher) [1442151] - gfs2: Split up gfs2_meta_sync into inode and rgrp versions (Andreas Gruenbacher) [1442151] - gfs2: Don't ignore inode write errors during inode_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Ignore subsequent errors after withdraw in rgrp_go_sync (Andreas Gruenbacher) [1442151] - gfs2: Eliminate gl_vm (Andreas Gruenbacher) [1442151] - gfs2: Fix comments to glock_hash_walk (Andreas Gruenbacher) [1442151] - gfs2: eliminate GLF_QUEUED flag in favor of list_empty(gl_holders) (Andreas Gruenbacher) [1442151] - gfs2: Fix invalid block size message (Andreas Gruenbacher) [1442151] - gfs2: add validation checks for size of superblock (Andreas Gruenbacher) [1442151] - gfs2: use-after-free in sysfs deregistration (Andreas Gruenbacher) [1442151] - Revert "GFS2: Prevent delete work from occurring on glocks used for create" (Andreas Gruenbacher) [1442151] - gfs2: Don't skip dlm unlock if glock has an lvb (Andreas Gruenbacher) [1442151] - gfs2: Lock imbalance on error path in gfs2_recover_one (Andreas Gruenbacher) [1442151] - gfs2: keep bios separate for each journal (Bob Peterson) [1442151] - gfs2: change from write to read lock for sd_log_flush_lock in journal replay (Bob Peterson) [1442151] - gfs2: don't lock sd_log_flush_lock in try_rgrp_unlink (Bob Peterson) [1442151] - gfs2: fix glock confusion in function signal_our_withdraw (Bob Peterson) [1442151] - gfs2: Don't write log headers after file system withdraw (Andreas Gruenbacher) [1442151] - gfs2: make gfs2_log_write_page static (Andreas Gruenbacher) [1442151] - gfs2: fix possible reference leak in gfs2_check_blk_type (Andreas Gruenbacher) [1442151] - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump (Andreas Gruenbacher) [1442151] - gfs2: remove unused LBIT macros (Andreas Gruenbacher) [1925121] - gfs2: add missing log_blocks trace points in gfs2_write_revokes (Andreas Gruenbacher) [1925121] - gfs2: print details on transactions that aren't properly ended (Andreas Gruenbacher) [1925121] - gfs2: fix use-after-free on transaction ail lists (Andreas Gruenbacher) [1925121] - gfs2: new slab for transactions (Andreas Gruenbacher) [1925121] - gfs2: initialize transaction tr_ailX_lists earlier (Andreas Gruenbacher) [1925121] - gfs2: eliminate ssize parameter from gfs2_struct2blk (Andreas Gruenbacher) [1925121] - gfs2: Fix error path kobject memory leak (Andreas Gruenbacher) [1925121] - gfs2: Rename gfs2_trans_{add_unrevoke => remove_revoke} (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary extern declarations (Andreas Gruenbacher) [1925121] - gfs2: Fix sign extension bug in gfs2_update_stats (Andreas Gruenbacher) [1925121] - gfs2: Fix an incorrect gfs2_assert() (Bob Peterson) [1925121] - gfs2: Remove vestigial bd_ops (Andreas Gruenbacher) [1925121] - gfs2: Fix the gfs2_invalidatepage description (Andreas Gruenbacher) [1925121] - gfs2: Clean up gfs2_is_{ordered,writeback} (Andreas Gruenbacher) [1925121] - gfs2: Pass resource group to rgblk_free (Andreas Gruenbacher) [1925121] - gfs2: Remove unnecessary gfs2_rlist_alloc parameter (Andreas Gruenbacher) [1925121] - gfs2: Fix some minor typos (Andreas Gruenbacher) [1925121] - gfs2: Remove unused RGRP_RSRV_MINBYTES definition (Andreas Gruenbacher) [1925121] - gfs2: Move rs_{sizehint, rgd_gh} fields into the inode (Andreas Gruenbacher) [1925121] - gfs2: Clean up out-of-bounds check in gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs2: Always check the result of gfs2_rbm_from_block (Andreas Gruenbacher) [1925121] - gfs: no need to check return value of debugfs_create functions (Andreas Gruenbacher) [1925121] - serial_core: switch to ->[sg]et_serial() (Artem Savkov) [1952415]- tipc: fix sleeping in tipc accept routine (Xin Long) [1986549] - tipc: fix implicit-connect for SYN+ (Xin Long) [1986549] - net: tipc: fix FB_MTU eat two pages (Xin Long) [1986549] - tipc: Return the correct errno code (Xin Long) [1986549] - net/mlx5: Fix checksum issue of VXLAN and IPsec crypto offload (Alaa Hleihel) [1979901] - net/mlx5: Optimize mlx5e_feature_checks for non IPsec packet (Alaa Hleihel) [1979901] - bpf, selftests: Fold test_current_pid_tgid_new_ns into test_progs. (Jiri Olsa) [1869447] - libbpf: Support BTF_KIND_FLOAT during type compatibility checks in CO-RE (Jiri Olsa) [1984486] - bpf: Generate BTF_KIND_FLOAT when linking vmlinux (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to btf_dump_test_case_syntax (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to test_core_reloc_size (Jiri Olsa) [1984486] - bpf: Document BTF_KIND_FLOAT in btf.rst (Jiri Olsa) [1984486] - selftests/bpf: Add BTF_KIND_FLOAT to the existing deduplication tests (Jiri Olsa) [1984486] - selftest/bpf: Add BTF_KIND_FLOAT tests (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - selftests/bpf: Use the 25th bit in the "invalid BTF_INFO" test (Jiri Olsa) [1984486] - tools/bpftool: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - libbpf: Add BTF_KIND_FLOAT support (Jiri Olsa) [1984486] - bpf: Add BTF_KIND_FLOAT to uapi (Jiri Olsa) [1984486] - libbpf: Add explicit padding to btf_dump_emit_type_decl_opts (Jiri Olsa) [1984486] - selftests/bpf: Fix test_attach_probe for powerpc uprobes (Jiri Olsa) [1931531] - selftests/bpf: Mask bpf_csum_diff() return value to 16 bits in test_verifier (Jiri Olsa) [1942513] - openvswitch: add trace points (Aaron Conole) [1979680] - vxlan: add missing rcu_read_lock() in neigh_reduce() (Guillaume Nault) [1987310] - net: ip6_tunnel: Unregister catch-all devices (Guillaume Nault) [1987310] - net: sit: Unregister catch-all devices (Guillaume Nault) [1987310] - cpuidle: pseries: Do not cap the CEDE0 latency in fixup_cede0_latency() (Diego Domingos) [1952809] - cpuidle: pseries: Fixup CEDE0 latency only for POWER10 onwards (Diego Domingos) [1952809] - mm/swap: fix for "mm: workingset: age nonresident information alongside anonymous pages" (Rafael Aquini) [1984173] - mm/thp: remap_page() is only needed on anonymous THP (Rafael Aquini) [1984173] - mm/compaction: fix 'limit' in fast_isolate_freepages (Rafael Aquini) [1984173] - mm/huge_memory.c: don't discard hugepage if other processes are mapping it (Rafael Aquini) [1984173] - slub: restore slub_debug=- behavior (Rafael Aquini) [1984173] - mm/gup: fix try_grab_compound_head() race with split_huge_page() (Rafael Aquini) [1984173] - mm, futex: fix shared futex pgoff on shmem huge page (Rafael Aquini) [1984173] - x86/mm: Avoid truncating memblocks for SGX memory (Rafael Aquini) [1984173] - mm/thp: fix vma_address() if virtual address below file offset (Rafael Aquini) [1984173] - mm, thp: use head page in __migration_entry_wait() (Rafael Aquini) [1984173] - mm/slub.c: include swab.h (Rafael Aquini) [1984173] - mm/memory-failure: make sure wait for page writeback in memory_failure (Rafael Aquini) [1984173] - mm/slub: fix redzoning for small allocations (Rafael Aquini) [1984173] - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY (Rafael Aquini) [1984173] - mm/page_alloc: fix counting of free pages after take off from buddy (Rafael Aquini) [1984173] - userfaultfd: release page in error path to avoid BUG_ON (Rafael Aquini) [1984173] - ksm: fix potential missing rmap_item for stable_node (Rafael Aquini) [1984173] - mm/migrate.c: fix potential indeterminate pte entry in migrate_vma_insert_page() (Rafael Aquini) [1984173] - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts() (Rafael Aquini) [1984173] - khugepaged: fix wrong result value for trace_mm_collapse_huge_page_isolate() (Rafael Aquini) [1984173] - mm/memory-failure: unnecessary amount of unmapping (Rafael Aquini) [1984173] - mm: page_alloc: ignore init_on_free=1 for debug_pagealloc=1 (Rafael Aquini) [1984173] - mm/sparse: add the missing sparse_buffer_fini() in error branch (Rafael Aquini) [1984173] - mm: memcontrol: fix cpuhotplug statistics flushing (Rafael Aquini) [1984173] - x86/mem_encrypt: Correct physical address calculation in __set_clr_pte_enc() (Rafael Aquini) [1984173] - zsmalloc: account the number of compacted pages correctly (Rafael Aquini) [1984173] - mm/compaction: fix misbehaviors of fast_find_migrateblock() (Rafael Aquini) [1984173] - hugetlb: fix update_and_free_page contig page struct assumption (Rafael Aquini) [1984173] - mm/hugetlb: fix potential double free in hugetlb_register_node() error path (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/memory.c: fix potential pte_unmap_unlock pte error (Rafael Aquini) [1984173] - mm/hugetlb: fix potential missing huge page size info (Rafael Aquini) [1984173] - x86/mm: Fix leak of pmd ptlock (Rafael Aquini) [1984173] - mm/zswap: fix passing zero to 'PTR_ERR' warning (Rafael Aquini) [1984173] - mm/page_isolation: do not isolate the max order page (Rafael Aquini) [1984173] - mm,memory_failure: always pin the page in madvise_inject_error (Rafael Aquini) [1984173] - mm/page_alloc: speed up the iteration of max_order (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix definition of PMD_FLAGS_DEC_WP (Rafael Aquini) [1984173] - x86/mm/ident_map: Check for errors from ident_pud_init() (Rafael Aquini) [1984173] - mm, oom_adj: don't loop through tasks in __set_oom_adj when not necessary (Rafael Aquini) [1984173] - mm/page_alloc.c: fix freeing non-compound pages (Rafael Aquini) [1984173] - mm: khugepaged: recalculate min_free_kbytes after memory hotplug as expected by khugepaged (Rafael Aquini) [1984173] - percpu: fix first chunk size calculation for populated bitmap (Rafael Aquini) [1984173] - x86, fakenuma: Fix invalid starting node ID (Rafael Aquini) [1984173] - mm: include CMA pages in lowmem_reserve at boot (Rafael Aquini) [1984173] - mm/rodata_test.c: fix missing function declaration (Rafael Aquini) [1984173] - mm/page_counter: fix various data races at memsw (Rafael Aquini) [1984173] - khugepaged: retract_page_tables() remember to test exit (Rafael Aquini) [1984173] - mm/page_counter.c: fix protection usage propagation (Rafael Aquini) [1984173] - x86/mm/numa: Remove uninitialized_var() usage (Rafael Aquini) [1984173] - shmem: fix possible deadlocks on shmlock_user_lock (Rafael Aquini) [1984173] - mm: swap: use smp_mb__after_atomic() to order LRU bit set (Rafael Aquini) [1984173] - cgroup: memcg: net: do not associate sock with unrelated cgroup (Rafael Aquini) [1984173] - mm: fix gup_pud_range (Rafael Aquini) [1984173] - x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd (Rafael Aquini) [1984173] - mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD alignment (Rafael Aquini) [1984173] - mm: Implement no-MMU variant of vmalloc_user_node_flags (Rafael Aquini) [1984173] - usercopy: Avoid HIGHMEM pfn warning (Rafael Aquini) [1984173] - x86/mm: Don't exceed the valid physical address space (Rafael Aquini) [1984173] - x86/mm/mem_encrypt: Fix erroneous sizeof() (Rafael Aquini) [1984173] - s390/mm: fix addressing exception after suspend/resume (Rafael Aquini) [1984173] - blk-mq: fix use-after-free in blk_mq_exit_sched (Ming Lei) [1969726] - nvmet: use new ana_log_size instead the old one (Maurizio Lombardi) [1949777] - nvme-multipath: fix double initialization of ANA state (Maurizio Lombardi) [1949777] - configs: enable CONFIG_LEDS_BRIGHTNESS_HW_CHANGED (Benjamin Tissoires) [1922973]- Revert "xfs: enable new inode btree counters feature" (Bill O'Donnell) [1976969] - Revert "xfs: enable big timestamps" (Bill O'Donnell) [1976969] - Revert "xfs: remove kmem_realloc()" (Bill O'Donnell) [1976969] - xfs: prevent metadata files from being inactivated (Bill O'Donnell) [1976969] - quota: widen timestamps for the fs_disk_quota structure (Bill O'Donnell) [1976969] - cifs: fix fallocate when trying to allocate a hole. (Ronnie Sahlberg) [1866684] - cifs: only write 64kb at a time when fallocating a small region of a file (Ronnie Sahlberg) [1866684] - cifs: improve fallocate emulation (Ronnie Sahlberg) [1866684] - cifs: Do not use the original cruid when following DFS links for multiuser mounts (Ronnie Sahlberg) [1812436] - cifs: ignore relatime in smb3_fs_context_parse_monolithic() (Ronnie Sahlberg) [1812436] - cifs: fix regression when mounting shares with prefix paths (Ronnie Sahlberg) [1812436] - cifs: fix leak in cifs_smb3_do_mount() ctx (Ronnie Sahlberg) [1812436] - cifs: add fs_context param to parsing helpers (Ronnie Sahlberg) [1812436] - cifs: make fs_context error logging wrapper (Ronnie Sahlberg) [1812436] - cifs: warn and fail if trying to use rootfs without the config option (Ronnie Sahlberg) [1812436] - cifs: fix nodfs mount option (Ronnie Sahlberg) [1812436] - cifs: fix handling of escaped ',' in the password mount argument (Ronnie Sahlberg) [1812436] - cifs: Add new parameter "acregmax" for distinct file and directory metadata timeout (Ronnie Sahlberg) [1812436] - cifs: convert revalidate of directories to using directory metadata cache timeout (Ronnie Sahlberg) [1812436] - cifs: Add new mount parameter "acdirmax" to allow caching directory metadata (Ronnie Sahlberg) [1812436] - cifs: fix trivial typo (Ronnie Sahlberg) [1812436] - cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath. (Ronnie Sahlberg) [1812436] - cifs: In the new mount api we get the full devname as source= (Ronnie Sahlberg) [1812436] - cifs: do not disable noperm if multiuser mount option is not provided (Ronnie Sahlberg) [1812436] - cifs: fix dfs-links (Ronnie Sahlberg) [1812436] - cifs: fix dfs domain referrals (Ronnie Sahlberg) [1812436] - cifs: returning mount parm processing errors correctly (Ronnie Sahlberg) [1812436] - cifs: fix mounts to subdirectories of target (Ronnie Sahlberg) [1812436] - cifs: ignore auto and noauto options if given (Ronnie Sahlberg) [1812436] - cifs: connect: style: Simplify bool comparison (Ronnie Sahlberg) [1812436] - fs: cifs: remove unneeded variable in smb3_fs_context_dup (Ronnie Sahlberg) [1812436] - cifs: Fix support for remount when not changing rsize/wsize (Ronnie Sahlberg) [1812436] - cifs: handle "guest" mount parameter (Ronnie Sahlberg) [1812436] - cifs: correct four aliased mount parms to allow use of previous names (Ronnie Sahlberg) [1812436] - cifs: fix use after free in cifs_smb3_do_mount() (Ronnie Sahlberg) [1812436] - cifs: fix rsize/wsize to be negotiated values (Ronnie Sahlberg) [1812436] - cifs: update super_operations to show_devname (Ronnie Sahlberg) [1812436] - cifs: fix uninitialized variable in smb3_fs_context_parse_param (Ronnie Sahlberg) [1812436] - cifs: update mnt_cifs_flags during reconfigure (Ronnie Sahlberg) [1812436] - cifs: move update of flags into a separate function (Ronnie Sahlberg) [1812436] - cifs: remove ctx argument from cifs_setup_cifs_sb (Ronnie Sahlberg) [1812436] - cifs: do not allow changing posix_paths during remount (Ronnie Sahlberg) [1812436] - cifs: uncomplicate printing the iocharset parameter (Ronnie Sahlberg) [1812436] - cifs: don't create a temp nls in cifs_setup_ipc (Ronnie Sahlberg) [1812436] - cifs: simplify handling of cifs_sb/ctx->local_nls (Ronnie Sahlberg) [1812436] - cifs: we do not allow changing username/password/unc/... during remount (Ronnie Sahlberg) [1812436] - cifs: add initial reconfigure support (Ronnie Sahlberg) [1812436] - cifs: move [brw]size from cifs_sb to cifs_sb->ctx (Ronnie Sahlberg) [1812436] - cifs: move cifs_cleanup_volume_info[_content] to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: Add missing sentinel to smb3_fs_parameters (Ronnie Sahlberg) [1812436] - cifs: remove actimeo from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove [gu]id/backup[gu]id/file_mode/dir_mode from cifs_sb (Ronnie Sahlberg) [1812436] - cifs: minor kernel style fixes for comments (Ronnie Sahlberg) [1812436] - linux/parser.h: add include guards (Ronnie Sahlberg) [1812436] - cifs: Make extract_sharename function public (Ronnie Sahlberg) [1812436] - cifs: Make extract_hostname function public (Ronnie Sahlberg) [1812436] - cifs: get rid of cifs_sb->mountdata (Ronnie Sahlberg) [1812436] - cifs: add an smb3_fs_context to cifs_sb (Ronnie Sahlberg) [1812436] - cifs: remove the devname argument to cifs_compose_mount_options (Ronnie Sahlberg) [1812436] - cifs: switch to new mount api (Ronnie Sahlberg) [1812436] - cifs: move cifs_parse_devname to fs_context.c (Ronnie Sahlberg) [1812436] - cifs: move the enum for cifs parameters into fs_context.h (Ronnie Sahlberg) [1812436] - cifs: rename dup_vol to smb3_fs_context_dup and move it into fs_context.c (Ronnie Sahlberg) [1812436] - cifs: rename smb_vol as smb3_fs_context and move it to fs_context.h (Ronnie Sahlberg) [1812436] - cifs: Fix fall-through warnings for Clang (Ronnie Sahlberg) [1812436] - cifs: refactor create_sd_buf() and and avoid corrupting the buffer (Ronnie Sahlberg) [1812436] - scsi: lpfc: Fix failure to transmit ABTS on FC link (Dick Kennedy) [1964670] - scsi: lpfc: Update lpfc version to 12.8.0.10 (Dick Kennedy) [1964670] - scsi: lpfc: Reregister FPIN types if ELS_RDF is received from fabric controller (Dick Kennedy) [1964670] - scsi: lpfc: Add a option to enable interlocked ABTS before job completion (Dick Kennedy) [1964670] - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the SGLs (Dick Kennedy) [1964670] - scsi: lpfc: Ignore GID-FT response that may be received after a link flip (Dick Kennedy) [1964670] - scsi: lpfc: Fix node handling for Fabric Controller and Domain Controller (Dick Kennedy) [1964670] - scsi: lpfc: Fix Node recovery when driver is handling simultaneous PLOGIs (Dick Kennedy) [1964670] - scsi: lpfc: Add ndlp kref accounting for resume RPI path (Dick Kennedy) [1964670] - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology (Dick Kennedy) [1964670] - scsi: lpfc: Fix non-optimized ERSP handling (Dick Kennedy) [1964670] - scsi: lpfc: Fix unreleased RPIs when NPIV ports are created (Dick Kennedy) [1964670] - scsi: lpfc: Remove redundant assignment to pointer temp_hdr (Dick Kennedy) [1964670] - Documentation: add more details in tipc.rst (Xin Long) [1872308] - net/tipc: add TIPC chapter to networking Documentation (Xin Long) [1872308] - scsi: qla2xxx: Reserve extra IRQ vectors (Nilesh Javali) [1964834] - tracing/hwlat: Honor the tracing_cpumask (Jerome Marchand) [1920595] - tracing/hwlat: Drop the duplicate assignment in start_kthread() (Jerome Marchand) [1920595] - sfc: add logs explaining XDP_TX/REDIRECT is not available (Íñigo Huguet) [1976756] - sfc: ensure correct number of XDP queues (Íñigo Huguet) [1976756] - sfc: fix lack of XDP TX queues - error XDP TX failed (-22) (Íñigo Huguet) [1976756] - sfc: Remove rcu_read_lock() around XDP program invocation (Íñigo Huguet) [1976756] - sfc: use DEVICE_ATTR_*() macro (Íñigo Huguet) [1976756] - sfc: farch: fix compile warning in efx_farch_dimension_resources() (Íñigo Huguet) [1976756] - sfc: don't use netif_info et al before net_device is registered (Íñigo Huguet) [1976756] - net: stmmac: Do not enable RX FIFO overflow interrupts (Mark Salter) [1905243] - net: stmmac: Clear receive all(RA) bit when promiscuous mode is off (Mark Salter) [1905243] - net: stmmac: cleared __FPE_REMOVING bit in stmmac_fpe_start_wq() (Mark Salter) [1905243] - stmmac: intel: Enable HW descriptor prefetch by default (Mark Salter) [1905243] - net: stmmac: Add HW descriptor prefetch setting for DWMAC Core 5.20 onwards (Mark Salter) [1905243] - net: stmmac: fix TSO and TBS feature enabling during driver open (Mark Salter) [1905243] - stmmac: intel: set TSO/TBS TX Queues default settings (Mark Salter) [1905243] - stmmac: intel: unlock on error path in intel_crosststamp() (Mark Salter) [1905243] - net: stmmac: use __napi_schedule() for PREEMPT_RT (Mark Salter) [1905243] - stmmac: intel: Enable SERDES PHY rx clk for PSE (Mark Salter) [1905243] - stmmac: intel: Drop duplicate ID in the list of PCI device IDs (Mark Salter) [1905243] - stmmac: intel: add cross time-stamping freq difference adjustment (Mark Salter) [1905243] - net: stmmac: Add support for external trigger timestamping (Mark Salter) [1905243] - net: stmmac: fix dma physical address of descriptor when display ring (Mark Salter) [1905243] - net: stmmac: fix wrongly set buffer2 valid when sph unsupport (Mark Salter) [1905243] - net: stmmac: arrange Tx tail pointer update to stmmac_flush_tx_descriptors (Mark Salter) [1905243] - net: stmmac: make SPH enable/disable to be configurable (Mark Salter) [1905243] - net: stmmac: set IRQ affinity hint for multi MSI vectors (Mark Salter) [1905243] - net: stmmac: remove unnecessary pci_enable_msi() call (Mark Salter) [1905243] - stmmac: intel: use managed PCI function on probe and resume (Mark Salter) [1905243] - net: stmmac: enable MTL ECC Error Address Status Over-ride by default (Mark Salter) [1905243] - net: ethernet: stmicro: Remove duplicate struct declaration (Mark Salter) [1905243] - net: stmmac: fix missing unlock on error in stmmac_suspend() (Mark Salter) [1905243] - net: stmmac: Fix kernel panic due to NULL pointer dereference of fpe_cfg (Mark Salter) [1905243] - net: stmmac: use interrupt mode INTM=1 for multi-MSI (Mark Salter) [1905243] - stmmac: intel: add support for multi-vector msi and msi-x (Mark Salter) [1905243] - net: stmmac: introduce MSI Interrupt routines for mac, safety, RX & TX (Mark Salter) [1905243] - net: stmmac: make stmmac_interrupt() function more friendly to MSI (Mark Salter) [1905243] - net: stmmac: introduce DMA interrupt status masking per traffic direction (Mark Salter) [1905243] - net: phy: marvell10g: Add PHY loopback support (Mark Salter) [1905243] - net: phy: add genphy_c45_loopback (Mark Salter) [1905243] - net: phylink: Fix phylink_err() function name error in phylink_major_config (Mark Salter) [1905243] - net: stmmac: support FPE link partner hand-shaking procedure (Mark Salter) [1905243] - net: stmmac: Add hardware supported cross-timestamp (Mark Salter) [1905243] - net: stmmac: platform: fix build error with !CONFIG_PM_SLEEP (Mark Salter) [1905243] - stmmac: intel: Add PSE and PCH PTP clock source selection (Mark Salter) [1905243] - net: stmmac: Add EST errors into ethtool statistic (Mark Salter) [1905243] - net: stmmac: EST interrupts handling and error reporting (Mark Salter) [1905243] - net: stmmac: add RX frame steering based on VLAN priority in tc flower (Mark Salter) [1905243] - net: stmmac: restructure tc implementation for RX VLAN Priority steering (Mark Salter) [1905243] - net: stmmac: add per-queue TX & RX coalesce ethtool support (Mark Salter) [1905243] - net: stmmac: Use hrtimer for TX coalescing (Mark Salter) [1905243] - net: stmmac: add timestamp correction to rid CDC sync error (Mark Salter) [1905243] - net: stmmac: add platform level clocks management (Mark Salter) [1905243] - net: stmmac: add clocks management for gmac driver (Mark Salter) [1905243] - stmmac: intel: add pcs-xpcs for Intel mGbE controller (Mark Salter) [1905243] - net: stmmac: ensure phydev is attached to phylink for C37 AN (Mark Salter) [1905243] - net: stmmac: make in-band AN mode parsing is supported for non-DT (Mark Salter) [1905243] - net: phylink: make phylink_parse_mode() support non-DT platform (Mark Salter) [1905243] - net: pcs: add C37 SGMII AN support for intel mGbE controller (Mark Salter) [1905243] - net: pcs: rearrange C73 functions to prepare for C37 support later (Mark Salter) [1905243] - net: phy: leds: Deduplicate link LED trigger registration (Mark Salter) [1905243] - net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII (Mark Salter) [1905243] - net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10 (Mark Salter) [1905243] - net: stmmac: fix CBS idleslope and sendslope calculation (Mark Salter) [1905243] - net: stmmac: set TxQ mode back to DCB after disabling CBS (Mark Salter) [1905243] - net: stmmac: allow stmmac to probe for C45 PHY devices (Mark Salter) [1905243] - net: stmmac: Enable EEE HW LPI timer with auto SW/HW switching (Mark Salter) [1905243] - net: pcs-xpcs: depend on MDIO_BUS instead of selecting it (Mark Salter) [1905243] - net: pcs: Move XPCS into new PCS subdirectory (Mark Salter) [1905243] - net: stmmac: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Add XLGMII support (Mark Salter) [1905243] - net: phy: xpcs: Restart AutoNeg if outcome was invalid (Mark Salter) [1905243] - net: phy: xpcs: Set Link down if AutoNeg is enabled and did not finish (Mark Salter) [1905243] - net: phy: xpcs: Reset XPCS upon probe (Mark Salter) [1905243] - net: phy: xpcs: Return error when 10GKR link errors are found (Mark Salter) [1905243] - stmmac/intel: mark driver as tech preview (Mark Salter) [1905243] - redhat/configs: Add CONFIG_DWMAC_INTEL (Mark Salter) [1905243] - stmmac: intel: Fixes clock registration error seen for multiple interfaces (Mark Salter) [1905243] - stmmac: intel: Fix mdio bus registration issue for TGL-H/ADL-S (Mark Salter) [1905243] - net: stmmac: Add PCI bus info to ethtool driver query output (Mark Salter) [1905243] - stmmac: intel: Add ADL-S 1Gbps PCI IDs (Mark Salter) [1905243] - stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA addressing (Mark Salter) [1905243] - stmmac: intel: Add PCI IDs for TGL-H platform (Mark Salter) [1905243] - stmmac: intel: change all EHL/TGL to auto detect phy addr (Mark Salter) [1905243] - net: stmmac: overwrite the dma_cap.addr64 according to HW design (Mark Salter) [1905243] - stmmac: intel: Fix kernel panic on pci probe (Mark Salter) [1905243] - stmmac: intel: Adding ref clock 1us tic for LPI cntr (Mark Salter) [1905243] - net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1905243] - net: stmmac: Fix clock handling on remove path (Mark Salter) [1905243] - stmmac: intel: Place object in the Makefile according to the order (Mark Salter) [1905243] - stmmac: intel: Fix indentation to put on one line affected code (Mark Salter) [1905243] - stmmac: intel: Eliminate useless conditions and variables (Mark Salter) [1905243] - stmmac: intel: Convert to use pci_alloc_irq_vectors() API (Mark Salter) [1905243] - stmmac: intel: Remove unnecessary loop for PCI BARs (Mark Salter) [1905243] - stmmac: intel: Fix clock handling on error and remove paths (Mark Salter) [1905243] - net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1905243] - net: stmmac: add EHL 2.5Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL PSE0 & PSE1 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: create dwmac-intel.c to contain all Intel platform (Mark Salter) [1905243] - net: stmmac: Get rid of custom STMMAC_DEVICE() macro (Mark Salter) [1905243] - net: stmmac: update pci platform data to use phy_interface (Mark Salter) [1905243] - net: stmmac: pci: Enable TBS on GMAC5 IPK PCI entry (Mark Salter) [1905243] - net: stmmac: pci: remove the duplicate code of set phy_mask (Mark Salter) [1905243] - PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Mark Salter) [1905243] - net: stmmac: pci: Add HAPS support using GMAC5 (Mark Salter) [1905243] - net: stmmac: setup higher frequency clk support for EHL & TGL (Mark Salter) [1905243] - net: stmmac: add EHL RGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add TGL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: add EHL SGMII 1Gbps PCI info and PCI ID (Mark Salter) [1905243] - net: stmmac: Make MDIO bus reset optional (Mark Salter) [1905243] - stmmac: pci: Use pci_dev_id() helper (Mark Salter) [1905243] - stmmac: pci: Fix typo in IOT2000 comment (Mark Salter) [1905243] - stmmac: pci: Adjust IOT2000 matching (Mark Salter) [1905243] - net: stmmac: Fix PCI module removal leak (Mark Salter) [1905243] - net: stmmac: mark PM functions as __maybe_unused (Mark Salter) [1905243] - ibmveth: Set CHECKSUM_PARTIAL if NULL TCP CSUM. (Diego Domingos) [1939996] - IB/core: Add missing pin_user_pages*() usage (Waiman Long) [1972078] - mm/gup/writeback: Fix incorrect inaccessible pages handling (Waiman Long) [1972078] - netfilter: nf_tables: bogus EBUSY when deleting flowtable after flush (Phil Sutter) [1983245] - ipv4: Fix device used for dst_alloc with local routes (Antoine Tenart) [1976789] - vrf: fix a comment about loopback device (Antoine Tenart) [1976789] - net: vrf: Fix operation not supported when set vrf mac (Antoine Tenart) [1976789] - vrf: prevent adding upper devices (Antoine Tenart) [1976789] - vrf: fix maximum MTU (Antoine Tenart) [1976789] - net: vrf: Fix ping failed when vrf mtu is set to 0 (Antoine Tenart) [1976789] - net: vrf: remove MTU limits for vrf device (Antoine Tenart) [1976789]- block: fix discard request merge (Ming Lei) [1970316] - blk-mq: update hctx->dispatch_busy in case of real scheduler (Ming Lei) [1976679] - block: Do not pull requests from the scheduler when we cannot dispatch them (Ming Lei) [1976679] - powerpc/pseries/mobility: handle premature return from H_JOIN (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use struct for shared state (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: refactor node lookup during DT update (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: remove rtas_ibm_suspend_me_unsafe() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: dispatch partition migration requests to pseries (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: retry partition suspend after error (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: signal suspend cancellation to platform (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use stop_machine for join/suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: extract VASI session polling logic (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: use rtas_activate_firmware() on resume (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: error message improvements (Desnes A. Nunes do Rosario) [1979798] - powerpc/hvcall: add token and codes for H_VASI_SIGNAL (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_activate_firmware() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: add rtas_ibm_suspend_me() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: rtas_ibm_suspend_me -> rtas_ibm_suspend_me_unsafe (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: complete ibm,suspend-me status codes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Add pr_debug() for device tree changes (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries/mobility: Set pr_fmt() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove obsolete memory hotplug DT notifier code (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove dlpar_cpu_readd() (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove memory "re-add" implementation (Desnes A. Nunes do Rosario) [1979798] - powerpc/pseries: remove prrn special case from DT update path (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove arch_update_cpu_topology (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove prrn_is_enabled() (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtasd: simplify handle_rtas_event(), emit message on events (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove start/stop_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove timed_topology_update() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Handle extra hcall_vphn error cases (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: Suppress "VPHN is not supported" messages (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: stub out numa_update_cpu_topology() (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove vphn_enabled and prrn_enabled internal flags (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology workqueue code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology timer code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: make vphn_enabled, prrn_enabled flags const (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove unreachable topology update code (Desnes A. Nunes do Rosario) [1979798] - powerpc/numa: remove ability to enable topology updates (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: don't online CPUs for partition suspend (Desnes A. Nunes do Rosario) [1979798] - powerpc/rtas: Unexport rtas_online_cpus_mask, rtas_offline_cpus_mask (Desnes A. Nunes do Rosario) [1979798] - mm/page_alloc: bail out on fatal signal during reclaim/compaction retry attempt (Aaron Tomlin) [1919765] - RHEL: Revert "powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled" (Paolo Bonzini) [1956950] - KVM: selftests: smm_test: Test SMM enter from L2 (Paolo Bonzini) [1956950] - KVM: nSVM: Restore nested control upon leaving SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Fix L1 state corruption upon return from SMM (Paolo Bonzini) [1956950] - KVM: nSVM: Introduce svm_copy_vmrun_state() (Paolo Bonzini) [1956950] - KVM: nSVM: Check that VM_HSAVE_PA MSR was set before VMRUN (Paolo Bonzini) [1956950] - KVM: nVMX: nSVM: 'nested_run' should count guest-entry attempts that make it to guest code (Paolo Bonzini) [1956950] - KVM: nSVM: Check the value written to MSR_VM_HSAVE_PA (Paolo Bonzini) [1956950] - KVM: SVM: Fix sev_pin_memory() error checks in SEV migration utilities (Paolo Bonzini) [1956950] - KVM: SVM: Return -EFAULT if copy_to_user() for SEV mig packet header fails (Paolo Bonzini) [1956950] - KVM: SVM: add module param to control the #SMI interception (Paolo Bonzini) [1956950] - KVM: SVM: remove INIT intercept handler (Paolo Bonzini) [1956950] - KVM: SVM: #SMI interception must not skip the instruction (Paolo Bonzini) [1956950] - KVM: VMX: Remove vmx_msr_index from vmx.h (Paolo Bonzini) [1956950] - KVM: X86: Disable hardware breakpoints unconditionally before kvm_x86->run() (Paolo Bonzini) [1956950] - KVM: x86/pmu: Clear anythread deprecated bit when 0xa leaf is unsupported on the SVM (Paolo Bonzini) [1956950] - KVM: mmio: Fix use-after-free Read in kvm_vm_ioctl_unregister_coalesced_mmio (Paolo Bonzini) [1956950] - KVM: SVM: Revert clearing of C-bit on GPA in #NPF handler (Paolo Bonzini) [1956950] - KVM: x86/mmu: Do not apply HPA (memory encryption) mask to GPAs (Paolo Bonzini) [1956950] - KVM: x86: Use kernel's x86_phys_bits to handle reduced MAXPHYADDR (Paolo Bonzini) [1956950] - KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is enabled (Paolo Bonzini) [1956950] - KVM: selftests: do not require 64GB in set_memory_region_test (Paolo Bonzini) [1956950] - KVM: selftests: Fix mapping length truncation in m{,un}map() (Paolo Bonzini) [1956950] - KVM: x86: Force all MMUs to reinitialize if guest CPUID is modified (Paolo Bonzini) [1956950] - Revert "KVM: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack" (Paolo Bonzini) [1956950] - KVM: x86/mmu: Use MMU's role to detect CR4.SMEP value in nested NPT walk (Paolo Bonzini) [1956950] - KVM: x86: Properly reset MMU context at vCPU RESET/INIT (Paolo Bonzini) [1956950] - KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow MMUs (Paolo Bonzini) [1956950] - KVM: x86/mmu: Remove broken WARN that fires on 32-bit KVM w/ nested EPT (Paolo Bonzini) [1956950] - KVM: nVMX: Handle split-lock #AC exceptions that happen in L2 (Paolo Bonzini) [1956950] - KVM: x86/mmu: Calculate and check "full" mmu_role for nested MMU (Paolo Bonzini) [1956950] - KVM: X86: Fix x86_emulator slab cache leak (Paolo Bonzini) [1956950] - KVM: SVM: Call SEV Guest Decommission if ASID binding fails (Paolo Bonzini) [1956950] - KVM: x86: Immediately reset the MMU context when the SMM flag is cleared (Paolo Bonzini) [1956950] - KVM: x86: Fix fall-through warnings for Clang (Paolo Bonzini) [1956950] - KVM: SVM: fix doc warnings (Paolo Bonzini) [1956950] - kvm: LAPIC: Restore guard to prevent illegal APIC register access (Paolo Bonzini) [1956950] - kvm: fix previous commit for 32-bit builds (Paolo Bonzini) [1956950] - kvm: avoid speculation-based attacks from out-of-range memslot accesses (Paolo Bonzini) [1956950] - KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint message (Paolo Bonzini) [1956950] - KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior (Paolo Bonzini) [1956950] - KVM: X86: MMU: Use the correct inherited permissions to get shadow page (Paolo Bonzini) [1956950] - KVM: LAPIC: Write 0 to TMICT should also cancel vmx-preemption timer (Paolo Bonzini) [1956950] - KVM: SVM: Fix SEV SEND_START session length & SEND_UPDATE_DATA query length after commit 238eca821cee (Paolo Bonzini) [1956950] - KVM: X86: Kill off ctxt->ud (Paolo Bonzini) [1956950] - KVM: X86: Fix warning caused by stale emulation context (Paolo Bonzini) [1956950] - KVM: X86: Use kvm_get_linear_rip() in single-step and #DB/#BP interception (Paolo Bonzini) [1956950] - KVM: x86/mmu: Fix comment mentioning skip_4k (Paolo Bonzini) [1956950] - KVM: VMX: update vcpu posted-interrupt descriptor when assigning device (Paolo Bonzini) [1956950] - KVM: rename KVM_REQ_PENDING_TIMER to KVM_REQ_UNBLOCK (Paolo Bonzini) [1956950] - KVM: x86: add start_assignment hook to kvm_x86_ops (Paolo Bonzini) [1956950] - KVM: LAPIC: Narrow the timer latency between wait_lapic_expire and world switch (Paolo Bonzini) [1956950] - KVM: X86: Fix vCPU preempted state from guest's point of view (Paolo Bonzini) [1956950] - KVM: X86: Bail out of direct yield in case of under-committed scenarios (Paolo Bonzini) [1956950] - KVM: SVM: make the avic parameter a bool (Paolo Bonzini) [1956950] - KVM: VMX: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Drop unneeded CONFIG_X86_LOCAL_APIC check (Paolo Bonzini) [1956950] - KVM: SVM: Move GHCB unmapping to fix RCU warning (Paolo Bonzini) [1956950] - KVM: SVM: Invert user pointer casting in SEV {en,de}crypt helpers (Paolo Bonzini) [1956950] - kvm: Cap halt polling at kvm->max_halt_poll_ns (Paolo Bonzini) [1956950] - KVM: x86: Prevent deadlock against tk_core.seq (Paolo Bonzini) [1956950] - KVM: x86: Cancel pvclock_gtod_work on module removal (Paolo Bonzini) [1956950] - KVM: x86: Prevent KVM SVM from loading on kernels with 5-level paging (Paolo Bonzini) [1956950] - KVM: SVM: Probe and load MSR_TSC_AUX regardless of RDTSCP support in host (Paolo Bonzini) [1956950] - KVM: VMX: Disable preemption when probing user return MSRs (Paolo Bonzini) [1956950] - KVM: x86: Move RDPID emulation intercept to its own enum (Paolo Bonzini) [1956950] - KVM: SVM: Inject #UD on RDTSCP when it should be disabled in the guest (Paolo Bonzini) [1956950] - KVM: x86: Emulate RDPID only if RDTSCP is supported (Paolo Bonzini) [1956950] - KVM: VMX: Do not advertise RDPID if ENABLE_RDTSCP control is unsupported (Paolo Bonzini) [1956950] - KVM: nSVM: always restore the L1's GIF on migration (Paolo Bonzini) [1956950] - KVM: x86: Hoist input checks in kvm_add_msr_filter() (Paolo Bonzini) [1956950] - KVM: nVMX: Properly pad 'struct kvm_vmx_nested_state_hdr' (Paolo Bonzini) [1956950] - KVM/VMX: Invoke NMI non-IST entry instead of IST entry (Paolo Bonzini) [1956950] - KVM: x86: Fix potential fput on a null source_kvm_file (Paolo Bonzini) [1956950] - KVM: nSVM: leave the guest mode prior to loading a nested state (Paolo Bonzini) [1956950] - KVM: nSVM: fix few bugs in the vmcb02 caching logic (Paolo Bonzini) [1956950] - KVM: nSVM: fix a typo in svm_leave_nested (Paolo Bonzini) [1956950] - KVM: PPC: exit halt polling on need_resched() (Paolo Bonzini) [1956950] - kvm: exit halt polling on need_resched() as well (Paolo Bonzini) [1956950] - KVM: LAPIC: Accurately guarantee busy wait for timer to expire when using hv_timer (Paolo Bonzini) [1956950] - kvm/x86: Fix 'lpages' kvm stat for TDM MMU (Paolo Bonzini) [1956950] - KVM: x86/mmu: Avoid unnecessary page table allocation in kvm_tdp_mmu_map() (Paolo Bonzini) [1956950] - KVM: selftests: Speed up set_memory_region_test (Paolo Bonzini) [1956950] - selftests: kvm: Fix the check of return value (Paolo Bonzini) [1956950] - KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt() (Paolo Bonzini) [1956950] - KVM: SVM: Skip SEV cache flush if no ASIDs have been used (Paolo Bonzini) [1956950] - KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids() (Paolo Bonzini) [1956950] - KVM: SVM: Drop redundant svm_sev_enabled() helper (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV VMCB tracking allocation to sev.c (Paolo Bonzini) [1956950] - KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup() (Paolo Bonzini) [1956950] - KVM: SVM: Unconditionally invoke sev_hardware_teardown() (Paolo Bonzini) [1956950] - KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported) (Paolo Bonzini) [1956950] - KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y (Paolo Bonzini) [1956950] - KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables (Paolo Bonzini) [1956950] - KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features (Paolo Bonzini) [1956950] - KVM: SVM: Move SEV module params/variables to sev.c (Paolo Bonzini) [1956950] - svm/sev: Register SEV and SEV-ES ASIDs to the misc controller (Paolo Bonzini) [1956950] - KVM: SVM: Disable SEV/SEV-ES if NPT is disabled (Paolo Bonzini) [1956950] - KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails (Paolo Bonzini) [1956950] - KVM: SVM: Zero out the VMCB array used to track SEV ASID association (Paolo Bonzini) [1956950] - KVM: x86: Move reverse CPUID helpers to separate header file (Paolo Bonzini) [1956950] - KVM: x86: Rename GPR accessors to make mode-aware variants the defaults (Paolo Bonzini) [1956950] - KVM: SVM: Use default rAX size for INVLPGA emulation (Paolo Bonzini) [1956950] - KVM: x86/xen: Drop RAX[63:32] when processing hypercall (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate base/index GPR value on address calc in !64-bit (Paolo Bonzini) [1956950] - KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in !64-bit (Paolo Bonzini) [1956950] - KVM: VMX: Truncate GPR value for DR and CR reads in !64-bit mode (Paolo Bonzini) [1956950] - KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode (Paolo Bonzini) [1956950] - KVM: x86: Check CR3 GPA for validity regardless of vCPU mode (Paolo Bonzini) [1956950] - KVM: x86: Remove emulator's broken checks on CR0/CR3/CR4 loads (Paolo Bonzini) [1956950] - KVM: VMX: Intercept FS/GS_BASE MSR accesses for 32-bit KVM (Paolo Bonzini) [1956950] - KVM: SVM: Delay restoration of host MSR_TSC_AUX until return to userspace (Paolo Bonzini) [1956950] - KVM: SVM: Clear MSR_TSC_AUX[63:32] on write (Paolo Bonzini) [1956950] - KVM: SVM: Inject #GP on guest MSR_TSC_AUX accesses if RDTSCP unsupported (Paolo Bonzini) [1956950] - KVM: VMX: Invert the inlining of MSR interception helpers (Paolo Bonzini) [1956950] - KVM: X86: Fix failure to boost kernel lock holder candidate in SEV-ES guests (Paolo Bonzini) [1956950] - KVM: x86: Properly handle APF vs disabled LAPIC situation (Paolo Bonzini) [1956950] - KVM: VMX: use EPT_VIOLATION_GVA_TRANSLATED instead of 0x100 (Paolo Bonzini) [1956950] - KVM: x86: Support KVM VMs sharing SEV context (Paolo Bonzini) [1956950] - KVM: x86: Remove unused function declaration (Paolo Bonzini) [1956950] - KVM: x86/mmu: Drop trace_kvm_age_page() tracepoint (Paolo Bonzini) [1956950] - KVM: Move prototypes for MMU notifier callbacks to generic code (Paolo Bonzini) [1956950] - KVM: Pass MMU notifier range flags to kvm_unmap_hva_range() (Paolo Bonzini) [1956950] - KVM: x86/mmu: preserve pending TLB flush across calls to kvm_tdp_mmu_zap_sp (Paolo Bonzini) [1956950] - KVM: x86: disable interrupts while pvclock_gtod_sync_lock is taken (Paolo Bonzini) [1956950] - KVM: x86: reduce pvclock_gtod_sync_lock critical sections (Paolo Bonzini) [1956950] - kvm: x86: annotate RCU pointers (Paolo Bonzini) [1956950] - KVM: x86: remove misplaced comment on active_mmu_pages (Paolo Bonzini) [1956950] - x86/sev: Drop redundant and potentially misleading 'sev_enabled' (Paolo Bonzini) [1956950] - x86/cpufeatures: Assign dedicated feature word for CPUID_0x8000001F[EAX] (Paolo Bonzini) [1956950] - cgroup: Add misc cgroup controller (Paolo Bonzini) [1956950] - x86: Remove duplicate TSC DEADLINE MSR definitions (Paolo Bonzini) [1956950] - KVM: s390: allow facility 192 (vector-packed-decimal-enhancement facility 2) (Thomas Huth) [1977289] - KVM: s390: gen_facilities: allow facilities 165, 193, 194 and 196 (Thomas Huth) [1977289] - mpi3mr: mark as tech preview (Tomas Henzl) [1858804] - add the mpi3mr config (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix W=1 compilation warnings (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix warnings reported by smatch (Tomas Henzl) [1858804] - scsi: mpi3mr: Make some symbols static (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error return code in mpi3mr_init_ioc() (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix missing unlock on error (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix error handling in mpi3mr_setup_isr() (Tomas Henzl) [1858804] - scsi: mpi3mr: Delete unnecessary NULL check (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix a double free (Tomas Henzl) [1858804] - scsi: mpi3mr: Fix fall-through warning for Clang (Tomas Henzl) [1858804] - scsi: mpi3mr: Add event handling debug prints (Tomas Henzl) [1858804] - scsi: mpi3mr: Add EEDP DIF DIX support (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for DSN secure firmware check (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PM suspend and resume (Tomas Henzl) [1858804] - scsi: mpi3mr: Wait for pending I/O completions upon detection of VD I/O timeout (Tomas Henzl) [1858804] - scsi: mpi3mr: Print pending host I/Os for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Complete support for soft reset (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for threaded ISR (Tomas Henzl) [1858804] - scsi: mpi3mr: Hardware workaround for UNMAP commands to NVMe drives (Tomas Henzl) [1858804] - scsi: mpi3mr: Allow certain commands during pci-remove hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Add change queue depth support (Tomas Henzl) [1858804] - scsi: mpi3mr: Implement SCSI error handler hooks (Tomas Henzl) [1858804] - scsi: mpi3mr: Add bios_param SCSI host template hook (Tomas Henzl) [1858804] - scsi: mpi3mr: Print IOC info for debugging (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for timestamp sync with firmware (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for recovering controller (Tomas Henzl) [1858804] - scsi: mpi3mr: Additional event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for PCIe device event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for device add/remove event handling (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for internal watchdog thread (Tomas Henzl) [1858804] - scsi: mpi3mr: Add support for queue command processing (Tomas Henzl) [1858804] - scsi: mpi3mr: Create operational request and reply queue pair (Tomas Henzl) [1858804] - scsi: mpi3mr: Base driver code (Tomas Henzl) [1858804] - scsi: mpi3mr: Add mpi30 Rev-R headers and Kconfig (Tomas Henzl) [1858804] - e1000e: Fix prototype warning (Ken Cox) [1920290] - e1000e: Mark e1000e_pm_prepare() as __maybe_unused (Ken Cox) [1920290] - e1000e: Fix duplicate include guard (Ken Cox) [1920290] - e1000e: Remove the runtime suspend restriction on CNP+ (Ken Cox) [1920290] - e1000e: Leverage direct_complete to speed up s2ram (Ken Cox) [1920290] - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571 (Ken Cox) [1920290] - e1000e: add rtnl_lock() to e1000_reset_task (Ken Cox) [1920290] - e1000e: remove the redundant value assignment in e1000_update_nvm_checksum_spt (Ken Cox) [1920290] - e1000e: Export S0ix flags to ethtool (Ken Cox) [1920290] - e1000e: bump up timeout to wait when ME un-configures ULP mode (Ken Cox) [1920290] - e1000e: Only run S0ix flows if shutdown succeeded (Ken Cox) [1920290] - scsi: ipr: System crashes when seeing type 20 error (Desnes A. Nunes do Rosario) [1977532] - scsi: ipr: Use scnprintf() for avoiding potential buffer overflow (Desnes A. Nunes do Rosario) [1977532] - tipc: do not write skb_shinfo frags when doing decrytion (Xin Long) [1974627] - bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path (Jonathan Toppins) [1921449] - bnxt_en: Fix TQM fastpath ring backing store computation (Jonathan Toppins) [1921449] - bnxt_en: Rediscover PHY capabilities after firmware reset (Jonathan Toppins) [1921449] - bnxt_en: Fix context memory setup for 64K page size. (Jonathan Toppins) [1921449] - bnxt_en: Include new P5 HV definition in VF check. (Jonathan Toppins) [1921449] - bnxt_en: Add PCI IDs for Hyper-V VF devices. (Jonathan Toppins) [1921449] - bnxt_en: Fix RX consumer index logic in the error path. (Jonathan Toppins) [1921449] - bnxt_en: fix ternary sign extension bug in bnxt_show_temp() (Jonathan Toppins) [1921449] - bnxt_en: reliably allocate IRQ table on reset to avoid crash (Jonathan Toppins) [1921449] - bnxt_en: Fix race between firmware reset and driver remove. (Jonathan Toppins) [1921449] - bnxt_en: Improve logging of error recovery settings information. (Jonathan Toppins) [1921449] - bnxt_en: Reply to firmware's echo request async message. (Jonathan Toppins) [1921449] - bnxt_en: Initialize "context kind" field for context memory blocks. (Jonathan Toppins) [1921449] - bnxt_en: Add context memory initialization infrastructure. (Jonathan Toppins) [1921449] - bnxt_en: Implement faster recovery for firmware fatal error. (Jonathan Toppins) [1921449] - bnxt_en: selectively allocate context memories (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.2.16. (Jonathan Toppins) [1921449] - bnxt_en: Fix devlink info's stored fw.psid version format. (Jonathan Toppins) [1921449] - bnxt_en: reverse order of TX disable and carrier off (Jonathan Toppins) [1921449] - bnxt_en: Convert to use netif_level() helpers. (Jonathan Toppins) [1921449] - bnxt_en: Do not process completion entries after fatal condition detected. (Jonathan Toppins) [1921449] - bnxt_en: Consolidate firmware reset event logging. (Jonathan Toppins) [1921449] - bnxt_en: Improve firmware fatal error shutdown sequence. (Jonathan Toppins) [1921449] - bnxt_en: Modify bnxt_disable_int_sync() to be called more than once. (Jonathan Toppins) [1921449] - bnxt_en: Add a new BNXT_STATE_NAPI_DISABLED flag to keep track of NAPI state. (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_fw_reset_timeout() helper. (Jonathan Toppins) [1921449] - bnxt_en: Retry open if firmware is in reset. (Jonathan Toppins) [1921449] - bnxt_en: attempt to reinitialize after aborted reset (Jonathan Toppins) [1921449] - bnxt_en: log firmware debug notifications (Jonathan Toppins) [1921449] - bnxt_en: Add an upper bound for all firmware command timeouts. (Jonathan Toppins) [1921449] - bnxt_en: Move reading VPD info after successful handshake with fw. (Jonathan Toppins) [1921449] - bnxt_en: Retry sending the first message to firmware if it is under reset. (Jonathan Toppins) [1921449] - bnxt_en: handle CRASH_NO_MASTER during bnxt_open() (Jonathan Toppins) [1921449] - bnxt_en: Define macros for the various health register states. (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface to 1.10.2.11. (Jonathan Toppins) [1921449] - bnxt_en: Clear DEFRAG flag in firmware message when retry flashing. (Jonathan Toppins) [1921449] - bnxt_en: Improve stats context resource accounting with RDMA driver loaded. (Jonathan Toppins) [1921449] - bnxt_en: Use kzalloc for allocating only one thing (Jonathan Toppins) [1921449] - bnxt_en: Check TQM rings for maximum supported value. (Jonathan Toppins) [1921449] - bnxt_en: Fix AER recovery. (Jonathan Toppins) [1921449] - bnxt_en: Enable batch mode when using HWRM_NVM_MODIFY to flash packages. (Jonathan Toppins) [1921449] - bnxt_en: Retry installing FW package under NO_SPACE error condition. (Jonathan Toppins) [1921449] - bnxt_en: Restructure bnxt_flash_package_from_fw_obj() to execute in a loop. (Jonathan Toppins) [1921449] - bnxt_en: Rearrange the logic in bnxt_flash_package_from_fw_obj(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_flash_nvram. (Jonathan Toppins) [1921449] - bnxt_en: Release PCI regions when DMA mask setup fails during probe. (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_board() (Jonathan Toppins) [1921449] - bnxt_en: fix error return code in bnxt_init_one() (Jonathan Toppins) [1921449] - bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs. (Jonathan Toppins) [1921449] - bnxt_en: Fix counter overflow logic. (Jonathan Toppins) [1921449] - bnxt_en: Free port stats during firmware reset. (Jonathan Toppins) [1921449] - bnxt_en: read EEPROM A2h address using page 0 (Jonathan Toppins) [1921449] - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally. (Jonathan Toppins) [1921449] - bnxt_en: Check abort error state in bnxt_open_nic(). (Jonathan Toppins) [1921449] - bnxt_en: Re-write PCI BARs after PCI fatal error. (Jonathan Toppins) [1921449] - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also. (Jonathan Toppins) [1921449] - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one(). (Jonathan Toppins) [1921449] - bnxt_en: Add stored FW version info to devlink info_get cb. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_dl_info_get(). (Jonathan Toppins) [1921449] - bnxt_en: Add bnxt_hwrm_nvm_get_dev_info() to query NVM info. (Jonathan Toppins) [1921449] - bnxt_en: Log unknown link speed appropriately. (Jonathan Toppins) [1921449] - bnxt_en: Log event_data1 and event_data2 when handling RESET_NOTIFY event. (Jonathan Toppins) [1921449] - bnxt_en: Simplify bnxt_async_event_process(). (Jonathan Toppins) [1921449] - bnxt_en: Set driver default message level. (Jonathan Toppins) [1921449] - bnxt_en: Enable online self tests for multi-host/NPAR mode. (Jonathan Toppins) [1921449] - bnxt_en: Return -EROFS to user space, if NVM writes are not permitted. (Jonathan Toppins) [1921449] - bnxt_en: Eliminate unnecessary RX resets. (Jonathan Toppins) [1921449] - bnxt_en: Reduce unnecessary message log during RX errors. (Jonathan Toppins) [1921449] - bnxt_en: Add a software counter for RX ring reset. (Jonathan Toppins) [1921449] - bnxt_en: Implement RX ring reset in response to buffer errors. (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_init_one_rx_ring(). (Jonathan Toppins) [1921449] - bnxt_en: Refactor bnxt_free_rx_skbs(). (Jonathan Toppins) [1921449] - bnxt_en: Log FW health status info, if reset is aborted. (Jonathan Toppins) [1921449] - bnxt_en: perform no master recovery during startup (Jonathan Toppins) [1921449] - bnxt_en: log firmware status on firmware init failure (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_alloc_fw_health() (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.68. (Jonathan Toppins) [1921449] - bnxt_en: Improve preset max value for ethtool -l. (Jonathan Toppins) [1921449] - bnxt_en: Implement ethtool set_fec_param() method. (Jonathan Toppins) [1921449] - bnxt_en: Report Active FEC encoding during link up. (Jonathan Toppins) [1921449] - bnxt_en: Report FEC settings to ethtool. (Jonathan Toppins) [1921449] - bnxt_en: avoid link reset if speed is not changed (Jonathan Toppins) [1921449] - bnxt_en: Handle ethernet link being disabled by firmware. (Jonathan Toppins) [1921449] - bnxt_en: ethtool: support PAM4 link speeds up to 200G (Jonathan Toppins) [1921449] - bnxt_en: add basic infrastructure to support PAM4 link speeds (Jonathan Toppins) [1921449] - bnxt_en: refactor bnxt_get_fw_speed() (Jonathan Toppins) [1921449] - bnxt_en: refactor code to limit speed advertising (Jonathan Toppins) [1921449] - bnxt_en: Update firmware interface spec to 1.10.1.65. (Jonathan Toppins) [1921449] - bnxt: add pause frame stats (Jonathan Toppins) [1921449] - xfrm: Fix xfrm offload fallback fail case (Andrea Claudi) [1976424] - sctp: trim optlen when it's a huge value in sctp_setsockopt (Xin Long) [1983864] - netfilter: flowtable: Set offload timeouts according to proto values (Phil Sutter) [1979184] - netfilter: conntrack: Introduce udp offload timeout configuration (Phil Sutter) [1979184] - netfilter: conntrack: Introduce tcp offload timeout configuration (Phil Sutter) [1979184] - veth: check for NAPI instead of xdp_prog before xmit of XDP frame (Paolo Abeni) [1952835] - self-tests: add veth tests (Paolo Abeni) [1952835] - veth: refine napi usage (Paolo Abeni) [1952835] - veth: allow enabling NAPI even without XDP (Paolo Abeni) [1952835] - veth: use skb_orphan_partial instead of skb_orphan (Paolo Abeni) [1952835] - net: really orphan skbs tied to closing sk (Paolo Abeni) [1952835] - net: let skb_orphan_partial wake-up waiters. (Paolo Abeni) [1952835] - veth: Store queue_mapping independently of XDP prog presence (Paolo Abeni) [1952835] - net/xfrm: Add inner_ipproto into sec_path (Petr Oros) [1981429] - net, xdp: Introduce xdp_prepare_buff utility routine (Jiri Benc) [1983730] - net, xdp: Introduce xdp_init_buff utility routine (Jiri Benc) [1983730] - bridge: switchdev: Notify about VLAN protocol changes (Ivan Vecera) [1981461] - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group under RCU (Ivan Vecera) [1981461] - bridge: add br_vlan_get_proto() (Ivan Vecera) [1981461] - bridge: add br_vlan_get_pvid_rcu() (Ivan Vecera) [1981461] - RDMA/bnxt_re: Fix a double free in bnxt_qplib_alloc_res (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Get rid of custom module reference counting (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Create direct symbol link between bnxt modules (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Depend on bnxt ethernet driver and not blindly select it (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix Kconfig indentation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix error return code in bnxt_qplib_cq_process_terminal() (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Move device to error state upon device crash (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Allow bigger MR creation (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Code refactor while populating user MRs (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix max_qp_wrs reported (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix entry size during SRQ create (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Fix sizeof mismatch for allocation of pbl_tbl. (Selvin Xavier) [1921454 1923026] - RDMA/bnxt_re: Use rdma_umem_for_each_dma_block() (Selvin Xavier) [1921454 1923026] - [s390] tools/kvm_stat: Exempt time-based counters (Claudio Imbrenda) [1981802] - Documentation/admin-guide: intel_pstate: drop doubled word (David Arcari) [1973225] - Documentation: fix multiple typos found in the admin-guide subdirectory (David Arcari) [1973225] - cpufreq: intel_pstate: Fix active mode setting from command line (David Arcari) [1973225] - cpufreq: intel_pstate: Use passive mode by default without HWP (David Arcari) [1973225] - cpufreq: intel_pstate: Use HWP if enabled by platform firmware (David Arcari) [1973225] - cpufreq: intel_pstate: Simplify intel_pstate_update_perf_limits() (David Arcari) [1973225] - cpufreq: intel_pstate: Clean up frequency computations (David Arcari) [1973225] - cpufreq/intel_pstate: Fix wrong macro conversion (David Arcari) [1973225] - cpufreq: Convert to new X86 CPU match macros (David Arcari) [1973225] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1973225] - selftests/fpu: Fix debugfs_simple_attr.cocci warning (Vitaly Kuznetsov) [1919182] - selftest/fpu: avoid clang warning (Vitaly Kuznetsov) [1919182] - redhat/configs: Add Enable CONFIG_TEST_FPU (Vitaly Kuznetsov) [1919182] - selftests/fpu: Add an FPU selftest (Vitaly Kuznetsov) [1919182] - x86/fpu/64: Don't FNINIT in kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Make the EFI FPU calling convention explicit (Vitaly Kuznetsov) [1919182] - x86/mmx: Use KFPU_387 for MMX string operations (Vitaly Kuznetsov) [1919182] - x86/fpu: Add kernel_fpu_begin_mask() to selectively initialize state (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_begin() (Vitaly Kuznetsov) [1919182] - x86/fpu: Simplify kernel_fpu_end() (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't use current->mm to check for a kthread (Vitaly Kuznetsov) [1919182] - x86/fpu: Don't export __kernel_fpu_{begin,end}() (Vitaly Kuznetsov) [1919182] - intel_th: pci: Add Alder Lake-P support (Tony Camuso) [1929493 1929494]- can: bcm: delay release of struct bcm_op after synchronize_rcu() (Hangbin Liu) [1975059] {CVE-2021-3609} - seq_file: Disallow extremely large seq buffer allocations (Ian Kent) [1975182] - nvme-pci: look for StorageD3Enable on companion ACPI device instead (Gopal Tiwari) [1965660] - prctl: exe link permission error changed from -EINVAL to -EPERM (Adrian Reber) [1960708] - prctl: Allow local CAP_CHECKPOINT_RESTORE to change /proc/self/exe (Adrian Reber) [1960708] - prctl_set_mm: refactor checks from validate_prctl_map (Adrian Reber) [1960708] - proc: allow access in init userns for map_files with CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - pid_namespace: use checkpoint_restore_ns_capable() for ns_last_pid (Adrian Reber) [1960708] - capabilities: Introduce CAP_CHECKPOINT_RESTORE (Adrian Reber) [1960708] - scripts: skip empty CAP_* strings (Adrian Reber) [1960708] - VMCI: Release resource if the work is already queued (Cathy Avery) [1978518] - perf vendor events arm64: Add Fujitsu A64FX pmu event (Michael Petlan) [1908109] - perf vendor events arm64: Add more common and uarch events (Michael Petlan) [1908109] - sunrpc: Avoid a KASAN slab-out-of-bounds bug in xdr_set_page_base() (Benjamin Coddington) [1969751] - xfs: sync lazy sb accounting on quiesce of read-only mounts (Bill O'Donnell) [1917220] - drm/dp_mst: Avoid to mess up payload table by ports in stale topology (Lyude Paul) [1944404] - drm/dp_mst: Do not set proposed vcpi directly (Lyude Paul) [1944404] - drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: rework cursor plane (Lyude Paul) [1944404 1907341] - drm/qxl: move shadow handling to new qxl_prepare_shadow() (Lyude Paul) [1944404 1907341] - drm/qxl: fix monitors object vmap (Lyude Paul) [1944404 1907341] - drm/qxl: fix prime vmap (Lyude Paul) [1944404 1907341] - drm/qxl: add qxl_bo_vmap/qxl_bo_vunmap (Lyude Paul) [1944404 1907341] - drm/qxl: rename qxl_bo_kmap -> qxl_bo_vmap_locked (Lyude Paul) [1944404 1907341] - drm/qxl: more fence wait rework (Lyude Paul) [1944404 1907341] - drm/qxl: properly handle device init failures (Lyude Paul) [1944404 1907341] - drm/qxl: allocate dumb buffers in ram (Lyude Paul) [1944404 1907341] - drm/qxl: simplify qxl_fence_wait (Lyude Paul) [1944404 1907341] - drm/qxl: properly free qxl releases (Lyude Paul) [1944404 1907341] - drm/qxl: handle shadow in primary destroy (Lyude Paul) [1944404 1907341] - drm/qxl: properly pin/unpin shadow (Lyude Paul) [1944404 1907341] - drm/qxl: use drmm_mode_config_init (Lyude Paul) [1944404 1907341] - drm/i915/icp+: Use icp_hpd_irq_setup() instead of spt_hpd_irq_setup() (Lyude Paul) [1944404] - drm/i915/gen9_bc: Add W/A for missing STRAP config on TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce HPD pin mappings for TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915/gen9_bc: Introduce TGP PCH DDC pin mappings (Lyude Paul) [1944404] - drm/i915/gen9_bc: Recognize TGP PCH + CML combos (Lyude Paul) [1944404] - drm/i915: rename i915_rev_steppings->intel_step_info (Lyude Paul) [1944404] - drm/i915: rename disp_stepping->display_step and gt_stepping->gt_step (Lyude Paul) [1944404] - drm/i915: rename DISP_STEPPING->DISPLAY_STEP and GT_STEPPING->GT_STEP (Lyude Paul) [1944404] - drm/i915: switch TGL and ADL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: switch KBL to the new stepping scheme (Lyude Paul) [1944404] - drm/i915: add new helpers for accessing stepping info (Lyude Paul) [1944404] - drm/i915: split out stepping info to a new file (Lyude Paul) [1944404] - drm/i915: Add DISPLAY_VER() and related macros (Lyude Paul) [1944404] - drm/i915/display: Do not allow DC3CO if PSR SF is enabled (Lyude Paul) [1944404] - drm/i915: s/dev_priv/i915/ for the remainder of DDI clock routing (Lyude Paul) [1944404] - drm/i915: Relocate icl_sanitize_encoder_pll_mapping() (Lyude Paul) [1944404] - drm/i915: Use .disable_clock() for pll sanitation (Lyude Paul) [1944404] - drm/i915: Split adl-s/rkl from icl_ddi_combo_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract _cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Sprinkle WARN(!pll) into icl/dg1 .clock_enable() (Lyude Paul) [1944404] - drm/i915: Sprinkle a few missing locks around shared DDI clock registers (Lyude Paul) [1944404] - drm/i915: Use intel_de_rmw() for DDI clock routing (Lyude Paul) [1944404] - drm/i915: Extract icl+ .{enable,disable}_clock() vfuncs (Lyude Paul) [1944404] - drm/i915: Convert DG1 over to .{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i195: Extract cnl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract skl_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Extract hsw_ddi_{enable,disable}_clock() (Lyude Paul) [1944404] - drm/i915: Introduce .{enable,disable}_clock() encoder vfuncs (Lyude Paul) [1944404] - drm/i915: Use intel_ddi_clk_select() for FDI (Lyude Paul) [1944404] - drm/i915/adl_s: Add GT and CTX WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add display WAs for ADL-S (Lyude Paul) [1944404] - drm/i915/display: Add HAS_D12_PLANE_MINIMIZATION (Lyude Paul) [1944404] - drm/i915/adl_s: Re-use TGL GuC/HuC firmware (Lyude Paul) [1944404] - drm/i915/adl_s: Add power wells (Lyude Paul) [1944404] - drm/i915/adl_s: Update PHY_MISC programming (Lyude Paul) [1944404] - drm/i915/adl_s: Update combo PHY master/slave relationships (Lyude Paul) [1944404] - drm/i915/adl_s: Add vbt port and aux channel settings for adls (Lyude Paul) [1944404] - drm/i915/adl_s: Add adl-s ddc pin mapping (Lyude Paul) [1944404] - drm/i915/adl_s: Initialize display for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure Port clock registers for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Configure DPLL for ADL-S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PHYs for Alderlake S (Lyude Paul) [1944404] - drm/i915/adl_s: Add PCH support (Lyude Paul) [1944404] - drm/i915/adl_s: Add ADL-S platform info and PCI ids (Lyude Paul) [1944404] - drm/i915/tgl: Use TGL stepping info for applying WAs (Lyude Paul) [1944404] - redhat/configs: Update CONFIG_HSA_AMD (Lyude Paul) - redhat/configs: Update CONFIG_DRM_AMDGPU_USERPTR (Lyude Paul) - DRM Backport v5.11 -> v5.12.4 (Lyude Paul) [1944404] - include/linux/kernel.h: add typeof_member() macro (Lyude Paul) [1944404] - drm: Use USB controller's DMA mask when importing dmabufs (Lyude Paul) [1944404] - PM: runtime: Add pm_runtime_get_if_active() (Lyude Paul) [1944404] - PCI: Add pci_rebar_bytes_to_size() (Lyude Paul) [1944404] - PCI: Export pci_rebar_get_possible_sizes() (Lyude Paul) [1944404] - DRM backport v5.10->v5.11 (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vunmap() interfaces (Lyude Paul) [1944404] - dma-buf: Use struct dma_buf_map in dma_buf_vmap() interfaces (Lyude Paul) [1944404] - dma-buf: Add struct dma-buf-map for storing struct dma_buf.vaddr_ptr (Lyude Paul) [1944404] - PCI/PM: Do not generate wakeup event when runtime resuming device (Lyude Paul) [1944404] - PCI/PM: Rename pci_wakeup_bus() to pci_resume_bus() (Lyude Paul) [1944404] - blktrace: make relay callbacks const (Lyude Paul) [1944404] - drm/i915: make relay callbacks const (Lyude Paul) [1944404] - relay: allow the use of const callback structs (Lyude Paul) [1944404] - relay: make create_buf_file and remove_buf_file callbacks mandatory (Lyude Paul) [1944404] - relay: require non-NULL callbacks in relay_open() (Lyude Paul) [1944404] - relay: remove unused buf_mapped and buf_unmapped callbacks (Lyude Paul) [1944404] - drm/edid: fix objtool warning in drm_cvt_modes() (Lyude Paul) [1944404] - drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1944404] - DRM backport v5.9.y -> v5.10 (Lyude Paul) [1944404] - time: Introduce jiffies64_to_msecs() (Lyude Paul) [1944404] - virtio: add dma-buf support for exported objects (Lyude Paul) [1944404] - objtool: Rename frame.h -> objtool.h (Lyude Paul) [1944404] - moduleparams: Add hexint type parameter (Lyude Paul) [1944404] - iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header (Lyude Paul) [1944404]- [s390] s390/zcrypt/pkey: introduce zcrypt_wait_api_operational() function (Claudio Imbrenda) [1881833] - [s390] s390/ap: ap bus userspace notifications for some bus conditions (Claudio Imbrenda) [1881833] - [s390] s390/pkey: fix paes selftest failure with paes and pkey static build (Claudio Imbrenda) [1881833] - KVM: nSVM: Avoid tainiting kernel by default (Vitaly Kuznetsov) [1982248] - KVM: s390x: implement KVM_CAP_SET_GUEST_DEBUG2 (Thomas Huth) [1945752] - KVM: s390: fix guarded storage control register handling (Thomas Huth) [1945752] - s390/protvirt: fix error return code in uv_info_init() (Thomas Huth) [1945752] - s390/uv: fix prot virt host indication compilation (Thomas Huth) [1945752] - KVM: s390: VSIE: fix MVPG handling for prefixing and MSO (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_real_to_abs (Thomas Huth) [1945752] - KVM: s390: VSIE: correctly handle MVPG when in VSIE (Thomas Huth) [1945752] - KVM: s390: extend kvm_s390_shadow_fault to return entry pointer (Thomas Huth) [1945752] - s390/uv: add prot virt guest/host indication files (Thomas Huth) [1945752] - KVM: s390: split kvm_s390_logical_to_effective (Thomas Huth) [1945752] - KVM: s390: Fix comment spelling in kvm_s390_vcpu_start() (Thomas Huth) [1945752] - s390: uv: Fix sysfs max number of VCPUs reporting (Thomas Huth) [1945752] - KVM: s390: track synchronous pfault events in kvm_stat (Thomas Huth) [1945752] - s390/gmap: make gmap memcg aware (Thomas Huth) [1945752] - KVM: s390: Add memcg accounting to KVM allocations (Thomas Huth) [1945752] - s390/uv: handle destroy page legacy interface (Thomas Huth) [1945752] - KVM: s390: pv: Mark mm as protected after the set secure parameters and improve cleanup (Thomas Huth) [1945752] - virtio/s390: implement virtio-ccw revision 2 correctly (Thomas Huth) [1945752] - sfc: deprecate SFC9020 family (Siena) (Íñigo Huguet) [1926379] - NFS: Fix open coded versions of nfs_set_cache_invalid() in NFSv4 (Benjamin Coddington) [1936478] - NFS: Fix open coded versions of nfs_set_cache_invalid() (Benjamin Coddington) [1936478] - NFS: Clean up function nfs_mark_dir_for_revalidate() (Benjamin Coddington) [1936478] - NFSD: Mark exports of NFS as tech-preview (Benjamin Coddington) [1972229] - perf vendor events intel: Add missing skylake & icelake model numbers (Michael Petlan) [1971959] - tc-testing: add test for ct DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - tc-testing: add support for sending various scapy packets (Marcelo Ricardo Leitner) [1964578] - tc-testing: fix list handling (Marcelo Ricardo Leitner) [1964578] - net/sched: act_ct: handle DNAT tuple collision (Marcelo Ricardo Leitner) [1964578] - net/packet: remove data races in fanout operations (Balazs Nemeth) [1957270] - net/packet: remove locking from packet_rcv_has_room() (Balazs Nemeth) [1957270] - net: packetmmap: fix only tx timestamp on request (Balazs Nemeth) [1970404] - x86/sgx: Add TAINT_TECH_PREVIEW for virtual EPC (Bandan Das) [1977474] - cxgb4: fix thermal zone device registration (Raju Rangoju) [1954012] - powerpc/64s: Fix crashes when toggling stf barrier (Desnes A. Nunes do Rosario) [1964484] - iavf: Fix an error handling path in 'iavf_probe()' (Stefan Assmann) [1920276] - iavf: clean up packet type lookup table (Stefan Assmann) [1920276] - iavf: redefine the magic number for FDIR GTP-U header fields (Stefan Assmann) [1920276] - iavf: enhance the duplicated FDIR list scan handling (Stefan Assmann) [1920276] - iavf: change the flex-byte support number to macro definition (Stefan Assmann) [1920276] - iavf: remove duplicate free resources calls (Stefan Assmann) [1920276] - iavf: Support for modifying SCTP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying UDP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Support for modifying TCP RSS flow hashing (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool RSS config (Stefan Assmann) [1920276] - iavf: add support for UDP Segmentation Offload (Stefan Assmann) [1920276] - intel: clean up mismatched header comments (Stefan Assmann) [1920276] - iavf: Enable flex-bytes support (Stefan Assmann) [1920276] - iavf: Support Ethernet Type Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv6 Flow Director filters (Stefan Assmann) [1920276] - iavf: Support IPv4 Flow Director filters (Stefan Assmann) [1920276] - iavf: Add framework to enable ethtool ntuple filters (Stefan Assmann) [1920276] - net: intel: iavf: fix error return code of iavf_init_get_resources() (Stefan Assmann) [1920276] - workqueue: Move the position of debug_work_activate() in __queue_work() (Waiman Long) [1977537] - workqueue: remove useless unlock() and lock() in series (Waiman Long) [1977537] - workqueue: Convert the pool::lock and wq_mayday_lock to raw_spinlock_t (Waiman Long) [1977537] - workqueue: Use rcuwait for wq_manager_wait (Waiman Long) [1977537] - workqueue: Remove unnecessary kfree() call in rcu_free_wq() (Waiman Long) [1977537] - workqueue: Fix an use after free in init_rescuer() (Waiman Long) [1977537] - workqueue: Use IS_ERR and PTR_ERR instead of PTR_ERR_OR_ZERO. (Waiman Long) [1977537] - workqueue: don't use wq_select_unbound_cpu() for bound works (Waiman Long) [1977537] - workqueue: Use pr_warn instead of pr_warning (Waiman Long) [1977537] - workqueue: more destroy_workqueue() fixes (Waiman Long) [1977537] - workqueue: Minor follow-ups to the rescuer destruction change (Waiman Long) [1977537] - kernel/workqueue: Document wq_worker_last_func() argument (Waiman Long) [1977537] - workqueue: Only unregister a registered lockdep key (Waiman Long) [1977537] - kernel: workqueue: clarify wq_worker_last_func() caller requirements (Waiman Long) [1977537] - workqueue: Fix spelling in source code comments (Waiman Long) [1977537] - workqueue: fix typo in comment (Waiman Long) [1977537] - ice: add correct exception tracing for XDP (Jonathan Toppins) [1920278] - ice: optimize for XDP_REDIRECT in xsk path (Jonathan Toppins) [1920278] - ice: Allow all LLDP packets from PF to Tx (Jonathan Toppins) [1920278] - ice: report supported and advertised autoneg using PHY capabilities (Jonathan Toppins) [1920278] - ice: handle the VF VSI rebuild failure (Jonathan Toppins) [1920278] - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared (Jonathan Toppins) [1920278] - ice: Fix allowing VF to request more/less queues via virtchnl (Jonathan Toppins) [1920278] - ice: track AF_XDP ZC enabled queues in bitmap (Jonathan Toppins) [1920278] - ice: handle increasing Tx or Rx ring sizes (Jonathan Toppins) [1920278] - ice: Fix potential infinite loop when using u8 loop counter (Jonathan Toppins) [1920278] - ice: fix memory leak of aRFS after resuming from suspend (Jonathan Toppins) [1920278] - ice: Cleanup fltr list in case of allocation issues (Jonathan Toppins) [1920278] - ice: Use port number instead of PF ID for WoL (Jonathan Toppins) [1920278] - ice: Fix for dereference of NULL pointer (Jonathan Toppins) [1920278] - ice: remove DCBNL_DEVRESET bit from PF state (Jonathan Toppins) [1920278] - ice: fix memory allocation call (Jonathan Toppins) [1920278] - ice: prevent ice_open and ice_stop during reset (Jonathan Toppins) [1920278] - ice: Recognize 860 as iSCSI port in CEE mode (Jonathan Toppins) [1920278] - ice: Increase control queue timeout (Jonathan Toppins) [1920278] - ice: Continue probe on link/PHY errors (Jonathan Toppins) [1920278] - ice: fix napi work done reporting in xsk path (Jonathan Toppins) [1920278] - ice: update the number of available RSS queues (Jonathan Toppins) [1920278] - ice: Fix state bits on LLDP mode switch (Jonathan Toppins) [1920278] - ice: Account for port VLAN in VF max packet size calculation (Jonathan Toppins) [1920278] - ice: Set trusted VF as default VSI when setting allmulti on (Jonathan Toppins) [1920278] - ice: report correct max number of TCs (Jonathan Toppins) [1920278] - ice: skip NULL check against XDP prog in ZC path (Jonathan Toppins) [1920278] - ice: remove redundant checks in ice_change_mtu (Jonathan Toppins) [1920278] - ice: move skb pointer from rx_buf to rx_ring (Jonathan Toppins) [1920278] - ice: simplify ice_run_xdp (Jonathan Toppins) [1920278] - ice: Improve MSI-X fallback logic (Jonathan Toppins) [1920278] - ice: Fix trivial error message (Jonathan Toppins) [1920278] - ice: remove unnecessary casts (Jonathan Toppins) [1920278] - ice: Refactor DCB related variables out of the ice_port_info struct (Jonathan Toppins) [1920278] - ice: fix writeback enable logic (Jonathan Toppins) [1920278] - ice: Use PSM clock frequency to calculate RL profiles (Jonathan Toppins) [1920278] - ice: create scheduler aggregator node config and move VSIs (Jonathan Toppins) [1920278 1940527 1940535 1940542] {CVE-2020-24504 CVE-2020-24503 CVE-2020-24502} - ice: Add initial support framework for LAG (Jonathan Toppins) [1920278] - ice: Remove xsk_buff_pool from VSI structure (Jonathan Toppins) [1920278] - ice: implement new LLDP filter command (Jonathan Toppins) [1920278] - ice: log message when trusted VF goes in/out of promisc mode (Jonathan Toppins) [1920278] - ice: remove dead code (Jonathan Toppins) [1920278] - ice: use flex_array_size where possible (Jonathan Toppins) [1920278] - ice: Replace one-element array with flexible-array member (Jonathan Toppins) [1920278] - ice: display stored UNDI firmware version via devlink info (Jonathan Toppins) [1920278] - ice: display stored netlist versions via devlink info (Jonathan Toppins) [1920278] - ice: display some stored NVM versions via devlink info (Jonathan Toppins) [1920278] - ice: introduce function for reading from flash modules (Jonathan Toppins) [1920278] - ice: cache NVM module bank information (Jonathan Toppins) [1920278] - ice: introduce context struct for info report (Jonathan Toppins) [1920278] - ice: create flash_info structure and separate NVM version (Jonathan Toppins) [1920278] - ice: report timeout length for erasing during devlink flash (Jonathan Toppins) [1920278] - ice: Implement flow for IPv6 next header (extension header) (Jonathan Toppins) [1920278] - ice: fix FDir IPv6 flexbyte (Jonathan Toppins) [1920278] - ice: drop dead code in ice_receive_skb() (Jonathan Toppins) [1920278] - ice, xsk: Move Rx allocation out of while-loop (Jonathan Toppins) [1920278] - ice: avoid premature Rx buffer reuse (Jonathan Toppins) [1920278] - ice: Add space to unknown speed (Jonathan Toppins) [1920278] - ice: join format strings to same line as ice_debug (Jonathan Toppins) [1920278] - ice: silence static analysis warning (Jonathan Toppins) [1920278] - ice: cleanup misleading comment (Jonathan Toppins) [1920278] - ice: Remove vlan_ena from vsi structure (Jonathan Toppins) [1920278] - ice: Remove gate to OROM init (Jonathan Toppins) [1920278] - ice: Enable Support for FW Override (E82X) (Jonathan Toppins) [1920278] - ice: don't always return an error for Get PHY Abilities AQ command (Jonathan Toppins) [1920278] - ice: cleanup stack hog (Jonathan Toppins) [1920278] - mm: migrate: fix missing update page_private to hugetlb_page_subpool (Chris von Recklinghausen) [1981661] - mm,hugetlb: drop clearing of flag from prep_new_huge_page (Chris von Recklinghausen) [1981661] - hugetlb: fix uninitialized subpool pointer (Chris von Recklinghausen) [1981661] - include/linux/hugetlb.h: add synchronization information for new hugetlb specific flags (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeFreed to HPageFreed flag (Chris von Recklinghausen) [1981661] - hugetlb: convert PageHugeTemporary() to HPageTemporary flag (Chris von Recklinghausen) [1981661] - mm: hugetlb: fix a race between freeing and dissolving the page (Chris von Recklinghausen) [1981661] - mm: don't let userspace spam allocations warnings (Xin Long) [1976699] - dm writecache: make writeback pause configurable (Mike Snitzer) [1978369] - dm writecache: pause writeback if cache full and origin being written directly (Mike Snitzer) [1978369] - dm io tracker: factor out IO tracker (Mike Snitzer) [1978369] - dm writecache: add optional "metadata_only" parameter (Mike Snitzer) [1978369] - dm writecache: add "cleaner" and "max_age" to Documentation (Mike Snitzer) [1978369] - dm writecache: write at least 4k when committing (Mike Snitzer) [1978369] - dm writecache: have ssd writeback wait if the kcopyd workqueue is busy (Mike Snitzer) [1978369] - dm writecache: use list_move instead of list_del_list_add in writecache_writeback() (Mike Snitzer) [1978369] - dm writecache: commit just one block, not a full page (Mike Snitzer) [1978369] - dm writecache: remove unused gfp_t argument from wc_add_block() (Mike Snitzer) [1978369] - dm writecache: interrupt writeback if suspended (Mike Snitzer) [1978369] - dm writecache: don't split bios when overwriting contiguous cache content (Mike Snitzer) [1978369] - dm kcopyd: avoid spin_lock_irqsave from process context (Mike Snitzer) [1978369] - dm kcopyd: avoid useless atomic operations (Mike Snitzer) [1978369] - x86/asm: Optimize memcpy_flushcache() (Mike Snitzer) [1978369] - IB/isert: Align target max I/O size to initiator size (Kamal Heib) [1930955] - IB/isert: set rdma cm afonly flag (Kamal Heib) [1930955]- xsk: Rollback reservation at NETDEV_TX_BUSY (Jiri Benc) [1882711] - xsk: Fix race in SKB mode transmit with shared cq (Jiri Benc) [1882711] - bpf: Only provide bpf_sock_from_file with CONFIG_NET (Jiri Benc) [1882711] - xsk: Validate socket state in xsk_recvmsg, prior touching socket members (Jiri Benc) [1882711] - samples/bpf: Fix spelling mistake "recieving" -> "receiving" (Jiri Benc) [1882711] - samples/bpf: Sample application for eBPF load and socket creation split (Jiri Benc) [1882711] - bpf: Adds support for setting window clamp (Jiri Benc) [1882711] - tcp: declare tcp_mmap() only when CONFIG_MMU is set (Jiri Benc) [1882711] - bpf: Remove trailing semicolon in macro definition (Jiri Benc) [1882711] - bpf: Allow bpf_{s,g}etsockopt from cgroup bind{4,6} hooks (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting infra for bpf maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Eliminate rlimit-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for xskmap maps (Jiri Benc) [1882711] - bpf: Refine memcg-based memory accounting for sockmap and sockhash maps (Jiri Benc) [1882711] - net, xdp, xsk: fix __sk_mark_napi_id_once napi_id error (Jiri Benc) [1882711] - samples/bpf: Add option to set the busy-poll budget (Jiri Benc) [1882711] - samples/bpf: Add busy-poll support to xdpsock (Jiri Benc) [1882711] - xsk: Propagate napi_id to XDP socket Rx path (Jiri Benc) [1882711] - xsk: Add busy-poll support for {recv,send}msg() (Jiri Benc) [1882711] - xsk: Check need wakeup flag in sendmsg() (Jiri Benc) [1882711] - xsk: Add support for recvmsg() (Jiri Benc) [1882711] - net: Add SO_BUSY_POLL_BUDGET socket option (Jiri Benc) [1882711] - net: Introduce preferred busy-polling (Jiri Benc) [1882711] - net: napi: use READ_ONCE()/WRITE_ONCE() (Jiri Benc) [1882711] - net: napi: add hard irqs deferral feature (Jiri Benc) [1882711] - fs/eventpoll.c: simply CONFIG_NET_RX_BUSY_POLL ifdefery (Jiri Benc) [1882711] - xdp: Remove the functions xsk_map_inc and xsk_map_put (Jiri Benc) [1882711] - xsk: Introduce batched Tx descriptor interfaces (Jiri Benc) [1882711] - xsk: Introduce padding between more ring pointers (Jiri Benc) [1882711] - net: page_pool: Add bulk support for ptr_ring (Jiri Benc) [1882711] - net: xdp: Introduce bulking for xdp tx return path (Jiri Benc) [1882711] - bpf: Rename some functions in bpf_sk_storage (Jiri Benc) [1882711] - bpf: Folding omem_charge() into sk_storage_charge() (Jiri Benc) [1882711] - net/smc: properly handle workqueue allocation failure (Andrea Claudi) [1955178] - Revert "net/smc: fix a NULL pointer dereference" (Andrea Claudi) [1955178] - KVM: selftests: evmcs_test: Test that KVM_STATE_NESTED_EVMCS is never lost (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Request to sync eVMCS from VMCS12 after migration (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Reset eVMCS clean fields data from prepare_vmcs02() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Force enlightened VMCS sync from nested_vmx_failValid() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Ignore 'hv_clean_fields' data when eVMCS data is copied in vmx_get_nested_state() (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release enlightened VMCS on VMCLEAR (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Introduce 'EVMPTR_MAP_PENDING' post-migration state (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Make copy_vmcs12_to_enlightened()/copy_enlightened_to_vmcs12() return 'void' (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Release eVMCS when enlightened VMENTRY was disabled (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Don't set 'dirty_vmcs12' flag on enlightened VMPTRLD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Use '-1' in 'hv_evmcs_vmptr' to indicate that eVMCS is not in use (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMCS12 is alway properly synced to eVMCS after restore (Vitaly Kuznetsov) [1940837] - KVM: selftests: evmcs_test: Check that VMLAUNCH with bogus EVMPTR is causing #UD (Vitaly Kuznetsov) [1940837] - KVM: nVMX: Always make an attempt to map eVMCS after migration (Vitaly Kuznetsov) [1940837] - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working (Gopal Tiwari) [1973909] - KVM: x86: Unload MMU on guest TLB flush if TDP disabled to force MMU sync (Vitaly Kuznetsov) [1906634] - scsi: sbitmap: Silence a debug kernel warning triggered by sbitmap_put() (Ewan D. Milne) [1761937] - scsi: core: Replace sdev->device_busy with sbitmap (Ewan D. Milne) [1761937] - scsi: core: Make sure sdev->queue_depth is <= max(shost->can_queue, 1024) (Ewan D. Milne) [1761937] - scsi: core: Add scsi_device_busy() wrapper (Ewan D. Milne) [1761937] - scsi: blk-mq: Return budget token from .get_budget callback (Ewan D. Milne) [1761937] - scsi: blk-mq: Add callbacks for storing & retrieving budget token (Ewan D. Milne) [1761937] - scsi: sbitmap: Add sbitmap_calculate_shift() helper (Ewan D. Milne) [1761937] - scsi: sbitmap: Export sbitmap_weight (Ewan D. Milne) [1761937] - scsi: sbitmap: Move allocation hint into sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Add helpers for updating allocation hint (Ewan D. Milne) [1761937] - scsi: sbitmap: Maintain allocation round_robin in sbitmap (Ewan D. Milne) [1761937] - scsi: sbitmap: Remove sbitmap_clear_bit_unlock (Ewan D. Milne) [1761937] - blk-mq: pass request queue into get/put budget callback (Ewan D. Milne) [1761937] - dma-iommu: implement ->alloc_noncontiguous (Jerry Snitselaar) [1955767] - dma-iommu: refactor iommu_dma_alloc_remap (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_alloc_noncontiguous API (Jerry Snitselaar) [1955767] - dma-mapping: refactor dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-mapping: add a dma_mmap_pages helper (Jerry Snitselaar) [1955767] - dma-mapping: remove the {alloc,free}_noncoherent methods (Jerry Snitselaar) [1955767] - iommu/vt-d: Make unnecessarily global functions static (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused function declarations (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove SVM_FLAG_PRIVATE_PASID (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove svm_dev_ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Use Real PCI DMA device for IRTE (Jerry Snitselaar) [1955767] - iommu/vt-d: Calculate and set flags for handle_mm_fault (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix build error of pasid_enable_wpe() with !X86 (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid unnecessary cache flush in pasid entry teardown (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect propagation from guest (Jerry Snitselaar) [1955767] - iommu/vt-d: Enable write protect for supervisor SVM (Jerry Snitselaar) [1955767] - iommu/vt-d: Report more information about invalidation errors (Jerry Snitselaar) [1955767] - iommu/vt-d: Disable SVM when ATS/PRI/PASID are not enabled in the device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_fast() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove IOVA domain rcache flushing for CPU offlining (Jerry Snitselaar) [1955767] - iova: Add CPU hotplug handler to flush rcaches (Jerry Snitselaar) [1955767] - iommu/iova: Improve restart logic (Jerry Snitselaar) [1955767] - iommu/iova: Add rbtree entry helper (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the unused fields for PREFETCH_CONFIG command (Jerry Snitselaar) [1955767] - iommu/vt-d: Use user privilege for RID2PASID translation (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix sysfs leak in alloc_iommu() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add a check to avoid invalid iotlb sync (Jerry Snitselaar) [1955767] - x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC power-gating (Jerry Snitselaar) [1955767] - iommu: Fix a boundary issue to avoid performance drop (Jerry Snitselaar) [1955767] - iommu/vt-d: Check for allocation failure in aux_detach_device() (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove unused dma map/unmap trace events (Jerry Snitselaar) [1955767] - iommu/amd: Clear DMA ops when switching domain (Jerry Snitselaar) [1955767] - iommu/amd: Remove performance counter pre-initialization test (Jerry Snitselaar) [1955767] - Revert "iommu/amd: Fix performance counter initialization" (Jerry Snitselaar) [1955767] - iommu/dma: Resurrect the "forcedac" option (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in iommu_dev_xxx functions (Jerry Snitselaar) [1955767] - iommu/amd: Put newline after closing bracket in warning (Jerry Snitselaar) [1955767] - iommu/vt-d: Force to flush iotlb before creating superpage (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix an error handling path in 'intel_prepare_irq_remapping()' (Jerry Snitselaar) [1955767] - iommu/vt-d: Invalidate PASID cache when root/context entry changed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove WO permissions on second-level paging entries (Jerry Snitselaar) [1955767] - iommu/vt-d: Report the right page fault address (Jerry Snitselaar) [1955767] - iommu/vt-d: Report right snoop capability when using FL for IOVA (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't set then clear private data in prq_event_thread() (Jerry Snitselaar) [1955767] - iommu/vt-d: Reject unsupported page request modes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: add bit field SFM into GERROR_ERR_MASK (Jerry Snitselaar) [1955767] - iommu/amd: Keep track of amd_iommu_irq_remap state (Jerry Snitselaar) [1955767] - iommu/amd: Don't call early_amd_iommu_init() when AMD IOMMU is disabled (Jerry Snitselaar) [1955767] - iommu/amd: Move Stoney Ridge check to detect_ivrs() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix status code for Allocate/Free PASID command (Jerry Snitselaar) [1955767] - iommu: Don't use lazy flush for untrusted device (Jerry Snitselaar) [1955767] - iommu/amd: Fix sleeping in atomic in increase_address_space() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_dev_has_feature() (Jerry Snitselaar) [1955767] - iommu: Delete iommu_domain_window_disable() (Jerry Snitselaar) [1955767] - iommu: Stop exporting iommu_map_sg_atomic() (Jerry Snitselaar) [1955767] - iova: Stop exporting some more functions (Jerry Snitselaar) [1955767] - iova: Delete copy_reserved_iova() (Jerry Snitselaar) [1955767] - iova: Make has_iova_flush_queue() private (Jerry Snitselaar) [1955767] - iommu/vt-d: Add iotlb_sync_map callback (Jerry Snitselaar) [1955767] - iommu/vt-d: Move capability check code to cap_audit files (Jerry Snitselaar) [1921289] - iommu/vt-d: Audit IOMMU Capabilities and add helper functions (Jerry Snitselaar) [1921289] - iommu/vt-d: Fix 'physical' typos (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix compile error [-Werror=implicit-function-declaration] (Jerry Snitselaar) [1955767] - iommu/vt-d: Use INVALID response code instead of FAILURE (Jerry Snitselaar) [1920726] - iommu/vt-d: Clear PRQ overflow only when PRQ is empty (Jerry Snitselaar) [1955767] - iommu/vt-d: Preset Access/Dirty bits for IOVA over FL (Jerry Snitselaar) [1955767] - iommu/vt-d: Add qi_submit trace event (Jerry Snitselaar) [1955767] - iommu/vt-d: Consolidate duplicate cache invaliation code (Jerry Snitselaar) [1955767] - iommu/amd: Adopt IO page table framework for AMD IOMMU v1 page table (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_map_page and iommu_v1_unmap_page (Jerry Snitselaar) [1955767] - iommu/amd: Introduce iommu_v1_iova_to_phys (Jerry Snitselaar) [1955767] - iommu/amd: Refactor fetch_pte to use struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Rename variables to be consistent with struct io_pgtable_ops (Jerry Snitselaar) [1955767] - iommu/amd: Remove amd_iommu_domain_get_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Restructure code for freeing page table (Jerry Snitselaar) [1955767] - iommu/amd: Move IO page table related functions (Jerry Snitselaar) [1955767] - iommu/amd: Declare functions as extern (Jerry Snitselaar) [1955767] - iommu/amd: Convert to using amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Move pt_root to struct amd_io_pgtable (Jerry Snitselaar) [1955767] - iommu/amd: Prepare for generic IO page table framework (Jerry Snitselaar) [1955767] - iommu/amd: Re-define amd_iommu_domain_encode_pgtable as inline (Jerry Snitselaar) [1955767] - iommu/amd: remove h from printk format specifier (Jerry Snitselaar) [1955767] - iommu/amd: Use DEFINE_SPINLOCK() for spinlock (Jerry Snitselaar) [1955767] - iommu/amd: Remove unnecessary assignment (Jerry Snitselaar) [1955767] - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Add cfg as a param in some macros (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Clarify LVL_SHIFT/BITS macro (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm-v7s: Use ias to check the valid iova in unmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove TLBI_ON_MAP quirk (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Allow io_pgtable_tlb ops optional (Jerry Snitselaar) [1955767] - iommu: Switch gather->end to the inclusive end (Jerry Snitselaar) [1955767] - iommu: Add iova and size as parameters in iotlb_sync_map (Jerry Snitselaar) [1955767] - iommu: Move iotlb_sync_map out from __iommu_map (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for VHE (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Make BTM optional for SVA (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Split arm_smmu_tlb_inv_range() (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Use DEFINE_RES_MEM() to simplify code (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Remove the page 1 fixup (Jerry Snitselaar) [1955767] - x86,swiotlb: Adjust SWIOTLB bounce buffer size for SEV guests (Jerry Snitselaar) [1955767] - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it (Jerry Snitselaar) [1955767] - iommu/vt-d: Do not use flush-queue when caching-mode is on (Jerry Snitselaar) [1955767] - iommu/vt-d: Correctly check addr alignment in qi_flush_dev_iotlb_pasid() (Jerry Snitselaar) [1955767] - iommu/amd: Use IVHD EFR for early initialization of IOMMU features (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix unaligned addresses for intel_flush_svm_range_dev() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix ineffective devTLB invalidation for subdevices (Jerry Snitselaar) [1920750 1920749] - iommu/vt-d: Fix general protection fault in aux_detach_device() (Jerry Snitselaar) [1920748] - iommu/vt-d: Move intel_iommu info from struct intel_svm to struct intel_svm_dev (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix lockdep splat in sva bind()/unbind() (Jerry Snitselaar) [1955767] - Revert "iommu: Add quirk for Intel graphic devices in map_sg" (Jerry Snitselaar) [1955767] - iommu/intel: Fix memleak in intel_irq_remapping_alloc (Jerry Snitselaar) [1955767] - iommu/iova: fix 'domain' typos (Jerry Snitselaar) [1955767] - dma-iommu: remove __iommu_dma_mmap (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Remove tlb_flush_leaf (Jerry Snitselaar) [1955767] - iommu/vt-d: Avoid GFP_ATOMIC where it is not needed (Jerry Snitselaar) [1955767] - iommu/vt-d: Remove set but not used variable (Jerry Snitselaar) [1955767] - iommu/vt-d: Cleanup after converting to dma-iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Convert intel iommu driver to the iommu ops (Jerry Snitselaar) [1955767] - iommu/vt-d: Don't clear GFP_DMA and GFP_DMA32 flags (Jerry Snitselaar) [1955767] - iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev (Jerry Snitselaar) [1955767] - iommu: Add quirk for Intel graphic devices in map_sg (Jerry Snitselaar) [1955767] - swiotlb: remove the tbl_dma_addr argument to swiotlb_tbl_map_single (Jerry Snitselaar) [1955767] - swiotlb-xen: remove start_dma_addr (Jerry Snitselaar) [1955767] - iommu: Allow the dma-iommu api to use bounce buffers (Jerry Snitselaar) [1955767] - iommu: Add iommu_dma_free_cpu_cached_iovas() (Jerry Snitselaar) [1955767] - iommu: Handle freelists when using deferred flushing in iommu drivers (Jerry Snitselaar) [1955767] - iommu/sva: Add PASID helpers (Jerry Snitselaar) [1955767] - iommu/ioasid: Add ioasid references (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Remove unused 'level' parameter from iopte_type() macro (Jerry Snitselaar) [1955767] - iommu: Defer the early return in arm_(v7s/lpae)_map (Jerry Snitselaar) [1955767] - iommu: Improve the performance for direct_mapping (Jerry Snitselaar) [1955767] - iommu: return error code when it can't get group (Jerry Snitselaar) [1955767] - iommu: Modify the description of iommu_sva_unbind_device (Jerry Snitselaar) [1955767] - iommu: Stop exporting free_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Stop exporting alloc_iova_mem() (Jerry Snitselaar) [1955767] - iommu: Delete split_and_remove_iova() (Jerry Snitselaar) [1955767] - iommu: avoid taking iova_rbtree_lock twice (Jerry Snitselaar) [1955767] - iommu/iova: Free global iova rcache on iova alloc failure (Jerry Snitselaar) [1955767] - iommu/iova: Retry from last rb tree node if iova search fails (Jerry Snitselaar) [1955767] - iommu: Fix htmldocs warnings in sysfs-kernel-iommu_groups (Jerry Snitselaar) [1955767] - iommu: Document usage of "/sys/kernel/iommu_groups//type" file (Jerry Snitselaar) [1838589] - iommu: Take lock before reading iommu group default domain type (Jerry Snitselaar) [1838589] - iommu: Add support to change default domain of an iommu group (Jerry Snitselaar) [1838589] - iommu: Move def_domain type check for untrusted device into core (Jerry Snitselaar) [1838589] - iommu/arm-smmu-v3: Hook up ATC invalidation to mm ops (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Implement iommu_sva_bind/unbind() (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move non-strict mode to use io_pgtable_domain_attr (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for pagetable config domain attribute (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Assign boolean values to a bool variable (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1955767] - iommu/io-pgtable: Add a domain attribute for pagetable configuration (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Support coherency for Mali LPAE (Jerry Snitselaar) [1955767] - dma-mapping: document dma_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-direct: simplify the DMA_ATTR_NO_KERNEL_MAPPING handling (Jerry Snitselaar) [1955767] - dma-direct: factor out a dma_direct_alloc_from_pool helper (Jerry Snitselaar) [1955767] - dma-direct check for highmem pages in dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - firewire-ohci: use dma_alloc_pages (Jerry Snitselaar) [1955767] - dma-iommu: implement ->alloc_noncoherent (Jerry Snitselaar) [1955767] - dma-mapping: add new {alloc,free}_noncoherent dma_map_ops methods (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_pages API (Jerry Snitselaar) [1955767] - dma-mapping: add a new dma_alloc_noncoherent API (Jerry Snitselaar) [1955767] - drm/nouveau/gk20a: stop setting DMA_ATTR_NON_CONSISTENT (Jerry Snitselaar) [1955767] - mm: turn alloc_pages into an inline function (Jerry Snitselaar) [1955767] - dma-mapping: better document dma_addr_t and DMA_MAPPING_ERROR (Jerry Snitselaar) [1955767] - dma-mapping: move valid_dma_direction to dma-direction.h (Jerry Snitselaar) [1955767] - dma-debug: convert comma to semicolon (Jerry Snitselaar) [1955767] - dma-direct: Fix potential NULL pointer dereference (Jerry Snitselaar) [1955767] - dma-mapping: move the dma_declare_coherent_memory documentation (Jerry Snitselaar) [1955767] - dma-mapping: move dma_common_{mmap,get_sgtable} out of mapping.c (Jerry Snitselaar) [1955767] - dma-mapping: make support for dma ops optional (Jerry Snitselaar) [1955767] - dma-direct: rename and cleanup __phys_to_dma (Jerry Snitselaar) [1955767] - dma-direct: remove __dma_to_phys (Jerry Snitselaar) [1955767] - dma-direct: use phys_to_dma_direct in dma_direct_alloc (Jerry Snitselaar) [1955767] - dma-direct: lift gfp_t manipulation out of__dma_direct_alloc_pages (Jerry Snitselaar) [1955767] - dma-direct: remove dma_direct_{alloc,free}_pages (Jerry Snitselaar) [1955767] - dma-debug: remove most exports (Jerry Snitselaar) [1955767] - dma-mapping: remove the dma_dummy_ops export (Jerry Snitselaar) [1955767] - dma-mapping: set default segment_boundary_mask to ULONG_MAX (Jerry Snitselaar) [1955767] - dma-mapping: introduce dma_get_seg_boundary_nr_pages() (Jerry Snitselaar) [1955767] - swiotlb: using SIZE_MAX needs limits.h included (Jerry Snitselaar) [1955767] - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb" (Jerry Snitselaar) [1955767] - swiotlb: Mark max_segment with static keyword (Jerry Snitselaar) [1955767] - swiotlb: Declare swiotlb_late_init_with_default_size() in header (Jerry Snitselaar) [1955767] - swiotlb: Use pa to print phys_addr_t variables (Jerry Snitselaar) [1955767] - dma-debug: remove debug_dma_assert_idle() function (Jerry Snitselaar) [1955767] - dma-mapping: move debug configuration options to kernel/dma (Jerry Snitselaar) [1955767] - dma-debug: fix debug_dma_assert_idle(), use rcu_read_lock() (Jerry Snitselaar) [1955767] - iommu: Check return of __iommu_attach_device() (Jerry Snitselaar) [1955767] - iommu/amd: Enforce 4k mapping for certain IOMMU data structures (Jerry Snitselaar) [1955767] - iommu: Fix a check in iommu_check_bind_data() (Jerry Snitselaar) [1955767] - iommu/vt-d: Fix a bug for PDP check in prq_event_thread (Jerry Snitselaar) [1955767] - iommu/vt-d: Check UAPI data processed by IOMMU core (Jerry Snitselaar) [1955767] - iommu/uapi: Handle data and argsz filled by users (Jerry Snitselaar) [1955767] - iommu/uapi: Rename uapi functions (Jerry Snitselaar) [1955767] - iommu/uapi: Use named union for user data (Jerry Snitselaar) [1955767] - iommu/uapi: Add argsz for user filled data (Jerry Snitselaar) [1955767] - docs: IOMMU user API (Jerry Snitselaar) [1955767] - iommu/dma: Handle init_iova_flush_queue() failure in dma-iommu path (Jerry Snitselaar) [1955767] - iommu/iova: Replace cmpxchg with xchg in queue_iova (Jerry Snitselaar) [1955767] - iommu/dma: Remove broken huge page handling (Jerry Snitselaar) [1955767] - iommu: Rename iommu_tlb_* functions to iommu_iotlb_* (Jerry Snitselaar) [1955767] - iommu/vt-d: Use device numa domain if RHSA is missing (Jerry Snitselaar) [1955767] - iommu/vt-d: Drop kerneldoc marker from regular comment (Jerry Snitselaar) [1955767] - iommu/amd: Re-purpose Exclusion range registers to support SNP CWWB (Jerry Snitselaar) [1955767] - iommu/amd: Add support for RMP_PAGE_FAULT and RMP_HW_ERR (Jerry Snitselaar) [1955767] - iommu/amd: Use 4K page for completion wait write-back semaphore (Jerry Snitselaar) [1955767] - iommu/amd: Add missing function prototypes to fix -Wmissing-prototypes (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add SVA device feature (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Check for SVA features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Seize private ASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Share process page tables (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Move definitions to a header (Jerry Snitselaar) [1955767] - iommu/io-pgtable-arm: Move some definitions to a header (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Ensure queue is read after updating prod pointer (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Constify some helpers (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Prepare for the adreno-smmu implementation (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add support for split pagetables (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Pass io-pgtable config to implementation specific function (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix endianness annotations (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: permit users to disable msi polling (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace module_param_named by module_param for disable_bypass (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: replace symbolic permissions by octal permissions for module parameter (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix l1 stream table size in the error message (Jerry Snitselaar) [1955767] - ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Jerry Snitselaar) [1955767] - iommu/amd: Prevent NULL pointer dereference (Jerry Snitselaar) [1955767] - treewide: Use fallthrough pseudo-keyword (Jerry Snitselaar) [1955767] - virtio-iommu: convert to LE accessors (Jerry Snitselaar) [1955767] - virtio_iommu: correct tags for config space fields (Jerry Snitselaar) [1955767] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Jerry Snitselaar) [1955767] - iommu/iova: Unify format of the printed messages (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory (Jerry Snitselaar) [1955767] - iommu/arm-smmu: move TLB timeout and spin count macros (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Call configuration impl hook before consuming features (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Manage ASIDs with xarray (Jerry Snitselaar) [1955767] - redhat/configs: Add CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Break insecure users by disabling bypass by default (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Workaround for Marvell Armada-AP806 SoC erratum #582743 (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Allow client devices to select direct mapping (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Add global/context fault implementation hooks (Jerry Snitselaar) [1955767] - iommu/arm-smmu: add NVIDIA implementation for ARM MMU-500 usage (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Fix trivial typo (Jerry Snitselaar) [1955767] - iommu/arm-smmu: Update impl quirks comment (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Convert to a generic reset implementation (Jerry Snitselaar) [1955767] - iommu: arm-smmu-impl: Add sdm845 implementation hook (Jerry Snitselaar) [1955767] - firmware/qcom_scm: Add scm call to handle smmu errata (Jerry Snitselaar) [1955767] - firmware: qcom_scm-64: Add atomic version of qcom_scm_call (Jerry Snitselaar) [1955767] - firmware: qcom: scm: Ensure 'a0' status code is treated as signed (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Batch context descriptor invalidation (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Write level-1 descriptors atomically (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for PCI PASID (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add second level of context descriptor table (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare for handling arm_smmu_write_ctx_desc() failure (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Propagate ssid_bits (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add support for Substream IDs (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Add context descriptor tables allocators (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Prepare arm_smmu_s1_cfg for SSID support (Jerry Snitselaar) [1955767] - dt-bindings: document PASID property for IOMMU masters (Jerry Snitselaar) [1955767] - iommu/arm-smmu-v3: Don't display an error when IRQ lines are missing (Jerry Snitselaar) [1955767] - selftests: net: add UDP GRO forwarding self-tests (Paolo Abeni) [1948493] - bareudp: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - geneve: allow UDP L4 GRO passthrou (Paolo Abeni) [1948493] - vxlan: allow L4 GRO passthrough (Paolo Abeni) [1948493] - udp: never accept GSO_FRAGLIST packets (Paolo Abeni) [1948493] - udp: properly complete L4 GRO over UDP tunnel packet (Paolo Abeni) [1948493] - udp: skip L4 aggregation for UDP tunnel packets (Paolo Abeni) [1948493] - udp: fixup csum for GSO receive slow path (Paolo Abeni) [1948493] - udp: allow forwarding of plain (non-fraglisted) UDP GRO packets (Paolo Abeni) [1948493] - net: introduce a netdev feature for UDP GRO forwarding (Paolo Abeni) [1948493] - [s390] s390/pkey: support CCA and EP11 secure ECC private keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: Support for CCA APKA master keys (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: remove set_fs() invocation in zcrypt device driver (Claudio Imbrenda) [1780669] - [s390] s390/zcrypt: simplify cca_findcard2 loop code (Claudio Imbrenda) [1780669] - cxgb4: Add new T6 PCI device id 0x6092 (Rahul Lakkireddy) [1950186] - KVM: VMX: Don't use vcpu->run->internal.ndata as an array index (Jon Maloy) [1954219] {CVE-2021-3501} - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_with_rssi_evt() (Gopal Tiwari) [1978598] - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt() (Gopal Tiwari) [1978598] - Bluetooth: Fix slab-out-of-bounds read in hci_extended_inquiry_result_evt() (Gopal Tiwari) [1978598] - x86/cpu: Avoid cpuinfo-induced IPIing of idle CPUs (Waiman Long) [1970499] - x86/cpu: Avoid cpuinfo-induced IPI pileups (Waiman Long) [1970499] - x86/cpu: Disable frequency requests via aperfmperf IPI for nohz_full CPUs (Waiman Long) [1970499] - x86: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Waiman Long) [1970499] - x86/ldt: Enable LDT user-mapping for PAE (Waiman Long) [1970499] - fanotify: fix merging marks masks with FAN_ONDIR (Miklos Szeredi) [1832099] - sfc: avoid duplicated code in ef10_sriov (Íñigo Huguet) [1931779] - sfc: explain that "attached" VFs only refer to Xen (Íñigo Huguet) [1931779] - sfc: error code if SRIOV cannot be disabled (Íñigo Huguet) [1931779] - sfc: avoid double pci_remove of VFs (Íñigo Huguet) [1931779] - tpm: fix error return code in tpm2_get_cc_attrs_tbl() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Reserve locality in tpm_tis_resume() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Extend locality handling to TPM2 in tpm_tis_gen_interrupt() (Jerry Snitselaar) [1920812] - tpm: vtpm_proxy: Avoid reading host log when using a virtual device (Jerry Snitselaar) [1920812] - tpm: acpi: Check eventlog signature before using it (Jerry Snitselaar) [1920812] - tpm: efi: Use local variable for calculating final log size (Jerry Snitselaar) [1920812] - tpm: Remove unintentional dump_stack() call (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality() (Jerry Snitselaar) [1920812] - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality() (Jerry Snitselaar) [1920812] - KEYS: trusted: Reserve TPM for seal and unseal operations (Jerry Snitselaar) [1920812] - tpm/ppi: Constify static struct attribute_group (Jerry Snitselaar) [1920812] - tpm: add sysfs exports for all banks of PCR registers (Jerry Snitselaar) [1920812] - tpm: Remove tpm_dev_wq_lock (Jerry Snitselaar) [1920812] - tpm: Fix fall-through warnings for Clang (Jerry Snitselaar) [1920812] - tpm_tis: Clean up locality release (Jerry Snitselaar) [1920812] - tpm_tis: Disable interrupts on ThinkPad T490s (Jerry Snitselaar) [1920812] - tpm_tis: Fix check_locality for correct locality acquisition (Jerry Snitselaar) [1920812] - fuse: invalidate attrs when page writeback completes (Vivek Goyal) [1966424] - net/sched: act_ct: remove rh_mark_used_feature mark (Marcelo Ricardo Leitner) [1973381] - selftests: netfilter: Pass family parameter "-f" to conntrack tool (Hangbin Liu) [1979203] - selftests: netfilter: remove unused cnt and simplify command testing (Hangbin Liu) [1979203] - selftests: netfilter: fix nft_meta.sh error reporting (Hangbin Liu) [1979203] - selftests: netfilter: add cpu counter check (Hangbin Liu) [1979203] - selftests: netfilter: add meta iif/oif match test (Hangbin Liu) [1979203] - NFS: Only change the cookie verifier if the directory page cache is empty (Benjamin Coddington) [1982825] - NFS: Fix handling of cookie verifier in uncached_readdir() (Benjamin Coddington) [1982825] - nfs: Subsequent READDIR calls should carry non-zero cookieverifier (Benjamin Coddington) [1982825] - Revert "[netdrv] net/mlx5e: Rx, Update page pool numa node when changed" (Alaa Hleihel) [1915308] - mlx5: net: zero-initialize tc skb extension on allocation (Alaa Hleihel) [1915308 1965418] - RDMA/mlx5: Don't add slave port to unaffiliated list (Alaa Hleihel) [1915308] - net/mlx5: Reset mkey index on creation (Alaa Hleihel) [1915308] - net/mlx5e: Don't create devices during unload flow (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv1 incorrect L3 decapsulation padding (Alaa Hleihel) [1915308] - net/mlx5: SF_DEV, remove SF device on invalid state (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Allow setting GUID for host PF vport (Alaa Hleihel) [1915308 1967488] - net/mlx5: E-Switch, Read PF mac address (Alaa Hleihel) [1915308 1967488] - net/mlx5: Check that driver was probed prior attaching the device (Alaa Hleihel) [1915308] - net/mlx5: Fix error path for set HCA defaults (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS device offload in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: Disable TX MPWQE in kdump mode (Alaa Hleihel) [1915308 1946647] - net/mlx5e: kTLS, Add resiliency to RX resync failures (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline function mlx5e_tls_handle_tx_wqe() (Alaa Hleihel) [1915308] - net/mlx5e: TX, Inline TLS skb check (Alaa Hleihel) [1915308] - net/mlx5e: Cleanup unused function parameter (Alaa Hleihel) [1915308] - net/mlx5e: Remove non-essential TLS SQ state bit (Alaa Hleihel) [1915308] - net/mlx5e: Restrict usage of mlx5e_priv in params logic functions (Alaa Hleihel) [1915308] - net/mlx5e: Fix lost changes during code movements (Alaa Hleihel) [1915308] - net/mlx5e: Move params logic into its dedicated file (Alaa Hleihel) [1915308] - net/mlx5e: Pass q_counter indentifier as parameter to rq_param builders (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for GRE tunnel (Alaa Hleihel) [1915308] - net/mlx5e: Block offload of outer header csum for UDP tunnels (Alaa Hleihel) [1915308] - Revert "net/mlx5: Arm only EQs with EQEs" (Alaa Hleihel) [1915308] - net/mlx5e: Verify dev is present in get devlink port ndo (Alaa Hleihel) [1915308] - net/mlx5: DR, Don't use SW steering when RoCE is not supported (Alaa Hleihel) [1915308] - net/mlx5: Consider RoCE cap before init RDMA resources (Alaa Hleihel) [1915308] - net/mlx5e: Fix page reclaim for dead peer hairpin (Alaa Hleihel) [1915308] - net/mlx5e: Remove dependency in IPsec initialization flows (Alaa Hleihel) [1915308] - net/mlx5e: Fix use-after-free of encap entry in neigh update handler (Alaa Hleihel) [1915308] - IB/mlx5: Fix initializing CQ fragments buffer (Alaa Hleihel) [1915308 1974263] - RDMA/mlx5: Block FDB rules when not in switchdev mode (Alaa Hleihel) [1915308] - RDMA/mlx5: Use different doorbell memory for different processes (Alaa Hleihel) [1915308] - net/mlx5: Fix duplicate included vhca_event.h (Alaa Hleihel) [1915308] - net/mlx5: Fix lag port remapping logic (Alaa Hleihel) [1915308] - net/mlx5e: IPsec/rep_tc: Fix rep_tc_update_skb drops IPsec packet (Alaa Hleihel) [1915308] - net/mlx5: DR, Create multi-destination flow table with level less than 64 (Alaa Hleihel) [1915308] - net/mlx5e: Fix adding encap rules to slow path (Alaa Hleihel) [1915308] - net/mlx5e: Check for needed capability for cvlan matching (Alaa Hleihel) [1915308] - net/mlx5: Check firmware sync reset requested is set before trying to abort it (Alaa Hleihel) [1915308] - net/mlx5e: Disable TLS offload for uplink representor (Alaa Hleihel) [1915308] - net/mlx5e: Fix incompatible casting (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query DCT via DEVX (Alaa Hleihel) [1915308] - RDMA/mlx5: Recover from fatal event in dual port mode (Alaa Hleihel) [1915308] - net/mlx5: Set term table as an unmanaged flow table (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path of updating netdev queues (Alaa Hleihel) [1915308] - net/mlx5e: Reject mirroring on source port change encap rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix multipath lag activation (Alaa Hleihel) [1915308] - net/mlx5e: reset XPS on error flow if netdev isn't registered yet (Alaa Hleihel) [1915308] - net/mlx5e: Make sure fib dev exists in fib event (Alaa Hleihel) [1915308] - net/mlx5e: Fix null deref accessing lag dev (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix show state inactive when its inactivated (Alaa Hleihel) [1915308] - net/mlx5: Set reformat action when needed for termination rules (Alaa Hleihel) [1915308] - net/mlx5e: Fix nullptr in add_vlan_push_action() (Alaa Hleihel) [1915308] - {net, RDMA}/mlx5: Fix override of log_max_qp by other device (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix SQ/RQ in doorbell bitmask (Alaa Hleihel) [1915308] - net/mlx5: Fix bit-wise and with zero (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix drop packet rule in egress table (Alaa Hleihel) [1915308] - net/mlx5: Fix spelling mistakes in mlx5_core_info message (Alaa Hleihel) [1915308] - net/mlx5: DR, Fixed typo in STE v0 (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix mlx5 rates to IB rates map (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix query RoCE port (Alaa Hleihel) [1915308] - RDMA/mlx5: Zero out ODP related items in the mlx5_ib_mr (Alaa Hleihel) [1915308] - net/mlx5e: Alloc flow spec using kvzalloc instead of kzalloc (Alaa Hleihel) [1915308] - net/mlx5: Avoid unnecessary operation (Alaa Hleihel) [1915308] - net/mlx5e: rep: Improve reg_cX conditions (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix return type (Alaa Hleihel) [1915308] - net/mlx5e: mlx5_tc_ct_init does not fail (Alaa Hleihel) [1915308] - net/mlx5: Fix indir stable stubs (Alaa Hleihel) [1915308] - net/mlx5e: Add missing include (Alaa Hleihel) [1915308] - net/mlx5e: fix mlx5e_tc_tun_update_header_ipv6 dummy definition (Alaa Hleihel) [1915308] - net/mlx5e: CT, Avoid false lock dependency warning (Alaa Hleihel) [1915308] - net/mlx5: Check returned value from health recover sequence (Alaa Hleihel) [1915308] - net/mlx5: Don't rely on interface state bit (Alaa Hleihel) [1915308] - net/mlx5: Remove second FW tracer check (Alaa Hleihel) [1915308] - net/mlx5: Separate probe vs. reload flows (Alaa Hleihel) [1915308] - net/mlx5: Remove impossible checks of interface state (Alaa Hleihel) [1915308] - net/mlx5: Don't skip vport check (Alaa Hleihel) [1915308] - net/mlx5e: Register nic devlink port for SF ports (Alaa Hleihel) [1915308] - vdpa/mlx5: Retrieve BAR address suitable any function (Alaa Hleihel) [1915308] - vdpa/mlx5: Use the correct dma device when registering memory (Alaa Hleihel) [1915308] - net/mlx5: SF, Extend SF table for additional SF id range (Alaa Hleihel) [1915308] - net/mlx5: SF, Split mlx5_sf_hw_table into two parts (Alaa Hleihel) [1915308] - net/mlx5: SF, Use helpers for allocation and free (Alaa Hleihel) [1915308] - net/mlx5: SF, Consider own vhca events of SF devices (Alaa Hleihel) [1915308] - net/mlx5: SF, Store and use start function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Rely on hw table for SF devlink port allocation (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Consider SF ports of host PF (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Use xarray for vport number to vport and rep mapping (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Prepare to return total vports from eswitch struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Return eswitch max ports when eswitch is supported (Alaa Hleihel) [1915308] - net/mlx5: SF, Reuse stored hardware function id (Alaa Hleihel) [1915308] - net/mlx5: SF, Use device pointer directly (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Initialize eswitch acls ns when eswitch is enabled (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Move legacy code to a individual file (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Convert a macro to a helper routine (Alaa Hleihel) [1915308] - net/mlx5: E-Switch Make cleanup sequence mirror of init (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Make vport number u16 (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Skip querying SF enabled bits (Alaa Hleihel) [1915308] - IB/mlx5: Set right RoCE l3 type and roce version while deleting GID (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: Pair mutex_destory with mutex_init for rate limit table (Alaa Hleihel) [1915308] - net/mlx5: Allocate rate limit table when rate is configured (Alaa Hleihel) [1915308] - net/mlx5: Use helper to increment, decrement rate entry refcount (Alaa Hleihel) [1915308] - net/mlx5: Use helpers to allocate and free rl table entries (Alaa Hleihel) [1915308] - net/mlx5: Do not hold mutex while reading table constants (Alaa Hleihel) [1915308] - net/mlx5: Pack mlx5_rl_entry structure (Alaa Hleihel) [1915308] - net/mlx5: Use unsigned int for free_count (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, move QoS specific fields to existing qos struct (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, cut down mlx5_vport_info structure size by 8 bytes (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, let user to enable disable metadata (Alaa Hleihel) [1915308] - net/mlx5e: TC, Add support to offload sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Handle sampled packets (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Refactor tc update skb function (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler restore handle API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler object API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Add sampler termination table API (Alaa Hleihel) [1915308 1919649] - net/mlx5e: TC, Parse sample action (Alaa Hleihel) [1915308 1919649] - net/mlx5: Instantiate separate mapping objects for FDB and NIC tables (Alaa Hleihel) [1915308 1919649] - net/mlx5: Map register values to restore objects (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Set per vport table default group number (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Generalize per vport table API (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Rename functions to follow naming convention. (Alaa Hleihel) [1915308 1919649] - net/mlx5: E-switch, Move vport table functions to a new file (Alaa Hleihel) [1915308 1919649] - net/mlx5: CT: Add support for mirroring (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, Protect changing mode while adding rules (Alaa Hleihel) [1915308 1790457] - net/mlx5: E-Switch, Change mode lock from mutex to rw semaphore (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Do not reload ethernet ports when changing eswitch mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Unregister eth-reps devices first (Alaa Hleihel) [1915308 1790457] - net/mlx5: Move mlx5e hw resources into a sub object (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Register nic devlink port with switch id (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Verify dev is present in some ndos (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Use nic mode netdev ndos and ethtool ops for uplink representor (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Add offload stats ndos to nic netdev ops (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Distinguish nic and esw offload in tc setup block cb (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Allow legacy vf ndos only if in legacy mode (Alaa Hleihel) [1915308 1790457] - net/mlx5e: Same max num channels for both nic and uplink profiles (Alaa Hleihel) [1915308 1790457] - net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta (Alaa Hleihel) [1915308] - net/mlx5e: Fix setting of RS FEC mode (Alaa Hleihel) [1915308] - net/mlx5: Fix setting of devlink traps in switchdev mode (Alaa Hleihel) [1915308] - net/mlx5: DR, Add missing vhca_id consume from STEv1 (Alaa Hleihel) [1915308] - net/mlx5: fix kfree mismatch in indir_table.c (Alaa Hleihel) [1915308] - net/mlx5: Fix PBMC register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix PPLM register mapping (Alaa Hleihel) [1915308] - net/mlx5: Fix placement of log_max_flow_counter (Alaa Hleihel) [1915308] - net/mlx5: Fix HW spec violation configuring uplink (Alaa Hleihel) [1915308] - net/mlx5e: Guarantee room for XSK wakeup NOP on async ICOSQ (Alaa Hleihel) [1915308] - net/mlx5e: Consider geneve_opts for encap contexts (Alaa Hleihel) [1915308] - net/mlx5: Don't request more than supported EQs (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix RX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Fix TX counters atomicity (Alaa Hleihel) [1915308] - net/mlx5: E-switch, Create vport miss group only if src rewrite is supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Fix ethtool indication of connector type (Alaa Hleihel) [1915308] - net/mlx5: Delete auxiliary bus driver eth-rep first (Alaa Hleihel) [1915308] - net/mlx5e: Fix mapping of ct_label zero (Alaa Hleihel) [1915308] - net/mlx5: SF, do not use ecpu bit for vhca state processing (Alaa Hleihel) [1915308] - net/mlx5e: Fix division by 0 in mlx5e_select_queue (Alaa Hleihel) [1915308] - net/mlx5e: Fix error path for ethtool set-priv-flag (Alaa Hleihel) [1915308] - net/mlx5e: Offload tuple rewrite for non-CT flows (Alaa Hleihel) [1915308] - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1915308] - net/mlx5: Add back multicast stats for uplink representor (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix typo in destroy_mkey inbox (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value in STEv1 getter (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix error flow of SFs allocation flow (Alaa Hleihel) [1915308] - net/mlx5: SF: Fix memory leak of work item (Alaa Hleihel) [1915308] - net/mlx5: SF, Correct vhca context size (Alaa Hleihel) [1915308] - net/mlx5e: E-switch, Fix rate calculation division (Alaa Hleihel) [1915308] - RDMA/mlx5: Fix timestamp default mode (Alaa Hleihel) [1915308] - net/mlx5: Set QP timestamp mode to default (Alaa Hleihel) [1915308] - net/mlx5e: Fix error flow in change profile (Alaa Hleihel) [1915308] - net/mlx5: Disable VF tunnel TX offload if ignore_flow_level isn't supported (Alaa Hleihel) [1915308 1915310] - net/mlx5e: Check correct ip_version in decapsulation route resolution (Alaa Hleihel) [1915308] - net/mlx5: Fix turn-off PPS command (Alaa Hleihel) [1915308] - net/mlx5e: Don't match on Geneve options in case option masks are all zero (Alaa Hleihel) [1915308] - net/mlx5e: Revert parameters on errors when changing PTP state without reset (Alaa Hleihel) [1915308] - net/mlx5e: When changing XDP program without reset, take refs for XSK RQs (Alaa Hleihel) [1915308] - net/mlx5e: Set PTP channel pointer explicitly to NULL (Alaa Hleihel) [1915308] - net/mlx5e: Accumulate port PTP TX stats with other channels stats (Alaa Hleihel) [1915308] - net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets (Alaa Hleihel) [1915308] - net/mlx5e: Enforce minimum value check for ICOSQ size (Alaa Hleihel) [1915308] - RDMA/mlx5: Set correct kernel-doc identifier (Alaa Hleihel) [1915308] - IB/mlx5: Add missing error code (Alaa Hleihel) [1915308] - configs: Enable mlx5 subfunction device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Add cyc2time HW translation mode support (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move some PPS logic into helper functions (Alaa Hleihel) [1915308 1919657] - net/mlx5: Move all internal timer metadata into a dedicated struct (Alaa Hleihel) [1915308 1919657] - net/mlx5: Refactor init clock function (Alaa Hleihel) [1915308 1919657] - net/mlx5: Add register layout to support real-time time-stamp (Alaa Hleihel) [1915308 1919657] - RDMA/mlx5: Fail QP creation if the device can not support the CQE TS (Alaa Hleihel) [1915308] - RDMA/mlx5: Allow CQ creation without attached EQs (Alaa Hleihel) [1915308] - net/mlx5: Add new timestamp mode bits (Alaa Hleihel) [1915308 1919657] - net/mlx5: Remove TLS dependencies on XPS (Alaa Hleihel) [1915308] - net/mlx5: SF, Fix error return code in mlx5_sf_dev_probe() (Alaa Hleihel) [1915308 1851717] - net/mlx5e: Fix error return code in mlx5e_tc_esw_init() (Alaa Hleihel) [1915308 1919647] - net/mlx5: Fix a NULL vs IS_ERR() check (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Fix tc_tun.h to verify MLX5_ESWITCH config (Alaa Hleihel) [1915308 1919647] - net/mlx5: Assign boolean values to a bool variable (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "Unknouwn" -> "Unknown" (Alaa Hleihel) [1915308] - net/mlx5e: Fix spelling mistake "channles" -> "channels" (Alaa Hleihel) [1915308] - net/mlx5: Delete device list leftover (Alaa Hleihel) [1915308] - net/mlx5_core: remove unused including (Alaa Hleihel) [1915308] - net/mlx5: fix spelling mistake in Kconfig "accelaration" -> "acceleration" (Alaa Hleihel) [1915308] - RDMA/mlx5: Support 400Gbps IB rate in mlx5 driver (Alaa Hleihel) [1915308] - RDMA/mlx5: Cleanup the synchronize_srcu() from the ODP flow (Alaa Hleihel) [1915308] - net/mlx5e: Handle FIB events to update tunnel endpoint device (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Rename some encap-specific API to generic names (Alaa Hleihel) [1915308 1919647] - net/mlx5e: TC preparation refactoring for routing update event (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Refactor neigh update infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Create route entry infrastructure (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Extract tc tunnel encap/decap code to dedicated file (Alaa Hleihel) [1915308 1919647] - net/mlx5e: Match recirculated packet miss in slow table using reg_c1 (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor reg_c1 usage (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel RX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Remove redundant match on tunnel destination mac (Alaa Hleihel) [1915308 1919647] - net/mlx5: E-Switch, Indirect table infrastructure (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Refactor tun routing helpers (Alaa Hleihel) [1915308 1919647] - net/mlx5e: VF tunnel TX traffic offloading (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor rule offload forward action processing (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5e: Always set attr mdev pointer (Alaa Hleihel) [1915308 1919647] - net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping (Alaa Hleihel) [1915308 1915310 1919647] - net/mlx5: E-Switch, Refactor setting source port (Alaa Hleihel) [1915308 1915310 1919647] - IB/mlx5: Use rdma_for_each_port for port iteration (Alaa Hleihel) [1915308] - RDMA/core: Introduce and use API to read port immutable data (Alaa Hleihel) [1915308] - IB/mlx5: Improve query port for representor port (Alaa Hleihel) [1915308] - IB/mlx5: Avoid calling query device for reading pkey table length (Alaa Hleihel) [1915308] - IB/mlx5: Move mlx5_port_caps from mlx5_core_dev to mlx5_ib_dev (Alaa Hleihel) [1915308] - IB/mlx5: Support default partition key for representor port (Alaa Hleihel) [1915308] - net/mlx5: DR, Avoid unnecessary csum recalculation on supporting devices (Alaa Hleihel) [1915308] - net/mlx5e: CT: remove useless conversion to PTR_ERR then ERR_PTR (Alaa Hleihel) [1915308] - net/mlx5e: accel, remove redundant space (Alaa Hleihel) [1915308] - net/mlx5e: kTLS, Improve TLS RX workqueue scope (Alaa Hleihel) [1915308] - net/mlx5e: remove h from printk format specifier (Alaa Hleihel) [1915308] - net/mlx5e: Increase indirection RQ table size to 256 (Alaa Hleihel) [1915308] - net/mlx5e: Enable napi in channel's activation stage (Alaa Hleihel) [1915308] - net/mlx5e: Move representor neigh init into profile enable (Alaa Hleihel) [1915308] - net/mlx5e: Avoid false lock depenency warning on tc_ht (Alaa Hleihel) [1915308] - net/mlx5e: Move set vxlan nic info to profile init (Alaa Hleihel) [1915308] - net/mlx5e: Move netif_carrier_off() out of mlx5e_priv_init() (Alaa Hleihel) [1915308] - net/mlx5e: Refactor mlx5e_netdev_init/cleanup to mlx5e_priv_init/cleanup (Alaa Hleihel) [1915308] - net/mxl5e: Add change profile method (Alaa Hleihel) [1915308] - net/mlx5e: Separate between netdev objects and mlx5e profiles initialization (Alaa Hleihel) [1915308] - net/mlx5: DR, Allow SW steering for sw_owner_v2 devices (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Copy all 64B whenever replacing STE in the head of miss-list (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use HW specific logic API when writing STE (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Use the right size when writing partial STE into HW (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 modify header logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 action apply logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add STEv1 setters and getters (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Allow native protocol support for HW STEv1 (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add HW STEv1 match logic (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Add match STEv1 structs to ifc (Alaa Hleihel) [1915308 1851712] - net/mlx5: DR, Fix potential shift wrapping of 32-bit value (Alaa Hleihel) [1915308 1851712] - net/mlx5e: Enable traps according to link state (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to DMAC filter trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add listener to trap event (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add trap entity to ETH driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Expose RX dma info helpers (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering DMAC trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Add flow steering VLAN trap rule (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Optimize promiscuous mode (Alaa Hleihel) [1915308 1919652] - net/mlx5: Notify on trap action by blocking event (Alaa Hleihel) [1915308 1919652] - net/mlx5: Rename events notifier header (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink DMAC filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Register to devlink ingress VLAN filter trap (Alaa Hleihel) [1915308 1919652] - net/mlx5: Add support for devlink traps in mlx5 core driver (Alaa Hleihel) [1915308 1919652] - net/mlx5e: Support HTB offload (Alaa Hleihel) [1915308] - net/mlx5: SF, Port function state change support (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add port add delete functionality (Alaa Hleihel) [1915308 1851717] - net/mlx5: E-switch, Add eswitch helpers for SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: E-switch, Prepare eswitch to handle SF vport (Alaa Hleihel) [1915308 1915310 1851717] - net/mlx5: SF, Add auxiliary device driver (Alaa Hleihel) [1915308 1851717] - net/mlx5: SF, Add auxiliary device support (Alaa Hleihel) [1915308 1851717] - net/mlx5: Introduce vhca state event notifier (Alaa Hleihel) [1915308 1851717] - RDMA/hw/mlx5/qp: Demote non-conformant kernel-doc header (Alaa Hleihel) [1915308] - RDMA/hw/mlx5/odp: Fix formatting and add missing descriptions in 'pagefault_data_segments()' (Alaa Hleihel) [1915308] - IB/mlx5: Make function static (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Remove unnecessary config flag usage (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Inline feature_check fast-path function (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Avoid unreachable return (Alaa Hleihel) [1915308] - net/mlx5e: IPsec, Enclose csum logic under ipsec config (Alaa Hleihel) [1915308] - net/mlx5e: CT: Remove redundant usage of zone mask (Alaa Hleihel) [1915308] - net/mlx5e: Remove redundant initialization to null (Alaa Hleihel) [1915308] - net/mlx5e: CT: Pass null instead of zero spec (Alaa Hleihel) [1915308] - net/mlx5e: E-Switch, Offload all chain 0 priorities when modify header and forward action is not supported (Alaa Hleihel) [1915308] - net/mlx5: E-Switch, use new cap as condition for mpls over udp (Alaa Hleihel) [1915308] - net/mlx5e: Simplify condition on esw_vport_enable_qos() (Alaa Hleihel) [1915308] - net/mlx5: Add HW definition of reg_c_preserve (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 modify header logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE modify header actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 action apply logic (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE tx/rx actions per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 setters and getters (Alaa Hleihel) [1915308] - net/mlx5: DR, Add STE setters and getters per-device API (Alaa Hleihel) [1915308] - net/mlx5: DR, Move action apply logic to dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Refactor ICMP STE builder (Alaa Hleihel) [1915308] - net/mlx5: DR, Move STEv0 look up types from mlx5_ifc_dr header (Alaa Hleihel) [1915308] - net/mlx5: DR, Merge similar DR STE SET macros (Alaa Hleihel) [1915308] - net/mlx5: DR, Fix STEv0 source_eswitch_owner_vhca_id support (Alaa Hleihel) [1915308] - net/mlx5: DR, Remove unused macro definition from dr_ste (Alaa Hleihel) [1915308] - net/mlx5: DR, Move HW STEv0 match logic to a separate file (Alaa Hleihel) [1915308] - net/mlx5: DR, Use the new HW specific STE infrastructure (Alaa Hleihel) [1915308] - net/mlx5: DR, Move macros from dr_ste.c to header (Alaa Hleihel) [1915308] - net/mlx5: DR, Add infrastructure for supporting several steering formats (Alaa Hleihel) [1915308] - ext4: handle read only external journal device (Lukas Czerner) [1860929] - vfio/pci: Handle concurrent vma faults (Alex Williamson) [1976551] - vfio-pci: Use io_remap_pfn_range() for PCI IO memory (Alex Williamson) [1976551] - net: flow_dissector: Parse PTP L2 packet header (Ivan Vecera) [1971687] - net: vlan: Add parse protocol header ops (Ivan Vecera) [1971687] - PCI: hv: Remove bus device removal unused refcount/functions (Mohammed Gamal) [1982482] - PCI: hv: Fix a race condition when removing the device (Mohammed Gamal) [1982482] - RDMA/cxgb4: check for ipv6 address properly while destroying listener (Raju Rangoju) [1961313] - RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening server (Raju Rangoju) [1961313] - RDMA: Convert sysfs device * show functions to use sysfs_emit() (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: Disable delayed ack by default (Raju Rangoju) [1961313] - [infiniband] treewide: Remove uninitialized_var() usage (Raju Rangoju) [1961313] - RDMA/iw_cxgb4: cleanup device debugfs entries on ULD remove (Raju Rangoju) [1961313] - vfs: allow unprivileged whiteout creation (Miklos Szeredi) [1983608] - Documentation: kdump: update kdump guide (Baoquan He) [1938067] - docs: admin-guide: add kdump documentation into it (Baoquan He) [1938067] - docs: kdump: convert docs to ReST and rename to *.rst (Baoquan He) [1938067]- Revert "be2net: disable bh with spin_lock in be_process_mcc" (Petr Oros) [1973504] - nvmet-rdma: Fix NULL deref when SEND is completed with error (Gopal Tiwari) [1959856] - netfilter: nft_exthdr: Search chunks in SCTP packets only (Phil Sutter) [1868228] - netfilter: nft_exthdr: Fix for unsafe packet data read (Phil Sutter) [1868228] - netfilter: nft_exthdr: Support SCTP chunks (Phil Sutter) [1868228] - xfs: fix deadlock retry tracepoint arguments (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_unshare usage of filemap_write_and_wait_range (Bill O'Donnell) [1937116] - xfs: fix return of uninitialized value in variable error (Bill O'Donnell) [1937116] - xfs: fix scrub and remount-ro protection when running scrub (Bill O'Donnell) [1937116] - xfs: fix xfs_trans slab cache name (Bill O'Donnell) [1937116] - xfs: Fix a typo (Bill O'Donnell) [1937116] - xfs: Rudimentary spelling fix (Bill O'Donnell) [1937116] - xfs: Rudimentary typo fixes (Bill O'Donnell) [1937116] - xfs: fix dquot scrub loop cancellation (Bill O'Donnell) [1937116] - xfs: fix uninitialized variables in xrep_calc_ag_resblks (Bill O'Donnell) [1937116] - xfs: fix incorrect root dquot corruption error when switching group/project quota types (Bill O'Donnell) [1937116] - xfs: fix up build warnings when quotas are disabled (Bill O'Donnell) [1937116] - xfs: fix chown leaking delalloc quota blocks when fssetxattr fails (Bill O'Donnell) [1937116] - xfs: Fix assert failure in xfs_setattr_size() (Bill O'Donnell) [1937116] - xfs: fix an ABBA deadlock in xfs_rename (Bill O'Donnell) [1937116 1966609] - xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks (Bill O'Donnell) [1937116] - xfs: fix parent pointer scrubber bailing out on unallocated inodes (Bill O'Donnell) [1937116] - xfs: revert "xfs: fix rmap key and record comparison functions" (Bill O'Donnell) [1937116] - xfs: don't allow NOWAIT DIO across extent boundaries (Bill O'Donnell) [1937116] - xfs: return corresponding errcode if xfs_initialize_perag() fail (Bill O'Donnell) [1937116] - xfs: ensure inobt record walks always make forward progress (Bill O'Donnell) [1937116] - xfs: fix forkoff miscalculation related to XFS_LITINO(mp) (Bill O'Donnell) [1937116] - xfs: directory scrub should check the null bestfree entries too (Bill O'Donnell) [1937116] - xfs: strengthen rmap record flags checking (Bill O'Donnell) [1937116] - xfs: fix the minrecs logic when dealing with inode root child blocks (Bill O'Donnell) [1937116] - xfs: fix a missing unlock on error in xfs_fs_map_blocks (Bill O'Donnell) [1937116] - xfs: fix brainos in the refcount scrubber's rmap fragment processor (Bill O'Donnell) [1937116] - xfs: fix rmap key and record comparison functions (Bill O'Donnell) [1937116] - xfs: set the unwritten bit in rmap lookup flags in xchk_bmap_get_rmapextents (Bill O'Donnell) [1937116] - xfs: fix flags argument to rmap lookup when converting shared file rmaps (Bill O'Donnell) [1937116] - xfs: only flush the unshared range in xfs_reflink_unshare (Bill O'Donnell) [1937116] - xfs: fix scrub flagging rtinherit even if there is no rt device (Bill O'Donnell) [1937116] - xfs: fix missing CoW blocks writeback conversion retry (Bill O'Donnell) [1937116] - xfs: set xefi_discard when creating a deferred agfl free log intent item (Bill O'Donnell) [1937116] - xfs: cancel intents immediately if process_intents fails (Bill O'Donnell) [1937116] - xfs: fix fallocate functions when rtextsize is larger than 1 (Bill O'Donnell) [1937116] - xfs: fix high key handling in the rt allocator's query_range function (Bill O'Donnell) [1937116] - xfs: annotate grabbing the realtime bitmap/summary locks in growfs (Bill O'Donnell) [1937116] - xfs: make xfs_growfs_rt update secondary superblocks (Bill O'Donnell) [1937116] - xfs: fix realtime bitmap/summary file truncation when growing rt volume (Bill O'Donnell) [1937116] - xfs: fix the indent in xfs_trans_mod_dquot (Bill O'Donnell) [1937116] - xfs: do the ASSERT for the arguments O_{u,g,p}dqpp (Bill O'Donnell) [1937116] - xfs: fix deadlock and streamline xfs_getfsmap performance (Bill O'Donnell) [1937116] - xfs: limit entries returned when counting fsmap records (Bill O'Donnell) [1937116] - xfs: only relog deferred intent items if free space in the log gets low (Bill O'Donnell) [1937116] - xfs: expose the log push threshold (Bill O'Donnell) [1937116] - xfs: periodically relog deferred intent items (Bill O'Donnell) [1937116] - xfs: change the order in which child and parent defer ops are finished (Bill O'Donnell) [1937116] - xfs: fix an incore inode UAF in xfs_bui_recover (Bill O'Donnell) [1937116] - xfs: clean up xfs_bui_item_recover iget/trans_alloc/ilock ordering (Bill O'Donnell) [1937116] - xfs: clean up bmap intent item recovery checking (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining transaction reservation (Bill O'Donnell) [1937116] - xfs: xfs_defer_capture should absorb remaining block reservations (Bill O'Donnell) [1937116] - xfs: proper replay of deferred ops queued during log recovery (Bill O'Donnell) [1937116] - xfs: remove XFS_LI_RECOVERED (Bill O'Donnell) [1937116] - xfs: remove xfs_defer_reset (Bill O'Donnell) [1937116] - xfs: fix finobt btree block recovery ordering (Bill O'Donnell) [1937116] - xfs: directly call xfs_generic_create() for ->create() and ->mkdir() (Bill O'Donnell) [1937116] - xfs: avoid shared rmap operations for attr fork extents (Bill O'Donnell) [1937116] - xfs: drop the obsolete comment on filestream locking (Bill O'Donnell) [1937116] - xfs: code cleanup in xfs_attr_leaf_entsize_{remote,local} (Bill O'Donnell) [1937116] - xfs: do the assert for all the log done items in xfs_trans_cancel (Bill O'Donnell) [1937116] - xfs: remove the unused parameter id from xfs_qm_dqattach_one (Bill O'Donnell) [1937116] - xfs: remove the redundant crc feature check in xfs_attr3_rmt_verify (Bill O'Donnell) [1937116] - xfs: fix some comments (Bill O'Donnell) [1937116] - xfs: remove the unnecessary xfs_dqid_t type cast (Bill O'Donnell) [1937116] - xfs: use the existing type definition for di_projid (Bill O'Donnell) [1937116] - xfs: remove the unused SYNCHRONIZE macro (Bill O'Donnell) [1937116] - xfs: clean up calculation of LR header blocks (Bill O'Donnell) [1937116] - xfs: avoid LR buffer overrun due to crafted h_len (Bill O'Donnell) [1937116] - xfs: don't release log intent items when recovery fails (Bill O'Donnell) [1937116] - xfs: attach inode to dquot in xfs_bui_item_recover (Bill O'Donnell) [1937116] - xfs: log new intent items created as part of finishing recovered intent items (Bill O'Donnell) [1937116] - xfs: check dabtree node hash values when loading child blocks (Bill O'Donnell) [1937116] - xfs: don't free rt blocks when we're doing a REMAP bunmapi call (Bill O'Donnell) [1937116] - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files (Bill O'Donnell) [1937116] - xfs: Set xfs_buf type flag when growing summary/bitmap files (Bill O'Donnell) [1937116] - xfs: drop extra transaction roll from inode extent truncate (Bill O'Donnell) [1937116] - xfs: don't propagate RTINHERIT -> REALTIME when there is no rtdev (Bill O'Donnell) [1937116] - xfs: ensure that fpunch, fcollapse, and finsert operations are aligned to rt extent size (Bill O'Donnell) [1937116] - xfs: refactor inode flags propagation code (Bill O'Donnell) [1937116] - xfs: make sure the rt allocator doesn't run off the end (Bill O'Donnell) [1937116] - xfs: Remove unneeded semicolon (Bill O'Donnell) [1937116] - xfs: force the log after remapping a synchronous-writes file (Bill O'Donnell) [1937116] - xfs: Convert xfs_attr_sf macros to inline functions (Bill O'Donnell) [1937116] - xfs: Use variable-size array for nameval in xfs_attr_sf_entry (Bill O'Donnell) [1937116] - xfs: Remove typedef xfs_attr_shortform_t (Bill O'Donnell) [1937116] - xfs: remove typedef xfs_attr_sf_entry_t (Bill O'Donnell) [1937116] - xfs: Remove kmem_zalloc_large() (Bill O'Donnell) [1937116] - xfs: enable big timestamps (Bill O'Donnell) [1937116] - xfs: trace timestamp limits (Bill O'Donnell) [1937116] - xfs: widen ondisk quota expiration timestamps to handle y2038+ (Bill O'Donnell) [1937116] - xfs: widen ondisk inode timestamps to deal with y2038+ (Bill O'Donnell) [1937116] - xfs: redefine xfs_ictimestamp_t (Bill O'Donnell) [1937116] - xfs: redefine xfs_timestamp_t (Bill O'Donnell) [1937116] - xfs: move xfs_log_dinode_to_disk to the log recovery code (Bill O'Donnell) [1937116] - xfs: refactor quota timestamp coding (Bill O'Donnell) [1937116] - xfs: refactor default quota grace period setting code (Bill O'Donnell) [1937116] - xfs: refactor quota expiration timer modification (Bill O'Donnell) [1937116] - xfs: explicitly define inode timestamp range (Bill O'Donnell) [1937116] - xfs: enable new inode btree counters feature (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online repair (Bill O'Donnell) [1937116] - xfs: support inode btree blockcounts in online scrub (Bill O'Donnell) [1937116] - xfs: use the finobt block counts to speed up mount times (Bill O'Donnell) [1937116] - xfs: store inode btree block counts in AGI header (Bill O'Donnell) [1937116] - xfs: reuse _xfs_buf_read for re-reading the superblock (Bill O'Donnell) [1937116] - xfs: remove xfs_getsb (Bill O'Donnell) [1937116] - xfs: simplify xfs_trans_getsb (Bill O'Donnell) [1937116] - xfs: remove xlog_recover_iodone (Bill O'Donnell) [1937116] - xfs: clear the read/write flags later in xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: use xfs_buf_item_relse in xfs_buf_item_done (Bill O'Donnell) [1937116] - xfs: simplify the xfs_buf_ioend_disposition calling convention (Bill O'Donnell) [1937116] - xfs: lift the XBF_IOEND_FAIL handling into xfs_buf_ioend_disposition (Bill O'Donnell) [1937116] - xfs: remove xfs_buf_ioerror_retry (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioerror_fail_without_retry (Bill O'Donnell) [1937116] - xfs: fold xfs_buf_ioend_finish into xfs_ioend (Bill O'Donnell) [1937116] - xfs: move the buffer retry logic to xfs_buf.c (Bill O'Donnell) [1937116] - xfs: refactor xfs_buf_ioend (Bill O'Donnell) [1937116] - xfs: mark xfs_buf_ioend static (Bill O'Donnell) [1937116] - xfs: refactor the buf ioend disposition code (Bill O'Donnell) [1937116] - xfs: xfs_iflock is no longer a completion (Bill O'Donnell) [1937116] - xfs: remove kmem_realloc() (Bill O'Donnell) [1937116] - xfs: don't update mtime on COW faults (Bill O'Donnell) [1937116] - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt files (Bill O'Donnell) [1937116] - xfs: initialize the shortform attr header padding entry (Bill O'Donnell) [1937116] - xfs: fix off-by-one in inode alloc block reservation calculation (Bill O'Donnell) [1937116] - xfs: finish dfops on every insert range shift iteration (Bill O'Donnell) [1937116] - xfs: Fix UBSAN null-ptr-deref in xfs_sysfs_init (Bill O'Donnell) [1937116] - xfs: delete duplicated words + other fixes (Bill O'Donnell) [1937116] - xfs: Lift -ENOSPC handler from xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_node_addname (Bill O'Donnell) [1937116] - xfs: Simplify xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_rmt (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_removename_setup (Bill O'Donnell) [1937116] - xfs: Add remote block helper functions (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_leaf_mark_incomplete (Bill O'Donnell) [1937116] - xfs: Add helpers xfs_attr_is_shortform and xfs_attr_set_shortform (Bill O'Donnell) [1937116] - xfs: Remove xfs_trans_roll in xfs_attr_node_removename (Bill O'Donnell) [1937116] - xfs: Remove unneeded xfs_trans_roll_inode calls (Bill O'Donnell) [1937116] - xfs: Add helper function xfs_attr_node_shrink (Bill O'Donnell) [1937116] - xfs: Pull up xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_rmtval_remove (Bill O'Donnell) [1937116] - xfs: Pull up trans roll in xfs_attr3_leaf_clearflag (Bill O'Donnell) [1937116] - xfs: Factor out xfs_attr_rmtval_invalidate (Bill O'Donnell) [1937116] - xfs: Pull up trans roll from xfs_attr3_leaf_setflag (Bill O'Donnell) [1937116] - xfs: Refactor xfs_attr_try_sf_addname (Bill O'Donnell) [1937116] - xfs: Split apart xfs_attr_leaf_addname (Bill O'Donnell) [1937116] - xfs: Pull up trans handling in xfs_attr3_leaf_flipflags (Bill O'Donnell) [1937116] - xfs: Factor out new helper functions xfs_attr_rmtval_set (Bill O'Donnell) [1937116] - xfs: Check for -ENOATTR or -EEXIST (Bill O'Donnell) [1937116] - xfs: Add xfs_has_attr and subroutines (Bill O'Donnell) [1937116] - xfs: Refactor xfs_da_state_alloc() helper (Bill O'Donnell) [1937116] - xfs: remove xfs_zone_{alloc,zalloc} helpers (Bill O'Donnell) [1937116] - xfs: Modify xlog_ticket_alloc() to use kernel's MM API (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_zalloc() usage (Bill O'Donnell) [1937116] - xfs: Remove kmem_zone_alloc() usage (Bill O'Donnell) [1937116] - xfs: xfs_btree_staging.h: delete duplicated words (Bill O'Donnell) [1937116] - xfs: rename the ondisk dquot d_flags to d_type (Bill O'Donnell) [1937116] - xfs: improve ondisk dquot flags checking (Bill O'Donnell) [1937116] - xfs: create xfs_dqtype_t to represent quota types (Bill O'Donnell) [1937116] - xfs: replace a few open-coded XFS_DQTYPE_REC_MASK uses (Bill O'Donnell) [1937116] - xfs: remove unnecessary quota type masking (Bill O'Donnell) [1937116] - xfs: always use xfs_dquot_type when extracting type from a dquot (Bill O'Donnell) [1937116] - xfs: refactor quota type testing (Bill O'Donnell) [1937116] - xfs: remove the XFS_QM_IS[UGP]DQ macros (Bill O'Donnell) [1937116] - xfs: refactor testing if a particular dquot is being enforced (Bill O'Donnell) [1937116] - xfs: rename XFS_DQ_{USER,GROUP,PROJ} to XFS_DQTYPE_* (Bill O'Donnell) [1937116] - xfs: drop the type parameter from xfs_dquot_verify (Bill O'Donnell) [1937116] - xfs: add more dquot tracepoints (Bill O'Donnell) [1937116] - xfs: actually bump warning counts when we send warnings (Bill O'Donnell) [1937116] - xfs: assume the default quota limits are always set in xfs_qm_adjust_dqlimits (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_apply_dquot_deltas (Bill O'Donnell) [1937116] - xfs: refactor xfs_trans_dqresv (Bill O'Donnell) [1937116] - xfs: refactor xfs_qm_scall_setqlim (Bill O'Donnell) [1937116] - xfs: refactor quota exceeded test (Bill O'Donnell) [1937116] - xfs: remove unnecessary arguments from quota adjust functions (Bill O'Donnell) [1937116] - xfs: refactor default quota limits by resource (Bill O'Donnell) [1937116] - xfs: remove qcore from incore dquots (Bill O'Donnell) [1937116] - xfs: stop using q_core timers in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core warning counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core counters in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core limits in the quota code (Bill O'Donnell) [1937116] - xfs: use a per-resource struct for incore dquot data (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_id in the quota code (Bill O'Donnell) [1937116] - xfs: stop using q_core.d_flags in the quota code (Bill O'Donnell) [1937116] - xfs: make XFS_DQUOT_CLUSTER_SIZE_FSB part of the ondisk format (Bill O'Donnell) [1937116] - xfs: rename dquot incore state flags (Bill O'Donnell) [1937116] - xfs: refactor quotacheck flags usage (Bill O'Donnell) [1937116] - xfs: move the flags argument of xfs_qm_scall_trunc_qfiles to XFS_QMOPT_* (Bill O'Donnell) [1937116] - xfs: validate ondisk/incore dquot flags (Bill O'Donnell) [1937116] - xfs: fix inode quota reservation checks (Bill O'Donnell) [1937116] - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush (Bill O'Donnell) [1937116] - xfs: drain the buf delwri queue before xfsaild idles (Bill O'Donnell) [1937116] - xfs: remove duplicated include from xfs_buf_item.c (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT and SYNC_TRYLOCK (Bill O'Donnell) [1937116] - xfs: get rid of unnecessary xfs_perag_{get,put} pairs (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should check inode size (Bill O'Donnell) [1937116] - xfs: rtbitmap scrubber should verify written extents (Bill O'Donnell) [1937116] - xfs: remove xfs_inobp_check() (Bill O'Donnell) [1937116] - xfs: factor xfs_iflush_done (Bill O'Donnell) [1937116] - xfs: rework xfs_iflush_cluster() dirty inode iteration (Bill O'Donnell) [1937116] - xfs: rename xfs_iflush_int() (Bill O'Donnell) [1937116] - xfs: xfs_iflush() is no longer necessary (Bill O'Donnell) [1937116] - xfs: attach inodes to the cluster buffer when dirtied (Bill O'Donnell) [1937116] - xfs: rework stale inodes in xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: clean up inode reclaim comments (Bill O'Donnell) [1937116] - xfs: remove SYNC_WAIT from xfs_reclaim_inodes() (Bill O'Donnell) [1937116] - xfs: remove SYNC_TRYLOCK from inode reclaim (Bill O'Donnell) [1937116] - xfs: don't block inode reclaim on the ILOCK (Bill O'Donnell) [1937116] - xfs: allow multiple reclaimers per AG (Bill O'Donnell) [1937116] - xfs: remove IO submission from xfs_reclaim_inode() (Bill O'Donnell) [1937116] - xfs: make inode reclaim almost non-blocking (Bill O'Donnell) [1937116] - xfs: pin inode backing buffer to the inode log item (Bill O'Donnell) [1937116] - xfs: move xfs_clear_li_failed out of xfs_ail_delete_one() (Bill O'Donnell) [1937116] - xfs: unwind log item error flagging (Bill O'Donnell) [1937116] - xfs: handle buffer log item IO errors directly (Bill O'Donnell) [1937116] - xfs: get rid of log item callbacks (Bill O'Donnell) [1937116] - xfs: clean up the buffer iodone callback functions (Bill O'Donnell) [1937116] - xfs: use direct calls for dquot IO completion (Bill O'Donnell) [1937116] - xfs: make inode IO completion buffer centric (Bill O'Donnell) [1937116] - xfs: clean up whacky buffer log item list reinit (Bill O'Donnell) [1937116] - xfs: call xfs_buf_iodone directly (Bill O'Donnell) [1937116] - xfs: mark log recovery buffers for completion (Bill O'Donnell) [1937116] - xfs: mark dquot buffers in cache (Bill O'Donnell) [1937116] - xfs: mark inode buffers in cache (Bill O'Donnell) [1937116] - xfs: add an inode item lock (Bill O'Donnell) [1937116] - xfs: remove logged flag from inode log item (Bill O'Donnell) [1937116] - xfs: Don't allow logging of XFS_ISTALE inodes (Bill O'Donnell) [1937116] - xfs: remove useless definitions in xfs_linux.h (Bill O'Donnell) [1937116] - xfs: use MMAPLOCK around filemap_map_pages() (Bill O'Donnell) [1937116] - xfs: move helpers that lock and unlock two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: refactor locking and unlocking two inodes against userspace IO (Bill O'Donnell) [1937116] - xfs: fix xfs_reflink_remap_prep calling conventions (Bill O'Donnell) [1937116] - xfs: reflink can skip remap existing mappings (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks if we're mapping into a hole (Bill O'Donnell) [1937116] - xfs: only reserve quota blocks for bmbt changes if we're changing the data fork (Bill O'Donnell) [1937116] - xfs: redesign the reflink remap loop to fix blkres depletion crash (Bill O'Donnell) [1937116] - xfs: rename xfs_bmap_is_real_extent to is_written_extent (Bill O'Donnell) [1937116] - xfs: Couple of typo fixes in comments (Bill O'Donnell) [1937116] - xfs: fix use-after-free on CIL context on shutdown (Bill O'Donnell) [1937116] - xfs: flag files as supporting buffered async reads (Bill O'Donnell) [1937116] - fs: add FMODE_BUF_RASYNC (Bill O'Donnell) [1937116] - xfs: more lockdep whackamole with kmem_alloc* (Bill O'Donnell) [1937116 1965923] - xfs: rearrange xfs_inode_walk_ag parameters (Bill O'Donnell) [1937116] - xfs: straighten out all the naming around incore inode tree walks (Bill O'Donnell) [1937116] - xfs: move xfs_inode_ag_iterator to be closer to the perag walking code (Bill O'Donnell) [1937116] - xfs: use bool for done in xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: fix inode ag walk predicate function return values (Bill O'Donnell) [1937116] - xfs: refactor eofb matching into a single helper (Bill O'Donnell) [1937116] - xfs: remove __xfs_icache_free_eofblocks (Bill O'Donnell) [1937116] - xfs: remove flags argument from xfs_inode_ag_walk (Bill O'Donnell) [1937116] - xfs: remove xfs_inode_ag_iterator_flags (Bill O'Donnell) [1937116] - xfs: remove unused xfs_inode_ag_iterator function (Bill O'Donnell) [1937116] - xfs: replace open-coded XFS_ICI_NO_TAG (Bill O'Donnell) [1937116] - xfs: move eofblocks conversion function to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: remove the m_active_trans counter (Bill O'Donnell) [1937116] - xfs: separate read-only variables in struct xfs_mount (Bill O'Donnell) [1937116] - xfs: reduce free inode accounting overhead (Bill O'Donnell) [1937116] - xfs: gut error handling in xfs_trans_unreserve_and_mod_sb() (Bill O'Donnell) [1937116] - xfs: cleanup xfs_idestroy_fork (Bill O'Donnell) [1937116] - xfs: move the fork format fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: move the per-fork nextents fields into struct xfs_ifork (Bill O'Donnell) [1937116] - xfs: remove xfs_ifree_local_data (Bill O'Donnell) [1937116] - xfs: remove the XFS_DFORK_Q macro (Bill O'Donnell) [1937116] - xfs: clean up xchk_bmap_check_rmaps usage of XFS_IFORK_Q (Bill O'Donnell) [1937116] - xfs: remove the NULL fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: remove the special COW fork handling in xfs_bmapi_read (Bill O'Donnell) [1937116] - xfs: improve local fork verification (Bill O'Donnell) [1937116] - xfs: refactor xfs_inode_verify_forks (Bill O'Donnell) [1937116] - xfs: remove xfs_ifork_ops (Bill O'Donnell) [1937116] - xfs: remove xfs_iread (Bill O'Donnell) [1937116] - xfs: don't reset i_delayed_blks in xfs_iread (Bill O'Donnell) [1937116] - xfs: call xfs_dinode_verify from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: handle unallocated inodes in xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: split xfs_iformat_fork (Bill O'Donnell) [1937116] - xfs: call xfs_iformat_fork from xfs_inode_from_disk (Bill O'Donnell) [1937116] - xfs: xfs_bmapi_read doesn't take a fork id as the last argument (Bill O'Donnell) [1937116] - xfs: fix the warning message in xfs_validate_sb_common() (Bill O'Donnell) [1937116] - xfs: don't allow SWAPEXT if we'd screw up quota accounting (Bill O'Donnell) [1937116] - xfs: use ordered buffers to initialize dquot buffers during quotacheck (Bill O'Donnell) [1937116] - xfs: don't fail verifier on empty attr3 leaf block (Bill O'Donnell) [1937116] - xfs: Use the correct style for SPDX License Identifier (Bill O'Donnell) [1937116] - xfs: Replace zero-length array with flexible-array (Bill O'Donnell) [1937116] - xfs: ensure f_bfree returned by statfs() is non-negative (Bill O'Donnell) [1937116] - xfs: remove duplicate headers (Bill O'Donnell) [1937116] - xfs: fix unused variable warning in buffer completion on !DEBUG (Bill O'Donnell) [1937116] - xfs: remove unnecessary includes from xfs_log_recover.c (Bill O'Donnell) [1937116] - xfs: move log recovery buffer cancellation code to xfs_buf_item_recover.c (Bill O'Donnell) [1937116] - xfs: hoist setting of XFS_LI_RECOVERED to caller (Bill O'Donnell) [1937116] - xfs: refactor intent item iop_recover calls (Bill O'Donnell) [1937116] - xfs: refactor intent item RECOVERED flag into the log item (Bill O'Donnell) [1937116] - xfs: refactor adding recovered intent items to the log (Bill O'Donnell) [1937116] - xfs: refactor releasing finished intents during log recovery (Bill O'Donnell) [1937116] - xfs: refactor xlog_item_is_intent now that we're done converting (Bill O'Donnell) [1937116] - xfs: refactor recovered BUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered CUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered RUI log item playback (Bill O'Donnell) [1937116] - xfs: refactor recovered EFI log item playback (Bill O'Donnell) [1937116] - xfs: remove log recovery quotaoff item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery BUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery CUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery RUI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery EFI item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery icreate item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery dquot item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery inode item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery buffer item dispatch for pass2 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass1 commit functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item dispatch for pass2 readhead functions (Bill O'Donnell) [1937116] - xfs: refactor log recovery item sorting into a generic dispatch structure (Bill O'Donnell) [1937116] - xfs: convert xfs_log_recover_item_t to struct xfs_log_recover_item (Bill O'Donnell) [1937116] - xfs: remove unused iget_flags param from xfs_imap_to_bp() (Bill O'Donnell) [1937116] - xfs: remove unused shutdown types (Bill O'Donnell) [1937116] - xfs: random buffer write failure errortag (Bill O'Donnell) [1937116] - xfs: remove unused iflush stale parameter (Bill O'Donnell) [1937116] - xfs: combine xfs_trans_ail_[remove|delete]() (Bill O'Donnell) [1937116] - xfs: drop unused shutdown parameter from xfs_trans_ail_remove() (Bill O'Donnell) [1937116] - xfs: use delete helper for items expected to be in AIL (Bill O'Donnell) [1937116] - xfs: acquire ->ail_lock from xfs_trans_ail_delete() (Bill O'Donnell) [1937116] - xfs: abort consistently on dquot flush failure (Bill O'Donnell) [1937116] - xfs: ratelimit unmount time per-buffer I/O error alert (Bill O'Donnell) [1937116] - xfs: refactor ratelimited buffer error messages into helper (Bill O'Donnell) [1937116] - xfs: reset buffer write failure state on successful completion (Bill O'Donnell) [1937116] - xfs: remove unnecessary shutdown check from xfs_iflush() (Bill O'Donnell) [1937116] - xfs: simplify inode flush error handling (Bill O'Donnell) [1937116] - xfs: factor out buffer I/O failure code (Bill O'Donnell) [1937116] - xfs: refactor failed buffer resubmission into xfsaild (Bill O'Donnell) [1937116] - xfs: spell out the parameter name for ->cancel_item (Bill O'Donnell) [1937116] - xfs: use a xfs_btree_cur for the ->finish_cleanup state (Bill O'Donnell) [1937116] - xfs: turn dfp_done into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: refactor xfs_defer_finish_noroll (Bill O'Donnell) [1937116] - xfs: turn dfp_intent into a xfs_log_item (Bill O'Donnell) [1937116] - xfs: merge the ->diff_items defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: merge the ->log_item defer op into ->create_intent (Bill O'Donnell) [1937116] - xfs: factor out a xfs_defer_create_intent helper (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efd_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: remove the xfs_efi_log_item_t typedef (Bill O'Donnell) [1937116] - xfs: refactor xlog_recover_buffer_pass1 (Bill O'Donnell) [1937116] - xfs: simplify xlog_recover_inode_ra_pass2 (Bill O'Donnell) [1937116] - xfs: factor out a xlog_buf_readahead helper (Bill O'Donnell) [1937116] - xfs: rename inode_list xlog_recover_reorder_trans (Bill O'Donnell) [1937116] - xfs: refactor the buffer cancellation table helpers (Bill O'Donnell) [1937116] - xfs: define printk_once variants for xfs messages (Bill O'Donnell) [1937116] - xfs: stop CONFIG_XFS_DEBUG from changing compiler flags (Bill O'Donnell) [1937116] - xfs: remove unnecessary check of the variable resblks in xfs_symlink (Bill O'Donnell) [1937116] - xfs: simplify the flags setting in xfs_qm_scall_quotaon (Bill O'Donnell) [1937116] - xfs: remove unnecessary assertion from xfs_qm_vop_create_dqattach (Bill O'Donnell) [1937116] - xfs: remove unnecessary variable udqp from xfs_ioctl_setattr (Bill O'Donnell) [1937116] - xfs: reserve quota inode transaction space only when needed (Bill O'Donnell) [1937116] - xfs: combine two if statements with same condition (Bill O'Donnell) [1937116] - xfs: trace quota allocations for all quota types (Bill O'Donnell) [1937116] - xfs: report unrecognized log item type codes during recovery (Bill O'Donnell) [1937116] - xfs: move inode flush to the sync workqueue (Bill O'Donnell) [1937116] - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent (Bill O'Donnell) [1937116] - xfs: fix inode number overflow in ifree cluster helper (Bill O'Donnell) [1937116] - xfs: remove redundant variable assignment in xfs_symlink() (Bill O'Donnell) [1937116] - xfs: ratelimit inode flush on buffered write ENOSPC (Bill O'Donnell) [1937116] - xfs: return locked status of inode buffer on xfsaild push (Bill O'Donnell) [1937116] - xfs: trylock underlying buffer on dquot flush (Bill O'Donnell) [1937116] - xfs: remove unnecessary ternary from xfs_create (Bill O'Donnell) [1937116] - xfs: don't write a corrupt unmount record to force summary counter recalc (Bill O'Donnell) [1937116] - xfs: factor inode lookup from xfs_ifree_cluster (Bill O'Donnell) [1937116] - xfs: tail updates only need to occur when LSN changes (Bill O'Donnell) [1937116] - xfs: factor common AIL item deletion code (Bill O'Donnell) [1937116] - xfs: correctly acount for reclaimable slabs (Bill O'Donnell) [1937116] - xfs: Improve metadata buffer reclaim accountability (Bill O'Donnell) [1937116] - xfs: don't allow log IO to be throttled (Bill O'Donnell) [1937116] - xfs: Throttle commits on delayed background CIL push (Bill O'Donnell) [1937116] - xfs: Lower CIL flush limit for large logs (Bill O'Donnell) [1937116] - xfs: remove some stale comments from the log code (Bill O'Donnell) [1937116] - xfs: refactor unmount record writing (Bill O'Donnell) [1937116] - xfs: merge xlog_commit_record with xlog_write_done (Bill O'Donnell) [1937116] - xfs: split xlog_ticket_done (Bill O'Donnell) [1937116] - xfs: kill XLOG_TIC_INITED (Bill O'Donnell) [1937116] - xfs: refactor and split xfs_log_done() (Bill O'Donnell) [1937116] - xfs: re-order initial space accounting checks in xlog_write (Bill O'Donnell) [1937116] - xfs: don't try to write a start record into every iclog (Bill O'Donnell) [1937116] - xfs: validate the realtime geometry in xfs_validate_sb_common (Bill O'Donnell) [1937116] - xfs: shutdown on failure to add page to log bio (Bill O'Donnell) [1937116] - xfs: directory bestfree check should release buffers (Bill O'Donnell) [1937116] - xfs: drop all altpath buffers at the end of the sibling check (Bill O'Donnell) [1937116] - xfs: remove xlog_state_want_sync (Bill O'Donnell) [1937116] - xfs: move the ioerror check out of xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: refactor xlog_state_clean_iclog (Bill O'Donnell) [1937116] - xfs: remove the aborted parameter to xlog_state_done_syncing (Bill O'Donnell) [1937116] - xfs: simplify log shutdown checking in xfs_log_release_iclog (Bill O'Donnell) [1937116] - xfs: simplify the xfs_log_release_iclog calling convention (Bill O'Donnell) [1937116] - xfs: factor out a xlog_wait_on_iclog helper (Bill O'Donnell) [1937116] - xfs: merge xlog_cil_push into xlog_cil_push_work (Bill O'Donnell) [1937116] - xfs: remove the di_version field from struct icdinode (Bill O'Donnell) [1937116] - xfs: simplify a check in xfs_ioctl_setattr_check_cowextsize (Bill O'Donnell) [1937116] - xfs: simplify di_flags2 inheritance in xfs_ialloc (Bill O'Donnell) [1937116] - xfs: only check the superblock version for dinode size calculation (Bill O'Donnell) [1937116] - xfs: add a new xfs_sb_version_has_v3inode helper (Bill O'Donnell) [1937116] - xfs: add support for rmap btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for refcount btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for inode btree staging cursors (Bill O'Donnell) [1937116] - xfs: add support for free space btree staging cursors (Bill O'Donnell) [1937116] - xfs: support bulk loading of staged btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for inode-rooted btrees (Bill O'Donnell) [1937116] - xfs: introduce fake roots for ag-rooted btrees (Bill O'Donnell) [1937116] - xfs: replace open-coded bitmap weight logic (Bill O'Donnell) [1937116] - xfs: rename xfs_bitmap to xbitmap (Bill O'Donnell) [1937116] - xfs: xrep_reap_extents should not destroy the bitmap (Bill O'Donnell) [1937116] - xfs: cleanup xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove dead code from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused return value from xfs_log_unmount_write (Bill O'Donnell) [1937116] - xfs: remove the unused XLOG_UNMOUNT_REC_TYPE define (Bill O'Donnell) [1937116] - xfs: mark XLOG_FORCED_SHUTDOWN as unlikely (Bill O'Donnell) [1937116] - xfs: make the btree ag cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: make the btree cursor union members named structure (Bill O'Donnell) [1937116] - xfs: make btree cursor private union anonymous (Bill O'Donnell) [1937116] - xfs: rename btree cursor private btree member flags (Bill O'Donnell) [1937116] - xfs: convert btree cursor inode-private member names (Bill O'Donnell) [1937116] - xfs: convert btree cursor ag-private member name (Bill O'Donnell) [1937116] - xfs: introduce new private btree cursor names (Bill O'Donnell) [1937116] - xfs: Use scnprintf() for avoiding potential buffer overflow (Bill O'Donnell) [1937116] - xfs: mark extended attr corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: mark dir corrupt when lookup-by-hash fails (Bill O'Donnell) [1937116] - xfs: check owner of dir3 blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 data blocks (Bill O'Donnell) [1937116] - xfs: check owner of dir3 free blocks (Bill O'Donnell) [1937116] - xfs: fix buffer corruption reporting when xfs_dir3_free_header_check fails (Bill O'Donnell) [1937116] - xfs: xfs_buf_corruption_error should take __this_address (Bill O'Donnell) [1937116] - xfs: add a function to deal with corrupt buffers post-verifiers (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_SBP (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGF (Bill O'Donnell) [1937116] - xfs: remove XFS_BUF_TO_AGI (Bill O'Donnell) [1937116] - xfs: remove the xfs_agfl_t typedef (Bill O'Donnell) [1937116] - xfs: remove the agfl_bno member from struct xfs_agfl (Bill O'Donnell) [1937116] - xfs: switch xfs_attrmulti_attr_get to lazy attr buffer allocation (Bill O'Donnell) [1937116] - xfs: only allocate the buffer size actually needed in __xfs_set_acl (Bill O'Donnell) [1937116] - xfs: clean up bufsize alignment in xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: embedded the attrlist cursor into struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: remove XFS_DA_OP_INCOMPLETE (Bill O'Donnell) [1937116] - xfs: clean up the attr flag confusion (Bill O'Donnell) [1937116] - xfs: clean up the ATTR_REPLACE checks (Bill O'Donnell) [1937116] - xfs: improve xfs_forget_acl (Bill O'Donnell) [1937116] - xfs: lift cursor copy in/out into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift buffer allocation into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: lift common checks into xfs_ioc_attr_list (Bill O'Donnell) [1937116] - xfs: rename xfs_attr_list_int to xfs_attr_list (Bill O'Donnell) [1937116] - xfs: move the legacy xfs_attr_list to xfs_ioctl.c (Bill O'Donnell) [1937116] - xfs: open code ATTR_ENTSIZE (Bill O'Donnell) [1937116] - xfs: remove the unused ATTR_ENTRY macro (Bill O'Donnell) [1937116] - xfs: cleanup struct xfs_attr_list_context (Bill O'Donnell) [1937116] - xfs: factor out a xfs_attr_match helper (Bill O'Donnell) [1937116] - xfs: replace ATTR_KERNOTIME with XFS_DA_OP_NOTIME (Bill O'Donnell) [1937116] - xfs: remove ATTR_ALLOC and XFS_DA_OP_ALLOCVAL (Bill O'Donnell) [1937116] - xfs: remove ATTR_KERNOVAL (Bill O'Donnell) [1937116] - xfs: remove the xfs_inode argument to xfs_attr_get_ilocked (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args to xfs_attr_get (Bill O'Donnell) [1937116] - xfs: pass an initialized xfs_da_args structure to xfs_attr_set (Bill O'Donnell) [1937116] - xfs: turn xfs_da_args.value into a void pointer (Bill O'Donnell) [1937116] - xfs: remove the MAXNAMELEN check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: remove the name == NULL check from xfs_attr_args_init (Bill O'Donnell) [1937116] - xfs: factor out a helper for a single XFS_IOC_ATTRMULTI_BY_HANDLE op (Bill O'Donnell) [1937116] - xfs: use strndup_user in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: merge xfs_attrmulti_attr_remove into xfs_attrmulti_attr_set (Bill O'Donnell) [1937116] - xfs: merge xfs_attr_remove into xfs_attr_set (Bill O'Donnell) [1937116] - xfs: remove the ATTR_INCOMPLETE flag (Bill O'Donnell) [1937116] - xfs: reject invalid flags combinations in XFS_IOC_ATTRLIST_BY_HANDLE (Bill O'Donnell) [1937116] - xfs: rework collapse range into an atomic operation (Bill O'Donnell) [1937116] - xfs: rework insert range into an atomic operation (Bill O'Donnell) [1937116] - xfs: open code insert range extent split helper (Bill O'Donnell) [1937116] - xfs: Add missing annotation to xfs_ail_check() (Bill O'Donnell) [1937116] - xfs: fix an undefined behaviour in _da3_path_shift (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_discard_page messages (Bill O'Donnell) [1937116] - xfs: ratelimit xfs_buf_ioerror_alert messages (Bill O'Donnell) [1937116] - xfs: remove the kuid/kgid conversion wrappers (Bill O'Donnell) [1937116] - xfs: remove the icdinode di_uid/di_gid members (Bill O'Donnell) [1937116] - xfs: ensure that the inode uid/gid match values match the icdinode ones (Bill O'Donnell) [1937116] - xfs: improve error message when we can't allocate memory for xfs_buf (Bill O'Donnell) [1937116] - ceph: fix test for whether we can skip read when writing beyond EOF (Jeff Layton) [1971101] - redhat/configs: Add CONFIG_X86_SGX_KVM (Bandan Das) [1494649] - KVM: x86: Fix implicit enum conversion goof in scattered reverse CPUID code (Bandan Das) [1494649] - KVM: x86: Add capability to grant VM access to privileged SGX attribute (Bandan Das) [1494649] - KVM: VMX: Enable SGX virtualization for SGX1, SGX2 and LC (Bandan Das) [1494649] - KVM: VMX: Add ENCLS[EINIT] handler to support SGX Launch Control (LC) (Bandan Das) [1494649] - KVM: VMX: Add emulation of SGX Launch Control LE hash MSRs (Bandan Das) [1494649] - KVM: VMX: Add SGX ENCLS[ECREATE] handler to enforce CPUID restrictions (Bandan Das) [1494649] - KVM: VMX: Frame in ENCLS handler for SGX virtualization (Bandan Das) [1494649] - KVM: VMX: Add basic handling of VM-Exit from SGX enclave (Bandan Das) [1494649] - KVM: x86: Add reverse-CPUID lookup support for scattered SGX features (Bandan Das) [1494649] - KVM: x86: Add support for reverse CPUID lookup of scattered features (Bandan Das) [1494649] - KVM: x86: Define new #PF SGX error code bit (Bandan Das) [1494649] - KVM: x86: Export kvm_mmu_gva_to_gpa_{read,write}() for SGX (VMX) (Bandan Das) [1494649] - x86/sgx: Mark sgx_vepc_vm_ops static (Bandan Das) [1494649] - x86/sgx: Do not update sgx_nr_free_pages in sgx_setup_epc_section() (Bandan Das) [1494649] - x86/sgx: Move provisioning device creation out of SGX driver (Bandan Das) [1494649] - x86/sgx: Add helpers to expose ECREATE and EINIT to KVM (Bandan Das) [1494649] - x86/sgx: Add helper to update SGX_LEPUBKEYHASHn MSRs (Bandan Das) [1494649] - x86/sgx: Add encls_faulted() helper (Bandan Das) [1494649] - x86/sgx: Add SGX2 ENCLS leaf definitions (EAUG, EMODPR and EMODT) (Bandan Das) [1494649] - x86/sgx: Move ENCLS leaf definitions to sgx.h (Bandan Das) [1494649] - x86/sgx: Expose SGX architectural definitions to the kernel (Bandan Das) [1494649] - x86/sgx: Initialize virtual EPC driver even when SGX driver is disabled (Bandan Das) [1494649] - x86/cpu/intel: Allow SGX virtualization without Launch Control support (Bandan Das) [1494649] - x86/sgx: Introduce virtual EPC for use by KVM guests (Bandan Das) [1494649] - x86/sgx: Add SGX_CHILD_PRESENT hardware error code (Bandan Das) [1494649] - x86/sgx: Wipe out EREMOVE from sgx_free_epc_page() (Bandan Das) [1494649] - x86/cpufeatures: Add SGX1 and SGX2 sub-features (Bandan Das) [1494649] - x86/cpufeatures: Make SGX_LC feature bit depend on SGX bit (Bandan Das) [1494649] - x86/sgx: Remove unnecessary kmap() from sgx_ioc_enclave_init() (Bandan Das) [1494649] - selftests/sgx: Use getauxval() to simplify test code (Bandan Das) [1494649] - selftests/sgx: Improve error detection and messages (Bandan Das) [1494649] - x86/sgx: Add a basic NUMA allocation scheme to sgx_alloc_epc_page() (Bandan Das) [1494649] - x86/sgx: Replace section->init_laundry_list with sgx_dirty_page_list (Bandan Das) [1494649] - x86/sgx: Maintain encl->refcount for each encl->mm_list entry (Bandan Das) [1494649] - MAINTAINERS: Add Dave Hansen as reviewer for INTEL SGX (Bandan Das) [1494649] - x86/NUMA: Provide a range-to-target_node lookup facility (Bandan Das) [1494649] - x86/mm: Introduce CONFIG_NUMA_KEEP_MEMINFO (Bandan Das) [1494649] - configs: Enable CONFIG_MLXBF_GIGE on aarch64 (Alaa Hleihel) [1803489] - Add Mellanox BlueField Gigabit Ethernet driver (Alaa Hleihel) [1803489] - integrity: Use current_uid() in integrity_audit_message() (Richard Guy Briggs) [1957052] - ima: AppArmor satisfies the audit rule requirements (Richard Guy Briggs) [1957052] - IMA: Add audit log for failure conditions (Richard Guy Briggs) [1957052] - integrity: Add errno field in audit message (Richard Guy Briggs) [1957052] - audit: add blank line after variable declarations (Richard Guy Briggs) [1957052] - audit: drop /proc/PID/loginuid documentation Format field (Richard Guy Briggs) [1957052] - audit: avoid -Wempty-body warning (Richard Guy Briggs) [1957052] - audit: document /proc/PID/sessionid (Richard Guy Briggs) [1957052] - audit: document /proc/PID/loginuid (Richard Guy Briggs) [1957052] - MAINTAINERS: update audit files (Richard Guy Briggs) [1957052] - audit: further cleanup of AUDIT_FILTER_ENTRY deprecation (Richard Guy Briggs) [1957052] - netfilter: nftables: fix a warning message in nf_tables_commit_audit_collect() (Richard Guy Briggs) [1957052] - audit: log nftables configuration change events once per table (Richard Guy Briggs) [1957052] - audit_alloc_mark(): don't open-code ERR_CAST() (Richard Guy Briggs) [1957052] - make dump_common_audit_data() safe to be called from RCU pathwalk (Richard Guy Briggs) [1957052] - new helper: d_find_alias_rcu() (Richard Guy Briggs) [1957052] - audit: Make audit_filter_syscall() return void (Richard Guy Briggs) [1957052] - audit: Remove leftover reference to the audit_tasklet (Richard Guy Briggs) [1957052] - kernel/audit: convert comma to semicolon (Richard Guy Briggs) [1957052] - dump_common_audit_data(): fix racy accesses to ->d_name (Richard Guy Briggs) [1957052] - audit: replace atomic_add_return() (Richard Guy Briggs) [1957052] - x86/audit: Fix a -Wmissing-prototypes warning for ia32_classify_syscall() (Richard Guy Briggs) [1957052] - ethtool: fix kdoc attr name (Ivan Vecera) [1967261] - ethtool: Remove link_mode param and derive link params from driver (Ivan Vecera) [1967261] - ethtool: Add lanes parameter for ETHTOOL_LINK_MODE_10000baseR_FEC_BIT (Ivan Vecera) [1967261] - ethtool: fix kdoc in headers (Ivan Vecera) [1967261] - ethtool: document reserved fields in the uAPI (Ivan Vecera) [1967261] - ethtool: un-kdocify extended link state (Ivan Vecera) [1967261] - ethtool: document PHY tunable callbacks (Ivan Vecera) [1967261] - docs: ethtool: fix some copy-paste errors (Ivan Vecera) [1967261] - ethtool: fix incorrect datatype in set_eee ops (Ivan Vecera) [1967261] - net: selftests: Add lanes setting test (Ivan Vecera) [1967261] - mlxsw: ethtool: Pass link mode in use to ethtool (Ivan Vecera) [1967261] - mlxsw: ethtool: Add support for setting lanes when autoneg is off (Ivan Vecera) [1967261] - mlxsw: ethtool: Remove max lanes filtering (Ivan Vecera) [1967261] - ethtool: Expose the number of lanes in use (Ivan Vecera) [1967261] - ethtool: Get link mode in use instead of speed and duplex parameters (Ivan Vecera) [1967261] - ethtool: prepare __ethtool_get_link_ksettings for subsequent changes (Ivan Vecera) [1967261] - ethtool: Extend link modes settings uAPI with lanes (Ivan Vecera) [1967261] - ethtool: Validate master slave configuration before rtnl_lock() (Ivan Vecera) [1967261] - ethtool: fix string set id check (Ivan Vecera) [1967261] - ethtool: fix stack overflow in ethnl_parse_bitset() (Ivan Vecera) [1967261] - selftests: add ring and coalesce selftests (Ivan Vecera) [1967261] - selftests: refactor get_netdev_name function (Ivan Vecera) [1967261] - selftests: extract common functions in ethtool-common.sh (Ivan Vecera) [1967261] - netdevsim: support ethtool ring and coalesce settings (Ivan Vecera) [1967261] - netdevsim: move ethtool pause params in separate struct (Ivan Vecera) [1967261] - ethtool: add ETHTOOL_COALESCE_ALL_PARAMS define (Ivan Vecera) [1967261] - ethtool: netlink: add missing netdev_features_change() call (Ivan Vecera) [1967261] - ethtool: remove unneeded semicolon (Ivan Vecera) [1967261] - ethtool: allow netdev driver to define phy tunables (Ivan Vecera) [1967261] - ethtool: mark netlink family as __ro_after_init (Ivan Vecera) [1967261] - ethtool: Add 100base-FX link mode entries (Ivan Vecera) [1967261] - ethtool: fix error handling in ethtool_phys_id (Ivan Vecera) [1967261] - ethtool: allow flow-type ether without IP protocol field (Ivan Vecera) [1967261] - net: phy: Uninline PHY ethtool statistics operations (Ivan Vecera) [1967261] - net: phy: Define PHY statistics ethtool_phy_ops (Ivan Vecera) [1967261] - net: ethtool: Remove PHYLIB direct dependency (Ivan Vecera) [1967261] - net: phy: Register ethtool PHY operations (Ivan Vecera) [1967261] - genksyms: Ignore module scoped _Static_assert() (Ivan Vecera) [1967261] - net: ethtool: Introduce ethtool_phy_ops (Ivan Vecera) [1967261] - Documentation: networking: fix ethtool-netlink table formats (Ivan Vecera) [1967261] - ethtool: ioctl: Use array_size() in copy_to_user() (Ivan Vecera) [1967261] - net: ethtool: cabletest: Make ethnl_act_cable_test_tdr_cfg static (Ivan Vecera) [1967261] - SUNRPC: Handle major timeout in xprt_adjust_timeout() (Scott Mayhew) [1979070] - gro_cells: reduce number of synchronize_net() calls (Ivan Vecera) [1959015] - net: make sure napi_list is safe for RCU traversal (Ivan Vecera) [1959015] - net: manage napi add/del idempotence explicitly (Ivan Vecera) [1959015] - net: remove napi_hash_del() from driver-facing API (Ivan Vecera) [1959015] - net: disable netpoll on fresh napis (Ivan Vecera) [1959015] - usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is disabled (Torez Smith) [1942772] - xhci: Fix 5.12 regression of missing xHC cache clearing command after a Stall (Torez Smith) [1942772] - xhci: fix giving back URB with incorrect status regression in 5.12 (Torez Smith) [1942772] - usb: typec: ucsi: Clear pending after acking connector change (Torez Smith) [1942772] - net: hso: check for allocation failure in hso_create_bulk_serial_device() (Torez Smith) [1942772] - usb: typec: tcpm: Fix wrong handling in GET_SINK_CAP (Torez Smith) [1942772] - net: hso: fix NULL-deref on disconnect regression (Torez Smith) [1942772] - USB: CDC-ACM: fix poison/unpoison imbalance (Torez Smith) [1942772] - usbip: vudc: fix missing unlock on error in usbip_sockfd_store() (Torez Smith) [1942772] - usb: xhci-mtk: improve bandwidth scheduling with TT (Torez Smith) [1942772] - usb: xhci-mtk: remove or operator for setting schedule parameters (Torez Smith) [1942772] - usb: typec: tcpm: Wait for vbus discharge to VSAFE0V before toggling (Torez Smith) [1942772] - software node: Provide replacement for device_add_properties() (Torez Smith) [1942772] - driver core: platform: Reimplement devm_platform_ioremap_resource (Torez Smith) [1942772] - USB: usblp: initialize newChannel (Torez Smith) [1942772] - net: hso: fix null-ptr-deref during tty device unregistration (Torez Smith) [1942772] - usbip: synchronize event handler with sysfs code paths (Torez Smith) [1942772] - usbip: vudc synchronize sysfs code paths (Torez Smith) [1942772] - usbip: stub-dev synchronize sysfs code paths (Torez Smith) [1942772] - usbip: add sysfs_lock to synchronize sysfs code paths (Torez Smith) [1942772] - drivers: net: fix memory leak in peak_usb_create_dev (Torez Smith) [1942772] - thunderbolt: Fix off by one in tb_port_find_retimer() (Torez Smith) [1942772] - thunderbolt: Fix a leak in tb_retimer_add() (Torez Smith) [1942772] - usb: dwc2: Prevent core suspend when port connection flag is 0 (Torez Smith) [1942772] - usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board. (Torez Smith) [1942772] - usb: xhci-mtk: fix broken streams issue on 0.96 xHCI (Torez Smith) [1942772] - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control() (Torez Smith) [1942772] - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem (Torez Smith) [1942772] - USB: cdc-acm: do not log successful probe on later errors (Torez Smith) [1942772] - USB: cdc-acm: always claim data interface (Torez Smith) [1942772] - USB: cdc-acm: use negation for NULL checks (Torez Smith) [1942772] - USB: cdc-acm: clean up probe error labels (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data reset (Torez Smith) [1942772] - USB: cdc-acm: drop redundant driver-data assignment (Torez Smith) [1942772] - USB: cdc-acm: fix use-after-free after probe failure (Torez Smith) [1942772] - USB: cdc-acm: fix double free on probe failure (Torez Smith) [1942772] - USB: cdc-acm: downgrade message to debug (Torez Smith) [1942772] - USB: cdc-acm: untangle a circular dependency between callback and softint (Torez Smith) [1942772] - cdc-acm: fix BREAK rx code path adding necessary calls (Torez Smith) [1942772] - usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield (Torez Smith) [1942772] - usb: dwc3: qcom: skip interconnect init for ACPI probe (Torez Smith) [1942772] - can: peak_usb: Revert "can: peak_usb: add forgotten supported devices" (Torez Smith) [1942772] - r8152: limit the RX buffer size of RTL8153A for USB 2.0 (Torez Smith) [1942772] - net: cdc-phonet: fix data-interface release on probe failure (Torez Smith) [1942772] - usb: typec: tcpm: Skip sink_cap query only when VDM sm is busy (Torez Smith) [1942772] - usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy- (Torez Smith) [1942772] - usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct (Torez Smith) [1942772] - usb-storage: Add quirk to defeat Kindle's automatic unload (Torez Smith) [1942772] - usbip: Fix incorrect double assignment to udc->ud.tcp_rx (Torez Smith) [1942772] - can: kvaser_usb: Add support for USBcan Pro 4xHS (Torez Smith) [1942772] - can: peak_usb: add forgotten supported devices (Torez Smith) [1942772] - xhci: Fix repeated xhci wake after suspend due to uncleared internal wake state (Torez Smith) [1942772] - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing (Torez Smith) [1942772] - xhci: Improve detection of device initiated wake signal. (Torez Smith) [1942772] - usb: xhci: do not perform Soft Retry for some xHCI hosts (Torez Smith) [1942772] - usbip: fix vudc usbip_sockfd_store races leading to gpf (Torez Smith) [1942772] - usbip: fix vhci_hcd attach_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf (Torez Smith) [1942772] - usbip: fix vudc to check for stream socket (Torez Smith) [1942772] - usbip: fix vhci_hcd to check for stream socket (Torez Smith) [1942772] - usbip: fix stub_dev to check for stream socket (Torez Smith) [1942772] - USB: usblp: fix a hang in poll() if disconnected (Torez Smith) [1942772] - usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement (Torez Smith) [1942772] - usb: dwc3: qcom: Honor wakeup enabled/disabled state (Torez Smith) [1942772] - usb: dwc3: qcom: add ACPI device id for sc8180x (Torez Smith) [1942772] - Goodix Fingerprint device is not a modem (Torez Smith) [1942772] - USB: serial: io_edgeport: fix memory leak in edge_startup (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID (Torez Smith) [1942772] - USB: serial: cp210x: add some more GE USB IDs (Torez Smith) [1942772] - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter (Torez Smith) [1942772] - net: usb: log errors to dmesg/syslog (Torez Smith) [1942772] - net: usb: cdc_ncm: emit dev_err on error paths (Torez Smith) [1942772] - thunderbolt: Increase runtime PM reference count on DP tunnel discovery (Torez Smith) [1942772] - thunderbolt: Initialize HopID IDAs in tb_switch_alloc() (Torez Smith) [1942772] - net: usb: qmi_wwan: allow qmimux add/del with master up (Torez Smith) [1942772] - Revert "r8152: adjust the settings about MAC clock speed down for RTL8153" (Torez Smith) [1942772] - net: usb: qmi_wwan: support ZTE P685M modem (Torez Smith) [1942772] - r8152: spilt rtl_set_eee_plus and r8153b_green_en (Torez Smith) [1942772] - r8152: replace netif_err with dev_err (Torez Smith) [1942772] - r8152: check if the pointer of the function exists (Torez Smith) [1942772] - r8152: enable U1/U2 for USB_SPEED_SUPER (Torez Smith) [1942772] - usb: misc: usb3503: Fix logic in usb3503_init() (Torez Smith) [1942772] - usb: Replace lkml.org links with lore (Torez Smith) [1942772] - usb: quirks: add quirk to start video capture on ELMO L-12F document camera reliable (Torez Smith) [1942772] - USB: quirks: sort quirk entries (Torez Smith) [1942772] - USB: serial: drop bogus to_usb_serial_port() checks (Torez Smith) [1942772] - USB: serial: drop if with an always false condition (Torez Smith) [1942772] - usb: typec: tcpm: Get Sink VDO from fwnode (Torez Smith) [1942772] - dt-bindings: connector: Add SVDM VDO properties (Torez Smith) [1942772] - usb: typec: displayport: Fill the negotiated SVDM Version in the header (Torez Smith) [1942772] - usb: typec: ucsi: Determine common SVDM Version (Torez Smith) [1942772] - usb: typec: tcpm: Determine common SVDM Version (Torez Smith) [1942772] - usb: pd: Make SVDM Version configurable in VDM header (Torez Smith) [1942772] - usb: typec: Manage SVDM version (Torez Smith) [1942772] - usb: dwc3: gadget: Fix dep->interval for fullspeed interrupt (Torez Smith) [1942772] - usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1 (Torez Smith) [1942772] - USB: serial: option: update interface mapping for ZTE P685M (Torez Smith) [1942772] - usb: dwc3: gadget: Track connected SSP rate and lane count (Torez Smith) [1942772] - usb: dwc3: gadget: Implement setting of SSP rate (Torez Smith) [1942772] - usb: dwc3: core: Check maximum_speed SSP genXxY (Torez Smith) [1942772] - usb: common: Parse for USB SSP genXxY (Torez Smith) [1942772] - usb: dwc2: Fix endpoint direction check in ep_from_windex (Torez Smith) [1942772] - usb: dwc3: fix clock issue during resume in OTG mode (Torez Smith) [1942772] - xhci: ext-caps: Use software node API with the properties (Torez Smith) [1942772] - usb: dwc3: host: Use software node API with the properties (Torez Smith) [1942772] - r8152: replace several functions about phy patch request (Torez Smith) [1942772] - usb: dwc3: qcom: Constify the software node (Torez Smith) [1942772] - usb: dwc3: haps: Constify the software node (Torez Smith) [1942772] - usb: dwc2: pci: Drop the empty quirk function (Torez Smith) [1942772] - thunderbolt: Add support for native USB4 _OSC (Torez Smith) [1942772] - thunderbolt: Allow disabling XDomain protocol (Torez Smith) [1942772] - thunderbolt: Add support for PCIe tunneling disabled (SL5) (Torez Smith) [1942772] - thunderbolt: dma_test: Drop unnecessary include (Torez Smith) [1942772] - thunderbolt: Add clarifying comments about USB4 terms router and adapter (Torez Smith) [1942772] - thunderbolt: switch: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: nhi: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: path: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: eeprom: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - thunderbolt: ctl: Fix kernel-doc descriptions of non-static functions (Torez Smith) [1942772] - usb: pd: Reland VDO definitions of PD2.0 (Torez Smith) [1942772] - NET: usb: qmi_wwan: Adding support for Cinterion MV31 (Torez Smith) [1942772] - usb: pd: Update VDO definitions (Torez Smith) [1942772] - xhci: fix bounce buffer usage for non-sg list case (Torez Smith) [1942772] - usb: xhci-mtk: break loop when find the endpoint to drop (Torez Smith) [1942772] - usb: typec: Return void in typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable data path when partner is USB Comm capable (Torez Smith) [1942772] - usb: typec: tcpci: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Add Callback to Usb Communication capable partner (Torez Smith) [1942772] - usb: typec: tcpm: Set in_ams flag when Source caps have been received (Torez Smith) [1942772] - usb: typec: tcpm: Handle vbus shutoff when in source mode (Torez Smith) [1942772] - usb: typec: Add typec_partner_set_pd_revision (Torez Smith) [1942772] - usb: typec: Provide PD Specification Revision for cable and partner (Torez Smith) [1942772] - usb: typec: Standardize PD Revision format with Type-C Revision (Torez Smith) [1942772] - usb: xhci-mtk: skip dropping bandwidth of unchecked endpoints (Torez Smith) [1942772] - USB: serial: ftdi_sio: restore divisor-encoding comments (Torez Smith) [1942772] - USB: serial: ftdi_sio: fix FTX sub-integer prescaler (Torez Smith) [1942772] - USB: serial: cp210x: clean up auto-RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: fix RTS handling (Torez Smith) [1942772] - USB: serial: cp210x: clean up printk zero padding (Torez Smith) [1942772] - USB: serial: cp210x: clean up flow-control debug message (Torez Smith) [1942772] - USB: serial: cp210x: drop shift macros (Torez Smith) [1942772] - USB: serial: cp210x: fix modem-control handling (Torez Smith) [1942772] - USB: serial: cp210x: suppress modem-control errors (Torez Smith) [1942772] - xhci: handle halting transfer event properly after endpoint stop and halt raced. (Torez Smith) [1942772] - xhci: Check for pending reset endpoint command before queueing a new one. (Torez Smith) [1942772] - xhci: remove obsolete dequeue pointer moving code (Torez Smith) [1942772] - xhci: introduce a new move_dequeue_past_td() function to replace old code. (Torez Smith) [1942772] - xhci: handle stop endpoint command completion with endpoint in running state. (Torez Smith) [1942772] - xhci: Fix halted endpoint at stop endpoint command completion (Torez Smith) [1942772] - xhci: split handling halted endpoints into two steps (Torez Smith) [1942772] - xhci: move and rename xhci_cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: turn cancelled td cleanup to its own function (Torez Smith) [1942772] - xhci: store TD status in the td struct instead of passing it along (Torez Smith) [1942772] - xhci: use xhci_td_cleanup() helper when giving back cancelled URBs (Torez Smith) [1942772] - xhci: move xhci_td_cleanup so it can be called by more functions (Torez Smith) [1942772] - xhci: Add xhci_reset_halted_ep() helper function (Torez Smith) [1942772] - xhci: flush endpoint start to reduce race risk with stop endpoint command. (Torez Smith) [1942772] - xhci: Check link TRBs when updating ring enqueue and dequeue pointers. (Torez Smith) [1942772] - xhci: avoid DMA double fetch when reading event trb type. (Torez Smith) [1942772] - xhci: remove extra loop in interrupt context (Torez Smith) [1942772] - xhci: check slot_id is valid before gathering slot info (Torez Smith) [1942772] - xhci: prevent a theoretical endless loop while preparing rings. (Torez Smith) [1942772] - xhci: remove xhci_stream_id_to_ring() helper (Torez Smith) [1942772] - xhci: add xhci_virt_ep_to_ring() helper (Torez Smith) [1942772] - xhci: check virt_dev is valid before dereferencing it (Torez Smith) [1942772] - xhci: add xhci_get_virt_ep() helper (Torez Smith) [1942772] - xhci: remove unused event parameter from completion handlers (Torez Smith) [1942772] - xhci: adjust parameters passed to cleanup_halted_endpoint() (Torez Smith) [1942772] - xhci: get isochronous ring directly from endpoint structure (Torez Smith) [1942772] - xhci: Avoid parsing transfer events several times (Torez Smith) [1942772] - net: qmi_wwan: Add pass through mode (Torez Smith) [1942772] - net: usb: qmi_wwan: add qmap id sysfs file for qmimux interfaces (Torez Smith) [1942772] - net: usb: cdc_ether: added support for Thales Cinterion PLSx3 modem family. (Torez Smith) [1942772] - thunderbolt: Fix possible NULL pointer dereference in tb_acpi_add_link() (Torez Smith) [1942772] - thunderbolt: switch: Fix function name in the header (Torez Smith) [1942772] - thunderbolt: tunnel: Fix misspelling of 'receive_path' (Torez Smith) [1942772] - thunderbolt: icm: Fix a couple of formatting issues (Torez Smith) [1942772] - thunderbolt: switch: Demote a bunch of non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: tb: Kernel-doc function headers should document their parameters (Torez Smith) [1942772] - thunderbolt: nhi: Demote some non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: xdomain: Fix 'tb_unregister_service_driver()'s 'drv' param (Torez Smith) [1942772] - thunderbolt: eeprom: Demote non-conformant kernel-doc headers to standard comment blocks (Torez Smith) [1942772] - USB: serial: mos7720: fix error code in mos7720_write() (Torez Smith) [1942772] - thunderbolt: ctl: Demote non-conformant kernel-doc headers (Torez Smith) [1942772] - thunderbolt: cap: Fix kernel-doc formatting issue (Torez Smith) [1942772] - thunderbolt: dma_port: Check 'dma_port_flash_write_block()'s return value (Torez Smith) [1942772] - USB: serial: option: Adding support for Cinterion MV31 (Torez Smith) [1942772] - can: mcba_usb: remove h from printk format specifier (Torez Smith) [1942772] - usbnet: fix the indentation of one code snippet (Torez Smith) [1942772] - usb: usb251xb: Use of_device_get_match_data() (Torez Smith) [1942772] - usb: dwc2: Make "trimming xfer length" a debug message (Torez Smith) [1942772] - usb: dwc2: Abort transaction after errors with unknown reason (Torez Smith) [1942772] - usb: dwc2: Do not update data length if it is 0 on inbound transfers (Torez Smith) [1942772] - usb: xhci-mtk: fix unreleased bandwidth data (Torez Smith) [1942772] - USB: serial: mos7840: fix error code in mos7840_write() (Torez Smith) [1942772] - USB: usblp: don't call usb_set_interface if there's a single alt (Torez Smith) [1942772] - USB: serial: cp210x: add pid/vid for WSDA-200-USB (Torez Smith) [1942772] - usb: typec: tcpci_maxim: add terminating newlines to logging (Torez Smith) [1942772] - usb: typec: tcpci_maxim: remove redundant assignment (Torez Smith) [1942772] - usb: typec: tcpm: Create legacy PDOs for PD2 connection (Torez Smith) [1942772] - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem family (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Drop GPIO includes (Torez Smith) [1942772] - usb: typec: tcpm: Respond Wait if VDM state machine is running (Torez Smith) [1942772] - usb: typec: tcpm: Protocol Error handling (Torez Smith) [1942772] - usb: typec: tcpm: AMS and Collision Avoidance (Torez Smith) [1942772] - net: usb: cdc_ncm: don't spew notifications (Torez Smith) [1942772] - usb: typec: ucsi: Add conditional dependency on USB role switch (Torez Smith) [1942772] - usb: ch9: Add USB 3.2 SSP attributes (Torez Smith) [1942772] - USB: serial: f81232: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: io_ti: fix a debug-message copy-paste error (Torez Smith) [1942772] - USB: serial: io_ti: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: upd78f0730: drop short control-transfer check (Torez Smith) [1942772] - USB: serial: cp210x: add copyright notice (Torez Smith) [1942772] - USB: serial: cp210x: drop unused includes (Torez Smith) [1942772] - USB: serial: cp210x: drop short control-transfer checks (Torez Smith) [1942772] - USB: serial: cp210x: update control-characters on every change (Torez Smith) [1942772] - USB: serial: cp210x: set IXOFF thresholds (Torez Smith) [1942772] - USB: serial: cp210x: add support for software flow control (Torez Smith) [1942772] - USB: serial: pl2303: fix line-speed handling on newer chips (Torez Smith) [1942772] - xhci: tegra: Delay for disabling LFPS detector (Torez Smith) [1942772] - xhci: make sure TRB is fully written before giving it to the controller (Torez Smith) [1942772] - usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-P (Torez Smith) [1942772] - usb: dwc3: pci: ID for Tiger Lake CPU (Torez Smith) [1942772] - usb: dwc3: pci: Register a software node for the dwc3 platform device (Torez Smith) [1942772] - thunderbolt: Add support for de-authorizing devices (Torez Smith) [1942772] - nt: usb: USB_RTL8153_ECM should not default to y (Torez Smith) [1942772] - USB: dwc3: document gadget_max_speed (Torez Smith) [1942772] - usb: dwc3: gadget: Disable Vendor Test LMP Received event (Torez Smith) [1942772] - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000 (Torez Smith) [1942772] - r8153_ecm: Add Lenovo Powered USB-C Hub as a fallback of r8152 (Torez Smith) [1942772] - r8152: Add Lenovo Powered USB-C Travel Hub (Torez Smith) [1942772] - USB: ehci: fix an interrupt calltrace error (Torez Smith) [1942772] - ehci: fix EHCI host controller initialization sequence (Torez Smith) [1942772] - usb: typec: ucsi: Add support for USB role switch (Torez Smith) [1942772] - usb: dwc2: disable Link Power Management on STM32MP15 HS OTG (Torez Smith) [1942772] - usb: dwc2: enable FS/LS PHY clock select on STM32MP15 FS OTG (Torez Smith) [1942772] - usb: dwc2: set ahbcfg parameter for STM32MP15 OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: keystone: Simplify with dev_err_probe() (Torez Smith) [1942772] - usb: dwc3: core: Replace devm_reset_control_array_get() (Torez Smith) [1942772] - USB: serial: mos7720: improve OOM-handling in read_mos_reg() (Torez Smith) [1942772] - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request (Torez Smith) [1942772] - thunderbolt: Start lane initialization after sleep (Torez Smith) [1942772] - thunderbolt: Constify static attribute_group structs (Torez Smith) [1942772] - qmi_wwan: Increase headroom for QMAP SKBs (Torez Smith) [1942772] - usb: usbip: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: dwc3: gadget: Clear wait flag on dequeue (Torez Smith) [1942772] - usb: typec: Send uevent for num_altmodes update (Torez Smith) [1942772] - usb: typec: Fix copy paste error for NVIDIA alt-mode description (Torez Smith) [1942772] - kcov, usb: hide in_serving_softirq checks in __usb_hcd_giveback_urb (Torez Smith) [1942772] - thunderbolt: Drop duplicated 0x prefix from format string (Torez Smith) [1942772] - net: cdc_ncm: correct overhead in delayed_ndp_size (Torez Smith) [1942772] - net: usb: Use DEFINE_SPINLOCK() for spinlock (Torez Smith) [1942772] - usb: uas: Add PNY USB Portable SSD to unusual_uas (Torez Smith) [1942772] - net: usb: qmi_wwan: add Quectel EM160R-GL (Torez Smith) [1942772] - usb: usbip: vhci_hcd: protect shift size (Torez Smith) [1942772] - USB: usblp: fix DMA to stack (Torez Smith) [1942772] - usb: dwc3: gadget: Preserve UDC max speed setting (Torez Smith) [1942772] - usb: dwc3: gadget: Allow runtime suspend if UDC unbinded (Torez Smith) [1942772] - usb: dwc3: gadget: Introduce a DWC3 VBUS draw callback (Torez Smith) [1942772] - usb: dwc3: add imx8mp dwc3 glue layer driver (Torez Smith) [1942772] - USB: serial: iuu_phoenix: fix DMA from stack (Torez Smith) [1942772] - USB: serial: option: add LongSung M5710 module support (Torez Smith) [1942772] - USB: serial: option: add Quectel EM160R-GL (Torez Smith) [1942772] - CDC-NCM: remove "connected" log message (Torez Smith) [1942772] - usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression (Torez Smith) [1942772] - usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based one (Torez Smith) [1942772] - usb: dwc3: ulpi: Use VStsDone to detect PHY regs access completion (Torez Smith) [1942772] - usb: dwc3: drd: Improve dwc3_get_extcon() style (Torez Smith) [1942772] - usb: dwc3: drd: Avoid error when extcon is missing (Torez Smith) [1942772] - USB: usbtmc: Bump USBTMC_API_VERSION value (Torez Smith) [1942772] - USB: usbtmc: Add separate USBTMC_IOCTL_GET_SRQ_STB (Torez Smith) [1942772] - USB: usbtmc: Add USBTMC_IOCTL_GET_STB (Torez Smith) [1942772] - USB: usbtmc: Fix reading stale status byte (Torez Smith) [1942772] - kcov, usbip: collect coverage from vhci_rx_loop (Torez Smith) [1942772] - USB: yurex: fix control-URB timeout handling (Torez Smith) [1942772] - usb: dwc3: meson-g12a: disable clk on error handling path in probe (Torez Smith) [1942772] - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk set (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure HPD first for HPD+IRQ request (Torez Smith) [1942772] - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt(). (Torez Smith) [1942772] - USB: cdc-acm: blacklist another IR Droid device (Torez Smith) [1942772] - thunderbolt: Use kmemdup instead of kzalloc and memcpy (Torez Smith) [1942772] - usb: ucsi: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: convert comma to semicolon (Torez Smith) [1942772] - usb: typec: tcpm: Update vbus_vsafe0v on init (Torez Smith) [1942772] - usb: typec: tcpci: Enable bleed discharge when auto discharge is enabled (Torez Smith) [1942772] - usb: typec: Add class for plug alt mode device (Torez Smith) [1942772] - USB: typec: tcpci: Add Bleed discharge to POWER_CONTROL definition (Torez Smith) [1942772] - USB: typec: tcpm: Add a 30ms room for tPSSourceOn in PR_SWAP (Torez Smith) [1942772] - USB: typec: tcpm: Fix PR_SWAP error handling (Torez Smith) [1942772] - USB: typec: tcpm: Hard Reset after not receiving a Request (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure cable generation value for USB4 (Torez Smith) [1942772] - net: usb: convert comma to semicolon (Torez Smith) [1942772] - USB: UAS: introduce a quirk to set no_write_same (Torez Smith) [1942772] - USB: serial: ftdi_sio: log the CBUS GPIO validity (Torez Smith) [1942772] - USB: serial: ftdi_sio: drop GPIO line checking dead code (Torez Smith) [1942772] - USB: serial: ftdi_sio: report the valid GPIO lines to gpiolib (Torez Smith) [1942772] - drivers: usb: atm: use atm_info() instead of atm_printk(KERN_INFO ... (Torez Smith) [1942772] - drivers: usb: atm: reduce noise (Torez Smith) [1942772] - USB: serial: option: add interface-number sanity check to flag handling (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable VSAFE0V signalling (Torez Smith) [1942772] - usb: typec: tcpci: Add support to report vSafe0V (Torez Smith) [1942772] - usb: typec: tcpm: Introduce vsafe0v for vbus (Torez Smith) [1942772] - usb: typec: tcpm: Clear send_discover in tcpm_check_send_discover (Torez Smith) [1942772] - usb: typec: tcpm: Pass down negotiated rev to update retry count (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Use correct response message bits (Torez Smith) [1942772] - xhci: Give USB2 ports time to enter U3 in bus suspend (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI (Torez Smith) [1942772] - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP (Torez Smith) [1942772] - usb: xhci: Use temporary buffer to consolidate SG (Torez Smith) [1942772] - usb: xhci: Set quirk for XHCI_SG_TRB_CACHE_SIZE_QUIRK (Torez Smith) [1942772] - USB: legotower: fix logical error in recent commit (Torez Smith) [1942772] - USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1942772] - USB: add RESET_RESUME quirk for Snapscan 1212 (Torez Smith) [1942772] - usb: typec: tps6598x: Export some power supply properties (Torez Smith) [1942772] - usb: typec: tps6598x: Select USB_ROLE_SWITCH and REGMAP_I2C (Torez Smith) [1942772] - USB: core: drop pipe-type check from new control-message helpers (Torez Smith) [1942772] - USB: core: return -EREMOTEIO on short usb_control_msg_recv() (Torez Smith) [1942772] - USB: core: drop short-transfer check from usb_control_msg_send() (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix use after free in probe (Torez Smith) [1942772] - Revert "usb-storage: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: fix sdev->host->dma_dev" (Torez Smith) [1942772] - Revert "uas: bump hw_max_sectors to 2048 blocks for SS or faster drives" (Torez Smith) [1942772] - USB: serial: cp210x: clean up dtr_rts() (Torez Smith) [1942772] - USB: serial: cp210x: refactor flow-control handling (Torez Smith) [1942772] - USB: serial: cp210x: drop flow-control debugging (Torez Smith) [1942772] - USB: serial: cp210x: set terminal settings on open (Torez Smith) [1942772] - USB: serial: cp210x: clean up line-control handling (Torez Smith) [1942772] - USB: serial: cp210x: return early on unchanged termios (Torez Smith) [1942772] - USB: serial: kl5kusb105: fix memleak on open (Torez Smith) [1942772] - USB: serial: ch341: sort device-id entries (Torez Smith) [1942772] - USB: serial: ch341: add new Product ID for CH341A (Torez Smith) [1942772] - USB: serial: option: fix Quectel BG96 matching (Torez Smith) [1942772] - can: pcan_usb_core: fix fall-through warnings for Clang (Torez Smith) [1942772] - usb: typec: stusb160x: fix power-opmode property with typec-power-opmode (Torez Smith) [1942772] - USB: serial: option: add support for Thales Cinterion EXS82 (Torez Smith) [1942772] - usb: typec: Add type sysfs attribute file for partners (Torez Smith) [1942772] - usb: common: ulpi: Constify static attribute_group struct (Torez Smith) [1942772] - usb: typec: Constify static attribute_group structs (Torez Smith) [1942772] - USB: core: Constify static attribute_group structs (Torez Smith) [1942772] - usb: typec: tcpm: Stay in SNK_TRY_WAIT_DEBOUNCE_CHECK_VBUS till Rp is seen (Torez Smith) [1942772] - usb: typec: tcpm: Disregard vbus off while in PR_SWAP_SNK_SRC_SOURCE_ON (Torez Smith) [1942772] - usb: typec: Expose Product Type VDOs via sysfs (Torez Smith) [1942772] - usb: pd: DFP product types (Torez Smith) [1942772] - usb: Fix fall-through warnings for Clang (Torez Smith) [1942772] - usbnet: ipheth: fix connectivity with iOS 14 (Torez Smith) [1942772] - USB: core: Change pK for __user pointers to px (Torez Smith) [1942772] - USB: core: Fix regression in Hercules audio card (Torez Smith) [1942772] - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO built-in usb-audio card (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser hydra devices (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Add support for new device variant (Torez Smith) [1942772] - can: kvaser_usb: Add new Kvaser Leaf v2 devices (Torez Smith) [1942772] - can: kvaser_usb: Add USB_{LEAF,HYDRA}_PRODUCT_ID_END defines (Torez Smith) [1942772] - USB: serial: option: add Fibocom NL668 variants (Torez Smith) [1942772] - usb: typec: Fix num_altmodes kernel-doc error (Torez Smith) [1942772] - r8153_ecm: avoid to be prior to r8152 driver (Torez Smith) [1942772] - net: usb: qmi_wwan: Set DTR quirk for MR400 (Torez Smith) [1942772] - usb: typec: Add plug num_altmodes sysfs attr (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix the compatible string (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix uninitialized return variable (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Enable auto discharge disconnect (Torez Smith) [1942772] - usb: typec: tcpci: Implement Auto discharge disconnect callbacks (Torez Smith) [1942772] - usb: typec: tcpm: Implement enabling Auto Discharge disconnect support (Torez Smith) [1942772] - usb: typec: tcpci_maxim: Fix vbus stuck on upon diconnecting sink (Torez Smith) [1942772] - usb: typec: tcpci: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: frs sourcing vbus callback (Torez Smith) [1942772] - usb: typec: tcpm: Refactor logic for new-source-frs-typec-current (Torez Smith) [1942772] - usb: typec: Add number of altmodes partner attr (Torez Smith) [1942772] - usb: pd: Add captive Type C cable type (Torez Smith) [1942772] - USB: apple-mfi-fastcharge: Fix kfree after failed kzalloc (Torez Smith) [1942772] - usb: typec: Remove one bit support for the Thunderbolt rounded/non-rounded cable (Torez Smith) [1942772] - usb: typec: intel_pmc_mux: Configure Thunderbolt cable generation bits (Torez Smith) [1942772] - usb: typec: Correct the bit values for the Thunderbolt rounded/non-rounded cable support (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits (Torez Smith) [1942772] - cx82310_eth: fix error return code in cx82310_bind() (Torez Smith) [1942772] - usb: typec: qcom-pmic-typec: fix builtin build errors (Torez Smith) [1942772] - can: peak_usb: fix potential integer overflow on shift of a int (Torez Smith) [1942772] - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to can_put_echo_skb() (Torez Smith) [1942772] - usb: hcd.h: Remove RUN_CONTEXT (Torez Smith) [1942772] - USB: storage: avoid use of uninitialized values in error path (Torez Smith) [1942772] - usb: fix a few cases of -Wfallthrough (Torez Smith) [1942772] - usbnet: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - qmi_wwan: switch to core handling of rx/tx byte/packet counters (Torez Smith) [1942772] - net: usb: fix spelling typo in cdc_ncm.c (Torez Smith) [1942772] - usb: typec: ucsi: Work around PPM losing change information (Torez Smith) [1942772] - usb: typec: ucsi: acpi: Always decode connector change information (Torez Smith) [1942772] - net/usb/r8153_ecm: support ECM mode for RTL8153 (Torez Smith) [1942772] - USB: serial: mos7720: fix parallel-port state restore (Torez Smith) [1942772] - USB: serial: remove write wait queue (Torez Smith) [1942772] - USB: serial: digi_acceleport: fix write-wakeup deadlocks (Torez Smith) [1942772] - USB: serial: keyspan_pda: drop redundant usb-serial pointer (Torez Smith) [1942772] - USB: serial: keyspan_pda: use BIT() macro (Torez Smith) [1942772] - USB: serial: keyspan_pda: add write-fifo support (Torez Smith) [1942772] - USB: serial: keyspan_pda: increase transmitter threshold (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write implementation (Torez Smith) [1942772] - USB: serial: keyspan_pda: refactor write-room handling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write unthrottling (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write-wakeup use-after-free (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix stalled writes (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix write deadlock (Torez Smith) [1942772] - USB: serial: keyspan_pda: fix dropped unthrottle interrupts (Torez Smith) [1942772] - net: usb: r8152: Fix a couple of spelling errors in fw_phy_nc's docs (Torez Smith) [1942772] - net: usb: lan78xx: Remove lots of set but unused 'ret' variables (Torez Smith) [1942772] - net: usb: r8152: Provide missing documentation for some struct members (Torez Smith) [1942772] - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping (Torez Smith) [1942772] - can: peak_usb: add range checking in decode operations (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition (Torez Smith) [1942772] - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq (Torez Smith) [1942772] - dt-bindings: connector: Add property to set initial current cap for FRS (Torez Smith) [1942772] - usb: xhci: Remove in_interrupt() checks (Torez Smith) [1942772] - usbip: Remove in_interrupt() check (Torez Smith) [1942772] - usb: core: Replace in_interrupt() in comments (Torez Smith) [1942772] - usb: atm: Replace in_interrupt() usage in comment (Torez Smith) [1942772] - USB: sisusbvga: Make console support depend on BROKEN (Torez Smith) [1942772] - usb: host: xhci-mem: remove unneeded break (Torez Smith) [1942772] - usb: storage: freecom: remove unneeded break (Torez Smith) [1942772] - usb: misc: iowarrior: remove unneeded break (Torez Smith) [1942772] - usb: host: ehci-sched: add comment about find_tt() not returning error (Torez Smith) [1942772] - usb: dwc3: ep0: Fix delay status handling (Torez Smith) [1942772] - USB: serial: iuu_phoenix: remove unneeded break (Torez Smith) [1942772] - USB: serial: digi_acceleport: remove in_interrupt() usage (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Alder Lake-S (Torez Smith) [1942772] - net: usb: rtl8150: don't incorrectly assign random MAC addresses (Torez Smith) [1942772] - net: usbnet: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - net: usb: qmi_wwan: use new function dev_fetch_sw_netstats (Torez Smith) [1942772] - cx82310_eth: use netdev_err instead of dev_err (Torez Smith) [1942772] - cx82310_eth: re-enable ethernet mode after router reboot (Torez Smith) [1942772] - net: usbnet: remove driver version (Torez Smith) [1942772] - net: usb: qmi_wwan: add Cellient MPL200 card (Torez Smith) [1942772] - usbip: vhci_hcd: fix calling usb_hcd_giveback_urb() with irqs enabled (Torez Smith) [1942772] - net: usb: rtl8150: set random MAC address when set_ethernet_addr() fails (Torez Smith) [1942772] - usbnet: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - net/smscx5xx: change to of_get_mac_address() eth_platform_get_mac_address() (Torez Smith) [1942772] - net: usb: pegasus: Proper error handing when setting pegasus' MAC address (Torez Smith) [1942772] - usb: dwc3: gadget: Support up to max stream id (Torez Smith) [1942772] - usb: dwc2: Fix INTR OUT transfers in DDMA mode. (Torez Smith) [1942772] - usb: dwc3: of-simple: Add compatible string for Intel Keem Bay platform (Torez Smith) [1942772] - net: rtl8150: Use the new usb control message API. (Torez Smith) [1942772] - net: pegasus: Use the new usb control message API. (Torez Smith) [1942772] - usb: dwc3: gadget: Return early if no TRB update (Torez Smith) [1942772] - usb: dwc3: gadget: Keep TRBs in request order (Torez Smith) [1942772] - usb: dwc3: gadget: Revise setting IOC when no TRB left (Torez Smith) [1942772] - usb: dwc3: gadget: Look ahead when setting IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Allow restarting a transfer (Torez Smith) [1942772] - usb: dwc3: Stop active transfers before halting the controller (Torez Smith) [1942772] - usb: dwc3: gadget: Rename misleading function names (Torez Smith) [1942772] - usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing last TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Set IOC if not enough for extra TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Check for number of TRBs prepared (Torez Smith) [1942772] - usb: dwc3: gadget: Return the number of prepared TRBs (Torez Smith) [1942772] - usb: dwc3: ep0: Fix ZLP for OUT ep0 requests (Torez Smith) [1942772] - usb: dwc3: gadget: Improve TRB ZLP setup (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor preparing extra TRB (Torez Smith) [1942772] - usb: dwc3: gadget: Reclaim extra TRBs after request completion (Torez Smith) [1942772] - usb: dwc3: gadget: Check MPS of the request length (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor ep command completion (Torez Smith) [1942772] - usb: dwc3: allocate gadget structure dynamically (Torez Smith) [1942772] - usb: dwc3: core: add phy cleanup for probe error handling (Torez Smith) [1942772] - usb: dwc3: core: don't trigger runtime pm when remove driver (Torez Smith) [1942772] - usb: dwc3: debugfs: do not queue work if try to change mode on non-drd (Torez Smith) [1942772] - usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM functionality (Torez Smith) [1942772] - usb: dwc2: add support for APM82181 USB OTG (Torez Smith) [1942772] - usb: dwc-meson-g12a: Add support for USB on AXG SoCs (Torez Smith) [1942772] - usb: dwc3: gadget: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG (Torez Smith) [1942772] - usb: dwc3: debugfs: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: qcom: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ep0: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: core: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: trace: fix checkpatch warnings (Torez Smith) [1942772] - usb: dwc3: ulpi: fix checkpatch warning (Torez Smith) [1942772] - usb: dwc3: meson: fix checkpatch errors and warnings (Torez Smith) [1942772] - usb: dwc3: debug: fix sparse warning (Torez Smith) [1942772] - usb: dwc3: meson: fix coccinelle WARNING (Torez Smith) [1942772] - usb: dwc3: qcom: Add interconnect support in dwc3 driver (Torez Smith) [1942772] - net: usb: net1080: Remove in_interrupt() comment (Torez Smith) [1942772] - net: usb: kaweth: Remove last user of kaweth_control() (Torez Smith) [1942772] - net: usb: kaweth: Replace kaweth_control() with usb_control_msg() (Torez Smith) [1942772] - net: usb: ax88179_178a: add MCT usb 3.0 adapter (Torez Smith) [1942772] - net: usb: ax88179_178a: fix missing stop entry in driver_info (Torez Smith) [1942772] - net: usb: ax88179_178a: add Toshiba usb 3.0 adapter (Torez Smith) [1942772] - Revert "usbip: Implement a match function to fix usbip" (Torez Smith) [1942772] - usb: dwc2: Fix parameter type in function pointer prototype (Torez Smith) [1942772] - usb: dwc3: core: Print warning on unsupported speed (Torez Smith) [1942772] - usb: dwc3: core: Properly default unspecified speed (Torez Smith) [1942772] - usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails (Torez Smith) [1942772] - usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command (Torez Smith) [1942772] - usb: dwc3: gadget: Resume pending requests after CLEAR_STALL (Torez Smith) [1942772] - can: peak_usb: convert to use le32_add_cpu() (Torez Smith) [1942772] - can: pcan_usb: add support of rxerr/txerr counters (Torez Smith) [1942772] - can: pcan_usb: Document the commands sent to the device (Torez Smith) [1942772] - can: mcba_usb: remove redundant initialization of variable err (Torez Smith) [1942772] - usb: dwc2: Always disable regulators on driver teardown (Torez Smith) [1942772] - usbip: simplify the return expression of usbip_core_init() (Torez Smith) [1942772] - rndis_host: increase sleep time in the query-response loop (Torez Smith) [1942772] - Revert "usb: dwc3: meson-g12a: fix shared reset control use" (Torez Smith) [1942772] - net: usb: dm9601: Add USB ID of Keenetic Plus DSL (Torez Smith) [1942772] - smsc95xx: add phylib support (Torez Smith) [1942772] - smsc95xx: use usbnet->driver_priv (Torez Smith) [1942772] - smsc95xx: remove redundant function arguments (Torez Smith) [1942772] - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr() (Torez Smith) [1942772] - net: cdc_ncm: Fix build error (Torez Smith) [1942772] - tools: usb: move to tools buildsystem (Torez Smith) [1942772] - usbip: Implement a match function to fix usbip (Torez Smith) [1942772] - usb: dwc3: gadget: Handle ZLP for sg requests (Torez Smith) [1942772] - usb: dwc3: gadget: Fix handling ZLP (Torez Smith) [1942772] - usb: dwc3: gadget: Don't setup more than requested (Torez Smith) [1942772] - r8152: Use MAC address from correct device tree node (Torez Smith) [1942772] - usb: hso: remove bogus check for EINPROGRESS (Torez Smith) [1942772] - usb: hso: no complaint about kmalloc failure (Torez Smith) [1942772] - hso: fix bailout in error case of probe (Torez Smith) [1942772] - usb: dwc3: convert to devm_platform_ioremap_resource_byname (Torez Smith) [1942772] - net: lan78xx: replace bogus endpoint lookup (Torez Smith) [1942772] - net: lan78xx: fix transfer-buffer memory leak (Torez Smith) [1942772] - net: lan78xx: add missing endpoint sanity check (Torez Smith) [1942772] - usb: hso: check for return value in hso_serial_common_create() (Torez Smith) [1942772] - Revert "usb: dwc2: override PHY input signals with usb role switch support" (Torez Smith) [1942772] - Revert "usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs" (Torez Smith) [1942772] - usb: dwc3: gadget: when the started list is empty stop the active xfer (Torez Smith) [1942772] - usb: dwc3: gadget: make starting isoc transfers more robust (Torez Smith) [1942772] - usb: dwc3: gadget: add frame number mask (Torez Smith) [1942772] - usb: dwc2: Fix error path in gadget registration (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix shared reset control use (Torez Smith) [1942772] - usb: dwc2: don't use ID/Vbus detection if usb-role-switch on STM32MP15 SoCs (Torez Smith) [1942772] - usb: dwc2: override PHY input signals with usb role switch support (Torez Smith) [1942772] - net: cdc_ncm: hook into set_rx_mode to admit multicast traffic (Torez Smith) [1942772] - net: cdc_ncm: add .ndo_set_rx_mode to cdc_ncm_netdev_ops (Torez Smith) [1942772] - net: usbnet: export usbnet_set_rx_mode() (Torez Smith) [1942772] - net: cdc_ether: export usbnet_cdc_update_filter (Torez Smith) [1942772] - net: cdc_ether: use dev->intf to get interface information (Torez Smith) [1942772] - ax88172a: fix ax88172a_unbind() failures (Torez Smith) [1942772] - usb: dwc2: gadget: Avoid pointless read of EP control register (Torez Smith) [1942772] - usb: dwc2: gadget: Make use of GINTMSK2 (Torez Smith) [1942772] - usb: dwc3: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - tools: usb: usbip: Replace HTTP links with HTTPS ones (Torez Smith) [1942772] - usb: hso: Fix debug compile warning on sparc32 (Torez Smith) [1942772] - usbip: Use fallthrough pseudo-keyword (Torez Smith) [1942772] - Documentation/driver-api: usb/URB: drop doubled word (Torez Smith) [1942772] - usb: dwc3: dwc3-qcom: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Jasper Lake (Torez Smith) [1942772] - usb: dwc2: Fix shutdown callback in platform (Torez Smith) [1942772] - usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H variant (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Quectel EG95 LTE modem (Torez Smith) [1942772] - smsc95xx: avoid memory leak in smsc95xx_bind (Torez Smith) [1942772] - smsc95xx: check return value of smsc95xx_reset (Torez Smith) [1942772] - usb: dwc2: gadget: Remove assigned but never used 'maxsize' (Torez Smith) [1942772] - usb: dwc3: dwc3-of-simple: Function headers are not good candidates for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-haps: Function headers are not suitable for kerneldoc (Torez Smith) [1942772] - usb: dwc3: dwc3-omap: Do not read DMA status (Torez Smith) [1942772] - usb: dwc3: ulpi: File headers are not doc headers (Torez Smith) [1942772] - usb: dwc3: drd: File headers are not doc headers (Torez Smith) [1942772] - usbnet: ipheth: fix ipheth_tx()'s return type (Torez Smith) [1942772] - usbip: tools: add in man page how to load the client's module (Torez Smith) [1942772] - usbip: tools: fix build error for multiple definition (Torez Smith) [1942772] - usbip: tools: fix module name in man page (Torez Smith) [1942772] - Revert "usb: dwc3: exynos: Add support for Exynos5422 suspend clk" (Torez Smith) [1942772] - usb: dwc3: pci: Fix reference count leak in dwc3_pci_resume_work (Torez Smith) [1942772] - media: USB: cdc-acm: blacklist IR Droid / IR Toy device (Torez Smith) [1942772] - usbnet: smsc95xx: Fix use-after-free after removal (Torez Smith) [1942772] - usb: dwc2: Postponed gadget registration to the udc class driver (Torez Smith) [1942772] - usb: dwc2: use well defined macros for power_down (Torez Smith) [1942772] - net: usb: ax88179_178a: fix packet alignment padding (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix USB2 PHY initialization on G12A and A1 SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix error path when fetching the reset line fails (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit LE910C1-EUX composition (Torez Smith) [1942772] - usb: dwc3: keystone: Turn on USB3 PHY before controller (Torez Smith) [1942772] - usb: dwc2: Update Core Reset programming flow. (Torez Smith) [1942772] - usb: dwc3: gadget: Check for prepared TRBs (Torez Smith) [1942772] - usb: dwc3: Increase timeout for CmdAct cleared by device controller (Torez Smith) [1942772] - usb: dwc3: gadget: Use SET_EP_PRIME for NoStream (Torez Smith) [1942772] - usb: dwc3: gadget: Handle stream transfers (Torez Smith) [1942772] - usb: dwc3: gadget: Don't prepare beyond a transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Wait for transfer completion (Torez Smith) [1942772] - usb: dwc3: gadget: Handle XferComplete for streams (Torez Smith) [1942772] - usb: dwc3: gadget: Enable XferComplete event (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor TRB completion handler (Torez Smith) [1942772] - usb: dwc3: gadget: Check for in-progress END_TRANSFER (Torez Smith) [1942772] - usb: dwc3: Get MDWIDTH for DWC_usb32 (Torez Smith) [1942772] - usb: dwc3: Add support for DWC_usb32 IP (Torez Smith) [1942772] - usb: dwc3: use true,false for dwc->otg_restart_host (Torez Smith) [1942772] - usb: dwc2: gadget: move gadget resume after the core is in L0 state (Torez Smith) [1942772] - usb: dwc3: meson-g12a: add support for GXL and GXM SoCs (Torez Smith) [1942772] - usb: dwc3: meson-g12a: support the GXL/GXM DWC3 host phy disconnect (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb init (Torez Smith) [1942772] - usb: dwc3: gadget: Continue to process pending requests (Torez Smith) [1942772] - r8152: support additional Microsoft Surface Ethernet Adapter variant (Torez Smith) [1942772] - r8152: Use MAC address from device tree if available (Torez Smith) [1942772] - net: usb: qmi_wwan: remove redundant assignment to variable status (Torez Smith) [1942772] - net: huawei_cdc_ncm: remove redundant assignment to variable ret (Torez Smith) [1942772] - net: usb: ax88179_178a: remove redundant assignment to variable ret (Torez Smith) [1942772] - usb: dwc3: select USB_ROLE_SWITCH (Torez Smith) [1942772] - usb: dwc3: pci: Enable extcon driver for Intel Merrifield (Torez Smith) [1942772] - dwc3: Remove check for HWO flag in dwc3_gadget_ep_reclaim_trb_sg() (Torez Smith) [1942772] - usb: hso: correct debug message (Torez Smith) [1942772] - net: sierra_net: Remove unused inline function (Torez Smith) [1942772] - usb: dwc3: gadget: WARN on no-resource status (Torez Smith) [1942772] - usb: dwc3: gadget: Issue END_TRANSFER to retry isoc transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Store resource index of start cmd (Torez Smith) [1942772] - usb: dwc3: core: Use role-switch default dr_mode (Torez Smith) [1942772] - usb: dwc3: drd: Don't free non-existing irq (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle failed kick_transfer (Torez Smith) [1942772] - usb: dwc3: meson-g12a: refactor usb2 phy init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: check return of dwc3_meson_g12a_usb_init (Torez Smith) [1942772] - usb: dwc3: meson-g12a: get the reset as shared (Torez Smith) [1942772] - usb: dwc3: meson-g12a: handle the phy and glue registers separately (Torez Smith) [1942772] - usb: dwc3: meson-g12a: specify phy names in soc data (Torez Smith) [1942772] - usb: dwc3: gadget: Refactor dwc3_gadget_ep_dequeue (Torez Smith) [1942772] - usb: dwc3: gadget: Remove unnecessary checks (Torez Smith) [1942772] - usb: dwc3: gadget: Give back staled requests (Torez Smith) [1942772] - usb: dwc3: gadget: Properly handle ClearFeature(halt) (Torez Smith) [1942772] - usb: dwc3: support continuous runtime PM with dual role (Torez Smith) [1942772] - USB: dwc3: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5816e (Torez Smith) [1942772] - net: usb: ax88179_178a: Implement ethtool_ops set_eeprom (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request completion check (Torez Smith) [1942772] - USB: dwc2: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - usb: dwc3: gadget: Do link recovery for SS and SSP (Torez Smith) [1942772] - usb: dwc3: gadget: Properly set maxpacket limit (Torez Smith) [1942772] - usb: dwc3: Fix GTXFIFOSIZ.TXFDEP macro name (Torez Smith) [1942772] - Documentation: driver-api/usb/writing_usb_driver.rst Updates documentation links (Torez Smith) [1942772] - pegasus: Remove pegasus' own workqueue (Torez Smith) [1942772] - usb: dwc2: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: hisilicon: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - usb: host: xhci-plat: convert to devm_platform_get_and_ioremap_resource (Torez Smith) [1942772] - net: qmi_wwan: add support for ASKEY WWHC050 (Torez Smith) [1942772] - usb: dwc3: fix up for role switch API change (Torez Smith) [1942772] - usb: dwc2: Silence warning about supplies during deferred probe (Torez Smith) [1942772] - usb: dwc2: Implement set_selfpowered() (Torez Smith) [1942772] - usb: dwc3: core: don't do suspend for device mode if already suspended (Torez Smith) [1942772] - usb: dwc3: Rework resets initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Rework clock initialization to be more flexible (Torez Smith) [1942772] - usb: dwc3: Add support for role-switch-default-mode binding (Torez Smith) [1942772] - usb: dwc3: Registering a role switch in the DRD code. (Torez Smith) [1942772] - usb: dwc3: core: add support for disabling SS instances in park mode (Torez Smith) [1942772] - usb: dwc3: gadget: Wrap around when skip TRBs (Torez Smith) [1942772] - usb: dwc3: gadget: Don't clear flags before transfer ended (Torez Smith) [1942772] - usb: dwc3: Remove kernel doc annotation where it's not needed (Torez Smith) [1942772] - usb: dwc3: Add ACPI support for xHCI ports (Torez Smith) [1942772] - usb: dwc3: exynos: Add support for Exynos5422 suspend clk (Torez Smith) [1942772] - usb: dwc3: meson-g12a: Don't use ret uninitialized in dwc3_meson_g12a_otg_init (Torez Smith) [1942772] - usb: dwc3: trace: print enqueue/dequeue pointers too (Torez Smith) [1942772] - usb: dwc2: add support for STM32MP15 SoCs USB OTG HS and FS (Torez Smith) [1942772] - usb: dwc3: Add Amlogic A1 DWC3 glue (Torez Smith) [1942772] - cdc_ncm: Fix the build warning (Torez Smith) [1942772] - cdc_ncm: Implement the 32-bit version of NCM Transfer Block (Torez Smith) [1942772] - r8152: reject unsupported coalescing params (Torez Smith) [1942772] - usb: dwc3: gadget: Update chain bit correctly when using sg list (Torez Smith) [1942772] - r8152: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: check disconnect status after long sleep (Torez Smith) [1942772] - net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch (Torez Smith) [1942772] - USB: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - r8152: use new helper tcp_v6_gso_csum_prep (Torez Smith) [1942772] - net: usb: cdc-phonet: Replace zero-length array with flexible-array member (Torez Smith) [1942772] - usb: dwc3: qcom: Replace by (Torez Smith) [1942772] - usb: dwc3: gadget: Check for IOC/LST bit in TRB->ctrl fields (Torez Smith) [1942772] - usb: dwc2: Fix in ISOC request length checking (Torez Smith) [1942772] - usb: dwc2: Fix SET/CLEAR_FEATURE and GET_STATUS flows (Torez Smith) [1942772] - usb: dwc3: debug: fix string position formatting mixup with ret and len (Torez Smith) [1942772] - qmi_wwan: unconditionally reject 2 ep interfaces (Torez Smith) [1942772] - qmi_wwan: re-add DW5821e pre-production variant (Torez Smith) [1942772] - r8152: Add MAC passthrough support to new device (Torez Smith) [1942772] - r8152: disable DelayPhyPwrChg (Torez Smith) [1942772] - r8152: avoid the MCU to clear the lanwake (Torez Smith) [1942772] - r8152: don't enable U1U2 with USB_SPEED_HIGH for RTL8153B (Torez Smith) [1942772] - r8152: disable test IO for RTL8153B (Torez Smith) [1942772] - r8152: Disable PLA MCU clock speed down (Torez Smith) [1942772] - r8152: disable U2P3 for RTL8153B (Torez Smith) [1942772] - r8152: get default setting of WOL before initializing (Torez Smith) [1942772] - r8152: reset flow control patch when linking on for RTL8153B (Torez Smith) [1942772] - r8152: fix runtime resume for linking change (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant (Torez Smith) [1942772] - net: usb: lan78xx: Add .ndo_features_check (Torez Smith) [1942772] - usb: dwc2: Drop unlock/lock upon queueing a work item (Torez Smith) [1942772] - usb: dwc3: gadget: Remove END_TRANSFER delay (Torez Smith) [1942772] - usb: dwc3: gadget: Delay starting transfer (Torez Smith) [1942772] - usb: dwc3: gadget: Check END_TRANSFER completion (Torez Smith) [1942772] - usb: dwc3: turn off VBUS when leaving host mode (Torez Smith) [1942772] - usb: dwc2: fix debugfs FIFO count (Torez Smith) [1942772] - usb: dwc2: Fix IN FIFO allocation (Torez Smith) [1942772] - usb: dwc2: Fix Stalling a Non-Isochronous OUT EP (Torez Smith) [1942772] - usb: dwc3: gadget: Clear DCTL.ULSTCHNGREQ before set (Torez Smith) [1942772] - usb: dwc2: Fix NULL qh in dwc2_queue_transaction (Torez Smith) [1942772] - usb: dwc3: gadget: Set link state to RX_Detect on disconnect (Torez Smith) [1942772] - usb: dwc3: gadget: Don't send unintended link state change (Torez Smith) [1942772] - r8152: add missing endpoint sanity check (Torez Smith) [1942772] - net: usb: lan78xx: limit size of local TSO packets (Torez Smith) [1942772] - qmi_wwan: Add support for Quectel RM500Q (Torez Smith) [1942772] - usbip: Fix unsafe unaligned pointer usage (Torez Smith) [1942772] - usb: dwc3: use proper initializers for property entries (Torez Smith) [1942772] - net: r8152: use skb_list_walk_safe helper for gso segments (Torez Smith) [1942772] - net: usb: lan78xx: fix possible skb leak (Torez Smith) [1942772] - net: ch9200: remove unnecessary return (Torez Smith) [1942772] - net: ch9200: use __func__ in debug message (Torez Smith) [1942772] - tools: usb: usbip: Get rid of driver name printout in README (Torez Smith) [1942772] - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting (Torez Smith) [1942772] - can: kvaser_usb: fix interface sanity check (Torez Smith) [1942772] - usb: dwc3: gadget: Fix request complete check (Torez Smith) [1942772] - thunderbolt: Update documentation with the USB4 information (Torez Smith) [1942772] - usbip: Fix error path of vhci_recv_ret_submit() (Torez Smith) [1942772] - usbip: Fix receive error in vhci-hcd when using scatter-gather (Torez Smith) [1942772] - net: usb: lan78xx: Fix error message format specifier (Torez Smith) [1942772] - net: usb: lan78xx: Fix suspend/resume PHY register access error (Torez Smith) [1942772] - usb: dwc3: pci: add ID for the Intel Comet Lake -H variant (Torez Smith) [1942772] - usb: dwc3: ep0: Clear started flag on completion (Torez Smith) [1942772] - usb: dwc3: gadget: Clear started flag for non-IOC (Torez Smith) [1942772] - usb: dwc3: gadget: Fix logical condition (Torez Smith) [1942772] - can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices (Torez Smith) [1942772] - can: ucan: fix non-atomic allocation in completion handler (Torez Smith) [1942772] - net: usb: aqc111: Use the correct style for SPDX License Identifier (Torez Smith) [1942772] - net: usbnet: Fix -Wcast-function-type (Torez Smith) [1942772] - net: hso: Fix -Wcast-function-type (Torez Smith) [1942772] - ax88179_178a: add ethtool_op_get_ts_info() (Torez Smith) [1942772] - r8152: avoid to call napi_disable twice (Torez Smith) [1942772] - r8152: Re-order napi_disable in rtl8152_close (Torez Smith) [1942772] - ax88172a: fix information leak on short answers (Torez Smith) [1942772] - usb: dwc2: create debugfs directory under usb root (Torez Smith) [1942772] - usb: dwc3: create debugfs directory under usb root (Torez Smith) [1942772] - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size() (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules (Torez Smith) [1942772] - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit() (Torez Smith) [1942772] - USBIP: add config dependency for SGL_ALLOC (Torez Smith) [1942772] - net: usb: qmi_wwan: add support for DW5821e with eSIM support (Torez Smith) [1942772] - CDC-NCM: handle incomplete transfer of MTU (Torez Smith) [1942772] - usbip: tools: fix fd leakage in the function of read_attr_usbip_status (Torez Smith) [1942772] - can: peak_usb: fix a potential out-of-sync while decoding packets (Torez Smith) [1942772] - can: usb_8dev: fix use-after-free on disconnect (Torez Smith) [1942772] - can: mcba_usb: fix use-after-free on disconnect (Torez Smith) [1942772] - can: peak_usb: report bus recovery as well (Torez Smith) [1942772] - can: gs_usb: gs_can_open(): prevent memory leak (Torez Smith) [1942772] - usb: Spelling s/enpoint/endpoint/ (Torez Smith) [1942772] - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers (Torez Smith) [1942772] - usb: dwc3: of-simple: add a shutdown (Torez Smith) [1942772] - usbip: Fix free of unallocated memory in vhci tx (Torez Smith) [1942772] - usbip: tools: Fix read_usb_vudc_device() error path handling (Torez Smith) [1942772] - usb: dwc3: pci: prevent memory leak in dwc3_pci_probe (Torez Smith) [1942772] - usb: dwc3: remove the call trace of USBx_GFLADJ (Torez Smith) [1942772] - usb: dwc3: select CONFIG_REGMAP_MMIO (Torez Smith) [1942772] - r8152: check the pointer rtl_fw->fw before using it (Torez Smith) [1942772] - net: lan78xx: remove set but not used variable 'event' (Torez Smith) [1942772] - usb: dwc3: debug: Remove newline printout (Torez Smith) [1942772] - r8152: support firmware of PHY NC for RTL8153A (Torez Smith) [1942772] - r8152: move r8153_patch_request forward (Torez Smith) [1942772] - r8152: add checking fw_offset field of struct fw_mac (Torez Smith) [1942772] - r8152: rename fw_type_1 with fw_mac (Torez Smith) [1942772] - usb: dwc2: use a longer core rest timeout in dwc2_core_reset() (Torez Smith) [1942772] - usb: dwc3: Disable phy suspend after power-on reset (Torez Smith) [1942772] - r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2 (Torez Smith) [1942772] - net: usb: lan78xx: Connect PHY before registering MAC (Torez Smith) [1942772] - usb: hso: obey DMA rules in tiocmget (Torez Smith) [1942772] - r8152: support request_firmware for RTL8153 (Torez Smith) [1942772] - net: usb: sr9800: fix uninitialized local variable (Torez Smith) [1942772] - net: usb: ax88179_178a: write mac to hardware in get_mac_addr (Torez Smith) [1942772] - net: usb: qmi_wwan: add Telit 0x1050 composition (Torez Smith) [1942772] - usb: dwc3: Remove dev_err() on platform_get_irq() failure (Torez Smith) [1942772] - usb: dwc3: Switch to platform_get_irq_byname_optional() (Torez Smith) [1942772] - r8152: Set macpassthru in reset_resume callback (Torez Smith) [1942772] - qmi_wwan: add support for Cinterion CLS8 devices (Torez Smith) [1942772] - usbip: clean up an indentation issue (Torez Smith) [1942772] - usbip: vhci_hcd indicate failed message (Torez Smith) [1942772] - r8152: Add identifier names for function pointers (Torez Smith) [1942772] - r8152: Use guard clause and fix comment typos (Torez Smith) [1942772] - hso: fix NULL-deref on tty open (Torez Smith) [1942772] - net: usb: ax88179_178a: allow optionally getting mac address from device tree (Torez Smith) [1942772] - r8152: Factor out OOB link list waits (Torez Smith) [1942772] - usbnet: ignore endpoints with invalid wMaxPacketSize (Torez Smith) [1942772] - cdc_ncm: fix divide-by-zero caused by invalid wMaxPacketSize (Torez Smith) [1942772] - usbnet: sanity checking of packet sizes and device mtu (Torez Smith) [1942772] - r8152: adjust the settings of ups flags (Torez Smith) [1942772] - r8152: modify rtl8152_set_speed function (Torez Smith) [1942772] - usb: dwc3: remove generic PHY calibrate() calls (Torez Smith) [1942772] - usb: gadget: net2280: Move all "ll" registers in one structure (Torez Smith) [1942772] - usb: dwc3: gadget: Workaround Mirosoft's BESL check (Torez Smith) [1942772] - usb: dwc3: meson-g12a: fix suspend resume regulator unbalanced disables (Torez Smith) [1942772] - usb: gadget: composite: Set recommended BESL values (Torez Smith) [1942772] - usb: dwc3: gadget: Set BESL config parameter (Torez Smith) [1942772] - usb: dwc3: Separate field holding multiple properties (Torez Smith) [1942772] - usb: dwc3: don't set gadget->is_otg flag (Torez Smith) [1942772] - usb: dwc3: st: Add of_dev_put() in probe function (Torez Smith) [1942772] - usb: dwc3: st: Add of_node_put() before return in probe function (Torez Smith) [1942772] - r8152: add a helper function about setting EEE (Torez Smith) [1942772] - r8152: saving the settings of EEE (Torez Smith) [1942772] - net: usb: Delete unnecessary checks before the macro call “dev_kfree_skb” (Torez Smith) [1942772] - r8152: divide the tx and rx bottom functions (Torez Smith) [1942772] - r8152: fix accessing skb after napi_gro_receive (Torez Smith) [1942772] - r8152: change rx_copybreak and rx_pending through ethtool (Torez Smith) [1942772] - r8152: support skb_add_rx_frag (Torez Smith) [1942772] - r8152: use alloc_pages for rx buffer (Torez Smith) [1942772] - r8152: replace array with linking list for rx information (Torez Smith) [1942772] - r8152: separate the rx buffer size (Torez Smith) [1942772] - usb: dwc3: Use clk_bulk_prepare_enable() (Torez Smith) [1942772] - usb: dwc3: Use devres to get clocks (Torez Smith) [1942772] - usb: dwc3: remove generic PHYs forwarding for XHCI device (Torez Smith) [1942772] - USB: usbip: convert to use dev_groups (Torez Smith) [1942772] - usb: dwc3: Update soft-reset wait polling rate (Torez Smith) [1942772] - usb: dwc2: gadget: Fix kill_all_requests race (Torez Smith) [1942772] - usb: dwc3: omap: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: keystone: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usb: dwc3: omap: squash include/linux/platform_data/dwc3-omap.h (Torez Smith) [1942772] - usb: dwc3: meson-g12a: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1942772] - usbip: tools: fix GCC8 warning for strncpy (Torez Smith) [1942772] - usb: dwc3: Switch to use device_property_count_u32() (Torez Smith) [1942772] - usb: dwc2: Switch to use device_property_count_u32() (Torez Smith) [1942772] - can: kvaser_usb: Use struct_size() in alloc_candev() (Torez Smith) [1942772] - net: usb: Merge cpu_to_le32s + memcpy to put_unaligned_le32 (Torez Smith) [1942772] - ax88179_178a: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - usbnet: smsc75xx: Merge memcpy + le32_to_cpus to get_unaligned_le32 (Torez Smith) [1942772] - net: lan78xx: Merge memcpy + lexx_to_cpus to get_unaligned_lexx (Torez Smith) [1942772] - bluetooth: eliminate the potential race condition when removing the HCI controller (Gopal Tiwari) [1971488]- bareudp: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - vxlan: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - geneve: add NETIF_F_FRAGLIST flag for dev features (Paolo Abeni) [1977850] - RDMA/siw: Release xarray entry (Kamal Heib) [1971483] - RDMA/siw: Properly check send and receive CQ pointers (Kamal Heib) [1971483] - RDMA/siw: Fix a use after free in siw_alloc_mr (Kamal Heib) [1971483] - RDMA/rxe: Clear all QP fields if creation failed (Kamal Heib) [1971483] - RDMA/rxe: Fix a bug in rxe_fill_ip_info() (Kamal Heib) [1971483] - RDMA/rxe: Remove rxe_dma_device declaration (Kamal Heib) [1971483] - IB/hfi1: Fix error return code in parse_platform_config() (Kamal Heib) [1971483] - IB/hfi1: Remove unused function (Kamal Heib) [1971483] - RDMA/srpt: Fix error return code in srpt_cm_req_recv() (Kamal Heib) [1971483] - IB/isert: Fix a use after free in isert_connect_request (Kamal Heib) [1971483] - RDMA: Verify port when creating flow rule (Kamal Heib) [1971483] - RDMA/uverbs: Fix a NULL vs IS_ERR() bug (Kamal Heib) [1971483] - RDMA/core: Don't access cm_id after its destruction (Kamal Heib) [1971483] - RDMA/core: Prevent divide-by-zero error triggered by the user (Kamal Heib) [1971483] - RDMA/core: Add CM to restrack after successful attachment to a device (Kamal Heib) [1971483] - RDMA/core: Unify RoCE check and re-factor code (Kamal Heib) [1971483] - RDMA/core: Fix corrupted SL on passive side (Kamal Heib) [1971483] - mm: vmalloc: add cond_resched() in __vunmap() (Rafael Aquini) [1978469] - /proc/PID/smaps: Add PMD migration entry parsing (Nico Pache) [1977066] - s390: add 3f program exception handler (Nico Pache) [1977066] - x86/ioremap: Fix CONFIG_EFI=n build (Nico Pache) [1977066] - mm, slub: move slub_debug static key enabling outside slab_mutex (Nico Pache) [1977066] - mm, slub: enable slub_debug static key when creating cache with explicit debug flags (Nico Pache) [1977066] - locking/mutex: Remove repeated declaration (Nico Pache) [1977066] - percpu: make pcpu_nr_empty_pop_pages per chunk type (Nico Pache) [1977066] - mm/swap: don't SetPageWorkingset unconditionally during swapin (Nico Pache) [1977066] - s390/tlb: make cleared_pXs flags consistent with generic code (Nico Pache) [1977066] - mm, compaction: make fast_isolate_freepages() stay within zone (Nico Pache) [1977066] - mm/vmscan: restore zone_reclaim_mode ABI (Nico Pache) [1977066] - mm, compaction: move high_pfn to the for loop scope (Nico Pache) [1977066] - memblock: do not start bottom-up allocations with kernel_end (Nico Pache) [1977066] - mm, page_alloc: disable pcplists during memory offline (Nico Pache) [1977066] - mm, page_alloc: move draining pcplists to page isolation users (Nico Pache) [1977066] - mm, page_alloc: cache pageset high and batch in struct zone (Nico Pache) [1977066] - mm, page_alloc: simplify pageset_update() (Nico Pache) [1977066] - mm, page_alloc: fix core hung in free_pcppages_bulk() (Nico Pache) [1977066] - mm, page_alloc: remove setup_pageset() (Nico Pache) [1977066] - mm, page_alloc: calculate pageset high and batch once per zone (Nico Pache) [1977066] - mm, pcp: share common code between memory hotplug and percpu sysctl handler (Nico Pache) [1977066] - mm, page_alloc: clean up pageset high and batch update (Nico Pache) [1977066] - s390/uv: handle destroy page legacy interface (Nico Pache) [1977066] - mm/filemap: fix filemap_map_pages for THP (Nico Pache) [1977066] - mm: filemap: add missing FGP_ flags in kerneldoc comment for pagecache_get_page (Nico Pache) [1977066] - mm/filemap.c: rewrite pagecache_get_page documentation (Nico Pache) [1977066] - mm: filemap: clear idle flag for writes (Nico Pache) [1977066] - mm: document semantics of ZONE_MOVABLE (Nico Pache) [1977066] - mm/page_isolation: cleanup set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: drop WARN_ON_ONCE() in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_isolation: exit early when pageblock is isolated in set_migratetype_isolate() (Nico Pache) [1977066] - mm/page_alloc: tweak comments in has_unmovable_pages() (Nico Pache) [1977066] - mm: reuse only-pte-mapped KSM page in do_wp_page() (Nico Pache) [1977066] - mm/memory.c: skip spurious TLB flush for retried page fault (Nico Pache) [1977066] - /proc/PID/smaps: consistent whitespace output format (Nico Pache) [1977066] - mm/memcontrol.c: prevent missed memory.low load tears (Nico Pache) [1977066] - mm, memcg: prevent mem_cgroup_protected store tearing (Nico Pache) [1977066] - mm, memcg: prevent memory.min load/store tearing (Nico Pache) [1977066] - mm, mempolicy: fix up gup usage in lookup_node (Nico Pache) [1977066] - mm/page_ext.c: drop pfn_present() check when onlining (Nico Pache) [1977066] - drivers/base/memory.c: drop pages_correctly_probed() (Nico Pache) [1977066] - drivers/base/memory.c: drop section_count (Nico Pache) [1977066] - include/linux/mm.h: remove dead code totalram_pages_set() (Nico Pache) [1977066] - tools headers uapi: Sync asm-generic/mman-common.h with the kernel (Nico Pache) [1977066] - mm/memcg: Relocate tcpmem to below memory in struct mem_cgroup (Waiman Long) [1959772] - mm/memcg: optimize user context object stock access (Waiman Long) [1959772] - mm/memcg: improve refill_obj_stock() performance (Waiman Long) [1959772] - mm/memcg: cache vmstat data in percpu memcg_stock_pcp (Waiman Long) [1959772] - mm/memcg: move mod_objcg_state() to memcontrol.c (Waiman Long) [1959772] - mm: memcontrol: move PageMemcgKmem to the scope of CONFIG_MEMCG_KMEM (Waiman Long) [1959772] - mm: memcontrol: inline __memcg_kmem_{un}charge() into obj_cgroup_{un}charge_pages() (Waiman Long) [1959772] - mm: memcontrol: use obj_cgroup APIs to charge kmem pages (Waiman Long) [1959772] - mm: memcontrol: change ug->dummy_page only if memcg changed (Waiman Long) [1959772] - mm: memcontrol: directly access page->memcg_data in mm/page_alloc.c (Waiman Long) [1959772] - mm: memcontrol: introduce obj_cgroup_{un}charge_pages (Waiman Long) [1959772] - mm: memcontrol: slab: fix obtain a reference to a freeing memcg (Waiman Long) [1959772] - mm: memmap defer init doesn't work as expected (Baoquan He) [1906271] - mm: check nr_initialised with PAGES_PER_SECTION directly in defer_init() (Baoquan He) [1906271] - mm/memory_hotplug: mark pageblocks MIGRATE_ISOLATE while onlining memory (Baoquan He) [1906271] - mm, memory_hotplug: update pcp lists everytime onlining a memory block (Baoquan He) [1906271] - mm: pass migratetype into memmap_init_zone() and move_pfn_range_to_zone() (Baoquan He) [1906271] - nfs: account for selinux security context when deciding to share superblock (Scott Mayhew) [1927027] - nfs: remove unneeded null check in nfs_fill_super() (Scott Mayhew) [1927027] - lsm,selinux: add new hook to compare new mount to an existing mount (Scott Mayhew) [1927027] - libceph: allow addrvecs with a single NONE/blank address (Jeff Layton) [1972278] - scsi: megaraid_sas: Update driver version to 07.717.02.00-rc1 (Tomas Henzl) [1968170] - scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs (Tomas Henzl) [1968170] - scsi: megaraid_sas: Early detection of VD deletion through RaidMap update (Tomas Henzl) [1968170] - scsi: megaraid_sas: Fix resource leak in case of probe failure (Tomas Henzl) [1968170] - scsi: megaraid_sas: Send all non-RW I/Os for TYPE_ENCLOSURE device through firmware (Tomas Henzl) [1968170] - scsi: megaraid_sas: Use DEFINE_SPINLOCK() for spinlock (Tomas Henzl) [1968170] - scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V (Ewan D. Milne) [1927508] - drivers: do not build devm_platform_get_and_ioremap_resource() for s390x (Jaroslav Kysela) [1917388] - redhat: update ALSA configs and add regmap-sdw-mbq to redhat/filter-modules.sh (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - alsa: control_led - fix initialization in the mode show callback (Jaroslav Kysela) [1917388] - ALSA: seq: Fix race of snd_seq_timer_open() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ZBook Power G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: headphone and mic don't work on an Acer laptop (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix the context to call snd_pcm_stop_xrun() (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 840 Aero G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP EliteBook x360 1040 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Elite Dragonfly G2 (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix the fast discharge for headset unplugging in soundwire mode (Jaroslav Kysela) [1917388] - ASoC: tas2562: Fix TDM_CFG0_SAMPRATE values (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir: Remove fix for DMI entry on Lenovo 2020 platforms (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo 2020 AMD platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: reset enabled_cores state at suspend (Jaroslav Kysela) [1917388] - ASoC: fsl-asoc-card: Set .owner attribute when registering card. (Jaroslav Kysela) [1917388] - ASoC: topology: Fix spelling mistake "vesion" -> "version" (Jaroslav Kysela) [1917388] - ASoC: rt5659: Fix the lost powers for the HDA header (Jaroslav Kysela) [1917388] - ASoC: core: Fix Null-point-dereference in fmt_single_name() (Jaroslav Kysela) [1917388] - spi: pxa2xx: Drop useless comment in the pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Switch to use BIT() and GENMASK() in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Update header block in pxa2xx_ssp.h (Jaroslav Kysela) [1917388] - spi: pxa2xx: Add SSC2 and SSPSP2 SSP registers (Jaroslav Kysela) [1917388] - ASoC: pxa: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: pxa: pxa-ssp: Remove redundant null check before clk_prepare_enable/clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: drop unneeded snd_soc_dai_set_drvdata (Jaroslav Kysela) [1917388] - ASoC: mmp-sspa: set phase two word length register (Jaroslav Kysela) [1917388] - ASoC: pxa: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: Fix 7/8 spaces indentation in Kconfig (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: Remove manual DMA peripheral ID assignment (Jaroslav Kysela) [1917388] - ASoC: jz4740-i2s: add missed checks for clk_get() (Jaroslav Kysela) [1917388] - ASoC: Intel: fix error code cnl_set_dsp_D0() (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Unassign ram_read and read_write ops (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove haswell solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_dsp_get_thread_context (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP interface fields (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: remove unneeded semicolon (Jaroslav Kysela) [1917388] - catpt: Switch to use list_entry_is_head() helper (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Optimize applying user settings (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Correct clock selection for dai trigger (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Skip position update for unprepared streams (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Relax clock selection conditions (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Fix compilation when CONFIG_MODULES is disabled (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Cleanup after power routines streamlining (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Replace open coded variant of resource_intersection() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Streamline power routines across LPT and WPT (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Change SSP2-Codec DAI id to 0 (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Drop compress-cpu-dai bits (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5677: add missing pm_ops (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: set card and driver name dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-rt5650: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove rt5640 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove max98090 support for baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: use inclusive language for SSP bclk/fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: Atom: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: select WANT_DEV_COREDUMP (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: intel: SND_SOC_INTEL_KEEMBAY should depend on ARCH_KEEMBAY (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add explicit DMADEVICES kconfig dependency (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove baytrail solution (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: Remove duplicate kconfigs (Jaroslav Kysela) [1917388] - ASoC: remove zte zx drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: add missing stream rates and format (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: Remove unused control callback structure (Jaroslav Kysela) [1917388] - ASoC: wm8994: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: wm8903: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: wm8523: Fix a typo in a comment (Jaroslav Kysela) [1917388] - ASoC: wm8350: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: wm5102: Use get_unaligned_be16() for dac_comp_coeff (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: wcd9335: Remove unnecessary conversion to bool (Jaroslav Kysela) [1917388] - ASoC: rt715: remove unused parameter (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add the calibration functions (Jaroslav Kysela) [1917388] - ASoC: rt5682: clock driver must use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: rt1015: enable BCLK detection after calibration (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Add support for more data formats (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Move format check into `set_fmt()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Rearrange operations in `hw_params()` (Jaroslav Kysela) [1917388] - ASoC: pcm512x: Fix not setting word length if DAIFMT_CBS_CFS (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix regulator_dev_lookup() fails for id "LDO_VAUD18" (Jaroslav Kysela) [1917388] - ASoC: Remove mt6359_platform_driver_remove (Jaroslav Kysela) [1917388] - ASoC: Fix vaud18 power leakage of mt6359 (Jaroslav Kysela) [1917388] - ASoC: es8316: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix Bitclock polarity inversion (Jaroslav Kysela) [1917388] - ASoC: cs35l33: fix an error code in probe() (Jaroslav Kysela) [1917388] - ASoC: cs35l34: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: wm8998: Fix PM disable depth imbalance on error (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd9335: Set digital gain range correctly (Jaroslav Kysela) [1917388] - ASoC: TSCS454: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: TSCS42xx: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: ts3a227e: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tlv320: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: tas571x: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: tas*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tas2562: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: remove remnants of sirf prima/atlas audio codec (Jaroslav Kysela) [1917388] - ASoC: rt5645: add error checking to rt5645_probe function (Jaroslav Kysela) [1917388] - Revert "ASoC: rt5645: fix a NULL pointer dereference" (Jaroslav Kysela) [1917388] - ASoC: rt1015: modify calibration sequence for better performance (Jaroslav Kysela) [1917388] - ASoC: rk3328: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: pcm179x: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: pcm1789: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: nau8315: revise the power event of EN_PIN dapm widget for symmetry (Jaroslav Kysela) [1917388] - ASoC: nau8315: add codec driver (Jaroslav Kysela) [1917388] - ASoC: gtm601: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es8328: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: es7241: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: es7134: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: da9055: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: da7219: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Add DAPM widget to set HP out to cap-less mode (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Don't change cap-couple setting in HP PMU/PMD (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Adjust timeouts for cap-coupled outputs (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Reset interrupt flags in bias PREPARE (Jaroslav Kysela) [1917388] - ASoC: codecs/jz47xx: Use regmap_{set,clear}_bits (Jaroslav Kysela) [1917388] - treewide: Use fallthrough pseudo-keyword (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove cancel_work_sync in runtime suspend (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: Add RX support (Jaroslav Kysela) [1917388] - ALSA: cx46xx: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Convert from cpu to data format (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: tegra: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: tegra: Don't warn on probe deferral (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_rt5640: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: tegra_wm8753: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: tegra: trimslice.c: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ASoC: ti: davinci-evm: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: ti: davinci: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ti: j721e-evm: Fix compiler warning when CONFIG_OF=n (Jaroslav Kysela) [1917388] - ASoC: ti: omap-abe-twl6040: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: ti: omap-mcsp: remove duplicate test (Jaroslav Kysela) [1917388] - ASoC: uniphier: Simplify the return expression of uniphier_aio_startup (Jaroslav Kysela) [1917388] - ASoC: uniphier: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: rename shadowing variable (Jaroslav Kysela) [1917388] - ASoC: ux500: mop500: align function prototype (Jaroslav Kysela) [1917388] - ALSA: x86: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: cx2072x: Fix doubly definitions of Playback and Capture streams (Jaroslav Kysela) [1917388] - ASoC: cs42l56: fix up error handling in probe (Jaroslav Kysela) [1917388] - ASoC: cs42l52: Minor tidy up of error paths (Jaroslav Kysela) [1917388] - ASoC: cs42l51: manage mclk shutdown delay (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait for PLL to lock before switching to it (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Only start PLL if it is needed (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Wait at least 150us after writing SCLK_PRESENT (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Use bclk from hw_params if set_sysclk was not called (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Report jack and button detection (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Add Capture Support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix channel width support (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Always wait at least 3ms after reset (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Don't enable/disable regulator at Bias Level (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Fix mixer volume control (Jaroslav Kysela) [1917388] - ASoC: cs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: bd28623: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: alc5632: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak4458: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak4118: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: alc5623: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1917388] - ASoC: ak5558: Correct the dai name for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: change function name to ak5558_reset (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add support for ak5552 (Jaroslav Kysela) [1917388] - ASoC: ak5558: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: ak5558: mark OF related data as maybe unused (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove platform data and move micbias bindings include (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Remove redundant null check before clk_disable_unprepare (Jaroslav Kysela) [1917388] - ASoC: adau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: Add ADAU1372 audio CODEC support (Jaroslav Kysela) [1917388] - ASoC: amd: fix for pcm_read() error (Jaroslav Kysela) [1917388] - ASoC: amd: drop S24_LE format support (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for ALC1015P codec in acp3x machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: raven: acp3x-i2s: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: acp3x-pdm-dma: remove unnecessary assignments (Jaroslav Kysela) [1917388] - ASoC: amd: fix acpi dependency kernel warning (Jaroslav Kysela) [1917388] - ASoC: amd: update spdx license for acp machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Add support for RT5682 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: Adding DAI LINK for rt1015 codec (Jaroslav Kysela) [1917388] - ASoC: amd: Adding support for ALC1015 codec in machine driver (Jaroslav Kysela) [1917388] - ASoC: amd: AMD RV RT5682 should depends on CROS_EC (Jaroslav Kysela) [1917388] - ASoC: amd: renoir: remove invalid kernel-doc comment (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - refine DMI entries for some Lenovo products (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395 (Jaroslav Kysela) [1917388] - ASoC: amd: Replacing MSI with Legacy IRQ model (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad E14 Gen 2 (Jaroslav Kysela) [1917388] - ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe (broken BIOS) (Jaroslav Kysela) [1917388] - ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision) (Jaroslav Kysela) [1917388] - ASoC: amd: change clk_get() to devm_clk_get() and add missed checks (Jaroslav Kysela) [1917388] - ASoC: amd: Return -ENODEV for non-existing ACPI call (Jaroslav Kysela) [1917388] - ASoC: amd: support other audio modes for raven (Jaroslav Kysela) [1917388] - ASoC: topology: adhere to KUNIT formatting standard (Jaroslav Kysela) [1917388] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Jaroslav Kysela) [1917388] - ALSA: trident: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sonicvibes: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: sis7019: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: remove unneeded break (Jaroslav Kysela) [1917388] - ALSA: hdsp: don't disable if not enabled (Jaroslav Kysela) [1917388] - ALSA: hdsp: hardware output loopback (Jaroslav Kysela) [1917388] - ALSA: pci: mixart: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ALSA: maestro: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: lola: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Fix missing check in snd_intel8x0m_create (Jaroslav Kysela) [1917388] - ALSA: intel8x0: Don't update period unless prepared (Jaroslav Kysela) [1917388] - ALSA: hda: Avoid spurious unsol event handling during S3/S4 (Jaroslav Kysela) [1917388] - ALSA: ens1370: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: emu10k1: Use dma_set_mask_and_coherent to simplify code (Jaroslav Kysela) [1917388] - ALSA: ctxfi: fix comment syntax in file headers (Jaroslav Kysela) [1917388] - ALSA: ctxfi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits (Jaroslav Kysela) [1917388] - ALSA: bt87x: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: azt3328: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: asihpi: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high sampling transfer frequency (Jaroslav Kysela) [1917388] - ALSA: dice: disable double_pcm_frames mode for M-Audio Profire 610, 2626 and Avid M-Box 3 Pro (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index field (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix calculation for size of IR context payload (Jaroslav Kysela) [1917388] - ALSA: firewire-lib: fix check for the size of isochronous packet payload (Jaroslav Kysela) [1917388] - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro (Jaroslav Kysela) [1917388] - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26 (Jaroslav Kysela) [1917388] - ALSA: bebob: enable to deliver MIDI messages for multiple ports (Jaroslav Kysela) [1917388] - ALSA: bebob: detect the number of available MIDI ports (Jaroslav Kysela) [1917388] - ALSA: bebob: code refactoring for stream format detection (Jaroslav Kysela) [1917388] - ALSA: dice: fix null pointer dereference when node is disconnected (Jaroslav Kysela) [1917388] - ALSA: fireface: fix to parse sync status register of latter protocol (Jaroslav Kysela) [1917388] - ALSA: bebob: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: fireface: remove unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: oxfw: remove an unnecessary condition in hwdep_read() (Jaroslav Kysela) [1917388] - ALSA: dice: add support for Lexicon I-ONIX FW810s (Jaroslav Kysela) [1917388] - ALSA: firewire-tascam: Fix integer overflow in midi_port_work() (Jaroslav Kysela) [1917388] - ALSA: fireface: Fix integer overflow in transmit_midi_msg() (Jaroslav Kysela) [1917388] - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf() (Jaroslav Kysela) [1917388] - ALSA: firewire: fix comparison to bool warning (Jaroslav Kysela) [1917388] - ALSA: firewire: Replace tasklet with work (Jaroslav Kysela) [1917388] - ALSA: firewire: convert tasklets to use new tasklet_setup() API (Jaroslav Kysela) [1917388] - ALSA: vx: Use roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: pcsp: Fix fall-through warnings for Clang (Jaroslav Kysela) [1917388] - ALSA: dummy: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: aloop: Fix initialization of controls (Jaroslav Kysela) [1917388] - ALSA: aloop: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1917388] - ASoC: SOF: ext_manifest: use explicit number for elem_type (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: allow for partial match in parent name (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add helper to identify parent driver. (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: add new fields for mach_params (Jaroslav Kysela) [1917388] - ASoC: rt5682: Add a new property for the DMIC clock driving (Jaroslav Kysela) [1917388] - ALSA: hda: Change AZX_MAX_BUF_SIZE from 1GB to 4MB (Jaroslav Kysela) [1917388] - soundwire: sysfs: Constify static struct attribute_group (Jaroslav Kysela) [1917388] - ALSA: remove trailing semicolon in macro definition (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: don't send DAI_CONFIG IPC for older firmware (Jaroslav Kysela) [1917388] - ASoC: SOF: use current DAI config during resume (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: Update ADL P to use its own descriptor (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add missing use_acpi_target_states for TGL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: remove useless code (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix typo of SND_SOC_SOF_PCI (Jaroslav Kysela) [1917388] - ASOC: SOF: simplify nocodec mode (Jaroslav Kysela) [1917388] - ASoC: SOF: pcm: export snd_pcm_dai_link_fixup (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: update set_mach_params() (Jaroslav Kysela) [1917388] - ASoC: SOF: change signature of set_mach_params() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add Kconfig option for probe workqueues (Jaroslav Kysela) [1917388] - ASoC: SOF: Simplify sof_probe_complete handling for acpi/pci/of (Jaroslav Kysela) [1917388] - ASoC: SOF: core: Add missing error prints to device probe operation (Jaroslav Kysela) [1917388] - ASoC: SOF: match SSP config with pcm hw params (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: add hw params callback for SSP DAIs (Jaroslav Kysela) [1917388] - ASoC: SOF: parse multiple SSP DAI and hw configs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: drop display power on/off in D0i3 flows (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: move ELH chip info (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: APL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: CNL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: ICL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: set shutdown callback to hda_dsp_shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: TGL: fix EHL ops (Jaroslav Kysela) [1917388] - ASoC: SOF: core: harden shutdown helper (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: fix core status verification (Jaroslav Kysela) [1917388] - ASoC: SOF: add a helper to get topology configured mclk (Jaroslav Kysela) [1917388] - ASoC: SOF: only allocate debugfs cache buffers for IPC flood entries (Jaroslav Kysela) [1917388] - ASoC: SOF: fix debugfs initialisation error handling (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable async suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: turn off display power in resume (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: fix wrong poll bits in dsp power down (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: unregister DMIC device on probe error (Jaroslav Kysela) [1917388] - ALSA: hda: move Intel SoundWire ACPI scan to dedicated module (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: simplify Kconfig (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: move DSP_CONFIG use to platform-specific drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: pci: split PCI into different drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add sof_icl_ops for ICL platforms (Jaroslav Kysela) [1917388] - ASoC: SOF: ACPI: avoid reverse module dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: relax ABI checks and avoid unnecessary warnings (Jaroslav Kysela) [1917388] - ASoC: SOF: fix runtime pm usage mismatch after probe errors (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: add dev_dbg() when DMIC number is overridden (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: HDA: don't keep a temporary variable (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: detect DMIC number in SoundWire mixed config (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: SoundWire: refine ACPI match (Jaroslav Kysela) [1917388] - ASoC: SOF: HDA: (cosmetic) simplify hda_dsp_d0i3_work() (Jaroslav Kysela) [1917388] - ASoC: SOF: remove unused functions (Jaroslav Kysela) [1917388] - ASoC: SOF: fix string format for errors (Jaroslav Kysela) [1917388] - ASoC: SOF: add missing pm debug (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add missing Up-Extreme quirk (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: release display power at link_power (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use hdac_ext fine-grained link management (Jaroslav Kysela) [1917388] - ASoC: SOF: debug: Fix a potential issue on string buffer termination (Jaroslav Kysela) [1917388] - ASoC: SOF: add be_hw_params_fixup() for ALH (Jaroslav Kysela) [1917388] - ASoC: SOF: topology: Prevent NULL pointer dereference with no TLV (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: hda-loader: use snd_sof_dsp_core_power_down/up APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Filter out unneeded core power up/downs (Jaroslav Kysela) [1917388] - ASoC: SOF: update dsp core power status in common APIs (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda-loader: keep init cores alive (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: use snd_sof_dsp_core_power_up/down API (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: cancel D0i3 work during runtime suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Enable DMI L1 for trace (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: enable DMI L1 for D0i3-compatible streams (Jaroslav Kysela) [1917388] - ASoC: SOF: add a pointer to download repo in case FW request fails (Jaroslav Kysela) [1917388] - ASoC: SOF: SND_INTEL_DSP_CONFIG dependency (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: soundwire: fix select/depend unmet dependencies (Jaroslav Kysela) [1917388] - ASoC: SOF: intel: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support to AlderLake-P (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: tgl: do thorough remove at .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: sof-pci-dev: add .shutdown() callback (Jaroslav Kysela) [1917388] - ASoC: SOF: add snd_sof_device_shutdown() helper for shutdown (Jaroslav Kysela) [1917388] - ASoC: SOF: add .shutdown() callback to snd_sof_dsp_ops (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Avoid checking jack on system suspend (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Modify existing helper to disable WAKEEN (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: hda: Resume codec to do jack detection (Jaroslav Kysela) [1917388] - ASoC: SOF: add mutex to protect the dsp_power_state access (Jaroslav Kysela) [1917388] - ASoC: SOF: Fix spelling mistake in Kconfig "ond" -> "and" (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: update kernel-doc description (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: add SoundWire support for ADL-S (Jaroslav Kysela) [1917388] - ASoC: SOF: control: fix cppcheck warning in snd_sof_volume_info() (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and catpt drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: allow for coexistence between SOF and Atom/SST drivers (Jaroslav Kysela) [1917388] - ASoC: SOF: acpi: add dynamic selection of DSP driver (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: initial support for Alderlake-S (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig dependency for SND_INTEL_DSP_CONFIG (Jaroslav Kysela) [1917388] - ASoC: SOF: Intel: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: Kconfig: fix Kconfig punctuation and wording (Jaroslav Kysela) [1917388] - ASoC: SOF: imx: fix Kconfig punctuation (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Fix random noise at the HDMI output (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for new ADL-P Rvp (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL jack-less SoundWire configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ADL SoundWire base configurations (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl_da7219_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoc: Intel: board: add BE DAI link for WoV (Jaroslav Kysela) [1917388] - ASoC: Intel: kbl: Add MST route change to kbl machine drivers (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Set card.components string (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_rt5672: Add support for Bay Trail CR / SSP0 (Jaroslav Kysela) [1917388] - ASoC: Intel: Baytrail: Add quirk for the Dell Venue 10 Pro 5055 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: Unify the thinkpad10 and aegex10 byt-match quirks (Jaroslav Kysela) [1917388] - ASoC: Intel: Boards: cml_da7219_max98390: add capture stream for echo reference (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: Fix a typo (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: add max98390 echo reference support (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add jack detect support (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Remove 44100 sample-rate from the media and deep-buffer DAI descriptions (Jaroslav Kysela) [1917388] - ASoC: intel: atom: Stop advertising non working S24LE support (Jaroslav Kysela) [1917388] - ASoC: intel: sof_rt5682: use the topology mclk (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_rt5682: Add ALC1015Q-VB speaker amp support (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: fix -frame-larger-than (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add used AIF to the components string (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus T100TAF (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: remove unused static variable (Jaroslav Kysela) [1917388] - ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove TGL RVP mixed SoundWire/TDM config (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: remove unused TGL table with rt5682 only (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Compile when any configuration is selected (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: sof-wm8804: add check for PLL setting (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current threshold (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15 tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID 7316R tablet (Jaroslav Kysela) [1917388] - ASoC: Intel: soc-acpi: add ACPI matching table for HP Spectre x360 (Jaroslav Kysela) [1917388] - ASoC: intel: sof_sdw: add trace for dai links (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: detect DMIC number based on mach params (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add mic:dmic and cfg-mics component strings (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible (Jaroslav Kysela) [1917388] - ASoC: Intel: sof-sdw: indent and add quirks consistently (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: reorganize quirks by generation (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: max98373: get dapm from cpu_dai (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_wm5102: Add machine driver for BYT/WM5102 (Jaroslav Kysela) [1917388] - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr() (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32 (Jaroslav Kysela) [1917388] - ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E (Jaroslav Kysela) [1917388] - ASoC: Intel: remove unneeded semicolon (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Wake up device before configuring SSP port (Jaroslav Kysela) [1917388] - ASoC: Intel: remove duplicate MODULE_LICENSE/DESCRIPTION tags (Jaroslav Kysela) [1917388] - ASoC: Intel: adl: remove sof_fw_filename setting in ADL snd_soc_acpi_mach (Jaroslav Kysela) [1917388] - ASoC: Intel: common: add ACPI matching tables for Alder Lake (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: Zero snd_ctl_elem_value (Jaroslav Kysela) [1917388] - ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete (Jaroslav Kysela) [1917388] - ASoC: intel: skl: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ASoC: Intel: cht_bsw_nau8824: Move snd_soc_dai_set_tdm_slot call to cht_codec_fixup (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for the Mele PCG03 Mini PC (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_INTERNAL_MIC_MAP input-mapping (Jaroslav Kysela) [1917388] - ASoC: Intel: byt/cht: set pm ops dynamically (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove sst_pdata structure (Jaroslav Kysela) [1917388] - ASoC: Intel: Make atom components independent of sst-dsp (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST-legacy specific constants (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove unused DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST firmware components (Jaroslav Kysela) [1917388] - ASoC: Intel: Remove SST ACPI component (Jaroslav Kysela) [1917388] - ASoC: Intel: Select catpt and deprecate haswell (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5677: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: bdw-5650: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: broadwell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: haswell: Remove haswell-solution specific code (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Simple sysfs attributes (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Event tracing (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Device driver lifecycle (Jaroslav Kysela) [1917388] - drivers: provide devm_platform_get_and_ioremap_resource() (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: PCM operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Firmware loading and context restore (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Define DSP operations (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Add IPC message handlers (Jaroslav Kysela) [1917388] - ASoC: Intel: catpt: Implement IPC protocol (Jaroslav Kysela) [1917388] - ASoC: Intel: Add catpt base members (Jaroslav Kysela) [1917388] - resource: Introduce resource_intersection() for overlapping resources (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140 (Jaroslav Kysela) [1917388] - ASoC: Intel: boards: byt/cht: set card and driver name at run time (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS quirk-flag (Jaroslav Kysela) [1917388] - ASoC: Intel: KMB: Enable DMA transfer mode (Jaroslav Kysela) [1917388] - ASoC: Intel: keembay: use inclusive language for bclk and fsync (Jaroslav Kysela) [1917388] - ASoC: Intel: bytcht_es8316: Remove comment about SSP0 being untested (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove bclk_ratio (Jaroslav Kysela) [1917388] - ASoC: cs42l73: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: cs53l30: Add missing regmap use_single config (Jaroslav Kysela) [1917388] - ASoC: sti-sas: add missing MODULE_DEVICE_TABLE (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Regmap must use_single_read/write (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: fix the function number of SDCA control for feature unit 0x1E (Jaroslav Kysela) [1917388] - ASoC: da7219: do not request a new clock consummer reference (Jaroslav Kysela) [1917388] - ASoC: max98088: fix ni clock divider calculation (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: add the notification when volume changed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: change capture switch controls (Jaroslav Kysela) [1917388] - ASoC: da7219: properly get clk from the provider (Jaroslav Kysela) [1917388] - ASoC: wcd934x: use the clock provider API (Jaroslav Kysela) [1917388] - ASoC: adau17x1: Avoid overwriting CHPF (Jaroslav Kysela) [1917388] - ASoC: ak4458: enable daisy chain (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add support on format S32_LE (Jaroslav Kysela) [1917388] - ASoC: rt286: Generalize support for ALC3263 codec (Jaroslav Kysela) [1917388] - ASoC: rt298: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: rt286: Configure combo jack for headphones (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: Disable cache mechanism for readbacks (Jaroslav Kysela) [1917388] - ASoC: rt286: Make RT286_SET_GPIO_* readable and writable (Jaroslav Kysela) [1917388] - ASoC: rt286: Fix upper byte in DMIC2 configuration (Jaroslav Kysela) [1917388] - ASoC: ak4458: check reset control status (Jaroslav Kysela) [1917388] - ASoC: codecs: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt715: remove kcontrols which no longer be used (Jaroslav Kysela) [1917388] - ASoC: rt715: add main capture switch and main capture volume (Jaroslav Kysela) [1917388] - ASoC: rt715: modification for code simplicity (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: Fix missing IRQF_ONESHOT as only threaded handler (Jaroslav Kysela) [1917388] - ASoC: cs35l35: remove unused including (Jaroslav Kysela) [1917388] - ASoC: ak5558: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: cs35l36: Fix an error handling path in 'cs35l36_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: cs35l35: Fix an error handling path in 'cs35l35_i2c_probe()' (Jaroslav Kysela) [1917388] - ASoC: wcd9335: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: remove registers to sync with rt1019 datasheet (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: tas2770: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: cx2072x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt1019: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add AIC3106 (Jaroslav Kysela) [1917388] - ASoC: codecs: wsa881x: constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: codecs: Fix runtime PM imbalance in tas2552_probe (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove pack_id check in rt1011 (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: add SPI support (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move I2C to separated file (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: rename probe function (Jaroslav Kysela) [1917388] - ASoC: codecs: tlv320aic3x: move model definitions (Jaroslav Kysela) [1917388] - ASoC: max98390: Add support for tx slot configuration. (Jaroslav Kysela) [1917388] - ASoC: ak5558: Fix s/show/slow/ typo (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Register clocks before registering component (Jaroslav Kysela) [1917388] - ASoC: tlv320aic32x4: Increase maximum register in regmap (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a rt5670_components() helper (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add a quirk for the Dell Venue 10 Pro 5055 (Jaroslav Kysela) [1917388] - ASoC: da732x: simplify code (Jaroslav Kysela) [1917388] - ASoC: lm49453: fix useless assignment before return (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: Fix spelling mistake "reate" -> "create" (Jaroslav Kysela) [1917388] - ASoC: mediatek: mt6359: add MT6359 accdet jack driver (Jaroslav Kysela) [1917388] - ASoC: max98373: Added 30ms turn on/off time delay (Jaroslav Kysela) [1917388] - ASoC: max98373: Changed amp shutdown register as volatile (Jaroslav Kysela) [1917388] - ASoC: wm8960: Remove bitclk relax condition in wm8960_configure_sysclk (Jaroslav Kysela) [1917388] - ASoC: max98373: Added controls for autorestart config (Jaroslav Kysela) [1917388] - ASoC: rt1015: Add bclk detection and dc detection (Jaroslav Kysela) [1917388] - ASoC: wm8960: Fix wrong bclk and lrclk with pll enabled for some chips (Jaroslav Kysela) [1917388] - ASoC: rt1019: make symbol 'rt1019_i2c_driver' static (Jaroslav Kysela) [1917388] - ASoC: rt1019: add rt1019 amplifier driver (Jaroslav Kysela) [1917388] - ASoC: tscs454: remove useless test on PLL disable (Jaroslav Kysela) [1917388] - ASoC: tlv320dac33: clarify expression (Jaroslav Kysela) [1917388] - ASoC: tas2770: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove warning on return value (Jaroslav Kysela) [1917388] - ASoC: tas2562: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: sti-sas: remove unused struct members (Jaroslav Kysela) [1917388] - ASoC: sigmadsp: align function prototype (Jaroslav Kysela) [1917388] - ASoC: pcm1681: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: nau8825: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6359: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: mt6358: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: max98090: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove unused spk_mask member (Jaroslav Kysela) [1917388] - ASoC: hdmi-codec: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: align function arguments (Jaroslav Kysela) [1917388] - ASoC: hdac_hdmi: remove useless initializations (Jaroslav Kysela) [1917388] - ASoC: da7219-aad: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove duplicate else branch (Jaroslav Kysela) [1917388] - ASoC: cx2070x: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: adau1977: remove useless return (Jaroslav Kysela) [1917388] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1917388] - ASoC: ad1836: remove useless return (Jaroslav Kysela) [1917388] - ASoC: ab8500-codec: remove useless structure (Jaroslav Kysela) [1917388] - ASoC: rt711: add snd_soc_component remove callback (Jaroslav Kysela) [1917388] - ASoC: rt5659: Update MCLK rate in set_sysclk() (Jaroslav Kysela) [1917388] - ASoC: rt5640: Rename 'Mono DAC Playback Volume' to 'DAC2 Playback Volume' (Jaroslav Kysela) [1917388] - ASoC: rt1015p: add acpi device id for rt1015p (Jaroslav Kysela) [1917388] - ASoC: wm_hubs: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm_adsp: simplify return value (Jaroslav Kysela) [1917388] - ASoC: wm8996: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8994: align function prototype (Jaroslav Kysela) [1917388] - ASoC: wm8978: clarify expression (Jaroslav Kysela) [1917388] - ASoC: wm8958-dsp2: rename local 'control' arrays (Jaroslav Kysela) [1917388] - ASoC: arizona: fix function argument (Jaroslav Kysela) [1917388] - ASoC: wm2200: remove unused structure (Jaroslav Kysela) [1917388] - ASoC: rt5682: add delay time of workqueue to control next IRQ event (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Remove unused including (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Fix return value check in rt715_sdca_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Set clock source for both ways of stream (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Provide finer control on playback path (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Disable regulators if probe fails (Jaroslav Kysela) [1917388] - ASoC: cs42l42: Remove power if the driver is being removed (Jaroslav Kysela) [1917388] - ASoC: rt711-sdca: Add RT711 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: rt5645: The ALC3270 variant does not have a headset-mic pin (Jaroslav Kysela) [1917388] - ASoC: rt5645: Move rt5645_platform_data to sound/soc/codecs/rt5645.c (Jaroslav Kysela) [1917388] - ASoC: codecs/jz4770: Remove superfluous error message (Jaroslav Kysela) [1917388] - ASoC: rt715-sdca: Add RT715 sdca vendor-specific driver (Jaroslav Kysela) [1917388] - ASoC: wm8962: Relax bit clock divider searching (Jaroslav Kysela) [1917388] - ASoC: rt1316: Fix return value check in rt1316_sdw_probe() (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: Fix identation of .driver elements (Jaroslav Kysela) [1917388] - ASoC: codec: Omit superfluous error message in jz4760_codec_probe() (Jaroslav Kysela) [1917388] - ASoC: sigmadsp-regmap: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: rt5631: fix kernel-doc warning (Jaroslav Kysela) [1917388] - ASoC: jz4760: fix set but not used warning (Jaroslav Kysela) [1917388] - ASoC: cs4270: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5682: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5677: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5677: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5670: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5668: remove useless assignments (Jaroslav Kysela) [1917388] - ASoC: rt5668: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5665: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5663: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5660: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5659: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5651: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: rt5651: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt5645: use logical OR (Jaroslav Kysela) [1917388] - ASoC: rt5640: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1308: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1305: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1016: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1015: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: clarify expression (Jaroslav Kysela) [1917388] - ASoC: rt1011: remove redundant test (Jaroslav Kysela) [1917388] - ASoC: rt1011: use logical OR (Jaroslav Kysela) [1917388] - ASoC: wm8524: Do not print probe defer error (Jaroslav Kysela) [1917388] - ASoC: codecs: nau8825: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: rt1316: Add RT1316 SDCA vendor-specific driver (Jaroslav Kysela) [1917388] - ASoc: rt5631: Constify static struct coeff_clk_div (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct acpi_device_id (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct snd_soc_dai_ops (Jaroslav Kysela) [1917388] - ASoC: rt*: Constify static struct sdw_slave_ops (Jaroslav Kysela) [1917388] - ASoC: wcd934x: remove useless return (Jaroslav Kysela) [1917388] - ASoC: wcd9335: clarify return value (Jaroslav Kysela) [1917388] - ASoC: wcd-clsh-v2: align function prototypes (Jaroslav Kysela) [1917388] - ASoC: codecs: wcd934x: add a sanity check in set channel map (Jaroslav Kysela) [1917388] - ASoC: es8316: Simplify adc_pga_gain_tlv table (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value on probe (Jaroslav Kysela) [1917388] - ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1917388] - ASoC: rt5670: Add emulated 'DAC1 Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove ADC vol-ctrl mute bits poking from Sto1 ADC mixer settings (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'HP Playback Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt5670: Remove 'OUT Channel Switch' control (Jaroslav Kysela) [1917388] - ASoC: rt1015: fix i2c communication error (Jaroslav Kysela) [1917388] - ASoC: codec: Add driver for JZ4760 internal codec (Jaroslav Kysela) [1917388] - ASoC: codec/ingenic: Depend on MACH_INGENIC (Jaroslav Kysela) [1917388] - ASoC: codec: hdmi-codec: Support IEC958 encoded PCM format (Jaroslav Kysela) [1917388] - ASoC: rt5682: Fix panic in rt5682_jack_detect_handler happening during system shutdown (Jaroslav Kysela) [1917388] - ASoC: rt5682: do nothing in rt5682_suspend/resume in sdw mode (Jaroslav Kysela) [1917388] - ASoC: rt5682-sdw: cancel_work_sync() in .remove and .suspend (Jaroslav Kysela) [1917388] - ASoC: rt711-sdw: use cancel_work_sync() for .remove (Jaroslav Kysela) [1917388] - ASoC: rt700-sdw: use cancel_work_sync() in .remove as well as .suspend (Jaroslav Kysela) [1917388] - ASoC: mt6359: reduce log verbosity for optional DT properties (Jaroslav Kysela) [1917388] - ASoC: codecs: add missing max_register in regmap config (Jaroslav Kysela) [1917388] - ASoC: cpcap: fix microphone timeslot mask (Jaroslav Kysela) [1917388] - ASoC: rt5659: Add Kconfig prompt (Jaroslav Kysela) [1917388] - ASoC: max98373: Fixes a typo in max98373_feedback_get (Jaroslav Kysela) [1917388] - ASoC: ak4458: correct reset polarity (Jaroslav Kysela) [1917388] - ASoC: rt5682: remove connection with LDO2 in DAPM graph (Jaroslav Kysela) [1917388] - ASoC: ml26124: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lm49453: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: inno_rk3036: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: cx2072x: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: alc5632: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ab8500: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: lochnagar-sc: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mt6660: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: mc13783: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: sgtl5000: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ssm2602: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: zl38060: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: jz4740: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: ak*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tscs*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: max*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: es*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: da*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: nau*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: rt*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: tlv*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: wm*: sync parameter naming (rate/sample_bits) (Jaroslav Kysela) [1917388] - ASoC: remove sirf prima/atlas drivers (Jaroslav Kysela) [1917388] - ASoC: codecs: soundwire: increase resume timeout (Jaroslav Kysela) [1917388] - ASoC: es8316: Fix possible NULL pointer deref in es8316_disable_jack_detect() (Jaroslav Kysela) [1917388] - ASoC: rt5682: enable fast discharge for headset unplugging (Jaroslav Kysela) [1917388] - ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test (Jaroslav Kysela) [1917388] - ASoC: rt5645: Enable internal microphone and JD on ECS EF20 (Jaroslav Kysela) [1917388] - ASoC: rt5645: add inv_hp_det flag (Jaroslav Kysela) [1917388] - ASoC: rt5645: Add ACPI-defined GPIO for ECS EF20 series (Jaroslav Kysela) [1917388] - ASoC: rt5645: Introduce mapping for ACPI-defined GPIO (Jaroslav Kysela) [1917388] - ASoC: rt1015: re-calibrate again when resuming (Jaroslav Kysela) [1917388] - ASoC: rt5645: Remove the redundant delay time (Jaroslav Kysela) [1917388] - ASoC: rt1015: remove unneeded variables in rt1015_priv (Jaroslav Kysela) [1917388] - ASoC: rt1015: refactor retry loop and rt1015_priv allocation (Jaroslav Kysela) [1917388] - ASoC: rt1015: return error if any when setting bypass_boost (Jaroslav Kysela) [1917388] - ASoC: rt1015: save boost_mode only if valid (Jaroslav Kysela) [1917388] - ASoC: rt1015: sort header inclusions (Jaroslav Kysela) [1917388] - ASoC: Intel: common: Fix some typos (Jaroslav Kysela) [1917388] - ASoC: soc.h: remove for_each_rtd_dais_rollback() (Jaroslav Kysela) [1917388] - ASoC: soc.h: return error if multi platform at snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: fixup return timing for snd_soc_fixup_dai_links_platform_name() (Jaroslav Kysela) [1917388] - ASoC: soc.h: add asoc_link_to_cpu/codec/platform() macro (Jaroslav Kysela) [1917388] - ASoC: add soc-jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: Align the word of comment for SND_SOC_DAIFMT_CBC_CFC (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix always-false condition (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix signed/unsigned issue (Jaroslav Kysela) [1917388] - ASoC: soc-acpi: remove useless initialization (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: ignore dummy-DAI at soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-utils: add snd_soc_component_is_dummy() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate DAI name if soc_pcm_params_symmetry() failed (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't use "name" on __soc_pcm_params_symmetry() macro (Jaroslav Kysela) [1917388] - ASoC: core: Don't set platform name when of_node is set (Jaroslav Kysela) [1917388] - ASoC: soc-compress: lock pcm_mutex to resolve lockdep error (Jaroslav Kysela) [1917388] - ASoC: soc-core: use device_unregister() if rtd allocation failed (Jaroslav Kysela) [1917388] - ASoC: soc-core: add comment for rtd freeing (Jaroslav Kysela) [1917388] - ASoC: soc-component: Add snd_soc_pcm_component_ack (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]component_xxx() (Jaroslav Kysela) [1917388] - ASoC: don't indicate error message for snd_soc_[pcm_]dai_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for dpcm_be_dai_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: don't indicate error message for soc_pcm_hw_free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_fe/be_dai_startup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_run_update_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_be_dai_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at dpcm_path_get() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_prepare() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: indicate error message at soc_pcm_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: share DPCM BE DAI stop operation (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove unneeded !rtd->dai_link check (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup dpcm_be_dai_startup() user count (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_hw_sanity_check() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_update_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: direct copy at snd_soc_set_runtime_hwparams() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_cpu/codec_dai_name() macro (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: check DAI activity under soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-core: fix DMI handling (Jaroslav Kysela) [1917388] - ASoC: soc-dai: fix kernel-doc (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add error log (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove shadowing variable (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove redundant assignment (Jaroslav Kysela) [1917388] - ASoC: soc-ops: remove useless assignment (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_set_fe_runtime() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_runtime_setup_fe() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: unpack dpcm_init_runtime_hw() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove strange format storing (Jaroslav Kysela) [1917388] - ASoC: soc-core: Prevent warning if no DMI table is present (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hw param limits calculation for multi-DAI (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fix hwparams min/max init for dpcm (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_format() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_chan() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_update_rate() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: change error message to debug message (Jaroslav Kysela) [1917388] - ASoC: dapm: use component prefix when checking widget names (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: fixup snd_pcm_limit_hw_rates() timing (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: use snd_pcm_hardware at dpcm_runtime_merge_xxx() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_create_pcm() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_get_playback_capture() and simplify soc_new_pcm() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: tidyup pcm setting (Jaroslav Kysela) [1917388] - ASoC: soc-component: fix undefined reference to __ffssi2 (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_read/write_field() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_params_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: cleanup soc_pcm_apply_symmetry() (Jaroslav Kysela) [1917388] - ASoC: soc-dai.h: remove symmetric_rates/samplebits (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_set_dai_params() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add dpcm_set_be_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move dpcm_set_fe_update_state() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Fix an uninitialized error code (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: return correct -ERRNO in failure path (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: disconnect BEs if the FE is not ready (Jaroslav Kysela) [1917388] - ASoC: dapm: remove widget from dirty list on free (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: care trigger rollback (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: remove dpcm_do_trigger() (Jaroslav Kysela) [1917388] - ASoC: pcm: send DAPM_STREAM_STOP event in dpcm_fe_dai_shutdown (Jaroslav Kysela) [1917388] - ASoC: soc-core: tidyup jack.h (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_dapm_suspend_resume() (Jaroslav Kysela) [1917388] - ASoC: soc-core: add soc_playback_digital_mute() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: add soc_compr_clean() and call it from soc_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_link_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_component_compr_open/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_compr_startup/shutdown() (Jaroslav Kysela) [1917388] - ASoC: soc-compress: move soc_compr_free() next to soc_compr_open() (Jaroslav Kysela) [1917388] - ASoC: pcm: call snd_soc_dapm_stream_stop() in soc_pcm_hw_clean (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_metadata() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_copy() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_pointer() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_ack() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_codec_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_caps() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_get_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_set_params() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_trigger() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add snd_soc_component_compr_open() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: Get all BEs along DAPM path (Jaroslav Kysela) [1917388] - ASoC: soc-core: Fix component name_prefix parsing (Jaroslav Kysela) [1917388] - ASoC: soc-compress: assume SNDRV_PCM_STREAM_xxx and SND_COMPRESS_xxx are same (Jaroslav Kysela) [1917388] - ASoC: soc-compress: tidyup STREAM vs COMPRESS (Jaroslav Kysela) [1917388] - ASoC: soc-topology: clarify expression (Jaroslav Kysela) [1917388] - ASoC: sync parameter naming : rate / sample_bits (Jaroslav Kysela) [1917388] - ASoC: topology: Check if ops is set before dereference (Jaroslav Kysela) [1917388] - ASoC: topology: Ensure that needed parameters are set (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: add soc_pcm_hw_clean() and call it from soc_pcm_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-dai: add mark for snd_soc_dai_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-component: add mark for snd_soc_pcm_component_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-link: add mark for snd_soc_link_hw_params/free() (Jaroslav Kysela) [1917388] - ASoC: soc-pcm: move soc_pcm_hw_free() next to soc_pcm_hw_params() (Jaroslav Kysela) [1917388] - ASoC: dapm: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1917388] - ASoC: dmaengine: Document support for TX only or RX only streams (Jaroslav Kysela) [1917388] - ASoC: soc-core: use devm_snd_soc_register_card() (Jaroslav Kysela) [1917388] - ALSA: usb: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix control 'access overflow' errors from chmap (Jaroslav Kysela) [1917388] - ALSA: line6: Fix racy initialization of LINE6 MIDI (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Disable sample read check if firmware doesn't give back (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be static (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Improve driver startup messages (Jaroslav Kysela) [1917388] - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix control-request direction (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounce access in MIDI EP parser (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Validate MS endpoint descriptors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add dB range mapping for Sennheiser Communications Headset PC 8 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Remove redundant assignment to len (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit sync clearance at stopping stream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Generic application of implicit fb to Roland/BOSS devices (Jaroslav Kysela) [1917388] - Revert "ALSA: usb-audio: Add support for many Roland devices..." (Jaroslav Kysela) [1917388] - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Re-apply implicit feedback mode to Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: DJM-750: ensure format is set (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for many Roland devices' implicit feedback quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply implicit feedback mode for BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Explicitly set up the clock selector (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip probe of UA-101 devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop implicit fb quirk entries dubbed for capture (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feeback support for the BOSS GT-1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply sample rate quirk to Logitech Connect (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check connector value on resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Carve out connector value checking into a helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix unintentional sign extension issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Apply the control quirk to Plantronics headsets (Jaroslav Kysela) [1917388] - ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar (Jaroslav Kysela) [1917388] - ALSA: usb-audio: fix Pioneer DJM-850 control label info (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Configure Pioneer DJM-850 samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Declare Pioneer DJM-850 mixer controls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add Pioneer DJM-850 to quirks-table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix Pioneer DJM devices URB_CONTROL request direction to set samplerate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use Corsair Virtuoso mapping for Corsair Virtuoso SE (Jaroslav Kysela) [1917388] - ALSA: usb-audio: generate midi streaming substream names from jack names (Jaroslav Kysela) [1917388] - ALSA: usb-audio: use usb headers rather than define structs locally (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Allow modifying parameters with succeeding hw_params calls (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop bogus dB range in too low level (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't abort even if the clock rate differs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb quirk for BOSS GP-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for RC-505 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't avoid stopping the stream at disconnection (Jaroslav Kysela) [1917388] - ALSA: usb-audio: More strict state change in EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle invalid running state at releasing EP (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk (Jaroslav Kysela) [1917388] - ALSA: Convert strlcpy to strscpy when return value is unused (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Correct document for snd_usb_endpoint_free_all() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM-450 to the quirks table (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add DJM450 to Pioneer format quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: workaround for iface reset issue (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix "RANGE setting not yet supported" errors (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Skip the clock selector inquiry for single connections (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix hw constraints dependencies (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJM-750 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid implicit feedback on Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set sample rate for all sharing EPs on UAC1 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UAC1 rate setup for secondary endpoints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert the last strlcpy() usage (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Convert remaining strlcpy() to strscpy() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always apply the hw constraints for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix implicit feedback sync setup for Pioneer devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Annotate the endpoint index in audioformat (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid unnecessary interface re-setup (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Choose audioformat of a counter-part substream (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix the missing endpoints creations for quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for BOSS AD-10 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add alias entry for ASUS PRIME TRX40 PRO-S (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit fb support for Steinberg UR22 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add support for Pioneer DJ DDJ-RR controller (Jaroslav Kysela) [1917388] - ALSA: usb-audio: US16x08: fix value count for level meters (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix MOTU M-Series quirks (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix quirks for other BOSS devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit_fb module option (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add generic implicit fb parsing (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Factor out the implicit feedback quirk code (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Quirk for BOSS GT-001 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Show sync endpoint information in proc outputs (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use unsigned char for iface and altsettings fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Replace slave/master terms (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify rate_min/max and rates set up (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Unify the code for the next packet size calculation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop unneeded snd_usb_substream fields (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactoring endpoint URB deactivation (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use atomic_t for endpoint use_count (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Constify audioformat pointer references (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix possible stall of implicit fb packet ring-buffer (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Refactor endpoint management (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Fix EP matching for continuous rates (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Always set up the parameters after resume (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add quirk for Pioneer DJ DDJ-SR2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set callbacks via snd_usb_endpoint_set_callback() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Stop both endpoints properly at error (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_pitch() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify snd_usb_init_sample_rate() arguments (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't set altsetting before initializing sample rate (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Pass snd_usb_audio object to quirk functions (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_host_interface() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop keep_interface flag again (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Create endpoint objects at parsing phase (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Avoid doubly initialization for implicit fb (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Drop debug.h (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Simplify hw_params rules (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add hw constraint for implicit fb sync (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Move snd_usb_autoresume() call out of setup_hw_info() (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Track implicit fb sync endpoint in audioformat list (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Improve some debug prints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Set and clear sync EP link properly (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add snd_usb_get_endpoint() helper (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check implicit feedback EP generically for UAC2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Check valid altsetting at parsing rates for UAC2/3 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Don't call usb_set_interface() at trigger callback (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Handle discrete rates properly in hw constraints (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add delay quirk for all Logitech USB devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Use ALC1220-VB-DT mapping for ASUS ROG Strix TRX40 mobo (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Qu-16 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for MODX (Jaroslav Kysela) [1917388] - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2 (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk (Jaroslav Kysela) [1917388] - ALSA: usb-audio: Add mixer support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: reset eapd coeff to default value for alc287 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Cancel pending works before suspend (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Fix compile warning without PCI (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Move unsol callback setups to parser (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: make some const arrays static, makes object smaller (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add ZxR surround DAC setup. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 PLL write helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Remove now unnecessary DSP setup functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Ensure DSP is properly setup post-firmware download. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add 8051 exram helper functions. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Add stream port remapping function. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Reset codec upon initialization. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Change Input Source enum strings. (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg. (Jaroslav Kysela) [1917388] - ALSA: hda: Reinstate runtime_allow() for all hda controllers (Jaroslav Kysela) [1917388] - ACPI: Test for ACPI_SUCCESS rather than !ACPI_FAILURE (Jaroslav Kysela) [1917388] - ALSA: hda: Flush pending unsolicited events before suspend (Jaroslav Kysela) [1917388] - ALSA: hda: Re-add dropped snd_poewr_change_state() calls (Jaroslav Kysela) [1917388] - ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks (Jaroslav Kysela) [1917388] - ALSA: hda: Separate runtime and system suspend (Jaroslav Kysela) [1917388] - ALSA: hda: update the power_state during the direct-complete (Jaroslav Kysela) [1917388] - ALSA: hda: Balance runtime/system PM if direct-complete is disabled (Jaroslav Kysela) [1917388] - ALSA: hda: Refactor codec PM to use direct-complete optimization (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda: Fix a regression in Capture Switch mixer read (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-M PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Headphone volume is controlled by Front mixer (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx (Jaroslav Kysela) [1917388] - ALSA: hda: fixup headset for ASUS GU502 laptop (Jaroslav Kysela) [1917388] - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx (Jaroslav Kysela) [1917388] - ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add fixup for HP OMEN laptop (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp on HP Envy AiO 32 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Re-order CX5066 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC662 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Use CS8409 filter to fix abnormal sounds on Bullseye (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Set Initial DMIC volume for Bullseye to -26 dB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on EliteBook 845 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Headset Mic issue on HP platform (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: GA503 use same quirks as GA401 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G7 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Lenovo Ideapad S740 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mic boost on Intel NUC 8 (Jaroslav Kysela) [1917388] - ALSA: HDA: Add access description in __snd_hda_add_vmaster (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model (Jaroslav Kysela) [1917388] - ALSA: HDA - remove the custom implementation for the audio LED trigger (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: fix max DP-MST dev_num for Intel TGL+ platforms (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Make CS8409 driver more generic by using fixups. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Fix CS42L42 Headset Mic volume control name (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Cleanup patch_cirrus.c code. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add error handling into CS8409 I2C functions (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air (Jaroslav Kysela) [1917388] - ALSA: hda: generic: Fix the micmute led init state (Jaroslav Kysela) [1917388] - ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support (Jaroslav Kysela) [1917388] - ALSA: hda: Drop the BATCH workaround for AMD controllers (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add Headphone and Headset MIC Volume Control (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add jack detect interrupt support from CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Add support for CS8409 HDA bridge and CS42L42 companion codec. (Jaroslav Kysela) [1917388] - ALSA: hda/cirrus: Increase AUTO_CFG_MAX_INS from 8 to 18 (Jaroslav Kysela) [1917388] - ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5 (Jaroslav Kysela) [1917388] - ALSA: hda - bind headset buttons to the headphone jack (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Intel NUC 10 (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256 (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup (Jaroslav Kysela) [1917388] - ALSA: hda: Add another CometLake-H PCI ID (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi: Drop bogus check at closing a stream (Jaroslav Kysela) [1917388] - ALSA: hda: Drop power save deny list entry for Clevo W65_67SB (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: modify EAPD in the ALC886 (Jaroslav Kysela) [1917388] - ALSA: hda/via: Apply the workaround generically for Clevo machines (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Remove unnecessary null-check from hda_tegra_runtime_resume() (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Reset hardware (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: Use clk_bulk helpers (Jaroslav Kysela) [1917388] - ALSA: hda: Assign boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda: boolean values to a bool variable (Jaroslav Kysela) [1917388] - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256 (Jaroslav Kysela) [1917388] - ALSA: pci: Simplify with dma_set_mask_and_coherent() (Jaroslav Kysela) [1917388] - ALSA: hda/via: Add minimum mute flag (Jaroslav Kysela) [1917388] - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T (Jaroslav Kysela) [1917388] - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid (Jaroslav Kysela) [1917388] - ALSA: hda/hdmi - enable runtime pm for CI AMD display audio (Jaroslav Kysela) [1917388] - ALSA: hda/tegra: fix tegra-hda on tegra30 soc (Jaroslav Kysela) [1917388] - ALSA: hda: Revert "ALSA: hda: Allow setting preallocation again for x86" (Jaroslav Kysela) [1917388] - ALSA: hda: Fix spelling mistakes (Jaroslav Kysela) [1917388] - ALSA: hda: ignore invalid NHLT table (Jaroslav Kysela) [1917388] - ALSA: hda: intel-nhlt: verify config type (Jaroslav Kysela) [1917388] - ALSA: hda: fix kernel-doc warnings (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Alder Lake support (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: Add SND_INTEL_BYT_PREFER_SOF Kconfig option (Jaroslav Kysela) [1917388] - ALSA: hda: add link_power op to hdac_bus_ops (Jaroslav Kysela) [1917388] - ALSA: hda: Constify static attribute_group (Jaroslav Kysela) [1917388] - ALSA: hda: Use DIV_ROUND_UP()/roundup() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: ignore dsp_driver parameter for PCI legacy devices (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add Broadwell ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: hda: intel-dsp-config: add helper for ACPI DSP driver selection (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix missing check of the new non-cached buffer type (Jaroslav Kysela) [1917388] - ALSA: pcm: use dma_can_mmap() to check if a device supports dma_mmap_* (Jaroslav Kysela) [1917388] - ALSA: timer: Fix master timer notification (Jaroslav Kysela) [1917388] - ALSA: control led: fix memory leak in snd_ctl_led_register (Jaroslav Kysela) [1917388] - ALSA: control: Fix racy management of user ctl memory size account (Jaroslav Kysela) [1917388] - ALSA: control_led - fix the stack usage (control element ops) (Jaroslav Kysela) [1917388] - ALSA: control - double free in snd_ctl_led_init() (Jaroslav Kysela) [1917388] - ALSA: control: Add memory consumption limit to user controls (Jaroslav Kysela) [1917388] - ALSA: control - off by one in store_mode() (Jaroslav Kysela) [1917388] - ALSA: control led - improve the set_led_id() parser (Jaroslav Kysela) [1917388] - ALSA: control - add the missing prev_lops2 initialization (Jaroslav Kysela) [1917388] - ALSA: led control - add sysfs kcontrol LED marking layer (Jaroslav Kysela) [1917388] - ALSA: control - add sysfs support to the LED trigger module (Jaroslav Kysela) [1917388] - ALSA: control - add generic LED trigger module as the new control layer (Jaroslav Kysela) [1917388] - ALSA: control - add layer registration routines (Jaroslav Kysela) [1917388] - ALSA: control - introduce snd_ctl_notify_one() helper (Jaroslav Kysela) [1917388] - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect (Jaroslav Kysela) [1917388] - ALSA: pcm: Fix couple of typos (Jaroslav Kysela) [1917388] - ALSA: core: avoid -Wempty-body warnings (Jaroslav Kysela) [1917388] - ALSA: pcm: Add debug print on memory allocation failure (Jaroslav Kysela) [1917388] - ALSA: core - add missing compress device type to /proc/asound/devices (Jaroslav Kysela) [1917388] - ALSA: pcm: Use for_each_pcm_substream() macro (Jaroslav Kysela) [1917388] - ALSA: pcm: Don't call sync_stop if it hasn't been stopped (Jaroslav Kysela) [1917388] - ALSA: pcm: Assure sync with the pending stop operation at suspend (Jaroslav Kysela) [1917388] - ALSA: pcm: Call sync_stop at disconnection (Jaroslav Kysela) [1917388] - ASoC: dmaengine_pcm: add peripheral configuration (Jaroslav Kysela) [1917388] - ALSA: core: Fix the debugfs removal at snd_card_free() (Jaroslav Kysela) [1917388] - ALSA: jack: implement software jack injection via debugfs (Jaroslav Kysela) [1917388] - ALSA: pcm: One more dependency for hw constraints (Jaroslav Kysela) [1917388] - ALSA: seq: oss: Fix missing error check in snd_seq_oss_synth_make_info() (Jaroslav Kysela) [1917388] - ALSA: oss: Use DIV_ROUND_CLOSEST() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Use DIV_ROUND_UP() instead of open-coding it (Jaroslav Kysela) [1917388] - ALSA: core: Remove redundant comments (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix a few more UBSAN fixes (Jaroslav Kysela) [1917388] - ALSA: pcm: Clear the full allocated memory at hw_params (Jaroslav Kysela) [1917388] - ALSA: memalloc: Align buffer allocations in page size (Jaroslav Kysela) [1917388] - ALSA: pcm: Remove snd_pcm_lib_preallocate_dma_free() (Jaroslav Kysela) [1917388] - ALSA: core: memalloc: add page alignment for iram (Jaroslav Kysela) [1917388] - ALSA: pcm: oss: Fix potential out-of-bounds shift (Jaroslav Kysela) [1917388] - ALSA: rawmidi: Access runtime->avail always in spinlock (Jaroslav Kysela) [1917388] - ALSA: seq: Use bool for snd_seq_queue internal flags (Jaroslav Kysela) [1917388] - ALSA: compress: allow pause and resume during draining (Jaroslav Kysela) [1917388] - ALSA: ctl: fix error path at adding user-defined element set (Jaroslav Kysela) [1917388] - ALSA: seq: remove useless function (Jaroslav Kysela) [1917388] - ALSA: fix kernel-doc markups (Jaroslav Kysela) [1917388] - soundwire: SDCA: add helper macro to access controls (Jaroslav Kysela) [1917388] - soundwire: add static port mapping support (Jaroslav Kysela) [1917388] - soundwire: add definition for DPn BlockPackingMode (Jaroslav Kysela) [1917388] - soundwire: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: intel: don't return error when clock stop failed (Jaroslav Kysela) [1917388] - soundwire: intel: Use kzalloc for allocating only one thing (Jaroslav Kysela) [1917388] - soundwire: cadence: add status in dev_dbg 'State change' log (Jaroslav Kysela) [1917388] - soundwire: cadence: adjust verbosity in response handling (Jaroslav Kysela) [1917388] - soundwire: cadence: fix ACK/NAK handling (Jaroslav Kysela) [1917388] - soundwire: cadence: reduce timeout on transactions (Jaroslav Kysela) [1917388] - soundwire: bus: use consistent tests for return values (Jaroslav Kysela) [1917388] - soundwire: qcom: fix handling of qcom,ports-block-pack-mode (Jaroslav Kysela) [1917388] - soundwire: intel_init: test link->cdns (Jaroslav Kysela) [1917388] - soundwire: qcom: handle return correctly in qcom_swrm_transport_params (Jaroslav Kysela) [1917388] - soundwire: qcom: cleanup internal port config indexing (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for fifo space to be available before read/write (Jaroslav Kysela) [1917388] - soundwire: qcom: add static port map support (Jaroslav Kysela) [1917388] - soundwire: qcom: update port map allocation bit mask (Jaroslav Kysela) [1917388] - soundwire: stream: fix memory leak in stream config error path (Jaroslav Kysela) [1917388] - soundwire: qcom: use signed variable for error return (Jaroslav Kysela) [1917388] - soundwire: qcom: wait for enumeration to be complete in probe (Jaroslav Kysela) [1917388] - soundwire: qcom: add auto enumeration support (Jaroslav Kysela) [1917388] - soundwire: export sdw_compare_devid, sdw_extract_slave_id and sdw_slave_add (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to new interrupts (Jaroslav Kysela) [1917388] - soundwire: qcom: update register read/write routine (Jaroslav Kysela) [1917388] - soundwire: qcom: start the clock during initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: set continue execution flag for ignored commands (Jaroslav Kysela) [1917388] - soundwire: qcom: add support to missing transport params (Jaroslav Kysela) [1917388] - soundwire: cadence: only prepare attached devices on clock stop (Jaroslav Kysela) [1917388] - soundwire: generic_allocation: fix confusion between group and packing (Jaroslav Kysela) [1917388] - soundwire: bus: Fix device found flag correctly (Jaroslav Kysela) [1917388] - soundwire: cadence_master: fix kernel-doc (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless bus initializations (Jaroslav Kysela) [1917388] - soundwire: stream: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: qcom: check of_property_read status (Jaroslav Kysela) [1917388] - soundwire: intel: remove useless readl (Jaroslav Kysela) [1917388] - soundwire: generic_bandwidth_allocation: remove useless init (Jaroslav Kysela) [1917388] - soundwire: bus: remove useless initialization (Jaroslav Kysela) [1917388] - soundwire: bus: uniquify dev_err() for SCP_INT access (Jaroslav Kysela) [1917388] - soundwire: bus: demote clock stop prepare log to dev_dbg() (Jaroslav Kysela) [1917388] - soundwire: bus: clarify dev_err/dbg device references (Jaroslav Kysela) [1917388] - soundwire: bus: fix confusion on device used by pm_runtime (Jaroslav Kysela) [1917388] - soundwire: export sdw_write/read_no_pm functions (Jaroslav Kysela) [1917388] - soundwire: bus: use no_pm IO routines for all interrupt handling (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_write_no_pm when setting the bus scale registers (Jaroslav Kysela) [1917388] - soundwire: bus: use sdw_update_no_pm when initializing a device (Jaroslav Kysela) [1917388] - soundwire: return earlier if no slave is attached (Jaroslav Kysela) [1917388] - soundwire: bus: add better dev_dbg to track complete() calls (Jaroslav Kysela) [1917388] - soundwire: bus: add more details to track failed transfers (Jaroslav Kysela) [1917388] - soundwire: use consistent format for Slave devID logs (Jaroslav Kysela) [1917388] - soundwire: bus: test read status (Jaroslav Kysela) [1917388] - soundwire: bus: use correct driver name in error messages (Jaroslav Kysela) [1917388] - soundwire: qcom: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: stream: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: cadence: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: bandwidth_allocation: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add missing \n in dev_err() (Jaroslav Kysela) [1917388] - soundwire: intel: add master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: bus: handle master quirks for bus clash and parity (Jaroslav Kysela) [1917388] - soundwire: Intel: add DMI quirk for Dell SKU 0A3E (Jaroslav Kysela) [1917388] - soundwire: Intel: introduce DMI quirks for HP Spectre x360 Convertible (Jaroslav Kysela) [1917388] - soundwire: add override addr ops (Jaroslav Kysela) [1917388] - regmap/SoundWire: sdw: add support for SoundWire 1.2 MBQ (Jaroslav Kysela) [1917388] - tracing: Fix __print_hex_dump scope (Jaroslav Kysela) [1917388] - tracing: Use seq_buf_hex_dump() to dump buffers (Jaroslav Kysela) [1917388] - seq_buf: Add printing formatted hex dumps (Jaroslav Kysela) [1917388] - powerpc/64: Don't trace code that runs with the soft irq mask unreconciled (Desnes A. Nunes do Rosario) [1921631] - powerpc/64: Disable irq restore warning for now (Desnes A. Nunes do Rosario) [1921631] - powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely (Desnes A. Nunes do Rosario) [1921631]- watchdog/hpwdt: New PCI IDs (Joseph Szczypek) [1967765] - watchdog: hpwdt: Assign boolean values to a bool variable (Joseph Szczypek) [1967765] - scsi: libfc: Avoid invoking response handler twice if ep is already completed (Chris Leech) [1867301] - Bluetooth: SMP: Fail if remote and local public keys are identical (Gopal Tiwari) [1965083] - rq-qos: fix missed wake-ups in rq_qos_throttle try two (Ming Lei) [1972111] - mm: memcg/slab: disable cache merging for KMALLOC_NORMAL caches (Waiman Long) [1955561] - mm: memcg/slab: create a new set of kmalloc-cg- caches (Waiman Long) [1955561] - mm: memcg/slab: properly set up gfp flags for objcg pointer array (Waiman Long) [1955561] - mm/vmalloc.c:__vmalloc_area_node(): avoid 32-bit overflow (Rafael Aquini) [1970194] - mm: remove the filename in the top of file comment in vmalloc.c (Rafael Aquini) [1970194] - mm: cleanup the gfp_mask handling in __vmalloc_area_node (Rafael Aquini) [1970194] - mm/vmalloc.c: remove unnecessary highmem_mask from parameter of gfpflags_allow_blocking() (Rafael Aquini) [1970194] - mm/swap: fix pte_same_as_swp() not removing uffd-wp bit when compare (Chris von Recklinghausen) [1945442] - userfaultfd: hugetlbfs: fix new flag usage in error path (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix cow where page writtable in child (Chris von Recklinghausen) [1945442] - ovl: fix reference counting in ovl_mmap error path (Chris von Recklinghausen) [1945442] - hugetlb: do early cow when page pinned on src mm (Chris von Recklinghausen) [1945442] - mm: introduce page_needs_cow_for_dma() for deciding whether cow (Chris von Recklinghausen) [1945442] - hugetlb: convert page_huge_active() HPageMigratable flag (Chris von Recklinghausen) [1945442] - hugetlb: use page.private for hugetlb specific page flags (Chris von Recklinghausen) [1945442] - x86/mm: Remove duplicate definition of _PAGE_PAT_LARGE (Chris von Recklinghausen) [1945442] - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page (Chris von Recklinghausen) [1945442] - mm: hugetlb: fix a race between isolating and freeing page (Chris von Recklinghausen) [1945442] - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active (Chris von Recklinghausen) [1945442] - mm: introduce vma_set_file function v5 (Chris von Recklinghausen) [1945442] - mm: mmap: fix fput in error path v2 (Chris von Recklinghausen) [1945442] - mm/gup: prevent gup_fast from racing with COW during fork (Chris von Recklinghausen) [1945442] - mm/gup: reorganize internal_get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: remove src/dst mm parameter in copy_page_range() (Chris von Recklinghausen) [1945442] - mm: avoid early COW write protect games during fork() (Chris von Recklinghausen) [1945442] - mm/thp: Split huge pmds/puds if they're pinned when fork() (Chris von Recklinghausen) [1945442] - mm: Do early cow for pinned pages during fork() for ptes (Chris von Recklinghausen) [1945442] - mm/fork: Pass new vma pointer into copy_page_range() (Chris von Recklinghausen) [1945442] - mm: move the copy_one_pte() pte_present check into the caller (Chris von Recklinghausen) [1945442] - mm: split out the non-present case from copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/gup: Remove enfornced COW mechanism (Chris von Recklinghausen) [1945442] - mm/hmm.c: delete duplicated word (Chris von Recklinghausen) [1945442] - mm/hmm: provide the page mapping order in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_locked() (Chris von Recklinghausen) [1945442] - mm/gup: introduce pin_user_pages_unlocked (Chris von Recklinghausen) [1945442] - mm: remove the prot argument from vm_map_ram (Chris von Recklinghausen) [1945442] - mm: remove unmap_vmap_area (Chris von Recklinghausen) [1945442] - mm: don't return the number of pages from map_kernel_range{,_noflush} (Chris von Recklinghausen) [1945442] - x86: fix vmap arguments in map_irq_stack (Chris von Recklinghausen) [1945442] - mm/memory: remove unnecessary pte_devmap case in copy_one_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the customizable pfn format from hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_PFN_SPECIAL (Chris von Recklinghausen) [1945442] - mm/hmm: make hmm_range_fault return 0 or -1 (Chris von Recklinghausen) [1945442] - mm/hugetlb: fix build failure with HUGETLB_PAGE but not HUGEBTLBFS (Chris von Recklinghausen) [1945442] - mm/hmm: return error for non-vma snapshots (Chris von Recklinghausen) [1945442] - mm/hmm: do not set pfns when returning an error code (Chris von Recklinghausen) [1945442] - mm/hmm: do not unconditionally set pfns when returning EBUSY (Chris von Recklinghausen) [1945442] - mm/hmm: use device_private_entry_to_pfn() (Chris von Recklinghausen) [1945442] - mm/hmm: remove HMM_FAULT_SNAPSHOT (Chris von Recklinghausen) [1945442] - mm/hmm: remove unused code and tidy comments (Chris von Recklinghausen) [1945442] - mm/hmm: return the fault type from hmm_pte_need_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: remove pgmap checking for devmap pages (Chris von Recklinghausen) [1945442] - mm/hmm: check the device private page owner in hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm: simplify device private page handling in hmm_range_fault (Chris von Recklinghausen) [1945442] - mm: merge hmm_vma_do_fault into into hmm_vma_walk_hole_ (Chris von Recklinghausen) [1945442] - mm/hmm: don't handle the non-fault case in hmm_vma_walk_hole_() (Chris von Recklinghausen) [1945442] - mm/hmm: simplify hmm_vma_walk_hugetlb_entry() (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused HMM_FAULT_ALLOW_RETRY flag (Chris von Recklinghausen) [1945442] - mm/hmm: don't provide a stub for hmm_range_fault() (Chris von Recklinghausen) [1945442] - mm/hmm: do not check pmd_protnone twice in hmm_vma_handle_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: return -EFAULT when setting HMM_PFN_ERROR on requested valid pages (Chris von Recklinghausen) [1945442] - mm/hmm: reorganize how !pte_present is handled in hmm_vma_handle_pte() (Chris von Recklinghausen) [1945442] - mm/hmm: add missing call to hmm_range_need_fault() before returning EFAULT (Chris von Recklinghausen) [1945442] - mm/hmm: add missing pfns set to hmm_vma_walk_pmd() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: make full use of walk_page_range() (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_mirror and related (Chris von Recklinghausen) [1945442] - mm/hmm: define the pre-processor related parts of hmm.h even if disabled (Chris von Recklinghausen) [1945442] - mm/hmm: allow hmm_range to be used with a mmu_interval_notifier or hmm_mirror (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() infinite loop (Chris von Recklinghausen) [1945442] - mm/hmm: hmm_range_fault() NULL pointer bug (Chris von Recklinghausen) [1945442] - hmm: use mmu_notifier_get/put for 'struct hmm' (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_handle_pmd stub (Chris von Recklinghausen) [1945442] - mm/hmm: only define hmm_vma_walk_pud if needed (Chris von Recklinghausen) [1945442] - mm/hmm: cleanup the hmm_vma_walk_hugetlb_entry stub (Chris von Recklinghausen) [1945442] - mm/hmm: don't abuse pte_index() in hmm_vma_handle_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: comment on VM_FAULT_RETRY semantics in handle_mm_fault (Chris von Recklinghausen) [1945442] - mm/hmm: remove the legacy hmm_pfn_* APIs (Chris von Recklinghausen) [1945442] - mm/hmm: remove the mask variable in hmm_vma_walk_hugetlb_entry (Chris von Recklinghausen) [1945442] - mm/hmm: remove the page_shift member from struct hmm_range (Chris von Recklinghausen) [1945442] - mm/hmm: remove superfluous arguments from hmm_range_register (Chris von Recklinghausen) [1945442] - mm/hmm: remove the unused vma argument to hmm_range_dma_unmap (Chris von Recklinghausen) [1945442] - mm/hmm: remove hmm_range vma (Chris von Recklinghausen) [1945442] - mm/hmm: remove hugetlbfs check in hmm_vma_walk_pmd (Chris von Recklinghausen) [1945442] - mm/hmm: merge hmm_range_snapshot into hmm_range_fault (Chris von Recklinghausen) [1945442] - mm/hmm: replace the block argument to hmm_range_fault with a flags value (Chris von Recklinghausen) [1945442] - mm/large system hash: use vmalloc for size > MAX_ORDER when !hashdist (Chris von Recklinghausen) [1945442] - mm/hmm: update HMM documentation (Chris von Recklinghausen) [1945442] - mm: remove the HMM config option (Chris von Recklinghausen) [1945442] - hugetlbfs: on restore reserve error path retain subpool reservation (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix potential memory leak (Chris von Recklinghausen) [1945442] - mm/vmalloc: separate put pages and flush VM flags (Chris von Recklinghausen) [1945442] - zsmalloc: switch from alloc_vm_area to get_vm_area (Chris von Recklinghausen) [1945442] - mm: allow a NULL fn callback in apply_to_page_range (Chris von Recklinghausen) [1945442] - mm: add a vmap_pfn function (Chris von Recklinghausen) [1945442] - mm: add a VM_MAP_PUT_PAGES flag for vmap (Chris von Recklinghausen) [1945442] - mm: update the documentation for vfree (Chris von Recklinghausen) [1945442] - mm, slub: use kmem_cache_debug_flags() in deactivate_slab() (Chris von Recklinghausen) [1945442] - mm, slab, slub: clear the slab_cache field when freeing page (Chris von Recklinghausen) [1945442] - mm: slab: provide krealloc_array() (Chris von Recklinghausen) [1945442] - mm: slab: clarify krealloc()'s behavior with __GFP_ZERO (Chris von Recklinghausen) [1945442] - mm/slab_common.c: use list_for_each_entry in dump_unreclaimable_slab() (Chris von Recklinghausen) [1945442] - mm/slub: make add_full() condition more explicit (Chris von Recklinghausen) [1945442] - mm/slub: fix missing ALLOC_SLOWPATH stat when bulk alloc (Chris von Recklinghausen) [1945442] - mm/slub.c: branch optimization in free slowpath (Chris von Recklinghausen) [1945442] - include/linux/slab.h: fix a typo error in comment (Chris von Recklinghausen) [1945442] - mm/vmalloc.c: fix a warning while make xmldocs (Chris von Recklinghausen) [1945442] - mm/userfaultfd: fix memory corruption due to writeprotect (Chris von Recklinghausen) [1945442] - mm/migrate: fixup setting UFFD_WP flag (Chris von Recklinghausen) [1945442] - mm/rmap: fixup copying of soft dirty and uffd ptes (Chris von Recklinghausen) [1945442] - mm/userfaultfd: disable userfaultfd-wp on x86_32 (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: fix SIGSEGV if huge mmap fails (Chris von Recklinghausen) [1945442] - mm: do not rely on mm == current->mm in __get_user_pages_locked (Chris von Recklinghausen) [1945442] - mm: Introduce mm_struct.has_pinned (Chris von Recklinghausen) [1945442] - mm/gup: might_lock_read(mmap_sem) in get_user_pages_fast() (Chris von Recklinghausen) [1945442] - mm: enforce that vmap can't map pages executable (Chris von Recklinghausen) [1945442] - mm: remove map_vm_range (Chris von Recklinghausen) [1945442] - mm: rename vmap_page_range to map_kernel_range (Chris von Recklinghausen) [1945442] - mm: remove vmap_page_range_noflush and vunmap_page_range (Chris von Recklinghausen) [1945442] - mm: only allow page table mappings for built-in zsmalloc (Chris von Recklinghausen) [1945442] - mm: unexport unmap_kernel_range_noflush (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: add write-protect test (Chris von Recklinghausen) [1945442] - userfaultfd: selftests: refactor statistics (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: fix compiler warning (Chris von Recklinghausen) [1945442] - hugetlbfs: call VM_BUG_ON_PAGE earlier in free_huge_page() (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: recycle lock threads first (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: generalize read and poll (Chris von Recklinghausen) [1945442] - userfaultfd: selftest: cleanup help messages (Chris von Recklinghausen) [1945442] - userfaultfd: wp: declare _UFFDIO_WRITEPROTECT conditionally (Chris von Recklinghausen) [1945442] - userfaultfd: wp: UFFDIO_REGISTER_MODE_WP documentation update (Chris von Recklinghausen) [1945442] - userfaultfd: wp: don't wake up when doing write protect (Chris von Recklinghausen) [1945442] - userfaultfd: wp: enabled write protection in userfaultfd API (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add the writeprotect API to userfaultfd ioctl (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support write protection for userfault vma range (Chris von Recklinghausen) [1945442] - khugepaged: skip collapse if uffd-wp detected (Chris von Recklinghausen) [1945442] - userfaultfd: wp: support swap and page migration (Chris von Recklinghausen) [1945442] - mm/mprotect.c: fix compilation warning because of unused 'mm' variable (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add pmd_swp_*uffd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: drop _PAGE_UFFD_WP properly when fork (Chris von Recklinghausen) [1945442] - userfaultfd: wp: apply _PAGE_UFFD_WP bit (Chris von Recklinghausen) [1945442] - mm: merge parameters for change_protection() (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add UFFDIO_COPY_MODE_WP (Chris von Recklinghausen) [1945442] - userfaultfd: wp: userfaultfd_pte/huge_pmd_wp() helpers (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add WP pagetable tracking to x86 (Chris von Recklinghausen) [1945442] - userfaultfd: wp: hook userfault handler to write protection fault (Chris von Recklinghausen) [1945442] - userfaultfd: wp: add helper for writeprotect check (Chris von Recklinghausen) [1945442] - userfaultfd: untag user pointers (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix typo in the Kconfig help text (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up externs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename => (Chris von Recklinghausen) [1945442] - x86/mm/pat: Standardize on memtype_*() prefix for APIs (Chris von Recklinghausen) [1945442] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Chris von Recklinghausen) [1945442] - x86/mm/pat: Clean up PAT initialization flags (Chris von Recklinghausen) [1945442] - x86/mm/pat: Harmonize 'struct memtype *' local variable and function parameter use (Chris von Recklinghausen) [1945442] - x86/mm/pat: Simplify the free_memtype() control flow (Chris von Recklinghausen) [1945442] - x86/mm/pat: Create fixed width output in /sys/kernel/debug/x86/pat_memtype_list, similar to the E820 debug printouts (Chris von Recklinghausen) [1945442] - x86/mm/pat: Disambiguate PAT-disabled boot messages (Chris von Recklinghausen) [1945442] - x86/mm/pat: Update the comments in pat.c and pat_interval.c and refresh the code a bit (Chris von Recklinghausen) [1945442] - x86/mm/pat: Fix off-by-one bugs in interval tree search (Chris von Recklinghausen) [1945442] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Chris von Recklinghausen) [1945442] - x86/mm/pat: Drop the rbt_ prefix from external memtype calls (Chris von Recklinghausen) [1945442] - x86/mm/pat: Do not pass 'rb_root' down the memtype tree helper functions (Chris von Recklinghausen) [1945442] - x86/mm/pat: Convert the PAT tree to a generic interval tree (Chris von Recklinghausen) [1945442] - x86/mm: Tabulate the page table encoding definitions (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_wt() function (Chris von Recklinghausen) [1945442] - x86/mm: Remove set_pages_x() and set_pages_nx() (Chris von Recklinghausen) [1945442] - x86/mm: Remove the unused set_memory_array_*() functions (Chris von Recklinghausen) [1945442] - x86/mm: Unexport set_memory_x() and set_memory_nx() (Chris von Recklinghausen) [1945442] - x86/Kconfig: Fix spelling mistake "effectivness" -> "effectiveness" (Chris von Recklinghausen) [1945442] - x86/mm: Remove unused variable 'old_pte' (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Rename pat_rbtree.c to pat_interval.c" (Chris von Recklinghausen) [1945442] - Revert "x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/" (Chris von Recklinghausen) [1945442] - ipv6: Allow the l3mdev to be a loopback (Antoine Tenart) [1973229] - vrf: do not push non-ND strict packets with a source LLA through packet taps again (Antoine Tenart) [1965600] - vrf: packets with lladdr src needs dst at input with orig_iif when needs strict (Antoine Tenart) [1965600] - ipv6: Fix handling of LLA with VRF and sockets bound to VRF (Antoine Tenart) [1965600] - ipv6: allow ping to link-local address in VRF (Antoine Tenart) [1965600] - vrf: mark skb for multicast or link-local as enslaved to VRF (Antoine Tenart) [1965600] - net: allow traceroute with a specified interface in a vrf (Antoine Tenart) [1965600] - virtchnl: Enable RSS configure for AVF (Ivan Vecera) [1966954] - virtchnl: Advertise virtchnl UDP segmentation offload capability (Ivan Vecera) [1966954] - virtchnl: Allow ignoring opcodes on specific VF (Ivan Vecera) [1966954] - virtchnl: Fix layout of RSS structures (Ivan Vecera) [1966954] - virtchnl: Enable FDIR Configure for AVF (Ivan Vecera) [1966954] - virtchnl: Add missing explicit padding to structures (Ivan Vecera) [1966954] - virtchnl: use u8 type for a field in the virtchnl_filter struct (Ivan Vecera) [1966954] - tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1944685] - tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944685] - bpf: Add size arg to build_id_parse function (Michael Petlan) [1944685] - bpf: Move stack_map_get_build_id into lib (Michael Petlan) [1944685] - perf map: Fix error return code in maps__clone() (Michael Petlan) [1944685] - perf ftrace: Fix access to pid in array when setting a pid filter (Michael Petlan) [1944685] - perf auxtrace: Fix potential NULL pointer dereference (Michael Petlan) [1944685] - perf data: Fix error return code in perf_data__create_dir() (Michael Petlan) [1944685] - perf arm-spe: Avoid potential buffer overrun (Michael Petlan) [1944685] - perf report: Fix wrong LBR block sorting (Michael Petlan) [1944685] - perf inject: Fix repipe usage (Michael Petlan) [1944685] - perf test: Change to use bash for daemon test (Michael Petlan) [1944685] - perf record: Fix memory leak in vDSO found using ASAN (Michael Petlan) [1944685] - perf test: Remove now useless failing sub test "BPF relocation checker" (Michael Petlan) [1944685] - perf daemon: Return from kill functions (Michael Petlan) [1944685] - perf daemon: Force waipid for all session on SIGCHLD delivery (Michael Petlan) [1944685] - perf top: Fix BPF support related crash with perf_event_paranoid=3 + kptr_restrict (Michael Petlan) [1944685] - perf pmu: Validate raw event with sysfs exported format bits (Michael Petlan) [1944685] - perf synthetic events: Avoid write of uninitialized memory when generating PERF_RECORD_MMAP* records (Michael Petlan) [1944685] - perf synthetic-events: Fix uninitialized 'kernel_thread' variable (Michael Petlan) [1944685] - perf auxtrace: Fix auxtrace queue conflict (Michael Petlan) [1944685] - perf cs-etm: Fix bitmap for option (Michael Petlan) [1944685] - perf map: Tighten snprintf() string precision to pass gcc check on some 32-bit arches (Michael Petlan) [1944685] - perf report: Fix -F for branch & mem modes (Michael Petlan) [1944685] - perf tests x86: Move insn.h include to make sure it finds stddef.h (Michael Petlan) [1944685] - perf test: Support the ins_lat check in the X86 specific test (Michael Petlan) [1944685] - perf test: Fix sample-parsing failure on non-x86 platforms (Michael Petlan) [1944685] - perf archive: Fix filtering of empty build-ids (Michael Petlan) [1944685] - perf daemon: Fix compile error with Asan (Michael Petlan) [1944685] - perf stat: Fix use-after-free when -r option is used (Michael Petlan) [1944685] - libperf: Add perf_evlist__reset_id_hash() (Michael Petlan) [1944685] - perf stat: Fix wrong skipping for per-die aggregation (Michael Petlan) [1944685] - tools headers UAPI: Update tools' copy of linux/coresight-pmu.h (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in perf_time_to_tsc test (Michael Petlan) [1944685] - perf test: Fix cpu map leaks in cpu_map_print test (Michael Petlan) [1944685] - perf test: Fix a memory leak in thread_map_remove test (Michael Petlan) [1944685] - perf test: Fix a thread map leak in thread_map_synthesize test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in switch_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in keep_tracking test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in code_reading test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in sw_clock_freq test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in task_exit test (Michael Petlan) [1944685] - perf test: Fix a memory leak in attr test (Michael Petlan) [1944685] - perf test: Fix cpu and thread map leaks in basic mmap test (Michael Petlan) [1944685] - perf tools: Fix event's PMU name parsing (Michael Petlan) [1944685] - perf daemon: Fix running test for non root user (Michael Petlan) [1944685] - perf daemon: Fix control fifo permissions (Michael Petlan) [1944685] - perf build: Fix ccache usage in $(CC) when generating arch errno table (Michael Petlan) [1944685] - perf tools: Fix documentation of verbose options (Michael Petlan) [1944685] - perf traceevent: Ensure read cmdlines are null terminated. (Michael Petlan) [1944685] - perf diff: Don't crash on freeing errno-session on the error path (Michael Petlan) [1944685] - perf tools: Clean 'generated' directory used for creating the syscall table on x86 (Michael Petlan) [1944685] - perf build: Move feature cleanup under tools/build (Michael Petlan) [1944685] - perf tools: Cast (struct timeval).tv_sec when printing (Michael Petlan) [1944685] - perf buildid-cache: Don't skip 16-byte build-ids (Michael Petlan) [1944685] - perf buildid-cache: Add test for 16-byte build-id (Michael Petlan) [1944685] - perf symbol: Remove redundant libbfd checks (Michael Petlan) [1944685] - perf test: Output the sub testing result in cs-etm (Michael Petlan) [1944685] - perf test: Suppress logs in cs-etm testing (Michael Petlan) [1944685] - perf tools: Fix arm64 build error with gcc-11 (Michael Petlan) [1944685] - perf intel-pt: Add documentation for tracing virtual machines (Michael Petlan) [1944685] - perf intel-pt: Split VM-Entry and VM-Exit branches (Michael Petlan) [1944685] - perf intel-pt: Adjust sample flags for VM-Exit (Michael Petlan) [1944685] - perf intel-pt: Allow for a guest kernel address filter (Michael Petlan) [1944685] - perf intel-pt: Support decoding of guest kernel (Michael Petlan) [1944685] - perf machine: Factor out machine__idle_thread() (Michael Petlan) [1944685] - perf machine: Factor out machines__find_guest() (Michael Petlan) [1944685] - perf intel-pt: Amend decoder to track the NR flag (Michael Petlan) [1944685] - perf intel-pt: Retain the last PIP packet payload as is (Michael Petlan) [1944685] - perf intel_pt: Add vmlaunch and vmresume as branches (Michael Petlan) [1944685] - perf script: Add branch types for VM-Entry and VM-Exit (Michael Petlan) [1944685] - perf auxtrace: Automatically group aux-output events (Michael Petlan) [1944685] - perf test: Fix unaligned access in sample parsing test (Michael Petlan) [1944685] - perf tools: Support arch specific PERF_SAMPLE_WEIGHT_STRUCT processing (Michael Petlan) [1944685] - perf intel-pt: Add PSB events (Michael Petlan) [1944685] - perf intel-pt: Fix IPC with CYC threshold (Michael Petlan) [1944685] - perf intel-pt: Fix premature IPC (Michael Petlan) [1944685] - perf intel-pt: Fix missing CYC processing in PSB (Michael Petlan) [1944685] - perf record: Fix continue profiling after draining the buffer (Michael Petlan) [1944685] - perf tools: Simplify the calculation of variables (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mp DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mq DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Add JSON metrics for imx8mn DDR Perf (Michael Petlan) [1944685] - perf vendor events arm64: Fix indentation of brackets in imx8mm metrics (Michael Petlan) [1944685] - perf annotate: Do not jump after 'k' is pressed (Michael Petlan) [1944685] - perf metricgroup: Remove unneeded semicolon (Michael Petlan) [1944685] - perf tools: Add OCaml demangling (Michael Petlan) [1944685] - tools api fs: Cache cgroupfs mount point (Michael Petlan) [1944685] - tools api fs: Diet cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - tools api fs: Prefer cgroup v1 path in cgroupfs_find_mountpoint() (Michael Petlan) [1944685] - perf symbols: Resolve symbols against debug file first (Michael Petlan) [1944685] - perf probe: Fix kretprobe issue caused by GCC bug (Michael Petlan) [1944685] - perf symbols: Fix return value when loading PE DSO (Michael Petlan) [1944685] - perf symbols: Make dso__load_bfd_symbols() load PE files from debug cache only (Michael Petlan) [1944685] - perf symbols: Use (long) for iterator for bfd symbols (Michael Petlan) [1944685] - perf annotate: Fix jump parsing for C++ code. (Michael Petlan) [1944685] - perf arm-spe: Set sample's data source field (Michael Petlan) [1944685] - perf arm-spe: Synthesize memory event (Michael Petlan) [1944685] - perf arm-spe: Fill address info for samples (Michael Petlan) [1944685] - perf arm-spe: Store operation type in packet (Michael Petlan) [1944685] - perf arm-spe: Store memory address in packet (Michael Petlan) [1944685] - perf arm-spe: Enable sample type PERF_SAMPLE_DATA_SRC (Michael Petlan) [1944685] - perf env: Remove unneeded internal/cpumap inclusions (Michael Petlan) [1944685] - perf tools: Remove unused xyarray.c as it was moved to tools/lib/perf (Michael Petlan) [1944685] - perf tools: Replace lkml.org links with lore (Michael Petlan) [1944685] - perf tests: Add daemon 'lock' test (Michael Petlan) [1944685] - perf tests: Add daemon 'ping' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'signal' command test (Michael Petlan) [1944685] - perf tests: Add daemon 'stop' command test (Michael Petlan) [1944685] - perf tests: Add daemon reconfig test (Michael Petlan) [1944685] - perf tests: Add daemon 'list' command test (Michael Petlan) [1944685] - perf daemon: Add examples to man page (Michael Petlan) [1944685] - perf daemon: Add up time for daemon/session list (Michael Petlan) [1944685] - perf daemon: Use control to stop session (Michael Petlan) [1944685] - perf daemon: Add 'ping' command (Michael Petlan) [1944685] - perf daemon: Set control fifo for session (Michael Petlan) [1944685] - perf daemon: Allow only one daemon over base directory (Michael Petlan) [1944685] - perf daemon: Add 'stop' command (Michael Petlan) [1944685] - perf daemon: Add 'signal' command (Michael Petlan) [1944685] - perf daemon: Add 'list' command (Michael Petlan) [1944685] - perf daemon: Add signalfd support (Michael Petlan) [1944685] - perf daemon: Add background support (Michael Petlan) [1944685] - perf daemon: Add config file change check (Michael Petlan) [1944685] - perf daemon: Add config file support (Michael Petlan) [1944685] - perf daemon: Add client socket support (Michael Petlan) [1944685] - perf daemon: Add server socket support (Michael Petlan) [1944685] - perf daemon: Add base option (Michael Petlan) [1944685] - perf daemon: Add config option (Michael Petlan) [1944685] - perf daemon: Add daemon command (Michael Petlan) [1944685] - perf script: Simplify bool conversion (Michael Petlan) [1944685] - perf arm64/s390: Fix printf conversion specifier for IP addresses (Michael Petlan) [1944685] - perf script: Support filtering by hex address (Michael Petlan) [1944685] - perf intlist: Change 'struct intlist' int member to 'unsigned long' (Michael Petlan) [1944685] - perf tools: Update topdown documentation for Sapphire Rapids (Michael Petlan) [1944685] - perf stat: Support L2 Topdown events (Michael Petlan) [1944685] - perf test: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf report: Support instruction latency (Michael Petlan) [1944685] - perf tools: Support PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf c2c: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support data block and addr block (Michael Petlan) [1944685] - perf tools: Support the auxiliary event (Michael Petlan) [1944685] - perf probe: Add protection to avoid endless loop (Michael Petlan) [1944685] - perf trace-event-info: Rename for_each_event. (Michael Petlan) [1944685] - perf inject jit: Add namespaces support (Michael Petlan) [1944685] - perf namespaces: Add 'in_pidns' to nsinfo struct (Michael Petlan) [1944685] - perf tools: Use scandir() to iterate threads when synthesizing PERF_RECORD_ events (Michael Petlan) [1944685] - perf tools: Skip PERF_RECORD_MMAP event synthesis for kernel threads (Michael Petlan) [1944685] - perf tools: Use /proc//task//status for PERF_RECORD_ event synthesis (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for A76 (Michael Petlan) [1944685] - perf vendor events arm64: Reference common and uarch events for Ampere eMag (Michael Petlan) [1944685] - perf vendor events arm64: Add common and uarch event JSON (Michael Petlan) [1944685] - perf vendor events arm64: Fix Ampere eMag event typo (Michael Petlan) [1944685] - perf script: Support DSO filter like in other perf tools (Michael Petlan) [1944685] - perf tools: Fix DSO filtering when not finding a map for a sampled address (Michael Petlan) [1944685] - perf stat: Add Topdown metrics events as default events (Michael Petlan) [1944685] - perf test: Add parse-metric memory bandwidth testcase (Michael Petlan) [1944685] - perf tools: Add 'ping' control command (Michael Petlan) [1944685] - perf tools: Add 'stop' control command (Michael Petlan) [1944685] - perf config: Make perf_config_global() global (Michael Petlan) [1944685] - perf config: Make perf_config_system() global (Michael Petlan) [1944685] - perf config: Add perf_home_perfconfig function (Michael Petlan) [1944685] - perf debug: Add debug_set_display_time function (Michael Petlan) [1944685] - perf config: Add config set interface (Michael Petlan) [1944685] - perf config: Make perf_config_from_file() static (Michael Petlan) [1944685] - perf test: Add test case for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf report: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf script: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf record: Add support for PERF_SAMPLE_CODE_PAGE_SIZE (Michael Petlan) [1944685] - perf mem: Support data page size (Michael Petlan) [1944685] - perf mem: Clean up output format (Michael Petlan) [1944685] - perf cs-etm: Update ARM's CoreSight hardware tracing OpenCSD library to v1.0.0 (Michael Petlan) [1944685] - perf c2c: Add local variables for output metrics (Michael Petlan) [1944685] - perf c2c: Refactor node display (Michael Petlan) [1944685] - perf c2c: Fix argument type for percent() (Michael Petlan) [1944685] - perf c2c: Refactor display filter (Michael Petlan) [1944685] - perf c2c: Refactor hist entry validation (Michael Petlan) [1944685] - perf c2c: Rename for shared cache line stats (Michael Petlan) [1944685] - perf stat: Enable counting events for BPF programs (Michael Petlan) [1944685] - perf build: Support build BPF skeletons with perf (Michael Petlan) [1944685] - perf record: Tweak "Lowering..." warning in record_opts__config_freq (Michael Petlan) [1944685] - perf buildid-list: Add support for mmap2's buildid events (Michael Petlan) [1944685] - perf buildid-cache: Add --debuginfod option to specify a server to fetch debug files (Michael Petlan) [1944685] - perf tools: Add support to display build ids when available in PERF_RECORD_MMAP2 events (Michael Petlan) [1944685] - perf record: Add --buildid-mmap option to enable PERF_RECORD_MMAP2's build id (Michael Petlan) [1944685] - perf tools: Allow synthesizing the build id for kernel/modules/tasks in PERF_RECORD_MMAP2 (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel modules maps (Michael Petlan) [1944685] - perf tools: Allow using PERF_RECORD_MMAP2 to synthesize the kernel map (Michael Petlan) [1944685] - perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata events (Michael Petlan) [1944685] - perf tools: Do not swap mmap2 fields in case it contains build id (Michael Petlan) [1944685] - perf arm64: Add argument support for SDT (Michael Petlan) [1944685] - perf probe: Fixup Arm64 SDT arguments (Michael Petlan) [1944685] - perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT (Michael Petlan) [1944685] - perf/x86/intel: Fix a crash caused by zero PEBS status (Michael Petlan) [1944685] - perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR (Michael Petlan) [1944685] - perf/core: Flush PMU internal buffers for per-CPU events (Michael Petlan) [1944685] - perf/x86/rapl: Fix psys-energy event on Intel SPR platform (Michael Petlan) [1944685] - perf/x86/rapl: Only check lower 32bits for RAPL energy counters (Michael Petlan) [1944685] - perf/x86/rapl: Add msr mask support (Michael Petlan) [1944685] - perf/x86/kvm: Add Cascade Lake Xeon steppings to isolation_ucodes[] (Michael Petlan) [1944685] - perf/x86/intel: Support CPUID 10.ECX to disable fixed counters (Michael Petlan) [1944685] - perf/x86/intel: Add perf core PMU support for Sapphire Rapids (Michael Petlan) [1944685] - perf/x86/intel: Filter unsupported Topdown metrics event (Michael Petlan) [1944685] - perf/x86/intel: Factor out intel_update_topdown_event() (Michael Petlan) [1944685] - perf/core: Add PERF_SAMPLE_WEIGHT_STRUCT (Michael Petlan) [1944685] - perf/intel: Remove Perfmon-v4 counter_freezing support (Michael Petlan) [1944685] - perf: Add build id data in mmap2 event (Michael Petlan) [1944685] - bpf: Remove atomics tests from test_progs (Jiri Olsa) [1874007] - libbpf: Fixes incorrect rx_ring_setup_done (Jiri Olsa) [1874007] - error-injection: Consolidate override function definition (Jiri Olsa) [1874007] - selftests/bpf: Fix endianness issues in atomic tests (Jiri Olsa) [1874007] - bpf: Fix a spelling typo in bpf_atomic_alu_string disasm (Jiri Olsa) [1874007] - bpf, x86: Fix BPF_FETCH atomic and/or/xor with r0 as src (Jiri Olsa) [1874007] - bpf: Explicitly zero-extend R0 after 32-bit cmpxchg (Jiri Olsa) [1874007] - bpf: Account for BPF_FETCH in insn_has_def32() (Jiri Olsa) [1874007] - bpf: Fix subreg optimization for BPF_FETCH (Jiri Olsa) [1874007] - bpf: Fix the irq and nmi check in bpf_sk_storage for tracing usage (Jiri Olsa) [1874007] - selftests/bpf: Fix a compiler warning in local_storage test (Jiri Olsa) [1874007] - bpf: Change 'BPF_ADD' to 'BPF_AND' in print_bpf_insn() (Jiri Olsa) [1874007] - selftests/bpf: Don't exit on failed bpf_testmod unload (Jiri Olsa) [1874007] - bpf: Avoid old-style declaration warnings (Jiri Olsa) [1874007] - bpf: Dont allow vmlinux BTF to be used in map_create and prog_load. (Jiri Olsa) [1874007] - tools: Factor Clang, LLC and LLVM utils definitions (Jiri Olsa) [1874007] - tools/runqslower: Build bpftool using HOSTCC (Jiri Olsa) [1874007] - tools/runqslower: Enable out-of-tree build (Jiri Olsa) [1874007] - tools/runqslower: Use Makefile.include (Jiri Olsa) [1874007] - bpf: Expose bpf_sk_storage_* to iterator programs (Jiri Olsa) [1874007] - tools/resolve_btfids: Warn when having multiple IDs for single type (Jiri Olsa) [1874007] - tools/resolve_btfids: Fix some error messages (Jiri Olsa) [1874007] - samples/bpf: Add BPF_ATOMIC_OP macro for BPF samples (Jiri Olsa) [1874007] - samples/bpf: Fix possible hang in xdpsock with multiple threads (Jiri Olsa) [1874007] - bpf: samples: Do not touch RLIMIT_MEMLOCK (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/l2fwd (Jiri Olsa) [1874007] - samples/bpf: Use recvfrom() in xdpsock/rxdrop (Jiri Olsa) [1874007] - samples: bpf: Remove bpf_load loader completely (Jiri Olsa) [1874007] - samples: bpf: Fix lwt_len_hist reusing previous BPF map (Jiri Olsa) [1874007] - samples: bpf: Refactor test_overhead program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor task_fd_query program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor test_cgrp2_sock2 program with libbpf (Jiri Olsa) [1874007] - samples: bpf: Refactor hbm program with libbpf (Jiri Olsa) [1874007] - samples/bpf: Increment Tx stats at sending (Jiri Olsa) [1874007] - samples/bpf: Remove unused test_ipip.sh (Jiri Olsa) [1874007] - samples/bpf: Remove duplicate include in hbm (Jiri Olsa) [1874007] - bpftool: Fix compilation failure for net.o with older glibc (Jiri Olsa) [1874007] - tools/bpftool: Auto-detect split BTFs in common cases (Jiri Olsa) [1874007] - tools/bpftool: Emit name for anonymous BTFs (Jiri Olsa) [1874007] - bpftool: Add {i,d}tlb_misses support for bpftool profile (Jiri Olsa) [1874007] - tools/bpf: Always run the *-clean recipes (Jiri Olsa) [1874007] - tools/bpf: Add bootstrap/ to .gitignore (Jiri Olsa) [1874007] - tools/bpftool: Fix cross-build (Jiri Olsa) [1874007] - tools/bpftool: Force clean of out-of-tree build (Jiri Olsa) [1874007] - tools/bpftool: Add support for in-kernel and named BTF in `btf show` (Jiri Olsa) [1874007] - bpftool: Add support for task local storage (Jiri Olsa) [1874007] - tools/bpftool: Add bpftool support for split BTF (Jiri Olsa) [1874007] - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3 (Jiri Olsa) [1874007] - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address() (Jiri Olsa) [1874007] - bpf: Expose bpf_d_path helper to sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: Allow using bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add remaining ASSERT_xxx() variants (Jiri Olsa) [1874007] - libbpf: Fix potential NULL pointer dereference (Jiri Olsa) [1874007] - libbpf: Only create rx and tx XDP rings when necessary (Jiri Olsa) [1874007] - libbpf: Ensure umem pointer is non-NULL before dereferencing (Jiri Olsa) [1874007] - libbpf: Restore umem state after socket create failure (Jiri Olsa) [1874007] - selftests/bpf: Fix core_reloc test runner (Jiri Olsa) [1874007] - bpf: Fix umd memory leak in copy_process() (Jiri Olsa) [1874007] - libbpf: Fix error path in bpf_object__elf_init() (Jiri Olsa) [1874007] - bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF (Jiri Olsa) [1874007] - bpf: Prohibit alu ops for pointer types not defining ptr_limit (Jiri Olsa) [1874007] - selftests/bpf: Use the last page in test_snprintf_btf on s390 (Jiri Olsa) [1874007] - bpf: Be less specific about socket cookies guarantees (Jiri Olsa) [1874007] - bpf: Fix 32 bit src register truncation on div/mod (Jiri Olsa) [1874007] - bpf: Fix verifier jmp32 pruning decision logic (Jiri Olsa) [1874007] - bpf: Fix verifier jsgt branch analysis on max bound (Jiri Olsa) [1874007] - bpf: Check for integer overflow when using roundup_pow_of_two() (Jiri Olsa) [1874007] - bpf, preload: Fix build when $(O) points to a relative path (Jiri Olsa) [1874007] - bpf: Drop disabled LSM hooks from the sleepable set (Jiri Olsa) [1874007] - bpf, cgroup: Fix problematic bounds check (Jiri Olsa) [1874007] - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (Jiri Olsa) [1874007] - bpf: Fix signed_{sub,add32}_overflows type handling (Jiri Olsa) [1874007] - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback (Jiri Olsa) [1874007] - selftests/bpf: Add verifier test for PTR_TO_MEM spill (Jiri Olsa) [1874007] - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling (Jiri Olsa) [1874007] - libbpf: Allow loading empty BTFs (Jiri Olsa) [1874007] - bpf: Allow empty module BTFs (Jiri Olsa) [1874007] - bpf: Don't leak memory in bpf getsockopt when optlen == 0 (Jiri Olsa) [1874007] - bpf: Update local storage test to check handling of null ptrs (Jiri Olsa) [1874007] - bpf: Fix typo in bpf_inode_storage.c (Jiri Olsa) [1874007] - bpf: Add size arg to build_id_parse function (Jiri Olsa) [1874007] - bpf: Move stack_map_get_build_id into lib (Jiri Olsa) [1874007] - bpf: Add tests for new BPF atomic operations (Jiri Olsa) [1874007] - bpf: Add bitwise atomic instructions (Jiri Olsa) [1874007] - bpf: Pull out a macro for interpreting atomic ALU operations (Jiri Olsa) [1874007] - bpf: Add instructions for atomic_[cmp]xchg (Jiri Olsa) [1874007] - bpf: Add BPF_FETCH field / create atomic_fetch_add instruction (Jiri Olsa) [1874007] - bpf: Move BPF_STX reserved field check into BPF_STX verifier code (Jiri Olsa) [1874007] - bpf: Rename BPF_XADD and prepare to encode other atomics in .imm (Jiri Olsa) [1874007] - bpf: x86: Factor out a lookup table for some ALU opcodes (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of REX byte (Jiri Olsa) [1874007] - bpf: x86: Factor out emission of ModR/M for *(reg + off) (Jiri Olsa) [1874007] - bpf, libbpf: Avoid unused function warning on bpf_tail_call_static (Jiri Olsa) [1874007] - selftests/bpf: Install btf_dump test cases (Jiri Olsa) [1874007] - selftests/bpf: Fix installation of urandom_read (Jiri Olsa) [1874007] - selftests/bpf: Move generated test files to $(TEST_GEN_FILES) (Jiri Olsa) [1874007] - selftests/bpf: Fix out-of-tree build (Jiri Olsa) [1874007] - selftests/bpf: Enable cross-building (Jiri Olsa) [1874007] - selftests/bpf: Test kernel module ksym externs (Jiri Olsa) [1874007] - libbpf: Support kernel module ksym externs (Jiri Olsa) [1874007] - bpf: Support BPF ksym variables in kernel modules (Jiri Olsa) [1874007] - selftests/bpf: Sync RCU before unloading bpf_testmod (Jiri Olsa) [1874007] - bpf: Fix a verifier message for alloc size helper arg (Jiri Olsa) [1874007] - bpf: Clarify return value of probe str helpers (Jiri Olsa) [1874007] - libbpf: Clarify kernel type use with USER variants of CORE reading macros (Jiri Olsa) [1874007] - selftests/bpf: Remove duplicate include in test_lsm (Jiri Olsa) [1874007] - bpf: Remove unnecessary include from preload/iterators (Jiri Olsa) [1874007] - selftests/bpf: Add tests for user- and non-CO-RE BPF_CORE_READ() variants (Jiri Olsa) [1874007] - libbpf: Add non-CO-RE variants of BPF_CORE_READ() macro family (Jiri Olsa) [1874007] - selftests/bpf: Fix a compile error for BPF_F_BPRM_SECUREEXEC (Jiri Olsa) [1874007] - bpf: Use thread_group_leader() (Jiri Olsa) [1874007] - bpf: Save correct stopping point in file seq iteration (Jiri Olsa) [1874007] - selftests/bpf: Work-around EBUSY errors from hashmap update/delete (Jiri Olsa) [1874007] - bpf: Add schedule point in htab_init_buckets() (Jiri Olsa) [1874007] - bpf: Remove unused including (Jiri Olsa) [1874007] - selftests/bpf: Fix spelling mistake "tranmission" -> "transmission" (Jiri Olsa) [1874007] - selftests/bpf: Clarify build error if no vmlinux (Jiri Olsa) [1874007] - tweewide: Fix most Shebang lines (Jiri Olsa) [1874007] - bpf: In bpf_task_fd_query use fget_task (Jiri Olsa) [1874007] - selftests/bpf: Add a test for ptr_to_map_value on stack for helper access (Jiri Olsa) [1874007] - bpf: Permits pointers on stack for helper calls (Jiri Olsa) [1874007] - libbpf: Expose libbpf ring_buffer epoll_fd (Jiri Olsa) [1874007] - selftests/bpf: Add set_attach_target() API selftest for module target (Jiri Olsa) [1874007] - libbpf: Support modules in bpf_program__set_attach_target() API (Jiri Olsa) [1874007] - selftests/bpf: Silence ima_setup.sh when not running in verbose mode. (Jiri Olsa) [1874007] - selftests/bpf: Drop the need for LLVM's llc (Jiri Olsa) [1874007] - selftests/bpf: fix bpf_testmod.ko recompilation logic (Jiri Olsa) [1874007] - selftests/bpf: Make selftest compilation work on clang 11 (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - adding xdpxceiver to .gitignore (Jiri Olsa) [1874007] - selftests/bpf: Drop tcp-{client,server}.py from Makefile (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Bi-directional Sockets - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - Socket Teardown - SKB, DRV (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - DRV POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests - SKB POLL, NOPOLL (Jiri Olsa) [1874007] - selftests/bpf: Xsk selftests framework (Jiri Olsa) [1874007] - bpf: Return -ENOTSUPP when attaching to non-kernel BTF (Jiri Olsa) [1874007] - bpf: Propagate __user annotations properly (Jiri Olsa) [1874007] - bpf: Avoid overflows involving hash elem_size (Jiri Olsa) [1874007] - selftests/bpf: Test bpf_sk_storage_get in tcp iterators (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_get (Jiri Olsa) [1874007] - selftests/bpf: Add an iterator selftest for bpf_sk_storage_delete (Jiri Olsa) [1874007] - bpf: Add a bpf_sock_from_file helper (Jiri Olsa) [1874007] - selftests/bpf: Avoid errno clobbering (Jiri Olsa) [1874007] - selftests/bpf: Print reason when a tester could not run a program (Jiri Olsa) [1874007] - selftests/bpf: Fix invalid use of strncat in test_sockmap (Jiri Olsa) [1874007] - libbpf: Use memcpy instead of strncpy to please GCC (Jiri Olsa) [1874007] - selftests/bpf: Add fentry/fexit/fmod_ret selftest for kernel module (Jiri Olsa) [1874007] - selftests/bpf: Add tp_btf CO-RE reloc test for modules (Jiri Olsa) [1874007] - libbpf: Support attachment of BPF tracing programs to kernel modules (Jiri Olsa) [1874007] - libbpf: Factor out low-level BPF program loading helper (Jiri Olsa) [1874007] - bpf: Allow to specify kernel module BTFs when attaching BPF programs (Jiri Olsa) [1874007] - bpf: Remove hard-coded btf_vmlinux assumption from BPF verifier (Jiri Olsa) [1874007] - selftests/bpf: Add CO-RE relocs selftest relying on kernel module BTF (Jiri Olsa) [1874007] - selftests/bpf: Add support for marking sub-tests as skipped (Jiri Olsa) [1874007] - selftests/bpf: Add bpf_testmod kernel module for testing (Jiri Olsa) [1874007] - libbpf: Add kernel module BTF support for CO-RE relocations (Jiri Olsa) [1874007] - libbpf: Refactor CO-RE relocs to not assume a single BTF object (Jiri Olsa) [1874007] - libbpf: Add internal helper to load BTF data by FD (Jiri Olsa) [1874007] - selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP (Jiri Olsa) [1874007] - bpf: Fix cold build of test_progs-no_alu32 (Jiri Olsa) [1874007] - libbpf: Cap retries in sys_bpf_prog_load (Jiri Olsa) [1874007] - libbpf: Sanitise map names before pinning (Jiri Olsa) [1874007] - libbpf: Fail early when loading programs with unspecified type (Jiri Olsa) [1874007] - selftests/bpf: Indent ima_setup.sh with tabs. (Jiri Olsa) [1874007] - selftests/bpf: Add config dependency on BLK_DEV_LOOP (Jiri Olsa) [1874007] - selftests/bpf: Ensure securityfs mount before writing ima policy (Jiri Olsa) [1874007] - selftests/bpf: Update ima_setup.sh for busybox (Jiri Olsa) [1874007] - libbpf: Separate XDP program load with xsk socket creation (Jiri Olsa) [1874007] - selftests/bpf: Copy file using read/write in local storage test (Jiri Olsa) [1874007] - libbpf: Add base BTF accessor (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf progs (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for stackmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for reuseport_array maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for queue_stack_maps maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for bpf_struct_ops maps (Jiri Olsa) [1874007] - bpf: Eliminate rlimit-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf local storage maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf ringbuffer (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for lpm_trie maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for hashtab maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for devmap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for cgroup storage maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for cpumap maps (Jiri Olsa) [1874007] - bpf: Refine memcg-based memory accounting for arraymap maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Prepare for memcg-based memory accounting for bpf maps (Jiri Olsa) [1874007] - bpf: Memcg-based memory accounting for bpf progs (Jiri Olsa) [1874007] - selftests/bpf: Extend bind{4,6} programs with a call to bpf_setsockopt (Jiri Olsa) [1874007] - selftests/bpf: Rewrite test_sock_addr bind bpf into C (Jiri Olsa) [1874007] - selftests/bpf: Fix flavored variants of test_ima (Jiri Olsa) [1874007] - libbpf: Replace size_t with __u32 in xsk interfaces (Jiri Olsa) [1874007] - bpf: Add a selftest for bpf_ima_inode_hash (Jiri Olsa) [1874007] - bpf: Add a BPF helper for getting the IMA hash of an inode (Jiri Olsa) [1874007] - libbpf: Add support for canceling cached_cons advance (Jiri Olsa) [1874007] - bpf: Refactor check_cfg to use a structured loop. (Jiri Olsa) [1874007] - selftest/bpf: Fix rst formatting in readme (Jiri Olsa) [1874007] - selftest/bpf: Fix link in readme (Jiri Olsa) [1874007] - bpf: Simplify task_file_seq_get_next() (Jiri Olsa) [1874007] - selftests/bpf: Mark tests that require unaligned memory access (Jiri Olsa) [1874007] - selftests/bpf: Avoid running unprivileged tests with alignment requirements (Jiri Olsa) [1874007] - selftests/bpf: Fix broken riscv build (Jiri Olsa) [1874007] - bpf: Add bpf_ktime_get_coarse_ns helper (Jiri Olsa) [1874007] - bpf: Add tests for bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - bpf: Add bpf_bprm_opts_set helper (Jiri Olsa) [1874007] - libbpf: bpf__find_by_name[_kind] should use btf__get_nr_types() (Jiri Olsa) [1874007] - selftest/bpf: Fix IPV6FR handling in flow dissector (Jiri Olsa) [1874007] - bpf: Augment the set of sleepable LSM hooks (Jiri Olsa) [1874007] - bpf: selftest: Use bpf_sk_storage in FENTRY/FEXIT/RAW_TP (Jiri Olsa) [1874007] - selftests/bpf: Add asm tests for pkt vs pkt_end comparison. (Jiri Olsa) [1874007] - selftests/bpf: Add skb_pkt_end test (Jiri Olsa) [1874007] - bpf: Support for pointers beyond pkt_end. (Jiri Olsa) [1874007] - bpf: Compile out btf_parse_module() if module BTF is not enabled (Jiri Olsa) [1874007] - selftest/bpf: Add missed ip6ip6 test back (Jiri Olsa) [1874007] - bpf: Keep module's btf_data_size intact after load (Jiri Olsa) [1874007] - bpf: Sanitize BTF data pointer after module is loaded (Jiri Olsa) [1874007] - bpf: Load and verify kernel module BTFs (Jiri Olsa) [1874007] - bpf: Assign ID to vmlinux BTF and return extra info for BTF in GET_OBJ_INFO (Jiri Olsa) [1874007] - bpf: Add in-kernel split BTF support (Jiri Olsa) [1874007] - bpf, btf: Remove the duplicate btf_ids.h include (Jiri Olsa) [1874007] - selftests/bpf: Fix selftest build with old libc (Jiri Olsa) [1874007] - bpf: Exercise syscall operations for inode and sk storage (Jiri Olsa) [1874007] - bpf: Add tests for task_local_storage (Jiri Olsa) [1874007] - bpf: Update selftests for local_storage to use vmlinux.h (Jiri Olsa) [1874007] - bpf: Implement get_current_task_btf and RET_PTR_TO_BTF_ID (Jiri Olsa) [1874007] - libbpf: Add support for task local storage (Jiri Olsa) [1874007] - bpf: Implement task local storage (Jiri Olsa) [1874007] - bpf: Allow LSM programs to use bpf spin locks (Jiri Olsa) [1874007] - bpf: Lift hashtab key_size limit (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF dedup selftests (Jiri Olsa) [1874007] - libbpf: Accomodate DWARF/compiler bug with duplicated identical arrays (Jiri Olsa) [1874007] - libbpf: Support BTF dedup of split BTFs (Jiri Olsa) [1874007] - libbpf: Fix BTF data layout checks and allow empty BTF (Jiri Olsa) [1874007] - selftests/bpf: Add checking of raw type dump in BTF writer APIs selftests (Jiri Olsa) [1874007] - selftests/bpf: Add split BTF basic test (Jiri Olsa) [1874007] - libbpf: Implement basic split BTF support (Jiri Olsa) [1874007] - libbpf: Unify and speed up BTF string deduplication (Jiri Olsa) [1874007] - selftest/bpf: Relax btf_dedup test checks (Jiri Olsa) [1874007] - libbpf: Factor out common operations in BTF writing APIs (Jiri Olsa) [1874007] - selftest/bpf: Use global variables instead of maps for test_tcpbpf_kern (Jiri Olsa) [1874007] - selftests/bpf: Migrate tcpbpf_user.c to use BPF skeleton (Jiri Olsa) [1874007] - selftests/bpf: Replace EXPECT_EQ with ASSERT_EQ and refactor verify_results (Jiri Olsa) [1874007] - selftests/bpf: Drop python client/server in favor of threads (Jiri Olsa) [1874007] - selftests/bpf: Move test_tcppbf_user into test_progs (Jiri Olsa) [1874007] - bpf: Fix error path in htab_map_alloc() (Jiri Olsa) [1874007] - bpf: Avoid hashtab deadlock with map_locked (Jiri Olsa) [1874007] - bpf: Use separate lockdep class for each hashtab (Jiri Olsa) [1874007] - fault-injection: handle EI_ETYPE_TRUE (Jiri Olsa) [1874007] - vfs, fdtable: Add fget_task helper (Jiri Olsa) [1874007] - [s390] vfio-pci/zdev: Add zPCI capabilities to VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] vfio: Introduce capability definitions for VFIO_DEVICE_GET_INFO (Claudio Imbrenda) [1858844] - [s390] s390/pci: track whether util_str is valid in the zpci_dev (Claudio Imbrenda) [1858844] - [s390] s390/pci: stash version in the zpci_dev (Claudio Imbrenda) [1858844]- Enable CRYPTO_SHA512 and _SSSE3 so these are available in FIPS mode (Vladis Dronov) [1973106] - crypto: drbg - self test for HMAC(SHA-512) (Vladis Dronov) [1973106] - xfrm: xfrm_state_mtu should return at least 1280 for ipv6 (Sabrina Dubroca) [1919786] - xfrm: remove get_mtu indirection from xfrm_type (Sabrina Dubroca) [1919786] - netfilter: move endif to correct location (Florian Westphal) [1971991] - netfilter: nft_compat: remove flush counter optimization (Florian Westphal) [1974323] - mptcp: fix soft lookup in subflow_error_report() (Florian Westphal) [1936368] - selftests: mptcp: enable syncookie only in absence of reorders (Florian Westphal) [1936368] - mptcp: do not warn on bad input from the network (Florian Westphal) [1936368] - mptcp: wake-up readers only for in sequence data (Florian Westphal) [1936368] - mptcp: try harder to borrow memory from subflow under pressure (Florian Westphal) [1936368] - mptcp: Fix out of bounds when parsing TCP options (Florian Westphal) [1936368] - selftests: mptcp_connect: add SO_TIMESTAMPNS cmsg support (Florian Westphal) [1936368] - mptcp: receive path cmsg support (Florian Westphal) [1936368] - tcp: export timestamp helpers for mptcp (Florian Westphal) [1936368] - mptcp: setsockopt: handle SOL_SOCKET in one place only (Florian Westphal) [1936368] - mptcp: sockopt: propagate timestamp request to subflows (Florian Westphal) [1936368] - sock: expose so_timestamping options for mptcp (Florian Westphal) [1936368] - mptcp: restrict values of 'enabled' sysctl (Florian Westphal) [1936368] - mptcp: support SYSCTL only if enabled (Florian Westphal) [1936368] - mptcp: make sure flag signal is set when add addr with port (Florian Westphal) [1936368] - mptcp: remove redundant initialization in pm_nl_init_net() (Florian Westphal) [1936368] - mptcp: generate subflow hmac after mptcp_finish_join() (Florian Westphal) [1936368] - mptcp: using TOKEN_MAX_RETRIES instead of magic number (Florian Westphal) [1936368] - mptcp: fix pr_debug in mptcp_token_new_connect (Florian Westphal) [1936368] - mptcp: update selftest for fallback due to OoO (Florian Westphal) [1936368] - mptcp: do not reset MP_CAPABLE subflow on mapping errors (Florian Westphal) [1936368] - mptcp: always parse mptcp options for MPC reqsk (Florian Westphal) [1936368] - mptcp: fix sk_forward_memory corruption on retransmission (Florian Westphal) [1936368] - mptcp: validate 'id' when stopping the ADD_ADDR retransmit timer (Florian Westphal) [1936368] - mptcp: avoid error message on infinite mapping (Florian Westphal) [1936368] - mptcp: drop unconditional pr_warn on bad opt (Florian Westphal) [1936368] - mptcp: avoid OOB access in setsockopt() (Florian Westphal) [1936368] - mptcp: fix data stream corruption (Florian Westphal) [1936368] - mptcp: fix splat when closing unaccepted socket (Florian Westphal) [1936368] - selftests: mptcp: add a test case for MSG_PEEK (Florian Westphal) [1936368] - mptcp: add MSG_PEEK support (Florian Westphal) [1936368] - mptcp: ignore unsupported msg flags (Florian Westphal) [1936368] - mptcp: implement MSG_TRUNC support (Florian Westphal) [1936368] - mptcp: implement dummy MSG_ERRQUEUE support (Florian Westphal) [1936368] - mptcp: Retransmit DATA_FIN (Florian Westphal) [1936368] - selftests: mptcp: add packet mark test case (Florian Westphal) [1936368] - selftests: mptcp: add the net device name testcase (Florian Westphal) [1936368] - selftests: mptcp: dump more info on mpjoin errors (Florian Westphal) [1936368] - selftests: mptcp: init nstat history (Florian Westphal) [1936368] - selftests: mptcp: launch mptcp_connect with timeout (Florian Westphal) [1936368] - selftests: mptcp: remove id 0 address testcases (Florian Westphal) [1936368] - selftests: mptcp: add addr argument for del_addr (Florian Westphal) [1936368] - selftests: mptcp: avoid calling pm_nl_ctl with bad IDs (Florian Westphal) [1936368] - selftests: mptcp: signal addresses testcases (Florian Westphal) [1936368] - selftests: mptcp: timeout testcases for multi addresses (Florian Westphal) [1936368] - selftests: mptcp: add cfg_do_w for cfg_remove (Florian Westphal) [1936368] - selftests: mptcp: Restore packet capture option in join tests (Florian Westphal) [1936368] - selftests: mptcp: add testcases for removing addrs (Florian Westphal) [1936368] - selftests: mptcp: set addr id for removing testcases (Florian Westphal) [1936368] - selftests: mptcp: add invert argument for chk_rm_nr (Florian Westphal) [1936368] - selftests: mptcp: fail if not enough SYN/3rd ACK (Florian Westphal) [1936368] - selftests: mptcp: display warnings on one line (Florian Westphal) [1936368] - selftests: mptcp: fix ACKRX debug message (Florian Westphal) [1936368] - selftests: mptcp: dump more info on errors (Florian Westphal) [1936368] - selftests: mptcp: add command line arguments for mptcp_join.sh (Florian Westphal) [1936368] - selftests: mptcp: add testcases for ADD_ADDR with port (Florian Westphal) [1936368] - selftests: mptcp: add port argument for pm_nl_ctl (Florian Westphal) [1936368] - selftests: mptcp: add testcases for newly added addresses (Florian Westphal) [1936368] - selftests: mptcp: use minus values for removing address numbers (Florian Westphal) [1936368] - selftests: increase timeout to 10 min (Florian Westphal) [1936368] - selftests: mptcp: add IPv4-mapped IPv6 testcases (Florian Westphal) [1936368] - mptcp: use mptcp_for_each_subflow in mptcp_close (Florian Westphal) [1936368] - mptcp: add tracepoint in subflow_check_data_avail (Florian Westphal) [1936368] - mptcp: add tracepoint in ack_update_msk (Florian Westphal) [1936368] - mptcp: add tracepoint in get_mapping_status (Florian Westphal) [1936368] - mptcp: add tracepoint in mptcp_subflow_get_send (Florian Westphal) [1936368] - mptcp: export mptcp_subflow_active (Florian Westphal) [1936368] - mptcp: fix format specifiers for unsigned int (Florian Westphal) [1936368] - mptcp: sockopt: add TCP_CONGESTION and TCP_INFO (Florian Westphal) [1936368] - mptcp: setsockopt: SO_DEBUG and no-op options (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_INCOMING_CPU (Florian Westphal) [1936368] - mptcp: setsockopt: add SO_MARK support (Florian Westphal) [1936368] - mptcp: setsockopt: support SO_LINGER (Florian Westphal) [1936368] - mptcp: setsockopt: handle receive/send buffer and device bind (Florian Westphal) [1936368] - mptcp: setsockopt: handle SO_KEEPALIVE and SO_PRIORITY (Florian Westphal) [1936368] - mptcp: tag sequence_seq with socket state (Florian Westphal) [1936368] - mptcp: add skeleton to sync msk socket options to subflows (Florian Westphal) [1936368] - mptcp: only admit explicitly supported sockopt (Florian Westphal) [1936368] - mptcp: move sockopt function into a new file (Florian Westphal) [1936368] - mptcp: drop all sub-options except ADD_ADDR when the echo bit is set (Florian Westphal) [1936368] - mptcp: unify add_addr(6)_generate_hmac (Florian Westphal) [1936368] - mptcp: drop MPTCP_ADDR_IPVERSION_4/6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_options_received (Florian Westphal) [1936368] - mptcp: drop OPTION_MPTCP_ADD_ADDR6 (Florian Westphal) [1936368] - mptcp: use mptcp_addr_info in mptcp_out_options (Florian Westphal) [1936368] - mptcp: move flags and ifindex out of mptcp_addr_info (Florian Westphal) [1936368] - mptcp: add mptcp reset option support (Florian Westphal) [1936368] - mptcp: remove unneeded check on first subflow (Florian Westphal) [1936368] - mptcp: add active MPC mibs (Florian Westphal) [1936368] - mptcp: add mib for token creation fallback (Florian Westphal) [1936368] - mptcp: remove id 0 address (Florian Westphal) [1936368] - mptcp: unify RM_ADDR and RM_SUBFLOW receiving (Florian Westphal) [1936368] - mptcp: remove all subflows involving id 0 address (Florian Westphal) [1936368] - mptcp: subflow.c: Fix a typo (Florian Westphal) [1936368] - mptcp: rename mptcp_pm_nl_add_addr_send_ack (Florian Westphal) [1936368] - mptcp: send ack for rm_addr (Florian Westphal) [1936368] - mptcp: drop useless addr_signal clear (Florian Westphal) [1936368] - mptcp: move to next addr when subflow creation fail (Florian Westphal) [1936368] - mptcp: export lookup_anno_list_by_saddr (Florian Westphal) [1936368] - mptcp: move to next addr when timeout (Florian Westphal) [1936368] - mptcp: drop unused subflow in mptcp_pm_subflow_established (Florian Westphal) [1936368] - mptcp: skip connecting the connected address (Florian Westphal) [1936368] - mptcp: drop argument port from mptcp_pm_announce_addr (Florian Westphal) [1936368] - mptcp: clean-up the rtx path (Florian Westphal) [1936368] - mptcp: fix ADD_ADDR HMAC in case port is specified (Florian Westphal) [1936368] - mptcp: remove a list of addrs when flushing (Florian Westphal) [1936368] - mptcp: remove multi addresses and subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi subflows in PM (Florian Westphal) [1936368] - mptcp: remove multi addresses in PM (Florian Westphal) [1936368] - mptcp: add rm_list_rx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_options_received (Florian Westphal) [1936368] - mptcp: add rm_list_tx in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: add rm_list in mptcp_out_options (Florian Westphal) [1936368] - mptcp: fix bit MPTCP_PUSH_PENDING tests (Florian Westphal) [1936368] - mptcp: fix length of ADD_ADDR with port sub-option (Florian Westphal) [1936368] - mptcp: free resources when the port number is mismatched (Florian Westphal) [1936368] - mptcp: fix missing wakeup (Florian Westphal) [1936368] - mptcp: fix race in release_cb (Florian Westphal) [1936368] - mptcp: factor out __mptcp_retrans helper() (Florian Westphal) [1936368] - mptcp: reset 'first' and ack_hint on subflow close (Florian Westphal) [1936368] - mptcp: dispose initial struct socket when its subflow is closed (Florian Westphal) [1936368] - mptcp: fix memory accounting on allocation error (Florian Westphal) [1936368] - mptcp: put subflow sock on connect error (Florian Westphal) [1936368] - mptcp: reset last_snd on subflow close (Florian Westphal) [1936368] - mptcp: do not wakeup listener for MPJ subflows (Florian Westphal) [1936368] - mptcp: fix DATA_FIN generation on early shutdown (Florian Westphal) [1936368] - mptcp: fix DATA_FIN processing for orphaned sockets (Florian Westphal) [1936368] - mptcp: add local addr info in mptcp_info (Florian Westphal) [1936368] - mptcp: add netlink event support (Florian Westphal) [1936368] - mptcp: avoid lock_fast usage in accept path (Florian Westphal) [1936368] - netlink: don't call ->netlink_bind with table lock held (Florian Westphal) [1936368] - genetlink: restrict upcoming mptcp netlink events to CAP_NET_ADMIN (Florian Westphal) [1936368] - mptcp: pass subflow socket to a few helpers (Florian Westphal) [1936368] - mptcp: move subflow close loop after sk close check (Florian Westphal) [1936368] - mptcp: schedule worker when subflow is closed (Florian Westphal) [1936368] - mptcp: split __mptcp_close_ssk helper (Florian Westphal) [1936368] - mptcp: move pm netlink work into pm_netlink (Florian Westphal) [1936368] - mptcp: add a missing retransmission timer scheduling (Florian Westphal) [1936368] - mptcp: better msk receive window updates (Florian Westphal) [1936368] - mptcp: init mptcp request socket earlier (Florian Westphal) [1936368] - mptcp: fix spurious retransmissions (Florian Westphal) [1936368] - mptcp: fix poll after shutdown (Florian Westphal) [1936368] - mptcp: deliver ssk errors to msk (Florian Westphal) [1936368] - mptcp: pm: add lockdep assertions (Florian Westphal) [1936368] - mptcp: add the mibs for ADD_ADDR with port (Florian Westphal) [1936368] - mptcp: deal with MPTCP_PM_ADDR_ATTR_PORT in PM netlink (Florian Westphal) [1936368] - mptcp: enable use_port when invoke addresses_equal (Florian Westphal) [1936368] - mptcp: add port number check for MP_JOIN (Florian Westphal) [1936368] - mptcp: add a new helper subflow_req_create_thmac (Florian Westphal) [1936368] - mptcp: drop unused skb in subflow_token_join_request (Florian Westphal) [1936368] - mptcp: create the listening socket for new port (Florian Westphal) [1936368] - mptcp: create subflow or signal addr for newly added address (Florian Westphal) [1936368] - mptcp: drop *_max fields in mptcp_pm_data (Florian Westphal) [1936368] - mptcp: use WRITE_ONCE for the pernet *_max (Florian Westphal) [1936368] - mptcp: pm nl: reduce variable scope (Florian Westphal) [1936368] - mptcp: pm nl: support IPv4 mapped in v6 addresses (Florian Westphal) [1936368] - mptcp: support MPJoin with IPv4 mapped in v6 sk (Florian Westphal) [1936368] - mptcp: use sha256() instead of open coding (Florian Westphal) [1936368] - crypto: lib/sha256 - add sha256() function (Florian Westphal) [1936368] - mptcp: use SHA256_BLOCK_SIZE, not SHA_MESSAGE_BYTES (Florian Westphal) [1936368] - xprtrdma: Pad optimization, revisited (Steve Dickson) [1926957] - ibmvnic: remove set but not used variable 'netdev' (Diego Domingos) [1922193] - net/ibmvnic: Remove tests of member address (Diego Domingos) [1922193] - ibmvnic: remove duplicate napi_schedule call in do_reset function (Diego Domingos) [1922193] - ibmvnic: avoid calling napi_disable() twice (Diego Domingos) [1922193] - ibmvnic: queue reset work in system_long_wq (Diego Domingos) [1922193] - ibmvnic: correctly use dev_consume/free_skb_irq (Diego Domingos) [1922193] - ibmvnic: improve failover sysfs entry (Diego Domingos) [1922193] - ibmvnic: print adapter state as a string (Diego Domingos) [1922193] - ibmvnic: print reset reason as a string (Diego Domingos) [1922193] - ibmvnic: clean up the remaining debugfs data structures (Diego Domingos) [1922193] - ibmvnic: Use 'skb_frag_address()' instead of hand coding it (Diego Domingos) [1922193] - ibmvnic: remove excessive irqsave (Diego Domingos) [1922193] - ibmvnic: always store valid MAC address (Diego Domingos) [1922193] - ibmvnic: Fix possibly uninitialized old_num_tx_queues variable warning. (Diego Domingos) [1922193] - vio: make remove callback return void (Diego Domingos) [1922193] - tty: hvcs: Drop unnecessary if block (Diego Domingos) [1922193] - ibmvnic: serialize access to work queue on remove (Diego Domingos) [1922193] - ibmvnic: skip send_request_unmap for timeout reset (Diego Domingos) [1922193] - ibmvnic: add memory barrier to protect long term buffer (Diego Domingos) [1922193] - ibmvnic: substitute mb() with dma_wmb() for send_*crq* functions (Diego Domingos) [1922193] - ibmvnic: prefer strscpy over strlcpy (Diego Domingos) [1922193] - ibmvnic: remove unused spinlock_t stats_lock definition (Diego Domingos) [1922193] - ibmvnic: add comments for spinlock_t definitions (Diego Domingos) [1922193] - ibmvnic: fix miscellaneous checks (Diego Domingos) [1922193] - ibmvnic: avoid multiple line dereference (Diego Domingos) [1922193] - ibmvnic: fix braces (Diego Domingos) [1922193] - ibmvnic: fix block comments (Diego Domingos) [1922193] - ibmvnic: prefer 'unsigned long' over 'unsigned long int' (Diego Domingos) [1922193] - ibmvnic: remove unnecessary rmb() inside ibmvnic_poll (Diego Domingos) [1922193] - ibmvnic: rework to ensure SCRQ entry reads are properly ordered (Diego Domingos) [1922193] - ibmvnic: Ensure that CRQ entry read are correctly ordered (Diego Domingos) [1922193] - net: ethernet: ibm: ibmvnic: Fix some kernel-doc misdemeanours (Diego Domingos) [1922193] - powerpc/hmi: Fix kernel hang when TB is in error state. (Gustavo Walbon) [1924091] - powerpc/eeh: Fix EEH handling for hugepages in ioremap space. (Gustavo Walbon) [1924090] - powerpc/pseries: Only register vio drivers if vio bus exists (Gustavo Walbon) [1924090] - powerpc/pci: Remove unimplemented prototypes (Gustavo Walbon) [1924090] - powerpc/powernv/pci: Use kzalloc() for phb related allocations (Gustavo Walbon) [1924090] - powerpc/pasemi: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mve5100: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/mpc7448: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/linkstation: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/embedded6xx/holly: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/chrp: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/amigaone: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/83xx: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/82xx/*: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/mpc5200_simple: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/media5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/lite5200: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/52xx/efika: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/512x: Move PHB discovery (Gustavo Walbon) [1924090] - powerpc/pci: Move PHB discovery for PCI_DN using platforms (Gustavo Walbon) [1924090] - powerpc/maple: Fix declaration made after definition (Gustavo Walbon) [1924090] - powerpc/pci: Add ppc_md.discover_phbs() (Gustavo Walbon) [1924090] - powerpc/pci: Delete traverse_pci_dn() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework pci_dev lookup in debugfs attributes (Gustavo Walbon) [1924090] - selftests/powerpc: Add VF recovery tests (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_send_allow_unfreeze() static (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Make pseries_pcibios_bus_add_device() static (Gustavo Walbon) [1924090] - selftests/powerpc: Make the test check in eeh-basic.sh posix compliant (Gustavo Walbon) [1924090] - powernv/pci: Print an error when device enable is blocked (Gustavo Walbon) [1924090] - selftests/powerpc/eeh: disable kselftest timeout setting for eeh-basic (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Fix a possible debugfs deadlock (Gustavo Walbon) [1924090] - powerpc/eeh: Fix eeh_dev_check_failure() for PE#0 (Gustavo Walbon) [1924090] - selftests/powerpc: Fix eeh-basic.sh exit codes (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix use of uninitialised variable (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_pe->config_addr (Gustavo Walbon) [1924090] - powerpc/eeh: Clean up PE addressing (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Allow zero to be a valid PE configuration address (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Rework device EEH PE determination (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Clean up pe_config_addr lookups (Gustavo Walbon) [1924090] - powerpc/eeh: Move EEH initialisation to an arch initcall (Gustavo Walbon) [1924090] - powerpc/eeh: Delete eeh_ops->init (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/powernv: Stop using eeh_ops->init() (Gustavo Walbon) [1924090] - powerpc/eeh: Rework EEH initialisation (Gustavo Walbon) [1924090] - powerpc/pseries/eeh: Fix dumb linebreaks (Gustavo Walbon) [1924090] - selftests/powerpc: Squash spurious errors due to device removal (Gustavo Walbon) [1924090] - powerpc/eeh: Move PE tree setup into the platform (Gustavo Walbon) [1924090] - powerpc/eeh: Drop pdn use in eeh_pe_tree_insert() (Gustavo Walbon) [1924090] - powerpc/eeh: Rename eeh_{add_to|remove_from}_parent_pe() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove class code field from edev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove spurious use of pci_dn in eeh_dump_dev_log (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->{read|write}_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->resume_notify() (Gustavo Walbon) [1924090] - powerpc/eeh: Pass eeh_dev to eeh_ops->restore_config() (Gustavo Walbon) [1924090] - powerpc/eeh: Remove VF config space restoration (Gustavo Walbon) [1924090] - powerpc/eeh: Kill off eeh_ops->get_pe_addr() (Gustavo Walbon) [1924090] - powerpc/pseries: Stop using pdn->pe_number (Gustavo Walbon) [1924090] - powerpc/eeh: Move vf_index out of pci_dn and into eeh_dev (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev.c (Gustavo Walbon) [1924090] - powerpc/eeh: Remove eeh_dev_phb_init_dynamic() (Gustavo Walbon) [1924090] - powerpc/powernv: Make pnv_pci_sriov_enable() and friends static (Gustavo Walbon) [1924090] - powerpc/pseries: Make vio and ibmebus initcalls pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Release EEH device state synchronously (Gustavo Walbon) [1924090] - powerpc/eeh: Rework eeh_ops->probe() (Gustavo Walbon) [1924090] - powerpc/eeh: Make early EEH init pseries specific (Gustavo Walbon) [1924090] - powerpc/eeh: Remove PHB check in probe (Gustavo Walbon) [1924090] - powerpc/eeh: Do early EEH init only when required (Gustavo Walbon) [1924090] - powerpc/eeh: Only dump stack once if an MMIO loop is detected (Gustavo Walbon) [1924090] - powernv/pci: Add a debugfs entry to dump PHB's IODA PE state (Gustavo Walbon) [1924090] - powernv/pci: Allow any write trigger the diag dump (Gustavo Walbon) [1924090] - powernv/pci: Use pnv_phb as the private data for debugfs entries (Gustavo Walbon) [1924090] - powerpc/powernv/npu: Fix debugfs_simple_attr.cocci warnings (Gustavo Walbon) [1924090] - powerpc/pcidn: Warn when sriov pci_dn management is used incorrectly (Gustavo Walbon) [1924090] - powerpc/pcidn: Make VF pci_dn management CONFIG_PCI_IOV specific (Gustavo Walbon) [1924090] - powerpc/sriov: Remove VF eeh_dev state when disabling SR-IOV (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Make clearing EEH_DEV_SYSFS saner (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: Remove double pci_dn lookup. (Gustavo Walbon) [1924090] - powerpc/eeh_sysfs: ifdef pseries sr-iov sysfs properties (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Don't use pci_dn when inserting new ranges (Gustavo Walbon) [1924090] - powerpc/eeh: differentiate duplicate detection message (Gustavo Walbon) [1924090] - powerpc/eeh: Handle hugepages in ioremap space (Gustavo Walbon) [1924090] - powerpc/powernv-eeh: Consisely desribe what this file does (Gustavo Walbon) [1924090] - powerpc/eeh_cache: fix a W=1 kernel-doc warning (Gustavo Walbon) [1924090] - powerpc/eeh_cache: Add a way to dump the EEH address cache (Gustavo Walbon) [1924090] - powerpc/powernv: Escalate reset when IODA reset fails (Gustavo Walbon) [1924090] - powerpc/powernv/eeh/npu: Fix uninitialized variables in opal_pci_eeh_freeze_status (Gustavo Walbon) [1924090] - powerpc: eeh_event: convert semaphore to completion (Gustavo Walbon) [1924090] - powerpc/eeh: Declare pci_ers_result_name() as static (Gustavo Walbon) [1924090] - Bluetooth: verify AMP hci_chan before amp_destroy (Gopal Tiwari) [1962546] {CVE-2021-33034} - NFSv4.2 fix handling of sr_eof in SEEK's reply (Steve Dickson) [1948015] - SUNRPC: Fix null pointer dereference in svc_rqst_free() (Benjamin Coddington) [1952008] - NFSv4: Use sequence counter with associated spinlock (Benjamin Coddington) [1952008] - NFSv4.2: fix return value of _nfs4_get_security_label() (Benjamin Coddington) [1952008] - NFSD: fix error handling in NFSv4.0 callbacks (Benjamin Coddington) [1952008] - NFS: Don't gratuitously clear the inode cache when lookup failed (Benjamin Coddington) [1952008] - NFS: Don't revalidate the directory permissions on a lookup failure (Benjamin Coddington) [1952008] - nfsd: register pernet ops last, unregister first (Benjamin Coddington) [1952008] - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Benjamin Coddington) [1952008] - lockd: fix access beyond unterminated strings in prints (Benjamin Coddington) [1952008] - tty: Protect disc_data in n_tty_close and n_tty_flush_buffer (Rafael Aquini) [1879861] - hwmon: (amd_energy) Add AMD family 19h model 30h x86 match (Terry Bowman) [1949280]- redhat/configs: Re-enable dptf_power module (Prarit Bhargava) [1962349] - net/sched: act_ct: Offload connections with commit action (Marcelo Ricardo Leitner) [1965817] - netfilter: flowtable: Remove redundant hw refresh bit (Marcelo Ricardo Leitner) [1965817] - inet_diag: add support for tw_mark (Xin Long) [1972967] - mm: thp: fix MADV_REMOVE deadlock on shmem THP (Waiman Long) [1974659] {CVE-2020-29368} - mm: thp: make the THP mapcount atomic against __split_huge_pmd_locked() (Waiman Long) [1974659] {CVE-2020-29368} - mmap locking API: add mmap_lock_is_contended() (Waiman Long) [1970177] - mm: madvise: fix vma user-after-free (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() protect the pmd lock (Waiman Long) [1970177] - khugepaged: collapse_pte_mapped_thp() flush the right range (Waiman Long) [1970177] - mm/mmap.c: close race between munmap() and expand_upwards()/downwards() (Waiman Long) [1970177] - mm: document warning in move_normal_pmd() and make it warn only once (Waiman Long) [1970177] - mmap locking API: convert mmap_sem comments (Waiman Long) [1970177] - mmap locking API: convert mmap_sem API comments (Waiman Long) [1970177] - mmap locking API: rename mmap_sem to mmap_lock (Waiman Long) [1970177] - mmap locking API: add mmap_assert_locked() and mmap_assert_write_locked() (Waiman Long) [1970177] - mmap locking API: add MMAP_LOCK_INITIALIZER (Waiman Long) [1970177] - mmap locking API: convert nested write lock sites (Waiman Long) [1970177] - mmap locking API: convert mmap_sem call sites missed by coccinelle (Waiman Long) [1970177] - mmap locking API: use coccinelle to convert mmap_sem rwsem call sites (Waiman Long) [1970177] - MMU notifier: use the new mmap locking API (Waiman Long) [1970177] - mm/gup.c: further document vma_permits_fault() (Waiman Long) [1970177] - mm/gup.c: update the documentation (Waiman Long) [1970177] - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled (Waiman Long) [1970177] - proc: inline vma_stop into m_stop (Waiman Long) [1970177] - mm: remove CONFIG_TRANSPARENT_HUGE_PAGECACHE (Waiman Long) [1970177] - fs/io_uring: set FOLL_PIN via pin_user_pages() (Waiman Long) [1970177] - shmem: pin the file in shmem_fault() if mmap_sem is dropped (Waiman Long) [1970177] - mm/gup.c: fix comments of __get_user_pages() and get_user_pages_remote() (Waiman Long) [1970177] - mm/init-mm.c: include for vm_committed_as_batch (Waiman Long) [1970177] - lib/generic-radix-tree.c: add kmemleak annotations (Waiman Long) [1970177] - mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock() (Waiman Long) [1970177] - lib/generic-radix-tree.c: make 2 functions static inline (Waiman Long) [1970177] - x86/mm: Clean up the pmd_read_atomic() comments (Waiman Long) [1970177] - x86/mm: Fix function name typo in pmd_read_atomic() comment (Waiman Long) [1970177] - khugepaged: enable collapse pmd for pte-mapped THP (Waiman Long) [1970177] - mm: Handle MADV_WILLNEED through vfs_fadvise() (Waiman Long) [1970177] - pagewalk: use lockdep_assert_held for locking validation (Waiman Long) [1970177] - mm: use down_read_killable for locking mmap_sem in access_remote_vm (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/map_files (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/clear_refs (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/pagemap (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/smaps_rollup (Waiman Long) [1970177] - proc: use down_read_killable mmap_sem for /proc/pid/maps (Waiman Long) [1970177] - mm/filemap.c: correct the comment about VM_FAULT_RETRY (Waiman Long) [1970177] - mm: mmu_gather: remove __tlb_reset_range() for force flush (Waiman Long) [1970177] - arm64/mm: Drop mmap_sem before calling __do_kernel_fault() (Waiman Long) [1970177] - docs/vm: Minor editorial changes in the THP and hugetlbfs (Waiman Long) [1970177] - x86/mpx, mm/core: Fix recursive munmap() corruption (Waiman Long) [1970177] - doc: mm: migration doesn't use FOLL_SPLIT anymore (Waiman Long) [1970177] - filemap: add a comment about FAULT_FLAG_RETRY_NOWAIT behavior (Waiman Long) [1970177] - proc: commit to genradix (Waiman Long) [1970177] - generic radix trees (Waiman Long) [1970177] - mm: swap: add comment for swap_vma_readahead (Waiman Long) [1970177] - x86/mm: Make set_pmd_at() paravirt aware (Waiman Long) [1970177] - mm: select HAVE_MOVE_PMD on x86 for faster mremap (Waiman Long) [1970177] - mm: speed up mremap by 20x on large regions (Waiman Long) [1970177] - mm/mmap.c: remove verify_mm_writelocked() (Waiman Long) [1970177] - x86/fault: Check user_mode(regs) when avoiding an mmap_sem deadlock (Waiman Long) [1970177] - mm: brk: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: mremap: downgrade mmap_sem to read when shrinking (Waiman Long) [1970177] - mm: unmap VM_PFNMAP mappings with optimized path (Waiman Long) [1970177] - mm: unmap VM_HUGETLB mappings with optimized path (Waiman Long) [1970177] - mm: mmap: zap pages with read mmap_sem in munmap (Waiman Long) [1970177] - x86/mm: Fix exception table comments (Waiman Long) [1970177] - ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade() (Mark Langsdorf) [1946282] - acpi/drivers/thermal: Remove TRIPS_NONE cooling device binding (Mark Langsdorf) [1946282] - thermal/drivers/acpi: Use hot and critical ops (Mark Langsdorf) [1946282] - thermal/core: Add critical and hot ops (Mark Langsdorf) [1946282] - thermal/core: Emit a warning if the thermal zone is updated without ops (Mark Langsdorf) [1946282] - ACPI: scan: Fix _STA getting called on devices with unmet dependencies (Mark Langsdorf) [1946282] - ACPI: tables: x86: Reserve memory occupied by ACPI tables (Mark Langsdorf) [1946282] - ACPICA: Always create namespace nodes using acpi_ns_create_node() (Mark Langsdorf) [1946282] - ACPI: platform: Add balanced-performance platform profile (Mark Langsdorf) [1946282] - ACPI: platform: Hide ACPI_PLATFORM_PROFILE option (Mark Langsdorf) [1946282] - ACPICA: Remove some code duplication from acpi_ev_address_space_dispatch (Mark Langsdorf) [1946282] - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 2) (Mark Langsdorf) [1946282] - ACPI: property: Satisfy kernel doc validator (part 1) (Mark Langsdorf) [1946282] - ACPI: property: Make acpi_node_prop_read() static (Mark Langsdorf) [1946282] - ACPI: property: Remove dead code (Mark Langsdorf) [1946282] - iommu/amd: Fix performance counter initialization (Mark Langsdorf) [1946282] - ACPI: property: Fix fwnode string properties matching (Mark Langsdorf) [1946282] - ACPI / NUMA: add a stub function for node_to_pxm() (Mark Langsdorf) [1946282] - ACPI: OSL: Rework acpi_check_resource_conflict() (Mark Langsdorf) [1946282] - ACPI: APEI: ERST: remove unneeded semicolon (Mark Langsdorf) [1946282] - iommu/vt-d: Add new enum value and structure for SATC (Mark Langsdorf) [1946282] - ACPI: Add support for native USB4 control _OSC (Mark Langsdorf) [1946282] - ACPI: Execute platform _OSC also with query bit clear (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_FPDT (Mark Langsdorf) [1946282] - ACPI: tables: introduce support for FPDT table (Mark Langsdorf) [1946282] - ACPI: APEI: Add is_generic_error() to identify GHES sources (Mark Langsdorf) [1946282] - ACPI: platform-profile: Fix possible deadlock in platform_profile_remove() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Introduce object pointers to callbacks (Mark Langsdorf) [1946282] - PCI/ACPI: Clarify message about _OSC failure (Mark Langsdorf) [1946282] - PCI/ACPI: Remove unnecessary osc_lock (Mark Langsdorf) [1946282] - PCI/ACPI: Make acpi_pci_osc_control_set() static (Mark Langsdorf) [1946282] - media: ACPI / bus: Add acpi_dev_get_next_match_dev() and helper macro (Mark Langsdorf) [1946282] - ACPI: scan: Adjust white space in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: scan: Rearrange memory allocation in acpi_device_add() (Mark Langsdorf) [1946282] - ACPI: platform-profile: Drop const qualifier for cur_profile (Mark Langsdorf) [1946282] - ACPI: configfs: add missing check after configfs_register_default_group() (Mark Langsdorf) [1946282] - ACPI: CPPC: initialise vaddr pointers to NULL (Mark Langsdorf) [1946282] - ACPI: CPPC: add __iomem annotation to generic_comm_base pointer (Mark Langsdorf) [1946282] - ACPI: CPPC: remove __iomem annotation for cpc_reg's address (Mark Langsdorf) [1946282] - ACPI: Use DEVICE_ATTR_ macros (Mark Langsdorf) [1946282] - ACPICA: Update version to 20210105 (Mark Langsdorf) [1946282] - ACPICA: Updated all copyrights to 2021 (Mark Langsdorf) [1946282] - ACPICA: Remove the VRTC table (Mark Langsdorf) [1946282] - ACPICA: Remove the MTMR (Mid-Timer) table (Mark Langsdorf) [1946282] - ACPICA: Update version to 20201217 (Mark Langsdorf) [1946282] - ACPICA: add type casts for string functions (Mark Langsdorf) [1946282] - ACPICA: fix -Wfallthrough (Mark Langsdorf) [1946282] - ACPICA: Clean up exception code class checks (Mark Langsdorf) [1946282] - ACPICA: Fix exception code class checks (Mark Langsdorf) [1946282] - redhat/configs: Add CONFIG_ACPI_PLATFORM_PROFILE (Mark Langsdorf) [1946282] - ACPI: platform: Add platform profile support (Mark Langsdorf) [1946282] - NTB/msi: Use irq_has_action() (Myron Stowe) [1933153] - NTB: Use struct_size() helper in devm_kzalloc() (Myron Stowe) [1933153] - ntb: intel: Fix memleak in intel_ntb_pci_probe (Myron Stowe) [1933153] - NTB: hw: amd: fix an issue about leak system resources (Myron Stowe) [1933153] - ntb: hw: remove the code that sets the DMA mask (Myron Stowe) [1933153] - [s390] s390/qdio: remove 'merge_pending' mechanism (Claudio Imbrenda) [1919251] - [s390] s390/qdio: improve handling of PENDING buffers for QEBSM devices (Claudio Imbrenda) [1919251] - [s390] s390/qdio: rework q->qdio_error indication (Claudio Imbrenda) [1919251] - [s390] s390/qdio: inline qdio_kick_handler() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: track time of last data IRQ for each device (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make thinint registration symmetric (Claudio Imbrenda) [1919251] - [s390] s390/qdio: adopt new tasklet API (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove qdio_inbound_q_moved() wrapper (Claudio Imbrenda) [1919251] - [s390] s390/qdio: remove Input tasklet code (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Do not set COMMAND_COMPLETE (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Handle event-lost notification for Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Process Version Change events (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify & assert the stat_lock locking in zfcp_qdio_send() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Remove orphaned function declarations (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Lift Input Queue tasklet from qdio (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Clarify access to erp_action in zfcp_fsf_req_complete() (Claudio Imbrenda) [1919251] - [s390] scsi: zfcp: Use list_first_entry_or_null() in zfcp_erp_thread() (Claudio Imbrenda) [1919251] - [s390] s390/qdio: always use dev_name() for device name in QIB (Claudio Imbrenda) [1919251] - [s390] s390/qdio: clean up QDR setup (Claudio Imbrenda) [1919251] - [s390] s390/qdio: make qdio_handle_aobs() more robust (Claudio Imbrenda) [1919251] - [s390] s390/cpumf: disable preemption when accessing per-cpu variable (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: rename header file to hwctrset.h (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: remove 60 seconds read limit (Claudio Imbrenda) [1925527] - [s390] s390/cpumf: Add support for complete counter set extraction (Claudio Imbrenda) [1925527]- KVM: X86: hyper-v: Task srcu lock when accessing kvm_memslots() (Vitaly Kuznetsov) [1904570] - KVM: nSVM: remove a warning about vmcb01 VM exit reason (Vitaly Kuznetsov) [1904570] - KVM: x86: Consolidate guest enter/exit logic to common helpers (Vitaly Kuznetsov) [1904570] - KVM: x86: Defer vtime accounting 'til after IRQ handling (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit vtime accounting to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Move guest exit context tracking to separate helpers (Vitaly Kuznetsov) [1904570] - context_tracking: Make guest_enter/exit() .noinstr ready (Vitaly Kuznetsov) [1904570] - sched/cputime: Rename vtime_account_system() to vtime_account_kernel() (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Move guest enter/exit into .noinstr.text (Vitaly Kuznetsov) [1904570] - x86/kvm/svm: Add hardirq tracing on guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm/vmx: Add hardirq tracing to guest enter/exit (Vitaly Kuznetsov) [1904570] - x86/kvm: Move context tracking where it belongs (Vitaly Kuznetsov) [1904570] - Move some more variables to kernel job templates (Michael Hofmann) - Use a different branch name for realtime pipelines (Michael Hofmann) - block: mark queue init done at the end of blk_register_queue (Ming Lei) [1963766] - block: fix race between adding/removing rq qos and normal IO (Ming Lei) [1963766] - netfilter: x_tables: Use correct memory barriers. (Phil Sutter) [1949090] - Revert "netfilter: x_tables: Switch synchronization to RCU" (Phil Sutter) [1949090] - vfio/pci/nvlink2: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - powerpc/powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU (Gustavo Walbon) [1891589] - cpupower: Add cpuid cap flag for MSR_AMD_HWCR support (Steve Best) [1949161] - cpupower: Remove family arg to decode_pstates() (Steve Best) [1949161] - cpupower: Condense pstate enabled bit checks in decode_pstates() (Steve Best) [1949161] - cpupower: Update family checks when decoding HW pstates (Steve Best) [1949161] - cpupower: Remove unused pscur variable. (Steve Best) [1949161] - cpupower: Add CPUPOWER_CAP_AMD_HW_PSTATE cpuid caps flag (Steve Best) [1949161] - cpupower: Correct macro name for CPB caps flag (Steve Best) [1949161] - cpupower: Update msr_pstate union struct naming (Steve Best) [1949161] - cpupower: add Makefile dependencies for install targets (Steve Best) [1949161] - tools/power/cpupower: Read energy_perf_bias from sysfs (Steve Best) [1949161] - tools: Avoid comma separated statements (Steve Best) [1949161] - cpupower: speed up generating git version string (Steve Best) [1949161] - cpupowerutils: fix spelling mistake "dependant" -> "dependent" (Steve Best) [1949161] - ext4: fix ext4_error_err save negative errno into superblock (Lukas Czerner) [1964928] - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup() (Lukas Czerner) [1964928] - ext4: fix check to prevent false positive report of incorrect used inodes (Lukas Czerner) [1964928] - ext4: fix potential error in ext4_do_update_inode (Lukas Czerner) [1964928] - ext4: do not try to set xattr into ea_inode if value is empty (Lukas Czerner) [1964928] - ext4: fix potential htree index checksum corruption (Lukas Czerner) [1964928] - ext4: don't leak old mountpoint samples (Lukas Czerner) [1964928] - ext4: don't remount read-only with errors=continue on reboot (Lukas Czerner) [1964928] - ext4: fix deadlock with fs freezing and EA inodes (Lukas Czerner) [1964928] - ext4: fix a memory leak of ext4_free_data (Lukas Czerner) [1964928] - ext4: find old entry again if failed to rename whiteout (Lukas Czerner) [1945503] - ext4: fix bug for rename with RENAME_WHITEOUT (Lukas Czerner) [1945503] - mount: fix mounting of detached mounts onto targets that reside on shared mounts (Carlos Maiolino) [1959172] - fs: fix lazytime expiration handling in __writeback_single_inode() (Carlos Maiolino) [1936260] - tty: Don't hold ldisc lock in tty_reopen() if ldisc present (Waiman Long) [1968271] - tty/ldsem: Add lockdep asserts for ldisc_sem (Waiman Long) [1968271] - tty: Simplify tty->count math in tty_reopen() (Waiman Long) [1968271] - tty: Don't block on IO when ldisc change is pending (Waiman Long) [1968271] - tty: Hold tty_ldisc_lock() during tty_reopen() (Waiman Long) [1968271] - tty: Drop tty->count on tty_reopen() failure (Waiman Long) [1968271] - net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...); (Xin Long) [1951679] - net: Fix gro aggregation for udp encaps with zero csum (Xin Long) [1951679] - udp: ipv4: manipulate network header of NATed UDP GRO fraglist (Xin Long) [1951679] - udp: not remove the CRC flag from dev features when need_csum is false (Xin Long) [1951679] - udp: mask TOS bits in udp_v4_early_demux() (Xin Long) [1951679] - net: fix use-after-free when UDP GRO with shared fraglist (Xin Long) [1951679] - x86, sched: Treat Intel SNC topology as default, COD as exception (David Arcari) [1920040] - dmaengine: idxd: iax bus removal (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix cdev setup and free device lifetime issues (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix group conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix engine conf_dev lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix idxd conf_dev 'struct device' lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: use ida for device instance enumeration (Jerry Snitselaar) [1955744] - dmaengine: idxd: removal of pcim managed mmio mapping (Jerry Snitselaar) [1955744] - dmaengine: idxd: cleanup pci interrupt vector allocation management (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix dma device lifetime (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix potential null dereference on pointer status (Jerry Snitselaar) [1927070] - dmaengine: idxd: fix wq cleanup of WQCFG registers (Jerry Snitselaar) [1955744] - dmaengine: idxd: clear MSIX permission entry on shutdown (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix wq size store permission state (Jerry Snitselaar) [1955744] - dmaengine: idxd: fix opcap sysfs attribute output (Jerry Snitselaar) [1955744] - dmaengine: idxd: Fix clobbering of SWERR overflow bit on writeback (Jerry Snitselaar) [1955744] - dmaengine: idxd: add module parameter to force disable of SVA (Jerry Snitselaar) [1920734] - dmaengine: idxd: set DMA channel to be private (Jerry Snitselaar) [1920759] - dma: idxd: use DEFINE_MUTEX() for mutex lock (Jerry Snitselaar) [1955744] - dmaengine: idxd: check device state before issue command (Jerry Snitselaar) [1927070] - dmaengine: move channel device_node deletion to driver (Jerry Snitselaar) [1920721] - dmaengine: idxd: fix misc interrupt completion (Jerry Snitselaar) [1920757] - dmaengine: idxd: Fix list corruption in description completion (Jerry Snitselaar) [1920746] - dmaengine: idxd: add IAX configuration support in the IDXD driver (Jerry Snitselaar) [1837233] - dmaengine: idxd: add ATS disable knob for work queues (Jerry Snitselaar) [1921291] - dmaengine: idxd: define table offset multiplier (Jerry Snitselaar) [1921290] - dmaengine: idxd: Update calculation of group offset to be more readable (Jerry Snitselaar) [1955744]- redhat/config: Double MAX_LOCKDEP_ENTRIES (Waiman Long) [1945937] - dm writecache: flush origin device when writing and cache is full (Mike Snitzer) [1970513] - dm snapshot: properly fix a crash when an origin has no snapshots (Mike Snitzer) [1970513] - dm verity: fix require_signatures module_param permissions (Mike Snitzer) [1970513] - dm snapshot: fix crash with transient storage and zero chunk size (Mike Snitzer) [1970513] - dm rq: fix double free of blk_mq_tag_set in dev remove after table load fails (Mike Snitzer) [1970513] - dm integrity: increase RECALC_SECTORS to improve recalculate speed (Mike Snitzer) [1970513] - dm integrity: don't re-write metadata if discarding same blocks (Mike Snitzer) [1970513] - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload sequences (Mike Snitzer) [1970513] - dm raid: fix fall-through warning in rs_check_takeover() for Clang (Mike Snitzer) [1970513] - dm integrity: fix missing goto in bitmap_flush_interval error handling (Mike Snitzer) [1970513] - dm space map common: fix division bug in sm_ll_find_free_block() (Mike Snitzer) [1970513] - dm persistent data: packed struct should have an aligned() attribute too (Mike Snitzer) [1970513] - dm btree spine: remove paranoid node_check call in node_prep_for_write() (Mike Snitzer) [1970513] - dm space map disk: remove redundant calls to sm_disk_get_nr_free() (Mike Snitzer) [1970513] - dm persistent data: remove unused return from exit_shadow_spine() (Mike Snitzer) [1970513] - dm verity: allow only one error handling mode (Mike Snitzer) [1970513] - dm: remove useless loop in __split_and_process_bio (Mike Snitzer) [1970513] - redhat/configs: Update CONFIG_PINCTRL_AMD (David Arcari) [1964588] - ionic: fix ptp support config breakage (Jonathan Toppins) [1951826] - ionic: return -EFAULT if copy_to_user() fails (Jonathan Toppins) [1951826] - ionic: git_ts_info bit shifters (Jonathan Toppins) [1951826] - ionic: extend ts_config set locking (Jonathan Toppins) [1951826] - ionic: add ts_config replay (Jonathan Toppins) [1951826] - ionic: ignore EBUSY on queue start (Jonathan Toppins) [1951826] - ionic: re-start ptp after queues up (Jonathan Toppins) [1951826] - ionic: add SKBTX_IN_PROGRESS (Jonathan Toppins) [1951826] - ionic: check for valid tx_mode on SKBTX_HW_TSTAMP xmit (Jonathan Toppins) [1951826] - ionic: remove unnecessary compat ifdef (Jonathan Toppins) [1951826] - ionic: fix up a couple of code style nits (Jonathan Toppins) [1951826] - ionic: advertise support for hardware timestamps (Jonathan Toppins) [1951826] - ionic: ethtool ptp stats (Jonathan Toppins) [1951826] - ionic: add ethtool support for PTP (Jonathan Toppins) [1951826] - ionic: add and enable tx and rx timestamp handling (Jonathan Toppins) [1951826] - ethtool: add timestamping related string sets (Jonathan Toppins) [1951826] - net: Introduce peer to peer one step PTP time stamping. (Jonathan Toppins) [1951826] - ionic: set up hw timestamp queues (Jonathan Toppins) [1951826] - ionic: add rx filtering for hw timestamp steering (Jonathan Toppins) [1951826] - ionic: link in the new hw timestamp code (Jonathan Toppins) [1951826] - ionic: add hw timestamp support files (Jonathan Toppins) [1951826] - ionic: split adminq post and wait calls (Jonathan Toppins) [1951826] - ionic: add hw timestamp structs to interface (Jonathan Toppins) [1951826] - ionic: add handling of larger descriptors (Jonathan Toppins) [1951826] - ionic: add new queue features to interface (Jonathan Toppins) [1951826] - ionic: pull per-q stats work out of queue loops (Jonathan Toppins) [1951826] - ionic: avoid races in ionic_heartbeat_check (Jonathan Toppins) [1951826] - ionic: fix sizeof usage (Jonathan Toppins) [1951826] - ionic: count dma errors (Jonathan Toppins) [1951826] - ionic: protect adminq from early destroy (Jonathan Toppins) [1951826] - ionic: stop watchdog when in broken state (Jonathan Toppins) [1951826] - ionic: block actions during fw reset (Jonathan Toppins) [1951826] - ionic: update ethtool support bits for BASET (Jonathan Toppins) [1951826] - ionic: fix unchecked reference (Jonathan Toppins) [1951826] - ionic: simplify the intr_index use in txq_init (Jonathan Toppins) [1951826] - ionic: code cleanup details (Jonathan Toppins) [1951826] - ionic: Update driver to use ethtool_sprintf (Jonathan Toppins) [1951826] - ionic: aggregate Tx byte counting calls (Jonathan Toppins) [1951826] - ionic: simplify tx clean (Jonathan Toppins) [1951826] - ionic: generic tx skb mapping (Jonathan Toppins) [1951826] - ionic: simplify TSO descriptor mapping (Jonathan Toppins) [1951826] - ionic: simplify use of completion types (Jonathan Toppins) [1951826] - ionic: rebuild debugfs on qcq swap (Jonathan Toppins) [1951826] - ionic: simplify rx skb alloc (Jonathan Toppins) [1951826] - ionic: optimize fastpath struct usage (Jonathan Toppins) [1951826] - ionic: implement Rx page reuse (Jonathan Toppins) [1951826] - ionic: move rx_page_alloc and free (Jonathan Toppins) [1951826] - drivers: net: ionic: simplify the return expression of ionic_set_rxfh() (Jonathan Toppins) [1951826] - ionic: change mtu after queues are stopped (Jonathan Toppins) [1951826] - ionic: remove some unnecessary oom messages (Jonathan Toppins) [1951826] - ionic: useful names for booleans (Jonathan Toppins) [1951826] - ionic: change set_rx_mode from_ndo to can_sleep (Jonathan Toppins) [1951826] - ionic: flatten calls to ionic_lif_rx_mode (Jonathan Toppins) [1951826] - ionic: batch rx buffer refilling (Jonathan Toppins) [1951826] - ionic: add lif quiesce (Jonathan Toppins) [1951826] - ionic: check for link after netdev registration (Jonathan Toppins) [1951826] - ionic: check port ptr before use (Jonathan Toppins) [1951826] - platform/x86: hp-wireless: add AMD's hardware id to the supported list (David Arcari) [1960472] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1960472] - net/bond: revert deletion of driver and module versions (Jarod Wilson) [1955702] - net:sfc: fix non-freed irq in legacy irq mode (Íñigo Huguet) [1906728] - devlink: Extend SF port attributes to have external attribute (Petr Oros) [1959002] - netfilter: xt_SECMARK: add new revision to fix structure layout (Phil Sutter) [1961714] - xfrm: ipcomp: remove unnecessary get_cpu() (Sabrina Dubroca) [1946885] - platform/x86: intel_pmc_core: Add support for Alder Lake PCH-P (David Arcari) [1838624] - scsi: qedf: Update the max_id value in host structure (Nilesh Javali) [1954876] - scsi: qedf: Add pointer checks in qedf_update_link_speed() (Nilesh Javali) [1871687] - [s390] s390/nvme: support firmware-assisted dump to NVMe disks (Claudio Imbrenda) [1847447] - [s390] s390: nvme dump support (Claudio Imbrenda) [1847447] - [s390] s390/boot: add build-id to decompressor (Philipp Rudo) [1897093] - genirq: Reduce irqdebug cacheline bouncing (Gustavo Walbon) [1957729]- CI: Merge MR, baseline and private configs (Michael Hofmann) - RDMA/rxe: Fix failure during driver load (Kamal Heib) [1930263] - xfrm: remove the fragment check for ipv6 beet mode (Xin Long) [1965185] - SUNRPC: Fix NFS READs that start at non-page-aligned offsets (Benjamin Coddington) [1950303] - pNFS/NFSv4: Improve rejection of out-of-order layouts (Benjamin Coddington) [1950303] - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn (Benjamin Coddington) [1950303] - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process() (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom tracepoint again (Benjamin Coddington) [1950303] - nfsd4: readdirplus shouldn't return parent of export (Benjamin Coddington) [1950303] - NFS: nfs_igrab_and_active must first reference the superblock (Benjamin Coddington) [1950303] - NFS: nfs_delegation_find_inode_server must first reference the superblock (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter (Benjamin Coddington) [1950303] - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit() (Benjamin Coddington) [1950303] - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request (Benjamin Coddington) [1950303] - pNFS: Stricter ordering of layoutget and layoutreturn (Benjamin Coddington) [1950303] - pNFS: Clean up pnfs_layoutreturn_free_lsegs() (Benjamin Coddington) [1950303] - pNFS: We want return-on-close to complete when evicting the inode (Benjamin Coddington) [1950303] - pNFS: Mark layout for return if return-on-close was not sent (Benjamin Coddington) [1950303] - net: sunrpc: interpret the return value of kstrtou32 correctly (Benjamin Coddington) [1950303] - SUNRPC: Handle TCP socket sends with kernel_sendpage() again (Benjamin Coddington) [1950303] - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Avoid spurious layout returns in ff_layout_choose_ds_for_read (Benjamin Coddington) [1950303] - NFSv4/pnfs: Add tracing for the deviceid cache (Benjamin Coddington) [1950303] - fs/lockd: convert comma to semicolon (Benjamin Coddington) [1950303] - SUNRPC: When expanding the buffer, we may need grow the sparse pages (Benjamin Coddington) [1950303] - SUNRPC: Cleanup - constify a number of xdr_buf helpers (Benjamin Coddington) [1950303] - SUNRPC: Clean up open coded setting of the xdr_stream 'nwords' field (Benjamin Coddington) [1950303] - SUNRPC: _copy_to/from_pages() now check for zero length (Benjamin Coddington) [1950303] - SUNRPC: Cleanup xdr_shrink_bufhead() (Benjamin Coddington) [1950303] - SUNRPC: Fix xdr_expand_hole() (Benjamin Coddington) [1950303] - SUNRPC: Fixes for xdr_align_data() (Benjamin Coddington) [1950303] - SUNRPC: _shift_data_left/right_pages should check the shift length (Benjamin Coddington) [1950303] - NFSv4.1: use BITS_PER_LONG macro in nfs4session.h (Benjamin Coddington) [1950303] - xprtrdma: Fix XDRBUF_SPARSE_PAGES support (Benjamin Coddington) [1950303] - sunrpc: fix xs_read_xdr_buf for partial pages receive (Benjamin Coddington) [1950303] - Revert "nfsd4: support change_attr_type attribute" (Benjamin Coddington) [1950303] - nfsd4: don't query change attribute in v2/v3 case (Benjamin Coddington) [1950303] - nfsd: minor nfsd4_change_attribute cleanup (Benjamin Coddington) [1950303] - nfsd: simplify nfsd4_change_info (Benjamin Coddington) [1950303] - nfsd: only call inode_query_iversion in the I_VERSION case (Benjamin Coddington) [1950303] - nfs_common: need lock during iterate through the list (Benjamin Coddington) [1950303] - nfsd: Fix message level for normal termination (Benjamin Coddington) [1950303] - NFS: switch nfsiod to be an UNBOUND workqueue. (Benjamin Coddington) [1950303] - lockd: don't use interval-based rebinding over TCP (Benjamin Coddington) [1950303] - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs' (Benjamin Coddington) [1950303] - NFSv4: Refactor to use user namespaces for nfs4idmap (Benjamin Coddington) [1950303] - NFS: NFSv2/NFSv3: Use cred from fs_context during mount (Benjamin Coddington) [1950303] - NFSv4: Fix a pNFS layout related use-after-free race when freeing the inode (Benjamin Coddington) [1950303] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1950303] - SUNRPC: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1950303] - pNFS: Clean up open coded xdr string decoding (Benjamin Coddington) [1950303] - SUNRPC: Fix up open coded kmemdup_nul() (Benjamin Coddington) [1950303] - pNFS/flexfiles: Fix up layoutstats reporting for non-TCP transports (Benjamin Coddington) [1950303] - NFSv4/pNFS: Store the transport type in struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - pNFS: Add helpers for allocation/free of struct nfs4_pnfs_ds_addr (Benjamin Coddington) [1950303] - NFSv4/pNFS: Use connections to a DS that are all of the same protocol family (Benjamin Coddington) [1950303] - SUNRPC: Remove unused function xprt_load_transport() (Benjamin Coddington) [1950303] - NFS: Switch mount code to use xprt_find_transport_ident() (Benjamin Coddington) [1950303] - SUNRPC: Add a helper to return the transport identifier given a netid (Benjamin Coddington) [1950303] - SUNRPC: Close a race with transport setup and module put (Benjamin Coddington) [1950303] - SUNRPC: xprt_load_transport() needs to support the netid "rdma6" (Benjamin Coddington) [1950303] - SUNRPC: rpc_wake_up() should wake up tasks in the correct order (Benjamin Coddington) [1950303] - NFSv4: Observe the NFS_MOUNT_SOFTREVAL flag in _nfs4_proc_lookupp (Benjamin Coddington) [1950303] - NFSv3: Add emulation of the lookupp() operation (Benjamin Coddington) [1950303] - NFSv3: Refactor nfs3_proc_lookup() to split out the dentry (Benjamin Coddington) [1950303] - SUNRPC: Remove XDRBUF_SPARSE_PAGES flag in gss_proxy upcall (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd4_decode/encode_compound() (Benjamin Coddington) [1950303] - NFSD: Add tracepoints in nfsd_dispatch() (Benjamin Coddington) [1950303] - NFSD: Add common helpers to decode void args and encode void results (Benjamin Coddington) [1950303] - SUNRPC: Prepare for xdr_stream-style decoding on the server-side (Benjamin Coddington) [1950303] - SUNRPC: Add xdr_set_scratch_page() and xdr_reset_scratch_buffer() (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - SUNRPC: Move the svc_xdr_recvfrom() tracepoint (Benjamin Coddington) [1950303] - NFSD: Add SPDX header for fs/nfsd/trace.c (Benjamin Coddington) [1950303] - NFSD: A semicolon is not needed after a switch statement. (Benjamin Coddington) [1950303] - svcrdma: support multiple Read chunks per RPC (Benjamin Coddington) [1950303] - svcrdma: Use the new parsed chunk list when pulling Read chunks (Benjamin Coddington) [1950303] - svcrdma: Rename info::ri_chunklen (Benjamin Coddington) [1950303] - svcrdma: Clean up chunk tracepoints (Benjamin Coddington) [1950303] - svcrdma: Remove chunk list pointers (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_send_reply_chunk (Benjamin Coddington) [1950303] - svcrdma: Support multiple Write chunks in svc_rdma_map_reply_msg() (Benjamin Coddington) [1950303] - svcrdma: Support multiple write chunks when pulling up (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to encode Reply transport headers (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to construct RDMA Writes (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to detect reverse direction replies (Benjamin Coddington) [1950303] - svcrdma: Use parsed chunk lists to derive the inv_rkey (Benjamin Coddington) [1950303] - svcrdma: Add a "parsed chunk list" data structure (Benjamin Coddington) [1950303] - svcrdma: Clean up svc_rdma_encode_reply_chunk() (Benjamin Coddington) [1950303] - svcrdma: Post RDMA Writes while XDR encoding replies (Benjamin Coddington) [1950303] - NFSD: Invoke svc_encode_result_payload() in "read" NFSD encoders (Benjamin Coddington) [1950303] - SUNRPC: Rename svc_encode_read_payload() (Benjamin Coddington) [1950303] - svcrdma: Refactor the RDMA Write path (Benjamin Coddington) [1950303] - svcrdma: Const-ify the xdr_buf arguments (Benjamin Coddington) [1950303] - SUNRPC: Adjust synopsis of xdr_buf_subsegment() (Benjamin Coddington) [1950303] - svcrdma: Catch another Reply chunk overflow case (Benjamin Coddington) [1950303] - xprtrdma: Micro-optimize MR DMA-unmapping (Benjamin Coddington) [1950303] - xprtrdma: Move rpcrdma_mr_put() (Benjamin Coddington) [1950303] - xprtrdma: Trace unmap_sync calls (Benjamin Coddington) [1950303] - xprtrdma: Display the task ID when reporting MR events (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_nomrs() (Benjamin Coddington) [1950303] - xprtrdma: Clean up xprtrdma callback tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up tracepoints in the reply path (Benjamin Coddington) [1950303] - xprtrdma: Clean up reply parsing error tracepoints (Benjamin Coddington) [1950303] - xprtrdma: Clean up trace_xprtrdma_post_linv (Benjamin Coddington) [1950303] - xprtrdma: Introduce FRWR completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Send completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Introduce Receive completion IDs (Benjamin Coddington) [1950303] - xprtrdma: Replace dprintk call sites in ERR_CHUNK path (Benjamin Coddington) [1950303] - xprtrdma: Fix a BUG when tracing is enabled with NFSv4.1 on RDMA (Benjamin Coddington) [1950303] - drm: virtio: fix common struct sg_table related issues (Eric Auger) [1971821] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1915307] - net/mlx5: Release devlink object if adev fails (Alaa Hleihel) [1915307] - net/mlx5: Fix compilation warning for 32-bit platform (Alaa Hleihel) [1915307] - net/mlx5: Use effective interrupt affinity (Alaa Hleihel) [1915307] - net/mlx5: Replace irq_to_desc() abuse (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove unneeded semicolon (Alaa Hleihel) [1915307] - net: mlx5: convert comma to semicolon (Alaa Hleihel) [1915307] - net/mlx5e: Fill mlx5e_create_cq_param in a function (Alaa Hleihel) [1915307] - net/mlx5e: Split between RX/TX tunnel FW support indication (Alaa Hleihel) [1915307] - net/mlx5: Arm only EQs with EQEs (Alaa Hleihel) [1915307] - net/mlx5e: Remove duplicated include (Alaa Hleihel) [1915307] - net/mlx5e: Add TX port timestamp support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Add TX PTP port object support (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Move MLX5E_RX_ERR_CQE macro (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Split SW group counters update function (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Change skb fifo push/pop API to be used without SQ (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow SQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow RQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Allow CQ outside of channel context (Alaa Hleihel) [1915307 1919646] - net/mlx5e: Free drop RQ in a dedicated function (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove IB representors dead code (Alaa Hleihel) [1915307] - net/mlx5: Simplify eswitch mode check (Alaa Hleihel) [1915307] - net/mlx5: Delete custom device management logic (Alaa Hleihel) [1915307] - RDMA/mlx5: Convert mlx5_ib to use auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5e: Connect ethernet part to auxiliary bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Connect mlx5_vdpa to auxiliary bus (Alaa Hleihel) [1915307] - net/mlx5: Register mlx5 devices to auxiliary virtual bus (Alaa Hleihel) [1915307] - vdpa/mlx5: Make hardware definitions visible to all mlx5 devices (Alaa Hleihel) [1915307] - net/mlx5_core: Clean driver version and name (Alaa Hleihel) [1915307] - net/mlx5: Treat host PF vport as other (non eswitch manager) vport (Alaa Hleihel) [1915307] - net/mlx5: Export steering related functions (Alaa Hleihel) [1915307] - net/mlx5: Expose other function ifc bits (Alaa Hleihel) [1915307] - net/mlx5: Expose IP-in-IP TX and RX capability bits (Alaa Hleihel) [1915307] - net/mlx5: Update the hardware interface definition for vhca state (Alaa Hleihel) [1915307] - net/mlx5: Avoid exposing driver internal command helpers (Alaa Hleihel) [1915307] - net/mlx5: Add ts_cqe_to_dest_cqn related bits (Alaa Hleihel) [1915307] - net/mlx5: Add misc4 to mlx5_ifc_fte_match_param_bits (Alaa Hleihel) [1915307] - net/mlx5: Check dr mask size against mlx5_match_param size (Alaa Hleihel) [1915307] - net/mlx5: Add sampler destination type (Alaa Hleihel) [1915307] - net/mlx5: Add sample offload hardware bits and structures (Alaa Hleihel) [1915307] - RDMA/mlx5: Use PCI device for dma mappings (Alaa Hleihel) [1915307] - RDMA/mlx5: Silence the overflow warning while building offset mask (Alaa Hleihel) [1915307] - RDMA/mlx5: Check for ERR_PTR from uverbs_zalloc() (Alaa Hleihel) [1915307] - RDMA/mlx5: Enable querying AH for XRC QP types (Alaa Hleihel) [1915307] - RDMA/mlx5: Lower setting the umem's PAS for SRQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for devx (Alaa Hleihel) [1915307] - RDMA/mlx5: mlx5_umem_find_best_quantized_pgoff() for CQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for QP (Alaa Hleihel) [1915307] - RDMA/mlx5: Directly compute the PAS list for raw QP RQ's (Alaa Hleihel) [1915307] - RDMA/mlx5: Use mlx5_umem_find_best_quantized_pgoff() for WQ (Alaa Hleihel) [1915307] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Alaa Hleihel) [1915307] - net: mlx5: Replace in_irq() usage (Alaa Hleihel) [1915307] - net/mlx5: Cleanup kernel-doc warnings (Alaa Hleihel) [1915307] - net/mlx5e: Validate stop_room size upon user input (Alaa Hleihel) [1915307] - net/mlx5: DR, Free unused buddy ICM memory (Alaa Hleihel) [1915307] - net/mlx5: DR, ICM memory pools sync optimization (Alaa Hleihel) [1915307] - net/mlx5: DR, Sync chunks only during free (Alaa Hleihel) [1915307] - net/mlx5: DR, Handle ICM memory via buddy allocation instead of buckets (Alaa Hleihel) [1915307] - net/mlx5: DR, Add buddy allocator utilities (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename matcher functions to be more HW agnostic (Alaa Hleihel) [1915307] - net/mlx5: DR, Rename builders HW specific names (Alaa Hleihel) [1915307] - net/mlx5: DR, Remove unused member of action struct (Alaa Hleihel) [1915307] - IB/mlx5: Add support for NDR link speed (Alaa Hleihel) [1915307 1926596] - RDMA/mlx5: Use ib_umem_find_best_pgsz() for mkc's (Alaa Hleihel) [1915307] - RDMA/mlx5: Split the WR setup out of mlx5_ib_update_xlt() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move xlt_emergency_page_mutex into mr.c (Alaa Hleihel) [1915307] - RDMA/mlx5: Change mlx5_ib_populate_pas() to use rdma_for_each_block() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove npages from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove ncont from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove order from mlx5_ib_cont_pages() (Alaa Hleihel) [1915307] - RDMA/mlx5: Move mlx5_ib_cont_pages() to the creation of the mlx5_ib_mr (Alaa Hleihel) [1915307] - RDMA/mlx5: Remove mlx5_ib_mr->order (Alaa Hleihel) [1915307] - net/mlx5: fix error return code in mlx5e_tc_nic_init() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Fix IPsec packet drop by mlx5e_tc_update_skb (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Use spin_lock_bh for async_icosq_lock (Alaa Hleihel) [1915306 1915307] - net/mlx5: Replace zero-length array with flexible-array member (Alaa Hleihel) [1915306 1915307] - net/mlx5: Fix uininitialized pointer read on pointer attr (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload limit no reset (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for fw live patch event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add devlink param enable_remote_dev_reset support (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add support for devlink reload action fw activate (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset abort event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset now event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Handle sync reset request event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Set cap for pci sync for fw update event (Alaa Hleihel) [1915306 1915307] - net/mlx5: Add functions to set/query MFRL register (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Fix potential null pointer dereference (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Fix dereference on pointer attr after null check (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Use dma device access helper (Alaa Hleihel) [1915306 1915307] - mlx5: cross-tree: phase out dma_zalloc_coherent() (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-Switch, Support flow source for local vport (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Move devlink eswitch ports closer to eswitch (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use helper function to load unload representor (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Add helper to check egress ACL need (Alaa Hleihel) [1915306 1915307] - net/mlx5: E-switch, Use PF num in metadata reg c0 (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Add support for rule creation with flow source hint (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Call ste_builder directly with tag pointer (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded local variable (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded vlan check from L2 builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Remove unneeded check from source port builder (Alaa Hleihel) [1915306 1915307] - net/mlx5: DR, Replace the check for valid STE entry (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete not needed GSI QP signal QP type (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Change GSI QP to have same creation flow like other QPs (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Reuse existing fields in parent QP storage object (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Embed GSI QP into general mlx5_ib QP (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove unreachable return (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Use kfree() to free fd->g in accel_fs_tcp_create_groups() (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Keep direct reference to mlx5_core_dev in tc ct (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Support CT offload for tc nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: rework ct offload init messages (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Add tc chains offload support for nic flows (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor tc flow attributes structure (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Split nic tc flow allocation and creation (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5e: Tc nic flows to use mlx5_chains flow tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Allow ft level ignore for nic rx tables (Alaa Hleihel) [1915306 1915307 1919642] - net/mlx5: Refactor multi chains and prios support (Alaa Hleihel) [1915306 1915307 1919642] - RDMA/mlx5: Don't call to restrack recursively (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Expose TIR and QP ICM address for sw_owner_v2 devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Allow DM allocation for sw_owner_v2 enabled devices (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add sw_owner_v2 bit capability (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Delete duplicated mlx5_ptys_width enum (Alaa Hleihel) [1915306 1915307] - net/mlx5: IPsec: make spdxcheck.py happy (Alaa Hleihel) [1915306 1915307] - mlx5: add pause frame stats (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add CQE compression support for multi-strides packets (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Add support for tc trap (Alaa Hleihel) [1915306 1915307 1919643] - net/mlx5: E-Switch, Use vport metadata matching by default (Alaa Hleihel) [1915306 1915307] - net/mlx5: remove erroneous fallthrough (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add DCT RoCE LAG support (Alaa Hleihel) [1915306 1915307] - IB/mlx5: Add tx_affinity support for DCI QP (Alaa Hleihel) [1915306 1915307] - net/mlx5e: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Enable sniffer when device is in switchdev mode (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Add new IB rates support (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Replace open-coded offsetofend() macro (Alaa Hleihel) [1915306 1915307] - RDMA/mlx5: Simplify multiple else-if cases with switch keyword (Alaa Hleihel) [1915306 1915307] - net/mlx5e: Link non uplink representors to PCI device (Alaa Hleihel) [1915306 1915307 1959367] - perf stat: Use nftw() instead of ftw() (Michael Petlan) [1944684] - perf unwind: Set userdata for all __report_module() paths (Michael Petlan) [1944684] - perf debug: Move debug initialization earlier (Michael Petlan) [1944684] - perf script: Fix overrun issue for dynamically-allocated PMU type number (Michael Petlan) [1944684] - perf metricgroup: Fix system PMU metrics (Michael Petlan) [1944684] - perf metricgroup: Fix for metrics containing duration_time (Michael Petlan) [1944684] - perf evlist: Fix id index for heterogeneous systems (Michael Petlan) [1944684] - perf inject: Correct event attribute sizes (Michael Petlan) [1944684] - perf intel-pt: Fix 'CPU too large' error (Michael Petlan) [1944684] - perf stat: Take cgroups into account for shadow stats (Michael Petlan) [1944684] - perf stat: Introduce struct runtime_stat_data (Michael Petlan) [1944684] - libperf tests: Fail when failing to get a tracepoint id (Michael Petlan) [1944684] - libperf tests: If a test fails return non-zero (Michael Petlan) [1944684] - libperf tests: Avoid uninitialized variable warning (Michael Petlan) [1944684] - perf test: Fix shadow stat test for non-bash shells (Michael Petlan) [1944684] - perf bpf examples: Fix bpf.h header include directive in 5sec.c example (Michael Petlan) [1944684] - perf probe: Fix memory leak when synthesizing SDT probes (Michael Petlan) [1944684] - perf stat aggregation: Add separate thread member (Michael Petlan) [1944684] - perf stat aggregation: Add separate core member (Michael Petlan) [1944684] - perf stat aggregation: Add separate die member (Michael Petlan) [1944684] - perf stat aggregation: Add separate socket member (Michael Petlan) [1944684] - perf stat aggregation: Add separate node member (Michael Petlan) [1944684] - perf stat aggregation: Start using cpu_aggr_id in map (Michael Petlan) [1944684] - perf cpumap: Drop in cpu_aggr_map struct (Michael Petlan) [1944684] - perf cpumap: Add new map type for aggregation (Michael Petlan) [1944684] - perf stat: Replace aggregation ID with a struct (Michael Petlan) [1944684] - perf cpumap: Add new struct for cpu aggregation (Michael Petlan) [1944684] - perf cpumap: Use existing allocator to avoid using malloc (Michael Petlan) [1944684] - perf tests: Improve topology test to check all aggregation types (Michael Petlan) [1944684] - perf powerpc: Move syscall.tbl check to check-headers.sh (Michael Petlan) [1944684] - tools arch x86: Sync the msr-index.h copy with the kernel sources (Michael Petlan) [1944684] - perf mem: Factor out a function to generate sort order (Michael Petlan) [1944684] - perf sort: Add sort option for data page size (Michael Petlan) [1944684] - perf script: Support data page size (Michael Petlan) [1944684] - tools headers UAPI: Sync linux/stat.h with the kernel sources (Michael Petlan) [1944684] - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions (Michael Petlan) [1944684] - perf config: Fix example command in manpage to conform to syntax specified in the SYNOPSIS section. (Michael Petlan) [1944684] - perf test: Make sample-parsing test aware of PERF_SAMPLE_{CODE,DATA}_PAGE_SIZE (Michael Petlan) [1944684] - perf tools: Add support to read build id from compressed elf (Michael Petlan) [1944684] - perf debug: Add debug_set_file function (Michael Petlan) [1944684] - perf evlist: Support pipe mode display (Michael Petlan) [1944684] - perf report: Support --header-only for pipe mode (Michael Petlan) [1944684] - perf vendor events: Add JSON metrics for imx8mm DDR Perf (Michael Petlan) [1944684] - perf metricgroup: Support adding metrics for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Support printing metric groups for system PMUs (Michael Petlan) [1944684] - perf metricgroup: Split up metricgroup__print() (Michael Petlan) [1944684] - perf metricgroup: Fix metrics using aliases covering multiple PMUs (Michael Petlan) [1944684] - perf evlist: Change evlist__splice_list_tail() ordering (Michael Petlan) [1944684] - perf pmu: Add pmu_add_sys_aliases() (Michael Petlan) [1944684] - perf pmu: Add pmu_id() (Michael Petlan) [1944684] - perf jevents: Add support for system events tables (Michael Petlan) [1944684] - perf jevents: Add support for an extra directory level (Michael Petlan) [1944684] - perf evsel: Emit warning about kernel not supporting the data page size sample_type bit (Michael Petlan) [1944684] - perf record: Support new sample type for data page size (Michael Petlan) [1944684] - perf unwind: Fix separate debug info files when using elfutils' libdw's unwinder (Michael Petlan) [1944684] - perf record: Fix memory leak when using '--user-regs=?' to list registers (Michael Petlan) [1944684] - tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1944684] - tools build: Add missing libcap to test-all.bin target (Michael Petlan) [1944684] - perf test: Fix metric parsing test (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' record methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' diff methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' nr_threads method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' deliver event method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' header methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' raw samples methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' mmap pages parsing method (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event attribute config methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for alternative 'struct evlist' constructors (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event selection methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' event group methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' create maps methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' print methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' evsel list methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' pause/resume methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' id_pos methods (Michael Petlan) [1944684] - perf tools: Add aarch64 registers to --user-regs (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' tracking event methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' browser methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample id lookup methods (Michael Petlan) [1944684] - perf evlist: Ditch unused set/reset sample_bit methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sample parsing methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' sideband thread methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'filter' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' stats methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' 'workload' methods (Michael Petlan) [1944684] - perf evlist: Use the right prefix for 'struct evlist' methods: evlist__set_leader() (Michael Petlan) [1944684] - perf evsel: Convert last 'struct evsel' methods to the right evsel__ prefix (Michael Petlan) [1944684] - perf test: Add shadow stat test (Michael Petlan) [1944684] - perf build-id: Add build_id_cache__add function (Michael Petlan) [1944684] - perf build-id: Add __perf_session__cache_build_ids function (Michael Petlan) [1944684] - perf build-id: Use machine__for_each_dso in perf_session__cache_build_ids (Michael Petlan) [1944684] - perf data: Add is_perf_data function (Michael Petlan) [1944684] - perf symbols: Try to load vmlinux from buildid database (Michael Petlan) [1944684] - perf tools: Use struct extra_kernel_map in machine__process_kernel_mmap_event (Michael Petlan) [1944684] - perf build-id: Add check for existing link in buildid dir (Michael Petlan) [1944684] - perf tools: Add filename__decompress function (Michael Petlan) [1944684] - perf tools: Add build_id__is_defined function (Michael Petlan) [1944684] - tools lib: Adopt memchr_inv() from kernel (Michael Petlan) [1944684] - perf arm-spe: Add support for ARMv8.3-SPE (Michael Petlan) [1944684] - perf arm_spe: Decode memory tagging properties (Michael Petlan) [1944684] - perf arm-spe: Add more sub classes for operation packet (Michael Petlan) [1944684] - perf arm-spe: Refactor operation packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_op_type() (Michael Petlan) [1944684] - perf arm-spe: Remove size condition checking for events (Michael Petlan) [1944684] - perf arm-spe: Refactor event type handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_event() (Michael Petlan) [1944684] - perf arm-spe: Refactor counter packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_counter() (Michael Petlan) [1944684] - perf arm-spe: Refactor context packet handling (Michael Petlan) [1944684] - perf arm_spe: Fixup top byte for data virtual address (Michael Petlan) [1944684] - perf arm-spe: Refactor address packet handling (Michael Petlan) [1944684] - perf arm-spe: Add new function arm_spe_pkt_desc_addr() (Michael Petlan) [1944684] - perf arm-spe: Refactor packet header parsing (Michael Petlan) [1944684] - perf arm-spe: Refactor printing string to buffer (Michael Petlan) [1944684] - perf expr: Force encapsulation on expr_id_data (Michael Petlan) [1944684] - perf vendor events: Update Skylake client events to v50 (Michael Petlan) [1944684] - perf data: Allow to use stdio functions for pipe mode (Michael Petlan) [1944684] - perf arm-spe: Fix packet length handling (Michael Petlan) [1944684] - perf arm-spe: Refactor arm_spe_get_events() (Michael Petlan) [1944684] - perf arm-spe: Refactor payload size calculation (Michael Petlan) [1944684] - perf arm-spe: Fix a typo in comment (Michael Petlan) [1944684] - perf arm-spe: Include bitops.h for BIT() macro (Michael Petlan) [1944684] - perf mem: Support ARM SPE events (Michael Petlan) [1944684] - perf c2c: Support AUX trace (Michael Petlan) [1944684] - perf mem: Support AUX trace (Michael Petlan) [1944684] - perf auxtrace: Add itrace option '-M' for memory events (Michael Petlan) [1944684] - perf mem: Only initialize memory event for recording (Michael Petlan) [1944684] - perf c2c: Support memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Support new memory event PERF_MEM_EVENTS__LOAD_STORE (Michael Petlan) [1944684] - perf mem: Introduce weak function perf_mem_events__ptr() (Michael Petlan) [1944684] - perf mem: Search event name with more flexible path (Michael Petlan) [1944684] - perf jevents: Add test for arch std events (Michael Petlan) [1944684] - perf jevents: Tidy error handling (Michael Petlan) [1944684] - perf trace beauty: Allow header files in a different path (Michael Petlan) [1944684] - perf stat: Add --quiet option (Michael Petlan) [1944684] - perf stat: Support regex pattern in --for-each-cgroup (Michael Petlan) [1944684] - perf kvm: Add kvm-stat for arm64 (Michael Petlan) [1944684] - perf env: Conditionally compile BPF support code on having HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf annotate: Move bpf header inclusion to inside HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf tests: Skip the llvm and bpf tests if HAVE_LIBBPF_SUPPORT isn't defined (Michael Petlan) [1944684] - perf bpf: Enclose libbpf.h include within HAVE_LIBBPF_SUPPORT (Michael Petlan) [1944684] - perf test: Implement skip_reason callback for watchpoint tests (Michael Petlan) [1944684] - perf tests tsc: Add checking helper is_supported() (Michael Petlan) [1944684] - perf tests tsc: Make tsc testing as a common testing (Michael Petlan) [1944684] - perf mem2node: Improve warning if detected no memory nodes (Michael Petlan) [1944684] - perf version: Add a feature for libpfm4 (Michael Petlan) [1944684] - perf annotate mips: Add perf arch instructions annotate handlers (Michael Petlan) [1944684] - perf/x86/intel: Add Tremont Topdown support (Michael Petlan) [1944684] - perf/x86: Fix fall-through warnings for Clang (Michael Petlan) [1944684] - perf/x86/intel/lbr: Fix the return type of get_lbr_cycles() (Michael Petlan) [1944684] - perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake (Michael Petlan) [1944684] - perf: Break deadlock involving exec_update_mutex (Michael Petlan) [1944684] - perf/x86/intel: Add event constraint for CYCLE_ACTIVITY.STALLS_MEM_ANY (Michael Petlan) [1944684] - perf/x86: Avoid TIF_IA32 when checking 64bit mode (Michael Petlan) [1944684] - bpf, ringbuf: Deny reserve of buffers larger than ringbuf (Wander Lairson Costa) [1968591] - bpf: Fix propagation of 32 bit unsigned bounds from 64 bit bounds (Wander Lairson Costa) [1965938] - tools/power turbostat: Support Alder Lake Mobile (Steve Best) [1962291] - ACPI: PM: Add ACPI ID of Alder Lake Fan (Steve Best) [1961617] - powercap/intel_rapl: add support for AlderLake Mobile (Steve Best) [1961816] - platform/x86: intel_pmc_core: Uninitialized data in pmc_core_lpm_latch_mode_write() (David Arcari) [1783557] - platform/x86: intel_pmc_core: add ACPI dependency (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix "unsigned 'ret' is never less than zero" smatch warning (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add LTR registers for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add option to set/clear LPM mode (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add requirements file to debugfs (David Arcari) [1783557] - platform/x86: intel_pmc_core: Get LPM requirements for Tiger Lake (David Arcari) [1783557] - platform/x86: intel_pmc_core: Show LPM residency in microseconds (David Arcari) [1783557] - platform/x86: intel_pmc_core: Handle sub-states generically (David Arcari) [1783557] - platform/x86: intel_pmc_core: Remove global struct pmc_dev (David Arcari) [1783557] - platform/x86: intel_pmc_core: Don't use global pmcdev in quirks (David Arcari) [1783557] - platform/x86: intel_pmc_core: export platform global reset bits via etr3 sysfs file (David Arcari) [1783557] - MAINTAINERS: Update maintainers for pmc_core driver (David Arcari) [1783557] - MAINTAINERS: intel_pmc_core: Update MAINTAINERS (David Arcari) [1783557] - platform/x86: intel_pmc_core: Ignore GBE LTR on Tiger Lake platforms (David Arcari) [1783557] - platform/x86: intel_pmc_core: Assign boolean values to a bool variable (David Arcari) [1783557] - platform/x86: intel_pmc_core: fix: Replace dev_dbg macro with dev_info() (David Arcari) [1783557] - platform/x86: intel_pmc_core: Clean up: Remove the duplicate comments and reorganize (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix the slp_s0 counter displayed value (David Arcari) [1783557] - platform/x86: intel_pmc_core: Fix TigerLake power gating status map (David Arcari) [1783557] - platform/x86: pmc_core: Use descriptive names for LPM registers (David Arcari) [1783557] - platform/x86: intel_pmc_core: Change Jasper Lake S0ix debug reg map back to ICL (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Atom based Jasper Lake (JSL) platform support (David Arcari) [1783557] - platform/x86: intel_pmc_core: Add Intel Elkhart Lake support (David Arcari) [1783557] - [s390] s390/ipl: support NVMe IPL kernel parameters (Claudio Imbrenda) [1963120] - [s390] net/smc: use memcpy instead of snprintf to avoid out of bounds read (Claudio Imbrenda) [1919249] - [s390] smc: fix out of bound access in smc_nl_get_sys_info() (Claudio Imbrenda) [1919249] - [s390] net/smc: fix access to parent of an ib device (Claudio Imbrenda) [1919249] - [s390] s390/vtime: fix increased steal time accounting (Claudio Imbrenda) [1963075] - [s390] tools/kvm_stat: Add restart delay (Claudio Imbrenda) [1963082] - [s390] s390/dasd: fix hanging IO request during DASD driver unbind (Claudio Imbrenda) [1963077] - [s390] s390/dasd: fix hanging DASD driver unbind (Claudio Imbrenda) [1963077]- Add New KUNIT Tests to Redhat kernel-modules-internal (Nico Pache) [1939309] - kunit: lib: adhear to KUNIT formatting standard (Nico Pache) [1939309] - kunit: mptcp: adhere to KUNIT formatting standard (Nico Pache) [1939309] - ASoC: topology: adhere to KUNIT formatting standard (Nico Pache) [1939309] - kunit: software node: adhear to KUNIT formatting standard (Nico Pache) [1939309] - resource: provide meaningful MODULE_LICENSE() in test suite (Nico Pache) [1939309] - resource: Add test cases for new resource API (Nico Pache) [1939309] - resource: Introduce resource_intersection() for overlapping resources (Nico Pache) [1939309] - resource: Introduce resource_union() for overlapping resources (Nico Pache) [1939309] - mm/resource: Use resource_overlaps() to simplify region_intersects() (Nico Pache) [1939309] - kernel.h: split out min()/max() et al. helpers (Nico Pache) [1939309] - lib/math/rational.c: fix possible incorrect result from rational fractions helper (Nico Pache) [1939309] - lib: Move mathematic helpers to separate folder (Nico Pache) [1939309] - lib/cmdline: remove an unneeded local variable in next_arg() (Nico Pache) [1939309] - lib/cmdline: Allow get_options() to take 0 to validate the input (Nico Pache) [1939309] - lib/cmdline: Update documentation to reflect behaviour (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test case for get_options() (Nico Pache) [1939309] - ext4: add .kunitconfig fragment to enable ext4-specific tests (Nico Pache) [1939309] - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it (Nico Pache) [1939309] - kunit: tool: fix unintentional statefulness in run_kernel() (Nico Pache) [1939309] - kunit: tool: add support for filtering suites by glob (Nico Pache) [1939309] - kunit: add kunit.filter_glob cmdline option to filter suites (Nico Pache) [1939309] - kunit: don't show `1 == 1` in failed assertion messages (Nico Pache) [1939309] - kunit: make kunit_tool accept optional path to .kunitconfig fragment (Nico Pache) [1939309] - Documentation: kunit: add tips.rst for small examples (Nico Pache) [1939309] - KUnit: Docs: make start.rst example Kconfig follow style.rst (Nico Pache) [1939309] - kunit: tool: simplify kconfig is_subset_of() logic (Nico Pache) [1939309] - minor: kunit: tool: fix unit test so it can run from non-root dir (Nico Pache) [1939309] - kunit: tool: use `with open()` in unit test (Nico Pache) [1939309] - kunit: tool: stop using bare asserts in unit test (Nico Pache) [1939309] - kunit: tool: fix unit test cleanup handling (Nico Pache) [1939309] - ASoC: topology: KUnit: Convert from cpu to data format (Nico Pache) [1939309] - drivers/base: build kunit tests without structleak plugin (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing topology with PCM to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing empty topology with variants to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: KUnit: Add KUnit tests passing various arguments to snd_soc_tplg_component_load (Nico Pache) [1939309] - ASoC: topology: Check if ops is set before dereference (Nico Pache) [1939309] - ASoC: topology: Ensure that needed parameters are set (Nico Pache) [1939309] - kunit: tool: move kunitconfig parsing into __init__, make it optional (Nico Pache) [1939309] - kunit: tool: fix minor typing issue with None status (Nico Pache) [1939309] - kunit: tool: surface and address more typing issues (Nico Pache) [1939309] - Documentation: kunit: include example of a parameterized test (Nico Pache) [1939309] - kunit: tool: Fix spelling of "diagnostic" in kunit_parser (Nico Pache) [1939309] - kunit: tool: Force the use of the 'tty' console for UML (Nico Pache) [1939309] - lib/cmdline_kunit: add a new test suite for cmdline API (Nico Pache) [1939309] - lib/cmdline: allow NULL to be an output for get_option() (Nico Pache) [1939309] - lib/cmdline: fix get_option() for strings starting with hyphen (Nico Pache) [1939309] - lib/cmdline.c: mark expected switch fall-throughs (Nico Pache) [1939309] - lib/test_bits.c: add tests of GENMASK (Nico Pache) [1939309] - linux/bits.h: add compile time sanity check of GENMASK inputs (Nico Pache) [1939309] - linux/build_bug.h: change type to int (Nico Pache) [1939309] - fs: ext4: Modify inode-test.c to use KUnit parameterized testing feature (Nico Pache) [1939309] - kunit: Support for Parameterized Testing (Nico Pache) [1939309] - kunit: kunit_tool: Correctly parse diagnostic messages (Nico Pache) [1939309] - Documentation: kunit: provide guidance for testing many inputs (Nico Pache) [1939309] - kunit: Introduce get_file_path() helper (Nico Pache) [1939309] - kunit: fix display of failed expectations for strings (Nico Pache) [1939309] - kunit: tool: fix extra trailing \n in raw + parsed test output (Nico Pache) [1939309] - kunit: tool: print out stderr from make (like build warnings) (Nico Pache) [1939309] - KUnit: Docs: usage: wording fixes (Nico Pache) [1939309] - KUnit: Docs: style: fix some Kconfig example issues (Nico Pache) [1939309] - KUnit: Docs: fix a wording typo (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (test.log) (Nico Pache) [1939309] - kunit: Do not pollute source directory with generated files (.kunitconfig) (Nico Pache) [1939309] - kunit: tool: fix pre-existing python type annotation errors (Nico Pache) [1939309] - kunit: Fix kunit.py parse subcommand (use null build_dir) (Nico Pache) [1939309] - kunit: test: fix remaining kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: Fix compilation test when using TEST_BIT_FIELD_COMPILE (Nico Pache) [1939309] - kunit: test.h: fix a bad kernel-doc markup (Nico Pache) [1939309] - kunit: test.h: solve kernel-doc warnings (Nico Pache) [1939309] - lib: kunit: add bitfield test conversion to KUnit (Nico Pache) [1939309] - Documentation: kunit: add a brief blurb about kunit_test_suite (Nico Pache) [1939309] - kunit: test: add test plan to KUnit TAP format (Nico Pache) [1939309] - init: main: add KUnit to kernel init (Nico Pache) [1939309] - init: unify opening /dev/console as stdin/stdout/stderr (Nico Pache) [1939309] - kunit: test: create a single centralized executor for all tests (Nico Pache) [1939309] - Documentation: test.h - fix warnings (Nico Pache) [1939309] - vmlinux.lds.h: add linker section for KUnit test suites (Nico Pache) [1939309] - Documentation: kunit: Add naming guidelines (Nico Pache) [1939309] - kunit: tool: fix display of make errors (Nico Pache) [1939309] - kunit: tool: handle when .kunit exists but .kunitconfig does not (Nico Pache) [1939309] - kunit: tool: fix --alltests flag (Nico Pache) [1939309] - kunit: tool: allow generating test results in JSON (Nico Pache) [1939309] - kunit: tool: fix running kunit_tool from outside kernel tree (Nico Pache) [1939309] - lib: add linear ranges helpers (Nico Pache) [1939309] - PCI/RCEC: Fix RCiEP device to RCEC association (Myron Stowe) [1895942] - PCI/portdrv: Report reset for frozen channel (Myron Stowe) [1895942] - PCI/AER: Specify the type of Port that was reset (Myron Stowe) [1895942] - PCI/ERR: Retain status from error notification (Myron Stowe) [1895942] - PCI/AER: Clear AER status from Root Port when resetting Downstream Port (Myron Stowe) [1895942] - PCI/ERR: Clear status of the reporting device (Myron Stowe) [1895942] - PCI/AER: Add RCEC AER error injection support (Myron Stowe) [1895942] - PCI/PME: Add pcie_walk_rcec() to RCEC PME handling (Myron Stowe) [1895942] - PCI/AER: Add pcie_walk_rcec() to RCEC AER handling (Myron Stowe) [1895942] - PCI/ERR: Recover from RCiEP AER errors (Myron Stowe) [1895942] - PCI/ERR: Add pcie_link_rcec() to associate RCiEPs (Myron Stowe) [1895942] - PCI/ERR: Recover from RCEC AER errors (Myron Stowe) [1895942] - PCI/ERR: Clear AER status only when we control AER (Myron Stowe) [1895942] - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Avoid negated conditional for clarity (Myron Stowe) [1895942] - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery() (Myron Stowe) [1895942] - PCI/ERR: Simplify by computing pci_pcie_type() once (Myron Stowe) [1895942] - PCI/ERR: Simplify by using pci_upstream_bridge() (Myron Stowe) [1895942] - PCI/ERR: Rename reset_link() to reset_subordinates() (Myron Stowe) [1895942] - PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities() (Myron Stowe) [1895942] - PCI/ERR: Bind RCEC devices to the Root Port driver (Myron Stowe) [1895942] - PCI/AER: Write AER Capability only when we control it (Myron Stowe) [1895942] - PCI: Export pcie_has_flr() (Myron Stowe) [1895942] - xfs: don't reuse busy extents on extent trim (Brian Foster) [1960380] - nvme: add 'kato' sysfs attribute (Gopal Tiwari) [1970260] - scsi: qla2xxx: Update version to 10.02.00.106-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Add marginal path handling support (Nilesh Javali) [1925465] - scsi: qla2xxx: Do logout even if fabric scan retries got exhausted (Nilesh Javali) [1925465] - scsi: qla2xxx: Update default AER debug mask (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix mailbox recovery during PCIe error (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in PCIe error handling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix RISC RESET completion polling (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix use after free in bsg (Nilesh Javali) [1925465] - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix stuck session (Nilesh Javali) [1925465] - scsi: qla2xxx: Add H:C:T info in the log message for fc ports (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix IOPS drop seen in some adapters (Nilesh Javali) [1925465] - scsi: qla2xxx: Check kzalloc() return value (Nilesh Javali) [1925465] - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats() (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify qla8044_minidump_process_control() (Nilesh Javali) [1925465] - scsi: qla2xxx: Suppress Coverity complaints about dseg_r* (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix endianness annotations (Nilesh Javali) [1925465] - scsi: qla2xxx: Constify struct qla_tgt_func_tmpl (Nilesh Javali) [1925465] - scsi: qla2xxx: Use dma_pool_zalloc() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misdocumented functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix incorrectly named function qla8044_check_temp() (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix a couple of misnamed functions (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some incorrect formatting/spelling issues (Nilesh Javali) [1925465] - scsi: qla2xxx: Replace __qla2x00_marker()'s missing underscores (Nilesh Javali) [1925465] - scsi: Revert "qla2xxx: Make sure that aborted commands are freed" (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix broken #endif placement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify if statement (Nilesh Javali) [1925465] - scsi: qla2xxx: Simplify the calculation of variables (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix some memory corruption (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove redundant NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Remove unnecessary NULL check (Nilesh Javali) [1925465] - scsi: qla2xxx: Assign boolean values to a bool variable (Nilesh Javali) [1925465] - scsi: qla2xxx: fc_remote_port_chkready() returns a SCSI result value (Nilesh Javali) [1925465] - scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit (Nilesh Javali) [1925465] - scsi: qla2xxx: Update version to 10.02.00.105-k (Nilesh Javali) [1925465] - scsi: qla2xxx: Enable NVMe CONF (BIT_7) when enabling SLER (Nilesh Javali) [1925465] - scsi: qla2xxx: Wait for ABTS response on I/O timeouts for NVMe (Nilesh Javali) [1925465] - scsi: qla2xxx: Move some messages from debug to normal log level (Nilesh Javali) [1925465] - scsi: qla2xxx: Add error counters to debugfs node (Nilesh Javali) [1925465] - scsi: qla2xxx: Implementation to get and manage host, target stats and initiator port (Nilesh Javali) [1925465] - scsi: ibmvfc: Reinit target retries (Steve Best) [1965010] - scsi: ibmvfc: Avoid move login if fast fail is enabled (Steve Best) [1965010] - scsi: ibmvfc: Handle move login failure (Steve Best) [1965010] - scsi: ibmvfc: Fix invalid state machine BUG_ON() (Steve Best) [1965010] - scsi: qedf: Do not put host in qedf_vport_create() unconditionally (Nilesh Javali) [1899384] - scsi: storvsc: Enable scatterlist entry lengths > 4Kbytes (Cathy Avery) [1941664] - scsi: storvsc: Parameterize number hardware queues (Cathy Avery) [1941664] - scsi: storvsc: Return DID_ERROR for invalid commands (Cathy Avery) [1941664] - scsi: storvsc: Validate length of incoming packet in storvsc_on_channel_callback() (Cathy Avery) [1941664] - scsi: storvsc: Resolve data race in storvsc_probe() (Cathy Avery) [1941664] - scsi: storvsc: Fix max_outstanding_req_per_channel for Win8 and newer (Cathy Avery) [1941664] - scsi: storvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Cathy Avery) [1941664] - RDMA/ipoib: Fix warning caused by destroying non-initial netns (Kamal Heib) [1961815] - can: dev: Move device back to init netns on owning netns delete (Kamal Heib) [1961815] - net: ena: remove extra words from comments (Petr Oros) [1955155] - net: ena: fix inaccurate print type (Petr Oros) [1955155] - ena: Update driver to use ethtool_sprintf (Petr Oros) [1955155] - docs: net: ena: Fix ena_start_xmit() function name typo (Petr Oros) [1955155] - ethernet: amazon: ena: A typo fix in the file ena_com.h (Petr Oros) [1955155] - net: ena: Update XDP verdict upon failure (Petr Oros) [1955155] - net: ena: introduce ndo_xdp_xmit() function for XDP_REDIRECT (Petr Oros) [1955155] - net: ena: use xdp_return_frame() to free xdp frames (Petr Oros) [1955155] - net: ena: introduce XDP redirect implementation (Petr Oros) [1955155] - net: ena: use xdp_frame in XDP TX flow (Petr Oros) [1955155] - net: ena: aggregate stats increase into a function (Petr Oros) [1955155] - net: ena: fix coding style nits (Petr Oros) [1955155] - net: ena: store values in their appropriate variables types (Petr Oros) [1955155] - net: ena: add device distinct log prefix to files (Petr Oros) [1955155] - net: ena: use constant value for net_device allocation (Petr Oros) [1955155] - net: ena: set initial DMA width to avoid intel iommu issue (Petr Oros) [1955155] - net: ena: update ena documentation (Petr Oros) [1955155] - net: ena: Fix all static chekers' warnings (Petr Oros) [1955155] - net: ena: Change RSS related macros and variables names (Petr Oros) [1955155] - net: ena: Remove redundant print of placement policy (Petr Oros) [1955155] - net: ena: Capitalize all log strings and improve code readability (Petr Oros) [1955155] - net: ena: Change log message to netif/dev function (Petr Oros) [1955155] - net: ena: Change license into format to SPDX in all files (Petr Oros) [1955155] - net: ena: xdp: add queue counters for xdp actions (Petr Oros) [1955155] - net: ena: ethtool: add stats printing to XDP queues (Petr Oros) [1955155] - net: ena: ethtool: Add new device statistics (Petr Oros) [1955155] - net: ena: ethtool: convert stat_offset to 64 bit resolution (Petr Oros) [1955155] - net: ena: Make missed_tx stat incremental (Petr Oros) [1955155] - net: ena: Prevent reset after device destruction (Petr Oros) [1955155] - treewide: replace '---help---' in Kconfig files with 'help' (Petr Oros) [1955155] - treewide: Add SPDX license identifier - Makefile/Kconfig (Petr Oros) [1955155] - cross-tree: phase out dma_zalloc_coherent() (Petr Oros) [1955155] - net: ena: fix compilation error in xtensa architecture (Petr Oros) [1955155] - docs: networking: reorganize driver documentation again (Petr Oros) [1955155] - docs: networking: device drivers: convert amazon/ena.txt to ReST (Petr Oros) [1955155] - net: ena: documentation: update ena.txt (Petr Oros) [1955155] - net: documentation: build a directory structure for drivers (Petr Oros) [1955155] - xfrm: interface: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - vti6: fix ipv4 pmtu check to honor ip header df (Sabrina Dubroca) [1931942] - net/sched: act_ct: Fix ct template allocation for zone 0 (Marcelo Ricardo Leitner) [1881824] - uio: Fix use-after-free in uio_unregister_device() (Myron Stowe) [1897285] - uio: free uio id after uio file node is freed (Myron Stowe) [1897285] - drivers: uio: remove redundant assignment to variable retval (Myron Stowe) [1897285] - driver: uio: fix possible use-after-free in __uio_register_device (Myron Stowe) [1897285] - driver: uio: fix possible memory leak in __uio_register_device (Myron Stowe) [1897285] - uio: remove redundant check (Myron Stowe) [1897285] - uio: fix potential memory leak in error case (Myron Stowe) [1897285] - uio: dismiss waiters on device unregistration (Myron Stowe) [1897285] - uio: Fix an Oops on load (Myron Stowe) [1897285] - uio: make symbol 'uio_class_registered' static (Myron Stowe) [1897285] - uio: convert to vm_fault_t (Myron Stowe) [1897285] - uio: ensure class is registered before devices (Myron Stowe) [1897285] - uio: potential double frees if __uio_register_device() fails (Myron Stowe) [1897285] - uio: fix possible circular locking dependency (Myron Stowe) [1897285] - uio: fix wrong return value from uio_mmap() (Myron Stowe) [1897285] - uio: add SPDX license tag (Myron Stowe) [1897285] - net: zero-initialize tc skb extension on allocation (Ivan Vecera) [1946986] - net: sched: fix tx action reschedule issue with stopped queue (Ivan Vecera) [1946986] - net: sched: fix tx action rescheduling issue during deactivation (Ivan Vecera) [1946986] - net: sched: fix packet stuck problem for lockless qdisc (Ivan Vecera) [1946986] - net/sched: act_ct: Remove redundant ct get and check (Ivan Vecera) [1946986] - net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch change cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action test to verify batch add cleanup (Ivan Vecera) [1946986] - tc-testing: add simple action change test (Ivan Vecera) [1946986] - selftests: forwarding: Add tc-police tests for packets per second (Ivan Vecera) [1946986] - selftests: tc-testing: add action police selftest for packets per second (Ivan Vecera) [1946986] - net: sched: Mundane typo fixes (Ivan Vecera) [1946986] - net/sched: cls_flower: use nla_get_be32 for TCA_FLOWER_KEY_FLAGS (Ivan Vecera) [1946986] - net/sched: cls_flower: use ntohs for struct flow_dissector_key_ports (Ivan Vecera) [1946986] - taprio: Handle short intervals and large packets (Ivan Vecera) [1946986] - net/sched: cls_flower: fix only mask bit check in the validate_ct_state (Ivan Vecera) [1946986] - treewide: Remove uninitialized_var() usage (Ivan Vecera) [1946986] - lockdep: Provide dummy forward declaration of *_is_held() helpers (Ivan Vecera) [1946986] - net: sched: Remove broken definitions and un-hide for !LOCKDEP (Ivan Vecera) [1946986] - net: sched: sch_teql: fix null-pointer dereference (Ivan Vecera) [1946986] - net: sched: fix err handler in tcf_action_init() (Ivan Vecera) [1946986] - net: sched: fix action overwrite reference counting (Ivan Vecera) [1946986] - Revert "net: sched: bump refcount for new action in ACT replace mode" (Ivan Vecera) [1946986] - net: cls_api: Fix uninitialised struct field bo->unlocked_driver_cb (Ivan Vecera) [1946986] - net: sched: bump refcount for new action in ACT replace mode (Ivan Vecera) [1946986] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Ivan Vecera) [1946986] - net/sched: act_police: add support for packet-per-second policing (Ivan Vecera) [1946986] - flow_offload: reject configuration of packet-per-second policing in offload drivers (Ivan Vecera) [1946986] - flow_offload: add support for packet-per-second policing (Ivan Vecera) [1946986] - net: sched: validate stab values (Ivan Vecera) [1946986] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Ivan Vecera) [1946986] - sched: act_sample: Implement stats_update callback (Ivan Vecera) [1946986] - net: sched: avoid duplicates in classes dump (Ivan Vecera) [1946986] - net/sched: cls_flower: validate ct_state for invalid and reply flags (Ivan Vecera) [1946986] - net: sched: fix police ext initialization (Ivan Vecera) [1946986] - selftests: tc: Add generic mpls matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc: Add basic mpls_* matching support for tc-flower (Ivan Vecera) [1946986] - selftests: tc-testing: u32: Add tests covering sample option (Ivan Vecera) [1946986] - net: sched: Return the correct errno code (Ivan Vecera) [1946986] - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace (Ivan Vecera) [1946986] - selftests: forwarding: Fix spelling mistake "succeded" -> "succeeded" (Ivan Vecera) [1946986] - taprio: boolean values to a bool variable (Ivan Vecera) [1946986] - net_sched: fix RTNL deadlock again caused by request_module() (Ivan Vecera) [1946986] - cls_flower: call nla_ok() before nla_next() (Ivan Vecera) [1946986] - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs (Ivan Vecera) [1946986] - net/sched: sch_taprio: reset child qdiscs before freeing them (Ivan Vecera) [1946986] - net: sched: incorrect Kconfig dependencies on Netfilter modules (Ivan Vecera) [1946986] - treewide: replace '---help---' in Kconfig files with 'help' (Ivan Vecera) [1946986] - net/sched: cls_u32: simplify the return expression of u32_reoffload_knode() (Ivan Vecera) [1946986] - net: sched: fix spelling mistake in Kconfig "trys" -> "tries" (Ivan Vecera) [1946986] - net/sched: fq_pie: initialize timer earlier in fq_pie_init() (Ivan Vecera) [1946986] - net: sched: remove redundant 'rtnl_held' argument (Ivan Vecera) [1946986] - selftests: tc-testing: enable CONFIG_NET_SCH_RED as a module (Ivan Vecera) [1946986] - net: sched: alias action flags with TCA_ACT_ prefix (Ivan Vecera) [1946986] - treewide: rename nla_strlcpy to nla_strscpy. (Ivan Vecera) [1946986] - Modify return value of nla_strlcpy to match that of strscpy. (Ivan Vecera) [1946986] - Fix unefficient call to memset before memcpu in nla_strlcpy. (Ivan Vecera) [1946986] - net: sched: fix misspellings using misspell-fixer tool (Ivan Vecera) [1946986] - selftest: fix flower terse dump tests (Ivan Vecera) [1946986] - net: sched: implement action-specific terse dump (Ivan Vecera) [1946986] - net: cls_api: remove unneeded local variable in tc_dump_chain() (Ivan Vecera) [1946986] - openvswitch: fix send of uninitialized stack memory in ct limit reply (Antoine Tenart) [1950022] - net/sched: act_api: fix miss set post_ct for ovs after do conntrack in act_ct (Antoine Tenart) [1950022] - xsk: Clear pool even for inactive queues (Jiri Benc) [1882710] - xsk: Fix memory leak for failed bind (Jiri Benc) [1882710] - xsk: Return error code if force_zc is set (Jiri Benc) [1882710] - xsk: Change the tx writeable condition (Jiri Benc) [1882710] - xsk: Replace datagram_poll by sock_poll_wait (Jiri Benc) [1882710] - xdp: Handle MEM_TYPE_XSK_BUFF_POOL correctly in xdp_return_buff() (Jiri Benc) [1882710] - xsk: Fix incorrect netdev reference count (Jiri Benc) [1882710] - xsk: Fix umem cleanup bug at socket destruct (Jiri Benc) [1882710] - netdevsim: set .owner to THIS_MODULE (Jiri Benc) [1882710] - bpf: selftest: Use static globals in tcp_hdr_options and btf_skc_cls_ingress (Jiri Benc) [1882710] - xsk: Fix possible memory leak at socket close (Jiri Benc) [1882710] - samples/bpf: Set rlimit for memlock to infinity in all samples (Jiri Benc) [1882710] - bpf, selftests: Extend test_tc_redirect to use modified bpf_redirect_neigh() (Jiri Benc) [1882710] - bpf: Fix bpf_redirect_neigh helper api to support supplying nexthop (Jiri Benc) [1882710] - bpf, selftest: Fix flaky tcp_hdr_options test when adding addr to lo (Jiri Benc) [1882710] - bpf, selftests: Add redirect_peer selftest (Jiri Benc) [1882710] - bpf, selftests: Make redirect_neigh test more extensible (Jiri Benc) [1882710] - bpf: Add redirect_peer helper (Jiri Benc) [1882710] - bpf: Improve bpf_redirect_neigh helper description (Jiri Benc) [1882710] - bpf: Always return target ifindex in bpf_fib_lookup (Jiri Benc) [1882710] - xsk: Introduce padding between ring pointers (Jiri Benc) [1882710] - xsk: Remove internal DMA headers (Jiri Benc) [1882710] - bpf: selftest: Ensure the child sk inherited all bpf_sock_ops_cb_flags (Jiri Benc) [1882710] - bpf: tcp: Do not limit cb_flags when creating child sk from listen sk (Jiri Benc) [1882710] - bpf, selftests: Add redirect_neigh selftest (Jiri Benc) [1882710] - bpf: Add redirect_neigh helper as redirect drop-in (Jiri Benc) [1882710] - tools, bpf: Synchronise BPF UAPI header with tools (Jiri Benc) [1882710] - bpf: Fix formatting in documentation for BPF helpers (Jiri Benc) [1882710] - xsk: Fix a documentation mistake in xsk_queue.h (Jiri Benc) [1882710] - xsk: Fix possible crash in socket_release when out-of-memory (Jiri Benc) [1882710] - xsk: Fix refcount warning in xp_dma_map (Jiri Benc) [1882710] - tcp: Only init congestion control if not initialized already (Jiri Benc) [1882710] - xsk: Fix null check on error return path (Jiri Benc) [1882710] - xsk: Fix possible segfault at xskmap entry insertion (Jiri Benc) [1882710] - xsk: Fix possible segfault in xsk umem diagnostics (Jiri Benc) [1882710] - xsk: Fix use-after-free in failed shared_umem bind (Jiri Benc) [1882710] - xsk: Documentation for XDP_SHARED_UMEM between queues and netdevs (Jiri Benc) [1882710] - xsk: Add shared umem support between devices (Jiri Benc) [1882710] - xsk: Add shared umem support between queue ids (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Test for dma_need_sync earlier for better performance (Jiri Benc) [1882710] - xsk: Rearrange internal structs for better performance (Jiri Benc) [1882710] - xsk: Enable sharing of dma mappings (Jiri Benc) [1882710] - xsk: Move addrs from buffer pool to umem (Jiri Benc) [1882710] - xsk: Move xsk_tx_list and its lock to buffer pool (Jiri Benc) [1882710] - xsk: Move queue_id, dev and need_wakeup to buffer pool (Jiri Benc) [1882710] - xsk: Move fill and completion rings to buffer pool (Jiri Benc) [1882710] - xsk: Create and free buffer pool independently from umem (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Rename xsk zero-copy driver interfaces (Jiri Benc) [1882710] - xsk: i40e: ice: ixgbe: mlx5: Pass buffer pool to driver instead of umem (Jiri Benc) [1882710] - tcp: bpf: Optionally store mac header in TCP_SAVE_SYN (Jiri Benc) [1882710] - bpf: selftests: Tcp header options (Jiri Benc) [1882710] - bpf: selftests: Add fastopen_connect to network_helpers (Jiri Benc) [1882710] - bpf: tcp: Allow bpf prog to write and parse TCP header option (Jiri Benc) [1882710] - bpf: sock_ops: Change some members of sock_ops_kern from u32 to u8 (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_hdr_opt_len() and bpf_skops_write_hdr_opt() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_parse_hdr() (Jiri Benc) [1882710] - bpf: tcp: Add bpf_skops_established() (Jiri Benc) [1882710] - tcp: Add saw_unknown to struct tcp_options_received (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_RTO_MIN for bpf_setsockopt (Jiri Benc) [1882710] - tcp: bpf: Add TCP_BPF_DELACK_MAX setsockopt (Jiri Benc) [1882710] - tcp: Use a struct to represent a saved_syn (Jiri Benc) [1882710] - tcp: tcp_init_buffer_space can be static (Jiri Benc) [1882710] - tcp: refactor setting the initial congestion window (Jiri Benc) [1882710] - tcp: fix code style in tcp_recvmsg() (Jiri Benc) [1882710] - tcp: duplicate clear of icsk_backoff (Jiri Benc) [1882710] - tcp: move rx_opt & syn_data_acked init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move tp->rack init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move app_limited init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move retrans_out, sacked_out, tlp_high_seq, last_oow_ack_time init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear urg_data in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: move snd_cwnd & snd_cwnd_cnt init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: move mdev_us init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not clear srtt_us in tcp_create_openreq_child (Jiri Benc) [1882710] - tcp: do not clear packets_out in tcp_create_openreq_child() (Jiri Benc) [1882710] - tcp: move icsk_rto init to tcp_disconnect() (Jiri Benc) [1882710] - tcp: do not set snd_ssthresh in tcp_create_openreq_child() (Jiri Benc) [1882710] - net-veth: Add type safety to veth_xdp_to_ptr() and veth_ptr_to_xdp() (Jiri Benc) [1882710] - net-tun: Eliminate two tun/xdp related function calls from vhost-net (Jiri Benc) [1882710] - net-tun: Add type safety to tun_xdp_to_ptr() and tun_ptr_to_xdp() (Jiri Benc) [1882710] - ipv4: Add helpers for neigh lookup for nexthop (Jiri Benc) [1882710] - net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Jiri Benc) [1882710] - tipc: better validate user input in tipc_nl_retrieve_key() (Xin Long) [1950093] - tipc: simplify the finalize work queue (Xin Long) [1958456] - tipc: wait and exit until all work queues are done (Xin Long) [1958456] - [s390] KVM: s390: diag9c (directed yield) forwarding (Claudio Imbrenda) [1874105] - kvm/svm: Reenable nesting (Dr. David Alan Gilbert) [1790949] - powerpc/papr_scm: Reduce error severity if nvdimm stats inaccessible (Steve Best) [1965193] - Revert "[redhat] redhat/configs: Update CONFIG_ARM64_CNP" (Mark Salter) [1949533] - arm64: kernel: disable CNP on Carmel (Mark Salter) [1949533]- redhat/configs: Enable CONFIG_MICROSOFT_MANA=m (Vitaly Kuznetsov) [1957820] - net: mana: Use int to check the return value of mana_gd_poll_cq() (Vitaly Kuznetsov) [1957820] - net: mana: fix PCI_HYPERV dependency (Vitaly Kuznetsov) [1957820] - net: mana: remove redundant initialization of variable err (Vitaly Kuznetsov) [1957820] - net: mana: Add a driver for Microsoft Azure Network Adapter (MANA) (Vitaly Kuznetsov) [1957820] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Vitaly Kuznetsov) [1957820] - net: evaluate net.ipvX.conf.all.ignore_routes_with_linkdown (Balazs Nemeth) [1957223] - net: evaluate net.ipv4.conf.all.proxy_arp_pvlan (Balazs Nemeth) [1957223] - netfilter: nf_log_syslog: Unset bridge logger in pernet exit (Phil Sutter) [1938214] - netfilter: nft_log: perform module load from nf_tables (Phil Sutter) [1938214] - netfilter: nft_dynset: fix timeouts later than 23 days (Phil Sutter) [1938214] - netfilter: nft_compat: make sure xtables destructors have run (Phil Sutter) [1938214] - netfilter: nftables: Add __printf() attribute (Phil Sutter) [1938214] - netfilter: nf_log: add module softdeps (Phil Sutter) [1938214] - netfilter: nf_log_common: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_bridge: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_netdev: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv6: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: move inline nf_ip6_ext_hdr() function to a more appropriate header. (Phil Sutter) [1938214] - ipv6: Use ipv6_authlen for len (Phil Sutter) [1938214] - netfilter: nf_log_arp: merge with nf_log_syslog (Phil Sutter) [1938214] - netfilter: nf_log_ipv4: rename to nf_log_syslog (Phil Sutter) [1938214] - net/sched: cls_api: increase max_reclassify_loop (Davide Caratti) [1955136] - vsock/vmci: Remove redundant assignment to err (Stefano Garzarella) [1956861] - vsock/virtio: free queued packets when closing socket (Stefano Garzarella) [1956861] - net: vsock: Fix a typo (Stefano Garzarella) [1956861] - selinux: vsock: Set SID for socket returned by accept() (Stefano Garzarella) [1956861] - af_vsock: Assign the vsock transport considering the vsock address flags (Stefano Garzarella) [1956861] - af_vsock: Set VMADDR_FLAG_TO_HOST flag on the receive path (Stefano Garzarella) [1956861] - vsock_addr: Check for supported flag values (Stefano Garzarella) [1956861] - vm_sockets: Add VMADDR_FLAG_TO_HOST vsock flag (Stefano Garzarella) [1956861] - vm_sockets: Add flags field in the vsock address data structure (Stefano Garzarella) [1956861] - hv_sock: Remove the accept port restriction (Stefano Garzarella) [1956861] - hv_sock: use HV_HYP_PAGE_SIZE for Hyper-V communication (Stefano Garzarella) [1956861] - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME (Corinna Vinschen) [1958988] - net: ensure mac header is set in virtio_net_hdr_to_skb() (Balazs Nemeth) [1955441] - devlink: Fix dmac_filter trap name, align to its documentation (Petr Oros) [1935701] - devlink: Add DMAC filter generic packet trap (Petr Oros) [1935701] - devlink: Add blackhole_nexthop trap (Petr Oros) [1935701] - stm class: Fix module init return on allocation failure (Jiri Olsa) [1907791] - stm class: ftrace: Use different channel accroding to CPU (Jiri Olsa) [1907791] - stm class: ftrace: Enable supported trace export flag (Jiri Olsa) [1907791] - stm class: ftrace: Change dependency to TRACING (Jiri Olsa) [1907791] - stm class: Replace zero-length array with flexible-array (Jiri Olsa) [1907791] - stm class: sys-t: Fix the use of time_after() (Jiri Olsa) [1907791] - stm class: Lose the protocol driver when dropping its reference (Jiri Olsa) [1907791] - stm class: Fix a double free of stm_source_device (Jiri Olsa) [1907791] - stm class: Fix channel bitmap on 32-bit systems (Jiri Olsa) [1907791] - stm class: Fix channel free in stm output free path (Jiri Olsa) [1907791] - stm class: Prevent division by zero (Jiri Olsa) [1907791] - stm class: Fix an endless loop in channel allocation (Jiri Olsa) [1907791] - stm class: Fix a module refcount leak in policy creation error path (Jiri Olsa) [1907791] - stm class: Use memcat_p() (Jiri Olsa) [1907791] - stm class: heartbeat: Fix whitespace (Jiri Olsa) [1907791] - stm class: p_sys-t: Add support for CLOCKSYNC packets (Jiri Olsa) [1907791] - stm class: Add MIPI SyS-T protocol support (Jiri Olsa) [1907791] - stm class: Switch over to the protocol driver (Jiri Olsa) [1907791] - stm class: Factor out default framing protocol (Jiri Olsa) [1907791] - stm class: Add a helper for writing data packets (Jiri Olsa) [1907791] - stm class: Introduce framing protocol drivers (Jiri Olsa) [1907791] - stm class: Clean up stp_configfs_init (Jiri Olsa) [1907791] - stm class: Clarify configfs root type/operations names (Jiri Olsa) [1907791] - stm class: Rework policy node fallback (Jiri Olsa) [1907791] - lib: Add memcat_p(): paste 2 pointer arrays together (Jiri Olsa) [1907791] - tracing: Add trace_export support for trace_marker (Jiri Olsa) [1907791] - tracing: Add trace_export support for event trace (Jiri Olsa) [1907791] - tracing: Add flag to control different traces (Jiri Olsa) [1907791] - tracing: Make function ‘ftrace_exports’ static (Jiri Olsa) [1907791] - tipc: increment the tmp aead refcnt before attaching it (Xin Long) [1931312] - tipc: skb_linearize the head skb when reassembling msgs (Xin Long) [1912376] - scsi: target: core: Fix warning on realtime kernels (Maurizio Lombardi) [1956416] - scsi: bnx2fc: Fix a typo (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix misnaming of bnx2fc_free_session_resc() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix typo in bnx2fc_indicate_kcqe() (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix Kconfig warning & CNIC build errors (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix comparison to bool warning (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon (Nilesh Javali) [1921617] - scsi: bnx2fc: Make a bunch of symbols static in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix spelling mistake "couldnt" -> "couldn't" (Nilesh Javali) [1921617] - scsi: bnx2fc: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1921617] - scsi: bnx2fc: Fix a couple of bitrotted function documentation headers (Nilesh Javali) [1921617] - scsi: bnx2fc: Repair a range of kerneldoc issues (Nilesh Javali) [1921617] - scsi: bnx2fc: Removal of unused variables (Nilesh Javali) [1921617] - scsi: bnx2fc: Remove unneeded semicolon in bnx2fc_fcoe.c (Nilesh Javali) [1921617] - scsi: bnx2fc: Add missing annotation for bnx2fc_abts_cleanup() (Nilesh Javali) [1921617] - tools/power turbostat: Enable tsc_tweak for Elkhart Lake and Jasper Lake (Puneet Sethi) [1920704] - selinux: Allow context mounts for unpriviliged overlayfs (Miklos Szeredi) [1956486] - md-cluster: fix use-after-free issue when removing rdev (Nigel Croxon) [1956355] - md/bitmap: wait for external bitmap writes to complete during tear down (Nigel Croxon) [1956355] - md: do not return existing mddevs from mddev_find_or_alloc (Nigel Croxon) [1956355] - md: refactor mddev_find_or_alloc (Nigel Croxon) [1956355] - md: factor out a mddev_alloc_unit helper from mddev_find (Nigel Croxon) [1956355] - md: split mddev_find (Nigel Croxon) [1956355] - md: factor out a mddev_find_locked helper from mddev_find (Nigel Croxon) [1956355] - md: md_open returns -EBUSY when entering racing area (Nigel Croxon) [1956355] - md: Fix missing unused status line of /proc/mdstat (Nigel Croxon) [1956355] - md/raid10: improve discard request for far layout (Xiao Ni) [1956355] - md/raid10: improve raid10 discard request (Nigel Croxon) [1956355] - md/raid10: pull the code that wait for blocked dev into one function (Xiao Ni) [1956355] - md/raid10: extend r10bio devs to raid disks (Xiao Ni) [1956355] - md: add md_submit_discard_bio() for submitting discard bio (Nigel Croxon) [1956355] - leds: trigger: fix potential deadlock with libata (Waiman Long) [1963373] - x86/kvm: Unify kvm_pv_guest_cpu_reboot() with kvm_guest_cpu_offline() (Lenny Szubowicz) [1934273] - x86/kvm: Disable all PV features on crash (Lenny Szubowicz) [1934273] - x86/kvm: Disable kvmclock on all CPUs on shutdown (Lenny Szubowicz) [1934273] - x86/kvm: Teardown PV features on boot CPU as well (Lenny Szubowicz) [1934273] - x86/kvm: Fix pr_info() for async PF setup/teardown (Lenny Szubowicz) [1934273] - RDMA/qedr: Fix error return code in qedr_iw_connect() (Manish Chopra) [1914922] - qede: Use 'skb_add_rx_frag()' instead of hand coding it (Manish Chopra) [1914922] - qede: Remove a erroneous ++ in 'qede_rx_build_jumbo()' (Manish Chopra) [1914922] - qede: fix offload for IPIP tunnel packets (Manish Chopra) [1914922] - RDMA/qedr: iWARP invalid(zero) doorbell address fix (Manish Chopra) [1914922] - qed: fix ILT configuration of SRC block (Manish Chopra) [1914922] - qed: fix error return code in qed_iwarp_ll2_start() (Manish Chopra) [1914922] - RDMA/qedr: Fix resource leak in qedr_create_qp (Manish Chopra) [1914922] - qede: make driver reliable on unload after failures (Manish Chopra) [1914922] - net: qed: Remove unnecessary cast (Manish Chopra) [1914922] - nvme: fix NULL derefence in nvme_ctrl_fast_io_fail_tmo_show/store (Gopal Tiwari) [1935135] - nvme: export fast_io_fail_tmo to sysfs (Gopal Tiwari) [1935135] - EDAC: enable CONFIG_EDAC_IGEN6 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: ecclog_llist can be static (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Add Intel Sapphire Rapids server support (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add DDR5 new memory type (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/i10nm: Use readl() to access MMIO registers (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add debugfs interface for Intel client SoC EDAC driver (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/igen6: Add EDAC driver for Intel client SoCs using IBECC (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add three new memory types (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC, {skx,i10nm}: Use CPU stepping macro to pass configurations (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/skx: Use the mcmtr register to retrieve close_pg/bank_xor_enable (Aristeu Rozanski) [1837389 1783539 1861479] - x86/cpu: Add a X86_MATCH_INTEL_FAM6_MODEL_STEPPINGS() macro (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[] (Aristeu Rozanski) [1837389 1783539 1861479] - x86: export x86_match_cpu_v2 (Aristeu Rozanski) [1837389 1783539 1861479] - EDAC/amd64: Fix PCI component registration (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId (Aristeu Rozanski) [1918583] - x86/CPU/AMD: Remove amd_get_nb_id() (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Make fam_ops static global (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Allow Reserved types to be overwritten in smca_banks[] (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure() (Aristeu Rozanski) [1918583] - EDAC/amd64: Get rid of the ECC disabled long message (Aristeu Rozanski) [1918583] - EDAC/amd64: Check for memory before fully initializing an instance (Aristeu Rozanski) [1918583] - EDAC/amd64: Use cached data when checking for ECC (Aristeu Rozanski) [1918583] - x86/MCE: Make the number of MCA banks a per-CPU variable (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't cache block addresses on SMCA systems (Aristeu Rozanski) [1918583] - x86/MCE: Make mce_banks a per-CPU array (Aristeu Rozanski) [1918583] - x86/MCE: Make struct mce_banks[] static (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Don't report L1 BTB MCA errors on some family 17h models (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS in bit definition order (Aristeu Rozanski) [1918583] - EDAC/mce_amd: Decode MCA_STATUS[Scrub] bit (Aristeu Rozanski) [1918583] - EDAC, mce_amd: Match error descriptions to latest documentation (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Carve out the MC4_MISC thresholding quirk (Aristeu Rozanski) [1918583] - x86/MCE/AMD: Turn off MC4_MISC thresholding on all family 0x15 models (Aristeu Rozanski) [1918583] - powerpc/64s: Fix unrelocated interrupt trampoline address test (Waiman Long) [1966462] - intel_th: pci: Add Alder Lake CPU support (Jiri Olsa) [1840246] - intel_th: pci: Add Alder Lake-S support (Jiri Olsa) [1840246] - mfd: intel_pmt: Add support for DG1 (David Arcari) [1783144] - mfd: intel_pmt: Fix nuisance messages and handling of disabled capabilities (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_CRASHLOG (David Arcari) [1783144] - redhat/configs: Add CONFIG_INTEL_PMT_TELEMETRY (David Arcari) [1783144] - redhat/configs: Add CONFIG_MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt_telemetry: Add dependency on MFD_INTEL_PMT (David Arcari) [1783144] - platform/x86: intel_pmt: Make INTEL_PMT_CLASS non-user-selectable (David Arcari) [1783144] - platform/x86: intel_pmt_crashlog: Fix incorrect macros (David Arcari) [1783144] - platform/x86: intel_pmt_class: Initial resource to 0 (David Arcari) [1783144] - mfd: Standardise MFD_CELL_* helper names (David Arcari) [1783144] - platform/x86: pmt: Fix a potential Oops on error in probe (David Arcari) [1783144] - platform/x86: Intel PMT Crashlog capability driver (David Arcari) [1783144] - platform/x86: Intel PMT Telemetry capability driver (David Arcari) [1783144] - platform/x86: Intel PMT class driver (David Arcari) [1783144] - mfd: Intel Platform Monitoring Technology support (David Arcari) [1783144] - mfd: mfd-core: Ensure disabled devices are ignored without error (David Arcari) [1783144] - mfd: core: Fix double-free in mfd_remove_devices_fn() (David Arcari) [1783144] - mfd: mfd-core: Add mechanism for removal of a subset of children (David Arcari) [1783144] - mfd: core: Add OF_MFD_CELL_REG() helper (David Arcari) [1783144] - mfd: core: Fix formatting of MFD helpers (David Arcari) [1783144] - mfd: core: Make a best effort attempt to match devices with the correct of_nodes (David Arcari) [1783144] - mfd: mfd-core: Complete kerneldoc header for devm_mfd_add_devices() (David Arcari) [1783144] - mfd: Constify properties in mfd_cell (David Arcari) [1783144] - mfd: mfd-core: Honour Device Tree's request to disable a child-device (David Arcari) [1783144] - mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device() (David Arcari) [1783144] - mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs (David Arcari) [1783144] - mfd: mfd-core: Protect against NULL call-back function pointer (David Arcari) [1783144] - mfd: mfd-core: Remove mfd_clone_cell() (David Arcari) [1783144] - mfd: Provide MACRO to declare commonly defined MFD cell attributes (David Arcari) [1783144] - mfd: core: Set fwnode for created devices (David Arcari) [1783144] - treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (David Arcari) [1783144] - mfd: mfd-core: Document mfd_add_devices() (David Arcari) [1783144] - PCI: Add defines for Designated Vendor-Specific Extended Capability (David Arcari) [1783144] - tick/nohz: Update idle_exittime on actual idle exit (Phil Auld) [1962632] - tick/nohz: Remove superflous check for CONFIG_VIRT_CPU_ACCOUNTING_NATIVE (Phil Auld) [1962632] - tick/nohz: Conditionally restart tick on idle exit (Phil Auld) [1962632] - x86, sched: Fix the AMD CPPC maximum performance value on certain AMD Ryzen generations (Phil Auld) [1960687] - pinctrl: devicetree: Avoid taking direct reference to device name string (Aristeu Rozanski) [1922904] {CVE-2020-0427} - redhat: ppc64: enable CONFIG_PPC_RTAS_FILTER (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Fix typo of ibm,open-errinjct in RTAS filter (Aristeu Rozanski) [1906444] {CVE-2020-27777} - powerpc/rtas: Restrict RTAS requests from userspace (Aristeu Rozanski) [1906444] {CVE-2020-27777}- docs: vxlan: add info about device features (Petr Oros) [1941739] - selftests: net: add a test for static UDP tunnel ports (Petr Oros) [1941739] - netdevsim: support the static IANA VXLAN port flag (Petr Oros) [1941739] - selftests: net: add a test for shared UDP tunnel info tables (Petr Oros) [1941739] - netdevsim: shared UDP tunnel port table support (Petr Oros) [1941739] - netdevsim: add warnings on unexpected UDP tunnel port errors (Petr Oros) [1941739] - udp_tunnel: add the ability to share port tables (Petr Oros) [1941739] - docs: networking: convert vxlan.txt to ReST (Petr Oros) [1941739] - net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT (Ivan Vecera) [1960528] - ethtool: fix incorrect datatype in set_eee ops (Balazs Nemeth) [1956698] - ethtool: fix missing NLM_F_MULTI flag when dumping (Antoine Tenart) [1953847] - y2038: remove CONFIG_64BIT_TIME (Waiman Long) [1965360] - net/mlx4: Fix EEPROM dump support (Alaa Hleihel) [1915305] - net/mlx4_en: update moderation when config reset (Alaa Hleihel) [1915305] - net/mlx4_core: Add missed mlx4_free_cmd_mailbox() (Alaa Hleihel) [1915305] - IB/mlx4: Use port iterator and validation APIs (Alaa Hleihel) [1915305] - net/mlx4: Use effective interrupt affinity (Alaa Hleihel) [1915302 1915305] - net/mlx4: Replace irq_to_desc() abuse (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_srq_table() (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Remove bogus dev_base_lock usage (Alaa Hleihel) [1915302 1915305] - net/mlx4: simplify the return expression of mlx4_init_cq_table() (Alaa Hleihel) [1915302 1915305] - net/mlx4: Remove unused #define MAX_MSIX_P_PORT (Alaa Hleihel) [1915302 1915305] - RDMA/mlx4: Enable querying AH for XRC QP types (Alaa Hleihel) [1915302 1915305] - IB/mlx4: Fix fall-through warnings for Clang (Alaa Hleihel) [1915302 1915305] - net/mlx4_en: Remove unused performance counters (Alaa Hleihel) [1915302 1915305] - net/mlx4: Assign boolean values to a bool variable (Alaa Hleihel) [1915302 1915305] - net/mlx4: Cleanup kernel-doc warnings (Alaa Hleihel) [1915302 1915305] - net/mlx4_core : remove unneeded semicolon (Alaa Hleihel) [1915302 1915305] - net/mlx4_core: Fix init_hca fields offset (Alaa Hleihel) [1915301 1915305] - mlx4: handle non-napi callers to napi_poll (Alaa Hleihel) [1915301 1915305] - mlx4: drivers/net/ethernet: clean up unused assignments (Alaa Hleihel) [1915301 1915305] - mlx4: add pause frame stats (Alaa Hleihel) [1915301 1915305] - mlx4: make sure to always set the port type (Alaa Hleihel) [1915301 1915305] - net/mlx4_en: RX, Add a prefetch command for small L1_CACHE_BYTES (Alaa Hleihel) [1915301 1915305] - cnic: remove redundant assignment to variable ret (Nilesh Javali) [1921619] - net: cnic: fix spelling mistake "reserverd" -> "reserved" (Nilesh Javali) [1921619] - cnic: Explicitly initialize all reference counts to 0. (Nilesh Javali) [1921619] - cfg80211: fix locking in netlink owner interface destruction (Jarod Wilson) [1937053] - brcmfmac: Avoid GFP_ATOMIC when GFP_KERNEL is enough (Jarod Wilson) [1937053] - ath11k: fix warning in ath11k_mhi_config (Jarod Wilson) [1937053] - ath11k: qmi: Fix spelling mistake "requeqst" -> "request" (Jarod Wilson) [1937053] - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock (Jarod Wilson) [1937053] - ath10k: Fix a use after free in ath10k_htc_send_bundle (Jarod Wilson) [1937053] - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices (Jarod Wilson) [1937053] - mt76: mt7921: reinit wpdma during drv_own if necessary (Jarod Wilson) [1937053] - mt76: move mt76_token_init in mt76_alloc_device (Jarod Wilson) [1937053] - mt76: mt7921: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7915: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7615: fix a precision vs width bug in printk (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_mcu_sta_add routine (Jarod Wilson) [1937053] - mt76: mt7921: mt7921_stop should put device in fw_own state (Jarod Wilson) [1937053] - mt76: connac: unschedule mac_work before going to sleep (Jarod Wilson) [1937053] - mt76: mt7663: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: mt7921: improve doze opportunity (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mcu_reset function pointer (Jarod Wilson) [1937053] - mt76: mt7915: do not read rf value from efuse in flash mode (Jarod Wilson) [1937053] - mt76: move token utilities in mt76 common module (Jarod Wilson) [1937053] - mt76: move token_lock, token and token_count in mt76_dev (Jarod Wilson) [1937053] - mt76: mt7921: fix possible invalid register access (Jarod Wilson) [1937053] - mt76: mt7921: enable deep sleep when the device suspends (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_connac_mcu_set_deep_sleep utility (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reinit_cond utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_dma_{enable,disable} utilities (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_wpdma_reset utility routine (Jarod Wilson) [1937053] - mt76: mt7921: move mt7921_dma_reset in dma.c (Jarod Wilson) [1937053] - mt76: mt7615: Fix a dereference of pointer sta before it is null checked (Jarod Wilson) [1937053] - mt76: mt7921: enable sw interrupts (Jarod Wilson) [1937053] - mt76: mt7921: add awake and doze time accounting (Jarod Wilson) [1937053] - mt76: remove MT76_STATE_PM in tx path (Jarod Wilson) [1937053] - mt76: connac: use waitqueue for runtime-pm (Jarod Wilson) [1937053] - mt76: connac: do not run mt76_txq_schedule_all directly (Jarod Wilson) [1937053] - mt76: mt7615: rely on pm refcounting in mt7615_led_set_config (Jarod Wilson) [1937053] - mt76: connac: alaways wake the device before scanning (Jarod Wilson) [1937053] - mt76: mt7921: get rid of useless MT76_STATE_PM in mt7921_mac_work (Jarod Wilson) [1937053] - mt76: connac: remove MT76_STATE_PM in mac_tx_free (Jarod Wilson) [1937053] - mt76: connac: check wake refcount in mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: connac: unschedule ps_work in mt76_connac_pm_wake (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx/rx napi (Jarod Wilson) [1937053] - mt76: dma: add the capability to define a custom rx napi poll routine (Jarod Wilson) [1937053] - mt76: mt7663: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path (Jarod Wilson) [1937053] - mt76: connac: introduce wake counter for fw_pmctrl synchronization (Jarod Wilson) [1937053] - mt76: mt7663: fix a race between mt7615_mcu_drv_pmctrl and mt7615_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: fix a race between mt7921_mcu_drv_pmctrl and mt7921_mcu_fw_pmctrl (Jarod Wilson) [1937053] - mt76: mt7921: remove leftover function declaration (Jarod Wilson) [1937053] - mt76: connac: move mcu_update_arp_filter in mt76_connac module (Jarod Wilson) [1937053] - mt76: mt7921: do not use 0 as NULL pointer (Jarod Wilson) [1937053] - mt76: mt7915: directly read per-rate tx power from registers (Jarod Wilson) [1937053] - mt76: mt7915: rework the flow of txpower setting (Jarod Wilson) [1937053] - mt76: mt7915: add support for DT rate power limits (Jarod Wilson) [1937053] - mt76: mt7921: abort uncompleted scan by wifi reset (Jarod Wilson) [1937053] - mt76: mt7921: add wifisys reset support in debugfs (Jarod Wilson) [1937053] - mt76: mt7921: run mt7921_mcu_fw_log_2_host holding mt76 mutex (Jarod Wilson) [1937053] - mt76: improve mcu error logging (Jarod Wilson) [1937053] - mt76: mt7921: move hw configuration in mt7921_register_device (Jarod Wilson) [1937053] - mt76: mt7915: add support for applying pre-calibration data (Jarod Wilson) [1937053] - mt76: mt7615: load ROM patch before checking patch semaphore status (Jarod Wilson) [1937053] - mt76: mt7615: fix entering driver-own state on mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: fix hardware error recovery for mt7663 (Jarod Wilson) [1937053] - mt76: mt7921: add dumping Tx power table (Jarod Wilson) [1937053] - mt76: introduce single-sku support for mt7663/mt7921 (Jarod Wilson) [1937053] - mt76: mt7615: do not use mt7615 single-sku values for mt7663 (Jarod Wilson) [1937053] - mt76: mt7615: implement support for using DT rate power limits (Jarod Wilson) [1937053] - mt76: extend DT rate power limits to support 11ax devices (Jarod Wilson) [1937053] - mt76: add functions for parsing rate power limits from DT (Jarod Wilson) [1937053] - mt76: flush tx status queue on DMA reset (Jarod Wilson) [1937053] - mt76: mt7921: add mt7921_dma_cleanup in mt7921_unregister_device (Jarod Wilson) [1937053] - mt76: mt7615: use ieee80211_free_txskb() in mt7615_tx_token_put() (Jarod Wilson) [1937053] - mt76: mt7615: only free skbs after mt7615_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: only free skbs after mt7915_dma_reset() when reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix memleak when mt7915_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7615: fix memleak when mt7615_unregister_device() (Jarod Wilson) [1937053] - mt76: mt7915: fix rate setting of tx descriptor in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework mt7915_tm_set_tx_len() (Jarod Wilson) [1937053] - mt76: testmode: add support to send larger packet (Jarod Wilson) [1937053] - rtlwifi: implement set_tim by update beacon content (Jarod Wilson) [1937053] - rtw88: refine napi deinit flow (Jarod Wilson) [1937053] - rtw88: Fix potential unrecoverable tx queue stop (Jarod Wilson) [1937053] - rtw88: 8821c: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1937053] - rtw88: 8822c: debug: allow debugfs to enable/disable TXGAPK (Jarod Wilson) [1937053] - rtw88: 8822c: Add gap-k calibration to improve long range performance (Jarod Wilson) [1937053] - rtw88: 8822c: reorder macro position according to the register number (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd() (Jarod Wilson) [1937053] - cfg80211: scan: drop entry from hidden_list on overflow (Jarod Wilson) [1937053] - wireless: fix spelling of A-MSDU in HE capabilities (Jarod Wilson) [1937053] - wireless: align HE capabilities A-MPDU Length Exponent Extension (Jarod Wilson) [1937053] - wireless: align some HE capabilities with the spec (Jarod Wilson) [1937053] - mac80211: drop the connection if firmware crashed while in CSA (Jarod Wilson) [1937053] - nl80211: Add new RSNXE related nl80211 extended features (Jarod Wilson) [1937053] - mac80211: properly drop the connection in case of invalid CSA IE (Jarod Wilson) [1937053] - mac80211: make ieee80211_vif_to_wdev work when the vif isn't in the driver (Jarod Wilson) [1937053] - nl80211/cfg80211: add a flag to negotiate for LMR feedback in NDP ranging (Jarod Wilson) [1937053] - ieee80211: add the values of ranging parameters max LTF total field (Jarod Wilson) [1937053] - mac80211: aes_cmac: check crypto_shash_setkey() return value (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove extraneous indentation on if statement (Jarod Wilson) [1937053] - mac80211: properly process TXQ management frames (Jarod Wilson) [1937053] - cfg80211: constify ieee80211_get_response_rate return (Jarod Wilson) [1937053] - cfg80211: fix a few kernel-doc warnings (Jarod Wilson) [1937053] - cfg80211: fix an htmldoc warning (Jarod Wilson) [1937053] - rtw88: 8822c: add CFO tracking (Jarod Wilson) [1937053] - iwlwifi: pcie: don't enable BHs with IRQs disabled (Jarod Wilson) [1937053] - rtw88: Fix array overrun in rtw_get_tx_power_params() (Jarod Wilson) [1937053] - brcmfmac: Remove duplicate struct declaration (Jarod Wilson) [1937053] - rtw88: update statistics to fw for fine-tuning performance (Jarod Wilson) [1937053] - brcmfmac: A typo fix (Jarod Wilson) [1937053] - rtl8xxxu: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - mwifiex: Remove unneeded variable: "ret" (Jarod Wilson) [1937053] - rtl8xxxu: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mwifiex: don't print SSID to logs (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rtlwifi: Simplify locking of a skb list accesses (Jarod Wilson) [1937053] - rtlwifi: remove rtl_get_tid_h (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: remove redundant assignment of variable rtlpriv->btcoexist.reg_bt_sco (Jarod Wilson) [1937053] - rtlwifi: remove redundant assignment to variable err (Jarod Wilson) [1937053] - rtlwifi: Few mundane typo fixes (Jarod Wilson) [1937053] - rtlwifi: 8821ae: upgrade PHY and RF parameters (Jarod Wilson) [1937053] - iwlwifi: dbg: disable ini debug in 9000 family and below (Jarod Wilson) [1937053] - iwlwifi: pcie: Change ma product string name (Jarod Wilson) [1937053] - iwlwifi: fw: print out trigger delay when collecting data (Jarod Wilson) [1937053] - iwlwifi: trans/pcie: defer transport initialisation (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 63 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: don't WARN if we can't remove a time event (Jarod Wilson) [1937053] - iwlwifi: mvm: don't disconnect immediately if we don't hear beacons after CSA (Jarod Wilson) [1937053] - iwlwifi: rs-fw: don't support stbc for HE 160 (Jarod Wilson) [1937053] - iwlwifi: warn on SKB free w/o op-mode (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for version 3 of LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: add ISR debug info for msix debug (Jarod Wilson) [1937053] - iwlwifi: pcie: merge napi_poll_msix functions (Jarod Wilson) [1937053] - iwlwifi: mvm: don't lock mutex in RCU critical section (Jarod Wilson) [1937053] - iwlwifi: mvm: remove PS from lower rates. (Jarod Wilson) [1937053] - iwlwifi: mvm: umac error table mismatch (Jarod Wilson) [1937053] - iwlwifi: queue: avoid memory leak in reset flow (Jarod Wilson) [1937053] - iwlwifi: don't warn if we can't wait for empty tx queues (Jarod Wilson) [1937053] - iwlwifi: remove remaining software checksum code (Jarod Wilson) [1937053] - iwlwifi: remove TCM events (Jarod Wilson) [1937053] - iwlwifi: mvm: Use IWL_INFO in fw_reset_handshake() (Jarod Wilson) [1937053] - iwlwifi: mvm: refactor ACPI DSM evaluation function (Jarod Wilson) [1937053] - iwlwifi: mvm: support BIOS enable/disable for 11ax in Ukraine (Jarod Wilson) [1937053] - iwlwifi: move iwl_configure_rxq to be used by other op_modes (Jarod Wilson) [1937053] - iwlwifi: add new so-gf device (Jarod Wilson) [1937053] - iwlwifi: mvm: enable PPAG in China (Jarod Wilson) [1937053] - iwlwifi: mvm: Add support for 6GHz passive scan (Jarod Wilson) [1937053] - iwlwifi: add ax201 killer device (Jarod Wilson) [1937053] - iwlwifi: mvm: when associated with PMF, use protected NDP ranging negotiation (Jarod Wilson) [1937053] - iwlwifi: mvm: clean up queue sync implementation (Jarod Wilson) [1937053] - iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1937053] - iwlwifi: mvm: responder: support responder config command version 8 (Jarod Wilson) [1937053] - iwlwifi: mvm: support range request command version 12 (Jarod Wilson) [1937053] - iwlwifi: pcie: make cfg vs. trans_cfg more robust (Jarod Wilson) [1937053] - iwlwifi: pcie: clear only FH bits handle in the interrupt (Jarod Wilson) [1937053] - iwlwifi: add 160Mhz to killer 1550 name (Jarod Wilson) [1937053] - iwlwifi: change name to AX 211 and 411 family (Jarod Wilson) [1937053] - iwlwifi: change step in so-gf struct (Jarod Wilson) [1937053] - iwlwifi: pcie: Add support for Bz Family (Jarod Wilson) [1937053] - iwlwifi: mvm: don't allow CSA if we haven't been fully associated (Jarod Wilson) [1937053] - iwlwifi: pcie: normally grab NIC access for inflight-hcmd (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid unnecessarily taking spinlock (Jarod Wilson) [1937053] - iwlwifi: mvm: enable TX on new CSA channel before disconnecting (Jarod Wilson) [1937053] - mt76: mt7921: add rcu section in mt7921_mcu_tx_rate_report (Jarod Wilson) [1937053] - mt76: mt7921: introduce MCU_EVENT_LP_INFO event parsing (Jarod Wilson) [1937053] - mt76: mt7615: always add rx header translation tlv when adding stations (Jarod Wilson) [1937053] - mt76: mt7615: add missing SPDX tag in mmio.c (Jarod Wilson) [1937053] - mt76: mt7915: add mmio.c (Jarod Wilson) [1937053] - mt76: report Rx timestamp (Jarod Wilson) [1937053] - mt76: mt7921: remove 80+80 MHz support capabilities (Jarod Wilson) [1937053] - mt76: fix potential DMA mapping leak (Jarod Wilson) [1937053] - mt76: mt7921: reduce the data latency during hw scan (Jarod Wilson) [1937053] - mt76: mt7921: fix the insmod hangs (Jarod Wilson) [1937053] - mt76: mt7921: fix kernel crash when the firmware fails to download (Jarod Wilson) [1937053] - mt76: mt7921: fix the dwell time control (Jarod Wilson) [1937053] - mt76: mt7921: fix inappropriate WoW setup with the missing ARP informaiton (Jarod Wilson) [1937053] - mt76: mt7921: introduce MT_WFDMA_DUMMY_CR definition (Jarod Wilson) [1937053] - mt76: mt7915: add wifi subsystem reset (Jarod Wilson) [1937053] - mt76: mt7915: fix mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt7615: fix .add_beacon_offload() (Jarod Wilson) [1937053] - mt76: mt7921: rework mt7921_mcu_debug_msg_event routine (Jarod Wilson) [1937053] - mt76: mt7921: always wake the device in mt7921_remove_interface (Jarod Wilson) [1937053] - mt76: mt7921: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7915: fix txpower init for TSSI off chips (Jarod Wilson) [1937053] - mt76: mt7915: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: limit firmware log message printk to buffer length (Jarod Wilson) [1937053] - mt76: mt7615: fix chip reset on MT7622 and MT7663e (Jarod Wilson) [1937053] - mt76: mt7915: cleanup mcu tx queue in mt7915_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7915: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7615: keep mcu_add_bss_info enabled till interface removal (Jarod Wilson) [1937053] - mt76: mt7622: trigger hif interrupt for system reset (Jarod Wilson) [1937053] - mt76: mt7615: cleanup mcu tx queue in mt7615_dma_reset() (Jarod Wilson) [1937053] - mt76: mt7615: only enable DFS test knobs for mt7615 (Jarod Wilson) [1937053] - mt76: mt7921: properly configure rcpi adding a sta to the fw (Jarod Wilson) [1937053] - mt76: connac: introduce mt76_sta_cmd_info data structure (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_mac_wtbl_lmac_addr (Jarod Wilson) [1937053] - mt76: mt7915: refresh repeater entry MAC address when setting BSSID (Jarod Wilson) [1937053] - mt76: mt7915: fix key set/delete issue (Jarod Wilson) [1937053] - mt76: mt7921: remove duplicated macros in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove redundant check on type (Jarod Wilson) [1937053] - mt76: mt7921: remove leftovers from dbdc configuration (Jarod Wilson) [1937053] - mt76: mt7921: add wifi reset support (Jarod Wilson) [1937053] - mt76: dma: export mt76_dma_rx_cleanup routine (Jarod Wilson) [1937053] - mt76: dma: introduce mt76_dma_queue_reset routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce __mt7921_start utility routine (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921_run_firmware utility routine. (Jarod Wilson) [1937053] - mt76: introduce mcu_reset function pointer in mt76_mcu_ops structure (Jarod Wilson) [1937053] - mt76: mt7921: reduce mcu timeouts for suspend, offload and hif_ctrl msg (Jarod Wilson) [1937053] - mt76: mt7915: fix possible deadlock while mt7915_register_ext_phy() (Jarod Wilson) [1937053] - mt76: mt7615: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7663s: fix the possible device hang in high traffic (Jarod Wilson) [1937053] - mt76: mt7663s: make all of packets 4-bytes aligned in sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663: fix when beacon filter is being applied (Jarod Wilson) [1937053] - mt76: mt7615: check mcu returned values in mt7615_ops (Jarod Wilson) [1937053] - mt76: mt7915: check mcu returned values in mt7915_ops (Jarod Wilson) [1937053] - mt76: mt7915: fix txrate reporting (Jarod Wilson) [1937053] - mt76: mt7915: fix rxrate reporting (Jarod Wilson) [1937053] - mt76: mt76x0u: Add support for TP-Link T2UHP(UN) v1 (Jarod Wilson) [1937053] - mt76: mt7915: fix PHY mode for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7615: stop ext_phy queue when mac reset happens (Jarod Wilson) [1937053] - mt76: mt7615: fix CSA notification for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: add missing capabilities for DBDC (Jarod Wilson) [1937053] - mt76: mt7921: check mcu returned values in mt7921_start (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of the dynamic remap (Jarod Wilson) [1937053] - mt76: mt7921: fix the base of PCIe interrupt (Jarod Wilson) [1937053] - mt76: mt7921: get rid of mt7921_sta_rc_update routine (Jarod Wilson) [1937053] - mt76: check return value of mt76_txq_send_burst in mt76_txq_schedule_list (Jarod Wilson) [1937053] - mt76: connac: fix kernel warning adding monitor interface (Jarod Wilson) [1937053] - mt76: mt7915: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: fix mib stats counter reporting to mac80211 (Jarod Wilson) [1937053] - mt76: mt7615: remove hdr->fw_ver check (Jarod Wilson) [1937053] - mt76: mt7615: fix TSF configuration (Jarod Wilson) [1937053] - mt76: mt7921: fix stats register definitions (Jarod Wilson) [1937053] - mt76: mt7921: remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7915: fix aggr len debugfs node (Jarod Wilson) [1937053] - mt76: mt7921: fix aggr length histogram (Jarod Wilson) [1937053] - mt76: mt7615: fix memory leak in mt7615_coredump_work (Jarod Wilson) [1937053] - mt76: mt7615: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7615: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7615: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: connac: update sched_scan cmd usage (Jarod Wilson) [1937053] - mt76: mt7921: add flush operation (Jarod Wilson) [1937053] - mt76: mt7921: fixup rx bitrate statistics (Jarod Wilson) [1937053] - mt76: connac: fix up the setting for ht40 mode in mt76_connac_mcu_uni_add_bss (Jarod Wilson) [1937053] - mt76: mt7921: switch to new api for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: fix memory leak in mt7921_coredump_work (Jarod Wilson) [1937053] - mt76: mt7921: fix suspend/resume sequence (Jarod Wilson) [1937053] - mt76: use PCI_VENDOR_ID_MEDIATEK to avoid open coded (Jarod Wilson) [1937053] - mt76: mt7915: always check return value from mt7915_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: connac: always check return value from mt76_connac_mcu_alloc_wtbl_req (Jarod Wilson) [1937053] - mt76: mt76x0: disable GTK offloading (Jarod Wilson) [1937053] - mt76: always use WTBL_MAX_SIZE for tlv allocation (Jarod Wilson) [1937053] - mt76: mt7921: removed unused definitions in mcu.h (Jarod Wilson) [1937053] - mt76: mt7921: remove unnecessary variable (Jarod Wilson) [1937053] - mt76: mt7921: enable random mac addr during scanning (Jarod Wilson) [1937053] - mt76: mt7615: support loading EEPROM for MT7613BE (Jarod Wilson) [1937053] - mt76: mt7915: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix tx skb dma unmap (Jarod Wilson) [1937053] - mt76: mt7615: fix key set/delete issues (Jarod Wilson) [1937053] - mt76: mt7915: add support for rx decapsulation offload (Jarod Wilson) [1937053] - mt76: mt7915: add rx checksum offload support (Jarod Wilson) [1937053] - mt76: mt7915: enable hw rx-amsdu de-aggregation (Jarod Wilson) [1937053] - mt76: add support for 802.3 rx frames (Jarod Wilson) [1937053] - cfg80211: Remove wrong RNR IE validation check (Jarod Wilson) [1937053] - mac80211: bail out if cipher schemes are invalid (Jarod Wilson) [1937053] - mac80211: clear the beacon's CRC after channel switch (Jarod Wilson) [1937053] - mac80211: Set priority and queue mapping for injected frames (Jarod Wilson) [1937053] - mac80211: Allow concurrent monitor iface and ethernet rx decap (Jarod Wilson) [1937053] - nl80211: Add interface to indicate TDLS peer's HE capability (Jarod Wilson) [1937053] - cfg80211: allow specifying a reason for hw_rfkill (Jarod Wilson) [1937053] - nl80211: better document CMD_ROAM behavior (Jarod Wilson) [1937053] - mac80211: set sk_pacing_shift for 802.3 txpath (Jarod Wilson) [1937053] - mac80211: don't apply flow control on management frames (Jarod Wilson) [1937053] - nl80211: Add missing line in nl80211_fils_discovery_policy (Jarod Wilson) [1937053] - mac80211: remove redundant assignment of variable result (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove unused variable 'mg' in minstrel_ht_next_jump_rate() (Jarod Wilson) [1937053] - cfg80211: regulatory: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - rfkill: use DEFINE_SPINLOCK() for spinlock (Jarod Wilson) [1937053] - mt7601u: enable TDLS support (Jarod Wilson) [1937053] - mt7601u: fix always true expression (Jarod Wilson) [1937053] - rtw88: Fix an error code in rtw_debugfs_set_rsvd_page() (Jarod Wilson) [1937053] - rtw88: coex: fix A2DP stutters while WL busy + WL scan (Jarod Wilson) [1937053] - rtw88: 8822c: add LC calibration for RTL8822C (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit table to RF v40.1 (Jarod Wilson) [1937053] - rtw88: fix DIG min setting (Jarod Wilson) [1937053] - rtw88: add flush hci support (Jarod Wilson) [1937053] - rtw88: 8822c: support FW crash dump when FW crash (Jarod Wilson) [1937053] - rtw88: remove unnecessary variable (Jarod Wilson) [1937053] - rtw88: coex: add power off setting (Jarod Wilson) [1937053] - ath11k: Add support for STA to handle beacon miss (Jarod Wilson) [1937053] - ath11k: Update signal filled flag during sta_statistics drv op (Jarod Wilson) [1937053] - ath10k: skip the wait for completion to recovery in shutdown path (Jarod Wilson) [1937053] - ath11k: fix thermal temperature read (Jarod Wilson) [1937053] - ath11k: fix potential wmi_mgmt_tx_queue race condition (Jarod Wilson) [1937053] - ath11k: qmi: cosmetic changes to error messages (Jarod Wilson) [1937053] - ath11k: qmi: add more debug messages (Jarod Wilson) [1937053] - Revert "ath9k: fix ath_tx_process_buffer() potential null ptr dereference" (Jarod Wilson) [1937053] - ath11k: print hardware name and version during initialisation (Jarod Wilson) [1937053] - ath11k: Enable radar detection for 160MHz secondary segment (Jarod Wilson) [1937053] - ath11k: Fix sounding dimension config in HE cap (Jarod Wilson) [1937053] - ath11k: add qcn9074 pci device support (Jarod Wilson) [1937053] - ath11k: add extended interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add CE interrupt support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add data path support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add hal support for QCN9074 (Jarod Wilson) [1937053] - ath11k: add static window support for register access (Jarod Wilson) [1937053] - ath11k: Add qcn9074 mhi controller config (Jarod Wilson) [1937053] - ath11k: Update memory segment count for qcn9074 (Jarod Wilson) [1937053] - ath11k: qmi: increase the number of fw segments (Jarod Wilson) [1937053] - ath11k: Move qmi service_ins_id to hw_params (Jarod Wilson) [1937053] - ath11k: Refactor ath11k_msi_config (Jarod Wilson) [1937053] - ath11k: debugfs: Fix spelling mistake "Opportunies" -> "Opportunities" (Jarod Wilson) [1937053] - ath9k: fix ath_tx_process_buffer() potential null ptr dereference (Jarod Wilson) [1937053] - nl80211: fix beacon head validation (Jarod Wilson) [1937053] - nl80211: fix potential leak of ACL params (Jarod Wilson) [1937053] - cfg80211: check S1G beacon compat element length (Jarod Wilson) [1937053] - cfg80211: remove WARN_ON() in cfg80211_sme_connect (Jarod Wilson) [1937053] - mac80211: fix time-is-after bug in mlme (Jarod Wilson) [1937053] - mac80211: fix TXQ AC confusion (Jarod Wilson) [1937053] - rfkill: revert back to old userspace API by default (Jarod Wilson) [1937053] - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN (Jarod Wilson) [1937053] - iwlwifi: mvm: fix beacon protection checks (Jarod Wilson) [1937053] - iwlwifi: mvm: rfi: don't lock mvm->mutex when sending config command (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for So-F devices (Jarod Wilson) [1937053] - iwlwifi: fw: fix notification wait locking (Jarod Wilson) [1937053] - iwlwifi: add support for Qu with AX201 device (Jarod Wilson) [1937053] - iwlwifi: pcie: properly set LTR workarounds on 22000 devices (Jarod Wilson) [1937053] - iwlwifi: fix 11ax disabled bit in the regulatory capability flags (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix recently introduced deadlock issue (Jarod Wilson) [1937053] - mt76: mt7921: fix airtime reporting (Jarod Wilson) [1937053] - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd() (Jarod Wilson) [1937053] - mt76: mt7615: remove redundant dev_err call in mt7622_wmac_probe() (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - reg.c: Fix a spello (Jarod Wilson) [1937053] - mac80211: cfg.c: A typo fix (Jarod Wilson) [1937053] - wireless: remove never implemented MODULE_SUPPORTED_DEVICE (Jarod Wilson) [1937053] - wireless/nl80211: fix wdev_id may be used uninitialized (Jarod Wilson) [1937053] - nl80211: fix locking for wireless device netns change (Jarod Wilson) [1937053] - iwlwifi: don't call netif_napi_add() with rxq->lock held (was Re: Lockdep warning in iwl_pcie_rx_handle()) (Jarod Wilson) [1937053] - iwlwifi: fix ARCH=i386 compilation warnings (Jarod Wilson) [1937053] - iwlwifi: mvm: add terminate entry for dmi_system_id tables (Jarod Wilson) [1937053] - mt76: mt7915: fix unused 'mode' variable (Jarod Wilson) [1937053] - mt76: dma: do not report truncated frames to mac80211 (Jarod Wilson) [1937053] - mt76: mt7921: remove incorrect error handling (Jarod Wilson) [1937053] - iwlwifi: pcie: fix iwl_so_trans_cfg link error when CONFIG_IWLMVM is disabled (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: qmi: use pad to format dma_addr_t (Jarod Wilson) [1937053] - iwlwifi: avoid crash on unsupported debug collection (Jarod Wilson) [1937053] - mt76: mt7915: only modify tx buffer list after allocating tx token id (Jarod Wilson) [1937053] - mt76: fix tx skb error handling in mt76_dma_tx_queue_skb (Jarod Wilson) [1937053] - ath9k: fix transmitting to stations in dynamic SMPS mode (Jarod Wilson) [1937053] - redhat: Enable ath11k PCI device support (Jarod Wilson) [1937053] - soc: qcom: Do not depend on ARCH_QCOM for QMI helpers (Jarod Wilson) [1937053] - net: qrtr: Do not depend on ARCH_QCOM (Jarod Wilson) [1937053] - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case (Jarod Wilson) [1937053] - nl80211: add documentation for HT/VHT/HE disable attributes (Jarod Wilson) [1937053] - cfg80211/mac80211: Support disabling HE mode (Jarod Wilson) [1937053] - mac80211: add STBC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove sample rate switching code for constrained devices (Jarod Wilson) [1937053] - mac80211: minstrel_ht: show sampling rates in debugfs (Jarod Wilson) [1937053] - mac80211: minstrel_ht: significantly redesign the rate probing strategy (Jarod Wilson) [1937053] - mac80211: minstrel_ht: reduce the need to sample slower rates (Jarod Wilson) [1937053] - mac80211: minstrel_ht: update total packets counter in tx status path (Jarod Wilson) [1937053] - mac80211: minstrel_ht: use bitfields to encode rate indexes (Jarod Wilson) [1937053] - cfg80211: initialize reg_rule in __freq_reg_info() (Jarod Wilson) [1937053] - mac80211: fix potential overflow when multiplying to u32 integers (Jarod Wilson) [1937053] - mac80211: enable QoS support for nl80211 ctrl port (Jarod Wilson) [1937053] - cfg80211: remove unused callback (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (2/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_B (1/2) parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update RF_A parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: 8822c: update MAC/BB parameter tables to v60 (Jarod Wilson) [1937053] - rtw88: replace tx tasklet with work queue (Jarod Wilson) [1937053] - rtw88: add napi support (Jarod Wilson) [1937053] - rtw88: add rts condition (Jarod Wilson) [1937053] - rtw88: add dynamic rrsr configuration (Jarod Wilson) [1937053] - iwlwifi: remove incorrect comment in pnvm (Jarod Wilson) [1937053] - ath11k: qmi: add debug message for allocated memory segment addresses and sizes (Jarod Wilson) [1937053] - ath11k: pci: remove experimental warning (Jarod Wilson) [1937053] - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr() (Jarod Wilson) [1937053] - ath10k: change ath10k_offchan_tx_work() peer present msg to a warn (Jarod Wilson) [1937053] - ath9k: fix data bus crash when setting nf_override via debugfs (Jarod Wilson) [1937053] - ath11k: add support to configure spatial reuse parameter set (Jarod Wilson) [1937053] - ath10k: restore tx sk_buff of htt header for SDIO (Jarod Wilson) [1937053] - brcmsmac: Fix the spelling configation to configuration in the file d11.h (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 62 for AX devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: implement reading PNVM from UEFI (Jarod Wilson) [1937053] - iwlwifi: pnvm: move file loading code to a separate function (Jarod Wilson) [1937053] - iwlwifi: pnvm: increment the pointer before checking the TLV (Jarod Wilson) [1937053] - iwlwifi: pcie: define FW_RESET_TIMEOUT for clarity (Jarod Wilson) [1937053] - iwlwifi: pnvm: set the PNVM again if it was already loaded (Jarod Wilson) [1937053] - iwlwifi: mvm: global PM mode does not reset after FW crash (Jarod Wilson) [1937053] - iwlwifi: mvm: reduce the print severity of failing getting NIC temp (Jarod Wilson) [1937053] - iwlwifi: mvm: get NVM later in the mvm_start flow (Jarod Wilson) [1937053] - iwlmvm: set properly NIC_NOT_ACK_ENABLED flag (Jarod Wilson) [1937053] - iwlwifi: remove max_ht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: remove max_vht_ampdu_exponent config parameter (Jarod Wilson) [1937053] - iwlwifi: mvm: Check ret code for iwl_mvm_load_nvm_to_nic (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check if CSA event is running before removing (Jarod Wilson) [1937053] - iwlwifi: mvm: Support SCAN_CFG_CMD version 5 (Jarod Wilson) [1937053] - iwlwifi: mvm: isolate the get nvm flow (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify iwl_mvm_dbgfs_register (Jarod Wilson) [1937053] - iwlwifi: mvm: register to mac80211 last (Jarod Wilson) [1937053] - iwlwifi: acpi: add support for DSM RFI (Jarod Wilson) [1937053] - iwlwifi: mvm: add RFI-M support (Jarod Wilson) [1937053] - iwlwifi:mvm: Add support for version 2 of the LARI_CONFIG_CHANGE command. (Jarod Wilson) [1937053] - iwlwifi: pcie: don't crash when rx queues aren't allocated in interrupt (Jarod Wilson) [1937053] - iwlwifi: correction of group-id once sending REPLY_ERROR (Jarod Wilson) [1937053] - iwlwifi: pcie: add AX201 and AX211 radio modules for Ma devices (Jarod Wilson) [1937053] - iwlwifi: pcie: add CDB bit to the device configuration parsing (Jarod Wilson) [1937053] - iwlwifi: acpi: don't return valid pointer as an ERR_PTR (Jarod Wilson) [1937053] - iwlwifi: queue: add fake tx time point (Jarod Wilson) [1937053] - iwlwifi: remove flags argument for nic_access (Jarod Wilson) [1937053] - iwlwifi: declare support for triggered SU/MU beamforming feedback (Jarod Wilson) [1937053] - iwlwifi: dbg: add op_mode callback for collecting debug data. (Jarod Wilson) [1937053] - iwlwifi: api: clean up some documentation/bits (Jarod Wilson) [1937053] - iwlwifi: dbg: remove unsupported regions (Jarod Wilson) [1937053] - iwlwifi: pcie: Change Ma device ID (Jarod Wilson) [1937053] - iwlwifi: when HW has rate offload don't look at control field (Jarod Wilson) [1937053] - iwlwifi: pcie: NULLify pointers after free (Jarod Wilson) [1937053] - iwlwifi: mvm: assign SAR table revision to the command later (Jarod Wilson) [1937053] - iwlwifi: mvm: remove useless iwl_mvm_resume_d3() function (Jarod Wilson) [1937053] - iwlwifi: mvm: enhance a print in CSA flows (Jarod Wilson) [1937053] - iwlwifi: mvm: send stored PPAG command instead of local (Jarod Wilson) [1937053] - iwlwifi: mvm: store PPAG enabled/disabled flag properly (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the type we use in the PPAG table validity checks (Jarod Wilson) [1937053] - iwlwifi: acpi: fix PPAG table sizes (Jarod Wilson) [1937053] - iwlwifi: pcie: don't disable interrupts for reg_lock (Jarod Wilson) [1937053] - iwlwifi: pcie: add a few missing entries for So with Hr (Jarod Wilson) [1937053] - iwlwifi: dbg: Mark ucode tlv data as const (Jarod Wilson) [1937053] - iwlwifi: add new cards for So and Qu family (Jarod Wilson) [1937053] - ath11k: fix a locking bug in ath11k_mac_op_start() (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Simplify bool comparison (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: Simplify bool comparison (Jarod Wilson) [1937053] - brcmfmac: add support for CQM RSSI notifications (Jarod Wilson) [1937053] - ath10k: Add new debug level for sta related logs (Jarod Wilson) [1937053] - ath11k: Update tx descriptor search index properly (Jarod Wilson) [1937053] - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics (Jarod Wilson) [1937053] - ath10k: Fix suspicious RCU usage warning in ath10k_wmi_tlv_parse_peer_stats_info() (Jarod Wilson) [1937053] - wl3501: fix alignment constraints (Jarod Wilson) [1937053] - rt2800usb: add Sweex LW163V2 id's (Jarod Wilson) [1937053] - rt2x00: remove duplicate word and fix typo in comment (Jarod Wilson) [1937053] - mwifiex: Report connected BSS with cfg80211_connect_bss() (Jarod Wilson) [1937053] - rtl8xxxu: remove unused assignment value (Jarod Wilson) [1937053] - atmel: at76c50x: use DEFINE_MUTEX() for mutex lock (Jarod Wilson) [1937053] - brcmsmac: fix alignment constraints (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet (Jarod Wilson) [1937053] - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet (Jarod Wilson) [1937053] - rtw88: 8821c: support RFE type2 wifi NIC (Jarod Wilson) [1937053] - rtw88: 8821c: Correct CCK RSSI (Jarod Wilson) [1937053] - rtw88: coex: 8821c: correct antenna switch function (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove redundant initialization of variable rtstatus (Jarod Wilson) [1937053] - iwlwifi: pcie: Disable softirqs during Rx queue init (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 61 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: add Asus to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Microsoft to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add Samsung to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: add HP to the PPAG approved list (Jarod Wilson) [1937053] - iwlwifi: mvm: implement approved list for the PPAG feature (Jarod Wilson) [1937053] - iwlwifi: mvm: set enabled in the PPAG command properly (Jarod Wilson) [1937053] - iwlwifi: mvm: add debugfs entry to trigger a dump as any time-point (Jarod Wilson) [1937053] - iwlwifi: mvm: add tx fail time point (Jarod Wilson) [1937053] - iwlwifi: fwrt: add suspend/resume time point (Jarod Wilson) [1937053] - iwlwifi: mvm: add triggers for MLME events (Jarod Wilson) [1937053] - iwlwifi: mvm: add IML/ROM information for other HW families (Jarod Wilson) [1937053] - iwlwifi: mvm: fix CSA AP side (Jarod Wilson) [1937053] - iwlwifi: mvm: make iwl_mvm_tt_temp_changed() static (Jarod Wilson) [1937053] - iwlwifi: mvm: cancel the scan delayed work when scan is aborted (Jarod Wilson) [1937053] - iwlwifi: pcie: add support for SnJ with Hr1 (Jarod Wilson) [1937053] - iwlwifi: mvm: move early time-point before nvm_init in non-unified (Jarod Wilson) [1937053] - iwlwifi: add support for SnJ with Jf devices (Jarod Wilson) [1937053] - iwlwifi: move SnJ and So rules to the new tables (Jarod Wilson) [1937053] - iwlwifi: mvm: slightly clean up rs_fw_set_supp_rates() (Jarod Wilson) [1937053] - iwlwifi: fw api: make hdr a zero-size array again (Jarod Wilson) [1937053] - iwlwifi: bump FW API to 60 for AX devices (Jarod Wilson) [1937053] - iwlwifi: mvm: advertise BIGTK client support if available (Jarod Wilson) [1937053] - iwlwifi: always allow maximum A-MSDU on newer devices (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs: check length precisely in inject_packet (Jarod Wilson) [1937053] - iwlwifi: mvm: simplify TX power setting (Jarod Wilson) [1937053] - iwlwifi: tx: move handing sync/async host command to trans (Jarod Wilson) [1937053] - iwlwifi: mvm: add explicit check for non-data frames in get Tx rate (Jarod Wilson) [1937053] - iwlwifi: mvm: debugfs for phy-integration-ver (Jarod Wilson) [1937053] - iwlwifi: parse phy integration string from FW TLV (Jarod Wilson) [1937053] - iwlwifi: mvm: csa: do not abort CSA before disconnect (Jarod Wilson) [1937053] - iwlwifi: mvm: don't send commands during suspend\resume transition (Jarod Wilson) [1937053] - iwlwifi: mvm: don't check system_pm_mode without mutex held (Jarod Wilson) [1937053] - iwlwifi: remove TRANS_PM_OPS (Jarod Wilson) [1937053] - iwlwifi: dbg: dump paged memory from index 1 (Jarod Wilson) [1937053] - iwl-trans: iwlwifi: move sync NMI logic to trans (Jarod Wilson) [1937053] - iwlwifi: pcie: properly implement NAPI (Jarod Wilson) [1937053] - iwlwifi: mvm: add support for new flush queue response (Jarod Wilson) [1937053] - iwlwifi: mvm: handle CCA-EXT delay firmware notification (Jarod Wilson) [1937053] - iwlwifi: mvm: scan: fix scheduled scan restart handling (Jarod Wilson) [1937053] - iwlwifi: mvm: remove debugfs injection limitations (Jarod Wilson) [1937053] - iwlwifi: mvm: check more notification sizes (Jarod Wilson) [1937053] - iwlwifi: mvm: add notification size checks (Jarod Wilson) [1937053] - ath11k: remove h from printk format specifier (Jarod Wilson) [1937053] - ath10k: remove h from printk format specifier (Jarod Wilson) [1937053] - cfg80211: fix netdev registration deadlock (Jarod Wilson) [1937053] - mac80211: fix station rate table updates on assoc (Jarod Wilson) [1937053] - mt76: mt7663: introduce coredump support (Jarod Wilson) [1937053] - mt76: mt7921: add coredump support (Jarod Wilson) [1937053] - mt76: mt7921: enable MSI interrupts (Jarod Wilson) [1937053] - mt76: mt7921: introduce regdomain notifier support (Jarod Wilson) [1937053] - mt76: mt7921: introduce Runtime PM support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for suspend and WoW support (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu module for sched_scan and hw_scan (Jarod Wilson) [1937053] - mt76: mt7921: rely on mt76_connac_mcu common library (Jarod Wilson) [1937053] - mt76: mt7921: introduce PM support (Jarod Wilson) [1937053] - mt76: mt7921: introduce beacon_loss mcu event (Jarod Wilson) [1937053] - mt76: mt7921: introduce support for hardware beacon filter (Jarod Wilson) [1937053] - mt76: mt7921: introduce 802.11 PS support in sta mode (Jarod Wilson) [1937053] - mt76: mt7921: introduce schedule scan support (Jarod Wilson) [1937053] - mt76: mt7921: add debugfs support (Jarod Wilson) [1937053] - mt76: mt7921: introduce mt7921e support (Jarod Wilson) [1937053] - mt76: mt7921: add ieee80211_ops (Jarod Wilson) [1937053] - mt76: mt7921: add EEPROM support (Jarod Wilson) [1937053] - mt76: mt7921: add DMA support (Jarod Wilson) [1937053] - mt76: mt7921: add MCU support (Jarod Wilson) [1937053] - mt76: mt7921: add MAC support (Jarod Wilson) [1937053] - wireless: Fix "ordering" comment typos (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm utility routines in mt76_connac_lib module (Jarod Wilson) [1937053] - mt76: mt76_connac: move pm data struct in mt76_connac.h (Jarod Wilson) [1937053] - mt76: mt76_connac: move WoW and suspend code in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: move hw_scan and sched_scan routine in mt76_connac_mcu module (Jarod Wilson) [1937053] - mt76: mt76_connac: create mcu library (Jarod Wilson) [1937053] - mt76: introduce mt76_vif data structure (Jarod Wilson) [1937053] - cfg80211: call cfg80211_destroy_ifaces() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_set_encryption() with wiphy lock held (Jarod Wilson) [1937053] - wext: call cfg80211_change_iface() with wiphy lock held (Jarod Wilson) [1937053] - nl80211: call cfg80211_dev_rename() under RTNL (Jarod Wilson) [1937053] - mt76: dma: fix a possible memory leak in mt76_add_fragment() (Jarod Wilson) [1937053] - ath9k: fix build error with LEDS_CLASS=m (Jarod Wilson) [1937053] - ath10k: fix wmi mgmt tx queue full due to race condition (Jarod Wilson) [1937053] - ath10k: pass the ssid info to get the correct bss entity (Jarod Wilson) [1937053] - ath10k: allow dynamic SAR power limits via common API (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix regression in the max_prob_rate fix (Jarod Wilson) [1937053] - mt76: mt7615: reduce VHT maximum MPDU length (Jarod Wilson) [1937053] - mt76: reduce q->lock hold time (Jarod Wilson) [1937053] - mt76: usb: process URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt76: move vif_mask back from mt76_phy to mt76_dev (Jarod Wilson) [1937053] - mt76: mt7915: make vif index per adapter instead of per band (Jarod Wilson) [1937053] - mt76: mt7915: add support for using a secondary PCIe link for gen1 (Jarod Wilson) [1937053] - mt76: fix crash on tearing down ext phy (Jarod Wilson) [1937053] - mt76: mt7915: bring up the WA event rx queue for band1 (Jarod Wilson) [1937053] - mt76: mt7615: unify init work (Jarod Wilson) [1937053] - mt76: mt7915: support TxBF for DBDC (Jarod Wilson) [1937053] - mt76: mt7915: Remove unneeded semicolon (Jarod Wilson) [1937053] - mt76: mt7615: set mcu country code in mt7615_mcu_set_channel_domain() (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom DBDC band selection (Jarod Wilson) [1937053] - mt76: mt7915: fix eeprom parsing for DBDC (Jarod Wilson) [1937053] - iwlwifi: provide gso_type to GSO packets (Jarod Wilson) [1937053] - mt76: mt7915: disable RED support in the WA firmware (Jarod Wilson) [1937053] - mt76: mt7915: rework mcu API (Jarod Wilson) [1937053] - mt76: mt7915: do not set DRR group for stations (Jarod Wilson) [1937053] - mt76: mt7915: ensure that init work completes before starting the device (Jarod Wilson) [1937053] - mt76: mt7603: fix ED/CCA monitoring with single-stream devices (Jarod Wilson) [1937053] - mt76: mt7915: add implicit Tx beamforming support (Jarod Wilson) [1937053] - mt76: mt7915: simplify peer's TxBF capability check (Jarod Wilson) [1937053] - mt76: mt7615: mt7915: disable txpower sku when testmode enabled (Jarod Wilson) [1937053] - mt76: mt7915: add support for continuous tx in testmode (Jarod Wilson) [1937053] - mt76: mt7915: rework set state part in testmode (Jarod Wilson) [1937053] - mt76: testmode: add a new state for continuous tx (Jarod Wilson) [1937053] - mt76: mt7915: clean hw queue before starting new testmode tx (Jarod Wilson) [1937053] - mt76: mt7915: calculate new packet length when tx_time is set in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support for ipg in testmode (Jarod Wilson) [1937053] - mt76: mt7915: split edca update function (Jarod Wilson) [1937053] - mt76: testmode: make tx queued limit adjustable (Jarod Wilson) [1937053] - mt76: testmode: add attributes for ipg related parameters (Jarod Wilson) [1937053] - mt76: testmode: add support to set user-defined spe index (Jarod Wilson) [1937053] - mt76: mt7915: force ldpc for bw larger than 20MHz in testmode (Jarod Wilson) [1937053] - mt76: move chainmask in mt76_phy (Jarod Wilson) [1937053] - mt76: move mac_work in mt76_core module (Jarod Wilson) [1937053] - mt76: mt7615: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: mt7915: move testmode data from dev to phy (Jarod Wilson) [1937053] - mt76: testmode: move mtd part to mt76_dev (Jarod Wilson) [1937053] - mt76: testmode: introduce dbdc support (Jarod Wilson) [1937053] - mt76: mt7915: add partial add_bss_info command on testmode init (Jarod Wilson) [1937053] - mt76: mt7915: drop zero-length packet to avoid Tx hang (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_mcu_send_message routine (Jarod Wilson) [1937053] - mt76: mt7915: fix endianness warning in mt7915_mcu_set_radar_th (Jarod Wilson) [1937053] - mt76: mt7915: add support for flash mode (Jarod Wilson) [1937053] - mt76: mt7915: run mt7915_configure_filter holding mt76 mutex (Jarod Wilson) [1937053] - mt76: mt7915: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: convert comma to semicolon (Jarod Wilson) [1937053] - mt76: mt7615: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: reset token when mac_reset happens (Jarod Wilson) [1937053] - mt76: mt7915: fix MT_CIPHER_BIP_CMAC_128 setkey (Jarod Wilson) [1937053] - mt76: mt7615: add vif check in mt7615_update_vif_beacon() (Jarod Wilson) [1937053] - mt76: mt7915: add vif check in mt7915_update_vif_beacon() (Jarod Wilson) [1937053] - ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL pointer (Jarod Wilson) [1937053] - mac80211: pause TX while changing interface type (Jarod Wilson) [1937053] - wext: fix NULL-ptr-dereference with cfg80211's lack of commit() (Jarod Wilson) [1937053] - cfg80211: avoid holding the RTNL when calling the driver (Jarod Wilson) [1937053] - iwl4965: do not process non-QOS frames on txq->sched_retry path (Jarod Wilson) [1937053] - mt7601u: process tx URBs with status EPROTO properly (Jarod Wilson) [1937053] - mt7601u: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - rtw88: 8723de: adjust the LTR setting (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl8192c-common: fix bool comparison in expressions (Jarod Wilson) [1937053] - rtlwifi: rtl_pci: fix bool comparison in expressions (Jarod Wilson) [1937053] - mt7601u: fix kernel crash unplugging the device (Jarod Wilson) [1937053] - iwlwifi: queue: bail out on invalid freeing (Jarod Wilson) [1937053] - iwlwifi: mvm: guard against device removal in reprobe (Jarod Wilson) [1937053] - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit. (Jarod Wilson) [1937053] - iwlwifi: mvm: clear IN_D3 after wowlan status cmd (Jarod Wilson) [1937053] - iwlwifi: pcie: add rules to match Qu with Hr2 (Jarod Wilson) [1937053] - iwlwifi: mvm: invalidate IDs of internal stations at mvm start (Jarod Wilson) [1937053] - iwlwifi: mvm: fix the return type for DSM functions 1 and 2 (Jarod Wilson) [1937053] - iwlwifi: pcie: reschedule in long-running memory reads (Jarod Wilson) [1937053] - iwlwifi: pcie: use jiffies for memory read spin time limit (Jarod Wilson) [1937053] - iwlwifi: pcie: fix context info memory leak (Jarod Wilson) [1937053] - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap (Jarod Wilson) [1937053] - iwlwifi: pcie: set LTR on more devices (Jarod Wilson) [1937053] - iwlwifi: queue: don't crash if txq->entries is NULL (Jarod Wilson) [1937053] - iwlwifi: fix the NMI flow for old devices (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't try to load after failures (Jarod Wilson) [1937053] - iwlwifi: pnvm: don't skip everything when not reloading (Jarod Wilson) [1937053] - iwlwifi: pcie: avoid potential PNVM leaks (Jarod Wilson) [1937053] - iwlwifi: mvm: take mutex for calling iwl_mvm_get_sync_time() (Jarod Wilson) [1937053] - iwlwifi: mvm: skip power command when unbinding vif during CSA (Jarod Wilson) [1937053] - cfg80211: change netdev registration/unregistration semantics (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix rounding error in throughput calculation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: increase stats update interval (Jarod Wilson) [1937053] - mac80211: minstrel_ht: fix max probability rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve sample rate selection (Jarod Wilson) [1937053] - mac80211: minstrel_ht: improve ampdu length estimation (Jarod Wilson) [1937053] - mac80211: minstrel_ht: remove old ewma based rate average code (Jarod Wilson) [1937053] - mac80211: remove legacy minstrel rate control (Jarod Wilson) [1937053] - mac80211: minstrel_ht: add support for OFDM rates on non-HT clients (Jarod Wilson) [1937053] - mac80211: minstrel_ht: clean up CCK code (Jarod Wilson) [1937053] - mac80211: introduce aql_enable node in debugfs (Jarod Wilson) [1937053] - cfg80211: Add phyrate conversion support for extended MCS in 60GHz band (Jarod Wilson) [1937053] - cfg80211: add VHT rate entries for MCS-10 and MCS-11 (Jarod Wilson) [1937053] - mac80211: reduce peer HE MCS/NSS to own capabilities (Jarod Wilson) [1937053] - mac80211: remove NSS number of 160MHz if not support 160MHz for HE (Jarod Wilson) [1937053] - mac80211: 160MHz with extended NSS BW in CSA (Jarod Wilson) [1937053] - mac80211: add LDPC encoding to ieee80211_parse_tx_radiotap (Jarod Wilson) [1937053] - mac80211: add rx decapsulation offload support (Jarod Wilson) [1937053] - ath10k: remove unused struct ath10k::dev_type (Jarod Wilson) [1937053] - ath11k: remove duplicate function declaration (Jarod Wilson) [1937053] - ath10k: increase rx buffer size to 2048 (Jarod Wilson) [1937053] - ath10k: sanitity check for ep connectivity (Jarod Wilson) [1937053] - mt76: mt7663s: fix rx buffer refcounting (Jarod Wilson) [1937053] - mt7601u: fix rx buffer refcounting (Jarod Wilson) [1937053] - mac80211: check if atf has been disabled in __ieee80211_schedule_txq (Jarod Wilson) [1937053] - mac80211: do not drop tx nulldata packets on encrypted links (Jarod Wilson) [1937053] - mac80211: fix encryption key selection for 802.3 xmit (Jarod Wilson) [1937053] - mac80211: fix fast-rx encryption check (Jarod Wilson) [1937053] - mac80211: fix incorrect strlen of .write in debugfs (Jarod Wilson) [1937053] - cfg80211: fix a kerneldoc markup (Jarod Wilson) [1937053] - brcmfmac: clear EAP/association status bits on linkdown events (Jarod Wilson) [1937053] - brcmfmac: Delete useless kfree code (Jarod Wilson) [1937053] - mt7601u: check the status of device in calibration (Jarod Wilson) [1937053] - mt7601u: process URBs in status EPROTO properly (Jarod Wilson) [1937053] - brcmfmac: support BCM4365E with 43666 ChipCommon chip ID (Jarod Wilson) [1937053] - mwifiex: pcie: Drop bogus __refdata annotation (Jarod Wilson) [1937053] - rtw88: Simplify bool comparison (Jarod Wilson) [1937053] - rtw88: coex: set 4 slot TDMA for BT link and WL busy (Jarod Wilson) [1937053] - rtw88: 8821c: apply CCK PD level which calculates from dynamic mechanism (Jarod Wilson) [1937053] - rtw88: reduce the log level for failure of tx report (Jarod Wilson) [1937053] - rtw88: Delete useless kfree code (Jarod Wilson) [1937053] - iwlwifi: dbg: Don't touch the tlv data (Jarod Wilson) [1937053] - mt76: Fix queue ID variable types after mcu queue split (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain with a lock (Jarod Wilson) [1937053] - cfg80211/mac80211: fix kernel-doc for SAR APIs (Jarod Wilson) [1937053] - mt76: mt7915: fix MESH ifdef block (Jarod Wilson) [1937053] - mt76: mt76s: fix NULL pointer dereference in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: sdio: remove wake logic in mt76s_process_tx_queue (Jarod Wilson) [1937053] - mt76: usb: remove wake logic in mt76u_status_worker (Jarod Wilson) [1937053] - ath11k: dp: clean up a variable name (Jarod Wilson) [1937053] - ath11k: pci: remove unnecessary mask in ath11k_pci_enable_ltssm() (Jarod Wilson) [1937053] - ath11k: pci: disable ASPM L0sLs before downloading firmware (Jarod Wilson) [1937053] - ath11k: qmi: try to allocate a big block of DMA memory first (Jarod Wilson) [1937053] - rtlwifi: rise completion at the last step of firmware callback (Jarod Wilson) [1937053] - mt76: mt76u: fix NULL pointer dereference in mt76u_status_worker (Jarod Wilson) [1937053] - ath10k: prevent deinitializing NAPI twice (Jarod Wilson) [1937053] - ath9k: Postpone key cache entry deletion for TXQ frames reference it (Jarod Wilson) [1937053] - ath: Modify ath_key_delete() to not need full key entry (Jarod Wilson) [1937053] - ath: Export ath_hw_keysetmac() (Jarod Wilson) [1937053] - ath9k: Clear key cache explicitly on disabling hardware (Jarod Wilson) [1937053] - ath: Use safer key clearing with key cache entries (Jarod Wilson) [1937053] - ath10k: Remove voltage regulator votes during wifi disable (Jarod Wilson) [1937053] - ath10k: Fix error handling in case of CE pipe init failure (Jarod Wilson) [1937053] - ath11k: Fix ath11k_pci_fix_l1ss() (Jarod Wilson) [1937053] - ath11k: Fix error code in ath11k_core_suspend() (Jarod Wilson) [1937053] - ath11k: start vdev if a bss peer is already created (Jarod Wilson) [1937053] - ath11k: fix crash caused by NULL rx_channel (Jarod Wilson) [1937053] - ath11k: add missing null check on allocated skb (Jarod Wilson) [1937053] - ath9k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: make relay callbacks const (Jarod Wilson) [1937053] - ath10k: make relay callbacks const (Jarod Wilson) [1937053] - ath11k: implement suspend for QCA6390 PCI devices (Jarod Wilson) [1937053] - ath11k: hif: add ce irq enable and disable functions (Jarod Wilson) [1937053] - ath11k: implement WoW enable and wakeup commands (Jarod Wilson) [1937053] - ath11k: set credit_update flag for flow controlled ep only (Jarod Wilson) [1937053] - ath11k: dp: stop rx pktlog before suspend (Jarod Wilson) [1937053] - ath11k: htc: implement suspend handling (Jarod Wilson) [1937053] - ath11k: htc: remove unused struct ath11k_htc_ops (Jarod Wilson) [1937053] - ath11k: pci: read select_window register to ensure write is finished (Jarod Wilson) [1937053] - ath11k: hif: implement suspend and resume functions (Jarod Wilson) [1937053] - ath11k: mhi: hook suspend and resume (Jarod Wilson) [1937053] - ath11k: Fix incorrect tlvs in scan start command (Jarod Wilson) [1937053] - ath11k: pci: disable VDD4BLOW (Jarod Wilson) [1937053] - ath11k: pci: fix L1ss clock unstable problem (Jarod Wilson) [1937053] - ath11k: pci: fix hot reset stability issues (Jarod Wilson) [1937053] - ath11k: put hw to DBS using WMI_PDEV_SET_HW_MODE_CMDID (Jarod Wilson) [1937053] - ath11k: mhi: print a warning if firmware crashed (Jarod Wilson) [1937053] - ath11k: use MHI provided APIs to allocate and free MHI controller (Jarod Wilson) [1937053] - ath10k: add atomic protection for device recovery (Jarod Wilson) [1937053] - ath10k: add option for chip-id based BDF selection (Jarod Wilson) [1937053] - mt76: remove unused variable q (Jarod Wilson) [1937053] - mac80211: add ieee80211_set_sar_specs (Jarod Wilson) [1937053] - nl80211: add common API to configure SAR power limitations (Jarod Wilson) [1937053] - mac80211: fix a mistake check for rx_stats update (Jarod Wilson) [1937053] - mac80211: mlme: save ssid info to ieee80211_bss_conf while assoc (Jarod Wilson) [1937053] - mac80211: Update rate control on channel change (Jarod Wilson) [1937053] - mac80211: don't filter out beacons once we start CSA (Jarod Wilson) [1937053] - mac80211: Fix calculation of minimal channel width (Jarod Wilson) [1937053] - mac80211: ignore country element TX power on 6 GHz (Jarod Wilson) [1937053] - mac80211: use bitfield helpers for BA session action frames (Jarod Wilson) [1937053] - mac80211: support Rx timestamp calculation for all preamble types (Jarod Wilson) [1937053] - mac80211: don't set set TDLS STA bandwidth wider than possible (Jarod Wilson) [1937053] - mac80211: support driver-based disconnect with reconnect hint (Jarod Wilson) [1937053] - cfg80211: support immediate reconnect request hint (Jarod Wilson) [1937053] - mac80211: use struct assignment for he_obss_pd (Jarod Wilson) [1937053] - cfg80211: remove struct ieee80211_he_bss_color (Jarod Wilson) [1937053] - nl80211: validate key indexes for cfg80211_registered_device (Jarod Wilson) [1937053] - cfg80211: include block-tx flag in channel switch started event (Jarod Wilson) [1937053] - mac80211: disallow band-switch during CSA (Jarod Wilson) [1937053] - ieee80211: update reduced neighbor report TBTT info length (Jarod Wilson) [1937053] - cfg80211: Save the regulatory domain when setting custom regulatory (Jarod Wilson) [1937053] - nl80211: always accept scan request with the duration set (Jarod Wilson) [1937053] - cfg80211: Update TSF and TSF BSSID for multi BSS (Jarod Wilson) [1937053] - cfg80211: scan PSC channels in case of scan with wildcard SSID (Jarod Wilson) [1937053] - mac80211: Skip entries with SAE H2E only membership selector (Jarod Wilson) [1937053] - cfg80211: Parse SAE H2E only membership selector (Jarod Wilson) [1937053] - mac80211: support MIC error/replay detected counters driver update (Jarod Wilson) [1937053] - mac80211: he: remove non-bss-conf fields from bss_conf (Jarod Wilson) [1937053] - mac80211: remove trailing semicolon in macro definitions (Jarod Wilson) [1937053] - nl80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mac80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - cfg80211: fix callback type mismatches in wext-compat (Jarod Wilson) [1937053] - net: wireless: make a const array static, makes object smaller (Jarod Wilson) [1937053] - net: mac80211: use core API for updating TX/RX stats (Jarod Wilson) [1937053] - rfkill: add a reason to the HW rfkill state (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix ofdm power compensation (Jarod Wilson) [1937053] - ath9k_htc: adhere to the DONT_REORDER transmit flag (Jarod Wilson) [1937053] - ath11k: mesh: add support for 256 bitmap in blockack frames in 11ax (Jarod Wilson) [1937053] - ath11k: support TXOP duration based RTS threshold (Jarod Wilson) [1937053] - ath11k: fix incorrect wmi param for configuring HE operation (Jarod Wilson) [1937053] - ath11k: unlock on error path in ath11k_mac_op_add_interface() (Jarod Wilson) [1937053] - ath11k: fix rmmod failure if qmi sequence fails (Jarod Wilson) [1937053] - rtw88: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - rt2x00: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - ath11k: pci: add MODULE_FIRMWARE macros (Jarod Wilson) [1937053] - rtw88: reduce polling time of IQ calibration (Jarod Wilson) [1937053] - rtw88: fix multiple definition of rtw_pm_ops (Jarod Wilson) [1937053] - brcmfmac: remove redundant assignment to pointer 'entry' (Jarod Wilson) [1937053] - rtw88: declare hw supports ch 144 (Jarod Wilson) [1937053] - rtw88: coex: fix missing unitialization of variable 'interval' (Jarod Wilson) [1937053] - mwifiex: change license text of Makefile and README from MARVELL to NXP (Jarod Wilson) [1937053] - rtw88: pci: Add prototypes for .probe, .remove and .shutdown (Jarod Wilson) [1937053] - ath9k: remove trailing semicolon in macro definition (Jarod Wilson) [1937053] - ath11k: Ignore resetting peer auth flag in peer assoc cmd (Jarod Wilson) [1937053] - ath11k: add 64bit check before reading msi high addr (Jarod Wilson) [1937053] - ath10k: fix a check patch warning returnNonBoolInBooleanFunction of sdio.c (Jarod Wilson) [1937053] - mac80211: mesh: fix mesh_pathtbl_init() error path (Jarod Wilson) [1937053] - mt76: mt7615: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - mt76: mt7915: fix ht mcs in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: attempt to free up more room when filling the tx queue (Jarod Wilson) [1937053] - mt76: mt7915: stop queues when running out of tx tokens (Jarod Wilson) [1937053] - mt76: improve tx queue stop/wake (Jarod Wilson) [1937053] - mt76: mt7915: fix memory leak in mt7915_mcu_get_rx_rate() (Jarod Wilson) [1937053] - mt76: mt7615: fix rdd mcu cmd endianness (Jarod Wilson) [1937053] - mt76: mt7915: fix endian issues (Jarod Wilson) [1937053] - mt76: mt7915: get rid of dbdc debugfs knob (Jarod Wilson) [1937053] - mt76: mt7915: introduce dbdc support (Jarod Wilson) [1937053] - mt76: move hw mac_addr in mt76_phy (Jarod Wilson) [1937053] - mt76: move band allocation in mt76_register_phy (Jarod Wilson) [1937053] - mt76: rely on mt76_phy in mt76_init_sband_2g and mt76_init_sband_5g (Jarod Wilson) [1937053] - mt76: move band capabilities in mt76_phy (Jarod Wilson) [1937053] - mt76: move tx hw data queues in mt76_phy (Jarod Wilson) [1937053] - mt76: move mcu queues to mt76_dev q_mcu array (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb_raw signature (Jarod Wilson) [1937053] - mt76: introduce mt76_init_mcu_queue utility routine (Jarod Wilson) [1937053] - mt76: rely on mt76_queue in tx_queue_skb signature (Jarod Wilson) [1937053] - mt76: dma: rely on mt76_queue in mt76_dma_tx_cleanup signature (Jarod Wilson) [1937053] - mt76: mt7663s: rely on mt76_queue in mt7663s_tx_run_queue signature (Jarod Wilson) [1937053] - mt76: sdio: rely on mt76_queue in mt76s_process_tx_queue signature (Jarod Wilson) [1937053] - mt76: sdio: introduce mt76s_alloc_tx_queue (Jarod Wilson) [1937053] - mt76: move mt76_init_tx_queue in common code (Jarod Wilson) [1937053] - mt76: mt7915: rely on eeprom definitions (Jarod Wilson) [1937053] - mt76: mt7615: refactor usb/sdio rate code (Jarod Wilson) [1937053] - mt76: mt7615: support 16 interfaces (Jarod Wilson) [1937053] - mt76: mt7915: remove unused mt7915_mcu_bss_sync_tlv() (Jarod Wilson) [1937053] - mt76: mt7915: use BIT_ULL for omac_idx (Jarod Wilson) [1937053] - mt76: mt7915: make mt7915_eeprom_read static (Jarod Wilson) [1937053] - mt76: mt7915: add support to set tx frequency offset in testmode (Jarod Wilson) [1937053] - mt76: mt7915: add support to set txpower in testmode (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode rx support (Jarod Wilson) [1937053] - mt76: mt7915: implement testmode tx support (Jarod Wilson) [1937053] - mt76: testmode: add support for HE rate modes (Jarod Wilson) [1937053] - mt76: mt7915: fix tx rate related fields in tx descriptor (Jarod Wilson) [1937053] - mt76: testmode: add support for LTF and GI combinations for HE mode (Jarod Wilson) [1937053] - mt76: testmode: add tx_rate_stbc parameter (Jarod Wilson) [1937053] - mt76: testmode: add snr attribute in rx statistics (Jarod Wilson) [1937053] - mt76: testmode: switch ib and wb rssi to array type for per-antenna report (Jarod Wilson) [1937053] - mt76: mt76u: use dedicated thread for status work (Jarod Wilson) [1937053] - mt76: mt76u: rely on woker APIs for rx work (Jarod Wilson) [1937053] - mt76: mt7615: run key configuration in mt7615_set_key for usb/sdio devices (Jarod Wilson) [1937053] - mt76: fix tkip configuration for mt7615/7663 devices (Jarod Wilson) [1937053] - mt76: switch to wep sw crypto for mt7615/mt7915 (Jarod Wilson) [1937053] - mt76: mt7663s: introduce WoW support via GPIO (Jarod Wilson) [1937053] - mt76: move mt76_mcu_send_firmware in common module (Jarod Wilson) [1937053] - mt76: mt7603: add additional EEPROM chip ID (Jarod Wilson) [1937053] - mt76: fix memory leak if device probing fails (Jarod Wilson) [1937053] - mt76: mt7915: fix sparse warning cast from restricted __le16 (Jarod Wilson) [1937053] - mt76: dma: fix possible deadlock running mt76_dma_cleanup (Jarod Wilson) [1937053] - mt76: set fops_tx_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: mt7915: rename mt7915_mcu_get_rate_info to mt7915_mcu_get_tx_rate (Jarod Wilson) [1937053] - mt76: mt7915: update ppe threshold (Jarod Wilson) [1937053] - mt76: mt7915: set fops_sta_stats.owner to THIS_MODULE (Jarod Wilson) [1937053] - mt76: sdio: get rid of sched.lock (Jarod Wilson) [1937053] - mt76: mt7663s: fix a possible ple quota underflow (Jarod Wilson) [1937053] - mt76: mt7663s: get rid of mt7663s_sta_add (Jarod Wilson) [1937053] - mt76: mt7615: introduce quota debugfs node for mt7663s (Jarod Wilson) [1937053] - mt76: mt7615: enable beacon filtering by default for offload fw (Jarod Wilson) [1937053] - mt76: add back the SUPPORTS_REORDERING_BUFFER flag (Jarod Wilson) [1937053] - mt76: mt7915: query station rx rate from firmware (Jarod Wilson) [1937053] - mt76: mt7915: move eeprom parsing out of mt7915_mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement functions to get the response skb for MCU calls (Jarod Wilson) [1937053] - mt76: mt7603: switch to .mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: make mcu_ops->mcu_send_msg optional (Jarod Wilson) [1937053] - mt76: move waiting and locking out of mcu_ops->mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: move mcu timeout handling to .mcu_parse_response (Jarod Wilson) [1937053] - mt76: implement .mcu_parse_response in struct mt76_mcu_ops (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_skb_send_msg to mt76_mcu_skb_send_msg (Jarod Wilson) [1937053] - mt76: rename __mt76_mcu_send_msg to mt76_mcu_send_msg (Jarod Wilson) [1937053] - mt76: mt7915: disable OFDMA/MU-MIMO UL (Jarod Wilson) [1937053] - mt76: mt7915: fix DRR sta bss group index (Jarod Wilson) [1937053] - mt76: mt7915: use napi_consume_skb to bulk-free tx skbs (Jarod Wilson) [1937053] - mt76: mt7915: fix processing txfree events (Jarod Wilson) [1937053] - mt76: mt7915: support 32 station interfaces (Jarod Wilson) [1937053] - mt76: do not set NEEDS_UNIQUE_STA_ADDR for 7615 and 7915 (Jarod Wilson) [1937053] - mt76: mt7615: add debugfs knob for setting extended local mac addresses (Jarod Wilson) [1937053] - mt76: use ieee80211_rx_list to pass frames to the network stack as a batch (Jarod Wilson) [1937053] - mt76: mt7915: add encap offload for 4-address mode stations (Jarod Wilson) [1937053] - mt76: mt7915: add 802.11 encap offload support (Jarod Wilson) [1937053] - mt76: sdio: convert {status/net}_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: disable interrupt during txrx_worker processing (Jarod Wilson) [1937053] - mt76: mt7663s: convert txrx_work to mt76_worker (Jarod Wilson) [1937053] - mt76: mt7663s: move tx/rx processing in the same txrx workqueue (Jarod Wilson) [1937053] - mt76: mt7615: retry if mt7615_mcu_init returns -EAGAIN (Jarod Wilson) [1937053] - mt76: mt7915: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7915: measure channel noise and report it via survey (Jarod Wilson) [1937053] - mac80211: set SDATA_STATE_RUNNING for monitor interfaces (Jarod Wilson) [1937053] - cfg80211: initialize rekey_data (Jarod Wilson) [1937053] - mac80211: fix return value of ieee80211_chandef_he_6ghz_oper (Jarod Wilson) [1937053] - rtw88: debug: Fix uninitialized memory in debugfs code (Jarod Wilson) [1937053] - brcmfmac: expose firmware config files through modinfo (Jarod Wilson) [1937053] - rtw88: coex: add feature to enhance HID coexistence performance (Jarod Wilson) [1937053] - rtw88: coex: upgrade coexistence A2DP mechanism (Jarod Wilson) [1937053] - rtw88: coex: add action for coexistence in hardware initial (Jarod Wilson) [1937053] - rtw88: coex: add function to avoid cck lock (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for WLAN connected (Jarod Wilson) [1937053] - rtw88: coex: change the coexistence mechanism for HID (Jarod Wilson) [1937053] - rtw88: coex: update AFH information while in free-run mode (Jarod Wilson) [1937053] - rtw88: coex: update the mechanism for A2DP + PAN (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: run coexistence when WLAN entering/leaving LPS (Jarod Wilson) [1937053] - Revert "rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices" (Jarod Wilson) [1937053] - mt76: usb: fix crash on device removal (Jarod Wilson) [1937053] - ath11k: dp_rx: fix monitor status dma unmap direction (Jarod Wilson) [1937053] - ath10k: Constify static qmi structs (Jarod Wilson) [1937053] - ath10k: Release some resources in an error handling path (Jarod Wilson) [1937053] - ath10k: Fix an error handling path (Jarod Wilson) [1937053] - ath10k: Fix the parsing error in service available event (Jarod Wilson) [1937053] - ath11k: Fix an error handling path (Jarod Wilson) [1937053] - ath11k: Build check size of ath11k_skb_cb (Jarod Wilson) [1937053] - ath11k: Reset ath11k_skb_cb before setting new flags (Jarod Wilson) [1937053] - ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control (Jarod Wilson) [1937053] - ath11k: remove "ath11k_mac_get_ar_vdev_stop_status" references (Jarod Wilson) [1937053] - ath11k: peer delete synchronization with firmware (Jarod Wilson) [1937053] - ath11k: vdev delete synchronization with firmware (Jarod Wilson) [1937053] - mwifiex: Remove duplicated REG_PORT definition (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - mwifiex: Fix fall-through warnings for Clang (Jarod Wilson) [1937053] - brcmsmac: ampdu: Check BA window size before checking block ack (Jarod Wilson) [1937053] - brcmfmac: Fix incorrect type in assignment (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: remove the useless value assignment (Jarod Wilson) [1937053] - brcmfmac: fix error return code in brcmf_cfg80211_connect() (Jarod Wilson) [1937053] - rtw88: wow: print key type when failing (Jarod Wilson) [1937053] - rtw88: coex: change the decode method from firmware (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary WLAN slot extend (Jarod Wilson) [1937053] - rtw88: coex: remove write scan bit to scoreboard in scan and connect notify (Jarod Wilson) [1937053] - rtw88: coex: fix BT performance drop during initial/power-on step (Jarod Wilson) [1937053] - rtw88: coex: Change antenna setting to enhance free-run performance (Jarod Wilson) [1937053] - rtw88: coex: update the TDMA parameter when leave LPS (Jarod Wilson) [1937053] - rtw88: coex: add the mechanism for RF4CE (Jarod Wilson) [1937053] - rtw88: coex: Add force flag for coexistence table function (Jarod Wilson) [1937053] - rtw88: coex: add write scoreboard action when WLAN in critical procedure (Jarod Wilson) [1937053] - rtw88: coex: remove unnecessary feature/function (Jarod Wilson) [1937053] - rtw88: coex: update TDMA settings for different beacon interval (Jarod Wilson) [1937053] - rtw88: add CCK_PD debug log (Jarod Wilson) [1937053] - rtw88: 8723d: add cck pd seetings (Jarod Wilson) [1937053] - ath11k: Fix the rx_filter flag setting for peer rssi stats (Jarod Wilson) [1937053] - ath10k: add target IRAM recovery feature support (Jarod Wilson) [1937053] - ath11k: Fix beamformee STS in HE cap (Jarod Wilson) [1937053] - ath11k: add processor_id based ring_selector logic (Jarod Wilson) [1937053] - mac80211: free sta in sta_info_insert_finish() on errors (Jarod Wilson) [1937053] - mac80211: minstrel: fix tx status processing corner case (Jarod Wilson) [1937053] - mac80211: minstrel: remove deferred sampling code (Jarod Wilson) [1937053] - mac80211: fix memory leak on filtered powersave frames (Jarod Wilson) [1937053] - rfkill: Fix use-after-free in rfkill_resume() (Jarod Wilson) [1937053] - nl80211: fix kernel-doc warning in the new SAE attribute (Jarod Wilson) [1937053] - cfg80211: remove WDS code (Jarod Wilson) [1937053] - mac80211: remove WDS-related code (Jarod Wilson) [1937053] - rt2x00: remove WDS code (Jarod Wilson) [1937053] - b43: remove WDS code (Jarod Wilson) [1937053] - ath9k: remove WDS code (Jarod Wilson) [1937053] - rtw88: coex: simplify the setting and condition about WLAN TX limitation (Jarod Wilson) [1937053] - rtw88: coex: add debug message (Jarod Wilson) [1937053] - rtw88: coex: update WLAN 5G AFH parameter for 8822b (Jarod Wilson) [1937053] - rtw88: coex: change the parameter for A2DP when WLAN connecting (Jarod Wilson) [1937053] - rtw88: coex: modified for BT info notify (Jarod Wilson) [1937053] - rtw88: coex: add separate flag for manual control (Jarod Wilson) [1937053] - rtw88: coex: Modify the timing of set_ant_path/set_rf_para (Jarod Wilson) [1937053] - rtw88: coex: coding style adjustment (Jarod Wilson) [1937053] - rtw88: coex: reduce magic number (Jarod Wilson) [1937053] - rtw88: coex: update coex parameter to improve A2DP quality (Jarod Wilson) [1937053] - rtw88: coex: fixed some wrong register definition and setting (Jarod Wilson) [1937053] - rtlwifi: fix spelling typo of workaround (Jarod Wilson) [1937053] - mwifiex: pcie: skip cancel_work_sync() on reset failure path (Jarod Wilson) [1937053] - mwifiex: update comment for shutdown_sw()/reinit_sw() to reflect current state (Jarod Wilson) [1937053] - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure (Jarod Wilson) [1937053] - ath11k: Handle errors if peer creation fails (Jarod Wilson) [1937053] - ath9k: work around false-positive gcc warning (Jarod Wilson) [1937053] - wireless: remove CONFIG_WIRELESS_WDS (Jarod Wilson) [1937053] - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free} (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Place braces around empty if() body (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: phy: Remove a couple of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'cck_highpwr' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a2ant: Remove a bunch of unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Remove set but unused variable 'reg_ea4' (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: Remove set but unused variable 'lc_cal' (Jarod Wilson) [1937053] - rtlwifi: halbtc8821a1ant: Remove set but unused variable 'wifi_rssi_state' (Jarod Wilson) [1937053] - rtlwifi: phy: Remove set but unused variable 'bbvalue' (Jarod Wilson) [1937053] - rtlwifi: halbtc8723b2ant: Remove a bunch of set but unused variables (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: trx: Demote clear abuse of kernel-doc format (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: mac: Fix some missing/ill-documented function parameters (Jarod Wilson) [1937053] - rtw88: rtw8822c: Remove unused variable 'corr_val' (Jarod Wilson) [1937053] - mwifiex: pcie: Remove a couple of unchecked 'ret's (Jarod Wilson) [1937053] - wl1251: cmd: Rename 'len' to 'buf_len' in the documentation (Jarod Wilson) [1937053] - brcmfmac: fweh: Add missing description for 'gfp' (Jarod Wilson) [1937053] - brcmfmac: pcie: Provide description for missing function parameter 'devinfo' (Jarod Wilson) [1937053] - brcmfmac: bcmsdh: Fix description for function parameter 'pktlist' (Jarod Wilson) [1937053] - rt2x00: save survey for every channel visited (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in halbtc_send_bt_mp_operation() (Jarod Wilson) [1937053] - rtlwifi: Remove in_interrupt() usage in is_any_client_connect_to_ap(). (Jarod Wilson) [1937053] - rtl8xxxu: Add Buffalo WI-U3-866D to list of supported devices (Jarod Wilson) [1937053] - rtw88: decide lps deep mode from firmware feature. (Jarod Wilson) [1937053] - rtw88: add C2H response for checking firmware leave lps (Jarod Wilson) [1937053] - rtw88: store firmware feature in firmware header (Jarod Wilson) [1937053] - rtw88: sync the power state between driver and firmware (Jarod Wilson) [1937053] - rtw88: coex: separate BLE HID profile from BLE profile (Jarod Wilson) [1937053] - rtlwifi: Fix non-canonical address access issues (Jarod Wilson) [1937053] - brcmfmac: fix SDIO access for big-endian host (Jarod Wilson) [1937053] - rtw88: remove extraneous 'const' qualifier (Jarod Wilson) [1937053] - rtlwifi: fix -Wpointer-sign warning (Jarod Wilson) [1937053] - ath11k: fix ZERO address in probe request (Jarod Wilson) [1937053] - ath9k: dynack: Demote non-compliant function header (Jarod Wilson) [1937053] - ath9k: ar5008_phy: Demote half completed function headers (Jarod Wilson) [1937053] - ath9k: ar9003_2p2_initvals: Remove unused const variables (Jarod Wilson) [1937053] - ath9k: ar9485_initvals: Remove unused const variable 'ar9485_fast_clock_1_1_baseband_postamble' (Jarod Wilson) [1937053] - ath9k: ar9340_initvals: Remove unused const variable 'ar9340Modes_ub124_tx_gain_table_1p0' (Jarod Wilson) [1937053] - ath9k: ar9330_1p1_initvals: Remove unused const variable 'ar9331_common_tx_gain_offset1_1' (Jarod Wilson) [1937053] - ath: dfs_pri_detector: Demote zero/half completed kernel-doc headers (Jarod Wilson) [1937053] - ath: dfs_pattern_detector: Fix some function kernel-doc headers (Jarod Wilson) [1937053] - ath: regd: Provide description for ath_reg_apply_ir_flags's 'reg' param (Jarod Wilson) [1937053] - ath11k: Add new dfs region name for JP (Jarod Wilson) [1937053] - ath11k: fix wmi init configuration (Jarod Wilson) [1937053] - ath11k: Fix the hal descriptor mask (Jarod Wilson) [1937053] - ath11k: Fix single phy hw mode (Jarod Wilson) [1937053] - ath11k: Fix number of rules in filtered ETSI regdomain (Jarod Wilson) [1937053] - ath11k: Remove unused param from wmi_mgmt_params (Jarod Wilson) [1937053] - ath11k: Initialize complete alpha2 for regulatory change (Jarod Wilson) [1937053] - ath11k: cold boot calibration support (Jarod Wilson) [1937053] - ath11k: search DT for qcom,ath11k-calibration-variant (Jarod Wilson) [1937053] - ath11k: Remove unnecessary data sync to cpu on monitor buffer (Jarod Wilson) [1937053] - ath10k: cancel rx worker in hif_stop for SDIO (Jarod Wilson) [1937053] - ath10k: Don't iterate over not-sdata-in-driver interfaces. (Jarod Wilson) [1937053] - ath10k: fix compilation warning (Jarod Wilson) [1937053] - mac80211: assure that certain drivers adhere to DONT_REORDER flag (Jarod Wilson) [1937053] - mac80211: don't overwrite QoS TID of injected frames (Jarod Wilson) [1937053] - mac80211: adhere to Tx control flag that prevents frame reordering (Jarod Wilson) [1937053] - mac80211: add radiotap flag to assure frames are not reordered (Jarod Wilson) [1937053] - mac80211: save HE oper info in BSS config for mesh (Jarod Wilson) [1937053] - cfg80211: add support to configure HE MCS for beacon rate (Jarod Wilson) [1937053] - nl80211: fix beacon tx rate mask validation (Jarod Wilson) [1937053] - cfg80211: Add support to calculate and report 4096-QAM HE rates (Jarod Wilson) [1937053] - cfg80211: Add support to configure SAE PWE value to drivers (Jarod Wilson) [1937053] - ieee80211: Add definition for WFA DPP (Jarod Wilson) [1937053] - mac80211: use semicolons rather than commas to separate statements (Jarod Wilson) [1937053] - ath11k: FILS discovery and unsolicited broadcast probe response support (Jarod Wilson) [1937053] - ath10k: sdio: remove redundant check in for loop (Jarod Wilson) [1937053] - mac80211: add KCOV remote annotations to incoming frame processing (Jarod Wilson) [1937053] - rtw88: fix fw_fifo_addr check (Jarod Wilson) [1937053] - mac80211: don't require VHT elements for HE on 2.4 GHz (Jarod Wilson) [1937053] - cfg80211: regulatory: Fix inconsistent format argument (Jarod Wilson) [1937053] - mac80211: fix kernel-doc markups (Jarod Wilson) [1937053] - mac80211: always wind down STA state (Jarod Wilson) [1937053] - cfg80211: initialize wdev data earlier (Jarod Wilson) [1937053] - mac80211: fix use of skb payload instead of header (Jarod Wilson) [1937053] - mac80211: fix regression where EAPOL frames were sent in plaintext (Jarod Wilson) [1937053] - ath11k: remove repeated words in comments and warnings (Jarod Wilson) [1937053] - ath10k: ath10k_pci_init_irq(): workaround for checkpatch fallthrough warning (Jarod Wilson) [1937053] - ath10k: remove repeated words in comments (Jarod Wilson) [1937053] - nl80211: docs: add a description for s1g_cap parameter (Jarod Wilson) [1937053] - mac80211: use new function dev_fetch_sw_netstats (Jarod Wilson) [1937053] - rtlwifi: rtl8192se: remove duplicated legacy_httxpowerdiff (Jarod Wilson) [1937053] - ath11k: Fix memory leak on error path (Jarod Wilson) [1937053] - mac80211: copy configured beacon tx rate to driver (Jarod Wilson) [1937053] - cfg80211: only allow S1G channels on S1G band (Jarod Wilson) [1937053] - mac80211: initialize last_rate for S1G STAs (Jarod Wilson) [1937053] - mac80211: handle lack of sband->bitrates in rates (Jarod Wilson) [1937053] - mac80211: avoid processing non-S1G elements on S1G band (Jarod Wilson) [1937053] - nl80211: fix non-split wiphy information (Jarod Wilson) [1937053] - nl80211: reduce non-split wiphy dump size (Jarod Wilson) [1937053] - ath11k: remove unnecessary casts to u32 (Jarod Wilson) [1937053] - ath11k: enable idle power save mode (Jarod Wilson) [1937053] - ath11k: start a timer to update HP for CE pipe 4 (Jarod Wilson) [1937053] - ath11k: start a timer to update REO cmd ring (Jarod Wilson) [1937053] - ath11k: start a timer to update TCL HP (Jarod Wilson) [1937053] - ath11k: set WMI pipe credit to 1 for QCA6390 (Jarod Wilson) [1937053] - ath11k: enable shadow register configuration and access (Jarod Wilson) [1937053] - ath11k: read and write registers below unwindowed address (Jarod Wilson) [1937053] - ath11k: debugfs: fix crash during rmmod (Jarod Wilson) [1937053] - ath11k: fix warning caused by lockdep_assert_held (Jarod Wilson) [1937053] - ath11k: mac: remove unused conf_mutex to solve a deadlock (Jarod Wilson) [1937053] - ath11k: pci: fix rmmod crash (Jarod Wilson) [1937053] - ath11k: add packet log support for QCA6390 (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in idr_alloc (Jarod Wilson) [1937053] - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc (Jarod Wilson) [1937053] - ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock (Jarod Wilson) [1937053] - ath11k: disable monitor mode on QCA6390 (Jarod Wilson) [1937053] - ath11k: pci: check TCSR_SOC_HW_VERSION (Jarod Wilson) [1937053] - ath11k: add interface_modes to hw_params (Jarod Wilson) [1937053] - ath11k: fix AP mode for QCA6390 (Jarod Wilson) [1937053] - ath11k: support loading ELF board files (Jarod Wilson) [1937053] - ath11k: Correctly check errors for calls to debugfs_create_dir() (Jarod Wilson) [1937053] - ath11k: mac: fix parenthesis alignment (Jarod Wilson) [1937053] - rtw88: pci: Power cycle device during shutdown (Jarod Wilson) [1937053] - brcmfmac: Fix warning message after dongle setup failed (Jarod Wilson) [1937053] - brcmfmac: Fix warning when hitting FW crash with flow control feature (Jarod Wilson) [1937053] - net: rtlwifi: Replace in_interrupt() for context detection (Jarod Wilson) [1937053] - net: rtlwifi: Remove in_interrupt() from debug macro (Jarod Wilson) [1937053] - net: rtlwifi: Remove void* casts related to delayed work (Jarod Wilson) [1937053] - net: mwifiex: Use netif_rx_any_context(). (Jarod Wilson) [1937053] - net: iwlwifi: Remove in_interrupt() from tracing macro. (Jarod Wilson) [1937053] - net: ipw2x00,iwlegacy,iwlwifi: Remove in_interrupt() from debug macros (Jarod Wilson) [1937053] - net: brcmfmac: Convey allocation mode as argument (Jarod Wilson) [1937053] - net: brcmfmac: Convey execution context via argument to brcmf_netif_rx() (Jarod Wilson) [1937053] - net: brcmfmac: Replace in_interrupt() (Jarod Wilson) [1937053] - ath11k: Move non-fatal warn logs to dbg level (Jarod Wilson) [1937053] - ath9k: Remove set but not used variable (Jarod Wilson) [1937053] - rtw88: show current regulatory in tx power table (Jarod Wilson) [1937053] - rtw88: add dump fw crash log (Jarod Wilson) [1937053] - rtw88: add dump firmware fifo support (Jarod Wilson) [1937053] - rtw88: handle and recover when firmware crash (Jarod Wilson) [1937053] - rtw88: increse the size of rx buffer size (Jarod Wilson) [1937053] - nl80211: extend support to config spatial reuse parameter set (Jarod Wilson) [1937053] - mac80211: Support not iterating over not-sdata-in-driver ifaces (Jarod Wilson) [1937053] - mac80211: fix some more kernel-doc in mesh (Jarod Wilson) [1937053] - cfg80211: regulatory: remove a bogus initialization (Jarod Wilson) [1937053] - mac80211: fix regression in sta connection monitor (Jarod Wilson) [1937053] - nl80211: include frequency offset in survey info (Jarod Wilson) [1937053] - mac80211: support S1G association (Jarod Wilson) [1937053] - mac80211: receive and process S1G beacons (Jarod Wilson) [1937053] - mac80211: avoid rate init for S1G band (Jarod Wilson) [1937053] - mac80211: handle S1G low rates (Jarod Wilson) [1937053] - mac80211: don't calculate duration for S1G (Jarod Wilson) [1937053] - mac80211: encode listen interval for S1G (Jarod Wilson) [1937053] - cfg80211: handle Association Response from S1G STA (Jarod Wilson) [1937053] - mac80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - cfg80211: parse S1G Operation element for BSS channel (Jarod Wilson) [1937053] - cfg80211: convert S1G beacon to scan results (Jarod Wilson) [1937053] - mac80211: support S1G STA capabilities (Jarod Wilson) [1937053] - nl80211: support S1G capability overrides in assoc (Jarod Wilson) [1937053] - mac80211: s1g: choose scanning width based on frequency (Jarod Wilson) [1937053] - mac80211: get correct default channel width for S1G (Jarod Wilson) [1937053] - wireless: radiotap: fix some kernel-doc (Jarod Wilson) [1937053] - mac80211: fix some missing kernel-doc (Jarod Wilson) [1937053] - mac80211: Inform AP when returning operating channel (Jarod Wilson) [1937053] - ath11k: fix undefined reference to 'ath11k_debugfs_htt_ext_stats_handler' (Jarod Wilson) [1937053] - mt76: mt7663s: remove max_tx_fragments limitation (Jarod Wilson) [1937053] - mt76: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - mt76: mt7915: add offchannel condition in switch channel command (Jarod Wilson) [1937053] - mt76: mt7915: convert to use le16_add_cpu() (Jarod Wilson) [1937053] - mt76: Fix unsigned expressions compared with zero (Jarod Wilson) [1937053] - mt76: mt7915: fix possible memory leak in mt7915_mcu_add_beacon (Jarod Wilson) [1937053] - mt76: mt76x0: Move tables used only by init.c to their own header file (Jarod Wilson) [1937053] - mt76: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mt76: mt7615: unlock dfs bands (Jarod Wilson) [1937053] - mt76: mt7663: check isr read return value in mt7663s_rx_work (Jarod Wilson) [1937053] - mt76: mt7663s: introduce sdio tx aggregation (Jarod Wilson) [1937053] - mt76: mt7663s: fix possible quota leak in mt7663s_refill_sched_quota (Jarod Wilson) [1937053] - mt76: move pad estimation out of mt76_skb_adjust_pad (Jarod Wilson) [1937053] - mt76: mt7663s: introduce __mt7663s_xmit_queue routine (Jarod Wilson) [1937053] - mt76: mt7663s: split mt7663s_tx_update_sched in mt7663s_tx_{pick,update}_quota (Jarod Wilson) [1937053] - mt76: mt7663s: do not use altx for ctl/mgmt traffic (Jarod Wilson) [1937053] - mt76: mt7622: fix fw hang on mt7622 (Jarod Wilson) [1937053] - mt76: mt7615: fix VHT LDPC capability (Jarod Wilson) [1937053] - mt76: mt7615: Remove set but unused variable 'index' (Jarod Wilson) [1937053] - mt76: remove retry_q from struct mt76_txq and related code (Jarod Wilson) [1937053] - mt76: move txwi handling code to dma.c, since it is mmio specific (Jarod Wilson) [1937053] - mt76: mt7915: fix queue/tid mapping for airtime reporting (Jarod Wilson) [1937053] - mt76: mt7915: simplify mt7915_lmac_mapping (Jarod Wilson) [1937053] - mt76: dma: cache dma map address/len in struct mt76_queue_entry (Jarod Wilson) [1937053] - mt76: mt7915: fix HE BSS info (Jarod Wilson) [1937053] - mt76: convert from tx tasklet to tx worker thread (Jarod Wilson) [1937053] - mt76: add utility functions for deferring work to a kernel thread (Jarod Wilson) [1937053] - mt76: testmode: add a limit for queued tx_frames packets (Jarod Wilson) [1937053] - mt76: mt7615: fix antenna selection for testmode tx_frames (Jarod Wilson) [1937053] - mt76: mt7615: fix MT_ANT_SWITCH_CON register definition (Jarod Wilson) [1937053] - mt76: mt7915: fix unexpected firmware mode (Jarod Wilson) [1937053] - mt76: mt76x02: tune tx ring size (Jarod Wilson) [1937053] - mt76: mt7603: tune tx ring size (Jarod Wilson) [1937053] - mt76: remove struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: rely on AQL for burst size limits on tx queueing (Jarod Wilson) [1937053] - mt76: remove swq from struct mt76_sw_queue (Jarod Wilson) [1937053] - mt76: remove qid argument to drv->tx_complete_skb (Jarod Wilson) [1937053] - mt76: unify queue tx cleanup code (Jarod Wilson) [1937053] - mt76: sdio: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: usb: fix use of q->head and q->tail (Jarod Wilson) [1937053] - mt76: mt7603: check for single-stream EEPROM configuration (Jarod Wilson) [1937053] - mt76: add memory barrier to DMA queue kick (Jarod Wilson) [1937053] - mt76: mt7915: add support for accessing mapped registers via bus ops (Jarod Wilson) [1937053] - mt76: mt7615: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: significantly reduce interrupt load (Jarod Wilson) [1937053] - mt76: mt7915: schedule tx tasklet in mt7915_mac_tx_free (Jarod Wilson) [1937053] - mt76: dma: update q->queued immediately on cleanup (Jarod Wilson) [1937053] - mt76: mt7915: optimize mt7915_mac_sta_poll (Jarod Wilson) [1937053] - mt76: mt7615: fix reading airtime statistics (Jarod Wilson) [1937053] - mt76: mt7663u: fix dma header initialization (Jarod Wilson) [1937053] - mt76: fix a possible NULL pointer dereference in mt76_testmode_dump (Jarod Wilson) [1937053] - mt76: mt7615: fix a possible NULL pointer dereference in mt7615_pm_wake_work (Jarod Wilson) [1937053] - mt76: mt7615: fix possible memory leak in mt7615_tm_set_tx_power (Jarod Wilson) [1937053] - mt76: mt7663s: fix unable to handle kernel paging request (Jarod Wilson) [1937053] - mt76: mt7663s: fix resume failure (Jarod Wilson) [1937053] - mt76: mt7663s: use NULL instead of 0 in sdio code (Jarod Wilson) [1937053] - mt76: mt7615: release mutex in mt7615_reset_test_set (Jarod Wilson) [1937053] - mt76: mt7915: add Tx A-MSDU offloading support (Jarod Wilson) [1937053] - mt76: mt7915: add missing flags in WMM parameter settings (Jarod Wilson) [1937053] - mt76: mt7915: simplify aggregation session check (Jarod Wilson) [1937053] - mt76: mt7615: remove mtxq->agg_ssn assignment (Jarod Wilson) [1937053] - mt76: move mt76_check_agg_ssn to driver tx_prepare calls (Jarod Wilson) [1937053] - mt76: mt7915: enable offloading of sequence number assignment (Jarod Wilson) [1937053] - mt76: mt7915: increase tx retry count (Jarod Wilson) [1937053] - mt76: mt7915: clean up station stats polling and rate control update (Jarod Wilson) [1937053] - mt76: mt7915: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt7615: do not do any work in napi poll after calling napi_complete_done() (Jarod Wilson) [1937053] - mt76: mt76x02: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: mt7615: only clear unmasked interrupts in irq tasklet (Jarod Wilson) [1937053] - mt76: mt7915: clean up and fix interrupt masking in the irq handler (Jarod Wilson) [1937053] - mt76: set interrupt mask register to 0 before requesting irq (Jarod Wilson) [1937053] - mt76: fix double DMA unmap of the first buffer on 7615/7915 (Jarod Wilson) [1937053] - mt76: mt7915: fix crash on tx rate report for invalid stations (Jarod Wilson) [1937053] - mt76: mt7915: enable U-APSD on AP side (Jarod Wilson) [1937053] - mt76: mt76s: get rid of unused variable (Jarod Wilson) [1937053] - mt76: mt76s: move tx/rx processing in 2 separate works (Jarod Wilson) [1937053] - mt76: mt76s: move status processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt7663s: move rx processing in txrx wq (Jarod Wilson) [1937053] - mt76: mt76s: move tx processing in a dedicated wq (Jarod Wilson) [1937053] - mt76: mt76s: fix oom in mt76s_tx_queue_skb_raw (Jarod Wilson) [1937053] - mt76: mt7615: reschedule runtime-pm receiving a tx interrupt (Jarod Wilson) [1937053] - mt76: do not inject packets if MT76_STATE_PM is set (Jarod Wilson) [1937053] - mt76: mt7615: hold mt76 lock queueing wd in mt7615_queue_key_update (Jarod Wilson) [1937053] - mt76: mt7663s: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: move drv_own/fw_own in mt7615_mcu_ops (Jarod Wilson) [1937053] - mt76: mt7615: register ext_phy if DBDC is detected (Jarod Wilson) [1937053] - brcmfmac: check return value of driver_for_each_device() (Jarod Wilson) [1937053] - ath11k: Remove unused function ath11k_htc_restore_tx_skb() (Jarod Wilson) [1937053] - ath11k: remove redundant num_keep_alive_pattern assignment (Jarod Wilson) [1937053] - ath11k: wmi: remove redundant configuration values from init (Jarod Wilson) [1937053] - ath11k: Add support spectral scan for IPQ6018 (Jarod Wilson) [1937053] - ath11k: debugfs: move some function declarations to correct header files (Jarod Wilson) [1937053] - ath11k: rename debug_htt_stats.[c|h] to debugfs_htt_stats.[c|h] (Jarod Wilson) [1937053] - ath11k: debugfs: use ath11k_debugfs_ prefix (Jarod Wilson) [1937053] - ath11k: refactor debugfs code into debugfs.c (Jarod Wilson) [1937053] - ath10k: Use bdf calibration variant for snoc targets (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: use true,false for bool variable large_cfo_hit (Jarod Wilson) [1937053] - rtlwifi: Use ffs in _phy_calculate_bit_shift (Jarod Wilson) [1937053] - mt7601u: Convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1937053] - ath11k: Remove rproc references from common core layer (Jarod Wilson) [1937053] - ath9k: hif_usb: fix race condition between usb_get_urb() and usb_kill_anchored_urbs() (Jarod Wilson) [1937053] - rtlwifi: rtl8723be: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: fix comparison to bool warning in mac.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: fix comparison to bool warning in phy_common.c (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: fix comparison to bool warning in hw.c (Jarod Wilson) [1937053] - mac80211: fix some encapsulation offload kernel-doc (Jarod Wilson) [1937053] - cfg80211: add missing kernel-doc for S1G band capabilities (Jarod Wilson) [1937053] - mac80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - nl80211: Unsolicited broadcast probe response support (Jarod Wilson) [1937053] - mac80211: Add FILS discovery support (Jarod Wilson) [1937053] - nl80211: Add FILS discovery support (Jarod Wilson) [1937053] - mac80211: allow bigger A-MSDU sizes in VHT, even if HT is limited (Jarod Wilson) [1937053] - nl80211: support setting S1G channels (Jarod Wilson) [1937053] - nl80211: correctly validate S1G beacon head (Jarod Wilson) [1937053] - cfg80211: regulatory: handle S1G channels (Jarod Wilson) [1937053] - nl80211: advertise supported channel width in S1G (Jarod Wilson) [1937053] - ieee80211: redefine S1G bits with GENMASK (Jarod Wilson) [1937053] - mac80211: reorganize code to remove a forward declaration (Jarod Wilson) [1937053] - mac80211: extend ieee80211_tx_status_ext to support bulk free (Jarod Wilson) [1937053] - mac80211: support using ieee80211_tx_status_ext to free skbs without status info (Jarod Wilson) [1937053] - mac80211: unify 802.3 (offload) and 802.11 tx status codepath (Jarod Wilson) [1937053] - mac80211: optimize station connection monitor (Jarod Wilson) [1937053] - mac80211: notify the driver when a sta uses 4-address mode (Jarod Wilson) [1937053] - mac80211: swap NEED_TXPROCESSING and HW_80211_ENCAP tx flags (Jarod Wilson) [1937053] - mac80211: remove tx status call to ieee80211_sta_register_airtime (Jarod Wilson) [1937053] - mac80211: reduce duplication in tx status functions (Jarod Wilson) [1937053] - mac80211: rework tx encapsulation offload API (Jarod Wilson) [1937053] - mac80211: set info->control.hw_key for encap offload packets (Jarod Wilson) [1937053] - mac80211: skip encap offload for tx multicast/control packets (Jarod Wilson) [1937053] - mac80211: check and refresh aggregation session in encap offload tx (Jarod Wilson) [1937053] - mac80211: add missing queue/hash initialization to 802.3 xmit (Jarod Wilson) [1937053] - cfg80211: add more comments for ap_isolate in bss_parameters (Jarod Wilson) [1937053] - lib80211: Remove unused macro DRV_NAME (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: fix comparison pointer to bool warning in rf.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in hw.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in trx.c (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: fix comparison pointer to bool warning in phy.c (Jarod Wilson) [1937053] - rtw88: rtw8822c: eliminate code duplication, use native swap() function (Jarod Wilson) [1937053] - brcmsmac: main: Eliminate empty brcms_c_down_del_timer() (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove unused variable 'lcnphy_rx_iqcomp_table_rev0' (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcn_gain_tbl_rev1' (Jarod Wilson) [1937053] - brcmfmac: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - brcmfmac: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1937053] - ath10k: Remove unused macro ATH10K_ROC_TIMEOUT_HZ (Jarod Wilson) [1937053] - ath11k: Remove unused inline function htt_htt_stats_debug_dump() (Jarod Wilson) [1937053] - ath11k: fix link error when CONFIG_REMOTEPROC is disabled (Jarod Wilson) [1937053] - ath11k: remove calling ath11k_init_hw_params() second time (Jarod Wilson) [1937053] - ath11k: add raw mode and software crypto support (Jarod Wilson) [1937053] - ath11k: add ipq6018 support (Jarod Wilson) [1937053] - ath11k: move target ce configs to hw_params (Jarod Wilson) [1937053] - net: wireless: drop bogus CRYPTO_xxx Kconfig selects (Jarod Wilson) [1937053] - rtlwifi: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy (Jarod Wilson) [1937053] - rtl8xxxu: prevent potential memory leak (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae: Delete a stray tab (Jarod Wilson) [1937053] - ath11k: Add peer max mpdu parameter in peer assoc command (Jarod Wilson) [1937053] - ath10k: Add support for chain1 regulator supply voting (Jarod Wilson) [1937053] - brcmfmac: set F2 SDIO block size to 128 bytes for BCM4329 (Jarod Wilson) [1937053] - brcmfmac: drop chip id from debug messages (Jarod Wilson) [1937053] - brcmfmac: increase F2 watermark for BCM4329 (Jarod Wilson) [1937053] - mwifiex: sdio: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mwifiex: wmm: Fix -Wunused-const-variable warnings (Jarod Wilson) [1937053] - mt7601u: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtlwifi: Remove temporary definition of RT_TRACE (Jarod Wilson) [1937053] - rtlwifi: rtl8821ae: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - brcmsmac: phytbl_n: Remove a few unused arrays (Jarod Wilson) [1937053] - brcmsmac: phytbl_lcn: Remove unused array 'dot11lcnphytbl_rx_gain_info_rev1' (Jarod Wilson) [1937053] - brcmsmac: phy_n: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmsmac: phy_lcn: Remove a bunch of unused variables (Jarod Wilson) [1937053] - prism54: isl_ioctl: Remove unused variable 'j' (Jarod Wilson) [1937053] - rtw88: debug: Remove unused variables 'val' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Finish documenting 'brcmf_fws_mac_descriptor' (Jarod Wilson) [1937053] - brcmsmac: phy_cmn: Remove a unused variables 'vbat' and 'temp' (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a couple of function headers (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a couple set but unused variables (Jarod Wilson) [1937053] - mwifiex: pcie: Move tables to the only place they're used (Jarod Wilson) [1937053] - ath10k: Get rid of "per_ce_irq" hw param (Jarod Wilson) [1937053] - ath10k: Keep track of which interrupts fired, don't poll them (Jarod Wilson) [1937053] - ath10k: Add interrupt summary based CE processing (Jarod Wilson) [1937053] - rtlwifi: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtl818x_pci: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - p54: avoid accessing the data mapped to streaming DMA (Jarod Wilson) [1937053] - rtlwifi: rtl8192c: phy_common: Remove unused variable 'bbvalue' (Jarod Wilson) [1937053] - brcmfmac: fwsignal: Remove unused variable 'brcmf_fws_prio2fifo' (Jarod Wilson) [1937053] - b43: phy_ht: Remove 9 year old TODO (Jarod Wilson) [1937053] - brcmfmac: btcoex: Update 'brcmf_btcoex_state' and demote others (Jarod Wilson) [1937053] - brcmfmac: firmware: Demote seemingly unintentional kernel-doc header (Jarod Wilson) [1937053] - brcmsmac: main: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Fix a bunch of function docs (Jarod Wilson) [1937053] - brcmsmac: ampdu: Remove a bunch of unused variables (Jarod Wilson) [1937053] - brcmfmac: p2p: Deal with set but unused variables (Jarod Wilson) [1937053] - mt7601u: phy: Fix misnaming when documented function parameter 'dac' (Jarod Wilson) [1937053] - rtlwifi: rtl8723-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723be Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8723ae Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192se Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192de: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192cu: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192ce: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8192-common: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: rtl8188ee: Rename RT_TRACE to rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: btcoexist: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Replace RT_TRACE with rtl_dbg (Jarod Wilson) [1937053] - rtlwifi: Start changing RT_TRACE into rtl_dbg (Jarod Wilson) [1937053] - ath10k: wmi: Use struct_size() helper in ath10k_wmi_alloc_skb() (Jarod Wilson) [1937053] - ath11k: fix missing error check on call to ath11k_pci_get_user_msi_assignment (Jarod Wilson) [1937053] - ath11k: fix spelling mistake "moniter" -> "monitor" (Jarod Wilson) [1937053] - nl80211: support SAE authentication offload in AP mode (Jarod Wilson) [1937053] - atmel: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - brcmfmac: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rt2x00: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - b43: phy_n: Add empty braces around empty statements (Jarod Wilson) [1937053] - b43: phy_common: Demote non-conformant kerneldoc header (Jarod Wilson) [1937053] - brcmsmac: mac80211_if: Demote a few non-conformant kerneldoc headers (Jarod Wilson) [1937053] - brcmfmac: fweh: Fix docrot related function documentation issues (Jarod Wilson) [1937053] - brcmfmac: fweh: Remove set but unused variable 'err' (Jarod Wilson) [1937053] - b43: main: Add braces around empty statements (Jarod Wilson) [1937053] - atmel: Demote non-kerneldoc header to standard comment block (Jarod Wilson) [1937053] - nl80211: rename csa counter attributes countdown counters (Jarod Wilson) [1937053] - nl80211: add support for setting fixed HE rate/gi/ltf (Jarod Wilson) [1937053] - ath11k: return -ENOMEM on allocation failure (Jarod Wilson) [1937053] - ath11k: return error if firmware request fails (Jarod Wilson) [1937053] - ath9k: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Move ar5416Bank{0,1,2,3,7} to where they are used (Jarod Wilson) [1937053] - ath9k: ar5008_initvals: Remove unused table entirely (Jarod Wilson) [1937053] - ath9k: ar9001_initvals: Remove unused array 'ar5416Bank6_9100' (Jarod Wilson) [1937053] - ath9k: ar9002_initvals: Remove unused array 'ar9280PciePhy_clkreq_off_L1_9280' (Jarod Wilson) [1937053] - ath9k_htc: Do not select MAC80211_LEDS by default (Jarod Wilson) [1937053] - rtw88: 8822c: update tx power limit tables to RF v20.1 (Jarod Wilson) [1937053] - rtw88: use read_poll_timeout_atomic() for poll loop (Jarod Wilson) [1937053] - rtw88: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - rtw88: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - mwifiex: don't call del_timer_sync() on uninitialized timer (Jarod Wilson) [1937053] - mwifiex: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - mwifiex: Clean up some err and dbg messages (Jarod Wilson) [1937053] - mwifiex: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1937053] - nl80211: fix PORT_AUTHORIZED wording to reflect behavior (Jarod Wilson) [1937053] - cfg80211: add helper fn for adjacent rule channels (Jarod Wilson) [1937053] - cfg80211: add helper fn for single rule channels (Jarod Wilson) [1937053] - nl80211: use NLA_POLICY_RANGE(NLA_BINARY, ...) for a few attributes (Jarod Wilson) [1937053] - nl80211: clean up code/policy a bit (Jarod Wilson) [1937053] - net: wireless: wext_compat.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: sme.c: delete duplicated word (Jarod Wilson) [1937053] - net: wireless: scan.c: delete or fix duplicated words (Jarod Wilson) [1937053] - net: wireless: reg.c: delete duplicated words + fix punctuation (Jarod Wilson) [1937053] - net: wireless: delete duplicated word + fix grammar (Jarod Wilson) [1937053] - net: mac80211: mesh.h: delete duplicated word (Jarod Wilson) [1937053] - net: mac80211: agg-rx.c: fix duplicated words (Jarod Wilson) [1937053] - net: ath11k: constify ath11k_thermal_ops (Jarod Wilson) [1937053] - ath10k: Add new api to support reset TID config (Jarod Wilson) [1937053] - ath10k: Add new api to support TID specific configuration (Jarod Wilson) [1937053] - ath10k: Move rate mask validation function up in the file (Jarod Wilson) [1937053] - ath10k: Add wmi command support for station specific TID config (Jarod Wilson) [1937053] - ath10k: sdio: add firmware coredump support (Jarod Wilson) [1937053] - ath10k: add bus type for each layout of coredump (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_MIN_LEN() (Jarod Wilson) [1937053] - netlink/wireless: consistently use NLA_POLICY_EXACT_LEN() (Jarod Wilson) [1937053] - rndis_wlan: tighten check of rndis_query_oid return (Jarod Wilson) [1937053] - rtw88: fix spelling mistake: "unsupport" -> "unsupported" (Jarod Wilson) [1937053] - brcmfmac: use *ph to print small buffer (Jarod Wilson) [1937053] - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach (Jarod Wilson) [1937053] - ath11k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath10k: fix VHT NSS calculation when STBC is enabled (Jarod Wilson) [1937053] - ath10k: Register shutdown handler (Jarod Wilson) [1937053] - ath11k: reset MHI during power down and power up (Jarod Wilson) [1937053] - ath11k: use TCL_DATA_RING_0 for QCA6390 (Jarod Wilson) [1937053] - ath11k: process both lmac rings for QCA6390 (Jarod Wilson) [1937053] - ath11k: assign correct search flag and type for QCA6390 (Jarod Wilson) [1937053] - ath11k: delay vdev_start for QCA6390 (Jarod Wilson) [1937053] - ath11k: refine the phy_id check in ath11k_reg_chan_list_event (Jarod Wilson) [1937053] - ath11k: setup QCA6390 rings for both rxdmas (Jarod Wilson) [1937053] - ath11k: don't initialize rxdma1 related ring (Jarod Wilson) [1937053] - ath11k: enable DP interrupt setup for QCA6390 (Jarod Wilson) [1937053] - ath11k: dp: redefine peer_map and peer_unmap (Jarod Wilson) [1937053] - ath11k: wmi: put hardware to DBS mode (Jarod Wilson) [1937053] - ath11k: initialize wmi config based on hw_params (Jarod Wilson) [1937053] - ath11k: force single pdev only for QCA6390 (Jarod Wilson) [1937053] - ath11k: disable CE interrupt before hif start (Jarod Wilson) [1937053] - ath11k: ce: get msi_addr and msi_data before srng setup (Jarod Wilson) [1937053] - ath11k: hal: assign msi_addr and msi_data to srng (Jarod Wilson) [1937053] - ath11k: ce: remove CE_COUNT() macro (Jarod Wilson) [1937053] - ath11k: ce: remove host_ce_config_wlan macro (Jarod Wilson) [1937053] - ath11k: ce: support different CE configurations (Jarod Wilson) [1937053] - ath11k: hal: cleanup dynamic register macros (Jarod Wilson) [1937053] - ath11k: hal: create register values dynamically (Jarod Wilson) [1937053] - ath10k: move enable_pll_clk call to ath10k_core_start() (Jarod Wilson) [1937053] - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1937053] - ath10k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1937053] - ath11k: hal: create hw_srng_config dynamically (Jarod Wilson) [1937053] - ath11k: enable internal sleep clock (Jarod Wilson) [1937053] - ath11k: fix KASAN warning of ath11k_qmi_wlanfw_wlan_cfg_send (Jarod Wilson) [1937053] - ath11k: fix memory OOB access in qmi_decode (Jarod Wilson) [1937053] - ath11k: allocate smaller chunks of memory for firmware (Jarod Wilson) [1937053] - ath11k: setup ce tasklet for control path (Jarod Wilson) [1937053] - ath11k: configure copy engine msi address in CE srng (Jarod Wilson) [1937053] - ath11k: pci: add read32() and write32() hif operations (Jarod Wilson) [1937053] - ath11k: fill appropriate QMI service instance id for QCA6390 (Jarod Wilson) [1937053] - ath11k: add board file support for PCI devices (Jarod Wilson) [1937053] - ath11k: add support for m3 firmware (Jarod Wilson) [1937053] - ath11k: use remoteproc only with AHB devices (Jarod Wilson) [1937053] - ath11k: pci: add HAL, CE and core initialisation (Jarod Wilson) [1937053] - ath11k: register MHI controller device for QCA6390 (Jarod Wilson) [1937053] - ath11k: implement ath11k_core_pre_init() (Jarod Wilson) [1937053] - ath11k: pci: add MSI config initialisation (Jarod Wilson) [1937053] - ath11k: pci: setup resources (Jarod Wilson) [1937053] - ath11k: add simple PCI client driver for QCA6390 chipset (Jarod Wilson) [1937053] - ath11k: move ring mask definitions to hw_params (Jarod Wilson) [1937053] - ath11k: add hw_params entry for QCA6390 (Jarod Wilson) [1937053] - ath11k: do not depend on ARCH_QCOM for ath11k (Jarod Wilson) [1937053] - ath10k: correct the array index from mcs index for HT mode for QCA6174 (Jarod Wilson) [1937053] - ath10k: enable supports_peer_stats_info for QCA6174 PCI devices (Jarod Wilson) [1937053] - ath10k: remove return for NL80211_STA_INFO_TX_BITRATE (Jarod Wilson) [1937053] - ath10k: add wmi service peer stat info for wmi tlv (Jarod Wilson) [1937053] - ath10k: start recovery process when payload length exceeds max htc length for sdio (Jarod Wilson) [1937053] - ath: drop unnecessary list_empty (Jarod Wilson) [1937053] - ath9k: Use fallthrough pseudo-keyword (Jarod Wilson) [1937053] - ath9k: Fix typo in function name (Jarod Wilson) [1937053] - ath9k: Replace HTTP links with HTTPS ones (Jarod Wilson) [1937053] - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n() (Jarod Wilson) [1937053] - ath9k: Check the return value of pcie_capability_read_*() (Jarod Wilson) [1937053] - ath11k: remove define ATH11K_QMI_DEFAULT_CAL_FILE_NAME (Jarod Wilson) [1937053] - ath11k: don't use defines in hw_params (Jarod Wilson) [1937053] - ath11k: qmi: cleanup info messages (Jarod Wilson) [1937053] - ath11k: remove useless info messages (Jarod Wilson) [1937053] - ath11k: change ath11k_core_fetch_board_data_api_n() to use ath11k_core_create_firmware_path() (Jarod Wilson) [1937053] - ath11k: don't use defines for hw specific firmware directories (Jarod Wilson) [1937053] - ath11k: create a common function to request all firmware files (Jarod Wilson) [1937053] - ath11k: Add bdf-addr in hw_params (Jarod Wilson) [1937053] - ath11k: add hw_ops for pdev id to hw_mac mapping (Jarod Wilson) [1937053] - ath11k: define max_radios in hw_params (Jarod Wilson) [1937053] - ath11k: convert ath11k_hw_params to an array (Jarod Wilson) [1937053] - ath11k: ahb: call ath11k_core_init() before irq configuration (Jarod Wilson) [1937053] - ath10k: pci: fix memcpy size of bmi response (Jarod Wilson) [1937053] - ath11k: rename default board file (Jarod Wilson) [1937053] - ath11k: update firmware files read path (Jarod Wilson) [1937053] - ath10k: provide survey info as accumulated data (Jarod Wilson) [1937053] - ath10k: fix retry packets update in station dump (Jarod Wilson) [1937053] - ath10k: Wait until copy complete is actually done before completing (Jarod Wilson) [1937053] - mac80211_hwsim: add 6GHz channels (Jarod Wilson) [1937053] - mac80211_hwsim: indicate support for S1G (Jarod Wilson) [1937053] - mac80211_hwsim: write TSF timestamp correctly to S1G beacon (Jarod Wilson) [1937053] - mac80211_hwsim: fix typo in kernel-doc (Jarod Wilson) [1937053] - mac80211: rename csa counters to countdown counters (Jarod Wilson) [1937053] - mac80211_hwsim: report the WIPHY_FLAG_SUPPORTS_5_10_MHZ capability (Jarod Wilson) [1937053] - mac80211_hwsim: Claim support for setting Beacon frame TX legacy rate (Jarod Wilson) [1937053] - mac80211_hwsim: Advertise support for multicast RX registration (Jarod Wilson) [1937053] - mac80211_hwsim: indicate in IBSS that we have transmitted beacons (Jarod Wilson) [1937053] - mac80211_hwsim: notify wmediumd of used MAC addresses (Jarod Wilson) [1937053] - mac80211_hwsim: use GFP_ATOMIC under spin lock (Jarod Wilson) [1937053] - mac80211_hwsim: Use kstrndup() in place of kasprintf() (Jarod Wilson) [1937053] - mac80211_hwsim: add frame transmission support over virtio (Jarod Wilson) [1937053] - mac80211_hwsim: enable Beacon protection (Jarod Wilson) [1937053] - mac80211_hwsim: add power save support (Jarod Wilson) [1937053] - mac80211_hwsim: remove maximum TX power (Jarod Wilson) [1937053] - mac80211_hwsim: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1937053] - mac80211_hwsim: add support for OCB (Jarod Wilson) [1937053] - mac80211_hwsim: add more 5GHz channels, 5/10 MHz support (Jarod Wilson) [1937053] - mac80211_hwsim: fix incorrect dev_alloc_name failure goto (Jarod Wilson) [1937053] - mac80211_hwsim: Register support for HE meshpoint (Jarod Wilson) [1937053] - mac80211_hwsim: fill boottime_ns in netlink RX path (Jarod Wilson) [1937053] - mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl() (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID API update (Jarod Wilson) [1937053] - mac80211_hwsim: Fix a typo in the name of function 'mac80211_hswim_he_capab()' (Jarod Wilson) [1937053] - mac80211_hwsim: Extended Key ID support (Jarod Wilson) [1937053] - mac80211_hwsim: set p2p device interface support indication (Jarod Wilson) [1937053] - mac80211_hwsim: calculate if_combination.max_interfaces (Jarod Wilson) [1937053] - mac80211_hwsim: propagate genlmsg_reply return code (Jarod Wilson) [1937053] - mac80211_hwsim: Declare support for Multi-BSSID (Jarod Wilson) [1937053] - mac80211_hwsim: Support boottime in scan results (Jarod Wilson) [1937053] - mac80211_hwsim: check that n_limits makes sense (Jarod Wilson) [1937053] - mac80211_hwsim: fix overwriting of if_combination (Jarod Wilson) [1937053] - mac80211_hwsim: fixes kernel crash during mac80211_hwsim init (Jarod Wilson) [1937053] - mac80211_hwsim: allow configurable cipher types (Jarod Wilson) [1937053] - mac80211_hwsim: allow setting iftype support (Jarod Wilson) [1937053] - mac80211_hwsim: move HWSIM_ATTR_RADIO_NAME parsing last (Jarod Wilson) [1937053] - mac80211_hwsim: fix module init error paths for netlink (Jarod Wilson) [1937053] - mac80211_hwsim: drop now unused work-queue from hwsim (Jarod Wilson) [1937053] - mac80211_hwsim: do not omit multicast announce of first added radio (Jarod Wilson) [1937053] - mac80211_hwsim: fix race in radio destruction from netlink notifier (Jarod Wilson) [1937053] - mac80211_hwsim: fix locking when iterating radios during ns exit (Jarod Wilson) [1937053] - wireless: align to draft 11ax D3.0 (Jarod Wilson) [1937053] - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X (Jarod Wilson) [1937053] - mac80211_hwsim: require at least one channel (Jarod Wilson) [1937053] - mac80211_hwsim: Add support for HE (Jarod Wilson) [1937053] - net/fq_impl: do not maintain a backlog-sorted list of flows (Jarod Wilson) [1937053] - net/fq_impl: drop get_default_func, move default flow to fq_tin (Jarod Wilson) [1937053] - net/fq_impl: bulk-free packets from a flow on overmemory (Jarod Wilson) [1937053] - net/fq_impl: use skb_get_hash instead of skb_get_hash_perturb (Jarod Wilson) [1937053] - net/fq_impl: Switch to kvmalloc() for memory allocation (Jarod Wilson) [1937053] - mac80211: set NETIF_F_LLTX when using intermediate tx queues (Jarod Wilson) [1937053] - mac80211: calculate hash for fq without holding fq->lock in itxq enqueue (Jarod Wilson) [1937053] - nvme-tcp: fix misuse of __smp_processor_id with preemption enabled (Gopal Tiwari) [1964227] - powerpc/smp: Cache CPU to chip lookup (Daniel Henrique Barboza) [1934421] - Revert "powerpc/topology: Update topology_core_cpumask" (Daniel Henrique Barboza) [1934421] - powerpc/smp: Reintroduce cpu_core_mask (Daniel Henrique Barboza) [1934421] - scsi: smartpqi: Remove unused functions (Don Brace) [1952154] - scsi: smartpqi: Fix device pointer variable reference static checker issue (Don Brace) [1952154] - scsi: smartpqi: Fix blocks_per_row static checker issue (Don Brace) [1952154] - scsi: smartpqi: Update version to 2.1.8-045 (Don Brace) [1952154] - scsi: smartpqi: Add new PCI IDs (Don Brace) [1952154] - scsi: smartpqi: Correct system hangs when resuming from hibernation (Don Brace) [1952154] - scsi: smartpqi: Update enclosure identifier in sysfs (Don Brace) [1952154] - scsi: smartpqi: Add additional logging for LUN resets (Don Brace) [1952154] - scsi: smartpqi: Update SAS initiator_port_protocols and target_port_protocols (Don Brace) [1952154] - scsi: smartpqi: Add phy ID support for the physical drives (Don Brace) [1952154] - scsi: smartpqi: Convert snprintf() to scnprintf() (Don Brace) [1952154] - scsi: smartpqi: Fix driver synchronization issues (Don Brace) [1952154] - scsi: smartpqi: Update device scan operations (Don Brace) [1952154] - scsi: smartpqi: Update OFA management (Don Brace) [1952154] - scsi: smartpqi: Update RAID bypass handling (Don Brace) [1952154] - scsi: smartpqi: Update suspend/resume and shutdown (Don Brace) [1952154] - scsi: smartpqi: Synchronize device resets with mutex (Don Brace) [1952154] - scsi: smartpqi: Update soft reset management for OFA (Don Brace) [1952154] - scsi: smartpqi: Update event handler (Don Brace) [1952154] - scsi: smartpqi: Add support for wwid (Don Brace) [1952154] - scsi: smartpqi: Remove timeouts from internal cmds (Don Brace) [1952154] - scsi: smartpqi: Disable WRITE SAME for HBA NVMe disks (Don Brace) [1952154] - scsi: smartpqi: Add host level stream detection enable (Don Brace) [1952154] - scsi: smartpqi: Add stream detection (Don Brace) [1952154] - scsi: smartpqi: Align code with oob driver (Don Brace) [1952154] - scsi: smartpqi: Add support for long firmware version (Don Brace) [1952154] - scsi: smartpqi: Add support for BMIC sense feature cmd and feature bits (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID1 writes (Don Brace) [1952154] - scsi: smartpqi: Add support for RAID5 and RAID6 writes (Don Brace) [1952154] - scsi: smartpqi: Refactor scatterlist code (Don Brace) [1952154] - scsi: smartpqi: Refactor aio submission code (Don Brace) [1952154] - scsi: smartpqi: Add support for new product ids (Don Brace) [1952154] - scsi: smartpqi: Correct request leakage during reset operations (Don Brace) [1952154] - scsi: smartpqi: Use host-wide tag space (Don Brace) [1952154] - smartpqi: Use fallthrough pseudo-keyword (Don Brace) [1952154] - scsi: smartpqi: Support device deletion via sysfs (Don Brace) [1952154] - scsi: smartpqi: Use scnprintf() for avoiding potential buffer overflow (Don Brace) [1952154] - smartpqi: remove ioremap_nocache and devm_ioremap_nocache (Don Brace) [1952154] - smartpqi: Use sizeof_field() macro (Don Brace) [1952154] - smartpqi: phase out dma_zalloc_coherent() (Don Brace) [1952154] - scsi: smartpqi: add support for huawei controllers (Don Brace) [1952154] - block: only update parent bi_status when bio fail (Ming Lei) [1945457] - kbuild: trace functions in subdirectories of lib/ (Joe Lawrence) [1942601] - kbuild: introduce ccflags-remove-y and asflags-remove-y (Joe Lawrence) [1942601] - redhat/configs: Add CONFIG_AMD_PMC (David Arcari) [1961755] - platform/x86: amd-pmc: put device on error paths (David Arcari) [1961755] - platform/x86: amd-pmc: Fix CONFIG_DEBUG_FS check (David Arcari) [1961755] - platform/x86: amd-pmc: Add AMD platform support for S2Idle (David Arcari) [1961755] - crypto: DRBG - switch to HMAC SHA512 DRBG as default DRBG (Vladis Dronov) [1956808] - x86/asm: Annotate movdir64b()'s dst argument with __iomem (Jerry Snitselaar) [1920747] - x86/asm: Add a missing __iomem annotation in enqcmds() (Jerry Snitselaar) [1920747]- fm10k: amend removal of MODULE_VERSION (Vladis Dronov) [1955730] - hv_netvsc: Make netvsc/VF binding check both MAC and serial number (Mohammed Gamal) [1940927] - hv_netvsc: Add error handling while switching data path (Mohammed Gamal) [1940927] - netvsc: Update driver to use ethtool_sprintf (Mohammed Gamal) [1940927] - hv_netvsc: Add a comment clarifying batching logic (Mohammed Gamal) [1940927] - hv_netvsc: Fix validation in netvsc_linkstatus_callback() (Mohammed Gamal) [1940927] - hv_netvsc: Restrict configurations on isolated guests (Mohammed Gamal) [1940927] - hv_netvsc: Load and store the proper (NBL_HASH_INFO) per-packet info (Mohammed Gamal) [1940927] - hv_netvsc: Allocate the recv_buf buffers after NVSP_MSG1_TYPE_SEND_RECV_BUF (Mohammed Gamal) [1940927] - hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in netvsc_receive() (Mohammed Gamal) [1940927] - hv_netvsc: Copy packets sent by Hyper-V out of the receive buffer (Mohammed Gamal) [1940927] - net/hyperv: use skb_vlan_tag_*() helpers (Mohammed Gamal) [1940927] - net/vlan: introduce skb_vlan_tag_get_cfi() helper (Mohammed Gamal) [1940927] - hv_netvsc: Add (more) validation for untrusted Hyper-V values (Mohammed Gamal) [1940927] - hv_netvsc: Process NETDEV_GOING_DOWN on VF hot remove (Mohammed Gamal) [1940927] - hv_netvsc: Wait for completion on request SWITCH_DATA_PATH (Mohammed Gamal) [1940927] - hv_netvsc: Check VF datapath when sending traffic to VF (Mohammed Gamal) [1940927] - hv_netvsc: Validate number of allocated sub-channels (Mohammed Gamal) [1940927] - hv_netvsc: Use vmbus_requestor to generate transaction IDs for VMBus hardening (Mohammed Gamal) [1940927] - hv_netvsc: Use HV_HYP_PAGE_SIZE for Hyper-V communication (Mohammed Gamal) [1940927] - scsi: fnic: Use scsi_host_busy_iter() to traverse commands (Ewan D. Milne) [1949250] - scsi: fnic: Kill 'exclude_id' argument to fnic_cleanup_io() (Ewan D. Milne) [1949250] - net: vlan: Avoid using BUG() in vlan_proto_idx() (Davide Caratti) [1964456] - sch_htb: fix null pointer dereference on a null new_q (Ivan Vecera) [1935703] - sch_htb: Fix offload cleanup in htb_destroy on htb_init failure (Ivan Vecera) [1935703] - sch_htb: Fix select_queue for non-offload mode (Ivan Vecera) [1935703] - sch_htb: Stats for offloaded HTB (Ivan Vecera) [1935703] - sch_htb: Hierarchical QoS hardware offload (Ivan Vecera) [1935703] - net: sched: Add extack to Qdisc_class_ops.delete (Ivan Vecera) [1935703] - net: sched: Add multi-queue support to sch_tree_lock (Ivan Vecera) [1935703] - capabilities: require CAP_SETFCAP to map uid 0 (Alexey Gladkov) [1961202] - locking/qrwlock: Cleanup queued_write_lock_slowpath() (Waiman Long) [1954361] - locking/rtmutex: Clean up signal handling in __rt_mutex_slowlock() (Waiman Long) [1954361] - locking/rtmutex: Restrict the trylock WARN_ON() to debug (Waiman Long) [1954361] - locking/rtmutex: Fix misleading comment in rt_mutex_postunlock() (Waiman Long) [1954361] - locking/rtmutex: Consolidate the fast/slowpath invocation (Waiman Long) [1954361] - locking/rtmutex: Make text section and inlining consistent (Waiman Long) [1954361] - locking/rtmutex: Move debug functions as inlines into common header (Waiman Long) [1954361] - locking/rtmutex: Decrapify __rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove pointless CONFIG_RT_MUTEXES=n stubs (Waiman Long) [1954361] - locking/rtmutex: Inline chainwalk depth check (Waiman Long) [1954361] - locking/rtmutex: Move rt_mutex_debug_task_free() to rtmutex.c (Waiman Long) [1954361] - locking/rtmutex: Remove empty and unused debug stubs (Waiman Long) [1954361] - locking/rtmutex: Consolidate rt_mutex_init() (Waiman Long) [1954361] - locking/rtmutex: Remove output from deadlock detector (Waiman Long) [1954361] - locking/rtmutex: Remove rtmutex deadlock tester leftovers (Waiman Long) [1954361] - locking/rtmutex: Remove rt_mutex_timed_lock() (Waiman Long) [1954361] - kernel: delete repeated words in comments (Waiman Long) [1954361] - rbtree, rtmutex: Use rb_add_cached() (Waiman Long) [1954361] - rbtree: Add generic add and find helpers (Waiman Long) [1954361] - locking/rtmutex: Remove unused rt_mutex_cmpxchg_relaxed() (Waiman Long) [1954361] - lib/rbtree: avoid generating code twice for the cached versions (Waiman Long) [1954361] - locking/rtmutex: Fix the preprocessor logic with normal #ifdef #else #endif (Waiman Long) [1954361] - kernel/futex: Explicitly document pi_lock for pi_state owner fixup (Waiman Long) [1954361] - kernel/futex: Move hb unlock out of unqueue_me_pi() (Waiman Long) [1954361] - kernel/futex: Make futex_wait_requeue_pi() only call fixup_owner() (Waiman Long) [1954361] - kernel/futex: Kill rt_mutex_next_owner() (Waiman Long) [1954361] - futex: Remove unused empty compat_exit_robust_list() (Waiman Long) [1954361] - futex: Handle transient "ownerless" rtmutex state correctly (Waiman Long) [1954361] - futex: Convert to use the preferred 'fallthrough' macro (Waiman Long) [1954361] - futex: get rid of a kernel-docs build warning (Waiman Long) [1954361] - futex: arch_futex_atomic_op_inuser() calling conventions change (Waiman Long) [1954361] - s390: Use arch_local_irq_{save,restore}() in early boot code (Waiman Long) [1954361] - lockdep: Add a missing initialization hint to the "INFO: Trying to register non-static key" message (Waiman Long) [1954361] - locking: Fix typos in comments (Waiman Long) [1954361] - locking/lockdep: Update the comment for __lock_release() (Waiman Long) [1954361] - lockdep: Allow tuning tracing capacity constants. (Waiman Long) [1954361] - lockdep: Address clang -Wformat warning printing for hd (Waiman Long) [1954361] - lockdep: Add lockdep lock state defines (Waiman Long) [1954361] - lockdep: Add lockdep_assert_not_held() (Waiman Long) [1954361] - lockdep: Noinstr annotate warn_bogus_irq_restore() (Waiman Long) [1954361] - locking/lockdep: Avoid unmatched unlock (Waiman Long) [1954361] - locking/rwsem: Remove empty rwsem.h (Waiman Long) [1954361] - lockdep: report broken irq restoration (Waiman Long) [1954361] - locking/lockdep: Avoid noinstr warning for DEBUG_LOCKDEP (Waiman Long) [1954361] - locking/lockdep: Exclude local_lock_t from IRQ inversions (Waiman Long) [1954361] - locking/lockdep: Clean up check_redundant() a bit (Waiman Long) [1954361] - locking/lockdep: Add a skip() function to __bfs() (Waiman Long) [1954361] - locking/lockdep: Mark local_lock_t (Waiman Long) [1954361] - lockdep: Put graph lock/unlock under lock_recursion protection (Waiman Long) [1954361] - locking/rtmutex: Add missing kernel-doc markup (Waiman Long) [1954361] - lockdep: Avoid to modify chain keys in validate_chain() (Waiman Long) [1954361] - lockdep: Fix nr_unused_locks accounting (Waiman Long) [1954361] - lockdep: Optimize the memory usage of circular queue (Waiman Long) [1954361] - lockdep: Take read/write status in consideration when generate chainkey (Waiman Long) [1954361] - lockdep/selftest: Add a R-L/L-W test case specific to chain cache behavior (Waiman Long) [1954361] - lockdep: Add recursive read locks into dependency graph (Waiman Long) [1954361] - lockdep: Fix recursive read lock related safe->unsafe detection (Waiman Long) [1954361] - lockdep: Adjust check_redundant() for recursive read change (Waiman Long) [1954361] - lockdep: Support deadlock detection for recursive read locks in check_noncircular() (Waiman Long) [1954361] - lockdep: Make __bfs(.match) return bool (Waiman Long) [1954361] - lockdep: Extend __bfs() to work with multiple types of dependencies (Waiman Long) [1954361] - lockdep: Introduce lock_list::dep (Waiman Long) [1954361] - lockdep: Reduce the size of lock_list::distance (Waiman Long) [1954361] - lockdep: Make __bfs() visit every dependency until a match (Waiman Long) [1954361] - lockdep: Demagic the return value of BFS (Waiman Long) [1954361] - lockdep/Documention: Recursive read lock detection reasoning (Waiman Long) [1954361] - locking: More accurate annotations for read_lock() (Waiman Long) [1954361] - Documentation/locking/locktypes: Fix local_locks documentation (Waiman Long) [1954361] - treewide: Remove uninitialized_var() usage (Waiman Long) [1954361] - lockdep: Use this_cpu_ptr instead of get_cpu_var stats (Waiman Long) [1954361] - KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read (Gavin Shan) [1939323] - KVM: arm64: Don't advertise FEAT_SPE to guests (Gavin Shan) [1939323] - KVM: arm64: Don't print warning when trapping SPE registers (Gavin Shan) [1939323] - KVM: arm64: Fully zero the vcpu state on reset (Gavin Shan) [1939323] - KVM: arm64: Clarify vcpu reset behaviour (Gavin Shan) [1939323] - Documentation: KVM: Document KVM_GUESTDBG_USE_HW control flag for arm64 (Gavin Shan) [1939323] - KVM: arm64: Initialize VCPU mdcr_el2 before loading it (Gavin Shan) [1939323] - KVM: arm64: Handle access to TRFCR_EL1 (Gavin Shan) [1939323] - arm64: Add TRFCR_ELx definitions (Gavin Shan) [1939323] - KVM: arm64: Unify trap handlers injecting an UNDEF (Gavin Shan) [1939323] - KVM: arm64: Use find_vma_intersection() (Gavin Shan) [1939323] - KVM: arm64: Hide kvm_mmu_wp_memory_region() (Gavin Shan) [1939323] - KVM: selftests: vgic_init kvm selftests fixup (Gavin Shan) [1939323] - KVM: selftests: aarch64/vgic-v3 init sequence tests (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Expose GICR_TYPER.Last for userspace (Gavin Shan) [1939323] - kvm: arm64: vgic-v3: Introduce vgic_v3_free_redist_region() (Gavin Shan) [1939323] - KVM: arm64: Simplify argument passing to vgic_uaccess_[read|write] (Gavin Shan) [1939323] - docs: kvm: devices/arm-vgic-v3: enhance KVM_DEV_ARM_VGIC_CTRL_INIT doc (Gavin Shan) [1939323] - KVM: arm/arm64: vgic: Reset base address on kvm_vgic_dist_destroy() (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix error handling in vgic_v3_set_redist_base() (Gavin Shan) [1939323] - KVM: arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION read (Gavin Shan) [1939323] - KVM: arm64: vgic-v3: Fix some error codes when setting RDIST base (Gavin Shan) [1939323] - KVM: arm64: Disable guest access to trace filter controls (Gavin Shan) [1939323] - KVM: arm64: Fix CPU interface MMIO compatibility detection (Gavin Shan) [1939323] - KVM: arm64: Hide system instruction access to Trace registers (Gavin Shan) [1939323] - KVM: arm64: Fix exclusive limit for IPA size (Gavin Shan) [1939323] - KVM: arm64: Ensure I-cache isolation between vcpus of a same VM (Gavin Shan) [1939323] - KVM: arm64: nvhe: Save the SPE context early (Gavin Shan) [1939323] - KVM: arm64: Correct spelling of DBGDIDR register (Gavin Shan) [1939323] - KVM: arm64: Fix AArch32 PMUv3 capping (Gavin Shan) [1939323] - KVM: arm64: Fix missing RES1 in emulation of DBGBIDR (Gavin Shan) [1939323] - KVM: arm64: Remove spurious semicolon in reg_to_encoding() (Gavin Shan) [1939323] - KVM: arm64: Fix hyp_cpu_pm_{init,exit} __init annotation (Gavin Shan) [1939323] - KVM: arm64: Workaround firmware wrongly advertising GICv2-on-v3 compatibility (Gavin Shan) [1939323] - KVM: arm64: Rename __vgic_v3_get_ich_vtr_el2() to __vgic_v3_get_gic_config() (Gavin Shan) [1939323] - KVM: arm64: Some fixes of PV-time interface document (Gavin Shan) [1939323] - KVM: arm64: CSSELR_EL1 max is 13 (Gavin Shan) [1939323] - idr test suite: Improve reporting from idr_find_test_1 (Chris von Recklinghausen) [1946304] - idr test suite: Create anchor before launching throbber (Chris von Recklinghausen) [1946304] - idr test suite: Take RCU read lock in idr_find_test_1 (Chris von Recklinghausen) [1946304] - radix tree test suite: Register the main thread with the RCU library (Chris von Recklinghausen) [1946304] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1946304] - XArray: Add xa_limit_16b (Chris von Recklinghausen) [1946304] - XArray: Fix splitting to non-zero orders (Chris von Recklinghausen) [1946304] - XArray: Fix split documentation (Chris von Recklinghausen) [1946304] - PCI/P2PDMA: Drop double zeroing for sg_init_table() (Myron Stowe) [1955693] - PCI: Simplify bool comparisons (Myron Stowe) [1955693] - PCI: endpoint: Use "NULL" instead of "0" as a NULL pointer (Myron Stowe) [1955693] - PCI: Simplify pci_dev_reset_slot_function() (Myron Stowe) [1955693] - PCI: Update mmap-related #ifdef comments (Myron Stowe) [1955693] - PCI/LINK: Print IRQ number used by port (Myron Stowe) [1955693] - PCI/IOV: Simplify pci-pf-stub with module_pci_driver() (Myron Stowe) [1955693] - PCI: Use scnprintf(), not snprintf(), in sysfs "show" functions (Myron Stowe) [1955693] - x86/PCI: Fix intel_mid_pci.c build error when ACPI is not enabled (Myron Stowe) [1955693] - PCI: Remove unnecessary header includes (Myron Stowe) [1955693] - PCI/PM: Revert "PCI/PM: Apply D2 delay as milliseconds, not microseconds" (Myron Stowe) [1955693] - PCI/PM: Remove unused PCI_PM_BUS_WAIT (Myron Stowe) [1955693] - PCI: shpchp: Remove unused 'rc' assignment (Myron Stowe) [1955693] - PCI: pciehp: Reduce noisiness on hot removal (Myron Stowe) [1955693 1812902] - PCI: rpadlpar: Use for_each_child_of_node() and for_each_node_by_name() (Myron Stowe) [1955693] - PCI: Add Kconfig options for MPS/MRRS strategy (Myron Stowe) [1955693] - PCI: Add schedule point in pci_read_config() (Myron Stowe) [1955693] - PCI/ASPM: Remove struct pcie_link_state.l1ss (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap (Myron Stowe) [1955693] - PCI/ASPM: Pass L1SS Capabilities value, not struct aspm_register_info (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl1 (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_ctl2 (unused) (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.l1ss_cap_ptr (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.latency_encoding (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.enabled (Myron Stowe) [1955693] - PCI/ASPM: Remove struct aspm_register_info.support (Myron Stowe) [1955693] - PCI/ASPM: Use 'parent' and 'child' for readability (Myron Stowe) [1955693] - PCI/ASPM: Move LTR path check to where it's used (Myron Stowe) [1955693] - PCI/ASPM: Move pci_clear_and_set_dword() earlier (Myron Stowe) [1955693] - PCI/ACS: Enable Translation Blocking for external devices (Myron Stowe) [1955693] - scsi: qedi: Remove redundant assignment to variable err (Nilesh Javali) [1920855] - scsi: qedi: Fix error return code of qedi_alloc_global_queues() (Nilesh Javali) [1920855] - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe (Nilesh Javali) [1920855] - scsi: qedf: Simplify bool comparison (Nilesh Javali) [1921608] - bpf, sockmap: Fix incorrect fwd_alloc accounting (Yauheni Kaliuta) [1874006] - bpf: Local storage helpers should check nullness of owner ptr passed (Yauheni Kaliuta) [1874006] - bpf, inode_storage: Put file handler if no storage was found (Yauheni Kaliuta) [1874006] - kbuild: explicitly specify the build id style (Yauheni Kaliuta) [1874006] - bpf: Reject too big ctx_size_in for raw_tp test run (Yauheni Kaliuta) [1874006] - bpf: Fix enum names for bpf_this_cpu_ptr() and bpf_per_cpu_ptr() helpers (Yauheni Kaliuta) [1874006] - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE (Jiri Benc) [1874006] - bpf: Fix tests for local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix "dubious pointer arithmetic" test (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix array access with signed variable test (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for signed 32-bit bound check bug (Yauheni Kaliuta) [1874006] - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds. (Yauheni Kaliuta) [1874006] - lwt_bpf: Replace preempt_disable() with migrate_disable() (Yauheni Kaliuta) [1874006] - lwt: Disable BH too in run_lwt_bpf() (Yauheni Kaliuta) [1874006] - selftests/bpf: Drain ringbuf samples at the end of test (Yauheni Kaliuta) [1874006] - libbpf: Fix ring_buffer__poll() to return number of consumed samples (Yauheni Kaliuta) [1874006] - bpf: Add MAINTAINERS entry for BPF LSM (Yauheni Kaliuta) [1874006] - bpftool: Fix error return value in build_btf_type_table (Yauheni Kaliuta) [1874006] - fail_function: Remove a redundant mutex unlock (Yauheni Kaliuta) [1874006] - selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL (Yauheni Kaliuta) [1874006] - lib/strncpy_from_user.c: Mask out bytes after NUL terminator. (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid failures from skb_to_sgvec when skb has frag_list (Yauheni Kaliuta) [1874006] - bpf, sockmap: Handle memory acct if skb_verdict prog redirects to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self (Yauheni Kaliuta) [1874006] - bpf, sockmap: Use truesize with sk_rmem_schedule() (Yauheni Kaliuta) [1874006] - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect (Yauheni Kaliuta) [1874006] - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be made (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix error return code in run_getsockopt_test() (Yauheni Kaliuta) [1874006] - bpf: Relax return code check for subprograms (Yauheni Kaliuta) [1874006] - tools, bpftool: Add missing close before bpftool net attach exit (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused attribute usage in subprogs_unused test (Yauheni Kaliuta) [1874006] - bpf: Fix unsigned 'datasec_id' compared with zero in check_pseudo_btf_id (Yauheni Kaliuta) [1874006] - bpf: Fix passing zero to PTR_ERR() in bpf_btf_printf_prepare (Yauheni Kaliuta) [1874006] - libbpf: Don't attempt to load unused subprog as an entry-point BPF program (Yauheni Kaliuta) [1874006] - bpf: Update verification logic for LSM programs (Yauheni Kaliuta) [1874006] - bpf: Zero-fill re-used per-cpu map element (Yauheni Kaliuta) [1874006] - bpf: BPF_PRELOAD depends on BPF_SYSCALL (Yauheni Kaliuta) [1874006] - libbpf: Fix possible use after free in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf: Fix null dereference in xsk_socket__delete (Yauheni Kaliuta) [1874006] - libbpf, hashmap: Fix undefined behavior in hash_bits (Yauheni Kaliuta) [1874006] - tools, bpftool: Remove two unused variables. (Yauheni Kaliuta) [1874006] - tools, bpftool: Avoid array index warnings. (Yauheni Kaliuta) [1874006] - bpf: Add struct bpf_redir_neigh forward declaration to BPF helper defs (Yauheni Kaliuta) [1874006] - bpf: Fix -Wshadow warnings (Yauheni Kaliuta) [1874006] - bpf, libbpf: Guard bpf inline asm from bpf_tail_call_static (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of the bpf_per_cpu_ptr() must be checked (Yauheni Kaliuta) [1874006] - bpf: selftest: Ensure the return value of bpf_skc_to helpers must be checked (Yauheni Kaliuta) [1874006] - bpf: Remove unneeded break (Yauheni Kaliuta) [1874006] - net, sockmap: Don't call bpf_prog_put() on NULL pointer (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add locking annotations to iterator (Yauheni Kaliuta) [1874006] - bpf: Fix register equivalence tracking. (Yauheni Kaliuta) [1874006] - bpf, selftests: Add three new sockmap tests for verdict only programs (Yauheni Kaliuta) [1874006] - bpf, selftests: Add option to test_sockmap to omit adding parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Allow skipping sk_skb parser program (Yauheni Kaliuta) [1874006] - bpf, sockmap: Check skb_verdict and skb_parser programs explicitly (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add memory accounting so skbs on ingress lists are visible (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove dropped data on errors in redirect case (Yauheni Kaliuta) [1874006] - bpf, sockmap: Remove skb_set_owner_w wmem will be taken later from sendpage (Yauheni Kaliuta) [1874006] - bpf, sockmap: On receive programs try to fast track SK_PASS ingress (Yauheni Kaliuta) [1874006] - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits (Yauheni Kaliuta) [1874006] - bpf: Migrate from patchwork.ozlabs.org to patchwork.kernel.org. (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor XDP kern program maps with BTF-defined map (Yauheni Kaliuta) [1874006] - samples: bpf: Replace attach_tracepoint() to attach() in xdp_redirect_cpu (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor xdp_monitor with libbpf (Yauheni Kaliuta) [1874006] - bpf, selftests: Add test for different array inner map size (Yauheni Kaliuta) [1874006] - bpf: Allow for map-in-map with dynamic inner array map entries (Yauheni Kaliuta) [1874006] - selftests/bpf: Asm tests for the verifier regalloc tracking. (Yauheni Kaliuta) [1874006] - bpf: Fix selftest compilation on clang 11 (Yauheni Kaliuta) [1874006] - selftest/bpf: Fix profiler test using CO-RE relocation for enums (Yauheni Kaliuta) [1874006] - selftests/bpf: Add profiler test (Yauheni Kaliuta) [1874006] - bpf: Track spill/fill of bounded scalars. (Yauheni Kaliuta) [1874006] - bpf: Propagate scalar ranges through register assignments. (Yauheni Kaliuta) [1874006] - bpf: Add tcp_notsent_lowat bpf setsockopt (Yauheni Kaliuta) [1874006] - selftests/bpf: Validate libbpf's auto-sizing of LD/ST/STX instructions (Yauheni Kaliuta) [1874006] - libbpf: Allow specifying both ELF and raw BTF for CO-RE BTF override (Yauheni Kaliuta) [1874006] - libbpf: Support safe subset of load/store instruction resizing with CO-RE (Yauheni Kaliuta) [1874006] - libbpf: Skip CO-RE relocations for not loaded BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Fix compatibility problem in xsk_socket__create (Yauheni Kaliuta) [1874006] - bpf: Fix typo in uapi/linux/bpf.h (Yauheni Kaliuta) [1874006] - bpf: Fix build failure for kernel/trace/bpf_trace.c with CONFIG_NET=n (Yauheni Kaliuta) [1874006] - kernel/bpf/verifier: Fix build when NET is not enabled (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 (Yauheni Kaliuta) [1874006] - samples: bpf: Driver interrupt statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Count syscalls in xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Split xdpsock stats into new struct (Yauheni Kaliuta) [1874006] - samples/bpf: Fix a compilation error with fallthrough marking (Yauheni Kaliuta) [1874006] - samples/bpf: Change Makefile to cope with latest llvm (Yauheni Kaliuta) [1874006] - bpf, libbpf: Use valid btf in bpf_program__set_attach_target (Yauheni Kaliuta) [1874006] - selftest/bpf: Test pinning map with reused map fd (Yauheni Kaliuta) [1874006] - libbpf: Check if pin_path was set even map fd exist (Yauheni Kaliuta) [1874006] - libbpf: Close map fd if init map slots failed (Yauheni Kaliuta) [1874006] - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI (Yauheni Kaliuta) [1874006] - bpf, verifier: Use fallthrough pseudo-keyword (Yauheni Kaliuta) [1874006] - bpf: Deref map in BPF_PROG_BIND_MAP when it's already used (Yauheni Kaliuta) [1874006] - bpf, sockmap: Update selftests to use skb_adjust_room (Yauheni Kaliuta) [1874006] - bpf, sockmap: Add skb_adjust_room to pop bytes off ingress payload (Yauheni Kaliuta) [1874006] - bpf/selftests: Test for bpf_per_cpu_ptr() and bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introducte bpf_this_cpu_ptr() (Yauheni Kaliuta) [1874006] - bpf: Introduce bpf_per_cpu_ptr() (Yauheni Kaliuta) [1874006] - selftests/bpf: Ksyms_btf to test typed ksyms (Yauheni Kaliuta) [1874006] - bpf/libbpf: BTF support for typed ksyms (Yauheni Kaliuta) [1874006] - bpf: Introduce pseudo_btf_id (Yauheni Kaliuta) [1874006] - selftests/bpf: Properly initialize linfo in sockmap_basic (Yauheni Kaliuta) [1874006] - selftests/bpf: Initialize duration in xdp_noinline.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS (Yauheni Kaliuta) [1874006] - bpf: Introduce BPF_F_PRESERVE_ELEMS for perf event array (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix alignment of .BTF_ids (Yauheni Kaliuta) [1874006] - selftests/bpf: Test "incremental" btf_dump in C format (Yauheni Kaliuta) [1874006] - libbpf: Make btf_dump work with modifiable BTF (Yauheni Kaliuta) [1874006] - bpf, selftests: Use bpf_tail_call_static where appropriate (Yauheni Kaliuta) [1874006] - bpf, libbpf: Add bpf_tail_call_static helper for bpf programs (Yauheni Kaliuta) [1874006] - bpf, net: Rework cookie generator as per-cpu one (Yauheni Kaliuta) [1874006] - bpf: Add classid helper only based on skb->sk (Yauheni Kaliuta) [1874006] - bpf: fix raw_tp test run in preempt kernel (Yauheni Kaliuta) [1874006] - libbpf: Compile in PIC mode only for shared library case (Yauheni Kaliuta) [1874006] - libbpf: Compile libbpf under -O2 level by default and catch extra warnings (Yauheni Kaliuta) [1874006] - bpf: x64: Do not emit sub/add 0, rsp when !stack_depth (Yauheni Kaliuta) [1874006] - bpf, x64: Drop "pop rcx" instruction on BPF JIT epilogue (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix warning in snprintf_btf where system() call unchecked (Yauheni Kaliuta) [1874006] - selftests/bpf: Test BTF's handling of endianness (Yauheni Kaliuta) [1874006] - selftests/bpf: Move and extend ASSERT_xxx() testing macros (Yauheni Kaliuta) [1874006] - selftests: Make sure all 'skel' variables are declared static (Yauheni Kaliuta) [1874006] - selftests/bpf_iter: Don't fail test due to missing __builtin_btf_type_id (Yauheni Kaliuta) [1874006] - bpf/preload: Make sure Makefile cleans up after itself, and add .gitignore (Yauheni Kaliuta) [1874006] - selftests/bpf: Ensure snprintf_btf/bpf_iter tests compatibility with old vmlinux.h (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix unused-result warning in snprintf_btf.c (Yauheni Kaliuta) [1874006] - bpf, selftests: Fix cast to smaller integer type 'int' warning in raw_tp (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Add bpf_seq_printf_btf helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix overflow tests to reflect iter size increase (Yauheni Kaliuta) [1874006] - bpf: Bump iter seq size to support BTF representation of large data structures (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpf_snprintf_btf helper tests (Yauheni Kaliuta) [1874006] - bpf: Add bpf_snprintf_btf helper (Yauheni Kaliuta) [1874006] - bpf: Move to generic BTF show support, apply it to seq files/strings (Yauheni Kaliuta) [1874006] - bpf: Provide function to get vmlinux BTF information (Yauheni Kaliuta) [1874006] - selftest: bpf: Test copying a sockmap and sockhash (Yauheni Kaliuta) [1874006] - selftests: bpf: Remove shared header from sockmap iter test (Yauheni Kaliuta) [1874006] - selftests: bpf: Add helper to compare socket cookies (Yauheni Kaliuta) [1874006] - bpf: sockmap: Enable map_update_elem from bpf_iter (Yauheni Kaliuta) [1874006] - bpf, cpumap: Remove rcpu pointer from cpu_map_build_skb signature (Yauheni Kaliuta) [1874006] - selftests/bpf: Add raw_tp_test_run (Yauheni Kaliuta) [1874006] - libbpf: Support test run of raw tracepoint programs (Yauheni Kaliuta) [1874006] - bpf: Enable BPF_PROG_TEST_RUN for raw_tracepoint (Yauheni Kaliuta) [1874006] - bpf: Add comment to document BTF type PTR_TO_BTF_ID_OR_NULL (Yauheni Kaliuta) [1874006] - bpf: Add AND verifier test case where 32bit and 64bit bounds differ (Yauheni Kaliuta) [1874006] - bpf, verifier: Remove redundant var_off.value ops in scalar known reg cases (Yauheni Kaliuta) [1874006] - bpf: selftest: Add test_btf_skc_cls_ingress (Yauheni Kaliuta) [1874006] - bpf: selftest: Remove enum tcp_ca_state from bpf_tcp_helpers.h (Yauheni Kaliuta) [1874006] - bpf: selftest: Use bpf_skc_to_tcp_sock() in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Use network_helpers in the sock_fields test (Yauheni Kaliuta) [1874006] - bpf: selftest: Adapt sock_fields test to use skel and global variables (Yauheni Kaliuta) [1874006] - bpf: selftest: Move sock_fields test into test_progs (Yauheni Kaliuta) [1874006] - bpf: selftest: Add ref_tracking verifier test for bpf_skc casting (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_assign to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_tcp_*_syncookie to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_storage_*() to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Change bpf_sk_release and bpf_sk_*cgroup_id to accept ARG_PTR_TO_BTF_ID_SOCK_COMMON (Yauheni Kaliuta) [1874006] - bpf: Enable bpf_skc_to_* sock casting helper to networking prog type (Yauheni Kaliuta) [1874006] - bpf: Move the PTR_TO_BTF_ID check to check_reg_type() (Yauheni Kaliuta) [1874006] - Revert "bpf: Fix potential call bpf_link_free() in atomic context" (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Always force HOSTARCH (Yauheni Kaliuta) [1874006] - bpf: Check CONFIG_BPF option for resolve_btfids (Yauheni Kaliuta) [1874006] - bpf: Explicitly size compatible_reg_types (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix stat probe in d_path test (Yauheni Kaliuta) [1874006] - bpf: Using rcu_read_lock for bpf_sk_storage_map iterator (Yauheni Kaliuta) [1874006] - bpf: Use a table to drive helper arg type checks (Yauheni Kaliuta) [1874006] - bpf: Hoist type checking for nullable arg types (Yauheni Kaliuta) [1874006] - bpf: Check ARG_PTR_TO_SPINLOCK register type in check_func_arg (Yauheni Kaliuta) [1874006] - bpf: Set meta->raw_mode for pointers close to use (Yauheni Kaliuta) [1874006] - bpf: Make context access check generic (Yauheni Kaliuta) [1874006] - bpf: Make reference tracking generic (Yauheni Kaliuta) [1874006] - bpf: Make BTF pointer type checking generic (Yauheni Kaliuta) [1874006] - bpf: Allow specifying a BTF ID per argument in function protos (Yauheni Kaliuta) [1874006] - btf: Add BTF_ID_LIST_SINGLE macro (Yauheni Kaliuta) [1874006] - bpf: Check scalar or invalid register in check_helper_mem_access (Yauheni Kaliuta) [1874006] - btf: Make btf_set_contains take a const pointer (Yauheni Kaliuta) [1874006] - bpf: Fix potential call bpf_link_free() in atomic context (Yauheni Kaliuta) [1874006] - bpf: Use hlist_add_head_rcu when linking to local_storage (Yauheni Kaliuta) [1874006] - samples/bpf: Fix test_map_in_map on s390 (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in test_sockopt_sk (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix endianness issue in sk_assign (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tailcall_bpf2bpf tests (Yauheni Kaliuta) [1874006] - bpf: Add abnormal return checks. (Yauheni Kaliuta) [1874006] - bpf: allow for tailcalls in BPF subprograms for x64 JIT (Yauheni Kaliuta) [1874006] - bpf, x64: rework pro/epilogue and tailcall handling in JIT (Yauheni Kaliuta) [1874006] - bpf: Limit caller's stack depth 256 for subprogs with tailcalls (Yauheni Kaliuta) [1874006] - bpf: rename poke descriptor's 'ip' member to 'tailcall_target' (Yauheni Kaliuta) [1874006] - bpf: propagate poke descriptors to subprograms (Yauheni Kaliuta) [1874006] - bpf, x64: use rcx instead of rax for tail call retpolines (Yauheni Kaliuta) [1874006] - selftests/bpf: Merge most of test_btf into test_progs (Yauheni Kaliuta) [1874006] - selftests/bpf: Test load and dump metadata with btftool and skel (Yauheni Kaliuta) [1874006] - bpftool: Support dumping metadata (Yauheni Kaliuta) [1874006] - libbpf: Add BPF_PROG_BIND_MAP syscall and use it on .rodata section (Yauheni Kaliuta) [1874006] - bpf: Add BPF_PROG_BIND_MAP syscall (Yauheni Kaliuta) [1874006] - bpf: Mutex protect used_maps array and count (Yauheni Kaliuta) [1874006] - libbpf: Fix a compilation error with xsk.c for ubuntu 16.04 (Yauheni Kaliuta) [1874006] - samples/bpf: Add quiet option to xdpsock (Yauheni Kaliuta) [1874006] - samples: bpf: Add an option for printing extra statistics in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix possible deadlock in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Fix one packet sending in xdpsock (Yauheni Kaliuta) [1874006] - s390/bpf: Fix multiple tail calls (Yauheni Kaliuta) [1874006] - tcp: Simplify tcp_set_congestion_control() load=false case (Yauheni Kaliuta) [1874006] - tcp: simplify _bpf_setsockopt(): Remove flags argument (Yauheni Kaliuta) [1874006] - tcp: simplify tcp_set_congestion_control(): Always reinitialize (Yauheni Kaliuta) [1874006] - tcp: Simplify EBPF TCP_CONGESTION to always init CC (Yauheni Kaliuta) [1874006] - bpftool: Fix build failure (Yauheni Kaliuta) [1874006] - tools: bpftool: Automate generation for "SEE ALSO" sections in man pages (Yauheni Kaliuta) [1874006] - bpf: Fix comment for helper bpf_current_task_under_cgroup() (Yauheni Kaliuta) [1874006] - selftests/bpf: Define string const as global for test_sysctl_prog.c (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_ksyms on non-SMP kernels (Yauheni Kaliuta) [1874006] - tools: bpftool: Add "inner_map" to "bpftool map create" outer maps (Yauheni Kaliuta) [1874006] - tools: bpftool: Keep errors for map-of-map dumps if distinct from ENOENT (Yauheni Kaliuta) [1874006] - tools: bpftool: Clean up function to dump map entry (Yauheni Kaliuta) [1874006] - selftests: bpf: Test iterating a sockmap (Yauheni Kaliuta) [1874006] - net: Allow iterating sockmap and sockhash (Yauheni Kaliuta) [1874006] - net: sockmap: Remove unnecessary sk_fullsock checks (Yauheni Kaliuta) [1874006] - tools: bpftool: Include common options from separate file (Yauheni Kaliuta) [1874006] - tools: bpftool: Print optional built-in features along with version (Yauheni Kaliuta) [1874006] - selftests, bpftool: Add bpftool (and eBPF helpers) documentation build (Yauheni Kaliuta) [1874006] - tools: bpftool: Log info-level messages when building bpftool man pages (Yauheni Kaliuta) [1874006] - bpf: Remove duplicate headers (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix test_sysctl_loop{1, 2} failure due to clang change (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for map_ptr arithmetic (Yauheni Kaliuta) [1874006] - bpf: Permit map_ptr arithmetic with opcode add and offset 0 (Yauheni Kaliuta) [1874006] - tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874006] - bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874006] - tools: bpftool: Fix formatting in bpftool-link documentation (Yauheni Kaliuta) [1874006] - samples, bpf: Add xsk_fwd test file to .gitignore (Yauheni Kaliuta) [1874006] - samples, bpf: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - libbpf: Fix potential multiplication overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix another __u64 cast in printf (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix check in global_data_init. (Yauheni Kaliuta) [1874006] - selftests/bpf: Add __noinline variant of cls_redirect selftest (Yauheni Kaliuta) [1874006] - selftests/bpf: Modernize xdp_noinline test w/ skeleton and __noinline (Yauheni Kaliuta) [1874006] - selftests/bpf: Add subprogs to pyperf, strobemeta, and l4lb_noinline tests (Yauheni Kaliuta) [1874006] - tools/bpftool: Replace bpf_program__title() with bpf_program__section_name() (Yauheni Kaliuta) [1874006] - selftests/bpf: Don't use deprecated libbpf APIs (Yauheni Kaliuta) [1874006] - libbpf: Deprecate notion of BPF program "title" in favor of "section name" (Yauheni Kaliuta) [1874006] - selftests/bpf: Add selftest for multi-prog sections and bpf-to-bpf calls (Yauheni Kaliuta) [1874006] - libbpf: Add multi-prog section support for struct_ops (Yauheni Kaliuta) [1874006] - libbpf: Implement generalized .BTF.ext func/line info adjustment (Yauheni Kaliuta) [1874006] - libbpf: Make RELO_CALL work for multi-prog sections and sub-program calls (Yauheni Kaliuta) [1874006] - libbpf: Support CO-RE relocations for multi-prog sections (Yauheni Kaliuta) [1874006] - libbpf: Parse multi-function sections into multiple BPF programs (Yauheni Kaliuta) [1874006] - libbpf: Ensure ELF symbols table is found before further ELF processing (Yauheni Kaliuta) [1874006] - selftests/bpf: Test task_file iterator without visiting pthreads (Yauheni Kaliuta) [1874006] - bpf: Avoid iterating duplicated files for task_file iterator (Yauheni Kaliuta) [1874006] - bpf: {cpu,dev}map: Change various functions return type from int to void (Yauheni Kaliuta) [1874006] - module: Fix up module_notifier return values (Yauheni Kaliuta) [1874006] - bpf: Remove bpf_lsm_file_mprotect from sleepable list. (Yauheni Kaliuta) [1874006] - samples/bpf: Fix to xdpsock to avoid recycling frames (Yauheni Kaliuta) [1874006] - samples/bpf: Optimize l2fwd performance in xdpsock (Yauheni Kaliuta) [1874006] - samples/bpf: Add new sample xsk_fwd.c (Yauheni Kaliuta) [1874006] - libbpf: Support shared umems between queues and devices (Yauheni Kaliuta) [1874006] - selftests/bpf: Add sleepable tests (Yauheni Kaliuta) [1874006] - libbpf: Support sleepable progs (Yauheni Kaliuta) [1874006] - bpf: Add bpf_copy_from_user() helper. (Yauheni Kaliuta) [1874006] - bpf: Fix build without BPF_LSM. (Yauheni Kaliuta) [1874006] - bpf: Introduce sleepable BPF programs (Yauheni Kaliuta) [1874006] - mm/error_inject: Fix allow_error_inject function signatures. (Yauheni Kaliuta) [1874006] - mm/filemap.c: enable error injection at add_to_page_cache() (Yauheni Kaliuta) [1874006] - mm/page_alloc.c: allow error injection (Yauheni Kaliuta) [1874006] - bpf: selftests: Add test for different inner map size (Yauheni Kaliuta) [1874006] - bpf: Relax max_entries check for most of the inner map types (Yauheni Kaliuta) [1874006] - bpf: Add map_meta_equal map ops (Yauheni Kaliuta) [1874006] - bpf: Make bpf_link_info.iter similar to bpf_iter_link_info (Yauheni Kaliuta) [1874006] - tools, bpf/build: Cleanup feature files on make clean (Yauheni Kaliuta) [1874006] - libbpf: Fix compilation warnings for 64-bit printf args (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier tests for xor operation (Yauheni Kaliuta) [1874006] - libbpf: Fix unintentional success return code in bpf_object__load (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix spelling mistake "scoket" -> "socket" (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix open call in trigger_fstat_events (Yauheni Kaliuta) [1874006] - selftests/bpf: Add set test to resolve_btfids (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test for d_path helper (Yauheni Kaliuta) [1874006] - selftests/bpf: Add verifier test for d_path helper (Yauheni Kaliuta) [1874006] - bpf: Update .BTF_ids section in btf.rst with sets info (Yauheni Kaliuta) [1874006] - bpf: Add d_path helper (Yauheni Kaliuta) [1874006] - bpf: Add BTF_SET_START/END macros (Yauheni Kaliuta) [1874006] - bpf: Add btf_struct_ids_match function (Yauheni Kaliuta) [1874006] - bpf: Factor btf_struct_access function (Yauheni Kaliuta) [1874006] - bpf: Remove recursion call in btf_struct_access (Yauheni Kaliuta) [1874006] - bpf: Add type_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Add elem_id pointer as argument to __btf_resolve_size (Yauheni Kaliuta) [1874006] - bpf: Move btf_resolve_size into __btf_resolve_size (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add support for set symbols (Yauheni Kaliuta) [1874006] - tools resolve_btfids: Add size check to get_id function (Yauheni Kaliuta) [1874006] - bpf: Disallow BPF_PRELOAD in allmodconfig builds (Yauheni Kaliuta) [1874006] - bpf: Add selftests for local_storage (Yauheni Kaliuta) [1874006] - bpf: Allow local storage to be used from LSM programs (Yauheni Kaliuta) [1874006] - bpf: Implement bpf_local_storage for inodes (Yauheni Kaliuta) [1874006] - bpf: Split bpf_local_storage to bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize bpf_sk_storage (Yauheni Kaliuta) [1874006] - bpf: Generalize caching for sk_storage. (Yauheni Kaliuta) [1874006] - bpf: Renames in preparation for bpf_local_storage (Yauheni Kaliuta) [1874006] - selftests/bpf: Enable tc verbose mode for test_sk_assign (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor tracepoint tracing programs with libbpf (Yauheni Kaliuta) [1874006] - samples: bpf: Refactor kprobe tracing programs with libbpf (Yauheni Kaliuta) [1874006] - selftests: bpf: Fix sockmap update nits (Yauheni Kaliuta) [1874006] - libbpf: Fix type compatibility check copy-paste error (Yauheni Kaliuta) [1874006] - libbpf: Avoid false unuinitialized variable warning in bpf_core_apply_relo (Yauheni Kaliuta) [1874006] - bpf: sk_lookup: Add user documentation (Yauheni Kaliuta) [1874006] - docs: Correct subject prefix and update LLVM info (Yauheni Kaliuta) [1874006] - libbpf: Normalize and improve logging across few functions (Yauheni Kaliuta) [1874006] - libbpf: Skip well-known ELF sections when iterating ELF (Yauheni Kaliuta) [1874006] - libbpf: Add __noinline macro to bpf_helpers.h (Yauheni Kaliuta) [1874006] - libbpf: Factor out common ELF operations and improve logging (Yauheni Kaliuta) [1874006] - libbpf: Add perf_buffer APIs for better integration with outside epoll loop (Yauheni Kaliuta) [1874006] - bpftool: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query callbacks in map element iterators (Yauheni Kaliuta) [1874006] - bpf: Implement link_query for bpf iterators (Yauheni Kaliuta) [1874006] - selftests/bpf: List newest Clang built-ins needed for some CO-RE selftests (Yauheni Kaliuta) [1874006] - selftests/bpf: Fix two minor compilation warnings reported by GCC 4.9 (Yauheni Kaliuta) [1874006] - libbpf: Fix libbpf build on compilers missing __builtin_mul_overflow (Yauheni Kaliuta) [1874006] - libbpf: Fix detection of BPF helper call instruction (Yauheni Kaliuta) [1874006] - selftests/bpf: Add bpffs preload test. (Yauheni Kaliuta) [1874006] - bpf: Add kernel module with user mode driver that populates bpffs. (Yauheni Kaliuta) [1874006] - bpf: Add BPF program and map iterators as built-in BPF programs. (Yauheni Kaliuta) [1874006] - bpf: Factor out bpf_link_by_id() helper. (Yauheni Kaliuta) [1874006] - libbpf: Simplify the return expression of build_map_pin_path() (Yauheni Kaliuta) [1874006] - selftests/bpf: Add tests for ENUMVAL_EXISTS/ENUMVAL_VALUE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement enum value-based CO-RE relocations (Yauheni Kaliuta) [1874006] - selftests/bpf: Add CO-RE relo test for TYPE_ID_LOCAL/TYPE_ID_TARGET (Yauheni Kaliuta) [1874006] - selftests/bpf: Test TYPE_EXISTS and TYPE_SIZE CO-RE relocations (Yauheni Kaliuta) [1874006] - libbpf: Implement type-based CO-RE relocations support (Yauheni Kaliuta) [1874006] - libbpf: Centralize poisoning and poison reallocarray() (Yauheni Kaliuta) [1874006] - tools/bpftool: Remove libbpf_internal.h usage in bpftool (Yauheni Kaliuta) [1874006] - selftests/bpf: Add test validating failure on ambiguous relocation value (Yauheni Kaliuta) [1874006] - libbpf: Improve relocation ambiguity detection (Yauheni Kaliuta) [1874006] - libbpf: Detect minimal BTF support and skip BTF loading, if missing (Yauheni Kaliuta) [1874006] - libbpf: Sanitize BPF program code for bpf_probe_read_{kernel, user}[_str] (Yauheni Kaliuta) [1874006] - libbpf: Factor out common logic of testing and closing FD (Yauheni Kaliuta) [1874006] - libbpf: Make kernel feature probing lazy (Yauheni Kaliuta) [1874006] - libbpf: Disable -Wswitch-enum compiler warning (Yauheni Kaliuta) [1874006] - libbpf: Convert comma to semicolon (Yauheni Kaliuta) [1874006] - samples: bpf: Fix broken bpf programs due to removed symbol (Yauheni Kaliuta) [1874006] - bpf: Replace GPLv2 boilerplate/reference with SPDX - rule 206 (Jiri Benc) [1874006] - LSM: Make some functions static (Yauheni Kaliuta) [1874006] - LSM: Make lsm_early_cred() and lsm_early_task() local functions. (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the ipc security blob (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the task security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the inode security (Yauheni Kaliuta) [1874006] - LSM: Infrastructure management of the file security (Yauheni Kaliuta) [1874006] - Infrastructure management of the cred security blob (Yauheni Kaliuta) [1874006] - kernel: move CONFIG_TASKS_TRACE_RCU fields to task_struct_rh (Jiri Benc) [1874006] - kernel: store pointer to task_struct in task_struct_rh (Jiri Benc) [1874006]- igb: Add double-check MTA_REGISTER for i210 and i211 (Corinna Vinschen) [1920286] - igb: Redistribute memory for transmit packet buffers when in Qav mode (Corinna Vinschen) [1920286] - igb: Fix fall-through warnings for Clang (Corinna Vinschen) [1920286] - intel: clean up mismatched header comments (Corinna Vinschen) [1920286] - igb: check timestamp validity (Corinna Vinschen) [1920286] - igb: Fix duplicate include guard (Corinna Vinschen) [1920286] - intel: Update drivers to use ethtool_sprintf (Corinna Vinschen) [1920286] - net: ethernet: intel: igb: Typo fix in the file igb_main.c (Corinna Vinschen) [1920286] - igb: avoid premature Rx buffer reuse (Corinna Vinschen) [1920286] - igb: remove h from printk format specifier (Corinna Vinschen) [1920286] - igb: Enable RSS for Intel I211 Ethernet Controller (Corinna Vinschen) [1920286] - igb: fix TDBAL register show incorrect value (Corinna Vinschen) [1920286] - net: igb: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920286] - igb: avoid transmit queue timeout in xdp path (Corinna Vinschen) [1920286] - igb: use xdp_do_flush (Corinna Vinschen) [1920286] - igb: skb add metasize for xdp (Corinna Vinschen) [1920286] - igb: XDP extack message on error (Corinna Vinschen) [1920286] - igb: take VLAN double header into account (Corinna Vinschen) [1920286] - igb: XDP xmit back fix error code (Corinna Vinschen) [1920286] - igb: add XDP support (Corinna Vinschen) [1920286] - r8169: don't advertise pause in jumbo mode (Josef Oskera) [1935346] - r8169: fix DMA being used after buffer free if WoL is enabled (Josef Oskera) [1935346] - r8169: fix r8168fp_adjust_ocp_cmd function (Josef Oskera) [1935346] - r8169: use macro pm_ptr (Josef Oskera) [1935346] - r8169: fix resuming from suspend on RTL8105e if machine runs on battery (Josef Oskera) [1935346] - r8169: handle tx before rx in napi poll (Josef Oskera) [1935346] - r8169: disable detection of bogus xid's 308/388 (Josef Oskera) [1935346] - r8169: re-configure WOL settings on resume from hibernation (Josef Oskera) [1935346] - r8169: don't try to disable interrupts if NAPI is scheduled already (Josef Oskera) [1935346] - r8169: Add support for another RTL8168FP (Josef Oskera) [1935346] - r8169: fix WoL on shutdown if CONFIG_DEBUG_SHIRQ is set (Josef Oskera) [1935346] - r8169: work around RTL8125 UDP hw bug (Josef Oskera) [1935346] - r8169: remove not needed call to rtl_wol_enable_rx from rtl_shutdown (Josef Oskera) [1935346] - r8169: improve DASH support (Josef Oskera) [1935346] - r8169: improve rtl8169_rx_csum (Josef Oskera) [1935346] - r8169: align rtl_wol_suspend_quirk with vendor driver and rename it (Josef Oskera) [1935346] - r8169: clean up rtl_pll_power_down/up functions (Josef Oskera) [1935346] - r8169: improve handling D3 PLL power-down (Josef Oskera) [1935346] - r8169: enable PLL power-down for chip versions 34, 35, 36, 42 (Josef Oskera) [1935346] - r8169: make use of the unaligned access helpers (Josef Oskera) [1935346] - r8169: tweak max read request size for newer chips also in jumbo mtu mode (Josef Oskera) [1935346] - r8169: align RTL8168e jumbo pcie read request size with vendor driver (Josef Oskera) [1935346] - r8169: don't wakeup-enable device on shutdown if WOL is disabled (Josef Oskera) [1935346] - r8169: improve rtl_ocp_reg_failure (Josef Oskera) [1935346] - r8169: replace BUG_ON with WARN in _rtl_eri_write (Josef Oskera) [1935346] - r8169: improve RTL8168g PHY suspend quirk (Josef Oskera) [1935346] - r8169: move ERI access functions to avoid forward declaration (Josef Oskera) [1935346] - r8169: work around power-saving bug on some chip versions (Josef Oskera) [1935346] - r8169: make NUM_RX_DESC a signed int (Josef Oskera) [1935346] - r8169: improve rtl_rx (Josef Oskera) [1935346] - r8169: set tc_offset only if tally counter reset isn't supported (Josef Oskera) [1935346] - net: phy: realtek: read actual speed on rtl8211f to detect downshift (Josef Oskera) [1935346] - r8169: use dev_err_probe in rtl_get_ether_clk (Josef Oskera) [1935346] - r8169: reduce number of workaround doorbell rings (Josef Oskera) [1935346] - r8169: remove not needed check in rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: remove nr_frags argument from rtl_tx_slots_avail (Josef Oskera) [1935346] - r8169: improve rtl8169_start_xmit (Josef Oskera) [1935346] - r8169: improve rtl_tx (Josef Oskera) [1935346] - r8169: use READ_ONCE in rtl_tx_slots_avail (Josef Oskera) [1935346] - net: phy: realtek: support paged operations on RTL8201CP (Josef Oskera) [1935346] - r8169: disable hw csum for short packets on all chip versions (Josef Oskera) [1935346] - r8169: fix potential skb double free in an error path (Josef Oskera) [1935346] - r8169: work around short packet hw bug on RTL8125 (Josef Oskera) [1935346] - net: phy: realtek: Add support for RTL8221B-CG series (Josef Oskera) [1935346] - r8169: set IRQF_NO_THREAD if MSI(X) is enabled (Josef Oskera) [1935346] - r8169: align number of tx descriptors with vendor driver (Josef Oskera) [1935346] - r8169: use pm_runtime_put_sync in rtl_open error path (Josef Oskera) [1935346] - r8169: remove unneeded memory barrier in rtl_tx (Josef Oskera) [1935346] - r8169: remove no longer needed private rx/tx packet/byte counters (Josef Oskera) [1935346] - r8169: use struct pcpu_sw_netstats for rx/tx packet/byte counters (Josef Oskera) [1935346] - treewide: Use fallthrough pseudo-keyword (Josef Oskera) [1935346] - r8169: fix jumbo packet handling on RTL8168e (Josef Oskera) [1915314] - sctp: delay auto_asconf init until binding the first addr (Xin Long) [1952020] - netfilter: x_tables: fix compat match/target pad out-of-bound write (Florian Westphal) [1950014] - netfilter: arp_tables: add pre_exit hook for table unregister (Florian Westphal) [1950014] - netfilter: bridge: add pre_exit hooks for ebtable unregistration (Florian Westphal) [1950014] - netfilter: nft_limit: avoid possible divide error in nft_limit_init (Florian Westphal) [1950014] - netfilter: conntrack: do not print icmpv6 as unknown via /proc (Florian Westphal) [1950014] - netfilter: flowtable: fix NAT IPv6 offload mangling (Florian Westphal) [1950014] - netfilter: flowtable: Make sure GC works periodically in idle system (Florian Westphal) [1950014] - netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags (Florian Westphal) [1950014] - netfilter: ctnetlink: fix dump of the expect mask attribute (Florian Westphal) [1950014] - netfilter: x_tables: gpf inside xt_find_revision() (Florian Westphal) [1950014] - netfilter: conntrack: skip identical origin tuple in same zone only (Florian Westphal) [1950014] - flow_dissector: fix byteorder of dissected ICMP ID (Paolo Abeni) [1950288] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled (Paolo Abeni) [1950288] - net: core: devlink: use right genl user_ptr when handling port param get/set (Paolo Abeni) [1950288] - net_sched: gen_estimator: support large ewma log (Paolo Abeni) [1950288] - net: Allow NETIF_F_HW_TLS_TX if IP_CSUM && IPV6_CSUM (Paolo Abeni) [1950288] - net: Disable NETIF_F_HW_TLS_TX when HW_CSUM is disabled (Paolo Abeni) [1950288] - devlink: Add devlink port documentation (Petr Oros) [1935708] - devlink: Support get and set state of port function (Petr Oros) [1935708] - devlink: Support add and delete devlink port (Petr Oros) [1935708] - devlink: Introduce PCI SF port flavour and port attribute (Petr Oros) [1935708] - devlink: Prepare code to fill multiple port function attributes (Petr Oros) [1935708] - net: core: devlink: simplify the return expression of devlink_nl_cmd_trap_set_doit() (Petr Oros) [1935708] - video: hyperv_fb: Add ratelimit on error message (Mohammed Gamal) [1957804] - ovl: allow upperdir inside lowerdir (Miklos Szeredi) [1903647] - i2c: i801: Add support for Intel Alder Lake PCH-P (Steve Best) [1929488] - pinctrl: tigerlake: Add Alder Lake-P ACPI ID (Steve Best) [1929492] - xfs: set aside allocation btree blocks from block reservation (Brian Foster) [1911738] - xfs: introduce in-core global counter of allocbt blocks (Brian Foster) [1911738] - xfs: unconditionally read all AGFs on mounts with perag reservation (Brian Foster) [1911738] - xfs: drop unnecessary setfilesize helper (Brian Foster) [1942348] - xfs: drop unused ioend private merge and setfilesize code (Brian Foster) [1942348] - xfs: open code ioend needs workqueue helper (Brian Foster) [1942348] - xfs: drop submit side trans alloc for append ioends (Brian Foster) [1942348] - blk-mq: Use request queue-wide tags for tagset-wide sbitmap (Ming Lei) [1932145] - blk-mq: Some tag allocation code refactoring (Ming Lei) [1932145] - blk-mq: Swap two calls in blk_mq_exit_queue() (Ming Lei) [1932145] - blk-mq: plug request for shared sbitmap (Ming Lei) [1932145] - blk-mq: set default elevator as deadline in case of hctx shared tagset (Ming Lei) [1932145] - powerpc/perf: Fix PMU constraint check for EBB events (Diego Domingos) [1926573] - s390/idle: fix suspicious RCU usage (Waiman Long) [1963142] - x86/cpu: Add another Alder Lake CPU to the Intel family (Steve Best) [1962033] - x86/split_lock: Don't write MSR_TEST_CTRL on CPUs that aren't whitelisted (Prarit Bhargava) [1837350] - Documentation/admin-guide: Change doc for split_lock_detect parameter (Prarit Bhargava) [1837350] - x86/traps: Handle #DB for bus lock (Prarit Bhargava) [1837350] - x86/cpufeatures: Enumerate #DB for bus lock detection (Prarit Bhargava) [1837350] - x86/split_lock: Enable the split lock feature on another Alder Lake CPU (Prarit Bhargava) [1925373] - x86/cpu: Add another Alder Lake CPU to the Intel family (Prarit Bhargava) [1925373] - x86/split_lock: Enable the split lock feature on Sapphire Rapids and Alder Lake CPUs (Prarit Bhargava) [1925373]- libbpf: Add user-space variants of BPF_CORE_READ() family of macros (Jiri Olsa) [1896362] - libbpf: Switch tracing and CO-RE helper macros to bpf_probe_read_kernel() (Jiri Olsa) [1896362] - selftests/bpf: Fix test_vmlinux test to use bpf_probe_read_user() (Jiri Olsa) [1896362] - samples/bpf, selftests/bpf: Use bpf_probe_read_kernel (Jiri Olsa) [1896362] - bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Jiri Olsa) [1896362] - perf/x86/intel/uncore: Add Rocket Lake support (Michael Petlan) [1837502] - perf/x86/cstate: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/intel: Add Rocket Lake CPU support (Michael Petlan) [1837497] - perf/x86/msr: Add Rocket Lake CPU support (Michael Petlan) [1837497] - tick/nohz: Kick only _queued_ task whose tick dependency is updated (Waiman Long) [1922901] - tick/nohz: Change signal tick dependency to wake up CPUs of member tasks (Waiman Long) [1922901] - tick/nohz: Only wake up a single target cpu when kicking a task (Waiman Long) [1922901] - tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922901] - sched/fair: Fix shift-out-of-bounds in load_balance() (Phil Auld) [1958730] - redhat/configs: Update torture test configs (Waiman Long) [1941211] - rcu: Do not report strict GPs for outgoing CPUs (Waiman Long) [1941211] - rcu,ftrace: Fix ftrace recursion (Waiman Long) [1941211] - arm64: smp: Tell RCU about CPUs that fail to come online (Waiman Long) [1941211] - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled (Waiman Long) [1941211] - rcu-tasks: Enclose task-list scan in rcu_read_lock() (Waiman Long) [1941211] - rcu-tasks: Fix low-probability task_struct leak (Waiman Long) [1941211] - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Shorten per-grace-period sleep for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Selectively enable more RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Use more aggressive polling for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Mark variables static (Waiman Long) [1941211] - rcu-tasks: Prevent complaints of unused show_rcu_tasks_classic_gp_kthread() (Waiman Long) [1941211] - rcu: Remove unused "cpu" parameter from rcu_report_qs_rdp() (Waiman Long) [1941211] - torture: Add gdb support (Waiman Long) [1941211] - rcuperf: Change rcuperf to rcuscale (Waiman Long) [1941211] - sched,rcuperf: Convert to sched_set_fifo_low() (Waiman Long) [1941211] - rcu/rcuperf: Convert to SPDX license identifier (Waiman Long) [1941211] - rcutorture: Allow pointer leaks to test diagnostic code (Waiman Long) [1941211] - rcu: Report QS for outermost PREEMPT=n rcu_read_unlock() for strict GPs (Waiman Long) [1941211] - rcu: locking and unlocking need to always be at least barriers (Waiman Long) [1941211] - rcu: Execute RCU reader shortly after rcu_core for strict GPs (Waiman Long) [1941211] - rcu: Provide optional RCU-reader exit delay for strict GPs (Waiman Long) [1941211] - rcu: Make FQS more aggressive in complaining about offline CPUs (Waiman Long) [1941211] - rcu: Clarify comments about FQS loop reporting quiescent states (Waiman Long) [1941211] - rcu: IPI all CPUs at GP end for strict GPs (Waiman Long) [1941211] - rcu: IPI all CPUs at GP start for strict GPs (Waiman Long) [1941211] - rcu: Attempt QS when CPU discovers GP for strict GPs (Waiman Long) [1941211] - rcu: Do full report for .need_qs for strict GPs (Waiman Long) [1941211] - rcu: Always set .need_qs from __rcu_read_lock() for strict GPs (Waiman Long) [1941211] - rcu: Force DEFAULT_RCU_BLIMIT to 1000 for strict RCU GPs (Waiman Long) [1941211] - rcu: Restrict default jiffies_till_first_fqs for strict RCU GPs (Waiman Long) [1941211] - rcu: Reduce leaf fanout for strict RCU grace periods (Waiman Long) [1941211] - rcu: Add Kconfig option for strict RCU grace periods (Waiman Long) [1941211] - rcu/nocb: Add a warning for non-GP kthread running GP code (Waiman Long) [1941211] - rcu: Move rcu_cpu_started per-CPU variable to rcu_data (Waiman Long) [1941211] - scftorture: Add cond_resched() to test loop (Waiman Long) [1941211] - rcutorture: Hoist OOM registry up one level (Waiman Long) [1941211] - rcutorture: Properly synchronize with OOM notifier (Waiman Long) [1941211] - rcutorture: Properly set rcu_fwds for OOM handling (Waiman Long) [1941211] - torture: Add kvm.sh --help and update help message (Waiman Long) [1941211] - refperf: Avoid null pointer dereference when buf fails to allocate (Waiman Long) [1941211] - rcutorture: Add CONFIG_PROVE_RCU_LIST to TREE05 (Waiman Long) [1941211] - torture: Update initrd documentation (Waiman Long) [1941211] - rcutorture: Replace HTTP links with HTTPS ones (Waiman Long) [1941211] - rcu: Fix kerneldoc comments in rcupdate.h (Waiman Long) [1941211] - scftorture: Adapt memory-ordering test to UP operation (Waiman Long) [1941211] - torture: document --allcpus argument added to the kvm.sh script (Waiman Long) [1941211] - scftorture: Block scftorture_invoker() kthreads for offline CPUs (Waiman Long) [1941211] - scftorture: Check unexpected "switch" statement value (Waiman Long) [1941211] - scftorture: Make symbol 'scf_torture_rand' static (Waiman Long) [1941211] - scftorture: Prevent compiler from reducing race probabilities (Waiman Long) [1941211] - scftorture: Flag errors in torture-compatible manner (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() scf_check initialization (Waiman Long) [1941211] - scftorture: Consolidate scftorture_invoke_one() check and kfree() (Waiman Long) [1941211] - scftorture: Add smp_call_function() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_many() memory-ordering checks (Waiman Long) [1941211] - scftorture: Add smp_call_function_single() memory-ordering checks (Waiman Long) [1941211] - scftorture: Summarize per-thread statistics (Waiman Long) [1941211] - torture: Declare parse-console.sh independence from rcutorture (Waiman Long) [1941211] - tick-sched: Clarify "NOHZ: local_softirq_pending" warning (Waiman Long) [1941211] - scftorture: Implement weighted primitive selection (Waiman Long) [1941211] - torture: Add scftorture to the rcutorture scripting (Waiman Long) [1941211] - scftorture: Add smp_call_function() torture test (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_cpu_stall_ftrace_dump (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_kick_kthreads (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_resched_ns (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_do_batch() access to rcu_divisor (Waiman Long) [1941211] - nocb: Remove show_rcu_nocb_state() false positive printout (Waiman Long) [1941211] - rcu/tree: Remove CONFIG_PREMPT_RCU check in force_qs_rnp() (Waiman Long) [1941211] - nocb: Clarify RCU nocb CPU error message (Waiman Long) [1941211] - rcu/tree: Force quiescent state on callback overload (Waiman Long) [1941211] - rcu/trace: Use gp_seq_req in acceleration's rcu_grace_period tracepoint (Waiman Long) [1941211] - rcu/trace: Print negative GP numbers correctly (Waiman Long) [1941211] - rcutorture: Output number of elapsed grace periods (Waiman Long) [1941211] - rcu: Initialize at declaration time in rcu_exp_handler() (Waiman Long) [1941211] - rcu: Remove KCSAN stubs from update.c (Waiman Long) [1941211] - rcu: Remove KCSAN stubs (Waiman Long) [1941211] - srcu: Remove KCSAN stubs (Waiman Long) [1941211] - rcutorture: Remove KCSAN stubs (Waiman Long) [1941211] - refscale: Change --torture type from refperf to refscale (Waiman Long) [1941211] - refperf: Rename refperf.c to refscale.c and change internal names (Waiman Long) [1941211] - refperf: Rename RCU_REF_PERF_TEST to RCU_REF_SCALE_TEST (Waiman Long) [1941211] - torture: Remove obsolete "cd $KVM" (Waiman Long) [1941211] - torture: Avoid duplicate specification of qemu command (Waiman Long) [1941211] - torture: Dump ftrace at shutdown only if requested (Waiman Long) [1941211] - torture: Add kvm-tranform.sh script for qemu-cmd files (Waiman Long) [1941211] - torture: Add more tracing crib notes to kvm.sh (Waiman Long) [1941211] - torture: Improve diagnostic for KCSAN-incapable compilers (Waiman Long) [1941211] - torture: Correctly summarize build-only runs (Waiman Long) [1941211] - torture: Pass --kmake-arg to all make invocations (Waiman Long) [1941211] - kernel/rcu/tree.c: Fix kernel-doc warnings (Waiman Long) [1941211] - rcu-tasks: Fix synchronize_rcu_tasks_trace() header comment (Waiman Long) [1941211] - rcu: grpnum just records group number (Waiman Long) [1941211] - rcu: grplo/grphi just records CPU number (Waiman Long) [1941211] - rcu: gp_max is protected by root rcu_node's lock (Waiman Long) [1941211] - rcutorture: Check for unwatched readers (Waiman Long) [1941211] - torture: Abstract out console-log error detection (Waiman Long) [1941211] - torture: Add a stop-run capability (Waiman Long) [1941211] - rcu-tasks: Fix code-style issues (Waiman Long) [1941211] - torture: Create qemu-cmd in --buildonly runs (Waiman Long) [1941211] - rcu: Stop shrinker loop (Waiman Long) [1941211] - refperf: Add test for RCU Tasks readers (Waiman Long) [1941211] - refperf: Add test for RCU Tasks Trace readers. (Waiman Long) [1941211] - rcu: Replace 1 with true (Waiman Long) [1941211] - rcu/rcutorture: Replace 0 with false (Waiman Long) [1941211] - refperf: Change readdelay module parameter to nanoseconds (Waiman Long) [1941211] - refperf: Work around 64-bit division (Waiman Long) [1941211] - doc: Document rcuperf's module parameters (Waiman Long) [1941211] - refperf: Adjust refperf.loop default value (Waiman Long) [1941211] - rcu-tasks: Conditionally compile show_rcu_tasks_gp_kthreads() (Waiman Long) [1941211] - rcu-tasks: Add #include of rcupdate_trace.h to update.c (Waiman Long) [1941211] - rcu-tasks: Make rcu_tasks_postscan() be static (Waiman Long) [1941211] - refperf: Add read-side delay module parameter (Waiman Long) [1941211] - lockdep: Complain only once about RCU in extended quiescent state (Waiman Long) [1941211] - refperf: Simplify initialization-time wakeup protocol (Waiman Long) [1941211] - rcu: Allow for smp_call_function() running callbacks from idle (Waiman Long) [1941211] - refperf: Output per-experiment data points (Waiman Long) [1941211] - refperf: Label experiment-number column "Runs" (Waiman Long) [1941211] - refperf: Add warmup and cooldown processing phases (Waiman Long) [1941211] - refperf: More closely synchronize reader start times (Waiman Long) [1941211] - refperf: Convert reader_task structure's "start" field to int (Waiman Long) [1941211] - refperf: Tune reader measurement interval (Waiman Long) [1941211] - refperf: Make functions static (Waiman Long) [1941211] - srcu: Avoid local_irq_save() before acquiring spinlock_t (Waiman Long) [1941211] - refperf: Dynamically allocate thread-summary output buffer (Waiman Long) [1941211] - refperf: Dynamically allocate experiment-summary output buffer (Waiman Long) [1941211] - refperf: Provide module parameter to specify number of experiments (Waiman Long) [1941211] - refperf: Convert nreaders to a module parameter (Waiman Long) [1941211] - refperf: Allow decimal nanoseconds (Waiman Long) [1941211] - refperf: Hoist function-pointer calls out of the loop (Waiman Long) [1941211] - rcu: Introduce single argument kvfree_rcu() interface (Waiman Long) [1941211] - refperf: Add holdoff parameter to allow CPUs to come online (Waiman Long) [1941211] - torture: Add refperf to the rcutorture scripting (Waiman Long) [1941211] - rcuperf: Add comments explaining the high reader overhead (Waiman Long) [1941211] - refperf: Add a test to measure performance of read-side synchronization (Waiman Long) [1941211] - rcuperf: Remove useless while loops around wait_event (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_check_preempt() (Waiman Long) [1941211] - sched,rcu,tracing: Avoid tracing before in_nmi() is correct (Waiman Long) [1941211] - hardirq/nmi: Allow nested nmi_enter() (Waiman Long) [1941211] - powerpc/64s: Include header file to fix a warning (Waiman Long) [1941211] - powerpc/64s: system reset interrupt preserve HSRRs (Waiman Long) [1941211] - powerpc/64s: Fix HV NMI vs HV interrupt recoverability test (Waiman Long) [1941211] - powerpc/traps: fix recoverability of machine check handling on book3s/32 (Waiman Long) [1941211] - powerpc/traps: restore recoverability of machine_check interrupts (Waiman Long) [1941211] - rcu: Mark rcu_nmi_enter() call to rcu_cleanup_after_idle() noinstr (Waiman Long) [1941211] - rcu: Remove initialized but unused rnp from check_slow_task() (Waiman Long) [1941211] - rcu: Update comment from rsp->rcu_gp_seq to rsp->gp_seq (Waiman Long) [1941211] - rcu: Provide __rcu_is_watching() (Waiman Long) [1941211] - doc: Tasks RCU must protect instructions before trampoline (Waiman Long) [1941211] - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls (Waiman Long) [1941211] - rcu-tasks: Convert sleeps to idle priority (Waiman Long) [1941211] - rcu: Expedited grace-period sleeps to idle priority (Waiman Long) [1941211] - rcu: No-CBs-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Priority-boost-related sleeps to idle priority (Waiman Long) [1941211] - rcu: Grace-period-kthread related sleeps to idle priority (Waiman Long) [1941211] - torture: Add --allcpus argument to the kvm.sh script (Waiman Long) [1941211] - torture: Remove whitespace from identify_qemu_vcpus output (Waiman Long) [1941211] - torture: Add script to smoke-test commits in a branch (Waiman Long) [1941211] - trace: events: rcu: Change description of rcu_dyntick trace event (Waiman Long) [1941211] - rcu: Add comment documenting rcu_callback_map's purpose (Waiman Long) [1941211] - rcu: Provide rcu_irq_exit_preempt() (Waiman Long) [1941211] - rcu: Add callbacks-invoked counters (Waiman Long) [1941211] - doc: Timer problems can cause RCU CPU stall warnings (Waiman Long) [1941211] - torture: Remove qemu dependency on EFI firmware (Waiman Long) [1941211] - rcutorture: NULL rcu_torture_current earlier in cleanup code (Waiman Long) [1941211] - rcutorture: Handle non-statistic bang-string error messages (Waiman Long) [1941211] - torture: Set configfile variable to current scenario (Waiman Long) [1941211] - rcutorture: Add races with task-exit processing (Waiman Long) [1941211] - docs: RCU: Don't duplicate chapter names in rculist_nulls.rst (Waiman Long) [1941211] - docs: RCU: Convert stallwarn.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rcuref.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert torture.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert rculist_nulls.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert lockdep-splat.txt to ReST (Waiman Long) [1941211] - docs: RCU: Convert checklist.txt to ReST (Waiman Long) [1941211] - doc: Add rcutorture scripting to torture.txt (Waiman Long) [1941211] - doc: Fix typo "deference" to "dereference" (Waiman Long) [1941211] - docs: locking: convert docs to ReST and rename to *.rst (Waiman Long) [1941211] - doc/rcuref: Document real world examples in kernel (Waiman Long) [1941211] - Documentation/locking/lockdep: Drop last two chars of sample states (Waiman Long) [1941211] - doc: rcu: Suspicious RCU usage is a warning (Waiman Long) [1941211] - RCU/torture.txt: Remove section MODULE PARAMETERS (Waiman Long) [1941211] - Documentation/lockstat: Fix trivial typo (Waiman Long) [1941211] - rcu: Simplify the calculation of rcu_state.ncpus (Waiman Long) [1941211] - srcu: Fix a typo in comment "amoritized"->"amortized" (Waiman Long) [1941211] - rcuperf: Fix printk format warning (Waiman Long) [1941211] - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls (Waiman Long) [1941211] - rcu: Initialize and destroy rcu_synchronize only when necessary (Waiman Long) [1941211] - rcu: Add KCSAN stubs to update.c (Waiman Long) [1941211] - rcu: Add KCSAN stubs (Waiman Long) [1941211] - srcu: Add KCSAN stubs (Waiman Long) [1941211] - rcutorture: Add KCSAN stubs (Waiman Long) [1941211] - rcu/rcutorture: Convert to SPDX license identifier (Waiman Long) [1941211] - rcu: Convert rcu_nohz_full_cpu() ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert rcu_initiate_boost() ULONG_CMP_GE() to time_after() (Waiman Long) [1941211] - rcutorture: Convert ULONG_CMP_LT() to time_before() (Waiman Long) [1941211] - rcu: Convert ULONG_CMP_GE() to time_after() for jiffy comparison (Waiman Long) [1941211] - rcu: Add rcu_gp_might_be_stalled() (Waiman Long) [1941211] - torture: Add a --kasan argument (Waiman Long) [1941211] - torture: Save a few lines by using config_override_param initially (Waiman Long) [1941211] - torture: Allow scenario-specific Kconfig options to override CFcommon (Waiman Long) [1941211] - torture: Allow --kconfig options to override --kcsan defaults (Waiman Long) [1941211] - torture: Abstract application of additional Kconfig options (Waiman Long) [1941211] - torture: Eliminate duplicate #CHECK# from ConfigFragment (Waiman Long) [1941211] - torture: Make --kcsan argument also create a summary (Waiman Long) [1941211] - rcutorture: Make rcu_fwds and rcu_fwd_emergency_stop static (Waiman Long) [1941211] - torture: Add --kcsan argument to top-level kvm.sh script (Waiman Long) [1941211] - rcu-tasks: Allow standalone use of TASKS_{TRACE_,}RCU (Waiman Long) [1941211] - rcu: Remove self-stack-trace when all quiescent states seen (Waiman Long) [1941211] - ftrace: Use synchronize_rcu_tasks_rude() instead of ftrace_sync() (Waiman Long) [1941211] - ftrace: Protect ftrace_graph_hash with ftrace_sync (Waiman Long) [1941211] - ftrace: Add comment to why rcu_dereference_sched() is open coded (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu (Waiman Long) [1941211] - tracing: Annotate ftrace_graph_hash pointer with __rcu (Waiman Long) [1941211] - tracing/fgraph: Fix set_graph_function from showing interrupts (Waiman Long) [1941211] - rcu: Allow rcutorture to starve grace-period kthread (Waiman Long) [1941211] - rcu: When GP kthread is starved, tag idle threads as false positives (Waiman Long) [1941211] - rcutorture: Right-size TREE10 CPU consumption (Waiman Long) [1941211] - rcu: Replace 1 by true (Waiman Long) [1941211] - rcutorture: Add test of holding scheduler locks across rcu_read_unlock() (Waiman Long) [1941211] - rcu: Replace assigned pointer ret value by corresponding boolean value (Waiman Long) [1941211] - rcu-tasks: Add IPI failure count to statistics (Waiman Long) [1941211] - rcutorture: Add TRACE02 scenario enabling RCU Tasks Trace IPIs (Waiman Long) [1941211] - rcu-tasks: Add count for idle tasks on offline CPUs (Waiman Long) [1941211] - rcu-tasks: Add rcu_dynticks_zero_in_eqs() effectiveness statistics (Waiman Long) [1941211] - rcu-tasks: Make RCU tasks trace also wait for idle tasks (Waiman Long) [1941211] - rcu-tasks: Handle the running-offline idle-task special case (Waiman Long) [1941211] - rcu-tasks: Disable CPU hotplug across RCU tasks trace scans (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect more concurrent writes (Waiman Long) [1941211] - rcu-tasks: Allow rcu_read_unlock_trace() under scheduler locks (Waiman Long) [1941211] - rcu-tasks: Avoid IPIing userspace/idle tasks if kernel is so built (Waiman Long) [1941211] - rcu-tasks: Add Kconfig option to mediate smp_mb() vs. IPI (Waiman Long) [1941211] - rcu-tasks: Add grace-period and IPI counts to statistics (Waiman Long) [1941211] - rcu-tasks: Split ->trc_reader_need_end (Waiman Long) [1941211] - rcu-tasks: Provide boot parameter to delay IPIs until late in grace period (Waiman Long) [1941211] - rcu-tasks: Add a grace-period start time for throttling and debug (Waiman Long) [1941211] - rcu: Get rid of some doc warnings in update.c (Waiman Long) [1941211] - rcu-tasks: Make RCU Tasks Trace make use of RCU scheduler hooks (Waiman Long) [1941211] - rcu-tasks: Use context-switch hook for PREEMPT=y kernels (Waiman Long) [1941211] - rcu-tasks: Make rcutorture writer stall output include GP state (Waiman Long) [1941211] - rcu-tasks: Add RCU tasks to rcutorture writer stall output (Waiman Long) [1941211] - rcuperf: Add ability to increase object allocation size (Waiman Long) [1941211] - rcu-tasks: Move #ifdef into tasks.h (Waiman Long) [1941211] - rcutorture: Add flag to produce non-busy-wait task stalls (Waiman Long) [1941211] - rcu: Add per-task state to RCU CPU stall warnings (Waiman Long) [1941211] - sched/core: Add function to sample state of locked-down task (Waiman Long) [1941211] - rcu-tasks: Add stall warnings for RCU Tasks Trace (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Trace (Waiman Long) [1941211] - rcu-tasks: Add an RCU Tasks Trace to simplify protection of tracing hooks (Waiman Long) [1941211] - rcutorture: Add a test for synchronize_rcu_mult() (Waiman Long) [1941211] - rcu: Reinstate synchronize_rcu_mult() (Waiman Long) [1941211] - rcu-tasks: Code movement to allow more Tasks RCU variants (Waiman Long) [1941211] - rcu: Fix the (t=0 jiffies) false positive (Waiman Long) [1941211] - rcu-tasks: Further refactor RCU-tasks to allow adding more variants (Waiman Long) [1941211] - rcu-tasks: Use unique names for RCU-Tasks kthreads and messages (Waiman Long) [1941211] - rcutorture: Add torture tests for RCU Tasks Rude (Waiman Long) [1941211] - rcu-tasks: Add an RCU-tasks rude variant (Waiman Long) [1941211] - rcu-tasks: Refactor RCU-tasks to allow variants to be added (Waiman Long) [1941211] - rcu-tasks: Create struct to hold state information (Waiman Long) [1941211] - rcu-tasks: Move Tasks RCU to its own file (Waiman Long) [1941211] - locktorture.c: Fix if-statement empty body warnings (Waiman Long) [1941211] - rcu: Expedite first two FQS scans under callback-overload conditions (Waiman Long) [1941211] - rcu: Mark rcu_state.gp_seq to detect concurrent writes (Waiman Long) [1941211] - rcutorture: Mark data-race potential for rcu_barrier() test statistics (Waiman Long) [1941211] - rcu: Don't use negative nesting depth in __rcu_read_unlock() (Waiman Long) [1941211] - rcu: Remove unused ->rcu_read_unlock_special.b.deferred_qs field (Waiman Long) [1941211] - rcu: Don't set nesting depth negative in rcu_preempt_deferred_qs() (Waiman Long) [1941211] - rcu: Make rcu_read_unlock_special() safe for rq/pi locks (Waiman Long) [1941211] - rcutorture: Make kvm-recheck-rcu.sh handle truncated lines (Waiman Long) [1941211] - rcu: Make RCU IRQ enter/exit functions rely on in_nmi() (Waiman Long) [1941211] - rcu/tree: Mark the idle relevant functions noinstr (Waiman Long) [1941211] - rcu: Add comments marking transitions between RCU watching and not (Waiman Long) [1941211] - rcu: Update __call_rcu() comments (Waiman Long) [1941211] - rcu: Mark rcu_state.ncpus to detect concurrent writes (Waiman Long) [1941211] - rcu: Use data_race() for RCU CPU stall-warning prints (Waiman Long) [1941211] - rcutorture: Manually clean up after rcu_barrier() failure (Waiman Long) [1941211] - rcutorture: Make rcu_torture_barrier_cbs() post from corresponding CPU (Waiman Long) [1941211] - rcu: Make nocb_gp_wait() double-check unexpected-callback warning (Waiman Long) [1941211] - rcu: Tighten rcu_lockdep_assert_cblist_protected() check (Waiman Long) [1941211] - rcu: Optimize and protect atomic_cmpxchg() loop (Waiman Long) [1941211] - rcu/nocb: Add missing annotation for rcu_nocb_bypass_unlock() (Waiman Long) [1941211] - rcu: Don't flag non-starting GPs before GP kthread is running (Waiman Long) [1941211] - rcu: Fix rcu_barrier_callback() race condition (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_start (Waiman Long) [1941211] - rcu: Add missing annotation for rcu_nocb_bypass_lock() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_finish() (Waiman Long) [1941211] - rcu: Add missing annotation for exit_tasks_rcu_start() (Waiman Long) [1941211] - rculist: Add brackets around cond argument in __list_check_rcu macro (Waiman Long) [1941211] - rcu: Remove dead code from rcu_segcblist_insert_pend_cbs() (Waiman Long) [1941211] - rcutorture: Annotation lockless accesses to rcu_torture_current (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_data ->gpwrap (Waiman Long) [1941211] - rcu-tasks: *_ONCE() for rcu_tasks_cbs_head (Waiman Long) [1941211] - rcu: Add *_ONCE() for grace-period progress indicators (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->boost_tasks (Waiman Long) [1941211] - srcu: Add data_race() to ->srcu_lock_count and ->srcu_unlock_count arrays (Waiman Long) [1941211] - rcutorture: Add READ_ONCE() to rcu_torture_count and rcu_torture_batch (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_segcblist ->tails[] (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmaskinitnext (Waiman Long) [1941211] - rcu: Add READ_ONCE and data_race() to rcu_node ->boost_tasks (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_state ->gp_req_activity (Waiman Long) [1941211] - rcu: Add READ_ONCE() to rcu_node ->gp_seq (Waiman Long) [1941211] - rcu: Add *_ONCE() and data_race() to rcu_node ->exp_tasks plus locking (Waiman Long) [1941211] - rcu: Add *_ONCE() to rcu_node ->boost_kthread_status (Waiman Long) [1941211] - rcu: Add WRITE_ONCE to rcu_node ->exp_seq_rq store (Waiman Long) [1941211] - srcu: Hold srcu_struct ->lock when updating ->srcu_gp_seq (Waiman Long) [1941211] - rcu: Add WRITE_ONCE() to rcu_node ->qsmask update (Waiman Long) [1941211] - rcu: Provide debug symbols and line numbers in KCSAN runs (Waiman Long) [1941211] - rcu: Fix exp_funnel_lock()/rcu_exp_wait_wake() datarace (Waiman Long) [1941211] - srcu: Fix process_srcu()/srcu_batches_completed() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/srcu_get_delay() datarace (Waiman Long) [1941211] - srcu: Fix __call_srcu()/process_srcu() datarace (Waiman Long) [1941211] - rcutorture: Fix stray access to rcu_fwd_cb_nodelay (Waiman Long) [1941211] - rcutorture: Fix rcu_torture_one_read()/rcu_torture_writer() data race (Waiman Long) [1941211] - rcutorture: Make kvm-find-errors.sh abort on bad directory (Waiman Long) [1941211] - rcutorture: Summarize summary of build and run results (Waiman Long) [1941211] - rcutorture: Add 100-CPU configuration (Waiman Long) [1941211] - rcu: Warn on for_each_leaf_node_cpu_mask() from non-leaf (Waiman Long) [1941211] - rcu: Fix spelling mistake "leval" -> "level" (Waiman Long) [1941211] - torture: Allow disabling of boottime CPU-hotplug torture operations (Waiman Long) [1941211] - rcutorture: Suppress boottime bad-sequence warnings (Waiman Long) [1941211] - rcutorture: Allow boottime stall warnings to be suppressed (Waiman Long) [1941211] - torture: Forgive -EBUSY from boottime CPU-hotplug operations (Waiman Long) [1941211] - rcutorture: Refrain from callback flooding during boot (Waiman Long) [1941211] - torture: Make results-directory date format completion-friendly (Waiman Long) [1941211] - rcutorture: Suppress forward-progress complaints during early boot (Waiman Long) [1941211] - timer: Use hlist_unhashed_lockless() in timer_pending() (Waiman Long) [1941211] - rcu: React to callback overload by boosting RCU readers (Waiman Long) [1941211] - rcu: React to callback overload by aggressively seeking quiescent states (Waiman Long) [1941211] - rcu: Add and update docbook header comments in list.h (Waiman Long) [1941211] - list: Add hlist_unhashed_lockless() (Waiman Long) [1941211] - list: Don't use WRITE_ONCE() in hlist_add_behind() (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_BITS(var, mask) (Waiman Long) [1941211] - kcsan: Add kcsan_set_access_mask() support (Waiman Long) [1941211] - kcsan: Introduce kcsan_value_change type (Waiman Long) [1941211] - kcsan: Move interfaces that affects checks to kcsan-checks.h (Waiman Long) [1941211] - kcsan: Fix misreporting if concurrent races on same address (Waiman Long) [1941211] - kcsan: Expose core configuration parameters as module params (Waiman Long) [1941211] - kcsan: Add test to generate conflicts via debugfs (Waiman Long) [1941211] - kcsan: Introduce ASSERT_EXCLUSIVE_*() macros (Waiman Long) [1941211] - kcsan: Introduce KCSAN_ACCESS_ASSERT access type (Waiman Long) [1941211] - kcsan: Fix 0-sized checks (Waiman Long) [1941211] - kcsan: Clean up the main KCSAN Kconfig option (Waiman Long) [1941211] - kcsan: Clarify Kconfig option KCSAN_IGNORE_ATOMICS (Waiman Long) [1941211] - kcsan: Add option to assume plain aligned writes up to word size are atomic (Waiman Long) [1941211] - kcsan: Add docbook header for data_race() (Waiman Long) [1941211] - kcsan: Address missing case with KCSAN_REPORT_VALUE_CHANGE_ONLY (Waiman Long) [1941211] - include/linux: Add instrumented.h infrastructure (Waiman Long) [1941211] - kcsan: Make KCSAN compatible with lockdep (Waiman Long) [1941211] - kcsan: Rate-limit reporting per data races (Waiman Long) [1941211] - kcsan: Show full access type in report (Waiman Long) [1941211] - kcsan: Prefer __always_inline for fast-path (Waiman Long) [1941211] - kcsan: Improve various small stylistic details (Waiman Long) [1941211] - x86, kcsan: Enable KCSAN for x86 (Waiman Long) [1941211] - build, kcsan: Add KCSAN build exceptions (Waiman Long) [1941211] - x86/uaccess, kcov: Disable stack protector (Waiman Long) [1941211] - doc: Convert to rcubarrier.txt to ReST (Waiman Long) [1941211] - doc: Convert to rcu_dereference.txt to rcu_dereference.rst (Waiman Long) [1941211] - doc: Convert whatisRCU.txt to .rst (Waiman Long) [1941211] - doc: Converted NMI-RCU.txt to NMI-RCU.rst. (Waiman Long) [1941211] - doc: Convert arrayRCU.txt to arrayRCU.rst (Waiman Long) [1941211] - doc: Update list_for_each_entry_rcu() documentation (Waiman Long) [1941211] - Restore docs "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Restore docs "treewide: Rename rcu_dereference_raw_notrace() to _check()" (Waiman Long) [1941211] - docs: rcu: Increase toctree to 3 (Waiman Long) [1941211] - docs: rcu: Correct links referring to titles (Waiman Long) [1941211] - docs: rcu: convert some articles from html to ReST (Waiman Long) [1941211] - Revert docs from "rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock()" (Waiman Long) [1941211] - Documentation: RCU: Add TOC tree hooks (Waiman Long) [1941211] - doc: Describe choice of rcu_dereference() APIs and __rcu usage (Waiman Long) [1941211] - doc: Remove obsolete RCU update functions from RCU documentation (Waiman Long) [1941211] - scsi: ibmvfc: Free channel_setup_buf during device tear down (Steve Best) [1938102] - blk-mq: clearing flush request reference in tags->rqs[] (Ming Lei) [1811030] - blk-mq: clear stale request in tags->rq[] before freeing one request pool (Ming Lei) [1811030] - blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter (Ming Lei) [1811030] - vsock/vmci: log once the failed queue pair allocation (Stefano Garzarella) [1958248] - VMCI: Stop log spew when qp allocation isn't possible (Stefano Garzarella) [1958248] - vsock/virtio: update credit only if socket is not closed (Stefano Garzarella) [1921694] - powerpc/security: Fix debugfs data leak on 32-bit (Steve Best) [1935661] - powerpc/security: Show powerpc_security_features in debugfs (Steve Best) [1935661] - redhat/configs: Add CONFIG_SYSTEM_REVOCATION_KEYS and CONFIG_SYSTEM_REVOCATION_LIST (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: add 'x509_revocation_list' to gitignore (Vladis Dronov) [1893793] {CVE-2020-26541} - integrity: Load mokx variables into the blacklist keyring (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add ability to preload revocation certs (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Move load_system_certificate_list to a common function (Vladis Dronov) [1893793] {CVE-2020-26541} - certs: Add EFI_CERT_X509_GUID support for dbx entries (Vladis Dronov) [1893793] {CVE-2020-26541} - pNFS/flexfiles: Fix array overflow when flexfiles mirroring is enabled (Benjamin Coddington) [1949575] - net/sunrpc: fix useless comparison in proc_do_xprt() (Benjamin Coddington) [1949575] - net/sunrpc: return 0 on attempt to write to "transports" (Benjamin Coddington) [1949575] - NFSD: MKNOD should return NFSERR_BADTYPE instead of NFSERR_INVAL (Benjamin Coddington) [1949575] - NFSD: NFSv3 PATHCONF Reply is improperly formed (Benjamin Coddington) [1949575] - nfsroot: Default mount option should ask for built-in NFS version (Benjamin Coddington) [1949575] - nfsd: remove unneeded break (Benjamin Coddington) [1949575] - net/sunrpc: Fix return value for sysctl sunrpc.transports (Benjamin Coddington) [1949575] - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag (Benjamin Coddington) [1949575] - NFSv4: Fix up RCU annotations for struct nfs_netns_client (Benjamin Coddington) [1949575] - NFS: Only reference user namespace from nfs4idmap struct instead of cred (Benjamin Coddington) [1949575] - NFSD: Hoist status code encoding into XDR encoder functions (Benjamin Coddington) [1949575] - NFSv4: Use the net namespace uniquifier if it is set (Benjamin Coddington) [1949575] - NFSv4: Clean up initialisation of uniquified client id strings (Benjamin Coddington) [1949575] - SUNRPC: Add an xdr_align_data() function (Benjamin Coddington) [1949575] - SUNRPC: Add the ability to expand holes in data pages (Benjamin Coddington) [1949575] - SUNRPC: Split out _shift_data_right_tail() (Benjamin Coddington) [1949575] - SUNRPC: Split out xdr_realign_pages() from xdr_align_pages() (Benjamin Coddington) [1949575] - NFS: Use xdr_page_pos() in NFSv4 decode_getacl() (Benjamin Coddington) [1949575] - SUNRPC: Implement a xdr_page_pos() function (Benjamin Coddington) [1949575] - NFS: fix nfs_path in case of a rename retry (Benjamin Coddington) [1949575] - NFSD: Map nfserr_wrongsec outside of nfsd_dispatch (Benjamin Coddington) [1949575] - NFSD: Remove the RETURN_STATUS() macro (Benjamin Coddington) [1949575] - NFSD: Call NFSv2 encoders on error returns (Benjamin Coddington) [1949575] - NFSD: Fix .pc_release method for NFSv2 (Benjamin Coddington) [1949575] - NFSD: Remove vestigial typedefs (Benjamin Coddington) [1949575] - NFSD: Refactor nfsd_dispatch() error paths (Benjamin Coddington) [1949575] - NFSD: Clean up nfsd_dispatch() variables (Benjamin Coddington) [1949575] - NFSD: Clean up stale comments in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Clean up switch statement in nfsd_dispatch() (Benjamin Coddington) [1949575] - NFSD: Encoder and decoder functions are always present (Benjamin Coddington) [1949575] - NFSACL: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - lockd: Replace PROC() macro with open code (Benjamin Coddington) [1949575] - NFSD: Add missing NFSv2 .pc_func methods (Benjamin Coddington) [1949575] - fs: nfs: return per memcg count for xattr shrinkers (Benjamin Coddington) [1949575] - nfs: remove incorrect fallthrough label (Benjamin Coddington) [1949575] - nfsd: rq_lease_breaker cleanup (Benjamin Coddington) [1949575] - sunrpc: simplify do_cache_clean (Benjamin Coddington) [1949575] - sunrpc: cache : Replace seq_printf with seq_puts (Benjamin Coddington) [1949575] - silence nfscache allocation warnings with kvzalloc (Benjamin Coddington) [1949575] - nfsd: fix comparison to bool warning (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr XDR functions (Benjamin Coddington) [1949575] - NFSD: Correct type annotations in user xattr helpers (Benjamin Coddington) [1949575] - SUNRPC/NFSD: Implement xdr_reserve_space_vec() (Benjamin Coddington) [1949575] - nfsd: rename delegation related tracepoints to make them less confusing (Benjamin Coddington) [1949575] - nfsd: Remove unnecessary assignment in nfs4xdr.c (Benjamin Coddington) [1949575] - net: sunrpc: delete repeated words (Benjamin Coddington) [1949575] - nfsd: Fix typo in comment (Benjamin Coddington) [1949575] - nfsd: give up callbacks on revoked delegations (Benjamin Coddington) [1949575] - nfs: fix spellint typo in pnfs.c (Benjamin Coddington) [1949575] - fs,nfs: lift compat nfs4 mount data handling into the nfs code (Benjamin Coddington) [1949575] - nfs: simplify nfs4_parse_monolithic (Benjamin Coddington) [1949575] - xprtrdma: drop double zeroing (Benjamin Coddington) [1949575] - NFSv4.2: xattr cache: remove unused cache struct field (Benjamin Coddington) [1949575] - nfs: Convert to use the preferred fallthrough macro (Benjamin Coddington) [1949575] - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source (Benjamin Coddington) [1949575] - Replace HTTP links with HTTPS ones: NFS, SUNRPC, and LOCKD clients (Benjamin Coddington) [1949575] - sunrpc: fix duplicated word in (Benjamin Coddington) [1949575] - SUNRPC: Remove remaining dprintks from sched.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in RPC queuing functions (Benjamin Coddington) [1949575] - SUNRPC: Clean up RPC scheduler tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Replace rpcbind dprintk call sites with tracepoints (Benjamin Coddington) [1949575] - SUNRPC: Remove more dprintks in rpcb_clnt.c (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call sites in rpcbind XDR functions (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_setport into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove rpcb_getport_async dprintk call sites (Benjamin Coddington) [1949575] - SUNRPC: Clean up call_bind_status() observability (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_decode (Benjamin Coddington) [1949575] - SUNRPC: Trace call_refresh events (Benjamin Coddington) [1949575] - SUNRPC: Add trace_rpc_timeout_status() (Benjamin Coddington) [1949575] - SUNRPC: Mitigate cond_resched() in xprt_transmit() (Benjamin Coddington) [1949575] - SUNRPC: Replace connect dprintk call sites with a tracepoint (Benjamin Coddington) [1949575] - SUNRPC: Remove dprintk call site in call_start() (Benjamin Coddington) [1949575] - SUNRPC: Remove the dprint_status() macro (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xs_nospace() (Benjamin Coddington) [1949575] - SUNRPC: Replace dprintk() call site in xprt_prepare_transmit (Benjamin Coddington) [1949575] - SUNRPC: Update debugging instrumentation in xprt_do_reserve() (Benjamin Coddington) [1949575] - SUNRPC: Remove debugging instrumentation from xprt_release (Benjamin Coddington) [1949575] - SUNRPC: Hoist trace_xprtrdma_op_allocate into generic code (Benjamin Coddington) [1949575] - SUNRPC: Remove trace_xprt_complete_rqst() (Benjamin Coddington) [1949575] - SUNRPC dont update timeout value on connection reset (Benjamin Coddington) [1949575] - nfs4: strengthen error check to avoid unexpected result (Benjamin Coddington) [1949575] - NFS: remove redundant pointer clnt (Benjamin Coddington) [1949575] - sunrpc: Avoid comma separated statements (Benjamin Coddington) [1949575]- Revert "sctp: Fix SHUTDOWN CTSN Ack in the peer restart case" (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_b (Xin Long) [1953839] - sctp: do asoc update earlier in sctp_sf_do_dupcook_a (Xin Long) [1953839] - NFSv4: Fixes for nfs4_bitmask_adjust() (Steve Dickson) [1926961] - powerpc/paravirt: Use is_kvm_guest() in vcpu_is_preempted() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Reintroduce is_kvm_guest() as a fast-path check (Desnes A. Nunes do Rosario) [1918720] - powerpc: Rename is_kvm_guest() to check_kvm_guest() (Desnes A. Nunes do Rosario) [1918720] - powerpc: Refactor is_kvm_guest() declaration to new header (Desnes A. Nunes do Rosario) [1918720] - powerpc/pseries: Move some PAPR paravirt functions to their own file (Desnes A. Nunes do Rosario) [1918720] - powerpc/shared: Use static key to detect shared processor (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Fix oops in __spin_yield() on bare metal (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Rename SPLPAR-only spinlocks (Desnes A. Nunes do Rosario) [1918720] - powerpc/spinlocks: Refactor SHARED_PROCESSOR (Desnes A. Nunes do Rosario) [1918720] - Revert "ACPICA: Interpreter: fix memory leak by using existing buffer" (Mark Langsdorf) [1935928] - x86/efi: Remove EFI PGD build time checks (Mark Langsdorf) [1935928] - ACPI: scan: Fix battery devices sometimes never binding (Mark Langsdorf) [1935928] - ACPI/IORT: Do not blindly trust DMA masks from firmware (Mark Langsdorf) [1935928] - ACPI: thermal: Do not call acpi_thermal_check() directly (Mark Langsdorf) [1935928] - ACPI: sysfs: Prefer "compatible" modalias (Mark Langsdorf) [1935928] - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error (Mark Langsdorf) [1935928] - ACPI: scan: Harden acpi_device_add() against device ID overflows (Mark Langsdorf) [1935928] - ACPI: Update Kconfig help text for items that are no longer modular (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Drop unused local variables and related code (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Move x86-specific code to the x86 directory (Mark Langsdorf) [1935928] - ACPI: scan: Add Intel Baytrail Mailbox Device to acpi_ignore_dep_ids (Mark Langsdorf) [1935928] - ACPI: scan: Avoid unnecessary second pass in acpi_bus_scan() (Mark Langsdorf) [1935928] - ACPI: scan: Defer enumeration of devices with _DEP lists (Mark Langsdorf) [1935928] - ACPI: scan: Evaluate _DEP before adding the device (Mark Langsdorf) [1935928] - ACPI: PM: s2idle: Add AMD support to handle _DSM (Mark Langsdorf) [1935928] - ACPI: processor: fix NONE coordination for domain mapping failure (Mark Langsdorf) [1935928] - cpufreq: Fix cpufreq_online() return value on errors (Mark Langsdorf) [1935928] - opp: of: Allow empty opp-table with opp-shared (Mark Langsdorf) [1935928] - dt-bindings: opp: Allow empty OPP tables (Mark Langsdorf) [1935928] - ACPI: Drop acpi_dev_irqresource_disabled() (Mark Langsdorf) [1935928] - resource: Add irqresource_disabled() (Mark Langsdorf) [1935928] - genirq/affinity: Add irq_update_affinity_desc() (Mark Langsdorf) [1935928] - driver core: Add fwnode_init() (Mark Langsdorf) [1935928] - ACPI: scan: Fix up _DEP-related terminology with supplier/consumer (Mark Langsdorf) [1935928] - ACPI: scan: Drop INT3396 from acpi_ignore_dep_ids[] (Mark Langsdorf) [1935928] - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources walks" (Mark Langsdorf) [1935928] - ACPI: scan: Add PNP0D80 to the _DEP exceptions list (Mark Langsdorf) [1935928] - PM: ACPI: Refresh wakeup device power configuration every time (Mark Langsdorf) [1935928] - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup() (Mark Langsdorf) [1935928] - ACPI: scan: Call acpi_get_object_info() from acpi_add_single_object() (Mark Langsdorf) [1935928] - ACPI: scan: Add acpi_info_matches_hids() helper (Mark Langsdorf) [1935928] - ACPICA: Update version to 20201113 (Mark Langsdorf) [1935928] - ACPICA: Interpreter: fix memory leak by using existing buffer (Mark Langsdorf) [1935928] - ACPICA: Add function trace macros to improve debugging (Mark Langsdorf) [1935928] - ACPICA: Also handle "orphan" _REG methods for GPIO OpRegions (Mark Langsdorf) [1935928] - ACPICA: Remove extreaneous "the" in comments (Mark Langsdorf) [1935928] - ACPICA: Add 5 new UUIDs to the known UUID table (Mark Langsdorf) [1935928] - ACPI: processor: Drop duplicate setting of shared_cpu_map (Mark Langsdorf) [1935928] - ACPI: EC: Clean up status flags checks in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Untangle error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Simplify error handling in advance_transaction() (Mark Langsdorf) [1935928] - ACPI: EC: Rename acpi_ec_is_gpe_raised() (Mark Langsdorf) [1935928] - ACPI: EC: Fold acpi_ec_clear_gpe() into its caller (Mark Langsdorf) [1935928] - ACPI: EC: Eliminate in_interrupt() usage (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Update the kernel doc (Mark Langsdorf) [1935928] - ACPI: acpi_drivers.h: Remove the leftover dead code (Mark Langsdorf) [1935928] - ACPI: tiny-power-button: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the code using module_acpi_driver() (Mark Langsdorf) [1935928] - ACPI: SBS: Simplify the driver init code (Mark Langsdorf) [1935928] - ACPI: debug: Remove the not used function (Mark Langsdorf) [1935928] - ACPI: processor: Remove the duplicated ACPI_PROCESSOR_CLASS macro (Mark Langsdorf) [1935928] - ACPI: watchdog: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - PCI/ACPI: Replace open coded variant of resource_union() (Mark Langsdorf) [1935928] - resource: Introduce resource_union() for overlapping resources (Mark Langsdorf) [1935928] - resource: Group resource_overlaps() with other inline helpers (Mark Langsdorf) [1935928] - resource: Simplify region_intersects() by reducing conditionals (Mark Langsdorf) [1935928] - ACPI, APEI: make apei_resources_all static (Mark Langsdorf) [1935928] - mm/mmu_notifier: allocate mmu_notifier_rh in __mmu_notifier_register() (Jeremy Cline) [1909072]- Amends commit ea6244cc248b to include a version string in module info. (Ken Cox) [1955726] - i40e: use minimal admin queue for kdump (Stefan Assmann) [1834962] - i40e: use minimal Rx and Tx ring buffers for kdump (Stefan Assmann) [1834962] - i40e: use minimal Tx and Rx pairs for kdump (Stefan Assmann) [1834962] - net/sched: sch_frag: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - openvswitch: fix stack OOB read while fragmenting IPv4 packets (Davide Caratti) [1924608] - net/sched: act_ct: fix wild memory access when clearing fragments (Davide Caratti) [1924608] - selinux: fall back to SECURITY_FS_USE_GENFS if no xattr support (Ondrej Mosnacek) [1934093 1915825] - selinux: mark some global variables __ro_after_init (Ondrej Mosnacek) [1934093] - selinux: make selinuxfs_mount static (Ondrej Mosnacek) [1934093] - selinux: drop the unnecessary aurule_callback variable (Ondrej Mosnacek) [1934093] - selinux: remove unused global variables (Ondrej Mosnacek) [1934093] - selinux: fix inconsistency between inode_getxattr and inode_listsecurity (Ondrej Mosnacek) [1934093] - selinux: Fix fall-through warnings for Clang (Ondrej Mosnacek) [1934093] - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling (Ondrej Mosnacek) [1934093] - selinux: allow dontauditx and auditallowx rules to take effect without allowx (Ondrej Mosnacek) [1934093] - selinux: fix error initialization in inode_doinit_with_dentry() (Ondrej Mosnacek) [1934093] - selinux: Fix error return code in sel_ib_pkey_sid_slow() (Ondrej Mosnacek) [1934093] - selinux: access policycaps with READ_ONCE/WRITE_ONCE (Ondrej Mosnacek) [1934093] - selinux: delete repeated words in comments (Ondrej Mosnacek) [1934093] - selinux: add basic filtering for audit trace events (Ondrej Mosnacek) [1934093 1954024] - selinux: add tracepoint on audited events (Ondrej Mosnacek) [1934093 1954024] - selinux: permit removing security.selinux xattr before policy load (Ondrej Mosnacek) [1934093] - exec: Always set cap_ambient in cap_bprm_set_creds (Ondrej Mosnacek) [1934093] - security: remove duplicated include from security.h (Ondrej Mosnacek) [1934093] - security/commoncap: Use xattr security prefix len (Ondrej Mosnacek) [1934093] - LSM: switch to blocking policy update notifiers (Ondrej Mosnacek) [1934093] - security: Make capability_hooks static (Ondrej Mosnacek) [1934093] - securityfs: fix use-after-free on symlink traversal (Ondrej Mosnacek) [1934093] - LSM: Check for NULL cred-security on free (Ondrej Mosnacek) [1934093] - security: check for kstrdup() failure in lsm_append() (Ondrej Mosnacek) [1934093] - scsi: mpt3sas: Block PCI config access from userspace during reset (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix endianness for ActiveCablePowerRequirement (Tomas Henzl) [1954555] - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach() (Tomas Henzl) [1954555] - scsi: mpt3sas: Do not use GFP_KERNEL in atomic context (Tomas Henzl) [1954555] - scsi: mpt3sas: Only one vSES is present even when IOC has multi vSES (Tomas Henzl) [1953421] - scsi: bnx2i: Make bnx2i_process_iscsi_error() simpler and more robust (Nilesh Javali) [1921612] - scsi: bnx2i: Fix bnx2i_set_ccell_info()'s name in description (Nilesh Javali) [1921612] - scsi: bnx2i: Requires MMU (Nilesh Javali) [1921612] - scsi: bnx2i: Remove unnecessary mutex_init() (Nilesh Javali) [1921612] - scsi: bnx2i: Add parameter description and rename another (Nilesh Javali) [1921612] - scsi: bnx2i: Add, remove and edit some function parameter descriptions (Nilesh Javali) [1921612] - scsi: bnx2i: Fix a whole host of kerneldoc issues (Nilesh Javali) [1921612] - scsi: bnx2i: Add missing descriptions for 'attr' parameter (Nilesh Javali) [1921612] - scsi: bnx2i: Fix parameter misnaming in function header (Nilesh Javali) [1921612] - mfd: intel-lpss: Add Intel Alder Lake PCH-P PCI IDs (Steve Best) [1929489] - lib: list_sort.c: add a blank line to avoid kernel-doc warnings (Rafael Aquini) [1900774] - lib/list_sort: fix kerneldoc build error (Rafael Aquini) [1900774] - lib/list_sort: optimize number of calls to comparison function (Rafael Aquini) [1900774] - lib/list_sort: simplify and remove MAX_LIST_LENGTH_BITS (Rafael Aquini) [1900774] - perf bench numa: Fix the condition checks for max number of NUMA nodes (Steve Best) [1936333] - powerpc/perf: Record counter overflow always if SAMPLE_IP is unset (Gustavo Walbon) [1921684] - perf powerpc: Support exposing Performance Monitor Counter SPRs as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Expose Performance Monitor Counter SPR's as part of extended regs (Gustavo Walbon) [1921684] - powerpc/perf: Include PMCs as part of per-cpu cpuhw_events struct (Gustavo Walbon) [1921684] - powerpc/perf: Adds support for programming of Thresholding in P10 (Gustavo Walbon) [1921684] - x86/entry/64: Deduplicate multiple IBRS macros in paranoid_entry (Waiman Long) [1924364] - x86/speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb (Waiman Long) [1924364] - x86/speculation: Allow IBPB to be conditionally enabled on CPUs with always-on STIBP (Waiman Long) [1924364] - x86/bugs/multihit: Fix mitigation reporting when VMX is not in use (Waiman Long) [1924364] - x86/speculation: Merge one test in spectre_v2_user_select_mitigation() (Waiman Long) [1924364] - x86/bugs: Move enum taa_mitigations to bugs.c (Waiman Long) [1924364] - mm/memcg: set memcg when splitting page (Waiman Long) [1937825] - mm/memcg: rename mem_cgroup_split_huge_fixup to split_page_memcg and add nr_pages argument (Waiman Long) [1937825] - mm, tracing: Fix kmem_cache_free trace event to not print stale pointers (Waiman Long) [1937825] - mm: memcontrol: fix get_active_memcg return value (Waiman Long) [1937825] - fs: buffer: use raw page_memcg() on locked page (Waiman Long) [1937825] - mm/list_lru.c: remove kvfree_rcu_local() (Waiman Long) [1937825] - mm: memcontrol: replace the loop with a list_for_each_entry() (Waiman Long) [1937825] - mm/memcontrol: remove redundant NULL check (Waiman Long) [1937825] - mm: page_counter: re-layout structure to reduce false sharing (Waiman Long) [1937825] - mm: kmem: make __memcg_kmem_(un)charge static (Waiman Long) [1937825] - mm: memcg: add swapcache stat for memcg v2 (Waiman Long) [1937825] - mm/memcg: remove rcu locking for lock_page_lruvec function series (Waiman Long) [1937825] - mm/memcg: revise the using condition of lock_page_lruvec function series (Waiman Long) [1937825] - mm: memcontrol: make the slab calculation consistent (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_PMDMAPPED account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_SHMEM_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_FILE_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: convert NR_ANON_THPS account to pages (Waiman Long) [1937825] - mm: memcontrol: optimize per-lruvec stats counter memory usage (Waiman Long) [1937825] - mm: memcg/slab: pre-allocate obj_cgroups for slab caches with SLAB_ACCOUNT (Waiman Long) [1937825] - mm/slub: minor coding style tweaks (Waiman Long) [1937825] - mm, slub: remove slub_memcg_sysfs boot param and CONFIG_SLUB_MEMCG_SYSFS_ON (Waiman Long) [1937825] - mm, slub: splice cpu and page freelists in deactivate_slab() (Waiman Long) [1937825] - mm, slab, slub: stop taking cpu hotplug lock (Waiman Long) [1937825] - mm, slab, slub: stop taking memory hotplug lock (Waiman Long) [1937825] - mm, slub: stop freeing kmem_cache_node structures on node offline (Waiman Long) [1937825] - mm/slub: disable user tracing for kmemleak caches by default (Waiman Long) [1937825] - mm/slab: minor coding style tweaks (Waiman Long) [1937825] - mm/sl?b.c: remove ctor argument from kmem_cache_flags (Waiman Long) [1937825] - mm, tracing: record slab name for kmem_cache_free() (Waiman Long) [1937825] - mm: fix numa stats for thp migration (Waiman Long) [1937825] - mm: memcg: fix memcg file_dirty numa stat (Waiman Long) [1937825] - mm/memcontrol: fix warning in mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm: slub: call account_slab_page() after slab page initialization (Waiman Long) [1937825] - mm/hugetlb: fix deadlock in hugetlb_cow error path (Waiman Long) [1937825] - mm/memcontrol:rewrite mem_cgroup_page_lruvec() (Waiman Long) [1937825] - mm/memcg: remove unused definitions (Waiman Long) [1937825] - mm/memcg: warning on !memcg after readahead page charged (Waiman Long) [1937825] - mm/memcg: bail early from swap accounting if memcg disabled (Waiman Long) [1937825] - mm/lru: revise the comments of lru_lock (Waiman Long) [1937825] - mm/lru: introduce relock_page_lruvec() (Waiman Long) [1937825] - mm/lru: replace pgdat lru_lock with lruvec lock (Waiman Long) [1937825] - mm/lru: move lock into lru_note_cost (Waiman Long) [1937825] - mm/swap.c: serialize memcg changes in pagevec_lru_move_fn (Waiman Long) [1937825] - mm/compaction: do page isolation first in compaction (Waiman Long) [1937825] - mm/lru: introduce TestClearPageLRU() (Waiman Long) [1937825] - mm/mlock: remove __munlock_isolate_lru_page() (Waiman Long) [1937825] - mm/mlock: remove lru_lock on TestClearPageMlocked (Waiman Long) [1937825] - mm/vmscan: remove lruvec reget in move_pages_to_lru (Waiman Long) [1937825] - mm/swap.c: fold vm event PGROTATED into pagevec_move_tail_fn (Waiman Long) [1937825] - mm/memcg: add debug checking in lock_page_memcg (Waiman Long) [1937825] - mm: page_idle_get_page() does not need lru_lock (Waiman Long) [1937825] - mm/rmap: stop store reordering issue on page->mapping (Waiman Long) [1937825] - mm/vmscan: remove unnecessary lruvec adding (Waiman Long) [1937825] - mm/thp: narrow lru locking (Waiman Long) [1937825] - mm/thp: simplify lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: use head for head page in lru_add_page_tail() (Waiman Long) [1937825] - mm/thp: move lru_add_page_tail() to huge_memory.c (Waiman Long) [1937825] - mm: slub: convert sysfs sprintf family to sysfs_emit/sysfs_emit_at (Waiman Long) [1937825] - mm: truncate_complete_page() does not exist any more (Waiman Long) [1937825] - mm/vmscan: drop unneeded assignment in kswapd() (Waiman Long) [1937825] - mm: memcontrol: account pagetables per node (Waiman Long) [1937825] - mm: move lruvec stats update functions to vmstat.h (Waiman Long) [1937825] - mm/memcg: remove incorrect comment (Waiman Long) [1937825] - mm: memcontrol: sssign boolean values to a bool variable (Waiman Long) [1937825] - mm: memcg/slab: rename *_lruvec_slab_state to *_lruvec_kmem_state (Waiman Long) [1937825] - mm: memcg: remove obsolete memcg_has_children() (Waiman Long) [1937825] - mm/page_counter: use page_counter_read in page_counter_set_max (Waiman Long) [1937825] - cgroup: remove obsoleted broken_hierarchy and warned_broken_hierarchy (Waiman Long) [1937825] - docs: cgroup-v1: reflect the deprecation of the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: deprecate the non-hierarchical mode (Waiman Long) [1937825] - mm: memcg: fix obsolete code comments (Waiman Long) [1937825] - mm/memcg: update page struct member in comments (Waiman Long) [1937825] - mm/rmap: always do TTU_IGNORE_ACCESS (Waiman Long) [1937825] - mm: memcontrol: eliminate redundant check in __mem_cgroup_insert_exceeded() (Waiman Long) [1937825] - mm: memcontrol: remove unused mod_memcg_obj_state() (Waiman Long) [1937825] - mm: memcontrol: add file_thp, shmem_thp to memory.stat (Waiman Long) [1937825] - mm/gup: combine put_compound_head() and unpin_user_page() (Waiman Long) [1937825] - mm: Convert page kmemcg type to a page memcg flag (Waiman Long) [1937825] - mm: Introduce page memcg flags (Waiman Long) [1937825] - mm: memcontrol/slab: Use helpers to access slab page's memcg_data (Waiman Long) [1937825] - mm: memcontrol: Use helpers to read page's memcg data (Waiman Long) [1937825] - hugetlbfs: fix anon huge page migration race (Waiman Long) [1937825] - mm: memcontrol: fix missing wakeup polling thread (Waiman Long) [1937825] - mm/gup: use unpin_user_pages() in __gup_longterm_locked() (Waiman Long) [1937825] - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit (Waiman Long) [1937825] - mm/compaction: stop isolation if too many pages are isolated and we have pages to migrate (Waiman Long) [1937825] - mm/compaction: count pages and stop correctly during page isolation (Waiman Long) [1937825] - mm: kmem: enable kernel memcg accounting from interrupt contexts (Waiman Long) [1937825] - mm: kmem: prepare remote memcg charging infra for interrupt contexts (Waiman Long) [1937825] - mm: kmem: remove redundant checks from get_obj_cgroup_from_current() (Waiman Long) [1937825] - mm, memcg: rework remote charging API to support nesting (Waiman Long) [1937825] - mm: use self-explanatory macros rather than "2" (Waiman Long) [1937825] - mm/vmscan: allow arbitrary sized pages to be paged out (Waiman Long) [1937825] - mm/rmap: fix assumptions of THP size (Waiman Long) [1937825] - mm/huge_memory: fix can_split_huge_page assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix page_trans_huge_mapcount assumption of THP size (Waiman Long) [1937825] - mm/huge_memory: fix split assumption of page size (Waiman Long) [1937825] - mm/huge_memory: fix total_mapcount assumption of page size (Waiman Long) [1937825] - mm/page_owner: change split_page_owner to take a count (Waiman Long) [1937825] - mm/memory: remove page fault assumption of compound page size (Waiman Long) [1937825] - mm/filemap: fix page cache removal for arbitrary sized THPs (Waiman Long) [1937825] - mm/vmscan: fix comments for isolate_lru_page() (Waiman Long) [1937825] - mm/vmscan: fix infinite loop in drop_slab_node (Waiman Long) [1937825] - mm: move call to compound_head() in release_pages() (Waiman Long) [1937825] - mm: account PMD tables like PTE tables (Waiman Long) [1937825] - mm/memcg: fix device private memcg accounting (Waiman Long) [1937825] - mm: memcontrol: add the missing numa_stat interface for cgroup v2 (Waiman Long) [1937825] - mm: remove activate_page() from unuse_pte() (Waiman Long) [1937825] - bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag (Waiman Long) [1937825] - mm/thp: fix __split_huge_pmd_locked() for migration PMD (Waiman Long) [1937825] - mm: fix check_move_unevictable_pages() on THP (Waiman Long) [1937825] - mm: migration of hugetlbfs page skip memcg (Waiman Long) [1937825] - mm: and drivers core: Convert hugetlb_report_node_meminfo to sysfs_emit (Waiman Long) [1937825] - drivers core: Miscellaneous changes for sysfs_emit (Waiman Long) [1937825] - drivers core: Reindent a couple uses around sysfs_emit (Waiman Long) [1937825] - drivers core: Remove strcat uses around sysfs_emit and neaten (Waiman Long) [1937825] - drivers core: Use sysfs_emit and sysfs_emit_at for show(device *...) functions (Waiman Long) [1937825] - sysfs: Add sysfs_emit and sysfs_emit_at to format sysfs output (Waiman Long) [1937825] - mm: fix pin vs. gup mismatch with gate pages (Waiman Long) [1937825] - mm/gup: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/hugetlb: make hugetlb migration callback CMA aware (Waiman Long) [1937825] - mm/gup: restrict CMA region by using allocation scope API (Waiman Long) [1937825] - mm/page_alloc: remove a wrapper for alloc_migration_target() (Waiman Long) [1937825] - mm/mempolicy: use a standard migration target allocation callback (Waiman Long) [1937825] - mm/migrate: introduce a standard migration target allocation function (Waiman Long) [1937825] - mm/migrate: clear __GFP_RECLAIM to make the migration callback consistent with regular THP allocations (Waiman Long) [1937825] - mm/hugetlb: unify migration callbacks (Waiman Long) [1937825] - mm/migrate: move migration helper from .h to .c (Waiman Long) [1937825] - mm/page_isolation: prefer the node of the source page (Waiman Long) [1937825] - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem (Waiman Long) [1937825] - mm, oom: show process exiting information in __oom_kill_process() (Waiman Long) [1937825] - doc, mm: clarify /proc//oom_score value range (Waiman Long) [1937825] - doc, mm: sync up oom_score_adj documentation (Waiman Long) [1937825] - mm, oom: make the calculation of oom badness more accurate (Waiman Long) [1937825] - mm: vmscan: consistent update to pgrefill (Waiman Long) [1937825] - mm/vmscan.c: fix typo (Waiman Long) [1937825] - mm: memcontrol: account kernel stack per node (Waiman Long) [1937825] - mm/hugetlb.c: fix pages per hugetlb calculation (Waiman Long) [1937825] - doc: THP CoW fault no longer allocate THP (Waiman Long) [1937825] - driver core: platform: expose numa_node to users in sysfs (Waiman Long) [1937825] - nilfs2: fix null pointer dereference at nilfs_segctor_do_construct() (Waiman Long) [1937825] - mm, memcg: fix some typos in memcontrol.c (Waiman Long) [1937825] - mm/vmsan: fix some typos in comment (Waiman Long) [1937825] - mm: thp: don't need to drain lru cache when splitting and mlocking THP (Waiman Long) [1937825] - mm/vmscan: update the comment of should_continue_reclaim() (Waiman Long) [1937825] - mm/vmscan.c: change prototype for shrink_page_list (Waiman Long) [1937825] - mm/vmscan: count layzfree pages and fix nr_isolated_* mismatch (Waiman Long) [1937825] - mm/vmscan.c: use update_lru_size() in update_lru_sizes() (Waiman Long) [1937825] - mm: simplify calling a compound page destructor (Waiman Long) [1937825] - mm/page_alloc: integrate classzone_idx and high_zoneidx (Waiman Long) [1937825] - mm/page_alloc: use ac->high_zoneidx for classzone_idx (Waiman Long) [1937825] - mm/page_alloc.c: extract check_[new|free]_page_bad() common part to page_bad_reason() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check() to check_free_page() (Waiman Long) [1937825] - mm/page_alloc.c: rename free_pages_check_bad() to check_free_page_bad() (Waiman Long) [1937825] - mm/page_alloc.c: bad_flags is not necessary for bad_page() (Waiman Long) [1937825] - mm/page_alloc.c: bad_[reason|flags] is not necessary when PageHWPoison (Waiman Long) [1937825] - scs: Report SCS usage in bytes rather than number of entries (Waiman Long) [1937825] - scs: Move accounting into alloc/free functions (Waiman Long) [1937825] - mm/vmscan: remove unnecessary argument description of isolate_lru_pages() (Waiman Long) [1937825] - scs: Add support for stack usage debugging (Waiman Long) [1937825] - scs: Add page accounting for shadow call stack allocations (Waiman Long) [1937825] - scs: Add support for Clang's Shadow Call Stack (SCS) (Waiman Long) [1937825] - mm/migrate.c: unify "not queued for migration" handling in do_pages_move() (Waiman Long) [1937825] - mm/migrate.c: check pagelist in move_pages_and_store_status() (Waiman Long) [1937825] - mm/migrate.c: wrap do_move_pages_to_node() and store_status() (Waiman Long) [1937825] - mm/migrate.c: no need to check for i > start in do_pages_move() (Waiman Long) [1937825] - mm/hugetlb: remove unnecessary memory fetch in PageHeadHuge() (Waiman Long) [1937825] - hugetlbfs: Use i_mmap_rwsem to address page fault/truncate race (Waiman Long) [1937825] - hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization (Waiman Long) [1937825] - mm,thp,compaction,cma: allow THP migration for CMA allocations (Waiman Long) [1937825] - mm,compaction,cma: add alloc_contig flag to compact_control (Waiman Long) [1937825] - mm/vmscan.c: do_try_to_free_pages(): clean code by removing unnecessary assignment (Waiman Long) [1937825] - mm/vmscan.c: make may_enter_fs bool in shrink_page_list() (Waiman Long) [1937825] - mm/vmscan.c: fix data races using kswapd_classzone_idx (Waiman Long) [1937825] - mm/vmscan.c: remove cpu online notification for now (Waiman Long) [1937825] - mm: vmscan: replace open codings to NUMA_NO_NODE (Waiman Long) [1937825] - mm: swap: make page_evictable() inline (Waiman Long) [1937825] - mm/swap.c: not necessary to export __pagevec_lru_add() (Waiman Long) [1937825] - mm/gup: fix omission of check on FOLL_LONGTERM in gup fast path (Waiman Long) [1937825] - mm: dump_page(): additional diagnostics for huge pinned pages (Waiman Long) [1937825] - mm: improve dump_page() for compound pages (Waiman Long) [1937825] - selftests/vm: run_vmtests: invoke gup_benchmark with basic FOLL_PIN coverage (Waiman Long) [1937825] - mm/gup_benchmark: support pin_user_pages() and related calls (Waiman Long) [1937825] - mm/gup: /proc/vmstat: pin_user_pages (FOLL_PIN) reporting (Waiman Long) [1937825] - mm/gup: page->hpage_pinned_refcount: exact pin counts for huge pages (Waiman Long) [1937825] - mm/gup: track FOLL_PIN pages (Waiman Long) [1937825] - mm/gup: pass gup flags to two more routines (Waiman Long) [1937825] - mm: introduce page_ref_sub_return() (Waiman Long) [1937825] - mm/gup: pass a flags arg to __gup_device_* functions (Waiman Long) [1937825] - mm/gup: split get_user_pages_remote() into two routines (Waiman Long) [1937825] - sysfs: fix static inline declaration of sysfs_groups_change_owner() (Waiman Long) [1937825] - drivers/base/cpu: Simplify s*nprintf() usages (Waiman Long) [1937825] - drivers/base/cpu: Use scnprintf() for avoiding potential buffer overflow (Waiman Long) [1937825] - sysfs: add sysfs_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_group{s}_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_link_change_owner() (Waiman Long) [1937825] - sysfs: add sysfs_file_change_owner() (Waiman Long) [1937825] - mm/huge_memory.c: reduce critical section protected by split_queue_lock (Waiman Long) [1937825] - mm/huge_memory.c: use head to emphasize the purpose of page (Waiman Long) [1937825] - mm/huge_memory.c: use head to check huge zero page (Waiman Long) [1937825] - mm/gup: move try_get_compound_head() to top, fix minor issues (Waiman Long) [1937825] - userfaultfd: wrap the common dst_vma check into an inlined function (Waiman Long) [1937825] - userfaultfd: remove unnecessary WARN_ON() in __mcopy_atomic_hugetlb() (Waiman Long) [1937825] - userfaultfd: use vma_pagesize for all huge page size calculation (Waiman Long) [1937825] - mm/hugetlb: avoid looping to the same hugepage if !pages and !vmas (Waiman Long) [1937825] - hugetlb: remove unused hstate in hugetlb_fault_mutex_hash() (Waiman Long) [1937825] - hugetlbfs: convert macros to static inline, fix sparse warning (Waiman Long) [1937825] - hugetlbfs: hugetlb_fault_mutex_hash() cleanup (Waiman Long) [1937825] - mm/gup.c: allow CMA migration to propagate errors back to caller (Waiman Long) [1937825] - mm/gup_benchmark: fix MAP_HUGETLB case (Waiman Long) [1937825] - mm/gup_benchmark: add a missing "w" to getopt string (Waiman Long) [1937825] - mm, page_owner: rename flag indicating that page is allocated (Waiman Long) [1937825] - mm, page_owner: decouple freeing stack trace from debug_pagealloc (Waiman Long) [1937825] - mm, page_owner: fix off-by-one error in __set_page_owner_handle() (Waiman Long) [1937825] - mm/filemap.c: don't initiate writeback if mapping has no dirty pages (Waiman Long) [1937825] - mm, page_owner, debug_pagealloc: save and dump freeing stack trace (Waiman Long) [1937825] - mm, page_owner: keep owner info when freeing the page (Waiman Long) [1937825] - mm, page_owner: record page owner for each subpage (Waiman Long) [1937825] - mm: introduce page_size() (Waiman Long) [1937825] - mm, tracing: Print symbol name for call_site in trace events (Waiman Long) [1937825] - mm/gup.c: mark undo_dev_pagemap as __maybe_unused (Waiman Long) [1937825] - mm, memcg: introduce memory.events.local (Waiman Long) [1937825] - memcg, fsnotify: no oom-kill for remote memcg charging (Waiman Long) [1937825] - mm/swap_state.c: simplify total_swapcache_pages() with get_swap_device() (Waiman Long) [1937825] - mm: make !CONFIG_HUGE_PAGE wrappers into static inlines (Waiman Long) [1937825] - include/linux/hugetlb.h: convert to use vm_fault_t (Waiman Long) [1937825] - mm/page_ext.c: fix an imbalance with kmemleak (Waiman Long) [1937825] - mm/hugetlb: add prot_modify_start/commit sequence for hugetlb update (Waiman Long) [1937825] - iov_iter: optimize page_copy_sane() (Waiman Long) [1937825] - mm: remove __hugepage_set_anon_rmap() (Waiman Long) [1937825] - mm: remove pte_lock_deinit() (Waiman Long) [1937825] - mm/debug.c: make "migrate_reason_names[]" const char * (Waiman Long) [1937825] - vmscan: return NODE_RECLAIM_NOSCAN in node_reclaim() when CONFIG_NUMA is n (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_HUGETLB option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: add MAP_SHARED option (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: allow user specified file (Waiman Long) [1937825] - tools/testing/selftests/vm/gup_benchmark.c: fix 'write' flag usage (Waiman Long) [1937825] - mm/page_ext.c: constify lookup_page_ext() argument (Waiman Long) [1937825] - mm, page_alloc: actually ignore mempolicies for high priority allocations (Waiman Long) [1937825] - thp: use mm_file_counter to determine update which rss counter (Waiman Long) [1937825]- RDMA/cxgb4: Fix the reported max_recv_sge value (Kamal Heib) [1931850 1918264] - RDMA/qedr: Fix kernel panic when trying to access recv_cq (Kamal Heib) [1931850] - RDMA/addr: Be strict with gid size (Kamal Heib) [1931850] - IB/hfi1: Fix probe time panic when AIP is enabled with a buggy BIOS (Kamal Heib) [1931850 1921704 1953593] - RDMA/rxe: Fix errant WARN_ONCE in rxe_completer() (Kamal Heib) [1931850] - RDMA/rxe: Fix extra deref in rxe_rcv_mcast_pkt() (Kamal Heib) [1931850] - RDMA/rxe: Fix FIXME in rxe_udp_encap_recv() (Kamal Heib) [1931850] - RDMA/rxe: Fix missed IB reference counting in loopback (Kamal Heib) [1931850] - RDMA/uverbs: Fix kernel-doc warning of _uverbs_alloc (Kamal Heib) [1931850] - RDMA/rxe: Fix missing kconfig dependency on CRYPTO (Kamal Heib) [1931850] - RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep (Kamal Heib) [1931850] - RDMA/rxe: Remove unused pkt->offset (Kamal Heib) [1931850] - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent (Kamal Heib) [1931850] - RDMA/core: Fix kernel doc warnings for ib_port_immutable_read() (Kamal Heib) [1931850] - RDMA/ipoib: Remove racy Subnet Manager sendonly join checks (Kamal Heib) [1931850] - RDMA/rxe: Cleanup init_send_wqe (Kamal Heib) [1931850] - RDMA/rxe: Fix minor coding style issues (Kamal Heib) [1931850] - RDMA/rxe: Correct skb on loopback path (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt (Kamal Heib) [1931850] - RDMA/rxe: Remove useless code in rxe_recv.c (Kamal Heib) [1931850] - RDMA/rxe: Fix coding error in rxe_recv.c (Kamal Heib) [1931850] - RDMA/core: Introduce and use API to read port immutable data (Kamal Heib) [1931850] - RDMA/pvrdma: Replace spin_lock_irqsave with spin_lock in hard IRQ (Kamal Heib) [1931850] - IB/core: Use valid port number to check link layer (Kamal Heib) [1931850] - IB/cm: Avoid a loop when device has 255 ports (Kamal Heib) [1931850] - RDMA/efa: Remove unused syndrome enum values (Kamal Heib) [1931850] - RDMA/efa: Remove unused 'select' field from get/set feature command descriptor (Kamal Heib) [1931850] - RDMA/efa: Remove unnecessary indentation in defs comments (Kamal Heib) [1931850] - RDMA/efa: Remove duplication of upper/lower_32_bits (Kamal Heib) [1931850] - RDMA/efa: Remove redundant NULL pointer check of CQE (Kamal Heib) [1931850] - RDMA/hw/hfi1/rc: Demote incorrectly populated kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/verbs: Demote non-conforming doc header and fix a misspelling (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/user_exp_rcv: Demote half-documented and kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ud: Fix a little more doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/uc: Fix a little doc-rot (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/tid_rdma: Fix a plethora of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/sdma: Fix misnaming of 'sdma_send_txlist()'s 'count_out' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/ruc: Fix a small formatting and description issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/qp: Fix some formatting issues and demote kernel-doc abuse (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/rc: Fix a few function documentation issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pio_copy: Provide entry for 'pio_copy()'s 'dd' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/pcie: Demote kernel-doc abuses (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/netdev_rx: Fix misdocumentation of the 'start_id' param (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/qp: Fix kernel-doc formatting problem (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix misspelling of 'rvt_process_mad()'s 'in_mad_size' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/msix: Add description for 'name' and remove superfluous param 'idx' (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/mad: Demote half-completed kernel-doc header fix another (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/iowait: Demote half-completed kernel-doc and fix formatting issue in another (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/srq: Fix a couple of kernel-doc issues (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/intr: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/rxe: Replace missing rxe_pool_get_index_locked (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded pool->state (Kamal Heib) [1931850] - RDMA/rxe: Remove references to ib_device and pool (Kamal Heib) [1931850] - RDMA/rxe: Remove RXE_POOL_ATOMIC (Kamal Heib) [1931850] - RDMA/rxe: Fix misleading comments and names (Kamal Heib) [1931850] - RDMA/rxe: Fix bug in rxe_alloc() (Kamal Heib) [1931850] - IB/umad: Return EPOLLERR in case of when device disassociated (Kamal Heib) [1931850] - IB/umad: Return EIO in case of when device disassociated (Kamal Heib) [1931850] - RDMA/sw/rdmavt/qp: Fix a bunch of kernel-doc misdemeanours (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mr: Fix some issues related to formatting and missing descriptions (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/file_ops: Fix' manage_rcvq()'s 'arg' param (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/exp_rcv: Fix some kernel-doc formatting issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mcast: Demote incomplete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/mad: Fix 'rvt_process_mad()'s documentation header (Kamal Heib) [1931850 1921704] - RDMA/hw/hfi1/chip: Fix a bunch of kernel-doc formatting and spelling issues (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/cq: Demote hardly complete kernel-doc header (Kamal Heib) [1931850 1921704] - RDMA/sw/rdmavt/vt: Fix formatting issue and update description for 'context' (Kamal Heib) [1931850 1921704] - RDMA/hw/efa/efa_com: Stop using param description notation for non-params (Kamal Heib) [1931850] - RDMA/uverbs: Don't set rcq for a QP if qp_type is IB_QPT_XRC_INI (Kamal Heib) [1931850] - RDMA/core/iwpm_msg: Add proper descriptions for 'skb' param (Kamal Heib) [1931850] - RDMA/core/iwpm_util: Fix some param description misspellings (Kamal Heib) [1931850] - RDMA/core/counters: Demote non-conformant kernel-doc headers (Kamal Heib) [1931850] - RDMA/core/restrack: Fix kernel-doc formatting issue (Kamal Heib) [1931850] - RDMA/core/sa_query: Demote non-conformant kernel-doc header (Kamal Heib) [1931850] - RDMA/core/multicast: Provide description for 'ib_init_ah_from_mcmember()'s 'rec' param (Kamal Heib) [1931850] - RDMA/core/roce_gid_mgmt: Fix misnaming of 'rdma_roce_rescan_device()'s param 'ib_dev' (Kamal Heib) [1931850] - RDMA/core/cache: Fix some misspellings, missing and superfluous param descriptions (Kamal Heib) [1931850] - RDMA/core: device: Fix formatting in worthy kernel-doc header and demote another (Kamal Heib) [1931850] - IB/iser: Simplify prot_caps setting (Kamal Heib) [1931850] - IB/iser: Enforce iser_max_sectors to be greater than 0 (Kamal Heib) [1931850] - IB/iser: Protect iscsi_max_lun module param using callback (Kamal Heib) [1931850] - IB/iser: Remove unneeded semicolons (Kamal Heib) [1931850] - IB/isert: Simplify signature cap check (Kamal Heib) [1931850] - IB/isert: Remove unneeded semicolon (Kamal Heib) [1931850] - IB/isert: Remove unneeded new lines (Kamal Heib) [1931850] - RDMA/nldev: Return an error message on failure to turn auto mode (Kamal Heib) [1931850] - RDMA/rxe: Fix race in rxe_mcast.c (Kamal Heib) [1931850] - RDMA/rxe: Add unlocked versions of pool APIs (Kamal Heib) [1931850] - RDMA/rxe: Make add/drop key/index APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Make pool lookup and alloc APIs type safe (Kamal Heib) [1931850] - RDMA/rxe: Add elem_offset field to rxe_type_info (Kamal Heib) [1931850] - RDMA/rxe: Let pools support both keys and indices (Kamal Heib) [1931850] - RDMA/rxe: Remove unneeded RXE_POOL_ATOMIC flag (Kamal Heib) [1931850] - RDMA/rxe: Add check for supported QP types (Kamal Heib) [1931850] - RDMA: Use kzalloc for allocating only one thing (Kamal Heib) [1931850] - RDMA/cma: Delete useless kfree code (Kamal Heib) [1931850] - RDMA/hfi1: remove h from printk format specifier (Kamal Heib) [1931850 1921704] - RDMA: Convert comma to semicolon (Kamal Heib) [1931850] - net: devlink: Add unused port flavour (Petr Oros) [1943273] - devlink: add .trap_group_action_set() callback (Petr Oros) [1943273] - devlink: add parser error drop packet traps (Petr Oros) [1943273] - drop_monitor: Perform cleanup upon probe registration failure (Petr Oros) [1943273] - selftests: net: Add drop monitor test (Petr Oros) [1943273] - drop_monitor: Filter control packets in drop monitor (Petr Oros) [1943273] - drop_monitor: Remove duplicate struct (Petr Oros) [1943273] - drop_monitor: Remove no longer used functions (Petr Oros) [1943273] - drop_monitor: Convert to using devlink tracepoint (Petr Oros) [1943273] - drop_monitor: Prepare probe functions for devlink tracepoint (Petr Oros) [1943273] - devlink: Add a tracepoint for trap reports (Petr Oros) [1943273] - net: devlink: fix reporter dump dumpit (Petr Oros) [1943273] - devlink: have genetlink code to parse the attrs during dumpit (Petr Oros) [1943273] - netfilter: nf_tables: add direct calls for all builtin expressions (Florian Westphal) [1953320] - netfilter: nf_tables: handle meta/lookup with direct call (Florian Westphal) [1953320] - ionic: linearize tso skb with too many frags (Jonathan Toppins) [1940696] - i40e: fix the restart auto-negotiation after FEC modified (Stefan Assmann) [1725560] - ovl: skip getxattr of security labels (Miklos Szeredi) [1956340] - ovl: fix dentry leak in ovl_get_redirect (Miklos Szeredi) [1956340] - ovl: avoid deadlock on directory ioctl (Miklos Szeredi) [1956340] - cap: fix conversions on getxattr (Miklos Szeredi) [1956340] - ovl: perform vfs_getxattr() with mounter creds (Miklos Szeredi) [1956340] - ovl: add warning on user_ns mismatch (Miklos Szeredi) [1956340] - ovl: unprivieged mounts (Miklos Szeredi) [1956340] - ovl: do not get metacopy for userxattr (Miklos Szeredi) [1956340] - ovl: do not fail because of O_NOATIME (Miklos Szeredi) [1956340] - ovl: do not fail when setting origin xattr (Miklos Szeredi) [1956340] - ovl: user xattr (Miklos Szeredi) [1956340] - ovl: simplify file splice (Miklos Szeredi) [1956340] - ovl: make ioctl() safe (Miklos Szeredi) [1956340] - ovl: check privs before decoding file handle (Miklos Szeredi) [1956340] - vfs: verify source area in vfs_dedupe_file_range_one() (Miklos Szeredi) [1956340] - vfs: move cap_convert_nscap() call into vfs_setxattr() (Miklos Szeredi) [1956340] - ovl: fix incorrect extent info in metacopy case (Miklos Szeredi) [1956340] - ovl: expand warning in ovl_d_real() (Miklos Szeredi) [1956340] - ovl: document lower modification caveats (Miklos Szeredi) [1956340] - ovl: warn about orphan metacopy (Miklos Szeredi) [1956340] - ovl: doc clarification (Miklos Szeredi) [1956340] - ovl: introduce new "uuid=off" option for inodes index feature (Miklos Szeredi) [1956340] - ovl: propagate ovl_fs to ovl_decode_real_fh and ovl_encode_real_fh (Miklos Szeredi) [1956340] - ovl: use generic vfs_ioc_setflags_prepare() helper (Miklos Szeredi) [1956340] - ovl: support [S|G]ETFLAGS and FS[S|G]ETXATTR ioctls for directories (Miklos Szeredi) [1956340] - ovl: rearrange ovl_can_list() (Miklos Szeredi) [1956340] - ovl: enumerate private xattrs (Miklos Szeredi) [1956340] - ovl: pass ovl_fs down to functions accessing private xattrs (Miklos Szeredi) [1956340] - ovl: drop flags argument from ovl_do_setxattr() (Miklos Szeredi) [1956340] - ovl: adhere to the vfs_ vs. ovl_do_ conventions for xattrs (Miklos Szeredi) [1956340] - ovl: use ovl_do_getxattr() for private xattr (Miklos Szeredi) [1956340] - ovl: fold ovl_getxattr() into ovl_get_redirect_xattr() (Miklos Szeredi) [1956340] - ovl: clean up ovl_getxattr() in copy_up.c (Miklos Szeredi) [1956340] - duplicate ovl_getxattr() (Miklos Szeredi) [1956340] - ovl: provide a mount option "volatile" (Miklos Szeredi) [1956340 1928211] - ovl: check for incompatible features in work dir (Miklos Szeredi) [1956340 1928211] - ovl: fix lookup of indexed hardlinks with metacopy (Miklos Szeredi) [1956340] - ovl: fix unneeded call to ovl_change_flags() (Miklos Szeredi) [1956340] - ovl: fix mount option checks for nfs_export with no upperdir (Miklos Szeredi) [1956340] - ovl: force read-only sb on failure to create index dir (Miklos Szeredi) [1956340] - ovl: fix regression with re-formatted lower squashfs (Miklos Szeredi) [1956340] - ovl: fix oops in ovl_indexdir_cleanup() with nfs_export=on (Miklos Szeredi) [1956340] - ovl: relax WARN_ON() when decoding lower directory file handle (Miklos Szeredi) [1956340] - ovl: remove not used argument in ovl_check_origin (Miklos Szeredi) [1956340] - ovl: change ovl_copy_up_flags static (Miklos Szeredi) [1956340] - ovl: inode reference leak in ovl_is_inuse true case. (Miklos Szeredi) [1956340] - ovl: remove unnecessary lock check (Miklos Szeredi) [1956340] - ovl: make oip->index bool (Miklos Szeredi) [1956340] - ovl: only pass ->ki_flags to ovl_iocb_to_rwf() (Miklos Szeredi) [1956340] - ovl: make private mounts longterm (Miklos Szeredi) [1956340] - ovl: get rid of redundant members in struct ovl_fs (Miklos Szeredi) [1956340] - ovl: add accessor for ofs->upper_mnt (Miklos Szeredi) [1956340] - ovl: drop negative dentry in upper layer (Miklos Szeredi) [1956340] - ovl: check permission to open real file (Miklos Szeredi) [1956340] - ovl: call secutiry hook in ovl_real_ioctl() (Miklos Szeredi) [1956340] - ovl: verify permissions in ovl_path_open() (Miklos Szeredi) [1956340] - ovl: switch to mounter creds in readdir (Miklos Szeredi) [1956340] - ovl: pass correct flags for opening real directory (Miklos Szeredi) [1956340] - ovl: whiteout inode sharing (Miklos Szeredi) [1956340] - ovl: inherit SB_NOSEC flag from upperdir (Miklos Szeredi) [1956340] - ovl: skip overlayfs superblocks at global sync (Miklos Szeredi) [1956340] - ovl: index dir act as work dir (Miklos Szeredi) [1956340] - ovl: prepare to copy up without workdir (Miklos Szeredi) [1956340] - ovl: cleanup non-empty directories in ovl_indexdir_cleanup() (Miklos Szeredi) [1956340] - ocxl: Add new kernel traces (Steve Best) [1907530] - ocxl: Add mmu notifier (Steve Best) [1907530] - ocxl: Update the Process Element Entry (Steve Best) [1907530] - ocxl: Initiate a TLB invalidate command (Steve Best) [1907530] - ocxl: Assign a register set to a Logical Partition (Steve Best) [1907530] - powerpc/mce: Remove per cpu variables from MCE handlers (Gustavo Walbon) [1921683] - powerpc/mce: Reduce the size of event arrays (Gustavo Walbon) [1921683] - tools/power turbostat: Support Ice Lake D (Prarit Bhargava) [1943439] - PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820 integrity check (Chris von Recklinghausen) [1944636] - vhost/vsock: add IOTLB API support (Stefano Garzarella) [1894101] - vhost: Fix vhost_vq_reset() (Laurent Vivier) [1919126] - perf trace: Fix race in signal handling (Michael Petlan) [1928380] - scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc (Ewan D. Milne) [1953699] - sd_zbc: clear zone resources for non-zoned case (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix a memory leak (Ewan D. Milne) [1953699] - scsi: sd: Warn if unsupported ZBC device is probed (Ewan D. Milne) [1953699] - scsi: core: Add 'set_status_byte()' accessor (Ewan D. Milne) [1953699] - scsi: scsi_debug: Do not set COMMAND_COMPLETE (Ewan D. Milne) [1953699] - scsi: scsi_transport_srp: Don't block target in failfast state (Ewan D. Milne) [1953699] - scsi: scsi_debug: Fix memleak in scsi_debug_init() (Ewan D. Milne) [1953699] - scsi: core: Fix -Wformat for scsi_host (Ewan D. Milne) [1953699] - scsi: doc: Fix some kernel-doc markups (Ewan D. Milne) [1953699] - scsi: sr: Initialize ->cmd_len (Ewan D. Milne) [1953699] - scsi: core: Set sc_data_direction to DMA_NONE for no-transfer commands (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_setup_cmnd() and scsi_setup_fs_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Clean up allocation and freeing of sgtables (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_mq_prep_fn() to scsi_prepare_cmd() (Ewan D. Milne) [1953699] - scsi: core: Rename scsi_prep_state_check() to scsi_device_state_check() (Ewan D. Milne) [1953699] - scsi: core: Use rq_dma_dir in scsi_setup_cmnd() (Ewan D. Milne) [1953699] - scsi: core: Remove scsi_init_cmd_errh (Ewan D. Milne) [1953699] - scsi: sd: Allow user to configure command retries (Ewan D. Milne) [1953699] - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks (Ewan D. Milne) [1953699] - scsi: sd_zbc: Improve zone revalidation (Ewan D. Milne) [1953699] - scsi: sd_zbc: Don't limit max_zone_append sectors to max_hw_sectors (Ewan D. Milne) [1953699] - scsi: sd_zbc: Remove unused inline functions (Ewan D. Milne) [1953699] - nvme: fix the nsid value to print in nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a (Gopal Tiwari) [1921591] - nvme-rdma: Fix a use after free in nvmet_rdma_write_data_done (Gopal Tiwari) [1921591] - nvme-core: check ctrl css before setting up zns (Gopal Tiwari) [1921591] - nvme-fc: fix racing controller reset and create association (Gopal Tiwari) [1921591] - nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted (Gopal Tiwari) [1921591] - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() (Gopal Tiwari) [1921591] - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() (Gopal Tiwari) [1921591] - nvme: simplify error logic in nvme_validate_ns() (Gopal Tiwari) [1921591] - nvme: set max_zone_append_sectors nvme_revalidate_zones (Gopal Tiwari) [1921591] - nvmet: model_number must be immutable once set (Gopal Tiwari) [1921591] - nvme-fabrics: fix kato initialization (Gopal Tiwari) [1921591] - nvme-hwmon: Return error code when registration fails (Gopal Tiwari) [1921591] - nvme-pci: add quirks for Lexar 256GB SSD (Gopal Tiwari) [1921591] - nvme-pci: mark Kingston SKC2000 as not supporting the deepest power state (Gopal Tiwari) [1921591] - nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST. (Gopal Tiwari) [1921591] - nvme-tcp: fix crash triggered with a dataless request submission (Gopal Tiwari) [1921591] - nvme-hwmon: rework to avoid devm allocation (Gopal Tiwari) [1921591] - nvme: add 48-bit DMA address quirk for Amazon NVMe controllers (Gopal Tiwari) [1921591] - nvmet: remove else at the end of the function (Gopal Tiwari) [1921591] - nvmet: add helper to report invalid opcode (Gopal Tiwari) [1921591] - nvmet: add nvmet_req_subsys() helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet: use invalid cmd opcode helper (Gopal Tiwari) [1921591] - nvmet-fc: add a missing __rcu annotation to nvmet_fc_tgt_assoc.queues (Gopal Tiwari) [1921591] - nvme-multipath: set nr_zones for zoned namespaces (Gopal Tiwari) [1921591] - nvmet: make nvmet_find_namespace() req based (Gopal Tiwari) [1921591] - nvmet: set status to 0 in case for invalid nsid (Gopal Tiwari) [1921591] - nvmet: return uniform error for invalid ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-ns handler (Gopal Tiwari) [1921591] - nvmet-tcp: fix receive data digest calculation for multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-fabrics: avoid double completions in nvmf_fail_nonready_command (Gopal Tiwari) [1921591] - nvme: introduce a nvme_host_path_error helper (Gopal Tiwari) [1921591] - blk-mq: introduce blk_mq_set_request_complete (Gopal Tiwari) [1921591] - nvme-rdma: handle nvme_rdma_post_send failures better (Gopal Tiwari) [1921591] - nvmet-tcp: fix potential race of tcp socket closing accept_work (Gopal Tiwari) [1921591] - nvme: cleanup zone information initialization (Gopal Tiwari) [1921591] - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs (Gopal Tiwari) [1921591] - nvme-pci: ignore the subsysem NQN on Phison E16 (Gopal Tiwari) [1921591] - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs (Gopal Tiwari) [1921591] - nvme-tcp: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: use cancel tagset helper for tear down (Gopal Tiwari) [1921591] - nvme-rdma: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme-core: get rid of the extra space (Gopal Tiwari) [1921591] - nvme-tcp: add clean action for failed reconnection (Gopal Tiwari) [1921591] - nvme: add tracing of zns commands (Gopal Tiwari) [1921591] - nvme: parse format nvm command details when tracing (Gopal Tiwari) [1921591] - nvme-core: add cancel tagset helpers (Gopal Tiwari) [1921591] - nvme: refactor ns->ctrl by request (Gopal Tiwari) [1921591] - nvme-tcp: fix wrong setting of request iov_iter (Gopal Tiwari) [1921591] - nvmet: remove extra variable in smart log nsid (Gopal Tiwari) [1921591] - nvme-tcp: get rid of unused helper function (Gopal Tiwari) [1921591] - nvmet: remove extra variable in identify ns (Gopal Tiwari) [1921591] - nvmet: remove extra variable in id-desclist (Gopal Tiwari) [1921591] - nvmet: add lba to sect conversion helpers (Gopal Tiwari) [1921591] - nvme: support command retry delay for admin command (Gopal Tiwari) [1921591] - nvmet: Use nvmet_is_port_enabled helper for pi_enable (Gopal Tiwari) [1921591] - nvme: constify static attribute_group structs (Gopal Tiwari) [1921591] - nvmet-fc: use RCU proctection for assoc_list (Gopal Tiwari) [1921591] - nvmet: Fix nvmet_is_port_enabled indentation (Gopal Tiwari) [1921591] - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a SPCC device (Gopal Tiwari) [1921591] - nvme-core: use list_add_tail_rcu instead of list_add_tail for nvme_init_ns_head (Gopal Tiwari) [1921591] - nvme: allow revalidate to set a namespace read-only (Gopal Tiwari) [1921591] - nvmet: set right status on error in id-ns handler (Gopal Tiwari) [1921591] - nvme-tcp: avoid request double completion for concurrent nvme_tcp_timeout (Gopal Tiwari) [1921591] - nvme-rdma: avoid request double completion for concurrent nvme_rdma_timeout (Gopal Tiwari) [1921591] - nvme-pci: allow use of cmb on v1.4 controllers (Gopal Tiwari) [1921591] - nvme: check the PRINFO bit before deciding the host buffer length (Gopal Tiwari) [1921591] - nvme-tcp: fix possible data corruption with bio merges (Gopal Tiwari) [1921591] - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT (Gopal Tiwari) [1921591] - nvme: don't intialize hwmon for discovery controllers (Gopal Tiwari) [1921591] - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY (Gopal Tiwari) [1921591] - nvmet-rdma: Fix list_del corruption on queue establishment failure (Gopal Tiwari) [1921591] - nvme: unexport functions with no external caller (Gopal Tiwari) [1921591] - nvme: avoid possible double fetch in handling CQE (Gopal Tiwari) [1921591] - nvme: remove the unused status argument from nvme_trace_bio_complete (Gopal Tiwari) [1921591] - nvme-tcp: Fix possible race of io_work and direct send (Gopal Tiwari) [1921591] - nvme-fcloop: Fix sscanf type and list_first_entry_or_null warnings (Gopal Tiwari) [1921591] - nvme-fc: avoid calling _nvme_fc_abort_outstanding_ios from interrupt context (Gopal Tiwari) [1921591] - nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Gopal Tiwari) [1921591] - nvme: rename controller base dev_t char device (Gopal Tiwari) [1921591] - nvme: remove unnecessary return values (Gopal Tiwari) [1921591] - nvme: rename bdev operations (Gopal Tiwari) [1921591] - nvme: export zoned namespaces without Zone Append support read-only (Gopal Tiwari) [1921591] - nvme: print a warning for when listing active namespaces fails (Gopal Tiwari) [1921591] - nvme: improve an error message on Identify failure (Gopal Tiwari) [1921591] - nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig (Gopal Tiwari) [1921591] - nvme-fabrics: reject I/O to offline device (Gopal Tiwari) [1921591] - nvmet: make sure discovery change log event is protected (Gopal Tiwari) [1921591] - nvme-pci: don't allocate unused I/O queues (Gopal Tiwari) [1921591] - nvme-pci: drop min() from nr_io_queues assignment (Gopal Tiwari) [1921591] - nvmet: use inline bio for passthru fast path (Gopal Tiwari) [1921591] - nvmet: use blk_rq_bio_prep instead of blk_rq_append_bio (Gopal Tiwari) [1921591] - nvmet: remove unused ctrl->cqs (Gopal Tiwari) [1921591] - nvmet: remove op_flags for passthru commands (Gopal Tiwari) [1921591] - nvme: use consistent macro name for timeout (Gopal Tiwari) [1921591] - nvmet: add passthru io timeout value attr (Gopal Tiwari) [1921591] - nvmet: add passthru admin timeout value attr (Gopal Tiwari) [1921591] - nvme: split nvme_alloc_request() (Gopal Tiwari) [1921591] - nvme: centralize setting the timeout in nvme_alloc_request (Gopal Tiwari) [1921591] - nvme: simplify nvme_req_qid() (Gopal Tiwari) [1921591] - nvme-fcloop: add sysfs attribute to inject command drop (Gopal Tiwari) [1921591] - nvme: let set_capacity_revalidate_and_notify update the bdev size (Gopal Tiwari) [1921591] - nvme: directly cache command effects log (Gopal Tiwari) [1921591] - nvme: fix memory leak freeing command effects (Gopal Tiwari) [1921591] - nvme: free sq/cq dbbuf pointers when dbbuf set fails (Gopal Tiwari) [1921591] - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device (Gopal Tiwari) [1921591] - RDMA: Lift ibdev_to_node from rds to common code (Gopal Tiwari) [1921591] - nvme: fix incorrect behavior when BLKROSET is called by the user (Gopal Tiwari) [1921591] - Revert "nvme-pci: remove last_sq_tail" (Gopal Tiwari) [1921591] - nvmet: fix a NULL pointer dereference when tracing the flush command (Gopal Tiwari) [1921591] - nvme-fc: remove nvme_fc_terminate_io() (Gopal Tiwari) [1921591] - nvme-fc: eliminate terminate_io use by nvme_fc_error_recovery (Gopal Tiwari) [1921591] - nvme-fc: remove err_work work item (Gopal Tiwari) [1921591] - nvme-fc: track error_recovery while connecting (Gopal Tiwari) [1921591] - nvme-rdma: handle unexpected nvme completion data length (Gopal Tiwari) [1921591] - nvme: ignore zone validate errors on subsequent scans (Gopal Tiwari) [1921591] - nvme-fc: shorten reconnect delay if possible for FC (Gopal Tiwari) [1921591] - nvme-fc: wait for queues to freeze before calling update_hr_hw_queues (Gopal Tiwari) [1921591] - nvme-fc: fix error loop in create_hw_io_queues (Gopal Tiwari) [1921591] - nvme-fc: fix io timeout to abort I/O (Gopal Tiwari) [1921591] - nvmet: cleanup nvmet_passthru_map_sg() (Gopal Tiwari) [1921591] - nvmet: don't use BLK_MQ_REQ_NOWAIT for passthru (Gopal Tiwari) [1921591] - nvmet: limit passthru MTDS by BIO_MAX_PAGES (Gopal Tiwari) [1921591] - nvme-rdma: fix crash due to incorrect cqe (Gopal Tiwari) [1921591] - nvmet: fix uninitialized work for zero kato (Gopal Tiwari) [1921591] - nvme: use queuedata for nvme_req_qid (Gopal Tiwari) [1921591] - nvme-pci: disable Write Zeroes on Sandisk Skyhawk (Gopal Tiwari) [1921591] - nvme-rdma: fix crash when connect rejected (Gopal Tiwari) [1921591] - nvme: translate zone resource errors (Gopal Tiwari) [1921591] - block: add zone specific block statuses (Gopal Tiwari) [1921591] - nvme-core: remove extra condition for vwc (Gopal Tiwari) [1921591] - nvme-core: remove extra variable (Gopal Tiwari) [1921591] - nvme: remove nvme_identify_ns_list (Gopal Tiwari) [1921591] - nvme: refactor nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: move nvme_validate_ns (Gopal Tiwari) [1921591] - nvme: remove nvme_update_formats (Gopal Tiwari) [1921591] - nvme: update the known admin effects (Gopal Tiwari) [1921591] - nvme: query namespace identifiers before adding the namespace (Gopal Tiwari) [1921591] - nvme: revalidate zone bitmaps in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: call nvme_identify_ns as the first thing in nvme_alloc_ns_block (Gopal Tiwari) [1921591] - nvme: set the queue limits in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: remove the 0 lba_shift check in nvme_update_ns_info (Gopal Tiwari) [1921591] - nvme: freeze the queue over ->lba_shift updates (Gopal Tiwari) [1921591] - nvme: factor out a nvme_configure_metadata helper (Gopal Tiwari) [1921591] - nvme: lift the check for an unallocated namespace into nvme_identify_ns (Gopal Tiwari) [1921591] - nvme: clean up the check for too large logic block sizes (Gopal Tiwari) [1921591] - nvme: remove the disk argument to nvme_update_zone_info (Gopal Tiwari) [1921591] - nvme: rename __nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename _nvme_revalidate_disk (Gopal Tiwari) [1921591] - nvme: rename nvme_validate_ns to nvme_validate_or_alloc_ns (Gopal Tiwari) [1921591] - nvme: fix initialization of the zone bitmaps (Gopal Tiwari) [1921591] - nvme-loop: don't put ctrl on nvme_init_ctrl error (Gopal Tiwari) [1921591] - nvme-core: put ctrl ref when module ref get fail (Gopal Tiwari) [1921591] - nvme-tcp: check page by sendpage_ok() before calling kernel_sendpage() (Gopal Tiwari) [1921591] - nvmet-fc: fix missing check for no hostport struct (Gopal Tiwari) [1921591] - nvme: fix error handling in nvme_ns_report_zones (Gopal Tiwari) [1921591] - nvmet: add passthru ZNS support (Gopal Tiwari) [1921591] - nvmet: handle keep-alive timer when kato is modified by a set features cmd (Gopal Tiwari) [1921591] - nvme-pci: allocate separate interrupt for the reserved non-polled I/O queue (Gopal Tiwari) [1921591] - nvmet-tcp: have queue io_work context run on sock incoming cpu (Gopal Tiwari) [1921591] - nvme: lift the file open code from nvme_ctrl_get_by_path (Gopal Tiwari) [1921591] - nvme: use an xarray to lookup the Commands Supported and Effects log (Gopal Tiwari) [1921591] - nvme-pci: Move enumeration by class to be last in the table (Gopal Tiwari) [1921591] - nvme-core: don't use NVME_NSID_ALL for command effects and supported log (Gopal Tiwari) [1921591] - nvme-fc: fail new connections to a deleted host or remote port (Gopal Tiwari) [1921591] - nvme: return errors for hwmon init (Gopal Tiwari) [1921591] - nvme-pci: fix NULL req in completion handler (Gopal Tiwari) [1921591] - nvmet: get transport reference for passthru ctrl (Gopal Tiwari) [1921591] - nvme-core: get/put ctrl and transport module in nvme_dev_open/release() (Gopal Tiwari) [1921591] - nvme-tcp: fix kconfig dependency warning when !CRYPTO (Gopal Tiwari) [1921591] - nvme: use blk_mq_complete_request_remote to avoid an indirect function call (Gopal Tiwari) [1921591] - nvme-core: replace ctrl page size with a macro (Gopal Tiwari) [1921591] - nvme-pci: remove the inline scatterlist optimization (Gopal Tiwari) [1921591] - block: optimize blk_queue_zoned_model for !CONFIG_BLK_DEV_ZONED (Gopal Tiwari) [1921591] - nvme: support for zoned namespaces (Gopal Tiwari) [1921591] - null_blk: introduce zone capacity for zoned device (Gopal Tiwari) [1921591] - block: add capacity field to zone descriptors (Gopal Tiwari) [1921591]- vmxnet3: Set the default of vxlan overlay offload to disabled (Cathy Avery) [1941714] - vmxnet3: Update driver to use ethtool_sprintf (Cathy Avery) [1923796] - vmxnet3: Remove buf_info from device accessible structures (Cathy Avery) [1923796] - igc: Fix overwrites return value (Corinna Vinschen) [1920285] - igc: Add set/clear large buffer helpers (Corinna Vinschen) [1920285] - igc: Refactor Rx timestamp handling (Corinna Vinschen) [1920285] - igc: Introduce igc_get_rx_frame_truesize() helper (Corinna Vinschen) [1920285] - igc: Introduce igc_rx_buffer_flip() helper (Corinna Vinschen) [1920285] - igc: Remove unused argument from igc_tx_cmd_type() (Corinna Vinschen) [1920285] - igc: Fix prototype warning (Corinna Vinschen) [1920285] - igc: Assign boolean values to a bool variable (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_LOOPBACK (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_SPEED (Corinna Vinschen) [1920285] - igc: Remove unused MII_CR_RESET (Corinna Vinschen) [1920285] - igc: Fix igc_ptp_rx_pktstamp() (Corinna Vinschen) [1920285] - igc: Fix Supported Pause Frame Link Setting (Corinna Vinschen) [1920285] - igc: Fix Pause Frame Advertising (Corinna Vinschen) [1920285] - igc: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1920285] - igc: Fix TDBAL register show incorrect value (Corinna Vinschen) [1920285] - igc: Remove unused FUNC_1 mask (Corinna Vinschen) [1920285] - igc: Remove unused local receiver mask (Corinna Vinschen) [1920285] - igc: Prefer strscpy over strlcpy (Corinna Vinschen) [1920285] - igc: Expose the gPHY firmware version (Corinna Vinschen) [1920285] - igc: Expose the NVM version (Corinna Vinschen) [1920285] - igc: Add Host Good Packets Transmitted Count (Corinna Vinschen) [1920285] - igc: Remove MULR mask define (Corinna Vinschen) [1920285] - igc: Remove igc_set_fw_version comment (Corinna Vinschen) [1920285] - igc: Clean up nvm_operations structure (Corinna Vinschen) [1920285] - igc: check return value of ret_val in igc_config_fc_after_link_up (Corinna Vinschen) [1920285] - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr (Corinna Vinschen) [1920285] - igc: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1920285] - net: igc: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920285] - igc: Add new device ID (Corinna Vinschen) [1920285] - net: igbvf: use skb_csum_is_sctp instead of protocol check (Corinna Vinschen) [1920287] - igbvf: Refactor traces (Corinna Vinschen) [1920287] - igbvf: amend removal of MODULE_VERSION (Corinna Vinschen) [1955752] - netlink: add tracepoint at NL_SET_ERR_MSG (Marcelo Ricardo Leitner) [1956983] - xfrm: Provide private skb extensions for segmented and hw offloaded ESP packets (Sabrina Dubroca) [1935575] - xfrm: BEET mode doesn't support fragments for inner packets (Xin Long) [1870900] - xfrm: Fix NULL pointer dereference on policy lookup (Sabrina Dubroca) [1951965] - xfrm: use secpath_exist where applicable (Sabrina Dubroca) [1951965] - net: xfrm: Use sequence counter with associated spinlock (Sabrina Dubroca) [1951965] - net: xfrm: Localize sequence counter per network namespace (Sabrina Dubroca) [1951965] - xfrm: Return the correct errno code (Sabrina Dubroca) [1951965] - xfrm: Fix wraparound in xfrm_policy_addr_delta() (Sabrina Dubroca) [1951965] - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces (Sabrina Dubroca) [1951965] - xfrm: Fix oops in xfrm_replay_advance_bmp (Sabrina Dubroca) [1951965] - ah6: fix error return code in ah6_input() (Sabrina Dubroca) [1951965] - net: xfrm: fix a race condition during allocing spi (Sabrina Dubroca) [1951965] - xfrm: policy: Use sequence counters with associated lock (Sabrina Dubroca) [1951965] - selftests: net: mirror_gre_vlan_bridge_1q: Make an FDB entry static (Ivan Vecera) [1952586] - net: bridge: switchdev: include local flag in FDB notifications (Ivan Vecera) [1952586] - net: bridge: switchdev: refactor br_switchdev_fdb_notify (Ivan Vecera) [1952586] - net: bridge: don't notify switchdev for local FDB addresses (Ivan Vecera) [1952586] - net: bridge: use switchdev for port flags set through sysfs too (Ivan Vecera) [1952586] - net: bridge: vlan: fix error return code in __vlan_add() (Ivan Vecera) [1952586] - net: bridge: add missing counters to ndo_get_stats64 callback (Ivan Vecera) [1952586] - net: bridge: use new function dev_fetch_sw_netstats (Ivan Vecera) [1952586] - net: bridge: fdb: don't flush ext_learn entries (Ivan Vecera) [1952586] - net: bridge: clear bridge's private skb space on xmit (Ivan Vecera) [1952586] - bridge: mcast: Fix MLD2 Report IPv6 payload length check (Ivan Vecera) [1952586] - net: bridge: enfore alignment for ethernet address (Ivan Vecera) [1952586] - netfilter: nft_reject_bridge: enable reject with bridge vlan (Ivan Vecera) [1952586] - net: bridge: vlan: Add a schedule point during VLAN processing (Ivan Vecera) [1952586] - netfilter: ebtables: compat: reject all padding in matches/watchers (Ivan Vecera) [1952586] - net: bridge: deny dev_set_mac_address() when unregistering (Ivan Vecera) [1952586] - net: bridge: fdb: set flags directly in fdb_create (Ivan Vecera) [1952586] - net: bridge: fdb: convert offloaded to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_external_learn to use bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert added_by_user to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_sticky to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_static to bitops (Ivan Vecera) [1952586] - net: bridge: fdb: convert is_local to bitops (Ivan Vecera) [1952586] - net: bridge: move default pvid init/deinit to NETDEV_REGISTER/UNREGISTER (Ivan Vecera) [1952586] - bridge: Fix possible use-after-free when deleting bridge port (Ivan Vecera) [1952586] - bridge: update vlan dev link state for bridge netdev changes (Ivan Vecera) [1952586] - bridge: update vlan dev state when port added to or deleted from vlan (Ivan Vecera) [1952586] - bridge: support binding vlan dev link state to vlan member bridge ports (Ivan Vecera) [1952586] - vlan: do not transfer link state in vlan bridge binding mode (Ivan Vecera) [1952586] - vlan: support binding link state to vlan member bridge ports (Ivan Vecera) [1952586] - ipv6: weaken the v4mapped source check (Paolo Abeni) [1950298] - tcp: relookup sock for RST+ACK packets handled by obsolete req sock (Paolo Abeni) [1950298] - inet_connection_sock: remove unused parameter of reqsk_queue_unlink func (Paolo Abeni) [1950298] - tcp: add sanity tests to TCP_QUEUE_SEQ (Paolo Abeni) [1950298] - tcp: fix SO_RCVLOWAT related hangs under mem pressure (Paolo Abeni) [1950298] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Paolo Abeni) [1950298] - tcp: fix cwnd-limited bug for TSO deferral where we send nothing (Paolo Abeni) [1950298] - vfio-ccw: Wire in the request callback (Thomas Huth) [1940451] - vfio-mdev: Wire in a request handler for mdev parent (Thomas Huth) [1940451] - intel_idle: add Iclelake-D support (David Arcari) [1960287] - scsi: ibmvfc: Fix potential race in ibmvfc_wait_for_ops() (Steve Best) [1941180] - powerpc/sstep: Fix VSX instruction emulation (Steve Best) [1934187] - powerpc/pseries/hibernation: remove pseries_suspend_cpu() (Steve Best) [1932970] - powerpc/pseries: remove cede offline state for CPUs (Steve Best) [1932970] - powerpc/pseries: export LPAR security flavor in lparcfg (Steve Best) [1935660] - Makefile: update early devel phase flag (Bruno Meneguele) [1930504]- configs: Enable CONFIG_BPF_KPROBE_OVERRIDE (Jiri Olsa) [1920439] - powerpc/kvm: Fix build error when PPC_MEM_KEYS/PPC_PSERIES=n (Greg Kurz) [1945745] - powerpc/kvm: Fix PR KVM with KUAP/MEM_KEYS enabled (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[HV] is always clear in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure MSR[ME] is always set in guest MSR (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix CONFIG_SPAPR_TCE_IOMMU=n default hcalls (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: remove unused kvmppc_h_protect argument (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove redundant mtspr PSPB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Prevent radix guests setting LPCR[TC] (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Disallow LPCR[AIL] to be set to 1 or 2 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Add a function to filter guest LPCR bits (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Nested move LPCR sanitising to sanitise_hv_regs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit (Greg Kurz) [1945745] - KVM: PPC: Don't always report hash MMU capability for P9 < DD2.2 (Greg Kurz) [1945745] - powerpc/xive: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix host radix SLB optimisation with hash guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ensure radix guest has no SLB entries (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Save and restore FSCR in the P9 path (Greg Kurz) [1945745] - KVM: PPC: remove unneeded semicolon (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Use POWER9 SLBIA IH=6 variant to clear SLB (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: No need to clear radix host SLB before loading HPT guest (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix radix guest SLB side channel (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Remove support for running HPT guest on RPT host without mixed mode support (Greg Kurz) [1945745] - powerpc/mm: Update tlbiel loop on POWER10 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Allow nested guest creation when L0 hv_guest_state > L1 (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Context tracking exit guest context before enabling irqs (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Include prototypes (Greg Kurz) [1945745] - KVM: PPC: Make the VMX instruction emulation routines static (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Fix mask size for emulated msgsndp (Greg Kurz) [1945745] - KVM: PPC: fix comparison to bool warning (Greg Kurz) [1945745] - KVM: PPC: Book3S: Assign boolean values to a bool variable (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Add a comment regarding VP numbering (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_EOI_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_MASK_FW (Greg Kurz) [1945745] - powerpc/xive: Remove P9 DD1 flag XIVE_IRQ_FLAG_SHIFT_BUG (Greg Kurz) [1945745] - powerpc/xive: Add a debug_show handler to the XIVE irq_domain (Greg Kurz) [1945745] - powerpc/xive: Rename XIVE_IRQ_NO_EOI to show its a flag (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Show detailed configuration in debug output (Greg Kurz) [1945745] - powerpc/64s: Remove MSR[ISF] bit (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Ratelimit machine check messages coming from guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: Don't attempt to recover machine checks for FWNMI enabled guests (Greg Kurz) [1945745] - KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing ESB page (Greg Kurz) [1945745] - clocksource/drivers/hyper-v: Move handling of STIMER0 interrupts (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Set clocksource rating based on Hyper-V feature (Mohammed Gamal) [1940901] - clocksource/drivers/hyper-v: Handle sched_clock differences inline (Mohammed Gamal) [1940901] - clocksource/hyperv: use MSR-based access if running as root (Mohammed Gamal) [1940901] - cifs: fix interrupted close commands (Ronnie Sahlberg) [1952263] - cifs: add NULL check for ses->tcon_ipc (Ronnie Sahlberg) [1952263] - smb3: set COMPOUND_FID to FileID field of subsequent compound request (Ronnie Sahlberg) [1952263] - cifs: fix potential use-after-free in cifs_echo_request() (Ronnie Sahlberg) [1952263] - cifs: allow syscalls to be restarted in __smb_send_rqst() (Ronnie Sahlberg) [1952263] - smb3: Handle error case during offload read path (Ronnie Sahlberg) [1952263] - smb3: Avoid Mid pending list corruption (Ronnie Sahlberg) [1952263] - smb3: Call cifs reconnect from demultiplex thread (Ronnie Sahlberg) [1952263] - cifs: fix a memleak with modefromsid (Ronnie Sahlberg) [1952263] - cifs: update internal module version number (Ronnie Sahlberg) [1952263] - smb3: add some missing definitions from MS-FSCC (Ronnie Sahlberg) [1952263] - smb3: remove two unused variables (Ronnie Sahlberg) [1952263] - smb3: add support for stat of WSL reparse points for special file types (Ronnie Sahlberg) [1952263] - SMB3: add support for recognizing WSL reparse tags (Ronnie Sahlberg) [1952263] - cifs: remove bogus debug code (Ronnie Sahlberg) [1952263] - smb3.1.1: fix typo in compression flag (Ronnie Sahlberg) [1952263] - cifs: move smb version mount options into fs_context.c (Ronnie Sahlberg) [1952263] - cifs: move cache mount options to fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: move security mount options into fs_context.ch (Ronnie Sahlberg) [1952263] - cifs: add files to host new mount api (Ronnie Sahlberg) [1952263] - smb3: do not try to cache root directory if dir leases not supported (Ronnie Sahlberg) [1952263] - smb3: fix stat when special device file and mounted with modefromsid (Ronnie Sahlberg) [1952263] - cifs: Print the address and port we are connecting to in generic_ip_connect() (Ronnie Sahlberg) [1952263] - SMB3: Resolve data corruption of TCP server info fields (Ronnie Sahlberg) [1952263] - cifs: make const array static, makes object smaller (Ronnie Sahlberg) [1952263] - SMB3.1.1: Fix ids returned in POSIX query dir (Ronnie Sahlberg) [1952263] - smb3: add dynamic trace point to trace when credits obtained (Ronnie Sahlberg) [1952263] - smb3.1.1: do not fail if no encryption required but server doesn't support it (Ronnie Sahlberg) [1952263] - cifs: Return the error from crypt_message when enc/dec key not found. (Ronnie Sahlberg) [1952263] - smb3.1.1: set gcm256 when requested (Ronnie Sahlberg) [1952263] - smb3.1.1: rename nonces used for GCM and CCM encryption (Ronnie Sahlberg) [1952263] - smb3.1.1: print warning if server does not support requested encryption type (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm enable_gcm_256 (Ronnie Sahlberg) [1952263] - smb3.1.1: add new module load parm require_gcm_256 (Ronnie Sahlberg) [1952263] - cifs: map STATUS_ACCOUNT_LOCKED_OUT to -EACCES (Ronnie Sahlberg) [1952263] - SMB3.1.1: add defines for new signing negotiate context (Ronnie Sahlberg) [1952263] - Handle STATUS_IO_TIMEOUT gracefully (Ronnie Sahlberg) [1952263] - cifs: compute full_path already in cifs_readdir() (Ronnie Sahlberg) [1952263] - cifs: return cached_fid from open_shroot (Ronnie Sahlberg) [1952263] - update structure definitions from updated protocol documentation (Ronnie Sahlberg) [1952263] - smb3: add defines for new crypto algorithms (Ronnie Sahlberg) [1952263] - cifs: fix check of tcon dfs in smb1 (Ronnie Sahlberg) [1952263] - SMB3: Fix mkdir when idsfromsid configured on mount (Ronnie Sahlberg) [1952263] - cifs: Convert to use the fallthrough macro (Ronnie Sahlberg) [1952263] - cifs: Fix an error pointer dereference in cifs_mount() (Ronnie Sahlberg) [1952263] - cifs: document and cleanup dfs mount (Ronnie Sahlberg) [1952263] - cifs: only update prefix path of DFS links in cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: fix double free error on share and prefix (Ronnie Sahlberg) [1952263] - cifs: handle RESP_GET_DFS_REFERRAL.PathConsumed in reconnect (Ronnie Sahlberg) [1952263] - cifs: handle empty list of targets in cifs_reconnect() (Ronnie Sahlberg) [1952263] - cifs: rename reconn_inval_dfs_target() (Ronnie Sahlberg) [1952263] - cifs: reduce number of referral requests in DFS link lookups (Ronnie Sahlberg) [1952263] - cifs: merge __{cifs,smb2}_reconnect[_tcon]() into cifs_tree_connect() (Ronnie Sahlberg) [1952263] - cifs: convert to use be32_add_cpu() (Ronnie Sahlberg) [1952263] - cifs: delete duplicated words in header files (Ronnie Sahlberg) [1952263] - cifs: Remove the superfluous break (Ronnie Sahlberg) [1952263] - cifs: remove unused variable 'server' (Ronnie Sahlberg) [1952263] - smb3: warn on confusing error scenario with sec=krb5 (Ronnie Sahlberg) [1952263] - fuse: 32-bit user space ioctl compat for fuse device (Miklos Szeredi) [1949873] - virtiofs: Fail dax mount if device does not support it (Miklos Szeredi) [1949873] - fuse: fix live lock in fuse_iget() (Miklos Szeredi) [1949873] - mm/filemap: remove unused parameter and change to void type for replace_page_cache_page() (Miklos Szeredi) [1949873] - fuse: support SB_NOSEC flag to improve write performance (Miklos Szeredi) [1949873] - fuse: add a flag FUSE_OPEN_KILL_SUIDGID for open() request (Miklos Szeredi) [1949873] - fuse: don't send ATTR_MODE to kill suid/sgid for handle_killpriv_v2 (Miklos Szeredi) [1949873] - fuse: setattr should set FATTR_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: set FUSE_WRITE_KILL_SUIDGID in cached write path (Miklos Szeredi) [1949873] - fuse: rename FUSE_WRITE_KILL_PRIV to FUSE_WRITE_KILL_SUIDGID (Miklos Szeredi) [1949873] - fuse: introduce the notion of FUSE_HANDLE_KILLPRIV_V2 (Miklos Szeredi) [1949873] - fuse: always revalidate if exclusive create (Miklos Szeredi) [1949873] - virtiofs: clean up error handling in virtio_fs_get_tree() (Miklos Szeredi) [1949873] - fuse: add fuse_sb_destroy() helper (Miklos Szeredi) [1949873] - fuse: simplify get_fuse_conn*() (Miklos Szeredi) [1949873] - fuse: get rid of fuse_mount refcount (Miklos Szeredi) [1949873] - virtiofs: simplify sb setup (Miklos Szeredi) [1949873] - virtiofs fix leak in setup (Miklos Szeredi) [1949873] - fuse: launder page should wait for page writeback (Miklos Szeredi) [1949873] - fuse: connection remove fix (Miklos Szeredi) [1949873] - fuse: implement crossmounts (Miklos Szeredi) [1949873] - fuse: Allow fuse_fill_super_common() for submounts (Miklos Szeredi) [1949873] - fuse: split fuse_mount off of fuse_conn (Miklos Szeredi) [1949873] - fuse: drop fuse_conn parameter where possible (Miklos Szeredi) [1949873] - fuse: store fuse_conn in fuse_req (Miklos Szeredi) [1949873] - fuse: add submount support to (Miklos Szeredi) [1949873] - fuse: fix page dereference after free (Miklos Szeredi) [1949873] - fuse: update project homepage (Miklos Szeredi) [1949873] - fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS (Miklos Szeredi) [1949873] - fuse: don't ignore errors from fuse_writepages_fill() (Miklos Szeredi) [1949873] - fuse: clean up condition for writepage sending (Miklos Szeredi) [1949873] - fuse: fix warning in tree_insert() and clean up writepage insertion (Miklos Szeredi) [1949873] - fuse: move rb_erase() before tree_insert() (Miklos Szeredi) [1949873] - fuse: optimize writepages search (Miklos Szeredi) [1949873] - fuse: Update stale comment in queue_interrupt() (Miklos Szeredi) [1949873] - fuse: use true,false for bool variable (Miklos Szeredi) [1949873] - fuse: Add changelog entries for protocols 7.1 - 7.8 (Miklos Szeredi) [1949873] - fuse: reserve byteswapped init opcodes (Miklos Szeredi) [1949873] - convenience helper: get_tree_single() (finish backport) (Miklos Szeredi) [1949873] - fuse: Convert fusectl to use the new mount API (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.9 (Miklos Szeredi) [1949873] - fuse: fix changelog entry for protocol 7.12 (Miklos Szeredi) [1949873] - sfc: adjust efx->xdp_tx_queue_count with the real number of initialized queues (Íñigo Huguet) [1934254] - sfc: Remove duplicate argument (Íñigo Huguet) [1934254] - sfc: Use 'skb_add_rx_frag()' instead of hand coding it (Íñigo Huguet) [1934254] - sfc-falcon: Fix a typo (Íñigo Huguet) [1934254] - sfc: ef10: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX event handling (Íñigo Huguet) [1934254] - sfc: farch: fix TX queue lookup in TX flush done handling (Íñigo Huguet) [1934254] - sfc: reduce the number of requested xdp ev queues (Íñigo Huguet) [1934254] - sfc: support GRE TSO on EF100 (Íñigo Huguet) [1934254] - sfc: correctly support non-partial GSO_UDP_TUNNEL_CSUM on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 19 fields (Íñigo Huguet) [1934254] - sfc: advertise our vlan features (Íñigo Huguet) [1934254] - sfc: only use fixed-id if the skb asks for it (Íñigo Huguet) [1934254] - sfc: implement encap TSO on EF100 (Íñigo Huguet) [1934254] - sfc: extend bitfield macros to 17 fields (Íñigo Huguet) [1934254] - sfc: move initialisation of efx->filter_sem to efx_init_struct() (Íñigo Huguet) [1934254] - net: sfc: Use GFP_KERNEL in efx_ef10_try_update_nic_stats() (Íñigo Huguet) [1934254] - net: sfc: Replace in_interrupt() usage (Íñigo Huguet) [1934254] - sfc: clean up mis-targeted comments (Íñigo Huguet) [1934254] - sfc: fix kdoc warning (Íñigo Huguet) [1934254] - sfc: clean up unused assignments (Íñigo Huguet) [1934254] - sfc: advertise encapsulated offloads on EF10 (Íñigo Huguet) [1934254] - sfc: implement encapsulated TSO on EF10 (Íñigo Huguet) [1934254] - sfc: de-indirect TSO handling (Íñigo Huguet) [1934254] - sfc: select inner-csum-offload TX queues for skbs that need it (Íñigo Huguet) [1934254] - sfc: create inner-csum queues on EF10 if supported (Íñigo Huguet) [1934254] - sfc: define inner/outer csum offload TXQ types (Íñigo Huguet) [1934254] - sfc: decouple TXQ type from label (Íñigo Huguet) [1934254] - sfc: cleanups around efx_alloc_channel (Íñigo Huguet) [1934254] - sfc: remove spurious unreachable return statement (Íñigo Huguet) [1934254] - sfc: remove duplicate call to efx_init_channels from EF100 probe (Íñigo Huguet) [1934254] - sfc: coding style cleanups in mcdi_port_common.c (Íñigo Huguet) [1934254] - sfc: simplify DMA mask setting (Íñigo Huguet) [1934254] - sfc: remove EFX_DRIVER_VERSION (Íñigo Huguet) [1934254] - sfc: handle limited FEC support (Íñigo Huguet) [1934254] - sfc: add ethtool ops and miscellaneous ndos to EF100 (Íñigo Huguet) [1934254] - sfc: remove phy_op indirection (Íñigo Huguet) [1934254] - sfc: remove efx_tx_queue_partner (Íñigo Huguet) [1934254] - sfc: rewrite efx_tx_may_pio (Íñigo Huguet) [1934254] - sfc: use efx_channel_tx_[old_]fill_level() in Siena/EF10 TX datapath (Íñigo Huguet) [1934254] - sfc: use tx_queue->old_read_count in EF100 TX path (Íñigo Huguet) [1934254] - sfc: make ef100 xmit_more handling look more like ef10's (Íñigo Huguet) [1934254] - sfc: add and use efx_tx_send_pending in tx.c (Íñigo Huguet) [1934254] - sfc: return errors from efx_mcdi_set_id_led, and de-indirect (Íñigo Huguet) [1934254] - sfc: fix kernel-doc on struct efx_loopback_state (Íñigo Huguet) [1934254] - sfc: fix unused-but-set-variable warning in efx_farch_filter_remove_safe (Íñigo Huguet) [1934254] - sfc: fix W=1 warnings in efx_farch_handle_rx_not_ok (Íñigo Huguet) [1934254] - sfc: convert to new udp_tunnel infrastructure (Íñigo Huguet) [1934254] - net: don't warn in inet diag when IPV6 is disabled (Hangbin Liu) [1938639] - tcp: do not mess with cloned skbs in tcp_add_backlog() (Hangbin Liu) [1880432] - redhat: enable MHI bus driver support (Jarod Wilson) [1938030] - bus: mhi: core: Fix invalid error returning in mhi_queue (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Remove WQ_MEM_RECLAIM flag from state workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Fix check for syserr at power_up (Jarod Wilson) [1938030] - mhi: Fix double dma free (Jarod Wilson) [1938030] - bus: mhi: pci_generic: Increase num of elements in hw event ring (Jarod Wilson) [1938030] - mhi: pci_generic: Print warning in case of firmware crash (Jarod Wilson) [1938030] - bus: mhi: core: Add helper API to return number of free TREs (Jarod Wilson) [1938030] - mhi: core: Factorize mhi queuing (Jarod Wilson) [1938030] - mhi: use irq_flags if controller driver configures it (Jarod Wilson) [1938030] - mhi: pci_generic: Fix shared MSI vector support (Jarod Wilson) [1938030] - mhi: unconstify mhi_event_config (Jarod Wilson) [1938030] - bus: mhi: Ensure correct ring update ordering with memory barrier (Jarod Wilson) [1938030] - mhi: pci_generic: Set irq moderation value to 1ms for hw channels (Jarod Wilson) [1938030] - mhi: pci_generic: Add diag channels (Jarod Wilson) [1938030] - mhi: pci_generic: Increase controller timeout value (Jarod Wilson) [1938030] - mhi: pci_generic: Add health-check (Jarod Wilson) [1938030] - mhi: pci_generic: Add PCI error handlers (Jarod Wilson) [1938030] - mhi: pci_generic: Add suspend/resume/recovery procedure (Jarod Wilson) [1938030] - mhi: pci_generic: Add support for reset (Jarod Wilson) [1938030] - mhi: pci_generic: Enable burst mode for hardware channels (Jarod Wilson) [1938030] - mhi: pci-generic: Increase number of hardware events (Jarod Wilson) [1938030] - bus: mhi: core: Add device hardware reset support (Jarod Wilson) [1938030] - mhi: pci_generic: Fix implicit conversion warning (Jarod Wilson) [1938030] - bus: mhi: core: Fix error handling in mhi_register_controller() (Jarod Wilson) [1938030] - bus: mhi: core: Fix device hierarchy (Jarod Wilson) [1938030] - bus: mhi: core: Indexed MHI controller name (Jarod Wilson) [1938030] - bus: mhi: core: Remove MHI event ring IRQ handlers when powering down (Jarod Wilson) [1938030] - bus: mhi: core: Mark and maintain device states early on after power down (Jarod Wilson) [1938030] - bus: mhi: core: Separate system error and power down handling (Jarod Wilson) [1938030] - bus: mhi: core: Check for IRQ availability during registration (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on mission mode failure (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate label in firmware load handler API (Jarod Wilson) [1938030] - bus: mhi: core: Move to an error state on any firmware load failure (Jarod Wilson) [1938030] - bus: mhi: core: Prevent sending multiple RDDM entry callbacks (Jarod Wilson) [1938030] - bus: mhi: core: Move to SYS_ERROR regardless of RDDM capability (Jarod Wilson) [1938030] - bus: mhi: core: Skip device wake in error or shutdown states (Jarod Wilson) [1938030] - bus: mhi: core: Move to using high priority workqueue (Jarod Wilson) [1938030] - bus: mhi: core: Use appropriate names for firmware load functions (Jarod Wilson) [1938030] - bus: mhi: core: Skip RDDM download for unknown execution environment (Jarod Wilson) [1938030] - bus: mhi: core: Rename RDDM download function to use proper words (Jarod Wilson) [1938030] - bus: mhi: core: Remove unused mhi_fw_load_worker() declaration (Jarod Wilson) [1938030] - bus: mhi: core: Expose mhi_get_exec_env() API for controllers (Jarod Wilson) [1938030] - bus: mhi: core: Add missing EXPORT_SYMBOL for mhi_get_mhi_state() (Jarod Wilson) [1938030] - bus: mhi: core: Remove unnecessary counter from mhi_firmware_copy() (Jarod Wilson) [1938030] - bus: mhi: Fix channel close issue on driver remove (Jarod Wilson) [1938030] - bus: mhi: core: Fix null pointer access when parsing MHI configuration (Jarod Wilson) [1938030] - bus: mhi: Add MHI PCI support for WWAN modems (Jarod Wilson) [1938030] - bus: mhi: core: fix potential operator-precedence with BHI macros (Jarod Wilson) [1938030] - bus: mhi: core: Remove double locking from mhi_driver_remove() (Jarod Wilson) [1938030] - bus: mhi: Remove auto-start option (Jarod Wilson) [1938030] - bus: mhi: Add mhi_queue_is_full function (Jarod Wilson) [1938030] - bus: mhi: debugfs: Print channel context read-pointer (Jarod Wilson) [1938030] - bus: mhi: core: Fix the building of MHI module (Jarod Wilson) [1938030] - bus: mhi: Remove unused nr_irqs_req variable (Jarod Wilson) [1938030] - bus: mhi: core: Allow shared IRQ for event rings (Jarod Wilson) [1938030] - bus: mhi: core: Introduce sysfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce debugfs entries for MHI (Jarod Wilson) [1938030] - bus: mhi: Fix entries based on Kconfig coding style (Jarod Wilson) [1938030] - bus: mhi: Remove include of rwlock_types.h (Jarod Wilson) [1938030] - bus: mhi: core: Add const qualifier to MHI config information (Jarod Wilson) [1938030] - bus: mhi: core: Introduce APIs to allocate and free the MHI controller (Jarod Wilson) [1938030] - bus: mhi: core: Read and save device hardware information from BHI (Jarod Wilson) [1938030] - bus: mhi: core: Introduce counters to track MHI device state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Introduce helper function to check device state (Jarod Wilson) [1938030] - bus: mhi: core: Use generic name field for an MHI device (Jarod Wilson) [1938030] - bus: mhi: core: Trigger host resume if suspended during mhi_device_get() (Jarod Wilson) [1938030] - bus: mhi: core: Use helper API to trigger a non-blocking host resume (Jarod Wilson) [1938030] - bus: mhi: core: Abort suspends due to outgoing pending packets (Jarod Wilson) [1938030] - bus: mhi: core: Remove double occurrence for mhi_ctrl_ev_task() declaration (Jarod Wilson) [1938030] - bus: mhi: fix doubled words and struct image_info kernel-doc (Jarod Wilson) [1938030] - bus: mhi: core: Handle syserr during power_up (Jarod Wilson) [1938030] - bus: mhi: core: Handle write lock properly in mhi_pm_m0_transition (Jarod Wilson) [1938030] - bus: mhi: core: Do not process SYS_ERROR if RDDM is supported (Jarod Wilson) [1938030] - bus: mhi: core: Skip handling BHI irq if MHI reg access is not allowed (Jarod Wilson) [1938030] - bus: mhi: core: Handle disable transitions in state worker (Jarod Wilson) [1938030] - bus: mhi: core: Remove the system error worker thread (Jarod Wilson) [1938030] - bus: mhi: core: Ensure non-zero session or sequence ID values are used (Jarod Wilson) [1938030] - bus: mhi: core: Improve debug logs for loading firmware (Jarod Wilson) [1938030] - bus: mhi: core: Return appropriate error codes for AMSS load failure (Jarod Wilson) [1938030] - bus: mhi: core: Handle firmware load using state worker (Jarod Wilson) [1938030] - bus: mhi: core: Read transfer length from an event properly (Jarod Wilson) [1938030] - bus: mhi: core: Add range check for channel id received in event ring (Jarod Wilson) [1938030] - bus: mhi: core: Cache intmod from mhi event to mhi channel (Jarod Wilson) [1938030] - bus: mhi: core: Refactor mhi queue APIs (Jarod Wilson) [1938030] - bus: mhi: core: Fix some error return code (Jarod Wilson) [1938030] - bus: mhi: core: Fix channel device name conflict (Jarod Wilson) [1938030] - bus: mhi: core: Fix typo in comment (Jarod Wilson) [1938030] - bus: mhi: core: Offload register accesses to the controller (Jarod Wilson) [1938030] - bus: mhi: core: Remove link_status() callback (Jarod Wilson) [1938030] - bus: mhi: core: Make sure to powerdown if mhi_sync_power_up fails (Jarod Wilson) [1938030] - bus: mhi: Fix parsing of mhi_flags (Jarod Wilson) [1938030] - bus: mhi: core: Fix a NULL vs IS_ERR check in mhi_create_devices() (Jarod Wilson) [1938030] - bus: mhi: core: Add support for MHI suspend and resume (Jarod Wilson) [1938030] - bus: mhi: core: Drop the references to mhi_dev in mhi_destroy_device() (Jarod Wilson) [1938030] - bus: mhi: core: Initialize bhie field in mhi_cntrl for RDDM capture (Jarod Wilson) [1938030] - bus: mhi: core: Add support for reading MHI info from device (Jarod Wilson) [1938030] - bus: mhi: core: Pass module owner during client driver registration (Jarod Wilson) [1938030] - bus/mhi: fix printk format for size_t (Jarod Wilson) [1938030] - bus: mhi: core: Add uevent support for module autoloading (Jarod Wilson) [1938030] - bus: mhi: core: Add support for data transfer (Jarod Wilson) [1938030] - bus: mhi: core: Add support for processing events from client device (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading RDDM image during panic (Jarod Wilson) [1938030] - bus: mhi: core: Add support for downloading firmware over BHIe (Jarod Wilson) [1938030] - bus: mhi: core: Add support for basic PM operations (Jarod Wilson) [1938030] - bus: mhi: core: Add support for PM state transitions (Jarod Wilson) [1938030] - bus: mhi: core: Add support for ringing channel/event ring doorbells (Jarod Wilson) [1938030] - bus: mhi: core: Add support for creating and destroying MHI devices (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI client drivers (Jarod Wilson) [1938030] - bus: mhi: core: Add support for registering MHI controllers (Jarod Wilson) [1938030]- ipmi: remove open coded version of SMBus block write (Tony Camuso) [1947126] - char: ipmi: convert comma to semicolon (Tony Camuso) [1947126] - ipmi: msghandler: Suppress suspicious RCU usage warning (Tony Camuso) [1947126] - ipmi/watchdog: replace atomic_add() and atomic_sub() (Tony Camuso) [1947126] - char: ipmi: remove unneeded break (Tony Camuso) [1947126] - ipmi_si: Fix wrong return value in try_smi_init() (Tony Camuso) [1947126] - ipmi: msghandler: Fix a signedness bug (Tony Camuso) [1947126] - ipmi: add retry in try_get_dev_id() (Tony Camuso) [1947126] - ipmi: Clean up some printks (Tony Camuso) [1947126] - ipmi:msghandler: retry to get device id on an error (Tony Camuso) [1947126] - ipmi:sm: Print current state when the state is invalid (Tony Camuso) [1947126] - ipmi: Reset response handler when failing to send the command (Tony Camuso) [1947126] - ipmi: add a newline when printing parameter 'panic_op' by sysfs (Tony Camuso) [1947126] - cpuidle: Select polling interval based on a c-state with a longer target residency (Mark Langsdorf) [1922024] - cpuidle: big.LITTLE: enable driver only on Peach-Pit/Pi Chromebooks (Mark Langsdorf) [1922024] - cpuidle: record state entry rejection statistics (Mark Langsdorf) [1922024] - nitro_enclaves: Fix stale file descriptors on failed usercopy (Vitaly Kuznetsov) [1953717] - iavf: amend removal of MODULE_VERSION (Stefan Assmann) [1955738] - ixgbevf: Amend commit acf03026ec5a to include a version in module info. (Ken Cox) [1955764] - devlink: move flash end and begin to core devlink (Petr Oros) [1935671] - devlink: move request_firmware out of driver (Petr Oros) [1935671] - ice: add additional debug logging for firmware update (Petr Oros) [1935671] - ice: add support for flash update overwrite mask (Petr Oros) [1935671] - driver core: auxiliary bus: Fix calling stage for auxiliary bus init (Ivan Vecera) [1933820] - driver core: auxiliary bus: Fix auxiliary bus shutdown null auxdrv ptr (Ivan Vecera) [1933820] - driver core: auxiliary bus: minor coding style tweaks (Ivan Vecera) [1933820] - driver core: auxiliary bus: make remove function return void (Ivan Vecera) [1933820] - driver core: auxiliary bus: move slab.h from include file (Ivan Vecera) [1933820] - Add auxiliary bus support (Ivan Vecera) [1933820] - modpost: file2alias: go back to simple devtable lookup (Ivan Vecera) [1933820] - scsi: lpfc: Fix bad memory access during VPD DUMP mailbox command (Dick Kennedy) [1923762] - scsi: lpfc: Fix DMA virtual address ptr assignment in bsg (Dick Kennedy) [1923762] - scsi: lpfc: Fix illegal memory access on Abort IOCBs (Dick Kennedy) [1923762] - scsi: lpfc: Copyright updates for 12.8.0.9 patches (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.9 (Dick Kennedy) [1923762] - scsi: lpfc: Eliminate use of LPFC_DRIVER_NAME in lpfc_attr.c (Dick Kennedy) [1923762] - scsi: lpfc: Standardize discovery object logging format (Dick Kennedy) [1923762] - scsi: lpfc: Fix various trivial errors in comments and log messages (Dick Kennedy) [1923762] - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_hdw_queue attribute being ignored (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing FDMI registrations after Mgmt Svc login (Dick Kennedy) [1923762] - scsi: lpfc: Fix silent memory allocation failure in lpfc_sli4_bsg_link_diag_test() (Dick Kennedy) [1923762] - scsi: lpfc: Fix use-after-free on unused nodes after port swap (Dick Kennedy) [1923762] - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode (Dick Kennedy) [1923762] - scsi: lpfc: Fix lack of device removal on port swaps with PRLIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix NMI crash during rmmod due to circular hbalock dependency (Dick Kennedy) [1923762] - scsi: lpfc: Fix reference counting errors in lpfc_cmpl_els_rsp() (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO response (Dick Kennedy) [1923762] - scsi: lpfc: Fix rmmod crash due to bad ring pointers to abort_iotag (Dick Kennedy) [1923762] - scsi: lpfc: Fix gcc -Wstringop-overread warning (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix a typo (Dick Kennedy) [1923762] - scsi: lpfc: Fix kernel-doc formatting issue (Dick Kennedy) [1923762] - scsi: lpfc: Fix a few incorrectly named functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrectly documented function lpfc_debugfs_commonxripools_data() (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of misnamed functions (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect naming of __lpfc_update_fcf_record() (Dick Kennedy) [1923762] - scsi: lpfc: Fix formatting and misspelling issues (Dick Kennedy) [1923762] - scsi: lpfc: Fix a bunch of kernel-doc issues (Dick Kennedy) [1923762] - scsi: lpfc: Update copyrights for 12.8.0.7 and 12.8.0.8 changes (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.8 (Dick Kennedy) [1923762] - scsi: lpfc: Correct function header comments related to ndlp reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Reduce LOG_TRACE_EVENT logging for vports (Dick Kennedy) [1923762] - scsi: lpfc: Change wording of invalid pci reset log message (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash caused by switch reboot (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt state transition causing rmmod hang (Dick Kennedy) [1923762] - scsi: lpfc: Fix nodeinfo debugfs output (Dick Kennedy) [1923762] - scsi: lpfc: Fix ADISC handling that never frees nodes (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI ACC to be transmit after REG_LOGIN (Dick Kennedy) [1923762] - scsi: lpfc: Fix dropped FLOGI during pt2pt discovery recovery (Dick Kennedy) [1923762] - scsi: lpfc: Fix status returned in lpfc_els_retry() error exit path (Dick Kennedy) [1923762] - scsi: lpfc: Fix use after free in lpfc_els_free_iocb (Dick Kennedy) [1923762] - scsi: lpfc: Fix null pointer dereference in lpfc_prep_els_iocb() (Dick Kennedy) [1923762] - scsi: lpfc: Fix unnecessary null check in lpfc_release_scsi_buf (Dick Kennedy) [1923762] - scsi: lpfc: Fix pt2pt connection does not recover after LOGO (Dick Kennedy) [1923762] - scsi: lpfc: Fix lpfc_els_retry() possible null pointer dereference (Dick Kennedy) [1923762] - scsi: lpfc: Fix FLOGI failure due to accessing a freed node (Dick Kennedy) [1923762] - scsi: lpfc: Fix stale node accesses on stale RRQ request (Dick Kennedy) [1923762] - scsi: lpfc: Fix reftag generation sizing errors (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport indices in lpfc_find_vport_by_vpid() (Dick Kennedy) [1923762] - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe (Dick Kennedy) [1923762] - scsi: lpfc: Fix 'physical' typos (Dick Kennedy) [1923762] - scsi: lpfc: Fix ancient double free (Dick Kennedy) [1923762] - scsi: lpfc: Fix kerneldoc inconsistency in lpfc_sli4_dump_page_a0() (Dick Kennedy) [1923762] - scsi: lpfc: Add support for eh_should_retry_cmd() (Dick Kennedy) [1923762] - scsi: lpfc: Simplify bool comparison (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.7 (Dick Kennedy) [1923762] - scsi: lpfc: Enhancements to LOG_TRACE_EVENT for better readability (Dick Kennedy) [1923762] - scsi: lpfc: Implement health checking when aborting I/O (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when nvmet transport calls host_release (Dick Kennedy) [1923762] - scsi: lpfc: Fix vport create logging (Dick Kennedy) [1923762] - scsi: lpfc: Fix NVMe recovery after mailbox timeout (Dick Kennedy) [1923762] - scsi: lpfc: Fix target reset failing (Dick Kennedy) [1923762] - scsi: lpfc: Fix error log messages being logged following SCSI task mgnt (Dick Kennedy) [1923762] - scsi: lpfc: Fix FW reset action if I/Os are outstanding (Dick Kennedy) [1923762] - scsi: lpfc: Use the nvme-fc transport supplied timeout for LS requests (Dick Kennedy) [1923762] - scsi: lpfc: Fix crash when a fabric node is released prematurely (Dick Kennedy) [1923762] - scsi: lpfc: Refresh ndlp when a new PRLI is received in the PRLI issue state (Dick Kennedy) [1923762] - scsi: lpfc: Fix auto sli_mode and its effect on CONFIG_PORT for SLI3 (Dick Kennedy) [1923762] - scsi: lpfc: Fix PLOGI S_ID of 0 on pt2pt config (Dick Kennedy) [1923762] - scsi: lpfc: Fix fall-through warnings for Clang (Dick Kennedy) [1923762] - scsi: lpfc: Correct null ndlp reference on routine exit (Dick Kennedy) [1923762] - scsi: lpfc: Use generic power management (Dick Kennedy) [1923762] - scsi: lpfc: Fix variable 'vport' set but not used in lpfc_sli4_abts_err_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype for lpfc_nvmet_prep_abort_wqe() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but unused variables in lpfc_dev_loss_tmo_handler() (Dick Kennedy) [1923762] - scsi: lpfc: Fix set but not used warnings from Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Fix missing prototype warning for lpfc_fdmi_vendor_attr_mi() (Dick Kennedy) [1923762] - scsi: lpfc: Fix memory leak on lcb_context (Dick Kennedy) [1923762] - scsi: lpfc: Remove dead code on second !ndlp check (Dick Kennedy) [1923762] - scsi: lpfc: Fix pointer defereference before it is null checked issue (Dick Kennedy) [1923762] - scsi: lpfc: Update changed file copyrights for 2020 (Dick Kennedy) [1923762] - scsi: lpfc: Update lpfc version to 12.8.0.6 (Dick Kennedy) [1923762] - scsi: lpfc: Convert abort handling to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI I/O completions to SLI-3 and SLI-4 handlers (Dick Kennedy) [1923762] - scsi: lpfc: Convert SCSI path to use common I/O submission path (Dick Kennedy) [1923762] - scsi: lpfc: Enable common send_io interface for SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Enable common wqe_template support for both SCSI and NVMe (Dick Kennedy) [1923762] - scsi: lpfc: Refactor WQE structure definitions for common use (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV Fabric Node reference counting (Dick Kennedy) [1923762] - scsi: lpfc: Fix NPIV discovery and Fabric Node detection (Dick Kennedy) [1923762] - scsi: lpfc: Unsolicited ELS leaves node in incorrect state while dropping it (Dick Kennedy) [1923762] - scsi: lpfc: Remove ndlp when a PLOGI/ADISC/PRLI/REG_RPI ultimately fails (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port lock handling (Dick Kennedy) [1923762] - scsi: lpfc: Honor module parameter lpfc_use_adisc (Dick Kennedy) [1923762] - scsi: lpfc: Fix refcounting around SCSI and NVMe transport APIs (Dick Kennedy) [1923762] - scsi: lpfc: Fix removal of SCSI transport device get and put on dev structure (Dick Kennedy) [1923762] - scsi: lpfc: Rework locations of ndlp reference taking (Dick Kennedy) [1923762] - scsi: lpfc: Rework remote port ref counting and node freeing (Dick Kennedy) [1923762] - scsi: lpfc: remove ScsiResult macro (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvmet: Fix-up some formatting and doc-rot issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Fix some kernel-doc related issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_nvme: Remove unused variable 'phba' (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_bsg: Provide correct documentation for a bunch of functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_debugfs: Fix a couple of function documentation issues (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Fix-up a bunch of kernel-doc misdemeanours (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_attr: Demote kernel-doc format for redefined functions (Dick Kennedy) [1923762] - scsi: lpfc: lpfc_scsi: Fix a whole host of kernel-doc issues (Dick Kennedy) [1923762] - block: return -EBUSY when there are open partitions in blkdev_reread_part (Ming Lei) [1936800] - block: Try to handle busy underlying device on discard (Ming Lei) [1936800] - md: check for NULL ->meta_bdev before calling bdev_read_only (Ming Lei) [1936800] - blk-settings: align max_sectors on "logical_block_size" boundary (Ming Lei) [1936800] - nbd: handle device refs for DESTROY_ON_DISCONNECT properly (Ming Lei) [1936800] - kyber: introduce kyber_depth_updated() (Ming Lei) [1936800] - loop: fix I/O error on fsync() in detached loop devices (Ming Lei) [1936800] - block: fix potential IO hang when turning off io_poll (Ming Lei) [1936800] - bfq: Use only idle IO periods for think time calculations (Ming Lei) [1936800] - bfq: Use 'ttime' local variable (Ming Lei) [1936800] - bfq: Avoid false bfq queue merging (Ming Lei) [1936800] - bfq: bfq_check_waker() should be static (Ming Lei) [1936800] - block, bfq: make waker-queue detection more robust (Ming Lei) [1936800] - block, bfq: save also injection state on queue merging (Ming Lei) [1936800] - block, bfq: save also weight-raised service on queue merging (Ming Lei) [1936800] - block, bfq: fix switch back from soft-rt weitgh-raising (Ming Lei) [1936800] - block, bfq: re-evaluate convenience of I/O plugging on rq arrivals (Ming Lei) [1936800] - block, bfq: replace mechanism for evaluating I/O intensity (Ming Lei) [1936800] - block: set .bi_max_vecs as actual allocated vector number (Ming Lei) [1936800] - block: don't allocate inline bvecs if this bioset needn't bvecs (Ming Lei) [1936800] - block: don't pass BIOSET_NEED_BVECS for q->bio_split (Ming Lei) [1936800] - block: manage bio slab cache by xarray (Ming Lei) [1936800] - block, bfq: do not expire a queue when it is the only busy one (Ming Lei) [1936800] - block, bfq: avoid spurious switches to soft_rt of interactive queues (Ming Lei) [1936800] - block, bfq: do not raise non-default weights (Ming Lei) [1936800] - block, bfq: increase time window for waker detection (Ming Lei) [1936800] - block, bfq: use half slice_idle as a threshold to check short ttime (Ming Lei) [1936800] - brd: remove the end of device check in brd_do_bvec (Ming Lei) [1936800] - block: propagate BLKROSET on the whole device to all partitions (Ming Lei) [1936800] - block: add a hard-readonly flag to struct gendisk (Ming Lei) [1936800] - block: remove the NULL bdev check in bdev_read_only (Ming Lei) [1936800] - dm: use bdev_read_only to check if a device is read-only (Ming Lei) [1936800] - block: reopen the device in blkdev_reread_part (Ming Lei) [1936800] - block, bfq: set next_rq to waker_bfqq->next_rq in waker injection (Ming Lei) [1936800] - Revert "block: simplify set_init_blocksize" to regain lost performance (Ming Lei) [1936800] - bfq-iosched: Revert "bfq: Fix computation of shallow depth" (Ming Lei) [1936800] - blk-mq-debugfs: Add decode for BLK_MQ_F_TAG_HCTX_SHARED (Ming Lei) [1936800] - bfq: Fix computation of shallow depth (Ming Lei) [1936800] - block: rsxx: select CONFIG_CRC32 (Ming Lei) [1936800] - block: add debugfs stanza for QUEUE_FLAG_NOWAIT (Ming Lei) [1936800] - blk-mq: Don't complete on a remote CPU in force threaded mode (Ming Lei) [1936800] - blk-mq: Remove 'running from the wrong CPU' warning (Ming Lei) [1936800] - block: disable iopoll for split bio (Ming Lei) [1936800] - block: Improve blk_revalidate_disk_zones() checks (Ming Lei) [1936800] - sbitmap: replace CAS with atomic and (Ming Lei) [1936800] - sbitmap: remove swap_lock (Ming Lei) [1936800] - sbitmap: optimise sbitmap_deferred_clear() (Ming Lei) [1936800] - blk-mq: skip hybrid polling if iopoll doesn't spin (Ming Lei) [1936800] - blktrace: fix up a kerneldoc comment (Ming Lei) [1936800] - block: remove the unused block_sleeprq tracepoint (Ming Lei) [1936800] - blk-throttle: don't check whether or not lower limit is valid if CONFIG_BLK_DEV_THROTTLING_LOW is off (Ming Lei) [1936800] - block: fix inflight statistics of part0 (Ming Lei) [1936800] - block: optimise for_each_bvec() advance (Ming Lei) [1936800] - block: opencode devcgroup_inode_permission (Ming Lei) [1936800] - block: move bdput() to the callers of __blkdev_get (Ming Lei) [1936800] - block: refactor blkdev_get (Ming Lei) [1936800] - block: refactor __blkdev_put (Ming Lei) [1936800] - block: switch bdgrab to use igrab (Ming Lei) [1936800] - block: change the hash used for looking up block devices (Ming Lei) [1936800] - block: use put_device in put_disk (Ming Lei) [1936800] - block: use disk_part_iter_exit in disk_part_iter_next (Ming Lei) [1936800] - block: add a bdev_kobj helper (Ming Lei) [1936800] - block: remove a superflous check in blkpg_do_ioctl (Ming Lei) [1936800] - block: remove a duplicate __disk_get_part prototype (Ming Lei) [1936800] - loop: do not call set_blocksize (Ming Lei) [1936800] - zram: do not call set_blocksize (Ming Lei) [1936800] - block: wbt: Remove unnecessary invoking of wbt_update_limits in wbt_init (Ming Lei) [1936800] - virtio-blk: remove a spurious call to revalidate_disk_size (Ming Lei) [1936800] - md: remove a spurious call to revalidate_disk_size in update_size (Ming Lei) [1936800] - aoe: don't call set_capacity from irq context (Ming Lei) [1936800] - nbd: validate the block size in nbd_set_size (Ming Lei) [1936800] - nbd: refactor size updates (Ming Lei) [1936800] - nbd: move the task_recv check into nbd_size_update (Ming Lei) [1936800] - nbd: remove the call to set_blocksize (Ming Lei) [1936800] - loop: let set_capacity_revalidate_and_notify update the bdev size (Ming Lei) [1936800] - block: remove the call to __invalidate_device in check_disk_size_change (Ming Lei) [1936800] - block: fix the kerneldoc comment for __register_blkdev (Ming Lei) [1936800] - block: switch gendisk lookup to a simple xarray (Ming Lei) [1936800] - ide: switch to __register_blkdev for command set probing (Ming Lei) [1936800] - md: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - loop: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - brd: use __register_blkdev to allocate devices on demand (Ming Lei) [1936800] - sd: use __register_blkdev to avoid a modprobe for an unregistered dev_t (Ming Lei) [1936800] - swim: don't call blk_register_region (Ming Lei) [1936800] - ide: remove ide_{,un}register_region (Ming Lei) [1936800] - block: add an optional probe callback to major_names (Ming Lei) [1936800] - block: rework requesting modules for unclaimed devices (Ming Lei) [1936800] - block: split block_class_lock (Ming Lei) [1936800] - block: open code kobj_map into in block/genhd.c (Ming Lei) [1936800] - block: cleanup del_gendisk a bit (Ming Lei) [1936800] - loop: use set_disk_ro (Ming Lei) [1936800] - dasd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - md: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - rbd: implement ->set_read_only to hook into BLKROSET processing (Ming Lei) [1936800] - block: add a new set_read_only method (Ming Lei) [1936800] - blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats (Ming Lei) [1936800] - blk-cgroup: Pre-allocate tree node on blkg_conf_prep (Ming Lei) [1936800] - blk-cgroup: Fix memleak on error path (Ming Lei) [1936800] - blk-mq: remove the calling of local_memory_node() (Ming Lei) [1936800] - zram: Fix __zram_bvec_{read,write}() locking order (Ming Lei) [1936800] - skd_main: remove unused including (Ming Lei) [1936800] - sgl_alloc_order: fix memory leak (Ming Lei) [1936800] - block: fix uapi blkzoned.h comments (Ming Lei) [1936800] - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue (Ming Lei) [1936800] - blk-mq: get rid of the dead flush handle code path (Ming Lei) [1936800] - block: get rid of unnecessary local variable (Ming Lei) [1936800] - block: fix comment and add lockdep assert (Ming Lei) [1936800] - blk-mq: use helper function to test hw stopped (Ming Lei) [1936800] - block: use helper function to test queue register (Ming Lei) [1936800] - block: remove redundant mq check (Ming Lei) [1936800] - block: invoke blk_mq_exit_sched no matter whether have .exit_sched (Ming Lei) [1936800] - block: ratelimit handle_bad_sector() message (Ming Lei) [1936800] - blk-throttle: Re-use the throtl_set_slice_end() (Ming Lei) [1936800] - blk-throttle: Open code __throtl_de/enqueue_tg() (Ming Lei) [1936800] - blk-throttle: Move service tree validation out of the throtl_rb_first() (Ming Lei) [1936800] - blk-throttle: Move the list operation after list validation (Ming Lei) [1936800] - blk-throttle: Fix IO hang for a corner case (Ming Lei) [1936800] - blk-throttle: Avoid tracking latency if low limit is invalid (Ming Lei) [1936800] - blk-throttle: Avoid getting the current time if tg->last_finish_time is 0 (Ming Lei) [1936800] - blk-throttle: Remove a meaningless parameter for throtl_downgrade_state() (Ming Lei) [1936800] - block: Remove redundant 'return' statement (Ming Lei) [1936800] - block: Consider only dispatched requests for inflight statistic (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_bio export (Ming Lei) [1936800] - block: remove the unused blk_integrity_merge_rq export (Ming Lei) [1936800] - blk-mq: add cond_resched() in __blk_mq_alloc_rq_maps() (Ming Lei) [1936800] - vsprintf: use bd_partno in bdev_name (Ming Lei) [1936800] - block: use bd_partno in bdevname (Ming Lei) [1936800] - target/iblock: fix holder printing in iblock_show_configfs_dev_params (Ming Lei) [1936800] - drbd: don't set ->bd_contains (Ming Lei) [1936800] - drbd: don't detour through bd_contains for the gendisk (Ming Lei) [1936800] - block: add a bdev_is_partition helper (Ming Lei) [1936800] - bdi: remove BDI_CAP_CGROUP_WRITEBACK (Ming Lei) [1936800] - block: lift setting the readahead size into the block layer (Ming Lei) [1936800] - bdi: initialize ->ra_pages and ->io_pages in bdi_init (Ming Lei) [1936800] - block: ensure bdi->io_pages is always initialized (Ming Lei) [1936800] - aoe: set an optimal I/O size (Ming Lei) [1936800] - drbd: remove dead code in device_to_statistics (Ming Lei) [1936800] - raw: don't keep unopened block device around (Ming Lei) [1936800] - zram: cleanup backing_dev_store (Ming Lei) [1936800] - zram: fix double free backing device (Ming Lei) [1936800] - pktcdvd: use blkdev_get_by_dev instead of open coding it (Ming Lei) [1936800] - pktcdvd: remove the if 0'ed pkt_start_recovery function (Ming Lei) [1936800] - block: cleanup blkdev_bszset (Ming Lei) [1936800] - block: move the NEED_PART_SCAN flag to struct gendisk (Ming Lei) [1936800] - block: drop double zeroing (Ming Lei) [1936800] - blk-throttle: Avoid checking bps/iops limitation if bps or iops is unlimited (Ming Lei) [1936800] - blk-throttle: Avoid calculating bps/iops limitation repeatedly (Ming Lei) [1936800] - blk-throttle: Define readable macros instead of static variables (Ming Lei) [1936800] - blk-throttle: Use readable READ/WRITE macros (Ming Lei) [1936800] - blk-throttle: Fix some comments' typos (Ming Lei) [1936800] - block: introduce part_[begin|end]_io_acct (Ming Lei) [1936800] - blkcg: add plugging support for punt bio (Ming Lei) [1936800] - block: remove check_disk_change (Ming Lei) [1936800] - sr: simplify sr_block_revalidate_disk (Ming Lei) [1936800] - sr: use bdev_check_media_change (Ming Lei) [1936800] - sd: use bdev_check_media_change (Ming Lei) [1936800] - md: use bdev_check_media_change (Ming Lei) [1936800] - gdrom: use bdev_check_media_change (Ming Lei) [1936800] - paride/pcd: use bdev_check_media_change (Ming Lei) [1936800] - xsysace: simplify media change handling (Ming Lei) [1936800] - xsysace: use bdev_check_media_change (Ming Lei) [1936800] - swim3: use bdev_check_media_changed (Ming Lei) [1936800] - swim: simplify media change handling (Ming Lei) [1936800] - swim: use bdev_check_media_change (Ming Lei) [1936800] - ataflop: use bdev_check_media_change (Ming Lei) [1936800] - amiflop: use bdev_check_media_change (Ming Lei) [1936800] - block: add a bdev_check_media_change helper (Ming Lei) [1936800] - block: Remove unused blk_mq_sched_free_hctx_data() (Ming Lei) [1936800] - block: Do not discard buffers under a mounted filesystem (Ming Lei) [1936800] - fs: Don't invalidate page buffers in block_write_full_page() (Ming Lei) [1936800] - block: remove revalidate_disk() (Ming Lei) [1936800] - nvdimm: simplify revalidate_disk handling (Ming Lei) [1936800] - sd: open code revalidate_disk (Ming Lei) [1936800] - nvme: opencode revalidate_disk in nvme_validate_ns (Ming Lei) [1936800] - block: use revalidate_disk_size in set_capacity_revalidate_and_notify (Ming Lei) [1936800] - block: add a new revalidate_disk_size helper (Ming Lei) [1936800] - block: rename bd_invalidated (Ming Lei) [1936800] - block: don't clear bd_invalidated in check_disk_size_change (Ming Lei) [1936800] - block: better deal with the delayed not supported case in blk_cloned_rq_check_limits (Ming Lei) [1936800] - block: Return blk_status_t instead of errno codes (Ming Lei) [1936800] - block: grant IOPRIO_CLASS_RT to CAP_SYS_NICE (Ming Lei) [1936800] - block: remove the unused q argument to part_in_flight and part_in_flight_rw (Ming Lei) [1936800] - block: remove the disk argument to delete_partition (Ming Lei) [1936800] - block: move the devcgroup_inode_permission call to blkdev_get (Ming Lei) [1936800] - blk-mq: use BLK_MQ_NO_TAG for no tag (Ming Lei) [1936800] - block: Move blk_mq_bio_list_merge() into blk-merge.c (Ming Lei) [1936800] - block: Move bio merge related functions into blk-merge.c (Ming Lei) [1936800] - blk-wbt: Remove obsolete multiqueue I/O scheduling comment (Ming Lei) [1936800] - raw: deprecate the raw driver (Ming Lei) [1936800] - nvme: don't call revalidate_disk from nvme_set_queue_dying (Ming Lei) [1936800] - block: fix locking for struct block_device size updates (Ming Lei) [1936800] - block: replace bd_set_size with bd_set_nr_sectors (Ming Lei) [1936800] - block: Make request_queue.rpm_status an enum (Ming Lei) [1936800] - mmc: remove the call to check_disk_change (Ming Lei) [1936800] - block: integrate bd_start_claiming into __blkdev_get (Ming Lei) [1936800] - block: use bd_prepare_to_claim directly in the loop driver (Ming Lei) [1936800] - block: refactor bd_start_claiming (Ming Lei) [1936800] - block: simplify the restart case in __blkdev_get (Ming Lei) [1936800] - block: simplify set_init_blocksize (Ming Lei) [1936800] - block: remove flush_disk (Ming Lei) [1936800] - block: move block-related definitions out of fs.h (Ming Lei) [1936800] - xen-blkfront.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1936800]- redhat/configs: Add CONFIG_PINCTRL_EMMITSBURG (David Arcari) [1959506] - redhat/configs: Remove CONFIG_EMMITSBURG (David Arcari) [1959506] - fuse: fix write deadlock (Miklos Szeredi) [1904597] - sched/debug: Fix cgroup_path[] serialization (Waiman Long) [1954363] - KVM: x86/xen: Take srcu lock when accessing kvm_memslots() (Paolo Bonzini) [1945742] - KVM: SVM: Allocate SEV command structures on local stack (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for INIT command (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack and common buffer for status commands (Paolo Bonzini) [1945742] - crypto: ccp: Use the stack for small SEV command buffers (Paolo Bonzini) [1945742] - crypto: ccp: Play nice with vmalloc'd memory for SEV command structs (Paolo Bonzini) [1945742] - crypto: ccp: Reject SEV commands with mismatching command buffer (Paolo Bonzini) [1945742] - crypto: ccp: Detect and reject "invalid" addresses destined for PSP (Paolo Bonzini) [1945742] - crypto: ccp: Free SEV device if SEV init fails (Paolo Bonzini) [1945742] - crypto: ccp - Fix sparse warnings in sev-dev (Paolo Bonzini) [1945742] - drivers/crypto/ccp/sev-dev.c: get rid of pointless access_ok() (Paolo Bonzini) [1945742] - crypto: ccp - Add support for SEV-ES to the PSP driver (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_RECEIVE_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_RECEIVE_START command (Paolo Bonzini) [1945742] - KVM: SVM: Add support for KVM_SEV_SEND_CANCEL command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV_SEND_FINISH command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEND_UPDATE_DATA command (Paolo Bonzini) [1945742] - KVM: SVM: Add KVM_SEV SEND_START command (Paolo Bonzini) [1945742] - KVM: Boost vCPU candidate in user mode which is delivering interrupt (Paolo Bonzini) [1945742] - nSVM: Check addresses of MSR and IO permission maps (Paolo Bonzini) [1945742] - KVM: SVM: Define actual size of IOPM and MSRPM tables (Paolo Bonzini) [1945742] - KVM: vmx: add mismatched size assertions in vmcs_check32() (Paolo Bonzini) [1945742] - KVM: Add proper lockdep assertion in I/O bus unregister (Paolo Bonzini) [1945742] - KVM: Stop looking for coalesced MMIO zones if the bus is destroyed (Paolo Bonzini) [1945742] - KVM: Destroy I/O bus devices on unregister failure _after_ sync'ing SRCU (Paolo Bonzini) [1945742] - KVM: SVM: Enhance and clean up the vmcb tracking comment in pre_svm_run() (Paolo Bonzini) [1945742] - KVM: SVM: Add a comment to clarify what vcpu_svm.vmcb points at (Paolo Bonzini) [1945742] - KVM: SVM: Drop vcpu_svm.vmcb_pa (Paolo Bonzini) [1945742] - KVM: SVM: Don't set current_vmcb->cpu when switching vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Make sure GHCB is mapped before updating (Paolo Bonzini) [1945742] - KVM: X86: Do not yield to self (Paolo Bonzini) [1945742] - KVM: X86: Count attempted/successful directed yield (Paolo Bonzini) [1945742] - KVM: x86/mmu: Protect the tdp_mmu_roots list with RCU (Paolo Bonzini) [1945742] - KVM: x86/mmu: handle cmpxchg failure in kvm_tdp_mmu_get_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make TDP MMU root refcount atomic (Paolo Bonzini) [1945742] - KVM: x86: implement KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Refactor yield safe root iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Merge TDP MMU put and free root (Paolo Bonzini) [1945742] - KVM: x86/mmu: use tdp_mmu_free_sp to free roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move kvm_mmu_(get|put)_root to TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Re-add const qualifier in kvm_tdp_mmu_zap_collapsible_sptes (Paolo Bonzini) [1945742] - KVM: constify kvm_arch_flush_remote_tlbs_memslot (Paolo Bonzini) [1945742] - KVM: Explicitly use GFP_KERNEL_ACCOUNT for 'struct kvm_vcpu' allocations (Paolo Bonzini) [1945742] - KVM: MMU: protect TDP MMU pages only down to required level (Paolo Bonzini) [1945742] - KVM: introduce KVM_CAP_SET_GUEST_DEBUG2 (Paolo Bonzini) [1945742] - KVM: x86: pending exceptions must not be blocked by an injected event (Paolo Bonzini) [1945742] - KVM: nSVM: call nested_svm_load_cr3 on nested state load (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should include the autoload/autostore MSR lists (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should show the effective EFER (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should consider only the load controls of EFER/PAT (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not conflate EFER and PAT presence in VMCS (Paolo Bonzini) [1945742] - KVM: x86: dump_vmcs should not assume GUEST_IA32_EFER is valid (Paolo Bonzini) [1945742] - KVM: nSVM: improve SYSENTER emulation on AMD (Paolo Bonzini) [1945742] - KVM: x86: add guest_cpuid_is_intel (Paolo Bonzini) [1945742] - KVM: x86: Account a variety of miscellaneous allocations (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow SEV/SEV-ES initialization after vCPUs are created (Paolo Bonzini) [1945742] - KVM: SVM: Do not set sev->es_active until KVM_SEV_ES_INIT completes (Paolo Bonzini) [1945742] - KVM: SVM: Use online_vcpus, not created_vcpus, to iterate over vCPUs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Simplify code for aging SPTEs in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious clearing of dirty bit from TDP MMU SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use leaf-only loop for walking TDP SPTEs when changing SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to TDP MMU root walkers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass address space ID to __kvm_tdp_mmu_zap_gfn_range() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes across address spaces for gfn range zap (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move flushing for "slot" handlers to caller for legacy MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Coalesce TDP MMU TLB flushes when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid reading from MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: nSVM: If VMRUN is single-stepped, queue the #DB intercept in nested_svm_vmexit() (Paolo Bonzini) [1945742] - KVM: MMU: load PDPTRs outside mmu_lock (Paolo Bonzini) [1945742] - KVM: SVM: ensure that EFER.SVME is set when running nested guest or on nested vmexit (Paolo Bonzini) [1945742] - KVM: SVM: load control fields from VMCB12 before checking them (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range zap (Paolo Bonzini) [1945742] - KVM: make: Fix out-of-source module builds (Paolo Bonzini) [1945742] - KVM: x86/vPMU: Forbid writing to MSR_F15H_PERF MSRs when guest doesn't have X86_FEATURE_PERFCTR_CORE (Paolo Bonzini) [1945742] - KVM: x86: remove unused declaration of kvm_write_tsc() (Paolo Bonzini) [1945742] - KVM: clean up the unused argument (Paolo Bonzini) [1945742] - x86/kvm: Fix broken irq restoration in kvm_wait (Paolo Bonzini) [1945742] - KVM: X86: Fix missing local pCPU when executing wbinvd on all dirty pCPUs (Paolo Bonzini) [1945742] - KVM: x86: Protect userspace MSR filter with SRCU, and set atomically-ish (Paolo Bonzini) [1945742] - KVM: x86/mmu: Store the address space ID in the TDP iterator (Paolo Bonzini) [1945742] - KVM: x86/mmu: Factor out tdp_iter_return_to_root (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage when atomically zapping SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix RCU usage in handle_removed_tdp_mmu_page (Paolo Bonzini) [1945742] - KVM: x86/mmu: Mark the PAE roots as decrypted for shadow paging (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use '0' as the one and only value for an invalid PAE root (Paolo Bonzini) [1945742] - KVM: VMX: Track root HPA instead of EPTP for paravirt Hyper-V TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Skip additional Hyper-V TLB EPTP flushes if one fails (Paolo Bonzini) [1945742] - KVM: VMX: Define Hyper-V paravirt TLB flush fields iff Hyper-V is enabled (Paolo Bonzini) [1945742] - KVM: VMX: Explicitly check for hv_remote_flush_tlb when loading pgd (Paolo Bonzini) [1945742] - KVM: VMX: Don't invalidate hv_tlb_eptp if the new EPTP matches (Paolo Bonzini) [1945742] - KVM: VMX: Invalidate hv_tlb_eptp to denote an EPTP mismatch (Paolo Bonzini) [1945742] - KVM: VMX: Do Hyper-V TLB flush iff vCPU's EPTP hasn't been flushed (Paolo Bonzini) [1945742] - KVM: VMX: Fold Hyper-V EPTP checking into it's only caller (Paolo Bonzini) [1945742] - KVM: VMX: Stash kvm_vmx in a local variable for Hyper-V paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: VMX: Track common EPTP for Hyper-V's paravirt TLB flush (Paolo Bonzini) [1945742] - KVM: x86: Get active PCID only when writing a CR3 value (Paolo Bonzini) [1945742] - KVM/SVM: Move vmenter.S exception fixups out of line (Paolo Bonzini) [1945742] - KVM: x86/mmu: Dump reserved bits if they're detected on non-MMIO SPTE (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use low available bits for removed SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use is_removed_spte() instead of open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86/mmu: Tweak auditing WARN for A/D bits to !PRESENT (was MMIO) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use a dedicated bit to track shadow/MMU-present SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use high bits for host/mmu writable masks for EPT SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make Host-writable and MMU-writable bit locations dynamic (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move logic for setting SPTE masks for EPT into the MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Co-locate code for setting various SPTE masks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Move initial kvm_mmu_set_mask_ptes() call into MMU proper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Document dependency bewteen TDP A/D type and saved bits (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use MMIO SPTE bits 53 and 52 for the MMIO generation (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename and document A/D scheme for TDP SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add module param to disable MMIO caching (for testing) (Paolo Bonzini) [1945742] - KVM: x86/mmu: Stop using software available bits to denote MMIO SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Rename 'mask' to 'spte' in MMIO SPTE helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Drop redundant trace_kvm_mmu_set_spte() in the TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Handle MMIO SPTEs directly in mmu_set_spte() (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't install bogus MMIO SPTEs if MMIO caching is disabled (Paolo Bonzini) [1945742] - KVM: x86/mmu: Retry page faults that hit an invalid memslot (Paolo Bonzini) [1945742] - KVM: x86/mmu: Disable MMIO caching if MMIO value collides with L1TF (Paolo Bonzini) [1945742] - KVM: x86/mmu: Bail from fast_page_fault() if SPTE is not shadow-present (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check for shadow-present SPTE before querying A/D status (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add convenience wrapper for acting on single hva in TDP MMU (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add typedefs for rmap/iter handlers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use 'end' param in TDP MMU's test_age_gfn() (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN if TDP MMU's set_tdp_spte() sees multiple GFNs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove spurious TLB flush from TDP MMU's change_pte() hook (Paolo Bonzini) [1945742] - KVM: x86: mmu: initialize fault.async_page_fault in walk_addr_generic (Paolo Bonzini) [1945742] - KVM: x86: determine if an exception has an error code only when injecting it. (Paolo Bonzini) [1945742] - KVM: nSVM: Optimize vmcb12 to vmcb02 save area copies (Paolo Bonzini) [1945742] - KVM: SVM: Add support for Virtual SPEC_CTRL (Paolo Bonzini) [1945742] - x86/cpufeatures: Add the Virtual SPEC_CTRL feature (Paolo Bonzini) [1945742] - KVM: nSVM: always use vmcb01 to for vmsave/vmload of guest state (Paolo Bonzini) [1945742] - KVM: SVM: move VMLOAD/VMSAVE to C code (Paolo Bonzini) [1945742] - KVM: SVM: Skip intercepted PAUSE instructions after emulation (Paolo Bonzini) [1945742] - KVM: SVM: Don't manually emulate RDPMC if nrips=0 (Paolo Bonzini) [1945742] - KVM: x86: Move RDPMC emulation to common code (Paolo Bonzini) [1945742] - KVM: x86: Move trivial instruction-based exit handlers to common code (Paolo Bonzini) [1945742] - KVM: x86: Move XSETBV emulation to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add VMLOAD/VMSAVE helper to deduplicate code (Paolo Bonzini) [1945742] - KVM: nSVM: Add helper to synthesize nested VM-Exit without collateral (Paolo Bonzini) [1945742] - KVM: x86: Handle triple fault in L2 without killing L1 (Paolo Bonzini) [1945742] - KVM: SVM: Pass struct kvm_vcpu to exit handlers (and many, many other places) (Paolo Bonzini) [1945742] - KVM: SVM: merge update_cr0_intercept into svm_set_cr0 (Paolo Bonzini) [1945742] - KVM: nSVM: Trace VM-Enter consistency check failures (Paolo Bonzini) [1945742] - KVM: x86: Move nVMX's consistency check macro to common code (Paolo Bonzini) [1945742] - KVM: nSVM: Add missing checks for reserved bits to svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: only copy L1 non-VMLOAD/VMSAVE data in svm_set_nested_state() (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB02 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not mark all VMCB01 fields dirty on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: do not copy vmcb01->control blindly to vmcb02->control (Paolo Bonzini) [1945742] - KVM: nSVM: rename functions and variables according to vmcbXY nomenclature (Paolo Bonzini) [1945742] - KVM: nSVM: Track the ASID generation of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: nSVM: Track the physical cpu of the vmcb vmrun through the vmcb (Paolo Bonzini) [1945742] - KVM: SVM: Use a separate vmcb for the nested L2 guest (Paolo Bonzini) [1945742] - KVM: nSVM: Set the shadow root level to the TDP level for nested NPT (Paolo Bonzini) [1945742] - KVM: SVM: Don't strip the C-bit from CR2 on #PF interception (Paolo Bonzini) [1945742] - KVM: x86/mmu: WARN on NULL pae_root or lm_root, or bad shadow root level (Paolo Bonzini) [1945742] - KVM: x86/mmu: Sync roots after MMU load iff load as successful (Paolo Bonzini) [1945742] - KVM: x86/mmu: Unexport MMU load/unload functions (Paolo Bonzini) [1945742] - KVM: x86: Defer the MMU unload to the normal path on an global INVPCID (Paolo Bonzini) [1945742] - KVM: nVMX: Defer the MMU reload to the normal path on an EPTP switch (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set the C-bit in the PDPTRs and LM pseudo-PDPTRs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix and unconditionally enable WARNs to detect PAE leaks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Check PDPTRs before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Ensure MMU pages are available when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate pae_root and lm_root pages in dedicated helper (Paolo Bonzini) [1945742] - KVM: x86/mmu: Allocate the lm_root before allocating PAE roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Capture 'mmu' in a local variable when allocating roots (Paolo Bonzini) [1945742] - KVM: x86/mmu: Alloc page for PDPTEs when shadowing 32-bit NPT with 64-bit (Paolo Bonzini) [1945742] - KVM: x86: to track if L1 is running L2 VM (Paolo Bonzini) [1945742] - KVM: LAPIC: Advancing the timer expiration on guest initiated write (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip !MMU-present SPTEs when removing SP in exclusive mode (Paolo Bonzini) [1945742] - KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged (Paolo Bonzini) [1945742] - kvm: x86: use NULL instead of using plain integer as pointer (Paolo Bonzini) [1945742] - KVM: SVM: Connect 'npt' module param to KVM's internal 'npt_enabled' (Paolo Bonzini) [1945742] - KVM: x86: Ensure deadline timer has truly expired before posting its IRQ (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix return code when clearing vcpu_info and vcpu_time_info (Paolo Bonzini) [1945742] - KVM: x86/mmu: Set SPTE_AD_WRPROT_ONLY_MASK if and only if PML is enabled (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Fix Hyper-V context null-ptr-deref (Paolo Bonzini) [1945742] - KVM: SVM: Fix nested VM-Exit on #GP interception handling (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Fix dummy check if lbr_desc->event is created (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consider the hva in mmu_notifier retry (Paolo Bonzini) [1945742] - kernel.h: split out min()/max() et al. helpers (Paolo Bonzini) [1945742] - KVM: x86/mmu: Skip mmu_notifier check when handling MMIO page fault (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove a variety of unnecessary exports (Paolo Bonzini) [1945742] - KVM: x86: Fold "write-protect large" use case into generic write-protect (Paolo Bonzini) [1945742] - KVM: x86/mmu: Don't set dirty bits when disabling dirty logging w/ PML (Paolo Bonzini) [1945742] - KVM: VMX: Dynamically enable/disable PML based on memslot dirty logging (Paolo Bonzini) [1945742] - KVM: x86: Further clarify the logic and comments for toggling log dirty (Paolo Bonzini) [1945742] - KVM: x86: Move MMU's PML logic to common code (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make dirty log size hook (PML) a value, not a function (Paolo Bonzini) [1945742] - KVM: x86/mmu: Expand on the comment in kvm_vcpu_ad_need_write_protect() (Paolo Bonzini) [1945742] - KVM: nVMX: Disable PML in hardware when running L2 (Paolo Bonzini) [1945742] - KVM: x86/mmu: Consult max mapping level when zapping collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86/mmu: Pass the memslot to the rmap callbacks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Split out max mapping level calculation to helper (Paolo Bonzini) [1945742] - KVM: nVMX: no need to undo inject_page_fault change on nested vmexit (Paolo Bonzini) [1945742] - KVM: nSVM: move nested vmrun tracepoint to enter_svm_guest_mode (Paolo Bonzini) [1945742] - KVM: VMX: read idt_vectoring_info a bit earlier (Paolo Bonzini) [1945742] - KVM: VMX: Allow INVPCID in guest without PCID (Paolo Bonzini) [1945742] - KVM: x86: Advertise INVPCID by default (Paolo Bonzini) [1945742] - KVM: SVM: Intercept INVPCID when it's disabled to inject #UD (Paolo Bonzini) [1945742] - KVM: x86/mmu: Make HVA handler retpoline-friendly (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_dr to callers (Paolo Bonzini) [1945742] - KVM: x86: reading DR cannot fail (Paolo Bonzini) [1945742] - KVM: SVM: Remove an unnecessary forward declaration (Paolo Bonzini) [1945742] - KVM: SVM: Move AVIC vCPU kicking snippet to helper function (Paolo Bonzini) [1945742] - KVM: x86: Restore all 64 bits of DR6 and DR7 during RSM on x86-64 (Paolo Bonzini) [1945742] - KVM: x86: Remove misleading DR6/DR7 adjustments from RSM emulation (Paolo Bonzini) [1945742] - KVM: x86/xen: Use hva_t for holding hypercall page address (Paolo Bonzini) [1945742] - KVM: x86/xen: Remove extra unlock in kvm_xen_hvm_set_attr() (Paolo Bonzini) [1945742] - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped() (Paolo Bonzini) [1945742] - KVM: x86: Add helper to consolidate "raw" reserved GPA mask calculations (Paolo Bonzini) [1945742] - KVM: selftests: Always run vCPU thread with blocked SIG_IPI (Paolo Bonzini) [1945742] - KVM: selftests: Sync data verify of dirty logging with guest sync (Paolo Bonzini) [1945742] - KVM: selftests: Add a test for kvm page table code (Paolo Bonzini) [1945742] - KVM: selftests: Adapt vm_userspace_mem_region_add to new helpers (Paolo Bonzini) [1945742] - KVM: selftests: List all hugetlb src types specified with page sizes (Paolo Bonzini) [1945742] - tools/headers: sync headers of asm-generic/hugetlb_encode.h (Paolo Bonzini) [1945742] - tools include uapi: Update linux/mmap.h copy (Paolo Bonzini) [1945742] - tools UAPI: Update copy of linux/mman.h from the kernel sources (Paolo Bonzini) [1945742] - mm/hugetlb: add mmap() encodings for 32MB and 512MB page sizes (Paolo Bonzini) [1945742] - RHEL: Add #defines for 16k hugepages (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system default hugetlb page size (Paolo Bonzini) [1945742] - KVM: selftests: Add a helper to get system configured THP page size (Paolo Bonzini) [1945742] - KVM: selftests: Make a generic helper to get vm guest mode strings (Paolo Bonzini) [1945742] - KVM: selftests: Print the errno besides error-string in TEST_ASSERT (Paolo Bonzini) [1945742] - KVM: selftests: remove redundant semi-colon (Paolo Bonzini) [1945742] - selftests: kvm: Check that TSC page value is small after KVM_SET_CLOCK(0) (Paolo Bonzini) [1945742] - KVM: x86: Prevent 'hv_clock->system_time' from going negative in kvm_guest_time_update() (Paolo Bonzini) [1945742] - selftests: kvm: make hardware_disable_test less verbose (Paolo Bonzini) [1945742] - selftests: kvm: add set_boot_cpu_id test (Paolo Bonzini) [1945742] - selftests: kvm: add _vm_ioctl (Paolo Bonzini) [1945742] - selftests: kvm: add get_msr_index_features (Paolo Bonzini) [1945742] - KVM: x86/xen: Add support for vCPU runstate information (Paolo Bonzini) [1945742] - RHEL: configs: do not enable CONFIG_KVM_XEN (Paolo Bonzini) [1945742] - KVM: x86: allow compiling out the Xen hypercall interface (Paolo Bonzini) [1945742] - KVM: x86: compile out TDP MMU on 32-bit systems (Paolo Bonzini) [1945742] - KVM: xen: flush deferred static key before checking it (Paolo Bonzini) [1945742] - KVM: x86/xen: Explicitly pad struct compat_vcpu_info to 64 bytes (Paolo Bonzini) [1945742] - KVM: x86/xen: Allow reset of Xen attributes (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in kvm_run->flags (Paolo Bonzini) [1945742] - Documentation: kvm: fix messy conversion from .txt to .rst (Paolo Bonzini) [1945742] - KVM: Documentation: rectify rst markup in KVM_GET_SUPPORTED_HV_CPUID (Paolo Bonzini) [1945742] - Documentation: kvm: fix warning (Paolo Bonzini) [1945742] - KVM: Add documentation for Xen hypercall and shared_info updates (Paolo Bonzini) [1945742] - KVM: X86: Add the Document for KVM_CAP_X86_BUS_LOCK_EXIT (Paolo Bonzini) [1945742] - KVM: Documentation: Fix documentation for nested. (Paolo Bonzini) [1945742] - KVM: Documentation: Add arm64 KVM_RUN error codes (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_CAP_ENFORCE_PV_CPUID (Paolo Bonzini) [1945742] - KVM: Documentation: Update entry for KVM_X86_SET_MSR_FILTER (Paolo Bonzini) [1945742] - docs: kvm: add documentation for KVM_CAP_S390_DIAG318 (Paolo Bonzini) [1945742] - selftests: kvm: Mmap the entire vcpu mmap area (Paolo Bonzini) [1945742] - selftests: kvm: avoid uninitialized variable warning (Paolo Bonzini) [1945742] - selftests: kvm: add hardware_disable test (Paolo Bonzini) [1945742] - KVM: selftests: Don't bother mapping GVA for Xen shinfo test (Paolo Bonzini) [1945742] - KVM: selftests: Fix hex vs. decimal snafu in Xen test (Paolo Bonzini) [1945742] - KVM: selftests: Fix size of memslots created by Xen tests (Paolo Bonzini) [1945742] - KVM: selftests: Ignore recently added Xen tests' build output (Paolo Bonzini) [1945742] - KVM: x86: declare Xen HVM shared info capability and add test case (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop hv_vcpu_to_vcpu() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate Hyper-V context lazily (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Make Hyper-V emulation enablement conditional (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Allocate 'struct kvm_vcpu_hv' dynamically (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Prepare to meet unallocated Hyper-V context (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Always use to_hv_vcpu() accessor to get to 'struct kvm_vcpu_hv' (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Stop shadowing global 'current_vcpu' variable (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Introduce to_kvm_hv() helper (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_syndbg() to to_hv_syndbg() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_stimer()/stimer_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_synic()/synic_to_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Rename vcpu_to_hv_vcpu() to to_hv_vcpu() (Paolo Bonzini) [1945742] - KVM: x86: hyper-v: Drop unused kvm_hv_vapic_assist_page_enabled() (Paolo Bonzini) [1945742] - KVM: x86/xen: Add event channel interrupt vector upcall (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu time info region (Paolo Bonzini) [1945742] - KVM: x86/xen: setup pvclock updates (Paolo Bonzini) [1945742] - KVM: x86/xen: register vcpu info (Paolo Bonzini) [1945742] - KVM: x86/xen: Add KVM_XEN_VCPU_SET_ATTR/KVM_XEN_VCPU_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: update wallclock region (Paolo Bonzini) [1945742] - xen: add wc_sec_hi to struct shared_info (Paolo Bonzini) [1945742] - KVM: x86/xen: register shared_info page (Paolo Bonzini) [1945742] - KVM: x86/xen: add definitions of compat_shared_info, compat_vcpu_info (Paolo Bonzini) [1945742] - KVM: x86/xen: latch long_mode when hypercall page is set up (Paolo Bonzini) [1945742] - KVM: x86/xen: add KVM_XEN_HVM_SET_ATTR/KVM_XEN_HVM_GET_ATTR (Paolo Bonzini) [1945742] - KVM: x86/xen: Add kvm_xen_enabled static key (Paolo Bonzini) [1945742] - KVM: x86/xen: Move KVM_XEN_HVM_CONFIG handling to xen.c (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix coexistence of Xen and Hyper-V hypercalls (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add helper to generate mask of reserved HPA bits (Paolo Bonzini) [1945742] - KVM: x86: Use reserved_gpa_bits to calculate reserved PxE bits (Paolo Bonzini) [1945742] - KVM: x86: SEV: Treat C-bit as legal GPA bit regardless of vCPU mode (Paolo Bonzini) [1945742] - KVM: nSVM: Use common GPA helper to check for illegal CR3 (Paolo Bonzini) [1945742] - KVM: VMX: Use GPA legality helpers to replace open coded equivalents (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to handle legal GPA with an alignment requirement (Paolo Bonzini) [1945742] - KVM: x86: Add a helper to check for a legal GPA (Paolo Bonzini) [1945742] - KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading PDPTRs (Paolo Bonzini) [1945742] - KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU reset (Paolo Bonzini) [1945742] - KVM: x86/xen: intercept xen hypercalls if enabled (Paolo Bonzini) [1945742] - KVM: selftests: Add missing header file needed by xAPIC IPI tests (Paolo Bonzini) [1945742] - KVM: selftests: Add operand to vmsave/vmload/vmrun in svm.c (Paolo Bonzini) [1945742] - selftests: kvm: Properly set Hyper-V CPUIDs in evmcs_test (Paolo Bonzini) [1945742] - selftests: kvm: Move kvm_get_supported_hv_cpuid() to common code (Paolo Bonzini) [1945742] - selftest: kvm: x86: test KVM_GET_CPUID2 and guest visible CPUIDs against KVM_GET_SUPPORTED_CPUID (Paolo Bonzini) [1945742] - selftests: kvm/x86: add test for pmu msr MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: selftests: Disable dirty logging with vCPUs running (Paolo Bonzini) [1945742] - KVM: selftests: Add backing src parameter to dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Add memslot modification stress test (Paolo Bonzini) [1945742] - KVM: selftests: Add option to overlap vCPU memory access (Paolo Bonzini) [1945742] - KVM: selftests: Fix population stage in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Convert iterations to int in dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Avoid flooding debug log while populating memory (Paolo Bonzini) [1945742] - KVM: selftests: Rename timespec_diff_now to timespec_elapsed (Paolo Bonzini) [1945742] - KVM: selftests: Test IPI to halted vCPU in xAPIC while backing page moves (Paolo Bonzini) [1945742] - KVM: selftests: Implement perf_test_util more conventionally (Paolo Bonzini) [1945742] - KVM: selftests: Use vm_create_with_vcpus in create_vm (Paolo Bonzini) [1945742] - KVM: selftests: Factor out guest mode code (Paolo Bonzini) [1945742] - selftests: kvm: Merge user_msr_test into userspace_msr_exit_test (Paolo Bonzini) [1945742] - selftests: kvm: Test MSR exiting to userspace (Paolo Bonzini) [1945742] - KVM: selftests: sync_regs test for diag318 (Paolo Bonzini) [1945742] - KVM: selftests: x86: Set supported CPUIDs on default VM (Paolo Bonzini) [1945742] - KVM: selftests: Make test skipping consistent (Paolo Bonzini) [1945742] - KVM: selftests: Introduce vm_create_[default_]_with_vcpus (Paolo Bonzini) [1945742] - KVM: selftests: Make vm_create_default common (Paolo Bonzini) [1945742] - KVM: selftests: always use manual clear in dirty_log_perf_test (Paolo Bonzini) [1945742] - selftests: kvm: keep .gitignore add to date (Paolo Bonzini) [1945742] - KVM: selftests: Add "-c" parameter to dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Run dirty ring test asynchronously (Paolo Bonzini) [1945742] - KVM: selftests: Add dirty ring buffer test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce after_vcpu_run hook for dirty log test (Paolo Bonzini) [1945742] - KVM: selftests: Verify supported CR4 bits can be set before KVM_SET_CPUID2 (Paolo Bonzini) [1945742] - KVM: selftests: allow two iterations of dirty_log_perf_test (Paolo Bonzini) [1945742] - KVM: selftests: Introduce the dirty log perf test (Paolo Bonzini) [1945742] - KVM: selftests: Make the number of vcpus global (Paolo Bonzini) [1945742] - KVM: selftests: Make the per vcpu memory size global (Paolo Bonzini) [1945742] - KVM: selftests: Drop pointless vm_create wrapper (Paolo Bonzini) [1945742] - KVM: selftests: Add wrfract to common guest code (Paolo Bonzini) [1945742] - KVM: selftests: Simplify demand_paging_test with timespec_diff_now (Paolo Bonzini) [1945742] - KVM: selftests: Remove address rounding in guest code (Paolo Bonzini) [1945742] - KVM: selftests: Factor code out of demand_paging_test (Paolo Bonzini) [1945742] - KVM: selftests: Use a single binary for dirty/clear log test (Paolo Bonzini) [1945742] - KVM: selftests: Always clear dirty bitmap after iteration (Paolo Bonzini) [1945742] - selftests: kvm: test enforcement of paravirtual cpuid features (Paolo Bonzini) [1945742] - selftests: kvm: Add exception handling to selftests (Paolo Bonzini) [1945742] - selftests: kvm: Clear uc so UCALL_NONE is being properly reported (Paolo Bonzini) [1945742] - selftests: kvm: Fix the segment descriptor layout to match the actual layout (Paolo Bonzini) [1945742] - KVM: x86/xen: Fix __user pointer handling for hypercall page installation (Paolo Bonzini) [1945742] - KVM: x86/xen: fix Xen hypercall page msr handling (Paolo Bonzini) [1945742] - KVM: x86: move kvm_inject_gp up from kvm_set_xcr to callers (Paolo Bonzini) [1945742] - KVM: cleanup DR6/DR7 reserved bits checks (Paolo Bonzini) [1945742] - KVM: x86/mmu: Add '__func__' in rmap_printk() (Paolo Bonzini) [1945742] - KVM: SVM: Replace hard-coded value with #define (Paolo Bonzini) [1945742] - KVM: SVM: use .prepare_guest_switch() to handle CPU register save/setup (Paolo Bonzini) [1945742] - KVM: SVM: remove uneeded fields from host_save_users_msrs (Paolo Bonzini) [1945742] - KVM: SVM: use vmsave/vmload for saving/restoring additional host state (Paolo Bonzini) [1945742] - KVM: SVM: Use asm goto to handle unexpected #UD on SVM instructions (Paolo Bonzini) [1945742] - KVM: VMX: Use the kernel's version of VMXOFF (Paolo Bonzini) [1945742] - KVM: VMX: Move Intel PT shenanigans out of VMXON/VMXOFF flows (Paolo Bonzini) [1945742] - KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw (Paolo Bonzini) [1945742] - x86/virt: Mark flags and memory as clobbered by VMXOFF (Paolo Bonzini) [1945742] - x86/reboot: Force all cpus to exit VMX root if VMX is supported (Paolo Bonzini) [1945742] - x86/virt: Eat faults on VMXOFF in reboot flows (Paolo Bonzini) [1945742] - KVM: x86: use static calls to reduce kvm_x86_ops overhead (Paolo Bonzini) [1945742] - KVM: x86: introduce definitions to support static calls for kvm_x86_ops (Paolo Bonzini) [1945742] - KVM: RHEL: include linux/static_call.h (Paolo Bonzini) [1945742] - KVM: X86: prepend vmx/svm prefix to additional kvm_x86_ops functions (Paolo Bonzini) [1945742] - KVM: Stop using deprecated jump label APIs (Paolo Bonzini) [1945742] - locking/static_key: Add support for deferred static branches (Paolo Bonzini) [1945742] - KVM: X86: Rename DR6_INIT to DR6_ACTIVE_LOW (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Expose LBR_FMT in the MSR_IA32_PERF_CAPABILITIES (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Release guest LBR event via lazy release mechanism (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Emulate legacy freezing LBRs on virtual PMI (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Reduce the overhead of LBR pass-through or cancellation (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Pass-through LBR msrs when the guest LBR event is ACTIVE (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Create a guest LBR event when vcpu sets DEBUGCTLMSR_LBR (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: vmx/pmu: Add PMU_CAP_LBR_FMT check when guest LBR is enabled (Paolo Bonzini) [1945742] - KVM: x86/pmu: preserve IA32_PERF_CAPABILITIES across CPUID refresh (Paolo Bonzini) [1945742] - KVM: x86/vmx: Make vmx_set_intercept_for_msr() non-static (Paolo Bonzini) [1945742] - KVM: VMX: read/write MSR_IA32_DEBUGCTLMSR from GUEST_IA32_DEBUGCTL (Paolo Bonzini) [1945742] - KVM: VMX: Use x2apic_mode to avoid RDMSR when querying PI state (Paolo Bonzini) [1945742] - x86/apic: Export x2apic_mode for use by KVM in "warm" path (Paolo Bonzini) [1945742] - KVM: VMX: Enable bus lock VM exit (Paolo Bonzini) [1945742] - KVM: X86: Reset the vcpu->run->flags at the beginning of vcpu_run (Paolo Bonzini) [1945742] - KVM: VMX: Convert vcpu_vmx.exit_reason to a union (Paolo Bonzini) [1945742] - KVM/SVM: add support for SEV attestation command (Paolo Bonzini) [1945742] - KVM: x86/mmu: Remove the defunct update_pte() paging hook (Paolo Bonzini) [1945742] - KVM: Expose AVX_VNNI instruction to guset (Paolo Bonzini) [1945742] - Enumerate AVX Vector Neural Network instructions (Paolo Bonzini) [1945742] - x86: kvm: style: Simplify bool comparison (Paolo Bonzini) [1945742] - KVM: x86: Zap the oldest MMU pages, not the newest (Paolo Bonzini) [1945742] - KVM: x86/mmu: Use boolean returns for (S)PTE accessors (Paolo Bonzini) [1945742] - KVM: X86: use vzalloc() instead of vmalloc/memset (Paolo Bonzini) [1945742] - KVM: x86: Take KVM's SRCU lock only if steal time update is needed (Paolo Bonzini) [1945742] - KVM: x86: Remove obsolete disabling of page faults in kvm_arch_vcpu_put() (Paolo Bonzini) [1945742] - KVM: do not assume PTE is writable after follow_pfn (Paolo Bonzini) [1945742] - KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs (Paolo Bonzini) [1945742] - KVM: x86: cleanup CR3 reserved bits checks (Paolo Bonzini) [1945742] - KVM: SVM: Treat SVM as unsupported when running as an SEV guest (Paolo Bonzini) [1945742] - KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit mode (Paolo Bonzini) [1945742] - KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID check (Paolo Bonzini) [1945742] - KVM/x86: assign hva with the right value to vm_munmap the pages (Paolo Bonzini) [1945742] - Fix unsynchronized access to sev members through svm_register_enc_region (Paolo Bonzini) [1945742] - KVM: x86: Revert "KVM: x86: Mark GPRs dirty when written" (Paolo Bonzini) [1945742] - KVM: SVM: Unconditionally sync GPRs to GHCB on VMRUN of SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: __kvm_vcpu_halt can be static (Paolo Bonzini) [1945742] - KVM: SVM: Add support for booting APs in an SEV-ES guest (Paolo Bonzini) [1945742] - KVM/SVM: Remove leftover __svm_vcpu_run prototype from svm.c (Paolo Bonzini) [1945742] - KVM: SVM: Add register operand to vmsave call in sev_es_vcpu_load (Paolo Bonzini) [1945742] - KVM: SVM: fix 32-bit compilation (Paolo Bonzini) [1945742] - KVM: SVM: Add AP_JUMP_TABLE support in prep for AP booting (Paolo Bonzini) [1945742] - KVM: SVM: Provide support to launch and run an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Provide an updated VMRUN invocation for SEV-ES guests (Paolo Bonzini) [1945742] - x86/kvm/svm: Use uninstrumented wrmsrl() to restore GS (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU loading (Paolo Bonzini) [1945742] - KVM: SVM: Provide support for SEV-ES vCPU creation/loading (Paolo Bonzini) [1945742] - KVM: SVM: Update ASID allocation to support SEV-ES guests (Paolo Bonzini) [1945742] - KVM: SVM: Set the encryption mask for the SVM host save area (Paolo Bonzini) [1945742] - KVM: SVM: Add NMI support for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Guest FPU state save/restore not needed for SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Do not report support for SMM for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: x86: Update __get_sregs() / __set_sregs() to support SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR8 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR4 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for CR0 write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Add support for EFER write traps for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support string IO operations for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Support MMIO for an SEV-ES guest (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT MSR protocol processing (Paolo Bonzini) [1945742] - KVM: SVM: Create trace events for VMGEXIT processing (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x100 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004 (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x002 (Paolo Bonzini) [1945742] - KVM: SVM: Add initial support for a VMGEXIT VMEXIT (Paolo Bonzini) [1945742] - KVM: SVM: Add GHCB accessor functions for retrieving fields (Paolo Bonzini) [1945742] - KVM: SVM: Prepare for SEV-ES exit handling in the sev.c file (Paolo Bonzini) [1945742] - KVM: SVM: Cannot re-initialize the VMCB after shutdown with SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Do not allow instruction emulation under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Prevent debugging under SEV-ES (Paolo Bonzini) [1945742] - KVM: SVM: Add required changes to support intercepts under SEV-ES (Paolo Bonzini) [1945742] - KVM: x86: introduce complete_emulated_msr callback (Paolo Bonzini) [1945742] - KVM: x86: Mark GPRs dirty when written (Paolo Bonzini) [1945742] - KVM: SVM: Add support for the SEV-ES VMSA (Paolo Bonzini) [1945742] - x86/cpu: Add VM page flush MSR availablility as a CPUID feature (Paolo Bonzini) [1945742] - KVM: SVM: Add support for SEV-ES capability in KVM (Paolo Bonzini) [1945742] - KVM/VMX/SVM: Move kvm_machine_check function to x86.h (Paolo Bonzini) [1945742] - KVM: Don't allocate dirty bitmap if dirty ring is enabled (Paolo Bonzini) [1945742] - KVM: Make dirty ring exclusive to dirty bitmap log (Paolo Bonzini) [1945742] - KVM: X86: Implement ring-based dirty memory tracking (Paolo Bonzini) [1945742] - KVM: Pass in kvm pointer into mark_page_dirty_in_slot() (Paolo Bonzini) [1945742] - kvm/eventfd: Drain events from eventfd in irqfd_wakeup() (Paolo Bonzini) [1945742] - eventfd: Export eventfd_ctx_do_read() (Paolo Bonzini) [1945742] - kvm/eventfd: Use priority waitqueue to catch events before userspace (Paolo Bonzini) [1945742] - sched/wait: Add add_wait_queue_priority() (Paolo Bonzini) [1945742] - cpuidle-haltpoll: fix error comments in arch_haltpoll_disable (Paolo Bonzini) [1945742] - kvm/eventfd: Use sequence counter with associated spinlock (Paolo Bonzini) [1945742] - x86/kvm/vmx: Use native read/write_cr2() (Paolo Bonzini) [1945742] - KVM: SVM: convert get_user_pages() --> pin_user_pages() (Paolo Bonzini) [1945742] - x86/asm: Change all ENTRY+ENDPROC to SYM_FUNC_* (Paolo Bonzini) [1945742] - x86/entry/64: Fix unwind hints in __switch_to_asm() (Paolo Bonzini) [1945742] - x86/asm/64: Change all ENTRY+END to SYM_CODE_* (Paolo Bonzini) [1945742] - x86/head/64: Annotate start_cpu0() as non-callable (Paolo Bonzini) [1945742] - x86/asm: Do not annotate functions with GLOBAL (Paolo Bonzini) [1945742] - kprobes/x86/xen: blacklist non-attachable xen interrupt functions (Paolo Bonzini) [1945742] - x86/asm/64: Add ENDs to some functions and relabel with SYM_CODE_* (Paolo Bonzini) [1945742] - x86/asm: Use SYM_INNER_LABEL instead of GLOBAL (Paolo Bonzini) [1945742] - x86/asm: Annotate aliases (Paolo Bonzini) [1945742] - x86/asm/crypto: Annotate local functions (Paolo Bonzini) [1945742] - static_call: Add static_call_cond() (Paolo Bonzini) [1945742] - static_call: Add basic static call infrastructure (Paolo Bonzini) [1945742] - devlink: use _BITUL() macro instead of BIT() in the UAPI header (Petr Oros) [1935646] - devlink: Fix reload stats structure (Petr Oros) [1935646] - devlink: Avoid overwriting port attributes of registered port (Petr Oros) [1935646] - devlink: Add Documentation/networking/devlink/devlink-reload.rst (Petr Oros) [1935646] - devlink: Add enable_remote_dev_reset generic parameter (Petr Oros) [1935646] - devlink: Add remote reload stats (Petr Oros) [1935646] - devlink: Add reload stats (Petr Oros) [1935646] - devlink: Add devlink reload limit option (Petr Oros) [1935646] - devlink: Add reload action option to devlink reload command (Petr Oros) [1935646] - devlink: Change devlink_reload_supported() param type (Petr Oros) [1935646]- CI: Rename KABI option (Veronika Kabatova) - CI: Disable result checking for realtime checks (Veronika Kabatova) - Revert "GFS2: Re-add a call to log_flush_wait when flushing the journal" (Bob Peterson) [1917930] - md/raid1: properly indicate failure when ending a failed write request (Nigel Croxon) [1954588] - Revert "uio: use request_threaded_irq instead" (Vitaly Kuznetsov) [1946644] - drm/ast: Set format registers in primary plane's update (Lyude Paul) [1923857] - drivers: hv: Create a consistent pattern for checking Hyper-V hypercall status (Mohammed Gamal) [1940926] - x86/hyperv: Move hv_do_rep_hypercall to asm-generic (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Increase wait time for VMbus unload (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize unload_event statically (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Check for pending channel interrupts before taking a CPU offline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drivers: hv: vmbus: Introduce CHANNELMSG_MODIFYCHANNEL_RESPONSE (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Introduce and negotiate VMBus protocol version 5.3 (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Use after free in __vmbus_open() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: remove unused function (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Remove unused linux/version.h header (Mohammed Gamal) [1940926] - x86/Hyper-V: Support for free page reporting (Mohammed Gamal) [1940926] - x86/hyper-v: Move hv_message_type to architecture neutral module (Mohammed Gamal) [1940926] - asm-generic/hyperv: import data structures for mapping device interrupts (Mohammed Gamal) [1940926] - asm-generic/hyperv: introduce hv_device_id and auxiliary structures (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_interrupt_entry (Mohammed Gamal) [1940926] - asm-generic/hyperv: update hv_msi_entry (Mohammed Gamal) [1940926] - x86/hyperv: provide a bunch of helper functions (Mohammed Gamal) [1940926] - x86/hyperv: extract partition ID from Microsoft Hypervisor if necessary (Mohammed Gamal) [1940926] - asm-generic/hyperv: Add definitions for Get/SetVpRegister hypercalls (Mohammed Gamal) [1940926] - drivers: hv: Fix EXPORT_SYMBOL and tab spaces issue (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Drop error message when 'No request id available' (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move handling of VMbus interrupts (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Handle auto EOI quirk inline (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move hyperv_report_panic_msg to arch neutral code (Mohammed Gamal) [1940926] - Drivers: hv: Redo Hyper-V synthetic MSR get/set functions (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Move Hyper-V page allocator to arch neutral code (Mohammed Gamal) [1940926] - x86/hyperv: allocate output arg pages if required (Mohammed Gamal) [1940926] - drivers: hv: Fix whitespace errors (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: skip VMBus initialization if Linux is root (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Enforce 'VMBus version >= 5.2' on isolated guests (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Restrict vmbus_devices on isolated guests (Mohammed Gamal) [1940926] - hv_utils: Fix spelling mistake "Hearbeat" -> "Heartbeat" (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add /sys/bus/vmbus/hibernation (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Resolve race condition in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Avoid use-after-free in vmbus_onoffer_rescind() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Copy the hv_message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Reduce number of references to message in vmbus_on_msg_dpc() (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Initialize memory to be sent to the host (Mohammed Gamal) [1940926] - hv_utils: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1940926] - drivers/hv: remove obsolete TODO and fix misleading typo in comment (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch SPLIT_STRING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix call msleep using < 20ms (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Fix checkpatch LINE_SPACING (Mohammed Gamal) [1940926] - drivers: hv: vmbus: Replace symbolic permissions by octal permissions (Mohammed Gamal) [1940926] - drivers: hv: Fix hyperv_record_panic_msg path on comment (Mohammed Gamal) [1940926] - Drivers: hv: vmbus: Add vmbus_requestor data structure for VMBus hardening (Mohammed Gamal) [1940926] - ena: revert removal of MODULE_VERSION from ena (Petr Oros) [1955712] - Revert "[netdrv] net/intel: remove driver versions from Intel drivers" (Jonathan Toppins) [1955745] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1955721] - net: core: add dev_get_tstats64 as a ndo_get_stats64 implementation (Josef Oskera) [1939453]- igb: amend removal of MODULE_VERSION (Corinna Vinschen) [1955748] - igc: amend removal of MODULE_VERSION (Corinna Vinschen) [1955755] - i40e: amend removal of MODULE_VERSION (Stefan Assmann) [1955736] - ixgbe: Amend commit acf03026ec5a to include a version string in module info. (Ken Cox) [1955759] - i40e: Fix parameters in aq_get_phy_register() (Stefan Assmann) [1907852] - initramfs: panic with memory information (Coiby Xu) [1936031] - powercap/intel_rapl: add support for AlderLake (David Arcari) [1838605] - xfs: restore shutdown check in mapped write fault path (Brian Foster) [1926089] - xfs: consider shutdown in bmapbt cursor delete assert (Brian Foster) [1926077] - iomap: Fix negative assignment to unsigned sis->pages in iomap_swapfile_activate (Carlos Maiolino) [1938210] - scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg() (Ewan D. Milne) [1929878] - perf/arm-cmn: Move IRQs when migrating context (Jeremy Linton) [1816850] - perf/arm-cmn: Fix PMU instance naming (Jeremy Linton) [1816850] - perf: arm-cmn: Fix conversion specifiers for node type (Jeremy Linton) [1816850] - perf: arm-cmn: Fix unsigned comparison to less than zero (Jeremy Linton) [1816850] - perf: Add Arm CMN-600 PMU driver (Jeremy Linton) [1816850] - redhat/configs: Use CONFIG_VIRTIO_CONSOLE=m on s390x, too (Thomas Huth) [1954119] - s390/config: do not select VIRTIO_CONSOLE via Kconfig (Thomas Huth) [1954119] - x86/platform/uv: Fix an error code in uv_hubs_init() (Frank Ramsay) [1936605] - x86/platform/uv: Add more to secondary CPU kdump info (Frank Ramsay) [1936605] - x86/platform/uv: Use x2apic enabled bit as set by BIOS to indicate APIC mode (Frank Ramsay) [1936605] - redhat/configs: Add CONFIG_UV_SYSFS (Frank Ramsay) [1936605] - x86/platform/uv: Fix indentation warning in Documentation/ABI/testing/sysfs-firmware-sgi_uv (Frank Ramsay) [1936605] - x86/platform/uv: Set section block size for hubless architectures (Frank Ramsay) [1936605] - x86/platform/uv: Update sysfs documentation (Frank Ramsay) [1936605] - x86/platform/uv: Add deprecated messages to /proc info leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs hubless leaves (Frank Ramsay) [1936605] - x86/platform/uv: Add sysfs leaves to replace those in procfs (Frank Ramsay) [1936605] - x86/platform/uv: Add kernel interfaces for obtaining system info (Frank Ramsay) [1936605] - x86/platform/uv: Update MAINTAINERS for uv_sysfs driver (Frank Ramsay) [1936605] - x86/platform/uv: Update ABI documentation of /sys/firmware/sgi_uv/ (Frank Ramsay) [1936605] - x86/platform/uv: Add new uv_sysfs platform driver (Frank Ramsay) [1936605] - x86/platform/uv: Add and export uv_bios_* functions (Frank Ramsay) [1936605] - x86/platform/uv: Remove existing /sys/firmware/sgi_uv/interface (Frank Ramsay) [1936605] - x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1936605] - x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1936605] - x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1936605] - UV: Add SPDX license identifier - Makefile/Kconfig (Frank Ramsay) [1936605] - netdevsim: Only use sampling truncation length when valid (Ivan Vecera) [1955163] - selftests: netdevsim: Test psample functionality (Ivan Vecera) [1955163] - netdevsim: Add dummy psample implementation (Ivan Vecera) [1955163] - psample: Add additional metadata attributes (Ivan Vecera) [1955163] - psample: Encapsulate packet metadata in a struct (Ivan Vecera) [1955163] - net: psample: fix build error when CONFIG_INET is not enabled (Ivan Vecera) [1955163] - devlink: include for _BITUL (Petr Oros) [1935630] - netdevsim: add support for flash_update overwrite mask (Petr Oros) [1935630] - devlink: introduce flash update overwrite mask (Petr Oros) [1935630] - devlink: convert flash_update to use params structure (Petr Oros) [1935630] - devlink: check flash_update parameter support in net core (Petr Oros) [1935630] - devlink: Enhance policy to validate port type input value (Petr Oros) [1935630] - devlink: Enhance policy to validate eswitch mode value (Petr Oros) [1935630] - net: devlink: region: Pass the region ops to the snapshot function (Petr Oros) [1935630] - net: devlink: regions: Add a priv member to the regions ops struct (Petr Oros) [1935630]- Enumerate AVX Vector Neural Network instructions (Steve Best) [1838616] - net: fix skb use after free in netpoll (Ivan Vecera) [1913481] - cipso,calipso: resolve a number of problems with the DOI refcounts (Guillaume Nault) [1950996] - netfilter: rpfilter: mask ecn bits before fib lookup (Guillaume Nault) [1950996] - netfilter: Fix rpfilter dropping vrf packets by mistake (Guillaume Nault) [1950996] - redhat: enable CONFIG_DM_MULTIPATH_HST and CONFIG_DM_MULTIPATH_IOA (Mike Snitzer) [1949682] - dm ioctl: fix out of bounds array access when no devices (Mike Snitzer) [1949682] - dm table: Fix zoned model check and zone sectors check (Mike Snitzer) [1949682] - dm: simplify target code conditional on CONFIG_BLK_DEV_ZONED (Mike Snitzer) [1949682] - dm verity: fix DM_VERITY_OPTS_MAX value (Mike Snitzer) [1949682] - dm verity fec: fix misaligned RS roots IO (Mike Snitzer) [1949682] - dm verity: fix FEC for RS roots unaligned to block size (Mike Snitzer) [1949682] - dm bufio: subtract the number of initial sectors in dm_bufio_get_device_size (Mike Snitzer) [1949682] - dm: fix deadlock when swapping to encrypted device (Mike Snitzer) [1949682] - dm era: only resize metadata in preresume (Mike Snitzer) [1949682] - dm era: Use correct value size in equality function of writeset tree (Mike Snitzer) [1949682] - dm era: Fix bitset memory leaks (Mike Snitzer) [1949682] - dm era: Verify the data block size hasn't changed (Mike Snitzer) [1949682] - dm era: Reinitialize bitset cache before digesting a new writeset (Mike Snitzer) [1949682] - dm era: Update in-core bitset after committing the metadata (Mike Snitzer) [1949682] - dm era: Recover committed writeset after crash (Mike Snitzer) [1949682] - dm writecache: fix writing beyond end of underlying device when shrinking (Mike Snitzer) [1949682] - dm table: remove needless request_queue NULL pointer checks (Mike Snitzer) [1949682] - dm table: fix zoned iterate_devices based device capability checks (Mike Snitzer) [1949682] - dm writecache: return the exact table values that were set (Mike Snitzer) [1949682] - dm writecache: fix unnecessary NULL check warnings (Mike Snitzer) [1949682] - dm writecache: fix performance degradation in ssd mode (Mike Snitzer) [1949682] - dm integrity: introduce the "fix_hmac" argument (Mike Snitzer) [1949682] - dm persistent data: fix return type of shadow_root() (Mike Snitzer) [1949682] - dm: cleanup of front padding calculation (Mike Snitzer) [1949682] - dm integrity: fix spelling mistake "flusing" -> "flushing" (Mike Snitzer) [1949682] - dm crypt: Spelling s_cihper_cipher_ (Mike Snitzer) [1949682] - dm: avoid filesystem lookup in dm_get_dev_t() (Mike Snitzer) [1949682] - dm integrity: conditionally disable "recalculate" feature (Mike Snitzer) [1949682] - dm integrity: fix a crash if "recalculate" used without "internal_hash" (Mike Snitzer) [1949682] - dm integrity: fix the maximum number of arguments (Mike Snitzer) [1949682] - dm integrity: fix flush with external metadata device (Mike Snitzer) [1949682] - dm snapshot: flush merged data before committing metadata (Mike Snitzer) [1949682] - dm zoned: select CONFIG_CRC32 (Mike Snitzer) [1949682] - dm integrity: select CRYPTO_SKCIPHER (Mike Snitzer) [1949682] - dm cache: simplify the return expression of load_mapping() (Mike Snitzer) [1949682] - dm verity: skip verity work if I_O error when system is shutting down (Mike Snitzer) [1949682] - dm ioctl: fix error return code in target_message (Mike Snitzer) [1949682] - dm crypt: Constify static crypt_iv_operations (Mike Snitzer) [1949682] - dm: add support for REQ_NOWAIT to various targets (Mike Snitzer) [1949682] - dm: rename multipath path selector source files to have "dm-ps" prefix (Mike Snitzer) [1949682] - dm mpath: add IO affinity path selector (Mike Snitzer) [1949682] - dm verity: Add support for signature verification with 2nd keyring (Mike Snitzer) [1949682] - dm: remove unnecessary current->bio_list check when submitting split bio (Mike Snitzer) [1949682] - dm: remove invalid sparse __acquires and __releases annotations (Mike Snitzer) [1949682] - dm: fix double RCU unlock in dm_dax_zero_page_range() error path (Mike Snitzer) [1949682] - dm writecache: remove BUG() and fail gracefully instead (Mike Snitzer) [1949682] - dm table: Remove BUG_ON(in_interrupt()) (Mike Snitzer) [1949682] - dm: fix bug with RCU locking in dm_blk_report_zones (Mike Snitzer) [1949682] - Revert "dm cache: fix arm link errors with inline" (Mike Snitzer) [1949682] - vfs: remove lockdep bogosity in __sb_start_write (Brian Foster) [1926097] - nbd: freeze the queue while we're adding connections (Ming Lei) [1927246] - selftests/livepatch: Do not check order when using "comm" for dmesg checking (Joel Savitz) [1942056] - RDMA/siw,rxe: Make emulated devices virtual in the device tree (Kamal Heib) [1931849] - RDMA/core: remove use of dma_virt_ops (Kamal Heib) [1931849] - RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size (Kamal Heib) [1931849] - RDMA/core: Fix ib_dma_max_seg_size() (Kamal Heib) [1931849] - RDMA/umem: Move to allocate SG table from pages (Kamal Heib) [1931849] - lib/scatterlist: Do not limit max_segment to PAGE_ALIGNED values (Kamal Heib) [1931849] - lib/scatterlist: Add support in dynamic allocation of SG table from pages (Kamal Heib) [1931846] - RDMA/srp: Increase max_segment_size (Kamal Heib) [1931849] - RDMA/uverbs: Allow drivers to create a new HW object during rereg_mr (Kamal Heib) [1931849] - RDMA/mlx5: Use ib_umem_find_best_pgoff() for SRQ (Kamal Heib) [1931849] - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC (Kamal Heib) [1931849] - RDMA/cma: Fix error flow in default_roce_mode_store (Kamal Heib) [1931849] - RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two() (Kamal Heib) [1931849] - RDMA/restrack: Don't treat as an error allocation ID wrapping (Kamal Heib) [1931849] - RDMA/ucma: Do not miss ctx destruction steps in some cases (Kamal Heib) [1931849] - RDMA/cma: Don't overwrite sgid_attr after device is released (Kamal Heib) [1931849] - RDMA/rxe: Use acquire/release for memory ordering (Kamal Heib) [1931849] - RDMA/uverbs: Fix incorrect variable type (Kamal Heib) [1931849] - RDMA/core: Update kernel documentation for ib_create_named_qp() (Kamal Heib) [1931849] - RDMA/iser: Remove in_interrupt() usage (Kamal Heib) [1931849] - IB: Fix kernel-doc markups (Kamal Heib) [1931849] - RDMA/uverbs: Check ODP in ib_check_mr_access() as well (Kamal Heib) [1931849] - RDMA/uverbs: Tidy input validation of ib_uverbs_rereg_mr() (Kamal Heib) [1931849] - RDMA/efa: Use dma_set_mask_and_coherent() to simplify code (Kamal Heib) [1931849] - RDMA/restrack: Support all QP types (Kamal Heib) [1931849] - RDMA/core: Allow drivers to disable restrack DB (Kamal Heib) [1931849] - RDMA/core: Track device memory MRs (Kamal Heib) [1931849] - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind (Kamal Heib) [1931849] - IB/hfi1: Fix fall-through warnings for Clang (Kamal Heib) [1931849] - RDMA/ipoib: Distribute cq completion vector better (Kamal Heib) [1931849] - RDMA/efa: Remove .create_ah callback assignment (Kamal Heib) [1931849] - RDMA/cma: Add missing error handling of listen_id (Kamal Heib) [1931849] - RDMA/restrack: Store all special QPs in restrack DB (Kamal Heib) [1931849] - RDMA/counter: Combine allocation and bind logic (Kamal Heib) [1931849] - RDMA/core: Remove ib_dma_{alloc,free}_coherent (Kamal Heib) [1931849] - RDMA/core: Make FD destroy callback void (Kamal Heib) [1931849] - RDMA/core: Postpone uobject cleanup on failure till FD close (Kamal Heib) [1931849] - IB/isert: Do not excplicitly check == false for bool (Kamal Heib) [1931849] - IB/core: Add support for NDR link speed (Kamal Heib) [1931849] - RDMA/ipoib: Add 50Gb and 100Gb link speeds to ethtool (Kamal Heib) [1931849] - RDMA/rxe,siw: Restore uverbs_cmd_mask IB_USER_VERBS_CMD_POST_SEND (Kamal Heib) [1931849] - RDMA/siw: Fix typo of EAGAIN not -EAGAIN in siw_cm_work_handler() (Kamal Heib) [1931849] - RDMA/rxe: Compute PSN windows correctly (Kamal Heib) [1931849] - RDMA/core: Fix error return in _ib_modify_qp() (Kamal Heib) [1931849] - IB/verbs: avoid nested container_of() (Kamal Heib) [1931849] - RDMA/rxe: Remove unused RXE_MR_TYPE_FMR (Kamal Heib) [1931849] - RDMA: Remove AH from uverbs_cmd_mask (Kamal Heib) [1931849] - RDMA: Remove uverbs cmds from drivers that don't use them (Kamal Heib) [1931849] - RDMA/core Remove uverbs_ex_cmd_mask (Kamal Heib) [1931849] - RDMA: Check create_flags during create_qp (Kamal Heib) [1931849] - RDMA: Check flags during create_cq (Kamal Heib) [1931849] - RDMA: Check attr_mask during modify_qp (Kamal Heib) [1931849] - RDMA: Check srq_type during create_srq (Kamal Heib) [1931849] - RDMA: Move more uverbs_cmd_mask settings to the core (Kamal Heib) [1931849] - RDMA: Remove elements in uverbs_cmd_mask that all drivers set (Kamal Heib) [1931849] - RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions (Kamal Heib) [1931849] - RDMA/cm: Fix an attempt to use non-valid pointer when cleaning timewait (Kamal Heib) [1931846] - RDMA/core: Fix empty gid table for non IB/RoCE devices (Kamal Heib) [1931846] - RDMA/efa: Use the correct current and new states in modify QP (Kamal Heib) [1931846] - RMDA/sw: Don't allow drivers using dma_virt_ops on highmem configs (Kamal Heib) [1931846] - RDMA/srpt: Fix typo in srpt_unregister_mad_agent docstring (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix the active_speed and phys_state value (Kamal Heib) [1931846] - RDMA: Fix software RDMA drivers for dma mapping error (Kamal Heib) [1931846] - IB/srpt: docs: add a description for cq_size member (Kamal Heib) [1931846] - RDMA: Add rdma_connect_locked() (Kamal Heib) [1931846] - RDMA/uverbs: Fix false error in query gid IOCTL (Kamal Heib) [1931846] - RDMA/rxe: Fix small problem in network_type patch (Kamal Heib) [1931846] - RDMA/ucma: Fix use after free in destroy id flow (Kamal Heib) [1931846] - RDMA/rxe: Move the definitions for rxe_av.network_type to uAPI (Kamal Heib) [1931846] - RDMA: Explicitly pass in the dma_device to ib_register_device (Kamal Heib) [1931846] - RDMA/usnic: Remove the query_pkey callback (Kamal Heib) [1931846] - RDMA/usnic: Fix spelling mistake "transistion" -> "transition" (Kamal Heib) [1931846] - RDMA/usnic: switch from 'pci_' to 'dma_' API (Kamal Heib) [1931846] - RDMA/usnic: Avoid overly large buffers on stack (Kamal Heib) [1931846] - IB/usnic: Use dev_get_drvdata (Kamal Heib) [1931846] - IB/usnic: Fix deadlock (Kamal Heib) [1931846] - Revert "[infiniband] usnic_verbs: fix deadlock" (Kamal Heib) [1931846] - RDMA/rxe: Remove duplicate entries in struct rxe_mr (Kamal Heib) [1931846] - RDMA/uverbs: Expose the new GID query API to user space (Kamal Heib) [1931846] - RDMA/core: Introduce new GID table query API (Kamal Heib) [1931846] - RDMA/core: Modify enum ib_gid_type and enum rdma_network_type (Kamal Heib) [1931846] - RDMA/core: Change rdma_get_gid_attr returned error code (Kamal Heib) [1931846] - RDMA/core: Constify struct attribute_group (Kamal Heib) [1931846] - RDMA/core: Remove ucontext->closing (Kamal Heib) [1931846] - RDMA/drivers: Remove udata check from special QP (Kamal Heib) [1931846] - RDMA/qedr: Add support for user mode XRC-SRQ's (Kamal Heib) [1931846] - RDMA/mlx4: Prepare QP allocation to remove from the driver (Kamal Heib) [1931846] - RDMA/mlx4: Embed GSI QP into general mlx4_ib QP (Kamal Heib) [1931846] - RDMA/core: Align write and ioctl checks of QP types (Kamal Heib) [1931846] - RDMA/efa: Drop double zeroing for sg_init_table() (Kamal Heib) [1931846] - RDMA/efa: Add messages and RDMA read work requests HW stats (Kamal Heib) [1931846] - RDMA/efa: Group keep alive received counter with other SW stats (Kamal Heib) [1931846] - RDMA/restrack: Improve readability in task name management (Kamal Heib) [1931846] - RDMA/restrack: Simplify restrack tracking in kernel flows (Kamal Heib) [1931846] - RDMA/restrack: Count references to the verbs objects (Kamal Heib) [1931846] - RDMA/cma: Delete from restrack DB after successful destroy (Kamal Heib) [1931846] - RDMA/ucma: Rework ucma_migrate_id() to avoid races with destroy (Kamal Heib) [1931846] - RDMA: Fix link active_speed size (Kamal Heib) [1931846] - net/mlx5: Refactor query port speed functions (Kamal Heib) [1931846] - RDMA: Convert RWQ table logic to ib_core allocation scheme (Kamal Heib) [1931846] - RDMA: Clean MW allocation and free flows (Kamal Heib) [1931846] - RDMA/cma: Fix use after free race in roce multicast join (Kamal Heib) [1931846] - RDMA/cma: Consolidate the destruction of a cma_multicast in one place (Kamal Heib) [1931846] - RDMA/cma: Remove dead code for kernel rdmacm multicast (Kamal Heib) [1931846] - RDMA/cma: Combine cma_ndev_work with cma_work (Kamal Heib) [1931846] - RDMA/cma: Remove cma_comp() (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_LISTEN state (Kamal Heib) [1931846] - RDMA/cma: Make the locking for automatic state transition more clear (Kamal Heib) [1931846] - RDMA/cma: Fix locking for the RDMA_CM_CONNECT state (Kamal Heib) [1931846] - RDMA/core: Added missing WR and WC opcodes (Kamal Heib) [1931846] - RDMA/qedr: Remove fbo and zbva from the MR (Kamal Heib) [1931846] - RDMA/mlx4: Use ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/pvrdma: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/bnxt: Do not use ib_umem_page_count() or ib_umem_num_pages() (Kamal Heib) [1931846] - RDMA/qedr: Use ib_umem_num_dma_blocks() instead of ib_umem_page_count() (Kamal Heib) [1931846] - RDMA/qedr: Use rdma_umem_for_each_dma_block() instead of open-coding (Kamal Heib) [1931846] - RDMA/i40iw: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/efa: Use ib_umem_num_dma_pages() (Kamal Heib) [1931846] - RDMA/umem: Split ib_umem_num_pages() into ib_umem_num_dma_blocks() (Kamal Heib) [1931846] - RDMA/umem: Replace for_each_sg_dma_page with rdma_umem_for_each_dma_block (Kamal Heib) [1931846] - RDMA/umem: Add rdma_umem_for_each_dma_block() (Kamal Heib) [1931846] - RDMA/umem: Use simpler logic for ib_umem_find_best_pgsz() (Kamal Heib) [1931846] - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page boundary (Kamal Heib) [1931846] - RDMA: Make counters destroy symmetrical (Kamal Heib) [1931846] - RDMA: Restore ability to return error for destroy WQ (Kamal Heib) [1931846] - RDMA: Change XRCD destroy return value (Kamal Heib) [1931846] - RDMA: Allow fail of destroy CQ (Kamal Heib) [1931846] - RDMA/core: Delete function indirection for alloc/free kernel CQ (Kamal Heib) [1931846] - RDMA: Restore ability to fail on SRQ destroy (Kamal Heib) [1931846] - RDMA/mlx5: Issue FW command to destroy SRQ on reentry (Kamal Heib) [1931846] - RDMA: Restore ability to fail on AH destroy (Kamal Heib) [1931846] - RDMA: Restore ability to fail on PD deallocate (Kamal Heib) [1931846] - RDMA/core: Change how failing destroy is handled during uobj abort (Kamal Heib) [1931846] - RDMA/ucma: Fix resource leak on error path (Kamal Heib) [1931846] - RDMA/rxe: Address an issue with hardened user copy (Kamal Heib) [1931846] - RDMA/rxe: Add SPDX hdrs to rxe source files (Kamal Heib) [1931846] - RDMA/core: Trigger a WARN_ON if the driver causes uobjects to become leaked (Kamal Heib) [1931846] - RDMA/rxe: Fix style warnings (Kamal Heib) [1931846] - RDMA/ucma: Remove closing and the close_wq (Kamal Heib) [1931846] - RDMA/ucma: Rework how new connections are passed through event delivery (Kamal Heib) [1931846] - RDMA/ucma: Narrow file->mut in ucma_event_handler() (Kamal Heib) [1931846] - RDMA/ucma: Change backlog into an atomic (Kamal Heib) [1931846] - RDMA/ucma: Add missing locking around rdma_leave_multicast() (Kamal Heib) [1931846] - RDMA/ucma: Fix locking for ctx->events_reported (Kamal Heib) [1931846] - RDMA/ucma: Fix the locking of ctx->file (Kamal Heib) [1931846] - RDMA/ucma: Do not use file->mut to lock destroying (Kamal Heib) [1931846] - RDMA/cma: Add missing locking to rdma_accept() (Kamal Heib) [1931846] - RDMA/ucma: Remove mc_list and rely on xarray (Kamal Heib) [1931846] - RDMA/ucma: Fix error cases around ucma_alloc_ctx() (Kamal Heib) [1931846] - RDMA/ucma: Consolidate the two destroy flows (Kamal Heib) [1931846] - RDMA/ucma: Remove unnecessary locking of file->ctx_list in close (Kamal Heib) [1931846] - RDMA/ucma: Fix refcount 0 incr in ucma_get_ctx() (Kamal Heib) [1931846] - RDMA/cm: Add tracepoints to track MAD send operations (Kamal Heib) [1931846] - RDMA/cm: Replace pr_debug() call sites with tracepoints (Kamal Heib) [1931846] - RDMA/core: Move the rdma_show_ib_cm_event() macro (Kamal Heib) [1931846] - RDMA/efa: Remove redundant udata check from alloc ucontext response (Kamal Heib) [1931846] - RDMA/vmw_pvrdma: Fix kernel-doc documentation (Kamal Heib) [1931846] - RDMA/rxe: prevent rxe creation on top of vlan interface (Kamal Heib) [1931846] - RDMA/cm: Remove unused cm_class (Kamal Heib) [1931846] - IB/isert: remove duplicated error prints (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD RNR retry (Kamal Heib) [1931846] - RDMA/efa: Introduce SRD QP state machine (Kamal Heib) [1931846] - RDMA/efa: Be consistent with modify QP bitmask (Kamal Heib) [1931846] - RDMA/efa: Add a generic capability check helper (Kamal Heib) [1931846] - RDMA: Remove constant domain argument from flow creation call (Kamal Heib) [1931846] - RDMA/i40iw: Avoid typecast from void to pci_dev (Kamal Heib) [1931846] - sched/uclamp: Add CPU's clamp buckets refcounting (Kamal Heib) [1931846] - overflow: Include header file with SIZE_MAX declaration (Kamal Heib) [1931846] - treewide: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - IB/hfi1: Use fallthrough pseudo-keyword (Kamal Heib) [1931846] - treewide: replace '---help---' in Kconfig files with 'help' (Kamal Heib) [1931846] - remove ioremap_nocache and devm_ioremap_nocache (Kamal Heib) [1931846]- ethtool: pause: make sure we init driver stats (Ivan Vecera) [1935611] - ethtool: correct policy for ETHTOOL_MSG_CHANNELS_SET (Ivan Vecera) [1935611] - ethtool: strset: allow ETHTOOL_A_STRSET_COUNTS_ONLY attr (Ivan Vecera) [1935611] - ethtool: specify which header flags are supported per command (Ivan Vecera) [1935611] - ethtool: link up ethnl_header_policy as a nested policy (Ivan Vecera) [1935611] - ethtool: trim policy tables (Ivan Vecera) [1935611] - ethtool: wire up set policies to ops (Ivan Vecera) [1935611] - ethtool: wire up get policies to ops (Ivan Vecera) [1935611] - netdevsim: fix duplicated debugfs directory (Ivan Vecera) [1935611] - selftests: add a test for ethtool pause stats (Ivan Vecera) [1935611] - netdevsim: add pause frame stats (Ivan Vecera) [1935611] - docs: net: include the new ethtool pause stats in the stats doc (Ivan Vecera) [1935611] - ethtool: add standard pause stats (Ivan Vecera) [1935611] - net: tighten the definition of interface statistics (Ivan Vecera) [1935611]- PCI: hv: Fix typo (Mohammed Gamal) [1940924] - asm-generic/hyperv: change HV_CPU_POWER_MANAGEMENT to HV_CPU_MANAGEMENT (Mohammed Gamal) [1940925] - x86/hyperv: detect if Linux is the root partition (Mohammed Gamal) [1940925] - hyperv: hyperv.h: drop a duplicated word (Mohammed Gamal) [1940925] - hyper-v: Remove internal types from UAPI header (Mohammed Gamal) [1940925] - x86/hyperv: Load/save the Isolation Configuration leaf (Mohammed Gamal) [1940925] - x86/hyperv: Initialize clockevents after LAPIC is initialized (Mohammed Gamal) [1940925] - x86/hyperv: check cpu mask after interrupt has been disabled (Mohammed Gamal) [1940925] - x86/hyperv: Fix kexec panic/hang issues (Mohammed Gamal) [1940925] - video: hyperv_fb: Fix a double free in hvfb_probe (Mohammed Gamal) [1940922] - uio: uio_hv_generic: use devm_kzalloc() for private data alloc (Mohammed Gamal) [1940922] - Avoid macro redefinition in compiler-{clang,gcc}.h (Jerome Marchand) [1907271] - x86/split_lock: Add Icelake microserver and Tigerlake CPU models (Prarit Bhargava) [1847576] - tools/power/x86/intel-speed-select: Update version to 1.8 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command to get/set TRL (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Add new command turbo-mode (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set higher of cpuinfo_max_freq or base_frequency (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Set scaling_max_freq to base_frequency (Prarit Bhargava) [1921801] - platform/x86: ISST: Mark mmio_range_devid_0 and mmio_range_devid_1 with static keyword (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Update version for v5.11 (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Account for missing sysfs for die_id (Prarit Bhargava) [1921801] - tools/power/x86/intel-speed-select: Read TRL from mailbox (Prarit Bhargava) [1921801] - platform/x86: ISST: Change PCI device macros (Prarit Bhargava) [1921801] - platform/x86: ISST: Allow configurable offset range (Prarit Bhargava) [1921801] - platform/x86: ISST: Check for unaligned mmio address (Prarit Bhargava) [1921801] - tools/power/turbostat: Fallback to an MSR read for EPB (Prarit Bhargava) [1926913] - tools/power/turbostat: Read energy_perf_bias from sysfs (Prarit Bhargava) [1926913] - Bluetooth: btusb: Add workaround for remote-wakeup issues with Barrot 8041a02 fake CSR controllers (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix detection of some fake CSR controllers with a bcdDevice val of 0x0134 (Gopal Tiwari) [1946951] - Bluetooth: btusb: support download nvm with different board id for wcn6855 (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: Add the missed release_firmware() in mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the missed release_firmware() in btusb_mtk_setup_firmware() (Gopal Tiwari) [1946951] - Bluetooth: btusb: Support 0bda:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add OBDA0623 ACPI HID (Gopal Tiwari) [1946951] - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Wait for timeout during suspend (Gopal Tiwari) [1946951] - Bluetooth: btrtl: fix incorrect skb allocation failure check (Gopal Tiwari) [1946951] - Bluetooth: hci_ll: add a small delay for wl1271 enable bt_en (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 1358:c123 Realtek 8822CE device (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: resolve various warnings (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Enhance retry logic in qca_setup (Gopal Tiwari) [1946951] - Bluetooth: btusb: btrtl: Add support for RTL8852A (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add support for 13d3:3560 MediaTek MT7615E device (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: fix memory leak in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Ask 8821C to drop old firmware (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Refine the ic_id_table for clearer and more regular (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add the more support IDs for Realtek RTL8822CE (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: close serdev device and free hu in h5_close (Gopal Tiwari) [1946951] - Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1946951] - Bluetooth: btusb: Add Qualcomm Bluetooth SoC WCN6855 support (Gopal Tiwari) [1946951] - Bluetooth: btusb: Enable wide band speech support for BTUSB_QCA_ROME (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Close UART port if NON_PERSISTENT_SETUP is set (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Remove duplicate power off in proto close (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: enable on new platform (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: use NULL instead of zero (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: switch to list_for_each_entry() (Gopal Tiwari) [1946951] - Bluetooth: hci_intel: drop strange le16_to_cpu() against u8 values (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: remove redundant null check (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb (Gopal Tiwari) [1946951] - Bluetooth: hci_uart: Cancel init work before unregistering (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Remove ignored flag HCI_UART_RESET_ON_INIT (Gopal Tiwari) [1946951] - Bluetooth: btmrvl: eliminate duplicates introducing btmrvl_reg_89xx (Gopal Tiwari) [1946951] - Revert "Bluetooth: btusb: Disable runtime suspend on Realtek devices" (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Stop collecting memdump again for command timeout during SSR (Gopal Tiwari) [1946951] - Bluetooth: hci_serdev: Only unregister device if it was registered (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags (Gopal Tiwari) [1946951] - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth controllers (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fixes for SSR (Gopal Tiwari) [1946951] - Bluetooth: btusb: add Realtek 8822CE to usb_device_id table (Gopal Tiwari) [1946951] - Bluetooth: btusb: USB alternate setting 1 for WBS (Gopal Tiwari) [1946951] - Bluetooth: btusb: Comment on unbalanced pm reference (Gopal Tiwari) [1946951] - Bluetooth: btusb: BTUSB_WAKEUP_DISABLE prevents wake (Gopal Tiwari) [1946951] - Bluetooth: btusb: Reset port on cmd timeout (Gopal Tiwari) [1946951] - Bluetooth: btmtksdio: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: btusb: fix up firmware download sequence (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Disable SoC debug logging for WCN3991 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Request Tx clock vote off only when Tx is pending (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Refactor irq wakeup (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Implement prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: btmrvl_sdio: Set parent dev to hdev (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Bug fix during SSR timeout (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Refactor error handling in qca_suspend() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Skip serdev wait when no transfer is pending (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Simplify determination of serial clock on/off state from votes (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix an error pointer dereference (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8977 chipset (Gopal Tiwari) [1946951] - btmrvl: Fix firmware filename for sd8997 chipset (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix QCA6390 memdump failure (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Use serdev_device_write_buf() instead of serdev_device_write() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Improve controller ID info log level (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix qca6390 enable failure after warm reboot (Gopal Tiwari) [1946951] - Bluetooth: btmtkuart: Improve exception handling in btmtuart_probe() (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix suspend/resume functionality failure (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Added 003.006.007, changed 001.003.015 (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: Fix uninitialized access to hdev (Gopal Tiwari) [1946951] - Bluetooth: serdev: Constify serdev_device_ops (Gopal Tiwari) [1946951] - Bluetooth: Add hook for driver to prevent wake from suspend (Gopal Tiwari) [1946951] - Bluetooth: btusb: Implement hdev->prevent_wake (Gopal Tiwari) [1946951] - Bluetooth: hci_h5: Add support for binding RTL8723BS with device tree (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: allow max-speed to be set for QCA9377 devices (Gopal Tiwari) [1946951] - Bluetooth: hci_qca: add compatible for QCA9377 (Gopal Tiwari) [1946951] - Bluetooth: btusb: Adding support for LE scatternet to Jfp and ThP (Gopal Tiwari) [1946951] - Bluetooth: Adding driver and quirk defs for multi-role LE (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Add 2 missing models to subver tables (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Move setting of USE_BDADDR_PROPERTY quirk to hci_bcm.c (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Try multiple Patch filenames when loading the Patch firmware (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Bail sooner from btbcm_initialize() when not loading fw (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Drop upper nibble version check from btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_setup_patchram use btbcm_finalize (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Make btbcm_initialize() print local-name on re-init too (Gopal Tiwari) [1946951] - Bluetooth: btbcm: Fold Patch loading + applying into btbcm_initialize() (Gopal Tiwari) [1946951] - Bluetooth: btrtl: Add support for RTL8761B (Gopal Tiwari) [1946951] - Bluetooth: btusb: check for NULL in btusb_find_altsetting() (Gopal Tiwari) [1946951] - Bluetooth: btusb: handle mSBC audio over USB Endpoints (Gopal Tiwari) [1946951] - Bluetooth: add support to notify using SCO air mode (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: respect IRQ polarity from DT (Gopal Tiwari) [1946951] - Bluetooth: hci_bcm: fix freeing not-requested IRQ (Gopal Tiwari) [1946951] - intel_idle: remove definition of DEBUG (David Arcari) [1926917] - intel_idle: Build fix (David Arcari) [1926917] - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known (Phil Auld) [1937103] - cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC is not there (Phil Auld) [1937103] - cpufreq: ACPI: Extend frequency tables to cover boost frequencies (Phil Auld) [1937103] - sched/uclamp: Add CPU's clamp buckets refcounting (Phil Auld) [1937103] - x86: PM: Register syscore_ops for scale invariance (Phil Auld) [1937103] - sched/fair: Reduce cases for active balance (Phil Auld) [1937103] - sched/fair: Don't set LBF_ALL_PINNED unnecessarily (Phil Auld) [1937103] - sched/fair: Skip idle cfs_rq (Phil Auld) [1937103] - tick/sched: Make jiffies update quick check more robust (Phil Auld) [1937103] - sched/fair: Trivial correction of the newidle_balance() comment (Phil Auld) [1937103] - sched/fair: Clear SMT siblings after determining the core is not idle (Phil Auld) [1937103] - sched: Fix kernel-doc markup (Phil Auld) [1937103] - x86: Print ratio freq_max/freq_base used in frequency invariance calculations (Phil Auld) [1937103] - x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC (Phil Auld) [1937103] - x86, sched: Calculate frequency invariance for AMD systems (Phil Auld) [1937103] - sched: Limit the amount of NUMA imbalance that can exist at fork time (Phil Auld) [1937103] - sched/numa: Allow a floating imbalance between NUMA nodes (Phil Auld) [1937103] - sched: Avoid unnecessary calculation of load imbalance at clone time (Phil Auld) [1937103] - sched/numa: Rename nr_running and break out the magic number (Phil Auld) [1937103] - sched/topology: Condition EAS enablement on FIE support (Phil Auld) [1937103] - sched/topology: Don't enable EAS on SMT systems (Phil Auld) [1937103] - sched/topology,schedutil: Wrap sched domains rebuild (Phil Auld) [1937103] - sched/core: Fix typos in comments (Phil Auld) [1937103] - sched: Fix rq->nr_iowait ordering (Phil Auld) [1937103] - sched: Fix data-race in wakeup (Phil Auld) [1937103] - sched/fair: Fix overutilized update in enqueue_task_fair() (Phil Auld) [1937103] - sched/fair: Dissociate wakeup decisions from SD flag value (Phil Auld) [1937103] - sched: Remove select_task_rq()'s sd_flag parameter (Phil Auld) [1937103] - sched: Add WF_TTWU, WF_EXEC wakeup flags (Phil Auld) [1937103] - sched/fair: Remove superfluous lock section in do_sched_cfs_slack_timer() (Phil Auld) [1937103] - sched/fair: Ensure tasks spreading in LLC during LB (Phil Auld) [1937103] - sched/fair: Reorder throttle_cfs_rq() path (Phil Auld) [1937103] - sched/fair: Check for idle core in wake_affine (Phil Auld) [1937103] - sched: Reenable interrupts in do_sched_yield() (Phil Auld) [1937103] - sched/fair: Improve the accuracy of sched_stat_wait statistics (Phil Auld) [1937103] - sched/fair: Tweak pick_next_entity() (Phil Auld) [1937103] - sched/debug: Add new tracepoint to track cpu_capacity (Phil Auld) [1937103] - sched/fair: Remove the force parameter of update_tg_load_avg() (Phil Auld) [1937103] - sched/rt: Disable RT_RUNTIME_SHARE by default (Phil Auld) [1937103] - sched: Cache task_struct::flags in sched_submit_work() (Phil Auld) [1937103] - sched/fair: Simplify the work when reweighting entity (Phil Auld) [1937103] - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu() (Phil Auld) [1937103] - sched/fair: Ignore cache hotness for SMT migration (Phil Auld) [1937103] - sched: Use __always_inline on is_idle_task() (Phil Auld) [1937103] - treewide: Use fallthrough pseudo-keyword (Phil Auld) [1937103] - sched/debug: Fix the alignment of the show-state debug output (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo_freq/base_freq gives 0 (Phil Auld) [1937103] - x86, sched: Bail out of frequency invariance if turbo frequency is unknown (Phil Auld) [1937103] - x86, sched: check for counters overflow in frequency invariant accounting (Phil Auld) [1937103] - exit: Move preemption fixup up, move blocking operations down (Phil Auld) [1937103] - net: bonding: remove repeated word (Jarod Wilson) [1936982] - net: bonding: Correct function name bond_change_active_slave() in comment (Jarod Wilson) [1936982] - bonding: Added -ENODEV interpret for slaves option (Jarod Wilson) [1936982] - bonding: 3ad: Print an error for unknown speeds (Jarod Wilson) [1936982] - bonding: 3ad: add support for 400G speed (Jarod Wilson) [1936982] - bonding: 3ad: add support for 200G speed (Jarod Wilson) [1936982] - net/bonding: Declare TLS RX device offload support (Jarod Wilson) [1936982] - net/bonding: Implement TLS TX device offload (Jarod Wilson) [1936982] - net/bonding: Take update_features call out of XFRM funciton (Jarod Wilson) [1936982] - net/bonding: Implement ndo_sk_get_lower_dev (Jarod Wilson) [1936982] - net/bonding: Take IP hash logic into a helper (Jarod Wilson) [1936982] - net: bonding: Notify ports about their initial state (Jarod Wilson) [1936982] - bonding: wait for sysfs kobject destruction before freeing struct slave (Jarod Wilson) [1936982] - bonding: advertise NETIF_F_GSO_SOFTWARE (Jarod Wilson) [1936982] - net/tls: Except bond interface from some TLS checks (Jarod Wilson) [1936982] - net/tls: Device offload to use lowest netdevice in chain (Jarod Wilson) [1936982] - ethtool: Add common function for filling out strings (Ivan Vecera) [1950987] - selftests: forwarding: vxlan_bridge_1d: Fix vxlan ecn decapsulate value (Hangbin Liu) [1949349] - selftests: forwarding: Fix race condition in mirror installation (Hangbin Liu) [1949349] - selftests: txtimestamp: fix compilation issue (Hangbin Liu) [1949349] - selftests: net: fib_tests: remove duplicate log test (Hangbin Liu) [1949349] - selftests: xfrm: fix test return value override issue in xfrm_policy.sh (Hangbin Liu) [1949349] - selftests: rtnetlink: load fou module for kci_test_encap_fou() test (Hangbin Liu) [1949349] - vxlan: move debug check after netdev unregister (Guillaume Nault) [1949167] - net: ip: always refragment ip defragmented packets (Guillaume Nault) [1949167] - net: fix pmtu check in nopmtudisc mode (Guillaume Nault) [1949167] - net: udp: make udp_tunnel_nic_info structure extensible (Ivan Vecera) [1948450] - macvlan: macvlan_count_rx() needs to be aware of preemption (Antoine Tenart) [1950012] - macvlan: remove redundant null check on data (Antoine Tenart) [1950012] - net: fix dev_ifsioc_locked() race condition (Antoine Tenart) [1950234] - ipv6: weaken the v4mapped source check (Hangbin Liu) [1949499] - ipv6: set multicast flag on the multicast route (Hangbin Liu) [1949499] - ipv6: create multicast route with RTPROT_KERNEL (Hangbin Liu) [1949499] - net: ipv6: Validate GSO SKB before finish IPv6 processing (Hangbin Liu) [1949499] - net: sit: unregister_netdevice on newlink's error path (Hangbin Liu) [1949499] - net: ip6_gre: fix moving ip6gre between namespaces (Hangbin Liu) [1949499] - gso: validate gso_type on ipip style tunnels (Hangbin Liu) [1949499] - net: page_pool: simplify page recycling condition tests (Ivan Vecera) [1935698] - net: use the new dev_page_is_reusable() instead of private versions (Ivan Vecera) [1935698] - net: introduce common dev_page_is_reusable() (Ivan Vecera) [1935698] - skbuff: constify skb_propagate_pfmemalloc() "page" argument (Ivan Vecera) [1935698] - mm: constify page_is_pfmemalloc() argument (Ivan Vecera) [1935698] - genetlink: allow dumping command-specific policy (Ivan Vecera) [1938919] - genetlink: properly support per-op policy dumping (Ivan Vecera) [1938919] - genetlink: factor skb preparation out of ctrl_dumppolicy() (Ivan Vecera) [1938919] - netlink: rework policy dump to support multiple policies (Ivan Vecera) [1938919] - netlink: compare policy more accurately (Ivan Vecera) [1938919] - genetlink: switch control commands to per-op policies (Ivan Vecera) [1938919] - genetlink: use parsed attrs in dumppolicy (Ivan Vecera) [1938919] - taskstats: move specifying netlink policy back to ops (Ivan Vecera) [1938919] - genetlink: bring back per op policy (Ivan Vecera) [1938919] - genetlink: use .start callback for dumppolicy (Ivan Vecera) [1938919] - genetlink: add a structure for dump state (Ivan Vecera) [1938919] - genetlink: move to smaller ops wherever possible (Ivan Vecera) [1938919] - genetlink: add small version of ops (Ivan Vecera) [1938919] - netlink: fix policy dump leak (Ivan Vecera) [1938919] - genetlink: get rid of family->attrbuf (Ivan Vecera) [1938919] - genetlink: clean up family attributes allocations (Ivan Vecera) [1938919] - genetlink: fix memory leaks in genl_family_rcv_msg_dumpit() (Ivan Vecera) [1938919] - net: genetlink: return the error code when attribute parsing fails. (Ivan Vecera) [1938919] - genetlink: do not parse attributes for families with zero maxattr (Ivan Vecera) [1938919] - net: tipc: prepare attrs in __tipc_nl_compat_dumpit() (Ivan Vecera) [1938919] - net: genetlink: always allocate separate attrs for dumpit ops (Ivan Vecera) [1938919] - net: genetlink: remove unused genl_family_attrbuf() (Ivan Vecera) [1938919] - net: tipc: allocate attrs locally instead of using genl_family_attrbuf in compat_dumpit() (Ivan Vecera) [1938919] - net: tipc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: nfc: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: ieee802154: have genetlink code to parse the attrs during dumpit (Ivan Vecera) [1938919] - net: genetlink: parse attrs and store in contect info struct during dumpit (Ivan Vecera) [1938919] - net: genetlink: push attrbuf allocation and parsing to a separate function (Ivan Vecera) [1938919] - net: genetlink: introduce dump info struct to be available during dumpit op (Ivan Vecera) [1938919] - net: genetlink: push doit/dumpit code from genl_family_rcv_msg (Ivan Vecera) [1938919] - devlink: Use controller while building phys_port_name (Petr Oros) [1935615] - devlink: Introduce controller number (Petr Oros) [1935615] - devlink: Introduce external controller flag (Petr Oros) [1935615] - devlink: Move structure comments outside of structure (Petr Oros) [1935615] - devlink: Add comment block for missing port attributes (Petr Oros) [1935615] - net/mlx5: E-switch, Read controller number from device (Petr Oros) [1935615] - devlink: don't crash if netdev is NULL (Petr Oros) [1935615] - vdpa/mlx5: Use write memory barrier after updating CQ index (Jason Wang) [1877270] - vhost_vdpa: return -EFAULT if copy_to_user() fails (Jason Wang) [1877270] - vdpa: mlx5: fix vdpa/vhost dependencies (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (rework) (Jason Wang) [1877270] - vdpasim: fix "mac_pton" undefined error (Jason Wang) [1877270] - vdpasim: allow to assign a MAC address (Jason Wang) [1877270] - vdpasim: fix MAC address configuration (Jason Wang) [1877270] - vdpa: handle irq bypass register failure case (Jason Wang) [1877270] - vdpa_sim: Fix DMA mask (Jason Wang) [1877270] - Revert "vhost-vdpa: fix page pinning leakage in error path" (Jason Wang) [1877270] - vdpa/mlx5: Fix error return in map_direct_mr() (Jason Wang) [1877270] - vhost_vdpa: Return -EFAULT if copy_from_user() fails (Jason Wang) [1877270] - vdpa_sim: implement get_iova_range() (Jason Wang) [1877270] - vhost: vdpa: report iova range (Jason Wang) [1877270] - vdpa: introduce config op to get valid iova range (Jason Wang) [1877270] - vhost_vdpa: remove unnecessary spin_lock in vhost_vring_call (Jason Wang) [1877270] - vdpa/mlx5: Setup driver only if VIRTIO_CONFIG_S_DRIVER_OK (Jason Wang) [1877270] - vhost_vdpa: Fix duplicate included kernel.h (Jason Wang) [1877270] - vdpa/mlx5: Fix failure to bring link up (Jason Wang) [1877270] - vdpa/mlx5: Make use of a specific 16 bit endianness API (Jason Wang) [1877270] - vdpa/mlx5: Fix dependency on MLX5_CORE (Jason Wang) [1877270] - vdpa/mlx5: should keep avail_index despite device status (Jason Wang) [1877270] - vhost-vdpa: fix page pinning leakage in error path (Jason Wang) [1877270] - vhost-vdpa: fix vhost_vdpa_map() on error condition (Jason Wang) [1877270] - vhost vdpa: fix vhost_vdpa_open error handling (Jason Wang) [1877270] - vhost-vdpa: fix backend feature ioctls (Jason Wang) [1877270] - vdpa/mlx5: Avoid warnings about shifts on 32-bit platforms (Jason Wang) [1877270] - vdpa: ifcvf: free config irq in ifcvf_free_irq() (Jason Wang) [1877270] - vdpa: ifcvf: return err when fail to request config irq (Jason Wang) [1877270] - vdpa/mlx5: fix up endian-ness for mtu (Jason Wang) [1877270] - vdpa: Fix pointer math bug in vdpasim_get_config() (Jason Wang) [1877270] - vdpa/mlx5: Fix pointer math in mlx5_vdpa_get_config() (Jason Wang) [1877270] - mlx5: vdpa: fix possible uninitialized var (Jason Wang) [1877270] - vdpa/mlx5: fix memory allocation failure checks (Jason Wang) [1877270] - vdpa/mlx5: Fix uninitialised variable in core/mr.c (Jason Wang) [1877270] - vdpa_sim: init iommu lock (Jason Wang) [1877270] - redhat: enable mlx5e vDPA driver (Jason Wang) [1877270] - vdpa/mlx5: Add VDPA driver for supported mlx5 devices (Jason Wang) [1877270] - vdpa/mlx5: Add shared memory registration code (Jason Wang) [1877270] - vdpa/mlx5: Add support library for mlx5 VDPA implementation (Jason Wang) [1877270] - vdpa/mlx5: Add hardware descriptive header file (Jason Wang) [1877270] - vdpa: Modify get_vq_state() to return error code (Jason Wang) [1877270] - net/vdpa: Use struct for set/get vq state (Jason Wang) [1877270] - vdpa: remove hard coded virtq num (Jason Wang) [1877270] - vdpasim: support batch updating (Jason Wang) [1877270] - vhost-vdpa: support IOTLB batching hints (Jason Wang) [1877270] - vhost-vdpa: support get/set backend features (Jason Wang) [1877270] - vhost: generialize backend features setting/getting (Jason Wang) [1877270] - vhost-vdpa: refine ioctl pre-processing (Jason Wang) [1877270] - vDPA: dont change vq irq after DRIVER_OK (Jason Wang) [1877270] - ifcvf: implement vdpa_config_ops.get_vq_irq() (Jason Wang) [1877270] - vhost_vdpa: implement IRQ offloading in vhost_vdpa (Jason Wang) [1877270] - vDPA: add get_vq_irq() in vdpa_config_ops (Jason Wang) [1877270] - vhost: introduce vhost_vring_call (Jason Wang) [1877270] - vdpasim: protect concurrent access to iommu iotlb (Jason Wang) [1877270] - vhost: vdpa: remove per device feature whitelist (Jason Wang) [1877270] - vdpa_sim: fix endian-ness of config space (Jason Wang) [1877270] - virtio_vdpa: legacy features handling (Jason Wang) [1877270] - vhost/vdpa: switch to new helpers (Jason Wang) [1877270] - vdpa: make sure set_features is invoked for legacy (Jason Wang) [1877270] - vhost_vdpa: Fix potential underflow in vhost_vdpa_mmap() (Jason Wang) [1877270] - vdpa: fix typos in the comments for __vdpa_alloc_device() (Jason Wang) [1877270] - ifcvf: implement config interrupt in IFCVF (Jason Wang) [1877270] - vhost: replace -1 with VHOST_FILE_UNBIND in ioctls (Jason Wang) [1877270] - vhost_vdpa: Support config interrupt in vdpa (Jason Wang) [1877270] - ifcvf: ignore continuous setting same status value (Jason Wang) [1877270] - vdpasim: Fix some coccinelle warnings (Jason Wang) [1877270] - ifcvf: move IRQ request/free to status change handlers (Jason Wang) [1877270] - vhost_vdpa: disable doorbell mapping for !MMU (Jason Wang) [1877270] - vhost_vdpa: support doorbell mapping via mmap (Jason Wang) [1877270] - vdpa: introduce get_vq_notification method (Jason Wang) [1877270] - vhost: use mmgrab() instead of mmget() for non worker device (Jason Wang) [1877270] - vhost: allow device that does not depend on vhost worker (Jason Wang) [1877270] - vhost: revert "vhost: disable for OABI" (Jason Wang) [1877270] - vdpasim: remove unused variable 'ret' (Jason Wang) [1877270] - vhost: remove set but not used variable 'status' (Jason Wang) [1877270] - vhost: vdpa: remove unnecessary null check (Jason Wang) [1877270] - virtio/test: fix up after IOTLB changes (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - tools/virtio: option to build an out of tree module (Jason Wang) [1877270] - vhost/test: fix build for vhost test (Jason Wang) [1877270] - vhost: fix VHOST_GET_BACKEND_FEATURES ioctl request definition (Jason Wang) [1877270] - perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3 (Michael Petlan) [1950388]- redhat/configs/editconfig: Add support for a bugzilla entry (David Arcari) - tools/power turbostat: Revert "[tools] tools/power turbostat: Enable accumulate RAPL display" (Prarit Bhargava) [1944699] - mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start (Jarod Wilson) [1914996] {CVE-2020-36158} - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP (Alaa Hleihel) [1932839 1936742] - net/mlx5e: Reject tc rules which redirect from a VF to itself (Alaa Hleihel) [1932839] - net/mlx5: CT: Add support for matching on ct_state inv and rel flags (Alaa Hleihel) [1932839 1942681] - net: openvswitch: add log message for error case (Eelco Chaudron) [1937697] - net: openvswitch: conntrack: simplify the return expression of ovs_ct_limit_get_default_limit() (Eelco Chaudron) [1937697] - net: openvswitch: Be liberal in tcp conntrack. (Eelco Chaudron) [1937697] - netfilter: conntrack: tcp: only close if RST matches exact sequence (Eelco Chaudron) [1937697] - openvswitch: Use IS_ERR instead of IS_ERR_OR_NULL (Eelco Chaudron) [1937697] - net: openvswitch: Fix kerneldoc warnings (Eelco Chaudron) [1937697] - net: openvswitch: remove unnecessary ASSERT_OVSL in ovs_vport_del() (Eelco Chaudron) [1937697] - cifs: revalidate mapping when we open files for SMB1 POSIX (Ronnie Sahlberg) [1933527] - Revert "vfs: Allow userns root to call mknod on owned filesystems." (Alexey Gladkov) [1902543] - mfd: intel-lpss: Add Intel Alder Lake PCH-S PCI IDs (David Arcari) [1840244] - nvme: retrigger ANA log update if group descriptor isn't found (Gopal Tiwari) [1910493] - locking/qrwlock: Fix ordering in queued_write_lock_slowpath() (Waiman Long) [1950110] - PCI: switchtec: Add missing __iomem tag to fix sparse warnings (Myron Stowe) [1946645] - PCI: switchtec: Add missing __iomem and __user tags to fix sparse warnings (Myron Stowe) [1946645] - PCI: Release IVRS table in AMD ACS quirk (Myron Stowe) [1946645] - PCI/MSI: Forward MSI-X error code in pci_alloc_irq_vectors_affinity() (Myron Stowe) [1946645] - PCI: Remove unused pci_lost_interrupt() (Myron Stowe) [1946645] - PCI: Move PCI_VENDOR_ID_REDHAT definition to pci_ids.h (Myron Stowe) [1946645] - PCI: Fix error in panic message (Myron Stowe) [1946645] - PCI: Replace lkml.org, spinics, gmane with lore.kernel.org (Myron Stowe) [1946645] - PCI: Replace http:// links with https:// (Myron Stowe) [1946645] - PCI: exynos: Rename Exynos to lowercase (Myron Stowe) [1946645] - PCI: Align PCIe capability and PCI accessor return values (Myron Stowe) [1946645] - PCI: Convert PCIe capability PCIBIOS errors to errno (Myron Stowe) [1946645] - PCI: rpadlpar: Make functions static (Myron Stowe) [1946645] - PCI: Fix pci_slot_release() NULL pointer dereference (Myron Stowe) [1946645] - PCI: Fix pci_create_slot() reference count leak (Myron Stowe) [1946645] - PCI: Announce device after early fixups (Myron Stowe) [1946645] - PCI: Always enable ACS even if no ACS Capability (Myron Stowe) [1946645] - PCI: Cache ACS capability offset in device (Myron Stowe) [1946645] - PCI: Reorder pci_enable_acs() and dependencies (Myron Stowe) [1946645] - PCI: Add device even if driver attach failed (Myron Stowe) [1946645] - PCI: Fix pci_cfg_wait queue locking problem (Myron Stowe) [1946645] - PCI/ASPM: Add missing newline in sysfs 'policy' (Myron Stowe) [1946645]- gfs2: report "already frozen/thawed" errors (Bob Peterson) [1932236] - gfs2: move freeze glock outside the make_fs_rw and _ro functions (Bob Peterson) [1932236] - gfs2: Add common helper for holding and releasing the freeze glock (Bob Peterson) [1932236] - gfs2: in signal_our_withdraw wait for unfreeze of _this_ fs only (Bob Peterson) [1932236] - gfs2: Don't freeze the file system during unmount (Bob Peterson) [1932236] - gfs2: Fix regression in freeze_go_sync (Bob Peterson) [1932236] - gfs2: The freeze glock should never be frozen (Bob Peterson) [1932236] - gfs2: When freezing gfs2, use GL_EXACT and not GL_NOCACHE (Bob Peterson) [1932236] - gfs2: Abort gfs2_freeze if io error is seen (Bob Peterson) [1932236] - gfs2: read-only mounts should grab the sd_freeze_gl glock (Bob Peterson) [1932236] - gfs2: freeze should work on read-only mounts (Bob Peterson) [1932236] - bpf: Mark LSM link with rh_mark_used_feature call (Jiri Olsa) [1901039] - Revert "[tools] bpf: selftests: remove test_progs LSM test" (Ondrej Mosnacek) [1901039] - configs: enable BPF LSM (Ondrej Mosnacek) [1901039] - security: Fix hook iteration and default value for inode_copy_up_xattr (Ondrej Mosnacek) [1901039] - security: Fix hook iteration for secid_to_secctx (Ondrej Mosnacek) [1901039] - security: Fix the default value of secid_to_secctx hook (Ondrej Mosnacek) [1901039] - security: Fix the default value of fs_context_parse_param hook (Ondrej Mosnacek) [1901039] - bpf: lsm: Initialize the BPF LSM hooks (Ondrej Mosnacek) [1901039] - security: Refactor declaration of LSM hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the shm_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the sem_* hooks (Ondrej Mosnacek) [1901039] - LSM: fix documentation for the msg_queue_* hooks (Ondrej Mosnacek) [1901039] - LSM: Revive CONFIG_DEFAULT_SECURITY_* for "make oldconfig" (Ondrej Mosnacek) [1901039] - LSM: Ignore "security=" when "lsm=" is specified (Ondrej Mosnacek) [1901039] - LSM: Update function documentation for cap_capable (Ondrej Mosnacek) [1901039] - procfs: add smack subdir to attrs (Ondrej Mosnacek) [1901039] - capability: Initialize as LSM_ORDER_FIRST (Ondrej Mosnacek) [1901039] - LSM: Introduce enum lsm_order (Ondrej Mosnacek) [1901039] - Yama: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LoadPin: Initialize as ordered LSM (Ondrej Mosnacek) [1901039] - LSM: Split LSM preparation from initialization (Ondrej Mosnacek) [1901039] - LSM: Add all exclusive LSMs to ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Separate idea of "major" LSM from "exclusive" LSM (Ondrej Mosnacek) [1901039] - LSM: Refactor "security=" in terms of enable/disable (Ondrej Mosnacek) [1901039] - LSM: Prepare for reorganizing "security=" logic (Ondrej Mosnacek) [1901039] - LSM: Tie enabling logic to presence in ordered list (Ondrej Mosnacek) [1901039] - LSM: Introduce "lsm=" for boottime LSM selection (Ondrej Mosnacek) [1901039] - LSM: Introduce CONFIG_LSM (Ondrej Mosnacek) [1901039] - LSM: Build ordered list of LSMs to initialize (Ondrej Mosnacek) [1901039] - LSM: Lift LSM selection out of individual LSMs (Ondrej Mosnacek) [1901039] - LSM: Plumb visibility into optional "enabled" state (Ondrej Mosnacek) [1901039] - LSM: Provide separate ordered initialization (Ondrej Mosnacek) [1901039] - LSM: Introduce LSM_FLAG_LEGACY_MAJOR (Ondrej Mosnacek) [1901039] - LSM: Don't ignore initialization failures (Ondrej Mosnacek) [1901039] - LSM: Provide init debugging infrastructure (Ondrej Mosnacek) [1901039] - LSM: Record LSM name in struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Convert security_initcall() into DEFINE_LSM() (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Move LSM_TABLE into INIT_DATA (Ondrej Mosnacek) [1901039] - LSM: Convert from initcall to struct lsm_info (Ondrej Mosnacek) [1901039] - LSM: Remove initcall tracing (Ondrej Mosnacek) [1901039] - LSM: Rename .security_initcall section to .lsm_info (Ondrej Mosnacek) [1901039] - vmlinux.lds.h: Avoid copy/paste of security_init section (Ondrej Mosnacek) [1901039] - LSM: Correctly announce start of LSM initialization (Ondrej Mosnacek) [1901039] - proc: save 2 atomic ops on write to "/proc/*/attr/*" (Ondrej Mosnacek) [1901039] - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe (Jaroslav Kysela) [1870724] - ALSA: usb-audio: fix use after free in usb_audio_disconnect (Jaroslav Kysela) [1870724] - ALSA: usb-audio: Disable USB autosuspend properly in setup_disable_autosuspend() (Jaroslav Kysela) [1870724] - Bluetooth: btusb: Fix the autosuspend enable and disable (Gopal Tiwari) [1927375] - flow_dissector: fix TTL and TOS dissection on IPv4 fragments (Davide Caratti) [1882607] - net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0 (Balazs Nemeth) [1922898] - net: check if protocol extracted by virtio_net_hdr_set_proto is correct (Balazs Nemeth) [1922898] - redhat/configs: Add CONFIG_PINCTRL_ALDERLAKE (David Arcari) [1840250] - pinctrl: intel: Add Intel Alder Lake-S pin controller support (David Arcari) [1840250] - cpufreq: intel_pstate: Remove repeated word (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Get per-CPU max freq via MSR_HWP_CAPABILITIES if available (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Rename two functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Always read hwp_cap_cached with READ_ONCE() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: remove obsolete functions (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use HWP capabilities in intel_cpufreq_adjust_perf() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix fast-switch fallback path (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Use most recent guaranteed performance values (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Implement the ->adjust_perf() callback (Puneet Sethi) [1926919] - cpufreq: Add special-purpose fast-switching callback for drivers (Puneet Sethi) [1926919] - cpufreq: schedutil: Add util to struct sg_cpu (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Simplify intel_cpufreq_update_pstate() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account (Puneet Sethi) [1926919] - cpufreq: Add strict_target to struct cpufreq_policy (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET (Puneet Sethi) [1926919] - cpufreq: Introduce governor flags (Puneet Sethi) [1926919] - cpufreq: schedutil: Don't skip freq update if need_freq_update is set (Puneet Sethi) [1926919] - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is set (Puneet Sethi) [1926919] - cpufreq: Introduce cpufreq_driver_test_flags() (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Avoid missing HWP max updates in passive mode (Puneet Sethi) [1926919] - cpufreq: schedutil: restore cached freq when next_f is not changed (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Delete intel_pstate sysfs if failed to register the driver (Puneet Sethi) [1926919] - cpufreq: intel_pstate: Fix missing return statement (Puneet Sethi) [1926919] - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag (Puneet Sethi) [1926919] - ACPI: processor: Fix build when CONFIG_ACPI_PROCESSOR=m (Vitaly Kuznetsov) [1929266] - ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead() (Vitaly Kuznetsov) [1929266] - x86/ioapic: Ignore IRQ2 again (Vitaly Kuznetsov) [1929266]- selinux: fix deadlock in security_set_bools() (Ondrej Mosnacek) [1924230] - sctp: move sk_route_caps check and set into sctp_outq_flush_transports (Xin Long) [1946733] - sctp: bring inet(6)_skb_parm back to sctp_input_cb (Xin Long) [1946733] - sctp: enable udp tunneling socks (Xin Long) [1946733] - sctp: handle the init chunk matching an existing asoc (Xin Long) [1946733] - sctp: add the error cause for new encapsulation port restart (Xin Long) [1946733] - sctp: support for sending packet over udp6 sock (Xin Long) [1946733] - sctp: support for sending packet over udp4 sock (Xin Long) [1946733] - sctp: call sk_setup_caps in sctp_packet_transmit instead (Xin Long) [1946733] - sctp: add udphdr to overhead when udp_port is set (Xin Long) [1946733] - sctp: allow changing transport encap_port by peer packets (Xin Long) [1946733] - sctp: add SCTP_REMOTE_UDP_ENCAPS_PORT sockopt (Xin Long) [1946733] - sctp: add encap_port for netns sock asoc and transport (Xin Long) [1946733] - sctp: add encap_err_lookup for udp encap socks (Xin Long) [1946733] - sctp: create udp6 sock and set its encap_rcv (Xin Long) [1946733] - sctp: create udp4 sock and add its encap_rcv (Xin Long) [1946733] - udp: support sctp over udp in skb_udp_tunnel_segment (Xin Long) [1946733] - udp6: move the mss check after udp gso tunnel processing (Xin Long) [1946733] - udp: check udp sock encap_type in __udp_lib_err (Xin Long) [1946733] - sctp: copy the optval from user space in sctp_setsockopt (Xin Long) [1946733] - net: Convert protocol error handlers from void to int (Xin Long) [1946733] - Enable CONFIG_ENERGY_MODEL (Phil Auld) [1938339] - proc/sysctl: add shared variables for range check (Phil Auld) [1938339] - Enable CONFIG_CPU_FREQ_GOV_SCHEDUTIL for all architectures (Phil Auld) [1938339] - PM / hibernate: cast PAGE_SIZE to int when comparing with error code (Chris von Recklinghausen) [1934033] - mm: revert fix false-positive OVERCOMMIT_GUESS failures (Rafael Aquini) [1913045 1908668] - redhat/config: Enable CONFIG_PAGE_POISONING (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_ZERO (Waiman Long) [1942149] - mm, page_poison: remove CONFIG_PAGE_POISONING_NO_SANITY (Waiman Long) [1942149] - kernel/power: allow hibernation with page_poison sanity checking (Waiman Long) [1942149] - mm, page_poison: use static key more efficiently (Waiman Long) [1942149] - mm, page_alloc: do not rely on the order of page_poison and init_on_alloc/free parameters (Waiman Long) [1942149] - mm/page_alloc: clear all pages in post_alloc_hook() with init_on_alloc=1 (Waiman Long) [1942149] - arch, mm: make kernel_page_present() always available (Waiman Long) [1942149] - arch, mm: restore dependency of __kernel_map_pages() on DEBUG_PAGEALLOC (Waiman Long) [1942149] - PM: hibernate: make direct map manipulations more explicit (Waiman Long) [1942149] - mm: introduce debug_pagealloc_{map,unmap}_pages() helpers (Waiman Long) [1942149] - mm: rename page_order() to buddy_order() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __free_pages_core() (Waiman Long) [1942149] - mm/page_alloc: move pages to tail in move_to_free_list() (Waiman Long) [1942149] - mm/page_alloc: place pages to tail in __putback_isolated_page() (Waiman Long) [1942149] - mm/page_alloc: convert "report" flag of __free_one_page() to a proper flag (Waiman Long) [1942149] - mm/page_alloc: drop stale pageblock comment in memmap_init_zone*() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page onlining (Waiman Long) [1942149] - mm/page_isolation: simplify return value of start_isolate_page_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop nr_isolate_pageblock in offline_pages() (Waiman Long) [1942149] - mm/page_alloc: simplify __offline_isolated_pages() (Waiman Long) [1942149] - mm/memory_hotplug: simplify page offlining (Waiman Long) [1942149] - mm/memory_hotplug: enforce section granularity when onlining/offlining (Waiman Long) [1942149] - mm/memory_hotplug: inline __offline_pages() into offline_pages() (Waiman Long) [1942149] - mm/page_poison.c: replace bool variable with static key (Waiman Long) [1942149] - mm/page_alloc.c: fix early params garbage value accesses (Waiman Long) [1942149] - mm/memory_hotplug: document why shuffle_zone() is relevant (Waiman Long) [1942149] - mm: replace '---help---' in Kconfig files with 'help' (Waiman Long) [1942149] - mm/memory_hotplug: fix a typo in comment "recoreded"->"recorded" (Waiman Long) [1942149] - mm: Allow to offline unmovable PageOffline() pages via MEM_GOING_OFFLINE (Waiman Long) [1942149] - x86/mm/cpa: Flush direct map alias during cpa (Waiman Long) [1942149] - mm/page_alloc: simplify page_is_buddy() for better code readability (Waiman Long) [1942149] - mm/memory.c: add apply_to_existing_page_range() helper (Waiman Long) [1942149] - x86/mm/pat: Move the memtype related files to arch/x86/mm/pat/ (Waiman Long) [1942149] - x86/mm/pat: Rename pat_rbtree.c to pat_interval.c (Waiman Long) [1942149] - mm/memory_hotplug: online_pages cannot be 0 in online_pages() (Waiman Long) [1942149] - mm/memory_hotplug: make sure the pfn is aligned to the order when onlining (Waiman Long) [1942149] - mm/memory_hotplug: simplify online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug: drop PageReserved() check in online_pages_range() (Waiman Long) [1942149] - mm/memory_hotplug.c: use PFN_UP / PFN_DOWN in walk_system_ram_range() (Waiman Long) [1942149] - mm/page_poison.c: fix a typo in a comment (Waiman Long) [1942149] - mm/slab: Remove store_stackinfo() (Waiman Long) [1942149] - mm/resource: Let walk_system_ram_range() search child resources (Waiman Long) [1942149] - mm/page_alloc.c: use a single function to free page (Waiman Long) [1942149] - mm/page_alloc.c: free order-0 pages through PCP in page_frag_free() (Waiman Long) [1942149] - x86/mm/cpa: Fix set_mce_nospec() (Waiman Long) [1942149] - x86/mm/cpa: Rename @addrinarray to @numpages (Waiman Long) [1942149] - x86/mm/cpa: Better use CLFLUSHOPT (Waiman Long) [1942149] - x86/mm/cpa: Fold cpa_flush_range() and cpa_flush_array() into a single cpa_flush() function (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::numpages invariant (Waiman Long) [1942149] - x86/mm/cpa: Optimize cpa_flush_array() TLB invalidation (Waiman Long) [1942149] - x86/mm/cpa: Simplify the code after making cpa->vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Make cpa_data::vaddr invariant (Waiman Long) [1942149] - x86/mm/cpa: Add __cpa_addr() helper (Waiman Long) [1942149] - x86/mm/cpa: Add ARRAY and PAGES_ARRAY selftests (Waiman Long) [1942149] - resource/docs: Complete kernel-doc style function documentation (Waiman Long) [1942149] - resource/docs: Fix new kernel-doc warnings (Waiman Long) [1942149] - resource: Clean it up a bit (Waiman Long) [1942149] - mm: clarify CONFIG_PAGE_POISONING and usage (Waiman Long) [1942149] - selftests: kvm: Raise the default timeout to 120 seconds (Emanuele Giuseppe Esposito) [1894828] - KVM: Raise the maximum number of user memslots (Emanuele Giuseppe Esposito) [1894828] - block: recalculate segment count for multi-segment discards correctly (Ming Lei) [1922370] - i40e: Fix VFs not created (Stefan Assmann) [1875338] - vfs: fix page locking deadlocks when deduping files (Gao Xiang) [1916242]- tg3: improve PCI VPD access (Jonathan Toppins) [1921456] - scsi: target: pscsi: Clean up after failure in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: pscsi: Avoid OOM in pscsi_map_sg() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix memory leak caused by wrong uio usage (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Move some functions without code change (Maurizio Lombardi) [1939458] - scsi: target: core: Prevent underflow for service actions (Maurizio Lombardi) [1939458] - scsi: target: core: Add cmd length set before cmd complete (Maurizio Lombardi) [1939458] - scsi: target: sbp: Remove unneeded semicolon (Maurizio Lombardi) [1939458] - scsi: target: core: Change ASCQ for residual write (Maurizio Lombardi) [1939458] - scsi: target: core: Signal WRITE residuals (Maurizio Lombardi) [1939458] - scsi: target: core: Set residuals for 4Kn devices (Maurizio Lombardi) [1939458] - scsi: target: core: Remove in_interrupt() check in transport_handle_cdb_direct() (Maurizio Lombardi) [1939458] - scsi: target: core: Replace in_interrupt() usage in target_submit_cmd_map_sgls() (Maurizio Lombardi) [1939458] - scsi: target: alua: Remove in_interrupt() usage in core_alua_check_nonop_delay() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Redo iscsit_check_session_usage_count() return code (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_check_session_usage_count() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Avoid in_interrupt() usage in iscsit_close_session() (Maurizio Lombardi) [1939458] - scsi: target: iscsi: Fix typo in comment (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix use-after-free of se_cmd->priv (Maurizio Lombardi) [1939458] - scsi: target: core: Fix fall-through warnings for Clang (Maurizio Lombardi) [1939458] - scsi: tcm_loop: Allow queues, can_queue and cmd_per_lun to be settable (Maurizio Lombardi) [1939458] - scsi: target: Make state_list per CPU (Maurizio Lombardi) [1939458] - scsi: target: Drop sess_cmd_lock from I/O path (Maurizio Lombardi) [1939458] - scsi: target: Remove TARGET_SCF_LOOKUP_LUN_FROM_TAG (Maurizio Lombardi) [1939458] - scsi: target: Fix cmd_count ref leak (Maurizio Lombardi) [1939458] - scsi: target: Fix LUN ref count handling (Maurizio Lombardi) [1939458] - scsi: target: Return COMPARE AND WRITE miscompare offsets (Maurizio Lombardi) [1939458] - scsi: target: Split out COMPARE AND WRITE memcmp into helper (Maurizio Lombardi) [1939458] - scsi: target: Rename cmd.bad_sector to cmd.sense_info (Maurizio Lombardi) [1939458] - scsi: target: Rename struct sense_info to sense_detail (Maurizio Lombardi) [1939458] - scsi: target: tcmu: scatter_/gather_data_area() rework (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Replace zero-length array with flexible-array member (Maurizio Lombardi) [1939458] - scsi: target: rd: Drop double zeroing (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize scatter_data_area() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Optimize queue_cmd_ring() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Join tcmu_cmd_get_data_length() and tcmu_cmd_get_block_cnt() (Maurizio Lombardi) [1939458] - scsi: target: tcmu: Add missing newline when printing parameters (Maurizio Lombardi) [1939458] - scsi: target: Remove redundant assignment to variable 'ret' (Maurizio Lombardi) [1939458] - x86/resctrl: Fix AMD L3 QOS CDP enable/disable (Wei Huang) [1868984] - i2c: i801: Add support for Intel Alder Lake PCH-S (David Arcari) [1840242] - esp: delete NETIF_F_SCTP_CRC bit from features for esp offload (Xin Long) [1815560] - net/sched: act_ct: clear post_ct if doing ct_clear (Marcelo Ricardo Leitner) [1941889] - net: Change dev parameter to const in netif_device_present() (Josef Oskera) [1941728] - [x86] x86/mce: Increase maximum number of banks to 64 (Terry Bowman) [1931679]- scsi: megaraid_sas: Fix a bunch of misnamed functions in their headers (Tomas Henzl) [1924687] - scsi: megaraid_sas: Replace sdev_busy with local counter (Tomas Henzl) [1924687] - scsi: megaraid: Fix ifnullfree.cocci warnings (Tomas Henzl) [1924687] - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression (Tomas Henzl) [1924687] - Revert "Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug"" (Tomas Henzl) [1924687] - Revert "scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug" (Tomas Henzl) [1924687] - scsi: megaraid_sas: Update function description (Tomas Henzl) [1924687] - scsi: megaraid_sas: Use generic power management (Tomas Henzl) [1924687] - megaraid_sas(treewide): Use fallthrough pseudo-keyword (Tomas Henzl) [1924687] - scsi: megaraid_sas: Drop PCI wakeup calls from .resume (Tomas Henzl) [1924687] - scsi: megaraid_sas: Check user-provided offsets (Tomas Henzl) [1924687] - scsi: mpt3sas: Update driver version to 37.101.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post array allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply post buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force reply buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force sense buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force chain buffer allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Force PCIe scatterlist allocations to be within same 4 GB region (Tomas Henzl) [1922058] - scsi: mpt3sas: Replace unnecessary dynamic allocation with a static one (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix some kernel-doc misnaming issues (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a couple of misdocumented functions/params (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix a bunch of potential naming doc-rot (Tomas Henzl) [1922058] - scsi: mpt3sas: Move a little data from the stack onto the heap (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix misspelling of _base_put_smid_default_atomic() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 37.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Additional diagnostic buffer query interface (Tomas Henzl) [1922058] - scsi: mpt3sas: Add support for shared host tagset for CPU hotplug (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ReplyPostFree pool allocation (Tomas Henzl) [1922058] - scsi: mpt3sas: Simplify bool comparison (Tomas Henzl) [1922058] - scsi: mpt3sas: Signedness bug in _base_get_diag_triggers() (Tomas Henzl) [1922058] - scsi: mpt3sas: Update driver version to 36.100.00.00 (Tomas Henzl) [1922058] - scsi: mpt3sas: Handle trigger page after firmware update (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent MPI trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent SCSI sense trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Event trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent Master trigger page (Tomas Henzl) [1922058] - scsi: mpt3sas: Add persistent trigger pages support (Tomas Henzl) [1922058] - scsi: mpt3sas: Sync time periodically between driver and firmware (Tomas Henzl) [1922058] - scsi: mpt3sas: Increase IOCInit request timeout to 30s (Tomas Henzl) [1922058] - scsi: mpt3sas: Fix ioctl timeout (Tomas Henzl) [1922058] - scsi: mpt3sas: Remove in_interrupt() (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Use generic power management (Tomas Henzl) [1922058] - scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume (Tomas Henzl) [1922058] - scsi: mpt3sas: mpt3sas_scsih: Fix function documentation formatting (Tomas Henzl) [1922058] - mpt3sas: Use fallthrough pseudo-keyword (Tomas Henzl) [1922058] - net: add inline function skb_csum_is_sctp (Josef Oskera) [1939341] - psample: Fix user API breakage (Ivan Vecera) [1939499] - net: psample: Fix netlink skb length with tunnel info (Ivan Vecera) [1939499] - net: psample: Add tunnel support (Ivan Vecera) [1939499] - net: core: introduce struct netdev_nested_priv for nested interface infrastructure (Ivan Vecera) [1939402] - net: add function dev_fetch_sw_netstats for fetching pcpu_sw_netstats (Josef Oskera) [1935717] - net: core: add devm_netdev_alloc_pcpu_stats (Josef Oskera) [1935717] - net: core: add dev_sw_netstats_tx_add (Josef Oskera) [1935717] - net: netdevice.h: sw_netstats_rx_add helper (Josef Oskera) [1935717] - net: netdevice: Add operation ndo_sk_get_lower_dev (Josef Oskera) [1935709] - genirq: Provide irq_get_effective_affinity() (Josef Oskera) [1935670]- locking/locktorture: Fix incorrect use of ww_acquire_ctx in ww_mutex test (Waiman Long) [1871851] - locking/locktorture: Pass thread id to lock/unlock functions (Waiman Long) [1871851] - locking/ww_mutex: Remove DEFINE_WW_MUTEX() macro (Waiman Long) [1871851] - locking/locktorture: Fix false positive circular locking splat in ww_mutex test (Waiman Long) [1871851] - locking/ww_mutex: Fix acquire/release imbalance in ww_acquire_init()/ww_acquire_fini() (Waiman Long) [1871851] - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling (Waiman Long) [1871851] - locking: Remove duplicate include of percpu-rwsem.h (Waiman Long) [1871851] - locktorture: Invoke percpu_free_rwsem() to do percpu-rwsem cleanup (Waiman Long) [1871851] - locktorture: Prevent hangs for invalid arguments (Waiman Long) [1871851] - locktorture: Ignore nreaders_stress if no readlock support (Waiman Long) [1871851] - locktorture: Track time of last ->writeunlock() (Waiman Long) [1871851] - locktorture: Make function torture_percpu_rwsem_init() static (Waiman Long) [1871851] - sched,locktorture: Convert to sched_set_fifo() (Waiman Long) [1871851] - locktorture: Use true and false to assign to bool variables (Waiman Long) [1871851] - locktorture: Print ratio of acquisitions, not failures (Waiman Long) [1871851] - locktorture: NULL cxt.lwsa and cxt.lrsa to allow bad-arg detection (Waiman Long) [1871851] - locking/locktorture: Convert to SPDX license identifier (Waiman Long) [1871851] - tty: Fix ->session locking (Chris von Recklinghausen) [1908059] {CVE-2020-29660} - net: skbext: fix secpath use-after-free with ip fragmentation (Sabrina Dubroca) [1901454]- nfs: we don't support removing system.nfs4_acl (Scott Mayhew) [1944659] - redhat/configs: Disable CONFIG_INFINIBAND_HNS* (Kamal Heib) [1941259] - mm: Revert "remove the account_page_dirtied export" (Waiman Long) [1941257] - Revert "[netdrv] net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1940842]- geneve: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - vxlan: do not modify the shared tunnel info when PMTU triggers an ICMP reply (Antoine Tenart) [1941753] - net: Add netif_rx_any_context() (Josef Oskera) [1939466] - bitfield.h: add FIELD_MAX() and field_max() (Ivan Vecera) [1939478] - md/raid5: cast chunk_sectors to sector_t value (Nigel Croxon) [1921468] - md: Set prev_flush_start and flush_bio in an atomic way (Nigel Croxon) [1921468] - md/cluster: fix deadlock when node is doing resync job (Nigel Croxon) [1921468] - md/cluster: block reshape with remote resync job (Nigel Croxon) [1921468] - md: use current request time as base for ktime comparisons (Nigel Croxon) [1921468] - md: add comments in md_flush_request() (Nigel Croxon) [1921468] - md: improve variable names in md_flush_request() (Nigel Croxon) [1921468] - md/raid10: initialize r10_bio->read_slot before use. (Nigel Croxon) [1921468] - md: fix a warning caused by a race between concurrent md_ioctl()s (Nigel Croxon) [1921468] - Revert "md: improve variable names in md_flush_request()" (Nigel Croxon) [1921468] - Revert "md: Set prev_flush_start and flush_bio in an atomic way" (Nigel Croxon) [1921468] - KVM: nSVM: fix running nested guests when npt=0 (Emanuele Giuseppe Esposito) [1799073] - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent (Julia Denham) [1908311] {CVE-2020-35508} - Revert "redhat: switch secureboot kernel image signing to release keys" (Bruno Meneguele) - redhat: switch secureboot kernel image signing to release keys (Jan Stancek) - Revert "[md] md/raid5: add a new member of offset into r5dev" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: make async_copy_data() to support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid5: add new xor function to support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: convert to new xor compution interface" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let syndrome computor support different page offset" (Nigel Croxon) [1936903] - Revert "[crypto] md/raid6: let async recovery function support different page offset" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: let multiple devices of stripe_head share page" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: resize stripe_head when reshape array" (Nigel Croxon) [1936903] - Revert "[md] md/raid5: reallocate page array after setting new stripe_size" (Nigel Croxon) [1936903] - ACPI: PNP: compare the string length in the matching_id() (Mark Langsdorf) [1933702] - ceph: add missing break when parsing "nowsync" mount option (Jeff Layton) [1932753] - get_maintainer.conf: Update with new location of RHMAINTAINERS (Prarit Bhargava) - redhat: make pathspec exclusion compatible with old git versions (Herton R. Krzesinski) - redhat/scripts: Update merge-subtrees.sh with new subtree location (Prarit Bhargava) - tree: Add RHMAINTAINERS soft link in 8.4 (Prarit Bhargava) - tree: remove existing redhat/rhdocs subtree in 8.4 (Prarit Bhargava)- ntp: Use freezable workqueue for RTC synchronization (Phil Auld) [1793880] - ntp: Fix RTC synchronization on 32-bit platforms (Phil Auld) [1793880] - ntp: Make the RTC synchronization more reliable (Phil Auld) [1793880] - PCI: rpadlpar: Fix potential drc_name corruption in store functions (Gustavo Luiz Duarte) [1938116] - selftests: kvm: Add basic Hyper-V clocksources tests (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Don't touch TSC page values when guest opted for re-enlightenment (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Track Hyper-V TSC page status (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Prevent using not-yet-updated TSC page by secondary CPUs (Vitaly Kuznetsov) [1931782] - KVM: x86: hyper-v: Limit guest to writing zero to HV_X64_MSR_TSC_EMULATION_STATUS (Vitaly Kuznetsov) [1931782] - drm/i915/guc: Update to use firmware v49.0.1 (Dave Airlie) [1935281] {CVE-2020-12362} - time: Enable __kernel_timespec for 32-bit vdso build (Waiman Long) [1936282] - lib/idr.c: document calling context for IDA APIs mustn't use locks (Chris von Recklinghausen) [1917764] - ida: Free allocated bitmap in error path (Chris von Recklinghausen) [1917764] - radix tree test suite: Fix compilation (Chris von Recklinghausen) [1917764] - vmalloc: convert to XArray (Chris von Recklinghausen) [1917764] - mm: pass addr as unsigned long to vb_free (Chris von Recklinghausen) [1917764] - radix tree: Remove multiorder support (Chris von Recklinghausen) [1917764] - radix tree test: Convert multiorder tests to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_delete_rcu to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Convert item_kill_tree to XArray (Chris von Recklinghausen) [1917764] - radix tree tests: Move item_insert_order (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove multiorder benchmarking (Chris von Recklinghausen) [1917764] - radix tree test suite: Remove __item_insert (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_clear_tags (Chris von Recklinghausen) [1917764] - radix tree: Remove split/join code (Chris von Recklinghausen) [1917764] - radix tree: Remove radix_tree_update_node_t (Chris von Recklinghausen) [1917764] - mm: Convert truncate to XArray (Chris von Recklinghausen) [1917764] - copy rh_kabi.h to tools/testing/radix-tree/linux (Chris von Recklinghausen) [1917764]- tick: Get rid of tick_period (Phil Auld) [1936504] - tick/sched: Release seqcount before invoking calc_load_global() (Phil Auld) [1936504] - tick/sched: Optimize tick_do_update_jiffies64() further (Phil Auld) [1936504] - tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64() (Phil Auld) [1936504] - tick/sched: Use tick_next_period for lockless quick check (Phil Auld) [1936504] - tick: Document protections for tick related data (Phil Auld) [1936504] - tick/broadcast: Serialize access to tick_next_period (Phil Auld) [1936504] - timekeeping: Split jiffies seqlock (Phil Auld) [1936504] - tick/sched: Annotate lockless access to last_jiffies_update (Phil Auld) [1936504] - net, sctp, filter: remap copy_from_user failure error (Hangbin Liu) [1929476] {CVE-2021-20239} - tty: serial_core: Set port active bit in uart_port_activate (Artem Savkov) [1915177] - cgroup: fix psi monitor for root cgroup (Waiman Long) [1936868] - cgroup-v1: add disabled controller check in cgroup1_parse_param() (Waiman Long) [1936868] - cgroup: cgroup.{procs,threads} factor out common parts (Waiman Long) [1936868] - cpuset: fix typos in comments (Waiman Long) [1936868] - kernel: cgroup: Mundane spelling fixes throughout the file (Waiman Long) [1936868] - cgroup/cgroup.c: replace 'of->kn->priv' with of_cft() (Waiman Long) [1936868] - cgroup: Zero sized write should be no-op (Waiman Long) [1936868] - cgroup: remove redundant kernfs_activate in cgroup_setup_root() (Waiman Long) [1936868] - cgroup: Use generic ns_common::count (Waiman Long) [1936868] - ns: Add a common refcount into ns_common (Waiman Long) [1936868] - cgroup: add cpu.stat file to root cgroup (Waiman Long) [1936868] - cgroup: Remove stale comments (Waiman Long) [1936868] - cgroup: Restructure release_agent_path handling (Waiman Long) [1936868] - cgroup: add cgroup_may_write() helper (Waiman Long) [1936868] - cgroup: refactor fork helpers (Waiman Long) [1936868] - cgroup: add cgroup_get_from_file() helper (Waiman Long) [1936868] - cgroup: unify attach permission checking (Waiman Long) [1936868] - cpuset: Make cpuset hotplug synchronous (Waiman Long) [1936868] - cgroup: Clean up css_set task traversal (Waiman Long) [1936868] - cgroup.c: Use built-in RCU list checking (Waiman Long) [1936868] - fork: record start_time late (Waiman Long) [1936868] - sched/deadline: Reduce rq lock contention in dl_add_task_root_domain() (Phil Auld) [1936501] - sched/deadline: Fix sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Optimize sched_dl_global_validate() (Phil Auld) [1936501] - sched/deadline: Fix a typo in a comment (Phil Auld) [1936501] - sched/deadline: Implement fallback mechanism for !fit case (Phil Auld) [1936501] - sched/deadline: Make DL capacity-aware (Phil Auld) [1936501] - sched/deadline: Improve admission control for asymmetric CPU capacities (Phil Auld) [1936501] - sched/deadline: Add dl_bw_capacity() (Phil Auld) [1936501] - sched/deadline: Optimize dl_bw_cpus() (Phil Auld) [1936501] - sched/deadline: Impose global limits on sched_attr::sched_period (Phil Auld) [1936501] - ibmvnic: fix a race between open and reset (Diego Domingos) [1940042] - ibmvnic: Set to CLOSED state even on error (Diego Domingos) [1940042] - ibmvnic: device remove has higher precedence over reset (Diego Domingos) [1940042] - ibmvnic: merge do_change_param_reset into do_reset (Diego Domingos) [1940042] - ibmvfc: disable MQ channelization by default (Gustavo Luiz Duarte) [1939359] - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process() (Steve Dickson) [1926945] - scsi: iscsi: Verify lengths on passthrough PDUs (Chris Leech) [1930833] {CVE-2021-27365} - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE (Chris Leech) [1930856] {CVE-2021-27363} - scsi: iscsi: Restrict sessions and handles to admin capabilities (Chris Leech) [1930809] {CVE-2021-27364} - futex: Handle faults correctly for PI futexes (Waiman Long) [1924635] - futex: Simplify fixup_pi_state_owner() (Waiman Long) [1924635] - futex: Use pi_state_update_owner() in put_pi_state() (Waiman Long) [1924635] - rtmutex: Remove unused argument from rt_mutex_proxy_unlock() (Waiman Long) [1924635] - futex: Provide and use pi_state_update_owner() (Waiman Long) [1924635] - futex: Replace pointless printk in fixup_owner() (Waiman Long) [1924635] - futex: Ensure the correct return value from futex_lock_pi() (Waiman Long) [1924635] - futex: Don't enable IRQs unconditionally in put_pi_state() (Waiman Long) [1924635] - futex: Fix incorrect should_fail_futex() handling (Waiman Long) [1924635] - futex: Consistently use fshared as boolean (Waiman Long) [1924635] - futex: Remove needless goto's (Waiman Long) [1924635] - futex: Remove put_futex_key() (Waiman Long) [1924635] - NFS: Correct size calculation for create reply length (Benjamin Coddington) [1934903] - SUNRPC: Set memalloc_nofs_save() for sync tasks (Benjamin Coddington) [1934098] - net/mlx5: CT: Add support for matching on ct_state reply flag (Alaa Hleihel) [1919651] - net/mlx5e: CT: manage the lifetime of the ct entry object (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use per flow counter when CT flow accounting is enabled (Alaa Hleihel) [1919651] - net/mlx5e: Fix a use after free on error in mlx5_tc_ct_shared_counter_get() (Alaa Hleihel) [1919651] - net/mlx5e: CT: Use the same counter for both directions (Alaa Hleihel) [1919651] - ethtool: fix the check logic of at least one channel for RX/TX (Ivan Vecera) [1907406]- [scsi] scsi: qedi: Correct max length of CHAP secret (Nilesh Javali) [1909180] - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Bruno Meneguele) - CI: Enable RT verification (Bruno Meneguele) - KVM: SVM: Clear the CR4 register on reset (Vitaly Kuznetsov) [1920788] - net: flow_offload: Add original direction flag to ct_metadata (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Add match on the ct_state reply flag (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower add CT_FLAGS_INVALID flag support (Marcelo Ricardo Leitner) [1921946] - net/sched: cls_flower: Reject invalid ct_state flags rules (Marcelo Ricardo Leitner) [1921946] - netlink: add mask validation (Marcelo Ricardo Leitner) [1921946] - netlink: create helpers for checking type is an int (Marcelo Ricardo Leitner) [1921946] - netlink: policy: correct validation type check (Marcelo Ricardo Leitner) [1921946] - netlink: make NLA_BINARY validation more flexible (Marcelo Ricardo Leitner) [1921946]- md: Set prev_flush_start and flush_bio in an atomic way (Xiao Ni) [1901598] - md: improve variable names in md_flush_request() (Xiao Ni) [1901598] - hpsa: fix regression issue for old controllers (Joseph Szczypek) [1925711] - scsi: hpsa: Correct dev cmds outstanding for retried cmds (Joseph Szczypek) [1925711] - vt: Disable KD_FONT_OP_COPY (Dave Airlie) [1903937] {CVE-2020-28974} - drm/i915/rkl: Remove require_force_probe protection (Lyude Paul) [1937558] - drm/i915/tgl/psr: Disable PSR on Tigerlake for now (Lyude Paul) [1924702] - dm raid: fix discard limits for raid0 and raid10 (Mike Snitzer) [1934274] - dm: fix __send_changing_extent_only to avoid duplicate dm_target_offset() (Mike Snitzer) [1934274] - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing (Waiman Long) [1934212] - mm: memcontrol: fix slub memory accounting (Waiman Long) [1934212] - mm: memcontrol: fix swap undercounting in cgroup2 (Waiman Long) [1934212] - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving (Waiman Long) [1934212] - mm, slub: better heuristic for number of cpus when calculating slab order (Waiman Long) [1934212] - Revert "mm: memcontrol: avoid workload stalls when lowering memory.high" (Waiman Long) [1934212] - selftests/bpf: Set gopt opt_class to 0 if get tunnel opt failed (Hangbin Liu) [1931732] - selftests/bpf: No need to drop the packet when there is no geneve opt (Hangbin Liu) [1931732]- drm/i915/gen11+: Only load DRAM information from pcode (Lyude Paul) [1934537] - drm/i915/dg1: Wait for pcode/uncore handshake at startup (Lyude Paul) [1934537] - powercap/intel_rapl: add support for TigerLake Desktop (David Arcari) [1932457] - powerpc/perf: Fix handling of privilege level checks in perf interrupt context (Gustavo Luiz Duarte) [1918411] - NFSv4.2: fix error return on memory allocation failure (Scott Mayhew) [1917689] - NFSv4.2: improve page handling for GETXATTR (Scott Mayhew) [1917689] - NFSv4.2: Fix up the get/listxattr calls to rpc_prepare_reply_pages() (Scott Mayhew) [1917689] - NFS: Fix rpcrdma_inline_fixup() crash with new LISTXATTRS operation (Scott Mayhew) [1917689] - SUNRPC: Fix up xdr_set_page() (Benjamin Coddington) [1917689] - NFSv4: Fix open coded xdr_stream_remaining() (Benjamin Coddington) [1917689] - SUNRPC: Clean up the handling of page padding in rpc_prepare_reply_pages() (Benjamin Coddington) [1917689] - SUNRPC: Fix up xdr_read_pages() to take arbitrary object lengths (Benjamin Coddington) [1917689] - SUNRPC: Clean up helpers xdr_set_iov() and xdr_set_page_base() (Benjamin Coddington) [1917689] - SUNRPC: Split out a function for setting current page (Benjamin Coddington) [1917689] - SUNRPC: Fix up typo in xdr_init_decode() (Benjamin Coddington) [1917689] - NFSv4: Fix the alignment of page data in the getdeviceinfo reply (Benjamin Coddington) [1917689] - net: fix pos incrementment in ipv6_route_seq_next (Lorenzo Bianconi) [1926608] - ipv6_route_seq_next should increase position index (Lorenzo Bianconi) [1926608] - bpf: Clear subreg_def for global function return values (Yauheni Kaliuta) [1934062] - igc: Fix returning wrong statistics (Corinna Vinschen) [1910873]- KVM: nSVM: prepare guest save area while is_guest_mode is true (Vitaly Kuznetsov) [1860223] - redhat: add CI file for kernel-private (Bruno Meneguele) - CI: Drop unused variable (Veronika Kabatova) - CI: Enable RT verification (Veronika Kabatova) - redhat: use tags from git notes for zstream to generate changelog (Frantisek Hrbata) - redhat: open the RHEL-8.5 development (Bruno Meneguele) [1930504]- KVM: SVM: Make symbol 'svm_gp_erratum_intercept' static (Paolo Bonzini) [1769283] - KVM: SVM: Fix #GP handling for doubly-nested virtualization (Paolo Bonzini) [1769283] - KVM: SVM: Add support for SVM instruction address check change (Paolo Bonzini) [1769283] - KVM: SVM: Add emulation support for #GP triggered by SVM instructions (Paolo Bonzini) [1769283] - KVM: x86: Factor out x86 instruction emulation with decoding (Paolo Bonzini) [1769283] - gfs2: In gfs2_ail1_start_one unplug the IO when needed (Bob Peterson) [1648446] - gfs2: Free rd_bits later in gfs2_clear-rgrpd to fix use-after-free (Bob Peterson) [1648446] - gfs2: Only access gl_delete for iopen glocks (Bob Peterson) [1648446] - gfs2: Fix case in which ail writes are done to jdata holes (Bob Peterson) [1648446] - gfs2: simplify gfs2_block_map (Bob Peterson) [1648446] - gfs2: Only set PageChecked if we have a transaction (Bob Peterson) [1648446] - gfs2: don't lock sd_ail_lock in gfs2_releasepage (Bob Peterson) [1648446] - gfs2: make gfs2_ail1_empty_one return the count of active items (Bob Peterson) [1648446] - gfs2: Wipe jdata and ail1 in gfs2_journal_wipe, formerly gfs2_meta_wipe (Bob Peterson) [1648446] - gfs2: enhance log_blocks trace point to show log blocks free (Bob Peterson) [1648446] - gfs2: rename gfs2_write_full_page to gfs2_write_jdata_page, remove parm (Bob Peterson) [1648446] - PM: hibernate: flush swap writer after marking (Lenny Szubowicz) [1898677] - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown (Lenny Szubowicz) [1898677] - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation (Lenny Szubowicz) [1898677] - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation (Jiri Benc) [1882215] - ice, xsk: clear the status bits for the next_to_use descriptor (Jiri Benc) [1906820] - net/mlx4_en: Handle TX error CQE (Alaa Hleihel) [1925690] - net/mlx4_en: Avoid scheduling restart task if it is already running (Alaa Hleihel) [1925690] - blk-mq: test QUEUE_FLAG_HCTX_ACTIVE for sbitmap_shared in hctx_may_queue (Ming Lei) [1922013] - blk-mq: Improve performance of non-mq IO schedulers with multiple HW queues (Ming Lei) [1922013] - Revert "blk-mq, elevator: Count requests per hctx to improve performance" (Ming Lei) [1922013] - bpftool: Disable CAP_BPF check for feature command (Jiri Olsa) [1921542] - RDMA/siw: Fix calculation of tx_valid_cpus size (Kamal Heib) [1919502] - net/mlx5e: Disable performance optimization for IPv4/IPv6 ethertype (Alaa Hleihel) [1928671 1919807] - IB/mlx5: Return appropriate error code instead of ENOMEM (Alaa Hleihel) [1928671] - net/mlx5: Disable devlink reload for lag devices (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disable devlink reload for multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on lag device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Disallow RoCE on multi port slave device (Alaa Hleihel) [1928671 1929166] - net/mlx5: Fix health error state handling (Alaa Hleihel) [1928671] - net/mlx5e: Change interrupt moderation channel params also when channels are closed (Alaa Hleihel) [1928671] - net/mlx5e: Don't change interrupt moderation params when DIM is enabled (Alaa Hleihel) [1928671] - net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1928671] - net/mlx5e: Release skb in case of failure in tc update skb (Alaa Hleihel) [1928671 1929119] - net/mlx5e: Check tunnel offload is required before setting SWP (Alaa Hleihel) [1928671 1925439] - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Fix CQ params of ICOSQ and async ICOSQ (Alaa Hleihel) [1928671 1928706] - net/mlx5e: Replace synchronize_rcu with synchronize_net (Alaa Hleihel) [1928671 1913616] - net/mlx5e: Enable XDP for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1856795] - net/mlx5e: Enable striding RQ for Connect-X IPsec capable devices (Alaa Hleihel) [1928671 1926120] - fix regression in "epoll: Keep a reference on files added to the check list" (Carlos Maiolino) [1920776] {CVE-2020-0466} - do_epoll_ctl(): clean the failure exits up a bit (Carlos Maiolino) [1920776] {CVE-2020-0466} - epoll: Keep a reference on files added to the check list (Carlos Maiolino) [1920776] {CVE-2020-0466}- perf/x86/intel/uncore: With > 8 nodes, get pci bus die id from NUMA info (Prarit Bhargava) [1766743] - perf/x86/intel/uncore: Store the logical die id instead of the physical die id. (Prarit Bhargava) [1766743] - mm: fix page reference leak in soft_offline_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: try to narrow window race for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: double-check page count in __get_any_page() (Aristeu Rozanski) [1768372] - mm,hwpoison: introduce MF_MSG_UNSPLIT_THP (Aristeu Rozanski) [1768372] - mm,hwpoison: return 0 if the page is already poisoned in soft-offline (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor soft_offline_huge_page and __soft_offline_page (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for in-use pages (Aristeu Rozanski) [1768372] - mm,hwpoison: rework soft offline for free pages (Aristeu Rozanski) [1768372] - mm,hwpoison: unify THP handling for hard and soft offline (Aristeu Rozanski) [1768372] - mm,hwpoison: kill put_hwpoison_page (Aristeu Rozanski) [1768372] - mm,hwpoison: refactor madvise_inject_error (Aristeu Rozanski) [1768372] - mm,hwpoison: unexport get_hwpoison_page and make it static (Aristeu Rozanski) [1768372] - mm,hwpoison-inject: don't pin for hwpoison_filter (Aristeu Rozanski) [1768372] - mm, hwpoison: remove recalculating hpage (Aristeu Rozanski) [1768372] - mm,hwpoison: cleanup unused PageHuge() check (Aristeu Rozanski) [1768372] - mm/madvise.c: replace with page_size() in madvise_inject_error() (Aristeu Rozanski) [1768372] - mm, soft-offline: convert parameter to pfn (Aristeu Rozanski) [1768372] - tick/nohz: Revert "Narrow down noise while setting current task's tick dependency" (Waiman Long) [1931004] - kvm: Add kvm_stat.service file and kvm_stat logrotate config to the tools (Thomas Huth) [1919930] - igc: fix link speed advertising (Corinna Vinschen) [1769701] - [crypto] crypto: qat - add capability detection logic in qat_4xxx (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-XTS support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - add AES-CTR support for QAT GEN4 devices (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix excluded_middle.cocci warnings (Vladis Dronov) [1833004] - [crypto] crypto: qat - add qat_4xxx driver (Vladis Dronov) [1833004] - [crypto] crypto: qat - add hook to initialize vector routing table (Vladis Dronov) [1833004] - [crypto] crypto: qat - target fw images to specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add gen4 firmware loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for broadcasting mode (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for shared ustore (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow to target specific AEs (Vladis Dronov) [1833004] - [crypto] crypto: qat - add FCU CSRs to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add CSS3K support (Vladis Dronov) [1833004] - [crypto] crypto: qat - use ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add check for null pointer (Vladis Dronov) [1833004] - [crypto] crypto: qat - add misc control CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add wake up event to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add clock enable CSR to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add reset CSR and mask to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add local memory size to chip info (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for lm2 and lm3 (Vladis Dronov) [1833004] - [crypto] crypto: qat - add next neighbor to chip_info (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace check based on DID (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce chip info structure (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor long expressions (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_uclo_set_ae_mode() (Vladis Dronov) [1833004] - [crypto] crypto: qat - move defines to header files (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove global CSRs helpers (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor AE start (Vladis Dronov) [1833004] - [crypto] crypto: qat - change micro word data mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - change type for ctx_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for relative FW ucode loading (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename qat_uclo_del_uof_obj() (Vladis Dronov) [1833004] - [crypto] crypto: qat - introduce additional parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary parenthesis (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix error message (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix CSR access (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix status check in qat_hal_put_rel_rd_xfer() (Vladis Dronov) [1833004] - [crypto] crypto: qat - support for mof format in fw loader (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace pci with PCI in comments (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove cast for mailbox CSR (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unneeded semicolon (Vladis Dronov) [1833004] - [crypto] crypto: qat - extend ae_mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - allow for instances in different banks (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_dev_config() (Vladis Dronov) [1833004] - [crypto] crypto: qat - refactor qat_crypto_create_instances() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_key_val_get() (Vladis Dronov) [1833004] - [crypto] crypto: qat - change return value in adf_cfg_add_key_value_param() (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unnecessary void* casts (Vladis Dronov) [1833004] - [crypto] crypto: qat - call functions in adf_sriov if available (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove hardcoded bank irq clear flag mask (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract writes to arbiter enable (Vladis Dronov) [1833004] - [crypto] crypto: qat - use BIT_ULL() - 1 pattern for masks (Vladis Dronov) [1833004] - [crypto] crypto: qat - replace constant masks with GENMASK (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract build ring base (Vladis Dronov) [1833004] - [crypto] crypto: qat - enable ring after pair is programmed (Vladis Dronov) [1833004] - [crypto] crypto: qat - register crypto instances based on capability (Vladis Dronov) [1833004] - [crypto] crypto: qat - add support for capability detection (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract arbiter access (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused macros in arbiter module (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove writes into WQCFG (Vladis Dronov) [1833004] - [crypto] crypto: qat - update constants table (Vladis Dronov) [1833004] - [crypto] crypto: qat - use admin mask to send fw constants (Vladis Dronov) [1833004] - [crypto] crypto: qat - change admin sequence (Vladis Dronov) [1833004] - [crypto] crypto: qat - rename ME in AE (Vladis Dronov) [1833004] - [crypto] crypto: qat - add packed to init admin structures (Vladis Dronov) [1833004] - [crypto] crypto: qat - abstract admin interface (Vladis Dronov) [1833004] - [crypto] crypto: qat - relocate GEN2 CSR access code (Vladis Dronov) [1833004] - [crypto] crypto: qat - split transport CSR access logic (Vladis Dronov) [1833004] - [crypto] crypto: qat - fix configuration of iov threads (Vladis Dronov) [1833004] - [crypto] crypto: qat - num_rings_per_bank is device dependent (Vladis Dronov) [1833004] - [crypto] crypto: qat - mask device capabilities with soft straps (Vladis Dronov) [1833004] - [crypto] crypto: qat - update IV in software (Vladis Dronov) [1833004] - [crypto] crypto: qat - remove unused function (Vladis Dronov) [1833004]- mptcp: send ack for every add_addr (Davide Caratti) [1929280] - Revert "[net] tcp: change pingpong threshold to 3" (Davide Caratti) [1929280] - powerpc/pseries: Don't enforce MSI affinity with kdump (Greg Kurz) [1919427] - rtc: disallow update interrupts when time is invalid (Waiman Long) [1918288] - rtc: disable uie before setting time and enable after (Waiman Long) [1918288] - rtc: don't reference bogus function pointer in kdoc (Waiman Long) [1918288] - KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to ZONE_DEVICE and HugeTLB pages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Allow parallel page faults for the TDP MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Mark SPTEs in disconnected pages as removed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Flush TLBs after zap in TDP MMU PF handler (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use atomic ops to set SPTEs in TDP MMU map (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out functions to add/remove TDP MMU pages (Paolo Bonzini) [1897366] - i915: kvmgt: the KVM mmu_lock is now an rwlock (Paolo Bonzini) [1897366] - KVM: x86/mmu: Use an rwlock for the x86 MMU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Protect TDP MMU page table memory with RCU (Paolo Bonzini) [1897366] - KVM: x86/mmu: Clear dirtied pages mask bit before early break (Paolo Bonzini) [1897366] - KVM: x86/mmu: Skip no-op changes in TDP MMU functions (Paolo Bonzini) [1897366] - KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed (Paolo Bonzini) [1897366] - KVM: x86/mmu: Ensure forward progress when yielding in TDP MMU iter (Paolo Bonzini) [1897366] - KVM: x86/mmu: Rename goal_gfn to next_last_level_gfn (Paolo Bonzini) [1897366] - KVM: x86/mmu: Merge flush and non-flush tdp_mmu_iter_cond_resched (Paolo Bonzini) [1897366] - KVM: x86/mmu: Fix braces in kvm_recover_nx_lpages (Paolo Bonzini) [1897366] - KVM: x86/mmu: Factor out handling of removed page tables (Paolo Bonzini) [1897366] - KVM: x86/mmu: Don't redundantly clear TDP MMU pt memory (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add lockdep when setting a TDP MMU SPTE (Paolo Bonzini) [1897366] - KVM: x86/mmu: Add comment on __tdp_mmu_set_spte (Paolo Bonzini) [1897366] - KVM: x86/mmu: change TDP MMU yield function returns to match cond_resched (Paolo Bonzini) [1897366] - locking/arch: Move qrwlock.h include after qspinlock.h (Paolo Bonzini) [1897366] - sched: Add cond_resched_rwlock (Paolo Bonzini) [1897366] - sched: Add needbreak for rwlocks (Paolo Bonzini) [1897366] - locking/rwlocks: Add contention detection for rwlocks (Paolo Bonzini) [1897366] - RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes (Kamal Heib) [1919395] - net/vmw_vsock: fix NULL pointer dereference (Jon Maloy) [1925600] {CVE-2021-26708} - net/vmw_vsock: improve locking in vsock_connect_timeout() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix locking in vsock_shutdown() (Jon Maloy) [1925600] {CVE-2021-26708} - vsock: fix the race conditions in multi-transport support (Jon Maloy) [1925600] {CVE-2021-26708} - ahci: Add missing Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1928789] - KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off (Paolo Bonzini) [1912448] - [sound] ALSA: hda/via: Fix runtime PM for Clevo W35xSS (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machines (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk for more HP laptops (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Modify Dell platform name (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fix speaker volume control on Lenovo C940 (Jaroslav Kysela) [1916102] - [sound] ALSA: ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Apply jack fixup for Quanta NL3 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add quirk for MSI-GP73 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Supported Dell fixed type headset (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: Fix incorrect mutex unlock in silent_stream_disable() (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: packet buffer index must be set before reading value (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: always print pin NIDs as hexadecimal (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/hdmi: fix silent stream for first playback to DP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/conexant: add a new hda codec CX11970 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Fix regressions on clear and reconfig sysfs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/proc - print DP-MST connections (Jaroslav Kysela) [1916102] - [sound] ALSA: hda - Fix the return value if cb func is already registered (Jaroslav Kysela) [1916102] - [sound] ALSA: mixart: Fix mutex deadlock (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add new codec supported for ALC897 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed Dell AIO wrong sound tone (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - HP Headset Mic can't detect after boot (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported mute Led for HP (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220) (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Enable headphone for ASUS TM420 (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/realtek - Fixed HP headset Mic can't be detected (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: Add Alderlake-S PCI ID and HDMI codec vid (Jaroslav Kysela) [1916102] - [sound] ALSA: hda/generic: Add option to enforce preferred_dacs pairs (Jaroslav Kysela) [1916102] - [sound] ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link() (Jaroslav Kysela) [1916102] - [sound] ALSA: seq: oss: Avoid mutex lock for a long-time ioctl (Jaroslav Kysela) [1916102] - [fs] gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end (Andreas Grunbacher) [1926852] - [net] netfilter: nf_tables: coalesce multiple notifications into one skbuff (Phil Sutter) [1855207] - [drm] drm/i915/rkl: new rkl ddc map for different PCH (Lyude Paul) [1910761] - [drm] drm/nouveau: fix dma syncing warning with debugging on (Lyude Paul) [1915548] - [drm] drm/i915: Update TGL and RKL HuC firmware versions (Lyude Paul) [1924209] - [drm] drm/i915/tgl, rkl: Make Wa_1606700617/22010271021 permanent (Lyude Paul) [1924209] - [drm] drm/i915: Update gen12 forcewake table (Lyude Paul) [1924209] - [drm] drm/i915: Rename FORCEWAKE_BLITTER to FORCEWAKE_GT (Lyude Paul) [1924209] - [drm] drm/i915/display/fbc: Implement WA 22010751166 (Lyude Paul) [1924209] - [drm] drm/i915: Tweaked Wa_14010685332 for PCHs used on gen11 platforms (Lyude Paul) [1924209] - [drm] drm/i915: Reorder hpd init vs. display resume (Lyude Paul) [1921868] - [drm] drm/i915/dp: Don't use DPCD backlights that need PWM enable/disable (Lyude Paul) [1885406] - [drm] drm/dp: Revert "drm/dp: Introduce EDID-based quirks" (Lyude Paul) [1885406] - [drm] drm/i915/dp: Allow forcing specific interfaces through enable_dpcd_backlight (Lyude Paul) [1885406] - [drm] drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now) (Lyude Paul) [1885406] - [drm] drm/i915: Keep track of pwm-related backlight hooks separately (Lyude Paul) [1885406] - [drm] drm/i915: Pass port to intel_panel_bl_funcs.get() (Lyude Paul) [1885406] - [drm] drm/i915/dp: Add register definitions for Intel HDR backlight interface (Lyude Paul) [1885406] - [drm] drm/i915/dp: Rename eDP VESA backlight interface functions (Lyude Paul) [1885406] - [drm] drm/i915: Pass down brightness values to enable/disable backlight callbacks (Lyude Paul) [1885406] - [drm] drm/i915: Rename pwm_* backlight callbacks to ext_pwm_* (Lyude Paul) [1885406] - [drm] drm/i915/dp: Program source OUI on eDP panels (Lyude Paul) [1885406] - [drm] drm/i915: refactor panel backlight control functions. (v2) (Lyude Paul) [1885406] - [drm] drm/i915/backlight: fix CPU mode backlight takeover on LPT (Lyude Paul) [1885406] - [drm] drm/i915/dpcd_bl: uncheck PWM_PIN_CAP when detect eDP backlight capabilities (Lyude Paul) [1885406] - [drm] drm/i915: panel: Add get_vbt_pwm_freq() helper (Lyude Paul) [1885406] - [drm] drm/i915/dp: Tweak initial dpcd backlight.enabled value (Lyude Paul) [1885406] - [drm] kms: handle mDP connectors (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Combo PHY DPLL fractional divider for 38.4MHz ref clock (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add new cdclk table (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle HTI (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add DPLL4 support (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Add initial workarounds (Lyude Paul) [1876992] - [drm] drm/i915/rkl: Handle new DPCLKA_CFGCR0 layout (Lyude Paul) [1876992] - [drm] drm/i915: Update TGL and RKL DMC firmware versions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Program mocs:63 for cache eviction on gen9 (Lyude Paul) [1876992] - [drm] drm/i915/gt: Limit frequency drop to RPe on parking (Lyude Paul) [1876992] - [drm] drm/i915/gt: Retain default context state across shrinking (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: remove old DPG workaround (Lyude Paul) [1876992] - [drm] drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset (Lyude Paul) [1876992] - [drm] drm/i915/gt: Fixup tgl mocs for PTE tracking (Lyude Paul) [1876992] - [drm] drm/amdgpu: add rlc iram and dram firmware support (Lyude Paul) [1876992] - [drm] drm/nouveau: fix relocations applying logic and a double-free (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid HDCP initialization in devices without output (Lyude Paul) [1876992] - [drm] drm/amd/amdgpu: fix null pointer in runtime pm (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix a page fault (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix SI UVD firmware validate resume fail (Lyude Paul) [1876992] - [drm] drm/i915/tgl: Fix Media power gate sequence (Lyude Paul) [1876992] - [drm] drm/i915: Handle max_bpc==16 (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq for dcn2.0 (Lyude Paul) [1876992] - [drm] drm/gma500: Fix out-of-bounds access to struct drm_device.vblank (Lyude Paul) [1876992] - [drm] drm/i915: Correctly set SFC capability for video engines (Lyude Paul) [1876992] - [drm] drm/amd/display: Add missing pflip irq (Lyude Paul) [1876992] - [drm] drm/amd/pm: do not use ixFEATURE_STATUS for checking smc running (Lyude Paul) [1876992] - [drm] drm/amd/pm: perform SMC reset on suspend/hibernation (Lyude Paul) [1876992] - [drm] drm/amd/pm: correct the baco reset sequence for CI ASICs (Lyude Paul) [1876992] - [drm] drm/amdgpu: perform srbm soft reset always on SDMA resume (Lyude Paul) [1876992] - [drm] drm/i915/gem: Flush coherency domains on first set-domain-ioctl (Lyude Paul) [1876992] - [drm] drm/i915: Hold onto an explicit ref to i915_vma_work.pinned (Lyude Paul) [1876992] - [drm] drm/i915/gt: Use the local HWSP offset during submission (Lyude Paul) [1876992] - [drm] drm/i915: Fix encoder lookup during PSR atomic check (Lyude Paul) [1876992] - [drm] drm/nouveau/gem: fix "refcount_t: underflow; use-after-free" (Lyude Paul) [1876992] - [drm] drm/nouveau/nouveau: fix the start/end range for migration (Lyude Paul) [1876992] - [drm] drm/amd/display: adding ddc_gpio_vga_reg_list to ddc reg def'ns (Lyude Paul) [1876992] - [drm] drm/amd/display: Fixed panic during seamless boot (Lyude Paul) [1876992] - [drm] drm/amdgpu: add DID for navi10 blockchain SKU (Lyude Paul) [1876992] - [drm] drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3) (Lyude Paul) [1876992] - [drm] drm/amdgpu: resolved ASD loading issue on sienna (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/nouveau/device: fix changing endianess code to work on older GPUs (Lyude Paul) [1876992] - [drm] drm/nouveau/kms/nv50-: Program notifier offset before requesting disp caps (Lyude Paul) [1876992] - [drm] drm/i915: Restore ILK-M RPS support (Lyude Paul) [1876992] - [drm] drm/i915: Reject 90/270 degree rotated initial fbs (Lyude Paul) [1876992] - [drm] drm/i915: Use the active reference on the vma while capturing (Lyude Paul) [1876992] - [drm] drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid rcu lockup during fbdev init (Lyude Paul) [1876992] - [drm] drm/i915: Exclude low pages (128KiB) of stolen from use (Lyude Paul) [1876992] - [drm] drm/i915: Drop runtime-pm assert from vgpu io accessors (Lyude Paul) [1876992] - [drm] drm/i915/gt: Delay execlist processing for tgl (Lyude Paul) [1876992] - [drm] drm/i915/gt: Undo forced context restores after trivial preemptions (Lyude Paul) [1876992] - [drm] drm/i915/gt: Initialize reserved and unspecified MOCS indices (Lyude Paul) [1876992] - [drm] drm/i915: Fix TGL DKL PHY DP vswing handling (Lyude Paul) [1876992] - [drm] drm/i915: Avoid mixing integer types during batch copies (Lyude Paul) [1876992] - [drm] drm/i915: Cancel outstanding work after disabling heartbeats on an engine (Lyude Paul) [1876992] - [drm] drm/i915: Break up error capture compression loops with cond_resched() (Lyude Paul) [1876992] - [drm] drm/i915/gt: Always send a pulse down the engine after disabling heartbeat (Lyude Paul) [1876992] - [drm] drm/i915/gem: Always test execution status on closing the context (Lyude Paul) [1876992] - [drm] drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not supported (Lyude Paul) [1876992] - [drm] drm/i915/gem: Avoid implicit vmap for highmem on x86-32 (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the cu and rb info for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/psp: Fix sysfs: cannot create duplicate filename (Lyude Paul) [1876992] - [drm] drm/amd/swsmu: add missing feature map for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amd/pm: fix pp_dpm_fclk (Lyude Paul) [1876992] - [drm] drm/amd/pm: increase mclk switch threshold to 200 us (Lyude Paul) [1876992] - [drm] drm/amdgpu/swsmu: drop smu i2c bus on navi1x (Lyude Paul) [1876992] - [drm] drm/ttm: fix eviction valuable range check (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix kernel panic by dal_gpio_open() error (Lyude Paul) [1876992] - [drm] drm/amd/display: Don't invoke kgdb_breakpoint() unconditionally (Lyude Paul) [1876992] - [drm] drm/amdgpu: increase the reserved VM size to 2MB (Lyude Paul) [1876992] - [drm] drm/amdgpu: add function to program pbb mode for sienna cichlid (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid MST manager resource leak (Lyude Paul) [1876992] - [drm] drm/amdkfd: Use same SQ prefetch setting as amdgpu (Lyude Paul) [1876992] - [drm] drm/amdgpu: correct the gpu reset handling for job != NULL case (Lyude Paul) [1876992] - [drm] drm/amdgpu: update golden setting for sienna_cichlid (Lyude Paul) [1876992] - [drm] drm/amdgpu: vcn and jpeg ring synchronization (Lyude Paul) [1876992] - [drm] drm/amd/display: Increase timeout for DP Disable (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix incorrect backlight register offset for DCN (Lyude Paul) [1876992] - [drm] drm/amdgpu: don't map BO in reserved region (Lyude Paul) [1876992] - [drm] drm/shme-helpers: Fix dma_buf_mmap forwarding bug (Lyude Paul) [1876992] - [drm] drm/i915: Force VT'd workarounds when running as a guest OS (Lyude Paul) [1876992] - [drm] drm/amd/display: Avoid set zero in the requested clk (Lyude Paul) [1876992] - [drm] drm/amd/display: HDMI remote sink need mode validation for Linux (Lyude Paul) [1876992] - [drm] drm/amdgpu: No sysfs, not an error condition (Lyude Paul) [1876992] - [drm] drm/amd/display: Check clock table return (Lyude Paul) [1876992] - [drm] drm/bridge/synopsys: dsi: add support for non-continuous HS clock (Lyude Paul) [1876992] - [drm] drm/vkms: avoid warning in vkms_get_vblank_timestamp (Lyude Paul) [1876992] - [drm] drm/bridge_connector: Set default status connected for eDP connectors (Lyude Paul) [1876992] - [drm] drm/scheduler: Scheduler priority fixes (v2) (Lyude Paul) [1876992] - [drm] drm/amdgpu: restore ras flags when user resets eeprom(v2) (Lyude Paul) [1876992] - [drm] drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex (Lyude Paul) [1876992] - [drm] drm/amd/display: Disconnect pipe separetely when disable pipe split (Lyude Paul) [1876992] - [drm] drm/hisilicon: Code refactoring for hibmc_drv_de (Lyude Paul) [1876992] - [drm] drm/amd/display: Screen corruption on dual displays (DP+USB-C) (Lyude Paul) [1876992] - [drm] drm: fix double free for gbo in drm_gem_vram_init and drm_gem_vram_create (Lyude Paul) [1876992] - [drm] drm/amdgpu: Fix invalid number of character '{' in amdgpu_acpi_init (Lyude Paul) [1876992] - [drm] drm/amdgpu: fix max_entries calculation v4 (Lyude Paul) [1876992] - [drm] drm/crc-debugfs: Fix memleak in crc_control_write (Lyude Paul) [1876992] - [drm] drm/gma500: fix error check (Lyude Paul) [1876992] - [drm] drm/amd/display: fix potential integer overflow when shifting 32 bit variable bl_pwm (Lyude Paul) [1876992] - [drm] drm/vkms: add missing platform_device_unregister() in vkms_init() (Lyude Paul) [1876992] - [drm] drm/vgem: add missing platform_device_unregister() in vgem_init() (Lyude Paul) [1876992] - [drm] drm/amd/display: Fix wrong return value in dm_update_plane_state() (Lyude Paul) [1876992] - [drm] drm/vkms: fix xrgb on compute crc (Lyude Paul) [1876992] - [iommu] iommu/amd: Set iommu->int_enabled consistently when interrupts are set up (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix IOMMU interrupt generation in X2APIC mode (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix union of bitfields in intcapxt support (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Fix kerneldoc comments (Vitaly Kuznetsov) [1915038] - [x86] x86/irq: Prepare consolidation of irq_alloc_info (Vitaly Kuznetsov) [1915038] - [iommu] iommu/amd: Use msi_msg shadow structs (Vitaly Kuznetsov) [1915038] - [iommu] x86_irq_Rename_X86_IRQ_ALLOC_TYPE_MSI_to_reflect_PCI_dependency (Vitaly Kuznetsov) [1915038] - [netdrv] Revert "e1000e: disable s0ix entry and exit flows for ME systems" (Ken Cox) [1872412] - [netdrv] e1000e: fix S0ix flow to allow S0i3.2 subset entry (Ken Cox) [1872412]- dm table: fix DAX iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm table: fix various whitespace issues with recent DAX code (Mike Snitzer) [1905679] - dm table: fix dax_dev NULL dereference in device_synchronous() (Mike Snitzer) [1905679] - dm: enable synchronous dax (Mike Snitzer) [1905679] - dm table: fix iterate_devices based device capability checks (Mike Snitzer) [1905679] - dm: remove special-casing of bio-based immutable singleton target on NVMe (Mike Snitzer) [1905679] - [s390] s390/dasd: Fix inconsistent kobject removal (Philipp Rudo) [1928106] - [powerpc] powerpc/perf/hv-24x7: Dont create sysfs event files for dummy events (Steve Best) [1927730] - [powerpc] powerpc/pseries/dlpar: handle ibm, configure-connector delay status (Steve Best) [1927371] - [x86] x86/kvm: Increase KVM_MAX_VCPUS to 2048 (Eduardo Habkost) [1840923]- Unbreak mount_capable() (Scott Mayhew) [1903983]- [powerpc] powerpc: fix wrong backport on Kernel lockdown for power (Diego Domingos) [1928778] - [powerpc] powerpc/kexec_file: fix FDT size estimation for kdump kernel (Steve Best) [1928105] - [kernel] sched/features: Distinguish between NORMAL and DEADLINE hrtick (Juri Lelli) [1912118] - [kernel] sched/features: Fix hrtick reprogramming (Juri Lelli) [1912118] - [scsi] scsi: lpfc: Fix EEH encountering oops with NVMe traffic (Dick Kennedy) [1854776] - [scsi] scsi: lpfc: Prevent duplicate requests to unregister with cpuhp framework (Dick Kennedy) [1894960] - [target] scsi: target: iscsi: Fix cmd abort fabric stop race (Maurizio Lombardi) [1908215]- [net] netfilter: nft_dynset: add timeout extension to template (Florian Westphal) [1906915] - [net] netfilter: nftables: fix possible UAF over chains from packet path in netns (Florian Westphal) [1906915] - [net] netfilter: flowtable: fix tcp and udp header checksum update (Florian Westphal) [1906915] - [net] netfilter: xt_recent: Fix attempt to update deleted entry (Florian Westphal) [1906915] - [net] netfilter: conntrack: connection timeout after re-register (Florian Westphal) [1906915] - [netdrv] ice: Fix MSI-X vector fallback logic (Jonathan Toppins) [1896639 1877645] - [netdrv] ice: Don't allow more channels than LAN MSI-X available (Jonathan Toppins) [1896639 1877645] - [net] netfilter: nf_nat: Fix memleak in nf_nat_init (Florian Westphal) [1906915] - [net] netfilter: xt_RATEEST: reject non-null terminated string from userspace (Florian Westphal) [1906915] - [include] net: flow_dissector: Wrap unionized VLAN fields in a struct (Florian Westphal) [1906915] - [net] netfilter: x_tables: Switch synchronization to RCU (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: build mask based from the matching bytes (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add C-VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nft_payload: add VLAN offload support (Florian Westphal) [1906915] - [net] netfilter: nf_tables_offload: allow ethernet interface type only (Florian Westphal) [1906915] - [net] netfilter: nftables_offload: set address type in control dissector (Florian Westphal) [1906915] - [net] netfilter: nf_tables: avoid false-postive lockdep splat (Florian Westphal) [1906915] - [net] netfilter: nf_tables: missing validation from the abort path (Florian Westphal) [1906915] - [net] netfilter: nftables: fix netlink report logic in flowtable and genid (Florian Westphal) [1906915] - [include] netfilter: nf_tables: constify nft_reg_load{8, 16, 64}() (Florian Westphal) [1906915] - [net] netfilter: nf_tables: Introduce new 64-bit helper register functions (Florian Westphal) [1906915] - [include] netfilter: nf_tables: drop include of module.h from nf_tables.h (Florian Westphal) [1906915] - [net] netfilter: nf_fwd_netdev: clear timestamp in forwarding path (Florian Westphal) [1906915] - [net] netfilter: ipset: prevent uninit-value in hash_ip6_add (Florian Westphal) [1906915] - [net] netfilter: use actual socket sk rather than skb sk when routing harder (Florian Westphal) [1906915] - [net] netfilter: ipv4: remove useless export_symbol (Florian Westphal) [1906915] - [net] netfilter: conntrack: don't set related state for different outer address (Florian Westphal) [1906915] - [fs] xfs: don't catch dax+reflink inodes as corruption in verifier (Bill O'Donnell) [1915510]- [powerpc] powerpc: Don't enable FSCR_SCV in init_FSCR_power9() (Gustavo Duarte) [1928399] - [netdrv] ibmvnic: Clear failover_pending if unable to schedule (Steve Best) [1926365] - [netdrv] ibmvnic: change IBMVNIC_MAX_IND_DESCS to 16 (Steve Best) [1928243] - [tools] perf powerpc: Fix printf conversion specifier for IP addresses (Steve Best) [1928209] - [tools] perf powerpc: Fix gap between kernel end and module start (Steve Best) [1928209] - [netdrv] i40e: Revert "i40e: don't report link up for a VF who hasn't enabled queues" (Stefan Assmann) [1838733] - [netdrv] i40e: acquire VSI pointer only after VF is initialized (Stefan Assmann) [1838733] - [netdrv] i40e: fix potential NULL pointer dereferencing (Stefan Assmann) [1838733] - [netdrv] i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: clear the status bits for the next_to_use descriptor (Stefan Assmann) [1838733] - [netdrv] i40e: avoid premature Rx buffer reuse (Stefan Assmann) [1838733] - [netdrv] i40e: Remove unnecessary sw_ring access from xsk Tx (Stefan Assmann) [1838733] - [netdrv] i40e: Fix removing driver while bare-metal VFs pass traffic (Stefan Assmann) [1838733] - [netdrv] i40e: report correct VF link speed when link state is set to enable (Stefan Assmann) [1838733] - [netdrv] i40e: remove redundant assignment (Stefan Assmann) [1838733] - [netdrv] i40e: Fix MAC address setting for a VF via Host/VM (Stefan Assmann) [1838733] - [netdrv] i40e: Allow changing FEC settings on X722 if supported by FW (Stefan Assmann) [1838733] - [netdrv] net: intel: Remove in_interrupt() warnings (Stefan Assmann) [1838733] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: uninitialized variable in i40e_clean_rx_irq_zc() (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: move buffer allocation out of the Rx processing loop (Stefan Assmann) [1838733] - [netdrv] i40e: use 16B HW descriptors instead of 32B (Stefan Assmann) [1838733] - [netdrv] i40e, xsk: remove HW descriptor prefetch in AF_XDP path (Stefan Assmann) [1838733] - [netdrv] i40e: optimise prefetch page refcount (Stefan Assmann) [1838733] - [netdrv] i40e: not compute affinity_mask for IRQ (Stefan Assmann) [1838733] - [netdrv] i40e: Fix crash during removing i40e driver (Stefan Assmann) [1838733] - [netdrv] i40e: Set RX_ONLY mode for unicast promiscuous on VLAN (Stefan Assmann) [1838733] - [netdrv] PCI: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Stefan Assmann) [1838733] - [netdrv] i40e: introduce new dump desc XDP command (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to dump VSI debug output (Stefan Assmann) [1838733] - [netdrv] i40e: add XDP ring statistics to VSI stats (Stefan Assmann) [1838733] - [netdrv] i40e: move check of full Tx ring to outside of send loop (Stefan Assmann) [1838733] - [netdrv] i40e: eliminate division in napi_poll data path (Stefan Assmann) [1838733] - [netdrv] i40e: optimize AF_XDP Tx completion path (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for a new feature Total Port Shutdown (Stefan Assmann) [1838733] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838733] - [netdrv] i40e: Add support for 5Gbps cards (Stefan Assmann) [1838733] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838733] - [netdrv] i40e: Add a check to see if MFS is set (Stefan Assmann) [1838733] - [netdrv] i40e: detect and log info about pre-recovery mode (Stefan Assmann) [1838733] - [netdrv] i40e: make PF wait reset loop reliable (Stefan Assmann) [1838733] - [netdrv] i40e: remove unused defines (Stefan Assmann) [1838733] - [netdrv] i40e: Move client header location (Stefan Assmann) [1838733] - [netdrv] i40e: protect ring accesses with READ- and WRITE_ONCE (Stefan Assmann) [1838733] - [netdrv] i40e: Make i40e_shutdown_adminq() return void (Stefan Assmann) [1838733] - [netdrv] i40e: trivial fixup of comments in i40e_xsk.c (Stefan Assmann) [1838733] - [netdrv] i40e: Use scnprintf() for avoiding potential buffer overflow (Stefan Assmann) [1838733] - [netdrv] team: protect features update by RCU to avoid deadlock (Josef Oskera) [1909593] - [tools] bpf: selftests: remove test_progs LSM test (Yauheni Kaliuta) [1925911] - [net] bpf: Fix a verifier failure with xor (Yauheni Kaliuta) [1925911] - [tools] selftests: Remove fmod_ret from test_overhead (Jiri Olsa) [1925911] - [s390] s390/kdump: fix out-of-memory with PCI (Philipp Rudo) [1927744] - [x86] x86/intel_split_lock: Really Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1924578] - [scsi] megaraid_sas: re-add certain pci-ids as unsupported (Tomas Henzl) [1761485] - [scsi] megaraid_sas: mark unsupported devices (Tomas Henzl) [1761485] - [pci] rh_taint: add support function (Tomas Henzl) [1761485] - [powerpc] powerpc/xmon: Restrict when kernel is locked down (Diego Domingos) [1853307] - [powerpc] powerpc/xmon: add read-only mode (Diego Domingos) [1853307] - [powerpc] powerpc: lock down kernel in secure boot mode (Diego Domingos) [1853307] - [net] fix iteration for sctp transport seq_files (Xin Long) [1916824] - [tools] x86: xen: insn: Decode Xen and KVM emulate-prefix signature (Michael Petlan) [1867733] - [tools] objtool: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1867733] - [x86] x86/insn: Add Control-flow Enforcement (CET) instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/decoder: Add TEST opcode to Group3-2 (Michael Petlan) [1867733] - [x86] x86/insn: Add some more Intel instructions to the opcode map (Michael Petlan) [1867733] - [x86] x86/insn: Add some Intel instructions to the opcode map (Michael Petlan) [1867733] - [net] udp: call udp_encap_enable for v6 sockets when enabling encap (Xin Long) [1907754] - [fs] close_range: unshare all fds for CLOSE_RANGE_UNSHARE | CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [fs] fs, close_range: add flag CLOSE_RANGE_CLOEXEC (Pavel Reichl) [1900674] - [tools] tests: close_range - Replace clone3 with clone (Pavel Reichl) [1900674] - [tools] selftests: core: use SKIP instead of XFAIL in close_range_test.c (Pavel Reichl) [1900674] - [tools] tools headers API: Update close_range affected files (Pavel Reichl) [1900674] - [tools] tests: add CLOSE_RANGE_UNSHARE tests (Pavel Reichl) [1900674] - [fs] close_range: add CLOSE_RANGE_UNSHARE (Pavel Reichl) [1900674] - [tools] tests: add close_range() tests (Pavel Reichl) [1900674] - [powerpc] arch: wire-up close_range() (Pavel Reichl) [1900674] - [fs] open: add close_range() (Pavel Reichl) [1900674] - [x86] x86/sgx: mark tech preview (Vladis Dronov) [1660337] - [tools] tools headers cpufeatures: Sync with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Vladis Dronov) [1660337] - [x86] x86/sgx: Drop racy follow_pfn() check (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix the return type of sgx_init() (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -EINVAL on a zero length buffer in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix a typo in kernel-doc markup (Vladis Dronov) [1660337] - [x86] x86/sgx: Fix sgx_ioc_enclave_provision() kernel-doc comment (Vladis Dronov) [1660337] - [x86] x86/sgx: Return -ERESTARTSYS in sgx_ioc_enclave_add_pages() (Vladis Dronov) [1660337] - [tools] selftests/sgx: Use a statically generated 3072-bit RSA key (Vladis Dronov) [1660337] - [x86] x86/sgx: Clarify 'laundry_list' locking (Vladis Dronov) [1660337] - [documentation] Documentation/x86: Document SGX kernel architecture (Vladis Dronov) [1660337] - [x86] x86/sgx: Add ptrace() support for the SGX driver (Vladis Dronov) [1660337] - [x86] x86/sgx: Add a page reclaimer (Vladis Dronov) [1660337] - [tools] selftests/x86: Add a selftest for SGX (Vladis Dronov) [1660337] - [x86] x86/vdso: Implement a vDSO for Intel SGX enclave call (Vladis Dronov) [1660337] - [mm] x86/traps: Attempt to fixup exceptions in vDSO before signaling (Vladis Dronov) [1660337] - [mm] x86/fault: Add a helper function to sanitize error code (Vladis Dronov) [1660337] - [x86] x86/vdso: Add support for exception fixup in vDSO functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_PROVISION (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_INIT (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_ADD_PAGES (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX_IOC_ENCLAVE_CREATE (Vladis Dronov) [1660337] - [x86] x86/sgx: Add an SGX misc driver interface (Vladis Dronov) [1660337] - [mm] mm: Add 'mprotect' hook to struct vm_operations_struct (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX page allocator functions (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Add a nosgx kernel parameter (Vladis Dronov) [1660337] - [x86] x86/cpu/intel: Detect SGX support (Vladis Dronov) [1660337] - [mm] x86/mm: Signal SIGSEGV with PF_SGX (Vladis Dronov) [1660337] - [x86] x86/sgx: Initialize metadata for Enclave Page Cache (EPC) sections (Vladis Dronov) [1660337] - [x86] x86/{cpufeatures, msr}: Add Intel SGX Launch Control hardware bits (Vladis Dronov) [1660337] - [x86] x86/cpufeatures: Add Intel SGX hardware bits (Vladis Dronov) [1660337] - [x86] x86/sgx: Add wrappers for ENCLS functions (Vladis Dronov) [1660337] - [x86] x86/sgx: Add SGX architectural data structures (Vladis Dronov) [1660337] - [mm] x86/fault: Make error_code sanitization more robust (Vladis Dronov) [1660337] - [video] vgacon: remove software scrollback support (Chris von Recklinghausen) [1883596] - [tools] libbpf: fix backport of "libbpf: Remove any use of reallocarray() in libbpf" (Jiri Benc) [1924711] - [net] bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach (Jiri Benc) [1924711] - [tools] selftests/bpf: Adding test for arg dereference in extension trace (Jiri Benc) [1924711] - [tools] selftests: Add selftest for disallowing modify_return attachment to freplace (Jiri Benc) [1924711] - [tools] selftests: Add test for multiple attachments of freplace program (Jiri Benc) [1924711] - [tools] selftests/bpf: Turn fexit_bpf2bpf into test with subtests (Jiri Benc) [1924711] - [tools] libbpf: Add support for freplace attachment in bpf_link_create (Jiri Benc) [1924711] - [net] bpf: Fix context type resolving for extension programs (Jiri Benc) [1924711] - [net] bpf: Support attaching freplace programs to multiple attach points (Jiri Benc) [1924711] - [net] bpf: Move prog->aux->linked_prog and trampoline into bpf_link on attach (Jiri Benc) [1924711] - [net] bpf: verifier: refactor check_attach_btf_id() (Jiri Benc) [1924711] - [net] bpf: change logging calls from verbose() to bpf_log() and use log pointer (Jiri Benc) [1924711] - [net] bpf: disallow attaching modify_return tracing functions to other BPF programs (Jiri Benc) [1924711] - [mm] kasan: fix incorrect arguments passing in kasan_add_zero_shadow (Waiman Long) [1921394] - [mm] kasan: fix unaligned address is unhandled in kasan_remove_zero_shadow (Waiman Long) [1921394] - [mm] mm: memcg/slab: optimize objcg stock draining (Waiman Long) [1921394] - [mm] mm: don't wake kswapd prematurely when watermark boosting is disabled (Waiman Long) [1921394] - [mm] mm/vmalloc.c: fix kasan shadow poisoning size (Waiman Long) [1921394] - [mm] mm/vmalloc: Fix unlock order in s_stop() (Waiman Long) [1921394] - [mm] mm/swapfile: do not sleep with a spin lock held (Waiman Long) [1921394] - [mm] mm: list_lru: set shrinker map bit when child nr_items is not zero (Waiman Long) [1921394] - [mm] mm: mempolicy: fix potential pte_unmap_unlock pte error (Waiman Long) [1921394] - [mm] mm/mmu_notifier: fix mmget() assert in __mmu_interval_notifier_insert (Waiman Long) [1921394] - [mm] mm/swapfile.c: fix potential memory leak in sys_swapon (Waiman Long) [1921394] - [mm] mm: validate pmd after splitting (Waiman Long) [1921394] - [mm] hugetlb_cgroup: convert comma to semicolon (Waiman Long) [1921394] - [mm] mm/memory_hotplug: fix unpaired mem_hotplug_begin/done (Waiman Long) [1921394] - [mm] khugepaged: adjust VM_BUG_ON_MM() in __khugepaged_enter() (Waiman Long) [1921394] - [mm] khugepaged: khugepaged_test_exit() check mmget_still_valid() (Waiman Long) [1921394] - [mm] mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible (Waiman Long) [1921394] - [mm] mm/hugetlb.c: clean code by removing unnecessary initialization (Waiman Long) [1921394] - [mm] mm/sparse: never partially remove memmap for early section (Waiman Long) [1921394] - [mm] mm/sparse: fix kernel crash with pfn_section_valid check (Waiman Long) [1921394] - [mm] mm/shuffle: don't move pages between zones and don't read garbage memmaps (Waiman Long) [1921394] - [mm] mm/sparse: rename pfn_present() to pfn_in_present_section() (Waiman Long) [1921394] - [powerpc] powerpc/pseries: Advance pfn if section is not present in lmb_is_removable() (Waiman Long) [1921394] - [powerpc] powerpc/pseries/hotplug-memory: Change rc variable to bool (Waiman Long) [1921394] - [mm] mm/gup: fix fixup_user_fault() on multiple retries (Waiman Long) [1921394] - [mm] mm/gup: Let __get_user_pages_locked() return -EINTR for fatal signal (Waiman Long) [1921394] - [mm] mm/mempolicy: Allow lookup_node() to handle fatal signal (Waiman Long) [1921394] - [include] include/linux/memremap.h: remove stale comments (Waiman Long) [1921394] - [mm] mm/sparsemem: get address to page struct instead of address to pfn (Waiman Long) [1921394] - [fs] hibernate: Allow uswsusp to write to swap (Waiman Long) [1921394] - [mm] mm/hotplug: fix hot remove failure in SPARSEMEM|!VMEMMAP case (Waiman Long) [1921394] - [mm] mm/hmm: add missing call to hmm_pte_need_fault in HMM_PFN_SPECIAL handling (Waiman Long) [1921394] - [mm] mm/hmm: add missing unmaps of the ptep during hmm_vma_handle_pte() (Waiman Long) [1921394] - [mm] mm/hmm: allow snapshot of the special zero page (Waiman Long) [1921394] - [mm] mm/hmm: a few more C style and comment clean ups (Waiman Long) [1921394] - [mm] mm/sparse.c: do not waste pre allocated memmap space (Waiman Long) [1921394] - [mm] mm/sparse: consistently do not zero memmap (Waiman Long) [1921394] - [mm] mm/gup: fix a misnamed "write" argument, and a related bug (Waiman Long) [1921394] - [powerpc] treewide: add checks for the return value of memblock_alloc*() (Waiman Long) [1921394] - [kvm] KVM: x86: Expose AVX512_FP16 for supported CPUID (Paul Lai) [1838734] - [x86] x86: Enumerate AVX512 FP16 CPUID feature flag (Paul Lai) [1838734] - [kvm] x86/kvm: Expose TSX Suspend Load Tracking feature (Paul Lai) [1838734] - [net] sched: act_ct: enable stats for HW offloaded entries (Marcelo Leitner) [1909257] - [scsi] scsi: fnic: Validate io_req before others (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Set scsi_set_resid() only for underflow (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_MAIN_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Avoid looping in TRANS ETH on unload (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Change shost_printk() to FNIC_FCS_DBG() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Simplify the return expression of vnic_wq_copy_alloc() (Govindarajulu Varadarajan) [1845720] - [scsi] scsi: fnic: Fix inconsistent format argument type in fnic_debugfs.c (Govindarajulu Varadarajan) [1845720] - [x86] perf/x86/intel/uncore: Fix the scale of the IMC free-running events (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Reduce the number of CBOX counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Update Ice Lake uncore units (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Split the Ice Lake and Tiger Lake MSR uncore support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Support PCIe3 unit on Snow Ridge (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Generic support for the PCI sub driver (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_unregister() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_pmu_register() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_find_dev_pmu() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/uncore: Factor out uncore_pci_get_dev_die_info() (Michael Petlan) [1884818 1908305]- [mmc] mmc: sdhci-acpi: For amd device set driver type as MMC_SET_DRIVER_TYPE_A (David Arcari) [1906067] - [pinctrl] pinctrl: Added IRQF_SHARED flag for amd-pinctrl driver (David Arcari) [1906067] - [block] block: export blk_mq_make_request (Ming Lei) [1917913] - [platform] platform/x86: dell-wmi-sysman: fix a NULL pointer dereference (Perry Yuan) [1922587] - [platform] platform/x86: dell-wmi-sysman: work around for BIOS bug (Juan Martinez) [1504859] - [platform] platform/x86: dell-wmi-sysman: fix init_bios_attributes() error handling (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make some symbols static (Juan Martinez) [1504859] - [platform] platform/x86/dell-wmi-sysman: Make wmi_sysman_kobj_sysfs_ops static (Juan Martinez) [1504859] - [documentation] docs: ABI: sysfs-class-firmware-attributes: solve some warnings (Juan Martinez) [1504859] - [platform] platform/x86: Use appropriate module alias macro for this kernel (Juan Martinez) [1504859] - [platform] platform/x86: Introduce support for Systems Management Driver over WMI for Dell Systems (Juan Martinez) [1504859] - [md] dm: eliminate potential source of excessive kernel log noise (Mike Snitzer) [1876840] - [scsi] scsi: sd: Suppress spurious errors when WRITE SAME is being disabled (Ewan Milne) [1871060] - [net] libceph, ceph: disambiguate ceph_connection_operations handlers (Jeff Layton) [1893177] - [net] libceph: zero out session key and connection secret (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_MSGR2_FEATURE (Jeff Layton) [1893177] - [net] libceph: align session_key and con_secret to 16 bytes (Jeff Layton) [1893177] - [net] libceph: fix auth_signature buffer allocation in secure mode (Jeff Layton) [1893177] - [fs] ceph: reencode gid_list when reconnecting (Jeff Layton) [1893177] - [net] libceph: drop ceph_auth_{create, update}_authorizer() (Jeff Layton) [1893177] - [fs] libceph, ceph: make use of __ceph_auth_get_authorizer() in msgr1 (Jeff Layton) [1893177] - [net] libceph, ceph: implement msgr2.1 protocol (crc and secure modes) (Jeff Layton) [1893177] - [net] libceph: introduce connection modes and ms_mode option (Jeff Layton) [1893177] - [block] libceph, rbd: ignore addr->type while comparing in some cases (Jeff Layton) [1893177] - [net] libceph, ceph: get and handle cluster maps with addrvecs (Jeff Layton) [1893177] - [net] libceph: factor out finish_auth() (Jeff Layton) [1893177] - [net] libceph: drop ac->ops->name field (Jeff Layton) [1893177] - [net] libceph: amend cephx init_protocol() and build_request() (Jeff Layton) [1893177] - [net] libceph, ceph: incorporate nautilus cephx changes (Jeff Layton) [1893177] - [net] libceph: safer en/decoding of cephx requests and replies (Jeff Layton) [1893177] - [net] libceph: more insight into ticket expiry and invalidation (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol specific fields to its own struct (Jeff Layton) [1893177] - [net] libceph: move msgr1 protocol implementation to its own file (Jeff Layton) [1893177] - [net] libceph: use sendpage_ok() in ceph_tcp_sendpage() (Jeff Layton) [1893177] - [net] net: introduce helper sendpage_ok() in include/linux/net.h (Jeff Layton) [1893177] - [net] libceph: separate msgr1 protocol implementation (Jeff Layton) [1893177] - [net] libceph: export remaining protocol independent infrastructure (Jeff Layton) [1893177] - [net] libceph: export zero_page (Jeff Layton) [1893177] - [net] libceph: rename and export con->flags bits (Jeff Layton) [1893177] - [net] libceph: rename and export con->state states (Jeff Layton) [1893177] - [net] libceph: make con->state an int (Jeff Layton) [1893177] - [net] libceph: don't export ceph_messenger_{init_fini}() to modules (Jeff Layton) [1893177] - [net] libceph: make sure our addr->port is zero and addr->nonce is non-zero (Jeff Layton) [1893177] - [net] libceph: factor out ceph_con_get_out_msg() (Jeff Layton) [1893177] - [net] libceph: change ceph_con_in_msg_alloc() to take hdr (Jeff Layton) [1893177] - [net] libceph: change ceph_msg_data_cursor_init() to take cursor (Jeff Layton) [1893177] - [net] libceph: handle discarding acked and requeued messages separately (Jeff Layton) [1893177] - [net] libceph: drop msg->ack_stamp field (Jeff Layton) [1893177] - [net] libceph: remove redundant session reset log message (Jeff Layton) [1893177] - [net] libceph: clear con->peer_global_seq on RESETSESSION (Jeff Layton) [1893177] - [net] libceph: rename reset_connection() to ceph_con_reset_session() (Jeff Layton) [1893177] - [net] libceph: split protocol reset bits out of reset_connection() (Jeff Layton) [1893177] - [net] libceph: don't call reset_connection() on version/feature mismatches (Jeff Layton) [1893177] - [net] libceph: lower exponential backoff delay (Jeff Layton) [1893177] - [net] libceph: include middle_len in process_message() dout (Jeff Layton) [1893177] - [fs] ceph: implement updated ceph_mds_request_head structure (Jeff Layton) [1893177] - [fs] ceph: clean up argument lists to __prepare_send_request and __send_request (Jeff Layton) [1893177] - [fs] ceph: take a cred reference instead of tracking individual uid/gid (Jeff Layton) [1893177] - [fs] ceph: don't reach into request header for readdir info (Jeff Layton) [1893177] - [fs] ceph: set osdmap epoch for setxattr (Jeff Layton) [1893177] - [fs] ceph: remove redundant assignment to variable i (Jeff Layton) [1893177] - [fs] ceph: add ceph.caps vxattr (Jeff Layton) [1893177] - [fs] ceph: when filling trace, call ceph_get_inode outside of mutexes (Jeff Layton) [1893177] - [fs] Revert "ceph: allow rename operation under different quota realms" (Jeff Layton) [1893177] - [fs] ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode fails (Jeff Layton) [1893177] - [fs] ceph: downgrade warning from mdsmap decode to debug (Jeff Layton) [1893177] - [fs] ceph: fix race in concurrent __ceph_remove_cap invocations (Jeff Layton) [1893177] - [fs] ceph: pass down the flags to grab_cache_page_write_begin (Jeff Layton) [1893177] - [fs] ceph: add ceph.{cluster_fsid/client_id} vxattrs (Jeff Layton) [1893177] - [fs] ceph: add status debugfs file (Jeff Layton) [1893177] - [include] libceph: remove unused port macros (Jeff Layton) [1893177] - [fs] ceph: ensure we have Fs caps when fetching dir link count (Jeff Layton) [1893177] - [fs] ceph: send dentry lease metrics to MDS daemon (Jeff Layton) [1893177] - [fs] ceph: acquire Fs caps when getting dir stats (Jeff Layton) [1893177] - [fs] ceph: fix up some warnings on W=1 builds (Jeff Layton) [1893177] - [fs] ceph: queue MDS requests to REJECTED sessions when CLEANRECOVER is set (Jeff Layton) [1893177] - [fs] ceph: remove timeout on allowing reconnect after blocklisting (Jeff Layton) [1893177] - [fs] ceph: add new RECOVER mount_state when recovering session (Jeff Layton) [1893177] - [fs] ceph: make fsc->mount_state an int (Jeff Layton) [1893177] - [fs] ceph: don't WARN when removing caps due to blocklisting (Jeff Layton) [1893177] - [fs] ceph: check session state after bumping session->s_seq (Jeff Layton) [1893177] - [net] libceph: clear con->out_msg on Policy::stateful_server faults (Jeff Layton) [1893177] - [net] libceph: format ceph_entity_addr nonces as unsigned (Jeff Layton) [1893177] - [include] libceph: fix ENTITY_NAME format suggestion (Jeff Layton) [1893177] - [net] libceph: move a dout in queue_con_delay() (Jeff Layton) [1893177] - [fs] ceph: comment cleanups and clarifications (Jeff Layton) [1893177] - [fs] ceph: break up send_cap_msg (Jeff Layton) [1893177] - [fs] ceph: drop separate mdsc argument from __send_cap (Jeff Layton) [1893177] - [fs] ceph: promote to unsigned long long before shifting (Jeff Layton) [1893177] - [fs] ceph: don't SetPageError on readpage errors (Jeff Layton) [1893177] - [fs] ceph: mark ceph_fmt_xattr() as printf-like for better type checking (Jeff Layton) [1893177] - [fs] ceph: fold ceph_update_writeable_page into ceph_write_begin (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_writepages into writepage_nounlock (Jeff Layton) [1893177] - [fs] ceph: fold ceph_sync_readpages into ceph_readpage (Jeff Layton) [1893177] - [fs] ceph: don't call ceph_update_writeable_page from page_mkwrite (Jeff Layton) [1893177] - [fs] ceph: break out writeback of incompatible snap context to separate function (Jeff Layton) [1893177] - [fs] ceph: add a note explaining session reject error string (Jeff Layton) [1893177] - [net] libceph: switch to the new "osd blocklist add" command (Jeff Layton) [1893177] - [fs] libceph, rbd, ceph: "blacklist" -> "blocklist" (Jeff Layton) [1893177] - [fs] ceph: have ceph_writepages_start call pagevec_lookup_range_tag (Jeff Layton) [1893177] - [fs] ceph: use kill_anon_super helper (Jeff Layton) [1893177] - [fs] ceph: metrics for opened files, pinned caps and opened inodes (Jeff Layton) [1893177] - [fs] ceph: add ceph_sb_to_mdsc helper support to parse the mdsc (Jeff Layton) [1893177] - [fs] ceph: drop special-casing for ITER_PIPE in ceph_sync_read (Jeff Layton) [1893177] - [fs] ceph: add column 'mds' to show caps in more user friendly (Jeff Layton) [1893177] - [include] libceph: multiple workspaces for CRUSH computations (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary return in switch statement (Jeff Layton) [1893177] - [fs] ceph: encode inodes' parent/d_name in cap reconnect message (Jeff Layton) [1893177] - [include] libceph: add __maybe_unused to DEFINE_CEPH_FEATURE (Jeff Layton) [1893177] - [fs] ceph: use frag's MDS in either mode (Jeff Layton) [1893177] - [fs] ceph: move sb->wb_pagevec_pool to be a global mempool (Jeff Layton) [1893177] - [fs] ceph: remove redundant initialization of variable mds (Jeff Layton) [1893177] - [fs] ceph: fix use-after-free for fsc->mdsc (Jeff Layton) [1893177] - [fs] ceph: remove unused variables in ceph_mdsmap_decode() (Jeff Layton) [1893177] - [fs] ceph: delete repeated words in fs/ceph/ (Jeff Layton) [1893177] - [fs] ceph: send client provided metric flags in client metadata (Jeff Layton) [1893177] - [fs] ceph: periodically send perf metrics to MDSes (Jeff Layton) [1893177] - [fs] ceph: check the sesion state and return false in case it is closed (Jeff Layton) [1893177] - [net] libceph: replace HTTP links with HTTPS ones (Jeff Layton) [1893177] - [fs] ceph: remove unnecessary cast in kfree() (Jeff Layton) [1893177] - [net] libceph: just have osd_req_op_init() return a pointer (Jeff Layton) [1893177] - [fs] ceph: do not access the kiocb after aio requests (Jeff Layton) [1893177] - [fs] ceph: clean up and optimize ceph_check_delayed_caps() (Jeff Layton) [1893177] - [fs] ceph: fix potential mdsc use-after-free crash (Jeff Layton) [1893177] - [fs] ceph: switch to WARN_ON_ONCE in encode_supported_features() (Jeff Layton) [1893177] - [fs] ceph: add global total_caps to count the mdsc's total caps number (Jeff Layton) [1893177] - [fs] ceph: add check_session_state() helper and make it global (Jeff Layton) [1893177] - [net] libceph: dump class and method names on method calls (Jeff Layton) [1893177] - [net] libceph: use target_copy() in send_linger() (Jeff Layton) [1893177] - [fs] ceph: add metadata perf metric support (Jeff Layton) [1893177] - [fs] ceph: add read/write latency metric support (Jeff Layton) [1893177] - [fs] ceph: add caps perf metric for each superblock (Jeff Layton) [1893177] - [fs] ceph: add dentry lease metric support (Jeff Layton) [1893177] - [include] math64: New DIV64_U64_ROUND_CLOSEST helper (Jeff Layton) [1893177] - [tty] tty: Fix ->pgrp locking in tiocspgrp() (Waiman Long) [1908197] {CVE-2020-29661}- [mm] Revert "powerpc: Ensure that swiotlb buffer is allocated from low memory" (Diego Domingos) [1907131] - [fs] xfs: use ENOTBLK for direct I/O to buffered I/O fallback (Carlos Maiolino) [1922953] - [nvme] nvme-multipath: Early exit if no path is available (Gopal Tiwari) [1880508] - [scsi] scsi: lpfc: Add support for eh_should_retry_cmd() (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add store capability to rport port_state in sysfs (Ewan Milne) [1801585] - [scsi] scsi: scsi_transport_fc: Add a new rport state FC_PORTSTATE_MARGINAL (Ewan Milne) [1801585] - [scsi] scsi: core: No retries on abort success (Ewan Milne) [1801585] - [scsi] scsi: core: Add a new error code DID_TRANSPORT_MARGINAL in scsi.h (Ewan Milne) [1801585] - [scsi] scsi: core: Add limitless cmd retry support (Ewan Milne) [1801585] - [fs] gfs2: Fix deadlock between gfs2_{create_inode, inode_lookup} and delete_work_func (Andreas Grunbacher) [1903190] - [fs] gfs2: Don't call cancel_delayed_work_sync from within delete work function (Andreas Grunbacher) [1903190] - [cpufreq] acpi-cpufreq: Honor _PSD table setting on new AMD CPUs (Terry Bowman) [1886943] - [x86] x86/cpufeatures: Enumerate TSX suspend load address tracking instructions (Josh Poimboeuf) [1836980] - [powerpc] powerpc/pseries/svm: Allocate SWIOTLB buffer anywhere in memory (Diego Domingos) [1869184] - [mm] powerpc: Ensure that swiotlb buffer is allocated from low memory (Diego Domingos) [1869184] - [fs] debugfs: Fix module state check condition (Vladis Dronov) [1866285] - [fs] debugfs: Check module state before warning in {full/open}_proxy_open() (Vladis Dronov) [1866285]- [firmware] efi: Don't attempt to map RCI2 config table if it doesn't exist (Lenny Szubowicz) [1779590] - [firmware] efi: Make CONFIG_EFI_RCI2_TABLE selectable on x86 only (Lenny Szubowicz) [1779590] - [firmware] efi: Make unexported efi_rci2_sysfs_init() static (Lenny Szubowicz) [1779590] - [iommu] iommu: use the __iommu_attach_device() directly for deferred attach (Lianbo Jiang) [1904658] - [iommu] dma-iommu: use static-key to minimize the impact in the fast-path (Lianbo Jiang) [1904658] - [x86] x86/PCI: sta2x11: use default DMA address translation (Jerry Snitselaar) [1887546] - [powerpc] powerpc: use the generic dma_ops_bypass mode (Jerry Snitselaar) [1887546] - [dma] dmaengine: fix error codes in channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: off by one in cleanup code (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: Add ABI documentation for shared wq (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Clean up descriptors with fault error (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Add shared workqueue support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix mapping of portal size (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix wq config registers offset programming (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Allocate correct size for descriptor chunk (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: add missing invalid flags field to completion (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: fix hw descriptor fields for delta record (Jerry Snitselaar) [1837187] - [uapi] dmaengine: idxd: Merge definition of dsa_batch_desc into dsa_hw_desc (Jerry Snitselaar) [1838386 1837187] - [dma] dmaengine: dmatest: Return boolean result directly in filter() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Check list for emptiness before access its last entry (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Make two symbols static (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Print error codes as signed value (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add command status to idxd sysfs attribute (Jerry Snitselaar) [1893465 1837187] - [dma] dmaengine: idxd: add support for configurable max wq batch size (Jerry Snitselaar) [1893468 1837187] - [dma] dmaengine: idxd: add support for configurable max wq xfer size (Jerry Snitselaar) [1893468 1837187] - [documentation] dmaengine: idxd: add leading / for sysfspath in ABI documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: clear misc interrupt cause after read (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Prevent to run on misconfigured channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Put the CSRT table after using it (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: reset states after device disable or reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move idxd interrupt handling to mask instead of ignore (Jerry Snitselaar) [1872374 1837187] - [dma] dmaengine: idxd: add work queue drain support (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: move submission to sbitmap_queue (Jerry Snitselaar) [1837187] - [dma] dmaengine: cookie bypass for out of order completion (Jerry Snitselaar) [1838893 1837187] - [dma] dmaengine: ioat setting ioat timeout as module parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: stop completed threads when running without set channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix misc interrupt handler thread unmasking (Jerry Snitselaar) [1877126 1837187] - [dma] dmaengine: idxd: cleanup workqueue config after disabling (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix cdev locking for open and release (Jerry Snitselaar) [1837187] - [dma] dmaengine: Replace zero-length array with flexible-array (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix doc strings to satisfy validation script (Jerry Snitselaar) [1837187] - [dma] dmaengine: Include dmaengine.h into dmaengine.c (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_info (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Describe members of struct dmatest_params (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Allow negative timeout value to specify infinite wait (Jerry Snitselaar) [1837187] - [dma] Revert "dmaengine: dmatest: timeout value of -1 should specify infinite wait" (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: adding missed issue_pending to timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: remove unnesesery double complition timer modification (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: removing duplicate code from timeout handler (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Decreasing allocation chunk size 2M->512K (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fixing chunk sizing macros dependency (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: export hw version through sysfs (Jerry Snitselaar) [1838888 1837187] - [dma] dmaengine: dmatest: Restore default for channel (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix interrupt completion after unmasking (Jerry Snitselaar) [1838895 1837187] - [dma] dmaengine: dmatest: Fix process hang when reading 'wait' parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Fix iteration non-stop logic (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix channel index enumeration (Jerry Snitselaar) [1838390 1837187] - [include] include/linux/dmaengine: Typos fixes in API documentation (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove global token limit check (Jerry Snitselaar) [1838385 1837187] - [dma] dmaengine: idxd: reflect shadow copy of traffic class programming (Jerry Snitselaar) [1838381 1837187] - [dma] dmaengine: Create debug directories for DMA devices (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add basic debugfs support (Jerry Snitselaar) [1837187] - [include] dmaengine: consistently return string literal from switch-case (Jerry Snitselaar) [1837187] - [include] dmaengine: Drop redundant 'else' keyword (Jerry Snitselaar) [1837187] - [include] dmaengine: Use negative condition for better readability (Jerry Snitselaar) [1837187] - [include] dmaengine: Refactor dmaengine_check_align() to be bit operations only (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: expose general capabilities register in sysfs (Jerry Snitselaar) [1837187 1836532] - [dma] dmaengine: idxd: check return result from check_vma() in cdev (Jerry Snitselaar) [1837187 1836530] - [dma] dmanegine: ioat/dca: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'idxd_cdev' (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: remove set but not used variable 'group' (Jerry Snitselaar) [1837187] - [documentation] dmaengine: idxd: add sysfs ABI for idxd driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: fix off by one on cdev dwq refcount (Jerry Snitselaar) [1838366 1837187] - [dma] dmaengine: idxd: wq size configuration needs to check global max size (Jerry Snitselaar) [1837187 1836579] - [dma] dmaengine: idxd: sysfs input of wq incorrect wq type should return error (Jerry Snitselaar) [1837187 1836585] - [dma] dmaengine: idxd: correct reserved token calculation (Jerry Snitselaar) [1837187 1836647] - [dma] dmaengine: idxd: Fix error handling in idxd_wq_cdev_dev_setup() (Jerry Snitselaar) [1838354 1837187] - [dma] dmaengine: idxd: fix runaway module ref count on device driver bind (Jerry Snitselaar) [1837187 1836649] - [dma] dmaengine: idxd: fix boolconv.cocci warnings (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add char driver to expose submission portal to userland (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: connect idxd to dmaengine subsystem (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add descriptor manipulation routines (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: add configuration component of driver (Jerry Snitselaar) [1837187] - [dma] dmaengine: idxd: Init and probe for Intel data accelerators (Jerry Snitselaar) [1837187] - [include] io-64-nonatomic: add io{read|write}64{_lo_hi|_hi_lo} macros (Jerry Snitselaar) [1837187] - [powerpc] iomap: introduce io{read|write}64_{lo_hi|hi_lo} (Jerry Snitselaar) [1837187] - [lib] iomap: Use non-raw io functions for io{read|write}XXbe (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: use vchan_vdesc_fini() to free descriptors (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking around list operations (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Do not call desc_free() under a spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: remove debug message (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Add missing locking (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: Support in-use unbind (Jerry Snitselaar) [1837187] - [dma] dmaengine: move .device_release missing log warning to debug level (Jerry Snitselaar) [1837187] - [dma] dmaengine: Cleanups for the slave <-> channel symlink support (Jerry Snitselaar) [1837187] - [dma] dmaengine: fix null ptr check for __dma_async_device_channel_register() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Fix return value for dma_request_chan() in case of failure (Jerry Snitselaar) [1837187] - [dma] dmaengine: Create symlinks between DMA channels and slaves (Jerry Snitselaar) [1837187] - [dma] dmaengine: add support to dynamic register/unregister of channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: break out channel registration (Jerry Snitselaar) [1837187] - [x86] x86/asm: Carve out a generic movdir64b() helper for general usage (Jerry Snitselaar) [1837187] - [x86] x86/asm: add iosubmit_cmds512() based on MOVDIR64B CPU instruction (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_get_{, any_}slave_channel() to private dmaengine.h (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove dma_request_slave_channel_compat() wrapper (Jerry Snitselaar) [1837187] - [dma] dmaengine: Remove dma_device_satisfies_mask() wrapper (Jerry Snitselaar) [1837187] - [include] dmaengine: Add helper function to convert direction value to text (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add support for reporting DMA cached data amount (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add metadata_ops for dma_async_tx_descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: print more meaningful error message (Jerry Snitselaar) [1837187] - [dma] dmaengine: move module_/dma_device_put() after route free (Jerry Snitselaar) [1837187] - [dma] dmaengine: Add reference counting to dma_device struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: Move dma_channel_rebalance() infrastructure up in code (Jerry Snitselaar) [1837187] - [dma] dmaengine: Call module_put() after device_free_chan_resources() (Jerry Snitselaar) [1837187] - [dma] dmaengine: Store module owner in dma_device struct (Jerry Snitselaar) [1837187] - [include] dmaengine: Remove spaces before TABs (Jerry Snitselaar) [1837187] - [dma] ioat: ioat_alloc_ring() failure handling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: Fix access after free in vchan_complete() (Jerry Snitselaar) [1837187] - [include] dmaengine: Fix access to uninitialized dma_slave_caps (Jerry Snitselaar) [1837187] - [dma] dmanegine: ioat/dca: Use struct_size() helper (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Add kernel doc parameter descriptions (Jerry Snitselaar) [1837187] - [dma] dmaengine: acpi: Set up DMA mask based on CSRT (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for completion polling (Jerry Snitselaar) [1837187] - [dma] dmaengine: virt-dma: store result on dma descriptor (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: timeout value of -1 should specify infinite wait (Jerry Snitselaar) [1837187] - [dma] dmaengine: Grammar s/the its/its/, s/need/needs/ (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 291 (Jerry Snitselaar) [1837187] - [dma] treewide: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1837187] - [dma] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 7 (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move test data alloc & free into functions (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: add short-hand `buf_size` var in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: wrap src & dst data into a struct (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Abort test in case of mapping error (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add transfer_size parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add alignment parameter (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Use fixed point div to calculate iops (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: Add support for multi channel testing (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: fix a small memory leak in dmatest_func() (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: move size checks earlier in function (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: use dmaengine_terminate_sync() instead (Jerry Snitselaar) [1837187] - [dma] dmaengine: dmatest: unmap data on a single code-path when xfer done (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: replace spin_lock_irqsave with spin_lock (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma: remove dma_slave_config direction usage (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioat: fix prototype of ioat_enumerate_channels (Jerry Snitselaar) [1837187] - [dma] dmaengine: ioatdma: set the completion address register after channel reset (Jerry Snitselaar) [1837187] - [dma] dmaengine: idma64: Support dmaengine_terminate_sync() (Jerry Snitselaar) [1837187] - [dma] dmaengine: add a new helper dmaenginem_async_device_register (Jerry Snitselaar) [1837187] - [documentation] Documentation/x86: Add documentation for SVA (Shared Virtual Addressing) (Jerry Snitselaar) [1836777] - [iommu] iommu/vt-d: Change flags type to unsigned int in binding mm (Jerry Snitselaar) [1836777] - [drm] drm, iommu: Change type of pasid to u32 (Jerry Snitselaar) [1836777] - [x86] x86/asm: Add an enqcmds() wrapper for the ENQCMDS instruction (Jerry Snitselaar) [1837187] - [x86] x86/mmu: Allocate/free a PASID (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Mark ENQCMD as disabled when configured out (Jerry Snitselaar) [1836777] - [mm] mm: Add a pasid member to struct mm_struct (Jerry Snitselaar) [1836777] - [x86] x86/msr-index: Define an IA32_PASID MSR (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Add supervisor PASID state for ENQCMD (Jerry Snitselaar) [1836777] - [x86] x86/cpufeatures: Enumerate ENQCMD and ENQCMDS instructions (Jerry Snitselaar) [1836777] - [x86] x86/fpu/xstate: Restore supervisor states for signal return (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Preserve supervisor states for the slow path in __fpu__restore_sig() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Introduce copy_supervisor_to_kernel() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update copy_kernel_to_xregs_err() for supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Update sanitize_restored_xstate() for supervisor xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new functions for clearing fpregs and xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Introduce XSAVES supervisor states (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Separate user and supervisor xfeatures mask (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Define new macros for supervisor and user xstates (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Rename validate_xstate_header() to validate_user_xstate_header() (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel: Fix typo which caused GDB regression (Jerry Snitselaar) [1837178] - [x86] copy_xstate_to_kernel(): don't leave parts of destination uninitialized (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Warn when checking alignment of disabled xfeatures (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix XSAVES offsets in setup_xstate_comp() (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix last_good_offset in setup_xstate_features() (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Shrink space allocated for xstate_comp_offsets (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Make xfeature_is_supervisor()/xfeature_is_user() return bool (Jerry Snitselaar) [1837178] - [x86] x86/fpu/xstate: Fix small issues (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use XFEATURE_FP/SSE enum values instead of hardcoded numbers (Jerry Snitselaar) [1837178] - [x86] x86/fpu: Use unsigned long long shift in xfeature_uncompacted_offset() (Jerry Snitselaar) [1837178] - [iommu] iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix kernel NULL pointer dereference in find_domain() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Don't read VCCAP register unless it exists (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add SMMUv3.2 range invalidation support (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Batch ATC invalidation commands (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Add command queue batching helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add sanity check for interrupt remapping table length macros (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix lockdep splat in iommu_flush_dev_iotlb() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit for amd_iommu_activate_guest_mode (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Fix potential @entry null deref (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle 36bit addressing for x86-32 (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not use IOMMUv2 functionality when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Do not force direct mapping when SME is active (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Restore IRTE.RemapEn bit after programming IRTE (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix NULL pointer dereference in dev_iommu_priv_set() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Serialize IOMMU GCMD register modifications (Jerry Snitselaar) [1887546] - [dma] dma-pool: Fix an uninitialized variable bug in atomic_pool_expand() (Jerry Snitselaar) [1887546] - [dma] dma-pool: Only allocate from CMA when in same memory zone (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix coherent pool allocations for IOMMU mappings (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move Kconfig and Makefile bits down into amd directory (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Kconfig and Makefile bits down into intel directory (Jerry Snitselaar) [1887546] - [iommu] iommu: Add gfp parameter to io_pgtable_ops->map() (Jerry Snitselaar) [1887546] - [iommu] iommu: Mark __iommu_map_sg() as static (Jerry Snitselaar) [1887546] - [iommu] iommu: Tidy up Kconfig for SoC IOMMUs (Jerry Snitselaar) [1887546] - [iommu] iommu: Make some functions static (Jerry Snitselaar) [1887546] - [include] iommu: Move sg_table wrapper out of CONFIG_IOMMU_SUPPORT (Jerry Snitselaar) [1887546] - [powerpc] powerpc/dma: Remove dev->archdata.iommu_domain (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove double zero check (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Rename intel-pasid.h to pasid.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page response ops support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report page request faults for guest SVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add a helper to get svm and sdev for pasid (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Refactor device_to_iommu() helper (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Disable multiple GPASID-dev bind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Warn on out-of-range invalidation address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix devTLB flush for vSVA (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Handle non-page aligned address (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix PASID devTLB invalidation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove global page support in devTLB flush (Jerry Snitselaar) [1887546] - [include] iommu/vt-d: Enforce PASID devTLB field mask (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove unused IOMMU_SYS_CACHE_ONLY flag (Jerry Snitselaar) [1887546] - [iommu] PCI/ATS: Add pci_pri_supported() to check device or associated PF (Jerry Snitselaar) [1887546] - [pci] PCI: Treat "external-facing" devices themselves as internal (Jerry Snitselaar) [1887546] - [documentation] docs: fix references for DMA*.txt files (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: cleanup dma_alloc_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-debug: use named initializers for dir2name (Jerry Snitselaar) [1887546] - [dma] dma-mapping: add a dma_ops_bypass flag to struct device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: inline the fast path dma-direct calls (Jerry Snitselaar) [1887546] - [dma] dma-mapping: move the remaining DMA API calls out of line (Jerry Snitselaar) [1887546] - [dma] dma-mapping: don't BUG when calling dma_map_resource on RAM (Jerry Snitselaar) [1887546] - [of] of: Allow the iommu-map property to omit untranslated devices (Jerry Snitselaar) [1887546] - [iommu] treewide: Remove uninitialized_var() usage (Jerry Snitselaar) [1887546] - [dma] dma-pool: do not allocate pool memory from CMA (Jerry Snitselaar) [1887546] - [dma] dma-pool: make sure atomic pool suits device (Jerry Snitselaar) [1887546] - [dma] dma-pool: introduce dma_guess_pool() (Jerry Snitselaar) [1887546] - [dma] dma-pool: get rid of dma_in_atomic_pool() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide function to check physical memory area validity (Jerry Snitselaar) [1887546] - [documentation] docs: move DMA kAPI to Documentation/core-api (Jerry Snitselaar) [1887546] - [dma] dma-mapping: remove dma_mark_declared_memory_occupied (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO.txt: fix an unmarked code block (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix a function name of max_mapping_size (Jerry Snitselaar) [1887546] - [documentation] docs: DMA-API-HOWTO: add a missing "=" (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-API-HOWTO: update dma_mask sections (Jerry Snitselaar) [1887546] - [documentation] Documentation/DMA-ISA-LPC: fix an incorrect reference (Jerry Snitselaar) [1887546] - [documentation] Documentation: DMA-API: fix two typos (Jerry Snitselaar) [1887546] - [dma] dma-mapping: warn when coherent pool is depleted (Jerry Snitselaar) [1887546] - [dma] dma-remap: align the size in dma_common_*_remap() (Jerry Snitselaar) [1887546] - [dma] dma-mapping: DMA_COHERENT_POOL should select GENERIC_ALLOCATOR (Jerry Snitselaar) [1887546] - [dma] dma-direct: add missing set_memory_decrypted() for coherent mapping (Jerry Snitselaar) [1887546] - [dma] dma-direct: check return value when encrypting or decrypting memory (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-encrypt memory if dma_direct_alloc_pages() fails (Jerry Snitselaar) [1887546] - [dma] dma-direct: always align allocation size in dma_direct_alloc_pages() (Jerry Snitselaar) [1887546] - [dma] dma-direct: mark __dma_direct_alloc_pages static (Jerry Snitselaar) [1887546] - [dma] dma-direct: re-enable mmap for !CONFIG_MMU (Jerry Snitselaar) [1887546] - [dma] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL (Jerry Snitselaar) [1887546] - [message] scsi: mptfusion: Don't use GFP_ATOMIC for larger DMA allocations (Jerry Snitselaar) [1887546] - [dma] dma-pool: fix too large DMA pools on medium memory size systems (Jerry Snitselaar) [1887546] - [iommu] treewide: replace '---help---' in Kconfig files with 'help' (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make remove callback message more informative (Jerry Snitselaar) [1887546] - [include] iommu: add generic helper for mapping sgtable objects (Jerry Snitselaar) [1887546] - [dma] dma-contiguous: fix comment for dma_release_from_contiguous (Jerry Snitselaar) [1887546] - [dma] dma-pool: scale the default DMA coherent pool size with memory capacity (Jerry Snitselaar) [1887546] - [x86] x86/mm: unencrypted non-blocking DMA allocations use coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add pool sizes to debugfs (Jerry Snitselaar) [1887546] - [dma] dma-direct: atomic allocations must come from atomic coherent pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: dynamically expanding atomic pools (Jerry Snitselaar) [1887546] - [dma] dma-pool: add additional coherent pools to map to gfp mask (Jerry Snitselaar) [1887546] - [dma] dma-remap: separate DMA atomic pools from direct remap code (Jerry Snitselaar) [1887546] - [dma] dma-mapping: use vmap insted of reimplementing it (Jerry Snitselaar) [1887546] - [dma] dma-debug: make __dma_entry_alloc_check_leak() static (Jerry Snitselaar) [1887546] - [dma] dma: debug: no need to check return value of debugfs_create functions (Jerry Snitselaar) [1887546] - [dma] dma-debug: Batch dma_debug_entry allocation (Jerry Snitselaar) [1887546] - [dma] dma/debug: Remove dma_debug_resize_entries() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Make leak-like behaviour apparent (Jerry Snitselaar) [1887546] - [dma] dma-debug: Dynamically expand the dma_debug_entry pool (Jerry Snitselaar) [1887546] - [dma] dma-debug: Use pr_fmt() (Jerry Snitselaar) [1887546] - [dma] dma-debug: Expose nr_total_entries in debugfs (Jerry Snitselaar) [1887546] - [dma] dma-debug: fix displaying of dma allocation type (Jerry Snitselaar) [1887546] - [dma] dma-direct: fix data truncation in dma_direct_get_required_mask() (Jerry Snitselaar) [1887546] - [dma] dma-direct: provide a arch_dma_clear_uncached hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: make uncached_kernel_address more general (Jerry Snitselaar) [1887546] - [include] dma-direct: remove the cached_kernel_address hook (Jerry Snitselaar) [1887546] - [dma] dma-direct: consolidate the error handling in dma_direct_alloc_pages (Jerry Snitselaar) [1887546] - [dma] dma-coherent: fix integer overflow in the reserved-memory dma allocation (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix misuse of iommu_domain_identity_map() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Update scalable mode paging structure coherency (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enable PCI ACS for platform opt in hint (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Set U/S bit in first level page table by default (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make Intel SVM code 64-bit only (Jerry Snitselaar) [1887546] - [arm64] arm64: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [x86] x86: Remove dev->archdata.iommu pointer (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use dev_iommu_priv_get/set() (Jerry Snitselaar) [1887546] - [iommu] iommu: Allow page responses without PASID (Jerry Snitselaar) [1887546] - [iommu] iommu/iova: Don't BUG on invalid PFNs (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Add helper functions to update domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Print extended features in one line to fix divergent log levels (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Make amd_iommu_apply_ivrs_quirks() static inline (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move Intel IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Move AMD IOMMU driver into subdirectory (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove redundant devid checks (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Store dev_data as device iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Merge private header files (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Remove PD_DMA_OPS_MASK (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Consolidate domain allocation/freeing (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Free page-table in protection_domain_free() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Allocate page-table in protection_domain_init() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Let free_pagetable() not rely on domain->pt_root (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unexport get_dev_data() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove iommu_sva_ops::mm_exit() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [iommu] iommu/amd: Use pci_ats_supported() (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Only enable ATS for trusted devices (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Don't reserve implementation defined register space (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: remove set but not used variable 'smmu' (Jerry Snitselaar) [1887546] - [uapi] iommu/virtio: Fix sparse warning (Jerry Snitselaar) [1887546] - [pci] PCI/ATS: Export symbols of PASID functions (Jerry Snitselaar) [1887546] - [iommu] iommu/mediatek: Fix MTK_IOMMU dependencies (Jerry Snitselaar) [1887546] - [iommu] iommu: spapr_tce: Disable compile testing to fix build on book3s_32 config (Jerry Snitselaar) [1887546] - [iommu] iommu: Enable compile testing for some of drivers (Jerry Snitselaar) [1887546] - [x86] x86: Hide the archdata.iommu field behind generic IOMMU_API (Jerry Snitselaar) [1887546] - [iommu] iommu/hyper-v: Constify hyperv_ir_domain_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix compile warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: fix a GCC warning (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Fix pointer cast warnings on 32 bit (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove IOVA handling code from the non-dma_ops path (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove duplicated check in intel_svm_bind_mm() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Remove redundant IOTLB flush (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add page request draining support (Jerry Snitselaar) [1887546 1847060] - [iommu] iommu/vt-d: Disable non-recoverable fault processing before unbind (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show inv queue internals (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Multiple descriptors per qi_submit_sync() (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace intel SVM APIs with generic SVA APIs (Jerry Snitselaar) [1887546 1836578] - [include] iommu/vt-d: Fix compile warning from intel-svm.h (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Report SVA feature with generic flag (Jerry Snitselaar) [1887546 1836578] - [iommu] iommu/vt-d: Add custom allocator for IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Enlightened PASID allocation (Jerry Snitselaar) [1887546 1837167] - [iommu] iommu/vt-d: Add svm/sva invalidate function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Support flushing more translation cache types (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add bind guest PASID support (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add nested translation helper function (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use a helper function to skip agaw for SL (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Move domain helper to header (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove functions that support private domain (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Unify format of the printed messages (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce guest PASID bind function (Jerry Snitselaar) [1887546] - [iommu] iommu: Introduce cache_invalidate API (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: debugfs: Add support to show page table internals (Jerry Snitselaar) [1887546 1835059] - [iommu] iommu/vt-d: Use iova over first level (Jerry Snitselaar) [1887546 1837160] - [iommu] iommu/vt-d: Update first level super page capability (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Make first level IOVA canonical (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Flush PASID-based iotlb for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Setup pasid entries for iova over first level (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add PASID_FLAG_FL5LP for first-level pasid setup (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add set domain DOMAIN_ATTR_NESTING attr (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Identify domains using first level page table (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Misc macro clean up for SVM (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add build dependency on IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Replace Intel specific PASID allocator with IOASID (Jerry Snitselaar) [1887546] - [iommu] iommu/ioasid: Add custom allocators (Jerry Snitselaar) [1887546] - [iommu] iommu: Add I/O ASID allocator (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Use right Kconfig option name (Jerry Snitselaar) [1887546] - [iommu] iommu/vt-d: Add Kconfig option to enable/disable scalable mode (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reverse arguments to list_add (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Use accessor functions for iommu private data (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Reject IOMMU page granule larger than PAGE_SIZE (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Fix freeing of incomplete domains (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Build virtio-iommu as module (Jerry Snitselaar) [1887546] - [iommu] iommu: virtio: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Remove unused variable (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Update to most recent specification (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add event queue (Jerry Snitselaar) [1887546] - [iommu] iommu/virtio: Add probe request (Jerry Snitselaar) [1887546] - [iommu] iommu: Add virtio-iommu driver (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove duplicate error message (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix uninitilized variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rename IOMMU_QCOM_SYS_CACHE and improve doc (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Restore naming of driver parameter prefix (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Use WRITE_ONCE() when changing validity of an STE (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Improve SMR mask test (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Fix IOVA validation for 32-bit (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Prepare for TTBR1 usage (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise VTCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename public #defines under ARM_SMMU_ namespace (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TCR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Ensure ARM_64_LPAE_S2_TCR_RES1 is unsigned (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Improve attribute handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Support non-coherent stage-2 page tables (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Fix -Wunused-const-variable warning (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Remove useless of_match_ptr() (Jerry Snitselaar) [1887546] - [iommu] drivers/iommu: Initialise module 'owner' field in iommu_device_set_ops() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Update my email address in MODULE_AUTHOR() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Allow building as a module (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Support SMMU module probing from the IORT (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu-v3: Unregister IOMMU and bus ops on device removal (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Prevent forced unbinding of Arm SMMU drivers (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] Revert "iommu/arm-smmu: Make arm-smmu-v3 explicitly non-modular" (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise TTBRn handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise MAIR handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify level indexing (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify PGD size handling (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify start level lookup (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Simplify bounds checks (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm: Rationalise size check (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Make selftest gubbins consistently __init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Avoid pathological RPM behaviour for unmaps (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable: Move some initialization data to .init.rodata (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Report USF more clearly (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove arm_smmu_flush_ops (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move .tlb_sync method to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove "leaf" indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Remove .tlb_inv_range indirection (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Use ias/oas to check the valid iova/pa (Jerry Snitselaar) [1887546] - [iommu] iommu/io-pgtable-arm-v7s: Add paddr_to_iopte and iopte_to_paddr helpers (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Ensure 64-bit I/O accessors are available on 32-bit CPU (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Make private implementation details static (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add context init implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add reset implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add configuration implementation hook (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Move Secure access quirk to implementation (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: ioremap smmu mmio region before implementation init (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Add implementation infrastructure (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rename arm-smmu-regs.h (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR0 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract context bank accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Abstract GR1 accesses (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Get rid of weird "atomic" write (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Split arm_smmu_tlb_inv_range_nosync() (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Rework cb_base handling (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert context bank registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR1 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu/arm-smmu: Convert GR0 registers to bitfields (Jerry Snitselaar) [1887546] - [iommu] iommu: Remove IOMMU_OF_DECLARE (Jerry Snitselaar) [1887546] - [iommu] iommu: Stop deferring probe at end of initcalls (Jerry Snitselaar) [1887546] - [iommu] iommu: Fix use-after-free in iommu_release_device (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Fix dma_pgprot() for unencrypted coherent pages (Jerry Snitselaar) [1887546] - [x86] x86: Don't let pgprot_modify() change the page encryption bit (Jerry Snitselaar) [1887546] - [x86] x86/PCI: Remove X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [pci] PCI: vmd: Remove dma_map_ops overrides (Jerry Snitselaar) [1887546] - [pci] x86/pci: Clean up usage of X86_DEV_DMA_OPS (Jerry Snitselaar) [1887546] - [x86] x86/Kconfig: Remove the unused X86_DMA_REMAP KConfig symbol (Jerry Snitselaar) [1887546] - [dma] dma-direct: avoid a forward declaration for phys_to_dma (Jerry Snitselaar) [1887546] - [dma] dma-mapping: Add vmap checks to dma_map_single() (Jerry Snitselaar) [1887546] - [x86] x86/platform/uv: Fix UV4 hub revision adjustment (Frank Ramsay) [1908507] - [ata] ahci: Add Intel Rocket Lake PCH-H RAID PCI IDs (Steve Best) [1868308]- [mfd] mfd: intel-lpss: Fix Intel Elkhart Lake LPSS I2C input clock (Steve Best) [1783586] - [mfd] mfd: intel-lpss: Add Intel Elkhart Lake PCH PCI IDs (Steve Best) [1783586] - [i2c] i2c: i801: Add support for Intel Elkhart Lake (Steve Best) [1783586] - [fs] fuse: fix bad inode (Miklos Szeredi) [1906908] - [fs] virtiofs: calculate number of scatter-gather elements accurately (Vivek Goyal) [1783467] - [fs] virtiofs: add logic to free up a memory range (Vivek Goyal) [1783467] - [fs] virtiofs: maintain a list of busy elements (Vivek Goyal) [1783467] - [fs] virtiofs: serialize truncate/punch_hole and dax fault path (Vivek Goyal) [1783467] - [fs] virtiofs: define dax address space operations (Vivek Goyal) [1783467] - [fs] virtiofs: add DAX mmap support (Vivek Goyal) [1783467] - [fs] virtiofs: implement dax read/write operations (Vivek Goyal) [1783467] - [uapi] virtiofs: introduce setupmapping/removemapping commands (Vivek Goyal) [1783467] - [fs] virtiofs: implement FUSE_INIT map_alignment field (Vivek Goyal) [1783467] - [fs] virtiofs: keep a list of free dax memory ranges (Vivek Goyal) [1783467] - [fs] virtiofs: add a mount option to enable dax (Vivek Goyal) [1783467] - [fs] virtiofs: set up virtio_fs dax_device (Vivek Goyal) [1783467] - [fs] virtiofs: get rid of no_mount_options (Vivek Goyal) [1783467] - [fs] virtiofs: provide a helper function for virtqueue initialization (Vivek Goyal) [1783467] - [fs] dax: Create a range version of dax_layout_busy_page() (Vivek Goyal) [1783467] - [dax] dax: Modify bdev_dax_pgoff() to handle NULL bdev (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for MMIO transport (Vivek Goyal) [1783467] - [virtio] virtio: Implement get_shm_region for PCI transport (Vivek Goyal) [1783467] - [include] virtio: Add get_shm_region method (Vivek Goyal) [1783467] - [fs] virtiofs: do not use fuse_fill_super_common() for device installation (Vivek Goyal) [1783467] - [uapi] fuse: reserve values for mapping protocol (Vivek Goyal) [1783467] - [fs] virtiofs: Convert virtiofs to use new mount API (Vivek Goyal) [1783467] - [fs] fuse: reject options on reconfigure via fsconfig(2) (Vivek Goyal) [1783467] - [fs] fuse: ignore 'data' argument of mount(..., MS_REMOUNT) (Vivek Goyal) [1783467] - [fs] fuse: use ->reconfigure() instead of ->remount_fs() (Vivek Goyal) [1783467] - [fs] fuse: switch to use errorfc() et.al (Vivek Goyal) [1783467] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Vivek Goyal) [1783467] - [fs] fs_parser: remove fs_parameter_description name field (Vivek Goyal) [1783467] - [fs] vfs: subtype handling moved to fuse (Vivek Goyal) [1783467] - [fs] fuse: convert to use the new mount API (Vivek Goyal) [1783467] - [lib] lib/zlib: fix inflating zlib streams on s390 (Philipp Rudo) [1908011] - [scsi] scsi: ibmvfc: Set default timeout to avoid crash during migration (Diego Domingos) [1890710] - [net] Bluetooth: Fix null pointer dereference in hci_event_packet() (Gopal Tiwari) [1921475] - [tools] selftests: fix poll error in udpgro.sh (Hangbin Liu) [1922213] - [net] mptcp: fix length of MP_PRIO suboption (Davide Caratti) [1923156] - [powerpc] powerpc/sstep: Fix array out of bound warning (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/watchpoint: Workaround P10 DD1 issue with VSX-32 byte instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Add testcases for VSX vector paired load/store instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/ppc-opcode: Add encoding macros for VSX vector paired instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Support VSX vector paired storage access instructions (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Cover new VSX instructions under CONFIG_VSX (Desnes Augusto Nunes do Rosario) [1908739] - [powerpc] powerpc/sstep: Emulate prefixed instructions only when CPU_FTR_ARCH_31 is set (Desnes Augusto Nunes do Rosario) [1908739] - [net] fix setsockopt(SO_REUSEADDR) for MPTCP sockets (Paolo Abeni) [1922500] - [net] net_sched: avoid shift-out-of-bounds in tcindex_set_parms() (Davide Caratti) [1917366] - [net] net_sched: reject silly cell_log in qdisc_get_rtab() (Davide Caratti) [1917366] - [net] sched: prevent invalid Scell_log shift count (Davide Caratti) [1917366] - [net] netem: fix zero division in tabledist (Davide Caratti) [1917366] - [net] protect tcf_block_unbind with block lock (Davide Caratti) [1917366] - [pinctrl] pinctrl: intel: Add Intel Elkhart Lake pin controller support (Steve Best) [1783600] - [fs] dlm: fix invalid cluster name warning (Alexander Aring) [1655771] - [mm] arm64: acpi: Make apei_claim_sea() synchronise with APEI's irq work (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix doc warnings in iort.c (Al Stone) [1865698 1851555] - [acpi] ACPI, APEI, Fix error return value in apei_map_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Initialize performance state sysfs attribute (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Support Alder Lake (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2228T (Al Stone) [1865698 1851555] - [acpi] ACPI: Fix whitespace inconsistencies (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Acer SW5-012 lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: fix enum-conversion warning (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: remove unreachable breaks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add missing type casts in GPE register access code (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add ACPI_DPTF Kconfig menu (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Fix participant driver names (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: remove comment regarding string _UID support (Al Stone) [1865698 1851555] - [acpi] ACPI: reboot: Avoid racing after writing to ACPI RESET_REG (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: don't allow debugging when ACPI is disabled (Al Stone) [1865698 1851555] - [dax] ACPI: HMAT: refactor hmat_register_target_device to hmem_register_device (Al Stone) [1865698 1851555] - [acpi] x86/numa: add 'nohmat' option (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200925 Version 20200925 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Remove unnecessary semicolon (Al Stone) [1865698 1851555] - [acpi] ACPICA: Debugger: Add a new command: "ALL " (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: Return exceptions for string-to-integer conversions (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpi_help: Update UUID list (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add predefined names found in the SMBus sepcification (Al Stone) [1865698 1851555] - [acpi] ACPICA: Tree-wide: fix various typos and spelling mistakes (Al Stone) [1865698 1851555] - [acpi] ACPICA: Drop the repeated word "an" in a comment (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for 64 bit risc-v compilation (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: Flush EC work unconditionally after wakeup (Al Stone) [1865698 1851555] - [acpi] ACPI: button: fix handling lid state changes when input device closed (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Replace ACPI_DEBUG_PRINT() with pr_debug() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove 'state' from struct acpi_memory_device (Al Stone) [1865698 1851555] - [acpi] ACPI / extlog: Check for RDMSR failure (Al Stone) [1865698 1851555] - [acpi] node: Add access1 class to represent CPU to memory characteristics (Al Stone) [1865698 1851555] - [acpi] ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 (Al Stone) [1865698 1851555] - [acpi] ACPI: Let ACPI know we support Generic Initiator Affinity Structures (Al Stone) [1865698 1851555] - [acpi] ACPI: Support Generic Initiator only domains (Al Stone) [1865698 1851555] - [acpi] ACPI / NUMA: Add stub function for pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] virtio-mem: Allow to specify an ACPI PXM as nid (Al Stone) [1865698 1851555] - [acpi] ACPI: battery: include linux/power_supply.h (Al Stone) [1865698 1851555] - [acpi] ACPI: wakeup: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: tiny-power-button: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: proc: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Remove unused ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: event: Remove leftover ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: dock: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: debugfs: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: custom_method: Remove dead ACPICA debug code (Al Stone) [1865698 1851555] - [acpi] ACPI: container: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: platform: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: memhotplug: Remove leftover ACPICA debug functionality (Al Stone) [1865698 1851555] - [acpi] ACPI: LPSS: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: cmos_rtc: Remove leftover ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: update kernel-doc line comments (Al Stone) [1865698 1851555] - [acpi] PNP: ACPI: Fix missing-prototypes in acpi_pnp.c (Al Stone) [1865698 1851555] - [acpi] ACPI: configfs: Add missing config_item_put() to fix refcount leak (Al Stone) [1865698 1851555] - [acpi] ACPI: video: use ACPI backlight for HP 635 Notebook (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Clean up header file include statements (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove unnecessary APD_ADDR() macro stub (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove ACPI_MODULE_NAME() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Remove flags from struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add kerneldoc for properties in struct apd_device_desc (Al Stone) [1865698 1851555] - [acpi] ACPI: Remove side effect of partly creating a node in acpi_get_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Rename acpi_map_pxm_to_online_node() to pxm_to_online_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: Do not create new NUMA domains from ACPI static tables that are not SRAT (Al Stone) [1865698 1851555] - [acpi] ACPI: Add out of bounds and numa_off protections to pxm_to_node() (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Print more information when acpi_processor_evaluate_cst() fails (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add PCH FIVR participant driver (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Add Ampere Altra SOC MCFG quirk (Al Stone) [1865698 1851555] - [acpi] ACPI / APEI: Add a notifier chain for unknown (vendor) CPER records (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Move TPS68470 OpRegion driver to drivers/acpi/pmic/ (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Split out Kconfig and Makefile specific for ACPI PMIC (Al Stone) [1865698 1851555] - [acpi] PCI/ACPI: Tone down missing MCFG message (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Make ACPICA use logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Change the type of acpi_os_map_generic_address() return value (Al Stone) [1865698 1851555] - [acpi] ACPICA: Add support for using logical addresses of GPE blocks (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused inline functions (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Drop the unused @ops of iort_add_device_replay() (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Save Cherry Trail PWM ctx registers only once (at activation) (Al Stone) [1865698 1851555] - [acpi] ACPI / LPSS: Resume Cherry Trail PWM controller in no-irq phase (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce special struct type for GPE register addresses (Al Stone) [1865698 1851555] - [acpi] ACPICA: Introduce acpi_hw_gpe_read() and acpi_hw_gpe_write() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Validate GPE blocks at init time (Al Stone) [1865698 1851555] - [acpi] ACPI: Export acpi_get_first_physical_node() to modules (Al Stone) [1865698 1851555] - [kernel] rcu/tree: Export rcu_idle_{enter, exit} to modules (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: fix -Wformat (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Fix build for ARCH_APICTIMER_STOPS_ON_C3 unset (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Take over RCU-idle for C3-BM idle (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TLB_FLUSHED (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: Use CPUIDLE_FLAG_TIMER_STOP (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Prevent acpi_release_memory() from returning too early (Al Stone) [1865698 1851555] - [acpi] ACPI: ioremap: avoid redundant rounding to OS page size (Al Stone) [1865698 1851555] - [acpi] ACPI: SoC: APD: Check return value of acpi_dev_get_property() (Al Stone) [1865698 1851555] - [acpi] ACPI: APD: Add a fmw property is_raven (Al Stone) [1865698 1851555] - [include] ACPI: APD: Change name from ST to FCH (Al Stone) [1865698 1851555] - [acpi] i2c: designware: Add device HID for Hygon I2C controller (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Add an input ID to acpi_dma_configure() (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove useless PCI bus walk (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_msi_map_rid() PCI agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_get_device_domain IRQ domain agnostic (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Make iort_match_node_callback walk the ACPI namespace for NC (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: remove redundant assignment to variable rc (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless 'node >= MAX_NUMNODES' check (Al Stone) [1865698 1851555] - [acpi] ACPI: NUMA: Remove the useless sub table pointer check (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: Remove the duplicated checks for acpi_parse_entries_array() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200717 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Do not increment operation_region reference counts for field units (Al Stone) [1865698 1851555] - [acpi] ACPICA: Replace one-element array with flexible-array (Al Stone) [1865698 1851555] - [acpi] ACPI: acpi_pad: initialize preferred_cpu (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Clean up the removal of unused memory mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_iomem() (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Use deferred unmapping in acpi_os_unmap_generic_address() (Al Stone) [1865698 1851555] - [acpi] ACPICA: Preserve memory opregion mappings (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Implement deferred unmapping of ACPI memory (Al Stone) [1865698 1851555] - [acpi] ACPI: Use fallthrough pseudo-keyword (Al Stone) [1865698 1851555] - [acpi] acpi: thermal: Don't call thermal_zone_device_is_enabled() (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Fix Tiger Lake ACPI device ID (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant for TigerLake (Al Stone) [1865698 1851555] - [acpi] ACPI: tables: avoid relocations for table signature array (Al Stone) [1865698 1851555] - [acpi] ACPI: PAD: Eliminate usage of uninitialized_var() macro (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: add newlines when printing module parameters (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: add newline when printing 'ec_event_clearing' module parameter (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix pm_profile_attr type (Al Stone) [1865698 1851555] - [acpi] ACPI: property: use cached name in acpi_fwnode_get_named_child_node() (Al Stone) [1865698 1851555] - [acpi] sched,acpi_pad: Convert to sched_set_fifo*() (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: Avoid using power resources if there are none for D0 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200528 (Al Stone) [1865698 1851555] - [acpi] ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe() (Al Stone) [1865698 1851555] - [acpi] ACPI: sysfs: Fix reference count leak in acpi_sysfs_add_hotplug_profile() (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: use correct trigger type field in _Exx / _Lxx handling (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Remove the unused __get_pci_rid() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: PM: s2idle: Extend GPE dispatching debug message (Al Stone) [1865698 1851555] - [acpi] ACPI: PM: s2idle: Print type of wakeup debug messages (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Add battery participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: DPTF: Additional sysfs attributes for power participant driver (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer TravelMate 5735Z (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: Fix PMCG node single ID mapping handling (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Kick the memory_failure() queue for synchronous errors (Al Stone) [1865698 1851555] - [mm] mm/memory-failure: Add memory_failure_queue_kick() (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add comments for not calling acpi_put_table() (Al Stone) [1865698 1851555] - [acpi] ACPI: GTDT: Put GTDT table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI / PMIC: Add i2c address for thermal control (Al Stone) [1865698 1851555] - [acpi] ACPI: GED: add support for _Exx / _Lxx handler methods (Al Stone) [1865698 1851555] - [acpi] ACPI: Delete unused proc filename macros (Al Stone) [1865698 1851555] - [acpi] ACPI: IORT: Add extra message "applying workaround" for off-by-1 issue (Al Stone) [1865698 1851555] - [acpi] ACPI: utils: Add acpi_evaluate_reg() helper (Al Stone) [1865698 1851555] - [acpi] ACPI: debug: Make two functions static (Al Stone) [1865698 1851555] - [acpi] ACPI: sleep: Put the FACS table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: scan: Put SPCR and STAO table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Put the ACPI table after using it (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the HEST table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error record serialization table for error path (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the error injection table for error path and module exit (Al Stone) [1865698 1851555] - [acpi] ACPI: APEI: Put the boot error record table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: watchdog: Put the watchdog action table after parsing (Al Stone) [1865698 1851555] - [acpi] ACPI: LPIT: Put the low power idle table after using it (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200430 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix required parameters for _NIG and _NIH (Al Stone) [1865698 1851555] - [acpi] ACPICA: Dispatcher: add status checks (Al Stone) [1865698 1851555] - [acpi] ACPICA: Disassembler: ignore AE_ALREADY_EXISTS status when parsing create operators (Al Stone) [1865698 1851555] - [acpi] ACPICA: Move acpi_gbl_next_cmd_num definition to acglobal.h (Al Stone) [1865698 1851555] - [acpi] ACPICA: Make acpi_protocol_lengths static (Al Stone) [1865698 1851555] - [acpi] ACPI/IORT: work around num_ids ambiguity (Al Stone) [1865698 1851555] - [acpi] Revert "ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map()" (Al Stone) [1865698 1851555] - [pci] PCI: Constify struct pci_ecam_ops (Al Stone) [1865698 1851555] - [acpi] PM: ACPI: Output correct message on target power state (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: Make some symbols static (Al Stone) [1865698 1851555] - [acpi] ACPI: processor: idle: Allow probing on platforms with one ACPI C-state (Al Stone) [1865698 1851555] - [documentation] PM: sleep: core: Rename DPM_FLAG_LEAVE_SUSPENDED (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_smart_suspend_and_suspended() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rename dev_pm_may_skip_resume() (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Rework the power.may_skip_resume handling (Al Stone) [1865698 1851555] - [acpi] PM: sleep: core: Do not skip callbacks in the resume phase (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Switch back to async_schedule_dev() (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Fold functions into their callers (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Simplify the SMART_SUSPEND flag handling (Al Stone) [1865698 1851555] - [base] PM: sleep: core: Use built-in RCU list checking (Al Stone) [1865698 1851555] - [base] PM: core: Fix handling of devices deleted during system-wide resume (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dpm_noirq_begin() and dpm_noirq_end() (Al Stone) [1865698 1851555] - [kernel] PM: sleep: Integrate suspend-to-idle with generig suspend flow (Al Stone) [1865698 1851555] - [base] PM: sleep: Drop dev_pm_skip_next_resume_phases() (Al Stone) [1865698 1851555] - [acpi] ACPI: button: Drop no longer necessary Asus T200TA lid_init_state quirk (Al Stone) [1865698 1851555] - [acpi] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Fix up fast path check in acpi_ec_add() (Al Stone) [1865698 1851555] - [x86] ACPI, x86/boot: make acpi_nobgrt static (Al Stone) [1865698 1851555] - [x86] acpi/x86: add a kernel parameter to disable ACPI BGRT (Al Stone) [1865698 1851555] - [acpi] x86: ACPI: fix CPU hotplug deadlock (Al Stone) [1865698 1851555] - [x86] acpi/x86: ignore unspecified bit positions in the ACPI global lock field (Al Stone) [1865698 1851555] - [x86] x86/acpi: make "asmlinkage" part first thing in the function definition (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Move acpi_get_wakeup_address() into sleep.c, remove from (Al Stone) [1865698 1851555] - [x86] x86/ACPI/sleep: Remove an unnecessary include of asm/realmode.h (Al Stone) [1865698 1851555] - [x86] x86/efi: Explicitly include realmode.h to handle RM trampoline quirk (Al Stone) [1865698 1851555] - [acpi] ACPI: video: Use native backlight on Acer Aspire 5783z (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version 20200326 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fixes for acpiExec namespace init file (Al Stone) [1865698 1851555] - [acpi] ACPICA: WSMT: Fix typo, no functional change (Al Stone) [1865698 1851555] - [acpi] ACPICA: utilities: fix sprintf() (Al Stone) [1865698 1851555] - [acpi] ACPICA: acpiexec: remove redeclaration of acpi_gbl_db_opt_no_region_support (Al Stone) [1865698 1851555] - [acpi] ACPICA: Change PlatformCommChannel ASL keyword to PCC (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix IVRS IVHD type 10h reserved field name (Al Stone) [1865698 1851555] - [acpi] ACPICA: Implement IVRS IVHD type 11h parsing (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a typo in a comment field (Al Stone) [1865698 1851555] - [acpi] ACPICA: Update version to 20200214 (Al Stone) [1865698 1851555] - [acpi] ACPI: CPPC: clean up acpi_get_psd_map() (Al Stone) [1865698 1851555] - [acpi] ACPI: PCI: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: fan: Use scnprintf() for avoiding potential buffer overflow (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Eliminate EC_FLAGS_QUERY_HANDSHAKE (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Do not clear boot_ec_is_ecdt in acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_ecdt_start() and acpi_ec_init() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Consolidate event handler installation code (Al Stone) [1865698 1851555] - [acpi] ACPI: list_for_each_safe() -> list_for_each_entry_safe() (Al Stone) [1865698 1851555] - [acpi] ACPI: video: remove redundant assignments to variable result (Al Stone) [1865698 1851555] - [acpi] ACPI: OSL: Add missing __acquires/__releases annotations (Al Stone) [1865698 1851555] - [acpi] ACPI / battery: Cleanup Lenovo Ideapad Miix 320 DMI table entry (Al Stone) [1865698 1851555] - [acpi] ACPI / AC: Cleanup DMI quirk table (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Use fast path in acpi_ec_add() for DSDT boot EC (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Simplify acpi_ec_add() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Drop AE_NOT_FOUND special case from ec_install_handlers() (Al Stone) [1865698 1851555] - [acpi] ACPI: EC: Avoid passing redundant argument to functions (Al Stone) [1865698 1851555] - [include] ACPI: NUMA: Up-level "map to online node" functionality (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a couple of typos (Al Stone) [1865698 1851555] - [acpi] ACPICA: use acpi_size instead of u32 for prefix_path_length (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast length arguement to acpi_ns_build_normalized_path() as u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: cast the result of the pointer difference to u32 (Al Stone) [1865698 1851555] - [acpi] ACPICA: Table Manager: Update comments in a function header (Al Stone) [1865698 1851555] - [acpi] ACPICA: Enable sleep button on ACPI legacy wake (Al Stone) [1865698 1851555] - [acpi] ACPICA: Fix a comment "enable" fixed events -> "disable" all fixed events (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: make root file a parameter for cv_init_file_tree (Al Stone) [1865698 1851555] - [acpi] ACPICA: ASL-ASL+ converter: remove function parameters from cv_init_file_tree() (Al Stone) [1865698 1851555] - [acpi] ACPI: Add new tiny-power-button driver to directly signal init (Al Stone) [1865698 1851555] - [acpi] ACPI: button: move HIDs to acpi/button.h (Al Stone) [1865698 1851555] - [acpi] ACPI: treewide: remove redundant IS_ERR() before error code check (Al Stone) [1865698 1851555] - [dma] dmaengine: idma64: Use actual device for DMA transfers (Steve Best) [1784118] - [platform] platform/x86: dell-smbios-wmi: Correct a memory leak (David Arcari) [1898516] - [x86] x86/{mce,mm}: Unmap the entire page if the whole page is affected and poisoned (Aristeu Rozanski) [1850800]- [x86] kvm: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: use kvm_complete_insn_gp in emulating RDMSR/WRMSR (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: remove bogus #GP injection (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: de-allocate svm_cpu_data for all cpus in svm_cpu_uninit() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Fix split-irqchip vs interrupt injection window request (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: fix error return code in svm_create_vcpu() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Fix offset computation bug in __sev_dbg_decrypt() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use cpuid to determine max gfn (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: mmu: Fix SPTE encoding of MMIO generation upper half (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nvmx: Sync unsync'd vmcs02 state to vmcs12 on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: tracing: Fix unmatched kvm_entry and kvm_exit events (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Update description of KVM_{GET, CLEAR}_DIRTY_LOG (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: get smi pending status correctly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in intel_arch_events[] (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/pmu: Fix UBSAN shift-out-of-bounds warning in intel_pmu_refresh() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Add more protection against undefined behavior in rsvd_bits() (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM (Paolo Bonzini) [1904054 1906893 1904128] - [documentation] kvm: Forbid the use of tagged userspace addresses for memslots (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: allow KVM_REQ_GET_NESTED_STATE_PAGES outside guest mode for VMX (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: mark vmcb as dirty when forcingly leaving the guest mode (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: correctly restore nested_run_pending on migration (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Clarify TDP MMU page list invariants (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Ensure TDP MMU roots are freed after yield (Paolo Bonzini) [1904054 1906893 1904128] - [security] apparmor: remove duplicate macro list_entry_is_head() (Paolo Bonzini) [1904054 1906893 1904128] - [kernel] linux/list.h: add a macro to test if entry is pointing to the head (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: check tlbs_dirty directly (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: change in pv_eoi_get_pending() to make code more readable (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix shift out of bounds reported by UBSAN (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Optimize not-present/MMIO SPTE check in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use raw level to index into MMIO walks' sptes array (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Get root level from walkers when retrieving MMIO SPTE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Use -1 to flag an undefined spte in get_mmio_spte() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Remove the call to sev_platform_status() during setup (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Don't flush cache if hardware enforces cache coherency across encryption domains (Paolo Bonzini) [1904054 1906893 1904128] - [x86] cpu: Add hardware-enforced cache coherency as a CPUID feature (Paolo Bonzini) [1904054 1906893 1904128] - [x86] Remove X86_FEATURE_MFENCE_RDTSC (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm/vmx: Use TEST REG, REG instead of CMP $0, REG in vmenter.S (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: ignore SIPIs that are received while not in wait-for-sipi state (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: nsvm: set fixed bits by hand (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add TDP MMU SPTE changed trace point (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86/mmu: Add existing trace points to TDP MMU (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: check CR4 changes against vcpu->arch (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: adjust SEV for commit 7e8e6eed75e (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Move asid to vcpu_svm (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: remove unused macro HV_CLOCK_SIZE (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Sink cpuid update into vendor-specific set_cr4 functions (Paolo Bonzini) [1904054 1906893 1904128] - [virt] kvm: remove kvm_clear_guest_page (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Don't track dirty for KVM_SET_[TSS_ADDR|IDENTITY_MAP_ADDR] (Paolo Bonzini) [1904054 1906893 1904128] - [tools] kvm: selftests: test KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: hyper-v: allow KVM_GET_SUPPORTED_HV_CPUID as a system ioctl (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: emulate wait-for-SIPI and SIPI-VMExit (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: fix apic_accept_events vs check_nested_events (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Return bool instead of int for CR4 and SREGS validity checks (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: x86: Move vendor CR4 validity check to dedicated kvm_x86_ops hook (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: svm: Drop VMXE check from svm_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop explicit 'nested' check from vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [x86] kvm: vmx: Drop guest CPUID check for VMXE in vmx_set_cr4() (Paolo Bonzini) [1904054 1906893 1904128] - [netdrv] net/mlx5e: Update max_opened_tc also when channels are closed (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix leak upon failure of rule creation (Alaa Hleihel) [1918379 1914766] - [netdrv] net/mlx5: Fix function calculation for page trees (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used (Alaa Hleihel) [1918379] - [netdrv] mlx5: Mark BlueField-3 as unsupported device (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Enable host PF HCA after eswitch is initialized (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Rename peer_pf to host_pf (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: Make API mlx5_core_is_ecpf accept const pointer (Alaa Hleihel) [1923760 1918379] - [netdrv] net/mlx5: simplify the return expression of mlx5_ec_init() (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use strict get/set operations for obj_id (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation (Alaa Hleihel) [1918379] - [include] net/mlx5: Expose ifc bits for query modify header (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: CT: Fix incorrect removal of tuple_nat_node from nat rhashtable (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing MTU and LRO state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Revert parameters on errors when changing trust state without reset (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Correctly handle changing the number of queues when the interface is down (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix CT rule + encap slow path offload and deletion (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Maintain separate page trees for ECPF and PF functions (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Fix IPSEC stats (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Reduce tc unsupported key print level (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: free page before return (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: E-switch, Fix rate calculation for overflow (Alaa Hleihel) [1918379] - [netdrv] net/mlx5: Fix memory leak on flow table creation error flow (Alaa Hleihel) [1918379] - [infiniband] Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion" (Alaa Hleihel) [1918379] - [infiniband] RDMA/mlx5: Fix wrong free of blue flame register on error (Alaa Hleihel) [1918379] - [infiniband] IB/mlx5: Fix error unwinding when set_has_smi_cap fails (Alaa Hleihel) [1918379] - [netdrv] net/mlx5e: Add missing capability check for uplink follow (Alaa Hleihel) [1918379] - [netdrv] iavf: Use kzalloc for allocating only one thing (Stefan Assmann) [1838735] - [netdrv] iavf: fix double-release of rtnl_lock (Stefan Assmann) [1838735] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Stefan Assmann) [1838735] - [netdrv] iavf: Fix updating statistics (Stefan Assmann) [1838735] - [netdrv] iavf: fix error return code in iavf_init_get_resources() (Stefan Assmann) [1838735] - [netdrv] ethernet/intel: Convert fallthrough code comments (Stefan Assmann) [1838735] - [netdrv] net/intel: remove driver versions from Intel drivers (Stefan Assmann) [1838735] - [net] Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data (Gopal Tiwari) [1916057] - [fs] fs/fs-writeback.c: fix kernel-doc warning (Waiman Long) [1918047] - [include] memcg: only record foreign writebacks with dirty pages when memcg is not disabled (Waiman Long) [1918047] - [trace] writeback: don't access page->mapping directly in track_foreign_dirty TP (Waiman Long) [1918047] - [fs] writeback: add tracepoints for cgroup foreign writebacks (Waiman Long) [1918047] - [mm] writeback, memcg: Implement foreign dirty flushing (Waiman Long) [1918047] - [mm] mm: remove the account_page_dirtied export (Waiman Long) [1918047] - [fs] writeback, memcg: Implement cgroup_writeback_by_id() (Waiman Long) [1918047] - [mm] writeback: Separate out wb_get_lookup() from wb_get_create() (Waiman Long) [1918047] - [include] bdi: Add bdi->id (Waiman Long) [1918047] - [mm] mm/page-writeback: introduce tracepoint for wait_on_page_writeback() (Waiman Long) [1918047] - [fs] kernfs: fix barrier usage in __kernfs_new_node() (Waiman Long) [1918047] - [fs] kernfs: Allocating memory for kernfs_iattrs with kmem_cache (Waiman Long) [1918047] - [fs] fs: Convert writeback to XArray (Waiman Long) [1918047] - [mm] mm: Convert page-writeback to XArray (Waiman Long) [1918047] - [mm] mm/filemap: add missing mem_cgroup_uncharge() to __add_to_page_cache_locked() (Waiman Long) [1917681] - [mm] mm/slub: fix panic in slab_alloc_node() (Oleksandr Natalenko) [1921056] - [net] xfrm: interface: fix the priorities for ipip and ipv6 tunnels (Sabrina Dubroca) [1923269] - [net] netfilter: ipset: fix shift-out-of-bounds in htable_bits() (Antoine Tenart) [1918684] - [net] tcp: refine tcp_pacing_delay() for very low pacing rates (Antoine Tenart) [1905897] - [net] ensure correct skb->tstamp in various fragmenters (Antoine Tenart) [1905897] - [net] tcp: repaired skbs must init their tso_segs (Antoine Tenart) [1905897] - [net] tcp: address problems caused by EDT misshaps (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: ensure maxrate fq parameter applies to EDT flows (Antoine Tenart) [1905897] - [net] tcp: refine tcp_tso_should_defer() after EDT adoption (Antoine Tenart) [1905897] - [net] tcp_bbr: update comments to reflect pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: add tcp_reset_xmit_timer() helper (Antoine Tenart) [1905897] - [net] tcp: fix TCP_REPAIR xmit queue setup (Antoine Tenart) [1905897] - [net] tcp_bbr: adjust TCP BBR for departure time pacing (Antoine Tenart) [1905897] - [net] tcp_bbr: fix typo in bbr_pacing_margin_percent (Antoine Tenart) [1905897] - [net] tcp: optimize tcp internal pacing (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: no longer use skb_is_tcp_pure_ack() (Antoine Tenart) [1905897] - [net] tcp: mitigate scheduling jitter in EDT pacing model (Antoine Tenart) [1905897] - [net] tcp: do not change tcp_wstamp_ns in tcp_mstamp_refresh (Antoine Tenart) [1905897] - [net] tcp/fq: move back to CLOCK_MONOTONIC (Antoine Tenart) [1905897] - [net] tcp: switch tcp_internal_pacing() to tcp_wstamp_ns (Antoine Tenart) [1905897] - [net] tcp: switch tcp and sch_fq to new earliest departure time model (Antoine Tenart) [1905897] - [net] tcp: switch internal pacing timer to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: provide earliest departure time in skb->tstamp (Antoine Tenart) [1905897] - [net] tcp: add tcp_wstamp_ns socket field (Antoine Tenart) [1905897] - [net] net_sched: sch_fq: switch to CLOCK_TAI (Antoine Tenart) [1905897] - [net] tcp: introduce tcp_skb_timestamp_us() helper (Antoine Tenart) [1905897] - [net] tcp: switch tcp_clock_ns() to CLOCK_TAI base (Antoine Tenart) [1905897] - [drm] drm/nouveau/disp/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/dmaobj/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/gpio/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bar/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/timer/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/fb/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/imem/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/mc/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/devinit/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/pci/ga10: initial support (Ben Skeggs) [1916583] - [drm] drm/nouveau/core: recognise GA10 (Ben Skeggs) [1916583] - [drm] drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0 (Ben Skeggs) [1916583] - [drm] drm/nouveau/mmu: fix vram heap sizing (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110-: disable hw-initiated dpcd reads (Ben Skeggs) [1916583] - [drm] drm/nouveau/i2c/gk110: split out from i2c/gk104 (Ben Skeggs) [1916583] - [drm] drm/nouveau/privring: ack interrupts the same way as RM (Ben Skeggs) [1916583] - [drm] drm/nouveau/bios: fix issue shadowing expansion ROMs (Ben Skeggs) [1916583] - [netdrv] net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix two double free cases (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: ethtool, Fix restriction of autoneg with 56G (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: In skb build skip setting mark in switchdev mode (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: E-Switch, fix changing vf VLANID (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: Fix SWP offsets when vlan inserted by driver (Alaa Hleihel) [1899457 1819580] - [netdrv] net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Check if lag is supported before creating one (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Fix MR cache memory leak (Alaa Hleihel) [1899457] - [netdrv] net/mlx5: Fix passing zero to 'PTR_ERR' (Alaa Hleihel) [1899457] - [netdrv] net/mlx5e: remove unnecessary memset (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Assign dev to DM MR (Alaa Hleihel) [1899457] - [infiniband] RDMA/mlx5: Remove mlx5_ib_mr->npages (Alaa Hleihel) [1899457] - [documentation] scsi: fc: Update documentation of sysfs nodes for FPIN stats (Ewan Milne) [1859967] - [scsi] scsi: fc: Add mechanism to update FPIN signal statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Parse FPIN packets and update statistics (Ewan Milne) [1859967] - [scsi] scsi: fc: Add FPIN statistics to fc_host and fc_rport objects (Ewan Milne) [1859967] - [uapi] scsi: fc: Update formal FPIN descriptor definitions (Ewan Milne) [1859967] - [scsi] scsi: smartpqi: Update version to 1.2.16-012 (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct pqi_sas_smp_handler busy condition (Don Brace) [1890727 1889844] - [scsi] scsi: smartpqi: Correct driver removal with HBA disks (Don Brace) [1890727 1889844] - [target] scsi: target: Fix XCOPY NAA identifier lookup (Maurizio Lombardi) [1900463] {CVE-2020-28374} - [x86] perf/x86/intel/uncore: Add Comet Lake support (Michael Petlan) [1873271]- [net] bridge: Fix a warning when del bridge sysfs (Davide Caratti) [1917518] - [net] bridge: Avoid infinite loop when suppressing NS messages with invalid options (Davide Caratti) [1917518] - [net] bridge: fix stale eth hdr pointer in br_dev_xmit (Davide Caratti) [1917518] - [net] SUNRPC: Handle 0 length opaque XDR object data properly (Dave Wysochanski) [1906400] - [net] SUNRPC: Move simple_get_bytes and simple_get_netobj into private header (Dave Wysochanski) [1906400] - [block] nbd: make the config put is called before the notifying the waiter (Ming Lei) [1743857] - [block] nbd: restore default timeout when setting it to zero (Ming Lei) [1743857] - [kernel] rcu/tree: Defer kvfree_rcu() allocation to a clean context (Waiman Long) [1922453] - [kernel] cgroup: Fix memory leak when parsing multiple source parameters (Waiman Long) [1922453] - [kernel] cpuset: fix race between hotplug work and later CPU offline (Waiman Long) [1922453] - [kernel] cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in ptrace_stop() (Waiman Long) [1922453] - [kernel] cgroup: freezer: fix frozen state inheritance (Waiman Long) [1922453] - [kernel] locking/lockdep: Cure noinstr fail (Waiman Long) [1922453] - [kernel] tick/nohz: Narrow down noise while setting current task's tick dependency (Waiman Long) [1922453] - [fs] fs: Kill DCACHE_DONTCACHE dentry even if DCACHE_REFERENCED is set (Eric Sandeen) [1921903] - [fs] fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode() (Eric Sandeen) [1921903] - [netdrv] ice: update dev_addr in ice_set_mac_address even if HW filter exists (Jonathan Toppins) [1879318] - [tools] libbpf: Fix uninitialized variable in btf_parse_type_sec (Jiri Olsa) [1922197] - [tools] libbpf: Support BTF loading and raw data output in both endianness (Jiri Olsa) [1922197] - [tools] selftests/bpf: Test BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__str_by_offset() as a more generic variant of name_by_offset (Jiri Olsa) [1922197] - [tools] libbpf: Add BTF writing APIs (Jiri Olsa) [1922197] - [tools] libbpf: Add btf__new_empty() to create an empty BTF object (Jiri Olsa) [1922197] - [tools] libbpf: Allow modification of BTF and add btf__add_str API (Jiri Olsa) [1922197] - [tools] libbpf: Extract generic string hashing function for reuse (Jiri Olsa) [1922197] - [tools] libbpf: Generalize common logic for managing dynamically-sized arrays (Jiri Olsa) [1922197] - [tools] libbpf: Remove assumption of single contiguous memory for BTF data (Jiri Olsa) [1922197] - [tools] libbpf: Refactor internals of BTF type index (Jiri Olsa) [1922197] - [tools] libbpf: Remove any use of reallocarray() in libbpf (Jiri Olsa) [1922197] - [tools] libbpf: Clean up and improve CO-RE reloc logging (Jiri Olsa) [1922197] - [tools] libbpf: Improve error logging for mismatched BTF kind cases (Jiri Olsa) [1922197] - [scsi] scsi: qla2xxx: Fix mailbox Ch erroneous error (Nilesh Javali) [1894578] - [sound] ALSA: ASoC: Intel: tgl: remove sof_fw_filename set for tgl_3_in_1_default (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: allow soundwire use desc->default_fw_filename (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E (Jaroslav Kysela) [1783462] - [sound] ALSA: hda: intel-dsp-config: add PCI id for TGL-H (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Properly unregister DAI on removal (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix memory corruption in soc_tplg_denum_create_values() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Add missing size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Fix wrong size check (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Simplify remove_widget function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove empty functions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Change allocations to resource managed (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Unify all device references (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove unused functions from topology API (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98926: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98925: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max9867: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: max98373-sdw: align regmap use with other codecs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98390: Fix error codes in max98390_dsm_init() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98371: drop driver pm=NULL assignment (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98095: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98373: don't access volatile registers in bias level off (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: max98090: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: pcm: DRAIN support reactivation (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: mutex between calibration and power state changes (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt711: remove warnings (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5660: skip of_device_id table when !CONFIG_OF (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: codecs: rt*.c: remove useless pointer cast (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: delay 300ms after SDB pulling high for calibration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015p: move SDB control from trigger to DAPM (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: check the return value of regmap_read during i2c probe (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: modification for calibration to get better performance (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: support TDM slot configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: qcom: Fix build failure when slimbus is module (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: Fix DEBUG_LOCKS_WARN_ON for uninitialized attribute (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: master: use pm_runtime_set_active() on add (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: intel: fix another unused-function warning (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DPN interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: only clear valid DP0 interrupts (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: registers: add definitions for clearable interrupt fields (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: reset slave_notify status at each loop (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: bus: add comments to explain interrupt loop filter (Jaroslav Kysela) [1783462] - [sound] ALSA: soundwire: SDCA: detect sdca_cascade interrupt (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: update TDM slot_width (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl_rt1011_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dpcm_capture flag for speaker_smart_amp (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for Dooly (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for cml_rt1015_rt5682 (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: add hw specific PCM constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: loader: do not warn about unknown firmware headers (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: Remove multistep topology loading (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: sof-audio: remove goto used for force-nocodec support (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: modify the signature of stall op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: topology: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: topology: use inclusive language for bclk and fsync (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ops: add parse_platform_ext_manifest() op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: relax PCM period and buffer size constraints (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: nocodec: modify DAI link definitions (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: trace: Add runtime trace filtering mechanism (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add `memory_info` file to debugfs (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Change section comment for SOF_IPC_TEST_ (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Improve code alignment in header.h (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: IPC: fix implicit type overflow (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse firmware config dictionary (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the condition passed to sof_dev_dbg_or_err (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: modify the SOF_DBG flags (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated status dump (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: ext_manifest: parse cavs extra config data elem (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Intel: hda: define parse_platform_ext_manifest op (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: override volume info callback (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: control: remove const in sizeof() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Add .prepare/.complete callbacks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: SOF: Activate runtime PM with SOF OF device (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add missing ret=0 at soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: ignore un-needed mutex_unlock() case on soc_pcm_open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_component_module/open() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: remove unneeded dev_err() for snd_soc_dai_startup() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_clean() and call it from soc_pcm_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-link: add mark for snd_soc_link_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-dai: add mark for snd_soc_dai_startup/shutdown() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for snd_soc_pcm_component_pm_runtime_get/put() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: soc-component: add mark for soc_pcm_components_open/close() (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: KMB: Fix S24_LE configuration (Jaroslav Kysela) [1783462] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable disabled clock (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt5682: change SAR voltage threshold (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: increase the time to detect BCLK (Jaroslav Kysela) [1783462] - [sound] ALSA: ASoC: rt1015: add delay to fix pop noise from speaker (Jaroslav Kysela) [1783462] - [powerpc] powerpc/tm: Avoid machine crash on rt_sigreturn() (Gustavo Duarte) [1860550] - [net] udp: Prevent reuseport_select_sock from reading uninitialized socks (Guillaume Nault) [1917953] - [net] flow_offload: Fix memory leak for indirect flow block (Guillaume Nault) [1917953] - [net] sock: set sk_err to ee_errno on dequeue from errq (Guillaume Nault) [1917953] - [net] devlink: Make sure devlink instance and port are in same net namespace (Guillaume Nault) [1917953] - [net] devlink: Hold rtnl lock while reading netdev attributes (Guillaume Nault) [1917953] - [net] devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill() (Guillaume Nault) [1917953] - [net] tipc: fix NULL deref in tipc_link_xmit() (Xin Long) [1918657] - [net] tipc: prevent possible null deref of link (Xin Long) [1918657] - [net] tipc: fix incompatible mtu of transmission (Xin Long) [1918657] - [net] tipc: fix memory leak in tipc_topsrv_start() (Xin Long) [1918657] - [net] tipc: add stricter control of reserved service types (Xin Long) [1918657] - [tools] selftests/bpf/test_offload.py: Filter bpftool internal map when counting maps (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Reset ethtool features after failed setting (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Fix expected case of extack messages (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Only check verifier log on verification fails (Jiri Benc) [1882709] - [netdrv] netdevsim: Add debugfs toggle to reject BPF programs in verifier (Jiri Benc) [1882709] - [tools] selftests/bpf/test_offload.py: Remove check for program load flags match (Jiri Benc) [1882709] - [net] xdp: Remove the xdp_attachment_flags_ok() callback (Jiri Benc) [1882709] - [net] net, xsk: Avoid taking multiple skbuff references (Jiri Benc) [1882709] - [net] increment xmit_recursion level in dev_direct_xmit() (Jiri Benc) [1882709] - [kernel] usermodehelper: reset umask to default before executing user process (Jiri Benc) [1882709] - [net] xsk: Do not discard packet when NETDEV_TX_BUSY (Jiri Benc) [1882709] - [net] xsk: Fix number of pinned pages/umem size discrepancy (Jiri Benc) [1882709] - [include] netdevice.h: fix xdp_state kernel-doc warning (Jiri Benc) [1882709] - [net] bpf: xdp: Fix XDP mode when no mode flags specified (Jiri Benc) [1882709] - [net] bpf: Fix XDP FD-based attach/detach logic around XDP_FLAGS_UPDATE_IF_NOEXIST (Jiri Benc) [1882709] - [kernel] add a kernel_wait helper (Jiri Benc) [1882709] - [tools] selftests/bpf: Add link detach tests for cgroup, netns, and xdp bpf_links (Jiri Benc) [1882709] - [net] bpf: Add support for forced LINK_DETACH command (Jiri Benc) [1882709] - [kernel] bpf: Fix build without CONFIG_NET when using BPF XDP link (Jiri Benc) [1882709] - [net] xdp: Prevent kernel-infoleak in xsk_getsockopt() (Jiri Benc) [1882709] - [net] udp, bpf: Ignore connections in reuseport group after BPF sk lookup (Jiri Benc) [1882709] - [net] Revert "net: optimize the sockptr_t for unified kernel/user address spaces" (Jiri Benc) [1882709] - [net] improve the user pointer check in init_user_sockptr (Jiri Benc) [1882709] - [include] net: remove sockptr_advance (Jiri Benc) [1882709] - [include] net: make sockptr_is_null strict aliasing safe (Jiri Benc) [1882709] - [net] optimize the sockptr_t for unified kernel/user address spaces (Jiri Benc) [1882709] - [net] bpfilter: switch bpfilter_ip_set_sockopt to sockptr_t (Jiri Benc) [1882709] - [net] switch copy_bpf_fprog_from_user to sockptr_t (Jiri Benc) [1882709] - [include] net: add a new sockptr_t type (Jiri Benc) [1882709] - [net] bpfilter: reject kernel addresses (Jiri Benc) [1882709] - [net] bpfilter: split __bpfilter_process_sockopt (Jiri Benc) [1882709] - [net] bpfilter: fix up a sparse annotation (Jiri Benc) [1882709] - [net] udp: Don't discard reuseport selection when group has connections (Jiri Benc) [1882709] - [net] bpf, xdp: Remove XDP_QUERY_PROG and XDP_QUERY_PROG_HW XDP commands (Jiri Benc) [1882709] - [tools] selftests/bpf: Add BPF XDP link selftests (Jiri Benc) [1882709] - [net] bpf: Implement BPF XDP link-specific introspection APIs (Jiri Benc) [1882709] - [net] bpf, xdp: Implement LINK_UPDATE for BPF XDP link (Jiri Benc) [1882709] - [net] bpf, xdp: Add bpf_link-based XDP attachment API (Jiri Benc) [1882709] - [net] bpf, xdp: Extract common XDP program attachment logic (Jiri Benc) [1882709] - [net] bpf, xdp: Maintain info on attached XDP BPF programs in net_device (Jiri Benc) [1882709] - [kernel] bpf, netns: Fix build without CONFIG_INET (Jiri Benc) [1882709] - [net] udp6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] udp: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] udp: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] ipv6: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] ipv4: remove unused arg exact_dif in compute_score (Jiri Benc) [1882709] - [net] udp: Remove unused variable/function (exact_dif) (Jiri Benc) [1882709] - [net] udp: Remove unused parameter (exact_dif) (Jiri Benc) [1882709] - [net] udp: only choose unbound UDP socket for multicast when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound datagram socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] ensure unbound stream socket to be chosen when not in a VRF (Jiri Benc) [1882709] - [net] allow binding socket in a VRF when there's an unbound socket (Jiri Benc) [1882709] - [net] udp6: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] udp: drop unneeded likely() call around IS_ERR() (Jiri Benc) [1882709] - [net] inet6: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet6: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] inet: Run SK_LOOKUP BPF program on socket lookup (Jiri Benc) [1882709] - [net] inet: Extract helper for selecting socket from reuseport group (Jiri Benc) [1882709] - [net] simplify cBPF setsockopt compat handling (Jiri Benc) [1882709] - [net] explicitly include in net/core/sock.c (Jiri Benc) [1882709] - [include] compat: provide compat_ptr() on all architectures (Jiri Benc) [1882709] - [net] socket: move compat timeout handling into sock.c (Jiri Benc) [1882709] - [include] xdp: introduce xdp_get_shared_info_from_{buff, frame} utility routines (Jiri Benc) [1882709] - [net] xsk: Add xdp statistics to xsk_diag (Jiri Benc) [1882709] - [net] xsk: Add new statistics (Jiri Benc) [1882709] - [net] bpfilter: Initialize pos variable (Jiri Benc) [1882709] - [kernel] umd: Stop using split_argv (Jiri Benc) [1882709] - [kernel] umd: Remove exit_umh (Jiri Benc) [1882709] - [net] bpfilter: Take advantage of the facilities of struct pid (Jiri Benc) [1882709] - [kernel] exit: Factor thread_group_exited out of pidfd_poll (Jiri Benc) [1882709] - [kernel] umd: Track user space drivers with struct pid (Jiri Benc) [1882709] - [net] bpfilter: Move bpfilter_umh back into init data (Jiri Benc) [1882709] - [fs] exec: Remove do_execve_file (Jiri Benc) [1882709] - [kernel] umh: Stop calling do_execve_file (Jiri Benc) [1882709] - [kernel] umd: Transform fork_usermode_blob into fork_usermode_driver (Jiri Benc) [1882709] - [kernel] umd: Rename umd_info.cmdline umd_info.driver_name (Jiri Benc) [1882709] - [kernel] umd: For clarity rename umh_info umd_info (Jiri Benc) [1882709] - [kernel] umh: Separate the user mode driver and the user mode helper support (Jiri Benc) [1882709] - [kernel] umh: Move setting PF_UMH into umh_pipe_setup (Jiri Benc) [1882709] - [kernel] umh: Remove call_usermodehelper_setup_file. (Jiri Benc) [1882709] - [kernel] umh: Rename the user mode driver helpers for clarity (Jiri Benc) [1882709] - [kernel] umh: Capture the pid in umh_pipe_setup (Jiri Benc) [1882709] - [net] bpf: Add SO_KEEPALIVE and related options to bpf_setsockopt (Jiri Benc) [1882709] - [net] tcp: Expose tcp_sock_set_keepidle_locked (Jiri Benc) [1882709] - [net] tcp: add tcp_sock_set_keepidle (Jiri Benc) [1882709] - [net] sock: Move sock_valbool_flag to header (Jiri Benc) [1882709] - [net] spread "enum sock_flags" (Jiri Benc) [1882709] - [tools] bpf: Use local copy of headers including uapi/linux/filter.h (Jiri Benc) [1882709] - [net] bpfilter: fix iptables failure if bpfilter_umh is disabled (Jiri Benc) [1882709] - [s390] s390/crypto: add arch_get_random_long() support (Vladis Dronov) [1904274] - [net] net/smc: Add support for obtaining SMCR device list (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining SMCD device list (Philipp Rudo) [1868684] - [net] net/smc: Add SMC-D Linkgroup diagnostic support (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get link command (Philipp Rudo) [1868684] - [net] net/smc: Introduce SMCR get linkgroup command (Philipp Rudo) [1868684] - [net] net/smc: Add support for obtaining system information (Philipp Rudo) [1868684] - [net] net/smc: Introduce generic netlink interface for diagnostic purposes (Philipp Rudo) [1868684] - [net] net/smc: Refactor smc ism v2 capability handling (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to link structure (Philipp Rudo) [1868684] - [net] net/smc: Add diagnostic information to smc ib-device (Philipp Rudo) [1868684] - [net] net/smc: Add link counters for IB device ports (Philipp Rudo) [1868684] - [net] net/smc: Add connection counters for links (Philipp Rudo) [1868684] - [net] net/smc: Use active link of the connection (Philipp Rudo) [1868684] - [net] net/smc: use helper smc_conn_abort() in listen processing (Philipp Rudo) [1868684] - [net] sched: sch_frag: add generic packet fragment support. (Marcelo Leitner) [1909262] - [net] sched: act_mirred: refactor the handle of xmit (Marcelo Leitner) [1909262] - [net] sched: fix miss init the mru in qdisc_skb_cb (Marcelo Leitner) [1909262] - [net] openvswitch: using ip6_fragment in ipv6_stub (Marcelo Leitner) [1909262] - [net] ipv6: add ipv6_fragment hook in ipv6_stub (Marcelo Leitner) [1909262] - [x86] x86/resctrl: Fix spelling in user-visible warning messages (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enable user to view thread or core throttling mode (Puneet Sethi) [1717078] - [x86] x86/resctrl: Enumerate per-thread MBA controls (Puneet Sethi) [1717078] - [x86] cacheinfo: Move resctrl's get_cache_id() to the cacheinfo header file (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_cache::arch_has_{sparse, empty}_bitmaps (Puneet Sethi) [1717078] - [x86] x86/resctrl: Merge AMD/Intel parse_bw() calls (Puneet Sethi) [1717078] - [x86] x86/resctrl: Add struct rdt_membw::arch_needs_linear to explain AMD/Intel MBA difference (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use is_closid_match() in more places (Puneet Sethi) [1717078] - [x86] x86/resctrl: Use container_of() in delayed_work handlers (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix stale comment (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove struct rdt_membw::max_delay (Puneet Sethi) [1717078] - [x86] x86/resctrl: Remove unused struct mbm_state::chunks_bw (Puneet Sethi) [1717078] - [x86] x86/resctrl: Fix memory bandwidth counter width for AMD (Puneet Sethi) [1845633 1717078] - [documentation] Documentation: x86: fix some typos (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Clarify MBA takes MB as referring to mba_sc (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Remove cdpl2 unspported statement and fix capitalisation (Puneet Sethi) [1717078] - [documentation] Documentation: x86: Contiguous cbm isn't all X86 (Puneet Sethi) [1717078] - [documentation] Documentation: x86: convert resctrl_ui.txt to reST (Puneet Sethi) [1717078] - [kernel] livepatch: Make klp_apply_object_relocs static (Yannick Cote) [1866433] - [kernel] livepatch: Prevent module-specific KLP rela sections from referencing vmlinux symbols (Yannick Cote) [1866433] - [x86] livepatch: Remove .klp.arch (Yannick Cote) [1866433] - [kernel] livepatch: Apply vmlinux-specific KLP relocations early (Yannick Cote) [1866433] - [kernel] livepatch: Disallow vmlinux.ko (Yannick Cote) [1866433]- [sound] ALSA: hda: Add Cometlake-R PCI ID (Jaroslav Kysela) [1915650] - [fs] xfs: don't drain buffer lru on freeze and read-only remount (Brian Foster) [1903387] - [fs] xfs: rename xfs_wait_buftarg() to xfs_buftarg_drain() (Brian Foster) [1903387] - [net] mptcp: implement delegated actions (Paolo Abeni) [1892375] - [net] mptcp: schedule work for better snd subflow selection (Paolo Abeni) [1892375] - [net] mptcp: do not queue excessive data on subflows (Paolo Abeni) [1892375] - [net] mptcp: re-enable sndbuf autotune (Paolo Abeni) [1892375] - [net] mptcp: always graft subflow socket to parent (Paolo Abeni) [1892375] - [include] lockdep: Introduce in_softirq lockdep assert (Paolo Abeni) [1892375] - [net] selinux: handle MPTCP consistently with TCP (Paolo Abeni) [1892375] - [net] mptcp: fix locking in mptcp_disconnect() (Paolo Abeni) [1892375] - [net] mptcp: better msk-level shutdown. (Paolo Abeni) [1892375] - [net] mptcp: more strict state checking for acks (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the MP_PRIO testcases (Paolo Abeni) [1892375] - [net] mptcp: add the mibs for MP_PRIO (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add set_flags command in pm_nl_ctl (Paolo Abeni) [1892375] - [net] mptcp: add set_flags command in PM netlink (Paolo Abeni) [1892375] - [net] mptcp: add the incoming MP_PRIO support (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing MP_PRIO support (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add testcases for setting the address ID (Paolo Abeni) [1892375] - [net] mptcp: add the address ID assignment bitmap (Paolo Abeni) [1892375] - [net] mptcp: cap forward allocation to 1M (Paolo Abeni) [1892375] - [net] mptcp: fix pending data accounting (Paolo Abeni) [1892375] - [net] mptcp: push pending frames when subflow has free space (Paolo Abeni) [1892375] - [net] mptcp: properly annotate nested lock (Paolo Abeni) [1892375] - [net] mptcp: fix security context on server socket (Paolo Abeni) [1892375] - [net] mptcp: clear use_ack and use_map when dropping other suboptions (Paolo Abeni) [1892375] - [net] mptcp: let MPTCP create max size skbs (Paolo Abeni) [1892375] - [net] mptcp: pm: simplify select_local_address() (Paolo Abeni) [1892375] - [net] mptcp: parse and act on incoming FASTCLOSE option (Paolo Abeni) [1892375] - [net] mptcp: hold mptcp socket before calling tcp_done (Paolo Abeni) [1892375] - [net] mptcp: use MPTCPOPT_HMAC_LEN macro (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add the flush addrs testcase (Paolo Abeni) [1892375] - [net] mptcp: remove address when netlink flushes addrs (Paolo Abeni) [1892375] - [net] mptcp: attach subflow socket to parent cgroup (Paolo Abeni) [1892375] - [net] mptcp: be careful on subflows shutdown (Paolo Abeni) [1892375] - [net] mptcp: plug subflow context memory leak (Paolo Abeni) [1892375] - [net] mptcp: link MPC subflow into msk only after accept (Paolo Abeni) [1892375] - [net] mptcp: use the variable sk instead of open-coding (Paolo Abeni) [1892375] - [net] mptcp: rename add_addr_signal and mptcp_add_addr_status (Paolo Abeni) [1892375] - [net] mptcp: drop rm_addr_signal flag (Paolo Abeni) [1892375] - [net] mptcp: print out port and ahmac when receiving ADD_ADDR (Paolo Abeni) [1892375] - [net] mptcp: add port parameter for mptcp_pm_announce_addr (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated packet for ADD_ADDR using port (Paolo Abeni) [1892375] - [net] mptcp: add the outgoing ADD_ADDR port support (Paolo Abeni) [1892375] - [net] mptcp: use adding up size to get ADD_ADDR length (Paolo Abeni) [1892375] - [net] mptcp: add port support for ADD_ADDR suboption writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and ADD_ADDR6 suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: unify ADD_ADDR and echo suboptions writing (Paolo Abeni) [1892375] - [net] mptcp: print new line in mptcp_seq_show() if mptcp isn't in use (Paolo Abeni) [1892375] - [net] mptcp: emit tcp reset when a join request fails (Paolo Abeni) [1892375] - [net] tcp: merge 'init_req' and 'route_req' functions (Paolo Abeni) [1892375] - [net] security: add const qualifier to struct sock in various places (Paolo Abeni) [1892375] - [net] mptcp: avoid potential infinite loop in mptcp_recvmsg() (Paolo Abeni) [1892375] - [net] mptcp: use mptcp release_cb for delayed tasks (Paolo Abeni) [1892375] - [net] mptcp: avoid a few atomic ops in the rx path (Paolo Abeni) [1892375] - [net] mptcp: allocate TX skbs in msk context (Paolo Abeni) [1892375] - [net] mptcp: protect the rx path with the msk socket spinlock (Paolo Abeni) [1892375] - [net] mptcp: implement wmem reservation (Paolo Abeni) [1892375] - [net] mptcp: open code mptcp variant for lock_sock (Paolo Abeni) [1892375] - [net] mptcp: fix NULL ptr dereference on bad MPJ (Paolo Abeni) [1892375] - [net] mptcp: be careful on MPTCP-level ack. (Paolo Abeni) [1892375] - [net] mptcp: put reference in mptcp timeout timer (Paolo Abeni) [1892375] - [net] mptcp: refine MPTCP-level ack scheduling (Paolo Abeni) [1892375] - [net] mptcp: track window announced to peer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR IPv6 test cases (Paolo Abeni) [1892375] - [net] mptcp: send out dedicated ADD_ADDR packet (Paolo Abeni) [1892375] - [net] mptcp: change add_addr_signal type (Paolo Abeni) [1892375] - [net] mptcp: keep unaccepted MPC subflow into join list (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add link failure test case (Paolo Abeni) [1892375] - [net] mptcp: skip to next candidate if subflow has unacked data (Paolo Abeni) [1892375] - [net] mptcp: fix state tracking for fallback socket (Paolo Abeni) [1892375] - [net] mptcp: drop WORKER_RUNNING status bit (Paolo Abeni) [1892375] - [net] mptcp: update rtx timeout only if required. (Paolo Abeni) [1892375] - [net] mptcp: send explicit ack on delayed ack_seq incr (Paolo Abeni) [1892375] - [net] mptcp: keep track of advertised windows right edge (Paolo Abeni) [1892375] - [net] mptcp: rework poll+nospace handling (Paolo Abeni) [1892375] - [net] mptcp: try to push pending data on snd una updates (Paolo Abeni) [1892375] - [net] mptcp: move page frag allocation in mptcp_sendmsg() (Paolo Abeni) [1892375] - [net] mptcp: refactor shutdown and close (Paolo Abeni) [1892375] - [net] mptcp: introduce MPTCP snd_nxt (Paolo Abeni) [1892375] - [net] mptcp: add accounting for pending data (Paolo Abeni) [1892375] - [net] mptcp: reduce the arguments of mptcp_sendmsg_frag (Paolo Abeni) [1892375] - [net] mptcp: introduce mptcp_schedule_work (Paolo Abeni) [1892375] - [net] tcp: factor out __tcp_close() helper (Paolo Abeni) [1892375] - [net] mptcp: use tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: factor out tcp_build_frag() (Paolo Abeni) [1892375] - [net] tcp: schedule EPOLLOUT after a partial sendmsg (Paolo Abeni) [1892375] - [net] tcp: annotate tp->write_seq lockless reads (Paolo Abeni) [1892375] - [net] mptcp: fix static checker warnings in mptcp_pm_add_timer (Paolo Abeni) [1892375] - [tools] selftests: mptcp: add ADD_ADDR timeout test case (Paolo Abeni) [1892375] - [documentation] networking: mptcp: Add MPTCP sysctl entries (Paolo Abeni) [1892375] - [net] mptcp: add a new sysctl add_addr_timeout (Paolo Abeni) [1892375] - [net] mptcp: split mptcp_clean_una function (Paolo Abeni) [1892375] - [net] tcp: propagate MPTCP skb extensions on xmit splits (Paolo Abeni) [1892375] - [net] mptcp: use _fast lock version in __mptcp_move_skbs (Paolo Abeni) [1892375] - [net] mptcp: adjust mptcp receive buffer limit if subflow has larger one (Paolo Abeni) [1892375] - [net] tcp: fix compile error if !CONFIG_SYSCTL (Paolo Abeni) [1892375] - [net] tcp: add tcp_tx_skb_cache sysctl (Paolo Abeni) [1892375] - [net] tcp: do not recycle cloned skbs (Paolo Abeni) [1892375] - [net] tcp: properly reset skb->truesize for tx recycling (Paolo Abeni) [1892375] - [net] tcp: cleanup sk_tx_skb_cache before reuse (Paolo Abeni) [1892375] - [net] tcp: fix zerocopy and notsent_lowat issues (Paolo Abeni) [1892375] - [net] tcp: add one skb cache for tx (Paolo Abeni) [1892375] - [include] include: fpga: adi-axi-common.h: fixup whitespace tab -> space (Luis Goncalves) [1494702] - [include] include: fpga: adi-axi-common.h: add version helper macros (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: convert get_user_pages() --> pin_user_pages() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fix bug in port reset handshake (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: reduce the scope of variable 'ret' (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add device id for Intel FPGA PAC N3000 (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add AFU interrupt support (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add interrupt support for global error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: add interrupt support for port error reporting (Luis Goncalves) [1494702] - [fpga] fpga: dfl: introduce interrupt trigger setting API (Luis Goncalves) [1494702] - [fpga] fpga: dfl: pci: add irq info for feature devices enumeration (Luis Goncalves) [1494702] - [fpga] fpga: dfl: parse interrupt info for feature devices on enumeration (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: check INIT_B pin during write_init (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store in fpga-bridge.c (Luis Goncalves) [1494702] - [fpga] fpga: Fix dead store fpga-mgr.c (Luis Goncalves) [1494702] - [fpga] fpga: dfl: Use struct_size() in kzalloc() (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: remove unneeded, mistyped variables (Luis Goncalves) [1494702] - [fpga] fpga manager: xilinx-spi: valid for the 7 Series too (Luis Goncalves) [1494702] - [fpga] fpga: zynqmp: fix modular build (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-afu-dma-region.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] drivers/fpga/dfl-fme-pr.c: get rid of pointless access_ok() (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: Corrected error handling levels (Luis Goncalves) [1494702] - [fpga] fpga: dfl: afu: support debug access to memory-mapped afu regions (Luis Goncalves) [1494702] - [fpga] fpga: dfl.h: Replace zero-length array with flexible-array member (Luis Goncalves) [1494702] - [fpga] fpga: stratix10-soc: add compatible property value for intel agilex (Luis Goncalves) [1494702] - [fpga] fpga: machxo2-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: ice40-spi: Use new structure for SPI transfer delays (Luis Goncalves) [1494702] - [fpga] fpga: dfl: support multiple opens on feature device node (Luis Goncalves) [1494702] - [fpga] fpga: dfl: fme: add performance reporting support (Luis Goncalves) [1494702] - [firmware] firmware: fpga: replace the error codes with the standard ones (Luis Goncalves) [1494702] - [net] sched: act_mpls: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] openvswitch: ensure LSE is pullable before reading it (Guillaume Nault) [1917918] - [net] skbuff: ensure LSE is pullable before decrementing the MPLS ttl (Guillaume Nault) [1917918] - [net] sched: act_mpls: Add softdep on mpls_gso.ko (Guillaume Nault) [1917918] - [net] mpls: load mpls_gso after mpls_iptunnel (Guillaume Nault) [1917918] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1848816] - [arm64] kvm: arm64: Remove PMU RAZ/WI handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Inject UNDEF on PMU access when no PMU configured (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Set ID_AA64DFR0_EL1.PMUVer to 0 when no PMU support (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Add kvm_vcpu_has_pmu() helper (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Refactor PMU attribute error handling (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Introduce handling of AArch32 TTBCR2 traps (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: pmu: Make overflow handler NMI safe (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Also build dirty_log_perf_test on AArch64 (Auger Eric) [1890373 1907826] - [tools] selftests: kvm/set_memory_region_test: Fix race in move region test (Auger Eric) [1890373 1907826] - [tools] kvm: arm64: selftests: Filter out DEMUX registers (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add blessed SVE registers to get-reg-list (Auger Eric) [1890373 1907826] - [tools] kvm: selftests: Add aarch64 get-reg-list test (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't access PMCR_EL0 when no PMU is available (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: vgic-v3: Drop the reporting of GICR_TYPER.Last for userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Don't hide ID registers from userspace (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Force PTE mapping on fault resulting in a device mapping (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Fix AArch32 handling of DBGD{CCINT, SCRext} and DBGVCR (Auger Eric) [1890373 1907826] - [kernel] kvm: arm64: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return SMCCC_RET_NOT_REQUIRED (Auger Eric) [1890373 1907826] - [kernel] smccc: Make constants available to assembly (Auger Eric) [1890373 1907826] - [kernel] firmware: smccc: Add the definition for SMCCCv1.2 version/error codes (Auger Eric) [1890373 1907826] - [arm64] kvm: arm64: Ensure user_mem_abort() return value is initialised (Auger Eric) [1890373 1907826] - [] ASoC: SOF: Intel: fix page fault at probe if i915 init fails (Jaroslav Kysela) [1906665] - [include] powerpc: fix the backport macros of hv_24x7 and hv_gpci (Diego Domingos) [1915159] - [net] tcp: Prevent low rmem stalls with SO_RCVLOWAT. (Davide Caratti) [1917976] - [net] tcp: fix to update snd_wl1 in bulk receiver fast path (Davide Caratti) [1917976] - [net] tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers (Davide Caratti) [1917976] - [net] tcp: md5: add missing memory barriers in tcp_md5_do_add()/tcp_md5_hash_key() (Davide Caratti) [1917976] - [net] sunrpc: clean-up cache downcall (J. Bruce Fields) [1887178] - [net] sunrpc: raise kernel RPC channel buffer size (J. Bruce Fields) [1887178] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Lx and BlueField-2 (Alaa Hleihel) [1802118 1790541] - [s390] s390/qeth: make af_iucv TX notification call more robust (Philipp Rudo) [1915919] - [s390] s390/dasd: fix list corruption of lcu list (Philipp Rudo) [1915918] - [s390] s390/dasd: fix list corruption of pavgroup group list (Philipp Rudo) [1915918] - [s390] s390/dasd: prevent inconsistent LCU device data (Philipp Rudo) [1915918] - [s390] s390/dasd: fix hanging device offline processing (Philipp Rudo) [1915918] - [block] Revert "block: Fix a lockdep complaint triggered by request queue flushing" (Ming Lei) [1897404] - [nvme] nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class (Ming Lei) [1897404] - [block] blk-mq: add new API of blk_mq_hctx_set_fq_lock_class (Ming Lei) [1897404] - [scsi] scsi: core: Fix race between handling STS_RESOURCE and completion (Ming Lei) [1897404]- [fs] inotify: Increase default inotify.max_user_watches limit to 1048576 (Waiman Long) [1888617] - [kernel] cgroup: fix psi_show() crash on 32bit ino archs (Waiman Long) [1920288] - [kernel] cgroup: fix incorrect WARN_ON_ONCE() in cgroup_setup_root() (Waiman Long) [1920288] - [netdrv] net: bareudp: add missing error handling for bareudp_link_config() (Guillaume Nault) [1920194] - [netdrv] bareudp: Fix use of incorrect min_headroom size (Guillaume Nault) [1920194] - [netdrv] bareudp: set NETIF_F_LLTX flag (Guillaume Nault) [1920194] - [netdrv] vxlan: fix error return code in __vxlan_dev_create() (Guillaume Nault) [1920194] - [netdrv] ip_tunnels: Set tunnel option flag when tunnel metadata is present (Guillaume Nault) [1920194] - [net] vsock/virtio: discard packets only when socket is really closed (Stefano Garzarella) [1920004] - [net] vsock: fix the error return when an invalid ioctl command is used (Stefano Garzarella) [1920004] - [net] vsock: remove ratelimit unknown ioctl message (Stefano Garzarella) [1920004] - [net] vsock: use ns_capable_noaudit() on socket create (Stefano Garzarella) [1920004] - [net] vsock: fix potential null pointer dereference in vsock_poll() (Stefano Garzarella) [1920004] - [net] vsock/vmci: make vmci_vsock_transport_cb() static (Stefano Garzarella) [1920004] - [block] block: add blk_queue_make_request declaration back (Ming Lei) [1919764] - [net] erspan: fix version 1 check in gre_parse_header() (Guillaume Nault) [1919388] - [net] ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst() (Guillaume Nault) [1919388] - [net] ipv4: Fix tos mask in inet_rtm_getroute() (Guillaume Nault) [1919388] - [net] inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill() (Guillaume Nault) [1919388] - [mm] usercopy: mark dma-kmalloc caches as usercopy caches (Waiman Long) [1660290] - [mm] mm, slab_common: use enum kmalloc_cache_type to iterate over kmalloc caches (Waiman Long) [1660290] - [mm] mm, slab: remove unused kmalloc_size() (Waiman Long) [1660290] - [mm] mm, slab: make kmalloc_infocontain all types of names (Waiman Long) [1660290] - [netdrv] net: stmmac: fix taprio configuration when base_time is in the past (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac-sunxi: Provide TX and RX fifo sizes (Mark Salter) [1870102] - [netdrv] net: stmmac: delete the eee_ctrl_timer after napi disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: free tx skb buffer in stmmac_resume() (Mark Salter) [1870102] - [netdrv] net: stmmac: start phylink instance before stmmac_hw_setup() (Mark Salter) [1870102] - [netdrv] net: stmmac: increase the timeout for dma reset (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect merge of patch upstream (Mark Salter) [1870102] - [netdrv] net: stmmac: Use rtnl_lock/unlock on netif_set_real_num_rx_queues() call (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: enlarge dma reset timeout (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix channel lock initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: Add option for VLAN filter fail queue enable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support to Ethtool get/set ring parameters (Mark Salter) [1870102] - [netdrv] net: stmmac: use netif_tx_start|stop_all_queues() function (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix incorrect location to set real_num_rx|tx_queues (Mark Salter) [1870102] - [netdrv] net: stmmac: add ethtool support for get/set channels (Mark Salter) [1870102] - [netdrv] net: stmmac: set get_rx_header_len() as void for it didn't have any error code to return (Mark Salter) [1870102] - [netdrv] net: stmmac: remove redundant null check before clk_disable_unprepare() (Mark Salter) [1870102] - [netdrv] net: phylink: avoid oops during initialisation (Mark Salter) [1870102] - [netdrv] net: stmmac: Modify configuration method of EEE timers (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: provide multicast filter fallback (Mark Salter) [1870102] - [netdrv] net: stmmac: fix failed to suspend if phy based WOL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Speed down the PHY if WoL to save energy (Mark Salter) [1870102] - [netdrv] net: stmmac: Support WOL with phy (Mark Salter) [1870102] - [netdrv] net: stmmac: only call pmt() during suspend/resume if HW enables PMT (Mark Salter) [1870102] - [netdrv] net: stmmac: Move device_can_wakeup() check earlier in set_wol (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove WAKE_MAGIC if HW shows no pmt_magic_frame (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove unused inline function stmmac_rx_threshold_count (Mark Salter) [1870102] - [include] net: pylink.h: add kernel-doc descriptions for new fields at phylink_config (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN promiscuous mode (Mark Salter) [1870102] - [netdrv] net: stmmac: removed enabling eee in EEE set callback (Mark Salter) [1870102] - [documentation] net: phy: add PHY_INTERFACE_MODE_10GBASER (Mark Salter) [1870102] - [include] net: mii: convert mii_lpa_to_ethtool_lpa_x() to linkmode variant (Mark Salter) [1870102] - [base] driver core: platform: Add platform_get_irq_byname_optional() (Mark Salter) [1870102] - [netdrv] net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: don't attach interface until resume finishes (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: fix potential integer overflow on 32 bit multiply (Mark Salter) [1870102] - [netdrv] stmmac: fix pointer check after utilization in stmmac_interrupt (Mark Salter) [1870102] - [netdrv] stmmac: intel: Fix kernel crash due to wrong error path (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable SERDES power up/down sequence (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sub-second increment (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: fix out-of-bounds mac address reg setting (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix VLAN register handling (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix VLAN filtering when HW does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Rx filtering (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac_lib: remove unnecessary checks in dwmac_dma_reset() (Mark Salter) [1870102] - [netdrv] net: rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in dwmac4_dma_reset() (Mark Salter) [1870102] - [netdrv] net: stmmac: use readl_poll_timeout() function in init_systime() (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: convert to devm_platform_ioremap_resource (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate it with DesignWare XPCS (Mark Salter) [1870102] - [netdrv] net: phy: Add Synopsys DesignWare XPCS MDIO module (Mark Salter) [1870102] - [netdrv] net: stmmac: Use resolved link config in mac_link_up() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to dev_fwnode() if needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to linkmode_and()/linkmode_andnot() (Mark Salter) [1870102] - [netdrv] flow_offload: check for basic action hw stats type (Mark Salter) [1870102] - [netdrv] stmmac: let core reject the unsupported coalescing parameters (Mark Salter) [1870102] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: demote warnings about missing optional clocks (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix misleading interrupt error msg (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Disable ACS if enhanced descs are not used (Mark Salter) [1870102] - [netdrv] net: stmmac: fix notifier registration (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix missing IFF_MULTICAST checki in dwxgmac2_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: fix missing IFF_MULTICAST check in dwmac4_set_filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: fix incorrect XGMAC_VLAN_TAG register writting (Mark Salter) [1870102] - [netdrv] net: stmmac: fix incorrect GMAC_VLAN_TAG register writting in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Delete txtimer in suspend() (Mark Salter) [1870102] - [netdrv] net: stmmac: modified pcs mode support for RGMII (Mark Salter) [1870102] - [netdrv] net: stmmac: Add missing information in DebugFS capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add TBS support (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Add support for ETF Scheduler using TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: Initial support for TBS (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix missing return (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Fix TAPRIO division operation (Mark Salter) [1870102] - [netdrv] net: stmmac: mmc: Add Frame Preemption counters on GMAC5+ cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac3+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac5+: Add support for Frame Preemption (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Frame Preemption support using TAPRIO API (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate EST with TAPRIO scheduler API (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Add basic EST support for GMAC5+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Always use TX coalesce timer value when rescheduling (Mark Salter) [1870102] - [netdrv] net: stmmac: Let TX and RX interrupts be independently enabled/disabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Print more information in DebugFS DMA Capabilities file (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: avoid clk and reset for acpi device (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use generic device api (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: fix probe for ACPI devices (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not setup flower filtering if RSS is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixed link does not need MDIO Bus (Mark Salter) [1870102] - [netdrv] stmmac: debugfs entry name is not be changed when udev rename device name (Mark Salter) [1870102] - [netdrv] net: stmmac: platform: Fix MDIO init for platforms without PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: Always arm TX Timer at end of transmission start (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable 16KB buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: 16KB buffer must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: RX buffer size must be 16 byte aligned (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Clear previous RX buffer size (Mark Salter) [1870102] - [netdrv] net: stmmac: Only the last buffer has the FCS field (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not accept invalid MTU values (Mark Salter) [1870102] - [netdrv] net: stmmac: Determine earlier the size of RX buffer (Mark Salter) [1870102] - [netdrv] treewide: Use sizeof_field() macro (Mark Salter) [1870102] - [netdrv] net: stmmac: reset Tx desc base address before restarting Tx (Mark Salter) [1870102] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Mark Salter) [1870102] - [netdrv] page_pool: do not release pool until inflight == 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Do not enable TBU interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework TX Coalesce logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Tune-up default coalesce settings (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Remove uneeded computation for RFA/RFD (Mark Salter) [1870102] - [netdrv] net: stmmac: Setup a default RX Coalesce value instead of the minimum (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not set RX IC bit if RX Coalesce is zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement UDP Segmentation Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework stmmac_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Remove the speed dependency (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add C45 PHY support in the MDIO callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix sparse warning (Mark Salter) [1870102] - [netdrv] net: stmmac: Remove break after a return (Mark Salter) [1870102] - [netdrv] net: stmmac: add flexible PPS to dwmac 4.10a (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to VLAN Perfect filtering if HASH is not available (Mark Salter) [1870102] - [netdrv] net: stmmac: Support enhanced addressing mode for DWMAC 4.10 (Mark Salter) [1870102] - [netdrv] net: stmmac: Only enable enhanced addressing mode when needed (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the TX IOC in xmit path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix TSO descriptor with Enhanced Addressing (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the packet count in stmmac_rx() (Mark Salter) [1870102] - ethernet: Delete unnecessary checks before the macro call “dev_kfree_skb” (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable MMC interrupts by default (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable Flow Control when 1 or more queues are in AV (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix AV Feature detection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix TSA selection (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Only get SPH header len if available (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4: bitrev32 returns u32 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the problem of tso_xmit (Mark Salter) [1870102] - [netdrv] net: stmmac: fix argument to stmmac_pcs_ctrl_ane() (Mark Salter) [1870102] - [netdrv] net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow (Mark Salter) [1870102] - [netdrv] net: stmmac: make tc_flow_parsers static (Mark Salter) [1870102] - [netdrv] net: stmmac: fix disabling flexible PPS output (Mark Salter) [1870102] - [netdrv] net: stmmac: fix length of PTP clock's name string (Mark Salter) [1870102] - [netdrv] net: stmmac: gmac4+: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid deadlock on suspend/resume (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS writing wrong keys (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix RSS not writing all Keys to HW (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Disable the Timestamp interrupt by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not stop PHY if WoL is enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly take timestamp for PTPv2 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Always update the MAC Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Detect Hash Table size dinamically (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Not all Unicast addresses may be available (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix page pool size (Mark Salter) [1870102] - [netdrv] net: stmmac: selftest: avoid large stack usage (Mark Salter) [1870102] - [netdrv] net: stmmac: Hold rtnl lock in suspend/resume callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: implement support for passive mode converters via dt (Mark Salter) [1870102] - [netdrv] net: stmmac: ARP Offload for GMAC4+ Cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Reinitialize correctly a variable (Mark Salter) [1870102] - [netdrv] net: stmmac: Add VLAN HASH filtering support in GMAC4+ (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent divide-by-zero (Mark Salter) [1870102] - [netdrv] net: stmmac: Limit max speeds of XGMAC if asked to (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] stmmac: platform: adjust messages and move to dev level (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Enable RX Jumbo frame support (Mark Salter) [1870102] - [netdrv] net: stmmac: Correctly assing MAX MTU in XGMAC cores case (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correct RAVSEL field interpretation (Mark Salter) [1870102] - [netdrv] net: stmmac: ethtool: Let user configure TX coalesce without RIWT (Mark Salter) [1870102] - [netdrv] net: stmmac: Only consider RX error when HW Timestamping is not enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement ARP Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement L3/L4 Filters using TC Flower (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not return error code in TC Initialization (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add RBU handling in DMA interrupt (Mark Salter) [1870102] - [netdrv] net: stmmac: depend on COMMON_CLK (Mark Salter) [1870102] - [netdrv] net: stmmac: dwc-qos: use devm_platform_ioremap_resource() to simplify code (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for VLAN Insertion Offload (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Add EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for SA Insertion/Replacement in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: Add ethtool register dump for XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Add Flexible PPS support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add a counter for Split Header packets (Mark Salter) [1870102] - [netdrv] net: page_pool: API cleanup and comments (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Split Header support and enable it in XGMAC cores (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Correctly return that RX descriptor is not last one (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to add Split Header support (Mark Salter) [1870102] - [netdrv] net: stmmac: Get correct timestamp values from XGMAC (Mark Salter) [1870102] - [netdrv] stmmac: no need to check return value of debugfs_create functions (Mark Salter) [1870102] - [netdrv] net: stmmac: Add Flexible RX Parser support in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement Safety Features in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement VLAN Hash Filtering in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RSS and enable it in XGMAC core (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement tx_queue_prio() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement set_mtl_tx_queue_weight() (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Implement MMC counters (Mark Salter) [1870102] - [netdrv] net: Remove dev_err() usage after platform_get_irq() (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not request stmmaceth clock (Mark Salter) [1870102] - [netdrv] net: stmmac: Make MDIO bus reset optional (Mark Salter) [1870102] - [netdrv] net: stmmac: tc: Do not return a fragment entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix issues when number of Queues >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: xgmac: Fix XGMAC selftests (Mark Salter) [1870102] - [netdrv] net: stmmac: manage errors returned by of_get_mac_address() (Mark Salter) [1870102] - [netdrv] net: stmmac: Use netif_tx_napi_add() for TX polling function (Mark Salter) [1870102] - [netdrv] net: stmmac: Sync RX Buffer upon allocation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not cut down 1G modes (Mark Salter) [1870102] - [netdrv] net: stmmac: Use kcalloc() instead of kmalloc_array() (Mark Salter) [1870102] - [netdrv] net: stmmac: RX Descriptors need to be clean before setting buffers (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix misuses of GENMASK macro (Mark Salter) [1870102] - [netdrv] net: stmmac: add support for hash table size 128/256 in dwmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: mac address array boudary violation issue (Mark Salter) [1870102] - [netdrv] net: stmmac: Introducing support for Page Pool (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix descriptors address being in > 32 bits address space (Mark Salter) [1870102] - [netdrv] net: stmmac: Implement RX Coalesce Frames setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-work the queue selection for TSO packets (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable dwmac4 jumbo frame more than 8KiB (Mark Salter) [1870102] - [netdrv] net: stmmac: make "snps, reset-delays-us" optional again (Mark Salter) [1870102] - [netdrv] net: stmmac: Re-word Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Update Kconfig entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Only disable interrupts if NAPI is scheduled (Mark Salter) [1870102] - [netdrv] net: stmmac: Update RX Tail Pointer to last free entry (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable support for > 32 Bits addressing in XGMAC (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not disable interrupts when cleaning TX (Mark Salter) [1870102] - [netdrv] net: stmmac: Add the missing speeds that XGMAC supports (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Fix the undefined burst setting (Mark Salter) [1870102] - [netdrv] net: stmmac: Decrease default RX Watchdog value (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not try to enable PHY EEE if MAC does not support it (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Enable EDMA by default (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix case when PHY handle is not present (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix crash observed if PHY does not support EEE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix possible deadlock when disabling EEE support (Mark Salter) [1870102] - [netdrv] net: stmmac: initialize the reset delay array (Mark Salter) [1870102] - [netdrv] net: stmmac: add sanity check to device_property_read_u32_array call (Mark Salter) [1870102] - [netdrv] net: stmmac: fix unused-variable warning (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the phy_reset hook from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset delays from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: drop the reset GPIO from struct stmmac_mdio_bus_data (Mark Salter) [1870102] - [netdrv] net: stmmac: use device_property_read_u32_array to read the reset delays (Mark Salter) [1870102] - [netdrv] net: stmmac: drop redundant check in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix wrapper drivers not detecting PHY (Mark Salter) [1870102] - [netdrv] net: stmmac: use GPIO descriptors in stmmac_mdio_reset (Mark Salter) [1870102] - [netdrv] net: stmmac: Convert to phylink and remove phylib logic (Mark Salter) [1870102] - [netdrv] net: stmmac: Start adding phylink support (Mark Salter) [1870102] - [netdrv] net: stmmac: Prepare to convert to phylink (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: fix flow control issue (Mark Salter) [1870102] - [netdrv] net: stmmac: modify default value of tx-frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch to devm_alloc_etherdev_mqs (Mark Salter) [1870102] - [netdrv] net: stmmac: use dev_info() before netdev is registered (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent missing interrupts when running NAPI (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Do not disable whole RX in dma_stop_rx() (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Clear unused address entries (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Fix Hash Filter (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Also pass control frames while in promisc mode (Mark Salter) [1870102] - [netdrv] net: stmmac: Switch MMC functions to HWIF callbacks (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4/5: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac1000: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac100: Add MAC loopback support (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC loopback callback to HWIF (Mark Salter) [1870102] - [netdrv] net: stmmac: set IC bit when transmitting frames with HW timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: fixed new system time seconds value calculation (Mark Salter) [1870102] - [netdrv] net: stmmac: Do not output error on deferred probe (Mark Salter) [1870102] - [netdrv] net: stmmac: fix csr_clk can't be zero issue (Mark Salter) [1870102] - [netdrv] net: stmmac: update rx tail pointer register to fix rx dma hang issue (Mark Salter) [1870102] - [netdrv] net: stmmac: fix reset gpio free missing (Mark Salter) [1870102] - [netdrv] net: stmmac: dma channel control register need to be init first (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ethtool flow control not able to get/set (Mark Salter) [1870102] - [netdrv] dwmac4_prog_mtl_tx_algorithms() missing write operation (Mark Salter) [1870102] - [netdrv] net: stmmac: Set Flow Control to automatic mode in the driver (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac: Finish the Flow Control implementation (Mark Salter) [1870102] - [netdrv] net: stmmac: move stmmac_check_ether_addr() to driver probe (Mark Salter) [1870102] - [netdrv] net: stmmac: Use bfsize1 in ndesc_init_rx_desc (Mark Salter) [1870102] - [netdrv] net: stmmac: don't log oversized frames (Mark Salter) [1870102] - [netdrv] net: stmmac: fix dropping of multi-descriptor RX frames (Mark Salter) [1870102] - [netdrv] net: stmmac: don't overwrite discard_frame status (Mark Salter) [1870102] - [netdrv] net: stmmac: don't stop NAPI processing when dropping a packet (Mark Salter) [1870102] - [netdrv] net: stmmac: ratelimit RX error logs (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct DMA buffer size in the RX descriptor (Mark Salter) [1870102] - [netdrv] net: stmmac: fix memory corruption with large MTUs (Mark Salter) [1870102] - [netdrv] net: stmmac: fix jumbo frame sending with non-linear skbs (Mark Salter) [1870102] - [netdrv] net: stmmac: don't set own bit too early for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid one more sometimes uninitialized Clang warning (Mark Salter) [1870102] - [netdrv] net: ethernet: stmmac: add management of clk_csr property (Mark Salter) [1870102] - [netdrv] net: stmmac: Avoid sometimes uninitialized Clang warnings (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: dwmac4: Also use TBU interrupt to clean TX path (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix NAPI poll in TX path when in multi-queue (Mark Salter) [1870102] - [netdrv] net: stmmac: use correct define to get rx timestamp on GMAC4 (Mark Salter) [1870102] - [netdrv] net: stmmac: fix ptp timestamping on Rx on gmac4 (Mark Salter) [1870102] - [netdrv] net: stmmac: implement the SIOCGHWTSTAMP ioctl (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix a race in EEE enable callback (Mark Salter) [1870102] - [netdrv] net: stmmac: handle endianness in dwmac4_get_timestamp (Mark Salter) [1870102] - [netdrv] net: stmmac: Disable EEE mode earlier in XMIT callback (Mark Salter) [1870102] - [netdrv] net: stmmac: Send TSO packets always from Queue 0 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fallback to Platform Data clock in Watchdog conversion (Mark Salter) [1870102] - [netdrv] net: stmmac: Prevent RX starvation in stmmac_napi_poll() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix the logic of checking if RX Watchdog must be enabled (Mark Salter) [1870102] - [netdrv] net: stmmac: Check if CBS is supported before configuring (Mark Salter) [1870102] - [netdrv] net: stmmac: dwxgmac2: Only clear interrupts that are active (Mark Salter) [1870102] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Mark Salter) [1870102] - [netdrv] net: stmmac: convert to DEFINE_SHOW_ATTRIBUTE (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix an error code in probe() (Mark Salter) [1870102] - [netdrv] net: stmmac: Move debugfs init/exit to ->probe()/->remove() (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix RX packet size > 8191 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules (Mark Salter) [1870102] - [netdrv] net: stmmac: Set OWN bit for jumbo frames (Mark Salter) [1870102] - [netdrv] net: stmmac: Enable TC Ops for GMAC >= 4 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add CBS support in XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Fixup the tail addr setting in xmit path (Mark Salter) [1870102] - [netdrv] stmmac: fix valid numbers of unicast filter entries (Mark Salter) [1870102] - [netdrv] net: stmmac: Rework coalesce timer and fix multi-queue races (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: Do not keep rearming the coalesce timer in stmmac_xmit" (Mark Salter) [1870102] - [netdrv] Revert "net: stmmac: fix build failure due to missing COMMON_CLK dependency" (Mark Salter) [1870102] - [netdrv] net: stmmac: Integrate XGMAC into main driver flow (Mark Salter) [1870102] - [netdrv] net: stmmac: Add PTP support for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MDIO related functions for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add descriptor related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add DMA related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add MAC related callbacks for XGMAC2 (Mark Salter) [1870102] - [netdrv] net: stmmac: Add XGMAC 2.10 HWIF entry (Mark Salter) [1870102] - [netdrv] stmmac: fix signed 64-bit division (Mark Salter) [1870102] - [netdrv] net: stmmac_tc: use 64-bit arithmetic instead of 32-bit (Mark Salter) [1870102] - [netdrv] net: stmmac: Add support for CBS QDISC (Mark Salter) [1870102] - [tty] serial: 8250_tegra: Create Tegra specific 8250 driver (Mark Salter) [1870103] - [pci] PCI: Disable MSI for Tegra root ports (Mark Salter) [1870101] - [pci] PCI: Add MCFG quirks for Tegra194 host controllers (Mark Salter) [1870101] - [netdrv] tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: correct header offsets in napi frags mode (Antoine Tenart) [1919364 1917563] {CVE-2021-0342} - [netdrv] tun: Don't put_page() for all negative return values from XDP program (Antoine Tenart) [1919364] - [netdrv] tun: add mutex_unlock() call and napi.skb clearing in tun_get_user() (Antoine Tenart) [1919364] - [netdrv] tun: fix data-race in gro_normal_list() (Antoine Tenart) [1919364] - [netdrv] tun: fix use-after-free when register netdev failed (Antoine Tenart) [1919364] - [netdrv] tun: mark small packets as owned by the tap sock (Antoine Tenart) [1919364] - [netdrv] tun: use netdev_alloc_frag() in tun_napi_alloc_frags() (Antoine Tenart) [1919364] - [scsi] scsi: ibmvfc: Fix error return in ibmvfc_probe() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Provide modules parameters for MQ settings (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Enable MQ and set reasonable defaults (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Purge SCSI channels after transport loss/reset (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send Cancel MAD down each hw SCSI channel (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add cancel mad initialization helper (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Register Sub-CRQ handles with VIOS during channel setup (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Send commands down HW Sub-CRQ when channelized (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Set and track hw queue in ibmvfc_event struct (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for using hardware channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Implement channel enquiry and setup commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Map/request irq and register Sub-CRQ interrupt handler (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define Sub-CRQ interrupt handler routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add handlers to drain and complete Sub-CRQ responses (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Sub-CRQ IRQ enable/disable routine (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add alloc/dealloc routines for SCSI Sub-CRQ Channels (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add Subordinate CRQ definitions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define hcall wrapper for registering a Sub-CRQ (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add size parameter to ibmvfc_init_event_pool() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Init/free event pool during queue allocation/free (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Move event pool init/free routines (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add vhost fields and defaults for MQ enablement (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Fix missing cast of ibmvfc_event pointer to u64 handle (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Relax locking around ibmvfc_queuecommand() (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Complete commands outside the host/queue lock (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define per-queue state/list locks (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Make command event pool queue specific (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Define generic queue structure for CRQs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Advertise client support for targetWWPN using v2 commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add support for target_wwpn field in v2 MADs and vfcFrame (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add FC payload retrieval routines for versioned vfcFrames (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add helper for testing capability flags (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Add new fields for version 2 of several MADs (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Deduplicate common ibmvfc_cmd init code (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Use correlation token to tag commands (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Remove trailing semicolon (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Byte swap login_buf.resp values in attribute show functions (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Interface updates for future FPIN and MQ support (Desnes Augusto Nunes do Rosario) [1868055] - [scsi] scsi: ibmvfc: Protect vhost->task_set increment by the host lock (Desnes Augusto Nunes do Rosario) [1868055] - [net] tcp: Fix potential use-after-free due to double kfree() (Florian Westphal) [1915164] - [nvdimm] libnvdimm/region: Enable MAP_SYNC for volatile regions (Steve Best) [1916650] - [net] bpf: Permit cond_resched for some iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix PID fetching with a lot of results (Yauheni Kaliuta) [1874005] - [net] bpf: verifier: Use target program's type for access verifications (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Test sockmap update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Allow update from BPF (Yauheni Kaliuta) [1874005] - [net] bpf: Override the meaning of ARG_PTR_TO_MAP_VALUE for sockmap and sockhash (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Call sock_map_update_elem directly (Yauheni Kaliuta) [1874005] - [net] bpf: sockmap: Merge sockmap and sockhash update functions (Yauheni Kaliuta) [1874005] - [net] net: sk_msg: Simplify sk_psock initialization (Yauheni Kaliuta) [1874005] - [net] bpf: Enforce id generation for all may-be-null register type (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Cleanup bpf_load.o from Makefile (Yauheni Kaliuta) [1874005] - [include] bpf: Plug hole in struct bpf_sk_lookup_kern (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix endianness issues in sk_lookup/ctx_narrow_access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix build slowdown (Yauheni Kaliuta) [1874005] - [net] bpf: Fix scalar32_min_max_or bounds tracking (Yauheni Kaliuta) [1874005] - [net] bpf: Fix "unresolved symbol" build error with resolve_btfids (Yauheni Kaliuta) [1874005] - [powerpc] bpf, powerpc: Fix misuse of fallthrough in bpf_jit_comp() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix XDP program load regression for old kernels (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix native endian assumption when parsing BTF (Yauheni Kaliuta) [1874005] - [include] bpf: Prevent .BTF section elimination (Yauheni Kaliuta) [1874005] - [net] bpf: Fix sysfs export of empty BTF section (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Support passing BPFTOOL_VERSION to make (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu warning for bpffs map pretty-print (Yauheni Kaliuta) [1874005] - [net] bpf: Bpf_skc_to_* casting helpers require a NULL check on sk (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Remove source code links (Yauheni Kaliuta) [1874005] - [documentation] docs/bpf: Fix ringbuf documentation (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix VERSIONED_SYM_COUNT number parsing (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Avoid counting local symbols in ABI check (Yauheni Kaliuta) [1874005] - [net] bpf: Fix clobbering of r2 in bpf_gen_ld_abs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_{update, delete}_map_elem in hashmap iter program (Yauheni Kaliuta) [1874005] - [net] bpf: Do not use bucket_lock for hashmap iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Remove arch-specific include path in Makefile (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: build: Make sure resolve_btfids cleans up after itself (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build failure from uninitialized variable warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix massive output from test_maps (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_progs-flavor run getting number of tests (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a buffer out-of-bound access when filling raw_tp link_info (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix two typos in uapi/linux/bpf.h (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Fix sections with wrong alignment (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix map index used in error message (Yauheni Kaliuta) [1874005] - [tools] bpftool: Handle EAGAIN error code properly in pids collection (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid visit same object multiple times (Yauheni Kaliuta) [1874005] - [net] bpf: Fix a rcu_sched stall issue with bpf task/task_file iterator (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix build on ppc64le architecture (Yauheni Kaliuta) [1874005] - [net] bpf: Use get_file_rcu() instead of get_file() for task_file iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Make test_varlen work with 32-bit user-space arch (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generate data section struct with conservative alignment (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Correct various core_reloc 64-bit assumptions (Yauheni Kaliuta) [1874005] - [tools] libbpf: Enforce 64-bitness of BTF for BPF object files (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix btf_dump test cases on 32-bit arches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle BTF pointer sizes more carefully (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix BTF-defined map-in-map initialization on 32-bit host arches (Yauheni Kaliuta) [1874005] - [tools] selftest/bpf: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix compilation warnings in 32-bit mode (Yauheni Kaliuta) [1874005] - [documentation] doc: Add link to bpf helpers man page (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests to sock_ops for loading sk (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for sock_ops load with r9, r8.r7 registers (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Add tests for ctx access in sock_ops with single register (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops sk access may stomp registers when dst_reg = src_reg (Yauheni Kaliuta) [1874005] - [net] bpf: sock_ops ctx access may stomp registers in corner case (Yauheni Kaliuta) [1874005] - [net] net/core/filter.c: Use sizeof_field() macro (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent overriding errno when logging errors (Yauheni Kaliuta) [1874005] - [net] bpf: Iterate through all PT_NOTE sections when looking for build id (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle GCC built-in types for Arm NEON (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Make skeleton code C++17-friendly by dropping typeof() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix v4_to_v6 in sk_lookup (Yauheni Kaliuta) [1874005] - [tools] libbpf: Do not use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [net] bpf: Delete repeated words in comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix silent Makefile output (Yauheni Kaliuta) [1874005] - [documentation] bpf, doc: Remove references to warning message when using bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix compilation warning of selftests (Yauheni Kaliuta) [1874005] - [kernel] bpf: Remove inline from bpf_do_trace_printk (Yauheni Kaliuta) [1874005] - [tools] bpf: Add missing return to resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Support new uapi for map element bpf iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Change uapi for bpf iterator map elements (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Prevent runqslower from racing on building bpftool (Yauheni Kaliuta) [1874005] - [net] bpf: Allow to specify ifindex for skb in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [net] bpf: Setup socket family and addresses in bpf_prog_test_run_skb (Yauheni Kaliuta) [1874005] - [tools] tools/resolve_btfids: Use libbpf's btf__parse() API (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Use libbpf's btf__parse() API for parsing BTF from file (Yauheni Kaliuta) [1874005] - [tools] libbf: Fix uninitialized pointer at btf__parse_raw() (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__parse_raw() and generic btf__parse() APIs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix wrong return value in do_dump() (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix spurious test failures in core_retro selftest (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and bash-completion for `link detach` (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add `link detach` subcommand (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add bpf_link detach APIs (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: Use single cgroup helpers for both test_sockmap/progs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix register in PT_REGS MIPS macros (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make destructors more robust by handling ERR_PTR(err) cases (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Omit nodad flag when adding addresses to loopback (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Don't destroy failed link (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add xdpdrv mode for test_xdp_redirect (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Verify socket storage in cgroup/sock_{create, release} (Yauheni Kaliuta) [1874005] - [net] bpf: Expose socket storage to BPF_PROG_TYPE_CGROUP_SOCK (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test bpf_iter buffer access with negative offset (Yauheni Kaliuta) [1874005] - [net] bpf: Add missing newline characters in verifier error messages (Yauheni Kaliuta) [1874005] - [arm64] bpf, arm64: Add BPF exception tables (Yauheni Kaliuta) [1874005] - [tools] bpf, selftests: use :: 1 for localhost in tcp_server.py (Yauheni Kaliuta) [1874005] - [net] bpf: Fix swapped arguments in calls to check_buffer_access (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add new bpf_iter context structs to fix build on old kernels (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpf_ringbuf_output() signature to return long (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Add LSM type to array of prog names (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Skip type probe if name is not found (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF XDP link (Yauheni Kaliuta) [1874005] - [include] bpf: Make bpf_link API available indepently of CONFIG_BPF_SYSCALL (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build on architectures with special bpf_user_pt_regs_t (Yauheni Kaliuta) [1874005] - [net] bpf/local_storage: Fix build without CONFIG_CGROUP (Yauheni Kaliuta) [1874005] - [documentation] Documentation/bpf: Document CGROUP_STORAGE map type (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE behavior on shared egress + ingress (Yauheni Kaliuta) [1874005] - [net] bpf: Make cgroup storages shared between programs on the same cgroup (Yauheni Kaliuta) [1874005] - [net] cgroup: use cgrp->kn->id as the cgroup ID (Yauheni Kaliuta) [1874005] - [net] netprio: use css ID instead of cgroup ID (Yauheni Kaliuta) [1874005] - [fs] kernfs: convert kernfs_node->id from union kernfs_node_id to u64 (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add get_stackid_cannot_attach (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test CGROUP_STORAGE map can't be used by multiple progs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add callchain_stackid (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for CGROUP_STORAGE map on multiple attaches (Yauheni Kaliuta) [1874005] - [tools] libbpf: Print hint when PERF_EVENT_IOC_SET_BPF returns -EPROTO (Yauheni Kaliuta) [1874005] - [net] bpf: Fail PERF_EVENT_IOC_SET_BPF when bpf_get_cannot work (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for out of bound rdonly buf access (Yauheni Kaliuta) [1874005] - [net] bpf: Separate bpf_get_for perf events BPF (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add a test for bpf sk_storage_map iterator (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf array map iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for bpf hash map iterators (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add bpftool support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [tools] tools/libbpf: Add support for bpf map element iterator (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for sock local storage map (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for array maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for hash maps (Yauheni Kaliuta) [1874005] - [net] bpf: Implement bpf iterator for map elements (Yauheni Kaliuta) [1874005] - [net] bpf: Fix pos computation for bpf_iter seq_ops->start() (Yauheni Kaliuta) [1874005] - [net] bpf: Support readonly/readwrite buffers in verifier (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF socket lookup and reuseport with connections (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor to provide aux info to bpf_iter_init_seq_priv_t (Yauheni Kaliuta) [1874005] - [net] bpf: Refactor bpf_iter_reg to have separate seq_info member (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_prog iterator (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip BPF .o files before skeleton generation (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/bpf_devel_QA.rst: fix reference to nonexistent document (Yauheni Kaliuta) [1874005] - [documentation] docs: bpf/index.rst: Add ringbuf.rst (Yauheni Kaliuta) [1874005] - [tools] bpftool: Use only nftw for file tree parsing (Yauheni Kaliuta) [1874005] - [net] bpf: net: Use precomputed btf_id for bpf iterators (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix test_lwt_seg6local.sh hangs (Yauheni Kaliuta) [1874005] - [net] bpf: Make btf_sock_ids global (Yauheni Kaliuta) [1874005] - [tools] bpf: Add BTF_ID_LIST_GLOBAL in btf_ids.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Sync btf_ids.h to tools (Yauheni Kaliuta) [1874005] - [net] bpf: Compute bpf_skc_to_*() helper socket btf ids at build time (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Fix error handing in do_skeleton() (Yauheni Kaliuta) [1874005] - [tools] libbpf bpf_helpers: Use __builtin_offsetof for offsetof (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: Use bpf_skip() in bpf_jit_prologue() (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Fix possible rcpu kthread hung (Yauheni Kaliuta) [1874005] - [s390] s390/bpf: implement BPF_PROBE_MEM (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: expand exception table logic to allow new handling options (Yauheni Kaliuta) [1874005 1868273] - [s390] s390: fix __EMIT_BUG() macro (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/bug: add entry size to the __bug_table section (Yauheni Kaliuta) [1874005 1868273] - [s390] s390/kernel: unify EX_TABLE* implementations (Yauheni Kaliuta) [1874005 1868273] - [tools] selftests/bpf: Tests for BPF_SK_LOOKUP attach point (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add verifier tests for bpf_sk_lookup context access (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add name mappings for SK_LOOKUP prog and attach type (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for SK_LOOKUP program type (Yauheni Kaliuta) [1874005] - [tools] bpf: Sync linux/bpf.h to tools/ (Yauheni Kaliuta) [1874005] - [include] bpf: Introduce SK_LOOKUP program type with a dedicated attach point (Yauheni Kaliuta) [1874005] - [net] bpf, netns: Handle multiple link attachments (Yauheni Kaliuta) [1874005] - [tools] bpf: Drop duplicated words in uapi helper comments (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix possible hang in sockopt_inherit (Yauheni Kaliuta) [1874005] - [tools] selftest: Add tests for XDP programs in CPUMAP entries (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu: Load a eBPF program on cpumap (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add SEC name for xdp programs attached to CPUMAP (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Implement XDP_REDIRECT for eBPF programs attached to map entries (Yauheni Kaliuta) [1874005] - [net] bpf: cpumap: Add the possibility to attach an eBPF program to cpumap (Yauheni Kaliuta) [1874005] - [net] net: Refactor xdp_convert_buff_to_frame (Yauheni Kaliuta) [1874005] - [net] cpumap: Formalize map value as a named struct (Yauheni Kaliuta) [1874005] - [samples] samples/bpf: xdp_redirect_cpu_user: Do not update bpf maps in option loop (Yauheni Kaliuta) [1874005] - [net] cpumap: Use non-locked version __ptr_ring_consume_batched (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Consolidate powerpc instructions from bpf_jit.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/bpf_jit: Reuse instruction macros from ppc-opcode.h (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Move ppc instruction encoding from test_emulate_step (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/lib: Fix emulate_step() std test (Yauheni Kaliuta) [1874005] - [powerpc] powerpc/ppc-opcode: Introduce PPC_RAW_* macros for base instruction encoding (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix cross build for CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [include] bpf: Fix build for disabled CONFIG_DEBUG_INFO_BTF option (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Strip away modifiers from global variables (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support stripping modifiers for btf_dump (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add selftests verifying bpf_trace_printk() behaviour (Yauheni Kaliuta) [1874005] - [kernel] bpf: Use dedicated bpf_trace_printk event instead of trace_printk() (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Remove warning about PID iterator support (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test for resolve_btfids (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of btf_ids.h from kernel sources (Yauheni Kaliuta) [1874005] - [documentation] bpf: Add info about .BTF_ids section to btf.rst (Yauheni Kaliuta) [1874005] - [net] bpf: Use BTF_ID to resolve bpf_ctx_convert struct (Yauheni Kaliuta) [1874005] - [net] bpf: Remove btf_id helpers resolving (Yauheni Kaliuta) [1874005] - [net] bpf: Resolve BTF IDs in vmlinux image (Yauheni Kaliuta) [1874005] - [include] bpf: Add BTF_ID_LIST/BTF_ID/BTF_ID_UNUSED macros (Yauheni Kaliuta) [1874005] - [net] bpf: Support llvm-objcopy for vmlinux BTF (Yauheni Kaliuta) [1874005] - [powerpc] powerpc: Include .BTF section (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Remove debug info from kallsyms linking (Yauheni Kaliuta) [1874005] - [scripts] kbuild: Parameterize kallsyms generation and correct reporting (Yauheni Kaliuta) [1874005] - [tools] bpf: Compile resolve_btfids tool at kernel compilation start (Yauheni Kaliuta) [1874005] - [kernel] tracing: Make struct ring_buffer less ambiguous (Yauheni Kaliuta) [1874005] - [kernel] tracing: Rename trace_buffer to array_buffer (Yauheni Kaliuta) [1874005] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Yauheni Kaliuta) [1874005] - [tools] tools headers: Update linux/vdso.h and grab a copy of vdso/const.h (Yauheni Kaliuta) [1874005] - [tools] tools headers: Adopt verbatim copy of compiletime_assert() from kernel sources (Yauheni Kaliuta) [1874005] - [tools] objtool: Query pkg-config for libelf location (Yauheni Kaliuta) [1874005] - [tools] bpf: Add resolve_btfids tool to resolve BTF IDs in ELF object (Yauheni Kaliuta) [1874005] - [samples] bpf: Fix fds_example SIGSEGV error (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix memory leak and optimize BTF sanitization (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch perf_buffer test to tracepoint and skeleton (Yauheni Kaliuta) [1874005] - [tools] libbpf: Handle missing BPF_OBJ_GET_INFO_BY_FD gracefully in perf_buffer (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add test relying only on CO-RE and no recent kernel features (Yauheni Kaliuta) [1874005] - [tools] libbpf: Improve BTF sanitization handling (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add btf__set_fd() for more control over loaded BTF FD (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make BTF finalization strict (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs avoid minus shell exit codes (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: test_progs use another shell exit on non-actions (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix another bpftool segfault without skeleton code enabled (Yauheni Kaliuta) [1874005] - [tools] selftests: bpf: Remove unused bpf_map_def_legacy struct (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map performance test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Refactor BPF map in map test with libbpf (Yauheni Kaliuta) [1874005] - [samples] samples: bpf: Fix bpf programs with kprobe/sys_connect event (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] bpftool: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for BPF_CGROUP_INET_SOCK_RELEASE (Yauheni Kaliuta) [1874005] - [net] bpf: Add BPF_CGROUP_INET_SOCK_RELEASE hook (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Fix compilation error of bpf_iter_task_stack.c (Yauheni Kaliuta) [1874005] - [tools] bpf: Fix bpftool without skeleton code enabled (Yauheni Kaliuta) [1874005] - [net] bpf: Fix build without CONFIG_STACKTRACE (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: Restore netns after each test (Yauheni Kaliuta) [1874005] - [tools] bpf: selftests: A few improvements to network_helpers.c (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for listing test names (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs option for getting number of tests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test_progs indicate to shell on non-actions (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Turn off -Wnested-externs warning (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Switch test_vmlinux to use hrtimer_range_start_ns (Yauheni Kaliuta) [1874005] - [net] bpf: Fix net/core/filter build errors when INET is not enabled (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add bpf_iter test with bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow pB in bpf_seq_printf() and bpf_trace_printk() (Yauheni Kaliuta) [1874005] - [net] bpf: Introduce helper bpf_get_task_stack() (Yauheni Kaliuta) [1874005] - [net] bpf: Remove redundant synchronize_rcu (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add byte swapping selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Make bpf_endian co-exist with vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Allow substituting custom vmlinux.h for selftests build (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Allow substituting custom vmlinux.h for the build (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test auto-load disabling logic for BPF programs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Support disabling auto-loading BPF programs (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define attach_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Define prog_type_name array only once (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add tcp/udp iterator programs to selftests (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample udp/udp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Implement sample tcp/tcp6 bpf_iter programs (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add more common macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Refactor some net macros to bpf_tracing_net.h (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_udp6_sock() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for udp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in udp_iter_state (Yauheni Kaliuta) [1874005] - [kernel] bpf: Add bpf_skc_to_{tcp, tcp_timewait, tcp_request}_sock() helpers (Yauheni Kaliuta) [1874005] - [net] bpf: Add bpf_skc_to_tcp6_sock() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Allow tracing programs to use bpf_jiffies64() helper (Yauheni Kaliuta) [1874005] - [kernel] bpf: Support 'X' in bpf_seq_printf() helper (Yauheni Kaliuta) [1874005] - [net] net: bpf: Implement bpf iterator for tcp (Yauheni Kaliuta) [1874005] - [net] net: bpf: Add bpf_seq_afinfo in tcp_iter_state (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Workaround for get_stack_rawtp test (Yauheni Kaliuta) [1874005] - [tools] libbpf: Prevent loading vmlinux BTF twice (Yauheni Kaliuta) [1874005] - [tools] libbpf: Fix spelling mistake "kallasyms" -> "kallsyms" (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Fix variable shadowing in emit_obj_refs_json() (Yauheni Kaliuta) [1874005] - [tools] tools, bpftool: Correctly evaluate $(BUILD_BPF_SKELS) in Makefile (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concat pattern less than test (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add variable-length data concatenation pattern test (Yauheni Kaliuta) [1874005] - [tools] bpf: Switch most helper return values from 32-bit int to 64-bit long (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Add documentation and sample output for process info (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Show info for processes holding BPF map/prog/link/btf FDs (Yauheni Kaliuta) [1874005] - [tools] libbpf: Wrap source argument of BPF_CORE_READ macro in parentheses (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Generalize BPF skeleton support and generate vmlinux.h (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Minimize bootstrap bpftool (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Move map/prog parsing logic into common (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Add __ksym extern selftest (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add support for extracting kernel symbol addresses (Yauheni Kaliuta) [1874005] - [tools] libbpf: Generalize libbpf externs support (Yauheni Kaliuta) [1874005] - [tools] libbpf: Add a bunch of attribute getters/setters for map definitions (Yauheni Kaliuta) [1874005] - [tools] selftests/bpf: Test access to bpf map pointer (Yauheni Kaliuta) [1874005] - [net] bpf: Set map_btf_{name, id} for all map types (Yauheni Kaliuta) [1874005] - [net] bpf: Support access to bpf map fields (Yauheni Kaliuta) [1874005] - [net] bpf: Rename bpf_htab to bpf_shtab in sock_map (Yauheni Kaliuta) [1874005] - [net] bpf: Switch btf_parse_vmlinux to btf_find_by_name_kind (Yauheni Kaliuta) [1874005] - [tools] tools/bpftool: Relicense bpftool's BPF profiler prog as dual-license GPL/BSD (Yauheni Kaliuta) [1874005] - [tools] tools/bpf: Add verifier tests for 32bit pointer/scalar arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: Avoid verifier failure for 32bit pointer arithmetic (Yauheni Kaliuta) [1874005] - [net] bpf: sk_storage: Prefer to get a free cache_idx (Yauheni Kaliuta) [1874005] - [tools] libbpf: Bump version to 0.1.0 (Yauheni Kaliuta) [1874005] - [s390] s390/pci: fix hot-plug of PCI function missing bus (Philipp Rudo) [1915916] - [net] tcp: fix race condition when creating child sockets from syncookies (Florian Westphal) [1915164] - [netdrv] bonding: set xfrm feature flags more sanely (Jarod Wilson) [1893979] - [netdrv] bonding: fix feature flag setting at init time (Jarod Wilson) [1893979]- [fs] cifs: handle -EINTR in cifs_setattr (Leif Sahlberg) [1848178] - [tty] serial: 8250: drop the printk from serial8250_interrupt() (Vitaly Kuznetsov) [1919745] - [fs] cifs: do not fail __smb_send_rqst if non-fatal signals are pending (Leif Sahlberg) [1848178] - [netdrv] ibmvnic: continue fatal error reset after passive init (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix: NULL pointer dereference (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix login buffer memory leak (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix rx buffer tracking and index management in replenish_rx_pool partial success (Diego Domingos) [1901513] - [netdrv] ibmvnic: add some debugs (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix TX completion error handling (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that SCRQ entry reads are correctly ordered (Diego Domingos) [1901513] - [netdrv] ibmvnic: reduce wait for completion time (Diego Domingos) [1901513] - [netdrv] ibmvnic: no reset timeout for 5 seconds after reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: send_login should check for crq errors (Diego Domingos) [1901513] - [netdrv] ibmvnic: track pending login (Diego Domingos) [1901513] - [netdrv] ibmvnic: delay next reset if hard reset fails (Diego Domingos) [1901513] - [netdrv] ibmvnic: restore adapter state on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: avoid memset null scrq msgs (Diego Domingos) [1901513] - [netdrv] ibmvnic: stop free_all_rwi on failed reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: handle inconsistent login with reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: enhance resetting status check during module exit (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in ibmvic_reset_crq (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix NULL pointer dereference in reset_sub_crq_queues (Diego Domingos) [1901513] - [netdrv] ibmvnic: skip tx timeout reset while in resetting (Diego Domingos) [1901513] - [netdrv] ibmvnic: notify peers when failover and migration happen (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix call_netdevice_notifiers in do_reset (Diego Domingos) [1901513] - [netdrv] ibmvnic: Do not replenish RX buffers after every polling loop (Diego Domingos) [1901513] - [netdrv] ibmvnic: Use netdev_alloc_skb instead of alloc_skb to replenish RX buffers (Diego Domingos) [1901513] - [netdrv] ibmvnic: Correctly re-enable interrupts in NAPI polling routine (Diego Domingos) [1901513] - [netdrv] ibmvnic: Ensure that device queue memory is cache-line aligned (Diego Domingos) [1901513] - [netdrv] ibmvnic: Remove send_subcrq function (Diego Domingos) [1901513] - [netdrv] ibmvnic: Clean up TX code and TX buffer data structure (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce xmit_more support using batched subCRQ hcalls (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce batched RX buffer descriptor transmission (Diego Domingos) [1901513] - [netdrv] ibmvnic: Introduce indirect subordinate Command Response Queue buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: fix ibmvnic_set_mac (Diego Domingos) [1901513] - [netdrv] ibmvnic: save changed mac address to adapter->mac_addr (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_control_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: create send_query_ip_offload (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_map_query to send_query_map (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename ibmvnic_send_req_caps to send_request_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: rename send_cap_queries to send_query_cap (Diego Domingos) [1901513] - [netdrv] ibmvnic: set up 200GBPS speed (Diego Domingos) [1901513] - [netdrv] Revert "ibmvnic: remove never executed if statement" (Diego Domingos) [1901513] - [netdrv] ibmvnic: Harden device Command Response Queue handshake (Diego Domingos) [1901513] - [netdrv] ibmvnic: Fix use-after-free of VNIC login response buffer (Diego Domingos) [1901513] - [netdrv] ibmvnic: merge ibmvnic_reset_init and ibmvnic_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: remove never executed if statement (Diego Domingos) [1901513] - [netdrv] ibmvnic: improve ibmvnic_init and ibmvnic_reset_init (Diego Domingos) [1901513] - [netdrv] ibmvnic: compare adapter->init_done_rc with more readable ibmvnic_rc_codes (Diego Domingos) [1901513] - [netdrv] ibmvnic: store RX and TX subCRQ handle array in ibmvnic_adapter struct (Diego Domingos) [1901513] - [netdrv] net: ibm: fix return type of ndo_start_xmit function (Diego Domingos) [1901513] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1916478] - [x86] x86/cpu/amd: Call init_amd_zn() om Family 19h processors too (David Arcari) [1916478] - [ata] ahci: Add Intel Emmitsburg PCH RAID PCI IDs (David Arcari) [1894284] - [vfio] vfio iommu: Add dma available capability (Philipp Rudo) [1903970] - [x86] x86/entry/64: Do not include inst.h in calling.h (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix GS == 1, 2, and 3 tests (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test PTRACE_PEEKUSER for GSBASE with invalid LDT GS (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Reap a forgotten child (Scott Wood) [1490498] - [x86] x86/fsgsbase: Replace static_cpu_has() with boot_cpu_has() (Scott Wood) [1490498] - [x86] x86/entry/64: Correct the comment over SAVE_AND_SET_GSBASE (Scott Wood) [1490498] - [x86] x86/entry/64: Do not use RDPID in paranoid entry to accomodate KVM (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task (Scott Wood) [1490498] - [x86] x86/fsgsbase: Fix Xen PV support (Scott Wood) [1490498] - [x86] x86/ptrace: Fix 32-bit PTRACE_SETREGS vs fsbase and gsbase (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Add a missing memory constraint (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix a comment in the ptrace_write_gsbase test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test GS selector on ptracer-induced GS base write (Scott Wood) [1490498] - [documentation] Documentation/x86/64: Add documentation for GS/FS addressing mode (Scott Wood) [1490498] - [x86] x86/elf: Enumerate kernel FSGSBASE capability in AT_HWCAP2 (Scott Wood) [1490498] - [x86] x86/cpu: Enable FSGSBASE on 64bit by default and add a chicken bit (Scott Wood) [1490498] - [x86] x86/entry/64: Handle FSGSBASE enabled paranoid entry/exit (Scott Wood) [1490498] - [x86] x86/entry/64: Remove TRACE_IRQS_*_DEBUG (Scott Wood) [1490498] - [x86] x86/entry/64: Introduce the FIND_PERCPU_BASE macro (Scott Wood) [1490498] - [x86] x86/entry/64: Switch CR3 before SWAPGS in paranoid entry (Scott Wood) [1490498] - [x86] x86/speculation/swapgs: Check FSGSBASE in enabling SWAPGS mitigation (Scott Wood) [1490498] - [x86] x86/process/64: Use FSGSBASE instructions on thread copy and ptrace (Scott Wood) [1490498] - [x86] x86/process: Unify copy_thread_tls() (Scott Wood) [1490498] - [x86] x86/process/64: Use FSBSBASE in switch_to() if available (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Enable FSGSBASE instructions in helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Add intrinsics for FSGSBASE instructions (Scott Wood) [1490498] - [x86] x86/cpu: Add 'unsafe_fsgsbase' to enable CR4.FSGSBASE (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/ptrace: Document FSBASE and GSBASE ABI oddities (Scott Wood) [1490498] - [x86] Revert "x86/ptrace: Prevent ptrace from clearing the FS/GS selector" and fix the test (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Fix some test case bugs (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write with FSGSBASE (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test RD/WRGSBASE (Scott Wood) [1490498] - [documentation] kbuild: Raise the minimum required binutils version to 2.21 (Scott Wood) [1490498] - [tools] selftests/x86/fsgsbase: Test ptracer-induced GSBASE write (Scott Wood) [1490498] - [x86] x86/ptrace: Prevent ptrace from clearing the FS/GS selector (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix the base write helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Clean up various details (Scott Wood) [1490498] - [x86] x86/segments: Introduce the 'CPUNODE' naming to better document the segment limit CPU/node NR trick (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Factor out FS/GS segment loading from __switch_to() (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Convert the ELF core dump code to the new FSGSBASE helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Make ptrace use the new FS/GS base helpers (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Introduce FS/GS base helper functions (Scott Wood) [1490498] - [x86] x86/fsgsbase/64: Fix ptrace() to read the FS/GS base accurately (Scott Wood) [1490498] - [net] esp: select CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] treewide: Use fallthrough pseudo-keyword (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always try to free Jitter RNG instance (Vladis Dronov) [1905088] - [crypto] crypto: drbg - should select CTR (Vladis Dronov) [1905088] - [crypto] crypto: ctr - no longer needs CRYPTO_SEQIV (Vladis Dronov) [1905088] - [crypto] crypto: drbg - always seeded with SP800-90B compliant noise source (Vladis Dronov) [1905088] - [crypto] crypto: jitter - SP800-90B compliance (Vladis Dronov) [1905088] - [crypto] crypto: jitter - add header to fix buildwarnings (Vladis Dronov) [1905088] - [crypto] crypto: jitter - fix comments (Vladis Dronov) [1905088] - [crypto] crypto: jitter - update implementation to 2.1.2 (Vladis Dronov) [1905088] - [crypto] crypto: drbg - in-place cipher operation for CTR (Vladis Dronov) [1905088] - [crypto] crypto: drbg - eliminate constant reinitialization of SGL (Vladis Dronov) [1905088] - [vfio] vfio/pci: Implement ioeventfd thread handler for contended memory lock (Alex Williamson) [1861560] - [vfio] vfio iommu type1: Fix memory leak in vfio_iommu_type1_pin_pages (Alex Williamson) [1896568] - [vfio] vfio/pci: Clear token on bypass registration failure (Alex Williamson) [1896568] - [vfio] vfio/type1: fix dirty bitmap calculation in vfio_dma_rw (Alex Williamson) [1497898] - [vfio] vfio: fix a missed vfio group put in vfio_pin_pages (Alex Williamson) [1497898] - [vfio] vfio: add a singleton check for vfio_group_pin_pages (Alex Williamson) [1497898] - [vfio] vfio/pci: Don't regenerate vconfig for all BARs if !bardirty (Alex Williamson) [1896568] - [vfio] vfio/pci: Remove redundant declaration of vfio_pci_driver (Alex Williamson) [1896568] - [uapi] vfio: Fix typo of the device_state (Alex Williamson) [1497898] - [vfio] vfio/type1: Add proper error unwind for vfio_iommu_replay() (Alex Williamson) [1866141] - [vfio] vfio-pci: Avoid recursive read-lock usage (Alex Williamson) [1861560] - [vfio] vfio/type1: Refactor vfio_iommu_type1_ioctl() (Alex Williamson) [1896568] - [vfio] vfio/pci: Add QAT devices to denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Add device denylist (Alex Williamson) [1896565] - [vfio] vfio/pci: Hold igate across releasing eventfd contexts (Alex Williamson) [1896568] - [vfio] vfio/type1: Add conditional rescheduling after iommu map failed (Alex Williamson) [1896568] - [vfio] vfio/pci: Add Intel X550 to hidden INTx devices (Alex Williamson) [1896567] - [vfio] vfio: Cleanup allowed driver naming (Alex Williamson) [1896568] - [uapi] vfio/type1: Fix migration info capability ID (Alex Williamson) [1497898] - [vfio] vfio iommu: typecast corrections (Alex Williamson) [1497898] - [vfio] vfio iommu: Use shift operation for 64-bit integer division (Alex Williamson) [1497898] - [vfio] vfio/mdev: Fix reference count leak in add_mdev_supported_type (Alex Williamson) [1896568] - [vfio] vfio: Selective dirty page tracking if IOMMU backed device pins pages (Alex Williamson) [1497898] - [vfio] vfio iommu: Add migration capability to report supported features (Alex Williamson) [1497898] - [vfio] vfio iommu: Update UNMAP_DMA ioctl to get dirty bitmap before unmap (Alex Williamson) [1497898] - [vfio] vfio iommu: Implementation of ioctl for dirty pages tracking (Alex Williamson) [1497898] - [uapi] vfio iommu: Add ioctl definition for dirty pages tracking (Alex Williamson) [1497898] - [vfio] vfio iommu: Cache pgsize_bitmap in struct vfio_iommu (Alex Williamson) [1497898] - [vfio] vfio iommu: Remove atomicity of ref_count of pinned pages (Alex Williamson) [1497898] - [uapi] vfio: UAPI for migration interface for device state (Alex Williamson) [1497898] - [vfio] vfio/pci: Remove dev_fmt definition (Alex Williamson) [1896568] - [vfio] vfio: Use dev_printk() when possible (Alex Williamson) [1896568] - [drm] drm: allow limiting the scatter list size (Lyude Paul) [1876018 1851790] - [drm] drm/nouveau/kms/nv50-: Fix clock checking algorithm in nv50_dp_mode_valid() (Lyude Paul) [1876018] - [drm] drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid() (Lyude Paul) [1876018] - [drm] DRM Backport 5.8 -> 5.9 (Lyude Paul) [1876018] - [drm] drm/edid: Fix uninitialized variable in drm_cvt_modes() (Lyude Paul) [1876018] - [of] of_graph: add of_graph_is_present() (Lyude Paul) [1876018] - [drm] virtio: virtio_has_iommu_quirk -> virtio_has_dma_quirk (Lyude Paul) [1876018] - [vhost] virtio: VIRTIO_F_IOMMU_PLATFORM -> VIRTIO_F_ACCESS_PLATFORM (Lyude Paul) [1876018] - [include] virtio_config: LE config space accessors (Lyude Paul) [1876018] - [kernel] sched: Remove sched_set_*() return value (Lyude Paul) [1876018] - [include] scatterlist: protect parameters of the sg_table related macros (Lyude Paul) [1876018] - [include] scatterlist: add generic wrappers for iterating over sgtable objects (Lyude Paul) [1876018] - [dma] dma-mapping: add generic helpers for mapping sgtable objects (Lyude Paul) [1876018] - [drm] DRM Backport 5.7 -> 5.8 (Lyude Paul) [1876018] - [drm] drm/fb-helper: Fix vt restore (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the the sysrq_key_op(s) (Lyude Paul) [1876018] - [tools] augmented rbtree: rework the RB_DECLARE_CALLBACKS macro definition (Lyude Paul) [1876018] - [mm] augmented rbtree: add new RB_DECLARE_CALLBACKS_MAX macro (Lyude Paul) [1876018] - [tools] augmented rbtree: add comments for RB_DECLARE_CALLBACKS macro (Lyude Paul) [1876018] - [tools] rbtree: avoid generating code twice for the cached versions (tools copy) (Lyude Paul) [1876018] - [tty] tty/sysrq: constify the sysrq API (Lyude Paul) [1876018] - [tty] tty/sysrq: alpha: export and use __sysrq_get_key_op() (Lyude Paul) [1876018] - [include] uaccess: Add user_read_access_begin/end and user_write_access_begin/end (Lyude Paul) [1876018] - [PATCH] [drm] DRM Backport 5.6 -> 5.7 (Lyude Paul) [1876018] - [vfio] vfio: avoid inefficient operations on VFIO group in vfio_pin/unpin_pages (Lyude Paul) [1876018] - [vfio] vfio: allow external user to get vfio group from device (Lyude Paul) [1876018] - [drm] drm/fbdev-helper: don't force restores (Lyude Paul) [1876018] - [include] vgaswitcheroo: call fbcon_remap_all directly (Lyude Paul) [1876018] - [video] fbcon: Do not takeover the console from atomic context (Lyude Paul) [1878805 1876018] - [video] fbcon: Only defer console takeover if the current console driver is the dummycon (Lyude Paul) [1878805 1876018] - [video] fbcon: Only allow FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER if fbdev is builtin (Lyude Paul) [1878805 1876018] - [video] console/fbcon: Add support for deferred console takeover (Lyude Paul) [1878805 1876018] - [video] fbcon: Call WARN_CONSOLE_UNLOCKED() where applicable (Lyude Paul) [1878805 1876018] - [mm] mm: Split huge pages on write-notify or COW (Chris von Recklinghausen) [1913692] - [mm] mm: Introduce vma_is_special_huge (Chris von Recklinghausen) [1913692]- [tools] kselftests: set rx/txtimestamp.sh to correct permission (Hangbin Liu) [1908269] - [tools] kselftests: set udpgro.sh, udpgro_bench.sh, reuseport_addr_any.sh to correct permission (Hangbin Liu) [1908269] - [net] DCB: Validate DCB_ATTR_DCB_BUFFER argument (Balazs Nemeth) [1891595] - [net] netlabel: remove unused param from audit_log_format() (Balazs Nemeth) [1891595] - [net] netlabel: fix problems with mapping removal (Balazs Nemeth) [1891595] - [net] af_key: pfkey_dump needs parameter validation (Balazs Nemeth) [1891595] - [tools] perf tools: Add 'evlist' control command (Jiri Olsa) [1844111] - [tools] perf tools: Allow to enable/disable events via control file (Jiri Olsa) [1844111] - [tools] perf tools: Add evlist__disable_evsel/evlist__enable_evsel (Jiri Olsa) [1844111] - [tools] perf tools: Reformat record's control fd man text (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'find' methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' enable event methods (Jiri Olsa) [1844111] - [tools] perf evlist: Use the right prefix for 'struct evlist' 'toggle' methods (Jiri Olsa) [1844111] - [x86] perf/amd/uncore: Inform the user how many counters each uncore PMU has (Michael Petlan) [1884816] - [powercap] powercap: RAPL: Add AMD Fam19h RAPL support (Michael Petlan) [1884816] - [powercap] powercap: Add AMD Fam17h RAPL support (Michael Petlan) [1884816] - [powercap] powercap/intel_rapl_msr: Convert rapl_msr_priv into pointer (Michael Petlan) [1884816] - [x86] x86/msr-index: sort AMD RAPL MSRs by address (Michael Petlan) [1884816] - [thunderbolt] thunderbolt: Add support for Intel Maple Ridge (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add USB4 router operation proxy for firmware connection manager (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move constants for USB4 router operations to tb_regs.h (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add connection manager specific hooks for USB4 router operations (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass TX and RX data directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Pass metadata directly to usb4_switch_op() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Perform USB4 router NVM upgrade in two phases (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Return -ENOTCONN when ERR_CONN is received (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Keep the parent runtime resumed for a while on device disconnect (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log adapter numbers in decimal in path activation/deactivation (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Log which connection manager implementation is used (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Move max_boot_acl field to correct place in struct icm (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Fix use-after-free in remove_unplugged_switch() (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add DMA traffic test driver (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add support for end-to-end flow control (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Make it possible to allocate one directional DMA tunnel (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create debugfs directory automatically for services (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add functions for enabling and disabling lane bonding on XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Add link_speed and link_width to XDomain (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Create XDomain devices for loops back to the host (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Find XDomain by route instead of UUID (Torez Smith) [1782721] - [thunderbolt] thunderbolt: Do not clear USB4 router protocol adapter IFC and ISE bits (Torez Smith) [1782721] - [net] ipv6: fib: flush exceptions when purging route (Hangbin Liu) [1916084] - [net] ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init (Hangbin Liu) [1916084] - [net] ipv6: remove unused function ipv6_skb_idev() (Hangbin Liu) [1916084] - [net] ipv6: Fix error path to cancel the meseage (Hangbin Liu) [1916084] - [tools] selftests/net/fib_tests: update addr_metric_test for peer route testing (Hangbin Liu) [1916084] - [net] net/ipv6: remove the old peer route if change it to a new one (Hangbin Liu) [1916084] - [tools] selftests/net: remove not backported tests (Hangbin Liu) [1908340] - [netdrv] bonding: add a vlan+srcmac tx hashing option (Jarod Wilson) [1724795] - [security] selinux: mark selinux_xfrm_refcount as __read_mostly (Ondrej Mosnacek) [1904940] - [net] udp: fix integer overflow while computing available space in sk_rcvbuf (Xin Long) [1916997] - [fs] NFSv4: make cache consistency bitmask dynamic (Steve Dickson) [1881647] - [include] NFSv4: Save a few bytes in the nfs_pgio_args/res (Steve Dickson) [1881647] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf test: Use generic event for expand_libpfm_events() (Michael Petlan) [1884818 1908305] - [tools] perf probe: Change function definition check due to broken DWARF (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to die_entrypc() returns error correctly (Michael Petlan) [1884818 1908305] - [tools] perf stat: Use proper cpu for shadow stats (Michael Petlan) [1884818 1908305] - [tools] perf record: Synthesize cgroup events only if needed (Michael Petlan) [1884818 1908305] - [tools] perf diff: Fix error return value in __cmd_diff() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf test: Avoid an msan warning in a copied stack (Michael Petlan) [1884818 1908305] - [tools] perf inject: Fix file corruption due to event deletion (Michael Petlan) [1884818 1908305] - [tools] perf test: Update branch sample pattern for cs-etm (Michael Petlan) [1884818 1908305] - [tools] perf test: Fix a typo in cs-etm testing (Michael Petlan) [1884818 1908305] - [tools] perf lock: Don't free "lock_seq_stat" if read_count isn't zero (Michael Petlan) [1884818 1908305] - [tools] perf lock: Correct field name "flags" (Michael Petlan) [1884818 1908305] - [tools] tools feature: Fixup fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for cgroup events (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add missing swap for ino_generation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Initialize output buffer in build_id__sprintf (Michael Petlan) [1884818 1908305] - [tools] perf hists browser: Increase size of 'buf' in perf_evsel__hists_browse() (Michael Petlan) [1884818 1908305] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1884818 1908305] - [tools] perf scripting python: Avoid declaring function pointers with a visibility attribute (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove broken __no_tail_call attribute (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix DRAM_BW_Use 0 issue for CLX/SKX (Michael Petlan) [1884818 1908305] - [tools] perf trace: Fix segfault when trying to trace events by cgroup (Michael Petlan) [1884818 1908305] - [tools] perf tools: Fix crash with non-jited bpf progs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Update copy of libbpf's hashmap.c (Michael Petlan) [1884818 1908305] - [tools] perf tools: Remove LTO compiler options when building perl support (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update documentation for metrics reorganization (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Add metrics "RMT Load Hit" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Correct LLC load hit metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header for LLC local hit (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Use more explicit headers for HITM (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Change header from "LLC Load Hitm" to "Load Hitm" (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Organize metrics based on memory hierarchy (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display "Total Stores" as a standalone metrics (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Display the total numbers continuously (Michael Petlan) [1884818 1908305] - [tools] perf bench: Use condition variables in numa (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Fix event code for events referencing std arch events (Michael Petlan) [1884818 1908305] - [tools] perf diff: Support hot streams comparison (Michael Petlan) [1884818 1908305] - [tools] perf streams: Report hot streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Calculate the sum of total streams hits (Michael Petlan) [1884818 1908305] - [tools] perf streams: Link stream pair (Michael Petlan) [1884818 1908305] - [tools] perf streams: Compare two streams (Michael Petlan) [1884818 1908305] - [tools] perf streams: Get the evsel_streams by evsel_idx (Michael Petlan) [1884818 1908305] - [tools] perf streams: Introduce branch history "streams" (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Improve PT documentation slightly (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add support for exclusive groups/events (Michael Petlan) [1884818 1908305] - [tools] perf test: Add build id shell test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Align buildid list output for short build ids (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add size to 'struct perf_record_header_build_id' (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__build_id_equal() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to dso__set_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to build_id__sprintf() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build id object to sysfs__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Pass build_id object to filename__read_build_id() (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use build_id object in dso (Michael Petlan) [1884818 1908305] - [tools] perf config: Export the perf_config_from_file() function (Michael Petlan) [1884818 1908305] - [tools] perf python: Autodetect python3 binary (Michael Petlan) [1884818 1908305] - [tools] perf tests: Show python test script in verbose mode (Michael Petlan) [1884818 1908305] - [tools] perf c2c: Update usage for showing memory events (Michael Petlan) [1884818 1908305] - [tools] perf stat: Fix out of bounds CPU map access when handling armv8_pmu events (Michael Petlan) [1884818 1908305] - [tools] perf python scripting: Fix printable strings in python3 scripts (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix uncore metric expressions (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Release cpu_map refcount if evsel alloc failed (Michael Petlan) [1884818 1908305] - [tools] perf parse-event: Fix cpu map refcounting (Michael Petlan) [1884818 1908305] - [tools] tools lib traceevent: Hide non API functions (Michael Petlan) [1884818 1908305] - [tools] perf sched: Show start of latency as well (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Fix typos in power8 PMU events (Michael Petlan) [1884818 1908305] - [tools] perf bench: Run inject-build-id with --buildid-all option too (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add --buildid-all option (Michael Petlan) [1884818 1908305] - [tools] perf inject: Do not load map/dso when injecting build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Enter namespace when reading build-id (Michael Petlan) [1884818 1908305] - [tools] perf inject: Add missing callbacks in perf_tool (Michael Petlan) [1884818 1908305] - [tools] perf bench: Add build-id injection benchmark (Michael Petlan) [1884818 1908305] - [tools] perf trace: Use the autogenerated mmap 'prot' string/id table (Michael Petlan) [1884818 1908305] - [tools] tools beauty: Add script to generate table of mmap's 'prot' argument (Michael Petlan) [1884818 1908305] - [tools] perf beauty mmap_flags: Conditionaly define the mmap flags (Michael Petlan) [1884818 1908305] - [tools] perf trace beauty: Add script to autogenerate mremap's flags args string/id table (Michael Petlan) [1884818 1908305] - [tools] perf tools: Separate the checking of headers only used to build beautification tables (Michael Petlan) [1884818 1908305] - [tools] perf parse-events: Reduce casts around bp_addr (Michael Petlan) [1884818 1908305] - [tools] perf test: Add expand cgroup event test (Michael Petlan) [1884818 1908305] - [tools] perf tools: Allow creation of cgroup without open (Michael Petlan) [1884818 1908305] - [tools] perf tools: Copy metric events properly when expand cgroups (Michael Petlan) [1884818 1908305] - [tools] perf stat: Add --for-each-cgroup option (Michael Petlan) [1884818 1908305] - [tools] perf evsel: Add evsel__clone() function (Michael Petlan) [1884818 1908305] - [tools] perf vendor events: Update SkylakeX events to v1.21 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events intel: Update CascadelakeX events to v1.08 (Michael Petlan) [1884818 1908305] - [tools] perf script: Add min, max to futex-contention output, in addition to avg (Michael Petlan) [1884818 1908305] - [tools] perf script: Autopep8 futex-contention (Michael Petlan) [1884818 1908305] - [tools] perf stat: Skip duration_time in setup_system_wide (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Support cap_user_time_short for event TIME_CONV (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Calculate timestamp with cap_user_time_short (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Add rdtsc() for Arm64 (Michael Petlan) [1884818 1908305] - [tools] perf tsc: Move out common functions from x86 (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fall back to debuginfod query if debuginfo and source not found locally (Michael Petlan) [1884818 1908305] - [tools] perf probe: Fix to adjust symbol address with correct reloc_sym address (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Fix "context_switch event has no tid" error (Michael Petlan) [1884818 1908305] - [tools] perf script: Display negative tid in non-sample events (Michael Petlan) [1884818 1908305] - [tools] perf docs: Improve help information in perf.txt (Michael Petlan) [1884818 1908305] - [tools] perf metric: Remove duplicate include (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add documentation for topdown metrics (Michael Petlan) [1884818 1908305] - [tools] perf stat: Support new per thread TopDown metrics (Michael Petlan) [1884818 1908305] - [tools] perf record: Support sample-read topdown metric group (Michael Petlan) [1884818 1908305] - [tools] perf tools: Rename group to topdown (Michael Petlan) [1884818 1908305] - [tools] perf machine: Add machine__for_each_dso() function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Call test_attr__open() directly (Michael Petlan) [1884818 1908305] - [tools] perf vendor events power9: Add hv_24x7 core level metric events (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Pass pmu_event structure as a parameter for arch_get_runtimeparam() (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add support for parsing perchip/percore events (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Add new structure to pass json fields (Michael Petlan) [1884818 1908305] - [tools] perf jevents: Make json_events() static and ditch jevents.h file (Michael Petlan) [1884818 1908305] - [tools] perf test: Introduce script for Arm CoreSight testing (Michael Petlan) [1884818 1908305] - [tools] perf metricgroup: Fix typo in comment (Michael Petlan) [1884818 1908305] - [tools] perf stat: Remove dead code: no need to set os.evsel twice (Michael Petlan) [1884818 1908305] - [tools] perf list: Do not print 'Metric Groups:' unnecessarily (Michael Petlan) [1884818 1908305] - [tools] perf list: Remove dead code in argument check (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add build test with GTK+ (Michael Petlan) [1884818 1908305] - [tools] tools feature: Add missing -lzstd to the fast path feature detection (Michael Petlan) [1884818 1908305] - [tools] perf tools: Make GTK2 support opt-in (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Enable Family 19h users by matching Zen2 events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add recommended events (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add ITLB Instruction Fetch Hits event for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf vendor events amd: Add L2 Prefetch events for zen1 (Michael Petlan) [1884818 1908305] - [tools] perf: ftrace: Add filter support for option -F/--funcs (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate close_control_option()'s into one function (Michael Petlan) [1884818 1908305] - [tools] perf intel-pt: Document snapshot control command (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Add 'ret' (intel disasm style) as an alias for 'retq' (Michael Petlan) [1884818 1908305] - [tools] perf annotate: Allow configuring the 'disassembler_style' knob via 'perf config' (Michael Petlan) [1884818 1908305] - [tools] perf record: Add 'snapshot' control command (Michael Petlan) [1884818 1908305] - [tools] perf tools: Add FIFO file names as alternative options to --control (Michael Petlan) [1884818 1908305] - [tools] perf tools: Use AsciiDoc formatting for --control option documentation (Michael Petlan) [1884818 1908305] - [tools] perf tools: Handle read errors from ctl_fd (Michael Petlan) [1884818 1908305] - [tools] perf tools: Consolidate --control option parsing into one function (Michael Petlan) [1884818 1908305] - [tools] perf tests: Add test for PE binary format support (Michael Petlan) [1884818 1908305] - [tools] perf symbols: Try reading the symbol table with libbfd (Michael Petlan) [1884818 1908305] - [tools] perf dso: Use libbfd to read build_id and .gnu_debuglink section (Michael Petlan) [1884818 1908305] - [tools] tools features: Add feature test to check if libbfd has buildid support (Michael Petlan) [1884818 1908305] - [tools] tools: Remove feature-libelf-mmap feature detection (Michael Petlan) [1884818 1908305] - [tools] perf build: Allow nested externs to enable BUILD_BUG() usage (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check PEBS status correctly (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86: fix sysfs type mismatches (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Make anythread filter support conditional (Michael Petlan) [1884818 1908305] - [kernel] perf: Tweak perf_event_attr::exclusive semantics (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix event multiplexing for exclusive groups (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_in() (Michael Petlan) [1884818 1908305] - [kernel] perf: Simplify group_sched_out() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Make dummy_iregs static (Michael Petlan) [1884818 1908305] - [include] perf/arch: Remove perf_sample_data::regs_user_copy (Michael Petlan) [1884818 1908305] - [kernel] perf: Optimize get_recursion_context() (Michael Petlan) [1884818 1908305] - [kernel] perf: Fix get_recursion_context() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Reduce stack usage for x86_pmu::drain_pebs() (Michael Petlan) [1884818 1908305] - [kernel] perf: Reduce stack usage of perf_output_begin() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Fix a memory leak in perf_event_parse_addr_filter() (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_metric for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Fix n_pair for cancelled txn (Michael Petlan) [1884818 1908305] - [x86] x86/events/amd/iommu: Fix sizeof mismatch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Check perf metrics feature for each CPU (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix Ice Lake event constraint table (Michael Petlan) [1884818 1908305] - [x86] perf/x86/msr: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Add Jasper Lake support (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F19h user coreid, threadmask, and sliceid specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Allow F17h user threadmask and slicemask specification (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Prepare to scale for more attributes that vary per family (Michael Petlan) [1884818 1908305] - [x86] arch/x86/amd/ibs: Fix re-arming IBS Fetch (Michael Petlan) [1884818 1908305] - [x86] perf/x86/rapl: Add AMD Fam19h RAPL support (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Support 27-bit extended Op/cycle counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Fix raw sample data accumulation (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd/ibs: Don't include randomized bits in get_ibs_op_count() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/amd: Fix sampling Large Increment per Cycle events (Michael Petlan) [1884818 1908305] - [x86] perf/amd/uncore: Set all slices and threads to restore perf stat -a behaviour (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_out() (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Pull pmu::sched_task() into perf_event_context_sched_in() (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support per-thread RDPMC TopDown metrics (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Support TopDown metrics on Ice Lake (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Add a macro for RDPMC offset of fixed counters (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Generic support for hardware TopDown metrics (Michael Petlan) [1884818 1908305] - [kernel] perf/core: Add a new PERF_EV_CAP_SIBLING event capability (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Use switch in intel_pmu_disable/enable_event (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Fix the name of perf METRICS (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Move BTS index to 47 (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Introduce the fourth fixed counter (Michael Petlan) [1884818 1908305] - [x86] perf/x86/intel: Name the global status bit in NMI handler (Michael Petlan) [1884818 1908305] - [x86] perf/x86: Use event_base_rdpmc for the RDPMC userspace support (Michael Petlan) [1884818 1908305] - [powerpc] powerpc/cacheinfo: Print correct cache-sibling map/list for L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Add support detecting thread-groups sharing L2 cache (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename init_thread_group_l1_cache_map() to make it generic (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Rename cpu_l1_cache_map as thread_group_l1_cache_map (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Parse ibm, thread-groups with multiple properties (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use GFP_ATOMIC while allocating tmp mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove unnecessary variable (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_coregroup_mask (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Move coregroup mask updation to a new function (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Check for duplicate topologies and consolidate (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Depend on cpu_l1_cache_map when adding CPUs (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop passing mask to update_mask_by_l2 (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Limit CPUs traversed to within a node (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Optimize remove_cpu_from_masks (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Remove get_physical_package_id (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Stop updating cpu_core_mask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Update topology_core_cpumask (Diego Domingos) [1906504] - [powerpc] powerpc/topology: Override cpu_smt_mask (Diego Domingos) [1906504] - [include] sched/topology: Allow archs to override cpu_smt_mask (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Add per cpu per index shared_cpu_list (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Make cpumap_show code reusable (Diego Domingos) [1906504] - [powerpc] powerpc/cacheinfo: Use cpumap_print to print cpumap (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Use IS_ENABLED() to avoid #ifdef (Diego Domingos) [1906504] - [powerpc] powerpc/smp: Drop superfluous NULL check (Diego Domingos) [1906504] - [vfio] pci: Cleanup .probe() exit paths (Clark Williams) [1860192] - [vfio] pci: Add sriov_configure support (Clark Williams) [1860192] - [vfio] Introduce VFIO_DEVICE_FEATURE ioctl and first user (Clark Williams) [1860192] - [vfio] pci: Introduce VF token (Clark Williams) [1860192] - [vfio] pci: Implement match ops (Clark Williams) [1860192] - [vfio] Include optional device match in vfio_device_ops callbacks (Clark Williams) [1860192] - [infiniband] IB/hfi1: Ensure correct mm is used at all times (Kamal Heib) [1879586] {CVE-2020-27835} - [block] rbd: require global CAP_SYS_ADMIN for mapping and unmapping (Ming Lei) [1887327] {CVE-2020-25284}- [tools] kunit: tool: unmark test_data as binary blobs (Nico Pache) [1900119] - [tools] kunit: tools: fix kunit_tool tests for parsing test plans (Nico Pache) [1900119] - [documentation] Documentation: kunit: Update Kconfig parts for KUNIT's module support (Nico Pache) [1900119] - [tools] kunit: Don't fail test suites if one of them is empty (Nico Pache) [1900119] - [tools] kunit: Fix kunit.py --raw_output option (Nico Pache) [1900119] - [tools] kunit: tool: fix improper treatment of file location (Nico Pache) [1900119] - [tools] kunit: tool: fix broken default args in unit tests (Nico Pache) [1900119] - [tools] kunit: capture stderr on all make subprocess calls (Nico Pache) [1900119] - [documentation] Documentation: kunit: Remove references to --defconfig (Nico Pache) [1900119] - [kernel] kcsan: Add test suite (Nico Pache) [1900119] - [documentation] Documentation: kunit: Add some troubleshooting tips to the FAQ (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Fix invalid result when build fails (Nico Pache) [1900119] - [tools] kunit: show error if kunit results are not present (Nico Pache) [1900119] - [tools] kunit: kunit_config: Fix parsing of CONFIG options with space (Nico Pache) [1900119] - [lib] kunit: add support for named resources (Nico Pache) [1900119] - [lib] kunit: generalize kunit_resource API beyond allocated resources (Nico Pache) [1900119] - [security] security: apparmor: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [fs] fs: ext4: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [base] drivers: base: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] lib: Kconfig.debug: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: default KUNIT_* fragments to KUNIT_ALL_TESTS (Nico Pache) [1900119] - [lib] kunit: Kconfig: enable a KUNIT_ALL_TESTS fragment (Nico Pache) [1900119] - [tools] kunit: Fix TabError, remove defconfig code and handle when there is no kunitconfig (Nico Pache) [1900119] - [tools] kunit: use KUnit defconfig by default (Nico Pache) [1900119] - [tools] kunit: use --build_dir=.kunit as default (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Separate out config/build/exec/parse (Nico Pache) [1900119] - [lib] lib/test_linear_ranges: add a test for the 'linear_ranges' (Nico Pache) [1900119] - [lib] kunit: Add missing newline in summary message (Nico Pache) [1900119] - [tools] kunit: tool: add missing test data file content (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe debugfs representation (Nico Pache) [1900119] - [lib] kunit: subtests should be indented 4 spaces according to TAP (Nico Pache) [1900119] - [lib] kunit: add log test (Nico Pache) [1900119] - [lib] kunit: add debugfs /sys/kernel/debug/kunit//results display (Nico Pache) [1900119] - [documentation] Documentation: kunit: Make the KUnit documentation less UML-specific (Nico Pache) [1900119] - [lib] Fix linked-list KUnit test when run multiple times (Nico Pache) [1900119] - [tools] kunit: kunit_tool: Allow .kunitconfig to disable config items (Nico Pache) [1900119] - [lib] kunit: Always print actual pointer values in asserts (Nico Pache) [1900119] - [tools] kunit: add --make_options (Nico Pache) [1900119] - [tools] kunit: Run all KUnit tests through allyesconfig (Nico Pache) [1900119] - [tools] kunit: kunit_parser: make parser more robust (Nico Pache) [1900119] - [of] of: unittest: annotate warnings triggered by unittest (Nico Pache) [1900119] - [of] of: unittest: Disable interrupt node tests for old world MAC systems (Nico Pache) [1900119] - [of] of: unittest: add overlay gpio test to catch gpio hog problem (Nico Pache) [1900119] - [tools] kunit: run kunit_tool from any directory (Nico Pache) [1900119] - [tools] kunit: test: Improve error messages for kunit_tool when kunitconfig is invalid (Nico Pache) [1900119] - [documentation] Documentation: kunit: fixed sphinx error in code block (Nico Pache) [1900119] - [base] software node: introduce CONFIG_KUNIT_DRIVER_PE_TEST (Nico Pache) [1900119] - [base] kunit: building kunit as a module breaks allmodconfig (Nico Pache) [1900119] - [documentation] kunit: update documentation to describe module-based build (Nico Pache) [1900119] - [lib] kunit: allow kunit to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: remove timeout dependence on sysctl_hung_task_timeout_seconds (Nico Pache) [1900119] - [lib] kunit: allow kunit tests to be loaded as a module (Nico Pache) [1900119] - [lib] kunit: hide unexported try-catch interface in try-catch-impl.h (Nico Pache) [1900119] - [lib] kunit: move string-stream.h to lib/kunit (Nico Pache) [1900119] - [security] apparmor: add AppArmor KUnit tests for policy unpack (Nico Pache) [1900119] - [tools] kunit/kunit_tool_test: Test '--build_dir' option run (Nico Pache) [1900119] - [tools] kunit: Rename 'kunitconfig' to '.kunitconfig' (Nico Pache) [1900119] - [tools] kunit: Place 'test.log' under the 'build_dir' (Nico Pache) [1900119] - [tools] kunit: Create default config in '--build_dir' (Nico Pache) [1900119] - [tools] kunit: Remove duplicated defconfig creation (Nico Pache) [1900119] - [documentation] docs/kunit/start: Use in-tree 'kunit_defconfig' (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for kunit_tool (Nico Pache) [1900119] - [documentation] Documentation: kunit: fix typos and gramatical errors (Nico Pache) [1900119] - [tools] kunit: testing kunit: Bug fix in test_run_timeout function (Nico Pache) [1900119] - [base] PM / QoS: Initial kunit test (Nico Pache) [1900119] - [lib] lib/list-test: add a test for the 'list' doubly linked list (Nico Pache) [1900119] - [fs] ext4: add kunit test for decoding extended timestamps (Nico Pache) [1900119] - [documentation] Documentation: kunit: Fix verification command (Nico Pache) [1900119] - [tools] kunit: Fix '--build_dir' option (Nico Pache) [1900119] - [lib] kunit: fix failure to build without printk (Nico Pache) [1900119] - [kernel] kernel/sysctl-test: Add null pointer test for sysctl.c:proc_dointvec() (Nico Pache) [1900119] - [documentation] Documentation: kunit: add documentation for KUnit (Nico Pache) [1900119] - [tools] kunit: defconfig: add defconfigs for building KUnit tests (Nico Pache) [1900119] - [tools] kunit: tool: add Python wrappers for running KUnit tests (Nico Pache) [1900119] - [lib] kunit: test: add tests for KUnit managed resources (Nico Pache) [1900119] - [lib] kunit: test: add the concept of assertions (Nico Pache) [1900119] - [lib] kunit: test: add tests for kunit test abort (Nico Pache) [1900119] - [lib] kunit: test: add support for test abort (Nico Pache) [1900119] - [tools] objtool: add kunit_try_catch_throw to the noreturn list (Nico Pache) [1900119] - [tools] objtool: Add rewind_stack_do_exit() to the noreturn list (Nico Pache) [1900119] - [lib] kunit: test: add initial tests (Nico Pache) [1900119] - [lib] lib: enable building KUnit in lib/ (Nico Pache) [1900119] - [lib] kunit: test: add the concept of expectations (Nico Pache) [1900119] - [lib] kunit: test: add assertion printing library (Nico Pache) [1900119] - [lib] kunit: test: add string_stream a std::stream like string builder (Nico Pache) [1900119] - [lib] kunit: test: add test resource management API (Nico Pache) [1900119] - [lib] kunit: test: add KUnit test runner core (Nico Pache) [1900119] - [watchdog] watchdog/hpwdt: Reflect changes (Joseph Szczypek) [1905293] - [watchdog] watchdog/hpwdt: Disable NMI in Crash Kernel (Joseph Szczypek) [1905293] - [idle] intel_idle: add SnowRidge C-state table (Steve Best) [1838554] - [mm] mm: memcg/slab: fix use after free in obj_cgroup_charge (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix return of child memcg objcg for root memcg (Waiman Long) [1916962] - [mm] mm: memcg/slab: fix obj_cgroup_charge() return value handling (Waiman Long) [1916962] - [mm] mm: kmem: move memcg_kmem_bypass() calls to get_mem/obj_cgroup_from_current() (Waiman Long) [1916962] - [s390] s390/kexec_file: fix diag308 subcode when loading crash kernel (Philipp Rudo) [1897184] - [net] ethtool: fix error paths in ethnl_set_channels() (Ivan Vecera) [1906682] - [powerpc] powerpc/pci: Remove LSI mappings on device teardown (Diego Domingos) [1909722] - [powerpc] Revert "powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters" (Diego Domingos) [1909722] - [block] block: add blk_alloc_queue declaration back (Ming Lei) [1911343] - [net] tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate (Antoine Tenart) [1901863] - [net] tcp_bbr: improve arithmetic division in bbr_update_bw() (Antoine Tenart) [1901863] - [net] tcp_bbr: clarify that bbr_bdp() rounds up in comments (Antoine Tenart) [1901863] - [net] tcp_bbr: adapt cwnd based on ack aggregation estimation (Antoine Tenart) [1901863] - [net] tcp_bbr: fix bbr pacing rate for internal pacing (Antoine Tenart) [1901863]- [wireless] iwlwifi: fw: acpi: Demote non-conformant function headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: dbg: Fix misspelling of 'reg_data' in function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-phy-db: Add missing struct member description for 'trans' (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-parse: Fix 'struct iwl_eeprom_enhanced_txpwr's header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-eeprom-read: Demote one nonconformant function header (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs: Demote non-conformant function documentation headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Fix fall-through warnings for Clang (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate notification size when waiting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: purge the BSS table upon firmware load (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: check that statistics TLV version match struct version (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add size checks for range response notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: hook up missing RX handlers (Jarod Wilson) [1857772] - [wireless] iwlwifi: tighten RX MPDU bounds checks (Jarod Wilson) [1857772] - [wireless] iwlwifi: Add a new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: disconnect if channel switch delay is too long (Jarod Wilson) [1857772] - [wireless] iwlwifi: support firmware reset handshake (Jarod Wilson) [1857772] - [wireless] iwlwifi: add an extra firmware state in the transport (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix a race in CSA that caused assert 0x3420 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: validate firmware sync response size (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: clean up some rx code (Jarod Wilson) [1857772] - [wireless] iwlwifi: use SPDX tags (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg-tlv: fix old length in is_trig_data_contained() (Jarod Wilson) [1857772] - [wireless] iwlwifi: trans: consider firmware dead after errors (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove unnecessary setting of inta_mask (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: file: fix documentation for SAR flag (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove MSIX_HW_INT_CAUSES_REG_IML handling (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clean up scan state on failure (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: do more useful queue sync accounting (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix 22000 series driver NMI (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: change 12k A-MSDU config to use 16k buffers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: move iwl_mvm_stop_device() out of line (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear up iwl_mvm_notify_rx_queue() argument type (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove sw_csum_tx (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: validate RX descriptor length (Jarod Wilson) [1857772] - [wireless] iwlwifi: validate MPDU length against notification length (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: iterate active stations when updating statistics (Jarod Wilson) [1857772] - [wireless] iwlwifi: sort out the NVM offsets (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix typo in comment (Jarod Wilson) [1857772] - [wireless] iwlwifi: follow the new inclusive terminology (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_unified_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: avoid endless HW errors at assert time (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable sending/setting debug host event (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for 6GHz (Jarod Wilson) [1857772] - [wireless] iwlwifi: copy iwl_he_capa for modifications (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: remove obsolete pre-release support code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove the read_nvm from iwl_run_init_mvm_ucode (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Init error table memory to zero (Jarod Wilson) [1857772] - [wireless] iwlwifi: d3: do not send the WOWLAN_CONFIGURATION command for netdetect (Jarod Wilson) [1857772] - [wireless] iwlwifi: move reclaim flows to the queue file (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix sar profile printing issue (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: align the write pointer to DWs (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add the ability to dump phy periphery (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove all queue resources before free (Jarod Wilson) [1857772] - [wireless] wireless: remove unneeded break (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: fix potential infinite loop (Jarod Wilson) [1857772] - [net] cfg80211: select CONFIG_CRC32 (Jarod Wilson) [1857772] - [net] nl80211/cfg80211: support 6 GHz scanning (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add some missing entries for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: invert values of NO_160 device config entries (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: add one missing entry for AX210 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix kernel panic in case of assert during CSA (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: set LTR to avoid completion timeout (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: write queue_sync_state only for sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: properly cancel a session protection for P2P (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: set max HE max A-MPDU according to HE capa (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: limit memory read spin time (Jarod Wilson) [1857772] - [wireless] Revert "iwlwifi: remove wide_cmd_header field" (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 59 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: read and parse PNVM file (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: implement set_pnvm op (Jarod Wilson) [1857772] - [wireless] iwlwifi: add trans op to set PNVM (Jarod Wilson) [1857772] - [wireless] iwlwifi: move PNVM implementation to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: align to new TLC config command API (Jarod Wilson) [1857772] - [wireless] iwlwifi: fix sar geo table initialization (Jarod Wilson) [1857772] - [wireless] iwlwifi: stats: add new api fields for statistics cmd/ntfy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: fix suspicious rcu usage warnings (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove memset of kek_kck command (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send a CSA command the firmware doesn't know (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix the xtal latency value for a few qu devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix xtal latency for 9560 devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: fix 0x271B and 0x271C trans cfg struct (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: avoid possible NULL pointer dereference (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support ADD_STA_CMD_API_S ver 12 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add a get lmac id function (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: prepare roc_done_wk to work sync (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: re-enable TX after channel switch (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: don't send RFH_QUEUE_CONFIG_CMD with no queues (Jarod Wilson) [1857772] - [wireless] iwlwifi: support an additional Qu subsystem id (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: stop claiming NL80211_EXT_FEATURE_SET_SCAN_DWELL (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ring the doorbell and wait for PNVM load completion (Jarod Wilson) [1857772] - [wireless] iwlwifi: update prph scratch structure to include PNVM data (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: read and parse SKU ID if available (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: get number of stations from TLV (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-drv: Provide descriptions debugfs dentries (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: devices: Fix function documentation formatting issues (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: tx: Demote misuse of kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: rxon: Demote non-conformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: scan: Demote a few nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: utils: Fix some doc-rot (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote a couple of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ops: Remove unused static struct 'iwl_mvm_debug_names' (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: sta: Demote a bunch of nonconformant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: calib: Demote seemingly unintentional kerneldoc header (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: lib: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: tx: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: dvm: Demote non-compliant kernel-doc headers (Jarod Wilson) [1857772] - [wireless] iwlwifi: bump FW API to 57 for AX devices (Jarod Wilson) [1857772] - [wireless] iwlwifi: yoyo: add support for internal buffer allocation in D3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: api: fix u32 -> __le32 (Jarod Wilson) [1857772] - [wireless] iwlwifi: use correct group for alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 5 of the alive notification (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: ignore the scan duration parameter (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add debug host notification (DHN) time point (Jarod Wilson) [1857772] - [wireless] iwlwifi: pcie: make iwl_pcie_txq_update_byte_cnt_tbl bus independent (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: clear all scan UIDs (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: parse wowlan status version 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: align RX status flags with firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant log in iwl_mvm_tvqm_enable_txq() (Jarod Wilson) [1857772] - [wireless] iwlwifi: phy-ctxt: add new API VER 3 for phy context cmd (Jarod Wilson) [1857772] - [wireless] iwlwifi: thermal: support new temperature measurement API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add d3 prints (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: d3: support GCMP ciphers (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support more GTK rekeying algorithms (Jarod Wilson) [1857772] - [wireless] iwlwifi: move all bus-independent TX functions to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: initiator: add option for adding a PASN responder (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: responder: allow to set only the HLTK for an associated station (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: location: set the HLTK when PASN station is added (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Add FTM initiator RTT smoothing logic (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for responder dynamic config command version 3 (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for range request command ver 11 (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove wide_cmd_header field (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: add default value for iwl_fw_lookup_cmd_ver (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: in non acpi compilations remove iwl_sar_geo_init (Jarod Wilson) [1857772] - [wireless] iwlwifi: rs: set RTS protection for all non legacy rates (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: support new KEK KCK api (Jarod Wilson) [1857772] - [wireless] iwlwifi: support version 3 of GEO_TX_POWER_LIMIT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: rename geo structs to contain versioning (Jarod Wilson) [1857772] - [wireless] iwlwifi: support REDUCE_TX_POWER_CMD version 6 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: prepare SAR profile selection code for multiple sizes (Jarod Wilson) [1857772] - [wireless] iwlwifi: add a common struct for all iwl_tx_power_cmd versions (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new card for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: remove dummy definition of iwl_sar_set_profile() (Jarod Wilson) [1857772] - [wireless] iwlwifi: remove iwl_validate_sar_geo_profile() export (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: use CHECKSUM_COMPLETE (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: remove redundant support_umac_log field (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new WOWLAN_TSC_RSC_PARAM version (Jarod Wilson) [1857772] - [wireless] iwlwifi: don't export acpi functions unnecessarily (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: process ba-notifications also when sta rcu is invalid (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add support for new version of WOWLAN_TKIP_SETTING_API_S (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: Don't install CMAC/GMAC key in AP mode (Jarod Wilson) [1857772] - [wireless] iwl-trans: move dev_cmd_offs, page_offs to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: regulatory: regulatory capabilities api change (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: add dumping special device memory (Jarod Wilson) [1857772] - [wireless] iwlwifi: dbg: remove IWL_FW_INI_TIME_POINT_WDG_TIMEOUT (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: support ppag table command v2 (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for MA family (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_table_dword to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move tfd to trans layer (Jarod Wilson) [1857772] - [wireless] iwlwifi: move bc_pool to a common trans header (Jarod Wilson) [1857772] - [wireless] iwlwifi: iwl-trans: move all txcmd init to trans alloc (Jarod Wilson) [1857772] - [wireless] iwlwifi: enable twt by default (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add an option to add PASN station (Jarod Wilson) [1857772] - [wireless] iwlwifi: add new cards for AX201 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: fw: move assert descriptor parser to common code (Jarod Wilson) [1857772] - [wireless] iwlwifi: wowlan: adapt to wowlan status API version 10 (Jarod Wilson) [1857772] - [wireless] iwlwifi: acpi: evaluate dsm to disable 5.8GHz channels (Jarod Wilson) [1857772] - [wireless] iwlwifi: msix: limit max RX queues for 9000 family (Jarod Wilson) [1857772] - [wireless] iwlwifi: sta: defer ADDBA transmit in case reclaimed SN != next SN (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT feature if supported by firmware (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: set PROTECTED_TWT in MAC data policy (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: add PROTECTED_TWT firmware API (Jarod Wilson) [1857772] - [wireless] iwlwifi: mvm: rs-fw: handle VHT extended NSS capability (Jarod Wilson) [1857772] - [x86] sev-es: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [x86] insn-eval: Use new for_each_insn_prefix() macro to loop over prefixes bytes (Vitaly Kuznetsov) [1915453] - [tools] x86/uprobes: Do not use prefixes.nbytes when looping over prefixes.bytes (Vitaly Kuznetsov) [1915453] - [powercap] powercap/intel_rapl: add support for ElkhartLake (Steve Best) [1847054] - [char] tpm: efi: Don't create binary_bios_measurements file for an empty log (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis: Add a check for invalid status (Jerry Snitselaar) [1887536 1855183] - [char] tpm: use *ph to print small buffer (Jerry Snitselaar) [1887536 1855183] - [char] tpm: Add support for event log pointer found in TPM2 ACPI table (Jerry Snitselaar) [1887536 1855183] - [acpi] acpi: Extend TPM2 ACPI table with missing log fields (Jerry Snitselaar) [1887536] - [char] tpm: Unify the mismatching TPM space buffer sizes (Jerry Snitselaar) [1887536 1855183] - [include] tpm: Require that all digests are present in TCG_PCR_EVENT2 structures (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Prefer async probe (Jerry Snitselaar) [1887536 1855183] - [char] tpm/st33zp24: fix spelling mistake "drescription" -> "description" (Jerry Snitselaar) [1887536] - [char] tpm_tis: extra chip->ops check on error path in tpm_tis_core_init (Jerry Snitselaar) [1887536 1855183] - [char] tpm_tis_spi: Don't send anything during flow control (Jerry Snitselaar) [1887536 1855183] - [include] efi/tpm: Verify event log header before parsing (Jerry Snitselaar) [1887536 1855183] - [char] tpm: eventlog: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [char] tpm: fix wrong return value in tpm_pcr_extend (Jerry Snitselaar) [1887536 1855183] - [include] tpm_eventlog.h: Replace zero-length array with flexible-array member (Jerry Snitselaar) [1887536 1855183] - [include] phylink: : fix function prototype kernel-doc warning (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_attach_direct() instead (Petr Oros) [1878147] - [net] net: ethtool: Handle missing cable test TDR parameters (Petr Oros) [1878147] - [documentation] docs: networking: fix extra spaces in ethtool-netlink (Petr Oros) [1878147] - [documentation] dt-bindings: net: mvusb: Fix example errors (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix null pointer dereference (Petr Oros) [1878147] - [netdrv] net: phy: fix memory leak in device-create error path (Petr Oros) [1878147] - [netdrv] net: mdio device: use flexible sleeping in reset function (Petr Oros) [1878147] - [netdrv] net: mdiobus: add reset-post-delay-us handling (Petr Oros) [1878147] - [netdrv] net: mdiobus: use flexible sleeping for reset-delay-us (Petr Oros) [1878147] - [netdrv] net: phylink: add interface to configure clause 22 PCS PHY (Petr Oros) [1878147] - [netdrv] net: phylink: add struct phylink_pcs (Petr Oros) [1878147] - [netdrv] net: phylink: re-implement interface configuration with PCS (Petr Oros) [1878147] - [netdrv] net: phylink: in-band pause mode advertisement update for PCS (Petr Oros) [1878147] - [netdrv] net: phylink: simplify fixed-link case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: use config.an_enabled in ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify phy case for ksettings_set method (Petr Oros) [1878147] - [netdrv] net: phylink: simplify ksettings_set() implementation (Petr Oros) [1878147] - [netdrv] net: phylink: avoid mac_config calls (Petr Oros) [1878147] - [netdrv] net: phylink: update PCS when changing interface during resolution (Petr Oros) [1878147] - [netdrv] net: phylink: ensure link is down when changing interface (Petr Oros) [1878147] - [netdrv] net: phylink: rearrange resolve mac_config() call (Petr Oros) [1878147] - [netdrv] net: phylink: rejig link state tracking (Petr Oros) [1878147] - [netdrv] net: phylink: update ethtool reporting for fixed-link modes (Petr Oros) [1878147] - [netdrv] net: phy: fix check in get_phy_c45_ids (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add mdix configuration support for AR9331 and AR8035 (Petr Oros) [1878147] - [netdrv] net: dp83640: fix SIOCSHWTSTAMP to update the struct with actual configuration (Petr Oros) [1878147] - [netdrv] net: phy: continue searching for C45 MMDs even if first returned ffff:ffff (Petr Oros) [1878147] - [netdrv] net: phy: dp83640: Fixup cast to restricted __be16 warning (Petr Oros) [1878147] - [netdrv] net: phy: Make phy_10gbit_fec_features_array static (Petr Oros) [1878147] - [netdrv] net: phy: Properly define genphy_c45_driver (Petr Oros) [1878147] - [netdrv] net: phy: Fixup parameters in kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: at803x: Avoid comparison is always false warning (Petr Oros) [1878147] - [netdrv] net: phy: mdio: reset MDIO devices even if probe() is not implemented (Petr Oros) [1878147] - [netdrv] net: phy: reset the PHY even if probe() is not implemented (Petr Oros) [1878147] - [include] net: mdio: add a forward declaration for reset_control to mdio.h (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in phy_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_device.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phy: arrange headers in mdio_bus.c alphabetically (Petr Oros) [1878147] - [netdrv] net: phylink: only restart AN if the link mode is using in-band AN (Petr Oros) [1878147] - [netdrv] net: phylink: add phylink_speed_(up|down) interface (Petr Oros) [1878147] - [netdrv] net: phy: call phy_disable_interrupts() in phy_init_hw() (Petr Oros) [1878147] - [netdrv] net: phy: make phy_disable_interrupts() non-static (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual pause mode configuration takes effect (Petr Oros) [1878147] - [netdrv] net: phylink: fix ethtool -A with attached PHYs (Petr Oros) [1878147] - [include] net: phy: add support for a common probe between shared PHYs (Petr Oros) [1878147] - [netdrv] net: phy: Allow mdio buses to auto-probe c45 devices (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1548P support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add Marvell 88E1340S support (Petr Oros) [1878147] - [netdrv] net: phy: marvell: use a single style for referencing functions (Petr Oros) [1878147] - [netdrv] net: phy: smsc: fix printing too many logs (Petr Oros) [1878147] - [netdrv] net: phy: Check harder for errors in get_phy_id() (Petr Oros) [1878147] - [of] of: of_mdio: Correct loop scanning logic (Petr Oros) [1878147] - [of] of: mdio: preserve phy dev_flags in of_phy_connect() (Petr Oros) [1878147] - [netdrv] net: phy: read MMD ID from all present MMDs (Petr Oros) [1878147] - [netdrv] net: phy: split devices_in_package (Petr Oros) [1878147] - [netdrv] net: phy: set devices_in_package only after validation (Petr Oros) [1878147] - [netdrv] net: phy: add support for probing MMDs >= 8 for devices-in-package (Petr Oros) [1878147] - [netdrv] net: phy: reword get_phy_device() kerneldoc (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c22_id() invalid ID handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up get_phy_c45_ids() failure handling (Petr Oros) [1878147] - [netdrv] net: phy: clean up PHY ID reading (Petr Oros) [1878147] - [netdrv] net: phy: clean up cortina workaround (Petr Oros) [1878147] - [netdrv] net: dp83869: Reset return variable if PHY strap is read (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: don't export RDB/legacy access methods (Petr Oros) [1878147] - [netdrv] net: phy: marvell: unlock after phy_select_page() failure (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support for ATH9331 and ATH8032 (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Configure TDR pulse based on measurement length (Petr Oros) [1878147] - [netdrv] net : phy: marvell: Speedup TDR data retrieval by only changing page once (Petr Oros) [1878147] - [netdrv] net: ethtool: Allow PHY cable test TDR data to configured (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add support for amplitude graph (Petr Oros) [1878147] - [net] net: ethtool: Add helpers for cable test TDR data (Petr Oros) [1878147] - [net] net: ethtool: Add generic parts of cable test TDR (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test TDR data (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: read poll when high resolution timers are disabled (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: improve waiting logic (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: remove redundant timeout check (Petr Oros) [1878147] - [netdrv] net: phy: mscc-miim: use more reasonable delays (Petr Oros) [1878147] - [netdrv] net: mdiobus: add clause 45 mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: at803x: fix PHY ID masks (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Set opmode from straps (Petr Oros) [1878147] - [netdrv] net: phy: dp83869: Update port-mirroring to read straps (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add SQI support (Petr Oros) [1878147] - [netdrv] net: phy: simplify phy_link_change arguments (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: fix checkpatch complains about tabs (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add support for BCM54811 PHY (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: execute cable test on link up (Petr Oros) [1878147] - [netdrv] net: phy: mdio-moxart: remove unneeded include (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add cable diagnostics support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add cable test support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add bcm_phy_modify_exp() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add exp register access methods without buslock (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add cable-test support (Petr Oros) [1878147] - [netdrv] net: phy: fix aneg restart in phy_ethtool_set_eee (Petr Oros) [1878147] - [net] net: phy: Send notifier when starting the cable test (Petr Oros) [1878147] - [netdrv] net: phy: Put interface into oper testing during cable test (Petr Oros) [1878147] - [netdrv] net: phy: marvell: Add cable test support (Petr Oros) [1878147] - [include] net: ethtool: Add helpers for reporting test results (Petr Oros) [1878147] - [include] net: ethtool: Add infrastructure for reporting cable test results (Petr Oros) [1878147] - [uapi] net: ethtool: Add attributes for cable test reports (Petr Oros) [1878147] - [net] net: ethtool: netlink: Add support for triggering a cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add support for polling cable test (Petr Oros) [1878147] - [netdrv] net: phy: Add cable test support to state machine (Petr Oros) [1878147] - [net] net: ethtool: self_test: Mark interface in testing operative status (Petr Oros) [1878147] - [net] net: Add testing sysfs attribute (Petr Oros) [1878147] - [net] net: Add IF_OPER_TESTING (Petr Oros) [1878147] - [netdrv] net: phy: fix less than zero comparison with unsigned variable val (Petr Oros) [1878147] - [netdrv] net: phy: Make iproc_mdio_resume static (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use phy_package_shared (Petr Oros) [1878147] - [netdrv] net: phy: add concept of shared storage for PHYs (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add support for master-slave configuration (Petr Oros) [1878147] - [uapi] ethtool: provide UAPI for PHY master/slave configuration (Petr Oros) [1878147] - [netdrv] dp83640: reverse arguments to list_add_tail (Petr Oros) [1878147] - [documentation] dt-bindings: add Qualcomm IPQ4019 MDIO bindings (Petr Oros) [1878147] - [netdrv] net: phy: mdio: add IPQ4019 MDIO driver (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add second PHY ID (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: apply the workaround on b0 chips (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix phy_id_mask (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: use genphy_soft_reset() (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add downshift support (Petr Oros) [1878147] - [netdrv] net: phy: DP83TC811: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: DP83822: Fix WoL in config init to be disabled (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: Make a bunch of functions static (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: fix temperature sensor on 2110 (Petr Oros) [1878147] - [gpio] gpiolib: Rename "chip" variables to "gc" in core header file (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Remove unneeded semicolon (Petr Oros) [1878147] - [netdrv] net: phy: clear phydev->suspended after soft reset (Petr Oros) [1878147] - [netdrv] net: phy: remove genphy_no_soft_reset (Petr Oros) [1878147] - [netdrv] net: phy: make phy_suspend a no-op if PHY is suspended already (Petr Oros) [1878147] - [netdrv] net: phylink, dsa: eliminate phylink_fixed_state_cb() (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: fix less than zero comparison on an unsigned (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: clear settings on link down (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add delayed registration of TJA1102 PHY1 (Petr Oros) [1878147] - [of] net: mdio: of: export part of of_mdiobus_register_phy() (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: add initial TJA1102 support (Petr Oros) [1878147] - [documentation] dt-bindings: net: phy: Add support for NXP TJA11xx (Petr Oros) [1878147] - [netdrv] net: phy: Use IS_ERR() to check and simplify code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: limit soft reset to 88x3310 (Petr Oros) [1878147] - [netdrv] net: phy: bcm54140: add hwmon support (Petr Oros) [1878147] - [netdrv] net: phy: add Broadcom BCM54140 support (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: add helper to write/read RDB registers (Petr Oros) [1878147] - [netdrv] net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx phy (Petr Oros) [1878147] - [netdrv] net: phy: Propagate error from bus->reset (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Add support for BCM53125 internal PHYs (Petr Oros) [1878147] - [netdrv] net: phy: mdio-bcm-iproc: Do not show kernel pointer (Petr Oros) [1878147] - [netdrv] net: phy: at803x: add support for AR8032 PHY (Petr Oros) [1878147] - [netdrv] net: marvell10g: soft-reset the PHY when coming out of low power (Petr Oros) [1878147] - [netdrv] net: marvell10g: report firmware version (Petr Oros) [1878147] - [netdrv] net: phy: micrel: use genphy_read_status for KSZ9131 (Petr Oros) [1878147] - [netdrv] net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before accessing PHY registers (Petr Oros) [1878147] - [netdrv] net: phylink: add separate pcs operations structure (Petr Oros) [1878147] - [netdrv] net: phylink: rename 'ops' to 'mac_ops' (Petr Oros) [1878147] - [netdrv] net: phylink: change phylink_mii_c22_pcs_set_advertisement() prototype (Petr Oros) [1878147] - [ptp] ptp: Avoid deadlocks in the programmable pin code (Petr Oros) [1878147] - [netdrv] net: phy: probe PHY drivers synchronously (Petr Oros) [1878147] - [netdrv] net: phy: don't touch suspended flag if there's no suspend/resume callback (Petr Oros) [1878147] - [netdrv] net: phy: micrel.c: add rgmii interface delay possibility to ksz9131 (Petr Oros) [1878147] - [netdrv] net: phy: mdio-mux-bcm-iproc: use readl_poll_timeout() to simplify code (Petr Oros) [1878147] - [netdrv] net: phy: tja11xx: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: smsc: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: use phy_read_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: bcm84881: use phy_read_mmd_poll_timeout() to simplify the code (Petr Oros) [1878147] - [netdrv] net: phy: add marvell usb to mdio controller (Petr Oros) [1878147] - [documentation] dt-bindings: net: add marvell usb to mdio bindings (Petr Oros) [1878147] - [netdrv] net: phy: aquantia: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: marvell: remove downshift warning now that phylib takes care (Petr Oros) [1878147] - [netdrv] net: phy: add and use phy_check_downshift (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 45 helpers (Petr Oros) [1878147] - [netdrv] net: phylink: pcs: add 802.3 clause 22 helpers (Petr Oros) [1878147] - [netdrv] net: mdiobus: add APIs for modifying a MDIO device register (Petr Oros) [1878147] - [netdrv] net: mdiobus: avoid BUG_ON() in mdiobus accessors (Petr Oros) [1878147] - [netdrv] net: phy: improve phy_driver callback handle_interrupt (Petr Oros) [1878147] - [netdrv] net: phylink: Add XLGMII support (Petr Oros) [1878147] - [include] net: phy: Add XLGMII interface define (Petr Oros) [1878147] - [netdrv] net: phylink: Test if MAC/PCS support Autoneg (Petr Oros) [1878147] - [netdrv] net: phylink: Add missing Backplane speeds (Petr Oros) [1878147] - [netdrv] net: mdio: add ipq8064 mdio driver (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: place in powersave mode at probe (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add energy detect power down tunable (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: add mdix control (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add constants for used interrupt mask bits (Petr Oros) [1878147] - [netdrv] net: phy: marvell10g: read copper results from CSSR1 (Petr Oros) [1878147] - [netdrv] net: phy: mscc: add missing shift for media operation mode selection (Petr Oros) [1878147] - [netdrv] net: phylink: propagate resolved link config via mac_link_up() (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Wire suspend/resume for BCM54810 (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Have bcm54xx_adjust_rxrefclk() check for flags (Petr Oros) [1878147] - [netdrv] net: phy: broadcom: Allow BCM54810 to use bcm54xx_adjust_rxrefclk() (Petr Oros) [1878147] - [netdrv] net: phy: dp83867: Add speed optimization feature (Petr Oros) [1878147] - [netdrv] net: phy: allow bcm84881 to be a module (Petr Oros) [1878147] - [include] net: phylink: clarify flow control settings in documentation (Petr Oros) [1878147] - [netdrv] net: phylink: improve initial mac configuration (Petr Oros) [1878147] - [netdrv] net: phylink: allow ethtool -A to change flow control advertisement (Petr Oros) [1878147] - [netdrv] net: phylink: resolve fixed link flow control (Petr Oros) [1878147] - [netdrv] net: phylink: use phylib resolved flow control modes (Petr Oros) [1878147] - [netdrv] net: phylink: ensure manual flow control is selected appropriately (Petr Oros) [1878147] - [netdrv] net: phylink: remove pause mode ethtool setting for fixed links (Petr Oros) [1878147] - [netdrv] net: add linkmode helper for setting flow control advertisement (Petr Oros) [1878147] - [netdrv] net: add helpers to resolve negotiated flow control (Petr Oros) [1878147] - [include] net: linkmode: make linkmode_test_bit() take const pointer (Petr Oros) [1878147] - [include] net: phylink: further documentation clarifications (Petr Oros) [1878147] - [include] net: phylink: further mac_config documentation improvements (Petr Oros) [1878147] - [netdrv] net: phylink: rename mac_link_state() op to mac_pcs_get_state() (Petr Oros) [1878147] - [md] md/raid5: fix oops during stripe resizing (Nigel Croxon) [1898617] - [md] md/bitmap: fix memory leak of temporary bitmap (Nigel Croxon) [1898617] - [md] md: fix the checking of wrong work queue (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_get_counter returns wrong blocks (Nigel Croxon) [1898617] - [md] md/bitmap: md_bitmap_read_sb uses wrong bitmap blocks (Nigel Croxon) [1898617] - [md] md/raid0: remove unused function is_io_in_chunk_boundary() (Nigel Croxon) [1898617] - [md] md: don't detour through bd_contains for the gendisk (Nigel Croxon) [1898617] - [md] md: compare bd_disk instead of bd_contains (Nigel Croxon) [1898617] - [md] md: Simplify code with existing definition RESYNC_SECTORS in raid10.c (Nigel Croxon) [1898617] - [md] md/raid5: reallocate page array after setting new stripe_size (Nigel Croxon) [1898617] - [md] md/raid5: resize stripe_head when reshape array (Nigel Croxon) [1898617] - [md] md/raid5: let multiple devices of stripe_head share page (Nigel Croxon) [1898617] - [crypto] md/raid6: let async recovery function support different page offset (Nigel Croxon) [1898617] - [crypto] md/raid6: let syndrome computor support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: convert to new xor compution interface (Nigel Croxon) [1898617] - [crypto] md/raid5: add new xor function to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: make async_copy_data() to support different page offset (Nigel Croxon) [1898617] - [md] md/raid5: add a new member of offset into r5dev (Nigel Croxon) [1898617] - [md] md: only calculate blocksize once and use i_blocksize() (Nigel Croxon) [1898617] - [md] md: update the optimal I/O size on reshape (Nigel Croxon) [1898617] - [md] md/raid5: make sure stripe_size as power of two (Nigel Croxon) [1898617] - [md] md-cluster: Fix potential error pointer dereference in resize_bitmaps() (Nigel Croxon) [1898617] - [md] md: get sysfs entry after redundancy attr group create (Nigel Croxon) [1898617] - [kernel] lockdep: Fix preemption WARN for spurious IRQ-enable (Waiman Long) [1908640] - [powerpc] powerpc/smp: Call rcu_cpu_starting() earlier (Waiman Long) [1908640] - [include] seqlock: Fix multiple kernel-doc warnings (Waiman Long) [1908640] - [kernel] lockdep: Fix usage_traceoverflow (Waiman Long) [1908640] - [kernel] locking/lockdep: Remove more raw_cpu_read() usage (Waiman Long) [1908640] - [include] lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables" (Waiman Long) [1908640] - [kernel] lockdep: Fix lockdep recursion (Waiman Long) [1908640] - [kernel] lockdep,trace: Expose tracepoints (Waiman Long) [1908640] - [x86] locking/lockdep: Fix TRACE_IRQFLAGS vs. NMIs (Waiman Long) [1908640] - [s390] s390: don't trace preemption in percpu macros (Waiman Long) [1908640] - [fs] blkdev: avoid migration stalls for blkdev pages (Chris von Recklinghausen) [1876502] - [netdrv] ionic: account for vlan tag len in rx buffer len (Jonathan Toppins) [1908642] - [netdrv] net/mlx5e: Fix refcount leak on kTLS RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Avoid kzalloc(GFP_KERNEL) under spinlock (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix leak on resync error flow (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add missing dma_unmap in RX resync (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Fix napi sync and possible use-after-free (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Improve rx handler function call (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Cleanup redundant capability check (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: Increase Async ICO SQ size (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX stats (Alaa Hleihel) [1866808] - [netdrv] net/mlx5e: kTLS, Add kTLS RX resync support (Alaa Hleihel) [1866808] - [infiniband] RDMA/siw: Fix handling of zero-sized Read and Receive Queues (Kamal Heib) [1900985 1875703] - [fs] ext4: fix bogus warning in ext4_update_dx_flag() (Lukas Czerner) [1908714] - [fs] ext4: handle dax mount option collision (Lukas Czerner) [1908714] - [fs] jbd2: fix up sparse warnings in checkpoint code (Lukas Czerner) [1908714] - [fs] ext4: unlock xattr_sem properly in ext4_inline_data_truncate() (Lukas Czerner) [1908714] - [fs] ext4: do not use extent after put_bh (Lukas Czerner) [1908714] - [fs] ext4: fix invalid inode checksum (Lukas Czerner) [1908714] - [fs] ext4: clear buffer verified flag if read meta block from disk (Lukas Czerner) [1908714] - [fs] ext4: treat buffers contining write errors as valid in ext4_sb_bread() (Lukas Czerner) [1908714] - [fs] ext4: treat buffers with write errors as containing valid data (Lukas Czerner) [1908714] - [fs] ext4: limit entries returned when counting fsmap records (Lukas Czerner) [1908714] - [fs] ext4: fix error handling code in add_new_gdb (Lukas Czerner) [1908714] - [fs] ext4: fix leaking sysfs kobject after failed mount (Lukas Czerner) [1908714] - [fs] ext4: fix checking of directory entry validity for inline directories (Lukas Czerner) [1908714] - [fs] ext4: correctly restore system zone info when remount fails (Lukas Czerner) [1908714] - [fs] ext4: handle add_system_zone() failure in ext4_setup_system_zone() (Lukas Czerner) [1908714] - [fs] ext4: fold ext4_data_block_valid_rcu() into the caller (Lukas Czerner) [1908714] - [fs] ext4: check journal inode extents more carefully (Lukas Czerner) [1908714] - [fs] ext4: don't allow overlapping system zones (Lukas Czerner) [1908714] - [fs] ext4: handle error of ext4_setup_system_zone() on remount (Lukas Czerner) [1908714] - [fs] jbd2: add the missing unlock_buffer() in the error path of jbd2_write_superblock() (Lukas Czerner) [1908714] - [fs] ext4: fix mount failure with quota configured as module (Lukas Czerner) [1908714] - [fs] ext4: improve explanation of a mount failure caused by a misconfigured kernel (Lukas Czerner) [1908714] - [include] jbd2: fix kernel-doc notation warning (Lukas Czerner) [1908714] - [base] mm: don't panic when links can't be created in sysfs (Baoquan He) [1890171] - [base] mm: don't rely on system state to detect hot-plug operations (Baoquan He) [1890171] - [mm] mm: replace memmap_context by meminit_context (Baoquan He) [1890171] - [net] Update window_clamp if SOCK_RCVBUF is set (Balazs Nemeth) [1905985] - [cpufreq] cpufreq: acpi-cpufreq: Mark sometimes used ID structs as __maybe_unused (David Arcari) [1857102] - [cpufreq] cpufreq: acpi-cpufreq: Mark 'dummy' variable as __always_unused (David Arcari) [1857102] - [cpufreq] cpufreq: Replace HTTP links with HTTPS ones (David Arcari) [1857102] - [cpufreq] cpufreq: change '.set_boost' to act on one policy (David Arcari) [1857102] - [cpufreq] cpufreq: Fix up cpufreq_boost_set_sw() (David Arcari) [1857102] - [cpufreq] cpufreq: Convert to new X86 CPU match macros (David Arcari) [1857102] - [cpufreq] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857102]- [platform] platform/x86: ISST: Add new PCI device ids (Prarit Bhargava) [1836722] - [net] net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_rxqs (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc (Antoine Tenart) [1912253] - [net] net-sysfs: take the rtnl lock when storing xps_cpus (Antoine Tenart) [1912253] - [fs] gfs2: Improve mmap write vs. punch_hole consistency (Andreas Grunbacher) [1872043] - [netdrv] bnx2x: fix spelling mistake "occurd" -> "occurred" (Manish Chopra) [1853224] - [netdrv] bnx2x: Perform Idlechk dump during the debug collection (Manish Chopra) [1853224] - [netdrv] bnx2x: Add support for idlechk tests (Manish Chopra) [1853224] - [netdrv] bnx2x: Add Idlechk related register definitions (Manish Chopra) [1853224] - [netdrv] bnx2x: use generic power management (Manish Chopra) [1853224] - [netdrv] bnx2x: allow bnx2x_bsc_read() to schedule (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove unused inline function bnx2x_vf_vlan_credit (Manish Chopra) [1853224] - [netdrv] bnx2x: Remove Comparison to bool in bnx2x_dcb.c (Manish Chopra) [1853224] - [netdrv] bnx2x: correct a comment mistake in grammar (Manish Chopra) [1853224] - [netdrv] net: bnx2x: reject unsupported coalescing params (Manish Chopra) [1853224] - [net] tls: Implement getsockopt SOL_TLS TLS_RX (Sabrina Dubroca) [1889664] - [net] tls: Protect from calling tls_dev_del for TLS RX twice (Sabrina Dubroca) [1889664] - [net] tls: missing received data after fast remote close (Sabrina Dubroca) [1889664] - [net] tls: Fix wrong record sn in async mode of device resync (Sabrina Dubroca) [1889664] - [net] tls: fix corrupted data in recvmsg (Sabrina Dubroca) [1889664] - [net] tls: sendfile fails with ktls offload (Sabrina Dubroca) [1889664] - [net] tls: race causes kernel panic (Sabrina Dubroca) [1889664] - [net] tls: Fix kmap usage (Sabrina Dubroca) [1889664] - [net] tls: allow MSG_CMSG_COMPAT in sendmsg (Sabrina Dubroca) [1889664] - [net] tls: fix sign extension issue when left shifting u16 value (Sabrina Dubroca) [1889664] - [net] tls: Add asynchronous resync (Sabrina Dubroca) [1889664] - [net] revert "net/tls: Add force_resync for driver resync" (Sabrina Dubroca) [1889664] - [net] net/tls: Add force_resync for driver resync (Sabrina Dubroca) [1889664] - [net] tls: Avoid assigning 'const' pointer to non-const pointer (Sabrina Dubroca) [1889664] - [net] tls: move mark_tech_preview to tls_init (Sabrina Dubroca) [1907477] - [mm] mm/hmm: do not call hmm_vma_walk_hole() while holding a spinlock (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add 'depth' parameter to pte_hole (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: don't lock PTEs for walk_page_range_novma() (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: allow walking without vma (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: add p4d_entry() and pgd_entry() (Chris von Recklinghausen) [1890943] - [x86] x86: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [s390] s390: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [powerpc] powerpc: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [arm64] arm64: mm: add p?d_leaf() definitions (Chris von Recklinghausen) [1890943] - [mm] mm: add generic p?d_leaf() macros (Chris von Recklinghausen) [1890943] - [mm] mm: move_pages: report the number of non-attempted pages (Chris von Recklinghausen) [1890943] - [mm] autonuma: fix watermark checking in migrate_balanced_pgdat() (Chris von Recklinghausen) [1890943] - [mm] mm/migrate.c: handle freed page at the first place (Chris von Recklinghausen) [1890943] - [mm] mm: pagewalk: Take the pagetable lock in walk_pte_range() (Chris von Recklinghausen) [1890943] - [mm] mm: untag user pointers passed to memory syscalls (Chris von Recklinghausen) [1890943] - [mm] mm: page cache: store only head pages in i_pages (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: fix reference check race between __find_get_block() and migration (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: remove unused mode argument (Chris von Recklinghausen) [1890943] - [mm] powerpc/book3s: Use config independent helpers for page table walk (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: use correct mmu_notifier events for each invalidation (Chris von Recklinghausen) [1890943] - [mm] mm/mmu_notifier: contextual information for event triggering invalidation (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm: move __find_linux_pte() out of hugetlbpage.c (Chris von Recklinghausen) [1890943] - [mm] mm/filemap.c: remove redundant test from find_get_pages_contig (Chris von Recklinghausen) [1890943] - [mm] mm/hugetlb: distinguish between migratability and movability (Chris von Recklinghausen) [1890943] - [mm] numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: make buffer_migrate_page_norefs() actually succeed (Chris von Recklinghausen) [1890943] - [mm] mm: treewide: remove unused address argument from pte_alloc functions (Chris von Recklinghausen) [1890943] - [fs] mm: migrate: drop unused argument of migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: provide buffer_migrate_page_norefs() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: move migrate_page_lock_buffers() (Chris von Recklinghausen) [1890943] - [mm] mm: migrate: lock buffers before migrate_page_move_mapping() (Chris von Recklinghausen) [1890943] - [mm] mm: Convert huge_memory to XArray (Chris von Recklinghausen) [1890943] - [mm] mm: Convert page migration to XArray (Chris von Recklinghausen) [1890943] - [mm] powerpc/mm/book3s: Check for pmd_large instead of pmd_trans_huge (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move two more functions from pgtable_64.h to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pti_set_user_pgtbl() to pgtable.h (Chris von Recklinghausen) [1890943] - [x86] x86/pgtable: Move pgdp kernel/user conversion functions to pgtable.h (Chris von Recklinghausen) [1890943] - [mm] x86/pgtable: Rename pti_set_user_pgd() to pti_set_user_pgtbl() (Chris von Recklinghausen) [1890943] - [mm] mm: memcg/slab: fix root memcg vmstats (Waiman Long) [1877019] - [mm] mm/slub: let number of online CPUs determine the slub page order (Waiman Long) [1877019] - [mm] mm, debug_pagealloc: don't rely on static keys too early (Waiman Long) [1877019] - [mm] mm: memcg: link page counters to root if use_hierarchy is false (Waiman Long) [1877019] - [mm] mm/memcg: unify swap and memsw page counters (Waiman Long) [1877019] - [mm] mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg (Waiman Long) [1877019] - [mm] mlock: fix unevictable_pgs event counts on THP (Waiman Long) [1877019] - [mm] mm/filemap: fix storing to a THP shadow entry (Waiman Long) [1877019] - [lib] XArray: add xas_split (Waiman Long) [1877019] - [lib] XArray: add xa_get_order (Waiman Long) [1877019] - [lib] XArray: Add private interface for workingset node deletion (Waiman Long) [1877019] - [include] XArray: Fix xas_reload for multi-index entries (Waiman Long) [1877019] - [include] xarray.h: correct return code documentation for xa_store_{bh, irq}() (Waiman Long) [1877019] - [mm] mm: memcg/slab: uncharge during kmem_cache_free_bulk() (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix racy access to page->mem_cgroup in mem_cgroup_from_obj() (Waiman Long) [1877019] - [mm] mm: memcontrol: fix missing suffix of workingset_restore (Waiman Long) [1877019] - [mm] mm: memcontrol: fix warning when allocating the root cgroup (Waiman Long) [1877019] - [mm] mm: replace hpage_nr_pages with thp_nr_pages (Waiman Long) [1877019] - [mm] mm: add thp_size (Waiman Long) [1877019] - [include] mm: add thp_order (Waiman Long) [1877019] - [include] include/linux/huge_mm.h: check PageTail in hpage_nr_pages even when !THP (Waiman Long) [1877019] - [mm] mm/page_vma_mapped.c: explicitly compare pfn for normal, hugetlbfs and THP page (Waiman Long) [1877019] - [mm] mm/vmscan: restore active/inactive ratio for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swap: implement workingset detection for anonymous LRU (Waiman Long) [1877019] - [mm] mm/swapcache: support to handle the shadow entries (Waiman Long) [1877019] - [mm] mm: fix swap cache node allocation mask (Waiman Long) [1877019] - [include] include/linux/swap.h: delete meaningless __add_to_swap_cache() declaration (Waiman Long) [1877019] - [mm] mm/swap_state.c: use the same way to count page in_swap_cache (Waiman Long) [1877019] - [mm] mm: shmem: use proper gfp flags for shmem_writepage() (Waiman Long) [1877019] - [mm] mm/workingset: prepare the workingset detection infrastructure for anon LRU (Waiman Long) [1877019] - [mm] mm/vmscan: protect the workingset on anonymous LRU (Waiman Long) [1877019] - [mm] mm/vmscan: make active/inactive ratio as 1:1 for anon lru (Waiman Long) [1877019] - [tools] kselftests: cgroup: add perpcu memory accounting test (Waiman Long) [1877019] - [mm] mm: memcg: charge memcg percpu memory to the parent cgroup (Waiman Long) [1877019] - [mm] mm: memcg/percpu: per-memcg percpu memory statistics (Waiman Long) [1877019] - [mm] mm: memcg/percpu: account percpu memory to memory cgroups (Waiman Long) [1877019] - [mm] percpu: return number of released bytes from pcpu_free_area() (Waiman Long) [1877019] - [mm] percpu: make pcpu_alloc() aware of current gfp context (Waiman Long) [1877019] - [mm] mm/khugepaged: fix filemap page_to_pgoff(page) != offset (Waiman Long) [1877019] - [mm] mm, slub: restore initial kmem_cache flags (Waiman Long) [1877019] - [include] mm: memcg/slab: fix slab statistics in !SMP configuration (Waiman Long) [1877019] - [mm] mm: slab: fix potential double free in ___cache_free (Waiman Long) [1877019] - [mm] ksm: reinstate memcg charge on copied pages (Waiman Long) [1877019] - [mm] mm: slub: fix conversion of freelist_corrupted() (Waiman Long) [1877019] - [mm] memcg: fix use-after-free in uncharge_batch (Waiman Long) [1877019] - [mm] mm/memory: fix IO cost for anonymous page (Waiman Long) [1877019] - [mm] mm: workingset: age nonresident information alongside anonymous pages (Waiman Long) [1877019] - [mm] slub: cure list_slab_objects() from double fix (Waiman Long) [1877019] - [mm] mm: do_swap_page(): fix up the error code (Waiman Long) [1877019] - [misc] lkdtm/heap: Avoid edge and middle of slabs (Waiman Long) [1877019] - [mm] mm: slub: really fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm/slab.c: fix kernel-doc warning for __ksize() (Waiman Long) [1877019] - [mm] mm: memcontrol: restore proper dirty throttling when memory.high changes (Waiman Long) [1877019] - [mm] memcg, oom: check memcg margin for parallel oom (Waiman Long) [1877019] - [mm] mm, memcg: avoid stale protection values when cgroup is above protection (Waiman Long) [1877019] - [mm] mm, memcg: unify reclaim retry limits with page allocator (Waiman Long) [1877019] - [mm] mm, memcg: reclaim more aggressively before high allocator throttling (Waiman Long) [1877019] - [mm] mm: memcontrol: avoid workload stalls when lowering memory.high (Waiman Long) [1877019] - [include] mm: kmem: switch to static_branch_likely() in memcg_kmem_enabled() (Waiman Long) [1877019] - [mm] mm: slab: rename (un)charge_slab_page() to (un)account_slab_page() (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove unused argument by charge_slab_page() (Waiman Long) [1877019] - [tools] tools/cgroup: add memcg_slabinfo.py tool (Waiman Long) [1877019] - [tools] kselftests: cgroup: add kernel memory accounting tests (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all allocations (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove redundant check in memcg_accumulate_slabinfo() (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate slab_root_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: remove memcg_kmem_get_cache() (Waiman Long) [1877019] - [mm] mm: memcg/slab: simplify memcg cache creation (Waiman Long) [1877019] - [mm] mm: memcg/slab: use a single set of kmem_caches for all accounted allocations (Waiman Long) [1877019] - [mm] mm, slab_common: fix a typo in comment "eariler"->"earlier" (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix memory leak at non-root kmem_cache destroy (Waiman Long) [1877019] - [mm] mm: memcg/slab: fix panic in __free_slab() caused by premature memcg pointer release (Waiman Long) [1877019] - [mm] mm: memcg/slab: move memcg_kmem_bypass() to memcontrol.h (Waiman Long) [1877019] - [mm] mm: memcg/slab: deprecate memory.kmem.slabinfo (Waiman Long) [1877019] - [mm] mm, memcg: fix build error around the usage of kmem_caches (Waiman Long) [1877019] - [mm] mm: memcg/slab: charge individual slab objects instead of pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: save obj_cgroup for non-root slab objects (Waiman Long) [1877019] - [mm] mm: memcg/slab: allocate obj_cgroups for non-root slab pages (Waiman Long) [1877019] - [mm] mm: memcg/slab: obj_cgroup API (Waiman Long) [1877019] - [mm] mm: memcontrol: decouple reference counting from page accounting (Waiman Long) [1877019] - [mm] mm: slub: implement SLUB version of obj_to_index() (Waiman Long) [1877019] - [mm] mm: memcg: convert vmstat slab counters to bytes (Waiman Long) [1877019] - [mm] mm: memcg: prepare for byte-sized vmstat items (Waiman Long) [1877019] - [mm] mm: memcg: factor out memcg- and lruvec-level changes out of __mod_lruvec_state() (Waiman Long) [1877019] - [mm] mm: kmem: make memcg_kmem_enabled() irreversible (Waiman Long) [1877019] - [mm] mm, slab/slub: improve error reporting and overhead of cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slab/slub: move and improve cache_from_obj() (Waiman Long) [1877019] - [mm] mm, slub: extend checks guarded by slub_debug static key (Waiman Long) [1877019] - [mm] mm, slub: introduce kmem_cache_debug_flags() (Waiman Long) [1877019] - [mm] mm, slub: introduce static key for slub_debug() (Waiman Long) [1877019] - [mm] mm, slub: make reclaim_account attribute read-only (Waiman Long) [1877019] - [mm] mm, slub: make remaining slub_debug related attributes read-only (Waiman Long) [1877019] - [mm] mm, slub: remove runtime allocation order changes (Waiman Long) [1877019] - [mm] mm, slub: make some slub_debug related attributes read-only (Waiman Long) [1877019] - [documentation] mm, slub: extend slub_debug syntax for multiple blocks (Waiman Long) [1877019] - [mm] mm/slab.c: update outdated kmem_list3 in a comment (Waiman Long) [1877019] - [mm] mm, slab: check GFP_SLAB_BUG_MASK before alloc_pages in kmalloc_order (Waiman Long) [1877019] - [mm] mm/slab: add naive detection of double free (Waiman Long) [1877019] - [init] mm/slab: expand CONFIG_SLAB_FREELIST_HARDENED to include SLAB (Waiman Long) [1877019] - [mm] mm: ksize() should silently accept a NULL pointer (Waiman Long) [1877019] - [include] include/linux/vmstat.h: remove unused page state adjustment macro (Waiman Long) [1877019] - [include] mm, memcg: fix inconsistent oom event behavior (Waiman Long) [1877019] - [mm] mm/memcg: fix refcount error while moving and swapping (Waiman Long) [1877019] - [mm] mm/memcontrol: fix OOPS inside mem_cgroup_get_nr_swap_pages() (Waiman Long) [1877019] - [mm] mm/memcontrol.c: add missed css_put() (Waiman Long) [1877019] - [mm] mm: memcontrol: handle div0 crash race condition in memory.low (Waiman Long) [1877019] - [kernel] mm: memcontrol: recursive memory.low protection (Waiman Long) [1877019] - [include] mm, memcg: consider subtrees in memory.events (Waiman Long) [1877019] - [net] mm, treewide: rename kzfree() to kfree_sensitive() (Waiman Long) [1877019] - [mm] mm/slab: use memzero_explicit() in kzfree() (Waiman Long) [1877019] - [mm] mm: swap: memcg: fix memcg stats for huge pages (Waiman Long) [1877019] - [mm] mm: swap: fix vmstats for huge pages (Waiman Long) [1877019] - [mm] mm: vmscan: limit the range of LRU type balancing (Waiman Long) [1877019] - [mm] mm: vmscan: reclaim writepage is IO cost (Waiman Long) [1877019] - [mm] mm: vmscan: determine anon/file pressure balance at the reclaim root (Waiman Long) [1877019] - [mm] mm: balance LRU lists based on relative thrashing (Waiman Long) [1877019] - [mm] mm: only count actual rotations as LRU reclaim cost (Waiman Long) [1877019] - [mm] mm: deactivations shouldn't bias the LRU balance (Waiman Long) [1877019] - [mm] mm: base LRU balancing on an explicit cost model (Waiman Long) [1877019] - [mm] mm: vmscan: drop unnecessary div0 avoidance rounding in get_scan_count() (Waiman Long) [1877019] - [mm] mm: remove use-once cache bias from LRU balancing (Waiman Long) [1877019] - [mm] mm: workingset: let cache workingset challenge anon (Waiman Long) [1877019] - [mm] mm: fold and remove lru_cache_add_anon() and lru_cache_add_file() (Waiman Long) [1877019] - [kernel] mm: allow swappiness that prefers reclaiming anon over the file workingset (Waiman Long) [1877019] - [mm] mm: keep separate anon and file statistics on page reclaim activity (Waiman Long) [1877019] - [mm] mm: fix LRU balancing effect of new transparent huge pages (Waiman Long) [1877019] - [mm] mm: replace list_move_tail() with add_page_to_lru_list_tail() (Waiman Long) [1877019] - [mm] mm: memcontrol: update page->mem_cgroup stability rules (Waiman Long) [1877019] - [mm] mm: memcontrol: delete unused lrucare handling (Waiman Long) [1877019] - [documentation] mm: memcontrol: document the new swap control behavior (Waiman Long) [1877019] - [mm] mm: memcontrol: charge swapin pages on instantiation (Waiman Long) [1877019] - [mm] mm: memcontrol: make swap tracking an integral part of memory control (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare swap controller setup for integration (Waiman Long) [1877019] - [mm] mm: memcontrol: drop unused try/commit/cancel charge API (Waiman Long) [1877019] - [mm] mm: memcontrol: convert anon and file-thp to new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_THPS counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_ANON_MAPPED counter (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to native NR_FILE_PAGES and NR_SHMEM counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare cgroup vmstat infrastructure for native anon counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare move_account for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: prepare uncharging for removal of private page type counters (Waiman Long) [1877019] - [mm] mm: memcontrol: convert page cache to a new mem_cgroup_charge() API (Waiman Long) [1877019] - [mm] mm: memcontrol: move out cgroup swaprate throttling (Waiman Long) [1877019] - [mm] mm: shmem: remove rare optimization when swapin races with hole punching (Waiman Long) [1877019] - [mm] mm: memcontrol: drop @compound parameter from memcg charging API (Waiman Long) [1877019] - [mm] mm: memcontrol: fix stat-corrupting race in charge moving (Waiman Long) [1877019] - [mm] mm: fix NUMA node file count error in replace_page_cache() (Waiman Long) [1877019] - [mm] mm/slub: fix stack overruns with SLUB_STATS (Waiman Long) [1877019] - [mm] slub: remove kmalloc under list_lock from list_slab_objects() V2 (Waiman Long) [1877019] - [mm] slub: Remove userspace notifier for cache add/remove (Waiman Long) [1877019] - [mm] mm/slub.c: fix corrupted freechain in deactivate_slab() (Waiman Long) [1877019] - [mm] mm/slub: fix incorrect interpretation of s->offset (Waiman Long) [1877019] - [mm] slub: avoid redzone when choosing freepointer location (Waiman Long) [1877019] - [mm] slub: relocate freelist pointer to middle of object (Waiman Long) [1877019] - [mm] slub: improve bit diffusion for freelist ptr obfuscation (Waiman Long) [1877019] - [mm] mm, slb: improve memory accounting (Waiman Long) [1877019] - [mm] thp: change CoW semantics for anon-THP (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse PTE-mapped compound pages (Waiman Long) [1877019] - [mm] khugepaged: allow to collapse a page shared across fork (Waiman Long) [1877019] - [mm] khugepaged: drain LRU add pagevec after swapin (Waiman Long) [1877019] - [mm] khugepaged: drain all LRU caches before scanning pages (Waiman Long) [1877019] - [mm] khugepaged: do not stop collapse if less than half PTEs are referenced (Waiman Long) [1877019] - [tools] khugepaged: add self test (Waiman Long) [1877019] - [mm] mm: code cleanup for MADV_FREE (Waiman Long) [1877019] - [mm] mm, thp: track fallbacks due to failed memcg charges separately (Waiman Long) [1877019] - [mm] mm, shmem: add vmstat for hugepage fallback (Waiman Long) [1877019] - [mm] autonuma: reduce cache footprint when scanning page tables (Waiman Long) [1877019] - [trace] mm/vmscan: simplify trace_reclaim_flags and trace_shrink_flags (Waiman Long) [1877019] - [mm] mm/memcg: optimize memory.numa_stat like memory.stat (Waiman Long) [1877019] - [mm] memcg: fix memcg_kmem_bypass() for remote memcg charging (Waiman Long) [1877019] - [mm] mm/memcg: automatically penalize tasks with high swap use (Waiman Long) [1877019] - [include] mm/memcg: move cgroup high memory limit setting into struct page_counter (Waiman Long) [1877019] - [mm] mm/memcg: move penalty delay clamping out of calculate_high_delay() (Waiman Long) [1877019] - [mm] mm/memcg: prepare for swap over-high accounting and penalty calculation (Waiman Long) [1877019] - [mm] memcg: expose root cgroup's memory.stat (Waiman Long) [1877019] - [mm] mm, memcg: add workingset_restore in memory.stat (Waiman Long) [1877019] - [documentation] doc: cgroup: improve formatting of mem stats (Waiman Long) [1877019] - [documentation] docs: cgroup: mm: Fix spelling of "list" (Waiman Long) [1877019] - [mm] mm, memcg: fix error return value of mem_cgroup_css_alloc() (Waiman Long) [1877019] - [include] memcontrol.h: Replace zero-length array with flexible-array member (Waiman Long) [1877019] - [mm] mm, memcg: bypass high reclaim iteration for cgroup hierarchy root (Waiman Long) [1877019] - [mm] mm: memcg: make memory.oom.group tolerable to task migration (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.swap.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.low load/store tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.max load tearing (Waiman Long) [1877019] - [mm] mm, memcg: prevent memory.high load/store tearing (Waiman Long) [1877019] - [mm] mm/memcontrol.c: make mem_cgroup_id_get_many() __maybe_unused (Waiman Long) [1877019] - [mm] memcg: css_tryget_online cleanups (Waiman Long) [1877019] - [mm] mm/memcontrol.c: cleanup some useless code (Waiman Long) [1877019] - [mm] mm/memcontrol.c: fix a -Wunused-function warning (Waiman Long) [1877019] - [mm] mm: memcontrol: switch to rcu protection in drain_all_stock() (Waiman Long) [1877019] - [mm] mm/khugepaged.c: fix khugepaged's request size in collapse_file (Waiman Long) [1877019] - [mm] khugepaged: fix null-pointer dereference due to race (Waiman Long) [1877019] - [mm] mm, thp: stop leaking unreleased file pages (Waiman Long) [1877019] - [trace] mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE (Waiman Long) [1877019] - [mm] mm, thp: recheck each page before collapsing file THP (Waiman Long) [1877019] - [mm] mm/thp: allow dropping THP from page cache (Waiman Long) [1877019] - [mm] mm/vmscan.c: support removing arbitrary sized pages from mapping (Waiman Long) [1877019] - [mm] mm/thp: fix node page state in split_huge_page_to_list() (Waiman Long) [1877019] - [fs] proc/meminfo: fix output alignment (Waiman Long) [1877019] - [mm] mm: shmem: disable interrupt when acquiring info->lock in userfaultfd_copy path (Waiman Long) [1877019] - [fs] mm, thp: avoid writes to file with THP in pagecache (Waiman Long) [1877019] - [mm] mm, thp: add read-only THP support for (non-shmem) FS (Waiman Long) [1877019] - [mm] khugepaged: rename collapse_shmem() and khugepaged_scan_shmem() (Waiman Long) [1877019] - [fs] mm,thp: stats for file backed THP (Waiman Long) [1877019] - [mm] filemap: update offset check in filemap_fault() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in pagecache_get_page() (Waiman Long) [1877019] - [mm] filemap: check compound_head(page)->mapping in filemap_fault() (Waiman Long) [1877019] - [mm] mm: mempolicy: fix the wrong return value and potential pages leak of mbind (Waiman Long) [1877019] - [mm] mm: thp: fix false negative of shmem vma's THP eligibility (Waiman Long) [1877019] - [mm] mm: thp: make transhuge_vma_suitable available for anonymous THP (Waiman Long) [1877019] - [mm] mm, thp, proc: report THP eligibility for each vma (Waiman Long) [1877019] - [documentation] mm, proc: be more verbose about unstable VMA flags in /proc//smaps (Waiman Long) [1877019] - [mm] mm: thp: pass correct vm_flags to hugepage_vma_check() (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps_rollup: convert to single value seq_file (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out common stats printing (Waiman Long) [1877019] - [fs] mm: /proc/pid/smaps: factor out mem stats gathering (Waiman Long) [1877019] - [fs] mm: /proc/pid/*maps remove is_pid and related wrappers (Waiman Long) [1877019] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1877019] - [mm] mm: workingset: add vmstat counter for shadow nodes (Waiman Long) [1877019] - [include] mm/memcg: Document access rule regarding mem_cgroup structure (Waiman Long) [1877019] - [mm] mm/page_alloc: silence a KASAN false positive (Waiman Long) [1877019] - [s390] s390/setup: init jump labels before command line parsing (Waiman Long) [1877019] - [mm] s390/maccess: add no DAT mode to kernel_write (Waiman Long) [1877019] - [mm] s390: Change s390_kernel_write() return type to match memcpy() (Waiman Long) [1877019] - [kernel] PM: hibernate: fix crashes with init_on_free=1 (Waiman Long) [1877019] - [mm] mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations (Waiman Long) [1877019] - [mm] mm/page_alloc.c: fix a crash in free_pages_prepare() (Waiman Long) [1877019] - [mm] mm: slub: Fix slab walking for init_on_free (Waiman Long) [1877019] - [mm] mm, slab: move memcg_cache_params structure to mm/slab.h (Waiman Long) [1877019] - [mm] mm, slab: extend slab/shrink to shrink all memcg caches (Waiman Long) [1877019] - [mm] mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind (Waiman Long) [1877019] - [mm] mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and MPOL_MF_STRICT were specified (Waiman Long) [1877019] - [init] init/Kconfig: fix neighboring typos (Waiman Long) [1877019] - [mm] mm: security: introduce init_on_alloc=1 and init_on_free=1 boot options (Waiman Long) [1877019] - [mm] memcg, oom: no oom-kill for __GFP_RETRY_MAYFAIL (Waiman Long) [1877019] - [mm] mm/kasan: add object validation in ksize() (Waiman Long) [1877019] - [mm] mm/slab: refactor common ksize KASAN logic into slab_common.c (Waiman Long) [1877019] - [mm] mm/slub.c: avoid double string traverse in kmem_cache_flags() (Waiman Long) [1877019] - [mm] mm/slab: sanity-check page type when looking up cache (Waiman Long) [1877019] - [mm] mm/slab: validate cache membership under freelist hardening (Waiman Long) [1877019] - [mm] mm/migrate: add stable check in migrate_vma_insert_page() (Waiman Long) [1877019] - [mm] mm/migrate: clean up some minor coding style (Waiman Long) [1877019] - [mm] mm/migrate: remove useless mask of start address (Waiman Long) [1877019] - [kernel] uprobe: use original page when all uprobes are removed (Waiman Long) [1877019] - [mm] mm: move memcmp_pages() and pages_identical() (Waiman Long) [1877019] - [mm] mm, thp: do not queue fully unmapped pages for deferred split (Waiman Long) [1877019] - [mm] mm/khugepaged: fix the xas_create_range() error path (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() do not crash on Compound (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() without freezing new_page (Waiman Long) [1877019] - [mm] mm/khugepaged: minor reorderings in collapse_shmem() (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() remember to clear holes (Waiman Long) [1877019] - [mm] mm/khugepaged: collapse_shmem() stop if punched or truncated (Waiman Long) [1877019] - [mm] mm: Convert khugepaged_scan_shmem to XArray (Waiman Long) [1877019] - [mm] mm: Convert collapse_shmem to XArray (Waiman Long) [1877019] - [mm] mm: thp: inc counter for collapsed shmem THP (Waiman Long) [1877019] - [mm] mm: thp: register mm for khugepaged when merging vma for shmem (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_unuse() stop eviction without igrab() (Waiman Long) [1877019] - [mm] mm: swapoff: take notice of completion sooner (Waiman Long) [1877019] - [mm] mm: swapoff: remove too limiting SWAP_UNUSE_MAX_TRIES (Waiman Long) [1877019] - [mm] mm: swapoff: shmem_find_swap_entries() filter out other types (Waiman Long) [1877019] - [mm] mm: rid swapoff of quadratic complexity (Waiman Long) [1877019] - [mm] shmem: Comment fixups (Waiman Long) [1877019] - [mm] memfd: Convert memfd_tag_pins to XArray (Waiman Long) [1877019] - [mm] memfd: Convert memfd_wait_for_pins to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_partial_swap_usage to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_free_swap to XArray (Waiman Long) [1877019] - [lib] shmem: Convert shmem_alloc_hugepage to XArray (Waiman Long) [1877019] - [tools] shmem: Convert find_swap_entry to XArray (Waiman Long) [1877019] - [mm] shmem: Convert shmem_confirm_swap to XArray (Waiman Long) [1877019]- [infiniband] RDMA/core: Do not indicate device ready when device enablement fails (Kamal Heib) [1902144] - [infiniband] RDMA/core: Clean up cq pool mechanism (Kamal Heib) [1902144] - [pci] PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge (Myron Stowe) [1897927] - [pci] PCI: Make pcie_find_root_port() work for Root Ports (Myron Stowe) [1897927] - [pci] PCI: Add ACS quirk for Intel Root Complex Integrated Endpoints (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Starship USB 3.0 (Myron Stowe) [1897927] - [pci] PCI: Avoid FLR for AMD Matisse HD Audio & USB 3.0 (Myron Stowe) [1897927] - [pci] PCI/switchtec: Correct bool variable type assignment (Myron Stowe) [1897927] - [pci] PCI: Allow pci_resize_resource() for devices on root bus (Myron Stowe) [1897927] - [pci] PCI/PM: Adjust pcie_wait_for_link_delay() for caller delay (Myron Stowe) [1897927] - [pci] PCI: Avoid Pericom USB controller OHCI/EHCI PME# defect (Myron Stowe) [1897927] - [tty] serial: 8250_pci: Move Pericom IDs to pci_ids.h (Myron Stowe) [1897927] - [pci] PCI/PM: Call .bridge_d3() hook only if non-NULL (Myron Stowe) [1897927] - [pci] PCI: Rename _DSM constants to align with spec (Myron Stowe) [1897927] - [pci] PCI/PME: Fix kernel-doc of pcie_pme_resume() and pcie_pme_remove() (Myron Stowe) [1897927] - [pci] PCI: Unify pcie_find_root_port() and pci_find_pcie_root_port() (Myron Stowe) [1897927] - [pci] PCI: Replace zero-length array with flexible-array (Myron Stowe) [1897927] - [pci] PCI: shpchp: Make shpchp_unconfigure_device() void (Myron Stowe) [1897927] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1897927] - [pci] PCI: pciehp: Remove unused EMI() and HP_SUPR_RM() macros (Myron Stowe) [1897927] - [pcmcia] pcmcia: Use CardBus window names (PCI_CB_BRIDGE_IO_0_WINDOW etc) when freeing (Myron Stowe) [1897927] - [pci] PCI: Use bridge window names (PCI_BRIDGE_IO_WINDOW etc) (Myron Stowe) [1897927] - [pci] PCI/PTM: Inherit Switch Downstream Port PTM settings from Upstream Port (Myron Stowe) [1897927] - [pci] PCI: Program MPS for RCiEP devices (Myron Stowe) [1897927] - [pci] PCI: Fix pci_host_bridge struct device release/free handling (Myron Stowe) [1897927] - [pci] PCI: Fix pci_register_host_bridge() device_register() error handling (Myron Stowe) [1897927] - [pci] PCI/ASPM: Allow ASPM on links to PCIe-to-PCI/PCI-X Bridges (Myron Stowe) [1897927] - [x86] x86/tboot: Don't disable swiotlb when iommu is forced on (Tony Camuso) [1883395] - [iommu] iommu/vt-d: Avoid panic if iommu init fails in tboot system (Tony Camuso) [1883395] - [pci] PCI/ERR: Clear PCIe Device Status errors only if OS owns AER (Myron Stowe) [1838358] - [pci] PCI/ERR: Rename pci_aer_clear_device_status() to pcie_clear_device_status() (Myron Stowe) [1838358] - [pci] PCI/AER: Log correctable errors as warning, not error (Myron Stowe) [1838358] - [pci] PCI/AER: Simplify __aer_print_error() (Myron Stowe) [1838358] - [misc] mei: hdcp: fix mei_hdcp_verify_mprime() input parameter (Tony Camuso) [1874577] - [misc] mei: add device kind to sysfs (Tony Camuso) [1874577] - [misc] mei: hw: don't use one element arrays (Tony Camuso) [1874577] - [misc] mei: hw: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: client: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: bus: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: ioctl: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] mei: hbm: use sizeof of variable instead of struct type (Tony Camuso) [1874577] - [misc] Revert "mei: Avoid the use of one-element arrays" (Tony Camuso) [1874577] - [misc] mei: Avoid the use of one-element arrays (Tony Camuso) [1874577] - [misc] mei: Replace HTTP links with HTTPS ones (Tony Camuso) [1874577] - [misc] mei: hdcp: Replace one-element array with flexible-array member (Tony Camuso) [1874577] - [misc] mei: bus: don't clean driver pointer (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for KBP with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add MEI device for SPT with ITPS capability (Tony Camuso) [1874577] - [misc] mei: me: add kdoc for mei_me_fw_type_nm() (Tony Camuso) [1874577] - [misc] mei: me: make mei_me_fw_sku_sps_4() less cryptic (Tony Camuso) [1874577] - [misc] mei: me: constify the device parameter to the probe quirk (Tony Camuso) [1874577] - [misc] mei: hdcp: Constify struct mei_cl_device_id (Tony Camuso) [1874577] - [misc] mei: me: add tiger lake point device ids for H platforms (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on Mehlow server platforms (Tony Camuso) [1874577] - [misc] mei: release me_cl object reference (Tony Camuso) [1874577] - [misc] mei: me: disable mei interface on LBG servers (Tony Camuso) [1874577] - [fs] NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock (Dave Wysochanski) [1906306] - [fs] NFS: Adjust fs_context error logging (Scott Mayhew) [1907711] - [mm] powerpc/book3s64/pkeys: Fix pkey_access_permitted() for execute disable pkey (Steve Best) [1912294] - [infiniband] IB/isert: add module param to set sg_tablesize for IO cmd (Kamal Heib) [1887359] - [infiniband] IB/isert: allocate RW ctxs according to max IO size (Kamal Heib) [1887359] - [net] sched: flower: Mark MPLS multilabel match as Tech Preview (Guillaume Nault) [1814836] - [net] sched: Fix dump of MPLS_OPT_LSE_LABEL attribute in cls_flower (Guillaume Nault) [1814836] - [net] cls_flower: remove mpls_opts_policy (Guillaume Nault) [1814836] - [net] flow_dissector: work around stack frame size warning (Guillaume Nault) [1814836] - [net] cls_flower: Support filtering on multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [net] flow_dissector: Parse multiple MPLS Label Stack Entries (Guillaume Nault) [1814836] - [netdrv] net/mlx5e: Use generic API to build MPLS label (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Support pedit on mpls over UDP decap (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw decapsulation of MPLS over UDP (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Allow to match on mpls parameters (Alaa Hleihel) [1790220] - [netdrv] net/mlx5e: Add support for hw encapsulation of MPLS over UDP (Alaa Hleihel) [1790220]- [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838731] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838731] - [netdrv] ixgbe: use eth_zero_addr() to clear mac address (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unnecessary usages of memset (Ken Cox) [1838731] - [netdrv] ixgbe: use generic power management (Ken Cox) [1838731] - [netdrv] ixgbe: convert to new udp_tunnel_nic infra (Ken Cox) [1838731] - [netdrv] ixgbe: don't clear UDP tunnel ports when RXCSUM is disabled (Ken Cox) [1838731] - [netdrv] ixgbe: Cleanup unneeded delay in ethtool test (Ken Cox) [1838731] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: don't call devm_mdiobus_free() (Ken Cox) [1838731] - [netdrv] net: ethernet: ixgbe: check the return value of ixgbe_mii_bus_init() (Ken Cox) [1838731] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838731] - [netdrv] ixgbe: protect ring accesses with READ- and WRITE_ONCE (Ken Cox) [1838731] - [netdrv] ixgbe: Remove unused inline function ixgbe_irq_disable_queues (Ken Cox) [1838731] - [netdrv] ixgbe: Use true, false for bool variable in __ixgbe_enable_sriov() (Ken Cox) [1838731] - [netdrv] ixgbe: Remove conversion to bool in ixgbe_device_supports_autoneg_fc() (Ken Cox) [1838731] - [netdrv] ixgbe: fix signed-integer-overflow warning (Ken Cox) [1838731] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Ken Cox) [1838731] - [netdrv] ionic: use mc sync for multicast filters (Jonathan Toppins) [1909329] - [fs] xfs: always return -ENOSPC on project quota reservation failure (Carlos Maiolino) [1908612] - [fs] xfs: group quota should return EDQUOT when prj quota enabled (Carlos Maiolino) [1908612] - [pwm] pwm: Add DesignWare PWM Controller Driver (Steve Best) [1783562] - [pwm] pwm: Ensure pwm_apply_state() doesn't modify the state argument (Steve Best) [1783562] - [net] sched: Mark VLAN_ACT_{POP,PUSH}_ETH as Tech Preview (Guillaume Nault) [1909345] - [vfio] vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn (Claudio Imbrenda) [1903972] - [s390] s390/pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [pci] PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY (Claudio Imbrenda) [1903972] - [iommu] s390/pci: adaptation of iommu to multifunction (Claudio Imbrenda) [1903972] - [s390] s390/pci: fix leak of DMA tables on hard unplug (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix PF/VF linking on hot plug (Claudio Imbrenda) [1853312] - [s390] s390/pci: re-introduce zpci_remove_device() (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix zpci_bus_link_virtfn() (Claudio Imbrenda) [1853312] - [s390] s390/pci: ignore stale configuration request event (Claudio Imbrenda) [1853312] - [s390] s390/pci: fix enabling a reserved PCI function (Claudio Imbrenda) [1853312] - [s390] s390/pci: create links between PFs and VFs (Claudio Imbrenda) [1853312] - [pci] PCI/IOV: Introduce pci_iov_sysfs_link() function (Claudio Imbrenda) [1853312] - [s390] s390/pci: removes wrong PCI multifunction assignment (Claudio Imbrenda) [1853312] - [s390] s390/pci: Handling multifunctions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Adding bus resource (Claudio Imbrenda) [1853312] - [s390] s390/pci: adapt events for zbus (Claudio Imbrenda) [1853312] - [s390] s390/pci: create zPCI bus (Claudio Imbrenda) [1853312] - [s390] s390/pci: define RID and RID available (Claudio Imbrenda) [1853312] - [s390] s390/pci: define kernel parameters for PCI multifunction (Claudio Imbrenda) [1853312] - [pci] s390/pci: embedding hotplug_slot in zdev (Claudio Imbrenda) [1853312] - [s390] s390/pci: Expose new port attribute for PCIe functions (Claudio Imbrenda) [1853312] - [s390] s390/pci: Improve handling of unset UID (Claudio Imbrenda) [1853312] - [s390] s390/pci: Fix zpci_alloc_domain() over allocation (Claudio Imbrenda) [1853312] - [arm64] arm64: insn: Fix two bugs in encoding 32-bit logical immediates (Yauheni Kaliuta) [1900977] - [iommu] iommu/amd: Set DTEto represent 512 IRTEs (Jerry Snitselaar) [1897492 1894769] - [iommu] iommu/amd: Increase interrupt remapping table limit to 512 entries (Jerry Snitselaar) [1897492 1894769] - [tools] selftests: forwarding: Add MPLS L2VPN test (Guillaume Nault) [1861261] - [net] sched: act_mpls: Add action to push MPLS LSE before Ethernet header (Guillaume Nault) [1861261] - [net] sched: act_vlan: Add {POP,PUSH}_ETH actions (Guillaume Nault) [1861261] - [fs] cifs: Fix incomplete memory allocation on setxattr path (Leif Sahlberg) [1903883] - [fs] cifs: Fix leak when handling lease break for cached root fid (Leif Sahlberg) [1903883] - [fs] Revert "cifs: Fix the target file was deleted when rename failed." (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] cifs: fix reference leak for tlink (Leif Sahlberg) [1903883] - [fs] smb3: fix unneeded error message on change notify (Leif Sahlberg) [1903883] - [fs] cifs: remove the retry in cifs_poxis_lock_set (Leif Sahlberg) [1903883] - [fs] smb3: fix access denied on change notify request to some servers (Leif Sahlberg) [1903883] - [fs] Replace HTTP links with HTTPS ones: CIFS (Leif Sahlberg) [1903883] - [fs] cifs: prevent truncation from long to int in wait_for_free_credits (Leif Sahlberg) [1903883] - [fs] cifs: Fix the target file was deleted when rename failed (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'posix' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'handletimeout' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor lease disabling for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor persistent/resilient handle flags for multiuser mounts (Leif Sahlberg) [1903883] - [fs] SMB3: Honor 'seal' flag for multiuser mounts (Leif Sahlberg) [1903883] - [fs] cifs: Display local UID details for SMB sessions in DebugData (Leif Sahlberg) [1903883] - [fs] cifs: misc: Use array_size() in if-statement controlling expression (Leif Sahlberg) [1903883] - [fs] cifs: update ctime and mtime during truncate (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when punch hole (Leif Sahlberg) [1903883] - [fs] cifs/smb3: Fix data inconsistent when zero file range (Leif Sahlberg) [1903883] - [fs] cifs: Fix double add page to memcg when cifs_readpages (Leif Sahlberg) [1903883] - [fs] cifs: Fix cached_fid refcnt leak in open_shroot (Leif Sahlberg) [1903883] - [fs] smb3: Add debug message for new file creation with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] cifs: fix chown and chgrp when idsfromsid mount option enabled (Leif Sahlberg) [1903883] - [fs] smb3: allow uid and gid owners to be set on create with idsfromsid mount option (Leif Sahlberg) [1903883] - [fs] smb311: Add tracepoints for new compound posix query info (Leif Sahlberg) [1903883] - [fs] smb311: add support for using info level for posix extensions query (Leif Sahlberg) [1903883] - [fs] smb311: Add support for lookup with posix extensions query info (Leif Sahlberg) [1903883] - [fs] smb311: Add support for SMB311 query info (non-compounded) (Leif Sahlberg) [1903883] - [fs] SMB311: Add support for query info using posix extensions (level 100) (Leif Sahlberg) [1903883] - [fs] smb3: add indatalen that can be a non-zero value to calculation of credit charge in smb2 ioctl (Leif Sahlberg) [1903883] - [fs] smb3: fix typo in mount options displayed in /proc/mounts (Leif Sahlberg) [1903883] - [fs] cifs: Add get_security_type_str function to return sec type (Leif Sahlberg) [1903883] - [fs] smb3: extend fscache mount volume coherency check (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: fix incorrect number of credits when ioctl MaxOutputResponse > 64K (Leif Sahlberg) [1903883] - [fs] smb3: remove static checker warning (Leif Sahlberg) [1903883] - [fs] cifs: fix minor typos in comments and log messages (Leif Sahlberg) [1903883] - [fs] smb3: minor update to compression header definitions (Leif Sahlberg) [1903883] - [fs] cifs: minor fix to two debug messages (Leif Sahlberg) [1903883] - [fs] cifs: Standardize logging output (Leif Sahlberg) [1903883] - [fs] smb3: Add new parm "nodelete" (Leif Sahlberg) [1903883] - [fs] cifs: get rid of unused parameter in reconn_setup_dfs_targets() (Leif Sahlberg) [1903883] - [fs] cifs: handle hostnames that resolve to same ip in failover (Leif Sahlberg) [1903883] - [fs] cifs: set up next DFS target before generic_ip_connect() (Leif Sahlberg) [1903883] - [fs] cifs: remove redundant initialization of variable rc (Leif Sahlberg) [1903883] - [fs] cifs: handle "nolease" option for vers=1.0 (Leif Sahlberg) [1903883] - [fs] cifs: fix leaked reference on requeued write (Leif Sahlberg) [1903883] - [fs] cifs: Fix null pointer check in cifs_read (Leif Sahlberg) [1903883] - [fs] CIFS: Spelling s/EACCESS/EACCES/ (Leif Sahlberg) [1903883] - [fs] cifs: fix uninitialised lease_key in open_shroot() (Leif Sahlberg) [1903883] - [fs] cifs: ensure correct super block for DFS reconnect (Leif Sahlberg) [1903883] - [fs] cifs: do not share tcons with DFS (Leif Sahlberg) [1903883] - [fs] cifs: minor update to comments around the cifs_tcp_ses_lock mutex (Leif Sahlberg) [1903883] - [fs] cifs: protect updating server->dstaddr with a spinlock (Leif Sahlberg) [1903883] - [fs] smb3: remove overly noisy debug line in signing errors (Leif Sahlberg) [1903883] - [fs] cifs: improve read performance for page size 64KB & cache=strict & vers=2.1+ (Leif Sahlberg) [1903883] - [fs] cifs: dump the session id and keys also for SMB2 sessions (Leif Sahlberg) [1903883] - [fs] smb3: enable swap on SMB3 mounts (Leif Sahlberg) [1903883] - [fs] smb3: change noisy error message to FYI (Leif Sahlberg) [1903883] - [fs] cifs: update internal module version number (Leif Sahlberg) [1903883] - [fs] smb3: use SMB2_SIGNATURE_SIZE define (Leif Sahlberg) [1903883] - [fs] CIFS: Fix bug which the return value by asynchronous read is error (Leif Sahlberg) [1903883] - [fs] CIFS: check new file size when extending file by fallocate (Leif Sahlberg) [1903883] - [fs] SMB3: Minor cleanup of protocol definitions (Leif Sahlberg) [1903883] - [fs] SMB3: Additional compression structures (Leif Sahlberg) [1903883] - [fs] SMB3: Add new compression flags (Leif Sahlberg) [1903883] - [fs] cifs: smb2pdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] cifs: clear PF_MEMALLOC before exiting demultiplex thread (Leif Sahlberg) [1903883] - [fs] cifs: cifspdu.h: Replace zero-length array with flexible-array member (Leif Sahlberg) [1903883] - [fs] CIFS: Warn less noisily on default mount (Leif Sahlberg) [1903883] - [fs] fs/cifs: fix gcc warning in sid_to_id (Leif Sahlberg) [1903883] - [fs] cifs: allow unlock flock and OFD lock across fork (Leif Sahlberg) [1903883] - [fs] cifs: do d_move in rename (Leif Sahlberg) [1903883] - [fs] cifs: add SMB2_open() arg to return POSIX data (Leif Sahlberg) [1903883] - [fs] cifs: plumb smb2 POSIX dir enumeration (Leif Sahlberg) [1903883] - [fs] cifs: add smb2 POSIX info level (Leif Sahlberg) [1903883] - [fs] cifs: rename posix create rsp (Leif Sahlberg) [1903883] - [fs] cifs: print warning mounting with vers=1.0 (Leif Sahlberg) [1903883] - [fs] smb3: fix performance regression with setting mtime (Leif Sahlberg) [1903883] - [fs] cifs: make use of cap_unix(ses) in cifs_reconnect_tcon() (Leif Sahlberg) [1903883] - [fs] cifs: use mod_delayed_work() for &server->reconnect if already queued (Leif Sahlberg) [1903883] - [fs] cifs: call wake_up(&server->response_q) inside of cifs_reconnect() (Leif Sahlberg) [1903883] - [fs] cifs: do not ignore the SYNC flags in getattr (Leif Sahlberg) [1903883] - [tools] tools/power/x86/intel-speed-select: Update version for v5.10 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Fix missing base-freq core IDs (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Update version for v5.9 (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add retries for mail box commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Add option to delay mbox commands (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Ignore -o option processing on error (Prarit Bhargava) [1896211] - [tools] tools/power/x86/intel-speed-select: Change path for caching topology info (Prarit Bhargava) [1896211] - [kernel] perf/core: Fix race in the perf_mmap_close() function (Michael Petlan) [1869925] {CVE-2020-14351} - [kernel] perf: Make struct ring_buffer less ambiguous (Michael Petlan) [1869925] {CVE-2020-14351} - [arm64] arm64: bpf: Fix branch offset in JIT (Yauheni Kaliuta) [1875342]- [hwmon] hwmon: (amd_energy) fix allocation of hwmon_channel_info config (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Add AMD family 19h model 01h x86 match (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) modify the visibility of the counters (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Improve the accumulation logic (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) optimize accumulation interval (David Arcari) [1911220] - [hwmon] hwmon: (amd_energy) Move label out of accumulation structure (David Arcari) [1911220] - [powerpc] powerpc/64s: Remove TM from Power10 features (Gustavo Duarte) [1892471] - [netdrv] ionic: start queues before announcing link up (Jonathan Toppins) [1906250] - [fs] NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy (Benjamin Coddington) [1873897] - [bluetooth] Bluetooth: btusb: Map Typhoon peak controller to BTUSB_INTEL_NEWGEN (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support for Intel Bluetooth Device Typhoon Peak (8087:0032) (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Helper function to download firmware to Intel adapters (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Define a function to construct firmware filename (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add *setup* function for new generation Intel controllers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Fix endianness issue for TLV version information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Functions to send firmware header / payload (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Add infrastructure to read controller information (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btintel: Refactor firmware download function (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Update boot parameter specific to SKU (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Refactor of firmware download flow for Intel conrollers (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Enable Intel events even if already in operational mode (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Configure Intel debug feature based on available support (Gopal Tiwari) [1900356] - [bluetooth] Bluetooth: btusb: Add support to read Intel debug feature (Gopal Tiwari) [1900356] - [kernel] rcuwait: avoid lockdep splats from rcuwait_active() (Auger Eric) [1903095] - [net] udp: fix the proto value passed to ip_protocol_deliver_rcu for the segments (Xin Long) [1879403] - [net] udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] udp: fix UDP header access on Fast/frag0 UDP GRO (Xin Long) [1879403] - [net] ethtool: add missing NETIF_F_GSO_FRAGLIST feature string (Xin Long) [1879403] - [net] fix fraglist segmentation reference count leak (Xin Long) [1879403] - [net] udp: initialize is_flist with 0 in udp_gro_receive (Xin Long) [1879403] - [include] udp: segment looped gso packets correctly (Xin Long) [1879403] - [net] udp: Support UDP fraglist GRO/GSO. (Xin Long) [1879403] - [net] Support GRO/GSO fraglist chaining. (Xin Long) [1879403] - [net] Add a netdev software feature set that defaults to off. (Xin Long) [1879403] - [net] Add fraglist GRO/GSO feature flags (Xin Long) [1879403] - [include] udp: Avoid post-GRO UDP checksum recalculation (Xin Long) [1879403] - [net] udp: fix GRO packet of death (Xin Long) [1879403] - [net] udp: fix GRO reception in case of length mismatch (Xin Long) [1879403] - [net] udp: cope with UDP GRO packet misdirection (Xin Long) [1879403] - [net] ipv6: factor out protocol delivery helper (Xin Long) [1879403] - [net] ip: factor out protocol delivery helper (Xin Long) [1879403] - [net] udp: add support for UDP_GRO cmsg (Xin Long) [1879403] - [net] udp: implement GRO for plain UDP sockets. (Xin Long) [1879403]- [powerpc] powerpc/perf: Fix Threshold Event Counter Multiplier width for P10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Exclude kernel samples while counting events in user space (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Invoke per-CPU variable access with disabled interrupts (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: MMCR0 control for PMU registers under PMCC=00 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64s: Convert some cpu_setup() and cpu_restore() functions to C (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/64: Set up a kernel stack for secondaries before cpu_restore() (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc: Wire up memtest (Desnes Augusto Nunes do Rosario) [1906084] - [mm] powerpc/mm: Don't report hugepage tables as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update cache events with l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update generic event codes for power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Add generic and cache event list for power10 DD1 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix the PMU group constraints for threshold events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Update the PMU group constraints for l2l3 events in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [powerpc] powerpc/perf: Fix to update radix_scope_qual in power10 (Desnes Augusto Nunes do Rosario) [1906084] - [nvme] nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN (Gopal Tiwari) [1903513] - [base] driver: core: Fix list corruption after device_del() (Torez Smith) [1900751] - [base] device property: Don't clear secondary pointer for shared primary firmware node (Torez Smith) [1900751] - [base] device property: Keep secondary firmware node secondary by type (Torez Smith) [1900751] - [of] of: property: Fix create device links for all child-supplier dependencies (Torez Smith) [1900751] - [base] drivers/base/test: fix global-out-of-bounds error (Torez Smith) [1900751] - [base] driver core: Fix use-after-free and double free on glue directory (Torez Smith) [1900751] - [thunderbolt] thunderbolt: Add uaccess dependency to debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use "if USB4" instead of "depends on" in Kconfig (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Allow KUnit tests to be built also when CONFIG_USB4=m (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: debugfs: Fix uninitialized return in counters_write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add debugfs interface (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Report power supply changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: hisilicon: fix refercence leak in xhci_histb_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake-H (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix reference leak in apple_mfi_fc_set_property (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only configure USB4 wake for lane 0 adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix memory leak if ida_simple_get() fails in enumerate_services() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 composition 0x1055 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix write-URB completion race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add NO_LPM quirk for Kingston flash drive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't create stream debugfs files with spinlock held (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix sizeof() mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix signedness comparison issue with enum variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add missing MODULE_DEVICE_TABLE() to stusb160x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore: Check both id_table and match() when both available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix an IS_ERR() vs NULL check in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: reset hard_reset_count for any disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: fix cooldown mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: fix kernel-doc markups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: stusb160x: fix some signedness bugs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EC200T module support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add the missed ida_simple_remove() in ring_request_msix() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] usb: docs: document altmode register/unregister functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add QCOM PMIC typec detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Cellient MPL200 card (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Add support for Sink FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Implement callbacks for FRS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_maxim: Chip level TCPC driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add set_vbus tcpci callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: cdc-acm: add quirk to blacklist ETAS ES58X devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: use cur_altsetting for consistency (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add Telit FT980-KS composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: remove polling for /sys/kernel/debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add support for STUSB160x Type-C controller family (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add typec_find_pwr_opmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Use OF graph API to get the connector fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: displayport: Reduce noise from the driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Add Kconfig option to reduce number of port initialization retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Clean up use of port initialization schemes and retries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix altsetting probing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up jtag quirks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP GC device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: clean up no-union-descriptor handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: use common data-class define (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: handle broken union descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "cdc-acm: hardening against malicious devices" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Accommodate usbip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] PM: core: introduce pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [kernel] sched: Provide sched_set_fifo() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix incorrect downcast (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbcore/driver: Fix specific driver selection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [sound] USB: correct API of usb_control_msg_send/recv in sound driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: correct API of usb_control_msg_send/recv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: legousbtower: use usb_control_msg_recv()" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "USB: core: hub.c: use usb_control_msg_send() in a few places" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: convert to readl_poll_timeout_atomic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: use module_usb_driver to simplify the code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: add debugfs support for ep with stream (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: don't create endpoint debugfs entry before ring buffer is set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Tune interrupt blocking for isochronous transfers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: omit duplicate actions when suspending a runtime suspended host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: improve the comments for xhci_plat_suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add wakeup entry at sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add priv quirk for skip PHY initialization (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: delete the unnecessary code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add .suspend_quirk for struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add platform data support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: cleanup of data structures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: fix race between disconnect() and read() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: don't inherity DMA properties for USB devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ehci-hcd: Move include to keep CRC stable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Only stop control channel when entering freeze (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Capitalize comment on top of QUIRK_FORCE_POWER_LINK_CONTROLLER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Correct tb_check_quirks() kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Log correct zeroX entries in decode_error() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle ERR_LOCK notification (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Handle SCU IPC error conditions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin notebook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: update ROLE_CONTROL for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add support when hidden tx registers are inaccessible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Add register definitions to tcpci (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: use macro for reporting results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Pass correct USB Type-C port number to SoC (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add dependency on ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: use set_host_byte() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: UAS: fix disconnect by unplugging a hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Prevent mode overrun (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Increase command completion timeout value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: use usb_control_msg_recv() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hub.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: message.c: use usb_control_msg_send() in a few places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb typec: mt6360: Add support for mt6360 Type-C driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-sched: Remove ununsed function tt_start_uframe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Make distrust_firmware param default to false (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci: Default to per-port over-current protection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry DROM read once if parsing fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Support for device role (UFP) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Check the port status before connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure SBU and HSL Orientation in Alternate modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Do not configure Altmode HPD High (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] device connection: Remove struct device_connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: bump hw_max_sectors to 2048 blocks for SS or faster drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] uas: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: fix sdev->host->dma_dev (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/host: ehci-npcm7xx: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb3503: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/misc: usb4604: Use pm_ptr() macro (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: driver: fix stray tabs in error messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Check the _DEP dependencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix slab-out-of-bounds Read in read_descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix out of sync data toggle if a configured device is reconfigured (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Un-register the USB role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_ice_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_is_tiger_lake() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check for Intel vendor ID when identifying controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_is_nhi() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Create device links from ACPI description (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn in TB_CFG_ERROR_INVALID_CONFIG_SPACE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_switch_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Introduce tb_port_next_cap() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Move struct tb_cap_any to tb_regs.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add runtime PM for Software CM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [pci] PCI / thunderbolt: Switch to use device links instead of PCI quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Enable wakes from system suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Tear down DP tunnels when suspending (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable lane 1 for XDomain connection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure port for XDomain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Set port configured for both ends of the link (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Configure link after lane bonding is enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not change default USB4 router notification timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Initialize TMU again on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Send reset only to first generation routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not program NFC buffers for USB4 router protocol adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize NHI LC mailbox command processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Optimize Force Power logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Software CM only should set force power in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use bit 31 to check if Firmware CM is running in Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to log an error if tb_switch_lane_bonding_enable() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use kobj_to_dev() instead of container_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: support dynamic Quectel USB compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Migrate workqueue to RT priority for processing events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: pd: Fix formatting in pd.h header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: Remove the superfluous break (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add unusual_uas entry for Sony PSZ drives (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Ignore UAS for JMicron JMS567 ATA/ATAPI Bridge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Ignore duplicate endpoint on Sound Devices MixPre-D (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: don't use snprintf() for sysfs attrs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix Fix source hard reset response for TDA 2.3.1.1 and TDA 2.3.1.2 failures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use maximum USB3 link rate when reclaiming if link is not up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add USB3 bandwidth management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Disable ports that are not implemented (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Always restore EP_SOFT_CLEAR_TOGGLE even if ep reset failed (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do warm-reset when both CAS and XDEV_RESUME are set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: fix ep context print mismatch in debugfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: Add quirk for PNY Pro Elite (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Better name for __check_usb_generic() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix device driver race (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Also match device drivers using the ->match vfunc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: fix tegra_xusb_get_phy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: otg usb2/usb3 port init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Bypass xHCI quirks for Raspberry Pi 4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] Revert "USB: pci-quirks: Add Raspberry Pi 4 quirk" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-pci: Add support for reset controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Solve race condition in anchor cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Print error on failure to get VBUS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Make VBUS supply optional (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: remove a duplicated entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: fix spelling mistake "removeable" -> "removable" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: Fix typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Fix use after free in usb_hcd_pci_remove() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Hold con->lock for the entire duration of ucsi_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Rework ppm_lock handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix 2 unlocked ucsi_run_command calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix AB BA lock inversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvtest: return proper error code in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: rework notification_buffer resizing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: Add no-lpm quirk for another Raydium touchscreen (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Fix bad gfp argument (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: merge fix for kunix_resource changes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Register charger (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASMedia ASM1142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: define IDs for various ASMedia host controllers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Simplify USB ID table match (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add WARN_ON ensure we are not trying to send 2 VDM packets at the same time (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Fix AB BA lock inversion between tcpm code and the alt-mode drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Refactor tcpm_handle_vdm_request payload handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Add tcpm_queue_vdm_unlocked() helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Move mod_delayed_work(&port->vdm_state_machine) call into tcpm_queue_vdm() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Make function xhci_dbc_ring_alloc() static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Make some functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for pinctrl-0 through pinctrl-8 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for multiple DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix up report size handling for some devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove tty specific port structure from struct xhci_dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgcap: remove dbc dependency on dbctty specific flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add a operations structure to access driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbctty: split dbc tty driver registration and unregistration functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: remove endpoint pointers from dbc_port structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: simplify dbc requests allocation and queueing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc start and stop functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc memory init and cleanup functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: don't use generic xhci ring allocation functions for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci context allocation for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dbc structure in the request completion instead of xhci_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to get_in/out_ep() helper functions to get endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbgtty: Pass dbc pointer when registering a dbctty device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to dbc_handle_xfer_event() instead of xhci_hcd pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Change to pass dbc pointer to xhci_do_dbc_stop() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Pass dbc pointer to endpoint init and exit functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Get the device pointer from dbc structure in dbc_ep_do_queue() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't pass the xhci pointer as a parameter to xhci_dbc_init_context() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use xhci_write_64() as it takes xhci as a parameter (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Use dev_info() and similar instead of xhci_info() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Add device pointer to dbc structure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_free_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Remove dbc_dma_alloc_coherent() wrapper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci erst allocation and free functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't pass struct xhci_hcd pointer to xhci_link_seg() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: dbc: Don't use generic xhci inc_deq() function for dbc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Make debug message consistent with bus and port number (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: tegra: Fix allocation for the FPCI context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: stop using compat_alloc_user_space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix ASM2142/ASM3142 DMA addressing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: fix the failure of bandwidth allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: appledisplay: remove needless check before usb_free_coherent() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: reduce stack usage in test_queue (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Stay in BIST mode till hardreset or unattached (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: Support BIST test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Support bist test data mode for compliance (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Error handling for tcpm_register_partner_altmodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Comment correction for typec_partner_register_altmode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Avoid connect request on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: fix quirks_param_set() writing to a const pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hcd: Try MSI interrupts on PCI devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add EM7305 QDL product ID (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix led-activity helpers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: fix memory corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: Move static const tables out to different include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: sisusbvga: sisusb_init: Remove genunine unused static const arrays (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: cdc-wdm: Provide description for usb_cdc_wdm_register()'s manage_power arg (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/serial.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb/pd_vdo.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: linux/usb.h: drop duplicated word in comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Remove pci-dma-compat wrapper APIs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Fix a potential UB casued by left shifting a negative value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ohci: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: clean up special-interface handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: use in-kernel types in port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for TIOCGICOUNT (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: add support for line-status events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: disable interface on errors in open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: replace HTTP links with HTTPS ones (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Do not define 'struct acpi_device_id' when !CONFIG_ACPI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: xhci-dbc: Supply missing 'xhci-dbgp.h' headerfile (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: early: ehci-dbgp: Remove set but never checked variable 'ret' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ucsi: Staticify and stop export of ucsi_init() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote function header which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: legousbtower: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: ldusb: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: iowarrior: Fix odd corruption issue in the file header (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: fusb302: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: Supply missing displayport.h include file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmodes: displayport: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: alauda: Remove set but unchecked variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-debugfs: Use 'gnu_printf' format notation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgtty: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-dbgcap: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mem: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Demote obvious misuse of kerneldoc to standard comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: adutux: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: atm: ueagle-atm: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: ledtrig-usbport: Demote obvious misuse of kerneldoc to standard comment blocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: drop redundant transfer-buffer casts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop extern keyword from function declarations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: serial: drop unnecessary sysrq include (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: add sysrq break-handler dummy (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: inline sysrq dummy function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only process sysrq when enabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: only set sysrq timestamp for consoles (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: fix break and sysrq handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: clean up receive processing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: make process-packet buffer unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: use fallthrough pseudo-keyword (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Quectel EG95 LTE modem (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix missing simulated-break margin (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: re-enable auto-RTS on open (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cp210x: enable usb generic throttle/unthrottle (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: simulate break condition if not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: class: usbtmc: File headers are not good candidates for kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci: Mark cc_to_error as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: ulpi: Fix a few kerneldoc related issues (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Demote comment block which is clearly not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: debug: Demote comment blocks which are obviously not kerneldoc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: pci-quirks: Demote function header from kerneldoc to comment block (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] USB: Fix up terminology in include files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix old style declaration warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: console: add support for flow control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: drop two stub functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: kobil_sct: log failure to update line settings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan_pda: drop unused firmware reset status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: iuu_phoenix: drop unused URB submission results (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: don't compile unused packet definitions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Add support for USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Definitions for response status bits (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add data structure for Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Combine the definitions for Accessory and USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix up terminology (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: fix kernel-doc warnings and formatting in (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for authenticate on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for separating the flush to SPI and authenticate (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Ensure left shift of 512 does not overflow a 32 bit int (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add min and max line-speed macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: name prescaler, divisor registers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Poll for U0 after disabling USB2 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Return if xHCI doesn't support LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-mtk: avoid runtime suspend when removing hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix enumeration issue when setting max packet size for FS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix incorrect EP_STATE_MASK (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add new Product ID for CH340 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add GosunCn GM500 series (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cypress_m8: enable Simply Automated UPB PIM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for on-board retimers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB4 port sideband operations for retimer access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Split common NVM functionality into a separate file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Retry USB4 block read operation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Generalize usb4_switch_do__data() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add Intel USB-IF ID to the NVM upgrade supported list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase DP DPRX wait timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_port_get_link_speed() available to other files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Handle incomplete PCIe/USB3 paths correctly in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Increase path length in discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for tunneling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add KUnit tests for path walking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add DP IN resources for all routers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Report consumed bandwidth in both directions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_pcie_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make usb4_switch_map_usb3_down() also return enabled ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Do not tunnel USB3 if link is not USB4 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Implement USB3 bandwidth negotiation routines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check that both ports are reachable when allocating path (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_path_alloc() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Make tb_next_port_on_path() work with tree topologies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Fix path indices used in USB3 tunnel discovery (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [netdrv] thunderbolt: Get rid of E2E workaround (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: NHI can use HopIDs 1-7 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: No need to warn if NHI hop_count != 12 or hop_count != 32 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Build initial XDomain property block upon first connect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OTG: rename product list of devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: scsi: fix up comment to be more specific (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: fix wording in error message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: sierra: unify quirk handling logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: fix up wording in a comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: OHCI: remove obsolete FIXME comment (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB OTG hub configuration option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rename USB quirk to USB_QUIRK_ENDPOINT_IGNORE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] USB: replace hardcode maximum usb string length by definition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci_rt1711h: avoid screaming irq causing boot hangs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ehci: reopen solution for Synopsys HC bug (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: add USB_QUIRK_DELAY_INIT for Logitech C922 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Fix DP alternate mode entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: change char to u8 for sisusb_copy_memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: sisusb_con: Use array_size() helper in memcpy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: tegra: Remove PLL power supplies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] drivers: usb: Fix trivial spelling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: additional Device Classes to debug/usb/devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Improve USB4 config symbol help text (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: kcov: collect coverage from usb complete callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: get rid of pointless access_ok() calls (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix lockup of devices with limited prescaler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: add basis for quirk detection (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] CDC-ACM: heed quirk also in error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit LE910C1-EUX compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: add DW5816e QDL support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add trivial .shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Ensure USB_ROLE_SWITCH is set as a dependency for tps6598x (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: make symbols static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: usb_wwan: do not resubmit rx urb on fatal errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/xhci-plat: Set PM runtime as active on resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Add support for Renesas controller with memory (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: renesas-xhci: Add the renesas xhci driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hci: add hc_driver as argument for usb_hcd_pci_probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: fix mmap dma mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: keep runtime active when removing host (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg list (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Update Kconfig to allow building on other architectures (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Fix DP_HPD_LVL bit field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ehci: Add new EHCI driver for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: xhci-plat: Add support for Broadcom STB SoC's (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add USB role switching logic (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Add OF probe binding (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Switch on role-switch uevent reporting (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel_pmc_mux: Support for static SBU/HSL orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add typec_find_orientation() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usblp: poison URBs upon disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] sierra-ms: do not call scsi_get_host_dev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] USB: pci-quirks: Add Raspberry Pi 4 quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] thunderbolt: Replace zero-length array with flexible-array (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: correct kernel->user page attribute mismatch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: intel_pmc_mux: Fix the property names (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: intel: Handle alt mode HPD_HIGH (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix misleading driver bug report (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: qcserial: Add DW5816e support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: add quirk for LaCie 2Big Quadra (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Do not link to disabled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Check return value of tb_sw_read() in usb4_switch_op() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: use true, false for bool variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the stub for ucsi_register_port_psy() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Convert the Intel PMC Mux driver to use new SCU IPC API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register with power_supply class (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: save power data objects in PD mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Correct bit-mask for CCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: replace magic numbers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Workaround for missed op_mode change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: set USB data role when partner type is power cable/ufp (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Storage: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Replace an empty statement with a debug message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb/early: remove unused including (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: pci-quirks: use true, false for bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: sisusbvga: Change port variable from signed to unsigned (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Add unusual_devs entry for JMicron JMS566 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration scheme first for high speed devices") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix handling of connect changes during sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add support for Intel Tiger Lake (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Fix typec_altmode_get_partner sometimes returning an invalid pointer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: add sanity checking for data length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Don't clear hub TT buffer on ep0 protocol stall (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: prevent bus suspend if a roothub port detected a over-current condition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix handling halted endpoint even if endpoint ring appears empty (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [gpio] usb: fusb302: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair K70 RGB RAPIDFIRE (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: introduce a cool down (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: close race betrween suspend() and acm_softint (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: fix deadlock in error handling and PM flushing work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: no use logging any details in case of ENODEV (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: pi3usb30532: Set switch_ / mux_desc name field to NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Handle AMD's spec-compliant identifiers, too (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Fix free-while-in-use bug in the USB S-Glibrary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: host: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: early: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] Revert "thunderbolt: Prevent crash if non-active NVMem file is read" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for extcon (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: restore capability check order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Correct the documentation for typec_cable_put() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix slab-out-of-bounds read in edge_interrupt_callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Wistron Neweb D19Q1 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add BroadMobi BM806U (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for ASKEY WWHC050 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Add ACPI support for USB interface devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-tegra: Add OTG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add control driver for F81534A (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix rounding error in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cdc-acm: fix close_delay and closing_wait units in TIOCSSERIAL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for RTL8153 based ethernet adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Use the correct style for SPDX License Identifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default for Intel Tiger Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Finetune host initiated USB3 rootport link suspend and resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Wait until link state trainsits to U0 after setting USB_SS_PORT_LS_U0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Tegra186/Tegra194 LPM (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Enable LPM for VIA LABS VL805 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Show host status when watchdog triggers and host is assumed dead (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add a separate debug message for split transaction errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: bail out early if driver can't accress host in resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add device-id for HP LD381 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ME910G1 ECM composition 0x110b (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: mon: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi_ccg: workaround for NVIDIA test device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add a shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix a potential race during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix NULL pointer dereference (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable LPM on WD19's Realtek Hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Use scnprintf() for avoiding potential buffer overflow (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix tty cleanup-op kernel-doc (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: clean up carrier-detect helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: apply XHCI_SUSPEND_DELAY to AMD XHCI controller 1022:145c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Delete of_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for Intel PMC mux control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for Thunderbolt 3 Alternate Mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Allow the role switches to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Provide the switch drivers handle to the switch in the API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Leave the private driver data pointer to the drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the mux handles to be requested with fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Add helpers for setting the mux state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Allow the muxes to be named (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: port: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: do error out if usb_autopm_get_interface() fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: fix unhandled return by employing a void function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: storage: Add quirk for Samsung Fit flash (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: quirks: add NO_LPM quirk for Logitech Screen Share (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: fix regulator probe and error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add sysfs node to show cc orientation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: move to SNK_UNATTACHED if sink removed for DRP (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for power-domains and hwlocks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: set F81534A serial port with RS232 mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add F81534A support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: use devm_kzalloc for port data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add tx_empty function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: extract LSR handler (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: uhci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ohci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: ehci-pci: remove useless cast for driver.name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Use ACPI_SUCCESS() at appropriate places (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Make use of acpi_evaluate_object() status (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Use const to reduce object data size (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ucsi: ccg: disable runtime pm during fw flashing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: register DP only for NVIDIA DP VDO (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 100 device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_enter_test_mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add missing annotation for xhci_set_port_power() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Do not open code __print_symbolic() in xhci trace events (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: use kobj_to_dev() API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: Add missing kernel-doc parameter descriptions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: set correct data role for non-DRD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: icm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [thunderbolt] thunderbolt: eeprom: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: don't probe unhandled devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: apple-mfi-fastcharge: fix endianess issue in probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Add driver to control USB fast charge for iOS devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fallback to generic driver when specific driver fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Select better matching USB drivers when available (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Implement usb_device_match_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Make it possible to "subclass" usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Export generic USB device driver functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: Replace zero-length array with flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Drop support for device name matching (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: altmode: Remove the notification chain (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Fix the description of struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Allow power role swapping even without USB PD (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Hide the port_type attribute when it's not supported (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Make the attributes read-only when writing is not possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for the 28 and 28L devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: misc: iowarrior: add support for 2 OEMed devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix novation SourceControl XL after suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables - take 2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] Revert "xhci: Fix memory leak when caching protocol extended capability PSI tables" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: remove redundant assignment to variable num (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: ehci-platform: add a quirk to avoid stuck (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: clean up endpoint-descriptor parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: quirks: blacklist duplicate ep on Sound Devices USBPre2 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: add endpoint-blacklist quirk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [uapi] usb: charger: assign specific number for enum value (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Don't record a connect-change event during reset-resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: uas: fix a plug & unplug racing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: hub: Fix the broken detection of USB3 device in SMSC hub (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: apply XHCI_PME_STUCK_QUIRK to Intel Comet Lake platforms (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix runtime pm enabling for quirky Intel hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak when caching protocol extended capability PSI tables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Force Maximum Packet size for Full-speed bulk devices to valid range (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: digi_acceleport: remove redundant assignment to pointer priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: relax unthrottle memory barrier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: fix receiver regression (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: Silence harmless uninitialized variable warning (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: cyberjack: fix spelling mistake "To" -> "Too" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: simplify endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: make set_termios synchronous (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix IrLAP framing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: fix link-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ir-usb: add missing endpoint sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: wcove: fix "op-sink-microwatt" default that was in mW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpci: mask event interrupts when remove driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Always unlink URBs in reverse order (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: quatech2: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: handle unbound ports (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: add missing active-port sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: handle unbound ports on URB completion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: handle unbound port at reset_resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: garmin_gps: Use flexible-array member (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: stop all I/O on close() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: add chars_in_buffer() implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: suppress driver bind attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Quectel RM500Q in QDL mode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: hub: Improved device recognition on remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: phy-generic: Delete unused platform data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: opticon: fix control-message timeouts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: Add support for Quectel RM500Q (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: ulpi: Add resource-managed variant of otg_ulpi_create() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Provide definitions for the USB modes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Give the mux drivers all the details regarding the port state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add definitions for the latest specification releases (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Add the Product Type VDOs to struct usb_pd_identity (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definition for DFP and UFP1 VDOs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: pd: Add definitions for the Enter_USB message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: More API for cable handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Add parameter for the VDO to typec_altmode_enter() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Block mode entry if the port has the mode disabled (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: fix spelling mistake "connetor" -> "connector" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: missing parentheses in USE_NEW_SCHEME (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Fix the notification bit offsets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Actually enable all the interface notifications (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix non-kernel-doc comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix: Don't skip endpoint descriptors with maxpacket=0 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB-PD tcpm: bad warning+size, PPS adapters (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb3503: Convert to use GPIO descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: add support for separate DP altmode devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Store the notification mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mtk-xhci: Do not explicitly set the DMA mask (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: fix check for duplicate endpoints (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add ZLP support for 0x1bc7/0x9010 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: Fix build warning seen with CONFIG_PM=n (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Fix an undefined reference to 'extcon_get_state' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: EHCI: Do not return -EPIPE when hub is disconnected (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit ME910G1 0x110a composition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: make sure interrupts are restored to correct state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default behaviour (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_HALT timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: only set D3hot for pci device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix USB3 device initiated resume race with roothub autosuspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix memory leak in xhci_add_in_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Fix incorrect DMA allocations for local memory pool drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: fix interface sanity checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix interface sanity check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: ueagle-atm: add missing endpoint check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: io_edgeport: fix epic endpoint lookup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: mon: Fix a deadlock in usbmon between mmap and read (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: usb-conn-gpio: Don't log an error on probe deferral (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: urb: fix URB structure initialization function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix use after free in typec_register_port() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: fix a potential use after free (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Implement basic ELPG support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add XUSB controller context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add support for XUSB context save/restore (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Enable runtime PM as late as possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Reuse stored register base address (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Extract firmware enable helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Use CNR as firmware ready indicator (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Avoid a fixed duration sleep (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Separate firmware request and load (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Fix "tega" -> "tegra" typo (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: drop comment about 2 uhci drivers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb, kcov: collect coverage from hub_event (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for interrupt-parent, dmas and -gpio(s) (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: serial: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: misc: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for "iommu-map" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix the semantics of of_is_ancestor_of() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Disable UAS on JMicron SATA enclosure (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: heed CAPACITY_HEURISTICS (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: uas: honor flag to avoid CAPACITY16 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Correct phy enable sequence (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: cp201x: support Mark-10 digital force gauge (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Remove tcpc_config configuration mechanism (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: Support running urb giveback in tasklet context (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Add tracing for xhci doorbell register writes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci: update event ring dequeue pointer on purpose (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Fix documentation for out values (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Foxconn T77W968 LTE modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Clarify documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port open flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop read-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop port driver data accessors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop serial struct accessor (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid serial checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop paranoid port checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: drop redundant urb context check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: rip out broken interrupt handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix probe error handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: document MCS7810 detection hack (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: clean up device-type handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7720: fix remote wakeup (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix error case of a timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for DW5821e with eSIM support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] appledisplay: fix error handling in the scheduled work (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous newlines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop superfluous brackets (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant endianness comments (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop unnecessary packed attributes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: clean up pointer declarations in driver data (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: remove tower_abort_transfers() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: stop interrupt-out URB unconditionally (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant interrupt-in running flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop noisy disconnect messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant open_count check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: zero driver data at allocation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant NULL check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: drop redundant MODULE_LICENSE ifdef (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: clean up runaway white space (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: drop redundant open-count check from release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: idmouse: simplify disconnect handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Allow USB device to be warm reset in suspended state (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add device link support for iommus, mboxes and io-channels (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Make it easy to add device links from DT properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: mos7840: add USB ID to support Moxa UPort 2210 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Optimise ucsi_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: New error codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove all bit-fields (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove struct ucsi_control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Remove the old API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: acpi: Move to the new API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Simplified registration and I/O API (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Give the connector fwnode to the port device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: typec: Remove unused members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Remove the callback members from struct typec_capability (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Start using struct typec_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Separate the operations vector (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Introduce typec_get_drvdata() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Copy everything from struct typec_capability during registration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Add support for USB2422 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: Drop some unused defines (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add usb_role_switch_find_by_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ch341: reimplement line-speed handling (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: Remove redundant vmap checks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix line-speed endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: whiteheat: fix potential slab corruption (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather segments") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: Revert commit 747668dbc061 ("usb-storage: Set virt_boundary_mask to avoid SG overflows") (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix __le32/__le64 accessors in debugfs code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: fix Immediate Data Transfer endianness (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix use-after-free regression in xhci clear hub TT implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix control-message timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: use unsigned size format specifiers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix ring-buffer locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Skip endpoints with 0 maxpacket length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: pl2303: add support for PL2303HXN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix read info leaks (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver: core: Improve documentation for fwnode_operations.add_links() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Minor code formatting/style clean ups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: clean up serial data access (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ti_usb_3410_5052: fix port-close races (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: Suppress problematic bind and unbind uevents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix a signedness bug in tower_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix memleak on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fix an IS_ERR() vs NULL bug in hd3ss3220_probe() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Fix the description of struct fwnode_operations (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant iowarrior mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: iowarrior: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: chaoskey: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix use-after-free on release (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ldusb: fix NULL-derefs on driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: drop redundant in-urb check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix use-after-free after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: remove duplicated include from hd3ss3220.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: drop OOM message (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: devio.c: Fix assignment of 0/1 to bool variables (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220: hd3ss3220_probe() warn: passing zero to 'PTR_ERR' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: hub: Check device descriptor before resusciation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: add dependency for TYPEC_HD3SS3220 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: Add Tegra194 XHCI support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: tegra: Parameterize mailbox register addresses (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: image: microtek.c: Remove unused variable (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: hd3ss3220_irq() can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] kcov: remote coverage support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Create device links for all child-supplier depencencies (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Add functional dependency link from DT bindings (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usb-skeleton: fix runtime PM after driver unbind (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add missing platform_device_put() on error in xhci_create_intel_xhci_sw_pdev() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix NULL pointer dereference in xhci_clear_tt_buffer_complete() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Increase STS_SAVE timeout in xhci_suspend() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent deadlock when xhci adapter breaks during init (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: wait for CNR controller not ready bit in xhci resume (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix USB 3.1 capability detection on early xHCI 1.1 spec based hosts (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Check all endpoints for LPM timeout (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Prevent device initiated U1/U2 link pm if exit latency is too long (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: Fix false warning message about wrong bounce buffer write length (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add pm_ops (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: simplify reset helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb251xb: add vdd supply support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: driver for TI HD3SS3220 USB Type-C DRP port controller (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use regulator_bulk_set_supply_names() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ftdi-elan: move a couple of statements to next line (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Fix Kconfig indentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-tegra: use devm_platform_ioremap_resource() to simplify code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix open after failed reset request (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix potential NULL-deref on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix deadlock on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: legousbtower: fix slab info leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: displayport: Fix for the mode entering routine (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: ucsi: ccg: Remove run_isr flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: use pr_err() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant lcd mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: drop redundant disconnect mutex (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblcd: fix I/O after disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: usb: typec: tcpm: Fix a signedness bug in tcpm_fw_get_caps() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix NULL-derefs on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: adutux: fix use-after-free on disconnect (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: yurex: Don't retry on unexpected errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: microtek: fix info-leak at probe (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: keyspan: fix NULL-derefs on open() and write() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add support for Cinterion CLS8 devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: SCSI glue: use dev_err instead of printk (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: option: add Telit FN980 compositions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add device IDs for Sienna and Echelon PL-20 (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbcore: Fix slab-out-of-bounds bug during device reset (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: Fix lockdep violation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: rio500: simplify locking (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: add USB GPIO based connection detection driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: create Kconfig file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: get usb-role-switch from parent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: Add fwnode_usb_role_switch_get() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: roles: Introduce stubs for the exiting functions in role.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbip: Implement SG support to vhci-hcd and stub driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel: Enable static DRD mode for role switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci-ext-caps.c: Add property to disable Intel SW switch (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: core: phy: add support for PHY calibration (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-rcar: Add a helper macro to set xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: add quirks member into struct xhci_plat_priv (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: fix possible memleak on setup address fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] xhci: add TSP bitflag to TRB tracing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Use GFP_KERNEL instead of GFP_ATOMIC in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci: dbc: Simplify error handling in 'xhci_dbc_alloc_requests()' (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tps6598x: Fix build error without CONFIG_REGMAP_I2C (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove commented out dma wrappers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove a stale comment in hcd_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: use hcd_uses_dma to check for DMA capabilities (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Simplify usb_decode_get_set_descriptor function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: common: Separated decoding functions from dwc3 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: xhci-mtk: add an optional xhci_ck clock (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ftdi_sio: add support for FT232H CBUS gpios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] device property: Remove duplicate test for NULL (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: roles: intel_xhci: Supplying software node for the role mux (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: document phy_calibrate() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usb-skeleton: make comment block in line with coding style (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: usbfs: only account once for mmap()'ed usb memory usage (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Call fusb302_debugfs_init earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Use usb_debug_root as root for our debugfs entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: ohci-nxp: enable compile-testing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: storage: isd200: remove redundant assignment to variable sendToTransport (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Always provide fwnode for the port (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: fusb302: Remove unused properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbfs: Add a capability flag for runtime suspend (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-storage: remove single-use define for debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: Add definitions for the USB2.0 hub TT requests (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: remove ehci-w90x900 driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usbfs: Add ioctls for runtime power management (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbsevseg: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: trancevibrator: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: atm: cxacru: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: lvstest: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cytherm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: cypress_cy7c63: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbtmc: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usblp: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: ueagle-atm: convert to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: typec: ucsi_ccg: convert i2c driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_device_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: add support for dev_groups to struct usb_driver (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: usbip: convert platform driver to use dev_groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: Disable USB2 LPM at shutdown (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-plat: Prevent an abnormally restrictive PHY init skipping (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: Remove dev_err() usage after platform_get_irq() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: xhci-hub: fix extra endianness conversion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: host: Remove call to memset after dma_alloc_coherent (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: mux: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: tcpm: Switch to use fwnode_property_count_uXX() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] usb: host: oxu210hp-hcd: remove include/linux/oxu210hp.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: core: hcd-pci: Use dev_get_drvdata where possible (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: resume ccgx i2c client (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: add runtime pm support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: refactor master_xfer (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb: typec: Registering real device entries for the muxes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: implement break control (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: f81232: add high baud rate support (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: serial: ark3116: drop redundant init_termios (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: Supply CCGx driver the fw build info (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: core: Invoke pm_runtime_get_*/pm_runtime_put_* before invoking reset callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: property: Document that of_graph_get_endpoint_by_regs needs of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [phy] phy: make phy-core explicitly non-modular (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] OF: properties: add missing of_node_put (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: mark resume function as __maybe_unused (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [of] of: Use of_node_name_eq for node name comparisons (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: limit reads also for combined messages (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: adhere to I2C fault codes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: nvidia-gpu: make pm_ops static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [i2c] i2c: add i2c bus driver for NVIDIA GPU (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] complete ->et_serial() switchover (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb_wwan: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] whiteheat: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ti_usb_3410_5052: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ssu100: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] quatech2: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] pl2303: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] opticon: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7840: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] mos7720: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_ti: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] io_edgeport: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] fdti_sio: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] f81232: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] ark3116: switch to ->get_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] cdc-acm: switch to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [usb] usb-serial: begin switching to ->et_serial() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [tty] tty_ioctl(): start taking TIOCSERIAL into separate methods (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Remove device_connection_find() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix device_pm_lock() locking for device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver code: print symbolic error code (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Fix the secondary firmware node handling in set_primary_fwnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: add device probe log helper (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Change delimiter in devlink device's name to "--" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Avoid NULL pointer dereference in device_get_next_child_node() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix sleeping in invalid context during device link deletion (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add waiting_for_supplier sysfs file for devices (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add state_synced sysfs file for devices that support it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [documentation] driver core: Expose device link details in sysfs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Avoid deferred probe due to fw_devlink_pause/resume() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Rename dev_links_info.defer_sync to defer_hook (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Don't do deferred probe in parallel with kernel_init thread (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use software_node_unregister() when unregistering group of nodes (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device_is_dependent() to linux/device.h (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Update device link status correctly for SYNC_STATE_ONLY links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement software_node_unregister() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [lib] lib/test_printf: Add tests for pfw printk modifier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove unnecessary is_fwnode_dev variable in device_add() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers property: When no children in primary, try secondary (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of SYNC_STATE_ONLY + STATELESS device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix SYNC_STATE_ONLY device link implementation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove check in driver_deferred_probe_force_trigger() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink: Add support for batching fwnode parsing (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Look for waiting consumers only for a fwnode's primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Move code to the right part of the file (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device links from fwnode only for the primary device (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "Revert "driver core: Set fw_devlink to "permissive" behavior by default"" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix handling of fw_devlink=permissive (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: fw_devlink_flags can be static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fw_devlink kernel commandline option (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Reevaluate dev->links.need_for_probe as suppliers are added (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Skip unnecessary work when device doesn't have sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add dev_has_sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Call sync_state() even if supplier has no consumers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow device link operations inside sync_state() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add sync_state driver/bus callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link support for SYNC_STATE_ONLY flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix creation of device links with PM-runtime flags (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove device link creation limitation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add missing description of new struct device_link field (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add device link flag DL_FLAG_AUTOPROBE_CONSUMER (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Make driver core own stateful device links (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Fix adding device links to probing suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: core: Remove glue dirs from sysfs earlier (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Remove the link if there is no driver with AUTO flag (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: silence device link messages unless debugging (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] base: core: Remove WARN_ON from link dependencies check (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: export set_secondary_fwnode() to modules (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow register and unregister software node groups (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Export fwnode_get_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] Revert "software node: Simplify software_node_release() function" (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: add basic tests for property entries (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove separate handling of references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: implement reference properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: allow embedding of small arrays into property_entry (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: replace is_array with is_inline (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: unify PROPERTY_ENTRY_XXX macros (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: simplify property_entry_read_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: remove property_entry_read_uNN_array functions (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: get rid of property_set_pointer() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [firmware] efi/apple-properties: use PROPERTY_ENTRY_U8_ARRAY_LEN (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: mark internal macros with double underscores (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: introduce PROPERTY_ENTRY_XXX_ARRAY_LEN() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] software node: remove DEV_PROP_MAX (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: clean up property_copy_string_array() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow fwnode_operations.add_links to differentiate errors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Allow a device to wait on optional suppliers (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add a function to obtain a node's prefix (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_get_name for returning the name of a node (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add functions for accessing node's parents (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move fwnode_get_parent() up (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Make argument to to_software_node const (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Get reference to parent swnode in get_parent op (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [include] driver core: Add support for linking devices during device addition (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: Add fwnode_to_dev() to look up device from fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Initialize the return value in software_node_to_swnode() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Add fwnode_connection_find_match() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_find_by_name() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by device type (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: Introduce device lookup variants by fwnode (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find connections also by checking the references (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Introduce fwnode_find_reference() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add software_node_get_reference_args() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Use kobject name when finding child nodes by name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Add support for static node descriptors (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Simplify software_node_release() function (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Allow node creation without properties (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Add fwnode_graph_get_endpoint_by_id() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: Make two functions static (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] software node: Implement get_named_child_node fwnode callback (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Find device connections also from device graphs (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device connection: Prepare support for firmware described connections (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: drop use of BUS_ATTR() (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] driver core: bus: convert to use BUS_ATTR_WO and RW (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if swnode is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: check if pointer p is NULL before dereferencing it (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] sysfs: Disable lockdep for driver bind/unbind files (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: fix fwnode_graph_get_next_endpoint() documentation (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: swnode: remove need for a temporary string for the node name (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] kobject: return error code if writing /sys/.../uevent fails (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Remove struct property_set (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] device property: Move device_add_properties() to swnode.c (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [base] drivers: base: Introducing software nodes to the firmware node framework (Torez Smith) [1900751 1856683 1838295 1837563 1783493] - [mm] powerpc/64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm (Chris von Recklinghausen) [1862347] - [powerpc] powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM (Chris von Recklinghausen) [1862347] - [fs] mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race (Chris von Recklinghausen) [1862347] - [arm64] arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect() (Andrew Jones) [1908439] - [arm64] arm64: pgtable: Fix pte_accessible() (Andrew Jones) [1908439] - [kernel] kernel: fork: properly initialize task_struct->task_struct_rh (Rafael Aquini) [1895892] - [s390] s390/dasd: Process FCES path event notification (Philipp Rudo) [1723823] - [s390] s390/dasd: Prepare for additional path event handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Display FC Endpoint Security information via sysfs (Philipp Rudo) [1723823] - [s390] s390/dasd: Fix operational path inconsistency (Philipp Rudo) [1723823] - [s390] s390/dasd: Store path configuration data during path handling (Philipp Rudo) [1723823] - [s390] s390/dasd: Move duplicate code to separate function (Philipp Rudo) [1723823] - [s390] s390/dasd: Remove unused parameter from dasd_generic_probe() (Philipp Rudo) [1723823] - [s390] s390/cio: Add support for FCES status notification (Philipp Rudo) [1723823] - [s390] s390/cio: Provide Endpoint-Security Mode per CU (Philipp Rudo) [1723823] - [s390] s390/cio: Export information about Endpoint-Security Capability (Philipp Rudo) [1723823] - [net] net/af_iucv: fix null pointer dereference on shutdown (Philipp Rudo) [1903966] - [s390] s390/dasd: fix null pointer dereference for ERP requests (Philipp Rudo) [1903965] - [tools] selftests: netfilter: add command usage (Hangbin Liu) [1899374] - [tools] selftests: netfilter: simplify command testing (Hangbin Liu) [1899374] - [tools] selftests: netfilter: remove unused variable in make_file() (Hangbin Liu) [1899374] - [tools] selftests: netfilter: exit on invalid parameters (Hangbin Liu) [1899374] - [tools] selftests: netfilter: fix header example (Hangbin Liu) [1899374] - [tools] selftests: netfilter: kill running process only (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add MTU arguments to flowtables (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add checktool function (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add test case for conntrack helper assignment (Hangbin Liu) [1899374] - [tools] selftests: netfilter: extend nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add nfqueue test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs tunnel test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs nat test case (Hangbin Liu) [1899374] - [tools] selftests: netfilter: add ipvs test script (Hangbin Liu) [1899374] - [tools] selftests: netfilter: check icmp pkttoobig errors are set as related (Hangbin Liu) [1899374] - [hwtracing] intel_th: pci: Add Emmitsburg PCH support (Jiri Olsa) [1838703] - [hwtracing] intel_th: pci: Add Tiger Lake PCH-H support (Jiri Olsa) [1783492 1782729] - [hwtracing] intel_th: pci: Add Jasper Lake CPU support (Jiri Olsa) [1783097] - [hwtracing] intel_th: pci: Add Elkhart Lake CPU support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Elkhart Lake SOC support (Jiri Olsa) [1783596] - [hwtracing] intel_th: pci: Add Ice Lake CPU support (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a NULL dereference when hub driver is not loaded (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Make stopping the trace optional (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix user-visible error codes (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix the unexpected state warning (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Disallow multi mode on devices where it's broken (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: msu: Fix window switching without windows (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix freeing IRQs (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729] - [hwtracing] intel_th: Fix a double put_device() in error path (Jiri Olsa) [1838703 1783596 1783492 1783097 1782729]- [idle] intel_idle: Fix intel_idle() vs tracing (David Arcari) [1903307] - [idle] intel_idle: Fix max_cstate for processor models without C-state tables (David Arcari) [1903307] - [idle] intel_idle: Ignore _CST if control cannot be taken from the platform (David Arcari) [1903307] - [idle] intel_idle: mention assumption that WBINVD is not needed (David Arcari) [1903307] - [idle] intel_idle: Remove uninitialized_var() usage (David Arcari) [1903307] - [idle] intel_idle: cleanup code to address out of order commits (David Arcari) [1903307] - [s390] Revert "s390/qeth: phase out OSN support" (Philipp Rudo) [1903962] - [net] net/smc: fix matching of existing link groups (Philipp Rudo) [1903961] - [netdrv] mlxsw: core: Use variable timeout for EMAD retries (Ivan Vecera) [1857594] - [netdrv] mlxsw: Fix firmware flashing (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix use-after-free in mlxsw_emad_trans_finish() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix memory leak on module removal (Ivan Vecera) [1857594] - [netdrv] mlxsw: Only advertise link modes supported by both driver and device (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add a PFC test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add headroom handling test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: qos_lib: Add a wrapper for running mlnx_qos (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Support port-less topologies (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Add devlink_cell_size_get() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: devlink_lib: Split devlink_..._set() into save & set (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Expose transceiver_overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update module's settings when module is plugged in (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Initialize netdev's module overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enable temperature event for all supported port module sensors (Ivan Vecera) [1857594] - [netdrv] mlxsw: Update transceiver_overheat counter according to MTWE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add an infrastructure to track transceiver overheat counter (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Query MTMP before writing to set only relevant fields (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Ports Module Administrative and Operational Status Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Port Module Plug/Unplug Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Management Temperature Warning Event Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Fix mlxsw_sp_acl_tcam_group_add()'s error path (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: simplify the return expression of __mlxsw_sp_router_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Disable port buffer autoresize with qdiscs (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Implement dcbnl_setbuffer / getbuffer (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Support two headroom modes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Manage internal buffer in the hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Introduce shared buffer ops (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Convert mlxsw_sp_port_headroom_init() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Inline mlxsw_sp_sb_max_headroom_cells() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Move here the new headroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move here the three-step headroom configuration from DCB (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert mlxsw_sp_port_pg_prio_map() to hdroom code (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Convert ETS handler fully to mlxsw_sp_hdroom_configure() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split headroom autoresize out of buffer configuration (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track buffer sizes in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track lossiness in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track priorities in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Track MTU in struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Unify delay handling between PFC and pause (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Add struct mlxsw_sp_hdroom (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Introduce fw_fatal health reporter (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW General Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring FW Debug Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw_load_policy devlink param into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Push code doing params register/unregister into separate helpers (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move fw flashing code into core.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2008.1310 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Derive SBIB from maximum port speed & MTU (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum speed around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Keep maximum MTU around (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Introduce ptys_max_speed callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Extract a helper to get Ethernet attributes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Extend hwmon interface with critical and emergency alarms (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Calculate MLXSW_HWMON_ATTR_COUNT more accurately (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_hwmon: Split temperature querying from show functions (Ivan Vecera) [1857594] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Remove internal speeds from PTYS register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Reduce runtime of tc-police scale test (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Fix mausezahn delay parameter in mirror_test() (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for burst test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Increase burst size for rate test (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Decrease required rate accuracy (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Adjust default policer burst size for Spectrum-{2, 3} (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ptp: Use generic helper function (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of trapping on RED qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload action trap for qevents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC traps initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Allow for per-ASIC trap groups initialization (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: On policer_id_base_ref_count, use dec_and_test (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Use 'size_t' for array sizes (Ivan Vecera) [1857594] - [netdrv] devlink: Pass extack when setting trap's action and group's parameters (Ivan Vecera) [1857594] - [net] devlink: Add early_drop trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_cnt: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Fix use-after-free in router init / de-init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Free EMAD transactions using kfree_rcu() (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Increase scope of RCU read-side critical section (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use different trap group for externally routed packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local host routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add support for temperature thresholds reading for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Add ethtool support for QSFP-DD transceivers (Ivan Vecera) [1857594] - [netdrv] mlxsw: destroy workqueue when trap_register in mlxsw_emad_init (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Fix wrong SFP EEPROM reading for upper pages 1-3 (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Test policers' occupancy (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add scale test for tc-police (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: Test tc-police restrictions (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tc-police tests (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Offload FLOW_ACTION_POLICE (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add police action (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Work around hardware limitation (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add devlink resource support (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_policer: Add policer core (Ivan Vecera) [1857594] - [netdrv] mlxsw: resources: Add resource identifier for global policers (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add policer bandwidth limits (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use mirror reason during Rx listener lookup (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Retrieve mirror reason from CQE during receive (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Add mirror reason field to CQEv2 (Ivan Vecera) [1857594] - [netdrv] mlxsw: trap: Add trap identifiers for mirrored packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase trap identifier to 10 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow setting policer on a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Allow passing parameters to SPAN agents (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for mirroring towards CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Do not dereference destination netdev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add driver private info to parms_set() callback (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add per-ASIC SPAN agent operations (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: add mirroring_pid_base to MOGCR register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add session_id and pid to MPAT register (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: RED: Test offload of mirror on RED early_drop qevent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_qdisc: Offload mirroring on RED qevent early_drop (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Promote binder-type dispatch to spectrum.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Publish matchall data structures (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Drop an unused field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flow: Convert a goto to a return (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to enable / disable global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add support for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Prepare for global mirroring triggers (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Move SPAN operations out of global file (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Port Analyzer Global Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Add Monitoring Mirror Trigger Enable Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: pci: Fix use-after-free in case of failed devlink reload (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Remove inappropriate usage of WARN_ON() (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add tests for ethtool extended state (Ivan Vecera) [1857594] - [tools] selftests: forwarding: forwarding.config.sample: Add port with no cable connected (Ivan Vecera) [1857594] - [tools] selftests: forwarding: ethtool: Move different_speeds_get() to ethtool_lib (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Add link extended state (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Port Diagnostics Database Register (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_ethtool: Move mlxsw_sp_port_type_speed_ops structs (Ivan Vecera) [1857594] - [netdrv] mlxsw: Move ethtool_ops to spectrum_ethtool.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Rename mlxsw_sp_port_headroom_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: Enforce firmware version for Spectrum-3 (Ivan Vecera) [1857594] - [netdrv] mlxsw: Bump firmware version to XX.2007.1168 (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_dcb: Fix a spelling typo in spectrum_dcb.c (Ivan Vecera) [1857594] - [tools] selftests: forwarding: Add a test for pedit munge tcp, udp sport, dport (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Support FLOW_ACTION_MANGLE for TCP, UDP ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core_acl_flex_actions: Add L4_PORT_ACTION (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Split handling of pedit mangle by chip type (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Do not rely on machine endianness (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Adjust headroom buffers for 8x ports (Ivan Vecera) [1857594] - [netdrv] mlxsw: core: Use different get_trend() callbacks for different thermal zones (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Add test for control packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register ACL control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 3 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Register layer 2 control traps (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Factor out common Rx listener function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move layer 3 exceptions to exceptions trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: remove redundant initialization of pointer br_dev (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Allow programming link-local prefix routes (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Add packet traps for BFD packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Treat IPv6 link-local SIP as an exception (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Share one group for all locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Move all trap groups under the same enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Do not hard code "thin" policer identifier (Ivan Vecera) [1857594] - [netdrv] mlxsw: switchx2: Move SwitchX-2 trap groups out of main enum (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Reduce priority of locally delivered packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for local routes and link-local destination (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use separate trap group for FID miss (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for various IPv6 packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IPv6 ND trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same switch case for identical groups (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for ACL trap (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Fix spelling mistake in trap's name (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use dedicated trap group for sampled packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for IPv6 ND and ARP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename ARP trap group (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Remove unnecessary field (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Align TC and trap priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_buffers: Assign non-zero quotas to TC 0 of the CPU port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Change default rate and priority of DHCP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Trap IPv4 DHCP packets in router (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Use same trap group for MLD and IGMP packets (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename IGMP trap group (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: Do not hard code trap group name (Ivan Vecera) [1857594] - [tools] selftests: devlink_lib: Remove double blank line (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap group data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Store all trap policer data in one array (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_trap: Move struct definition out of header file (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add couple of test for the correct matchall-flower ordering (Ivan Vecera) [1857594] - [tools] selftests: mlxsw: tc_restrictions: add test to check sample action restrictions (Ivan Vecera) [1857594] - [] selftests: mlxsw: rename tc_flower_restrictions.sh to tc_restrictions.sh (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Forbid to insert flower rules in collision with matchall rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Forbid to insert matchall rules in collision with flower rules (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Put matchall list into substruct of flow struct (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_flower: Expose a function to get min and max rule priority (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Restrict sample action to be allowed only on ingress (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove old SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use new analyzed ports list during speed / MTU change (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Convert flower-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Convert matchall-based mirroring to new SPAN API (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to bind / unbind a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Wrap buffer change in a function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename function (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put an analyzed port (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Add APIs to get / put a SPAN agent (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Move flow offload binding into spectrum_flow.c (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Process matchall events from the same cb as flower (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Avoid copying sample values and use RCU pointer direcly instead (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Push per-port rule add/del into separate functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Move ingress indication into mall_entry (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_sample_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_matchall: Pass mall_entry as arg to mlxsw_sp_mall_port_mirror_add() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Use block variable in mlxsw_sp_acl_rule_del() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push matchall bits into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Push flow_block related functions into a separate file (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum: Rename acl_block to flow_block (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_acl: Move block helpers into inline header functions (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Replace zero-length array with flexible-array member (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Use 'refcount_t' for reference counting (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Remove unnecessary debug prints (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Rename parms() to parms_set() (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_span: Reduce nesting in mlxsw_sp_span_entry_configure() (Ivan Vecera) [1857594] - [netdrv] net/mlxfw: Remove unneeded semicolon (Ivan Vecera) [1857594] - [netdrv] mlxsw: reg: Increase register field length to 13 bits (Ivan Vecera) [1857594] - [netdrv] mlxsw: spectrum_router: Re-increase scale of IPv6 nexthop groups (Ivan Vecera) [1857594] - [net] ipv6: Fix use of anycast address with loopback (Ivan Vecera) [1899591] - [net] ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR() (Ivan Vecera) [1899591] - [net] ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others) (Ivan Vecera) [1899591] - [net] ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create (Ivan Vecera) [1899591] - [net] ipv6: Move setting default metric for routes (Ivan Vecera) [1899591] - [net] Add extack argument to ip_fib_metrics_init (Ivan Vecera) [1899591] - [net] ipv6: do not leave garbage in rt->fib6_metrics (Ivan Vecera) [1899591] - [net] Move free of dst_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for dst_entry (Ivan Vecera) [1899591] - [net] Move free of fib_metrics to helper (Ivan Vecera) [1899591] - [net] common metrics init helper for FIB entries (Ivan Vecera) [1899591] - [net] rtmsg_to_fib6_config() - use new style struct initializer instead of memset (Ivan Vecera) [1899591] - [powercap] powercap/intel_rapl: enumerate Psys RAPL domain together with package RAPL domain (Puneet Sethi) [1893463] - [powercap] powercap/intel_rapl: Fix domain detection (Puneet Sethi) [1893463]- [net] openvswitch: fix TTL decrement exception action execution (Eelco Chaudron) [1902610] - [net] openvswitch: fix error return code in validate_and_copy_dec_ttl() (Eelco Chaudron) [1902610] - [net] openvswitch: fix TTL decrement action netlink message format (Eelco Chaudron) [1902610] - [x86] hyperv: Enable 15-bit APIC ID if the hypervisor supports it (Vitaly Kuznetsov) [1903823] - [x86] kvm: Enable 15-bit extension when KVM_FEATURE_MSI_EXT_DEST_ID detected (Vitaly Kuznetsov) [1903823] - [documentation] x86/kvm: Reserve KVM_FEATURE_MSI_EXT_DEST_ID (Vitaly Kuznetsov) [1903823] - [iommu] hyper-v: Disable IRQ pseudo-remapping if 15 bit APIC IDs are available (Vitaly Kuznetsov) [1903823] - [x86] apic: Support 15 bits of APIC ID in MSI where available (Vitaly Kuznetsov) [1903823] - [x86] msi: Provide msi message shadow structs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/msi: allow shadow declarations of msi_msg:: $member (Vitaly Kuznetsov) [1903823] - [x86] ioapic: Handle Extended Destination ID field in RTE (Vitaly Kuznetsov) [1903823] - [x86] apic: Always provide irq_compose_msi_msg() method for vector domain (Vitaly Kuznetsov) [1903823] - [x86] apic: Cleanup delivery mode defines (Vitaly Kuznetsov) [1903823] - [x86] apic/uv: Fix inconsistent destination mode (Vitaly Kuznetsov) [1903823] - [x86] msi: Only use high bits of MSI address for DMAR unit (Vitaly Kuznetsov) [1903823] - [x86] msi: Move compose message callback where it belongs (Vitaly Kuznetsov) [1903823] - [kernel] genirq/chip: Use the first chip in irq_chip_compose_msi_msg() (Vitaly Kuznetsov) [1903823] - [x86] apic: Fix x2apic enablement without interrupt remapping (Vitaly Kuznetsov) [1903823] - [tools] perf test: Fix msan uninitialized use (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix the ratio comments of miss-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free formats for perf pmu parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Do not free metric when failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Free metric when it failed to resolve (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Release expr_parse_ctx after testing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix memory leaks in parse-metric test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-event: Fix memory leak in evsel->unit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix cpu/thread map leak (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks - part 2 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix some memory leaks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Free aliases for PMU event map aliases test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf vendor events amd: Remove trailing commas (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Leader sampling shouldn't clear sample period (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Prevent override of attr->sample_period for libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Set PERF_RECORD_PERIOD if attr->freq is set (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix 2 memory sanitizer warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix the "signal" test inline assembly (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record/stat: Explicitly call out event modifiers in the documentation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix build warning on 32-bit arches (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf jevents: Fix suspicious code in fixregex() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use uintptr_t when casting numbers to pointers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf report: Disable ordered_events for raw dump (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Correct SNOOPX field offset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Fix corrupt data after perf inject from (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Avoid an uninitialized read when using fake PMUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Fix out of bounds array access in the print_counters() evlist method (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Set NULL sentinel in pmu_events table in "Parse and process metrics" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Set exclude_guest=1 for user-space counting (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Correct the help info of option "--no-bpf-event" (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Use zd for size_t printf formats on 32-bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: arm-spe: Fix check error when synthesizing events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add mwait_idle_with_hints.constprop.0 to the list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched timehist: Fix use of CPU list with summary option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Fix basic bpf filtering test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Make option description initials all capital letters (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf build-ids: Fall back to debuginfod query if debuginfo not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Remove dead code in parse_nodes_opt() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Update POWER9 metrics to utilize other metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add change log (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Add set_tracing_options() to set all trace options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option --tid to filter by thread id (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option -D/--delay to delay tracing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf: ftrace: Allow set graph depth by '--graph-opts' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option tracing_thresh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option 'verbose' to show more info for graph tracer (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'irq-info' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option funcgraph-irqs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for trace option sleep-time (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add support for tracing option 'func_stack_trace' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add general function to parse sublevel options (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '--inherit' to trace children processes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Show trace column header (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-m/--buffer-size' to set per-cpu buffer size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Factor out function write_tracing_file_int() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Add option '-F/--funcs' to list available functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf ftrace: Select function/function_graph tracer automatically (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Use numa_node_to_cpus() to bind tasks to nodes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix cpumask memory leak in node_has_cpus() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Quote CC and CXX for their arguments (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix module symbol processing (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Rename 'enum dso_kernel_type' to 'enum dso_space_type' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Fix man page typos (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Allow multiple probes in record+script_probe_vfs_getname.sh (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench mem: Always memset source before memcpy (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf sched: Prefer sched_waking event when it exists (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Fix a couple of spelling mistakes in options text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix benchmark names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench numa: Fix number of processes in "2x3-convergence" test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Use the autogenerated protocol family table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf trace beauty: Add script to autogenerate socket families table (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add 'tod' field to display time of day (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Change the 'enum perf_output_field' enumerators to be 64 bits (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf data: Add support to store time of day in CTF data conversion (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Move clockid_res_ns under clock struct (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf header: Store clock references for -k/--clockid option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add clockid_name function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf clockid: Move parse_clockid() to new clockid object (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Handle possible strdup() error in tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed description of tep_add_plugin_path() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed type in PRINT_FMT_STING (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fixed broken indentation in parse_ip4_print_args() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Improve error handling of tep_plugin_add_option() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Fix typo in tep_plugin_add_option() description (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Handle strdup() error in parse_option_name() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libtraceevent: Document tep_load_plugins_hook() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evsel: Extend message to mention CAP_SYS_PTRACE and perf security doc link (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding PSB+ only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for decoding FUP/TIP only (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add itrace 'q' option for quicker, less detailed decoding (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Time filter logged perf events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace debug log flags to suppress some messages (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional log flags to the itrace 'd' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Use itrace error flags to suppress some errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add optional error flags to the itrace 'e' option (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf auxtrace: Add missing itrace options to help text (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Improve aux_output not supported error (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix duplicate branch after CBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Fix FUP packet state (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf record: Extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Introduce --control fd:ctl-fdoptions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add benchmark of find_next_bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools build feature: Use CC and CXX from parent (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename group_list to metric_list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename struct egroup to metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add metric group test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Make compute_single function more precise (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add recursion check when processing nested metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add DCache_L2 to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add cache_miss_cycles to metric parse test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add events for the current list (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Compute referenced metrics (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add referenced metrics to hash data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_expr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Collect referenced metrics in struct metric_ref_node (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename __metricgroup__add_metric to __add_metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add add_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add macros for iterating map events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__del_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Change expr__get_id to return struct expr_id_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Fix memory leak in expr__add_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf test: Ensure sample_period is set libpfm4 events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Fix term parsing for raw syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Allow r0x event syntax (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: No need to cache the PMUs in ARM SPE auxtrace init routine (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf bench: Add basic syscall benchmark (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Implement control commands handling (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: extend -D, --delay option with -1 value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out event handling loop into dispatch_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for fork case (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Move target check to loop control statement (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf stat: Factor out body of event handling loop for system wide (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Implement control command handling functions (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Introduce control file descriptors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid counting of nonfilterable fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Add flags to fdarray fds objects (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] libperf: Avoid internal moving of fdarray fds (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Add 'struct expr_id_data' to keep expr value (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf metric: Rename expr__add_id() to expr__add_val() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Warn if the target function is a GNU indirect function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix memory leakage when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Fix wrong variable warning when the probe point is not found (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf probe: Avoid setting probes on the same address for the same event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf kmem: Pass additional arguments to 'perf record' (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Report BPF errors (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Show text poke address symbol (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Add option --show-text-poke-events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf intel-pt: Add support for text poke events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add support for PERF_RECORD_TEXT_POKE (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Fix non-null terminated buffer returned by readlink() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf inject jit: Remove //anon mmap events (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf symbols: Add s390 idle functions 'psw_idle' and 'psw_idle_exit' to list of idle symbols (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Fix reporting of unknown SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add builtin handler for trace_marker_raw (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Move kernel_stack event handler to "function" plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for decoding syscalls/sys_enter_futex (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add offset option for function plugin (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add more SVM exit reasons (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add plugin for tlb_flush (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Optimize pretty_print() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add support for more printk format specifiers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Introduced new traceevent API, for adding new plugins directories (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add interface for options to plugins (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools lib traceevent: Add tep_load_plugins_hook() API (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of bison warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Disable a subset of flex warnings (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare bison header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add missing headers noticed when building with NO_LIBBPF=1 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Declare flex header file output (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add flex debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add bison debug build flag (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for yacc input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse-events: Use automatic variable for flex input (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' branch_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_id_all methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' sample_type methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' strerror methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf evlist: Fix the class prefix for 'struct evlist' 'add' evsel methods (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Improve CPU core PMU HW event list ordering (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: List kernel supplied event aliases for arm64 (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf cs-etm: Allow no CoreSight sink to be specified on command line (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add < and > operators (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf expr: Add d_ratio operation (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf script: Fixup some evsel/evlist method names (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for frontend metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add parse metric test for ipc metric (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add test_generic_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Release metric_events rblist (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Factor out prepare_metric function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add metricgroup__parse_groups_test function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add map to parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake_pmu to parse_group() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Factor out parse_groups() function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Add another metric parsing test (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf pmu: Add a perf_pmu__fake object to use with __parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf parse: Provide a way to pass a fake_pmu to parse_events() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tests: Factor check_parse_id function (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf tools: Add fake pmu support (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] perf annotate: Remove unneeded conversion to bool (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools/: replace HTTP links with HTTPS ones (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [tools] tools, build: Propagate build failures from tools/build/Makefile.build (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/cpufeatures: Add Architectural LBRs feature bit (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Add support for Intel SPR platform (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Support multiple RAPL unit quirks (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/rapl: Fix missing psys sysfs attributes (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Take over CAP_SYS_PTRACE creds to CAP_PERFMON capability (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Expose get/put_callchain_entry() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [include] perf: : drop a duplicated word (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Remove task_ctx_size (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Create kmem_cache for the LBR context data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Use kmem_cache to allocate the PMU specific data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf/core: Factor out functions to allocate/free the task_ctx_data (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support Architectural LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out intel_pmu_store_lbr (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out rdlbr_all() and wrlbr_all() (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Mark the {rd, wr}lbr_{to, from} wrappers __always_inline (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Unify the stored format of LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Support LBR_CTL (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] x86/msr-index: Add bunch of MSRs for Arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Expose CPUID enumeration bits for arch LBR (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Use dynamic data structure for task_ctx (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Factor out a new struct for generic optimization (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add the function pointers for LBR save and restore (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR read (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/intel/lbr: Add a function pointer for LBR reset (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Keep LBR records unchanged in host context for guest usage (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Add constraint to create guest LBR event without hw counter (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/lbr: Add interface to get LBR information (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Provide stubs of KVM helpers for non-Intel CPUs (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86/core: Refactor hw->idx checks and cleanup (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] perf/x86: Fix variable types for LBR registers (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [kernel] perf: Add perf text poke event (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [uapi] perf: Add perf_event_mmap_page::cap_user_time_short ABI (Michael Petlan) [1811839 1731571 1838555 1838896 1873271] - [x86] sev-es: Do not support MMIO to/from encrypted memory (Vitaly Kuznetsov) [1868080] - [x86] head/64: Check SEV encryption before switching to kernel page-table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Sanity-check CPUID results in the early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check SEV encryption in 64-bit boot-path (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Introduce sev_status (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Use GHCB accessor for setting the MMIO scratch buffer (Vitaly Kuznetsov) [1868080] - [x86] head/64: Disable stack protection for head$(BITS).o (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Check required CPU features for SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] efi: Add GHCB mappings when SEV-ES is active (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle NMI State (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Support CPU offline/online (Vitaly Kuznetsov) [1868080] - [x86] head/64: Don't call verify_cpu() on starting APs (Vitaly Kuznetsov) [1868080] - [x86] smpboot: Load TSS and getcpu GDT entry before loading IDT (Vitaly Kuznetsov) [1868080] - [x86] realmode: Setup AP jump table (Vitaly Kuznetsov) [1868080] - [x86] realmode: Add SEV-ES specific trampoline entry point (Vitaly Kuznetsov) [1868080] - [x86] vmware: Add VMware-specific handling for VMMCALL under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] kvm: Add KVM-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] paravirt: Allow hypervisor-specific VMMCALL handling under SEV-ES (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #DB Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle #AC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle VMMCALL Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MWAIT/MWAITX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MONITOR/MONITORX Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle INVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDPMC Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle RDTSC(P) Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle WBINVD Events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle DR7 read/write events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MSR events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO String Instructions (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle MMIO events (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Handle instruction fetches from user-space (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Wire up existing #VC exit-code handlers (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add a Runtime #VC Exception Handler (Vitaly Kuznetsov) [1868080] - [x86] entry/64: Add entry code for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] dumpstack/64: Add noinstr version of get_stack_info() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Adjust #VC IST Stack on entering NMI handler (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Explicitly map boot_params and command line (Vitaly Kuznetsov) [1868080] - [x86] boot/64: Initialize 5-level paging variables earlier (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Allocate and map an IST stack for #VC handler (Vitaly Kuznetsov) [1868080] - [x86] debug: Allow a single level of #DB recursion (Vitaly Kuznetsov) [1868080] - [x86] entry: Remove DBn stacks (Vitaly Kuznetsov) [1868080] - [x86] entry, nmi: Disable #DB (Vitaly Kuznetsov) [1868080] - [x86] nmi: Protect NMI entry against instrumentation (Vitaly Kuznetsov) [1868080] - [x86] entry: Introduce local_db_{save, restore}() (Vitaly Kuznetsov) [1868080] - [x86] db: Split out dr6/7 handling (Vitaly Kuznetsov) [1868080] - [x86] Replace ist_enter() with nmi_enter() (Vitaly Kuznetsov) [1868080] - [x86] traps: Stop using ist_enter/exit() in do_int3() (Vitaly Kuznetsov) [1868080] - [x86] entry: Get rid of ist_begin/end_non_atomic() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup per-CPU GHCBs for the runtime handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup GHCB-based boot #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Setup an early #VC handler (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Compile early handler code into kernel image (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Print SEV-ES info into the kernel log (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add SEV-ES Feature Detection (Vitaly Kuznetsov) [1868080] - [x86] head/64: Move early exception dispatch to C code (Vitaly Kuznetsov) [1868080] - [x86] idt: Make IDT init functions static inlines (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install a CPU bringup IDT (Vitaly Kuznetsov) [1868080] - [x86] head/64: Switch to initial stack earlier (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load segment registers earlier (Vitaly Kuznetsov) [1868080] - [x86] irq/64: Update stale comment (Vitaly Kuznetsov) [1868080] - [x86] head/64: Load GDT after switch to virtual addresses (Vitaly Kuznetsov) [1868080] - [x86] head/64: Install startup GDT (Vitaly Kuznetsov) [1868080] - [x86] idt: Split idt_data setup out of set_intr_gate() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add CPUID handling to #VC handler (Vitaly Kuznetsov) [1868080] - [x86] fpu: Move xgetbv()/xsetbv() into a separate header (Vitaly Kuznetsov) [1868080] - [x86] cpu: Use XGETBV and XSETBV mnemonics in fpu/internal.h (Vitaly Kuznetsov) [1868080] - [x86] fpu: Reset MXCSR to default in kernel_fpu_begin() (Vitaly Kuznetsov) [1868080] - [x86] sev-es: Add support for handling IOIO exceptions (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Unmap GHCB page before booting the kernel (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Setup a GHCB-based VC Exception handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add set_page_en/decrypted() helpers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Check return value of kernel_ident_mapping_init() (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Call set_sev_encryption_mask() earlier (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add stage1 #VC handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Change add_identity_map() to take start and end (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Don't pre-map memory in KASLR code (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Always switch to own page table (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add page-fault handler (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Rename kaslr_64.c to ident_map_64.c (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Add IDT Infrastructure (Vitaly Kuznetsov) [1868080] - [x86] traps: Split trap numbers out in a separate header (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Disable red-zone usage (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_has_rep_prefix() helper (Vitaly Kuznetsov) [1868080] - [x86] insn: Add insn_get_modrm_reg_off() (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction decoding (Vitaly Kuznetsov) [1868080] - [x86] umip: Factor out instruction fetch (Vitaly Kuznetsov) [1868080] - [tools] x86/insn: Make inat-tables.c suitable for pre-decompression code (Vitaly Kuznetsov) [1868080] - [x86] traps: Move pf error codes to (Vitaly Kuznetsov) [1868080] - [x86] cpufeatures: Add SEV-ES CPU feature (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Use __packed shorthand (Vitaly Kuznetsov) [1868080] - [x86] kvm: svm: Add GHCB Accessor functions (Vitaly Kuznetsov) [1868080] - [x86] cpu: Unify cpu_init() (Vitaly Kuznetsov) [1868080] - [x86] insn-eval: Add support for 64-bit kernel mode (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Get rid of GOT fixup code (Vitaly Kuznetsov) [1868080] - [kernel] x86/boot/compressed: Force hidden visibility for all symbol references (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Move .got.plt entries out of the .got section (Vitaly Kuznetsov) [1868080] - [x86] boot: Correct relocation destination on old linkers (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed/64: Switch to __KERNEL_CS after GDT is loaded (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Fix reloading of GDTR post-relocation (Vitaly Kuznetsov) [1868080] - [x86] boot: Reload GDTR after copying to the end of the buffer (Vitaly Kuznetsov) [1868080] - [x86] boot/compressed: Don't declare __force_order in kaslr_64.c (Vitaly Kuznetsov) [1868080] - [mm] mm/userfaultfd: do not access vma->vm_mm after calling handle_userfault() (Philipp Rudo) [1903968] - [s390] s390/ap: fix ap devices reference counting (Philipp Rudo) [1903967] - [infiniband] RDMA/cxgb4: Validate the number of CQEs (Kamal Heib) [1894720] - [net] treewide: Use fallthrough pseudo-keyword (Petr Oros) [1892748] - [net] devlink: Remove overzealous WARN_ON with snapshots (Petr Oros) [1892748] - [net] devlink: ignore -EOPNOTSUPP errors on dumpit (Petr Oros) [1892748] - [net] devlink: Always use user_ptr[0] for devlink and simplify post_doit (Petr Oros) [1892748] - [net] devlink: Constify devlink instance pointer (Petr Oros) [1892748] - [net] devlink: Add comment for devlink instance lock (Petr Oros) [1892748] - [net] devlink: Do not hold devlink mutex when initializing devlink fields (Petr Oros) [1892748] - [docs] ice: add documentation for device-caps region (Petr Oros) [1892748] - [net] devlink: remove new uninitialized_var() usage (Petr Oros) [1892748] - [docs] networking: convert sja1105's devlink info to RTS (Petr Oros) [1892748] - [net] devlink: refactor end checks in devlink_nl_cmd_region_read_dumpit (Petr Oros) [1892748] - [docs] ice: cleanup language in ice.rst for fw.app (Petr Oros) [1892748] - [docs] devlink: don't wrap commands in rST shell blocks (Petr Oros) [1892748] - [net] devlink: Protect devlink port list traversal (Petr Oros) [1895042] - [net] devlink: Fix per port reporter fields initialization (Petr Oros) [1895042] - [net] devlink: Fix use-after-free when destroying health reporters (Petr Oros) [1895042] - [net] devlink: introduce the health reporter test command (Petr Oros) [1895042] - [net] devlink: Add devlink health port reporters API (Petr Oros) [1895042] - [net] devlink: Implement devlink health reporters on per-port basis (Petr Oros) [1895042] - [net] devlink: Create generic devlink health reporter search function (Petr Oros) [1895042] - [net] devlink: Rework devlink health reporter destructor (Petr Oros) [1895042] - [net] devlink: Refactor devlink health reporter constructor (Petr Oros) [1895042]- [md] dm writecache: fix the maximum number of arguments (Mike Snitzer) [1895117] - [md] dm writecache: advance the number of arguments when reporting max_age (Mike Snitzer) [1895117] - [x86] x86/cpu/amd: Make erratum #1054 a legacy erratum (Michael Petlan) [1791459] - [x86] x86/cpu/amd: Enable the fixed Instructions Retired counter IRPERF (Michael Petlan) [1791459] - [s390] s390/early: improve machine detection (Claudio Imbrenda) [1896307] - [infiniband] IB/mlx5: Fix fall-through warnings for Clang (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Properly convey driver version to firmware (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Enforce HW TX csum offload with kTLS (Alaa Hleihel) [1858561] - [netdrv] net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix wrong address reclaim when command interface is down (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Disable QoS when min_rates on all VFs are zero (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Clear bw_share upon VF disable (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add handling of port type in rule deletion (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix check if netdev is bond slave (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Set IPsec WAs only in IP's non checksum partial case (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix incorrect access of RCU-protected xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VXLAN synchronization after function reload (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Avoid extack error log for disabled vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix deletion of duplicate rules (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Protect encap route dev from concurrent release (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix modify header actions memory leak (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix devlink deadlock on net namespace deletion (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix type warning of sizeof in __mlx5_ib_alloc_counters() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Clarify what the UMR is for when creating MRs (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't work (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove dead check for EAGAIN after alloc_mr_from_cache() (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix potential race between destroy and CQE poll (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Use kvfree() for memory allocated with kvzalloc() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TC: Remove unused parameter from mlx5_tc_ct_add_no_trk_match() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Setup all vports' metadata to support peer miss rule (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Dedicated metadata for uplink vport (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-Switch, Check and enable metadata support flag before using (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Release clock lock before scheduling a PPS work (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Rename ptp clock info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Always use container_of to find mdev pointer from clock struct (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix uninitialized variable warning (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Tx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add TX steering rule per IPsec state (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Add NIC TX domain namespace (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: Enhanced TX MPWQE for SKBs (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TX code into functions to be used by MPWQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename xmit-related structs to generalize them (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Generalize TX MPWQE checks for full session (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Support multiple SKBs in a TX WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move the TLS resync check out of the function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Unify constants for WQE_EMPTY_DS_COUNT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Small improvements for XDP TX MPWQE logic (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor xmit functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move mlx5e_tx_wqe_inline_mode to en_tx.c (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use struct assignment to initialize mlx5e_tx_wqe_info (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor inline header size calculation in the TX path (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add IPv6 traffic class (DSCP) header rewrite support (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Add LAG warning if bond slave is not lag master (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Add LAG warning for unsupported tx type (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Return a valid errno if can't get lag device index (Alaa Hleihel) [1858561 1851709] - [netdrv] net/mlx5e: Fix race condition on nhe->n pointer in neigh update (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN create flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix VLAN cleanup flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix return status when setting unsupported FEC mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix driver's declaration to support GRE offload (Alaa Hleihel) [1858561 1819619] - [netdrv] net/mlx5e: CT, Fix coverity issue (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add resiliency in Striding RQ mode for packets larger than MTU (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix error path for RQ alloc (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix request_irqs error flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: cmdif, Avoid skipping reclaim pages if FW is not accessible (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add retry mechanism to the command entry index allocation (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: poll cmd EQ in case of command timeout (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Avoid possible free of command entry while timeout comp handler (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix a race when moving command interface to polling mode (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: mlx5e_fec_in_caps() returns a boolean (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: TLS, Do not expose FPGA TLS counter if not supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix using wrong stats_grps in mlx5e_update_ndo_stats() (Alaa Hleihel) [1870593 1858561] - [netdrv] net/mlx5e: Fix multicast counter not up-to-date in "ip -s" (Alaa Hleihel) [1858561 1693130] - [netdrv] net/mlx5e: Fix endianness when calculating pedit mask first bit (Alaa Hleihel) [1889981 1858561] - [netdrv] net/mlx5e: Enable adding peer miss rules only if merged eswitch is supported (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: CT: Fix freeing ct_label mapping (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix memory leak of tunnel info when rule under multipath not ready (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use synchronize_rcu to sync with NAPI (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use RCU to protect rq->xdp_prog (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Fix FTE cleanup (Alaa Hleihel) [1858561] - [infiniband] mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Fix flow destination setting for RDMA TX flow table (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Delete extra dump stack that gives nothing (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: convert to new udp_tunnel infrastructure (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: DR, Change push vlan action sequence (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enable users to change VF/PF representors carrier state (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete unreachable code (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: drop unnecessary list_empty (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: DR, Reduce print level for matcher print (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add support for PCI relaxed ordering (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Use indirect call wrappers for RX post WQEs functions (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move exposure of datapath function to txrx header (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Re-work initializaiton of RX function pointers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Use eswitch total_vports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Reuse total_vports and avoid duplicate nvports (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Consider maximum vf vports for steering init (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Add function ID to reclaim pages debug log (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Hold pages RB tree per VF (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Set mkey relaxed ordering by UMR with ConnectX-7 (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Use MLX5_SET macro instead of local structure (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add missing srcu_read_lock in ODP implicit flow (Alaa Hleihel) [1858561] - [include] RDMA/mlx5: ConnectX-7 new capabilities to set relaxed ordering by UMR (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Allow SQ modification (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Do not request completion on every single UMR WQE (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: RX, Avoid indirect call in representor CQE handling (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: XDP, Avoid indirect call in TX flow (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec ESN update offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add Connect-X IPsec Rx data path offload (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5e: IPsec: Add IPsec steering in local NIC RX (Alaa Hleihel) [1858561 1790222] - [include] net/mlx5: Add IPsec related Flow steering entry's fields (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: IPsec: Add HW crypto offload support (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: Accel, Add core IPsec support for the Connect-X family (Alaa Hleihel) [1858561 1790222] - [netdrv] net/mlx5: E-switch, Reduce dependency on num_vfs during mode set (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: E-switch, Avoid function change handler for non ECPF (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Make MLX5_EN_TLS non-prompt (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable count action for rules with allow action (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add interface changes required for VDPA (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add VDPA interface type to supported enumerations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Support setting access rights of dma addresses (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move devlink port register and unregister calls (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Remove unused to_mibmr function (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, When eswitch is unsupported, return -EOPNOTSUPP (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Added support for 100Gbps per lane link modes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Delete one-time used functions (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Cleanup DEVX initialization flow (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate flow steering logic from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate counters from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Separate restrack callbacks initialization from main.c (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Limit the scope of mlx5_ib_enable_driver function (Alaa Hleihel) [1858561] - [infiniband] RDMA: Move XRCD to be under ib_core responsibility (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce UAPI to query PD attributes (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Implement the query ucontext functionality (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Refactor mlx5_ib_alloc_ucontext() response (Alaa Hleihel) [1858561] - [infiniband] RDMA/core: Optimize XRC target lookup (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Get XRCD number directly for the internal use (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Enable QP number request when creating IPoIB underlay QP (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Introduce ODP prefetch counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance TX timeout recovery (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance ICOSQ data on RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add EQ info to TX/RX reporter's diagnose (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Enhance CQ data on diagnose output (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Rename reporter's helpers (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get the RQ WQE counter (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add helper to get RQ WQE's head (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move RQ helpers to txrx.h (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Align RX/TX reporters diagnose output format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Remove redundant RQ state query (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Add a flush timeout define (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Change reporters create functions to return void (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: fix memory leak of tls (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Fix build break when CONFIG_XPS is not set (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Add kTLS RX HW offload support (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Use kernel API to extract private offload context (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: kTLS, Improve TLS feature modularity (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Accel, Expose flow steering API for rules add/del (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Receive flow steering framework for accelerated TCP flows (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: API to manipulate TTC rules destinations (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Refactor build channel params (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Turn XSK ICOSQ into a general asynchronous one (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: kTLS, Improve TLS params layout structures (Alaa Hleihel) [1858561] - [include] net/mlx5: Avoid RDMA file inclusion in core driver (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: vxlan: Return bool instead of opaque ptr in port_lookup() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5e: Move TC-specific function definitions into MLX5_CLS_ACT (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Use kfree(ft->g) in arfs_create_groups() (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: FWTrace: Add missing space (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get MR resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get CQ resource in RAW format (Alaa Hleihel) [1858561] - [infiniband] RDMA/mlx5: Add support to get QP resource in RAW format (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Add support in query QP, CQ and MKEY segments (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Export resource dump interface (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Supporting setting devlink port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Split mac address setting function for using state_lock (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Support querying port function mac address (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: Move helper to eswitch layer (Alaa Hleihel) [1858561] - [netdrv] net/mlx5: E-switch, Introduce and use eswitch support check helper (Alaa Hleihel) [1858583 1858561] - [netdrv] net/mlx5: Constify mac address pointer (Alaa Hleihel) [1858561] - [tty] serial: 8250: export serial8250_do_set_divisor() (Steve Best) [1784119] - [tty] serial: 8250: introduce get_divisor() and set_divisor() hook (Steve Best) [1784119] - [tty] serial: 8250: let serial8250_get_divisor() get uart_port * as param (Steve Best) [1784119] - [tty] serial: 8250_lpss: Add ->setup() for Elkhart Lake ports (Steve Best) [1784119] - [tty] serial: 8250_lpss: Switch over to MSI interrupts (Steve Best) [1784119] - [tty] serial: 8250_lpss: Enable HS UART on Elkhart Lake (Steve Best) [1784119] - [tty] serial: 8250_lpss: Get rid of custom LPSS_DEVICE() macro (Steve Best) [1784119] - [tty] serial: 8250_lpss: register DMA IRQ and pool with instance ID (Steve Best) [1784119] - [tty] serial: 8250_lpss: add fractional divisor support (Steve Best) [1784119] - [tty] serial: 8250_lpss: switch to use 8250_dwlib library (Steve Best) [1784119] - [tty] tty: serial: Use the correct style for SPDX License Identifier (Steve Best) [1784119] - [tty] serial: 8250_dw: split Synopsys DesignWare 8250 common functions (Steve Best) [1784119] - [tty] 8250_lpss: check null return when calling pci_ioremap_bar (Steve Best) [1784119] - [dma] dmaengine: dw: Remove misleading is_private property (Steve Best) [1784119] - [tty] serial: 8250: fix null-ptr-deref in serial8250_start_tx() (John Linville) [1903272] {CVE-2020-15437} - [i2c] i2c: designware-pci: Fix BUG_ON during device removal (Steve Best) [1784122] - [i2c] i2c: designware-pci: Add support for Elkhart Lake PSE I2C (Steve Best) [1784122] - [i2c] i2c: designware-pci: Switch over to MSI interrupts (Steve Best) [1784122] - [mmc] mmc: sdhci: Add LTR support for some Intel BYT based controllers (Steve Best) [1906791] - [mmc] mmc: sdhci-pci: Add max-frequency device property for Intel controllers (Steve Best) [1906791] - [powerpc] powerpc/64s: Trim offlined CPUs from mm_cpumasks (Steve Best) [1905892] - [kernel] kernel/cpu: add arch override for clear_tasks_mm_cpumask() mm handling (Steve Best) [1905892] - [mm] powerpc/64s/pseries: Fix hash tlbiel_all_isa300 for guest kernels (Steve Best) [1905892] - [mm] powerpc/64s: Fix hash ISA v3.0 TLBIEL instruction generation (Steve Best) [1905892] - [mm] powerpc/64s: Add cp_abort after tlbiel to invalidate copy-buffer address (Steve Best) [1905892] - [powerpc] powerpc: untangle cputable mce include (Steve Best) [1905892] - [mmc] mmc: sdhci-pci: Add support for Intel EHL (Steve Best) [1783588] - [scsi] qla2xxx: Update version to 10.02.00.104-k (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix device loss on 4G and older HBAs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix the call trace for flush workqueue (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix flash update in 28XX adapters on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Handle aborts correctly for port undergoing deletion (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix N2N and NVMe connect retry failure (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix FW initialization error on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix crash during driver load on big endian machines (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Fix compilation issue in PPC systems (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Don't check for fw_started while posting NVMe command (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Tear down session if FW say it is down (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Limit interrupt vectors to number of CPUs (Nilesh Javali) [1905493] - [scsi] scsi: qla2xxx: Change post del message from debug level to log level (Nilesh Javali) [1905493] - [s390] s390/qeth: Remove pnso workaround (Philipp Rudo) [1903964] - [s390] s390/purgatory: do not build purgatory with kcov, kasan and friends (Philipp Rudo) [1900550] - [fs] iomap: Fix misplaced page flushing (Carlos Maiolino) [1868429] - [fs] iomap: Use round_down/round_up macros in __iomap_write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Mark read blocks uptodate in write_begin (Carlos Maiolino) [1868429] - [fs] iomap: Clear page error before beginning a write (Carlos Maiolino) [1868429] - [fs] iomap: fix WARN_ON_ONCE() from unprivileged users (Carlos Maiolino) [1868429] - [fs] iomap: fall back to buffered writes for invalidation failures (Carlos Maiolino) [1868429] - [fs] iomap: Only invalidate page cache pages on direct IO writes (Carlos Maiolino) [1868429] - [fs] iomap: Make sure iomap_end is called after iomap_begin (Carlos Maiolino) [1868429] - [fs] iomap: Fix unsharing of an extent >2GB on a 32-bit machine (Carlos Maiolino) [1868429] - [fs] iomap: fix the iomap_fiemap prototype (Carlos Maiolino) [1868429] - [fs] iomap: remove lockdep_assert_held() (Carlos Maiolino) [1868429] - [mm] powerpc/numa: Fix a regression on memoryless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Offline memoryless cpuless node 0 (Steve Best) [1903613] - [mm] powerpc/numa: Prefer node id queried from vphn (Steve Best) [1903613] - [mm] powerpc/numa: Set numa_node for all possible cpus (Steve Best) [1903613] - [powerpc] powerpc/numa: Remove late request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Early request for home node associativity (Steve Best) [1903613] - [mm] powerpc/numa: Use cpu node map of first sibling thread (Steve Best) [1903613] - [x86] xen: don't unbind uninitialized lock_kicker_irq (Brian Masney) [1896786] - [net] Bluetooth: Acquire sk_lock.slock without disabling interrupts (Ivan Vecera) [1889859] - [wireless] mwifiex: fix double free (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: run init_cfg function once per driver load (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: remove no filter condition (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: split a print to avoid a WARNING in ROC (Jarod Wilson) [1860496] - [wireless] qtnfmac: fix resource leaks on unsupported iftype error return path (Jarod Wilson) [1860496] - [net] nl80211: fix OBSS PD min and max offset validation (Jarod Wilson) [1860496] - [wireless] rtw88: Fix potential probe error handling race with wow firmware loading (Jarod Wilson) [1860496] - [wireless] rtw88: Fix probe error handling race with firmware loading (Jarod Wilson) [1860496] - [wireless] ath6kl: wmi: prevent a shift wrapping bug in ath6kl_wmi_delete_pstream_cmd() (Jarod Wilson) [1860496] - [wireless] ath11k: Add checked value for ath11k_ahb_remove (Jarod Wilson) [1860496] - [wireless] mwifiex: remove function pointer check (Jarod Wilson) [1860496] - [wireless] ath11k: fix uninitialized return in ath11k_spectral_process_data() (Jarod Wilson) [1860496] - [wireless] ath11k: fix a double free and a memory leak (Jarod Wilson) [1860496] - [wireless] rtw88: fix compile warning: (Jarod Wilson) [1860496] - [wireless] mwifiex: Remove unnecessary braces from HostCmd_SET_SEQ_NO_BSS_INFO (Jarod Wilson) [1860496] - [wireless] rtw88: don't treat NULL pointer as an array (Jarod Wilson) [1860496] - [wireless] mwifiex: Do not use GFP_KERNEL in atomic context (Jarod Wilson) [1860496] - [wireless] brcmfmac: check ndev pointer (Jarod Wilson) [1860496] - [wireless] ath11k: Fix possible memleak in ath11k_qmi_init_service (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the size used in a 'dma_free_coherent()' call in an error handling path (Jarod Wilson) [1860496] - [wireless] ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb() (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Use appropriate rs_datalen type (Jarod Wilson) [1860496] - [wireless] ath6kl: prevent potential array overflow in ath6kl_add_new_sta() (Jarod Wilson) [1860496] - [net] net: wireless: nl80211: fix out-of-bounds access in nl80211_del_key() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce maximum VHT MPDU length to 7991 (Jarod Wilson) [1860496] - [net] mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz (Jarod Wilson) [1860496] - [net] mac80211: do not allow bigger VHT MPDUs than the hardware supports (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz channel conversion (Jarod Wilson) [1860496] - [net] mac80211: do not disable HE if HT is missing on 2.4 GHz (Jarod Wilson) [1860496] - [net] mac80211: Fix radiotap header channel flag for 6GHz band (Jarod Wilson) [1860496] - [net] lib80211: fix unmet direct dependendices config warning when !CRYPTO (Jarod Wilson) [1860496] - [net] mac80211: add AQL support for VHT160 tx rates (Jarod Wilson) [1860496] - [net] mac80211: extend AQL aggregation estimation to HE and fix unit mismatch (Jarod Wilson) [1860496] - [wireless] mwifiex: Increase AES key storage size to 256 bits (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_free_txskb to free tx skbs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use v1 MCU API on MT7615 to fix issues with adding/removing stations (Jarod Wilson) [1860496] - [net] cfg80211: Adjust 6 GHz frequency to channel conversion (Jarod Wilson) [1860496] - [net] mac80211: reduce packet loss event false positives (Jarod Wilson) [1860496] - [net] cfg80211: regulatory: reject invalid hints (Jarod Wilson) [1860496] - [net] wireless: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1860496] - [net] mac80211: improve AQL aggregation estimation for low data rates (Jarod Wilson) [1860496] - [net] mac80211: factor out code to look up the average packet length duration for a rate (Jarod Wilson) [1860496] - [net] mac80211: use rate provided via status->rate on ieee80211_tx_status_ext for AQL (Jarod Wilson) [1860496] - [net] nl80211: fix NL80211_ATTR_HE_6GHZ_CAPABILITY usage (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve tx credit only when txctl is ready to send (Jarod Wilson) [1860496] - [net] wireless: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [wireless] rtl818x: constify ioreadX() iomem argument (as in generic implementation) (Jarod Wilson) [1860496] - [net] mac80211: Do not report beacon loss if beacon filtering enabled (Jarod Wilson) [1860496] - [net] mac80211: fix misplaced while instead of if (Jarod Wilson) [1860496] - [net] nl80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac80211: use eth_zero_addr() to clear mac address (Jarod Wilson) [1860496] - [net] mac8211: fix struct initialisation (Jarod Wilson) [1860496] - [net] mac80211: Handle special status codes in SAE commit (Jarod Wilson) [1860496] - [wireless] brcmfmac: Set timeout value when configuring power save (Jarod Wilson) [1860496] - [wireless] hostap: use generic power management (Jarod Wilson) [1860496] - [wireless] rt2x00: pci: use generic power management (Jarod Wilson) [1860496] - [wireless] mt7601u: add missing release on skb in mt7601u_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't print failure if debug firmware is missing (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: coex: add functions and parameters (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: make symbol 'rtw8821c_rtw_pwr_track_tbl' static (Jarod Wilson) [1860496] - [wireless] rtw88: add h2c command in debugfs (Jarod Wilson) [1860496] - [wireless] rtw88: allows driver to enable/disable beacon (Jarod Wilson) [1860496] - [wireless] rtw88: add ieee80211_ops::change_interface (Jarod Wilson) [1860496] - [wireless] rtw88: coex: only skip coex triggered by BT info (Jarod Wilson) [1860496] - [wireless] rtw88: update tx descriptor of mgmt and reserved page packets (Jarod Wilson) [1860496] - [wireless] rtw88: fix short GI capability based on current bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: fix LDPC field for RA info (Jarod Wilson) [1860496] - [wireless] prism54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] prism54: islpci_hotplug: use generic power management (Jarod Wilson) [1860496] - [wireless] prism54: Replace HTTP links with HTTPS ones (Jarod Wilson) [1860496] - [wireless] p54: switch from 'pci_' to 'dma_' API (Jarod Wilson) [1860496] - [wireless] mwifiex: 11n_rxreorder: Remove unnecessary cast in kfree() (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: use *ph to print small buffer (Jarod Wilson) [1860496] - [wireless] rtlwifi: btcoex: remove redundant initialization of variables ant_num and single_ant_path (Jarod Wilson) [1860496] - [net] mac80211: warn only once in check_sdata_in_driver() at each caller (Jarod Wilson) [1860496] - [net] nl80211: support 4-way handshake offloading for WPA/WPA2-PSK in AP mode (Jarod Wilson) [1860496] - [net] cfg80211: invert HE BSS color 'disabled' to 'enabled' (Jarod Wilson) [1860496] - [net] mac80211: add a function for running rx without passing skbs to the stack (Jarod Wilson) [1860496] - [net] mac80211: parse radiotap header when selecting Tx queue (Jarod Wilson) [1860496] - [net] mac80211: remove unused flags argument in transmit functions (Jarod Wilson) [1860496] - [net] mac80211: use same flag everywhere to avoid sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: do not overwrite the sequence number if requested (Jarod Wilson) [1860496] - [net] mac80211: add radiotap flag to prevent sequence number overwrite (Jarod Wilson) [1860496] - [net] mac80211: never drop injected frames even if normally not allowed (Jarod Wilson) [1860496] - [uapi] cfg80211: Add support to advertize OCV support (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: avoid bss color setting in non-HE modes (Jarod Wilson) [1860496] - [net] mac80211: calculate skb hash early when using itxq (Jarod Wilson) [1860496] - [net] mac80211: improve AQL tx airtime estimation (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to station info (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add connected to auth server to meshconf (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: add mesh_param "mesh_nolearn" to skip path discovery (Jarod Wilson) [1860496] - [net] cfg80211: allow the low level driver to flush the BSS table (Jarod Wilson) [1860496] - [net] mac80211: Use fallthrough pseudo-keyword (Jarod Wilson) [1860496] - [net] nl80211: Simplify error handling path in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [net] nl80211: Remove a misleading label in 'nl80211_trigger_scan()' (Jarod Wilson) [1860496] - [uapi] net/wireless: wireless.h: drop duplicate word in comments (Jarod Wilson) [1860496] - [uapi] net/wireless: nl80211.h: drop duplicate words in comments (Jarod Wilson) [1860496] - [net] cfg80211: allow vendor dumpit to terminate by returning 0 (Jarod Wilson) [1860496] - [net] mac80211: remove the need for variable rates_idx (Jarod Wilson) [1860496] - [net] nl80211: S1G band and channel definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add missing release on skb in __mt76x02u_mcu_send_msg (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible memory leak in mt7615_mcu_wtbl_sta_add (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt76s: move queue accounting in mt76s_tx_queue_skb (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663s support (Jarod Wilson) [1860496] - [wireless] mt76: introduce mt76_sdio module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663-usb-sdio-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: sdio code must access rate/key regs in preocess context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_skb_adjust_pad utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: take into account sdio bus configuring txwi (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add missing CONFIG_MAC80211_DEBUGFS (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: potential array overflow in mt7915_mcu_tx_rate_report() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix potential memory leak in mcu message handler (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leak in set key (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reschedule ps work according to last activity (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid scheduling runtime-pm during hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: sync probe sampling with rate configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: improve mt7615_driver_own reliability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add idle-timeout knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable beacon hw filter for runtime-pm (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add runtime-pm knob in mt7615 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not request {driver, fw}_own if already granted (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check MT76_STATE_PM flag before accessing the device (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_pm_wake in mt7615_mac_sta_{add, remove} (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pushing frames in mt7615_tx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before pulling packets from mac80211 queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_roc holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: run mt7615_mcu_set_wmm holding mt76 mutex (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing lock in mt7615_regd_notifier (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before performing freq scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: acquire driver_own before configuring device for suspend (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device in mt7615_update_channel before access regmap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce pm_power_save delayed work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before configuring hw keys (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: wake device before accessing regmap in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mutex_{acquire, release} utilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_pm_wake utility routine (Jarod Wilson) [1860496] - [wireless] mt76: move mt76 workqueue in common code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: avoid polling in fw_own for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: avoid memcpy in rxv operation (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: enable HC-M7662BU1 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: fix pci suspend/resume on mt7612e (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: update HE capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement testmode support (Jarod Wilson) [1860496] - [wireless] mt76: add API for testmode support (Jarod Wilson) [1860496] - [wireless] mt76: vif_mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use full on-chip memory address for WF_PHY registers (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing RF registers via MCU (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for accessing mapped registers via bus ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: schedule tx tasklet and sta poll on mac tx free (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2e: rename routines in pci.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: use ieee80211_tx_queue_params to avoid open coded (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add MU-MIMO support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add a fixed AC queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add .set_tsf callback (Jarod Wilson) [1860496] - [wireless] mt76: add U-APSD support on AP side (Jarod Wilson) [1860496] - [wireless] mt76: rely on register macros (Jarod Wilson) [1860496] - [wireless] mt76: fix include in pci.h (Jarod Wilson) [1860496] - [wireless] mt76: allow more channels, allowed in ETSI domain (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix up typo in Kconfig for MT7663U (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce ARP filter offload (Jarod Wilson) [1860496] - [wireless] mt76: usb: rely on mt76_for_each_q_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: re-enable offloading of sequence number assignment (Jarod Wilson) [1860496] - [wireless] wireless: Fix trivial spelling (Jarod Wilson) [1860496] - [wireless] rtlwifi: 8821ae: remove unused path B parameters from swing table (Jarod Wilson) [1860496] - [wireless] rtlwifi: Use const in 8188ee/8723be/8821ae swing_table declarations (Jarod Wilson) [1860496] - [wireless] rtl818x_pci: use generic power management (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Free ieee80211_hw if probing fails (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Prevent leaking urb (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Fix deadlock (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192cu: Remove uninitialized_var() usage (Jarod Wilson) [1860496] - [wireless] orinoco_usb: fix spelling mistake (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: Fix endian issue (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix endian issue in ps.c (Jarod Wilson) [1860496] - [wireless] broadcom: fix wiki website url (Jarod Wilson) [1860496] - [wireless] wireless: fix wiki website url in main Kconfig (Jarod Wilson) [1860496] - [wireless] rtw88: coex: Fix ACL Tx pause during BT inquiry/page (Jarod Wilson) [1860496] - [wireless] mwifiex: Prevent memory corruption handling keys (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix reporting 'operation not supported' error code (Jarod Wilson) [1860496] - [wireless] mwifiex: Use macro MWIFIEX_MAX_BSS_NUM for specifying limit of interfaces (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: add new RFE type 6 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822ce: add support for device ID 0xc82f (Jarod Wilson) [1860496] - [wireless] rtw88: pci: disable aspm for platform inter-op with module parameter (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: Add 8821CE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: single rf path chips don't support TX STBC (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add beamformee support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add cck pd settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add phy calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add false alarm statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add query rx desc support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set channel support (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add dig related settings (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add set tx power index (Jarod Wilson) [1860496] - [wireless] rtw88: 8821c: add basic functions (Jarod Wilson) [1860496] - [wireless] brcm80211: brcmsmac: Move LEDs to GPIO descriptors (Jarod Wilson) [1860496] - [wireless] brcmfmac: Transform compatible string for FW loading (Jarod Wilson) [1860496] - [wireless] brcmfmac: set pacing shift before transmitting skb to bus (Jarod Wilson) [1860496] - [wireless] brcmfmac: set state of hanger slot to FREE when flushing PSQ (Jarod Wilson) [1860496] - [wireless] brcmfmac: reset SDIO bus on a firmware crash (Jarod Wilson) [1860496] - [wireless] brcmfmac: do not disconnect for disassoc frame from unconnected AP (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for wrong disconnection event source information (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix for unable to return to visible SSID (Jarod Wilson) [1860496] - [wireless] brcmfmac: initialize the requested dwell time (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix throughput zero stalls on PM 1 mode due to credit map (Jarod Wilson) [1860496] - [wireless] brcmfmac: update tx status flags to sync with firmware (Jarod Wilson) [1860496] - [wireless] brcmfmac: reserve 2 credits for host tx control path (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase message buffer size for control packets (Jarod Wilson) [1860496] - [wireless] brcmfmac: allow credit borrowing for all access categories (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix Bss Info flag definition Bug (Jarod Wilson) [1860496] - [wireless] brcmfmac: reduce maximum station interface from 2 to 1 in RSDB mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep SDIO watchdog running when console_interval is non-zero (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix invalid permanent MAC address in wiphy (Jarod Wilson) [1860496] - [wireless] brcmfmac: To fix kernel crash on out of boundary access (Jarod Wilson) [1860496] - [net] net: wireless: kerneldoc fixes (Jarod Wilson) [1860496] - [net] net: mac80211: kerneldoc fixes (Jarod Wilson) [1860496] - [wireless] ath11k: fix wmi peer flags in peer assoc command (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for ring backpressure stats (Jarod Wilson) [1860496] - [wireless] ath11k: Add dp tx err stats (Jarod Wilson) [1860496] - [wireless] ath11k: removing redundant reo unlock followed by immediate lock (Jarod Wilson) [1860496] - [wireless] ath11k: add support for spectral scan (Jarod Wilson) [1860496] - [wireless] ath11k: Add direct buffer ring support (Jarod Wilson) [1860496] - [wireless] ath11k: build HE 6 GHz capability (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for 6g scan hint (Jarod Wilson) [1860496] - [wireless] ath11k: Send multiple scan_chan_list messages if required (Jarod Wilson) [1860496] - [wireless] ath11k: Add 6G scan dwell time parameter in scan request command (Jarod Wilson) [1860496] - [wireless] ath11k: set psc channel flag when sending channel list to firmware (Jarod Wilson) [1860496] - [wireless] ath11k: extend peer_assoc_cmd for 6GHz band (Jarod Wilson) [1860496] - [wireless] ath11k: Use freq instead of channel number in rx path (Jarod Wilson) [1860496] - [wireless] ath11k: add support for 6GHz radio in driver (Jarod Wilson) [1860496] - [wireless] ath11k: add 6G frequency list supported by driver (Jarod Wilson) [1860496] - [wireless] net: wireless: intel: fix wiki website url (Jarod Wilson) [1860496] - [wireless] iwlwifi: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Remove unused inline function iwl_mvm_tid_to_ac_queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix gcc-10 zero-length-bounds warning (Jarod Wilson) [1860496] - [wireless] ath: fix wiki website url (Jarod Wilson) [1860496] - [wireless] ath10k: Acquire tx_lock in tx error paths (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove redundant assignment to variable ret (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix config variable name in comment (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: Fix avg-power report (Jarod Wilson) [1860496] - [wireless] iwlwifi: Don't IWL_WARN on FW reconfiguration (Jarod Wilson) [1860496] - [wireless] iwlwifi: Extended Key ID support for mvm and dvm (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8997 chipset (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix firmware filename for sd8977 chipset (Jarod Wilson) [1860496] - [net] mac80211: remove STA txq pending airtime underflow warning (Jarod Wilson) [1860496] - [net] mac80211: Fix bug in Tx ack status reporting in 802.3 xmit path (Jarod Wilson) [1860496] - [net] cfg80211: check vendor command doit pointer before use (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free pending skb when destroying a mpath (Jarod Wilson) [1860496] - [net] mac80211: mesh: Free ie data when leaving mesh (Jarod Wilson) [1860496] - [net] mac80211: fix warning in 6 GHz IE addition in mesh mode (Jarod Wilson) [1860496] - [wireless] ath10k: Fix NULL pointer dereference in AHB device probe (Jarod Wilson) [1860496] - [wireless] iwlwifi: Make some Killer Wireless-AC 1550 cards work again (Jarod Wilson) [1860496] - [wireless] ath9k: Fix regression with Atheros 9271 (Jarod Wilson) [1860496] - [net] nl80211: fix memory leak when parsing NL80211_ATTR_HE_BSS_COLOR (Jarod Wilson) [1860496] - [net] nl80211: don't return err unconditionally in nl80211_start_ap() (Jarod Wilson) [1860496] - [net] mac80211: allow rx of mesh eapol frames with default rx key (Jarod Wilson) [1860496] - [net] mac80211: skip mpath lookup also for control port tx (Jarod Wilson) [1860496] - [net] mac80211: Fix dropping broadcast packets in 802.11 encap (Jarod Wilson) [1860496] - [net] mac80211: simplify mesh code (Jarod Wilson) [1860496] - [net] mac80211: fix control port tx status check (Jarod Wilson) [1860496] - [include] ieee80211: Add missing and new AKM suite selector definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix EEPROM buffer size (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: fix memory leaks in mt7663u_probe (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: do not access uninitialized NAPI structs (Jarod Wilson) [1860496] - [wireless] iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU (Jarod Wilson) [1860496] - [wireless] wireless: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1860496] - [net] net: fix wiki website url mac80211 and wireless files (Jarod Wilson) [1860496] - [uapi] include: fix wiki website url in netlink interface header (Jarod Wilson) [1860496] - [wireless] mt76: overwrite qid for non-bufferable mgmt frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw queue mapping (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix lmac queue debugsfs entry (Jarod Wilson) [1860496] - [wireless] mt76: add missing lock configuring coverage class (Jarod Wilson) [1860496] - [net] mac80211: initialize return flags in HE 6 GHz operation parsing (Jarod Wilson) [1860496] - [net] cfg80211: fix management registrations deadlock (Jarod Wilson) [1860496] - [net] cfg80211: support bigger kek/kck key length (Jarod Wilson) [1860496] - [net] mac80211: set short_slot for 6 GHz band (Jarod Wilson) [1860496] - [net] mac80211: Consider 6 GHz band when handling power constraint (Jarod Wilson) [1860496] - [net] mac80211: accept aggregation sessions on 6 GHz (Jarod Wilson) [1860496] - [net] cfg80211: require HE capabilities for 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: reject HT/VHT capabilities on 6 GHz band (Jarod Wilson) [1860496] - [net] cfg80211: treat 6 GHz channels as valid regardless of capability (Jarod Wilson) [1860496] - [net] mac80211: Add HE 6GHz capabilities element to probe request (Jarod Wilson) [1860496] - [net] mac80211: use HE 6 GHz band capability and pass it to the driver (Jarod Wilson) [1860496] - [net] mac80211: check the correct bit for EMA AP (Jarod Wilson) [1860496] - [net] mac80211: determine chandef from HE 6 GHz operation (Jarod Wilson) [1860496] - [net] mac80211: avoid using ext NSS high BW if not supported (Jarod Wilson) [1860496] - [net] mac80211: do not allow HT/VHT IEs in 6 GHz mesh mode (Jarod Wilson) [1860496] - [net] mac80211: build HE operation with 6 GHz oper information (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capability element (Jarod Wilson) [1860496] - [net] cfg80211: add and expose HE 6 GHz band capabilities (Jarod Wilson) [1860496] - [net] mac80211: add HE 6 GHz Band Capabilities into parse extension (Jarod Wilson) [1860496] - [net] cfg80211: handle 6 GHz capability of new station (Jarod Wilson) [1860496] - [include] ieee80211: add HE ext EIDs and 6 GHz capability defines (Jarod Wilson) [1860496] - [include] ieee80211: add code to obtain and parse 6 GHz operation field (Jarod Wilson) [1860496] - [include] ieee80211: definitions for reduced neighbor reports (Jarod Wilson) [1860496] - [net] cfg80211: add a helper to identify 6 GHz PSCs (Jarod Wilson) [1860496] - [net] nl80211: really allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: adapt to new channelization of the 6GHz band (Jarod Wilson) [1860496] - [net] cfg80211: fix 6 GHz frequencies to kHz (Jarod Wilson) [1860496] - [wireless] ath11k: clear DCM max constellation tx value (Jarod Wilson) [1860496] - [wireless] ath11k: reset trigger frame MAC padding duration (Jarod Wilson) [1860496] - [wireless] ath10k: Remove ath10k_qmi_register_service_notifier() declaration (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] ath9k: Set RX filter based to allow broadcast Action frame RX (Jarod Wilson) [1860496] - [wireless] mwifiex: Add support for NL80211_ATTR_MAX_AP_ASSOC_STA (Jarod Wilson) [1860496] - [wireless] mwifiex: Parse all API_VER_ID properties (Jarod Wilson) [1860496] - [wireless] brcmfmac: 43012 Update MES Watermark (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 43455 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize and watermark for 4354/4356 SDIO (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 4339 CRC error under SDIO 3.0 SDR104 mode (Jarod Wilson) [1860496] - [wireless] brcmfmac: set F2 blocksize for 4373 (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: remove CCK TX setting when switch channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: fix missing brace warning for old compilers (Jarod Wilson) [1860496] - [wireless] rtw88: fix EAPOL 4-way failure by finish IQK earlier (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: handle BT inquiry cases (Jarod Wilson) [1860496] - [wireless] rtw88: coex: 8723d: set antanna control owner (Jarod Wilson) [1860496] - [wireless] Revert "rtw88: no need to set registers for SDIO" (Jarod Wilson) [1860496] - [wireless] rt2800: enable MFP support unconditionally (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Fix Cypress SDIO IDs macros in common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from b43-sdio driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from ath10k driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Move SDIO IDs from mwifiex driver to common include file (Jarod Wilson) [1860496] - [wireless] mmc: sdio: Change macro names for Marvell 8688 modules (Jarod Wilson) [1860496] - [mmc] mmc: sdio: Fix macro name for Marvell device with ID 0x9134 (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 56 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request version 10 (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: fix aux station leak (Jarod Wilson) [1860496] - [wireless] iwlwifi: move txq-specific from trans_pcie to common trans (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_txq and substructures to a common trans header (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen3: indicate 8k/12k RB size to device (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: evaluate dsm to enable 5.2 bands in Indonesia (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: support device specific method (DSM) (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: keep trans instead of trans_pcie in iwl_txq (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: don't count on the FW to set persistence mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: set NO_HE if the regulatory domain forbids it (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: remove set but not used variable 'msta' (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Use kmemdup in mt7615_queue_key_update() (Jarod Wilson) [1860496] - [wireless] mt76: only iterate over initialized rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for MT7611N (Jarod Wilson) [1860496] - [wireless] mt76: fix wcid allocation issues (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible NULL pointer dereference in mt7915_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix hw_scan with ssid_type for specified SSID only (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix a handful of spelling mistakes (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch to per-vif power_save support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: fix per-driver wcid range checks after wcid array size bump (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix decoded radiotap HE flags (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix NULL pointer deref in mt7615_register_ext_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix sparse warnings: incorrect type initializer (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix some sparse warnings (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add spatial reuse support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove check in mt76x02_mcu_msg_send (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce remain_on_channel support (Jarod Wilson) [1860496] - [net] mac80211: support control port TX status reporting (Jarod Wilson) [1860496] - [net] mac80211: fix HT-Control field reception for management frames (Jarod Wilson) [1860496] - [net] cfg80211: fix CFG82011_CRDA_SUPPORT still mentioning internal regdb (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific Tx rate configuration (Jarod Wilson) [1860496] - [net] mac80211: allow SA-QUERY processing in userspace (Jarod Wilson) [1860496] - [net] nl80211: add ability to report TX status for control port TX (Jarod Wilson) [1860496] - [net] mac80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [net] cfg80211: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [include] mac80211: Add new AMPDU factor macro for HE peer caps (Jarod Wilson) [1860496] - [include] ieee80211: S1G defines (Jarod Wilson) [1860496] - [net] nl80211: support scan frequencies in KHz (Jarod Wilson) [1860496] - [net] nl80211: add KHz frequency offset for most wifi commands (Jarod Wilson) [1860496] - [net] cfg80211: add KHz variants of frame RX API (Jarod Wilson) [1860496] - [net] nl80211: simplify peer specific TID configuration (Jarod Wilson) [1860496] - [net] cfg80211: add support for TID specific AMSDU configuration (Jarod Wilson) [1860496] - [net] mac80211: fix variable names in TID config methods (Jarod Wilson) [1860496] - [net] cfg80211: fix mask type in cfg80211_tid_cfg structure (Jarod Wilson) [1860496] - [net] cfg80211: fix debugfs rename crash (Jarod Wilson) [1860496] - [include] ieee80211: Fix incorrect mask for default PE duration (Jarod Wilson) [1860496] - [net] mac80211: mesh: fix discovery timer re-arming issue / crash (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: Fix build error (Jarod Wilson) [1860496] - [wireless] ath11k: Fix some resource leaks in error path in 'ath11k_thermal_register()' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: remove redundant for-loop (Jarod Wilson) [1860496] - [wireless] mwifiex: Fix memory corruption in dump_station (Jarod Wilson) [1860496] - [wireless] rtw88: no need to set registers for SDIO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix incorrect setting of ldo_pwr (Jarod Wilson) [1860496] - [wireless] rtw88: rename rtw88.ko/rtwpci.ko to rtw88_core.ko/rtw88_pci.ko (Jarod Wilson) [1860496] - [wireless] rtw88: extract: remove the unused after extracting (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8723d an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822b an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: make 8822c an individual kernel module (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols about pci interface (Jarod Wilson) [1860496] - [wireless] rtw88: extract: export symbols used in chip functionalities (Jarod Wilson) [1860496] - [wireless] rtlwifi: Fix a double free in _rtl_usb_tx_urb_setup() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix typo defining ps work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: configure bss info adding the interface (Jarod Wilson) [1860496] - [wireless] mt76: enable p2p support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: reduce hw scan timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not report scan_complete twice to mac80211 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix the usage WoW with net detect support (Jarod Wilson) [1860496] - [wireless] ath11k: fix htt stats module not handle multiple skbs (Jarod Wilson) [1860496] - [wireless] rtl8187: Remove unused variable rtl8225z2_tx_power_ofdm (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: fix sparse warnings for power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add 8723DE to Kconfig and Makefile (Jarod Wilson) [1860496] - [wireless] rtw88: fill zeros to words 0x06 and 0x07 of security cam entry (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add coex support (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: set ltecoex register address in chip_info (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement flush queue (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add shutdown callback to disable BT USB suspend (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power tracking (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add IQ calibration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add LC calibration (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix WPA/WPA2-PSK 4-way handshake offload and SAE offload failures (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: fix possible deadlock in mt7915_stop (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: allocate proper size for tlv tags (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add debugfs to track TxBF status (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add TxBF capabilities (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformee support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Tx beamformer support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: introduce mt7915_get_he_phy_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: usb: cancel ps work stopping the vif (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: add missing register definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: set runtime stream caps by mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable firmware module debug support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add tsf related callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: set peer Tx fixed rate through debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_statistics support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add .sta_add_debugfs support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add Rx radiotap header support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE capabilities support for peers (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: add HE bss_conf support for interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: register per-phy HE capabilities for each interface (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: implement HE per-rate tx power support (Jarod Wilson) [1860496] - [wireless] mt76: mt7915: enable Rx HE rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: add mac80211 driver for MT7915 PCIe-based chipsets (Jarod Wilson) [1860496] - [wireless] mt76: add HE phy modes and hardware queue (Jarod Wilson) [1860496] - [wireless] mt76: adjust wcid size to support new 802.11ax generation (Jarod Wilson) [1860496] - [wireless] mt76: add Rx stats support for radiotap (Jarod Wilson) [1860496] - [wireless] mt76: add support for HE RX rate reporting (Jarod Wilson) [1860496] - [wireless] mt76: avoid rx reorder buffer overflow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: scan all channels if not specified (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add support to sched scan with randomise addr (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce WoW with net detect support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix delta tx power for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix target power parsing (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ibss mode for mt7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: check return value of mt7615_eeprom_get_power_index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: read tx streams from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce beacon_loss mcu event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add gtk rekey offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce PM support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: introduce suspend/resume to mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add WoW support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_hif_suspend mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce support for hardware beacon filter (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: free pci_vector if mt7615_pci_probe fails (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add passive mode for hw scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not mark sched_scan disabled in mt7615_scan_work (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_check_offload_capability routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix ssid configuration in mt7615_mcu_hw_scan (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: remove duplicate error message (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix getting maximum tx power from eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set spatial extension index (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: remove check in mt7663_load_n9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: add the possibility to load firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: enable MCS 8 and MCS9 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix event report in mt7615_mcu_bss_event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add sta pointer to mt7615_mcu_add_bss_info signature (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix up BMC entry indicated to unicmd firmware (Jarod Wilson) [1860496] - [wireless] mt76: enable TDLS support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mcu bss upload before creating the sta (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix tx status rate index calculation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not adjust MAC timings if the device is not running (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: adjust timing in mt7615_mac_set_timing to match fw/hw values (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: never use an 802.11b CF-End rate on 5GHz (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use larger rx buffers if VHT is supported (Jarod Wilson) [1860496] - [wireless] mt76: fix A-MPDU density handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix sta ampdu factor for VHT (Jarod Wilson) [1860496] - [wireless] mt76: mt7663u: enable AirTimeFairness (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mac_sta_poll for usb code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix aid configuration in mt7615_mcu_wtbl_generic_tlv (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_driver_own routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix max wtbl size for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7615_firmware_own for mt7663e (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: parse mcu return code for unified commands (Jarod Wilson) [1860496] - [wireless] mt76: add rx queues info to mt76 debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make Kconfig entry obvious for MT7663E (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: introduce 802.11 PS support in sta mode (Jarod Wilson) [1860496] - [wireless] mt76: remove PS_NULLFUNC_STACK capability (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: provide aid info to the mcu (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable aspm by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable scs for mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move core shared code in mt7615-common module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible deadlock in mt7615_stop (Jarod Wilson) [1860496] - [wireless] mt76: remove unnecessary annotations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable MSI by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework IRQ handling to prepare for MSI support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7622: fix DMA unmap length (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: set hw scan limits only for firmware with offload support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable hw/sched scan ops for non-offload firmware (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix aggr range entry in debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix possible division by 0 in mt7615_mac_update_mib_stats (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying tx DPD calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for applying DC offset calibration from EEPROM (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable merge of OTP ROM data by default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Delete an error message in mt7622_wmac_probe() (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: do not always reset the dfs state setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: correct the name of the rom patch (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add address parameter to mt7615_eeprom_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_wtbl_desc data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework wtbl key configuration (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely on mt7622 queue scheme for mt7663u (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mac_wtbl_addr in mac.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce __mt7663_load_firmware routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mac_update_rate_desc routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663u support to mt7615_write_txwi (Jarod Wilson) [1860496] - [wireless] mt76: add headroom and tailroom to mt76_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove unnecessary register operations (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce rlm tlv in bss_info mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce BSS absence event (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce scheduled scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce hw scan support (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: keep Rx filters as the default (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_set_channel_domain mcu command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add ethool support to mt7663 driver (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: disable RDD commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: make scs configurable per phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: enable nf estimation (Jarod Wilson) [1860496] - [wireless] mt76: mt7663: fix mt7615_mac_cca_stats_reset routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more useful Tx mib counters (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup mib related defines and structs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: enable aggr_stats for both phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: modify mt7615_ampdu_stat_read for each phy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x0: pci: add mt7610 PCI ID (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2u: introduce Mercury UD13 support (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: Add support for newer versions of the XBox One wifi adapter (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: fix handling MCU timeouts during hw restart (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] mwl8k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] rndis_wlan: Remove logically dead code (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove Comparison to bool in brcmf_p2p_send_action_frame() (Jarod Wilson) [1860496] - [wireless] brcmfmac: make non-global functions static (Jarod Wilson) [1860496] - [wireless] brcmfmac: Use seq/seq_len and set iv_initialize when plumbing of rxiv in (GTK) keys (Jarod Wilson) [1860496] - [wireless] brcmfmac: use actframe_abort to cancel ongoing action frame (Jarod Wilson) [1860496] - [wireless] brcmfmac: set security after reiniting interface (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix 802.1d priority to ac mapping for pcie dongles (Jarod Wilson) [1860496] - [wireless] brcmfmac: map 802.1d priority to precedence level based on AP WMM params (Jarod Wilson) [1860496] - [wireless] ath11k: convert to devm_platform_get_and_ioremap_resource (Jarod Wilson) [1860496] - [wireless] ath11k: remove redundant initialization of pointer info (Jarod Wilson) [1860496] - [wireless] ath10k: fix ath10k_pci struct layout (Jarod Wilson) [1860496] - [wireless] ath10k: fix gcc-10 zero-length-bounds warnings (Jarod Wilson) [1860496] - [wireless] ath10k: remove experimental tag from SDIO and SNOC busses in Kconfig (Jarod Wilson) [1860496] - [wireless] ath10k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: Remove bus layer includes from upper layer (Jarod Wilson) [1860496] - [wireless] ath11k: Add drv private for bus opaque struct (Jarod Wilson) [1860496] - [wireless] ath11k: Add support for multibus support (Jarod Wilson) [1860496] - [wireless] ath10k: fix __le32 warning in ath10k_wmi_tlv_op_gen_request_peer_stats_info() (Jarod Wilson) [1860496] - [wireless] ath10k: Remove msdu from idr when management pkt send fails (Jarod Wilson) [1860496] - [wireless] ath10k: Skip handling del_server during driver exit (Jarod Wilson) [1860496] - [wireless] ath11k: remove stale monitor status descriptor (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg_ini: differentiate ax210 hw with same hw type (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: skip fragmented receive buffers (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove outdated copyright print/module statement (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: don't transmit on unallocated queue (Jarod Wilson) [1860496] - [wireless] iwlwifi: tx: enable A-MSDU in low latency mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: use longer queues for 256-BA (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: use DMA pool for byte-count tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove some dead code (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: mark a variable __maybe_unused (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: attempt to allocate smaller queues (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: allocate much smaller byte-count table (Jarod Wilson) [1860496] - [wireless] iwlwifi: dump api version in yaml format (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert all AX101 devices to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove occurrences of 22000 in the FW name defines (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: convert QnJ with Hr to the device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove mangling for iwl_ax101_cfg_qu_hr (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: remove outdated comment about PCI RTPM reference (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add IML/ROM information to the assertion dumps (Jarod Wilson) [1860496] - [wireless] iwlwifi: move iwl_set_soc_latency to iwl-drv to be used by other op_modes (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: remove magic number (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: initialize iwl_dev_tx_power_cmd to zero (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: set debug descriptor to NULL outside of iwl_fw_free_dump_desc (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 55 for AX devices (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add D3 resume timepoint (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: set properly station flags in STA_HE_CTXT_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: avoid debug max amsdu config overwriting itself (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove iwlmvm's tfd_q_hang_detect module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: stop supporting swcrypto and bt_coex_active module parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for range request command version 9 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't access TLV before verifying len (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove antenna_coupling module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: use hweight_long instead of bit manipulating (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add support for parsing SHARED_MEM_ALLOC version 4 (Jarod Wilson) [1860496] - [wireless] iwlwifi: fw api: fix PHY data 2/3 position (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: remove Comparison to bool in rf.c (Jarod Wilson) [1860496] - [wireless] mwifiex: avoid -Wstringop-overflow warning (Jarod Wilson) [1860496] - [wireless] rtlwifi: remove comparison of 0/1 to bool variable (Jarod Wilson) [1860496] - [wireless] brcmsmac: remove Comparison to bool in brcms_b_txstatus() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Add P2P Action Frame retry delay to fix GAS Comeback Response failure issue (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix P2P Group Formation failure via Go-neg method (Jarod Wilson) [1860496] - [wireless] brcmfmac: support the second p2p connection (Jarod Wilson) [1860496] - [wireless] rtw88: fix an issue about leak system resources (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add interface configurations table (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Set IG register for CCK rate (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add chip_ops::false_alarm_statistics (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: some chips don't support LDPC (Jarod Wilson) [1860496] - [wireless] rtw88: handle C2H_CCX_TX_RPT to know if packet TX'ed successfully (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add set_channel (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add query_rx_desc (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add DIG parameter (Jarod Wilson) [1860496] - [wireless] rtlwifi: use true, false for bool variable in rtl_init_rfkill() (Jarod Wilson) [1860496] - [wireless] rtw88: Use udelay instead of usleep in atomic context (Jarod Wilson) [1860496] - [wireless] ath11k: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath9k_htc: Silence undersized packet warnings (Jarod Wilson) [1860496] - [wireless] ath6kl: Replace zero-length array with flexible-array (Jarod Wilson) [1860496] - [wireless] ath11k: fix kernel panic by freeing the msdu received with invalid length (Jarod Wilson) [1860496] - [wireless] ath11k: Add support to reset htt peer stats (Jarod Wilson) [1860496] - [wireless] ath11k: add tx hw 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [wireless] ath11k: fix resource unavailability for htt stats after peer stats display (Jarod Wilson) [1860496] - [wireless] ath11k: use true,false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: Add support for targets without trustzone (Jarod Wilson) [1860496] - [wireless] ath10k: Setup the msa resources before qmi init (Jarod Wilson) [1860496] - [wireless] ath10k: remove the max_sched_scan_reqs value (Jarod Wilson) [1860496] - [wireless] ath10k: Avoid override CE5 configuration for QCA99X0 chipsets (Jarod Wilson) [1860496] - [wireless] brcmfmac: no need to check return value of debugfs_create functions (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove comparison to bool in brcmf_fws_attach() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add vendor ie for association responses (Jarod Wilson) [1860496] - [wireless] brcmfmac: only generate random p2p address when needed (Jarod Wilson) [1860496] - [wireless] brcmfmac: p2p cert 6.1.9-support GOUT handling p2p presence request (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove arp_hostip_clear from brcmf_netdev_stop (Jarod Wilson) [1860496] - [wireless] brcmfmac: keep apsta enabled when AP starts with MCHAN feature (Jarod Wilson) [1860496] - [wireless] rtw88: fix spelling mistake "fimrware" -> "firmware" (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update phy parameter tables to v50 (Jarod Wilson) [1860496] - [wireless] ath11k: add DBG_MAC prints to track vdev events (Jarod Wilson) [1860496] - [wireless] ath11k: fix mgmt_tx_wmi cmd sent to FW for deleted vdev (Jarod Wilson) [1860496] - [wireless] ath11k: fix error return code in ath11k_dp_alloc() (Jarod Wilson) [1860496] - [wireless] ath10k: fix possible memory leak in ath10k_bmi_lz_data_large() (Jarod Wilson) [1860496] - [wireless] mac80211: fix memory overlap due to variable length param (Jarod Wilson) [1860496] - [net] mac80211: TX legacy rate control for Beacon frames (Jarod Wilson) [1860496] - [wireless] ath11k: use GFP_ATOMIC under spin lock (Jarod Wilson) [1860496] - [wireless] ath10k: correct tx bitrate of iw for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: add bitrate parse for peer stats info (Jarod Wilson) [1860496] - [wireless] ath10k: add rx bitrate report for SDIO (Jarod Wilson) [1860496] - [wireless] ath10k: enable firmware peer stats info for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath5k: remove conversion to bool in ath5k_ani_calibration() (Jarod Wilson) [1860496] - [wireless] ath9k: add calibration timeout for AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: invalidate all calibrations at once (Jarod Wilson) [1860496] - [wireless] ath9k: interleaved NF calibration on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: do not miss longcal on AR9002 (Jarod Wilson) [1860496] - [wireless] ath9k: remove needless NFCAL_PENDING flag setting (Jarod Wilson) [1860496] - [wireless] ath9k: fix AR9002 ADC and NF calibrations (Jarod Wilson) [1860496] - [wireless] rtw88: fix sparse warnings for download firmware routine (Jarod Wilson) [1860496] - [wireless] ath10k: add statistics of tx retries and tx failed when tx complete disable (Jarod Wilson) [1860496] - [wireless] ath10k: enable rx duration report default for wmi tlv (Jarod Wilson) [1860496] - [wireless] ath11k: fix reo flush send (Jarod Wilson) [1860496] - [wireless] iwlwifi: debug: set NPK buffer in context info (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structs for So devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add new structure for Qu devices with medium latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: tell firmware about required LTR delay (Jarod Wilson) [1860496] - [wireless] iwlwifi: update few product names in AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add cfgs for SoCs with device ID 0x4FD0 (Jarod Wilson) [1860496] - [wireless] iwlwifi: add new cards for AX family (Jarod Wilson) [1860496] - [wireless] iwlwifi: acpi: read TAS table from ACPI and send it to the FW (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove fw_monitor module parameter (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove deprecated and unused iwl_mvm_keyinfo struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add framework for specific phy configuration (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: move iwl_pcie_ctxt_info_alloc_dma() to user (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: support IWL_FW_INI_TIME_POINT_HOST_ALIVE_TIMEOUT time point (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add DCM flag to rate pretty-print (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: gen2: minor code cleanups in byte table update (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: add n_window/ampdu to tx_queue debugfs (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: use seq_file for tx_queue debugfs file (Jarod Wilson) [1860496] - [wireless] iwlwifi: support version 9 of WOWLAN_GET_STATUS notification (Jarod Wilson) [1860496] - [wireless] iwlwifi: dbg: support multiple dumps in legacy dump flow (Jarod Wilson) [1860496] - [wireless] iwlwifi: move API version lookup to common code (Jarod Wilson) [1860496] - [wireless] iwlwifi: nvm: use iwl_nl80211_band_from_channel_idx (Jarod Wilson) [1860496] - [net] mac80211: fix two missing documentation entries (Jarod Wilson) [1860496] - [net] cfg80211: reject channels/chandefs with KHz offset >= 1000 (Jarod Wilson) [1860496] - [net] mac80211: add freq_offset to RX status (Jarod Wilson) [1860496] - [net] mac80211: handle channel frequency offset (Jarod Wilson) [1860496] - [net] cfg80211: express channels with a KHz component (Jarod Wilson) [1860496] - [net] ieee80211: share 802.11 unit conversion helpers (Jarod Wilson) [1860496] - [net] mac80211: minstrel_ht_assign_best_tp_rates: remove redundant test (Jarod Wilson) [1860496] - [net] mac80211: Fail association when AP has no legacy rates (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: add an option to defer ADDBA transmit (Jarod Wilson) [1860496] - [net] mac80211: agg-tx: refactor sending addba (Jarod Wilson) [1860496] - [net] mac80211: Skip entries with HE membership selector (Jarod Wilson) [1860496] - [net] cfg80211: Parse HE membership selector (Jarod Wilson) [1860496] - [net] mac80211: Don't destroy auth data in case of anti-clogging (Jarod Wilson) [1860496] - [net] mac80211: add twt_protected flag to the bss_conf structure (Jarod Wilson) [1860496] - [net] mac80211: implement Operating Mode Notification extended NSS support (Jarod Wilson) [1860496] - [net] mac80211: Process multicast RX registration for Action frames (Jarod Wilson) [1860496] - [net] nl80211: allow client-only BIGTK support (Jarod Wilson) [1860496] - [net] cfg80211: support multicast RX registration (Jarod Wilson) [1860496] - [net] cfg80211: change internal management frame registration API (Jarod Wilson) [1860496] - [net] mac80211: Report beacon protection failures to user space (Jarod Wilson) [1860496] - [net] cfg80211: Unprotected Beacon frame RX indication (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: remove support for fw scan api v13 (Jarod Wilson) [1860496] - [net] mac80211: fix drv_config_iface_filter() behaviour (Jarod Wilson) [1860496] - [net] mac80211: mlme: remove duplicate AID bookkeeping (Jarod Wilson) [1860496] - [wireless] ath10k: drop the TX packet which size exceed credit size for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the invalid tx/rx chainmask configuration (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: initialize mac/bb/rf basic functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Organize chip TX/RX FIFO (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: implement set_tx_power_index ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: 11N chips don't support H2C queue (Jarod Wilson) [1860496] - [wireless] rtw88: decompose while(1) loop of power sequence polling command (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac power-on/-off function (Jarod Wilson) [1860496] - [wireless] rtw88: no need to send additional information to legacy firmware (Jarod Wilson) [1860496] - [wireless] rtw88: add legacy firmware download for 8723D devices (Jarod Wilson) [1860496] - [wireless] ath10k: add flush tx packets for SDIO chip (Jarod Wilson) [1860496] - [wireless] ath10k: enable alt data of TX path for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add htt TX bundle for sdio (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_debug_fw_stats_process() (Jarod Wilson) [1860496] - [wireless] ath11k: remove conversion to bool in ath11k_dp_rxdesc_mpdu_valid() (Jarod Wilson) [1860496] - [wireless] rtw88: set power trim according to efuse PG values (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add read_efuse to recognize efuse info from map (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add new chip op efuse_grant() to control efuse access (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add cfg_ldo25 to control LDO25 (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add mac/bb/rf/agc/power_limit tables (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add RF read/write ops (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add power sequence (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: add beamform wrapper functions (Jarod Wilson) [1860496] - [wireless] rtw88: 8723d: Add basic chip capabilities (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix warning comparison to bool (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8821ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723be: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8192ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8188ee: use true, false for bool variables (Jarod Wilson) [1860496] - [wireless] ath10k: hif: make send_complete_check op optional (Jarod Wilson) [1860496] - [wireless] ath10k: sdio: remove _hif_ prefix from functions not part of hif interface (Jarod Wilson) [1860496] - [wireless] ath10k: improve power save performance for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: rename ath10k_hif_swap_mailbox() to ath10k_hif_start_post() (Jarod Wilson) [1860496] - [wireless] brcmfmac: remove leading space (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_stf_ss_update() void (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_down() (Jarod Wilson) [1860496] - [wireless] brcmsmac: Add missing annotation for brcms_rfkill_set_hw_state() (Jarod Wilson) [1860496] - [wireless] hostap: Add missing annotations for prism2_bss_list_proc_start() and prism2_bss_list_proc_stop (Jarod Wilson) [1860496] - [wireless] rtw88: add support for set/get antennas (Jarod Wilson) [1860496] - [wireless] rtw88: make rtw_chip_ops::set_antenna return int (Jarod Wilson) [1860496] - [wireless] ath11k: Add dynamic tcl ring selection logic with retry mechanism (Jarod Wilson) [1860496] - [wireless] ath11k: cleanup reo command error code overwritten (Jarod Wilson) [1860496] - [wireless] ath10k: Fix typo in warning messages (Jarod Wilson) [1860496] - [wireless] ath11k: Fix rx_filter flags setting for per peer rx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: Fix fw assert by setting proper vht cap (Jarod Wilson) [1860496] - [wireless] ath11k: Cleanup in pdev destroy and mac register during crash on recovery (Jarod Wilson) [1860496] - [wireless] brcmsmac: make brcms_c_set_mac() void (Jarod Wilson) [1860496] - [wireless] rtw88: Add delay on polling h2c command status bit (Jarod Wilson) [1860496] - [wireless] brcm80211: remove redundant pointer 'address' (Jarod Wilson) [1860496] - [wireless] rtlwifi: rtl8723ae: fix spelling mistake "chang" -> "change" (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix wrong location to get firmware feature (Jarod Wilson) [1860496] - [wireless] rtw88: Make two functions static (Jarod Wilson) [1860496] - [net] cfg80211: fix kernel-doc notation (Jarod Wilson) [1860496] - [wireless] ath11k: rx path optimizations (Jarod Wilson) [1860496] - [wireless] ath11k: set IRQ_DISABLE_UNLAZY flag for DP interrupts (Jarod Wilson) [1860496] - [wireless] ath11k: Fix TWT radio count (Jarod Wilson) [1860496] - [wireless] ath11k: Modify the interrupt timer threshold (Jarod Wilson) [1860496] - [wireless] ath11k: fix duplication peer create on same radio (Jarod Wilson) [1860496] - [wireless] ath10k: change ATH10K_SDIO_BUS_REQUEST_MAX_NUM from 64 to 1024 (Jarod Wilson) [1860496] - [wireless] ath10k: disable TX complete indication of htt for sdio (Jarod Wilson) [1860496] - [wireless] ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9x: Fix stack-out-of-bounds Write in ath9k_hif_usb_rx_cb (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Write in ath9k_htc_rx_msg (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in ath9k_wmi_ctrl_rx (Jarod Wilson) [1860496] - [wireless] ath9k: Fix use-after-free Read in htc_connect_service (Jarod Wilson) [1860496] - [wireless] ath10k: fix kernel null pointer dereference (Jarod Wilson) [1860496] - [wireless] ath10k: enable radar detection in secondary segment (Jarod Wilson) [1860496] - [wireless] ath10k: enable VHT160 and VHT80+80 modes (Jarod Wilson) [1860496] - [wireless] ath11k: Avoid mgmt tx count underflow (Jarod Wilson) [1860496] - [wireless] ath11k: Increase the tx completion ring size (Jarod Wilson) [1860496] - [wireless] ath11k: fix error message to correctly report the command that failed (Jarod Wilson) [1860496] - [wireless] ath11k: add pktlog checksum in trace events to support pktlog (Jarod Wilson) [1860496] - [wireless] ath10k: Fix the race condition in firmware dump work queue (Jarod Wilson) [1860496] - [wireless] ath11k: Add sta debugfs support to configure ADDBA and DELBA (Jarod Wilson) [1860496] - [wireless] ath11k: fix compiler warnings without CONFIG_THERMAL (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: remove newline from rs_pretty_print_rate() (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: make iwl_pcie_cmdq_reclaim static (Jarod Wilson) [1860496] - [wireless] iwlwifi: bump FW API to 53 for 22000 series (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove IWL_FW_DBG_DOMAIN macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: enable yoyo by default (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support FW APIs with variable number of profiles (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: don't block dumping internal memory when not in SRAM mode (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ HR FPGA (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove support for QnJ Hr STEP A (Jarod Wilson) [1860496] - [wireless] iwlwifi: add trans_cfg for devices with long latency (Jarod Wilson) [1860496] - [wireless] iwlwifi: add support for version 2 of SOC_CONFIGURATION_CMD (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add support for non EDCA based measurements (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove unnecessary cfg mangling for Qu C and QuZ with Jf (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert QnJ with Jf devices to new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert all Qu with Jf devices to the new config table (Jarod Wilson) [1860496] - [wireless] iwlwifi: add HW step to new cfg device table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove some unused extern declarations from iwl-config.h (Jarod Wilson) [1860496] - [wireless] iwlwifi: move integrated, extra_phy and soc_latency to trans_cfg (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: enable SF also when we have HE (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove redundant iwl9560_2ac_cfg struct (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: rs-fw: fix some indentation (Jarod Wilson) [1860496] - [wireless] iwlwifi: scan: support scan req cmd ver 14 (Jarod Wilson) [1860496] - [wireless] iwlwifi: pass trans and NVM data to HE capability parsing (Jarod Wilson) [1860496] - [wireless] iwlwifi: pcie: implement read_config32 (Jarod Wilson) [1860496] - [wireless] iwlwifi: yoyo: add PCI config space region type (Jarod Wilson) [1860496] - [wireless] iwlwifi: mvm: add soc latency support (Jarod Wilson) [1860496] - [wireless] hostap: convert to struct proc_ops (Jarod Wilson) [1860496] - [wireless] rtw88: fix non-increase management packet sequence number (Jarod Wilson) [1860496] - [wireless] brcmfmac: add USB autosuspend feature support (Jarod Wilson) [1860496] - [wireless] brcmfmac: increase max hanger slots from 1K to 3K in fws layer (Jarod Wilson) [1860496] - [wireless] brcmfmac: fix the incorrect return value in brcmf_inform_single_bss() (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix double freeing in the fmac usb data path (Jarod Wilson) [1860496] - [wireless] brcmfmac: Fix driver crash on USB control transfer timeout (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Feed current txrate information for mac80211 (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: add enumeration for channel bandwidth (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to enable/disable coex mechanism (Jarod Wilson) [1860496] - [wireless] rtw88: add a debugfs entry to dump coex's info (Jarod Wilson) [1860496] - [wireless] rtl8xxxu: Fix sparse warning: cast from restricted __le16 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing declaration in mt7615.h (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in unified command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix mt7663e firmware struct endianness (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: config RF table path B before path A (Jarod Wilson) [1860496] - [wireless] rtw88: kick off TX packets once for higher efficiency (Jarod Wilson) [1860496] - [wireless] rtw88: pci: define a mask for TX/RX BD indexes (Jarod Wilson) [1860496] - [wireless] rtw88: associate reserved pages with each vif (Jarod Wilson) [1860496] - [wireless] rtw88: extract alloc rsvd_page and h2c skb routines (Jarod Wilson) [1860496] - [wireless] brcmfmac: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: marvell: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] hostap: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: ti: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] wireless: realtek: Replace zero-length array with flexible-array member (Jarod Wilson) [1860496] - [wireless] ath10k: Fill GCMP MIC length for PMF (Jarod Wilson) [1860496] - [net] mac80211: driver can remain on channel if not using chan_ctx (Jarod Wilson) [1860496] - [net] nl80211: clarify code in nl80211_del_station() (Jarod Wilson) [1860496] - [net] cfg80211: Configure PMK lifetime and reauth threshold for PMKSA entries (Jarod Wilson) [1860496] - [net] mac80211: Read rx_stats with perCPU pointers (Jarod Wilson) [1860496] - [net] mac80211: Allow deleting stations in ibss mode to reset their state (Jarod Wilson) [1860496] - [net] cfg80211: Add support for userspace to reset stations in IBSS mode (Jarod Wilson) [1860496] - [net] mac80211: consider WLAN_EID_EXT_HE_OPERATION for parsing CRC (Jarod Wilson) [1860496] - [uapi] nl80211: add PROTECTED_TWT nl80211 extended feature (Jarod Wilson) [1860496] - [net] mac80211: HE: set missing bss_conf fields in AP mode (Jarod Wilson) [1860496] - [net] nl80211: pass HE operation element to the driver (Jarod Wilson) [1860496] - [net] nl80211/cfg80211: add support for non EDCA based ranging measurement (Jarod Wilson) [1860496] - [net] mac80211: don't leave skb->next/prev pointing to stack (Jarod Wilson) [1860496] - [net] mac80211: update documentation about tx power (Jarod Wilson) [1860496] - [net] mac80211: handle no-preauth flag for control port (Jarod Wilson) [1860496] - [net] nl80211: add no pre-auth attribute and ext. feature flag for ctrl. port (Jarod Wilson) [1860496] - [net] cfg80211: fix documentation format (Jarod Wilson) [1860496] - [wireless] ath11k: Perform per-msdu rx processing (Jarod Wilson) [1860496] - [wireless] ath11k: Configure hash based reo destination ring selection (Jarod Wilson) [1860496] - [wireless] ath11k: Adding proper validation before accessing tx_stats (Jarod Wilson) [1860496] - [wireless] ath11k: dump SRNG stats during FW assert (Jarod Wilson) [1860496] - [wireless] ath11k: fill channel info from rx channel (Jarod Wilson) [1860496] - [wireless] ath11k: Supporting RX ring backpressure HTT event and stats handling (Jarod Wilson) [1860496] - [wireless] iwlwifi: move AX200 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove trans entries from COMMON 9260 macro (Jarod Wilson) [1860496] - [wireless] iwlwifi: move shared clock entries to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: move pu devices to new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: remove 9260 devices with 0x1010 and 0x1210 subsytem IDs (Jarod Wilson) [1860496] - [wireless] iwlwifi: convert the 9260-1x1 device to use the new parameters (Jarod Wilson) [1860496] - [wireless] iwlwifi: move TH1 devices to the new table (Jarod Wilson) [1860496] - [wireless] iwlwifi: map 9461 and 9462 using RF type and RF ID (Jarod Wilson) [1860496] - [wireless] iwlwifi: add Pu/PnJ/Th device values to differentiate them (Jarod Wilson) [1860496] - [wireless] iwlwifi: add GNSS differentiation to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: add mac/rf types and 160MHz to the device tables (Jarod Wilson) [1860496] - [wireless] iwlwifi: combine 9260 cfgs that only change names (Jarod Wilson) [1860496] - [wireless] iwlwifi: move the remaining 0x2526 configs to the new table (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7663e support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: get rid of sta_rec_wtbl data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_ba uni command (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add more uni mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce set_bmc and st_sta for uni commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce uni cmd command types (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_mac_chain routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_eeprom_parse_hw_band_cap routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_{driver, firmware}_own (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7663e support to mt7615_reg_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_register_map (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce MCU_FW_PREFIX for fw mcu commands (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move more mcu commands in mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework mt7615_mcu_set_bss_info using skb APIs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on skb API for mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_sta in mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mt7615_mcu_set_bmc to mt7615_mcu_ops (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add mt7615_mcu_ops data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_send_message routine (Jarod Wilson) [1860496] - [wireless] mt76: always init to 0 mcu messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_init_device routine (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: cleanup fw queue just for mmio devices (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_wait_response (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce mt7615_mcu_fill_msg (Jarod Wilson) [1860496] - [wireless] mt76: remove variable 'val' set but not used (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove a stray if statement (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: reset MCU timeout counter earlier in watchdog reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor injection of beacon frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: make dynamic sensitivity adjustment configurable via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: add upper limit for dynamic sensitivity minimum receive power (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix antenna mask initialization in DBDC mode (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rely only on data buffer for usb control messagges (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: fix a possible memory leak in mt76u_init (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: loop over all possible rx queues in mt76u_rx_tasklet (Jarod Wilson) [1860496] - [wireless] ath11k: add handling for BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: add WMI calls required for handling BSS color (Jarod Wilson) [1860496] - [wireless] ath11k: set queue_len to 4096 (Jarod Wilson) [1860496] - [wireless] ath11k: enable PN offload (Jarod Wilson) [1860496] - [wireless] ath11k: handle RX fragments (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused member of struct rtw_hal (Jarod Wilson) [1860496] - [wireless] ath5k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath11k: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1860496] - [wireless] ath10k: allow qca988x family to support ack rssi of tx data packets (Jarod Wilson) [1860496] - [wireless] ath5k: Add proper dependency for ATH5K_AHB (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal sensor device support (Jarod Wilson) [1860496] - [wireless] ath11k: add thermal cooling device support (Jarod Wilson) [1860496] - [wireless] ath10k: fix not registering airtime of 11a station with WMM disable (Jarod Wilson) [1860496] - [wireless] ath11k: config reorder queue for all tids during peer setup (Jarod Wilson) [1860496] - [wireless] ath10k: fix unsupported chip reset debugs file write (Jarod Wilson) [1860496] - [wireless] ath10k: use kzalloc to read for ath10k_sdio_hif_diag_read (Jarod Wilson) [1860496] - [wireless] ath10k: start recovery process when read int status fail for sdio (Jarod Wilson) [1860496] - [wireless] ath10k: add QCA9377 sdio hw_param item (Jarod Wilson) [1860496] - [wireless] ath10k: avoid consecutive OTP download to reduce boot time (Jarod Wilson) [1860496] - [net] mac80211: Add api to support configuring TID specific configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific RTSCTS configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific AMPDU configuration (Jarod Wilson) [1860496] - [net] nl80211: Add support to configure TID specific retry configuration (Jarod Wilson) [1860496] - [net] nl80211: modify TID-config API (Jarod Wilson) [1860496] - [net] nl80211: Add NL command to support TID speicific configurations (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (STA) (Jarod Wilson) [1860496] - [net] mac80211: Beacon protection using the new BIGTK (AP) (Jarod Wilson) [1860496] - [net] mac80211: Update BIP to support Beacon frames (Jarod Wilson) [1860496] - [net] mac80211: Support BIGTK configuration for Beacon protection (Jarod Wilson) [1860496] - [net] cfg80211: Support key configuration for Beacon protection (BIGTK) (Jarod Wilson) [1860496] - [net] cfg80211: More error messages for key addition failures (Jarod Wilson) [1860496] - [net] cfg80211: fix indentation errors (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "dev" (Jarod Wilson) [1860496] - [net] cfg80211: merge documentations of field "debugfsdir" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "reg_notifier" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "perm_addr" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "_net" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "registered" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "privid" (Jarod Wilson) [1860496] - [net] cfg80211: drop duplicated documentation of field "probe_resp_offload" (Jarod Wilson) [1860496] - [net] Revert "nl80211: add src and dst addr attributes for control port tx/rx" (Jarod Wilson) [1860496] - [net] Revert "mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS" (Jarod Wilson) [1860496] - [net] cfg80211: remove support for adjacent channel compensation (Jarod Wilson) [1860496] - [net] mac80211: check vif pointer before airtime calculation (Jarod Wilson) [1860496] - [net] cfg80211: Pass lockdep expression to RCU lists (Jarod Wilson) [1860496] - [wireless] mwifiex: change license text from MARVELL to NXP (Jarod Wilson) [1860496] - [wireless] mt76: Introduce mt76_mcu data structure (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove rx_mask in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: rename stat_wq in wq (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: extend RX scatter gather number (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rely on mt76_queues_read for mt7622 (Jarod Wilson) [1860496] - [wireless] mt76: do not set HOST_BROADCAST_PS_BUFFERING for mt7615 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework rx phy index handling (Jarod Wilson) [1860496] - [wireless] mt76: fix rounding issues on converting per-chain and combined txpower (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: avoid starting the MAC too early (Jarod Wilson) [1860496] - [wireless] mt76: avoid extra RCU synchronization on station removal (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix monitor mode on second PHY (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix adding active monitor interfaces (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_rx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: switch mt7615_mcu_set_tx_ba to v2 format (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: use new tag sta_rec_wtbl (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add starec operating flow for firmware v2 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a helper to encapsulate sta_rec operation (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_sta flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: simplify mcu_set_bmc flow (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for testing hardware reset (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement hardware reset support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware log event messages (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix and rework tx power handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add Kconfig entry for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable DBDC on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: decrease rx ring size for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement DMA support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: implement probing and firmware loading on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: disable 5 GHz on MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add calibration free support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add eeprom support for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dma and tx queue initialization for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT_INT_TX_DONE_ALL definition for MT7622 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: store N9 firmware version instead of CR4 (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: split up firmware loading functions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move mmio related code from pci.c to mmio.c (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add __aligned(4) to txp structs (Jarod Wilson) [1860496] - [wireless] mt76: enable Airtime Queue Limit support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: increase dma mcu rx ring size (Jarod Wilson) [1860496] - [wireless] mt76: dma: do not write cpu_idx on rx queue reset until after refill (Jarod Wilson) [1860496] - [wireless] mt76: fix handling full tx queues in mt76_dma_tx_queue_skb_raw (Jarod Wilson) [1860496] - [wireless] mt76: set dma-done flag for flushed descriptors (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce MT_DRV_RX_DMA_HDR flag (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add endpoint to mt76u_bulk_msg signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_skb_dma_info routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: take into account different queue mapping for 7663 (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add {read/write}_extended utility routines (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_alloc_mcu_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: resume all rx queue in mt76u_resume_rx (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue parameter to mt76u_rx_urb_alloc (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_alloc_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: stop/free all possible rx queues (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: introduce mt76u_free_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: move mcu buffer allocation in mt76x02u drivers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add queue id parameter to mt76u_submit_rx_buffers (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: use mt76_queue as mt76u_complete_rx context (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_refill_rx signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76_queue to mt76u_get_next_rx_entry signature (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: add mt76u_process_rx_queue utility routine (Jarod Wilson) [1860496] - [wireless] mt76: mt76u: check tx_status_data pointer in mt76u_tx_tasklet (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: avoid overwrite max_tx_fragments (Jarod Wilson) [1860496] - [wireless] mt76: rely on mac80211 utility routines to compute airtime (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove leftover routine declaration (Jarod Wilson) [1860496] - [wireless] mt76: move WIPHY_FLAG_HAS_CHANNEL_SWITCH in mt76_phy_init (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix endianness in mt7615_mcu_set_eeprom (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize radar specs from host driver (Jarod Wilson) [1860496] - [wireless] mt76: mt76x2: get rid of leftover target (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add tracing support (Jarod Wilson) [1860496] - [wireless] mt76: move mac_txdone tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: move dev_irq tracepoint in mt76 module (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add a get_stats() callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add per-phy mib statistics (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report TSF information (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_antenna callback (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework set_channel function (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing settings for simultaneous dual-band support (Jarod Wilson) [1860496] - [wireless] mt76: fix compilation warning in mt76_eeprom_override() (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: simplify led reg definitions (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: introduce LED support (Jarod Wilson) [1860496] - [wireless] mt76: clear skb pointers from rx aggregation reorder buffer during cleanup (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: fix input validation issues for powersave-filtered frames (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: increase MCU command timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: measure channel noise and report it via survey (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: fix MT7615_CFEND_RATE_DEFAULT value (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: minor mt76x02_mac_set_beacon optimization (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02u: do not set NULL beacons (Jarod Wilson) [1860496] - [wireless] mt76: usb: use max packet length for m76u_copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add channel switch support for usb interfaces (Jarod Wilson) [1860496] - [wireless] mt76: speed up usb bulk copy (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: remove a copy call for usb speedup (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: add check for invalid vif idx (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: split beaconing (Jarod Wilson) [1860496] - [wireless] mt76: mt76x02: omit beacon slot clearing (Jarod Wilson) [1860496] - [wireless] mt76: use AC specific reorder timeout (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add set_coverage class support (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: set 0 as min coverage_class value (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: report firmware version using ethtool (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: Fix build with older compilers (Jarod Wilson) [1860496] - [wireless] mt76: eeprom: add support for big endian eeprom partition (Jarod Wilson) [1860496] - [wireless] mt76: mt7603: reset STA_CCA counter setting the channel (Jarod Wilson) [1860496] - [wireless] mt76: fix possible undetected invalid MAC address (Jarod Wilson) [1860496] - [wireless] mt76: disable bh in mt76_dma_rx_poll (Jarod Wilson) [1860496] - [wireless] mt76: fix rx dma ring descriptor state on reset (Jarod Wilson) [1860496] - [wireless] mt7615: replace sta_state callback with sta_add/sta_remove (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: defer mcu initialization via workqueue (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: update beacon contents on BSS_CHANGED_BEACON (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add support for registering a second wiphy via debugfs (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: select the correct tx queue for frames sent to the second phy (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: move radio/mac initialization to .start/stop callbacks (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: initialize dbdc settings on interface add (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the rx path (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: rework chainmask handling (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support to the dfs support code (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: remove useless MT_HW_RDD0/1 enum (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add missing register init for dual-wiphy support (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add multiple wiphy support for smart carrier sense (Jarod Wilson) [1860496] - [wireless] mt76: mt7615: add dual-phy support for mac80211 ops (Jarod Wilson) [1860496] - [wireless] mt76: do not overwrite max_tx_fragments if it has been set (Jarod Wilson) [1860496] - [wireless] mt76: move ampdu_ref from mt76_dev to driver struct (Jarod Wilson) [1860496] - [wireless] mt76: add ext_phy field to struct mt76_wcid (Jarod Wilson) [1860496] - [wireless] mt76: add function for allocating an extra wiphy (Jarod Wilson) [1860496] - [wireless] mt76: add priv pointer to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add multiple wiphy support to mt76_get_min_avg_rssi (Jarod Wilson) [1860496] - [wireless] mt76: move txpower and antenna mask to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move txpower_conf back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move chainmask back to driver specific structs (Jarod Wilson) [1860496] - [wireless] mt76: move state from struct mt76_dev to mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: keep a set of software tx queues per phy (Jarod Wilson) [1860496] - [wireless] mt76: move channel state to struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in mt76_sta_state() (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the tx status path (Jarod Wilson) [1860496] - [net] mac80211: allow setting queue_len for drivers not using wake_tx_queue (Jarod Wilson) [1860496] - [include] ieee80211: add WPA3 OWE AKM suite selector (Jarod Wilson) [1860496] - [wireless] mac80211: Fix setting txpower to zero (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the main tx path (Jarod Wilson) [1860496] - [wireless] mt76: add support for an extra wiphy in the rx path (Jarod Wilson) [1860496] - [wireless] mt76: introduce struct mt76_phy (Jarod Wilson) [1860496] - [wireless] mt76: move initialization of some struct members to mt76_alloc_device (Jarod Wilson) [1860496] - [wireless] rtw88: Fix incorrect beamformee role setting (Jarod Wilson) [1860496] - [wireless] rtw88: 8822: Make tables const, reduce data object size (Jarod Wilson) [1860496] - [wireless] rtw88: disable TX-AMSDU on 2.4G band (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: modify rf protection setting (Jarod Wilson) [1860496] - [wireless] rtw88: Use secondary channel offset enumeration (Jarod Wilson) [1860496] - [wireless] rtw88: 8822c: update power sequence to v16 (Jarod Wilson) [1860496] - [wireless] rtw88: add ciphers to suppress error message (Jarod Wilson) [1860496] - [wireless] rtw88: avoid holding mutex for cancel_delayed_work_sync() (Jarod Wilson) [1860496] - [wireless] rtw88: move rtw_enter_ips() to the last when config (Jarod Wilson) [1860496] - [wireless] rtw88: pci: 8822c should set clock delay to zero (Jarod Wilson) [1860496] - [wireless] rtw88: add rtw_read8_mask and rtw_read16_mask (Jarod Wilson) [1860496] - [wireless] rtw88: remove unused parameter vif in rtw_lps_pg_info_get() (Jarod Wilson) [1860496] - [wireless] brcmfmac: add the BRCM 4364 found in MacBook Pro 15, 2 (Jarod Wilson) [1860496] - [wireless] ath11k: fix incorrect peer stats counters update (Jarod Wilson) [1860496] - [wireless] ath11k: Fixing dangling pointer issue upon peer delete failure (Jarod Wilson) [1860496] - [wireless] ath11k: fix parsing PPDU_CTRL type in pktlog (Jarod Wilson) [1860496] - [wireless] ath11k: fix warn-on in disassociation (Jarod Wilson) [1860496] - [wireless] ath11k: fix rcu lock protect in peer assoc confirmation (Jarod Wilson) [1860496] - [wireless] ath11k: add HE rate accounting to driver (Jarod Wilson) [1860496] - [wireless] ath11k: drop tx_info from ath11k_sta (Jarod Wilson) [1860496] - [wireless] ath10k: Add support to read btcoex related data from DT (Jarod Wilson) [1860496] - [wireless] ath10k: fix few checkpatch warnings (Jarod Wilson) [1860496] - [net] mac80211: support NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_MAC_ADDRS (Jarod Wilson) [1860496] - [net] nl80211: add src and dst addr attributes for control port tx/rx (Jarod Wilson) [1860496] - [net] mac80211: parse also the RSNXE IE (Jarod Wilson) [1860496] - [net] cfg80211/mac80211: Allow user space to register for station Rx authentication (Jarod Wilson) [1860496] - [include] ieee80211: fix 'the' doubling in comments (Jarod Wilson) [1860496] - [net] mac80211: Remove support for changing AP SMPS mode (Jarod Wilson) [1860496] - [net] mac80211: Handle SMPS mode changes only in AP mode (Jarod Wilson) [1860496] - [net] mac80211: Accept broadcast probe responses on 6GHz band (Jarod Wilson) [1860496] - [net] mac80211: HE: set RX NSS (Jarod Wilson) [1860496] - [net] mac80211: set station bandwidth from HE capability (Jarod Wilson) [1860496] - [net] mac80211: remove supported channels element in 6 GHz if ECSA support (Jarod Wilson) [1860496] - [net] mac80211: update condition for HE disablement (Jarod Wilson) [1860496] - [net] mac80211: make ieee80211_wep_init() return void (Jarod Wilson) [1860496] - [net] mac80211: allow changing TX-related netdev features (Jarod Wilson) [1860496] - [net] mac80211: check whether HE connection is allowed by the reg domain (Jarod Wilson) [1860496] - [net] mac80211: refactor extended element parsing (Jarod Wilson) [1860496] - [net] mac80211: simplify and improve HT/VHT/HE disable code (Jarod Wilson) [1860496] - [net] cfg80211: Enhance the AKM advertizement to support per interface (Jarod Wilson) [1860496] - [net] cfg80211: add no HE indication to the channel flag (Jarod Wilson) [1860496] - [net] mac80211: fix 11w when using encapsulation offloading (Jarod Wilson) [1860496] - [net] mac80211: fix tx status for no ack cases (Jarod Wilson) [1860496] - [net] mac80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] nl80211: add handling for BSS color (Jarod Wilson) [1860496] - [net] mac80211: debugfs: improve airtime_flags handler readability (Jarod Wilson) [1860496] - [net] mac80211: Remove redundant assertion (Jarod Wilson) [1860496] - [net] mac80211: add 802.11 encapsulation offloading support (Jarod Wilson) [1860496] - [net] mac80211: Always show airtime debugfs file when TXQs are enabled (Jarod Wilson) [1860496] - [include] trivial: mac80211: fix indentation (Jarod Wilson) [1860496]- [fs] xfs: force writes to delalloc regions to unwritten (Carlos Maiolino) [1696580] - [fs] xfs: refactor xfs_iomap_prealloc_size (Carlos Maiolino) [1696580] - [fs] xfs: measure all contiguous previous extents for prealloc size (Carlos Maiolino) [1696580] - [fs] xfs: don't fail unwritten extent conversion on writeback due to edquot (Carlos Maiolino) [1696580] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Dave Wysochanski) [1906309] - [trace] Revert "SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()" (Dave Wysochanski) [1906309] - [uapi] uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT (Eric Sandeen) [1905205] - [trace] SUNRPC: Fix oops in the rpc_xdr_buf event class (Scott Mayhew) [1900157] - [fs] NFS: Fix listxattr receive buffer size (Scott Mayhew) [1900157] - [trace] SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow() (Scott Mayhew) [1900157] - [net] SUNRPC: fix copying of multiple pages in gss_read_proxy_verf() (Scott Mayhew) [1900157] - [net] svcrdma: fix bounce buffers for unaligned offsets and multiple pages (Scott Mayhew) [1900157] - [pci] hv: Document missing hv_pci_protocol_negotiation() parameter (Mohammed Gamal) [1886102] - [pci] hv: Make some functions static (Mohammed Gamal) [1886102] - [pci] hv: Use struct_size() helper (Mohammed Gamal) [1886102] - [pci] hv: Prepare hv_compose_msi_msg() for the VMBus-channel-interrupt-to-vCPU reassignment functionality (Mohammed Gamal) [1886102] - [fs] xfs: allow individual quota grace period extension (Bill O'Donnell) [1827913] - [fs] xfs: per-type quota timers and warn limits (Bill O'Donnell) [1827913] - [fs] xfs: switch xfs_get_defquota to take explicit type (Bill O'Donnell) [1827913] - [fs] xfs: pass xfs_dquot to xfs_qm_adjust_dqtimers (Bill O'Donnell) [1827913] - [fs] xfs: fix up some whitespace in quota code (Bill O'Donnell) [1827913] - [fs] xfs: preserve default grace interval during quotacheck (Bill O'Donnell) [1827913] - [fs] quota: honor quota type in Q_XGETQSTATcalls (Bill O'Donnell) [1827913]- [fs] NFS: Do uncached readdir when we're seeking a cookie in an empty page cache (Dave Wysochanski) [1893882] - [fs] NFS: Reduce number of RPC calls when doing uncached readdir (Dave Wysochanski) [1893882] - [fs] NFS: Optimisations for monotonically increasing readdir cookies (Dave Wysochanski) [1893882] - [fs] NFS: Improve handling of directory verifiers (Dave Wysochanski) [1893882] - [fs] NFS: Handle NFS4ERR_NOT_SAME and NFSERR_BADCOOKIE from readdir calls (Dave Wysochanski) [1893882] - [fs] NFS: Allow the NFS generic code to pass in a verifier to readdir (Dave Wysochanski) [1893882] - [fs] NFS: Cleanup to remove nfs_readdir_descriptor_t typedef (Dave Wysochanski) [1893882] - [fs] NFS: Reduce readdir stack usage (Dave Wysochanski) [1893882] - [fs] NFS: nfs_do_filldir() does not return a value (Dave Wysochanski) [1893882] - [fs] NFS: More readdir cleanups (Dave Wysochanski) [1893882] - [fs] NFS: Support larger readdir buffers (Dave Wysochanski) [1893882] - [fs] NFS: Simplify struct nfs_cache_array_entry (Dave Wysochanski) [1893882] - [fs] NFS: Replace kmap() with kmap_atomic() in nfs_readdir_search_array() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary kmap in nfs_readdir_xdr_to_array() (Dave Wysochanski) [1893882] - [fs] NFS: Don't discard readdir results (Dave Wysochanski) [1893882] - [fs] NFS: Clean up directory array handling (Dave Wysochanski) [1893882] - [fs] NFS: Clean up nfs_readdir_page_filler() (Dave Wysochanski) [1893882] - [fs] NFS: Clean up readdir struct nfs_cache_array (Dave Wysochanski) [1893882] - [fs] NFS: Ensure contents of struct nfs_open_dir_context are consistent (Dave Wysochanski) [1893882] - [fs] NFSv4.2: condition READDIR's mask for security label based on LSM state (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode lock in nfs_fsync_dir() (Dave Wysochanski) [1893882] - [fs] NFS: Remove unnecessary inode locking in nfs_llseek_dir() (Dave Wysochanski) [1893882] - [netdrv] net: intel: Remove in_interrupt() warnings (Ken Cox) [1838732] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838732] - [netdrv] ixgbevf: use generic power management (Ken Cox) [1838732] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838732] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838732] - [iommu] vt-d: Don't dereference iommu_device if IOMMU_API is not built (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Gracefully handle DMAR units with no supported address widths (Vitaly Kuznetsov) [1887216] - [iommu] vt-d: Skip TE disabling on quirky gfx dedicated iommu (Vitaly Kuznetsov) [1887216] - [netdrv] Revert "mark the intel igc driver as tech preview" (Corinna Vinschen) [1838742] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up nvm_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Reject schedules with a base_time in the future (Corinna Vinschen) [1838742] - [netdrv] igc: Export a way to read the PTP timer (Corinna Vinschen) [1838742] - [netdrv] igc: Remove reset disable flag (Corinna Vinschen) [1838742] - [netdrv] igc: Save PTP time before a reset (Corinna Vinschen) [1838742] - [netdrv] igc: Remove references to SYSTIMR register (Corinna Vinschen) [1838742] - [netdrv] igc: Expose LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Clean RX descriptor error flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove timeout check from ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Don't reschedule ptp_tx work (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_TSYNCTXCTL_VALID macro (Corinna Vinschen) [1838742] - [netdrv] igc: Add new device ID's (Corinna Vinschen) [1838742] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838742] - [netdrv] igc: Fix not considering the TX delay for timestamps (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong timestamp latency numbers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix PTP initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Fix static checker warning (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the hw_stats structure (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ledctl_ fields from the mac_info structure (Corinna Vinschen) [1838742] - [netdrv] igc: Fix registers definition (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded ICTXQMTC register (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Descriptor Minimum Threshold Count to clear HW counters (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded variable (Corinna Vinschen) [1838742] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838742] - [netdrv] igc: Remove checking media type during MAC initialization (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded check for copper media type (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor the igc_power_down_link() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove TCP segmentation TX fail counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add LPI counters (Corinna Vinschen) [1838742] - [netdrv] igc: Fix Rx timestamp disabling (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ptp_set_timestamp_mode() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove UDP filter setup in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Check __IGC_PTP_TX_IN_PROGRESS instead of ptp_tx_skb (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicate code in Tx timestamp handling (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up Rx timestamping logic (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial LTR support (Corinna Vinschen) [1838742] - [netdrv] igc: Add initial EEE support (Corinna Vinschen) [1838742] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838742] - [netdrv] igc: Fix wrong register name (Corinna Vinschen) [1838742] - [netdrv] igc: Remove Sequence Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Add Receive Error Counter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove symbol error counter (Corinna Vinschen) [1838742] - [netdrv] igc: Fix IGC_MAX_RXNFC_RULES (Corinna Vinschen) [1838742] - [netdrv] igc: Reject NFC rules with multiple matches (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused descriptor's flags (Corinna Vinschen) [1838742] - [netdrv] igc: Remove igc_nfc_rule_exit() (Corinna Vinschen) [1838742] - [netdrv] igc: Change adapter->nfc_rule_lock to mutex (Corinna Vinschen) [1838742] - [netdrv] igc: Change return type from igc_disable_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule validation (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules leak when driver is unloaded (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_update_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules restoration (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rules with multicast addresses (Corinna Vinschen) [1838742] - [netdrv] igc: Fix NFC rule overwrite cases (Corinna Vinschen) [1838742] - [netdrv] igc: Fix locking issue when retrieving NFC rules (Corinna Vinschen) [1838742] - [netdrv] igc: Fix 'sw_idx' type in struct igc_nfc_rule (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor igc_ethtool_add_nfc_rule() (Corinna Vinschen) [1838742] - [netdrv] igc: Change byte order in struct igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Align terms used in NFC support code (Corinna Vinschen) [1838742] - [netdrv] igc: Add 'igc_ethtool_' prefix to functions in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: Early return in igc_get_ethtool_nfc_entry() (Corinna Vinschen) [1838742] - [netdrv] igc: Cleanup _get|set_rxnfc ethtool ops (Corinna Vinschen) [1838742] - [netdrv] igc: Get rid of igc_max_channels() (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused field from igc_nfc_filter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove per queue good transmited counter register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove header redirection register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove obsolete circuit breaker registers (Corinna Vinschen) [1838742] - [netdrv] igc: Enable NFC rules based source MAC address (Corinna Vinschen) [1838742] - [netdrv] igc: Add support for source address filters in core (Corinna Vinschen) [1838742] - [netdrv] igc: Remove mac_table from igc_adapter (Corinna Vinschen) [1838742] - [netdrv] igc: Remove IGC_MAC_STATE_SRC_ADDR flag (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused registers (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unused IGC_ICS_DRSTA define (Corinna Vinschen) [1838742] - [netdrv] igc: Dump ETQF registers (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor ethertype filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Fix MAX_ETYPE_FILTER value (Corinna Vinschen) [1838742] - [netdrv] igc: Remove ethertype filter in PTP code (Corinna Vinschen) [1838742] - [netdrv] igc: Remove duplicated IGC_RXPBS macro (Corinna Vinschen) [1838742] - [netdrv] igc: Refactor VLAN priority filtering code (Corinna Vinschen) [1838742] - [netdrv] igc: Return -EOPNOTSUPP when VLAN mask doesn't match (Corinna Vinschen) [1838742] - [netdrv] igc: Dump VLANPQF register (Corinna Vinschen) [1838742] - [netdrv] igc: Rename IGC_VLAPQF macro (Corinna Vinschen) [1838742] - [netdrv] igc: Clean up obsolete NVM defines (Corinna Vinschen) [1838742] - [netdrv] igc: remove IGC_REMOVED function (Corinna Vinschen) [1838742] - [netdrv] igc: Remove PCIe Control register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded register (Corinna Vinschen) [1838742] - [netdrv] igc: Remove unneeded definition (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_base.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_dump.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ptp.c (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_ethtool.c (Corinna Vinschen) [1838742] - [netdrv] igc: add support to eeprom, registers and link self-tests (Corinna Vinschen) [1838742] - [netdrv] igc: Use netdev log helpers in igc_main.c (Corinna Vinschen) [1838742] - [netdrv] igc: Add ECN support for TSO (Corinna Vinschen) [1838742] - [netdrv] ionic: fix mem leak in rx_empty (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: no rx flush in deinit (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: clean up sparse complaints (Jonathan Toppins) [1892492 1887516] - [netdrv] ionic: add new bad firmware error code (Jonathan Toppins) [1887516] - [netdrv] ionic: use lif ident for filter count (Jonathan Toppins) [1887516] - [netdrv] ionic: refill lif identity after fw_up (Jonathan Toppins) [1887516] - [netdrv] ionic: disable all queue napi contexts on timeout (Jonathan Toppins) [1887516] - [netdrv] ionic: check qcq ptr in ionic_qcq_disable (Jonathan Toppins) [1887516] - [netdrv] ionic: clear linkcheck bit on alloc fail (Jonathan Toppins) [1887516] - [netdrv] ionic: drain the work queue (Jonathan Toppins) [1887516] - [netdrv] ionic: contiguous memory for notifyq (Jonathan Toppins) [1887516] - [netdrv] ionic: prevent early watchdog check (Jonathan Toppins) [1887516] - [netdrv] ionic: stop watchdog timer earlier on remove (Jonathan Toppins) [1887516 1887263] - [netdrv] net: ionic: Remove WARN_ON(in_interrupt()) (Jonathan Toppins) [1887516] - [netdrv] net: ionic: Replace in_interrupt() usage (Jonathan Toppins) [1887516] - [netdrv] ionic: add DIMLIB to Kconfig (Jonathan Toppins) [1861520] - [netdrv] ionic: add devlink firmware update (Jonathan Toppins) [1861520] - [netdrv] ionic: update the fw update api (Jonathan Toppins) [1861520] - [netdrv] ionic: dynamic interrupt moderation (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up debugfs after queue swap (Jonathan Toppins) [1861520] - [netdrv] ionic: clarify boolean precedence (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused variable (Jonathan Toppins) [1861520] - [netdrv] ionic: clean adminq service routine (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up desc_info and cq_info structs (Jonathan Toppins) [1861520] - [netdrv] ionic: struct reorder for faster access (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up page handling code (Jonathan Toppins) [1861520] - [netdrv] ionic: fix txrx work accounting (Jonathan Toppins) [1861520] - [netdrv] ionic: pull reset_queues into tx_timeout handler (Jonathan Toppins) [1861520] - [netdrv] ionic: change queue count with no reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change the descriptor ring length without full reset (Jonathan Toppins) [1861520] - [netdrv] ionic: change mtu without full queue rebuild (Jonathan Toppins) [1861520] - [netdrv] ionic: use index not pointer for queue tracking (Jonathan Toppins) [1861520] - [netdrv] ionic: reduce contiguous memory allocation requirement (Jonathan Toppins) [1861520] - [netdrv] ionic: clean up unnecessary non-static functions (Jonathan Toppins) [1861520] - [netdrv] ionic: rework and simplify handling of the queue stats block (Jonathan Toppins) [1861520] - [netdrv] ionic: remove lif list concept (Jonathan Toppins) [1861520] - [netdrv] ionic: use kcalloc for new arrays (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up a couple of debug strings (Jonathan Toppins) [1861520] - [netdrv] ionic: set MTU floor at ETH_MIN_MTU (Jonathan Toppins) [1861520] - [netdrv] ionic_lif: Use devm_kcalloc() in ionic_qcq_alloc() (Jonathan Toppins) [1861520] - [netdrv] ionic: separate interrupt for Tx and Rx (Jonathan Toppins) [1861520] - [netdrv] ionic: tx separate servicing (Jonathan Toppins) [1861520] - [netdrv] ionic: use fewer firmware doorbells on rx fill (Jonathan Toppins) [1861520] - [netdrv] ionic: fix memory leak of object 'lid' (Jonathan Toppins) [1861520] - [netdrv] ionic: interface file updates (Jonathan Toppins) [1861520] - [netdrv] ionic: rearrange reset and bus-master control (Jonathan Toppins) [1861520] - [netdrv] ionic: update eid test for overflow (Jonathan Toppins) [1861520] - [netdrv] ionic: remove unused ionic_coal_hw_to_usec (Jonathan Toppins) [1861520] - [netdrv] ionic: set netdev default name (Jonathan Toppins) [1861520] - [netdrv] ionic: get MTU from lif identity (Jonathan Toppins) [1861520] - [netdrv] ionic: keep rss hash after fw update (Jonathan Toppins) [1861520] - [netdrv] ionic: update filter id after replay (Jonathan Toppins) [1861520] - [netdrv] ionic: fix up filter locks and debug msgs (Jonathan Toppins) [1861520] - [netdrv] ionic: use offset for ethtool regs data (Jonathan Toppins) [1861520] - [md] md/raid5: Allow degraded raid6 to do rmw (Nigel Croxon) [1856838] - [md] md/raid5: Fix Force reconstruct-write io stuck in degraded raid5 (Nigel Croxon) [1856838] - [md] raid5: don't duplicate code for different paths in handle_stripe (Nigel Croxon) [1856838] - [md] raid5-cache: hold spinlock instead of mutex in r5c_journal_mode_show (Nigel Croxon) [1856838] - [md] md: print errno in super_written (Nigel Croxon) [1856838] - [md] md/raid5: remove the redundant setting of STRIPE_HANDLE (Nigel Croxon) [1856838] - [md] md: register new md sysfs file 'uuid' read-only (Nigel Croxon) [1856838] - [md] md: fix max sectors calculation for super 1.0 (Nigel Croxon) [1856838] - [md] md/raid5: use do_div() for 64 bit divisions in raid5_sync_request (Nigel Croxon) [1856838] - [md] md/raid10: avoid deadlock on recovery (Nigel Croxon) [1856838] - [md] md-cluster: fix rmmod issue when md_cluster convert bitmap to none (Nigel Croxon) [1856838] - [md] md-cluster: fix safemode_delay value when converting to clustered bitmap (Nigel Croxon) [1856838] - [md] md/raid5: support config stripe_size by sysfs entry (Nigel Croxon) [1856838] - [md] md/raid5: set default stripe_size as 4096 (Nigel Croxon) [1856838] - [md] md/raid456: convert macro STRIPE_* to RAID5_STRIPE_* (Nigel Croxon) [1856838] - [md] raid5: remove the meaningless check in raid5_make_request (Nigel Croxon) [1856838] - [md] raid5: put the comment of clear_batch_ready to the right place (Nigel Croxon) [1856838] - [md] raid5: call clear_batch_ready before set STRIPE_ACTIVE (Nigel Croxon) [1856838] - [md] md: raid10: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5: Fix compilation warning (Nigel Croxon) [1856838] - [md] md: raid5-cache: Remove set but unused variable (Nigel Croxon) [1856838] - [md] md: Fix compilation warning (Nigel Croxon) [1856838] - [md] md-cluster: fix wild pointer of unlock_all_bitmaps() (Nigel Croxon) [1856838] - [md] md/raid5-cache: clear MD_SB_CHANGE_PENDING before flushing stripes (Nigel Croxon) [1856838] - [md] md: fix deadlock causing by sysfs_notify (Nigel Croxon) [1856838] - [md] md: raid0/linear: fix dereference before null check on pointer mddev (Nigel Croxon) [1856838] - [md] md/raid1: Replace zero-length array with flexible-array (Nigel Croxon) [1856838] - [md] md: add a newline when printing parameter 'start_ro' by sysfs (Nigel Croxon) [1856838] - [md] md: stop using ->queuedata (Nigel Croxon) [1856838] - [md] md/raid1: release pending accounting for an I/O only after write-behind is also finished (Nigel Croxon) [1856838] - [md] md: remove redundant memalloc scope API usage (Nigel Croxon) [1856838] - [md] raid5: update code comment of scribble_alloc() (Nigel Croxon) [1856838] - [md] raid5: remove gfp flags from scribble_alloc() (Nigel Croxon) [1856838] - [md] md: use memalloc scope APIs in mddev_suspend()/mddev_resume() (Nigel Croxon) [1856838] - [md] md: remove the extra line for ->hot_add_disk (Nigel Croxon) [1856838] - [md] md: flush md_rdev_misc_wq for HOT_ADD_DISK case (Nigel Croxon) [1856838] - [md] md: don't flush workqueue unconditionally in md_open (Nigel Croxon) [1856838] - [md] md: add new workqueue for delete rdev (Nigel Croxon) [1856838] - [md] md: add checkings before flush md_misc_wq (Nigel Croxon) [1856838] - [md] md: check arrays is suspended in mddev_detach before call quiesce operations (Nigel Croxon) [1856838]- [scsi] storvsc: Fix error return in storvsc_probe() (Cathy Avery) [1895026] - [scsi] storvsc: Support PAGE_SIZE larger than 4K (Cathy Avery) [1895026] - [kernel] hv: hyperv.h: Introduce some hvpfn helper functions (Cathy Avery) [1895026] - [scsi] storvsc: Add validation for untrusted Hyper-V values (Cathy Avery) [1895026] - [scsi] storvsc: Fix spelling mistake (Cathy Avery) [1895026] - [scsi] storvsc: Remove memset before memory freeing in storvsc_suspend() (Cathy Avery) [1895026] - [net] tipc: fix incorrect setting window for bcast link (Xin Long) [1893085] - [net] tipc: re-configure queue limit for broadcast link (Xin Long) [1893085] - [net] tipc: fix NULL pointer dereference in tipc_named_rcv (Xin Long) [1893085] - [net] tipc: Supply missing udp_media.h include file (Xin Long) [1893085] - [net] tipc: add automatic rekeying for encryption key (Xin Long) [1893085] - [net] tipc: add automatic session key exchange (Xin Long) [1893085] - [net] tipc: introduce encryption master key (Xin Long) [1893085] - [net] tipc: optimize key switching time and logic (Xin Long) [1893085] - [net] tipc: Fix memory leak in tipc_group_create_member() (Xin Long) [1893085] - [net] tipc: fix shutdown() of connection oriented socket (Xin Long) [1893085] - [net] tipc: fix a deadlock when flushing scheduled work (Xin Long) [1893085] - [net] tipc: fix shutdown() of connectionless socket (Xin Long) [1893085] - [net] tipc: fix using smp_processor_id() in preemptible (Xin Long) [1893085] - [net] tipc: fix use-after-free in tipc_bcast_get_mode (Xin Long) [1893085] - [net] tipc: call rcu_read_lock() in tipc_aead_encrypt_done() (Xin Long) [1893085] - [net] tipc: fix uninit skb->data in tipc_nl_compat_dumpit() (Xin Long) [1893085] - [net] tipc: update a binding service via broadcast (Xin Long) [1893085] - [hv] hv_balloon: do adjust_managed_page_count() when ballooning/un-ballooning (Vitaly Kuznetsov) [1894717] - [hv] hv_balloon: simplify math in alloc_balloon_pages() (Vitaly Kuznetsov) [1894717] - [md] dm integrity: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [md] dm crypt: don't use drivers that have CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [crypto] crypto: drivers - set the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [include] crypto: algapi - introduce the flag CRYPTO_ALG_ALLOCATES_MEMORY (Vladis Dronov) [1903849] - [fs] iomap: Set all uptodate bits for an Uptodate page (Brian Foster) [1654127] - [scsi] scsi: ibmvfc: Avoid link down on FS9100 canister reboot (Desnes Augusto Nunes do Rosario) [1882613] - [scsi] scsi: ibmvfc: Use compiler attribute defines instead of __attribute__() (Desnes Augusto Nunes do Rosario) [1882613] - [arm64] arm64: Enable PCI write-combine resources under sysfs (Petr Oros) [1872943] - [scsi] scsi: mpt3sas: Bump driver version to 35.101.00.00 (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add module parameter multipath_on_hba (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handle vSES vphy object during HBA reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Add bypass_dirty_port_flag parameter (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Handling HBA vSES device (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Set valid PhysicalPort in SMPPassThrough (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port objects after host reset (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get sas_device objects using device's rphy (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rename transport_del_phy_from_an_existing_port() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Get device objects using sas_address & portID (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Update hba_port's sas_address & phy_mask (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Rearrange _scsih_mark_responding_sas_device() (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Allocate memory for hba_port objects (Tomas Henzl) [1888543] - [scsi] scsi: mpt3sas: Define hba_port structure (Tomas Henzl) [1888543]- [netdrv] net: phy: realtek: Modify 2.5G PHY name to RTL8226 (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: enable ALDPS to save power for RTL8211F (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: fix rtl8211e rx/tx delay config (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add support for RTL8125B-internal PHY (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: add delay to resume path of certain internal PHY's (Josef Oskera) [1889854] - [netdrv] net: phy: realtek: read actual speed to detect downshift (Josef Oskera) [1889854] - [netdrv] r8169: fix issue with forced threading in combination with shared interrupts (Josef Oskera) [1889854] - [netdrv] r8169: fix operation under forced interrupt threading (Josef Oskera) [1889854] - [netdrv] r8169: factor out handling rtl8169_stats (Josef Oskera) [1889854] - [netdrv] r8169: consider that PHY reset may still be in progress after applying firmware (Josef Oskera) [1889854] - [netdrv] r8169: fix data corruption issue on RTL8402 (Josef Oskera) [1889854] - [netdrv] r8169: fix handling ether_clk (Josef Oskera) [1889854] - [netdrv] r8169: fix RTL8168f/RTL8411 EPHY config (Josef Oskera) [1889854] - [netdrv] r8169: remove member irq_enabled from struct rtl8169_private (Josef Oskera) [1889854] - [netdrv] r8169: use napi_complete_done return value (Josef Oskera) [1889854] - [netdrv] r8169: allow to enable ASPM on RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: add support for RTL8125B (Josef Oskera) [1889854] - [netdrv] r8169: sync support for RTL8401 with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: merge handling of RTL8101e and RTL8100e (Josef Oskera) [1889854] - [netdrv] r8169: rename RTL8125 to RTL8125A (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_runtime_resume (Josef Oskera) [1889854] - [netdrv] r8169: remove driver-specific mutex (Josef Oskera) [1889854] - [netdrv] r8169: use RTNL to protect critical sections (Josef Oskera) [1889854] - [netdrv] r8169: add rtl8169_up (Josef Oskera) [1889854] - [netdrv] r8169: remove no longer needed checks for device being runtime-active (Josef Oskera) [1889854] - [netdrv] r8169: mark device as not present when in PCI D3 (Josef Oskera) [1889854] - [netdrv] r8169: allow setting irq coalescing if link is down (Josef Oskera) [1889854] - [netdrv] r8169: move switching optional clock on/off to pll power functions (Josef Oskera) [1889854] - [netdrv] r8169: move updating counters to rtl8169_down (Josef Oskera) [1889854] - [netdrv] r8169: move napi_disable call and rename rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: replace synchronize_rcu with synchronize_net (Josef Oskera) [1889854] - [netdrv] r8169: improve setting WoL on runtime-resume (Josef Oskera) [1889854] - [netdrv] r8169: remove unused constant RsvdMask (Josef Oskera) [1889854] - [netdrv] r8169: add info for DASH being enabled (Josef Oskera) [1889854] - [netdrv] r8169: fix failing WoL (Josef Oskera) [1889854] - [netdrv] r8169: improve handling power management ops (Josef Oskera) [1889854] - [netdrv] r8169: make rtl8169_down central chip quiesce function (Josef Oskera) [1889854] - [netdrv] r8169: move some calls to rtl8169_hw_reset (Josef Oskera) [1889854] - [netdrv] r8169: don't reset tx ring indexes in rtl8169_tx_clear (Josef Oskera) [1889854] - [netdrv] r8169: enable WAKE_PHY as only WoL source when runtime-suspending (Josef Oskera) [1889854] - [netdrv] r8169: change driver data type (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_remove_one (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168f/RTL8411 hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168evl hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168h hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: sync RTL8168g hw config with vendor driver (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168ep_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from r8168dp_ocp_read (Josef Oskera) [1889854] - [netdrv] r8169: remove mask argument from rtl_w0w1_eri (Josef Oskera) [1889854] - [netdrv] r8169: work around an irq coalescing related tx timeout (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_mark_to_asic (Josef Oskera) [1889854] - [netdrv] r8169: make rtl_rx better readable (Josef Oskera) [1889854] - [netdrv] r8169: remove remaining call to mdiobus_unregister (Josef Oskera) [1889854] - [netdrv] r8169: don't include linux/moduleparam.h (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed checks in rtl8169_set_eee (Josef Oskera) [1889854] - [netdrv] r8169: improve reset handling for chips from RTL8168g (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_wait_txrx_fifo_empty (Josef Oskera) [1889854] - [netdrv] r8169: add helper rtl_enable_rxdvgate (Josef Oskera) [1889854] - [netdrv] r8169: add helper r8168g_wait_ll_share_fifo_ready (Josef Oskera) [1889854] - [netdrv] r8169: use fsleep in polling functions (Josef Oskera) [1889854] - [netdrv] r8169: use new helper eth_hw_addr_crc (Josef Oskera) [1889854] - [netdrv] r8169: switch from netif_xxx message functions to netdev_xxx (Josef Oskera) [1889854] - [netdrv] r8169: remove "out of memory" error message from rtl_request_firmware (Josef Oskera) [1889854] - [netdrv] r8169: simplify counter handling (Josef Oskera) [1889854] - [netdrv] r8169: remove redundant driver message when entering promiscuous mode (Josef Oskera) [1889854] - [netdrv] r8169: remove not needed parameter in rtl8169_set_magic_reg (Josef Oskera) [1889854] - [netdrv] r8169: configure PME_SIGNAL for RTL8125 too (Josef Oskera) [1889854] - [netdrv] r8169: improve max jumbo packet size definition (Josef Oskera) [1889854] - [netdrv] r8169: add check for invalid parameter combination in rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_set_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: improve interrupt coalescing parameter handling (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_coalesce_choose_scale (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl_get_coalesce (Josef Oskera) [1889854] - [netdrv] r8169: merge scale for tx and rx irq coalescing (Josef Oskera) [1889854] - [netdrv] r8169: don't pass net_device to irq coalescing sub-functions (Josef Oskera) [1889854] - [netdrv] r8169: improve error message if no dedicated PHY driver is found (Josef Oskera) [1889854] - [netdrv] r8169: improve configuring RxConfig register (Josef Oskera) [1889854] - [netdrv] r8169: improve handling CPCMD_MASK (Josef Oskera) [1889854] - [netdrv] r8169: use devm_mdiobus_register (Josef Oskera) [1889854] - [netdrv] r8169: change wmb to smb_wmb in rtl8169_start_xmit (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_make_unusable_by_asic (Josef Oskera) [1889854] - [netdrv] r8169: inline rtl8169_mark_as_last_descriptor (Josef Oskera) [1889854] - [netdrv] r8169: remove PHY resume delay that is handled in the PHY driver now (Josef Oskera) [1889854] - [netdrv] r8169: add workaround for RTL8168evl TSO hw issues (Josef Oskera) [1889854] - [netdrv] r8169: improve rtl8169_tso_csum_v2 (Josef Oskera) [1889854] - [netdrv] r8169: use rtl8169_set_features in rtl8169_init_one (Josef Oskera) [1889854] - [netdrv] r8169: preserve VLAN setting on RTL8125 in rtl_init_rxcfg (Josef Oskera) [1889854] - [netdrv] r8169: remove NETIF_F_HIGHDMA from vlan_features (Josef Oskera) [1889854] - [netdrv] r8169: move setting OCP base to generic init code (Josef Oskera) [1889854] - [s390] sclp: provide extended sccb support (Thomas Huth) [1798484] - [s390] sclp: avoid copy of sclp_info_sccb (Thomas Huth) [1798484] - [s390] sclp: use memblock for early read cpu info (Thomas Huth) [1798484] - [include] ptp: add stub function for ptp_get_msgtype() (Ivan Vecera) [1899217] - [include] ptp: Add generic ptp message type function (Ivan Vecera) [1899217] - [net] ptp: Add generic ptp v2 header parsing function (Ivan Vecera) [1899217] - [video] hyperv_fb: Fix the cache type when mapping the VRAM (Mohammed Gamal) [1886106] - [video] hyperv_fb: include vmalloc.h (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1886106] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1886106] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1886106] - [uio] uio_hv_generic: add missed sysfs_remove_bin_file (Mohammed Gamal) [1886106] - [input] hyperv-keyboard: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [hid] hyperv: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886106] - [netdrv] hv_netvsc: Add validation for untrusted Hyper-V values (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix the queue_mapping in netvsc_vf_xmit() (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove "unlikely" from netvsc_select_queue (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: do not use VF device if link is down (Mohammed Gamal) [1886097] - [netdrv] hyperv: dump TX indirection table to ethtool regs (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: add support for vlans in AF_PACKET mode (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Fix netvsc_start_xmit's return type (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: Remove unnecessary round_up for recv_completion_cnt (Mohammed Gamal) [1886097] - [netdrv] hv_netvsc: use new helper tcp_v6_gso_csum_prep (Mohammed Gamal) [1886097] - [tools] kvm_stat: add sample systemd unit file (Thomas Huth) [1851123] - [tools] kvm_stat: Add command line switch '-L' to log to file (Thomas Huth) [1851123] - [tools] kvm_stat: add command line switch '-z' to skip zero records (Thomas Huth) [1851123] - [mm] mm/gup: Mark lock taken only after a successful retake (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: fix a data race in filemap_fault() (Chris von Recklinghausen) [1885412] - [mm] mm: fix kthread_use_mm() vs TLB invalidate (Chris von Recklinghausen) [1885412] - [fs] kernel: set USER_DS in kthread_use_mm (Chris von Recklinghausen) [1885412] - [drm] kernel: better document the use_mm/unuse_mm API contract (Chris von Recklinghausen) [1885412] - [kernel] kernel: move use_mm/unuse_mm to kthread.c (Chris von Recklinghausen) [1885412] - [drm] drm/i915: convert get_user_pages() --> pin_user_pages() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: introduce pin_user_pages_fast_only() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: refactor and de-duplicate gup_fast() code (Chris von Recklinghausen) [1885412] - [mm] mm/gup: move __get_user_pages_fast() down a few lines in gup.c (Chris von Recklinghausen) [1885412] - [mm] gup: document and work around "COW can break either way" issue (Chris von Recklinghausen) [1885412] - [vfio] vfio: checking of validity of user vaddr in vfio_dma_rw (Chris von Recklinghausen) [1885412] - [fs] mm/userfaultfd: honor FAULT_FLAG_KILLABLE in fault path (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow to react to fatal signals (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [mm] mm: allow VM_FAULT_RETRY for multiple times (Chris von Recklinghausen) [1885412] - [fs] mm: introduce FAULT_FLAG_INTERRUPTIBLE (Chris von Recklinghausen) [1885412] - [mm] mm: introduce FAULT_FLAG_DEFAULT (Chris von Recklinghausen) [1885412] - [fs] userfaultfd: don't retake mmap_sem to emulate NOPAGE (Chris von Recklinghausen) [1885412] - [include] mm: return faster for non-fatal signals in user mode faults (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] arm64/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] x86/mm: use helper fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm: introduce fault_signal_pending() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: fix __get_user_pages() on fault retry of hugetlb (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename "nonblocking" to "locked" where proper (Chris von Recklinghausen) [1885412] - [mm] mm/gup: rename nr as nr_pinned in get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/gup: require FOLL_GET for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/filemap.c: don't bother dropping mmap_sem for zero size readahead (Chris von Recklinghausen) [1885412] - [mm] mm/slb: export __kmalloc_track(_node)_caller (Chris von Recklinghausen) [1885412] - [mm] mm: Add vmf_insert_pfn_xxx_prot() for huge page-table entries (Chris von Recklinghausen) [1885412] - [vfio] vfio: introduce vfio_dma_rw to read/write a range of IOVAs (Chris von Recklinghausen) [1885412] - [infiniband] mm, tree-wide: rename put_user_page*() to unpin_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm/gup_benchmark: use proper FOLL_WRITE flags instead of hard-coding "1" (Chris von Recklinghausen) [1885412] - [mm] powerpc: book3s64: convert to pin_user_pages() and put_user_page() (Chris von Recklinghausen) [1885412] - [vfio] vfio, mm: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: pin_user_pages (FOLL_PIN) and put_user_page() conversion (Chris von Recklinghausen) [1885412] - [net] net/xdp: set FOLL_PIN via pin_user_pages() (Chris von Recklinghausen) [1885412] - [drm] drm/via: set FOLL_PIN via pin_user_pages_fast() (Chris von Recklinghausen) [1885412] - [mm] mm/process_vm_access: set FOLL_PIN via pin_user_pages_remote() (Chris von Recklinghausen) [1885412] - [infiniband] IB/{core, hw, umem}: set FOLL_PIN via pin_user_pages*(), fix up ODP (Chris von Recklinghausen) [1885412] - [documentation] mm/gup: introduce pin_user_pages*() and FOLL_PIN (Chris von Recklinghausen) [1885412] - [media] media/v4l2-core: set pages dirty upon releasing DMA buffers (Chris von Recklinghausen) [1885412] - [mm] mm/gup: allow FOLL_FORCE for get_user_pages_fast() (Chris von Recklinghausen) [1885412] - [vfio] vfio: fix FOLL_LONGTERM use, simplify get_user_pages_remote() call (Chris von Recklinghausen) [1885412] - [mm] mm: fix get_user_pages_remote()'s handling of FOLL_LONGTERM (Chris von Recklinghausen) [1885412] - [mm] mm/gup: factor out duplicate code from four routines (Chris von Recklinghausen) [1885412] - [mm] mm: drop mmap_sem before calling balance_dirty_pages() in write fault (Chris von Recklinghausen) [1885412] - [vfio] vfio/type1: untag user pointers in vaddr_get_pfn (Chris von Recklinghausen) [1885412] - [mm] mm: untag user pointers in mm/gup.c (Chris von Recklinghausen) [1885412] - [drm] drivers/gpu/drm/via: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [fs] fs/io_uring.c: convert put_page() to put_user_page*() (Chris von Recklinghausen) [1885412] - [mm] mm: mark the page referenced in gup_hugepte (Chris von Recklinghausen) [1885412] - [mm] mm: switch gup_hugepte to use try_get_compound_head (Chris von Recklinghausen) [1885412] - [mm] mm: move the powerpc hugepd code to mm/gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: validate get_user_pages_fast flags (Chris von Recklinghausen) [1885412] - [mm] mm: consolidate the get_user_pages* implementations (Chris von Recklinghausen) [1885412] - [mm] mm: reorder code blocks in gup.c (Chris von Recklinghausen) [1885412] - [mm] mm: rename CONFIG_HAVE_GENERIC_GUP to CONFIG_HAVE_FAST_GUP (Chris von Recklinghausen) [1885412] - [x86] mm: lift the x86_32 PAE version of gup_get_pte to common code (Chris von Recklinghausen) [1885412] - [s390] mm: simplify gup_fast_permitted (Chris von Recklinghausen) [1885412] - [mm] mm: use untagged_addr() for get_user_pages_fast addresses (Chris von Recklinghausen) [1885412] - [mm] powerpc/mm: make gup_hugepte() static (Chris von Recklinghausen) [1885412] - [mm] filemap: drop the mmap_sem for all blocking operations (Chris von Recklinghausen) [1885412] - [mm] filemap: kill page_cache_read usage in filemap_fault (Chris von Recklinghausen) [1885412] - [mm] filemap: pass vm_fault to the mmap ra helpers (Chris von Recklinghausen) [1885412] - [mm] docs/core-api/mm: fix return value descriptions in mm/ (Chris von Recklinghausen) [1885412] - [mm] docs/mm: vmalloc: re-indent kernel-doc comemnts (Chris von Recklinghausen) [1885412] - [drm] drm/via: mark expected switch fall-throughs (Chris von Recklinghausen) [1885412] - [mm] x86/mm: Break out kernel address space handling (Chris von Recklinghausen) [1885412] - [kernel] locking/rwsem: Remove reader optimistic spinning (Waiman Long) [1895046] - [kernel] locking/rwsem: Enable reader optimistic lock stealing (Waiman Long) [1895046] - [kernel] locking/rwsem: Prevent potential lock starvation (Waiman Long) [1895046] - [kernel] locking/rwsem: Pass the current atomic count to rwsem_down_read_slowpath() (Waiman Long) [1895046] - [kernel] locking/rwsem: Fold __down_{read,write}*() (Waiman Long) [1895046] - [kernel] locking/rwsem: Introduce rwsem_write_trylock() (Waiman Long) [1895046] - [kernel] locking/rwsem: Better collate rwsem_read_trylock() (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_interruptible (Waiman Long) [1895046] - [kernel] rwsem: Implement down_read_killable_nested (Waiman Long) [1895046] - [powerpc] powerpc/perf: Fix crash with is_sier_available when pmu is not set (Steve Best) [1904225] - [powerpc] kvm: ppc: book3s hv: xive: Fix vCPU id sanity check (Greg Kurz) [1902709] - [net] ip6_gre: set dev->hard_header_len when using header_ops (Antoine Tenart) [1895789] - [fs] xfs: flush new eof page on truncate to avoid post-eof corruption (Brian Foster) [1878495] - [netdrv] bonding: set dev->needed_headroom in bond_setup_by_slave() (Antoine Tenart) [1903073] - [net] netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING traversal (Antoine Tenart) [1901026] - [infiniband] RDMA/umem: Prevent small pages from being returned by ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [infiniband] IB/hfi1: Fix error return code in hfi1_init_dd() (Kamal Heib) [1857605] - [infiniband] RDMA/pvrdma: Fix missing kfree() in pvrdma_register_device() (Kamal Heib) [1857605] - [infiniband] RDMA/cm: Make the local_id_table xarray non-irq (Kamal Heib) [1857605] - [infiniband] IB/srpt: Fix memory leak in srpt_add_one (Kamal Heib) [1857605] - [infiniband] RDMA/bnxt_re: Set queue pair state when being queried (Kamal Heib) [1894681 1857605] - [infiniband] RDMA/rxe: Handle skb_clone() failure in rxe_recv.c (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix bug rejecting all multicast packets (Kamal Heib) [1857605] - [infiniband] RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt() (Kamal Heib) [1857605] - [infiniband] IB/rdmavt: Fix sizeof mismatch (Kamal Heib) [1857605] - [infiniband] RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces (Kamal Heib) [1883480 1883478 1857605] - [infiniband] RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel() (Kamal Heib) [1857605] - [rdma] RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz() (Kamal Heib) [1857605] - [x86] kretprobe: Prevent triggering kretprobe from within kprobe_flush_task (Jerome Marchand) [1821265] - [netdrv] net: intel: Remove in_interrupt() warnings (Jonathan Toppins) [1891101] - [netdrv] ice: fix adding IP4 IP6 Flow Director rules (Jonathan Toppins) [1891101] - [netdrv] ice: Fix pointer cast warnings (Jonathan Toppins) [1891101] - [netdrv] ice: refactor devlink_port to be per-VSI (Jonathan Toppins) [1891101] - [netdrv] ice: add the DDP Track ID to devlink info (Jonathan Toppins) [1891101] - [netdrv] ice: Change ice_info_get_dsn to be void (Jonathan Toppins) [1891101] - [netdrv] ice: remove repeated words (Jonathan Toppins) [1891101] - [netdrv] ice: devlink: use *phD to print small buffer (Jonathan Toppins) [1891101] - [netdrv] ice: preserve NVM capabilities in safe mode (Jonathan Toppins) [1891101] - [netdrv] ice: increase maximum wait time for flash write commands (Jonathan Toppins) [1891101] - [netdrv] ice: remove unused args from ice_get_open_tunnel_port() (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak in ice_vsi_setup (Jonathan Toppins) [1891101] - [netdrv] ice: fix memory leak if register_netdev_fails (Jonathan Toppins) [1891101] - [netdrv] ice: Fix call trace on suspend (Jonathan Toppins) [1891101] - [netdrv] ice: simplify the return expression of ice_finalize_update() (Jonathan Toppins) [1891101] - [netdrv] ice: Misc minor fixes (Jonathan Toppins) [1838737] - [netdrv] ice: adjust profile ID map locks (Jonathan Toppins) [1838737] - [netdrv] ice: update PTYPE lookup table (Jonathan Toppins) [1838737] - [netdrv] ice: Graceful error handling in HW table calloc failure (Jonathan Toppins) [1838737] - [netdrv] ice: port fix for chk_linearlize (Jonathan Toppins) [1838737] - [netdrv] ice: Allow 2 queue pairs per VF on SR-IOV initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Clear and free XLT entries on reset (Jonathan Toppins) [1838737] - [netdrv] ice: add useful statistics (Jonathan Toppins) [1838737] - [netdrv] ice: remove page_reuse statistic (Jonathan Toppins) [1838737] - [netdrv] ice: Fix RSS profile locks (Jonathan Toppins) [1838737] - [netdrv] ice: fix the vsi_id mask to be 10 bit for set_rss_lut (Jonathan Toppins) [1838737] - [netdrv] ice: rename misleading grst_delay variable (Jonathan Toppins) [1838737] - [netdrv] ice: mark PM functions as __maybe_unused (Jonathan Toppins) [1838737] - [netdrv] ice: fix unused parameter warning (Jonathan Toppins) [1838737] - [netdrv] ice: disable no longer needed workaround for FW logging (Jonathan Toppins) [1838737] - [netdrv] ice: reduce scope of variable (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI on probe fail (Jonathan Toppins) [1838737] - [netdrv] ice: Allow all VLANs in safe mode (Jonathan Toppins) [1838737] - [netdrv] ice: need_wakeup flag might not be set for Tx (Jonathan Toppins) [1838737] - [netdrv] ice: distribute Tx queues evenly (Jonathan Toppins) [1838737] - [netdrv] ice: Adjust scheduler default BW weight (Jonathan Toppins) [1838737] - [netdrv] ice: Add RL profile bit mask check (Jonathan Toppins) [1838737] - [netdrv] ice: fix overwriting TX/RX descriptor values when rebuilding VSI (Jonathan Toppins) [1838737] - [netdrv] ice: return correct error code from ice_aq_sw_rules (Jonathan Toppins) [1838737] - [netdrv] ice: restore VF MSI-X state during PCI reset (Jonathan Toppins) [1838737] - [netdrv] ice: fix link event handling timing (Jonathan Toppins) [1838737] - [netdrv] ice: Fix link broken after GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Implement LFC workaround (Jonathan Toppins) [1838737] - [netdrv] ice: implement device flash update via devlink (Jonathan Toppins) [1838737] - [netdrv] ice: add flags indicating pending update of firmware module (Jonathan Toppins) [1838737] - [netdrv] ice: Add AdminQ commands for FW update (Jonathan Toppins) [1838737] - [netdrv] ice: Add support for unified NVM update flow capability (Jonathan Toppins) [1838737] - [netdrv] ice: add 1G SGMII PHY type (Jonathan Toppins) [1838737] - [netdrv] ice: Report AOC PHY Types as Fiber (Jonathan Toppins) [1838737] - [netdrv] ice: add AQC get link topology handle support (Jonathan Toppins) [1838737] - [netdrv] ice: Rename low_power_ctrl (Jonathan Toppins) [1838737] - [netdrv] ice: update reporting of autoneg capabilities (Jonathan Toppins) [1838737] - [netdrv] ice: add ice_aq_get_phy_caps() debug logs (Jonathan Toppins) [1838737] - [netdrv] ice: support Total Port Shutdown on devices that support it (Jonathan Toppins) [1838737] - [netdrv] ice: add link lenient and default override support (Jonathan Toppins) [1838737] - [netdrv] ice: restore PHY settings on media insertion (Jonathan Toppins) [1838737] - [netdrv] ice: move auto FEC checks into ice_cfg_phy_fec() (Jonathan Toppins) [1838737] - [netdrv] ice: refactor FC functions (Jonathan Toppins) [1838737] - [netdrv] ice: Add advanced power mgmt for WoL (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_discover_caps into two functions (Jonathan Toppins) [1838737] - [netdrv] ice: split ice_parse_caps into separate functions (Jonathan Toppins) [1838737] - [netdrv] ice: refactor ice_discover_caps to avoid need to retry (Jonathan Toppins) [1838737] - [netdrv] ice: replace single-element array used for C struct hack (Jonathan Toppins) [1838737] - [netdrv] ice: avoid unnecessary single-member variable-length structs (Jonathan Toppins) [1838737] - [netdrv] ice: implement snapshot for device capabilities (Jonathan Toppins) [1838737] - [netdrv] net/intel: remove driver versions from Intel drivers (Jonathan Toppins) [1838737] - [netdrv] ice: protect ring accesses with WRITE_ONCE (Jonathan Toppins) [1838737] - [netdrv] ice: Ignore EMODE when setting PHY config (Jonathan Toppins) [1838737] - [netdrv] ice: fix aRFS after flow director delete (Jonathan Toppins) [1838737] - [netdrv] ice: Use coalesce values from q_vector 0 when increasing q_vectors (Jonathan Toppins) [1838737] - [netdrv] ice: fix PCI device serial number to be lowercase values (Jonathan Toppins) [1838737] - [netdrv] ice: fix function signature style format (Jonathan Toppins) [1838737] - [netdrv] ice: Allow VF to request reset as soon as it's initialized (Jonathan Toppins) [1838737] - [netdrv] ice: Fix inability to set channels when down (Jonathan Toppins) [1838737] - [netdrv] ice: Always clear QRXFLXP_CNTXT before writing new value (Jonathan Toppins) [1838737] - [netdrv] ice: Reset VF for all port VLAN changes from host (Jonathan Toppins) [1838737] - [netdrv] ice: Update ICE_PHY_TYPE_HIGH_MAX_INDEX value (Jonathan Toppins) [1838737] - [netdrv] ice: Increase timeout after PFR (Jonathan Toppins) [1838737] - [netdrv] ice: Fix transmit for all software offloaded VLANs (Jonathan Toppins) [1838737] - [netdrv] ice: support adding 16 unicast/multicast filter on untrusted VF (Jonathan Toppins) [1838737] - [netdrv] ice: allow host to clear administratively set VF MAC (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF VSI release and setup functions (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor VF reset (Jonathan Toppins) [1838737] - [netdrv] ice: remove VM/VF disable command on CORER/GLOBR reset (Jonathan Toppins) [1838737] - [netdrv] ice: Add functions to rebuild host VLAN/MAC config for a VF (Jonathan Toppins) [1838737] - [netdrv] ice: Add function to set trust mode bit on reset (Jonathan Toppins) [1838737] - [netdrv] ice: Renaming and simplification in VF init path (Jonathan Toppins) [1838737] - [netdrv] ice: Separate VF VSI initialization/creation from reset flow (Jonathan Toppins) [1838737] - [netdrv] ice: Add helper function for clearing VPGEN_VFRTRIG (Jonathan Toppins) [1838737] - [netdrv] ice: Simplify ice_sriov_configure (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor ice_ena_vf_mappings to split MSIX and queue mappings (Jonathan Toppins) [1838737] - [netdrv] ice: Declare functions static (Jonathan Toppins) [1838737] - [netdrv] ice: fix kernel BUG if register_netdev fails (Jonathan Toppins) [1838737] - [netdrv] ice: fix potential double free in probe unrolling (Jonathan Toppins) [1838737] - [netdrv] ice: cleanup VSI context initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Poll for reset completion when DDP load fails (Jonathan Toppins) [1838737] - [netdrv] ice: Check UMEM FQ size when allocating bufs (Jonathan Toppins) [1838737] - [netdrv] ice: Refactor Rx checksum checks (Jonathan Toppins) [1838737] - [netdrv] ice: avoid undefined behavior (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP Tx queues to match number of Rx queues (Jonathan Toppins) [1838737] - [netdrv] ice: Add XDP Tx to VSI ring stats (Jonathan Toppins) [1838737] - [netdrv] ice: Change number of XDP TxQ to 0 when destroying rings (Jonathan Toppins) [1838737] - [netdrv] ice: Handle critical FW error during admin queue initialization (Jonathan Toppins) [1838737] - [netdrv] ice: Don't allow VLAN stripping change when pvid set (Jonathan Toppins) [1838737] - [netdrv] ice: Add more Rx errors to netdev's rx_error counter (Jonathan Toppins) [1838737] - [netdrv] ice: Fix for memory leaks and modify ICE_FREE_CQ_BUFS (Jonathan Toppins) [1838737] - [netdrv] ice: Fix memory leak (Jonathan Toppins) [1838737] - [netdrv] ice: fix MAC write command (Jonathan Toppins) [1838737] - [netdrv] ice: set VF default LAN address (Jonathan Toppins) [1838737] - [netdrv] ice: remove unused macro (Jonathan Toppins) [1838737] - [netdrv] ice: fix signed vs unsigned comparisons (Jonathan Toppins) [1838737] - [netdrv] ice: Fix error return code in ice_add_prof() (Jonathan Toppins) [1838737] - [netdrv] ice: replace "fallthrough" comments with fallthrough reserved word (Jonathan Toppins) [1838737]- [kernel] kernel/crash: reserve more memory for fadump (Pingfan Liu) [1891043] - [powerpc] pseries: Pass MSI affinity to irq_create_mapping() (Laurent Vivier) [1702939] - [kernel] genirq/irqdomain: Add an irq_create_mapping_affinity() function (Laurent Vivier) [1702939] - [powerpc] powerpc/perf: Use regs->nip when SIAR is zero (Steve Best) [1903731] - [powerpc] powerpc/perf: Use the address from SIAR register to set cpumode flags (Steve Best) [1903731] - [powerpc] powerpc/perf: Drop the check for SIAR_VALID (Steve Best) [1903731] - [powerpc] powerpc/perf: Add new power PMU flag "PPMU_P10_DD1" for power10 DD1 (Steve Best) [1903731] - [netdrv] net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initialize QP mutex for the debug kernels (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow providing extra scatter CQE QP flag (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Query PPS pin operational status before registering it (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix slab-out-of-bounds in mlx5e_rep_is_lag_netdev (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Verify Hardware supports requested ptp function on a given pin (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of using ptp channel index as pin index (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix error path of device attach (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix forward to next namespace (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR after reload interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-switch, Destroy TSAR when fail to enable the mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prevent prefetch from racing with implicit destruction (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use xa_lock_irq when access to SRQ table (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fix usage of rcu-protected pointer (Alaa Hleihel) [1858560] - [netdrv] net/mxl5e: Verify that rpriv is not NULL (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix vlan or qos setting in legacy mode (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set PD pointers for the error flow unwind (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix legacy IPoIB QP initialization (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Protect from kernel crash if XRC_TGT doesn't have udata (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix integrity enabled QP creation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove ECE limitation from the RAW_PACKET QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix remote gid value in query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't access ib_qp fields in internal destroy QP path (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add missed RST2INIT and INIT2INIT steps during ECE handshake (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix -Wformat warning in check_ucmd_data() (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to resp.response_length (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Fix some error pointer dereferences (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE DC support (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Don't rely on FW to set zeros in ECE response (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return an error if copy_to_user fails (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make mlx5e_dcbnl_ops static (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: reduce stack usage in qp_read_field (Alaa Hleihel) [1858560] - [netdrv] mlx5: fix xdp data_meta setup in mlx5e_fill_xdp_buff (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Support TX port affinity for VF drivers in LAG mode (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Optimize performance for IPv4/IPv6 ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Helper function to set ethertype (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use change upper event to setup representors' bond_metadata (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Slave representors sharing unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Alloc and free unique metadata for match (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Add bond_metadata and its slave entries (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Offload flow rules to active lower representor (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Support tc block sharing for representors (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use netdev events to set/del egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Introduce APIs to enable egress acl forward-to-vport rule (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch ingress acl codes (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: E-Switch, Refactor eswitch egress acl codes (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return ECE data after modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during modify QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Convert modify QP to use MLX5_SET macros (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove manually crafted QP context the query call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use direct modify QP implementation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set ECE options during QP create (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Get ECE options from FW during create QP (Alaa Hleihel) [1858560] - [include] net/mlx5: Add ability to read and write ECE options (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use IS_ERR() to check and simplify code (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Add support for RDMA TX FT headers modifying (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move iseg access helper routines close to mlx5_core driver (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Cleanup mlx5_ifc_fte_match_set_misc2_bits (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib driver name (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Calculate SQ stop room in a robust way (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Move internal timer read function to clock library (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Fix a bug of releasing wrong chunks on > 4K page size systems (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Dedicate fw page to the requesting function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Fix query_srq_cmd() function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support for drop action in DV steering (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Add support in steering default miss (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor DV create flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support in forward to namespace (Alaa Hleihel) [1858560] - [infiniband] {IB/net}/mlx5: Simplify don't trap code (Alaa Hleihel) [1858560] - [include] net/mlx5: Replace zero-length array with flexible-array (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Accel, Remove unnecessary header include (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use struct assignment for WQE info updates (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Take TX WQE info structures out of general EN header (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Do not fill edge for the DUMP WQEs in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: kTLS, Fill work queue edge separately in TX flow (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Split TX acceleration offloads into two phases (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Update UDP fields of the SKB for GSO first (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Make TLS offload independent of wqe and pi (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Pass only eseg to IPSEC offload (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return void from mlx5e_sq_xmit and mlx5i_sq_xmit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify checks of TLS offloads (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Return bool from TLS and IPSEC offloads (Alaa Hleihel) [1858560] - [netdrv] net: remove newlines in NL_SET_ERR_MSG_MOD (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove duplicated assignment to variable rcqe_sz (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Allow only raw Ethernet QPs when RoCE isn't enabled (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Assign profile before calling stages (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move all WR logic from qp.c to separate file (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor mlx5_post_send() to improve readability (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update mlx5_ib to use new cmd interface (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set UDP source port based on the grh.flow_label (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Define RoCEv2 udp source port when set path (Alaa Hleihel) [1858560 1851704] - [infiniband] RDMA/mlx5: Set lag tx affinity according to slave (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Refactor affinity related code (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support to get lag physical port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Change lag mutex lock to spin lock (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Consolidate into special function all create QP calls (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove redundant destroy QP call (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Copy response to the user in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Handle udate outlen checks in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP flags check to higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Group all create QP parameters to simplify in-kernel interfaces (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Reduce amount of duplication in QP destroy (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate to user/kernel create QP flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate XRC_TGT QP creation from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Globally parse DEVX UID (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible inlen check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Rely on existence of udata to separate kernel/user flows (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second user copy in create_user_qp (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Combine copy of create QP command in RSS RAW QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Promote RSS RAW QP attribute check in higher level (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Store QP type in the vendor QP structure (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete unsupported QP types (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Unify reserving space for WQEs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Rename ICOSQ WQE info struct and field (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Fetch WQE: reuse code and enforce typing (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: XDP, Print the offending TX descriptor on error completion (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: TX, Generalise code and usage of error CQE dump (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Use proper name field for the UMR key (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add support for release all pages event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Rate limit page not found error messages (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add helper function to release fw page (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove unused field in EQ (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Remove unneeded semicolon (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Fix coverity issue (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process all vendor flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Return all configured create flags through query QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Change scatter CQE flag to be set like other vendor flags (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Use flags_en mechanism to mark QP created with WQE signature (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Process create QP flags in one place (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete create QP flags obfuscation (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Initial separation of RAW_PACKET QP from common flow (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Remove second copy from user for non RSS RAW QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Move DRIVER QP flags check into separate function (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Update all DRIVER QP places to use QP subtype (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Split scatter CQE configuration for DCT QP (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Separate create QP flows to be based on type (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Set QP subtype immediately when it is known (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Avoid setting redundant NULL for XRC QPs (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Prepare QP allocation for future removal (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Perform check if QP creation flow is valid (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete impossible GSI port check (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Organize QP types checks in one place (Alaa Hleihel) [1858560] - [include] net/mlx5: TX WQE Add trailer insertion field (Alaa Hleihel) [1858560] - [include] net/mlx5: Add release all pages capability bit (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce TLS RX offload hardware bits (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure and defines for pci sync for fw update event (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Add structure layout and defines for MFRL register (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use aligned variable while allocating ICM memory (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Introduce IPsec Connect-X offload hardware bits and structures (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update transobj.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update SW steering new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update port.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update rl.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update uar.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pd.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update pagealloc.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mr.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mcg.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update main.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update vxlan.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update mpfs.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update gid.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update lag.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fw.c new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update fs_core new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update FPGA to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eswitch to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] ethernet: remove redundant memset (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update statistics to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update eq.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update ecpf.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update debugfs.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Update cq.c to new cmd interface (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Update vport.c to new cmd interface (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: improve some comments (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Read embedded cpu bit only once (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: Handle errors from netif_set_real_num_{tx, rx}_queues (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: IPsec, Refactor SA handle creation and destruction (Alaa Hleihel) [1858560] - [netdrv] net/mlx5e: IPSec, Expose IPsec HW stat only for supporting HW (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor mlx5_accel_esp_create_hw_context parameter list (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Use the correct IPsec capability function for FPGA ops (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Enable SW-defined RoCEv2 UDP source port (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Refactor HCA capability set flow (Alaa Hleihel) [1858560] - [infiniband] net/mlx5: Move QP logic to mlx5_ib (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Alphabetically sort build artifacts (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Delete not-used cmd header (Alaa Hleihel) [1858560] - [infiniband] RDMA/mlx5: Delete Q counter allocations command (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove Q counter low level helper APIs (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Replace hand written QP context struct with automatic getters (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove extra indirection while storing QPN (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the IPoIB module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in the FPGA module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code modify QP in steering module (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Remove empty QP and CQ events handlers (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Open-code create and destroy QP calls (Alaa Hleihel) [1858560] - [netdrv] net/mlx5: Provide simplified command interfaces (Alaa Hleihel) [1858560] - [x86] kvm: x86/mmu: Fix get_mmio_spte() on CPUs supporting 5-level PT (Vitaly Kuznetsov) [1902184] - [net] netdevsim: devlink flash timeout message (Petr Oros) [1882019] - [net] devlink: collect flash notify params into a struct (Petr Oros) [1882019] - [net] devlink: add timeout information to status_notify (Petr Oros) [1882019] - [firmware] efi/esrt: Only call efi_mem_reserve() for boot services memory (Kairui Song) [1878024] - [firmware] efi: Drop type and attribute checks in efi_mem_desc_lookup() (Kairui Song) [1878024] - [fs] iomap: Fix direct I/O write consistency check (Andreas Grunbacher) [1875556] - [fs] gfs2: fix O_SYNC write handling (Andreas Grunbacher) [1871923] - [fs] gfs2: move setting current->backing_dev_info (Andreas Grunbacher) [1871923] - [fs] gfs2: Don't return NULL from gfs2_inode_lookup (Andreas Grunbacher) [1872061] - [fs] gfs2: If go_sync returns error, withdraw but skip invalidate (Robert S Peterson) [1875035] - [fs] gfs2: Close timing window with GLF_INVALIDATE_IN_PROGRESS (Robert S Peterson) [1875035] - [fs] gfs2: Fix refcount leak in gfs2_glock_poke (Robert S Peterson) [1875035] - [fs] gfs2: Add missing truncate_inode_pages_final for sd_aspace (Robert S Peterson) [1875035] - [fs] gfs2: call truncate_inode_pages_final for address space glocks (Robert S Peterson) [1875035] - [fs] gfs2: simplify the logic in gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_linked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: further simplify gfs2_evict_inode with new func evict_should_delete (Robert S Peterson) [1875035] - [fs] gfs2: factor evict_unlinked_inode out of gfs2_evict_inode (Robert S Peterson) [1875035] - [fs] gfs2: rename variable error to ret in gfs2_evict_inode (Robert S Peterson) [1875035] - [net] ethtool: Add link extended state (Ivan Vecera) [1894545] - [documentation] networking: ethtool-netlink: Add link extended state (Ivan Vecera) [1894545] - [net] ethtool: fix error handling in linkstate_prepare_data() (Ivan Vecera) [1894545] - [net] ethtool: provide UAPI for PHY Signal Quality Index (SQI) (Ivan Vecera) [1894545]- [mm] mm/hugetlb: fix a race between hugetlb sysctl handlers (Julia Denham) [1886241] {CVE-2020-25285} - [kernel] audit: do not set FS_EVENT_ON_CHILD in audit marks mask (Richard Guy Briggs) [1896480] - [net] missing barriers in some of unix_sock ->addr and ->path accesses (Richard Guy Briggs) [1896480] - [kernel] audit: fix macros warnings (Richard Guy Briggs) [1896480] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1896480] - [kernel] audit: fix a kernel-doc markup (Richard Guy Briggs) [1896480] - [kernel] audit: Remove redundant null check (Richard Guy Briggs) [1896480] - [kernel] audit: uninitialize variable audit_sig_sid (Richard Guy Briggs) [1896480] - [kernel] audit: change unnecessary globals into statics (Richard Guy Briggs) [1896480] - [kernel] audit: report audit wait metric in audit status reply (Richard Guy Briggs) [1896480] - [security] audit: purge audit_log_string from the intra-kernel audit API (Richard Guy Briggs) [1896480] - [security] apparmor: Check buffer bounds when mapping permissions mask (Richard Guy Briggs) [1896480] - [kernel] audit: issue CWD record to accompany LSM_AUDIT_DATA_* records (Richard Guy Briggs) [1896480] - [net] audit: use the proper gfp flags in the audit_log_nfcfg() calls (Richard Guy Briggs) [1896480] - [include] audit: remove unused !CONFIG_AUDITSYSCALL __audit_inode* stubs (Richard Guy Briggs) [1896480] - [net] audit: add gfp parameter to audit_log_nfcfg (Richard Guy Briggs) [1896480] - [kernel] audit: log nftables configuration change events (Richard Guy Briggs) [1896480] - [kernel] audit: Use struct_size() helper in alloc_chunk (Richard Guy Briggs) [1896480] - [kernel] revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules present") (Richard Guy Briggs) [1896480] - [include] audit: Replace zero-length array with flexible-array (Richard Guy Briggs) [1896480] - [netdrv] net: usb: lan78xx: Disable interrupts before calling generic_handle_irq() (Waiman Long) [1904213] - [mm] x86/mm/cpa: Prevent large page split when ftrace flips RW on kernel text (Waiman Long) [1904213] - [mm] x86/mm/cpa: Fix cpa_flush_array() TLB invalidation (Waiman Long) [1904213] - [net] netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [net] netlabel: fix our progress tracking in netlbl_unlabel_staticlist() (Ondrej Mosnacek) [1901171] - [netdrv] net: ena: fix packet's addresses for rx_offset feature (Petr Oros) [1861967] - [netdrv] net: ena: handle bad request id in ena_netdev (Petr Oros) [1861967] - [netdrv] net: ena: Change WARN_ON expression in ena_del_napi_in_range() (Petr Oros) [1861967] - [netdrv] net: ena: support new LLQ acceleration mode (Petr Oros) [1861967] - [netdrv] net: ena: move llq configuration from ena_probe to ena_device_init() (Petr Oros) [1861967] - [netdrv] net: ena: enable support of rss hash key and function changes (Petr Oros) [1861967] - [netdrv] net: ena: add support for traffic mirroring (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: change ena_com_stats_admin stats to u64 (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: satisfy gcc warning (Petr Oros) [1861967] - [netdrv] net: ena: add reserved PCI device ID (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary rearming of interrupt vector when busy-polling (Petr Oros) [1861967] - [netdrv] net: ena: Fix using plain integer as NULL pointer in ena_init_napi_in_range (Petr Oros) [1861967] - [netdrv] ena_netdev: use generic power management (Petr Oros) [1861967] - [netdrv] net: ena: xdp: update napi budget for DROP and ABORTED (Petr Oros) [1861967] - [netdrv] net: ena: xdp: XDP_TX: fix memory leak (Petr Oros) [1861967] - [netdrv] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1861967] - [netdrv] net: ena: reduce driver load time (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: minor code changes (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spacing issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: code reorderings (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary code (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix line break issues (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: fix spelling and grammar mistakes in comments (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: set queue sizes to u32 for consistency (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: rename ena_update_tx/rx_rings_intr_moderation() (Petr Oros) [1861967] - [netdrv] net: ena: simplify ena_com_update_intr_delay_resolution() (Petr Oros) [1861967] - [netdrv] net: ena: fix ena_com_comp_status_to_errno() return value (Petr Oros) [1861967] - [netdrv] net: ena: use explicit variable size for clarity (Petr Oros) [1861967] - [netdrv] net: ena: rename ena_com_free_desc to make API more uniform (Petr Oros) [1861967] - [netdrv] net: ena: add support for the rx offset feature (Petr Oros) [1861967] - [netdrv] ena: Add XDP frame size to amazon NIC driver (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: extract code to ena_indirection_table_set() (Petr Oros) [1861967] - [netdrv] net: ena: cosmetic: remove unnecessary spaces and tabs in ena_com.h macros (Petr Oros) [1861967] - [netdrv] net: ena: use SHUTDOWN as reset reason when closing interface (Petr Oros) [1861967] - [netdrv] net: ena: drop superfluous prototype (Petr Oros) [1861967] - [netdrv] net: ena: add support for reporting of packet drops (Petr Oros) [1861967] - [netdrv] net: ena: add unmask interrupts statistics to ethtool (Petr Oros) [1861967] - [netdrv] net: ena: remove code that does nothing (Petr Oros) [1861967] - [netdrv] net: ena: changes to RSS hash key allocation (Petr Oros) [1861967] - [netdrv] net: ena: change default RSS hash function to Toeplitz (Petr Oros) [1861967] - [netdrv] net: ena: allow setting the hash function without changing the key (Petr Oros) [1861967] - [netdrv] net: ena: fix error returning in ena_com_get_hash_function() (Petr Oros) [1861967] - [netdrv] net: ena: avoid unnecessary admin command when RSS function set fails (Petr Oros) [1861967] - [netdrv] net/ena: Fix build warning in ena_xdp_set() (Petr Oros) [1861967] - [netdrv] net: ena: Make some functions static (Petr Oros) [1861967] - [netdrv] net: ena: fix continuous keep-alive resets (Petr Oros) [1861967] - [netdrv] net: ena: avoid memory access violation by validating req_id properly (Petr Oros) [1861967] - [netdrv] net: ena: fix request of incorrect number of IRQ vectors (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect setting of the number of msix vectors (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: clean up minor indentation issue (Petr Oros) [1861967] - [netdrv] net: ena: reject unsupported coalescing params (Petr Oros) [1861967] - [netdrv] net: ena: fix broken interface between ENA driver and FW (Petr Oros) [1861967] - [netdrv] net/amazon: Ensure that driver version is aligned to the linux kernel (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: remove redundant non-zero check on rc (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'hash_key' (Petr Oros) [1861967] - [netdrv] net: ena: ena-com.c: prevent NULL pointer dereference (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: use correct value for crc32 hash (Petr Oros) [1861967] - [netdrv] net: ena: make ena rxfh support ETH_RSS_HASH_NO_CHANGE (Petr Oros) [1861967] - [netdrv] net: ena: fix corruption of dev_idx_to_host_tbl (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrectly saving queue numbers when setting RSS indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: store hash function as values and not bits (Petr Oros) [1861967] - [netdrv] net: ena: rss: fix failure to get indirection table (Petr Oros) [1861967] - [netdrv] net: ena: rss: do not allocate key when not supported (Petr Oros) [1861967] - [netdrv] net: ena: fix incorrect default RSS key (Petr Oros) [1861967] - [netdrv] net: ena: add missing ethtool TX timestamping indication (Petr Oros) [1861967] - [netdrv] net: ena: fix uses of round_jiffies() (Petr Oros) [1861967] - [netdrv] net: ena: fix potential crash when rxfh key is NULL (Petr Oros) [1861967] - [netdrv] net: ena: remove set but not used variable 'rx_ring' (Petr Oros) [1861967] - [netdrv] net: ena: fix issues in setting interrupt moderation params in ethtool (Petr Oros) [1861967] - [netdrv] net: ena: fix default tx interrupt moderation interval (Petr Oros) [1861967] - [netdrv] net: ena: Add first_interrupt field to napi struct (Petr Oros) [1861967] - [netdrv] net: ena: Implement XDP_TX action (Petr Oros) [1861967] - [netdrv] net: ena: implement XDP drop support (Petr Oros) [1861967] - [netdrv] net: ena: fix napi handler misbehavior when the napi budget is zero (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: support set_channels callback (Petr Oros) [1861967] - [netdrv] net: ena: remove redundant print of number of queues (Petr Oros) [1861967] - [netdrv] net: ena: make ethtool -l show correct max number of queues (Petr Oros) [1861967] - [netdrv] net: ena: ethtool: get_channels: use combined only (Petr Oros) [1861967] - [netdrv] net: ena: multiple queue creation related cleanups (Petr Oros) [1861967] - [netdrv] net: ena: change num_queues to num_io_queues for clarity and consistency (Petr Oros) [1861967] - [kernel] rcu/tree: docs: document bkvcache new members at struct kfree_rcu_cpu (Nico Pache) [1894223] - [mm] kasan: don't assume percpu shadow allocations will succeed (Nico Pache) [1894223] - [lib] kasan: update required compiler versions in documentation (Nico Pache) [1894223] - [lib] kasan: improve and simplify Kconfig.kasan (Nico Pache) [1894223] - [lib] kasan: Fix required compiler version (Nico Pache) [1894223] - [lib] kasan: Bump required compiler version (Nico Pache) [1894223] - [documentation] kasan: update documentation for generic kasan (Nico Pache) [1894223] - [mm] kasan: record and print the free track (Nico Pache) [1894223] - [mm] rcu: kasan: record and print call_rcu() call stack (Nico Pache) [1894223] - [kernel] rcu: Support reclaim for head-less object (Nico Pache) [1894223] - [kernel] rcu: Introduce 2 arg kvfree_rcu() interface (Nico Pache) [1894223] - [mm] mm/list_lru.c: Rename kvfree_rcu() to local variant (Nico Pache) [1894223] - [kernel] rcu: Rename *_kfree_callback/*_kfree_rcu_offset/kfree_call_* (Nico Pache) [1894223] - [kernel] rcu/tiny: support vmalloc in tiny-RCU (Nico Pache) [1894223] - [kernel] rcu/tree: Maintain separate array for vmalloc ptrs (Nico Pache) [1894223] - [kernel] rcu/tree: cache specified number of objects (Nico Pache) [1894223] - [kernel] rcu/tree: Use static initializer for krc.lock (Nico Pache) [1894223] - [kernel] rcu/tree: Move kfree_rcu_cpu locking/unlocking to separate functions (Nico Pache) [1894223] - [kernel] rcu/tree: Simplify KFREE_BULK_MAX_ENTR macro (Nico Pache) [1894223] - [kernel] rcu/tree: Make debug_objects logic independent of rcu_head (Nico Pache) [1894223] - [kernel] rcu/tree: Repeat the monitor if any free channel is busy (Nico Pache) [1894223] - [kernel] rcu/tree: Skip entry into the page allocator for PREEMPT_RT (Nico Pache) [1894223] - [kernel] rcu/tree: Keep kfree_rcu() awake during lock contention (Nico Pache) [1894223] - [kernel] rcu: Fix a kernel-doc warnings for "count" (Nico Pache) [1894223] - [kernel] rcu/tree: Count number of batched kfree_rcu() locklessly (Nico Pache) [1894223] - [kernel] rcu/tree: Add a shrinker to prevent OOM due to kfree_rcu() batching (Nico Pache) [1894223] - [kernel] rcuperf: Measure memory footprint during kfree_rcu() test (Nico Pache) [1894223] - [kernel] rcu: Add a trace event for kfree_rcu() use of kfree_bulk() (Nico Pache) [1894223] - [kernel] rcu: Support kfree_bulk() interface in kfree_rcu() (Nico Pache) [1894223] - [mm] kasan: fix clang compilation warning due to stack protector (Nico Pache) [1894223] - [mm] kasan: disable branch tracing for core runtime (Nico Pache) [1894223] - [mm] kasan: add missing functions declarations to kasan.h (Nico Pache) [1894223] - [mm] kasan: consistently disable debugging features (Nico Pache) [1894223] - [mm] kasan: unset panic_on_warn before calling panic() (Nico Pache) [1894223] - [mm] kasan: detect negative size in memory operation function (Nico Pache) [1894223] - [mm] kasan: No KASAN's memmove check if archs don't have it (Nico Pache) [1894223] - [mm] kasan: use apply_to_existing_page_range() for releasing vmalloc shadow (Nico Pache) [1894223] - [mm] kasan: fix crashes on access to memory mapped by vm_map_ram() (Nico Pache) [1894223] - [mm] mm/kasan/common.c: fix compile error (Nico Pache) [1894223] - [mm] kasan: support backing vmalloc space with real shadow memory (Nico Pache) [1894223] - [mm] mm/vmalloc: rework vmap_area_lock (Nico Pache) [1894223] - [mm] mm/vmalloc: remove preempt_disable/enable when doing preloading (Nico Pache) [1894223] - [mm] mm/vmalloc.c: switch to WARN_ON() and move it under unlink_va() (Nico Pache) [1894223] - [mm] mm/vmalloc.c: get rid of one single unlink_va() when merge (Nico Pache) [1894223] - [mm] mm/vmalloc.c: preload a CPU with one object for split purpose (Nico Pache) [1894223] - [mm] mm/vmalloc.c: remove "node" argument (Nico Pache) [1894223] - [mm] mm/vmalloc: modify struct vmap_area to reduce its size (Nico Pache) [1894223] - [mm] mm/vmalloc: do not keep unpurged areas in the busy tree (Nico Pache) [1894223] - [mm] mm/vmalloc.c: fix percpu free VM area search criteria (Nico Pache) [1894223] - [mm] mm/vmalloc.c: avoid bogus -Wmaybe-uninitialized warning (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_LOWEST_MATCH_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmap: add DEBUG_AUGMENT_PROPAGATE_CHECK macro (Nico Pache) [1894223] - [mm] mm/vmalloc.c: keep track of free blocks for vmap allocation (Nico Pache) [1894223] - [mm] mm/vmalloc.c: convert vmap_lazy_nr to atomic_long_t (Nico Pache) [1894223] - [mm] mm/kasan: change kasan_check_{read, write} to return boolean (Nico Pache) [1894223] - [mm] mm/kasan: introduce __kasan_check_{read, write} (Nico Pache) [1894223] - [mm] kasan: fix coccinelle warnings in kasan_p*_table (Nico Pache) [1894223] - [mm] kasan: fix kasan_check_read/write definitions (Nico Pache) [1894223] - [lib] kasan: remove use after scope bugs detection (Nico Pache) [1894223] - [lib] kasan: remove clang version check for KASAN_STACK (Nico Pache) [1894223] - [lib] kasan: turn off asan-stack for clang-8 and earlier (Nico Pache) [1894223] - [block] nbd: fix a block_device refcount leak in nbd_release (Ming Lei) [1901400] - [tools] selftests: Set default protocol for raw sockets in nettest (Hangbin Liu) [1898813] - [tools] selftests/net: improve descriptions for XFAIL cases in psock_snd.sh (Hangbin Liu) [1898813] - [tools] selftests: rtnetlink: make kci_test_encap() return sub-test result (Hangbin Liu) [1898813] - [tools] selftests: net: ip_defrag: modprobe missing nf_defrag_ipv6 support (Hangbin Liu) [1898813] - [tools] selftests: use LDLIBS for libraries instead of LDFLAGS (Hangbin Liu) [1898813] - [tools] selftests: tls: run all tests for TLS 1.2 and TLS 1.3 (Hangbin Liu) [1898813] - [tools] selftests/net: add definition for SOL_DCCP to fix compilation errors for old libc (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: silence clang warning (Hangbin Liu) [1898813] - [tools] selftests: net: refactor reuseport_addr_any test (Hangbin Liu) [1898813] - [tools] selftests: net: reuseport_addr_any: add DCCP (Hangbin Liu) [1898813] - [tools] selftests: net: test that listening sockets match on address properly (Hangbin Liu) [1898813] - [tools] selftests/net: make udpgso_bench skip unsupported testcases (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh test fails on error (Hangbin Liu) [1898813] - [tools] net/udpgso_bench.sh add UDP GSO audit tests (Hangbin Liu) [1898813] - [tools] selftests: extend zerocopy tests to udp (Hangbin Liu) [1898813] - [tools] net/udpgso_bench_tx: options to exercise TX CMSG (Hangbin Liu) [1898813] - [tools] selftests: fixes for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests/net: replace obsolete NFT_CHAIN configuration (Hangbin Liu) [1898813] - [tools] selftests: explicitly require kernel features needed by udpgro tests (Hangbin Liu) [1898813] - [tools] selftests: add explicit test for multiple concurrent GRO sockets (Hangbin Liu) [1898813] - [tools] selftests: add functionals test for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add some benchmark for UDP GRO (Hangbin Liu) [1898813] - [tools] selftests: add GRO support to udp bench rx program (Hangbin Liu) [1898813] - [net] sctp: change to hold/put transport for proto_unreach_timer (Xin Long) [1897084] - [scsi] scsi: qedi: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add support for handling PCIe errors (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Add firmware error recovery invocation support (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Mark all connections for recovery on link down event (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use snprintf instead of sprintf (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Protect active command list to avoid list corruption (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Fix list_del corruption while removing active I/O (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Skip firmware connection termination for PCI shutdown handler (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Use qed count from set_fp_int in msix allocation (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove redundant NULL check (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Staticify non-external function 'qedi_get_iscsi_error' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Demote seemingly unintentional kerneldoc header (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove set but unused variable 'tmp' (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove 2 set but unused variables (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove unused variable udev & uctrl (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Remove comparison of 0/1 to bool variable (Nilesh Javali) [1854121] - [scsi] scsi: qedi: Check for buffer overflow in qedi_set_path() (Nilesh Javali) [1854121] - [scsi] scsi: qedf: Remove redundant assignment to variable 'rc' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Retry qed->probe during recovery (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Add schedule_hw_err_handler callback for fan failure (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Return SUCCESS if stale rport is encountered (Nilesh Javali) [1854122] - [scsi] scsi: qedf: FDMI attributes correction (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Use pci_get_dsn() (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix for the session's E_D_TOV value (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Correct the comment in qedf_initiate_els (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Change the debug parameter permission to read & write (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix null ptr reference in qedf_stag_change_work (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Fix race between ELS completion and flushing ELS request (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Don't process ELS completion if event is flushed or cleaned up (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Initiate cleanup for ELS commands as well (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Send cleanup even for RRQ on timeout (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Do not kill timeout work for original I/O on RRQ completion (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check the validity of rjt frame before processing (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Check for port type and role before processing an event (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove a whole host of unused variables (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove set but not checked variable 'tmp' (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Demote obvious misuse of kerneldoc to standard comment blocks (Nilesh Javali) [1854122] - [scsi] scsi: qedf: Remove redundant initialization of variable rc (Nilesh Javali) [1854122] - [infiniband] RDMA/qedr: Fix memory leak in iWARP CM (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix function prototype parameters alignment (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix inline size returned for iWARP (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix iWARP active mtu display (Manish Chopra) [1857857] - [netdrv] qede: Notify qedr when mtu has changed (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix return code if accept is called on a destroyed qp (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix use of uninitialized field (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix doorbell setting (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix qp structure memory leak (Manish Chopra) [1857857] - [netdrv] net: qed: RDMA personality shouldn't fail VF load (Manish Chopra) [1857857] - [netdrv] net: qede: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: Disable aRFS for NPAR and 100G (Manish Chopra) [1857857] - [netdrv] net: qed: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] net: qede: use eth_zero_addr() to clear mac address (Manish Chopra) [1857857] - [netdrv] qede: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [netdrv] qed: Use pM format specifier for MAC addresses (Manish Chopra) [1857857] - [infiniband] qed: fix assignment of n_rq_elems to incorrect params field (Manish Chopra) [1857857] - [netdrv] qed: fix the allocation of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qede: add .ndo_xdp_xmit() and XDP_REDIRECT support (Manish Chopra) [1857857] - [netdrv] qede: refactor XDP Tx processing (Manish Chopra) [1857857] - [netdrv] qede: reformat net_device_ops declarations (Manish Chopra) [1857857] - [netdrv] qede: reformat several structures in "qede.h" (Manish Chopra) [1857857] - [include] qed: introduce qed_chain_get_elem_used{, u32}() (Manish Chopra) [1857857] - [include] qed: optimize common chain accessors (Manish Chopra) [1857857] - [infiniband] qed: add support for different page sizes for chains (Manish Chopra) [1857857] - [netdrv] qed: simplify chain allocation with init params struct (Manish Chopra) [1857857] - [netdrv] qed: simplify initialization of the chains with an external PBL (Manish Chopra) [1857857] - [netdrv] qed: move chain initialization inlines next to allocation functions (Manish Chopra) [1857857] - [netdrv] qed: sanitize PBL chains allocation (Manish Chopra) [1857857] - [netdrv] qed: prevent possible double-frees of the chains (Manish Chopra) [1857857] - [netdrv] qed: move chain methods to a separate file (Manish Chopra) [1857857] - [netdrv] qed: reformat Makefile (Manish Chopra) [1857857] - [include] qed: reformat "qed_chain.h" a bit (Manish Chopra) [1857857] - [netdrv] net: qed_hsi.h: Avoid the use of one-element array (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] qed: suppress false-positives interrupt error messages on HW init (Manish Chopra) [1857857] - [netdrv] qed: suppress "don't support RoCE & iWARP" flooding on HW init (Manish Chopra) [1857857] - [netdrv] qed: Fix ILT and XRCD bitmap memory leaks (Manish Chopra) [1857857] - [netdrv] qed: add support for the extended speed and FEC modes (Manish Chopra) [1857857] - [netdrv] qed: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed: add missing loopback modes (Manish Chopra) [1857857] - [netdrv] qed: add support for new port modes (Manish Chopra) [1857857] - [netdrv] qed: remove unused qed_hw_info::port_mode and QED_PORT_MODE (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qede: introduce support for FEC control (Manish Chopra) [1857857] - [netdrv] qede: format qede{,_vf}_ethtool_ops (Manish Chopra) [1857857] - [netdrv] qed: add support for Forward Error Correction (Manish Chopra) [1857857] - [netdrv] qed: reformat several structures a bit (Manish Chopra) [1857857] - [netdrv] qed: use transceiver data to fill link partner's advertising speeds (Manish Chopra) [1857857] - [netdrv] qed: add support for multi-rate transceivers (Manish Chopra) [1857857] - [netdrv] qed: reformat public_port::transceiver_data a bit (Manish Chopra) [1857857] - [netdrv] qede: populate supported link modes maps on module init (Manish Chopra) [1857857] - [netdrv] qed, qede, qedf: convert link mode from u32 to ETHTOOL_LINK_MODE (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM max size to alloc ucontext response (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: SRQ's bug fixes (Manish Chopra) [1857857] - [include] net: qed: drop duplicate words in comments (Manish Chopra) [1857857] - [netdrv] qede: convert to new udp_tunnel_nic infra (Manish Chopra) [1857857] - [netdrv] qed: Disable "MFW indication via attention" SPAM every 5 minutes (Manish Chopra) [1857857] - [netdrv] qed: Populate nvm-file attributes while reading nvm config partition (Manish Chopra) [1857857] - [netdrv] net: qede: fix BE vs CPU comparison (Manish Chopra) [1857857] - [netdrv] net: qede: fix kernel-doc for qede_ptp_adjfreq() (Manish Chopra) [1857857] - [netdrv] net: qed: sanitize BE/LE data processing (Manish Chopra) [1857857] - [netdrv] net: qed: use ptr shortcuts to dedup field accessing in some parts (Manish Chopra) [1857857] - [netdrv] net: qed: improve indentation of some parts of code (Manish Chopra) [1857857] - [netdrv] net: qed: address kernel-doc warnings (Manish Chopra) [1857857] - [netdrv] net: qed: correct qed_hw_err_notify() prototype (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup global structs declarations (Manish Chopra) [1857857] - [netdrv] net: qed: move static iro_arrout of header file (Manish Chopra) [1857857] - [netdrv] qed: Make symbol 'qed_hw_err_type_descr' static (Manish Chopra) [1857857] - [netdrv] net: qede: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qede: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qede: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] net: qed: update copyright years (Manish Chopra) [1857857] - [netdrv] net: qed: convert to SPDX License Identifiers (Manish Chopra) [1857857] - [netdrv] net: qed: correct existing SPDX tags (Manish Chopra) [1857857] - [netdrv] qed: add missing error test for DBG_STATUS_NO_MATCHING_FRAMING_MODE (Manish Chopra) [1857857] - [netdrv] net: qed: fix "maybe uninitialized" warning (Manish Chopra) [1857857] - [netdrv] net: qed: reset ILT block sizes before recomputing to fix crashes (Manish Chopra) [1857857] - [netdrv] net: qede: fix use-after-free on recovery and AER handling (Manish Chopra) [1857857] - [netdrv] net: qede: fix PTP initialization on recovery (Manish Chopra) [1857857] - [netdrv] net: qed: fix excessive QM ILT lines consumption (Manish Chopra) [1857857] - [netdrv] net: qed: fix NVMe login fails over VFs (Manish Chopra) [1857857] - [netdrv] net: qede: stop adding events on an already destroyed workqueue (Manish Chopra) [1857857] - [netdrv] net: qed: fix async event callbacks unregistering (Manish Chopra) [1857857] - [include] net: qed: fix left elements count calculation (Manish Chopra) [1857857] - [infiniband] RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532 (Manish Chopra) [1857857] - [netdrv] qed: Add EDPM mode type for user-fw compatibility (Manish Chopra) [1857857] - [netdrv] qed: Add XRC to RoCE (Manish Chopra) [1857857] - [netdrv] qed: changes to ILT to support XRC (Manish Chopra) [1857857] - [include] net: qed: fix bad formatting (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical hardware error handler (Manish Chopra) [1857857] - [netdrv] net: qed: introduce critical fan failure handler (Manish Chopra) [1857857] - [netdrv] net: qede: Implement ndo_tx_timeout (Manish Chopra) [1857857] - [netdrv] net: qede: optional hw recovery procedure (Manish Chopra) [1857857] - [netdrv] net: qed: attention clearing properties (Manish Chopra) [1857857] - [netdrv] net: qed: cleanup debug related declarations (Manish Chopra) [1857857] - [netdrv] net: qed: critical err reporting to management firmware (Manish Chopra) [1857857] - [netdrv] net: qed: invoke err notify on critical areas (Manish Chopra) [1857857] - [netdrv] net: qede: add hw err scheduled handler (Manish Chopra) [1857857] - [netdrv] net: qed: adding hw_err states and handling (Manish Chopra) [1857857] - [netdrv] net: qede: Use true for bool variable in qede_init_fp() (Manish Chopra) [1857857] - [netdrv] qed: Make ll2_cbs static (Manish Chopra) [1857857] - [netdrv] qede: Add support for handling the pcie errors (Manish Chopra) [1857857] - [netdrv] qed: Enable device error reporting capability (Manish Chopra) [1857857] - [netdrv] qed: use true,false for bool variables (Manish Chopra) [1857857] - [netdrv] net: qed: Remove unneeded cast from memory allocation (Manish Chopra) [1857857] - [netdrv] net: qede: reject unsupported coalescing params (Manish Chopra) [1857857] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 440 (Manish Chopra) [1857857] - [scsi] treewide: Add SPDX license identifier - Makefile/Kconfig (Manish Chopra) [1857857] - [netdrv] sfc: don't double-down() filters in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: Fix error code in probe (Jarod Wilson) [1856681] - [netdrv] sfc: fix boolreturn.cocci warning and rename function (Jarod Wilson) [1856681] - [netdrv] sfc: Use 'pci_channel_state_t' instead of 'enum pci_channel_state' (Jarod Wilson) [1856681] - [netdrv] sfc: Use fallthrough pseudo-keyword (Jarod Wilson) [1856681] - [netdrv] sfc: fix build warnings on 32-bit (Jarod Wilson) [1856681] - [netdrv] sfc: don't free_irq()s if they were never requested (Jarod Wilson) [1856681] - [netdrv] sfc: null out channel->rps_flow_id after freeing it (Jarod Wilson) [1856681] - [netdrv] sfc: take correct lock in ef100_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: really check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: check hash is valid before using it (Jarod Wilson) [1856681] - [netdrv] sfc: fix ef100 design-param checking (Jarod Wilson) [1856681] - [netdrv] sfc: Fix build with CONFIG_RFS_ACCEL disabled (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add nic-type for VFs, and bind to them (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read pf_index at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: functions for selftests (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: statistics gathering (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: plumb in fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX path for EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: RX filter table management and related gubbins (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: TX path for EF100 NICs (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read Design Parameters at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: fail the probe if NIC uses unsol_ev credits (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: check firmware version at start-of-day (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: remove duplicated include from ef100_netdev.c (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_get_phys_port_{id, name} (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read device MAC address at probe time (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: probe the PHY and configure the MAC (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: actually perform resets (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: extend ef100_check_caps to cover datapath_caps3 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: read datapath caps, implement check_caps (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: process events for MCDI completions (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement ndo_open/close and EVQ probing (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: implement MCDI transport (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: don't call efx_reset_down()/up() on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: PHY probe stub (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: reset-handling stub (Jarod Wilson) [1856681] - [netdrv] sfc: skeleton EF100 PF driver (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: register accesses on EF100 (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 register definitions (Jarod Wilson) [1856681] - [netdrv] sfc: remove efx_ethtool_nway_reset() (Jarod Wilson) [1856681] - [netdrv] sfc: drop unnecessary list_empty (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: helper function to set default RSS table of given size (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: NVRAM selftest support code (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: populate BUFFER_SIZE_BYTES in INIT_RXQ (Jarod Wilson) [1856681] - [netdrv] sfc_ef100: add EF100 to NIC-revision enumeration (Jarod Wilson) [1856681] - [netdrv] sfc: get drvinfo driver name from outside the common code (Jarod Wilson) [1856681] - [netdrv] sfc: initialise RSS context ID to 'no RSS context' in efx_init_struct() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_fini_dmaq (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_mcdi_filter_table_down() from _remove() (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_limit_len if NIC type doesn't have one (Jarod Wilson) [1856681] - [netdrv] sfc: assign TXQs without gaps (Jarod Wilson) [1856681] - [netdrv] sfc: commonise netif_set_real_numx_queues calls (Jarod Wilson) [1856681] - [netdrv] sfc: make tx_queues_per_channel variable at runtime (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'rss_cpus' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: move modparam 'interrupt_mode' out of common channel code (Jarod Wilson) [1856681] - [netdrv] sfc: remove max_interrupt_mode (Jarod Wilson) [1856681] - [netdrv] sfc: support setting MTU even if not privileged to configure MAC fully (Jarod Wilson) [1856681] - [netdrv] sfc: don't call tx_remove if there isn't one (Jarod Wilson) [1856681] - [netdrv] sfc: commonise initialisation of efx->vport_id (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx->xq_entries initialisation (Jarod Wilson) [1856681] - [netdrv] sfc: initialise max_channels in efx_init_channels() (Jarod Wilson) [1856681] - [netdrv] sfc: move definition of EFX_MC_STATS_GENERATION_INVALID (Jarod Wilson) [1856681] - [netdrv] sfc: factor out efx_tx_tso_header_length() and understand encapsulation (Jarod Wilson) [1856681] - [netdrv] sfc: remove duplicate declaration of efx_enqueue_skb_tso() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise TSO fallback code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise efx_sync_rx_buffer() (Jarod Wilson) [1856681] - [netdrv] sfc: commonise some MAC configuration code (Jarod Wilson) [1856681] - [netdrv] sfc: commonise miscellaneous efx functions (Jarod Wilson) [1856681] - [netdrv] sfc: add missing licence info to mcdi_filters.c (Jarod Wilson) [1856681] - [netdrv] sfc: commonise MCDI MAC stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: move NIC-specific mcdi_port declarations out of common header (Jarod Wilson) [1856681] - [netdrv] sfc: extend common GRO interface to support CHECKSUM_COMPLETE (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ARFS handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise drain event handling (Jarod Wilson) [1856681] - [netdrv] sfc: commonise PCI error handlers (Jarod Wilson) [1856681] - [netdrv] sfc: track which BAR is mapped (Jarod Wilson) [1856681] - [netdrv] sfc: commonise FC advertising (Jarod Wilson) [1856681] - [netdrv] sfc: commonise other ethtool bits (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool NFC and RXFH/RSS functions (Jarod Wilson) [1856681] - [netdrv] sfc: commonise ethtool link handling functions (Jarod Wilson) [1856681] - [netdrv] sfc: split up nic.h (Jarod Wilson) [1856681] - [netdrv] sfc: refactor EF10 stats handling (Jarod Wilson) [1856681] - [netdrv] sfc: don't try to create more channels than we can have VIs (Jarod Wilson) [1856681] - [netdrv] sfc: extend bitfield macros up to POPULATE_DWORD_13 (Jarod Wilson) [1856681] - [netdrv] sfc: determine flag word automatically in efx_has_cap() (Jarod Wilson) [1856681] - [netdrv] sfc: update MCDI protocol headers (Jarod Wilson) [1856681] - [netdrv] sfc: replace '---help---' in Kconfig files with 'help' (Jarod Wilson) [1856681] - [netdrv] sfc: add missing annotation for efx_ef10_try_update_nic_stats_vf() (Jarod Wilson) [1856681] - [netdrv] sfc: avoid an unused-variable warning (Jarod Wilson) [1856681] - [netdrv] sfc: fix dereference of table before it is null checked (Jarod Wilson) [1856681] - [netdrv] sfc: siena_check_caps() can be static (Jarod Wilson) [1856681] - [netdrv] sfc: actually wire up siena_check_caps() (Jarod Wilson) [1856681] - [netdrv] sfc: make firmware-variant printing a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: make filter table probe caller responsible for adding VLANs (Jarod Wilson) [1856681] - [netdrv] sfc: move rx_rss_context_exclusive into struct efx_mcdi_filter_table (Jarod Wilson) [1856681] - [netdrv] sfc: rework handling of (firmware) multicast chaining state (Jarod Wilson) [1856681] - [netdrv] sfc: move 'must restore' flags out of ef10-specific nic_data (Jarod Wilson) [1856681] - [netdrv] sfc: use efx_has_cap for capability checks outside of NIC-specific code (Jarod Wilson) [1856681] - [netdrv] sfc: make capability checking a nic_type function (Jarod Wilson) [1856681] - [netdrv] sfc: move vport_id to struct efx_nic (Jarod Wilson) [1856681] - [ntb] NTB: Revert "Add Hygon Device ID" (Myron Stowe) [1880468] - [tools] NTB: ntb_test: Fix bug when counting remote files (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix race condition when run with ntb_test (Myron Stowe) [1908031] - [ntb] NTB: perf: Fix support for hardware that doesn't have port numbers (Myron Stowe) [1908031] - [ntb] NTB: perf: Don't require one more memory window than number of peers (Myron Stowe) [1908031] - [ntb] NTB: ntb_pingpong: Choose doorbells based on port number (Myron Stowe) [1908031] - [ntb] NTB: Fix the default port and peer numbers for legacy drivers (Myron Stowe) [1908031] - [ntb] NTB: Revert the change to use the NTB device dev for DMA allocations (Myron Stowe) [1908031] - [ntb] NTB: ntb_tool: reading the link file should not end in a NULL byte (Myron Stowe) [1908031] - [ntb] ntb_perf: avoid false dma unmap of destination address (Myron Stowe) [1908031] - [ntb] ntb_perf: increase sleep time from one milli sec to one sec (Myron Stowe) [1908031] - [ntb] ntb_tool: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [ntb] ntb_perf: pass correct struct device to dma_alloc_coherent (Myron Stowe) [1908031] - [include] NTB: correct ntb_peer_spad_addr and ntb_peer_spad_read comment typos (Myron Stowe) [1908031] - [ntb] ntb: intel: fix static declaration (Myron Stowe) [1908031] - [ntb] ntb: intel: add hw workaround for NTB BAR alignment (Myron Stowe) [1908031] - [ntb] ntb: intel: Add Icelake (gen4) support for Intel NTB (Myron Stowe) [1908031] - [ntb] NTB: Fix static check warning in perf_clear_test (Myron Stowe) [1908031] - [include] include/ntb: Fix typo in ntb_unregister_device description (Myron Stowe) [1908031] - [ntb] NTB: add pci shutdown handler for AMD NTB (Myron Stowe) [1908031] - [ntb] NTB: send DB event when driver is loaded or un-loaded (Myron Stowe) [1908031] - [ntb] NTB: remove redundant setting of DB valid mask (Myron Stowe) [1908031] - [ntb] NTB: return link up status correctly for PRI and SEC (Myron Stowe) [1908031] - [ntb] NTB: add helper functions to set and clear sideinfo (Myron Stowe) [1908031] - [ntb] NTB: move ntb_ctrl handling to init and deinit (Myron Stowe) [1908031] - [ntb] NTB: handle link up, D0 and D3 events correctly (Myron Stowe) [1908031] - [ntb] NTB: handle link down event correctly (Myron Stowe) [1908031] - [ntb] NTB: remove handling of peer_sta from amd_link_is_up (Myron Stowe) [1908031] - [ntb] NTB: set peer_sta within event handler itself (Myron Stowe) [1908031] - [ntb] NTB: return the side info status from amd_poll_link (Myron Stowe) [1908031] - [ntb] NTB: define a new function to get link status (Myron Stowe) [1908031] - [ntb] NTB: Enable link up and down event notification (Myron Stowe) [1908031] - [ntb] NTB: clear interrupt status register (Myron Stowe) [1908031] - [ntb] NTB: Fix access to link status and control register (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Use scnprintf() for avoiding potential buffer overflow (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix ntb_mw_clear_trans error if size == 0 (Myron Stowe) [1908031] - [ntb] ntb_tool: Fix printk format (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Fix address err in perf_copy_chunk (Myron Stowe) [1908031] - [ntb] NTB: Fix an error in get link status (Myron Stowe) [1908031] - [ntb] NTB: Add Hygon Device ID (Myron Stowe) [1908031] - [ntb] NTB: fix IDT Kconfig typos/spellos (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add memory window support for new AMD hardware (Myron Stowe) [1908031] - [ntb] ntb_hw_amd: Add a new NTB PCI device ID (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: remove redundant assignment to rc (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: make ntb_mw_set_trans() work when addr == 0 (Myron Stowe) [1908031] - [ntb] ntb: point to right memory window index (Myron Stowe) [1908031] - [ntb] NTB/msi: remove incorrect MODULE defines (Myron Stowe) [1908031] - [documentation] NTB: Describe the ntb_msi_test client in the documentation (Myron Stowe) [1908031] - [ntb] NTB: Add MSI interrupt support to ntb_transport (Myron Stowe) [1908031] - [tools] NTB: Add ntb_msi_test support to ntb_test (Myron Stowe) [1908031] - [ntb] NTB: Introduce NTB MSI Test Client (Myron Stowe) [1908031] - [ntb] NTB: Introduce MSI library (Myron Stowe) [1908031] - [ntb] NTB: Rename ntb.c to support multiple source files in the module (Myron Stowe) [1908031] - [include] NTB: Introduce functions to calculate multi-port resource index (Myron Stowe) [1908031] - [include] NTB: Introduce helper functions to calculate logical port number (Myron Stowe) [1908031] - [pci] PCI/switchtec: Add module parameter to request more interrupts (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Fix setup MW with failure bug (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Skip unnecessary re-setup of shared memory window for crosslink case (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Remove redundant steps of switchtec_ntb_reinit_peer() function (Myron Stowe) [1908031] - [include] NTB: correct ntb_dev_ops and ntb_dev comment typos (Myron Stowe) [1908031] - [ntb] NTB: amd: Silence shift wrapping warning in amd_ntb_db_vector_mask() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev() (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure qp->tx_mw_dma_addr is initaliazed (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_amd: set peer limit register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Clear stale values in doorbell and command SPAD register (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Disable NTB link after clearing peer XLAT registers (Myron Stowe) [1908031] - [ntb] NTB: ntb_perf: Increased the number of message retries to 1000 (Myron Stowe) [1908031] - [ntb] ntb: intel: Make intel_ntb3_peer_db_addr static (Myron Stowe) [1908031] - [ntb] NTB: add new parameter to peer_db_addr() db_bit and db_data (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Ensure the destination buffer is mapped for TX DMA (Myron Stowe) [1908031] - [ntb] NTB: ntb_transport: Free MWs in ntb_transport_link_cleanup() (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: Added support of >=4G memory windows (Myron Stowe) [1908031] - [include] ntb_hw_switchtec: NT req id mapping table register entry number should be 512 (Myron Stowe) [1908031] - [ntb] ntb_hw_switchtec: debug print 64bit aligned crosslink BAR Numbers (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter the driver info comments (Myron Stowe) [1908031] - [ntb] ntb: idt: Discard temperature sensor IRQ handler (Myron Stowe) [1908031] - [ntb] ntb: idt: Add basic hwmon sysfs interface (Myron Stowe) [1908031] - [ntb] ntb: idt: Alter temperature read method (Myron Stowe) [1908031] - [netdrv] ntb_netdev: Simplify remove with client device drvdata (Myron Stowe) [1908031] - [ntb] NTB: transport: Try harder to alloc an aligned MW buffer (Myron Stowe) [1908031] - [ntb] ntb: ntb_transport: Mark expected switch fall-throughs (Myron Stowe) [1908031] - [ntb] ntb: idt: Set PCIe bus address to BARLIMITx (Myron Stowe) [1908031] - [ntb] NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks (Myron Stowe) [1908031] - [ntb] ntb: intel: fix return value for ndev_vec_mask() (Myron Stowe) [1908031] - [netdrv] ntb_netdev: fix sleep time mismatch (Myron Stowe) [1908031]- [block] block: fix incorrect branching in blk_max_size_offset() (Mike Snitzer) [1903722] - [md] dm: fix IO splitting (Mike Snitzer) [1903722] - [block] block: fix get_max_io_size() (Mike Snitzer) [1903722] - [block] block: Improve physical block alignment of split bios (Mike Snitzer) [1903722] - [block] block: use gcd() to fix chunk_sectors limit stacking (Mike Snitzer) [1903722] - [kernel] sched/deadline: Fix priority inheritance with multiple scheduling classes (Phil Auld) [1780490] - [fs] Convert trailing spaces and periods in path components (Leif Sahlberg) [1882457] - [block] loop: Fix occasional uevent drop (Ming Lei) [1897401] - [block] block: add a return value to set_capacity_revalidate_and_notify (Ming Lei) [1897401] - [fs] fat: truncate inode timestamp updates in setattr (Pavel Reichl) [1533270] - [fs] fat: change timestamp updates to use fat_truncate_time (Pavel Reichl) [1533270] - [fs] fat: add functions to update and truncate timestamps appropriately (Pavel Reichl) [1533270] - [fs] fat: create a function to calculate the timezone offest (Pavel Reichl) [1533270] - [net] icmp: randomize the global rate limiter (Guillaume Nault) [1899137] - [net] ipv4: Restore flowi4_oif update before call to xfrm_lookup_route (Guillaume Nault) [1899137] - [net] ipv4: Update exception handling for multipath routes via same device (Guillaume Nault) [1899137] - [net] ip: fix tos reflection in ack and reset packets (Guillaume Nault) [1899137] - [net] initialize fastreuse on inet_inherit_port (Guillaume Nault) [1899137] - [net] refactor bind_bucket fastreuse into helper (Guillaume Nault) [1899137] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'qplib_ctx' (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove the qp from list only if the qp destroy succeeds (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix driver crash on unaligned PSN entry address (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Restrict the max_gids to 256 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Static NQ depth allocation (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Fix the qp table indexing (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Do not report transparent vlan from QP1 (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Change wr posting logic to accommodate variable wqes (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Add helper data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Pull psn buffer dynamically based on prod (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce a function to allocate swq (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: introduce wqe mode to select execution path (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt: Delete 'nq_ptr' variable which is not used (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove dead code from rcfw (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Simplify obtaining queue entry from hw ring (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Update missing hsi data structures (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Reduce device page size detection code (Selvin Xavier) [1861886] - [infiniband] RDMA/bnxt_re: Remove unsupported modify_device callback (Selvin Xavier) [1861886] - [include] net: Add netif_is_bareudp() API to identify bareudp devices (Guillaume Nault) [1839788] - [net] Removed the device type check to add mpls support for devices (Guillaume Nault) [1839788] - [tools] selftests: set conf.all.rp_filter=0 in bareudp.sh (Guillaume Nault) [1839788] - [tools] selftests: disable rp_filter when testing bareudp (Guillaume Nault) [1839788] - [tools] selftests: add test script for bareudp tunnels (Guillaume Nault) [1839788] - [documentation] bareudp: Corrected description of bareudp module. (Guillaume Nault) [1839788] - [netdrv] bareudp: forbid mixing IP and MPLS in multiproto mode (Guillaume Nault) [1839788] - [netdrv] bareudp: Reverted support to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [documentation] bareudp: update iproute2 sample commands (Guillaume Nault) [1839788] - [netdrv] bareudp: Added attribute to enable & disable rx metadata collection (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed multiproto mode configuration (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed configuration to avoid having garbage values (Guillaume Nault) [1839788] - [netdrv] net: bareudp: avoid uninitialized variable warning (Guillaume Nault) [1839788] - [netdrv] bareudp: Fixed bareudp receive handling (Guillaume Nault) [1839788] - [netdrv] bareudp: remove unnecessary udp_encap_enable() in bareudp_socket_create() (Guillaume Nault) [1839788] - [netdrv] bareudp: print error message when command fails (Guillaume Nault) [1839788] - [netdrv] bareudp: add module alias (Guillaume Nault) [1839788] - [netdrv] bareudp: Fix uninitialized variable warnings. (Guillaume Nault) [1839788] - [netdrv] Special handling for IP & MPLS. (Guillaume Nault) [1839788] - [net] UDP tunnel encapsulation module for tunnelling different protocols like MPLS, IP, NSH etc. (Guillaume Nault) [1839788] - [arm64] arm64: remove arm64ksyms.c (Mark Salter) [1883365] - [arm64] arm64: frace: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: string: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: uaccess: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: page: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: smccc: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: tishift: use asm EXPORT_SYMBOL() (Mark Salter) [1883365] - [arm64] arm64: add EXPORT_SYMBOL_NOKASAN() (Mark Salter) [1883365] - [mm] arm64: move memstart_addr export inline (Mark Salter) [1883365] - [arm64] arm64: remove bitop exports (Mark Salter) [1883365] - [arm64] arm64: lib: use C string functions with KASAN enabled (Mark Salter) [1883365] - [arm64] arm64: add (Mark Salter) [1883365] - [arm64] locking/atomics/arm64, arm64/bitops: Include (Mark Salter) [1883365] - [arm64] locking/atomics/arm64: Replace our atomic/lock bitop implementations with asm-generic (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/lock.h: Rewrite using atomic_fetch_*() (Mark Salter) [1883365] - [include] locking/atomics, asm-generic/bitops/atomic.h: Rewrite using atomic_*() APIs (Mark Salter) [1883365] - [thermal] thermal: rcar_thermal: Add missing braces to conditional statement (Ivan Vecera) [1894564] - [thermal] thermal: Rename set_mode() to change_mode() (Ivan Vecera) [1894564] - [thermal] thermal: Simplify or eliminate unnecessary set_mode() methods (Ivan Vecera) [1894564] - [thermal] thermal: core: Stop polling DISABLED thermal devices (Ivan Vecera) [1894564] - [thermal] thermal: Explicitly enable non-changing thermal zone devices (Ivan Vecera) [1894564] - [thermal] thermal: Use mode helpers in drivers (Ivan Vecera) [1894564] - [thermal] thermal: Add mode helpers (Ivan Vecera) [1894564] - [thermal] thermal: remove get_mode() operation of drivers (Ivan Vecera) [1894564] - [thermal] thermal: Store device mode in struct thermal_zone_device (Ivan Vecera) [1894564] - [include] thermal: Add current mode to thermal zone device (Ivan Vecera) [1894564] - [acpi] thermal: Store thermal mode in a dedicated enum (Ivan Vecera) [1894564] - [acpi] acpi: thermal: Fix error handling in the register function (Ivan Vecera) [1894564] - [thermal] thermal: core: skip update disabled thermal zones after suspend (Ivan Vecera) [1894564] - [thermal] Thermal: do not clear passive state during system sleep (Ivan Vecera) [1894564] - [thermal] thermal: of-thermal: disable passive polling when thermal zone is disabled (Ivan Vecera) [1894564] - [crypto] crypto: qat - drop input parameter from adf_enable_aer() (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix function parameters descriptions (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unnecessary mutex_init() (Vladis Dronov) [1855190] - [crypto] crypto: qat - use PCI_VDEVICE (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace device ids defines (Vladis Dronov) [1855190] - [crypto] crypto: qat - include domain in top level debugfs path (Vladis Dronov) [1855190] - [crypto] crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA (Vladis Dronov) [1855190] - [crypto] crypto: qat - Use fallthrough pseudo-keyword (Vladis Dronov) [1855190] - [crypto] crypto: qat - add delay before polling mailbox (Vladis Dronov) [1855190] - [include] PCI: Add Intel QuickAssist device IDs (Vladis Dronov) [1855190] - [crypto] crypto: qat - fix double free in qat_uclo_create_batch_init_list (Vladis Dronov) [1855190] - [crypto] crypto: qat - fallback for xts with 192 bit keys (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove unused field in skcipher ctx (Vladis Dronov) [1855190] - [crypto] crypto: qat - validate xts key (Vladis Dronov) [1855190] - [crypto] crypto: qat - allow xts requests not multiple of block (Vladis Dronov) [1855190] - [crypto] crypto: qat - update timeout logic in put admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - send admin messages to set of AEs (Vladis Dronov) [1855190] - [crypto] crypto: qat - update fw init admin msg (Vladis Dronov) [1855190] - [crypto] crypto: qat - remove packed attribute in etr structs (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel ABI __u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - replace user types with kernel u types (Vladis Dronov) [1855190] - [crypto] crypto: qat - convert to SPDX License Identifiers (Vladis Dronov) [1855190] - [crypto] crypto: qat - simplify the qat_crypto function (Vladis Dronov) [1855190] - [crypto] crypto: qat - spelling s/Decrytp/Decrypt/ (Vladis Dronov) [1855190] - [crypto] crypto: qat/adf_aer - Replace GFP_ATOMIC with GFP_KERNEL in adf_dev_aer_schedule_reset() (Vladis Dronov) [1855190] - [thermal] thermal: int340x: processor_thermal: fix: update Jasper Lake PCI id (David Arcari) [1889331] - [thermal] thermal: int3403_thermal: Downgrade error message (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Prevent page fault on .set_mode() op (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Don't require IDSP to exist (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export OEM vendor variables (David Arcari) [1889331] - [thermal] thermal/int340x_thermal: Export GDDV (David Arcari) [1889331] - [thermal] thermal: int3400_thermal: Statically initialize .get_mode()/.set_mode() ops (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: fix: Update Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Use scnprintf() for avoiding potential buffer overflow (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Tiger Lake support (David Arcari) [1889331] - [platform] acpi: Remove header dependency (David Arcari) [1889331] - [thermal] thermal: int340x: switch to use helpers (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Jasper Lake support (David Arcari) [1889331] - [thermal] thermal: int340x_thermal: Add Tiger Lake ACPI device IDs (David Arcari) [1889331] - [thermal] thermal: intel: int3403: replace printk(KERN_WARN...) with pr_warn(...) (David Arcari) [1889331] - [thermal] thermal: intel: int340x_thermal: Remove unnecessary acpi_has_method() uses (David Arcari) [1889331] - [thermal] thermal: int340x: processor_thermal: Add Ice Lake support (David Arcari) [1889331] - [thermal] drivers: thermal: processor_thermal_device: Export sysfs interface for TCC offset (David Arcari) [1889331] - [netdrv] net/mlx5e: Fix arch depending casting issue in FEC (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Kconfig: convert imply usage to weak dependency (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix condition for termination table cleanup (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Use a separate work queue for fib event handling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Add support for RDMA TX flow table (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for RDMA TX steering (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Move to fully dynamic UAR mode once user space supports it (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Limit the scope of struct mlx5_bfreg_info to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend QP creation to get uar page index from user space (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Extend CQ creation to get uar page index from user space (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid group version scan when not necessary (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid incrementing FTE version (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Simplify matching group searches (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Generally use the WC auto detection test result (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Avoid forwarding to other eswitch uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Eswitch, enable forwarding back to uplink port (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5e: Add support for offloading traffic from uplink to uplink (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Don't use termination tables in slow path (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: Avoid configuring eswitch QoS if not supported (Alaa Hleihel) [1858559 1851700] - [netdrv] net/mlx5: DR, Add support for flow table id destination action (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Refactor unload all reps per rep type (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Update VF vports config when num of VFs changed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Introduce per vport configuration for eswitch modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, Make vport setup/cleanup sequence symmetric (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Prepare for vport enable/disable refactor (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant warning when QoS enable failed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-Switch, Remove redundant check of eswitch manager cap (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Allow MRs to be created in the cache synchronously (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Revise how the hysteresis scheme works for cache filling (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix locking in MR cache work queue (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Lock access to ent->available_mrs/limit when doing queue_work (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Fix MR cache size and limit debugfs (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Always remove MRs from the cache before destroying them (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Simplify how the MR cache bucket is located (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Rename the tracking variables for the MR cache (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Replace spinlock protected write with atomic var (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Move asynchronous mkey creation to mlx5_ib (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Assign mkey variant in mlx5_ib only (Alaa Hleihel) [1858559] - [infiniband] {IB, net}/mlx5: Setup mkey variant before mr create command invocation (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Use offsetofend() instead of duplicated variant (Alaa Hleihel) [1858559] - [infiniband] RDMA/mlx5: Remove duplicate definitions of SW_ICM macros (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: E-switch, make query inline mode a static function (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Allocate smaller size tables for ft offload (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Introduce TLS and IPSec objects enums (Alaa Hleihel) [1858559] - [include] net/mlx5: Introduce egress acl forward-to-vport capability (Alaa Hleihel) [1858559] - [infiniband] IB/mlx5: Add np_min_time_between_cnps and rp_max_rate debug params (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Fix header guard in rsc_dump.h (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Replace zero-length array with flexible-array member (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Remove a useless 'drain_workqueue()' call in 'mlx5e_ipsec_cleanup()' (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Add support for FEC modes based on 50G per lane links (Alaa Hleihel) [1858559] - [netdrv] net/mlxe5: Separate between FEC and current speed (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Advertise globaly supported FEC modes (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Enforce setting of a single FEC mode (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Set FEC to auto when configured mode is not supported (Alaa Hleihel) [1858559] - [netdrv] mlx5: Use proper logging and tracing line terminations (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in RX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Support dump callback in TX reporter (Alaa Hleihel) [1858559] - [netdrv] net/mlx5e: Gather reporters APIs together (Alaa Hleihel) [1858559] - [netdrv] net/mlx5: Add support for resource dump (Alaa Hleihel) [1858559] - [netdrv] bnxt_en: Fix wrong flag value passed to HWRM_PORT_QSTATS_EXT fw call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix HWRM_FUNC_QSTATS_EXT firmware call (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return -EOPNOTSUPP for ETHTOOL_GREGS on VFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: return proper error codes in bnxt_show_temp (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use memcpy to copy VPD field info (Jonathan Toppins) [1861885] - [netdrv] net: ethernet: broadcom: have drivers select DIMLIB as needed (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Avoid sending firmware messages when AER error is detected (Jonathan Toppins) [1861885] - [netdrv] bnxt: don't enable NAPI until rings are ready (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Setup default RSS map in all scenarios (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: init RSS table for Minimal-Static VF reservation (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix HWRM error when querying VF temperature (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix possible crash in bnxt_fw_reset_task() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix PCI AER error recovery flow (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Check for zero dir entries in NVRAM (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Don't query FW when netif_running() is false (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove superfluous memset() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for 'ethtool -d' (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Switch over to use the 64-bit software accumulated counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Accumulate all counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware masks for port counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Retrieve hardware counter masks from firmware if available (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate additional memory for all statistics blocks (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor statistics code and structures (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Use macros to define port statistics size and offset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware interface to 1.10.1.54 (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Remove PCIe non-counters from ethtool statistics (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: don't complain if TC flower can't be supported (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix completion ring sizing with TPA enabled (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Init ethtool link settings after reading updated PHY configuration (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix race when modifying pause settings (Jonathan Toppins) [1861885] - [netdrv] bnxt: convert to new udp_tunnel_nic infra (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: allow firmware to disable VLAN offloads (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: clean up VLAN feature bit handling (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Implement ethtool -X to set indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return correct RSS indirection table entries to ethtool -x (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fill HW RSS table from the RSS logical indirection table (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add helper function to return the number of RSS contexts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add logical RSS indirection table structure (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix up bnxt_get_rxfh_indir_size() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set up the chip specific RSS table size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Read VPD info only for PFs (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix statistics counters issue during ifdown with older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not enable legacy TX push on older firmware (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Store the running firmware version code (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add board.serial_number field to info_get cb (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Return from timer if interface is not in open state (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix AER reset logic on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Re-enable SRIOV during resume (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Simplify bnxt_resume() (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix firmware message length endianness (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix return code to "flash_device" (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Fix accumulation of bp->net_stats_prev (Jonathan Toppins) [1861885] - [netdrv] net: bnxt: Remove Comparison to bool in bnxt_ethtool.c (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: show only relevant ethtool stats for a TX or RX ring (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Split HW ring statistics strings into RX and TX parts (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Refactor the software ring counters (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add doorbell information to bnxt_en_dev struct (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Add support for L2 doorbell size (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Set the db_offset on 57500 chips for the RDMA MSIX entries (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Define the doorbell offsets on 57500 chips (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve kernel log messages related to ethtool reset (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: fix ethtool_reset_flags ABI violations (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: refactor ethtool firmware reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: prepare to refactor ethtool reset types (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Do not include ETH_FCS_LEN in the max packet length sent to fw (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Improve TQM ring context memory sizing formulas (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Allocate TQM ring context memory according to fw specification (Jonathan Toppins) [1861885] - [netdrv] bnxt_en: Update firmware spec. to 1.10.1.33 (Jonathan Toppins) [1861885] - [fs] fs/namespace.c: fix mountpoint reference counter race (Pavel Reichl) [1852651] {CVE-2020-12114}- [powerpc] powerpc/64: Fix kernel stack 16-byte alignment (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/aout: Fix struct user definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/uapi: Fix sigcontext definition to use user_pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] bpf: powerpc: fix broken uapi for BPF_PROG_TYPE_PERF_EVENT (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Tests for kernel accessing user memory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Introduce PPC_DEBUG_FEATURE_DATA_BP_ARCH_31 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix exception handling for CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Move DAWR detection logic outside of hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix handling of vector instructions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix quadword instruction handling on p10 predecessors (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoint.h: delete duplicated word (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Remove 512 byte boundary (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Return available watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Guest support for 2nd DAWR hcall (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Set CPU_FTR_DAWR1 based on pa-features bit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/dt_cpu_ftrs: Add feature for 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Enable watchpoint functionality on power10 guest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception for CACHEOP (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix DAWR exception constraint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Fix 512 byte boundary limit (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] hw-breakpoints: Fix build warnings with clang (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Support 2nd DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/xmon: Don't allow breakpoint overwriting (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't allow concurrent perf and ptrace events (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Prepare handler to handle more than one watchpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use builtin ALIGN*() macros (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce is_ptrace_bp() function (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Use loop for thread_struct->ptrace_bps (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Convert thread_struct->hw_brk to an array (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Disable all available watchpoints when !dawr_force_enable (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Get watchpoint count dynamically while disabling them (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to __set_breakpoint (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Provide DAWR number to set_dawr (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint/ptrace: Return actual num of available watchpoints (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Introduce function to get nr watchpoints dynamically (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Add SPRN macros for second DAWR (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move ptrace_triggered() into hw_breakpoint.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ppc_gethwdinfo() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: create ptrace_get_debugreg() (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ADV_DEBUG_REGS related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: move register viewing functions out of ptrace.c (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out TRANSACTIONAL_MEM related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out SPE related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out ALTIVEC related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: split out VSX related functions (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop PARAMETER_SAVE_AREA_OFFSET (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: drop unnecessary #ifdefs CONFIG_PPC64 (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: remove unused header includes (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Move ptrace into a subdirectory (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/watchpoint: Don't call dar_within_range() for Book3S (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Enable range tests on 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/hw_breakpoints: Rewrite 8xx breakpoints to allow any address range size (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Support for 8xx in ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] powerpc/watchpoint: Add DAR outside test in perf-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [tools] selftests/powerpc: Rewrite ptrace-hwbreak.c selftest (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: permanently include 8xx registers in reg.h (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Simplify vr_get/set() to avoid GCC warning (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/64: Interrupts save PPR on stack rather than thread_struct (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Use SWITCH_FRAME_SIZE for prom and rtas entry (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc/ptrace: Don't use sizeof(struct pt_regs) in ptrace code (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: Split user/kernel definitions of struct pt_regs (Desnes Augusto Nunes do Rosario) [1854528] - [powerpc] powerpc: declare set_breakpoint() static (Desnes Augusto Nunes do Rosario) [1854528] - [tools] perf vendor events power9: Added nest imc metric events (Michael Petlan) [1780258] - [powerpc] powerpc/perf: Fix crashes with generic_compat_pmu & BHRB (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Exclude pmc5/6 from the irrelevant PMU group constraints (Michael Petlan) [1854525] - [powerpc] powerpc/powernv/idle: add a basic stop 0-3 driver for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/kernel: Cleanup machine check function declarations (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix soft lockups due to missed interrupt accounting (Michael Petlan) [1854525] - [powerpc] powerpc: Add POWER10 raw mode cputable entry (Michael Petlan) [1854525] - [powerpc] powerpc/powernv: Machine check handler for POWER10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add extended regs support for power10 platform (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add support for outputting extended regs in perf intr_regs (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended regs in power10 (Michael Petlan) [1854525] - [tools] perf tools powerpc: Add support for extended register capability (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Fix MMCRA_BHRB_DISABLE define for binutils < 2.28 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Initialize power10 PMU registers in cpu setup routine (Michael Petlan) [1854525] - [powerpc] powerpc/perf: BHRB control to disable BHRB logic when not used (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 BHRB filter support for PERF_SAMPLE_BRANCH_IND_CALL/COND (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Ignore the BHRB kernel address filtering for P10 (Michael Petlan) [1854525] - [powerpc] powerpc/perf: power10 Performance Monitoring support (Michael Petlan) [1854525] - [powerpc] powerpc/perf: Add Power10 PMU feature to DT CPU features (Michael Petlan) [1854525] - [powerpc] powerpc/xmon: Add PowerISA v3.1 PMU SPRs (Michael Petlan) [1854525] - [powerpc] powerpc64: Break asm/percpu.h vs spinlock_types.h dependency (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current DAWR macros (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Make struct kernel_param_ops definition const (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: simplify kvm_cma_reserve() (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix symbol undeclared warnings (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Remove redundant initialization of variable ret (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: xive: Convert to DEFINE_SHOW_ATTRIBUTE (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Set LPCR[HDICE] before writing HDEC (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Do not allocate HPT for a nested guest (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Don't return -ENOTSUPP to userspace in ioctls (Greg Kurz) [1882796] - [powerpc] 64s: handle ISA v3.1 local copy-paste context switches (Greg Kurz) [1882796] - [powerpc] 64s: Move HMI IRQ stat from percpu variable to paca (Greg Kurz) [1882796] - [powerpc] kvm/cma: Improve kernel log during boot (Greg Kurz) [1882796] - [powerpc] kvm: Use correct CONFIG symbol in comment (Greg Kurz) [1882796] - [powerpc] watchpoint: Rename current H_SET_MODE DAWR macro (Greg Kurz) [1882796] - [tools] kvm: ppc: Fix typo on H_DISABLE_AND_GET hcall (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant kvm_run parameters in assembly (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Save/restore new PMU registers (Greg Kurz) [1882796] - [powerpc] perf: Add support for ISA3.1 PMU SPRs (Greg Kurz) [1882796] - [powerpc] perf: Update Power PMU cache_events to u64 type (Greg Kurz) [1882796] - [powerpc] perf: Update cpu_hw_event to use `struct` for storing MMCR registers (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Cleanup updates for kvm vcpu MMCR (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Protect kvm_vcpu_read_guest with srcu locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Increase KVMPPC_NR_LPIDS on POWER8 and POWER9 (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3shv: Enable support for ISA v3.1 guests (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s pr: Remove uninitialized_var() usage (Greg Kurz) [1882796] - [powerpc] kvm/book3s64: Fix kernel crash with nested kvm & DEBUG_VIRTUAL (Greg Kurz) [1882796] - [powerpc] book3s64/kvm: Fix secondary page table walk warning during migration (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s: Fix some RCU-list locks (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Ignore kmemleak false positives (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Clean up redundant 'kvm_run' parameters (Greg Kurz) [1882796] - [powerpc] kvm: ppc: Remove redundant kvm_run from vcpu_arch (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Remove redundant NULL check (Greg Kurz) [1882796] - [powerpc] Fix compile issue with force DAWR (Greg Kurz) [1882796] - [powerpc] silence a -Wcast-function-type warning in dawr_write_file_bool (Greg Kurz) [1882796] - [powerpc] kvm: ppc: book3s hv: Fix r3 corruption in h_set_dabr() (Greg Kurz) [1882796] - [powerpc] Add force enable of DAWR on P9 option (Greg Kurz) [1882796] - [documentation] powerpc: Document issues with the DAWR on POWER9 (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_UP() by ALIGN() (Greg Kurz) [1882796] - [powerpc] Replace _ALIGN_DOWN() by ALIGN_DOWN() (Greg Kurz) [1882796] - [netdrv] tg3: Fix soft lockup when tg3_reset_task() fails (Jonathan Toppins) [1899595] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: harden against cpu hotplug (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: adjust for temperature offset (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Build with _FILE_OFFSET_BITS=64 (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support AMD Family 19h (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Remove empty columns for Jacobsville (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Add a new GFXAMHz column that exposes gt_act_freq_mhz (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Skip pc8, pc9, pc10 columns, if they are disabled (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix output formatting for ACPI CST enumeration (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Replace HTTP links with HTTPS ones: TURBOSTAT UTILITY (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Enable accumulate RAPL display (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Introduce functions to accumulate RAPL consumption (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Make the energy variable to be 64 bit (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Always print idle in the system configuration header (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print /dev/cpu_dma_latency (Prarit Bhargava) [1857136] - [tools] turbostat/.gitignore: add SPDX License Identifier (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: update version (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Print cpuidle information (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix 32-bit capabilities warning (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Fix gcc build warnings (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Elkhart Lake (Prarit Bhargava) [1857136] - [tools] tools/power turbostat: Support Jasper Lake (Prarit Bhargava) [1857136] - [scsi] scsi: core: Return BLK_STS_AGAIN for ALUA transitioning (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Set 'transitioning' state on Unit Attention (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Return BLK_STS_AGAIN for ALUA transitioning state (Ewan Milne) [1867264] - [block] scsi: block: Return status code in blk_mq_end_request() (Ewan Milne) [1867264] - [scsi] scsi: scsi_dh_alua: Avoid crash during alua_bus_detach() (Ewan Milne) [1877156] - [fs] gfs2: check for live vs. read-only file system in gfs2_fitrim (Abhijith Das) [1335139] - [fs] gfs2: don't initialize statfs_change inodes in spectator mode (Abhijith Das) [1335139] - [fs] gfs2: init_journal's undo directive should also undo the statfs inodes (Abhijith Das) [1335139] - [fs] gfs2: Recover statfs info in journal head (Abhijith Das) [1335139] - [fs] gfs2: lookup local statfs inodes prior to journal recovery (Abhijith Das) [1335139] - [fs] gfs2: Add fields for statfs info in struct gfs2_log_header_host (Abhijith Das) [1335139] - [block] nbd: don't update block size after device is started (Ming Lei) [1891363] - [platform] platform/x86: thinkpad_acpi: lap or desk mode interface (David Arcari) [1889642] - [infiniband] IB/mlx4: Convert rej_tmout radix-tree to XArray (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Adjust delayed work when a dup is observed (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for REJ due to timeout (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Fix starvation in paravirt mux/demux (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Separate tunnel and wire bufs parameters (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add support for MRA (Alaa Hleihel) [1858564] - [infiniband] IB/mlx4: Add and improve logging (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Avoid assigning a value to ring_cons but not used it anymore in mlx4_en_xmit() (Alaa Hleihel) [1858564] - [netdrv] net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init() (Alaa Hleihel) [1858564] - [infiniband] treewide: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] net/mlx4: Use fallthrough pseudo-keyword (Alaa Hleihel) [1858564] - [netdrv] mlx4: convert to new udp_tunnel_nic infra (Alaa Hleihel) [1858564] - [netdrv] mlx4: Mark PM functions as __maybe_unused (Alaa Hleihel) [1858564] - [netdrv] mlx4: use generic power management (Alaa Hleihel) [1858564] - [netdrv] mlx4: disable device on shutdown (Alaa Hleihel) [1858564 1858563] - [include] IB/mlx4: Replace zero-length array with flexible-array (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_ethtool_add_mac_rule() (Alaa Hleihel) [1858564 1858563] - [netdrv] net: mlx4: remove unneeded variable "err" in mlx4_en_get_rxfh() (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: use napi_complete_done() in TX completion (Alaa Hleihel) [1858564 1858563] - [netdrv] net/mlx4_en: avoid indirect call in TX completion (Alaa Hleihel) [1858564 1858562] - [infiniband] RDMA/mlx4: Delete duplicated offsetofend implementation (Alaa Hleihel) [1858564 1858562] - [netdrv] net: mlx4: reject unsupported coalescing params (Alaa Hleihel) [1858564 1858562] - [hwmon] hwmon: (amd_energy) match for supported models (David Arcari) [1860387] - [hwmon] hwmon: (amd_energy) Missing platform_driver_unregister() on error in amd_energy_init() (David Arcari) [1860387] - [hwmon] hwmon: Add amd_energy driver to report energy counters (David Arcari) [1860387] - [include] include/asm-generic/topology.h: guard cpumask_of_node() macro argument (David Arcari) [1860387]- [x86] x86/dumpstack: Fix misleading instruction pointer error message (Kenneth Yin) [1903506] - [powerpc] powerpc/powernv/opal-dump : Use IRQ_HANDLED instead of numbers in interrupt handler (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/dump: Fix race while processing OPAL dump (Diego Domingos) [1891822] - [powerpc] powerpc/opal_elog: Handle multiple writes to ack attribute (Diego Domingos) [1891822] - [powerpc] powerpc/powernv/elog: Fix race while processing OPAL error log event (Diego Domingos) [1891822] - [hid] HID: logitech-dj: Fix an error in mse_bluetooth_descriptor (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin trackpad (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Add PID for MX Anywhere 2 (Benjamin Tissoires) [1885560] - [hid] HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer One S1003 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: fix stylus battery reporting (Benjamin Tissoires) [1885560] - [hid] HID: roccat: add bounds checking in kone_sysfs_write_settings() (Benjamin Tissoires) [1885560] - [hid] HID: core: Sanitize event code and type when mapping input (Benjamin Tissoires) [1885560] - [hid] HID: core: Correctly handle ReportSize being zero (Benjamin Tissoires) [1885560] - [hid] HID: elan: Fix memleak in elan_input_configured (Benjamin Tissoires) [1885560] - [hid] HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices (Benjamin Tissoires) [1885560] - [hid] Revert "HID: usbhid: do not sleep when opening device" (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix slab-out-of-bounds write in hiddev_ioctl_usage() (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll three more Lenovo PixArt mice (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Always sleep 60ms after I2C_HID_PWR_ON commands (Benjamin Tissoires) [1885560] - [hid] HID: macally: Constify macally_id_table (Benjamin Tissoires) [1885560] - [hid] HID: cougar: Constify cougar_id_table (Benjamin Tissoires) [1885560] - [hid] HID: quirks: add NOGET quirk for Logitech GROUP (Benjamin Tissoires) [1885560] - [hid] HID: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: udraw-ps3: Replace HTTP links with HTTPS ones (Benjamin Tissoires) [1885560] - [hid] HID: input: Fix devices that return multiple bytes in battery report (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Fix spurious F23 key press report during resume from suspend (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard fn_lock support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Add ThinkPad 10 Ultrabook Keyboard support (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Rename fn_lock sysfs attr handlers to make them generic (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Factor out generic parts of the LED code (Benjamin Tissoires) [1885560] - [hid] HID: lenovo: Merge tpkbd and cptkbd data structures (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid repeated "multiplier = " log messages (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Use HIDPP_RECEIVER_INDEX instead of 0xff (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: Replace PCI_DEV_FLAGS_NO_D3 with pci_save_state (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Ignore Simply Automated UPB PIM (Benjamin Tissoires) [1885560] - [hid] HID: apple: Disable Fn-key key-re-mapping on clone keyboards (Benjamin Tissoires) [1885560] - [hid] HID: Wiimote: Treat the d-pad as an analogue stick (Benjamin Tissoires) [1885560] - [hid] HID: steam: fixes race in handling device list (Benjamin Tissoires) [1885560] - [hid] HID: magicmouse: do not set up autorepeat (Benjamin Tissoires) [1885560] - [hid] HID: alps: support devices with report id 2 (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Always poll Obins Anne Pro 2 keyboard (Benjamin Tissoires) [1885560] - [hid] HID: input: do not run GET_REPORT unless there's a Resolution Multiplier (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: remove redundant assignment to variable retval (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: do not sleep when opening device (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: Remove MT_CLS_WIN_8_DUAL (Benjamin Tissoires) [1885560] - [hid] HID: sony: Fix for broken buttons on DS3 USB dongles (Benjamin Tissoires) [1885560] - [hid] HID: Add quirks for Trust Panora Graphic Tablet (Benjamin Tissoires) [1885560] - [hid] HID: apple: Swap the Fn and Left Control keys on Apple keyboards (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Schneider SCL142ALM to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: avoid bogus uninitialized-variable warning (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add HID_QUIRK_NO_INIT_REPORTS quirk for Dell K12A keyboard-dock (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: reset Synaptics SYNA2393 on resume (Benjamin Tissoires) [1885560] - [hid] HID: usbhid: Fix race between usbhid_close() and usbhid_stop() (Benjamin Tissoires) [1885560] - [hid] HID: alps: ALPS_1657 is too specific; use U1_UNICORN_LEGACY instead (Benjamin Tissoires) [1885560] - [hid] HID: alps: Add AUI1657 device ID (Benjamin Tissoires) [1885560] - [hid] HID: fix typo in Kconfig (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add support for Logitech G11 extra keys (Benjamin Tissoires) [1885560] - [hid] HID: multitouch: add eGalaxTouch P80H84 support (Benjamin Tissoires) [1885560] - [hid] HID: logitech: drop outdated references to unifying receivers (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Simplify an error handling path in 'rmi_hid_read_block()' (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: hbm.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: intel-ish-hid: ishtp-dev.h: Replace zero-length array with flexible-array member (Benjamin Tissoires) [1885560] - [hid] HID: Add driver fixing Glorious PC Gaming Race mouse report descriptor (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Do not fail the probe when we fail to disable F# emulation (Benjamin Tissoires) [1885560] - [hid] HID: fix Kconfig word ordering (Benjamin Tissoires) [1885560] - [hid] HID: add ALWAYS_POLL quirk to lenovo pixart mouse (Benjamin Tissoires) [1885560] - [hid] HID: google: add moonball USB id (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Use devm_kzalloc() instead of kzalloc() (Benjamin Tissoires) [1885560] - [hid] HID: appleir: Remove unnecessary goto label (Benjamin Tissoires) [1885560] - [hid] HID: hid-sensor-custom: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: hid-picolcd_fb: Use scnprintf() for avoiding potential buffer overflow (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support for the static device in the Powerplay mat/receiver (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix race condition for scheduled work during removal (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: call hid_hw_stop() in case of error (Benjamin Tissoires) [1885560] - [hid] HID: hid-bigbenff: fix general protection fault caused by double kfree (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: add Trekstor Surfbook E11B to descriptor override (Benjamin Tissoires) [1885560] - [hid] HID: alps: Fix an error handling path in 'alps_input_configured()' (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: Fix race in in hiddev_disconnect() (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add debug msg when exporting a HID++ report descriptors (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Remove ITE 8595 entry from hid_have_special_driver (Benjamin Tissoires) [1885560] - [include] HID: core: increase HID report buffer size to 8KiB (Benjamin Tissoires) [1885560] - [hid] HID: core: fix off-by-one memset in hid_report_raw_event() (Benjamin Tissoires) [1885560] - [hid] HID: apple: Add support for recent firmware on Magic Keyboards (Benjamin Tissoires) [1885560] - [hid] HID: ite: Only bind to keyboard USB interface on Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: BatteryVoltage: only read chargeStatus if extPower is active (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: avoid duplicate error handling code in 'hidpp_probe()' (Benjamin Tissoires) [1885560] - [hid] HID: hidraw, uhid: Always report EPOLLOUT (Benjamin Tissoires) [1885560] - [hid] HID: steam: Fix input device disappearing (Benjamin Tissoires) [1885560] - [hid] hid-logitech-hidpp: read battery voltage from newer devices (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add MX Master 3 Mouse (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support WirelessDeviceStatus connect events (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Support translations from short to long reports (Benjamin Tissoires) [1885560] - [hid] HID: hiddev: fix mess in hiddev_open() (Benjamin Tissoires) [1885560] - [hid] HID: hid-input: clear unmapped usages (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for incorrect input length on Lenovo Y720 (Benjamin Tissoires) [1885560] - [hid] HID: ite: Add USB id match for Acer SW5-012 keyboard dock (Benjamin Tissoires) [1885560] - [hid] HID: Add quirk for Xin-Mo Dual Controller (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: add support uniq ioctl (Benjamin Tissoires) [1885560] - [hid] HID: Fix slab-out-of-bounds read in hid_field_extract (Benjamin Tissoires) [1885560] - [hid] HID: picoLCD: constify fb ops (Benjamin Tissoires) [1885560] - [hid] HID: uhid: Fix returning EPOLLOUT from uhid_char_poll (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: Fix returning EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [hid] HID: rmi: Check that the RMI_STARTED bit is set before unregistering the RMI transport device (Benjamin Tissoires) [1885560] - [hid] HID: quirks: remove hid-led devices from hid_have_special_driver (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Reset ALPS touchpads on resume (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: fix no irq after reset on raydium 3118 (Benjamin Tissoires) [1885560] - [hid] HID: logitech-hidpp: Silence intermittent get_battery_capacity errors (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: remove orphaned member sleep_delay (Benjamin Tissoires) [1885560] - [hid] HID: quirks: Add quirk for HP MSU1465 PIXART OEM mouse (Benjamin Tissoires) [1885560] - [hid] HID: core: check whether Usage Page item is after Usage ID items (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Send power-on command after reset (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: Remove runtime power management (Benjamin Tissoires) [1885560] - [hid] HID: google: Detect base folded usage instead of hard-coding whiskers (Benjamin Tissoires) [1885560] - [hid] HID: google: add magnemite/masterball USB ids (Benjamin Tissoires) [1885560] - [hid] HID: logitech: Add depends on LEDS_CLASS to Logitech Kconfig entry (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510's M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for controlling the G510's RGB backlight (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the G510 keyboards' gaming keys (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add support for the M1-M3 and MR LEDs (Benjamin Tissoires) [1885560] - [hid] HID: lg-g15: Add keyboard and LCD backlight control (Benjamin Tissoires) [1885560] - [hid] HID: Add driver for Logitech gaming keyboards (G15, G15 v2) (Benjamin Tissoires) [1885560] - [hid] HID: hidraw: replace printk() with corresponding pr_xx() variant (Benjamin Tissoires) [1885560] - [hid] HID: prodikeys: make array keys static const, makes object smaller (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode on connect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: signal tablet mode switch on disconnect (Benjamin Tissoires) [1885560] - [hid] HID: google: whiskers: more robust tablet mode detection (Benjamin Tissoires) [1885560] - [hid] HID: core: fix dmesg flooding if report field larger than 32bit (Benjamin Tissoires) [1885560] - [include] HID: core: Add printk_once variants to hid_warn() etc (Benjamin Tissoires) [1885560] - [include] HID: core: reformat and reduce hid_printk macros (Benjamin Tissoires) [1885560] - [hid] HID: i2c-hid: modify quirks for weida's devices (Benjamin Tissoires) [1885560] - [hid] hid-logitech-dj: add the new Lightspeed receiver (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: add support of the G700(s) receiver (Benjamin Tissoires) [1885560] - [hid] HID: do not call hid_set_drvdata(hdev, NULL) in drivers (Benjamin Tissoires) [1885560] - [hid] HID: logitech-dj: extend consumer usages range (Benjamin Tissoires) [1885560] - [hid] hiddev: Return EPOLLOUT from hiddev_poll (Benjamin Tissoires) [1885560] - [hid] hidraw: Return EPOLLOUT from hidraw_poll (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add nopnp quirk for Acer Aspire 5 A515 (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special Cayman handling (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - only increment wakeup count on touch (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add ic type 0x15 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for high resolution reports (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - do not constantly re-query pattern ID (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add firmware update info for ICs 0x11, 0x13, 0x14 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware updated on newer ICs (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - add support for different firmware page sizes (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - fix detecting IAP version on older controllers (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle devices with patterns above 1 (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - make fetching IC type of older controllers more robust (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - handle firmware not implementing "get pattern" command (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list (Benjamin Tissoires) [1885560] - [input] Input: elantech - remove redundant assignments to variable error (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen (Benjamin Tissoires) [1885560] - [uapi] Input: add `SW_MACHINE_COVER` (Benjamin Tissoires) [1885560] - [input] input: i8042 - Remove special PowerPC handling (Benjamin Tissoires) [1885560] - [input] Input: synaptics - add a second working PNP_ID for Lenovo T470s (Benjamin Tissoires) [1885560] - [input] Input: introduce input_mt_report_slot_inactive() (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 reset list (Benjamin Tissoires) [1885560] - [input] Revert "Input: i8042 - add ThinkPad S230u to i8042 nomux list" (Benjamin Tissoires) [1885560] - [input] Input: i8042 - attach fwnode to serio i8042 kbd device (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add ThinkPad S230u to i8042 nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: update SPDX tag for input-event-codes.h (Benjamin Tissoires) [1885560] - [input] Input: i8042 - add Acer Aspire 5738z to nomux list (Benjamin Tissoires) [1885560] - [uapi] Input: move the new KEY_SELECTIVE_SCREENSHOT keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable RMI on HP Envy 13-ad105ng (Benjamin Tissoires) [1885560] - [uapi] Input: allocate keycode for "Selective Screenshot" key (Benjamin Tissoires) [1885560] - [input] Input: synaptics - remove the LEN0049 dmi id from topbuttonpad list (Benjamin Tissoires) [1885560] - [input] Input: synaptics - enable SMBus on ThinkPad L470 (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch T470s to RMI4 by default (Benjamin Tissoires) [1885560] - [input] Input: input_event - fix struct padding on sparc64 (Benjamin Tissoires) [1885560] - [uapi] Input: add privacy screen toggle keycode (Benjamin Tissoires) [1885560] - [input] Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus (Benjamin Tissoires) [1885560] - [uapi] Input: Add event-codes for macro keys found on various keyboards (Benjamin Tissoires) [1885560] - [input] Input: i8042 - enable wakeup on a stable struct device (Benjamin Tissoires) [1885560] - [input] Input: psmouse - drop all unneeded functions from mouse headers (Benjamin Tissoires) [1885560] - [input] Input: remove dev_err() usage after platform_get_irq() (Benjamin Tissoires) [1885560] - [input] Input: synaptics - fix a typo (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_add_action_or_reset() (Benjamin Tissoires) [1885560] - [input] Input: elan_i2c - switch to using devm_device_add_groups() (Benjamin Tissoires) [1885560] - [power] power: supply: core: Add Standard, Adaptive, and Custom charge types (Benjamin Tissoires) [1885560] - [scsi] scsi: mpt3sas: Fix timeouts observed while reenabling IRQ (Tomas Henzl) [1880114] - [fs] ext4: handle option set by mount flags correctly (Pavel Reichl) [1848084] - [fs] xfs: preserve inode versioning across remounts (Pavel Reichl) [1848084] - [kernel] kheaders: explain why include/config/autoconf.h is excluded from md5sum (Jiri Olsa) [1899585] - [kernel] kheaders: remove the last bashism to allow sh to run it (Jiri Olsa) [1899585] - [kernel] kheaders: optimize header copy for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: optimize md5sum calculation for in-tree builds (Jiri Olsa) [1899585] - [kernel] kheaders: remove unneeded 'cat' command piped to 'head' / 'tail' (Jiri Olsa) [1899585] - [kernel] kheaders: substituting --sort in archive creation (Jiri Olsa) [1899585] - [kernel] kheaders: make headers archive reproducible (Jiri Olsa) [1899585] - [kernel] kheaders: include only headers into kheaders_data.tar.xz (Jiri Olsa) [1899585] - [kernel] kheaders: remove meaningless -R option of 'ls' (Jiri Olsa) [1899585] - [kernel] kheaders: Do not regenerate archive if config is not changed (Jiri Olsa) [1899585] - [kernel] kheaders: Move from proc to sysfs (Jiri Olsa) [1899585] - [kernel] kernel/Makefile: don't assume that kernel/gen_ikh_data.sh is executable (Jiri Olsa) [1899585] - [init] init/config: Do not select BUILD_BIN2C for IKCONFIG (Jiri Olsa) [1899585] - [kernel] Provide in-kernel headers to make extending kernel easier (Jiri Olsa) [1899585] - [tty] pty: do tty_flip_buffer_push without port->lock in pty_write (Artem Savkov) [1787975] - [virtio] virtio_balloon: fix sparse warning (Nico Pache) [1839055] - [virtio] virtio_balloon: fix up endian-ness for free cmd id (Nico Pache) [1839055] - [virtio] virtio-balloon: Document byte ordering of poison_val (Nico Pache) [1839055] - [virtio] virtio-mmio: Reject invalid IRQ 0 command line argument (Nico Pache) [1839055] - [virtio] virtio-balloon: Disable free page reporting if page poison reporting is not enabled (Nico Pache) [1839055] - [virtio] virtio-mmio: Delete an error message in vm_find_vqs() (Nico Pache) [1839055] - [virtio] virtio: add VIRTIO_RING_NO_LEGACY (Nico Pache) [1839055] - [virtio] virtio-balloon: Avoid using the word 'report' when referring to free page hinting (Nico Pache) [1839055] - [virtio] virtio-balloon: make virtballoon_free_page_report() static (Nico Pache) [1839055] - [virtio] virtio-balloon: switch back to OOM handler for VIRTIO_BALLOON_F_DEFLATE_ON_OOM (Nico Pache) [1839055] - [documentation] mm/page_reporting: add free page reporting documentation (Nico Pache) [1839055] - [mm] mm/page_reporting: add budget limit on how many pages can be reported per pass (Nico Pache) [1839055] - [mm] mm/page_reporting: rotate reported pages to the tail of the list (Nico Pache) [1839055] - [virtio] virtio-balloon: add support for providing free page reports to host (Nico Pache) [1839055] - [virtio] virtio-balloon: pull page poisoning config out of free page hinting (Nico Pache) [1839055] - [mm] mm: introduce Reported pages (Nico Pache) [1839055] - [mm] mm: add function __putback_isolated_page (Nico Pache) [1839055] - [mm] mm: use zone and order instead of free area in free_list manipulators (Nico Pache) [1839055] - [mm] mm: adjust shuffle code to allow for future coalescing (Nico Pache) [1839055] - [virtio] virtio_balloon: Adjust label in virtballoon_probe (Nico Pache) [1839055] - [virtio] virtio_ring: Fix mem leak with vring_new_virtqueue() (Nico Pache) [1839055] - [virtio] virtio_balloon: Fix memory leaks on errors in virtballoon_probe() (Nico Pache) [1839055] - [virtio] virtio-balloon: Fix memory leak when unloading while hinting is in progress (Nico Pache) [1839055] - [virtio] virtio_balloon: prevent pfn array overflow (Nico Pache) [1839055] - [virtio] virtio-pci: check name when counting MSI-X vectors (Nico Pache) [1839055] - [virtio] virtio-balloon: initialize all vq callbacks (Nico Pache) [1839055] - [virtio] virtio-mmio: convert to devm_platform_ioremap_resource (Nico Pache) [1839055] - [virtio] virtio_balloon: divide/multiply instead of shifts (Nico Pache) [1839055] - [virtio] virtio_balloon: name cleanups (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker count (Nico Pache) [1839055] - [virtio] virtio_balloon: fix shrinker scan number of pages (Nico Pache) [1839055] - [virtio] virtio-mmio: add error check for platform_get_irq (Nico Pache) [1839055] - [virtio] virtio: Fix indentation of VIRTIO_MMIO (Nico Pache) [1839055] - [virtio] virtio/virtio_ring: do some comment fixes (Nico Pache) [1839055] - [virtio] virtio_pci: fix a NULL pointer reference in vp_del_vqs (Nico Pache) [1839055] - [virtio] virtio: hint if callbacks surprisingly might sleep (Nico Pache) [1839055] - [virtio] virtio_balloon: remove the unnecessary 0-initialization (Nico Pache) [1839055] - [virtio] virtio-balloon: improve update_balloon_size_func (Nico Pache) [1839055] - [virtio] virtio-balloon: tweak config_changed implementation (Nico Pache) [1839055] - [misc] virtio: don't allocate vqs when names= NULL (Nico Pache) [1839055] - [virtio] virtio_pci: use queue idx instead of array idx to set up the vq (Nico Pache) [1839055] - [virtio] virtio: remove deprecated VIRTIO_PCI_CONFIG() (Nico Pache) [1839055] - [mm] mm/page_poison: expose page_poisoning_enabled to kernel modules (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_PAGE_POISON (Nico Pache) [1839055] - [virtio] virtio-balloon: VIRTIO_BALLOON_F_FREE_PAGE_HINT (Nico Pache) [1839055] - [virtio] virtio: pci-legacy: Validate queue pfn (Nico Pache) [1839055] - [virtio] virtio: mmio-v1: Validate queue PFN (Nico Pache) [1839055] - [virtio] virtio_balloon: replace oom notifier with shrinker (Nico Pache) [1839055] - [virtio] virtio-balloon: kzalloc the vb struct (Nico Pache) [1839055] - [virtio] virtio-balloon: remove BUG() in init_vqs (Nico Pache) [1839055] - [mm] mm, debug_pagealloc: use a page type instead of page_ext flag (Nico Pache) [1839055] - [mm] mm, page_alloc: more extensive free page checking with debug_pagealloc (Nico Pache) [1839055] - [mm] mm, debug_pagelloc: use static keys to enable debugging (Nico Pache) [1839055] - [include] include/linux/page_ext.h: drop definition of unused PAGE_EXT_DEBUG_POISON (Nico Pache) [1839055] - [tty] vt: vt_ioctl: fix use-after-free in vt_in_use() (Vladis Dronov) [1875585] - [tty] vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console (Vladis Dronov) [1875585] - [tty] vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines (Vladis Dronov) [1875585] - [tty] vt: selection, introduce vc_is_sel (Vladis Dronov) [1875585] - [fs] gfs2: Don't sleep during glock hash walk (Andreas Grunbacher) [1871173]- [powerpc] powerpc/64s/hash: Fix hash_preload running with interrupts enabled (Diego Domingos) [1884152] - [powerpc] powerpc/pseries: Avoid using addr_to_pfn in real mode (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Handle UE event for memcpy_mcsafe (Diego Domingos) [1822675] - [powerpc] powerpc/pseries: Fix MCE handling on pseries (Diego Domingos) [1822675] - [powerpc] powerpc/64s/pseries: machine check convert to use common event code (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print additional information about MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Print correct severity for MCE error (Diego Domingos) [1822675] - [powerpc] powerpc/64s: Report SLB multi-hit rather than parity error (Diego Domingos) [1822675] - [powerpc] powerpc/powernv/mce: Reduce MCE console logs to lesser lines (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Improve array initialization (Diego Domingos) [1822675] - [powerpc] powerpc/pseries/mce: Fix misleading print for TLB mutlihit (Diego Domingos) [1822675] - [netdrv] i40e: fix crash when Rx descriptor count is changed (Jiri Benc) [1882708] - [netdrv] virtio_net: Fix out of bounds access of sq (Jiri Benc) [1882708] - [tools] tools/bpftool: Fix attaching flow dissector (Jiri Benc) [1882708] - [docs] bpf: Use valid and new links in index.rst (Jiri Benc) [1882708] - [netdrv] netdevsim: fix unbalaced locking in nsim_create() (Jiri Benc) [1882708] - [net] bpfilter: Allow to build bpfilter_umh as a module without static library (Jiri Benc) [1882708] - [net] bpf, netns: Fix use-after-free in pernet pre_exit callback (Jiri Benc) [1882708] - [net] xsk: Use dma_need_sync instead of reimplenting it (Jiri Benc) [1882708] - [net] xsk: Remove a double pool->dev assignment in xp_dma_map (Jiri Benc) [1882708] - [net] xsk: Replace the cheap_dma flag with a dma_need_sync flag (Jiri Benc) [1882708] - [net] dma-mapping: Add a new dma_need_sync API (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program to bpf_prog_detach in flow_dissector (Jiri Benc) [1882708] - [tools] selftests: bpf: Pass program and target_fd in flow_dissector_reattach (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_DETACH (Jiri Benc) [1882708] - [net] bpf: flow_dissector: Check value of unused flags to BPF_PROG_ATTACH (Jiri Benc) [1882708] - [tools] libbpf: Adjust SEC short cut for expected attach type BPF_XDP_DEVMAP (Jiri Benc) [1882708] - [tools] selftests/bpf: Test updating flow_dissector link with same program (Jiri Benc) [1882708] - [net] bpf, netns: Keep a list of attached bpf_link's (Jiri Benc) [1882708] - [net] bpf, netns: Keep attached programs in bpf_prog_array (Jiri Benc) [1882708] - [net] flow_dissector: Pull BPF program assignment up to bpf-netns (Jiri Benc) [1882708] - [tools] libbpf: Fix CO-RE relocs against .text section (Jiri Benc) [1882708] - [tools] selftests/bpf: Move newer bpf_iter_* type redefining to a new header file (Jiri Benc) [1882708] - [net] xdp: Handle frame_sz in xdp_convert_zc_to_xdp_frame() (Jiri Benc) [1882708] - [net] xdp: Fix xsk_generic_xmit errno (Jiri Benc) [1882708] - [tools] bpf: Selftests and tools use struct bpf_devmap_val from uapi (Jiri Benc) [1882708] - [net] xdp: use shift instead of 64 bit division (Jiri Benc) [1882708] - [net] bpf: Fix unused-var without NETDEVICES (Jiri Benc) [1882708] - [net] seg6: fix seg6_validate_srh() to avoid slab-out-of-bounds (Jiri Benc) [1882708] - [net] seg6: fix SRH processing to comply with RFC8754 (Jiri Benc) [1882708] - [tools] selftests/bpf: Extend test_flow_dissector to cover link creation (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert test_flow_dissector to use BPF skeleton (Jiri Benc) [1882708] - [tools] selftests/bpf, flow_dissector: Close TAP device FD after the test (Jiri Benc) [1882708] - [tools] selftests/bpf: Add tests for attaching bpf_link to netns (Jiri Benc) [1882708] - [tools] bpftool: Support link show for netns-attached links (Jiri Benc) [1882708] - [tools] bpftool: Extract helpers for showing link attach type (Jiri Benc) [1882708] - [tools] libbpf: Add support for bpf_link-based netns attachment (Jiri Benc) [1882708] - [net] bpf: Add link-based BPF program attachment to network namespace (Jiri Benc) [1882708] - [net] flow_dissector: Move out netns_bpf prog callbacks (Jiri Benc) [1882708] - [net] Introduce netns_bpf for BPF programs attached to netns (Jiri Benc) [1882708] - [net] flow_dissector: Pull locking up from prog attach callback (Jiri Benc) [1882708] - [net] bpf: Allow SO_BINDTODEVICE opt in bpf_setsockopt (Jiri Benc) [1882708] - [net] Make locking in sock_bindtoindex optional (Jiri Benc) [1882708] - [net] add sock_bindtoindex (Jiri Benc) [1882708] - [tools] selftest: Add tests for XDP programs in devmap entries (Jiri Benc) [1882708] - [net] xdp: Add xdp_txq_info to xdp_buff (Jiri Benc) [1882708] - [net] xdp: Introduce xdp_convert_frame_to_buff utility routine (Jiri Benc) [1882708] - [net] maintainers: Adjust entry in XDP SOCKETS to actual file name (Jiri Benc) [1882708] - [net] maintainers, xsk: Update AF_XDP section after moves/adds (Jiri Benc) [1882708] - [net] xsk: Explicitly inline functions and move definitions (Jiri Benc) [1882708] - [net] xdp: Simplify xdp_return_{frame, frame_rx_napi, buff} (Jiri Benc) [1882708] - [net] xsk: Remove MEM_TYPE_ZERO_COPY and corresponding code (Jiri Benc) [1882708] - [netdrv] mlx5, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ixgbe, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] ice, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e, xsk: Migrate to new MEM_TYPE_XSK_BUFF_POOL (Jiri Benc) [1882708] - [netdrv] i40e: Separate kernel allocated rx_bi rings from AF_XDP rings (Jiri Benc) [1882708] - [netdrv] i40e: Refactor rx_bi accesses (Jiri Benc) [1882708] - [net] xsk: Introduce AF_XDP buffer allocation API (Jiri Benc) [1867206 1882708] - [net] xsk: Move defines only used by AF_XDP internals to xsk.h (Jiri Benc) [1882708] - [net] xsk: Move driver interface to xdp_sock_drv.h (Jiri Benc) [1882708] - [net] xsk: Move xskmap.c to net/xdp/ (Jiri Benc) [1882708] - [net] xsk: Fix xsk_umem_xdp_frame_sz() (Jiri Benc) [1882708] - [tools] selftests/bpf: Convert bpf_iter_test_kern{3, 4}.c to define own bpf_iter_meta (Jiri Benc) [1882708] - [tools] selftest/bpf: Make bpf_iter selftest compilable against old vmlinux.h (Jiri Benc) [1882708] - [net] bpf: Fix too large copy from user in bpf_test_init (Jiri Benc) [1882708] - [tools] selftests/bpf: Xdp_adjust_tail add grow tail tests (Jiri Benc) [1882708] - [tools] selftests/bpf: Adjust BPF selftest for xdp_adjust_tail (Jiri Benc) [1882708] - [net] bpf: Add xdp.frame_sz in bpf_prog_test_run_xdp(). (Jiri Benc) [1882708] - [net] xdp: Clear grow memory in bpf_xdp_adjust_tail() (Jiri Benc) [1882708] - [net] xdp: Allow bpf_xdp_adjust_tail() to grow packet size (Jiri Benc) [1882708] - [netdrv] mlx5: Rx queue setup time determine frame_sz for XDP (Jiri Benc) [1882708] - [netdrv] xdp: For Intel AF_XDP drivers add XDP frame_sz (Jiri Benc) [1882708] - [netdrv] ice: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] i40e: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbevf: Add XDP frame size to VF driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] ixgbe: Fix XDP redirect on archs with PAGE_SIZE above 4K (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP frame size in two code paths (Jiri Benc) [1882708] - [netdrv] vhost_net: Also populate XDP frame size (Jiri Benc) [1882708] - [netdrv] tun: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] nfp: Add XDP frame size to netronome driver (Jiri Benc) [1882708] - [netdrv] net: thunderx: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] mlx4: Add XDP frame size and adjust max XDP MTU (Jiri Benc) [1882708] - [netdrv] qlogic/qede: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] hv_netvsc: Add XDP frame size to driver (Jiri Benc) [1882708] - [netdrv] veth: Xdp using frame_sz in veth driver (Jiri Benc) [1882708] - [netdrv] veth: Adjust hard_start offset on redirect XDP frames (Jiri Benc) [1882708] - [net] xdp: Cpumap redirect use frame_sz and increase skb_tailroom (Jiri Benc) [1882708] - [net] xdp: Xdp_frame add member frame_sz and handle in convert_to_xdp_frame (Jiri Benc) [1882708] - [net] XDP-generic determining XDP frame size (Jiri Benc) [1882708] - [netdrv] sfc: Add XDP frame size (Jiri Benc) [1882708] - [netdrv] bnxt: Add XDP frame size to driver (Jiri Benc) [1882708] - [net] xdp: Add frame size to xdp_buff (Jiri Benc) [1867209 1882708] - [net] bpfilter: switch to kernel_write (Jiri Benc) [1882708] - [tools] bpf: selftests: Add bpf_iter selftests (Jiri Benc) [1882708] - [tools] bpf: selftests: Add iterator programs for ipv6_route and netlink (Jiri Benc) [1882708] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Jiri Benc) [1882708] - [net] bpf: Change func bpf_iter_unreg_target() signature (Jiri Benc) [1882708] - [net] bpf: Refactor bpf_iter target registration (Jiri Benc) [1882708] - [net] bpf: Add netlink and ipv6_route bpf_iter targets (Jiri Benc) [1882708] - [net] bpfilter: check if $(CC) can link static libc in Kconfig (Jiri Benc) [1882708] - [net] bpfilter: document build requirements for bpfilter_umh (Jiri Benc) [1882708] - [net] xsk: Remove unnecessary member in xdp_umem (Jiri Benc) [1882708] - [net] xsk: Change two variable names for increased clarity (Jiri Benc) [1882708] - [net] bpfilter: match bit size of bpfilter_umh to that of the kernel (Jiri Benc) [1882708] - [docs] networking: convert filter.txt to ReST (Jiri Benc) [1882708] - [net] xsk: Fix typo in xsk_umem_consume_tx and xsk_generic_xmit comments (Jiri Benc) [1882708] - [net] introduce SO_BINDTOIFINDEX sockopt (Jiri Benc) [1882708] - [net] netlink: Use sizeof_field() macro (Jiri Benc) [1882708] - [net] xdp: Add SPDX license identifier - Makefile/Kconfig (Jiri Benc) [1882708] - [net] bpfilter: prefix header search paths with $(srctree)/ (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP meta data support (Jiri Benc) [1882708] - [netdrv] virtio_net: Keep vnet header zeroed if XDP is loaded for small buffer (Jiri Benc) [1882708] - [netdrv] virtio-net: keep vnet header zeroed after processing XDP (Jiri Benc) [1882708] - [netdrv] virtio-net: get rid of unnecessary container of rq stats (Jiri Benc) [1882708] - [netdrv] virtio-net: correctly update XDP_TX counters (Jiri Benc) [1882708] - [netdrv] virtio_net: Add kick stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Add XDP related stats (Jiri Benc) [1882708] - [netdrv] virtio_net: Factor out the logic to determine xdp sq (Jiri Benc) [1882708] - [netdrv] virtio_net: Make drop counter per-queue (Jiri Benc) [1882708] - [netdrv] virtio_net: Use temporary storage for accounting rx stats (Jiri Benc) [1882708] - [netdrv] bnx2: mark driver deprecated (Jonathan Toppins) [1878183] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1895862] - [net] openswitch: reuse the helper variable to improve the code readablity (Eelco Chaudron) [1895862] - [net] openvswitch: remove unused keep_flows (Eelco Chaudron) [1895862] - [net] openvswitch: refactor flow free function (Eelco Chaudron) [1895862] - [net] openvswitch: improve the coding style (Eelco Chaudron) [1895862] - [net] openvswitch: use skb_list_walk_safe helper for gso segments (Eelco Chaudron) [1895862] - [net] openvswitch: do not update max_headroom if new headroom is equal to old headroom (Eelco Chaudron) [1895862] - [net] openvswitch: drop unneeded likely() call around IS_ERR() (Eelco Chaudron) [1895862] - [net] openvswitch: convert to kvmalloc (Eelco Chaudron) [1895862] - [infiniband] RDMA/rxe: Mark Soft-RoCE driver as unsupported (Kamal Heib) [1878207] - [net] netfilter: nf_log: missing vlan offload tag and proto (Florian Westphal) [1889990] - [net] ipvs: clear skb->tstamp in forwarding path (Florian Westphal) [1889990] - [net] netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid (Florian Westphal) [1889990] - [net] netfilter: ctnetlink: add a range check for l3/l4 protonum (Florian Westphal) [1889990] {CVE-2020-25211} - [net] netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of ENOBUFS (Florian Westphal) [1889990] - [net] netfilter: nf_tables: fix destination register zeroing (Florian Westphal) [1889990] - [net] netfilter: nf_tables: add NFTA_SET_USERDATA if not null (Florian Westphal) [1889990] - [net] netfilter: flowtable: Set offload timeout when adding flow (Florian Westphal) [1889990] - [net] netfilter: conntrack: Move nf_ct_offload_timeout to header file (Florian Westphal) [1889990] - [net] netfilter: nft_set_rbtree: Handle outcomes of tree rotations in overlap detection (Florian Westphal) [1889990] - [net] netfilter: nf_tables: nft_exthdr: the presence return value should be little-endian (Florian Westphal) [1889990] - [net] netfilter: nft_set_pipapo: Drop useless assignment of scratch map index on insert (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct (Florian Westphal) [1889990] - [net] netfilter: arp_tables: init netns pointer in xt_tgchk_param struct (Florian Westphal) [1889990] - [net] ipvs: do not schedule icmp errors from tunnels (Florian Westphal) [1889990] - [powercap] powercap: intel_rapl: add support for Sapphire Rapids (Steve Best) [1837373] - [powercap] powercap/intel_rapl: add support for RocketLake (Steve Best) [1782715] - [char] ipmi: Use fallthrough pseudo-keyword (Tony Camuso) [1877848] - [char] ipmi/watchdog: add missing newlines when printing parameters by sysfs (Tony Camuso) [1877848] - [char] ipmi: remve duplicate code in __ipmi_bmc_register() (Tony Camuso) [1877848] - [documentation] docs: ipmi: Replace HTTP links with HTTPS ones (Tony Camuso) [1877848] - [char] ipmi: ssif: Remove finished TODO comment about SMBus alert (Tony Camuso) [1877848] - [documentation] Doc: driver-api: ipmi: Add description of alerts_broken module param (Tony Camuso) [1877848] - [char] ipmi:ssif: Remove dynamic platform device handing (Tony Camuso) [1877848] - [char] Try to load acpi_ipmi when an SSIF ACPI IPMI interface is added (Tony Camuso) [1877848] - [char] ipmi_si: Load acpi_ipmi when ACPI IPMI interface added (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix error handling and status check (Tony Camuso) [1877848] - [char] ipmi: Replace guid_copy() with import_guid() where it makes sense (Tony Camuso) [1877848] - [char] ipmi: use vzalloc instead of kmalloc for user creation (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Fix some format issue of the code (Tony Camuso) [1877848] - [char] ipmi:bt-bmc: Avoid unnecessary check (Tony Camuso) [1877848] - [char] docs: fix references for ipmi.rst file (Tony Camuso) [1877848] - [documentation] docs: move IPMI.txt to the driver API book (Tony Camuso) [1877848]- [powerpc] pseries: Fix 64 bit logical memory block panic (Steve Best) [1894922] - [mm] powerpc/book3s64/radix: Make radix_mem_block_size 64bit (Steve Best) [1894922] - [powerpc] powerpc/64s/radix: Fix build failure with RADIX_MMU=n (Steve Best) [1894922] - [x86] kvm: mmu: fix is_tdp_mmu_check when the TDP MMU is not in use (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: svm: Update cr3_lm_rsvd_bits for AMD SEV guests (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: Introduce cr3_lm_rsvd_bits in kvm_vcpu_arch (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: clflushopt should be treated as a no-op by emulation (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: handle MSR_IA32_DEBUGCTLMSR with report_ignored_msrs (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: request masterclock update any time guest uses different msr (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: ensure pv_cpuid.features is initialized when enabling cap (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: reads of restricted pv msrs should also result in #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: use positive error values for msr emulation that causes #GP (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86/mmu: fix counting of rmap entries in pte_list_add (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: x86: bump KVM_MAX_CPUID_ENTRIES (Vitaly Kuznetsov) [1898914 1878097] - [x86] vmxfeatures: rename features for consistency with KVM and manual (Vitaly Kuznetsov) [1898914 1878097] - [x86] kvm: vmx: Add VMX_FEATURE_USR_WAIT_PAUSE (Vitaly Kuznetsov) [1878097 1898914] - [x86] Expose SERIALIZE for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose fast short REP MOV for supported cpuid (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: x86: Expose AVX512 VP2INTERSECT in cpuid for TGL (Vitaly Kuznetsov) [1878097 1898914] - [x86] kvm: Convert to new CPU match macros (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: fix referenced ioctl symbol (Vitaly Kuznetsov) [1878097 1898914] - [documentation] docs: kvm: api.rst: add missing spaces (Vitaly Kuznetsov) [1878097 1898914] - [virt] kvm: use struct_size() and flex_array_size() helpers in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix some typos in cpuid.rst (Vitaly Kuznetsov) [1878097 1898914] - [documentation] documentation: kvm: fix a typo (Vitaly Kuznetsov) [1878097 1898914] - [x86] x86/cpu: Fix typos and improve the comments in sync_core() (David Arcari) [1837457] - [x86] x86/cpu: Use SERIALIZE in sync_core() when available (David Arcari) [1837457] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (David Arcari) [1837457] - [x86] x86/cpufeatures: Add enumeration for SERIALIZE instruction (David Arcari) [1837457] - [x86] x86/cpu: Refactor sync_core() for readability (David Arcari) [1837457] - [x86] x86/cpu: Relocate sync_core() to sync_core.h (David Arcari) [1837457] - [arm64] kvm: arm64: Set HCR_EL2.PTW to prevent AT taking synchronous exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Survive synchronous exceptions caused by AT instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Add kvm_extable for vaxorcism code (Auger Eric) [1882794] - [arm64] kvm: arm64: Print warning when cpu erratum can cause guests to deadlock (Auger Eric) [1882794] - [arm64] kvm: arm64: clean up redundant 'kvm_run' parameters (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common KVM implementation of MMU memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Use common code's approach for __GFP_ZERO with memory caches (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop @max param from mmu_topup_memory_cache() (Auger Eric) [1882794] - [arm64] s/AMEVTYPE/AMEVTYPER (Auger Eric) [1882794] - [arm64] kvm: arm64: bti: Reset BTYPE when skipping emulated instructions (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove S1PTW check from kvm_vcpu_dabt_iswrite() (Auger Eric) [1882794] - [arm64] kvm: arm64: Assume write fault on S1PTW permission fault on instruction fetch (Auger Eric) [1882794] - [arm64] kvm: arm64: Update page shift if stage 2 block mapping not supported (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix address truncation in traces (Auger Eric) [1882794] - [arm64] kvm: arm64: Do not try to map PUDs when they are folded into PMD (Auger Eric) [1882794] - [documentation] arm64/x86: kvm: Introduce steal-time cap (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix stolen time accounting across migration (Auger Eric) [1882794] - [kernel] kvm: arm64: Drop type input from kvm_put_guest (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Fix potential loss of stolen time (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: steal-time is only supported when configured (Auger Eric) [1882794] - [arm64] kvm: arm64: Move S1PTW S2 fault logic out of io_mem_abort() (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't skip cache maintenance for read-only memslots (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle data and instruction external aborts the same way (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename kvm_vcpu_dabt_isextabt() (Auger Eric) [1882794] - [trace] kvm: arm: Add trace name for ARM_NISV (Auger Eric) [1882794] - [arm64] kvm: arm64: Ensure that all nVHE hyp code is in .hyp.text (Auger Eric) [1882794] - [arm64] kvm: arm64: Don't use has_vhe() for CHOOSE_HYP_SYM() (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Move timer registers to the sys_regs file (Auger Eric) [1882794] - [arm64] kvm: arm64: timers: Rename kvm_timer_sync_hwstate to kvm_timer_sync_user (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SPSR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Disintegrate SPSR array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move SP_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ELR_EL1 to the system register array (Auger Eric) [1882794] - [arm64] kvm: arm64: Make struct kvm_regs userspace-only (Auger Eric) [1882794] - [arm64] kvm: arm64: debug: Drop useless vpcu parameter (Auger Eric) [1882794] - [arm64] kvm: arm64: pauth: Use ctxt_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: sve: Use __vcpu_sys_reg() instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: hyp: Use ctxt_sys_reg/__vcpu_sys_reg instead of raw sys_regs access (Auger Eric) [1882794] - [arm64] kvm: arm64: Introduce accessor for ctxt->sys_reg (Auger Eric) [1882794] - [arm64] kvm: arm64: Rename HSR to ESR (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop long gone function parameter documentation (Auger Eric) [1882794] - [arm64] kvm: arm64: vgic-its: Change default outer cacheability for {PEND, PROP}BASER (Auger Eric) [1882794] - [arm64] kvm: arm64: Lift instrumentation restrictions on VHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove __hyp_text macro, use build rules instead (Auger Eric) [1882794] - [arm64] kvm: arm64: Compile remaining hyp/ files for both VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/timer-sr.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/sysreg-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/debug-sr.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Split hyp/switch.c to VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Duplicate hyp/tlb.c for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Move hyp-init.S to nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Build hyp-entry.S separately for VHE/nVHE (Auger Eric) [1882794] - [arm64] kvm: arm64: Handle calls to prefixed hyp functions (Auger Eric) [1882794] - [arm64] kvm: arm64: Use build-time defines in has_vhe() (Auger Eric) [1882794] - [arm64] kvm: arm64: Add build rules for separate VHE/nVHE object files (Auger Eric) [1882794] - [arm64] kvm: arm64: Move __smccc_workaround_1_smc to .rodata (Auger Eric) [1882794] - [arm64] kvm: arm64: Fix symbol dependency in __hyp_call_panic_nvhe (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove the target table (Auger Eric) [1882794] - [arm64] kvm: arm64: Remove target_table from exit handlers (Auger Eric) [1882794] - [arm64] kvm: arm64: Move ACTLR_EL1 emulation to the sys_reg_descs array (Auger Eric) [1882794] - [arm64] kvm: arm64: Tolerate an empty target_table list (Auger Eric) [1882794] - [arm64] kvm: arm64: Drop the target_table[] indirection (Auger Eric) [1882794] - [arm64] kvm: Remove kern_hyp_va from get_vcpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Allow in-atomic injection of SPIs (Auger Eric) [1882794] - [arm64] kvm: arm64: Add emulation for 32bit guests accessing ACTLR2 (Auger Eric) [1882794] - [arm64] kvm: arm64: Use cpus_have_final_cap for has_vhe() (Auger Eric) [1882794] - [arm64] efi: Move variable assignments after SECTIONS (Auger Eric) [1882794] - [arm64] efi: Mark __efistub_stext_offset as an absolute symbol explicitly (Auger Eric) [1882794] - [arm64] drop linker script hack to hide __efistub_ symbols (Auger Eric) [1882794] - [arm64] kvm: arm64: Synchronize sysreg state on injecting an AArch32 exception (Auger Eric) [1882794] - [arm64] kvm: arm64: Make vcpu_cp1x() work on Big Endian hosts (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop sparse from moaning at __hyp_this_cpu_ptr (Auger Eric) [1882794] - [arm64] kvm: arm64: Check advertised Stage-2 page size capability (Auger Eric) [1882794] - [arm64] cpufeature: Don't treat granule sizes as strict (Auger Eric) [1882794] - [arm64] cpufeature: Validate hypervisor capabilities during CPU hotplug (Auger Eric) [1882794] - [arm64] kvm: hyp: use cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] cpufeature: add cpus_have_final_cap() (Auger Eric) [1882794] - [arm64] mark (__)cpus_have_const_cap as __always_inline (Auger Eric) [1882794] - [arm64] Mark call_smc_arch_workaround_1 as __maybe_unused (Auger Eric) [1882794] - [arm64] Make use of ARCH_WORKAROUND_1 even when KVM is not enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Delete duplicated label in invalid_vector (Auger Eric) [1882794] - [arm64] use mov_q instead of literal ldr (Auger Eric) [1882794] - [arm64] kvm: Modernize __smccc_workaround_1_smc_start annotations (Auger Eric) [1882794] - [arm64] kvm: Modernize annotation for __bp_harden_hyp_vecs (Auger Eric) [1882794] - [arm64] kvm: Annotate assembly using modern annoations (Auger Eric) [1882794] - [arm64] kvm: arm64: Prevent vcpu_has_ptrauth from generating OOL functions (Auger Eric) [1882794] - [arm64] kvm: disable access to AMU registers from kvm guests (Auger Eric) [1882794] - [arm64] kvm: arm64: pvtime: Ensure task delay accounting is enabled (Auger Eric) [1882794] - [arm64] kvm: arm64: Stop writing aarch32's CSSELR into ACTLR (Auger Eric) [1882794] - [arm64] kvm: Annotate guest entry/exit as a single function (Auger Eric) [1882794] - [kernel] linkage: Introduce new macros for assembler symbols (Auger Eric) [1882794] - [s390] kvm: s390: remove diag318 reset code (Thomas Huth) [1899497] - [powerpc] powerpc/hv-gpci: Add sysfs files inside hv-gpci device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Add cpu hotplug support (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-gpci format (Michael Petlan) [1844416] - [documentation] Documentation/ABI: Add ABI documentation for hv-24x7 format (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-gpci: Fix starting index value (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Move cpumask file to top folder of hv-24x7 driver (Michael Petlan) [1844416] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show cpumask (Michael Petlan) [1844416] - [powerpc] powerpc/perf/hv-24x7: Add cpu hotplug support (Michael Petlan) [1844416] - [powerpc] powerpc/perf: Fix reading of MSRbits in trace-imc (Michael Petlan) [1854536] - [powerpc] powerpc/perf: Add kernel support for new MSRbits in trace-imc (Michael Petlan) [1854536] - [documentation] kdump: update kdump documentation due to change of crash URL (Lianbo Jiang) [1896236] - [pinctrl] pinctrl: intel: Add Intel Emmitsburg pin controller support (David Arcari) [1837409] - [x86] x86/platform/uv: Fix copied UV5 output archtype (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Drop last traces of uv_flush_tlb_others (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Recognize UV5 hubless system identifier (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove spaces from OEM IDs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Fix missing OEM_TABLE_ID (Frank Ramsay) [1861439] - [misc] x86/platform/uv: Update Copyrights to conform to HPE standards (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update for UV5 NMI MMR changes (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 TSC checking (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update node present counting (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV5 MMR references in UV GRU (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Adjust GAM MMR references affected by UV5 updates (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update MMIOH references based on new UV5 MMRs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add and decode Arch Type in UVsystab (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Add UV5 direct references (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Update UV MMRs for UV5 (Frank Ramsay) [1861439] - [misc] drivers/misc/sgi-xp: Adjust references in UV kernel modules (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove SCIR MMR references for UV systems (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove UV BAU TLB Shootdown Handler (Frank Ramsay) [1861439] - [x86] x86/kernel: Fix more -Wmissing-prototypes warnings (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Avoid unused variable warning (Frank Ramsay) [1861439] - [misc] misc: sgi-xp: xp_main: Staticify local functions xp_init() and xp_exit() (Frank Ramsay) [1861439] - [misc] misc/sgi-xp: remove SGI SN2 support (Frank Ramsay) [1861439] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Frank Ramsay) [1861439] - [x86] efi/x86: Remove unreachable code in kexec_enter_virtual_mode() (Frank Ramsay) [1861439] - [x86] x86/efi: Remove unused EFI_UV1_MEMMAP code (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove uv bios and efi code related to EFI_UV1_MEMMAP (Frank Ramsay) [1861439] - [x86] x86/efi: Remove references to no-longer-used efi_have_uv1_memmap() (Frank Ramsay) [1861439] - [x86] x86/efi: Delete SGI UV1 detection (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove efi=old_map command line option (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove vestigial mention of UV1 platform from bios header (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for uv1 platform from uv_hub (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_bau (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_mmrs (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from x2apic_uv_x (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_tlb (Frank Ramsay) [1861439] - [x86] x86/platform/uv: Remove support for UV1 platform from uv_time (Frank Ramsay) [1861439] - [x86] x86/apic/uv: Make x2apic_extra_bits static (Frank Ramsay) [1861439] - [s390] uv: add destroy page call (Thomas Huth) [1882800] - [s390] gmap: improve THP splitting (Thomas Huth) [1882800] - [s390] kvm: s390: clean up redundant 'kvm_run' parameters (Thomas Huth) [1882800] - [documentation] documentation: virt: kvm/s390-pv: drop doubled words (Thomas Huth) [1882800] - [s390] kvm: s390: reduce number of IO pins to 1 (Thomas Huth) [1882800] - [s390] protvirt: use scnprintf() instead of snprintf() (Thomas Huth) [1882800] - [s390] kvm: s390: remove unneeded semicolon in gisa_vcpu_kicker() (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: gmap_table_walk() simplifications (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Move conditional reschedule (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix possible race when shadowing region 3 tables (Thomas Huth) [1882800] - [s390] kvm: s390: vsie: Fix region 1 ASCE sanity shadow address checks (Thomas Huth) [1882800] - [s390] kvm: s390: Use fallthrough; (Thomas Huth) [1882800] - [s390] mm: use refcount_t for refcount (Thomas Huth) [1882800] - [s390] mm: make gmap_test_and_clear_dirty_pmd static (Thomas Huth) [1882800] - [s390] mm: optimize locking without huge pages in gmap_pmd_op_walk() (Thomas Huth) [1882800] - [net] openvswitch: introduce common code for flushing flows (Eelco Chaudron) [1888576] - [net] openvswitch: silence suspicious RCU usage warning (Eelco Chaudron) [1888576] - [net] openvswitch: make masks cache size configurable (Eelco Chaudron) [1888576] - [net] openvswitch: add masks cache hit counter (Eelco Chaudron) [1888576] - [net] openvswitch: Prevent kernel-infoleak in ovs_ct_put_key() (Eelco Chaudron) [1888576] - [net] openvswitch: kerneldoc fixes (Eelco Chaudron) [1888576] - [net] openvswitch: use div_u64() for 64-by-32 divisions (Eelco Chaudron) [1888576] - [net] openvswitch: suitable access to the dp_meters (Eelco Chaudron) [1888576] - [net] openvswitch: use u64 for meter bucket (Eelco Chaudron) [1888576] - [net] openvswitch: make EINVAL return value more obvious (Eelco Chaudron) [1888576] - [net] openvswitch: remove the unnecessary check (Eelco Chaudron) [1888576] - [net] openvswitch: set max limitation to meters (Eelco Chaudron) [1888576] - [net] openvswitch: expand the meters supported number (Eelco Chaudron) [1888576] - [net] openvswitch: use hlist_for_each_entry_rcu instead of hlist_for_each_entry (Eelco Chaudron) [1888576] - [net] ovs: datapath: hide clang frame-overflow warnings (Eelco Chaudron) [1888576] - [net] openvswitch: use netif_ovs_is_port() instead of opencode (Eelco Chaudron) [1888576] - [platform] platform/x86: intel_pmc_core: avoid unused-function warnings (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: fix bound check in pmc_core_mphy_pg_show() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: update TGL's LPM0 reg bit map name (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_substate_res_show() generic (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make pmc_core_lpm_display() generic for platforms that support sub-states (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add slp_s0_offset attribute back to tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove duplicate 'if' to create debugfs entry (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Relocate pmc_core_*_display() to outside of CONFIG_DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs support to access live status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Dump low power status registers on an S0ix.y failure (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add an additional parameter to pmc_core_lpm_display() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove slp_s0 attributes from tgl_reg_map (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Refactor the driver by removing redundant code (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry for low power mode status registers (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Add debugfs entry to access sub-state residencies (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix spelling of MHz unit (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Fix indentation in function definitions (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Put more stuff under #ifdef DEBUG_FS (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Respect error code of kstrtou32_from_user() (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Make debugfs entry for pch_ip_power_gating_status conditional (David Arcari) [1783140] - [platform] platform/x86: intel_pmc_core: Remove unnecessary assignments (David Arcari) [1783140]- [net] mptcp: provide rmem[0] limit (Davide Caratti) [1874368] - [net] mptcp: add missing memory scheduling in the rx path (Davide Caratti) [1874368] - [net] mptcp: depends on IPV6 but not as a module (Davide Caratti) [1874368] - [tools] selftests: mptcp: depends on built-in IPv6 (Davide Caratti) [1874368] - [net] mptcp: MPTCP_IPV6 should depend on IPV6 instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: subflows garbage collection (Davide Caratti) [1874368] - [net] mptcp: fix fallback for MP_JOIN subflows (Davide Caratti) [1874368] - [net] mptcp: make DACK4/DACK8 usage consistent among all subflows (Davide Caratti) [1874368] - [net] mptcp: fix infinite loop on recvmsg()/worker() race. (Davide Caratti) [1874368] - [net] mptcp: don't skip needed ack (Davide Caratti) [1874368] - [net] mptcp: more DATA FIN fixes (Davide Caratti) [1874368] - [net] mptcp: Constify mptcp_pm_ops (Davide Caratti) [1874368] - [net] mptcp: ADD_ADDRs with echo bit are smaller (Davide Caratti) [1874368] - [net] mptcp: Handle incoming 32-bit DATA_FIN values (Davide Caratti) [1874368] - [net] mptcp: Consistently use READ_ONCE/WRITE_ONCE with msk->ack_seq (Davide Caratti) [1874368] - [net] tcp: drop unused function argument from mptcp_incoming_options (Davide Caratti) [1874368] - [net] mptcp: retransmit ADD_ADDR when timeout (Davide Caratti) [1874368] - [net] mptcp: add sk_stop_timer_sync helper (Davide Caratti) [1874368] - [net] mptcp: add struct mptcp_pm_add_entry (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove addr and subflow test cases (Davide Caratti) [1874368] - [tools] selftests: mptcp: add remove cfg in mptcp_connect (Davide Caratti) [1874368] - [net] mptcp: add mptcp_destroy_common helper (Davide Caratti) [1874368] - [net] mptcp: add RM_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: implement mptcp_pm_remove_subflow (Davide Caratti) [1874368] - [net] mptcp: remove addr and subflow in PM netlink (Davide Caratti) [1874368] - [net] mptcp: add accept_subflow re-check (Davide Caratti) [1874368] - [tools] selftests: mptcp: add ADD_ADDR mibs check function (Davide Caratti) [1874368] - [net] tcp: change pingpong threshold to 3 (Davide Caratti) [1874368] - [net] tcp: Refactor pingpong code (Davide Caratti) [1874368] - [net] mptcp: add ADD_ADDR related mibs (Davide Caratti) [1874368] - [net] mptcp: send out ADD_ADDR with echo flag (Davide Caratti) [1874368] - [net] mptcp: add the incoming RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: add the outgoing RM_ADDR support (Davide Caratti) [1874368] - [net] mptcp: rename addr_signal and the related functions (Davide Caratti) [1874368] - [net] mptcp: Wake up MPTCP worker when DATA_FIN found on a TCP FIN packet (Davide Caratti) [1874368] - [net] mptcp: fix integer overflow in mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: Fix unsigned 'max_seq' compared with zero in mptcp_data_queue_ofo (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] selftests: mptcp: interpret \n as a new line (Davide Caratti) [1874368] - [tools] mptcp: simult flow self-tests (Davide Caratti) [1874368] - [net] mptcp: call tcp_cleanup_rbuf on subflows (Davide Caratti) [1874368] - [net] mptcp: allow picking different xmit subflows (Davide Caratti) [1874368] - [net] mptcp: allow creating non-backup subflows (Davide Caratti) [1874368] - [net] mptcp: move address attribute into mptcp_addr_info (Davide Caratti) [1874368] - [net] mptcp: add OoO related mibs (Davide Caratti) [1874368] - [net] mptcp: cleanup mptcp_subflow_discard_data() (Davide Caratti) [1874368] - [net] mptcp: move ooo skbs into msk out of order queue. (Davide Caratti) [1874368] - [net] mptcp: introduce and use mptcp_try_coalesce() (Davide Caratti) [1874368] - [net] mptcp: basic sndbuf autotuning (Davide Caratti) [1874368] - [net] mptcp: trigger msk processing even for OoO data (Davide Caratti) [1874368] - [net] mptcp: set data_ready status bit in subflow_check_data_avail() (Davide Caratti) [1874368] - [net] mptcp: rethink 'is writable' conditional (Davide Caratti) [1874368] - [net] tcp: reduce POLLOUT events caused by TCP_NOTSENT_LOWAT (Davide Caratti) [1874368] - [net] mptcp: fix kmalloc flag in mptcp_pm_nl_get_local_id (Davide Caratti) [1874368] - [net] mptcp: fix subflow's remote_id issues (Davide Caratti) [1874368] - [net] mptcp: fix subflow's local_id issues (Davide Caratti) [1874368] - [net] mptcp: Remove unused macro MPTCP_SAME_STATE (Davide Caratti) [1874368] - [net] treewide: Use fallthrough pseudo-keyword (Davide Caratti) [1874368] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Davide Caratti) [1874368] - [net] mptcp: free acked data before waiting for more memory (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error redux (Davide Caratti) [1874368] - [net] mptcp: sendmsg: reset iter on error (Davide Caratti) [1874368] - [net] mptcp: fix warn at shutdown time for unaccepted msk sockets (Davide Caratti) [1874368] - [net] mptcp: use mptcp_for_each_subflow in mptcp_stream_accept (Davide Caratti) [1874368] - [net] mptcp: fix syncookie build error on UP (Davide Caratti) [1874368] - [net] tcp: fix syn cookied MPTCP request socket leak (Davide Caratti) [1874368] - [net] tcp: fix build fong CONFIG_MPTCP=n (Davide Caratti) [1874368] - [tools] selftests: mptcp: add test cases for mptcp join tests with syn cookies (Davide Caratti) [1874368] - [tools] selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally (Davide Caratti) [1874368] - [net] mptcp: enable JOIN requests even if cookies are in use (Davide Caratti) [1874368] - [net] tcp: free request sock directly upon TFO or syncookies error (Davide Caratti) [1874368] - [include] net: keep refcount warning in reqsk_free() (Davide Caratti) [1874368] - [net] tcp: syncookies: create mptcp request socket for ACK cookies with MPTCP option (Davide Caratti) [1874368] - [net] mptcp: subflow: add mptcp_subflow_init_cookie_req helper (Davide Caratti) [1874368] - [net] mptcp: rename and export mptcp_subflow_request_sock_ops (Davide Caratti) [1874368] - [net] mptcp: subflow: split subflow_init_req (Davide Caratti) [1874368] - [net] mptcp: token: move retry to caller (Davide Caratti) [1874368] - [net] tcp: rename request_sock cookie_ts bit to syncookie (Davide Caratti) [1874368] - [net] mptcp: Safely store sequence number when sending data (Davide Caratti) [1874368] - [net] mptcp: Safely read sequence number when lock isn't held (Davide Caratti) [1874368] - [net] mptcp: Skip unnecessary skb extension allocation for bare acks (Davide Caratti) [1874368] - [net] mptcp: Only use subflow EOF signaling on fallback connections (Davide Caratti) [1874368] - [net] mptcp: Use full MPTCP-level disconnect state machine (Davide Caratti) [1874368] - [net] mptcp: Add helper to process acks of DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Add mptcp_close_state() helper (Davide Caratti) [1874368] - [net] mptcp: Track received DATA_FIN sequence number and add related helpers (Davide Caratti) [1874368] - [net] mptcp: Use MPTCP-level flag for sending DATA_FIN (Davide Caratti) [1874368] - [net] mptcp: Remove outdated and incorrect comment (Davide Caratti) [1874368] - [net] mptcp: Return EPIPE if sending is shut down during a sendmsg (Davide Caratti) [1874368] - [net] mptcp: Allow DATA_FIN in headers without TCP FIN (Davide Caratti) [1874368] - [net] subflow: introduce and use mptcp_can_accept_new_subflow() (Davide Caratti) [1874368] - [net] subflow: use rsk_ops->send_reset() (Davide Caratti) [1874368] - [net] mptcp: cleanup subflow_finish_connect() (Davide Caratti) [1874368] - [net] mptcp: explicitly track the fully established status (Davide Caratti) [1874368] - [net] mptcp: mark as fallback even early ones (Davide Caratti) [1874368] - [net] mptcp: avoid data corruption on reinsert (Davide Caratti) [1874368] - [net] subflow: always init 'rel_write_seq' (Davide Caratti) [1874368] - [net] mptcp: zero token hash at creation time. (Davide Caratti) [1874368] - [net] mptcp: move helper to where its used (Davide Caratti) [1874368] - [tools] selftests/mptcp: Better delay & reordering configuration (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix typo in mptcp_connect usage (Davide Caratti) [1874368] - [tools] mptcp: more stable diag self-tests (Davide Caratti) [1874368] - [tools] selftests: mptcp: fix dependecies (Davide Caratti) [1874368] - [net] inet_diag: validate INET_DIAG_REQ_PROTOCOL attribute (Davide Caratti) [1874368] - [tools] selftests/mptcp: add diag interface tests (Davide Caratti) [1874368] - [net] mptcp: add MPTCP socket diag interface (Davide Caratti) [1874368] - [net] mptcp: add msk interations helper (Davide Caratti) [1874368] - [net] inet_diag: support for wider protocol numbers (Davide Caratti) [1874368] - [net] mptcp: use mptcp worker for path management (Davide Caratti) [1874368] - [include] mptcp: Remove unused inline function mptcp_rcv_synsent() (Davide Caratti) [1874368] - [net] mptcp: support IPV6_V6ONLY setsockopt (Davide Caratti) [1874368] - [net] mptcp: add REUSEADDR/REUSEPORT support (Davide Caratti) [1874368] - [net] use mptcp setsockopt function for SOL_SOCKET on mptcp sockets (Davide Caratti) [1874368] - [net] mptcp: do nonce initialization at subflow creation time (Davide Caratti) [1874368] - [net] mptcp: close poll() races (Davide Caratti) [1874368] - [net] mptcp: __mptcp_tcp_fallback() returns a struct sock (Davide Caratti) [1874368] - [net] mptcp: create first subflow at msk creation time (Davide Caratti) [1874368] - [net] mptcp: check for plain TCP sock at accept time (Davide Caratti) [1874368] - [net] mptcp: move mptcp_options_received's port initialization (Davide Caratti) [1874368] - [net] mptcp: initialize mptcp_options_received's ahmac (Davide Caratti) [1874368] - [net] mptcp: MPTCP_KUNIT_TESTS should depend on MPTCP instead of selecting it (Davide Caratti) [1874368] - [net] mptcp: introduce token KUNIT self-tests (Davide Caratti) [1874368] - [net] mptcp: move crypto test to KUNIT (Davide Caratti) [1874368] - [net] mptcp: refactor token container (Davide Caratti) [1874368] - [net] mptcp: add __init annotation on setup functions (Davide Caratti) [1874368] - [net] tcp: move ipv4_specific to tcp include file (Davide Caratti) [1874368] - [net] tcp: move ipv6_specific declaration to remove a warning (Davide Caratti) [1874368] - [net] mptcp: use list_first_entry_or_null (Davide Caratti) [1874368] - [net] mptcp: attempt coalescing when moving skbs to mptcp rx queue (Davide Caratti) [1874368] - [net] allow __skb_ext_alloc to sleep (Davide Caratti) [1874368] - [net] mptcp: remove inner wait loop from mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb page frag cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: fill skb extension cache outside of mptcp_sendmsg_frag (Davide Caratti) [1874368] - [net] mptcp: move common nospace-pattern to a helper (Davide Caratti) [1874368] - [net] mptcp: Use 32-bit DATA_ACK when possible (Davide Caratti) [1874368] - [s390] s390/qeth: implement ndo_bridge_setlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: implement ndo_bridge_getlink for learning_sync (Philipp Rudo) [1651745] - [s390] s390/qeth: Reset address notification in case of buffer overflow (Philipp Rudo) [1651745] - [net] bridge: Add SWITCHDEV_FDB_FLUSH_TO_BRIDGE notifier (Philipp Rudo) [1651745] - [s390] s390/qeth: Translate address events into switchdev notifiers (Philipp Rudo) [1651745] - [s390] s390/qeth: Detect PNSO OC3 capability (Philipp Rudo) [1651745] - [s390] s390/cio: Helper functions to read CSSID, IID, and CHID (Philipp Rudo) [1651745] - [s390] s390/cio: Add new Operation Code OC3 to PNSO (Philipp Rudo) [1651745] - [cpuidle] cpuidle: Drop misleading comments about RCU usage (David Arcari) [1888014] - [cpuidle] cpuidle: Allow cpuidle drivers to take over RCU-idle (David Arcari) [1888014] - [include] cpuidle: Make CPUIDLE_FLAG_TLB_FLUSHED generic (David Arcari) [1888014] - [cpuidle] sched, idle, rcu: Push rcu_idle deeper into the idle path (David Arcari) [1888014] - [cpuidle] cpuidle: Fixup IRQ state (David Arcari) [1888014] - [kernel] cpuidle: Add RH_KABI warnings (David Arcari) [1878232] - [acpi] cpuidle: ACPI: fix 'return' with no value build warning (David Arcari) [1878232] - [acpi] cpuidle: change enter_s2idle() prototype (David Arcari) [1878232] - [cpuidle] cpuidle/pseries: Make symbol 'pseries_idle_driver' static (David Arcari) [1878232] - [cpuidle] cpuidle/powernv : Remove dead code block (David Arcari) [1878232] - [cpuidle] cpuidle: Rearrange s2idle-specific idle state entry code (David Arcari) [1878232] - [cpuidle] PM: s2idle: Clear _TIF_POLLING_NRFLAG before suspend to idle (David Arcari) [1878232] - [cpuidle] cpuidle: Fix three reference count leaks (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove sysfs_switch and switch attributes (David Arcari) [1878232] - [cpuidle] cpuidle: Make cpuidle governor switchable to be the default behaviour (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Accept governor name with 15 characters (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Fix the overlap for showing available governors (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Minor coding style corrections (David Arcari) [1878232] - [cpuidle] cpuidle: sysfs: Remove the unused define_one_r(o/w) macros (David Arcari) [1878232] - [cpuidle] cpuidle-haltpoll: Fix small typo (David Arcari) [1878232] - [idle] intel_idle: Customize IceLake server support (David Arcari) [1881620 1857129] - [idle] intel_idle: Eliminate redundant static variable (David Arcari) [1857129] - [idle] intel_idle: Update copyright notice, known limitations and version (David Arcari) [1857129] - [idle] intel_idle: Define CPUIDLE_FLAG_TLB_FLUSHED as BIT(16) (David Arcari) [1857129] - [idle] intel_idle: Clean up kerneldoc comments for multiple functions (David Arcari) [1857129] - [idle] intel_idle: Reorder declarations of static variables (David Arcari) [1857129] - [idle] intel_idle: Annotate init time data structures (David Arcari) [1857129] - [idle] intel_idle: Add __initdata annotations to init time variables (David Arcari) [1857129] - [idle] intel_idle: Relocate definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Clean up definitions of cpuidle callbacks (David Arcari) [1857129] - [idle] intel_idle: Simplify LAPIC timer reliability checks (David Arcari) [1857129] - [idle] intel_idle: Introduce 'states_off' module parameter (David Arcari) [1857129] - [idle] intel_idle: Clean up irtl_2_usec() (David Arcari) [1857129] - [idle] intel_idle: Move 3 functions closer to their callers (David Arcari) [1857129] - [idle] intel_idle: Annotate initialization code and data structures (David Arcari) [1857129] - [idle] intel_idle: Move and clean up intel_idle_cpuidle_devices_uninit() (David Arcari) [1857129] - [idle] intel_idle: Rearrange intel_idle_cpuidle_driver_init() (David Arcari) [1857129] - [idle] intel_idle: Clean up NULL pointer check in intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Fold intel_idle_probe() into intel_idle_init() (David Arcari) [1857129] - [idle] intel_idle: Eliminate __setup_broadcast_timer() (David Arcari) [1857129] - [idle] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (David Arcari) [1857129]- [hv] hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if disconnected (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Add parsing of VMbus interrupt in ACPI DSDT (Mohammed Gamal) [1886096] - [hv] driver: hv: util: Use VMBUS_RING_SIZE() for ringbuffer sizes (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Move virt_to_hvpfn() to hyperv header (Mohammed Gamal) [1886096] - [hv] hv: Use HV_HYP_PAGE in hv_synic_enable_regs() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce types of GPADL (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Move __vmbus_open() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always use HV_HYP_PAGE_SIZE for gpadl (Mohammed Gamal) [1886096] - [hv] hv: remove cast from hyperv_die_event (Mohammed Gamal) [1886096] - [hv] hv: Change flag to write log level in panic msg to false (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the lock field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [scsi] storvsc: Introduce the per-storvsc_device spinlock (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list updaters) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use channel_mutex in channel_vp_mapping_show() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove unnecessary channel->lock critical sections (sc_list readers) (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace cpumask_test_cpu(, cpu_online_mask) with cpu_online() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the numa_node field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [kernel] hv: vmbus: Remove the target_vp field from the vmbus_channel struct (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve more races involving init_vp_index() (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Resolve race between init_vp_index() and CPU hotplug (Mohammed Gamal) [1886096] - [hv] driver: hv: vmbus: drop a no long applicable comment (Mohammed Gamal) [1886096] - [hv] hyper-v: Replace open-coded variant of *phN specifier (Mohammed Gamal) [1886096] - [hv] hyper-v: Supply GUID pointer to printf() like functions (Mohammed Gamal) [1886096] - [hv] hyper-v: Use UUID API for exporting the GUID (part 2) (Mohammed Gamal) [1886096] - [hv] hv: remove redundant assignment to pointer primary_channel (Mohammed Gamal) [1886096] - [scsi] storvsc: Re-init stor_chns when a channel interrupt is re-assigned (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Introduce the CHANNELMSG_MODIFYCHANNEL message type (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Synchronize init_vp_index() vs. CPU hotplug (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Remove the unused HV_LOCALIZED channel affinity logic (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Use a spin lock for synchronizing channel scheduling vs. channel removal (Mohammed Gamal) [1886096] - [hv] hv_utils: Always execute the fcopy and vss callbacks in a tasklet (Mohammed Gamal) [1886096] - [netdrv] hv_netvsc: Disable NAPI before closing the VMBus channel (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Replace the per-CPU channel lists with a global array of channels (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Don't bind the offer&rescind works to a specific CPU (Mohammed Gamal) [1886096] - [hv] hv: vmbus: Always handle the VMBus messages on CPU0 (Mohammed Gamal) [1886096] - [hv] hv: check VMBus messages lengths (Mohammed Gamal) [1886096] - [hv] hv: make sure that 'struct vmbus_channel_message_header' compiles correctly (Mohammed Gamal) [1886096] - [hv] hv: avoid passing opaque pointer to vmbus_onmessage() (Mohammed Gamal) [1886096] - [hv] hv: allocate the exact needed memory for messages (Mohammed Gamal) [1886096] - [hv] hv: copy from message page only what's needed (Mohammed Gamal) [1886096] - [x86] hyperv: Clarify comment on x2apic mode (Mohammed Gamal) [1886099] - [x86] hyperv: report value of misc_features (Mohammed Gamal) [1886099] - [x86] hyperv: Make hv_setup_sched_clock inline (Mohammed Gamal) [1886099] - [net] ipv6: reply ICMP error if the first fragment don't include all headers (Hangbin Liu) [1874734] - [net] icmpv6: Add ICMPv6 Parameter Problem, code 3 definition (Hangbin Liu) [1874734] - [powerpc] powerpc/process: Add missing include of stacktrace.h (Desnes Augusto Nunes do Rosario) [1883975] - [powerpc] powerpc/test_emulate_sstep: Fix build error (Desnes Augusto Nunes do Rosario) [1883975] - [nvdimm] powerpc/pmem: Initialize pmem device on newer hardware (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Avoid the barrier in flush routines (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Update ppc64 to use the new barrier instruction (Desnes Augusto Nunes do Rosario) [1878632] - [md] libnvdimm/nvdimm/flush: Allow architecture to override the flush barrier (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add flush routines using new pmem store and sync instruction (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Add new instructions for persistent storage and sync (Desnes Augusto Nunes do Rosario) [1878632] - [powerpc] powerpc/pmem: Restrict papr_scm to P8 and above (Desnes Augusto Nunes do Rosario) [1878632] - [i2c] i2c: ismt: Add support for Intel Emmitsburg PCH (David Arcari) [1886162] - [include] timer: add fsleep for flexible sleeping (Josef Oskera) [1892674] - [scsi] qla2xxx: Update driver version to 10.02.00.103-k (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Return EBUSY on fcport deletion (Nilesh Javali) [1887427] - [trace] scsi: qla2xxx: Suppress two recently introduced compiler warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix return of uninitialized value in rval (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert to DEFINE_SHOW_ATTRIBUTE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize variable in qla8044_poll_reg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not consume srb greedily (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use constant when it is known (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_dbg.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in qla_os.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix inconsistent format argument type in tcm_qla2xxx.c (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix point-to-point (N2N) device discovery issue (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix crash on session cleanup with unload (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix reset of MPI firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix MPI reset needed message (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix buffer-buffer credit extraction error (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correct the check for sscanf() return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add SLER and PI control support (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add IOCB resource tracking (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add rport fields in debugfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make tgt_port_database available in initiator mode (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O errors during LIP reset tests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Performance tweak (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix memory size truncation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Reduce duplicate code in reporting speed (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Setup debugfs entries for remote ports (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix I/O failures during remote port toggle testing (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove unneeded variable 'rval' (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle incorrect entry_type entries (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Log calling function name in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify return value logic in qla2x00_get_sp_from_handle() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Warn if done() or free() are called on an already freed srb (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the return value (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove redundant variable initialization (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove pci-dma-compat wrapper API (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove superfluous memset() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression on sparc64 (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use MBX_TOV_SECONDS for mailbox command timeout values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Address a set of sparse warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: SAN congestion management implementation (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change in PUREX to handle FPIN ELS requests (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Introduce a function for computing the debug message prefix (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla2x00_restart_isp() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a Coverity complaint in qla2100_fw_dump() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make __qla2x00_alloc_iocbs() initialize 32 bits of request_t.handle (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove a superfluous cast (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Initialize 'n' before using it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla82xx_flash_wait_write_finish() easier to read (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove the __packed annotation from struct fcp_hdr and fcp_hdr_le (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Check the size of struct fcp_hdr at compile time (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix a condition in qla2x00_find_all_fabric_devs() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Set NVMe status code for failed NVMe FCP request (Nilesh Javali) [1887427] - [scsi] scsi: Fix trivial spelling (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove return value from qla_nvme_ls() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove an unused function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in source files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix endianness annotations in header files (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use make_handle() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cast explicitly to uint16_t / uint32_t (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change {RD, WRT}_REG_*() function names from upper case into lower case (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix the code that reads from mailbox registers (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use register names instead of register offsets (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Change two hardcoded constants into offsetof() / sizeof() expressions (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Increase the size of struct qla_fcp_prio_cfg to FCP_PRIO_CFG_SIZE (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make a gap in struct qla2xxx_offld_chain explicit (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add more BUILD_BUG_ON() statements (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Sort BUILD_BUG_ON() statements alphabetically (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the functions for dumping firmware (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix spelling of a variable name (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Do not log message when reading port speed via sysfs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qlafx00_process_aen() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for ha->fw_dumped (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use true, false for need_mpi_reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Make qla_set_ini_mode() return void (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix issue with adapter's stopping state (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix failure message in qlt_disable_vha() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix warning after FC target reset (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: check UNLOADING before posting async work (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: set UNLOADING before waiting for session deletion (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() instead of open-coding it (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Split qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix regression warnings (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Remove non functional code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: add ring buffer for tracing debug logs (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP respond data format (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: fix FW resource count values (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Improved secure flash support messages (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Use FC generic update firmware options routine for ISP27xx (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Avoid setting firmware options twice in 24xx_update_fw_options (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warnings triggered by the PCI state checking code (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Suppress endianness complaints in qla2x00_configure_local_loop() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Simplify the code for aborting SCSI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix sparse warning reported by kbuild bot (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Print portname for logging in qla24xx_logio_entry() (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix qla2x00_echo_test() based on ISP type (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Correction to selection of loopback/echo test (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix RDP response size (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Handle cases for limiting RDP response payload length (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add deferred queue for processing ABTS and RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Cleanup ELS/PUREX iocb fields (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Show correct port speed capabilities for RDP command (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Display message for FCE enabled (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended FDMI commands (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add ql2xrdpenable module parameter for RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add vendor extended RDP additions and amendments (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Add changes in preparation for vendor extended FDMI/RDP (Nilesh Javali) [1887427] - [scsi] scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure (Nilesh Javali) [1887427]- [kernel] PM: hibernate: Batch hibernate and resume IO requests (Lenny Szubowicz) [1868096] - [net] tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies (Antoine Tenart) [1895765] - [block] block: mark flush request as IDLE when it is really finished (Ming Lei) [1895913] - [net] vsock: forward all packets to the host when no H2G is registered (Vitaly Kuznetsov) [1893826] - [maintainers] maintainers: Add entry for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [documentation] nitro_enclaves: Add overview documentation (Vitaly Kuznetsov) [1893826] - [samples] nitro_enclaves: Add sample for ioctl interface usage (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Makefile for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add Kconfig for the Nitro Enclaves driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for terminating an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for starting an enclave (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave memory region (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for getting the enclave image load info (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for setting an enclave vCPU (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Add logic for creating an enclave VM (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init misc device providing the ioctl interface (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle out-of-band PCI device events (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Handle PCI device command requests (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Init PCI device driver (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define enclave info for internal bookkeeping (Vitaly Kuznetsov) [1893826] - [virt] nitro_enclaves: Define the PCI device interface (Vitaly Kuznetsov) [1893826] - [uapi] nitro_enclaves: Add ioctl interface definition (Vitaly Kuznetsov) [1893826] - [kernel] cpu/hotplug: Add new {add, remove}_cpu() functions (Vitaly Kuznetsov) [1893826] - [x86] x86/delay: Introduce TPAUSE delay (Prarit Bhargava) [1838636] - [x86] x86/delay: Refactor delay_mwaitx() for TPAUSE support (Prarit Bhargava) [1838636] - [x86] x86/delay: Preparatory code cleanup (Prarit Bhargava) [1838636] - [net] netfilter: ipset: Update byte and packet counters regardless of whether they match (Phil Sutter) [1806882] - [net] ethtool: add and use message type for tunnel info reply (Ivan Vecera) [1867211] - [infiniband] RDMA/hns: Mark hns_roce driver as unsupported (Kamal Heib) [1878211] - [net] tipc: fix memory leak caused by tipc_buf_append() (Xin Long) [1865774] - [net] tipc: fix the skb_unshare() in tipc_buf_append() (Xin Long) [1865774] - [net] tipc: use skb_unshare() instead in tipc_buf_append() (Xin Long) [1865774] - [netdrv] net: team: fix memory leak in __team_options_register (Hangbin Liu) [1892142] - [netdrv] team: set dev->needed_headroom in team_setup_by_port() (Hangbin Liu) [1892142] - [netdrv] team: use netif_is_team_port() (Hangbin Liu) [1892142] - [char] random: decouple random and urandom extrng fops (Vladis Dronov) [1890711] - [platform] platform/x86: intel_pmc_core: Add Intel RocketLake (RKL) support (Steve Best) [1782713] - [netdrv] fm10k: convert to new udp_tunnel_nic infra (Vladis Dronov) [1884254] - [netdrv] ethernet/intel: Convert fallthrough code comments (Vladis Dronov) [1884254] - [netdrv] docs: networking: reorganize driver documentation again (Vladis Dronov) [1884254] - [netdrv] net/intel: remove driver versions from Intel drivers (Vladis Dronov) [1884254] - [infiniband] RDMA/core: Fix ordering of CQ pool destruction (Kamal Heib) [1878969 1857603] - [infiniband] IB/isert: Fix unaligned immediate-data handling (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix reported speed and width (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix panic when calling kmem_cache_create() (Kamal Heib) [1867296 1857603] - [infiniband] RDMA/rxe: Fix memleak in rxe_mem_init_user (Kamal Heib) [1857603] - [net] xprtrdma: Release in-flight MRs on disconnect (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars (Kamal Heib) [1870430 1857603] - [infiniband] RDMA/hfi1: Correct an interlock issue for TID RDMA WRITE request (Kamal Heib) [1870281 1857603] - [infiniband] RDMA/core: Fix spelling mistake "Could't" -> "Couldn't" (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove pkey table (Kamal Heib) [1857603] - [infiniband] RDMA/umem: Add a schedule point in ib_umem_get() (Kamal Heib) [1857603] - [infiniband] RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP (Kamal Heib) [1857603] - [rdma] RDMA/include: Replace license text with SPDX tags (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Execute rdma_cm destruction from a handler properly (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Remove unneeded locking for req paths (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Using the standard locking pattern when delivering the removal event (Kamal Heib) [1857603] - [infiniband] RDMA/cma: Simplify DEVICE_REMOVAL for internal_id (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Add EFA 0xefa1 PCI ID (Kamal Heib) [1857603] - [infiniband] RDMA/efa: User/kernel compatibility handshake mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose minimum SQ size (Kamal Heib) [1857603] - [infiniband] RDMA/efa: Expose maximum TX doorbell batch (Kamal Heib) [1857603] - [infiniband] IB/srpt: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/isert: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] IB/iser: use new shared CQ mechanism (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix return error value in _ib_modify_qp() to negative (Kamal Heib) [1857603] - [infiniband] RDMA/uverbs: Silence shiftTooManyBitsSigned warning (Kamal Heib) [1857603] - [infiniband] RDMA/core: Update write interface to use automatic object lifetime (Kamal Heib) [1857603] - [infiniband] RDMA/core: Align abort/commit object scheme for write() and ioctl() paths (Kamal Heib) [1857603] - [uapi] RDMA: rdma_user_ioctl.h: fix a duplicated word + clarify (Kamal Heib) [1857603] - [infiniband] RDMA/qedr: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/i40iw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/cxgb4: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/siw: Remove the query_pkey callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove query_pkey from the mandatory ops (Kamal Heib) [1857603] - [infiniband] RDMA/core: Allocate the pkey cache only if the pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/core: Expose pkeys sysfs files only if pkey_tbl_len is set (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send queue (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Remove unnecessary fall-through markings (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove rxe_link_layer() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_mem_init_dma() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Return void from rxe_init_port_param() (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Drop pointless checks in rxe_init_ports (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Allow manually bind QPs with different pids to same counter (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Only bind user QPs in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/counter: Add PID category support in auto mode (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Skip dgid check in loopback mode (Kamal Heib) [1857603] - [infiniband] RDMA/core: Create and destroy counters in the ib_core (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query MR (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Expose UAPI to query ucontext (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Set IOVA on IB MR in uverbs layer (Kamal Heib) [1857603] - [infiniband] IB/uverbs: Enable CQ ioctl commands by default (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean ib_alloc_xrcd() and reuse it to allocate XRC domain (Kamal Heib) [1857603] - [infiniband] RDMA: Remove the udata parameter from alloc_mr callback (Kamal Heib) [1857603] - [infiniband] RDMA/core: Remove ib_alloc_mr_user function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Check for error instead of success in alloc MR function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Clean up tracepoint headers (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Handle user-supplied address when creating child (Kamal Heib) [1857603] - [infiniband] RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued() (Kamal Heib) [1857603] - [infiniband] IB/hfi1: Convert PCIBIOS_* errors to generic -E* errors (Kamal Heib) [1857603] - [infiniband] RDMA/core: Delete not-used create RWQ table function (Kamal Heib) [1857603] - [infiniband] IB/mad: Delete RMPP_STATE_CANCELING state (Kamal Heib) [1857603] - [infiniband] IB/mad: Change atomics to refcount API (Kamal Heib) [1857603] - [infiniband] IB/mad: Issue complete whenever decrements agent refcount (Kamal Heib) [1857603] - [infiniband] RDMA: Add support to dump resource tracker in RAW format (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated CM_ID resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated QP resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add a dedicated CQ resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA: Add dedicated MR resource tracker function (Kamal Heib) [1857603] - [infiniband] RDMA/core: Don't call fill_res_entry for PD (Kamal Heib) [1857603] - [infiniband] RDMA/rxe: Remove unused rxe_mem_map_pages (Kamal Heib) [1857603] - [infiniband] RDMA/hfi1: Remove hfi1_create_qp declaration (Kamal Heib) [1857603] - [infiniband] RDMA/ipoib: Return void from ipoib_mcast_stop_thread() (Kamal Heib) [1857603] - [infiniband] RDMA: Correct trivial kernel-doc inconsistencies (Kamal Heib) [1857603] - [infiniband] IB/srpt: Remove WARN_ON from srpt_cm_req_recv (Kamal Heib) [1857603] - [tools] tools/power turbostat: Support additional CPU model numbers (Steve Best) [1782718] - [net] udp_tunnel: add the ability to hard-code IANA VXLAN (Ivan Vecera) [1879204] - [tools] selftests: net: add a test for UDP tunnel info infra (Ivan Vecera) [1867211] - [netdrv] netdevsim: add UDP tunnel port offload support (Ivan Vecera) [1867211] - [net] ethtool: add tunnel info interface (Ivan Vecera) [1867211] - [net] ethtool: Make helpers public (Ivan Vecera) [1867211] - [net] udp_tunnel: add central NIC RX port offload infrastructure (Ivan Vecera) [1867211] - [net] udp_tunnel: re-number the offload tunnel types (Ivan Vecera) [1867211] - [fs] debugfs: make sure we can remove u32_array files cleanly (Ivan Vecera) [1867211] - [fs] debugfs: make debugfs_create_u32_array() return void (Ivan Vecera) [1867211] - [fs] debugfs: update documented return values of debugfs helpers (Ivan Vecera) [1867211]- [net] openvswitch: fix to make sure flow_lookup() is not preempted (Eelco Chaudron) [1888237] - [netdrv] powerpc/vnic: Extend "failover pending" window (Steve Best) [1897280] - [net] ipv6: Set SIT tunnel hard_header_len to zero (Davide Caratti) [1897244] - [net] ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT flags (Davide Caratti) [1897244] - [net] gre6: Fix reception with IP6_TNL_F_RCV_DSCP_COPY (Davide Caratti) [1897244] - [netdrv] vxlan: fix memleak of fdb (Davide Caratti) [1897244] - [net] vxlan: Ensure FDB dump is performed under RCU (Davide Caratti) [1897244] - [net] gre: refetch erspan header from skb->data after pskb_may_pull() (Davide Caratti) [1897244] - [net] erspan: fix the tun_info options_len check for erspan (Davide Caratti) [1897244] - [net] ip_gre: fix possible use-after-free in erspan_rcv (Davide Caratti) [1897244] - [net] erspan: fix error handling for erspan tunnel (Davide Caratti) [1897244] - [net] erspan: return PACKET_REJECT when the appropriate tunnel is not found (Davide Caratti) [1897244] - [netdrv] net: atlantic: fix build when object tree is separate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Use readx_poll_timeout() for large timeout (Igor Russkikh) [1857861] - [netdrv] net: ethernet: aquantia: Fix wrong return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix PTP on AQC10X (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hwmon getter for MAC temperature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A0 ntuple filters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use intermediate variable to improve readability a bit (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use U32_MAX in aq_hw_utils.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for 64-bit reads/writes (Igor Russkikh) [1857861] - [netdrv] net: atlantic: enable ipv6 support for TCP LSO and UDP GSO (Igor Russkikh) [1857861] - [netdrv] net: atlantic: PTP statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: additional per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use u64_stats_update_* to protect access to 64-bit stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: split rx and tx per-queue stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make _get_sw_stats return count as return value (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use simple assignment in _get_stats and _get_sw_stats (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move FRAC_PER_NS to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add support for FW 4.x (Igor Russkikh) [1857861] - [netdrv] net: atlantic: align return value of ver_match function with function name (Igor Russkikh) [1857861] - [netdrv] net: atlantic: disable PTP on AQC111, AQC112 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix ip dst and ipv6 address filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix aq_ndev_start_xmit()'s return type (Igor Russkikh) [1857861] - [netdrv] net: atlantic: put ptp code under IS_REACHABLE check (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add alignment checks in hw_atl2_utils_fw.c (Igor Russkikh) [1857861] - [netdrv] net: atlantic: missing space in a comment in aq_nic.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix typo in aq_ring_tx_clean (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make aq_pci_func_init static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace ENOTSUPP usage to EOPNOTSUPP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix variable type in aq_ethtool_get_pauseparam (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: phy loopback support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: report link partner capabilities (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: flow control support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: EEE support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove baseX usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2: half duplex support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: proper rss_ctrl1 (54c0) initialization (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: min_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change the order of arguments for TC weight/credit setters (Igor Russkikh) [1857861] - [netdrv] net: atlantic: always use random TC-queue mapping for TX on A2 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: automatically downgrade the number of queues if necessary (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: max_rate (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make TCVEC2RING accept nic_cfg (Igor Russkikh) [1857861] - [netdrv] net: atlantic: per-TC queue statistics (Igor Russkikh) [1857861] - [netdrv] net: atlantic: QoS implementation: multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move PTP TC initialization to a separate function (Igor Russkikh) [1857861] - [netdrv] net: atlantic: changes for multi-TC support (Igor Russkikh) [1857861] - [netdrv] net: atlantic: unify MAC generation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove check for boot code survivability before reset request (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove hw_atl_b0_hw_rss_set call from A2 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove TPO2 check from A0 code (Igor Russkikh) [1857861] - [netdrv] net: atlantic: rename AQ_NIC_RATE_2GS to AQ_NIC_RATE_2G5 (Igor Russkikh) [1857861] - [netdrv] net: atlantic: use __packed instead of the full expansion (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 ingress / egress hw configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: common functions needed for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for basic A2 init/deinit hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 RPF hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: HW bindings for A2 RFP (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 hw_ops skeleton (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: minimal A2 HW bindings required for fw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: A2 driver-firmware interface (Igor Russkikh) [1857861] - [netdrv] net: atlantic: move IS_CHIP_FEATURE to aq_hw.h (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make hw_get_regs optional (Igor Russkikh) [1857861] - [netdrv] net: atlantic: simplify hw_get_fw_version() usage (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add hw_soft_reset, hw_prepare to hw_ops (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add defines for 10M and EEE 100M link mode (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add A2 device IDs (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update company name in the driver description (Igor Russkikh) [1857861] - [netdrv] aquantia: Fix the media type of AQC100 ethernet controller in the driver (Igor Russkikh) [1857861] - [netdrv] net: atlantic: MACSec offload statistics implementation (Igor Russkikh) [1857861] - [netdrv] net: aquantia: reject all unsupported coalescing params (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Replace zero-length array with flexible-array member (Igor Russkikh) [1857861] - [netdrv] net/aquantia: Delete module version (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix out of range usage of active_vlans array (Igor Russkikh) [1857861] - [netdrv] net: atlantic: possible fault in transition to hibernation (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix potential error handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: fix use after free kasan warn (Igor Russkikh) [1857861] - [netdrv] net: atlantic: better loopback mode handling (Igor Russkikh) [1857861] - [netdrv] net: atlantic: ptp gpio adjustments (Igor Russkikh) [1857861] - [netdrv] net: atlantic: check rpc result and wait for rpc address (Igor Russkikh) [1857861] - [netdrv] net: atlantic: checksum compat issue (Igor Russkikh) [1857861] - [netdrv] net: atlantic: remove duplicate entries (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback configuration in improper place (Igor Russkikh) [1857861] - [netdrv] net: atlantic: broken link status on old fw (Igor Russkikh) [1857861] - [netdrv] net: atlantic: Signedness bug in aq_vec_isr_legacy() (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make function 'aq_ethtool_get_priv_flags', 'aq_ethtool_set_priv_flags' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: make symbol 'aq_pm_ops' static (Igor Russkikh) [1857861] - [netdrv] net: atlantic: change email domains to Marvell (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement UDP GSO offload (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update flow control logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: stylistic renames (Igor Russkikh) [1857861] - [netdrv] net: atlantic: code style cleanup (Igor Russkikh) [1857861] - [netdrv] net: atlantic: loopback tests via private flags (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add fw configuration memory area (Igor Russkikh) [1857861] - [netdrv] net: atlantic: adding ethtool physical identification (Igor Russkikh) [1857861] - [netdrv] net: atlantic: add msglevel configuration (Igor Russkikh) [1857861] - [netdrv] net: atlantic: refactoring pm logic (Igor Russkikh) [1857861] - [netdrv] net: atlantic: implement wake_phy feature (Igor Russkikh) [1857861] - [netdrv] net: atlantic: update firmware interface (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix return value check in aq_ptp_init() (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix error handling in aq_ptp_poll (Igor Russkikh) [1857861] - [netdrv] net: aquantia: remove unused including (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make two symbols be static (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix unintention integer overflow on left shift (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix spelling mistake: tx_queus -> tx_queues (Igor Russkikh) [1857861] - [netdrv] net: aquantia: disable ptp object build if no config (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix warnings on endianness (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix var initialization warning (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for PIN funcs (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for Phy access (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement get_ts_info ethtool (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add support for ptp ioctls (Igor Russkikh) [1857861] - [netdrv] net: aquantia: rx filters for ptp (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement data PTP datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: styling fixes on ptp related functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add PTP rings infrastructure (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add basic ptp_clock callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: unify styling of bit enums (Igor Russkikh) [1857861] - [netdrv] net: aquantia: PTP skeleton declarations and callbacks (Igor Russkikh) [1857861] - [netdrv] net: aquantia: add an error handling in aq_nic_set_multicast_list (Igor Russkikh) [1857861] - [netdrv] net: aquantia: correctly handle macvlan and multicast coexistence (Igor Russkikh) [1857861] - [netdrv] net: aquantia: do not pass lro session with invalid tcp checksum (Igor Russkikh) [1857861] - [netdrv] net: aquantia: when cleaning hw cache it should be toggled (Igor Russkikh) [1857861] - [netdrv] net: aquantia: temperature retrieval fix (Igor Russkikh) [1857861] - [netdrv] net: aquantia: Fix aq_vec_isr_legacy() return value (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix out of memory condition on rx side (Igor Russkikh) [1857861] - [netdrv] net: aquantia: linkstate irq should be oneshot (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix limit of vlan filters (Igor Russkikh) [1857861] - [netdrv] net: aquantia: fix removal of vlan 0 (Igor Russkikh) [1857861] - [netdrv] net: aquantia: implement vlan offload configuration (Igor Russkikh) [1857861] - [netdrv] net: aquantia: vlan offloads logic in datapath (Igor Russkikh) [1857861] - [netdrv] net: aquantia: adding fields and device features for vlan offload (Igor Russkikh) [1857861] - [netdrv] net: aquantia: added vlan offload related macros and functions (Igor Russkikh) [1857861] - [netdrv] net: aquantia: make all files GPL-2.0-only (Igor Russkikh) [1857861] - [netdrv] net: aquantia: replace internal driver version code with uts (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Igor Russkikh) [1857861] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 308 (Igor Russkikh) [1857861] - [include] net: phy: introduce phy_read_mmd_poll_timeout macro (Josef Oskera) [1892739] - [include] net: phy: introduce phy_read_poll_timeout macro (Josef Oskera) [1892739] - [netdrv] phy: add device-managed devm_mdiobus_register (Josef Oskera) [1892740] - [include] net: add helper eth_hw_addr_crc (Josef Oskera) [1892738] - [netdrv] LiquidIO: mark liquidio and liquidio_vf as deprecated in RHEL8 (Stefan Assmann) [1878178] - [net] tcp: remove SOCK_QUEUE_SHRUNK (Paolo Abeni) [1890058] - [net] tcp: fix receive window update in tcp_add_backlog() (Paolo Abeni) [1890058] - [net] tcp: md5: allow changing MD5 keys in all socket states (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT possible hangs under high mem pressure (Paolo Abeni) [1890058] - [net] tcp: md5: do not send silly options in SYNCOOKIES (Paolo Abeni) [1890058] - [net] tcp: grow window for OOO packets only for SACK flows (Paolo Abeni) [1890058] - [net] tcp: fix error recovery in tcp_zerocopy_receive() (Paolo Abeni) [1890058] - [net] tcp: fix SO_RCVLOWAT hangs with fat skbs (Paolo Abeni) [1890058] - [net] tcp: fix rx timestamp behavior for tcp_recvmsg (Paolo Abeni) [1890058] - [fs] smb3: smbdirect support can be configured by default (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Do not schedule work to send immediate packet on every receive (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Properly process errors on ib_post_send (Leif Sahlberg) [1887940] - [fs] cifs: Allocate crypto structures on the fly for calculating signatures of incoming packets (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Update receive credits before sending and deal with credits roll back on failure before sending (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check send queue size before posting a send (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Merge code to track pending packets (Leif Sahlberg) [1887940] - [fs] cifs: Allocate encryption header through kmalloc (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Check and extend sender credits in interrupt context (Leif Sahlberg) [1887940] - [fs] cifs: smbd: Calculate the correct maximum packet size for segmented SMBDirect send/receive (Leif Sahlberg) [1887940] - [net] core: device_rename: Use rwsem instead of a seqcount (Patrick Talbert) [1883310]- [tools] perf tools: Add bpf image check to __map__is_kmodule (Michael Petlan) [1873270] - [tools] perf tools: Add support for PERF_RECORD_KSYMBOL_TYPE_OOL (Michael Petlan) [1873270] - [tools] perf record: Don't clear event's period if set by a term (Michael Petlan) [1873270] - [tools] perf bench: The do_run_multi_threaded() function must use IS_ERR(perf_session__new()) (Michael Petlan) [1873270] - [tools] perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf record: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set (Michael Petlan) [1873270] - [tools] perf evsel: Don't set sample_regs_intr/sample_regs_user for dummy event (Michael Petlan) [1873270] - [tools] perf stat: Turn off summary for interval mode by default (Michael Petlan) [1873270] - [tools] perf trace: Fix off by ones in memset() after realloc() in arches using libaudit (Michael Petlan) [1873270] - [tools] perf top/report: Fix infinite loop in the TUI for grouped events (Michael Petlan) [1873270] - [tools] redhat: use local hashmap library in perf (Michael Petlan) [1873270] - [tools] libtraceevent: Fix build with binutils 2.35 (Michael Petlan) [1873270] - [tools] perf tools: Fix record failure when mixed with ARM SPE event (Michael Petlan) [1873270] - [tools] perf tests: Fix test 68 zstd compression for s390 (Michael Petlan) [1873270] - [tools] tools lib traceevent: Fix memory leak in process_dynamic_array_len (Michael Petlan) [1873270] - [tools] perf tools: Sync hashmap.h with libbpf's (Michael Petlan) [1873270] - [tools] libsubcmd: Fix OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf report TUI: Remove needless 'dummy' event from menu (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix PEBS sample for XMM registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix displaying PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] perf intel-pt: Fix recording PEBS-via-PT with registers (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add proper KBUFFER_TYPE_TIME_STAMP handling (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add API to read time information from kbuffer (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix time chart call tree (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call tree 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix zero id in call graph 'Find' result (Michael Petlan) [1873270] - [tools] perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result (Michael Petlan) [1873270] - [tools] perf record: Fix duplicated sideband events with Intel PT system wide tracing (Michael Petlan) [1873270] - [tools] perf scripts python: export-to-postgresql.py: Fix struct.pack() int argument (Michael Petlan) [1873270] - [tools] perf build: Fix error message when asking for -fsanitize=address without required libraries (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add handler for __builtin_expect() (Michael Petlan) [1873270] - [tools] tools lib traceevent: Handle __attribute__((user)) in field names (Michael Petlan) [1873270] - [tools] tools lib traceevent: Add append() function helper for appending strings (Michael Petlan) [1873270] - [tools] perf script: Initialize zstd_data (Michael Petlan) [1873270] - [tools] perf pmu: Remove unused declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an old style declaration (Michael Petlan) [1873270] - [tools] perf parse-events: Fix an incompatible pointer (Michael Petlan) [1873270] - [tools] perf bpf: Fix bpf prologue generation (Michael Petlan) [1873270] - [tools] perf probe: Fix user attribute access in kprobes (Michael Petlan) [1873270] - [tools] perf stat: Fix NULL pointer dereference (Michael Petlan) [1873270] - [tools] perf report: Fix NULL pointer dereference in hists__fprintf_nr_sample_events() (Michael Petlan) [1873270] - [tools] perf tools: Remove some duplicated includes (Michael Petlan) [1873270] - [tools] perf symbols: Fix kernel maps for kcore and eBPF (Michael Petlan) [1873270] - [tools] perf stat: Ensure group is defined on top of the same cpu mask (Michael Petlan) [1873270] - [tools] perf libdw: Fix off-by 1 relative directory includes (Michael Petlan) [1873270] - [tools] perf arm-spe: Support synthetic events (Michael Petlan) [1873270] - [tools] perf auxtrace: Add four itrace options (Michael Petlan) [1873270] - [tools] perf tools: Move arm-spe-pkt-decoder.h/c to the new dir (Michael Petlan) [1873270] - [tools] perf test: Initialize memory in dwarf-unwind (Michael Petlan) [1873270] - [tools] perf tests: Don't tail call optimize in unwind test (Michael Petlan) [1873270] - [tools] tools compiler.h: Add attribute to disable tail calls (Michael Petlan) [1873270] - [tools] perf build: Add a LIBPFM4=1 build test entry (Michael Petlan) [1873270] - [tools] perf tools: Add optional support for libpfm4 (Michael Petlan) [1873270] - [tools] perf tools: Correct license on jsmn JSON parser (Michael Petlan) [1873270] - [tools] perf jit: Fix inaccurate DWARF line table (Michael Petlan) [1873270] - [tools] perf jvmti: Remove redundant jitdump line table entries (Michael Petlan) [1873270] - [tools] perf build: Add NO_SDT=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_LIBCRYPTO=1 to the default set of build tests (Michael Petlan) [1873270] - [tools] perf build: Add NO_SYSCALL_TABLE=1 to the build tests (Michael Petlan) [1873270] - [tools] perf build: Remove libaudit from the default feature checks (Michael Petlan) [1873270] - [tools] perf trace: Grow the syscall table as needed when using libaudit (Michael Petlan) [1873270] - [tools] perf trace: Use zalloc() to make sure all fields are zeroed in the syscalltbl constructor (Michael Petlan) [1873270] - [tools] perf trace: Remove union from syscalltbl, all the fields are needed (Michael Petlan) [1873270] - [tools] perf build: Allow explicitely disabling the NO_SYSCALL_TABLE variable (Michael Petlan) [1873270] - [tools] perf build: Group the NO_SYSCALL_TABLE logic (Michael Petlan) [1873270] - [tools] perf intel-pt: Refine kernel decoding only warning message (Michael Petlan) [1873270] - [tools] perf record: Respect --no-switch-events (Michael Petlan) [1873270] - [tools] perf script: Fix --call-trace for Intel PT (Michael Petlan) [1873270] - [tools] perf evlist: Disable 'immediate' events last (Michael Petlan) [1873270] - [tools] perf kcore_copy: Fix module map when there are no modules loaded (Michael Petlan) [1873270] - [tools] perf jvmti: Fix demangling Java symbols (Michael Petlan) [1873270] - [tools] perf tests: Add test for the java demangler (Michael Petlan) [1873270] - [tools] perf jvmti: Do not report error when missing debug information (Michael Petlan) [1873270] - [tools] perf jvmti: Fix jitdump for methods without debug info (Michael Petlan) [1873270] - [tools] perf symbols: Fix debuginfo search for Ubuntu (Michael Petlan) [1873270] - [tools] perf parse: Add 'struct parse_events_state' pointer to scanner (Michael Petlan) [1873270] - [tools] perf stat: Do not pass avg to generic_metric (Michael Petlan) [1873270] - [tools] perf tests: Consider subtests when searching for user specified tests (Michael Petlan) [1873270] - [tools] perf list: Add metrics to command line usage (Michael Petlan) [1873270] - [tools] perf script: Don't force less for non tty output with --xed (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove unnecessary ', ' from events (Michael Petlan) [1873270] - [tools] perf metricgroup: Add options to not group or merge (Michael Petlan) [1873270] - [tools] perf metricgroup: Remove duped metric group events (Michael Petlan) [1873270] - [tools] perf metricgroup: Order event groups by size (Michael Petlan) [1873270] - [tools] perf metricgroup: Delay events string creation (Michael Petlan) [1873270] - [tools] perf metricgroup: Use early return in add_metric (Michael Petlan) [1873270] - [tools] perf metricgroup: Always place duration_time last (Michael Petlan) [1873270] - [tools] perf metricgroup: Free metric_events on error (Michael Petlan) [1873270] - [tools] perf util: Fix potential SEGFAULT in put_tracepoints_path error path (Michael Petlan) [1873270] - [tools] perf util: Fix memory leak of prefix_if_not_in (Michael Petlan) [1873270] - [tools] perf ftrace: Detect workload failure (Michael Petlan) [1873270] - [tools] perf ftrace: Trace system wide if no target is given (Michael Petlan) [1873270] - [tools] perf branch: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf config: Add stat.big-num support (Michael Petlan) [1873270] - [tools] perf bpf-loader: Add missing '*' for key_scan_pos (Michael Petlan) [1873270] - [tools] perf stat: Report summary for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Save aggr value to first member of prev_raw_counts (Michael Petlan) [1873270] - [tools] perf stat: Copy counts from prev_raw_counts to evsel->counts (Michael Petlan) [1873270] - [tools] perf counts: Reset prev_raw_counts counts (Michael Petlan) [1873270] - [tools] perf stat: Fix wrong per-thread runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf expr: Allow numbers to be followed by a dot (Michael Petlan) [1873270] - [tools] perf metricgroup: Make 'evlist_used' variable a bitmap instead of array of bools (Michael Petlan) [1873270] - [tools] perf stat: Fail on extra comma while parsing events (Michael Petlan) [1873270] - [tools] perf script: Better align register values in dump (Michael Petlan) [1873270] - [tools] perf stat: POWER9 metrics: expand "ICT" acronym (Michael Petlan) [1873270] - [tools] perf tools: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [tools] perf intel-pt: Use allocated branch stack for PEBS sample (Michael Petlan) [1873270] - [tools] perf docs: Introduce security.txt file to document related issues (Michael Petlan) [1873270] - [tools] perf tool: Make perf tool aware of SELinux access control (Michael Petlan) [1873270] - [tools] perf docs: Extend CAP_SYS_ADMIN with CAP_PERFMON where needed (Michael Petlan) [1873270] - [tools] perf expr: Migrate expr ids table to a hashmap (Michael Petlan) [1873270] - [tools] perf tools: Grab a copy of libbpf's hashmap (Michael Petlan) [1873270] - [tools] perf stat: Fix duration_time value for higher intervals (Michael Petlan) [1873270] - [tools] perf trace: Fix compilation error for make NO_LIBBPF=1 DEBUG=1 (Michael Petlan) [1873270] - [tools] perf beauty: Allow the CC used in the arch errno names script to acccept CFLAGS (Michael Petlan) [1873270] - [tools] perf trace: Fix the selection for architectures to generate the errno name tables (Michael Petlan) [1873270] - [tools] perf test: Improve pmu event metric testing (Michael Petlan) [1873270] - [tools] perf test: Provide a subtest callback to ask for the reason for skipping a subtest (Michael Petlan) [1873270] - [tools] perf parse-events: Make add PMU verbose output clearer (Michael Petlan) [1873270] - [tools] perf expr: Fix memory leaks in metric bison (Michael Petlan) [1873270] - [tools] perf expr: Test parsing of floating point numbers (Michael Petlan) [1873270] - [tools] perf record: Use an eventfd to wakeup when done (Michael Petlan) [1873270] - [tools] tools feature: Rename HAVE_EVENTFD to HAVE_EVENTFD_SUPPORT (Michael Petlan) [1873270] - [tools] perf evsel: Initialize evsel->per_pkg_mask to NULL in evsel__init() (Michael Petlan) [1873270] - [tools] perf evsel: Fix 2 memory leaks (Michael Petlan) [1873270] - [tools] perf parse-events: Fix incorrect conversion of 'if () free()' to 'zfree()' (Michael Petlan) [1873270] - [tools] perf tools: Fix is_bpf_image function logic (Michael Petlan) [1873270] - [tools] perf c2c: Fix 'perf c2c record -e list' to show the default events used (Michael Petlan) [1873270] - [tools] perf record: Add dummy event during system wide synthesis (Michael Petlan) [1873270] - [tools] perf evsel: Dummy events never triggers, no need to ask for PERF_SAMPLE_BRANCH_STACK (Michael Petlan) [1873270] - [tools] perf parse-events: Use strcmp() to compare the PMU name (Michael Petlan) [1873270] - [tools] perf expr: Print a debug message for division by zero (Michael Petlan) [1873270] - [tools] perf expr: Debug lex if debugging yacc (Michael Petlan) [1873270] - [tools] perf expr: Parse numbers as doubles (Michael Petlan) [1873270] - [tools] perf expr: Increase max other (Michael Petlan) [1873270] - [tools] perf expr: Allow ',' to be an other token (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in skylake metrics (Michael Petlan) [1873270] - [tools] perf metrics: Fix parse errors in cascade lake metrics (Michael Petlan) [1873270] - [tools] perf expr: Allow for unlimited escaped characters in a symbol (Michael Petlan) [1873270] - [tools] perf script: Enable IP fields for callchains (Michael Petlan) [1873270] - [tools] perf callchain: Setup callchain properly in pipe mode (Michael Petlan) [1873270] - [tools] perf session: Try to read pipe data from file (Michael Petlan) [1873270] - [tools] perf tools: Do not seek in pipe fd during tracing data processing (Michael Petlan) [1873270] - [tools] perf tools: Do not display extra info when there is nothing to build (Michael Petlan) [1873270] - [tools] perf probe: Do not show the skipped events (Michael Petlan) [1873270] - [tools] perf probe: Check address correctness by map instead of _etext (Michael Petlan) [1873270] - [tools] perf probe: Fix to check blacklist address correctly (Michael Petlan) [1873270] - [tools] perf probe: Accept the instance number of kretprobe event (Michael Petlan) [1873270] - [tools] perf counts: Rename perf_evsel__*counts() to evsel__*counts() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__w_cache* to evsel__w_cache* (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__new*() to evsel__new*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__get_config_term() & friends to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fprintf() to evsel__fprintf() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__resort*() to evsel__resort*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__object_config() to evsel__object_config() (Michael Petlan) [1873270] - [tools] perf cs-etm: Move definition of 'traceid_list' global variable from header file (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Move hex2u64 out of header (Michael Petlan) [1873270] - [tools] libsymbols kallsyms: Parse using io api (Michael Petlan) [1873270] - [tools] perf bench: Add kallsyms parsing (Michael Petlan) [1873270] - [tools] perf: cs-etm: Update to build with latest opencsd version (Michael Petlan) [1873270] - [tools] perf symbol: Fix kernel symbol address display (Michael Petlan) [1873270] - [tools] perf inject: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf annotate: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf trace: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf script: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf sched: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf lock: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf kmem: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf stat: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__store_ids() to evsel__store_id() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__env() to evsel__env() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_idx() to evsel__group_idx() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__fallback() to evsel__fallback() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__has*() to evsel__has*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{prev, next}() to evsel__{prev, next}() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__parse_sample*() to evsel__parse_sample*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__read*() to *evsel__read() (Michael Petlan) [1873270] - [tools] perf evsel: Ditch perf_evsel__cmp(), not used for quite a while (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_*() to evsel__is*() (Michael Petlan) [1873270] - [tools] perf pmu: Add perf_pmu__find_by_type helper (Michael Petlan) [1873270] - [tools] tools feature: Add support for detecting libpfm4 (Michael Petlan) [1873270] - [tools] perf doc: Pass ASCIIDOC_EXTRA as an argument (Michael Petlan) [1873270] - [tools] perf mem2node: Avoid double free related to realloc (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__{str, int}val() and other tracepoint field metehods to to evsel__*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__open_per_*() to evsel__open_per_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__*filter*() to evsel__*filter*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*set_sample_*() to *evsel__*set_sample_*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__group_desc() to evsel__group_desc() (Michael Petlan) [1873270] - [tools] perf evsel: Rename *perf_evsel__*name() to *evsel__*name() (Michael Petlan) [1873270] - [tools] perf evsel: Rename __perf_evsel__sample_size() to __evsel__sample_size() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__calc_id_pos() to evsel__calc_id_pos() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__config*() to evsel__config*() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__exit() to evsel__exit() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__is_aux_event() to evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__find_pmu() to evsel__find_pmu() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__compute_deltas() to evsel__compute_deltas() (Michael Petlan) [1873270] - [tools] perf evsel: Rename perf_evsel__nr_cpus() to evsel__nr_cpus() (Michael Petlan) [1873270] - [tools] perf evsel: Rename 'struct perf_evsel__sb_cb_t' to 'struct evsel__sb_cb_t' (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about using /proc/kcore (Michael Petlan) [1873270] - [tools] perf intel-pt: Update documentation about itrace G and L options (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing branch stacks for regular events (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__br_sample_late() (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized branch stack sample type (Michael Petlan) [1873270] - [tools] perf auxtrace: Add option to synthesize branch stack for regular events (Michael Petlan) [1873270] - [tools] perf intel-pt: Change branch stack support to use thread-stacks (Michael Petlan) [1873270] - [tools] perf intel-pt: Consolidate thread-stack use condition (Michael Petlan) [1873270] - [tools] perf thread-stack: Add branch stack support (Michael Petlan) [1873270] - [tools] perf tools: Simplify checking if SMT is active (Michael Petlan) [1873270] - [tools] perf tools: Fix reading new topology attribute "core_cpus" (Michael Petlan) [1873270] - [tools] libperf evlist: Fix a refcount leak (Michael Petlan) [1873270] - [tools] perf parse-events: Fix another memory leaks found on parse_events() (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] perf parse-events: Fix memory leaks found on parse_events (Michael Petlan) [1873270] - [tools] libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for all_cpus (Michael Petlan) [1873270] - [tools] perf record: Move side band evlist setup to separate routine (Michael Petlan) [1873270] - [tools] perf record: Introduce --switch-output-event (Michael Petlan) [1873270] - [tools] libsubcmd: Introduce OPT_CALLBACK_SET() (Michael Petlan) [1873270] - [tools] perf evlist: Allow reusing the side band thread for more purposes (Michael Petlan) [1873270] - [tools] perf evlist: Move the sideband thread routines to separate object (Michael Petlan) [1873270] - [tools] perf parse-events: Add parse_events_option() variant that creates evlist (Michael Petlan) [1873270] - [tools] perf bpf: Decouple creating the evlist from adding the SB event (Michael Petlan) [1873270] - [tools] perf top: Move sb_evlist to 'struct perf_top' (Michael Petlan) [1873270] - [tools] perf record: Move sb_evlist to 'struct record' (Michael Petlan) [1873270] - [tools] perf tools: Move routines that probe for perf API features to separate file (Michael Petlan) [1873270] - [tools] perf vendor events power9: Add hv_24x7 socket/chip level metric events (Michael Petlan) [1873270] - [tools] perf tools: Enable Hz/hz prinitg for --metric-only option (Michael Petlan) [1873270] - [tools] perf tests expr: Added test for runtime param in metric expression (Michael Petlan) [1873270] - [tools] perf metricgroups: Enhance JSON/metric infrastructure to handle "?" (Michael Petlan) [1873270] - [tools] perf pmu: Fix function name in comment, its get_cpuid_str(), not get_cpustr() (Michael Petlan) [1873270] - [tools] perf report: Fix warning assignment of 0/1 to bool variable (Michael Petlan) [1873270] - [tools] perf tools: Remove unneeded semicolons (Michael Petlan) [1873270] - [tools] perf c2c: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] libtraceevent: Remove unneeded semicolon (Michael Petlan) [1873270] - [tools] perf script: Remove extraneous newline in perf_sample__fprintf_regs() (Michael Petlan) [1873270] - [tools] perf synthetic events: Remove use of sscanf from /proc reading (Michael Petlan) [1873270] - [tools] tools api: Add a lightweight buffered reading api (Michael Petlan) [1873270] - [tools] perf bench: Add a multi-threaded synthesize benchmark (Michael Petlan) [1873270] - [tools] perf record: Add num-synthesize-threads option (Michael Petlan) [1873270] - [tools] perf test session topology: Fix data path (Michael Petlan) [1873270] - [tools] perf stat: Improve runtime stat for interval mode (Michael Petlan) [1873270] - [tools] perf stat: Zero all the 'ena' and 'run' array slot stats for interval mode (Michael Petlan) [1873270] - [tools] perf evlist: Remove duplicate headers (Michael Petlan) [1873270] - [tools] perf bench: Fix div-by-zero if runtime is zero (Michael Petlan) [1873270] - [tools] perf cgroup: Avoid needless closing of unopened fd (Michael Petlan) [1873270] - [tools] perf hist: Add fast path for duplicate entries check (Michael Petlan) [1873270] - [tools] perf c2c: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf top: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf script: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf report: Add option to enable the LBR stitching approach (Michael Petlan) [1873270] - [tools] perf callchain: Stitch LBR call stack (Michael Petlan) [1873270] - [tools] perf callchain: Save previous cursor nodes for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Save previous sample for LBR stitching approach (Michael Petlan) [1873270] - [tools] perf thread: Add a knob for LBR stitch approach (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_lbr_ip() (Michael Petlan) [1873270] - [tools] perf machine: Factor out lbr_callchain_add_kernel_ip() (Michael Petlan) [1873270] - [tools] perf machine: Refine the function for LBR call stack reconstruction (Michael Petlan) [1873270] - [tools] perf machine: Remove the indent in resolve_lbr_callchain_sample (Michael Petlan) [1873270] - [tools] perf header: Support CPU PMU capabilities (Michael Petlan) [1873270] - [tools] perf parser: Add support to specify rXXX event with pmu (Michael Petlan) [1873270] - [tools] perf doc: allow ASCIIDOC_EXTRA to be an argument (Michael Petlan) [1873270] - [tools] perf pmu: Add support for PMU capabilities (Michael Petlan) [1873270] - [tools] tools lib traceevent: Take care of return value of asprintf (Michael Petlan) [1873270] - [tools] perf stat: Force error in fallback on :k events (Michael Petlan) [1873270] - [tools] perf tools: Add support for leader-sampling with AUX area events (Michael Petlan) [1873270] - [tools] perf evlist: Allow multiple read formats (Michael Petlan) [1873270] - [tools] perf evsel: Rearrange perf_evsel__config_leader_sampling() (Michael Petlan) [1873270] - [tools] perf evlist: Move leader-sampling configuration (Michael Petlan) [1873270] - [tools] perf evsel: Move and globalize perf_evsel__find_pmu() and perf_evsel__is_aux_event() (Michael Petlan) [1873270] - [tools] perf intel-pt: Add support for synthesizing callchains for regular events (Michael Petlan) [1873270] - [tools] perf evsel: Add support for synthesized sample type (Michael Petlan) [1873270] - [tools] perf evsel: Be consistent when looking which evsel PERF_SAMPLE_ bits are set (Michael Petlan) [1873270] - [tools] perf thread-stack: Add thread_stack__sample_late() (Michael Petlan) [1873270] - [tools] perf auxtrace: Add an option to synthesize callchains for regular events (Michael Petlan) [1873270] - [tools] perf auxtrace: For reporting purposes, un-group AUX area event (Michael Petlan) [1873270] - [tools] perf s390-cpumsf: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf cs-etm: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf arm-spe: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-bts: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf intel-pt: Implement ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf auxtrace: Add ->evsel_is_auxtrace() callback (Michael Petlan) [1873270] - [tools] perf metrictroup: Split the metricgroup__add_metric function (Michael Petlan) [1873270] - [tools] perf expr: Add expr_scanner_ctx object (Michael Petlan) [1873270] - [tools] perf expr: Add expr_ prefix for parse_ctx and parse_id (Michael Petlan) [1873270] - [tools] perf synthetic-events: save 4kb from 2 stack frames (Michael Petlan) [1873270] - [tools] tools api fs: Make xxx__mountpoint() more scalable (Michael Petlan) [1873270] - [tools] perf bench: Add event synthesis benchmark (Michael Petlan) [1873270] - [tools] perf script: Simplify auxiliary event printing functions (Michael Petlan) [1873270] - [tools] perf tools: Support CAP_PERFMON capability (Michael Petlan) [1873270] - [tools] perf annotate: Add basic support for bpf_image (Michael Petlan) [1873270] - [tools] perf machine: Set ksymbol dso as loaded on arrival (Michael Petlan) [1873270] - [tools] perf tools: Synthesize bpf_trampoline/dispatcher ksymbol event (Michael Petlan) [1873270] - [tools] perf stat: Honour --timeout for forked workloads (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Add hw_len wherever missing (Michael Petlan) [1873270] - [kernel] perf: Fix task_function_call() error handling (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Fix RAPL config variable bug (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Add AMD Fam17h RAPL support (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Make perf_probe_msr() more robust and flexible (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Flip logic on default events visibility (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Refactor to share the RAPL code between Intel and AMD CPUs (Michael Petlan) [1873270] - [x86] perf/x86/rapl: Move RAPL support to common x86 code (Michael Petlan) [1873270] - [kernel] perf/core: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86: Replace zero-length array with flexible-array (Michael Petlan) [1873270] - [x86] perf/x86/intel: Add more available bits for OFFCORE_RESPONSE of Intel Tremont (Michael Petlan) [1873270] - [x86] perf/x86/intel/pt: Drop pointless NULL assignment (Michael Petlan) [1873270] - [kernel] perf: Add cond_resched() to task_function_call() (Michael Petlan) [1873270] - [powerpc] powerpc/perf: open access for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: open access to probes for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [kernel] perf/core: Open access to the core for CAP_PERFMON privileged process (Michael Petlan) [1873270] - [include] perf/core: Fix !CONFIG_PERF_EVENTS build warnings and failures (Michael Petlan) [1873270] - [security] perf_event: Add support for LSM and SELinux checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf/hv-24x7: Fix inconsistent output values incase multiple hv-24x7 events run (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add rtas call in hv-24x7 driver to get processor details (Michael Petlan) [1873270] - [powerpc] powerpc/hv-24x7: Add sysfs files inside hv-24x7 device to show processor details (Michael Petlan) [1873270] - [documentation] Documentation/ABI: Add ABI documentation for chips and sockets (Michael Petlan) [1873270] - [powerpc] powerpc/pseries: Update hv-24x7 information after migration (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix ptrace code that muck around with address/len (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Fix length calculation for unaligned target (Michael Petlan) [1873270] - [powerpc] powerpc/watchpoint: Introduce macros for watchpoint length (Michael Petlan) [1873270] - [powerpc] powerpc/perf: fix imc allocation failure handling (Michael Petlan) [1873270] - [powerpc] powerpc/perf/24x7: use rb_entry (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix MMCRA corruption by bhrb_filter (Michael Petlan) [1873270] - [powerpc] perf/core, arch/powerpc: use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1873270] - [powerpc] Powerpc/perf: Wire up PMI throttling (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Remove l2 bus events from HW cache event array (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Add constraints for power9 l2/l3 bus events (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix unit_sel/cache_sel checks (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Cleanup cache_sel bits comment (Michael Petlan) [1873270] - [powerpc] powerpc/perf: Fix thresholding counter data for unknown type (Michael Petlan) [1873270] - [fs] writeback: Drop I_DIRTY_TIME_EXPIRE (Waiman Long) [1860031] - [fs] writeback: Fix sync livelock due to b_dirty_time processing (Waiman Long) [1860031] - [fs] writeback: Avoid skipping inode writeback (Waiman Long) [1860031] - [fs] writeback: Protect inode->i_io_list with inode->i_lock (Waiman Long) [1860031] - [fs] dcache: sort the freeing-without-RCU-delay mess for good (Waiman Long) [1860031] - [net] udp: Improve load balancing for SO_REUSEPORT. (Davide Caratti) [1894075] - [net] udp: Fix wrong clean up for IS_UDPLITE macro (Davide Caratti) [1894075] - [fs] ext4: disallow modifying DAX inode flag if inline_data has been set (Eric Sandeen) [1838344] - [include] dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix stack overflow when mounting fsdax pmem device (Eric Sandeen) [1838876 1854346 1838344] - [dax] dm: Call proper helper to determine dax support (Eric Sandeen) [1838876 1854346 1838344] - [md] dm/dax: Fix table reference counts (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: fix detection of dax support for non-persistent memory block devices (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: do not print error message for non-persistent memory block device (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Fix incorrect argument passed to xas_set_err() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Support that ioctl(SETXFLAGS/GETXFLAGS) can set/get inode DAX on XFS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Expand lock scope to cover the use of addresses (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/dax: Remove unused size parameter (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: print error message by pr_info() in __generic_fsdax_supported() (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: avoid race conditions when remounting with options that change dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Update xfs_ioctl_setattr_dax_invalidate() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Combine xfs_diflags_to_linux() and xfs_diflags_to_iflags() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Create function xfs_inode_should_enable_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Change XFS_MOUNT_DAX to XFS_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/xfs: Remove unnecessary initialization of i_rwsem (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update DAX enablement for ext4 (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Introduce DAX inode flag (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Remove jflag variable (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Make DAX mount option a tri-state (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Only change S_DAX on inode load (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Update ext4_should_use_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Change EXT4_MOUNT_DAX to EXT4_MOUNT_DAX_ALWAYS (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/ext4: Narrow scope of DAX check in setflags (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Introduce DCACHE_DONTCACHE (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Lift XFS_IDONTCACHE to the VFS layer (Eric Sandeen) [1838876 1854346 1838344] - [documentation] Documentation/dax: Update Usage section (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs/stat: Define DAX statx attribute (Eric Sandeen) [1838876 1854346 1838344] - [block] fs: Remove unneeded IS_DAX() check in io_is_direct() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Move mandatory ->zero_page_range() check in alloc_dax() (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax, iomap: Add helper dax_iomap_zero() to zero a range (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Use new dax zero page method for zeroing a page (Eric Sandeen) [1838876 1854346 1838344] - [md] dm,dax: Add dax zero_page_range operation (Eric Sandeen) [1838876 1854346 1838344] - [s390] s390, dcssblk, dax: Add dax zero_page_range operation to dcssblk driver (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax, pmem: Add a dax operation zero_page_range (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] pmem: Add functions for reading/writing page to/from pmem (Eric Sandeen) [1838876 1854346 1838344] - [fs] fs: Constify vma argument to vma_is_dax (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: pass NOWAIT flag to iomap_apply (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Get rid of fs_dax_get_by_host() helper (Eric Sandeen) [1838876 1854346 1838344] - [fs] dax: Pass dax_dev instead of bdev to dax_writeback_mapping_range() (Eric Sandeen) [1838876 1854346 1838344] - [dax] dax: Fix alloc_dax_region() compile warning (Eric Sandeen) [1838876 1854346 1838344] - [fs] xfs: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [fs] ext4: disable map_sync for async flush (Eric Sandeen) [1838876 1854346 1838344] - [include] dax: check synchronous mapping is supported (Eric Sandeen) [1838876 1854346 1838344] - [dax] libnvdimm: add dax_dev sync flag (Eric Sandeen) [1838876 1854346 1838344] - [nvdimm] libnvdimm: nd_region flush callback support (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: only allow FSSETXATTR to set DAX flag on files and dirs (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check extent size hints (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: teach vfs_ioc_fssetxattr_check to check project id info (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking function for FS_IOC_FSSETXATTR (Eric Sandeen) [1838876 1854346 1838344] - [fs] vfs: create a generic checking and prep function for FS_IOC_SETFLAGS (Eric Sandeen) [1838876 1854346 1838344] - [dax] drivers/dax: Allow to include DEV_DAX_PMEM as builtin (Eric Sandeen) [1838876 1854346 1838344] - [netdrv] net: intel: Remove in_interrupt() warnings (Corinna Vinschen) [1838746] - [netdrv] igb: read PBA number from flash (Corinna Vinschen) [1838746] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838746] - [netdrv] treewide: Use fallthrough pseudo-keyword (Corinna Vinschen) [1838746] - [netdrv] igb: use eth_zero_addr() to clear mac address (Corinna Vinschen) [1838746] - [netdrv] igb: Remove unnecessary usages of memset (Corinna Vinschen) [1838746] - [netdrv] igb: reinit_locked() should be called with rtnl_lock (Corinna Vinschen) [1838746] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838746] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838746] - [netdrv] igb: make igb_set_fc_watermarks() return void (Corinna Vinschen) [1838746] - [netdrv] igb: Report speed and duplex as unknown when device is runtime suspended (Corinna Vinschen) [1838746] - [netdrv] igb: convert to use i2c_new_client_device() (Corinna Vinschen) [1838746] - [net] Bluetooth: Allow suspend even when preparation has failed (Gopal Tiwari) [1881485] - [net] Bluetooth: Check scan state before disabling during suspend (Gopal Tiwari) [1881485] - [fs] fuse: fix the ->direct_IO() treatment of iov_iter (Miklos Szeredi) [1875608] - [net] openvswitch: handle DNAT tuple collision (Dumitru Ceara) [1877128] - [net] xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame (Petr Oros) [1867194]- [fs] NFSv4.2: fix failure to unregister shrinker (Scott Mayhew) [1897988] - [tools] cpupower: Provide online and offline CPU information (Diego Domingos) [1893779] - [net] net/smc: improve return codes for SMC-Dv2 (Claudio Imbrenda) [1731027] - [s390] s390/ism: fix incorrect system EID (Claudio Imbrenda) [1731027] - [net] net/smc: fix suppressed return code (Claudio Imbrenda) [1731027] - [net] net/smc: fix null pointer dereference in smc_listen_decline() (Claudio Imbrenda) [1731027] - [net] net/smc: fix invalid return code in smcd_new_buf_create() (Claudio Imbrenda) [1731027] - [net] net/smc: fix valid DMBE buffer sizes (Claudio Imbrenda) [1731027] - [net] net/smc: fix use-after-free of delayed events (Claudio Imbrenda) [1731027] - [net] net/smc: restore smcd_version when all ISM V2 devices failed to init (Claudio Imbrenda) [1731027] - [net] net/smc: cleanup buffer usage in smc_listen_work() (Claudio Imbrenda) [1731027] - [net] net/smc: consolidate unlocking in same function (Claudio Imbrenda) [1731027] - [net] net/smc: use an array to check fields in system EID (Claudio Imbrenda) [1731027] - [net] net/smc: send ISM devices with unique chid in CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: CLC decline - V2 enhancements (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CLC first contact extension (Claudio Imbrenda) [1731027] - [net] net/smc: CLC accept / confirm V2 (Claudio Imbrenda) [1731027] - [net] net/smc: determine accepted ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: build and send V2 CLC proposal (Claudio Imbrenda) [1731027] - [net] net/smc: determine proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce list of pnetids for Ethernet devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce CHID callback for ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: introduce System Enterprise ID (SEID) (Claudio Imbrenda) [1731027] - [net] net/smc: prepare for more proposed ISM devices (Claudio Imbrenda) [1731027] - [net] net/smc: split CLC confirm/accept data to be sent (Claudio Imbrenda) [1731027] - [net] net/smc: separate find device functions (Claudio Imbrenda) [1731027] - [net] net/smc: CLC header fields renaming (Claudio Imbrenda) [1731027] - [net] net/smc: remove constant and introduce helper to check for a pnet id (Claudio Imbrenda) [1731027] - [netdrv] vmxnet3: fix cksum offload issues for non-udp tunnels (Cathy Avery) [1868451] - [netdrv] vmxnet3: use correct tcp hdr length when packet is encapsulated (Cathy Avery) [1868451] - [scsi] scsi: vmw_pvscsi: Use true, false for adapter->use_msg (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Silence dma mapping errors (Cathy Avery) [1895014] - [scsi] scsi: vmw_pvscsi: Fix swiotlb operation (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: use sg helper to iterate over scatterlist (Cathy Avery) [1895014] - [scsi] Revert "vmw_pvscsi: Fixed to work with SG_CHAIN" (Cathy Avery) [1895014] - [scsi] scsi: vmw_pscsi: switch to generic DMA API (Cathy Avery) [1895014] - [netdrv] mdiobus: Disable preemption upon u64_stats update (Petr Oros) [1889849] - [net] u64_stats: Document writer non-preemptibility requirement (Petr Oros) [1889849] - [netdrv] phy: fixed_phy: Remove unused seqcount (Petr Oros) [1889849] - [net] net/smc: fix double kfree in smc_listen_work() (Claudio Imbrenda) [1847444] - [net] net/smc: check variable before dereferencing in smc_close.c (Claudio Imbrenda) [1847444] - [net] net/smc: use separate work queues for different worker types (Claudio Imbrenda) [1847444] - [net] net/smc: use the retry mechanism for netlink messages (Claudio Imbrenda) [1847444] - [net] net/smc: immediate freeing in smc_lgr_cleanup_early() (Claudio Imbrenda) [1847444] - [net] net/smc: reduce smc_listen_decline() calls (Claudio Imbrenda) [1847444] - [net] net/smc: improve server ISM device determination (Claudio Imbrenda) [1847444] - [net] net/smc: common routine for CLC accept and confirm (Claudio Imbrenda) [1847444] - [net] net/smc: dynamic allocation of CLC proposal buffer (Claudio Imbrenda) [1847444] - [net] net/smc: introduce better field names (Claudio Imbrenda) [1847444] - [net] net/smc: reduce active tcp_listen workers (Claudio Imbrenda) [1847444] - [net] net/smc: fix sock refcounting in case of termination (Claudio Imbrenda) [1847444] - [net] net/smc: reset sndbuf_desc if freed (Claudio Imbrenda) [1847444] - [net] net/smc: fix toleration of fake add_link messages (Claudio Imbrenda) [1847444] - [net] net/smc: Prevent kernel-infoleak in __smc_diag_dump() (Claudio Imbrenda) [1847444] - [s390] s390/ism: fix error return code in ism_probe() (Claudio Imbrenda) [1847444] - [s390] s390/zcrypt: Introduce Failure Injection feature (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap_msg param one level up the call chain (Philipp Rudo) [1851124] - [s390] s390/ap/zcrypt: revisit ap and zcrypt error handling (Philipp Rudo) [1851124] - [s390] s390/ap: Support AP card SCLP config and deconfig operations (Philipp Rudo) [1851124] - [s390] s390/sclp: Add support for SCLP AP adapter config/deconfig (Philipp Rudo) [1851124] - [s390] s390/ap: add card/queue deconfig state (Philipp Rudo) [1851124] - [s390] s390/ap: add error response code field for ap queue devices (Philipp Rudo) [1851124] - [s390] s390/ap: split ap queue state machine state from device state (Philipp Rudo) [1851124] - [crypto] s390/zcrypt: New config switch CONFIG_ZCRYPT_DEBUG (Philipp Rudo) [1851124] - [s390] s390/zcrypt: introduce msg tracking in zcrypt functions (Philipp Rudo) [1851124] - [s390] s390/ap: rework crypto config info and default domain code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: provide cex4 cca sysfs attributes for cex3 (Philipp Rudo) [1851124] - [s390] s390/ap: rename and clarify ap state machine related stuff (Philipp Rudo) [1851124] - [s390] s390/zcrypt: split ioctl function into smaller code units (Philipp Rudo) [1851124] - [s390] s390/zcrypt: code beautification and struct field renames (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix smatch warnings (Philipp Rudo) [1851124] - [s390] s390/ap: introduce new ap function ap_get_qdev() (Philipp Rudo) [1851124] - [s390] s390/zcrypt: replace snprintf/sprintf with scnprintf (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Use scnprintf() for avoiding potential buffer overflow (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Support for CCA protected key block version 2 (Philipp Rudo) [1851124] - [s390] s390/zcrypt: fix card and queue total counter wrap (Philipp Rudo) [1851124] - [s390] s390/zcrypt: move ap device reset from bus to driver code (Philipp Rudo) [1851124] - [s390] s390/zcrypt: Fix CCA cipher key gen with clear key value function (Philipp Rudo) [1851124] - [s390] s390/zcrypt: handle new reply code FILTERED_BY_HYPERVISOR (Philipp Rudo) [1851124] - [fs] NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1888612] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1888612] - [hv] hv: vmbus: Add timeout to vmbus_wait_for_unload (Mohammed Gamal) [1888980] - [net] sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action() (Ivan Vecera) [1874071] - [net] sched: act_ct: Fix adding udp port mangle operation (Ivan Vecera) [1874071] - [net] sched: Fix suspicious RCU usage while accessing tcf_tunnel_info (Ivan Vecera) [1874071] - [net] sched: get rid of qdisc->padded (Ivan Vecera) [1874071] - [net] sched: check error pointer in tcf_dump_walker() (Ivan Vecera) [1874071] - [net] sched: remove a redundant goto chain check (Ivan Vecera) [1874071] - [net] sched: cls_u32: Replace one-element array with flexible-array member (Ivan Vecera) [1874071] - [net] sched: commit action insertions together (Ivan Vecera) [1874071] - [net] sched: defer tcf_idr_insert() in tcf_action_init_1() (Ivan Vecera) [1874071] - [net] sched: Remove unused function qdisc_queue_drop_head() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix allowing too small intervals (Ivan Vecera) [1874071] - [net] sched: sch_generic: aviod concurrent reset and enqueue op for lockless qdisc (Ivan Vecera) [1874071] - [net] sched: skip an unnecessay check (Ivan Vecera) [1874071] - [net] sched: act_ife: load meta modules before tcf_idr_check_alloc() (Ivan Vecera) [1874071] - [net] sched: fix error path in red_init() (Ivan Vecera) [1874071] - [net] sched: taprio: Fix using wrong queues in gate mask (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] netlink: consistently use NLA_POLICY_EXACT_LEN() (Ivan Vecera) [1874071] - [net] sched: act_ct: fix miss set mru for ovs after defrag in act_ct (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() helper (Ivan Vecera) [1874071] - [net] sched: act_pedit: Use flex_array_size() helper in memcpy() (Ivan Vecera) [1874071] - [net] sched: initialize timer earlier in red_init() (Ivan Vecera) [1874071] - [net] sched: cls_flower: Add hash info to flow classification (Ivan Vecera) [1874071] - [net] flow_dissector: add packet hash dissection (Ivan Vecera) [1874071] - [net] sched: sch_api: add missing rcu read lock to silence the warning (Ivan Vecera) [1874071] - [tools] tc-testing: Add tdc to kselftests (Ivan Vecera) [1874071] - [net] sched: Do not drop root lock in tcf_qevent_handle() (Ivan Vecera) [1874071] - [net] sched: kerneldoc fixes (Ivan Vecera) [1874071] - [net] sched: Pass qdisc reference in struct flow_block_offload (Ivan Vecera) [1874071] - [net] sched: Use fallthrough pseudo-keyword (Ivan Vecera) [1874071] - [net] sched: Allow changing default qdisc to FQ-PIE (Ivan Vecera) [1874071] - [net] qos: police action offloading parameter 'burst' change to the original value (Ivan Vecera) [1874071] - [tools] selftests: forwarding: Add a RED test for SW datapath (Ivan Vecera) [1874071] - [net] sched: sch_red: Add qevents "early_drop" and "mark" (Ivan Vecera) [1874071] - [net] sched: sch_red: Split init and change callbacks (Ivan Vecera) [1874071] - [net] sched: Introduce helpers for qevent blocks (Ivan Vecera) [1874071] - [net] sched: sch_cake: add RFC 8622 LE PHB support to CAKE diffserv handling (Ivan Vecera) [1874071] - [net] qos: police action add index for tc flower offloading (Ivan Vecera) [1874071] - [net] qos: add tc police offloading action with max frame size limit (Ivan Vecera) [1874071] - [net] sched: tcindex_change: Remove redundant null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant skb null check (Ivan Vecera) [1874071] - [net] sched: Remove redundant condition in qdisc_graft (Ivan Vecera) [1874071] - [net] sched: cls_u32: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] sched: taprio: Use struct_size() in kzalloc() (Ivan Vecera) [1874071] - [net] vlan: consolidate VLAN parsing code and limit max parsing depth (Ivan Vecera) [1874071] - [net] flow_offload: Move rhashtable inclusion to the source file (Ivan Vecera) [1874071] - [net] sched: act_ct: fix restore the qdisc_skb_cb after defrag (Ivan Vecera) [1874071] - [net] sched: fix a memory leak in atm_tc_init() (Ivan Vecera) [1874071] - [net] sched: act_ct: add miss tcf_lastuse_update. (Ivan Vecera) [1874071] - [net] sched: consistently handle layer3 header accesses in the presence of VLANs (Ivan Vecera) [1874071] - [net] tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040 (Ivan Vecera) [1874071] - [net] sched: sch_cake: fix a few style nits (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't call diffserv parsing code when it is not needed (Ivan Vecera) [1874071] - [net] sched: sch_cake: don't try to reallocate or unshare skb unconditionally (Ivan Vecera) [1874071] - [tools] tc-testing: avoid action cookies with odd length. (Ivan Vecera) [1874071] - [net] sched: Add MODULE_DESCRIPTION entries to network modules (Ivan Vecera) [1874071] - [tools] tc-testing: update geneve options match in tunnel_key unit tests (Ivan Vecera) [1874071] - [net] flow_offload: fix flow_indr_dev_unregister path (Ivan Vecera) [1874071] - [net] flow_offload: use flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] flow_offload: add flow_indr_block_cb_alloc/remove function (Ivan Vecera) [1874071] - [net] sched: act_gate: fix configuration of the periodic timer (Ivan Vecera) [1874071] - [net] sched: act_gate: fix NULL dereference in tcf_gate_init() (Ivan Vecera) [1874071] - [net] flow_offload: remove indirect flow_block declarations leftover (Ivan Vecera) [1874071] - [net] sched: export __netdev_watchdog_up() (Ivan Vecera) [1874071] - [net] sched: act_ct: add nat mangle action only for NAT-conntrack (Ivan Vecera) [1874071] - [net] sched: sch_cake: Take advantage of skb->hash where appropriate (Ivan Vecera) [1874071] - [net] sched: fix a couple of splats in the error path of tfc_gate_init() (Ivan Vecera) [1874071] - [net] sched: get rid of unnecessary dev_qdisc_reset() (Ivan Vecera) [1874071] - [net] sched: avoid resetting active qdisc for multiple times (Ivan Vecera) [1874071] - [net] sched: add a tracepoint for qdisc creation (Ivan Vecera) [1874071] - [net] sched: add tracepoints for qdisc_reset() and qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: use qdisc_reset() in qdisc_destroy() (Ivan Vecera) [1874071] - [net] sched: fix infinite loop in sch_fq_pie (Ivan Vecera) [1874071] - [net] sched: fix reporting the first-time use timestamp (Ivan Vecera) [1874071] - [net] tracing: Fix header include guards in trace event headers (Ivan Vecera) [1874071] - [netdrv] ipvlan: fix device features (Davide Caratti) [1892621] - [netdrv] ipvlan: consolidate TSO flags using NETIF_F_ALL_TSO (Davide Caratti) [1892621] - [netdrv] ipvlan: set hw_enc_features like macvlan (Davide Caratti) [1892621] - [tools] ACPI: Use valid link to the ACPI specification (David Arcari) [1857138] - [tools] cpupower: Replace HTTP links with HTTPS ones (David Arcari) [1857138] - [tools] cpupower: Fix NULL but dereferenced coccicheck errors (David Arcari) [1857138] - [tools] cpupower: Fix comparing pointer to 0 coccicheck warns (David Arcari) [1857138] - [tools] cpupower: Remove unneeded semicolon (David Arcari) [1857138] - [tools] cpupower: .gitignore: add SPDX License Identifier (David Arcari) [1857138] - [tools] cpupower: avoid multiple definition with gcc -fno-common (David Arcari) [1857138] - [tools] cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e (David Arcari) [1857138] - [tools] cpupower: ToDo: Update ToDo with ideas for per_cpu_schedule handling (David Arcari) [1857138] - [tools] tools/power/cpupower: Fix initializer override in hsw_ext_cstates (David Arcari) [1857138] - [tools] cpupower: update German translation (David Arcari) [1857138] - [tools] tools/power/cpupower: fix 64bit detection when cross-compiling (David Arcari) [1857138] - [tools] cpupower: Add missing newline at end of file (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (David Arcari) [1857138] - [tools] cpupower: correct spelling of interval (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 166 (David Arcari) [1857138] - [tools] cpupower: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (David Arcari) [1857138] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 155 (David Arcari) [1857138] - [tools] cpupower: Add SPDX license identifier for more missed files (David Arcari) [1857138] - [tools] tools/power/cpupower: Display boost frequency separately (David Arcari) [1857138] - [tools] cpupower : Auto-completion for cpupower tool (David Arcari) [1857138] - [tools] tools/power/cpupower: fix compilation with STATIC=true (David Arcari) [1857138] - [tools] cpupower: remove stringop-truncation waring (David Arcari) [1857138] - [tools] cpupower: convert ISO_8859-1 text comments to utf-8 (David Arcari) [1857138] - [x86] x86/resctrl: Support wider MBM counters (Puneet Sethi) [1834658] - [x86] x86/resctrl: Support CPUID enumeration of MBM counter width (Puneet Sethi) [1834658] - [x86] x86/resctrl: Maintain MBM counter width per resource (Puneet Sethi) [1834658] - [x86] x86/resctrl: Query LLC monitoring properties once during boot (Puneet Sethi) [1834658] - [x86] x86/resctrl: Remove unnecessary RMID checks (Puneet Sethi) [1834658] - [x86] x86/cpu: Move resctrl CPUID code to resctrl/ (Puneet Sethi) [1834658] - [x86] x86/resctrl: Rename asm/resctrl_sched.h to asm/resctrl.h (Puneet Sethi) [1834658] - [x86] x86/resctrl: Preserve CDP enable over CPU hotplug (Puneet Sethi) [1834658] - [net] af_packet: TPACKET_V3: fix fill status rwlock imbalance (Ivan Vecera) [1889829] - [net] packet: tpacket_rcv: do not increment ring index on drop (Ivan Vecera) [1889829] - [net] af_packet: TPACKET_V3: replace busy-wait loop (Ivan Vecera) [1889829] - [net] SUNRPC: Fix svc_flush_dcache() (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Be consistent about mirror index types (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read (Scott Mayhew) [1888214] - [fs] NFSv4.2: fix client's attribute cache management for copy_file_range (Scott Mayhew) [1888214] - [fs] nfs: Fix security label length not being reset (Scott Mayhew) [1888214] - [net] SUNRPC: stop printk reading past end of string (Scott Mayhew) [1888214] - [fs] NFS: Zero-stateid SETATTR should first return delegation (Scott Mayhew) [1888214] - [fs] NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation recall (Scott Mayhew) [1888214] - [net] SUNRPC: remove duplicate include (Scott Mayhew) [1888214] - [fs] nfsd: fix oops on mixed NFSv4/NFSv3 client access (Scott Mayhew) [1888214] - [fs] NFS: Fix flexfiles read failover (Scott Mayhew) [1888214] - [fs] fs: nfs: delete repeated words in comments (Scott Mayhew) [1888214] - [fs] rpc_pipefs: convert comma to semicolon (Scott Mayhew) [1888214] - [fs] NFS: Don't return layout segments that are in use (Scott Mayhew) [1888214] - [fs] NFS: Don't move layouts to plh_return_segs list while in use (Scott Mayhew) [1888214] - [fs] NFS: Add layout segment info to pnfs read/write/commit tracepoints (Scott Mayhew) [1888214] - [fs] NFS: Add tracepoints for layouterror and layoutstats (Scott Mayhew) [1888214] - [fs] NFS: Report the stateid + status in trace_nfs4_layoutreturn_on_close() (Scott Mayhew) [1888214] - [fs] NFSv4.2: xattr cache: get rid of cache discard work queue (Scott Mayhew) [1888214] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1888214] - [net] svcrdma: CM event handler clean up (Scott Mayhew) [1888214] - [net] svcrdma: Remove transport reference counting (Scott Mayhew) [1888214] - [net] svcrdma: Fix another Receive buffer leak (Scott Mayhew) [1888214] - [trace] SUNRPC: Refresh the show_rqstp_flags() macro (Scott Mayhew) [1888214] - [fs] nfsd: netns.h: delete a duplicated word (Scott Mayhew) [1888214] - [net] sunrpc: destroy rpc_inode_cachep after unregister_filesystem (Scott Mayhew) [1888214] - [fs] freezer: Add unsafe version of freezable_schedule_timeout_interruptible() for NFS (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side xattr caching (Scott Mayhew) [1888214] - [fs] NFSv4.2: hook in the user extended attribute handlers (Scott Mayhew) [1888214] - [fs] NFSv4.2: add the extended attribute proc functions (Scott Mayhew) [1888214] - [fs] nfs: make the buf_to_pages_noslab function available to the nfs code (Scott Mayhew) [1888214] - [fs] nfs: define and use the NFS_INO_INVALID_XATTR flag (Scott Mayhew) [1888214] - [fs] NFS: Update symbolic flags displayed by trace events (Scott Mayhew) [1888214] - [fs] nfs: modify update_changeattr to deal with regular files (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the extended attribute access bits (Scott Mayhew) [1888214] - [fs] nfs: define nfs_access_get_cached function (Scott Mayhew) [1888214] - [fs] NFSv4.2: add client side XDR handling for extended attributes (Scott Mayhew) [1888214] - [fs] NFSv4.2: query the server for extended attribute support (Scott Mayhew) [1888214] - [fs] NFSv4.2: define limits and sizes for user xattr handling (Scott Mayhew) [1888214] - [include] nfs: add client side only definitions for user xattrs (Scott Mayhew) [1888214] - [fs] nfsd: Use seq_putc() in two functions (Scott Mayhew) [1888214] - [net] svcrdma: Display chunk completion ID when posting a rw_ctxt (Scott Mayhew) [1888214] - [net] svcrdma: Record send_ctxt completion ID in trace_svcrdma_post_send() (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Send completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Record Receive completion ID in svc_rdma_decode_rqst (Scott Mayhew) [1888214] - [net] svcrdma: Introduce Receive completion IDs (Scott Mayhew) [1888214] - [trace] svcrdma: Introduce infrastructure to support completion IDs (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR encoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] svcrdma: Add common XDR decoders for RDMA and Read segments (Scott Mayhew) [1888214] - [net] SUNRPC: Add helpers for decoding list discriminators symbolically (Scott Mayhew) [1888214] - [include] svcrdma: Remove declarations for functions long removed (Scott Mayhew) [1888214] - [net] svcrdma: Clean up trace_svcrdma_send_failed() tracepoint (Scott Mayhew) [1888214] - [net] svcrdma: Consolidate send_error helper functions (Scott Mayhew) [1888214] - [net] svcrdma: Make svc_rdma_send_error_msg() a global function (Scott Mayhew) [1888214] - [net] svcrdma: Eliminate return value for svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add a @status parameter to svc_rdma_send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Add @rctxt parameter to svc_rdma_send_error() functions (Scott Mayhew) [1888214] - [net] svcrdma: Remove save_io_pages() call from send_error_msg() (Scott Mayhew) [1888214] - [net] svcrdma: Fix page leak in svc_rdma_recv_read_chunk() (Scott Mayhew) [1888214] - [net] SUNRPC: Augment server-side rpcgss tracepoints (Scott Mayhew) [1888214] - [fs] nfsd: add fattr support for user extended attributes (Scott Mayhew) [1888214] - [fs] nfsd: implement the xattr functions and en/decode logic (Scott Mayhew) [1888214] - [fs] nfsd: add structure definitions for xattr requests / responses (Scott Mayhew) [1888214] - [fs] nfsd: take xattr bits into account for permission checks (Scott Mayhew) [1888214] - [fs] nfsd: define xattr functions to call into their vfs counterparts (Scott Mayhew) [1888214] - [fs] nfsd: add defines for NFSv4.2 extended attribute support (Scott Mayhew) [1888214] - [fs] nfsd: split off the write decode code into a separate function (Scott Mayhew) [1888214] - [fs] xattr: add a function to check if a namespace is supported (Scott Mayhew) [1888214] - [fs] xattr: break delegations in {set, remove}xattr (Scott Mayhew) [1888214] - [uapi] nfs, nfsd: NFSv4.2 extended attribute protocol definitions (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: The mirror count could depend on the layout segment range (Scott Mayhew) [1888214] - [fs] pNFS/flexfiles: Clean up redundant calls to pnfs_put_lseg() (Scott Mayhew) [1888214] - [fs] NFS: Allow applications to speed up readdir+statx() using AT_STATX_DONT_SYNC (Scott Mayhew) [1888214] - [include] NFS: Replace zero-length array with flexible-array (Scott Mayhew) [1888214] - [include] nfs4: Remove unneeded semicolon (Scott Mayhew) [1888214] - [tools] selftests/livepatch: adopt to newer sysctl error format (Yannick Cote) [1869880] - [tools] selftests/livepatch: Use "comm" instead of "diff" for dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: add test delimiter to dmesg (Yannick Cote) [1869880] - [tools] selftests/livepatch: refine dmesg 'taints' in dmesg comparison (Yannick Cote) [1869880] - [tools] selftests/livepatch: Don't clear dmesg when running tests (Yannick Cote) [1869880] - [lib] selftests/livepatch: fix mem leaks in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: more verification in test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: rework test-klp-shadow-vars (Yannick Cote) [1869880] - [lib] selftests/livepatch: simplify test-klp-callbacks busy target tests (Yannick Cote) [1869880] - [tools] selftests: Install settings files to fix TIMEOUT failures (Yannick Cote) [1869880] - [cpufreq] cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo disabled (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Free memory only when turning off (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add ->offline and ->online callbacks (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Tweak the EPP sysfs interface (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Update cached EPP in the active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Refuse to turn off with HWP enabled (Puneet Sethi) [1881199] - [documentation] Documentation: fix pm/intel_pstate build warning and wording (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Implement passive mode with HWP enabled (Puneet Sethi) [1881199] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix cpuinfo_max_freq when MSR_TURBO_RATIO_LIMIT is 0 (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix EPP setting via sysfs in active mode (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Rearrange the storing of new EPP values (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Avoid enabling HWP if EPP is not supported (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Clean up aperf_mperf_shift description (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Supply struct attribute description for get_aperf_mperf_shift() (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Fix static checker warning for epp variable (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow raw energy performance preference value (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Allow enable/disable energy efficiency (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Add one more OOB control bit (Puneet Sethi) [1881199] - [cpufreq] cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode once (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: update links for references (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Unify copyright notices (Puneet Sethi) [1881199] - [documentation] Documentation: PM: Add SPDX license tags to multiple files (Puneet Sethi) [1881199] - [documentation] cpufreq: intel_pstate: Documentation: Add references sections (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Clarify coordination of P-State limits (Puneet Sethi) [1881199] - [documentation] Documentation: intel_pstate: Add base_frequency information (Puneet Sethi) [1881199] - [i2c] i2c: ismt: Remove call to memset after dmam_alloc_coherent (Tony Camuso) [1875395] - [i2c] i2c: ismt: Add support for Intel Cedar Fork (Tony Camuso) [1875395] - [documentation] docs: net: fm10k: add documentation for fm10k driver (Vladis Dronov) [1838728] - [netdrv] net: fm10k: reject unsupported coalescing params (Vladis Dronov) [1838728] - [netdrv] intel: Replace zero-length array with flexible-array member (Vladis Dronov) [1838728] - [netdrv] net: Use skb accessors in network drivers (Vladis Dronov) [1838728] - [netdrv] hdlc_ppp: add range checks in ppp_cp_parse_cr() (Guillaume Nault) [1882082] {CVE-2020-25643}- [pinctrl] pinctrl: sunrisepoint: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Modify COMMUNITY macros to be consistent (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Fix register offsets for TGL-H variant (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update header block to reflect direct dependencies (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Switch to use intel_pinctrl_get_soc_data() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Extract intel_pinctrl_get_soc_data() helper for wider use (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use fallthrough pseudo-keyword (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Fix pin being driven low for a while on gpiod_get(..., GPIOD_OUT_HIGH) (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Drop no-op ACPI_PTR() call (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of for_each_requested_gpio_in_range() (David Arcari) [1783488] - [include] gpiolib: Introduce for_each_requested_gpio_in_range() macro (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Protect IO in few call backs by lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Split intel_config_get() to three functions (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Drop the only label in the code for consistency (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Get rid of redundant 'else' in intel_config_set_debounce() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Make use of IRQ_RETVAL() (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Reduce scope of the lock (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Disable input and output buffer when switching to GPIO (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define ACPI address space ID (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Allow drivers to define total amount of IRQs per community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Move npins closer to pin_base in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Update description in struct intel_community (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Use platform_get_irq_optional() explicitly (David Arcari) [1783488] - [pinctrl] pinctrl: intel: Introduce new flag to force GPIO base to be 0 (David Arcari) [1783488] - [pinctrl] pinctrl: tigerlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: icelake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: cannonlake: Use generic flag for special GPIO base treatment (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Enable pin configuration setting for GPIO chip (David Arcari) [1783488] - [pinctrl] pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H (David Arcari) [1783488] - [pinctrl] pinctrl: baytrail: Mark expected switch fall-throughs (David Arcari) [1783488] - [kernel] mm: disable proactive compaction by default (Rafael Aquini) [1848427] - [mm] mm: use unsigned types for fragmentation score (Rafael Aquini) [1848427] - [mm] mm: fix compile error due to COMPACTION_HPAGE_ORDER (Rafael Aquini) [1848427] - [mm] mm: proactive compaction (Rafael Aquini) [1848427] - [i2c] i2c: mlxbf: I2C_MLXBF should depend on MELLANOX_PLATFORM (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update author and maintainer email info (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Update reference clock frequency (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Remove unecessary wrapper functions (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Fix resrticted cast warning of sparse (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: Add CONFIG_ACPI to guard ACPI function call (Alaa Hleihel) [1655741 1655709] - [documentation] dt-bindings: i2c: I2C binding for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [i2c] i2c: mlxbf: I2C SMBus driver for Mellanox BlueField SoC (Alaa Hleihel) [1655741 1655709] - [misc] misc: eeprom: ee1004: convert to i2c_new_dummy_device (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Deal with nack on page selection (Alaa Hleihel) [1655741] - [misc] eeprom: ee1004: Move selected page detection to a separate function (Alaa Hleihel) [1655741] - [misc] eeprom: New ee1004 driver for DDR4 memory (Alaa Hleihel) [1655741] - [net] xfrm: Use correct address family in xfrm_state_find (Xin Long) [1892641] - [net] xfrm: clone whole liftime_cur structure in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SEC_CTX in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_REPLAY_ESN_VAL in xfrm_do_migrate (Xin Long) [1892641] - [net] xfrm: clone XFRMA_SET_MARK in xfrm_do_migrate (Xin Long) [1892641] - [net] ip_vti: Fix unused variable warning (Xin Long) [1892641] - [net] xfrm: Make the policy hold queue work with VTI. (Xin Long) [1892641] - [s390] s390/qeth: delay draining the TX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: strictly order bridge address events (Philipp Rudo) [1847443] - [s390] s390/qeth: unify structs for bridge port state (Philipp Rudo) [1847443] - [s390] s390/qeth: copy less data from bridge state events (Philipp Rudo) [1847443] - [s390] s390/qeth: don't let HW override the configured port role (Philipp Rudo) [1847443] - [s390] s390/qeth: don't disable address events during initialization (Philipp Rudo) [1847443] - [s390] s390/qeth: make queue lock a proper spinlock (Philipp Rudo) [1847443] - [s390] s390/qeth: use to_delayed_work() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up qeth_l3_send_setdelmc()'s declaration (Philipp Rudo) [1847443] - [s390] s390/qeth: use all configured RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: don't process empty bridge port events (Philipp Rudo) [1847443] - [s390] s390/qeth: integrate RX refill worker with NAPI (Philipp Rudo) [1847443] - [s390] s390/qeth: tolerate pre-filled RX buffer (Philipp Rudo) [1847443] - [s390] s390/qdio: remove internal polling in non-thinint path (Philipp Rudo) [1847443] - [s390] s390/qdio: allow to scan all 128 Input SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: fix statistics for 128 SBALs (Philipp Rudo) [1847443] - [s390] s390/qeth: constify the MPC initialization data (Philipp Rudo) [1847443] - [s390] s390/qeth: unify RX-mode hashtables (Philipp Rudo) [1847443] - [s390] s390/qeth: cleanup OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up a magic number in the OAT callback (Philipp Rudo) [1847443] - [s390] s390/qeth: use u64_to_user_ptr() in the OAT code (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qeth: don't clear the configured isolation mode (Philipp Rudo) [1847443] - [s390] s390/qeth: only init the isolation mode when necessary (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune errno when cmds are cancelled (Philipp Rudo) [1847443] - [s390] s390/qeth: reject unsupported link type earlier (Philipp Rudo) [1847443] - [s390] s390/qeth: let isolation mode override HW offload restrictions (Philipp Rudo) [1847443] - [s390] s390/qeth: fix error handling for isolation mode cmds (Philipp Rudo) [1847443] - [s390] s390/qdio: warn about unexpected SLSB states (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up usage of qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce SLSB writes during Input Queue processing (Philipp Rudo) [1847443] - [s390] s390/qdio: fine-tune SLSB update (Philipp Rudo) [1847443] - [s390] s390/cio, s390/qeth: cleanup PNSO CHSC (Philipp Rudo) [1847443] - [s390] s390/qdio: remove q->first_to_kick (Philipp Rudo) [1847443] - [s390] s390/qdio: fix up qdio_start_irq() kerneldoc (Philipp Rudo) [1847443] - [s390] s390/qdio: add IRQ reduction for error SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: refactor ACK processing for primed SBALs (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify overlap calculation on Input refill (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up Kconfig help text (Philipp Rudo) [1847443] - [s390] s390/qeth: return error when starting a reset fails (Philipp Rudo) [1847443] - [s390] s390/qeth: set TX IRQ marker on last buffer in a group (Philipp Rudo) [1847443] - [s390] s390/qeth: indicate contiguous TX buffer elements (Philipp Rudo) [1847443] - [s390] s390/qeth: merge TX skb mapping code (Philipp Rudo) [1847443] - [s390] s390/qeth: don't use restricted offloads for local traffic (Philipp Rudo) [1847443] - [s390] s390/qeth: extract helpers for next-hop lookup (Philipp Rudo) [1847443] - [s390] s390/qeth: add debugfs file for local IP addresses (Philipp Rudo) [1847443] - [s390] s390/qeth: process local address events (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of LP2LP capability for csum offload (Philipp Rudo) [1847443] - [s390] s390/qeth: fix cancelling of TX timer on dev_close() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove always-true condition (Philipp Rudo) [1847443] - [s390] s390/qdio: de-duplicate tiqdio_inbound_processing() (Philipp Rudo) [1847443] - [s390] s390/qdio: keep track of allocated queue count (Philipp Rudo) [1847443] - [s390] s390/qdio: roll-back after queue allocation error (Philipp Rudo) [1847443] - [s390] s390/qdio: do more fine-grained allocation roll-back (Philipp Rudo) [1847443] - [s390] s390/qdio: consolidate thinint init/exit (Philipp Rudo) [1847443] - [s390] s390/qdio: put thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: tear down thinint indicator after early error (Philipp Rudo) [1847443] - [s390] s390/qdio: consistently restore the IRQ handler (Philipp Rudo) [1847443] - [s390] s390/qdio: clear DSCI early for polling drivers (Philipp Rudo) [1847443] - [s390] s390/qdio: inline shared_ind() (Philipp Rudo) [1847443] - [s390] s390/qdio: remove cdev from init_data (Philipp Rudo) [1847443] - [s390] s390/qdio: allow for non-contiguous SBAL array in init_data (Philipp Rudo) [1847443] - [s390] zfcp: inline zfcp_qdio_setup_init_data() (Philipp Rudo) [1847443] - [s390] s390/qdio: cleanly split alloc and establish (Philipp Rudo) [1847443] - [s390] s390/qeth: phase out OSN support (Philipp Rudo) [1847443] - [s390] s390/qeth: make OSN / OSX support configurable (Philipp Rudo) [1847443] - [s390] s390/qeth: remove fake_broadcast attribute (Philipp Rudo) [1847443] - [s390] s390/qdio: set qdio_irq->cdev at allocation time (Philipp Rudo) [1847443] - [s390] s390/qdio: remove unused function declarations (Philipp Rudo) [1847443] - [s390] s390/qeth: modernize two list helpers (Philipp Rudo) [1847443] - [s390] s390/qeth: keep track of fixed prio-queue configuration (Philipp Rudo) [1847443] - [s390] s390/qeth: fine-tune MAC Address-related errnos (Philipp Rudo) [1847443] - [s390] s390/qeth: add TX IRQ coalescing support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: collect more TX statistics (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up the mac_bits (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify L3 dev_id logic (Philipp Rudo) [1847443] - [s390] s390/qdio: extend polling support to multiple queues (Philipp Rudo) [1847443] - [s390] s390/qeth: remove redundant if-clause in RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: split out RX poll code (Philipp Rudo) [1847443] - [s390] s390/qeth: simplify RX buffer tracking (Philipp Rudo) [1847443] - [s390] s390/qdio: pass ISC as parameter to chsc_sadc() (Philipp Rudo) [1847443] - [s390] s390/qeth: use dev->reg_state (Philipp Rudo) [1847443] - [s390] s390/qeth: remove gratuitous NULL checks (Philipp Rudo) [1847443] - [s390] s390/qeth: add phys_to_virt() translation for AOB (Philipp Rudo) [1847443] - [s390] s390/qeth: don't report hard-coded driver version (Philipp Rudo) [1847443] - [s390] s390/qeth: add SW timestamping support for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: balance the TX queue selection for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for IQD devices (Philipp Rudo) [1847443] - [s390] s390/qeth: allow configuration of TX queues for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: remove prio-queueing support for z/VM NICs (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves in TX slow path (Philipp Rudo) [1847443] - [s390] s390/qeth: use memory reserves to back RX buffers (Philipp Rudo) [1847443] - [s390] s390/qeth: remove VNICC callback parameter struct (Philipp Rudo) [1847443] - [s390] s390/qdio: add tighter controls for IRQ polling (Philipp Rudo) [1847443] - [s390] s390/qdio: export SSQD via debugfs (Philipp Rudo) [1847443] - [s390] s390/qeth: support configurable RX copybreak (Philipp Rudo) [1847443] - [s390] s390/qeth: don't check for IFF_UP when scheduling napi (Philipp Rudo) [1847443] - [s390] s390/qeth: don't re-start read cmd when IDX has terminated (Philipp Rudo) [1847443] - [s390] s390/qeth: reset seqnos on connection startup (Philipp Rudo) [1847443] - [s390] s390/qeth: remove unused cmd definitions (Philipp Rudo) [1847443] - [s390] s390/qeth: validate device-provided MAC address (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up CREATE_ADDR cmd code (Philipp Rudo) [1847443] - [s390] s390/qeth: remove dead code in qeth_l3_iqd_read_initial_mac() (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify debugfs code (Philipp Rudo) [1847443] - [s390] s390/qdio: use QDIO_IRQ_STATE_INACTIVE instead of 0 (Philipp Rudo) [1847443] - [s390] s390/qeth: don't warn for napi with 0 budget (Philipp Rudo) [1847443] - [s390] s390/qdio: reduce access to cdev->private->qdio_data (Philipp Rudo) [1847443] - [s390] s390/qdio: clean up cdev access in qdio_setup_irq() (Philipp Rudo) [1847443] - [s390] s390/qdio: fill SL with absolute addresses (Philipp Rudo) [1847443] - [s390] s390/qdio: don't allocate *aob array with GFP_ATOMIC (Philipp Rudo) [1847443] - [s390] s390/qdio: simplify ACK tracking (Philipp Rudo) [1847443] - [s390] s390/qeth: remove HARDSETUP state (Philipp Rudo) [1847443] - [s390] s390/qeth: make cmd/reply matching more flexible (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate online/offline code (Philipp Rudo) [1847443] - [s390] s390/qeth: shift some bridgeport code around (Philipp Rudo) [1847443] - [s390] s390/qeth: remove QETH_RX_PULL_LEN (Philipp Rudo) [1847443] - [s390] s390/qeth: use napi_gro_frags() for SG skbs (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate RX code (Philipp Rudo) [1847443] - [s390] s390/qeth: make use of napi_schedule_irqoff() (Philipp Rudo) [1847443] - [s390] s390/qeth: consolidate helpers for capability checking (Philipp Rudo) [1847443] - [s390] s390/qeth: stop yielding the ip_lock during IPv4 registration (Philipp Rudo) [1847443] - [s390] s390/qeth: don't raise NETDEV_REBOOT event from L3 offline path (Philipp Rudo) [1847443] - [s390] s390/qeth: remove open-coded inet_make_mask() (Philipp Rudo) [1847443] - [s390] s390/qeth: clean up L3 sysfs code (Philipp Rudo) [1847443] - [s390] s390/qeth: overhaul L3 IP address dump code (Philipp Rudo) [1847443] - [s390] s390/qeth: wake up all waiters from qeth_irq() (Philipp Rudo) [1847443] - [s390] s390/qeth: only handle IRQs while device is online (Philipp Rudo) [1847443] - [s390] s390: clean up qdio.h (Philipp Rudo) [1847443] - [s390] s390/cio: fix kdoc for tiqdio_thinint_handler (Philipp Rudo) [1847443] - [s390] s390/drivers: fix proc/debugfs file permissions (Philipp Rudo) [1847443] - [s390] s390: convert to DEFINE_SHOW_ATTRIBUTE (Philipp Rudo) [1847443] - [s390] scsi: zfcp: Avoid benign overflow of the Request Queue's free-level (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Replace open-coded list move (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Clean up zfcp_erp_action_ready() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Fix an outdated comment for zfcp_qdio_send() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: Use prandom_u32_max() for backoff (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix wrong data and display format of SFP+ temperature (Philipp Rudo) [1874100] - [s390] scsi: zfcp: trace channel log even for FCP command responses (Philipp Rudo) [1874100] - [s390] scsi: zfcp: proper indentation to reduce confusion in zfcp_erp_required_act (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move maximum age of diagnostic buffers into a per-adapter variable (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh config-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface to read the local B2B-Credit (Philipp Rudo) [1874100] - [s390] scsi: zfcp: implicitly refresh port-data diagnostics when reading sysfs (Philipp Rudo) [1874100] - [s390] scsi: zfcp: introduce sysfs interface for diagnostics of local SFP transceiver (Philipp Rudo) [1874100] - [s390] scsi: zfcp: support retrieval of SFP Data via Exchange Port Data (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized (Philipp Rudo) [1874100] - [s390] scsi: zfcp: fix request object use-after-free in send path causing seqno errors (Philipp Rudo) [1874100] - [s390] scsi: s390: zfcp_fc: use sg helper to iterate over scatterlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: reduce flood of fcrscn1 trace records on multi-element RSCN (Philipp Rudo) [1874100] - [s390] scsi: zfcp: improve kdoc for return of zfcp_status_read_refill() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop old default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop default switch case which might paper over missing case (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence -Wimplicit-fallthrough in zfcp_erp_lun_strategy() (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence remaining kdoc warnings in header files (Philipp Rudo) [1874100] - [s390] scsi: zfcp: silence all W=1 build warnings for existing kdoc (Philipp Rudo) [1874100] - [s390] scsi: zfcp: properly format LUN (and WWPN) for LUN sharing violation kmsg (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_act_result for argument/return of affected functions (Philipp Rudo) [1874100] - [s390] scsi: zfcp: use enum zfcp_erp_steps for struct zfcp_erp_action.step (Philipp Rudo) [1874100] - [s390] scsi: zfcp: the action field of zfcp_erp_action is actually the type (Philipp Rudo) [1874100] - [s390] scsi: zfcp: clarify function argument name for trace tag string (Philipp Rudo) [1874100] - [s390] scsi: zfcp: ERP thread setup kdoc update (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update kernel message for invalid FCP_CMND length, it's not the CDB (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate seq_no from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop duplicate fsf_command from zfcp_fsf_req which is also in QTCB header (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_fsf_req (Philipp Rudo) [1874100] - [s390] scsi: zfcp: group sort internal structure definitions for proximity (Philipp Rudo) [1874100] - [s390] scsi: zfcp: namespace prefix for internal latency data structures (Philipp Rudo) [1874100] - [s390] scsi: zfcp: update width in comment for ZFCP_COMMON_FLAGS mask (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move scsi_eh & non-ERP timeout defines owned by and local to zfcp_fsf.c (Philipp Rudo) [1874100] - [s390] scsi: zfcp: drop unnecessary forward prototype for struct zfcp_reqlist (Philipp Rudo) [1874100] - [s390] scsi: zfcp: move SG table helper from aux to fc and make them static (Philipp Rudo) [1874100] - [s390] scsi: zfcp: remove unnecessary null pointer check before mempool_destroy (Philipp Rudo) [1874100] - [s390] s390/dasd, zfcp: fix gcc 8 stringop-truncation warnings (Philipp Rudo) [1874100] - [s390] s390/stp: unify stp_work_mutex and clock_sync_mutex (Philipp Rudo) [1856342] - [s390] s390/stp: add sysfs file to show scheduled leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: add support for leap seconds (Philipp Rudo) [1856342] - [s390] s390/stp: use u32 instead of unsigned int (Philipp Rudo) [1856342] - [s390] s390/stp: use __packed (Philipp Rudo) [1856342] - [s390] s390/stp: add locking to sysfs functions (Philipp Rudo) [1856342] - [s390] s390/stp: allow group and users to read stp sysfs files (Philipp Rudo) [1856342] - [s390] s390/ipl: add support to control memory clearing for nvme re-IPL (Philipp Rudo) [1851122] - [kernel] tick: broadcast-hrtimer: Fix a race in bc_set_next (Vladis Dronov) [1876567] - [fs] gfs2: Make sure we don't miss any delayed withdraws (Robert S Peterson) [1873565] - [fs] gfs2: add some much needed cleanup for log flushes that fail (Robert S Peterson) [1873565] - [fs] gfs2: fix trans slab error when withdraw occurs inside log_flush (Robert S Peterson) [1873565] - [block] blk-mq: mark flush request as IDLE in flush_end_io() (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid repeated request completion (Gopal Tiwari) [1894347] - [nvme] nvme-tcp: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme-rdma: avoid race between time out and tear down (Gopal Tiwari) [1894347] - [nvme] nvme: introduce nvme_sync_io_queues (Gopal Tiwari) [1894347] - [documentation] kvm: x86: hyper-v: Mention SynDBG CPUID leaves in api.rst (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: remove unused variable (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Don't require THP to run tests (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: evmcs: make evmcs_sanitize_exec_ctrls() work again (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: test behavior of unmapped L2 APIC-access address (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix NULL dereference at kvm_msr_ignored_check() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: replace static const variables with macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: ioapic: break infinite recursion on lazy EOI (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: rename pi_init to avoid conflict with paride (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid modulo operator on 64-bit value to fix i386 build (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: NX largepage recovery for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't clear write flooding count for direct roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support MMIO in the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support write protection for nesting in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support disabling dirty logging for the tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support dirty logging for the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support changed pte notifier in tdp MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add access tracking for tdp_mmu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support invalidate range MMU notifier for TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate struct kvm_mmu_pages for all pages in TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add TDP MMU PF handler (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove disallowed_hugepage_adjust shadow_walk_iterator arg (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Support zapping SPTEs in the TDP MMU (Vitaly Kuznetsov) [1882793] - [virt] kvm: Cache as_id in kvm_memory_slot (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add functions to handle changed TDP SPTEs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Allocate and free TDP MMU roots (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Init / Uninit the TDP MMU (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Introduce tdp_iter (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: extract spte.h and spte.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate updating a PTE from kvm_set_pte_rmapp (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate making SPTEs from set_spte (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: Separate making non-leaf sptes from link_shadow_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Let the guest own CR4.FSGSBASE (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Intercept guest reserved CR4 bits to inject #GP fault (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move call to update_exception_bitmap() into VMX code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Invoke vendor's vcpu_after_set_cpuid() after all common updates (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Intercept LA57 to inject #GP fault when it's reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Initialize prev_ga_tag before use (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: implement on demand allocation of the nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow kvm_x86_ops.set_efer to return an error value (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report negative values from wrmsr emulation to userspace (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: xen_hvm_config: cleanup return values (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: Make struct kernel_param_ops definitions const (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allocate vcpu->arch.cpuid_entries dynamically (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: disconnect kvm_check_cpuid() from vcpu->arch.cpuid_entries (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: only provide PV features if enabled in guest's CPUID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: set wall_clock in kvm_write_wall_clock() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: encapsulate wrmsr(MSR_KVM_SYSTEM_TIME) emulation in helper fn (Vitaly Kuznetsov) [1882793] - [x86] kvm: hide KVM options from menuconfig when KVM is not compiled (Vitaly Kuznetsov) [1882793] - [documentation] kvm: vmx: Forbid userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Ignore userspace MSR filters for x2APIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Fix x2APIC MSR intercept handling on !APICV platforms (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: vmx_uret_msrs_list[] can be static (Vitaly Kuznetsov) [1882793] - [tools] kvm: x86: do not attempt TSC synchronization on guest writes (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: delay MSR permission processing to first nested VM run (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename KVM_REQ_GET_VMCS12_PAGES (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: Add test for user space MSR handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: svm: Prevent MSR passthrough when MSR access is denied (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Prepare MSR bitmaps for userspace tracked MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add infrastructure for MSR filtering (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Allow deflecting unknown MSR accesses to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Return -ENOENT on unimplemented MSRs (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_uret_msr's "index" to "slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_msr_index" to "vmx_uret_msrs_list" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_set_guest_msr" to "vmx_set_guest_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "find_msr_entry" to "vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add vmx_setup_uret_msr() to handle lookup and swap (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move uret MSR lookup into update_transition_efer() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Check guest support for RDTSCP before processing MSR_TSC_AUX (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "__find_msr_index" to "__vmx_find_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "guest_msrs_ready" to "guest_uret_msrs_loaded" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "save_nmsrs" to "nr_active_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vcpu_vmx's "nmsrs" to "nr_uret_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename the "shared_msr_entry" struct to "vmx_uret_msr" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename "vmx_find_msr_index" to "vmx_find_loadstore_msr_slot" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Prepend "MAX_" to MSR array size defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename "shared_msrs" to "user_return_msrs" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move individual kvm_mmu initialization into common helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Read EXIT_QUAL and INTR_INFO only when needed for nested exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use common definition for kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add macro wrapper for defining kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add intr/vectoring info and error code to kvm_exit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper to test for a valid error code given an intr info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read guest RIP from within the kvm_nested_vmexit tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add RIP to the kvm_entry, i.e. VM-Enter, tracepoint (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN on attempt to switch the currently loaded VMCS (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Drop redundant VMCS switch and free_nested() call (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Ensure vmcs01 is the loaded VMCS when freeing nested state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Move free_nested() below vmx_switch_vmcs() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Explicitly check for valid guest state for !unrestricted guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reload vmcs01 if getting vmcs12's pages fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Reset the segment cache when stuffing guest segs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track write/user faults using bools (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Hoist ITLB multi-hit workaround check up a level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename 'hlevel' to 'level' in FNAME(fetch) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Account NX huge page disallowed iff huge page was requested (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Capture requested page level before NX huge page workaround (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move "huge page disallowed" calculation into mapping helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Refactor the zap loop for recovering NX lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Commit zap of remaining invalid pages when recovering lpages (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename ops.h to vmx_ops.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extract posted interrupt support to separate files (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Bail early from final #PF handling on spurious faults (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return unique RET_PF_* values if the fault was fixed (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Invert RET_PF_* check when falling through to emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Return -EIO if page fault returns RET_PF_INVALID (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Recursively zap nested TDP SPs when zapping last/only parent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move flush logic from mmu_page_zap_pte() to FNAME(invlpg) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyper-v: disallow configuring SynIC timers with no SynIC (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Stash 'kvm' in a local variable in kvm_mmu_free_roots() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add a helper and macros to reduce boilerplate for sec exec ctls (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename RDTSCP secondary exec control name to insert "ENABLE" (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use VMX_FEATURE_* flags to define VMCS control bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Unconditionally clear CPUID.INVPCID if !CPUID.PCID (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Rename vmx_*_supported() helpers to cpu_has_vmx_*() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use "illegal GPA" helper for PT/RTIT output base check (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move illegal GPA helper out of the MMU code (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Replace MSR_IA32_RTIT_OUTPUT_BASE_MASK with helper function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Unexport cpuid_query_maxphyaddr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use precomputed MAXPHYADDR for RTIT base MSR check (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Do not perform emulation for INVD intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: sev: shorten comments around sev_clflush_pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Mark SEV launch secret pages as dirty (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Add VM-Enter failed tracepoints for super early checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: CR3 MBZ bits are only 63:52 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: emulating RDPID failure shall return #UD rather than #GP (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Morph notification vector IRQ on nested VM-Enter to pending PI (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add tracepoint for cr_interception (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Analyze is_guest_mode() in svm_vcpu_run() (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Invoke NMI handler via indirect call instead of INTn (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Move IRQ invocation to assembly subroutine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add kvm_x86_ops hook to short circuit emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: KVM needs to unset "unrestricted guest" VM-execution control in vmcs02 if vmcs12 doesn't set it (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Enable INVPCID feature on AMD (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move handling of INVPCID types to x86 (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename and move the function vmx_handle_memory_failure to x86.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Remove set_cr_intercept, clr_cr_intercept and is_cr_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add new intercept word in vmcb_control_area (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify 64 bit intercept field to two 32 bit vectors (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Modify intercept_exceptions to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_dr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Change intercept_cr to generic intercepts (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Introduce vmcb_(set_intercept/clr_intercept/_is_intercept) (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Remove unused field (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor exit labels in svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: use __GFP_ZERO instead of clear_page (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: refactor msr permission bitmap allocation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: rename nested vmcb to vmcb12 (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: rename a variable in the svm_create_vcpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Reduce world switch latency caused by timer_advance_ns (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Narrow down the kick target vCPU (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Guarantee the timer is in tsc-deadline mode when setting (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Return 0 when getting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Fix updating DFR missing apic map recalculation (Vitaly Kuznetsov) [1882793] - [virt] kvm/eventfd: move wildcard calculation outside loop (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Simplify the initialization of nested_vmx_msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix VMX controls MSRs setup when nested VMX enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Avoid freeing uninitialized pointers in svm_set_nested_state() (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove aliases with X64 in their name (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Split hyperv-tlfs.h into arch dependent and independent files (Vitaly Kuznetsov) [1882793] - [x86] hyperv: Remove HV_PROCESSOR_POWER_STATE #defines (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add GHCB definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: nested: Don't allocate VMCB structures on stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: mmu: page_track: Fix RCU list API usage (Vitaly Kuznetsov) [1882793] - [kernel] rculist: Introduce list/hlist_for_each_entry_srcu() macros (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: update PFEC_MASK/PFEC_MATCH together with PF intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add a dedicated INVD intercept routine (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix MSR_IA32_TSC read for nested migration (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Fix assert failure in single-step test (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: vmx: Make smaller physical guest address space support user-configurable (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: Check the allocation of pv cpu mask" (Vitaly Kuznetsov) [1882793] - [x86] kvm: emulator: more strict rsm checks (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: more strict SMM checks when returning to nested guest (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: setup nested msr permission bitmap on nested state load (Vitaly Kuznetsov) [1882793] - [x86] svm: nsvm: correctly restore GIF on vmexit from nesting after migration (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Don't freeze guest when event delivery causes an APIC-access exit (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: avoid emulation with stale next_rip (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: always allow writing '0' to MSR_KVM_ASYNC_PF_EN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Periodically schedule when unregistering regions on destroy (Vitaly Kuznetsov) [1882793] - [x86] kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL control (Vitaly Kuznetsov) [1882793] - [virt] kvm: fix memory leak in kvm_io_bus_unregister_dev() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Check the allocation of pv cpu mask (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Update VMCS02 when L2 PAE PDPTE updates detected (Vitaly Kuznetsov) [1882793] - [documentation] kvm: documentation: Minor fixups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.PKE does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Toggling CR4.SMAP does not load PDPTEs in PAE mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: fix access code passed to gva_to_gpa (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: Use a shorter encoding to clear RAX (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Synic default SCONTROL MSR needs to be enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Don't attempt to load PDPTRs when 64-bit mode is enabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: detect assigned device via irqbypass manager (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix sev_pin_memory() error handling (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Set the TDCR settable bits (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Fix disable pause loop exit/pause filtering capability on SVM (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Prevent setting the tscdeadline timer if the lapic is hw disabled (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Specify max TDP level via kvm_configure_mmu() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename max_page_level to max_huge_page_level (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Dynamically calculate TDP level from max level and MAXPHYADDR (Vitaly Kuznetsov) [1882793] - [x86] kvm: vxm: Remove temporary WARN on expected vs. actual EPTP level mismatch (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Pull the PGD's level from the MMU instead of recalculating it (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Make vmx_load_mmu_pgd() static (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add separate helper for shadow NPT root page role calc (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Drop a duplicate declaration of construct_eptp() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Using macros instead of magic values (Vitaly Kuznetsov) [1882793] - [tools] kvm: nvmx: check for invalid hdr.vmx.flags (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: check for required but missing VMCS12 in KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1882793] - [tools] selftests: kvm: do not set guest mode flag (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt/kvm/api: eliminate duplicated word (Vitaly Kuznetsov) [1882793] - [documentation] docs: kvm: Replace HTTP links with HTTPS ones (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: remove nonsensical EXITINFO1 adjustment on nested NPF (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add a capability for GUEST_MAXPHYADDR < HOST_MAXPHYADDR support (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: optimize #PF injection when MAXPHYADDR does not match (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add guest physical address check in EPT violation and misconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: introduce vmx_need_pf_intercept (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: update exception bitmap on CPUID changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: rename update_bp_intercept to update_exception_bitmap (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Add guest physical address check in translate_gpa() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: mmu: Move translate_gpa() to mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add helper functions for illegal GPA checking and page fault injection (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: move MSR_IA32_PERF_CAPABILITIES emulation to common x86 code (Vitaly Kuznetsov) [1882793] - [virt] kvm: Move x86's MMU memory cache helpers to common KVM code (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Move x86's version of struct kvm_mmu_memory_cache to common code (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Prepend "kvm_" to memory cache helpers that will be global (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Skip filling the gfn cache for guaranteed direct MMU topups (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Zero allocate shadow pages (outside of mmu_lock) (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make __GFP_ZERO a property of the memory cache (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Separate the memory caches for shadow pages and gfn arrays (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Clean up the gorilla math in mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Topup memory caches after walking GVA->GPA (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move fast_page_fault() call above mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Try to avoid crashing KVM if a MMU memory cache is empty (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Remove superfluous gotos from mmu_topup_memory_caches() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Use consistent "mc" name for kvm_mmu_memory_cache locals (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Consolidate "page" variant of memory cache helpers (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Track the associated kmem_cache in the MMU caches (Vitaly Kuznetsov) [1882793] - [x86] kvm/x86: pmu: Fix #GP condition check for RDPMC emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_x86_ops.vcpu_after_set_cpuid() into kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename cpuid_update() callback to vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Rename kvm_update_cpuid() to kvm_vcpu_after_set_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Extract kvm_update_cpuid_runtime() from kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Introduce kvm_check_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move kvm_apic_set_version() to kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: lapic: Use guest_cpuid_has() in kvm_apic_set_version() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Go on updating other CPUID leaves when leaf 1 is absent (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Reset vcpu->arch.cpuid_nent to 0 if SET_CPUID* fails (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: limit the maximum number of vPMU fixed counters to 3 (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that MBZ bits in CR3 and CR4 are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Make CR4.VMXE reserved for the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Create mask for guest CR4 reserved bits in kvm_update_cpuid() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Read PDPTEs on CR0.CD and CR0.NW changes (Vitaly Kuznetsov) [1882793] - [x86] kvm: Add "nopvspin" parameter to disable PV spinlocks (Vitaly Kuznetsov) [1882793] - [x86] kvm: Change print code to use pr_*() format (Vitaly Kuznetsov) [1882793] - [x86] revert "kvm: x86: Fix setup the virt_spin_lock_key before static key get initialized" (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Rename page_header() to to_shadow_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add sptep_to_sp() helper to wrap shadow page lookup (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make kvm_mmu_page definition and accessor internal-only (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Add MMU-internal header (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move kvm_mmu_available_pages() into mmu.c (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Move mmu_audit.c and mmutrace.h into the mmu/ sub-directory (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Exit to userspace on make_mmu_pages_available() error (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when shrinking the slab (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Batch zap MMU pages when recycling oldest pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Don't put invalid SPs back on the list of active pages (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Optimize MMU page cache lookup for fully direct MMUs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid multiple hash lookups in kvm_get_mmu_page() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Use VMCALL and VMMCALL mnemonics in kvm_para.h (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename svm_nested_virtualize_tpr() to nested_svm_virtualize_tpr() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add svm_ prefix to set/clr/is_intercept() (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Add vmcb_ prefix to mark_*() functions (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Rename struct nested_state to svm_nested_state (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Wrap VM-Fail valid path in generic VM-Fail helper (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Set last_vmentry_cpu in vcpu_enter_guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move last_cpu into kvm_vcpu_arch as last_vmentry_cpu (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Add "last CPU" to some KVM_EXIT information (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add last_cpu to struct vcpu_vmx (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Always set svm->last_cpu on VMRUN (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: Prefer vcpu->cpu to raw_smp_processor_id() (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: report sev_pin_memory errors with PTR_ERR (Vitaly Kuznetsov) [1882793] - [x86] kvm: svm: fix svn_pin_memory()'s use of get_user_pages_fast() (Vitaly Kuznetsov) [1882793] - [x86] kvm: nsvm: Check that DR6[63:32] and DR7[64:32] are not set on vmrun of nested guests (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move the check for upper 32 reserved bits of DR6 to separate function (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Do the same ignore_msrs check for feature msrs (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Move ignore_msrs handling upper the stack (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Make .write_log_dirty a nested operation (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: WARN if PML emulation helper is invoked outside of nested guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Drop kvm_arch_write_log_dirty() wrapper (Vitaly Kuznetsov) [1882793] - [s390] kvm: async_pf: change kvm_setup_async_pf()/kvm_arch_setup_async_pf() return type to bool (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: drop KVM_PV_REASON_PAGE_READY case from kvm_handle_page_fault() (Vitaly Kuznetsov) [1882793] - [documentation] documentation: virt: kvm/api: drop doubled words (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Use KVM_POSSIBLE_CR*_GUEST_BITS to initialize guest/host masks (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Mark CR4.TSD as being possibly owned by the guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit mode (Vitaly Kuznetsov) [1882793] - [virt] kvm: use more precise cast and do not drop __user (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: bit 8 of non-leaf PDPEs is not reserved (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix async pf caused null-ptr-deref (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Remove vcpu_vmx's defunct copy of host_pkru (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: allow TSC to differ by NTP correction bounds without TSC scaling (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Fix MSR range of APIC registers in X2APIC mode (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Stop context switching MSR_IA32_UMWAIT_CONTROL (Vitaly Kuznetsov) [1882793] - [x86] cpu: Move prototype for get_umwait_control_msr() to a global location (Vitaly Kuznetsov) [1882793] - [x86] kvm: nvmx: Plumb L2 GPA through to PML emulation (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/mmu: Avoid mixing gpa_t with gfn_t in walk_addr_generic() (Vitaly Kuznetsov) [1882793] - [x86] process/64: Make save_fsgs_for_kvm() ready for FSGSBASE (Vitaly Kuznetsov) [1882793] - [kernel] kvm: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Add helpers to identify interrupt type from intr_info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Switch KVM guest to using interrupts for page ready APF delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: Remove defunct KVM_DEBUG_FS Kconfig (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Always treat MSR_IA32_PERF_CAPABILITIES as a valid PMU MSR (Vitaly Kuznetsov) [1882793] - [x86] kvm_hv_set_msr(): use __put_user() instead of 32bit __clear_user() (Vitaly Kuznetsov) [1882793] - [tools] kvm: selftests: update hyperv_cpuid with SynDBG tests (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger via hypercalls (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: enable hypercalls regardless of hypercall page (Vitaly Kuznetsov) [1882793] - [x86] kvm/hyper-v: Add support for synthetic debugger interface (Vitaly Kuznetsov) [1882793] - [x86] hyper-v: Add synthetic debugger definitions (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86/pmu: Support full width counting (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: announce KVM_FEATURE_ASYNC_PF_INT (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: acknowledgment mechanism for async pf page ready notifications (Vitaly Kuznetsov) [1882793] - [documentation] kvm: x86: interrupt based APF 'page ready' event delivery (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: extend struct kvm_vcpu_pv_apf_data with token info (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: hyperv: Remove duplicate definitions of Reference TSC Page (Vitaly Kuznetsov) [1882793] - [x86] kvm: Restrict ASYNC_PF to user space (Vitaly Kuznetsov) [1882793] - [x86] kvm: Sanitize kvm_async_pf_task_wait() (Vitaly Kuznetsov) [1882793] - [x86] kvm: Handle async page faults directly through do_page_fault() (Vitaly Kuznetsov) [1882793] - [virt] kvm: add halt-polling cpu usage stats (Vitaly Kuznetsov) [1882793] - [powerpc] kvm: Replace vcpu->swait with rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce rcuwait_active() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Introduce prepare_to and finish_rcuwait (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Add @state argument to rcuwait_wait_event() (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Let rcuwait_wake_up() return whether or not a task was awoken (Vitaly Kuznetsov) [1882793] - [kernel] rcuwait: Fix stale wake call name in comment (Vitaly Kuznetsov) [1882793] - [s390] kvm: s390: Use kvm_vcpu_wake_up in kvm_s390_vcpu_wakeup (Vitaly Kuznetsov) [1882793] - [documentation] docs/virt/kvm: Document configuring and running nested guests (Vitaly Kuznetsov) [1882793] - [tools] docs: fix broken references for ReST files that moved around (Vitaly Kuznetsov) [1882793] - [x86] kvm: vmx: Extend VMXs #AC interceptor to handle split lock #AC in guest (Vitaly Kuznetsov) [1882793] - [x86] kvm: x86: Emulate split-lock access as a write in emulator (Vitaly Kuznetsov) [1882793] - [net] core: check length before updating Ethertype in skb_mpls_{push,pop} (Guillaume Nault) [1893886] - [net] pktgen: fix error message with wrong function name (Guillaume Nault) [1893886] - [net] handle the return value of pskb_carve_frag_list() correctly (Guillaume Nault) [1893886] - [net] Fix potential wrong skb->protocol in skb_vlan_untag() (Guillaume Nault) [1893886] - [net] make symbol 'flush_works' static (Guillaume Nault) [1893886] - [net] compat: Add missing sock updates for SCM_RIGHTS (Guillaume Nault) [1893886] - [net] mpls: drop skb's dst in mpls_forward() (Guillaume Nault) [1893886] - [include] net: Added pointer check for dst->ops->neigh_lookup in dst_neigh_lookup_skb (Guillaume Nault) [1893886] - [net] fix skb_panic to output real address (Guillaume Nault) [1893886] - [net] fix a potential recursive NETDEV_FEAT_CHANGE (Guillaume Nault) [1893886] - [net] neigh: send protocol value in neighbor create notification (Guillaume Nault) [1893886] - [net] revert default NAPI poll timeout to 2 jiffies (Guillaume Nault) [1893886] - [net] compat_ioctl: handle SIOCOUTQNSD (Guillaume Nault) [1893886] - [net] neigh: use long type to store jiffies delta (Guillaume Nault) [1893886] - [documentation] dev-tools: kselftest.rst: Update examples and paths (Hangbin Liu) [1876011] - [tools] selftests/run_kselftest.sh: Make each test individually selectable (Hangbin Liu) [1876011] - [tools] selftests: Extract run_kselftest.sh and generate stand-alone test list (Hangbin Liu) [1876011] - [tools] selftests/harness: Flush stdout before forking (Hangbin Liu) [1876011] - [tools] selftests: forwarding: Add missing 'rp_filter' configuration (Hangbin Liu) [1892298] - [tools] selftests/net: relax cpu affinity requirement in msg_zerocopy test (Hangbin Liu) [1892298] - [tools] selftests: ethtool: Fix test when only two speeds are supported (Hangbin Liu) [1892298] - [tools] selftests/net: tcp_mmap: fix clang warning for target arch PowerPC (Hangbin Liu) [1892298] - [tools] selftests/net: psock_fanout: fix clang issues for target arch PowerPC (Hangbin Liu) [1892298] - [netdrv] netxen: mark netxen_nic as deprecated in RHEL8 (Ivan Vecera) [1878188] - [net] linkmode: introduce linkmode_intersects() (Ivan Vecera) [1893193] - [net] ipv6: avoid lockdep issue in fib6_del() (Hangbin Liu) [1892196] - [net] ipv6: fix memory leaks on IPV6_ADDRFORM path (Hangbin Liu) [1892196] - [net] ila: remove unused inline function ila_addr_is_ila (Hangbin Liu) [1892196] - [net] ila: Fix uninitialised return value in ila_xlat_nl_cmd_flush (Hangbin Liu) [1892196] - [netdrv] i40e: always propagate error value in i40e_set_vsi_promisc() (Stefan Assmann) [1835705] - [netdrv] i40e: fix return of uninitialized aq_ret in i40e_set_vsi_promisc (Stefan Assmann) [1835705] - [netdrv] i40e: Remove scheduling while atomic possibility (Stefan Assmann) [1835705] - [pci] hv: Fix hibernation in case interrupts are not re-created (Mohammed Gamal) [1846838] - [powerpc] kvm: ppc: book3s hv: xics: Replace the 'destroy' method by a 'release' method (Greg Kurz) [1857527] - [security] selinux: complete the inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: prepare for inlining of hashtab functions (Ondrej Mosnacek) [1878149] - [security] selinux: specialize symtab insert and search functions (Ondrej Mosnacek) [1878149] - [security] selinux: fixed a checkpatch warning with the sizeof macro (Ondrej Mosnacek) [1878149] - [security] selinux: log error messages on required process class / permissions (Ondrej Mosnacek) [1878149] - [security] selinux: fix undefined return of cond_evaluate_expr (Ondrej Mosnacek) [1878149] - [security] selinux: fix a double free in cond_read_node()/cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: fix double free (Ondrej Mosnacek) [1878149] - [security] selinux: netlabel: Remove unused inline function (Ondrej Mosnacek) [1878149] - [security] selinux: do not allocate hashtabs dynamically (Ondrej Mosnacek) [1878149] - [security] selinux: fix return value on error in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: simplify range_write() (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in policydb_read() (Ondrej Mosnacek) [1878149] - [security] selinux: don't produce incorrect filename_trans_count (Ondrej Mosnacek) [1878149] - [security] selinux: implement new format of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: move context hashing under sidtab (Ondrej Mosnacek) [1878149] - [security] selinux: hash context structure directly (Ondrej Mosnacek) [1878149] - [security] selinux: store role transitions in a hash table (Ondrej Mosnacek) [1878149] - [security] selinux: drop unnecessary smp_load_acquire() call (Ondrej Mosnacek) [1878149] - [security] selinux: fix warning Comparison to bool (Ondrej Mosnacek) [1878149] - [security] selinux: fix error return code in cond_read_list() (Ondrej Mosnacek) [1878149] - [security] selinux: free str on error in str_read() (Ondrej Mosnacek) [1878149] - [security] selinux: clean up indentation issue with assignment statement (Ondrej Mosnacek) [1878149] - [security] selinux: avtab_init() and cond_policydb_init() return void (Ondrej Mosnacek) [1878149] - [security] selinux: clean up error path in policydb_init() (Ondrej Mosnacek) [1878149] - [security] selinux: remove unused initial SIDs and improve handling (Ondrej Mosnacek) [1878149] - [security] selinux: reduce the use of hard-coded hash sizes (Ondrej Mosnacek) [1878149] - [security] selinux: Add xfs quota command types (Ondrej Mosnacek) [1878149] - [security] selinux: optimize storage of filename transitions (Ondrej Mosnacek) [1878149] - [security] selinux: factor out loop body from filename_trans_read() (Ondrej Mosnacek) [1878149] - [security] selinux: generalize evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_expr to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_av_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: convert cond_list to array (Ondrej Mosnacek) [1878149] - [security] selinux: sel_avc_get_stat_idx should increase position index (Ondrej Mosnacek) [1878149] - [security] selinux: simplify evaluate_cond_node() (Ondrej Mosnacek) [1878149] - [security] selinux: move status variables out of selinux_ss (Ondrej Mosnacek) [1878149] - [scripts] selinux: use kernel linux/socket.h for genheaders and mdp (Ondrej Mosnacek) [1878149] - [scripts] genheaders: -s had been there since v6; -*s - since v7 (Ondrej Mosnacek) [1878149] - [scsi] scsi: megaraid_sas: Added support for shared host tagset for cpuhotplug (Ming Lei) [1876863] - [scsi] scsi: scsi_debug: Support host tagset (Ming Lei) [1876863] - [scsi] scsi: core: Show nr_hw_queues in sysfs (Ming Lei) [1876863] - [scsi] scsi: Add host and host template flag 'host_tagset' (Ming Lei) [1876863] - [block] null_blk: Support shared tag bitmap (Ming Lei) [1876863] - [block] blk-mq, elevator: Count requests per hctx to improve performance (Ming Lei) [1876863] - [block] blk-mq: Record active_queues_shared_sbitmap per tag_set for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Record nr_active_requests per queue for when using shared sbitmap (Ming Lei) [1876863] - [block] blk-mq: Relocate hctx_may_queue() (Ming Lei) [1876863] - [block] blk-mq: Facilitate a shared sbitmap per tagset (Ming Lei) [1876863] - [block] blk-mq: Use pointers for blk_mq_tags bitmap tags (Ming Lei) [1876863] - [block] blk-mq: Pass flags for tag init/free (Ming Lei) [1876863] - [block] blk-mq: Free tags in blk_mq_init_tags() upon error (Ming Lei) [1876863] - [block] blk-mq: Rename blk_mq_update_tag_set_depth() (Ming Lei) [1876863] - [block] blk-mq: Rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED (Ming Lei) [1876863] - [block] block: fix double account of flush request's driver tag (Ming Lei) [1876863] - [block] blk-mq: centralise related handling into blk_mq_get_driver_tag (Ming Lei) [1876863] - [block] blk-mq: streamline handling of q->mq_ops->queue_rq result (Ming Lei) [1876863] - [block] blk-mq: remove pointless call of list_entry_rq() in hctx_show_busy_rq() (Ming Lei) [1876863] - [block] blk-mq: move blk_mq_get_driver_tag into blk-mq.c (Ming Lei) [1876863] - [block] blk-mq: support batching dispatch in case of io (Ming Lei) [1876863] - [block] blk-mq: pass obtained budget count to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove dead check from blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: move getting driver tag and budget into one helper (Ming Lei) [1876863] - [block] blk-mq: pass hctx to blk_mq_dispatch_rq_list (Ming Lei) [1876863] - [block] blk-mq: remove the BLK_MQ_REQ_INTERNAL flag (Ming Lei) [1876863] - [net] netns: Constify exported functions (Guillaume Nault) [1806134] - [net] netns: protect netns ID lookups with RCU (Guillaume Nault) [1806134] - [net] netns: Remove __peernet2id_alloc() (Guillaume Nault) [1806134] - [net] netns: read NETNSA_NSID as s32 attribute in rtnl_net_getid() (Guillaume Nault) [1806134] - [tools] selftests: txtimestamp: add flag for timestamp validation tolerance. (Hangbin Liu) [1861175] - [tools] selftests/net: so_txtime: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftests/net: rxtimestamp: fix clang issues for target arch PowerPC (Hangbin Liu) [1861175] - [tools] selftest: txtimestamp: fix net ns entry logic (Hangbin Liu) [1861175] - [tools] selftests/net: update initializer syntax to use c99 designators (Hangbin Liu) [1861175] - [tools] selftests/net: add ipv6 test coverage in rxtimestamp test (Hangbin Liu) [1861175] - [tools] selftests/net: plug rxtimestamp test into kselftest framework (Hangbin Liu) [1861175] - [tools] selftests/net: in rxtimestamp getopt_long needs terminating null entry (Hangbin Liu) [1861175] - [tools] selftests/net: in timestamping, strncpy needs to preserve null byte (Hangbin Liu) [1861175] - [tools] selftests: move timestamping selftests to net folder (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: print statistics for timestamp events. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add support for epoll(). (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: add new command-line flags. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow printing latencies in nsec. (Hangbin Liu) [1861175] - [tools] selftests: txtimestamp: allow individual txtimestamp tests. (Hangbin Liu) [1861175] - [tools] selftests: timestamping: Fix SIOCGSTAMP undeclared build failure (Hangbin Liu) [1861175] - [tools] selftests: fix timestamping Makefile (Hangbin Liu) [1861175] - [tools] selftests: add missing include unistd (Hangbin Liu) [1861175] - [tools] selftests/txtimestamp: Fix an equals vs assign bug (Hangbin Liu) [1861175] - [tools] selftests: add txtimestamp kselftest (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with ipv6 dgram + raw and pf_packet (Hangbin Liu) [1861175] - [tools] selftests: expand txtimestamp with cmsg support (Hangbin Liu) [1861175] - [hwmon] hwmon: (k10temp) Add support for Zen3 CPUs (Wei Huang) [1846851] - [powerpc] vfs: add faccessat2 syscall (Miklos Szeredi) [1333764] - [fs] vfs: split out access_override_creds() (Miklos Szeredi) [1333764] - [md] Revert "dm writecache: set "Tech Preview" taint using mark_tech_preview()" (Mike Snitzer) [1859413] - [s390] mm: fix huge pte soft dirty copying (Cornelia Huck) [1700709] - [fs] proc/mounts: add cursor (Miklos Szeredi) [1759472]- [char] random: Add a poll handler to extrng_fops (Vladis Dronov) [1884857] - [platform] platform/mellanox: mlxbf-pmc: Add Mellanox BlueField PMC driver (Alaa Hleihel) [1655729] - [mm] mm/page_idle.c: skip offline pages (Chris von Recklinghausen) [1867490] - [powerpc] powerpc/pseries: Detect secure and trusted boot state of the system (Diego Domingos) [1853411] - [net] bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok() (Yauheni Kaliuta) [1874003] - [kernel] kallsyms: Refactor kallsyms_show_value() to take cred (Yauheni Kaliuta) [1874003] - [kernel] kprobes: Show blacklist addresses as same as kallsyms does (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Report PAC and BTI instructions as skippable (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Don't assume unrecognized HINTs are skippable (Yauheni Kaliuta) [1874003] - [lib] usercopy: Avoid soft lockups in test_check_nonzero_user() (Yauheni Kaliuta) [1874003] - [security] selinux: map CAP_PERFMON and CAP_BPF to CAP_SYS_ADMIN (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: fix netdevsim trap_flow_action_cookie read (Yauheni Kaliuta) [1874003] - [net] net/bpfilter: Initialize pos in __bpfilter_process_sockopt (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extend map-in-map selftest to detect memory leaks (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map leak in HASH_OF_MAPS map (Yauheni Kaliuta) [1874003] - [net] bpf: Fix NULL pointer dereference in __btf_resolve_helper_id() (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix cgroup sockopt verifier test (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix libbpf hashmap on (I)LP32 architectures (Yauheni Kaliuta) [1874003] - [tools] selftests: bpf: Fix detach from sockmap tests (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid incorrect bpf_sk_reuseport_detach call (Yauheni Kaliuta) [1874003] - [net] bpf: net: Avoid copying sk_user_data of reuseport_array during sk_clone (Yauheni Kaliuta) [1874003] - [tools] bpf: Add tests for PTR_TO_BTF_ID vs. null comparison (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an incorrect branch elimination by verifier (Yauheni Kaliuta) [1874003] - [include] bpf: sockmap: Require attach_bpf_fd when detaching a program (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: Check value of unused args to BPF_PROG_ATTACH (Yauheni Kaliuta) [1874003] - [net] bpf: Enforce BPF ringbuf size to be the power of 2 (Yauheni Kaliuta) [1874003] - [tools] bpf, sockmap: Add ingres skb tests that utilize merge skbs (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU dereferenced psock may be used outside RCU block (Yauheni Kaliuta) [1874003] - [net] bpf, sockmap: RCU splat with redirect and strparser error or TLS (Yauheni Kaliuta) [1874003] - [tools] bpf: tcp: bpf_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT (Yauheni Kaliuta) [1874003] - [net] bpf: Do not allow btf_ctx_access with __int128 types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix formatting in documentation for BPF helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Restore behaviour of CAP_SYS_ADMIN allowing the loading of networking bpf programs (Yauheni Kaliuta) [1874003] - [net] bpf: Set the number of exception entries properly for subprograms (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix CO-RE relocs against .text section (Yauheni Kaliuta) [1874003] - [tools] libbpf: Forward-declare bpf_stats_type for systems with outdated UAPI headers (Yauheni Kaliuta) [1874003] - [documentation] bpf: Document optval > PAGE_SIZE behavior for sockopt hooks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Make sure optvals > PAGE_SIZE are bypassed (Yauheni Kaliuta) [1874003] - [net] bpf: Don't return EINVAL from {get, set}sockopt when optlen > PAGE_SIZE (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Add ringbuf map type to map command docs (Yauheni Kaliuta) [1874003] - [samples] bpf, xdp, samples: Fix null pointer dereference in *_user code (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add ringbuf map to a list of known map types (Yauheni Kaliuta) [1874003] - [tools] bpf: Fix definition of bpf_ringbuf_output() helper in UAPI comments (Yauheni Kaliuta) [1874003] - [net] bpf: Undo internal BPF_PROBE_MEM in BPF insns dump (Yauheni Kaliuta) [1874003] - [tools] libbpf: Support pre-initializing .bss global variables (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Fix skeleton codegen (Yauheni Kaliuta) [1874003] - [net] bpf: Fix memlock accounting for sock_hash (Yauheni Kaliuta) [1874003] - [net] bpf: tcp: Recv() should return 0 when the peer socket is closed (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Exit on error in function codegen (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Fix memory leak in codegen error cases (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cgroup_skb/egress test for load_bytes_relative (Yauheni Kaliuta) [1874003] - [net] net/filter: Permit reading NET in load_bytes_relative when MAC not set (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Do not force gcc as CC (Yauheni Kaliuta) [1874003] - [tools] libbpf: Define __WORDSIZE if not available (Yauheni Kaliuta) [1874003] - [net] bpf: Devmap adjust uapi for attach bpf program (Yauheni Kaliuta) [1874003] - [net] bpf: Reset data_meta before running programs attached to devmap entry (Yauheni Kaliuta) [1874003] - [scripts] scripts: Require pahole v1.16 when generating BTF (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Synchronize delete from bucket list on map free (Yauheni Kaliuta) [1874003] - [net] bpf, sockhash: Fix memory leak when unlinking sockets in sock_hash_free (Yauheni Kaliuta) [1874003] - [net] bpf/sockmap: Fix kernel panic at __tcp_bpf_recvmsg (Yauheni Kaliuta) [1874003] - [kernel] bpf: rework the compat kernel probe handling (Yauheni Kaliuta) [1874003] - [kernel] bpf: handle the compat string in bpf_trace_copy_string better (Yauheni Kaliuta) [1874003] - [kernel] bpf: factor out a bpf_trace_copy_string helper (Yauheni Kaliuta) [1874003] - [net] mmap locking API: add mmap_read_trylock_non_owner() (Yauheni Kaliuta) [1874003] - [net] bpf: sockmap: use mmap locking API (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix ringbuf selftest sample counting undeterminism (Yauheni Kaliuta) [1874003] - [net] bpf: Fix an error code in check_btf_func() (Yauheni Kaliuta) [1874003] - [net] bpf: make bpf_check_uarg_tail_zero() use check_zeroed_user() (Yauheni Kaliuta) [1874003] - [lib] lib: introduce copy_struct_from_user() helper (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add a default $(CXX) value (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: Don't use $(COMPILE.c) (Yauheni Kaliuta) [1874003] - [s390] s390/bpf: Use bcr 0, 0 as tail call nop filler (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix verifier test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix sample_cnt shared between two threads (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Adapt cls_redirect to call csum_level helper (Yauheni Kaliuta) [1874003] - [net] bpf: Add csum_level helper for fixing up csum levels (Yauheni Kaliuta) [1874003] - [net] bpf: Fix up bpf_skb_adjust_room helper's skb csum setting (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add _GNU_SOURCE for reallocarray to ringbuf.c (Yauheni Kaliuta) [1874003] - [net] bpf: Use tracing helpers for lsm programs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add test for SO_BINDTODEVICE opt of bpf_setsockopt (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add test for ktls with skb bpf ingress policy (Yauheni Kaliuta) [1874003] - [net] bpf: Fix running sk_skb program types with ktls (Yauheni Kaliuta) [1874003] - [net] bpf: Refactor sockmap redirect code so its easy to reuse (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add SEC name for xdp programs attached to device map (Yauheni Kaliuta) [1874003] - [net] bpf: Add support to attach bpf program to a devmap entry (Yauheni Kaliuta) [1874003] - [kernel] bpf: Use strncpy_from_unsafe_strict() in bpf_seq_printf() helper (Yauheni Kaliuta) [1874003] - [net] devmap: Formalize map value as a named struct (Yauheni Kaliuta) [1874003] - [net] bpf: Add rx_queue_mapping to bpf_sock (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add tests for write-only stacks/queues (Yauheni Kaliuta) [1874003] - [documentation] docs/bpf: Add BPF ring buffer design notes (Yauheni Kaliuta) [1874003] - [tools] bpf: Add BPF ringbuf and perf buffer benchmarks (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add BPF ringbuf selftests (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BPF ring buffer support (Yauheni Kaliuta) [1874003] - [tools] bpf: Implement BPF ring buffer and verifier support for it (Yauheni Kaliuta) [1874003] - [net] bpf: Fix map permissions check (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup comments in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Cleanup some file descriptors in test_maps (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix a typo in test_maps (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix perf_buffer__free() API for sparse allocs (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Test probe_* helpers from SCHED_CLS (Yauheni Kaliuta) [1874003] - [tools] bpf, selftests: Add sk_msg helpers load and attach test (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add get socket storage helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Extend bpf_base_func_proto helpers with probe_* and *current_task* (Yauheni Kaliuta) [1874003] - [net] bpf, sk_msg: Add some generic helpers that may be useful from sk_msg (Yauheni Kaliuta) [1874003] - [net] bpf: Fix spelling in comment explaining ARG1 in ___bpf_prog_run (Yauheni Kaliuta) [1874003] - [tools] libbpf: Install headers as part of make install (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add API to consume the perf ring buffer content (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Print correct error message when failing to load BTF (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Make capability check account for new BPF caps (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Clean subcommand help messages (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_LIRC required for test_lirc_mode2.sh (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: CONFIG_IPV6_SEG6_BPF required for test_seg6_loop.o (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add general instructions for test execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add printk to test_sk_lookup_kern to encode null ptr check (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer map value branch (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, verifier case for non null pointer check branch taken (Yauheni Kaliuta) [1874003] - [net] bpf: Verifier track null pointer branch_taken with JNE and JEQ (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1874003] - [tools] bpf, testing: Add get{peer, sock}name selftests to test_progs (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Enable get{peer, sock}name attach types (Yauheni Kaliuta) [1874003] - [net] bpf: Add get{peer, sock}name attach types for sock_addr (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe, tail call kern progs map definition (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Add tracex7 test file to .gitignore (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor tail call user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor kprobe tracing user progs with libbpf (Yauheni Kaliuta) [1874003] - [samples] samples, bpf: Refactor pointer error check with libbpf (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add ktls tests to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add blacklist to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, add whitelist option to test_sockmap (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, provide verbose option for selftests execution (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, break down test_sockmap into subtests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, improve test_sockmap total bytes counter (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, print error in test_sockmap error cases (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, sockmap test prog run without setting cgroup (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, remove prints from sockmap tests (Yauheni Kaliuta) [1874003] - [tools] bpf: Selftests, move sockmap bpf prog header into progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Remove test_align leftovers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move test_align under test_progs (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Fix signedness warnings (Yauheni Kaliuta) [1874003] - [tools] libbpf, hashmap: Remove unused #include (Yauheni Kaliuta) [1874003] - [net] bpf: Fix check_return_code to only allowin trace_iter progs (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use CAP_BPF and CAP_PERFMON in tests (Yauheni Kaliuta) [1874003] - [net] bpf: Implement CAP_BPF (Yauheni Kaliuta) [1874003] - [security] bpf, capability: Introduce CAP_BPF (Yauheni Kaliuta) [1874003] - [security] capabilities: Introduce CAP_PERFMON to kernel and user space (Yauheni Kaliuta) [1874003] - [tools] bpf, bpftool: Allow probing for CONFIG_HZ from kernel config (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test for sk helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add connect_fd_to_fd, connect_wait net helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Introduce bpf_sk_{, ancestor_}cgroup_id helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Allow skb_ancestor_cgroup_id helper in cgroup skb (Yauheni Kaliuta) [1874003] - [net] bpf: Allow sk lookup helpers in cgroup skb (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fix spelling mistake "SIGALARM" -> "SIGALRM" (Yauheni Kaliuta) [1874003] - [net] bpf: Fix bpf_iter's task iterator logic (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test narrow loads for bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [net] bpf: Support narrow loads from bpf_sock_addr.user_port (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: xdp_redirect_cpu: Set MAX_CPUS according to NR_CPUS (Yauheni Kaliuta) [1874003] - [samples] samples/bpf: Remove compiler warnings (Yauheni Kaliuta) [1874003] - [net] bpf: Enable bpf_iter targets registering ctx argument types (Yauheni Kaliuta) [1874003] - [net] bpf: Change func bpf_iter_unreg_target() signature (Yauheni Kaliuta) [1874003] - [net] bpf: net: Refactor bpf_iter target registration (Yauheni Kaliuta) [1874003] - [net] bpf: Add comments to interpret bpf_prog return values (Yauheni Kaliuta) [1874003] - [tools] bpf: Change btf_iter func proto prefix to "bpf_iter_" (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests : Explain bpf_iter test failures with llvm 10.0.0 (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Add BPF triggering benchmark (Yauheni Kaliuta) [1874003] - [tools] selftest/bpf: Fmod_ret prog and implement test_overhead as part of bench (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add benchmark runner infrastructure (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Extract parse_num_list into generic testing_helpers.c (Yauheni Kaliuta) [1874003] - [tools] tools, bpf: Synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1874003] - [scripts] bpf: Minor fixes to BPF helpers documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Minor fixes for documentation (Yauheni Kaliuta) [1874003] - [tools] tools, bpftool: Poison and replace kernel integer typedefs (Yauheni Kaliuta) [1874003] - [tools] bpf, libbpf: Replace zero-length array with flexible-array (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize ADD, SUB, JMP BPF_K using arm64 add/sub immediates (Yauheni Kaliuta) [1874003] - [arm64] bpf, arm64: Optimize AND, OR, XOR, JSET BPF_K using arm64 logical immediates (Yauheni Kaliuta) [1874003] - [tools] bpf, runqslower: include proper uapi/bpf.h (Yauheni Kaliuta) [1874003] - [tools] tools/bpf: selftests: Add iter progs for bpf_map/task/task_file (Yauheni Kaliuta) [1874003] - [tools] tools/bpftool: Add bpf_iter support for bptool (Yauheni Kaliuta) [1874003] - [tools] tools/libpf: Add offsetof/container_of macro in bpf_helpers.h (Yauheni Kaliuta) [1874003] - [tools] tools/libbpf: Add bpf_iter support (Yauheni Kaliuta) [1874003] - [net] bpf: Support variable length array in tracing programs (Yauheni Kaliuta) [1874003] - [net] bpf: Handle spilled PTR_TO_BTF_ID properly when checking stack_boundary (Yauheni Kaliuta) [1874003] - [kernel] bpf: Add bpf_seq_printf and bpf_seq_write helpers (Yauheni Kaliuta) [1874003] - [net] bpf: Add PTR_TO_BTF_ID_OR_NULL support (Yauheni Kaliuta) [1874003] - [net] bpf: Add task and task/file iterator targets (Yauheni Kaliuta) [1874003] - [net] bpf: Add bpf_map iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement common macros/helpers for target iterators (Yauheni Kaliuta) [1874003] - [net] bpf: Create file bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Create anonymous bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Implement bpf_seq_read() for bpf iterator (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_UPDATE (Yauheni Kaliuta) [1874003] - [net] bpf: Support bpf tracing/iter programs for BPF_LINK_CREATE (Yauheni Kaliuta) [1874003] - [net] bpf: Allow loading of a bpf_iter program (Yauheni Kaliuta) [1874003] - [net] bpf: Implement an interface to register bpf_iter targets (Yauheni Kaliuta) [1874003] - [tools] bpf: Allow any port in bpf_bind helper (Yauheni Kaliuta) [1874003] - [net] net: Refactor arguments of inet{,6}_bind (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Move existing common networking parts into network_helpers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Generalize helpers to control background listener (Yauheni Kaliuta) [1874003] - [net] crypto: lib/sha1 - rename "sha" to "sha1" (Yauheni Kaliuta) [1874003] - [arm64] arm64: bpf: Annotate JITed code for BTI (Yauheni Kaliuta) [1874003] - [arm64] arm64: insn: Add constants for new HINT instruction decode (Yauheni Kaliuta) [1874003] - [kernel] sysctl: Fix unused function warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use reno instead of dctcp (Yauheni Kaliuta) [1874003] - [net] bpf: Fix use-after-free of bpf_link when priming half-fails (Yauheni Kaliuta) [1874003] - [tools] bpf: Bpf_{g, s}etsockopt for struct bpf_sock_addr (Yauheni Kaliuta) [1874003] - [tools] bpf: Add selftest for BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add support for command BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [net] bpf: Sharing bpf runtime stats with BPF_ENABLE_STATS (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test allowed maps for bpf_sk_select_reuseport (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix false uninitialized variable warning (Yauheni Kaliuta) [1874003] - [net] bpf: Fix unused variable warning (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Use SOCKMAP for server sockets in bpf_sk_assign test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test that lookup on SOCKMAP/SOCKHASH is allowed (Yauheni Kaliuta) [1874003] - [net] bpf: Allow bpf_map_lookup_elem for SOCKMAP and SOCKHASH (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Make libcap dependency optional (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: Allow unprivileged users to probe features (Yauheni Kaliuta) [1874003] - [tools] tools: bpftool: For "feature probe" define "full_mode" bool as global (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Disable ASAN instrumentation for mmap()'ed memory read (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix invalid memory reads in core_relo selftest (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Fix memory leak in extract_build_id() (Yauheni Kaliuta) [1874003] - [tools] libbpf: Fix memory leak and possible double-free in hashmap__clear (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Convert test_hashmap into test_progs test (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add SAN_CFLAGS param to selftests build to allow sanitizers (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Ensure test flavors use correct skeletons (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add BTF-defined map-in-map support (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor map creation logic and fix cleanup leak (Yauheni Kaliuta) [1874003] - [tools] libbpf: Refactor BTF-defined map definition parsing logic (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add link bash completions (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpftool-link manpage (Yauheni Kaliuta) [1874003] - [tools] bpftool: Add bpf_link show and pin support (Yauheni Kaliuta) [1874003] - [tools] bpftool: Expose attach_type-to-string array to non-cgroup code (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Test bpf_link's get_next_id, get_fd_by_id, and get_obj_info (Yauheni Kaliuta) [1874003] - [tools] libbpf: Add low-level APIs for new bpf_link commands (Yauheni Kaliuta) [1874003] - [net] bpf: Add support for BPF_OBJ_GET_INFO_BY_FD for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Support GET_FD_BY_ID and GET_NEXT_ID for bpf_link (Yauheni Kaliuta) [1874003] - [net] bpf: Allocate ID for bpf_link (Yauheni Kaliuta) [1874003] - [tools] libbpf: Remove unneeded semicolon in btf_dump_emit_type (Yauheni Kaliuta) [1874003] - [net] bpf, cgroup: Remove unused exports (Yauheni Kaliuta) [1874003] - [tools] libbpf: Return err if bpf_object__load failed (Yauheni Kaliuta) [1874003] - [tools] selftests/bpf: Add cls_redirect classifier (Yauheni Kaliuta) [1874003] - [net] bpf: Make verifier log more relevant by default (Yauheni Kaliuta) [1874003] - [net] bpf: add bpf_ktime_get_boot_ns() (Yauheni Kaliuta) [1874003] - [net] net: bpf: Make bpf_ktime_get_ns() available to non GPL programs (Yauheni Kaliuta) [1874003] - [net] net: bpf: Allow TC programs to call BPF_FUNC_skb_change_head (Yauheni Kaliuta) [1874003] - [net] bpf: Fix missing bpf_base_func_proto in cgroup_base_func_proto for CGROUP_NET=n (Yauheni Kaliuta) [1874003] - [tools] bpf_helpers.h: Add note for building with vmlinux.h or linux/types.h (Yauheni Kaliuta) [1874003] - [net] bpf: Enable more helpers for BPF_PROG_TYPE_CGROUP_{DEVICE, SYSCTL, SOCKOPT} (Yauheni Kaliuta) [1874003] - [tools] tools/bpf/bpftool: Remove duplicate headers (Yauheni Kaliuta) [1874003] - [net] bpf: Remove set but not used variable 'dst_known' (Yauheni Kaliuta) [1874003] - [net] xdp: export the DEV_MAP_BULK_SIZE macro (Yauheni Kaliuta) [1874003] - [kernel] trace/bpf_trace: Open access for CAP_PERFMON privileged process (Yauheni Kaliuta) [1874003] - [scsi] scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.5 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Reject CT request for MIB commands (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add FDMI Vendor MIB support (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix duplicate wq_create_version check (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Removed unused macros in lpfc_attr.c (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix scheduling call while in softirq context in lpfc_unreg_rpi (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc() (Dick Kennedy) [1887549] - [scsi] scsi: Remove unneeded break statements (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add dependency on CPU_FREQ (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unneeded variable 'status' in lpfc_fcp_cpu_map_store() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Drop nodelist reference on error in lpfc_gen_req() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove set but not used 'qp' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.4 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional events (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix spelling mistake "Cant" -> "Can't" (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.3 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix validation of bsg reply lengths (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix retry of PRLI when status indicates its unsupported (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops when unloading driver while running mds diags (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix RSCN timeout due to incorrect gidft counter (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix no message shown for lpfc_hdw_queue out of range value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix FCoE speed reporting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add missing misc_deregister() for lpfc_init() (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying targetport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix typo in comment for ULP (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add description for lpfc_release_rpi()'s 'ndlpl param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix a bunch of kerneldoc misdemeanors (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add and rename a whole bunch of function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Use __printf() format notation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix kerneldoc parameter formatting/misnaming/missing issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix some function parameter descriptions (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Ensure variable has the same stipulations as code using it (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up formatting/docrot where appropriate (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Provide description for lpfc_mem_alloc()'s 'align' param (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix-up around 120 documentation issues (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Remove unused variable 'pg_addr' (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Correct some pretty obvious misdocumentation (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix less-than-zero comparison of unsigned value (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix interrupt assignments when multiple vectors are supported on same CPU (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix inconsistent indenting (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.2 (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add an internal trace log buffer (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add blk_io_poll support for latency improvment (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Add support to display if adapter dumps are available (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Allow applications to issue Common Set Features mailbox command (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix language in 0373 message to reflect non-error message (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix shost refcount mismatch when deleting vport (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix stack trace seen while setting rrq active (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix oops due to overrun when reading SLI3 data (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix missing MDS functionality (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Fix unused assignment in lpfc_sli4_bsg_link_diag_test (Dick Kennedy) [1887549] - [scsi] scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset() (Dick Kennedy) [1887549] - [scsi] lpfc_debugfs: get rid of pointless access_ok() (Dick Kennedy) [1887549] - [scsi] lpfc: add nvmet discovery_event op support (Dick Kennedy) [1887549] - [scsi] scsi: core: Don't start concurrent async scan on same host (Ming Lei) [1874501] - [crypto] crypto: bcm - Verify GCM/CCM key length in setkey (Vladis Dronov) [1887389] - [x86] x86/cpufeatures: Add support for fast short REP; MOVSB (Steve Best) [1838265] - [scsi] scsi: mpt3sas: A small correction in _base_process_reply_queue (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix sync irqs (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Detect tampered Aero and Sea adapters (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Don't call disable_irq from IRQ poll handler (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove pci-dma-compat wrapper API (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Remove superfluous memset() (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Update driver version to 35.100.00.00 (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Postprocessing of target and LUN reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Add functions to check if any cmd is outstanding on Target and LUN (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Rename and export interrupt mask/unmask functions (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Cancel the running work during host reset (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Dump system registers for debugging (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Memset config_cmds.reply buffer with zeros (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix kdoc comments format (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix set but unused variable (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix error returns in BRM_status_show (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix unlock imbalance (Tomas Henzl) [1851440] - [scsi] scsi: mpt3sas: Fix spelling mistake (Tomas Henzl) [1851440] - [s390] s390/zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl (Claudio Imbrenda) [1885962] - [scsi] scsi: megaraid: Make smp_affinity_enable static (Tomas Henzl) [1860910] - [scsi] remove ioremap_nocache and devm_ioremap_nocache (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Remove set but unused variable (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix compilation warnings (Tomas Henzl) [1860910] - [scsi] scsi: megaraid: Fix kdoc comments format (Tomas Henzl) [1860910] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Tomas Henzl) [1860910] - [net] ethtool: Add support for 100Gbps per lane link modes (Ivan Vecera) [1879202]- [netdrv] ibmveth: Fix use of ibmveth in a bridge (Steve Best) [1893294] - [x86] ima: add a new CONFIG for loading arch-specific policies (Bruno Meneguele) [1869758] - [netdrv] e1000e: Add support for Meteor Lake (Ken Cox) [1838750] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Ken Cox) [1838750] - [netdrv] treewide: Use fallthrough pseudo-keyword (Ken Cox) [1838750] - [netdrv] e1000e: Remove unnecessary usages of memset (Ken Cox) [1838750] - [netdrv] e1000e: continue to init PHY even when failed to disable ULP (Ken Cox) [1838750] - [netdrv] ethernet/intel: Convert fallthrough code comments (Ken Cox) [1838750] - [netdrv] net/intel: remove driver versions from Intel drivers (Ken Cox) [1838750] - [netdrv] e1000e: fix unused-function warning (Ken Cox) [1838750] - [netdrv] e1000e: Do not wake up the system via WOL if device wakeup is disabled (Ken Cox) [1838750] - [netdrv] e1000e: Relax condition to trigger reset for ME workaround (Ken Cox) [1838750] - [netdrv] e1000e: disable s0ix entry and exit flows for ME systems (Ken Cox) [1838750] - [netdrv] e1000e: Disable TSO for buffer overrun workaround (Ken Cox) [1838750] - [netdrv] e1000e: Warn if disabling ULP failed (Ken Cox) [1838750] - [scsi] scsi: fnic: Do not call 'scsi_done()' for unhandled commands (Govindarajulu Varadarajan) [1870397] - [netdrv] intel-ethernet: clean up W=1 warnings in kdoc (Corinna Vinschen) [1838749] - [netdrv] igbvf: use generic power management (Corinna Vinschen) [1838749] - [netdrv] ethernet/intel: Convert fallthrough code comments (Corinna Vinschen) [1838749] - [netdrv] net/intel: remove driver versions from Intel drivers (Corinna Vinschen) [1838749] - [net] SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment() (Steve Dickson) [1884361] - [net] SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()") (Steve Dickson) [1884361] - [net] netfilter: nf_queue: do not release refcouts until nf_reinject is done (Florian Westphal) [1886557] - [net] netfilter: nf_queue: place bridge physports into queue_entry struct (Florian Westphal) [1886557] - [net] netfilter: nf_queue: make nf_queue_entry_release_refs static (Florian Westphal) [1886557] - [firewire] firewire: Deprecate Firewire support in RHEL8 (Prarit Bhargava) [1871863] - [lib] Add pldmfw library for PLDM firmware update (Patrick Talbert) [1878278] - [lib] bitops: introduce the for_each_set_clump8 macro (Patrick Talbert) [1878278] - [mm] x86/ioremap: Map EFI runtime services data as encrypted for SEV (Lenny Szubowicz) [1883134] - [powerpc] Revert "powerpc/powernv/idle: Replace CPU feature check with PVR check" (Steve Best) [1882365] - [powerpc] powerpc/xive: Do not expose a debugfs file when XIVE is disabled (Steve Best) [1854526] - [kvm] powerpc/xive: Enforce load-after-store ordering when StoreEOI is active (Steve Best) [1854526] - [powerpc] powerpc/xive: Add a debugfs file to dump internal XIVE state (Steve Best) [1854526] - [net] openvswitch: add TTL decrement action (Eelco Chaudron) [1762450]- [kernel] futex: Adjust absolute futex timeouts with per time namespace offset (Waiman Long) [1548297] - [kernel] futex: Remove unused or redundant includes (Waiman Long) [1548297] - [include] vdso: Fix clocksource.h macro detection (Waiman Long) [1548297] - [x86] um: Fix header inclusion (Waiman Long) [1548297] - [arm64] arm64: vdso32: make vdso32 install conditional (Waiman Long) [1548297] - [arm64] ARM64: vdso32: Install vdso32 from vdso_install (Waiman Long) [1548297] - [arm64] vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Provide vdso_update_begin/end() (Waiman Long) [1548297] - [include] lib/vdso: Allow to add architecture-specific vdso data (Waiman Long) [1548297] - [arm64] arm64: enable time namespace support (Waiman Long) [1548297] - [arm64] arm64/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [arm64] arm64/vdso: Handle faults on timens page (Waiman Long) [1548297] - [arm64] arm64/vdso: Add time namespace page (Waiman Long) [1548297] - [arm64] arm64/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [arm64] arm64/vdso: use the fault callback to map vvar pages (Waiman Long) [1548297] - [arm64] arm64: compat: Allow 32-bit vdso and sigpage to co-exist (Waiman Long) [1548297] - [x86] x86/vdso: Unbreak paravirt VDSO clocks (Waiman Long) [1548297] - [lib] lib/vdso: Provide sanity check for cycles (again) (Waiman Long) [1548297] - [kernel] clocksource: Remove obsolete ifdef (Waiman Long) [1548297] - [tools] selftests/timens: handle a case when alarm clocks are not supported (Waiman Long) [1548297] - [arm64] arm64: vdso: Add --eh-frame-hdr to ldflags (Waiman Long) [1548297] - [arm64] arm64: vdso: Add -fasynchronous-unwind-tables to cflags (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'map' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: use consistent 'abi' nomenclature (Waiman Long) [1548297] - [arm64] arm64: vdso: simplify arch_vdso_type ifdeffery (Waiman Long) [1548297] - [arm64] arm64: vdso: remove aarch32_vdso_pages (Waiman Long) [1548297] - [arm64] arm64: vdso: Add '-Bsymbolic' to ldflags (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Convert iterators to unsigned (Waiman Long) [1548297] - [x86] x86/vdso/vdso2c: Correct error messages on file open (Waiman Long) [1548297] - [include] vdso/datapage: Use correct clock mode name in comment (Waiman Long) [1548297] - [arm64] arm64: vdso: don't free unallocated pages (Waiman Long) [1548297] - [fs] proc, time/namespace: Show clock symbolic names in /proc/pid/timens_offsets (Waiman Long) [1548297] - [kernel] time/namespace: Add max_time_namespaces ucount (Waiman Long) [1548297] - [kernel] time/namespace: Fix time_for_children symlink (Waiman Long) [1548297] - [arm64] arm64: compat: Fix syscall number of compat_clock_getres (Waiman Long) [1548297] - [tools] selftests/timens: Remove duplicated include (Waiman Long) [1548297] - [kernel] sys/sysinfo: Respect boottime inside time namespace (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Fix vDSO clockmode when vDSO disabled (Waiman Long) [1548297] - [lib] lib/vdso: Enable common headers (Waiman Long) [1548297] - [x86] x86/vdso: Enable x86 to use common headers (Waiman Long) [1548297] - [arm64] arm64: vdso32: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: vdso: Include common headers in the vdso library (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/processor.h (Waiman Long) [1548297] - [arm64] arm64: vdso32: Code clean up (Waiman Long) [1548297] - [include] linux/elfnote.h: Replace elf.h with UAPI equivalent (Waiman Long) [1548297] - [include] common: Introduce processor.h (Waiman Long) [1548297] - [include] linux/ktime.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/jiffies.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time32.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/time.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/math64.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/clocksource.h: Extract common header for vDSO (Waiman Long) [1548297] - [arm64] arm64: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [x86] x86: Introduce asm/vdso/clocksource.h (Waiman Long) [1548297] - [include] linux/limits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/const.h: Extract common header for vDSO (Waiman Long) [1548297] - [include] linux/bits.h: make BIT(), GENMASK(), and friends available in assembly (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to provide the vdso data pointer (Waiman Long) [1548297] - [lib] lib/vdso: Allow architectures to override the ns shift operation (Waiman Long) [1548297] - [lib] lib/vdso: Allow fixed clock mode (Waiman Long) [1548297] - [include] lib/vdso: Move VCLOCK_TIMENS to vdso_clock_modes (Waiman Long) [1548297] - [kernel] lib/vdso: Avoid highres update if clocksource is not VDSO capable (Waiman Long) [1548297] - [lib] lib/vdso: Cleanup clock mode storage leftovers (Waiman Long) [1548297] - [arm64] ARM/arm64: vdso: Use common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Use generic VDSO clock mode storage (Waiman Long) [1548297] - [kernel] clocksource: Add common vdso clock mode storage (Waiman Long) [1548297] - [x86] x86/vdso: Move VDSO clocksource state tracking to callback (Waiman Long) [1548297] - [include] clocksource: Cleanup struct clocksource and documentation (Waiman Long) [1548297] - [lib] lib/vdso: Allow the high resolution parts to be compiled out (Waiman Long) [1548297] - [lib] lib/vdso: Only read hrtimer_res when needed in __cvdso_clock_getres() (Waiman Long) [1548297] - [x86] x86/vdso: Mark the TSC clocksource path likely (Waiman Long) [1548297] - [kernel] lib/vdso: Update coarse timekeeper unconditionally (Waiman Long) [1548297] - [kernel] lib/vdso: Make __arch_update_vdso_data() logic understandable (Waiman Long) [1548297] - [kernel] alarmtimer: Unregister wakeup source when module get fails (Waiman Long) [1548297] - [tools] selftests/timens: Check for right timens offsets after fork and exec (Waiman Long) [1548297] - [tools] selftests/timens: Add a simple perf test for clock_gettime() (Waiman Long) [1548297] - [tools] selftests/timens: Add timer offsets test (Waiman Long) [1548297] - [tools] selftests/timens: Add procfs selftest (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for clock_nanosleep() (Waiman Long) [1548297] - [tools] selftests/timens: Add a test for timerfd (Waiman Long) [1548297] - [tools] selftests/timens: Add Time Namespace test for supported clocks (Waiman Long) [1548297] - [fs] fs/proc: Introduce /proc/pid/timens_offsets (Waiman Long) [1548297] - [x86] x86/vdso: Zap vvar pages when switching to a time namespace (Waiman Long) [1548297] - [x86] x86/vdso: On timens page fault prefault also VVAR page (Waiman Long) [1548297] - [x86] x86/vdso: Handle faults on timens page (Waiman Long) [1548297] - [kernel] time: Allocate per-timens vvar page (Waiman Long) [1548297] - [x86] x86/vdso: Add time napespace page (Waiman Long) [1548297] - [x86] x86/vdso: Provide vdso_data offset on vvar_page (Waiman Long) [1548297] - [lib] lib/vdso: Prepare for time namespace support (Waiman Long) [1548297] - [x86] x86/vdso: Restrict splitting VVAR VMA (Waiman Long) [1548297] - [fs] fs/proc: Respect boottime inside time namespace for /proc/uptime (Waiman Long) [1548297] - [kernel] posix-timers: Make clock_nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] hrtimers: Prepare hrtimer_nanosleep() for time namespaces (Waiman Long) [1548297] - [kernel] alarmtimer: Make nanosleep() time namespace aware (Waiman Long) [1548297] - [kernel] posix-timers: Make timer_settime() time namespace aware (Waiman Long) [1548297] - [fs] timerfd: Make timerfd_settime() time namespace aware (Waiman Long) [1548297] - [kernel] time: Add do_timens_ktime_to_host() helper (Waiman Long) [1548297] - [kernel] posix-clocks: Wire up clock_gettime() with timens offsets (Waiman Long) [1548297] - [kernel] posix-timers: Use clock_get_ktime() in common_timer_get() (Waiman Long) [1548297] - [kernel] posix-clocks: Introduce clock_get_ktime() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Provide get_timespec() callback (Waiman Long) [1548297] - [kernel] alarmtimer: Rename gettime() callback to get_ktime() (Waiman Long) [1548297] - [kernel] posix-clocks: Rename .clock_get_timespec() callbacks accordingly (Waiman Long) [1548297] - [kernel] posix-clocks: Rename the clock_get() callback to clock_get_timespec() (Waiman Long) [1548297] - [kernel] time: Add timens_offsets to be used for tasks in time namespace (Waiman Long) [1548297] - [kernel] ns: Introduce Time Namespace (Waiman Long) [1548297] - [lib] lib/vdso: Mark do_hres() and do_coarse() as __always_inline (Waiman Long) [1548297] - [lib] lib/vdso: Avoid duplication in __cvdso_clock_getres() (Waiman Long) [1548297] - [lib] lib/vdso: Let do_coarse() return 0 to simplify the callsite (Waiman Long) [1548297] - [x86] x86/vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Remove unused VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [lib] lib/vdso: Remove checks on return value for 32 bit vDSO (Waiman Long) [1548297] - [lib] lib/vdso: Remove VDSO_HAS_32BIT_FALLBACK (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Expose BUILD_VDSO32 (Waiman Long) [1548297] - [include] lib/vdso: Add unlikely() hint into vdso_read_begin() (Waiman Long) [1548297] - [x86] y2038: vdso: change time_t to __kernel_old_time_t (Waiman Long) [1548297] - [uapi] y2038: add __kernel_old_timespec and __kernel_old_time_t (Waiman Long) [1548297] - [arm64] timekeeping/vsyscall: Update VDSO data unconditionally (Waiman Long) [1548297] - [x86] um: Fix VDSO compiler warning (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Prevent math overflow in BOOTTIME update (Waiman Long) [1548297] - [arm64] arm64: compat: vdso: Use legacy syscalls as fallback (Waiman Long) [1548297] - [x86] x86/vdso/32: Use 32bit syscall fallback (Waiman Long) [1548297] - [arm64] arm64: vdso: Cleanup Makefiles (Waiman Long) [1548297] - [arm64] arm64: vdso: fix flip/flop vdso build bug (Waiman Long) [1548297] - [x86] x86/vdso: Fix flip/flop vdso build bug (Waiman Long) [1548297] - [kernel] timekeeping/vsyscall: Use __iter_div_u64_rem() (Waiman Long) [1548297] - [arm64] arm64: compat: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: Fix __arch_get_hw_counter() implementation (Waiman Long) [1548297] - [arm64] arm64: compat: No need for pre-ARMv7 barriers on an ARMv8 system (Waiman Long) [1548297] - [arm64] arm64: vdso: Remove unnecessary asm-offsets.c definitions (Waiman Long) [1548297] - [include] vdso: Remove superfluous #ifdef __KERNEL__ in vdso/datapage.h (Waiman Long) [1548297] - [arm64] arm64: vdso: Enable vDSO compat support (Waiman Long) [1548297] - [arm64] arm64: compat: Get sigreturn trampolines from vDSO (Waiman Long) [1548297] - [arm64] arm64: elf: VDSO code page discovery (Waiman Long) [1548297] - [arm64] arm64: compat: VDSO setup for compat layer (Waiman Long) [1548297] - [arm64] arm64: vdso: Refactor vDSO code (Waiman Long) [1548297] - [arm64] arm64: compat: Add vDSO (Waiman Long) [1548297] - [arm64] arm64: compat: Generate asm offsets for signals (Waiman Long) [1548297] - [arm64] arm64: compat: Expose signal related structures (Waiman Long) [1548297] - [arm64] arm64: compat: Add missing syscall numbers (Waiman Long) [1548297] - [arm64] arm64: vdso: Build vDSO with -ffixed-x18 (Waiman Long) [1548297] - [arm64] arm64: vdso: Substitute gettimeofday() with C implementation (Waiman Long) [1548297] - [lib] lib/vdso: Build 32 bit specific functions in the right context (Waiman Long) [1548297] - [lib] lib/vdso: Make __cvdso_clock_getres() static (Waiman Long) [1548297] - [lib] lib/vdso: Make clock_getres() POSIX compliant again (Waiman Long) [1548297] - [lib] lib/vdso/32: Provide legacy syscall fallbacks (Waiman Long) [1548297] - [lib] lib/vdso: Move fallback invocation to the callers (Waiman Long) [1548297] - [lib] lib/vdso/32: Remove inconsistent NULL pointer checks (Waiman Long) [1548297] - [x86] lib/vdso: Make delta calculation work correctly (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_gettime64() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Add clock_getres() entry point (Waiman Long) [1548297] - [x86] x86/vdso: Switch to generic vDSO implementation (Waiman Long) [1548297] - [x86] x86/vdso: Prevent segfaults due to hoisted vclock reads (Waiman Long) [1548297] - [kernel] timekeeping: Provide a generic update_vsyscall() implementation (Waiman Long) [1548297] - [lib] lib/vdso: Add compat support (Waiman Long) [1548297] - [lib] lib/vdso: Provide generic VDSO implementation (Waiman Long) [1548297] - [include] hrtimer: Split out hrtimer defines into separate header (Waiman Long) [1548297] - [include] vdso: Define standardized vdso_datapage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: mark functions as __always_inline (Waiman Long) [1548297] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 223 (Waiman Long) [1548297] - [clocksource] clocksource/drivers/arm_arch_timer: Don't trace count reader functions (Waiman Long) [1548297] - [arm64] arm64: vdso: Explicitly add build-id option (Waiman Long) [1548297] - [x86] gcc-9: properly declare the {pv, hv}clock_page storage (Waiman Long) [1548297] - [arm64] arm64: vdso: Fix clock_getres() for CLOCK_REALTIME (Waiman Long) [1548297] - [arm64] arm64: compat: Refactor aarch32_alloc_vdso_pages() (Waiman Long) [1548297] - [arm64] arm64: compat: Split kuser32 (Waiman Long) [1548297] - [arm64] arm64: compat: Alloc separate pages for vectors and sigpage (Waiman Long) [1548297] - [arm64] arm64: arch_timer: Ensure counter register reads occur with seqlock held (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Use arch_timer_read_counter to access stable counters (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Remove use of workaround static key (Waiman Long) [1548297] - [arm64] clocksource/arm_arch_timer: Drop use of static key in arch_timer_reg_read_stable (Waiman Long) [1548297] - [clocksource] clocksource/arm_arch_timer: Direcly assign set_next_event workaround (Waiman Long) [1548297] - [arm64] arm64: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [watchdog] watchdog/sbsa: Use arch_timer_read_counter instead of arch_counter_get_cntvct (Waiman Long) [1548297] - [kernel] alarmtimer: Return correct remaining time (Waiman Long) [1548297] - [arm64] arm64: vdso: use $(LD) instead of $(CC) to link VDSO (Waiman Long) [1548297] - [arm64] arm64: vdso: fix and clean-up Makefile (Waiman Long) [1548297] - [x86] x86/vdso: Remove hpet_page from vDSO (Waiman Long) [1548297] - [scripts] checksyscalls: fix up mq_timedreceive and stat exceptions (Waiman Long) [1548297] - [uapi] time: Add time_types.h (Waiman Long) [1548297] - [uapi] socket: Add struct __kernel_sock_timeval (Waiman Long) [1548297] - [arm64] arm64: asm-offsets: remove unused offsets (Waiman Long) [1548297] - [arm64] y2038: add 64-bit time_t syscalls to all 32-bit architectures (Waiman Long) [1548297] - [arm64] arm64: replace arm64-obj-* in Makefile with obj-* (Waiman Long) [1548297] - [x86] x86/vdso: Remove obsolete "fake section table" reservation (Waiman Long) [1548297] - [x86] x86/vdso: Rename variable to fix -Wshadow warning (Waiman Long) [1548297] - [x86] x86/vdso: Rearrange do_hres() to improve code generation (Waiman Long) [1548297] - [x86] x86/vdso: Document vgtod_ts better (Waiman Long) [1548297] - [x86] x86/vdso: Remove "memory" clobbers in the vDSO syscall fallbacks (Waiman Long) [1548297] - [x86] x86/vdso: Initialize the CPU/node NR segment descriptor earlier (Waiman Long) [1548297] - [x86] x86/vdso: Introduce helper functions for CPU and node number (Waiman Long) [1548297] - [x86] x86/segments/64: Rename the GDT PER_CPU entry to CPU_NUMBER (Waiman Long) [1548297] - [x86] x66/vdso: Add CLOCK_TAI support (Waiman Long) [1548297] - [x86] x86/vdso: Move cycle_last handling into the caller (Waiman Long) [1548297] - [x86] x86/vdso: Simplify the invalid vclock case (Waiman Long) [1548297] - [x86] x86/vdso: Replace the clockid switch case (Waiman Long) [1548297] - [x86] x86/vdso: Collapse coarse functions (Waiman Long) [1548297] - [x86] x86/vdso: Collapse high resolution functions (Waiman Long) [1548297] - [x86] x86/vdso: Introduce and use vgtod_ts (Waiman Long) [1548297] - [x86] x86/vdso: Use unsigned int consistently for vsyscall_gtod_data:: Seq (Waiman Long) [1548297] - [x86] x86/vdso: Enforce 64bit clocksource (Waiman Long) [1548297] - [x86] x86/time: Implement clocksource_arch_init() (Waiman Long) [1548297] - [kernel] clocksource: Provide clocksource_arch_init() (Waiman Long) [1548297] - [fs] fs/proc/uptime.c: use ktime_get_boottime_ts64 (Waiman Long) [1548297] - [include] y2038: Provide aliases for compat helpers (Waiman Long) [1548297] - [fs] kernel: add kcompat_sys_{f,}statfs64() (Waiman Long) [1548297] - [kernel] sysinfo: Remove get_monotonic_boottime() (Waiman Long) [1548297] - [kernel] posix-timers: Use new ktime_get_*_ts64() helpers (Waiman Long) [1548297] - [kernel] time: Use ktime_get_real_seconds() in time syscall (Waiman Long) [1548297] - [include] time: Introduce struct __kernel_itimerspec (Waiman Long) [1548297] - [scripts] kconfig: improve the recursive dependency report (Bruno Meneguele) [1890578] - [scripts] kconfig: report recursive dependency involving 'imply' (Bruno Meneguele) [1890578] - [scripts] kconfig: error out when seeing recursive dependency (Bruno Meneguele) [1890578] - [scsi] scsi: hpsa: Update copyright (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Remove pci-dma-compat wrapper API (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Use fallthrough pseudo-keyword (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct ctrl queue depth (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Bump version (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase controller error handling timeout (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Increase queue depth for external LUNs (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Correct rare oob condition (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: hpsa_ioctl(): Tidy up a bit (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Get rid of compat_alloc_user_space() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Don't bother with vmalloc for BIG_IOCTL_Command_struct (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: Lift {BIG_, }IOCTL_Command_struct copy{in, out} into hpsa_ioctl() (Joseph Szczypek) [1861541] - [scsi] scsi: hpsa: remove ioremap_nocache and devm_ioremap_nocache (Joseph Szczypek) [1861541] - [tools] selftests/powerpc: Make alignment handler test P9N DD2.1 vector CI load workaround (Gustavo Duarte) [1887442] - [powerpc] powerpc: Fix undetected data corruption with P9N DD2.1 VSX CI load emulation (Gustavo Duarte) [1887442] - [scsi] scsi: smartpqi: Update copyright (Don Brace) [1861538] - [scsi] scsi: smartpqi: Bump version to 1.2.16-010 (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add RAID bypass counter (Don Brace) [1861538] - [scsi] scsi: smartpqi: Avoid crashing kernel for controller issues (Don Brace) [1861538] - [scsi] scsi: smartpqi: Update logical volume size after expansion (Don Brace) [1861538] - [scsi] scsi: smartpqi: Add id support for SmartRAID 3152-8i (Don Brace) [1861538] - [scsi] scsi: smartpqi: Identify physical devices without issuing INQUIRY (Don Brace) [1861538] - [mm] mm: simplify find_min_pfn_with_active_regions() (Baoquan He) [1844157] - [mm] mm: clean up free_area_init_node() and its helpers (Baoquan He) [1844157] - [mm] mm: rename free_area_init_node() to free_area_init_memoryless_node() (Baoquan He) [1844157] - [mm] mm: free_area_init: allow defining max_zone_pfn in descending order (Baoquan He) [1844157] - [powerpc] mm: remove early_pfn_in_nid() and CONFIG_NODES_SPAN_OTHER_NODES (Baoquan He) [1844157] - [mm] mm: memmap_init: iterate over memblock regions rather that check each PFN (Baoquan He) [1844157] - [mm] arm64: simplify detection of memory zone boundaries for UMA configs (Baoquan He) [1844157] - [mm] mm: use free_area_init() instead of free_area_init_nodes() (Baoquan He) [1844157] - [mm] mm: free_area_init: use maximal zone PFNs rather than zone sizes (Baoquan He) [1844157] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK_NODE_MAP option (Baoquan He) [1844157] - [mm] numa: make "nr_node_ids" unsigned int (Baoquan He) [1844157] - [mm] mm: make early_pfn_to_nid() and related defintions close to each other (Baoquan He) [1844157] - [mm] mm: memblock: replace dereferences of memblock_region.nid with API calls (Baoquan He) [1844157] - [mm] mm: factor out next_present_section_nr() (Baoquan He) [1844157] - [mm] mm/page_alloc: fix and rework pfn handling in memmap_init_zone() (Baoquan He) [1844157] - [mm] mm/page_alloc: skip non present sections on zone initialization (Baoquan He) [1844157] - [mm] mm: move mirrored memory specific code outside of memmap_init_zone (Baoquan He) [1844157] - [mm] mm: calculate deferred pages after skipping mirrored memory (Baoquan He) [1844157] - [mm] mm/memblock.c: fix a typo in __next_mem_pfn_range() comments (Baoquan He) [1844157] - [mm] memblock: remove memblock_{set, clear}_region_flags (Baoquan He) [1844157] - [mm] mm: replace all open encodings for NUMA_NO_NODE (Baoquan He) [1844157] - [powerpc] lockdep: Only trace IRQ edges (Waiman Long) [1885084] - [arm64] arm64: Implement arch_irqs_disabled() (Waiman Long) [1885084] - [include] locking/lockdep: Cleanup (Waiman Long) [1885084] - [include] lockdep: Use raw_cpu_*() for per-cpu variables (Waiman Long) [1885084] - [x86] locking/seqlock, headers: Untangle the spaghetti monster (Waiman Long) [1885084] - [misc] vmw_balloon: Explicitly include linux/io.h for virt_to_phys() (Waiman Long) [1885084] - [x86] x86: i8259: Add missing include file (Waiman Long) [1885084] - [include] seqcount: More consistent seqprop names (Waiman Long) [1885084] - [include] seqcount: Compress SEQCNT_LOCKNAME_ZERO() (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_init() definition (Waiman Long) [1885084] - [include] seqlock: Fold seqcount_LOCKNAME_t definition (Waiman Long) [1885084] - [include] seqlock: s/__SEQ_LOCKDEP/__SEQ_LOCK/g (Waiman Long) [1885084] - [kernel] hrtimer: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use sequence counter with associated raw spinlock (Waiman Long) [1885084] - [kernel] timekeeping: Use proper seqcount initializer (Waiman Long) [1885084] - [init] sched: tasks: Use sequence counter with associated spinlock (Waiman Long) [1885084] - [kernel] lockdep: Refactor IRQ trace events fields into struct (Waiman Long) [1885084] - [drm] dma-buf: Use sequence counter with associated wound/wait mutex (Waiman Long) [1885084] - [dma-buf] dma-buf: Remove custom seqcount lockdep class key (Waiman Long) [1885084] - [include] seqlock: Align multi-line macros newline escapes at 72 columns (Waiman Long) [1885084] - [documentation] seqlock: Extend seqcount API with associated locks (Waiman Long) [1885084] - [include] seqlock: lockdep assert non-preemptibility on seqcount_t write (Waiman Long) [1885084] - [lib] lockdep: Add preemption enabled/disabled assertion APIs (Waiman Long) [1885084] - [include] seqlock: Implement raw_seqcount_begin() in terms of raw_read_seqcount() (Waiman Long) [1885084] - [include] seqlock: Add kernel-doc for seqcount_t and seqlock_t APIs (Waiman Long) [1885084] - [include] seqlock: Reorder seqcount_t and seqlock_t API definitions (Waiman Long) [1885084] - [include] seqlock: seqcount_t latch: End read sections with read_seqcount_retry() (Waiman Long) [1885084] - [include] seqlock: Properly format kernel-doc code samples (Waiman Long) [1885084] - [documentation] Documentation: locking: Describe seqlock design and usage (Waiman Long) [1885084] - [include] seqlock: Require WRITE_ONCE surrounding raw_seqcount_barrier (Waiman Long) [1885084] - [include] seqlock, kcsan: Add annotations for KCSAN (Waiman Long) [1885084] - [include] include/linux/compiler.h: Introduce data_race(expr) macro (Waiman Long) [1885084] - [kernel] kcsan: Add Kernel Concurrency Sanitizer infrastructure (Waiman Long) [1885084] - [include] locking/qspinlock: Do not include atomic.h from qspinlock_types.h (Waiman Long) [1885084] - [include] locking/atomic: Move ATOMIC_INIT into linux/types.h (Waiman Long) [1885084] - [connector] connector/cn_proc: Protect send_msg() with a local lock (Waiman Long) [1885084] - [mm] mm/swap: Use local_lock for protection (Waiman Long) [1885084] - [include] radix-tree: Use local_lock for protection (Waiman Long) [1885084] - [include] locking: Introduce local_lock() (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Minor copy editor fixes (Waiman Long) [1885084] - [documentation] Documentation/locking/locktypes: Further clarifications and wordsmithing (Waiman Long) [1885084] - [documentation] Documentation: Add lock ordering and nesting documentation (Waiman Long) [1885084] - [mm] mm/swap.c: trivial mark_page_accessed() cleanup (Waiman Long) [1885084] - [lib] radix tree: Remove radix_tree_maybe_preload_order (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] lockdep: Remove lockdep_hardirq{s_enabled, _context}() argument (Waiman Long) [1885084] - [kernel] lockdep: Change hardirq{s_enabled, _context} to per-cpu variables (Waiman Long) [1885084] - [kernel] x86/entry: Rename trace_hardirqs_off_prepare() (Waiman Long) [1885084] - [kernel] lockdep: Prepare for NMI IRQ state tracking (Waiman Long) [1885084] - [include] lockdep: Move list.h inclusion into lockdep.h (Waiman Long) [1885084] - [include] lockdep: Split header file into lockdep and lockdep_types (Waiman Long) [1885084] - [kernel] lockdep: __always_inline more for noinstr (Waiman Long) [1885084] - [kernel] lockdep: Prepare for noinstr sections (Waiman Long) [1885084] - [kernel] tracing: Provide lockdep less trace_hardirqs_on/off() variants (Waiman Long) [1885084] - [include] vmlinux.lds.h: Create section for protection against instrumentation (Waiman Long) [1885084] - [kernel] locking/lockdep: Replace zero-length array with flexible-array (Waiman Long) [1885084] - [kernel] hrtimer: Don't dereference the hrtimer pointer after the callback (Waiman Long) [1885084] - [kernel] hrtimer: Add missing sparse annotation for __run_timer() (Waiman Long) [1885084] - [kernel] lockdep: Always inline lockdep_{off,on}() (Waiman Long) [1885084] - [kernel] locking/lockdep: Improve 'invalid wait context' splat (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_{hard, soft}{irq_context, irqs_enabled}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_softirqs_{on,off}() (Waiman Long) [1885084] - [kernel] lockdep: Rename trace_hardirq_{enter, exit}() (Waiman Long) [1885084] - [kernel] completion: Use lockdep_assert_RT_in_threaded_ctx() in complete_all() (Waiman Long) [1885084] - [usb] completion: Use simple wait queues (Waiman Long) [1885084] - [kernel] sched/swait: Prepare usage in completions (Waiman Long) [1885084] - [kernel] lockdep: Add posixtimer context tracing bits (Waiman Long) [1885084] - [kernel] lockdep: Annotate irq_work (Waiman Long) [1885084] - [kernel] lockdep: Add hrtimer context tracing bits (Waiman Long) [1885084] - [include] lockdep: Introduce wait-type checks (Waiman Long) [1885084] - [kernel] lockdep: Teach lockdep about "USED" <- "IN-NMI" inversions (Waiman Long) [1885084] - [kernel] locking/lockdep: Rework lockdep_lock (Waiman Long) [1885084] - [kernel] locking/lockdep: Fix bad recursion pattern (Waiman Long) [1885084] - [s390] s390/ftrace: fix endless recursion in function_graph tracer (Waiman Long) [1885084] - [s390] s390/time: ensure get_clock_monotonic() returns monotonic values (Waiman Long) [1885084] - [kernel] irq_work: Fix IRQ_WORK_BUSY bit clearing (Waiman Long) [1885084] - [kernel] irq_work: Slightly simplify IRQ_WORK_PENDING clearing (Waiman Long) [1885084] - [kernel] irq_work: Fix irq_work_claim() memory ordering (Waiman Long) [1885084] - [kernel] irq_work: Convert flags to atomic_t (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on lockdep functions (Waiman Long) [1885084] - [kernel] kprobes: Prohibit probing on hardirq tracers (Waiman Long) [1885084] - [lib] locking/lockdep: Make global debug_locks* variables read-mostly (Waiman Long) [1885084] - [kernel] locking/lockdep: Delete unnecessary #include (Waiman Long) [1885084] - [kernel] tracing: More reverting of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Handle preempt_count for different configs (Waiman Long) [1885084] - [kernel] tracing: Partial revert of "tracing: Centralize preemptirq tracepoints and unify their usage" (Waiman Long) [1885084] - [kernel] tracing: irqsoff: Account for additional preempt_disable (Waiman Long) [1885084] - [kernel] tracing: Centralize preemptirq tracepoints and unify their usage (Waiman Long) [1885084] - [kernel] tracing/irqsoff: Split reset into separate functions (Waiman Long) [1885084] - [kernel] sched/fair: Use dst group while checking imbalance for NUMA balancer (Phil Auld) [1877360] - [kernel] sched/fair: Reduce busy load balance interval (Phil Auld) [1877360] - [kernel] sched/fair: Reduce minimal imbalance threshold (Phil Auld) [1877360] - [kernel] sched/fair: Minimize concurrent LBs between domain level (Phil Auld) [1877360] - [kernel] sched/fair: Fix wrong cpu selecting from isolated domain (Phil Auld) [1877360] - [kernel] sched/fair: Relax constraint on task's load during load balance (Phil Auld) [1877360] - [kernel] sched/numa: Use runnable_avg to classify node (Phil Auld) [1877360] - [kernel] sched: Remove duplicated tick_nohz_full_enabled() check (Phil Auld) [1877360] - [kernel] sched: Warn if garbage is passed to default_wake_function() (Phil Auld) [1877360] - [kernel] sched: nohz: stop passing around unused "ticks" parameter (Phil Auld) [1877360] - [kernel] sched/fair: update_pick_idlest() Select group with lowest group_util when idle_cpus are equal (Phil Auld) [1877360] - [kernel] sched: Better document ttwu() (Phil Auld) [1877360] - [kernel] sched/fair: handle case of task_h_load() returning 0 (Phil Auld) [1877360] - [kernel] sched: Fix unreliable rseq cpu_id for new tasks (Phil Auld) [1877360] - [kernel] sched/core: s/WF_ON_RQ/WQ_ON_CPU/ (Phil Auld) [1877360] - [include] sched/core: Remove mmdrop() definition (Phil Auld) [1877360] - [kernel] sched/fair: Optimize dequeue_task_fair() (Phil Auld) [1877360] - [kernel] sched/pelt: Cleanup PELT divider (Phil Auld) [1877360] - [kernel] sched/fair: Fix NOHZ next idle balance (Phil Auld) [1877360] - [kernel] sched: correct SD_flags returned by tl->sd_flags() (Phil Auld) [1877360] - [kernel] sched/fair: Remove unused 'sd' parameter from scale_rt_capacity() (Phil Auld) [1877360] - [kernel] sched/idle, stop: Remove .get_rr_interval from sched_class (Phil Auld) [1877360] - [kernel] sched/core: Remove redundant 'preempt' param from sched_class->yield_to_task() (Phil Auld) [1877360] - [kernel] sched/pelt: Remove redundant cap_scale() definition (Phil Auld) [1877360] - [kernel] sched/pelt: Sync util/runnable_sum with PELT window when propagating (Phil Auld) [1877360] - [kernel] sched/cpuacct: Fix charge cpuacct.usage_sys (Phil Auld) [1877360] - [kernel] sched/cpuacct: Use __this_cpu_add() instead of this_cpu_ptr() (Phil Auld) [1877360] - [kernel] sched/fair: Fix unthrottle_cfs_rq() for leaf_cfs_rq list (Phil Auld) [1877360] - [kernel] sched/core: Simplify sched_init() (Phil Auld) [1877360] - [kernel] sched/fair: Mark sched_init_granularity __init (Phil Auld) [1877360] - [kernel] sched/core: Fix illegal RCU from offline CPUs (Phil Auld) [1877360] - [kernel] sched/fair: Use __this_cpu_read() in wake_wide() (Phil Auld) [1877360] - [kernel] sched: Extract the task putting code from pick_next_task() (Phil Auld) [1877360] - [kernel] sched: Make newidle_balance() static again (Phil Auld) [1877360] - [kernel] sched/fair: Remove distribute_running from CFS bandwidth (Phil Auld) [1877360] - [kernel] sched/fair: Simplify the code of should_we_balance() (Phil Auld) [1877360] - [kernel] sched/debug: Fix trival print_task() format (Phil Auld) [1877360] - [kernel] sched/debug: Factor out printing formats into common macros (Phil Auld) [1877360] - [kernel] sched/debug: Remove redundant macro define (Phil Auld) [1877360] - [kernel] sched/core: Remove unused rq::last_load_update_tick (Phil Auld) [1877360] - [kernel] sched/fair: Align rq->avg_idle and rq->avg_scan_cost (Phil Auld) [1877360] - [kernel] sched/fair: Improve spreading of utilization (Phil Auld) [1877360] - [kernel] sched/fair: Fix condition of avg_load calculation (Phil Auld) [1877360] - [kernel] kthread: Do not preempt current task if it is going to call schedule() (Phil Auld) [1877360] - [kernel] sched/core: Distribute tasks within affinity masks (Phil Auld) [1877360] - [kernel] time/sched_clock: Expire timer in hardirq context (Phil Auld) [1877360] - [kernel] sched/deadline: Make two functions static (Phil Auld) [1877360] - [mm] slab: store tagged freelist for off-slab slabmgmt (Waiman Long) [1887067] - [mm] mm/kasan: fix false positive invalid-free reports with CONFIG_KASAN_SW_TAGS=y (Waiman Long) [1887067] - [arm64] arm64: avoid clang warning about self-assignment (Waiman Long) [1887067] - [mm] kasan: add memory corruption identification for software tag-based mode (Waiman Long) [1887067] - [mm] mm/kasan: print frame description for stack bugs (Waiman Long) [1887067] - [mm] kasan: initialize tag to 0xff in __kasan_kmalloc (Waiman Long) [1887067] - [mm] kasan: Makefile: Replace -pg with CC_FLAGS_FTRACE (Waiman Long) [1887067] - [mm] x86/uaccess, kasan: Fix KASAN vs SMAP (Waiman Long) [1887067] - [mm] mm/kasan: Simplify stacktrace handling (Waiman Long) [1887067] - [mm] kasan: fix variable 'tag' set but not used warning (Waiman Long) [1887067] - [mm] slub: fix a crash with SLUB_DEBUG + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slab: remove redundant kasan_slab_alloc hooks (Waiman Long) [1887067] - [mm] kasan, slab: make freelist stored without tags (Waiman Long) [1887067] - [mm] kasan, slab: fix conflicts with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [mm] kasan: prevent tracing of tags.c (Waiman Long) [1887067] - [mm] kasan: fix random seed generation for tag-based mode (Waiman Long) [1887067] - [mm] slub: fix SLAB_CONSISTENCY_CHECKS + KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan, slub: fix more conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: fix conflicts with CONFIG_SLAB_FREELIST_HARDENED (Waiman Long) [1887067] - [mm] kasan, slub: move kasan_poison_slab hook before page_address (Waiman Long) [1887067] - [mm] kmemleak: account for tagged pointers when calculating pointer range (Waiman Long) [1887067] - [mm] kasan, kmemleak: pass tagged pointers to kmemleak (Waiman Long) [1887067] - [mm] kasan: fix assigning tags twice (Waiman Long) [1887067] - [mm] kasan: mark file common so ftrace doesn't trace it (Waiman Long) [1887067] - [mm] kasan: fix krealloc handling for tag-based mode (Waiman Long) [1887067] - [mm] kasan: make tag based mode work with CONFIG_HARDENED_USERCOPY (Waiman Long) [1887067] - [arm64] kasan, arm64: use ARCH_SLAB_MINALIGN instead of manual aligning (Waiman Long) [1887067] - [mm] kasan: add SPDX-License-Identifier mark to source files (Waiman Long) [1887067] - [documentation] kasan: update documentation (Waiman Long) [1887067] - [arm64] kasan, arm64: select HAVE_ARCH_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: add __must_check annotations to kasan hooks (Waiman Long) [1887067] - [mm] kasan, mm, arm64: tag non slab memory allocated via pagealloc (Waiman Long) [1887067] - [arm64] kasan, arm64: add brk handler for inline instrumentation (Waiman Long) [1887067] - [mm] kasan: add hooks implementation for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add bug reporting routines for tag-based mode (Waiman Long) [1887067] - [mm] kasan: split out generic_report.c from report.c (Waiman Long) [1887067] - [mm] kasan, mm: perform untagged pointers comparison in krealloc (Waiman Long) [1887067] - [mm] kasan, arm64: enable top byte ignore for the kernel (Waiman Long) [1887067] - [mm] kasan, arm64: fix up fault handling logic (Waiman Long) [1887067] - [mm] kasan: preassign tags to objects with ctors or SLAB_TYPESAFE_BY_RCU (Waiman Long) [1887067] - [arm64] kasan, arm64: untag address in _virt_addr_is_linear (Waiman Long) [1887067] - [arm64] kasan: add tag related helper functions (Waiman Long) [1887067] - [mm] kasan: initialize shadow to 0xff for tag-based mode (Waiman Long) [1887067] - [mm] kasan: rename kasan_zero_page to kasan_early_shadow_page (Waiman Long) [1887067] - [arm64] kasan, arm64: adjust shadow size for tag-based mode (Waiman Long) [1887067] - [mm] kasan: add CONFIG_KASAN_GENERIC and CONFIG_KASAN_SW_TAGS (Waiman Long) [1887067] - [mm] kasan: rename source files to reflect the new naming scheme (Waiman Long) [1887067] - [mm] kasan: move common generic and tag-based code to common.c (Waiman Long) [1887067] - [mm] kasan, slub: handle pointer tags in early_kmem_cache_node_alloc (Waiman Long) [1887067] - [mm] kasan, mm: change hooks signatures (Waiman Long) [1887067] - [arm64] arm64: kasan: Increase stack size for KASAN_EXTRA (Waiman Long) [1887067] - [s390] s390/cio: add cond_resched() in the slow_eval_known_fn() loop (Claudio Imbrenda) [1885961] - [s390] scsi: zfcp: fix missing erp_lock in port recovery trigger for point-to-point (Claudio Imbrenda) [1885876] - [tools] selftests/vm/gup_benchmark.c: match gup struct to kernel (Rafael Aquini) [1873952] - [uapi] redhat: Fix the number of KVM_CAP_S390_DIAG318 (Thomas Huth) [1659413] - [s390] setup: diag 318: refactor struct (Thomas Huth) [1659413] - [s390] kvm: diagnose 0x318 sync and reset (Thomas Huth) [1659413] - [mm] swap: reduce lock contention on swap cache from swap slots allocation (Nico Pache) [1839049] - [mm] mm/swapfile.c: use prandom_u32_max() (Nico Pache) [1839049] - [mm] swap: try to scan more free slots even when fragmented (Nico Pache) [1839049] - [mm] mm/swapfile.c: move inode_lock out of claim_swapfile (Nico Pache) [1839049] - [mm] vfs: don't allow writes to swap files (Nico Pache) [1839049] - [mm] mm: set S_SWAPFILE on blockdev swap devices (Nico Pache) [1839049] - [edac] EDAC/ie31200: Add Intel Coffee Lake CPU support (Aristeu Rozanski) [1847567]- [netdrv] macsec: avoid use-after-free in macsec_handle_frame() (Balazs Nemeth) [1890122] - [include] netlink: check for null extack in cookie helpers (Ivan Vecera) [1878274] - [net] ethtool: Don't omit the netlink reply if no features were changed (Ivan Vecera) [1878274] - [net] ethtool: Account for hw_features in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: Fix preserving of wanted feature bits in netlink interface (Ivan Vecera) [1878274] - [net] ethtool: ethnl_set_linkmodes: remove redundant null check (Ivan Vecera) [1878274] - [net] ethtool: fix genlmsg_put() failure handling in ethnl_default_dumpit() (Ivan Vecera) [1878274] - [net] ethtool: add missing string for NETIF_F_GSO_TUNNEL_REMCSUM (Ivan Vecera) [1878274] - [net] ethtool: Fix check in ethtool_rx_flow_rule_create (Ivan Vecera) [1878274] - [net] ethtool: linkinfo: remove an unnecessary NULL check (Ivan Vecera) [1878274] - [net] ethtool: propagate get_coalesce return value (Ivan Vecera) [1878274] - [net] ethtool: don't call set_channels in drivers if config didn't change (Ivan Vecera) [1878274] - [net] ethtool: check if there is at least one channel for TX/RX in the core (Ivan Vecera) [1878274] - [net] drivers: Remove inclusion of vermagic header (Ivan Vecera) [1878274] - [net] ethtool: count header size in reply size estimate (Ivan Vecera) [1878274] - [net] ethtool: provide timestamping information with TSINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: add timestamping related string sets (Ivan Vecera) [1878274] - [net] ethtool: add EEE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set EEE settings with EEE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide EEE settings with EEE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PAUSE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set pause parameters with PAUSE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide pause parameters with PAUSE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add COALESCE_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set coalescing parameters with COALESCE_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide coalescing parameters with COALESCE_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in ethnl_set_privflags() (Ivan Vecera) [1878274] - [net] ethtool: fix incorrect tx-checksumming settings reporting (Ivan Vecera) [1878274] - [include] ethtool.h: Replace zero-length array with flexible-array member (Ivan Vecera) [1878274] - [net] ethtool: fix reference leak in some *_SET handlers (Ivan Vecera) [1878274] - [net] ethtool: reject unrecognized request flags (Ivan Vecera) [1878274] - [include] netlink: add nl_set_extack_cookie_u32() (Ivan Vecera) [1878274] - [net] netlink: allow extack cookie also for error messages (Ivan Vecera) [1878274] - [net] ethtool: fix spelling mistake "exceeeds" -> "exceeds" (Ivan Vecera) [1878274] - [net] ethtool: add CHANNELS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device channel counts with CHANNELS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide channel counts with CHANNELS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add RINGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device ring sizes with RINGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide ring sizes with RINGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add PRIVFLAGS_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set device private flags with PRIVFLAGS_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide private flags with PRIVFLAGS_GET request (Ivan Vecera) [1878274] - [net] ethtool: add FEATURES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set netdev features with FEATURES_SET request (Ivan Vecera) [1878274] - [net] ethtool: add ethnl_parse_bitset() helper (Ivan Vecera) [1878274] - [net] ethtool: provide netdev features with FEATURES_GET request (Ivan Vecera) [1878274] - [net] ethtool: update mapping of features to legacy ioctl requests (Ivan Vecera) [1878274] - [net] ethtool: rename ethnl_parse_header() to ethnl_parse_header_dev_get() (Ivan Vecera) [1878274] - [include] hns: reject unsupported coalescing params (Ivan Vecera) [1878274] - [include] net: liquidio: reject unsupported coalescing params (Ivan Vecera) [1878274] - [net] ethtool: Factored out similar ethtool link settings for virtual devices to core (Ivan Vecera) [1878274] - [net] ethtool: limit bitset size (Ivan Vecera) [1878274] - [net] ethtool: fix application of verbose no_mask bitset (Ivan Vecera) [1878274] - [net] ethtool: Add support for low latency RS FEC (Ivan Vecera) [1878274] - [net] ethtool: add WOL_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set wake-on-lan settings with WOL_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide WoL settings with WOL_GET request (Ivan Vecera) [1878274] - [net] ethtool: add DEBUG_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set message mask with DEBUG_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide message mask with DEBUG_GET request (Ivan Vecera) [1878274] - [net] ethtool: fix kernel-doc descriptions (Ivan Vecera) [1878274] - [net] ethtool: potential NULL dereference in strset_prepare_data() (Ivan Vecera) [1878274] - [net] ethtool: fix ->reply_size() error handling (Ivan Vecera) [1878274] - [net] ethtool: fix a memory leak in ethnl_default_start() (Ivan Vecera) [1878274] - [net] ethtool: remove set but not used variable 'lsettings' (Ivan Vecera) [1878274] - [net] ethtool: provide link state with LINKSTATE_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKMODES_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: set link modes related data with LINKMODES_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link mode information with LINKMODES_GET request (Ivan Vecera) [1878274] - [net] ethtool: add LINKINFO_NTF notification (Ivan Vecera) [1878274] - [net] ethtool: add default notification handler (Ivan Vecera) [1878274] - [net] ethtool: set link settings with LINKINFO_SET request (Ivan Vecera) [1878274] - [net] ethtool: provide link settings with LINKINFO_GET request (Ivan Vecera) [1878274] - [net] ethtool: provide string sets with STRSET_GET request (Ivan Vecera) [1878274] - [net] ethtool: default handlers for GET requests (Ivan Vecera) [1878274] - [net] ethtool: support for netlink notifications (Ivan Vecera) [1878274] - [net] ethtool: netlink bitset handling (Ivan Vecera) [1878274] - [net] ethtool: helper functions for netlink interface (Ivan Vecera) [1878274] - [net] ethtool: introduce ethtool netlink interface (Ivan Vecera) [1878274] - [net] ethtool: provide link mode names as a string set (Ivan Vecera) [1878274] - [net] ethtool: move string arrays into common file (Ivan Vecera) [1878274] - [net] ethtool: move RHEL specific stuff to separate header file (Ivan Vecera) [1878274] - [net] ethtool: move to its own directory (Ivan Vecera) [1878274] - [net] rtnetlink: provide permanent hardware address in RTM_NEWLINK (Ivan Vecera) [1878274] - [net] Zeroing the structure ethtool_wolinfo in ethtool_get_wol() (Ivan Vecera) [1878274] - [net] ethtool: Allow parsing ETHER_FLOW types when using flow_rule (Ivan Vecera) [1878274] - [net] ethtool: Allow matching on vlan DEI bit (Ivan Vecera) [1878274] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Ivan Vecera) [1878274] - [include] net: ethtool: Document get_rxfh_context and set_rxfh_context ethtool ops (Ivan Vecera) [1878274] - [include] ethtool: avoid signed-unsigned comparison in ethtool_validate_speed() (Ivan Vecera) [1878274] - [net] ethtool: not call vzalloc for zero sized memory request (Ivan Vecera) [1878274] - [net] ethtool: reduce stack usage with clang (Ivan Vecera) [1878274] - [net] ethtool: Use explicit designated initializers for .cmd (Ivan Vecera) [1878274] - [net] ethtool: remove unnecessary check in ethtool_get_regs() (Ivan Vecera) [1878274] - [include] uapi/ethtool: fix spelling errors (Ivan Vecera) [1878274] - [net] ethtool: fix a missing-check bug (Ivan Vecera) [1878274] - [include] ethtool: Remove trailing semicolon for static inline (Ivan Vecera) [1878274] - [net] ipv6: some fixes for ipv6_dev_find() (Xin Long) [1862458] - [net] tipc: not enable tipc when ipv6 works as a module (Xin Long) [1862458] - [net] tipc: set ub->ifindex for local ipv6 address (Xin Long) [1862458] - [net] ipv6: add ipv6_dev_find() (Xin Long) [1862458] - [powerpc] powerpc/pseries: explicitly reschedule during drmem_lmb list traversal (Steve Best) [1892377] - [scsi] scsi: ibmvscsi: Fix potential race after loss of transport (Steve Best) [1892316] - [mm] mm: fix a race during THP splitting (Rafael Aquini) [1865813 1739593] - [mm] mm, memcg: do not high throttle allocators based on wraparound (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators based on ancestral memory.high (Waiman Long) [1873759] - [mm] mm, memcg: fix corruption on 64-bit divisor in memory.high throttling (Waiman Long) [1873759] - [mm] mm, memcg: throttle allocators when failing reclaim over memory.high (Waiman Long) [1873759] - [mm] mm, oom: dump stack of victim when reaping failed (Waiman Long) [1873759] - [mm] mm/oom: fix pgtables units mismatch in Killed process message (Waiman Long) [1873759] - [mm] mm, oom: consider present pages for the node size (Waiman Long) [1873759] - [mm] mm/oom_kill.c: fix oom_cpuset_eligible() comment (Waiman Long) [1873759] - [mm] mm/oom: add oom_score_adj and pgtables to Killed process message (Waiman Long) [1873759] - [mm] mm/oom_kill.c: remove redundant OOM score normalization in select_bad_process() (Waiman Long) [1873759] - [fs] oom: decouple mems_allowed from oom_unkillable_task (Waiman Long) [1873759] - [mm] mm, oom: remove redundant task_in_mem_cgroup() check (Waiman Long) [1873759] - [mm] mm, oom: refactor dump_tasks for memcg OOMs (Waiman Long) [1873759] - [mm] mm, oom: describe task memory unit, larger PID pad (Waiman Long) [1873759] - [mm] mm, oom: remove oom_lock from oom_reaper (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused RECLAIM_OFF/RECLAIM_ZONE (Waiman Long) [1873759] - [mm] mm/vmscan: remove prefetch_prev_lru_page (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused return value of shrink_node (Waiman Long) [1873759] - [mm] mm/vmscan.c: clean code by removing unnecessary assignment (Waiman Long) [1873759] - [mm] mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix typo in comment (Waiman Long) [1873759] - [mm] mm: vmscan: enforce inactive:active ratio at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: detect file thrashing at the reclaim root (Waiman Long) [1873759] - [mm] mm: vmscan: move file exhaustion detection to the node level (Waiman Long) [1873759] - [include] mm: vmscan: harmonize writeback congestion tracking for nodes & memcgs (Waiman Long) [1873759] - [mm] mm: vmscan: split shrink_node() into node part and memcgs part (Waiman Long) [1873759] - [mm] mm: vmscan: turn shrink_node_memcg() into shrink_lruvec() (Waiman Long) [1873759] - [mm] mm: vmscan: replace shrink_node() loop with a retry jump (Waiman Long) [1873759] - [mm] mm: vmscan: naming fixes: global_reclaim() and sane_reclaim() (Waiman Long) [1873759] - [mm] mm: vmscan: move inactive_list_is_low() swap check to the caller (Waiman Long) [1873759] - [mm] mm: vmscan: simplify lruvec_lru_size() (Waiman Long) [1873759] - [mm] mm/vmscan.c: remove unused scan_control parameter from pageout() (Waiman Long) [1873759] - [mm] mm/vmscan: remove unused lru_pages argument (Waiman Long) [1873759] - [mm] mm: do not allow MADV_PAGEOUT for CoW pages (Waiman Long) [1873759] - [mm] mm: fix trying to reclaim unevictable lru page when calling madvise_pageout (Waiman Long) [1873759] - [mm] mm: factor out common parts between MADV_COLD and MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: introduce MADV_PAGEOUT (Waiman Long) [1873759] - [mm] mm: change PAGEREF_RECLAIM_CLEAN with PAGE_REFRECLAIM (Waiman Long) [1873759] - [mm] mm: introduce MADV_COLD (Waiman Long) [1873759] - [mm] mm: thp: don't need care deferred split queue in memcg charge move path (Waiman Long) [1873759] - [mm] mm: thp: make deferred split shrinker memcg aware (Waiman Long) [1873759] - [mm] mm: shrinker: make shrinker not depend on memcg kmem (Waiman Long) [1873759] - [mm] mm: move mem_cgroup_uncharge out of __page_cache_release() (Waiman Long) [1873759] - [mm] mm: thp: extract split_queue_* into a struct (Waiman Long) [1873759] - [mm] mm/page_alloc.c: move ifdefery out of free_area_init_core (Waiman Long) [1873759] - [mm] mm, memcg: do not set reclaim_state on soft limit reclaim (Waiman Long) [1873759] - [mm] mm, vmscan: do not special-case slab reclaim when watermarks are boosted (Waiman Long) [1873759] - [mm] mm/vmscan.c: add checks for incorrect handling of current->reclaim_state (Waiman Long) [1873759] - [mm] mm/vmscan.c: calculate reclaimed slab caches in all reclaim paths (Waiman Long) [1873759] - [mm] mm/vmscan.c: add a new member reclaim_state in struct shrink_control (Waiman Long) [1873759] - [mm] mm: vmscan: remove double slab pressure by inc'ing sc->nr_scanned (Waiman Long) [1873759] - [mm] mm: limit boost_watermark on small zones (Waiman Long) [1873759] - [mm] mm: do not boost watermarks to avoid fragmentation for the DISCONTIG memory model (Waiman Long) [1873759] - [mm] mm, page_alloc: fix a division by zero error when boosting watermarks v2 (Waiman Long) [1873759] - [mm] mm, page_alloc: do not wake kswapd with zone lock held (Waiman Long) [1873759] - [mm] mm/page_alloc.c: drop uneeded __meminit and __meminitdata (Waiman Long) [1873759] - [mm] mm/page_alloc.c: fix never set ALLOC_NOFRAGMENT flag (Waiman Long) [1873759] - [mm] mm/page_alloc.c: avoid potential NULL pointer dereference (Waiman Long) [1873759] - [mm] mm/vmscan.c: don't disable irq again when count pgrefill for memcg (Waiman Long) [1873759] - [mm] mm/vmscan: drop may_writepage and classzone_idx from direct reclaim begin template (Waiman Long) [1873759] - [mm] mm/vmscan: add tracepoints for node reclaim (Waiman Long) [1873759] - [mm] mm: generalize putback scan functions (Waiman Long) [1873759] - [mm] mm: remove pages_to_free argument of move_active_pages_to_lru() (Waiman Long) [1873759] - [mm] mm/workingset: remove unused @mapping argument in workingset_eviction() (Waiman Long) [1873759] - [mm] Revert "mm: slowly shrink slabs with a relatively small number of objects" (Waiman Long) [1873759] - [mm] mm: reclaim small amounts of memory when an external fragmentation event occurs (Waiman Long) [1873759] - [mm] mm: use alloc_flags to record if kswapd can wake (Waiman Long) [1873759] - [mm] mm: move zone watermark accesses behind an accessor (Waiman Long) [1873759] - [mm] mm, page_alloc: spread allocations across zones before introducing fragmentation (Waiman Long) [1873759] - [mm] mm: Convert delete_from_swap_cache to XArray (Waiman Long) [1873759] - [fs] mm: zero-seek shrinkers (Waiman Long) [1873759] - [mm] mm/vmscan.c: fix int overflow in callers of do_shrink_slab() (Waiman Long) [1873759] - [mm] mm: slowly shrink slabs with a relatively small number of objects (Waiman Long) [1873759] - [mm] mm: fix page_freeze_refs and page_unfreeze_refs in comments (Waiman Long) [1873759] - [mm] mm: check shrinker is memcg-aware in register_shrinker_prepared() (Waiman Long) [1873759] - [mm] mm: use special value SHRINKER_REGISTERING instead of list_empty() check (Waiman Long) [1873759] - [mm] mm/vmscan.c: move check for SHRINKER_NUMA_AWARE to do_shrink_slab() (Waiman Long) [1873759] - [mm] mm/vmscan.c: condense scan_control (Waiman Long) [1873759] - [arch] asm-generic/tlb: add missing CONFIG symbol (Waiman Long) [1873759] - [include] asm-gemeric/tlb: remove stray function declarations (Waiman Long) [1873759] - [x86] x86/ldt: Remove unused variable in map_ldt_struct() (Waiman Long) [1873759] - [x86] x86/ldt: Unmap PTEs for the slot before freeing LDT pages (Waiman Long) [1873759] - [x86] x86/mm/tlb: Add freed_tables argument to flush_tlb_mm_range (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_table_flush() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove tlb_flush_mmu_free() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove CONFIG_HAVE_GENERIC_MMU_GATHER (Waiman Long) [1873759] - [mm] asm-generic/tlb: Remove arch_tlb*_mmu() (Waiman Long) [1873759] - [s390] s390/tlb: Convert to generic mmu_gather (Waiman Long) [1873759] - [mm] asm-generic/tlb: Introduce CONFIG_HAVE_MMU_GATHER_NO_GATHER=y (Waiman Long) [1873759] - [include] asm-generic/tlb, ia64: Conditionally provide tlb_migrate_finish() (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide generic tlb_flush() based on flush_tlb_mm() (Waiman Long) [1873759] - [arm64] asm-generic/tlb, arch: Provide generic tlb_flush() based on flush_tlb_range() (Waiman Long) [1873759] - [mm] asm-generic/tlb, arch: Provide CONFIG_HAVE_MMU_GATHER_PAGE_SIZE (Waiman Long) [1873759] - [include] asm-generic/tlb: Provide a comment (Waiman Long) [1873759] - [mm] mm/memory: Move mmu_gather and TLB invalidation code into its own file (Waiman Long) [1873759] - [x86] x86/mm: Page size aware flush_tlb_mm_range() (Waiman Long) [1873759] - [x86] x86/ldt: Split out sanity check in map_ldt_struct() (Waiman Long) [1873759] - [mm] asm-generic/tlb: Track which levels of the page tables have been cleared (Waiman Long) [1873759] - [include] asm-generic/tlb: Track freeing of page-table directories in struct mmu_gather (Waiman Long) [1873759] - [mm] mm/cow: don't bother write protecting already write-protected pages (Waiman Long) [1873759] - [powerpc] mm/mmu_gather: invalidate TLB correctly on batch allocation failure and flush (Diego Domingos) [1805031] - [powerpc] powerpc/mmu_gather: enable RCU_TABLE_FREE even for !SMP case (Diego Domingos) [1805031] - [fs] cifs: smb1: Try failing back to SetFileInfo if SetPathInfo fails (Leif Sahlberg) [1857038]- [scsi] scsi: libfc: Fix passing zero to 'PTR_ERR' warning (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix for double free() (Chris Leech) [1849542] - [scsi] scsi: libfc: Free skb in fc_disc_gpn_id_resp() for valid cases (Chris Leech) [1849542] - [scsi] scsi: fcoe: Memory leak fix in fcoe_sysfs_fcf_del() (Chris Leech) [1849542] - [scsi] scsi: fcoe: Use eth_zero_addr() to clear mac address (Chris Leech) [1849542] - [scsi] scsi: libfc: Provide missing and repair existing function documentation (Chris Leech) [1849542] - [scsi] scsi: libfc: Fix a couple of misdocumented function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Repair function parameter documentation (Chris Leech) [1849542] - [scsi] scsi: fcoe: Correct some kernel-doc issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix a myriad of documentation issues (Chris Leech) [1849542] - [scsi] scsi: fcoe: Fix various kernel-doc infringements (Chris Leech) [1849542] - [scsi] scsi: libfc: trivial: Fix spelling mistake of 'discovery' (Chris Leech) [1849542] - [scsi] scsi: libfc: Supply some missing kerneldoc struct/function attributes/params (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_disc: Fix-up some incorrectly referenced function parameters (Chris Leech) [1849542] - [scsi] scsi: libfc: Skip additional kref updating work event (Chris Leech) [1849542] - [scsi] scsi: libfc: Handling of extra kref (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded semicolon in fcoe.c (Chris Leech) [1849542] - [scsi] scsi: libfc: rport state move to PLOGI if all PRLI retry exhausted (Chris Leech) [1849542] - [scsi] scsi: libfc: If PRLI rejected, move rport to PLOGI state (Chris Leech) [1849542] - [scsi] scsi: libfc: free response frame from GPN_ID (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix null-ptr-deref Read in fc_release_transport (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove redundant call to skb_transport_header (Chris Leech) [1849542] - [scsi] scsi: fcoe: pass in fcoe_rport structure instead of fc_rport_priv (Chris Leech) [1849542] - [scsi] scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure (Chris Leech) [1849542] - [scsi] scsi: libfc: Whitespace cleanup in libfc.h (Chris Leech) [1849542] - [scsi] scsi: fcoe: fix a typo (Chris Leech) [1849542] - [scsi] scsi: libfc: fix null pointer dereference on a null lport (Chris Leech) [1849542] - [scsi] scsi: libfcoe: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: libfc: switch to SPDX tags (Chris Leech) [1849542] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove unneeded fcoe_ctlr_destroy_store export (Chris Leech) [1849542] - [scsi] scsi: fcoe: convert to use BUS_ATTR_WO (Chris Leech) [1849542] - [scsi] scsi: libfc: free skb when receiving invalid flogi resp (Chris Leech) [1849542] - [scsi] scsi: fcoe: remove set but not used variable 'port' (Chris Leech) [1849542] - [scsi] scsi: libfc: fc_rport: Mark expected switch fall-through (Chris Leech) [1849542] - [scsi] scsi: libfc: Remove set but not used variable 'disc' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove set but not used variable 'rpriv' (Chris Leech) [1849542] - [scsi] scsi: libfc: remove unnecessary condition check (Chris Leech) [1849542] - [scsi] scsi: fcoe: hold disc_mutex when traversing rport lists (Chris Leech) [1849542] - [net] netfilter: nftables: allow re-computing sctp CRC-32C in 'payload' statements (Davide Caratti) [1741052] - [fs] nfsd4: fix NULL dereference in nfsd/clients display code (Scott Mayhew) [1872311] - [fs] nfsd: Fix old-style function definition (Scott Mayhew) [1872311] - [fs] nfsd: clients don't need to break their own delegations (Scott Mayhew) [1872311] - [kernel] kthread: save thread function (Scott Mayhew) [1872311] - [fs] locks: Add trace_leases_conflict (Scott Mayhew) [1872311] - [fs] SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct IO compeletion") (Scott Mayhew) [1872311] - [fs] NFS: Fix interrupted slots by sending a solo SEQUENCE operation (Scott Mayhew) [1872311] - [net] SUNRPC: Add missing definition of ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE (Scott Mayhew) [1872311] - [fs] NFSv4 fix CLOSE not waiting for direct IO compeletion (Scott Mayhew) [1872311] - [fs] nfs: Fix memory leak of export_path (Scott Mayhew) [1872311] - [net] sunrpc: fixed rollback in rpc_gssd_dummy_populate() (Scott Mayhew) [1872311] - [net] xprtrdma: Clean up disconnect (Scott Mayhew) [1872311] - [fs] nfsd: apply umask on fs without ACL support (Scott Mayhew) [1872311] - [fs] NFS: Fix direct WRITE throughput regression (Scott Mayhew) [1872311] - [trace] SUNRPC: rpc_xprt lifetime events should record xprt->state (Scott Mayhew) [1872311] - [fs] nfs: set invalid blocks after NFSv4 writes (Scott Mayhew) [1872311] - [fs] NFS: remove redundant initialization of variable result (Scott Mayhew) [1872311] - [fs] NFS: Add a tracepoint in nfs_set_pgio_error() (Scott Mayhew) [1872311] - [fs] NFS: Trace short NFS READs (Scott Mayhew) [1872311] - [fs] NFS: nfs_xdr_status should record the procedure name (Scott Mayhew) [1872311] - [net] SUNRPC: Set SOFTCONN when destroying GSS contexts (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() should set RPC_TASK_SOFT (Scott Mayhew) [1872311] - [net] SUNRPC: rpc_call_null_helper() already sets RPC_TASK_NULLCREDS (Scott Mayhew) [1872311] - [net] SUNRPC: trace RPC client lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Trace transport lifetime events (Scott Mayhew) [1872311] - [net] SUNRPC: Split the xdr_buf event class (Scott Mayhew) [1872311] - [net] SUNRPC: Add tracepoint to rpc_call_rpcerror() (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the RPC_SHOW_SOCKET() macro (Scott Mayhew) [1872311] - [trace] SUNRPC: Update the rpc_show_task_flags() macro (Scott Mayhew) [1872311] - [net] SUNRPC: Trace GSS context lifetimes (Scott Mayhew) [1872311] - [net] SUNRPC: receive buffer size estimation values almost never change (Scott Mayhew) [1872311] - [net] sunrpc: use kmemdup_nul() in gssp_stringify() (Scott Mayhew) [1872311] - [fs] nfsd: safer handling of corrupted c_type (Scott Mayhew) [1872311] - [fs] mm/writeback: discard NR_UNSTABLE_NFS, use NR_WRITEBACK instead (Scott Mayhew) [1872311] - [mm] mm/writeback: replace PF_LESS_THROTTLE with PF_LOCAL_THROTTLE (Scott Mayhew) [1872311] - [net] SUNRPC: Remove unreachable error condition in rpcb_getport_async() (Scott Mayhew) [1872311] - [fs] nfsd: Fix svc_xprt refcnt leak when setup callback client failed (Scott Mayhew) [1872311] - [net] sunrpc: check that domain table is empty at module unload (Scott Mayhew) [1872311] - [fs] NFS: remove duplicate headers (Scott Mayhew) [1872311] - [fs] NFSv4.1 fix rpc_call_done assignment for BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [fs] NFS: Use the correct style for SPDX License Identifier (Scott Mayhew) [1872311] - [net] net: sunrpc: Fix off-by-one issues in 'rpc_ntop6' (Scott Mayhew) [1872311] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Scott Mayhew) [1872311] - [fs] NFSD: Fix improperly-formatted Doxygen comments (Scott Mayhew) [1872311] - [fs] NFSD: Squash an annoying compiler warning (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up request deferral tracepoints (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints for monitoring NFSD callbacks (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to the NFSD state management code (Scott Mayhew) [1872311] - [fs] NFSD: Add tracepoints to NFSD's duplicate reply cache (Scott Mayhew) [1872311] - [trace] SUNRPC: svc_show_status() macro should have enum definitions (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_udp_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor svc_recvfrom() (Scott Mayhew) [1872311] - [net] SUNRPC: Clean up svc_release_skb() functions (Scott Mayhew) [1872311] - [net] SUNRPC: Refactor recvfrom path dealing with incomplete TCP receives (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk() call sites in TCP receive path (Scott Mayhew) [1872311] - [net] SUNRPC: Restructure svc_tcp_recv_record() (Scott Mayhew) [1872311] - [net] SUNRPC: Rename svc_sock::sk_reclen (Scott Mayhew) [1872311] - [net] SUNRPC: Trace server-side rpcbind registration events (Scott Mayhew) [1872311] - [net] SUNRPC: Replace dprintk call sites in TCP state change callouts (Scott Mayhew) [1872311] - [net] SUNRPC: Add more svcsock tracepoints (Scott Mayhew) [1872311] - [net] SUNRPC: Remove "#include " (Scott Mayhew) [1872311] - [net] SUNRPC: Trace a few more generic svc_xprt events (Scott Mayhew) [1872311] - [net] SUNRPC: Tracepoint to record errors in svc_xpo_create() (Scott Mayhew) [1872311] - [trace] SUNRPC: Remove kernel memory address from svc_xprt tracepoints (Scott Mayhew) [1872311] - [net] svcrdma: Add tracepoints to report ->xpo_accept failures (Scott Mayhew) [1872311] - [net] svcrdma: Displayed remote IP address should match stored address (Scott Mayhew) [1872311] - [include] svcrdma: Remove the SVCRDMA_DEBUG macro (Scott Mayhew) [1872311] - [net] svcrdma: Rename tracepoints that record header decoding errors (Scott Mayhew) [1872311] - [net] svcrdma: Remove backchannel dprintk call sites (Scott Mayhew) [1872311] - [net] SUNRPC: Move xpt_mutex into socket xpo_sendto methods (Scott Mayhew) [1872311] - [net] sunrpc: add missing newline when printing parameter 'pool_mode' by sysfs (Scott Mayhew) [1872311] - [net] sunrpc: Remove unused function ip_map_update (Scott Mayhew) [1872311] - [fs] nfsd: handle repeated BIND_CONN_TO_SESSION (Scott Mayhew) [1872311] - [net] ip_tunnel_core: Fix build for archs without _HAVE_ARCH_IPV6_CSUM (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for UDP tunnels handled by Open vSwitch (Aaron Conole) [1849736] - [tools] selftests: pmtu.sh: Add tests for bridged UDP tunnels (Aaron Conole) [1849736] - [net] geneve: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] vxlan: Support for PMTU discovery on directly bridged links (Aaron Conole) [1849736] - [net] tunnels: PMTU discovery support for directly bridged IP packets (Aaron Conole) [1849736] - [net] ipv4: route: Ignore output interface in FIB lookup for PMTU route (Aaron Conole) [1849736] - [infiniband] RDMA/core: Free DIM memory in error unwind (Kamal Heib) [1857602] - [infiniband] RDMA/core: Stop DIM before destroying CQ (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add min length checks to user structure copies (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Protect access to remote_sidr_table (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix race in rdma_alloc_commit_uobject() (Kamal Heib) [1857602] - [net] xprtrdma: fix incorrect header size calculations (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of connect errors (Kamal Heib) [1857602] - [net] xprtrdma: Fix return code from rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix recursion into rpcrdma_xprt_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Fix double-free in rpcrdma_ep_create() (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix reporting vendor_part_id (Kamal Heib) [1857602] - [infiniband] IB/sa: Resolv use-after-free in ib_nl_make_request() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add explicit cast OPA_MTU_8192 to 'enum ib_mtu' (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add atomic triggered sleep/wakeup (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Correct -EBUSY handling in tx code (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Restore kfree in dummy_netdev cleanup (Kamal Heib) [1857602] - [infiniband] IB/mad: Fix use after free when destroying MAD agent (Kamal Heib) [1857602] - [infiniband] RDMA/counter: Query a counter before release (Kamal Heib) [1857602] - [net] xprtrdma: Fix handling of RDMA_ERROR replies (Kamal Heib) [1857602] - [net] xprtrdma: Clean up synopsis of rpcrdma_flush_disconnect() (Kamal Heib) [1857602] - [net] xprtrdma: Use re_connect_status safely in rpcrdma_xprt_connect() (Kamal Heib) [1857602] - [net] xprtrdma: Prevent dereferencing r_xprt->rx_ep after it is freed (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Check that type_attrs is not NULL prior access (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Protect bind_list and listen_list while finding matching cm id (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Set maximum pkeys device attribute (Kamal Heib) [1857602] - [infiniband] RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq (Kamal Heib) [1857602] - [infiniband] RDMA/core: Annotate CMA unlock helper routine (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl() (Kamal Heib) [1857602] - [infiniband] RDMA/hfi1: Fix trivial mis-spelling of 'descriptor' (Kamal Heib) [1857602] - [net] xprtrdma: Make xprt_rdma_slot_table_entries static (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Spurious WARNING triggered in cm_destroy_id() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Use free_netdev() in hfi1_netdev_free() (Kamal Heib) [1857602] - [infiniband] RDMA/core: Move and rename trace_cm_id_create() (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix hfi1_netdev_rx_init() error handling (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_map_per_fmr' (Kamal Heib) [1857602] - [infiniband] RDMA: Remove 'max_fmr' (Kamal Heib) [1857602] - [net] RDMA/rds: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR device ops (Kamal Heib) [1857602] - [infiniband] RDMA/rdmavt: Remove FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mthca: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/mlx4: Remove FMR support for memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/i40iw: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/bnxt_re: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/mlx5: Remove FMR leftovers (Kamal Heib) [1857602] - [infiniband] RDMA/core: Remove FMR pool API (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/iser: Remove support for FMR memory registration (Kamal Heib) [1857602] - [infiniband] RDMA/core: Fix several reference count leaks (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Fix spelling mistake "enought" -> "enough" (Kamal Heib) [1857602] - [rdma] RDMA/core: Use offsetofend() instead of open coding (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Increase max_send_sge (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Reduce max_recv_sge to 1 (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Make debug output more detailed (Kamal Heib) [1857602] - [infiniband] RDMA/srp: Make the channel count configurable per target (Kamal Heib) [1857602] - [infiniband] hfi1: get rid of pointless access_ok() (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Provide ECE reject reason (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Connect ECE to rdma_accept (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Send and receive ECE parameter over the wire (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Deliver ECE parameters through UCMA events (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Extend ucma_connect to receive ECE parameters (Kamal Heib) [1857602] - [rdma] RDMA/cm: Add Enhanced Connection Establishment (ECE) bits (Kamal Heib) [1857602] - [infiniband] RDMA/core: Use sizeof_field() helper (Kamal Heib) [1857602] - [infiniband] RDMA/ipoib: Remove can_sleep parameter from iboib_mcast_alloc (Kamal Heib) [1857602] - [infiniband] IB/cma: Fix ports memory leak in cma_configfs (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy QP commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy WQ commands over ioctl (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Introduce create/destroy SRQ commands over ioctl (Kamal Heib) [1857602] - [rdma] IB/uverbs: Move QP, SRQ, WQ type and flags to UAPI (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Extend CQ to get its own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] IB/uverbs: Refactor related objects to use their own asynchronous event FD (Kamal Heib) [1857602] - [infiniband] RDMA/core: Allow the ioctl layer to abort a fully created uobject (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Expose UAR object and its alloc/destroy commands (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Fix a NULL vs IS_ERR() check (Kamal Heib) [1857602] - [infiniband] IB/mlx5: Introduce UAPIs to manage packet pacing (Kamal Heib) [1857602] - [netdrv] net/mlx5: Expose raw packet pacing APIs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Enable the transmit side of the datagram ipoib netdev (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Add capability to switch between datagram and connected mode (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add packet histogram trace event (Kamal Heib) [1857602] - [infiniband] IB/{hfi1, ipoib, rdma}: Broadcast ping sent packets which exceeded mtu size (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Activate the dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add rx functions for dummy netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add interrupt handler functions for accelerated ipoib (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to receive accelerated ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Rename num_vnic_contexts as num_netdev_contexts (Kamal Heib) [1857602] - [infiniband] IB/ipoib: Increase ipoib Datagram mode MTU's upper limit (Kamal Heib) [1857602] - [infiniband] IB/hfi1: RSM rules for AIP (Kamal Heib) [1857602] - [infiniband] IB/{rdmavt, hfi1}: Implement creation of accelerated UD QPs (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Remove module parameter for KDETH qpns (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add the transmit side of a datagram ipoib RDMA netdev (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add functions to transmit datagram ipoib packets (Kamal Heib) [1857602] - [infiniband] IB/hfi1: Add accelerated IP capability bit (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report host information to the device (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Fix setting of wrong bit in get/set_feature commands (Kamal Heib) [1857602] - [infiniband] RDMA/siw: Replace one-element array and use struct_size() helper (Kamal Heib) [1857602] - [net] svcrdma: Fix backchannel return code (Kamal Heib) [1857602] - [net] svcrdma: trace undersized Write chunks (Kamal Heib) [1857602] - [net] svcrdma: Trace page overruns when constructing RDMA Reads (Kamal Heib) [1857602] - [net] svcrdma: Clean up handling of get_rw_ctx errors (Kamal Heib) [1857602] - [net] svcrdma: Clean up the tracing for rw_ctx_init errors (Kamal Heib) [1857602] - [infiniband] RDMA/srpt: Add a newline when printing parameter 'srpt_service_guid' by sysfs (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consolidate ib_create_srq flows (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Fix create WQ to use the given user handle (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Cleanup wq/srq context usage from uverbs layer (Kamal Heib) [1857602] - [rdma] IB/rdmavt: Replace zero-length array with flexible-array (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Increment the refcount inside cm_find_listen() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove needless cm_id variable (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove the cm_free_id() wrapper function (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Make find_remote_id() return a cm_id_private (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Add a note explaining how the timewait is eventually freed (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pass the cm_id_private into cm_cleanup_timewait (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Pull duplicated code into cm_queue_work_unlock() (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove unused store to ret in cm_rej_handler (Kamal Heib) [1857602] - [infiniband] RDMA/cm: Remove return code from add_cm_id_to_port_list (Kamal Heib) [1857602] - [infiniband] RDMA/addr: Mark addr_resolve as might_sleep() (Kamal Heib) [1857602] - [infiniband] RDMA/ucma: Return stable IB device index as identifier (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Initialize the flow label of CM's route path record (Kamal Heib) [1857602] - [infiniband] RDMA/core: Consider flow label when building skb (Kamal Heib) [1857602] - [rdma] RDMA/core: Add hash functions to calculate RoCEv2 flowlabel and UDP source port (Kamal Heib) [1857602] - [infiniband] RDMA: Allow ib_client's to fail when add() is called (Kamal Heib) [1857602] - [infiniband] RDMA/mad: Remove snoop interface (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count admin commands errors (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Count mmap failures (Kamal Heib) [1857602] - [infiniband] RDMA/efa: Report create CQ error counter (Kamal Heib) [1857602] - [infiniband] RDMA/core: Get xmit slave for LAG (Kamal Heib) [1857602] - [infiniband] RDMA/core: Add LAG functionality (Kamal Heib) [1857602] - [infiniband] RDMA: Group create AH arguments in struct (Kamal Heib) [1857602] - [infiniband] RDMA/rw: use DIV_ROUND_UP to calculate nr_ops (Kamal Heib) [1857602] - [infiniband] RDMA/cma: Limit the scope of rdma_is_consumer_reject function (Kamal Heib) [1857602] - [infiniband] IB: Fix some documentation warnings (Kamal Heib) [1857602] - [infiniband] RDMA: Remove a few extra calls to ib_get_client_data() (Kamal Heib) [1857602] - [infiniband] RDMA/uverbs: Make the event_queue fds return POLLERR when disassociated (Kamal Heib) [1857602] - [infiniband] RDMA/rxe: Set default vendor ID (Kamal Heib) [1857602] - [netdrv] bonding: Use fallthrough pseudo-keyword (Jarod Wilson) [1860495] - [netdrv] bonding: fix active-backup failover for current ARP slave (Jarod Wilson) [1860495] - [netdrv] bonding: fix a potential double-unregister (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_alb: Describe alb_handle_addr_collision_on_attach()'s 'bond' and 'addr' params (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_main: Document 'proto' and rename 'new_active' parameters (Jarod Wilson) [1860495] - [netdrv] net: bonding: bond_3ad: Fix a bunch of kerneldoc parameter issues (Jarod Wilson) [1860495] - [netdrv] bonding: show saner speed for broadcast mode (Jarod Wilson) [1868265 1860495] - [netdrv] bonding: check return value of register_netdevice() in bond_newlink() (Jarod Wilson) [1860495] - [netdrv] bonding: check error value of register_netdevice() immediately (Jarod Wilson) [1860495] - [netdrv] bonding: don't need RTNL for ipsec helpers (Jarod Wilson) [1860495] - [netdrv] bonding: deal with xfrm state in all modes and add more error-checking (Jarod Wilson) [1860495] - [netdrv] bonding: allow xfrm offload setup post-module-load (Jarod Wilson) [1860495] - [netdrv] bonding: Remove extraneous parentheses in bond_setup (Jarod Wilson) [1860495] - [netdrv] bonding/xfrm: use real_dev instead of slave_dev (Jarod Wilson) [1860495] - [netdrv] bonding: support hardware encryption offload to slaves (Jarod Wilson) [1860495] - [netdrv] mlx5: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [netdrv] ixgbe_ipsec: become aware of when running as a bonding slave (Jarod Wilson) [1860495] - [net] xfrm: bail early on slave pass over skb (Jarod Wilson) [1860495] - [netdrv] bonding: Fix reference count leak in bond_sysfs_slave_add (Jarod Wilson) [1860495] - [netdrv] bonding: propagate transmit status (Jarod Wilson) [1860495] - [netdrv] bonding: remove useless stats_lock_key (Jarod Wilson) [1860495] - [netdrv] bonding: Implement ndo_get_xmit_slave (Jarod Wilson) [1860495] - [netdrv] bonding: Add array of all slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Add function to get the xmit slave in active-backup mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave in rr mode (Jarod Wilson) [1860495] - [netdrv] bonding: Add helper function to get the xmit slave based on hash (Jarod Wilson) [1860495] - [netdrv] bonding/alb: Add helper functions to get the xmit slave (Jarod Wilson) [1860495] - [netdrv] bonding: Rename slave_arr to usable_slaves (Jarod Wilson) [1860495] - [netdrv] bonding: Export skip slave logic to function (Jarod Wilson) [1860495] - [netdrv] bonding: Remove inclusion of vermagic header (Jarod Wilson) [1860495] - [netdrv] net/bond: Delete driver and module versions (Jarod Wilson) [1860495]- [mm] powerpc/book3s64/radix: Fix boot failure with large amount of guest memory (Steve Best) [1854543] - [powerpc] powerpc/book3s64/radix: Add kernel command line option to disable radix GTSE (Steve Best) [1854543] - [powerpc] powerpc/prom: Enable Radix GTSE in cpu pa-features (Steve Best) [1854543] - [powerpc] powerpc/mm/book3s64/radix: Off-load TLB invalidations to host when !GTSE (Steve Best) [1854543] - [powerpc] powerpc/pseries: H_REGISTER_PROC_TBL should ask for GTSE only if enabled (Steve Best) [1854543] - [powerpc] powerpc/mm: Enable radix GTSE only if supported (Steve Best) [1854543] - [misc] powerpc/64s/radix: introduce options to disable use of the tlbie instruction (Steve Best) [1854543] - [mm] powerpc/64s: remove unnecessary translation cache flushes at boot (Steve Best) [1854543] - [mm] powerpc/64s/pseries: radix flush translations before MMU is enabled at boot (Steve Best) [1854543] - [mm] powerpc/64s: make mmu_partition_table_set_entry TLB flush optional (Steve Best) [1854543] - [mm] powerpc/64s/radix: tidy up TLB flushing code (Steve Best) [1854543] - [mm] powerpc/64s: remove register_process_table callback (Steve Best) [1854543] - [mm] powerpc/mm: Limit resize_hpt_for_hotplug() call to hash guests only (Steve Best) [1854543] - [powerpc] powerpc/mm/radix: Create separate mappings for hot-plugged memory (Steve Best) [1854543] - [mm] powerpc/mm/radix: Remove split_kernel_mapping() (Steve Best) [1854543] - [mm] powerpc/mm/radix: Free PUD table when freeing pagetable (Steve Best) [1854543] - [mm] powerpc/mm/radix: Fix PTE/PMD fragment count for early page table mappings (Steve Best) [1854543] - [mm] powerpc/64s: Fix page table fragment refcount race vs speculative references (Steve Best) [1854543] - [powerpc] powerpc/security: Fix link stack flush instruction (Gustavo Duarte) [1862103] - [powerpc] powerpc/pseries: add new branch prediction security bits for link stack (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: Allow for processors that flush the link stack using the special bcctr (Gustavo Duarte) [1862103] - [powerpc] powerpc/64s: Move branch cache flushing bcctr variant to ppc-ops.h (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: split branch cache flush toggle from code patching (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: make display of branch cache flush more consistent (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: change link stack flush state to the flush type enum (Gustavo Duarte) [1862103] - [powerpc] powerpc/security: re-name count cache flush to branch cache flush (Gustavo Duarte) [1862103] - [kernel] smp: Remove superfluous cond_func check in smp_call_function_many_cond() (Prarit Bhargava) [1882551] - [kernel] smp: Remove allocation mask from on_each_cpu_cond.*() (Prarit Bhargava) [1882551] - [kernel] smp: Add a smp_cond_func_t argument to smp_call_function_many() (Prarit Bhargava) [1882551] - [kernel] smp: Use smp_cond_func_t as type for the conditional function (Prarit Bhargava) [1882551] - [kernel] smp, cpumask: introduce on_each_cpu_cond_mask (Prarit Bhargava) [1882551] - [kernel] smp: use __cpumask_set_cpu in on_each_cpu_cond (Prarit Bhargava) [1882551] - [pci] PCI: Add support for root bus sizing (Myron Stowe) [1886036] - [drm] PCI: Use ioremap(), not phys_to_virt() for platform ROM (Myron Stowe) [1886036] - [pci] PCI: Avoid ASMedia XHCI USB PME# from D0 defect (Myron Stowe) [1886036] - [pci] PCI/ACPI: Move pcie_to_hpx3_typefrom stack to static data (Myron Stowe) [1886036] - [documentation] Documentation: PCI: Add background on Boot Interrupts (Myron Stowe) [1886036] - [pci] PCI: Add boot interrupt quirk mechanism for Xeon chipsets (Myron Stowe) [1886036] - [pci] PCI: Add PCIE_LNKCAP2_SLS2SPEED() macro (Myron Stowe) [1886036] - [pci] PCI: Use pci_speed_string() for all PCI/PCI-X/PCIe strings (Myron Stowe) [1886036] - [pci] PCI: Add pci_speed_string() (Myron Stowe) [1886036] - [pci] PCI: Add 32 GT/s decoding in some macros (Myron Stowe) [1886036] - [powerpc] powerpc/test_emulate_step: Move extern declaration to sstep.h (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/sstep: Introduce macros to retrieve Prefix instruction operands (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Add negative tests for prefixed addi (Desnes Augusto Nunes do Rosario) [1854542] - [powerpc] powerpc/test_emulate_step: Enhancement to test negative scenarios (Desnes Augusto Nunes do Rosario) [1854542] - [netdrv] drivers/net/ibmvnic: Update VNIC protocol version reporting (Steve Best) [1882269] - [s390] s390/zcrypt: fix kmalloc 256k failure (Claudio Imbrenda) [1885963] - [x86] crypto: x86/aesni-gcm - fix crash on empty plaintext (Herbert Xu) [1882868] - [x86] crypto: x86/aesni-gcm - make 'struct aesni_gcm_tfm_s' static const (Herbert Xu) [1882868] - [x86] crypto: aesni - Add scatter/gather avx stubs, and use them in C (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce partial block macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce READ_PARTIAL_BLOCK macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Move ghash_mul to GCM_COMPLETE (Herbert Xu) [1882868] - [x86] crypto: aesni - Fill in new context data structures (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge avx precompute functions (Herbert Xu) [1882868] - [x86] crypto: aesni - Split AAD hash calculation to separate macro (Herbert Xu) [1882868] - [x86] crypto: aesni - Add GCM_COMPLETE macro (Herbert Xu) [1882868] - [x86] crypto: aesni - support 256 byte keys in avx asm (Herbert Xu) [1882868] - [x86] crypto: aesni - Macro-ify func save/restore (Herbert Xu) [1882868] - [x86] crypto: aesni - Introduce gcm_context_data (Herbert Xu) [1882868] - [x86] crypto: aesni - Merge GCM_ENC_DEC (Herbert Xu) [1882868] - [pci] PCI: Add DMA alias quirk for PLX PEX NTB (Myron Stowe) [1884657] - [pci] PCI: Add nr_devfns parameter to pci_add_dma_alias() (Myron Stowe) [1884657] - [pci] PCI: Fix pci_add_dma_alias() bitmask size (Myron Stowe) [1884657] - [pci] PCI/IOV: Fix memory leak in pci_iov_add_virtfn() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 device IDs (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 MRPC GAS access permission check (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 flash information interface support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add Gen4 system info register support (Myron Stowe) [1884657] - [pci] PCI/switchtec: Separate Gen3 register structures into unions (Myron Stowe) [1884657] - [pci] PCI/switchtec: Factor out Gen3 ioctl_flash_part_info() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add 'generation' variable (Myron Stowe) [1884657] - [pci] PCI/switchtec: Rename generation-specific constants (Myron Stowe) [1884657] - [pci] PCI/switchtec: Move check event ID from mask_event() to switchtec_event_isr() (Myron Stowe) [1884657] - [pci] PCI/switchtec: Remove redundant valid PFF number count (Myron Stowe) [1884657] - [pci] PCI/switchtec: Add support for Intercomm Notify and Upstream Error Containment (Myron Stowe) [1884657] - [pci] PCI/switchtec: Fix vep_vector_number ioread width (Myron Stowe) [1884657] - [pci] PCI/switchtec: Use dma_set_mask_and_coherent() (Myron Stowe) [1884657] - [pci] PCI: Allow adjust_bridge_window() to shrink resource if necessary (Myron Stowe) [1884657] - [pci] PCI: Set resource size directly in adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() to adjust_bridge_window() (Myron Stowe) [1884657] - [pci] PCI: Rename extend_bridge_window() parameter (Myron Stowe) [1884657] - [pci] PCI: Consider alignment of hot-added bridges when assigning resources (Myron Stowe) [1884657] - [pci] PCI: Remove local variable usage in pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Pass size + alignment to pci_bus_distribute_available_resources() (Myron Stowe) [1884657] - [pci] PCI: Rename variables (Myron Stowe) [1884657] - [pci] PCI: Remove unnecessary braces (Myron Stowe) [1884657] - [pci] PCI: Don't disable bridge BARs when assigning bus resources (Myron Stowe) [1884657] - [documentation] Documentation: PCI: Fix pci_alloc_irq_vectors() function name typo (Myron Stowe) [1884657] - [pci] PCI: Increase D3 delay for AMD Ryzen5/7 XHCI controllers (Myron Stowe) [1884657] - [pci] PCI: Add generic quirk for increasing D3hot delay (Myron Stowe) [1884657] - [edac] x86/mce, EDAC/mce_amd: Print PPIN in machine check records (Prarit Bhargava) [1860381]- [netdrv] geneve: add transport ports in route lookup for geneve (Mark Gray) [1884481] {CVE-2020-25645} - [drm] PM: sleep: core: Rename DPM_FLAG_NEVER_SKIP (Ivan Vecera) [1867164] - [base] PM: sleep: core: Drop racy and redundant checks from device_prepare() (Ivan Vecera) [1867164] - [mm] mm/page_isolation: fix potential warning from user (Waiman Long) [1811009] - [mm] mm/hotplug: silence a lockdep splat with printk() (Waiman Long) [1811009] - [mm] mm/debug.c: always print flags in dump_page() (Waiman Long) [1811009] - [mm] mm/debug.c: PageAnon() is true for PageKsm() pages (Waiman Long) [1811009] - [mm] mm/debug.c: __dump_page() prints an extra line (Waiman Long) [1811009] - [mm] mm: fix some typos in mm directory (Waiman Long) [1811009] - [mm] mm, fault_around: do not take a reference to a locked page (Waiman Long) [1811009] - [mm] mm: remove the exporting of totalram_pages (Waiman Long) [1880090] - [mm] mm: remove managed_page_count_lock spinlock (Waiman Long) [1880090] - [mm] mm: convert totalram_pages and totalhigh_pages variables to atomic (Waiman Long) [1880090] - [mm] mm: convert zone->managed_pages to atomic variable (Waiman Long) [1880090] - [net] mm: reference totalram_pages and managed_pages once per function (Waiman Long) [1880090] - [mm] mm/page_alloc: Introduce free_area_init_core_hotplug (Waiman Long) [1880090] - [mm] mm/page_alloc: inline function to handle CONFIG_DEFERRED_STRUCT_PAGE_INIT (Waiman Long) [1880090] - [mm] mm: remove __paginginit (Waiman Long) [1880090] - [mm] mm: access zone->node via zone_to_nid() and zone_set_nid() (Waiman Long) [1880090] - [mm] mm, page_alloc: double zone's batchsize (Waiman Long) [1880090] - [powerpc] powerpc/pseries/cmm: fix managed page counts when migrating pages between zones (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: drain per-cpu pages again during memory offline (Chris von Recklinghausen) [1754739] - [mm] mm: move nr_deactivate accounting to shrink_active_list() (Chris von Recklinghausen) [1754739] - [mm] sh: fix build error in mm/init.c (Chris von Recklinghausen) [1754739] - [mm] mm/memremap: set caching mode for PCI P2PDMA memory to WC (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: add pgprot_t to mhp_params (Chris von Recklinghausen) [1754739] - [mm] powerpc/mm: thread pgprot_t through create_section_mapping() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: thread pgprot_t through init_memory_mapping() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: rename mhp_restrictions to mhp_params (Chris von Recklinghausen) [1754739] - [include] mm/memory_hotplug: drop the flags field from struct mhp_restrictions (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: cleanup __add_pages() (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: fix page online with DEBUG_PAGEALLOC compiled but not enabled (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Enable memory hot remove (Chris von Recklinghausen) [1754739] - [firmware] arm/efi: EFI soft reservation to memblock (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: convert mm/dump.c to use walk_page_range() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: drop valid_start/valid_end from test_pages_in_a_zone() (Chris von Recklinghausen) [1754739] - [base] mm/memory_hotplug: pass in nid to online_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove "count" parameter from has_unmovable_pages() (Chris von Recklinghausen) [1754739] - [base] mm: remove the memory isolate notifier (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Disable instrumentation in the EFI runtime handling code (Chris von Recklinghausen) [1754739] - [x86] efi/x86: avoid KASAN false positives when accessing the 1: 1 mapping (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Limit EFI old memory map to SGI UV machines (Chris von Recklinghausen) [1754739] - [x86] efi/libstub/x86: Fix unused-variable warning (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify mixed mode call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Simplify 64-bit EFI firmware call wrapper (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split SetVirtualAddresMap() wrappers into 32 and 64 bit versions (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Split off some old memmap handling into separate routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Re-disable RT services for 32-bit kernels running on 64-bit EFI (Chris von Recklinghausen) [1754739] - [x86] efi/libstub: Distinguish between native/mixed not 32/64 bit (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Extend native protocol definitions with mixed_mode aliases (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub: Use a helper to iterate over a EFI handle array (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Rename efi_is_native() to efi_is_mixed() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Unify 32/64-bit functions (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Convert GOP structures to typedef and clean up some types (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove unused typedef (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Remove bogus packed attribute from GOP structures (Chris von Recklinghausen) [1754739] - [firmware] efi/libstub/random: Initialize pointer variables to zero for mixed mode (Chris von Recklinghausen) [1754739] - [firmware] efi: Fix efi_loaded_image_t::unload type (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Fix memory leak in __gop_query32/64() (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_SUCCESS if a usable GOP was found (Chris von Recklinghausen) [1754739] - [firmware] efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs (Chris von Recklinghausen) [1754739] - [hv] mm/memory_hotplug.c: remove __online_page_set_limits() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: don't allow to online/offline memory blocks with holes (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: convert SKIP_HWPOISON to MEMORY_OFFLINE (Chris von Recklinghausen) [1754739] - [mm] mm/page_alloc.c: don't set pages PageReserved() when offlining (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove __online_page_free() and __online_page_increment_counters() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: add a bounds check to __add_pages() (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix NMI vs ESPFIX (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unwind the ESPFIX stack earlier on exception entry (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Move FIXUP_FRAME after pushing fs in SAVE_ALL (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Simplify common_exception (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Use ss segment where required (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Fix IRET exception (Chris von Recklinghausen) [1754739] - [x86] x86/xen/32: Make xen_iret_crit_fixup() independent of frame layout (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Repair 32-bit Xen PV (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Allow int3_emulate_push() (Chris von Recklinghausen) [1754739] - [x86] x86: Hide the int3_emulate_call/jmp functions from UML (Chris von Recklinghausen) [1754739] - [x86] ftrace/x86_64: Emulate call function while updating in breakpoint handler (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe/32: Provide consistent pt_regs (Chris von Recklinghausen) [1754739] - [x86] kprobes, x86/ptrace.h: Make regs_get_kernel_stack_nth() not fault on bad stack (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/ftrace: Add pt_regs frame annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe, x86/kprobes: Fix frame pointer annotations (Chris von Recklinghausen) [1754739] - [x86] x86/stackframe: Move ENCODE_FRAME_POINTER to asm/frame.h (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clean up return from interrupt preemption path (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Simulation mode (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Switch to balloon_page_alloc() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement balloon compaction (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Convert loaned_pages to an atomic_long_t (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Rip out memory isolate notifier (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Use adjust_managed_page_count() insted of totalram_pages_* (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Drop page array (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Cleanup rc handling in cmm_init() (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Report errors when registering notifiers fails (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries/cmm: Implement release() function for sysfs device (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Push EFI_MEMMAP check into leaf routines (Chris von Recklinghausen) [1754739] - [mm] powerpc: Don't flush caches when adding memory (Chris von Recklinghausen) [1754739] - [firmware] efi/random: use arch-independent efi_call_proto() (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Don't evaluate exception stacks before setup (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Mark pages PG_offline in balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Drop __balloon_append() (Chris von Recklinghausen) [1754739] - [xen] xen/balloon: Set pages PageOffline() in balloon_add_region() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: prevent memory leak when reusing pgdat (Chris von Recklinghausen) [1754739] - [base] drivers/base/memory.c: don't store end_section_nr in memory blocks (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug: remove move_pfn_range() (Chris von Recklinghausen) [1754739] - [mm] mm: introduce compound_nr() (Chris von Recklinghausen) [1754739] - [x86] x86/asm: Make some functions local labels (Chris von Recklinghausen) [1754739] - [firmware] efi-stub: Fix get_efi_config_table on mixed-mode setups (Chris von Recklinghausen) [1754739] - [x86] efi/x86: move UV_SYSTAB handling into arch/x86 (Chris von Recklinghausen) [1754739] - [x86] efi: x86: move efi_is_table_address() into arch/x86 (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: remove unneeded return for void function (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove redundant CLACs in getuser/putuser error paths (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Remove ELF function annotation from copy_user_handle_tail() (Chris von Recklinghausen) [1754739] - [x86] x86/entry: Fix thunk function ELF sizes (Chris von Recklinghausen) [1754739] - [x86] x86/entry/64: Simplify idtentry a little (Chris von Recklinghausen) [1754739] - [mm] mm: vmscan: correct some vmscan counters for THP swapout (Chris von Recklinghausen) [1754739] - [mm] mm/gup: speed up check_and_migrate_cma_pages() on huge page (Chris von Recklinghausen) [1754739] - [x86] x86/ldt: Initialize the context lock for init_mm (Chris von Recklinghausen) [1754739] - [powerpc] powerpc/pseries: avoid blocking in irq when queuing hotplug events (Chris von Recklinghausen) [1754739] - [arm64] arm64/mm: don't initialize pgd_cache twice (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: fix recent_rotated history (Chris von Recklinghausen) [1754739] - [x86] efi/x86/Add missing error handling to old_memmap 1:1 mapping code (Chris von Recklinghausen) [1754739] - [mm] arm64/mm: Inhibit huge-vmap with ptdump (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: simplify shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: cleanup memory offline path (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix the wrong usage of N_HIGH_MEMORY (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop redundant hugepage_migration_supported check (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: unlock 1GB-hugetlb on x86_64 (Chris von Recklinghausen) [1754739] - [mm] mm: move recent_rotated pages calculation to shrink_inactive_list() (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Initialize PGD cache during mm initialization (Chris von Recklinghausen) [1754739] - [x86] x86/alternatives: Initialize temporary mm for patching (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Fix a crash with kmemleak_scan() (Chris von Recklinghausen) [1754739] - [x86] x86/irq: Fix outdated comments (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: treat CMA pages as unmovable (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove stack overflow debug code (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remap the IRQ stack with guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Split the IRQ stack into its own pages (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Init hardirq_stack_ptr during CPU hotplug (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Handle irq stack allocation failure proper (Chris von Recklinghausen) [1754739] - [xen] x86/irq/32: Invoke irq_ctx_init() from init_IRQ() (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Rename irq_stack_ptr to hardirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Rename hard/softirq_stack to hard/softirq_stack_ptr (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Make irq stack a character array (Chris von Recklinghausen) [1754739] - [x86] x86/irq/32: Define IRQ_STACK_SIZE (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Speedup in_exception_stack() (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Split debug IST stack (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Enable IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Disconnect IST index and stack order (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Remove orig_ist array (Chris von Recklinghausen) [1754739] - [x86] x86/cpu: Prepare TSS.IST setup for guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack/64: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Use cpu entry area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/traps: Use cpu_entry_area instead of orig_ist (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Provide exception stack accessor (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Prepare for IST guard pages (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Add structs for exception stacks (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Cleanup setup functions (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Make IST index zero based (Chris von Recklinghausen) [1754739] - [x86] x86/exceptions: Remove unused stack defines on 32bit (Chris von Recklinghausen) [1754739] - [x86] x86/64: Remove stale CURRENT_MASK (Chris von Recklinghausen) [1754739] - [x86] x86/idt: Remove unused macro SISTG (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Sanitize the top/bottom confusion (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Remove a hardcoded irq_stack_union access (Chris von Recklinghausen) [1754739] - [x86] x86/dumpstack: Fix off-by-one errors in stack identification (Chris von Recklinghausen) [1754739] - [x86] x86/irq/64: Limit IST stack overflow check to #DB stack (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: Consolidate early page table allocation (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: don't call page table ctors for init_mm (Chris von Recklinghausen) [1754739] - [mm] arm64: mm: use appropriate ctors for page tables (Chris von Recklinghausen) [1754739] - [x86] x86/uaccess: Move copy_user_handle_tail() into asm (Chris von Recklinghausen) [1754739] - [mm] mm/page_isolation.c: fix a wrong flag in set_migratetype_isolate() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: fix notification in offline error path (Chris von Recklinghausen) [1754739] - [mm] mm/hotplug: fix an imbalance with DEBUG_PAGEALLOC (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: explicitly pass the head to isolate_huge_page (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: do not allocate duplicate stack variables in shrink_page_list() (Chris von Recklinghausen) [1754739] - [mm] mm: refactor swap-in logic out of shmem_getpage_gfp (Chris von Recklinghausen) [1754739] - [mm] mm/vmscan.c: remove 7th argument of isolate_lru_pages() (Chris von Recklinghausen) [1754739] - [mm] mm: remove extra drain pages on pcp list (Chris von Recklinghausen) [1754739] - [mm] mm/memory-hotplug: Allow memory resources to be children (Chris von Recklinghausen) [1754739] - [kernel] mm/resource: Move HMM pr_debug() deeper into resource code (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: fix off-by-one in is_pageblock_removable (Chris von Recklinghausen) [1754739] - [mm] x86/cpu_entry_area: Move percpu_setup_debug_store() to __init section (Chris von Recklinghausen) [1754739] - [mm] arm64: ptdump: Don't iterate kernel page tables using PTRS_PER_PXX (Chris von Recklinghausen) [1754739] - [firmware] efi: Use 32-bit alignment for efi_guid_t (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: __offline_pages fix wrong locking (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: don't bail out in do_migrate_range() prematurely (Chris von Recklinghausen) [1754739] - [mm] arm64: dump: no need to check return value of debugfs_create functions (Chris von Recklinghausen) [1754739] - [x86] x86/asm/suspend: Drop ENTRY from local data (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: deobfuscate migration part of offlining (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: try to migrate full pfn range (Chris von Recklinghausen) [1754739] - [mm] mm, hotplug: move init_currently_empty_zone() under zone_span_lock protection (Chris von Recklinghausen) [1754739] - [mm] mm: only report isolation failures when offlining memory (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: be more verbose for memory offline failures (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: print reason for the offlining failure (Chris von Recklinghausen) [1754739] - [mm] mm, memory_hotplug: drop pointless block alignment checks from __offline_pages (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Don't unmap EFI boot services code/data regions for EFI_OLD_MEMMAP and EFI_MIXED_MODE (Chris von Recklinghausen) [1754739] - [x86] kprobes/x86: Blacklist non-attachable interrupt functions (Chris von Recklinghausen) [1754739] - [include] linkage: add generic GLOBAL() macro (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Move efi__boot_services() to arch/x86 (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Unmap EFI boot services code/data regions from efi_pgd (Chris von Recklinghausen) [1754739] - [mm] x86/mm/pageattr: Introduce helper function to unmap EFI boot services (Chris von Recklinghausen) [1754739] - [x86] x86/fpu: Use the correct exception table macro in the XSTATE_OP wrapper (Chris von Recklinghausen) [1754739] - [firmware] efi/arm/libstub: Pack FDT after populating it (Chris von Recklinghausen) [1754739] - [x86] x86/traps: Complete prototype declarations (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: clean up node_states_check_changes_offline() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: simplify node_states_check_changes_online (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: tidy up node_states_clear_node() (Chris von Recklinghausen) [1754739] - [mm] mm/memory_hotplug.c: spare unnecessary calls to node_set_state (Chris von Recklinghausen) [1754739] - [include] include/linux/linkage.h: align weak symbols (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_add_to_page_cache to XArray (Chris von Recklinghausen) [1754739] - [mm] shmem: Convert shmem_radix_tree_replace to XArray (Chris von Recklinghausen) [1754739] - [mm] mm: Convert add_to_swap_cache to XArray (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Clear the CS high bits (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Set up temporary text mapping for 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Switch to original page table after resumed (Chris von Recklinghausen) [1754739] - [x86] x86-32, hibernate: Enable CONFIG_ARCH_HIBERNATION_HEADER on 32bit system (Chris von Recklinghausen) [1754739] - [x86] x86, hibernate: Extract the common code of 64/32 bit system (Chris von Recklinghausen) [1754739] - [x86] x86-32/asm/power: Create stack frames in hibernate_asm_32.S (Chris von Recklinghausen) [1754739] - [x86] PM / hibernate: Check the success of generating md5 digest before hibernation (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() before setting cr3 (Chris von Recklinghausen) [1754739] - [x86] x86/xen: Move pv irq related functions under CONFIG_XEN_PV umbrella (Chris von Recklinghausen) [1754739] - [x86] x86/extable: Introduce _ASM_EXTABLE_UA for uaccess fixups (Chris von Recklinghausen) [1754739] - [x86] x86/efi: Load fixmap GDT in efi_call_phys_epilog() (Chris von Recklinghausen) [1754739] - [tools] tools arch: Update arch/x86/lib/memcpy_64.S copy used in 'perf bench mem memcpy' (Chris von Recklinghausen) [1754739] - [mm] x86/mm: Remove redundant check for kmem_cache_create() (Chris von Recklinghausen) [1754739] - [x86] x86/power/hibernate_64: Remove VLA usage (Chris von Recklinghausen) [1754739] - [firmware] efi: Deduplicate efi_open_volume() (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge 32-bit and 64-bit UGA draw protocol setup routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Align efi_uga_draw_protocol typedef names to convention (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Merge the setup_efi_pci32() and setup_efi_pci64() routines (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Prevent reentrant firmware calls in mixed mode (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add debug code to check entry/exit CR3 (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI CR3 switches to NMI handler code (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Add PTI cr3 switch to non-NMI entry/exit points (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Handle Entry from Kernel-Mode on Entry-Stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Introduce SAVE_ALL_NMI and RESTORE_ALL_NMI (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Leave the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Enter the kernel via trampoline stack (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Load task stack from x86_tss.sp1 in SYSENTER handler (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Split off return-to-kernel path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Unshare NMI return path (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Put ESPFIX code into a macro (Chris von Recklinghausen) [1754739] - [x86] x86/entry/32: Rename TSS_sysenter_sp0 to TSS_entry2task_stack (Chris von Recklinghausen) [1754739] - [x86] efi/x86: Clean up the eboot code (Chris von Recklinghausen) [1754739] - [x86] x86/asm/64: Use 32-bit XOR to zero registers (Chris von Recklinghausen) [1754739] - [x86] Revert "x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport sn_coherency_id" (Frank Ramsay) [1833121] - [x86] Revert "x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c" (Frank Ramsay) [1833121] - [x86] x86/apic: Cleanup the include maze (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Fix missing checks of kcalloc() return values (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Replace kmalloc() and memset() with kalloc() calls (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the unused _uv_cpu_blade_processor_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport uv_apicid_hibits (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove _uv_hub_info_check() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Simplify uv_send_IPI_one() (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_min_hub_revision_id static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark is_uv_hubless() static (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the UV*_HUB_IS_SUPPORTED macros (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport symbols only used by x2apic_uv_x.c (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Unexport sn_coherency_id (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Remove the uv_partition_coherence_id() macro (Frank Ramsay) [1833121] - [x86] x86/platform/uv: Mark uv_bios_call() and uv_bios_call_irqsave() static (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Mark memblock related init code and data correctly (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove unnecessary #ifdef CONFIG_EFI (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Remove uv_bios_call_reentrant() (Frank Ramsay) [1833121] - [x86] x86/platform/UV: Use efi_enabled() instead of test_bit() (Frank Ramsay) [1833121] - [x86] x86/apic/uv: Remove code for unused distributed GRU mode (Frank Ramsay) [1833121]- [thermal] thermal/x86_pkg_temp: Make pkg_temp_lock a raw_spinlock_t (Prarit Bhargava) [1890657] - [net] sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels (Davide Caratti) [1889601] - [netdrv] ibmveth: Identify ingress large send packets (Gustavo Duarte) [1887038] - [netdrv] ibmveth: Switch order of ibmveth_helper calls (Gustavo Duarte) [1887038] - [sound] ALSA: redhat: add drivers/soundwire tree and regmap-sdw to the redhat/filter-modules.sh (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable AMD Renoir support for DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC - enable the Intel's SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix jack detection with Realtek codecs when in D3 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use semicolons rather than commas to separate statements (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/i915 - fix list corruption with concurrent probes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The front Mic on a HP machine doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: hdspm: Fix typo arbitary (Jaroslav Kysela) [1869536] - [sound] ALSA: bebob: potential info leak in hwdep_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint.c: fix repeated word 'there' (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: fix repeated word 'if' (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: handle all SOF_IPC_EXT types (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Mark FE DAIs as nonatomic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add version_id to avoid rt714/rt715 confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715-sdw: probe with RT714 Device ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1316: add missing component string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: add extra check on init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: add ifdef CONFIG_OF around of_device_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Enable MI2S BCLK and LRCLK together (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: add codec prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Remove ti, asi-format code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Set regcache when shutting down and waking device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add shutdown capability via a GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Remove duplicate code for I/V sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: Intel: sof_sdw: restore playback functionality with max98373 amps (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add support for new SoundWire hardware layout on TGL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove hard-coded codec_conf table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: remove ternary operator (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_max98090: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hda_dsp_common: use static function in conditional block (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-mc13783: use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Pass full name to snd_ctl_notify (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Add power-up delay to fix dmic pop sound issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable the power of "MICBIAS" and "Vref2" for the DMIC clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: allow runtime pm at end of probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: add codec name prefix to ACPI machine description (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sysfs: add slave status and device number before probe (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add enumerated Slave device to device list (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove an unnecessary NULL check (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add data port test fail interrupt (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: enable test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: enable Data Port test modes (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - set mic to auto detect on a HP AIO machine (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Don't register a cb func if it is registered already (Jaroslav Kysela) [1869536] - [sound] ALSA: HDA: Early Forbid of runtime PM (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - remove kerneldoc for internal hdac_i915 function (Jaroslav Kysela) [1869536] - [sound] ALSA: ctl: Workaround for lockdep warning wrt card->ctl_files_rwlock (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Disable autosuspend for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Remove uninitialized_var() usage (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: arm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: add dpcm_create/remove_debugfs_state() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: move CONFIG_DEBUG_FS functions to top side (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: magician: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Enable AC'97 bus support for PXA machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: Select regmap from AC'97 machines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support TDM out and 8ch I2S out (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: fix external clock probe defer (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: keywest: convert to use i2c_new_client_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: Use sizeof_field() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Set ops to NULL on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: More constifications (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: ppc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1869536] - [sound] ALSA: vxpocket: Support PCM sync_stop (Jaroslav Kysela) [1869536] - [sound] ALSA: mips: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: i2c: Constify snd_device_ops definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: arm: More constification (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jaroslav Kysela) [1869536] - [sound] ALSA: treewide: replace '---help---' in Kconfig files with 'help' (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix SPDX license for header file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac: make SOF HDA codec driver probe deterministic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Refactor sample rate function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix the spacing and new lines (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Convert bit mask to GENMASK in header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix unbalanced calls to pm_runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2110 class-D amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: add size checks for ext_bytes control .put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for volatile ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: fix size checks for ext_bytes control .get() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Enable fast charge (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tlv320aic32x4: Ensure a minimum delay before clock stabilization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix error handling with update_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix required DT properties in the code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Add missing bias level power states (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix calling reset in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: wait for the delayed work to finish when the system suspends (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add the TAS2564 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add missing MODULE_LICENSE() for imx-common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: Fix prepare callback behavior for OF usecase (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cs42l51: add additional ADC volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the process being scheduled on core0 always (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix CONTROLLER_IN_GPU macro name (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - handle multiple i915 device instances (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - controller is in GPU on the DG1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - add Intel DG1 PCI and HDMI ids (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO" (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add delay quirk for H570e USB headsets (Jaroslav Kysela) [1869536] - [sound] ALSA: compat_ioctl: avoid compat_alloc_user_space (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix spellint typo in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation P520 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: fix iounmap in error handler (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use {u32|u16}p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use u32p_replace_bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: get max rows and cols info from compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support to block packing mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: clear BIT FIELDs before value set (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Add generic bandwidth allocation algorithm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add DSD support for ak4458 and ak4497 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add MODULE_DEVICE_TABLE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Add support for tgl-h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: do software reset before clock registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv320aic32x4: fix missing aic32x4_disable_regulators() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set MCLK input or output direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add fsl_sai_check_version function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add new added registers and new bit definition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-clocks: add q6afe clock controller (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity of boot error logs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix range checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove several superfluous type-casts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) remove redundant "ret" variable uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: control: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: debug: update test for pm_runtime_get_sync() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add `src_hash` to `sof_ipc_fw_version` structure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add debug support for imx platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: disable size checks for bytes_ext controls if needed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_audmix: make clock and output src write only (Jaroslav Kysela) [1869536] - [sound] ALSA: remove calls to usb_pipe_type_check for control endpoints (Jaroslav Kysela) [1869536] - [sound] ALSA: hiface: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: 6fire: move to use usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: usx2y: move to use usb_control_msg_send() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: add usb_control_msg_send() and usb_control_msg_recv() (Jaroslav Kysela) [1869536] - [sound] ALSA: USB: move snd_usb_pipe_sanity_check into the USB core (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix the failure to flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Fix DC calibration on bypass boost mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm32: sai: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: rockchip_i2s: fix a possible divide-by-zero bug in rockchip_i2s_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Use DMI oem string search for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: s/master/primary (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: remove the HDA_DSP_CORE_MASK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify core_power_up/down op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: rename cores_mask to host_managed_cores_mask (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Add support for j7200-cpb audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015p (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe-dai: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add codec lpass clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: update q6afe_set_param to support global clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add lpass hw voting support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add global q6afe waitqueue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: prepare afe_apr_send_pkt to take response opcode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6routing: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6dsp: q6afe: add support to Codec DMA ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: dt-bindings: Add q6afe display_port dt binding (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015p: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: add parity error injection through debugfs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: export broadcast read/write capability for tests (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: realtek-soundwire: ignore initial PARITY errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use quirk to filter out invalid parity errors (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: add first_interrupt_done status (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: filter-out unwanted interrupt reports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC/soundwire: bus: use property to set interrupt masks (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Remove unused inline function snd_mask_sizeof (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: Remove unused function hpi_stream_group_get_map() (Jaroslav Kysela) [1869536] - [sound] ALSA: mixart: Correct comment wrt obsoleted tasklet usage (Jaroslav Kysela) [1869536] - [sound] ALSA: aloop: Replace tasklet with work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mchp-spdiftx: add driver for S/PDIF TX Controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix SLIBMUS/SLIMBUS typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: fix race condition between suspend and Slave device alerts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-es8328: add missing put_device() call in imx_es8328_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse auxiliary devices from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mt6359: fix failed to parse DT properties (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Implement snd_sof_bytes_ext_volatile_get kcontrol IO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Add support for WO and RO TLV byte kcontrols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Kconfig: Allow the j721e machine driver to be used on K3 platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix warning potential ! vs ~ typo (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add v1.5.1 compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: dt-bindings: soundwire: add bindings for Qcom controller (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: add support for mmio soundwire master devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: avoid dependency on CONFIG_SLIMBUS (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix abh/ahb typo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: make process type optional (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mux (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_process (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_tone (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_host (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_volume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: append extended data to sof_ipc_comp_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add helper for setting up IPC component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: use the sof_ipc_comp reserved bytes for extended data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: parse comp_ext_tokens for all widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: create component extended tokens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add comp_ext to struct snd_sof_widget (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: tokens: add token for component UUID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Manage module clock via DAPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Attach the bus clock to the regmap (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Sort masks in a consistent order (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix field bit number indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix ADC_DIG_CTRL field name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_MXR_SRC field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1_ADCDAT_CTRL field names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix AIF1 MODCLK widget name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Remove extraneous widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .prepare and .hw_free callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add dailink .trigger callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: clarify return value for get_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream handling from .prepare and .hw_free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove .trigger operation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix NULL/ERR_PTR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: fix NULL/IS_ERR confusion (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove SDW_REG_SHIFT() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom : use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: use FIELD_{GET|PREP} (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: use SDW_DISCO_LINK_ID() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: use FIELD_GET() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: define and use addr bit masks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix core enable sequence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: support topology components on secondary cores (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a "core" parameter to widget loading functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Set SAI Channel Mode to Output Mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Support multiple data channel enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't manage link power individually (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pass link_mask information to each master (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add error log for clock-stop invalid configs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: enable hw_sync as needed by hardware (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link hw_synchronization information (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: update multi-link definition with hw sync details (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add missing support for all clock stop modes (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add multi-link support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: ignore software command retries (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: disable shim wake on suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix port_readydynamic allocation in mipi_disco (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definition for maximum number of ports (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: soundwire: remove port_readyusage from codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: vx: vx_core: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: ac97: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: (cosmetic) align argument names (Jaroslav Kysela) [1869536] - [sound] ALSA: usb: scarless_gen2: fix endianness issue (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: auto_parser: remove shadowed variable declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: aoa: i2sbus: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: core: init: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: compress_offload: dereference after checking for NULL pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: clarify operator precedence (Jaroslav Kysela) [1869536] - [sound] ALSA: core: timer: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_memory: dereference pointer after NULL checks (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm: simplify locking for timers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Prefer async probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: remove artificial component and DAI name constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: shutdown codec when changing filter type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Clean kernel log from deferred probe error messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify error handling during FW boot (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add sof_tgl_ops for TGL platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Define FW boot sequence with ICCMAX (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: define macro for code loader stream format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: modify the signature of get_stream_with_tag() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Add helper function to program ICCMAX stream (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Remove unused parameters in cl_dsp_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix VS_LTRC register name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-of-dev: Add .arch_ops field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Replace sdev->private with sdev->pdata->hw_pdata (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: add extended rom status dump to error log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix the ipc_size calculation for process component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: intel: hda: support also devices with 1 and 3 dmics (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: report error only for the last ROM init iteration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Add debug box region (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: Parse debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: fix memory leak in get_ext_windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: make sof_ipc_window monosized (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix intel_suspend/resume defined but not used warning (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 exit commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 custom controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add AE-7 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add output selection for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add pre-init function for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add ca0132_mmio_init data for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Set AE-7 bools and select mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add SoundBlaster AE-7 pincfg (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix Recon3D Center/LFE output (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add quirk output selection structures (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Remove surround output selection (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add bass redirection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add full-range speaker selection controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add surround channel config control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add speaker tuning initialization commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Cleanup ca0132_mmio_init function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: tidy up a memset() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: acpi: add dev_dbg() log for probe completion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: IPC: reduce verbosity of IPC pointer updates (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: reduce the log level for unhandled widgets (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: remove unnecessary memory alloc for sdev->private (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: (cosmetic) use the "bool" type where it makes sense (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Add -EPROBE_DEFER check for regmap init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak5558: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: clean-up inclusion of header files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add rt711 rt1316 rt714 SDCA codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add topology filename override based on dmi data match (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_rt5682: override quirk data for tgl_max98373_rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: Intel: sof_sdw: Add support for product Ripto (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: rename id as part_id (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: check SoundWire version when matching codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373-sdw: add missing test on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: add support for SDCA boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: mirror CML and TGL configurations (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-soundwire: add support for rt5682 on link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl: add support for rt5682 on SoundWire link2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: modify SoundWire version id in acpi match table (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Correct wrongly matching entries with audio class (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix I/O voltage range configuration during probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: add .exit callback function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: add support for TLV320AIC32x4 codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add build support for SoundWire (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add missing out of memory check on drvdata->clks allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6359: add codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Properly match with audio interface class (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Simplify quirk entries with a macro (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Move device rename and profile quirks to an internal table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Hook up component probe function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: avoid hardcoded S3C2410_PA_IIS (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: rx1950: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: neo1973: turn into platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: use SDW_SLAVE_ENTRY_EXT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Update naming in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Get "extal" clock rate by clk_get_rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: add a dedicated menuconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Export DAC/ADC monomix switches (Jaroslav Kysela) [1869536] - [sound] ALSA: remove duplicate "the the" phrase in Kconfig text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm0010: use DECLARE_COMPLETION_ONSTACK() macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card: Use snd_soc_of_parse_aux_devs() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Add common helper to parse aux devs from device tree (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ak4458: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hdmi: support 'ELD' mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/soc/intel: Fix spelling mistake "cant" --> "can't" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: various vendors: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-topology: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: sst-utils: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: cldma: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: skl-nhlt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell-ipc: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Baytrail: (cosmetic) align function parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: (cosmetic) align parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_loader: remove always-true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove useless assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: fix redundant return (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst_pvt: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: remove redundant initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst: remove useless NULL assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: platform-pcm: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: compress: remove redundant assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Atom: sst-atom-controls: remove redundant assignments (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: refine runtime pm for SDW_INTEL_CLK_STOP_BUS_RESET (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: support clock_stop mode without quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: handle power rail dependencies for clock stop mode (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_NOT_ALLOWED support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_BUS_RESET support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add CLK_STOP_TEARDOWN for pm_runtime suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: pm_runtime idle scheduling (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reinitialize IP+DSP in .prepare(), but only when resuming (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: call helper to reset Slave states on resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix race condition on system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reset pm_runtime status during system resume (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add pm_runtime support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Fix clock handling around codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move soft reset handling to codec level probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7219: Move required devm_* allocations to device level code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add support to copy callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add gapless support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: prepare set params to accept profile change (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm-dai: add next track metadata support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to gapless flag in q6asm open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add support to remove intial and trailing silence (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add length to write command token (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: use flags directly from q6asm-dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: make commands specific to streams (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: rename misleading session id variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Enable TDM audio capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Moving GPIO reset and add ADC reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Increased maximum supported channels (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: tlv3204: Enable 24 bit audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for earpiece switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for line out switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make line out routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Enable DAPM for headphone switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Make headphone routes stereo (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Group and sort mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Gate the amplifier clock during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun50i-codec-analog: Fix duplicate use of ADC enable bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: simplify return handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: rename shadowed variable for all broadwell boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda-codec: move variable used conditionally (Jaroslav Kysela) [1869536] - [sound] ALSA: ASOC: SOF: Intel: hda-codec: move unused label to correct position (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add a quirk for LRCK inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Add missing mixer routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sun8i-codec: Fix DAPM to match the hardware topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Replace synchronous check with fsl_sai_dir_is_synced (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Drop TMR/RMR settings for synchronous mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine enable/disable TE/RE sequence in trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Use platform_get_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Use platform_get_resource (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-sc7180: Add platform driver for lpass audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: fix concurrency issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass: Use regmap_field for i2sctl and dmactl registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: fix memory leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-platform: Replace card->dev with component->dev (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Move ahbix clk to platform specific function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Add common array to initialize soc based core clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Use dev_dbg() in rt5682_clk_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: Add basic power management support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: enable pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add argument to function definition (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add module_sdw_driver helper macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix indentation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: sdw.h: fix PRBS/Static_1 swapped definitions (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: virmidi: Fix running status after receiving sysex (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: use pci_status_get_and_clear_errors (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - The Mic on a RedmiBook doesn't work (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fixup headset for ASUS GX502 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix double free of dangling pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: use consistent HDAudio spelling in comments/docs (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add dev_dbg log when driver is not selected (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: hdmi - add Rocketlake support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Fix power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Ensure the device is resumed in wm89xx_mic_detect functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Skip setting of the WM8994_MICBIAS register for WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A PRO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-toddr: fix channel order on g12 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: add snd_soc_find_dai_with_mutex() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: always check pin power status in i915 pin fixup (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Fix refcount imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt700: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt715: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt711: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1308-sdw: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: Fix return check for devm_regmap_init_sdw() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for UR22C (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fixup ams_delta_mute() function name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pcm3168a: ignore 0 Hz settings (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: Add support for Loongson 7A1000 controller" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Program WAKEEN register for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix 2 channel swapping for Tegra (Jaroslav Kysela) [1869536] - [sound] ALSA: ca0106: fix error code handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: tgl_max98373: fix a runtime pm issue in multi-thread case (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-digi00x: exclude Avid Adrenaline from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ALSA; firewire-tascam: exclude Tascam FE-8 from detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Set card->owner to avoid warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: Add period size constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: avoid reset of sdo_limit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in autosuspend delay (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: fix typo in comment on INTSTAT registers (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: ignore broken processing/extension unit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: Fix memleak in sst_media_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Avoid attempts to read unreadable registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: msm8916-wcd-analog: fix register Interrupt offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: Prevent access to invalid VU register bits on WM1811 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add model alc298-samsung-headphone (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Update documentation comment for MS2109 quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: fix spelling mistakes in the comments (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add capture support for Saffire 6 (USB 1.1) (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Galaxy Flex Book (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Fix potential Oops in snd_echo_resume() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Use force connectivity quirk on another HP desktop (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6routing: add dummy register read/write function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe-dai: mark all widgets registers as SND_SOC_NOPM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Make soc_component_read() returning an error code again (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - reverse the setting value in the micmute_led_set (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaduio: Drop superfluous volatile modifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Replacing component->name with codec_dai->name (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Pioneer DDJ-RB (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix pin default on Intel NUC 8 Rugged (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fix spelling mistake "buss" -> "bus" (Jaroslav Kysela) [1869536] - [sound] ALSA: pci: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: isa: delete repeated words in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Add 100us dma stop delay (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add dma stop delay variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hda/tegra: Set buffer alignment to 128 bytes (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: Serialize ioctls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add quirk to force connectivity (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add startech usb audio dock name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_i2s: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_dmic: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_ahub: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra210_admaif: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra186_dspk: Fix compile warning with CONFIG_PM=n (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add support for Lenovo ThinkStation P620 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: renoir: restore two more registers during resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not remove ADDITIONAL_CONTROL_4 from readable register list (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Remove fsl_asoc_card_set_bias_level function (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda: call runtime_allow() for all hda controllers" (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix AE-5 microphone selection commands (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Add new quirk ID for Recon3D (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Two step component registration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Simplify snd_soc_component_initialize declaration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Relocate and expose snd_soc_component_initialize (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: Replace 'select' DMADEVICES 'with depends on' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Fix value of FSL_SAI_CR1_RFW_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: use less strict tests for dailink capabilities (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rk3399_gru_sound: Add DAPM pins, kcontrols for jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Do not access WM8962_GPIO_BASE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: use resource_size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: drop unnecessary list_empty (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Added hw_params support for ALC1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Passing card structure based on codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Renaming snd-soc-card structure and fields (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add sound support for Midas boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Rework disable channel function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KMB: Add 8kHz audio support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Fix regression causing sysfs entries to disappear (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-formatters: fix sclk inversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdmin: fix g12a skew (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: axg-tdm-interface: fix link fmt setup (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fixed HP right speaker no sound (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix NULL pointer dereference during suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm2835: Silence clk_get() error on -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: disable traces when switching to S0Ix D0I3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: fix the suspend procedure to support s0ix entry (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Fix keep_power assignment for non-component devices (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Workaround for spurious wakeups on some Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: endpoint : remove needless check before usb_free_coherent() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Restore PME_EN state at Power On (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/boards: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel reference board (alc256) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: don't call pm_runtime_* on card device (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus G14(GA401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: update dsm param bin max size (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update dsm init sequence and condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: don't report of_xlate_dai_name failures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Avoid printing errors for -EPROBE_DEFER (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Use qcom_snd_parse_of() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Parse properties with "qcom, " prefix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Support parsing links without DPCM (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6afe: Remove unused q6afe_is_rx_port() function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: Use snd_soc_dai_link_set_capabilities() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use devm for resource management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix dac event dapm mixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support configuring dai fmt from DT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: add IRQF_SHARED for devm_request_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix build error due to 64-by-32 division (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: fix SND_SOC_J721E_EVM warnings & errors (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: omap: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Support new metadata block ID's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: xtensa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: kirkwood: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: generic: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: au1x: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sh: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: stm: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: use asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-xxx: add asoc_substream_to_rtd() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Fix kabylake_ssp_fixup function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix deadlock after PCM open error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak on module unload (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: call patch_ops.free() on probe error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with max98357b (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support left justified format for I2S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix probe regression on systems without i915 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pcm: Update rate/channels for SAI/ESAI DAIs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Update SAI config bclk/fsync rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Add SAI dai driver for i.MX/i.MX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8m: Fix SAI DAI driver for i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix ESAI DAI driver name for i.MX8/iMX8X (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Use ARRAY_SIZE instead of hardcoded value (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops for imx8 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based ADMAIF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2770: Fix reset gpio property name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE back to DAI ops (Jaroslav Kysela) [1869536] - [sound] ALSA: Soundwire: intel_init: save Slave(s) _ADR info in sdw_intel_ctx (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add wake interrupt support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel/cadence: merge Soundwire interrupt handlers/threads (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: add implementation of sdw_intel_enable_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce helper for link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: introduce a helper to arm link synchronization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: revisit SHIM programming sequences (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: report slave_ids for each link to SOF driver (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add clock stop quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add mutex for shared SHIM register access (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add prototype for WAKEEN interrupt processing (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: add link_list to handle interrupts with a single thread (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: update headers for interrupts (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: reuse code for wait loops to set/clear bits (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: board: sof_rt5682: Update rt1015 pll input clk freq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: avoid crash if invalid DSP topology loaded (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add support for systems without i915 audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove properties in card remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove hard-coded codec name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: drop a duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335.h: fix duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra20_das.h: delete duplicated words (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Avoid the use of one-element array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra186 based DSPK driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based AHUB driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based I2S driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add Tegra210 based DMIC driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add support for CIF programming (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: change match table ehl-rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: remove .digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace the word "slave" in vmaster API (Jaroslav Kysela) [1869536] - [sound] ALSA: asihpi: delete duplicated word (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace HTTP links with HTTPS ones (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung Notebook Pen S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: optimize the power consumption (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.h: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: disable MICBIAS and Vref2 widget in default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: snd_soc_dai_digital_mute() for both CPU/Codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: fixes the missed kfree() for axg_card_add_tdm_loopback (Jaroslav Kysela) [1869536] - [sound] ALSA: info: Drop WARN_ON() from buffer NULL sanity check (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Use kmemdup in podhd_set_monitor_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add support for Loongson 7A1000 controller (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: pcm: Use SG-buffer only when direct DMA is available" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: Add missed return for calling soc_component_ret (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: Trivial: Fix misspelling of 'exists' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support Headphone and Microphone Jack detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: simple-card-utils: Support configure pin_name for asoc_simple_init_jack (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: pcm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ssm*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tas*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: spear: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: merge .digital_mute() into .mute_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/mediatek: exit earlier if failed to register audio driver (Jaroslav Kysela) [1869536] - [sound] ALSA: drm/i2c/tda998x: Make tda998x_audio_digital_mute static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai.c: add .no_capture_mute support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdmi-codec: return -ENOTSUPP for digital_mute (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix snd_hda_codec_cleanup() documentation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: export snd_hda_codec_cleanup_for_unbind() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Report the button event in the headset type only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add missed put_device() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - fixup for yet another Intel reference board (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX563 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix the kernel-doc comment (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace blacklist word (Jaroslav Kysela) [1869536] - [sound] ALSA: via82xx: Replace the words whitelist (Jaroslav Kysela) [1869536] - [sound] ALSA: nm256: Replace the words blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: intel8x0: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: es1968: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ctxfi: Replace the word blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: bt87x: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Replace the words white/blacklist (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: don't free dma_data in DAI shutdown (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: cadence: allocate/free dma_data in set_sdw_stream (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: remove stream allocation/free (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: stream: add helper to startup/shutdown streams (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: implement get_sdw_stream() operations (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: Disable sync-write operation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ssi: don't use discriminatory terms for debug log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: siu: don't use discriminatory terms for parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsi: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for comment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rsnd: don't use discriminatory terms for function names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Enable Vref2 under using PLL2 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: spdif: Handle clk by pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: re-enable IRQs on failure path (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: add hw monitor volume control for POD HD500 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31 with ALC256 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G14(G401) series with ALC289 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - change to suitable link model for ASUS platform (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix race against the error recovery URB submission (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Improve dai-set-fmt comment in cht_codec_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support HDMI jack reporting (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: use hdmi-codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add kctl for configuring TX validity bit (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Clear the validity bit for TX (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Sync the pending work cancel at disconnection (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Perform sanity check for each URB creation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak4458: Remove set but never checked variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv320aic26: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5659: Remove many unused const variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt5631: fix spurious kernel-doc start and missing arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: ux500_msp_i2s: Remove unused variables 'reg_val_DR' and 'reg_val_TSTDR' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: pxa-ssp: Demote seemingly unintentional kerneldoc header (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-spdif: Fix misspelling of 'reg_dac_txdata' in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sunxi: sun4i-i2s: add missing clock and format arguments in kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: qdsp6: q6asm: Provide documentation for 'codec_profile' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sti: uniperif: fix 'defined by not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-pdmic: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel-classd: remove codec component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98390: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: es8316: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp-st: Remove set, but unused variable 'w' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: jz4770: Remove defined but never used variable 'mic_boost_tlv' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7219: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da7210: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: aio-core: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra20_das: remove always-true comparison (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: pcm: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sdw_max98373: add card_late_probe support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-sdw: add MAX98373 I2C dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: add SoundWire support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: split I2C and common parts (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: extract codec and DAI names (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: remove forward declaration of headset_init (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt286: fix unexpected interrupt happens (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: remove unsupported clock mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8974: fix Boost Mixer Aux Switch (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: Remove superfluous fall through comments (Jaroslav Kysela) [1869536] - [sound] ALSA: atmel: Remove invalid "fall through" comments (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Address bugs in the interrupt handling (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent some noise on unloading the module (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Prevent races in calls to set_audio_format() (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Race conditions around "opencount" (Jaroslav Kysela) [1869536] - [sound] ALSA: echoaudio: Remove redundant check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fixed kernel warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: support machine driver with rt1015 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: sort header inclusions in alphabetical (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qdsp6: use dev_err instead of pr_err (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: add command opcode to timeout error report (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix null-ptr-deref bug during device removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: codecs: max98373: remove Idle_bias_on to let codec suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max98373: Removed superfluous volume control from chip default (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: add more logs when topology load fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: factor kfree(se) in error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: use break on errors, not continue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix tlvs in error handling for widget_dmixer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: fix kernel oops on route addition error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: add min/max channels for SAI/ESAI on i.MX8/i.MX8M (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix non BE conversion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: set dai_link dpcm_ flags with a helper (Jaroslav Kysela) [1869536] - [sound] ALSA: usb/line6: remove 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd: Add missing of_node_put() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: add default clock handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACPI dependency check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: remove unused-but-set variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-i2s: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: acp3x-pcm-dma: fix 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-rt5645: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Fix build error on m68k and others (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: Remove only the registered component in devm functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: Add Intel silent stream support (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/au88x0: remove "defined but not used" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: vx_core: remove warning for empty loop body (Jaroslav Kysela) [1869536] - [sound] ALSA: pcmcia/pdaudiocf: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/via82xx: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/fm801: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/es1938: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: xen: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/oxygen/xonar_wm87x6: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/rme9652/hdspm: remove always true condition (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/korg1212: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/emu10k1: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pci/emu10k1: remove "set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi: fix kernel-doc warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/ctxfi/ctatc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/aw2-saa7146: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/echoaudio: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: pci/asihpi: remove 'set but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove 'set but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/gus: remove -Wmissing-prototypes warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: compress: fix partial_drain completion state (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for RTX6001 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: fix SND_HDA_GENERIC kconfig & build (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for MacroSilicon MS2109 (Jaroslav Kysela) [1869536] - [sound] ALSA: core: pcm_iec958: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer Veriton N4660G with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of Acer C20-820 with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable audio jacks of Acer vCopperbox with ALC269VC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th quirk subdevice id (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: improve debug traces for stream lookups (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later (Jaroslav Kysela) [1869536] - [sound] ALSA: opl3: fix infoleak in opl3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8400: remove unused variables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-ac97: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add logic to check dmic hardware runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: j721e-evm: Fix missing unlock on error in j721e_audio_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_esai: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_asrc: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_spdif: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: fsl_ssi_dbg: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Rename dev_gpio to gpio1_is_irq (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Remove struct rt5670_platform_data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: return -EINVAL on unrecognized speaker amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8994: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm9713: remove spurious kernel-doc comment start (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8960: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm8986: fix missing kernel-doc arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs42l42: remove always-true comparisons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs4270: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sof-acpi-dev: fix 'defined but unused' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix 'defined but not used' warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: atom: fix kernel-doc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: support MAX98390 speaker amp (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Add an option to select internal ratio mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Enable interrupt in dma_open (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: KeemBay: Fix header guard (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_sai: Refine regcache usage with pm runtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Add custom machine driver for j721e EVM (CPB and IVI) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: davinci-mcasp: Specify stream_name for playback/capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: add format and rate constraints on rk3399 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Rectifying Unbalanced pm_runtime_enable! issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null even soundwire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix some typos (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Replace s/frame/packet/ where appropriate (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix packet size calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: initialize bus clock base and scale registers (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add definitions for 1.2 spec (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: remove multiple blank lines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: extend SDW_SLAVE_ENTRY (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: convert open-coded while() to for() loop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Fix dac- and adc- vol-tlv values being off by a factor of 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on the Lenovo Miix 2 10 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5670: Correct RT5670_LDO_SEL_MASK (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add voltage sense slot configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Add right and left channel slot programming (Jaroslav Kysela) [1869536] - [sound] ALSA: asoc: Update supported rate and format for dummy dai (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Drop HAS_DMA dependency to fix link failure (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: Add MAX98373 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Fix a typo in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: common: add match table for TGL MAX98373 + RT5682 SoundWire driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: Intel: cml_rt1011_rt5682: explicitly access first codec (Jaroslav Kysela) [1869536] - [sound] ALSA: snd/soc: correct trivial kernel-doc inconsistency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Update TDM configuration in hw_params (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_card_prelinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: use statically define codec config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: cml_rt1011_rt5682: reduce log level for printing quirk (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for jsl-max98360a-rt5682 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: Fix the comment for max_98373_components (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Boards: tgl_max98373: add dai_trigger function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: byt*.c: remove cast in dev_info quirk log (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add quirk override with kernel parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bxt_rt298: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: add missing .owner field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: add missing header inclusion (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: declare missing structure prototypes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: move definition of enum snd_soc_bias_level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Fix format issue for extra space before a comma (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2562: Update shutdown GPIO property (Jaroslav Kysela) [1869536] - [sound] ALSA: AsoC: amd: add missing snd- module prefix to the acp3x-rn driver kernel module (Jaroslav Kysela) [1869536] - [sound] ALSA: core: Warn on empty module (Jaroslav Kysela) [1869536] - [sound] ALSA: hda - let hs_mic be picked ahead of hp_mic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add WM8524 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix the pop noise while OMTP type headset plugin (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix OOB access of mixer element list (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1011: fix KASAN out-of-bounds bug in find_next_bit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set playback and capture constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix uninitialized scalar variable in fsl_easrc_set_ctx_format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: disable jack in dailink .exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_rt5682: move disabling jack to dai link's exit() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: kbl-rt5660: use .exit() dailink callback to release gpiod (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix module load/unload issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: introduce exit() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Fix unchecked return value for clk_prepare_enable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_mqs: Don't check clock is NULL before calling clk API (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm_adsp: Add controls for calibration and diagnostic FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: remove snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: ak*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: cs*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: da*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: alc*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: msm*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: tlv*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wcd*: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atmel: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: rename to snd_soc_component_read() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: use io_mutex correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge snd_soc_component_read() and snd_soc_component_read32() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Constify static structs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: transition to 3 steps initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: pass link information as platform data (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: use devm_ allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel_init: remove useless test (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: clarify drvdata and remove more indirections (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: cleanups for indirections/logs (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: fix memory leak with devm_kasprintf (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: clock_stop: don't deal with UNATTACHED Slave devices (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: Replace 'objs' by 'y' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add pm runtime function (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Enable sync-write operation as default for all controllers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rockchip: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: closing specific instance (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Let LED cdev handling suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Unify LED helper code (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Use the new vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add vmaster mute LED helper (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop the old mic-mute LED hook (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Drop unused snd_hda_gen_fixup_micmute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/sigmatel: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/conexant: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Convert to cdev-variant of mic-mute LED controls (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Add a helper for mic-mute LED with LED classdev (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: generic: Always call led-trigger for mic mute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Intel: add missing PCI IDs for ICL-H, TGL-H and EKL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt*: simplify card names for SOF uses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hdac_hda: fix memleak with regmap not freed on remove (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI IDs for ICL-H and TGL-H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for CometLake-S (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: SOF: merge COMETLAKE_LP and COMETLAKE_H (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: imply acodec glue on axg sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add mute LED and micmute LED support for HP systems (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_spdif: Add support for imx6sx platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Add MQS support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Fix reference count leaks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix potential use-after-free of streams (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add quirk for MSI GE63 laptop (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Flush DAC data before playback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_ssi: Fix bclk calculation for mono channel (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: AMD: Use mixer control to switch between DMICs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Add Amp init common setting func (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: DAI wclk supports 44100 Hz output (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let PLL2 support the freq conversion for 44100Hz sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-parallel-out: Fix a reference count leak (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img: Fix a reference count leak in img_i2s_in_set_fmt (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8960: Support headphone jack detection function (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: samsung: Add driver for Aries boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm0010: Use kmemdup rather than duplicating its implementation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add makefiles and kconfig changes for KeemBay (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Add KeemBay platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt6358: support DMIC one-wire mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix "Function parameter not described" warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wunused-but-set-variable (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: tidyup Copyright (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc_pcm_trigger_start/stop() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: merge soc-io.c into soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_hw_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_initialize() to soc-component.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_xxx_regmap() to soc-component (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add soc_component_pin() and share code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm/compress: reduce verbosity on mapping ok messages (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: improve error messages in soc_pcm_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: reduce verbosity of BE override message (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use SG-buffer only when direct DMA is available (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Make SG-buffer helper usable for continuous buffer, too (Jaroslav Kysela) [1869536] - [sound] ALSA: memalloc: Initialize all fields of snd_dma_buffer properly (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: Use dma_mmap_coherent() on x86, too (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98357a: add compatible string for MAX98360A (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Update rt1015 default register value according to spec modification (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: common: set correct directions for dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: q6afe: add support to get port direction (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: fix checks for multi-cpu FE dailinks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: Let dai clks be registered whether mclk exists or not (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: wait for notification when changing clock configuration for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-topology: use devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-devres: add devm_snd_soc_register_dai() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Set 48 kHz rate for Rodecaster (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add quirk for Denon DCD-1500RE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix data copying speed issue with EDMA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Reuse the dma channel if available in Back-End (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmaengine_pcm: export soc_component_to_pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: export snd_soc_lookup_component_nolocked (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add implicit feedback quirk for SSL2+ (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: q6asm: handle EOS correctly (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Update regmap readable reg and volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5645: Add platform-data for Asus T101HA (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT10-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: nocodec: conditionally set dpcm_capture/dpcm_playback flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: replace capture_only by dpcm_capture (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: core: only convert non DPCM link to DPCM link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: fix playback/capture checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: dpcm: Only allow playback/capture if supported (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: add missing free_irq() in error path (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: disallow linking stream to itself (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Manage auto-pm of all bundled interfaces (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - add a pintbl quirk for several Lenovo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix snd_pcm_link() lockdep splat (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Use the new macro for HP Dock rename quirks (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add vendor, product and profile name for HP Thunderbolt Dock (Jaroslav Kysela) [1869536] - [sound] ALSA: emu10k1: delete an unnecessary condition (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix inconsistent card PM state after resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix potential crash during param fw loading (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Fix incorrect printf qualifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Defer probe when fail to find codec device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Modify the target DMIC clock rate (Jaroslav Kysela) [1869536] - [sound] ALSA: es1688: Add the missed snd_card_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add sienna_cichlid audio asic id for sienna_cichlid up (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-900NXS2 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6asm-dai: kCFI fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_add_dai_link() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_set_bias_level() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_late_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add probed bit field to snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_resume_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_post() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: add snd_soc_card_suspend_pre() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_subclass to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_codec_dai() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_set/get_drvdata() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_jack_new() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-card: move snd_soc_card_get_kcontrol() to soc-card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-card.c (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc.h: convert bool to bit field for snd_soc_card (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof_pcm512x: remove CONFIG_SND_HDA_CODEC_HDMI condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof-sdw: remove CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC condition (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: add depends on SND_SOC_SOF_HDA_AUDIO_CODEC for common hdmi (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fixing usage of plain int instead of NULL (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: fix generic hda codec support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: fix 'defined but not used' warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: Subject:ASoC: soc-pcm: fix BE dai not hw_free and shutdown during mixer update (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: reduce verbosity of error messages for sof-dai and sof-link (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc_dma: Fix dma_chan leak when config DMA channel failed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Enable class-D silence and clock detections (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-i2s-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: remove the redundant pass checks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: refine and log the header in the correct pass (Jaroslav Kysela) [1869536] - [sound] ALSA: ac97: Remove sound driver for ancient platform (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: Removing unnecessary instance initialization (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sta32x: add missed function calls in error paths (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: split i2c driver into separate module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: nau8810: add I2C device and compatible ID (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ingenic: Unconditionally depend on devicetree (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Clean up quirk entries with macros (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix return value check in asoc_mmp_sspa_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-in: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: img-spdif-out: Fix runtime PM imbalance on error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: harden IPC initialization and handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: mask BUSY or DONE interrupts in handler (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: BYT: add .remove op (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: ignore DSP replies received when they are not expected (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: byt/cht: add .pm_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640/51: remove .ignore_suspend (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: pm: handle resume on legacy Intel platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: byt: Add PM callbacks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dapm: Move dai_link widgets to runtime to fix use after free (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add new codec supported for ALC287 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Quirks for Gigabyte TRX40 Aorus Master onboard audio (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tas2552: Fix runtime PM imbalance in tas2552_component_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix incomplete error-handling in img_i2s_in_probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: Fix runtime PM imbalance in omap2_mcbsp_set_clks_src (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fix semicolon.cocci warnings (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: mixer: volume quirk for ESS Technology Asus USB DAC (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add a model for Thinkpad T570 without DAC workaround (Jaroslav Kysela) [1869536] - [sound] ALSA: hwdep: fix a left shifting 1 by 31 UB bug (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Merge suspend/resume function to runtime_suspend/resume (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: imx-audmix: Fix unused assignment to variable 'ret' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Fix -Wmissing-prototypes warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98390: Added Amplifier Driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: loader: Adjust validation condition for fw_offset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_compr_startup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: add snd_soc_link_be_hw_params_fixup() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: remove unneeded parameter from snd_soc_link_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-link: move soc_rtd_xxx() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: add soc-link.c (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite-mk3 (FireWire only model) (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: keep ADCs and DACs always on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add digital microphone controls (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for fetching mode switch (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v3 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: refactoring protocol v2 for clock source getter (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: remove obsoleted codes (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for stream management (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: use table-based calculation of packet formats for proc (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v3 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add alternative functions to detect packet format for protocol v2 (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add model-specific table of chunk count (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: drop protocol structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: add wrapper functions for protocol-dependent operations (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: localize protocol data (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v3 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: move spec data to v2 protocol file (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: remove Compulab pxa2xx boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add mono playback switch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: add filter controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: don't use regmap defaults (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Fix the error handling in probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use a single module (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix ADC level control (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix spelling mistake (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: fix trailing line in sysfs_slave.c (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: add Slave sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add sysfs support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: disco: s/ch/channels/ (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add Device Tree support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: return error when acp de-init fails (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: refactoring dai_hw_params() callback (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: fix kernel warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Do not pass irq numbers in comments (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Remove unneeded ifdef's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Set ASR76K and ASR56K based on processing clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable build for RN machine driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: RN machine driver using dmic (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create platform devices for Renoir (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: enable Renoir acp3x drivers build (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver pm ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver PM ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP PDM DMA driver dai ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp3x pdm driver dma ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: irq handler changes for ACP3x PDM dma driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add ACP3x PDM platform driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: create acp3x pdm platform device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add acp init/de-init functions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP PCI driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: add Renoir ACP3x IP register header (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add more fixup entries for Clevo machines (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: master: add runtime pm support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: add sdw_master_device support (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: add unique bus id (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus_type: introduce sdw_slave_type and sdw_master_type (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: rename sdw_bus_master_add/delete, add arguments (Jaroslav Kysela) [1869536] - [sound] ALSA: iec1712: Initialize STDSP24 properly when using the model=staudio option (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for Toshiba Encore WT8-A tablet (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max9867: fix volume controls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix unused assignment in fsl_set_clock_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd: raven: Make the driver name consistent across files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Fix indentation to put on one line affected code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cleanup dai / component active code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dwc: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: pxa: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: meson: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: jz4740: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: cirrus: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bcm: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: atomel: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: use snd_soc_xxx_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_stream_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_active() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dapm: use snd_soc_dai_activate()/deactivate() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_action() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-pcm: replace snd_soc_runtime_activate()/deactivate() to macro (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_pll to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: move set_sysclk to codec level (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add regulator support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: da7213: Add da7212 DT compatible (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: remap BTN_0 as KEY_PLAYPAUSE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remap buttons (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: fix typo in components string (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: soc-acpi: change machine driver name for WM8804 platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make imx8m_dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: make dsp_ops static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: sdw: relax sdw machine select constraints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: add support to smart amplifier (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: inform DSP that driver is going to be removed (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add a power_down_notify method (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Do nothing when DSP PM callbacks are not set (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: remove duplicate allocation (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: fix memory leak in set_sdw_stream() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt*-sdw: don't assign slave_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Xtreme (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm: fix incorrect hw_base increase (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Unexport some local helper functions (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Drop unused snd_hda_queue_unsol_event() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Fix potential race in unsol event handler (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add duplex sound support for USB devices using implicit feedback (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: fixing upper volume limit for RME Babyface Pro routing crosspoints (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: introduce SoC specific data (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Limit int mic boost for Thinkpad T530 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: Use force clear for WM8962_SYSCLK_ENA after reset (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Set appropriate bus format for given bit width (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for the runtime power management (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Prepare/unprepare the clocks (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Remove the embedded struct ssp_device (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Add support for soc-generic-dmaengine-pcm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Get rid of dma_params and phys_base (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: A trivial typo fix (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: omap-mcbsp: Fix an error handling path in 'asoc_mcbsp_probe()' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Update description for HDaudio kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ux500: mop500: Fix some refcounted resources issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Drop S20_3LE case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mmp-sspa: Flip SNDRV_PCM_FMTBIT_S24_3LE on (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Use readq to read 64 bit registers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: baytrail: Fix register access (Jaroslav Kysela) [1869536] - [sound] ALSA: SoC: rsnd: add interrupt support for SSI BUSIF buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS UX581LV with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS UX550GE with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable headset mic of ASUS GL503VM with ALC295 (Jaroslav Kysela) [1869536] - [sound] ALSA: drivers/powerpc: Replace _ALIGN_UP() by ALIGN() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: core: fix error return code in sof_probe_continue() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: set headset button maps (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-motu: fulfill missing entries in Kconfig (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: (cosmetic) remove multiple superfluous "else" statements (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: Use IRQF_ONESHOT (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME Fireface UFX (untested) (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: add support for RME FireFace 802 (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to decide name of sound card (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: code refactoring to add enumeration constants for model identification (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: start IR context immediately (Jaroslav Kysela) [1869536] - [sound] ALSA: fireface: fix configuration error for nominal sampling transfer frequency (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek: Add quirk for Samsung Notebook (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix unused variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use sequence of syt offset and data block on pool in AMDTP domain (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: pool ideal sequence of syt offset and data block (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add cache for packet sequence to AMDTP domain structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for data block calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt offset calculation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for syt computation (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: code refactoring for parameters of packet queue and IRQ timing (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: add reference to domain structure from stream structure (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: use macro for maximum value of second in 1394 OHCI isoc descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix invalid assignment to union data for directional parameter (Jaroslav Kysela) [1869536] - [sound] ALSA: fireworks: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: Replace zero-length array with flexible-array (Jaroslav Kysela) [1869536] - [sound] ALSA: rawmidi: Fix racy buffer resize under concurrent accesses (Jaroslav Kysela) [1869536] - [sound] ALSA: soc: fsl_asrc: Make some functions static (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1016: Add the rt1016 support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5677: Use devm_snd_soc_register_component() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: mt8183: fix error handling of platform_get_irq() (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Allow SST driver on SKL and KBL platforms with DMIC (Jaroslav Kysela) [1869536] - [sound] ALSA: portman2x4: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: sound/ppc: Use bitwise instead of arithmetic operator for flags (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mediatek: Fix error handling (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: amd :High hw_level while simultaneous capture (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Return true, false for return type bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: lpass-cpu: Make I2S SD lines configurable (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use hdac_to_hda_codec macro (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Use dev_to_hdac_dev macro (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: bus: reduce verbosity on enumeration (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: debugfs: clarify SDPX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: slave: don't init debugfs on device registration error (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: qcom: fix error handling in probe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8524: Add support S32_LE (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: Use the defined variable to simplify code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt1015: Add condition to prevent SoC providing bclk in ratio of 50 times of sample rate (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rl6231: Add the K bypass for the PLL parameters (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: adau7118: Mark the ADAU7118 reset register as volatile (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: max9768: update contact email (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: max98373: reorder max98373_reset() in resume (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: workaround playback failure on Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add member to store ratio for stripe control (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/tegra: correct number of SDO lines for Tegra194 (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: add mapping for ASRock TRX40 Creator (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse (Jaroslav Kysela) [1869536] - [sound] ALSA: Revert "ALSA: hda/realtek: Fix pop noise on ALC225" (Jaroslav Kysela) [1869536] - [sound] ALSA: firewire-lib: fix 'function sizeof not defined' error of tracepoints format (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: Add poll callback for hwdep (Jaroslav Kysela) [1869536] - [sound] ALSA: line6: hwdep: add support for O_NONBLOCK opening mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF/Intel: clarify SPDX license with GPL-2.0-only (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ipc: channel map structures (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: sof-wm8804: support for Hifiberry Digiplus boards (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Update correct LED status at the first time usage of update_mute_led() (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Add control message quirk delay for Kingston HyperX headset (Jaroslav Kysela) [1869536] - [sound] ALSA: isa/wavefront: prevent out of bounds write in ioctl (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Fix unused variable warning w/o CONFIG_LEDS_TRIGGER_AUDIO (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Add LED class support for micmute LED (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Enable micmute LED on and HP system (Jaroslav Kysela) [1869536] - [sound] ALSA: hda/realtek - Introduce polarity for micmute LED GPIO (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: sort out Kconfig, again (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove unwanted btn_type assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove duplicate rt5682_reset() calls (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: replace message printing from pr_() to dev_() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: remove empty default case (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix space issues (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: simplify assertions (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: change trigger sequence to fix pop noise when stopping playback on sdw platforms (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: replace sof_link_hda_process by sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: set component dai_index to ipc dai config dai_index (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: send ipc for all found DAIs in sof_set_dai_config (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: broadwell: Fix oops during module removal (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: rt5682: fix I2C/Soundwire dependencies (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: mark PM functions __maybe_unused (Jaroslav Kysela) [1869536] - [sound] ALSA: seq: oss: remove unused inline function snd_seq_oss_timer_is_realtime (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Fix unused assignment (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoc: nau8810: add AUX related dapm widgets and routes (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: wm97xx: fix ac97 dependency (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: component: suppress uninitialized-variable warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_metadata() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_pointer() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_ack() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_get_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_set_params() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_shutdown() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compr_start() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_remove() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_bespoke_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_trigger() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_prepare() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add snd_soc_pcm_dai_new() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: don't overwide dai->driver->ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-dai: add soc_dai_err() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Use devm_snd_soc_register_card() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: broadwell: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5650: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: bdw-rt5677: add channel constraint (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: add explicit dependency on GPIOLIB when DMIC is used (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: davinci-mcasp: Fix dma_chan refcnt leak when getting dma type (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Multiple I/O PCM format support for pipe (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Add alternative topology binary name (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use the defined variable to clean code (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Check for null pointer before dereferencing "ctx" in fsl_easrc_hw_free() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: ti: remove comparison to bool in omap_mcbsp_dai_set_dai_fmt() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: mxs-saif: Avoid unnecessary check (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw: add amp number in components string for ucm (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: hisilicon: Use IS_ERR() instead of IS_ERR_OR_NULL() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_esai: Disable exception interrupt before scheduling tasklet (Jaroslav Kysela) [1869536] - [sound] ALSA: pcm_native: result of put_user() needs to be checked (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: snd-sof-intel-hda-common - add hda_model parameter and pass it to HDA codec driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: avoid false-positive Wuninitialized warning (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8962: set CLOCKING2 as non-volatile register (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix racy list management in output queue (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Remove async workaround for Scarlett 2nd gen (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Improve frames size computation (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Refactor Intel NHLT init (Jaroslav Kysela) [1869536] - [sound] ALSA: ACPICA: Add NHLT table signature (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add missing dependency on IMX_SCU (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: fix spelling mistake "prefitler" -> "prefilter" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: Skylake: Replace guid_copy() with import_guid() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: dmic: Allow GPIO operations to sleep (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: return true, false in snd_soc_volsw_is_stereo() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Fix build (Jaroslav Kysela) [1869536] - [sound] ALSA: oxygen: use true, false for bool variables (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Fix a limit check in proc_dump_substream_formats() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - fix oops on systems without i915 audio codec (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Add initial ZL38060 driver (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: remove snd_compr_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sprd: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: sof: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: atom: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: qcom: q6sp6: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: uniphier: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codec: wm_adsp: use snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-compress: add snd_compress_ops (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: add back the hack for a too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_easrc: Add EASRC ASoC CPU DAI drivers (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Move common definition to fsl_asrc_common (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl-asoc-card: Support new property fsl, asrc-format (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_asrc: rename asrc_priv to asrc (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Enable audio mclk during tegra_asoc_utils_init() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Add audio mclk parent configuration (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: Use device managed resource APIs to get the clock (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd9335: remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wcd934x: remove unnecessary comparisons to bool (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: split woofer and tweeter support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix wrong dependency of da7210 and wm8983 (Jaroslav Kysela) [1869536] - [sound] ALSA: soundwire: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: Print more information in stream proc files (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: txx9: don't work around too small resource_size_t (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: haswell: Power transition refactor (Jaroslav Kysela) [1869536] - [sound] ALSA: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Fix misspellings of "Analog Devices" (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: handle multiple sets of tuple arrays (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: stop parsing when all tokens have been found (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get HDA rate and channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: parse hda_tokens to &config->hda (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Get ALH rate amd channels from topology (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: align sof_ipc_dai_alh_params with FW (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Rename deprecated DMIC IPC struct field (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Change DMIC load IPC to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: Fix typo in header file comment text (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add XRUN flags field to struct sof_ipc_buffer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: make sof_ipc_cc_version to fixed length (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in topology.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in trace.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: change type char to uint8_t in info.h (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add debug ABI version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: add probe support extend data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: Add support for DC Blocker (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse compiler version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse windows (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: ext_manifest: parse firmware version (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce extended manifest (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Introduce offset in firmware data (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Mark get_ext* function ext_hdr arguments as const (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: topology: fix: handle DAI widget connections properly with multiple CPU DAI's (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Add i.MX8MP device descriptor (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8M HW support (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx: fix undefined reference issue (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: imx8: Fix randbuild error (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: topology: Remove unneeded semicolon (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: fsl_micfil: Omit superfluous error message in fsl_micfil_probe() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: skl_hda_generic: remove rtd->codec_dai (Jaroslav Kysela) [1869536] - [sound] ALSA: usb-audio: RME Babyface Pro mixer patch (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8900: remove some defined but not used symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8990: remove some defined but unused symbols (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8991: remove defined but not used 'wm8991_dapm_rxvoice_controls' (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: wm8994: remove wm1811_snd_controls and mixin_boost_tlv (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support nvidia, headset property (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt711: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt700: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt5682: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_rt1308: remove codec dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: remove codec_dai use (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_sdw_hdmi: fix compilation issue in fallback mode (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof-da7219-max98373: add DMIC widget and route (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel: sof_sdw: init all aggregated codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: boards: support Elkhart Lake with rt5660 (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for ElkhartLake (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: Add ElkhartLake HDMI codec vid (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: intel/skl/hda - set autosuspend timeout for hda codecs (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add BE dailink for dmic16k (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: remove cpu_dai/codec_dai/cpu_dais/codec_dais (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() rtd setups (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: set rtd->num_cpu/codec at soc_new_pcm_runtime() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: soc-core: Add dynamic debug logs in soc_dai_link_sanity_check() (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: log number of microphones detected in NHLT tables (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce verbosity on SoundWire detection (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: codecs: rt1308-sdw: reduce verbosity (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary parentheses (Jaroslav Kysela) [1869536] - [sound] ALSA: ASoC: SOF: remove unneeded variables (Jaroslav Kysela) [1869536] - [sound] ALSA: hda: add autodetection for SoundWire (Jaroslav Kysela) [1869536] - [s390] mm/gup: fix gup_fast with dynamic page table folding (Philipp Rudo) [1879401 1768713 1883266]- [netdrv] Take common prefetch code structure into a function (Ivan Vecera) [1882011] - [net] lwtunnel: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [net] sched: only keep the available bits when setting vxlan md->gbp (Xin Long) [1879363] - [vhost] Don't call access_ok() when using IOTLB (Greg Kurz) [1883084] - [clocksource] hv: clocksource: Add notrace attribute to read_hv_sched_clock_*() functions (Mohammed Gamal) [1880230] - [net] core: Replace driver version to be kernel version (Petr Oros) [1867192] - [net] use netif_is_bridge_port() to check for IFF_BRIDGE_PORT (Josef Oskera) [1867923] - [net] sctp: fix sctp_auth_init_hmacs() error path (Xin Long) [1891413] - [net] sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant (Xin Long) [1891413] - [net] sctp: add SCTP_PEER_ADDR_THLDS_V2 sockopt (Xin Long) [1891413] - [net] sctp: add support for Primary Path Switchover (Xin Long) [1891413] - [net] sctp: add SCTP_EXPOSE_POTENTIALLY_FAILED_STATE sockopt (Xin Long) [1891413] - [net] sctp: add SCTP_ADDR_POTENTIALLY_FAILED notification (Xin Long) [1891413] - [net] sctp: add pf_expose per netns and sock and asoc (Xin Long) [1891413] - [net] qos offload add flow status with dropped count (Ivan Vecera) [1890263] - [i2c] i2c: i801: Add support for Intel Tiger Lake PCH-H (Steve Best) [1782725] - [i2c] i2c: i801: Add support for Intel Emmitsburg PCH (David Arcari) [1837403] - [mfd] mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs (David Arcari) [1837403] - [powerpc] powerpc/papr_scm: Fix warning triggered by perf_stats_show() (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Limit the readability of 'perf_stats' sysfs attribute (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Add support for fetching nvdimm 'fuel-gauge' metric (Diego Domingos) [1875364] - [powerpc] powerpc/papr_scm: Fetch nvdimm performance stats from PHYP (Diego Domingos) [1875364] - [include] driver-core: Introduce DEVICE_ATTR_ADMIN_{RO, RW} (Diego Domingos) [1875364] - [net] netfilter: reject: skip csum verification for protocols that don't support it (Florian Westphal) [1740082] - [net] netfilter: Fix remainder of pseudo-header protocol 0 (Florian Westphal) [1740082] - [powerpc] powerpc/pseries: Add KVM guest doorbell restrictions (Diego Domingos) [1870221] - [powerpc] powerpc: Inline doorbell sending functions (Diego Domingos) [1870221] - [powerpc] powerpc/pseries: Use doorbells even if XIVE is available (Diego Domingos) [1870221] - [powerpc] powerpc: Fix P10 PVR revision in /proc/cpuinfo for SMT4 cores (Steve Best) [1885927] - [tools] selftests: implement flower classifier terse dump tests (Ivan Vecera) [1879189] - [net] sched: cls_flower: implement terse dump support (Ivan Vecera) [1879189] - [net] sched: implement terse dump support in act (Ivan Vecera) [1879189] - [net] sched: introduce terse dump flag (Ivan Vecera) [1879189] - [netdrv] net/mlx5e: Fix missing switch_id for representors (Petr Oros) [1874073] - [tools] selftests: net: Add port split test (Petr Oros) [1874073] - [net] devlink: Move input checks from driver to devlink (Petr Oros) [1874073] - [net] devlink: Add a new devlink port split ability attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set port split ability attribute in driver (Petr Oros) [1874073] - [net] devlink: Add a new devlink port lanes attribute and pass to netlink (Petr Oros) [1874073] - [netdrv] mlxsw: Set number of port lanes attribute in driver (Petr Oros) [1874073] - [net] devlink: Replace devlink_port_attrs_set parameters with a struct (Petr Oros) [1874073] - [net] devlink: Move switch_port attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [net] devlink: Move set attribute of devlink_port_attrs to devlink_port (Petr Oros) [1874073] - [netdrv] mlx5e: Use helper API to get devlink port index for all port flavours (Petr Oros) [1874073] - [net] devlink: Add support for board.serial_number to info_get cb. (Petr Oros) [1879194] - [net] devlink: Support setting hardware address of port function (Petr Oros) [1879195] - [net] devlink: Support querying hardware address of port function (Petr Oros) [1879195] - [net] devlink: Prepare devlink port functions to fill extack (Petr Oros) [1879195] - [net] sctp: not disable bh in the whole sctp_get_port_local() (Xin Long) [1704525] - [net] sctp: replace some sock_net(sk) with just 'net' (Xin Long) [1704525] - [x86] x86/resctrl: Fix a NULL vs IS_ERR() static checker warning in rdt_cdp_peer_get() (Terry Bowman) [1873124]- [net] sched: initialize with 0 before setting erspan md->u (Xin Long) [1879358] - [net] ipv6: Discard next-hop MTU less than minimum link MTU (Balazs Nemeth) [1879893] - [kvm] Revert "x86/kvm: Move context tracking where it belongs" (Nitesh Narayan Lal) [1890284] - [video] hyperv_fb: Update screen_info after removing old framebuffer (Kairui Song) [1870081] - [x86] x86/kexec: Use up-to-dated screen_info copy to fill boot params (Kairui Song) [1870081] - [netdrv] netdevsim: Register control traps (Petr Oros) [1888724] - [net] devlink: Add ACL control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 3 control packet traps (Petr Oros) [1888724] - [net] devlink: Add layer 2 control packet traps (Petr Oros) [1888724] - [net] devlink: Add 'control' trap type (Petr Oros) [1888724] - [net] devlink: Add 'mirror' trap action (Petr Oros) [1888724] - [netdrv] netdevsim: Move layer 3 exceptions to exceptions trap group (Petr Oros) [1888724] - [net] devlink: Create dedicated trap group for layer 3 exceptions (Petr Oros) [1888724] - [net] xfrmi: drop ignore_df check before updating pmtu (Balazs Nemeth) [1857679] - [kernel] sched/features: Fix !CONFIG_JUMP_LABEL case (Daniel Bristot de Oliveira) [1885850] - [net] flow_offload: simplify hw stats check handling (Ivan Vecera) [1888317] - [scsi] scsi: core: Only re-run queue in scsi_end_request() if device queue is busy (Ewan Milne) [1885733] - [scsi] scsi: core: Clean up scsi_noretry_cmd() (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Make sdebug_build_parts() respect virtual_gb (Ewan Milne) [1885733] - [scsi] scsi: fc: Add 256GBit speed setting to SCSI FC transport (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement lun_format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Remove superfluous close zone in resp_open_zone() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add spaces around binary operator "|" (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_srp: Sanitize scsi_target_block/unblock sequences (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement tur_ms_to_ready parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix request sense (Ewan Milne) [1885733] - [scsi] scsi: core: Delete unnecessary buffer allocation for every loop iteration (Ewan Milne) [1885733] - [scsi] scsi: core: Add missing scsi_device_put() in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: core: Only return started requests from scsi_host_find_tag() (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_iscsi: Drop a duplicated word (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_sas: Add missing newline in sysfs 'enable' attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_fc: Match HBA Attribute Length with HBAAPI V2.0 definitions (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Update documentation url and bump version (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: every_nth triggered error injection (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Support hostwide tags (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add check for sdebug_max_queue during module init (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: sd: Fix kdoc comment format (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix in_use bitmap corruption (Ewan Milne) [1885733] - [scsi] scsi: core: Register sysfs for SCSI workqueue (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport_spi: Fix function pointer check (Ewan Milne) [1885733] - [scsi] scsi: core: Fix formatting errors in scsi_lib.c (Ewan Milne) [1885733] - [scsi] scsi: core: Remove scsi_sdb_cache (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing deallocate of device minor (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_probe() missing mutex_destroy (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Parser tables and code interaction (Ewan Milne) [1885733] - [scsi] scsi: core: Refactor scsi_mq_setup_tags function (Ewan Milne) [1885733] - [scsi] scsi: core: Fix incorrect usage of shost_for_each_device (Ewan Milne) [1885733] - [scsi] scsi: sd: Add zoned capabilities device attribute (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Fix an error handling bug in sdeb_zbc_model_str() (Ewan Milne) [1885733] - [scsi] scsi: pm: Balance pm_only counter of request queue during system resume (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Disallow zone sizes that are not powers of 2 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement ZBC host-aware emulation (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_size_mb module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_nr_conv module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add zone_max_open module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC module parameter (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC zone commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add ZBC mode and VPD pages (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Bump to version 1.89 (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Re-arrange parameters alphabetically (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement PRE-FETCH commands (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Weaken rwlock around ramdisk access (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Implement VERIFY(10), add VERIFY(16) (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Add per_host_store option (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Use scsi_et_resid() where appropriate (Ewan Milne) [1885733] - [scsi] scsi: scsi_debug: Randomize command completion time (Ewan Milne) [1885733] - [scsi] scsi: core: doc: Change function comments to kernel-doc style (Ewan Milne) [1885733] - [scsi] scsi: sr: Use {get, put}_unaligned_be*() instead of open-coding these functions (Ewan Milne) [1885733] - [scsi] scsi_ioctl.c: switch SCSI_IOCTL_GET_IDLUN to copy_to_user() (Ewan Milne) [1885733] - [scsi] scsi: core: Avoid calling synchronize_rcu() for each device in scsi_host_block() (Ewan Milne) [1885733] - [scsi] scsi: st: remove unneeded variable 'result' in st_release() (Ewan Milne) [1885733] - [scsi] scsi: sr: Fix sr_block_release() (Ewan Milne) [1885733] - [scsi] scsi: scsi_trace: Use get_unaligned_be24() (Ewan Milne) [1885733] - [scsi] scsi: st: Use get_unaligned_be24() and sign_extend32() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_busy_iter() (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_(block, unblock) helper function (Ewan Milne) [1885733] - [scsi] scsi: core: add scsi_host_complete_all_commands() helper (Ewan Milne) [1885733] - [scsi] scsi: sr: get rid of sr global mutex (Ewan Milne) [1885733] - [powerpc] scsi: sr: remove references to BLK_DEV_SR_VENDOR, leave it enabled (Ewan Milne) [1885733] - [scsi] scsi: core: remove .for_blk_mq (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Rename sd_zbc_check_zones() (Ewan Milne) [1885733] - [scsi] scsi: sd_zbc: Simplify sd_zbc_check_zones() (Ewan Milne) [1885733] - [ata] scsi: core: Clean up SG_NONE (Ewan Milne) [1885733] - [scsi] scsi: scsi_transport.h: switch to SPDX tags (Ewan Milne) [1885733] - [scsi] scsi: libsas: Inject revalidate event for root port event (Ewan Milne) [1885733] - [scsi] scsi: libsas: Stop hardcoding SAS address length (Ewan Milne) [1885733] - [scsi] scsi: clean obsolete return values of eh_timed_out (Ewan Milne) [1885733] - [scsi] scsi: libsas: Fix some indentation in libsas.h (Ewan Milne) [1885733] - [scsi] scsi: st: mark expected switch fall-throughs (Ewan Milne) [1885733] - [scsi] scsi: libsas: delete dead code in scsi_transport_sas.c (Ewan Milne) [1885733] - [nvme] nvme-rdma: params to enable pi_capable devices (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix return value in __lpfc_nvme_ls_abort (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: fix axchg pointer reference after free and double frees (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Fix pointer checks and comments in (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Fix lpfc_nodelist leak when processing unsolicited event (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Response support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Abort support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvme: Add Receive LS Request and Send LS Response support to nvme (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor Send LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add Send LS Request and Abort LS Request support (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: nvmet: Add support for NVME LS request hosthandle (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor NVME LS receive handling (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Commonize lpfc_async_xchg_ctx state and flag definitions (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor nvmet_rcv_ctx to create lpfc_async_xchg_ctx (Gopal Tiwari) [1857052 1857051 1853231] - [scsi] lpfc: Refactor lpfc nvme headers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: allow to queue requests for live queues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: cancel async events before freeing event struct (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Revert: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: only use power of two io boundaries (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix NULL dereference for pci nvme controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: cancel nvme device request before disabling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Fix a missed _irqsave version of spin_lock in 'nvmet_fc_fod_op_done()' (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix reset hang if controller died in the middle of a reset (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix controller instance leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: serialize controller teardown sequences (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: Fix NULL dereference when a connect data comes in h2cdata pdu (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: have nvme_wait_freeze_timeout return if it timed out (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Disable keep-alive timer when kato is cleared to 0h (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Fix wrong return value in __nvme_fc_init_request() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use spin_lock_irq() when taking the ctrl->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: skip noiob for zoned devices (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: call blk_mq_free_request() directly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix oops in pt cmd execution (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use u32 for nvme_dev.q_depth and nvme_queue.q_depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns tear down label for pt-cmd handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix a memory leak (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-passthru: Reject commands with non-sgl flags set (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: remove extra variable in create ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: set ctrl state connecting after init (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_ctrl_get_by_path() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru Kconfig option (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce the passthru configfs interface (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add passthru enable/disable helpers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add passthru code to process commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: export nvme_find_get_ns() and nvme_put_ns() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce nvme_execute_passthru_rq to call nvme_passthru_() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: remove redundant del_work_active flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: create helper function to obtain command effects (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-hwmon: log the controller device name (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: check successful reference in nvmet_fc_find_target_assoc (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clear any SGL flags in passthru commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix deadlock in disconnect during scan_work and/or ana_work (Gopal Tiwari) [1857052 1857051 1853231] - [acpi] nvme-pci: add support for ACPI StorageD3Enable property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use xarray for ctrl ns storing (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document nvme controller states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: use new shared CQ mechanism (Gopal Tiwari) [1857052 1857051 1853231] - [infiniband] RDMA/core: Add protection for shared CQs used by ULPs (Gopal Tiwari) [1857052 1853231] - [infiniband] RDMA/core: Introduce shared CQ pool API (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove an unnecessary condition (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove redundant validation in nvme_start_ctrl() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: prevent SK hynix PC400 from using Write Zeroes command (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: fix possible hang waiting for icresp response (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: explicitly update mpath disk capacity on revalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove ns->disk checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix some comments issues (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove redundant segment validation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use the consistent return type of nvme_pci_iod_alloc_size() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: add a blank line after declarations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: support for multiple Command Sets Supported and Effects log pages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: document quirked Intel models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose reconnect_delay and ctrl_loss_tmo via sysfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: use USEC_PER_SEC instead of magic numbers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: implement multiple I/O Command Set support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: simplify nvmet_process_resp_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: leverage request plugging (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: have queue prod/cons send list become a llist (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: optimize network stack with setting msg flags according to batch size (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: verify wwnn and wwpn format (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use unsigned type for u64 (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: introduce flags member in nvmet_fabrics_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: remove has_keyed_sgls initialization (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-loop: remove unused 'target_ctrl' in nvme_loop_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove the empty line at the beginning of nvme_should_reset() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: code cleanup for nvme_alloc_host_mem() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use unsigned for io queue depth (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for ctrl->sqsize (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-core: use u16 type for directives (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix a crash in nvme_mpath_add_disk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: fix a missing completion with remove invalidation (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: factor out a nvme_rdma_end_request helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock due to head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: don't protect ns mutation with ns->head->lock (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix bogus request queue reference put (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: fix deadlock between ana_work and scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix possible deadlock when I/O is blocked (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: assign completion vector correctly (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: override the value of the controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: set initial value for controller's numa node (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-loop: initialize tagset numa value to the value of the ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: use simple suspend when a HMB is enabled (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: constify nvmet_tcp_ops (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_set_keepalive (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: constify nvme_tcp_mq_ops and nvme_tcp_admin_mq_ops (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: do not call del_gendisk() on a disk that was never added (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] ipv4: add ip_sock_set_tos (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] tcp: add tcp_sock_set_syncnt (Gopal Tiwari) [1857052 1857051 1853231] - [net] tcp: add tcp_sock_set_nodelay (Gopal Tiwari) [1857052 1857051 1853231] - [net] net: add sock_no_linger (Gopal Tiwari) [1857052 1857051 1853231] - [target] net: add sock_set_reuseaddr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] net: add sock_set_priority (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: avoid race between nvme_reap_pending_cqes() and nvme_poll() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata support for block devices (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme: add Metadata Capabilities enumerations (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: set dma alignment to qword (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add metadata characteristics for a namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_INLINE_METADATA_SG_CNT (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce max_integrity_segments ctrl attribute (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: add metadata/T10-PI support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: enforce extended LBA format for fabrics metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: introduce nvme_rdma_sgl structure (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_check_data_len to nvmet_check_transfer_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: rename nvmet_rw_len to nvmet_rw_data_len (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: generate AEN for ns revalidate size change (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce NVME_NS_METADATA_SUPPORTED flag (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: introduce namespace features flag (Gopal Tiwari) [1857052 1857051 1853231] - [lightnvm] lightnvm: disable interleaved metadata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: make nvme_ns_has_pi accessible to transports (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add helper to revalidate bdev and file ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: revalidate-ns & generate AEN from configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_EOR if we send last payload in the batch (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: replace zero-length array with flexible-array (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: delete an unnecessary declaration (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: make sure write/poll_queues less or equal then cpu count (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: disable streams when get stream params failed (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix io_opt limit setting (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-tcp: move send/recv error handling in the send/recv methods instead of call-sites (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: mark nvmet_ana_state static (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: set MSG_SENDPAGE_NOTLAST with MSG_MORE when we have more to send (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: replace kstrndup() with kmemdup_nul() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: dma read memory barrier for completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: try to send request in queue_rq context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: align addrfam list to spec (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: flush scan work on passthrough commands (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: define constants for identification values (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address treq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for ana states (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: use type-name map for address family (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: stop using ->queuedata (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove volatile cqes (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: avoid scheduling io_work if we are already polling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up error handling in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: remove last_sq_tail (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add generic type-name mapping (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: centralize port enable access for configfs (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: avoid gcc-10 zero-length-bounds warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-tcp: use bh_lock in data_ready (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: add ns revalidation support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: slight cleanup for kbuild test warnings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: unlink head after removing last namespace (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-multipath: set bdi capabilities once (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate after verifying identifiers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: use SRQ per completion vector (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: add an error flow for post_recv failures (Gopal Tiwari) [1857052 1853231] - [nvme] nvme: remove the magic 1024 constant in nvme_scan_ns_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release namespace head reference on error (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: avoid an Identify Controller command for each namespace scan (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: factor out a nvme_ns_remove_by_nsid helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolidate chunk_sectors settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: consolodate io settings (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: revalidate namespace stream parameters (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: clean up nvme_scan_work (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: refine the Qemu Identify CNS quirk (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: check namespace head shared property (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: always search for namespace head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused parameter (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: add LS failure messages (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: provide num dword helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Add Disconnect Association Xmt support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: track hostport handle for associations (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: add target to host LS request support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: refactor to enable target to host LS (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: rename ls_list to ls_rcv_list (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: perform small cleanups on unneeded checks (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Update header and host for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Update target for common definitions for LS handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: Better size LS buffers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc nvmet-fc: refactor for common LS definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fc: Add Disconnect Association Rcv support (Gopal Tiwari) [1857052 1857051 1853231] - [include] nvme-fc: Sync header to FC-NVME-2 rev 1.08 (Gopal Tiwari) [1857052 1853231] - [nvme] nvme-fc and nvmet-fc: revise LLDD api for LS reception and LS request (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: fix "slimmer CQ head update" (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: prevent double free in nvme_alloc_ns() error handling (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix double free of rdma queue (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: fix bonding failover possible NULL deref (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: fix NULL dereference when removing a referral (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: inherit stable pages constraint in the mpath stack device (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-fc: fix typo in comment (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Replace comma with a semicolon (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fcloop: fix deallocation of working context (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: fix compat address handling in several ioctls (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix controller creation races with teardown flow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-rdma: Add warning on state change failure at nvme_rdma_setup_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: cleanup namespace identifier reporting in nvme_init_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: rename __nvme_find_ns_head to nvme_find_ns_head (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: release ida resources (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: Implement get_mdts controller op (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Use nvme_state_terminal helper (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet-rdma: allocate RW ctxs according to mdts (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Add compat_ioctl handler for NVME_IOCTL_SUBMIT_IO (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-fabrics: Use scnprintf() for avoiding potential buffer overflow (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Remove unused return code from nvme_delete_ctrl_sync (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Re-order nvme_pci_free_ctrl (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: properly print controller address (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: Add get_mdts op for controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Simplify nvme_poll_irqdisable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: slimmer CQ head update (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove two-pass completions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Remove tag from process cq (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check ncqr & nsqr for set-features cmd (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Check for readiness more quickly, to speed up boot time (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: code cleanup nvme_identify_ns_desc() (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Don't deter users from enabling hwmon support (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostid via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: expose hostnqn via sysfs for fabrics controllers (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] scsi: treewide: Consolidate {get, put}_unaligned_e24() definitions (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: check sscanf value for subsys serial attr (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: remove unused return code from nvme_alloc_ns (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: configfs code cleanup (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl model configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvmet: make ctrl-id configurable (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme: Fix uninitialized-variable warning (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme-pci: Use single IRQ vector for old Apple models (Gopal Tiwari) [1857052 1857051 1853231] - [nvme] nvme/pci: Add sleep quirk for Samsung and Toshiba drives (Gopal Tiwari) [1857052 1857051 1853231] - [md] dm: fix request-based DM to not bounce through indirect dm_make_request (Mike Snitzer) [1885650] - [md] dm: add support for REQ_NOWAIT and enable it for linear target (Mike Snitzer) [1885650] - [block] block: add QUEUE_FLAG_NOWAIT (Mike Snitzer) [1885650] - [md] dm: export dm_copy_name_and_uuid (Mike Snitzer) [1885650] - [md] dm snap persistent: simplify area_io() (Mike Snitzer) [1885650] - [md] dm thin metadata: Remove unused local variable when create thin and snap (Mike Snitzer) [1885650] - [md] dm raid: fix discard limits for raid0, raid1 and raid10 (Mike Snitzer) [1885650] - [md] dm: use dm_table_get_device_name() where appropriate in targets (Mike Snitzer) [1885650] - [md] dm table: make 'struct dm_table' definition accessible to all of DM core (Mike Snitzer) [1885650] - [md] dm: eliminate need for start_io_acct() forward declaration (Mike Snitzer) [1885650] - [md] dm: simplify __process_abnormal_io() (Mike Snitzer) [1885650] - [md] dm: push use of on-stack flush_bio down to __send_empty_flush() (Mike Snitzer) [1885650] - [md] dm thin metadata: Fix use-after-free in dm_bm_set_read_only (Mike Snitzer) [1885650] - [md] dm thin metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm cache metadata: Avoid returning cmd->bm wild pointer on error (Mike Snitzer) [1885650] - [md] dm integrity: fix error reporting in bitmap mode after creation (Mike Snitzer) [1885650] - [md] dm crypt: Initialize crypto wait structures (Mike Snitzer) [1885650] - [md] dm mpath: fix racey management of PG initialization (Mike Snitzer) [1885650] - [md] dm writecache: handle DAX to partitions on persistent memory correctly (Mike Snitzer) [1885650] - [md] dm ioctl: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm raid: Remove empty if statement (Mike Snitzer) [1885650] - [md] dm verity: Fix compilation warning (Mike Snitzer) [1885650] - [md] dm bufio: do buffer cleanup from a workqueue (Mike Snitzer) [1885650] - [md] dm verity: add "panic_on_corruption" error handling mode (Mike Snitzer) [1885650] - [md] dm: use noio when sending kobject event (Mike Snitzer) [1885650] - [md] dm writecache: add cond_resched to loop in persistent_memory_claim() (Mike Snitzer) [1885650] - [md] dm ioctl: use struct_size() helper in retrieve_deps() (Mike Snitzer) [1885650] - [md] dm writecache: skip writecache_wait when using pmem mode (Mike Snitzer) [1885650] - [md] dm writecache: correct uncommitted_block when discarding uncommitted entry (Mike Snitzer) [1885650] - [md] dm crypt: avoid truncating the logical block size (Mike Snitzer) [1885650] - [md] dm bufio: clean up rbtree block ordering (Mike Snitzer) [1885650] - [documentation] dm integrity: add status line documentation (Mike Snitzer) [1885650] - [md] dm: replace zero-length array with flexible-array (Mike Snitzer) [1885650] - [md] dm mpath: add Historical Service Time Path Selector (Mike Snitzer) [1885650] - [md] dm mpath: pass IO start time to path selector (Mike Snitzer) [1885650] - [md] dm writecache: improve performance on DDR persistent memory (Optane) (Mike Snitzer) [1885650] - [md] dm writecache: remove superfluous test in persistent_memory_claim (Mike Snitzer) [1885650] - [md] dm persistent data: switch exit_ro_spine to return void (Mike Snitzer) [1885650] - [md] dm integrity: remove set but not used variables (Mike Snitzer) [1885650] - [documentation] dm crypt: document encrypted keyring key option (Mike Snitzer) [1885650] - [md] dm crypt: support using encrypted keys (Mike Snitzer) [1885650] - [md] dm verity fec: fix hash block number in verity_fec_decode (Mike Snitzer) [1885650] - [documentation] dm integrity: document allow_discard option (Mike Snitzer) [1885650] - [net] bridge: always clear mcast matching struct on reports and leaves (Ivan Vecera) [1859244] - [net] bridge: increase multicast's default maximum number of entries (Ivan Vecera) [1859244] - [net] bridge: mark hash_elasticity as obsolete (Ivan Vecera) [1859244] - [net] bridge: multicast: use non-bh rcu flavor (Ivan Vecera) [1859244] - [net] bridge: convert multicast to generic rhashtable (Ivan Vecera) [1859244] - [net] revert "net/bridge: Replace call_rcu_bh() and rcu_barrier_bh()" (Ivan Vecera) [1859244] - [net] ip6gre: avoid tx_error when sending MLD/DAD on external tunnels (Davide Caratti) [1847838] - [nvme] nvme-rdma: fix controller reset hang during traffic (Ming Lei) [1881760] - [nvme] nvme-tcp: fix controller reset hang during traffic (Ming Lei) [1881760] - [scsi] scsi: sd: sd_zbc: Fix ZBC disk initialization (Ming Lei) [1881760] - [md] dm: update original bio sector on Zone Append (Ming Lei) [1881760] - [s390] s390/dasd: Fix zero write for FBA devices (Ming Lei) [1881760] - [block] block: restore a specific error code in bdev_del_partition (Ming Lei) [1881760] - [block] blk-stat: make q->stats->lock irqsafe (Ming Lei) [1881760] - [block] blk-iocost: ioc_pd_free() shouldn't assume irq disabled (Ming Lei) [1881760] - [block] block: fix locking in bdev_del_partition (Ming Lei) [1881760] - [block] block: release disk reference in hd_struct_free_work (Ming Lei) [1881760] - [block] loop: Set correct device size when using LOOP_CONFIGURE (Ming Lei) [1881760] - [block] loop: unset GENHD_FL_NO_PART_SCAN on LOOP_CONFIGURE (Ming Lei) [1881760] - [block] block: check queue's limits.discard_granularity in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: don't do revalidate zones on invalid devices (Ming Lei) [1881760] - [s390] s390/dasd: fix inability to use DASD with DIAG driver (Ming Lei) [1881760] - [tools] iocost_monitor: start from the oldest usage index (Ming Lei) [1881760] - [block] iocost: Fix check condition of iocg abs_vdebt (Ming Lei) [1881760] - [block] block: Use non _rcu version of list functions for tag_set_list (Ming Lei) [1881760] - [block] blk-cgroup: show global disk stats in root cgroup io.stat (Ming Lei) [1881760] - [block] blk-cgroup: make iostat functions visible to stat printing (Ming Lei) [1881760] - [block] block: improve discard bio alignment in __blkdev_issue_discard() (Ming Lei) [1881760] - [block] block: defer flush request no matter whether we have elevator (Ming Lei) [1881760] - [block] block: make blk_timeout_init() static (Ming Lei) [1881760] - [block] Revert "blk-rq-qos: remove redundant finish_wait to rq_qos_wait." (Ming Lei) [1881760] - [block] block: relax jiffies rounding for timeouts (Ming Lei) [1881760] - [lib] sbitmap: Consider cleared bits in sbitmap_bitmap_show() (Ming Lei) [1881760] - [block] blk-cgroup: clean up indentation (Ming Lei) [1881760] - [block] blk-cgroup: remove a dead check in blk_throtl_bio (Ming Lei) [1881760] - [block] blk-cgroup: remove blkcg_bio_issue_check (Ming Lei) [1881760] - [block] blk-cgroup: move rcu locking from blkcg_bio_issue_check to blk_throtl_bio (Ming Lei) [1881760] - [kernel] cgroup: unexport cgroup_rstat_updated (Ming Lei) [1881760] - [block] blk-cgroup: remove the !bio->bi_blkg check in blkcg_bio_issue_check (Ming Lei) [1881760] - [block] block: move the initial blkg lookup into blkg_tryget_closest (Ming Lei) [1881760] - [block] block: bypass blkg_tryget_closest for the root_blkg (Ming Lei) [1881760] - [block] block: merge blkg_lookup_create and __blkg_lookup_create (Ming Lei) [1881760] - [block] block: move the bio cgroup associatation helpers to blk-cgroup.c (Ming Lei) [1881760] - [block] block: move bio_associate_blkg_from_page to mm/page_io.c (Ming Lei) [1881760] - [block] block: merge __bio_associate_blkg into bio_associate_blkg_from_css (Ming Lei) [1881760] - [block] block: really clone the block cgroup in bio_clone_blkg_association (Ming Lei) [1881760] - [block] blkcg: clean up blkg_tryget_closest() (Ming Lei) [1881760] - [block] block: remove bio_disassociate_blkg (Ming Lei) [1881760] - [md] dm: use bio_uninit instead of bio_disassociate_blkg (Ming Lei) [1881760] - [block] blk-rq-qos: remove redundant finish_wait to rq_qos_wait (Ming Lei) [1881760] - [block] blktrace: Provide event for request merging (Ming Lei) [1881760] - [fs] block: simplify sb_is_blkdev_sb (Ming Lei) [1881760] - [fs] block: mark bd_finish_claiming static (Ming Lei) [1881760] - [tty] tty/sysrq: emergency_thaw_all does not depend on CONFIG_BLOCK (Ming Lei) [1881760] - [block] blk-iocost: Use struct_size() in kzalloc_node() (Ming Lei) [1881760] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1881760] - [block] block: create the request_queue debugfs_dir on registration (Ming Lei) [1881760] - [block] blk-mq: add a new blk_mq_complete_request_remote API (Ming Lei) [1881760] - [block] blk-mq: factor out a blk_mq_complete_need_ipi helper (Ming Lei) [1881760] - [block] blk-mq: remove the get_cpu/put_cpu pair in blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: move failure injection out of blk_mq_complete_request (Ming Lei) [1881760] - [block] blk-mq: merge the softirq vs non-softirq IPI logic (Ming Lei) [1881760] - [block] blk-mq: short cut the IPI path in blk_mq_force_complete_rq for !SMP (Ming Lei) [1881760] - [block] blk-mq: complete polled requests directly (Ming Lei) [1881760] - [block] blk-mq: remove raise_blk_irq (Ming Lei) [1881760] - [block] blk-mq: factor out a helper to reise the block softirq (Ming Lei) [1881760] - [block] blk-mq: merge blk-softirq.c into blk-mq.c (Ming Lei) [1881760] - [block] nbd: Fix memory leak in nbd_add_socket (Ming Lei) [1881760] - [block] block: make function __bio_integrity_free() static (Ming Lei) [1881760] - [block] virtio-blk: free vblk-vqs in error path of virtblk_probe() (Ming Lei) [1881760] - [block] blk-mq-debugfs: update blk_queue_flag_nameaccordingly for new flags (Ming Lei) [1881760] - [block] block: release bip in a right way in error path (Ming Lei) [1881760] - [fs] block: make function 'kill_bdev' static (Ming Lei) [1881760] - [block] loop: replace kill_bdev with invalidate_bdev (Ming Lei) [1881760] - [block] partitions/ldm: Replace uuid_copy() with import_uuid() where it makes sense (Ming Lei) [1881760] - [block] block: update hctx map when use multiple maps (Ming Lei) [1881760] - [trace] trace/events/block.h: drop kernel-doc for dropped function parameter (Ming Lei) [1881760] - [block] blk-mq: Remove redundant 'return' statement (Ming Lei) [1881760] - [block] umem: remove redundant initialization of variable ret (Ming Lei) [1881760] - [block] pktcdvd: remove redundant initialization of variable ret (Ming Lei) [1881760] - [kernel] blktrace: fix endianness for blk_log_remap() (Ming Lei) [1881760] - [kernel] blktrace: fix endianness in get_pdu_int() (Ming Lei) [1881760] - [kernel] blktrace: use errno instead of bi_status (Ming Lei) [1881760] - [block] block: nr_sects_write(): Disable preemption on seqcount write (Ming Lei) [1881760] - [nvme] block: remove the error argument to the block_bio_complete tracepoint (Ming Lei) [1881760] - [block] loop: Fix wrong masking of status flags (Ming Lei) [1881760] - [block] block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed (Ming Lei) [1881760] - [block] block: always define struct blk_integrity in genhd.h (Ming Lei) [1881760] - [s390] dasd: refactor dasd_ioctl_information (Ming Lei) [1881760] - [block] loop: Add LOOP_CONFIGURE ioctl (Ming Lei) [1881760] - [block] loop: Clean up LOOP_SET_STATUS lo_flags handling (Ming Lei) [1881760] - [block] loop: Rework lo_ioctl() __user argument casting (Ming Lei) [1881760] - [block] loop: Move loop_set_status_from_info() and friends up (Ming Lei) [1881760] - [block] loop: Factor out configuring loop from status (Ming Lei) [1881760] - [block] loop: Remove figure_loop_size() (Ming Lei) [1881760] - [block] loop: Refactor loop_set_status() size calculation (Ming Lei) [1881760] - [block] loop: Switch to set_capacity_revalidate_and_notify() (Ming Lei) [1881760] - [block] loop: Factor out setting loop device size (Ming Lei) [1881760] - [block] loop: Remove sector_t truncation checks (Ming Lei) [1881760] - [block] loop: Call loop_config_discard() only after new config is applied (Ming Lei) [1881760] - [block] block/swim3: use set_current_state macro (Ming Lei) [1881760] - [block] block: mark bio_wouldblock_error() bio with BIO_QUIET (Ming Lei) [1881760] - [block] blk-wbt: rename __wbt_update_limits to wbt_update_limits (Ming Lei) [1881760] - [block] blk-wbt: remove wbt_update_limits (Ming Lei) [1881760] - [block] blk-throttle: remove tg_drain_bios (Ming Lei) [1881760] - [block] blk-throttle: remove blk_throtl_drain (Ming Lei) [1881760] - [block] null_blk: force complete for timeout request (Ming Lei) [1881760] - [block] block: fix a warning when blkdev.h is included for !CONFIG_BLOCK builds (Ming Lei) [1881760] - [block] block: reduce part_stat_lock() scope (Ming Lei) [1881760] - [block] block: use __this_cpu_add() instead of access by smp_processor_id() (Ming Lei) [1881760] - [block] block: remove rcu_read_lock() from part_stat_lock() (Ming Lei) [1881760] - [block] block: add a blk_account_io_merge_bio helper (Ming Lei) [1881760] - [block] block: account merge of two requests (Ming Lei) [1881760] - [block] zram: nvdimm: use bio_{start, end}_io_acct and disk_{start, end}_io_acct (Ming Lei) [1881760] - [nvdimm] nvdimm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [md] dm: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] rsxx: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] drbd: use bio_{start,end}_io_acct (Ming Lei) [1881760] - [block] block: add disk/bio-based accounting helpers (Ming Lei) [1881760] - [block] block: remove the disk and queue NULL checks in blkdev_issue_flush (Ming Lei) [1881760] - [fs] block: remove the error_sector argument to blkdev_issue_flush (Ming Lei) [1881760] - [block] block: Remove unused flush_queue_delayed in struct blk_flush_queue (Ming Lei) [1881760] - [block] null_blk: Zero-initialize read buffers in non-memory-backed mode (Ming Lei) [1881760] - [include] block: Document the bio_vec properties (Ming Lei) [1881760] - [block] bio.h: Declare the arguments of the bio iteration functions const (Ming Lei) [1881760] - [block] block: Fix type of first compat_put_{, u}long() argument (Ming Lei) [1881760] - [block] block: merge part_{inc, dev}_in_flight into their only callers (Ming Lei) [1881760] - [block] block: don't call part_{inc, dec}_in_flight for blk-mq devices (Ming Lei) [1881760] - [block] block: move the blk-mq calls out of part_in_flight{, _rw} (Ming Lei) [1881760] - [block] block: mark blk_account_io_completion static (Ming Lei) [1881760] - [block] blk-mq: allow blk_mq_make_request to consume the q_usage_counter reference (Ming Lei) [1881760] - [kernel] blktrace: Report pid with note messages (Ming Lei) [1881760] - [block] iocost: don't let vrate run wild while there's no saturation signal (Ming Lei) [1881760] - [block] block: move blk_io_schedule() out of header file (Ming Lei) [1881760] - [block] block: export bio_release_pages and bio_iov_iter_get_pages (Ming Lei) [1881760] - [block] null_blk: Support REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: emulate ZONE_APPEND commands (Ming Lei) [1881760] - [scsi] scsi: sd_zbc: factor out sanity checks for zoned commands (Ming Lei) [1881760] - [block] block: Modify revalidate zones (Ming Lei) [1881760] - [block] block: introduce blk_req_zone_write_trylock (Ming Lei) [1881760] - [block] block: Introduce REQ_OP_ZONE_APPEND (Ming Lei) [1881760] - [block] block: rename __bio_add_pc_page to bio_add_hw_page (Ming Lei) [1881760] - [block] block: provide fallbacks for blk_queue_zone_is_seq and blk_queue_zone_no (Ming Lei) [1881760] - [fs] block: add blk_io_schedule() for avoiding task hung in sync dio (Ming Lei) [1881760] - [block] block: don't hold part0's refcount in IO path (Ming Lei) [1881760] - [block] block: only define 'nr_sects_seq' in hd_part for 32bit SMP (Ming Lei) [1881760] - [block] bdi: fix up for "remove the name field in struct backing_dev_info" (Ming Lei) [1881760] - [fs] hfs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] bdi: remove the name field in struct backing_dev_info (Ming Lei) [1881760] - [mtd] bdi: simplify bdi_alloc (Ming Lei) [1881760] - [block] bdi: remove bdi_register_owner (Ming Lei) [1881760] - [mm] bdi: unexport bdi_register_va (Ming Lei) [1881760] - [base] driver core: remove device_create_vargs (Ming Lei) [1881760] - [block] block: rename blk_mq_alloc_rq_maps (Ming Lei) [1881760] - [block] block: rename __blk_mq_alloc_rq_map (Ming Lei) [1881760] - [fs] udf: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] isofs: stop using ioctl_by_bdev (Ming Lei) [1881760] - [fs] hfsplus: stop using ioctl_by_bdev (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_multisession helper (Ming Lei) [1881760] - [cdrom] cdrom: factor out a cdrom_read_tocentry helper (Ming Lei) [1881760] - [ide] ide-cd: rename cdrom_read_tocentry (Ming Lei) [1881760] - [cdrom] block: add a cdrom_device_info pointer to struct gendisk (Ming Lei) [1881760] - [block] block: add a bio_queue_enter helper (Ming Lei) [1881760] - [block] block: replace BIO_QUEUE_ENTERED with BIO_CGROUP_ACCT (Ming Lei) [1881760] - [block] block: improve the submit_bio and generic_make_request documentation (Ming Lei) [1881760] - [block] blk-mq: make function '__blk_mq_sched_dispatch_requests' static (Ming Lei) [1881760] - [block] block: bypass ->make_request_fn for blk-mq drivers (Ming Lei) [1881760] - [md] dm: remove the make_request_fn check in device_area_is_invalid (Ming Lei) [1881760] - [block] block: remove create_io_context (Ming Lei) [1881760] - [fs] block: unexport bdev_read_page and bdev_write_page (Ming Lei) [1881760] - [scsi] scsi: merge scsi_init_sgtable into scsi_init_io (Ming Lei) [1881760] - [block] block: provide a blk_rq_map_sg variant that returns the last element (Ming Lei) [1881760] - [block] block: remove RQF_COPY_USER (Ming Lei) [1881760] - [block] block: fold bdev_unhash_inode into invalidate_partition (Ming Lei) [1881760] - [block] block: simplify block device syncing in bdev_del_partition (Ming Lei) [1881760] - [block] block: don't call invalidate_partition from blk_drop_partitions (Ming Lei) [1881760] - [s390] dasd: use blk_drop_partitions instead of badly reimplementing it (Ming Lei) [1881760] - [block] block: remove the disk argument from blk_drop_partitions (Ming Lei) [1881760] - [block] block: remove hd_struct_kill (Ming Lei) [1881760] - [block] block: cleanup hd_struct freeing (Ming Lei) [1881760] - [block] block: pass a hd_struct to delete_partition (Ming Lei) [1881760] - [block] block: refactor blkpg_ioctl (Ming Lei) [1881760] - [block] null_blk: don't allow discard for zoned mode (Ming Lei) [1881760] - [block] null_blk: return error for invalid zone size (Ming Lei) [1881760] - [block] iocost: protect iocg->abs_vdebt with iocg->waitq.lock (Ming Lei) [1881760] - [block] block: remove the bd_openers checks in blk_drop_partitions (Ming Lei) [1881760] - [block] null_blk: Cleanup zoned device initialization (Ming Lei) [1881760] - [block] null_blk: Fix zoned command handling (Ming Lei) [1881760] - [fs] block: remove unused header (Ming Lei) [1881760] - [fs] bdev: Reduce time holding bd_mutex in sync in blkdev_close() (Ming Lei) [1881760] - [trace] blk-wbt: Drop needless newlines from tracepoint format strings (Ming Lei) [1881760] - [block] blk-wbt: Use tracepoint_string() for wbt_step tracepoint string literals (Ming Lei) [1881760] - [s390] s390/dasd: remove IOSCHED_DEADLINE from DASD Kconfig (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions again (Ming Lei) [1881760] - [block] block: fix busy device checking in blk_drop_partitions (Ming Lei) [1881760] - [block] blkcg: don't offline parent blkcg first (Ming Lei) [1881760] - [block] blkcg: rename blkcg->cgwb_refcnt to ->online_pin and always use it (Ming Lei) [1881760] - [block] null_blk: add trace in null_blk_zoned.c (Ming Lei) [1881760] - [block] null_blk: add tracepoint helpers for zoned mode (Ming Lei) [1881760] - [block] block: add a zone condition debug helper (Ming Lei) [1881760] - [block] rsxx: Replace zero-length array with flexible-array member (Ming Lei) [1881760] - [block] null_blk: describe the usage of fault injection param (Ming Lei) [1881760] - [block] null_blk: fix spurious IO errors after failed past-wp access (Ming Lei) [1881760] - [block] nbd: requeue command if the soecket is changed (Ming Lei) [1881760] - [block] nbd: enable replace socket if only one connection is configured (Ming Lei) [1881760] - [block] block/drbd: delete invalid function drbd_md_mark_dirty_ (Ming Lei) [1881760] - [block] loop: Only freeze block queue when needed (Ming Lei) [1881760] - [block] loop: Only change blocksize when needed (Ming Lei) [1881760] - [block] block: move bdevname() into block/generic-partition-rh.c (Ming Lei) [1881760] - [block] block: return NULL in blk_alloc_queue() on error (Ming Lei) [1881760] - [block] block: simplify queue allocation (Ming Lei) [1881760] - [block] Revert "blkdev: check for valid request queue before issuing flush" (Ming Lei) [1881760] - [block] null_blk: use blk_mq_init_queue_data (Ming Lei) [1881760] - [block] block: add a blk_mq_init_queue_data helper (Ming Lei) [1881760] - [block] block: move the ->devnode callback to struct block_device_operations (Ming Lei) [1881760] - [block] block: move block layer internals out of include/linux/genhd.h (Ming Lei) [1881760] - [fs] block: move guard_bio_eod to bio.c (Ming Lei) [1881760] - [block] block: unexport disk_map_sector_rcu (Ming Lei) [1881760] - [block] block: unexport disk_get_part (Ming Lei) [1881760] - [block] block: mark part_in_flight and part_in_flight_rw static (Ming Lei) [1881760] - [block] block: mark block_depr static (Ming Lei) [1881760] - [block] block: factor out requeue handling from dispatch code (Ming Lei) [1881760] - [block] block/diskstats: replace time_in_queue with sum of request times (Ming Lei) [1881760] - [block] block/diskstats: accumulate all per-cpu counters in one pass (Ming Lei) [1881760] - [block] block: merge partition-generic.c and check.c (Ming Lei) [1881760] - [block] block: move the various x86 Unix label formats out of genhd.h (Ming Lei) [1881760] - [block] partitions/msdos: remove LINUX_SWAP_PARTITION (Ming Lei) [1881760] - [block] block: move the *_PARTITION enum out of genhd.h (Ming Lei) [1881760] - [scsi] block: move struct partition out of genhd.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sun.h (Ming Lei) [1881760] - [block] block: remove block/partitions/sgi.h (Ming Lei) [1881760] - [block] block: remove block/partitions/osf.h (Ming Lei) [1881760] - [block] block: remove block/partitions/karma.h (Ming Lei) [1881760] - [block] block: declare all partition detection routines in check.h (Ming Lei) [1881760] - [block] block: remove warn_no_part (Ming Lei) [1881760] - [md] block: cleanup how md_autodetect_dev is called (Ming Lei) [1881760] - [block] block: unexport read_dev_sector and put_dev_sector (Ming Lei) [1881760] - [scsi] scsi: simplify scsi_partsize (Ming Lei) [1881760] - [block] block: remove alloc_part_info and free_part_info (Ming Lei) [1881760] - [block] block: move sysfs methods shared by disks and partitions to genhd.c (Ming Lei) [1881760] - [block] block: move disk_name and related helpers out of partition-generic.c (Ming Lei) [1881760] - [fs] block: remove __bdevname (Ming Lei) [1881760] - [block] block: remove the blk_lookup_devt export (Ming Lei) [1881760] - [block] block, bfq: invoke flush_idle_tree after reparent_active_queues in pd_offline (Ming Lei) [1881760] - [block] block, bfq: make reparent_leaf_entity actually work only on leaf entities (Ming Lei) [1881760] - [block] block, bfq: turn put_queue into release_process_ref in __bfq_bic_change_cgroup (Ming Lei) [1881760] - [block] block, bfq: move forward the getting of an extra ref in bfq_bfqq_move (Ming Lei) [1881760] - [scsi] scsi: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [nvme] nvme: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] virtio_blk.c: Convert to use set_capacity_revalidate_and_notify (Ming Lei) [1881760] - [block] block/genhd: Notify udev about capacity change (Ming Lei) [1881760] - [fs] block: fix a device invalidation regression (Ming Lei) [1881760] - [block] blk-iocost: remove duplicated lines in comments (Ming Lei) [1881760] - [block] block: sed-opal: Change the check condition for regular session validity (Ming Lei) [1881760] - [block] block: Document genhd capability flags (Ming Lei) [1881760] - [block] block: cleanup comment for blk_flush_complete_seq (Ming Lei) [1881760] - [block] block: remove unneeded argument from blk_alloc_flush_queue (Ming Lei) [1881760] - [block] block: cleanup for _blk/blk_rq_prep_clone (Ming Lei) [1881760] - [block] block: remove redundant setting of QUEUE_FLAG_DYING (Ming Lei) [1881760] - [block] block: use bio_{wouldblock, io}_error in direct_make_request (Ming Lei) [1881760] - [block] block: fix comment for blk_cloned_rq_check_limits (Ming Lei) [1881760] - [block] null_blk: Add support for init_hctx() fault injection (Ming Lei) [1881760] - [block] null_blk: Handle null_add_dev() failures properly (Ming Lei) [1881760] - [block] null_blk: Fix the null_add_dev() error path (Ming Lei) [1881760] - [block] compat_ioctl: simplify up block/ioctl.c (Ming Lei) [1881760] - [block] compat_ioctl: block: simplify compat_blkpg_ioctl() (Ming Lei) [1881760] - [block] compat_ioctl: block: move blkdev_compat_ioctl() into ioctl.c (Ming Lei) [1881760] - [block] blk-mq: insert flush request to the front of dispatch queue (Ming Lei) [1881760] - [block] block: Remove used kblockd_schedule_work_on() (Ming Lei) [1881760] - [block] null_blk: remove unused fields in 'nullb_cmd' (Ming Lei) [1881760] - [block] drbd: fifo_alloc() should use struct_size (Ming Lei) [1881760] - [block] partitions/ldm: fix spelling mistake "to" -> "too" (Ming Lei) [1881760] - [block] block: mark zone-mgmt bios with REQ_SYNC (Ming Lei) [1881760] - [block] blk-mq: Document functions for sending request (Ming Lei) [1881760] - [block] block: Allow t10-pi to be modular (Ming Lei) [1881760] - [block] blk-mq: optimise blk_mq_flush_plug_list() (Ming Lei) [1881760] - [include] list: introduce list_for_each_continue() (Ming Lei) [1881760] - [block] blk-mq: optimise rq sort function (Ming Lei) [1881760] - [block] blk-cgroup: cgroup_rstat_updated() shouldn't be called on cgroup1 (Ming Lei) [1881760] - [block] blk-cgroup: separate out blkg_rwstat under CONFIG_BLK_CGROUP_RWSTAT (Ming Lei) [1881760] - [block] blk-cgroup: reimplement basic IO stats using cgroup rstat (Ming Lei) [1881760] - [block] blk-cgroup: remove now unused blkg_print_stat_{bytes|ios}_recursive() (Ming Lei) [1881760] - [block] blk-throtl: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: Ensure bio->bi_blkg is valid before using it (Ming Lei) [1881760] - [block] bfq-iosched: stop using blkg->stat_bytes and ->stat_ios (Ming Lei) [1881760] - [block] bfq-iosched: relocate bfqg_*rwstat*() helpers (Ming Lei) [1881760] - [md] dm: fix comment in __dm_suspend() (Mike Snitzer) [1881531] - [md] dm: fold dm_process_bio() into dm_make_request() (Mike Snitzer) [1881531] - [md] dm: fix missing imposition of queue_limits from dm_wq_work() thread (Mike Snitzer) [1881531] - [md] dm: optimize max_io_len() by inlining max_io_len_target_boundary() (Mike Snitzer) [1881531] - [md] dm: push md->immutable_target optimization down to __process_bio() (Mike Snitzer) [1881531] - [md] dm: change max_io_len() to use blk_max_size_offset() (Mike Snitzer) [1881531] - [md] dm table: stack 'chunk_sectors' limit to account for target-specific splitting (Mike Snitzer) [1881531] - [block] block: allow 'chunk_sectors' to be non-power-of-2 (Mike Snitzer) [1881531] - [block] block: use lcm_not_zero() when stacking chunk_sectors (Mike Snitzer) [1881531] - [md] dm: fix bio splitting and its bio completion order for regular IO (Mike Snitzer) [1881531] - [net] net-sysfs: add backlog len and CPU id to softnet data (Paolo Abeni) [1866909] - [net] try to avoid unneeded backlog flush (Paolo Abeni) [1866909] - [net] skbuff: fix a data race in skb_queue_len() (Paolo Abeni) [1866909] - [cpuidle] cpuidle: pseries: Fix CEDE latency conversion from tb to us (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Fixup exit latency for CEDE(0) (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Add function to parse extended CEDE records (Diego Domingos) [1608791] - [cpuidle] cpuidle: pseries: Set the latency-hint before entering CEDE (Diego Domingos) [1608791] - [arm64] paravirt: Initialize steal time when cpu is online (Andrew Jones) [1879137]- [infiniband] i40iw: Add support to make destroy QP synchronous (Stefan Assmann) [1757949] - [fs] xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork (Carlos Maiolino) [1859160] - [fs] xfs: fix inode allocation block res calculation precedence (Carlos Maiolino) [1859160] - [fs] xfs: fix reflink quota reservation accounting error (Carlos Maiolino) [1859160] - [fs] xfs: preserve rmapbt swapext block reservation from freed blocks (Carlos Maiolino) [1859160] - [fs] xfs: fix duplicate verification from xfs_qm_dqflush() (Carlos Maiolino) [1859160] - [fs] xfs: fix unmount hang and memory leak on shutdown during quotaoff (Carlos Maiolino) [1859160] - [fs] xfs: factor out quotaoff intent AIL removal and memory free (Carlos Maiolino) [1859160] - [fs] xfs: fix incorrect test in xfs_alloc_ag_vextent_lastblock (Carlos Maiolino) [1859160] - [fs] xfs: fix regression in "cleanup xfs_dir2_block_getdents" (Carlos Maiolino) [1859160] - [fs] xfs: fix use-after-free when aborting corrupt attr inactivation (Carlos Maiolino) [1859160] - [fs] xfs: fix iclog release error check race with shutdown (Carlos Maiolino) [1859160] - [fs] xfs: Add the missed xfs_perag_put() for xfs_ifree_cluster() (Carlos Maiolino) [1859160] - [fs] xfs: clean up the error handling in xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: acquire superblock freeze protection on eofblocks scans (Carlos Maiolino) [1859160] - [fs] xfs: xfs_dabuf_map should return ENOMEM when map allocation fails (Carlos Maiolino) [1859160] - [fs] xfs: fix xfs_buf_ioerror_alert location reporting (Carlos Maiolino) [1859160] - [fs] xfs: remove unnecessary null pointer checks from _read_agf callers (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_*read_agf return EAGAIN to ALLOC_FLAG_TRYLOCK callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_btree_get_buffunctions (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_trans_get_buf_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_uncached return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_read_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_get_map return an error code (Carlos Maiolino) [1859160] - [fs] xfs: make xfs_buf_alloc return an error code (Carlos Maiolino) [1859160] - [fs] xfs: fix uninitialized variable in xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: change return value of xfs_inode_need_cow to int (Carlos Maiolino) [1859160] - [fs] xfs: check log iovec size to make sure it's plausibly a buffer log format (Carlos Maiolino) [1859160] - [fs] xfs: make struct xfs_buf_log_format have a consistent size (Carlos Maiolino) [1859160] - [fs] xfs: complain if anyone tries to create a too-large buffer log item (Carlos Maiolino) [1859160] - [fs] xfs: clean up xfs_buf_item_get_format return value (Carlos Maiolino) [1859160] - [fs] xfs: streamline xfs_attr3_leaf_inactive (Carlos Maiolino) [1859160] - [fs] xfs: fix memory corruption during remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: refactor remote attr value buffer invalidation (Carlos Maiolino) [1859160] - [fs] xfs: fix IOCB_NOWAIT handling in xfs_file_dio_aio_read (Carlos Maiolino) [1859160] - [fs] xfs: Add __packed to xfs_dir2_sf_entry_t definition (Carlos Maiolino) [1859160] - [fs] xfs: fix s_maxbytes computation on 32-bit kernels (Carlos Maiolino) [1859160] - [fs] xfs: truncate should remove all blocks, not just to the end of the page cache (Carlos Maiolino) [1859160] - [fs] xfs: introduce XFS_MAX_FILEOFF (Carlos Maiolino) [1859160] - [fs] xfs: remove bogus assertion when online repair isn't enabled (Carlos Maiolino) [1859160] - [fs] xfs: Remove all strlen in all xfs_attr_* functions for attr names (Carlos Maiolino) [1859160] - [fs] xfs: fix misuse of the XFS_ATTR_INCOMPLETE flag (Carlos Maiolino) [1859160] - [fs] xfs: also remove cached ACLs when removing the underlying attr (Carlos Maiolino) [1859160] - [fs] xfs: reject invalid flags combinations in XFS_IOC_ATTRMULTI_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove shadow variable in xfs_btree_lshift (Carlos Maiolino) [1859160] - [fs] xfs: quota: move to time64_t interfaces (Carlos Maiolino) [1859160] - [fs] xfs: Make the symbol 'xfs_rtalloc_log_count' static (Carlos Maiolino) [1859160] - [fs] libxfs: resync with the userspace libxfs (Carlos Maiolino) [1859160] - [fs] xfs: fix log reservation overflows when allocating large rt extents (Carlos Maiolino) [1859160] - [fs] xfs: fix mount failure crash on invalid iclog memory access (Carlos Maiolino) [1859160] - [fs] xfs: don't check for AG deadlock for realtime files in bunmapi (Carlos Maiolino) [1859160] - [fs] xfs: fix realtime file data space leak (Carlos Maiolino) [1859160] - [fs] xfs: allow parent directory scans to be interrupted with fatal signals (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_get_buf (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_read_buf (Carlos Maiolino) [1859160] - [fs] xfs: split xfs_da3_node_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leafn_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_dir3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_attr3_leaf_read (Carlos Maiolino) [1859160] - [fs] xfs: remove the mappedbno argument to xfs_da_reada_buf (Carlos Maiolino) [1859160] - [fs] xfs: improve the xfs_dabuf_map calling conventions (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: simplify mappedbno handling in xfs_da_{get, read}_buf (Carlos Maiolino) [1859160] - [fs] xfs: report corruption only as a regular error (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_free() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove kmem_zone_destroy() wrapper (Carlos Maiolino) [1859160] - [fs] xfs: Remove slab init wrappers (Carlos Maiolino) [1859160] - [fs] xfs: fix another missing include (Carlos Maiolino) [1859160] - [fs] xfs: remove XFS_IOC_FSSETDM and XFS_IOC_FSSETDM_BY_HANDLE (Carlos Maiolino) [1859160] - [fs] xfs: remove duplicated include from xfs_dir2_data.c (Carlos Maiolino) [1859160] - [fs] xfs: remove unused structure members & simple typedefs (Carlos Maiolino) [1859160] - [fs] xfs: remove unused typedef definitions (Carlos Maiolino) [1859160] - [fs] xfs: Replace function declaration by actual definition (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_qoff_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_dq_logitem_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_quotainfo_t typedef (Carlos Maiolino) [1859160] - [fs] xfs: remove the xfs_disk_dquot_t and xfs_dquot_t (Carlos Maiolino) [1859160] - [fs] xfs: avoid time_t in user api (Carlos Maiolino) [1859160] - [fs] xfs: don't reset the "inode core" in xfs_iread (Carlos Maiolino) [1859160] - [fs] xfs: merge the projid fields in struct xfs_icdinode (Carlos Maiolino) [1859160] - [fs] xfs: use a struct timespec64 for the in-core crtime (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->m_dirnameops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused m_chsize field (Carlos Maiolino) [1859160] - [fs] xfs: convert open coded corruption check to use XFS_IS_CORRUPT (Carlos Maiolino) [1859160] - [fs] xfs: kill the XFS_WANT_CORRUPT_* macros (Carlos Maiolino) [1859160] - [fs] xfs: add a XFS_IS_CORRUPT macro (Carlos Maiolino) [1859160] - [fs] xfs: attach dquots before performing xfs_swap_extents (Carlos Maiolino) [1859160] - [fs] xfs: actually check xfs_btree_check_block return in xfs_btree_islastblock (Carlos Maiolino) [1859160] - [fs] xfs: always pass a valid hdr to xfs_dir3_leaf_check_int (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_dir2_data_freescan and xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused dir ops infrastructure (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_get_ftype and ->data_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_bestfree_p (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 data block fixed offsets to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entry_tag_p (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->data_entsize (Carlos Maiolino) [1859160] - [fs] xfs: replace xfs_dir3_data_endp with xfs_dir3_data_end_offset (Carlos Maiolino) [1859160] - [fs] xfs: remove the now unused ->data_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: cleanup __xfs_dir3_data_check (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_data_freescan_int (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_to_sf (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_directory_data_bestfree (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xchk_dir_rec (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_leaf_getdents (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_dir2_block_getdents (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_unused_p method (Carlos Maiolino) [1859160] - [fs] xfs: remove the ->data_dot_entry_p and ->data_dotdot_entry_p methods (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dotdot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the data_dot_offset field in struct xfs_dir_ops (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ->data_first_entry_p method (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ftype and ->sf_put_ftype (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_ino and ->sf_put_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_entsize and ->sf_nextentry (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->sf_get_parent_ino and ->sf_put_parent_ino (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->db_to_fdb and ->db_to_fdindex (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 free bests count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 free header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a bests pointer to struct xfs_dir3_icfree_hdr (Carlos Maiolino) [1859160] - [fs] xfs: make the xfs_dir3_icfree_hdr available to xfs_dir2_node_addname_int (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->free_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the max dir2 leaf entries count to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move the dir2 leaf header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add an entries pointer to struct xfs_dir3_icleaf_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->leaf_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: move the node header size to struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: add a btree entries pointer to struct xfs_da3_icnode_hdr (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_to_disk (Carlos Maiolino) [1859160] - [fs] xfs: devirtualize ->node_hdr_from_disk (Carlos Maiolino) [1859160] - [fs] xfs: refactor btree node scrubbing (Carlos Maiolino) [1859160] - [fs] xfs: use unsigned int for all size values in struct xfs_da_geometry (Carlos Maiolino) [1859160] - [fs] xfs: move incore structures out of xfs_da_format.h (Carlos Maiolino) [1859160] - [fs] xfs: remove a stray tab in xfs_remount_rw() (Carlos Maiolino) [1859160] - [fs] xfs: convert EIO to EFSCORRUPTED when log contents are invalid (Carlos Maiolino) [1859160] - [fs] xfs: refactor "does this fork map blocks" predicate (Carlos Maiolino) [1859160] - [fs] xfs: clean up weird while loop in xfs_alloc_ag_vextent_near (Carlos Maiolino) [1859160] - [fs] xfs: annotate functions that trip static checker locking checks (Carlos Maiolino) [1859160] - [fs] xfs: Correct comment tyops -> typos (Carlos Maiolino) [1859160] - [fs] xfs: range check ri_cnt when recovering log items (Carlos Maiolino) [1859160] - [fs] xfs: "optimize" buffer item log segment bitmap setting (Carlos Maiolino) [1859160] - [fs] xfs: null out bma->prev if no previous extent (Carlos Maiolino) [1859160] - [fs] xfs: fix missing header includes (Carlos Maiolino) [1859160] - [fs] xfs: periodically yield scrub threads to the scheduler (Carlos Maiolino) [1859160] - [fs] xfs: remove redundant assignment to variable error (Carlos Maiolino) [1859160] - [fs] xfs: add missing early termination checks to record scrubbing functions (Carlos Maiolino) [1859160] - [fs] xfs: make the assertion message functions take a mount parameter (Carlos Maiolino) [1859160] - [fs] xfs: add missing assert in xfs_fsmap_owner_from_rmap (Carlos Maiolino) [1859160] - [fs] xfs: decrease indenting problems in xfs_dabuf_map (Carlos Maiolino) [1859160] - [fs] xfs: fold xfs_mount-alloc() into xfs_init_fs_context() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_parse_param() above xfs_fc_get_tree() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_get_tree() above xfs_fc_reconfigure() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_fc_reconfigure() above xfs_fc_free() (Carlos Maiolino) [1859160] - [fs] xfs: switch to use the new mount-api (Carlos Maiolino) [1859160] - [fs] xfs: dont set sb in xfs_mount_alloc() (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_parseargs() validation to a helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_parseags() (Carlos Maiolino) [1859160] - [fs] xfs: avoid redundant checks when options is empty (Carlos Maiolino) [1859160] - [fs] xfs: refactor suffix_kstrtoint() (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_ro() helper (Carlos Maiolino) [1859160] - [fs] xfs: add xfs_remount_rw() helper (Carlos Maiolino) [1859160] - [fs] xfs: merge freeing of mp names and mp (Carlos Maiolino) [1859160] - [fs] xfs: use kmem functions for struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: dont use XFS_IS_QUOTA_RUNNING() for option check (Carlos Maiolino) [1859160] - [fs] xfs: use super s_id instead of struct xfs_mount m_fsname (Carlos Maiolino) [1859160] - [fs] xfs: remove unused struct xfs_mount field m_fsname_len (Carlos Maiolino) [1859160] - [fs] xfs: always log corruption errors (Carlos Maiolino) [1859160] - [fs] xfs: constify the buffer pointer arguments to error functions (Carlos Maiolino) [1859160] - [fs] xfs: relax shortform directory size checks (Carlos Maiolino) [1859160] - [fs] xfs: cleanup use of the XFS_ALLOC_ flags (Carlos Maiolino) [1859160] - [fs] xfs: move extent zeroing to xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmapi_allocate (Carlos Maiolino) [1859160] - [fs] xfs: simplify the xfs_iomap_write_direct calling (Carlos Maiolino) [1859160] - [fs] xfs: don't log the inode in xfs_fs_map_blocks if it (Carlos Maiolino) [1859160] - [fs] xfs: slightly tweak an assert in xfs_fs_map_blocks (Carlos Maiolino) [1859160] - [fs] xfs: remove the extsize argument to xfs_eof_alignment (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_eof_alignment static (Carlos Maiolino) [1859160] - [fs] xfs: simplify xfs_iomap_eof_align_last_fsb (Carlos Maiolino) [1859160] - [fs] xfs: merge xfs_showargs into xfs_fs_show_options (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing inode32/64 in xfs_showargs (Carlos Maiolino) [1859160] - [fs] xfs: clean up printing the allocsize option in (Carlos Maiolino) [1859160] - [fs] xfs: reverse the polarity of XFS_MOUNT_COMPAT_IOSIZE (Carlos Maiolino) [1859160] - [fs] xfs: rename the XFS_MOUNT_DFLT_IOSIZE option to (Carlos Maiolino) [1859160] - [fs] xfs: simplify parsing of allocsize mount option (Carlos Maiolino) [1859160] - [fs] xfs: rename the m_writeio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: remove the m_readio_* fields in struct xfs_mount (Carlos Maiolino) [1859160] - [fs] xfs: don't use a different allocsice for -o wsync (Carlos Maiolino) [1859160] - [fs] xfs: cleanup calculating the stat optimal I/O size (Carlos Maiolino) [1859160] - [fs] xfs: remove the dsunit and dswidth variables in (Carlos Maiolino) [1859160] - [fs] xfs: simplify setting bio flags (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_iread_extents to use xfs_btree_visit_blocks (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_bmap_count_blocks using newer btree helpers (Carlos Maiolino) [1859160] - [fs] xfs: replace -EIO with -EFSCORRUPTED for corrupt metadata (Carlos Maiolino) [1859160] - [fs] xfs: namecheck directory entry names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: namecheck attribute names before listing them (Carlos Maiolino) [1859160] - [fs] xfs: check attribute leaf block structure (Carlos Maiolino) [1859160] - [fs] xfs: consolidate preallocation in xfs_file_fallocate (Carlos Maiolino) [1859160] - [fs] xfs: disable xfs_ioc_space for always COW inodes (Carlos Maiolino) [1859160] - [fs] fs: add generic UNRESVSP and ZERO_RANGE ioctl handlers (Carlos Maiolino) [1859160] - [fs] xfs: don't implement XFS_IOC_RESVSP / XFS_IOC_RESVSP64 (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_ioctl (Carlos Maiolino) [1859160] - [fs] xfs: use xfs_inode_buftarg in xfs_file_dio_aio_write (Carlos Maiolino) [1859160] - [fs] xfs: add a xfs_inode_buftarg helper (Carlos Maiolino) [1859160] - [fs] xfs: mark xfs_buf_free static (Carlos Maiolino) [1859160] - [fs] xfs: add mising include of xfs_pnfs.h for missing declarations (Carlos Maiolino) [1859160] - [fs] xfs: don't set bmapi total block req where minleft is (Carlos Maiolino) [1859160] - [fs] xfs: cap longest free extent to maximum allocatable (Carlos Maiolino) [1859160] - [fs] xfs: remove the duplicated inode log fieldmask set (Carlos Maiolino) [1859160] - [fs] xfs: improve the IOMAP_NOWAIT check for COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: cleanup xfs_direct_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: rename the whichfork variable in xfs_buffered_write_iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: split the iomap ops for buffered vs direct writes (Carlos Maiolino) [1859160] - [fs] xfs: move xfs_file_iomap_begin_delay around (Carlos Maiolino) [1859160] - [fs] xfs: split out a new set of read-only iomap ops (Carlos Maiolino) [1859160] - [fs] xfs: factor out a helper to calculate the end_fsb (Carlos Maiolino) [1859160] - [fs] xfs: fill out the srcmap in iomap_begin (Carlos Maiolino) [1859160] - [fs] xfs: refactor xfs_file_iomap_begin_delay (Carlos Maiolino) [1859160] - [fs] xfs: pass two imaps to xfs_reflink_allocate_cow (Carlos Maiolino) [1859160] - [fs] xfs: remove xfs_reflink_dirty_extents (Carlos Maiolino) [1859160] - [fs] xfs: also call xfs_file_iomap_end_delalloc for zeroing operations (Carlos Maiolino) [1859160] - [fs] xfs: remove the XLOG_STATE_DO_CALLBACK state (Carlos Maiolino) [1859160] - [fs] xfs: turn ic_state into an enum (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused XLOG_STATE_ALL and XLOG_STATE_UNUSED flags (Carlos Maiolino) [1859160] - [fs] xfs: remove dead ifdef XFSERRORDEBUG code (Carlos Maiolino) [1859160] - [fs] xfs: call xlog_state_release_iclog with l_icloglock held (Carlos Maiolino) [1859160] - [fs] xfs: move the locking from xlog_state_finish_copy to the callers (Carlos Maiolino) [1859160] - [fs] xfs: remove the unused ic_io_size field from xlog_in_core (Carlos Maiolino) [1859160] - [fs] xfs: pass the correct flag to xlog_write_iclog (Carlos Maiolino) [1859160] - [fs] xfs: optimize near mode bnobt scans with concurrent cntbt lookups (Carlos Maiolino) [1859160] - [fs] xfs: factor out tree fixup logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: refactor near mode alloc bnobt scan into separate function (Carlos Maiolino) [1859160] - [fs] xfs: refactor and reuse best extent scanning logic (Carlos Maiolino) [1859160] - [fs] xfs: refactor allocation tree fixup code (Carlos Maiolino) [1859160] - [fs] xfs: reuse best extent tracking logic for bnobt scan (Carlos Maiolino) [1859160] - [fs] xfs: refactor cntbt lastblock scan best extent logic into helper (Carlos Maiolino) [1859160] - [fs] xfs: track best extent from cntbt lastblock scan in alloc cursor (Carlos Maiolino) [1859160] - [fs] xfs: track allocation busy state in allocation cursor (Carlos Maiolino) [1859160] - [fs] xfs: introduce allocation cursor data structure (Carlos Maiolino) [1859160] - [fs] xfs: track active state of allocation btree cursors (Carlos Maiolino) [1859160] - [fs] xfs: ignore extent size hints for always COW inodes (Carlos Maiolino) [1859160] - [fs] xfs: include QUOTA, FATAL ASSERT build options in XFS_BUILD_OPTIONS (Carlos Maiolino) [1859160] - [pinctrl] pinctrl: tigerlake: Add support for Tiger Lake-H (Steve Best) [1782722] - [pinctrl] pinctrl: intel: Introduce common flags for GPIO mapping scheme (Steve Best) [1782722] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCH-H PCI IDs (Steve Best) [1782724]- [netdrv] iavf: Fix incorrect adapter get in iavf_resume (Stefan Assmann) [1842896] - [netdrv] iavf: use generic power management (Stefan Assmann) [1842896] - [net] openvswitch: fixes crash if nf_conncount_init() fails (Eelco Chaudron) [1876445] - [fs] cifs`: handle ERRBaduid for SMB1 (Leif Sahlberg) [1875184] - [net] SUNRPC: 'Directory with parent 'rpc_clnt' already present!' (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Don't use RPC_TASK_CRED_NOREF with pnfs (Scott Mayhew) [1872310] - [fs] NFS: Don't use RPC_TASK_CRED_NOREF with delegreturn (Scott Mayhew) [1872310] - [net] SUNRPC: Signalled ASYNC tasks need to exit (Scott Mayhew) [1872310] - [net] SUNRPC: fix use-after-free in rpc_free_client_work() (Scott Mayhew) [1872310] - [fs] NFS: Fix a race in __nfs_list_for_each_server() (Scott Mayhew) [1872310] - [net] SUNRPC: defer slow parts of rpc_free_client() to a workqueue (Scott Mayhew) [1872310] - [net] SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()") (Scott Mayhew) [1872310] - [fs] NFSv4: Remove unreachable error condition due to rpc_run_task() (Scott Mayhew) [1872310] - [net] SUNRPC: Remove unreachable error condition (Scott Mayhew) [1872310] - [fs] nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix a credential use-after-free issue in pnfs_roc() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Ensure that _pnfs_return_layout() waits for layoutreturn completion (Scott Mayhew) [1872310] - [net] svcrdma: Fix leak of svc_rdma_recv_ctxt objects (Scott Mayhew) [1872310] - [fs] NFS: Fix an ABBA spinlock issue in pnfs_update_layout() (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge (Scott Mayhew) [1872310] - [fs] nfsd: memory corruption in nfsd4_lock() (Scott Mayhew) [1872310] - [fs] pNFS: Fix RCU lock leakage (Scott Mayhew) [1872310] - [fs] NFS: Clean up process of marking inode stale (Scott Mayhew) [1872310] - [fs] NFS: Add softreval behaviour to nfs_lookup_revalidate() (Scott Mayhew) [1872310] - [fs] NFS: Add mount option 'softreval' (Scott Mayhew) [1872310] - [net] SUNRPC: Don't start a timer on an already queued rpc task (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Reference the layout cred in pnfs_prepare_layoutreturn() (Scott Mayhew) [1872310] - [fs] NFS/pnfs: Fix dereference of layout cred in pnfs_layoutcommit_inode() (Scott Mayhew) [1872310] - [fs] NFS: Beware when dereferencing the delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Add a module parameter to set nfs_mountpoint_expiry_timeout (Scott Mayhew) [1872310] - [fs] NFS: Try to join page groups before an O_DIRECT retransmission (Scott Mayhew) [1872310] - [fs] NFS: Refactor nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Reverse the submission order of requests in __nfs_pageio_add_request() (Scott Mayhew) [1872310] - [fs] NFS: Clean up nfs_lock_and_join_requests() (Scott Mayhew) [1872310] - [fs] NFS: Remove the redundant function nfs_pgio_has_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix memory leaks in nfs_pageio_stop_mirroring() (Scott Mayhew) [1872310] - [fs] NFS: Fix a request reference leak in nfs_direct_write_clear_reqs() (Scott Mayhew) [1872310] - [fs] NFS: Fix races nfs_page_group_destroy() vs nfs_destroy_unlinked_subrequests() (Scott Mayhew) [1872310] - [fs] NFS: Remove unused FLUSH_SYNC support in nfs_initiate_pgio() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Specify the layout segment range in LAYOUTGET (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: remove requirement for whole file layouts (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Check the layout segment range before doing I/O (Scott Mayhew) [1872310] - [fs] pNFS/flexfile: Don't merge layout segments if the mirrors don't match (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Fix pnfs_layout_mark_request_commit() invalid layout segment handling (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Simplify bucket layout segment reference counting (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Clean up pNFS commit operations (Scott Mayhew) [1872310] - [fs] NFS: Remove bucket array from struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Add a helper pnfs_generic_search_commit_reqs() (Scott Mayhew) [1872310] - [fs] pNFS: Enable per-layout segment commit structures (Scott Mayhew) [1872310] - [fs] pNFS: Add infrastructure for cleaning up per-layout commit structures (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Support commit arrays in nfs_clear_pnfs_ds_commit_verifiers() (Scott Mayhew) [1872310] - [fs] NFS: Fix O_DIRECT commit verifier handling (Scott Mayhew) [1872310] - [fs] NFS: commit errors should be fatal (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Allow O_DIRECT to release the DS commitinfo (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS: Support per-layout segment commits in pnfs_generic_recover_commit_reqs() (Scott Mayhew) [1872310] - [fs] NFSv4/pNFS: Scan the full list of commit arrays when committing (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Support a list of commit arrays in struct pnfs_ds_commit_info (Scott Mayhew) [1872310] - [net] SUNRPC: Fix a potential buffer overflow in 'svc_print_xprts()' (Scott Mayhew) [1872310] - [include] SUNRPC/cache: don't allow invalid entries to be flushed (Scott Mayhew) [1872310] - [fs] pNFS: Add a helper to allocate the array of buckets (Scott Mayhew) [1872310] - [fs] NFS/pNFS: Refactor pnfs_generic_commit_pagelist() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Simplify allocation of the mirror array (Scott Mayhew) [1872310] - [fs] NFS: Don't specify NFS version in "UDP not supported" error (Scott Mayhew) [1872310] - [fs] nfsroot: set tcp as the default transport protocol (Scott Mayhew) [1872310] - [fs] NFS: direct.c: Fix memory leak of dreq when nfs_get_lock_context fails (Scott Mayhew) [1872310] - [fs] nfs: Fix up documentation in nfs_follow_referral() and nfs_do_submount() (Scott Mayhew) [1872310] - [net] sunrpc: Add tracing for cache events (Scott Mayhew) [1872310] - [net] SUNRPC/cache: Allow garbage collection of invalid cache entries (Scott Mayhew) [1872310] - [net] sunrpc: clean up cache entry add/remove from hashtable (Scott Mayhew) [1872310] - [net] sunrpc: Fix potential leaks in sunrpc_cache_unhash() (Scott Mayhew) [1872310] - [fs] nfsd: export upcalls must not return ESTALE when mountd is down (Scott Mayhew) [1872310] - [fs] nfsd: Don't add locks to closed or closing open stateids (Scott Mayhew) [1872310] - [net] SUNRPC: Teach server to use xprt_sock_sendmsg for socket sends (Scott Mayhew) [1872310] - [net] SUNRPC: Refactor xs_sendpages() (Scott Mayhew) [1872310] - [fs] NFSD: Clean up nfsd4_encode_readv (Scott Mayhew) [1872310] - [fs] fs: nfsd: nfs4state.c: Use built-in RCU list checking (Scott Mayhew) [1872310] - [net] sunrpc: Pass lockdep expression to RCU lists (Scott Mayhew) [1872310] - [include] sunrpc: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [net] SUNRPC: Trim stack utilization in the wrap and unwrap paths (Scott Mayhew) [1872310] - [net] SUNRPC: Remove xdr_buf_read_mic() (Scott Mayhew) [1872310] - [net] sunrpc: Fix gss_unwrap_resp_integ() again (Scott Mayhew) [1872310] - [fs] nfs: Replace zero-length array with flexible-array member (Scott Mayhew) [1872310] - [fs] NFSv4.2: error out when relink swapfile (Scott Mayhew) [1872310] - [fs] NFS:remove redundant call to nfs_do_access (Scott Mayhew) [1872310] - [net] SUNRPC: remove redundant assignments to variable status (Scott Mayhew) [1872310] - [fs] NFSv4: Add support for CB_RECALL_ANY for flexfiles layouts (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_expired() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_delegation_reap_unclaimed() (Scott Mayhew) [1872310] - [fs] NFSv4: Clean up nfs_client_return_marked_delegations() (Scott Mayhew) [1872310] - [fs] NFS: Add a helper nfs_client_for_each_server() (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Clean up nfs_layout_find_inode() (Scott Mayhew) [1872310] - [fs] NFSv4: Ensure layout headers are RCU safe (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: Return valid stateids in nfs_layout_find_inode_by_stateid() (Scott Mayhew) [1872310] - [fs] pNFS/flexfiles: Report DELAY and GRACE errors from the DS to the server (Scott Mayhew) [1872310] - [fs] NFS: Limit the size of the access cache by default (Scott Mayhew) [1872310] - [fs] NFS: Avoid referencing the cred twice in async rename/unlink (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid unnecessary credential references in layoutget (Scott Mayhew) [1872310] - [fs] NFSv4: Avoid referencing the cred unnecessarily during NFSv4 I/O (Scott Mayhew) [1872310] - [fs] NFS: Assume cred is pinned by open context in I/O requests (Scott Mayhew) [1872310] - [net] SUNRPC: Don't take a reference to the cred on synchronous tasks (Scott Mayhew) [1872310] - [net] SUNRPC: Add a flag to avoid reference counts on credentials (Scott Mayhew) [1872310] - [fs] NFS: Ensure we time out if a delegreturn does not complete (Scott Mayhew) [1872310] - [fs] NFSv4/pnfs: pnfs_set_layout_stateid() should update the layout cred (Scott Mayhew) [1872310] - [fs] NFSv4: nfs_update_inplace_delegation() should update delegation cred (Scott Mayhew) [1872310] - [fs] NFS: Use the 64-bit server readdir cookies when possible (Scott Mayhew) [1872310] - [net] Documentation: nfsroot.rst: Fix references to nfsroot.rst (Scott Mayhew) [1872310] - [fs] nfs: add missing "posix" local_lock constant table definition (Scott Mayhew) [1622041] - [samples] samples/vfs: avoid warning in statx override (Scott Mayhew) [1622041] - [fs] Fix use after free in get_tree_bdev() (Scott Mayhew) [1622041] - [security] selinux: fix regression introduced by move_mount(2) syscall (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs() (Scott Mayhew) [1622041] - [fs] mm/hugetlbfs: fix error handling when setting up mounts (Scott Mayhew) [1622041] - [fs] cramfs: fix usage on non-MTD device (Scott Mayhew) [1622041] - [fs] vfs: move_mount: reject moving kernel internal mounts (Scott Mayhew) [1622041] - [fs] do_move_mount(): fix an unsafe use of is_anon_ns() (Scott Mayhew) [1622041] - [fs] fs/namespace: fix unprivileged mount propagation (Scott Mayhew) [1622041] - [fs] vfs: fsmount: add missing mntget() (Scott Mayhew) [1622041] - [fs] get rid of checking for absent device name in vfs_get_tree() (Scott Mayhew) [1622041] - [scripts] scripts/gdb: replace flags (MS_xyz -> SB_xyz) (Scott Mayhew) [1622041] - [mm] tmpfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [fs] procfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] hugetlbfs: switch to use of invalfc() (Scott Mayhew) [1622041] - [fs] cramfs: switch to use of errofc() et.al (Scott Mayhew) [1622041] - [fs] gfs2: switch to use of errorfc() et.al (Scott Mayhew) [1622041] - [include] prefix-handling analogues of errorf() and friends (Scott Mayhew) [1622041] - [fs] turn fs_param_is_... into functions (Scott Mayhew) [1622041] - [fs] fs_parse: handle optional arguments sanely (Scott Mayhew) [1622041] - [fs] fs_parse: fold fs_parameter_desc/fs_parameter_spec (Scott Mayhew) [1622041] - [x86] x86/resctrl: Fix typos in the mba_sc mount option (Scott Mayhew) [1622041] - [fs] fs_parser: remove fs_parameter_description name field (Scott Mayhew) [1622041] - [documentation] vfs: Update mount API docs (Scott Mayhew) [1622041] - [fs] add prefix to fs_context->log (Scott Mayhew) [1622041] - [include] new primitive: __fs_parse() (Scott Mayhew) [1622041] - [include] struct p_log, variants of warnf() et.al. taking that one instead (Scott Mayhew) [1622041] - [fs] teach logfc() to handle prefices, give it saner calling conventions (Scott Mayhew) [1622041] - [kernel] get rid of cg_invalf() (Scott Mayhew) [1622041] - [fs] get rid of fs_value_is_filename_empty (Scott Mayhew) [1622041] - [fs] don't bother with explicit length argument for __lookup_constant() (Scott Mayhew) [1622041] - [fs] fold struct fs_parameter_enum into struct constant_table (Scott Mayhew) [1622041] - [fs] fs_parse: get rid of ->enums (Scott Mayhew) [1622041] - [fs] fs: fs_parser: fix printk format warning (Scott Mayhew) [1622041] - [fs] Pass consistent param->type to fs_parse() (Scott Mayhew) [1622041] - [fs] vfs: add missing blkdev_put() in get_tree_bdev() (Scott Mayhew) [1622041] - [mm] shmem: fix LSM options parsing (Scott Mayhew) [1622041] - [fs] gfs2: make gfs2_fs_parameters static (Scott Mayhew) [1622041] - [fs] gfs2: Fix initialisation of args for remount (Scott Mayhew) [1622041] - [fs] gfs2: Fix memory leak when gfs2meta's fs_context is freed (Scott Mayhew) [1622041] - [fs] gfs2: Convert gfs2 to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Fix fscache super_cookie allocation (Scott Mayhew) [1622041] - [fs] NFS: Fix a few constant_table array definitions (Scott Mayhew) [1622041] - [fs] NFS: Fix leak of ctx->nfs_server.hostname (Scott Mayhew) [1622041] - [fs] NFS: Don't hard-code the fs_type when submounting (Scott Mayhew) [1622041] - [fs] NFS: Ensure the fs_context has the correct fs_type before mounting (Scott Mayhew) [1622041] - [fs] nfs: Return EINVAL rather than ERANGE for mount parse errors (Scott Mayhew) [1622041] - [fs] NFS: Attach supplementary error information to fs_context (Scott Mayhew) [1622041] - [fs] NFS: Additional refactoring for fs_context conversion (Scott Mayhew) [1622041] - [fs] NFS: Add fs_context support (Scott Mayhew) [1622041] - [fs] NFS: Convert mount option parsing to use functionality from fs_parser.h (Scott Mayhew) [1622041] - [fs] NFS: rename nfs_fs_context pointer arg in a few functions (Scott Mayhew) [1622041] - [fs] NFS: Do some tidying of the parsing code (Scott Mayhew) [1622041] - [fs] NFS: Add a small buffer in nfs_fs_context to avoid string dup (Scott Mayhew) [1622041] - [fs] NFS: Deindent nfs_fs_context_parse_option() (Scott Mayhew) [1622041] - [fs] NFS: Split nfs_parse_mount_options() (Scott Mayhew) [1622041] - [fs] NFS: Rename struct nfs_parsed_mount_data to struct nfs_fs_context (Scott Mayhew) [1622041] - [fs] NFS: Constify mount argument match tables (Scott Mayhew) [1622041] - [fs] NFS: Move mount parameterisation bits into their own file (Scott Mayhew) [1622041] - [fs] nfs: get rid of ->set_security() (Scott Mayhew) [1622041] - [fs] nfs_clone_sb_security(): simplify the check for server bogosity (Scott Mayhew) [1622041] - [fs] nfs: get rid of mount_info ->fill_super() (Scott Mayhew) [1622041] - [fs] nfs: don't pass nfs_subversion to ->create_server() (Scott Mayhew) [1622041] - [fs] nfs: unexport nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: merge xdev and remote file_system_type (Scott Mayhew) [1622041] - [fs] nfs: don't bother passing nfs_subversion to ->try_mount() and nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] nfs: stash nfs_subversion reference into nfs_mount_info (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs_xdev_mount() (Scott Mayhew) [1622041] - [fs] nfs4: fold nfs_do_root_mount/nfs_follow_remote_path (Scott Mayhew) [1622041] - [fs] nfs: don't bother setting/restoring export_path around do_nfs_root_mount() (Scott Mayhew) [1622041] - [fs] nfs: fold nfs4_remote_fs_type and nfs4_remote_referral_fs_type (Scott Mayhew) [1622041] - [fs] nfs: lift setting mount_info from nfs4_remote{, _referral}_mount (Scott Mayhew) [1622041] - [fs] nfs: stash server into struct nfs_mount_info (Scott Mayhew) [1622041] - [fs] saner calling conventions for nfs_fs_mount_common() (Scott Mayhew) [1622041] - [fs] NFS: Make "port=" mount option optional for RDMA mounts (Scott Mayhew) [1622041] - [fs] vfs: Make fs_parse() handle fs_param_is_fd-type params better (Scott Mayhew) [1622041] - [include] vfs: Convert ramfs, shmem, tmpfs, devtmpfs, rootfs to use the new mount API (Scott Mayhew) [1622041] - [mm] shmem_parse_one(): switch to use of fs_parse() (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): take handling a single option into a helper (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): don't bother with mpol in separate variable (Scott Mayhew) [1622041] - [mm] shmem_parse_options(): use a separate structure to keep the results (Scott Mayhew) [1622041] - [base] make shmem_fill_super() static (Scott Mayhew) [1622041] - [fs] make ramfs_fill_super() static (Scott Mayhew) [1622041] - [base] devtmpfs: don't mix {ramfs, shmem}_fill_super() with mount_single() (Scott Mayhew) [1622041] - [fs] vfs: Convert squashfs to use the new mount API (Scott Mayhew) [1622041] - [mtd] mtd: Kill mount_mtd() (Scott Mayhew) [1622041] - [fs] vfs: Convert cramfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add a single-or-reconfig keying to vfs_get_super() (Scott Mayhew) [1622041] - [mtd] mtd: Provide fs_context-aware mount_mtd() replacement (Scott Mayhew) [1622041] - [fs] vfs: Create fs_context-aware mount_bdev() replacement (Scott Mayhew) [1622041] - [fs] new helper: get_tree_keyed() (Scott Mayhew) [1622041] - [fs] vfs: set fs_context::user_ns for reconfigure (Scott Mayhew) [1622041] - [init] mnt_init(): call shmem_init() unconditionally (Scott Mayhew) [1622041] - [base] constify ksys_mount() string arguments (Scott Mayhew) [1622041] - [fs] don't bother with registering rootfs (Scott Mayhew) [1622041] - [fs] init_rootfs(): don't bother with init_ramfs_fs() (Scott Mayhew) [1622041] - [security] vfs: Convert selinuxfs to use the new mount API (Scott Mayhew) [1622041] - [security] vfs: Convert securityfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert openpromfs to use the new mount API (Scott Mayhew) [1622041] - [xen] vfs: Convert xenfs to use the new mount API (Scott Mayhew) [1622041] - [oprofile] vfs: Convert oprofilefs to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert ibmasmfs to use the new mount API (Scott Mayhew) [1622041] - [infiniband] vfs: Convert qib_fs/ipathfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert efivarfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert configfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert binfmt_misc to use the new mount API (Scott Mayhew) [1622041] - [fs] convenience helper: get_tree_single() (Scott Mayhew) [1622041] - [fs] convenience helper get_tree_nodev() (Scott Mayhew) [1622041] - [fs] vfs: Kill sget_userns() (Scott Mayhew) [1622041] - [fs] vfs: Use sget_fc() for pseudo-filesystems (Scott Mayhew) [1622041] - [dma-buf] fold mount_pseudo_xattr() into pseudo_fs_get_tree() (Scott Mayhew) [1622041] - [virtio] vfs: Convert virtio_balloon to use the new mount API (Scott Mayhew) [1622041] - [scsi] vfs: Convert ocxlflash to use the new mount API (Scott Mayhew) [1622041] - [misc] vfs: Convert cxl to use the new mount API (Scott Mayhew) [1622041] - [drm] vfs: Convert drm to use the new mount API (Scott Mayhew) [1622041] - [dax] vfs: Convert dax to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert sockfs to use the new mount API (Scott Mayhew) [1622041] - [mm] vfs: Convert zsmalloc to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert pipe to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert nsfs to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert bdev to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert anon_inodes to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Convert aio to use the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide a mount_pseudo-replacement for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Provide sb->s_iflags settings in fs_context struct (Scott Mayhew) [1622041] - [fs] vfs: Fix refcounting of filenames in fs_parser (Scott Mayhew) [1622041] - [fs] move mount_capable() further out (Scott Mayhew) [1622041] - [fs] move mount_capable() calls to vfs_get_tree() (Scott Mayhew) [1622041] - [kernel] cpuset: move mount -t cpuset logics into cgroup.c (Scott Mayhew) [1622041] - [fs] procfs: set ->user_ns before calling ->get_tree() (Scott Mayhew) [1622041] - [ipc] mqueue: set ->user_ns before ->get_tree() (Scott Mayhew) [1622041] - [fs] switch mount_capable() to fs_context (Scott Mayhew) [1622041] - [fs] legacy_get_tree(): pass fc->user_ns to mount_capable() (Scott Mayhew) [1622041] - [fs] move the capability checks from sget_userns() to legacy_get_tree() (Scott Mayhew) [1622041] - [fs] vfs: Kill mount_ns() (Scott Mayhew) [1622041] - [fs] vfs: Convert nfsctl to use the new mount API (Scott Mayhew) [1622041] - [net] vfs: Convert rpc_pipefs to use the new mount API (Scott Mayhew) [1622041] - [fs] consolidate the capability checks in sget_{fc, userns}() (Scott Mayhew) [1622041] - [fs] start massaging the checks in sget_...(): move to sget_userns() (Scott Mayhew) [1622041] - [x86] no need to protect against put_user_ns(NULL) (Scott Mayhew) [1622041] - [fs] mount_pseudo(): drop 'name' argument, switch to d_make_root() (Scott Mayhew) [1622041] - [mm] zsmalloc: don't bother with dentry_operations (Scott Mayhew) [1622041] - [virtio] balloon: don't bother with dentry_operations (Scott Mayhew) [1622041] - [scsi] cxlflash: don't bother with dentry_operations (Scott Mayhew) [1622041] - [misc] cxl: don't bother with dentry_operations (Scott Mayhew) [1622041] - [fs] fs: VALIDATE_FS_PARSER should default to n (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: fix a missing-check bug in selinux_add_mnt_opt( ) (Scott Mayhew) [1622041] - [powerpc] uapi: Wire up the mount API syscalls on non-x86 arches (Scott Mayhew) [1622041] - [x86] uapi, x86: Fix the syscall numbering of the mount API syscalls (Scott Mayhew) [1622041] - [fs] uapi, fsopen: use square brackets around "fscontext" (Scott Mayhew) [1622041] - [samples] vfs: Add a sample program for the new mount API (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fspick() to select a superblock for reconfiguration (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add fsmount() to create a mount for a superblock (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsconfig() for configuring and managing a context (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add fsopen() to prepare for superblock creation (Scott Mayhew) [1622041] - [fs] Make anon_inodes unconditional (Scott Mayhew) [1622041] - [fs] teach move_mount(2) to work with OPEN_TREE_CLONE (Scott Mayhew) [1622041] - [x86] vfs: syscall: Add move_mount(2) to move mounts around (Scott Mayhew) [1622041] - [fs] vfs: syscall: Add open_tree(2) to reference or clone a mount (Scott Mayhew) [1622041] - [fs] fix sysfs_init_fs_context() in !CONFIG_NET_NS case (Scott Mayhew) [1622041] - [fs] vfs: Add some logging to the core users of the fs_context log (Scott Mayhew) [1622041] - [fs] vfs: Implement logging through fs_context (Scott Mayhew) [1622041] - [documentation] vfs: Provide documentation for new mount API (Scott Mayhew) [1622041] - [fs] vfs: Remove kern_mount_data() (Scott Mayhew) [1622041] - [fs] hugetlbfs: Convert to fs_context (Scott Mayhew) [1622041] - [kernel] cpuset: Use fs_context (Scott Mayhew) [1622041] - [fs] kernfs, sysfs, cgroup, intel_rdt: Support fs_context (Scott Mayhew) [1622041] - [kernel] cgroup: store a reference to cgroup_ns into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup1_get_tree(): separate "get cgroup_root to use" into a separate helper (Scott Mayhew) [1622041] - [kernel] cgroup_do_mount(): massage calling conventions (Scott Mayhew) [1622041] - [kernel] cgroup: stash cgroup_root reference into cgroup_fs_context (Scott Mayhew) [1622041] - [kernel] cgroup2: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup1: switch to option-by-option parsing (Scott Mayhew) [1622041] - [kernel] cgroup: take options parsing into ->parse_monolithic() (Scott Mayhew) [1622041] - [kernel] cgroup: fold cgroup1_mount() into cgroup1_get_tree() (Scott Mayhew) [1622041] - [kernel] cgroup: start switching to fs_context (Scott Mayhew) [1622041] - [ipc] ipc: Convert mqueue fs to fs_context (Scott Mayhew) [1622041] - [fs] proc: Add fs_context support to procfs (Scott Mayhew) [1622041] - [fs] procfs: Move proc_fill_super() to fs/proc/root.c (Scott Mayhew) [1622041] - [include] introduce cloning of fs_context (Scott Mayhew) [1622041] - [fs] convenience helpers: vfs_get_super() and sget_fc() (Scott Mayhew) [1622041] - [fs] vfs: Implement a filesystem superblock creation/configuration context (Scott Mayhew) [1622041] - [include] vfs: Put security flags into the fs_context struct (Scott Mayhew) [1622041] - [security] selinux: Implement the new mount API LSM hooks (Scott Mayhew) [1622041] - [include] vfs: Add LSM hooks for the new mount API (Scott Mayhew) [1622041] - [fs] vfs: Add configuration parser helpers (Scott Mayhew) [1622041] - [include] vfs: Introduce logging functions (Scott Mayhew) [1622041] - [fs] introduce fs_context methods (Scott Mayhew) [1622041] - [fs] fs_context flavour for submounts (Scott Mayhew) [1622041] - [fs] convert do_remount_sb() to fs_context (Scott Mayhew) [1622041] - [fs] vfs_get_tree(): evict the call of security_sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: do_new_mount_fc() (Scott Mayhew) [1622041] - [fs] teach vfs_get_tree() to handle subtype, switch do_new_mount() to it (Scott Mayhew) [1622041] - [fs] new helpers: vfs_create_mount(), fc_mount() (Scott Mayhew) [1622041] - [fs] vfs: Introduce fs_context, switch vfs_kern_mount() to it (Scott Mayhew) [1622041] - [fs] saner handling of temporary namespaces (Scott Mayhew) [1622041] - [fs] separate copying and locking mount tree on cross-userns copies (Scott Mayhew) [1622041] - [fs] kill kernfs_pin_sb() (Scott Mayhew) [1622041] - [fs] mount_fs: suppress MAC on MS_SUBMOUNT as well as MS_KERNMOUNT (Scott Mayhew) [1622041] - [security] LSM: new method: ->sb_add_mnt_opt() (Scott Mayhew) [1622041] - [security] selinux: rewrite selinux_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] selinux: regularize Opt_... names a bit (Scott Mayhew) [1622041] - [security] selinux: switch away from match_token() (Scott Mayhew) [1622041] - [security] selinux: new helper - selinux_add_opt() (Scott Mayhew) [1622041] - [include] LSM: bury struct security_mnt_opts (Scott Mayhew) [1622041] - [security] selinux: switch to private struct selinux_mnt_opts (Scott Mayhew) [1622041] - [fs] LSM: hide struct security_mnt_opts from any generic code (Scott Mayhew) [1622041] - [security] LSM: turn sb_eat_lsm_opts() into a method (Scott Mayhew) [1622041] - [fs] nfs_remount(): don't leak, don't ignore LSM options quietly (Scott Mayhew) [1622041] - [security] LSM: split ->sb_set_mnt_opts() out of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] new helper: security_sb_eat_lsm_opts() (Scott Mayhew) [1622041] - [security] LSM: lift extracting and parsing LSM options into the caller of ->sb_remount() (Scott Mayhew) [1622041] - [security] LSM: lift parsing LSM options into the caller of ->sb_kern_mount() (Scott Mayhew) [1622041] - [fs] vfs: Separate changing mount flags full remount (Scott Mayhew) [1622041] - [fs] vfs: Suppress MS_* flag defs within the kernel unless explicitly enabled (Scott Mayhew) [1622041]- [hv] hv_utils: drain the timesync packets on onchannelcallback (Vitaly Kuznetsov) [1884733] - [hv] hv_utils: return error if host timesysnc update is stale (Vitaly Kuznetsov) [1884733] - [netdrv] hv_netvsc: Cache the current data path to avoid duplicate call and message (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Switch the data path at the right time during hibernation (Mohammed Gamal) [1876527] - [netdrv] hv_netvsc: Fix hibernation for mlx5 VF driver (Mohammed Gamal) [1876527] - [hv] hv: vmbus: hibernation: do not hang forever in vmbus_bus_resume() (Mohammed Gamal) [1876519] - [target] scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix hang in iscsit_access_np() when getting tpg->np_login_sem (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix data digest calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Make iscsit_register_transport() return void (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make TMR notification optional (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Implement tmr_notify callback (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix and simplify timeout handling (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Factor out new helper ring_insert_padding (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Do not queue aborted commands (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Use priv pointer in se_cmd (Maurizio Lombardi) [1880395] - [target] scsi: target: Add tmr_notify backend function (Maurizio Lombardi) [1880395] - [target] scsi: target: Modify core_tmr_abort_task() (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix inconsistent debug message (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Fix login error when receiving (Maurizio Lombardi) [1880395] - [target] scsi: target: Remove unused variable 'tpg' (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Remove tx flow control code (Maurizio Lombardi) [1880395] - [target] scsi: target: cxgbit: Check connection state before issuing hardware command (Maurizio Lombardi) [1880395] - [target] scsi: target: Handle short iSIDs (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buf len calculation (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id buffer setup (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix iscsi transport id parsing (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix crash during SPEC_I_PT handling (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix xcopy sess release leak (Maurizio Lombardi) [1880395] - [target] scsi: target: Check enforce_pr_isids during registration (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash on ARM during cmd completion (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix crash in tcmu_flush_dcache_range on ARM (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Optimize use of flush_dcache_page (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Remove unnecessary bit TCMU_CMD_BIT_INFLIGHT (Maurizio Lombardi) [1880395] - [target] scsi: target: Rename target_setup_cmd_from_cdb() to target_cmd_parse_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: Fix NULL pointer dereference (Maurizio Lombardi) [1880395] - [target] scsi: target: Initialize LUN in transport_init_se_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: Factor out a new helper, target_cmd_init_cdb() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix size in calls to tcmu_flush_dcache_range (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Fix a use after free in tcmu_check_expired_queue_cmd() (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Userspace must not complete queued commands (Maurizio Lombardi) [1880395] - [target] scsi: target: core: Add initiatorname to NON_EXISTENT_LUN error (Maurizio Lombardi) [1880395] - [target] scsi: target: loopback: Fix READ with data and sensebytes (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Make pgr_support and alua_support attributes writable (Maurizio Lombardi) [1880395] - [target] scsi: target: Make transport_flags per device (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: Add attributes enforce_pr_isids and force_pr_aptpl (Maurizio Lombardi) [1880395] - [target] scsi: target: Add missing emulate_pr attribute to passthrough backends (Maurizio Lombardi) [1880395] - [target] scsi: target: iscsi: Remove the iscsi_data_count structure (Maurizio Lombardi) [1880395] - [target] scsi: target: Put lun_ref at end of tmr processing (Maurizio Lombardi) [1880395] - [target] scsi: target/iblock: fix WRITE SAME zeroing (Maurizio Lombardi) [1880395] - [target] scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN (Maurizio Lombardi) [1880395] - [target] scsi: target: fix PR IN / READ FULL STATUS for FC (Maurizio Lombardi) [1880395] - [target] scsi: target: Write NULL to *port_nexus_ptr if no ISID (Maurizio Lombardi) [1880395] - [target] scsi: target: use the stack for XCOPY passthrough cmds (Maurizio Lombardi) [1880395] - [target] scsi: target: increase XCOPY I/O size (Maurizio Lombardi) [1880395] - [target] scsi: target: avoid per-loop XCOPY buffer allocations (Maurizio Lombardi) [1880395] - [target] scsi: target: drop xcopy DISK BLOCK LENGTH debug (Maurizio Lombardi) [1880395] - [target] scsi: target: use #define for xcopy descriptor len (Maurizio Lombardi) [1880395] - [crypto] crypto: testmgr - mark cts(cbc(aes)) as FIPS allowed (Vladis Dronov) [1855161] - [kernel] sched/deadline: Unthrottle PI boosted threads while enqueuing (Daniel Bristot de Oliveira) [1869760] - [kernel] sched/deadline: Fix stale throttling on de-/boosted tasks (Daniel Bristot de Oliveira) [1869760] - [netdrv] treewide: Use fallthrough pseudo-keyword (Jonathan Toppins) [1871286] - [netdrv] tg3: Avoid the use of one-element array (Jonathan Toppins) [1871286] - [netdrv] net: tg3: tidy up loop, remove need to compute off with a multiply (Jonathan Toppins) [1871286] - [netdrv] net: tg3: reject unsupported coalescing params (Jonathan Toppins) [1871286] - [netdrv] net: tg3: use skb_list_walk_safe helper for gso segments (Jonathan Toppins) [1871286] - [gpio] gpio: gpio-mlxbf2.c: Provide __releases() annotation to stop confusing Sparse (Alaa Hleihel) [1816931] - [gpio] gpio: gpio-mlxbf2: Tell the compiler that ACPI functions may not be use (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: Fix sleeping while holding spinlock (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: fix return value check in mlxbf2_gpio_get_lock_res() (Alaa Hleihel) [1816931] - [gpio] gpio: mlxbf2: remove unused including (Alaa Hleihel) [1816931] - [gpio] gpio: add driver for Mellanox BlueField 2 GPIO controller (Alaa Hleihel) [1816931] - [include] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use (Ivan Vecera) [1867168] - [net] net: sctp: Rename fallthrough label to unhandled (Ivan Vecera) [1867168]- [pci] PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken (Myron Stowe) [1888310] - [netdrv] nfp: flower: fix ABI mismatch between driver and firmware (Ivan Vecera) [1886717] - [netdrv] netronome: fix ipv6 link error (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix incorrect flag assignment (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix used time of merge flow statistics (Ivan Vecera) [1886717] - [netdrv] nfp: flower: inform firmware of flower features (Ivan Vecera) [1886717] - [netdrv] nfp: flower: renaming of feature bits (Ivan Vecera) [1886717] - [netdrv] nfp: don't check lack of RX/TX channels (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix error return code in nfp_abm_vnic_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: abm: fix a memory leak bug (Ivan Vecera) [1886717] - [netdrv] net/nfp: Update driver to use global kernel version (Ivan Vecera) [1886717] - [netdrv] nfp: allow explicitly selected delayed stats (Ivan Vecera) [1886717] - [netdrv] net: nfp: Use scnprintf() for avoiding potential buffer overflow (Ivan Vecera) [1886717] - [netdrv] nfp: let core reject the unsupported coalescing parameters (Ivan Vecera) [1886717] - [netdrv] nfp: Use pci_get_dsn() (Ivan Vecera) [1886717] - [netdrv] netronome: Replace zero-length array with flexible-array member (Ivan Vecera) [1886717] - [netdrv] devlink: move devlink documentation to subfolder (Ivan Vecera) [1886717] - [netdrv] remove ioremap_nocache and devm_ioremap_nocache (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement the stream sync RX resync (Ivan Vecera) [1886717] - [netdrv] nfp: pass packet pointer to nfp_net_parse_meta() (Ivan Vecera) [1886717] - [netdrv] nfp: flower: update flow merge code to support IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: support ipv6 tunnel keep-alive messages from fw (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle notifiers for ipv6 route changes (Ivan Vecera) [1886717] - [netdrv] nfp: flower: handle ipv6 tunnel no neigh request (Ivan Vecera) [1886717] - [netdrv] nfp: flower: modify pre-tunnel and set tunnel action for ipv6 (Ivan Vecera) [1886717] - [netdrv] nfp: flower: offload list of IPv6 tunnel endpoint addresses (Ivan Vecera) [1886717] - [netdrv] nfp: flower: compile match for IPv6 tunnels (Ivan Vecera) [1886717] - [netdrv] nfp: flower: move udp tunnel key match compilation to helper function (Ivan Vecera) [1886717] - [netdrv] nfp: flower: pass flow rule pointer directly to match functions (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix stats id allocation (Ivan Vecera) [1886717] - [netdrv] netronome: use the new txqueue timeout argument (Ivan Vecera) [1886717] - [netdrv] nfp: add support for TLV device stats (Ivan Vecera) [1886717] - [netdrv] treewide: Use sizeof_field() macro (Ivan Vecera) [1886717] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: make array exp_mask static, makes object smaller (Ivan Vecera) [1886717] - [netdrv] nfp: flower: fix memory leak in nfp_flower_spawn_vnic_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: flower: prevent memory leak in nfp_flower_spawn_phy_reprs (Ivan Vecera) [1886717] - [netdrv] nfp: read chip model from the PluDevice register (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: set unknown fw_load_policy (Ivan Vecera) [1886717] - [documentation] Documentation: nfp: add nfp driver specific notes (Ivan Vecera) [1886717] - [netdrv] kdoc: fix nfp_fw_load documentation (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'reset_dev_on_drv_probe' support (Ivan Vecera) [1886717] - [netdrv] nfp: devlink: add 'fw_load_policy' support (Ivan Vecera) [1886717] - [netdrv] nfp: add devlink param infrastructure (Ivan Vecera) [1886717] - [netdrv] nfp: honor FW reset and loading policies (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for hwinfo set operation (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for optional hwinfo lookup (Ivan Vecera) [1886717] - [netdrv] nfp: nsp: add support for fw_loaded command (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: add simple map op cache (Ivan Vecera) [1886717] - [netdrv] nfp: bpf: rework MTU checking (Ivan Vecera) [1886717] - [netdrv] net: Use skb accessors in network drivers (Ivan Vecera) [1886717] - [netdrv] nfp: tls: rename tls packet counters (Ivan Vecera) [1886717] - [netdrv] nfp: tls: undo TLS sequence tracking when dropping the frame (Ivan Vecera) [1886717] - [netdrv] nfp: tls: avoid one of the ifdefs for TLS (Ivan Vecera) [1886717] - [netdrv] nfp: tls: don't leave key material in freed FW cmsg skbs (Ivan Vecera) [1886717] - [netdrv] nfp: tls: count TSO segments separately for the TLS offload (Ivan Vecera) [1886717] - [netdrv] nfp: tls: use unique connection ids instead of 4-tuple for TX (Ivan Vecera) [1886717] - [netdrv] nfp: tls: move setting ipver_vlan to a helper (Ivan Vecera) [1886717] - [netdrv] nfp: tls: ignore queue limits for delete commands (Ivan Vecera) [1886717] - [netdrv] nfp: tls: fix error return code in nfp_net_tls_add() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: enable TLS RX offload (Ivan Vecera) [1886717] - [netdrv] net/tls: don't clear TX resync flag on error (Ivan Vecera) [1886717] - [netdrv] net/tls: add tracing for device/offload events (Ivan Vecera) [1886717] - [netdrv] nfp: tls: make use of kernel-driven TX resync (Ivan Vecera) [1886717] - [netdrv] net/tls: generalize the resync callback (Ivan Vecera) [1886717] - [netdrv] nfp: tls: implement RX TLS resync (Ivan Vecera) [1886717] - [netdrv] nfp: add async version of mailbox communication (Ivan Vecera) [1886717] - [netdrv] nfp: rename nfp_ccm_mbox_alloc() (Ivan Vecera) [1886717] - [netdrv] nfp: tls: set skb decrypted flag (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add basic statistics (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add/delete TLS TX connections (Ivan Vecera) [1886717] - [netdrv] nfp: tls: add datapath support for TLS TX (Ivan Vecera) [1886717] - [netdrv] nfp: flower: use struct_size() helper (Ivan Vecera) [1886717] - [netdrv] nfp: add missing kdoc (Ivan Vecera) [1886717] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Ivan Vecera) [1886717] - [iommu] iommu/amd: Fix the overwritten field in IVMD header (Baoquan He) [1869148] - [powerpc] pseries/drmem: don't cache node id in drmem_lmb struct (Diego Domingos) [1816543] - [include] cgroup: Fix sock_cgroup_data on big-endian (Vladis Dronov) [1868659] {CVE-2020-14356} - [include] cgroup: fix cgroup_sk_alloc() for sk_clone_lock() (Vladis Dronov) [1868659] {CVE-2020-14356} - [net] netprio_cgroup: Fix unlimited memory leak of v2 cgroups (Vladis Dronov) [1868659] {CVE-2020-14356} - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1872443]- [net] Bluetooth: fix kernel oops in store_pending_adv_report (Gopal Tiwari) [1888455] {CVE-2020-24490} - [net] Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel (Gopal Tiwari) [1888258] {CVE-2020-12351} - [net] Bluetooth: A2MP: Fix not initializing all members (Gopal Tiwari) [1888807] {CVE-2020-12352} - [mm] mm, compaction: make capture control handling safe wrt interrupts (Rafael Aquini) [1862175] - [mm] mm/compaction: fix a typo in comment "pessemistic"->"pessimistic" (Rafael Aquini) [1862175] - [mm] mm/compaction: add missing annotation for compact_lock_irqsave (Rafael Aquini) [1862175] - [mm] mm/compaction.c: clean code by removing unnecessary assignment (Rafael Aquini) [1862175] - [kernel] mm/compaction: Disable compact_unevictable_allowed on RT (Rafael Aquini) [1862175] - [kernel] mm/compaction: really limit compact_unevictable_allowed to 0 and 1 (Rafael Aquini) [1862175] - [mm] mm, compaction: fully assume capture is not NULL in compact_zone_order() (Rafael Aquini) [1862175] - [mm] mm, compaction: fix wrong pfn handling in __reset_isolation_pfn() (Rafael Aquini) [1862175] - [mm] mm/compaction.c: remove unnecessary zone parameter in isolate_migratepages() (Rafael Aquini) [1862175] - [mm] mm: compaction: avoid 100 CPU usage during compaction when a task is killed (Rafael Aquini) [1862175] - [mm] mm, compaction: make sure we isolate a valid PFN (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when isolating pages from a pageblock (Rafael Aquini) [1862175] - [trace] mm, compaction: some tracepoints should be defined only when CONFIG_COMPACTION is set (Rafael Aquini) [1862175] - [trace] mm: compaction: show gfp flag names in try_to_compact_pages tracepoint (Rafael Aquini) [1862175] - [mm] mm/compaction.c: fix an undefined behaviour (Rafael Aquini) [1862175] - [mm] mm, page_alloc: always use a captured page regardless of compaction result (Rafael Aquini) [1862175] - [mm] mm/compaction.c: abort search if isolation fails (Rafael Aquini) [1862175] - [mm] mm/compaction.c: correct zone boundary handling when resetting pageblock skip hints (Rafael Aquini) [1862175] - [include] include/linux/list.h: fix list_is_first() kernel-doc (Rafael Aquini) [1862175] - [mm] mm/compaction: pass pgdat to too_many_isolated() instead of zone (Rafael Aquini) [1862175] - [mm] mm: remove zone_lru_lock() function, access ->lru_lock directly (Rafael Aquini) [1862175] - [mm] mm, compaction: capture a page under direct compaction (Rafael Aquini) [1862175] - [mm] mm, compaction: be selective about what pageblocks to clear skip hints (Rafael Aquini) [1862175] - [mm] mm, compaction: sample pageblocks for free pages (Rafael Aquini) [1862175] - [mm] mm, compaction: round-robin the order while searching the free lists for a target (Rafael Aquini) [1862175] - [mm] mm, compaction: reduce premature advancement of the migration target scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: do not consider a need to reschedule as contention (Rafael Aquini) [1862175] - [mm] mm, compaction: rework compact_should_abort as compact_check_resched (Rafael Aquini) [1862175] - [mm] mm, compaction: keep cached migration PFNs synced for unusable pageblocks (Rafael Aquini) [1862175] - [mm] mm, compaction: check early for huge pages encountered by the migration scanner (Rafael Aquini) [1862175] - [mm] mm, compaction: finish pageblock scanning on contention (Rafael Aquini) [1862175] - [mm] mm, compaction: avoid rescanning the same pageblock multiple times (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration target (Rafael Aquini) [1862175] - [mm] mm, compaction: keep migration source private to a single compaction instance (Rafael Aquini) [1862175] - [mm] mm, compaction: use free lists to quickly locate a migration source (Rafael Aquini) [1862175] - [mm] mm, compaction: always finish scanning of a full pageblock (Rafael Aquini) [1862175] - [mm] mm, migrate: immediately fail migration of a page with no migration handler (Rafael Aquini) [1862175] - [mm] mm, compaction: rename map_pages to split_map_pages (Rafael Aquini) [1862175] - [mm] mm, compaction: remove unnecessary zone parameter in some instances (Rafael Aquini) [1862175] - [mm] mm, compaction: remove last_migrated_pfn from compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: rearrange compact_control (Rafael Aquini) [1862175] - [mm] mm, compaction: shrink compact_control (Rafael Aquini) [1862175] - [kernel] mm: remove sysctl_extfrag_handler() (Rafael Aquini) [1862175] - [net] netlink: fix state reallocation in policy export (Petr Oros) [1874050] - [net] netlink: add infrastructure to expose policies to userspace (Petr Oros) [1874050] - [lib] netlink: factor out policy range helpers (Petr Oros) [1874050] - [net] netlink: remove NLA_EXACT_LEN_WARN (Petr Oros) [1874050] - [include] netlink: allow NLA_MSECS to have range validation (Petr Oros) [1874050] - [net] netlink: extend policy range validation (Petr Oros) [1874050] - [net] nl80211: link recursive netlink nested policy (Petr Oros) [1874050] - [lib] netlink: limit recursion depth in policy validation (Petr Oros) [1874050] - [net] netlink: remove type-unsafe validation_data pointer (Petr Oros) [1874050] - [powerpc] powerpc/pseries: new lparcfg key/value pair: partition_affinity_score (Steve Best) [1879420] - [powerpc] powerpc/perf: consolidate GPCI hcall structs into asm/hvcall.h (Steve Best) [1879420] - [include] iopoll: Introduce read_poll_timeout_atomic macro (Patrick Talbert) [1879211] - [include] iopoll: redefined readx_poll_timeout macro to simplify the code (Patrick Talbert) [1879211] - [include] iopoll: introduce read_poll_timeout macro (Patrick Talbert) [1879211] - [infiniband] IB/ipoib: Fix double free of skb in case of multicast traffic in CM mode (Kamal Heib) [1857600] - [infiniband] RDMA/core: Fix double destruction of uobject (Kamal Heib) [1857600] - [infiniband] RDMA/pvrdma: Fix missing pci disable in pvrdma_pci_probe() (Kamal Heib) [1857600] - [net] xprtrdma: Fix use of xdr_stream_encode_item_{present, absent} (Kamal Heib) [1857600] - [net] xprtrdma: Fix trace point use-after-free race (Kamal Heib) [1857600] - [net] xprtrdma: Restore wake-up-all to rpcrdma_cm_event_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Fix missing RDMA_CM_EVENT_REJECTED event after receiving REJ message (Kamal Heib) [1857600] - [net] xprtrdma: kmalloc rpcrdma_ep separate from rpcrdma_xprt (Kamal Heib) [1857600] - [net] xprtrdma: Extract sockaddr from struct rdma_cm_id (Kamal Heib) [1857600] - [net] xprtrdma: Merge struct rpcrdma_ia into struct rpcrdma_ep (Kamal Heib) [1857600] - [net] xprtrdma: Disconnect on flushed completion (Kamal Heib) [1857600] - [net] xprtrdma: Remove rpcrdma_ia::ri_flags (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ia_open in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Allocate Protection Domain in rpcrdma_ep_create() (Kamal Heib) [1857600] - [net] xprtrdma: Refactor rpcrdma_ep_connect() and rpcrdma_ep_disconnect() (Kamal Heib) [1857600] - [net] xprtrdma: Clean up the post_send path (Kamal Heib) [1857600] - [net] xprtrdma: Refactor frwr_init_mr() (Kamal Heib) [1857600] - [net] xprtrdma: Invoke rpcrdma_ep_create() in the connect worker (Kamal Heib) [1857600] - [net] xprtrdma: Enhance MR-related trace points (Kamal Heib) [1857600] - [infiniband] IB/iser: Always check sig MR before putting it to the free pool (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Use in-kernel offsetofend() to check field availability (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make sure the cm_id is in the IB_CM_IDLE state in destroy (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_sidr_rep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_rej() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_drep() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Allow ib_send_cm_dreq() to be done under lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Add some lockdep assertions for cm_id_priv->lock (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clearer how concurrency works in cm_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make it clear that there is no concurrency in cm_sidr_req_handler() (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Simplify establishing a listen cm_id (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Make the destroy_id flow more robust (Kamal Heib) [1857600] - [net] svcrdma: Avoid DMA mapping small RPC Replies (Kamal Heib) [1857600] - [net] svcrdma: Fix double sync of transport header buffer (Kamal Heib) [1857600] - [net] svcrdma: Refactor chunk list encoders (Kamal Heib) [1857600] - [net] SUNRPC: Add encoders for list item discriminators (Kamal Heib) [1857600] - [net] svcrdma: Rename svcrdma_encode trace points in send routines (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_map_reply_msg() (Kamal Heib) [1857600] - [net] svcrdma: Update synopsis of svc_rdma_send_reply_chunk() (Kamal Heib) [1857600] - [net] svcrdma: De-duplicate code that locates Write and Reply chunks (Kamal Heib) [1857600] - [include] svcrdma: Use struct xdr_stream to decode ingress transport headers (Kamal Heib) [1857600] - [net] svcrdma: Remove svcrdma_cm_event() trace point (Kamal Heib) [1857600] - [net] SUNRPC: Add xdr_pad_size() helper (Kamal Heib) [1857600] - [net] nfsd: Fix NFSv4 READ on RDMA when using readv (Kamal Heib) [1857600] - [net] svcrdma: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/cm: Delete not implemented CM peer to peer communication (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Teach lockdep about the order of rtnl and lock (Kamal Heib) [1857600] - [infiniband] RDMA/rw: map P2P memory correctly for signature operations (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: reject unsupported coalescing params (Kamal Heib) [1857600] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Use the new APIs for printing log (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Optimize hns_roce_modify_qp function (Kamal Heib) [1857600] - [infiniband] RDMA/hns: RDMA/hns: Assign rq head pointer when enable rq record db (Kamal Heib) [1857600] - [infiniband] RDMA/hns: Update the prompt message for creating and destroy qp (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Do not delay freeing of DMA pages (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Properly document the interrupt mask register (Kamal Heib) [1857600] - [infiniband] RDMA/efa: Unified getters/setters for device structs bitmask access (Kamal Heib) [1857600] - [infiniband] RDMA/ipoib: Don't set constant driver version (Kamal Heib) [1857600] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Use refcount_t for the ctx->ref (Kamal Heib) [1857600] - [infiniband] RDMA/core: Get rid of ib_create_qp_user (Kamal Heib) [1857600] - [infiniband] RDMA/core: Add weak ordering dma attr to dma mapping (Kamal Heib) [1857600] - [infiniband] RDMA/ucma: Mask QPN to be 24 bits according to IBTA (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use refcount API to reflect refcount (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Rename cma_device ref/deref helpers to to get/put (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use RDMA device port iterator (Kamal Heib) [1857600] - [infiniband] RDMA/cma: Use a helper function to enqueue resolve work items (Kamal Heib) [1857600] - [infiniband] RDMA/rw: Fix error flow during RDMA context initialization (Kamal Heib) [1857600] - [infiniband] IB/core: Add interface to advise_mr for kernel users (Kamal Heib) [1857600] - [infiniband] IB/core: Introduce ib_reg_user_mr (Kamal Heib) [1857600] - [uapi] RDMA/core: Add the core support field to METHOD_GET_CONTEXT (Kamal Heib) [1857600] - [infiniband] RDMA/uverbs: Add ioctl command to get a device context (Kamal Heib) [1857600] - [fs] xfs: Fix false positive lockdep warning with sb_internal & fs_reclaim (Waiman Long) [1838643] - [mm] mm/mmu_notifier: mm/rmap.c: Fix a mmu_notifier range bug in try_to_unmap_one (Waiman Long) [1871883] - [mm] mm/memory.c: initialise mmu_notifier_range correctly (Waiman Long) [1871883] - [mm] mm/mmu_notifier: use structure for invalidate_range_start/end calls v2 (Waiman Long) [1871883] - [mm] hugetlb: take PMD sharing into account when flushing tlb/caches (Waiman Long) [1871883] - [mm] mm, hugetlbfs: pass fault address to cow handler (Waiman Long) [1871883] - [mm] mm, hugetlbfs: rename address to haddr in hugetlb_cow() (Waiman Long) [1871883] - [mm] mm, huge page: copy target sub-page last when copy huge page (Waiman Long) [1871883] - [mm] mm, clear_huge_page: move order algorithm into a separate function (Waiman Long) [1871883] - [mm] Revert "mm: always flush VMA ranges affected by zap_page_range" (Waiman Long) [1871883] - [kernel] psi: eliminate kthread_worker from psi trigger scheduling mechanism (Waiman Long) [1873040] - [kernel] psi: get poll_work to run when calling poll syscall next time (Waiman Long) [1873040] - [block] block: loop: set discard granularity and alignment for block device backed loop (Ming Lei) [1866712] - [net] gre: recompute gre csum for sctp over gre tunnels (Lorenzo Bianconi) [1755200] - [include] mm/hugetlb: enable arch specific huge page size support for migration (Donghai Qiao) [1869887] - [mm] arm64/mm: enable HugeTLB migration for contiguous bit HugeTLB pages (Donghai Qiao) [1869887] - [lib] idr: Fix idr_get_next_ul race with idr_remove (Felix Ansell) [1866062] - [lib] genalloc: Fix a set of docs build warnings (Felix Ansell) [1866062] - [lib] lib/Kconfig: fix OBJAGG in lib/ menu structure (Felix Ansell) [1866062] - [lib] lib: Reduce user_access_begin() boundaries in strncpy_from_user() and strnlen_user() (Felix Ansell) [1866062]- [char] random32: update the net random state on interrupt and activity (Donghai Qiao) [1867569] {CVE-2020-16166} - [fs] nfs: Fix getxattr kernel panic and memory overflow (Benjamin Coddington) [1880894] {CVE-2020-25212} - [tools] selftests: rtnetlink: Test bridge enslavement with different parent IDs (Jonathan Toppins) [1860479] - [tools] selftests: rtnetlink: correct the final return value for the test (Jonathan Toppins) [1860479] - [net] Fix bridge enslavement failure (Jonathan Toppins) [1860479] - [net] Make mpls_entry_encode() available for generic users (Patrick Talbert) [1878818] - [net] SUNRPC dont update timeout value on connection reset (Steve Dickson) [1861895] - [kernel] overflow.h: Add flex_array_size() helper (Petr Oros) [1876924] - [net] netpoll: accept NULL np argument in netpoll_send_skb() (Ivan Vecera) [1867968] - [net] netpoll: netpoll_send_skb() returns transmit status (Ivan Vecera) [1867968] - [net] netpoll: move netpoll_send_skb() out of line (Ivan Vecera) [1867968] - [net] netpoll: remove dev argument from netpoll_send_skb_on_dev() (Ivan Vecera) [1867968] - [net] netpoll: Fix use correct return type for ndo_start_xmit() (Ivan Vecera) [1867968] - [net] core: Introduce netdev_get_xmit_slave (Ivan Vecera) [1867974] - [net] get rid of lockdep_set_class_and_subclass() (Ivan Vecera) [1867961] - [net] change addr_list_lock back to static key (Ivan Vecera) [1867961] - [net] batman-adv: Revert "Drop lockdep.h include for soft-interface.c" (Ivan Vecera) [1867961] - [net] partially revert dynamic lockdep key changes (Ivan Vecera) [1867961] - [kernel] rcu: Maintain RHEL kABI (Waiman Long) [1862812] - [kernel] rcu: Don't acquire lock in NMI handler in rcu_nmi_enter_common() (Waiman Long) [1862812] - [kernel] rcu: Add *_ONCE() to rcu_data ->rcu_forced_tick (Waiman Long) [1862812] - [kernel] rcu: Make rcu_barrier() account for offline no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu: Clear ->core_needs_qs at GP end or self-reported QS (Waiman Long) [1862812] - [kernel] rcu: Forgive slow expedited grace periods at boot time (Waiman Long) [1862812] - [tools] torture: Hoist calls to lscpu to higher-level kvm.sh script (Waiman Long) [1862812] - [tools] torture: Allow "CFLIST" to specify default list of scenarios (Waiman Long) [1862812] - [kernel] rcutorture: Dynamically allocate rcu_fwds structure (Waiman Long) [1862812] - [kernel] rcutorture: Complete threading rcu_fwd pointers through functions (Waiman Long) [1862812] - [kernel] rcutorture: Move to dynamic initialization of rcu_fwds (Waiman Long) [1862812] - [kernel] rcutorture: Thread rcu_fwd pointer through forward-progress functions (Waiman Long) [1862812] - [kernel] rcutorture: Pull callback forward-progress data into rcu_fwd struct (Waiman Long) [1862812] - [tools] rcutorture: Add worst-case call_rcu() forward-progress results (Waiman Long) [1862812] - [tools] torture: Handle systems lacking the mpstat command (Waiman Long) [1862812] - [tools] torture: Handle jitter for CPUs that cannot be offlined (Waiman Long) [1862812] - [tools] rcutorture: Dispense with Dracut for initrd creation (Waiman Long) [1862812] - [tools] torture: Use gawk instead of awk for systime() function (Waiman Long) [1862812] - [kernel] rcu: Avoid tick_dep_set_cpu() misordering (Waiman Long) [1862812] - [kernel] rcu: Provide wrappers for uses of ->rcu_read_lock_nesting (Waiman Long) [1862812] - [kernel] rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special() (Waiman Long) [1862812] - [kernel] rcu: Clear ->rcu_read_unlock_special only once (Waiman Long) [1862812] - [kernel] rcu: Clear .exp_hint only when deferred quiescent state has been reported (Waiman Long) [1862812] - [kernel] rcu: Rename some instance of CONFIG_PREEMPTION to CONFIG_PREEMPT_RCU (Waiman Long) [1862812] - [kernel] rcu: Use CONFIG_PREEMPTION where appropriate (Waiman Long) [1862812] - [kernel] rcu: Make PREEMPT_RCU be a modifier to TREE_RCU (Waiman Long) [1862812] - [kernel] rcu: Use lockdep rather than comment to enforce lock held (Waiman Long) [1862812] - [kernel] rcu: Avoid data-race in rcu_gp_fqs_check_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Fix dump_tree hierarchy print always active (Waiman Long) [1862812] - [kernel] rculist.h: Add list_tail_rcu() (Waiman Long) [1862812] - [kernel] rculist_nulls: Change docbook comment headers (Waiman Long) [1862812] - [kernel] rculist_nulls: Add docbook comments (Waiman Long) [1862812] - [include] rcu: Add a hlist_nulls_unhashed_lockless() function (Waiman Long) [1862812] - [kernel] rcu: Use WRITE_ONCE() for assignments to ->pprev for hlist_nulls (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_call_rcu_nobatch() (Waiman Long) [1862812] - [kernel] rcu: Remove kfree_rcu() special casing and lazy-callback handling (Waiman Long) [1862812] - [kernel] rcu: Add support for debug_objects debugging for kfree_rcu() (Waiman Long) [1862812] - [kernel] rcu: Add multiple in-flight batches of kfree_rcu() work (Waiman Long) [1862812] - [kernel] rcu: Make kfree_rcu() use a non-atomic ->monitor_todo (Waiman Long) [1862812] - [kernel] rcuperf: Add kfree_rcu() performance Tests (Waiman Long) [1862812] - [kernel] rcu: Add basic support for kfree_rcu() batching (Waiman Long) [1862812] - [kernel] rcu: Remove unused stop-machine #include (Waiman Long) [1862812] - [kernel] srcu: Apply *_ONCE() to ->srcu_last_gp_end (Waiman Long) [1862812] - [kernel] rcu: Switch force_qs_rnp() to for_each_leaf_node_cpu_mask() (Waiman Long) [1862812] - [kernel] rcu: Move rcu_{expedited, normal} definitions into rcupdate.h (Waiman Long) [1862812] - [kernel] rcu: Move gp_state_namesand gp_state_getname() to tree_stall.h (Waiman Long) [1862812] - [kernel] rcu: Remove the declaration of call_rcu() in tree.h (Waiman Long) [1862812] - [kernel] rcu: Fix tracepoint tracking RCU CPU kthread utilization (Waiman Long) [1862812] - [kernel] rcu: Fix harmless omission of "CONFIG_" from #if condition (Waiman Long) [1862812] - [kernel] rcu: Mark non-global functions and variables as static (Waiman Long) [1862812] - [kernel] rcu: Enable tick for nohz_full CPUs slow to provide expedited QS (Waiman Long) [1862812] - [kernel] rcu: Replace synchronize_sched_expedited_wait() "_sched" with "_rcu" (Waiman Long) [1862812] - [kernel] rcu: Update tree_exp.h function-header comments (Waiman Long) [1862812] - [kernel] rcu: Rename sync_rcu_preempt_exp_done() to sync_rcu_exp_done() (Waiman Long) [1862812] - [kernel] rcu: Allow only one expedited GP to run concurrently with wakeups (Waiman Long) [1862812] - [kernel] rcu: Fix missed wakeup of exp_wq waiters (Waiman Long) [1862812] - [kernel] rcu: Substitute lookup for bit-twiddling in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Fix data-race due to atomic_t copy-by-value (Waiman Long) [1862812] - [kernel] rcu: Avoid modifying mask_ofl_ipi in sync_rcu_exp_select_node_cpus() (Waiman Long) [1862812] - [kernel] rcu: Use *_ONCE() to protect lockless ->expmask accesses (Waiman Long) [1862812] - [kernel] rcutorture: Make in-kernel-loop testing more brutal (Waiman Long) [1862812] - [kernel] rcutorture: Separate warnings for each failure type (Waiman Long) [1862812] - [kernel] rcu: Remove unused variable rcu_perf_writer_state (Waiman Long) [1862812] - [tools] rcutorture: Remove CONFIG_HOTPLUG_CPU=n from scenarios (Waiman Long) [1862812] - [kernel] rcu: Remove unused function rcutorture_record_progress() (Waiman Long) [1862812] - [kernel] rcu: Make kernel-mode nohz_full CPUs invoke the RCU core processing (Waiman Long) [1862812] - [kernel] rcu: Confine ->core_needs_qs accesses to the corresponding CPU (Waiman Long) [1862812] - [kernel] rcu: Reset CPU hints when reporting a quiescent state (Waiman Long) [1862812] - [kernel] rcu: Force nohz_full tick on upon irq enter instead of exit (Waiman Long) [1862812] - [kernel] rcu: Force tick on for nohz_full CPUs not reaching quiescent states (Waiman Long) [1862812] - [kernel] rcutorture: Emulate dyntick aspect of userspace nohz_full sojourn (Waiman Long) [1862812] - [kernel] rcu: Make CPU-hotplug removal operations enable tick (Waiman Long) [1862812] - [kernel] stop_machine: Provide RCU quiescent state in multi_cpu_stop() (Waiman Long) [1862812] - [kernel] rcutorture: Force on tick for readers and callback flooders (Waiman Long) [1862812] - [kernel] rcu: Force on tick when invoking lots of callbacks (Waiman Long) [1862812] - [kernel] time: Export tick start/stop functions for rcutorture (Waiman Long) [1862812] - [kernel] nohz: Add TICK_DEP_BIT_RCU (Waiman Long) [1862812] - [kernel] rcu: Suppress levelspread uninitialized messages (Waiman Long) [1862812] - [kernel] rcu: Fix uninitialized variable in nocb_gp_wait() (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_future_grace_period tracepoint (Waiman Long) [1862812] - [trace] rcu: Update descriptions for rcu_nocb_wake tracepoint (Waiman Long) [1862812] - [trace] rcu: Remove obsolete descriptions for rcu_barrier tracepoint (Waiman Long) [1862812] - [kernel] rcu: Ensure that ->rcu_urgent_qs is set before resched IPI (Waiman Long) [1862812] - [kernel] rcu: Several rcu_segcblist functions can be static (Waiman Long) [1862812] - [kernel] rcu: Remove unused function hlist_bl_del_init_rcu() (Waiman Long) [1862812] - [kernel] rcu: Allow rcu_do_batch() to dynamically adjust batch sizes (Waiman Long) [1862812] - [kernel] srcu: Avoid srcutorture security-based pointer obfuscation (Waiman Long) [1862812] - [kernel] rcu/nocb: Don't wake no-CBs GP kthread if timer posted under overload (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce __call_rcu_nocb_wake() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce nocb_cb_wait() leaf rcu_node ->lock contention (Waiman Long) [1862812] - [kernel] rcu/nocb: Advance CBs after merge in rcutree_migrate_callbacks() (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid synchronous wakeup in __call_rcu_nocb_wake() (Waiman Long) [1862812] - [kernel] rcu/nocb: Print no-CBs diagnostics when rcutorture writer unduly delayed (Waiman Long) [1862812] - [kernel] rcu/nocb: EXP Check use and usefulness of ->nocb_lock_contended (Waiman Long) [1862812] - [kernel] rcu/nocb: Add bypass callback queueing (Waiman Long) [1862812] - [kernel] rcu/nocb: Atomic ->len field in rcu_segcblist structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Unconditionally advance and wake for excessive CBs (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce ->nocb_lock contention with separate ->nocb_gp_lock (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs invocation-done time (Waiman Long) [1862812] - [kernel] rcu/nocb: Reduce contention at no-CBs registry-time CB advancement (Waiman Long) [1862812] - [kernel] rcu/nocb: Round down for number of no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid ->nocb_lock capture by corresponding CPU (Waiman Long) [1862812] - [kernel] rcu/nocb: Avoid needless wakeups of no-CBs grace-period kthread (Waiman Long) [1862812] - [kernel] rcu/nocb: Make __call_rcu_nocb_wake() safe for many callbacks (Waiman Long) [1862812] - [kernel] rcu/nocb: Never downgrade ->nocb_defer_wakeup in wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Enable re-awakening under high callback load (Waiman Long) [1862812] - [kernel] rcu/nohz: Turn off tick for offloaded CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Suppress uninitialized false-positive in nocb_gp_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_pending() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_core() (Waiman Long) [1862812] - [kernel] rcu/nocb: Use build-time no-CBs check in rcu_do_batch() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_gp_head and nocb_gp_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_cb_tail and nocb_cb_head fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_q_count and nocb_q_count_lazy fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove obsolete nocb_head and nocb_tail fields (Waiman Long) [1862812] - [kernel] rcu/nocb: Use rcu_segcblist for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Leave ->cblist enabled for no-CBs CPUs (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_empty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Allow lockless use of rcu_segcblist_restempty() (Waiman Long) [1862812] - [kernel] rcu/nocb: Remove deferred wakeup checks for extended quiescent states (Waiman Long) [1862812] - [kernel] rcu/nocb: Check for deferred nocb wakeups before nohz_full early exit (Waiman Long) [1862812] - [kernel] rcu/nocb: Make rcutree_migrate_callbacks() start at leaf rcu_node structure (Waiman Long) [1862812] - [kernel] rcu/nocb: Add checks for offloaded callback processing (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate offloaded ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Use separate flag to indicate disabled ->cblist (Waiman Long) [1862812] - [kernel] rcu/nocb: Print gp/cb kthread hierarchy if dump_tree (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_nocb_leader_stride kernel boot parameter (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename and document no-CB CB kthread sleep trace event (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_organize_nocb_kthreads() local variable (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader_defer() to wake_nocb_gp_defer() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename __wake_nocb_leader() to __wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename wake_nocb_leader() to wake_nocb_gp() (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename nocb_follower_wait() to nocb_cb_wait() (Waiman Long) [1862812] - [kernel] rcu/nocb: Provide separate no-CBs grace-period kthreads (Waiman Long) [1862812] - [kernel] rcu/nocb: Update comments to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcu/nocb: Rename rcu_data fields to prepare for forward-progress work (Waiman Long) [1862812] - [kernel] rcutorture: Aggressive forward-progress tests shouldn't block shutdown (Waiman Long) [1862812] - [kernel] rcuperf: Make rcuperf kernel test more robust for !expedited mode (Waiman Long) [1862812] - [kernel] rcutorture: Emulate userspace sojourn during call_rcu() floods (Waiman Long) [1862812] - [tools] rcutorture: Test TREE03 with the threadirqs kernel boot parameter (Waiman Long) [1862812] - [tools] torture: Expand last_ts variable in kvm-test-1-run.sh (Waiman Long) [1862812] - [kernel] rcuperf: Fix perf_type module-parameter description (Waiman Long) [1862812] - [documentation] doc: Add rcutree.kthread_prio pointer to stallwarn.txt (Waiman Long) [1862812] - [kernel] rcu: Change return type of rcu_spawn_one_boost_kthread() (Waiman Long) [1862812] - [kernel] rcu: Add destroy_work_on_stack() to match INIT_WORK_ONSTACK() (Waiman Long) [1862812] - [kernel] rcu: Add kernel parameter to dump trace after RCU CPU stall warning (Waiman Long) [1862812] - [kernel] rcu: Restore barrier() to rcu_read_lock() and rcu_read_unlock() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_note_context_switch exit from critical section (Waiman Long) [1862812] - [kernel] rcu: Make rcu_read_unlock_special() checks match raise_softirq_irqoff() (Waiman Long) [1862812] - [kernel] rcu: Simplify rcu_read_unlock_special() deferred wakeups (Waiman Long) [1862812] - [tools] rcu: Don't return a value from rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: Force inlining of rcu_read_lock() (Waiman Long) [1862812] - [kernel] rcu: Fix irritating whitespace error in rcu_assign_pointer() (Waiman Long) [1862812] - [kernel] rcu: validate arguments for rcu tracepoints (Waiman Long) [1862812] - [trace] tracing: introduce TRACE_EVENT_NOP() (Waiman Long) [1862812] - [kernel] kprobes: Prohibit probing on RCU debug routine (Waiman Long) [1862812] - [init] time: Make VIRT_CPU_ACCOUNTING_GEN depend on GENERIC_CLOCKEVENTS (Waiman Long) [1862812] - [kernel] time: Move CONTEXT_TRACKING to kernel/time/Kconfig (Waiman Long) [1862812]- [fs] xfs: don't commit sunit/swidth updates to disk if that would cause repair failures (Bill O'Donnell) [1849407] - [fs] xfs: split the sunit parameter update into two parts (Bill O'Donnell) [1849407] - [fs] xfs: refactor agfl length computation function (Bill O'Donnell) [1849407] - [net] netfilter: conntrack: proc: rename stat column (Florian Westphal) [1875681] - [net] netfilter: conntrack: add clash resolution stat counter (Florian Westphal) [1875681] - [net] netfilter: conntrack: remove ignore stats (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not increment two error counters at same time (Florian Westphal) [1875681] - [net] netfilter: conntrack: do not auto-delete clash entries on reply (Florian Westphal) [1875681] - [powerpc] powerpc/pseries/iommu: Allow bigger 64bit window by removing default DMA window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Move window-removing part of remove_ddw into remove_dma_window (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Update call to ibm, query-pe-dma-windows (Steve Best) [1725198] - [powerpc] powerpc/pseries/iommu: Create defines for operations in ibm, ddw-applicable (Steve Best) [1725198] - [x86] x86/cpu: Add Sapphire Rapids CPU model number (Puneet Sethi) [1872367] - [x86] x86/cpu: Add Lakefield, Alder Lake and Rocket Lake models to the to Intel CPU family (Steve Best) [1838902]- [powerpc] powerpc/xmon: Improve dumping prefixed instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a ppc_inst_as_str() helper (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_as_u64() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add ppc_inst_next() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for Prefixed Add Immediate (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Let compute tests specify a required cpu feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Set NIP in instruction emulation tests (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed floating-point load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Add tests for prefixed integer load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add POWER10 architected mode (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Add MMA feature (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/dt_cpu_ftrs: Advertise support for ISA v3.1 if selected (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add support for ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add new HWCAP bits (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed fixed-point arithmetic (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for prefixed load/stores (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Support prefixed instructions in alignment handler (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Don't allow breakpoints on suffixes (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed instructions in feature fixups (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Test prefixed code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add prefixed instructions to instruction data type (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/optprobes: Add register argument to patch_imm64_load_insns() (Desnes Augusto Nunes do Rosario) [1854524] - [kvm] powerpc: Define new SRR1 bits for a ISA v3.1 (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/83xx: handle machine check caused by watchdog timer (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Enable Prefixed Instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Make test_translate_branch() independent of instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move insertion of breakpoint for xol'ing (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce a function for reporting instruction length (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Define and use get_user_instr() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kprobes: Use patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_kernel_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add a probe_user_read_inst() function (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for reading instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a datatype for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Refactor __patch_instruction() to use __put_user_asm() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: use probe_user_read() and probe_user_write() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Constify the number of insns printed by show instructions functions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix interleaved output in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/process: Fix sparse address space warnings (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Don't print kernel instructions in show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Add show_user_instructions() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: fix book3s/32 boot failure due to code patching (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Introduce functions for instruction equality (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for byte swapping instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a function for getting the instruction op code (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use an accessor for instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc sstep: Add support for extswsli instruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add support for maddhd, maddhdu, maddld instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Use a macro for creating instructions from u32s (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add infrastructure to fixup branch predictor flush (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/smp: Use code patching to restore reset vector (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addcinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for addinstruction (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: sstep: Add tests for compute type instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/sstep: Fix DS operand in ld encoding to appropriate value (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Don't ignore extraneous exceptions blindly (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/watchpoint: Disable watchpoint hit by larx/stcx instructions (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/kgdb: add kgdb_arch_set/remove_breakpoint() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/hw_breakpoint: move instruction stepping out of hw_breakpoint_handler() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: add modify_instruction() and modify_instruction_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: Change calling convention for create_branch() et. al (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc: simplify patch_instruction_site() and patch_branch_site() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/code-patching: Add a helper to get the address of a patch_site (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/ftrace: Handle large kernel configs (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/32: use patch_site_addr() in machine_init() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/lib: Use patch_site to patch copy_32 functions once cache is enabled (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Use bitwise calculations in_breakpoint_table() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoints to text section (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Move breakpoint instructions to own array (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/xmon: Remove store_inst() for patch_instruction() (Desnes Augusto Nunes do Rosario) [1854524] - [powerpc] powerpc/powernv/idle: Exclude mfspr on HID1, 4, 5 on P9 and above (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Rename pnv_first_spr_loss_level variable (Steve Best) [1854539] - [powerpc] powerpc/powernv/idle: Replace CPU feature check with PVR check (Steve Best) [1854539] - [powerpc] powerpc/64s: Don't set FSCR bits in INIT_THREAD (Steve Best) [1854523] - [powerpc] powerpc/64s: Save FSCR to init_task.thread.fscr after feature init (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't let DT CPU features set FSCR_DSCR (Steve Best) [1854523] - [powerpc] powerpc/64s: Don't init FSCR_DSCR in __init_FSCR() (Steve Best) [1854523]- [kernel] sched/cfs: change initial value of runnable_avg (Phil Auld) [1875995] - [kernel] sched/fair: Fix runnable_avg for throttled cfs (Phil Auld) [1875995] - [kernel] sched/fair: Fix kernel build warning in test_idle_cores() for !SMT NUMA (Phil Auld) [1875995] - [kernel] sched/numa: Acquire RCU lock for checking idle cores during NUMA balancing (Phil Auld) [1875995] - [kernel] sched/numa: Stop an exhastive search if a reasonable swap candidate or idle CPU is found (Phil Auld) [1875995] - [kernel] sched/numa: Bias swapping tasks based on their preferred node (Phil Auld) [1875995] - [kernel] sched/numa: Find an alternative idle CPU if the CPU is part of an active NUMA balance (Phil Auld) [1875995] - [kernel] sched/numa: Prefer using an idle CPU as a migration target instead of comparing tasks (Phil Auld) [1875995] - [kernel] sched/fair: Take into account runnable_avg to classify group (Phil Auld) [1875995] - [kernel] sched/pelt: Add a new runnable average signal (Phil Auld) [1875995] - [kernel] sched/pelt: Remove unused runnable load average (Phil Auld) [1875995] - [kernel] sched: Disable allowing small imbalance to preserve RHEL performance (Phil Auld) [1875995] - [kernel] sched/numa: Use similar logic to the load balancer for moving between domains with spare capacity (Phil Auld) [1875995] - [kernel] sched/numa: Replace runnable_load_avg by load_avg (Phil Auld) [1875995] - [kernel] sched/numa: Distinguish between the different task_numa_migrate() failure cases (Phil Auld) [1875995] - [kernel] sched/numa: Trace when no candidate CPU was found on the preferred node (Phil Auld) [1875995] - [kernel] sched/fair: Allow a small load imbalance between low utilisation SD_NUMA domains (Phil Auld) [1875995] - [mm] powerpc/smp: Implement cpu_to_coregroup_id (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Create coregroup domain (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Allocate cpumask only after searching thread group (Diego Domingos) [1854541] - [powerpc] powerpc/numa: Detect support for coregroup (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Optimize start_secondary (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Dont assume l2-cache to be superset of sibling (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move topology fixups into a new function (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Move powerpc_topology above (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Merge Power9 topology with Power topology (Diego Domingos) [1854541] - [powerpc] powerpc/smp: Fix a warning under !NEED_MULTIPLE_NODES (Diego Domingos) [1854541] - [mm] powerpc/numa: Restrict possible nodes based on platform (Diego Domingos) [1854541] - [mm] powerpc/numa: Limit possible nodes to within num_possible_nodes (Diego Domingos) [1854541] - [powerpc] powerpc: Fix misleading small cores print (Diego Domingos) [1854541] - [netdrv] ibmvnic: add missing parenthesis in do_reset() (Steve Best) [1879547] - [wireless] rtw88: don't hold all IRQs disabled for PS operations (Jarod Wilson) [1874730] - [netdrv] ibmvnic fix NULL tx_pools and rx_tools issue at do_reset (Steve Best) [1872676]- [kernel] sched: Fix use of count for nr_running tracepoint (Phil Auld) [1861444] - [kernel] sched: Add a tracepoint to track rq->nr_running (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoints to track util_est (Phil Auld) [1861444] - [kernel] sched/debug: Export the newly added tracepoints (Phil Auld) [1861444] - [kernel] sched/debug: Add sched_overutilized tracepoint (Phil Auld) [1861444] - [kernel] sched/debug: Add new tracepoint to track PELT at se level (Phil Auld) [1861444] - [kernel] sched/debug: Add a new sched_trace_*() helper functions (Phil Auld) [1861444] - [kernel] sched/autogroup: Make autogroup_path() always available (Phil Auld) [1861444]- [mm] mm/kmemleak.c: fix check for softirq context (Waiman Long) [1878006] - [include] mm/hotplug: invalid PFNs from pfn_to_online_page() (Waiman Long) [1878006] - [mm] mm, kmemleak: little optimization while scanning (Waiman Long) [1878006] - [mm] kmemleak: add module param to print warnings to dmesg (Waiman Long) [1878006] - [mm] kmemleak: always register debugfs file (Waiman Long) [1878006] - [scsi] scsi: megaraid_sas: Don't call disable_irq from process IRQ poll (Tomas Henzl) [1837200] - [scsi] scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro (Tomas Henzl) [1837200] - [platform] platform/x86: dcdbas: Check SMBIOS for protected buffer address (David Arcari) [1858680] - [platform] firmware: dcdbas: Move dcdbas to drivers/platform/x86 (David Arcari) [1858680] - [fs] cifs: fix DFS mount with cifsacl/modefromsid (Leif Sahlberg) [1871246] - [fs] ext4: fix potential negative array index in do_split() (Pavel Reichl) [1846165] {CVE-2020-14314} - [include] block: allow for_each_bvec to support zero len bvec (Ming Lei) [1872032] - [nvme] nvme-pci: disable the write zeros command for Intel 600P/P3100 (David Milburn) [1875391]- [netdrv] ice: Disable VLAN pruning in promiscuous mode (Jonathan Toppins) [1787477] - [mm] mm: slub: introduce 'slub_merge' kernel parameter (Rafael Aquini) [1871214] - [kernel] time/tick-broadcast: Fix tick_broadcast_offline() lockdep complaint (Alexey Klimov) [1877380]- [init] init/Kconfig: disable io_uring (Jeff Moyer) [1879754] - [block] blk-mq: always allow reserved allocation in hctx_may_queue (Ming Lei) [1740874] - [nvme] nvme-rdma: Avoid double freeing of async event data (Gopal Tiwari) [1878140] - [kernel] printk: queue wake_up_klogd irq_work only if per-CPU areas are ready (Igor Mammedov) [1867022]- [firmware] efi: don't reserve MOK config table memory region (Kairui Song) [1878584] - [fs] xfs: fix boundary test in xfs_attr_shortform_verify (Eric Sandeen) [1875316] {CVE-2020-14385} - [powerpc] powerpc/pseries: Do not initiate shutdown when system is running on UPS (Diego Domingos) [1870477]- [fs] nfsd: avoid a NULL dereference in __cld_pipe_upcall() (Scott Mayhew) [1847225] - [net] packet: fix overflow in tpacket_rcv (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] packet: make tp_drops atomic (Hangbin Liu) [1876224] {CVE-2020-14386} - [net] espintcp: restore IP CB before handing the packet to xfrm (Sabrina Dubroca) [1868201] - [fs] Revert "NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE" (Benjamin Coddington) [1865978] - [fs] Revert "NFSv4.x recover from pre-mature loss of openstateid" (Benjamin Coddington) [1865978] - [infiniband] RDMA/mlx4: Read pkey table length instead of hardcoded value (Alaa Hleihel) [1853564] - [net] net/smc: set rx_off for SMCR explicitly (Philipp Rudo) [1875833] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1872381] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1872381] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1872381] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1872381] - [kernel] tracing: Define MCOUNT_INSN_SIZE when not defined without direct calls (Jiri Olsa) [1857599] - [kernel] ftrace: Fix function_graph tracer interaction with BPF trampoline (Jiri Olsa) [1857599] - [x86] x86/function_graph: Simplify with function_graph_enter() (Jiri Olsa) [1857599] - [kernel] function_graph: Create function_graph_enter() to consolidate architecture code (Jiri Olsa) [1857599]- [crypto] pefile: Support multiple signatures in verify_pefile_signature (Lenny Szubowicz) [1862072] - [security] integrity: Load certs from the EFI MOK config table (Lenny Szubowicz) [1868306] - [security] integrity: Move import of MokListRT certs to a separate routine (Lenny Szubowicz) [1868306] - [firmware] efi: Support for MOK variable config table (Lenny Szubowicz) [1868306] - [kernel] Move to dual-signing to split signing keys up better (Frantisek Hrbata) [1837434] {CVE-2020-10713} - [powerpc] pseries/hotplug-cpu: wait indefinitely for vCPU death (Michael Roth) [1856588] - [powerpc] kvm: ppc: book3s hv: Rework secure mem slot dropping (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Move kvmppc_svm_page_out up (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Migrate hot plugged memory (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: In H_SVM_INIT_DONE, migrate remaining normal-GFNs to secure-GFNs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Track the state GFNs associated with secure VMs (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Disable page merging in H_SVM_INIT_START (Michael Roth) [1851259] - [powerpc] kvm: ppc: book3s hv: Fix function definition in book3s_hv_uvmem.c (Michael Roth) [1851259] - [kernel] mmap locking api: initial implementation as rwsem wrappers (Michael Roth) [1851259] - [mm] handle multiple owners of device private pages in migrate_vma (Michael Roth) [1851259] - [mm] migrate.c: clean up useless code in migrate_vma_collect_pmd() (Michael Roth) [1851259] - [mm] remove the unused MIGRATE_PFN_DEVICE flag (Michael Roth) [1851259] - [powerpc] rhel: powerpc: kvm: Increase HDEC threshold to enter guest (David Gibson) [1733467] - [netdrv] r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2 (Michal Schmidt) [1851966] - [fs] ceph: fix inode number handling on arches with 32-bit ino_t (Jeff Layton) [1869679] - [fs] ceph: don't allow setlease on cephfs (Jeff Layton) [1872382] - [block] blk-mq: order adding requests to hctx->dispatch and checking SCHED_RESTART (Ming Lei) [1859628]- [s390] scsi: zfcp: Move allocation of the shost object to after xconf- and xport-data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence early sysfs interfaces for accesses of shost objects (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence adapter status propagation for common statuses (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move p-t-p port allocation to after xport data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fence fc_host updates during link-down handling (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move fc_host updates during xport data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost updates during xconfig data handling into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Move shost modification after QDIO (re-)open into fenced function (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: fix fc_host attributes that should be unknown on local link down (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: wire previously driver-specific sysfs attributes also to fc_host (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: expose fabric name as common fc_host sysfs attribute (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: add diagnostics buffer for exchange config data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: diagnostics buffer caching and use for exchange port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: signal incomplete or error for sync exchange config/port data (Claudio Imbrenda) [1872799] - [s390] scsi: zfcp: Fix use-after-free in request timeout handlers (Claudio Imbrenda) [1872796] - [tools] selftests/powerpc: Update the stack expansion test (Gustavo Duarte) [1869755] - [mm] powerpc: Allow 4224 bytes of stack expansion for the signal frame (Gustavo Duarte) [1869755] - [tools] selftests/powerpc: Add test of stack expansion logic (Gustavo Duarte) [1869755] - [mm] mm: check that mm is still valid in madvise() (Jeff Moyer) [1874560] - [block] block: virtio_blk: fix handling single range discard request (Ming Lei) [1842035] - [block] block: respect queue limit of max discard segment (Ming Lei) [1842035] - [fs] io_uring: Fix NULL pointer dereference in loop_rw_iter() (Jeff Moyer) [1854649] - [fs] io_uring: return locked and pinned page accounting (Jeff Moyer) [1854649] - [fs] io_uring: always allow drain/link/hardlink/async sqe flags (Jeff Moyer) [1854649] - [fs] io_uring: ensure double poll additions work with both request types (Jeff Moyer) [1854649] - [fs] io_uring: fix recvmsg memory leak with buffer selection (Jeff Moyer) [1854649] - [fs] io_uring: fix missing msg_name assignment (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in io_sqe_files_register() (Jeff Moyer) [1854649] - [fs] io_uring: account user memory freed when exit has been queued (Jeff Moyer) [1854649] - [fs] io_uring: fix memleak in __io_sqe_files_update() (Jeff Moyer) [1854649] - [fs] io_uring: fix regression with always ignoring signals in io_cqring_wait() (Jeff Moyer) [1854649] - [fs] io_uring: use signal based task_work running (Jeff Moyer) [1854649] - [kernel] task_work: teach task_work_add() to do signal_wake_up() (Jeff Moyer) [1854649] - [fs] io_uring: fix missing ->mm on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix potential use after free on fallback request free (Jeff Moyer) [1854649] - [fs] io_uring: fix req->work corruption (Jeff Moyer) [1854649] - [fs] io_uring: fix NULL-mm for linked reqs (Jeff Moyer) [1854649] - [fs] io_uring: fix current->mm NULL dereference on exit (Jeff Moyer) [1854649] - [fs] io_uring: fix hanging iopoll in case of -EAGAIN (Jeff Moyer) [1854649] - [fs] io_uring: fix io_sq_thread no schedule when busy (Jeff Moyer) [1854649] - [fs] io_uring: fix possible race condition against REQ_F_NEED_CLEANUP (Jeff Moyer) [1854649] - [fs] io_uring: reap poll completions while waiting for refs to drop on exit (Jeff Moyer) [1854649] - [fs] io_uring: acquire 'mm' for task_work for SQPOLL (Jeff Moyer) [1854649] - [fs] io_uring: add memory barrier to synchronize io_kiocb's result and iopoll_completed (Jeff Moyer) [1854649] - [fs] io_uring: don't fail links for EAGAIN error in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: fix io_kiocb.flags modification race in IOPOLL mode (Jeff Moyer) [1854649] - [fs] io_uring: allow O_NONBLOCK async retry (Jeff Moyer) [1854649] - [fs] io_uring: use kvfree() in io_sqe_buffer_register() (Jeff Moyer) [1854649] - [fs] io_uring: validate the full range of provided buffers for access (Jeff Moyer) [1854649] - [fs] io_uring: re-set iov base/len for buffer select retry (Jeff Moyer) [1854649] - [fs] io_uring: fix {SQ, IO}POLL with unsupported opcodes (Jeff Moyer) [1854649] - [fs] io_uring: disallow close of ring itself (Jeff Moyer) [1854649] - [fs] io_uring: fix overflowed reqs cancellation (Jeff Moyer) [1854649] - [fs] io_uring: fix flush req->refs underflow (Jeff Moyer) [1854649] - [fs] io_uring: async task poll trigger cleanup (Jeff Moyer) [1854649] - [fs] io_uring: allow POLL_ADD with double poll_wait() users (Jeff Moyer) [1854649] - [fs] io_uring: remove 'fd is io_uring' from close path (Jeff Moyer) [1854649] - [nvme] nvme: allow retry for requests with REQ_FAILFAST_TRANSPORT set (Mike Snitzer) [1843515] - [nvme] nvme: decouple basic ANA log page re-read support from native multipathing (Mike Snitzer) [1843515] - [nvme] nvme: update failover handling to work with REQ_FAILFAST_TRANSPORT (Mike Snitzer) [1843515] - [nvme] nvme: Return BLK_STS_TARGET if the DNR bit is set (Mike Snitzer) [1843515] - [nvme] nvme: redirect commands on dying queue (Mike Snitzer) [1843515] - [nvme] nvme: just check the status code type in nvme_is_path_error (Mike Snitzer) [1843515] - [nvme] nvme: refactor command completion (Mike Snitzer) [1843515] - [nvme] nvme-multipath: do not reset on unknown status (Mike Snitzer) [1843515] - [nvme] Revert "nvme: allow ANA support to be independent of native multipathing" (Mike Snitzer) [1843515] - [nvme] Revert "nvme-multipath: do not reset on unknown status" (Mike Snitzer) [1843515] - [mm] mm, THP, swap: fix allocating cluster for swapfile by mistake (Gao Xiang) [1855474] - [net] sched: act_ct: Fix skb double-free in tcf_ct_handle_fragments() error flow (Marcelo Leitner) [1866391] - [net] netfilter: conntrack: allow sctp hearbeat after connection re-use (Florian Westphal) [1865798] - [video] vgacon: Fix for missing check in scrollback handling (Lyude Paul) [1859472] {CVE-2020-14331} - [scsi] Revert "scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe" (Nilesh Javali) [1866744] - [scsi] Revert "scsi: qla2xxx: Fix crash on qla2x00_mailbox_command" (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix null pointer access during disconnect from subsystem (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Check if FW supports MQ before enabling (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix WARN_ON in qla_nvme_register_hba (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Reduce noisy debug message (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Fix login timeout (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush I/O on zone disable (Nilesh Javali) [1866744] - [scsi] scsi: qla2xxx: Flush all sessions on zone disable (Nilesh Javali) [1866744] - [tools] bpf: selftests: global_funcs: Check err_str before strstr (Yauheni Kaliuta) [1873163] - [netdrv] net/mlx5e: E-Switch, Specify flow_source for rule with no in_port (Alaa Hleihel) [1869602] - [netdrv] net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring (Alaa Hleihel) [1869602] - [tools] selftests/bpf: test for map update access from within EXT programs (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: test for checking return code for the extended prog (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [tools] selftests/bpf: Add test for freplace program with write access (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [net] bpf: verifier: use target program's type for access verifications (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1871071] - [scsi] scsi: lpfc: Fix NVMe rport deregister and registration during ADISC (Dick Kennedy) [1871223] - [scsi] scsi: lpfc: Fix LUN loss after cable pull (Dick Kennedy) [1871223] - [infiniband] RDMA/bnxt_re: Do not add user qps to flushlist (Selvin Xavier) [1858674] - [fs] NFSv4.0 allow nconnect for v4.0 (Benjamin Coddington) [1842746] - [mm] mm/vunmap: add cond_resched() in vunmap_pmd_range (Rafael Aquini) [1871710] - [s390] s390/bpf: Maintain 8-byte stack alignment (Jiri Olsa) [1871040]- [netdrv] vrf: Fix IPv6 with qdisc and xfrm (Sabrina Dubroca) [1868565] - [netdrv] vrf: make sure skb->data contains ip header to make routing (Sabrina Dubroca) [1868565] - [netdrv] vrf: Check skb for XFRM_TRANSFORMED flag (Sabrina Dubroca) [1868565] - [net] Do not clear the sock TX queue in sk_set_socket() (Andrea Claudi) [1850421] - [net] Use RCU_INIT_POINTER() to set sk_wq (Andrea Claudi) [1850421] - [net] netfilter: ip6tables: Add a .pre_exit hook in all ip6table_foo.c. (Florian Westphal) [1862384] - [net] netfilter: iptables: Add a .pre_exit hook in all iptable_foo.c. (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix an error code in ip_set_sockfn_get() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Don't account for expired elements on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Drop spurious condition for overlap detection on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Detect partial overlaps on insertion (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: Introduce and use nft_rbtree_interval_start() (Florian Westphal) [1862384] - [net] netfilter: nf_tables: fix nat hook table deletion (Florian Westphal) [1862384] - [net] netfilter: ipset: call ip_set_free() instead of kfree() (Florian Westphal) [1862384] - [net] netfilter: ip6tables: Split ip6t_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: iptables: Split ipt_unregister_table() into pre_exit and exit helpers. (Florian Westphal) [1862384] - [net] netfilter: nft_set_pipapo: Disable preemption before getting per-CPU pointer (Florian Westphal) [1862384] - [net] netfilter: nft_nat: return EOPNOTSUPP if type or flags are not supported (Florian Westphal) [1862384] - [net] netfilter: conntrack: comparison of unsigned in cthelper confirmation (Florian Westphal) [1862384] - [net] netfilter: conntrack: refetch conntrack after nf_conntrack_update() (Florian Westphal) [1862384] - [net] netfilter: conntrack: Pass value of ctinfo to __nf_conntrack_update (Florian Westphal) [1862384] - [net] netfilter: conntrack: make conntrack userspace helpers work again (Florian Westphal) [1862384] - [net] netfilter: nfnetlink_cthelper: unbreak userspace helper support (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: fix compilation warning with W=1 build (Florian Westphal) [1862384] - [net] netfilter: nf_conntrack_pptp: prevent buffer overflows in debug code (Florian Westphal) [1862384] - [net] netfilter: nft_set_bitmap: initialize set element extension in lookups (Florian Westphal) [1862384] - [net] netfilter: nft_fwd_netdev: validate family and chain type (Florian Westphal) [1862384] - [net] netfilter: nft_payload: add missing attribute validation for payload csum flags (Florian Westphal) [1862384] - [net] netfilter: cthelper: add missing attribute validation for cthelper (Florian Westphal) [1862384] - [net] netfilter: ipset: Fix forceadd evaluation path (Florian Westphal) [1862384] - [net] netfilter: bridge: make sure to pull arp header in br_nf_forward_arp() (Florian Westphal) [1862384] - [net] netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in named sets (Florian Westphal) [1862384] - [net] netfilter: ctnetlink: netns exit must wait for callbacks (Florian Westphal) [1862384] - [arm64] kvm: arm64: Don't inherit exec permission across page-table levels (Andrew Jones) [1869297] - [arm64] kvm: arm64: Flush the instruction cache if not unmapping the VM on reboot (Andrew Jones) [1869297] - [s390] s390, dcssblk: kaddr and pfn can be NULL to ->direct_access() (Claudio Imbrenda) [1868927] - [fs] chardev: Avoid potential use-after-free in 'chrdev_open()' (Vladis Dronov) [1866324] {CVE-2020-0305} - [net] net: accept an empty mask in /sys/class/net/*/queues/rx-*/rps_cpus (Nitesh Narayan Lal) [1868433] - [x86] Revert "x86/intel: Disable HPET on Intel Ice Lake platforms" (David Arcari) [1868405] - [kernel] sched: Fix race against ptrace_freeze_trace() (Oleg Nesterov) [1862560] - [kernel] sched: Fix loadavg accounting race (Oleg Nesterov) [1862560] - [kernel] kernel/sched/: remove caller signal_pending branch predictions (Oleg Nesterov) [1862560] - [kernel] locking/spinlock, sched/core: Clarify requirements for smp_mb__after_spinlock() (Oleg Nesterov) [1862560] - [nvme] nvme: multipath: round-robin: eliminate "fallback" variable (Gopal Tiwari) [1868443] - [nvme] nvme: multipath: round-robin: fix single non-optimized path case (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: do not fall back to __nvme_find_path() for non-optimized paths (Gopal Tiwari) [1868443] - [nvme] nvme-multipath: fix logic for non-optimized paths (Gopal Tiwari) [1868443] - [tools] selftests/bpf: Fix segmentation fault in test_progs (Yauheni Kaliuta) [1868494] - [pci] hv: Fix a timing issue which causes kdump to fail occasionally (Mohammed Gamal) [1861960] - [hv] hv: vmbus: Only notify Hyper-V for die events that are oops (Vitaly Kuznetsov) [1868131] - [x86] kvm: nsvm: Correctly set the shadow NPT root level in its MMU role (Vitaly Kuznetsov) [1845507] - [x86] kvm: x86: drop superfluous mmu_check_root() from fast_pgd_switch() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: use nested_svm_load_cr3() on guest->host switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: implement nested_svm_load_cr3() and use it for host->guest switch (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: move kvm_set_cr3() after nested_svm_uninit_mmu_context() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: introduce nested_svm_load_cr3()/nested_npt_enabled() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: prepare to handle errors from enter_svm_guest_mode() (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: reset nested_run_pending upon nested_svm_vmrun_msrpm() failure (Vitaly Kuznetsov) [1845507] - [x86] kvm: mmu: stop dereferencing vcpu->arch.mmu to get the context for MMU init (Vitaly Kuznetsov) [1845507] - [x86] kvm: nsvm: split kvm_init_shadow_npt_mmu() from kvm_init_shadow_mmu() (Vitaly Kuznetsov) [1845507] - [security] selinux: compute genfs symlink context in case of CephFS (Ondrej Mosnacek) [1865800] - [fs] ceph: set sec_context xattr on symlink creation (Ondrej Mosnacek) [1861509] - [tools] selftests: bpf: define SO_RCVTIMEO and SO_SNDTIMEO properly for ppc64le (Jiri Benc) [1860386] - [tools] bpf: Sync RHEL version of asm-generic/socket.h to tools/ (Jiri Benc) [1860386] - [tools] selftests: bpf: skip tests not working on RHEL (Jiri Benc) [1866908] - [tools] Revert "selftests: bpf: disable test_lwt_seg6local" (Jiri Benc) [1866908] - [tools] Revert "bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS" (Jiri Benc) [1866908] - [tools] selftests: add option to skip specific tests in RHEL (Jiri Benc) [1866908] - [tools] selftests: bpf: switch off timeout (Jiri Benc) [1866908] - [tools] selftest/firmware: Add selftest timeout in settings (Jiri Benc) [1866908] - [tools] selftests/harness: Limit step counter reporting (Jiri Benc) [1866908] - [tools] selftests/harness: Clean up kern-doc for fixtures (Jiri Benc) [1866908] - [tools] selftests: fix condition in run_tests (Jiri Benc) [1866908] - [tools] selftests: do not use .ONESHELL (Jiri Benc) [1866908] - [tools] selftests/harness: Report skip reason (Jiri Benc) [1866908] - [tools] selftests/harness: Display signed values correctly (Jiri Benc) [1866908] - [tools] selftests/harness: Refactor XFAIL into SKIP (Jiri Benc) [1866908] - [tools] selftests/harness: Switch to TAP output (Jiri Benc) [1866908] - [tools] selftests: Add header documentation and helpers (Jiri Benc) [1866908] - [tools] kselftest: fix TAP output for skipped tests (Jiri Benc) [1866908] - [tools] kselftest: ksft_test_num return type should be unsigned (Jiri Benc) [1866908] - [tools] selftests: introduce gen_tar Makefile target (Jiri Benc) [1866908] - [tools] kselftest: add fixture variants (Jiri Benc) [1866908] - [tools] kselftest: run tests by fixture (Jiri Benc) [1866908] - [tools] kselftest: create fixture objects (Jiri Benc) [1866908] - [tools] kselftest: factor out list manipulation to a helper (Jiri Benc) [1866908] - [tools] selftests: add build/cross-build dependency check script (Jiri Benc) [1866908] - [tools] kselftest/runner: allow to properly deliver signals to tests (Jiri Benc) [1866908] - [tools] selftests/harness: fix spelling mistake "SIGARLM" -> "SIGALRM" (Jiri Benc) [1866908] - [tools] selftests: enforce local header dependency in lib.mk (Jiri Benc) [1866908] - [tools] selftests/harness: Handle timeouts cleanly (Jiri Benc) [1866908] - [tools] selftests/harness: Move test child waiting logic (Jiri Benc) [1866908] - [tools] selftests: Fix kselftest O=objdir build from cluttering top level objdir (Jiri Benc) [1866908] - [tools] selftests: allow detection of build failures (Jiri Benc) [1866908] - [tools] selftests: fix build behaviour on targets' failures (Jiri Benc) [1866908] - [tools] kselftest: Support old perl versions (Jiri Benc) [1866908] - [tools] kselftest/runner: Print new line in print of timeout log (Jiri Benc) [1866908] - [tools] selftests: Fix dangling documentation references to kselftest_module.sh (Jiri Benc) [1866908] - [tools] kselftest: Fix NULL INSTALL_PATH for TARGETS runlist (Jiri Benc) [1866908] - [tools] selftests: Move kselftest_module.sh into kselftest/ (Jiri Benc) [1866908] - [tools] selftests: gen_kselftest_tar.sh: Do not clobber kselftest/ (Jiri Benc) [1866908] - [tools] selftests/kselftest/runner.sh: Add 45 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: exclude failed TARGETS from runlist (Jiri Benc) [1866908] - [tools] kselftest: add capability to skip chosen TARGETS (Jiri Benc) [1866908] - [tools] selftests: Add kselftest-all and kselftest-install targets (Jiri Benc) [1866908] - [tools] selftests: use "$(MAKE)" instead of "make" (Jiri Benc) [1866908] - [tools] kselftest: save-and-restore errno to allow for m formatting (Jiri Benc) [1866908] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 481 (Jiri Benc) [1866908] - [tools] selftests/harness: Allow test to configure timeout (Jiri Benc) [1866908] - [tools] selftests: avoid KBUILD_OUTPUT dir cluttering with selftest objects (Jiri Benc) [1866908] - [tools] selftests: fix bpf build/test workflow regression when KBUILD_OUTPUT is set (Jiri Benc) [1866908] - [tools] selftests: fix install target to use default install path (Jiri Benc) [1866908] - [tools] selftests: build and run gpio when output directory is the src dir (Jiri Benc) [1866908] - [documentation] doc: kselftest: Fix KBUILD_OUTPUT usage instructions (Jiri Benc) [1866908] - [tools] selftests: fix headers_install circular dependency (Jiri Benc) [1866908] - [tools] selftests/harness: Add 30 second timeout per test (Jiri Benc) [1866908] - [tools] kselftest: Add test module framework header (Jiri Benc) [1866908] - [tools] kselftest: Add test runner creation script (Jiri Benc) [1866908] - [tools] selftests/harness: Update named initializer syntax (Jiri Benc) [1866908] - [tools] selftest: include stdio.h in kselftest.h (Jiri Benc) [1866908] - [tools] selftests: do not macro-expand failed assertion expressions (Jiri Benc) [1866908] - [documentation] Documentation/dev-tools: clean up kselftest.rst (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update config file location (Jiri Benc) [1866908] - [documentation] doc: dev-tools: kselftest.rst: update contributing new tests (Jiri Benc) [1866908]- [fs] nfs: ensure correct writeback errors are returned on close() (Scott Mayhew) [1849424] - [netdrv] net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task() (Dean Nelson) [1824858] - [crypto] crypto: ecc - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - SP800-56A rev 3 local public key validation (Herbert Xu) [1855817] - [crypto] crypto: dh - check validity of Z before export (Herbert Xu) [1855817] - [lib] lib/mpi: Add mpi_sub_ui() (Herbert Xu) [1855817] - [crypto] crypto: ecdh - check validity of Z before export (Herbert Xu) [1855817] - [netdrv] net: thunderx: initialize VF's mailbox mutex before first usage (Dean Nelson) [1866827] - [kernel] timers: Lower base clock forwarding threshold (Phil Auld) [1833096] - [kernel] timers: Remove must_forward_clk (Phil Auld) [1833096] - [kernel] timers: Spare timer softirq until next expiry (Phil Auld) [1833096] - [kernel] timers: Expand clk forward logic beyond nohz (Phil Auld) [1833096] - [kernel] timers: Reuse next expiry cache after nohz exit (Phil Auld) [1833096] - [kernel] timers: Always keep track of next expiry (Phil Auld) [1833096] - [kernel] timers: Optimize _next_timer_interrupt() level iteration (Phil Auld) [1833096] - [kernel] timers: Add comments about calc_index() ceiling work (Phil Auld) [1833096] - [kernel] timers: Move trigger_dyntick_cpu() to enqueue_timer() (Phil Auld) [1833096] - [kernel] timers: Use only bucket expiry for base->next_expiry value (Phil Auld) [1833096] - [kernel] timers: Preserve higher bits of expiration on index calculation (Phil Auld) [1833096] - [kernel] timer: Fix wheel index calculation on last level (Phil Auld) [1833096] - [kernel] timer: Prevent base->clk from moving backward (Phil Auld) [1833096] - [kernel] timer: Read jiffies once when forwarding base clk (Phil Auld) [1833096] - [powerpc] powerpc/64: Update Speculation_Store_Bypass in /proc//status (Gustavo Duarte) [1773868] - [scsi] scsi: virtio-scsi: Correctly handle the case where all LUNs are unplugged (Maxim Levitsky) [1756093] - [kvm] kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on the host (Maxim Levitsky) [1853447] - [kvm] x86/kvm: Move context tracking where it belongs (Nitesh Narayan Lal) [1854011] - [scsi] scsi: megaraid_sas: Clear affinity hint (Tomas Henzl) [1828351] - [netdrv] revert "vxlan: fix tos value before xmit" (Andrea Claudi) [1862166] - [net] udp: Copy has_conns in reuseport_grow(). (Marcelo Leitner) [1867160] - [net] dev: Defer free of skbs in flush_backlog (Marcelo Leitner) [1867160] - [include] net: core: reduce recursion limit value (Marcelo Leitner) [1867160] - [netdrv] pppoe: only process PADT targeted at local interfaces (Andrea Claudi) [1866850] - [net] espintcp: count packets dropped in espintcp_rcv (Sabrina Dubroca) [1866393] - [net] espintcp: handle short messages instead of breaking the encap socket (Sabrina Dubroca) [1866393] - [net] espintcp: recv() should return 0 when the peer socket is closed (Sabrina Dubroca) [1866393] - [net] espintcp: support non-blocking sends (Sabrina Dubroca) [1866393] - [net] mptcp: be careful on subflow creation (Davide Caratti) [1862200] - [net] mptcp: fix bogus sendmsg() return code under pressure (Davide Caratti) [1862200] - [net] mptcp: fix joined subflows with unblocking sk (Davide Caratti) [1862200] - [net] subflow: explicitly check for plain tcp rsk (Davide Caratti) [1862200] - [net] mptcp: silence warning in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix race in subflow_data_ready() (Davide Caratti) [1862200] - [net] mptcp: fix memory leak in mptcp_subflow_create_socket() (Davide Caratti) [1862200] - [net] mptcp: don't leak msk in token container (Davide Caratti) [1862200] - [net] ipv4: Silence suspicious RCU usage warning (Guillaume Nault) [1866430] - [net] devinet: fix memleak in inetdev_init() (Guillaume Nault) [1866430] - [net] ipip: fix wrong address family in init error path (Guillaume Nault) [1866430] - [net] inet_csk: Fix so_reuseport bind-address cache in tb->fast* (Guillaume Nault) [1866430] - [net] ipmr: Add lockdep expression to ipmr_for_each_table macro (Guillaume Nault) [1866430] - [net] ipmr: Fix RCU list debugging warning (Guillaume Nault) [1866430] - [net] tcp: make sure listeners don't initialize congestion-control state (Paolo Abeni) [1865904] - [net] sched: The error lable position is corrected in ct_init_module (Davide Caratti) [1865890] - [net] sched: cls_api: fix nooffloaddevcnt warning dmesg log (Davide Caratti) [1865890] - [net] tls: fix race condition causing kernel panic (Sabrina Dubroca) [1861756] - [net] tls: free record only on encryption error (Sabrina Dubroca) [1861756] - [net] tls: fix encryption error checking (Sabrina Dubroca) [1861756] - [net] l2tp: add sk_family checks to l2tp_validate_socket (Guillaume Nault) [1861453] - [net] l2tp: do not use inet_hash()/inet_unhash() (Guillaume Nault) [1861453] - [net] tipc: allow to build NACK message in link timeout function (Xin Long) [1860877] - [net] tipc: fix retransmission on unicast links (Xin Long) [1860877] - [net] tipc: fix NULL pointer dereference in tipc_disc_rcv() (Xin Long) [1860877] - [net] tipc: remove set but not used variable 'prev' (Xin Long) [1860877] - [net] tipc: call tsk_set_importance from tipc_topsrv_create_listener (Xin Long) [1860877] - [net] tipc: add support for broadcast rcv stats dumping (Xin Long) [1860877] - [net] tipc: enable broadcast retrans via unicast (Xin Long) [1860877] - [net] tipc: add back link trace events (Xin Long) [1860877] - [net] tipc: introduce Gap ACK blocks for broadcast link (Xin Long) [1860877] - [net] tipc: block BH before using dst_cache (Xin Long) [1860877] - [net] tipc: fix partial topology connection closure (Xin Long) [1860877] - [net] xfrm: policy: match with both mark and mask on user interfaces (Xin Long) [1854116] - [scsi] scsi: dh: Add Fujitsu device to devinfo and dh lists (Ewan Milne) [1861418] - [x86] kvm: Set KVM_SOFT_MAX_VCPUS to 1024 (Eduardo Habkost) [1856996] - [md] dm integrity: fix integrity recalculation that is improperly skipped (Mike Snitzer) [1860160] - [netdrv] ibmvnic: Fix IRQ mapping disposal in error path (Steve Best) [1867498] - [infiniband] IB/hfi1: Do not destroy link_wq when the device is shut down (Kamal Heib) [1858392] - [infiniband] IB/hfi1: Do not destroy hfi1_wq when the device is shut down (Kamal Heib) [1858392] - [netdrv] Revert "net/broadcom: Clean broadcom code from driver versions" (Jonathan Toppins) [1867146] - [net] devmap: Use bpf_map_area_alloc() for allocating hash buckets (Jiri Benc) [1842380] - [kernel] kexec_file: Correctly output debugging information for the PT_LOAD ELF header (Lianbo Jiang) [1861186] - [kernel] kexec: Improve & fix crash_exclude_mem_range() to handle overlapping ranges (Lianbo Jiang) [1861186] - [x86] x86/crash: Correct the address boundary of function parameters (Lianbo Jiang) [1861186] - [fs] ceph: handle zero-length feature mask in session messages (Jeff Layton) [1866018] - [s390] s390/bpf: Tolerate not converging code shrinking (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Use brcl for jumping to exit_ip if necessary (Yauheni Kaliuta) [1857120] - [s390] s390/bpf: Fix sign extension in branch_ku (Yauheni Kaliuta) [1857120] - [tools] selftests: bpf: test_kmod.sh: Fix running out of srctree (Yauheni Kaliuta) [1857120] - [lib] bpf: revert "test_bpf: Flag tests that cannot be jited on s390" (Yauheni Kaliuta) [1857120] - [kernel] uprobes: ensure that uprobe->offset and ->ref_ctr_offset are properly aligned (Oleg Nesterov) [1848596]- [fs] nfs: nfs_file_write() should check for writeback errors (Scott Mayhew) [1852788] - [s390] s390/cpum_cf, perf: change DFLT_CCERROR counter name (Philipp Rudo) [1865794] - [net] net/smc: unique reason code for exceeded max dmb count (Philipp Rudo) [1865792] - [s390] s390/ism: indicate correct error reason in ism_alloc_dmb() (Philipp Rudo) [1865792] - [net] net/smc: fix dmb buffer shortage (Philipp Rudo) [1865792] - [net] net/smc: put slot when connection is killed (Philipp Rudo) [1865792] - [net] net/smc: fix restoring of fallback changes (Philipp Rudo) [1865792] - [net] net/smc: remove freed buffer from list (Philipp Rudo) [1865792] - [net] net/smc: do not call dma sync for unmapped memory (Philipp Rudo) [1865792] - [net] net/smc: fix handling of delete link requests (Philipp Rudo) [1865792] - [net] net/smc: move add link processing for new device into llc layer (Philipp Rudo) [1865792] - [net] net/smc: drop out-of-flow llc response messages (Philipp Rudo) [1865792] - [net] net/smc: protect smc ib device initialization (Philipp Rudo) [1865792] - [net] net/smc: fix link lookup for new rdma connections (Philipp Rudo) [1865792] - [net] net/smc: clear link during SMC client link down processing (Philipp Rudo) [1865792] - [net] net/smc: handle unexpected response types for confirm link (Philipp Rudo) [1865792] - [net] net/smc: switch smcd_dev_list spinlock to mutex (Philipp Rudo) [1865792] - [net] net/smc: fix sleep bug in smc_pnet_find_roce_resource() (Philipp Rudo) [1865792] - [net] net/smc: fix work request handling (Philipp Rudo) [1865792] - [net] net/smc: separate LLC wait queues for flow and messages (Philipp Rudo) [1865792] - [net] net/smc: pre-fetch send buffer outside of send_lock (Philipp Rudo) [1865792] - [nvme] nvme-fc: set max_segments to lldd max value (Ewan Milne) [1853181] - [powerpc] ppc64/kexec_file: enable early kernel's OPAL calls (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: fix kexec load failure with lack of memory hole (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: add appropriate regions for memory reserve map (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: prepare elfcore header for crashing kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: setup backup region for kdump kernel (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: restrict memory usage of kdump kernel (Diego Domingos) [1829715] - [mm] powerpc/drmem: make lmb walk a bit more flexible (Diego Domingos) [1829715] - [powerpc] ppc64/kexec_file: avoid stomping memory used by special regions (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: add helper functions for getting memory ranges (Diego Domingos) [1829715] - [powerpc] powerpc/kexec_file: mark PPC64 specific code (Diego Domingos) [1829715] - [kernel] kexec_file: allow archs to handle special regions while locating memory hole (Diego Domingos) [1829715] - [netdrv] net/mlx5e: CT: Support restore ipv6 tunnel (Alaa Hleihel) [1862975] - [netdrv] ionic: unlock queue mutex in error path (Jonathan Toppins) [1854270] - [netdrv] ionic: use mutex to protect queue operations (Jonathan Toppins) [1854270] - [net] xfrm: esp6: fix the location of the transport header with encapsulation (Sabrina Dubroca) [1857653] - [net] ipv4: fill fl4_icmp_{type, code} in ping_v4_sendmsg (Sabrina Dubroca) [1861324] - [netdrv] geneve: fix an uninitialized value in geneve_changelink() (Sabrina Dubroca) [1860945] - [net] ip_tunnel: fix use-after-free in ip_tunnel_lookup() (Sabrina Dubroca) [1860945] - [netdrv] vxlan: Avoid infinite loop when suppressing NS messages with invalid options (Sabrina Dubroca) [1860945] - [tools] selftests: mptcp: capture pcap on both sides (Hangbin Liu) [1859880] - [tools] selftests/net: report etf errors correctly (Hangbin Liu) [1859880] - [tools] selftests: net: ip_defrag: ignore EPERM (Hangbin Liu) [1859880] - [tools] selftests: forwarding: pedit_dsfield: Check counter value (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: fix SO_RCVLOWAT setting (Hangbin Liu) [1859880] - [tools] selftests: net: tcp_mmap: clear whole tcp_zerocopy_receive struct (Hangbin Liu) [1859880] - [tools] selftests: A few improvements to fib_nexthops.sh (Hangbin Liu) [1859880] - [tools] selftests: Add tests for vrf and xfrms (Hangbin Liu) [1859880] - [tools] selftests: pmtu: implement IPIP, SIT and ip6tnl PMTU discovery tests (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: define libs as TEST_PROGS_EXTENDED (Hangbin Liu) [1859880] - [tools] selftests/net/forwarding: add Makefile to install tests (Hangbin Liu) [1859880] - [tools] selftests: nft_concat_range: Move option for 'list ruleset' before command (Hangbin Liu) [1859880] - [tools] selftests: netfilter: use randomized netns names (Hangbin Liu) [1859880] - [tools] kselftests: netfilter: fix leftover net/net-next merge conflict (Hangbin Liu) [1859880] - [tools] selftests: netfilter: missing error check when setting up veth interface (Hangbin Liu) [1859880] - [net] sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket (Xin Long) [1860673] - [net] sctp: check assoc before SCTP_ADDR_{MADE_PRIM, ADDED} event (Xin Long) [1860673] - [net] sctp: fix typo sctp_ulpevent_nofity_peer_addr_change (Xin Long) [1860673] - [net] sctp: Fix spelling in Kconfig help (Xin Long) [1860673] - [net] sctp: Start shutdown on association restart if in SHUTDOWN-SENT state and socket is closed (Xin Long) [1860673] - [net] sctp: Don't add the shutdown timer if its already been added (Xin Long) [1860673] - [net] sctp: Fix SHUTDOWN CTSN Ack in the peer restart case (Xin Long) [1860673] - [net] sctp: Fix bundling of SHUTDOWN with COOKIE-ACK (Xin Long) [1860673] - [net] ip6_vti: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: use IS_REACHABLE to avoid some compile errors (Xin Long) [1840976 1835075] - [net] xfrm: interface: not xfrmi_ipv6/ipip_handler twice (Xin Long) [1840976 1835075] - [net] ip6_vti: not register vti_ipv6_handler twice (Xin Long) [1840976 1835075] - [net] ip_vti: not register vti_ipip_handler twice (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IPIP and IPIP6 tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] xfrm: interface: support IP6IP6 and IP6IP tunnels processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ipcomp: assign if_id to child tunnel from parent tunnel (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP tunnel processing (Xin Long) [1840976 1835075] - [net] ip6_vti: support IP6IP6 tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP6 tunnel processing (Xin Long) [1840976 1835075] - [net] ip_vti: support IPIP tunnel processing with .cb_handler (Xin Long) [1840976 1835075] - [net] tunnel6: add tunnel6_input_afinfo for ipip and ipv6 tunnels (Xin Long) [1840976 1835075] - [net] tunnel4: add cb_handler to struct xfrm_tunnel (Xin Long) [1840976 1835075] - [net] xfrm: add is_ipip to struct xfrm_input_afinfo (Xin Long) [1840976 1835075] - [net] tunnel6: support for IPPROTO_MPLS (Xin Long) [1840976 1835075] - [net] virtio_vsock: Enhance connection semantics (Stefano Garzarella) [1861735] - [net] virtio_vsock: Fix race condition in virtio_transport_recv_pkt (Stefano Garzarella) [1858135] - [net] vsock/virtio: annotate 'the_virtio_vsock' RCU pointer (Stefano Garzarella) [1861762] - [vhost] vsock/virtio: fix multiple packet delivery to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: fix packet delivery order to monitoring devices (Stefano Garzarella) [1861762] - [vhost] vsock: accept only packets with the right dst_cid (Stefano Garzarella) [1861762] - [vhost] vsock: refuse CID assigned to the guest->host transport (Stefano Garzarella) [1861762] - [vhost] vsock: switch to a mutex for vhost_vsock_hash (Stefano Garzarella) [1861762] - [net] vsock: fix timeout in vsock_accept() (Stefano Garzarella) [1861762] - [net] vsock: Simplify '__vsock_release()' (Stefano Garzarella) [1861762] - [netdrv] net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev (Alaa Hleihel) [1859477] - [netdrv] net/mlx5e: Modify uplink state on interface up/down (Alaa Hleihel) [1861720 1859477] - [netdrv] net/mlx5e: Fix missing cleanup of ethtool steering during rep rx cleanup (Alaa Hleihel) [1859477 1856660] - [netdrv] ixgbe: Add ethtool support to enable 2.5 and 5.0 Gbps support (Ken Cox) [1835962] - [x86] x86/purgatory: Add -fno-stack-protector (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Fail the build if purgatory.ro has missing symbols (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Do not use __builtin_memcpy and __builtin_memset (Lianbo Jiang) [1857528] - [x86] x86/boot: Provide KASAN compatible aliases for string routines (Lianbo Jiang) [1857528] - [x86] x86/purgatory: Disable various profiling and sanitizing options (Lianbo Jiang) [1857528] - [x86] x86/boot: Restrict header scope to make Clang happy (Lianbo Jiang) [1857528]- [x86] x86/entry/64: Update comments and sanity tests for create_gap (Jiri Olsa) [1850831] - [x86] x86/alternatives: add missing insn.h include (Jiri Olsa) [1850831] - [x86] x86/alternatives: Teach text_poke_bp() to emulate instructions (Jiri Olsa) [1850831] - [x86] x86/paravirt: Standardize 'insn_buff' variable names (Jiri Olsa) [1850831] - [x86] x86_64: Allow breakpoints to emulate call instructions (Jiri Olsa) [1850831] - [x86] x86_64: Add gap to int3 to allow for call emulation (Jiri Olsa) [1850831] - [x86] x86/alternatives: Sync bp_patching update for avoiding NULL pointer exception (Jiri Olsa) [1850831] - [nvme] nvme: add a Identify Namespace Identification Descriptor list quirk (Gopal Tiwari) [1862136] - [nvme] nvme: fix identify error status silent ignore (Gopal Tiwari) [1862136] - [nvme] nvme: fix possible hang when ns scanning fails during error recovery (Gopal Tiwari) [1862136] - [nvme] nvme: refactor nvme_identify_ns_descs error handling (Gopal Tiwari) [1862136] - [infiniband] IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE (Kamal Heib) [1850314] - [powerpc] powerpc/pseries: PCIE PHB reset (Steve Best) [1747345] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix runtime PM leak in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Invert conditionals in nouveau_display_acpi_ntfy() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Use pm_runtime_put_autosuspend() in hpd_work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Use pm_runtime_put_autosuspend() in suspend work (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Fix pm_runtime calls in nouveau_fbcon_output_poll_changed() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/fbcon: Correct pm_runtime calls in nouveau_fbcon_release() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Fix rpm leak in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/kms: Handle -EINPROGRESS in nouveau_connector_hotplug() (Lyude Paul) [1827812] - [drm] drm/nouveau/fbcon: fix module unload when fbcon init has failed for some reason (Lyude Paul) [1827812] - [drm] drm/nouveau/kms/tu102: wait for core update to complete when assigning windows (Lyude Paul) [1827812] - [drm] drm/nouveau/disp/gm200-: fix regression from HDA SOR selection changes (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: fix a crash when overclocking Vega M (Lyude Paul) [1827812] - [drm] drm/amdgpu: Fix NULL dereference in dpm sysfs handlers (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix preemption unit test (Lyude Paul) [1827812] - [drm] drm/amdgpu/gfx10: fix race condition for kiq (Lyude Paul) [1827812] - [drm] drm/amd/display: add dmcub check on RENOIR (Lyude Paul) [1827812] - [drm] drm/amd/display: Check DMCU Exists Before Loading (Lyude Paul) [1827812] - [drm] drm/nouveau/nouveau: fix page fault on device private memory (Lyude Paul) [1827812] - [drm] drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout (Lyude Paul) [1827812] - [drm] drm/i915/perf: Use GTT when saving/restoring engine GPR (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Fix two CFL MMIO handling caused by regression (Lyude Paul) [1827812] - [drm] drm/i915/gt: Only swap to a random sibling once upon creation (Lyude Paul) [1827812] - [drm] drm/i915/gt: Ignore irq enabling on the virtual engines (Lyude Paul) [1827812] - [drm] drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2 (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: create fake mst encoders ahead of time (v4) (Lyude Paul) [1827812] - [drm] drm/amd/display: handle failed allocation during stream construction (Lyude Paul) [1827812] - [drm] drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr() (Lyude Paul) [1827812] - [drm] drm/amdgpu/powerplay: Modify SMC message name for setting power profile mode (Lyude Paul) [1827812] - [drm] drm/i915: Also drop vm.ref along error paths for vma construction (Lyude Paul) [1827812] - [drm] drm/i915: Drop vm.ref for duplicate vma on construction (Lyude Paul) [1827812] - [drm] drm/amdgpu: asd function needs to be unloaded in suspend phase (Lyude Paul) [1827812] - [drm] drm/amdgpu: add TMR destory function for psp (Lyude Paul) [1827812] - [drm] drm/amdgpu: don't do soft recovery if gpu_recovery=0 (Lyude Paul) [1827812] - [drm] drm/i915: Skip stale object handle for debugfs per-file-stats (Lyude Paul) [1827812] - [drm] drm/i915/gt: Pin the rings before marking active (Lyude Paul) [1827812] - [drm] drm/radeon: fix double free (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 (Lyude Paul) [1827812] - [drm] drm: panel-orientation-quirks: Add quirk for Asus T101HA panel (Lyude Paul) [1827812] - [iommu] iommu/vt-d: Don't apply gfx quirks to untrusted devices (Lyude Paul) [1827812] - [drm] drm/tegra: hub: Do not enable orphaned window group (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak when adding move fence (Lyude Paul) [1827812] - [drm] drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved (Lyude Paul) [1827812] - [drm] drm/amdgpu/atomfirmware: fix vram_info fetching for renoir (Lyude Paul) [1827812] - [drm] drm/amdgpu: use u rather than d for sclk/mclk (Lyude Paul) [1827812] - [drm] drm/amd/display: Only revalidate bandwidth on medium and fast updates (Lyude Paul) [1827812] - [drm] drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace period (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix ineffective setting of max bpc property (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix incorrectly pruned modes with deep color (Lyude Paul) [1827812] - [drm] drm/amdgpu: add fw release for sdma v5_0 (Lyude Paul) [1827812] - [drm] drm/radeon: fix fb_div check in ni_init_smc_spll_table() (Lyude Paul) [1827812] - [drm] drm/amd: fix potential memleak in err branch (Lyude Paul) [1827812] - [drm] drm/amd/display: Enable output_bpc property on all outputs (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kfree() to free rgb_user in calculate_user_regamma_ramp() (Lyude Paul) [1827812] - [drm] Revert "drm/amd/display: disable dcn20 abm feature for bring up" (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move gen4 GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move vlv GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ilk GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move snb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move ivb GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Move hsw GT workarounds from init_clock_gating to workarounds (Lyude Paul) [1827812] - [drm] drm/i915/gt: Incrementally check for rewinding (Lyude Paul) [1827812] - [drm] drm/i915/tc: fix the reset of ln0 (Lyude Paul) [1827812] - [drm] drm/i915/icl+: Fix hotplug interrupt disabling after storm detection (Lyude Paul) [1827812] - [drm] drm/amd/display: Use kvfree() to free coeff in build_regamma() (Lyude Paul) [1827812] - [drm] drm/amdkfd: Use correct major in devcgroup check (Lyude Paul) [1827812] - [drm] drm/connector: notify userspace on hotplug after register complete (Lyude Paul) [1827812] - [drm] drm/i915: Whitelist context-local timestamp in the gen9 cmdparser (Lyude Paul) [1827812] - [drm] drm/i915/gem: Avoid iterating an empty list (Lyude Paul) [1827812] - [drm] drm/i915: Fix AUX power domain toggling across TypeC mode resets (Lyude Paul) [1827812] - [drm] drm/dp_mst: Increase ACT retry timeout to 3s (Lyude Paul) [1827812] - [drm] drm/ast: Don't check new mode if CRTC is being disabled (Lyude Paul) [1827812] - [drm] drm/amdgpu: Replace invalid device ID with a valid device ID (Lyude Paul) [1827812] - [drm] drm/amdgpu/display: use blanked rather than plane state for sync groups (Lyude Paul) [1827812] - [drm] drm/qxl: Use correct notify port address when creating cursor ring (Lyude Paul) [1827812] - [drm] drm/dp_mst: Reformat drm_dp_check_act_status() a bit (Lyude Paul) [1827812] - [drm] drm/ast: fix missing break in switch statement for format->cppcase 4 (Lyude Paul) [1827812] - [drm] drm/amd/display: Revalidate bandwidth before commiting DC updates (Lyude Paul) [1827812] - [drm] drm/nouveau: gr/gk20a: Use firmware version 0 (Lyude Paul) [1827812] - [drm] drm/amdgpu: Sync with VM root BO when switching VM to CPU update mode (Lyude Paul) [1827812] - [drm] drm/amd/powerpay: Disable gfxoff when setting manual mode on picasso and raven (Lyude Paul) [1827812] - [drm] drm/amd/display: Do not disable pipe split if mode is not supported (Lyude Paul) [1827812] - [drm] drm/amd/display: dmcu wait loop calculation is incorrect in RV (Lyude Paul) [1827812] - [drm] drm/amd/display: Correct updating logic of dcn21's pipe VM flags (Lyude Paul) [1827812] - [drm] drm/ast: Allocate initial CRTC state of the correct size (Lyude Paul) [1827812] - [drm] drm/hisilicon: Enforce 128-byte stride alignment to fix the hardware limitation (Lyude Paul) [1827812] - [drm] drm/dp: Lenovo X13 Yoga OLED panel brightness fix (Lyude Paul) [1827812] - [drm] drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1827812] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1827812] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1827812] - [drm] drm/amdgpu: Init data to avoid oops while reading pp_num_states (Lyude Paul) [1827812] - [drm] drm/amd/display: fix virtual signal dsc setup (Lyude Paul) [1827812] - [drm] drm/amd/display: Force watermark value propagation (Lyude Paul) [1827812] - [drm] drm: bridge: adv7511: Extend list of audio sample rates (Lyude Paul) [1827812] - [drm] drm/amdgpu: fix and cleanup amdgpu_gem_object_close v4 (Lyude Paul) [1827812] - [drm] drm/vkms: Hold gem object while still in-use (Lyude Paul) [1827812] - [drm] drm/amd/display: Not doing optimize bandwidth if flip pending (Lyude Paul) [1827812] - [drm] drm/amd/display: remove invalid dc_is_hw_initialized function (Lyude Paul) [1827812] - [drm] drm/amd/display: DP training to set properly SCRAMBLING_DISABLE (Lyude Paul) [1827812] - [drm] drm/edid: Add Oculus Rift S to non-desktop list (Lyude Paul) [1827812] - [drm] drm/amd/display: Fix potential integer wraparound resulting in a hang (Lyude Paul) [1827812] - [drm] drm/amd/display: Added locking for atomic update stream and update planes (Lyude Paul) [1827812] - [drm] drm/amd/display: Indicate dsc updates explicitly (Lyude Paul) [1827812] - [drm] drm/amd/display: Split program front end part that occur outside lock (Lyude Paul) [1827812] - [drm] drm/amd/display: drop cursor position check in atomic test (Lyude Paul) [1827812] - [drm] drm/amd/amdgpu: Update update_config() logic (Lyude Paul) [1827812] - [drm] drm/amdgpu: Use GEM obj reference for KFD BOs (Lyude Paul) [1827812] - [drm] drm/amd/powerplay: perform PG ungate prior to CG ungate (Lyude Paul) [1827812] - [drm] drm/amdgpu: drop unnecessary cancel_delayed_work_sync on PG ungate (Lyude Paul) [1827812] - [drm] drm/i915: Propagate error from completed fences (Lyude Paul) [1827812] - [drm] drm/i915/gvt: Init DPLL/DDI vreg for virtual display instead of inheritance (Lyude Paul) [1827812] - [drm] drm/amd/display: Prevent dpcd reads with passive dongles (Lyude Paul) [1827812] - [drm] drm/amd/display: fix counter in wait_for_no_pipes_pending (Lyude Paul) [1827812] - [gpu] vgaarb: Keep adding VGA device in queue (Lyude Paul) [1827812]- [net] openvswitch: fixes potential deadlock in dp cleanup code (Eelco Chaudron) [1845662] - [net] openvswitch: reorder masks array based on usage (Eelco Chaudron) [1845662] - [net] openvswitch: ovs_ct_exit to be done under ovs_lock (Eelco Chaudron) [1860853] - [net] ip6_gre: fix null-ptr-deref in ip6gre_init_net() (Hangbin Liu) [1860221] - [net] ip6_gre: fix use-after-free in ip6gre_tunnel_lookup() (Hangbin Liu) [1860221] - [net] mld: fix memory leak in ipv6_mc_destroy_dev() (Hangbin Liu) [1860221] - [net] ipv6: Fix suspicious RCU usage warning in ip6mr (Hangbin Liu) [1860221] - [net] ip6mr: Fix RCU list debugging warning (Hangbin Liu) [1860221] - [net] revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu" (Hangbin Liu) [1860221] - [netdrv] macsec: avoid to set wrong mtu (Sabrina Dubroca) [1860944] - [netdrv] team: fix hang in team_mode_get() (Hangbin Liu) [1860219] - [include] xfrm: Fix crash when the hold queue is used. (Xin Long) [1860672] - [net] xfrm: policy: fix IPv6-only espintcp compilation (Xin Long) [1860672] - [net] xfrm: esp6: fix encapsulation header offset computation (Xin Long) [1860672] - [net] xfrm: Fix double ESP trailer insertion in IPsec crypto offload. (Xin Long) [1860672] - [net] esp4: improve xfrm4_beet_gso_segment() to be more readable (Xin Long) [1860672] - [net] xfrm interface: don't take extra reference to netdev (Xin Long) [1860672] - [net] xfrm interface: fix oops when deleting a x-netns interface (Xin Long) [1860672] - [net] xfrm: remove the unnecessary .net_exit for xfrmi (Xin Long) [1860672] - [net] xfrm: Always set XFRM_TRANSFORMED in xfrm{4, 6}_output_finish (Xin Long) [1860672] - [include] xfrm: fix error in comment (Xin Long) [1860672] - [net] sctp: shrink stream outq when fails to do addstream reconf (Xin Long) [1853535] - [net] sctp: shrink stream outq only when new outcnt < old outcnt (Xin Long) [1853535] - [net] tipc: fix kernel WARNING in tipc_msg_append() (Xin Long) [1844377] - [net] tipc: fix NULL pointer dereference in streaming (Xin Long) [1844377] - [net] tipc: add test for Nagle algorithm effectiveness (Xin Long) [1844377] - [net] tipc: fix failed service subscription deletion (Xin Long) [1844377] - [net] tipc: fix memory leak in service subscripting (Xin Long) [1844377] - [net] tipc: fix large latency in smart Nagle streaming (Xin Long) [1844377] - [net] mptcp: add receive buffer auto-tuning (Florian Westphal) [1858276] - [tools] selftests: mptcp: add option to specify size of file to transfer (Florian Westphal) [1858276] - [net] mptcp: fallback in case of simultaneous connect (Florian Westphal) [1858276] - [net] mptcp: improve fallback to TCP (Florian Westphal) [1858276] - [net] mptcp: fix unblocking connect() (Florian Westphal) [1858276] - [net] mptcp: cache msk on MP_JOIN init_req (Florian Westphal) [1858276] - [net] mptcp: remove msk from the token container at destruction time. (Florian Westphal) [1858276] - [net] mptcp: fix races between shutdown and recvmsg (Florian Westphal) [1858276] - [net] mptcp: fix race between MP_JOIN and close (Florian Westphal) [1858276] - [net] mptcp: drop MPTCP_PM_MAX_ADDR (Florian Westphal) [1858276] - [net] mptcp: bugfix for RM_ADDR option parsing (Florian Westphal) [1858276] - [net] mptcp: drop MP_JOIN request sock on syn cookies (Florian Westphal) [1858276] - [net] mptcp: avoid NULL-ptr derefence on fallback (Florian Westphal) [1858276] - [net] mptcp: drop sndr_key in mptcp_syn_options (Florian Westphal) [1858276] - [net] mptcp: MPTCP_HMAC_TEST should depend on MPTCP (Florian Westphal) [1858276] - [net] mptcp: fix DSS map generation on fin retransmission (Florian Westphal) [1858276] - [net] inet_connection_sock: clear inet_num out of destroy helper (Florian Westphal) [1858276] - [net] mptcp: fix NULL ptr dereference in MP_JOIN error path (Florian Westphal) [1858276] - [net] mptcp: avoid blocking in tcp_sendpages (Florian Westphal) [1858276] - [net] mptcp: break and restart in case mptcp sndbuf is full (Florian Westphal) [1858276] - [net] l2tp: remove skb_dst_set() from l2tp_xmit_skb() (Xin Long) [1832799] - [net] rtnetlink: prevent underflows in do_setvfinfo() (Davide Caratti) [1854740] - [net] netfilter: nf_tables: reintroduce the NFT_SET_CONCAT flag (Phil Sutter) [1847553] - [net] netfilter: nf_tables: report EOPNOTSUPP on unsupported flags/object type (Phil Sutter) [1847553] - [net] openvswitch: take into account de-fragmentation/gso_size in execute_check_pkt_len (Lorenzo Bianconi) [1851888] - [tools] selftests: forwarding: mirror_lib: Use mausezahn (Davide Caratti) [1816443] - [x86] perf/x86/rapl: Add Ice Lake RAPL support (Michael Petlan) [1841266] - [arm64] arm64/mm: enable HugeTLB migration (Donghai Qiao) [1758717] - [scsi] scsi: core: Run queue in case of I/O resource contention failure (Ewan Milne) [1854958] - [message] scsi: mptscsih: Fix read sense data size (Tomas Henzl) [1850563] - [netdrv] net: qed: fix buffer overflow on ethtool -d (Manish Chopra) [1858915] - [x86] sched/cputime: Improve cputime_adjust() (Oleg Nesterov) [1859977] - [kernel] uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to fix GDB regression (Oleg Nesterov) [1855390] - [x86] x86/asm: Fix MWAITX C-state hint value (Vladis Dronov) [1767064] - [x86] x86/kexec: Fill in acpi_rsdp_addr from the first kernel (Kairui Song) [1684462] - [x86] x86/kexec: Don't setup EFI info if EFI runtime is not enabled (Kairui Song) [1684462] - [vfio] vfio/pci: fix racy on error and request eventfd ctx (Alex Williamson) [1858346] - [platform] platform/x86: ISST: Increase timeout (Prarit Bhargava) [1854682] - [mm] x86/mm: split vmalloc_sync_all() (Al Stone) [1851547] - [acpi] ACPI: watchdog: Fix gas->access_width usage (Al Stone) [1851547] - [acpi] ACPICA: Introduce ACPI_ACCESS_BYTE_WIDTH() macro (Al Stone) [1851547]- [virt] kvm: x86: take as_id into account when checking PGD (Vitaly Kuznetsov) [1615704] - [arm64] kvm: arm64: Stop clobbering x0 for HVC_SOFT_RESTART (Andrew Jones) [1855788] - [arm64] kvm: arm64: pmu: Fix per-CPU access in preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Fix kvm_reset_vcpu() return code being incorrect with SVE (Andrew Jones) [1855788] - [arm64] kvm: arm64: Annotate hyp NMI-related functions as __always_inline (Andrew Jones) [1855788] - [arm64] kvm: arm64: Remove host_cpu_context member from vcpu structure (Andrew Jones) [1855788] - [arm64] kvm: arm64: Move hyp_symbol_addr() to kvm_asm.h (Andrew Jones) [1855788] - [arm64] kvm: arm64: Handle PtrAuth traps early (Andrew Jones) [1855788] - [arm64] kvm: arm64: Save the host's PtrAuth keys in non-preemptible context (Andrew Jones) [1855788] - [arm64] kvm: arm64: Stop save/restoring ACTLR_EL1 (Andrew Jones) [1855788] - [kernel] firmware: smccc: Update link to latest SMCCC specification (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Handle function result as parameters (Andrew Jones) [1855788] - [kernel] arm/arm64: smccc-1.1: Make return values unsigned long (Andrew Jones) [1855788] - [video] Revert "hyperv_fb: Fix hibernation for the deferred IO feature" (Mohammed Gamal) [1858755] - [netdrv] net/mlx5e: CT: Map 128 bits labels to 32 bit map ID (Alaa Hleihel) [1859540] - [security] ima: move APPRAISE_BOOTPARAM dependency on ARCH_POLICY to runtime (Bruno Meneguele) [1847219] - [scsi] scsi: lpfc: NVMe remote port devloss_tmo from lldd (Dick Kennedy) [1859344] - [netdrv] net/mlx5e: Disable devlink port support for non-switchdev mode (Alaa Hleihel) [1858501 1852904 1849623] - [tools] perf powerpc: Don't ignore sym-handling.c file (Michael Petlan) [1858133] - [fs] ext4: reserve revoke credits in __ext4_new_inode (Lukas Czerner) [1856760] - [include] jbd2: make jbd2_handle_buffer_credits() handle reserved handles (Lukas Czerner) [1856760] - [fs] jbd2: avoid leaking transaction credits when unreserving handle (Lukas Czerner) [1856760] - [fs] jbd2: Fine tune estimate of necessary descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Provide trace event for handle restarts (Lukas Czerner) [1856760] - [fs] ext4: Reserve revoke credits for freed blocks (Lukas Czerner) [1856760] - [fs] jbd2: Make credit checking more strict (Lukas Czerner) [1856760] - [fs] jbd2: Rename h_buffer_credits to h_total_credits (Lukas Czerner) [1856760] - [fs] jbd2: add missing tracepoint for reserved handle (Lukas Czerner) [1856760] - [fs] jbd2: Reserve space for revoke descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Drop jbd2_space_needed() (Lukas Czerner) [1856760] - [fs] jbd2: remove repeated assignments in __jbd2_log_wait_for_space() (Lukas Czerner) [1856760] - [fs] jbd2: Account descriptor blocks into t_outstanding_credits (Lukas Czerner) [1856760] - [include] jbd2: update locking documentation for transaction_t (Lukas Czerner) [1856760] - [fs] jbd2: Factor out common parts of stopping and restarting a handle (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless wakeup from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Drop pointless check from jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] jbd2: Reorganize jbd2_journal_stop() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: Provide accessor function for handle credits (Lukas Czerner) [1856760] - [fs] ext4: Provide function to handle transaction restarts (Lukas Czerner) [1856760] - [fs] ext4: Avoid unnecessary revokes in ext4_alloc_branch() (Lukas Czerner) [1856760] - [fs] ext4: Use ext4_journal_extend() instead of jbd2_journal_extend() (Lukas Czerner) [1856760] - [fs] jbd2: Completely fill journal descriptor blocks (Lukas Czerner) [1856760] - [fs] jbd2: Fixup stale comment in commit code (Lukas Czerner) [1856760] - [include] jbd2: Fix possible overflow in jbd2_log_space_left() (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic by fix a race between jbd2 abort and ext4 error handlers (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' in ext4_jbd2.c (Lukas Czerner) [1856760] - [fs] ext4: remove set but not used variable 'es' (Lukas Czerner) [1856760] - [fs] ext4: save all error info in save_error_info() and drop ext4_set_errno() (Lukas Czerner) [1856760] - [fs] ext4: save the error code which triggered an ext4_error() in the superblock (Lukas Czerner) [1856760] - [fs] jbd2: clean __jbd2_journal_abort_hard() and __journal_abort_soft() (Lukas Czerner) [1856760] - [fs] ext4: stop overwrite the errcode in ext4_setup_super (Lukas Czerner) [1856760] - [fs] ext4: fix partial cluster initialization when splitting extent (Lukas Czerner) [1856760] - [fs] ext4: avoid ext4_error()'s caused by ENOMEM in the truncate path (Lukas Czerner) [1856760] - [fs] ext4: fix race between ext4_sync_parent() and rename() (Lukas Czerner) [1856760] - [fs] ext4: clean up ext4_ext_convert_to_initialized() error handling (Lukas Czerner) [1856760] - [fs] ext4: clean up GET_BLOCKS_PRE_IO error handling (Lukas Czerner) [1856760] - [fs] ext4: fix error pointer dereference (Lukas Czerner) [1856760] - [fs] ext4: Avoid freeing inodes on dirty list (Lukas Czerner) [1856760] - [fs] writeback: Export inode_io_list_del() (Lukas Czerner) [1856760] - [fs] ext4: fix buffer_head refcnt leak when ext4_iget() fails (Lukas Czerner) [1856760] - [fs] ext4: fix EXT_MAX_EXTENT/INDEX to check for zeroed eh_max (Lukas Czerner) [1856760] - [fs] ext4: fix a style issue in fs/ext4/acl.c (Lukas Czerner) [1856760] - [fs] ext4: fix return-value types in several function comments (Lukas Czerner) [1856760] - [fs] ext4: use non-movable memory for superblock readahead (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect group count in ext4_fill_super error message (Lukas Czerner) [1856760] - [fs] ext4: fix incorrect inodes per group in error message (Lukas Czerner) [1856760] - [fs] ext4: avoid ENOSPC when avoiding to reuse recently deleted inodes (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix a data race at inode->i_blocks (Lukas Czerner) [1856760] - [fs] ext4: clean up error return for convert_initialized_extent() (Lukas Czerner) [1856760] - [fs] ext4: force buffer up-to-date while marking it dirty (Lukas Czerner) [1856760] - [fs] ext4: fix race between writepages and enabling EXT4_EXTENTS_FL (Lukas Czerner) [1856760] - [fs] ext4: rename s_journal_flag_rwsem to s_writepages_rwsem (Lukas Czerner) [1856760] - [fs] ext4: potential crash on allocation error in ext4_alloc_flex_bg_array() (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_flex_groups online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between s_group_info online resizing and access (Lukas Czerner) [1856760] - [fs] ext4: fix potential race between online resizing and write operations (Lukas Czerner) [1856760] - [fs] ext4: add cond_resched() to __ext4_find_entry() (Lukas Czerner) [1856760] - [fs] ext4: fix a data race in EXT4_I(inode)->i_disksize (Lukas Czerner) [1856760] - [fs] ext4: fix checksum errors with indexed dirs (Lukas Czerner) [1856760] - [fs] ext4: simplify checking quota limits in ext4_statfs() (Lukas Czerner) [1856760] - [fs] ext4: choose hardlimit when softlimit is larger than hardlimit in ext4_statfs_project() (Lukas Czerner) [1856760] - [fs] ext4: don't assume that mmp_nodename/bdevname have NUL (Lukas Czerner) [1856760] - [fs] jbd2: make sure ESHUTDOWN to be recorded in the journal superblock (Lukas Czerner) [1856760] - [fs] ext4, jbd2: ensure panic when aborting with zero errno (Lukas Czerner) [1856760] - [fs] jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record (Lukas Czerner) [1856760] - [fs] jbd2_seq_info_next should increase position index (Lukas Czerner) [1856760] - [fs] ext4,jbd2: fix comment and code style (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status trace points (Lukas Czerner) [1856760] - [fs] ext4: fix extent_status fragmentation for plain files (Lukas Czerner) [1856760] - [fs] jbd2: clear JBD2_ABORT flag before journal_reset to update log tail info when load journal (Lukas Czerner) [1856760] - [fs] ext4: fix some nonstandard indentation in extents.c (Lukas Czerner) [1856760] - [fs] ext4: fix documentation for ext4_ext_try_to_merge() (Lukas Czerner) [1856760] - [fs] ext4: avoid fetching btime in ext4_getattr() unless requested (Lukas Czerner) [1856760] - [fs] ext4: fix ext4_dax_read/write inode locking sequence for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] ext4: optimize __ext4_check_dir_entry() (Lukas Czerner) [1856760] - [fs] ext4: check for directory entries too close to block end (Lukas Czerner) [1856760] - [fs] ext4: fix a bug in ext4_wait_for_tail_page_commit (Lukas Czerner) [1856760] - [fs] jbd2: Fix statistics for the number of logged blocks (Lukas Czerner) [1856760] - [fs] ext4: Fix ext4_should_journal_data() for EA inodes (Lukas Czerner) [1856760] - [fs] ext4: Fix credit estimate for final inode freeing (Lukas Czerner) [1856760] - [fs] ext4: Do not iput inode under running transaction (Lukas Czerner) [1856760] - [fs] ext4: Move marking of handle as sync to ext4_add_nondir() (Lukas Czerner) [1856760] - [fs] ext4: update direct I/O read lock pattern for IOCB_NOWAIT (Lukas Czerner) [1856760] - [fs] jbd2: flush_descriptor(): Do not decrease buffer head's ref count (Lukas Czerner) [1856760] - [fs] ext4: fix prefetchw of NULL page (Lukas Czerner) [1856760] - [fs] ext4: check for non-zero journal inum in ext4_calculate_overhead (Lukas Czerner) [1814574] - [fs] ext4: do not commit super on read-only bdev (Lukas Czerner) [1814574] - [kernel] isolcpus: Affine unbound kernel threads to housekeeping cpus (Marcelo Tosatti) [1791930] - [kernel] kthread: Switch to cpu_possible_mask (Marcelo Tosatti) [1791930] - [scsi] scsi: lpfc: Quieten some printks (Dick Kennedy) [1859338] - [scsi] Revert "scsi: lpfc: Fix scsi host template for SLI3 vports" (Dick Kennedy) [1851189] - [md] dm mpath: use double checked locking in fast path (Mike Snitzer) [1848651] - [md] dm mpath: rename current_pgpath to pgpath in multipath_prepare_ioctl (Mike Snitzer) [1848651] - [md] dm mpath: rework __map_bio() (Mike Snitzer) [1848651] - [md] dm mpath: factor out multipath_queue_bio (Mike Snitzer) [1848651] - [md] dm mpath: push locking down to must_push_back_rq() (Mike Snitzer) [1848651] - [md] dm mpath: take m->lock spinlock when testing QUEUE_IF_NO_PATH (Mike Snitzer) [1848651] - [md] dm mpath: changes from initial m->flags locking audit (Mike Snitzer) [1848651] - [md] dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue() (Mike Snitzer) [1848651] - [md] dm: do not use waitqueue for request-based DM (Mike Snitzer) [1848651] - [block] blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight() (Mike Snitzer) [1848651] - [powerpc] powerpc/fadump: fix race between pstore write and fadump crash trigger (Steve Best) [1820109] - [tools] libbpf: Fix probe code to return EPERM if encountered (=?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?=) [1856592] - [tools] tools selftests/bpf: Fix vmlinux test for kprobe and trampoline probes (Jiri Olsa) [1855778] - [net] net: Restrict receive packets queuing to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [pci] PCI: Restrict probe functions to housekeeping CPUs (Nitesh Narayan Lal) [1844520] - [lib] lib: Restrict cpumask_local_spread to houskeeping CPUs (Nitesh Narayan Lal) [1844520]- [tools] selftests/powerpc: Purge extra count_pmc() calls of ebb selftests (Desnes Augusto Nunes do Rosario) [1739769] - [netdrv] bonding: symmetric ICMP transmit (Jarod Wilson) [1760293] - [netdrv] bonding: balance ICMP echoes in layer3+4 mode (Jarod Wilson) [1760362] - [powerpc] powerpc/vas: Report proper error code for address translation failure (Steve Best) [1858160] - [infiniband] IB/hfi1: Fix module use count flaw due to leftover module put calls (Kamal Heib) [1858388] - [gpu] vgaarb: Add support for 64-bit frame buffer address (Karol Herbst) [1735217] - [netdrv] ionic: centralize queue reset code (Jonathan Toppins) [1857851] - [s390] s390/qeth: support net namespaces for L3 devices (Philipp Rudo) [1857311] - [s390] s390/qeth: implement smarter resizing of the RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: refactor buffer pool code (Philipp Rudo) [1857311] - [s390] s390/qeth: use page pointers to manage RX buffer pool (Philipp Rudo) [1857311] - [s390] s390/qeth: cancel RX reclaim work earlier (Philipp Rudo) [1857311] - [s390] s390/qeth: handle error when backing RX buffer (Philipp Rudo) [1857311] - [s390] s390/qeth: don't reset default_out_queue (Philipp Rudo) [1857311] - [s390] s390/qdio: fill SBALEs with absolute addresses (Philipp Rudo) [1857311] - [s390] s390/qeth: fix off-by-one in RX copybreak check (Philipp Rudo) [1857311] - [s390] s390/qeth: vnicc Fix EOPNOTSUPP precedence (Philipp Rudo) [1857311] - [s390] s390/qeth: consolidate QDIO queue setup (Philipp Rudo) [1857311] - [s390] s390/pci: Fix s390_mmio_read/write with MIO (Philipp Rudo) [1857315] - [s390] scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP action (Philipp Rudo) [1857312] - [net] net/smc: tolerate future SMCD versions (Philipp Rudo) [1854992] - [fs] ext4: use RCU API in debug_print_tree (Lukas Czerner) [1837777] - [fs] ext4: fix potential use after free after remounting with noblock_validity (Lukas Czerner) [1837777] - [fs] ext4: add cond_resched() to ext4_protect_reserved_inode (Lukas Czerner) [1837777] - [fs] fibmap: Reject negative block numbers (Carlos Maiolino) [1687121] - [vfio] vfio/pci: Fix SR-IOV VF handling with MMIO blocking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Invalidate mmaps and block MMIO access on disabled memory (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio-pci: Fault mmaps to enable vma tracking (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Support faulting PFNMAP vmas (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/type1: Fix VA->PA translation for PFNMAP VMAs in vaddr_get_pfn() (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio/pci: call irq_bypass_unregister_producer() before freeing irq (Alex Williamson) [1837310] {CVE-2020-12888} - [vfio] vfio_pci: Enable memory accesses before calling pci_map_rom (Alex Williamson) [1837310] {CVE-2020-12888} - [x86] mm: Fix mremap not considering huge pmd devmap (Rafael Aquini) [1843441] {CVE-2020-10757} - [x86] x86/speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect branches (Waiman Long) [1847396 1846029] {CVE-2020-10768} - [x86] x86/speculation: Prevent rogue cross-process SSBD shutdown (Waiman Long) [1847358 1846029] {CVE-2020-10766} - [x86] x86/speculation: Avoid force-disabling IBPB based on STIBP and enhanced IBRS (Waiman Long) [1847379 1846029] {CVE-2020-10767} - [x86] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline (Waiman Long) [1846029] - [arm64] Return ENODEV when the selected speculation misfeature is unsupported (Waiman Long) [1846029] - [x86] x86/speculation: Add support for STIBP always-on preferred mode (Waiman Long) [1846029] - [x86] x86/speculation: Change misspelled STIPB to STIBP (Waiman Long) [1846029]- [powerpc] powernv/iov: Ensure the pdn for VFs always contains a valid PE number (David Gibson) [1848235] - [powerpc] don't use ioremap_prot() nor __ioremap() unless really needed (Greg Kurz) [1855957] - [char] tpm: ibmvtpm: Wait for ready buffer before probing for TPM2 attributes (David Gibson) [1837283] - [powerpc] Check prom_init for disallowed sections (Michael Roth) [1856099] - [powerpc] prom_init: Move __prombss to it's own section and store it in .bss (Michael Roth) [1856099] - [powerpc] prom_init: Move const structures to __initconst (Michael Roth) [1856099] - [powerpc] prom_init: Make "default_colors" const (Michael Roth) [1856099] - [powerpc] prom_init: Move ibm_arch_vec to __prombss (Michael Roth) [1856099] - [fs] ext4: unregister sysfs path before destroying jbd2 journal (Lukas Czerner) [1814577] - [powerpc] powerpc/pseries/svm: Fix incorrect check for shared_lppaca_size (Steve Best) [1856889] - [netdrv] bnxt_en: fix NULL dereference in case SR-IOV configuration fails (Jonathan Toppins) [1856372] - [security] kexec: Allow kexec_file() with appropriate IMA policy when locked down (Bruno Meneguele) [1854097] - [x86] x86/apic/vector: Warn when vector space exhaustion breaks affinity (Neil Horman) [1714686] - [tools] perf report TUI: Fix segmentation fault in perf_evsel__hists_browse() (Michael Petlan) [1855737] - [fs] ext4: do not zeroout extents beyond i_disksize (Lukas Czerner) [1817816] - [pci] PCI/DPC: Print IRQ number used by port (Myron Stowe) [1855343] - [pci] PCI/AER: Use "aer" variable for capability offset (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant dev->aer_cap checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove redundant pci_is_pcie() checks (Myron Stowe) [1855343] - [pci] PCI/AER: Remove HEST/FIRMWARE_FIRST parsing for AER ownership (Myron Stowe) [1855343] - [tools] selftests: bpf: use __u32 for sock::sk_pacing_rate (Yauheni Kaliuta) [1856324] - [tools] libbpf: Handle GCC noreturn-turned-volatile quirk (Yauheni Kaliuta) [1854327] - [netdrv] net/mlx5e: CT: Fix releasing ft entries (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Remove unused function param (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Return err_ptr from internal functions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Expand tunnel register mappings (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Use mapping for zone restore register (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Re-use tuple modify headers for identical modify actions (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Export sharing of mod headers to a new file (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Add support for COPY steering action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Accept flow rules without match (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Restore ct state from lookup in zone instead of tupleid (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Don't offload tuple rewrites for established tuples (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Use netdev_info instead of pr_info (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Allow header rewrite of 5-tuple and ct clear action (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Save ct entries tuples in hashtables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: CT: Remove unused variables (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Avoid eswitch header inclusion in fs core layer (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: vxlan: Use RCU for vxlan table lookup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Remove unused mlx5e_xsk_first_unused_channel (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: CT: Fix memory leak in cleanup (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix port buffers cell size value (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix CPU mapping after function reload to avoid aRFS RX crash (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Fix VXLAN configuration restore after function reload (Alaa Hleihel) [1856057] - [netdrv] net/mlx5: Fix eeprom support for SFP module (Alaa Hleihel) [1856057] - [infiniband] IB/mlx5: Fix 50G per lane indication (Alaa Hleihel) [1856057] - [netdrv] net/mlx5e: Do not include rwlock.h directly (Alaa Hleihel) [1856057] - [fs] jbd2: fix data races at struct journal_head (Lukas Czerner) [1792518] - [fs] jbd2: remove pointless assertion in __journal_remove_journal_head (Lukas Czerner) [1792518] - [fs] jbd2: improve comments about freeing data buffers whose page mapping is NULL (Lukas Czerner) [1792518] - [fs] jbd2: do not clear the BH_Mapped flag when forgetting a metadata buffer (Lukas Czerner) [1792518] - [fs] jbd2: move the clearing of b_modified flag to the journal_unmap_buffer() (Lukas Czerner) [1792518] - [fs] ext4: unlock on error in ext4_expand_extra_isize() (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: fix support for inode sizes > 1024 bytes (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: validate the debug_want_extra_isize mount option at parse time (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: add more paranoia checking in ext4_expand_extra_isize handling (Lukas Czerner) [1817636] {CVE-2019-19767} - [fs] ext4: unsigned int compared against zero (Lukas Czerner) [1836666] {CVE-2019-19319} - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1836666] {CVE-2019-19319} - [powerpc] powerpc/kernel/sysfs: Add new config option PMU_SYSFS to enable PMU SPRs sysfs file creation (Michael Petlan) [1821284] - [powerpc] powerpc/kernel/sysfs: Refactor current sysfs.c (Michael Petlan) [1821284] - [kernel] irqdomain: Add the missing assignment of domain->fwnode for named fwnode (Mohammed Gamal) [1846666] - [security] lockdown: Allow unprivileged users to see lockdown status (Vladis Dronov) [1805299] - [edac] EDAC/ghes: Setup DIMM label from DMI and use it in error reports (Robert Richter) [1726153]- [x86] kvm: nvmx: fixes for preemption timer migration (Paolo Bonzini) [1854831] - [powerpc] pci/of: Parse unassigned resources (Greg Kurz) [1849921] - [video] revert "hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver" (Vitaly Kuznetsov) [1848840] - [video] revert "hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs" (Vitaly Kuznetsov) [1848840] - [pci] hv: Retry PCI bus D0 entry on invalid device state (Mohammed Gamal) [1846666] - [pci] hv: Fix the PCI HyperV probe failure path to release resource properly (Mohammed Gamal) [1846666] - [pci] hv: Allocate a named fwnode instead of an address-based one (Mohammed Gamal) [1846666] - [netdrv] tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes (Jonathan Toppins) [1850176] - [scsi] scsi: lpfc: Fix kdump hang on PPC (Dick Kennedy) [1722596] - [fs] nfsd: fix nfsdfs inode reference count leak ("J. Bruce Fields") [1846235] - [fs] nfsd4: fix nfsdfs reference count loop ("J. Bruce Fields") [1846235] - [kernel] sched: Defend cfs and rt bandwidth quota against overflow (Phil Auld) [1854180] - [kernel] sched/core: Make some functions static (Phil Auld) [1854180] - [kernel] sched/fair: Refill bandwidth before scaling (Phil Auld) [1854180] - [kernel] sched/fair: Eliminate bandwidth race between throttling and distribution (Phil Auld) [1854180] - [kernel] sched/fair: Fix race between runtime distribution and assignment (Phil Auld) [1854180] - [kernel] sched/deadline: Initialize ->dl_boosted (Phil Auld) [1854179] - [kernel] sched/core: Fix PI boosting between RT and DEADLINE tasks (Phil Auld) [1854179] - [netdrv] ibmveth: Fix max MTU limit (Diego Domingos) [1846435] - [kernel] sched/core: Fix ttwu() race (Phil Auld) [1854178] - [tools] perf flamegraph: Explicitly set utf-8 encoding (Michael Petlan) [1849027] - [kernel] sched/core: Check cpus_mask, not cpus_ptr in __set_cpus_allowed_ptr(), to fix mask corruption (Phil Auld) [1854174] - [kernel] workqueue: Remove the warning in wq_worker_sleeping() (Phil Auld) [1854174] - [kernel] sched/fair: Fix negative imbalance in imbalance calculation (Phil Auld) [1854174] - [kernel] sched/fair: Optimize select_idle_core() (Phil Auld) [1854174] - [x86] x86/PCI: Mark Intel C620 MROMs as having non-compliant BARs (Myron Stowe) [1854184] - [netdrv] r8169: fix firmware not resetting tp->ocp_base (Josef Oskera) [1851960] - [acpi] ACPI: configfs: Disallow loading ACPI tables when locked down (Lenny Szubowicz) [1852969] - [arm64] Revert "bpf: Restrict bpf_probe_read{, str}() only to archs where they work" (Jiri Olsa) [1847837] - [s390] s390/mm: Explicitly compare PAGE_DEFAULT_KEY against zero in storage_key_init_range (Jiri Olsa) [1847837] - [net] Bluetooth: Modify LE window and interval for suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect type for window and interval (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Use DEFER_SETUP to group ECRED connections (Gopal Tiwari) [1838924] - [net] Bluetooth: don't assume key size is 16 when the command fails (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add get_peer_pid callback (Gopal Tiwari) [1838924] - [net] Bluetooth: Restore running state if suspend fails (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix incorrect branch in connection complete (Gopal Tiwari) [1838924] - [net] Bluetooth: Do not cancel advertising when starting a scan (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: remove set but not used variable 'credits' (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Fix a condition in l2cap_sock_recvmsg() (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: handle l2cap config request during open state (Gopal Tiwari) [1838924] - [net] Bluetooth: clean up connection in hci_cs_disconnect (Gopal Tiwari) [1838924] - [net] Bluetooth: Pause discovery and advertising during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle LE devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle BR/EDR devices during suspend (Gopal Tiwari) [1838924] - [net] Bluetooth: Handle PM_SUSPEND_PREPARE and PM_POST_SUSPEND (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: add mgmt_cmd_status in add_advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: fix off by one in err_data_reporting cmd masks (Gopal Tiwari) [1838924] - [net] Bluetooth: Use bt_dev_err for RPA generation failure message (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add module option to enable ECRED mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add initial code for Enhanced Credit Based Mode (Gopal Tiwari) [1838924] - [net] Bluetooth: L2CAP: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of skb_pull to parse L2CAP signaling PDUs (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix calculation of SCO handle for packet processing (Gopal Tiwari) [1838924] - [net] Bluetooth: guard against controllers sending zero'd events (Gopal Tiwari) [1838924] - [net] Bluetooth: During le_conn_timeout disable EXT_ADV (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove adv set for directed advertising (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix Suspicious RCU usage warnings (Gopal Tiwari) [1838924] - [net] Bluetooth: Use list_for_each_entry_rcu() to traverse RCU list in RCU read-side CS (Gopal Tiwari) [1838924] - [net] Bluetooth: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [net] Bluetooth: fix passkey uninitialized when used (Gopal Tiwari) [1838924] - [net] Bluetooth: RFCOMM: Use MTU auto tune logic (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix crash when using new BT_PHY option (Gopal Tiwari) [1838924] - [net] Bluetooth: Disable Extended Adv if enabled (Gopal Tiwari) [1838924] - [net] Bluetooth: Add BT_PHY socket option (Gopal Tiwari) [1838924] - [net] Bluetooth: secure bluetooth stack from bluedump attack (Gopal Tiwari) [1838924] - [net] Bluetooth: remove __get_channel/dir and __dir (Gopal Tiwari) [1838924] - [net] Bluetooth: prefetch channel before killing sock (Gopal Tiwari) [1838924] - [net] Bluetooth: optimize barrier usage for Rmw atomics (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix refcount use-after-free issue (Gopal Tiwari) [1838924] - [net] Bluetooth: SMP: Fix SALT value in some comments (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix race condition in hci_release_sock() (Gopal Tiwari) [1838924] - [net] Bluetooth: Move {min, max}_key_size debugfs into hci_debugfs_create_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Add missing checks for HCI_ISODATA_PKT packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: fix appearance typo in mgmt.c (Gopal Tiwari) [1838924] - [net] Bluetooth: adding missing const decoration to mgmt_status_table (Gopal Tiwari) [1838924] - [net] Bluetooth: Increment management interface revision (Gopal Tiwari) [1838924] - [net] Bluetooth: monitor: Add support for ISO packets (Gopal Tiwari) [1838924] - [net] Bluetooth: Make use of __check_timeout on hci_sched_le (Gopal Tiwari) [1838924] - [net] Bluetooth: Implementation of MGMT_OP_SET_BLOCKED_KEYS (Gopal Tiwari) [1838924] - [net] Bluetooth: remove redundant assignment to variable icid (Gopal Tiwari) [1838924] - [net] Bluetooth: Auto tune if input MTU is set to 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Remove usage of BT_ERR_RATELIMITED macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Adding a bt_dev_warn_ratelimited macro (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix memory leak in hci_connect_le_scan (Gopal Tiwari) [1838924] - [net] Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR quirks (Gopal Tiwari) [1838924] - [net] Bluetooth: delete a stray unlock (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix advertising duplicated flags (Gopal Tiwari) [1838924] - [net] net: use skb_queue_empty_lockless() in poll() handlers (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix not using LE_ADV_NONCONN_IND for instance 0 (Gopal Tiwari) [1838924] - [net] Bluetooth: Fix using advertising instance duration as timeout (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move hci_sock handlers into driver (Gopal Tiwari) [1838924] - [fs] compat_ioctl: move rfcomm handlers into driver (Gopal Tiwari) [1838924] - [net] Bluetooth: hci_core: fix init for HCI_USER_CHANNEL (Gopal Tiwari) [1838924] - [net] Bluetooth: Workaround directed advertising bug in Broadcom controllers (Gopal Tiwari) [1838924] - [net] Bluetooth: missed cpu_to_le16 conversion in hci_init4_req (Gopal Tiwari) [1838924] - [hid] Bluetooth: hidp: Fix assumptions on the return value of hidp_send_message (Gopal Tiwari) [1838924] - [net] Bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for utilizing Fast Advertising Interval (Gopal Tiwari) [1838924] - [net] Bluetooth: 6lowpan: Make variable header_ops constant (Gopal Tiwari) [1838924] - [net] Revert "Bluetooth: validate BLE connection interval updates" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print Intel fw build version in power-on boot (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bfusb: Switch from BT_ERR to bt_dev_err where possible (Gopal Tiwari) [1838924] - [net] Bluetooth: Enable erroneous data reporting if WBS is supported (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace devm_gpiod_get() with devm_gpiod_get_optional() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make bt_en and susclk not mandatory for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Fix the NVM baudrate tag offcet for wcn3991 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Not send vendor pre-shutdown command for QCA Rome (Gopal Tiwari) [1838924] - [net] Bluetooth: Support querying for WBS support through MGMT (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add flag to define wideband speech capability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Remove a redundant assignment in 'h4_flush()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Fix a typo in a comment (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Move variable into local scope (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Bug fixes while collecting controller memory dump (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: btrtl: Add support for RTL8822C (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix a typo in Kconfig (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_uart: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_intel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btintel: Replace zero-length array with flexible-array member (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 13d3:3548 Realtek 8822CE device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Optimized code while enabling clocks for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable clocks required for BT SOC (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Use kvmalloc for FW allocations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Enable power off/on support during hci down/up for QCA Rome (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Retry btsoc initialize when it fails (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add QCA Rome power off support to the qca_power_shutdown() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: enable IRQ capability from devicetree (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_vhci: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h4: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btsdio: Check for valid packet type (Gopal Tiwari) [1838924] - [net] Bluetooth: Add definitions (Gopal Tiwari) [1838924] - [net] Bluetooth: Add support for (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_h5: Add support for ISO packets (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add qca_power_on() API to support both wcn399x and Rome power up (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm : Fix warning about missing blank lines after declarations (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove set but not used variable 'opcode' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use vfree() instead of kfree() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Add support for 04ca:3021 QCA_ROME device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Collect controller memory dump during SSR (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Drive RTS only for BCM43438 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Replace of_device_get_match_data with device_get_match_data (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add missing static inline in header (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Disable runtime suspend on Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix memory leak on fw (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix non-atomic allocation in completion handler (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Support pcm params in dts (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Support pcm configuration (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Disallow set_baudrate for BCM4354 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Edit the logical value for Realtek Bluetooth reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4335A0 UART bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btbcm: Add entry for BCM4334B0 UART Bluetooth (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: fix PM leak in error case of setup (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btqca: Rename ROME specific variables to generic variables (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btmtksdio: add MODULE_DEVICE_TABLE() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: Fix invalid-free in bcsp_close() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: add PM support (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Add compatible string for BCM43540 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: remove unneeded semicolon (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix RTS handling during startup (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_qca: Add delay for wcn3990 stability" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Remove return statement in btintel_reset_to_bootloader (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Split qca_power_setup() (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Use regulator bulk enable/disable (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Don't vote for specific voltage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Update regulator_set_load() usage (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Add delay for wcn3990 stability (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Trigger Intel FW download error recovery (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btwilink: drop superseded driver (Gopal Tiwari) [1838924] - [bluetooth] Revert "Bluetooth: hci_ll: set operational frequency earlier" (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue for the incorrect error return code (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use IS_ENABLED instead of #ifdef (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: print FW version after FW download (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: avoid unused function warning (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_nokia: Save a few cycles in 'nokia_enqueue()' (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Use cmd_timeout to reset Realtek device (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Fix an issue that failing to download the FW which size is over 32K bytes (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove trailing newline from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for QCA UART Radio (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Remove redundant prefix from calls to rtl_dev macros (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: bcm: Add support for loading firmware for BCM4345C5 (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Add firmware version print (Gopal Tiwari) [1838924] - [bluetooth] bluetooth: hci_bcm: Give more time to come out of reset (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: wait for Pre shutdown complete event before sending the Power off pulse (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_bcm: Fix -Wunused-const-variable warnings (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btusb: Fix suspend issue for Realtek devices (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Remove redundant initializations to zero (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: Make structure qca_proto constant (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: bpa10x: change return value (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: hci_qca: disable irqs when spinlock is acquired (Gopal Tiwari) [1838924] - [bluetooth] Bluetooth: btrtl: Additional Realtek 8822CE Bluetooth devices (Gopal Tiwari) [1838924]- [powerpc] powerpc/papr_scm: Implement support for PAPR_PDSM_HEALTH (Gustavo Duarte) [1782178] - [powerpc] ndctl/papr_scm, uapi: Add support for PAPR nvdimm specific methods (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Improve error logging and handling papr_scm_ndctl() (Gustavo Duarte) [1782178] - [powerpc] powerpc/papr_scm: Fetch nvdimm health information from PHYP (Gustavo Duarte) [1782178] - [lib] seq_buf: Export seq_buf_printf (Gustavo Duarte) [1782178] - [firmware] efi: Restrict efivar_ssdt_load when the kernel is locked down (Lenny Szubowicz) [1852949] - [netdrv] vmxnet3: allow rx flow hash ops only when rss is enabled (Cathy Avery) [1845417] - [netdrv] net: vmxnet3: fix possible buffer overflow caused by bad DMA value in vmxnet3_get_rss() (Cathy Avery) [1845417] - [netdrv] vmxnet3: use correct hdr reference when packet is encapsulated (Cathy Avery) [1845417] - [netdrv] vmxnet3: update to version 4 (Cathy Avery) [1845417] - [netdrv] vmxnet3: add geneve and vxlan tunnel offload support (Cathy Avery) [1845417] - [netdrv] vmxnet3: add support to get/set rx flow hash (Cathy Avery) [1845417] - [netdrv] vmxnet3: prepare for version 4 changes (Cathy Avery) [1845417] - [netdrv] vmxnet3: let core reject the unsupported coalescing parameters (Cathy Avery) [1845417] - [netdrv] vmxnet3: use new helper tcp_v6_gso_csum_prep (Cathy Avery) [1845417] - [netdrv] vmxnet3: Remove always false conditional statement (Cathy Avery) [1845417] - [kernel] kexec: do not verify the signature without the lockdown or mandatory signature (Lianbo Jiang) [1836148] - [fs] block: Fix use-after-free in blkdev_get() (Ming Lei) [1847779] - [kernel] kernel: rh_features: fix reading empty feature list from /proc (Jiri Benc) [1843064] {CVE-2020-10774} - [netdrv] ice: cleanup unsigned loops (Jonathan Toppins) [1781403] - [netdrv] ice: fix usage of incorrect variable (Jonathan Toppins) [1781403] - [netdrv] ice: Fix bad register reads (Jonathan Toppins) [1781403] - [netdrv] ice: check for compatibility between DDP package and firmware (Jonathan Toppins) [1781403] - [netdrv] ice: Check if unicast MAC exists before setting VF MAC (Jonathan Toppins) [1781403] - [netdrv] ice: print Rx MDD auto reset message before VF reset (Jonathan Toppins) [1781403] - [netdrv] ice: Call ice_aq_set_mac_cfg (Jonathan Toppins) [1781403] - [netdrv] ice: Implement aRFS (Jonathan Toppins) [1781403] - [netdrv] ice: Restore filters following reset (Jonathan Toppins) [1781403] - [netdrv] ice: Enable flex-bytes support (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv6 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support IPv4 Flow Director filters (Jonathan Toppins) [1781403] - [netdrv] ice: Support displaying ntuple rules (Jonathan Toppins) [1781403] - [netdrv] ice: Initialize Flow Director resources (Jonathan Toppins) [1781403] - [netdrv] ice: Rename build_ctob to ice_build_ctob (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary backslash (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary check (Jonathan Toppins) [1781405] - [netdrv] ice: remove unnecessary expression that is always true (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for removing/adding mac filters (Jonathan Toppins) [1781405] - [netdrv] ice: refactor filter functions (Jonathan Toppins) [1781405] - [netdrv] ice: Fix resource leak on early exit from function (Jonathan Toppins) [1781405] - [netdrv] ice: cleanup vf_id signedness (Jonathan Toppins) [1781405] - [netdrv] ice: Fix casting issues (Jonathan Toppins) [1781405] - [netdrv] ice: Provide more meaningful error message (Jonathan Toppins) [1781405] - [netdrv] ice: Fix probe/open race condition (Jonathan Toppins) [1781405] - [netdrv] ice: only drop link once when setting pauseparams (Jonathan Toppins) [1781405] - [netdrv] ice: Fix check for contiguous TCs (Jonathan Toppins) [1781405] - [netdrv] ice: Don't reset and rebuild for Tx timeout on PFC enabled queue (Jonathan Toppins) [1781405] - [netdrv] ice: Add VF promiscuous support (Jonathan Toppins) [1781405] - [netdrv] ice: Add support for tunnel offloads (Jonathan Toppins) [1781405] - [netdrv] ice: report netlist version in .info_get (Jonathan Toppins) [1781405] - [netdrv] ice: add additional E810 device id (Jonathan Toppins) [1725447] - [x86] x86/split_lock: Update to use X86_MATCH_INTEL_FAM6_MODEL() (Prarit Bhargava) [1482757] - [x86] x86/intel_split_lock: Disable split lock detector by default in RHEL8 (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Provide handle_guest_split_lock() (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Add Tremont family CPU models (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Bits in IA32_CORE_CAPABILITIES are not architectural (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Prarit Bhargava) [1482757] - [tools] tools arch x86: Sync the msr-index.h copy with the kernel sources (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Avoid runtime reads of the TEST_CTRL MSR (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Rework the initialization flow of split lock detection (Prarit Bhargava) [1482757] - [x86] x86/split_lock: Enable split lock detection by kernel (Prarit Bhargava) [1482757] - [netdrv] drivers/net/b44: Change to non-atomic bit operations on pwol_mask (Prarit Bhargava) [1482757] - [x86] x86/cpu: Align cpu_caps_cleared and cpu_caps_set to unsigned long (Prarit Bhargava) [1482757] - [x86] x86/boot: Make the GDT 8-byte aligned (Prarit Bhargava) [1482757] - [wireless] wlcore: simplify/fix/optimize reg_ch_conf_pending operations (Prarit Bhargava) [1482757] - [uapi] prctl: PR_{G, S}ET_IO_FLUSHER to support controlling memory reclaim (Waiman Long) [1757240]- [kernel] kernel: fork: avoid utilizing a non-initialized task_struct_rh pointer in the error exit path (Rafael Aquini) [1838475 1820041] - [infiniband] RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah() (Kamal Heib) [1846063] - [infiniband] RDMA/ipoib: Return void from ipoib_ib_dev_stop() (Kamal Heib) [1846063] - [powerpc] mm/pkeys: Make pkey access check work on execute_only_key (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Fix MADV_DONTNEED and parallel page fault race (Greg Kurz) [1748772] - [mm] change pmdp_huge_get_and_clear_full take vm_area_struct as arg (Greg Kurz) [1748772] - [powerpc] mm/book3s64: Avoid sending IPI on clearing PMD (Greg Kurz) [1748772] - [powerpc] 64s: Fix THP PMD collapse serialisation (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use pte_present instead of opencoding _PAGE_PRESENT check (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in kvmppc_get_hpa (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in kvmppc_book3s_instantiate_page (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Avoid using rmap to protect parallel page table update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: use find_kvm_host_pte in pute_tce functions (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in h_enter (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use find_kvm_host_pte in page fault handler (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper for host page table walk (Greg Kurz) [1748772] - [powerpc] kvm: ppc: Fix nested guest RC bits update (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Use kvm helpers to walk shadow or secondary table (Greg Kurz) [1748772] - [powerpc] kvm/nested: Add helper to walk nested shadow linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: Add helper to walk partition scoped linux page table (Greg Kurz) [1748772] - [powerpc] kvm/book3s: switch from raw_spin_*lock to arch_spin_lock (Greg Kurz) [1748772] - [powerpc] perf/callchain: Use __get_user_pages_fast in read_user_stack_slow (Greg Kurz) [1748772] - [powerpc] mce: Don't reload pte val in addr_to_pfn (Greg Kurz) [1748772] - [powerpc] book3s64/hash: Use the pte_t address from the caller (Greg Kurz) [1748772] - [powerpc] hash64: Restrict page table lookup using init_mm with __flush_hash_table_range (Greg Kurz) [1748772] - [powerpc] mm/hash64: use _PAGE_PTE when checking for pte_present (Greg Kurz) [1748772] - [powerpc] pkeys: Check vma before returning key fault error to the user (Greg Kurz) [1748772] - [powerpc] pkeys: Avoid using lockless page table walk (Greg Kurz) [1748772] - [powerpc] mmu: add is_strict_kernel_rwx() helper (Greg Kurz) [1748772] - [powerpc] mm: move update_mmu_cache() into book3s hash utils (Greg Kurz) [1748772] - [powerpc] mm: Move book3s32 specifics in subdirectory mm/book3s64 (Greg Kurz) [1748772] - [powerpc] mm: move FSL_BOOK3 version of update_mmu_cache() (Greg Kurz) [1748772] - [powerpc] mm: define empty update_mmu_cache() as static inline (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU to CONFIG_PPC_BOOK3S (Greg Kurz) [1748772] - [powerpc] mm: don't use _PAGE_EXEC for calling hash_preload() (Greg Kurz) [1748772] - [powerpc] change CONFIG_PPC_STD_MMU_32 to CONFIG_PPC_BOOK3S_32 (Greg Kurz) [1748772] - [powerpc] handover page flags with a pgprot_t parameter (Greg Kurz) [1748772] - [powerpc] mm: properly set PAGE_KERNEL flags in ioremap() (Greg Kurz) [1748772] - [powerpc] 32: Add ioremap_wt() and ioremap_coherent() (Greg Kurz) [1748772] - [netdrv] crypto/chcr: error seen if CONFIG_CHELSIO_TLS_DEVICE isn't set (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: avoid -Wreturn-local-addr warning (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: fix EOTID leak when disabling TC-MQPRIO offload (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: Enable ktls settings at run time (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: cleanup error code in setup_sge_queues_uld() (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4: add adapter hotplug support for ULDs (Christoph von Recklinghausen) [1797945] - [crypto] Crypto: chelsio - Fixes a deadlock between rtnl_lock and uld_mutex (Christoph von Recklinghausen) [1797945] - [netdrv] cxgb4/chcr: nic-tls stats in ethtool (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: fix incorrect ipv6 packet length (Christoph von Recklinghausen) [1797945] - [crypto] crypto/chcr: Add missing include file (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Add ipv6 support and statistics (Christoph von Recklinghausen) [1797945] - [crypto] chcr: Handle first or middle part of record (Christoph von Recklinghausen) [1797945] - [crypto] chcr: handle partial end part of a record (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: complete record tx handling (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr: Save tx keys and handle HW response (Christoph von Recklinghausen) [1797945] - [crypto] cxgb4/chcr : Register to tls add and del callback (Christoph von Recklinghausen) [1797945] - [hwmon] hwmon: (acpi_power_meter) Change log level for 'unsafe software power cap' (Al Stone) [1749529] - [netdrv] net/mlx4_core: fix a memory leak bug (Alaa Hleihel) [1846792] - [netdrv] net/mlx4_core: Add missing iounmap() in error path (Alaa Hleihel) [1846792] - [netdrv] net/mlx5: E-switch, Fix error unwinding flow for steering init failure (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Enable chains only if regs loopback is enabled (Alaa Hleihel) [1848830 1846791] - [netdrv] net/mlx5e: en_tc: Rely just on register loopback for tunnel restoration (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: E-Switch, Skip restore modify header between prios of same chain (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: CT: Fix ipv6 nat header rewrite actions (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Don't fail driver on failure to create debugfs (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Add missing mutex destroy (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix devlink objects and devlink device unregister sequence (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Wait for inactive autogroups (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Disable reload while removing the device (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix ethtool hfunc configuration change (Alaa Hleihel) [1846791] - [netdrv] net/mlx5e: Fix repeated XSK usage on one channel (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Split RX and TX lock for parallel insertion (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Add a spinlock to protect the send ring (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: DR, Fix freeing in dr_create_rc_qp() (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Fix fatal error handling during device load (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: drain health workqueue in case of driver load error (Alaa Hleihel) [1846791 1841363] - [netdrv] net/mlx5: Drain wq first during PCI device removal (Alaa Hleihel) [1846791] - [netdrv] net/mlx5: Have single error unwinding path (Alaa Hleihel) [1846791] - [netdrv] mlx5: reject unsupported coalescing params (Alaa Hleihel) [1846791] - [crypto] Crypto: chelsio - Fixes a hang issue during driver registration (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Use multiple txq/rxq per tfm to process the requests (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Recalculate iv only if it is needed (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - un-register crypto algorithms (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Endianess bug in create_authenc_wr (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Print the chcr driver information while module load (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the kernel panic which occurs during a libkcapi test (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - This fixes the libkcapi's cbc(aes) aio fail test cases (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - Resetting crypto counters during the driver unregister (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - fix writing tfm flags to wrong place (Vishal Kulkarni) [1845004] - [crypto] crypto: chelsio - calculating tx_channel_id as per the max number of channels (Vishal Kulkarni) [1845004] - [firmware] tpm: check event log version before reading final events (Jerry Snitselaar) [1839284] - [char] tpm: Fix TIS locality timeout problems (Jerry Snitselaar) [1840789]- [vfio] vfio/pci: Clear error and request eventfd ctx after releasing (Alex Williamson) [1847731] - [fs] pNFS/flexfiles: Fix list corruption if the mirror count changes (Benjamin Coddington) [1852500] - [netdrv] ionic: update the queue count on open (Michal Schmidt) [1846879] - [tools] turbostat: Use sched_getcpu() instead of hardcoded cpu 0 (Prarit Bhargava) [1852123] - [infiniband] RDMA/hfi1: Fix null-pointer dereference when calling mmu_notifier_register (Kamal Heib) [1850345] - [platform] Revert "intel-speed-select: Firmware workarounds for Icelake" (Prarit Bhargava) [1820597] - [powerpc] powerpc/crashkernel: Take "mem=" option into account (Pingfan Liu) [1747969] - [tools] perf stat: Increase perf metric output resolution (Michael Petlan) [1844632] - [tools] perf vendor events power9: Add missing metrics to POWER9 'cpi_breakdown' (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power8 metrics (Michael Petlan) [1844632] - [tools] perf metrics: Fix parse errors in power9 metrics (Michael Petlan) [1844632] - [s390] s390/kaslr: add support for R_390_JMP_SLOT relocation type (Claudio Imbrenda) [1850908] - [s390] s390: prevent leaking kernel address in BEAR (Claudio Imbrenda) [1850907] - [s390] s390/cpumf: Adjust registration of s390 PMU device drivers (Claudio Imbrenda) [1850906] - [firmware] efi/x86: Add TPM related EFI tables to unencrypted mapping checks (Lenny Szubowicz) [1849922] - [security] selinux: allow reading labels before policy is loaded (Ondrej Mosnacek) [1839819] - [idle] intel_idle: Introduce 'use_acpi' module parameter (Prarit Bhargava) [1849666] - [net] xsk: Add overflow check for u64 division, stored into u32 (Jiri Benc) [1838075] - [tools] selftests: netdevsim: Always initialize 'RET' variable (Jiri Benc) [1838075] - [netdrv] netdevsim: Ensure policer drop counter always increases (Jiri Benc) [1838075] - [tools] selftests/bpf: Check for correct program attach/detach in xdp_attach test (Jiri Benc) [1838075] - [tools] libbpf: Fix type of old_fd in bpf_xdp_set_link_opts (Jiri Benc) [1838075] - [net] xsk: Add missing check on user supplied headroom size (Jiri Benc) [1838075] - [net] xdp: Reset prog in dev_change_xdp_fd when fd is negative (Jiri Benc) [1838075] - [netdrv] veth: rely on peer veth_rq for ndo_xdp_xmit accounting (Jiri Benc) [1838075] - [netdrv] veth: rely on veth_rq in veth_xdp_flush_bq signature (Jiri Benc) [1838075] - [net] page pool: allow to pass zero flags to page_pool_init() (Jiri Benc) [1838075] - [tools] selftests/bpf: Add tests for attaching XDP programs (Jiri Benc) [1838075] - [tools] libbpf: Add function to set link XDP fd while specifying old program (Jiri Benc) [1838075] - [tools] Add EXPECTED_FD-related definitions in if_link.h (Jiri Benc) [1838075] - [net] xdp: Support specifying expected existing program when attaching XDP (Jiri Benc) [1838075] - [netdrv] veth: remove atomic64_add from veth_xdp_xmit hotpath (Jiri Benc) [1838075] - [netdrv] veth: introduce more xdp counters (Jiri Benc) [1838075] - [netdrv] veth: distinguish between rx_drops and xdp_drops (Jiri Benc) [1838075] - [netdrv] veth: introduce more specialized counters in veth_stats (Jiri Benc) [1838075] - [netdrv] veth: move xdp stats in a dedicated structure (Jiri Benc) [1838075] - [net] xdp: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [net] bpf: inet_diag: Dump bpf_sk_storages in inet_diag_dump() (Jiri Benc) [1838075] - [net] bpf: INET_DIAG support in bpf_sk_storage (Jiri Benc) [1838075] - [net] inet_diag: Move the INET_DIAG_REQ_BYTECODE nlattr to cb->data (Jiri Benc) [1838075] - [net] inet_diag: Refactor inet_sk_diag_fill(), dump(), and dump_one() (Jiri Benc) [1838075] - [net] inet_diag: return classid for all socket types (Jiri Benc) [1838075] - [net] inet_diag: fix reporting cgroup classid and fallback to priority (Jiri Benc) [1838075] - [net] Remove unneeded export of a couple of xdp generic functions (Jiri Benc) [1838075] - [net] page_pool: API cleanup and comments (Jiri Benc) [1838075] - [net] bpf, sockmap: Replace zero-length array with flexible-array member (Jiri Benc) [1838075] - [netdrv] geneve: allow changing DF behavior after creation (Sabrina Dubroca) [1847861] - [net] netfilter: nf_tables: add missing ->release_ops() in error path of newrule() (Andrea Claudi) [1846236] - [net] netfilter: nft_compat: use .release_ops and remove list of extension (Andrea Claudi) [1846236] - [net] ipv6: fix IPV6_ADDRFORM operation logic (Hangbin Liu) [1842025] - [net] ipv6: fix restrict IPV6_ADDRFORM operation (Hangbin Liu) [1842025] - [net] netfilter: nat: fix error handling upon registering inet hook (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload for redir (Florian Westphal) [1579145] - [net] netfilter: nf_tables: fix module autoload with inet family (Florian Westphal) [1579145] - [net] netfilter: nft_chain_nat: inet family is missing module ownership (Florian Westphal) [1579145] - [net] netfilter: nf_tables: Support auto-loading for inet nat (Florian Westphal) [1579145] - [net] netfilter: nft_redir: fix module autoload with ip4 (Florian Westphal) [1579145] - [net] netfilter: nat: fix udp checksum corruption (Florian Westphal) [1579145] - [tools] kselftests: extend nft_nat with inet family based nat hooks (Florian Westphal) [1579145] - [net] netfilter: nft_redir: add inet support (Florian Westphal) [1579145] - [net] netfilter: nft_masq: add inet support (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge route type into core (Florian Westphal) [1579145] - [net] netfilter: nat: add inet family nat support (Florian Westphal) [1579145] - [net] netfilter: nat: don't register device notifier twice (Florian Westphal) [1579145] - [net] netfilter: nf_tables: merge ipv4 and ipv6 nat chain types (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_masq protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nf_tables: nat: merge nft_redir protocol specific modules (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l3proto.h and nf_nat_core.h (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_recalc hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove csum_update hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove l3 manip_pkt hook (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto.h (Florian Westphal) [1579145] - [net] netfilter: nat: merge nf_nat_ipv4, 6 into nat core (Florian Westphal) [1579145] - [net] netfilter: nat: fix spurious connection timeouts (Florian Westphal) [1579145] - [net] netfilter: nat: move nlattr parse and xfrm session decode to core (Florian Westphal) [1579145] - [net] netfilter: nat: merge ipv4 and ipv6 masquerade functionality (Florian Westphal) [1579145] - [net] netfilter: kconfig: nat related expression depend on nftables core (Florian Westphal) [1579145] - [net] netfilter: conntrack: fix bogus port values for other l4 protocols (Florian Westphal) [1579145] - [net] netfilter: conntrack: avoid unneeded nf_conntrack_l4proto lookups (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pernet l4 proto register interface (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove remaining l4proto indirect packet calls (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove module owner field (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove invert_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: remove pkt_to_tuple callback (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: set stream timeout to 2 minutes (Florian Westphal) [1579145] - [net] netfilter: conntrack: udp: only extend timeout to stream mode after 2s (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_used_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: fix ICMP header corruption on ICMP errors (Florian Westphal) [1579145] - [net] netfilter: nat: fix icmp id randomization (Florian Westphal) [1579145] - [net] netfilter: nat: remove nf_nat_l4proto struct (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->manip_pkt (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->nlattr_to_range (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->in_range (Florian Westphal) [1579145] - [net] netfilter: nat: fold in_range indirection into caller (Florian Westphal) [1579145] - [net] netfilter: nat: remove l4proto->unique_tuple (Florian Westphal) [1579145] - [net] netfilter: nat: un-export nf_nat_l4proto_unique_tuple (Florian Westphal) [1579145] - [net] netfilter: remove NF_NAT_RANGE_PROTO_RANDOM support (Florian Westphal) [1579145] - [x86] kvm: x86/pmu: Tweak kvm_pmu_get_msr to pass 'struct msr_data' in (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: do not pass poisoned hva to __kvm_set_memory_region (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix sync_with_host() in smm_test (Vitaly Kuznetsov) [1849987] - [x86] kvm: async_pf: Inject 'page ready' event only if 'page not present' was previously injected (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: async_pf: Fix #DF due to inject "Page not Present" and "Page Ready" exceptions simultaneously" (Vitaly Kuznetsov) [1849987] - [virt] kvm: async_pf: Cleanup kvm_setup_async_pf() (Vitaly Kuznetsov) [1849987] - [x86] kvm: i8254: remove redundant assignment to pointer s (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: respect singlestep when emulating instruction (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Don't probe KVM_CAP_HYPERV_ENLIGHTENED_VMCS when nested VMX is unsupported (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: do not substitute SVM/VMX check with KVM_CAP_NESTED_STATE check (Vitaly Kuznetsov) [1849987] - [x86] kvm: nvmx: Consult only the "basic" exit reason when routing nested exit (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Unexport x86_fpu_cache and make it static (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Ignore KVM 5-level paging support for VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: Fix APIC page invalidation race (Vitaly Kuznetsov) [1849987] - [x86] kvm: svm: fix calls to is_intercept (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: fix vmx_preemption_timer_test build with GCC10 (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Add x86_64/debug_regs to .gitignore (Vitaly Kuznetsov) [1849987] - [x86] revert "kvm: x86: work around leak of uninitialized stack contents" (Vitaly Kuznetsov) [1849987] - [x86] kvm: vmx: Properly handle kvm_read/write_guest_virt*() result (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: emulate reserved nops from 0f/18 to 0f/1f (Vitaly Kuznetsov) [1849987] - [tools] kvm: selftests: Fix build with "make ARCH=x86_64" (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: minor code refactor and comments fixup around dirty logging (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: avoid unnecessary rmap walks when creating/moving slots (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: remove unnecessary rmap walk of read-only memslots (Vitaly Kuznetsov) [1849987] - [virt] kvm: Use vmemdup_user() (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Move MPK feature detection to common code (Vitaly Kuznetsov) [1849987] - [x86] kvm: x86: Assign correct value to array.maxnent (Vitaly Kuznetsov) [1849987] - [x86] kvm: let kvm_destroy_vm_debugfs clean up vCPU debugfs directories (Vitaly Kuznetsov) [1849987] - [x86] kvm: Handle reads of SandyBridge RAPL PMU MSRs rather than injecting #GP (Vitaly Kuznetsov) [1849987] - [documentation] docs: virt/kvm: close inline string literal (Vitaly Kuznetsov) [1849987] - [documentation] docs: kvm: Fix KVM_KVMCLOCK_CTRL API doc (Vitaly Kuznetsov) [1849987] - [x86] arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in sev_pin_memory() (Vitaly Kuznetsov) [1849987] - [virt] kvm/eventfd: remove unneeded conversion to bool (Vitaly Kuznetsov) [1849987] - [tools] selftests: fix kvm relocatable native/cross builds and installs (Vitaly Kuznetsov) [1849987] - [virt] kvm: x86: move kvm_create_vcpu_debugfs after last failure point (Vitaly Kuznetsov) [1849987] - [powerpc] xive: Share the event-queue page with the Hypervisor (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Read ibm, secure-memory nodes (Michael Roth) [1837232] - [powerpc] kvm: ppc: book3s hv: Relax check on H_SVM_INIT_ABORT (Michael Roth) [1837232]- [scsi] scsi: be2iscsi: Use scnprintf() for avoiding potential buffer overflow (Maurizio Lombardi) [1849586] - [edac] EDAC/i10nm: Update driver to support different bus number config register offsets (Aristeu Rozanski) [1838508] - [edac] EDAC, {skx, i10nm}: Make some configurations CPU model specific (Aristeu Rozanski) [1838508] - [fs] fuse: copy_file_range should truncate cache (Miklos Szeredi) [1849786] - [fs] fuse: fix copy_file_range cache issues (Miklos Szeredi) [1849786] - [fs] fuse: update attr_version counter on fuse_notify_inval_inode() (Miklos Szeredi) [1849786] - [fs] fuse: don't check refcount after stealing page (Miklos Szeredi) [1849786] - [fs] fuse: fix weird page warning (Miklos Szeredi) [1849786] - [fs] fuse: use dump_page (Miklos Szeredi) [1849786] - [fs] fuse: always allow query of st_dev (Miklos Szeredi) [1849786] - [fs] fuse: always flush dirty data on close(2) (Miklos Szeredi) [1849786] - [fs] fuse: invalidate inode attr in writeback cache mode (Miklos Szeredi) [1849786] - [fs] virtiofs: schedule blocking async replies in separate worker (Miklos Szeredi) [1849786] - [fs] fuse: Support RENAME_WHITEOUT flag (Miklos Szeredi) [1849786] - [fs] fuse: don't overflow LLONG_MAX with end offset (Miklos Szeredi) [1849786] - [fs] fix up iter on short count in fuse_direct_io() (Miklos Szeredi) [1849786] - [fs] fuse: fix fuse_send_readpages() in the syncronous read case (Miklos Szeredi) [1849786] - [fs] fuse: fix Kconfig indentation (Miklos Szeredi) [1849786] - [fs] virtiofs: Use completions while waiting for queue to be drained (Miklos Szeredi) [1849786] - [fs] virtiofs: Do not send forget request "struct list_head" element (Miklos Szeredi) [1849786] - [fs] virtiofs: Use a common function to send forget (Miklos Szeredi) [1849786] - [fs] virtiofs: Fix old-style declaration (Miklos Szeredi) [1849786] - [fs] fuse: verify nlink (Miklos Szeredi) [1849786] - [fs] fuse: verify write return (Miklos Szeredi) [1849786] - [fs] fuse: verify attributes (Miklos Szeredi) [1849786] - [fs] fuse: redundant get_fuse_inode() calls in fuse_writepages_fill() (Miklos Szeredi) [1849786] - [fs] fuse: truncate pending writes on O_TRUNC (Miklos Szeredi) [1849786] - [fs] fuse: flush dirty data/metadata before non-truncate setattr (Miklos Szeredi) [1849786] - [fs] ovl: initialize error in ovl_copy_xattr (Miklos Szeredi) [1849770] - [fs] ovl: fix redirect traversal on metacopy dentries (Miklos Szeredi) [1849770] - [fs] ovl: initialize OVL_UPPERDATA in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: use only uppermetacopy state in ovl_lookup() (Miklos Szeredi) [1849770] - [fs] ovl: simplify setting of origin for index lookup (Miklos Szeredi) [1849770] - [fs] ovl: fix out of bounds access warning in ovl_check_fb_len() (Miklos Szeredi) [1849770] - [fs] ovl: return required buffer size for file handles (Miklos Szeredi) [1849770] - [fs] ovl: sync dirty data when remounting to ro mode (Miklos Szeredi) [1849770] - [fs] ovl: resolve more conflicting mount options (Miklos Szeredi) [1849770] - [fs] ovl: potential crash in ovl_fid_to_fh() (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_OPEN from attr->ia_valid (Miklos Szeredi) [1849770] - [fs] ovl: clear ATTR_FILE from attr->ia_valid (Miklos Szeredi) [1849770] - [documentation] ovl: document xino expected behavior (Miklos Szeredi) [1849770] - [fs] ovl: enable xino automatically in more cases (Miklos Szeredi) [1849770] - [fs] ovl: avoid possible inode number collisions with xino=on (Miklos Szeredi) [1849770] - [fs] ovl: use a private non-persistent ino pool (Miklos Szeredi) [1849770] - [fs] ovl: fix WARN_ON nlink drop to zero (Miklos Szeredi) [1849770] - [fs] ovl: fix a typo in comment (Miklos Szeredi) [1849770] - [fs] ovl: replace zero-length array with flexible-array member (Miklos Szeredi) [1849770] - [fs] ovl: ovl_obtain_alias(): don't call d_instantiate_anon() for old (Miklos Szeredi) [1849770] - [fs] ovl: strict upper fs requirements for remote upper fs (Miklos Szeredi) [1849770] - [fs] ovl: check if upper fs supports RENAME_WHITEOUT (Miklos Szeredi) [1849770] - [fs] ovl: allow remote upper (Miklos Szeredi) [1849770] - [fs] ovl: decide if revalidate needed on a per-dentry basis (Miklos Szeredi) [1849770] - [fs] ovl: separate detection of remote upper layer from stacked overlay (Miklos Szeredi) [1849770] - [fs] ovl: restructure dentry revalidation (Miklos Szeredi) [1849770] - [fs] ovl: ignore failure to copy up unknown xattrs (Miklos Szeredi) [1849770] - [documentation] ovl: document permission model (Miklos Szeredi) [1849770] - [fs] ovl: simplify i_ino initialization (Miklos Szeredi) [1849770] - [fs] ovl: factor out helper ovl_get_root() (Miklos Szeredi) [1849770] - [fs] ovl: fix out of date comment and unreachable code (Miklos Szeredi) [1849770] - [fs] ovl: fix value of i_ino for lower hardlink corner case (Miklos Szeredi) [1849770] - [fs] ovl: fix lockdep warning for async write (Miklos Szeredi) [1849770] - [fs] ovl: fix some xino configurations (Miklos Szeredi) [1849770] - [fs] ovl: fix lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: fix lseek overflow on 32bit (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: add overlayfs to index.rst (Miklos Szeredi) [1849770] - [fs] ovl: add splice file read write helper (Miklos Szeredi) [1849770] - [fs] ovl: implement async IO routines (Miklos Szeredi) [1849770] - [fs] vfs: add vfs_iocb_iter_helper functions (Miklos Szeredi) [1849770] - [fs] ovl: layer is const (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-constant st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of conflicting lower layer uuid (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_fsarray (Miklos Szeredi) [1849770] - [fs] ovl: simplify ovl_same_sb() helper (Miklos Szeredi) [1849770] - [fs] ovl: generalize the lower_layersarray (Miklos Szeredi) [1849770] - [fs] ovl: improving copy-up efficiency for big sparse file (Miklos Szeredi) [1849770] - [fs] ovl: use ovl_inode_lock in ovl_llseek() (Miklos Szeredi) [1849770] - [fs] ovl: use pr_fmt auto generate prefix (Miklos Szeredi) [1849770] - [fs] ovl: fix wrong WARN_ON() in ovl_cache_update_ino() (Miklos Szeredi) [1849770] - [fs] locks: print unsigned ino in /proc/locks (Miklos Szeredi) [1849770] - [documentation] docs: filesystems: overlayfs: Fix restview warnings (Miklos Szeredi) [1849770] - [fs] ovl: relax WARN_ON() on rename to self (Miklos Szeredi) [1849770] - [fs] ovl: fix corner case of non-unique st_dev; st_ino (Miklos Szeredi) [1849770] - [fs] ovl: don't use a temp buf for encoding real fh (Miklos Szeredi) [1849770] - [fs] ovl: make sure that real fid is 32bit aligned in memory (Miklos Szeredi) [1849770] - [fs] ovl: fix lookup failure on multi lower squashfs (Miklos Szeredi) [1849770] - [fs] ovl: filter of trusted xattr results in audit (Miklos Szeredi) [1849770] - [fs] ovl: Fix dereferencing possible ERR_PTR() (Miklos Szeredi) [1849770] - [fs] ovl: fix regression caused by overlapping layers detection (Miklos Szeredi) [1849770] - [fs] ovl: make i_ino consistent with st_ino in more cases (Miklos Szeredi) [1849770] - [fs] ovl: fix typo in MODULE_PARM_DESC (Miklos Szeredi) [1849770] - [fs] ovl: fix bogus -Wmaybe-unitialized warning (Miklos Szeredi) [1849770] - [fs] ovl: don't fail with disconnected lower NFS (Miklos Szeredi) [1849770] - [fs] ovl: detect overlapping layers (Miklos Szeredi) [1849770] - [fs] ovl: using posix_acl_xattr_size() to get size instead of posix_acl_to_xattr() (Miklos Szeredi) [1849770] - [fs] ovl: abstract ovl_inode lock with a helper (Miklos Szeredi) [1849770] - [fs] ovl: remove the 'locked' argument of ovl_nlink_{start, end} (Miklos Szeredi) [1849770] - [fs] ovl: relax requirement for non null uuid of lower fs (Miklos Szeredi) [1849770] - [fs] ovl: fold copy-up helpers into callers (Miklos Szeredi) [1849770] - [fs] ovl: untangle copy up call chain (Miklos Szeredi) [1849770] - [fs] ovl: clean up error handling in ovl_get_tmpfile() (Miklos Szeredi) [1849770] - [netdrv] ionic: tame the watchdog timer on reconfig (Jonathan Toppins) [1846879 1846280] - [remoteproc] remoteproc: pull in slab.h (Jarod Wilson) [1849080]- [x86] revert "kvm: vmx: Micro-optimize vmexit time when not exposing PMU" (Vitaly Kuznetsov) [1844099] - [fs] nfsd4: kill warnings on testing stateids with mismatched clientids (Benjamin Coddington) [1765672] - [fs] NFS: Ensure security label is set for root inode (Scott Mayhew) [1660798] - [s390] kexec: Fix file verification on S390 (Lianbo Jiang) [1815369] - [s390] kexec_file: split KEXEC_VERIFY_SIG into KEXEC_SIG and KEXEC_SIG_FORCE (Lianbo Jiang) [1815369] - [netdrv] ibmvnic: continue to init in CRQ reset returns H_CLOSED (Steve Best) [1850179] - [net] sunrpc: add missing newline when printing parameter 'auth_hashtable_size' by sysfs (Benjamin Coddington) [1849998] - [net] sunrpc: clean up properly in gss_mech_unregister() (Benjamin Coddington) [1849998] - [net] sunrpc: svcauth_gss_register_pseudoflavor must reject duplicate registrations (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix backchannel RPC soft lockups (Benjamin Coddington) [1849998] - [fs] NFS: Fix a page leak in nfs_destroy_unlinked_subrequests() (Benjamin Coddington) [1849998] - [fs] nfsd4: make drc_slab global, not per-net (Benjamin Coddington) [1849998] - [net] SUNRPC: Fix GSS privacy computation of auth->au_ralign (Benjamin Coddington) [1849998] - [net] SUNRPC: Add "@len" parameter to gss_unwrap() (Benjamin Coddington) [1849998] - [fs] NFS: finish_automount() requires us to hold 2 refs to the mount record (Benjamin Coddington) [1849998] - [fs] NFS: Fix use-after-free issues in nfs_pageio_add_request() (Benjamin Coddington) [1849998] - [fs] NFS: alloc_nfs_open_context() must use the file cred when available (Benjamin Coddington) [1849998] - [net] libceph: don't omit used_replica in target_copy() (Jeff Layton) [1847528] - [net] libceph: don't omit recovery_deletes in target_copy() (Jeff Layton) [1847528] - [net] libceph: move away from global osd_req_flags (Jeff Layton) [1847528] - [fs] ceph: skip checking caps when session reconnecting and releasing reqs (Jeff Layton) [1847528] - [fs] ceph: make sure mdsc->mutex is nested in s->s_mutex to fix dead lock (Jeff Layton) [1847528] - [fs] ceph: don't return -ESTALE if there's still an open file (Jeff Layton) [1847528] - [include] libceph, rbd: replace zero-length array with flexible-array (Jeff Layton) [1847528] - [fs] ceph: allow rename operation under different quota realms (Jeff Layton) [1847528] - [fs] ceph: normalize 'delta' parameter usage in check_quota_exceeded (Jeff Layton) [1847528] - [fs] ceph: ceph_kick_flushing_caps needs the s_mutex (Jeff Layton) [1847528] - [fs] ceph: request expedited service on session's last cap flush (Jeff Layton) [1847528] - [fs] ceph: convert mdsc->cap_dirty to a per-session list (Jeff Layton) [1847528] - [fs] ceph: reset i_requested_max_size if file write is not wanted (Jeff Layton) [1847528] - [fs] ceph: throw a warning if we destroy session with mutex still locked (Jeff Layton) [1847528] - [fs] ceph: fix potential race in ceph_check_caps (Jeff Layton) [1847528] - [fs] ceph: document what protects i_dirty_item and i_flushing_item (Jeff Layton) [1847528] - [fs] ceph: don't take i_ceph_lock in handle_cap_import (Jeff Layton) [1847528] - [fs] ceph: don't release i_ceph_lock in handle_cap_trunc (Jeff Layton) [1847528] - [fs] ceph: add comments for handle_cap_flush_ack logic (Jeff Layton) [1847528] - [fs] ceph: split up __finish_cap_flush (Jeff Layton) [1847528] - [fs] ceph: reorganize __send_cap for less spinlock abuse (Jeff Layton) [1847528] - [fs] ceph: flush release queue when handling caps for unknown inode (Jeff Layton) [1847528] - [net] libceph: ignore pool overlay and cache logic on redirects (Jeff Layton) [1847528] - [x86] kvm: lapic: ensure APIC map is up to date on concurrent update requests (Igor Mammedov) [1835330] - [x86] kvm: lapic: fix broken vcpu hotplug (Igor Mammedov) [1835330] - [netdrv] net: hns3: add some error checking in hclge_tm module (Mark Langsdorf) [1809057] {CVE-2019-15925} - [fs] udf: Fix mounting of Win7 created UDF filesystems (Oleksandr Natalenko) [1842400] - [netdrv] net: qed: fixes crash while running driver in kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed: Disable SRIOV functionality inside kdump kernel (Manish Chopra) [1727746] - [netdrv] net: qed*: Reduce RX and TX default ring count when running inside kdump kernel (Manish Chopra) [1727746] - [fs] cifs: dump Security Type info in DebugData (Leif Sahlberg) [1845390] - [net] netfilter: flowtable: Make nf_flow_table_offload_add/del_cb inline (Marcelo Leitner) [1840938] - [net] sched: act_ct: Make tcf_ct_flow_table_restore_skb inline (Marcelo Leitner) [1840938] - [net] netfilter: flowtable: Add pending bit for offload work (Marcelo Leitner) [1842670] - [net] Evict neighbor entries on carrier down (Ivan Vecera) [1845352] - [net] bridge: explicitly zero is_sticky in fdb_create (Ivan Vecera) [1845350] - [net] bridge: add support for sticky fdb entries (Ivan Vecera) [1845350] - [net] remove indirect block netdev event registration (Marcelo Leitner) [1841300] - [netdrv] bnxt_tc: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] nfp: update indirect block support (Marcelo Leitner) [1841300] - [netdrv] mlx5: update indirect block support (Marcelo Leitner) [1841300] - [net] use flow_indr_dev_setup_offload() (Marcelo Leitner) [1841300] - [net] cls_api: add tcf_block_offload_init() (Marcelo Leitner) [1841300] - [net] flow_offload: consolidate indirect flow_block infrastructure (Marcelo Leitner) [1841300] - [net] netfilter: nf_flowtable: expose nf_flow_table_gc_cleanup() (Marcelo Leitner) [1841300] - [fs] iomap: Handle memory allocation failure in readahead (Carlos Maiolino) [1828792] - [fs] iomap: fix comments in iomap_dio_rw (Carlos Maiolino) [1828792] - [fs] iomap: Remove pgoff from tracepoints (Carlos Maiolino) [1828792] - [fs] fs: Fix page_mkwrite off-by-one errors (Carlos Maiolino) [1828792] - [fs] iomap: stop using ioend after it's been freed in iomap_finish_ioend() (Carlos Maiolino) [1828792] - [fs] iomap: fix sub-page uptodate handling (Carlos Maiolino) [1828792] - [fs] iomap: remove unneeded variable in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: Do not create fake iter in iomap_dio_bio_actor() (Carlos Maiolino) [1828792] - [fs] iomap: trace iomap_appply results (Carlos Maiolino) [1828792] - [fs] fs/iomap: remove redundant check in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: use a srcmap for a read-modify-write I/O (Carlos Maiolino) [1828792] - [fs] iomap: renumber IOMAP_HOLE to 0 (Carlos Maiolino) [1828792] - [fs] iomap: use write_begin to read pages to unshare (Carlos Maiolino) [1828792] - [fs] iomap: move the zeroing case out of iomap_read_page_sync (Carlos Maiolino) [1828792] - [fs] iomap: ignore non-shared or non-data blocks in xfs_file_dirty (Carlos Maiolino) [1828792] - [fs] iomap: always use AOP_FLAG_NOFS in iomap_write_begin (Carlos Maiolino) [1828792] - [fs] iomap: remove the unused iomap argument to __iomap_write_end (Carlos Maiolino) [1828792] - [fs] iomap: better document the IOMAP_F_* flags (Carlos Maiolino) [1828792] - [fs] iomap: enhance writeback error message (Carlos Maiolino) [1828792] - [fs] iomap: pass a struct page to iomap_finish_page_writeback (Carlos Maiolino) [1828792] - [fs] iomap: cleanup iomap_ioend_compare (Carlos Maiolino) [1828792] - [fs] iomap: move struct iomap_page out of iomap.h (Carlos Maiolino) [1828792] - [fs] iomap: warn on inline maps in iomap_writepage_map (Carlos Maiolino) [1828792] - [fs] iomap: lift the xfs writeback code to iomap (Carlos Maiolino) [1828792] - [fs] iomap: lift common tracing code from xfs to iomap (Carlos Maiolino) [1828792] - [fs] iomap: zero newly allocated mapped blocks (Carlos Maiolino) [1828792] - [fs] xfs: remove the fork fields in the writepage_ctx and ioend (Carlos Maiolino) [1828792] - [fs] xfs: turn io_append_trans into an io_private void pointer (Carlos Maiolino) [1828792] - [fs] xfs: refactor the ioend merging code (Carlos Maiolino) [1828792] - [fs] xfs: use a struct iomap in xfs_writepage_ctx (Carlos Maiolino) [1828792] - [fs] xfs: set IOMAP_F_NEW more carefully (Carlos Maiolino) [1828792] - [fs] xfs: initialize iomap->flags in xfs_bmbt_to_iomap (Carlos Maiolino) [1828792] - [fs] xfs: Use iomap_dio_rw to wait for unaligned direct IO (Carlos Maiolino) [1828792] - [fs] iomap: Allow forcing of waiting for running DIO in iomap_dio_rw() (Carlos Maiolino) [1828792] - [fs] iomap: move the iomap_dio_rw ->end_io callback into a structure (Carlos Maiolino) [1828792] - [fs] iomap: split size and error for iomap_dio_rw ->end_io (Carlos Maiolino) [1828792] - [fs] iomap: fix Invalid License ID (Carlos Maiolino) [1828792] - [fs] iomap: move internal declarations into fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move the main iteration code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the buffered IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the direct IO code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the SEEK_HOLE code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the file mapping reporting code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: move the swapfile code into a separate file (Carlos Maiolino) [1828792] - [fs] iomap: start moving code to fs/iomap/ (Carlos Maiolino) [1828792] - [fs] iomap: move iomap_read_inline_data around (Carlos Maiolino) [1828792] - [fs] iomap: convert to SPDX identifier (Carlos Maiolino) [1828792] - [fs] iomap: remove duplicated include from iomap.c (Carlos Maiolino) [1828792] - [netdrv] fjes: Handle workqueue allocation failure (Masayoshi Mizuma) [1830565] {CVE-2019-16231}- [fs] NFSv4: Ensure the delegation cred is pinned when we call delegreturn (Benjamin Coddington) [1848933] - [fs] NFSv4: Ensure the delegation is pinned in nfs_do_return_delegation() (Benjamin Coddington) [1848933] - [fs] NFSv4.1 make cachethis=no for writes (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix revalidation of dentries with delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Fix races between open and dentry revalidation (Benjamin Coddington) [1848933] - [fs] NFS: Fix up directory verifier races (Benjamin Coddington) [1848933] - [net] sunrpc: expiry_time should be seconds not timeval (Benjamin Coddington) [1848933] - [fs] NFSv4.0: nfs4_do_fsinfo() should not do implicit lease renewals (Benjamin Coddington) [1848933] - [fs] NFSv4: try lease recovery on NFS4ERR_EXPIRED (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks (Benjamin Coddington) [1848933] - [fs] nfs: optimise readdir cache page invalidation (Benjamin Coddington) [1848933] - [fs] NFS: Switch readdir to using iterate_shared() (Benjamin Coddington) [1848933] - [fs] NFS: Use kmemdup_nul() in nfs_readdir_make_qstr() (Benjamin Coddington) [1848933] - [fs] NFS: Directory page cache pages need to be locked when read (Benjamin Coddington) [1848933] - [fs] NFS: Fix memory leaks and corruption in readdir (Benjamin Coddington) [1848933] - [net] SUNRPC: Use kmemdup_nul() in rpc_parse_scope_id() (Benjamin Coddington) [1848933] - [fs] NFS: Replace various occurrences of kstrndup() with kmemdup_nul() (Benjamin Coddington) [1848933] - [fs] NFSv4: Limit the total number of cached delegations (Benjamin Coddington) [1848933] - [fs] NFSv4: Add accounting for the number of active delegations held (Benjamin Coddington) [1848933] - [fs] NFSv4: Try to return the delegation immediately when marked for return on close (Benjamin Coddington) [1848933] - [fs] NFS: Clear NFS_DELEGATION_RETURN_IF_CLOSED when the delegation is returned (Benjamin Coddington) [1848933] - [fs] NFSv4: nfs_inode_evict_delegation() should set NFS_DELEGATION_RETURNING (Benjamin Coddington) [1848933] - [fs] NFS: nfs_find_open_context() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFS: nfs_access_get_cached_rcu() should use cred_fscmp() (Benjamin Coddington) [1848933] - [fs] NFSv3: FIx bug when using chacl and chmod to change acl (Benjamin Coddington) [1848933] - [fs] NFSv4.x recover from pre-mature loss of openstateid (Benjamin Coddington) [1848933] - [fs] NFS: Trust cached access if we've already revalidated the inode once (Benjamin Coddington) [1848933] - [fs] NFS: Fix nfs_direct_write_reschedule_io() (Benjamin Coddington) [1848933] - [fs] NFS: When resending after a short write, reset the reply count to zero (Benjamin Coddington) [1848933] - [fs] NFS: Improve tracing of permission calls (Benjamin Coddington) [1848933] - [fs] NFS/pnfs: Fix pnfs_generic_prepare_to_resend_writes() (Benjamin Coddington) [1848933] - [fs] NFS: Fix up fsync() when the server rebooted (Benjamin Coddington) [1848933] - [net] SUNRPC: Remove broken gss_mech_list_pseudoflavors() (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file mapping on all fatal writeback errors (Benjamin Coddington) [1848933] - [fs] NFS: Revalidate the file size on a fatal write error (Benjamin Coddington) [1848933] - [fs] nfs: NFS_SWAP should depend on SWAP (Benjamin Coddington) [1848933] - [net] SUNRPC: constify copied structure (Benjamin Coddington) [1848933] - [fs] fs/nfs, swapon: check holes in swapfile (Benjamin Coddington) [1848933] - [net] SUNRPC: call_connect_status should handle -EPROTO (Benjamin Coddington) [1848933] - [fs] NFS: Introduce trace events triggered by page writeback errors (Benjamin Coddington) [1848933] - [net] SUNRPC: Capture signalled RPC tasks (Benjamin Coddington) [1848933] - [fs] NFS: move dprintk after nfs_alloc_fattr in nfs3_proc_lookup (Benjamin Coddington) [1848933] - [fs] NFS4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: encode nfsv4 timestamps as 64-bit (Benjamin Coddington) [1848933] - [fs] nfs: remove timespec from xdr_encode_nfstime (Benjamin Coddington) [1848933] - [fs] nfs: use timespec64 in nfs_fattr (Benjamin Coddington) [1848933] - [net] sunrpc: convert to time64_t for expiry (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfssvc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in nfs4proc.c (Benjamin Coddington) [1848933] - [fs] nfsd: use true, false for bool variable in vfs.c (Benjamin Coddington) [1848933] - [fs] nfsd: remove nfs4_reset_lease() declarations (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_real_seconds() in nfs4_verifier (Benjamin Coddington) [1848933] - [fs] nfsd: use boottime for lease expiry calculation (Benjamin Coddington) [1848933] - [fs] nfsd: fix jiffies/time_t mixup in LRU list (Benjamin Coddington) [1848933] - [fs] nfsd: fix delay timer on 32-bit architectures (Benjamin Coddington) [1848933] - [fs] nfsd: use time64_t in nfsd_proc_setattr() check (Benjamin Coddington) [1848933] - [fs] nfsd: pass a 64-bit guardtime to nfsd_setattr() (Benjamin Coddington) [1848933] - [fs] nfsd: make 'boot_time' 64-bit wide (Benjamin Coddington) [1848933] - [fs] nfsd: use timespec64 in encode_time_delta (Benjamin Coddington) [1848933] - [fs] nfsd: handle nfs3 timestamps as unsigned (Benjamin Coddington) [1848933] - [fs] nfsd: print 64-bit timestamps in client_info_show (Benjamin Coddington) [1848933] - [fs] nfsd: use ktime_get_seconds() for timestamps (Benjamin Coddington) [1848933] - [fs] nfsd: remove unnecessary assertion in nfsd4_encode_replay (Benjamin Coddington) [1848933] - [fs] nfsd: Clone should commit src file metadata too (Benjamin Coddington) [1848933] - [fs] nfsd4: Remove unneeded semicolon (Benjamin Coddington) [1848933] - [fs] nfs: fix timstamp debug prints (Benjamin Coddington) [1848933] - [net] nfs: use time64_t internally (Benjamin Coddington) [1848933] - [fs] nfsd: Return the correct number of bytes written to the file (Benjamin Coddington) [1848933] - [fs] nfsd: Fix up some unused variable warnings (Benjamin Coddington) [1848933] - [kernel] blktrace: ensure our debugfs dir exists (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: fix debugfs use after free (Ming Lei) [1816559] {CVE-2019-19770} - [block] loop: be paranoid on exit and prevent new additions / removals (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: annotate required lock on do_blk_trace_setup() (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: revert back to synchronous request_queue removal (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: clarify context for refcount increment helpers (Ming Lei) [1816559] {CVE-2019-19770} - [block] block: add docs for gendisk / request_queue refcount helpers (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: no need to check return value of debugfs_create functions (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: Avoid sparse warnings when assigning q->blk_trace (Ming Lei) [1816559] {CVE-2019-19770} - [kernel] blktrace: break out of blktrace setup on concurrent calls (Ming Lei) [1816559] {CVE-2019-19770} - [nvme] nvme-fc: don't call nvme_cleanup_cmd() for AENs (Ewan Milne) [1847572] - [nvme] nvme-fc: convert assoc_active flag to bit op (Ewan Milne) [1847572] - [nvme] nvme-fc: Ensure private pointers are NULL if no data (Ewan Milne) [1847572] - [nvme] nvme-multipath: do not reset on unknown status (Ewan Milne) [1847572] - [documentation] x86/speculation: Add Ivy Bridge to affected list (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [documentation] x86/speculation: Add SRBDS vulnerability and mitigation documentation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/speculation: Add Special Register Buffer Data Sampling (SRBDS) mitigation (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add 'table' argument to cpu_matches() (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu: Add a steppings field to struct x86_cpu_id (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [x86] x86/cpu/bugs: Convert to new matching macros (Josh Poimboeuf) [1827192] {CVE-2020-0543} - [crypto] crypto: simd - correctly take reqsize of wrapped skcipher into account (Mark Salter) [1830471] - [fs] nfsd: depend on CRYPTO_MD5 for legacy client tracking (Benjamin Coddington) [1847468] - [fs] nfsd: check for EBUSY from vfs_rmdir/vfs_unink (Benjamin Coddington) [1847468] - [fs] NFS: Fallocate should use the nfs4_fattr_bitmap (Benjamin Coddington) [1847468] - [fs] NFS: Return -ETXTBSY when attempting to write to a swapfile (Benjamin Coddington) [1847468] - [fs] fs: nfs: sysfs: Remove NULL check before kfree (Benjamin Coddington) [1847468] - [fs] NFS: remove unneeded semicolon (Benjamin Coddington) [1847468] - [fs] NFSv4: add declaration of current_stateid (Benjamin Coddington) [1847468] - [include] sunrpc: remove __KERNEL__ ifdefs (Benjamin Coddington) [1847468] - [fs] nfsd: document callback_wq serialization of callback code (Benjamin Coddington) [1847468] - [fs] nfsd: mark cb path down on unknown errors (Benjamin Coddington) [1847468] - [net] SUNRPC: Avoid RPC delays when exiting suspend (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't retry the GETATTR on old stateid in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in delegreturn (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix races between open and delegreturn (Benjamin Coddington) [1847468] - [fs] NFS: nfs_inode_find_state_and_recover() fix stateid matching (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix nfs4_inode_make_writeable() (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_return_incompatible_delegation() should check delegation validity (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't reclaim delegations that have been returned or revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Ignore requests to return the delegation if it was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Revoke the delegation on success in nfs4_delegreturn_done() (Benjamin Coddington) [1847468] - [fs] NFSv4: Update the stateid seqid in nfs_revoke_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Clear the NFS_DELEGATION_REVOKED flag in nfs_update_inplace_delegation() (Benjamin Coddington) [1847468] - [fs] NFSv4: Hold the delegation spinlock when updating the seqid (Benjamin Coddington) [1847468] - [fs] NFSv4: Don't remove the delegation from the super_list more than once (Benjamin Coddington) [1847468] - [fs] NFS: Rename nfs_inode_return_delegation_noreclaim() (Benjamin Coddington) [1847468] - [fs] NFSv4: fail nfs4_refresh_delegation_stateid() when the delegation was revoked (Benjamin Coddington) [1847468] - [fs] NFSv4: Delegation recalls should not find revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: nfs4_callback_getattr() should ignore revoked delegations (Benjamin Coddington) [1847468] - [fs] NFSv4: Fix delegation handling in update_open_stateid() (Benjamin Coddington) [1847468] - [fs] NFSv4.1: Don't rebind to the same source port when reconnecting to the server (Benjamin Coddington) [1847468] - [fs] NFS/pnfs: Separate NFSv3 DS and MDS traffic (Benjamin Coddington) [1847468] - [fs] pNFS: nfs3_set_ds_client should set NFS_CS_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Add a flag to tell nfs_client to set RPC_CLNT_CREATE_NOPING (Benjamin Coddington) [1847468] - [fs] NFS: Use non-atomic bit ops when initialising struct nfs_client_initdata (Benjamin Coddington) [1847468] - [fs] NFSv3: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Clean up timespec encode (Benjamin Coddington) [1847468] - [fs] NFSv2: Fix a typo in encode_sattr() (Benjamin Coddington) [1847468] - [fs] NFSv4: NFSv4 callbacks also support 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFSv4: Encode 64-bit timestamps (Benjamin Coddington) [1847468] - [fs] NFS: Convert struct nfs_fattr to use struct timespec64 (Benjamin Coddington) [1847468] - [fs] NFS: If nfs_mountpoint_expiry_timeout < 0, do not expire submounts (Benjamin Coddington) [1847468] - [net] SUNRPC: Add trace points to observe transport congestion control (Benjamin Coddington) [1847468] - [net] SUNRPC: Eliminate log noise in call_reserveresult (Benjamin Coddington) [1847468] - [fs] nfsd: remove private bin2hex implementation (Benjamin Coddington) [1847468] - [fs] nfsd: remove set but not used variable 'len' (Benjamin Coddington) [1847468] - [fs] NFSv3: fix rpc receive buffer size for MOUNT call (Steve Dickson) [1837034] - [fs] NFS: remove unused macros (Steve Dickson) [1837034] - [mm] mm, slab: fix sign conversion problem in memcg_uncharge_slab() (Waiman Long) [1849016] - [mm] mm: fix false-positive OVERCOMMIT_GUESS failures (Waiman Long) [1849016] - [mm] mm: remove CONFIG_MIGRATE_VMA_HELPER (Karol Herbst) [1847908] - [nvdimm] libnvdimm: Export the target_node attribute for regions and namespaces (Jeff Moyer) [1783157] - [dax] dax: Add numa_node to the default device-dax attributes (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Simplify root read-only definition for the 'resource' attribute (Jeff Moyer) [1783157] - [dax] dax: Create a dax device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nvdimm_bus_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nvdimm_attribute_group to device_type (Jeff Moyer) [1783157] - [acpi] libnvdimm: Move nd_mapping_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_region_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_numa_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move nd_device_attribute_group to device_type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move region attribute group definition (Jeff Moyer) [1783157] - [nvdimm] libnvdimm: Move attribute groups to device type (Jeff Moyer) [1783157] - [nvdimm] libnvdimm/region: Initialize bad block for volatile namespaces (Jeff Moyer) [1783157] - [x86] x86/mce: Add Xeon Icelake to list of CPUs that support PPIN (Steve Best) [1848710] - [powerpc] powerpc/kernel: Enables memory hot-remove after reboot on pseries guests (David Gibson) [1848844] - [fs] cifs: multichannel: try to rebind when reconnecting a channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: use pointer for binding channel (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection above transport layer (Leif Sahlberg) [1842759] - [fs] cifs: move some variables off the stack in smb2_ioctl_query_info (Leif Sahlberg) [1842759] - [fs] cifs: reduce stack use in smb2_compound_op (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: always zero struct cifs_io_parms (Leif Sahlberg) [1842759] - [fs] smb3: default to minimum of two channels when multichannel specified (Leif Sahlberg) [1842759] - [fs] cifs: multichannel: move channel selection in function (Leif Sahlberg) [1842759] - [mm] x86/init: fix build with CONFIG_SWAP=n (Waiman Long) [1839415] - [netdrv] ionic: add pcie_print_link_status (Jonathan Toppins) [1846506] - [netdrv] ionic: no link check while resetting queues (Jonathan Toppins) [1846953] - [netdrv] ionic: export features for vlans to use (Jonathan Toppins) [1846868] - [netdrv] ionic: remove support for mgmt device (Jonathan Toppins) [1846506] - [netdrv] ionic: wait on queue start until after IFF_UP (Jonathan Toppins) [1844924] - [netdrv] ionic: add more ethtool stats (Jonathan Toppins) [1848149] - [netdrv] ionic: more ionic name tweaks (Jonathan Toppins) [1848149] - [netdrv] ionic: ionic_intr_free parameter change (Jonathan Toppins) [1848149] - [netdrv] ionic: reset device at probe (Jonathan Toppins) [1848149] - [netdrv] ionic: shorter dev cmd wait time (Jonathan Toppins) [1848149] - [netdrv] ionic: add support for more xcvr types (Jonathan Toppins) [1848149] - [netdrv] ionic: protect vf calls from fw reset (Jonathan Toppins) [1848149] - [netdrv] ionic: updates to ionic FW api description (Jonathan Toppins) [1848149] - [netdrv] ionic: support longer tx sg lists (Jonathan Toppins) [1848149] - [netdrv] ionic: Use debugfs_create_bool() to export bool (Jonathan Toppins) [1848149] - [netdrv] drivers:Remove inclusion of vermagic header (Jonathan Toppins) [1848149] - [net] SUNRPC: Destroy the back channel when we destroy the host transport (Benjamin Coddington) [1846984] - [net] SUNRPC: fix race to sk_err after xs_error_report (Benjamin Coddington) [1846984] - [fs] NFS: Remove redundant mirror tracking in O_DIRECT (Benjamin Coddington) [1846984] - [fs] nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request (Benjamin Coddington) [1846984] - [net] sunrpc: clean up indentation issue (Benjamin Coddington) [1846984] - [fs] NFS: Optimise the default readahead size (Benjamin Coddington) [1846984] - [fs] nfsd: fix nfs read eof detection (Benjamin Coddington) [1846984] - [fs] nfsd: Make nfsd_reset_boot_verifier_locked static (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in LOCKU (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_OLD_STATEID in CLOSE/OPEN_DOWNGRADE (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix OPEN_DOWNGRADE error handling (Benjamin Coddington) [1846984] - [fs] pNFS: Handle NFS4ERR_OLD_STATEID on layoutreturn by bumping the state seqid (Benjamin Coddington) [1846984] - [fs] NFSv4: Add a helper to increment stateid seqids (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle RPC level errors in LAYOUTRETURN (Benjamin Coddington) [1846984] - [fs] NFSv4: Handle NFS4ERR_DELAY correctly in return-on-close (Benjamin Coddington) [1846984] - [fs] NFSv4: Clean up pNFS return-on-close error handling (Benjamin Coddington) [1846984] - [fs] NFS: remove unused check for negative dentry (Benjamin Coddington) [1846984] - [fs] NFSv3: use nfs_add_or_obtain() to create and reference inodes (Benjamin Coddington) [1846984] - [fs] NFS: Refactor nfs_instantiate() for dentry referencing callers (Benjamin Coddington) [1846984] - [fs] nfs_instantiate(): prevent multiple aliases for directory inode (Benjamin Coddington) [1846984] - [net] SUNRPC: Rename xdr_buf_read_netobj to xdr_buf_read_mic (Benjamin Coddington) [1846984] - [fs] nfsd: degraded slot-count more gracefully as allocation nears exhaustion (Benjamin Coddington) [1846984] - [fs] nfsd: handle drc over-allocation gracefully (Benjamin Coddington) [1846984] - [net] SUNRPC: RPC level errors should always set task->tk_rpc_status (Benjamin Coddington) [1846984] - [fs] nfsd: Support the server resetting the boot verifier (Benjamin Coddington) [1846984] - [net] sunrpc: Use kzfree rather than its implementation (Benjamin Coddington) [1846984] - [fs] nfsd: eliminate an unnecessary acl size limit (Benjamin Coddington) [1846984] - [fs] Deprecate nfsd fault injection (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_get_lease_time() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_secinfo_no_name() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs41_proc_reclaim_complete() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have _nfs4_proc_secinfo() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Have nfs4_proc_setclientid() call nfs4_call_sync_custom() (Benjamin Coddington) [1846984] - [fs] NFS: Add an nfs4_call_sync_custom() function (Benjamin Coddington) [1846984] - [fs] NFSv4: Fix a memory leak bug (Benjamin Coddington) [1846984] - [net] xprtrdma: Fix bc_max_slots return value (Benjamin Coddington) [1846984] - [net] SUNRPC: Inline xdr_commit_encode (Benjamin Coddington) [1846984] - [net] SUNRPC: Remove rpc_wake_up_queued_task_on_wq() (Benjamin Coddington) [1846984] - [fs] fs: nfs: Fix possible null-pointer dereferences in encode_attrs() (Benjamin Coddington) [1846984] - [fs] nfsd: Fix the documentation for svcxdr_tmpalloc() (Benjamin Coddington) [1846984] - [fs] nfsd: Remove unnecessary NULL checks (Benjamin Coddington) [1846984] - [s390] vfio-ccw: make vfio_ccw_regops variables declarations static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add trace for CRW event (Cornelia Huck) [1660917] - [s390] vfio-ccw: Wire up the CRW irq and CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new CRW region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor IRQ handlers (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce a new schib region (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor the unregister of the async regions (Cornelia Huck) [1660917] - [s390] vfio-ccw: Register a chp_event callback for vfio-ccw (Cornelia Huck) [1660917] - [s390] vfio-ccw: Introduce new helper functions to free/destroy regions (Cornelia Huck) [1660917] - [documentation] vfio-ccw: document possible errors (Cornelia Huck) [1660917] - [s390] vfio-ccw: Enable transparent CCW IPL from DASD (Cornelia Huck) [1660917] - [s390] cio: generate delayed uevent for vfio-ccw subchannels (Cornelia Huck) [1660917] - [s390] vfio-ccw: Use the correct style for SPDX License Identifier (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rework the io_fctl trace (Cornelia Huck) [1660917] - [s390] vfio-ccw: Add a trace for asynchronous requests (Cornelia Huck) [1660917] - [s390] vfio-ccw: Trace the FSM jumptable (Cornelia Huck) [1660917] - [s390] vfio-ccw: Refactor how the traces are built (Cornelia Huck) [1660917] - [s390] vfio-ccw: fix error return code in vfio_ccw_sch_init() (Cornelia Huck) [1660917] - [s390] vfio-ccw: add some logging (Cornelia Huck) [1660917] - [s390] vfio-ccw: make vfio_ccw_async_region_ops static (Cornelia Huck) [1660917] - [documentation] documentation: fix vfio-ccw doc (Cornelia Huck) [1660917] - [documentation] vfio-ccw: Update documentation for csch/hsch (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't call cp_free if we are processing a channel program (Cornelia Huck) [1660917] - [s390] vfio-ccw: Set pa_nr to 0 if memory allocation fails for pa_iova_pfn (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix memory leak and don't call cp_free in cp_init (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix misleading comment when setting orb.cmd.c64 (Cornelia Huck) [1660917] - [s390] vfio-ccw: Fix the conversion of Format-0 CCWs to Format-1 (Cornelia Huck) [1660917] - [s390] cio: introduce driver_override on the css bus (Cornelia Huck) [1660917] - [s390] vfio-ccw: make convert_ccw0_to_ccw1 static (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove copy_ccw_from_iova() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Factor out the ccw0-to-ccw1 transition (Cornelia Huck) [1660917] - [s390] vfio-ccw: Copy CCW data outside length calculation (Cornelia Huck) [1660917] - [s390] vfio-ccw: Skip second copy of guest cp to host (Cornelia Huck) [1660917] - [s390] vfio-ccw: Move guest_cp storage into common struct (Cornelia Huck) [1660917] - [s390] cio: Combine direct and indirect CCW paths (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange IDAL allocation in direct CCW (Cornelia Huck) [1660917] - [s390] vfio-ccw: Remove pfn_array_table (Cornelia Huck) [1660917] - [s390] vfio-ccw: Adjust the first IDAW outside of the nested loops (Cornelia Huck) [1660917] - [s390] vfio-ccw: Rearrange pfn_array and pfn_array_table arrays (Cornelia Huck) [1660917] - [s390] cio: Use generalized CCW handler in cp_init() (Cornelia Huck) [1660917] - [s390] cio: Generalize the TIC handler (Cornelia Huck) [1660917] - [s390] cio: Refactor the routine that handles TIC CCWs (Cornelia Huck) [1660917] - [s390] cio: Squash cp_free() and cp_unpin_free() (Cornelia Huck) [1660917] - [s390] vfio-ccw: Destroy kmem cache region on module exit (Cornelia Huck) [1660917] - [documentation] docs: s390: convert docs to ReST and rename to *.rst (Cornelia Huck) [1660917] - [s390] cio: Remove vfio-ccw checks of command codes (Cornelia Huck) [1660917] - [s390] cio: Allow zero-length CCWs in vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Don't pin vfio pages for empty transfers (Cornelia Huck) [1660917] - [s390] cio: Initialize the host addresses in pfn_array (Cornelia Huck) [1660917] - [s390] cio: Split pfn_array_alloc_pin into pieces (Cornelia Huck) [1660917] - [s390] cio: Set vfio-ccw FSM state before ioeventfd (Cornelia Huck) [1660917] - [s390] cio: Update SCSW if it points to the end of the chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: Prevent quiesce function going into an infinite loop (Cornelia Huck) [1660917] - [s390] vfio-ccw: Release any channel program when releasing/removing vfio-ccw mdev (Cornelia Huck) [1660917] - [s390] vfio-ccw: Do not call flush_workqueue while holding the spinlock (Cornelia Huck) [1660917] - [s390] vfio-ccw: add handling for async channel instructions (Cornelia Huck) [1660917] - [s390] cio: export hsch to modules (Cornelia Huck) [1660917] - [s390] vfio-ccw: add capabilities chain (Cornelia Huck) [1660917] - [s390] vfio-ccw: protect the I/O region (Cornelia Huck) [1660917] - [s390] vfio-ccw: rework ssch state handling (Cornelia Huck) [1660917] - [s390] vfio-ccw: make it safe to access channel programs (Cornelia Huck) [1660917] - [s390] vfio: ccw: only free cp on final interrupt (Cornelia Huck) [1660917] - [s390] cio: Use cpa range elsewhere within vfio-ccw (Cornelia Huck) [1660917] - [s390] cio: Fix vfio-ccw handling of recursive TICs (Cornelia Huck) [1660917] - [s390] vfio-ccw: Don't assume there are more ccws after a TIC (Cornelia Huck) [1660917] - [s390] vfio: ccw: Merge BUSY and BOXED states (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup when unsupported IDA format is used (Cornelia Huck) [1660917] - [s390] cio: Fix cleanup of pfn_array alloc failure (Cornelia Huck) [1660917] - [s390] vfio: ccw: Register mediated device once all structures are initialized (Cornelia Huck) [1660917] - [s390] cio: make vfio_ccw_io_region static (Cornelia Huck) [1660917] - [s390] cio: Fix how vfio-ccw checks pinned pages (Cornelia Huck) [1660917] - [s390] cio: Refactor alloc of ccw_io_region (Cornelia Huck) [1660917] - [s390] cio: Convert ccw_io_region to pointer (Cornelia Huck) [1660917] - [netdrv] ibmvnic: Harden device login requests (Steve Best) [1847183] - [mm] s390/cmm: fix information leak in cmm_timeout_handler() (Nico Pache) [1846532] {CVE-2020-10773} - [fs] kernfs: fix potential null pointer dereference (Carlos Maiolino) [1847872] - [netdrv] net: sfc: reject unsupported coalescing params (Jarod Wilson) [1844659] - [netdrv] iavf: increase reset complete wait time (Stefan Assmann) [1844598] - [netdrv] iavf: Fix reporting 2.5 Gb and 5Gb speeds (Stefan Assmann) [1844598] - [netdrv] iavf: use appropriate enum for comparison (Stefan Assmann) [1844598] - [netdrv] iavf: fix speed reporting over virtchnl (Stefan Assmann) [1844598] - [block] blk-mq: fix blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: split out a __blk_mq_get_driver_tag helper (Ming Lei) [1824037] - [block] blk-mq: drain I/O when all CPUs in a hctx are offline (Ming Lei) [1824037] - [block] blk-mq: add blk_mq_all_tag_iter (Ming Lei) [1824037] - [block] blk-mq: open code __blk_mq_alloc_request in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: use BLK_MQ_NO_TAG in more places (Ming Lei) [1824037] - [block] blk-mq: rename BLK_MQ_TAG_FAIL to BLK_MQ_NO_TAG (Ming Lei) [1824037] - [block] blk-mq: move more request initialization to blk_mq_rq_ctx_init (Ming Lei) [1824037] - [block] blk-mq: simplify the blk_mq_get_request calling convention (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request_hctx (Ming Lei) [1824037] - [block] blk-mq: remove a pointless queue enter pair in blk_mq_alloc_request (Ming Lei) [1824037] - [block] blk-mq: move the call to blk_queue_enter_live out of blk_mq_get_request (Ming Lei) [1824037] - [nvme] nvme: force complete cancelled requests (Ming Lei) [1824037] - [block] blk-mq: blk-mq: provide forced completion method (Ming Lei) [1824037] - [block] block: Limit number of items taken from the I/O scheduler in one go (Ming Lei) [1824037] - [scsi] Revert "scsi: core: run queue if SCSI device queue isn't ready and queue is idle" (Ming Lei) [1824037] - [block] blk-mq: Rerun dispatching in the case of budget contention (Ming Lei) [1824037] - [block] blk-mq: Add blk_mq_delay_run_hw_queues() API call (Ming Lei) [1824037] - [block] blk-mq: In blk_mq_dispatch_rq_list() "no budget" is a reason to kick (Ming Lei) [1824037] - [block] blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget (Ming Lei) [1824037] - [block] blk-mq: don't commit_rqs() if none were queued (Ming Lei) [1824037] - [block] blk-mq: Remove some unused function arguments (Ming Lei) [1824037] - [block] blk-mq-tag: document tag iteration helper return value (Ming Lei) [1824037] - [block] blk-mq: Document the functions that iterate over requests (Ming Lei) [1824037] - [block] loop: Better discard support for block devices (Ming Lei) [1824037] - [block] loop: Report EOPNOTSUPP properly (Ming Lei) [1824037] - [block] block: keep bdi->io_pages in sync with max_sectors_kb for stacked devices (Ming Lei) [1824037] - [block] block, zoned: fix integer overflow with BLKRESETZONE et al (Ming Lei) [1824037] - [block] block: Fix use-after-free issue accessing struct io_cq (Ming Lei) [1824037] - [netdrv] cxgb4: add EOTID tracking and software context dump (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: tune burst buffer size for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: improve credits recovery in TC-MQPRIO Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix delete filter entry fail in unload path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix large delays in PTP synchronization (Vishal Kulkarni) [1828665] - [netdrv] net/cxgb4: Check the return from t4_query_params properly (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: free MQPRIO resources in shutdown path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix MPS index overwrite when setting MAC address (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add support to catch bits set in INT_CAUSE5 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove set but not used variable 'tab' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/ptp: pass the sign of offset delta in FW CMD (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Txq restart check during backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix throughput drop during Tx backpressure (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework TC filter rule insertion across regions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: update T5/T6 adapter register ranges (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix checks for max queues to allocate (Vishal Kulkarni) [1828665] - [netdrv] net/chelsio: Don't set N/A for not available FW (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Added tls stats prints (Vishal Kulkarni) [1828665] - [netdrv] l2t_seq_next should increase position index (Vishal Kulkarni) [1828665] - [netdrv] seq_tab_next() should increase position index (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: reject overlapped queues in TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix Tx multi channel port rate limit (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/cxgb4vf: fix flow control display for auto negotiation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix refcount init for TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chtls: fix ULD connection failures due to wrong TID base (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix missed high priority region calculation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix kernel panic while accessing sge_info (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add support for high priority filters (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add stats for MQPRIO QoS offload Tx path (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add UDP segmentation offload support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/chcr: update SGL DMA unmap for USO (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier ingress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: check rule prio conflicts before offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add TC-MATCHALL classifier egress offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove unneeded semicolon for switch block (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Fix an error code in cxgb4_mqprio_alloc_hw_resources() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: make function 'cxgb4_mqprio_free_hw_resources' static (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: remove redundant assignment to hdr_len (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix 64-bit division on i386 (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Use match_string() helper to simplify the code (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add FLOWC based QoS offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add Tx and Rx path for ETHOFLD traffic (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: add ETHOFLD hardware queue support (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: parse and configure TC-MQPRIO offload (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: rework queue config and MSI-X allocation (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: query firmware for QoS offload resources (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Add pci reset handler (Vishal Kulkarni) [1828665] - [netdrv] cxgb4/l2t: Simplify 't4_l2e_free()' and '_t4_l2e_free()' (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: fix panic when attaching to ULD fail (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: request the TX CIDX updates to status page (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: Signedness bug in init_one() (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: no need to check return value of debugfs_create functions (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Use normal int for refcount (Vishal Kulkarni) [1828665] - [netdrv] cxgb4: smt: Add lock for atomic_dec_and_test (Vishal Kulkarni) [1828665] - [fs] xfs: clear PF_MEMALLOC before exiting xfsaild thread (Brian Foster) [1827912]- [drm] drm/amd/display: Defer cursor lock until after VUPDATE (Lyude Paul) [1814893] - [drm] drm/amd/display: Use cursor locking to prevent flip delays (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: Fix Pollock Variant Detection (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix RV2 Variant Detection (Lyude Paul) [1814893] - [drm] drm/amdgpu/display: fix pci revision id fetching (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect vGPUs (Lyude Paul) [1814893] - [drm] drm/nouveau/device: detect if changing endianness failed (Lyude Paul) [1814893] - [drm] drm/nouveau/device: rework mmio mapping code to get rid of second map (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: detect and potentially disable HDA support on some SORs (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gp100: split SOR implementation from gm200 (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: modify OR allocation policy to account for HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: split part of OR allocation logic into a function (Lyude Paul) [1814893] - [drm] drm/nouveau/disp: provide hint to OR allocation about HDA requirements (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gt215-: fix race with audio driver runpm (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gv100-: NV_PDISP_SF_AUDIO_CNTRL0 register moved (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: select HDA device entry based on bound head (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gf119-: add HAL for programming device entry in SF (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/hda/gt215-: pass head to nvkm_ior.hda.eld() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gm200-: fix NV_PDISP_SOR_HDMI2_CTRL(n) selection (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Share DP SST mode_valid() handling with MST (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Move 8BPC limit for MST into nv50_mstc_get_modes() (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/gv100-: Add support for interlaced modes (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Probe SOR and PIOR caps for DP interlacing support (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: Initialize core channel in nouveau_display_create() (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/gv100-: expose capabilities class (Lyude Paul) [1814893] - [drm] drm/nouveau/disp/nv50-: increase timeout on pio channel free() polling (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: wait for FIFO space on PIO channels (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: protect waits against GPU falling off the bus (Lyude Paul) [1814893] - [drm] drm/nouveau/nvif: access PTIMER through usermode class, if available (Lyude Paul) [1814893] - [drm] drm/nouveau/ttm: evict other IO mappings when running out of BAR1 space (Lyude Paul) [1814893] - [drm] drm/nouveau/kms/nv50-: clear SW state of disabled windows harder (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Add aux table invalidate for all engines (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Invalidate aux table entries forcibly (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Flush L3 (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Fix HDC pipeline flush (Lyude Paul) [1814893] - [drm] Revert "drm/i915/tgl: Include ro parts of l3 to invalidate" (Lyude Paul) [1814893] - [drm] drm/i915: Push MST link retraining to the hotplug work (Lyude Paul) [1814893] - [drm] drm/i915: Flatten intel_dp_check_mst_status() a bit (Lyude Paul) [1814893] - [drm] drm/i915/tc: Do not warn when aux power well of static TC ports timeout (Lyude Paul) [1814893] - [drm] drm/i915/tc: Catch TC users accessing FIA registers without enable aux (Lyude Paul) [1814893] - [drm] drm/i915/tc/tgl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/tc: Skip ref held check for TC legacy aux power wells (Lyude Paul) [1814893] - [drm] drm/i915/tc/icl: Implement TC cold sequences (Lyude Paul) [1814893] - [drm] drm/i915/display: Split hsw_power_well_enable() into two (Lyude Paul) [1814893] - [drm] drm/i915/display: Add intel_legacy_aux_to_power_domain() (Lyude Paul) [1814893] - [drm] drm/i915/display: Move out code to return the digital_port of the aux ch (Lyude Paul) [1814893] - [drm] drm/i915: Add missing deinitialization cases of load failure (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_init() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_probe() to pre/post irq install (Lyude Paul) [1814893] - [drm] drm/i915: split i915_driver_modeset_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: split intel_modeset_driver_remove() to pre/post irq uninstall (Lyude Paul) [1814893] - [drm] drm/i915: Extract skl SAGV checking (Lyude Paul) [1814893] - [drm] drm/i915: Track active_pipes in bw_state (Lyude Paul) [1814893] - [drm] drm/i915: Use bw state for per crtc SAGV evaluation (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_calc_active_pipes() (Lyude Paul) [1814893] - [drm] drm/i915: Add pre/post plane updates for SAGV (Lyude Paul) [1814893] - [drm] drm/i915: Prepare to extract gen specific functions from intel_can_enable_sagv (Lyude Paul) [1814893] - [drm] drm/i915: Add intel_atomic_get_bw_*_state helpers (Lyude Paul) [1814893] - [drm] drm/i915: Introduce skl_plane_wm_level accessor (Lyude Paul) [1814893] - [drm] drm/i915: do AUD_FREQ_CNTRL state save on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915: Extend hotplug detect retry on TypeC connectors to 5 seconds (Lyude Paul) [1814893] - [drm] drm/i915: Add a retry counter for hotplug detect retries (Lyude Paul) [1814893] - [drm] drm/i915: Introduce intel_connector_hpd_pin() (Lyude Paul) [1814893] - [drm] drm/i915: Prefer intel_connector over drm_connector in hotplug code (Lyude Paul) [1814893] - [drm] drm/i915: Use intel_attached_encoder() (Lyude Paul) [1814893] - [drm] drm/i915/ehl: Restrict w/a 1607087056 for EHL/JSL (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Initialize multicast register steering for workarounds (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_14010229206 permanent (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1605460711 / Wa_1408767742 to ICL and EHL (Lyude Paul) [1814893] - [drm] drm/i915: Apply Wa_1406680159:icl, ehl as an engine workaround (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1406306137:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915: Add Wa_1604278689:icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Don't treat unslice registers as masked (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Make Wa_1606700617 permanent (Lyude Paul) [1814893] - [drm] drm/i915/tgl: WaDisableGPGPUMidThreadPreemption (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Move and restrict Wa_1408615072 (Lyude Paul) [1814893] - [drm] drm/i915/gen11: Moving WAs to rcs_engine_wa_init() (Lyude Paul) [1814893] - [drm] drm/i915: add Wa_14010594013: icl,ehl (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa number to WaAllowPMDepthAndInvocationCountAccessFromUMD (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1409142259 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Fix the Wa number of a fix (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note about Wa_1607063988 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add note to Wa_1607297627 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Extend Wa_1606931601 for all steppings (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1409085225, Wa_14010229206 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1806527549 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Implement Wa_1409804808 (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_1808121037 to tgl (Lyude Paul) [1814893] - [drm] drm/i915: Use engine wa list for Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Implement Wa_1607090982 (Lyude Paul) [1814893] - [drm] drm/i915: Disable tesselation clock gating on tgl A0 (Lyude Paul) [1814893] - [drm] drm/i915: Move ringbuffer WAs to engine workaround list (Lyude Paul) [1814893] - [drm] drm/i915/gt: Skip rmw for masked registers (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Also wait for the scratch buffer to be bound (Lyude Paul) [1814893] - [drm] drm/i915/dp: Return the right vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/dp/tgl+: Update combo phy vswing tables (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add definitions for VRR registers and bits (Lyude Paul) [1814893] - [drm] drm/i915: use forced codec wake on all gen9+ platforms (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add new PCI IDs to TGL (Lyude Paul) [1814893] - [drm] drm/i915/perf: Invalidate OA TLB on when closing perf stream (Lyude Paul) [1814893] - [drm] Bump DRM backport version to 5.6.14 (Lyude Paul) [1814893] - [drm] drm/i915/tgl+: Fix interrupt handling for DP AUX transactions (Lyude Paul) [1814893] - [drm] drm/amd/amdgpu: add raven1 part to the gfxoff quirk list (Lyude Paul) [1814893] - [drm] drm/amd/display: add basic atomic check for cursor plane (Lyude Paul) [1814893] - [drm] Make the "Reducing compressed framebufer size" message be DRM_INFO_ONCE() (Lyude Paul) [1814893] - [drm] drm/i915: Handle idling during i915_gem_evict_something busy loops (Lyude Paul) [1814893] - [drm] drm/i915: Mark concurrent submissions with a weak-dependency (Lyude Paul) [1814893] - [drm] drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest (Lyude Paul) [1814893] - [drm] drm/amdgpu: force fbdev into vram (Lyude Paul) [1814893] - [drm] drm/i915/gem: Remove object_is_locked assertion from unpin_from_display_plane (Lyude Paul) [1814893] - [drm] drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is disabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Make timeslicing an explicit engine property (Lyude Paul) [1814893] - [drm] drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper() (Lyude Paul) [1814893] - [drm] drm/amd/display: Update downspread percent to match spreadsheet for DCN2.1 (Lyude Paul) [1814893] - [drm] drm/amd/display: Defer cursor update around VUPDATE for all ASIC (Lyude Paul) [1814893] - [drm] drm/amd/display: check if REFCLK_CNTL register is present (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: avoid using pm_en before it is initialized revised (Lyude Paul) [1814893] - [drm] drm/amd/display: blank dp stream before re-train the link (Lyude Paul) [1814893] - [drm] drm/i915/display: Load DP_TP_CTL/STATUS offset before use it (Lyude Paul) [1814893] - [drm] drm/i915/tgl: TBT AUX should use TC power well ops (Lyude Paul) [1814893] - [drm] drm/i915/tgl: Add Wa_14010477008:tgl (Lyude Paul) [1814893] - [drm] drm/amd/display: work around fp code being emitted outside of DC_FP_START/END (Lyude Paul) [1814893] - [drm] drm/amdgpu: drop redundant cg/pg ungate on runpm enter (Lyude Paul) [1814893] - [drm] drm/amdgpu: move kfd suspend after ip_suspend_phase1 (Lyude Paul) [1814893] - [drm] drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event (Lyude Paul) [1814893] - [drm] drm/amdgpu: Correctly initialize thermal controller for GPUs with Powerplay table v0 (e.g Hawaii) (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: fix resume failed as smu table initialize early exit (Lyude Paul) [1814893] - [drm] drm/bridge: anx6345: set correct BPC for display_info of connector (Lyude Paul) [1814893] - [drm] drm/i915: Use proper fault mask in interrupt postinstall too (Lyude Paul) [1814893] - [drm] drm/i915/selftests: Fix i915_address_space refcnt leak (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release use after free (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_hw_surface_alloc() (Lyude Paul) [1814893] - [drm] drm/qxl: qxl_release leak in qxl_draw_dirty_fb() (Lyude Paul) [1814893] - [drm] drm/i915/gt: Check cacheline is valid before acquiring (Lyude Paul) [1814893] - [drm] drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma() (Lyude Paul) [1814893] - [drm] drm/amd/display: Fix green screen issue after suspend (Lyude Paul) [1814893] - [drm] drm/edid: Fix off-by-one in DispID DTD pixel clock (Lyude Paul) [1814893] - [drm] drm/amdgpu: invalidate L2 before SDMA IBs (v2) (Lyude Paul) [1814893] - [dma-buf] dma-buf: Fix SET_NAME ioctl uapi (Lyude Paul) [1814893] - [drm] drm/scheduler: fix drm_sched_get_cleanup_job (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix wrong vram lost counter increment V2 (Lyude Paul) [1814893] - [drm] drm/dp_mst: Zero assigned PBN when releasing VCPI slots (Lyude Paul) [1814893] - [drm] drm/amd/display: Calculate scaling ratios on every medium/full update (Lyude Paul) [1814893] - [drm] drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax (Lyude Paul) [1814893] - [video] fbdev: potential information leak in do_fb_ioctl() (Lyude Paul) [1814893] - [drm] drm/nouveau/gr/gp107, gp108: implement workaround for HW hanging during init (Lyude Paul) [1814893] - [drm] drm/amdkfd: kfree the wrong pointer (Lyude Paul) [1814893] - [drm] drm/nouveau: workaround runpm fail by disabling PCI power management on certain intel bridges (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: fix vma range check for migration (Lyude Paul) [1814893] - [drm] drm/nouveau/svm: check for SVM initialized before migrating (Lyude Paul) [1814893] - [drm] drm/amd/display: Don't try hdcp1.4 when content_type is set to type1 (Lyude Paul) [1814893] - [drm] drm/ttm: flush the fence on the bo after we individualize the reservation object (Lyude Paul) [1814893] - [drm] drm/i915/perf: Do not clear pollin for small user read buffers (Lyude Paul) [1814893] - [drm] drm/nouveau/sec2/gv100-: add missing MODULE_FIRMWARE() (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix the hw hang during perform system reboot and reset (Lyude Paul) [1814893] - [drm] drm/amdgpu/gfx9: add gfxoff quirk (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: force the trim of the mclk dpm_levels if OD is enabled (Lyude Paul) [1814893] - [drm] drm/i915/gt: Fill all the unused space in the GGTT (Lyude Paul) [1814893] - [drm] drm/i915/ggtt: do not set bits 1-11 in gen12 ptes (Lyude Paul) [1814893] - [drm] drm/amdgpu: fix gfx hang during suspend with video playback (v2) (Lyude Paul) [1814893] - [drm] drm/dp_mst: Fix clearing payload state on topology disable (Lyude Paul) [1814893] - [drm] Revert "drm/dp_mst: Remove VCPI while disabling topology mgr" (Lyude Paul) [1814893] - [drm] drm/i915/gt: Treat idling as a RPS downclock event (Lyude Paul) [1814893] - [drm] drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2 (Lyude Paul) [1814893] - [drm] drm/i915/icl+: Don't enable DDI IO power on a TypeC port in TBT mode (Lyude Paul) [1814893] - [drm] drm/amd/display: Check for null fclk voltage when parsing clock table (Lyude Paul) [1814893] - [drm] drm/amdgpu: unify fw_write_wait for new gfx9 asics (Lyude Paul) [1814893] - [drm] drm/amd/powerplay: implement the is_dpm_running() (Lyude Paul) [1814893] - [drm] drm/amdgpu/powerplay: using the FCLK DPM table to set the MCLK (Lyude Paul) [1814893] - [drm] drm: Remove PageReserved manipulation from drm_pci_alloc (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx78xx: Fix drm_dp_link helper removal (Lyude Paul) [1814893] - [drm] drm/i915/gem: Flush all the reloc_gpu batch (Lyude Paul) [1814893] - [drm] drm/i915/gen12: Disable preemption timeout (Lyude Paul) [1814893] - [drm] drm/i915/display: Fix mode private_flags comparison at atomic_check (Lyude Paul) [1814893] - [drm] drm/bridge: analogix-anx6345: Avoid duplicate -supply suffix (Lyude Paul) [1814893] - [drm] drm/i915: Allow for different modes of interruptible i915_active_wait (Lyude Paul) [1814893] - [gpu] DRM Backport 5.5 -> 5.6 (Lyude Paul) [1814893] - [video] video: fbdev: intelfb: use const pointer for fb_ops (Lyude Paul) [1814893] - [include] video: fbdev: make fbops member of struct fb_info a const pointer (Lyude Paul) [1814893] - [video] video: fbdev: uvesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: nvidia: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: mb862xx: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbdev: atyfb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: fbmem: use const pointer for fb_ops (Lyude Paul) [1814893] - [video] video: fbdev: vesafb: modify the static fb_ops directly (Lyude Paul) [1814893] - [video] video: udlfb: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [video] video: smscufx: don't restore fb_mmap after deferred IO cleanup (Lyude Paul) [1814893] - [drm] drm/fb-helper: don't preserve fb_ops across deferred IO use (Lyude Paul) [1814893] - [drm] drm/fb-helper: Remove drm_fb_helper_fbdev_{setup, teardown}() (Lyude Paul) [1814893] - [video] video: fb_defio: preserve user fb_ops (Lyude Paul) [1814893] - [drm] mm, drm/ttm: Fix vm page protection handling (Lyude Paul) [1814893] - [dma-buf] udmabuf: Remove deleted map/unmap handlers (Lyude Paul) [1814893] - [include] dma-buf: Remove kernel map/unmap hooks (Lyude Paul) [1814893] - [drm] drm/udl: Remove udl implementation of GEM's free_object() (Lyude Paul) [1814893] - [drm] drm/udl: Unmap buffer object after damage update (Lyude Paul) [1814893] - [drm] drm/udl: Fix Kconfig indentation (Lyude Paul) [1814893] - [drm] drm/udl: Replace fbdev code with generic emulation (Lyude Paul) [1814893] - [drm] drm/udl: Remove struct udl_gem_object and functions (Lyude Paul) [1814893] - [drm] drm/udl: Switch to SHMEM (Lyude Paul) [1814893] - [drm] drm/udl: Allocate GEM object via struct drm_driver.gem_create_object (Lyude Paul) [1814893] - [drm] drm/udl: Remove flags field from struct udl_gem_object (Lyude Paul) [1814893] - [drm] drm/armada: Delete dma_buf->k(un)map implemenation (Lyude Paul) [1814893] - [tee] drm/tee_shm: Drop dma_buf_k(unmap) support (Lyude Paul) [1814893] - [samples] sample/vfio-mdev/mbocs: Remove dma_buf_k(un)map support (Lyude Paul) [1814893] - [media] media/videobuf2: Drop dma_buf->k(un)map support (Lyude Paul) [1814893] - [drm] drm/vmwgfx: Delete mmaping functions (Lyude Paul) [1814893] - [dma-buf] dma-buf: Drop dma_buf_k(un)map (Lyude Paul) [1814893] - [drm] drm/tegra: Remove dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/omapdrm: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [drm] drm/i915: Drop dma_buf->k(un)map (Lyude Paul) [1814893] - [staging] staging/android/ion: delete dma_buf->kmap/unmap implemenation (Lyude Paul) [1814893] - [drm] drm/i915: Remove dma_buf_kmap selftest (Lyude Paul) [1814893] - [drm] drm/tegra: Delete host1x_bo_ops->k(un)map (Lyude Paul) [1814893] - [gpu] drm/tegra: Map cmdbuf once for reloc processing (Lyude Paul) [1814893] - [pinctrl] pinctrl: Allow modules to use pinctrl_register_mappings (Lyude Paul) [1814893] - [include] lockdep: add might_lock_nested() (Lyude Paul) [1814893] - [gpu] DRM Backport 5.4 -> 5.5 (Lyude Paul) [1814893] - [security] device_cgroup: Export devcgroup_check_permission (Lyude Paul) [1814893] - [video] fbdev: drop res_id parameter from remove_conflicting_pci_framebuffers (Lyude Paul) [1814893] - [media] media: cec: check 'transmit_in_progress', not 'transmitting' (Lyude Paul) [1814893] - [media] media: cec: avoid decrementing transmit_queue_sz if it is 0 (Lyude Paul) [1814893] - [media] media: cec: CEC 2.0-only bcast messages were ignored (Lyude Paul) [1814893] - [media] cec: add cec_adapter to cec_notifier_cec_adap_unregister() (Lyude Paul) [1814893] - [media] media: cec-pin: add 'received' callback (Lyude Paul) [1814893] - [media] media: cec: expose the new connector info API (Lyude Paul) [1814893] - [media] media: cec/cec-adap.c: use new UI_CMD defines (Lyude Paul) [1814893] - [media] media: cec-notifier: clear cec_adap in cec_notifier_unregister (Lyude Paul) [1814893] - [media] media: cec-adap: return from cec_s_conn_info() if adap is invalid (Lyude Paul) [1814893] - [media] media: cec-notifier: add new notifier functions (Lyude Paul) [1814893] - [media] media: cec: add struct cec_connector_info support (Lyude Paul) [1814893] - [media] media: cec-notifier: rename variables, check kstrdup and n->conn_name (Lyude Paul) [1814893] - [media] media: cec-adap: fix regression in ping sanity check (Lyude Paul) [1814893] - [media] media: cec: allow any initiator for Ping and Image/Text View On (Lyude Paul) [1814893] - [media] media: cec: support CEC_MSG_FL_RAW (Lyude Paul) [1814893] - [media] media: cec: add CEC_MSG_FL_RAW flag and msg_is_raw helper function (Lyude Paul) [1814893] - [media] media: cec: move check from cec_transmit to cec_transmit_msg_fh (Lyude Paul) [1814893] - [media] media: cec: cec_transmit_msg_fh: do sanity checks first (Lyude Paul) [1814893] - [media] media: cec: mark devnode as registered before actually registering it (Lyude Paul) [1814893] - [media] media: cec-notifier: add cec_notifier_parse_hdmi_phandle helper (Lyude Paul) [1814893] - [media] media: Kconfig files: use the right help coding style (Lyude Paul) [1814893] - [media] media: cec: fill in cec chardev kobject to ease debugging (Lyude Paul) [1814893] - [media] media: cec: fix epoll() by calling poll_wait first (Lyude Paul) [1814893] - [media] media: cec: keep track of outstanding transmits (Lyude Paul) [1814893] - [media] media: cec: add debug_phys_addr module option (Lyude Paul) [1814893] - [media] media: cec: report Vendor ID after initialization (Lyude Paul) [1814893] - [media] media: cec-pin: fix broken tx_ignore_nack_until_eom error injection (Lyude Paul) [1814893] - [media] media: cec: increase debug level for 'queue full' (Lyude Paul) [1814893] - [media] media: cec: check for non-OK/NACK conditions while claiming a LA (Lyude Paul) [1814893] - [media] media: cec: forgot to cancel delayed work (Lyude Paul) [1814893] - [media] media: cec: name for RC passthrough device does not need 'RC for' (Lyude Paul) [1814893] - [media] media: cec-gpio: select correct Signal Free Time (Lyude Paul) [1814893] - [media] media: cec: fix the Signal Free Time calculation (Lyude Paul) [1814893] - [media] media: cec: add new tx/rx status bits to detect aborts/timeouts (Lyude Paul) [1814893] - [media] media: cec: remove cec-edid.c (Lyude Paul) [1814893] - [media] media: cec/v4l2: move V4L2 specific CEC functions to V4L2 (Lyude Paul) [1814893] - [media] media: cec: integrate cec_validate_phys_addr() in cec-api.c (Lyude Paul) [1814893] - [media] media: cec: make cec_get_edid_spa_location() an inline function (Lyude Paul) [1814893] - [media] media: use strscpy() instead of strlcpy() (Lyude Paul) [1814893] - [media] media: cec: move compat_ioctl handling to cec-api.c (Lyude Paul) [1814893] - [media] media: cec: add support for 5V signal testing (Lyude Paul) [1814893] - [uapi] media: uapi/linux/cec.h: add 5V events (Lyude Paul) [1814893] - [scsi] compat_ioctl: move more drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [vhost] compat_ioctl: move drivers to compat_ptr_ioctl (Lyude Paul) [1814893] - [rtc] compat_ioctl: move rtc handling into drivers/rtc/dev.c (Lyude Paul) [1814893] - [fs] ceph: fix compat_ioctl for ceph_dir_operations (Lyude Paul) [1814893] - [fs] compat_sys_ioctl(): make parallel to do_vfs_ioctl() (Lyude Paul) [1814893] - [fs] compat: move FS_IOC_RESVSP_32 handling to fs/ioctl.c (Lyude Paul) [1814893] - [fs] do_vfs_ioctl(): use saner types (Lyude Paul) [1814893] - [fs] compat: itanic doesn't have one (Lyude Paul) [1814893] - [fs] FIGETBSZ: fix compat (Lyude Paul) [1814893] - [fs] fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP (Lyude Paul) [1814893] - [gpu] DRM Backport 5.3 -> 5.4 (Lyude Paul) [1814893] - [include] Add wait_var_event_interruptible() (Lyude Paul) [1814893] - [kernel] kthread: Add __kthread_should_park() (Lyude Paul) [1814893] - [kernel] PM / sleep: Refactor filesystems sync to reduce duplication (Lyude Paul) [1814893] - [fpga] drivers: Introduce device lookup variants by of_node (Lyude Paul) [1814893] - [s390] drivers: Introduce device lookup variants by name (Lyude Paul) [1814893] - [base] drivers: Add generic helper to match by of_node (Lyude Paul) [1814893] - [drm] kbuild: change *FLAGS_.o to take the path relative to $(obj) (Lyude Paul) [1814893] - [video] fbdev: lock_fb_info cannot fail (Lyude Paul) [1814893] - [video] fbdev/atyfb: lock_fb_info can't fail (Lyude Paul) [1814893] - [video] fbdev: sysfs files can't disappear before the device is gone (Lyude Paul) [1814893] - [video] fbcon: call fbcon_fb_(un)registered directly (Lyude Paul) [1814893] - [video] fbcon: Remove fbcon_has_exited (Lyude Paul) [1814893] - [video] fbcon: s/struct display/struct fbcon_display/ (Lyude Paul) [1814893] - [video] fbdev: locking check for fb_set_suspend (Lyude Paul) [1814893] - [tty] vt/fbcon: deinitialize resources in visual_init() after failed memory allocation (Lyude Paul) [1814893] - [video] fbcon: Don't reset logo_shown when logo is currently shown (Lyude Paul) [1814893] - [video] fbdev: fix WARNING in __alloc_pages_nodemask bug (Lyude Paul) [1814893] - [video] fbdev: fix divide error in fb_var_to_videomode (Lyude Paul) [1814893] - [video] fbdev: list all pci memory bars as conflicting apertures (Lyude Paul) [1814893]- [block] Revert "block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT" (Jeff Moyer) [1784478] - [fs] io_uring: reset -EBUSY error when io sq thread is waken up (Jeff Moyer) [1784478] - [fs] io_uring: don't add non-IO requests to iopoll pending list (Jeff Moyer) [1784478] - [fs] io_uring: don't use kiocb.private to store buf_index (Jeff Moyer) [1784478] - [fs] io_uring: cancel work if task_work_add() fails (Jeff Moyer) [1784478] - [fs] io_uring: remove dead check in io_splice() (Jeff Moyer) [1784478] - [fs] io_uring: fix FORCE_ASYNC req preparation (Jeff Moyer) [1784478] - [fs] io_uring: don't prepare DRAIN reqs twice (Jeff Moyer) [1784478] - [fs] io_uring: initialize ctx->sqo_wait earlier (Jeff Moyer) [1784478] - [fs] io_uring: polled fixed file must go through free iteration (Jeff Moyer) [1784478] - [fs] io_uring: fix zero len do_splice() (Jeff Moyer) [1784478] - [fs] io_uring: don't use 'fd' for openat/openat2/statx (Jeff Moyer) [1784478] - [fs] splice: move f_mode checks to do_{splice, tee}() (Jeff Moyer) [1784478] - [fs] io_uring: handle -EFAULT properly in io_uring_setup() (Jeff Moyer) [1784478] - [fs] io_uring: fix mismatched finish_wait() calls in io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io_uring: punt splice async because of inode mutex (Jeff Moyer) [1784478] - [fs] io_uring: check non-sync defer_list carefully (Jeff Moyer) [1784478] - [fs] io_uring: fix extra put in sync_file_range() (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in io_ring_ctx_wait_and_kill() (Jeff Moyer) [1784478] - [fs] io_uring: use proper references for fallback_req locking (Jeff Moyer) [1784478] - [fs] io_uring: only force async punt if poll based retry can't handle it (Jeff Moyer) [1784478] - [fs] io_uring: enable poll retry for any file with ->read_iter / ->write_iter (Jeff Moyer) [1784478] - [fs] io_uring: statx must grab the file table for valid fd (Jeff Moyer) [1784478] - [fs] io_uring: only restore req->work for req that needs do completion (Jeff Moyer) [1784478] - [fs] io_uring: don't count rqs failed after current one (Jeff Moyer) [1784478] - [fs] io_uring: kill already cached timeout.seq_offset (Jeff Moyer) [1784478] - [fs] io_uring: fix cached_sq_head in io_timeout() (Jeff Moyer) [1784478] - [fs] io_uring: only post events in io_poll_remove_all() if we completed some (Jeff Moyer) [1784478] - [fs] io_uring: io_async_task_func() should check and honor cancelation (Jeff Moyer) [1784478] - [fs] io_uring: check for need to re-wait in polled async handling (Jeff Moyer) [1784478] - [fs] io_uring: correct O_NONBLOCK check for splice punt (Jeff Moyer) [1784478] - [fs] io_uring: restore req->work when canceling poll request (Jeff Moyer) [1784478] - [fs] io_uring: move all request init code in one place (Jeff Moyer) [1784478] - [fs] io_uring: keep all sqe->flags in req->flags (Jeff Moyer) [1784478] - [fs] io_uring: early submission req fail code (Jeff Moyer) [1784478] - [fs] io_uring: track mm through current->mm (Jeff Moyer) [1784478] - [fs] io_uring: remove obsolete @mm_fault (Jeff Moyer) [1784478] - [fs] io_uring: punt final io_ring_ctx wait-and-free to workqueue (Jeff Moyer) [1784478] - [fs] io_uring: fix fs cleanup on cqe overflow (Jeff Moyer) [1784478] - [fs] io_uring: don't read user-shared sqe flags twice (Jeff Moyer) [1784478] - [fs] io_uring: remove req init from io_get_req() (Jeff Moyer) [1784478] - [fs] io_uring: alloc req only after getting sqe (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_get_sqring (Jeff Moyer) [1784478] - [fs] io_uring: do not always copy iovec in io_req_map_rw() (Jeff Moyer) [1784478] - [fs] io_uring: ensure openat sets O_LARGEFILE if needed (Jeff Moyer) [1784478] - [fs] io_uring: initialize fixed_file_data lock (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant variable pointer nxt and io_wq_assign_next call (Jeff Moyer) [1784478] - [fs] io_uring: fix ctx refcounting in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: process requests completed with -EAGAIN on poll list (Jeff Moyer) [1784478] - [fs] io_uring: remove bogus RLIMIT_NOFILE check in file registration (Jeff Moyer) [1784478] - [fs] io_uring: use io-wq manager as backup task if task is exiting (Jeff Moyer) [1784478] - [fs] io_uring: grab task reference for poll requests (Jeff Moyer) [1784478] - [fs] io_uring: retry poll if we got woken with non-matching mask (Jeff Moyer) [1784478] - [fs] io_uring: add missing finish_wait() in io_sq_thread() (Jeff Moyer) [1784478] - [fs] io_uring: refactor file register/unregister/update handling (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_alloc_async_ctx() (Jeff Moyer) [1784478] - [fs] io_uring: fix missing 'return' in comment (Jeff Moyer) [1784478] - [fs] io-wq: handle hashed writes in chains (Jeff Moyer) [1784478] - [fs] io-uring: drop 'free_pfile' in struct io_file_put (Jeff Moyer) [1784478] - [fs] io-uring: drop completion when removing file (Jeff Moyer) [1784478] - [fs] io_uring: Fix ->data corruption on re-enqueue (Jeff Moyer) [1784478] - [fs] io-wq: close cancel gap for hashed linked work (Jeff Moyer) [1784478] - [uapi] io_uring: make spdxcheck.py happy (Jeff Moyer) [1784478] - [fs] io_uring: honor original task RLIMIT_FSIZE (Jeff Moyer) [1784478] - [fs] io_uring: make sure accept honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io_uring: make sure openat/openat2 honor rlimit nofile (Jeff Moyer) [1784478] - [fs] io-wq: hash dependent work (Jeff Moyer) [1784478] - [fs] io-wq: split hashing and enqueueing (Jeff Moyer) [1784478] - [fs] io-wq: don't resched if there is no work (Jeff Moyer) [1784478] - [fs] io_uring: NULL-deref for IOSQE_{ASYNC,DRAIN} (Jeff Moyer) [1784478] - [fs] io-wq: remove duplicated cancel code (Jeff Moyer) [1784478] - [fs] io_uring: fix truncated async read/readv and write/writev retry (Jeff Moyer) [1784478] - [uapi] io_uring: dual license io_uring.h uapi header (Jeff Moyer) [1784478] - [fs] io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled (Jeff Moyer) [1784478] - [fs] io_uring: Fix unused function warnings (Jeff Moyer) [1784478] - [fs] io_uring: add end-of-bits marker and build time verify it (Jeff Moyer) [1784478] - [fs] io_uring: provide means of removing buffers (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [net] net: abstract out normal and compat msghdr import (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_READV (Jeff Moyer) [1784478] - [fs] io_uring: support buffer selection for OP_READ and OP_RECV (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_PROVIDE_BUFFERS (Jeff Moyer) [1784478] - [fs] io_uring: ensure RCU callback ordering with rcu_barrier() (Jeff Moyer) [1784478] - [fs] io_uring: fix lockup with timeouts (Jeff Moyer) [1784478] - [fs] io_uring: free fixed_file_data after RCU grace period (Jeff Moyer) [1784478] - [fs] io_uring: buffer registration infrastructure (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: forward submission ref to async (Jeff Moyer) [1784478] - [fs] io-wq: optimise out *next_work() double lock (Jeff Moyer) [1784478] - [fs] io-wq: optimise locking in io_worker_handle_work() (Jeff Moyer) [1784478] - [fs] io-wq: shuffle io_worker_handle_work() code (Jeff Moyer) [1784478] - [fs] io_uring: get next work with submission ref drop (Jeff Moyer) [1784478] - [fs] io_uring: remove @nxt from handlers (Jeff Moyer) [1784478] - [fs] io_uring: make submission ref putting consistent (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_close (Jeff Moyer) [1784478] - [fs] io_uring: Ensure mask is initialized in io_arm_poll_handler (Jeff Moyer) [1784478] - [fs] io_uring: remove io_prep_next_work() (Jeff Moyer) [1784478] - [fs] io_uring: remove extra nxt check after punt (Jeff Moyer) [1784478] - [fs] io_uring: use poll driven retry for files that support it (Jeff Moyer) [1784478] - [fs] io_uring: mark requests that we can do poll async in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: add per-task callback handler (Jeff Moyer) [1784478] - [fs] io_uring: store io_kiocb in wait->private (Jeff Moyer) [1784478] - [fs] io-wq: use BIT for ulong hash (Jeff Moyer) [1784478] - [fs] io_uring: remove IO_WQ_WORK_CB (Jeff Moyer) [1784478] - [fs] io-wq: remove unused IO_WQ_WORK_HAS_MM (Jeff Moyer) [1784478] - [fs] io_uring: extract kmsg copy helper (Jeff Moyer) [1784478] - [fs] io_uring: clean io_poll_complete (Jeff Moyer) [1784478] - [fs] io_uring: add splice(2) support (Jeff Moyer) [1784478] - [fs] io_uring: add interface for getting files (Jeff Moyer) [1784478] - [fs] splice: make do_splice public (Jeff Moyer) [1784478] - [fs] io_uring: remove req->in_async (Jeff Moyer) [1784478] - [fs] io_uring: don't do full *prep_worker() from io-wq (Jeff Moyer) [1784478] - [fs] io_uring: don't call work.func from sync ctx (Jeff Moyer) [1784478] - [fs] io_uring: io_accept() should hold on to submit reference on retry (Jeff Moyer) [1784478] - [fs] io_uring: consider any io_read/write -EAGAIN as final (Jeff Moyer) [1784478] - [fs] io-wq: remove io_wq_flush and IO_WQ_WORK_INTERNAL (Jeff Moyer) [1784478] - [fs] io-wq: fix IO_WQ_WORK_NO_CANCEL cancellation (Jeff Moyer) [1784478] - [fs] io_uring: fix 32-bit compatability with sendmsg/recvmsg (Jeff Moyer) [1784478] - [fs] io_uring: define and set show_fdinfo only if procfs is enabled (Jeff Moyer) [1784478] - [fs] io_uring: drop file set ref put/get on switch (Jeff Moyer) [1784478] - [fs] io_uring: import_single_range() returns 0/-ERROR (Jeff Moyer) [1784478] - [fs] io_uring: pick up link work on submit reference drop (Jeff Moyer) [1784478] - [fs] io-wq: ensure work->task_pid is cleared on init (Jeff Moyer) [1784478] - [fs] io-wq: remove spin-for-work optimization (Jeff Moyer) [1784478] - [fs] io_uring: fix poll_list race for SETUP_IOPOLL|SETUP_SQPOLL (Jeff Moyer) [1784478] - [fs] io_uring: fix personality idr leak (Jeff Moyer) [1784478] - [fs] io_uring: handle multiple personalities in link chains (Jeff Moyer) [1784478] - [fs] io_uring: fix __io_iopoll_check deadlock in io_sq_thread (Jeff Moyer) [1784478] - [fs] io_uring: prevent sq_thread from spinning when it should stop (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free by io_cleanup_req() (Jeff Moyer) [1784478] - [fs] io_uring: remove unnecessary NULL checks (Jeff Moyer) [1784478] - [fs] io_uring: add missing io_req_cancelled() (Jeff Moyer) [1784478] - [fs] io_uring: prune request from overflow list on flush (Jeff Moyer) [1784478] - [fs] io-wq: don't call kXalloc_node() with non-online node (Jeff Moyer) [1784478] - [fs] io_uring: retain sockaddr_storage across send/recvmsg async punt (Jeff Moyer) [1784478] - [fs] io_uring: cancel pending async work if task exits (Jeff Moyer) [1784478] - [fs] io-wq: add io_wq_cancel_pid() to cancel based on a specific pid (Jeff Moyer) [1784478] - [fs] io-wq: make io_wqe_cancel_work() take a match handler (Jeff Moyer) [1784478] - [fs] io_uring: fix openat/statx's filename leak (Jeff Moyer) [1784478] - [fs] io_uring: fix double prep iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix async close() with f_op->flush() (Jeff Moyer) [1784478] - [fs] io_uring: allow AT_FDCWD for non-file openat/openat2/statx (Jeff Moyer) [1784478] - [fs] io_uring: grab ->fs as part of async preparation (Jeff Moyer) [1784478] - [fs] io-wq: add support for inheriting ->fs (Jeff Moyer) [1784478] - [fs] io_uring: retry raw bdev writes if we hit -EOPNOTSUPP (Jeff Moyer) [1784478] - [fs] io_uring: add cleanup for openat()/statx() (Jeff Moyer) [1784478] - [fs] io_uring: fix iovec leaks (Jeff Moyer) [1784478] - [fs] io_uring: remove unused struct io_async_open (Jeff Moyer) [1784478] - [fs] io_uring: flush overflowed CQ events in the io_uring_poll() (Jeff Moyer) [1784478] - [fs] io_uring: statx/openat/openat2 don't support fixed files (Jeff Moyer) [1784478] - [fs] io_uring: fix deferred req iovec leak (Jeff Moyer) [1784478] - [fs] io_uring: fix 1-bit bitfields to be unsigned (Jeff Moyer) [1784478] - [fs] io_uring: get rid of delayed mm check (Jeff Moyer) [1784478] - [fs] io_uring: cleanup fixed file data table references (Jeff Moyer) [1784478] - [fs] io_uring: spin for sq thread to idle on shutdown (Jeff Moyer) [1784478] - [fs] io_uring: put the flag changing code in the same spot (Jeff Moyer) [1784478] - [fs] io_uring: iterate req cache backwards (Jeff Moyer) [1784478] - [fs] io_uring: punt even fadvise() WILLNEED to async context (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic double CQE entry for close (Jeff Moyer) [1784478] - [fs] io_uring: remove extra ->file check (Jeff Moyer) [1784478] - [fs] io_uring: don't map read/write iovec potentially twice (Jeff Moyer) [1784478] - [fs] io_uring: use the proper helpers for io_send/recv (Jeff Moyer) [1784478] - [fs] io_uring: prevent potential eventfd recursion on poll (Jeff Moyer) [1784478] - [fs] eventfd: track eventfd_signal() recursion depth (Jeff Moyer) [1784478] - [fs] io_uring: add BUILD_BUG_ON() to assert the layout of struct io_uring_sqe (Jeff Moyer) [1784478] - [fs] io_uring: add ->show_fdinfo() for the io_uring file descriptor (Jeff Moyer) [1784478] - [fs] io_uring: add support for epoll_ctl(2) (Jeff Moyer) [1784478] - [fs] eventpoll: support non-blocking do_epoll_ctl() calls (Jeff Moyer) [1784478] - [fs] eventpoll: abstract out epoll_ctl() handler (Jeff Moyer) [1784478] - [fs] io_uring: fix linked command file table usage (Jeff Moyer) [1784478] - [fs] io_uring: support using a registered personality for commands (Jeff Moyer) [1784478] - [fs] io_uring: allow registering credentials (Jeff Moyer) [1784478] - [fs] io_uring: add io-wq workqueue sharing (Jeff Moyer) [1784478] - [fs] io-wq: allow grabbing existing io-wq (Jeff Moyer) [1784478] - [fs] io_uring/io-wq: don't use static creds/mm assignments (Jeff Moyer) [1784478] - [fs] io-wq: make the io_wq ref counted (Jeff Moyer) [1784478] - [fs] io_uring: fix refcounting with batched allocations at OOM (Jeff Moyer) [1784478] - [fs] io_uring: add comment for drain_next (Jeff Moyer) [1784478] - [fs] io_uring: don't attempt to copy iovec for READ/WRITE (Jeff Moyer) [1784478] - [fs] io_uring: don't cancel all work on process exit (Jeff Moyer) [1784478] - [fs] Revert "io_uring: only allow submit from owning task" (Jeff Moyer) [1784478] - [fs] io_uring: honor IOSQE_ASYNC for linked reqs (Jeff Moyer) [1784478] - [fs] io_uring: prep req when do IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io_uring: use labeled array init in io_op_defs (Jeff Moyer) [1784478] - [fs] io_uring: optimise sqe-to-req flags translation (Jeff Moyer) [1784478] - [fs] io_uring: remove REQ_F_IO_DRAINED (Jeff Moyer) [1784478] - [fs] io_uring: file switch work needs to get flushed on exit (Jeff Moyer) [1784478] - [fs] io_uring: hide uring_fd in ctx (Jeff Moyer) [1784478] - [fs] io_uring: remove extra check in __io_commit_cqring (Jeff Moyer) [1784478] - [fs] io_uring: optimise use of ctx->drain_next (Jeff Moyer) [1784478] - [fs] RHEL-only: Add IORING_OP_OPENAT2 opcode (Jeff Moyer) [1784478] - [fs] io_uring: add support for probing opcodes (Jeff Moyer) [1784478] - [fs] io_uring: account fixed file references correctly in batch (Jeff Moyer) [1784478] - [fs] io_uring: add opcode to issue trace event (Jeff Moyer) [1784478] - [fs] io_uring: enable option to only trigger eventfd for async completions (Jeff Moyer) [1784478] - [fs] io_uring: change io_ring_ctx bool fields into bit fields (Jeff Moyer) [1784478] - [fs] io_uring: file set registration should use interruptible waits (Jeff Moyer) [1784478] - [fs] io_uring: Remove unnecessary null check (Jeff Moyer) [1784478] - [fs] io_uring: add support for send(2) and recv(2) (Jeff Moyer) [1784478] - [fs] io_uring: remove extra io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: optimise commit_sqring() for common case (Jeff Moyer) [1784478] - [fs] io_uring: optimise head checks in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: clamp to_submit in io_submit_sqes() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_SETUP_CLAMP (Jeff Moyer) [1784478] - [fs] io_uring: extend batch freeing to cover more cases (Jeff Moyer) [1784478] - [fs] io_uring: wrap multi-req freeing in struct req_batch (Jeff Moyer) [1784478] - [fs] io_uring: batch getting pcpu references (Jeff Moyer) [1784478] - [include] pcpu_ref: add percpu_ref_tryget_many() (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_MADVISE (Jeff Moyer) [1784478] - [mm] mm: make do_madvise() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add IORING_OP_FADVISE (Jeff Moyer) [1784478] - [fs] io_uring: allow use of offset == -1 to mean file position (Jeff Moyer) [1784478] - [fs] io_uring: add non-vectored read/write commands (Jeff Moyer) [1784478] - [fs] io_uring: improve poll completion performance (Jeff Moyer) [1784478] - [fs] io_uring: split overflow state into SQ and CQ side (Jeff Moyer) [1784478] - [fs] io_uring: add lookup table for various opcode needs (Jeff Moyer) [1784478] - [fs] io_uring: remove two unnecessary function declarations (Jeff Moyer) [1784478] - [fs] io_uring: move *queue_link_head() from common path (Jeff Moyer) [1784478] - [fs] io_uring: rename prev to head (Jeff Moyer) [1784478] - [fs] io_uring: add IOSQE_ASYNC (Jeff Moyer) [1784478] - [fs] io-wq: support concurrent non-blocking work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_STATX (Jeff Moyer) [1784478] - [fs] fs: make two stat prep helpers available (Jeff Moyer) [1784478] - [fs] io_uring: avoid ring quiesce for fixed file set unregister and update (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CLOSE (Jeff Moyer) [1784478] - [fs] io-wq: add support for uncancellable work (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_OPENAT (Jeff Moyer) [1784478] - [fs] fs: make build_open_flags() available internally (Jeff Moyer) [1784478] - [fs] io_uring: add support for fallocate() (Jeff Moyer) [1784478] - [fs] io_uring: fix compat for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: only allow submit from owning task (Jeff Moyer) [1784478] - [fs] io_uring: ensure workqueue offload grabs ring mutex for poll list (Jeff Moyer) [1784478] - [fs] io_uring: clear req->result always before issuing a read/write request (Jeff Moyer) [1784478] - [fs] io_uring: be consistent in assigning next work from handler (Jeff Moyer) [1784478] - [fs] io-wq: cancel work if we fail getting a mm reference (Jeff Moyer) [1784478] - [fs] io_uring: don't setup async context for read/write fixed (Jeff Moyer) [1784478] - [fs] io_uring: remove punt of short reads to async context (Jeff Moyer) [1784478] - [fs] io-wq: add cond_resched() to worker thread (Jeff Moyer) [1784478] - [fs] io-wq: remove unused busy list from io_sqe (Jeff Moyer) [1784478] - [fs] io_uring: pass in 'sqe' to the prep handlers (Jeff Moyer) [1784478] - [fs] io_uring: standardize the prep methods (Jeff Moyer) [1784478] - [fs] io_uring: read 'count' for IORING_OP_TIMEOUT in prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_{SEND, RECV}_MGS to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: move all prep state for IORING_OP_CONNECT to prep handler (Jeff Moyer) [1784478] - [fs] io_uring: add and use struct io_rw for read/writes (Jeff Moyer) [1784478] - [fs] io_uring: use u64_to_user_ptr() consistently (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_submit_work() should not touch req->rw (Jeff Moyer) [1784478] - [fs] io_uring: don't wait when under-submitting (Jeff Moyer) [1784478] - [fs] io_uring: warn about unhandled opcode (Jeff Moyer) [1784478] - [fs] io_uring: read opcode and user_data from SQE exactly once (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_TIMEOUT_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_OP_CANCEL_ASYNC deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make IORING_POLL_ADD and IORING_POLL_REMOVE deferrable (Jeff Moyer) [1784478] - [fs] io_uring: make HARDLINK imply LINK (Jeff Moyer) [1784478] - [fs] io_uring: any deferred command must have stable sqe data (Jeff Moyer) [1784478] - [fs] io_uring: remove 'sqe' parameter to the OP helpers that take it (Jeff Moyer) [1784478] - [fs] io_uring: fix pre-prepped issue with force_nonblock == true (Jeff Moyer) [1784478] - [fs] io-wq: re-add io_wq_current_is_worker() (Jeff Moyer) [1784478] - [fs] io_uring: fix sporadic -EFAULT from IORING_OP_RECVMSG (Jeff Moyer) [1784478] - [fs] io_uring: fix stale comment and a few typos (Jeff Moyer) [1784478] - [fs] io_uring: ensure we return -EINVAL on unknown opcode (Jeff Moyer) [1784478] - [fs] io_uring: add sockets to list of files that support non-blocking issue (Jeff Moyer) [1784478] - [net] net: make socket read/write_iter() honor IOCB_NOWAIT (Jeff Moyer) [1784478] - [fs] io_uring: only hash regular files for async work execution (Jeff Moyer) [1784478] - [fs] io_uring: run next sqe inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't dynamically allocate poll data (Jeff Moyer) [1784478] - [fs] io_uring: deferred send/recvmsg should assign iov (Jeff Moyer) [1784478] - [fs] io_uring: sqthread should grab ctx->uring_lock for submissions (Jeff Moyer) [1784478] - [fs] io-wq: briefly spin for new work after finishing work (Jeff Moyer) [1784478] - [fs] io-wq: remove worker->wait waitqueue (Jeff Moyer) [1784478] - [fs] io_uring: allow unbreakable links (Jeff Moyer) [1784478] - [fs] io_uring: fix a typo in a comment (Jeff Moyer) [1784478] - [fs] io_uring: hook all linked requests via link_list (Jeff Moyer) [1784478] - [fs] io_uring: fix error handling in io_queue_link_head (Jeff Moyer) [1784478] - [fs] io_uring: use hash table for poll command lookups (Jeff Moyer) [1784478] - [fs] io-wq: clear node->next on list deletion (Jeff Moyer) [1784478] - [fs] io_uring: ensure deferred timeouts copy necessary data (Jeff Moyer) [1784478] - [fs] io_uring: allow IO_SQE_* flags on IORING_OP_TIMEOUT (Jeff Moyer) [1784478] - [fs] io_uring: handle connect -EINPROGRESS like -EAGAIN (Jeff Moyer) [1784478] - [fs] io_uring: remove io_wq_current_is_worker (Jeff Moyer) [1784478] - [fs] io_uring: remove parameter ctx of io_submit_state_start (Jeff Moyer) [1784478] - [fs] io_uring: mark us with IORING_FEAT_SUBMIT_STABLE (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted connect requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted sendmsg/recvmsg requests copy data (Jeff Moyer) [1784478] - [fs] io_uring: ensure async punted read/write requests copy iovec (Jeff Moyer) [1784478] - [fs] io_uring: add general async offload context (Jeff Moyer) [1784478] - [fs] io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: use current task creds instead of allocating a new one (Jeff Moyer) [1784478] - [fs] io_uring: fix missing kmap() declaration on powerpc (Jeff Moyer) [1784478] - [fs] io_uring: add mapping support for NOMMU archs (Jeff Moyer) [1784478] - [fs] io_uring: make poll->wait dynamically allocated (Jeff Moyer) [1784478] - [fs] io-wq: shrink io_wq_work a bit (Jeff Moyer) [1784478] - [fs] io-wq: fix handling of NUMA node IDs (Jeff Moyer) [1784478] - [fs] io_uring: use kzalloc instead of kcalloc for single-element allocations (Jeff Moyer) [1784478] - [fs] io_uring: cleanup io_import_fixed() (Jeff Moyer) [1784478] - [fs] io_uring: inline struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: store timeout's sqe->off in proper place (Jeff Moyer) [1784478] - [net] net: disallow ancillary data for __sys_{send, recv}msg_file() (Jeff Moyer) [1784478] - [net] net: separate out the msghdr copy from ___sys_{send, recv}msg() (Jeff Moyer) [1784478] - [fs] io_uring: remove superfluous check for sqe->off in io_accept() (Jeff Moyer) [1784478] - [fs] io_uring: async workers should inherit the user creds (Jeff Moyer) [1784478] - [fs] io-wq: have io_wq_create() take a 'data' argument (Jeff Moyer) [1784478] - [fs] io_uring: fix dead-hung for non-iter fixed rw (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_CONNECT (Jeff Moyer) [1784478] - [net] net: add __sys_connect_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: only return -EBUSY for submit on non-flushed backlog (Jeff Moyer) [1784478] - [fs] io_uring: only !null ptr to io_issue_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: simplify io_req_link_next() (Jeff Moyer) [1784478] - [fs] io_uring: pass only !null to io_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: remove io_free_req_find_next() (Jeff Moyer) [1784478] - [fs] io_uring: add likely/unlikely in io_get_sqring() (Jeff Moyer) [1784478] - [fs] io_uring: rename __io_submit_sqe() (Jeff Moyer) [1784478] - [fs] io_uring: improve trace_io_uring_defer() trace point (Jeff Moyer) [1784478] - [fs] io_uring: drain next sqe instead of shadowing (Jeff Moyer) [1784478] - [fs] io_uring: close lookup gap for dependent next work (Jeff Moyer) [1784478] - [fs] io_uring: allow finding next link independent of req reference count (Jeff Moyer) [1784478] - [fs] io_uring: io_allocate_scq_urings() should return a sane state (Jeff Moyer) [1784478] - [fs] io_uring: Always REQ_F_FREE_SQE for allocated sqe (Jeff Moyer) [1784478] - [fs] io_uring: io_fail_links() should only consider first linked timeout (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaking linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: remove redundant check (Jeff Moyer) [1784478] - [fs] io_uring: break links for failed defer (Jeff Moyer) [1784478] - [fs] io-wq: remove extra space characters (Jeff Moyer) [1784478] - [fs] io-wq: wait for io_wq_create() to setup necessary workers (Jeff Moyer) [1784478] - [fs] io_uring: request cancellations should break links (Jeff Moyer) [1784478] - [fs] io_uring: correct poll cancel and linked timeout expiration completion (Jeff Moyer) [1784478] - [fs] io_uring: remove dead REQ_F_SEQ_PREV flag (Jeff Moyer) [1784478] - [fs] io_uring: fix sequencing issues with linked timeouts (Jeff Moyer) [1784478] - [fs] io_uring: make req->timeout be dynamically allocated (Jeff Moyer) [1784478] - [fs] io_uring: make io_double_put_req() use normal completion path (Jeff Moyer) [1784478] - [fs] io_uring: cleanup return values from the queueing functions (Jeff Moyer) [1784478] - [fs] io_uring: io_async_cancel() should pass in 'nxt' request pointer (Jeff Moyer) [1784478] - [fs] io_uring: make POLL_ADD/POLL_REMOVE scale better (Jeff Moyer) [1784478] - [fs] io-wq: remove now redundant struct io_wq_nulls_list (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for non-fd opcodes (Jeff Moyer) [1784478] - [fs] io_uring: introduce req_need_defer() (Jeff Moyer) [1784478] - [fs] io_uring: clean up io_uring_cancel_files() (Jeff Moyer) [1784478] - [fs] io-wq: ensure free/busy list browsing see all items (Jeff Moyer) [1784478] - [fs] io_uring: ensure registered buffer import returns the IO length (Jeff Moyer) [1784478] - [fs] io_uring: Fix getting file for timeout (Jeff Moyer) [1784478] - [fs] io-wq: ensure we have a stable view of ->cur_work for cancellations (Jeff Moyer) [1784478] - [fs] io_wq: add get/put_work handlers to io_wq_create() (Jeff Moyer) [1784478] - [fs] io_uring: check for validity of ->rings in teardown (Jeff Moyer) [1784478] - [fs] io_uring: fix potential deadlock in io_poll_wake() (Jeff Moyer) [1784478] - [fs] io_uring: use correct "is IO worker" helper (Jeff Moyer) [1784478] - [fs] io_uring: make timeout sequence == 0 mean no sequence (Jeff Moyer) [1784478] - [fs] io_uring: fix -ENOENT issue with linked timer with short timeout (Jeff Moyer) [1784478] - [fs] io_uring: don't do flush cancel under inflight_lock (Jeff Moyer) [1784478] - [fs] io_uring: flag SQPOLL busy condition to userspace (Jeff Moyer) [1784478] - [fs] io_uring: make ASYNC_CANCEL work with poll and timeout (Jeff Moyer) [1784478] - [fs] io_uring: provide fallback request for OOM situations (Jeff Moyer) [1784478] - [fs] io_uring: convert accept4() -ERESTARTSYS into -EINTR (Jeff Moyer) [1784478] - [fs] io_uring: fix error clear of ->file_table in io_sqe_files_register() (Jeff Moyer) [1784478] - [fs] io_uring: separate the io_free_req and io_free_req_find_next interface (Jeff Moyer) [1784478] - [fs] io_uring: keep io_put_req only responsible for release and put req (Jeff Moyer) [1784478] - [fs] io_uring: remove passed in 'ctx' function parameter ctx if possible (Jeff Moyer) [1784478] - [fs] io_uring: reduce/pack size of io_ring_ctx (Jeff Moyer) [1784478] - [fs] io_uring: properly mark async work as bounded vs unbounded (Jeff Moyer) [1784478] - [fs] io-wq: add support for bounded vs unbunded work (Jeff Moyer) [1784478] - [fs] io-wq: io_wqe_run_queue() doesn't need to use list_empty_careful() (Jeff Moyer) [1784478] - [fs] io_uring: add support for backlogged CQ ring (Jeff Moyer) [1784478] - [fs] io_uring: pass in io_kiocb to fill/add CQ handlers (Jeff Moyer) [1784478] - [fs] io_uring: make io_cqring_events() take 'ctx' as argument (Jeff Moyer) [1784478] - [fs] io_uring: add support for linked SQE timeouts (Jeff Moyer) [1784478] - [fs] io_uring: abstract out io_async_cancel_one() helper (Jeff Moyer) [1784478] - [fs] io_uring: use inlined struct sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: Use submit info inlined into req (Jeff Moyer) [1784478] - [fs] io_uring: allocate io_kiocb upfront (Jeff Moyer) [1784478] - [fs] io_uring: io_queue_link*() right after submit (Jeff Moyer) [1784478] - [fs] io_uring: Merge io_submit_sqes and io_ring_submit (Jeff Moyer) [1784478] - [fs] io_uring: kill dead REQ_F_LINK_DONE flag (Jeff Moyer) [1784478] - [fs] io_uring: fixup a few spots where link failure isn't flagged (Jeff Moyer) [1784478] - [fs] io_uring: enable optimized link handling for IORING_OP_POLL_ADD (Jeff Moyer) [1784478] - [fs] io-wq: use proper nesting IRQ disabling spinlocks for cancel (Jeff Moyer) [1784478] - [fs] io_uring: add completion trace event (Jeff Moyer) [1784478] - [fs] io-wq: use kfree_rcu() to simplify the code (Jeff Moyer) [1784478] - [fs] io_uring: set -EINTR directly when a signal wakes up in io_cqring_wait (Jeff Moyer) [1784478] - [fs] io_uring: support for generic async request cancel (Jeff Moyer) [1784478] - [fs] io_uring: ensure we clear io_kiocb->result before each issue (Jeff Moyer) [1784478] - [fs] io_uring: io_wq_create() returns an error pointer, not NULL (Jeff Moyer) [1784478] - [fs] io_uring: fix race with canceling timeouts (Jeff Moyer) [1784478] - [fs] io_uring: support for larger fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: protect fixed file indexing with array_index_nospec() (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_OP_ACCEPT (Jeff Moyer) [1784478] - [net] net: add __sys_accept4_file() helper (Jeff Moyer) [1784478] - [fs] io_uring: io_uring: add support for async work inheriting files (Jeff Moyer) [1784478] - [fs] io_uring: replace workqueue usage with io-wq (Jeff Moyer) [1784478] - [fs] io-wq: small threadpool implementation for io_uring (Jeff Moyer) [1784478] - [fs] io_uring: Fix mm_fault with READ/WRITE_FIXED (Jeff Moyer) [1784478] - [fs] io_uring: remove index from sqe_submit (Jeff Moyer) [1784478] - [fs] io_uring: add set of tracing events (Jeff Moyer) [1784478] - [fs] io_uring: add support for canceling timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: add support for absolute timeouts (Jeff Moyer) [1784478] - [fs] io_uring: replace s->needs_lock with s->in_async (Jeff Moyer) [1784478] - [fs] io_uring: allow application controlled CQ ring size (Jeff Moyer) [1784478] - [fs] io_uring: add support for IORING_REGISTER_FILES_UPDATE (Jeff Moyer) [1784478] - [fs] io_uring: allow sparse fixed file sets (Jeff Moyer) [1784478] - [fs] io_uring: run dependent links inline if possible (Jeff Moyer) [1784478] - [fs] io_uring: don't touch ctx in setup after ring fd install (Jeff Moyer) [1784478] - [fs] io_uring: Fix leaked shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD (Jeff Moyer) [1784478] - [fs] io_uring: used cached copies of sq->dropped and cq->overflow (Jeff Moyer) [1784478] - [fs] io_uring: Fix race for sqes with userspace (Jeff Moyer) [1784478] - [fs] io_uring: Fix broken links with offloading (Jeff Moyer) [1784478] - [fs] io_uring: Fix corrupted user_data (Jeff Moyer) [1784478] - [fs] io_uring: correct timeout req sequence when inserting a new entry (Jeff Moyer) [1784478] - [fs] io_uring : correct timeout req sequence when waiting timeout (Jeff Moyer) [1784478] - [fs] io_uring: revert "io_uring: optimize submit_and_wait API" (Jeff Moyer) [1784478] - [fs] io_uring: fix logic error in io_timeout (Jeff Moyer) [1784478] - [fs] io_uring: fix up O_NONBLOCK handling for sockets (Jeff Moyer) [1784478] - [fs] io_uring: consider the overflow of sequence for timeout req (Jeff Moyer) [1784478] - [fs] io_uring: fix sequence logic for timeout requests (Jeff Moyer) [1784478] - [fs] io_uring: only flush workqueues on fileset removal (Jeff Moyer) [1784478] - [fs] io_uring: remove wait loop spurious wakeups (Jeff Moyer) [1784478] - [fs] io_uring: fix reversed nonblock flag for link submission (Jeff Moyer) [1784478] - [fs] io_uring: use __kernel_timespec in timeout ABI (Jeff Moyer) [1784478] - [fs] io_uring: make CQ ring wakeups be more efficient (Jeff Moyer) [1784478] - [fs] io_uring: compare cached_cq_tail with cq.head in_io_uring_poll (Jeff Moyer) [1784478] - [fs] io_uring: correctly handle non ->{read, write}_iter() file_operations (Jeff Moyer) [1784478] - [fs] io_uring: IORING_OP_TIMEOUT support (Jeff Moyer) [1784478] - [fs] io_uring: use cond_resched() in sqthread (Jeff Moyer) [1784478] - [fs] io_uring: fix potential crash issue due to io_get_req failure (Jeff Moyer) [1784478] - [fs] io_uring: ensure poll commands clear ->sqe (Jeff Moyer) [1784478] - [fs] io_uring: fix use-after-free of shadow_req (Jeff Moyer) [1784478] - [fs] io_uring: use kmemdup instead of kmalloc and memcpy (Jeff Moyer) [1784478] - [fs] io_uring: increase IORING_MAX_ENTRIES to 32K (Jeff Moyer) [1784478] - [fs] io_uring: make sqpoll wakeup possible with getevents (Jeff Moyer) [1784478] - [fs] io_uring: extend async work merging (Jeff Moyer) [1784478] - [fs] io_uring: limit parallelism of buffered writes (Jeff Moyer) [1784478] - [fs] io_uring: add io_queue_async_work() helper (Jeff Moyer) [1784478] - [fs] io_uring: optimize submit_and_wait API (Jeff Moyer) [1784478] - [fs] io_uring: add support for link with drain (Jeff Moyer) [1784478] - [fs] io_uring: fix wrong sequence setting logic (Jeff Moyer) [1784478] - [fs] io_uring: expose single mmap capability (Jeff Moyer) [1784478] - [fs] io_uring: allocate the two rings together (Jeff Moyer) [1784478] - [lib] percpu_ref: release percpu memory early without PERCPU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [fs] io_uring: initialize percpu refcounters using PERCU_REF_ALLOW_REINIT (Jeff Moyer) [1784478] - [include] percpu_ref: introduce PERCPU_REF_ALLOW_REINIT flag (Jeff Moyer) [1784478] - [fs] binder: fix use-after-free due to ksys_close() during fdget() (Jeff Moyer) [1784478] - [init] RHEL-only: Enable io_uring for x86 builds (Jeff Moyer) [1784478] - [arm64] compat: ARM64: always include asm-generic/compat.h (Jeff Moyer) [1784478] - [include] asm-generic: Move common compat types to asm-generic/compat.h (Jeff Moyer) [1784478]- [fs] coredump: fix crash when umh is disabled (Yauheni Kaliuta) [1845114] - [kernel] umh: fix memory leak on execve failure (Yauheni Kaliuta) [1845114] - [net] bpf: Replace zero-length array with flexible-array member (Yauheni Kaliuta) [1845114] - [net] bpf: Fix returned error sign when link doesn't support updates (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Don't attach programs to UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: cgroup: Allow multi-attach program to replace itself (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: use struct timespec instead of __kernel_timespec (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix bpf_link leak in ns_current_pid_tgid selftest (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_align verifier log patterns (Yauheni Kaliuta) [1845114] - [net] bpf, cgroup: Return ENOLINK for auto-detached links on update (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor bpf_link update handling (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add a verifier test for assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Verifier bounds tests need to be updated (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a verifier issue when assigning 32bit reg states to 64bit ones (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use-after-free in fmod_ret check (Yauheni Kaliuta) [1845114] - [net] flow_dissector: Drop BPF flow dissector prog ref on netns cleanup (Yauheni Kaliuta) [1845114] - [tools] bpf: Prevent mmap()'ing read-only maps as writable (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce returning 0 for fentry/fexit progs (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix register naming in PT_REGS s390 macros (Yauheni Kaliuta) [1845114] - [samples] samples: bpf: Fix build error (Yauheni Kaliuta) [1845114] - [net] bpf: Fix error return code in map_lookup_and_delete_elem() (Yauheni Kaliuta) [1845114] - [net] bpf: Fix sk_psock refcnt leak when receiving message (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Ensure own vmlinux.h is picked up first (Yauheni Kaliuta) [1845114] - [net] bpf: Make bpf_link_fops static (Yauheni Kaliuta) [1845114] - [tools] bpftool: Respect the -d option in struct_ops cmd (Yauheni Kaliuta) [1845114] - [net] bpf: Fix leak in LINK_UPDATE and enforce empty old_prog_fd (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix reStructuredText markup (Yauheni Kaliuta) [1845114] - [tools] libbpf: Only check mode flags in get_xdp_id (Yauheni Kaliuta) [1845114] - [tools] bpf, selftests: Add test for BPF_STX BPF_B storing R10 (Yauheni Kaliuta) [1845114] - [x86] bpf, x86: Fix encoding for lower 8-bit registers in BPF_STX BPF_B (Yauheni Kaliuta) [1845114] - [net] bpf: Forbid XADD on spilled pointers for unprivileged users (Yauheni Kaliuta) [1845114] - [tools] libbpf: Always specify expected_attach_type on program load if supported (Yauheni Kaliuta) [1845114] - [net] bpf: remove unneeded conversion to bool in __mark_reg_unknown (Yauheni Kaliuta) [1845114] - [tools] tools, bpftool: Fix struct_ops command invalid pointer free (Yauheni Kaliuta) [1845114] - [net] bpf: Fix use of sk->sk_reuseport from sk_assign (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for bpf_get_link_xdp_id (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix bpf_get_link_xdp_id flags handling (Yauheni Kaliuta) [1845114] - [net] bpf: Fix a typo "inacitve" -> "inactive" (Yauheni Kaliuta) [1845114] - [tools] libbpf: Initialize *nl_pid so gcc 10 is happy (Yauheni Kaliuta) [1845114] - [tools] bpf, lsm: Fix the file_mprotect LSM test (Yauheni Kaliuta) [1845114] - [tools] bpf: Fix spelling mistake "arithmatic" -> "arithmetic" in test_verifier (Yauheni Kaliuta) [1845114] - [lib] kbuild, btf: Fix dependencies for DEBUG_INFO_BTF (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test FD-based cgroup attachment (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for bpf_link-based cgroup attachment (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_prog replacement for an active bpf_cgroup_link (Yauheni Kaliuta) [1845114] - [net] bpf: Implement bpf_link-based cgroup BPF program attachment (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, add alu32 bounds tracking tests (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #65 error message updates for trunc of boundary-cross (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, bpf_get_stack return value add <0 (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_progs, add test to catch retval refine error handling (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, refine 32bit bound in do_refine_retval_range (Yauheni Kaliuta) [1845114] - [include] bpf: Verifier, do explicit ALU32 bounds tracking (Yauheni Kaliuta) [1845114] - [net] bpf: Verifier, do_refine_retval_range may clamp umin to 0 incorrectly (Yauheni Kaliuta) [1845114] - [init] bpf, lsm: Make BPF_LSM depend on BPF_EVENTS (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Extend sk_assign tests for UDP (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add test for sk_assign (Yauheni Kaliuta) [1845114] - [net] bpf: Don't refcount LISTEN sockets in sk_assign() (Yauheni Kaliuta) [1845114] - [net] net: Track socket refcounts in skb_steal_sock() (Yauheni Kaliuta) [1845114] - [net] bpf: Add socket assign support (Yauheni Kaliuta) [1845114] - [net] bpf: btf: Fix arg verification in btf_ctx_access() (Yauheni Kaliuta) [1845114] - [net] bpf: Simplify reg_set_min_max_inv handling (Yauheni Kaliuta) [1845114] - [documentation] bpf: lsm: Add Documentation (Yauheni Kaliuta) [1845114] - [tools] bpf: lsm: Add selftests for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Implement attach, detach and execution (Yauheni Kaliuta) [1845114] - [net] bpf: lsm: Provide attachment points for BPF LSM programs (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_PROG_TYPE_LSM (Yauheni Kaliuta) [1845114] - [tools] selftests: Add test for overriding global data value before load (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add setter for initial value for internal maps (Yauheni Kaliuta) [1845114] - [net] bpf, net: Fix build issue when net ns not configured (Yauheni Kaliuta) [1845114] - [net] bpf: Fix build warning regarding missing prototypes (Yauheni Kaliuta) [1845114] - [tools] libbpf, xsk: Init all ring members in xsk_umem__create and xsk_socket__create (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftest cases for ctx_or_null argument type (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrival of pid/tgid/comm from bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable bpf cgroup hooks to retrieve cgroup v2 and ancestor id (Yauheni Kaliuta) [1845114] - [net] bpf: Allow to retrieve cgroup v1 classid from v2 hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Add netns cookie and enable it for bpf cgroup hooks (Yauheni Kaliuta) [1845114] - [net] bpf: Enable perf event rb output for bpf cgroup progs (Yauheni Kaliuta) [1845114] - [net] bpf: Enable retrieval of socket cookie for bind/post-bind hook (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unused vairable 'bpf_xdp_link_lops' (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out attach_type to prog_type mapping for attach/detach (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out cgroup storages operations (Yauheni Kaliuta) [1845114] - [tools] bpf: Test_verifier, #70 error message updates for 32-bit right shift (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() (Yauheni Kaliuta) [1845114] - [net] bpf: Verifer, refactor adjust_scalar_min_max_vals (Yauheni Kaliuta) [1845114] - [tools] libbpf: Don't allocate 16M for log buffer by default (Yauheni Kaliuta) [1845114] - [tools] libbpf: Remove unused parameter `def` to get_map_field_int (Yauheni Kaliuta) [1845114] - [documentation] bpf: Document bpf_inspect drgn tool (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Refactor perf_event user program with libbpf bpf_link (Yauheni Kaliuta) [1845114] - [samples] samples, bpf: Move read_trace_pipe to trace_helpers (Yauheni Kaliuta) [1845114] - [tools] bpf: Add tests for bpf_sk_storage to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_sk_storage support to bpf_tcp_ca (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix mix of tabs and spaces (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Make tcp_bpf_recvmsg static (Yauheni Kaliuta) [1845114] - [net] bpf, tcp: Fix unused function warnings (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add struct_ops support (Yauheni Kaliuta) [1845114] - [tools] bpftool: Translate prog_id to its bpf prog_name (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print as a string for char array (Yauheni Kaliuta) [1845114] - [tools] bpftool: Print the enum's name instead of value (Yauheni Kaliuta) [1845114] - [tools] bpf, libbpf: Fix ___bpf_kretprobe_args1(x) macro definition (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Reset process and thread affinity after each test/sub-test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix test_progs's parsing of test numbers (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix race in tcp_rtt test (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix nanosleep for real this time (Yauheni Kaliuta) [1845114] - [tools] selftest/bpf: Fix compilation warning in sockmap_parse_prog.c (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add vmlinux.h selftest exercising tracing of syscalls (Yauheni Kaliuta) [1845114] - [tools] libbpf: Provide CO-RE variants of PT_REGS macros (Yauheni Kaliuta) [1845114] - [tools] libbpf: Ignore incompatible types with matching name during CO-RE relocation (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Ensure consistent test failure output (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix spurious failures in accept due to EAGAIN (Yauheni Kaliuta) [1845114] - [tools] tools/bpf: Move linux/types.h for selftests and bpftool (Yauheni Kaliuta) [1845114] - [net] bpf: Add missing annotations for __bpf_prog_enter() and __bpf_prog_exit() (Yauheni Kaliuta) [1845114] - [scripts] bpf_helpers_doc.py: Fix warning when compiling bpftool (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Fix usleep() implementation (Yauheni Kaliuta) [1845114] - [net] bpf: Remove bpf_image tree (Yauheni Kaliuta) [1845114] - [net] bpf: Add dispatchers to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add trampolines to kallsyms (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_add/del functions (Yauheni Kaliuta) [1845114] - [net] bpf: Add prog flag to struct bpf_ksym object (Yauheni Kaliuta) [1845114] - [net] bpf: Abstract away entire bpf_link clean up procedure (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_ksym_find function (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Make tcp_rtt test more robust to failures (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Yauheni Kaliuta) [1845114] - [net] bpf: Move ksym_tnode to bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Guarantee that useep() calls nanosleep() syscall (Yauheni Kaliuta) [1845114] - [net] bpf: Move lnode list node to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Restore message on failure to guess program type (Yauheni Kaliuta) [1845114] - [include] bpf: Add name to struct bpf_ksym (Yauheni Kaliuta) [1845114] - [net] bpf: Add struct bpf_ksym (Yauheni Kaliuta) [1845114] - [include] bpf: Add bpf_trampoline_ name prefix for DECLARE_BPF_DISPATCHER (Yauheni Kaliuta) [1845114] - [mm] x86/mm: Rename is_kernel_text to __is_kernel_text (Yauheni Kaliuta) [1845114] - [tools] bpf: Add bpf_xdp_output() helper (Yauheni Kaliuta) [1845114] - [tools] tools/testing/selftests/bpf: Add self-tests for new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [net] bpf: Added new helper bpf_get_ns_current_pid_tgid (Yauheni Kaliuta) [1845114] - [fs] fs/nsfs.c: Added ns_match (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Fix minor bash completion mistakes (Yauheni Kaliuta) [1845114] - [tools] tools: bpftool: Allow all prog/map handles for pinning objects (Yauheni Kaliuta) [1845114] - [tools] libbpf: Split BTF presence checks into libbpf- and kernel-specific parts (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add _bpftool and profiler.skel.h to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Skeleton should depend on libbpf (Yauheni Kaliuta) [1845114] - [tools] bpftool: Only build bpftool-prog-profile if supported by clang (Yauheni Kaliuta) [1845114] - [tools] bpftool: Use linux/types.h from source tree for profiler build (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Add BPF_F_CURRENT_CPU for running selftest on older kernels (Yauheni Kaliuta) [1845114] - [x86] bpf: Fix trampoline generation for fmod_ret programs (Yauheni Kaliuta) [1845114] - [net] bpf: Add bpf_link_new_file that doesn't install FD (Yauheni Kaliuta) [1845114] - [tools] bpftool: Bash completion for "bpftool prog profile" (Yauheni Kaliuta) [1845114] - [tools] bpftool: Documentation for bpftool prog profile (Yauheni Kaliuta) [1845114] - [tools] bpftool: Introduce "prog profile" command (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Enable UDP sockmap reuseport tests (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Add tests for UDP sockets in sockmap (Yauheni Kaliuta) [1845114] - [tools] selftests: bpf: Don't listen() on UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Add UDP support (Yauheni Kaliuta) [1845114] - [net] bpf: Add sockmap hooks for UDP sockets (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Simplify sock_map_init_proto (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Move generic sockmap hooks from BPF TCP (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Guard declarations with CONFIG_NET_SOCK_MSG (Yauheni Kaliuta) [1845114] - [net] bpf: tcp: Move assertions into tcp_bpf_get_proto (Yauheni Kaliuta) [1845114] - [net] skmsg: Update saved hooks only once (Yauheni Kaliuta) [1845114] - [net] bpf: sockmap: Only check ULP for TCP sockets (Yauheni Kaliuta) [1845114] - [kernel] bpf: Fix bpf_prog_test_run_tracing for !CONFIG_NET (Yauheni Kaliuta) [1845114] - [net] bpf: Remove unnecessary CAP_MAC_ADMIN check (Yauheni Kaliuta) [1845114] - [tools] bpf: Add selftests for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [tools] bpf: Add test ops for BPF_PROG_TYPE_TRACING (Yauheni Kaliuta) [1845114] - [tools] tools/libbpf: Add support for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Attachment verification for BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce BPF_MODIFY_RETURN (Yauheni Kaliuta) [1845114] - [x86] bpf: JIT helpers for fmod_ret progs (Yauheni Kaliuta) [1845114] - [net] bpf: Refactor trampoline update code (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Support out-of-tree vmlinux builds for VMLINUX_BTF (Yauheni Kaliuta) [1845114] - [tools] tools/runqslower: Drop copy/pasted BPF_F_CURRENT_CPU definiton (Yauheni Kaliuta) [1845114] - [tools] libbpf: Assume unsigned values for BTF_KIND_ENUM (Yauheni Kaliuta) [1845114] - [tools] bpf: Switch BPF UAPI #define constants used from BPF program side to enums (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Test new __sk_buff field gso_size (Yauheni Kaliuta) [1845114] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1845114] - [net] bpf: Add gso_size to __sk_buff (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add link pinning selftests (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add bpf_link pinning/unpinning (Yauheni Kaliuta) [1845114] - [net] bpf: Introduce pinnable bpf_link abstraction (Yauheni Kaliuta) [1845114] - [tools] libbpf: Merge selftests' bpf_trace_helpers.h into libbpf's bpf_tracing.h (Yauheni Kaliuta) [1845114] - [tools] libbpf: Fix use of PT_REGS_PARM macros with vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] bpftool: Add header guards to generated vmlinux.h (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add test for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] selftests/tpm2: Add log and *.pyc to .gitignore (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update bash completion for "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Update documentation of "bpftool feature" command (Yauheni Kaliuta) [1845114] - [tools] bpftool: Make probes which emit dmesg warnings optional (Yauheni Kaliuta) [1845114] - [tools] bpftool: Move out sections to separate functions (Yauheni Kaliuta) [1845114] - [tools] bpftool: Support struct_ops, tracing, ext prog types (Yauheni Kaliuta) [1845114] - [scripts] scripts/bpf: Switch to more portable python3 shebang (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Print backtrace on SIGSEGV in test_progs (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Run reuseport tests only with supported socket types (Yauheni Kaliuta) [1845114] - [net] bpf/stackmap: Dont trylock mmap_sem with PREEMPT_RT and interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf, lpm: Make locking RT friendly (Yauheni Kaliuta) [1845114] - [net] bpf: Prepare hashtab locking for PREEMPT_RT (Yauheni Kaliuta) [1845114] - [net] bpf: Factor out hashtab bucket lock operations (Yauheni Kaliuta) [1845114] - [net] bpf: Replace open coded recursion prevention in sys_bpf() (Yauheni Kaliuta) [1845114] - [net] bpf: Use recursion prevention helpers in hashtab code (Yauheni Kaliuta) [1845114] - [include] bpf: Provide recursion prevention helpers (Yauheni Kaliuta) [1845114] - [include] bpf: Use migrate_disable/enable in array macros and cgroup/lirc code (Yauheni Kaliuta) [1845114] - [net] bpf: Use migrate_disable/enabe() in trampoline code (Yauheni Kaliuta) [1845114] - [lib] bpf/tests: Use migrate disable instead of preempt disable (Yauheni Kaliuta) [1845114] - [net] bpf: Use bpf_prog_run_pin_on_cpu() at simple call sites (Yauheni Kaliuta) [1845114] - [include] bpf: Replace cant_sleep() with cant_migrate() (Yauheni Kaliuta) [1845114] - [include] bpf: Provide bpf_prog_run_pin_on_cpu() helper (Yauheni Kaliuta) [1845114] - [include] sched/rt: Provide migrate_disable/enable() inlines (Yauheni Kaliuta) [1845114] - [include] sched: Provide cant_migrate() (Yauheni Kaliuta) [1845114] - [net] bpf: Dont iterate over possible CPUs with interrupts disabled (Yauheni Kaliuta) [1845114] - [net] bpf: Remove recursion prevention from rcu free callback (Yauheni Kaliuta) [1845114] - [kernel] perf/bpf: Remove preempt disable around BPF invocation (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove redundant preempt_disable from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf: disable preemption for bpf progs attached to uprobe (Yauheni Kaliuta) [1845114] - [kernel] bpf/trace: Remove EXPORT from trace_call_bpf() (Yauheni Kaliuta) [1845114] - [kernel] bpf/tracing: Remove redundant preempt_disable() in __bpf_trace_run() (Yauheni Kaliuta) [1845114] - [net] bpf: Update locking comment in hashtab code (Yauheni Kaliuta) [1845114] - [net] bpf: Enforce preallocation for instrumentation programs on RT (Yauheni Kaliuta) [1845114] - [net] bpf: Tighten the requirements for preallocated hash maps (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Tests for sockmap/sockhash holding listening sockets (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Extend SK_REUSEPORT tests to cover SOCKMAP/SOCKHASH (Yauheni Kaliuta) [1845114] - [documentation] docs/bpf: Update bpf development Q/A file (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Update xdp_bpf2bpf test to use new set_attach_target API (Yauheni Kaliuta) [1845114] - [tools] libbpf: Add support for dynamic program attach target (Yauheni Kaliuta) [1845114] - [tools] libbpf: Bump libpf current version to v0.0.8 (Yauheni Kaliuta) [1845114] - [tools] libbpf: Relax check whether BTF is mandatory (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Change llvm flag -mcpu=probe to -mcpu=v3 (Yauheni Kaliuta) [1845114] - [tools] selftests/bpf: Add bpf_read_branch_records() selftest (Yauheni Kaliuta) [1845114] - [kernel] bpf: Add bpf_read_branch_records() helper (Yauheni Kaliuta) [1845114] - [kernel] bpf: Allow bpf_perf_event_read_value in all BPF programs (Yauheni Kaliuta) [1845114] - [dma] dma-direct: improve DMA mask overflow reporting (Don Dutile) [1816437] - [dma] dma-direct: improve swiotlb error reporting (Don Dutile) [1816437] - [dma] dma-direct: relax addressability checks in dma_direct_supported (Don Dutile) [1816437] - [dma] dma-contiguous: CMA: give precedence to cmdline (Don Dutile) [1816437] - [misc] lib/genalloc.c: rename addr_in_gen_pool to gen_pool_has_addr (Don Dutile) [1816437] - [lib] lib/genalloc.c: export symbol addr_in_gen_pool (Don Dutile) [1816437] - [acpi] dma-mapping: treat dev->bus_dma_mask as a DMA limit (Don Dutile) [1816437] - [powerpc] dma-direct: unify the dma_capable definitions (Don Dutile) [1816437] - [of] of/device: Really only set bus DMA mask when appropriate (Don Dutile) [1816437] - [dma] dma-direct: exclude dma_direct_map_resource from the min_low_pfn check (Don Dutile) [1816437] - [dma] dma-debug: clean up put_hash_bucket() (Don Dutile) [1816437] - [iommu] dma-mapping: drop the dev argument to arch_sync_dma_for_* (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify cache maintainance (Don Dutile) [1816437] - [xen] swiotlb-xen: simplify the DMA sync method implementations (Don Dutile) [1816437] - [dma] dma-debug: increase HASH_SIZE (Don Dutile) [1816437] - [dma] dma-debug: reorder struct dma_debug_entry fields (Don Dutile) [1816437] - [dma] dma-mapping: merge the generic remapping helpers into dma-direct (Don Dutile) [1816437] - [dma] dma-direct: provide mmap and get_sgtable method overrides (Don Dutile) [1816437] - [dma] dma-direct: remove the dma_handle argument to __dma_direct_alloc_pages (Don Dutile) [1816437] - [dma] dma-direct: remove __dma_direct_free_pages (Don Dutile) [1816437] - [mm] dma/direct: turn ARCH_ZONE_DMA_BITS into a variable (Don Dutile) [1816437] - [dma] dma-direct: check for overflows on 32 bit DMA addresses (Don Dutile) [1816437] - [s390] s390/dma: provide proper ARCH_ZONE_DMA_BITS value (Don Dutile) [1816437] - [mm] powerpc: fix off by one in max_zone_pfn initialization for ZONE_DMA (Don Dutile) [1816437] - [powerpc] powerpc: enable a 30-bit ZONE_DMA for 32-bit pmac (Don Dutile) [1816437] - [mm] arm64: rename variables used to calculate ZONE_DMA32's size (Don Dutile) [1816437] - [mm] arm64: mm: use arm64_dma_phys_limit instead of calling max_zone_dma_phys() (Don Dutile) [1816437] - [mm] arm64: mm: make CONFIG_ZONE_DMA32 configurable (Don Dutile) [1816437] - [dma] kernel: dma-contiguous: mark CMA parameters __initdata/__initconst (Don Dutile) [1816437] - [dma] dma-debug: add a schedule point in debug_dma_dump_mappings() (Don Dutile) [1816437] - [dma] dma-debug: Use pr_warn instead of pr_warning (Don Dutile) [1816437] - [dma] dma-mapping: fix false positivse warnings in dma_common_free_remap() (Don Dutile) [1816437] - [xen] swiotlb-xen: ensure we have a single callsite for xen_dma_map_page (Don Dutile) [1816437] - [iommu] dma-mapping: introduce a dma_common_find_pages helper (Don Dutile) [1816437] - [iommu] dma-mapping: always use VM_DMA_COHERENT for generic DMA remap (Don Dutile) [1816437] - [mm] vmalloc: lift the arm flag for coherent mappings to common code (Don Dutile) [1816437] - [mm] dma-mapping: provide a better default ->get_required_mask (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_declare_coherent_memory export (Don Dutile) [1816437] - [dma] dma-mapping: remove the dma_mmap_from_dev_coherent export (Don Dutile) [1816437] - [dma] dma-mapping: remove CONFIG_ARCH_NO_COHERENT_DMA_MMAP (Don Dutile) [1816437] - [dma] dma-mapping: add a dma_can_mmap helper (Don Dutile) [1816437] - [powerpc] dma-mapping: explicitly wire up ->mmap and ->get_sgtable (Don Dutile) [1816437] - [mm] dma-mapping: move the dma_get_sgtable API comments from arm to common code (Don Dutile) [1816437] - [dma] dma-mapping: introduce dma_get_merge_boundary() (Don Dutile) [1816437] - [mm] dma-mapping: make dma_atomic_pool_init self-contained (Don Dutile) [1816437] - [arm64] dma-mapping: remove arch_dma_mmap_pgprot (Don Dutile) [1816437] - [scsi] scsi: ibmvscsi: Don't send host info in adapter info MAD after LPM (Steve Best) [1847078] - [fs] NFS: Fix inode fileid checks in attribute revalidation code (Benjamin Coddington) [1846295] - [fs] NFS: remove set but not used variable 'mapping' (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix write regression (Benjamin Coddington) [1846295] - [fs] NFSv2: Fix eof handling (Benjamin Coddington) [1846295] - [fs] NFS: Fix writepage(s) error handling to not report errors twice (Benjamin Coddington) [1846295] - [fs] NFS: Fix spurious EIO read errors (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Don't time out requests on hard mounts (Benjamin Coddington) [1846295] - [net] SUNRPC: Handle EADDRINUSE and ENOBUFS correctly (Benjamin Coddington) [1846295] - [fs] pNFS/flexfiles: Turn off soft RPC calls (Benjamin Coddington) [1846295] - [fs] NFS: On fatal writeback errors, we need to call nfs_inode_remove_request() (Benjamin Coddington) [1846295] - [fs] NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return value in nfs_finish_open() (Benjamin Coddington) [1846295] - [fs] NFSv4: Fix return values for nfs4_file_open() (Benjamin Coddington) [1846295] - [fs] NFS: Don't refresh attributes with mounted-on-file information (Benjamin Coddington) [1846295] - [fs] NFSv4: Ensure state recovery handles ETIMEDOUT correctly (Benjamin Coddington) [1846295] - [fs] NFSv4: Report the error from nfs4_select_rw_stateid() (Benjamin Coddington) [1846295] - [fs] NFSv4: Print an error in the syslog when state is marked as irrecoverable (Benjamin Coddington) [1846295] - [net] SUNRPC: Optimise transport balancing code (Benjamin Coddington) [1846295] - [fs] NFSv4: Don't use the zero stateid with layoutget (Benjamin Coddington) [1846295] - [net] SUNRPC: Fix up backchannel slot table accounting (Benjamin Coddington) [1846295] - [net] SUNRPC: Skip zero-refcount transports (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace division by multiplication in calculation of queue length (Benjamin Coddington) [1846295] - [fs] NFSv4: Validate the stateid before applying it to state recovery (Benjamin Coddington) [1846295] - [fs] nfs4.0: Refetch lease_time after clientid update (Benjamin Coddington) [1846295] - [fs] nfs4: Rename nfs41_setup_state_renewal (Benjamin Coddington) [1846295] - [fs] nfs4: Make nfs4_proc_get_lease_time available for nfs4.0 (Benjamin Coddington) [1846295] - [fs] nfs: Fix copy-and-paste error in debug message (Benjamin Coddington) [1846295] - [fs] NFS: Replace 16 seq_printf() calls by seq_puts() (Benjamin Coddington) [1846295] - [fs] NFS: Use seq_putc() in nfs_show_stats() (Benjamin Coddington) [1846295] - [fs] nfsd: Fix misuse of strlcpy (Benjamin Coddington) [1846295] - [net] SUNRPC: Drop redundant CONFIG_ from CONFIG_SUNRPC_DISABLE_INSECURE_ENCTYPES (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup if nfs_match_client is interrupted (Benjamin Coddington) [1846295] - [fs] nfs: disable client side deduplication (Benjamin Coddington) [1846295] - [fs] NFS: Clean up writeback code (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove warning in debugfs.c when compiling with W=1 (Benjamin Coddington) [1846295] - [fs] NFS: Add sysfs support for per-container identifier (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on the rpc_wait_queue->lock (Benjamin Coddington) [1846295] - [fs] NFS: Cleanup - add nfs_clients_exit to mirror nfs_clients_init (Benjamin Coddington) [1846295] - [fs] NFS: Create a root NFS directory in /sys/fs/nfs (Benjamin Coddington) [1846295] - [net] SUNRPC: Remove the bh-safe lock requirement on xprt->transport_lock (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace direct task wakeups from softirq context (Benjamin Coddington) [1846295] - [net] SUNRPC: Replace the queue timer with a delayed work function (Benjamin Coddington) [1846295] - [fs] NFSv4: Handle open for execute correctly (Benjamin Coddington) [1846295] - [fs] nfs: dget_parent() never returns NULL (Benjamin Coddington) [1846295] - [net] nfs: fix out-of-date connectathon talk URL (Benjamin Coddington) [1846295] - [fs] nfsd4: remove outdated nfsd4_decode_time comment (Benjamin Coddington) [1846295] - [fs] nfsd: Spelling s/EACCESS/EACCES/ (Benjamin Coddington) [1846295] - [fs] lockd: Make two symbols static (Benjamin Coddington) [1846295] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1846295] - [fs] lockd: Remove lm_compare_owner and lm_owner_key (Benjamin Coddington) [1846295] - [fs] lockd: Convert NLM service fl_owner to nlm_lockowner (Benjamin Coddington) [1846295] - [fs] lockd: prepare nlm_lockowner for use by the server (Benjamin Coddington) [1846295] - [net] sunrpc: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] nfsd: no need to check return value of debugfs_create functions (Benjamin Coddington) [1846295] - [fs] xfs: add agf freeblocks verify in xfs_agf_verify (Brian Foster) [1837192] {CVE-2020-12655} - [scsi] scsi: iscsi: Fix deadlock on recovery path during GFP_IO reclaim (Chris Leech) [1830140] - [scsi] scsi: iscsi: Register sysfs for iscsi workqueue (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report unbind session event when the target has been removed (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix error count for active session (Chris Leech) [1830140] - [scsi] scsi: iscsi: Report connection state in sysfs (Chris Leech) [1830140] - [scsi] scsi: iscsi: Add support for asynchronous iSCSI session destruction (Chris Leech) [1830140] - [scsi] scsi: iscsi: Perform connection failure entirely in kernel space (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't destroy session if there are outstanding connections (Chris Leech) [1830140] - [scsi] scsi: iscsi: Fix a potential deadlock in the timeout handler (Chris Leech) [1830140] - [scsi] scsi: iscsi: Don't send data to unbound connection (Chris Leech) [1830140] - [scsi] scsi: libiscsi: switch to SPDX tags (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Hold back_lock when calling iscsi_complete_task (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Use scsi_et_resid() where appropriate (Chris Leech) [1830140] - [scsi] scsi: iscsi: Capture iscsi debug messages using tracepoints (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset (Chris Leech) [1830140] - [scsi] scsi: iscsi_tcp: Explicitly cast param in iscsi_sw_tcp_host_get_param (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate fall-through (Chris Leech) [1830140] - [scsi] scsi: libiscsi: Annotate locking assumptions (Chris Leech) [1830140] - [nvme] nvmet: fail outstanding host posted AEN req (David Milburn) [1833642] - [nvme] nvmet: add async event tracing support (David Milburn) [1833642] - [nvme] nvmet: cleanups the loop in nvmet_async_events_process (David Milburn) [1833642] - [nvme] nvmet: fix memory leak when removing namespaces and controllers concurrently (David Milburn) [1833642] - [netdrv] ibmvnic: Flush existing work items before device removal (Steve Best) [1846761] - [kernel] signal: Extend exec_id to 64bits (Chris von Recklinghausen) [1834652] {CVE-2020-12826}- [arm64] docs: fix broken references to text files (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move __load_guest_stage2 to kvm_mmu.h (Andrew Jones) [1842468] - [arm64] kvm: arm64: Drop obsolete comment about sys_reg ordering (Andrew Jones) [1842468] - [arm64] kvm: arm64: Parametrize exception entry with a target EL (Andrew Jones) [1842468] - [arm64] kvm: arm64: Don't use empty structures as CPU reset state (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move sysreg reset check to boot time (Andrew Jones) [1842468] - [arm64] kvm: arm64: Add missing reset handlers for PMU emulation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Refactor vcpu_{read, write}_sys_reg (Andrew Jones) [1842468] - [arm64] kvm: arm64: vgic-v3: Take cpu_if pointer directly instead of vcpu (Andrew Jones) [1842468] - [arm64] kvm: arm64: Remove obsolete kvm_virt_to_phys abstraction (Andrew Jones) [1842468] - [arm64] kvm: arm64: Fix incorrect comment on kvm_get_hyp_vector() (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up cpu_init_hyp_mode() (Andrew Jones) [1842468] - [arm64] cpufeature: Drop open encodings while extracting parange (Andrew Jones) [1842468] - [arm64] kvm: arm64: Make KVM_CAP_MAX_VCPUS compatible with the selected GIC version (Andrew Jones) [1842468] - [arm64] kvm: arm64: Support enabling dirty log gradually in small chunks (Andrew Jones) [1842468] - [arm64] kvm: arm64: Unify handling THP backed host memory (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up the checking for huge mapping (Andrew Jones) [1842468] - [arm64] kvm: arm/arm64: Release kvm->mmu_lock in loop to prevent starvation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Sidestep stage2_unmap_vm() on vcpu reset when S2FWB is supported (Andrew Jones) [1842468] - [arm64] kvm: Fix spelling in code comments (Andrew Jones) [1842468] - [arm64] kvm: arm64: Simplify __kvm_timer_set_cntvoff implementation (Andrew Jones) [1842468] - [arm64] kvm: arm64: Clean up kvm makefiles (Andrew Jones) [1842468] - [arm64] kvm: arm64: Change CONFIG_KVM to a menuconfig entry (Andrew Jones) [1842468] - [arm64] kvm: arm64: Update help text (Andrew Jones) [1842468] - [arm64] kvm: arm64: Kill off CONFIG_KVM_ARM_HOST (Andrew Jones) [1842468] - [arm64] kvm: arm64: Move virt/kvm/arm to arch/arm64 (Andrew Jones) [1842468] - [arm64] Unify WORKAROUND_SPECULATIVE_AT_{NVHE, VHE} (Andrew Jones) [1842468] - [arm64] cpufeature: Add CPU capability for AArch32 EL1 support (Andrew Jones) [1842468] - [net] SUNRPC: Fix a credential refcount leak (Benjamin Coddington) [1831672] - [net] Revert "SUNRPC: Declare RPC timers as TIMER_DEFERRABLE" (Benjamin Coddington) [1831672] - [net] net :sunrpc :clnt :Fix xps refcount imbalance on the error path (Benjamin Coddington) [1831672] - [net] SUNRPC: Rebalance a kref in auth_gss.c (Benjamin Coddington) [1831672] - [fs] NFS: Fix a double unlock from nfs_match, get_client (Benjamin Coddington) [1831672] - [fs] nfs: pass the correct prototype to read_cache_page (Benjamin Coddington) [1831672] - [fs] NFSv4: don't mark all open state for recovery when handling recallable state revoked flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix an error code in gss_alloc_msg() (Benjamin Coddington) [1831672] - [net] SUNRPC: task should be exit if encode return EKEYEXPIRED more times (Benjamin Coddington) [1831672] - [fs] NFS: make nfs_match_client killable (Benjamin Coddington) [1831672] - [fs] nfsd: update callback done processing (Benjamin Coddington) [1831672] - [fs] lockd: Store the lockd client credential in struct nlm_host (Benjamin Coddington) [1831672] - [fs] NFS: When mounting, don't share filesystems between different user namespaces (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv2 to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFSv4: Convert the NFS client idmapper to use the container user namespace (Benjamin Coddington) [1831672] - [fs] NFS: Convert NFSv3 to use the container user namespace (Benjamin Coddington) [1831672] - [net] SUNRPC: Use namespace of listening daemon in the client AUTH_GSS upcall (Benjamin Coddington) [1831672] - [net] net: Remove some unneeded semicolon (Benjamin Coddington) [1831672] - [net] SUNRPC: Use the client user namespace when encoding creds (Benjamin Coddington) [1831672] - [fs] NFS: Store the credential of the mount process in the nfs_server (Benjamin Coddington) [1831672] - [fs] SUNRPC: Cache cred of process creating the rpc_client (Benjamin Coddington) [1831672] - [net] SUNRPC: Update comments based on recent changes (Benjamin Coddington) [1831672] - [net] SUNRPC: Avoid digging into the ATOMIC pool (Benjamin Coddington) [1831672] - [net] xprtrdma: Recognize XDRBUF_SPARSE_PAGES (Benjamin Coddington) [1831672] - [fs] Fix nfs4.2 return -EINVAL when do dedupe operation (Benjamin Coddington) [1831672] - [fs] NFS: Remove redundant open context from nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Add a helper to return a pointer to the open context of a struct nfs_page (Benjamin Coddington) [1831672] - [fs] NFS: Ensure that all nfs lock contexts have a valid open context (Benjamin Coddington) [1831672] - [fs] NFS: Allow signal interruption of NFS4ERR_DELAYed operations (Benjamin Coddington) [1831672] - [fs] pNFS: Add tracking to limit the number of pNFS retries (Benjamin Coddington) [1831672] - [fs] NFS: Remove unused argument from nfs_create_request() (Benjamin Coddington) [1831672] - [fs] NFS: Fix up NFS I/O subrequest creation (Benjamin Coddington) [1831672] - [fs] NFS: Replace custom error reporting mechanism with generic one (Benjamin Coddington) [1831672] - [fs] NFS: Don't inadvertently clear writeback errors (Benjamin Coddington) [1831672] - [fs] NFS: Don't call generic_error_remove_page() while holding locks (Benjamin Coddington) [1831672] - [fs] NFS: Don't interrupt file writeout due to fatal errors (Benjamin Coddington) [1831672] - [fs] NFS: Add a mount option "softerr" to allow clients to see ETIMEDOUT errors (Benjamin Coddington) [1831672] - [uapi] NFS: Move internal constants out of uapi/linux/nfs_mount.h (Benjamin Coddington) [1831672] - [fs] NFS: Consider ETIMEDOUT to be a fatal error (Benjamin Coddington) [1831672] - [net] SUNRPC: Add the 'softerr' rpc_client flag (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure to ratelimit the "server not responding" syslog messages (Benjamin Coddington) [1831672] - [net] SUNRPC: Start the first major timeout calculation at task creation (Benjamin Coddington) [1831672] - [net] SUNRPC: Ensure that the transport layer respect major timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Declare RPC timers as TIMER_DEFERRABLE (Benjamin Coddington) [1831672] - [net] SUNRPC: Simplify queue timeouts using timer_reduce() (Benjamin Coddington) [1831672] - [net] SUNRPC: Fix up tracking of timeouts (Benjamin Coddington) [1831672] - [net] SUNRPC: Add function rpc_sleep_on_timeout() (Benjamin Coddington) [1831672] - [fs] SUNRPC: Remove unused argument 'action' from rpc_sleep_on_priority() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor rpc_sleep_on() (Benjamin Coddington) [1831672] - [net] SUNRPC: Refactor xprt_request_wait_receive() (Benjamin Coddington) [1831672] - [fs] nfsd: fh_drop_write in nfsd_unlink (Benjamin Coddington) [1831672] - [fs] nfsd: avoid uninitialized variable warning (Benjamin Coddington) [1831672] - [netdrv] Revert "net: phy: realtek: fix using paged operations with RTL8105e / RTL8208" (Josef Oskera) [1846022] - [netdrv] ice: Fix Tx timeout when link is toggled on a VF's interface (Jonathan Toppins) [1843144] - [netdrv] ice: add a devlink region for dumping NVM contents (Jonathan Toppins) [1843144] - [nvme] nvme-fc: print proper nvme-fc devloss_tmo value (Gopal Tiwari) [1846049] - [acpi] ACPI: EC: PM: Avoid flushing EC work when EC GPE is inactive (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: Add acpi_register_wakeup_handler() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Refine active GPEs check (Al Stone) [1803969] - [acpi] ACPICA: Allow acpi_any_gpe_status_set() to skip one GPE (Al Stone) [1803969] - [base] PM: sleep: wakeup: Skip wakeup_source_sysfs_remove() if device is not there (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Check fixed wakeup events in acpi_s2idle_wake() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late() (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: Make resuming thermal profile safer (Al Stone) [1803969] - [platform] platform/x86: sony-laptop: SNC calls should handle BUFFER types (Al Stone) [1803969] - [acpi] ACPI: Update Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: EC: Avoid printing confusing messages in acpi_ec_setup() (Al Stone) [1803969] - [acpi] ACPI: EC: Fix flushing of pending work (Al Stone) [1803969] - [base] PM / wakeup: Register wakeup class kobj after device is added (Al Stone) [1803969] - [base] PM / wakeup: Fix sysfs registration error path (Al Stone) [1803969] - [base] PM / wakeup: Unexport wakeup_source_sysfs_{add, remove}() (Al Stone) [1803969] - [kernel] PM: suspend: Fix platform_suspend_prepare_noirq() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Prevent spurious SCIs from waking up the system (Al Stone) [1803969] - [acpi] ACPICA: Introduce acpi_any_gpe_status_set() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid possible race related to the EC GPE (Al Stone) [1803969] - [acpi] ACPI: watchdog: Allow disabling WDAT at boot (Al Stone) [1803969] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08-Lite I2C controller (Al Stone) [1803969] - [acpi] ACPI: thermal: switch to use helpers (Al Stone) [1803969] - [acpi] ACPI/IORT: Fix 'Number of IDs' handling in iort_id_map() (Al Stone) [1803969] - [acpi] ACPI/IORT: Parse SSID property of named component node (Al Stone) [1803969] - [iommu] iommu/arm-smmu-v3: Parse PASID devicetree property of platform devices (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20200110 (Al Stone) [1803969] - [acpi] ACPICA: All acpica: Update copyrights to 2020 Including tool signons (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Razer Blade Stealth 13 late 2019 lid switch (Al Stone) [1803969] - [acpi] ACPI: PPTT: Consistently use unsigned int as parameter type (Al Stone) [1803969] - [acpi] ACPI: EC: Reference count query handlers under lock (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191213 (Al Stone) [1803969] - [acpi] ACPICA: Dispatcher: always generate buffer objects for ASL create_field() operator (Al Stone) [1803969] - [acpi] ACPICA: acpisrc: add unix line ending support for non-windows build (Al Stone) [1803969] - [acpi] ACPICA: Disassembler: create buffer fields in ACPI_PARSE_LOAD_PASS1 (Al Stone) [1803969] - [acpi] ACPICA: debugger: fix spelling mistake "adress" -> "address" (Al Stone) [1803969] - [acpi] ACPI: video: Do not export a non working backlight interface on MSI MS-7721 boards (Al Stone) [1803969] - [acpi] ACPI: fan: Add Tiger Lake ACPI device ID (Al Stone) [1803969] - [acpi] ACPI: DPTF: Add Tiger Lake ACPI device IDs (Al Stone) [1803969] - [acpi] ACPI: fan: Expose fan performance state information (Al Stone) [1803969] - [acpi] ACPI / LPSS: Rename pwm_backlight pwm-lookup to pwm_soc_backlight (Al Stone) [1803969] - [acpi] ACPI: video: Use native backlight on Lenovo E41-25/45 (Al Stone) [1803969] - [acpi] ACPI: video: fix typo in comment (Al Stone) [1803969] - [acpi] ACPI / battery: Deal better with neither design nor full capacity not being reported (Al Stone) [1803969] - [acpi] ACPI / battery: Use design-cap for capacity calculations if full-cap is not available (Al Stone) [1803969] - [acpi] ACPI / battery: Deal with design or full capacity being reported as -1 (Al Stone) [1803969] - [acpi] ACPI/sleep: Convert acpi_wakeup_address into a function (Al Stone) [1803969] - [acpi] ACPI: PM: Avoid attaching ACPI PM domain to certain devices (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rework ACPI events synchronization (Al Stone) [1803969] - [acpi] ACPI: EC: Rework flushing of pending work (Al Stone) [1803969] - [acpi] ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data() (Al Stone) [1803969] - [acpi] ACPI: Fix Kconfig indentation (Al Stone) [1803969] - [acpi] ACPI: OSL: only free map once in osl.c (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Acer Switch 10 SW5-032 lid-switch (Al Stone) [1803969] - [acpi] ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100 (Al Stone) [1803969] - [acpi] ACPI: OSI: Shoot duplicate word (Al Stone) [1803969] - [acpi] ACPI: HMAT: use u instead of d to print u32 values (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: fix a section mismatch (Al Stone) [1803969] - [acpi] ACPI: HMAT: don't mix pxm and nid when setting memory target processor_pxm (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register "soft reserved" memory as an "hmem" device (Al Stone) [1803969] - [acpi] ACPI: NUMA: HMAT: Register HMAT at device_initcall level (Al Stone) [1803969] - [acpi] ACPI: NUMA: Establish a new drivers/acpi/numa/ directory (Al Stone) [1803969] - [x86] x86/efi: EFI soft reservation to E820 enumeration (Al Stone) [1803969] - [firmware] efi: Common enable/disable infrastructure for EFI soft reservation (Al Stone) [1803969] - [firmware] efi: Enumerate EFI_MEMORY_SP (Al Stone) [1803969] - [dax] device-dax: Add a driver for "hmem" devices (Al Stone) [1803969] - [nvdimm] lib: Uplevel the pmem "region" ida to a global allocator (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20191018 (Al Stone) [1803969] - [acpi] ACPICA: debugger: remove leading whitespaces when converting a string to a buffer (Al Stone) [1803969] - [acpi] ACPICA: acpiexec: initialize all simple types and field units from user input (Al Stone) [1803969] - [acpi] ACPICA: debugger: add field unit support for acpi_db_get_next_token (Al Stone) [1803969] - [acpi] ACPICA: debugger: surround field unit output with braces '{' (Al Stone) [1803969] - [acpi] ACPICA: debugger: add command to dump all fields of particular subtype (Al Stone) [1803969] - [acpi] ACPICA: utilities: add flag to only display data when dumping buffers (Al Stone) [1803969] - [acpi] ACPICA: make acpi_load_table() return table index (Al Stone) [1803969] - [acpi] ACPICA: Add new external interface, acpi_unload_table() (Al Stone) [1803969] - [acpi] ACPICA: More Clang changes (Al Stone) [1803969] - [acpi] ACPICA: Win OSL: Replace get_tick_count with get_tick_count64 (Al Stone) [1803969] - [acpi] ACPICA: Results from Clang (Al Stone) [1803969] - [acpi] ACPI: EC: add support for hardware-reduced systems (Al Stone) [1803969] - [acpi] ACPI: EC: tweak naming in preparation for GpioInt support (Al Stone) [1803969] - [acpi] ACPI: button: Remove unused acpi_lid_notifier_register() functions (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Asus T200TA (Al Stone) [1803969] - [acpi] ACPI: button: Add DMI quirk for Medion Akoya E2215T (Al Stone) [1803969] - [acpi] ACPI: button: Turn lid_blacklst DMI table into a generic quirk table (Al Stone) [1803969] - [acpi] ACPI: button: Allow disabling LID support with the lid_init_state module option (Al Stone) [1803969] - [acpi] ACPI: button: Refactor lid_init_state module parsing code (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add Cherry Trail Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Add byt prefix to Crystal Cove PMIC OpRegion driver (Al Stone) [1803969] - [acpi] ACPI / PMIC: Do not register handlers for unhandled OpRegions (Al Stone) [1803969] - [acpi] ACPI: processor_idle: Skip dummy wait if kernel is in guest (Al Stone) [1803969] - [acpi] acpi: Use pr_warn instead of pr_warning (Al Stone) [1803969] - [acpi] ACPI: CPPC: Set pcc_datato NULL in acpi_cppc_processor_exit() (Al Stone) [1803969] - [mfd] rhel: constify some function arguments when searching for devices (Al Stone) [1803969] - [acpi] ACPI: platform: Unregister stale platform devices (Al Stone) [1803969] - [i2c] i2c: Revert incorrect conversion to use generic helper (Al Stone) [1803969] - [base] drivers: Introduce device lookup variants by ACPI_COMPANION device (Al Stone) [1803969] - [s390] drivers: s390/cio: Fix compilation warning about const qualifiers (Al Stone) [1803969] - [s390] driver_find_device: Unify the match function with class_find_device() (Al Stone) [1803969] - [acpi] ACPI / LPSS: Switch to use acpi_dev_hid_uid_match() (Al Stone) [1803969] - [acpi] ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI (Al Stone) [1803969] - [acpi] ACPI / utils: Describe function parameters in kernel-doc (Al Stone) [1803969] - [acpi] ACPI: Always build evged in (Al Stone) [1803969] - [acpi] ACPI: video: update doc for acpi_video_bus_DOS() (Al Stone) [1803969] - [acpi] ACPI: PM: Drop Dell XPS13 9360 from LPS0 Idle _DSM blacklist (Al Stone) [1803969] - [acpi] ACPI: HMAT: ACPI_HMAT_MEMORY_PD_VALID is deprecated since ACPI-6.3 (Al Stone) [1803969] - [acpi] i2c: imx: ACPI support for NXP i2c controller (Al Stone) [1803969] - [acpi] ACPI / PCI: fix acpi_pci_irq_enable() memory leak (Al Stone) [1803969] - [acpi] ACPI: custom_method: fix memory leaks (Al Stone) [1803969] - [acpi] ACPI: thermal: Remove redundant acpi_has_method() calls (Al Stone) [1803969] - [acpi] ACPI / property: Fix acpi_graph_get_remote_endpoint() name in kerneldoc (Al Stone) [1803969] - [acpi] ACPI / CPPC: do not require the _PSD method (Al Stone) [1803969] - [acpi] ACPI: SBS: remove unused const variable 'SMBUS_PEC' (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Always set up EC GPE for system wakeup (Al Stone) [1803969] - [platform] intel-hid: Disable button array during suspend-to-idle (Al Stone) [1803969] - [platform] intel-hid: intel-vbtn: Avoid leaking wakeup_mode set (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Missing power button release on some Dell models (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Convert to use SPDX identifier (Al Stone) [1803969] - [platform] platform/x86: intel-hid: Add support for Device Specific Methods (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Avoid rearming SCI for wakeup unnecessarily (Al Stone) [1803969] - [base] PM / wakeup: Show wakeup sources stats in sysfs (Al Stone) [1803969] - [kernel] PM / wakeup: Use wakeup_source_register() in wakelock.c (Al Stone) [1803969] - [base] PM / wakeup: Drop wakeup_source_init(), wakeup_source_prepare() (Al Stone) [1803969] - [base] PM: sleep: Fix possible overflow in pm_system_cancel_wakeup() (Al Stone) [1803969] - [acpi] ACPI/PCI: Remove surplus parentheses from a return statement (Al Stone) [1803969] - [acpi] ACPICA: Update version to 20190816 (Al Stone) [1803969] - [acpi] ACPICA: Add "Windows 2019" string to _OSI support (Al Stone) [1803969] - [acpi] ACPICA: Differentiate Windows 8.1 from Windows 8 (Al Stone) [1803969] - [acpi] ACPICA: Fully deploy ACPI_PRINTF_LIKE macro (Al Stone) [1803969] - [acpi] ACPICA: Fix issues with arg types within printf format strings (Al Stone) [1803969] - [acpi] ACPICA: Macros: remove pointer math on a null pointer (Al Stone) [1803969] - [acpi] ACPICA: Debugger: remove redundant assignment on obj_desc (Al Stone) [1803969] - [acpi] ACPI / APEI: Release resources if gen_pool_add() fails (Al Stone) [1803969] - [acpi] acpi: Use built-in RCU list checking for acpi_ioremaps list (Al Stone) [1803969] - [acpi] HMAT: Skip publishing target info for nodes with no online memory (Al Stone) [1803969] - [acpi] HMAT: Register attributes for memory hot add (Al Stone) [1803969] - [acpi] HMAT: Register memory-side cache after parsing (Al Stone) [1803969] - [acpi] ACPI / processor: don't print errors for processorIDs == 0xff (Al Stone) [1803969] - [acpi] ACPI: PM: Print debug messages on device power state changes (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Execute LPS0 _DSM functions with suspended devices (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Make acpi_ec_dispatch_gpe() print debug message (Al Stone) [1803969] - [acpi] ACPI: EC: PM: Consolidate some code depending on PM_SLEEP (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Eliminate acpi_sleep_no_ec_events() (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Switch EC over to polling during "noirq" suspend (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Add acpi.sleep_no_lps0 module parameter (Al Stone) [1803969] - [acpi] ACPI: PM: s2idle: Rearrange lps0_device_attach() (Al Stone) [1803969] - [acpi] ACPI / APEI: Get rid of NULL_UUID_LE constant (Al Stone) [1803969] - [acpi] ACPI: PM: Set up EC GPE for system wakeup from drivers that need it (Al Stone) [1803969] - [acpi] PM: sleep: Simplify suspend-to-idle control flow (Al Stone) [1803969] - [kernel] PCI: irq: Introduce rearm_wake_irq() (Al Stone) [1803969] - [acpi] ACPI: PM: Set s2idle_wakeup earlier and clear it later (Al Stone) [1803969] - [acpi] ACPI: EC: Return bool from acpi_ec_dispatch_gpe() (Al Stone) [1803969] - [acpi] ACPICA: Return u32 from acpi_dispatch_gpe() (Al Stone) [1803969] - [kernel] kernel/sysctl.c: ignore out-of-range taint bits introduced via kernel.tainted (Rafael Aquini) [1845358] - [documentation] kernel: add panic_on_taint (Rafael Aquini) [1845358] - [mm] hugetlbfs: fix changes to command line processing (Baoquan He) [1823769] - [documentation] hugetlbfs: clean up command line processing (Baoquan He) [1823769] - [mm] hugetlbfs: remove hugetlb_add_hstate() warning for existing hstate (Baoquan He) [1823769] - [mm] hugetlbfs: move hugepagesz= parsing to arch independent code (Baoquan He) [1823769] - [mm] mm: simplify MEMORY_ISOLATION && COMPACTION || CMA into CONTIG_ALLOC (Baoquan He) [1823769] - [mm] hugetlbfs: add arch_hugetlb_valid_size (Baoquan He) [1823769] - [mm] arm64/hugetlb: Use macros for contiguous huge page sizes (Baoquan He) [1823769] - [mm] arm64: hugetlb: Register hugepages during arch init (Baoquan He) [1823769] - [fs] xfs: prohibit fs freezing when using empty transactions (Brian Foster) [1845099] - [security] selinux: properly handle multiple messages in selinux_netlink_send() (Ondrej Mosnacek) [1839643] {CVE-2020-10751} - [mm] bdi: add a ->dev_name field to struct backing_dev_info (Ming Lei) [1788378] - [block] bdi: use bdi_dev_name() to get device name (Ming Lei) [1788378] - [mm] bdi: move bdi_dev_name out of line (Ming Lei) [1788378] - [fs] memcg: fix a crash in wb_workfn when a device disappears (Ming Lei) [1788378]- [tools] libbpf: provide backported RHEL symbols as upstream aliases 2 (Yauheni Kaliuta) [1813372] - [include] bpf: include/linux/bpf.h: fix spaces (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for freplace program with expected_attach_type (Yauheni Kaliuta) [1813372] - [scripts] checkpatch: don't warn about new vsprintf pointer extension 'pe' (Yauheni Kaliuta) [1813372] - [s390] s390: enable bpf jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Copy runqslower to OUTPUT directory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix memory leak in test selector (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix huge memory leak in libbpf_find_vmlinux_btf_id() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add runqslower binary to .gitignore (Yauheni Kaliuta) [1813372] - [net] bpf: Change kvfree to kfree in generic_map_lookup_batch() (Yauheni Kaliuta) [1813372] - [tools] bpf, selftests: Use bpf_probe_read_kernel (Yauheni Kaliuta) [1813372] - [net] bpf/cgroup: Replace rcu_swap_protected() with rcu_replace_pointer() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix bug in mmap() implementation for BPF array map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Validate frozen map contents stays frozen (Yauheni Kaliuta) [1813372] - [net] bpf: Fix handling of XADD on BTF memory (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run SYN cookies with reuseport BPF test only for TCP (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix typo in bash-completion (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix handling of optional field_name in btf_dump__emit_type_decl (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Declare bpf_log_buf variables as static (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix a couple of broken test_btf cases (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Enforce returning 0 for fentry/fexit programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix BPF_KRETPROBE macro and use it in attach_probe test (Yauheni Kaliuta) [1813372] - [net] bpf: Propagate expected_attach_type when verifying freplace programs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count clean up logic (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset some bpf info structures declared on the stack (Yauheni Kaliuta) [1813372] - [net] bpf: Explicitly memset the bpf_attr structure (Yauheni Kaliuta) [1813372] - [net] bpf: Sanitize the bpf_struct_ops tcp-cc name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test for the packed enum member in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf/btf: Fix BTF verification of enum members in struct/union (Yauheni Kaliuta) [1813372] - [net] bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory (Yauheni Kaliuta) [1813372] - [net] bpf: Initialize storage pointers to NULL to prevent freeing garbage pointer (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add test for JMP32 JSET BPF_X with upper bits set (Yauheni Kaliuta) [1813372] - [x86] bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits (Yauheni Kaliuta) [1813372] - [net] bpf: Do not allow map_freeze in struct_ops map (Yauheni Kaliuta) [1813372] - [net] bpf: Return better error value in delete_elem for struct_ops map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add send_signal_sched_switch test (Yauheni Kaliuta) [1813372] - [kernel] bpf: Fix deadlock with rq_lock in bpf_send_signal() (Yauheni Kaliuta) [1813372] - [net] bpf: Fix a potential deadlock with bpf_map_do_batch (Yauheni Kaliuta) [1813372] - [net] bpf: Do not grab the bucket spinlock by default on htab batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Sanitise internal map names so they are not rejected by the kernel (Yauheni Kaliuta) [1813372] - [tools] bpf, uapi: Remove text about bpf_redirect_map() giving higher performance (Yauheni Kaliuta) [1813372] - [net] bpf, offload: Replace bitwise AND by logical AND in bpf_prog_offload_info_fill (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Mark SYN cookie test skipped for UDP sockets (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix error checking on reading the tcp_fastopen sysctl (Yauheni Kaliuta) [1813372] - [net] bpf: Make btf_check_func_type_match() static (Yauheni Kaliuta) [1813372] - [tools] bpf: Selftests build error in sockmap_basic.c (Yauheni Kaliuta) [1813372] - [net] bpf: Improve bucket_log calculation logic (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test freeing sockmap/sockhash with a socket in it (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Rebuild libbpf.a on libbpf source change (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix trampoline_count.c selftest compilation warning (Yauheni Kaliuta) [1813372] - [net] bpf: Fix modifier skipping logic (Yauheni Kaliuta) [1813372] - [tools] bpftool: Remove redundant "HAVE" prefix from the large INSN limit check (Yauheni Kaliuta) [1813372] - [tools] runqslower: Fix Makefile (Yauheni Kaliuta) [1813372] - [net] bpf: Reuse log from btf_prase_vmlinux() in btf_struct_ops_init() (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test based on port range for BPF flow dissector (Yauheni Kaliuta) [1813372] - [net] bpf: map_seq_next should always increase position index (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Allow overriding llvm tools for runqslower (Yauheni Kaliuta) [1813372] - [tools] selftest/bpf: Add test for allowed trampolines count (Yauheni Kaliuta) [1813372] - [net] bpf: Allow to resolve bpf trampoline and dispatcher in unwind (Yauheni Kaliuta) [1813372] - [net] bpf: Allow BTF ctx access for string pointers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Improve handling of failed CO-RE relocations (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Reset global state between reuseport test runs (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Make reuseport test output more legible (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Ignore FIN packets for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Use a temporary file in test_sockmap (Yauheni Kaliuta) [1813372] - [tools] bpftool: Print function linkage in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Improve bpftool changes detection (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Initialize duration variable before using (Yauheni Kaliuta) [1813372] - [tools] bpf: tcp: Add bpf_cubic example (Yauheni Kaliuta) [1813372] - [tools] bpf: Sync uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_jiffies64 (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for program extensions (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add support for program extensions (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce dynamic program extensions (Yauheni Kaliuta) [1813372] - [scripts] bpf, btf: Always output invariant hit in pahole DWARF to BTF transform (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build urandom_read with LDFLAGS and LDLIBS (Yauheni Kaliuta) [1813372] - [net] bpf: Fix error path under memory pressure (Yauheni Kaliuta) [1813372] - [net] bpf: don't bother with getname/kern_path - use user_path_at (Yauheni Kaliuta) [1813372] - [tools] selftests: Refactor build to remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] runsqslower: Support user-specified libbpf include and object paths (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Remove tools/lib/bpf from include path (Yauheni Kaliuta) [1813372] - [tools] selftests: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] tools/runqslower: Use consistent include paths for libbpf (Yauheni Kaliuta) [1813372] - [tools] selftests: Pass VMLINUX_BTF to runqslower Makefile (Yauheni Kaliuta) [1813372] - [tools] tools/bpf/runqslower: Fix override option for VMLINUX_BTF (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Don't try to remove user's homedir on clean (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Skip perf hw events test if the setup disabled it (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Don't check for btf fd in test_btf (Yauheni Kaliuta) [1813372] - [net] bpf: Fix memory leaks in generic update/delete batch ops (Yauheni Kaliuta) [1813372] - [tools] libbpf: Load btf_vmlinux only once per object (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix potential multiplication overflow in mmap() size calculation (Yauheni Kaliuta) [1813372] - [tools] libbpf: Simplify BTF initialization logic (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix error handling bug in btf_dump__new (Yauheni Kaliuta) [1813372] - [net] bpf: Remove set but not used variable 'first_key' (Yauheni Kaliuta) [1813372] - [tools] libbpf: Revert bpf_helper_defs.h inclusion regression (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix test_progs send_signal flakiness with nmi mode (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix unneeded extra initialization in bpf_map_batch_common (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add whitelist/blacklist of test names to test_progs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Support dumping a map with btf_vmlinux_value_type_id (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add struct_ops map name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose bpf_find_kernel_btf as a LIBBPF_API (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix missing BTF output for json during map dump (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix a leak of btf object (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing to array bpf map (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add batch ops testing for htab and htab_percpu map (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add libbpf support to batch ops (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Sync uapi header bpf.h (Yauheni Kaliuta) [1813372] - [net] bpf: Add batch ops to all htab bpf map (Yauheni Kaliuta) [1813372] - [net] bpf: Add lookup and update batch ops to arraymap (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for update and delete batch ops (Yauheni Kaliuta) [1813372] - [net] bpf: Add generic support for lookup batch op (Yauheni Kaliuta) [1813372] - [net] bpf: Add bpf_map_{value_size, update_value, map_copy_value} functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for attaching a bpf fentry/fexit trace to an XDP program (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add self tests for bpf_send_signal_thread() (Yauheni Kaliuta) [1813372] - [kernel] bpf: Add bpf_send_signal_thread() helper (Yauheni Kaliuta) [1813372] - [net] bpf: Fix seq_show for BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Build runqslower from selftests (Yauheni Kaliuta) [1813372] - [tools] tools/bpf: Add runqslower tool to tools/bpf (Yauheni Kaliuta) [1813372] - [tools] bpftool: Apply preserve_access_index attribute to all types in BTF dump (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Conform selftests/bpf Makefile output to libbpf and bpftool (Yauheni Kaliuta) [1813372] - [scripts] libbpf: Clean up bpf_helper_defs.h generation output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF_PROG, BPF_KPROBE, and BPF_KRETPROBE macros (Yauheni Kaliuta) [1813372] - [tools] libbpf: Poison kernel-only integer types (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add unit tests for global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Modify a test to check global functions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add a test for a large global function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add fexit-to-skb test for global funcs (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce function-by-function verification (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Further clean up Makefile output (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Ensure bpf_helper_defs.h are taken from selftests dir (Yauheni Kaliuta) [1813372] - [tools] libbpf,selftests/bpf: Fix clean targets (Yauheni Kaliuta) [1813372] - [tools] libbpf: Make bpf_map order and indices stable (Yauheni Kaliuta) [1813372] - [tools] bpf: Document BPF_F_QUERY_EFFECTIVE flag (Yauheni Kaliuta) [1813372] - [tools] bpf: Add bpf_dctcp example (Yauheni Kaliuta) [1813372] - [tools] bpf: libbpf: Add STRUCT_OPS support (Yauheni Kaliuta) [1813372] - [tools] bpf: Synch uapi bpf.h to tools/ (Yauheni Kaliuta) [1813372] - [net] bpf: Add BPF_FUNC_tcp_send_ack helper (Yauheni Kaliuta) [1813372] - [net] bpf: tcp: Support tcp_congestion_ops in bpf (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF_PROG_TYPE_STRUCT_OPS (Yauheni Kaliuta) [1813372] - [net] bpf: Support bitfield read access in btf_struct_access (Yauheni Kaliuta) [1813372] - [net] bpf: Add enum support to btf_ctx_access() (Yauheni Kaliuta) [1813372] - [net] bpf: Avoid storing modifier to info->btf_id (Yauheni Kaliuta) [1813372] - [net] bpf: Save PTR_TO_BTF_ID register state when spilling to stack (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Restore original comm in test_overhead (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add misc section and probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add probe for large INSN limit (Yauheni Kaliuta) [1813372] - [tools] bpftool: Make skeleton C code compilable with C++ compiler (Yauheni Kaliuta) [1813372] - [tools] bpf: Print error message for bpftool cgroup show (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Xdp_redirect_cpu fix missing tracepoint attach (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify transmit fill pattern (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify tx packet size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify number of packets to send (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add option to specify batch size (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Use common code to handle signal and main exit (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: xdpsock: Add duration option to specify how long to run (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Preserve errno in test_progs CHECK macros (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test BPF_F_REPLACE in cgroup_attach_multi (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert test_cgroup_attach to prog_tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Introduce bpf_prog_attach_xattr (Yauheni Kaliuta) [1813372] - [net] bpf: Support replacing cgroup-bpf program in MULTI mode (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unused new_flags in hierarchy_allows_attach() (Yauheni Kaliuta) [1813372] - [net] bpf: Simplify __cgroup_bpf_attach (Yauheni Kaliuta) [1813372] - [net] bpf: Remove unnecessary assertion on fp_old (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix another __u64 printf warning (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix printing of ulimit value (Yauheni Kaliuta) [1813372] - [tools] libbpf: BTF is required when externs are present (Yauheni Kaliuta) [1813372] - [tools] libbpf: Allow to augment system Kconfig through extra optional config (Yauheni Kaliuta) [1813372] - [tools] libbpf: Put Kconfig externs into .kconfig section (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add bpf_link__disconnect() API to preserve underlying BPF resource (Yauheni Kaliuta) [1813372] - [tools] bpf: Allow to change skb mark in test_run (Yauheni Kaliuta) [1813372] - [tools] bpftool: Work-around rst2man conversion bug (Yauheni Kaliuta) [1813372] - [tools] bpftool: Simplify format string to not use positional args (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add gen subcommand manpage (Yauheni Kaliuta) [1813372] - [tools] libbpf: Remove BPF_EMBED_OBJ macro from libbpf.h (Yauheni Kaliuta) [1813372] - [tools] bpftool, selftests/bpf: Embed object file inside skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level for custom section names (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix libbpf_common.h when installing libbpf through 'make install' (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: More succinct Makefile output (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add zlib as a dependency in pkg-config template (Yauheni Kaliuta) [1813372] - [tools] libbpf: Print hint about ulimit when getting permission denied error (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Attach XDP programs in driver mode by default (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Set -fno-stack-protector when building BPF programs (Yauheni Kaliuta) [1813372] - [samples] samples/bpf: Add missing -lz to TPROGS_LDLIBS (Yauheni Kaliuta) [1813372] - [tools] bpftool: Fix compilation warning on shadowed variable (Yauheni Kaliuta) [1813372] - [tools] libbpf: Fix build by renaming variables (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add flexible array relocation tests (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support flexible arrays in CO-RE (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add tests for libbpf-provided externs (Yauheni Kaliuta) [1813372] - [tools] bpftool: Generate externs datasec in BPF skeleton (Yauheni Kaliuta) [1813372] - [tools] libbpf: Support libbpf-provided extern variables (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract internal map names into constants (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add `gen skeleton` BASH completions (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add test validating data section to struct convertion layout (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Convert few more selftest to skeletons (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add BPF skeletons selftests and convert attach_probe.c (Yauheni Kaliuta) [1813372] - [tools] bpftool: Add skeleton codegen command (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF object skeleton support (Yauheni Kaliuta) [1813372] - [tools] libbpf: Reduce log level of supported section names dump (Yauheni Kaliuta) [1813372] - [tools] libbpf: Postpone BTF ID finding for TRACING programs to load phase (Yauheni Kaliuta) [1813372] - [tools] libbpf: Refactor global data map initialization (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BPF program's function name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose BTF-to-C type declaration emitting API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Expose btf__align_of() API (Yauheni Kaliuta) [1813372] - [tools] libbpf: Extract common user-facing helpers (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add BPF_EMBED_OBJ macro for embedding BPF .o files (Yauheni Kaliuta) [1813372] - [tools] libbpf: Move non-public APIs from libbpf.h to libbpf_internal.h (Yauheni Kaliuta) [1813372] - [tools] libbpf: Add generic bpf_program__attach() (Yauheni Kaliuta) [1813372] - [tools] libbpf: Don't require root for bpf_object__open() (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match maps by name (Yauheni Kaliuta) [1813372] - [tools] bpftool: Match programs by name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Test wire_len/gso_segs in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf: Expose __sk_buff wire_len/gso_segs to BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [x86] bpf, x86: Align dispatcher branch targets to 16B (Yauheni Kaliuta) [1813372] - [tools] selftests: bpf: Add xdp_perf test (Yauheni Kaliuta) [1813372] - [net] bpf: Start using the BPF dispatcher in BPF_TEST_RUN (Yauheni Kaliuta) [1813372] - [net] bpf, xdp: Start using the BPF dispatcher for XDP (Yauheni Kaliuta) [1813372] - [net] bpf: Introduce BPF dispatcher (Yauheni Kaliuta) [1813372] - [net] bpf: Move trampoline JIT image allocation to a function (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Fix perf_buffer test on systems w/ offline CPUs (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add CPU mask parsing tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Switch reuseport tests for test_progs framework (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Move reuseport tests under prog_tests/ (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Pull up printing the test name into test runner (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Propagate errors during setup for reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Run reuseport tests in a loop (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Unroll the main loop in reuseport test (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Add helpers for getting socket family & type name (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Use sa_family_t everywhere in reuseport tests (Yauheni Kaliuta) [1813372] - [tools] selftests/bpf: Let libbpf determine program type from section name (Yauheni Kaliuta) [1813372] - [tools] libbpf: Recognize SK_REUSEPORT programs from section name (Yauheni Kaliuta) [1813372] - [arm64] bpf, x86, arm64: Enable jit by default when not built as always-on (Yauheni Kaliuta) [1813372] - [net] bpf: Switch to offsetofend in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813372] - [tools] libbpf: Bump libpf current version to v0.0.7 (Yauheni Kaliuta) [1813372] - [fs] vmalloc: fix remap_vmalloc_range() bounds checks (Yauheni Kaliuta) [1813370] - [net] bpf: Prevent re-mmap()'ing BPF map as writable for initially r/o mapping (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: fix test_sysctl_prog with alu32 (Yauheni Kaliuta) [1813370] - [powerpc] powerpc/bpf: Enable bpf_probe_read{, str}() on powerpc again (Yauheni Kaliuta) [1813370] - [kernel] bpf: Restrict bpf_trace_printk()'s s usage and add pks, pus specifier (Yauheni Kaliuta) [1813370] - [lib] printf: add support for printing symbolic error names (Yauheni Kaliuta) [1813370] - [net] bpf: Add bpf_probe_read_{user, kernel}_str() to do_refine_retval_range (Yauheni Kaliuta) [1813370] - [arm64] bpf: Restrict bpf_probe_read{, str}() only to archs where they work (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix accounting bug with direct->count in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Return the first found result in lookup_rec() (Yauheni Kaliuta) [1813370] - [net] bpf: Undo incorrect __reg_bound_offset32 handling (Yauheni Kaliuta) [1813370] - [net] bpf: Fix tnum constraints for 32-bit comparisons (Yauheni Kaliuta) [1813370] - [x86] x86: Fix kernel-doc atomic.h warnings (Yauheni Kaliuta) [1813370] - [net] bpf: Fix trampoline usage in preempt (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Reintroduce missed build targets (Yauheni Kaliuta) [1813370] - [trace] bpf: Reliably preserve btf_trace_xxx types (Yauheni Kaliuta) [1813370] - [include] bpf: Avoid setting bpf insns pages read-only when prog is jited (Yauheni Kaliuta) [1813370] - [scripts] bpf: Force .BTF section start to zero when dumping from vmlinux (Yauheni Kaliuta) [1813370] - [scripts] bpf: Support pre-2.25-binutils objcopy for vmlinux BTF (Yauheni Kaliuta) [1813370] - [net] bpfilter: remove superfluous testing message (Jiri Benc) [1819632] - [net] bpfilter: fix dprintf usage for /dev/kmsg (Jiri Benc) [1819632] - [net] bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free (Jiri Benc) [1819632] - [netdrv] veth: ignore peer tx_dropped when counting local rx_dropped (Jiri Benc) [1819632] - [net] xsk: Publish global consumer pointers when NAPI is finished (Jiri Benc) [1819632] - [kernel] bpf, xdp: Remove no longer required rcu_read_{un}lock() (Jiri Benc) [1819632] - [netdrv] bpf, xdp: virtio_net use access ptr macro for xdp enable check (Jiri Benc) [1819632] - [kernel] bpf, xdp: Update devmap comments to reflect napi/rcu usage (Jiri Benc) [1819632] - [net] xsk, net: Make sock_def_readable() have external linkage (Jiri Benc) [1819632] - [kernel] devmap: Adjust tracepoint for map-less queue flush (Jiri Benc) [1819632] - [net] xdp: Use bulking for non-map XDP_REDIRECT and consolidate code paths (Jiri Benc) [1819632] - [net] xdp: Move devmap bulk queue into struct net_device (Jiri Benc) [1819632] - [net] xsk: Support allocations of large umems (Jiri Benc) [1819632] - [tools] Sync uapi/linux/if_link.h (Jiri Benc) [1819632] - [net] bpf: Return -EBADRQC for invalid map type in __bpf_tx_xdp_map (Jiri Benc) [1819632] - [net] flow_dissector: fix document for skb_flow_get_icmp_tci (Jiri Benc) [1819632] - [net] xsk: Use struct_size() helper (Jiri Benc) [1819632] - [net] xsk: Add function naming comments and reorder functions (Jiri Benc) [1819632] - [net] xsk: Remove unnecessary READ_ONCE of data (Jiri Benc) [1819632] - [net] xsk: ixgbe: i40e: ice: mlx5: Xsk_umem_discard_addr to xsk_umem_release_addr (Jiri Benc) [1819632] - [net] xsk: Change names of validation functions (Jiri Benc) [1819632] - [net] xsk: Simplify the consumer ring access functions (Jiri Benc) [1819632] - [net] xsk: Simplify xskq_nb_avail and xskq_nb_free (Jiri Benc) [1819632] - [net] xsk: Eliminate the RX batch size (Jiri Benc) [1819632] - [net] xsk: Standardize naming of producer ring access functions (Jiri Benc) [1819632] - [net] xsk: Consolidate to one single cached producer pointer (Jiri Benc) [1819632] - [net] xsk: Simplify detection of empty and full rings (Jiri Benc) [1819632] - [net] xsk: Eliminate the lazy update threshold (Jiri Benc) [1819632] - [net] xdp: Simplify __bpf_tx_xdp_map() (Jiri Benc) [1819632] - [net] xdp: Remove map_to_flush and map swap detection (Jiri Benc) [1819632] - [net] xdp: Make cpumap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xdp: Make devmap flush_list common for all map instances (Jiri Benc) [1819632] - [net] xsk: Make xskmap flush_list common for all map instances (Jiri Benc) [1819632] - [kernel] xdp: Fix graze->grace type-o in cpumap comments (Jiri Benc) [1819632] - [kernel] xdp: Simplify cpumap cleanup (Jiri Benc) [1819632] - [kernel] xdp: Simplify devmap cleanup (Jiri Benc) [1819632] - [net] sysctl: Fix compiler warning when only cBPF is present (Jiri Benc) [1819631] - [net] dsa: fix flow dissection on Tx path (Jiri Benc) [1819631] - [net] page_pool: add the possibility to sync DMA memory for device (Jiri Benc) [1819631] - [net] xsk: Fix xsk_poll()'s return type (Jiri Benc) [1819631] - [tools] net-af_xdp: Use correct number of channels from ethtool (Jiri Benc) [1819631] - [net] xdp: remove memory poison on free for struct xdp_mem_allocator (Jiri Benc) [1819631] - [documentation] xsk: Extend documentation for Rx|Tx-only sockets and shared umems (Jiri Benc) [1819631] - [net] xsk: Restructure/inline XSKMAP lookup/redirect/flush (Jiri Benc) [1819631] - [kernel] xsk: Store struct xdp_sock as a flexible array member of the XSKMAP (Jiri Benc) [1819631] - [include] xdp: Fix type of string pointer in __XDP_ACT_SYM_TAB (Jiri Benc) [1819631] - [documentation] xsk: Improve documentation for AF_XDP (Jiri Benc) [1819631] - [tools] Sync if_link.h (Jiri Benc) [1819631] - [net] xdp: Trivial, fix spelling in function description (Jiri Benc) [1819631] - [netdrv] netdevsim: Use scnprintf() for avoiding potential buffer overflow (Jiri Benc) [1819631] - [netdrv] netdevsim: fix ptr_ret.cocci warnings (Jiri Benc) [1819631] - [netdrv] netdevsim: remove unused sdev code (Jiri Benc) [1819631] - [netdrv] netdevsim: use IS_ERR instead of IS_ERR_OR_NULL for debugfs (Jiri Benc) [1819631] - [netdrv] netdevsim: fix stack-out-of-bounds in nsim_dev_debugfs_init() (Jiri Benc) [1819631] - [netdrv] netdevsim: fix panic in nsim_dev_take_snapshot_write() (Jiri Benc) [1819631] - [net] openvswitch: New MPLS actions for layer 2 tunnelling (Guillaume Nault) [1839760] - [net] Rephrased comments section of skb_mpls_pop() (Guillaume Nault) [1839760] - [net] skb_mpls_push() modified to allow MPLS header push at start of packet. (Guillaume Nault) [1839760] - [net] Change in Openvswitch to support MPLS label depth of 3 in ingress direction (Guillaume Nault) [1839182] - [block] block: fix use-after-free on cached last_lookup partition (Ming Lei) [1787968]- [drm] drm/prime: fix extracting of the DMA addresses from a scatterlist (Jerry Snitselaar) [1815610] - [iommu] iommu: Check for deferred attach in iommu_group_do_dma_attach() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add get_domain_info() helper (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't take group reference in iommu_alloc_default_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu: Don't call .probe_finalize() under group->mutex (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Apply per-device dma_ops (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow PCI sub-hierarchy to use DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allow 32bit devices to uses DMA domain (Jerry Snitselaar) [1815610] - [iommu] iommu: Do not probe devices on IOMMU-less busses (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix variable "iommu" set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu: Unexport iommu_group_get_for_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move more initialization to __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove add_device()/remove_device() code-paths (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Axe a useless test in 'arm_smmu_master_alloc_smes()' (Jerry Snitselaar) [1815610] - [iommu] iommu/s390: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert to probe/release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dev_data->passthrough (Jerry Snitselaar) [1815610] - [iommu] iommu: Export bus_iommu_probe() and make is safe for re-probing (Jerry Snitselaar) [1815610] - [iommu] iommu: Move iommu_group_create_direct_mappings() out of iommu_group_add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Split off default domain allocation from group assignment (Jerry Snitselaar) [1815610] - [iommu] iommu: Move new probe_device path to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Keep a list of allocated groups in __iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to iommu_probe_device() (Jerry Snitselaar) [1815610] - [iommu] iommu: Add probe_device() and release_device() call-backs (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Return -ENODEV in add_device when device is not handled by IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove dma_mask check from check_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Wire up iommu_ops->def_domain_type (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Implement iommu_ops->def_domain_type call-back (Jerry Snitselaar) [1815610] - [iommu] iommu: Add def_domain_type() callback in iommu_ops (Jerry Snitselaar) [1815610] - [iommu] iommu: Move default domain allocation to separate function (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix reference count leak in iommu_group_alloc (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove real DMA lookup in find_domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Allocate domain info for real DMA sub-devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Only clear real DMA device's context entries (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix get_acpihid_device_id() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Switch to use acpi_dev_hid_uid_match() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix over-read of ACPI UID from IVRS table (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix deferred domain attachment (Jerry Snitselaar) [1815610] - [include] iommu: Move fwspec->iommu_priv to struct dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Refactor master_cfg/fwspec usage (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Use accessor functions for iommu private data (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Improve add_device() error handling (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Return -EBUSY when trying to re-add a device (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Fix resource_size check (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Populate VMID field for CMDQ_OP_TLBI_NH_VA (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu-v3: Drop __GFP_ZERO flag from DMA allocation (Jerry Snitselaar) [1815610] - [include] iommu: Introduce accessors for iommu private data (Jerry Snitselaar) [1815610] - [acpi] ACPI/IORT: Remove direct access of dev->iommu_fwspec (Jerry Snitselaar) [1815610] - [include] iommu: Define dev_iommu_fwspec_get() for !CONFIG_IOMMU_API (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not flush Device Table in iommu_map_page() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Update Device Table in increase_address_space() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Call domain_flush_complete() in update_domain() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not loop forever when trying to increase address space (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix race in increase_address_space()/fetch_pte() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled system (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix the memory leak in dev_iommu_free() (Jerry Snitselaar) [1815610] - [include] iommu: Move iommu_fwspec to struct dev_iommu (Jerry Snitselaar) [1815610] - [include] iommu: Rename struct iommu_param to dev_iommu (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Take a ref to the IOMMU driver during ->of_xlate() (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Take a ref to the IOMMU driver prior to ->add_device() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix mm reference leak (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix the configuration of GCR3 table root pointer (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warning in dmar_find_atsr() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix page request descriptor size (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Populate debugfs if IOMMUs are detected (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Ignore devices with out-of-spec domain number (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix the wrong printing in RHSA parsing (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix debugfs register reads (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: quirk_ioat_snb_local_iommu: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar_parse_one_rmrr: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: dmar: replace WARN_TAINT with pr_warn + add_taint (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Silence RCU-list debugging warnings (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix RCU-list bugs in intel_iommu_init() (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix MSI reservation allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix a bug in intel_iommu_iova_to_phys() for huge page (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Disable IOMMU on Stoney Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu: intel: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: amd: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: arm: Use generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu: Implement generic_iommu_put_resv_regions() (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu: Fix Kconfig indentation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON_ONCE() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unnecessary to handle default identity domain (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add RMRR base and end addresses sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Mark firmware tainted if RMRR fails sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't reject Host Bridge due to scope mismatch (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Loose requirement for flush queue initializaton (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid iova flush queue in strict mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: trace: Extend map_sg trace event (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid sending invalid page response (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix off-by-one in PASID allocation (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Avoid duplicated code for PASID setup (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Reject SVM bind for failed capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Match CPU and IOMMU paging mode (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix CPU and IOMMU SVM feature matching checks (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove VMD child device sanity check (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use pci_real_dma_dev() for mapping (Jerry Snitselaar) [1815610] - [pci] PCI: Introduce pci_real_dma_dev() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove the unnecessary assignment (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused struct member (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Replace two consecutive readl calls with one readq (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix typos for PPR macros (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove local variables (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unused variable (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Only support x2APIC with IVHD type 11h/40h (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Check feature support bit before accessing MSI capability registers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Treat per-device exclusion ranges as r/w unity-mapped regions (Jerry Snitselaar) [1815610] - [iommu] iommu: Use C99 flexible array in fwspec (Jerry Snitselaar) [1833512 1815610] - [iommu] drivers/iommu: Allow IOMMU bus ops to be unregistered (Jerry Snitselaar) [1815610] - [iommu] iommu/of: Request ACS from the PCI core when configuring IOMMU linkage (Jerry Snitselaar) [1815610] - [iommu] drivers/iommu: Export core IOMMU API symbols to permit modular drivers (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Fix IOMMU perf counter clobbering during init (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: fix variable 'cookie' set but not used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Unlink device if failed to add to group (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove device link to group on failure (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Relax locking in iommu_dma_prepare_msi() (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Remove incorrect PSI capability check (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Rationalise types for DMA masks (Jerry Snitselaar) [1815610] - [iommu] iommu/iova: Init the struct iova to fix the possible memleak (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check VT-d RMRR region in BIOS is reported as reserved (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Turn off translations at shutdown (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Support multiple PCI DMA aliases in device table (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Do not re-fetch iommu->cmd_buf_tail (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Pass gfp flags to iommu_map_page() in amd_iommu_map() (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Simpify decoding logic for INVALID_PPR_REQUEST event (Jerry Snitselaar) [1815610] - [drm] drm/prime: use dma length macro when mapping sg (Jerry Snitselaar) [1815610] - [drm] drm/amdgpu: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [drm] drm/radeon: fix scatter-gather mapping with user pages (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Convert AMD iommu driver to the dma-iommu api (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Use the dev->coherent_dma_mask (Jerry Snitselaar) [1815610] - [iommu] iommu/dma-iommu: Handle deferred devices (Jerry Snitselaar) [1815610] - [include] iommu: KABI cleanup (Jerry Snitselaar) [1815610] - [iommu] iommu: Add gfp parameter to iommu_ops::map (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Remove unnecessary locking from AMD iommu driver (Jerry Snitselaar) [1815610] - [iommu] drivers: iommu: hyperv: Make HYPERV_IOMMU only available on x86 (Jerry Snitselaar) [1815610] - [include] iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros (Jerry Snitselaar) [1815610] - [iommu] iommu: pass cell_count = -1 to of_for_each_phandle with cells_name (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Free context bitmap in the err path of arm_smmu_init_domain_context (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire A315-41 (Jerry Snitselaar) [1815610] - [iommu] iommu/arm-smmu: Mask TLBI address correctly (Jerry Snitselaar) [1815610] - [iommu] iommu: Remove wrong default domain comments (Jerry Snitselaar) [1815610] - [iommu] iommu/dma: Fix for dereferencing before null checking (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Declare Broadwell igfx dmar support snafu (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add Scalable Mode fault information (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use bounce buffer for untrusted devices (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Add trace events for device dma map/unmap (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Don't switch off swiotlb if bounce page is used (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Check whether device requires bounce buffer (Jerry Snitselaar) [1815610] - [dma] swiotlb: Split size parameter to map/unmap APIs (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: use ->map_page to implement ->map_sg (Jerry Snitselaar) [1815610] - [xen] swiotlb-xen: make instances match their method names (Jerry Snitselaar) [1815610] - [uapi] iommu: Add padding to struct iommu_fault (Jerry Snitselaar) [1815610] - [iommu] iommu: Add recoverable fault reporting (Jerry Snitselaar) [1815610] - [iommu] iommu: Introduce device fault report API (Jerry Snitselaar) [1815610] - [include] driver core: Add per device iommu param (Jerry Snitselaar) [1815610] - [uapi] iommu: Introduce device fault data (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Silence warnings under memory pressure (Jerry Snitselaar) [1815610] - [iommu] iommu/amd: Override wrong IVRS IOAPIC on Raven Ridge systems (Jerry Snitselaar) [1815610] - [iommu] iommu/vt-d: Use dma_direct for bypass devices (Jerry Snitselaar) [1815610] - [dma] dma-direct: don't check swiotlb=force in dma_direct_map_resource (Jerry Snitselaar) [1815610] - [mm] dma-mapping: remove the default map_resource implementation (Jerry Snitselaar) [1815610] - [iommu] Revert "iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock" (Jerry Snitselaar) [1815610 1813666] - [dma] dma-direct: don't truncate dma_required_mask to bus addressing capabilities (Jerry Snitselaar) [1815610] - [acpi] ACPI / utils: Introduce acpi_dev_hid_uid_match() helper (Jerry Snitselaar) [1815610] - [security] efi: Only print errors about failing to get certs if EFI vars are found (Lenny Szubowicz) [1804969] - [infiniband] RDMA/iw_cxgb4: Fix incorrect function parameters (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: initiate CLOSE when entering TERM (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cgxb4: Fix an error handling path in 'c4iw_connect()' (Vishal Kulkarni) [1828676] - [infiniband] RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case (Vishal Kulkarni) [1828676] - [infiniband] iw_cxgb4: fix ECN check on the passive accept (Vishal Kulkarni) [1828676] - [vfio] vfio/pci: fix memory leaks of eventfd ctx (Alex Williamson) [1837678] - [vfio] vfio/pci: fix memory leaks in alloc_perm_bits() (Alex Williamson) [1837678] - [vfio] vfio: avoid possible overflow in vfio_iommu_type1_pin_pages (Alex Williamson) [1837678] - [vfio] vfio/mdev: make create attribute static (Alex Williamson) [1837678] - [vfio] vfio/type1: remove hugepage checks in is_invalid_reserved_pfn() (Alex Williamson) [1837678] - [vfio] vfio/type1: Initialize resv_msi_base (Alex Williamson) [1837678] - [vfio] vfio_pci: Restore original state on release (Alex Williamson) [1837678] - [uapi] vfio: re-arrange vfio region definitions (Alex Williamson) [1837678] - [vfio] mdev: Send uevents around parent device registration (Alex Williamson) [1837678] - [vfio] vfio/mdev: Synchronize device create/remove with parent removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid creating sysfs remove file on stale device removal (Alex Williamson) [1837678] - [vfio] vfio/mdev: Improve the create/remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid inline get and put parent helpers (Alex Williamson) [1837678] - [vfio] vfio/mdev: Fix aborting mdev child device removal if one fails (Alex Williamson) [1837678] - [vfio] vfio/mdev: Follow correct remove sequence (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid masking error code to EBUSY (Alex Williamson) [1837678] - [vfio] vfio/mdev: Removed unused kref (Alex Williamson) [1837678] - [vfio] vfio/mdev: Avoid release parent reference during error path (Alex Williamson) [1837678] - [uapi] vfio-ccw: add handling for async channel instructions (Alex Williamson) [1837678] - [uapi] vfio-ccw: add capabilities chain (Alex Williamson) [1837678] - [vfio] vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING" (Alex Williamson) [1837678] - [vfio] vfio/pci: use correct format characters (Alex Williamson) [1837678] - [vfio] vfio: expand minor range when registering chrdev region (Alex Williamson) [1837678] - [vfio] vfio/mdev: add static modifier to add_mdev_supported_type (Alex Williamson) [1837678] - [vfio] vfio/type1: Remove map_try_harder() code path (Alex Williamson) [1837678] - [vfio] vfio/pci: Fix potential memory leak in vfio_msi_cap_len (Alex Williamson) [1837678] - [vfio] vfio: Mark expected switch fall-throughs (Alex Williamson) [1837678] - [fs] gfs2: Only do glock put in gfs2_create_inode for free inodes (Robert S Peterson) [1831666] - [fs] gfs2: Grab glock reference sooner in gfs2_add_revoke (Robert S Peterson) [1831666] - [fs] Revert "gfs2: Don't demote a glock until its revokes are written" (Robert S Peterson) [1831666] - [fs] signal: Fix wrong PIDTYPE_TGID check in send_sigio() & send_sigurg() (Waiman Long) [1845597] - [md] dm mpath: add DM device name to Failing/Reinstating path log messages (Mike Snitzer) [1822975] - [md] dm mpath: enhance queue_if_no_path debugging (Mike Snitzer) [1822975] - [md] dm mpath: restrict queue_if_no_path state machine (Mike Snitzer) [1822975] - [md] dm mpath: simplify __must_push_back (Mike Snitzer) [1822975] - [md] dm: use DMDEBUG macros now that they use pr_debug variants (Mike Snitzer) [1822975] - [include] dm: use dynamic debug instead of compile-time config option (Mike Snitzer) [1822975] - [md] dm mpath: switch paths in dm_blk_ioctl() code path (Mike Snitzer) [1822975] - [md] dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath (Mike Snitzer) [1822975] - [tools] selftests: mlxsw: qos_mc_aware: Specify arping timeout as an integer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix use-after-free of split/unsplit/type_set in case reload fails (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl_tcam: Position vchunk in a vregion list properly (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix some IS_ERR() vs NULL bugs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_VLAN_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Do not stop at FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: fix unintention integer overflow on left shift (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap policers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add support for setting of packet trap group parameters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Switch to use correct packet trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Do not initialize dedicated discard policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add devlink-trap policer support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare policers for registration with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Track used packet trap policer IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend QPCR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_ptp: Fix build warnings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Avoid uninitialized symbol errors (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Remove unnecessary conversion to bool (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl: Avoid defining static variable in header file (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove unused RIF and FID families (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Add proper function documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: i2c: Add missing field documentation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Fix list iteration in error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_dscp_router: Test no DSCP rewrite after pedit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_MANGLE (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add DSCP, ECN, dscp_rw to QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Rename mlxsw_afa_qos_cmd to mlxsw_afa_qos_switch_prio_cmd (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Explicitly register packet trap groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Fix 64-bit division in mlxsw_sp_counter_resources_register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Offload FLOW_ACTION_PRIORITY (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add QOS_ACTION (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Only issue reset when system is ready (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add tc action hw_stats tests (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose devlink resource occupancy for counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Consolidate subpools initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move config validation along with resource register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Expose subpool sizes over devlink resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Add entry_size_res_id for each subpool and use it to query entry size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Move sub_pools under per-instance pool struct (Ivan Vecera) [1821646] - [tools] selftests: spectrum-2: Adjust tc_flower_scale limit according to current counter count (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_cnt: Query bank size from FW resources (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase register field length to 31 bits (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: RED: Test RED ECN nodrop offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Offload RED ECN nodrop mode (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Ask device for rule stats only if counter was created (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of FIFO Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add handle parameter to ..._ops.replace (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Introduce struct mlxsw_sp_qdisc_state (Ivan Vecera) [1821646] - [netdrv] net: mlxfw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_defprio: Use until_counter_is (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Wait longer before accessing the device after reset (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Update module_type values in PMTM register and map them to width (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: resource_scale: Invoke for Spectrum-3 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce router scale running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Reduce running time using offload indication (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer traffic test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add mlxsw lib (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Add devlink port helpers (Ivan Vecera) [1821646] - [tools] selftests: devlink_lib: Check devlink info command is supported (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add shared buffer configuration test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in rtnetlink test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in vxlan test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Use busywait helper in blackhole routes test (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Avoid race condition (Ivan Vecera) [1821646] - [tools] selftests: add a mirror test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [tools] selftests: add egress redirect test to mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_span_ops.buffsize_get for Spectrum-3 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Initialize advertised speeds to supported speeds (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move the ECN-marked packet counter to ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Optimize SFN records processing (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Lookup and pass cookie down to devlink_trap_report() (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Extract cookie index for ACL discard trap packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Implement flow_offload action cookie offload (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Add trap with userdef action (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: fix spelling mistake: "progamming" -> "programming" (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_acl_drops: Add ACL traps test (Ivan Vecera) [1821646] - [tools] selftests: pass pref and handle to devlink_trap_drop_* helpers (Ivan Vecera) [1821646] - [tools] selftests: introduce test for mlxsw tc flower restrictions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Add ACL devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Introduce dummy group with thin policer (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend MLXSW_RXL_DIS to register disabled trap group (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to enable/disable rx_listener for trap (Ivan Vecera) [1821646] - [netdrv] mlxsw: acl_flex_actions: Trap all ACL dropped packets to DISCARD_*_ACL traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Pass the ingress indication down to flex action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Disable mixed bound blocks to contain action drop (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track ingress and egress block bindings (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Prepare mlxsw_core_trap_action_set() to handle not only action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use listener->en/dis_action instead of hard-coded values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Allow to register disabled traps using MLXSW_RXL_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Set unreg_action to be SET_FW_DEFAULT (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Remove unused values (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove priv from listener equality comparison (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Make block arg const where appropriate (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Make global arrays const as they should be (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove initialization to false of mlxsw_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Convert is_event and is_ctrl bools to be single bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove dummy union name from struct mlxsw_listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Remove unused action field from mlxsw_rx_listener struct (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move policer initialization to mlxsw_sp_trap_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: core_acl_flex_actions: Rename Trap / Discard Action to Trap Action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Move functions to avoid their forward declarations (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Use err variable instead of directly checking func return value (Ivan Vecera) [1821646] - [netdrv] net/mlx5: Add fsm_reactivate callback support (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Add reactivate flow support to FSM burn flow (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Use MLXFW_ERR_MSG macro for error reporting (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Convert pr_* to dev_* in mlxfw_fsm.c (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: More error messages coverage (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Improve FSM err message reporting and return codes (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Generic mlx FW flash status notify (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remove RTNL where possible (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from exported helpers (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inetaddr listeners (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from netdev listener (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Take router lock from dpipe code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Take router lock from inside routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Introduce router lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Store NVE decapsulation configuration in router (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Expose router struct to internal users (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast route list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Protect multicast table list with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_mr: Publish multicast route after writing it to the device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_nve: Make tunnel initialization symmetric (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Export function to check if RIF exists (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Prevent RIF access outside of routing code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Prepare function for router lock introduction (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken when resolving underlay device (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during RIF teardown (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Do not assume RTNL is taken during nexthop init (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Only update mirroring agents if present (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Convert callers to use new mirroring API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Prepare work item to update mirroring agents (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Use struct_size() to simplify allocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Do no expose mirroring agents to entire driver (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Protect counter pool with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_kvdl: Protect allocations with a lock (Ivan Vecera) [1821646] - [netdrv] mlxsw: Replace zero-length array with flexible-array member (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Add test for error path (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: vxlan: Adjust test to recent changes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test creation of multiple VLAN-aware bridges (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: extack: Test bridge creation with VXLAN (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Remove deprecated test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Reduce dependency between bridge and router code (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Remove VXLAN checks during FID membership (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Have VXLAN device take reference on FID (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack to bridge creation function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_fid: Use 'refcount_t' for FID reference counting (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dpipe: Add missing error path (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add validation of hardware device types for MGPIR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Clear offload indication from IPv6 nexthops on abort (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for local table route replacement (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Fix 64-bit division error in mlxsw_sp_qdisc_tbf_rate_kbps (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Fix an error handling path in 'mlxsw_m_port_create()' (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of TBF Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Configure shaper rate and burst size together (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add lowest_shaper_bs to struct mlxsw_sp (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase MLXSW_REG_QEEC_MAS_DIS (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add max_shaper_bs to QoS ETS Element Configuration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a common leaf unoffload function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Add mlxsw_sp_qdisc_get_class_stats() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Extract a per-TC stat function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Fix use-after-free during reload (Ivan Vecera) [1821646] - [netdrv] spectrum: Add a delayed work to update SPAN buffsize according to speed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix SPAN egress mirroring buffer size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_span: Put buffsize update code into helper function (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push code getting port speed into a helper (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for overlay_smac_is_mc (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add OVERLAY_SMAC_MC trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_ipip: Add test case for decap_error (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_tunnel_vxlan: Add test case for decap_error (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add tunnel devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Reorder cases according to enum order (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add ECN configurations with IPinIP tunnels (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Decapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Tunneling IPinIP Encapsulation ECN Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add NON_ROUTABLE trap (Ivan Vecera) [1821646] - [tools] selftests: devlink_trap_l3_drops: Add test cases of irif and erif disabled (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add irif and erif disabled traps (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Include MC TCs in Qdisc counters (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Wipe xstats.backlog of down ports (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: qos_mc_aware: Fix mausezahn invocation (Ivan Vecera) [1821646] - [netdrv] mlxsw: switchx2: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not modify cloned SKBs during xmit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Do not enforce same firmware version for multiple ASICs (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test for FIB offload API (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Set hardware flags for routes (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Separate nexthop offload indication from route (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Only require minimum firmware version (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Update firmware version to xx.2000.2714 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Ignore grafting of invisible FIFO (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable DIP_LINK_LOCAL check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_DIP check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable MC_DMAC check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Disable SIP_CLASS_E check in hardware pipeline (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_dcb: Allow setting default port priority (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Support offloading of ETS Qdisc (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Generalize PRIO offload to support ETS (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Rename MLXSW_REG_QEEC_HIERARCY_* enumerators (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_qdisc: Clarify a comment (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use dedicated policer for VRRP packets (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Skip loopback RIFs during MAC validation (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Fix out-of-memory error in mfa2 flash burning (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix use of uninitialized adjacency index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: After underlay moves, demote conflicting tunnels (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Check devlink device before running test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add router scale test for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Fix determining underlay for a GRE tunnel (Ivan Vecera) [1821646] - [netdrv] net/mlxfw: Verify FSM error code translation doesn't exceed array size (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Allocate discard adjacency entry when needed (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Enable EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for using EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend EMAD information reported to devlink hwerr (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add support for EMAD string TLV parsing (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add EMAD string TLV (Ivan Vecera) [1821646] - [netdrv] mlxsw: emad: Remove deprecated EMAD TLVs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Parse TLVs' offsets of incoming EMADs (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Enable devlink reload only on probe (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 exceptions (Ivan Vecera) [1821646] - [tools] selftests: forwarding: devlink: Add functionality for trap exceptions test (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap exceptions support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add specific trap for packets routed via invalid nexthops (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add new FIB entry type for reject routes (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap layer 3 drops (Ivan Vecera) [1821646] - [tools] selftests: devlink: Make devlink_trap_cleanup() more generic (Ivan Vecera) [1821646] - [tools] selftests: devlink: Export functions to devlink library (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 3 devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix error return code in mlxsw_sp_port_module_info_init() (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Generalize split count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Iterate over all ports in gap during unsplit create (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Fix base port get for split count 4 and 8 (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use port_module_max_width to compute base port index (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Remember split base local port and use it in unsplit (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Introduce resource for getting offset of 4 lanes split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Push getting offsets of split ports into a helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add sanity checks into module info get (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Pass mapping values in port mapping structure (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use mapping of port being split for creating split ports (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Replace port_to_module array with array of structs (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Distinguish between unsplittable and split port (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Move max_width check up before count check (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use PMTM register to get max module width (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add Port Module Type Mapping Register (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend PMLP tx/rx lane value size to 4 bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: Fix 64-bit division in mlxsw_sp_sb_prs_init (Ivan Vecera) [1821646] - [netdrv] mlxsw: Enforce firmware version for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] mlxsw: Bump firmware version to 13.2000.2308 (Ivan Vecera) [1821646] - [netdrv] mlxsw: pci: Increase PCI reset timeout for SN3800 systems (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Increase size of MPAR register (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Unpublish devlink parameters during reload (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: remove unneeded semicolon (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Calculate the size of the main pool (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use guaranteed buffer size as pool size limit (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Extend QSFP EEPROM size for ethtool (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add macro for getting QSFP module EEPROM page number (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_trap: Push Ethernet header before reporting trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 target scale for tc flower scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a resource scale test for Spectrum-2 (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add Spectrum-2 mirror-to-gretap target scale test (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Generalize the parameters of mirror_gre test (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register switched port analyzers (SPAN) as resource (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1821646] - [netdrv] mlxsw: minimal: Add validation for FW version (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Push minor/subminor fw version check into helper (Ivan Vecera) [1821646] - [netdrv] mlxsw: thermal: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: hwmon: Provide optimization for QSFP modules number detection (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Extend MGPIR register with new field exposing the number of QSFP modules (Ivan Vecera) [1821646] - [netdrv] mlxsw: Propagate extack down to register_fib_notifier() (Ivan Vecera) [1821646] - [netdrv] mlxsw: Register port netdevices into net of core (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Take devlink net instead of init_net (Ivan Vecera) [1821646] - [netdrv] mlxsw: PCI: Send EMAD traffic on a separate queue (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Use per-netns netdevice notifier registration (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Fail in case user specifies multiple mirror actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Clear VLAN filters during port initialization (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Add the ability to query the CPU port's shared buffer (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Register CPU port with devlink (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_buffers: Prevent changing CPU port's configuration (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add a test case for devlink-trap (Ivan Vecera) [1821646] - [tools] selftests: mlxsw: Add test cases for devlink-trap L2 drops (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Add devlink-trap support (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add trap group for layer 2 discards (Ivan Vecera) [1821646] - [netdrv] mlxsw: Add layer 2 discard trap IDs (Ivan Vecera) [1821646] - [netdrv] mlxsw: reg: Add new trap actions (Ivan Vecera) [1821646] - [netdrv] mlxsw: core: Add API to set trap action (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-3 ASIC (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload match on reserved TCP flags bits (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_acl: Track rules that forbid egress block bind (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_flower: Forbid to offload mirred redirect on egress (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum_router: Increase scale of IPv6 nexthop groups (Ivan Vecera) [1821646] - [netdrv] mlxsw: spectrum: Expose KVD size for Spectrum-2 (Ivan Vecera) [1821646] - [netdrv] geneve: change from tx_error to tx_dropped on missing metadata (Jiri Benc) [1843412] - [net] mptcp: use untruncated hash in ADD_ADDR HMAC (Florian Westphal) [1840167] - [net] mptcp: use rightmost 64 bits in ADD_ADDR HMAC (Florian Westphal) [1840167] - [tools] selftests: mptcp: pm: rm the right tmp file (Florian Westphal) [1840167] - [net] mptcp: cope better with MP_JOIN failure (Florian Westphal) [1840167] - [net] inet_connection_sock: factor out destroy helper. (Florian Westphal) [1840167] - [net] mptcp: add new sock flag to deal with join subflows (Florian Westphal) [1840167] - [net] mptcp: Initialize map_seq upon subflow establishment (Florian Westphal) [1840167] - [net] mptcp: set correct vfs info for subflows (Florian Westphal) [1840167] - [net] mptcp: fix uninitialized value access (Florian Westphal) [1840167] - [net] mptcp: initialize the data_fin field for mpc packets (Florian Westphal) [1840167] - [net] mptcp: fix 'use_ack' option access. (Florian Westphal) [1840167] - [net] mptcp: avoid a WARN on bad input. (Florian Westphal) [1840167] - [net] mptcp: move option parsing into mptcp_incoming_options() (Florian Westphal) [1840167] - [net] mptcp: consolidate synack processing. (Florian Westphal) [1840167] - [net] mptcp: replace mptcp_disconnect with a stub (Florian Westphal) [1840167] - [net] mptcp: fix race in msk status update (Florian Westphal) [1840167] - [net] tcp: mptcp: use mptcp receive buffer space to select rcv window (Florian Westphal) [1840167] - [net] mptcp/pm_netlink.c : add check for nla_put_in/6_addr (Florian Westphal) [1840167] - [net] mptcp: fix data_fin handing in RX path (Florian Westphal) [1840167] - [net] mptcp: drop req socket remote_key* fields (Florian Westphal) [1840167] - [net] mptcp: avoid flipping mp_capable field in syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: handle mptcp listener destruction via rcu (Florian Westphal) [1840167] - [net] mptcp: fix 'Attempt to release TCP socket in state' warnings (Florian Westphal) [1840167] - [net] mptcp: fix splat when incoming connection is never accepted before exit/close (Florian Westphal) [1840167] - [net] mptcp: fix double-unlock in mptcp_poll (Florian Westphal) [1840167] - [net] mptcp: add some missing pr_fmt defines (Florian Westphal) [1840167] - [net] mptcp: fix "fn parameter not described" warnings (Florian Westphal) [1840167] - [net] mptcp: re-check dsn before reading from subflow (Florian Westphal) [1840167] - [net] mptcp: subflow: check parent mptcp socket on subflow state change (Florian Westphal) [1840167] - [net] mptcp: fix tcp fallback crash (Florian Westphal) [1840167] - [tools] selftests:mptcp: fix failure due to whitespace damage (Florian Westphal) [1840167] - [tools] selftests: add test-cases for MPTCP MP_JOIN (Florian Westphal) [1840167] - [tools] selftests: add PM netlink functional tests (Florian Westphal) [1840167] - [net] mptcp: add netlink-based PM (Florian Westphal) [1840167] - [net] mptcp: add and use MIB counter infrastructure (Florian Westphal) [1840167] - [net] mptcp: allow dumping subflow context to userspace (Florian Westphal) [1840167] - [net] mptcp: implement and use MPTCP-level retransmission (Florian Westphal) [1840167] - [net] mptcp: rework mptcp_sendmsg_frag to accept optional dfrag (Florian Westphal) [1840167] - [net] mptcp: allow partial cleaning of rtx head dfrag (Florian Westphal) [1840167] - [net] mptcp: implement memory accounting for mptcp rtx queue (Florian Westphal) [1840167] - [net] mptcp: introduce MPTCP retransmission timer (Florian Westphal) [1840167] - [net] mptcp: queue data for mptcp level retransmission (Florian Westphal) [1840167] - [net] mptcp: update per unacked sequence on pkt reception (Florian Westphal) [1840167] - [net] mptcp: Implement path manager interface commands (Florian Westphal) [1840167] - [net] mptcp: Add handling of outgoing MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add handling of incoming MP_JOIN requests (Florian Westphal) [1840167] - [net] mptcp: Add path manager interface (Florian Westphal) [1840167] - [net] mptcp: Add ADD_ADDR handling (Florian Westphal) [1840167] - [net] tcp: annotate sk->sk_wmem_queued lockless reads (Florian Westphal) [1840167] - [net] mptcp: don't hang in mptcp_sendmsg() after TCP fallback (Florian Westphal) [1840167] - [net] mptcp: Remove set but not used variable 'can_ack' (Florian Westphal) [1840167] - [net] mptcp: rename fourth ack field (Florian Westphal) [1840167] - [net] mptcp: move msk state update to subflow_syn_recv_sock() (Florian Westphal) [1840167] - [net] mptcp: drop unneeded checks (Florian Westphal) [1840167] - [net] mptcp: create msk early (Florian Westphal) [1840167] - [net] mptcp: don't hang before sending 'MP capable with data' (Florian Westphal) [1840167] - [net] mptcp: don't grow mptcp socket receive buffer when rcvbuf is locked (Florian Westphal) [1840167] - [tools] mptcp: selftests: add rcvbuf set option (Florian Westphal) [1840167] - [net] mptcp: always include dack if possible. (Florian Westphal) [1840167] - [net] mptcp: Only send DATA_FIN with final mapping (Florian Westphal) [1840167] - [net] mptcp: Use per-subflow storage for DATA_FIN sequence number (Florian Westphal) [1840167] - [net] mptcp: Check connection state before attempting send (Florian Westphal) [1840167] - [net] mptcp: add dummy icsk_sync_mss() (Florian Westphal) [1840167] - [net] mptcp: defer work schedule until mptcp lock is released (Florian Westphal) [1840167] - [net] mptcp: avoid work queue scheduling if possible (Florian Westphal) [1840167] - [net] mptcp: remove mptcp_read_actor (Florian Westphal) [1840167] - [net] mptcp: add rmem queue accounting (Florian Westphal) [1840167] - [net] mptcp: update mptcp ack sequence from work queue (Florian Westphal) [1840167] - [net] mptcp: add work queue skeleton (Florian Westphal) [1840167] - [net] mptcp: add and use mptcp_data_ready helper (Florian Westphal) [1840167] - [net] xfrm: fix a NULL-ptr deref in xfrm_local_error (Xin Long) [1835208] - [net] xfrm: add IPv6 support for espintcp (Sabrina Dubroca) [1446392] - [net] xfrm: add support for UDPv6 encapsulation of ESP (Sabrina Dubroca) [1446392] - [net] xfrm: ifdef setsockopt(UDP_ENCAP_ESPINUDP/UDP_ENCAP_ESPINUDP_NON_IKE) (Sabrina Dubroca) [1446392] - [net] esp: Export esp_output_fill_trailer function (Sabrina Dubroca) [1446392] - [net] udp: fix jump label misuse (Sabrina Dubroca) [1446392] - [net] udp: implement complete book-keeping for encap_needed (Sabrina Dubroca) [1446392] - [net] xfrm: espintcp: save and call old ->sk_destruct (Sabrina Dubroca) [1446392] - [net] xfrm: add espintcp (RFC 8229) (Sabrina Dubroca) [1446392] - [net] esp4: split esp_output_udp_encap and introduce esp_output_encap (Sabrina Dubroca) [1446392] - [net] esp4: prepare esp_input_done2 for non-UDP encapsulation (Sabrina Dubroca) [1446392] - [net] xfrm: add route lookup to xfrm4_rcv_encap (Sabrina Dubroca) [1446392] - [net] xfrm: introduce xfrm_trans_queue_net (Sabrina Dubroca) [1446392] - [net] add queue argument to __skb_wait_for_more_packets and __skb_{, try_}recv_datagram (Sabrina Dubroca) [1446392] - [net] use skb_queue_empty_lockless() in busy poll contexts (Sabrina Dubroca) [1446392] - [include] net: add skb_queue_empty_lockless() (Sabrina Dubroca) [1446392] - [net] add READ_ONCE() annotation in __skb_wait_for_more_packets() (Sabrina Dubroca) [1446392] - [net] datagram: remove rendundant 'peeked' argument (Sabrina Dubroca) [1446392] - [tools] kvm: selftests: fix rdtsc() for vmx_tsc_adjust_test (Vitaly Kuznetsov) [1841490] - [x86] kvm: lapic: Also cancel preemption timer when disarm LAPIC timer (Vitaly Kuznetsov) [1841490] - [s390] kvm_host: unify VM_STAT and VCPU_STAT definitions in a single place (Vitaly Kuznetsov) [1841490] - [x86] kvm/x86: Remove redundant function implementations (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: VMX preemption timer migration test (Vitaly Kuznetsov) [1841490] - [tools] tools arch kvm: Sync kvm headers with the kernel sources (Vitaly Kuznetsov) [1841490] - [tools] tools headers uapi: Update tools's copy of kvm.h headers (Vitaly Kuznetsov) [1841490] - [tools] tools headers: Sync the various kvm.h header copies (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Fix VMX preemption timer migration (Vitaly Kuznetsov) [1841490] - [uapi] x86/kvm/hyper-v: Explicitly align hcall param for kvm_hyperv_exit (Vitaly Kuznetsov) [1841490] - [virt] kvm: introduce kvm_read_guest_offset_cached() (Vitaly Kuznetsov) [1841490] - [virt] kvm: rename kvm_arch_can_inject_async_page_present() to kvm_arch_can_dequeue_async_page_present() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Replace zero-length array with flexible-array (Vitaly Kuznetsov) [1841490] - [virt] revert "kvm: No need to retry for hva_to_pfn_remapped()" (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: implement KVM_GET_NESTED_STATE and KVM_SET_NESTED_STATE (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: fix smm test on SVM (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: add a SVM version of state-test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: introduce cpu_has_svm() check (Vitaly Kuznetsov) [1841490] - [x86] kvm: mmu: pass arbitrary CR0/CR4/EFER to kvm_init_shadow_mmu (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave guest mode when clearing EFER.SVME (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: split nested_vmcb_check_controls (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_HIF_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove HF_VINTR_MASK (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synthesize correct EXITINTINFO on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: preserve VGIF across VMCB switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract svm_set_gif (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove unnecessary if (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: synchronize VMCB controls updated by the processor on every vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: restore clobbered INT_CTL fields after clearing VINTR (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: save all control fields in svm->nested (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove trailing padding for struct vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: pass vmcb_control_area to copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: clean up tsc_offset update (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move MMU setup to nested_prepare_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract preparation of VMCB for nested run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: extract load_nested_vmcb_control (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: move map argument out of enter_svm_guest_mode (Vitaly Kuznetsov) [1841490] - [virt] kvm: check userspace_addr for all memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: always update CR3 in VMCS (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: always update CR3 in VMCB (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: correctly inject INIT vmexits (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: remove exit_required (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: inject exceptions via svm_check_nested_events (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: enable event window in inject_pending_event (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: track manually whether an event has been injected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve registers modifications done before nested_svm_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Initialize tdp_level during vCPU creation (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: leave ASID aside in copy_vmcb_control_area (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: fix condition for filtering async PF (Vitaly Kuznetsov) [1841490] - [x86] kvm: Fix the indentation to match coding style (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: replace "fall through" with "return" to indicate different case (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Take an unsigned 32-bit int for has_emulated_msr()'s index (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Remove superfluous brackets from case statement (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: allow KVM_STATE_NESTED_MTF_PENDING in kvm_state flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: simplify is_mmio_spte (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: don't expose MSR_IA32_UMWAIT_CONTROL unconditionally (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: enable X86_FEATURE_WAITPKG in KVM capabilities (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set mmio_value to '0' if reserved #PF can't be generated (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: only do L1TF workaround on affected processors (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Migrate the VMX-preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Change emulated VMX-preemption timer hrtimer to absolute (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Really make emulated nested preemption timer pinned (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove unused 'ops' param from nested_vmx_hardware_setup() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Remove unnecessary V_IRQ unsetting (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Merge svm_enable_vintr into svm_set_vintr (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle preemption timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: TSCDEADLINE MSR emulation fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_can_use_hv_timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize posted-interrupt delivery for timer fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce more exit_fastpath_completion enum values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce kvm_vcpu_exit_request() helper (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Print symbolic names of VMX VM-Exit flags in traces (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce generic fastpath handler (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop superfluous VMREAD of vmcs02.GUEST_SYSENTER_* (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Truncate writes to vmcs.SYSENTER_EIP/ESP for 32-bit vCPU (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Improve handle_external_interrupt_irqoff inline assembly (Vitaly Kuznetsov) [1841490] - [documentation] kvm: documentation: Fix up cpuid page (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sanity check on gfn before removal (Vitaly Kuznetsov) [1841490] - [virt] kvm: No need to retry for hva_to_pfn_remapped() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Force ASYNC_PF_PER_VCPU to be power of two (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Remove unneeded __ASM_SIZE usage with POP instruction (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add a helper to consolidate root sp allocation (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Drop KVM's hugepage enums in favor of the kernel's enums (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move max hugepage level to a separate #define (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Tweak PSE hugepage handling to avoid 2M vs 4M conundrum (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Cleanup vcpu->arch.guest_xstate_size (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Tweak handling of failure code for nested VM-Enter failure (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Capture TDP level when updating CPUID (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move nested EPT out of kvm_x86_ops.get_tdp_level() hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR0 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Add proper cache tracking for CR4 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Unconditionally validate CR3 during nested transitions (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Save L1 TSC offset in 'struct kvm_vcpu_arch' (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when temporarily switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip IBPB when switching between vmcs01 and vmcs02 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use accessor to read vmcs.INTR_INFO when handling exception (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: handle wrap around 32-bit address space (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace late check_nested_events() hack with more precise fix (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_get_rflags() to query RFLAGS in vmx_interrupt_blocked() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vmx_interrupt_blocked() directly from vmx_handle_exit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: WARN on injected+pending exception even in nested case (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Preserve IRQ/NMI/SMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report interrupts as allowed when in L2 and exit-on-interrupt is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Prioritize SMI over nested IRQ/NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve IRQ/NMI priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Split out architectural interrupt/NMI/SMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Split out architectural interrupt/NMI blocking checks (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Move SMI vmexit handling to svm_check_nested_events() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Report NMIs as allowed when in L2 and Exit-on-NMI is set (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: replace is_smm checks with kvm_x86_ops.smi_allowed (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Make return for {interrupt_nmi, smi}_allowed() a bool instead of int (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set KVM_REQ_EVENT if run is canceled with req_immediate_exit set (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Open a window for pending nested VMX preemption timer (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Preserve exception priority irrespective of exiting behavior (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Implement check_nested_events for NMI (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: immediately inject INTR vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: leave halted state on vmexit (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: introduce nested_run_pending (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Disable AVIC before setting V_IRQ (Vitaly Kuznetsov) [1841490] - [virt] kvm: Introduce kvm_make_all_cpus_request_except() (Vitaly Kuznetsov) [1841490] - [tools] kvm: vmx: pass correct DR6 for GD userspace exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86, svm: isolate vcpu->arch.dr6 from vmcb->save.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: keep DR6 synchronized with vcpu->arch.dr6 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: trap #DB and #BP to userspace if guest debugging is on (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add KVM_SET_GUEST_DEBUG test (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fix single-step with KVM_SET_GUEST_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Set RTM for DB_VECTOR too for KVM_EXIT_DEBUG (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: fix DR6 delivery for various cases of #DB injection (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Declare KVM_CAP_SET_GUEST_DEBUG properly (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Fix build for evmcs.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Use KVM CPU capabilities to determine CR4 reserved bits (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB path (Vitaly Kuznetsov) [1841490] - [x86] kvm: ioapic: Restrict lazy EOI update to edge-triggered interrupts (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Fixes posted interrupt check for IRQs delivery modes (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fill in kvm_run->debug.arch.dr[67] (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Replace a BUG_ON(1) with BUG() to squash clang warning (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: do not allow VMRUN inside SMM (Vitaly Kuznetsov) [1841490] - [virt] kvm: add capability for halt polling (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Store vmcs.EXIT_QUALIFICATION as an unsigned long, not u32 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a redundant call to vmx_get_intr_info() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: move nested-related kvm_x86_ops to a separate struct (Vitaly Kuznetsov) [1841490] - [x86] kvm: evmcs: check if nesting is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: check_nested_events is never NULL (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm/set_memory_region_test: do not check RIP if the guest shuts down (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: avoid infinite loop on NPF from bad address (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove redundant argument to kvm_arch_vcpu_ioctl_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: nsvm: Check for CR0.CD and CR0.NW on VMRUN of nested guests (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Improve latency for single target IPI fastpath (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Optimize handling of VM-Entry failures in vmx_vcpu_run() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Remove non-functional "support" for CR3 target values (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Avoid an extra memslot lookup in try_async_pf() for L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Set @writable to false for non-visible accesses by L2 (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_INTR_INFO using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Cache vmcs.EXIT_QUALIFICATION using arch avail_reg flags (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop manual clearing of segment cache on nested VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reset register cache (available and dirty masks) on VMCS switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invoke ept_save_pdptrs() if and only if PAE paging is enabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Rename exit_reason to vm_exit_reason for nested VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Cast exit_reason to u16 to check for nested EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Pull exit_reason from vcpu_vmx in nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Drop a superfluous WARN on reflecting EXTERNAL_INTERRUPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Split VM-Exit reflection logic into L0 vs. L1 wants (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: match comment with return type for nested_vmx_exit_reflected (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested VM-Exit tracepoint into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move VM-Fail check out of nested_vmx_exit_reflected() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Uninline nested_vmx_reflect_vmexit(), i.e. move it to nested.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move reflection check into nested_vmx_reflect_vmexit() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Use do_machine_check to pass MCE to the host (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean cr3/pgd handling in vmx_load_mmu_pgd() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Replace "cr3" with "pgd" in "new cr3/pgd" related code (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Free only the affected contexts when emulating INVEPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Don't flush TLB on nested VMX transition (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Skip MMU sync on nested VMX transition when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add module param to force TLB flush on root reuse (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Add separate override for MMU sync during fast CR3 switch (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Move fast_cr3_switch() side effects to __kvm_mmu_new_cr3() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Don't reload APIC access page if its control is disabled (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Retrieve APIC access page HPA only when necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Reload APIC access page on nested VM-Exit only if necessary (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Selectively use TLB_FLUSH_CURRENT for nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86/mmu: Use KVM_REQ_TLB_FLUSH_CURRENT for MMU specific flushes (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Introduce KVM_REQ_TLB_FLUSH_CURRENT to flush current ASID (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Add helper to handle TLB flushes on nested VM-Enter/VM-Exit (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Rename ->tlb_flush() to ->tlb_flush_all() (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Document the ASID logic in svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Introduce vmx_flush_tlb_current() (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Move nested_get_vpid02() to vmx/nested.h (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vmx_flush_tlb() to vmx.c (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Wire up ->tlb_flush_guest() directly to svm_flush_tlb() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Drop @invalidate_gpa param from kvm_x86_ops' tlb_flush() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Clean up vmx_flush_tlb_gva() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: make Hyper-V PV TLB flush use tlb_flush_guest() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Move "flush guest's TLB" logic to separate kvm_x86_ops hook (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Use vpid_sync_vcpu_addr() to emulate INVVPID with address (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Drop redundant capability checks in low level INVVPID helpers (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Handle INVVPID fallback logic in vpid_sync_vcpu_addr() (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Move vpid_sync_vcpu_addr() down a few lines (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Use vpid_sync_context() directly when possible (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Skip global INVVPID fallback if vpid==0 in vpid_sync_context() (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Sync SPTEs when injecting page/EPT fault into L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: cleanup kvm_inject_emulated_page_fault (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: introduce kvm_mmu_invalidate_gva (Vitaly Kuznetsov) [1841490] - [x86] kvm: Disable objtool frame pointer checking for vmenter.S (Vitaly Kuznetsov) [1841490] - [x86] kvm: Remove CREATE_IRQCHIP/SET_PIT2 race (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Export kvm_propagate_fault() (as kvm_inject_emulated_page_fault) (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all roots when emulating INVVPID without EPT (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Invalidate all EPTP contexts when emulating INVEPT for L1 (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: Validate the EPTP when emulating INVEPT(EXTENT_CONTEXT) (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Flush all EPTP/VPID contexts on remote TLB flush (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add testcase for creating max number of memslots (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Make set_memory_region_test common to all architectures (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "zero" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] selftests: kvm: Add vm_get_fd() in kvm_util (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add "delete" testcase to set_memory_region_test (Vitaly Kuznetsov) [1841490] - [tools] kvm: sefltests: Add explicit synchronization to move mem region test (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add GUEST_ASSERT variants to pass values to host (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Add util to delete memory region (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Use kernel's list instead of homebrewed replacement (Vitaly Kuznetsov) [1841490] - [tools] kvm: selftests: Take vcpu pointer instead of id in vm_vcpu_rm() (Vitaly Kuznetsov) [1841490] - [x86] kvm: pass through CPUID(0x80000006) (Vitaly Kuznetsov) [1841490] - [x86] kvm: x86: Return updated timer current count register from KVM_GET_LAPIC (Vitaly Kuznetsov) [1841490] - [virt] kvm: remove redundant assignment to variable r (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Fix __svm_vcpu_run declaration (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not setup frame pointer in __svm_vcpu_run (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: Do not mark svm_vcpu_run with STACK_FRAME_NON_STANDARD (Vitaly Kuznetsov) [1841490] - [x86] kvm: nvmx: reflect MTF VM-exits if injected by L1 (Vitaly Kuznetsov) [1841490] - [kernel] kvm: Check validity of resolved slot when searching memslots (Vitaly Kuznetsov) [1841490] - [x86] kvm: vmx: Enable machine check support for 32bit targets (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: move more vmentry code to assembly (Vitaly Kuznetsov) [1841490] - [x86] kvm: svm: fix compilation with modular PSP and non-modular KVM (Vitaly Kuznetsov) [1841490] - [x86] Increase KVM_MAX_VCPUS to 1024, KVM_MAX_VCPU_ID to 2048 (Eduardo Habkost) [1810811] - [scsi] scsi: core: avoid host-wide host_busy counter for scsi_mq (Ewan Milne) [1761928] - [gpio] gpio: xgene-sb: set valid IRQ type in to_irq() (Brian Masney) [1802402] - [block] rbd: compression_hint option (Ilya Dryomov) [1835925] - [include] libceph: support for alloc hint flags (Ilya Dryomov) [1835925] - [net] libceph: read_from_replica option (Ilya Dryomov) [1835925] - [net] libceph: support for balanced and localized reads (Ilya Dryomov) [1835925] - [net] libceph: crush_location infrastructure (Ilya Dryomov) [1835925] - [net] libceph: decode CRUSH device/bucket types and names (Ilya Dryomov) [1835925] - [net] libceph: add non-asserting rbtree insertion helper (Ilya Dryomov) [1835925] - [pci] PCI: pciehp: Fix MSI interrupt race (Myron Stowe) [1779610] - [security] ima: Remove __init annotation from ima_pcrread() (Bruno Meneguele) [1843774] - [security] ima: Call ima_calc_boot_aggregate() in ima_eventdigest_init() (Bruno Meneguele) [1843774] - [security] ima: Directly assign the ima_default_policy pointer to ima_rules (Bruno Meneguele) [1843774] - [documentation] powerpc/fadump: sysfs for fadump memory reservation (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Mark /sys/kernel/fadump_* sysfs files deprecated (Diego Domingos) [1804202] - [documentation] powerpc/powernv: Move core and fadump_release_opalcore under new kobject (Diego Domingos) [1804202] - [powerpc] powerpc/fadump: Reorganize /sys/kernel/fadump_* sysfs files (Diego Domingos) [1804202] - [fs] sysfs: wrap __compat_only_sysfs_link_entry_to_kobj function to change the symlink name (Diego Domingos) [1804202] - [documentation] Documentation/ABI: Add ABI documentation for /sys/kernel/fadump_* (Diego Domingos) [1804202] - [hwtracing] intel_th: pci: Add Tiger Lake CPU support (Jiri Olsa) [1483079] - [netdrv] e1000e: fix S0ix flows for cable connected case (Ken Cox) [1781385] - [netdrv] e1000e: reject unsupported coalescing params (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Tiger Lake device (Ken Cox) [1781385] - [netdrv] e1000e: Add support for Alder Lake (Ken Cox) [1781385] - [netdrv] net: intel: e1000e: fix possible sleep-in-atomic-context bugs in e1000e_get_hw_semaphore() (Ken Cox) [1781385] - [netdrv] e1000e: fix missing cpu_to_le64 on buffer_addr (Ken Cox) [1781385] - [netdrv] e1000(e): use new helper tcp_v6_gso_csum_prep (Ken Cox) [1781385] - [netdrv] e1000e: Revert "e1000e: Make watchdog use delayed work" (Ken Cox) [1781385] - [netdrv] e1000e: Use netdev_info instead of pr_info for link messages (Ken Cox) [1781385] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781385] - [netdrv] e1000e: Fix compiler warning when CONFIG_PM_SLEEP is not set (Ken Cox) [1781385] - [netdrv] net: ixgbevf: reject unsupported coalescing params (Ken Cox) [1781379] - [netdrv] ixgbevf: Remove limit of 10 entries for unicast filter list (Ken Cox) [1781379] - [netdrv] net: ixgbe: reject unsupported coalescing params (Ken Cox) [1781378] - [netdrv] ixgbe: Use pci_get_dsn() (Ken Cox) [1781378] - [netdrv] intel: Replace zero-length array with flexible-array member (Ken Cox) [1781378] - [netdrv] ixgbe: Fix calculation of queue with VFs and flow director on interface flap (Ken Cox) [1781378] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Ken Cox) [1781378] - [netdrv] ixgbe: protect TX timestamping from API misuse (Ken Cox) [1781378] - [netdrv] ixgbe: Make use of cpumask_local_spread to improve RSS locality (Ken Cox) [1781378] - [netdrv] ixgbe: Remove duplicate clear_bit() call (Ken Cox) [1781378] - [netdrv] ixgbe: Add UDP segmentation offload support (Ken Cox) [1781378] - [x86] x86/resctrl: Fix invalid attempt at removing the default resource group (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Clean up unused function parameter in mkdir path (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix a deadlock due to inaccurate reference (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free due to inaccurate refcount of rdtgroup (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix use-after-free when deleting resource groups (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Add task resctrl information display (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Check monitoring static key in the MBM overflow handler (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Do not reconfigure exiting tasks (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential memory leak (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix an imbalance in domain_remove_cpu() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Fix potential lockdep warning (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent NULL pointer dereference when reading mondata (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Cleanup cbm_ensure_valid() (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Prevent possible overrun during bitmap operations (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Don't stop walking closids when a locksetup group is found (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Use _ASM_BX to avoid ifdeffery (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove unused variable (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Remove duplicate MSR_MISC_FEATURE_CONTROL definition (Alexander Beregalov) [1830948] - [x86] x86/resctrl: Avoid confusion over the new X86_RESCTRL config (Alexander Beregalov) [1830948] - [x86] x86/cache: Rename config option to CONFIG_X86_RESCTRL (Alexander Beregalov) [1830948] - [tools] perf flamegraph: Use /bin/bash for report and record scripts (Michael Petlan) [1281843] - [tools] perf script: Add flamegraph.py script (Michael Petlan) [1281843] - [tools] perf script: Avoid NULL dereference on symbol (Michael Petlan) [1841130] - [tools] tools/build: tweak unused value workaround (Michael Petlan) [1841130] - [tools] perf stat: Fix no metric header if --per-socket and --metric-only set (Michael Petlan) [1841130] - [tools] perf python: Check if clang supports -fno-semantic-interposition (Michael Petlan) [1841130] - [tools] perf tools: Support Python 3.8+ in Makefile (Michael Petlan) [1841130] - [tools] perf script: Fix invalid read of directory entry after closedir() (Michael Petlan) [1841130] - [tools] perf script report: Fix SEGFAULT when using DWARF mode (Michael Petlan) [1841130] - [tools] perf script: add -S/--symbols documentation (Michael Petlan) [1841130] - [tools] perf pmu-events x86: Use CPU_CLK_UNHALTED.THREAD in Kernel_Utilization metric (Michael Petlan) [1841130] - [tools] perf events parser: Add missing Intel CPU events to parser (Michael Petlan) [1841130] - [tools] perf script: Allow --symbol to accept hexadecimal addresses (Michael Petlan) [1841130] - [tools] perf top: Support hotkey to change sort order (Michael Petlan) [1841130] - [tools] perf top: Support --group-sort-idx to change the sort order (Michael Petlan) [1841130] - [tools] perf symbols: Fix arm64 gap between kernel start and module end (Michael Petlan) [1841130] - [tools] perf build-test: Honour JOBS to override detection of number of cores (Michael Petlan) [1841130] - [tools] perf script: Add --show-cgroup-events option (Michael Petlan) [1841130] - [tools] perf top: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Add --all-cgroups option (Michael Petlan) [1841130] - [tools] perf record: Support synthesizing cgroup events (Michael Petlan) [1841130] - [tools] perf report: Add 'cgroup' sort key (Michael Petlan) [1841130] - [tools] perf cgroup: Maintain cgroup hierarchy (Michael Petlan) [1841130] - [tools] perf tools: Basic support for CGROUP event (Michael Petlan) [1841130] - [tools] perf tools: Add file-handle feature test (Michael Petlan) [1841130] - [tools] perf python: Include rwsem.c in the pythong biding (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] perf script: Introduce --deltatime option (Michael Petlan) [1841130] - [tools] perf: Normalize gcc parameter when generating arch errno table (Michael Petlan) [1841130] - [tools] perf parse-events: Add defensive NULL check (Michael Petlan) [1841130] - [tools] perf callchain: Update docs regarding kernel/user space unwinding (Michael Petlan) [1841130] - [tools] perf cpumap: Fix snprintf overflow check (Michael Petlan) [1841130] - [tools] perf test: Test pmu-events aliases (Michael Petlan) [1841130] - [tools] perf pmu: Make pmu_uncore_alias_match() public (Michael Petlan) [1841130] - [tools] perf pmu: Add is_pmu_core() (Michael Petlan) [1841130] - [tools] perf test: Add pmu-events test (Michael Petlan) [1841130] - [tools] perf pmu: Refactor pmu_add_cpu_aliases() (Michael Petlan) [1841130] - [tools] perf jevents: Support test events folder (Michael Petlan) [1841130] - [tools] perf jevents: Add some test events (Michael Petlan) [1841130] - [tools] perf tools: Unify a bit the build directory output (Michael Petlan) [1841130] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events incase of overlapping events (Michael Petlan) [1841130] - [tools] perf stat: Align the output for interval aggregation mode (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkeys to let user select any event for sorting (Michael Petlan) [1841130] - [tools] perf report: Support a new key to reload the browser (Michael Petlan) [1841130] - [tools] perf report: Allow specifying event to be used as sort key in --group output (Michael Petlan) [1841130] - [tools] perf report/top TUI: Support hotkey 'a' for annotation of unresolved addresses (Michael Petlan) [1841130] - [tools] perf report: Support interactive annotation of code without symbols (Michael Petlan) [1841130] - [tools] perf report: Print al_addr when symbol is not found (Michael Petlan) [1841130] - [tools] perf symbols: Consolidate symbol fixup issue (Michael Petlan) [1841130] - [tools] perf parse-events: Fix 3 use after frees found with clang ASAN (Michael Petlan) [1841130] - [tools] perf/tests: Add CET instructions to the new instructions test (Michael Petlan) [1841130] - [tools] perf expr: Fix copy/paste mistake (Michael Petlan) [1841130] - [tools] perf report: Fix no branch type statistics report issue (Michael Petlan) [1841130] - [tools] perf tools: Give synthetic mmap events an inode generation (Michael Petlan) [1841130] - [tools] perf test: Print if shell directory isn't present (Michael Petlan) [1841130] - [tools] perf record: Fix binding of AIO user space buffers to nodes (Michael Petlan) [1841130] - [tools] perf intel-pt: Update intel-pt.txt file with new location of the documentation (Michael Petlan) [1841130] - [tools] perf intel-pt: Add Intel PT man page references (Michael Petlan) [1841130] - [tools] perf intel-pt: Rename intel-pt.txt and put it in man page format (Michael Petlan) [1841130] - [tools] perf doc: Set man page date to last git commit (Michael Petlan) [1841130] - [tools] perf cs-etm: Fix unsigned variable comparison to zero (Michael Petlan) [1841130] - [tools] perf cs-etm: Optimize copying last branches (Michael Petlan) [1841130] - [tools] perf cs-etm: Correct synthesizing instruction samples (Michael Petlan) [1841130] - [tools] perf cs-etm: Continuously record last branch (Michael Petlan) [1841130] - [tools] perf cs-etm: Swap packets for instruction samples (Michael Petlan) [1841130] - [tools] perf map: Use strstarts() to look for Android libraries (Michael Petlan) [1841130] - [tools] perf vendor events intel: Add NO_NMI_WATCHDOG metric constraint (Michael Petlan) [1841130] - [tools] perf metricgroup: Support metric constraint (Michael Petlan) [1841130] - [tools] perf util: Factor out sysctl__nmi_watchdog_enabled() (Michael Petlan) [1841130] - [tools] perf metricgroup: Factor out metricgroup__add_metric_weak_group() (Michael Petlan) [1841130] - [tools] perf jevents: Support metric constraint (Michael Petlan) [1841130] - [tools] perf block-info: Support color ops to print block percents in color (Michael Petlan) [1841130] - [tools] perf block-info: Allow selecting which columns to report and its order (Michael Petlan) [1841130] - [tools] perf diff: Use __block_info__cmp() to replace block_pair_cmp() (Michael Petlan) [1841130] - [tools] perf expr: Make expr__parse() return -1 on error (Michael Petlan) [1841130] - [tools] perf expr: Straighten expr__parse()/expr__find_other() interface (Michael Petlan) [1841130] - [tools] perf expr: Increase EXPR_MAX_OTHER to support metrics with more than 15 variables (Michael Petlan) [1841130] - [tools] perf expr: Move expr lexer to flex (Michael Petlan) [1841130] - [tools] perf expr: Add expr.c object (Michael Petlan) [1841130] - [tools] perf header: Add check for unexpected use of reserved membrs in event attr (Michael Petlan) [1841130] - [tools] perf evsel: Support PERF_SAMPLE_BRANCH_HW_INDEX (Michael Petlan) [1841130] - [tools] perf tools: Add hw_idx in struct branch_stack (Michael Petlan) [1841130] - [tools] tools headers UAPI: Update tools's copy of linux/perf_event.h (Michael Petlan) [1841130] - [tools] tools lib traceevent: Remove extra '\n' in print_event_time() (Michael Petlan) [1841130] - [tools] perf annotate: Get rid of annotation->nr_jumps (Michael Petlan) [1841130] - [tools] perf llvm: Add debug hint message about missing kernel-devel package (Michael Petlan) [1841130] - [tools] perf stat: Show percore counts in per CPU output (Michael Petlan) [1841130] - [tools] tools lib api fs: Move cgroupsfs_find_mountpoint() (Michael Petlan) [1841130] - [kernel] perf/core: fix parent pid/tid in task exit events (Michael Petlan) [1841130] - [x86] perf/x86/cstate: Add Jasper Lake CPU support (Michael Petlan) [1841130] - [kernel] perf/core: Disable page faults when getting phys address (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add Ice Lake server uncore support (Michael Petlan) [1841130] - [kernel] perf/cgroup: Correct indirection in perf_less_group_idx() (Michael Petlan) [1841130] - [kernel] perf/core: Fix event cgroup tracking (Michael Petlan) [1841130] - [init] perf/core: Add PERF_SAMPLE_CGROUP feature (Michael Petlan) [1841130] - [kernel] perf/core: Add PERF_RECORD_CGROUP event (Michael Petlan) [1841130] - [x86] x86 user stack frame reads: switch to explicit __get_user() (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Factor out __snr_uncore_mmio_init_box (Michael Petlan) [1841130] - [x86] perf/x86/intel/uncore: Add box_offsets for free-running counters (Michael Petlan) [1841130] - [kernel] perf/core: Fix reversed NULL check in perf_event_groups_less() (Michael Petlan) [1841130] - [kernel] perf/core: Fix endless multiplex timer (Michael Petlan) [1841130] - [kernel] perf/cgroup: Order events in RB tree by cgroup id (Michael Petlan) [1841130] - [kernel] perf/cgroup: Grow per perf_cpu_context heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Add per perf_cpu_context min_heap storage (Michael Petlan) [1841130] - [kernel] perf/core: Use min_heap in visit_groups_merge() (Michael Petlan) [1841130] - [lib] lib: Introduce generic min-heap (Michael Petlan) [1841130] - [kernel] perf/cgroup: Reorder perf_cgroup_connect() (Michael Petlan) [1841130] - [kernel] perf/core: Remove 'struct sched_in_data' (Michael Petlan) [1841130] - [kernel] perf/core: Unify {pinned, flexible}_sched_in() (Michael Petlan) [1841130] - [x86] perf/x86: Add Intel Tiger Lake uncore support (Michael Petlan) [1841130] - [x86] perf/x86/intel: Output LBR TOS information correctly (Michael Petlan) [1841130] - [powerpc] perf/core: Add new branch sample type for HW index of raw branch records (Michael Petlan) [1841130] - [x86] perf/x86/intel: Avoid unnecessary PEBS_ENABLE MSR access in PMI (Michael Petlan) [1841130] - [x86] x86/cpu: Add Jasper Lake to Intel family (Michael Petlan) [1841130] - [fs] pstore/ram: Run without kernel crash dump region (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Avoid NULL deref in ftrace merging failure path (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore: Convert buf_lock to semaphore (Desnes Augusto Nunes do Rosario) [1824906] - [fs] pstore/ram: Correctly calculate usable PRZ bytes (Desnes Augusto Nunes do Rosario) [1824906] - [drm] memremap: add an owner field to struct dev_pagemap (Don Dutile) [1816441] - [mm] mm: devmap: refactor 1-based refcounting for ZONE_DEVICE pages (Don Dutile) [1816441] - [mm] mm/swap: fix release_pages() when releasing devmap pages (Don Dutile) [1816441] - [mm] mm: revert remove MEMORY_DEVICE_PUBLIC support in swap.c (Don Dutile) [1816441] - [nvdimm] mm: Cleanup __put_devmap_managed_page() vs ->page_free() (Don Dutile) [1816441] - [documentation] hv_netvsc: Update document for XDP support (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Fix XDP refcnt for synthetic and VF NICs (Mohammed Gamal) [1815497] - [netdrv] hv_netvsc: Add XDP support (Mohammed Gamal) [1815497] - [powerpc] kvm: ppc: book3s hv: Remove user-triggerable WARN_ON (Laurent Vivier) [1784050] - [powerpc] kvm: ppc: book3s hv: Close race with page faults around memslot flushes (Laurent Vivier) [1784050] - [powerpc] pseries/svm: Allow IOMMU to work in SVM (Michael Roth) [1730194] - [powerpc] pseries/iommu: Separate FW_FEATURE_MULTITCE to put/stuff features (Michael Roth) [1730194] - [powerpc] pseries: Allow not having ibm, hypertas-functions::hcall-multi-tce for DDW (Michael Roth) [1730194] - [powerpc] revert "powerpc/pseries/iommu: Don't use dma_iommu_ops on secure guests" (Michael Roth) [1730194] - [powerpc] ultravisor: Add PPC_UV config option (Michael Roth) [1730194] - [mm] ksm: Export ksm_madvise() (Michael Roth) [1730194] - [powerpc] configs: Enable secure guest support in pseries and ppc64 defconfigs (Michael Roth) [1730194] - [powerpc] prom_init: Undo relocation before entering secure mode (Michael Roth) [1730194] - [powerpc] pseries/svm: Force SWIOTLB for secure guests (Michael Roth) [1730194] - [powerpc] pseries/iommu: Don't use dma_iommu_ops on secure guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Disable doorbells in SVM guests (Michael Roth) [1730194] - [powerpc] pseries/svm: Export guest SVM status to user space via sysfs (Michael Roth) [1730194] - [powerpc] pseries/svm: Use shared memory for Debug Trace Log (DTL) (Michael Roth) [1730194] - [powerpc] prom_init: Pass the "os-term" message to hypervisor (Michael Roth) [1730194] - [powerpc] Add support for adding an ESM blob to the zImage wrapper (Michael Roth) [1730194] - [powerpc] pseries: Introduce option to build secure virtual machines (Michael Roth) [1730194] - [s390] mm: Remove sev_active() function (Michael Roth) [1730194] - [kernel] fs/core/vmcore: Move sev_active() reference to x86 arch code (Michael Roth) [1730194] - [kernel] x86, s390/mm: Move sme_active() and sme_me_mask to x86-specific header (Michael Roth) [1730194] - [kernel] dma-mapping: Remove dma_check_mask() (Michael Roth) [1730194] - [kernel] swiotlb: Remove call to sme_active() (Michael Roth) [1730194] - [x86] s390: Move ARCH_HAS_MEM_ENCRYPT definition to arch/Kconfig (Michael Roth) [1730194] - [powerpc] xmon: don't access ASDR in VMs (Michael Roth) [1730194] - [powerpc] xmon: Fix compile error in print_insn* functions (Michael Roth) [1730194] - [mm] memremap: provide a not device managed memremap_pages (Michael Roth) [1730194] - [mm] memremap: don't use a separate devm action for devmap_managed_enable_get (Michael Roth) [1730194] - [mm] memremap: remove the dev field in struct dev_pagemap (Michael Roth) [1730194] - [kernel] resource: add a not device managed request_free_mem_region variant (Michael Roth) [1730194] - [mm] turn migrate_vma upside down (Michael Roth) [1730194] - [kernel] mm: simplify ZONE_DEVICE page private data (Michael Roth) [1730194] - [kernel] mm: remove hmm_devmem_add (Michael Roth) [1730194] - [mm] remove hmm_vma_alloc_locked_page (Michael Roth) [1730194] - [dax] device-dax: use the dev_pagemap internal refcount (Michael Roth) [1730194] - [mm] export alloc_pages_vma (Michael Roth) [1730194] - [netdrv] net/mlx5: Kconfig: Fix spelling typo (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Introduce kconfig var for TC support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Move TC-specific code from en_main.c to en_tc.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract neigh-specific code from en_rep.c to rep/neigh.c (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Extract TC-specific code from en_rep.c to rep/tc.c (Alaa Hleihel) [1843359] - [infiniband] net/mlx5: Refactor imm_inval_pkey field in cqe struct (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: Take DCBNL-related definitions into dedicated files (Alaa Hleihel) [1843359] - [netdrv] net/mlx5: E-Switch: Move eswitch chains to a new directory (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: remove duplicated check chain_index in mlx5e_rep_setup_ft_cb (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: add mlx5e_rep_indr_setup_ft_cb support (Alaa Hleihel) [1843359] - [netdrv] net/mlx5e: refactor indr setup block (Alaa Hleihel) [1843359] - [infiniband] IB/mlx5: Fix DEVX support for MLX5_CMD_OP_INIT2INIT_QP command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Remove warning "devices are not on same switch HW" (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Add init2init as a modify command (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: replace EINVAL in mlx5e_flower_parse_meta() (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix MLX5_TC_CT dependencies (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Properly set default values when disabling adaptive moderation (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix stats update for matchall classifier (Alaa Hleihel) [1842258] - [netdrv] net: sched: expose HW stats types per action used by drivers (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix cast to restricted __be32 warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: en_tc: Fix incorrect type in initializer warnings (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Allow partial data mask for tunnel options (Alaa Hleihel) [1842258] - [include] net/mlx5: IPSec: Fix incorrect type for spi (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Accel: fpga tls fix cast to __be64 and incorrect argument types (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: cmd: Fix memset with byte count warning (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in return expression (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix cast to restricted __be32 (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: DR: Fix incorrect type in argument (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Drop multicast packets that this interface sent (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: IPoIB, Enable loopback packets for IPoIB interfaces (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix error flow in case of function_setup failure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: CT: Correctly get flow rule (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5e: Update netdev txq on completions during closure (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Annotate mutex destroy for root ns (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Don't maintain a case of del_sw_func being null (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix cleaning unmanaged flow tables (Alaa Hleihel) [1842258 1840408] - [netdrv] net/mlx5: Fix memory leak in mlx5_events_init (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix inner tirs handling (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: kTLS, Destroy key object after destroying the TIS (Alaa Hleihel) [1842258] - [netdrv] net/mlx5e: Fix allowed tc redirect merged eswitch offload cases (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Avoid processing commands before cmdif is ready (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix a race when moving command interface to events mode (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Add command entry handling completion (Alaa Hleihel) [1842258] - [infiniband] RDMA/mlx5: Fix NULL pointer dereference in destroy_prefetch_work (Alaa Hleihel) [1842258] - [netdrv] net/mlx5: Fix crash upon suspend/resume (Alaa Hleihel) [1842258 1841973] - [netdrv] net/mlx5e: Fix devlink port netdev unregistration sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Fix devlink port register sequence (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Use devlink virtual flavour for VF devlink port (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Add support for devlink-port in non-representors mode (Alaa Hleihel) [1842258 1790226] - [netdrv] net/mlx5e: Rename representor get devlink port function (Alaa Hleihel) [1842258 1790226] - [fs] nfsd4: add filename to states output ("J. Bruce Fields") [1475182] - [fs] nfsd4: stid display should preserve on-the-wire byte order ("J. Bruce Fields") [1475182] - [fs] nfsd4: common stateid-printing code ("J. Bruce Fields") [1475182] - [fs] nfsd: remove read permission bit for ctl sysctl ("J. Bruce Fields") [1475182] - [fs] nfsd: "\s" should be "s" ("J. Bruce Fields") [1475182] - [fs] nfsd: initialize i_private before d_add ("J. Bruce Fields") [1475182] - [fs] nfsd: use i_wrlock instead of rcu for nfsdfs i_private ("J. Bruce Fields") [1475182] - [fs] nfsd: fix dentry leak upon mkdir failure ("J. Bruce Fields") [1475182] - [fs] nfsd: Make __get_nfsdfs_client() static ("J. Bruce Fields") [1475182] - [fs] nfsd: Make two functions static ("J. Bruce Fields") [1475182] - [fs] nfsd: decode implementation id ("J. Bruce Fields") [1475182] - [fs] nfsd: use 64-bit seconds fields in nfsd v4 code ("J. Bruce Fields") [1475182] - [fs] nfsd: create xdr_netobj_dup helper ("J. Bruce Fields") [1475182] - [fs] nfsd: allow forced expiration of NFSv4 clients ("J. Bruce Fields") [1475182] - [fs] nfsd: create get_nfsdfs_clp helper ("J. Bruce Fields") [1475182] - [fs] nfsd4: show layout stateids ("J. Bruce Fields") [1475182] - [fs] nfsd: show lock and deleg stateids ("J. Bruce Fields") [1475182] - [fs] nfsd4: add file to display list of client's opens ("J. Bruce Fields") [1475182] - [fs] nfsd: add more information to client info file ("J. Bruce Fields") [1475182] - [include] nfsd: escape high characters in binary data ("J. Bruce Fields") [1475182] - [fs] nfsd: copy client's address including port number to cl_addr ("J. Bruce Fields") [1475182] - [fs] nfsd4: add a client info file ("J. Bruce Fields") [1475182] - [fs] nfsd: make client/ directory names small ints ("J. Bruce Fields") [1475182] - [fs] nfsd: add nfsd/clients directory ("J. Bruce Fields") [1475182] - [fs] nfsd4: use reference count to free client ("J. Bruce Fields") [1475182] - [fs] nfsd: rename cl_refcount ("J. Bruce Fields") [1475182] - [fs] nfsd: persist nfsd filesystem across mounts ("J. Bruce Fields") [1475182]- [wireless] iwlwifi: pcie: handle QuZ configs with killer NICs as well (Jarod Wilson) [1844129 1842382] - [net] mac80211: add ieee80211_is_any_nullfunc() (Jarod Wilson) [1844129] - [net] mac80211: sta_info: Add lockdep condition for RCU list usage (Jarod Wilson) [1844129] - [net] mac80211: fix channel switch trigger from unknown mesh peer (Jarod Wilson) [1844129] - [wireless] rtw88: avoid unused function warnings (Jarod Wilson) [1844129] - [wireless] brcmfmac: add stub for monitor interface xmit (Jarod Wilson) [1844129] - [wireless] iwlwifi: actually check allocated conf_tlv pointer (Jarod Wilson) [1844129] - [wireless] iwlwifi: fix WGDS check when WRDS is disabled (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: fix inactive TID removal return value usage (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: limit maximum queue appropriately (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: indicate correct RB size to device (Jarod Wilson) [1844129] - [wireless] iwlwifi: mvm: beacon statistics shouldn't go backwards (Jarod Wilson) [1844129] - [wireless] iwlwifi: pcie: actually release queue memory in TVQM (Jarod Wilson) [1844129] - [wireless] mac80211: populate debugfs only after cfg80211 init (Jarod Wilson) [1844129] - [net] mac80211: fix race in ieee80211_register_hw() (Jarod Wilson) [1844129] - [net] nl80211: fix NL80211_ATTR_FTM_RESPONDER policy (Jarod Wilson) [1844129] - [powerpc] powerpc/fadump: Account for memory_limit while reserving memory (Steve Best) [1840646] - [mm] mm: make deferred init's max threads arch-specific (David Hildenbrand) [1818764] - [mm] mm: parallelize deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: don't track number of pages during deferred initialization (David Hildenbrand) [1818764] - [kernel] padata: add basic support for multithreaded jobs (David Hildenbrand) [1818764] - [kernel] padata: allocate work structures for parallel jobs from a pool (David Hildenbrand) [1818764] - [init] padata: initialize earlier (David Hildenbrand) [1818764] - [kernel] padata: remove exit routine (David Hildenbrand) [1818764] - [documentation] padata: update documentation (David Hildenbrand) [1818764] - [mm] mm: call cond_resched() from deferred_init_memmap() (David Hildenbrand) [1818764] - [mm] mm: initialize deferred pages with interrupts enabled (David Hildenbrand) [1818764] - [mm] mm/pagealloc.c: call touch_nmi_watchdog() on max order boundaries in deferred init (David Hildenbrand) [1818764] - [mm] mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous() (David Hildenbrand) [1818764] - [mm] mm/page_alloc.c: fix regression with deferred struct page init (David Hildenbrand) [1818764] - [mm] mm: initialize MAX_ORDER_NR_PAGES at a time instead of doing larger sections (David Hildenbrand) [1818764] - [mm] mm: implement new zone specific memblock iterator (David Hildenbrand) [1818764] - [mm] mm: drop meminit_pfn_in_nid as it is redundant (David Hildenbrand) [1818764] - [kernel] audit: add subj creds to NETFILTER_CFG record to (Richard Guy Briggs) [1478533] - [kernel] audit: make symbol 'audit_nfcfgs' static (Richard Guy Briggs) [1478533] - [net] netfilter: add audit table unregister actions (Richard Guy Briggs) [1478533] - [net] audit: tidy and extend netfilter_cfg x_tables (Richard Guy Briggs) [1478533] - [x86] x86/efi: Allocate e820 buffer before calling efi_exit_boot_service (Lenny Szubowicz) [1824005] - [mm] hugetlb_cgroup: fix possible illegal access to memory (Joel Savitz) [1835398] - [kvm] KVM: s390: Remove false WARN_ON_ONCE for the PQAP instruction (Claudio Imbrenda) [1836184] - [sound] ASoC: Intel: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [thermal] thermal: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [powercap] powercap/intel_rapl: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [platform] platform/x86: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [pci] PCI: intel-mid: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [mmc] mmc: sdhci-acpi: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [idle] intel_idle: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [extcon] extcon: axp288: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [edac] EDAC: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [acpi] ACPI: Convert to new X86 CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/platform: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/kernel: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/perf/events: Convert to new CPU match macros (Prarit Bhargava) [1841649] - [x86] x86/cpu: Add consistent CPU match macros (Prarit Bhargava) [1841649] - [fs] fix autofs regression caused by follow_managed() changes (Miklos Szeredi) [1784857] - [fs] fs/namei.c: fix missing barriers when checking positivity (Miklos Szeredi) [1784857] - [fs] fix dget_parent() fastpath race (Miklos Szeredi) [1784857] - [fs] new helper: lookup_positive_unlocked() (Miklos Szeredi) [1784857] - [fs] fs/namei.c: pull positivity check into follow_managed() (Miklos Szeredi) [1784857] - [mm] x86/kasan: Fix boot with 5-level paging and KASAN (Baoquan He) [1838418] - [netdrv] bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error when allocating zero size context memory (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve AER slot reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix VF anti-spoof filter setup (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix "fw.mgmt" and "fw.nsci" info via devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add partno to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Read partno and serialno of the board from VPD (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add fw.mgmt.api version to devlink info_get cb (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Reset rings if ring reservation fails during open() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Free context memory after disabling PCI in probe error path (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return error if bnxt_alloc_ctx_mem() fails (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call devlink_port_type_clear() in remove() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Return -EAGAIN if fw command returns BUSY (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Modify some bnxt_hwrm_*_free() functions to void (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary assignment of return code (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Clear DCB settings after firmware reset (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Process the NQ under NAPI continuous polling (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Simplify __bnxt_poll_cqs_done() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Handle all NQ notifications in bnxt_poll_p5() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Use pci_get_dsn() (Jonathan Toppins) [1790621] - [netdrv] bnxt: reject unsupported coalescing params (Jonathan Toppins) [1790621] - [netdrv] net/broadcom: Clean broadcom code from driver versions (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: fix error handling when flashing from file (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: reinitialize IRQs when MTU is modified (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: add newline to netdev_*() format strings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve device shutdown method (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for devlink info command (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Rename switch_id to dsn (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support to update progress of flash update (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Move devlink_register before registering netdev (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Register devlink irrespective of firmware spec version (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor bnxt_dl_register() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Disable workaround for lost interrupts on 575XX B0 and newer chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Periodically check and remove aged-out ntuple filters (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Do not accept fragments for aRFS flow steering (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Support UDP RSS hashing on 575XX chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve bnxt_probe_phy() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Improve link up detection (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Call recovery done after reset is successfully done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Remove unnecessary NULL checks for fw_health (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for flashing the device via devlink (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Allow PHY settings on multi-function or NPAR PFs if allowed by FW (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add async. event logic for PHY configuration changes (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Refactor the initialization of the ethtool link settings (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Skip disabling autoneg before PHY loopback when appropriate (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Assign more RSS context resources to the VFs (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Initialize context memory to the value specified by firmware (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add chip IDs for 57452 and 57454 chips (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Report health status update after reset is done (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Set MASTER flag during driver registration (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Update firmware interface spec to 1.10.1.12 (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Fix array overrun in bnxt_fill_l2_rewrite_fields() (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for NAT(L3/L4 rewrite) (Jonathan Toppins) [1790621] - [netdrv] bnxt_en: Add support for L2 rewrite (Jonathan Toppins) [1790621] - [netdrv] net/mlx5: E-switch, Protect eswitch mode changes (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Extend eswitch enable to handle num_vfs change (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Split eswitch mode check to different helper function (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_unload_one() and its callers (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Simplify mlx5_register_device to return void (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: Avoid deriving mlx5_core_dev second time (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate esw state_lock mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5: E-switch, Annotate termtbl_mutex mutex destroy (Alaa Hleihel) [1835595 1663246] - [netdrv] net/mlx5e: CT: Fix offload with CT action after CT NAT action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix missing pedit action after ct clear action (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: remove set but not used variable 'unnew' (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix insert rules when TC_CT config isn't enabled (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix actions_match_supported() return (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Avoid false warning about rule may be used uninitialized (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Use correct type for chain, prio and level values (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix printing wrong error value (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Fix rejecting all egress rules not on vlan (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch: Fix using fwd and modify when firmware doesn't support it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Add missing inline to stub esw_add_restore_rule (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Enable restore table only if reg_c1 is supported (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, free flow_group_in after creating the restore table (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-switch, Fix mutex init order (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: CT: Change idr to xarray to protect parallel tuple id allocation (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Use rhashtable's ct entries instead of a separate list (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Fix stack usage compiler warning (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: CT: Support clear action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Handle misses after executing CT action (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Offload established flows (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: CT: Introduce connection tracking (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Support getting chain mapping (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Add support for offloading rules with no in_port (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Introduce global tables (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: en_rep: Create uplink rep root table after eswitch offloads table (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5: E-Switch, Enable reg c1 loopback when possible (Alaa Hleihel) [1790219 1663246] - [netdrv] net/mlx5e: Restore tunnel metadata on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c1 value on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Support inner header rewrite with goto action (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Disallow inserting vxlan/vlan egress rules without decap/pop (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Move tc tunnel parsing logic with the rest at tc_tun module (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Allow re-allocating mod header actions (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Restore chain id on miss (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Rx, Split rep rx mpwqe handler from nic (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Mark miss packets with new chain id mapping (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: E-Switch, Get reg_c0 value on CQE (Alaa Hleihel) [1790219 1790218 1663246] - [infiniband] net/mlx5: E-Switch, Move source port on reg_c0 to the upper 16 bits (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5: Introduce mapping infra for mapping unique ids to data (Alaa Hleihel) [1790219 1790218 1663246] - [netdrv] net/mlx5e: Add devlink fdb_large_groups parameter (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5: Change the name of steering mode param id (Alaa Hleihel) [1790203 1663246] - [netdrv] net/mlx5e: Fix an IS_ERR() vs NULL check (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: Verify goto chain offload support (Alaa Hleihel) [1663246] - [include] net/mlx5: HW bit for goto chain offload support (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Remove redundant comment about goto slow path (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Reduce number of arguments in slow path handling (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Use NL_SET_ERR_MSG_MOD() extack for errors (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Allow goto earlier chain if FW supports it (Alaa Hleihel) [1663246] - [netdrv] net/mlx5e: Eswitch, Use per vport tables for mirroring (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: make the symbol 'ESW_POOLS' static (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Increase number of chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: E-Switch, Refactor chains and priorities (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Check prio and chain sanity for ft offload (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: ft: Use getter function to get ft chain (Alaa Hleihel) [1663246] - [netdrv] net/mlx5: TC: Offload flow table rules (Alaa Hleihel) [1663246]- [net] neigh: fix ARP retransmit timer guard (Hangbin Liu) [1767282] - [net] xfrm: fix a warning in xfrm_policy_insert_list (Xin Long) [1820956] - [net] netfilter: ipset: Fix subcounter update skip (Phil Sutter) [1834881] - [netdrv] macvlan: return correct error value (Matteo Croce) [1806146] - [net] core: properly remove skb from list (Ivan Vecera) [1839657] - [tools] selftests: fix flower parent qdisc (Ivan Vecera) [1824071] - [net] sch_choke: Remove classid from choke_skb_cb. (Ivan Vecera) [1824071] - [net] sched: choke: Remove unused inline function choke_set_classid (Ivan Vecera) [1824071] - [net] schedule: add action gate offloading (Ivan Vecera) [1824071] - [net] qos: introduce a gate control flow action (Ivan Vecera) [1824071] - [net] sched: fallback to qdisc noqueue if default qdisc setup fail (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_actions.sh: add matchall mirror test (Ivan Vecera) [1824071] - [net] sched: report ndo_setup_tc failures via extack (Ivan Vecera) [1824071] - [net] sched : Remove unnecessary cast in kfree (Ivan Vecera) [1824071] - [tools] selftests: tc-testing: Add a TDC test for pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [tools] selftests: forwarding: pedit_dsfield: Add pedit munge ip6 dsfield (Ivan Vecera) [1824071] - [net] sched: act_ct: update nf_conn_acct for act_ct SW offload in flowtable (Ivan Vecera) [1824071] - [net] net_sched: gen_estimator: extend packet counter to 64bit (Ivan Vecera) [1824071] - [net] flow_offload: skip hw stats check for FLOW_ACTION_HW_STATS_DONT_CARE (Ivan Vecera) [1824071] - [net] net_sched: sch_skbprio: add message validation to skbprio_change() (Ivan Vecera) [1824071] - [net] net_sched: fix tcm_parent in tc filter dump (Ivan Vecera) [1824071] - [net] sch_sfq: validate silly quantum values (Ivan Vecera) [1824071] - [net] sch_choke: avoid potential panic in choke_reset() (Ivan Vecera) [1824071] - [net] fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks (Ivan Vecera) [1824071] - [net] sched: etf: do not assume all sockets are full blown (Ivan Vecera) [1824071] - [tools] tc-testing: remove duplicate code in tdc.py (Ivan Vecera) [1824071] - [net] sched: Fix setting last executed chain on skb extension (Ivan Vecera) [1824071] - [net] net_sched: fix a missing refcnt in tcindex_init() (Ivan Vecera) [1824071] - [net] net_sched: add a temporary refcnt for struct tcindex_data (Ivan Vecera) [1824071] - [net] sched: expose HW stats types per action used by drivers (Ivan Vecera) [1824071] - [net] introduce nla_put_bitfield32() helper and use it (Ivan Vecera) [1824071] - [tools] selftests: skbedit_priority: Test counters at the skbedit rule (Ivan Vecera) [1824071] - [net] sched: act_pedit: Implement stats_update callback (Ivan Vecera) [1824071] - [net] sched: act_skbedit: Implement stats_update callback (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add a forwarding test for pedit munge dsfield (Ivan Vecera) [1824071] - [net] flow_offload.h: Fix a comment at flow_action_entry.mangle (Ivan Vecera) [1824071] - [net] Fix CONFIG_NET_CLS_ACT=n and CONFIG_NFT_FWD_NETDEV={y, m} build (Ivan Vecera) [1824071] - [net] netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress (Ivan Vecera) [1824071] - [net] cbs: Fix software cbs to consider packet sending time (Ivan Vecera) [1824071] - [include] taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for flags key (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for src and dst port range options (Ivan Vecera) [1824071] - [net] cls_flower: Add extack support for mpls options (Ivan Vecera) [1824071] - [include] net: sched: refine extack messages in tcf_change_indev (Ivan Vecera) [1824071] - [net] sched: rename more stats_types (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Add an skbedit priority selftest (Ivan Vecera) [1824071] - [net] tc_skbedit: Make the skbedit priority offloadable (Ivan Vecera) [1824071] - [include] tc_skbedit: Factor a helper out of is_tcf_skbedit_{mark, ptype}() (Ivan Vecera) [1824071] - [include] net: sched: Do not assume RTNL is held in tunnel key action helpers (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix leak of ct zone template on replace (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: enable use of hrtimer slack (Ivan Vecera) [1824071] - [net] net_sched: do not reprogram a timer about to expire (Ivan Vecera) [1824071] - [net] net_sched: add qdisc_watchdog_schedule_range_ns() (Ivan Vecera) [1824071] - [net] rename flow_action_hw_stats_types* -> flow_action_hw_stats* (Ivan Vecera) [1824071] - [net] net_sched: cls_route: remove the right filter from hashtable (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: RED: Add nodrop tests (Ivan Vecera) [1824071] - [net] sched: RED: Introduce an ECN nodrop mode (Ivan Vecera) [1824071] - [net] sched: Allow extending set of supported RED flags (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add TDC test for RED (Ivan Vecera) [1824071] - [tools] tc-testing: add ETS scheduler to tdc build configuration (Ivan Vecera) [1824071] - [net] sched: act_ct: Enable hardware offload of flow table entires (Ivan Vecera) [1824071] - [net] sched: act_ct: Support refreshing the flow table entries (Ivan Vecera) [1824071] - [net] sched: act_ct: Support restoring conntrack info on skbs (Ivan Vecera) [1824071] - [net] sched: act_ct: Instantiate flow table entry actions (Ivan Vecera) [1824071] - [net] net_sched: keep alloc_hash updated after hash allocation (Ivan Vecera) [1824071] - [net] net_sched: hold rtnl lock in tcindex_partial_destroy_work() (Ivan Vecera) [1824071] - [include] flow_offload: restrict driver to pass one allowed bit to flow_action_hw_stats_types_check() (Ivan Vecera) [1824071] - [netdrv] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1824071] - [include] flow_offload: turn hw_stats_type into dedicated enum (Ivan Vecera) [1824071] - [include] flow_offload: use flow_action_for_each in flow_action_mixed_hw_stats_types_check() (Ivan Vecera) [1824071] - [net] sched: pie: change tc_pie_xstats->prob (Ivan Vecera) [1824071] - [net] taprio: Fix sending packets without dequeueing them (Ivan Vecera) [1824071] - [net] sched: act_ct: fix lockdep splat in tcf_ct_flow_table_get (Ivan Vecera) [1824071] - [tools] selftests: forwarding: ETS: Use Qdisc counters (Ivan Vecera) [1824071] - [net] sched: Make FIFO Qdisc offloadable (Ivan Vecera) [1824071] - [include] pie: realign comment (Ivan Vecera) [1824071] - [net] pie: remove pie_vars->accu_prob_overflows (Ivan Vecera) [1824071] - [net] pie: remove unnecessary type casting (Ivan Vecera) [1824071] - [net] pie: use term backlog instead of qlen (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with canid extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: list kernel options for basic filter with canid ematch. (Ivan Vecera) [1824071] - [net] sched: act_ct: Use pskb_network_may_pull() (Ivan Vecera) [1824071] - [net] sched: act_ct: Fix ipv6 lookup of offloaded connections (Ivan Vecera) [1824071] - [net] sched: act_ct: Software offload of established flows (Ivan Vecera) [1824071] - [net] sched: act_ct: Offload established connections to flow table (Ivan Vecera) [1824071] - [net] sched: act_ct: Create nf flow table per zone (Ivan Vecera) [1824071] - [net] taprio: add missing attribute validation for txtime delay (Ivan Vecera) [1824071] - [net] fq: add missing attribute validation for orphan mask (Ivan Vecera) [1824071] - [tools] selftests: forwarding: tc_common: Convert to use busywait (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Convert until_counter_is() to take expression (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add tc_rule_handle_stats_get() (Ivan Vecera) [1824071] - [include] net: flow_offload: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: Replace zero-length array with flexible-array member (Ivan Vecera) [1824071] - [net] sched: act: count in the size of action flags bitfield (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u32 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter with u16 extended match rules (Ivan Vecera) [1824071] - [tools] tc-testing: updated tdc tests for basic filter (Ivan Vecera) [1824071] - [net] sched: correct flower port blocking (Ivan Vecera) [1824071] - [net] sched: Support specifying a starting chain via tc skb ext (Ivan Vecera) [1824071] - [net] sched: Change the block's chain list to an rcu list (Ivan Vecera) [1824071] - [net] sched: Pass ingress block to tcf_classify_ingress (Ivan Vecera) [1824071] - [net] sched: Introduce ingress classification function (Ivan Vecera) [1824071] - [net] sched: flower: add missing validation of TCA_FLOWER_FLAGS (Ivan Vecera) [1824071] - [net] sched: matchall: add missing validation of TCA_MATCHALL_FLAGS (Ivan Vecera) [1824071] - [net] taprio: Fix dropping packets when using taprio + ETF offloading (Ivan Vecera) [1824071] - [net] taprio: Use taprio_reset_tc() to reset Traffic Classes configuration (Ivan Vecera) [1824071] - [net] taprio: Add missing policy validation for flags (Ivan Vecera) [1824071] - [net] taprio: Fix still allowing changing the flags during runtime (Ivan Vecera) [1824071] - [net] taprio: Fix enabling offload with wrong number of traffic classes (Ivan Vecera) [1824071] - [net] sched: prevent a use after free (Ivan Vecera) [1824071] - [tools] tc-testing: add missing 'nsPlugin' to basic.json (Ivan Vecera) [1824071] - [net] sch_choke: Use kvcalloc (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a RED selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib.sh: Add start_tcp_traffic (Ivan Vecera) [1824071] - [tools] selftests: mlxsw: Add a TBF selftest (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Allow reading TC rule byte counters (Ivan Vecera) [1824071] - [tools] selftests: forwarding: lib: Add helpers for busywaiting (Ivan Vecera) [1824071] - [tools] selftests: Move two functions from mlxsw's qos_lib to lib (Ivan Vecera) [1824071] - [net] sched: Make TBF Qdisc offloadable (Ivan Vecera) [1824071] - [net] sched: sch_tbf: Don't overwrite backlog before dumping (Ivan Vecera) [1824071] - [net] sched: add Flow Queue PIE packet scheduler (Ivan Vecera) [1824071] - [net] sched: pie: export symbols to be reused by FQ-PIE (Ivan Vecera) [1824071] - [net] sched: pie: fix alignment in struct instances (Ivan Vecera) [1824071] - [net] sched: pie: fix commenting (Ivan Vecera) [1824071] - [include] pie: improve comments and commenting style (Ivan Vecera) [1824071] - [net] pie: rearrange structure members and their initializations (Ivan Vecera) [1824071] - [include] pie: use u8 instead of bool in pie_vars (Ivan Vecera) [1824071] - [include] pie: rearrange macros in order of length (Ivan Vecera) [1824071] - [include] pie: use U64_MAX to denote (2^64 - 1) (Ivan Vecera) [1824071] - [net] sched: pie: move common code to pie.h (Ivan Vecera) [1824071] - [net] sched: use skb_list_walk_safe helper for gso segments (Ivan Vecera) [1824071] - [tools] selftests: qdiscs: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: sch_ets: Add test coverage for ETS Qdisc (Ivan Vecera) [1824071] - [tools] selftests: forwarding: Move start_/stop_traffic from mlxsw to lib.sh (Ivan Vecera) [1824071] - [net] sch_ets: Make the ETS qdisc offloadable (Ivan Vecera) [1824071] - [net] sch_ets: Add a new Qdisc (Ivan Vecera) [1824071] - [include] net: pkt_cls: Clarify a comment (Ivan Vecera) [1824071] - [net] sch_cake: drop unused variable tin_quantum_prio (Ivan Vecera) [1824071] - [net] sched: act_ctinfo: fix memory leak (Ivan Vecera) [1824071] - [net] sched: act_ife: initalize ife->metalist earlier (Ivan Vecera) [1824071] - [net] sch_cake: avoid possible divide by zero in cake_enqueue() (Ivan Vecera) [1824071] - [tools] tc-testing: initial tdc selftests for cls_u32 (Ivan Vecera) [1824071] - [net] treewide: Use sizeof_field() macro (Ivan Vecera) [1824071] - [tools] tc-testing: unbreak full listing of tdc testcases (Ivan Vecera) [1824071] - [net] act_ct: support asymmetric conntrack (Ivan Vecera) [1824071] - [net] sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO (Ivan Vecera) [1824071] - [net] remove the unnecessary strict_start_type in some policies (Ivan Vecera) [1824071] - [net] sched: pie: enable timestamp based delay calculation (Ivan Vecera) [1824071] - [net] taprio: don't reject same mqprio settings (Ivan Vecera) [1824071] - [tools] tc-testing: Introduced tdc tests for basic filter (Ivan Vecera) [1824071] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1824071] - [net] net_sched: add TCA_STATS_PKT64 attribute (Ivan Vecera) [1824071] - [net] net_sched: extend packet counter to 64bit (Ivan Vecera) [1824071] - [include] net_sched: do not export gnet_stats_basic_packed to uapi (Ivan Vecera) [1824071] - [tools] tc-testing: added tests with cookie for mpls TC action (Ivan Vecera) [1824071] - [net] icmp: remove duplicate code (Ivan Vecera) [1824071] - [include] icmp: add helpers to recognize ICMP error packets (Ivan Vecera) [1824071] - [net] taprio: fix panic while hw offload sched list swap (Ivan Vecera) [1824071] - [net] sched: Replace rcu_swap_protected() with rcu_replace_pointer() (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: avoid calling ktime_get_ns() if not needed (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: add dctcp-like marking (Ivan Vecera) [1824071] - [net] net_sched: sch_fq: remove dead code dealing with retransmits (Ivan Vecera) [1824071] - [net] sched: act_ct: fix build failure in RHEL8 (Ivan Vecera) [1824071] - [net] don't return invalid table id error when we fall back to PF_UNSPEC (Sabrina Dubroca) [1814093] - [net] netfilter: update include directives. (Marcelo Leitner) [1837856] - [include] netfilter: fix include guards. (Marcelo Leitner) [1837856] - [include] netfilter: add include guard to xt_connlabel.h (Marcelo Leitner) [1837856] - [net] sk_msg: Don't use RCU_INIT_POINTER on sk_user_data (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Fix build of sockmap_ktls.c (Sabrina Dubroca) [1819627] - [net] Generate reuseport group ID on group creation (Sabrina Dubroca) [1819627] - [net] bpf: Allow selecting reuseport socket from a SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Let all kernel-land lookup values in SOCKMAP/SOCKHASH (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Return socket cookie on lookup from syscall (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Don't set up upcalls and progs for listening sockets (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: Allow inserting listening TCP sockets into sockmap (Sabrina Dubroca) [1819627] - [net] tcp_bpf: Don't let child socket inherit parent protocol ops on copy (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Clear sk_user_data pointer on clone if tagged (Sabrina Dubroca) [1819627] - [net] net, sk_msg: Annotate lockless access to sk_prot on clone (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size (Sabrina Dubroca) [1819627] - [net] bpf, sockmap: msg_pop_data can incorrecty set an sge length (Sabrina Dubroca) [1819627] - [net] tls: fix const assignment warning (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak in bpf_exec_tx_verdict() (Sabrina Dubroca) [1819627] - [net] tls: Fix sk_psock refcnt leak when in tls_data_ready() (Sabrina Dubroca) [1819627] - [tools] selftests/bpf: Test unhashing kTLS socket after removing from map (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Don't clear saved sock proto on restore (Sabrina Dubroca) [1819627] - [include] bpf, sk_msg: Let ULP restore sk_proto and write_space callback (Sabrina Dubroca) [1819627] - [net] tls: Annotate access to sk_prot with READ_ONCE/WRITE_ONCE (Sabrina Dubroca) [1819627] - [net] tls: Read sk_prot once when building tls proto ops (Sabrina Dubroca) [1819627] - [net] tls: Constify base proto ops used for building tls proto (Sabrina Dubroca) [1819627] - [net] tls: Fix to avoid gettig invalid tls record (Sabrina Dubroca) [1819627] - [net] tls: avoid spurious decryption error with HW resync (Sabrina Dubroca) [1819627] - [net] tls: add helper for testing if socket is RX offloaded (Sabrina Dubroca) [1819627] - [tools] selftests: net: tls: remove recv_rcvbuf test (Sabrina Dubroca) [1819627] - [net] tls: use sg_next() to walk sg entries (Sabrina Dubroca) [1819627] - [net] tls: remove the dead inplace_crypto code (Sabrina Dubroca) [1819627] - [tools] selftests/tls: add a test for fragmented messages (Sabrina Dubroca) [1819627] - [net] tls: Fix unused function warning (Sabrina Dubroca) [1819627] - [net] tls: store decrypted on a single bit (Sabrina Dubroca) [1819627] - [net] tls: store async_capable on a single bit (Sabrina Dubroca) [1819627] - [net] tls: pass context to tls_device_decrypted() (Sabrina Dubroca) [1819627] - [net] tls: make allocation failure unlikely (Sabrina Dubroca) [1819627] - [net] tls: mark sk->err being set as unlikely (Sabrina Dubroca) [1819627] - [net] sockmap: use bitmap for copy info (Sabrina Dubroca) [1819627] - [net] tls: add TlsDeviceRxResync statistic (Sabrina Dubroca) [1819627] - [net] tls: add TlsDecryptError stat (Sabrina Dubroca) [1819627] - [net] tls: add statistics for installed sessions (Sabrina Dubroca) [1819627] - [net] tls: add skeleton of MIB statistics (Sabrina Dubroca) [1819627] - [net] tls: add device decrypted trace point (Sabrina Dubroca) [1819627] - [net] tls: add tracing for device/offload events (Sabrina Dubroca) [1819627] - [net] tls: allow compiling TLS TOE out (Sabrina Dubroca) [1819627] - [net] tls: rename tls_hw_* functions tls_toe_* (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related code to a separate file (Sabrina Dubroca) [1819627] - [net] tls: move tls_build_proto() on init path (Sabrina Dubroca) [1819627] - [net] tls: use the full sk_proto pointer (Sabrina Dubroca) [1819627] - [net] tls: rename tls_device to tls_toe_device (Sabrina Dubroca) [1819627] - [net] tls: move TOE-related structures to a separate header (Sabrina Dubroca) [1819627] - [net] tls: sleeping function from invalid context (Sabrina Dubroca) [1819627] - [net] netfilter: nft_set_rbtree: Add missing expired checks (Phil Sutter) [1778020] - [tools] selftests: netfilter: extend flowtable test script with dnat rule (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: extend flowtable test script for ipsec (Marcelo Leitner) [1811193] - [tools] selftests: netfilter: add flowtable test script (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: set NF_FLOW_TEARDOWN flag on entry expiration (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Remove WQ_MEM_RECLAIM from workqueue (Marcelo Leitner) [1811193] - [net] netfilter: nf_conntrack: add IPS_HW_OFFLOAD status bit (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Free block_cb when being deleted (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support in HW offload (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: add nf_ct_acct_add() (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: export nf_ct_acct_update() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use work entry per offload command (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use rw sem as flow block lock (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add counter support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add enum nft_flowtable_flags to uapi (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix incorrect tc_setup_type type (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: populate addr_type mask (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix flushing of offloaded flows on free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fix NULL pointer dereference in tunnel offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: reload ip{v6}h in nf_flow_nat_ip{v6} (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dump NFTA_CHAIN_FLAGS attribute (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: free flowtable hooks on hook register error (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel encap/decap action offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add indr block setup support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add tunnel match offload support (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: skip offload setup if disabled (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Use nf_flow_offload_tuple for stats as well (Marcelo Leitner) [1811193] - [net] flow_offload: Add flow_match_ct to get rule ct match (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Enable hardware offload of flow table entires (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support refreshing the flow table entries (Marcelo Leitner) [1811193] - [include] net/sched: act_ct: Support restoring conntrack info on skbs (Marcelo Leitner) [1811193] - [net] sched: act_ct: Instantiate flow table entry actions (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Add API for registering to flow table events (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix setting forgotten NF_FLOW_HW_DEAD flag (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix missing flush hardware on table free (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: Fix hardware flush order on nf_flow_table_cleanup (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix check the chain offload flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix memory leak in nf_tables_parse_netdev_hooks() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_table_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_tuple() helper (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: refresh flow if hardware offload fails (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_hw_offload() helper function (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: use atomic bitwise operations for flow flags (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: remove dying bit, use teardown bit instead (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flow_offload_work_alloc() (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: restrict flow dissector match on meta ingress device (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: fetch stats only if flow is still alive (Marcelo Leitner) [1811193] - [net] netfilter: flowtable: add nf_flowtable_time_stamp (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: unbind callbacks from flowtable destroy path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix the nat port mangle. (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: check the status of dst_neigh (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: fix incorrect ethernet dst address (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix big-endian integer overflow (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Correct memcpy size for flow_overload_mangle() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no actions (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 match description (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Don't use offset uninitialized in flow_offload_port_{d, s}nat (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block_cb tc_setup_type as TC_SETUP_CLSFLOWER (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix block setup as TC_SETUP_FT cmd (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: check if bind callback fails and unbind if hook registration fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add nft_unregister_flowtable_hook() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: undo updates if transaction fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: release flow_rule on error from commit path (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove reference to flow rule from deletion path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add IPv6 support (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: add flow_action_entry_next() and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter in flow_offload_fill_dir (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table_offload: Fix check ndo_setup_tc when setup_block (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add flowtable offload control plane (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: detach routing information from flow description (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: skip tcp rst and fin packets (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: remove flow_offload_entry structure (Marcelo Leitner) [1811193] - [include] netfilter: nf_flow_table: remove union from flow_offload structure (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move conntrack object to struct flow_offload (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: skip EBUSY on chain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: bogus EOPNOTSUPP on basechain update (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: pass extack to nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nft_meta: offload support for interface index (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: white-space fixes. (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: check for register data length mismatches (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: Adjust parentheses to fix memcmp size argument (Marcelo Leitner) [1811193] - [net] netfilter: nft_bitwise: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: unbind if multi-device binding fails (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_offload_init() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_chain_offload_cmd() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: restore basechain deletion (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: support for multiple devices per netdev hook (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: fix base chain stat rcu_dereference usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules on unregistered device only (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_cls_offload_setup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: Pass callback list to nft_setup_cb_call() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add nft_flow_block_chain() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: increase maximum devices number per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: allow netdevice to be used only once per flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: dynamically allocate hooks per net_device in flowtables (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove flowtable hook flush routine in netns exit routine (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: move priority to struct nf_flowtable (Marcelo Leitner) [1811193] - [net] netfilter: nft_payload: fix missing check for matching length in offloads (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set timeout before insertion into hashes (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: fix always true policy is unset check (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add NFT_CHAIN_POLICY_UNSET and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: remove rules when the device unregisters (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_rule function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: refactor the nft_flow_offload_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: add __nft_offload_get_chain function (Marcelo Leitner) [1811193] - [net] netfilter: nft_{fwd, dup}_netdev: add offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: avoid excessive stack usage (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: move indirect flow_block callback logic to core (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: set default timeout after successful insertion (Marcelo Leitner) [1811193] - [net] netfilter: ctnetlink: honor IPS_OFFLOAD flag (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: clear skb tstamp before xmit (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: map basechain priority to hardware priority (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: teardown flow timeout race (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: conntrack picks up expired flows (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables_offload: support indr block call (Marcelo Leitner) [1811193] - [net] flow_offload: add flow_block structure and use it (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: store data in offload context registers (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix offload for flows that are subject to xfrm (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: don't fail when updating base chain policy (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: add hardware offload support (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: delay chain policy update until transaction is complete (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: IPCB is only valid for ipv4 family (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: don't offload when sequence numbers need adjustment (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: set liberal tracking mode for tcp (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: ignore DF bit setting (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary variable in flow_offload_tuple (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: add entry to flowtable after confirmation (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix checking method of conntrack helper (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix missing error check for rhashtable_insert_fast (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not flow offload deleted conntrack entries (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: simplify nf_flow_offload_gc_step() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: check ttl value in flow offload data path (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: fix netdev refcnt leak (Marcelo Leitner) [1811193] - [net] netfilter: nf_flowtable: skip device lookup from interface index (Marcelo Leitner) [1811193] - [net] netfilter: conntrack: fix IPV6=n builds (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: fix interaction with vrf slave device (Marcelo Leitner) [1811193] - [net] netfilter: nft_flow_offload: Fix reverse route lookup (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: make nf_flow_table_iterate() static (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: do not remove offload when other netns's interface is down (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary parameter of nf_flow_table_cleanup() (Marcelo Leitner) [1811193] - [net] netfilter: nf_tables: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Marcelo Leitner) [1811193] - [net] netfilter: nf_flow_table: remove unnecessary nat flag check code (Marcelo Leitner) [1811193] - [net] mptcp: mark tech preview and disable by default (Florian Westphal) [1835796] - [net] mptcp: fix bogus socket flag values (Florian Westphal) [1835796] - [net] mptcp: select CRYPTO (Florian Westphal) [1835796] - [net] mptcp: Protect subflow socket options before connection completes (Florian Westphal) [1835796] - [net] mptcp: make the symbol 'mptcp_sk_clone_lock' static (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free for ipv6 (Florian Westphal) [1835796] - [net] mptcp: fix use-after-free on tcp fallback (Florian Westphal) [1835796] - [net] mptcp: Fix undefined mptcp_handle_ipv6_mapped for modular IPV6 (Florian Westphal) [1835796] - [net] mptcp: Fix incorrect IPV6 dependency check (Florian Westphal) [1835796] - [net] mptcp: handle tcp fallback when using syn cookies (Florian Westphal) [1835796] - [net] mptcp: avoid a lockdep splat when mcast group was joined (Florian Westphal) [1835796] - [net] mptcp: fix panic on user pointer access (Florian Westphal) [1835796] - [net] mptcp: defer freeing of cached ext until last moment (Florian Westphal) [1835796] - [net] mptcp: Fix build with PROC_FS disabled. (Florian Westphal) [1835796] - [tools] selftests: settings: tests can be in subsubdirs (Florian Westphal) [1835796] - [net] mptcp: Fix code formatting (Florian Westphal) [1835796] - [net] mptcp: do not inherit inet proto ops (Florian Westphal) [1835796] - [net] add and use MPTCP_PROTO_KERN (Florian Westphal) [1835796] - [net] mptcp: cope with later TCP fallback (Florian Westphal) [1835796] - [net] mptcp: process MP_CAPABLE data option (Florian Westphal) [1835796] - [net] mptcp: parse and emit MP_CAPABLE option according to v1 spec (Florian Westphal) [1835796] - [net] mptcp: move from sha1 (v0) to sha256 (v1) (Florian Westphal) [1835796] - [tools] mptcp: add basic kselftest for mptcp (Florian Westphal) [1835796] - [net] mptcp: new sysctl to control the activation per NS (Florian Westphal) [1835796] - [net] mptcp: allow collapsing consecutive sendpages on the same substream (Florian Westphal) [1835796] - [net] mptcp: recvmsg() can drain data from multiple subflows (Florian Westphal) [1835796] - [net] mptcp: add subflow write space signalling and mptcp_poll (Florian Westphal) [1835796] - [net] mptcp: Implement MPTCP receive path (Florian Westphal) [1835796] - [net] mptcp: Write MPTCP DSS headers to outgoing data packets (Florian Westphal) [1835796] - [net] mptcp: Add setsockopt()/getsockopt() socket operations (Florian Westphal) [1835796] - [net] mptcp: Add shutdown() socket operation (Florian Westphal) [1835796] - [net] mptcp: Add key generation and token tree (Florian Westphal) [1835796] - [net] mptcp: Create SUBFLOW socket for incoming connections (Florian Westphal) [1835796] - [net] mptcp: Handle MP_CAPABLE options for outgoing connections (Florian Westphal) [1835796] - [net] mptcp: Associate MPTCP context with TCP socket (Florian Westphal) [1835796] - [net] mptcp: Handle MPTCP TCP options (Florian Westphal) [1835796] - [net] mptcp: Add MPTCP socket stubs (Florian Westphal) [1835796] - [net] netfilter: conntrack: fix infinite loop on rmmod (Florian Westphal) [1832381] - [tools] selftests: add netdevsim devlink dev info test (Petr Oros) [1830928] - [tools] selftests: test netdevsim reload forbid and fail (Petr Oros) [1830928] - [netdrv] mlx4: fix "initializer element not constant" compiler error (Petr Oros) [1830928] - [netdrv] netdevsim: dev: Fix memory leak in nsim_dev_take_snapshot_write (Petr Oros) [1830928] - [net] devlink: fix return value after hitting end in region read (Petr Oros) [1830928] - [net] devlink: Fix reporter's recovery condition (Petr Oros) [1830928] - [documentation] docs: devlink: clarify the scope of snapshot id (Petr Oros) [1830928] - [net] devlink: let kernel allocate region snapshot id (Petr Oros) [1830928] - [net] devlink: factor out building a snapshot notification (Petr Oros) [1830928] - [documentation] devlink: fix broken link warning (Petr Oros) [1830928] - [net] devlink: use NL_SET_ERR_MSG_MOD instead of NL_SET_ERR_MSG (Petr Oros) [1830928] - [include] devlink: Add macro for "fw.mgmt.api" to info_get cb. (Petr Oros) [1830928] - [netdrv] netdevsim: support taking immediate snapshot via devlink (Petr Oros) [1830928] - [net] devlink: implement DEVLINK_CMD_REGION_NEW (Petr Oros) [1830928] - [net] devlink: track snapshot id usage count using an xarray (Petr Oros) [1830928] - [net] devlink: report error once U32_MAX snapshot ids have been used (Petr Oros) [1830928] - [net] devlink: extract snapshot id allocation to helper function (Petr Oros) [1830928] - [net] devlink: use -ENOSPC to indicate no more room for snapshots (Petr Oros) [1830928] - [net] devlink: add function to take snapshot while locked (Petr Oros) [1830928] - [net] devlink: trivial: fix tab in function documentation (Petr Oros) [1830928] - [net] devlink: convert snapshot destructor callback to region op (Petr Oros) [1830928] - [net] devlink: prepare to support region operations (Petr Oros) [1830928] - [documentation] devlink: expand the devlink-info documentation (Petr Oros) [1830928] - [net] devlink: Introduce devlink port flavour virtual (Petr Oros) [1830928] - [net] devlink: validate length of region addr/len (Petr Oros) [1830928] - [net] devlink: validate length of param values (Petr Oros) [1830928] - [net] core: Replace zero-length array with flexible-array member (Petr Oros) [1830928] - [net] core: devlink.c: Use built-in RCU list checking (Petr Oros) [1830928] - [net] devlink: Rely on driver eswitch thread safety instead of devlink (Petr Oros) [1830928] - [net] core: devlink.c: Hold devlink->lock from the beginning of devlink_dpipe_table_register() (Petr Oros) [1830928] - [net] devlink: Force enclosing array on binary fmsg data (Petr Oros) [1830928] - [net] devlink: report 0 after hitting end in region read (Petr Oros) [1830928] - [net] devlink: correct misspelling of snapshot (Petr Oros) [1830928] - [tools] selftests: Add a test of large binary to devlink health test (Petr Oros) [1830928] - [netdrv] netdevsim: Update dummy reporter's devlink binary interface (Petr Oros) [1830928] - [net] devlink: Allow large formatted message of binary output (Petr Oros) [1830928] - [tools] selftests: netdevsim: Add test cases for devlink-trap policers (Petr Oros) [1823743] - [netdrv] netdevsim: Add support for setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Allow setting of packet trap group parameters (Petr Oros) [1823743] - [net] devlink: Add packet trap group parameters support (Petr Oros) [1823743] - [netdrv] netdevsim: Add devlink-trap policer support (Petr Oros) [1823743] - [documentation] Add description of packet trap policers (Petr Oros) [1823743] - [net] devlink: Add packet trap policers support (Petr Oros) [1823743] - [net] devlink: Add auto dump flag to health reporter (Petr Oros) [1823743] - [net] devlink: Implicitly set auto recover flag when registering health reporter (Petr Oros) [1823743] - [netdrv] netdevsim: Change dummy reporter auto recover default (Petr Oros) [1823743] - [net] devlink: Only pass packet trap group identifier in trap structure (Petr Oros) [1823743] - [net] devlink: Stop reference counting packet trap groups (Petr Oros) [1823743] - [netdrv] netdevsim: Explicitly register packet trap groups (Petr Oros) [1823743] - [net] devlink: Add API to register packet trap groups (Petr Oros) [1823743] - [net] esp6: calculate transport_header correctly when sel.family != AF_INET6 (Xin Long) [1815980 1761579] - [net] esp4: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] esp6: support ipv6 nexthdrs process for beet gso segment (Xin Long) [1815980 1761579] - [net] xfrm: remove the xfrm_state_put call becofe going to out_reset (Xin Long) [1815980 1761579] - [net] esp6: get the right proto for transport mode in esp6_gso_encap (Xin Long) [1815980 1761579] - [net] xfrm: do pskb_pull properly in __xfrm_transport_prep (Xin Long) [1815980 1761579] - [net] xfrm: allow to accept packets with ipv6 NEXTHDR_HOP in xfrm_input (Xin Long) [1815980 1761579] - [net] xfrm: add prep for esp beet mode offload (Xin Long) [1815980 1761579] - [net] esp6: add gso_segment for esp6 beet mode (Xin Long) [1815980 1761579] - [net] esp4: add gso_segment for esp4 beet mode (Xin Long) [1815980 1761579] - [net] xfrm: kconfig: make xfrm depend on inet (Xin Long) [1815980 1761579] - [net] xfrm: make xfrm modes builtin (Xin Long) [1815980 1761579] - [net] xfrm: remove afinfo pointer from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input2 indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove gso_segment indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove xmit indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove output indirection from xfrm_mode (Xin Long) [1815980 1761579] - [net] xfrm: remove input indirection from xfrm_mode (Xin Long) [1761579 1815980] - [net] xfrm: prefer family stored in xfrm_mode struct (Xin Long) [1815980 1761579] - [net] xfrm: place af number into xfrm_mode struct (Xin Long) [1761579 1815980] - [net] xfrm: gso partial offload support (Xin Long) [1761579 1815980] - [net] netfilter: cttimeout: remove set but not used variable 'l3num' (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle icmp pkt_to_tuple helper via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: handle builtin l4proto packet functions via direct calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove net_id (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: switch module to be built-in (Florian Westphal) [1822085] - [net] netfilter: remove unused parameters in nf_ct_l4proto_[un]register_sysctl() (Florian Westphal) [1822085] - [net] netfilter: conntrack: gre: convert rwlock to rcu (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: fetch timeouts for udplite and gre, too (Florian Westphal) [1822085] - [net] netfilter: nfnetlink_cttimeout: pass default timeout policy to obj_to_nlattr (Florian Westphal) [1822085] - [net] netfilter: conntrack: add nf_{tcp, udp, sctp, icmp, dccp, icmpv6, generic}_pernet() (Florian Westphal) [1822085] - [net] netfilter: conntrack: clamp l4proto array size at largers supported protocol (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3->l4 mapping information (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove unused proto arg from netns init functions (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove error callback and handle icmp from core (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid using ->error callback if possible (Florian Westphal) [1822085] - [net] netfilter: conntrack: deconstify packet callback skb pointer (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove the l4proto->new() function (Florian Westphal) [1822085] - [net] netfilter: conntrack: timeout interface depend on CONFIG_NF_CONNTRACK_TIMEOUT (Florian Westphal) [1822085] - [net] netfilter: conntrack: pass nf_hook_state to packet and error handlers (Florian Westphal) [1822085] - [net] netfilter: conntrack: place 'new' timeout in first location too (Florian Westphal) [1822085] - [net] netfilter: nf_conntrack_h323: Remove deprecated config check (Florian Westphal) [1822085] - [include] netfilter: nf_tables: merge route type into core (Florian Westphal) [1822085] - [net] netfilter: ipv6: avoid indirect calls for IPV6=y case (Florian Westphal) [1822085] - [net] netfilter: nat: remove module dependency on ipv6 core (Florian Westphal) [1822085] - [net] netfilter: remove obsolete need_conntrack stub (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid use-after free on rmmod (Florian Westphal) [1822085] - [net] netfilter: conntrack: dccp, sctp: handle null timeout argument (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove duplicated include from nf_conntrack_proto_udp.c (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove l3proto abstraction (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_timeout() indirection (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid l4proto pkt_to_tuple calls (Florian Westphal) [1822085] - [net] netfilter: conntrack: avoid calls to l4proto invert_tuple (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove get_l4proto indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove invert_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove pkt_to_tuple indirection from l3 protocol trackers (Florian Westphal) [1822085] - [net] netfilter: conntrack: remove ctnetlink callbacks from l3 protocol trackers (Florian Westphal) [1822085] - [net] openvswitch: use nf_ct_get_tuplepr, invert_tuplepr (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip6_checksum* from ipv6 to utils (Florian Westphal) [1822085] - [net] netfilter: utils: move nf_ip_checksum* from ipv4 to utils (Florian Westphal) [1822085] - [net] netfilter: flowtables: use fixed renew timeout on teardown (Florian Westphal) [1822085] - [netdrv] geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR (Xin Long) [1809503] - [netdrv] geneve: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] vxlan: Allow configuration of DF behaviour (Xin Long) [1809503] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Josef Oskera) [1841511] - [netdrv] r8169: fix OCP access on RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: re-establish support for RTL8401 chip version (Josef Oskera) [1841511] - [netdrv] r8169: change back SG and TSO to be disabled by default (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8169_tx_map (Josef Oskera) [1841511] - [netdrv] r8169: improve handling of TD_MSS_MAX (Josef Oskera) [1841511] - [netdrv] r8169: fix PHY driver check on platforms w/o module softdeps (Josef Oskera) [1841511] - [netdrv] r8169: re-enable MSI on RTL8168c (Josef Oskera) [1841511] - [netdrv] r8169: don't use MSI before RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: improve RTL8168b FIFO overflow workaround (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_schedule_task (Josef Oskera) [1841511] - [netdrv] r8169: simplify rtl_task (Josef Oskera) [1841511] - [netdrv] r8169: add new helper rtl8168g_enable_gphy_10m (Josef Oskera) [1841511] - [netdrv] net: r8169: reject unsupported coalescing params (Josef Oskera) [1841511] - [netdrv] r8169: simplify getting stats by using netdev_stats_to_stats64 (Josef Oskera) [1841511] - [netdrv] r8169: let rtl8169_mark_to_asic clear rx descriptor field opts2 (Josef Oskera) [1841511] - [netdrv] r8169: remove now unneeded barrier in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: simplify usage of rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: ensure tx_skb is fully reset after calling rtl8169_unmap_tx_skb (Josef Oskera) [1841511] - [netdrv] r8169: convert while to for loop in rtl_tx (Josef Oskera) [1841511] - [netdrv] r8169: use pci_status_get_and_clear_errors (Josef Oskera) [1841511] - [netdrv] r8169: add PCI_STATUS_PARITY to PCI status error bits (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_start_xmit (Josef Oskera) [1841511] - [netdrv] r8169: remove RTL_EVENT_NAPI constants (Josef Oskera) [1841511] - [netdrv] r8169: use new helper tcp_v6_gso_csum_prep (Josef Oskera) [1841511] - [netdrv] r8169: improve statistics of missed rx packets (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl_jumbo_config (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_get_mac_version (Josef Oskera) [1841511] - [netdrv] r8169: add helper rtl_pci_commit (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting netdev features (Josef Oskera) [1841511] - [netdrv] r8169: remove setting PCI_CACHE_LINE_SIZE in rtl_hw_start_8169 (Josef Oskera) [1841511] - [netdrv] r8169: remove unneeded check from rtl_link_chg_patch (Josef Oskera) [1841511] - [netdrv] r8169: fix performance regression related to PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: don't set min_mtu/max_mtu if not needed (Josef Oskera) [1841511] - [netdrv] r8169: factor out PHY configuration to r8169_phy_config.c (Josef Oskera) [1841511] - [netdrv] r8169: add r8169.h (Josef Oskera) [1841511] - [netdrv] r8169: rename rtl_apply_firmware (Josef Oskera) [1841511] - [netdrv] r8169: add phydev argument to rtl8168d_apply_firmware_cond (Josef Oskera) [1841511] - [netdrv] r8169: use phy_read/write instead of rtl_readphy/writephy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_w0w1_phy (Josef Oskera) [1841511] - [netdrv] r8169: replace rtl_patchphy (Josef Oskera) [1841511] - [netdrv] r8169: move disabling MAC EEE for RTL8402/RTL8106e (Josef Oskera) [1841511] - [netdrv] r8169: move setting ERI register 0x1d0 for RTL8106 (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in rtl_writephy_batch (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of RTL8168g-specific PHY config functions (Josef Oskera) [1841511] - [netdrv] r8169: change argument type of EEE PHY functions (Josef Oskera) [1841511] - [netdrv] r8169: move RTL8169scd Gigabyte PHY quirk (Josef Oskera) [1841511] - [netdrv] r8169: remove not needed debug print in rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: prepare for exporting rtl_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add constant EnAnaPLL (Josef Oskera) [1841511] - [netdrv] r8169: move enabling EEE to rtl8169_init_phy (Josef Oskera) [1841511] - [netdrv] r8169: remove MAC workaround in rtl8168e_2_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: factor out rtl8168h_2_get_adc_bias_ioffset (Josef Oskera) [1841511] - [netdrv] r8169: check that Realtek PHY driver module is loaded (Josef Oskera) [1841511] - [netdrv] treewide: Use sizeof_field() macro (Josef Oskera) [1841511] - [netdrv] r8169: fix rtl_hw_jumbo_disable for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add missing RX enabling for WoL on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo configuration for RTL8168evl (Josef Oskera) [1841511] - [netdrv] r8169: add check for PHY_MDIO_CHG to rtl_nic_fw_data_ok (Josef Oskera) [1841511] - [netdrv] r8169: use macro FIELD_SIZEOF in definition of FW_OPCODE_SIZE (Josef Oskera) [1841511] - [netdrv] r8169: change mdelay to msleep in rtl_fw_write_firmware (Josef Oskera) [1841511] - [netdrv] r8169: load firmware for RTL8168fp/RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: improve conditional firmware loading for RTL8168d (Josef Oskera) [1841511] - [netdrv] r8169: use r8168d_modify_extpage in rtl8168f_config_eee_phy (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8117 (Josef Oskera) [1841511] - [netdrv] r8169: respect EEE user setting when restarting network (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl8168c_4_hw_phy_config (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_modify_extpage (Josef Oskera) [1841511] - [netdrv] r8169: switch to phylib functions in more places (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168d_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: add helper r8168g_phy_param (Josef Oskera) [1841511] - [netdrv] r8169: fix page read in r8168g_mdio_read (Josef Oskera) [1841511] - [netdrv] r8169: fix wrong PHY ID issue with RTL8168dp (Josef Oskera) [1841511] - [netdrv] r8169: use helper rtl_hw_aspm_clkreq_enable also in rtl_hw_start_8168g_2 (Josef Oskera) [1841511] - [netdrv] r8169: improve rtl8169_rx_fill (Josef Oskera) [1841511] - [netdrv] r8169: align fix_features callback with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: never set PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168bef (Josef Oskera) [1841511] - [netdrv] r8169: remove rtl_hw_start_8168dp (Josef Oskera) [1841511] - [netdrv] r8169: simplify setting PCI_EXP_DEVCTL_NOSNOOP_EN (Josef Oskera) [1841511] - [netdrv] r8169: remove fiddling with the PCIe max read request size (Josef Oskera) [1841511] - [netdrv] r8169: fix jumbo packet handling on resume from suspend (Josef Oskera) [1841511] - [netdrv] r8169: don't set bit RxVlan on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add support for EEE on RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: add RTL8125 PHY initialization (Josef Oskera) [1841511] - [netdrv] r8169: add support for RTL8125 (Josef Oskera) [1841511] - [netdrv] r8169: don't use bit LastFrag in tx descriptor after send (Josef Oskera) [1841511] - [netdrv] r8169: read common register for PCI commit (Josef Oskera) [1841511] - [netdrv] r8169: move disabling interrupt coalescing to RTL8169/RTL8168 init (Josef Oskera) [1841511] - [netdrv] r8169: factor out reading MAC address from registers (Josef Oskera) [1841511] - [netdrv] r8169: restrict rtl_is_8168evl_up to RTL8168 chip versions (Josef Oskera) [1841511] - [netdrv] r8169: change interrupt mask type to u32 (Josef Oskera) [1841511] - [netdrv] r8169: improve DMA handling in rtl_rx (Josef Oskera) [1841511] - [netdrv] r8169: fix DMA issue on MIPS platform (Josef Oskera) [1841511] - [netdrv] r8169: sync EEE handling for RTL8168h with vendor driver (Josef Oskera) [1841511] - [netdrv] r8169: use the generic EEE management functions (Josef Oskera) [1841511] - [fs] gfs2: Even more gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] sched/fair: Don't NUMA balance for kthreads (Phil Auld) [1842543] - [kernel] sched/core: Offload wakee task activation if it the wakee is descheduling (Phil Auld) [1842543] - [kernel] sched/core: Optimize ttwu() spinning on p->on_cpu (Phil Auld) [1842543] - [fs] gfs2: Smarter iopen glock waiting (Andreas Grunbacher) [1582655] - [fs] gfs2: Wake up when setting GLF_DEMOTE (Andreas Grunbacher) [1582655] - [fs] gfs2: Check inode generation number in delete_work_func (Andreas Grunbacher) [1582655] - [fs] gfs2: Move inode generation number check into gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Minor gfs2_lookup_by_inum cleanup (Andreas Grunbacher) [1582655] - [fs] gfs2: Try harder to delete inodes locally (Andreas Grunbacher) [1582655] - [fs] gfs2: Give up the iopen glock on contention (Andreas Grunbacher) [1582655] - [fs] gfs2: Turn gl_delete into a delayed work (Andreas Grunbacher) [1582655] - [fs] gfs2: Keep track of deleted inode generations in LVBs (Andreas Grunbacher) [1582655] - [fs] gfs2: Allow ASPACE glocks to also have an lvb (Andreas Grunbacher) [1582655] - [fs] gfs2: Avoid access time thrashing in gfs2_inode_lookup (Andreas Grunbacher) [1582655] - [fs] gfs2: Use IS_ERR_OR_NULL (Andreas Grunbacher) [1582655] - [fpga] fpga: mark the intel fpga drivers as tech preview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: Remove unneeded semicolon (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: Fix incompatible function behavior for RSU driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 remote system update driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: stratix10-svc: extend svc to support new RSU features (Luis Goncalves) [1689274 1660310 1494701 1494699] - [edac] EDAC/altera, firmware/intel: Add Stratix10 ECC DBE SMC call (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: stratix10-svc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] firmware: add remote status update client support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [firmware] firmware: add Intel Stratix10 service layer driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: fix return value of cci_pci_sriov_configure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: xilinx-pr-decoupler: Remove clk_get error message for probe defer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: remove redundant dev_err message (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: remove set but not used variable 'afu' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'fme' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add power management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add thermal management support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for thermal/power management interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: Remove dev_err() usage after platform_get_irq() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] Documentation: fpga: dfl: add descriptions for virtualization and new interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add global error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add STP (SignalTap) support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add error reporting support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: expose __afu_port_enable/disable function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add userclock sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: convert platform_driver to use dev_groups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make init callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Add Stratix10 (V2) Support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Preparation for V2 parts (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Discover Vendor Specific offset (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-ps-spi: Fix getting of optional confd gpio (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add capability sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: make uinit callback optional (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add id_table for dfl private feature driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add AFU state related sysfs interfaces (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: pci: enable SRIOV support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_FME_PORT_RELEASE/ASSIGN ioctl support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: use driver core functions, not sysfs ones (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-pr-ip: Make alt_pr_unregister function void (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix function definition argument (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga-manager: altera-ps-spi: Fix build error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: align PR buffer size per PR datawidth (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove copy_to_user() in ioctl for PR (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-mgr: fix FME_PR_INTFC_ID register address (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: Kconfig: pedantic cleanups (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: convert docs to ReST and rename to *.rst (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: zynqmp-fpga: Correctly handle error pointer (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] include: fpga: adi-axi-common.h: add common regs & defs header (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: expand minor range when registering chrdev region (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: Add lockdep classes for pdata->lock (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: Pass the correct device to dma_mapping_error() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix use-after-free on s10_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] treewide: Add SPDX license identifier - Makefile/Kconfig (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] mm/gup: change GUP fast to use flags rather than a write 'bool' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga manager: Adding FPGA Manager support for Xilinx zynqmp (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera_freeze_bridge: remove restriction to socfpga (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: make array dummy static, shrinks object size (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: stratix10-soc: fix wrong of_node_put() in init function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] Remove 'type' argument from access_ok() function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: of-fpga-region: Use platform_set_drvdata (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-fme-region: Use platform_get_drvdata() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add intel stratix10 soc fpga manager driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: altera-ps-spi: enable usage on non-dt platforms (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix probing for multiple FPGAs on the bus (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] zynq-fpga: Only route PR via PCAP when required (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: Fix registration for CvP incapable devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: remove set but not used variable 'priv' (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: altera-cvp: fix 'bad IO access' on x86_64 (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add devm_fpga_region_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: add devm_fpga_bridge_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add devm_fpga_mgr_create (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: document fpga manager flags (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: bridge: fix obvious function documentation error (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: do not access region struct after fpga_region_unregister (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] drivers: fpga: fix two trivial spelling mistakes (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: fix return value check in in pr_mgmt_init() (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_PORT_DMA_MAP/UNMAP ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add afu sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: afu: add port ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Accelerated Function Unit driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-region: add support for compat_id (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga region platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga bridge platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme-mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add fpga manager platform driver for FME (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add partial reconfiguration sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add DFL_FPGA_GET_API_VERSION/CHECK_EXTENSION ioctls support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: fme: add header sub feature support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add FPGA Management Engine driver basic framework (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl-pci: add enumeration for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add FPGA DFL PCIe device driver (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_check_port_id function (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_port_ops support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add feature device infrastructure (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add dfl_fpga_cdev_find_port (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: dfl: add chardev support for feature devices (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: add device feature list support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: region: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add compat_id support (Luis Goncalves) [1689274 1660310 1494701 1494699] - [fpga] fpga: mgr: add status for fpga-manager (Luis Goncalves) [1689274 1660310 1494701 1494699] - [include] fpga: mgr: add region_id to fpga_image_info (Luis Goncalves) [1689274 1660310 1494701 1494699] - [documentation] docs: fpga: add a document for FPGA Device Feature List (DFL) Framework Overview (Luis Goncalves) [1689274 1660310 1494701 1494699] - [mm] mm: Add a vmf_insert_mixed_prot() function (Dave Airlie) [1838335] - [mm] mm: Add write-protect and clean utilities for address space ranges (Dave Airlie) [1838335] - [mm] mm: Add a walk_page_mapping() function to the pagewalk code (Dave Airlie) [1838335] - [mm] pagewalk: separate function pointers from iterator data (Dave Airlie) [1838335] - [mm] mm: split out a new pagewalk.h header from mm.h (Dave Airlie) [1838335] - [mm] mm: update ptep_modify_prot_commit to take old pte value as arg (Dave Airlie) [1838335] - [x86] mm: update ptep_modify_prot_start/commit to take vm_area_struct as arg (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: add an interval tree notifier (Dave Airlie) [1838335] - [mm] mm/mmu_notifier: define the header pre-processor parts even if disabled (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a lockdep map for invalidate_range_start/end (Dave Airlie) [1838335] - [misc] misc/sgi-gru: use mmu_notifier_get/put for struct gru_mm_struct (Dave Airlie) [1838335] - [drm] drm/backport: add mmu notifier get/put support to drm backport (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: add a get/put scheme for the registration (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: do not speculatively allocate a mmu_notifier_mm (Dave Airlie) [1838335] - [mm] mm/mmu_notifiers: hoist do_mmu_notifier_register down_write to the caller (Dave Airlie) [1838335] - [mm] mm/mmu_notifier.c: remove mmu_notifier_synchronize() (Dave Airlie) [1838335] - [infiniband] locking/lockdep: Rename lockdep_assert_held_exclusive() -> lockdep_assert_held_write() (Dave Airlie) [1838335] - [include] mm/mmu_notifier: contextual information for event enums (Dave Airlie) [1838335] - [mm] mm/memory_hotplug.c: only respect mem= parameter during boot stage (Baoquan He) [1838809 1781472] - [scsi] scsi: mpt3sas: Remove unused including (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free warnings (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Disable DIF when prot_mask set to zero (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Capture IOC data for debugging purposes (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Use true, false for ioc->use_32bit_dma (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove NULL check before freeing function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update mpt3sas version to 33.101.00.00 (Tomas Henzl) [1790760] - [scsi] mpt3sas: Fix memset in non-rdpq mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix reply queue count in non RDPQ mode (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle RDPQ DMA allocation in same 4G region (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Separate out RDPQ allocation to new function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Rename function name is_MSB_are_same (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Don't change the DMA coherent mask after allocations (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: use true, false for bool variables (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix kernel panic observed on soft HBA unplug (Tomas Henzl) [1790760] - [scsi] scsi: Replace zero-length array with flexible-array member (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update drive version to 33.100.00.00 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Remove usage of device_busy counter (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Print function name in which cmd timed out (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Optimize mpt3sas driver logging (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: print in which path firmware fault occurred (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Handle CoreDump state from watchdog thread (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support IOCs new state named COREDUMP (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: renamed _base_after_reset_handler function (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Add support for NVMe shutdown (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Update MPI Headers to v02.00.57 (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Fix double free in attach error handling (Tomas Henzl) [1790760] - [scsi] scsi: mpt3sas: Clean up some indenting (Tomas Henzl) [1790760] - [crypto] crypto: af_alg - cast ki_complete ternary op to int (Herbert Xu) [1837499] - [netdrv] virtio-net: per-queue RPS config (Eugenio Perez) [1718086] - [netdrv] virtio_net: Differentiate sk_buff and xdp_frame on freeing (Eugenio Perez) [1718086] - [netdrv] virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs (Eugenio Perez) [1718086] - [netdrv] virtio_net: enable napi_tx by default (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't call free_old_xmit_skbs for xdp_frames (Eugenio Perez) [1718086] - [netdrv] virtio_net: Don't enable NAPI when interface is down (Eugenio Perez) [1718086] - [include] cpumask: make cpumask_next_wrap available without smp (Eugenio Perez) [1718086] - [netdrv] virtio_net: Stripe queue affinities across cores (Eugenio Perez) [1718086] - [virtio] virtio: Make vp_set_vq_affinity() take a mask (Eugenio Perez) [1718086]- [netdrv] ice: add board identifier info to devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: add basic handler for devlink .info_get (Jonathan Toppins) [1796682] - [netdrv] ice: enable initial devlink support (Jonathan Toppins) [1796682] - [netdrv] ice: implement full NVM read from ETHTOOL_GEEPROM (Jonathan Toppins) [1796682] - [netdrv] ice: discover and store size of available flash (Jonathan Toppins) [1796682] - [netdrv] ice: store NVM version info in extracted format (Jonathan Toppins) [1796682] - [netdrv] ice: create function to read a section of the NVM and Shadow RAM (Jonathan Toppins) [1796682] - [netdrv] ice: use __le16 types for explicitly Little Endian values (Jonathan Toppins) [1796682] - [netdrv] ice: fix incorrect size description of ice_get_nvm_version (Jonathan Toppins) [1781388] - [netdrv] ice: use variable name more descriptive than type (Jonathan Toppins) [1781388] - [netdrv] ice: Use EOPNOTSUPP instead of ENOTSUPP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix format specifier (Jonathan Toppins) [1781388] - [netdrv] ice: fix use of deprecated strlcpy() (Jonathan Toppins) [1781388] - [netdrv] ice: Increase mailbox receive queue length to maximum (Jonathan Toppins) [1781388] - [netdrv] ice: Correct setting VLAN pruning (Jonathan Toppins) [1781388] - [netdrv] ice: renegotiate link after FW DCB on (Jonathan Toppins) [1781388] - [netdrv] ice: Fix corner case when switching from IEEE to CEE (Jonathan Toppins) [1781388] - [netdrv] ice: Display Link detected via Ethtool in safe mode (Jonathan Toppins) [1781388] - [netdrv] ice: Fix removing driver while bare-metal VFs pass traffic (Jonathan Toppins) [1781388] - [netdrv] ice: Improve clarity of prints and variables (Jonathan Toppins) [1781388] - [netdrv] ice: allow bigger VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup unneeded parenthesis (Jonathan Toppins) [1781388] - [netdrv] ice: Use pci_get_dsn() (Jonathan Toppins) [1781388] - [netdrv] ice: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1781388] - [netdrv] ice: fix define for E822 backplane device (Jonathan Toppins) [1781388] - [netdrv] ice: add support for E823 devices (Jonathan Toppins) [1795812] - [netdrv] ice: add backslash-n to strings (Jonathan Toppins) [1781388] - [netdrv] ice: increase PF reset wait timeout to 300 milliseconds (Jonathan Toppins) [1781388] - [netdrv] ice: Support XDP UMEM wake up mechanism (Jonathan Toppins) [1781388] - [netdrv] ice: SW DCB, report correct max TC value (Jonathan Toppins) [1781388] - [netdrv] ice: Report correct DCB mode (Jonathan Toppins) [1781388] - [netdrv] ice: Add DCBNL ops required to configure ETS in CEE for SW DCB (Jonathan Toppins) [1781388] - [netdrv] ice: Always clear the QRXFLXP_CNTXT register for VF Rx queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix for TCAM entry management (Jonathan Toppins) [1781388] - [netdrv] ice: update malicious driver detection event handling (Jonathan Toppins) [1781388] - [netdrv] ice: Validate config for SW DCB map (Jonathan Toppins) [1781388] - [netdrv] ice: Wait for VF to be reset/ready before configuration (Jonathan Toppins) [1792691] - [netdrv] ice: Don't reject odd values of usecs set by user (Jonathan Toppins) [1781388] - [netdrv] ice: use true/false for bool types (Jonathan Toppins) [1781388] - [netdrv] ice: add function argument description to function header comment (Jonathan Toppins) [1781388] - [netdrv] ice: use proper format for function pointer as a function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary fallthrough comments (Jonathan Toppins) [1781388] - [netdrv] ice: Fix virtchnl_queue_select bitmap validation (Jonathan Toppins) [1781388] - [netdrv] ice: Fix and refactor Rx queue disable for VFs (Jonathan Toppins) [1781388] - [netdrv] ice: Handle LAN overflow event for VF queues (Jonathan Toppins) [1781388] - [netdrv] ice: Fix implicit queue mapping mode in ice_vsi_get_qs (Jonathan Toppins) [1781388] - [netdrv] ice: Add support to enable/disable all Rx queues before waiting (Jonathan Toppins) [1781388] - [netdrv] ice: Only allow tagged bcast/mcast traffic for VF in port VLAN (Jonathan Toppins) [1781388] - [netdrv] ice: Fix Port VLAN priority bits (Jonathan Toppins) [1781388] - [netdrv] ice: Add helper to determine if VF link is up (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor port vlan configuration for the VF (Jonathan Toppins) [1781388] - [netdrv] ice: Add initial support for QinQ (Jonathan Toppins) [1781388] - [netdrv] ice: Trivial fixes (Jonathan Toppins) [1781388] - [netdrv] ice: Use correct netif error function (Jonathan Toppins) [1781388] - [netdrv] ice: Cleanup ice_vsi_alloc_q_vectors (Jonathan Toppins) [1781388] - [netdrv] ice: Make print statements more compact (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_pf_to_dev (Jonathan Toppins) [1781388] - [netdrv] ice: Remove possible null dereference (Jonathan Toppins) [1781388] - [netdrv] ice: update Unit Load Status bitmask to check after reset (Jonathan Toppins) [1781388] - [netdrv] ice: fix and consolidate logging of NVM/firmware version information (Jonathan Toppins) [1781388] - [netdrv] ice: Modify link message logging (Jonathan Toppins) [1781388] - [netdrv] ice: Remove CONFIG_PCI_IOV wrap in ice_set_pf_caps (Jonathan Toppins) [1781388] - [netdrv] ice: Remove ice_dev_onetime_setup() (Jonathan Toppins) [1781388] - [netdrv] ice: Don't allow same value for Rx tail to be written twice (Jonathan Toppins) [1781388] - [netdrv] ice: display supported and advertised link modes (Jonathan Toppins) [1781388] - [netdrv] ice: Fix switch between FW and SW LLDP (Jonathan Toppins) [1781388] - [netdrv] ice: Fix DCB rebuild after reset (Jonathan Toppins) [1781388] - [netdrv] ice: Bump version (Jonathan Toppins) [1781401] - [netdrv] ice: Implement ethtool get/set rx-flow-hash (Jonathan Toppins) [1781401] - [netdrv] ice: Initilialize VF RSS tables (Jonathan Toppins) [1781401] - [netdrv] ice: Optimize table usage (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: Populate TCAM filter software structures (Jonathan Toppins) [1781401] - [netdrv] ice: Allocate flow profile (Jonathan Toppins) [1781401] - [netdrv] ice: Enable writing hardware filtering tables (Jonathan Toppins) [1781401] - [netdrv] ice: remove redundant assignment to variable xmit_done (Jonathan Toppins) [1781388] - [netdrv] ice: Removing hung_queue variable to use txqueue function parameter (Jonathan Toppins) [1781388] - [netdrv] ice: Add device ids for E822 devices (Jonathan Toppins) [1781951] - [netdrv] ice: Suppress Coverity warnings for xdp_rxq_info_reg (Jonathan Toppins) [1781388] - [netdrv] ice: Add a boundary check in ice_xsk_umem() (Jonathan Toppins) [1781388] - [netdrv] ice: add extra check for null Rx descriptor (Jonathan Toppins) [1781388] - [netdrv] ice: suppress checked_return error (Jonathan Toppins) [1781388] - [netdrv] ice: Demote MTU change print to debug (Jonathan Toppins) [1781388] - [netdrv] ice: Enable ip link show on the PF to display VF unicast MAC(s) (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF link state when it's IFLA_VF_LINK_STATE_AUTO (Jonathan Toppins) [1781388] - [netdrv] ice: Remove Rx flex descriptor programming (Jonathan Toppins) [1781388] - [netdrv] ice: Return error on not supported ethtool -C parameters (Jonathan Toppins) [1781388] - [netdrv] ice: Restore interrupt throttle settings after VSI rebuild (Jonathan Toppins) [1781388] - [netdrv] ice: Set default value for ITR in alloc function (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_for_each_vf() macro (Jonathan Toppins) [1781388] - [netdrv] ice: Add code to keep track of current dflt_vsi (Jonathan Toppins) [1781388] - [netdrv] ice: Fix VF spoofchk (Jonathan Toppins) [1781388] - [netdrv] ice: Support UDP segmentation offload (Jonathan Toppins) [1781388] - [netdrv] ice: Update FW API minor version (Jonathan Toppins) [1781388] - [netdrv] ice: remove pointless NULL check of port_info (Jonathan Toppins) [1781388] - [netdrv] ice: Implement ethtool ops for channels (Jonathan Toppins) [1781388] - [netdrv] ice: implement VF stats NDO (Jonathan Toppins) [1781388] - [netdrv] ice: add helpers for virtchnl (Jonathan Toppins) [1781388] - [netdrv] ice: Add ice_pf_to_dev(pf) macro (Jonathan Toppins) [1781388] - [netdrv] ice: Do not use devm* functions for local uses (Jonathan Toppins) [1781388] - [netdrv] ice: Refactor removal of VLAN promiscuous rules (Jonathan Toppins) [1781388] - [netdrv] ice: Fix setting coalesce to handle DCB configuration (Jonathan Toppins) [1781388] - [netdrv] ice: Only disable VF state when freeing each VF resources (Jonathan Toppins) [1781388] - [netdrv] ice: fix stack leakage (Jonathan Toppins) [1781388] - [netdrv] ice: Don't modify stripping for add/del VLANs on VF (Jonathan Toppins) [1781388] - [netdrv] ice: Disallow VF VLAN opcodes if VLAN offloads disabled (Jonathan Toppins) [1781388] - [netdrv] ice: Correct capabilities reporting of max TCs (Jonathan Toppins) [1781388] - [netdrv] ice: Store number of functions for the device (Jonathan Toppins) [1781388] - [netdrv] ice: fix potential infinite loop because loop counter being too small (Jonathan Toppins) [1781388] - [netdrv] ice: print opcode when printing controlq errors (Jonathan Toppins) [1781388] - [netdrv] ice: use more accurate ICE_DBG mask types (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce and use ice_vsi_type_str (Jonathan Toppins) [1781388] - [netdrv] ice: remove unnecessary conditional check (Jonathan Toppins) [1781388] - [netdrv] ice: Update enum ice_flg64_bits to current specification (Jonathan Toppins) [1781388] - [netdrv] ice: delay less (Jonathan Toppins) [1781388] - [netdrv] ice: use pkg_dwnld_status instead of sq_last_status (Jonathan Toppins) [1781388] - [netdrv] ice: Change max MSI-x vector_id check in cfg_irq_map (Jonathan Toppins) [1781388] - [netdrv] ice: Check if VF is disabled for Opcode and other operations (Jonathan Toppins) [1781388] - [netdrv] ice: configure software LLDP in ice_init_pf_dcb (Jonathan Toppins) [1781388] - [netdrv] ice: Fix to change Rx/Tx ring descriptor size via ethtool with DCBx (Jonathan Toppins) [1781388] - [netdrv] ice: avoid setting features during reset (Jonathan Toppins) [1781388] - [netdrv] ice: Implement DCBNL support (Jonathan Toppins) [1781388] - [netdrv] ice: Add NDO callback to set the maximum per-queue bitrate (Jonathan Toppins) [1781388] - [netdrv] ice: Use ice_ena_vsi and ice_dis_vsi in DCB configuration flow (Jonathan Toppins) [1781388] - [netdrv] ice: Fix return value when SR-IOV is not supported (Jonathan Toppins) [1781388] - [netdrv] ice: Rename VF function ice_vc_dis_vf to match its behavior (Jonathan Toppins) [1781388] - [netdrv] ice: Get rid of ice_cleanup_header (Jonathan Toppins) [1781388] - [netdrv] ice: print PCI link speed and width (Jonathan Toppins) [1781388] - [netdrv] ice: print unsupported module message (Jonathan Toppins) [1781388] - [netdrv] ice: write register with correct offset (Jonathan Toppins) [1781388] - [netdrv] ice: Check for null pointer dereference when setting rings (Jonathan Toppins) [1781388] - [netdrv] ice: save PCI state in probe (Jonathan Toppins) [1781388] - [netdrv] ice: Adjust DCB INIT for SW mode (Jonathan Toppins) [1781388] - [netdrv] ice: fix driver unload flow (Jonathan Toppins) [1781388] - [netdrv] ice: handle DCBx non-contiguous TC request (Jonathan Toppins) [1781388] - [netdrv] ice: Update Boot Configuration Section read of NVM (Jonathan Toppins) [1781388] - [netdrv] ice: add ethtool -m support for reading i2c eeprom modules (Jonathan Toppins) [1781388] - [netdrv] ice: allow 3k MTU for XDP (Jonathan Toppins) [1781388] - [netdrv] ice: add build_skb() support (Jonathan Toppins) [1781388] - [netdrv] ice: introduce frame padding computation logic (Jonathan Toppins) [1781388] - [netdrv] ice: introduce legacy Rx flag (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for AF_XDP (Jonathan Toppins) [1730487] - [netdrv] ice: Move common functions to ice_txrx_lib.c (Jonathan Toppins) [1781388] - [netdrv] ice: Add support for XDP (Jonathan Toppins) [1730487] - [netdrv] ice: get rid of per-tc flow in Tx queue configuration routines (Jonathan Toppins) [1781388] - [netdrv] ice: Introduce ice_base.c (Jonathan Toppins) [1781388] - [netdrv] net:Use skb accessors in network drivers (Jonathan Toppins) [1781388] - [powerpc] powerpc/eeh: Remove eeh_add_device_tree_late() (Myron Stowe) [1840904] - [powerpc] powerpc/eeh: Add sysfs files in late probe (Myron Stowe) [1840904] - [powerpc] powerpc: Drop using struct of_pci_range.pci_space field (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fold pcibios_setup_device() into pcibios_bus_add_device() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove pcibios_setup_bus_devices() (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Fix pcibios_setup_device() ordering (Myron Stowe) [1840904] - [powerpc] powerpc/pci: Remove legacy debug code (Myron Stowe) [1840904] - [x86] x86/microcode/AMD: Increase microcode PATCH_MAX_SIZE (David Arcari) [1826966] - [x86] x86/microcode/AMD: Make stub function static inline (David Arcari) [1826966] - [x86] x86/microcode/intel: Issue the revision updated message only on the BSP (David Arcari) [1826966] - [x86] x86/microcode: Update late microcode in parallel (David Arcari) [1826966] - [x86] x86/microcode/amd: Fix two -Wunused-but-set-variable warnings (David Arcari) [1826966] - [x86] x86/microcode: Fix the microcode load on CPU hotplug for real (David Arcari) [1826966] - [x86] x86/microcode, cpuhotplug: Add a microcode loader CPU hotplug callback (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 353 (David Arcari) [1826966] - [x86] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826966] - [x86] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826966] - [x86] x86/microcode: Fix the ancient deprecated microcode loading method (David Arcari) [1826966] - [x86] x86/microcode/intel: Refactor Intel microcode blob loading (David Arcari) [1826966] - [x86] x86/microcode: Announce reload operation's completion (David Arcari) [1826966] - [x86] x86/microcode/AMD: Update copyright (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check the equivalence table size when scanning it (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert CPU equivalence table variable into a struct (David Arcari) [1826966] - [x86] x86/microcode/AMD: Check microcode container data in the late loader (David Arcari) [1826966] - [x86] x86/microcode/AMD: Fix container size's type (David Arcari) [1826966] - [x86] x86/microcode/AMD: Convert early parser to the new verification routines (David Arcari) [1826966] - [x86] x86/microcode/AMD: Change verify_patch()'s return value (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move chipset-specific check into verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move patch family check to verify_patch() (David Arcari) [1826966] - [x86] x86/microcode/AMD: Simplify patch family detection (David Arcari) [1826966] - [x86] x86/microcode/AMD: Concentrate patch verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Cleanup verify_patch_size() more (David Arcari) [1826966] - [x86] x86/microcode/AMD: Clean up per-family patch size checks (David Arcari) [1826966] - [x86] x86/microcode/AMD: Move verify_patch_size() up in the file (David Arcari) [1826966] - [x86] x86/microcode/AMD: Add microcode container verification (David Arcari) [1826966] - [x86] x86/microcode/AMD: Subtract SECTION_HDR_SIZE from file leftover length (David Arcari) [1826966] - [x86] x86/microcode: Make revision and processor flags world-readable (David Arcari) [1826966] - [pci] PCI: Add pci_status_get_and_clear_errors (Josef Oskera) [1840535] - [pci] PCI: Add constant PCI_STATUS_ERROR_BITS (Josef Oskera) [1840535] - [arm64] arm64: dts: ls1046ardb: set RGMII interfaces to RGMII_ID mode (Petr Oros) [1816982] - [arm64] arm64: dts: ls1043a-rdb: correct RGMII delay mode to rgmii-id (Petr Oros) [1816982] - [netdrv] net: phy: marvell: Fix pause frame negotiation (Petr Oros) [1816982] - [netdrv] net: phy: propagate an error back to the callers of phy_sfp_probe (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 (Petr Oros) [1816982] - [netdrv] r8169: fix resume on cable plug-in (Petr Oros) [1816982] - [documentation] dt-bindings: net: remove un-implemented property (Petr Oros) [1816982] - [netdrv] net: phy: mdio-bcm-unimac: Fix clock handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: w/a for fld detect threshold bootstrapping issue (Petr Oros) [1816982] - [netdrv] net: phy: sfp-bus.c: get rid of docs warnings (Petr Oros) [1816982] - [netdrv] net: phy: mdio-mux-bcm-iproc: check clk_prepare_enable() return value (Petr Oros) [1816982] - [netdrv] net: phy: fix MDIO bus PM PHY resuming (Petr Oros) [1816982] - [of] drivers/of/of_mdio.c:fix of_mdiobus_register() (Petr Oros) [1816982] - [netdrv] net: phy: bcm63xx: fix OOPS due to missing driver name (Petr Oros) [1816982] - [netdrv] phylink: Improve error message when validate failed (Petr Oros) [1816982] - [netdrv] net: phy: avoid clearing PHY interrupts twice in irq handler (Petr Oros) [1816982] - [netdrv] net: phy: marvell: don't interpret PHY status unless resolved (Petr Oros) [1816982] - [netdrv] net: phy: mscc: fix firmware paths (Petr Oros) [1816982] - [netdrv] net: phy: corrected the return value for genphy_check_and_restart_aneg and genphy_c45_check_and_restart_aneg (Petr Oros) [1816982] - [documentation] docs: networking: phy: Rephrase paragraph for clarity (Petr Oros) [1816982] - [netdrv] net: phy: Avoid multiple suspends (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix a typo ("firsly") (Petr Oros) [1816982] - [netdrv] net: phy: restore mdio regs in the iproc mdio driver (Petr Oros) [1816982] - [netdrv] net: phy: at803x: disable vddio regulator (Petr Oros) [1816982] - [netdrv] net: mii_timestamper: fix static allocation by PHY driver (Petr Oros) [1816982] - [of] net: mdio: of: fix potential NULL pointer derefernce (Petr Oros) [1816982] - [netdrv] net: phy: add default ARCH_BCM_IPROC for MDIO_BCM_IPROC (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Add support for additional DP83825 devices (Petr Oros) [1816982] - [netdrv] phy: dp83826: Add phy IDs for DP83826N and 826NC (Petr Oros) [1816982] - [netdrv] net: phy: add new version of phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: rename phy_do_ioctl to phy_do_ioctl_running (Petr Oros) [1816982] - [netdrv] r8169: use generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phy: add generic ndo_do_ioctl handler phy_do_ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: allow in-band AN for USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: adin: fix a warning about msleep (Petr Oros) [1816982] - [netdrv] net: phy: don't crash in phy_read/_write_mmd without a PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: Allow 2.5BASE-T, 5GBASE-T and 10GBASE-T for the 10G link modes (Petr Oros) [1816982] - [netdrv] net: phy: adin: const-ify static data (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset (Petr Oros) [1816982] - [netdrv] net: phy: Maintain MDIO device and bus statistics (Petr Oros) [1816982] - [powerpc] powerpc: Add const qual to local_read() parameter (Petr Oros) [1816982] - [include] u64_stats: provide u64_stats_t type (Petr Oros) [1816982] - [documentation] Documentation: net-sysfs: Remove duplicate PHY device documentation (Petr Oros) [1816982] - [netdrv] mdio_bus: Simplify reset handling and extend to non-DT systems (Petr Oros) [1816982] - [netdrv] net: phy: Added IRQ print to phylink_bringup_phy() (Petr Oros) [1816982] - [netdrv] net: phy: DP83822: Update Kconfig with DP83825I support (Petr Oros) [1816982] - [netdrv] net: phy: DP83TC811: Fix typo in Kconfig (Petr Oros) [1816982] - [netdrv] net: phylink: add support for polling MAC PCS (Petr Oros) [1816982] - [netdrv] net: phylink: make QSGMII a valid PHY mode for in-band AN (Petr Oros) [1816982] - [uapi] mii: Add helpers for parsing SGMII auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phylink: fix failure to register on x86 systems (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: switch to using fwnode_gpiod_get_index (Petr Oros) [1816982] - [netdrv] net: phy: fixed_phy: fix use-after-free when checking link GPIO (Petr Oros) [1816982] - [netdrv] net: phylink: switch to using fwnode_gpiod_get_index() (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for configuring the RX delay on RTL8211F (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add logging for the RGMII TX delay configuration (Petr Oros) [1816982] - [netdrv] net: mdio: of: Register discovered MII time stampers (Petr Oros) [1816982] - [documentation] dt-bindings: ptp: Introduce MII time stamping devices (Petr Oros) [1816982] - [netdrv] net: Add a layer for non-PHY MII time stamping drivers (Petr Oros) [1816982] - [netdrv] net: Introduce a new MII time stamping interface (Petr Oros) [1816982] - [netdrv] net: phy: dp83640: Move the probe and remove methods around (Petr Oros) [1816982] - [netdrv] net: netcp_ethss: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: ethtool: Use the PHY time stamping interface (Petr Oros) [1816982] - [net] net: vlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [netdrv] net: macvlan: Use the PHY time stamping interface (Petr Oros) [1816982] - [include] net: phy: Introduce helper functions for time stamping support (Petr Oros) [1816982] - [include] of: mdio: Add missing inline to of_mdiobus_child_is_phy() dummy (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add suspend / resume ops for AQR105 (Petr Oros) [1816982] - [netdrv] net: phy: ensure that phy IDs are correctly typed (Petr Oros) [1816982] - [include] mod_devicetable: fix PHY module format (Petr Oros) [1816982] - [of] of: mdio: export of_mdiobus_child_is_phy (Petr Oros) [1816982] - [netdrv] net: sfp: report error on failure to read sfp soft status (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use phy_modify_changed() (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use existing clause 37 definitions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: consolidate phy status reading (Petr Oros) [1816982] - [netdrv] net: phy: marvell: use positive logic for link state (Petr Oros) [1816982] - [netdrv] net: phy: marvell: initialise link partner state earlier (Petr Oros) [1816982] - [netdrv] net: phy: marvell: rearrange to use genphy_read_lpa() (Petr Oros) [1816982] - [netdrv] net: phy: provide and use genphy_read_status_fixed() (Petr Oros) [1816982] - [netdrv] net: phy: add genphy_check_and_restart_aneg() (Petr Oros) [1816982] - [netdrv] net: phy: use phy_resolve_aneg_pause() (Petr Oros) [1816982] - [netdrv] net: phy: remove redundant .aneg_done initialisers (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Remove unneeded semicolon (Petr Oros) [1816982] - [netdrv] net: phylink: extend clause 45 PHY validation workaround (Petr Oros) [1816982] - [netdrv] net: phylink: improve clause 45 PHY ksettings_set implementation (Petr Oros) [1816982] - [netdrv] net: phylink: fix interface passed to mac_link_up (Petr Oros) [1816982] - [netdrv] net: phylink: propagate phy_attach_direct() return code (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add rx-fifo-depth and tx-fifo-depth (Petr Oros) [1816982] - [documentation] dt-bindings: dp83867: Convert fifo-depth to common fifo-depth and make optional (Petr Oros) [1816982] - [netdrv] net: sfp: re-attempt probing for phy (Petr Oros) [1816982] - [netdrv] net: sfp: error handling for phy probe (Petr Oros) [1816982] - [netdrv] net: sfp: rename sm_retries (Petr Oros) [1816982] - [netdrv] net: sfp: use a definition for the fault recovery attempts (Petr Oros) [1816982] - [netdrv] net: sfp: add support for Clause 45 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: add Broadcom BCM84881 PHY driver (Petr Oros) [1816982] - [netdrv] net: phylink: make Broadcom BCM84881 based SFPs work (Petr Oros) [1816982] - [netdrv] net: phylink: delay MAC configuration for copper SFP modules (Petr Oros) [1816982] - [netdrv] net: phylink: split phylink_sfp_module_insert() (Petr Oros) [1816982] - [netdrv] net: phylink: split link_an_mode configured and current settings (Petr Oros) [1816982] - [netdrv] net: phylink: support Clause 45 PHYs on SFP+ modules (Petr Oros) [1816982] - [netdrv] net: phylink: re-split __phylink_connect_phy() (Petr Oros) [1816982] - [netdrv] net: mdio-i2c: add support for Clause 45 accesses (Petr Oros) [1816982] - [netdrv] net: sfp: move phy_start()/phy_stop() to phylink (Petr Oros) [1816982] - [netdrv] net: sfp: add module start/stop upstream notifications (Petr Oros) [1816982] - [netdrv] net: sfp: derive interface mode from ethtool link modes (Petr Oros) [1816982] - [netdrv] net: sfp: remove incomplete 100BASE-FX and 100BASE-LX support (Petr Oros) [1816982] - [netdrv] net: sfp: avoid tx-fault with Nokia GPON module (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: fix hfs boot in rgmii mode (Petr Oros) [1816982] - [netdrv] phy: mdio-thunder: add missed pci_release_regions in remove (Petr Oros) [1816982] - [netdrv] net: sfp: fix hwmon (Petr Oros) [1816982] - [netdrv] net: sfp: fix unbind (Petr Oros) [1816982] - [netdrv] net: phy: realtek: fix using paged operations with RTL8105e / RTL8208 (Petr Oros) [1816982] - [netdrv] net: phy: Use the correct style for SPDX License Identifier (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Fix return paths to return proper values (Petr Oros) [1816982] - [netdrv] net: phy: add helpers phy_(un)lock_mdio_bus (Petr Oros) [1816982] - [netdrv] mdio_bus: don't use managed reset-controller (Petr Oros) [1816982] - [netdrv] net: phy: initialise phydev speed and duplex sanely (Petr Oros) [1816982] - [netdrv] net: phy: remove phy_ethtool_sset() (Petr Oros) [1816982] - [netdrv] net: sfp: soft status and control support (Petr Oros) [1816982] - [netdrv] net: sfp: add some quirks for GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: add support for module quirks (Petr Oros) [1816982] - [netdrv] net: phylink: fix link mode modification in PHY mode (Petr Oros) [1816982] - [netdrv] net: phylink: update documentation on create and destroy (Petr Oros) [1816982] - [netdrv] mdio_bus: Fix init if CONFIG_RESET_CONTROLLER=n (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: fix return of uninitialized variable ret (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: add missed regulator_disable in remove (Petr Oros) [1816982] - [netdrv] mscc.c: fix semicolon.cocci warnings (Petr Oros) [1816982] - [netdrv] net: phy: avoid matching all-ones clause 45 PHY IDs (Petr Oros) [1816982] - [netdrv] net: phylink: update to use phy_support_asym_pause() (Petr Oros) [1816982] - [netdrv] net: phy: marvell10g: add SFP+ support (Petr Oros) [1816982] - [netdrv] net: phy: add core phylib sfp support (Petr Oros) [1816982] - [netdrv] net: phy: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [documentation] dt-bindings: net: dp83869: Add TI dp83869 phy (Petr Oros) [1816982] - [netdrv] mscc.c: Add support for additional VSC PHYs (Petr Oros) [1816982] - [netdrv] net: sfp: fix spelling mistake "requies" -> "requires" (Petr Oros) [1816982] - [netdrv] net: sfp: allow modules with slow diagnostics to probe (Petr Oros) [1816982] - [netdrv] net: sfp: allow sfp to probe slow to initialise GPON modules (Petr Oros) [1816982] - [netdrv] net: sfp: move module insert reporting out of probe (Petr Oros) [1816982] - [netdrv] net: sfp: split power mode switching from probe (Petr Oros) [1816982] - [netdrv] net: sfp: track upstream's attachment state in state machine (Petr Oros) [1816982] - [netdrv] net: sfp: ensure TX_FAULT has deasserted before probing the PHY (Petr Oros) [1816982] - [netdrv] net: sfp: allow fault processing to transition to other states (Petr Oros) [1816982] - [netdrv] net: sfp: eliminate mdelay() from PHY probe (Petr Oros) [1816982] - [netdrv] net: sfp: split the PHY probe from sfp_sm_mod_init() (Petr Oros) [1816982] - [netdrv] net: sfp: control TX_DISABLE and phy only from main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: avoid power switch on address-change modules (Petr Oros) [1816982] - [netdrv] net: sfp: parse SFP power requirement earlier (Petr Oros) [1816982] - [netdrv] net: sfp: rename T_PROBE_WAIT to T_SERIAL (Petr Oros) [1816982] - [netdrv] net: sfp: handle module remove outside state machine (Petr Oros) [1816982] - [netdrv] net: sfp: rename sfp_sm_ins_next() as sfp_sm_mod_next() (Petr Oros) [1816982] - [netdrv] net: sfp: move tx disable on device down to main state machine (Petr Oros) [1816982] - [netdrv] net: sfp: move sfp sub-state machines into separate functions (Petr Oros) [1816982] - [netdrv] net: sfp: fix sfp_bus_put() kernel documentation (Petr Oros) [1816982] - [include] net: sfp: fix sfp_bus_add_upstream() warning (Petr Oros) [1816982] - [netdrv] net: sfp: rework upstream interface (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add missing dependency on CONFIG_REGULATOR (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove config_init for AR9331 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix the PHY names (Petr Oros) [1816982] - [netdrv] net: phy: at803x: mention AR8033 as same as AR8031 (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add device tree binding (Petr Oros) [1816982] - [documentation] dt-bindings: net: phy: Add support for AT803X (Petr Oros) [1816982] - [netdrv] net: phy: at803x: fix Kconfig description (Petr Oros) [1816982] - [netdrv] net: phylink: Fix phylink_dbg() macro (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for 88E1145 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add PHY tunable support for more PHY versions (Petr Oros) [1816982] - [netdrv] net: phy: marvell: add downshift support for M88E1111 (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix downshift function naming (Petr Oros) [1816982] - [netdrv] net: phy: marvell: fix typo in constant MII_M1011_PHY_SRC_DOWNSHIFT_MASK (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: support Wake on LAN (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: move dt parsing to probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: enable robust auto-mdix (Petr Oros) [1816982] - [netdrv] net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: add 1000Base-X support for BCM54616S (Petr Oros) [1816982] - [netdrv] net: phy: add support for clause 37 auto-negotiation (Petr Oros) [1816982] - [netdrv] net: phy: modify assignment to OR for dev_flags in phy_attach_direct (Petr Oros) [1816982] - [netdrv] net: phy: marvell: remove superseded function marvell_set_downshift (Petr Oros) [1816982] - [netdrv] net: phy: marvell: support downshift as PHY tunable (Petr Oros) [1816982] - [netdrv] net: phy: avoid NPE if read_page/write_page callbacks are not available (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Update KSZ87xx PHY name (Petr Oros) [1816982] - [netdrv] net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs (Petr Oros) [1816982] - [netdrv] net: phy: Fix "link partner" information disappear issue (Petr Oros) [1816982] - [netdrv] net: sfp: move fwnode parsing into sfp-bus layer (Petr Oros) [1816982] - [netdrv] net: phylink: use more linkmode_* (Petr Oros) [1816982] - [netdrv] phylink: fix kernel-doc warnings (Petr Oros) [1816982] - [netdrv] net: phy: mscc: make arrays static, makes object smaller (Petr Oros) [1816982] - [netdrv] net: phy: at803x: use operating parameters from PHY-specific status (Petr Oros) [1816982] - [netdrv] net: phy: extract pause mode (Petr Oros) [1816982] - [netdrv] net: phy: extract link partner advertisement reading (Petr Oros) [1816982] - [netdrv] net: phy: allow for reset line to be tied to a sleepy GPIO controller (Petr Oros) [1816982] - [documentation] docs: networking: phy: Improve phrasing (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Use bcm54xx_config_clock_delay() for BCM54612E (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Fix RGMII delays configuration for BCM54210E (Petr Oros) [1816982] - [netdrv] net: phy: at803x: remove probe and struct at803x_priv (Petr Oros) [1816982] - [netdrv] net: phy: at803x: add ar9331 support (Petr Oros) [1816982] - [of] of: mdio: Fix a signedness bug in of_phy_get_and_connect() (Petr Oros) [1816982] - [netdrv] net/phy: fix DP83865 10 Mbps HDX loopback disable function (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement Energy Detect Powerdown mode via phy-tunable (Petr Oros) [1816982] - [net] ethtool: implement Energy Detect Powerdown support via phy-tunable (Petr Oros) [1816982] - [netdrv] net: mdio: switch to using gpiod_get_optional() (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add SGMII mode type switching (Petr Oros) [1816982] - [documentation] net: phy: dp83867: Add documentation for SGMII mode type (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control resolution (Petr Oros) [1816982] - [netdrv] net: phy: Do not check Link status when loopback is enabled (Petr Oros) [1816982] - [netdrv] net: phy: gmii2rgmii: Dont use priv field in phy device (Petr Oros) [1816982] - [include] include: mdio: Add driver data helpers (Petr Oros) [1816982] - [netdrv] net: phy: force phy suspend when calling phy_stop (Petr Oros) [1816982] - [netdrv] phy: mdio-sun4i: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-mux-meson-g12a: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-moxart: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-hisi-femac: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] phy: mdio-bcm-iproc: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: sfp: Add labels to hwmon sensors (Petr Oros) [1816982] - [netdrv] net: phy: remove genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: remove calls to genphy_config_init (Petr Oros) [1816982] - [netdrv] net: phy: realtek: support NBase-T MMD EEE registers on RTL8125 (Petr Oros) [1816982] - [uapi] net: phy: add EEE-related constants (Petr Oros) [1816982] - [documentation] dt-bindings: net: add bindings for ADIN PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add ethtool get_stats support (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement downshift configuration via phy-tunable (Petr Oros) [1816982] - [netdrv] net: phy: adin: implement PHY subsystem software reset (Petr Oros) [1816982] - [netdrv] net: phy: adin: add EEE translation layer from Clause 45 to Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support MDI/MDIX/Auto-MDI selection (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RMII fifo depth configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: make RGMII internal delays configurable (Petr Oros) [1816982] - [netdrv] net: phy: adin: configure RGMII/RMII/MII modes on config (Petr Oros) [1816982] - [netdrv] net: phy: adin: add {write,read}_mmd hooks (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for interrupts (Petr Oros) [1816982] - [netdrv] net: phy: adin: hook genphy_{suspend, resume} into the driver (Petr Oros) [1816982] - [netdrv] net: phy: adin: add support for Analog Devices PHYs (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for EEE registers on integrated PHY's (Petr Oros) [1816982] - [netdrv] net: phy: swphy: emulate register MII_ESTATUS (Petr Oros) [1816982] - [netdrv] net: phy: read MII_CTRL1000 in genphy_read_status only if needed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add NBase-T PHY auto-detection (Petr Oros) [1816982] - [netdrv] net: phy: let phy_speed_down/up support speeds >1Gbps (Petr Oros) [1816982] - [netdrv] net: phy: add phy_speed_down_core and phy_resolve_min_speed (Petr Oros) [1816982] - [netdrv] net: phy: add __set_linkmode_max_speed (Petr Oros) [1816982] - [netdrv] net: phy: realtek: add support for the 2.5Gbps PHY in RTL8125 (Petr Oros) [1816982] - [netdrv] net: phy: add phy_modify_paged_changed (Petr Oros) [1816982] - [netdrv] net: phy: prepare phylib to deal with PHY's extending Clause 22 (Petr Oros) [1816982] - [netdrv] net: phy: simplify genphy_config_advert by using the linkmode_adv_to_xxx_t functions (Petr Oros) [1816982] - [netdrv] net: phy: at803x: stop switching phy delay config needlessly (Petr Oros) [1816982] - [netdrv] net: mdio-octeon: Fix Kconfig warnings and build errors (Petr Oros) [1816982] - [netdrv] net: phy: xgene: use devm_platform_ioremap_resource() to simplify code (Petr Oros) [1816982] - [netdrv] net: phy: Add mdio-aspeed (Petr Oros) [1816982] - [netdrv] net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed() (Petr Oros) [1816982] - [netdrv] net: phylink: Fix flow control for fixed-link (Petr Oros) [1816982] - [netdrv] net: phylink: don't start and stop SGMII PHYs in SFP modules twice (Petr Oros) [1816982] - [netdrv] net: phy: Make use of linkmode_mod_bit helper (Petr Oros) [1816982] - [netdrv] net: stmmac: enable clause 45 mdio support (Petr Oros) [1816982] - [documentation] doc: phy: document some PHY_INTERFACE_MODE_xxx settings (Petr Oros) [1816982] - [netdrv] Revert "net: phylink: set the autoneg state in phylink_phy_change" (Petr Oros) [1816982] - [netdrv] net: phy: sfp: clean up a condition (Petr Oros) [1816982] - [netdrv] net: phylink: set the autoneg state in phylink_phy_change (Petr Oros) [1816982] - [netdrv] net: phy: Add more 1000BaseX support detection (Petr Oros) [1816982] - [netdrv] net: phy: broadcom: Add genphy_suspend and genphy_resume for BCM5464 (Petr Oros) [1816982] - [netdrv] net: sfp: add mutex to prevent concurrent state checks (Petr Oros) [1816982] - [netdrv] net: sfp: Stop SFP polling and interrupt handling during shutdown (Petr Oros) [1816982] - [netdrv] net: phy: Add detection of 1000BaseX link mode support (Petr Oros) [1816982] - [netdrv] net: phy: remove state PHY_FORCING (Petr Oros) [1816982] - [netdrv] net: phy: export phy_queue_state_machine (Petr Oros) [1816982] - [netdrv] net: phy: add callback for custom interrupt handler to struct phy_driver (Petr Oros) [1816982] - [netdrv] net: phy: enable interrupts when PHY is attached already (Petr Oros) [1816982] - [netdrv] net: phy: sfp: enable i2c-bus detection on ACPI based systems (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Switch to HWMON_CHANNEL_INFO() (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_{printk, err, warn, info, dbg} macros (Petr Oros) [1816982] - [netdrv] net: phylink: Add PHYLINK_DEV operation type (Petr Oros) [1816982] - [netdrv] net: phylink: Add struct phylink_config to PHYLINK API (Petr Oros) [1816982] - [netdrv] net: phylink: Add phylink_mac_link_{up, down} wrapper functions (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_standalone sysfs entry (Petr Oros) [1816982] - [netdrv] net: phy: Check against net_device being NULL (Petr Oros) [1816982] - [netdrv] net: phy: Guard against the presence of a netdev (Petr Oros) [1816982] - [netdrv] net: phy: Add phy_sysfs_create_links helper function (Petr Oros) [1816982] - [netdrv] net: sfp: remove sfp-bus use of netdevs (Petr Oros) [1816982] - [netdrv] net: sfp: add mandatory attach/detach methods for sfp buses (Petr Oros) [1816982] - [netdrv] net: phy: allow Clause 45 access via mii ioctl (Petr Oros) [1816982] - [netdrv] net: phylink: support for link gpio interrupt (Petr Oros) [1816982] - [netdrv] net: phylink: remove netdev from phylink mii ioctl emulation (Petr Oros) [1816982] - [netdrv] net: phy: bcm87xx: improve bcm87xx_config_init and feature detection (Petr Oros) [1816982] - [netdrv] net: phy: tja11xx: Add TJA11xx PHY driver (Petr Oros) [1816982] - [netdrv] net: phy: aquantia: add USXGMII support and warn if XGMII mode is set (Petr Oros) [1816982] - [documentation] dt-bindings: net: document new usxgmii phy mode (Petr Oros) [1816982] - [include] net: phy: add interface mode PHY_INTERFACE_MODE_USXGMII (Petr Oros) [1816982] - [netdrv] net: phy: lxt: Add suspend/resume support to LXT971 and LXT973 (Petr Oros) [1816982] - [netdrv] net: phy: Make phy_basic_t1_features use base100t1 (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Allocate state struct in probe (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Validate FIFO depth property (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: IO impedance is not dependent on RGMII delay (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Use unsigned variables to store unsigned properties (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Rework delay rgmii delay handling (Petr Oros) [1816982] - [netdrv] net: phy: dp83867: Add ability to disable output clock (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Add documentation for disabling clock output (Petr Oros) [1816982] - [documentation] dt-bindings: phy: dp83867: Describe how driver behaves w.r.t rgmii delay (Petr Oros) [1816982] - [documentation] Documentation: net: phy: switch documentation to rst format (Petr Oros) [1816982] - [of] of: mdio: Support fixed links in of_phy_get_and_connect() (Petr Oros) [1816982] - [documentation] doc: add phylink documentation to the networking book (Petr Oros) [1816982] - [include] net: phylink: update mac_config() documentation (Petr Oros) [1816982] - [tools] libbpf: use .so dynamic symbols for abi check (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Install generated test progs (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Fix memory leak caused by not freeing entry in unregister_ftrace_direct() (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support CO-RE relocations for LDX/ST/STX instructions (Yauheni Kaliuta) [1813370] - [include] bpf: Add bpf_jit_blinding_enabled for !CONFIG_BPF_JIT (Yauheni Kaliuta) [1813370] - [tools] tools, bpf_asm: Warn when jumps are out of range (Yauheni Kaliuta) [1813370] - [include] bpf: Add typecast to bpf helpers to help BTF generation (Yauheni Kaliuta) [1813370] - [trace] bpf: Add typecast to raw_tracepoints to help BTF generation (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix build on read-only filesystems (Yauheni Kaliuta) [1813370] - [tools] bpf: Add further test_verifier cases for record_func_key (Yauheni Kaliuta) [1813370] - [net] bpf: Fix record_func_key to perform backtracking on r3 (Yauheni Kaliuta) [1813370] - [net] bpf: Fix missing prog untrack in release_maps (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: fix syscall_tp due to unused syscall (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Replace symbol compare of trace_event (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test function_graph tracer and bpf trampoline together (Yauheni Kaliuta) [1813370] - [net] bpf: Make BPF trampoline use register_ftrace_direct() API (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add modify_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add information on number of page groups allocated (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Tell objtool to ignore nondeterministic ftrace stack layout (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add a counter to test function_graph with direct (Yauheni Kaliuta) [1813370] - [x86] ftrace/x86: Add register_ftrace_direct() for custom trampolines (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add another check for match in register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add ftrace_find_direct_func() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Add register_ftrace_direct() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out the copying of a ftrace_hash from __ftrace_hash_move() (Yauheni Kaliuta) [1813370] - [kernel] ftrace: Separate out functionality from ftrace_location_range() (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations, again (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a fexit/bpf2bpf test with target bpf prog no callees (Yauheni Kaliuta) [1813370] - [net] bpf: Fix a bug when getting subprog 0 jited image in check_attach_btf_id (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Bring back c++ include/link test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Don't hard-code root cgroup id (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix broken xdp_rxq_info due to map order assumptions (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing for Fedora (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix readelf output parsing on powerpc with recent binutils (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: correct perror strings (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: test_sockmap: handle file creation failures gracefully (Yauheni Kaliuta) [1813370] - [net] bpf: Fix build in minimal configurations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix up generation of bpf_helper_defs.h (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix global variable relocation (Yauheni Kaliuta) [1813370] - [net] bpf: Fix static checker warning (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix usage of u32 in userspace code (Yauheni Kaliuta) [1813370] - [net] bpf: Simplify __bpf_arch_text_poke poke type handling (Yauheni Kaliuta) [1813370] - [tools] bpf: Introduce BPF_TRACE_x helper for the tracing tests (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add various tail call test cases (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Emit patchable direct jump as tail call (Yauheni Kaliuta) [1813370] - [net] bpf: Constant map key tracking for prog array pokes (Yauheni Kaliuta) [1813370] - [net] bpf: Add poke dependency tracking for prog array maps (Yauheni Kaliuta) [1813370] - [include] bpf: Add initial poke descriptor table for jit images (Yauheni Kaliuta) [1813370] - [net] bpf: Move owner type, jited info into array auxiliary data (Yauheni Kaliuta) [1813370] - [net] bpf: Move bpf_free_used_maps into sleepable section (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Generalize and extend bpf_arch_text_poke for direct jumps (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF trampoline performance test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure core_reloc_kernel is reading test_progs's data only (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add verifier tests for better jmp32 register bounds (Yauheni Kaliuta) [1813370] - [net] bpf: Provide better register bounds after jmp32 instructions (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Integrate verbose verifier log into test_progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support initialized global variables (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Skip the build test if not in tree (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix various errors and warning reported by checkpatch.pl (Yauheni Kaliuta) [1813370] - [tools] selftests, bpftool: Set EXIT trap after usage function (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Ensure no DWARF relocations for BPF object files (Yauheni Kaliuta) [1813370] - [tools] tools, bpftool: Fix warning on ignored return value for 'read' (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map_{area_alloc, area_mmapable_alloc}() to u64 size (Yauheni Kaliuta) [1813370] - [net] bpf: Make array_map_mmap static (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce no-ALU32 for test_progs-no_alu32 (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove JITed image size limitations (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lg(f)rl when long displacement cannot be used (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use lgrl instead of lg where possible (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Load literal pool register using larl (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Align literal pool entries (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use relative long branches (Yauheni Kaliuta) [1813370] - [net] bpf: Fix memory leak on object 'data' (Yauheni Kaliuta) [1813370] - [tools] selftests, bpf: Workaround an alu32 sub-register spilling issue (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add BPF_TYPE_MAP_ARRAY mmap() tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Make global data internal arrays mmap()-able, if possible (Yauheni Kaliuta) [1813370] - [net] bpf: Add mmap() support for BPF_MAP_TYPE_ARRAY (Yauheni Kaliuta) [1813370] - [netdrv] bpf: Convert bpf_prog refcnt to atomic64_t (Yauheni Kaliuta) [1813370] - [netdrv] net: thunderx: set xdp_prog to NULL if bpf_prog_add fails (Yauheni Kaliuta) [1813370] - [net] bpf: Switch bpf_map ref counter to atomic64_t so bpf_map_inc() never fails (Yauheni Kaliuta) [1813370] - [lib] locking/atomic: Use s64 for atomic64 (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make conditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make unconditional inc/dec ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make test ops optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [powerpc] atomics/powerpc: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [lib] atomics/generic: Define atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics: Prepare for atomic64_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic_fetch_add_unless() optional (Yauheni Kaliuta) [1813370] - [include] atomics/treewide: Make atomic64_inc_not_zero() optional (Yauheni Kaliuta) [1813370] - [include] atomics: Make conditional ops return 'bool' (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Remove atomic_inc_not_zero_hint() (Yauheni Kaliuta) [1813370] - [net] atomics/treewide: Rename __atomic_add_unless() => atomic_fetch_add_unless() (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add a test for attaching BPF prog to another BPF prog and subprog (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Extend test_pkt_access test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for attaching BPF programs to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Support attaching tracing BPF program to other BPF programs (Yauheni Kaliuta) [1813370] - [net] bpf: Compare BTF types of functions arguments with actual types (Yauheni Kaliuta) [1813370] - [net] bpf: Annotate context types (Yauheni Kaliuta) [1813370] - [net] bpf: Fix race in btf_resolve_helper_id() (Yauheni Kaliuta) [1813370] - [x86] bpf: Reserve space for BPF trampoline in BPF programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add stress test for maximum number of progs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add combined fentry/fexit test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add fexit tests for BPF trampoline (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add test for BPF trampoline (Yauheni Kaliuta) [1813370] - [net] bpf: Add kernel test functions for fentry testing (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Simple test for fentry/fexit (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support to attach to fentry/fexit tracing progs (Yauheni Kaliuta) [1813370] - [tools] libbpf: Introduce btf__find_by_name_kind() (Yauheni Kaliuta) [1813370] - [net] bpf: Introduce BPF trampoline (Yauheni Kaliuta) [1813370] - [x86] bpf: Add bpf_arch_text_poke() helper (Yauheni Kaliuta) [1813370] - [x86] bpf: Refactor x86 JIT into helpers (Yauheni Kaliuta) [1813370] - [documentation] bpf, doc: Change right arguments for JIT example code (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add missing option to xdpsock usage (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Remove duplicate option from xdpsock (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Make sure JIT passes do not increase code size (Yauheni Kaliuta) [1813370] - [net] bpf: Support doubleword alignment in bpf_jit_binary_alloc (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: adjust Makefile and README.rst (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add missing object file to TEST_FILES (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Workaround a verifier failure for test_progs (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use Rx-only and Tx-only sockets in xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Allow for creating Rx or Tx only AF_XDP sockets (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add XDP_SHARED_UMEM support to xdpsock (Yauheni Kaliuta) [1813370] - [tools] libbpf: Support XDP_SHARED_UMEM with external XDP program (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add tests for automatic map unpinning on load failure (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: update map definition to new syntax BTF-defined map (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Update outdated error message (Yauheni Kaliuta) [1813370] - [tools] bpf: Add cb access in kfree_skb test (Yauheni Kaliuta) [1813370] - [net] bpf: Add array support to btf_struct_access (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Remove unused SEEN_RET0, SEEN_REG_AX and ret0_ip (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Wrap JIT macro parameter usages in parentheses (Yauheni Kaliuta) [1813370] - [s390] s390/bpf: Use kvcalloc for addrs array (Yauheni Kaliuta) [1813370] - [net] bpf: Account for insn->off when doing bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [tools] libbpf: Simplify BPF_CORE_READ_BITFIELD_PROBED usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bps: Clean up removed ints relocations negative tests (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: log direct file writes (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add field size relocation tests (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Add relocatable bitfield reading tests (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for field size relocations (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for relocatable bitfields (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove too strict field offset relo test cases (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Add selftest to read/write sockaddr from user space (Yauheni Kaliuta) [1813370] - [tools] bpf, testing: Convert prog tests to probe_read_{user, kernel}{, _str} helper (Yauheni Kaliuta) [1813370] - [samples] bpf, samples: Use bpf_probe_read_user where appropriate (Yauheni Kaliuta) [1813370] - [net] bpf: Switch BPF probe insns to bpf_probe_read_kernel (Yauheni Kaliuta) [1813370] - [kernel] bpf: Add probe_read_{user, kernel} and probe_read_{user, kernel}_str helpers (Yauheni Kaliuta) [1813370] - [kernel] bpf: Make use of probe_user_write in probe write helper (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add strict non-pagefault kernel-space read function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space write function (Yauheni Kaliuta) [1813370] - [mm] uaccess: Add non-pagefault user-space read functions (Yauheni Kaliuta) [1813370] - [tools] selftests: Add tests for automatic map pinning (Yauheni Kaliuta) [1813370] - [net] bpf: Implement map_gen_lookup() callback for XSKMAP (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add support for prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Replace prog_raw_tp+btf_id with prog_tracing (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf jit kallsym access (Yauheni Kaliuta) [1813370] - [documentation] bpf: Add s390 testing documentation (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Test narrow load from bpf_sysctl.write (Yauheni Kaliuta) [1813370] - [net] bpf: Enforce 'return 0' in BTF-enabled raw_tp programs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore $(OUTPUT)/test_stub.o rule (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Use -m{little, big}-endian for clang (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix .gitignore to ignore no_alu32/ (Yauheni Kaliuta) [1813370] - [net] bpf: Prepare btf_ctx_access for non raw_tp use case (Yauheni Kaliuta) [1813370] - [tools] libbpf: Fix strncat bounds error in libbpf_prog_type_by_name (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix LDLIBS order (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_section_names into test_progs and fix it (Yauheni Kaliuta) [1813370] - [tools] tools/bpf: Turn on llvm alu32 attribute by default (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Get rid of a bunch of explicit BPF program type setting (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make reference_tracking test use subtests (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Make a copy of subtest name (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add uprobe/uretprobe and tp/raw_tp section suffixes (Yauheni Kaliuta) [1813370] - [tools] bpf, libbpf: Add kernel version section parsing back (Yauheni Kaliuta) [1813370] - [kernel] bpf: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1813370] - [net] bpf: Fix bpf_attr.attach_btf_id check (Yauheni Kaliuta) [1813370] - [tools] selftest/bpf: Remove test_libbpf.sh and test_libbpf_open (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Move test_queue_stack_map.h into progs/ where it belongs (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Replace test_progs and test_maps w/ general rule (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add simple per-test targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Switch test_maps to test_progs' test.h format (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Teach test_progs to cd into subdir (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Restore the netns after flow dissector reattach test (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add kfree_skb raw_tp test (Yauheni Kaliuta) [1813370] - [net] bpf: Check types of arguments passed into helpers (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to x86 JIT (Yauheni Kaliuta) [1813370] - [net] bpf: Add support for BTF pointers to interpreter (Yauheni Kaliuta) [1813370] - [net] bpf: Attach raw_tp program with BTF via type name (Yauheni Kaliuta) [1813370] - [net] bpf: Implement accurate raw_tp context access via BTF (Yauheni Kaliuta) [1813370] - [tools] libbpf: Auto-detect btf_id of BTF-based raw_tracepoints (Yauheni Kaliuta) [1813370] - [net] bpf: Add attach_btf_id attribute to program load (Yauheni Kaliuta) [1813370] - [net] bpf: Process in-kernel BTF (Yauheni Kaliuta) [1813370] - [tools] selftests: bpf: Add selftest for __sk_buff tstamp (Yauheni Kaliuta) [1813370] - [net] bpf: Allow __sk_buff tstamp in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Remove obsolete pahole/BTF support detection (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Enforce libbpf build before BPF programs are built (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add preparation steps and sysroot info to readme (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add sysroot support (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Provide C/LDFLAGS to libbpf (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add C/LDFLAGS to libbpf.so and test_libpf targets (Yauheni Kaliuta) [1813370] - [tools] libbpf: Don't use cxx to test_libpf target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use target CC environment for HDR_PROBE (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own flags but not HOSTCFLAGS (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Base target programs rules on Makefile.target (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Add makefile.target for separate CC target build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Drop unnecessarily inclusion for bpf_load (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use __LINUX_ARM_ARCH__ selector for arm (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use own EXTRA_CFLAGS for clang commands (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Use --target from cross-compile (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix cookie_uid_helper_example obj build (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Fix HDR_PROBE "echo" (Yauheni Kaliuta) [1813370] - [tools] libbpf: Handle invalid typedef emitted by old GCC (Yauheni Kaliuta) [1813370] - [tools] libbpf: Generate more efficient BPF_CORE_READ code (Yauheni Kaliuta) [1813370] - [net] bpf: Fix cast to pointer from integer of different size warning (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Check that flow dissector can be re-attached (Yauheni Kaliuta) [1813370] - [net] flow_dissector: Allow updating the flow dissector program atomically (Yauheni Kaliuta) [1813370] - [include] bpf: Align struct bpf_prog_stats (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add read-only map values propagation tests (Yauheni Kaliuta) [1813370] - [net] bpf: Track contents of read-only maps as scalars (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Convert test_btf_dump into test_progs test (Yauheni Kaliuta) [1813370] - [samples] samples: bpf: Add max_pckt_size option at xdp_adjust_tail (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: add test for BPF flow dissector in the root namespace (Yauheni Kaliuta) [1813370] - [net] bpf/flow_dissector: add mode to enforce global BPF flow dissector (Yauheni Kaliuta) [1813370] - [samples] samples/bpf: Trivial - fix spelling mistake in usage (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Fix dependency ordering for attach_probe test (Yauheni Kaliuta) [1813370] - [tools] libbpf: Add cscope and tags targets to Makefile (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: switch tests to new bpf_object__open_{file, mem}() APIs (Yauheni Kaliuta) [1813370] - [tools] bpf: Add loop test case with 32 bit reg comparison against 0 (Yauheni Kaliuta) [1813370] - [x86] bpf, x86: Small optimization in comparing against imm0 (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Correct path to include msg + path (Yauheni Kaliuta) [1813370] - [tools] selftests/bpf: Add static to enable_all_controllers() (Yauheni Kaliuta) [1813370] - [tools] libbpf: provide backported RHEL symbols as upstream aliases (Yauheni Kaliuta) [1813370] - [tools] libbpf: Bump current version to v0.0.6 (Yauheni Kaliuta) [1813370] - [tools] libbpf: bump up version, 0.0.5 (Yauheni Kaliuta) [1813370] - [net] cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled (Yauheni Kaliuta) [1823623 1813370] - [vfio] vfio-pci: Mask cap zero (Alex Williamson) [1840248] - [vfio] spapr_tce: Fix incorrect tce_iommu_group memory free (David Gibson) [1832386] - [fs] CIFS: fiemap: do not return EINVAL if get nothing (Leif Sahlberg) [1837180] - [fs] CIFS: Increment num_remote_opens stats counter even in case of smb2_query_dir_first (Leif Sahlberg) [1837180] - [fs] cifs: potential unintitliazed error code in cifs_getattr() (Leif Sahlberg) [1837180] - [fs] cifs: Use #define in cifs_dbg (Leif Sahlberg) [1837180] - [fs] cifs: fix rename() by ensuring source handle opened with DELETE bit (Leif Sahlberg) [1837180] - [fs] cifs: add missing mount option to /proc/mounts (Leif Sahlberg) [1837180] - [fs] cifs: fix potential mismatch of UNC paths (Leif Sahlberg) [1837180] - [fs] cifs: enable change notification for SMB2.1 dialect (Leif Sahlberg) [1837180] - [fs] cifs: Fix mode output in debugging statements (Leif Sahlberg) [1837180] - [fs] cifs: fix mount option display for sec=krb5i (Leif Sahlberg) [1837180] - [fs] smb3: Add defines for new information level, FileIdInformation (Leif Sahlberg) [1837180] - [fs] smb3: print warning once if posix context returned on open (Leif Sahlberg) [1837180] - [fs] smb3: add one more dynamic tracepoint missing from strict fsync path (Leif Sahlberg) [1837180] - [fs] cifs: fix mode bits from dir listing when mounted with modefromsid (Leif Sahlberg) [1837180] - [fs] cifs: fix channel signing (Leif Sahlberg) [1837180] - [fs] cifs: add SMB3 change notification support (Leif Sahlberg) [1837180] - [fs] cifs: make multichannel warning more visible (Leif Sahlberg) [1837180] - [fs] cifs: Add tracepoints for errors on flush or fsync (Leif Sahlberg) [1837180] - [fs] cifs: log warning message (once) if out of disk space (Leif Sahlberg) [1837180] - [fs] smb3: fix problem with null cifs super block with previous patch (Leif Sahlberg) [1837180] - [fs] SMB3: Backup intent flag missing from some more ops (Leif Sahlberg) [1837180] - [fs] cifs: update internal module version number (Leif Sahlberg) [1837180] - [fs] CIFS: Fix task struct use-after-free on reconnect (Leif Sahlberg) [1837180] - [fs] cifs: use PTR_ERR_OR_ZERO() to simplify code (Leif Sahlberg) [1837180] - [fs] cifs: add support for fallocate mode 0 for non-sparse files (Leif Sahlberg) [1837180] - [fs] CIFS: Add support for setting owner info, dos attributes, and create time (Leif Sahlberg) [1837180] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1837180] - [fs] cifs: fix unitialized variable poential problem with network I/O cache lock patch (Leif Sahlberg) [1837180] - [fs] cifs: Fix return value in __update_cache_entry (Leif Sahlberg) [1837180] - [fs] cifs: Avoid doing network I/O while holding cache lock (Leif Sahlberg) [1837180] - [fs] cifs: Fix potential deadlock when updating vol in cifs_reconnect() (Leif Sahlberg) [1837180] - [fs] cifs: Merge is_path_valid() into get_normalized_path() (Leif Sahlberg) [1837180] - [fs] cifs: Introduce helpers for finding TCP connection (Leif Sahlberg) [1837180] - [fs] cifs: Get rid of kstrdup_const()'d paths (Leif Sahlberg) [1837180] - [fs] cifs: Clean up DFS referral cache (Leif Sahlberg) [1837180] - [fs] cifs: Don't use iov_iter::type directly (Leif Sahlberg) [1837180] - [fs] cifs: set correct max-buffer-size for smb2_ioctl_init() (Leif Sahlberg) [1837180] - [fs] fs/cifs/cifssmb.c: use true, false for bool variable (Leif Sahlberg) [1837180] - [fs] fs/cifs/smb2ops.c: use true, false for bool variable (Leif Sahlberg) [1837180]- [lib] XArray: Optimise xas_sibling() if !CONFIG_XARRAY_MULTI (Don Dutile) [1840916] - [include] XArray: Fix incorrect comment in header file (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause for large multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_next for large multi-index entries (Don Dutile) [1840916] - [lib] XArray tests: Add check_insert (Don Dutile) [1840916] - [documentation] XArray: Add xa_for_each_range (Don Dutile) [1840916] - [documentation] XArray: Improve documentation of search marks (Don Dutile) [1840916] - [documentation] docs: remove :c:func: annotations from xarray.rst (Don Dutile) [1840916] - [lib] XArray: Fix xas_find returning too many entries (Don Dutile) [1840916] - [lib] XArray: Fix xa_find_after with multi-index entries (Don Dutile) [1840916] - [lib] XArray: Fix infinite loop with entry at ULONG_MAX (Don Dutile) [1840916] - [include] XArray: Add wrappers for nested spinlocks (Don Dutile) [1840916] - [lib] XArray: Fix xas_pause at ULONG_MAX (Don Dutile) [1840916] - [include] xarray.h: fix kernel-doc warning (Don Dutile) [1840916] - [lib] XArray: Fix xas_next() with a single entry at 0 (Don Dutile) [1840916] - [fs] mm: fix page cache convergence regression (Don Dutile) [1840916] - [netdrv] ionic: call ionic_port_init after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: leave netdev mac alone after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: add device reset to fw upgrade down (Jonathan Toppins) [1830969] - [netdrv] ionic: refresh devinfo after fw-upgrade (Jonathan Toppins) [1830969] - [netdrv] ionic: no link check until after probe (Jonathan Toppins) [1830969] - [netdrv] phy: avoid unnecessary link-up delay in polling mode (Petr Oros) [1785663] - [x86] x86: Select HARDIRQS_SW_RESEND on x86 (David Arcari) [1840433] - [pci] PCI/AER: Fix the broken interrupt injection (David Arcari) [1840433] - [kernel] genirq: Provide interrupt injection mechanism (David Arcari) [1840433] - [kernel] genirq: Sanitize state handling in check_irq_resend() (David Arcari) [1840433] - [kernel] genirq: Add return value to check_irq_resend() (David Arcari) [1840433] - [x86] x86/apic/vector: Force interupt handler invocation to irq context (David Arcari) [1840433] - [kernel] genirq: Add protection against unsafe usage of generic_handle_irq() (David Arcari) [1840433] - [kernel] genirq/debugfs: Add missing sanity checks to interrupt injection (David Arcari) [1840433] - [include] genirq/irqdomain: Make sure all irq domain flags are distinct (David Arcari) [1840433] - [x86] x86/apic/msi: Plug non-maskable MSI affinity race (David Arcari) [1840433] - [char] char: ipmi: convert to use i2c_new_client_device() (Tony Camuso) [1832408] - [char] ipmi: kcs: Fix aspeed_kcs_probe_of_v1() (Tony Camuso) [1832408] - [char] ipmi: Add missing annotation for ipmi_ssif_lock_cond() and ipmi_ssif_unlock_cond() (Tony Camuso) [1832408] - [char] ipmi: kcs: aspeed: Implement v2 bindings (Tony Camuso) [1832408] - [char] ipmi: kcs: Finish configuring ASPEED KCS device before enable (Tony Camuso) [1832408] - [char] ipmi: fix hung processes in __get_guid() (Tony Camuso) [1832408] - [char] drivers: char: ipmi: ipmi_msghandler: Pass lockdep expression to RCU lists (Tony Camuso) [1832408] - [char] ipmi_si: Avoid spurious errors for optional IRQs (Tony Camuso) [1832408] - [base] driver core: platform: Export platform_get_irq_optional() (Tony Camuso) [1832408] - [base] driver core: platform: Introduce platform_get_irq_optional() (Tony Camuso) [1832408] - [x86] x86/efi: Update e820 with reserved EFI boot services data to fix kexec breakage (Kairui Song) [1779544] - [powerpc] powerpc/nvdimm: use H_SCM_QUERY hcall on H_OVERLAP error (Pingfan Liu) [1792125] - [powerpc] powerpc/nvdimm: Use HCALL error as the return value (Pingfan Liu) [1792125] - [scsi] scsi: sd: Signal drive managed SMR disks (Ewan Milne) [1838784] - [scsi] scsi: core: free sgtables in case command setup fails (Ewan Milne) [1838784] - [scsi] scsi: core: Allow the state change from SDEV_QUIESCE to SDEV_BLOCK (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_write (Ewan Milne) [1838784] - [scsi] scsi: sg: add sg_remove_request in sg_common_write (Ewan Milne) [1838784] - [scsi] scsi: sd: Fix optimal I/O size for devices that change reported values (Ewan Milne) [1838784] - [scsi] scsi: move scsicam_bios_param to the end of scsicam.c (Ewan Milne) [1838784] - [scsi] scsi: simplify scsi_bios_ptable (Ewan Milne) [1838784] - [scsi] scsi: core: Use scnprintf() for avoiding potential buffer overflow (Ewan Milne) [1838784] - [scsi] scsi: core: avoid repetitive logging of device offline messages (Ewan Milne) [1838784] - [scsi] scsi: core: use kobj_to_dev (Ewan Milne) [1838784] - [scsi] scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI (Ewan Milne) [1838784] - [scsi] scsi: core: Fix a compiler warning triggered by the SCSI logging code (Ewan Milne) [1838784] - [scsi] scsi: core: Adjust DBD setting in MODE SENSE for caching mode page per LLD (Ewan Milne) [1838784] - [scsi] scsi: sd_zbc: Improve report zones error printout (Ewan Milne) [1838784] - [scsi] scsi: scsi_transport_sas: Fix memory leak when removing devices (Ewan Milne) [1838784] - [scsi] scsi: scsi_debug: num_tgts must be >= 0 (Ewan Milne) [1838784] - [scsi] scsi: core: Handle drivers which set sg_tablesize to zero (Ewan Milne) [1838784] - [scsi] scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and WRITE(6) (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): get rid of access_ok() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): get rid of access_ok()/__copy_from_user()/__get_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_read(): get rid of access_ok()/__copy_..._user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): don't bother with access_ok (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_write(): __get_user() can fail.. (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_new_write(): replace access_ok() + __copy_from_user() with copy_from_user() (Ewan Milne) [1838784] - [scsi] scsi: sg: sg_ioctl(): fix copyout handling (Ewan Milne) [1838784] - [scsi] scsi: core: scsi_trace: Use get_unaligned_be*() (Ewan Milne) [1838784] - [scsi] drivers/scsi: Replace rcu_swap_protected() with rcu_replace_pointer() (Ewan Milne) [1838784] - [scsi] scsi: sd: define variable dif as unsigned int instead of bool (Ewan Milne) [1838784] - [scsi] scsi: core: try to get module before removing device (Ewan Milne) [1838784] - [scsi] scsi: scsi_dh_alua: handle RTPG sense code correctly during state transitions (Ewan Milne) [1838784] - [powerpc] powerpc/64: flush_inval_dcache_range() becomes flush_dcache_range() (Gustavo Duarte) [1834180] - [x86] x86/ima: use correct identifier for SetupMode variable (Diego Domingos) [1781925] - [lib] kobject: fix dereference before null check on kobj (Diego Domingos) [1781925] - [include] MODSIGN: make new include file self contained (Diego Domingos) [1781925] - [security] ima: initialize the "template" field with the default template (Diego Domingos) [1781925] - [x86] x86/ima: Check EFI_RUNTIME_SERVICES before using (Diego Domingos) [1781925] - [x86] x86/ima: check EFI SetupMode too (Diego Domingos) [1781925] - [security] ima: Set file->f_mode instead of file->f_flags in ima_calc_file_hash() (Diego Domingos) [1781925] - [security] evm: check hash algorithm passed to init_desc() (Diego Domingos) [1781925] - [base] firmware: improve LSM/IMA security behaviour (Diego Domingos) [1781925] - [lib] kobject: Add support for default attribute groups to kobj_type (Diego Domingos) [1781925] - [samples] samples/kobject: Replace foo_ktype's default_attrs field with groups (Diego Domingos) [1781925] - [x86] x86/ima: require signed kernel modules (Diego Domingos) [1781925] - [security] powerpc: Load firmware trusted keys/hashes into kernel keyring (Diego Domingos) [1781925] - [powerpc] powerpc: expose secure variables to userspace via sysfs (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Add OPAL API interface to access secure variable (Diego Domingos) [1781925] - [powerpc] powerpc/ima: fix secure boot rules in ima arch policy (Diego Domingos) [1781925] - [security] ima: Set again build_ima_appraise variable (Diego Domingos) [1781925] - [security] ima: Remove redundant policy rule set in add_rules() (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Indicate kernel modules appended signatures are enforced (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Update ima arch policy to check for blacklist (Diego Domingos) [1781925] - [security] ima: Check against blacklisted hashes for files with modsig (Diego Domingos) [1781925] - [security] ima: prevent a file already mmap'ed write to be mmap'ed execute (Diego Domingos) [1781925] - [certs] certs: Add wrapper function to check blacklisted binary hash (Diego Domingos) [1781925] - [security] ima: Make process_buffer_measurement() generic (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Define trusted boot policy (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the trusted boot state of the system (Diego Domingos) [1781925] - [powerpc] powerpc/ima: Add support to initialize ima policy rules (Diego Domingos) [1781925] - [powerpc] powerpc: Detect the secure boot mode of the system (Diego Domingos) [1781925] - [security] ima: use struct_size() in kzalloc() (Diego Domingos) [1781925] - [tools] sefltest/ima: support appended signatures (modsig) (Diego Domingos) [1781925] - [security] ima: Fix use after free in ima_read_modsig() (Diego Domingos) [1781925] - [security] ima: fix freeing ongoing ahash_request (Diego Domingos) [1781925] - [security] ima: always return negative code for error (Diego Domingos) [1781925] - [security] ima: Store the measurement again when appraising a modsig (Diego Domingos) [1781925] - [security] ima: Define ima-modsig template (Diego Domingos) [1781925] - [security] ima: Collect modsig (Diego Domingos) [1781925] - [security] ima: Implement support for module-style appended signatures (Diego Domingos) [1781925] - [security] ima: Factor xattr_verify() out of ima_appraise_measurement() (Diego Domingos) [1781925] - [security] integrity: Introduce struct evm_xattr (Diego Domingos) [1781925] - [security] ima: Add modsig appraise_type option for module-style appended signatures (Diego Domingos) [1781925] - [kernel] MODSIGN: Export module signature definitions (Diego Domingos) [1781925] - [kernel] modsign: log module name in the event of an error (Diego Domingos) [1781925] - [kernel] KEXEC: Call ima_kexec_cmdline to measure the boot command line args (Diego Domingos) [1781925] - [security] IMA: Define a new template field buf (Diego Domingos) [1781925] - [security] IMA: Define a new hook to measure the kexec boot command line arguments (Diego Domingos) [1781925] - [security] IMA: support for per policy rule template formats (Diego Domingos) [1781925] - [security] integrity: Fix __integrity_init_keyring() section mismatch (Diego Domingos) [1781925] - [security] x86/ima: fix the Kconfig dependency for IMA_ARCH_POLICY (Diego Domingos) [1781925] - [security] ima: Make arch_policy_entry static (Diego Domingos) [1781925] - [security] ima: show rules with IMA_INMASK correctly (Diego Domingos) [1781925] - [security] ima: fix wrong signed policy requirement when not appraising (Diego Domingos) [1781925] - [tools] selftests/kexec: update get_secureboot_mode (Diego Domingos) [1781925] - [tools] selftests/kexec: make kexec_load test independent of IMA being enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: check kexec_load and kexec_file_load are enabled (Diego Domingos) [1781925] - [tools] selftests/kexec: Add missing '=y' to config options (Diego Domingos) [1781925] - [tools] selftests/kexec: kexec_file_load syscall test (Diego Domingos) [1781925] - [tools] selftests/kexec: define "require_root_privileges" (Diego Domingos) [1781925] - [tools] selftests/kexec: define common logging functions (Diego Domingos) [1781925] - [tools] selftests/kexec: define a set of common functions (Diego Domingos) [1781925] - [tools] selftests/kexec: cleanup the kexec selftest (Diego Domingos) [1781925] - [tools] selftests/kexec: move the IMA kexec_load selftest to selftests/kexec (Diego Domingos) [1781925] - [security] evm: remove set but not used variable 'xattr' (Diego Domingos) [1781925] - [security] security: integrity: partial revert of make ima_main explicitly non-modular (Diego Domingos) [1781925] - [security] ima: cleanup the match_token policy code (Diego Domingos) [1781925] - [security] ima: Use inode_is_open_for_write (Diego Domingos) [1781925] - [security] security: fs: make inode explicitly non-modular (Diego Domingos) [1781925] - [security] security: audit and remove any unnecessary uses of module.h (Diego Domingos) [1781925] - [security] security: integrity: make evm_main explicitly non-modular (Diego Domingos) [1781925] - [security] security: integrity: make ima_main explicitly non-modular (Diego Domingos) [1781925] - [tools] selftests/ima: kexec_load syscall test (Diego Domingos) [1781925] - [security] ima: don't measure/appraise files on efivarfs (Diego Domingos) [1781925] - [x86] x86/ima: retry detecting secure boot mode (Diego Domingos) [1781925] - [x86] x86/ima: define arch_get_ima_policy() for x86 (Diego Domingos) [1781925] - [kernel] kernel/kexec_file.c: remove some duplicated includes (Diego Domingos) [1781925] - [security] ima: open a new file instance if no read permissions (Diego Domingos) [1781925] - [security] security/integrity: constify some read-only data (Diego Domingos) [1781925] - [documentation] security: fix LSM description location (Diego Domingos) [1781925] - [security] evm: Allow non-SHA1 digital signatures (Diego Domingos) [1781925] - [security] security: export security_kernel_load_data function (Diego Domingos) [1781925] - [security] ima: based on policy warn about loading firmware (pre-allocated buffer) (Diego Domingos) [1781925] - [security] ima: prevent kexec_load syscall based on runtime secureboot flag (Diego Domingos) [1781925] - [security] module: replace the existing LSM hook in init_module (Diego Domingos) [1781925] - [security] ima: based on policy require signed firmware (sysfs fallback) (Diego Domingos) [1781925] - [security] ima: add support for arch specific policies (Diego Domingos) [1781925] - [security] ima: based on policy require signed kexec kernel images (Diego Domingos) [1781925] - [security] ima: refactor ima_init_policy() (Diego Domingos) [1781925] - [include] sysfs: Fixes __BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [include] security: define new LSM hook named security_kernel_load_data (Diego Domingos) [1781925] - [kernel] kexec: add call to LSM hook in original kexec_load syscall (Diego Domingos) [1781925] - [base] firmware: add call to LSM hook before firmware sysfs fallback (Diego Domingos) [1781925] - [security] ima: add build time policy (Diego Domingos) [1781925] - [security] ima: Support platform keyring for kernel appraisal (Diego Domingos) [1781925] - [security] integrity: Remove references to module keyring (Diego Domingos) [1781925] - [powerpc] powerpc/kexec: Fix loading of kernel + initramfs with kexec_file_load() (Diego Domingos) [1781925] - [security] ima: Use designated initializers for struct ima_event_data (Diego Domingos) [1781925] - [security] ima: Update MAX_TEMPLATE_NAME_LEN to fit largest reasonable definition (Diego Domingos) [1781925] - [certs] PKCS#7: Refactor verify_pkcs7_signature() (Diego Domingos) [1781925] - [crypto] PKCS#7: Introduce pkcs7_get_digest() (Diego Domingos) [1781925] - [security] integrity: Select CONFIG_KEYS instead of depending on it (Diego Domingos) [1781925] - [powerpc] powerpc/powernv: Move opal_power_control_init() call in opal_init() (Diego Domingos) [1781925] - [security] x86/efi: move common keyring handler functions to new file (Diego Domingos) [1781925] - [security] x86/efi: remove unused variables (Diego Domingos) [1781925] - [include] sysfs: add BIN_ATTR_WO() macro (Diego Domingos) [1781925] - [x86] x86/ima: define arch_ima_get_secureboot (Diego Domingos) [1781925] - [powerpc] powerpc/pci: unmap legacy INTx interrupts of passthrough IO adapters (Steve Best) [1840279] - [powerpc] powerpc/xive: Clear the page tables for the ESB IO mapping (Steve Best) [1840279] - [hv] hyper-v: Use UUID API for exporting the GUID (Mohammed Gamal) [1828451 1815498] - [kernel] uuid: Add inline helpers to import / export UUIDs (Mohammed Gamal) [1828451 1815498] - [hv] hv: Move AEOI determination to architecture dependent code (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash data in die() when panic_on_oops is set (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Report crash register data when sysctl_record_panic_msg is not set (Mohammed Gamal) [1828451 1815498] - [x86] hyper-v: Report crash register data or kmsg before running crash kernel (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Trigger crash enlightenment only once during system crash (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Free hv_panic_page when fail to register kmsg dump (Mohammed Gamal) [1828451 1815498] - [hv] x86/hyper-v: Unload vmbus channel in hv panic callback (Mohammed Gamal) [1828451 1815498] - [hv] hv_debugfs: Make hv_debug_root static (Mohammed Gamal) [1828451 1815498] - [hv] hyperv_vmbus.h: Replace zero-length array with flexible-array member (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Ignore CHANNELMSG_TL_CONNECT_RESULT(23) (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: Balloon up according to request page number (Mohammed Gamal) [1828451 1815498] - [hv] hv_balloon: use generic_online_page() (Mohammed Gamal) [1828451 1815498] - [mm] memory_hotplug: export generic_online_page() (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Fix crash handler reset of Hyper-V synic (Mohammed Gamal) [1828451 1815498] - [hv] hv: Replace binary semaphore with mutex (Mohammed Gamal) [1828451 1815498] - [hv] hv: balloon: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Remove dependencies on guest page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: util: Specify ring buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: Specify receive buffer size using Hyper-V page size (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Add module parameter to cap the VMBus version (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Enable VMBus protocol versions 4.1, 5.1 and 5.2 (Mohammed Gamal) [1828451 1815498] - [hv] hv: vmbus: Introduce table of VMBus protocol versions (Mohammed Gamal) [1828451 1815498] - [pci] hv: Replace zero-length array with flexible-array member (Mohammed Gamal) [1793636] - [pci] hv: Decouple the func definition in hv_dr_state from VSP message (Mohammed Gamal) [1793636] - [pci] hv: Add support for protocol 1.3 and support PCI_BUS_RELATIONS2 (Mohammed Gamal) [1793636] - [pci] hv: Add missing kfree(hbus) in hv_pci_probe()'s error handling path (Mohammed Gamal) [1793636] - [pci] hv: Remove unnecessary type casting from kzalloc (Mohammed Gamal) [1793636] - [pci] hv: Avoid a kmemleak false positive caused by the hbus buffer (Mohammed Gamal) [1793636] - [infiniband] RDMA/srpt: Fix disabling device management (Kamal Heib) [1840016] - [misc] vhost: disable for OABI (Jason Wang) [1771441] - [include] virtio: drop vringh.h dependency (Jason Wang) [1771441] - [virtio] virtio_input: pull in slab.h (Jason Wang) [1771441] - [char] virtio-rng: pull in slab.h (Jason Wang) [1771441] - [block] virtio_blk: add a missing include (Jason Wang) [1771441] - [vdpa] vdpa: fix comment of vdpa_register_device() (Jason Wang) [1771441] - [vhost] vdpa: make vhost, virtio depend on menu (Jason Wang) [1771441] - [include] vdpa: allow a 32 bit vq alignment (Jason Wang) [1771441] - [vdpa] vdpasim: Return status in vdpasim_get_status (Jason Wang) [1771441] - [vdpa] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm' (Jason Wang) [1771441] - [vdpa] vdpa-sim: depend on HAS_DMA (Jason Wang) [1771441] - [virtio] vdpa: move to drivers/vdpa (Jason Wang) [1771441] - [virtio] virtio: Intel IFC VF driver for VDPA (Jason Wang) [1771441] - [virtio] vdpasim: vDPA device simulator (Jason Wang) [1771441] - [vhost] vhost: introduce vDPA-based backend (Jason Wang) [1771441] - [virtio] virtio: introduce a vDPA based transport (Jason Wang) [1771441] - [virtio] vDPA: introduce vDPA bus (Jason Wang) [1771441] - [vhost] vringh: IOTLB support (Jason Wang) [1771441] - [vhost] vhost: factor out IOTLB (Jason Wang) [1771441] - [vhost] vhost: allow per device message handler (Jason Wang) [1771441] - [misc] vhost: refine vhost and vringh kconfig (Jason Wang) [1771441] - [vhost] vringh: fix copy direction of vringh_iov_push_kern() (Jason Wang) [1771441] - [vhost] vhost: factor out setting vring addr and num (Jason Wang) [1771441] - [vhost] vhost: introduce helpers to get the size of metadata area (Jason Wang) [1771441] - [vhost] vhost: rename vq_iotlb_prefetch() to vq_meta_prefetch() (Jason Wang) [1771441] - [vhost] vhost: fine grain userspace memory accessors (Jason Wang) [1771441] - [vhost] vhost: generalize adding used elem (Jason Wang) [1771441] - [misc] mic: vop: Allow building on more systems (Jason Wang) [1771441] - [virtio] virtio: support VIRTIO_F_ORDER_PLATFORM (Jason Wang) [1771441] - [uapi] vhost: split structs into a separate header file (Jason Wang) [1771441] - [fs] compat_ioctl: add compat_ptr_ioctl() (Jason Wang) [1771441] - [vhost] vhost: allow vhost-scsi driver to be built-in (Jason Wang) [1771441] - [x86] arch/x86: Remove vendor specific CPU ID checks (Prarit Bhargava) [1840145] - [tools] perf vendor events amd: Update Zen1 events to V2 (Wei Huang) [1790641] - [tools] perf vendor events amd: Add Zen2 events (Wei Huang) [1790641] - [tools] perf vendor events amd: Restrict model detection for zen1 based processors (Wei Huang) [1790641] - [x86] perf/amd/uncore: Add support for Family 19h L3 PMU (Wei Huang) [1790641] - [x86] perf/amd/uncore: Make L3 thread mask code more readable (Wei Huang) [1790641] - [x86] perf/amd/uncore: Prepare L3 thread mask code for Family 19h (Wei Huang) [1790641] - [scsi] scsi: fnic: Use scnprintf() for avoiding potential buffer overflow (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: do not queue commands during fwreset (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix invalid stack access (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: fix use after free (Govindarajulu Varadarajan) [1797808] - [scsi] scsi: fnic: make array dev_cmd_err static const, makes object smaller (Govindarajulu Varadarajan) [1797808]- [media] media: v4l: fix uapi mpeg slice params definition (Torez Smith) [1825410 1821835] - [uapi] v4l2-controls: add a missing include (Torez Smith) [1825410 1821835] - [dma] dma-mapping: remove dma_release_declared_memory (Torez Smith) [1825410 1821835] - [usb] usb/ohci-tmio: remove the HCD_DMA flag (Torez Smith) [1825410 1821835] - [usb] usb: add a HCD_DMA flag instead of guestimating DMA capabilities (Torez Smith) [1825410 1821835] - [usb] usb: add a hcd_uses_dma helper (Torez Smith) [1825410 1821835] - [usb] usb: don't create dma pools for HCDs with a localmem_pool (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: Mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [usb] USB: drop HCD_LOCAL_MEM flag (Torez Smith) [1825410 1821835] - [usb] usb: host: ohci-tmio: init genalloc for local memory (Torez Smith) [1825410 1821835] - [usb] dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag (Torez Smith) [1825410 1821835] - [media] media: xirlink_cit: add missing descriptor sanity checks (Torez Smith) [1825410 1821835] - [media] media: ttusb-dec: Fix info-leak in ttusb_dec_send_command() (Torez Smith) [1788005 1825410 1821835] {CVE-2019-19533} - [media] media: usb: fix memory leak in af9005_identify_state (Torez Smith) [1825141 1825410 1821835] {CVE-2019-18809} - [netdrv] cdc_ether: fix rndis support for Mediatek based smartphones (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove calling netif_napi_del (Torez Smith) [1825410 1821835] - [netdrv] Revert "r8152: napi hangup fix after disconnect" (Torez Smith) [1825410 1821835] - [netdrv] r8152: Set memory to all 0xFFs on failed reg reads (Torez Smith) [1825410 1821835] - [netdrv] net: kalmia: fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] cx82310_eth: fix a memory leak bug (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Fix memory leaks (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix typo in register name (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: force the string buffer NULL-terminated (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: fix improper read if get_registers() fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: Add the BroadMobi BM818 card (Torez Smith) [1825410 1821835] - [netdrv] can: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: fix potential double kfree_skb() (Torez Smith) [1825410 1821835] - [netdrv] usb: qmi_wwan: add D-Link DWM-222 A2 device ID (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: change V4L2_PIX_FMT_BGRA444 define: fourcc was already in use (Torez Smith) [1825410 1821835] - [netdrv] r8152: set RTL8152_UNPLUG only for real disconnection (Torez Smith) [1825410 1821835] - [netdrv] r8152: move calling r8153b_rx_agg_chg_indicate() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: init MAC address buffers (Torez Smith) [1825410 1821835] - [netdrv] r8152: fix the setting of detecting the linking change for runtime suspend (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix locking and a missing msleep (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix out-of-bounds read (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Fix shifting signed 32-bit value by 31 bits problem (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 468 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 238 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 235 (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: extend permitted QMAP mux_id value range (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: avoid RCU stalls on device disconnect when in QMAP mode (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add network device usage statistics for qmimux devices (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add support for QMAP padding in the RX path (Torez Smith) [1825410 1821835] - [media] media: cx231xx-cards: Add Hauppauge 955Q variant (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add Hauppauge HVR1955/1975 devices (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add i2c client demod/tuner support (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Add multiple dvb frontend support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix access to uninitialized fields on probe error (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Include streaming interface number in debugfs dir name (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig: Remove duplicate menu entry (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix null-ptr-deref in class_unregister() (Torez Smith) [1825410 1821835] - [media] media: cxusb: Revert "media: cxusb: add raw mode support for, Medion MD95700" (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 412 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 286 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 258 (Torez Smith) [1825410 1821835] - [media] media: media/usb: set device_caps in struct video_device (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/cxusb-analog.c: fix coccinelle warning, use ktime.h (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 164 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 131 (Torez Smith) [1825410 1821835] - [media] media: cx231xx-dvb: fix memory leak in dvb_fini() (Torez Smith) [1825410 1821835] - [media] media: em28xx: use usb_to_input_id() rather than handrolling it (Torez Smith) [1825410 1821835] - [media] media: em28xx: use common code for decoding nec scancodes (Torez Smith) [1825410 1821835] - [media] media: em28xx: give RC device proper name (Torez Smith) [1825410 1821835] - [media] media: cxusb: fix several coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb-analog: Fix some coding style issues (Torez Smith) [1825410 1821835] - [media] media: cxusb: add raw mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: add analog mode support for Medion MD95700 (Torez Smith) [1825410 1821835] - [media] media: cxusb: implement Medion MD95700 digital / analog coexistence (Torez Smith) [1825410 1821835] - [media] media: usb:zr364xx:Fix KASAN:null-ptr-deref Read in zr364xx_vidioc_querycap (Torez Smith) [1825410 1821835] - [media] media: pwc: convert to BIT macro (Torez Smith) [1825410 1821835] - [media] media: cpia2_usb: first wake up, then free in disconnect (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: use a different format for warnings (Torez Smith) [1825410 1821835] - [media] media: smsusb: better handle optional alignment (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 65 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1825410 1821835] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 55 (Torez Smith) [1825410 1821835] - [media] media: remove redundant 'default n' from Kconfig-s (Torez Smith) [1825410 1821835] - [media] media: af9035: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Remove duplicate error reporting for dvbsky_usb_generic_rw (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Report error on all error paths (Torez Smith) [1825410 1821835] - [media] media: au0828: fix null dereference in error path (Torez Smith) [1825410 1821835] - [media] media: dvb: usb: fix use after free in dvb_usb_device_exit (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix false-positive "uninitialized variable" warning (Torez Smith) [1825410 1821835] - [netdrv] usbnet: fix kernel crash after disconnect (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix racing condition (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 24 (Torez Smith) [1825410 1821835] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 17 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1825410 1821835] - [media] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1825410 1821835] - [media] treewide: Add SPDX license identifier for more missed files (Torez Smith) [1825410 1821835] - [media] media: usb: siano: Fix general protection fault in smsusb (Torez Smith) [1825410 1821835] - [media] media: prefix header search paths with $(srctree)/ (Torez Smith) [1825410 1821835] - [media] media: remove unneeded header search paths (Torez Smith) [1825410 1821835] - [netdrv] aqc111: cleanup mtu related logic (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix writing to the phy on BE" (Torez Smith) [1825410 1821835] - [netdrv] Revert "aqc111: fix double endianness swap on BE" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: qmi_wwan: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix double endianness swap on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix writing to the phy on BE (Torez Smith) [1825410 1821835] - [netdrv] aqc111: fix endianness issue in aqc111_change_mtu (Torez Smith) [1825410 1821835] - [netdrv] net: usb: smsc: fix warning reported by kbuild test robot (Torez Smith) [1825410 1821835] - [netdrv] net: usb: support of_get_mac_address new ERR_PTR error (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Remove unnecessary NULL pointer check (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: Simplify device detection (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: new Wistron, ZTE and D-Link devices (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB555 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 16-bit RGB4444 formats (Torez Smith) [1825410 1821835] - [uapi] media: v4l: Add definitions for missing 32-bit RGB formats (Torez Smith) [1825410 1821835] - [netdrv] r8152: sync sa_family with the media type of network device (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: Prevent a buffer overflow (Torez Smith) [1825410 1821835] - [media] media: au0828: stop video streaming only when last user stops (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix NULL pointer dereference in au0828_analog_stream_enable() (Torez Smith) [1825410 1821835] - [media] media: au0828: fix enable and disable source audio and video inconsistencies (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add quirk for Quectel dynamic config (Torez Smith) [1825410 1821835] - [netdrv] r8152: Refresh MAC address during USBDEVFS_RESET (Torez Smith) [1825410 1821835] - [netdrv] r8152: remove extra action copying ethernet address (Torez Smith) [1825410 1821835] - [media] media: replace strncpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: usbvision: fix a potential NULL pointer dereference (Torez Smith) [1825410 1821835] - [media] media: gspca: Kill URBs on USB device disconnect (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add Olicard 600 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by QNAP device (Torez Smith) [1825410 1821835] - [media] media: pwc-ctl: pChoose can't be NULL (Torez Smith) [1825410 1821835] - [media] media: Kconfig files: use the right help coding style (Torez Smith) [1825410 1821835] - [media] media: em28xx-input: make const array addr_list static (Torez Smith) [1825410 1821835] - [media] media: dvb: Add support for the Avermedia TD310 (Torez Smith) [1825410 1821835] - [media] media: dvb: init i2c already in it930x_frontend_attach (Torez Smith) [1825410 1821835] - [media] media: dvbsky: Avoid leaking dvb frontend (Torez Smith) [1825410 1821835] - [media] media: gspca: do not resubmit URBs when streaming has stopped (Torez Smith) [1825410 1821835] - [media] media: au0828: minor fix to a misleading comment in _close() (Torez Smith) [1825410 1821835] - [media] media: go7007: avoid clang frame overflow warning with KASAN (Torez Smith) [1825410 1821835] - [media] media: cpia2: Fix use-after-free in cpia2_exit (Torez Smith) [1825410 1821835] - [netdrv] peak_usb: fix clang build warning (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Quectel EG12/EM12 (Torez Smith) [1825410 1821835] - [media] media: a few more typos at staging, pci, platform, radio and usb (Torez Smith) [1825410 1821835] - [media] media: usb: fix several typos (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Use usb_make_path to fill in usb_info (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: v4l: Add 32-bit packed YUV formats (Torez Smith) [1825410 1821835] - [netdrv] net: usb: cdc-phonet: use struct_size() in alloc_netdev() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: hdpvr: fix smatch warning (Torez Smith) [1825410 1821835] - [media] media: usbvision: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: cpia2: use u64 for the timestamp internally (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Avoid NULL pointer dereference at the end of streaming (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix 'type' check leading to overflow (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: ax88772_bind return error when hw_reset fail (Torez Smith) [1825410 1821835] - [netdrv] net: usb: rtl8150: remove set but not used variable 'rx_stat' (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend HWID table by TRENDnet device (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add more field helper macros (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: remove unnecessary COM3 initialization (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove camera clock setup from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov722x: remove mode specific video data registers from bridge_init (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534-ov772x: add SGBRG8 bayer mode support (Torez Smith) [1825410 1821835] - [media] media: gspca: ov543-ov772x: move video format specific registers into bridge_start (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in TRY_FMT (Torez Smith) [1825410 1821835] - [media] media: gspca: support multiple pixel formats in ENUM_FRAMEINTERVALS (Torez Smith) [1825410 1821835] - [media] media: gspca: ov534: replace msleep(10) with usleep_range (Torez Smith) [1825410 1821835] - [uapi] media: v4l: uAPI: V4L2_BUF_TYPE_META_OUTPUT is an output buffer type (Torez Smith) [1825410 1821835] - [media] media: gspca: mt9m111: Check write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: gspca: Check the return value of write_bridge for timeout (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed check for goto_low_power (Torez Smith) [1825410 1821835] - [media] media: usb: gspca: add a missed return-value check for do_command (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls.c/uvc: zero v4l2_event (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Don't use coherent DMA buffers for ISO transfer (Torez Smith) [1825410 1821835] - [media] media: usb: pwc: Introduce TRACE_EVENTs for pwc_isoc_handler() (Torez Smith) [1825410 1821835] - [netdrv] cdc_ether: trivial whitespace readability fix (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: add MTU default to qmap network interface (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Fix qmap header retrieval in qmimux_rx_fixup (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Add support for Fibocom NL678 series (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Resolve issue with changing MAC address (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Telit LN940 series (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Fibocom NL668 series (Torez Smith) [1825410 1821835] - [media] media: v4l: Add support for V4L2_BUF_TYPE_META_OUTPUT (Torez Smith) [1825410 1821835] - [media] media: siano: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: fix spelling mistake "statuss" -> "status" (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move interrupt buffer to priv buffer (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Add missing usb_free_urb to free interrupt urb (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Bugfix for wrong return values (Torez Smith) [1825410 1821835] - [media] media: stkwebcam: Support for ASUS A6VM notebook added (Torez Smith) [1825410 1821835] - [media] media: usb: dvb-usb: remove old friio driver (Torez Smith) [1825410 1821835] - [media] media: lmedm04: use dvb_usbv2_generic_rw_locked (Torez Smith) [1825410 1821835] - [media] media: lmedm04: Move usb buffer to lme2510_state (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: add support for Sony CXD2837ER slave demod (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Utilise for_each_uvc_urb iterator (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename uvc_{un, }init_video() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Split uvc_video_enable into two (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Move decode processing to process context (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Abstract streaming object lifetime (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Support asynchronous buffer handling (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: queue: Simplify spin-lock usage (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Protect queue internals with helper (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Convert decode functions to use new context structure (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor URB descriptors (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix spelling mistake, "Cinnergy" -> "Cinergy" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Refactor teardown of uvc on USB disconnect (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add support for the CNF4 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add 4bpp packed depth confidence format CNF4 (Torez Smith) [1825410 1821835] - [media] media: usb: Use kmemdup instead of duplicating its function (Torez Smith) [1825410 1821835] - [media] media: dvb: Use WARM definition from identify_state() (Torez Smith) [1825410 1821835] - [media] media: dib0700: fix spelling mistake "Amplifyer" -> "Amplifier" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: Fix incorrect use of transfer_flags URB_FREE_BUFFER (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize wol_cfg with memset in aqc111_suspend (Torez Smith) [1825410 1821835] - [netdrv] net: Don't default Aquantia USB driver to 'y' (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: fix spelling mistake: "resumbmitting" -> "resubmitting" (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Extend cdc_ether blacklist (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add ASIX's HW ids (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for wake on LAN by MAGIC packet (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement get/set_link_ksettings callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Initialize ethtool_ops structure (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add RX VLAN filtering support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for VLAN_CTAG_TX/RX offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement set_rx_mode callback (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for TSO (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for enable/disable checksum offload (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for changing MTU (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add checksum offload support (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement RX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Implement TX data path (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add support for getting and setting of MAC address (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce link management (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Introduce PHY access (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Various callbacks implementation (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add implementation of read and write commands (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Add bind and empty unbind callbacks (Torez Smith) [1825410 1821835] - [netdrv] net: usb: aqc111: Driver skeleton for Aquantia AQtion USB to 5GbE (Torez Smith) [1825410 1821835] - [netdrv] usbnet: ipheth: fix potential recvmsg bug and recvmsg bug 2 (Torez Smith) [1825410 1821835] - [media] media: pulse8-cec: return 0 when invalidating the logical address (Torez Smith) [1825410 1821835] - [media] media: gspca: fix frame overflow error (Torez Smith) [1825410 1821835] - [media] media: cropcap/g_selection split (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: check for csum being in last four bytes (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix memcpy for accessing rx-data (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: simplify tx_fixup code (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: fix rx packet alignment (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove duplicated include from ucan.c (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: remove set but not used variable 'udev' (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix accessing freed memory in kvaser_usb_start_xmit() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix potential uninitialized variable use (Torez Smith) [1825410 1821835] - [netdrv] net: smsc95xx: Fix MTU range (Torez Smith) [1825410 1821835] - [netdrv] usbnet: smsc95xx: disable carrier check while suspending (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: remove set but not used variable 'ctx' (Torez Smith) [1825410 1821835] - [netdrv] net: cdc_ncm: use tasklet_init() for tasklet_struct init (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface (Torez Smith) [1825410 1821835] - [media] media: pvrusb2: replace `printk` with `pr_*` (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix potential sign-extension overflow on large shift (Torez Smith) [1825410 1821835] - [media] Revert "media: dvbsky: use just one mutex for serializing device R/W ops" (Torez Smith) [1825410 1821835] - [netdrv] net/usb: cancel pending work when unbinding smsc75xx (Torez Smith) [1825410 1821835] - [netdrv] smsc95xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] smsc75xx: Check for Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] r8152: Check for supported Wake-on-LAN Modes (Torez Smith) [1825410 1821835] - [netdrv] sr9800: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] ax88179_178a: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [netdrv] asix: Check for supported Wake-on-LAN modes (Torez Smith) [1825410 1821835] - [media] media: v4l: Add definition for the Sunxi tiled NV12 format (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add definitions for MPEG-2 slice format and metadata (Torez Smith) [1825410 1821835] - [media] media: au0828: Fix incorrect error messages (Torez Smith) [1825410 1821835] - [media] media: au0828: cannot kfree dev before usb disconnect (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Avoid unnecessary self assignment (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: set DTR for modems in forced USB2 mode (Torez Smith) [1825410 1821835] - [media] media: mxl111sf: declare its own pads (Torez Smith) [1825410 1821835] - [media] media: au0828: use signals instead of hardcoding a pad number (Torez Smith) [1825410 1821835] - [media] media: v4l2: taint pads with the signal types for consumer devices (Torez Smith) [1825410 1821835] - [media] media: em28xx: make v4l2-compliance happier by starting sequence on zero (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix input name for Terratec AV 350 (Torez Smith) [1825410 1821835] - [media] media: em28xx: use a default format if TRY_FMT fails (Torez Smith) [1825410 1821835] - [media] media: em28xx: fix handler for vidioc_s_input() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: remove redundant null pointer check before of_node_put (Torez Smith) [1825410 1821835] - [media] media: usbvision: remove time_in_irq (Torez Smith) [1825410 1821835] - [media] media: gspca: sq930x: use GFP_KERNEL in sd_dq_callback() (Torez Smith) [1825410 1821835] - [media] media: replace strcpy() by strscpy() (Torez Smith) [1825410 1821835] - [media] media: use strscpy() instead of strlcpy() (Torez Smith) [1825410 1821835] - [documentation] media: videodev2.h: add new capabilities for buffer types (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Store device information pointer in struct uvc_device (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Rename UVC_QUIRK_INFO to UVC_INFO_QUIRK (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix uvc_alloc_entity() allocation alignment (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix spelling mistake: "entites" -> "entities" (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove unnecessary NULL check before debugfs_remove_recursive (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make uvc_control_mapping menu_info field const (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Make some structs const (Torez Smith) [1825410 1821835] - [netdrv] qmi_wwan: Support dynamic config on Quectel EP06 (Torez Smith) [1825410 1821835] - [netdrv] lan78xx: Do not access skb_queue_head list pointers directly (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Make declaration style consistent (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Switch to SPDX identifier (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Drop unnecessary strcpy in lan78xx_probe (Torez Smith) [1825410 1821835] - [netdrv] net: lan78xx: Bail out if lan78xx_get_endpoints fails (Torez Smith) [1825410 1821835] - [netdrv] net: usbnet: mark expected switch fall-through (Torez Smith) [1825410 1821835] - [media] media: v4l2-ctrls: v4l2_ctrl_add_handler: add from_other_dev (Torez Smith) [1825410 1821835] - [media] media: videodev2.h: add request_fd field to v4l2_ext_controls (Torez Smith) [1825410 1821835] - [uapi] media: videodev2.h: Add new DV flag CAN_DETECT_REDUCED_FPS (Torez Smith) [1825410 1821835] - [media] media: af9035: prevent buffer overflow on write (Torez Smith) [1825410 1821835] - [netdrv] r8152: disable RX aggregation on new Dell TB16 dock (Torez Smith) [1825410 1821835] - [netdrv] drivers/net/usb/r8152: remove the unneeded variable "ret" in rtl8152_system_suspend (Torez Smith) [1825410 1821835] - [media] media: rtl28xxu: be sure that it won't go past the array size (Torez Smith) [1825410 1821835] - [netdrv] net:usb: Use ARRAY_SIZE instead of calculating the array size (Torez Smith) [1825410 1821835] - [media] media: au0828: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: cx231xx: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb-v2: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: fix spelling mistake: "completition" -> "completion" (Torez Smith) [1825410 1821835] - [media] media: usb: hackrf: Replace GFP_ATOMIC with GFP_KERNEL (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace mdelay() with msleep() in em28xx_pre_card_setup() (Torez Smith) [1825410 1821835] - [media] media: usb: em28xx: Replace GFP_ATOMIC with GFP_KERNEL in em28xx_init_usb_xfer() (Torez Smith) [1825410 1821835] - [media] media: dw2102: Fix memleak on sequence of probes (Torez Smith) [1825410 1821835] - [media] media: usbtv: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: go7007: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [media] media: cx231xx: use irqsave() in USB's complete callback (Torez Smith) [1825410 1821835] - [documentation] media: v4l: Add new 10-bit packed grayscale format (Torez Smith) [1825410 1821835] - [documentation] media: doc-rst: Add packed Bayer raw14 pixel formats (Torez Smith) [1825410 1821835] - [media] media: em28xx: disable null packet filter for WinTVdualHD (Torez Smith) [1825410 1821835] - [uapi] media: videodev2: get rid of VIDIOC_RESERVED (Torez Smith) [1825410 1821835] - [media] media: em28xx: explicitly disable TS packet filter (Torez Smith) [1825410 1821835] - [media] media: dvb-usb/friio, dvb-usb-v2/gl861: decompose friio and merge with gl861 (Torez Smith) [1825410 1821835] - [netdrv] net: usb: sr9700: Replace mdelay() with msleep() in sr9700_bind() (Torez Smith) [1825410 1821835] - [netdrv] net: usb: pegasus: Replace mdelay() with msleep() in setup_pegasus_II() (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Send a control event when a Control Change interrupt arrives (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Handle control pipe protocol STALLs (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Remove a redundant check (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Also validate buffers in BULK mode (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Add KSMedia 8-bit IR format support (Torez Smith) [1825410 1821835] - [media] media: uvcvideo: Fix minor spelling (Torez Smith) [1825410 1821835] - [media] media: em28xx-cards: disable V4L2 mode for dual tuners (Torez Smith) [1825410 1821835] - [media] media: em28xx: Remove duplicate PID (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix DualHD disconnect oops (Torez Smith) [1825410 1821835] - [media] media: em28xx: Fix dual transport stream operation (Torez Smith) [1825410 1821835] - [media] media: dib0700: add code comment (Torez Smith) [1825410 1821835] - [media] media: cx231xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: em28xx: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: hdpvr: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: dvb-usb: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: tm6000: don't check number of messages in the driver (Torez Smith) [1825410 1821835] - [media] media: gl861: fix probe of dvb_usb_gl861 (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Simplify struct kvaser_cmd_cardinfo (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add support for Kvaser USB hydra family (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Split driver into kvaser_usb_core.c and kvaser_usb_leaf.c (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add SPDX GPL-2.0 license identifier (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Fix typos (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Improve logging messages (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_init_one() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Refactor kvaser_usb_get_endpoints() (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Add pointer to struct usb_interface into struct kvaser_usb (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Replace USB timeout constants with one define (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Rename message/msg to command/cmd (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unused commands and defines (Torez Smith) [1825410 1821835] - [netdrv] can: kvaser_usb: Remove unnecessary return (Torez Smith) [1825410 1821835] - [netdrv] can: peak_usb: mark expected switch fall-throughs (Torez Smith) [1825410 1821835] - [netdrv] can: ucan: add driver for Theobroma Systems UCAN devices (Torez Smith) [1825410 1821835] - [netdrv] can: usb: Kconfig/Makefile: sort alphabetically (Torez Smith) [1825410 1821835] - [media] media: gspca_kinect: cast sizeof to int for comparison (Torez Smith) [1825410 1821835] - [media] media: videodev.h: add PIX_FMT_FWHT for use with vicodec (Torez Smith) [1825410 1821835] - [netdrv] net: usb: hso: use swap macro in hso_kick_transmit (Torez Smith) [1825410 1821835] - [netdrv] net: usb: asix: allow optionally getting mac address from device tree (Torez Smith) [1825410 1821835]- [hid] HID: Improve Windows Precision Touchpad detection (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: enable multi-input as a quirk for some devices (Benjamin Tissoires) [1811209] - [hid] drivers/hid/hid-multitouch.c: fix a possible null pointer access (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: Add LG MELF0410 I2C touchscreen support (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: add support for the Smart Tech panel (Benjamin Tissoires) [1811209] - [hid] HID: multitouch: do not filter mice nodes (Benjamin Tissoires) [1811209] - [hid] HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT (Benjamin Tissoires) [1835753] - [hid] Revert "HID: wacom: generic: read the number of expected touches on a per collection basis" (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices (Benjamin Tissoires) [1835753] - [hid] HID: wacom: Recognize new MobileStudio Pro PID (Benjamin Tissoires) [1835753] - [hid] HID: wacom: generic: Treat serial number and related fields as unsigned (Benjamin Tissoires) [1835753] - [hid] HID: wacom: add new MobileStudio Pro 13 support (Benjamin Tissoires) [1835753] - [hid] HID: wacom: do not call hid_set_drvdata(hdev, NULL) (Benjamin Tissoires) [1835753] - [hid] HID: wacom: support named keys on older devices (Benjamin Tissoires) [1835753] - [target] scsi: target: iscsi: calling iscsit_stop_session() inside iscsit_close_session() has no effect (Maurizio Lombardi) [1840024] - [target] scsi: target: fix hang when multiple threads try to destroy the same iscsi session (Maurizio Lombardi) [1840024] - [target] scsi: target: remove boilerplate code (Maurizio Lombardi) [1840024] - [target] scsi: target: use an enum to track emulate_ua_intlck_ctrl (Maurizio Lombardi) [1840024] - [target] scsi: target: convert boolean se_dev_attrib types to bool (Maurizio Lombardi) [1840024] - [target] scsi: target: fix unmap_zeroes_data boolean initialisation (Maurizio Lombardi) [1840024] - [fs] page cache: Finish XArray conversion (Waiman Long) [1812073] - [mm] mm: Convert __do_page_cache_readahead to XArray (Waiman Long) [1812073] - [mm] mm: Convert is_page_cache_freeable to XArray (Waiman Long) [1812073] - [mm] mm: memcontrol: clean up and document effective low/min calculations (Waiman Long) [1812073] - [mm] mm: memcontrol: fix memory.low proportional distribution (Waiman Long) [1812073] - [mm] mm: kmem: rename (__)memcg_kmem_(un)charge_memcg() to __memcg_kmem_(un)charge() (Waiman Long) [1812073] - [mm] mm: memcg/slab: cache page number in memcg_(un)charge_slab() (Waiman Long) [1812073] - [mm] mm: kmem: switch to nr_pages in (__)memcg_kmem_charge_memcg() (Waiman Long) [1812073] - [mm] mm: kmem: rename memcg_kmem_(un)charge() into memcg_kmem_(un)charge_page() (Waiman Long) [1812073] - [mm] mm: kmem: cleanup memcg_kmem_uncharge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: kmem: cleanup (__)memcg_kmem_charge_memcg() arguments (Waiman Long) [1812073] - [mm] mm: memcg/slab: use mem_cgroup_from_obj() (Waiman Long) [1812073] - [kernel] mm: fork: fix kernel_stack memcg stats for various stack implementations (Waiman Long) [1812073] - [mm] memcg: fix NULL pointer dereference in __mem_cgroup_usage_unregister_event (Waiman Long) [1812073] - [mm] mm: clean up and clarify lruvec lookup procedure (Waiman Long) [1812073] - [mm] mm: memcontrol: try harder to set a new memory.high (Waiman Long) [1812073] - [mm] mm: memcontrol: remove dead code from memory_max_write() (Waiman Long) [1812073] - [mm] mm, memcg: clean up reclaim iter array (Waiman Long) [1812073] - [mm] mm, memcg: make scan aggression always exclude protection (Waiman Long) [1812073] - [mm] mm, memcg: make memory.emin the baseline for utilisation determination (Waiman Long) [1812073] - [mm] mm, memcg: proportional memory.{low, min} reclaim (Waiman Long) [1812073] - [mm] memcg, kmem: do not fail __GFP_NOFAIL charges (Waiman Long) [1812073] - [mm] mm: workingset: fix vmstat counters for shadow nodes (Waiman Long) [1812073] - [mm] mm: memcontrol: use CSS_TASK_ITER_PROCS at mem_cgroup_scan_tasks() (Waiman Long) [1812073] - [kernel] fork, memcg: alloc_thread_stack_node needs to set tsk->stack (Waiman Long) [1812073] - [mm] mm/memcontrol.c: fix bad line in comment (Waiman Long) [1812073] - [kernel] fork, memcg: fix cached_stacks case (Waiman Long) [1812073] - [mm] mm: don't raise MEMCG_OOM event due to failed high-order allocation (Waiman Long) [1812073] - [mm] mm: vmscan: memcontrol: remove mem_cgroup_select_victim_node() (Waiman Long) [1812073] - [mm] mm: vmscan: do not share cgroup iteration between reclaimers (Waiman Long) [1812073] - [mm] mm: vmscan: do not iterate all mem cgroups for global direct reclaim (Waiman Long) [1812073] - [mm] mm: workingset: use cheaper __inc_lruvec_state in irqsafe node reclaim (Waiman Long) [1812073] - [tools] xarray: Fix early termination of xas_for_each_marked (Waiman Long) [1812073] - [lib] mm: Convert workingset to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_range_has_page to XArray (Waiman Long) [1812073] - [mm] page cache: Remove stray radix comment (Waiman Long) [1812073] - [mm] page cache: Convert delete_batch to XArray (Waiman Long) [1812073] - [mm] page cache: Convert filemap_map_pages to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries_tag to XArray (Waiman Long) [1812073] - [mm] page cache; Convert find_get_pages_range_tag to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_contig to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_pages_range to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entries to XArray (Waiman Long) [1812073] - [mm] page cache: Convert find_get_entry to XArray (Waiman Long) [1812073] - [mm] page cache: Convert page deletion to XArray (Waiman Long) [1812073] - [include] page cache: Add and replace pages using the XArray (Waiman Long) [1812073] - [mm] page cache: Convert hole search to XArray (Waiman Long) [1812073] - [kernel] docs: cgroup-v1: Document the cpuset_v2_mode mount option (Waiman Long) [1812073] - [kernel] cgroup1: don't call release_agent when it is "" (Waiman Long) [1812073] - [kernel] cgroup: Iterate tasks that did not finish do_exit() (Waiman Long) [1812073] - [kernel] cgroup: cgroup_procs_next should increase position index (Waiman Long) [1812073] - [kernel] cgroup-v1: cgroup_pidlist_next should update position index (Waiman Long) [1812073] - [kernel] cgroup: init_tasks shouldn't be linked to the root cgroup (Waiman Long) [1812073] - [kernel] cgroup: Prevent double killing of css when enabling threaded cgroup (Waiman Long) [1812073] - [kernel] cgroup: fix function name in comment (Waiman Long) [1812073] - [kernel] cgroup: freezer: don't change task and cgroups status unnecessarily (Waiman Long) [1812073] - [kernel] cgroup: use cgroup->last_bstat instead of cgroup->bstat_pending for consistency (Waiman Long) [1812073] - [kernel] cgroup: remove cgroup_enable_task_cg_lists() optimization (Waiman Long) [1812073] - [kernel] cgroup: pids: use atomic64_t for pids->limit (Waiman Long) [1812073] - [kernel] cgroup: Optimize single thread migration (Waiman Long) [1812073] - [kernel] cgroup: Update comments about task exit path (Waiman Long) [1812073] - [kernel] cgroup: short-circuit current_cgns_cgroup_from_root() on the default hierarchy (Waiman Long) [1812073] - [kernel] Use kvmalloc in cgroups-v1 (Waiman Long) [1812073] - [kernel] cgroup: minor tweak for logic to get cgroup css (Waiman Long) [1812073] - [kernel] cgroup: Replace a seq_printf() call by seq_puts() in cgroup_print_ss_mask() (Waiman Long) [1812073] - [kernel] cgroup: Fix css_task_iter_advance_css_set() cset skip condition (Waiman Long) [1812073] - [kernel] cgroup: css_task_iter_skip()'d iterators must be advanced before accessed (Waiman Long) [1812073] - [include] cgroup: Include dying leaders with live threads in PROCS iterations (Waiman Long) [1812073] - [kernel] cgroup: Implement css_task_iter_skip() (Waiman Long) [1812073] - [kernel] cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting (Waiman Long) [1586281 1812073] - [platform] intel-speed-select: Firmware workarounds for Icelake (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix invalid core mask (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Increase CPU count (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Fix json perf-profile output output (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Enable clos for turbo-freq enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Check support status before enable (Prarit Bhargava) [1840289] - [tools] tools/power/x86/intel-speed-select: Change debug to error (Prarit Bhargava) [1840289] - [platform] intel_speed_select: internal-only-debug-patch (Prarit Bhargava) [1840289]- [nvdimm] libnvdimm/region: Fix build error (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce an 'align' attribute (Diego Domingos) [1779218] - [nvdimm] libnvdimm/region: Introduce NDD_LABELING (Diego Domingos) [1779218] - [nvdimm] libnvdimm/namespace: Enforce memremap_compat_align() (Diego Domingos) [1779218] - [nvdimm] libnvdimm/pfn: Prevent raw mode fallback if pfn-infoblock valid (Diego Domingos) [1779218] - [mm] mm/memremap_pages: Introduce memremap_compat_align() (Diego Domingos) [1779218] - [x86] x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error handling in __unwind_start() (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix premature unwind stoppage due to IRET frames (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Fix error path for bad ORC entry type (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Prevent unwinding before ORC initialization (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Don't skip the first frame for inactive tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind: Prevent false warnings for non-current tasks (Josh Poimboeuf) [1755143] - [x86] x86/unwind/orc: Convert global variables to static (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in rewind_stack_do_exit() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in __switch_to_asm() (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in kernel exit path (Josh Poimboeuf) [1755143] - [x86] x86/entry/64: Fix unwind hints in register clearing code (Josh Poimboeuf) [1755143] - [tools] objtool: Fix stack offset tracking for indirect CFAs (Josh Poimboeuf) [1755143] - [s390] s390: nvme reipl (Philipp Rudo) [1525179] - [s390] s390: nvme ipl (Philipp Rudo) [1525179] - [infiniband] RDMA/bnxt_re: make bnxt_re_ib_init static (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Wait for all the CQ events before freeing CQ data structures (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove unnecessary sched count (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Fix lifetimes in bnxt_re_task (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use ib_device_try_get() (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove a redundant 'memset' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variables 'pg' and 'idx' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'dev_attr' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Remove set but not used variable 'pg_size' (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Use driver_unregister and unregistration API (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor device add/remove functionalities (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Using vmalloc requires including vmalloc.h (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: use ibdev based message printing functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor doorbell management functions (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor notification queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor command queue management code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor net ring allocation function (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor hardware queue memory allocation (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Replace chip context structure with pointer (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Refactor queue pair creation code (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: remove ioremap_nocache and devm_ioremap_nocache (Selvin Xavier) [1790622] - [infiniband] RDMA/bnxt_re: Enable SRIOV VF support on Broadcom's 57500 adapter series (Selvin Xavier) [1790622] - [netdrv] net: be2net: reject unsupported coalescing params (Petr Oros) [1790633] - [netdrv] treewide: Use sizeof_field() macro (Petr Oros) [1790633] - [netdrv] net: emulex: benet: indent a Kconfig depends continuation line (Petr Oros) [1790633] - [infiniband] i40iw: fix null pointer dereference on a null wqe pointer (Stefan Assmann) [1839718] - [infiniband] RDMA/providers: Fix return value when QP type isn't supported (Stefan Assmann) [1839718] - [infiniband] RDMA: Replace zero-length array with flexible-array member (Stefan Assmann) [1839718] - [infiniband] i40iw: Do an RCU lookup in i40iw_add_ipv4_addr (Stefan Assmann) [1839718] - [infiniband] IB/core: Introduce ib_reg_user_mr (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: fix a potential NULL pointer dereference (Stefan Assmann) [1839718] - [infiniband] i40iw: Remove setting of VMA private data and use rdma_user_mmap_io (Stefan Assmann) [1839718] - [infiniband] RDMA/i40iw: Fix potential use after free (Stefan Assmann) [1839718] - [powerpc] powerpc/pseries: Fix of_read_drc_info_cell() to point at next record (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Enable support for ibm, drc-info property (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Correctly match ibm, my-drc-index to drc-name when using drc-info (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Avoid a sometimes-uninitialized warning (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Annotate and correctly byte swap DRC properties (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Add drc-info support for hotplug slot registration (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Don't rely on firmware feature to imply drc-info support (Diego Domingos) [1779198] - [pci] PCI: rpaphp: Fix up pointer to first drc-info entry (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Add cpu DLPAR support for drc-info property (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix drc-info mappings of logical cpus to drc-index (Diego Domingos) [1779198] - [powerpc] powerpc/pseries: Fix bad drc_index_start value parsing of drc-info entry (Diego Domingos) [1779198] - [kernel] sched/fair: Optimize enqueue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair() warning some more (Phil Auld) [1780466] - [kernel] sched/fair: Fix enqueue_task_fair warning (Phil Auld) [1780466] - [kernel] sched/fair: Fix reordering of enqueue/dequeue_task_fair() (Phil Auld) [1780466] - [kernel] sched/fair: Reorder enqueue/dequeue_task_fair path (Phil Auld) [1780466] - [fs] ceph: demote quotarealm lookup warning to a debug message (Jeff Layton) [1827767] - [fs] ceph: fix double unlock in handle_cap_export() (Jeff Layton) [1827767] - [fs] ceph: fix special error code in ceph_try_get_caps() (Jeff Layton) [1827767] - [fs] ceph: fix endianness bug when handling MDS session feature bits (Jeff Layton) [1827767] - [fs] ceph: fix potential bad pointer deref in async dirops cb's (Jeff Layton) [1827767] - [block] rbd: don't mess with a page vector in rbd_notify_op_lock() (Jeff Layton) [1827767] - [block] rbd: don't test rbd_dev->opts in rbd_dev_image_release() (Jeff Layton) [1827767] - [block] rbd: call rbd_dev_unprobe() after unwatching and flushing notifies (Jeff Layton) [1827767] - [block] rbd: avoid a deadlock on header_rwsem when flushing notifies (Jeff Layton) [1827767] - [fs] ceph: fix snapshot directory timestamps (Jeff Layton) [1827767] - [fs] ceph: wait for async creating inode before requesting new max size (Jeff Layton) [1827767] - [fs] ceph: don't skip updating wanted caps when cap is stale (Jeff Layton) [1827767] - [fs] ceph: request new max size only when there is auth cap (Jeff Layton) [1827767] - [fs] ceph: cleanup return error of try_get_cap_refs() (Jeff Layton) [1827767] - [fs] ceph: return ceph_mdsc_do_request() errors from __get_parent() (Jeff Layton) [1827767] - [fs] ceph: check all mds' caps after page writeback (Jeff Layton) [1827767] - [fs] ceph: update i_requested_max_size only when sending cap msg to auth mds (Jeff Layton) [1827767] - [fs] ceph: simplify calling of ceph_get_fmode() (Jeff Layton) [1827767] - [fs] ceph: remove delay check logic from ceph_check_caps() (Jeff Layton) [1827767] - [fs] ceph: consider inode's last read/write when calculating wanted caps (Jeff Layton) [1827767] - [fs] ceph: always renew caps if mds_wanted is insufficient (Jeff Layton) [1827767] - [fs] ceph: update dentry lease for async create (Jeff Layton) [1827767] - [fs] ceph: attempt to do async create when possible (Jeff Layton) [1827767] - [fs] ceph: cache layout in parent dir on first sync create (Jeff Layton) [1827767] - [fs] ceph: add new MDS req field to hold delegated inode number (Jeff Layton) [1827767] - [fs] ceph: decode interval_sets for delegated inos (Jeff Layton) [1827767] - [fs] ceph: make ceph_fill_inode non-static (Jeff Layton) [1827767] - [fs] ceph: perform asynchronous unlink if we have sufficient caps (Jeff Layton) [1827767] - [fs] ceph: don't take refs to want mask unless we have all bits (Jeff Layton) [1827767] - [fs] ceph: cap tracking for async directory operations (Jeff Layton) [1827767] - [fs] ceph: make __take_cap_refs non-static (Jeff Layton) [1827767] - [fs] ceph: add infrastructure for waiting for async create to complete (Jeff Layton) [1827767] - [fs] ceph: track primary dentry link (Jeff Layton) [1827767] - [fs] ceph: add flag to designate that a request is asynchronous (Jeff Layton) [1827767] - [fs] ceph: more caps.c lockdep assertions (Jeff Layton) [1827767] - [fs] ceph: clean up kick_flushing_inode_caps() (Jeff Layton) [1827767] - [net] libceph: directly skip to the end of redirect reply (Jeff Layton) [1827767] - [net] libceph: simplify ceph_monc_handle_map() (Jeff Layton) [1827767] - [fs] ceph: return ETIMEDOUT errno to userland when request timed out (Jeff Layton) [1827767] - [fs] ceph: re-org copy_file_range and fix some error paths (Jeff Layton) [1827767] - [fs] ceph: move to a dedicated slabcache for mds requests (Jeff Layton) [1827767] - [fs] ceph: reorganize fields in ceph_mds_request (Jeff Layton) [1827767] - [fs] ceph: replace zero-length array with flexible-array member (Jeff Layton) [1827767] - [block] rbd: enable multiple blk-mq queues (Jeff Layton) [1827767] - [block] rbd: embed image request in blk-mq pdu (Jeff Layton) [1827767] - [block] rbd: acquire header_rwsem just once in rbd_queue_workfn() (Jeff Layton) [1827767] - [block] rbd: get rid of img_request_layered_clear() (Jeff Layton) [1827767] - [block] rbd: kill img_request kref (Jeff Layton) [1827767] - [fs] ceph: check if file lock exists before sending unlock request (Jeff Layton) [1827767] - [fs] ceph: move ceph_osdc_{read, write}pages to ceph.ko (Jeff Layton) [1827767] - [fs] ceph: don't ClearPageChecked in ceph_invalidatepage() (Jeff Layton) [1827767] - [block] rbd: remove barriers from img_request_layered_{set, clear, test}() (Jeff Layton) [1827767] - [fs] libceph: drop CEPH_DEFINE_SHOW_FUNC (Jeff Layton) [1827767] - [fs] ceph: check inode type for CEPH_CAP_FILE_{CACHE, RD, REXTEND, LAZYIO} (Jeff Layton) [1827767] - [fs] ceph: add refcounting for Fx caps (Jeff Layton) [1827767] - [fs] ceph: register MDS request with dir inode from the start (Jeff Layton) [1827767] - [fs] ceph: fix memory leak in ceph_cleanup_snapid_map() (Jeff Layton) [1827767] - [net] libceph: fix alloc_msg_with_page_vector() memory leaks (Jeff Layton) [1827767] - [include] ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL (Jeff Layton) [1827767] - [fs] ceph: canonicalize server path in place (Jeff Layton) [1827767] - [fs] ceph: do not execute direct write in parallel if O_APPEND is specified (Jeff Layton) [1827767] - [block] rbd: set the 'device' link in sysfs (Jeff Layton) [1827767] - [fs] ceph: move net/ceph/ceph_fs.c to fs/ceph/util.c (Jeff Layton) [1827767] - [fs] ceph: print name of xattr in __ceph_{get, set}xattr() douts (Jeff Layton) [1827767] - [fs] ceph: print r_direct_hash in hex in __choose_mds() dout (Jeff Layton) [1827767] - [fs] ceph: use copy-from2 op in copy_file_range (Jeff Layton) [1827767] - [fs] ceph: close holes in structs ceph_mds_session and ceph_mds_request (Jeff Layton) [1827767] - [block] rbd: work around -Wuninitialized warning (Jeff Layton) [1827767] - [fs] ceph: allocate the correct amount of extra bytes for the session features (Jeff Layton) [1827767] - [fs] ceph: rename get_session and switch to use ceph_get_mds_session (Jeff Layton) [1827767] - [fs] ceph: remove the extra slashes in the server path (Jeff Layton) [1827767] - [fs] ceph: add possible_max_rank and make the code more readable (Jeff Layton) [1827767] - [fs] ceph: print dentry offset in hex and fix xattr_version type (Jeff Layton) [1827767] - [fs] ceph: only touch the caps which have the subset mask requested (Jeff Layton) [1827767] - [fs] ceph: don't clear I_NEW until inode metadata is fully populated (Jeff Layton) [1827767] - [fs] ceph: retry the same mds later after the new session is opened (Jeff Layton) [1827767] - [fs] ceph: check availability of mds cluster on mount after wait timeout (Jeff Layton) [1827767] - [fs] ceph: keep the session state until it is released (Jeff Layton) [1827767] - [fs] ceph: add __send_request helper (Jeff Layton) [1827767] - [fs] ceph: ensure we have a new cap before continuing in fill_inode (Jeff Layton) [1827767] - [fs] ceph: drop unused ttl_from parameter from fill_inode (Jeff Layton) [1827767] - [fs] ceph: fix possible long time wait during umount (Jeff Layton) [1827767] - [fs] ceph: only choose one MDS who is in up:active state without laggy (Jeff Layton) [1827767] - [fs] ceph: fix mdsmap cluster available check based on laggy number (Jeff Layton) [1827767] - [fs] ceph: remove unnecessary assignment in ceph_pre_init_acls() (Jeff Layton) [1827767] - [fs] ceph: delete redundant douts in con_get/put() (Jeff Layton) [1827767] - [fs] ceph: hold extra reference to r_parent over life of request (Jeff Layton) [1827767] - [fs] ceph: add more debug info when decoding mdsmap (Jeff Layton) [1827767] - [fs] ceph: switch to global cap helper (Jeff Layton) [1827767] - [fs] ceph: trigger the reclaim work once there has enough pending caps (Jeff Layton) [1827767] - [fs] ceph: show tasks waiting on caps in debugfs caps file (Jeff Layton) [1827767] - [fs] fs: ceph: Delete timespec64_trunc() usage (Jeff Layton) [1827767] - [block] rbd: ask for a weaker incompat mask for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't query snapshot features (Jeff Layton) [1827767] - [block] rbd: remove snapshot existence validation code (Jeff Layton) [1827767] - [block] rbd: don't establish watch for read-only mappings (Jeff Layton) [1827767] - [block] rbd: don't acquire exclusive lock for read-only mappings (Jeff Layton) [1827767] - [block] rbd: disallow read-write partitions on images mapped read-only (Jeff Layton) [1827767] - [block] rbd: treat images mapped read-only seriously (Jeff Layton) [1827767] - [block] rbd: introduce RBD_DEV_FLAG_READONLY (Jeff Layton) [1827767] - [block] rbd: introduce rbd_is_snap() (Jeff Layton) [1827767] - [fs] ceph: don't leave ino field in ceph_mds_request_head uninitialized (Jeff Layton) [1827767] - [fs] ceph: tone down loglevel on ceph_mdsc_build_path warning (Jeff Layton) [1827767] - [fs] ceph: fix geting random mds from mdsmap (Jeff Layton) [1827767] - [block] rbd: fix spelling mistake "requeueing" -> "requeuing" (Jeff Layton) [1827767] - [fs] ceph: make several helper accessors take const pointers (Jeff Layton) [1827767] - [net] libceph: drop unnecessary check from dispatch() in mon_client.c (Jeff Layton) [1827767] - [fs] ceph: don't allow copy_file_range when stripe_count != 1 (Jeff Layton) [1827767] - [fs] ceph: allow object copies across different filesystems in the same cluster (Jeff Layton) [1827767] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1827767] - [fs] ceph: allow copy_file_range when src and dst inode are same (Jeff Layton) [1827767] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1827767] - [fs] ceph: make 'nocopyfrom' a default mount option (Jeff Layton) [1827767] - [fs] vfs: allow copy_file_range to copy across devices (Jeff Layton) [1827767] - [fs] vfs: no fallback for ->copy_file_range (Jeff Layton) [1827767] - [fs] ceph: add destination file data sync before doing any remote copy (Jeff Layton) [1827767] - [fs] ceph: new mount option to disable usage of copy-from op (Jeff Layton) [1827767] - [fs] ceph: support copy_file_range file operation (Jeff Layton) [1827767] - [include] libceph: support the RADOS copy-from operation (Jeff Layton) [1827767] - [fs] cachefiles: Fix race between read_waiter and read_copier involving op->to_do (Dave Wysochanski) [1832644] - [char] security: keys: trusted: fix lost handle flush (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Remove set but not used variable 'keyhndl' (Jerry Snitselaar) [1815609] - [char] KEYS: trusted: Move TPM2 trusted keys code (Jerry Snitselaar) [1815609] - [security] KEYS: trusted: Create trusted keys subsystem (Jerry Snitselaar) [1815609] - [security] KEYS: Use common tpm_buf for trusted and asymmetric keys (Jerry Snitselaar) [1815609] - [char] tpm: Move tpm_buf code to include/linux/ (Jerry Snitselaar) [1815609] - [char] tpm/tpm_tis: Free IRQ if probing fails (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Revert tpm_tis_spi_mod.ko to tpm_tis_spi.ko (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add tpm_version_major sysfs file (Jerry Snitselaar) [1815609] - [char] tpm: Handle negative priv->response_len in tpm_common_read() (Jerry Snitselaar) [1815609] - [char] tpm: fix invalid locking in NONBLOCKING mode (Jerry Snitselaar) [1815609] - [char] tpm_crb: fix fTPM on AMD Zen+ CPUs (Jerry Snitselaar) [1815609] - [char] tpm: use GFP_KERNEL instead of GFP_HIGHMEM for tpm_buf (Jerry Snitselaar) [1815609] - [char] tpm: add check after commands attribs tab allocation (Jerry Snitselaar) [1815609] - [char] tpm: tpm_tis_spi: Drop THIS_MODULE usage from driver struct (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Cleanup includes (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Support cr50 devices (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm_tis_spi: Introduce a flow control callback (Jerry Snitselaar) [1815609 1788758] - [char] tpm: Add a flag to indicate TPM power is managed by firmware (Jerry Snitselaar) [1815609] - [char] tpm_tis: override durations for STM tpm with firmware 1.2.8.28 (Jerry Snitselaar) [1815609 1788758] - [char] tpm: provide a way to override the chip returned durations (Jerry Snitselaar) [1815609] - [char] tpm: Remove duplicate code from caps_show() in tpm-sysfs.c (Jerry Snitselaar) [1815609 1788758] - [char] tpm: tpm2_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: tpm1_bios_measurements_next should increase position index (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't make log failures fatal (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Initialize crypto_id of allocated_banks to HASH_ALGO__LAST (Jerry Snitselaar) [1815609 1795739] - [include] efi/tpm: Don't access event->count when it isn't mapped (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Return -EINVAL when determining tpm final events log size fails (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Fix sanity check of unsigned tbl_size being less than zero (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Only set 'efi_tpm_final_log_size' after successful event log parsing (Jerry Snitselaar) [1815609 1795739] - [firmware] efi/tpm: Don't traverse an event log with no events (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Don't duplicate events from the final event log in the TCG2 log (Jerry Snitselaar) [1815609 1795739] - [firmware] Abstract out support for locating an EFI config table (Jerry Snitselaar) [1815609 1795739] - [firmware] efi: Attempt to get the TCG2 event log in the boot stub (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Append the final event log to the TPM event log (Jerry Snitselaar) [1815609 1795739] - [firmware] tpm: Reserve the TPM final events table (Jerry Snitselaar) [1815609 1795739] - [char] tpm: Abstract crypto agile event size calculations (Jerry Snitselaar) [1815609 1795739] - [netdrv] bnx2x: Fix accounting of vlan resources among the PFs (Manish Chopra) [1791026] - [netdrv] bnx2x: Use appropriate define for vlan credit (Manish Chopra) [1791026] - [netdrv] bnx2x: Fix logic to get total no. of PFs per engine (Manish Chopra) [1791026] - [netdrv] bnx2x: Do not handle requests from VFs after parity (Manish Chopra) [1791026] - [netdrv] qed: remove redundant assignment to variable 'rc' (Manish Chopra) [1791024] - [netdrv] qed: Fix use after free in qed_chain_free (Manish Chopra) [1791024] - [netdrv] qed: Fix race condition between scheduling and destroying the slowpath workqueue (Manish Chopra) [1791024] - [netdrv] qede: remove some unused code in function qede_selftest_receive_traffic (Manish Chopra) [1791024] - [netdrv] qede: Fix race between rdma destroy workqueue and link change event (Manish Chopra) [1791024] - [netdrv] qed: Fix timestamping issue for L2 unicast ptp packets (Manish Chopra) [1791024] - [netdrv] qed: Remove set but not used variable 'p_link' (Manish Chopra) [1791024] - [netdrv] qed: Fix a error code in qed_hw_init() (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 debug features (Manish Chopra) [1791024] - [netdrv] qed: rt init valid initialization changed (Manish Chopra) [1791024] - [netdrv] qed: Debug feature: ilt and mdump (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Add fw overlay feature (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 HSI changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 iscsi/fcoe changes (Manish Chopra) [1791024] - [netdrv] qed: Add abstraction for different hsi values per chip (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Additional ll2 type (Manish Chopra) [1791024] - [netdrv] qed: Use dmae to write to widebus registers in fw_funcs (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Parser offsets modified (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Queue Manager changes (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Expose new registers and change windows (Manish Chopra) [1791024] - [netdrv] qed: FW 8.42.2.0 Internal ram offsets modifications (Manish Chopra) [1791024] - [netdrv] qede: Disable hardware gro when xdp prog is installed (Manish Chopra) [1791024] - [netdrv] qed: remove redundant assignments to rc (Manish Chopra) [1791024] - [netdrv] qed: Optimize execution time for nvm attributes configuration (Manish Chopra) [1791024] - [netdrv] qed: fix spelling mistake "queuess" -> "queues" (Manish Chopra) [1791024] - [fs] fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info() (Bhupesh Sharma) [1832060] {CVE-2020-10732} - [tty] vt: selection, push sel_lock up (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, push console lock down (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [staging] staging: speakup: refactor to use existing code in vt (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: allow functions to be called from inside kernel (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: don't reinvent min() (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection, close sel_buffer race (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: fix broken display when running aptitude (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: selection: take screen contents from uniscr if available (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [tty] vt: preserve unicode values corresponding to screen characters (Chris von Recklinghausen) [1831037] {CVE-2020-8648} - [input] Input: add safety guards to input_set_keycode() (Chris von Recklinghausen) [1828223] {CVE-2019-20636}- [scsi] scsi: bnx2i: fix potential use after free (Nilesh Javali) [1792114] - [tools] perf python: Fix clang detection to strip out options passed in $CC (Michael Petlan) [1818841] - [tools] libperf: Add counting example (Michael Petlan) [1818841] - [tools] perf report/top TUI: Fix title line formatting (Michael Petlan) [1818841] - [tools] perf probe: Do not depend on dwfl_module_addrsym() (Michael Petlan) [1818841] - [tools] perf probe: Fix to delete multiple probe event (Michael Petlan) [1818841] - [tools] perf parse-events: Fix reading of invalid memory in event parsing (Michael Petlan) [1818841] - [tools] perf python: Fix clang detection when using CC=clang-version (Michael Petlan) [1818841] - [tools] perf map: Fix off by one in strncpy() size argument (Michael Petlan) [1818841] - [tools] tools: Let O= makes handle a relative path with -C option (Michael Petlan) [1818841] - [tools] tools: Fix off-by 1 relative directory includes (Michael Petlan) [1818841] - [tools] perf jevents: Fix leak of mapfile memory (Michael Petlan) [1818841] - [tools] perf bench: Clear struct sigaction before sigaction() syscall (Michael Petlan) [1818841] - [tools] perf bench futex-wake: Restore thread count default to online CPU count (Michael Petlan) [1818841] - [tools] perf top: Fix stdio interface input handling with glibc 2.28+ (Michael Petlan) [1818841] - [tools] perf diff: Fix undefined string comparision spotted by clang's -Wstring-compare (Michael Petlan) [1818841] - [tools] perf symbols: Don't try to find a vmlinux file when looking for kernel modules (Michael Petlan) [1818841] - [tools] perf bench: Share some global variables to fix build with gcc 10 (Michael Petlan) [1818841] - [tools] perf parse-events: Use asprintf() instead of strncpy() to read tracepoint files (Michael Petlan) [1818841] - [tools] perf env: Do not return pointers to local variables (Michael Petlan) [1818841] - [tools] perf tests bp_account: Make global variable static (Michael Petlan) [1818841] - [tools] perf annotate: Fix segfault with source toggle (Michael Petlan) [1818841] - [tools] perf annotate: Align struct annotate_args (Michael Petlan) [1818841] - [tools] perf annotate: Simplify disasm_line allocation and freeing code (Michael Petlan) [1818841] - [tools] perf annotate: Remove privsize from symbol__annotate() args (Michael Petlan) [1818841] - [tools] perf probe: Check return value of strlist__add() for -ENOMEM (Michael Petlan) [1818841] - [tools] perf config: Document missing config options (Michael Petlan) [1818841] - [tools] perf annotate: Fix perf config option description (Michael Petlan) [1818841] - [tools] perf annotate: Prefer cmdline option over default config (Michael Petlan) [1818841] - [tools] perf annotate: Make perf config effective (Michael Petlan) [1818841] - [tools] perf config: Introduce perf_config_u8() (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-nr-samples for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate: Fix --show-total-period for tui/stdio2 (Michael Petlan) [1818841] - [tools] perf annotate/tui: Re-render title bar after switching back from script browser (Michael Petlan) [1818841] - [tools] perf arch powerpc: Sync powerpc syscall.tbl with the kernel sources (Michael Petlan) [1818841] - [tools] perf auxtrace: Add auxtrace_record__read_finish() (Michael Petlan) [1818841] - [tools] perf arm-spe: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf cs-etm: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-bts: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf intel-pt: Fix endless record after being terminated (Michael Petlan) [1818841] - [tools] perf test: Fix test trace+probe_vfs_getname.sh on s390 (Michael Petlan) [1818841] - [tools] perf bpf: Remove bpf/ subdir from bpf.h headers used to build bpf events (Michael Petlan) [1818841] - [tools] perf llvm: Fix script used to obtain kernel make directives to work with new kbuild (Michael Petlan) [1818841] - [tools] perf tools: Add arm64 version of get_cpuid() (Michael Petlan) [1818841] - [tools] perf trace: Resolve prctl's 'option' arg strings to numbers (Michael Petlan) [1818841] - [tools] perf beauty prctl: Export the 'options' strarray (Michael Petlan) [1818841] - [tools] perf maps: Move kmap::kmaps setup to maps__insert() (Michael Petlan) [1818841] - [tools] perf maps: Fix map__clone() for struct kmap (Michael Petlan) [1818841] - [tools] perf maps: Mark ksymbol DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf maps: Mark module DSOs with kernel type (Michael Petlan) [1818841] - [tools] perf symbols: Convert symbol__is_idle() to use strlist (Michael Petlan) [1818841] - [tools] perf symbols: Update the list of kernel idle symbols (Michael Petlan) [1818841] - [tools] perf stat: Don't report a null stalled cycles per insn metric (Michael Petlan) [1818841] - [tools] perf probe: Add ustring support for perf probe command (Michael Petlan) [1818841] - [tools] perf: Make perf able to build with latest libbfd (Michael Petlan) [1818841] - [tools] perf test: Fix test case Merge cpu map (Michael Petlan) [1818841] - [tools] perf parse: Copy string to perf_evsel_config_term (Michael Petlan) [1818841] - [tools] perf parse: Refactor 'struct perf_evsel_config_term' (Michael Petlan) [1818841] - [tools] perf: Use consistent include paths for libbpf (Michael Petlan) [1818841] - [tools] perf beauty sockaddr: Fix augmented syscall format warning (Michael Petlan) [1818841] - [tools] perf/ui/gtk: Fix gtk2 build (Michael Petlan) [1818841] - [tools] perf ui gtk: Add missing zalloc object (Michael Petlan) [1818841] - [tools] perf tools: Use define api.pure full instead of pure-parser (Michael Petlan) [1818841] - [tools] perf tools: Support --prefix/--prefix-strip (Michael Petlan) [1818841] - [tools] perf report: Clarify in help that --children is default (Michael Petlan) [1818841] - [tools] tools build: Fix test-clang.cpp with Clang 8+ (Michael Petlan) [1818841] - [tools] perf clang: Fix build with Clang 9 (Michael Petlan) [1818841] - [tools] tools lib: Fix builds when glibc contains strlcpy() (Michael Petlan) [1818841] - [tools] perf report/top: Make 'e' visible in the help and make it toggle showing callchains (Michael Petlan) [1818841] - [tools] perf report/top: Do not offer annotation for symbols without samples (Michael Petlan) [1818841] - [tools] perf report/top: Allow pressing hotkeys in the options popup menu (Michael Petlan) [1818841] - [tools] tools ui popup: Allow returning hotkeys (Michael Petlan) [1818841] - [tools] perf hists browser: Allow passing an initial hotkey (Michael Petlan) [1818841] - [tools] perf report/top: Add 'k' hotkey to zoom directly into the kernel map (Michael Petlan) [1818841] - [tools] perf hists browser: Generalize the do_zoom_dso() function (Michael Petlan) [1818841] - [tools] perf report/top: Improve toggle callchain menu option (Michael Petlan) [1818841] - [tools] perf report/top: Add menu entry for toggling callchain expansion (Michael Petlan) [1818841] - [tools] perf report/top: Make ENTER consistently bring up menu (Michael Petlan) [1818841] - [tools] perf hists browser: Restore ESC as "Zoom out" of DSO/thread/etc (Michael Petlan) [1818841] - [tools] tools lib api fs: Fix gcc9 stringop-truncation compilation error (Michael Petlan) [1818841] - [tools] libperf: Add man pages (Michael Petlan) [1818841] - [tools] libperf: Move to tools/lib/perf (Michael Petlan) [1818841] - [tools] perf tests bp_signal: Show expected versus obtained values (Michael Petlan) [1818841] - [tools] perf sched timehist: Add support for filtering on CPU (Michael Petlan) [1818841] - [tools] perf record: Adapt affinity to machines with #CPUs > 1K (Michael Petlan) [1818841] - [tools] perf mmap: Declare type for cpu mask of arbitrary length (Michael Petlan) [1818841] - [tools] tools bitmap: Implement bitmap_equal() operation at bitmap API (Michael Petlan) [1818841] - [x86] perf/amd/uncore: Replace manual sampling check with CAP_NO_INTERRUPT flag (Michael Petlan) [1818841] - [x86] perf/x86/intel: Fix inaccurate period in context switch for auto-reload (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add missing L2 misses event spec to AMD Family 17h's event map (Michael Petlan) [1818841] - [x86] perf/x86/msr: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/cstate: Add Tremont support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Add Elkhart Lake support (Michael Petlan) [1818841] - [include] kernel/events: Add a missing prototype for arch_perf_update_userpage() (Michael Petlan) [1818841] - [x86] perf/x86/amd: Add support for Large Increment per Cycle Events (Michael Petlan) [1818841] - [x86] perf/x86/amd: Constrain Large Increment per Cycle events (Michael Petlan) [1818841] - [x86] perf/x86/intel/rapl: Add Comet Lake support (Michael Petlan) [1818841] - [x86] perf/x86/intel: Explicitly include asm/io.h to use virt_to_phys() (Michael Petlan) [1818841] - [x86] x86/cpu: Add Elkhart Lake to Intel family (Michael Petlan) [1818841] - [x86] x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode (David Arcari) [1837490] - [x86] x86/intel: Disable HPET on Intel Ice Lake platforms (David Arcari) [1837490] - [x86] x86/timer: Force PIT initialization when !X86_FEATURE_ARAT (David Arcari) [1837490] - [x86] x86/timer: Skip PIT initialization on modern chipsets (David Arcari) [1837490] - [x86] x86/apic: Rename 'lapic_timer_frequency' to 'lapic_timer_period' (David Arcari) [1837490] - [x86] x86/apic: Unify duplicated local apic timer clockevent initialization (David Arcari) [1837490] - [vhost] vsock: kick send_pkt worker once device is started (Stefano Garzarella) [1835651] - [tools] redhat: update kvm/{arm, arm64} headers in tools (Gavin Shan) [1833572] - [tools] kvm: selftests: aarch64: Use stream when given (Gavin Shan) [1833572] - [virt] kvm: arm64: Fix 32bit PC wrap-around (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v4: Initialize GICv4.1 even in the absence of a virtual ITS (Gavin Shan) [1833572] - [arm64] kvm: arm64: Save/restore sp_el0 as part of __guest_enter (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-its: Fix memory leak on the error path of vgic_add_lpi() (Gavin Shan) [1833572] - [virt] kvm: arm64: vgic-v3: Retire all pending LPIs on vcpu destroy (Gavin Shan) [1833572] - [virt] kvm: arm: vgic-v2: Only use the virtual state when userspace accesses pending bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Only use the virtual state when userspace accesses enable bits (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Synchronize the whole guest on GIC{D, R}_I{S, C}ACTIVER read (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Forbid 64bit functions for 32bit guests (Gavin Shan) [1833572] - [virt] kvm: arm64: psci: Narrow input registers when using 32bit functions (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Update effective affinity of virtual SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling (Gavin Shan) [1833572] - [virt] kvm: arm: vgic: Fix limit condition when writing to GICD_I[CS]ACTIVER (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Expose HW-based SGIs in debugfs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Eagerly vmap vPEs (Gavin Shan) [1833572] - [arm64] kvm: arm64: gicv4.1: Allow non-trapping WFI when using HW SGIs (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI property setup (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Reload VLPI configuration on distributor enable/disable (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add VSGI allocation/teardown (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Plumb SGI implementation selection in the distributor (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Move doorbell management to the GICv4 abstraction layer (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Allow SGIs to switch between HW and SW interrupts (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb set_vcpu_affinity SGI callbacks (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Add direct injection capability to SGI registers (Gavin Shan) [1833572] - [virt] kvm: arm64: gicv4.1: Let doorbells be auto-enabled (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb get/set_irqchip_state SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb mask/unmask SGI callbacks (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Add initial SGI configuration (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Plumb skeletal VSGI irqchip (Gavin Shan) [1833572] - [irqchip] gic-v3: Move irq_domain_update_bus_token to after checking for NULL domain (Gavin Shan) [1833572] - [kernel] irqchip/gic-v4: Use Inner-Shareable attributes for virtual pending tables (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Map the ITS SGIR register page (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Advertise support v4.1 to KVM (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion betwen invalidations on the same RD (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Wait for completion of redistributor's INVALL operation (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Ensure mutual exclusion between vPE affinity change and RD access (Gavin Shan) [1833572] - [irqchip] gic-v4.1: Skip absent CPUs while iterating over redistributors (Gavin Shan) [1833572] - [irqchip] gic-v3: Use SGIs without active state if offered (Gavin Shan) [1833572] - [irqchip] gic-v4: Provide irq_retrigger to avoid circular locking dependency (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Probe ITS page size for all GITS_BASERn registers (Gavin Shan) [1833572] - [irqchip] gic-v3-its: Fix access width for gicr_syncr (Gavin Shan) [1833572] - [documentation] kvm: arm/arm64: Always capitalize ITS (Gavin Shan) [1833572] - [nvme] nvme-pci: align io queue count with allocted nvme_queue in nvme_probe (Gopal Tiwari) [1837824] - [rtc] rtc: cmos: Stop using shared IRQ (Pingfan Liu) [1829667]- [netdrv] enic: prevent waking up stopped tx queues over watchdog reset (Govindarajulu Varadarajan) [1797807] - [kernel] crash_core: Increase crashkernel=auto size for x86_64 & S390 (Kairui Song) [1746644] - [netdrv] net: iavf: reject unsupported coalescing params (Stefan Assmann) [1781341] - [netdrv] iavf: Enable support for up to 16 queues (Stefan Assmann) [1781341] - [netdrv] iavf: use tc_cls_can_offload_and_chain0() instead of chain check (Stefan Assmann) [1781341] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781341] - [netdrv] i40e: Remove unneeded conversion to bool (Stefan Assmann) [1781334] - [netdrv] net: i40e: reject unsupported coalescing params (Stefan Assmann) [1781334] - [netdrv] intel: Replace zero-length array with flexible-array member (Stefan Assmann) [1781334] - [netdrv] i40e: Fix the conditional for i40e_vc_validate_vqs_bitmaps (Stefan Assmann) [1781334] - [netdrv] i40e: fix spelling mistake "to" -> "too" (Stefan Assmann) [1781334] - [netdrv] i40e: Set PHY Access flag on X722 (Stefan Assmann) [1781334] - [netdrv] i40e: Fix virtchnl_queue_select bitmap validation (Stefan Assmann) [1781334] - [netdrv] i40e: Removing hung_queue variable to use txqueue function parameter (Stefan Assmann) [1781334] - [netdrv] treewide: Use sizeof_field() macro (Stefan Assmann) [1781334] - [netdrv] i40e: need_wakeup flag might not be set for Tx (Stefan Assmann) [1781334] - [netdrv] i40e: Fix receive buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1781334] - [block] null_blk: Fix changing the number of hardware queues (Ming Lei) [1835602] - [block] block: reset mapping if failed to update hardware queue count (Ming Lei) [1835602] - [block] block: alloc map and request for new hardware queue (Ming Lei) [1835602] - [block] block: save previous hardware queue count before udpate (Ming Lei) [1835602] - [block] block: free both rq_map and request (Ming Lei) [1835602] - [block] blk-mq: Fix a recently introduced regression in blk_mq_realloc_hw_ctxs() (Ming Lei) [1835602] - [documentation] Documentation: admin-guide: PM: Add intel_idle document (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST on server systems (Steve Best) [1485545] - [idle] intel_idle: Add module parameter to prevent ACPI _CST from being used (Steve Best) [1485545] - [idle] intel_idle: Allow ACPI _CST to be used for selected known processors (Steve Best) [1485545] - [idle] intel_idle: Use ACPI _CST for processor models without C-state tables (Steve Best) [1485545] - [idle] intel_idle: Refactor intel_idle_cpuidle_driver_init() (Steve Best) [1485545] - [infiniband] RDMA/uverbs: Move IB_EVENT_DEVICE_FATAL to destroy_uobj (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Do not discard the IB_EVENT_DEVICE_FATAL event (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix double put of resource (Kamal Heib) [1786608] - [infiniband] IB/core: Fix potential NULL pointer dereference in pkey cache (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix another case where pq is left on waitlist (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix race between destroy and release FD object (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info() (Kamal Heib) [1786608] - [infiniband] RDMA/core: Fix overwriting of uobj in case of error (Kamal Heib) [1786608] - [infiniband] RDMA/core: Prevent mixed use of FDs between shared ufiles (Kamal Heib) [1786608] - [infiniband] RDMA/uverbs: Fix a race with disassociate and exit_mmap() (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix potential siw_mem refcnt leak in siw_fastreg_mr() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix an error check in cm_alloc_id_priv() (Kamal Heib) [1786608] - [net] svcrdma: Fix trace point use-after-free race (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Call kobject_put() when kobject_init_and_add() fails (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Set sys_image_guid to be aligned with HW IB devices (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Use scnprintf() for avoiding potential buffer overflow (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Remove kobj from hfi1_devdata (Kamal Heib) [1786608] - [infiniband] IB/rdmavt: Delete unused routine (Kamal Heib) [1786608] - [infiniband] RDMA/rxe: Fix configuration of atomic queue pair attributes (Kamal Heib) [1786608] - [infiniband] IB/hfi1: Fix memory leaks in sysfs registration and unregistration (Kamal Heib) [1819051 1786608] - [net] svcrdma: Fix leak of transport addresses (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Suppress uninitialized var warning (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Add missing locking around id.state in cm_dup_req_handler (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Read id.state under lock when doing pr_debug() (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Remove a race freeing timewait_info (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix checking for allowed duplicate listens (Kamal Heib) [1786608] - [infiniband] RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id() (Kamal Heib) [1786608] - [net] svcrdma: Fix double svc_rdma_send_ctxt_put() in an error path (Kamal Heib) [1786608] - [infiniband] RDMA/core: Remove the duplicate header file (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix passive connection establishment (Kamal Heib) [1786608] - [infiniband] RDMA/ucma: Put a lock around every call to the rdma_cm layer (Kamal Heib) [1786608] - [infiniband] RDMA/siw: Fix setting active_{speed, width} attributes (Kamal Heib) [1798583 1786608] - [scsi] qla2xxx: Update driver version to 10.01.00.25.08.3-k (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Delete all sessions before unregister local nvme port (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: make 1-bit bit-fields unsigned int (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix MPI failure AEN (8200) handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Move free of fcport out of interrupt context (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix I/Os being passed down when FC device is being deleted (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Set Nport ID for N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Handle NVME status iocb correctly (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove restriction of FC T10-PI and FC-NVMe (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Serialize fc_port alloc in N2N (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix NPIV instantiation after FW dump (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Force semaphore on flash validation failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: add more FW debug information (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Update BPM enablement semantics (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Return appropriate failure through BSG Interface (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add 16.0GT for PCI String (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use QLA_FW_STOPPED macro to propagate flag (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add fixes for mailbox command (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix control flags for login/logout IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Save rscn_gen for new fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use correct ISP28xx active FW region (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use endian macros to assign static fields in fwdump header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add endianizer macro calls to fc host stats (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Improve readability of the code that handles qla_flt_header (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix mtcp dump collection failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck session in GNL (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix RIDA Format-2 (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Consolidate fabric scan (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Correct fcport flags handling (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix stuck login session using prli_pend_timer (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use common routine to free fcport struct (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add D-Port Diagnostic reason explanation logs (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix update_fcport for current_topology (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Cleanup unused async_logout_done (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Retry PLOGI on FC-NVMe PRLI failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix fabric scan hang (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Remove defer flag to indicate immeadiate port loss (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Add debug dump of LOGO payload and ELS IOCB (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't defer relogin unconditonally (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Send Notify ACK after N2N PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Configure local loop for N2N target (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Don't call qlt_async_event twice (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Allow PLOGI in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Change discovery state before PLOGI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Drop superfluous INIT_WORK of del_work (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Initialize free_work before flushing it (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Use explicit LOGO in target mode (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: unregister ports after GPN_FT failure (Nilesh Javali) [1789526] - [scsi] scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan (Nilesh Javali) [1789526] - [s390] s390/kexec_file: fix initrd location for kdump kernel (Lianbo Jiang) [1835097]- [sound] ALSA: ALSA - update sound configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: Use the legacy HDA driver as default for Intel DSP platforms" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: IPC: dai-intel: move ALH declarations in header file (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add core id to sof_ipc_comp (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: bump the version (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add alac & ape decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: Add wma decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add wma codec profiles (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove X86 dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI || OF (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: depend on ACPI (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix regmap dependencies and align with other serial links (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix kconfig help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Kconfig: fix help format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless prototypes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: Switch to use fwnode_property_count_uXX() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: don't program ports when a stream that has not been prepared (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix support for multiple Slaves on the same link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: do not update parameters during DISABLED-PREPARED transition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: only prepare stream when it is configured (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: update state machine and add state checks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Ensure that code is inside the code blocks (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: fix stream.rst markup warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: Documentation: soundwire: Add documentation for multi link (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove redundant pr_err traces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove unnecessary variable initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix disable sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix bad unlock balance (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: use sdw_write instead of update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix PDI/stream mapping for Bulk (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus_type: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: export helpers to find row and column values (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: check first if Slaves become UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: Add read_only_wordlength flag to port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix device number leak on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: track unattach_request to handle all init sequences (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add initialization_complete definition (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add enumeration_complete structure (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: sdw_slave: add probe_complete structure and new fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove bitfield for unique_id, use u8 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: make stream name a const pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Add compute_params callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: provide correct return value on error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add helper macros for devID fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: don't treat CMD_IGNORED as error on ClockStop (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add clock stop helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix io error when processing alert event (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: avoid multiple assignments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: disable pm_runtime in sdw_slave_delete (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add helper to clear Slave status to UNATTACHED (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: write Slave Device Number without runtime_pm (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: add PM/no-PM versions of read/write functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: improve dynamic debug comments for enumeration (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: split handling of Device0 events (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with initialization_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with enumeration_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix race condition with probe_complete signaling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: ignore uniqueID when irrelevant (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: add helper to extract slave ID (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix scanf format (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: slave: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: core: add device tree support for slave devices (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: set initial value to port_status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: clear FIFO to avoid pop noise issue on playback start (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: multi-link support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: commit changes in the exit_reset() sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove automatic command retries (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove PREQ_DELAY assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: enable NORMAL operation in cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: reorder MCP_CONFIG settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: make SSP interval programmable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: move clock/SSP related inits to dedicated function (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: merge routines to clear/set bits (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: mask Slave interrupt before stopping clock (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix a io timeout issue in S3 test (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add clock_stop/restart routines (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: handle error cases with CONFIG_UPDATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: add interface to check clock status (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: simplifiy cdns_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: s/update_config/config_update (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: fix kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove useless variable incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: update kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: handle multiple status reports per Slave (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove config update for interrupt setting (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log more useful information during timeouts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: clear interrupt status before enabling interrupt (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: filter out bad interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make clock stop exit configurable on init (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: free all resources on hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add sdw_stream_setup helper for .startup callback (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add trigger support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add prepare support in sdw dai driver (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: rename res field as link_res (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix factor of two in MCLK handling (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update stream callbacks for hwparams/free stream operations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: update interfaces between ASoC and SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: use correct header for io calls (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add kernel module parameter to filter out links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: add checks on link numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: filter SoundWire controller device search (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel_init: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add helper for initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix intel_register_dai PDI offsets and numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: add flag for interrupt enable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove playback/capture stream_name (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove DAI_ID_RANGE definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add missing headers for cross-compilation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: handle disabled links (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add hw_reset capability in debugfs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel/cadence: fix startup sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: improve PDI allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: don't filter out PDI0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence/intel: simplify PDI/port mapping (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add debugfs register dump (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: move shutdown() callback and don't export symbol (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix alignment issues in header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: add kernel parameter to override interrupt mask (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix divider setting in clock register (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: make use of mclk_freq property (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use firmware defaults for frame shape (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: revisit interrupt settings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix definitions for INTSTAT0/1 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix register definition for SLAVE_STATE (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: simplify bus clash interrupt clear (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: check the number of bidir PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: log Slave status mask on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: use rate_limited dynamic debug (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: balance parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence_master: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cdns: Fix compilation error on arm64 (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: cadence: remove empty line after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: read mclk_freq property from firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix channel number reported by hardware (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: prevent possible dereference in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: remove BIOS work-arounds (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: set dai min and max channels correctly (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: Intel: add log for number of PCM and PDM PDIs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add new mclk_freq field for properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: include mod_devicetable.h to avoid compiling warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename/clarify MIPI DisCo properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: clarify comment (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: fix clock stop modes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi-disco: remove master_count property for masters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove master data port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add port-related definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: wrap macro argument in parenthesis (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: rename 'freq' fields (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix master/link error (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: mipi_disco: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix out of boundary access on port properties (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add a blank line between functions (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix more typos (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: more alignment fixes (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove empty line before/after braces (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: add missing newlines in dynamic debug logs (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: stream: remove useless initialization of local variable (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix boolean comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: protect macro parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: intel: fix inversion in devm_kcalloc parameters (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove spurious newline (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix boolean comparisons (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: remove useless parentheses (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix typos in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: bus: fix alignment issues (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: remove useless initializations (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: fix SPDX license for header files (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: Add SNDRV_PCM_INFO_BATCH flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support for ALAC and APE decoders (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to wma decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: only enable dais from device tree (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support for alac and ape configs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to wma config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: pass codec profile to q6asm_open_write (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6routing: remove default routing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Allow the MCDT driver to build into modules (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: common: Silence duplicate parse error messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: handle soundwire stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Update dependencies for Arizona machine drivers (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soundwaire: qcom: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: soundwire: qcom: add support for SoundWire controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Fix build after removal of DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Silence warnings during deferred probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: Restore devm_ioremap() alignment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: set bus width to data width for monaural data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix "status check failed" spam for multi-SSI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Don't treat master SSI in multi SSI setup as parent (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix parent SSI start/stop in multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Fix HDMI channel mapping for multi-SSI mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: i2s: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sai probe (Jaroslav Kysela) [1797509] - [sound] ALSA: soc/stm/stm32_sub_sai: Add missing '\n' in log messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: Add missing cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix regmap status check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: improve error management on probe deferral (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: manage error when getting reset controller (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Remove unused dev from codec struct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: tegra_wm8903: Support DAPM events for built-in microphone (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: remove redundant assignment to variable ret (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for platforms using UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: Add udma-pcm platform driver for UDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-spdif: remove redundant dev_err message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: zte: zx-tdm: remove redundant variables dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mxs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: use SND_SOC_DAPM_PINCTRL in TDM out (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: apply some refactors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: pull TDM GPIO pins down when probed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219: add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: support HDMI jack reporting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4770 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add support for the JZ4760 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Avoid passing enum as match data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Add local dev variable in probe function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Use of_device_get_match_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740-i2s: Fix divider written at incorrect offset in register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: img: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card-utils: use for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Add support for codec2codec DAI links (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Fix pointer cast warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: brcm: Add DSL/PON SoC audio driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mchp-i2s-mcc: make signed 1 bit bitfields unsigned (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Allow I2S wake event after ACP is powerd On (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: clean up two indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Clear format bits before setting them (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Adding TDM support in hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix button configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: acp3x: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix compile warning of argument type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: amd: Add DMIC switch capability to machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Add machine driver for Raven based platform (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Fix potential NULL dereference (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Alpha S (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply async workaround for Scarlett 2i4 2nd gen (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett 2i2 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use pcm_for_each_format() macro for PCM format iterations (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing braces in some struct inits (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add connector notifier delegation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Check mapping at creating connector controls, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add mixer workaround for TRX40 and co (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create jack controls for PCM terminals (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't override ignore_ctl_error value from the map (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter error from connector kctl ops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix mixer controls' USB interface for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Parse source ID of UAC2 effect unit (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: audio-v2: Add uac2_effect_unit_descriptor definition (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Don't create a mixer element with bogus volume range (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix case when USB MIDI interface has more than one extra endpoint descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-midi: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix POD HD500 audio playback (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Fix endless MIDI read loop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Filter out unsupported sample rates on Focusrite devices (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for Presonus Studio 1810c (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add support for MOTU MicroBook IIc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Inform devices that need delayed registration (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add delayed_register option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Rewrite registration quirk handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Create a registration quirk for Kingston HyperX Amp (0951:16d8) (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: fix address map representation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove some unnecessary NULL checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: remove unused headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: fix High Accuracy Buck enable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Remove set but not unused variable 'hph_comp_ctrl7' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm0010: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8960: Fix wrong clock after suspend & resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: remove soundwire stream handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: wsa881x: request gpio direction before setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wsa881x: mark read_only_wordlength flag (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8974: remove unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Use scnprintf() for the limited buffer output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas571x: disable regulators on failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fixed incorrect amp_level setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for ISENSE and VSENSE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add entries for the TAS2563 audio amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Add support for digital volume control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VAG power-on handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify some structure to be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply ac97 fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm89xx: Add missing dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix unmet dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply misc fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau7118: Fix Kconfig warning without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply I2C fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix SND_SOC_ALL_CODECS imply SPI fallout (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682-sdw: fix 'defined but not used' pm functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Make rt5682_clock_config static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: move DAI clock registry to I2S mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC delay (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add a property for DMIC clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: remove noisy debug messages (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the random recording noise of headset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Fine tune the HP performance in soundwire mode (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the DAC1 volume setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Revise the function name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the soundwire support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Use imply for SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add CCF usage for providing I2S clks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Enable PLL2 function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: Add the field "is_sdw" of private data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5659: remove redundant assignment to variable idx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Add platform-data for Medion E1239T (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: use slot and rx_mask to configure stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add set_tdm_slot() support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: fix typo for bypass boost control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rl6231: Add new supports on rl6231 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: Make RK3328 GPIO_MUTE control explicit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660: make spdxcheck.py happy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: MT6660 update to 1.0.8_G (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: Add ACPI HID MAX98360A (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98357a: move control of SD_MODE to DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: hdac_hdmi: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs4270: pull reset GPIO low then high (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: allow operation without i915 gfx (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: fix ordering bug in resume flow (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add parameter to control SoundWire clock stop quirks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: initial SoundWire machine driver autodetect (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add SoundWire stream config/free callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Account for compress streams when servicing IRQs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix stream cleanup on hw free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: clear the IPC ack bit after FW_PURGE done (Jaroslav Kysela) [1797509] - [sound] ALSA: Asoc: SOF: Intel: hda: check SoundWire wakeen interrupt in irq thread (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: add WAKEEN interrupt support for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: merge IPC, stream and SoundWire interrupt handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add SoundWire configuration interface (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Expose SDnFMT helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix probe point getter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pcm: skip DMA buffer pre-allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Turn "firmware boot complete" message into a dbg message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: check ipc return value before data copy (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: sof-audio: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Do not reset hw_params for streams that ignored suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: audio: Add helper to check if only D0i3 streams are active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add i.MX8QM device descriptor (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove SOF_IPC_EXT_DMA_BUFFER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make sof_ipc_ext_data enum more rigid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix uninitialised "work" with VirtIO (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: (cosmetic) use for_each_pcm_streams() in sof_dai_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: connect dai widget to all cpu-dais (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove unnecessary ROM IPC filter function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: add stream capability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-ctrl: add reset cycle before parsing capabilities (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: call codec wake at chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: do not leave clock gating off upon error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: disable SoundWire interrupts on suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Improve DSP state logging (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use snd_sof_dsp_set_power_state() op (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Allow trace DMA in S0 when DSP is in D0I3 for debug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Amend the DSP state transition diagram (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: cnl: Implement feature to support DSP D0i3 in S0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: remove unnecessary waitq before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add min/max channels for SSP on Baytrail/Broadwell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: remove SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix Kconfig indentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Add ops for i.MX8QM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Rename i.MX8 platform to i.MX8X (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Provide probe debugfs support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Move DSP power state transitions to platform-specific ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Introduce DSP power states (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pm: Unify suspend/resume routines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Add Probe compress CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Generic probe compress operations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Implement Probe IPC API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: cml_rt1011_rt5682: use for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: haswell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: BXT: switch pcm512x based boards to sof_pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: CHT: add support for pcm512x boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi-intel-cml-match: remove useless 'rt1308_2_adr' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add support for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Add rt1015 speaker amp support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: drop reverse deps for SND_HDA_CODEC_HDMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_sdw: Add Volteer support with RT5682 SNDW helper function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: add sof_sdw machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match table for TGL RT5682 SoundWire driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: soc-acpi: update topology and driver name for SoundWire platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98373-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: expand description of _ADR-based devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Await purge request ack on CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Allow for ROM init retry on CNL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skylake: (cosmetic) remove redundant variable initialisations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Enable codec wakeup during chip init (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Select hda configuration permissively (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Remove superfluous chip initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Shield against no-NHLT configurations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_da7219_max98373: Add speaker switch (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_da7219_max98373: Add support for max98360a speaker amp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: disable route checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - add no-HDMI cases to generic HDA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Make glk+rt5682 echo ref dynamic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: don't use GFP_ATOMIC for machine driver contexts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: Revert back SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Remove ignore_suspend flag from SSP0 dai link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: Revert SSP0 link to use dummy components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: (cosmetic) simplify structure member access (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Fix uninitialized variable compiler warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: return error codes when an error occurs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: use asoc_rtd_to_cpu() / asoc_rtd_to_codec() macro for DAI pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: make HDMI optional for all platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_pcm512x: add support for SOF platforms with pcm512x (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: mrfld: fix incorrect check on p->sink (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Check drv->lock is locked in sst_fill_and_send_cmd_unlocked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: atom: Take the drv->lock mutex before calling sst_send_slot_map() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for string truncation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Allow setting preallocation again for x86 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix endianness issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_dai_config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of pcm_new_ver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Add missing memory checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check soc_tplg_add_route return value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_*_create (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value of soc_tplg_create_tlv (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: use name_prefix for new kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Perform component check upfront (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix regwmask (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Remove dapm_connect_dai_link_widgets helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Move error message to avoid some duplication (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: select sleep_state when initializing PINCTRL widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: connect virtual mux with default value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: fixup dapm kcontrol widget (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: revert all changes to DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: fix DAI startup/shutdown sequence (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: return proper error for get_sdw_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dai: add get_sdw_stream() callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: export DPCM runtime update functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: allow start or stop during pause for backend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: (cosmetic) simplify dpcm_prune_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge for_each_rtd_cpu/codec_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec for soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Fix regression introducing multiple copies of DAI widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add asoc_rtd_to_cpu/codec() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Merge CPU/Codec DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add for_each_card_dapms() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: remove non plural form for_each_xxx macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: add for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc: use for_each_rtd_codecs/cpus_dai() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: disable route checks for legacy devices (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add initial support for multiple CPU DAIs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix card registration regression (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: don't use rtd->cpu_dai on for_each_rtd_cpu_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support in DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add dapm_add_valid_dai_widget helper (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Do Digital Mute for both CPU/Codec in same timing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check DAI's activity more simply (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup dulicate handing at dpcm_fe_dai_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use snd_soc_dai_get_pcm_stream() at dpcm_set_fe_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add dpcm_fe_dai_cleanup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_fe_dai_close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Export parameter intersection logic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove duplicate be check from dpcm_add_paths() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use defined stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: check if cpu-dai supports a given stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Return error if the function does not support multi-cpu (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add multiple CPU DAI support for PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix state tracking error in snd_soc_component_open/close() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dpcm_path_put() to soc-pcm.c (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge dpcm_run_new/old_update() into dpcm_fe_runtime_update() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: cleanup soc_pcm_apply_msb() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dai_get_pcm_stream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dpcm: remove confusing trace in dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Fix possible buffer overflow in dpcm state sysfs output (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use for_each_pcm_streams() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: merge playback/cature_active into stream_active (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use goto and remove multi return (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_dpcm_can_be() and remove duplicate code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove snd_soc_dpcm_be_get/set_state() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_dpcm_be_digital_mute() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dpcm_get_be() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_end_walk_at_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: use dai_get_widget() at dpcm_get_be() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move dai_get_widget() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fix regression in soc_new_pcm() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: tidyup soc_pcm_open() order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: move soc_pcm_close() next to soc_pcm_open() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: adjustment for DAI member 0 reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_component_open/close() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: don't use bit-OR'ed error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add for_each_dapm_widgets() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add snd_soc_runtime_action() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: call snd_soc_dai_startup()/shutdown() once (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: ensure component names are unique (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: allow a dt node to provide several components (Jaroslav Kysela) [1797509] - [sound] ALSA: emu8000: Fix the cast to __user pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: shut up gcc-10 range warning (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_queue() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: Add missing annotation for tscm_hwdep_read_locked() (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: use KBUILD_MODNAME for struct driver.name instead of string (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: remove redundant assignment to variable err (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: fix if-statement empty body warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix invalid access for enumerated ctl items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALC245 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix unexpected init_amp override (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset mic on Asus FX505DT (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for MSI GL63 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add HP new mute led supported for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add supported new mute Led for HP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for Lenovo Carbon X1 8th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Remove now-unnecessary XPS 13 headphone noise fixups (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set principled PC Beep configuration for ALC256 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - a fake key event is triggered by running shutup (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Enable mute LED on an HP system (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of Acer N50-600 with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable headset mic of Acer X2660G with ALC662 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek: Fix pop noise on ALC225 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move ELD parse and jack reporting into update_eld() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Move runtime PM resume into hdmi_present_sense_via_verbs() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Don't use standard hda_jack for generic HDMI jacks (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Reduce hda_jack_tbl lookup at unsol event handling (Jaroslav Kysela) [1797509] - [sound] ALSA: drm/nouveau: Fix regression by audio component transition (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix without unlocked before return (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: fix race in monitor detection during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi: Add module option to disable audio component binding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on EVGA X99 Classified motherboard (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Match both PCI ID and SSID for driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Remove ASUS ROG Zenith from the blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: call runtime_allow() for all hda controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Explicitly permit using autosuspend if runtime PM is supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Keep the controller initialization even if no codecs found (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Release resources at error in delayed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Honor PM disablement in PM freeze and thaw_noirq ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Don't release card at firmware loading error (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add driver blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: remove redundant assignment to variable timeout (Jaroslav Kysela) [1797509] - [sound] ALSA: hda_codec: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Always use jackpoll helper for jack update after resume (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Skip controller resume if not needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix potential access overflow in beep helper (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: default enable CA0132 DSP support (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix endianness annotations (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Remove unnecessary cast in kfree (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: remove redundant variable capture_flag (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix PCM format assignment (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use a macro for parameter masks to reduce the needed cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Minor refactoring (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: No need to take runtime reference twice in pcm_pointer (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: dmaengine_pcm: Consider DMA cache caused delay in pointer callback (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm_dmaengine: Use pcm_for_each_format() macro for PCM format iteration (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Replace zero-length array with flexible-array member (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix superfluous snprintf() usage (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Place the plugin buffer overflow checks correctly (for 5.7) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Fix regression by buffer overflow fix (again) (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Remove WARNING from snd_pcm_plug_alloc() checks (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Simplify plugin frame size calculations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid plugin buffer overflow (Jaroslav Kysela) [1797509] - [sound] ALSA: info: remove redundant assignment to variable c (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Unlock mutex temporarily for sleeping at read/write (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Use standard macros for fixing PCM format cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add a standalone version of snd_pcm_limit_hw_rates (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More helper macros for reducing snd_pcm_format_t cast (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm.h: add for_each_pcm_streams() (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Add snd_device_get_state() helper (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Implement compress page allocation and free routines (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Expand DMA buffer information (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix sparse warning (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Fix incompatible protocol error (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: bump protocol version up to v2.1.0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove unused macro for timestamping of elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: use __u32 instead of uint32_t in uapi headers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: uapi: remove unused sof header files (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Drop unneeded typedefs (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Add linux/types.h include back (but carefully) (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: Drop linux/types.h inclusion in uapi header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Spelling s/configr/configur/ (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix for_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dpcm: tidyup for_each_dpcm_xx() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple_card_utils.h: Fix potential multiple redefinition error (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: Avoid bit fields for state flags (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Drop snd_dma_pci_data() macro (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: cs231xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: delete unused proc_fs.h include (Jaroslav Kysela) [1797509] - [sound] ALSA: media: em28xx-audio: use GFP_KERNEL for memory allocation during init (Jaroslav Kysela) [1797509] - [sound] ALSA: media: go7007: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tm6000: Clean up ALSA PCM API usages (Jaroslav Kysela) [1797509] - [sound] ALSA: media: usbtv: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: solo6x10: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: media: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1797509] - [sound] ALSA: media: tw686x: audio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: Allow const arrays for legacy resource management helpers (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: pcmcia: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pdaudiocf: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-tascam: fix corruption due to spin lock without restoration in SoftIRQ context (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix for Stanton SCS.1d (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: don't add MIDI/PCM interface when packet streaming is unavailable (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxfw: use ENXIO for not-supported cases (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire-motu: fix double unlocked 'motu->mutex' (Jaroslav Kysela) [1797509] - [sound] ALSA: fireface: fix return value in error path of isochronous resources reservation (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: loosen stream format check for MIDI conformant data channel (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: fix fallback from protocol extension into limited functionality (Jaroslav Kysela) [1797509] - [sound] ALSA: dice: add support for Alesis MasterControl (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: firewire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: emux: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sparc: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply 48kHz fixed rate playback for Jabra Evolve 65 headset (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add quirks for Line6 Helix devices fw>=2.82 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add clock validity quirk for Denon MC7000/MCX8000 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply sample rate quirk for Audioengine D1 (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix UAC2/3 effect unit parsing (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix endianess in descriptor validation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: add implicit fb quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: unlock on error in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix sync-ep altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add boot quirk for MOTU M Series (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: update old-style static const declaration (Jaroslav Kysela) [1797509] - [sound] ALSA: bcd2000: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use lower hex numbers for IDs (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Constify struct snd_usb_audio_quirk entries (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Constify snd_ratden definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix Corsair Virtuoso mixer label collision (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: fix set_format altsetting sanity check (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Adjust indentation in snd_usX2Y_hwdep_dsp_status (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usx2y: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: line6: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Focusrite Scarlett 6i6 gen1 - input handling (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix NULL dereference at parsing BADD (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Add skip_validation option (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect size check for processing/extension units (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk() (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: not submit urb for stopped endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Fix missing error check at mixer resolution test (Jaroslav Kysela) [1797509] - [sound] ALSA: ua101: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: hiface: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: caiaq: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: usb-audio: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: 6fire: Drop the dead code (Jaroslav Kysela) [1797509] - [sound] ALSA: usb: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: intel_hdmi: Remove dev_err() on platform_get_irq() failure (Jaroslav Kysela) [1797509] - [sound] ALSA: x86: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hdml-lpe-audio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: xen: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: arm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: wavefront: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sc6000: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: opti9xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3sa2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: msnd: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs423x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4236: fix error return comparison of an unsigned integer (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8328: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: isa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xlnx: Use devm_platform_ioremap_resource() in xlnx_formatter_pcm_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: xtfpga-i2s: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xilinx: xlnx_formatter_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: aio-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: txx9aclc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: sdma-pcm: Add back the flags parameter for non standard dma names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: disable rx_fifo after disable stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tegra: add a TDM configuration callback (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sunxi: sun4i-codec: remove unneeded semicolon (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix race condition in irq handler (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: retry synchronization in sync state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: manage rebind issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix possible circular locking (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: add restriction on mmap support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: fix sysclk management on shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: sai: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: dfsdm: fix 16 bits record (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm: stm32_adfsdm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sprd: sprd-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: ipc: Fix memory leak in sof_set_get_large_ctrl_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: fix memory allocation failure check on priv->pd_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: utils: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-utils: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-ops: use snd_soc_card_get_kcontrol() at snd_soc_limit_volume() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine-pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: generic-dmaengine: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: do error check after rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: dma: fix SSI9 4/5/6/7 busif dma address (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: fsi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rcar: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: core.c: add WARN_ON() on rsnd_channel_normalization() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: add missing of_node_put() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: rsnd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: siu_pcm: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: siu_pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dma-sh7760: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sh: dma-sh7760: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Use pr_warn instead of pr_warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: idma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: Rename Arndale card driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Add support for WM1811 CODEC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: arndale: Simplify DAI link initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Enable SHDN to fix headset detection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Add HDMI jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rockchip_max98090: Optionally support HDMI use case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6routing: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: lpass-platform: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa2xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: pxa-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: poodle: Spelling s/enpoints/endpoints/, s/connetion/connection/ (Jaroslav Kysela) [1797509] - [sound] ALSA: spi: pxa2xx: No need to keep pointer to platform device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pxa: mmp-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: g12a: add tohdmitx reset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: relax period size constraints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: improve depth handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: axg-fifo: fix fifo threshold setup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: meson: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mt8183: fix audio playback slowly after playback during bootup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mtk-btcvsd: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix device remove ordering (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Remove unused match variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: fix IRQ error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: kirkwood: kirkwood-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: Drop lb60 board code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: fixup simple_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: audio-graph: fixup graph_dai_link_of_dpcm() comment (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix noise when using EDMA (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Move static keyword to the front of declarations (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Fix error handling in probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: remove set but not used variable 'bclk' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_esai: Add spin lock to protect reset, stop and start (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: fix build failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: don't use snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-pcm-fiq: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: mpc5200_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: fsl_asrc_dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8958: use to simplify code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic32x4: add a check for devm_clk_get (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd9335: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Remove unused defines and variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix misuse of GENMASK macro (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt6358: support WoV (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: add missing MIX2 path for RX1/2 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add earpiece (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix RX1 selection in RDAC2 MUX (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: refine the setting of internal clock divider (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Fix error with S24_3LE format bitstream in i.MX8 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: update supported sample format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Use in(out)put_format instead of in(out)put_word_width (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_mqs: Add MQS component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for MCLKn clock gating (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8994: Add support for setting MCLK clock rate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Fix sample rate error message (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Return invalid for when bitwidth is invalid (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2562: Introduce the TAS2562 amplifier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: clean up an indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Fix snd_soc_update_bits error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tas2770: Remove unneeded read of the TDM_CFG3 register (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoc: tas2770: Fix build error without GPIOLIB (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: tas2770: add tas2770 smart PA kernel driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5663: clean up indentation issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5650: Add Kahlee platform specfic changes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Fix serial mode dependent format support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Use fixup instead of constraint for channels and formats (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: The codec does not support S32_LE (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: adau7118: Change regulators id (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Add ADAU7118 8 Channel PDM-to-I2S/TDM Converter driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add ALC controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: adau1761: Add PGA Slew time control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: au1x: dbdma2: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel_ssc_dai: Remove wrong spinlock usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel-pcm-pdc: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: ACP needs to be powered off in BIOS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Additional DAI for I2S SP instance (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix simultaneous playback and capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: Fix return value check in acp3x_dai_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: add ACP3x TDM mode support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Buffer Size instead of MAX Buffer (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Fix for Subsequent Playback issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd MMAP_INTERLEAVED Support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Added ACP3x system resume and runtime pm (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Handle ACP3x I2S-SP Interrupts (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Enabling I2S instance in DMA and DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Refactoring of DAI from DMA driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp3x: clean up indentation issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: acp-pcm-dma: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8741: Fix typo in Kconfig prompt (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Fix snd_sof_ipc_stream_posn() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: modify pre-divider for sysclk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add operation callback function for rt1015_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_sync_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: Correct DAPM handling of active widgets during shutdown (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Fix available clock counter incrementation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: don't use snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm512x: Fix unbalanced regulator enable call in probe error path (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_manifest_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Fix memleak in soc_tplg_link_elems_load() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix possible buffer overflow in debug outputs (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl: Fix pin debug prints (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sun8i-codec: Fix setting DAI data format (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: remove snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert invalid fix for handling SHDN (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codec2codec: avoid invalid/double-free of pcm runtime (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: move i915 init earlier (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add system_suspend_target field to struct snd_sof_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix atmel_ssc_set_audio link failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: Fix exiting path on probing failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency to SND_SOC_ALL_CODECS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: Add missing COMMON_CLK dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: treewide: remove redundant IS_ERR() before error code check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add PCI ID for JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: Add __maybe_unused to PM callbacks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: consistent HDMI codec probing code (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: soc-acpi-intel-icl-match: fix rt715 ADR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: add missing default_fw_name of JasperLake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: trace: fix unconditional free in trace release (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: release resources on errors in probe_continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: free trace on errors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix an Oops, caused by invalid topology (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: do not disable i915 power during probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: refactor i915_get/put functions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: Remove unnecessary const (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: silence lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove null_snd_soc_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_trigger() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_hw_params() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_prepare() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_shutdown() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: add soc_rtd_startup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1015: add rt1015 amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj initialization order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add MediaTek MT6660 Speaker Amp Driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix deadlock in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dapm: add snd_soc_dapm_put_enum_double_locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: revert "ASoC: max98090: fix lockdep warning" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove bus_control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove DAI suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: ux500_msp_dai: remove unused DAI .suspend/.resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dwc: dwc-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: uniphier: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: omap-mcpdm: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: sti_uniperif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: spdif: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: jz4740: jz4740-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: atmel_ssc_dai: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bcm: cygnus-ssp: move .suspend/.resume to component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: Fix error handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: crash in snd_soc_dapm_new_dai (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Remove code duplication in byt_rt5640_codec_fixup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Add MIC BIAS Internal3 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Simplify MIC BIAS Internal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: fix return value check in rt715_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: fix return value check in rt711_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: fix return value check in rt700_sdw_probe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix SKL dai count (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Correct cache handling of new kernel control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: add multi endpoint support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_asrc: Add support for imx8qm & imx8qxp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sgtl5000: Fix VDDA and VDDIO comparison (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: Add jz4770-codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: removed unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_rt286: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASOC: Intel: kbl_rt5663_rt5514_max98927: remove useless initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5660: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove unnecessary initialization (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: test return value on route add (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: removed unused variables (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_rt298: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: rename shadowed variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda-dai: fix compilation warning in pcm_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: remove warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: use dev_to_sdw_dev() instead of to_sdw_slave_device() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1308-sdw: add rt1308 SdW amplifier driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: atmel: fix build error with CONFIG_SND_ATMEL_SOC_DMA=m (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-digital: Reset RX interpolation path after use (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix MIC BIAS Internal1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sti: fix possible sleep-in-atomic (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: msm8916-wcd-analog: Fix selected events for MIC BIAS External1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Fix error in driver removal after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: fix HDA codec driver probe with multiple controllers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: lower print level to dbg if we will reinit DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: reference SoundWire machine lists (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: support alternate list of machines (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for TGL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for CNL/CFL/CML w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: add match tables for ICL w/ SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: soc-acpi: declare new tables for SoundWire (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add _ADR-based link descriptors (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-acpi: add link_mask field (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix PCM playback through ALSA OSS emulation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5650: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: broadwell: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: change cpu_dai and platform components for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bdw-rt5677: fix Kconfig dependencies (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: remove unused including (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt715: add RT715 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: txx9: Remove unused rtd variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm/soc-compress: use snd_soc_dapm_stream_stop() for SND_SOC_DAPM_STREAM_STOP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-dapm: add snd_soc_dapm_stream_stop() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_close_delayed_work() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: do pinctrl_pm_select_xxx() as component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicate pinctrl operation when suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care .ignore_suspend for Component suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_rtdcom_add() to snd_soc_rtd_add_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt700: add rt700 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Drop incorrectly applied duplicate commit (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt711: add rt711 codec driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: codecs: add wsa881x amplifier support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix lockdep warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix incorrect helper in max98090_dapm_put_enum_double() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: fix build warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: add dynamic debug trace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: pci: change the default firmware path when the community key is used (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Fix NULL dereference at freeing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sof_rt5682: Ignore the speaker amp when there isn't one (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5640: Fix NULL dereference on module unload (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-topology: fix endianness issues (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: hda_dsp_common: use NULL pointer assignment, not 0 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Fix compile-testing RT1011/RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: use resource_size (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: amd: Create multiple I2S platform device endpoint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: sdm845: add support to DB845c and Lenovo Yoga (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add audio routings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add capture dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add playback dapm widgets (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add basic controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wcd934x: add support to wcd9340/wcd9341 codec (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: gtm601: add Broadmobi bm818 sound profile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: remove unused variable 'constraints_16000' and 'ch_mono' (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: Update hdac hda dai table to include intel-hdmi-hifi4 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Add iDisp4 DAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx8: Fix dsp_box offset (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix input pin state management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: stm32: spdifrx: fix inconsistent lock state (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix access to uninitialized list heads (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: Set dpcm_playback / dpcm_capture (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: Remove empty suspend function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Add Broadwell rt5650 machine driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: move arch_ops under ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Prevent use-after-free in snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Read SAI parameters and send them to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: Describe SAI parameters to be sent to DSP (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix incorrect HDMI Kconfig dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: drop HDA codec upon probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add machine driver for da7219_max98373 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: log compiler name and version information (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: define struct with compiler name and version (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce state machine for FW boot (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove references to Haswell (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: cml_rt1011_rt5682: fix codec_conf by removing legacy style (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: fix fault at driver unload after failed probe (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: Add pm_runtime support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Remove superfluous bus ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove legacy style of codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: lowland: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: samsung: bells: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl_nau88l25_ssm4567: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_rt5514_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_rt5663_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: kbl_da7219_max98927: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl: imx-audmix: use snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for codec_conf (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8962: fix lambda value (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Drop snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: haswell: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: baytrail: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: xtensa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DEBUG_FS (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup for CONFIG_DMI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_set_name_prefix() and soc_set_of_name_prefix() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: byt: fixup topology filename for BYT-CR (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): get component device_node at out of loop (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: soc_set_name_prefix(): tidyup loop condition (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_init() to soc_init_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add missing return value check for soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename soc_link_dai_pcm_new() to soc_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_link_dai_pcm_new() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_remove_dai_link() to snd_soc_remove_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: rename snd_soc_add_dai_link() to snd_soc_add_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_find_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: find rtd via dai_link pointer at snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_get_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_get_dai_substream() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_disconnect_sync() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove dai_link_list (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc.h: dobj is used only when SND_SOC_TOPOLOGY (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: add SND_SOC_BYTES_E (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: add codec_mask module parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Add asynchronous sample rate converter topology support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: work-around incorrect ACPI HID for CML boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: split cht and byt debug window sizes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: fix snd_sof_fw_parse_ext_data (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on unknown header (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: simple-card: Don't create separate link when platform is present (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for soc_tplg_pcm_create() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: topology: Check return value for snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: Explicitly include linux/io.h for virt_to_phys() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: nocodec: Amend arguments for sof_nocodec_setup() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Remove unused drv_name in sof_pdata (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: remove nocodec_fw_filename (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Make creation of machine device from SOF core optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: intel: hda: Modify signature for hda_codec_probe_bus() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: partition audio-related parts from SOF core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Introduce default_fw_filename member in sof_dev_desc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: move check for runtime callbacks to core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: core: modify the signature for snd_sof_create_page_table (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: sof: pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: remove snd_sof_init_topology() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove unnecessary string buffers and snprintf calls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: remove unused variable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel/skl/hda - export number of digital microphones via control components (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: set plugged_cb to NULL when component removing (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdmi-codec: drop mutex locking again (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: solve MSI issues by merging ipc and stream irq handlers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve the sysclk selection (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: cs42l51: add dac mux widget in codec routes (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: Calculate DALIGN inversion at run-time (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add Volume Soft Stepping control (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: save and restore SHDN when changing sensitive registers (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_sai: add IRQF_SHARED (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: Add HP output driver pop reduction controls (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: refine hw_params and hw_prepare (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: mediatek: common: add some helpers to control mtk_memif (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hdmi: Drop support for Icelake (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: make common HDMI driver default (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: common: Add mach table for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add support for tgl-max98357a-rt5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sof_rt5682: Add quirk for number of HDMI DAI's (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: only flush inited work during free (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Init pcm runtime work early to avoid warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: sst: Add missing include (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: fix possible race conditions (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: exit workaround earlier if PLL is locked (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98090: remove msleep in PLL unlocked workaround (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix automatic sysclk configuration (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Fix build error without CONFIG_SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix unload for SAI/ESAI (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: BYT: fix a copy/paste mistake in byt_dump() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: AMD: Enable clk in startup intead of hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix i2c arbitration lost issue (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: DMI long name - avoid to add board name if matches with product name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: improve the DMI long card code in asoc-core (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rsnd: fix DALIGN register for SSIU (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: component: Add sync_stop PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: Make ioctl ops optional (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: check symmetry before hw_params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Update the RST gpio handling to align with documentation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: add control components management (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: remove soc_pcm_private_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fixup dead-lock at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: fix RIP warning on card removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: tidyup snd_soc_pcm_component_new/free() parameter (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012 2-in-1 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm_adsp: Expose mixer control API (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: tlv320aic31xx: configure output common-mode voltage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix build break (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm3168a: Add support for optional RST gpio handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm5100: add missed pm_runtime_disable (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm2200: add missed operations in remove and probe failure (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm-dai: add support to flac decoder (Jaroslav Kysela) [1797509] - [sound] ALSA: compress: add flac decoder params (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: qcom: q6asm: add support to flac config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: rt5677_check_hotword() can be static (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: fix the charge pump capacitor discharges (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ti: davinci-mcasp: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: dmaengine: Use dma_request_chan() directly for channel request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: care card_probed at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unbind_card() next to snd_soc_bind_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_shutdown() at soc_cleanup_card_resources() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed typo for buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: fix regcache handling (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_probe_aux_devices() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_bind_card() and snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_remove_component() and soc_cleanup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_remove_dai_link() and soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_add_dai_link() and soc_bind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_unregister_dai() and soc_del_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_soc_register_dai() and soc_add_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: free kcontrol memory on error (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: only suspend to D0I3 when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: add helper to check if we should enter d0i3 suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add check before setting d0_substate (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: PM: add state machine to comments (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: use fallback for firmware name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: acpi-match: split CNL tables in three (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Fix CFL and CML FW nocodec binary names (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5645: Fixed buddy jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: wm8904: configure sysclk/FLL automatically (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format constraint (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Add DA7213 audio codec as selectable option (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Wait for DSP to boot before loading firmware (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Set ADC clock to use PLL and enable ASRC (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Turn on MCLK1 for DSP via DAPM (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Allow VAD to be shut on/off at all times (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Disable irq at suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Stop and restart DSP over suspend/resume (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add DAPM audio path for hotword stream (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Enable jack detect while DSP is running (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: bdw-rt5677: Add a DAI link for rt5677 SPI PCM device (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: fsl_audmix: Add spin lock to protect tdms (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5514-spi: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: set L1SEN on S0ix suspend (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: fix missing NULL pointer check (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Fix compile warning with CONFIG_DEBUG_FS=n (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: Fix bytes control size checks (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove topology specific operation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call snd_soc_register_dai() from snd_soc_register_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: don't call snd_soc_dapm_new_dai_widgets() at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: have legacy_dai_naming at snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_unregister_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_unregister_dais() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_register_dai() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use snd_soc_lookup_component() at snd_soc_unregister_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_component_add/del() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_del_component_unlocked() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move snd_soc_lookup_component() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_unbind_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call soc_bind_dai_link() under snd_soc_add_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove duplicated soc_is_dai_link_bound() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: typo fix at soc_dai_link_sanity_check() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_init_dai_link() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add for_each_rtd_components() and replace (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove for_each_rtdcom_safe() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: Use different sequence for start/stop trigger (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: snd_soc_unbind_card() cleanup (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add snd_soc_pcm_lib_ioctl() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: setup card->rtd_num at snd_soc_instantiate_card() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_xxx for component related resource (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add soc_setup_card_name() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove soc_remove_dai_links() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: use devm_kzalloc() for rtd (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: Clarify usage of ignore_machine (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove snd_soc_rtdcom_del_all() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: tidyup soc_new_pcm_runtime() alloc order (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: topology: set trigger order for FE DAI link (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm: update FE/BE trigger order based on the command (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: max98373: replace gpio_request with devm_gpio_request (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Skylake: mark HDAudio codec support as deprecated (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: use def_tristate, avoid using select (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: imx: fix reverse CONFIG_SND_SOC_SOF_OF dependency (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Kconfig: add EXPERT dependency for developer options, clarify help (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: add mutual exclusion between SOF and legacy Baytrail driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: Baytrail: clarify mutual exclusion with Atom/SST driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: SOF: Intel: hda: Simplify the hda_dsp_wait_d0i3c_done() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: Add acpi match for rt1011 based m/c driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: ux500: Remove redundant variable "status" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: hdac_hda: fix race in device removal (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set the different setting for QFN/WLCSP package (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: some minor changes to improve readability (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: add the range check for temperature_calib from device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove unnecessary tabs using spaces instead (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: fix spelling mistake "temperture" -> "temperature" (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: Read and apply r0 and temperature device property (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: set tx/rx slots from tx/rx_mask in TDM case (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: improve the rt1011_set_dai_fmt() function (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt1011: remove redundant code in kcontrol (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: remove unneeded snd_soc_tplg_component_remove() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Load firmware via SPI using delayed work (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fixup compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677-spi: fix sparse warnings (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add missing null check for failed allocation of rt5677_dsp (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: rt5677: Add a PCM device for streaming hotword via SPI (Jaroslav Kysela) [1797509] - [sound] ALSA: serial-u16550: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: opl4: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: oss: Constify snd_seq_oss_callback definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: opl3: Constify snd_opl3_drum_voice definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: mts64: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Constify snd_pcm_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Fix PCM format loop in proc output (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Fix dependency on timer API (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: do not override bus codec_mask in link_get() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Reset stream if DMA RUN bit not cleared (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: No preallocation on x86 platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Update kernel-doc function parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Comment about snd_hdac_bus_update_rirb() and spinlock (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Apply aligned MMIO access only conditionally (Jaroslav Kysela) [1797509] - [sound] ALSA: remove ioremap_nocache and devm_ioremap_nocache (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset of ASUS B9450FA with ALC294 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Button supported for ThinkPad X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix a regression for mute led on Lenovo Carbon X1 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use scnprintf() for printing texts for sysfs/procfs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for yet another MSI laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply quirk for MSI GP63, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix silent output on MSI-GL73 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add more codec supported Headset Button (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Clear RIRB status before reading WP (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fixed one of HP ALC671 platform Headset Mic supported (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Fix DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make the firmware loading ioctl a bit more readable (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Fix annotation and cast for the recent uapi header change (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add JasperLake PCI ID and codec vid (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Clevo W65_67SB the power_save blacklist (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: fix spelling mistake "to" -> "too" (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add docking station support for Lenovo Thinkpad T420s (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - add retry logic to parse_intel_hdmi() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Headset Mic supported for HP cPC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/analog - Minor optimization for SPDIF mux connections (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_hdmi: remove warnings with empty body (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: correct kernel-doc parameter descriptions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Manage concurrent reg access more properly (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: enable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix a typo in comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Disable regmap internal locking (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: patch_realtek: fix empty macro usage in if block (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Rename back to dmic_detect option (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove set but not used variable 'chip' (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Set EAPD control to default for ALC222 (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: ak4531: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdspm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Apply mic mute LED quirk for Dell E7xx laptops, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add new codec supported for ALCS1200A (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - constify and cleanup static NodeID tables (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_pci_quirk tables (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Constify snd_fm801_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Constify snd_es1968_tea575x_gpios (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Constify snd_emu_chip_details (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Constify snd_bt87x_boards (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Constify wm-specific tables (Jaroslav Kysela) [1797509] - [sound] ALSA: ice17xx: Constify snd_ice1712_card_info (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_details (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Constify snd_ca0106_category_str items (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Constify snd_ac97_res_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_kcontrol_new items (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Constify snd_vx_hardware and snd_vx_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: info: Make snd_info_entry_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: ac97: Treat snd_ac97_bus_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Constify snd_pcm_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: constify copied structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Apply sync-write workaround to old Intel platforms, too (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: echoaudio: remove usage of dimen menber of elem_value structure (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix atpx_present when CLASS is not VGA (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Make uapi/emu10k1.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Add headset Mic no shutup for ALC283 (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Allow disabling MPU port via module option (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Downgrade error message for single-cmd fallback (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Fix regression by strip mask fix (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix work handling in delayed HP detection (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Avoid endless loop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Keep power on during processing DSP response (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Unify get_response handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use waitqueue for RIRB in HDA-core helper, too (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: tegra: Fix unused variable compile warning (Jaroslav Kysela) [1797509] - [sound] ALSA: hdsp: Make uapi/hdsp.h compilable again (Jaroslav Kysela) [1797509] - [sound] ALSA: vx222: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: pcxhr: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme9652: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme96: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: nm256: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: korg1212: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535audio: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs46xx: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Support PCM sync_stop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Fix duplicate unref of pci_dev (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: simplify get_audio_levels (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - Keep old slot assignment behavior for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Modify stream stripe mask only when needed (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - preserve non-MST PCM routing for Intel platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix kernel oops caused by invalid PCM idx (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix regression in connect list handling (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable automatic runtime pm for AMD HDMI codecs by default (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - enable runtime pm for newer AMD display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Add new pci ids for AMD GPU display audio (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - fix vgaswitcheroo detection for AMD (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clear codec->relaxed_resume flag at unbinding (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc236 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/realtek - Move some alc256 pintbls to fallback table (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add mute led support for HP ProBook 645 G4 (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for NVIDIA codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST support for non-acomp codecs (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Add DP-MST jack support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - Rename snd_hda_pin_sense to snd_hda_jack_pin_sense (Jaroslav Kysela) [1797509] - [sound] ALSA: hda - remove forced polling workaround for CFL and CNL (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - remove redundant code comments (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix port numbering for ICL and TGL platforms (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/hdmi - Clean up Intel platform-specific fixup checks (Jaroslav Kysela) [1797509] - [sound] ALSA: au88x0: Fix incorrect device pointer for preallocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - fix pin setup on Tigerlake (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Add Cometlake-S PCI ID (Jaroslav Kysela) [1797509] - [sound] ALSA: rme32: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: hdmi - add Tigerlake support (Jaroslav Kysela) [1797509] - [sound] ALSA: hda/ca0132 - Fix possible workqueue stall (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix concurrent access to queue current tick/time (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Avoid concurrent access to queue flags (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix double hw_free calls (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix sparse warnings wrt snd_pcm_state_t (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix memory leak at closing a stream without hw_free (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Set per-card upper limit of PCM buffer allocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Make snd_pcm_hw_constraints_init() and _complete() static (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Fix racy access for queue timer in proc read (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: fix nsec/sec initialization confusion (Jaroslav Kysela) [1797509] - [sound] ALSA: control: potential uninitialized return value (Jaroslav Kysela) [1797509] - [sound] ALSA: rawmidi: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: oss: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: jack: More constification (Jaroslav Kysela) [1797509] - [sound] ALSA: info: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: More constifications (Jaroslav Kysela) [1797509] - [sound] ALSA: control: Add verification for kctl accesses (Jaroslav Kysela) [1797509] - [sound] ALSA: mixer: oss: Constify snd_mixer_oss_assign_table definition (Jaroslav Kysela) [1797509] - [sound] ALSA: seq: Constify struct snd_midi_op (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Constify snd_timer_hardware definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: core: Treat snd_device_ops as const (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: allow TLV read operation for callback type of element in locked case (Jaroslav Kysela) [1797509] - [sound] ALSA: ctl: remove dimen member from elem_info structure (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Avoid possible info leaks from PCM stream buffers (Jaroslav Kysela) [1797509] - [sound] ALSA: control: remove useless assignment in .info callback of PCM chmap element (Jaroslav Kysela) [1797509] - [sound] ALSA: uapi: Fix typos and header inclusion in asound.h (Jaroslav Kysela) [1797509] - [sound] ALSA: bump uapi version numbers (Jaroslav Kysela) [1797509] - [sound] ALSA: add new 32-bit layout for snd_pcm_mmap_status/control (Jaroslav Kysela) [1797509] - [sound] ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_ctl_elem_value (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_tread (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_rawmidi_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_pcm_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Avoid using timespec for struct snd_timer_status (Jaroslav Kysela) [1797509] - [sound] ALSA: Replace timespec with timespec64 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue (Jaroslav Kysela) [1797509] - [sound] ALSA: ps3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pmac: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ymfpci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: via82xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: trident: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sonicvibes: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sis7019: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: riptide: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: oxygen: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: mixart: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: maestro3: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lx6464es: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: lola: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: intel8x0: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1724: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ice1712: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: fm801: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1938: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ens137x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: emu10k1x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ctxfi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs5535: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cs4281: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmipci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ca0106: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: bt87x: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: azt3328: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aw2: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atiixp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: asihpi: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: als4000: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: parisc: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: wss: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: gus: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: sb: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es18xx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: es1688: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: cmi8330: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1816a: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcsp: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: atmel: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aaci: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aoa: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: echoaudio: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: es1968: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: rme: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: als300: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ali5451: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ad1889: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: hda: Use standard waitqueue for RIRB wakeup (Jaroslav Kysela) [1797509] - [sound] ALSA: pci: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: atom: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-mfld-platform-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-baytrail-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Drop superfluous snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: sst-haswell-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skylake: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: Avoid non-standard macro usage (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: intel: skl-pcm: remove snd_pcm_ops (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_ac97_bus_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Constify snd_device_ops definitions (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Drop superfluous ioctl PCM ops (Jaroslav Kysela) [1797509] - [sound] ALSA: ml403: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: vx: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: dummy: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: drivers: Remove superfluous snd_dma_continuous_data() (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use managed buffer allocation (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid pointer dereference before null-check (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Avoid unexpected timer event callback tasklets (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Remove redundant locking in timer open function (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support runtime change of snd_timer via info interface (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support selection of snd_timer instead of jiffies (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Move CABLE_VALID_BOTH to the top of file (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Rename all jiffies timer specific functions (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Use callback functions for timer specific implementations (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Support return of error code for timer start and stop (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Describe units of variables (Jaroslav Kysela) [1797509] - [sound] ALSA: aloop: Convert to the common vmalloc memalloc (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_free_pcm_runtime() and soc_rtd_free() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_new_pcm_runtime() and soc_rtd_init() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: create rtd->codec_dais first (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: call list_del(&rtd->list) at soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge soc_add_pcm_runtime() into soc_new_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: move soc_free_pcm_runtime() (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: use list_del_init and move it back to soc_cleanup_component (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: core: delete component->card_list in soc_remove_component only (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component: remove snd_pcm_ops from component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: add new pcm_construct/pcm_destruct (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-core: merge snd_pcm_ops member to component driver (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: soc-component.h: remove GPL explanation from header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: oss: Avoid potential buffer overflows (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add card sync_irq field (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Add the support for sync-stop operation (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Move PCM_RUNTIME_CHECK() macro into local header (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Allow NULL ioctl ops (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Introduce managed buffer allocation mode (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Fix stream lock usage in snd_pcm_period_elapsed() (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix the breakage of slave link open (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Unexport snd_pcm_sgbuf_ops_page (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Yet another missing check of non-cached buffer type (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix possible race at assigning a timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Make snd_timer_close() returning void (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Unify master/slave linking code (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Fix incorrectly assigned timer instance (Jaroslav Kysela) [1797509] - [sound] ALSA: timer: Limit max amount of slave instances (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Create proc files only for non-empty preallocations (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Warn if doubly preallocated (Jaroslav Kysela) [1797509] - [sound] ALSA: pcm: Handle special page mapping in the default mmap handler (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Add vmalloc buffer allocation support (Jaroslav Kysela) [1797509] - [sound] ALSA: memalloc: Allow NULL device for SNDRV_DMA_TYPE_CONTINUOUS type (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: pcm_dmaengine: Extract snd_dmaengine_pcm_refine_runtime_hwparams (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - do not describe I/O configuration in the long card name (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel - use control components to describe card config (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: make common HDMI driver the default for SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: sof_rt5682: use dependency on SOF_HDA_LINK (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Geminilake is only supported by SOF (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: fix configs for bxt-da7219-max98057a (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: remove select SND_HDA_DSP_LOADER (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: Intel: boards: Add CML m/c using RT1011 and RT5682 (Jaroslav Kysela) [1797509] - [sound] ALSA: ASoC: compress: fix unsigned integer overflow check (Jaroslav Kysela) [1797509] - [sound] ALSA: Revert "ALSA: usb-audio: set the interface format after resume on Dell WD19" (Jaroslav Kysela) [1797509]- [crypto] crypto: ccp - use file mode for sev ioctl permissions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup sp_dev_master in psp_dev_destroy() (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Cleanup misc_dev on sev_exit() (Vladis Dronov) [1765717] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Vladis Dronov) [1765717] - [crypto] crypto: ccp - move SEV vdata to a dedicated data structure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - create a generic psp-dev file (Vladis Dronov) [1765717] - [crypto] crypto: ccp - rename psp-dev files to sev-dev (Vladis Dronov) [1765717] - [crypto] crypto: ccp - set max RSA modulus size for v3 platform devices as well (Vladis Dronov) [1765717] - [crypto] crypto: ccp - add SEV command privilege separation (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix uninitialized list head (Vladis Dronov) [1765717] - [crypto] crypto: user - fix memory leak in crypto_report (Vladis Dronov) [1829808 1765717] {CVE-2019-19062} - [crypto] crypto: ccp - Release all allocated memory if sha type is invalid (Vladis Dronov) [1825134 1765717] {CVE-2019-18808} - [crypto] crypto: ccp - invoke fallback for XTS ciphertext stealing (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove unnecessary linux/pci.h include (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include DMA declarations explicitly (Vladis Dronov) [1765717] - [crypto] crypto: ccp - use devm_platform_ioremap_resource() to simplify code (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Clean up and exit correctly on allocation failure (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Log an error message when ccp-crypto fails to load (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Ignore tag length when decrypting GCM ciphertext (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add support for valid authsize values less than 16 (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix oops by properly managing allocated structures (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Reduce maximum stack usage (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Include the module name in system log messages (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to control registration for DMA (Vladis Dronov) [1765717] - [crypto] crypto: ccp - module parameter to limit the number of enabled CCPs (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Add a module parameter to specify a queue count (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Make CCP debugfs support optional (Vladis Dronov) [1765717] - [crypto] crypto: ctr - add helper for performing a CTR encryption walk (Vladis Dronov) [1765717] - [crypto] crypto: ccp - memset structure fields to zero before reuse (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Fix 3DES complaint from ccp-crypto module (Vladis Dronov) [1765717] - [crypto] crypto: ccp - fix AES CFB error exposed by new test vectors (Vladis Dronov) [1765717] - [crypto] crypto: ccp - AES CFB mode is a stream cipher (Vladis Dronov) [1765717] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Vladis Dronov) [1765717] - [crypto] crypto: shash - remove shash_desc::flags (Vladis Dronov) [1765717] - [crypto] crypto: ccp - no need to check return value of debugfs_create functions (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove forward declaration (Vladis Dronov) [1765717] - [crypto] crypto: ccp - Remove VLA usage of skcipher (Vladis Dronov) [1765717] - [crypto] crypto: skcipher - Introduce crypto_sync_skcipher (Vladis Dronov) [1765717] - [infiniband] IB/mlx4: Test return value of calls to ib_get_cached_pkey (Alaa Hleihel) [1767259] - [netdrv] net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc() (Alaa Hleihel) [1767259] - [infiniband] RDMA/mlx4: Initialize ib_spec on the stack (Alaa Hleihel) [1767259] - [powerpc] powerpc/powernv: Re-enable imc trace-mode in kernel (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Implement a global lock to avoid races between trace, core and thread imc events (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Return accordingly on invalid chip-id in (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Remove PM_BR_CMPL_ALT from power9 event list (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: Add generic compat mode pmu driver (Desnes Augusto Nunes do Rosario) [1725201] - [powerpc] powerpc/perf: init pmu from core-book3s (Desnes Augusto Nunes do Rosario) [1725201] - [fs] NFS: Fix fscache super_cookie index_key from changing after umount (Dave Wysochanski) [1790933] - [fs] NFSv4: Fix fscache cookie aux_data to ensure change_attr is included (Dave Wysochanski) [1793560] - [fs] nfs: fscache: use timespec64 in inode auxdata (Dave Wysochanski) [1793560] - [documentation] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1835245] - [documentation] docs: stop suggesting strlcpy (David Arcari) [1835245] - [scsi] scsi: hpsa: Update driver version (Joseph Szczypek) [1815628] - [scsi] scsi: hpsa: correct race condition in offload enabled (Joseph Szczypek) [1815628] - [kernel] audit: log audit netlink multicast bind and unbind (Richard Guy Briggs) [1829622] - [ipc] ipc/mqueue.c: change __do_notify() to bypass check_kill_permission() (Oleg Nesterov) [1808931] - [scsi] scsi: megaraid_sas: Update driver version to 07.714.04.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: TM command refire leads to controller firmware crash (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Replace undefined MFI_BIG_ENDIAN macro with __BIG_ENDIAN_BITFIELD macro (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Remove IO buffer hole detection logic (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit device queue depth to controller queue depth (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: Use true, false for bool variables (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make two symbols static in megaraid_sas_base.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fusion.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid: make some symbols static in megaraid_sas_fp.c (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use scnprintf() for avoiding potential buffer overflow (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: silence a warning (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: fix indentation issue (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update driver version to 07.713.01.00-rc1 (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Use Block layer API to check SCSI device in-flight IO requests (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Limit the number of retries for the IOCTLs causing firmware fault (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not initiate OCR if controller is not in ready state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Re-Define enum DCMD_RETURN_STATUS (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not set HBA Operational if FW is not in operational state (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill HBA if JBOD Seqence map or RAID map is disabled (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Do not kill host bus adapter, if adapter is already dead (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Update optimal queue depth for SAS and NVMe devices (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Set no_write_same only for Virtual Disk (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Reset adapter if FW is not in READY state after device resume (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Make poll_aen_lock static (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: remove unused variables 'debugBlk', 'fusion' (Tomas Henzl) [1791041] - [scsi] scsi: megaraid_sas: Unique names for MSI-X vectors (Tomas Henzl) [1791041]- [crypto] crypto: drbg - fix error return code in drbg_alloc_state() (Vladis Dronov) [1822458] - [fs] fs: call fsnotify_sb_delete after evict_inodes (Jay Shin) [1834741] - [fs] fs: avoid softlockups in s_inodes iterators (Jay Shin) [1834741] - [fs] fs/drop_caches.c: avoid softlockups in drop_pagecache_sb() (Jay Shin) [1834741] - [net] net/smc: remove set but not used variables 'del_llc, del_llc_resp' (Philipp Rudo) [1725886] - [net] net/smc: remove unused inline function smc_curs_read (Philipp Rudo) [1725886] - [net] net/smc: log important pnetid and state change events (Philipp Rudo) [1725886] - [net] net/smc: save SMC-R peer link_uid (Philipp Rudo) [1725886] - [net] net/smc: create improved SMC-R link_uid (Philipp Rudo) [1725886] - [net] net/smc: improve termination processing (Philipp Rudo) [1725886] - [net] net/smc: add termination reason and handle LLC protocol violation (Philipp Rudo) [1725886] - [net] net/smc: asymmetric link tagging (Philipp Rudo) [1725886] - [net] net/smc: assign link to a new connection (Philipp Rudo) [1725886] - [net] net/smc: send DELETE_LINK, ALL message and wait for send to complete (Philipp Rudo) [1725886] - [net] net/smc: wait for departure of an IB message (Philipp Rudo) [1725886] - [net] net/smc: handle incoming CDC validation message (Philipp Rudo) [1725886] - [net] net/smc: send failover validation message (Philipp Rudo) [1725886] - [net] net/smc: switch connections to alternate link (Philipp Rudo) [1725886] - [net] net/smc: save state of last sent CDC message (Philipp Rudo) [1725886] - [net] net/smc: enqueue local LLC messages (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: delete link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: llc_del_link_work and use the LLC flow for delete link (Philipp Rudo) [1725886] - [net] net/smc: delete an asymmetric link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC server (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC server (Philipp Rudo) [1725886] - [net] net/smc: final part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] net/smc: rkey processing for a new link as SMC client (Philipp Rudo) [1725886] - [net] net/smc: first part of add link processing as SMC client (Philipp Rudo) [1725886] - [net] smc: Remove unused function (Philipp Rudo) [1725886] - [net] net/smc: llc_add_link_work to handle ADD_LINK LLC requests (Philipp Rudo) [1725886] - [net] net/smc: allocate index for a new link (Philipp Rudo) [1725886] - [net] net/smc: introduce smc_pnet_find_alt_roce() (Philipp Rudo) [1725886] - [net] net/smc: remove DELETE LINK processing from smc_core.c (Philipp Rudo) [1725886] - [net] net/smc: take link down instead of terminating the link group (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_err() and smcr_link_down() processing (Philipp Rudo) [1725886] - [net] net/smc: add smcr_port_add() and smcr_link_up() processing (Philipp Rudo) [1725886] - [net] net/smc: remember PNETID of IB device for later device matching (Philipp Rudo) [1725886] - [net] net/smc: mutex to protect the lgr against parallel reconfigurations (Philipp Rudo) [1725886] - [net] net/smc: extend smc_llc_send_add_link() and smc_llc_send_delete_link() (Philipp Rudo) [1725886] - [net] net/smc: map and register buffers for a new link (Philipp Rudo) [1725886] - [net] net/smc: unmapping of buffers to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: multiple link support for rmb buffer registration (Philipp Rudo) [1725886] - [net] net/smc: remove obsolete link state DELETING (Philipp Rudo) [1725886] - [net] net/smc: remove handling of CONFIRM_RKEY_CONTINUE (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote DELETE_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC remote CONFIRM_RKEY processing to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: new smc_rtoken_set functions for multiple link support (Philipp Rudo) [1725886] - [net] net/smc: move the TEST_LINK response processing into event handler (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_delete_rkey (Philipp Rudo) [1725886] - [net] net/smc: multiple link support and LLC flow for smc_llc_do_confirm_rkey (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC client code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: adapt SMC server code to use the LLC flow (Philipp Rudo) [1725886] - [net] net/smc: add logic to evaluate CONFIRM_LINK messages to LLC layer (Philipp Rudo) [1725886] - [net] net/smc: introduce link group type (Philipp Rudo) [1725886] - [net] net/smc: enqueue all received LLC messages (Philipp Rudo) [1725886] - [net] net/smc: add event-based llc_flow framework (Philipp Rudo) [1725886] - [net] net/smc: move llc layer related init and clear into smc_llc.c (Philipp Rudo) [1725886] - [net] net/smc: use mutex instead of rwlock_t to protect buffers (Philipp Rudo) [1725886] - [net] net/smc: process llc responses in tasklet context (Philipp Rudo) [1725886] - [net] net/smc: use worker to process incoming llc messages (Philipp Rudo) [1725886] - [net] net/smc: simplify link deactivation (Philipp Rudo) [1725886] - [net] net/smc: move testlink work to system work queue (Philipp Rudo) [1725886] - [net] net/smc: add new link state and related helpers (Philipp Rudo) [1725886] - [net] net/smc: multi-link support for smc_rmb_rtoken_handling() (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID instances to support multiple links (Philipp Rudo) [1725886] - [net] net/smc: convert static link ID to dynamic references (Philipp Rudo) [1725886] - [net] net/smc: introduce link_idx for link group array (Philipp Rudo) [1725886] - [net] net/smc: separate function for link initialization (Philipp Rudo) [1725886] - [net] net/smc: rework pnet table to support SMC-R failover (Philipp Rudo) [1725886] - [net] net/smc: improve peer ID in CLC decline for SMC-R (Philipp Rudo) [1725886] - [net] net/smc: rework peer ID handling (Philipp Rudo) [1725886] - [net] net/smc: reduce port_event scheduling (Philipp Rudo) [1725886] - [net] net/smc: simplify normal link termination (Philipp Rudo) [1725886] - [net] net/smc: remove unused parameter of smc_lgr_terminate() (Philipp Rudo) [1725886] - [net] net/smc: do not delete lgr from list twice (Philipp Rudo) [1725886] - [net] net/smc: use termination worker under send_lock (Philipp Rudo) [1725886] - [net] net/smc: improve smc_lgr_cleanup() (Philipp Rudo) [1725886] - [pci] PCI: Add new PCI_VPD_RO_KEYWORD_SERIALNO macro (Jonathan Toppins) [1834900] - [pci] PCI: Introduce pci_get_dsn (Jonathan Toppins) [1834900] - [scsi] scsi: lpfc: Remove redundant initialization to variable rc (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.1 (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix MDS Diagnostic Enablement definition (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix noderef and address space warnings (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove unnecessary lockdep_assert_held calls (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Change default queue allocation for reduced memory consumption (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Fix negation of else clause in lpfc_prep_node_fc4type (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Remove re-binding of nvme rport during registration (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: Maintain atomic consistency of queue_claimed flag (Dick Kennedy) [1835310] - [scsi] scsi: lpfc: remove duplicate unloading checks (Dick Kennedy) [1835310] - [scsi] scsi: qedf: Get dev info after updating the params (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Fix crash when MFW calls for protocol stats while function is still probing (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add schedule recovery handler (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Implement callback for bw_update (Nilesh Javali) [1792113] - [netdrv] scsi: qed: Send BW update notifications to the protocol drivers (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Honor status qualifier in FCP_RSP per spec (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Acquire rport_lock for resetting the delay_timestamp (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Increase the upper limit of retry delay (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Keep track of num of pending flogi (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Simplify mutex_unlock() usage (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Add port_id getter (Nilesh Javali) [1792113] - [scsi] scsi: qedf: Remove always false 'tmp_prio < 0' statement (Nilesh Javali) [1792113] - [include] NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION (Steve Dickson) [1828592] - [edac] EDAC/amd64: Drop some family checks for newer systems (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Add family ops for Family 19h Models 00h-0Fh (Aristeu Rozanski) [1779822 1735611] - [x86] x86/amd_nb: Add Family 19h PCI IDs (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/mce_amd: Always load on SMCA systems (Aristeu Rozanski) [1779822 1735611] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new Load Store unit McaType (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Save max number of controllers to family type (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Gather hardware information early (Aristeu Rozanski) [1779822 1735611] - [edac] EDAC/amd64: Make struct amd64_family_type global (Aristeu Rozanski) [1779822 1735611] - [fs] nfsd: Add tracepoints for update of the expkey and export cache entries (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracepoints for exp_find_key() and exp_get_by_name() (Dave Wysochanski) [1775408] - [fs] nfsd: Add tracing to nfsd_set_fh_dentry() (Dave Wysochanski) [1775408] - [net] SUNRPC: Clean up: Replace dprintk and BUG_ON call sites in svcauth_gss.c (Dave Wysochanski) [1775408] - [net] svcrdma: Create a generic tracing class for displaying xdr_buf layout (Dave Wysochanski) [1775408] - [net] SUNRPC: Capture completion of all RPC tasks (Dave Wysochanski) [1775408] - [net] SUNRPC: Trace gssproxy upcall results (Dave Wysochanski) [1775408] - [trace] fix null pointer deref in tracepoints in back channel (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file commit tracepoint (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic writeback tracepoints (Dave Wysochanski) [1775408] - [fs] NFS: Clean up generic file read tracepoints (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Add tracing for layout errors (Dave Wysochanski) [1775408] - [fs] pNFS/flexfiles: Record resend attempts on I/O failure (Dave Wysochanski) [1775408] - [fs] NFS: Fix fix of show_nfs_errors (Dave Wysochanski) [1775408] - [fs] NFSv4: Improve read/write/commit tracing (Dave Wysochanski) [1775408] - [fs] NFS4: Report callback authentication errors (Dave Wysochanski) [1775408] - [fs] NFS4: Trace lock reclaims (Dave Wysochanski) [1775408] - [fs] NFS4: Trace state recovery operation (Dave Wysochanski) [1775408] - [fs] NFS: Add a tracepoint in nfs_fh_to_dentry() (Dave Wysochanski) [1775408] - [fs] pnfs/flexfiles: Add tracepoints for detecting pnfs fallback to MDS (Dave Wysochanski) [1775408] - [fs] NFS: Record task, client ID, and XID in xdr_status trace points (Dave Wysochanski) [1775408] - [fs] NFS: Display symbolic status code names in trace log (Dave Wysochanski) [1775408] - [fs] NFS: Fix show_nfs_errors macros again (Dave Wysochanski) [1775408] - [fs] NFS4: Add a trace event to record invalid CB sequence IDs (Dave Wysochanski) [1775408] - [media] media: v4l: event: Add subscription to list before calling "add" operation (Jarod Wilson) [1828805] {CVE-2019-9458} - [media] media: v4l: event: Prevent freeing event subscriptions while accessed (Jarod Wilson) [1828805] {CVE-2019-9458} - [vhost] vhost: Check docket sk_family instead of call getname (Vladis Dronov) [1823301] {CVE-2020-10942} - [documentation] kvm: ppc: book3s hv: Add a capability for enabling secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: H_SVM_INIT_START must call UV_RETURN (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check caller of H_SVM_* Hcalls (David Gibson) [1814624] - [powerpc] Introduce the MSR_S bit (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Skip kvmppc_uvmem_free if Ultravisor is not supported (David Gibson) [1814624] - [powerpc] kvm: ppc: Kill kvmppc_ops::mmu_destroy() and kvmppc_mmu_destroy() (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Move kvmppc_mmu_init() into PR KVM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Treat TM-related invalid form instructions on P9 like the valid ones (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Use RADIX_PTE_INDEX_SIZE in Radix MMU code (David Gibson) [1814624] - [powerpc] kvm: no need to check return value of debugfs_create functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix -Werror=return-type build failure (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Release lock on page-out failure path (David Gibson) [1814624] - [powerpc] mm: Remove kvm radix prefetch workaround for Power9 DD2.2 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Fix typo in comment (David Gibson) [1814624] - [documentation] kvm: ppc: book3s hv: Implement H_SVM_INIT_ABORT hcall (David Gibson) [1814624] - [powerpc] kvm: ppc: Add skip_page_out parameter to uvmem functions (David Gibson) [1814624] - [powerpc] kvm: ppc: book3e: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace current->mm by kvm->mm (David Gibson) [1814624] - [mm] add account_locked_vm utility function (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove set but not used variable 'ra', 'rs', 'rt' (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't do ultravisor calls on systems without ultravisor (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support reset of secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Handle memory plug/unplug to secure VM (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Radix changes for secure guest (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Shared pages support for secure guests (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Support for running secure guests (David Gibson) [1814624] - [powerpc] pseries/svm: Unshare all pages before kexecing a new kernel (David Gibson) [1814624] - [powerpc] pseries/svm: Use shared memory for LPPACA structures (David Gibson) [1814624] - [powerpc] pseries: Add and use LPPACA_SIZE constant (David Gibson) [1814624] - [powerpc] pseries/svm: Add helpers for UV_SHARE_PAGE and UV_UNSHARE_PAGE (David Gibson) [1814624] - [powerpc] prom_init: Add the ESM call to prom_init (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reject mflags=2 (LPCR[AIL]=2) ADDR_TRANS_MODE mode (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Implement LPCR[AIL]=3 mode for injected interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Reuse kvmppc_inject_interrupt for async guest delivery (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Replace reset_msr mmu op with inject_interrupt arch op (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Define and use SRR1_MSR_BITS (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: xive: Show VP id in debugfs (David Gibson) [1814624] - [powerpc] kvm: ppc: e500: Replace current->mm by kvm->mm (David Gibson) [1814624] - [powerpc] kvm: ppc: Report single stepping capability (David Gibson) [1814624] - [powerpc] kvm: Fix kvmppc_vcore->in_guest value in kvmhv_switch_to_host (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: use smp_mb() when setting/clearing host_ipi flag (David Gibson) [1814624] - [powerpc] 64s: Set reserved PCR bits (David Gibson) [1814624] - [powerpc] Fix definition of PCR bits to work with old binutils (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s: Invalidate multiple TCEs at once (David Gibson) [1814624] - [powerpc] powernv/ioda: Split out TCE invalidation from TCE updates (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't lose pending doorbell request on migration on P9 (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Check for MMU ready on piggybacked virtual cores (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Define usage types for rmap array in guest memslot (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Don't push XIVE context when not using XIVE device (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s hv: Fix race in re-enabling XIVE escalation interrupts (David Gibson) [1814624] - [powerpc] kvm: ppc: book3s pr: Fix software breakpoints (David Gibson) [1814624] - [powerpc] kvm: ppc: Remove leftover comment from emulate_loadstore.c (David Gibson) [1814624] - [x86] hyperv: Properly suspend/resume reenlightenment notifications (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Freeze kernel threads in software_resume() (Mohammed Gamal) [1815475] - [kernel] pm: hibernate: Propagate the return value of hibernation_restore() (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the VP assist page for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM (Mohammed Gamal) [1815475] - [net] hv_sock: Add the support of hibernation (Mohammed Gamal) [1815475] - [video] hyperv_fb: Fix hibernation for the deferred IO feature (Mohammed Gamal) [1815475] - [video] hyperv_fb: Add the support of hibernation (Mohammed Gamal) [1815475] - [scsi] storvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [netdrv] hv_netvsc: Add the support of hibernation (Mohammed Gamal) [1815475] - [pci] hv: Change pci_protocol_version to per-hbus (Mohammed Gamal) [1815475] - [pci] hv: Add hibernation support (Mohammed Gamal) [1815475] - [input] hyperv-keyboard: Add the support of hibernation (Mohammed Gamal) [1815475] - [hid] hyperv: NULL check before some freeing functions is not needed (Mohammed Gamal) [1815475] - [hid] hyperv: Add the support of hibernation (Mohammed Gamal) [1815475] - [clocksource] hyper-v: Suspend/resume Hyper-V clocksource for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Suspend/resume the hypercall page for hibernation (Mohammed Gamal) [1815475] - [x86] hyperv: Implement hv_is_hibernation_supported() (Mohammed Gamal) [1815475] - [hv] hv_utils: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated hibernation request (Mohammed Gamal) [1815475] - [hv] hv_utils: Support host-initiated restart request (Mohammed Gamal) [1815475] - [hv] hv_balloon: Add the support of hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1815475] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1815475] - [net] ipv4: really enforce backoff for redirects (Paolo Abeni) [1834184] - [net] netfilter: nat: never update the UDP checksum when it's 0 (Guillaume Nault) [1794714] - [net] sched: allow flower to match erspan options (Xin Long) [1830482] - [net] sched: allow flower to match vxlan options (Xin Long) [1830482] - [net] sched: add erspan option support to act_tunnel_key (Xin Long) [1830482] - [net] sched: add vxlan option support to act_tunnel_key (Xin Long) [1830482] - [netdrv] netdevsim: disable devlink reload when resources are being used (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix using uninitialized resources (Ivan Vecera) [1829778] - [netdrv] drivers/net: netdevsim depends on INET (Ivan Vecera) [1829778] - [netdrv] netdevsim: fix nsim_fib6_rt_create() error path (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Add test for FIB offload API (Ivan Vecera) [1829778] - [tools] selftests: forwarding: Add helpers and tests for FIB offload (Ivan Vecera) [1829778] - [tools] selftests: mlxsw: Add a self-test for port-default priority (Ivan Vecera) [1829778] - [netdrv] netdevsim: fib: Add dummy implementation for FIB offload (Ivan Vecera) [1829778] - [net] ipv6: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Add "offload" and "trap" indications to routes (Ivan Vecera) [1829778] - [net] ipv4: Encapsulate function arguments in a struct (Ivan Vecera) [1829778] - [net] ipv4: Replace route in list before notifying (Ivan Vecera) [1829778] - [tools] selftests: netdevsim: Extend devlink trap test to include flow action cookie (Petr Oros) [1823745] - [netdrv] netdevsim: add ACL trap reporting cookie as a metadata (Petr Oros) [1823745] - [net] devlink: extend devlink_trap_report() to accept cookie and pass (Petr Oros) [1823745] - [net] drop_monitor: extend by passing cookie from driver (Petr Oros) [1823745] - [net] devlink: add trap metadata type for cookie (Petr Oros) [1823745] - [net] devlink: add ACL generic packet traps (Petr Oros) [1823745] - [net] devlink: Add overlay source MAC is multicast trap (Petr Oros) [1823745] - [net] devlink: Add tunnel generic packet traps (Petr Oros) [1823745] - [net] devlink: Add non-routable packet trap (Petr Oros) [1823745] - [netdrv] mlxsw: spectrum_router: Prevent incorrect replacement of local table routes (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove FIB entry list from FIB node (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Consolidate identical functions (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Make route creation and destruction symmetric (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Eliminate dead code (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Remove unnecessary checks (Ivan Vecera) [1828994] - [net] ipv6: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv6 route notifications (Ivan Vecera) [1828994] - [net] ipv6: Handle multipath route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv6: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv6: Notify multipath route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv6: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv6: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] ipv4: Remove old route notifications and convert listeners (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Start using new IPv4 route notifications (Ivan Vecera) [1828994] - [netdrv] mlxsw: spectrum_router: Don't rely on missing extack to symbolize dump (Ivan Vecera) [1828994] - [net] ipv4: Only Replay routes of interest to new listeners (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification during flush (Ivan Vecera) [1828994] - [net] ipv4: Handle route deletion notification (Ivan Vecera) [1828994] - [net] ipv4: Notify newly added route if should be offloaded (Ivan Vecera) [1828994] - [net] ipv4: Notify route if replacing currently offloaded one (Ivan Vecera) [1828994] - [net] ipv4: Extend FIB alias find function (Ivan Vecera) [1828994] - [net] ipv4: Notify route after insertion to the routing table (Ivan Vecera) [1828994] - [include] net: fib_notifier: Add temporary events to the FIB notification chain (Ivan Vecera) [1828994] - [net] vti6: Fix memory leak of skb if input policy check fails (Xin Long) [1829720] - [net] xfrm: policy: Fix doulbe free in xfrm_policy_timer (Xin Long) [1829720] - [net] xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire (Xin Long) [1829720] - [net] xfrm: fix uctx len check in verify_sec_ctx_len (Xin Long) [1829720] - [net] xfrm: handle NETDEV_UNREGISTER for xfrm device (Xin Long) [1829720] - [net] xfrm: interface: do not confirm neighbor when do pmtu update (Xin Long) [1829720] - [documentation] xfrm: update doc about xfrm[46]_gc_thresh (Xin Long) [1829720] - [documentation] devlink: remove trigger command from devlink-region.rst (Petr Oros) [1822570] - [include] devlink: promote "fw.bundle_id" to a generic info version (Petr Oros) [1822570] - [documentation] devlink: document devlink info versions reported by bnxt_en driver (Petr Oros) [1822570] - [include] devlink: add macro for "fw.roce" (Petr Oros) [1822570] - [documentation] Fix typo in devlink documentation (Petr Oros) [1822570] - [documentation] devlink: fix typos in qed documentation (Petr Oros) [1822570] - [documentation] devlink: document region snapshot triggering from userspace (Petr Oros) [1822570] - [documentation] devlink: introduce devlink-dpipe.rst documentation file (Petr Oros) [1822570] - [documentation] devlink: add a devlink-resource.rst documentation file (Petr Oros) [1822570] - [netdrv] devlink: rename and expand devlink-trap-netdevsim.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for ionic device driver (Petr Oros) [1822570] - [documentation] devlink: add a file documenting devlink regions (Petr Oros) [1822570] - [documentation] devlink: add a driver-specific file for the qed driver (Petr Oros) [1822570] - [documentation] devlink: add parameter documentation for the mlx4 driver (Petr Oros) [1822570] - [documentation] devlink: document info versions for each driver (Petr Oros) [1822570] - [documentation] devlink: convert driver-specific files to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: mention reloading in devlink-params.rst (Petr Oros) [1822570] - [documentation] devlink: add documentation for generic devlink parameters (Petr Oros) [1822570] - [documentation] devlink: convert devlink-params.txt to reStructuredText (Petr Oros) [1822570] - [documentation] devlink: rename devlink-info-versions.rst and add a header (Petr Oros) [1822570] - [documentation] devlink: convert devlink-health.txt to rst format (Petr Oros) [1822570] - [documentation] devlink: move devlink documentation to subfolder (Petr Oros) [1822570] - [include] devlink: add macro for "fw.psid" (Petr Oros) [1822570] - [netdrv] ethtool: Add support for 400Gbps (50Gbps per lane) link modes (Ivan Vecera) [1828942] - [netdrv] phy: Add support for 100BaseT1 and 1000BaseT1 (Ivan Vecera) [1828942] - [net] phy: improve definition of __ETHTOOL_LINK_MODE_MASK_NBITS (Ivan Vecera) [1828942] - [net] netfilter: nf_tables: simplify NLM_F_CREATE handling (Phil Sutter) [1812666] - [net] devlink: Add layer 3 generic packet exception traps (Petr Oros) [1828737] - [net] devlink: Add layer 3 generic packet traps (Petr Oros) [1828737] - [net] netfilter: nf_tables: fix infinite loop when expr is not available (Phil Sutter) [1757933] - [net] netfilter: nf_tables: autoload modules from the abort path (Phil Sutter) [1757933] - [net] netfilter: nf_tables: remove WARN and add NLA_STRING upper limits (Phil Sutter) [1757933] - [net] netfilter: nf_tables: store transaction list locally while requesting module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use-after-free in failing rule with bound set (Phil Sutter) [1757933] - [net] netfilter: nft_meta: skip EAGAIN if nft_meta_bridge is not a module (Phil Sutter) [1757933] - [net] netfilter: nf_tables: force module load in case select_ops() returns -EAGAIN (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add nft_expr_type_request_module() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: bogus EBUSY in helper removal from transaction (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix set double-free in abort path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: don't use refcount_inc on newly allocated entry (Phil Sutter) [1757933] - [net] netfilter: nf_tables: unbind set in rule from commit path (Phil Sutter) [1757933] - [net] netfilter: nft_compat: destroy function must not have side effects (Phil Sutter) [1757933] - [net] netfilter: nft_compat: make lists per netns (Phil Sutter) [1757933] - [net] netfilter: nft_compat: use refcnt_t type for nft_xt reference count (Phil Sutter) [1757933] - [net] netfilter: nf_tables: fix suspicious RCU usage in nft_chain_stats_replace() (Phil Sutter) [1757933] - [net] netfilter: nf_tables: asynchronous release (Phil Sutter) [1757933] - [net] netfilter: nf_tables: split set destruction in deactivate and destroy phase (Phil Sutter) [1757933] - [net] netfilter: nf_tables: flow event notifier must use transaction mutex (Phil Sutter) [1757933] - [net] netfilter: nf_tables: use dedicated mutex to guard transactions (Phil Sutter) [1757933] - [net] netfilter: nf_tables: avoid global info storage (Phil Sutter) [1757933] - [net] netfilter: nf_tables: take module reference when starting a batch (Phil Sutter) [1757933] - [net] netfilter: nf_tables: make valid_genid callback mandatory (Phil Sutter) [1757933] - [net] netfilter: nf_tables: add and use helper for module autoload (Phil Sutter) [1757933]- [kernel] sched: Fix missing bracket in membarrier_switch_mm from mismerge (Phil Auld) [1745111] - [fs] nfs: fix NULL deference in nfs4_get_valid_delegation ("J. Bruce Fields") [1831553] - [acpi] PCI/AER: Use only _OSC to determine AER ownership (Myron Stowe) [1712820] - [pci] PCI/EDR: Log only ACPI_NOTIFY_DISCONNECT_RECOVER events (Myron Stowe) [1712820] - [pci] PCI/AER: Rationalize error status register clearing (Myron Stowe) [1712820] - [pci] PCI/DPC: Add Error Disconnect Recover (EDR) support (Myron Stowe) [1712820] - [pci] PCI/DPC: Expose dpc_process_error(), dpc_reset_link() for use by EDR (Myron Stowe) [1712820] - [pci] PCI/AER: Add pci_aer_raw_clear_status() to unconditionally clear Error Status (Myron Stowe) [1712820] - [pci] PCI/DPC: Cache DPC capabilities in pci_init_capabilities() (Myron Stowe) [1712820] - [pci] PCI/ERR: Return status of pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/ERR: Remove service dependency in pcie_do_recovery() (Myron Stowe) [1712820] - [pci] PCI/DPC: Move DPC data into struct pci_dev (Myron Stowe) [1712820] - [pci] PCI/ERR: Update error status after reset_link() (Myron Stowe) [1712820] - [pci] PCI/ERR: Combine pci_channel_io_frozen cases (Myron Stowe) [1712820] - [pci] PCI/ASPM: Reduce severity of common clock config message (Myron Stowe) [1712820] - [pci] PCI/ASPM: Clear the correct bits when enabling L1 substates (Myron Stowe) [1712820] - [pci] PCI/PM: Print config space of devices before suspend (Myron Stowe) [1712820] - [pci] PCI/AER: Initialize aer_fifo (Myron Stowe) [1712820] - [pci] PCI/AER: Factor message prefixes with dev_fmt() (Myron Stowe) [1712820] - [pci] PCI/AER: Log which device prevents error recovery (Myron Stowe) [1712820] - [security] ima: Switch to ima_hash_algo for boot aggregate (Jerry Snitselaar) [1786441] - [mm] mm: mempolicy: require at least one nodeid for MPOL_PREFERRED (Rafael Aquini) [1834435] {CVE-2020-11565} - [tools] perf maps: Add missing unlock to maps__insert() error case (Michael Petlan) [1818838] - [tools] perf dso: Fix dso comparison (Michael Petlan) [1818838] - [tools] perf block-info: Fix wrong block address comparison in block_info__cmp() (Michael Petlan) [1818838] - [tools] libperf: Setup initial evlist::all_cpus value (Michael Petlan) [1818838] - [tools] perf report: Fix no libunwind compiled warning break s390 issue (Michael Petlan) [1818838] - [tools] perf hists: Fix variable name's inconsistency in hists__for_each() macro (Michael Petlan) [1818838] - [tools] perf map: Set kmap->kmaps backpointer for main kernel map chunks (Michael Petlan) [1818838] - [tools] perf report: Fix incorrectly added dimensions as switch perf data file (Michael Petlan) [1818838] - [tools] tools lib traceevent: Fix memory leakage in filter_event (Michael Petlan) [1818838] - [tools] perf vendor events s390: Remove name from L1D_RO_EXCL_WRITES description (Michael Petlan) [1818838] - [tools] perf vendor events s390: Fix counter long description for DTLB1_GPAGE_WRITES (Michael Petlan) [1818838] - [tools] libtraceevent: Allow custom libdir path (Michael Petlan) [1818838] - [tools] perf top: Do not bail out when perf_env__read_cpuid() returns ENOSYS (Michael Petlan) [1818838] - [tools] perf arch: Make the default get_cpuid() return compatible error (Michael Petlan) [1818838] - [tools] perf inject: Fix processing of ID index for injected instruction tracing (Michael Petlan) [1818838] - [tools] perf report: Bail out --mem-mode if mem info is not available (Michael Petlan) [1818838] - [tools] perf report: Make -F more strict like -s (Michael Petlan) [1818838] - [tools] perf report/top TUI: Replace pr_err() with ui__error() (Michael Petlan) [1818838] - [tools] libtraceevent: Copy pkg-config file to output folder when using O= (Michael Petlan) [1818838] - [tools] libtraceevent: Fix lib installation with O= (Michael Petlan) [1818838] - [tools] perf kvm: Clarify the 'perf kvm' -i and -o command line options (Michael Petlan) [1818838] - [tools] perf machine: Fill map_symbol->maps in append_inlines() to fix segfault (Michael Petlan) [1818838] - [tools] perf jit: Move test functionality in to a test (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for enabling/disabling events (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to enable/disable for a specific CPU (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for reading (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for opening events (Michael Petlan) [1818838] - [tools] perf stat: Factor out open error handling (Michael Petlan) [1818838] - [tools] perf stat: Use affinity for closing file descriptors (Michael Petlan) [1818838] - [tools] perf evsel: Add functions to close evsel on a CPU (Michael Petlan) [1818838] - [tools] perf evsel: Add iterator to iterate over events ordered by CPU (Michael Petlan) [1818838] - [tools] perf evlist: Maintain evlist->all_cpus (Michael Petlan) [1818838] - [tools] perf cpumap: Maintain cpumaps ordered and without dups (Michael Petlan) [1818838] - [tools] perf script: Fix brstackinsn for AUXTRACE (Michael Petlan) [1818838] - [tools] perf affinity: Add infrastructure to save/restore affinity (Michael Petlan) [1818838] - [tools] perf pmu: Use file system cache to optimize sysfs access (Michael Petlan) [1818838] - [tools] perf regs: Make perf_reg_name() return "unknown" instead of NULL (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf diff: Use llabs() with 64-bit values (Michael Petlan) [1818838] - [tools] perf tests: Rename tests/map_groups.c to tests/maps.c (Michael Petlan) [1818838] - [tools] perf tests: Rename thread-mg-share to thread-maps-share (Michael Petlan) [1818838] - [tools] perf maps: Rename map_groups.h to maps.h (Michael Petlan) [1818838] - [tools] perf maps: Rename 'mg' variables to 'maps' (Michael Petlan) [1818838] - [tools] perf map_symbol: Rename ms->mg to ms->maps (Michael Petlan) [1818838] - [tools] perf addr_location: Rename al->mg to al->maps (Michael Petlan) [1818838] - [tools] perf thread: Rename thread->mg to thread->maps (Michael Petlan) [1818838] - [tools] perf maps: Merge 'struct maps' with 'struct map_groups' (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some more instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Remove unused functions (Michael Petlan) [1818838] - [tools] perf map: Remove needless struct forward declarations (Michael Petlan) [1818838] - [tools] perf map: Ditch leftover map__reloc_vmlinux() prototype (Michael Petlan) [1818838] - [tools] perf script: Move map__fprintf_srccode() to near its only user (Michael Petlan) [1818838] - [tools] perf parse: Fix potential memory leak when handling tracepoint errors (Michael Petlan) [1818838] - [tools] libtraceevent: Fix memory leakage in copy_filter_type (Michael Petlan) [1818838] - [tools] libtraceevent: Fix header installation (Michael Petlan) [1818838] - [tools] perf intel-bts: Does not support AUX area sampling (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for decoding AUX area samples (Michael Petlan) [1818838] - [tools] perf intel-pt: Add support for recording AUX area samples (Michael Petlan) [1818838] - [tools] perf pmu: When using default config, record which bits of config were changed by the user (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for queuing AUX area samples (Michael Petlan) [1818838] - [tools] perf session: Add facility to peek at all events (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for dumping AUX area samples (Michael Petlan) [1818838] - [tools] perf inject: Cut AUX area samples (Michael Petlan) [1818838] - [tools] perf record: Add aux-sample-size config term (Michael Petlan) [1818838] - [tools] perf record: Add support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf auxtrace: Add support for AUX area sample recording (Michael Petlan) [1818838] - [tools] perf auxtrace: Move perf_evsel__find_pmu() (Michael Petlan) [1818838] - [tools] perf record: Add a function to test for kernel support for AUX area sampling (Michael Petlan) [1818838] - [tools] perf tools: Add kernel AUX area sampling definitions (Michael Petlan) [1818838] - [tools] perf report: Jump to symbol source view from total cycles view (Michael Petlan) [1818838] - [tools] perf util: Move block TUI function to ui browsers (Michael Petlan) [1818838] - [tools] perf dso: Move dso_id from 'struct map' to 'struct dso' (Michael Petlan) [1818838] - [tools] perf dsos: Remove unused dsos__find() method (Michael Petlan) [1818838] - [tools] perf map: Move comparision of map's dso_id to a separate function (Michael Petlan) [1818838] - [tools] perf map: Pass a dso_id to map__new() (Michael Petlan) [1818838] - [tools] perf map: Move maj/min/ino/ino_generation to separate struct (Michael Petlan) [1818838] - [tools] perf parse: Report initial event parsing error (Michael Petlan) [1818838] - [tools] x86/insn: perf tools: Add some instructions to the new instructions test (Michael Petlan) [1818838] - [tools] perf map: Move seldom used ->flags field to second cacheline (Michael Petlan) [1818838] - [tools] perf map: Use bitmap for booleans (Michael Petlan) [1818838] - [tools] libtraceevent: Fix parsing of event o and X argument types (Michael Petlan) [1818838] - [tools] perf callchain: Fix segfault in thread__resolve_callchain_sample() (Michael Petlan) [1818838] - [tools] perf map_groups: Auto sort maps by name, if needed (Michael Petlan) [1818838] - [tools] perf machine: No need to check if kernel module maps pre-exist (Michael Petlan) [1818838] - [tools] perf record: No need to process the synthesized MMAP events twice (Michael Petlan) [1818838] - [tools] perf map: No need to adjust the long name of modules (Michael Petlan) [1818838] - [tools] perf map_groups: Add a front end cache for map lookups by name (Michael Petlan) [1818838] - [tools] perf maps: Do not use an rbtree to sort by map name (Michael Petlan) [1818838] - [tools] perf maps: Purge the entries from maps->names in __maps__purge() (Michael Petlan) [1818838] - [tools] perf vendor events power9: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events power8: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix commas so PMU event files are valid JSON (Michael Petlan) [1818838] - [tools] perf parse: Use YYABORT to clear stack after failure, plugging leaks (Michael Petlan) [1818838] - [tools] perf tool: Provide an option to print perf_event_open args and return value (Michael Petlan) [1818838] - [tools] perf map: Remove ->groups from 'struct map' (Michael Petlan) [1818838] - [tools] perf map: Combine maps__fixup_overlappings with its only use (Michael Petlan) [1818838] - [tools] perf annotate: Stop using map->groups, use map_symbol->mg instead (Michael Petlan) [1818838] - [tools] perf tools: Add a 'struct map_groups' pointer to 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf symbols: Use kmaps(map)->machine when we know its a kernel map (Michael Petlan) [1818838] - [tools] pref tools: Make 'struct addr_map_symbol' contain 'struct map_symbol' (Michael Petlan) [1818838] - [tools] perf callchain: Use 'struct map_symbol' in 'struct callchain_cursor_node' (Michael Petlan) [1818838] - [tools] perf unwind: Use 'struct map_symbol' in 'struct unwind_entry' (Michael Petlan) [1818838] - [tools] perf annotate: Pass a 'map_symbol' in places receiving a pair of 'map' and 'symbol' pointers (Michael Petlan) [1818838] - [tools] perf tools: Add map_groups to 'struct addr_location' (Michael Petlan) [1818838] - [tools] perf map_groups: Pass the object to map_groups__find_ams() (Michael Petlan) [1818838] - [tools] perf symbols: Stop using map->groups, we can use kmaps instead (Michael Petlan) [1818838] - [tools] perf map: Use map->dso->kernel + map__kmaps() in map__kmaps() (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for tui (Michael Petlan) [1818838] - [tools] perf report: Support --percent-limit for --total-cycles (Michael Petlan) [1818838] - [tools] perf report: Sort by sampled cycles percent per block for stdio (Michael Petlan) [1818838] - [tools] perf hist: Support block formats with compare/sort/display (Michael Petlan) [1818838] - [tools] perf hist: Count the total cycles of all samples (Michael Petlan) [1818838] - [tools] perf block: Cleanup and refactor block info functions (Michael Petlan) [1818838] - [tools] perf diff: Don't use hack to skip column length calculation (Michael Petlan) [1818838] - [tools] perf tests: Fix out of bounds memory access (Michael Petlan) [1818838] - [tools] perf record: Add support for limit perf output file size (Michael Petlan) [1818838] - [tools] perf annotate: Fix heap overflow (Michael Petlan) [1818838] - [tools] perf machine: Add kernel_dso() method (Michael Petlan) [1818838] - [tools] perf symbols: Remove needless checks for map->groups->machine (Michael Petlan) [1818838] - [tools] perf parse: Add a deep delete for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: If pmu configuration fails free terms (Michael Petlan) [1818838] - [tools] perf parse: Before yyabort-ing free components (Michael Petlan) [1818838] - [tools] perf parse: Add destructors for parse event terms (Michael Petlan) [1818838] - [tools] perf parse: Ensure config and str in terms are unique (Michael Petlan) [1818838] - [tools] perf parse: Add parse events handle error (Michael Petlan) [1818838] - [tools] perf inject: Make --strip keep evsels (Michael Petlan) [1818838] - [tools] perf tools: Fix cross compile for ARM64 (Michael Petlan) [1818838] - [tools] perf stat: Add --per-node agregation support (Michael Petlan) [1818838] - [tools] perf env: Add perf_env__numa_node() (Michael Petlan) [1818838] - [tools] perf tools: Splice events onto evlist even on error (Michael Petlan) [1818838] - [tools] libsubcmd: Use -O0 with DEBUG=1 (Michael Petlan) [1818838] - [tools] libsubcmd: Move EXTRA_FLAGS to the end to allow overriding existing flags (Michael Petlan) [1818838] - [tools] perf map_groups: Introduce for_each_entry() and for_each_entry_safe() iterators (Michael Petlan) [1818838] - [tools] perf maps: Add for_each_entry()/_safe() iterators (Michael Petlan) [1818838] - [tools] perf map: Allow map__next() to receive a NULL arg (Michael Petlan) [1818838] - [tools] perf map: Check if the map still has some refcounts on exit (Michael Petlan) [1818838] - [tools] perf dso: Add dso__data_write_cache_addr() (Michael Petlan) [1818838] - [tools] perf dso: Refactor dso_cache__read() (Michael Petlan) [1818838] - [tools] perf auxtrace: Add auxtrace_cache__remove() (Michael Petlan) [1818838] - [tools] perf jevents: Fix resource leak in process_mapfile() and main() (Michael Petlan) [1818838] - [tools] perf kvm: Use evlist layer api when possible (Michael Petlan) [1818838] - [tools] perf tests: Fix a typo (Michael Petlan) [1818838] - [tools] perf tools: Avoid a malloc() for array events (Michael Petlan) [1818838] - [tools] perf tools: Move ALLOC_LIST into a function (Michael Petlan) [1818838] - [tools] perf evsel: Avoid close(-1) (Michael Petlan) [1818838] - [tools] perf evsel: Always preserve errno while cleaning up perf_event_open failures (Michael Petlan) [1818838] - [tools] perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR (Michael Petlan) [1818838] - [tools] perf llvm: Make .o saving a debug message, not an info one (Michael Petlan) [1818838] - [tools] perf record: Put a copy of kcore into the perf.data directory (Michael Petlan) [1818838] - [tools] perf data: Support single perf.data file directory (Michael Petlan) [1818838] - [tools] perf session: Fix indent in perf_session__new()" (Michael Petlan) [1818838] - [tools] perf data: Rename directory "header" file to "data" (Michael Petlan) [1818838] - [tools] perf data: Move perf_dir_version into data.h (Michael Petlan) [1818838] - [tools] perf data: Correctly identify directory data files (Michael Petlan) [1818838] - [tools] perf trace: Use STUL_STRARRAY_FLAGS with mmap (Michael Petlan) [1818838] - [tools] perf trace: Wire up strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Introduce strarray__strtoul_flags() (Michael Petlan) [1818838] - [tools] libbeauty: Make the mmap_flags strarray visible outside of its beautifier (Michael Petlan) [1818838] - [tools] perf trace: Use strtoul for the fcntl 'cmd' argument (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarrays() (Michael Petlan) [1818838] - [tools] libperf: Add pr_err() macro (Michael Petlan) [1818838] - [tools] libperf: Do not export perf_evsel__init()/perf_evlist__init() (Michael Petlan) [1818838] - [tools] libperf: Keep count of failed tests (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_cpus test (Michael Petlan) [1818838] - [tools] libperf: Add tests_mmap_thread test (Michael Petlan) [1818838] - [tools] libperf: Link static tests with libapi.a (Michael Petlan) [1818838] - [tools] libperf: Move mask setup to perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Move mmap allocation to perf_evlist__mmap_ops::get (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__for_each_mmap() (Michael Petlan) [1818838] - [tools] perf tests: Disable bp_signal testing for arm64 (Michael Petlan) [1818838] - [tools] perf tests bp_account: Add dedicated checking helper is_supported() (Michael Petlan) [1818838] - [tools] perf tests: Remove needless headers for bp_account (Michael Petlan) [1818838] - [tools] perf list: Hide deprecated events by default (Michael Petlan) [1818838] - [tools] perf trace: Pass a syscall_arg to syscall_arg_fmt->strtoul() (Michael Petlan) [1818838] - [tools] perf trace: Honour --max-events in processing syscalls:sys_enter_* (Michael Petlan) [1818838] - [tools] libbeauty: Introduce syscall_arg__strtoul_strarray() (Michael Petlan) [1818838] - [tools] perf trace: Initialize evsel_trace->fmt for syscalls:sys_enter_* tracepoints (Michael Petlan) [1818838] - [tools] perf trace: Introduce 'struct evsel__trace' for evsel->priv needs (Michael Petlan) [1818838] - [tools] perf trace: Hide evsel->access further, simplify code (Michael Petlan) [1818838] - [tools] perf trace: Introduce accessors to trace specific evsel->priv (Michael Petlan) [1818838] - [tools] perf trace: Show error message when not finding a field used in a filter expression (Michael Petlan) [1818838] - [tools] perf trace: Hook the 'vec' tracepoint argument with the x86 IRQ vectors scnprintf/strtoul (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated x86 IRQ vector array (Michael Petlan) [1818838] - [tools] libbeauty: Add a strarray__scnprintf_suffix() method (Michael Petlan) [1818838] - [tools] libbeauty: Hook up the x86 irq_vectors table generator (Michael Petlan) [1818838] - [tools] libbeauty: Add a generator for x86's IRQ vectors -> strings (Michael Petlan) [1818838] - [tools] tools arch x86: Grab a copy of the file containing the IRQ vector defines (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 HHA PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 L3C PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Add some missing events for Hisi hip08 DDRC PMU (Michael Petlan) [1818838] - [tools] perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname (Michael Petlan) [1818838] - [tools] perf trace: Support tracepoint dynamic char arrays (Michael Petlan) [1818838] - [tools] perf trace: Filter own pid to avoid a feedback look in 'perf trace record -a' (Michael Petlan) [1818838] - [tools] perf string: Export asprintf__tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf trace: Introduce --errno-summary (Michael Petlan) [1818838] - [tools] perf trace: Add syscall failure stats to -s/--summary and -S/--with-summary (Michael Petlan) [1818838] - [tools] perf stat: Support --all-kernel/--all-user (Michael Petlan) [1818838] - [tools] perf annotate: Fix objdump --no-show-raw-insn flag (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'expand' command (Michael Petlan) [1818838] - [tools] perf annotate: Don't pipe objdump output through 'grep' command (Michael Petlan) [1818838] - [tools] perf annotate: Use libsubcmd's run-command.h to fork objdump (Michael Petlan) [1818838] - [tools] perf annotate: Avoid reallocation in objdump parsing (Michael Petlan) [1818838] - [tools] perf report: Add warning when libunwind not compiled in (Michael Petlan) [1818838] - [tools] perf test: Avoid infinite loop for task exit case (Michael Petlan) [1818838] - [tools] perf test: Report failure for mmap events (Michael Petlan) [1818838] - [tools] perf script: Fix --reltime with --time (Michael Petlan) [1818838] - [tools] perf tools: Allow to build with -ltcmalloc (Michael Petlan) [1818838] - [tools] perf diff: Report noisy for cycles diff (Michael Petlan) [1818838] - [tools] perf tools: Propagate CFLAGS to libperf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__filter_pollfd() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__purge() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__exit() (Michael Petlan) [1818838] - [tools] libperf: Move the pollfd allocation from tools/perf to libperf (Michael Petlan) [1818838] - [tools] libperf: Centralize map refcnt setting (Michael Petlan) [1818838] - [tools] perf evlist: Switch to libperf's mmap interface (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_mmap() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce perf_evlist__mmap_cb_get() (Michael Petlan) [1818838] - [tools] perf tools: Introduce perf_evlist__mmap_cb_idx() (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::mmap callback (Michael Petlan) [1818838] - [tools] libperf: Add perf_evlist_mmap_ops::get callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist_mmap_ops::idx callback (Michael Petlan) [1818838] - [tools] libperf: Introduce perf_evlist__mmap_ops() (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_evlist__mmap()/munmap() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_event() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_done() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__read_init() from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__consume() function from tools/perf (Michael Petlan) [1818838] - [tools] perf tools: Use perf_mmap way to detect aux mmap (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__put() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__unmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__get() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Adopt perf_mmap__mmap_len() function from tools/perf (Michael Petlan) [1818838] - [tools] libperf: Add 'struct perf_mmap_param' (Michael Petlan) [1818838] - [tools] libperf: Add perf_mmap__init() function (Michael Petlan) [1818838] - [tools] perf tools: Avoid 'sample_reg_masks' being const + weak (Michael Petlan) [1818838] - [tools] perf beauty: Introduce strtoul() for x86 MSRs (Michael Petlan) [1818838] - [tools] perf trace: Expand strings in filters to integers (Michael Petlan) [1818838] - [tools] perf trace: Introduce a strtoul() method for 'struct strarrays' (Michael Petlan) [1818838] - [tools] perf trace: Add a strtoul() method to 'struct syscall_arg_fmt' (Michael Petlan) [1818838] - [tools] perf trace: Introduce --filter for tracepoint events (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter_pid() and append_tp_filter_pids() (Michael Petlan) [1818838] - [tools] perf evlist: Introduce append_tp_filter() method (Michael Petlan) [1818838] - [tools] perf evlist: Factor out asprintf routine to build a tracepoint pid filter (Michael Petlan) [1818838] - [tools] perf trace: Associate the "msr" tracepoint arg name with x86_MSR__scnprintf() (Michael Petlan) [1818838] - [tools] perf trace beauty: Add the glue for the autogenerated MSR arrays (Michael Petlan) [1818838] - [tools] perf trace: Allow associating scnprintf routines with well known arg names (Michael Petlan) [1818838] - [tools] perf beauty: Hook up the x86 MSR table generator (Michael Petlan) [1818838] - [tools] perf trace beauty: Add a x86 MSR cmd id->str table generator (Michael Petlan) [1818838] - [tools] perf beauty: Make strarray's offset be u64 (Michael Petlan) [1818838] - [tools] perf trace: Allow choosing how to augment the tracepoint arguments (Michael Petlan) [1818838] - [tools] perf trace: Enclose all events argument lists with () (Michael Petlan) [1818838] - [tools] perf trace: Add array of chars scnprintf beautifier (Michael Petlan) [1818838] - [tools] perf trace: Add the syscall_arg_fmt pointer to syscall_arg (Michael Petlan) [1818838] - [tools] perf trace: Move some scnprintf methods from syscall to syscall_arg_fmt (Michael Petlan) [1818838] - [tools] perf trace: Allocate an array of beautifiers for tracepoint args (Michael Petlan) [1818838] - [tools] perf trace: Factor out the initialization of syscal_arg_fmt->scnprintf (Michael Petlan) [1818838] - [tools] perf script: Allow --time with --reltime (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add Time chart by CPU (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add ability for Call tree to open at a specified task and time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Tidy up Call tree call_time (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add global time range calculations (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add HBoxLayout and VBoxLayout (Michael Petlan) [1818838] - [tools] perf scripts python: exported-sql-viewer.py: Add LookupModel() (Michael Petlan) [1818838] - [tools] perf trace augmented_syscalls: Do not show syscalls when none was asked for (Michael Petlan) [1818838] - [tools] perf trace: Postpone parsing .perfconfig trace.add_events to after --verbose is processed (Michael Petlan) [1818838] - [tools] perf trace: Generalize the syscall_fmt find routines (Michael Petlan) [1818838] - [tools] perf trace: Separate 'struct syscall_fmt' definition from syscall_fmts variable (Michael Petlan) [1818838] - [tools] perf trace: Make evlist__set_evsel_handler() affect just entries without a handler (Michael Petlan) [1818838] - [tools] perf evlist: Adopt __set_tracepoint_handlers method from perf_session (Michael Petlan) [1818838] - [tools] perf top: Initialize perf_env->cpuid, needed by the per arch annotation init routine (Michael Petlan) [1818838] - [tools] perf env: Add routine to read the env->cpuid from the running machine (Michael Petlan) [1818838] - [kernel] perf/cgroups: Install cgroup events to correct cpuctx (Michael Petlan) [1818838] - [kernel] perf/core: Fix mlock accounting in perf_mmap() (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Remove PCIe3 unit for SNR (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Fix missing marker for snr_uncore_imc_freerunning_events (Michael Petlan) [1818838] - [x86] perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family (Michael Petlan) [1818838] - [kernel] perf: Correctly handle failed perf_get_aux_event() (Michael Petlan) [1818838] - [x86] perf/x86/intel: Fix PT PMI handling (Michael Petlan) [1818838] - [x86] perf/x86/intel/bts: Fix the use of page_private() (Michael Petlan) [1818838] - [x86] perf/x86: Fix potential out-of-bounds access (Michael Petlan) [1818838] - [x86] perf/x86: Implement immediate enforcement of /sys/devices/cpu/rdpmc value of 0 (Michael Petlan) [1818838] - [kernel] perf/core: Make the mlock accounting simple again (Michael Petlan) [1818838] - [kernel] perf/core: Fix the mlock accounting, again (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Prevent redundant WRMSRs (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Opportunistically use single range output mode (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Add sampling support (Michael Petlan) [1818838] - [x86] perf/x86/intel/pt: Factor out pt_config_start() (Michael Petlan) [1818838] - [kernel] perf/aux: Allow using AUX data in perf samples (Michael Petlan) [1818838] - [kernel] perf/core: Fix unlock balance in perf_init_event() (Michael Petlan) [1818838] - [x86] perf/x86/amd: Remove set but not used variable 'active' (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() for TYPE_SOFTWARE (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_init_event() (Michael Petlan) [1818838] - [kernel] perf/core: Optimize perf_install_in_event() (Michael Petlan) [1818838] - [x86] perf/x86: Synchronize PMU task contexts on optimized context switches (Michael Petlan) [1818838] - [x86] perf/x86/intel: Implement LBR callstack context synchronization (Michael Petlan) [1818838] - [x86] perf/x86: Install platform specific ->swap_task_ctx() adapter (Michael Petlan) [1818838] - [x86] perf/core, perf/x86: Introduce swap_task_ctx() method at 'struct pmu' (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Matching the memory allocate and free, in rb_alloc() (Michael Petlan) [1818838] - [kernel] perf/ring_buffer: Modify the parameter type of perf_mmap_free_page() (Michael Petlan) [1818838] - [documentation] Documentation: Document sysfs interfaces purr, spurr, idle_purr, idle_spurr (Steve Best) [1783286] - [powerpc] powerpc/sysfs: Show idle_purr and idle_spurr for every CPU (Steve Best) [1783286] - [powerpc] powerpc/pseries: Account for SPURR ticks on idle CPUs (Steve Best) [1783286] - [powerpc] powerpc/idle: Store PURR snapshot in a per-cpu global variable (Steve Best) [1783286] - [powerpc] powerpc: Move idle_loop_prolog()/epilog() functions to header file (Steve Best) [1783286] - [kernel] padata: add separate cpuhp node for CPUHP_PADATA_DEAD (Herbert Xu) [1671674] - [kernel] padata: fix uninitialized return value in padata_replace() (Herbert Xu) [1671674] - [kernel] padata: remove reorder_objects (Herbert Xu) [1671674] - [crypto] padata: remove cpumask change notifier (Herbert Xu) [1671674] - [kernel] padata: always acquire cpu_hotplug_lock before pinst->lock (Herbert Xu) [1671674] - [kernel] padata: validate cpumask without removed CPU during offline (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Avoid deadlock by using per-instance padata queues (Herbert Xu) [1671674] - [kernel] padata: Remove unused padata_remove_cpu (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - Fix user-after-free on module unload (Herbert Xu) [1671674] - [kernel] padata: Remove broken queue flushing (Herbert Xu) [1671674] - [kernel] padata: remove cpu_index from the parallel_queue (Herbert Xu) [1671674] - [kernel] padata: unbind parallel jobs from specific CPUs (Herbert Xu) [1671674] - [kernel] padata: use separate workqueues for parallel and serial work (Herbert Xu) [1671674] - [crypto] padata, pcrypt: take CPU hotplug lock internally in padata_alloc_possible (Herbert Xu) [1671674] - [crypto] crypto: pcrypt - remove padata cpumask notifier (Herbert Xu) [1671674] - [crypto] padata: make padata_do_parallel find alternate callback CPU (Herbert Xu) [1671674] - [kernel] workqueue: require CPU hotplug read exclusion for apply_workqueue_attrs (Herbert Xu) [1671674] - [kernel] workqueue: unconfine alloc/apply/free_workqueue_attrs() (Herbert Xu) [1671674] - [crypto] padata: allocate workqueue internally (Herbert Xu) [1671674] - [kernel] padata: initialize pd->cpu with effective cpumask (Herbert Xu) [1671674] - [kernel] padata: purge get_cpu and reorder_via_wq from padata_do_serial (Herbert Xu) [1671674] - [kernel] padata: Replace delayed timer with immediate workqueue in padata_reorder (Herbert Xu) [1671674] - [kernel] padata: use smp_mb in padata_reorder to avoid orphaned padata jobs (Herbert Xu) [1671674] - [kernel] tracing: Avoid memory leak in process_system_preds() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Have error path in predicate_parse() free its allocated memory (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Avoid memory leak in predicate_parse() (Jerome Marchand) [1829953] {CVE-2019-19072} - [kernel] tracing: Fix memory leak in create_filter() (Jerome Marchand) [1829953] {CVE-2019-19072} - [tools] KVM: selftests: s390x: Provide additional num-guest-pages adjustment (Philipp Rudo) [1792266] - [s390] s390/protvirt: fix compilation issue (Philipp Rudo) [1792266] - [kvm] KVM: s390: Fix PV check in deliverable_irqs() (Philipp Rudo) [1792266] - [kvm] KVM: s390: Return last valid slot if approx index is out-of-bounds (Philipp Rudo) [1792266] - [kvm] KVM: s390: vsie: Fix delivery of addressing exceptions (Philipp Rudo) [1792266] - [mm] s390/gmap: return proper error code on ksm unsharing (Philipp Rudo) [1792266] - [s390] KVM: s390: mark sie block as 512 byte aligned (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: check for registers to NOT change on reset (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: test more register variants for the reset ioctl (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fix early guest crash (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390: fixup fprintf format error in reset.c (Philipp Rudo) [1792266] - [kvm] KVM: s390: Also reset registers in sync regs for initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: introduce module parameter kvm.use_gisa (Philipp Rudo) [1792266] - [documentation] KVM: s390: protvirt: Add KVM api documentation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: introduce and enable KVM_CAP_S390_PROTECTED (Philipp Rudo) [1792266] - [documentation] DOCUMENTATION: Protected virtual machine introduction and IPL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV cpu reset calls (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: do not inject interrupts after start (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Support cmd 5 operation state (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Report CPU state to Ultravisor (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: UV calls in support of diag308 0, 1 (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add program exception injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Only sync fmt4 registers (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Do only reset registers that are accessible (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: disallow one_reg (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: STSI handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Write sthyi data to instruction data area (Philipp Rudo) [1792266] - [kvm] KVM: s390/mm: handle guest unpin events (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: handle secure guest prefix pages (Philipp Rudo) [1792266] - [kvm] KVM: S390: protvirt: Introduce instruction data area bounce buffer (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add new gprs location handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle spec exception loops (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add SCLP interrupt handling (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Implement interrupt injection (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Instruction emulation (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Handle SE notification interceptions (Philipp Rudo) [1792266] - [mm] KVM: s390/mm: Make pages accessible before destroying the guest (Philipp Rudo) [1792266] - [mm] KVM: s390: protvirt: Secure memory is not mergeable (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add initial vm and cpu lifecycle handling (Philipp Rudo) [1792266] - [s390] KVM: s390: add new variants of UV CALL (Philipp Rudo) [1792266] - [kvm] KVM: s390: protvirt: Add UV debug trace (Philipp Rudo) [1792266] - [kvm] KVM: s390/interrupt: do not pin adapter interrupt pages (Philipp Rudo) [1792266] - [s390] s390/protvirt: Add sysfs firmware interface for Ultravisor information (Philipp Rudo) [1792266] - [s390] s390/mm: add (non)secure page access exceptions handlers (Philipp Rudo) [1792266] - [s390] s390/mm: provide memory management functions for protected KVM guests (Philipp Rudo) [1792266] - [s390] s390/protvirt: add ultravisor initialization (Philipp Rudo) [1792266] - [s390] s390/protvirt: introduce host side setup (Philipp Rudo) [1792266] - [documentation] KVM: s390: rstify new ioctls in api.rst (Philipp Rudo) [1792266] - [s390] s390/uv: Fix handling of length extensions (Philipp Rudo) [1792266] - [tools] selftests: KVM: testing the local IRQs resets (Philipp Rudo) [1792266] - [tools] selftests: KVM: s390x: Add reset tests (Philipp Rudo) [1792266] - [kvm] KVM: s390: Add new reset vcpu API (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup initial cpu reset (Philipp Rudo) [1792266] - [kvm] KVM: s390: do not clobber registers during guest reset/store status (Philipp Rudo) [1792266] - [kvm] KVM: s390: ENOTSUPP -> EOPNOTSUPP fixups (Philipp Rudo) [1792266] - [s390] s390/uv: use EOPNOTSUPP instead of ENOTSUPP (Philipp Rudo) [1792266] - [kvm] KVM: s390: Do not yield when target is already running (Philipp Rudo) [1792266] - [kvm] KVM: s390: count invalid yields (Philipp Rudo) [1792266] - [kvm] KVM: s390: mark __insn32_query() as __always_inline (Philipp Rudo) [1792266] - [kvm] KVM: s390: fix __insn32_query() inline assembly (Philipp Rudo) [1792266] - [kvm] KVM: s390: Cleanup kvm_arch_init error path (Philipp Rudo) [1792266] - [kvm] KVM: s390: Remove unused parameter from __inject_sigp_restart() (Philipp Rudo) [1792266] - [mm] mm/gup/writeback: add callbacks for inaccessible pages (Philipp Rudo) [1792266] - [scsi] scsi: libiscsi: fall back to sendmsg for slab pages (Maurizio Lombardi) [1825775] - [fs] smb3: fix default permissions on new files when mounting with modefromsid (Leif Sahlberg) [1833374] - [fs] gfs2: don't call quota_unhold if quotas are not locked (Robert S Peterson) [1830043] - [fs] gfs2: move privileged user check to gfs2_quota_lock_check (Robert S Peterson) [1830043] - [fs] gfs2: remove check for quotas on in gfs2_quota_check (Robert S Peterson) [1830043] - [fs] gfs2: Change BUG_ON to an assert_withdraw in gfs2_quota_change (Robert S Peterson) [1830043] - [fs] gfs2: Fix problems regarding gfs2_qa_get and _put (Robert S Peterson) [1830043] - [powerpc] powerpc/eeh: Fix deadlock handling dead PHB (Sam Bobroff) [1774820] - [powerpc] powerpc/powernv/eeh: Fix oops when probing cxl devices (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Slightly simplify eeh_add_to_parent_pe() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Remove unused return path from eeh_pe_dev_traverse() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Fix crash when edev->pdev changes (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Convert log messages to eeh_edev_* macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Introduce EEH edev logging macros (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Add bdfn field to eeh_dev (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Refactor around eeh_probe_devices() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: EEH for pSeries hot plug (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Initialize EEH address cache earlier (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Improve debug messages around device addition (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh: Clear stale EEH_DEV_NO_HANDLER flag (Sam Bobroff) [1774820] - [powerpc] powerpc/64: Adjust order in pcibios_init() (Sam Bobroff) [1774820] - [powerpc] powerpc/pci: Add pci_find_controller_for_domain() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Bump log level of eeh_addr_cache_print() (Sam Bobroff) [1774820] - [powerpc] powerpc/eeh_cache: Add pr_debug() prints for insert/remove (Sam Bobroff) [1774820]- [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT + AXP288 model (David Arcari) [1829900] - [gpio] gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk (David Arcari) [1829900] - [gpio] gpiolib: Fix irq_disable() semantics (David Arcari) [1829900] - [gpio] gpiolib: fix gpio_do_set_config() (David Arcari) [1829900] - [gpio] gpiolib: remove unnecessary argument from set_config call (David Arcari) [1829900] - [gpio] Revert "gpiolib: remove set but not used variable 'config'" (David Arcari) [1829900] - [gpio] Revert "gpiolib: Remove duplicated function gpio_do_set_config()" (David Arcari) [1829900] - [gpio] treewide: remove redundant IS_ERR() before error code check (David Arcari) [1829900] - [gpio] gpiolib: hold gpio devices lock until ->descs array is initialised (David Arcari) [1829900] - [gpio] gpio: Drop the chained IRQ handler assign function (David Arcari) [1829900] - [gpio] gpio: xlp: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: qcom: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [pinctrl] pinctrl: iproc: allow for error from platform_get_irq() (David Arcari) [1829900] - [pinctrl] pinctrl: bcm-iproc: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Pass irqchip when adding gpiochip (David Arcari) [1829900] - [gpio] gpio: pl061: Move irq_chip definition inside struct pl061 (David Arcari) [1829900] - [gpio] gpiolib: Lower verbosity when allocating hierarchy irq (David Arcari) [1829900] - [gpio] gpiolib: Remove duplicated function gpio_do_set_config() (David Arcari) [1829900] - [include] gpio: Fix the no return statement warning (David Arcari) [1829900] - [gpio] gpiolib: remove set but not used variable 'config' (David Arcari) [1829900] - [gpio] gpiolib: Set lockdep class for hierarchical irq domains (David Arcari) [1829900] - [gpio] gpiolib: Add the support for the msi parent domain (David Arcari) [1829900] - [gpio] gpiolib: Add support for the irqdomain which doesn't use irq_fwspec as arg (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in gpio_ioctl() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: use gpiochip_get_desc() in linehandle_create() (David Arcari) [1829900] - [gpio] gpiolib: convert the type of hwnum to unsigned int in gpiochip_get_desc() (David Arcari) [1829900] - [gpio] gpiolib: have a single place of calling set_config() (David Arcari) [1829900] - [gpio] gpiolib: use 'unsigned int' instead of 'unsigned' in gpio_set_config() (David Arcari) [1829900] - [gpio] gpio: gpiolib: fix confusing indention (David Arcari) [1829900] - [mmc] mmc: core: Rework cd-gpio handling (David Arcari) [1829900] - [mmc] mmc: core: Rework wp-gpio handling (David Arcari) [1829900] - [gpio] gpio: add gpiod_toggle_active_low() (David Arcari) [1829900] - [gpio] gpiolib: Make use of assign_bit() API (David Arcari) [1829900] - [gpio] gpiolib: Add GPIOCHIP_NAME definition (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism (David Arcari) [1829900] - [gpio] gpiolib: acpi: Turn dmi_system_id table into a generic quirk table (David Arcari) [1829900] - [gpio] gpiolib: fix up emulated open drain outputs (David Arcari) [1829900] - [gpio] gpio: Fix error message on out-of-range GPIO in lookup table (David Arcari) [1829900] - [gpio] gpiolib: of: Make of_gpio_spi_cs_get_count static (David Arcari) [1829900] - [gpio] gpio: Handle counting of Freescale chipselects (David Arcari) [1829900] - [gpio] gpio: of: Fix bogus reference to gpiod_get_count() (David Arcari) [1829900] - [gpio] gpiolib: Grammar s/manager/managed/ (David Arcari) [1829900] - [gpio] gpiolib: acpi: Make acpi_gpiochip_alloc_event always return AE_OK (David Arcari) [1829900] - [gpio] gpiolib: acpi: Print pin number on acpi_gpiochip_alloc_event errors (David Arcari) [1829900] - [gpio] gpiolib: fix coding style in gpiod_hog() (David Arcari) [1829900] - [gpio] gpio: add new SET_CONFIG ioctl() to gpio chardev (David Arcari) [1829900] - [gpio] gpiolib: move validation of line handle flags into helper function (David Arcari) [1829900] - [gpio] gpiolib: add support for biasing output lines (David Arcari) [1829900] - [gpio] gpiolib: add support for disabling line bias (David Arcari) [1829900] - [gpio] gpiolib: add support for pull up/down to lineevent_create (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] Revert "gpio: expose pull-up/pull-down line flags to userspace" (David Arcari) [1829900] - [gpio] gpiolib: No need to call gpiochip_remove_pin_ranges() twice (David Arcari) [1829900] - [include] gpio: Add definition for GPIO direction (David Arcari) [1829900] - [gpio] gpiolib: Switch order of valid mask and hw init (David Arcari) [1829900] - [gpio] gpio: of: don't warn if ignored GPIO flag matches the behavior (David Arcari) [1829900] - [gpio] gpio: fix kernel-doc for of_gpio_need_valid_mask() (David Arcari) [1829900] - [gpio] gpio: expose pull-up/pull-down line flags to userspace (David Arcari) [1829900] - [gpio] gpiolib: introduce fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: introduce devm_fwnode_gpiod_get_index() (David Arcari) [1829900] - [gpio] gpiolib: sanitize flags before allocating memory in lineevent_create() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add Terra Pad 1061 to the run_edge_events_on_boot_blacklist (David Arcari) [1829900] - [gpio] gpio: fix getting nonexclusive gpiods from DT (David Arcari) [1829900] - [gpio] gpiolib: don't clear FLAG_IS_OUT when emulating open-drain/open-source (David Arcari) [1829900] - [gpio] gpiolib: of: add a fallback for wlf, reset GPIO name (David Arcari) [1829900] - [gpio] gpio: remove explicit comparison with 0 (David Arcari) [1829900] - [gpio] gpio: devres: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Switch to EXPORT_SYMBOL_GPL() (David Arcari) [1829900] - [gpio] gpio: of: Make of_gpio_simple_xlate() private (David Arcari) [1829900] - [gpio] gpio: of: Make of_get_named_gpiod_flags() private (David Arcari) [1829900] - [gpio] gpiolib: acpi: make acpi_can_fallback_to_crs() static (David Arcari) [1829900] - [gpio] gpio: of: Normalize return code variable name (David Arcari) [1829900] - [gpio] gpio: gpiolib: Normalize return code variable name (David Arcari) [1829900] - [include] gpio: Move gpiochip_lock/unlock_as_irq to gpio/driver.h (David Arcari) [1829900] - [gpio] gpio: Use callback presence to determine need of valid_mask (David Arcari) [1829900] - [gpio] gpio: Pass mask and size with the init_valid_mask() (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Add ability for drivers to supply a reserved GPIO list (David Arcari) [1829900] - [pinctrl] pinctrl: msm: Use init_valid_mask exported function (David Arcari) [1829900] - [include] gpio: stubs in headers should be inline (David Arcari) [1829900] - [gpio] gpio: Add support for hierarchical IRQ domains (David Arcari) [1829900] - [kernel] genirq: introduce irq_domain_translate_twocell (David Arcari) [1829900] - [gpio] gpio: refactor gpiochip_allocate_mask() with bitmap_alloc() (David Arcari) [1829900] - [gpio] gpio: of: Fix hard-assigned valid_mask for OF case (David Arcari) [1829900] - [sound] gpiolib-acpi: Move acpi_dev_add_driver_gpios() et al to consumer.h (David Arcari) [1829900] - [gpio] gpiolib: acpi: Split ACPI stuff to gpiolib-acpi.h (David Arcari) [1829900] - [include] gpiolib: of: Reshuffle contents of consumer.h for new library layout (David Arcari) [1829900] - [include] pinctrl: remove unneeded #ifdef around declarations (David Arcari) [1829900] - [hwmon] hwmon: pmbus: ucd9000: remove unneeded include (David Arcari) [1829900] - [include] gpio: remove less important #ifdef around declarations (David Arcari) [1829900] - [gpio] gpio: of: Break out OF-only code (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and blacklist (David Arcari) [1829900] - [gpio] gpiolib: of: fix fallback quirks handling (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in lineevent_create (David Arcari) [1829900] - [gpio] gpio: fix line flag validation in linehandle_create (David Arcari) [1829900] - [gpio] gpio: Fix irqchip initialization order (David Arcari) [1829900] - [gpio] gpio: of: fix Freescale SPI CS quirk handling (David Arcari) [1829900] - [gpio] gpiolib: never report open-drain/source lines as 'input' to user-space (David Arcari) [1829900] - [include] gpio: Fix build error of function redefinition (David Arcari) [1829900] - [gpio] gpiolib: Preserve desc->flags when setting state (David Arcari) [1829900] - [include] gpio: don't WARN() on NULL descs if gpiolib is disabled (David Arcari) [1829900] - [gpio] gpiolib: fix incorrect IRQ requesting of an active-low lineevent (David Arcari) [1829900] - [gpio] Revert "gpio/spi: Fix spi-gpio regression on active high CS" (David Arcari) [1829900] - [gpio] gpiolib: of: fix a memory leak in of_gpio_flags_quirks() (David Arcari) [1829900] - [gpio] gpiolib: Use spinlock_t instead of struct spinlock (David Arcari) [1829900] - [gpio] gpiolib: Clarify use of non-sleeping functions (David Arcari) [1829900] - [gpio] gpiolib: Fix references to gpiod_et_*value_cansleep() variants (David Arcari) [1829900] - [include] gpiolib: Document new gpio_chip.init_valid_mask field (David Arcari) [1829900] - [gpio] gpio/spi: Fix spi-gpio regression on active high CS (David Arcari) [1829900] - [gpio] gpio: No need to cast away return value of debugfs_create_file() (David Arcari) [1829900] - [include] gpio: Add comments on #if/#else/#endif (David Arcari) [1829900] - [regulator] gpio: Fix return value mismatch of function gpiod_get_from_of_node() (David Arcari) [1829900] - [gpio] gpio: Drop the parent_irq from gpio_irq_chip (David Arcari) [1829900] - [gpio] gpio: of: parse stmmac PHY reset line specific active-low property (David Arcari) [1829900] - [gpio] gpio: pass lookup and descriptor flags to request_own (David Arcari) [1829900] - [gpio] gpio: of: Handle the Freescale SPI CS (David Arcari) [1829900] - [gpio] gpio: Fix gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: acpi: Respect pin bias setting (David Arcari) [1829900] - [gpio] gpiolib: acpi: Add acpi_gpio_update_gpiod_lookup_flags() helper (David Arcari) [1829900] - [gpio] gpiolib: acpi: Set pin value, based on bias, more accurately (David Arcari) [1829900] - [gpio] gpiolib: acpi: Change type of dflags (David Arcari) [1829900] - [gpio] gpiolib: Introduce GPIO_LOOKUP_FLAGS_DEFAULT (David Arcari) [1829900] - [gpio] gpiolib: Make use of enum gpio_lookup_flags consistent (David Arcari) [1829900] - [include] gpiolib: Indent entry values of enum gpio_lookup_flags (David Arcari) [1829900] - [gpio] gpio: of: Optimize quirk checks (David Arcari) [1829900] - [gpio] gpio: mmio: Drop bgpio_dir_inverted (David Arcari) [1829900] - [gpio] gpio: Set proper argument value to set_config (David Arcari) [1829900] - [gpio] gpio: Remove obsolete comment about gpiochip_free_hogs() usage (David Arcari) [1829900] - [gpio] gpio: mmio: Fix bgpio_get_set & bgpio_get_set_multiple (David Arcari) [1829900] - [gpio] gpio: mmio: Support two direction registers (David Arcari) [1829900] - [gpio] gpiolib: Don't WARN on gpiod_put() for optional GPIO (David Arcari) [1829900] - [gpio] gpiolib: acpi: Fix references in kernel doc and amend (David Arcari) [1829900] - [gpio] gpio: of: Fix of_gpiochip_add() error path (David Arcari) [1829900] - [gpio] gpio: of: Check for "spi-cs-high" in child instead of parent node (David Arcari) [1829900] - [gpio] gpio: of: Check propname before applying "cs-gpios" quirks (David Arcari) [1829900] - [gpio] Revert "gpio: use new gpio_set_config() helper in more places" (David Arcari) [1829900] - [gpio] gpio: of: Handle both enable-gpio{,s} (David Arcari) [1829900] - [gpio] gpio: of: Restrict enable-gpio quirk to regulator-gpio (David Arcari) [1829900] - [gpio] gpio: of: Apply regulator-gpio quirk only to enable-gpios (David Arcari) [1829900] - [gpio] gpio: add core support for pull-up/pull-down configuration (David Arcari) [1829900] - [gpio] gpio: use new gpio_set_config() helper in more places (David Arcari) [1829900] - [gpio] gpio: rename gpio_set_drive_single_ended() to gpio_set_config() (David Arcari) [1829900] - [gpio] gpiolib: acpi: Correct kernel doc of struct acpi_gpio_event (David Arcari) [1829900] - [gpio] gpio: of: Fix logic inversion (David Arcari) [1829900] - [gpio] gpio: add irq domain activate/deactivate functions (David Arcari) [1829900] - [gpio] gpiolib: fix line event timestamps for nested irqs (David Arcari) [1829900] - [gpio] gpiolib-acpi: Preserve non direction flags when updating gpiod_flags (David Arcari) [1829900] - [gpio] gpiolib-acpi: Remove unnecessary WARN_ON from acpi_gpiochip_free_interrupts (David Arcari) [1829900] - [gpio] gpiolib-acpi: remove unused variable 'err', cleans up build warning (David Arcari) [1829900] - [mmc] mmc: core: don't override the CD GPIO level when "cd-inverted" is set (David Arcari) [1829900] - [arm64] arm64: dts: meson: Fix mmc cd-gpios polarity (David Arcari) [1829900] - [gpio] gpio/mmc/of: Respect polarity in the device tree (David Arcari) [1829900] - [include] gpiolib: Fix return value of gpio_to_desc() stub if !GPIOLIB (David Arcari) [1829900] - [documentation] Documentation: gpio: fix function links in the HTML docs (David Arcari) [1829900] - [documentation] docs: driver-model: convert docs to ReST and rename to *.rst (David Arcari) [1829900] - [documentation] docs: gpio: driver.rst: fix a bad tag (David Arcari) [1829900] - [documentation] gpio: Fix minor grammar errors in documentation (David Arcari) [1829900] - [documentation] gpio: Update documentation (David Arcari) [1829900] - [gpio] gpio: Pass a flag to gpiochip_request_own_desc() (David Arcari) [1829900] - [gpio] gpio: Add devm_gpiod_unhinge() (David Arcari) [1829900] - [gpio] gpio: devres: Handle nonexclusive GPIOs (David Arcari) [1829900] - [gpio] gpio: Enable nonexclusive gpiods from DT nodes (David Arcari) [1829900] - [gpio] gpiolib-acpi: Only defer request_irq for GpioInt ACPI event handlers (David Arcari) [1829900] - [gpio] gpio: OF: Parse MMC-specific CD and WP properties (David Arcari) [1829900] - [gpio] gpio: restore original GPLv2+ license of gpiolib-of.c sources (David Arcari) [1829900] - [include] gpio: drop broken to_gpio_irq_chip() helper (David Arcari) [1829900] - [gpio] gpio: drop devm_gpio_chip_match() (David Arcari) [1829900] - [gpio] gpio: don't free unallocated ida on gpiochip_add_data_with_key() error path (David Arcari) [1829900] - [gpio] gpiolib: Fix possible use after free on label (David Arcari) [1829900] - [documentation] Documentation: gpio: driver: fix wire name for I2C (David Arcari) [1829900] - [documentation] gpio/driver.rst: document gpiochip_disable/enable_irq() (David Arcari) [1829900] - [gpio] gpio: drop devm_gpiochip_remove() (David Arcari) [1829900] - [gpio] gpio: Clarify kerneldoc on gpiochip_set_chained_irqchip() (David Arcari) [1829900] - [gpio] gpio: Remove unused 'irqchip' argument to gpiochip_set_cascaded_irqchip() (David Arcari) [1829900] - [gpio] gpio: Drop parent irq assignment during cascade setup (David Arcari) [1829900] - [gpio] gpiolib: Initialize gdev field before is used (David Arcari) [1829900] - [gpio] gpio: Assign gpio_irq_chip::parents to non-stack pointer (David Arcari) [1829900] - [gpio] gpio: fix doc string for devm_gpiochip_add_data() to not talk about irq_chip (David Arcari) [1829900] - [gpio] gpio: mockup: fix indicated direction (David Arcari) [1829900] - [gpio] gpiolib: Show correct direction from the beginning (David Arcari) [1829900] - [gpio] gpiolib: Add init_valid_mask exported function (David Arcari) [1829900] - [gpio] gpio: Slightly more helpful debugfs (David Arcari) [1829900] - [gpio] Accept partial 'gpio-line-names' property (David Arcari) [1829900] - [gpio] gpio: Restore indentation of continued lines (David Arcari) [1829900] - [gpio] gpio: Propagate errors from gpiod_set_array_value_complex() (David Arcari) [1829900] - [gpio] gpiolib: Fix incorrect use of find_next_zero_bit() (David Arcari) [1829900] - [gpio] gpiolib: Fix missing updates of bitmap index (David Arcari) [1829900] - [gpio] gpio: Add comments on single direction chips (David Arcari) [1829900] - [gpio] gpiolib: Fix gpio_direction_* for single direction GPIOs (David Arcari) [1829900] - [gpio] gpio: Rename devres implementation file (David Arcari) [1829900] - [gpio] gpio: Use SPDX header for core library (David Arcari) [1829900] - [gpio] gpiolib: Fix array members of same chip processed separately (David Arcari) [1829900] - [gpio] gpiolib: Free the last requested descriptor (David Arcari) [1829900] - [gpio] gpio: Get rid of legacy header (David Arcari) [1829900] - [gpio] gpiolib: check if irqchip already has the irq hook replacements (David Arcari) [1829900] - [gpio] gpiolib: use better errno if get_direction is not available (David Arcari) [1829900] - [documentation] gpiolib: Implement fast processing path in get/set array (David Arcari) [1829900] - [documentation] Documentation: gpio: Fix reference to gpiod_get_array() (David Arcari) [1829900] - [gpio] gpiolib: Pass array info to get/set array functions (David Arcari) [1829900] - [gpio] gpiolib: Identify arrays matching GPIO hardware (David Arcari) [1829900] - [gpio] gpiolib: Pass bitmaps, not integer arrays, to get/set array (David Arcari) [1829900] - [gpio] gpiolib: Don't support irq sharing for userspace (David Arcari) [1829900] - [gpio] gpio: of: Handle SPI chipselect legacy bindings (David Arcari) [1829900] - [gpio] gpiolib: override irq_enable/disable (David Arcari) [1829900] - [gpio] gpiolib: add flag to indicate if the irq is disabled (David Arcari) [1829900] - [gpio] gliolib: set hooks in gpiochip_set_irq_hooks() (David Arcari) [1829900] - [gpio] gpiolib: export gpiochip_irq_reqres/relres() (David Arcari) [1829900] - [include] gpio: fix kernel-doc notation warning for 'request_key' (David Arcari) [1829900] - [gpio] gpio: Fix crash due to registration race (David Arcari) [1829900] - [gpio] gpio: Convert to using pOFn instead of device_node.name (David Arcari) [1829900] - [gpio] gpiolib-acpi: Register GpioInt ACPI event handlers from a late_initcall (David Arcari) [1829900] - [gpio] gpiolib: acpi: Switch to cansleep version of GPIO library call (David Arcari) [1829900] - [gpio] gpiolib: Avoid calling chip->request() for unused gpios (David Arcari) [1829900] - [gpio] gpio: mmio: Fix up inverted direction registers (David Arcari) [1829900] - [gpio] gpiolib: Fix of_node inconsistency (David Arcari) [1829900] - [gpio] gpiolib: Don't shadow error code of gpiochip_lock_as_irq() (David Arcari) [1829900] - [include] gpiolib: Use GPIOD_OUT_{LOW, HIGH} macros in open drain ones (David Arcari) [1829900] - [gpio] gpiolib: probe deferral error reporting (David Arcari) [1829900] - [include] Input: gpio_keys - add missing include to gpio_keys.h (David Arcari) [1829900] - [gpio] gpiolib: remove an unnecessary TODO (David Arcari) [1829900] - [gpio] gpiolib: don't allow userspace to set values of input lines (David Arcari) [1829900] - [gpio] gpiolib: Join one line back for better readability (David Arcari) [1829900] - [gpio] gpiolib: Consistent use of ->get_direction() inside gpiolib (David Arcari) [1829900] - [gpio] gpiolib: Defer on non-DT find_chip_by_name() failure (David Arcari) [1829900] - [gpio] gpiolib: Respect error code of ->get_direction() (David Arcari) [1829900] - [gpio] gpiolib: Join string literals back (David Arcari) [1829900] - [include] gpio.h: fix location of gpio legacy documentation (David Arcari) [1829900] - [fs] gfs2: Fix use-after-free in gfs2_logd after withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix BUG during unmount after file system withdraw (Robert S Peterson) [1831695] - [fs] gfs2: Fix error exit in do_xmote (Robert S Peterson) [1831695] - [fs] gfs2: fix withdraw sequence deadlock (Robert S Peterson) [1831695] - [mm] s390/mm: fix page table upgrade vs 2ndary address mode accesses (Vladis Dronov) [1828154] {CVE-2020-11884} - [media] media: serial_ir: Fix use-after-free in serial_ir_init_module (Vladis Dronov) [1802396] {CVE-2019-19543} - [mm] mm/memory_hotplug: fix remove_memory() lockdep splat (Christoph von Recklinghausen) [1830942] - [mm] mm/page_alloc.c: initialize memmap of unavailable memory directly (Christoph von Recklinghausen) [1782827] - [fs] fs/proc/page.c: allow inspection of last section and fix end detection (Christoph von Recklinghausen) [1782827] - [mm] mm/page_alloc.c: fix uninitialized memmaps on a partially populated last section (Christoph von Recklinghausen) [1782827] - [powerpc] kvm: ppc: book3s hv: Handle non-present PTEs in page fault functions (David Gibson) [1820402] - [vfio] vfio-pci/nvlink2: Allow fallback to ibm, mmio-atsd[0] (David Gibson) [1819169] - [s390] s390/cpuinfo: fix wrong output when CPU0 is offline (Philipp Rudo) [1812982] - [s390] s390/topology: remove offline CPUs from CPU topology masks (Philipp Rudo) [1812982] - [hwtracing] intel_th: pci: Add Comet Lake PCH-V support (Tony Camuso) [1822983] - [kernel] kprobes: Fix optimize_kprobe()/unoptimize_kprobe() cancellation logic (Waiman Long) [1833383] - [kernel] kprobes: Set unoptimized flag after unoptimizing code (Waiman Long) [1833383] - [kernel] kprobes: Prohibit probing on BUG() and WARN() address (Waiman Long) [1833383] - [kernel] kprobes: Fix potential deadlock in kprobe_optimizer() (Waiman Long) [1833383] - [fs] gfs2: More gfs2_find_jhead fixes (Abhijith Das) [1828653] - [kernel] audit: fix a net reference leak in audit_list_rules_send() (Richard Guy Briggs) [1827327] - [kernel] audit: fix a net reference leak in audit_send_reply() (Richard Guy Briggs) [1827327] - [kernel] audit: check the length of userspace generated audit records (Richard Guy Briggs) [1827303] - [s390] s390/pci: do not set affinity for floating irqs (Philipp Rudo) [1834319] - [netdrv] mlx5: Remove the unsupported mark from ConnectX-6 Dx device (Alaa Hleihel) [1789382 1782831] - [netdrv] mlx5: Update list of unsupported devices (Alaa Hleihel) [1823685 1789382] - [infiniband] RDMA/mlx5: Verify that QP is created with RQ or SQ (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix udata response upon SRQ creation (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set of completion request bit should not clear other adjacent bits (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: en_accel, Add missing net/geneve.h include (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix q counters on uplink representors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix command entry leak in Internal Error State (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix forced completion access non initialized command entry (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, On creation set CQ's arm_db member to right value (Alaa Hleihel) [1789384 1789382] - [infiniband] RDMA/mlx5: Set GRH fields in query QP on RoCE (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Get the latest values from counters in switchdev mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup to avoid WQ overruns (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix failing fw tracer allocation on s390 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix pfnum in devlink port attribute (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix nest_level for vlan pop action (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing release firmware call (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix frequent ioread PCI access during recovery (Alaa Hleihel) [1789382] - [netdrv] flow_offload: check for basic action hw stats type (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unused argument from parse_tc_pedit_action() (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use netdev_warn() instead of pr_err() for errors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Remove unneeded functions deceleration (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Improve log messages (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Change matcher priority parameter type (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: Eswitch, avoid redundant mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Don't allow forwarding between uplink (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix missing congestion control debugfs on rep rdma device (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Optimize u64 division on 32-bit arches (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent UMR usage with RO only when we have RO caps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix group version management (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: E-Switch, Hold mutex when querying drop counter in legacy mode (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Tidy up and fix reverse christmas ordring (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5: Expose port speed when possible (Alaa Hleihel) [1831133 1789382] - [include] net/mlx5: Expose link speed directly (Alaa Hleihel) [1831133 1789382] - [netdrv] net/mlx5e: Use netdev_warn() for errors for added prefix (Alaa Hleihel) [1789382] - [include] net/mlx5: fix spelling mistake "reserverd" -> "reserved" (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: Using plain integer as NULL pointer (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: sparse: warning: incorrect type in assignment (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for handling compressed completions (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: RX, Use indirect calls wrapper for posting descriptors (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Change inline mode correctly when changing trust state (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add context to the preactivate hook (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Allow mlx5e_switch_priv_channels to fail and recover (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Remove unneeded netif_set_real_num_tx_queues (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix configuration of XPS cpumasks and netdev queues in corner cases (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Use preactivate hook to set the indirection table (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Rename hw_modify to preactivate (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Encapsulate updating netdev queues into a function (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Add missing LRO cap check (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Define one flow for TXQ selection when TCs are configured (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Block delay drop to unprivileged users (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix access to wrong pointer while performing flush due to error (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Do not recover from a non-fatal syndrome (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix ICOSQ recovery flow with Striding RQ (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Enhance ICOSQ WQE info fields (Alaa Hleihel) [1789382] - [netdrv] net/mlx5_core: Set IB capability mask1 to fix ib_srpt connection failure (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix the number of hwcounters of a dynamic counter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Clear LAG notifier pointer after unregister (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix endianness handling in pedit mask (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix wrong value in record tracker enum (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Fix postsend actions write length (Alaa Hleihel) [1789384 1789382] - [infiniband] IB/mlx5: Fix implicit ODP race (Alaa Hleihel) [1789382] - [netdrv] mlx5: register lag notifier for init network namespace only (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix crash in recovery flow without devlink reporter (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Reset RQ doorbell counter before moving RQ state from RST to RDY (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Fix sleep while atomic in mlx5_eswitch_get_vepa (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Use div64_u64 for num_var_hw_entries calculation (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Prevent overflow in mmap offset calculations (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix async events cleanup flows (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return failure when rts2rts_qp_counters_set_id is not supported (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Deprecate usage of generic TLS HW capability bit (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: TX, Error completion is for last WQE in batch (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: IPsec, Fix esp modify function attribute (Alaa Hleihel) [1789382] - [infiniband] RDMA/core: Make the entire API tree static (Alaa Hleihel) [1789382] - [netdrv] mlx5: Use dev_net netdevice notifier registrations (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Return the administrative GUID if exists (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: DR, Allow connecting flow table to a lower/same level table (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify header copy support (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5: DR, Modify set action limitation extension (Alaa Hleihel) [1789384 1789382] - [netdrv] net/mlx5e: Add mlx5e_flower_parse_meta support (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Fix printk format warning (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Allow creating autogroups with reserved entries (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add ignore level support fwd to table rules (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: fs_core: Introduce unmanaged flow tables (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Refactor mlx5_create_auto_grouped_flow_table (Alaa Hleihel) [1789383 1789382] - [include] net/mlx5e: Expose FEC feilds and related capability bit (Alaa Hleihel) [1789382] - [include] net/mlx5: Add mlx5_ifc definitions for connection tracking support (Alaa Hleihel) [1789382] - [include] net/mlx5: Add copy header action struct layout (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose resource dump register mapping (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add structures and defines for MIRC register (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Read MCAM register groups 1 and 2 (Alaa Hleihel) [1789382] - [include] net/mlx5: Add structures layout for new MCAM access reg groups (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Expose RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Set relaxed ordering when requested (Alaa Hleihel) [1789382] - [include] net/mlx5: Expose relaxed ordering bits (Alaa Hleihel) [1789382] - [include] net/mlx5: Add RoCE accelerator counters (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Fix handling of IOVA != user_va in ODP paths (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Mask out unsupported ODP capabilities for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Don't fake udata for kernel path (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add ODP WQE handlers for kernel QPs (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: Simplify devx async commands (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Add mmap support for VAR (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Introduce VAR object and its alloc/destroy methods (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Extend caps stage to handle VAR capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Expose vDPA emulation device capabilities (Alaa Hleihel) [1789382] - [include] net/mlx5: Add Virtio Emulation related device capabilities (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Use async EQ setup cleanup helpers for multiple EQs (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Reduce No CQ found log level from warn to debug (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Increase the max number of channels to 128 (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Support accept action on nic table (Alaa Hleihel) [1789382] - [netdrv] mlx5: work around high stack usage with gcc (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: limit the function in local scope (Alaa Hleihel) [1789382] - [infiniband] RDMA/mlx5: use true, false for bool variable (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Unify ODP MR code paths to allow extra flexibility (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Fix outstanding_pi index for GSI qps (Alaa Hleihel) [1789382] - [netdrv] net/mlx5: Add devlink reload (Alaa Hleihel) [1789382] - [netdrv] net/mlx5e: Set netdev name space on creation (Alaa Hleihel) [1789382] - [infiniband] IB/mlx5: Load profile according to RoCE enablement state (Alaa Hleihel) [1790200 1789382] - [netdrv] net/mlx5: Handle "enable_roce" devlink param (Alaa Hleihel) [1790200 1789382] - [fs] gfs2: Another gfs2_walk_metadata fix (Andreas Grunbacher) [1826419] - [nvme] nvmet-tcp: optimize tcp stack TX when data digest is used (Chris Leech) [1829540] - [nvme] nvmet-tcp: fix maxh2cdata icresp parameter (Chris Leech) [1829540] - [nvme] nvmet-tcp: set SO_PRIORITY for accepted sockets (Chris Leech) [1829540] - [nvme] nvmet-tcp: set MSG_MORE only if we actually have more to send (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in recv error flow (Chris Leech) [1829540] - [nvme] nvme-tcp: don't poll a non-live queue (Chris Leech) [1829540] - [nvme] nvme-tcp: fix possible crash in write_zeroes processing (Chris Leech) [1829540] - [nvme] nvme-tcp: Add warning on state change failure at nvme_tcp_setup_ctrl (Chris Leech) [1829540] - [nvme] nvme: Make nvme_uninit_ctrl symmetric to nvme_init_ctrl (Chris Leech) [1829540] - [nvme] nvme: Fix ctrl use-after-free during sysfs deletion (Chris Leech) [1829540] - [nvme] nvme-tcp: break from io_work loop if recv failed (Chris Leech) [1829540] - [nvme] nvme-tcp: move send failure to nvme_tcp_try_send (Chris Leech) [1829540] - [nvme] nvme-tcp: optimize queue io_cpu assignment for multiple queue maps (Chris Leech) [1829540] - [nvme] nvme-tcp: Set SO_PRIORITY for all host sockets (Chris Leech) [1829540] - [nvme] nvme/tcp: fix bug on double requeue when send fails (Chris Leech) [1829540] - [nvme] Revert "nvme: Restart request timers in resetting state" (Chris Leech) [1829540] - [acpi] ACPI: processor: Export acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Make ACPI_PROCESSOR_CSTATE depend on ACPI_PROCESSOR (Steve Best) [1826415] - [acpi] ACPI: processor: Clean up acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Introduce acpi_processor_evaluate_cst() (Steve Best) [1826415] - [acpi] ACPI: processor: Export function to claim _CST control (Steve Best) [1826415] - [s390] s390/ftrace: fix potential crashes when switching tracers (Philipp Rudo) [1831796] - [net] net/smc: cancel event worker during device removal (Philipp Rudo) [1780665] - [net] net/smc: check for valid ib_client_data (Philipp Rudo) [1780665] - [net] net/smc: fix cleanup for linkgroup setup failures (Philipp Rudo) [1780665] - [net] net/smc: no peer ID in CLC decline for SMCD (Philipp Rudo) [1780665] - [net] net/smc: transfer fasync_list in case of fallback (Philipp Rudo) [1780665] - [net] net/smc: fix leak of kernel memory to user space (Philipp Rudo) [1780665] - [net] net/smc: allow unprivileged users to read pnet table (Philipp Rudo) [1780665] - [net] net/smc: unregister ib devices in reboot_event (Philipp Rudo) [1780665] - [net] net/smc: add fallback check to connect() (Philipp Rudo) [1780665] - [net] net/smc: shorten lgr_cnt initialization (Philipp Rudo) [1780665] - [net] net/smc: fix fastopen for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: remove unused constant (Philipp Rudo) [1780665] - [net] net/smc: use rcu_barrier() on module unload (Philipp Rudo) [1780665] - [net] net/smc: guarantee removal of link groups in reboot (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCR link groups (Philipp Rudo) [1780665] - [net] net/smc: wait for tx completions before link freeing (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination without orderly flag (Philipp Rudo) [1780665] - [net] net/smc: no WR buffer wait for terminating link group (Philipp Rudo) [1780665] - [net] net/smc: introduce bookkeeping of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: abnormal termination of SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: immediate termination for SMCD link groups (Philipp Rudo) [1780665] - [net] net/smc: fix final cleanup sequence for SMCD devices (Philipp Rudo) [1780665] - [net] net/smc: fix refcount non-blocking connect() -part 2 (Philipp Rudo) [1780665] - [net] net/smc: fix ethernet interface refcounting (Philipp Rudo) [1780665] - [net] net/smc: fix refcounting for non-blocking connect() (Philipp Rudo) [1780665] - [net] net/smc: fix closing of fallback SMC sockets (Philipp Rudo) [1780665] - [net] net/smc: remove close abort worker (Philipp Rudo) [1780665] - [net] net/smc: introduce link group termination worker (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination of link groups (Philipp Rudo) [1780665] - [net] net/smc: tell peers about abnormal link group termination (Philipp Rudo) [1780665] - [net] net/smc: improve link group freeing (Philipp Rudo) [1780665] - [net] net/smc: improve abnormal termination locking (Philipp Rudo) [1780665] - [net] net/smc: terminate link group without holding lgr lock (Philipp Rudo) [1780665] - [net] net/smc: cancel send and receive for terminated socket (Philipp Rudo) [1780665] - [net] net/smc: receive pending data after RCV_SHUTDOWN (Philipp Rudo) [1780665] - [net] net/smc: receive returns without data (Philipp Rudo) [1780665] - [net] net/smc: fix SMCD link group creation with VLAN id (Philipp Rudo) [1780665] - [net] net/smc: improve close of terminated socket (Philipp Rudo) [1780665] - [net] net/smc: no new connections on disappearing devices (Philipp Rudo) [1780665] - [net] net/smc: increase device refcount for added link group (Philipp Rudo) [1780665] - [net] net/smc: separate locks for SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: separate SMCD and SMCR link group lists (Philipp Rudo) [1780665] - [net] net/smc: original socket family in inet_sock_diag (Philipp Rudo) [1780665] - [infiniband] RDMA/bnxt_re: Use rdma_read_gid_hw_context to retrieve HW gid index (Kamal Heib) [1828601] - [infiniband] RDMA/core: Add helper function to retrieve driver gid context from gid attr (Kamal Heib) [1828601] - [media] media: videobuf2-v4l2: drop WARN_ON in vb2_warn_zero_bytesused() (Vladis Dronov) [1825616] {CVE-2019-9455} - [net] SUNRPC: Fix initialisation of struct rpc_xprt_switch (Steve Dickson) [1683394] - [net] SUNRPC: add links for all client xprts to debugfs (Steve Dickson) [1683394] - [net] SUNRPC: enhance rpc_clnt_show_stats() to report on all xprts (Steve Dickson) [1683394] - [net] SUNRPC: Fix transport accounting when caller specifies an rpc_xprt (Steve Dickson) [1683394] - [fs] NFS: send state management on a single connection (Steve Dickson) [1683394] - [net] SUNRPC: Add basic load balancing to the transport switch (Steve Dickson) [1683394] - [net] SUNRPC: Fix up task signalling (Steve Dickson) [1683394] - [fs] NFS: Allow multiple connections to a NFSv2 or NFSv3 server (Steve Dickson) [1683394] - [fs] NFS: Display the "nconnect" mount option if it is set (Steve Dickson) [1683394] - [fs] pNFS: Allow multiple connections to the DS (Steve Dickson) [1683394] - [fs] NFSv4: Allow multiple connections to NFSv4.x (x>0) servers (Steve Dickson) [1683394] - [fs] NFS: Add a mount option to specify number of TCP connections to use (Steve Dickson) [1683394] - [net] SUNRPC: Allow creation of RPC clients with multiple connections (Steve Dickson) [1683394] - [net] netlabel: cope with NULL catmap (Paolo Abeni) [1827251] {CVE-2020-10711} - [scsi] scsi: qla2xxx: fix a potential NULL pointer dereference ("Ewan D. Milne") [1829250] {CVE-2019-16233} - [input] Input: ff-memless - kill timer in destroy() (Chris von Recklinghausen) [1815024] {CVE-2019-19524}- [netdrv] net/mlx5e: kTLS, Do not send decrypted-marked SKBs via non-accel path (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Remove redundant posts in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: kTLS, Fix corner-case checks in TX resync flow (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Prevent ingress rate configuration of uplink rep (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Fix lowest FDB pool size (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix hairpin RSS table size (Alaa Hleihel) [1789380] - [netdrv] Revert "net/mlx5: Support lockless FTE read lookups" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move devlink registration before interfaces load (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Always print health reporter message to dmesg (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Avoid duplicating rule destinations (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Fix device memory flows (Alaa Hleihel) [1789380] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: E-switch, Fix Ingress ACL groups in switchdev mode for prio tag (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Fix build error without IPV6 (Alaa Hleihel) [1789380] - [netdrv] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Remove redundant pointer check (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TC, Stub out ipv6 tun create header function (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add support for Geneve packets SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Add HW bits and definitions for Geneve flex parser (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: DR, Refactor VXLAN GPE flex parser tunnel code for SW steering (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Don't write read-only fields in MODIFY_HCA_VPORT_CONTEXT command (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Implement callbacks for getting VFs GUID attributes (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Rx, Update page pool numa node when changed (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support extended number of strides for Striding RQ (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove redundant NULL initializations (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Add new chain for netfilter flow table offload (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor creating fast path prio chains (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Accumulate levels for chains prio namespaces (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Define fdb tc levels per prio (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Rename FDB_* tc related defines to FDB_TC_* defines (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Simplify fdb chain and prio eswitch defines (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Support flow counters offset for bulk counters (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Dump of fw_fatal use updated devlink binary interface (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Rename profile and init methods (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix spelling mistake "metdata" -> "metadata" (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: fix kvfree of uninitialized pointer spec (Alaa Hleihel) [1789380] - [infiniband] IB: mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: LAG, Use port enumerators (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: rate limit alloc_ent error messages (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add ToS (DSCP) header rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Bit sized fields rewrite support (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: WQ, Move short getters into header file (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: TX, Dump WQs wqe descriptors on CQE with error events (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Support lockless FTE read lookups (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Do not hold group lock while allocating FTE in software (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Verify that rule has at least one fwd/drop action (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Remove unneeded variable in mlx5_unload_one (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: FPGA, support network cards with standalone FPGA (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mlx5_core_is_vf() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Refactor ingress acl configuration (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Restrict metadata disablement to offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads shift ACL programming during enable/disable vport (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Offloads introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move ACL drop counters life cycle close to ACL lifecycle (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Legacy introduce and use per vport acl tables APIs (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Prepare code to handle vport enable error (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Tide up state_lock and vport enabled flag usage (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move legacy drop counter and rule under legacy structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Move metdata fields under offloads structure (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: Introduce and use mlx5_esw_is_manager_vport() (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-switch, Introduce and use vlan rule config helper (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename ingress acl config in offloads mode (Alaa Hleihel) [1789380] - [netdrv] net/mlx5: E-Switch, Rename egress config to generic name (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Test write combining support (Alaa Hleihel) [1789380] - [netdrv] net: Fix misspellings of "configure" and "configuration" (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not race with mlx5_ib_invalidate_range during create and destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Do not store implicit children in the odp_mkeys xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit ODP destroy (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Avoid double lookups on the pagefault path (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Reduce locking in implicit_mr_get_data() (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use an xarray for the children of an implicit ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split implicit handling from pagefault_mr (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Set the HW IOVA of the child MRs to their place in the tree (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Lift implicit_mr_alloc() into the two routines that call it (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Rework implicit_mr_get_data (Alaa Hleihel) [1789380] - [netdrv] RDMA/mlx5: Delete struct mlx5_priv->mkey_table (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use a dedicated mkey xarray for ODP (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Split sig_err MR data into its own xarray (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Use SRCU properly in ODP prefetch (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Align usage of QP1 create flags with rest of mlx5 defines (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Add capability for max sge to get optimized performance (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Introduce and use mkey context setting helper routine (Alaa Hleihel) [1789380] - [include] net/mlx5: Expose optimal performance scatter entries capability (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary else statement (Alaa Hleihel) [1789380] - [infiniband] IB/mlx5: Remove unnecessary return statement (Alaa Hleihel) [1789380] - [infiniband] RDMA/mlx5: Group boolean parameters to take less space (Alaa Hleihel) [1789380] - [netdrv] net/mlx5e: Add missing capability bit check for IP-in-IP (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix ingress rate configuration for representors (Alaa Hleihel) [1789378] - [netdrv] mlx5: reject unsupported external timestamp flags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Replace kfree with kvfree when free vhca stats (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove incorrect match criteria assignment line (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Enhance TX resync flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save a copy of the crypto info (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unneeded cipher type checks (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Limit DUMP wqe size (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix missing SQ edge fill (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Fix page refcnt leak in TX resync error flow (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save by-value copy of the record frags (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Save only the frag page to release at completion (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Size of a Dump WQE is fixed (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Release reference on DUMPed fragments in shutdown flow (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Put live in the correct place for ODP MRs (Alaa Hleihel) [1789378] - [infiniband] RDMA/odp: Lift umem_mutex out of ib_umem_odp_unmap_dma_pages() (Alaa Hleihel) [1789378] - [netdrv] drivers: net: Fix Kconfig indentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove redundant dev_name print from err log (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: DR, Remove useless set memory to zero use memset() (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: kTLS, Remove unused function parameter (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use PTR_ERR_OR_ZERO rather than its implementation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Use ipv6_stub to avoid dependency with ipv6 being a module (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Kconfig: Fix MLX5_CORE dependency with PCI_HYPERV_INTERFACE (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Fix static checker warning of potential pointer math issue (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Remove unlikely() from WARN*() condition (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support TSO and TX checksum offloads for IP-in-IP tunnels (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Improve stateless offload capability check (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Support RSS for IP-in-IP and IPv6 tunneled packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Change function's position to a more fitting file (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add page fault handler for DC initiator WQE (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Remove check of FW capabilities in ODP page fault handling (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Set ODP capabilities for DC transport to max (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: RDMA_RX flow type support for user applications (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Fix return code in case of hyperv wrong size read (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add mlx5e HV VHCA stats agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA control agent (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add HV VHCA infrastructure (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add wrappers for HyperV PCIe operations (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add trace point for neigh used value update (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Add tc flower tracepoints (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use odp instead of mr->umem in pagefault_mr (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Use ib_umem_start instead of umem.address (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Create bypass and loopback flow steering namespaces for RDMA RX (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add per-namespace flow table default miss action support (Alaa Hleihel) [1789378] - [include] net/mlx5: Expose IP-in-IP capability bit (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Improve functions documentation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from CQE with error on RQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: RX, Handle CQE with error at the earliest stage (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Report and recover from rx timeout (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Report and recover from CQE error on ICOSQ (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Split open/close ICOSQ into stages (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add support to rx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add helper functions for reporter's basics (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Add cq info to tx reporter diagnose (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx reporter diagnostics output (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Extend tx diagnose function (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Generalize tx reporter's functionality (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Change naming convention for reporter's functions (Alaa Hleihel) [1790198 1789378] - [netdrv] net/mlx5e: Rename reporter header file (Alaa Hleihel) [1790198 1789378] - [infiniband] RDMA/mlx5: Annotate lock dependency in bind/unbind slave port (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Expose XRQ legacy commands over the DEVX interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add legacy events to DEVX list (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Add XRQ legacy commands opcodes (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: Use debug message instead of warn (Alaa Hleihel) [1789378] - [netdrv] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1789378] - [infiniband] mlx5: Use refcount_t for refcount (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Allow dropping specific tunnel packets (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: TX reporter cleanup (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Set tx reporter only on successful creation (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Rx, checksum handling refactoring (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Soften inline mode VLAN dependencies (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Slight enhancement for WQE fetch function (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: XDP, Close TX MPWQE session when no room for inline packet left (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: Tx, Strict the room needed for SQ edge NOPs (Alaa Hleihel) [1789378] - [netdrv] net/mlx5: E-Switch, add ingress rate support (Alaa Hleihel) [1789378] - [infiniband] RDMA/mlx5: Remove DEBUG ODP code (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Add CREATE_PSV/DESTROY_PSV for devx interface (Alaa Hleihel) [1789378] - [infiniband] IB/mlx5: Avoid unnecessary typecast (Alaa Hleihel) [1789378] - [netdrv] net/mlx5e: xsk: dynamically allocate mlx5e_channel_param (Alaa Hleihel) [1789378] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789378] - [char] tpm: Export tpm2_get_cc_attrs_tbl for ibmvtpm driver as module (David Gibson) [1781915] - [char] tpm: ibmvtpm: Add support for TPM2 (David Gibson) [1781915] - [char] tpm: of: Handle IBM, vtpm20 case when getting log parameters (David Gibson) [1781915] - [wireless] iwlwifi: mvm: Do not require PHY_SKU NVM section for 3168 devices (Jarod Wilson) [1807052] - [wireless] mwifiex: set needed_headroom, not hard_header_len (Jarod Wilson) [1807052] - [wireless] ath9k: Handle txpower changes even when TPC is disabled (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: fix coverage_class type (Jarod Wilson) [1807052] - [wireless] rtw88: Use kfree_skb() instead of kfree() (Jarod Wilson) [1807052] - [wireless] brcmfmac: abort and release host after error (Jarod Wilson) [1807052] - [wireless] ath11k: Silence clang -Wsometimes-uninitialized in ath11k_update_per_peer_stats_from_txcompl (Jarod Wilson) [1807052] - [wireless] ath10k: Call cpu_latency_qos_*() instead of pm_qos_*() (Jarod Wilson) [1807052] - [net] mac80211: fix authentication with iwlwifi/mvm (Jarod Wilson) [1807052] - [net] mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX (Jarod Wilson) [1807052] - [net] mac80211: mark station unauthorized before key removal (Jarod Wilson) [1807052] - [net] mac80211: Check port authorization in the ieee80211_tx_dequeue() case (Jarod Wilson) [1807052] - [net] cfg80211: Do not warn on same channel at the end of CSA (Jarod Wilson) [1807052] - [net] mac80211: drop data frames without key on encrypted links (Jarod Wilson) [1807052] - [net] nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: add 0x2526/0x401* devices back to cfg detection (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44 (Jarod Wilson) [1807052] - [wireless] iwlwifi: cfg: use antenna diversity with all AX101 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix rate scale NSS configuration (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't add TLV offset when reading FIFOs (Jarod Wilson) [1807052] - [wireless] iwlwifi: check allocated pointer when allocating conf_tlvs (Jarod Wilson) [1807052] - [wireless] iwlwifi: consider HE capability when setting LDPC (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: take the required lock when clearing time event data (Jarod Wilson) [1807052] - [net] mac80211: Do not send mesh HWMP PREQ if HWMP is disabled (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for channel switch (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for beacon report scanning (Jarod Wilson) [1807052] - [net] nl80211: add missing attribute validation for critical protocol indication (Jarod Wilson) [1807052] - [wireless] mt76: fix array overflow on receiving too many fragments for a packet (Jarod Wilson) [1807052] - [net] mac80211: rx: avoid RCU list traversal under mutex (Jarod Wilson) [1807052] - [net] nl80211: explicitly include if_vlan.h (Jarod Wilson) [1807052] - [net] mac80211: Remove a redundant mutex unlock (Jarod Wilson) [1807052] - [net] cfg80211: check reg_rule for NULL in handle_channel_custom() (Jarod Wilson) [1807052] - [net] nl80211: fix potential leak in AP start (Jarod Wilson) [1807052] - [net] mac80211: fix wrong 160/80+80 MHz setting (Jarod Wilson) [1807052] - [net] cfg80211: add missing policy for NL80211_ATTR_STATUS_CODE (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix max_nss in mt7615_eeprom_parse_hw_cap (Jarod Wilson) [1807052] - [net] cfg80211: check wiphy driver existence for drvinfo report (Jarod Wilson) [1807052] - [net] mac80211: consider more elements in parsing CRC (Jarod Wilson) [1807052] - [net] mac80211: fix quiet mode activation in action frames (Jarod Wilson) [1807052] - [net] mac80211: use more bits for ack_frame_id (Jarod Wilson) [1807052] - [wireless] rtw88: Fix return value of rtw_wow_check_fw_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: d3: read all FW CPUs error info (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix TDLS discovery with the new firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Check the sta is not NULL in iwl_mvm_cfg_he_sta() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: avoid use after free for pmsr request (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update the DTS measurement type (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't throw error when trying to remove IGTK (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Fix thermal zone registration (Jarod Wilson) [1807052] - [wireless] iwlwifi: use helpers (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_cmd_append_vsie_tlv() (Jarod Wilson) [1807052] - [wireless] mwifiex: Fix possible buffer overflows in mwifiex_ret_wmm_get_status() (Jarod Wilson) [1807052] - [wireless] mwifiex: fix unbalanced locking in mwifiex_process_country_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: fix spelling mistake "initilized" -> "initialized" (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: remove unused variables (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: remove redundant assignment to variable cond (Jarod Wilson) [1807052] - [wireless] brcmfmac: Remove always false 'idx < 0' statement (Jarod Wilson) [1807052] - [wireless] rtw88: use shorter delay time to poll PS state (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL skb access in TX ISR (Jarod Wilson) [1807052] - [wireless] brcmfmac: add initial support for monitor mode (Jarod Wilson) [1807052] - [wireless] brcmfmac: simplify building interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: sdio: Fix OOB interrupt initialization on brcm43362 (Jarod Wilson) [1807052] - [wireless] brcmfmac: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtw88: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Remove sw.h header (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Make functions static & rm sw.h (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: Fix typo (Jarod Wilson) [1807052] - [wireless] rtw88: change max_num_of_tx_queue() definition to inline in pci.h (Jarod Wilson) [1807052] - [wireless] rtw88: assign NULL to skb after being kfree()'ed (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_hci_stop() instead of rtwdev->hci.ops->stop() (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused vif pointer in struct rtw_vif (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused variable 'in_lps' (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused spinlock (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: update power sequence to v15 (Jarod Wilson) [1807052] - [wireless] rtw88: fix TX secondary channel offset of 40M if current bw is 20M or 40M (Jarod Wilson) [1807052] - [wireless] rtw88: fix rate mask for 1SS chip (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan net-detect support (Jarod Wilson) [1807052] - [wireless] rtw88: Add wowlan pattern match support (Jarod Wilson) [1807052] - [wireless] rtw88: support wowlan feature for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: load wowlan firmware if wowlan is supported (Jarod Wilson) [1807052] - [wireless] rtw88: add interface config for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset dma when reset pci trx ring (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset ring index when release skbs in tx ring (Jarod Wilson) [1807052] - [wireless] ath10k: Use device_get_match_data() to simplify code (Jarod Wilson) [1807052] - [wireless] ath10k: Add newlines to printk messages (Jarod Wilson) [1807052] - [wireless] ath10k: Correct the DMA direction for management tx buffers (Jarod Wilson) [1807052] - [wireless] mwifiex: drop most magic numbers from mwifiex_process_tdls_action_frame() (Jarod Wilson) [1807052] - [wireless] ath11k: fix up some error paths (Jarod Wilson) [1807052] - [wireless] ath11k: make sure to also report the RX bandwidth inside radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: avoid null pointer dereference when pointer band is null (Jarod Wilson) [1807052] - [wireless] ath11k: Add missing pdev rx rate stats (Jarod Wilson) [1807052] - [wireless] ath11k: ensure ts.flags is initialized before bit-wise or'ing in values (Jarod Wilson) [1807052] - [wireless] ath11k: set TxBf parameters after vdev start (Jarod Wilson) [1807052] - [wireless] ath11k: enable HE tlvs in ppdu stats for pktlog lite (Jarod Wilson) [1807052] - [wireless] ath11k: fix debugfs build failure (Jarod Wilson) [1807052] - [wireless] ath10k: Don't call SCM interface for statically mapped msa region (Jarod Wilson) [1807052] - [wireless] Revert "ath10k: fix DMA related firmware crashes on multiple devices" (Jarod Wilson) [1807052] - [wireless] ath10k: drop RX skb with invalid length for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: use true,false for bool variable (Jarod Wilson) [1807052] - [wireless] ath10k: Add optional qdss clk (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Fix comment on ath10k_pci_dump_memory_sram (Jarod Wilson) [1807052] - [wireless] ath10k: pci: Only dump ATH10K_MEM_REGION_TYPE_IOREG when safe (Jarod Wilson) [1807052] - [wireless] ath9k: use true,false for bool variable (Jarod Wilson) [1807052] - [net] net: mac80211: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] net: iwlwifi: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1807052] - [wireless] iwlwifi: add device name to device_info (Jarod Wilson) [1807052] - [wireless] iwlwifi: implement a new device configuration table (Jarod Wilson) [1807052] - [wireless] iwlwifi: assume the driver_data is a trans_cfg, but allow full cfg (Jarod Wilson) [1807052] - [wireless] iwlwifi: prph: remove some unused register definitions (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print out extended secboot status before dump (Jarod Wilson) [1807052] - [wireless] iwlwifi: incorporate firmware filename into version (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: check for the domain on all TLV types during init (Jarod Wilson) [1807052] - [wireless] iwlwifi: add new iwlax411 struct for type SoSnj (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove the iwl_dbg_tlv_gen_active_trigs() function (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: remove unnecessary active triggers status flag (Jarod Wilson) [1807052] - [wireless] iwlwifi: yoyo: don't allow changing the domain via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Update BEACON_TEMPLATE_CMD firmware API (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove CSR registers abstraction (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove some outdated iwl22000 configurations (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: validate queue ID before array deref/bit ops (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: use partial pages if applicable (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: map only used part of RX buffers (Jarod Wilson) [1807052] - [wireless] iwlwifi: allocate more receive buffers for HE devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for responder config command version 7 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for location range request version 8 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: remove support for fw scan api v11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: don't skip a TX FIFO when dumping (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: update powersave correctly for D3 (Jarod Wilson) [1807052] - [wireless] ath11k: Use sizeof_field() instead of FIELD_SIZEOF() (Jarod Wilson) [1807052] - [wireless] ath11k: explicitly cast wmi commands to their correct struct type (Jarod Wilson) [1807052] - [wireless] orinoco: avoid assertion in case of NULL pointer (Jarod Wilson) [1807052] - [wireless] brcmfmac: Keep OOB wake-interrupt disabled when it shouldn't be enabled (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_usbdev_qinit (Jarod Wilson) [1807052] - [wireless] brcmfmac: not set mbss in vif if firmware does not support MBSS (Jarod Wilson) [1807052] - [wireless] brcmfmac: add RSDB condition when setting interface combinations (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for BCM4359 SDIO chipset (Jarod Wilson) [1807052] - [wireless] brcmfmac: make errors when setting roaming parameters non-fatal (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix rambase for 4359/9 (Jarod Wilson) [1807052] - [wireless] brcmfmac: set F2 blocksize and watermark for 4359 (Jarod Wilson) [1807052] - [wireless] brcmfmac: reset two D11 cores if chip has two D11 cores (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_signal_scale_mapping (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192cu: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: use generic rtl_query_rxpwrpercentage (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix interface sanity check (Jarod Wilson) [1807052] - [wireless] brcmfmac: set interface carrier to off by default (Jarod Wilson) [1807052] - [wireless] mwifiex: delete unused mwifiex_get_intf_num() (Jarod Wilson) [1807052] - [wireless] rt2x00usb: Fix a warning message in 'rt2x00usb_watchdog_tx_dma()' (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix use after free in brcmf_sdio_readframes() (Jarod Wilson) [1807052] - [wireless] rt2x00: use RESET state bit to prevent IV changes on restart (Jarod Wilson) [1807052] - [wireless] rt2x00: implement reconfig_complete (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl_pci: Fix -Wcast-function-type (Jarod Wilson) [1807052] - [wireless] brcmsmac: Remove always false 'channel < 0' statement (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove last definitions of local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl88821ae: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove dependence on special bit manipulation macros for common driver (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ce: rtl8192c_com: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove usage of private bit manipulation (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove usage of private bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1807052] - [wireless] brcmfmac: Fix memory leak in brcmf_p2p_create_p2pdev() (Jarod Wilson) [1807052] - [wireless] ath9k: fix storage endpoint lookup (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] ath11k: remove an unneeded NULL check (Jarod Wilson) [1807052] - [wireless] ath11k: checking for NULL vs IS_ERR() (Jarod Wilson) [1807052] - [wireless] ath11k: delete a stray unlock in ath11k_dbg_htt_stats_req() (Jarod Wilson) [1807052] - [wireless] ath11k: fix missing free of skb on error return path (Jarod Wilson) [1807052] - [wireless] ath11k: fix uninitialized variable radioup (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak on reg_info (Jarod Wilson) [1807052] - [wireless] ath11k: Remove unnecessary enum scan_priority (Jarod Wilson) [1807052] - [wireless] ath11k: fix several spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath11k: add some missing __packed qualifiers (Jarod Wilson) [1807052] - [wireless] ath11k: set the BA buffer size to 256 when HE is enabled (Jarod Wilson) [1807052] - [wireless] ath11k: fix pdev when invoking ath11k_wmi_send_twt_enable_cmd() (Jarod Wilson) [1807052] - [wireless] ath11k: optimize ath11k_hal_tx_status_parse (Jarod Wilson) [1807052] - [wireless] ath11k: optimise ath11k_dp_tx_completion_handler (Jarod Wilson) [1807052] - [wireless] ath11k: move some tx_status parsing to debugfs code (Jarod Wilson) [1807052] - [wireless] ath11k: rename ath11k_wmi_base instances from wmi_sc to wmi_ab (Jarod Wilson) [1807052] - [wireless] ath11k: drop memset when setting up a tx cmd desc (Jarod Wilson) [1807052] - [wireless] ath11k: disable PS for STA interfaces by default upon bringup (Jarod Wilson) [1807052] - [wireless] ath11k: add wmi helper for turning STA PS on/off (Jarod Wilson) [1807052] - [wireless] ath10k: Fix some typo in some warning messages (Jarod Wilson) [1807052] - [wireless] ath11k: register HE mesh capabilities (Jarod Wilson) [1807052] - [net] netlink: rename nl80211_validate_nested() to nla_validate_nested() (Jarod Wilson) [1807052] - [wireless] wireless/mediatek: Replace rcu_swap_protected() with rcu_replace_pointer() (Jarod Wilson) [1807052] - [wireless] ath: add support for special 0x0 regulatory domain (Jarod Wilson) [1807052] - [wireless] ath10k: change bundle count for max rx bundle for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable napi on RX path for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: fix indentation in ath11k_mac_prepare_he_mode() (Jarod Wilson) [1807052] - [wireless] ath11k: Setup REO destination ring before sending wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Move mac80211 hw allocation before wmi_init command (Jarod Wilson) [1807052] - [wireless] ath11k: Skip update peer stats for management packets (Jarod Wilson) [1807052] - [wireless] ath11k: update tx duration in station info (Jarod Wilson) [1807052] - [wireless] ath11k: fix vht guard interval mapping (Jarod Wilson) [1807052] - [wireless] ath11k: fix memory leak in monitor mode (Jarod Wilson) [1807052] - [wireless] ath11k: Advertise MPDU start spacing as no restriction (Jarod Wilson) [1807052] - [wireless] ath11k: Update tx and rx chain count properly on drv_set_antenna (Jarod Wilson) [1807052] - [wireless] ath11k: add necessary peer assoc params in wmi dbg (Jarod Wilson) [1807052] - [wireless] ath11k: unlock mutex during failure in qmi fw ready (Jarod Wilson) [1807052] - [wireless] ath11k: add support for controlling tx power to a station (Jarod Wilson) [1807052] - [wireless] ath11k: update bawindow size in delba process (Jarod Wilson) [1807052] - [wireless] ath11k: avoid use_after_free in ath11k_dp_rx_msdu_coalesce API (Jarod Wilson) [1807052] - [wireless] ath11k: avoid burst time conversion logic (Jarod Wilson) [1807052] - [wireless] ath11k: pktlog: fix sending/using the pdev id (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up in ath11k_qmi_wlanfw_wlan_cfg_send() (Jarod Wilson) [1807052] - [wireless] ath11k: qmi clean up ce and HTC service config update (Jarod Wilson) [1807052] - [wireless] ath11k: tracing: fix ath11k tracing (Jarod Wilson) [1807052] - [wireless] ath10k: enable wow feature for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: change log level for mpdu status of sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: set WMI_PEER_AUTHORIZE after a firmware crash (Jarod Wilson) [1807052] - [wireless] ath10k: set max mtu to 1500 for sdio chip (Jarod Wilson) [1807052] - [wireless] ath10k: enable firmware log by default for sdio (Jarod Wilson) [1807052] - [wireless] ath11k: Fix target crash due to WBM_IDLE_LINK ring desc shortage (Jarod Wilson) [1807052] - [wireless] ath11k: Fixing TLV length issue in peer pktlog WMI command (Jarod Wilson) [1807052] - [wireless] ath11k: Fix skb_panic observed during msdu coalescing (Jarod Wilson) [1807052] - [wireless] ath11k: remove unused tx ring counters (Jarod Wilson) [1807052] - [wireless] ath11k: avoid WMM param truncation (Jarod Wilson) [1807052] - [wireless] ath11k: optimize RX path latency (Jarod Wilson) [1807052] - [wireless] ath11k: update tcl cmd descriptor parameters for STA mode (Jarod Wilson) [1807052] - [wireless] ath11k: fix wmi service ready ext tlv parsing (Jarod Wilson) [1807052] - [wireless] ath11k: fix resource leak in ath11k_mac_sta_state (Jarod Wilson) [1807052] - [wireless] ath11k: Fix htt stats sounding info and pdev cca stats (Jarod Wilson) [1807052] - [wireless] ath10k: move non-fatal warn logs to dbg level (Jarod Wilson) [1807052] - [wireless] ath11k: add spatial reuse support (Jarod Wilson) [1807052] - [wireless] ath11k: add TWT support (Jarod Wilson) [1807052] - [wireless] ath11k: add HE support (Jarod Wilson) [1807052] - [wireless] ath11k: Remove dead code while handling amsdu packets (Jarod Wilson) [1807052] - [wireless] ath11k: fix missed bw conversion in tx completion (Jarod Wilson) [1807052] - [wireless] ath11k: convert message from info to dbg (Jarod Wilson) [1807052] - [wireless] ath11k: ignore event 0x6017 (Jarod Wilson) [1807052] - [wireless] ath11k: add RX stats support for radiotap (Jarod Wilson) [1807052] - [wireless] ath11k: driver for Qualcomm IEEE 802.11ax devices (Jarod Wilson) [1807052] - [wireless] ath10k: fix RX of frames with broken FCS in monitor mode (Jarod Wilson) [1807052] - [wireless] ath10k: report rssi of each chain to mac80211 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: Handle "invalid" BDFs for msm8998 devices (Jarod Wilson) [1807052] - [wireless] ath10k: Fix qmi init error handling (Jarod Wilson) [1807052] - [wireless] ath10k: add NL80211_FEATURE_ND_RANDOM_MAC_ADDR for NLO (Jarod Wilson) [1807052] - [wireless] ath10k: Handle when FW doesn't support QMI_WLFW_HOST_CAP_REQ_V01 (Jarod Wilson) [1807052] - [wireless] ath10k: add large size for BMI download data for SDIO (Jarod Wilson) [1807052] - [wireless] ath10k: correct the tlv len of ath10k_wmi_tlv_op_gen_config_pno_start (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: remove struct ath10k_sdio_rx_data::status (Jarod Wilson) [1807052] - [wireless] ath10k: sdio: cosmetic cleanup (Jarod Wilson) [1807052] - [wireless] ath10k: add workqueue for RX path of sdio (Jarod Wilson) [1807052] - [wireless] ath10k: change max RX bundle size from 8 to 32 for sdio (Jarod Wilson) [1807052] - [wireless] ath10k: enable RX bundle receive for sdio (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues (Jarod Wilson) [1807052] - [net] cfg80211: fix page refcount issue in A-MSDU decap (Jarod Wilson) [1807052] - [net] cfg80211: check for set_wiphy_params (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in cfg80211_cqm_rssi_update (Jarod Wilson) [1807052] - [net] cfg80211: fix memory leak in nl80211_probe_mesh_link (Jarod Wilson) [1807052] - [net] cfg80211: fix deadlocks in autodisconnect work (Jarod Wilson) [1807052] - [net] wireless: wext: avoid gcc -O3 warning (Jarod Wilson) [1807052] - [net] mac80211: Fix TKIP replay protection immediately after key setup (Jarod Wilson) [1807052] - [net] cfg80211: Fix radar event during another phy CAC (Jarod Wilson) [1807052] - [net] wireless: fix enabling channel 12 for custom regulatory domain (Jarod Wilson) [1807052] - [net] mac80211: mesh: restrict airtime metric to peered established plinks (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: mvm: fix scan config command size" (Jarod Wilson) [1807052] - [wireless] iwlwifi: fw: make pos static in iwl_sar_get_ewrd_table() loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove lar_disable module parameter (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: force stop the debug monitor HW (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: always disable L0S states (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rename L0S_ENABLED bit to L0S_DISABLED (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix potential SKB leak on TXQ TX (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix SKB leak on invalid queue (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: extend hardware workaround to context-info (Jarod Wilson) [1807052] - [wireless] iwlwifi: Don't ignore the cap field upon mcc update (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: report TX rate to mac80211 directly for RS offload (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix NVM check for 3168 devices (Jarod Wilson) [1807052] - [wireless] iwlwifi: fix TLV fragment allocation loop (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: allocate smaller dev_cmd for TX headers (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: detect the DMA bug and warn if it happens (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: work around DMA hardware bug (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move page tracking into get_page_hdr() (Jarod Wilson) [1807052] - [wireless] iwlwifi: don't send PPAG command if disabled (Jarod Wilson) [1807052] - [wireless] mt76: Off by one in mt76_calc_rx_airtime() (Jarod Wilson) [1807052] - [wireless] mt76: fix LED link time failure (Jarod Wilson) [1807052] - [net] mac80211: Turn AQL into an NL80211_EXT_FEATURE (Jarod Wilson) [1807052] - [net] mac80211: airtime: Fix an off by one in ieee80211_calc_rx_airtime() (Jarod Wilson) [1807052] - [net] cfg80211: fix double-free after changing network namespace (Jarod Wilson) [1807052] - [net] mac80211: fix TID field in monitor mode transmit (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: move power gating workaround earlier in the flow (Jarod Wilson) [1807052] - [wireless] Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection" (Jarod Wilson) [1807052] - [wireless] wireles: Use sizeof_field() macro (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: fix default mac address overwrite (Jarod Wilson) [1807052] - [wireless] ath9k: use iowrite32 over __raw_writel (Jarod Wilson) [1807052] - [net] mac80211: Use Airtime-based Queue Limits (AQL) on packet dequeue (Jarod Wilson) [1807052] - [net] mac80211: Implement Airtime-based Queue Limit (AQL) (Jarod Wilson) [1807052] - [net] mac80211: Import airtime calculation code from mt76 (Jarod Wilson) [1807052] - [net] mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED (Jarod Wilson) [1807052] - [net] mac80211: expose HW conf flags through debugfs (Jarod Wilson) [1807052] - [net] mac80211: Add new sta_info getter by sta/vif addrs (Jarod Wilson) [1807052] - [net] mac80211: add a comment about monitor-to-dev injection (Jarod Wilson) [1807052] - [wireless] drivers: net: Fix Kconfig indentation, continued (Jarod Wilson) [1807052] - [wireless] mt76: fix fix ampdu locking (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: fix endpoint definition order (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: read {tx,rx} mask from eeprom (Jarod Wilson) [1807052] - [wireless] mt76: move mt76_get_antenna in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: fix possible out-of-bound access in mt7615_fill_txs/mt7603_fill_txs (Jarod Wilson) [1807052] - [wireless] Revert "mt76: mt76x0e: don't use hw encryption for MT7630E" (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: disable radar pattern detector during scanning (Jarod Wilson) [1807052] - [wireless] mt76: move interface_modes definition in mt76_core module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add ibss support (Jarod Wilson) [1807052] - [wireless] mt76: move SUPPORTS_REORDERING_BUFFER hw property in mt76_register_device (Jarod Wilson) [1807052] - [wireless] mt76: use mt76_dev in mt76_is_{mmio,usb} (Jarod Wilson) [1807052] - [wireless] mt76: Remove set but not used variable 'idx' (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on a dedicated stats workqueue (Jarod Wilson) [1807052] - [wireless] mt76: mt76u: rely on usb_interface instead of usb_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: remove 350ms delay in mt76x0_phy_calibrate (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: update ewma pkt len in mt76x02u_tx_prepare_skb (Jarod Wilson) [1807052] - [wireless] mt76: remove obsolete .add_buf() from struct mt76_queue_ops (Jarod Wilson) [1807052] - [wireless] mt76: add sanity check for a-mpdu rx wcid index (Jarod Wilson) [1807052] - [wireless] mt76: refactor cc_lock locking scheme (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0: eeprom: add support for MAC address from OF (Jarod Wilson) [1807052] - [wireless] mt76: avoid enabling interrupt if NAPI poll is still pending (Jarod Wilson) [1807052] - [wireless] mt76: fix aggregation stop issue (Jarod Wilson) [1807052] - [wireless] mt76: drop rcu read lock in mt76_rx_aggr_stop (Jarod Wilson) [1807052] - [wireless] mt76: add missing locking around ampdu action (Jarod Wilson) [1807052] - [wireless] mt76: do not use devm API for led classdev (Jarod Wilson) [1807052] - [wireless] mt76: enable airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: track tx/rx airtime for airtime fairness (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: introduce mt7615_mac_wtbl_update routine (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix survey channel busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: report tx_time, bss_rx and busy time to mac80211 (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: track approximate tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move MT_CH_TIME_CFG init to mt76x02_mac_cc_reset (Jarod Wilson) [1807052] - [wireless] mt76: unify channel survey update code (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: switch to a different counter for survey busy time (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: track tx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: track rx airtime for airtime fairness and survey (Jarod Wilson) [1807052] - [wireless] mt76: store current channel survey_state in struct mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: rename mt76_driver_ops txwi_flags to drv_flags and include tx aligned4 (Jarod Wilson) [1807052] - [wireless] mt76: report rx a-mpdu subframe status (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: remove q_rx field from struct mt7603_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7603: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: collect aggregation stats (Jarod Wilson) [1807052] - [wireless] mt76: move aggr_stats array in mt76_dev (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: add queue entry in debugfs (Jarod Wilson) [1807052] - [wireless] mt76: move queue debugfs entry to driver specific code (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0u: reset counter starting the device (Jarod Wilson) [1807052] - [wireless] mt76: mt76x2: move mt76x02_mac_reset_counters in mt76x02_mac_start (Jarod Wilson) [1807052] - [wireless] mt76: mt76x02: move mac_reset_counter in mt76x02_lib module (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: enable SCS by default (Jarod Wilson) [1807052] - [wireless] mt76: mt76x0e: make array mt76x0_chan_map static const, makes object smaller (Jarod Wilson) [1807052] - [wireless] mt76: usb: add lockdep_assert_held in __mt76u_vendor_request (Jarod Wilson) [1807052] - [wireless] mt76: remove empty flag in mt76_txq_schedule_list (Jarod Wilson) [1807052] - [wireless] mt76: use cancel_delayed_work_sync in mt76_rx_aggr_shutdown (Jarod Wilson) [1807052] - [wireless] mt76: remove aggr_work field from struct mt76_wcid (Jarod Wilson) [1807052] - [wireless] mt76: mt7615: fix control frame rx in monitor mode (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 52 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: check kasprintf() return value (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove outdated comment referring to wake lock (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: trace IOVA for iwlwifi_dev_tx_tb (Jarod Wilson) [1807052] - [wireless] iwlwifi: dvm: excessive if in rs_bt_update_lq() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Report tx/rx antennas (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: rx: use rxq queue_size instead of constant (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove left-over non-functional email alias (Jarod Wilson) [1807052] - [wireless] iwlwifi: config: remove max_rx_agg_size (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make some RX functions static (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req FW API ver 13 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: fix support for transmitting SKBs with fraglist (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'vif', 'dev', 'len' (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove monitor interface when detaching (Jarod Wilson) [1807052] - [wireless] brcmfmac: disable PCIe interrupts before bus reset (Jarod Wilson) [1807052] - [wireless] rtw88: allows to enable/disable HCI link PS mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: pci: enable CLKREQ function if host supports it (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use for loop instead of while loop for DBI/MDIO (Jarod Wilson) [1807052] - [wireless] rtw88: pci: use macros to access PCI DBI/MDIO registers (Jarod Wilson) [1807052] - [wireless] rtlwifi: set proper udelay within rf_serial_read (Jarod Wilson) [1807052] - [wireless] rtlwifi: rf_lock use non-irqsave spin_lock (Jarod Wilson) [1807052] - [wireless] brcmfmac: remove set but not used variable 'mpnum', 'nsp', 'nmp' (Jarod Wilson) [1807052] - [wireless] rtw88: remove duplicated include from ps.c (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Remove set but not used variable 'rsr' (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove unnecessary return (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: remove local VENDOR_ID and DEVICE_ID definitions (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 use new SDIO_VENDOR_ID_TI_WL1251 definition (Jarod Wilson) [1807052] - [wireless] net: wireless: ti: wl1251 add device tree support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix non-ACPI function (Jarod Wilson) [1807052] - [wireless] iwlwifi: 22000: fix some indentation (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove IWL_DEVICE_22560/IWL_DEVICE_FAMILY_22560 (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: sync the iwl_mvm_session_prot_notif layout (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: start CTDP budget from 2400mA (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: don't skip mgmt tid when flushing all tids (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: scan: enable adaptive dwell in p2p (Jarod Wilson) [1807052] - [wireless] iwlwifi: refactor the SAR tables from mvm to acpi (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: support scan req cmd ver 12 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: make new scan req versioning flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix unaligned read of rx_pkt_status (Jarod Wilson) [1807052] - [wireless] iwlwifi: remove redundant assignment to variable bufsz (Jarod Wilson) [1807052] - [wireless] iwlwifi: bump FW API to 51 for 22000 series (Jarod Wilson) [1807052] - [wireless] iwlwifi: FW API: reference enum in docs of modify_mask (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: print rate_n_flags in a pretty format (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: adapt the code to use api ver 11 (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: Create function to build scan cmd (Jarod Wilson) [1807052] - [wireless] iwlwifi: scan: create function for scan scheduling params (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support dump collection upon assert during D3 (Jarod Wilson) [1807052] - [wireless] iwlwifi: pcie: make iwl_pcie_gen2_update_byte_tbl static (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: in VHT connection use only VHT capabilities (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: update iwl_uhb_nvm_channels (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove else-if in iwl_send_phy_cfg_cmd() (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix support for single antenna diversity (Jarod Wilson) [1807052] - [wireless] ath10k: qmi: Sleep for a while before assigning MSA memory (Jarod Wilson) [1807052] - [wireless] ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()" (Jarod Wilson) [1807052] - [wireless] mwifiex: Re-work support for SDIO HW reset (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Add support for Edimax EW-7611ULB (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing enable interrupt flag (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing callback that tests for hw release of buffer (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address (Jarod Wilson) [1807052] - [net] mac80211: Use debugfs_create_xul() helper (Jarod Wilson) [1807052] - [net] cfg80211: VLAN offload support for set_key and set_sta_vlan (Jarod Wilson) [1807052] - [net] mac80211: Shrink the size of ack_frame_id to make room for tx_time_est (Jarod Wilson) [1807052] - [net] mac80211: don't re-parse elems in ieee80211_assoc_success() (Jarod Wilson) [1807052] - [net] mac80211: move store skb ack code to its own function (Jarod Wilson) [1807052] - [wireless] ath10k: disable cpuidle during downloading firmware (Jarod Wilson) [1807052] - [wireless] ath10k: fix potential issue of peer stats allocation (Jarod Wilson) [1807052] - [wireless] ath10k: fix get invalid tx rate for Mesh metric (Jarod Wilson) [1807052] - [wireless] rtw88: signal completion even on firmware-request failure (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential NULL pointer access for firmware (Jarod Wilson) [1807052] - [wireless] rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt() (Jarod Wilson) [1807052] - [wireless] rt2800: remove errornous duplicate condition (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8225se: remove some unused const variables (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove set but not used variables (Jarod Wilson) [1807052] - [wireless] rtw88: raise LPS threshold to 50, for less power consumption (Jarod Wilson) [1807052] - [wireless] ath5k: eeprom: Remove unneeded variable (Jarod Wilson) [1807052] - [wireless] ath10k: remove unneeded semicolon (Jarod Wilson) [1807052] - [wireless] mt7601u: use DEFINE_DEBUGFS_ATTRIBUTE to define debugfs fops (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] b43: dma: Fix use true/false for bool type variable (Jarod Wilson) [1807052] - [wireless] b43: main: Fix use true/false for bool type (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Drop condition with no effect (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant null pointer check on arrays (Jarod Wilson) [1807052] - [wireless] rtw88: avoid FW info flood (Jarod Wilson) [1807052] - [wireless] rtw88: fix potential read outside array boundary (Jarod Wilson) [1807052] - [wireless] rtw88: rearrange if..else statements for rx rate indexes (Jarod Wilson) [1807052] - [wireless] rtw88: use rtw_phy_pg_cfg_pair struct, not arrays (Jarod Wilson) [1807052] - [wireless] rtw88: 8822b: add RFE type 3 support (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for power tracking (Jarod Wilson) [1807052] - [wireless] rtw88: fix sparse warnings for DPK (Jarod Wilson) [1807052] - [wireless] net: Fix various misspellings of "connect" (Jarod Wilson) [1807052] - [wireless] net: Fix misspellings of "configure" and "configuration" (Jarod Wilson) [1807052] - [wireless] rtw88: fix GENMASK_ULL for u64 (Jarod Wilson) [1807052] - [wireless] iwlwifi: rx: use new api to get band from rx mpdu (Jarod Wilson) [1807052] - [wireless] iwlwifi: nvm: create function to convert channel index to nl80211_band (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: Invert the condition for OFDM rate (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: create function to convert nl80211 band to phy band (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use vzalloc to allocate dumping memory regions (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add user trigger support (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add notification for missed VAP (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: fix old-style declaration (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: use the new session protection command (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: remove leftover rs_remove_sta_debugfs() prototype (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: add support for new version for D0I3_END_CMD (Jarod Wilson) [1807052] - [wireless] iwlwifi: mvm: consider ieee80211 station max amsdu value (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW notification dumping in case of missed beacon (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: remove old API and some related code (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: rename external debug configuration file (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support FW response/notification region type (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: support domain changing via debugfs (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add periodic trigger new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement monitor allocation flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: implement time point handling (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add TLV allocation new API support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new API in dump info (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add error tables dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: add monitor dumping support (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg: remove multi buffers infra (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new trigger TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: use new region TLV in dump flow (Jarod Wilson) [1807052] - [wireless] iwlwifi: dbg_ini: load external dbg cfg after internal cfg is loaded (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix warnings for symbol not declared (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: remove set but not used variable 'rate_mask' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove unnecessary NULL check in rtl_regd_init (Jarod Wilson) [1807052] - [wireless] rtw88: add phy_info debugfs to show Tx/Rx physical status (Jarod Wilson) [1807052] - [wireless] rtw88: add set_bitrate_mask support (Jarod Wilson) [1807052] - [wireless] rtw88: Enable 802.11ac beamformee support (Jarod Wilson) [1807052] - [wireless] rtw88: add power tracking support (Jarod Wilson) [1807052] - [wireless] rtw88: use macro to check the current band (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot (Jarod Wilson) [1807052] - [wireless] rtw88: mark rtw_fw_hdr __packed (Jarod Wilson) [1807052] - [wireless] net/wireless: Delete unnecessary checks before the macro call "dev_kfree_skb" (Jarod Wilson) [1807052] - [wireless] wireless: Remove call to memset after dma_alloc_coherent (Jarod Wilson) [1807052] - [wireless] rtw88: include interrupt.h for tasklet_struct (Jarod Wilson) [1807052] - [wireless] rtw88: use a for loop in rtw_power_mode_change(), not goto (Jarod Wilson) [1807052] - [wireless] rtw88: coex: Set 4 slot mode for A2DP (Jarod Wilson) [1807052] - [wireless] rtw88: pci: config phy after chip info is setup (Jarod Wilson) [1807052] - [wireless] rtw88: Use rtw_write8_set to set SYS_FUNC (Jarod Wilson) [1807052] - [wireless] rtw88: add NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 support (Jarod Wilson) [1807052] - [wireless] rtw88: config 8822c multicast address in MAC init flow (Jarod Wilson) [1807052] - [wireless] ath10k: Correct error handling of dma_map_single() (Jarod Wilson) [1807052] - [wireless] ath: rename regulatory rules (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak for tpc_stats_final (Jarod Wilson) [1807052] - [wireless] ath10k: fix array out-of-bounds access (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert inline routines to little-endian words (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Convert macros that set descriptor (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Replace local bit manipulation macros (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192se: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'err' (Jarod Wilson) [1807052] - [wireless] ath10k: fix null dereference on pointer crash_data (Jarod Wilson) [1807052] - [wireless] ath10k: enable transmit data ack RSSI for QCA9884 (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: rename prob_ewma to prob_avg, use it for the new average (Jarod Wilson) [1807052] - [net] mac80211: minstrel_ht: replace rate stats ewma with a better moving average (Jarod Wilson) [1807052] - [net] mac80211: minstrel: remove divisions in tx status path (Jarod Wilson) [1807052] - [net] nl80211: trivial: Remove redundant loop (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variable 'cur_tx_wp' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: make arrays static, makes object smaller (Jarod Wilson) [1807052] - [wireless] rtw88: Fix an error message (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: add bluetooth co-existence support for single antenna (Jarod Wilson) [1807052] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf (Jarod Wilson) [1829230 1807052] {CVE-2019-19056} - [wireless] rtlwifi: rtl8723: Remove set but not used variable 'own' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variables 'wifi_busy', 'bt_info_ext' (Jarod Wilson) [1807052] - [wireless] rtlwifi: btcoex: Remove set but not used variable 'result' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variable 'h2c_parameter' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8188ee: Remove set but not used variables 'v3', 'rtstatus', 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192c: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723ae: Remove set but not used variables 'reg_ecc', 'reg_ec4', 'reg_eac', 'b_pathb_ok' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8821ae: Remove set but not used variables 'rtstatus', 'bd' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: Improve TX performance of RTL8723BU on rtl8xxxu driver (Jarod Wilson) [1807052] - [wireless] brcmfmac: add support for SAE authentication offload (Jarod Wilson) [1807052] - [wireless] rtw88: fix error handling when setup efuse info (Jarod Wilson) [1807052] - [wireless] rtw88: fix NSS of hw_cap (Jarod Wilson) [1807052] - [wireless] rtw88: use struct rtw_fw_hdr to access firmware header (Jarod Wilson) [1807052] - [wireless] rtw88: raise firmware version debug level (Jarod Wilson) [1807052] - [wireless] rtw88: configure TX queue EDCA parameters (Jarod Wilson) [1807052] - [wireless] rtw88: Don't set RX_FLAG_DECRYPTED if packet has no encryption (Jarod Wilson) [1807052] - [wireless] rtw88: fix beaconing mode rsvd_page memory violation issue (Jarod Wilson) [1807052] - [wireless] rtw88: flush hardware tx queues (Jarod Wilson) [1807052] - [wireless] rtw88: add TX-AMSDU support (Jarod Wilson) [1807052] - [wireless] rtw88: report tx rate to mac80211 stack (Jarod Wilson) [1807052] - [wireless] rtw88: take over rate control from mac80211 (Jarod Wilson) [1807052] - [wireless] rtw88: add driver TX queue support (Jarod Wilson) [1807052] - [wireless] rtw88: allows to set RTS in TX descriptor (Jarod Wilson) [1807052] - [wireless] rtw88: check firmware leave lps successfully (Jarod Wilson) [1807052] - [wireless] mac80211: simplify TX aggregation start (Jarod Wilson) [1807052] - [net] mac80211: pass internal sta to ieee80211_tx_frags() (Jarod Wilson) [1807052] - [net] mac80211: IBSS: avoid unneeded return value processing (Jarod Wilson) [1807052] - [wireless] ar5523: check NULL before memcpy() in ar5523_cmd() (Jarod Wilson) [1807052] - [wireless] ath10k: add support for hardware rfkill (Jarod Wilson) [1807052] - [wireless] ath10k: restore QCA9880-AR1A (v1) detection (Jarod Wilson) [1807052] - [wireless] ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq (Jarod Wilson) [1807052] - [wireless] cw1200: Fix a signedness bug in cw1200_load_firmware() (Jarod Wilson) [1807052] - [wireless] rtw88: remove misleading module parameter rtw_fw_support_lps (Jarod Wilson) [1807052] - [wireless] rtw88: add deep PS PG mode for 8822c (Jarod Wilson) [1807052] - [wireless] rtw88: select deep PS mode when module is inserted (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter LPS by coex strategy (Jarod Wilson) [1807052] - [wireless] rtw88: add deep power save support (Jarod Wilson) [1807052] - [wireless] rtw88: leave PS state for dynamic mechanism (Jarod Wilson) [1807052] - [wireless] rtw88: LPS enter/leave should be protected by lock (Jarod Wilson) [1807052] - [wireless] rtw88: remove unused lps state check helper (Jarod Wilson) [1807052] - [wireless] rtw88: not to control LPS by each vif (Jarod Wilson) [1807052] - [wireless] rtw88: not to enter or leave PS under IRQ (Jarod Wilson) [1807052] - [wireless] rtw88: pci: reset H2C queue indexes in a single write (Jarod Wilson) [1807052] - [wireless] rtw88: remove redundant flag check helper function (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8723be: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'reg_ecc', 'reg_eac' (Jarod Wilson) [1807052] - [wireless] rtlwifi: rtl8192ee: Remove set but not used variables 'short_gi', 'buf_len' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variables 'dataempty', 'hoffset' (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove set but not used variable 'rtstate' (Jarod Wilson) [1807052] - [wireless] rtl8xxxu: prevent leaking urb (Jarod Wilson) [1829887 1807052] {CVE-2019-19068} - [wireless] net/wireless: Use kmemdup rather than duplicating its implementation (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Discard undersized packets (Jarod Wilson) [1807052] - [wireless] ath9k_htc: Modify byte order for an error message (Jarod Wilson) [1807052] - [wireless] ath9k_hw: fix uninitialized variable data (Jarod Wilson) [1807052] - [wireless] ath10k: fix backtrace on coredump (Jarod Wilson) [1807052] - [wireless] ath10k: coredump: fix IRAM addr for QCA9984, QCA4019, QCA9888 and QCA99x0 (Jarod Wilson) [1807052] - [wireless] ath10k: switch to ieee80211_tx_dequeue_ni (Jarod Wilson) [1807052] - [wireless] ath10k: change sw version print format to hex (Jarod Wilson) [1807052] - [wireless] ath10k: print supported MCS rates within service ready event (Jarod Wilson) [1807052] - [wireless] ath10k: print service ready returned channel range (Jarod Wilson) [1807052] - [wireless] ath10k: add 2ghz channel arguments to service ready structure (Jarod Wilson) [1807052] - [wireless] ath9k: remove unused including (Jarod Wilson) [1807052] - [wireless] mwifiex: use 'total_ie_len' in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1807052] - [wireless] rtlwifi: Remove excessive check in _rtl_ps_inactive_ps() (Jarod Wilson) [1807052] - [wireless] rtlwifi: prevent memory leak in rtl_usb_probe (Jarod Wilson) [1829850 1807052] {CVE-2019-19063} - [wireless] rtlwifi: rtl8723ae: Remove unused 'rtstatus' variable (Jarod Wilson) [1807052] - [wireless] mt7601u: fix bbp version check in mt7601u_wait_bbp_ready (Jarod Wilson) [1807052] - [wireless] rtw88: 8822c: fix boolreturn.cocci warnings (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove duplicated if condition (Jarod Wilson) [1807052] - [wireless] brcmfmac: fix suspend/resume when power is cut off (Jarod Wilson) [1807052] - [wireless] brcmfmac: don't WARN when there are no requests (Jarod Wilson) [1807052] - [wireless] brcmsmac: remove a useless test (Jarod Wilson) [1807052] - [wireless] brcmfmac: send port authorized event for FT-802.1X (Jarod Wilson) [1807052] - [wireless] ath10k: fix memory leak (Jarod Wilson) [1807052] - [wireless] ath10k: remove the warning of sdio not full support (Jarod Wilson) [1807052] - [wireless] ath: Use dev_get_drvdata where possible (Jarod Wilson) [1807052] - [wireless] ath: fix various spelling mistakes (Jarod Wilson) [1807052] - [wireless] ath10k: fix missing checks for bmi reads and writes (Jarod Wilson) [1807052] - [wireless] ath10k: Add support to provide higher range mem chunks in wmi init command (Jarod Wilson) [1807052] - [wireless] ath10k: Add peer param map for tlv and non-tlv (Jarod Wilson) [1807052] - [wireless] ath10k: Enable MSA region dump support for WCN3990 (Jarod Wilson) [1807052] - [wireless] ath10k: Add xo calibration support for wifi rf clock (Jarod Wilson) [1807052] - [wireless] ath10k: fix spelling mistake "eanble" -> "enable" (Jarod Wilson) [1807052] - [wireless] ath10k: add cleanup in ath10k_sta_state() (Jarod Wilson) [1807052] - [wireless] ath10k: revalidate the msa region coming from firmware (Jarod Wilson) [1807052] - [wireless] ath10k: use ath10k_pci_soc_ functions for all warm_reset instances (Jarod Wilson) [1807052] - [wireless] ath10k: Use ARRAY_SIZE (Jarod Wilson) [1807052] - [wireless] ath10k: avoid leaving .bss_info_changed prematurely (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard bulk clock API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: Use standard regulator bulk API in snoc (Jarod Wilson) [1807052] - [wireless] ath10k: snoc: skip regulator operations (Jarod Wilson) [1807052] - [wireless] ath10k: Fix HOST capability QMI incompatibility (Jarod Wilson) [1807052] - [wireless] ath10k: Check if station exists before forwarding tx airtime report (Jarod Wilson) [1807052] - [include] include/linux/units.h: add helpers for kelvin to/from Celsius conversion (Jarod Wilson) [1807052]- [x86] x86/PCI: Define to_pci_sysdata() even when !CONFIG_PCI (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add two VMD Device IDs (Myron Stowe) [1788364 1783436] - [pci] x86/PCI: Expose VMD's pci_dev in struct pci_sysdata (Myron Stowe) [1788364 1783436] - [x86] x86/PCI: Add to_pci_sysdata() helper (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add device id for VMD device 8086:9A0B (Myron Stowe) [1788364 1783436] - [pci] PCI: vmd: Add bus 224-255 restriction decode (Myron Stowe) [1788364 1783436] - [fs] fuse: copy_file_range needs to strip setuid bits and update timestamps (Eric Sandeen) [1721881] - [fs] vfs: allow copy_file_range to copy across devices (Eric Sandeen) [1721881] - [fs] vfs: add missing checks to copy_file_range (Eric Sandeen) [1721881] - [mm] vfs: remove redundant checks from generic_remap_checks() (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_file_rw_checks() (Eric Sandeen) [1721881] - [fs] vfs: no fallback for ->copy_file_range (Eric Sandeen) [1721881] - [fs] vfs: introduce generic_copy_file_range() (Eric Sandeen) [1721881] - [ptp] ptp: add VMware virtual PTP clock driver (Prarit Bhargava) [1829706] - [powerpc] powerpc/powernv/ioda: Handle failures correctly in pnv_pci_ioda_iommu_bypass_supported() (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Enable SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/pseries/dma: Allow SWIOTLB (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Fix build with IOMMU_API=n (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove unused pnv_npu_try_dma_set_bypass() function (Michael Roth) [1805101] - [powerpc] powerpc/dma: Fix invalid DMA mmap behavior (Michael Roth) [1805101] - [powerpc] powerpc/dma: trim the fat from (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove set_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_dma_offset (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the generic direct mapping bypass (Michael Roth) [1805101] - [powerpc] powerpc/powernv/npu: Remove NPU DMA ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma_direct mapping routines (Michael Roth) [1805101] - [powerpc] powerpc/dma: use the dma-direct allocator for coherent platforms (Michael Roth) [1805101] - [powerpc] swiotlb: remove swiotlb_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_dma_supported (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_get_required_mask (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove dma_nommu_mmap_coherent (Michael Roth) [1805101] - [powerpc] powerpc/dma: use phys_to_dma instead of get_dma_offset (Michael Roth) [1805101] - [powerpc] dma-mapping, powerpc: simplify the arch dma_set_mask override (Michael Roth) [1805101] - [powerpc] powerpc/dma: fix an off-by-one in dma_capable (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove max_direct_dma_addr (Michael Roth) [1805101] - [powerpc] powerpc/dma: move pci_dma_dev_setup_swiotlb to fsl_pci.c (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove get_pci_dma_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the iommu fallback for coherent allocations (Michael Roth) [1805101] - [powerpc] powerpc/pci: remove the dma_set_mask pci_controller ops methods (Michael Roth) [1805101] - [misc] cxl: drop the dma_set_mask callback from vphb (Michael Roth) [1805101] - [powerpc] KABI: re-use deprecated field for iommu_bypass_supported function pointer (Michael Roth) [1805101] - [powerpc] powerpc/dma: stop overriding dma_get_required_mask (Michael Roth) [1805101] - [dma] KABI: add fake includes for headers used in arch/powerpc/kernel/dma.c (Michael Roth) [1805101] - [powerpc] powerpc/powernv: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/powernv: Remove PCI_MSI ifdef checks (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_npu_dma_set_mask (Michael Roth) [1805101] - [powerpc] powerpc/powernv: remove pnv_pci_ioda_pe_single_vendor (Michael Roth) [1805101] - [powerpc] powerpc/dart: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/dart: remove dead cleanup code in iommu_init_early_dart (Michael Roth) [1805101] - [powerpc] powerpc/cell: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/cell: move dma direct window setup out of dma_configure (Michael Roth) [1805101] - [powerpc] powerpc/pseries: use the generic iommu bypass code (Michael Roth) [1805101] - [powerpc] powerpc/pseries: unwind dma_get_required_mask_pSeriesLP a bit (Michael Roth) [1805101] - [powerpc] powerpc/dma: handle iommu bypass in dma_iommu_ops (Michael Roth) [1805101] - [powerpc] powerpc/dma: untangle vio_dma_mapping_ops from dma_iommu_ops (Michael Roth) [1805101] - [dma] dma-direct: we might need GFP_DMA for 32-bit dma masks (Michael Roth) [1805101] - [powerpc] powerpc/dma: split the two __dma_alloc_coherent implementations (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused dma_iommu_ops export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ISA_DMA_THRESHOLD export (Michael Roth) [1805101] - [powerpc] powerpc/dma: remove the unused ARCH_HAS_DMA_MMAP_COHERENT define (Michael Roth) [1805101] - [powerpc] powerpc/dma: properly wire up the unmap_page and unmap_sg methods (Michael Roth) [1805101] - [powerpc] powerpc: allow NOT_COHERENT_CACHE for amigaone (Michael Roth) [1805101] - [powerpc] powerpc/fadump: consider reserved ranges while reserving memory (Steve Best) [1813701] - [powerpc] powerpc/fadump: use static allocation for reserved memory ranges (Steve Best) [1813701] - [fs] audit: Report suspicious O_CREAT usage (partial) (Eric Sandeen) [1797843] - [fs] vfs: fix do_last() regression (Eric Sandeen) [1797843] - [fs] do_last(): fetch directory ->i_mode and ->i_uid before it's too late (Eric Sandeen) [1797843] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Eric Sandeen) [1797843] - [netdrv] fm10k: use txqueue parameter in fm10k_tx_timeout (Neil Horman) [1781387] - [netdrv] fm10k: Use sizeof_field() macro (Neil Horman) [1781387] - [netdrv] fm10k: update driver version to match out-of-tree (Neil Horman) [1781387] - [netdrv] fm10k: add support for ndo_get_vf_stats operation (Neil Horman) [1781387] - [netdrv] fm10k: add missing field initializers to TLV attributes) (Neil Horman) [1781387] - [netdrv] fm10k: use a local variable for the frag pointer (Neil Horman) [1781387] - [netdrv] ethernet: Delete unnecessary checks before the macro call "dev_kfree_skb" (Neil Horman) [1781387] - [netdrv] fm10k: no need to check return value of debugfs_create functions (Neil Horman) [1781387] - [security] KEYS: Avoid false positive ENOMEM error on key read (Waiman Long) [1807693] - [security] KEYS: Don't write out to userspace while holding key semaphore (Waiman Long) [1807693] - [security] selinux: allow per-file labeling for CephFS (Ondrej Mosnacek) [1823764] - [scsi] scsi: qedi: make qedi_ll2_buf_size static (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Fix termination timeouts in session logout (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add modules param to enable qed iSCSI debug (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Do not flush offload work if ARP not resolved (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Use correct msix count for fastpath vectors (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Avoid unnecessary endpoint allocation on link down (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Remove additional char from boot target iqnname (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add PCI shutdown handler support (Nilesh Javali) [1792111] - [scsi] scsi: qedi: Add MFW error recovery process (Nilesh Javali) [1792111] - [netdrv] ibmvnic: Skip fatal error reset after passive init (Steve Best) [1830989] - [ata] ahci: Add Intel Comet Lake PCH-V PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake PCH-H PCI ID (David Milburn) [1802690] - [ata] ahci: Add Intel Comet Lake H RAID PCI ID (David Milburn) [1802690] - [x86] x86, sched: Move check for CPU type to caller function (Prarit Bhargava) [1828260] - [x86] x86, sched: Don't enable static key when starting secondary CPUs (Prarit Bhargava) [1828260] - [x86] x86, sched: Account for CPUs with less than 4 cores in freq. invariance (Prarit Bhargava) [1828260] - [x86] x86, sched: Bail out of frequency invariance if base frequency is unknown (Prarit Bhargava) [1828260] - [lib] scsi: klist: Make it safe to use klists in atomic context (Waiman Long) [1829027] - [char] random: try to actively add entropy rather than passively wait for it (Neil Horman) [1778762] - [md] dm writecache: fix data corruption when reloading the target (Mike Snitzer) [1830129] - [kernel] smp: Allow smp_call_function_single_async() to insert locked csd (Peter Xu) [1830014] - [scsi] scsi: ibmvscsi: Fix WARN_ON during event pool release (Steve Best) [1829242] - [block] block: avoid to check null profile pointer to see if it is in 3rd party module (Ming Lei) [1829464] - [tools] perf scripting perl: Add common_callchain to fix argument order (Michael Petlan) [1809191] - [netdrv] ionic: fix unused assignment (Jonathan Toppins) [1780645] - [netdrv] ionic: add dynamic_debug header (Jonathan Toppins) [1780645] - [netdrv] ionic: set station addr only if needed (Jonathan Toppins) [1780645] - [netdrv] ionic: replay filters after fw upgrade (Jonathan Toppins) [1780645] - [netdrv] ionic: remove lifs on fw reset (Jonathan Toppins) [1780645] - [netdrv] ionic: disable the queues on link down (Jonathan Toppins) [1780645] - [netdrv] ionic: check for queues before deleting (Jonathan Toppins) [1780645] - [netdrv] ionic: clean tx queue of unfinished requests (Jonathan Toppins) [1780645] - [netdrv] ionic: move irq request to qcq alloc (Jonathan Toppins) [1780645] - [netdrv] ionic: move debugfs add/delete to match alloc/free (Jonathan Toppins) [1780645] - [netdrv] ionic: check for linkup in watchdog (Jonathan Toppins) [1780645] - [netdrv] ionic: decouple link message from netdev state (Jonathan Toppins) [1780645] - [netdrv] ionic: check for NULL structs on teardown (Jonathan Toppins) [1780645] - [netdrv] ionic: clean irq affinity on queue deinit (Jonathan Toppins) [1780645] - [netdrv] ionic: ignore eexist on rx filter add (Jonathan Toppins) [1780645] - [netdrv] ionic: only save good lif dentry (Jonathan Toppins) [1780645] - [netdrv] ionic: leave dev cmd request contents alone on FW timeout (Jonathan Toppins) [1780645] - [netdrv] ionic: add timeout error checking for queue disable (Jonathan Toppins) [1780645] - [netdrv] ionic: make spdxcheck.py happy (Jonathan Toppins) [1780645] - [netdrv] ionic: add decode for IONIC_RC_ENOSUPP (Jonathan Toppins) [1780645] - [netdrv] ionic: print data for unknown xcvr type (Jonathan Toppins) [1780645] - [netdrv] ionic: remove adminq napi instance (Jonathan Toppins) [1780645] - [netdrv] ionic: deinit rss only if selected (Jonathan Toppins) [1780645] - [netdrv] ionic: stop devlink warn on mgmt device (Jonathan Toppins) [1780645] - [netdrv] net: ionic: Use scnprintf() for avoiding potential buffer overflow (Jonathan Toppins) [1780645] - [netdrv] netdev:pass the stuck queue to the timeout handler (Jonathan Toppins) [1780645] - [netdrv] ionic: drop ethtool driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: add support for device id 0x1004 (Jonathan Toppins) [1780645] - [netdrv] ionic: print pci bus lane info (Jonathan Toppins) [1780645] - [netdrv] ionic: support ethtool rxhash disable (Jonathan Toppins) [1780645] - [netdrv] ionic: clean up bitflag usage (Jonathan Toppins) [1780645] - [netdrv] ionic: improve irq numa locality (Jonathan Toppins) [1780645] - [netdrv] ionic: remove pragma packed (Jonathan Toppins) [1780645] - [netdrv] ionic: keep ionic dev on lif init fail (Jonathan Toppins) [1780645] - [netdrv] ionic: fix vf op lock usage (Jonathan Toppins) [1780645] - [netdrv] ionic: let core reject the unsupported coalescing parameters (Jonathan Toppins) [1780645] - [netdrv] ionic: fix fw_status read (Jonathan Toppins) [1780645] - [netdrv] ionic: use new helper tcp_v6_gso_csum_prep (Jonathan Toppins) [1780645] - [netdrv] ionic: fix rxq comp packet type mask (Jonathan Toppins) [1780645] - [netdrv] ionic: clear compiler warning on hb use before set (Jonathan Toppins) [1780645] - [netdrv] ionic: restrict received packets to mtu size (Jonathan Toppins) [1780645] - [netdrv] ionic: add Rx dropped packet counter (Jonathan Toppins) [1780645] - [netdrv] ionic: drop use of subdevice tags (Jonathan Toppins) [1780645] - [netdrv] ionic: support sr-iov operations (Jonathan Toppins) [1780645] - [netdrv] ionic: ionic_if bits for sr-iov support (Jonathan Toppins) [1780645] - [netdrv] ionic: keep users rss hash across lif reset (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove set but not used variable 'sg_desc' (Jonathan Toppins) [1780645] - [netdrv] ionic: update driver version (Jonathan Toppins) [1780645] - [netdrv] ionic: implement support for rx sgl (Jonathan Toppins) [1780645] - [netdrv] ionic: add a watchdog timer to monitor heartbeat (Jonathan Toppins) [1780645] - [netdrv] ionic: add heartbeat check (Jonathan Toppins) [1780645] - [netdrv] ionic: reverse an interrupt coalesce calculation (Jonathan Toppins) [1780645] - [netdrv] ionic: fix up struct name comments (Jonathan Toppins) [1780645] - [netdrv] dynamic_debug: provide dynamic_hex_dump stub (Jonathan Toppins) [1780645] - [netdrv] ionic: fix stats memory dereference (Jonathan Toppins) [1780645] - [netdrv] ionic: add lif_quiesce to wait for queue activity to stop (Jonathan Toppins) [1780645] - [netdrv] ionic: implement ethtool set-fec (Jonathan Toppins) [1780645] - [netdrv] ionic: report users coalesce request (Jonathan Toppins) [1780645] - [netdrv] ionic: use wait_on_bit_lock() rather than open code (Jonathan Toppins) [1780645] - [netdrv] ionic: simplify returns in devlink info (Jonathan Toppins) [1780645] - [netdrv] ionic: select CONFIG_NET_DEVLINK (Jonathan Toppins) [1780645] - [netdrv] ionic: Fix an error code in ionic_lif_alloc() (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unnecessary ternary operator in ionic_debugfs_add_ident (Jonathan Toppins) [1780645] - [netdrv] ionic: Remove unused including (Jonathan Toppins) [1780645] - [netdrv] ionic: Add coalesce and other features (Jonathan Toppins) [1780645] - [netdrv] ionic: Add RSS support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add driver stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add netdev-event handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Tx and Rx handling (Jonathan Toppins) [1780645] - [netdrv] ionic: Add initial ethtool support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add async link status check and basic stats (Jonathan Toppins) [1780645] - [netdrv] ionic: Add Rx filter and rx_mode ndo support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add management of rx filters (Jonathan Toppins) [1780645] - [netdrv] ionic: Add the basic NDO callbacks for netdev support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add notifyq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add adminq action (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic adminq support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add interrupts and doorbells (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic lif support (Jonathan Toppins) [1780645] - [netdrv] ionic: Add port management commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add hardware init and device commands (Jonathan Toppins) [1780645] - [netdrv] ionic: Add basic framework for IONIC Network device driver (Jonathan Toppins) [1780645] - [netdrv] net: sfp: add more extended compliance codes (Jonathan Toppins) [1780645] - [scsi] scsi: core: Add DID_ALLOC_FAILURE and DID_MEDIUM_ERROR to hostbyte_table (Maurizio Lombardi) [1819061] - [netdrv] igc: Add debug messages to MAC filter code (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_mac_entry_can_be_used() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove igc_*_mac_steering_filter() wrappers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove IGC_MAC_STATE_QUEUE_STEERING (Corinna Vinschen) [1781384] - [netdrv] igc: Remove 'queue' check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Improve address check in igc_del_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Refactor igc_rar_set_index() (Corinna Vinschen) [1781384] - [netdrv] igc: Fix igc_uc_unsync() (Corinna Vinschen) [1781384] - [netdrv] igc: Change igc_add_mac_filter() returning value (Corinna Vinschen) [1781384] - [netdrv] igc: Check unsupported flag in igc_add_mac_filter() (Corinna Vinschen) [1781384] - [netdrv] igc: Remove duplicate code in MAC filtering logic (Corinna Vinschen) [1781384] - [netdrv] igc: Add new device IDs for i225 part (Corinna Vinschen) [1781384] - [netdrv] igc: Fix default MAC address filter override (Corinna Vinschen) [1781384] - [netdrv] igc: Remove dead code related to flower filter (Corinna Vinschen) [1781384] - [netdrv] igc: Fix NFC queue redirection support (Corinna Vinschen) [1781384] - [netdrv] igc: Remove copper fiber switch control (Corinna Vinschen) [1781384] - [netdrv] igc: Enable NETIF_F_HW_TC flag (Corinna Vinschen) [1781384] - [netdrv] igc: Fix double definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix overwrites when dumping registers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove forward declaration (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused CTRL_EXT_LINK_MODE_MASK (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused MDIC_DEST mask (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ETF offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for taprio offloading (Corinna Vinschen) [1781384] - [netdrv] igc: Add GSO partial support (Corinna Vinschen) [1781384] - [netdrv] net: igc: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781384] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781384] - [netdrv] igc: Add comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add WOL support (Corinna Vinschen) [1781384] - [netdrv] igc: Add pcie error handler support (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the typo in comment (Corinna Vinschen) [1781384] - [netdrv] igc: Add dump options (Corinna Vinschen) [1781384] - [netdrv] igc: Complete to commit Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: make non-global functions static (Corinna Vinschen) [1781384] - [netdrv] igc: Add PHY power management control (Corinna Vinschen) [1781384] - [netdrv] RHEL-only: Revert "igc: add additional delay during phy hw reset" (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TSO (Corinna Vinschen) [1781384] - [netdrv] igc: Add SKU for i225 device (Corinna Vinschen) [1781384] - [netdrv] igc: Remove unused definition (Corinna Vinschen) [1781384] - [netdrv] igc: Fix typo in a comment (Corinna Vinschen) [1781384] - [netdrv] igc: Use Start of Packet signal from PHY for timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for ethtool GET_TS_INFO command (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for TX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add support for RX timestamping (Corinna Vinschen) [1781384] - [netdrv] igc: Add basic skeleton for PTP (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_sw_init (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_write_itr (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_assign_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vector (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_free_q_vectors (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_disable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_irq_enable (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure_msix (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_rx_mode (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_interrupt_capability (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_alloc_mapped_page (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_configure (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_set_default_mac_filter (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_power_down_link (Corinna Vinschen) [1781384] - [netdrv] igc: Remove no need declaration of the igc_clean_tx_ring (Corinna Vinschen) [1781384] - [netdrv] igc: Remove serdes comments from a description of methods (Corinna Vinschen) [1781384] - [netdrv] igc: Add legacy power management support (Corinna Vinschen) [1781384] - [netdrv] igc: Add 64 bit DMA access support (Corinna Vinschen) [1781384] - [netdrv] igc: Fix parameter descriptions for a several functions (Corinna Vinschen) [1781384] - [netdrv] igc: Fix the parameter description for igc_alloc_rx_buffers (Corinna Vinschen) [1781384] - [netdrv] igc: Remove excess parameter description from igc_is_non_eop (Corinna Vinschen) [1781384] - [netdrv] igc: Prefer to use the pci_release_mem_regions method (Corinna Vinschen) [1781384] - [netdrv] igc: Improve the DMA mapping flow (Corinna Vinschen) [1781384] - [netdrv] igc: Add scatter gather support (Corinna Vinschen) [1781384] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781384] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781384] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781384] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781384] - [netdrv] net: igb: let core reject the unsupported coalescing parameters (Corinna Vinschen) [1781381] - [netdrv] intel: Replace zero-length array with flexible-array member (Corinna Vinschen) [1781381] - [netdrv] igb: Fix SGMII SFP module discovery for 100FX/LX (Corinna Vinschen) [1781381] - [netdrv] igb: dont drop packets if rx flow control is enabled (Corinna Vinschen) [1781381] - [netdrv] treewide: Use sizeof_field() macro (Corinna Vinschen) [1781381] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Corinna Vinschen) [1781381] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781381] - [netdrv] igb: Fix constant media auto sense switching when no cable is connected (Corinna Vinschen) [1781381] - [netdrv] igb: Enable media autosense for the i350 (Corinna Vinschen) [1781381] - [netdrv] igb/igc: Don't warn on fatal read failures when the device is removed (Corinna Vinschen) [1781381] - [netdrv] igb: Add UDP segmentation offload support (Corinna Vinschen) [1781381] - [netdrv] net: igbvf: reject unsupported coalescing params (Corinna Vinschen) [1781382] - [netdrv] net: ethernet: intel: Demote MTU change prints to debug (Corinna Vinschen) [1781382] - [ata] ahci: Do not export local variable ahci_em_messages (Prarit Bhargava) [1826320] - [scripts] modpost: check for static EXPORT_SYMBOL* functions (Prarit Bhargava) [1826320] - [kernel] torture: Remove exporting of internal functions (Prarit Bhargava) [1826320] - [input] Input: synaptics-rmi4 - remove the exporting of rmi_2d_sensor_set_input_params (Prarit Bhargava) [1826320] - [netdrv] net: phy: make exported variables non-static (Prarit Bhargava) [1826320] - [scsi] scsi: libsas: remove the exporting of sas_wait_eh (Prarit Bhargava) [1826320] - [drm] drm/client: remove the exporting of drm_client_close (Prarit Bhargava) [1826320] - [scripts] modpost: always show verbose warning for section mismatch (Prarit Bhargava) [1826320] - [net] netfilter: nf_nat_ipv4: remove obsolete EXPORT_SYMBOL (Prarit Bhargava) [1826320] - [crypto] crypto: skcipher - remove the exporting of skcipher_walk_next (Prarit Bhargava) [1826320] - [scsi] scsi: scsi_debug: Fix a recently introduced regression (Ming Lei) [1822001] - [block] scsi: block: remove bidi support (Ming Lei) [1822001] - [scsi] scsi: block: remove req->special (Ming Lei) [1822001] - [scsi] scsi: stop setting up request->special (Ming Lei) [1822001] - [scsi] scsi: remove bidirectional command support (Ming Lei) [1822001] - [scsi] scsi: remove the SCSI OSD library (Ming Lei) [1822001] - [fs] scsi: fs: remove exofs (Ming Lei) [1822001] - [block] scsi: bsg-lib: handle bidi requests without block layer help (Ming Lei) [1822001] - [block] scsi: bsg: refactor bsg_ioctl (Ming Lei) [1822001] - [netdrv] sfc: fix XDP-redirect in this driver (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support configuring vf spoofchk on EF10 VFs (Jarod Wilson) [1796582 1788753 1684003] - [netdrv] sfc: ethtool: Refactor to remove fallthrough comments in case blocks (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Replace zero-length array with flexible-array member (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove unused variable 'efx_default_channel_type' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: elide assignment of skb (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ARFS code out of headers (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: only schedule asynchronous filter work if needed (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Use scnprintf() for avoiding potential buffer overflow (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: detach from cb_page in efx_copy_channel() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: complete the next packet when we receive a timestamp (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix timestamp reconstruction at 16-bit rollover points (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: create header for mcdi filtering code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: rename mcdi filtering functions/structs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from efx.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc/ethtool_common: Make some function to static (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove set but not used variable 'nic_data' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove duplicated include from ef10.c (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RPS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move yet more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move RSS code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move a couple more functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some ethtool code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move various functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: refactor selftest work init code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI logging device attribute (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: conditioned some functionality (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI receive queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI transmit queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move MCDI VI alloc/free code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move more MCDI port code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some MCDI port utility functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some port link state/caps code (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: use skb_list_walk_safe helper for gso segments (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common tx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move common rx code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move event queue management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel interrupt management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel alloc/removal code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move channel start/stop code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some channel-related code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move struct init and fini code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move some device reset code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move datapath management code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move mac configuration and status functions (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: move reset workqueue code (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: further preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add new headers in preparation for code split (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove ioremap_nocache and devm_ioremap_nocache (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Remove unnecessary dependencies on I2C (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: avoid duplicate error handling code in 'efx_ef10_sriov_set_vf_mac()' (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Include XDP packet headroom in buffer step size (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix channel allocation with brute force (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: fix build without CONFIG_RFS_ACCEL (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: do ARFS expiry work occasionally even without NAPI poll (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add statistics for ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: suppress MCDI errors from ARFS (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: change ARFS expiry mechanism (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Only cancel the PPS workqueue if it exists (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: trace_xdp_exception on XDP failure (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: add XDP counters to ethtool stats (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: handle XDP_TX outcomes of XDP eBPF programs (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: allocate channels for XDP tx queues (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: Enable setting of xdp_prog (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: perform XDP processing on received packets (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: support encapsulation of xdp_frames in efx_tx_buffer (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: use the new __netdev_tx_sent_queue BQL optimisation (Jarod Wilson) [1796582 1788753] - [netdrv] net/sfc: Use skb_frag_off accessors (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: phase out dma_zalloc_coherent() (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: remove redundant variable old_vlan (Jarod Wilson) [1796582 1788753] - [netdrv] net: sfc: Convert random_ether_addr to eth_random_addr (Jarod Wilson) [1796582 1788753] - [netdrv] sfc: batch up RX delivery (Jarod Wilson) [1796582 1788753] - [netdrv] net: mlx4: Use scnprintf() for avoiding potential buffer overflow (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix leak in id_map_find_del (Alaa Hleihel) [1789363] - [infiniband] IB/mlx4: Fix memory leak in add_gid error flow (Alaa Hleihel) [1789363] - [include] mlx4: Bump up MAX_MSIX from 64 to 128 (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: use true, false for bool variable (Alaa Hleihel) [1789363] - [infiniband] RDMA/mlx4: Redo TX checksum offload in line with docs (Alaa Hleihel) [1789363] - [netdrv] mlx4: use new txqueue timeout argument (Alaa Hleihel) [1789363] - [netdrv] treewide: Use sizeof_field() macro (Alaa Hleihel) [1789363 1789362] - [infiniband] IB/mlx4: Update HW GID table while adding vlan GID (Alaa Hleihel) [1789363 1789362] - [netdrv] net/mlx4_en: ethtool: make array modes static const, makes object smaller (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Annotate boolean arguments as bool and not int (Alaa Hleihel) [1789363 1789361] - [netdrv] mlx4: avoid large stack usage in mlx4_init_hca() (Alaa Hleihel) [1789363 1789361] - [infiniband] RDMA/mlx4: Untag user pointers in mlx4_get_umem_mr (Alaa Hleihel) [1789363 1789361] - [netdrv] net: Use skb accessors in network drivers (Alaa Hleihel) [1789363 1789361]- [net] ip_vti: receive ipip packet by calling ip_tunnel_rcv (Xin Long) [1815554] - [net] xfrm: call xfrm_output_gso when inner_protocol is set in xfrm_output (Xin Long) [1815968] - [net] sched: Fix hw_stats_type setting in pedit loop (Ivan Vecera) [1817156] - [net] sched: set the hw_stats_type in pedit loop (Ivan Vecera) [1817156] - [include] flow_offload: fix allowed types check (Ivan Vecera) [1817156] - [net] sched: act: allow user to specify type of HW stats for a filter (Ivan Vecera) [1817156] - [net] flow_offload: pass action cookie through offload structures (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "disabled" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [include] flow_offload: introduce "delayed" HW stats type and allow it in mlx5 (Ivan Vecera) [1817156] - [netdrv] flow_offload: introduce "immediate" HW stats type and allow it in mlxsw (Ivan Vecera) [1817156] - [netdrv] mlxsw: restrict supported HW stats type to "any" (Ivan Vecera) [1817156] - [netdrv] mlxsw: spectrum_flower: Do not allow mixing HW stats types for actions (Ivan Vecera) [1817156] - [netdrv] flow_offload: check for basic action hw stats type (Ivan Vecera) [1817156] - [include] flow_offload: Introduce offload of HW stats type (Ivan Vecera) [1817156] - [net] netfilter: nf_tables: use-after-free in dynamic operations (Phil Sutter) [1822577] - [net] devlink: Add health recover notifications on devlink flows (Petr Oros) [1821169] - [net] devlink: add devink notification when reporter update health state (Petr Oros) [1821169] - [net] devlink: add support for reporter recovery completion (Petr Oros) [1821169] - [net] devlink: Add new "enable_roce" generic device param (Petr Oros) [1805955] - [netdrv] netdevsim: use __GFP_NOWARN to avoid memalloc warning (Petr Oros) [1817157] - [tools] selftests: add netdevsim devlink health tests (Petr Oros) [1817157] - [netdrv] netdevsim: implement couple of testing devlink health reporters (Petr Oros) [1817157] - [net] devlink: propagate extack down to health reporter ops (Petr Oros) [1817157] - [net] devlink: don't do reporter recovery if the state is healthy (Petr Oros) [1817157] - [net] xsk: Fix out of boundary write in __xsk_rcv_memcpy (Jiri Benc) [1819630] - [samples] bpf: Allow for -ENETDOWN in xdpsock (Jiri Benc) [1819630] - [samples] bpf: Drop doubled variable declaration in xdpsock (Jiri Benc) [1819630] - [netdrv] i40e: Relax i40e_xsk_wakeup's return value when PF is busy (Jiri Benc) [1819630] - [netdrv] net/ixgbe: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [netdrv] net/i40e: Fix concurrency issues between config flow and XSK (Jiri Benc) [1819630] - [net] xsk: Add rcu_read_lock around the XSK wakeup (Jiri Benc) [1819630] - [net] fix installing orphaned programs (Jiri Benc) [1819630] - [tools] libbpf: Don't use kernel-side u32 type in xsk.c (Jiri Benc) [1819630] - [tools] libbpf: Fix compatibility for kernels without need_wakeup (Jiri Benc) [1819630] - [net] xsk: Fix crash in poll when device does not support ndo_xsk_wakeup (Jiri Benc) [1819630] - [kernel] bpf/xskmap: Return ERR_PTR for failure case instead of NULL. (Jiri Benc) [1819630] - [net] xdp: convert put_page() to put_user_page*() (Jiri Benc) [1819630] - [net] xdp: mm: introduce page_size() (Jiri Benc) [1819630] - [net] xsk: relax UMEM headroom alignment (Jiri Benc) [1819630] - [samples] bpf: fix xdpsock l2fwd tx for unaligned mode (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] ixgbe: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [netdrv] i40e: fix xdp handle calculations (Jiri Benc) [1819630] - [net] xsk: use state member for socket synchronization (Jiri Benc) [1819630] - [documentation] doc/af_xdp: include unaligned chunk case (Jiri Benc) [1819630] - [samples] bpf: use hugepages in xdpsock app (Jiri Benc) [1819630] - [samples] bpf: add buffer recycling for unaligned chunks to xdpsock (Jiri Benc) [1819630] - [samples] bpf: add unaligned chunks mode support to xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add flags to umem config (Jiri Benc) [1819630] - [netdrv] mlx5e: Allow XSK frames smaller than a page (Jiri Benc) [1819630] - [netdrv] mlx5e: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] ixgbe: modify driver for handling offsets (Jiri Benc) [1819630] - [netdrv] i40e: modify driver for handling offsets (Jiri Benc) [1819630] - [net] xsk: add support to allow unaligned chunk placement (Jiri Benc) [1819630] - [net] xdp: xdp_umem: replace kmap on vmap for umem map (Jiri Benc) [1819630] - [net] Don't call XDP_SETUP_PROG when nothing is changed (Jiri Benc) [1819630] - [kernel] bpf: Use PTR_ERR_OR_ZERO in xsk_map_inc() (Jiri Benc) [1819630] - [kernel] xsk: support BPF_EXIST and BPF_NOEXIST flags in XSKMAP (Jiri Benc) [1819630] - [net] xsk: remove AF_XDP socket from map when the socket is released (Jiri Benc) [1819630] - [netdrv] mlx5e: Add AF_XDP need_wakeup support (Jiri Benc) [1819630] - [netdrv] net/mlx5e: Move the SW XSK code from NAPI poll to a separate function (Jiri Benc) [1819630] - [samples] bpf: add use of need_wakeup flag in xdpsock (Jiri Benc) [1819630] - [tools] libbpf: add support for need_wakeup flag in AF_XDP part (Jiri Benc) [1819630] - [netdrv] ixgbe: need_wakeup flag might not be set for Tx (Jiri Benc) [1819630] - [netdrv] ixgbe: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [netdrv] i40e: add support for AF_XDP need_wakeup feature (Jiri Benc) [1819630] - [net] xsk: add support for need_wakeup flag in AF_XDP rings (Jiri Benc) [1819630] - [net] xsk: replace ndo_xsk_async_xmit with ndo_xsk_wakeup (Jiri Benc) [1819630] - [net] xdp: xdp_umem: fix umem pages mapping for 32bits systems (Jiri Benc) [1819630] - [net] ethtool: add infrastructure for centralized checking of coalescing parameters (Ivan Vecera) [1818096] - [tools] selftests: netfilter: add simple masq/redirect test cases (Hangbin Liu) [1826220] - [tools] selftests: netfilter: fix config fragment CONFIG_NF_TABLES_INET (Hangbin Liu) [1826220] - [tools] selftests: add script to stress-test nft packet path vs. control plane (Hangbin Liu) [1826220] - [net] devlink: disallow reload operation during device cleanup (Petr Oros) [1805958] - [tools] selftests: test creating netdevsim inside network namespace (Petr Oros) [1805958] - [net] devlink: export devlink net setter (Petr Oros) [1805958] - [net] devlink: don't ignore errors during dumpit (Petr Oros) [1805958] - [netdrv] netdevsim: fix spelling mistake "forbidded" -> "forbid" (Petr Oros) [1805958] - [netdrv] netdevsim: implement devlink dev_info op (Petr Oros) [1805958] - [netdrv] netdevsim: add couple of debugfs bools to debug devlink reload (Petr Oros) [1805958] - [netdrv] netdevsim: create devlink and netdev instances in namespace (Petr Oros) [1805958] - [include] net: skbuff: disambiguate argument and member for skb_list_walk_safe helper (Josef Oskera) [1818105] - [include] net: introduce skb_list_walk_safe for skb segment walking (Josef Oskera) [1818105] - [netdrv] netdevsim: drop code duplicated by a merge (Petr Oros) [1805951] - [tools] selftests: devlink: undo changes at the end of resource_test (Petr Oros) [1805951] - [tools] selftests: netdevsim: add tests for devlink reload with resources (Petr Oros) [1805951] - [net] devlink: allow to change namespaces during reload (Petr Oros) [1805951] - [net] devlink: Add method for time-stamp on reporter's dump (Petr Oros) [1805951] - [netdrv] netdevsim: take devlink net instead of init_net (Petr Oros) [1805951] - [netdrv] netdevsim: register port netdevices into net of device (Petr Oros) [1805951] - [netdrv] netdevsim: implement proper devlink reload (Petr Oros) [1805951] - [netdrv] netdevsim: add all ports in nsim_dev_create() and del them in destroy() (Petr Oros) [1805951] - [net] devlink: export devlink net getter (Petr Oros) [1805951] - [net] fib_notifier: propagate extack down to the notifier block callback (Petr Oros) [1805951] - [net] fib_notifier: propagate possible error during fib notifier registration (Petr Oros) [1805951] - [net] fib_notifier: make FIB notifier per-netns (Petr Oros) [1805951] - [netdrv] netdevsim: change fib accounting and limitations to be per-device (Petr Oros) [1805951] - [netdrv] netdevsim: Set offsets to various protocol layers (Petr Oros) [1805951] - [net] devlink: Fix error handling in param and info_get dumpit cb (Petr Oros) [1805951] - [net] lwtunnel: check erspan options before allocating tun_info (Xin Long) [1730151] - [net] lwtunnel: be STRICT to validate the new LWTUNNEL_IP(6)_OPTS (Xin Long) [1730151] - [net] lwtunnel: add support for multiple geneve opts (Xin Long) [1730151] - [net] lwtunnel: change to use nla_put_u8 for LWTUNNEL_IP_OPT_ERSPAN_VER (Xin Long) [1730151] - [net] lwtunnel: ignore any TUNNEL_OPTIONS_PRESENT flags set by users (Xin Long) [1730151] - [net] lwtunnel: get nlsize for erspan options properly (Xin Long) [1730151] - [net] lwtunnel: change to use nla_parse_nested on new options (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for erspan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for vxlan (Xin Long) [1730151] - [net] lwtunnel: add options setting and dumping for geneve (Xin Long) [1730151] - [net] lwtunnel: add options process for cmp_encap (Xin Long) [1730151] - [net] lwtunnel: add options process for arp request (Xin Long) [1730151] - [net] ip_tunnel: Add dst_cache support in lwtunnel_state of ip tunnel (Xin Long) [1730151] - [include] tcp: Define IPPROTO_MPTCP (Florian Westphal) [1812198] - [net] skb: add helpers to allocate ext independently from sk_buff (Florian Westphal) [1812198] - [net] tcp: Check for filled TCP option space before SACK (Florian Westphal) [1812198] - [net] tcp: Export TCP functions and ops struct (Florian Westphal) [1812198] - [net] tcp: coalesce/collapse must respect MPTCP extensions (Florian Westphal) [1812198] - [net] mptcp: Add MPTCP to skb extensions (Florian Westphal) [1812198] - [net] tcp, ulp: Add clone operation to tcp_ulp_ops (Florian Westphal) [1812198] - [include] tcp: Add MPTCP option number (Florian Westphal) [1812198] - [net] Make sock protocol value checks more specific (Florian Westphal) [1812198] - [net] ipv6: provide and use ipv6 specific version for {recv, send}msg (Florian Westphal) [1812198] - [net] inet: factor out inet_send_prepare() (Florian Westphal) [1812198] - [net] tipc: fix incorrect increasing of link window (Xin Long) [1822129] - [net] tipc: Add a missing case of TIPC_DIRECT_MSG type (Xin Long) [1822129] - [net] tipc: add NULL pointer check to prevent kernel oops (Xin Long) [1822129] - [net] tipc: simplify trivial boolean return (Xin Long) [1822129] - [net] tipc: add missing attribute validation for MTU property (Xin Long) [1822129] - [net] tipc: fix successful connect() but timed out (Xin Long) [1822129] - [net] tipc: make three functions static (Xin Long) [1822129] - [net] tipc: fix wrong connect() return code (Xin Long) [1822129] - [net] tipc: make legacy address flag readable over netlink (Xin Long) [1822129] - [net] tipc: don't send gap blocks in ACK messages (Xin Long) [1822129] - [net] tipc: fix use-after-free in tipc_disc_rcv() (Xin Long) [1822129] - [net] tipc: introduce variable window congestion control (Xin Long) [1822129] - [net] tipc: eliminate more unnecessary nacks and retransmissions (Xin Long) [1822129] - [net] tipc: eliminate gap indicator from ACK messages (Xin Long) [1822129] - [net] tipc: fix duplicate SYN messages under link congestion (Xin Long) [1822129] - [net] tipc: support in-order name publication events (Xin Long) [1822129] - [net] tipc: add back tipc prefix to log messages (Xin Long) [1822129] - [net] tipc: fix update of the uninitialized variable err (Xin Long) [1822129] - [net] tipc: add support for AEAD key setting via netlink (Xin Long) [1822129] - [net] tipc: introduce TIPC encryption & authentication (Xin Long) [1822129] - [include] tipc: add new AEAD key structure for user API (Xin Long) [1822129] - [net] tipc: enable creating a "preliminary" node (Xin Long) [1822129] - [net] tipc: add reference counter to bearer (Xin Long) [1822129] - [net] tipc: eliminate checking netns if node established (Xin Long) [1822129] - [net] tipc: eliminate the dummy packet in link synching (Xin Long) [1822129] - [net] tipc: improve message bundling algorithm (Xin Long) [1822129] - [net] tipc: add smart nagle feature (Xin Long) [1822129] - [net] tipc: improve throughput between nodes in netns (Xin Long) [1822129] - [net] tipc: add loopback device tracking (Xin Long) [1822129] - [netdrv] vxlan: check return value of gro_cells_init() (Sabrina Dubroca) [1821295] - [netdrv] geneve: move debug check after netdev unregister (Sabrina Dubroca) [1821295] - [net] ip6_tunnel: enhance tunnel locate with link check (Sabrina Dubroca) [1821295] - [netdrv] vxlan: implement get_link_ksettings ethtool method (Sabrina Dubroca) [1821295] - [netdrv] vxlan: check tun_info options_len properly (Sabrina Dubroca) [1821295] - [include] iptunnel: make TUNNEL_FLAGS available in uapi (Sabrina Dubroca) [1821295] - [net] introduce dev_net notifier register/unregister variants (Ivan Vecera) [1818102] - [net] push code from net notifier reg/unreg into helpers (Ivan Vecera) [1818102] - [net] call call_netdevice_unregister_net_notifiers from unregister (Ivan Vecera) [1818102] - [net] introduce per-netns netdevice notifiers (Ivan Vecera) [1818102] - [net] push loops and nb calls into helper functions (Ivan Vecera) [1818102] - [include] net: ipv6: do not consider routes via gateways for anycast address check (Hangbin Liu) [1816506] - [net] ipv6/addrconf: call ipv6_mc_up() for non-Ethernet interface (Hangbin Liu) [1816506] - [net] ipv6: need update peer route when modify metric (Hangbin Liu) [1816506] - [net] ipv6: use configured metric when add peer route (Hangbin Liu) [1816506] - [net] ipv6: restrict IPV6_ADDRFORM operation (Hangbin Liu) [1816506] - [net] ipv6: Fix nlmsg_flags when splitting a multipath route (Hangbin Liu) [1816506] - [net] ipv6: Fix route replacement with dev-only route (Hangbin Liu) [1816506] - [net] ipv6/addrconf: fix potential NULL deref in inet6_set_link_af() (Hangbin Liu) [1816506] - [net] net-ipv6-ndisc: add support for RFC7710 RA Captive Portal Identifier (Hangbin Liu) [1816506] - [net] ipv6: Don't use dst gateway directly in ip6_confirm_neigh() (Hangbin Liu) [1816506] - [net] ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()' (Hangbin Liu) [1816506] - [net] ipv6: propagate ipv6_add_dev's error returns out of ipv6_find_idev (Hangbin Liu) [1816506] - [net] ipv6: allow any source address for sendmsg pktinfo with ip_nonlocal_bind (Hangbin Liu) [1816506] - [net] multicast: remove useless parameter for group add (Hangbin Liu) [1816506] - [documentation] networking: devlink-trap: Fix reference to other document (Petr Oros) [1805882] - [netdrv] netdevsim: Fix use-after-free during device dismantle (Petr Oros) [1805882] - [netdrv] netdevsim: Fix build error without CONFIG_INET (Petr Oros) [1805882] - [net] devlink: move reload fail indication to devlink core and expose to user (Petr Oros) [1805882] - [net] devlink: split reload op into two (Petr Oros) [1805882] - [netdrv] mlx4: Split restart_one into two functions (Petr Oros) [1805882] - [include] devlink: add unknown 'fw_load_policy' value (Petr Oros) [1805882] - [net] devlink: add 'reset_dev_on_drv_probe' param (Petr Oros) [1805882] - [include] devlink: extend 'fw_load_policy' values (Petr Oros) [1805882] - [include] devlink: Add new info version tags for ASIC and FW (Petr Oros) [1805882] - [net] devlink: Use switch-case instead of if-else (Petr Oros) [1805882] - [net] devlink: Make port index data type as unsigned int (Petr Oros) [1805882] - [net] devlink: send notifications for deleted snapshots on region destroy (Petr Oros) [1805882] - [net] devlink: remove pointless data_len arg from region snapshot create (Petr Oros) [1805882] - [documentation] Add description of netdevsim traps (Petr Oros) [1805882] - [netdrv] netdevsim: Add devlink-trap support (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink regions tests (Petr Oros) [1805882] - [tools] selftests: netdevsim: add devlink params tests (Petr Oros) [1805882] - [netdrv] netdevsim: implement support for devlink region and snapshots (Petr Oros) [1805882] - [netdrv] netdevsim: register couple of devlink params (Petr Oros) [1805882]- [arm64] kvm: arm64: limit PMU version to PMUv3 for ARMv8.1 (Gavin Shan) [1814009] - [arm64] cpufeature: Extract capped perfmon fields (Gavin Shan) [1814009] - [virt] kvm: arm64: Use the correct timer structure to access the physical counter (Gavin Shan) [1814009] - [arm64] Ask the compiler to __always_inline functions used by KVM at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm64: Define our own swab32() to avoid a uapi static inline (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ask the compiler to __always_inline functions used at HYP (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Fold VHE entry/exit work into kvm_vcpu_run_vhe() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix up includes for trace.h (Gavin Shan) [1814009] - [virt] kvm: arm64: Treat emulated TVAL TimerValue as a signed 32-bit integer (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Only handle supported event counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Fix chained SW_INCR counters (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't mark a counter as chained if the odd one is disabled (Gavin Shan) [1814009] - [virt] kvm: arm64: pmu: Don't increment SW_INCR if PMCR.E is unset (Gavin Shan) [1814009] - [virt] kvm: arm: Make inject_abt32() inject an external abort instead (Gavin Shan) [1814009] - [virt] kvm: arm: Fix DFSR setting for non-LPAE aarch32 guests (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Fix young bit from mmu notifier (Gavin Shan) [1814009] - [arm64] kvm: Add UAPI notes for swapped registers (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Cleanup MMIO handling (Gavin Shan) [1814009] - [arm64] kvm: arm64: Write arch.mdcr_el2 changes since last vcpu_load on VHE (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Drop the kvm_vgic_register_mmio_region() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Properly check the unmapped coll in DISCARD handler (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Correct AArch32 SPSR on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Correct CPSR on exception entry (Gavin Shan) [1814009] - [arm64] kvm: arm64: Correct PSTATE on exception entry (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Re-check VMA on detecting a poisoned page (Gavin Shan) [1814009] - [virt] kvm: arm: Remove duplicate include (Gavin Shan) [1814009] - [virt] kvm: arm: Call hyp_cpu_pm_exit at the right place (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Handle GICR_PENDBASER.PTZ filed as RAZ (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic-its: Fix restoration of unmapped collections (Gavin Shan) [1814009] - [virt] kvm: arm64: Only sign-extend MMIO up to register width (Gavin Shan) [1814009] - [arm64] kvm: stop treating register x18 as caller save (Gavin Shan) [1814009] - [arm64] Workaround for Cortex-A55 erratum 1530923 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1319367 to SPECULATIVE_AT_NVHE (Gavin Shan) [1814009] - [arm64] Enable and document ARM errata 1319367 and 1319537 (Gavin Shan) [1814009] - [arm64] Rename WORKAROUND_1165522 to SPECULATIVE_AT_VHE (Gavin Shan) [1814009] - [arm64] Introduce ID_ISAR6 CPU register (Gavin Shan) [1814009] - [arm64] nofpsmid: Handle TIF_FOREIGN_FPSTATE flag cleanly (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Properly handle faulting of device mappings (Gavin Shan) [1814009] - [arm64] kvm: arm64: Ensure 'params' is initialised when looking up sys register (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Remove excessive permission check in kvm_arch_prepare_memory_region (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't log IMP DEF sysreg traps (Gavin Shan) [1814009] - [arm64] kvm: Invoke compute_layout() before alternatives are applied (Gavin Shan) [1814009] - [arm64] kvm: arm64: Sanely ratelimit sysreg messages (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Use wrapper function to lock/unlock all vcpus in kvm_vgic_create() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix potential double free dist->spis in __kvm_vgic_destroy() (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Get rid of unused arg in cpu_init_hyp_mode() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Opportunistically turn off WFI trapping when using direct LPI injection (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Let the timer expire in hardirq context on RT (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: vgic: Fix some comments typo (Gavin Shan) [1814009] - [kvm] arm/arm64: vgic: Remove the declaration of kvm_send_userspace_msi() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Don't set HCR_EL2.TVM when S2FWB is supported (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Show halt poll counters in debugfs (Gavin Shan) [1814009] - [arm64] kvm: Prevent speculative S1 PTW when restoring vcpu context (Gavin Shan) [1814009] - [arm64] kvm: Disable EL1 PTW when invalidating S2 TLBs (Gavin Shan) [1814009] - [arm64] Add ARM64_WORKAROUND_1319367 for all A57 and A72 versions (Gavin Shan) [1814009] - [arm64] kvm: Reorder system register restoration and stage-2 activation (Gavin Shan) [1814009] - [arm64] kvm: arm64: Select TASK_DELAY_ACCT+TASKSTATS rather than SCHEDSTATS (Gavin Shan) [1814009] - [arm64] Retrieve stolen time as paravirtualized guest (Gavin Shan) [1814009] - [arm64] arm/arm64: Make use of the SMCCC 1.1 wrapper (Gavin Shan) [1814009] - [kernel] arm/arm64: Provide a wrapper for SMCCC 1.1 calls (Gavin Shan) [1814009] - [virt] kvm: arm64: Provide VCPU attributes for stolen time (Gavin Shan) [1814009] - [virt] kvm: arm64: Support stolen time reporting via shared structure (Gavin Shan) [1814009] - [virt] kvm: arm64: Implement PV_TIME_FEATURES call (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Factor out hypercall handling from PSCI code (Gavin Shan) [1814009] - [documentation] kvm: arm64: Document PV-time interface (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Allow user injection of external data aborts (Gavin Shan) [1814009] - [virt] kvm: arm/arm64: Allow reporting non-ISV data aborts to userspace (Gavin Shan) [1814009] - [arm64] errata: use arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [kernel] arm/arm64: smccc/psci: add arm_smccc_1_1_get_conduit() (Gavin Shan) [1814009] - [arm64] kvm: arm64: Fix ptrauth ID register masking logic (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add capability to advertise ptrauth for guest (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add userspace flag to enable pointer authentication (Gavin Shan) [1814009] - [arm64] kvm: arm/arm64: Context-switch ptrauth registers (Gavin Shan) [1814009] - [arm64] kvm: arm64: Add a vcpu flag to control ptrauth for guest (Gavin Shan) [1814009] - [tools] selftests: kvm: s390: fix format strings for access reg test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: make syncregs more reliable on s390 (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: drop vcpu_setup from s390x (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add support for vcpu_args_set to aarch64 and s390x (Vitaly Kuznetsov) [1813987] - [iommu] amd: Fix IOMMU AVIC not properly update the is_run bit in IRTE (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Fix kernel crash with PR KVM (Vitaly Kuznetsov) [1813987] - [x86] cpu: Print "VMX disabled" error message iff KVM is enabled (Vitaly Kuznetsov) [1813987] - [tools] redhat: update kvm/x86 headers in tools (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: fix crash cleanup when KVM wasn't used (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Filter out the broadcast dest for IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: don't clear mtf_pending when nested events are blocked (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove unnecessary exception trampoline in vmx_vmenter (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Split svm_vcpu_run inline assembly to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move SEV code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move AVIC code to separate file (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Move Nested SVM Implementation to nested.c (Vitaly Kuznetsov) [1813987] - [x86] kvm svm: Move SVM related files to own sub-directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix a missing-prototypes "vmread_error" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix BUILD_BUG() in __cpuid_entry_get_reg() w/ CONFIG_UBSAN=y (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add a trampoline to fix VMREAD error handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Annotate svm_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Annotate vmx_x86_ops as __initdata (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop __exit from kvm_x86_ops' hardware_unsetup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Copy kvm_x86_ops by value to eliminate layer of indirection (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set kvm_x86_ops only after ->hardware_setup() completes (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Configure runtime hooks using vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Move hardware_setup() definition below vmx_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move init-only kvm_x86_ops to separate struct (Vitaly Kuznetsov) [1813987] - [virt] kvm: Pass kvm_init()'s opaque param to additional arch funcs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix cosmetic copy-paste error in vm_mem_region_move() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix out of range accesses to memslots (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Micro-optimize IPI fastpath delay (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Delay read msr data iff writes ICR MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Narrow down the IPI fastpath to single target IPI (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Gracefully handle faults on VMXON (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fold loaded_vmcs_init() into alloc_loaded_vmcs() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Always VMCLEAR in-use VMCSes during crash with kexec support (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-c' to log in csv format (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: add command line switch '-s' to set update interval (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: switch to argparse (Vitaly Kuznetsov) [1813987] - [tools] kvm_stat: rework command line sequence and message texts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: don't allow memory operands for inline asm that modifies SP (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Mark hrtimer for period or oneshot mode to expire in hard interrupt context (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Issue WBINVD after deactivating an SEV guest (Vitaly Kuznetsov) [1813987] - [documentation] kvm: svm: document KVM_MEM_ENCRYPT_OP, let userspace detect if SEV is available (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove bogus user-triggerable WARN_ON (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework timespec functions and usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Code style cleanup in kvm_arch_dev_ioctl() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add blurb to CPUID tracepoint when using max basic leaf values (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add requested index to the CPUID tracepoint (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: check for EFER.SVME=1 before entering guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: remove side effects from nested_vmx_exit_reflected (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: access regs array in vmenter.S in its natural order (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: enlightened VMPTRLD with an incorrect GPA (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: test enlightened vmenter with wrong eVMCS version (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: define and use EVMCS_VERSION (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: properly handle errors in nested_vmx_handle_enlightened_vmptrld() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: stop abusing need_vmcs12_to_shadow_sync for eVMCS mapping (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Uses TEST_FAIL in tests/utilities (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Introduce the TEST_FAIL macro (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce steal-time test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: virt_map should take npages, not size (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Use consistent message for test skipping (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Enable printf format warnings for TEST_ASSERT (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Share common API documentation (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test to gitignore (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Remove an obsolete comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: correct meaningless kvm_apicv_activated() check (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Consolidate nested MTF checks to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Micro-optimize vmexit time when not exposing PMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Introduce GA Log tracepoint for AVIC (Vitaly Kuznetsov) [1813987] - [documentation] kvm: documentation: Update fast page fault for indirect sp (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: avoid loss of pending IRQ/NMI before entering L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: implement check_nested_events for interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: ignore L1 interrupt window while running L2 with V_INTR_MASKING=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: do not change host intercepts while nested VM is running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: rename set_cr3 callback and related flags to load_mmu_pgd (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: unify callbacks to load paging root (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor kvm_cpuid() param that controls out-of-range logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor out-of-range logic to contain the madness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix CPUID range checks for Hypervisor and Centaur classes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to perform CPUID-based guest vendor check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Trace the original requested CPUID function in kvm_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: cpuid: add support for supervisor states (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move nSVM CPUID 0x8000000A handling into common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Advertise and enable NRIPS for L1 iff nrips is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nsvm: Expose SVM features to L1 iff nested is enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move VMX's host_efer to common x86 code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop largepages_enabled and its accessor/mutator (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't propagate MMU lpage support to memslot.disallow_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Configure max page level during hardware setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Merge kvm_{enable, disable}_tdp() into a common function (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Refactor logging of NPT enabled/disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly query Intel PT mode when refreshing PMUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for Intel PT MSR virtualization using KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Directly use VMX capabilities helper to detect RDTSCP support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to detect MSR_TSC_AUX virt support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do kvm_cpuid_array capacity checks in terminal functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use kvm_cpu_caps to detect Intel PT support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Set emulated/transmuted feature bits via kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Override host CPUID results with kvm_cpu_caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Do host CPUID at load time to mask KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove stateful CPUID handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Squash CPUID 0x2.0 insanity for modern CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove the unnecessary loop on CPUID 0x7 sub-leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold CPUID 0x7 masking back into __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to track UMIP emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use KVM cpu caps to mark CR4.LA57 as not-reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a helper to check kernel support when setting cpu cap (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move XSAVES CPUID adjust to VMX's KVM cpu cap update (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Convert feature updates from CPUID to KVM cpu caps (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce kvm_cpu_caps to replace runtime CPUID masking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor handling of XSAVES CPUID adjustment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: handle GBPAGE CPUID adjustment for EPT with generic code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle Intel PT CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle RDTSCP CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle PKU CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle UMIP emulation CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle INVPCID CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle MPX CPUID adjustment in VMX code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor cpuid_mask() to auto-retrieve the register (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{change, set, clear}() mutators (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce cpuid_entry_{get, has}() accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Replace bare "unsigned" with "unsigned int" in cpuid helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use u32 for holding CPUID register value in helpers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop explicit @func param from ->set_supported_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clear output regs for CPUID 0x14 if PT isn't exposed to guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Make kvm_mpx_supported() an inline function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use supported_xcr0 to detect MPX support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Calculate the supported xcr0 mask at load time (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helpers to query Intel PT mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use common loop iterator when handling CPUID 0xD.N (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant array size check (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Encapsulate CPUID entries and metadata in struct (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0x4 and 0x8000001d handling (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Hoist loop counter and terminator to top of __do_cpuid_func() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate CPUID array max num entries checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop redundant boot cpu checks on SSBD feature bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop the explicit @index from do_cpuid_7_mask() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up CPUID 0x7 sub-leaf loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor CPUID 0xD.N sub-leaf entry creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Warn on zero-size save state for valid CPUID 0xD.N sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check for CPUID 0xD.N support before validating array size (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move CPUID 0xD.1 handling out of the index>0 loop (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Check userspace CPUID array size after validating sub-leaf (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Clean up error handling in kvm_dev_ioctl_get_cpuid() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Simplify handling of Centaur CPUID leafs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor loop around do_cpuid_func() to separate helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Return -E2BIG when KVM_GET_SUPPORTED_CPUID hits max entries (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Shrink the usercopy region of the emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_emulate.h into KVM's private directory (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Dynamically allocate per-vCPU emulation context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move emulation-only helpers to emulate.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Explicitly pass an exception struct to check_intercept (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor I/O emulation helpers to provide vcpu-only variant (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop gfn_to_pfn_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix warning due to implicit truncation on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Drop unnecessary check on ept caps for execute-only (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename kvm_mmu->get_cr3() to ->get_guest_pgd() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename EPTP validity helper and associated variables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Rename nested_ept_get_cr3() to nested_ept_get_eptp() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Allow L1 to use 5-level page walks for nested EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Don't drop level/direct from MMU role calculation (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support dirty log initial-all-set test (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Properly handle userspace interrupt window request (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: trigger kvmclock sync request just once on VM creation (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Recalculate apic map in batch (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some obsolete comments (Vitaly Kuznetsov) [1813987] - [virt] kvm: x86: enable dirty log gradually in small chunks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reuse the current root if possible for fast switch (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Ignore guest CR3 on fast root switch for direct MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Inhibit APIC virtualization for X2APIC guest (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove unnecessary asm/kvm_host.h includes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Fix unknown ucall command asserts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Consolidate VM allocation and free for VMX and SVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Directly return __vmalloc() result in ->vm_alloc() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Gracefully handle __vmalloc() failure during VM allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Adjust counter sample period after a wrmsr (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate open coded variants of memslot TLB flushes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use range-based TLB flush for dirty log memslot flush (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move kvm_arch_flush_remote_tlbs_memslot() to mmu.c (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add test for KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1813987] - [virt] kvm: Dynamically size memslot array based on number of used slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Terminate memslot walks via used_slots (Vitaly Kuznetsov) [1813987] - [virt] kvm: Ensure validity of memslot with respect to kvm_get_dirty_log() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Provide common implementation for generic dirty log functions (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up local variable usage in __kvm_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Simplify kvm_free_memslot() and all its descendents (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move memslot deletion to helper function (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free arrays for old memslot when moving memslot's base gfn (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop "const" attribute from old memslot in commit_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move setting of memslot into helper routine (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor error handling for setting memory region (Vitaly Kuznetsov) [1813987] - [virt] kvm: Explicitly free allocated-but-unused dirty bitmap (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_create_memslot() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move memslot memory allocation into prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate memslot resources during prepare_memory_region() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't free new memslot if allocation of said memslot fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Reinstall old memslots if arch preparation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate new rmap and large page tracking when moving memslot (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move gpa_val and gpa_available into the emulator context (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add EMULTYPE_PF when emulation is triggered by a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: remove unused function apic_lvt_vector() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add 'else' to split mutually exclusive case (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: eliminate some unreachable code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix print format and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: rewrite the comment in vmx_get_mt_mask (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Convert some printf's to pr_info's (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rework debug message printing (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Time guest demand paging (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Support multiple vCPUs in demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Pass args to vCPU in global vCPU args struct (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add memory size parameter to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add configurable demand paging delay (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Add demand paging content to the demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Create a demand paging test (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce num-pages conversion utilities (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Introduce vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Rename vm_guest_mode_params (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: aarch64: Remove unnecessary ifdefs (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: Remove unnecessary defines (Vitaly Kuznetsov) [1813987] - [tools] redhat: selftests: kvm: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] redhat: kvm: x86: add SPDX-License-Identifier (Vitaly Kuznetsov) [1813987] - [x86] x86 kvm page table walks: switch to explicit __get_user() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: avoid NULL pointer dereference with incorrect EVMCS GPAs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Initializing all kvm_lapic_irq fields in ioapic_write_indirect (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Condition ENCLS-exiting enabling on CPU support for SGX1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix Kconfig menu text for -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove stale comment from struct x86_emulate_ctxt (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix the svm vmexit code for WRMSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix dereference null cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: limit the number of "kvm: disabled by bios" messages (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid useless copy of cpufreq policy (Vitaly Kuznetsov) [1813987] - [x86] kvm: allow disabling -Werror (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: allow compiling as non-module with W=1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: Pre-allocate 1 cpumask variable per cpu for both pv tlb and pv ipis (Vitaly Kuznetsov) [1813987] - [x86] kvm: Introduce pv check helpers (Vitaly Kuznetsov) [1813987] - [kernel] kvm: let declaration of kvm_get_running_vcpus match implementation (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allocate AVIC data structures based on kvm_amd module parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Emulate MTF when performing instruction emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: fix error handling in svm_hardware_setup (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential memory leak in svm_cpu_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: avoid calculating pending eoi from an uninitialized val (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: clear PIN_BASED_POSTED_INTR from nested pinbased_ctls only when apicv is globally disabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: handle nested posted interrupts when apicv is disabled for L1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Fix NULL pointer dereference when AVIC not enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Hold KVM's srcu lock when syncing vmcs12->shadow (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: don't notify userspace IOAPIC on edge-triggered interrupt EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm/emulate: fix a -Werror=cast-function-type (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix incorrect comparison in trace event (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some obsolete comments and grammar error (Vitaly Kuznetsov) [1813987] - [kernel] kvm: x86: fix missing prototypes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: enable -Werror (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: guest-halt-polling.txt convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: review-checklist.txt: rename to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert timekeeping.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert s390-diag.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert ppc-pv.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert nested-vmx.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert mmu.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert locking.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert hypercalls.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: arm/psci.txt: convert to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert arm/hyp-abi.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: Convert api.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xive.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/xics.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vm.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vfio.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/vcpu.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/s390_flic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/mpic.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: convert devices/arm-vgit.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgit-v3.txt to ReST (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: devices/arm-vgic-its.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: Convert msr.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: virt: convert halt-polling.txt to ReST format (Vitaly Kuznetsov) [1813987] - [documentation] docs: kvm: add arm/pvtime.rst to index.rst (Vitaly Kuznetsov) [1813987] - [documentation] docs: virtual: add it to the documentation body (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix WARN_ON check of an unsigned less than zero (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Remove unused x86_register enum (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fix struct guest_walker arrays for 5-level paging (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use correct root level for nested EPT shadow page tables (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Fix some comment typos and coding style (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Avoid retpoline on ->page_fault() with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: reuse smp_wmb() in kvm_make_request() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove duplicated KVM_REQ_EVENT request (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: svm: Add vmcall test (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: AMD Nested test infrastructure (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Replace get_{gdt, idt}_base() by get_{gdt, idt}() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Deliver exception payload on KVM_GET_VCPU_EVENTS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Handle pending #DB when injecting INIT VM-exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mask off reserved bit from #DB exception payload (Vitaly Kuznetsov) [1813987] - [virt] kvm: Disable preemption in kvm_get_running_vcpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless vmx_decache_cr0_guest_bits() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Mark CR4.UMIP as reserved based on associated CPUID bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix perfctr WRMSR for running counters (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Separate generating and setting mmio ptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: mmu: Replace unsigned with unsigned int for PTE access (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove stale comment from nested_vmx_load_cr3() (Vitaly Kuznetsov) [1813987] - [x86] kvm: do not setup pv tlb flush when not paravirtualized (Vitaly Kuznetsov) [1813987] - [x86] Add "nopv" parameter to disable PV extensions (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix overflow of zero page refcount with ksm running (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Take a u64 when checking for a valid dr7 value (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use raw clock values consistently (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: reorganize pvclock_gtod_data members (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: delete meaningless nested_vmx_run() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: allow AVIC without split irqchip (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Lazy update IOAPIC EOI (Vitaly Kuznetsov) [1813987] - [x86] kvm: ioapic: Refactor kvm_ioapic_update_eoi() (Vitaly Kuznetsov) [1813987] - [x86] kvm: i8254: Deactivate APICv when using in-kernel PIT re-injection mode (Vitaly Kuznetsov) [1813987] - [x86] svm: Temporarily deactivate AVIC during ExtINT handling (Vitaly Kuznetsov) [1813987] - [x86] svm: Deactivate AVIC when launching guest with nested SVM support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: hyperv: Use APICv update request interface (Vitaly Kuznetsov) [1813987] - [x86] svm: Add support for dynamic APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce x86 ops hook for pre-update APICv (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv x86 ops for checking APIC inhibit reasons (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: avic: Add support for dynamic setup/teardown of virtual APIC backing page (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: svm: Add support to (de)activate posted interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add APICv (de)activate request trace points (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add support for dynamic APICv activation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: remove get_enable_apicv from kvm_x86_ops (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce APICv inhibit reason bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: Introduce APICv update helper function (Vitaly Kuznetsov) [1813987] - [iommu] amd: Re-factor guest virtual APIC (de-)activation code (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Add fpu and one reg set/get library functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: Clean up host's steal time structure (Vitaly Kuznetsov) [1813987] - [x86] kvm: Make sure KVM_VCPU_FLUSH_TLB flag is not missed (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Cache gfn to pfn translation (Vitaly Kuznetsov) [1813987] - [virt] x86/kvm: Introduce kvm_(un)map_gfn() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use a typedef for fastop functions (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add 'else' to unify fastop and execute call path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: inline memslot_valid_for_gpte (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Use huge pages for DAX-backed files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove lpage_is_disallowed() check from set_spte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold max_mapping_level() into kvm_mmu_hugepage_adjust() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Zap any compound page when collapsing sptes (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Remove obsolete gfn restoration in FNAME(fetch) (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rely on host page tables to find HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Drop level optimization from fast_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Walk host page tables to find THP mappings (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor THP adjust to prep for changing query (Vitaly Kuznetsov) [1813987] - [x86] mm: Introduce lookup_address_in_mm() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Play nice with read-only memslots when querying host page size (Vitaly Kuznetsov) [1813987] - [x86] kvm: Use vcpu-specific gva->hva translation when querying host page size (Vitaly Kuznetsov) [1813987] - [mm] thp: kvm: Explicitly check for THP when populating secondary MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Enforce max_level on HugeTLB mappings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Return immediately if __kvm_gfn_to_hva_cache_init() fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: Clean up __kvm_gfn_to_hva_cache_init() and its callers (Vitaly Kuznetsov) [1813987] - [virt] kvm: Check for a bad hva before dropping into the ghc slow path (Vitaly Kuznetsov) [1813987] - [x86] kvm/x86: export kvm_vector_hashing_enabled() is unnecessary (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove duplicated segment cache clear (Vitaly Kuznetsov) [1813987] - [x86] Adding 'else' to reduce checking (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_DR7 on vmentry of nested guests (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move running VCPU from ARM to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop x86_set_memory_region() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't take srcu lock in init_rmode_identity_map() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add build-time error check on kvm_run size (Vitaly Kuznetsov) [1813987] - [virt] kvm: Remove kvm_read_guest_atomic() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Perform non-canonical checks in 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: WARN on failure to set IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unused ctxt param from emulator's FPU accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: revert "kvm: x86: Fix fpu state crash in kvm guest" (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure guest's FPU state is loaded when accessing for emulation (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Handle TIF_NEED_FPU_LOAD in kvm_{load, put}_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] revert "kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu()" (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: short-circuit kvm_apic_accept_pic_intr() when pic intr is accepted (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid clearing pending exception event twice (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect pmu_intel.c from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect DR-based index computations from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect exit_reason from being used in Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations from Spectre-v1/L1TF attacks in x86.c (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in pmu.h from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect MSR-based index computations in fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect kvm_hv_msr_[get|set]_crash_data() from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Protect x86_decode_insn from Spectre-v1/L1TF attacks (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move vcpu->run page allocation out of kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move putting of vcpu->pid to kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_init() and kvm_arch_vcpu_uninit() (Vitaly Kuznetsov) [1813987] - [arm64] kvm: arm64: Free sve_state via arm specific hook (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move all vcpu init code into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Drop kvm_arch_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: booke: Setup vcpu during kvmppc_core_vcpu_create() (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Manually invoke vcpu setup during kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move guts of kvm_arch_vcpu_setup() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Move initialization of preempt notifier to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Unexport kvm_vcpu_cache and kvm_vcpu_{un}init() (Vitaly Kuznetsov) [1813987] - [s390] kvm: Move vcpu alloc and init invocation to common code (Vitaly Kuznetsov) [1813987] - [virt] kvm: Introduce kvm_vcpu_destroy() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Invoke kvm_vcpu_uninit() immediately prior to freeing vcpu (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Invoke kvm_vcpu_init() before allocating sie_page (Vitaly Kuznetsov) [1813987] - [s390] kvm: s390: Move guts of kvm_arch_vcpu_init() into kvm_arch_vcpu_create() (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add kvm_arch_vcpu_precreate() to handle pre-allocation issues (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove kvm_arch_vcpu_free() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [virt] kvm: arm: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Drop kvm_arch_vcpu_free() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Move reset of oldpir below call to kvm_vcpu_init() (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Allocate book3s and shadow vcpu after common init (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: Allocate vcpu struct in common PPC code (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: e500mc: Add build-time assert that vcpu is at offset 0 (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s pr: Free shared page if mmu initialization fails (Vitaly Kuznetsov) [1813987] - [powerpc] kvm: ppc: book3s hv: Uninit vCPU if vcore creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious clearing of async #PF MSR (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove spurious kvm_mmu_unload() from vcpu destruction path (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move kvm_vcpu_init() invocation to common code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move allocation of pio_data page down a few lines (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move FPU allocation to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Allocate vcpu struct in common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use direct vcpu pointer during vCPU create/free (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allocate VPID after initializing VCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Free wbinvd_dirty_mask if vCPU creation fails (Vitaly Kuznetsov) [1813987] - [virt] kvm: async_pf: drop kvm_arch_async_page_present wrappers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix overlap between SPTE_MMIO_MASK and generation (Vitaly Kuznetsov) [1813987] - [virt] kvm: Refactor handling of VM debugfs files (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: vmread should not set rflags to specify success in case of #PF (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Micro-optimize nEPT's bad memptype/XWR checks (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Reorder the reserved bit check in prefetch_invalid_gpte() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: delete meaningless nested_vmx_prepare_msr_bitmap() declaration (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Refactor and rename bit() to feature_bit() macro (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expand build-time assertion on reverse CPUID usage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add CPUID_7_1_EAX to the reverse CPUID table (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move bit() helper to cpuid.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add dedicated emulator helpers for querying CPUID features (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add macro to ensure reserved cr4 bits checks stay in sync (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop special XSAVE handling from guest_cpuid_has() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Ensure all logical CPUs have consistent reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Don't let userspace set host-reserved cr4 bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to consolidate up PT/RTIT WRMSR fault logic (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add non-canonical check on writes to RTIT address MSRs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some writing mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: hyperv: Fix some typos in vcpu unimpl info (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some grammar mistakes (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some comment typos and missing parentheses (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix some out-dated function names in comment (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix some wrong function names in comment (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: check kvm_pit outside kvm_vm_ioctl_reinject() (Vitaly Kuznetsov) [1813987] - [x86] kvm: lapic: micro-optimize fixed mode ipi delivery (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: FIXED+PHYSICAL mode single target IPI fastpath (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Allow KVM_INTEL when building for Centaur and/or Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Check for full VMX support when verifying CPU compatibility (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use VMX feature flag to query BIOS enabling (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Drop initialization of IA32_FEAT_CTL MSR (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add flag to track whether MSR IA32_FEAT_CTL is configured (Vitaly Kuznetsov) [1813987] - [x86] cpu: Set synthetic VMX cpufeatures during init_ia32_feat_ctl() (Vitaly Kuznetsov) [1813987] - [x86] cpufeatures: Add EPT_AD feature bit (Vitaly Kuznetsov) [1813987] - [x86] cpu: Detect VMX features on Intel, Centaur and Zhaoxin CPUs (Vitaly Kuznetsov) [1813987] - [x86] vmx: Introduce VMX_FEATURES_* (Vitaly Kuznetsov) [1813987] - [x86] cpu: Clear VMX feature flag if VMX is not fully enabled (Vitaly Kuznetsov) [1813987] - [x86] centaur: Use common IA32_FEAT_CTL MSR initialization (Vitaly Kuznetsov) [1813987] - [x86] mce: WARN once if IA32_FEAT_CTL MSR is left unlocked (Vitaly Kuznetsov) [1813987] - [x86] intel: Initialize IA32_FEAT_CTL MSR at boot (Vitaly Kuznetsov) [1813987] - [tools] x86: Sync msr-index.h from kernel sources (Vitaly Kuznetsov) [1813987] - [tools] selftests, kvm: Replace manual MSR defs with common msr-index.h (Vitaly Kuznetsov) [1813987] - [x86] msr-index: Clean up bit defines for IA32_FEATURE_CONTROL MSR (Vitaly Kuznetsov) [1813987] - [tools] tools arch x86: Grab a copy of the file containing the MSR numbers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN if root_hpa is invalid when handling a page fault (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: WARN on an invalid root_hpa (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move root_hpa validity checks to top of page fault handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move calls to thp_adjust() down a level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move transparent_hugepage_adjust() above __direct_map() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Consolidate tdp_page_fault() and nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Rename lpage_disallowed to account_disallowed_nx_lpage (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Persist gfn_lpage_is_disallowed() to max_level (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Incorporate guest's page level into max level for shadow MMU (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of forced 4k pages in page faults (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor the per-slot level calculation in mapping_level() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Refactor handling of cache consistency with TDP (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move nonpaging_page_fault() below try_async_pf() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Fold nonpaging_map() into nonpaging_page_fault() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/mmu: Move definition of make_mmu_pages_available() up (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add a WARN on TIF_NEED_FPU_LOAD in kvm_load_guest_fpu() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix potential put_fpu() w/o load_fpu() on MPX platform (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Remove duplicated declaration of kvm_vcpu_kick (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Aesthetic cleanup of handle_vmread and handle_vmwrite (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks unsupported field before read-only field (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: VMWRITE checks VMCS-link pointer before VMCS field (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix the spelling of CPU_BASED_USE_TSC_OFFSETTING (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NMI_PENDING to NMI_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename INTERRUPT_PENDING to INTERRUPT_WINDOW (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix some comment typos (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Convert the last users of "shorthand = 0" to use macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix callers of kvm_apic_match_dest() to use correct macros (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Drop KVM_APIC_SHORT_MASK and KVM_APIC_DEST_MASK (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Use APIC_DEST_* macros properly in kvm_lapic_irq.dest_mode (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move irrelevant declarations out of ioapic.h (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix kvm_bitmap_or_dest_vcpus() to use irq shorthand (Vitaly Kuznetsov) [1813987] - [x86] kvm: explicitly set rmap_head->val to 0 in pte_list_desc_remove_entry() (Vitaly Kuznetsov) [1813987] - [virt] kvm: get rid of var page in kvm_set_pfn_dirty() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: remove unreachable statement in vmx_get_msr_feature() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: use CPUID to locate host page table reserved bits (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature SPEC_CTRL_SSBD (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Stop wasting a page for guest_msrs (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix out-of-bounds write in KVM_GET_EMULATED_CPUID (CVE-2019-19332) (Vitaly Kuznetsov) [1813987] - [documentation] documentation: kvm: Fix mention to number of ioctls classes (Vitaly Kuznetsov) [1813987] - [x86] kvm x86: Move kvm cpuid support out of svm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Relax guest IA32_FEATURE_CONTROL constraints (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Grab KVM's srcu lock when setting nested state (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Open code shared_msr_update() in its only caller (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix jump label out_free_* in kvm_init() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: create mmu/ subdirectory (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Remove unnecessary TLB flushes on L1<->L2 switches when L1 use apic-access-page (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Do not mark vmcs02->apic_access_page as dirty when unpinning (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Assume TLB entries of L1 and L2 are tagged differently if L0 use EPT (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Unexport kvm_vcpu_reload_apic_access_page() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: add CR4_LA57 bit to nested CR4_FIXED1 (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use semi-colon instead of comma for exit-handlers initialization (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Add support for capturing highest observable L2 TSC (Vitaly Kuznetsov) [1813987] - [x86] tss: Fix and move VMX BUILD_BUG_ON() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename function find_msr() to vmx_find_msr_index() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename NR_AUTOLOAD_MSRS to NR_LOADSTORE_MSRS (Vitaly Kuznetsov) [1813987] - [x86] kvm: nested: Introduce read_and_check_msr_entry() (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Expose load IA32_PERF_GLOBAL_CTRL VM-{Entry, Exit} control (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Load GUEST_IA32_PERF_GLOBAL_CTRL MSR on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: mark functions in the header as "static inline" (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Use kvm_set_msr to load IA32_PERF_GLOBAL_CTRL on VM-Exit (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check HOST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Check GUEST_IA32_PERF_GLOBAL_CTRL on VM-Entry (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Add helper to check reserved bits in IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: Simplify loop in kvm_create_max_vcpus test (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimization: Requst TLB flush in fast_cr3_switch() instead of do it directly (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Add lazy mechanism to release perf_event per vPMC (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Reuse perf_event to avoid unnecessary pmc_reprogram_counter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Introduce a new kvm_pmu_ops->msr_idx_to_pmc callback (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Rename pmu_ops callbacks from msr_idx to rdpmc_ecx (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to pause perf_event (Vitaly Kuznetsov) [1813987] - [kernel] perf/core: Provide a kernel-internal interface to recalibrate event period (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Update vmcs01 TPR_THRESHOLD if L2 changed L1 TPR (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Refactor update_cr8_intercept() (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Remove check if APICv enabled in SVM update_cr8_intercept() handler (Vitaly Kuznetsov) [1813987] - [x86] kvm: apic: add helper func to remove duplicate code in kvm_pv_send_ipi (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: avoid unused setup_syscalls_segments call when SYSCALL check failed (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmio: get rid of odd out_err label in kvm_coalesced_mmio_init (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consume pending LAPIC INIT event when exit on INIT_SIGNAL (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Prevent set vCPU into INIT/SIPI_RECEIVED state when INIT are latched (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Evaluate latched_init in KVM_SET_VCPU_EVENTS when vCPU not in SMM (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from svm.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: retpolines: x86: eliminate retpoline from vmx.c exit handlers (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: optimize more exit handlers in vmx.c (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add a comment describing the /dev/kvm no_compat handling (Vitaly Kuznetsov) [1813987] - [virt] kvm: Forbid /dev/kvm being opened by a compat task when CONFIG_KVM_COMPAT=n (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Reset the three MSR list number variables to 0 in kvm_init_msr_list() (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix build with glibc >= 2.30 (Vitaly Kuznetsov) [1813987] - [virt] kvm: mmu: Do not treat ZONE_DEVICE pages as being reserved (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Introduce pi_is_pir_empty() helper (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Do not change PID.NDST when loading a blocked vCPU (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consider PID.PIR to determine if vCPU has pending interrupts (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix comment to specify PID.ON instead of PIR.ON (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fix initialization of MSR lists (Vitaly Kuznetsov) [1813987] - [virt] kvm: fix placement of refcount initialization (Vitaly Kuznetsov) [1813987] - [virt] kvm: Fix NULL-ptr deref after kvm_create_vm fails (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: get rid of odd out jump label in pdptrs_changed (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: switch KVMCLOCK base to monotonic raw clock (Vitaly Kuznetsov) [1813987] - [virt] kvm: call kvm_arch_destroy_vm if vm creation fails (Vitaly Kuznetsov) [1813987] - [x86] kvm/pmu: Replace rcu_swap_protected() with rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [kernel] rcu: Upgrade rcu_swap_protected() to rcu_replace_pointer() (Vitaly Kuznetsov) [1813987] - [x86] kvm: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allocate memslots and buses before calling kvm_arch_init_vm (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Don't leak L1 MMIO regions to L2 (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Fix potential wrong physical id in avic_handle_ldr_update (Vitaly Kuznetsov) [1813987] - [virt] kvm: Add separate helper for putting borrowed reference to kvm (Vitaly Kuznetsov) [1813987] - [tools] kvm: tests: Add test to verify MSR_IA32_XSS (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Update svm_xsaves_supported (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS to kvm_{get, set}_msr_common (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Move IA32_XSS-swapping on VM-entry/VM-exit to common x86 code (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Use wrmsr for switching between guest and host IA32_XSS on Intel (Vitaly Kuznetsov) [1813987] - [x86] kvm: svm: Use wrmsr for switching between guest and host IA32_XSS on AMD (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Remove unneeded kvm_vcpu variable, guest_xcr0_loaded (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Fix conditions for guest IA32_XSS support (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Introduce vcpu->arch.xsaves_enabled (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Rename {vmx, nested_vmx}_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Initialize vmx->guest_msrs[] right after allocation (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove vmx->hv_deadline_tsc initialization from vmx_vcpu_setup() (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Write VPID to vmcs when creating vcpu (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86/vpmu: Declare kvm_pmu->reprogram_pmi field using DECLARE_BITMAP (Vitaly Kuznetsov) [1813987] - [x86] kvm: remove redundant code in kvm_arch_vm_ioctl (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Modify kvm_x86_ops.get_enable_apicv() to use struct kvm parameter (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold decache_cr3() into cache_reg() (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add helpers to test/mark reg availability and dirtiness (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Fold 'enum kvm_ex_reg' definitions into 'enum kvm_reg' (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Add WARNs to detect out-of-bounds register indices (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Optimize vmx_set_rflags() for unrestricted guest (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Consolidate to_vmx() usage in RFLAGS accessors (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Skip GUEST_CR3 VMREAD+VMWRITE if the VMCS is up-to-date (Vitaly Kuznetsov) [1813987] - [x86] kvm: nvmx: Always write vmcs02.GUEST_CR3 during nested VM-Enter (Vitaly Kuznetsov) [1813987] - [x86] kvm: clear kvmclock MSR on reset (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: fix bugon.cocci warnings (Vitaly Kuznetsov) [1813987] - [x86] kvm: vmx: Remove specialized handling of unexpected exit-reasons (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: fix sync_regs_test with newer gccs (Vitaly Kuznetsov) [1813987] - [virt] kvm: Don't shrink/grow vCPU halt_poll_ns if host side polling is disabled (Vitaly Kuznetsov) [1813987] - [tools] selftests: kvm: synchronize .gitignore to Makefile (Vitaly Kuznetsov) [1813987] - [x86] kvm: x86: Expose RDPID in KVM_GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1813987] - [virt] kvm: Allow kvm_device_ops to be const (Vitaly Kuznetsov) [1813987] - [kernel] kvm: Implement kvm_put_guest() (Vitaly Kuznetsov) [1813987] - [x86] xen: kvm: Gather the definition of emulate prefixes (Vitaly Kuznetsov) [1813987] - [tools] kvm: selftests: do not blindly clobber registers in guest asm (Vitaly Kuznetsov) [1813987]- [fs] cifs: handle prefix paths in reconnect (Leif Sahlberg) [1814203] - [fs] cifs: use compounding for open and first query-dir for readdir() (Leif Sahlberg) [1814203] - [fs] cifs: create a helper function to parse the query-directory response buffer (Leif Sahlberg) [1814203] - [fs] cifs: prepare SMB2_query_directory to be used with compounding (Leif Sahlberg) [1814203] - [fs] xfs: reflink should force the log out if mounted with wsync (Bill O'Donnell) [1825373] - [fs] xfs: factor out a new xfs_log_force_inode helper (Bill O'Donnell) [1825373] - [fs] xfs: don't ever return a stale pointer from __xfs_dir3_free_read (Bill O'Donnell) [1825373] - [fs] xfs: fix xfs_rmap_has_other_keys usage of ECANCELED (Bill O'Donnell) [1825373] - [fs] xfs: clear kernel only flags in XFS_IOC_ATTRMULTI_BY_HANDLE (Bill O'Donnell) [1825373] - [fs] xfs: use bitops interface for buf log item AIL flag check (Bill O'Donnell) [1825373] - [fs] xfs: Sanity check flags of Q_XQUOTARM call (Bill O'Donnell) [1825373] - [fs] iomap: iomap that extends beyond EOF should be marked dirty (Bill O'Donnell) [1825373] - [s390] s390/kasan: Fix crash when attaching PCI device (Philipp Rudo) [1827334] - [s390] s390/qeth: fix initialization on old HW (Philipp Rudo) [1780667] - [s390] s390/qeth: vnicc Fix init to default (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix vnicc_is_in_use if rx_bcast not set (Philipp Rudo) [1780667] - [s390] s390/qeth: fix false reporting of VNIC CHAR config failure (Philipp Rudo) [1780667] - [s390] s390/qeth: lock the card while changing its hsuid (Philipp Rudo) [1780667] - [s390] s390/qeth: fix qdio teardown after early init error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't return -ENOTSUPP to userspace (Philipp Rudo) [1780667] - [s390] s390/qeth: fix promiscuous mode after reset (Philipp Rudo) [1780667] - [s390] s390/qeth: handle error due to unsupported transport mode (Philipp Rudo) [1780667] - [s390] s390/qeth: return proper errno on IO error (Philipp Rudo) [1780667] - [s390] s390/qeth: don't check drvdata in sysfs code (Philipp Rudo) [1780667] - [s390] s390/qeth: replace qeth_l3_get_addr_buffer() (Philipp Rudo) [1780667] - [s390] s390/qeth: remove VLAN tracking for L3 devices (Philipp Rudo) [1780667] - [net] net: 8021q: vlan_core: allow use list of vlans for real device (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate L3 mcast registration code (Philipp Rudo) [1780667] - [s390] s390/qeth: remove gratuitious RX modeset (Philipp Rudo) [1780667] - [s390] s390/qeth: fine-tune L3 mcast locking (Philipp Rudo) [1780667] - [s390] s390/qeth: clean up error path in qeth_core_probe_device() (Philipp Rudo) [1780667] - [s390] s390/qeth: don't cache MAC addresses for multicast IPs (Philipp Rudo) [1780667] - [s390] s390/qeth: use helpers for IP address hashing (Philipp Rudo) [1780667] - [s390] s390/qeth: don't set card state in qeth_qdio_clear_card() (Philipp Rudo) [1780667] - [s390] s390/qeth: consolidate some duplicated HW cmd code (Philipp Rudo) [1780667] - [s390] s390/qeth: keep IRQ disabled until NAPI is really done (Philipp Rudo) [1780667] - [s390] s390/qeth: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qdio: move SSQD Sniffer mask definition (Philipp Rudo) [1780667] - [s390] s390/qdio: don't attempt IRQ avoidance on Output SBALs (Philipp Rudo) [1780667] - [s390] s390/qdio: simplify thinint device registration (Philipp Rudo) [1780667] - [s390] s390/qdio: add statistics helper macro (Philipp Rudo) [1780667] - [s390] s390/qdio: remove a forward declaration (Philipp Rudo) [1780667] - [s390] s390/qdio: reduce log level for EQBS partial (Philipp Rudo) [1780667] - [s390] s390/qdio: use QDIO_BUFNR() (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix initialization of vnicc cmd masks during set online (Philipp Rudo) [1780667] - [s390] s390/qeth: Fix error handling during VNICC initialization (Philipp Rudo) [1780667] - [s390] s390/qdio: clarify size of the QIB parm area (Philipp Rudo) [1780667] - [s390] s390/qeth: get vnicc sub-cmd type from reply data (Philipp Rudo) [1780667] - [s390] s390/qeth: merge qeth_reply struct into qeth_cmd_buffer (Philipp Rudo) [1780667] - [s390] s390/qeth: keep cmd alive after IO completion (Philipp Rudo) [1780667] - [s390] s390/qeth: use correct length field in SNMP cmd callback (Philipp Rudo) [1780667] - [s390] s390/qeth: propagate length of processed cmd IO data to callback (Philipp Rudo) [1780667] - [s390] s390/qeth: use node_descriptor struct (Philipp Rudo) [1780667] - [s390] s390/cio: move struct node_descriptor to cio.h (Philipp Rudo) [1780667] - [s390] scsi: zfcp: log FC Endpoint Security errors (Philipp Rudo) [1723820] - [s390] scsi: zfcp: enhance handling of FC Endpoint Security errors (Philipp Rudo) [1723820] - [lib] lib/zlib: add zlib_deflate_dfltcc_enabled() function (Philipp Rudo) [1659435] - [lib] s390/boot: add dfltcc= kernel command line parameter (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_inflate (Philipp Rudo) [1659435] - [s390] s390/boot: rename HEAP_SIZE due to name collision (Philipp Rudo) [1659435] - [lib] lib/zlib: add s390 hardware support for kernel zlib_deflate (Philipp Rudo) [1659435] - [base] mm/memory_hotplug: allow to specify a default online_type (David Hildenbrand) [1038941] - [base] mm/memory_hotplug: convert memhp_auto_online to store an online_type (David Hildenbrand) [1038941] - [mm] mm/memory_hotplug: unexport memhp_auto_online (David Hildenbrand) [1038941] - [hv] hv_balloon: don't check for memhp_auto_online manually (David Hildenbrand) [1038941] - [powerpc] powernv/memtrace: always online added memory blocks (David Hildenbrand) [1038941] - [base] drivers/base/memory: store mapping between MMOP_* and string in an array (David Hildenbrand) [1038941] - [base] drivers/base/memory: map MMOP_OFFLINE to 0 (David Hildenbrand) [1038941] - [base] drivers/base/memory: rename MMOP_ONLINE_KEEP to MMOP_ONLINE (David Hildenbrand) [1038941] - [netdrv] cxgb4: fix adapter crash due to wrong MC size (Vishal Kulkarni) [1813128] - [scsi] scsi: ibmvfc: Don't send implicit logouts prior to NPIV login (Steve Best) [1828725] - [fs] cifs: ignore cached share root handle closing errors (Leif Sahlberg) [1827485] - [fs] cifs: Optimize readdir on reparse points (Leif Sahlberg) [1827485] - [fs] cifs: Adjust indentation in smb2_open_file (Leif Sahlberg) [1827485] - [fs] CIFS: Close cached root handle only if it has a lease (Leif Sahlberg) [1827485] - [fs] SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path (Leif Sahlberg) [1827485] - [fs] smb3: fix refcount underflow warning on unmount when no directory leases (Leif Sahlberg) [1827485] - [fs] fs: cifs: Delete usage of timespec64_trunc (Leif Sahlberg) [1827485] - [fs] smb3: improve check for when we send the security descriptor context on create (Leif Sahlberg) [1827485] - [fs] smb3: fix mode passed in on create for modetosid mount option (Leif Sahlberg) [1827485] - [fs] cifs: fix possible uninitialized access and race on iface_list (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of SMB connections on multichannel (Leif Sahlberg) [1827485] - [fs] smb3: query attributes on file close (Leif Sahlberg) [1827485] - [fs] smb3: remove unused flag passed into close functions (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to pointer pneg_ctxt (Leif Sahlberg) [1827485] - [fs] fs: cifs: Fix atime update check vs mtime (Leif Sahlberg) [1827485] - [fs] CIFS: fix a white space issue in cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: Always update signing key of first channel (Leif Sahlberg) [1827485] - [fs] cifs: Fix retrieval of DFS referrals in cifs_mount() (Leif Sahlberg) [1827485] - [fs] cifs: Fix potential softlockups while refreshing DFS cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix lookup of root ses in DFS referral cache (Leif Sahlberg) [1827485] - [fs] cifs: Fix use-after-free bug in cifs_reconnect() (Leif Sahlberg) [1827485] - [fs] cifs: dump channel info in DebugData (Leif Sahlberg) [1827485] - [fs] smb3: dump in_send and num_waiters stats counters by default (Leif Sahlberg) [1827485] - [fs] cifs: try harder to open new channels (Leif Sahlberg) [1827485] - [fs] CIFS: Properly process SMB3 lease breaks (Leif Sahlberg) [1827485] - [fs] cifs: move cifsFileInfo_put logic into a work-queue (Leif Sahlberg) [1827485] - [fs] cifs: try opening channels after mounting (Leif Sahlberg) [1827485] - [fs] CIFS: refactor cifs_get_inode_info() (Leif Sahlberg) [1827485] - [fs] cifs: switch servers depending on binding state (Leif Sahlberg) [1827485] - [fs] cifs: add server param (Leif Sahlberg) [1827485] - [fs] cifs: add multichannel mount options and data structs (Leif Sahlberg) [1827485] - [fs] cifs: sort interface list by speed (Leif Sahlberg) [1827485] - [fs] CIFS: Fix SMB2 oplock break processing (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EAGAIN when transport is reconnecting (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Only queue work for error recovery on memory registration (Leif Sahlberg) [1827485] - [fs] smb3: add debug messages for closing unmatched open (Leif Sahlberg) [1827485] - [fs] CIFS: Respect O_SYNC and O_DIRECT flags during reconnect (Leif Sahlberg) [1827485] - [fs] smb3: remove confusing dmesg when mounting with encryption ("seal") (Leif Sahlberg) [1827485] - [fs] cifs: close the shared root handle on tree disconnect (Leif Sahlberg) [1827485] - [fs] CIFS: Return directly after a failed build_path_from_dentry() in cifs_do_create() (Leif Sahlberg) [1827485] - [fs] CIFS: Use common error handling code in smb2_ioctl_query_info() (Leif Sahlberg) [1827485] - [fs] CIFS: Use memdup_user() rather than duplicating its implementation (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -ECONNABORTED when trasnport is not in connected state (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Add messages on RDMA session destroy and reconnection (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Return -EINVAL when the number of iovs exceeds SMBDIRECT_MAX_SGE (Leif Sahlberg) [1827485] - [fs] cifs: smbd: Invalidate and deregister memory registration on re-send for direct I/O (Leif Sahlberg) [1827485] - [fs] cifs: Don't display RDMA transport on reconnect (Leif Sahlberg) [1827485] - [fs] CIFS: remove set but not used variables 'cinode' and 'netfid' (Leif Sahlberg) [1827485] - [fs] cifs: add support for flock (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable 'sid_user' (Leif Sahlberg) [1827485] - [fs] cifs: rename a variable in SendReceive() (Leif Sahlberg) [1827485] - [fs] SMB3: Fix persistent handles reconnect (Leif Sahlberg) [1827485] - [fs] fix memory leak in large read decrypt offload (Leif Sahlberg) [1827485] - [fs] cifs: Fix missed free operations (Leif Sahlberg) [1827485] - [fs] cifs: clarify comment about timestamp granularity for old servers (Leif Sahlberg) [1827485] - [fs] cifs: Handle -EINPROGRESS only when noblockcnt is set (Leif Sahlberg) [1827485] - [fs] smb3: remove noisy debug message and minor cleanup (Leif Sahlberg) [1827485] - [fs] fs: cifs: mute -Wunused-const-variable message (Leif Sahlberg) [1827485] - [fs] smb3: cleanup some recent endian errors spotted by updated sparse (Leif Sahlberg) [1827485] - [fs] CIFS: Fix oplock handling for SMB 2.1+ protocols (Leif Sahlberg) [1827485] - [fs] smb3: missing ACL related flags (Leif Sahlberg) [1827485] - [fs] smb3: pass mode bits into create calls (Leif Sahlberg) [1827485] - [fs] smb3: Add missing reparse tags (Leif Sahlberg) [1827485] - [fs] CIFS: fix max ea value size (Leif Sahlberg) [1827485] - [fs] fs/cifs/sess.c: Remove set but not used variable 'capabilities' (Leif Sahlberg) [1827485] - [fs] fs/cifs/smb2pdu.c: Make SMB2_notify_init static (Leif Sahlberg) [1827485] - [fs] smb3: fix leak in "open on server" perf counter (Leif Sahlberg) [1827485] - [fs] smb3: allow decryption keys to be dumped by admin for debugging (Leif Sahlberg) [1827485] - [fs] cifs: update internal module version number (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: write mode ACE first (Leif Sahlberg) [1827485] - [fs] cifs: cifsroot: add more err checking (Leif Sahlberg) [1827485] - [fs] smb3: add missing worker function for SMB3 change notify (Leif Sahlberg) [1827485] - [fs] cifs: Add support for root file systems (Leif Sahlberg) [1827485] - [fs] cifs: modefromsid: make room for 4 ACE (Leif Sahlberg) [1827485] - [fs] smb3: fix potential null dereference in decrypt offload (Leif Sahlberg) [1827485] - [fs] smb3: allow disabling requesting leases (Leif Sahlberg) [1827485] - [fs] smb3: improve handling of share deleted (and share recreated) (Leif Sahlberg) [1827485] - [fs] smb3: display max smb3 requests in flight at any one time (Leif Sahlberg) [1827485] - [fs] smb3: only offload decryption of read responses if multiple requests (Leif Sahlberg) [1827485] - [fs] cifs: add a helper to find an existing readable handle to a file (Leif Sahlberg) [1827485] - [fs] smb3: enable offload of decryption of large reads via mount option (Leif Sahlberg) [1827485] - [fs] smb3: allow parallelizing decryption of reads (Leif Sahlberg) [1827485] - [fs] smb3: allow skipping signature verification for perf sensitive configurations (Leif Sahlberg) [1827485] - [fs] smb3: add dynamic tracepoints for flush and close (Leif Sahlberg) [1827485] - [fs] smb3: log warning if CSC policy conflicts with cache mount option (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow RW caching of share accessed by only 1 client (Leif Sahlberg) [1827485] - [fs] smb3: add some more descriptive messages about share when mounting cache=ro (Leif Sahlberg) [1827485] - [fs] smb3: add mount option to allow forced caching of read only share (Leif Sahlberg) [1827485] - [fs] cifs: fix dereference on ses before it is null checked (Leif Sahlberg) [1827485] - [fs] cifs: use existing handle for compound_op(OP_SET_INFO) when possible (Leif Sahlberg) [1827485] - [fs] cifs: create a helper to find a writeable handle by path name (Leif Sahlberg) [1827485] - [fs] cifs: remove set but not used variables (Leif Sahlberg) [1827485] - [fs] smb3: Incorrect size for netname negotiate context (Leif Sahlberg) [1827485] - [fs] cifs: remove unused variable (Leif Sahlberg) [1827485] - [fs] cifs: remove redundant assignment to variable rc (Leif Sahlberg) [1827485] - [fs] smb3: add missing flag definitions (Leif Sahlberg) [1827485] - [fs] cifs: add passthrough for smb2 setinfo (Leif Sahlberg) [1827485] - [fs] cifs: prepare SMB2_Flush to be usable in compounds (Leif Sahlberg) [1827485] - [fs] cifs: allow chmod to set mode bits using special sid (Leif Sahlberg) [1827485] - [fs] cifs: get mode bits from special sid on stat (Leif Sahlberg) [1827485] - [fs] fs: cifs: cifsssmb: remove redundant assignment to variable ret (Leif Sahlberg) [1827485] - [fs] cifs: fix a comment for the timeouts when sending echos (Leif Sahlberg) [1827485] - [fs] fs: cifs: switch to RC4 library interface (Leif Sahlberg) [1827485] - [fs] smb3: smbdirect no longer experimental (Leif Sahlberg) [1827485] - [fs] cifs: copy_file_range needs to strip setuid bits and update timestamps (Leif Sahlberg) [1827485] - [tools] perf vendor events s390: Add new deflate counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/cpum_cf: Add new extended counters for IBM z15 (Philipp Rudo) [1827333] - [s390] s390/zcrypt: use kvmalloc instead of kmalloc for 256k alloc (Philipp Rudo) [1827310] - [s390] s390/pkey/zcrypt: Support EP11 AES secure keys (Philipp Rudo) [1723826] - [s390] s390/zcrypt: extend EP11 card and queue sysfs attributes (Philipp Rudo) [1723826] - [s390] s390/zcrypt: add new low level ep11 functions support file (Philipp Rudo) [1723826] - [s390] s390/zcrypt: ep11 structs rework, export zcrypt_send_ep11_cprb (Philipp Rudo) [1723826] - [s390] s390/zcrypt: enable card/domain autoselect on ep11 cprbs (Philipp Rudo) [1723826] - [crypto] crypto/testmgr: enable selftests for paes-s390 ciphers (Philipp Rudo) [1780668] - [s390] s390/pkey: Add support for key blob with clear key value (Philipp Rudo) [1780668] - [s390] s390/crypto: enable clear key values for paes ciphers (Philipp Rudo) [1780668] - [s390] s390/crypto: Rework on paes implementation (Philipp Rudo) [1780668] - [s390] scsi: zfcp: trace FC Endpoint Security of FCP devices and connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: log FC Endpoint Security of connections (Philipp Rudo) [1723822] - [s390] scsi: zfcp: report FC Endpoint Security in sysfs (Philipp Rudo) [1723822] - [s390] scsi: zfcp: auto variables for dereferenced structs in open port handler (Philipp Rudo) [1723822] - [block] blk-iocost: Fix error on iocost_ioc_vrate_adj (Waiman Long) [1828563] - [s390] s390/ipl: add support to control memory clearing for FCP and CCW re-IPL (Philipp Rudo) [1812985] - [s390] s390: support KPROBES_ON_FTRACE (Philipp Rudo) [1810526] - [s390] s390/ftrace: generate traced function stack frame (Philipp Rudo) [1810526] - [s390] s390/ftrace: save traced function caller (Philipp Rudo) [1810526] - [misc] mei: me: fix irq number stored in hw struct (Tony Camuso) [1822645] - [misc] mei: me: add cedar fork device ids (Tony Camuso) [1822645] - [misc] mei: fix CNL itouch device number to match the spec (Tony Camuso) [1822645] - [misc] misc: Replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: remove unused includes from pci-{me, txe}.c (Tony Camuso) [1822645] - [misc] mei: limit number of bytes in mei header (Tony Camuso) [1822645] - [misc] mei: bus: replace zero-length array with flexible-array member (Tony Camuso) [1822645] - [misc] mei: me: add jasper point DID (Tony Camuso) [1822645] - [misc] mei: hdcp: bind only with i915 on the same PCH (Tony Camuso) [1822645] - [misc] mei: bus: use simple sprintf for sysfs (Tony Camuso) [1822645] - [misc] mei: bus: add more client attributes to sysfs (Tony Camuso) [1822645] - [misc] mei: add trc detection register to sysfs (Tony Camuso) [1822645] - [misc] mei: abstract fw status register read (Tony Camuso) [1822645] - [misc] mei: me: store irq number in the hw struct (Tony Camuso) [1822645] - [misc] mei: me: mei_me_dev_init() use struct device instead of struct pci_dev (Tony Camuso) [1822645] - [misc] mei: me: add comet point V device id (Tony Camuso) [1822645] - [misc] mei: bus: prefix device names on bus with the bus name (Tony Camuso) [1822645] - [misc] mei: me: fix me_intr_clear function name in KDoc (Tony Camuso) [1822645] - [misc] mei: buf: drop 'running hook' debug messages (Tony Camuso) [1822645] - [misc] mei: avoid FW version request on Ibex Peak and earlier (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Fill transcoder index in port info (Tony Camuso) [1822645] - [misc] drm/i915: mei_hdcp: I915 sends ddi index as per ME FW (Tony Camuso) [1822645] - [drm] drm/i915: Attach content type property (Tony Camuso) [1822645] - [drm] drm: Add Content protection type property (Tony Camuso) [1822645] - [misc] mei: me: add Tiger Lake point LP device ID (Tony Camuso) [1822645] - [misc] mei: Use dev_get_drvdata where possible (Tony Camuso) [1822645] - [misc] mei: me: add mule creek canyon (EHL) device ids (Tony Camuso) [1822645] - [misc] mei: no need to check return value of debugfs_create functions (Tony Camuso) [1822645] - [documentation] mei: docs: add hdcp documentation (Tony Camuso) [1822645] - [documentation] mei: docs: add a short description for nfc behind mei (Tony Camuso) [1822645] - [documentation] mei: docs: update mei client bus documentation (Tony Camuso) [1822645] - [documentation] mei: docs: move iamt docs to a iamt.rst file (Tony Camuso) [1822645] - [documentation] mei: docs: move documentation under driver-api (Tony Camuso) [1822645] - [misc] mei: Convert to use DEFINE_SHOW_ATTRIBUTE macro (Tony Camuso) [1822645] - [drm] drm: generic fn converting be24 to cpu and vice versa (Tony Camuso) [1822645] - [misc] mei: expose device state in sysfs (Tony Camuso) [1822645] - [misc] mei: hdcp: use own Kconfig file (Tony Camuso) [1822645] - [misc] mei: adjust the copyright notice in the files (Tony Camuso) [1822645] - [misc] mei/hdcp: Fix SPDX identifiers (Tony Camuso) [1822645] - [misc] mei: convert to SPDX license tags (Tony Camuso) [1822645] - [misc] mei: add missing SPDX tag to mei Kconfig (Tony Camuso) [1822645] - [misc] mei: bus: move hw module get/put to probe/release (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Component framework for I915 Interface (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Closing wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Enabling the HDCP authentication (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify M_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Repeater topology verification and ack (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Prepare Session Key (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify L_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Locality check (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Store the HDCP Pairing info (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify H_prime (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Verify Receiver Cert and prepare km (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Initiate Wired HDCP2.2 Tx Session (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Define ME FW interface for HDCP2.2 (Tony Camuso) [1822645] - [misc] misc/mei/hdcp: Client driver for HDCP application (Tony Camuso) [1822645] - [misc] mei: bus: whitelist hdcp client (Tony Camuso) [1822645] - [misc] mei: hbm: clean the feature flags on link reset (Tony Camuso) [1822645] - [misc] mei: bus: export to_mei_cl_device for mei client devices drivers (Tony Camuso) [1822645] - [misc] mei: free read cb on ctrl_wr list flush (Tony Camuso) [1822645] - [misc] mei: me: add ice lake point device id (Tony Camuso) [1822645] - [misc] mei: squash single_recv_buf into one bit in client properties (Tony Camuso) [1822645] - [misc] mei: me: add denverton innovation engine device IDs (Tony Camuso) [1822645] - [misc] mei: me: mark LBG devices as having dma support (Tony Camuso) [1822645] - [misc] mei: dma: silent the reject message (Tony Camuso) [1822645] - [misc] mei: me: mark CNP devices as having dma support (Tony Camuso) [1822645] - [misc] mei: bump hbm version to 2.1 (Tony Camuso) [1822645] - [misc] mei: dma ring: implement transmit flow (Tony Camuso) [1822645] - [misc] mei: dma ring: implement rx circular buffer logic (Tony Camuso) [1822645] - [misc] mei: hw: add dma ring control block (Tony Camuso) [1822645] - [misc] mei: hbm: setup dma ring (Tony Camuso) [1822645] - [misc] mei: dma ring buffers allocation (Tony Camuso) [1822645] - [misc] mei: expedite ioctl return on the notify set operation error (Tony Camuso) [1822645] - [misc] mei: flush queues by the host client only (Tony Camuso) [1822645] - [misc] mei: hbm: drop BUG() from the hbm handler (Tony Camuso) [1822645] - [misc] mei: replace POLL* with EPOLL* for write queues (Tony Camuso) [1822645] - [misc] misc: remove redundant include moduleparam.h (Tony Camuso) [1822645] - [misc] mei: bus: need to unlink client before freeing (Tony Camuso) [1822645] - [misc] mei: bus: fix hw module get/put balance (Tony Camuso) [1822645] - [misc] mei: fix use-after-free in mei_cl_write (Tony Camuso) [1822645] - [misc] mei: ignore not found client in the enumeration (Tony Camuso) [1822645] - [misc] mei: restrict dma ring support to hbm version 2.1 (Tony Camuso) [1822645] - [misc] mei: hbm: introduce dma bit in the message header (Tony Camuso) [1822645] - [misc] mei: add support for variable length mei headers (Tony Camuso) [1822645] - [misc] mei: add mei_msg_hdr_init wrapper (Tony Camuso) [1822645] - [misc] mei: move hbuf_depth from the mei device to the hw modules (Tony Camuso) [1822645] - [misc] mei: cleanup slots to data conversions (Tony Camuso) [1822645] - [misc] mei: bus: suppress sign-compare warnings (Tony Camuso) [1822645] - [misc] mei: fix ssize_t to int assignment in read and write ops (Tony Camuso) [1822645] - [misc] mei: use correct type for counter variable in for loops (Tony Camuso) [1822645] - [misc] mei: check for error returned from mei_hbuf_empty_slots() (Tony Camuso) [1822645] - [misc] mei: don't update offset in write (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_fwver() (Tony Camuso) [1822645] - [misc] mei: bus: type promotion bug in mei_nfc_if_version() (Tony Camuso) [1822645] - [misc] mei: expose fw version to sysfs (Tony Camuso) [1822645] - [misc] mei: add optional timeout to internal bus recv (Tony Camuso) [1822645] - [misc] mei: remove unused MEI_IAMTHIF_STALL_TIMER define (Tony Camuso) [1822645] - [s390] s390/pci: Fix unexpected write combine on resource (Philipp Rudo) [1827311] - [powerpc] pwerpc/vas: Include linux/types.h in uapi/asm/vas-api.h (Gustavo Duarte) [1725806] - [documentation] Documentation/powerpc: VAS API (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Remove 'pid' in vas_tx_win_attr struct (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Enable and setup GZIP compresstion type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Make enable code generic to add new GZIP compression type (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Rename nx-842-powernv file name to nx-common-powernv (Gustavo Duarte) [1725806] - [crypto] crypto/nx: Initialize coproc entry with kzalloc (Gustavo Duarte) [1725806] - [crypto] crypto: nx - Add of_node_put() before return in 842 (Gustavo Duarte) [1725806] - [crypto] crypto/NX: Set receive window credits to max number of CRBs in RxFIFO (Gustavo Duarte) [1725806] - [powerpc] crypto/nx: Initialize 842 high and normal RxFIFO control registers (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Add VAS user space API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define VAS_TX_WIN_OPEN ioctl API (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Initialize window attributes for GZIP coprocessor type (Gustavo Duarte) [1725806] - [powerpc] powerpc: Use mm_context vas_windows counter to issue CP_ABORT (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Free send window in VAS instance after credits returned (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Display process stuck message (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Do not use default credits for receive window (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Print CRB and FIFO values (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Return credits after handling fault (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Update CSB and notify process for fault CRBs (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup thread IRQ handler per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Take reference to PID and mm for user space windows (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Register NX with fault window ID and IRQ port value (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Setup fault window per VAS instance (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Alloc and setup IRQ and trigger port (Gustavo Duarte) [1725806] - [powerpc] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block (Gustavo Duarte) [1725806] - [powerpc] powerpc/xive: Define xive_native_alloc_irq_on_chip() (Gustavo Duarte) [1725806] - [powerpc] powerpc/powernv: remove the unused vas_win_paste_addr and vas_win_id functions (Gustavo Duarte) [1725806] - [tools] intel-speed-select: Fix speed-select-base-freq-properties output on CLX-N (Prarit Bhargava) [1828306] - [tools] tools/power/x86/intel-speed-select: Fix CLX-N package information output (Prarit Bhargava) [1828306] - [kernel] sched/isolation: Allow "isolcpus=" to skip unknown sub-parameters (Peter Xu) [1799014] - [arm64] arm64: tlb: skip tlbi broadcast, fix speculative tlb lookups (Andrea Arcangeli) [1820817] - [x86] pci: hv: Introduce hv_msi_entry (Mohammed Gamal) [1816740] - [pci] hv: Move retarget related structures into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Move hypercall related definitions into tlfs header (Mohammed Gamal) [1816740] - [pci] hv: Reorganize the code in preparation of hibernation (Mohammed Gamal) [1816740] - [pci] hv: Add a Hyper-V PCI interface driver for software backchannel interface (Mohammed Gamal) [1816740] - [pci] hv: Add a paravirtual backchannel in software (Mohammed Gamal) [1816740]- [include] i2c: fix a doc warning (David Arcari) [1826759] - [i2c] i2c: acpi: put device when verifying client fails (David Arcari) [1826759] - [i2c] i2c: i2c-core-of: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-base: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: i2c-core-acpi: convert to use i2c_new_client_device() (David Arcari) [1826759] - [i2c] i2c: fix bus recovery stop mode timing (David Arcari) [1826759] - [i2c] i2c: core: Use DEVICE_ATTR_*() helper macros (David Arcari) [1826759] - [include] i2c: remove unneeded 'extern' from function declatations (David Arcari) [1826759] - [include] i2c: add helper to check if a client has a driver attached (David Arcari) [1826759] - [include] i2c: fix header file kernel-doc warning (David Arcari) [1826759] - [misc] eeprom: at24: use devm_i2c_new_dummy_device() (David Arcari) [1826759] - [i2c] i2c: remove i2c_new_dummy() API (David Arcari) [1826759] - [media] media: dvb-frontends: cxd2820r_core: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88473: convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: dvb-frontends: mn88472: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83791d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83793d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83781d) convert to i2c_new_dummy_device (David Arcari) [1826759] - [media] media: ir-kbd-i2c: convert to i2c_new_dummy_device() (David Arcari) [1826759] - [misc] misc: eeprom: max6875: convert to i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (w83792d) convert to use devm_i2c_new_dummy_device (David Arcari) [1826759] - [hwmon] hwmon: (asb100) convert to i2c_new_dummy_device (David Arcari) [1826759] - [i2c] i2c: replace i2c_new_probed_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: smbus: Don't filter out duplicate alerts (David Arcari) [1826759] - [i2c] i2c: of: Populate fwnode in of_i2c_get_board_info() (David Arcari) [1826759] - [i2c] i2c: remove helpers for ref-counting clients (David Arcari) [1826759] - [i2c] i2c: core: fix use after free in of_i2c_notify (David Arcari) [1826759] - [i2c] i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present (David Arcari) [1826759] - [i2c] i2c: add support for filters optional properties (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add read only mode (David Arcari) [1826759] - [i2c] i2c: slave-eeprom: Add comment about address handling (David Arcari) [1826759] - [i2c] i2c-eeprom_slave: Add support for more eeprom models (David Arcari) [1826759] - [i2c] i2c: make i2c_unregister_device() ERR_PTR safe (David Arcari) [1826759] - [media] i2c: replace i2c_new_secondary_device with an ERR_PTR variant (David Arcari) [1826759] - [i2c] i2c: Drop unneeded check for of_node (David Arcari) [1826759] - [i2c] i2c: core: Tidy up handling of init_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI gpio IRQ handling into i2c_acpi_get_irq (David Arcari) [1826759] - [i2c] i2c: core: Move ACPI IRQ handling to probe time (David Arcari) [1826759] - [i2c] i2c: acpi: Factor out getting the IRQ from ACPI (David Arcari) [1826759] - [i2c] i2c: acpi: Use available IRQ helper functions (David Arcari) [1826759] - [i2c] i2c: core: Allow whole core to use i2c_dev_irq_from_resources (David Arcari) [1826759] - [i2c] i2c: core: add sysfs header (David Arcari) [1826759] - [i2c] i2c: add newly exported functions to the header, too (David Arcari) [1826759] - [i2c] i2c: mux: add sysfs header (David Arcari) [1826759] - [include] i2c: headers: reformat header comment and update copyright (David Arcari) [1826759] - [include] i2c: headers: update docs about I2C_CLIENT_* (David Arcari) [1826759] - [i2c] i2c: core: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: always have a named variable in arguments (David Arcari) [1826759] - [include] i2c: headers: don't use 'dev' as adapter variable (David Arcari) [1826759] - [i2c] i2c: mux: Use struct_size() in devm_kzalloc() (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (David Arcari) [1826759] - [i2c] i2c: acpi: export i2c_acpi_find_adapter_by_handle (David Arcari) [1826759] - [media] tua6100: Avoid build warnings (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (David Arcari) [1826759] - [i2c] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1826759] - [i2c] i2c: acpi: permit bus speed to be discovered after enumeration (David Arcari) [1826759] - [i2c] i2c: dev: fix potential memory leak in i2cdev_ioctl_rdwr (David Arcari) [1826759] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (David Arcari) [1826759] - [i2c] treewide: Add SPDX license identifier - Makefile/Kconfig (David Arcari) [1826759] - [i2c] i2c: core: add device-managed version of i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: improve return value handling of i2c_new_device and i2c_new_dummy (David Arcari) [1826759] - [i2c] i2c: core: apply 'is_suspended' check for SMBus, too (David Arcari) [1826759] - [i2c] i2c: core: ratelimit 'transfer when suspended' errors (David Arcari) [1826759] - [i2c] i2c: Prevent runtime suspend of adapter when Host Notify is required (David Arcari) [1826759] - [i2c] gcc-9: don't warn about uninitialized variable (David Arcari) [1826759] - [i2c] i2c: mux: populate the new *_atomic callbacks (David Arcari) [1826759] - [i2c] i2c: core: introduce callbacks for atomic transfers (David Arcari) [1826759] - [i2c] i2c: core: use I2C locking behaviour also for SMBUS (David Arcari) [1826759] - [i2c] i2c: core: remove use of in_atomic() (David Arcari) [1826759] - [include] i2c: apply coding style for struct i2c_adapter (David Arcari) [1826759] - [i2c] i2c: add extra check to safe DMA buffer helper (David Arcari) [1826759] - [i2c] i2c: Allow recovery of the initial IRQ by an I2C client device (David Arcari) [1826759] - [i2c] i2c: expand minor range when registering chrdev region (David Arcari) [1826759] - [i2c] i2c: core-smbus: don't trace smbus_reply data on errors (David Arcari) [1826759] - [i2c] i2c: of: Try to find an I2C adapter matching the parent (David Arcari) [1826759] - [include] i2c: acpi: Move I2C bits from acpi.h to i2c.h (David Arcari) [1826759] - [i2c] i2c: dev: prevent adapter retries and timeout being set as minus value (David Arcari) [1826759] - [i2c] i2c: add suspended flag and accessors for i2c adapters (David Arcari) [1826759] - [i2c] treewide: surround Kconfig file paths with double quotes (David Arcari) [1826759] - [i2c] i2c: acpi: Introduce i2c_acpi_get_i2c_resource() helper (David Arcari) [1826759] - [i2c] i2c: acpi: Use ACPI_FAILURE instead of !ACPI_SUCCESS (David Arcari) [1826759] - [i2c] i2c: acpi: Return error pointers from i2c_acpi_new_device() (David Arcari) [1826759] - [i2c] i2c: Clear client->irq in i2c_device_remove (David Arcari) [1826759] - [i2c] i2c: Remove unnecessary call to irq_find_mapping (David Arcari) [1826759] - [i2c] i2c: Fix kerneldoc for renamed i2c dma put function (David Arcari) [1826759] - [i2c] i2c: core: remove level of indentation in i2c_transfer (David Arcari) [1826759] - [i2c] i2c: core: remove outdated DEBUG output (David Arcari) [1826759] - [i2c] i2c: refactor function to release a DMA safe buffer (David Arcari) [1826759] - [i2c] i2c: don't use any __deprecated handling anymore (David Arcari) [1826759] - [i2c] i2c: remove deprecated attach_adapter callback (David Arcari) [1826759] - [i2c] i2c: core: Parse SDA hold time from firmware (David Arcari) [1826759] - [i2c] i2c: quirks: add zero length checks (David Arcari) [1826759] - [i2c] i2c: recovery: make pin init look like STOP (David Arcari) [1826759] - [i2c] i2c: recovery: rename variable for easier understanding (David Arcari) [1826759] - [i2c] i2c: recovery: add get_bus_free callback (David Arcari) [1826759] - [i2c] i2c: recovery: refactor recovery function (David Arcari) [1826759] - [i2c] i2c: recovery: require either get_sda or set_sda (David Arcari) [1826759] - [i2c] i2c: remove i2c_lock_adapter and use i2c_lock_bus directly (David Arcari) [1826759] - [media] media: tda1004x: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: tda18271: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: af9013: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: drxk_hard: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [media] media: rtl2830: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: pca9541: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (David Arcari) [1826759] - [i2c] i2c: mux: make use of __i2c_smbus_xfer (David Arcari) [1826759] - [kvm] KVM: PPC: Book3S HV: Fix H_CEDE return code for nested guests (David Gibson) [1778556] - [block] block/diskstats: more accurate approximation of io_ticks for slow disks (Ming Lei) [1811745] - [scsi] scsi: storvsc: Correctly set number of hardware queues for IDE disk (Cathy Avery) [1816702] - [netdrv] bonding/alb: make sure arp header is pulled before accessing it (Jarod Wilson) [1819408] - [netdrv] bonding/alb: properly access headers in bond_alb_xmit() (Jarod Wilson) [1819408] - [netdrv] bonding: rename AD_STATE_* to LACP_STATE_* (Jarod Wilson) [1819408] - [netdrv] bonding: fix active-backup transition after link failure (Jarod Wilson) [1819408] - [netdrv] bonding: move 802.3ad port state flags to uapi (Jarod Wilson) [1819408] - [netdrv] bonding: fix bond_neigh_init() (Jarod Wilson) [1819408] - [netdrv] bonding: fix state transition issue in link monitoring (Jarod Wilson) [1819408] - [netdrv] bonding: fix potential NULL deref in bond_update_slave_arr (Jarod Wilson) [1819408] - [netdrv] team: Always enable vlan tx offload (Hangbin Liu) [1827017] - [net] netlink: Use netlink header as base to calculate bad attribute offset (Andrea Claudi) [1825252] - [net] netlink: cap max groups which will be considered in netlink_bind() (Andrea Claudi) [1825252] - [net] tcp: repair: fix TCP_QUEUE_SEQ implementation (Paolo Abeni) [1823771] - [net] tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK (Paolo Abeni) [1823771] - [net] tcp: refine rule to allow EPOLLOUT generation under mem pressure (Paolo Abeni) [1823771] - [net] tcp: refine tcp_write_queue_empty() implementation (Paolo Abeni) [1823771] - [include] fib: add missing attribute validation for tun_id (Marcelo Leitner) [1823468] - [include] net/flow_dissector: remove unexist field description (Marcelo Leitner) [1823468] - [net] vlan: vlan_changelink() should propagate errors (Marcelo Leitner) [1823468] - [net] af_packet: set defaule value for tmo (Marcelo Leitner) [1823468] - [net] packet: fix data-race in fanout_flow_is_huge() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff refcounting in llc_conn_state_process() (Marcelo Leitner) [1823468] - [net] llc: fix another potential sk_buff leak in llc_ui_sendmsg() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_conn_service() (Marcelo Leitner) [1823468] - [net] llc: fix sk_buff leak in llc_sap_state_process() (Marcelo Leitner) [1823468] - [net] openvswitch: Fix conntrack cache with timeout (Patrlck Talbert) [1765587] - [net] openvswitch: Fix log message in ovs conntrack (Patrlck Talbert) [1765587] - [net] openvswitch: use after free in __ovs_ct_free_action() (Patrlck Talbert) [1765587] - [net] openvswitch: Add timeout support to ct action (Patrlck Talbert) [1765587] - [net] netfilter: Export nf_ct_{set, destroy}_timeout() (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: ctnl_timeout_find_get() returns incorrect pointer to type (Patrlck Talbert) [1765587] - [net] netfilter: remove ifdef around cttimeout in struct nf_conntrack_l4proto (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: decouple timeout policy from nfnetlink_cttimeout object (Patrlck Talbert) [1765587] - [net] netfilter: cttimeout: move ctnl_untimeout to nf_conntrack (Patrlck Talbert) [1765587] - [netdrv] ipvlan: do not use cond_resched_rcu() in ipvlan_process_multicast() (Davide Caratti) [1822906] - [netdrv] ipvlan: add cond_resched_rcu() while processing muticast backlog (Davide Caratti) [1822906] - [netdrv] ipvlan: don't deref eth hdr before checking it's set (Davide Caratti) [1822906] - [netdrv] ipvlan: do not add hardware address of master to its unicast filter list (Davide Caratti) [1822906] - [include] net/dst: do not confirm neighbor for vxlan and geneve pmtu update (Hangbin Liu) [1755686] - [net] sit: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] vti: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] tunnel: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [include] net/dst: add new function skb_dst_update_pmtu_no_confirm (Hangbin Liu) [1755686] - [netdrv] gtp: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] ip6_gre: do not confirm neighbor when do pmtu update (Hangbin Liu) [1755686] - [net] add bool confirm_neigh parameter for dst_ops.update_pmtu (Hangbin Liu) [1755686] - [net] neigh: support smaller retrans_time settting (Hangbin Liu) [1767282] - [include] net: core: add helper tcp_v6_gso_csum_prep (Josef Oskera) [1818097] - [net] ip_tunnel: fix interface lookup with no key (Guillaume Nault) [1822247] - [net] ipv4: fix a RCU-list lock in inet_dump_fib() (Guillaume Nault) [1822247] - [net] gre: fix uninit-value in __iptunnel_pull_header (Guillaume Nault) [1822247] - [net] netfilter: conntrack: allow insertion of clashing entries (Florian Westphal) [1821404] - [net] netfilter: conntrack: split resolve_clash function (Florian Westphal) [1821404] - [net] netfilter: conntrack: place confirm-bit setting in a helper (Florian Westphal) [1821404] - [net] netfilter: never get/set skb->tstamp (Florian Westphal) [1821404] - [net] netfilter: conntrack: remove two args from resolve_clash (Florian Westphal) [1821404] - [net] netfilter: conntrack: tell compiler to not inline nf_ct_resolve_clash (Florian Westphal) [1821404] - [netdrv] macsec: restrict to ethernet devices (Sabrina Dubroca) [1820524] - [netdrv] macsec: add missing attribute validation for port (Sabrina Dubroca) [1820524] - [net] netns: restore ops before calling ops_exit_list (Ivan Vecera) [1822568] - [net] netns: add pre_exit method to struct pernet_operations (Ivan Vecera) [1822568] - [include] net: dst: Force 4-byte alignment of dst_metrics (Guillaume Nault) [1822148] - [include] net: annotate lockless accesses to sk->sk_napi_id (Guillaume Nault) [1822148] - [net] Fix typo of SKB_SGO_CB_OFFSET (Guillaume Nault) [1822148] - [net] use indirect call wrappers for skb_copy_datagram_iter() (Guillaume Nault) [1822148] - [net] datagram: Make __skb_datagram_iter static (Guillaume Nault) [1822148] - [net] Fix Tx hash bound checking (Guillaume Nault) [1822148] - [net] openvswitch: add missing attribute validation for hash (Eelco Chaudron) [1819202] - [net] openvswitch: Distribute switch variables for initialization (Eelco Chaudron) [1819202] - [net] openvswitch: support asymmetric conntrack (Eelco Chaudron) [1819202] - [net] openvswitch: remove another BUG_ON() (Eelco Chaudron) [1819202] - [net] openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info() (Eelco Chaudron) [1819202] - [net] openvswitch: don't call pad_packet if not necessary (Eelco Chaudron) [1819202] - [net] openvswitch: add hash info to upcall (Eelco Chaudron) [1819202] - [net] openvswitch: select vport upcall portid directly (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the ovs_dp_cmd_new (Eelco Chaudron) [1819202] - [net] openvswitch: fix possible memleak on destroy flow-table (Eelco Chaudron) [1819202] - [net] openvswitch: add likely in flow_lookup (Eelco Chaudron) [1819202] - [net] openvswitch: simplify the flow_hash (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow-mask looking up (Eelco Chaudron) [1819202] - [net] openvswitch: optimize flow mask cache hash collision (Eelco Chaudron) [1819202] - [net] openvswitch: shrink the mask array if necessary (Eelco Chaudron) [1819202] - [net] openvswitch: convert mask list in mask array (Eelco Chaudron) [1819202] - [net] openvswitch: add flow-mask cache for performance (Eelco Chaudron) [1819202] - [net] openvswitch: Allow attaching helper in later commit (Eelco Chaudron) [1819202] - [net] openvswitch: change type of UPCALL_PID attribute to NLA_UNSPEC (Eelco Chaudron) [1819202] - [net] openvswitch: Make metadata_dst tunnel work in IP_TUNNEL_INFO_BRIDGE mode (Eelco Chaudron) [1819202] - [netdrv] mlxsw: spectrum_router: Remove unlikely user-triggerable warning (Ivan Vecera) [1821358] - [net] ipv6: Error when route does not have any valid nexthops (Ivan Vecera) [1821358] - [tools] selftests: mlxsw: Add a test for FIB offload indication (Ivan Vecera) [1821358] - [net] ipv6: Stop sending in-kernel notifications for each nexthop (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Create IPv6 multipath routes in one go (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Add / delete multiple IPv6 nexthops (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass array of routes to route handling functions (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Adjust IPv6 replace logic to new notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Pass multiple routes to work item (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Prepare function to return errors (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Remove processing of IPv6 append notifications (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notification for route delete (Ivan Vecera) [1821358] - [net] ipv6: Add IPv6 multipath notifications for add / replace (Ivan Vecera) [1821358] - [netdrv] netdevsim: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [netdrv] mlxsw: spectrum_router: Ignore IPv6 multipath notifications (Ivan Vecera) [1821358] - [net] ipv6: Extend notifier info for multipath routes (Ivan Vecera) [1821358] - [net] ipv6: export function to send route updates (Ivan Vecera) [1821358] - [net] sctp: fix possibly using a bad saddr with a given dst (Xin Long) [1821578] - [net] sctp: fix refcount bug in sctp_wfree (Xin Long) [1821578] - [net] sctp: move the format error check out of __sctp_sf_do_9_1_abort (Xin Long) [1821578] - [net] Remove switchdev_ops (Ivan Vecera) [1821402] - [net] switchdev: Replace port attr set SDO with a notification (Ivan Vecera) [1821402] - [net] switchdev: Complete removal of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Get rid of switchdev_port_attr_get() (Ivan Vecera) [1821402] - [net] Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1821402] - [net] fib_notifier: move fib_notifier_ops from struct net into per-net struct (Ivan Vecera) [1821186] - [net] Properly unlink GRO packets on overflow. (Ivan Vecera) [1805302] - [net] Add and use skb_list_del_init(). (Ivan Vecera) [1805302] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1805302] - [net] Init backlog NAPI's gro_hash. (Ivan Vecera) [1805302] - [net] gro: properly remove skb from list (Ivan Vecera) [1805302] - [net] core: trivial netif_receive_skb_list() entry point (Ivan Vecera) [1805302] - [net] Convert GRO SKB handling to list_head. (Ivan Vecera) [1805302] - [net] ipv6: don't auto-add link-local address to lag ports (Jarod Wilson) [1733953] - [tools] selftests: forwarding: vxlan_bridge_1d: use more proper tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: vxlan_bridge_1d: fix tos value (Hangbin Liu) [1816587] - [tools] selftests: forwarding: use proto icmp for {gretap, ip6gretap}_mac testing (Hangbin Liu) [1816587] - [tools] fcnal-test: Fix vrf argument in local tcp tests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for destination IP link-local (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP equals destination IP (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for multicast destination MAC mismatch (Hangbin Liu) [1816587] - [tools] selftests: forwarding: router: Add test case for source IP in class E (Hangbin Liu) [1816587] - [tools] selftests/net: make so_txtime more robust to timer variance (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add speed and auto-negotiation test (Hangbin Liu) [1816587] - [tools] selftests: forwarding: lib.sh: Add wait for dev with timeout (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add ethtool_lib.sh (Hangbin Liu) [1816587] - [tools] selftests: net: avoid ptl lock contention in tcp_mmap (Hangbin Liu) [1816587] - [tools] selftest: net: add alternative names test (Hangbin Liu) [1816587] - [tools] selftest: net: add some traceroute tests (Hangbin Liu) [1816587] - [tools] selftests: net: Fix printf format warnings on arm (Hangbin Liu) [1816587] - [tools] selftests: net: Use size_t and ssize_t for counting file size (Hangbin Liu) [1816587] - [tools] selftests: Make l2tp.sh executable (Hangbin Liu) [1816587] - [tools] selftests/net: add nettest to .gitignore (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for `ip nexthop flush proto XX` (Hangbin Liu) [1816587] - [tools] selftest: A few cleanups for fib_nexthops.sh (Hangbin Liu) [1816587] - [tools] selftests: Fix get_ifidx and callers in nettest.c (Hangbin Liu) [1816587] - [tools] selftests: Fix detection of nettest command in fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add l2tp tests (Hangbin Liu) [1816587] - [tools] selftests: nettest: fix spelling mistake: "potocol" -> "protocol" (Hangbin Liu) [1816587] - [tools] selftests: Add use case section to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 netfilter tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 runtime tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 address bind tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 udp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 tcp tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv6 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Add ipv4 ping tests to fcnal-test (Hangbin Liu) [1816587] - [tools] selftests: Setup for functional tests for fib and socket lookups (Hangbin Liu) [1816587] - [tools] selftests: Add nettest (Hangbin Liu) [1816587] - [tools] selftests/net: add missing gitignores (ipv6_flowlabel) (Hangbin Liu) [1816587] - [tools] selftests: txring_overwrite: fix incorrect test of mmap() return value (Hangbin Liu) [1816587] - [tools] selftests/net: skip psock_tpacket test if KALLSYMS was not enabled (Hangbin Liu) [1816587] - [tools] selftests: rtnetlink: skip ipsec offload tests if netdevsim isn't present (Hangbin Liu) [1816587] - [tools] selftests: Add test cases for nexthop objects (Hangbin Liu) [1816587] - [tools] selftests/net: ipv6 flowlabel (Hangbin Liu) [1816587] - [tools] selftests/net: SO_TXTIME with ETF and FQ (Hangbin Liu) [1816587] - [tools] selftests: fib-onlink: Make quiet by default (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_afpackettests (Hangbin Liu) [1816587] - [tools] selftests/net: correct the return value for run_netsocktests (Hangbin Liu) [1816587] - [tools] selftests: forwarding: Add reverse path forwarding (RPF) test cases (Hangbin Liu) [1816587] - [tools] selftest/net: Remove duplicate header (Hangbin Liu) [1816587] - [tools] selftests: fib_tests: sleep after changing carrier. again. (Hangbin Liu) [1816587] - [tools] selftests: net: use LDLIBS instead of LDFLAGS (Hangbin Liu) [1816587] - [tools] selftests/net: add txring_overwrite (Hangbin Liu) [1816587] - [tools] fib_tests: Add tests for invalid metric on route (Hangbin Liu) [1816587] - [tools] selftests: forwarding: test for bridge sticky flag (Hangbin Liu) [1816587] - [tools] selftests: net: Test headroom handling of ip6_gre devices (Hangbin Liu) [1816587] - [net] Don't disable interrupts in __netdev_alloc_skb() (Andrea Claudi) [1811207] - [net] Don't disable interrupts in napi_alloc_frag() (Andrea Claudi) [1811207] - [net] ipv4: ensure rcu_read_lock() in cipso_v4_error() (Matteo Croce) [1720708] - [net] ipv4: add sanity checks in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: ensure rcu_read_lock() in ipv4_link_failure() (Matteo Croce) [1720708] - [net] ipv4: recompile ip options in ipv4_link_failure (Matteo Croce) [1720708] - [net] avoid use IPCB in cipso_v4_error (Matteo Croce) [1720708] - [net] Add __icmp_send helper. (Matteo Croce) [1720708] - [net] ipv4: defensive cipso option parsing (Matteo Croce) [1720708] - [net] netfilter: nf_queue: enqueue skbs with NULL dst (Matteo Croce) [1786116]- [powerpc] powerpc/pseries/ddw: Extend upper limit for huge DMA window for persistent memory (Steve Best) [1817596] - [cpuidle] cpuidle: haltpoll: allow force loading on hosts without the REALTIME hint (David Arcari) [1825353] - [cpuidle] cpuidle: dt: Support hierarchical CPU idle states (David Arcari) [1825353] - [of] of: base: Add of_get_cpu_state_node() to get idle states for a CPU node (David Arcari) [1825353] - [cpuidle] cpuidle: Allow idle states to be disabled by default (David Arcari) [1825353] - [cpuidle] cpuidle: Drop unnecessary type cast in cpuidle_poll_time() (David Arcari) [1825353] - [cpuidle] cpuidle: Fix cpuidle_driver_state_disabled() (David Arcari) [1825353] - [cpuidle] cpuidle: use first valid target residency as poll time (David Arcari) [1825353] - [cpuidle] cpuidle: Drop disabled field from struct cpuidle_state (David Arcari) [1825353] - [cpuidle] cpuidle: Pass exit latency limit to cpuidle_use_deepest_state() (David Arcari) [1825353] - [include] cpuidle: Allow idle injection to apply exit latency limit (David Arcari) [1825353] - [thermal] cpuidle: play_idle: Increase the resolution to usec (David Arcari) [1825353] - [cpuidle] cpuidle: Use nanoseconds as the unit of time (David Arcari) [1825353] - [cpuidle] cpuidle: menu: Allow tick to be stopped if PM QoS is used (David Arcari) [1825353] - [cpuidle] cpuidle: Consolidate disabled state checks (David Arcari) [1825353] - [cpuidle] cpuidle: Do not unset the driver if it is there already (David Arcari) [1825353] - [cpuidle] cpuidle: haltpoll: Take 'idle=' override into account (David Arcari) [1825353] - [cpuidle] cpuidle-haltpoll: Enable kvm guest polling when dedicated physical CPUs are available (David Arcari) [1825353] - [fs] gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0 (Abhijith Das) [1655566] - [fs] gfs2: Another gfs2_find_jhead fix (Abhijith Das) [1655566] - [fs] gfs2: read journal in large chunks (Abhijith Das) [1655566] - [fs] gfs2: add a helper function to get_log_header that can be used elsewhere (Abhijith Das) [1655566] - [fs] gfs2: changes to gfs2_log_XXX_bio (Abhijith Das) [1655566] - [fs] gfs2: add more timing info to journal recovery process (Abhijith Das) [1655566] - [mm] mm: hugetlb controller for cgroup v2 (Joel Savitz) [1810728] - [arm64] crypto: arm64/aes-ce - implement 5 way interleave for ECB, CBC and CTR (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce - add 5 way interleave routines (Mark Salter) [1826982] - [arm64] crypto: arm64/sha2-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/sha1-ce - correct digest for empty data in finup (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - don't access already-freed walk.iv (Mark Salter) [1826982] - [arm64] crypto: arm64/cbcmac - handle empty messages in same way as template (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - update IV after partial final CTR block (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-neonbs - fix returning final keystream block (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif-ce - cleanup and optimizations (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - remove dead code (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - revert to C code for short inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-neon - bump priority to 150 (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash - register PMULL variants as separate algos (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - don't use an atomic walk needlessly (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ccm - fix bugs in non-NEON fallback routine (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - ensure XTS mask is always loaded (Mark Salter) [1826982] - [arm64] crypto: arm64/aes - fix handling sub-block CTS-CBC inputs (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - improve XTS mask handling (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - add support for CTS-CBC mode (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - revert NEON yield for skciphers (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-blk - remove pointless (u8 *) casts (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - implement non-Crypto Extensions alternative (Mark Salter) [1826982] - [arm64] crypto: arm64/crct10dif - preparatory refactor for 8x8 PMULL version (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-modes - get rid of literal load of addend vector (Mark Salter) [1826982] - [arm64] crypto: arm64/sm4-ce - check for the right CPU feature bit (Mark Salter) [1826982] - [arm64] crypto: arm64/gcm-aes-ce - fix no-NEON fallback code (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-gcm-ce - fix scatterwalk API violation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - implement 4-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/ghash-ce - replace NEON yield check with block limit (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - don't reload key schedule if avoidable (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - implement 2-way aggregation (Mark Salter) [1826982] - [arm64] crypto: arm64/aes-ce-gcm - operate on two input blocks at a time (Mark Salter) [1826982] - [mm] mm, slub: prevent kmalloc_node crashes and memory leaks (Rafael Aquini) [1819839] - [mm] mm: slub: be more careful about the double cmpxchg of freelist (Rafael Aquini) [1819839] - [mm] mm: slub: add missing TID bump in kmem_cache_alloc_bulk() (Rafael Aquini) [1819839] - [mm] mm/slub.c: avoid slub allocation while holding list_lock (Rafael Aquini) [1819839] - [mm] mm/slub.c: clean up validate_slab() (Rafael Aquini) [1819839] - [mm] mm: slub: print the offset of fault addresses (Rafael Aquini) [1819839] - [mm] hugetlbfs: don't retry when pool page allocations start to fail (Rafael Aquini) [1727288] - [mm] mm, compaction: raise compaction priority after it withdrawns (Rafael Aquini) [1727288] - [mm] mm, reclaim: cleanup should_continue_reclaim() (Rafael Aquini) [1727288] - [mm] mm, reclaim: make should_continue_reclaim perform dryrun detection (Rafael Aquini) [1727288]- [tools] bpf: selftests: remove test_bpftool_build.sh from TEST_PROGS (Yauheni Kaliuta) [1813365] - [tools] libbpf: Support .text sub-calls relocations (Yauheni Kaliuta) [1813365] - [tools] libbpf: Sanitize global functions (Yauheni Kaliuta) [1813365] - [kernel] workqueue: Add RCU annotation for pwq list walk (Yauheni Kaliuta) [1813365] - [kernel] perf/core: Add SRCU annotation for pmus list walk (Yauheni Kaliuta) [1813365] - [net] kcm: disable preemption in kcm_parse_func_strparser() (Yauheni Kaliuta) [1813365] - [net] kcm: use BPF_PROG_RUN (Yauheni Kaliuta) [1813365] - [kernel] bpf: clarify description for CONFIG_BPF_EVENTS (Yauheni Kaliuta) [1813365] - [lib] test_bpf: Fix a new clang warning about xor-ing two numbers (Yauheni Kaliuta) [1813365] - [include] bpf: add include guard to tnum.h (Yauheni Kaliuta) [1813365] - [tools] libbpf: handle symbol versioning properly for libbpf.a (Yauheni Kaliuta) [1813365] - [net] bpf, devmap: Pass lockdep expression to RCU lists (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix Makefile' libbpf symbol mismatch diagnostic (Yauheni Kaliuta) [1813365] - [net] xdp: Fix cleanup on map free for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools, bpf: Fix build for 'make -s tools/bpf O=' (Yauheni Kaliuta) [1813365] - [tools] libbpf: Fix passing uninitialized bytes to setsockopt (Yauheni Kaliuta) [1813365] - [tools] selftests: bpf: Skip write only files in debugfs (Yauheni Kaliuta) [1813365] - [net] xdp: Handle device unregister for devmap_hash map type (Yauheni Kaliuta) [1813365] - [net] ipv4: Add lockdep condition to fix for_each_entry() (Yauheni Kaliuta) [1813365] - [kernel] rcu/sync: Remove custom check for RCU readers (Yauheni Kaliuta) [1813365] - [kernel] rcu: Add support for consolidated-RCU reader checking (Yauheni Kaliuta) [1813365] - [kernel] rcu: Remove redundant debug_locks check in rcu_read_lock_sched_held() (Yauheni Kaliuta) [1813365] - [net] xdp: Prevent overflow in devmap_hash cost calculation for 32-bit builds (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Add a workaround for asm_inline (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: Fix build for task_fd_query_user.c (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: Don't leak server_fd in test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: Use !building_out_of_srctree to determine srctree (Yauheni Kaliuta) [1813365] - [net] bpf: Clean up indentation issue in BTF kflag processing (Yauheni Kaliuta) [1813365] - [tools] libbpf: Teach btf_dumper to emit stand-alone anonymous enum definitions (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: adjust strobemeta loop to satisfy latest clang (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: delete unused variables in test_sysctl (Yauheni Kaliuta) [1813365] - [tools] libbpf: fix false uninitialized variable warning (Yauheni Kaliuta) [1813365] - [tools] libbpf: Remove getsockopt() check for XDP_OPTIONS (Yauheni Kaliuta) [1813365] - [net] xdp: Fix race in dev_map_hash_update_elem() when replacing element (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_tcp_rtt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_inherit (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_multi (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt_sk (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: convert test_sockopt (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add test__join_cgroup helper (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: precision tracking tests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: fix endianness issues in test_sysctl (Yauheni Kaliuta) [1813365] - [arm64] arm64: bpf: optimize modulo operation (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for bpf line info (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: add missing \n to CHECK_FAIL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: fix verbose mode garbage (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Fix a typo in test_offload.py (Yauheni Kaliuta) [1813365] - [net] bpf: fix error check in bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: do not link twice against libbpf.a in Makefile (Yauheni Kaliuta) [1813365] - [tools] tools: bpf: account for generated feature/ and libbpf/ directories (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: improve and check builds for different make invocations (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: ignore make built-in rules for getting kernel version (Yauheni Kaliuta) [1813365] - [s390] bpf: s390: add JIT support for multi-function programs (Yauheni Kaliuta) [1746980 1813365] - [tools] selftests/bpf: remove wrong nhoff in flow dissector test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove unused ret (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove asserts from subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: remove global fail/success counts (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__skip (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add precision tracking test (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: verifier precise tests (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf.h (Yauheni Kaliuta) [1813365] - [net] bpf: introduce verifier internal test flag (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add "bpftool map freeze" subcommand (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: show frozen status for maps (Yauheni Kaliuta) [1813365] - [uapi] bpf: clarify when bpf_trace_printk discards lines (Yauheni Kaliuta) [1813365] - [samples] samples: bpf: syscall_nrs: use mmap2 if defined (Yauheni Kaliuta) [1813365] - [tools] libbpf: use LFS (_FILE_OFFSET_BITS) instead of direct mmap2 syscall (Yauheni Kaliuta) [1813365] - [net] bpf: add new BPF_BTF_GET_NEXT_ID syscall command (Yauheni Kaliuta) [1813365] - [net] bpf: add BTF ids in procfs for file descriptors to BTF objects (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add sockopt clone/inheritance test (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: support cloning sk storage on accept() (Yauheni Kaliuta) [1813365] - [net] bpf: export bpf_map_inc_not_zero (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add documentation for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add bash-completion for net attach/detach (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net detach command to detach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add net attach command to attach XDP on interface (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: compile with $(EXTRA_WARNINGS) (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add feature check for zlib (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: fix reading from /proc/config.gz (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd explain bpf_fib_lookup return codes (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: make xdp_fwd more practically usable via devmap lookup (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: xdp_fwd rename devmap name to be xdp_tx_ports (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: drop extra trailing tab (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: test__printf -> printf (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: test_progs: switch to open_memstream (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 5 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add loop test 4 (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: extend sockopt_sk selftest with TCP_CONGESTION use case (Yauheni Kaliuta) [1813365] - [net] bpf: always allocate at least 16 bytes for setsockopt hook (Yauheni Kaliuta) [1813365] - [tools] tools: bpftool: add support for reporting the effective cgroup progs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: add test for bpf_tcp_gen_syncookie (Yauheni Kaliuta) [1813365] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1813365] - [net] bpf: add bpf_tcp_gen_syncookie helper (Yauheni Kaliuta) [1813365] - [net] tcp: add skb-less helpers to retrieve SYN cookie (Yauheni Kaliuta) [1813365] - [net] tcp: tcp_syn_flood_action read port from socket (Yauheni Kaliuta) [1813365] - [net] tcp: rate limit synflood warnings further (Yauheni Kaliuta) [1813365] - [tools] tools: Add definitions for devmap_hash map type (Yauheni Kaliuta) [1813365] - [tools] tools/libbpf_probes: Add new devmap_hash type (Yauheni Kaliuta) [1813365] - [tools] tools/include/uapi: Add devmap_hash BPF map type (Yauheni Kaliuta) [1813365] - [net] xdp: Add devmap_hash map type for looking up devices by hashed index (Yauheni Kaliuta) [1813365] - [net] xdp: Refactor devmap allocation code for reuse (Yauheni Kaliuta) [1813365] - [include] include/bpf.h: Remove map_insert_ctx() stubs (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert send_signal.c to use subtests (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert bpf_verif_scale.c to sub-tests API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP (Yauheni Kaliuta) [1813365] - [tools] bpf/flow_dissector: support ipv6 flow_label and BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: support BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG (Yauheni Kaliuta) [1813365] - [tools] tools/bpf: sync bpf_flow_keys flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: support flags in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1813365] - [documentation] bpf/flow_dissector: document flags (Yauheni Kaliuta) [1813365] - [net] bpf/flow_dissector: pass input flags to BPF flow dissector program (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: Add selftests for bpf_perf_event_output (Yauheni Kaliuta) [1813365] - [net] bpf: Allow bpf_skb_event_output for a few prog types (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: remove perf buffer helpers (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: switch trace_output sample to perf_buffer API (Yauheni Kaliuta) [1813365] - [samples] samples/bpf: convert xdp_sample_pkts_user to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: switch test_tcpnotify to perf_buffer API (Yauheni Kaliuta) [1813365] - [tools] selftests/bpf: convert test_get_stack_raw_tp to perf_buffer API (Yauheni Kaliuta) [1813365] - [block] block, bfq: fix use-after-free in bfq_idle_slice_timer_body (Ming Lei) [1823596] - [block] block, bfq: fix overwrite of bfq_group pointer in bfq_find_set_group() (Ming Lei) [1823596] - [block] block, bfq: clarify the goal of bfq_split_bfqq() (Ming Lei) [1823596] - [block] block, bfq: get a ref to a group when adding it to a service tree (Ming Lei) [1823596] - [block] block, bfq: remove ifdefs from around gets/puts of bfq groups (Ming Lei) [1823596] - [block] block, bfq: extend incomplete name of field on_st (Ming Lei) [1823596] - [block] block, bfq: get extra ref to prevent a queue from being freed during a group move (Ming Lei) [1823596] - [block] block, bfq: do not insert oom queue into position tree (Ming Lei) [1823596] - [block] block, bfq: do not plug I/O for bfq_queues with no proc refs (Ming Lei) [1823596] - [block] block, bfq: improve arithmetic division in bfq_delta() (Ming Lei) [1823596] - [block] block/bfq: remove unused bfq_class_rt which never used (Ming Lei) [1823596] - [block] block: Prevent hung_check firing during long sync IO (Ming Lei) [1813383] - [block] brd: check and limit max_part par (Ming Lei) [1790403]- [char] random: silence a lockdep splat with printk() (Brian Masney) [1798900] - [net] SUNRPC: fix krb5p mount to provide large enough buffer in rq_rcvsize (Steve Dickson) [1825388] - [include] percpu-refcount: Use normal instead of RCU-sched" (Waiman Long) [1803822] - [kernel] locking/spinlock/debug: Fix various data races (Waiman Long) [1803822] - [kernel] locktorture: Forgive apparent unfairness if CPU hotplug (Waiman Long) [1803822] - [kernel] locktorture: Use private random-number generators (Waiman Long) [1803822] - [tools] locktorture: Allow CPU-hotplug to be disabled via --bootargs (Waiman Long) [1803822] - [kernel] locking: locktorture: Do not include rwlock.h directly (Waiman Long) [1803822] - [kernel] locktorture: Replace strncmp() with str_has_prefix() (Waiman Long) [1803822] - [kernel] locking/rtmutex: rcu: Add WRITE_ONCE() to rt_mutex ->owner (Waiman Long) [1803822] - [arm64] arm64/spinlock: fix a -Wunused-function warning (Waiman Long) [1803822] - [arm64] locking/osq: Use optimized spinning loop for arm64 (Waiman Long) [1803822] - [kernel] locking/qspinlock: Fix inaccessible URL of MCS lock paper (Waiman Long) [1803822] - [include] string.h: Add str_has_prefix() helper function (Waiman Long) [1803822] - [kernel] futex: Remove {get,drop}_futex_key_refs() (Waiman Long) [1803822] - [kernel] futex: Remove pointless mmgrap() + mmdrop() (Waiman Long) [1803822] - [kernel] futex: Unbreak futex hashing (Waiman Long) [1803822] - [fs] futex: Fix inode life-time issue (Waiman Long) [1803822] - [kernel] futex: Fix kernel-doc notation warning (Waiman Long) [1803822] - [kernel] futex: Prevent exit livelock (Waiman Long) [1803822] - [kernel] futex: Provide distinct return value when owner is exiting (Waiman Long) [1803822] - [include] futex: Add mutex around futex exit (Waiman Long) [1803822] - [kernel] futex: Provide state handling for exec() as well (Waiman Long) [1803822] - [kernel] futex: Sanitize exit state handling (Waiman Long) [1803822] - [kernel] futex: Mark the begin of futex exit explicitly (Waiman Long) [1803822] - [kernel] futex: Set task::futex_state to DEAD right after handling futex exit (Waiman Long) [1803822] - [kernel] futex: Split futex_mm_release() for exit/exec (Waiman Long) [1803822] - [kernel] exit/exec: Seperate mm_release() (Waiman Long) [1803822] - [kernel] futex: Replace PF_EXITPIDONE with a state (Waiman Long) [1803822] - [kernel] futex: Move futex exit handling into futex code (Waiman Long) [1803822] - [kernel] futex: Prevent robust futex exit race (Waiman Long) [1803822] - [kernel] futex: Drop leftover wake_q_add() comment (Waiman Long) [1803822] - [kernel] fork: Provide a function for copying init_mm (Waiman Long) [1803822] - [kernel] y2038: futex: Move compat implementation into futex.c (Waiman Long) [1803822] - [fs] nfsd: Fix races between nfsd4_cb_release() and nfsd4_shutdown_callback() ("J. Bruce Fields") [1797484] - [fs] nfsd: minor 4.1 callback cleanup ("J. Bruce Fields") [1797484] - [video] vgacon: Fix a UAF in vgacon_invert_region (Vladis Dronov) [1818732] {CVE-2020-8647 CVE-2020-8649} - [powerpc] powerpc/xive: Use XIVE_BAD_IRQ instead of zero to catch non configured IPIs (David Gibson) [1773891] - [clocksource] hyper-v: Make sched clock return nanoseconds correctly (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Set TSC clocksource as default w/ InvariantTSC (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Untangle stimers and timesync from clocksources (Mohammed Gamal) [1816731] - [clocksource] hyper-v: Reserve PAGE_SIZE space for tsc page (Mohammed Gamal) [1816731] - [clocksource] x86/hyperv: Initialize clockevents earlier in CPU onlining (Mohammed Gamal) [1816731] - [x86] hyperv: Allow guests to enable InvariantTSC (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Suspend/resume the synic for hibernation (Mohammed Gamal) [1816731] - [hv] hv: vmbus: Break out synic enable and disable operations (Mohammed Gamal) [1816731] - [x86] hyperv: Set pv_info.name to "Hyper-V" (Mohammed Gamal) [1816731] - [x86] hyperv: Hide pv_ops access for CONFIG_PARAVIRT=n (Mohammed Gamal) [1816731] - [clocksource] hyperv: Enable TSC page clocksource on 32bit (Mohammed Gamal) [1816731] - [clocksource] hyperv: Add Hyper-V specific sched clock function (Mohammed Gamal) [1816731] - [clocksource] hyperv: Allocate Hyper-V TSC page statically (Mohammed Gamal) [1816731] - [clocksource] Continue making Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [clocksource] Make Hyper-V clocksource ISA agnostic (Mohammed Gamal) [1816731] - [tools] hv: Reopen the devices if read() or write() returns errors (Mohammed Gamal) [1824182] - [tools] hv: add vmbus testing tool (Mohammed Gamal) [1824182] - [tools] hv: move to tools buildsystem (Mohammed Gamal) [1824182] - [tools] hv: kvp: eliminate 'may be used uninitialized' warning (Mohammed Gamal) [1824182] - [tools] hv: fix typos in toolchain (Mohammed Gamal) [1824182] - [tools] hv: fix KVP and VSS daemons exit code (Mohammed Gamal) [1824182] - [tools] hv: fixed Python pep8/flake8 warnings for lsvmbus (Mohammed Gamal) [1824182] - [tools] hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1 (Mohammed Gamal) [1824182] - [tools] hv: fcopy: set 'error' in case an unknown operation was requested (Mohammed Gamal) [1824182] - [tools] hv: Fix a bug in the key delete code (Mohammed Gamal) [1824182] - [tools] hv: vss: fix loop device detection (Mohammed Gamal) [1824182] - [hv] hv: vmbus: Introduce latency testing (Mohammed Gamal) [1824182] - [tools] hv: update lsvmbus to be compatible with python3 (Mohammed Gamal) [1824182]- [hwtracing] coresight: etm4x: Add kernel configuration for CONTEXTID (Michael Petlan) [1818835] - [samples] samples/bpf: fix build by setting HAVE_ATTR_TEST to zero (Michael Petlan) [1818835] - [tools] perf metricgroup: Fix printing event names of metric group with multiple events (Michael Petlan) [1818835] - [tools] perf script: Fix invalid LBR/binary mismatch error (Michael Petlan) [1818835] - [tools] perf c2c: Fix return type for histogram sorting comparision functions (Michael Petlan) [1818835] - [tools] perf session: Fix decompression of PERF_RECORD_COMPRESSED records (Michael Petlan) [1818835] - [tools] perf tools: Fix time sorting (Michael Petlan) [1818835] - [tools] perf tools: Remove unused trace_find_next_event() (Michael Petlan) [1818835] - [tools] perf scripting engines: Iterate on tep event arrays directly (Michael Petlan) [1818835] - [tools] perf tools: Make usage of test_attr__* optional for perf-sys.h (Michael Petlan) [1818835] - [tools] perf kmem: Fix memory leak in compact_gfp_flags() (Michael Petlan) [1818835] - [tools] perf c2c: Fix memory leak in build_cl_output() (Michael Petlan) [1818835] - [tools] perf tools: Fix mode setting in copyfile_mode_ns() (Michael Petlan) [1818835] - [tools] perf annotate: Fix multiple memory and file descriptor leaks (Michael Petlan) [1818835] - [tools] perf tools: Fix resource leak of closedir() on the error paths (Michael Petlan) [1818835] - [tools] perf evlist: Fix fix for freed id arrays (Michael Petlan) [1818835] - [tools] perf annotate: Don't return -1 for error when doing BPF disassembly (Michael Petlan) [1818835] - [tools] perf annotate: Return appropriate error code for allocation failures (Michael Petlan) [1818835] - [tools] perf annotate: Fix arch specific ->init() failure errors (Michael Petlan) [1818835] - [tools] perf annotate: Propagate the symbol__annotate() error return (Michael Petlan) [1818835] - [tools] perf annotate: Fix the signedness of failure returns (Michael Petlan) [1818835] - [tools] perf annotate: Propagate perf_env__arch() error (Michael Petlan) [1818835] - [tools] perf evsel: Fall back to global 'perf_env' in perf_evsel__env() (Michael Petlan) [1818835] - [tools] perf tools: Propagate get_cpuid() error (Michael Petlan) [1818835] - [tools] perf jevents: Fix period for Intel fixed counters (Michael Petlan) [1818835] - [tools] perf script brstackinsn: Fix recovery from LBR/binary mismatch (Michael Petlan) [1818835] - [tools] perf docs: Correct and clarify jitdump spec (Michael Petlan) [1818835] - [tools] perf inject jit: Fix JIT_CODE_MOVE filename (Michael Petlan) [1818835] - [tools] perf map: Fix overlapped map handling (Michael Petlan) [1818835] - [tools] perf vendor events s390: Use s390 machine name instead of type 8561 (Michael Petlan) [1818835] - [tools] perf llvm: Don't access out-of-scope array (Michael Petlan) [1818835] - [tools] perf docs: Allow man page date to be specified (Michael Petlan) [1818835] - [tools] perf tests: Avoid raising SEGV using an obvious NULL dereference (Michael Petlan) [1818835] - [tools] libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind build failure on i386 systems (Michael Petlan) [1818835] - [tools] perf parser: Remove needless include directives (Michael Petlan) [1818835] - [tools] perf build: Add detection of java-11-openjdk-devel package (Michael Petlan) [1818835] - [tools] perf jvmti: Include JVMTI support for s390 (Michael Petlan) [1818835] - [tools] perf evlist: Fix access of freed id arrays (Michael Petlan) [1818835] - [tools] perf stat: Fix free memory access / memory leaks in metrics (Michael Petlan) [1818835] - [tools] perf tools: Replace needless mmap.h with what is needed, event.h (Michael Petlan) [1818835] - [tools] perf evsel: Move config terms to a separate header (Michael Petlan) [1818835] - [tools] perf evlist: Remove unused perf_evlist__fprintf() method (Michael Petlan) [1818835] - [tools] perf evsel: Introduce evsel_fprintf.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove need for symbol_conf in evsel_fprintf.c (Michael Petlan) [1818835] - [tools] perf copyfile: Move copyfile routines to separate files (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__poll() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__alloc_pollfd() function (Michael Petlan) [1818835] - [tools] libperf: Add libperf_init() call to the tests (Michael Petlan) [1818835] - [tools] libperf: Merge libperf_set_print() into libperf_init() (Michael Petlan) [1818835] - [tools] libperf: Add libperf dependency for tests targets (Michael Petlan) [1818835] - [tools] libperf: Use sys/types.h to get ssize_t, not unistd.h (Michael Petlan) [1818835] - [tools] perf tools: No need to include internal/lib.h from util/util.h (Michael Petlan) [1818835] - [tools] libperf: Move 'page_size' global variable to libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add_fd() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__id_add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__read_format() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__first()/last() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__alloc_id/perf_evsel__free_id functions (Michael Petlan) [1818835] - [tools] libperf: Move 'heads' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'ids' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Move 'sample_id' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add missing 'struct xyarray' forward declaration (Michael Petlan) [1818835] - [tools] libperf: Move 'pollfd' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'mmap_len' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'nr_mmaps' from 'struct evlist' to 'struct perf_evlist' (Michael Petlan) [1818835] - [tools] libperf: Move 'system_wide' from 'struct evsel' to 'struct perf_evsel' (Michael Petlan) [1818835] - [tools] libperf: Add 'flush' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'event_copy' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add 'overwrite' to 'struct perf_mmap' (Michael Petlan) [1818835] - [tools] libperf: Add prev/start/end to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'refcnt' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'cpu' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'fd' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add 'mask' to struct perf_mmap (Michael Petlan) [1818835] - [tools] libperf: Add perf_mmap struct (Michael Petlan) [1818835] - [tools] perf evlist: Adopt backwards ring buffer state enum (Michael Petlan) [1818835] - [tools] libperf: Link libapi.a in libperf.so (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__purge() to evlist__purge() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__exit() to evlist__exit() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__alloc_mmap() to evlist__alloc_mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__munmap() to evlist__munmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_evlist__mmap() to evlist__mmap() (Michael Petlan) [1818835] - [tools] perf tools: Rename 'struct perf_mmap' to 'struct mmap' (Michael Petlan) [1818835] - [tools] tools: Add missing stdio.h include to asm/bug.h header (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for tep plugins APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Move traceevent plugins in its own subdirectory (Michael Petlan) [1818835] - [tools] libtraceevent: Add tep_get_event() in event-parse.h (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, changes in event printing APIs (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages fix, rename tep_ref_get() to tep_get_ref() (Michael Petlan) [1818835] - [tools] libtraceevent: Man pages for libtraceevent event print related API (Michael Petlan) [1818835] - [tools] libtraceevent: Round up in tep_print_event() time precision (Michael Petlan) [1818835] - [tools] perf record: Move restricted maps check to after a possible fallback to not collect kernel samples (Michael Petlan) [1818835] - [tools] perf record: Fix priv level with branch sampling for paranoid=2 (Michael Petlan) [1818835] - [tools] perf probe: Fix to clear tev->nargs in clear_probe_trace_event() (Michael Petlan) [1818835] - [tools] perf probe: Skip same probe address for a given line (Michael Petlan) [1818835] - [tools] perf tests: Fix static build test (Michael Petlan) [1818835] - [tools] perf kvm stat: Set 'trace_cycles' as default event for 'perf kvm record' in powerpc (Michael Petlan) [1818835] - [tools] perf kvm: Add arch neutral function to choose event for perf kvm record (Michael Petlan) [1818835] - [tools] perf kvm: Move kvm-stat header file from conditional inclusion to common include section (Michael Petlan) [1818835] - [tools] perf test: Fix spelling mistake "allos" -> "allocate" (Michael Petlan) [1818835] - [tools] perf stat: Fix a segmentation fault when using repeat forever (Michael Petlan) [1818835] - [tools] perf stat: Reset previous counts on repeat with interval (Michael Petlan) [1818835] - [tools] tools lib traceevent: Convert remaining pusers to p (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate .c file (Michael Petlan) [1818835] - [tools] perf memswap: Adopt 'struct u64_swap' from evsel.h (Michael Petlan) [1818835] - [tools] perf tools: Move event synthesizing routines to separate header (Michael Petlan) [1818835] - [tools] perf auxtrace: Add missing 'struct perf_sample' forward declaration (Michael Petlan) [1818835] - [tools] perf sched: Add missing event.h include directive (Michael Petlan) [1818835] - [tools] perf annotate: Add missing machine.h include directive (Michael Petlan) [1818835] - [tools] perf hist: Add missing 'struct branch_stack' forward declaration (Michael Petlan) [1818835] - [tools] perf python: Remove debug.h (Michael Petlan) [1818835] - [tools] perf callchain: Remove needless event.h include (Michael Petlan) [1818835] - [tools] perf stat: Move perf_stat_synthesize_config() to event.h (Michael Petlan) [1818835] - [tools] perf event: Move perf_event__synthesize* to event.h (Michael Petlan) [1818835] - [tools] perf env: Remove needless cpumap.h header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing dso.h header (Michael Petlan) [1818835] - [tools] perf probe: Add missing build-id.h header (Michael Petlan) [1818835] - [tools] perf tools: Remove util.h from where it is not needed (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from places where it is not needed (Michael Petlan) [1818835] - [tools] perf debug: No need to include ui/util.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless builtin.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Add PMU event JSON files for ARM Cortex-A76 and, Neoverse N1 (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_cpu_map__max() function (Michael Petlan) [1818835] - [tools] libperf: Add missing event.h file to install rule (Michael Petlan) [1818835] - [tools] perf tests: Add libperf automated test for 'make -C tools/perf build-test' (Michael Petlan) [1818835] - [tools] perf python: Add missing python/perf.so dependency for libperf (Michael Petlan) [1818835] - [tools] perf build: Ignore intentional differences for the x86 insn decoder (Michael Petlan) [1818835] - [tools] perf intel-pt: Use shared x86 insn decoder (Michael Petlan) [1818835] - [tools] objtool: Move x86 insn decoder to a common location (Michael Petlan) [1818835] - [tools] perf intel-pt: Remove inat.c from build dependency list (Michael Petlan) [1818835] - [tools] perf: Update .gitignore file (Michael Petlan) [1818835] - [tools] perf metricgroup: Support multiple events for metricgroup (Michael Petlan) [1818835] - [tools] perf metricgroup: Scale the metric result (Michael Petlan) [1818835] - [tools] perf pmu: Change convert_scale from static to global (Michael Petlan) [1818835] - [tools] perf symbols: Move mem_info and branch_info out of symbol.h (Michael Petlan) [1818835] - [tools] perf auxtrace: Uninline functions that touch perf_session (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless evlist.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread_map.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless thread.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Remove needless map.h include directives (Michael Petlan) [1818835] - [tools] perf probe: No need for symbol.h, symbol_conf is enough (Michael Petlan) [1818835] - [tools] perf tools: Remove needless sort.h include directives (Michael Petlan) [1818835] - [tools] perf tools: Move 'struct events_stats' and prototypes to separate header (Michael Petlan) [1818835] - [tools] perf hist: Remove needless ui/progress.h from hist.h (Michael Petlan) [1818835] - [tools] perf dsos: Move the dsos struct and its methods to separate source files (Michael Petlan) [1818835] - [tools] perf symbols: Move symsrc prototypes to a separate header (Michael Petlan) [1818835] - [tools] perf symbols: Add missing linux/refcount.h to symbol.h (Michael Petlan) [1818835] - [tools] perf symbol: Move C++ demangle defines to the only file using it (Michael Petlan) [1818835] - [tools] perf dso: Adopt DSO related macros from symbol.h (Michael Petlan) [1818835] - [tools] libtraceevent: Change users plugin directory (Michael Petlan) [1818835] - [tools] libtraceevent: Remove tep_register_trace_clock() (Michael Petlan) [1818835] - [tools] libtraceevent, perf tools: Changes in tep_print_event_* APIs (Michael Petlan) [1818835] - [tools] perf event: Remove needless include directives from event.h (Michael Petlan) [1818835] - [tools] perf env: Remove env.h from other headers where just a fwd decl is needed (Michael Petlan) [1818835] - [tools] perf debug: Remove needless include directives from debug.h (Michael Petlan) [1818835] - [tools] perf tools: Remove debug.h from header files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove perf.h from source files not needing it (Michael Petlan) [1818835] - [tools] perf tools: Remove needless perf.h include directive from headers (Michael Petlan) [1818835] - [tools] perf time-utils: Adopt rdclock() from perf.h (Michael Petlan) [1818835] - [tools] perf tools: Move everything related to sys_perf_event_open() to perf-sys.h (Michael Petlan) [1818835] - [tools] perf header: Move CPUINFO_PROC to the only file where it is used (Michael Petlan) [1818835] - [tools] perf tools: Remove needless libtraceevent include directives (Michael Petlan) [1818835] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Michael Petlan) [1818835] - [tools] perf c2c: Display proper cpu count in nodes column (Michael Petlan) [1818835] - [tools] tools lib traceevent: Remove unneeded qsort and uses memmove instead (Michael Petlan) [1818835] - [tools] tools lib traceevent: Do not free tep->cmdlines in add_new_comm() on failure (Michael Petlan) [1818835] - [tools] perf evlist: Use unshare(CLONE_FS) in sb threads to let setns(CLONE_NEWNS) work (Michael Petlan) [1818835] - [tools] libperf: Move 'enum perf_user_event_type' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" prefix (Michael Petlan) [1818835] - [tools] libperf: Add 'union perf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMPRESSED 'struct compressed_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_FEATURE 'struct feature_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_TIME_CONV 'struct time_conv_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_ROUND 'struct stat_round_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT 'struct stat_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_STAT_CONFIG 'struct stat_config_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THREAD_MAP 'struct thread_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SWITCH 'struct context_switch_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ITRACE_START 'struct itrace_start_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUX 'struct aux_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_ERROR 'struct auxtrace_error_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE 'struct auxtrace_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_AUXTRACE_INFO 'struct auxtrace_info_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_ID_INDEX 'struct id_index_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_BUILD_ID 'struct build_id_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_TRACING_DATA 'struct tracing_data_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_EVENT_TYPE 'struct event_type_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_EVENT_UPDATE 'struct event_update_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_CPU_MAP 'struct cpu_map_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_HEADER_ATTR 'struct attr_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf top: Fix event group with more than two events (Michael Petlan) [1818835] - [tools] perf top: Decay all events in the evlist (Michael Petlan) [1818835] - [tools] perf clang: Delete needless util-cxx.h header (Michael Petlan) [1818835] - [tools] perf evlist: Remove needless util.h from evlist.h (Michael Petlan) [1818835] - [tools] perf tools: Remove needless util.h include from builtin.h (Michael Petlan) [1818835] - [tools] perf tools: Warn that perf_event_paranoid can restrict kernel symbols (Michael Petlan) [1818835] - [tools] perf symbols: Use CAP_SYSLOG with kptr_restrict checks (Michael Petlan) [1818835] - [tools] perf evsel: Kernel profiling is disallowed only when perf_event_paranoid > 1 (Michael Petlan) [1818835] - [tools] perf tools: Use CAP_SYS_ADMIN with perf_event_paranoid checks (Michael Petlan) [1818835] - [tools] perf event: Check ref_reloc_sym before using it (Michael Petlan) [1818835] - [tools] perf arch powerpc: Sync powerpc syscall.tbl (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_missing_features::bpf_event to ::bpf (Michael Petlan) [1818835] - [tools] perf tool: Rename perf_tool::bpf_event to bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::bpf_event to perf_event::bpf (Michael Petlan) [1818835] - [tools] perf tools: Rename perf_event::ksymbol_event to perf_event::ksymbol (Michael Petlan) [1818835] - [tools] libperf: Rename the PERF_RECORD_ structs to have a "perf" suffix (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_SAMPLE 'struct sample_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_BPF_EVENT 'struct bpf_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_KSYMBOL 'struct ksymbol_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_THROTTLE 'struct throttle_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_READ 'struct read_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST_SAMPLES 'struct lost_samples_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_LOST 'struct lost_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_FORK 'struct fork_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_NAMESPACES 'struct namespaces_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_COMM 'struct comm_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP2 'struct mmap2_event' to perf/event.h (Michael Petlan) [1818835] - [tools] libperf: Add PERF_RECORD_MMAP 'struct mmap_event' to perf/event.h (Michael Petlan) [1818835] - [tools] perf script: Fix memory leaks in list_scripts() (Michael Petlan) [1818835] - [tools] perf report: Fix --ns time sort key output (Michael Petlan) [1818835] - [tools] perf report: Use timestamp__scnprintf_nsec() for time sort key (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Reduce perf_event_output() boilerplate (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Introduce helper to get the scratch space (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Postpone tmp map lookup to after pid_filter (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_filename to augmented_arg (Michael Petlan) [1818835] - [tools] perf trace beauty ioctl: Fix off-by-one error in cmd->string table (Michael Petlan) [1818835] - [tools] perf tests: Fixes hang in zstd compression test by changing the source of random data (Michael Petlan) [1818835] - [tools] perf sort: Remove needless headers from sort.h, provide fwd struct decls (Michael Petlan) [1818835] - [tools] perf srcline: Add missing srcline.h header to files needing its defs (Michael Petlan) [1818835] - [tools] perf cacheline: Move cacheline related routines to separate files (Michael Petlan) [1818835] - [tools] perf record: Move record_opts and other record decls out of perf.h (Michael Petlan) [1818835] - [tools] perf stat: Remove needless headers from stat.h (Michael Petlan) [1818835] - [tools] perf cpumap: No need to include perf.h, ditch it (Michael Petlan) [1818835] - [tools] libperf: Fix alignment trap with xyarray contents in 'perf stat' (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__nr/perf_thread_map__pid functions (Michael Petlan) [1818835] - [tools] perf cpumap: Remove needless includes from cpumap.h (Michael Petlan) [1818835] - [tools] perf evsel: Switch to libperf's cpumap.h (Michael Petlan) [1818835] - [tools] perf x86 kvm-stat: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf evsel: util/evsel.h needs stdio.h as it uses FILE (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless stddef.h from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Remove needless counts.h header from util/evsel.h (Michael Petlan) [1818835] - [tools] perf evsel: Add missing perf/evsel.h header in util/evsel.h (Michael Petlan) [1818835] - [tools] perf scripting python: Add missing counts.h header (Michael Petlan) [1818835] - [tools] perf stat: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf tests: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf script: Add missing counts.h (Michael Petlan) [1818835] - [tools] perf evlist: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf bpf: Add missing xyarray.h header (Michael Petlan) [1818835] - [tools] perf counts: Add missing headers needed for types used (Michael Petlan) [1818835] - [tools] perf evsel: Move xyarray.h from evsel.c to evsel.h to reduce include dep tree (Michael Petlan) [1818835] - [tools] perf metricgroup: Remove needless includes from metricgroup.h (Michael Petlan) [1818835] - [tools] perf kvm s390: Add missing string.h header (Michael Petlan) [1818835] - [tools] perf arm64: Add missing debug.h header (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__idx() to perf_cpu_map__idx() (Michael Petlan) [1818835] - [tools] libperf: Move perf's cpu_map__empty() to perf_cpu_map__empty() (Michael Petlan) [1818835] - [tools] perf tools: Use perf_cpu_map__nr instead of cpu_map__nr (Michael Petlan) [1818835] - [tools] tools headers: Add missing perf_event.h include (Michael Petlan) [1818835] - [tools] libperf: Fix arch include paths (Michael Petlan) [1818835] - [tools] tools headers: Fixup bitsperlong per arch includes (Michael Petlan) [1818835] - [tools] perf top: Show info message while collecting samples (Michael Petlan) [1818835] - [tools] perf ui browser: Allow specifying message to show when no samples are available to display (Michael Petlan) [1818835] - [tools] perf ui: Introduce non-interactive ui__info_window() function (Michael Petlan) [1818835] - [tools] perf ui: Make 'exit_msg' optional in ui__question_window() (Michael Petlan) [1818835] - [tools] perf cs-etm: Support sample flags 'insn' and 'insnlen' (Michael Petlan) [1818835] - [tools] perf report: Prefer DWARF callstacks to LBR ones when captured both (Michael Petlan) [1818835] - [tools] perf report: Dump LBR callstack data by -D jointly with thread stack (Michael Petlan) [1818835] - [tools] perf record: Enable LBR callstack capture jointly with thread stack (Michael Petlan) [1818835] - [tools] tools lib traceevent: Fix "robust" test of do_generate_dynamic_list_file (Michael Petlan) [1818835] - [tools] perf evsel: Add comment for 'idx' member in 'struct perf_sample_id (Michael Petlan) [1818835] - [tools] tools headers: Synchronize linux/bits.h with the kernel sources (Michael Petlan) [1818835] - [tools] tools headers: Grab copy of linux/const.h, needed by linux/bits.h (Michael Petlan) [1818835] - [tools] perf tools: tools/include should come before tools/uapi/include (Michael Petlan) [1818835] - [tools] tools headers: Add limits.h to access __WORDSIZE (Michael Petlan) [1818835] - [tools] perf unwind: Remove unnecessary test (Michael Petlan) [1818835] - [tools] perf unwind: Fix libunwind when tid != pid (Michael Petlan) [1818835] - [tools] perf map: Use zalloc for map_groups (Michael Petlan) [1818835] - [tools] perf report: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf top: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf trace: Add --switch-on/--switch-off events (Michael Petlan) [1818835] - [tools] perf evswitch: Add hint when not finding specified on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move enoent error message printing to separate function (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce init() method to set the on/off evsels from the command line (Michael Petlan) [1818835] - [tools] perf evswitch: Introduce OPTS_EVSWITCH() for cmd line processing (Michael Petlan) [1818835] - [tools] perf evswitch: Add the names of on/off events (Michael Petlan) [1818835] - [tools] perf evswitch: Move switch logic to use in other tools (Michael Petlan) [1818835] - [tools] perf evswitch: Move struct to a separate header to use in other tools (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch off processing of other events (Michael Petlan) [1818835] - [tools] perf script: Allow showing the --switch-on event (Michael Petlan) [1818835] - [tools] perf script: Allow specifying event to switch on processing of other events (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Tremontx event file v1.02 (Michael Petlan) [1818835] - [tools] perf ui: No need to set ui_browser to 1 twice (Michael Petlan) [1818835] - [tools] perf record: Support aarch64 random socket_id assignment (Michael Petlan) [1818835] - [tools] perf.data documentation: Clarify HEADER_SAMPLE_TOPOLOGY format (Michael Petlan) [1818835] - [tools] perf evsel: Provide meaningful warning when trying to use 'aux_output' on older kernels (Michael Petlan) [1818835] - [tools] perf intel-pt: Add brief documentation for PEBS via Intel PT (Michael Petlan) [1818835] - [tools] perf tools: Add aux-output config term (Michael Petlan) [1818835] - [tools] perf intel-pt: Process options for PEBS event synthesis (Michael Petlan) [1818835] - [tools] perf tools: Add itrace option 'o' to synthesize aux-output events (Michael Petlan) [1818835] - [tools] perf tools: Add aux_output attribute flag (Michael Petlan) [1818835] - [tools] perf record: Add an option to take an AUX snapshot on exit (Michael Petlan) [1818835] - [tools] perf ftrace: Improve error message about capability to use ftrace (Michael Petlan) [1818835] - [tools] perf ftrace: Use CAP_SYS_ADMIN instead of euid==0 (Michael Petlan) [1818835] - [tools] perf tools: Add CAP_SYSLOG define for older systems (Michael Petlan) [1818835] - [tools] perf tools: Add NO_LIBCAP=1 to the minimal build test (Michael Petlan) [1818835] - [tools] perf tools: Add helpers to use capabilities if present (Michael Petlan) [1818835] - [tools] tools build: Add capability-related feature detection (Michael Petlan) [1818835] - [tools] perf top: Collapse and resort all evsels in a group (Michael Petlan) [1818835] - [tools] perf hist: Remove dummy entries when finding real ones (Michael Petlan) [1818835] - [tools] perf trace: Fix segmentation fault when access syscall info on arm64 (Michael Petlan) [1818835] - [tools] perf hists: Do not link a pair if already linked (Michael Petlan) [1818835] - [tools] perf top: Set display thread COMM to help with debugging (Michael Petlan) [1818835] - [tools] perf vendor events intel: Add Icelake V1.00 event file (Michael Petlan) [1818835] - [tools] perf tools: Fix paths in include statements (Michael Petlan) [1818835] - [tools] perf test vfs_getname: Disable ~/.perfconfig to get default output (Michael Petlan) [1818835] - [tools] perf config: Document the PERF_CONFIG environment variable (Michael Petlan) [1818835] - [tools] perf config: Honour $PERF_CONFIG env var to specify alternate .perfconfig (Michael Petlan) [1818835] - [tools] perf session: Avoid infinite loop when seeing invalid header.size (Michael Petlan) [1818835] - [tools] libperf: Initial documentation (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__enable/disable test (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel tests (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist test (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map test (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map test (Michael Petlan) [1818835] - [tools] libperf: Add tests support (Michael Petlan) [1818835] - [tools] libperf: Add install targets (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__attr() function (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evlist__enable()/disable() functions from perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evlist__open()/close() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__cpus()/threads() functions (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__for_each_cpu() macro (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__enable()/disable()/apply_filter() functions (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__read() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__close() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt simplified perf_evsel__open() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt perf_evsel__alloc_fd() function from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Adopt the readn()/writen() functions from tools/perf (Michael Petlan) [1818835] - [tools] libperf: Move nr_members from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Move fd array from perf's evsel to lobperf's perf_evsel class (Michael Petlan) [1818835] - [tools] libperf: Adopt xyarray class from perf (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__set_maps() function (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add has_user_cpus to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add threads to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add own_cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add cpus to struct perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__delete() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__for_each_evsel() iterator (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__new() function (Michael Petlan) [1818835] - [tools] libperf: Move zalloc.o into libperf (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__new()/perf_cpu_map__read() functions (Michael Petlan) [1818835] - [tools] libperf: Move perf_event_attr field from perf's evsel to libperf's perf_evsel (Michael Petlan) [1818835] - [tools] libperf: Add nr_entries to struct perf_evlist (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__remove() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__add() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist__init() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_evsel__init function (Michael Petlan) [1818835] - [tools] libperf: Include perf_evlist in evlist object (Michael Petlan) [1818835] - [tools] libperf: Include perf_evsel in evsel object (Michael Petlan) [1818835] - [tools] libperf: Add perf_evlist and perf_evsel structs (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__get()/perf_thread_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map__new_dummy() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_thread_map struct (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__get()/perf_cpu_map__put() (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map__dummy_new() function (Michael Petlan) [1818835] - [tools] libperf: Add perf_cpu_map struct (Michael Petlan) [1818835] - [tools] libperf: Add debug output support (Michael Petlan) [1818835] - [tools] libperf: Add perf/core.h header (Michael Petlan) [1818835] - [tools] libperf: Add libperf to the python.so build (Michael Petlan) [1818835] - [tools] libperf: Add build version support (Michael Petlan) [1818835] - [tools] libperf: Make libperf.a part of the perf build (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__disable() to evlist__disable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__enable() to evlist__enable() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__close() to evlist__close() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__open() to evlist__open() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__cpus() to evsel__cpus() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__apply_filter() to evsel__apply_filter() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__disable() to evsel__disable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__enable() to evsel__enable() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__open() to evsel__open() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__remove() to evlist__remove() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__add() to evlist__add() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__new() to evsel__new() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__delete() to evsel__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__delete() to evlist__delete() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__new() to evlist__new() (Michael Petlan) [1818835] - [tools] perf evlist: Rename perf_evlist__init() to evlist__init() (Michael Petlan) [1818835] - [tools] perf evsel: Rename perf_evsel__init() to evsel__init() (Michael Petlan) [1818835] - [tools] perf evlist: Rename struct perf_evlist to struct evlist (Michael Petlan) [1818835] - [tools] perf evsel: Rename struct perf_evsel to struct evsel (Michael Petlan) [1818835] - [tools] perf tools: Rename struct thread_map to struct perf_thread_map (Michael Petlan) [1818835] - [tools] perf cpu_map: Rename struct cpu_map to struct perf_cpu_map (Michael Petlan) [1818835] - [tools] perf stat: Move loaded out of struct perf_counts_values (Michael Petlan) [1818835] - [tools] perf trace: Add "sendfile64" alias to the "sendfile" syscall (Michael Petlan) [1818835] - [tools] perf trace: Reuse BPF augmenters from syscalls with similar args signature (Michael Petlan) [1818835] - [tools] perf trace: Preallocate the syscall table (Michael Petlan) [1818835] - [tools] perf trace: Mark syscall ids that are not allocated to avoid unnecessary error messages (Michael Petlan) [1818835] - [tools] perf trace: Forward error codes when trying to read syscall info (Michael Petlan) [1818835] - [tools] perf trace beauty: Add BPF augmenter for the 'rename' syscall (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify bind's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Beautify 'sendto's sockaddr arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Do not try to use the fd->pathname beautifier for bind/connect fd arg (Michael Petlan) [1818835] - [tools] perf trace beauty: Disable fd->pathname when close() not enabled (Michael Petlan) [1818835] - [tools] perf trace beauty: Make connect's addrlen be printed as an int, not hex (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Augment sockaddr arg in 'connect' (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Rename augmented_args_filename to augmented_args_payload (Michael Petlan) [1818835] - [tools] perf trace: Look for default name for entries in the syscalls prog array (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Support copying two string syscall args (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Switch to using BPF_MAP_TYPE_PROG_ARRAY (Michael Petlan) [1818835] - [tools] perf augmented_raw_syscalls: Add handler for "openat" (Michael Petlan) [1818835] - [tools] perf trace: Handle raw_syscalls:sys_enter just like the BPF_OUTPUT augmented event (Michael Petlan) [1818835] - [tools] perf trace: Put the per-syscall entry/exit prog_array BPF map infrastructure in place (Michael Petlan) [1818835] - [tools] perf trace: Allow specifying the bpf prog to augment specific syscalls (Michael Petlan) [1818835] - [tools] perf trace: Add BPF handler for unaugmented syscalls (Michael Petlan) [1818835] - [tools] perf trace: Order -e syscalls table (Michael Petlan) [1818835] - [tools] perf trace: Look up maps just on the __augmented_syscalls__ BPF object (Michael Petlan) [1818835] - [tools] perf trace: Add pointer to BPF object containing __augmented_syscalls__ (Michael Petlan) [1818835] - [tools] perf evsel: Store backpointer to attached bpf_object (Michael Petlan) [1818835] - [tools] perf bpf: Do not attach a BPF prog to a tracepoint if its name starts with ! (Michael Petlan) [1818835] - [tools] perf include bpf: Add bpf_tail_call() prototype (Michael Petlan) [1818835] - [tools] perf: cs-etm: Optimize option setup for CPU-wide sessions (Michael Petlan) [1818835] - [tools] perf cs-etm: Remove duplicate GENMASK() define, use linux/bits.h instead (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for CPU-wide trace scenarios (Michael Petlan) [1818835] - [tools] perf cs-etm: Add notion of time to decoding code (Michael Petlan) [1818835] - [tools] perf cs-etm: Linking PE contextID with perf thread mechanic (Michael Petlan) [1818835] - [tools] perf cs-etm: Add support for multiple traceID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Use traceID aware memory callback API (Michael Petlan) [1818835] - [tools] perf cs-etm: Move tid/pid to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Move thread to traceid_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Get rid of unused cpu in struct cs_etm_queue (Michael Petlan) [1818835] - [tools] perf cs-etm: Introduce the concept of trace ID queues (Michael Petlan) [1818835] - [tools] perf cs-etm: Fix indentation in function cs_etm__process_decoder_queue() (Michael Petlan) [1818835] - [tools] perf cs-etm: Move packet queue out of decoder structure (Michael Petlan) [1818835] - [tools] perf cs-etm: Refactor error path in cs_etm_decoder__new() (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of switch-CPU-wide events (Michael Petlan) [1818835] - [tools] perf cs-etm: Add handling of itrace start events (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure SWITCH_EVENTS in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure timestamp generation in CPU-wide mode (Michael Petlan) [1818835] - [tools] perf cs-etm: Configure contextID tracing in CPU-wide mode (Michael Petlan) [1818835] - [kernel] perf/core: Fix missing static inline on perf_cgroup_switch() (Michael Petlan) [1818835] - [kernel] perf/core: Consistently fail fork on allocation failures (Michael Petlan) [1818835] - [kernel] perf/core: Disallow uncore-cgroup events (Michael Petlan) [1818835] - [include] perf/headers: Fix spelling s/EACCESS/EACCES/, s/privilidge/privilege/ (Michael Petlan) [1818835] - [x86] perf/x86/uncore: Fix event group support (Michael Petlan) [1818835] - [kernel] perf/core: Start rejecting the syscall with attr.__reserved_2 set (Michael Petlan) [1818835] - [kernel] perf/aux: Fix tracking of auxiliary trace buffer allocation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Fix base for single entry topa (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/intel: Add Tiger Lake CPU support (Michael Petlan) [1818835] - [x86] perf/x86/cstate: Update C-state counters for Ice Lake (Michael Petlan) [1818835] - [x86] perf/x86/msr: Add new CPU model numbers for Ice Lake (Michael Petlan) [1818835] - [kernel] perf/core: Fix corner case in perf_rotate_context() (Michael Petlan) [1818835] - [kernel] perf/core: Rework memory accounting in perf_mmap() (Michael Petlan) [1818835] - [kernel] perf/core: Fix several typos in comments (Michael Petlan) [1818835] - [x86] perf/x86: Make more stuff static (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Get rid of reverse lookup table for ToPA (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Free up space in a ToPA descriptor (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Split ToPA metadata and page layout (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use pointer arithmetics instead in ToPA entry calculation (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Use helpers to obtain ToPA entry size (Michael Petlan) [1818835] - [x86] perf/x86/intel/pt: Clean up ToPA allocation path (Michael Petlan) [1818835]- [scsi] scsi: bnx2fc: Update the driver version to 2.12.13 (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: fix boolreturn.cocci warnings (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Fix SCSI command completion after cleanup is posted (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: Process the RQE with CQE in interrupt context (Nilesh Javali) [1792115] - [scsi] scsi: bnx2fc: timeout calculation invalid for bnx2fc_eh_abort() (Nilesh Javali) [1792115] - [powerpc] powerpc/smp: Use nid as fallback for package_id (Steve Best) [1764530] - [kernel] audit: Add __rcu annotation to RCU pointer (Richard Guy Briggs) [1822776] - [infiniband] i40iw: Report correct firmware version (Stefan Assmann) [1726909] - [x86] x86/mce/amd: Add PPIN support for AMD MCE (Wei Huang) [1790521] - [kernel] locking/percpu-rwsem: Fix a task_struct refcount (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Add might_sleep() for writer locking (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Fold __percpu_up_read() (Waiman Long) [1810257] - [kernel] locking/rwsem: Remove RWSEM_OWNER_UNKNOWN (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Remove the embedded rwsem (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Extract __percpu_down_read_trylock() (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Move __this_cpu_inc() into the slowpath (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem: Convert to bool (Waiman Long) [1810257] - [kernel] locking/percpu-rwsem, lockdep: Make percpu-rwsem use its own lockdep_map (Waiman Long) [1810257] - [kernel] locking/lockdep: Remove unused @nested argument from lock_release() (Waiman Long) [1810257] - [kernel] sched/core: Convert get_task_struct() to return the task (Waiman Long) [1810257] - [kernel] locking/lockdep, cpu/hotplug: Annotate AP thread (Waiman Long) [1810257] - [tty] tty/ldsem: Decrement wait_readers on timeouted down_read() (Waiman Long) [1810257] - [tty] tty/ldsem: Convert to regular lockdep annotations (Waiman Long) [1810257] - [tty] tty/ldsem: Wake up readers after timed out down_write() (Waiman Long) [1810257] - [tty] atomic/tty: Fix up atomic abuse in ldsem (Waiman Long) [1810257] - [kernel] cpu/hotplug: Remove skip_onerr field from cpuhp_step structure (Waiman Long) [1810257] - [watchdog] watchdog: hpwdt: drop warning after calling watchdog_init_timeout (Joseph Szczypek) [1790669] - [mm] powerpc/pkeys: Fix handling of pkey state across fork() (Steve Best) [1823744] - [irqchip] irqchip/gic-v3: Workaround Cavium erratum 38539 when reading GICD_TYPER2 (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Rename VPENDBASER/VPROPBASER accessors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove superfluous WARN_ON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Drop 'tmp' in inherit_vpe_l1_table_from_rd() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Set vpe_l1_base for all redistributors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Only provision redistributors that are enabled in ACPI (Mark Salter) [1818174] - [arm64] arm64: acpi: fix DAIF manipulation with pNMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Allow direct invalidation of VLPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Suppress per-VLPI doorbell (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE INVALL callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add VPE eviction callback (Mark Salter) [1818174] - [include] irqchip/gic-v4.1: Add VPE residency callback (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Add mask/unmask doorbell callbacks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Plumb skeletal VPE irqchip (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add GICv4.1 VPEID size discovery (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect GICv4.1 supporting RVPEID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells (Mark Salter) [1818174] - [arm64] arm64: Kconfig: Remove CONFIG_ prefix from ARM64_PSEUDO_NMI section (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make vlpi_lock a spinlock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Lock VLPI map array before translating it (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INT/CLEAR commands targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Synchronise INV command targetting a VLPI using VSYNC (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Add its_vlpi_map helpers (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->device_ids and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Kill its->ite_size and use TYPER copy instead (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make is_v4 use a TYPER copy (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Allow LPI invalidation via the DirectLPI interface (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Factor out wait_for_syncr primitive (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free collection mapping on device teardown (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix u64 to __le64 warnings (Mark Salter) [1818174] - [irqchip] irqchip: Remove redundant semicolon after while (Mark Salter) [1818174] - [virt] KVM: vgic-v4: Track the number of VLPIs per vcpu (Mark Salter) [1818174] - [virt] KVM: arm64: vgic-v4: Move the GICv4 residency flow to be driven by vcpu_load/put (Mark Salter) [1818174] - [arm64] arm64: add local_daif_inherit() (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Use the exact ITSList for VMOVP (Mark Salter) [1818174] - [arm64] arm64: Relax ICC_PMR_EL1 accesses when ICC_CTLR_EL1.PMHE is clear (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking for compat (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Fix GIC_LINE_NR accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix LPI release for Multi-MSI devices (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Remove the redundant set_bit for lpi_map (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirks for HIP06/07 invalid GICD_TYPER erratum 161010803 (Mark Salter) [1818174] - [irqchip] irqchip/gic: Skip DT quirks when evaluating IIDR-based quirks (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Warn about inconsistent implementations of extended ranges (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add EPPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI partition descriptors (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Dynamically allocate PPI NMI refcounts (Mark Salter) [1818174] - [irqchip] irqchip/gic: Prepare for more than 16 PPIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add ESPI range support (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add INTID range and convertion primitives (Mark Salter) [1818174] - [irqchip] irqchip/gic: Rework gic_configure_irq to take the full ICFGR base (Mark Salter) [1818174] - [irqchip] irqchip/gic-v2m: Register the frame's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Register the ITS' PA instead of its VA in fwnode (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Register the distributor's PA instead of its VA in fwnode (Mark Salter) [1818174] - [arm64] arm64: kprobes: Recover pstate.D in single-step exception handler (Mark Salter) [1818174] - [arm64] arm64: Lower priority mask for GIC_PRIO_IRQON (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Free unused vpt_page when alloc vpe table fail (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Mark expected switch fall-through (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix misuse of GENMASK macro (Mark Salter) [1818174] - [arm64] arm64: fix kernel stack overflow in kdump capture kernel (Mark Salter) [1818174] - [arm64] arm64: irqflags: Introduce explicit debugging for IRQ priorities (Mark Salter) [1818174] - [arm64] arm64: Enable the support of pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: Fix incorrect irqflag restore for priority masking (Mark Salter) [1818174] - [arm64] arm64: Fix interrupt tracing in the presence of NMIs (Mark Salter) [1818174] - [arm64] arm64: irqflags: Add condition flags to inline asm clobber list (Mark Salter) [1818174] - [arm64] arm64: irqflags: Pass flags as readonly operand to restore instruction (Mark Salter) [1818174] - [arm64] arm64: Do not enable IRQs for ct_user_exit (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix command queue pointer comparison bug (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make free_lpi_range a little cheaper (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Drop redundant initialization in mk_lpi_range (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Move allocation outside mutex (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix typo in a comment in its_msi_prepare() (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: fix some definitions of inner cacheability attributes (Mark Salter) [1818174] - [arm64] arm64: fix wrong check of on_sdei_stack in nmi context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp (Mark Salter) [1818174] - [arm64] arm64: remove obsolete selection of MULTI_IRQ_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip/gicv3-its: Use NUMA aware memory allocation for ITS tables (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Avoid parsing _indirect_ twice for Device table (Mark Salter) [1818174] - [arm64] arm64: irqflags: Fix clang build warnings (Mark Salter) [1818174] - [arm64] arm64: KVM/mm: Move SEA handling behind a single 'claim' interface (Mark Salter) [1818174] - [arm64] arm64: Skip irqflags tracing for NMI in IRQs disabled context (Mark Salter) [1818174] - [arm64] arm64: Skip preemption when exiting an NMI (Mark Salter) [1818174] - [arm64] arm64: Handle serror in NMI context (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupts to be set as pseudo-NMI (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Handle pseudo-NMIs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Detect if GIC can support pseudo-NMIs (Mark Salter) [1818174] - [arm64] arm64: gic-v3: Implement arch support for priority masking (Mark Salter) [1818174] - [irqchip] arm64: Switch to PMR masking when starting CPUs (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Factor group0 detection into functions (Mark Salter) [1818174] - [arm64] arm64: alternative: Apply alternatives early in boot process (Mark Salter) [1818174] - [arm64] arm64: alternative: Allow alternative status checking per cpufeature (Mark Salter) [1818174] - [arm64] arm64: sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Mark Salter) [1818174] - [arm64] arm64: daifflags: Include PMR in daifflags restore operations (Mark Salter) [1818174] - [arm64] arm64: irqflags: Use ICC_PMR_EL1 for interrupt masking (Mark Salter) [1818174] - [firmware] efi: Let architectures decide the flags that should be saved/restored (Mark Salter) [1818174] - [kvm] arm64: kvm: Unmask PMR before entering guest (Mark Salter) [1818174] - [mm] arm64: Unmask PMR before going idle (Mark Salter) [1818174] - [arm64] arm64: Make PMR part of task context (Mark Salter) [1818174] - [arm64] arm64: ptrace: Provide definitions for PMR values (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Switch to PMR masking before calling IRQ handler (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Add cpufeature for IRQ priority masking (Mark Salter) [1818174] - [arm64] arm64: cpufeature: Set SYSREG_GIC_CPUIF as a boot system feature (Mark Salter) [1818174] - [arm64] arm64: Remove unused daif related functions/macros (Mark Salter) [1818174] - [arm64] arm64: Fix HCR.TGE status for NMI contexts (Mark Salter) [1818174] - [kernel] irqdesc: Add domain handler for NMIs (Mark Salter) [1818174] - [kernel] genirq: Update irq stats from NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI handlers (Mark Salter) [1818174] - [kernel] genirq: Provide NMI management for percpu_devid interrupts (Mark Salter) [1818174] - [kernel] genirq: Provide basic NMI management for interrupt lines (Mark Salter) [1818174] - [include] irqchip/gic-v3-its: Fix ITT_entry_size accessor (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Plug allocation race for devices sharing a DevID (Mark Salter) [1818174] - [irqchip] irqchip/gic-v4: Fix occasional VLPI drop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-mbi: Fix uninitialized mbi_lock (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Add quirk for msm8996 broken registers (Mark Salter) [1818174] - [irqchip] irqchip/gic: Add support to device tree based quirks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Batch cpu_enable callbacks (Mark Salter) [1818174] - [arm64] arm64: capabilities: Use linear array for detection and verification (Mark Salter) [1818174] - [arm64] arm64: capabilities: Optimize this_cpu_has_cap (Mark Salter) [1818174] - [arm64] arm64: capabilities: Speed up capability lookup (Mark Salter) [1818174] - [irqchip] irqchip: Convert to using pOFn instead of device_node.name (Mark Salter) [1818174] - [mm] arm64: Use daifflag_restore after bp_hardening (Mark Salter) [1818174] - [arm64] arm64: daifflags: Use irqflags functions for daifflags (Mark Salter) [1818174] - [include] irqchip/gic: Unify GIC priority definitions (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Remove acknowledge loop (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3: Allow interrupt to be configured as wake-up sources (Mark Salter) [1818174] - [irqchip] irqchip/gic-v3-its: Make its_lock a raw_spin_lock_t (Mark Salter) [1818174] - [irqchip] genirq/irqchip: Remove MULTI_IRQ_HANDLER as it's now obselete (Mark Salter) [1818174] - [arm64] arm64: Use the new GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [irqchip] irqchip: Port the ARM IRQ drivers to GENERIC_IRQ_MULTI_HANDLER (Mark Salter) [1818174] - [arm64] arm64: sdei: Mark sdei stack helper functions as static (Mark Salter) [1818174] - [arm64] arm64: Add stack information to on_accessible_stack (Mark Salter) [1818174] - [x86] Reserve at most 64M of SWIOTLB memory for crashkernel (Kairui Song) [1812754] - [md] md/raid1: introduce wait_for_serialization (Nigel Croxon) [1788370] - [md] md/raid1: use bucket based mechanism for IO serialization (Nigel Croxon) [1788370] - [md] md: introduce a new struct for IO serialization (Nigel Croxon) [1788370] - [md] md: don't destroy serial_info_pool if serialize_policy is true (Nigel Croxon) [1788370] - [md] raid1: serialize the overlap write (Nigel Croxon) [1788370] - [md] md: reorgnize mddev_create/destroy_serial_pool (Nigel Croxon) [1788370] - [md] md: add serialize_policy sysfs node for raid1 (Nigel Croxon) [1788370] - [md] md: prepare for enable raid1 io serialization (Nigel Croxon) [1788370] - [md] md: fix a typo s/creat/create (Nigel Croxon) [1788370] - [md] md: rename wb stuffs (Nigel Croxon) [1788370] - [md] raid5: remove worker_cnt_per_group argument from alloc_thread_groups (Nigel Croxon) [1788370] - [lib] md/raid6: fix algorithm choice under larger PAGE_SIZE (Nigel Croxon) [1788370] - [lib] raid6/test: fix a compilation warning (Nigel Croxon) [1788370] - [md] md-bitmap: small cleanups (Nigel Croxon) [1788370]- [firmware] efi: cper: print AER info of PCIe fatal error (Vladis Dronov) [1822595] - [init] redhat: Replace hardware.redhat.com link in Unsupported message (Prarit Bhargava) [1810301] - [pci] PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken (Myron Stowe) [1820933] - [pci] PCI: Fix typos (Myron Stowe) [1820933] - [pci] PCI: Remove useless comments and tidy others (Myron Stowe) [1820933] - [pci] PCI: Remove unnecessary includes (Myron Stowe) [1820933] - [tools] tools: PCI: Fix fd leakage (Myron Stowe) [1820933] - [pci] PCI: Export pci_parse_request_of_pci_ranges() (Myron Stowe) [1820933] - [include] resource: Add a resource_list_first_type helper (Myron Stowe) [1820933] - [pci] PCI/ATS: Restore EXPORT_SYMBOL_GPL() for pci_{enable, disable}_ats() (Myron Stowe) [1820933] - [include] PCI/ATS: Add PASID stubs (Myron Stowe) [1820933] - [pci] PCI: Unify ACS quirk desired vs provided checking (Myron Stowe) [1820933] - [pci] PCI: Make ACS quirk implementations more uniform (Myron Stowe) [1820933] - [pci] PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3 (Myron Stowe) [1820933] - [pci] PCI/IOV: Serialize sysfs sriov_numvfs reads vs writes (Myron Stowe) [1820933] - [pci] PCI: Add DMA alias quirk for Intel VCA NTB (Myron Stowe) [1820933] - [pci] PCI: Fix Intel ACS quirk UPDCR register address (Myron Stowe) [1820933] - [pci] PCI/ATS: Make pci_restore_pri_state(), pci_restore_pasid_state() private (Myron Stowe) [1820933] - [pci] PCI/ATS: Remove unnecessary EXPORT_SYMBOL_GPL() (Myron Stowe) [1820933] - [include] PCI/ATS: Remove unused PRI and PASID stubs (Myron Stowe) [1820933] - [pci] PCI/ATS: Consolidate ATS declarations in linux/pci-ats.h (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI PRG Response PASID Required bit (Myron Stowe) [1820933] - [pci] PCI/ATS: Use PF PASID for VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PASID Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Cache PRI Capability offset (Myron Stowe) [1820933] - [pci] PCI/ATS: Disable PF/VF ATS service independently (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PASID Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Handle sharing of PF PRI Capability with all VFs (Myron Stowe) [1820933] - [pci] PCI/ATS: Move pci_prg_resp_pasid_required() to CONFIG_PCI_PRI (Myron Stowe) [1820933] - [iommu] iommu/vt-d: Select PCI_PRI for INTEL_IOMMU_SVM (Myron Stowe) [1820933] - [pci] PCI/switchtec: Read all 64 bits of part_event_bitmap (Myron Stowe) [1820933] - [pci] PCI: Do not use bus number zero from EA capability (Myron Stowe) [1820933] - [pci] PCI: Avoid double hpmemsize MMIO window assignment (Myron Stowe) [1820933] - [pci] PCI: Add "pci=hpmmiosize" and "pci=hpmmioprefsize" parameters (Myron Stowe) [1820933] - [pci] PCI: Add PCI_STD_NUM_BARS for the number of standard BARs (Myron Stowe) [1820933] - [pci] PCI: Fix missing bridge dma_ranges resource list cleanup (Myron Stowe) [1820933] - [pci] PCI: Protect pci_reassign_bridge_resources() against concurrent addition/removal (Myron Stowe) [1820933] - [pci] PCI/MSI: Fix incorrect MSI-X masking on resume (Myron Stowe) [1820933] - [pci] PCI/MSI: Move power state check out of pci_msi_supported() (Myron Stowe) [1820933] - [pci] PCI/MSI: Remove unused pci_irq_get_node() (Myron Stowe) [1820933] - [uapi] PCI: Add #defines for Enter Compliance, Transmit Margin (Myron Stowe) [1820933] - [pci] PCI: Allow building PCIe things without PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI: Remove PCIe Kconfig dependencies on PCI (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove dependency on PCIEPORTBUS (Myron Stowe) [1820933] - [pci] PCI/PTM: Remove spurious "d" from granularity message (Myron Stowe) [1820933] - [pci] PCI: sysfs: Remove unused attribute groups (Myron Stowe) [1820933] - [x86] x86/PCI: Avoid AMD FCH XHCI USB PME# from D0 defect (Myron Stowe) [1820933] - [pci] PCI: Remove unused includes and superfluous struct declaration (Myron Stowe) [1820933] - [x86] x86/PCI: Replace deprecated EXTRA_CFLAGS with ccflags-y (Myron Stowe) [1820933] - [pci] x86/PCI: Correct SPDX comment style (Myron Stowe) [1820933] - [x86] x86/PCI: Add NumaChip SPDX GPL-2.0 to replace COPYING boilerplate (Myron Stowe) [1820933] - [pci] ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug bridge (Myron Stowe) [1820933] - [pci] PCI: pciehp: Prevent deadlock on disconnect (Myron Stowe) [1820933] - [pci] PCI: pciehp: Do not disable interrupt twice on suspend (Myron Stowe) [1820933] - [pci] PCI: pciehp: Refactor infinite loop in pcie_poll_cmd() (Myron Stowe) [1820933] - [pci] PCI: pciehp: Fix indefinite wait on sysfs requests (Myron Stowe) [1820933] - [pci] PCI: pciehp: Avoid returning prematurely from sysfs requests (Myron Stowe) [1820933] - [pci] PCI: Warn if no host bridge NUMA node info (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove PCIEASPM_DEBUG Kconfig option and related code (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add sysfs attributes for controlling ASPM link states (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add pcie_aspm_get_link() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Allow re-enabling Clock PM (Myron Stowe) [1820933] - [pci] PCI/ASPM: Add L1 PM substate support to pci_disable_link_state() (Myron Stowe) [1820933] - [pci] PCI/ASPM: Remove pcie_aspm_enabled() unnecessary locking (Myron Stowe) [1820933] - [pci] PCI/DPC: Add "pcie_ports=dpc-native" to allow DPC without AER control (Myron Stowe) [1820933] - [pci] PCI/AER: Fix kernel-doc warnings (Myron Stowe) [1820933] - [pci] PCI/AER: Use for_each_set_bit() to simplify code (Myron Stowe) [1820933] - [pci] PCI/AER: Add PoisonTLPBlocked to Uncorrectable error counters (Myron Stowe) [1820933] - [pci] PCI/AER: Save AER Capability for suspend/resume (Myron Stowe) [1820933] - [pci] PCI: Add ACS quirk for iProc PAXB (Myron Stowe) [1820933] - [cpufreq] cpufreq: intel_pstate: Simplify intel_pstate_cpu_init() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_work_fn (Prarit Bhargava) [1823339] - [cpufreq] x86/devicetable: Move x86 specific macro out of generic code (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use scnprintf() for avoiding potential buffer overflow (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Consolidate policy verification (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix unsafe notifiers (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: Fix use-after-free (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: dt: Allow platform specific intermediate callbacks (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: add function to get the hardware max frequency (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Prevent unstable evaluation of WARN(vtime->state) (Prarit Bhargava) [1823339] - [cpufreq] docs: cpufreq: fix a broken reference (Prarit Bhargava) [1823339] - [kernel] PM: QoS: annotate data races in pm_qos_*_value() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix policy initialization for internal governor drivers (Prarit Bhargava) [1823339] - [documentation] Documentation: power: fix pm_qos_interface.rst format warning (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Make CPU latency QoS depend on CONFIG_CPU_IDLE (Prarit Bhargava) [1823339] - [documentation] Documentation: PM: QoS: Update to reflect previous code changes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Update file information comments (Prarit Bhargava) [1823339] - [x86] x86: platform: iosf_mbi: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [cpuidle] cpuidle: Call cpu_latency_qos_limit() instead of pm_qos_request() (Prarit Bhargava) [1823339] - [x86] x86: baytrail/cherrytrail: Rework and move P-Unit PMIC bus semaphore code (Prarit Bhargava) [1823339] - [sound] sound: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [media] drivers: media: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [wireless] drivers: net: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [drm] drm/i915: Implement a better i945gm vblank irq vs. C-states workaround (Prarit Bhargava) [1823339] - [drm] drm: i915: Call cpu_latency_qos_*() instead of pm_qos_*() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY and rename related functions (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Simplify definitions of CPU latency QoS trace events (Prarit Bhargava) [1823339] - [tty] PM: QoS: Rename things related to the CPU latency QoS (Prarit Bhargava) [1823339] - [cpuidle] PM: QoS: Drop PM_QOS_CPU_DMA_LATENCY notifier chain (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Redefine struct pm_qos_request and drop struct pm_qos_object (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up misc device file operations (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop iterations over global QoS classes (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_read_value() and pm_qos_get/set_value() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Clean up pm_qos_update_target() and pm_qos_update_flags() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop the PM_QOS_SUM QoS type (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop pm_qos_update_request_timeout() (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Drop debugfs interface (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for OPP_PLUS (Prarit Bhargava) [1823339] - [x86] x86/intel_pstate: Handle runtime turbo disablement/enablement in frequency invariance (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on ATOM_GOLDMONT* (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on XEON_PHI_KNL/KNM (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance on SKYLAKE_X (Prarit Bhargava) [1823339] - [x86] x86, sched: Add support for frequency invariance (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Avoid creating excessively large stack frames (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: loongson2_cpufreq: adjust cpufreq uses of LOONGSON_CHIPCFG (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: brcmstb-avs: fix imbalance of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: fix spelling mistake: "Whethet" -> "Whether" (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: s3c: fix unbalances of cpufreq policy refcount (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: tegra186: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: kirkwood: convert to devm_platform_ioremap_resource (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: CPPC: put ACPI table after using it (Prarit Bhargava) [1823339] - [cpufreq] cpufreq : CPPC: Break out if HiSilicon CPPC workaround is matched (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scmi: Match scmi device by both name and protocol id (Prarit Bhargava) [1823339] - [base] PM / QoS: Restore DEV_PM_QOS_MIN/MAX_FREQUENCY (Prarit Bhargava) [1823339] - [base] PM: QoS: Drop frequency QoS types from device PM QoS (Prarit Bhargava) [1823339] - [include] PM / QoS: Reorder pm_qos/freq_qos/dev_pm_qos structs (Prarit Bhargava) [1823339] - [include] PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Fix Kconfig indentation (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessors for user time (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Bring up complete kcpustat accessor (Prarit Bhargava) [1823339] - [documentation] PM: Wrap documentation to fit in 80 columns (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Invalidate frequency QoS requests after removal (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Register drivers only after CPU devices have been registered (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add NULL checks to show() and store() methods of cpufreq (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix invalid EPB setting (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Initialize cpufreq-dt driver earlier (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Fix plain int as pointer warning from sparse (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: powernv: fix stack bloat and hard limit on number of CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Clarify the comment in cpufreq_set_policy() (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Use vtime aware kcpustat accessor to fetch CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [kernel] sched/kcpustat: Introduce vtime-aware kcpustat accessor for CPUTIME_SYSTEM (Prarit Bhargava) [1823339] - [include] sched/vtime: Introduce vtime_accounting_enabled_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Rename vtime_accounting_cpu_enabled() to vtime_accounting_enabled_this_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Introduce context_tracking_enabled_cpu() (Prarit Bhargava) [1823339] - [include] context_tracking: Rename context_tracking_is_cpu_enabled() to context_tracking_enabled_this_cpu() (Prarit Bhargava) [1823339] - [kernel] sched/vtime: Record CPU under seqcount for kcpustat needs (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Add QoS requests for all CPUs (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: scpi: remove stale/outdated comment about the driver (Prarit Bhargava) [1823339] - [thermal] thermal/drivers/cpufreq_cooling: Fix return of cpufreq_set_cur_state (Prarit Bhargava) [1823339] - [acpi] cpufreq: Use per-policy frequency QoS (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Introduce frequency QoS (Prarit Bhargava) [1823339] - [acpi] ACPI: processor: Avoid NULL pointer dereferences at init time (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: Add support for AM3517 (Prarit Bhargava) [1823339] - [cpufreq] ARM: dts: omap36xx: using OPP1G needs to control the abb_ldo (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: ti-cpufreq: add support for omap34xx and omap36xx (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Remove CPUFREQ_ADJUST and CPUFREQ_NOTIFY policy notifier events (Prarit Bhargava) [1823339] - [base] arch_topology: Use CPUFREQ_CREATE_POLICY instead of CPUFREQ_NOTIFY (Prarit Bhargava) [1823339] - [acpi] ACPI: cpufreq: Switch to QoS requests instead of cpufreq notifier (Prarit Bhargava) [1823339] - [kernel] PM: QoS: Get rid of unused flags (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: intel_pstate: Implement QoS supported freq constraints (Prarit Bhargava) [1823339] - [thermal] thermal: cpu_cooling: Switch to QoS requests for freq limits (Prarit Bhargava) [1823339] - [cpufreq] cpufreq: Add policy create/remove notifiers back (Prarit Bhargava) [1823339] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Prarit Bhargava) [1823339] - [kernel] PM: QoS: no need to check return value of debugfs_create functions (Prarit Bhargava) [1823339] - [kernel] PM / QoS: Change to use DEFINE_SHOW_ATTRIBUTE macro (Prarit Bhargava) [1823339] - [nvme] nvme-fc: Revert "add module to ops template to allow module references" (Gopal Tiwari) [1823270] - [nvme] nvme: fix deadlock caused by ANA update wrong locking (Gopal Tiwari) [1823270] - [nvme] nvme-pci: Hold cq_poll_lock while completing CQEs (Gopal Tiwari) [1823270] - [uapi] nvme: change nvme_passthru_cmd64 to explicitly mark rsvd (Gopal Tiwari) [1823270] - [tools] tools/power/x86/intel-speed-select: Fix a typo in error message (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate Package strings for json (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add display for enabled cpus count (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Print friendly warning for bad command line (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix avx options for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve CLX commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Show error for invalid CPUs in the options (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve core-power result and error display (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Kernel interface error handling (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for turbo-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for base-freq feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve output of perf-profile commands (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help for core-power assoc (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Display error for invalid priority type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Check feature status first (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Improve error display for perf-profile feature (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Add an API for error/information print (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance --info option (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance help (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Helpful warning for missing kernel interface (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Store topology information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Max CPU count calculation when CPU0 is offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Special handling for CPU 0 online/offline (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Use more verbiage for clos information (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Enhance core-power info command (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Make target CPU optional for core-power info (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Warn for invalid package id (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix last cpu number (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix mailbox usage for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Fix wrong unregister type (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Avoid duplicate names for json parsing (Prarit Bhargava) [1778956] - [tools] tools/power/x86/intel-speed-select: Fix display for turbo-freq auto mode (Prarit Bhargava) [1778956] - [platform] platform/x86: ISST: Allow additional core-power mailbox commands (Prarit Bhargava) [1778956] - [misc] mei: me: add comet point (lake) H device ids (Ken Cox) [1815355] - [misc] mei: me: add comet point (lake) LP device ids (Ken Cox) [1815355] - [misc] mei: define dma ring buffer sizes for PCH12 HW and newer (Ken Cox) [1815355] - [misc] mei: hbm: define dma ring setup protocol (Ken Cox) [1815355] - [acpi] apei/ghes: Do not delay GHES polling (Robert Richter) [1793544] - [edac] EDAC/ghes: Do not warn when incrementing refcount on 0 (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix locking and memory barrier issues (Robert Richter) [1793544] - [edac] EDAC/ghes: Fix Use after free in ghes_edac remove path (Robert Richter) [1793544] - [edac] EDAC, ghes: Use CPER module handles to locate DIMMs (Robert Richter) [1793544] - [kernel] sched/fair: Fix statistics for find_idlest_group() (Phil Auld) [1794398] - [kernel] sched/core: Annotate curr pointer in rq with __rcu (Phil Auld) [1794398] - [kernel] sched/psi: Fix OOB write when writing 0 bytes to PSI files (Phil Auld) [1794398] - [kernel] sched/psi: Correct overly pessimistic size calculation (Phil Auld) [1794398] - [kernel] sched/fair: Prevent unlimited runtime on throttled group (Phil Auld) [1794398] - [kernel] sched/nohz: Optimize get_nohz_timer_target() (Phil Auld) [1794398] - [kernel] sched/topology: Assert non-NUMA topology masks don't (partially) overlap (Phil Auld) [1794398] - [kernel] sched/psi: create /proc/pressure and /proc/pressure/{io|memory|cpu} only when psi enabled (Phil Auld) [1794398] - [kernel] sched/fair: Remove redundant call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/debug: Add new tracepoints to track PELT at rq level (Phil Auld) [1794398] - [kernel] sched/fair: calculate delta runnable load only when it's needed (Phil Auld) [1794398] - [kernel] sched/fair: Fix sgc->{min, max}_capacity calculation for SD_OVERLAP (Phil Auld) [1794398] - [kernel] sched/debug: Reset watchdog on all CPUs while processing sysrq-t (Phil Auld) [1794398] - [kernel] sched/fair: Make sched-idle CPU selection consistent throughout (Phil Auld) [1794398] - [kernel] sched/core: Remove unused variable from set_user_nice() (Phil Auld) [1794398] - [kernel] sched/fair: Optimize select_idle_cpu (Phil Auld) [1794398] - [kernel] schied/fair: Skip calculating @contrib without load (Phil Auld) [1794398] - [kernel] sched: Spare resched IPI when prio changes on a single fair task (Phil Auld) [1794398] - [kernel] sched: Use fair:prio_changed() instead of ad-hoc implementation (Phil Auld) [1794398] - [kernel] sched/wait: fix ___wait_var_event(exclusive) (Phil Auld) [1794398] - [kernel] psi: Fix a division error in psi poll() (Phil Auld) [1794398] - [kernel] sched/psi: Fix sampling error and rare div0 crashes with cgroups and high uptime (Phil Auld) [1794398] - [kernel] sched/cpufreq: Move the cfs_rq_util_change() call to cpufreq_update_util() (Phil Auld) [1794398] - [kernel] sched/pelt: Fix update of blocked PELT ordering (Phil Auld) [1794398] - [kernel] sched/core: Avoid spurious lock dependencies (Phil Auld) [1794398] - [kernel] Add wake_up_interruptible_sync_poll_locked() (Phil Auld) [1794398] - [kernel] Remove the nr_exclusive argument from __wake_up_sync_key() (Phil Auld) [1794398] - [x86] x86/mce: Do not log spurious corrected mce errors (Prarit Bhargava) [1819761] - [x86] x86/MCE: Add an MCE-record filtering function (Prarit Bhargava) [1819761]- [mm] mm/page_alloc: increase default min_free_kbytes bound (Joel Savitz) [1808039] - [crypto] crypto: remove CRYPTO_TFM_RES_BAD_KEY_LEN (Neil Horman) [1782179] - [crypto] crypto: qat - switch to skcipher API (Neil Horman) [1782179] - [scsi] scsi: lpfc: Change default SCSI LUN QD to 64 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Update lpfc version to 12.8.0.0 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Remove prototype FIPS/DSS options from SLI-3 (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Make debugfs ktime stats generic for NVME and SCSI (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix update of wq consumer index in lpfc_sli4_wq_release (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix crash after handling a pci error (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix scsi host template for SLI3 vports (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lpfc overwrite of sg_cnt field in nvmefc_tgt_fcp_req (Dick Kennedy) [1822334] - [scsi] scsi: lpfc: Fix lockdep error - register non-static key (Dick Kennedy) [1822334] - [fs] utimes: Clamp the timestamps in notify_change() (Eric Sandeen) [1795991] - [fs] smb3: Fix regression in time handling (Eric Sandeen) [1795991] - [fs] isofs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: ceph: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: fat: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fat: propagate 64-bit inode timestamps (Eric Sandeen) [1795991] - [fs] fs: cifs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] fs: nfs: Initialize filesystem timestamp ranges (Eric Sandeen) [1795991] - [fs] ext4: Initialize timestamps limits (Eric Sandeen) [1795991] - [fs] fs: Fill in max and min timestamps in superblock (Eric Sandeen) [1795991] - [fs] utimes: Clamp the timestamps before update (Eric Sandeen) [1795991] - [fs] timestamp_truncate: Replace users of timespec64_trunc (Eric Sandeen) [1795991] - [fs] vfs: Add timestamp_truncate() api (Eric Sandeen) [1795991] - [fs] vfs: Add file timestamp range support (Eric Sandeen) [1795991] - [fs] cramfs: Deprecate cramfs in RHEL (Abhijith Das) [1794513] - [thermal] thermal: intel: intel_pch_thermal: Add Comet Lake (CML) platform support (David Arcari) [1773794] - [thermal] thermal: intel: Fix unmatched pci_release_region (David Arcari) [1773794] - [thermal] thermal: intel: Use dev_get_drvdata (David Arcari) [1773794] - [thermal] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (David Arcari) [1773794] - [thermal] drivers: thermal: Move various drivers for intel platforms into a subdir (David Arcari) [1773794] - [x86] x86/cpufeatures: Enable a new AVX512 CPU feature (David Arcari) [1783143] - [x86] cpu/cpuid-deps: Add a tab to cpuid dependent features (David Arcari) [1783143] - [crypto] crypto: rng - Override drivers/char/random in FIPS mode (Herbert Xu) [1785660] - [char] random: Add hook to override device reads and getrandom(2) (Herbert Xu) [1785660] - [block] nbd: add a flush_workqueue in nbd_start_device (Ming Lei) [1798919] - [scsi] scsi: sd_sbc: Fix sd_zbc_report_zones() (Ming Lei) [1798919] - [block] block: Fix partition support for host aware zoned block devices (Ming Lei) [1798919] - [scsi] block: allow partitions on host aware zone devices (Ming Lei) [1798919] - [block] null_blk: Fix zone write handling (Ming Lei) [1798919] - [fs] fs: move guard_bio_eod() after bio_set_op_attrs (Ming Lei) [1798919] - [block] null_blk: Fix REQ_OP_ZONE_CLOSE handling (Ming Lei) [1798919] - [block] block: add bio_truncate to fix guard_bio_eod (Ming Lei) [1798919] - [block] compat_ioctl: block: handle Persistent Reservations (Ming Lei) [1798919] - [block] compat_ioctl: block: handle add zone open, close and finish ioctl (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES (Ming Lei) [1798919] - [block] compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE (Ming Lei) [1798919] - [block] block: fix memleak when __blk_rq_map_user_iov() is failed (Ming Lei) [1798919] - [s390] s390/dasd: fix typo in copyright statement (Ming Lei) [1798919] - [s390] s390/dasd: fix memleak in path handling error case (Ming Lei) [1798919] - [s390] s390/dasd/cio: Interpret ccw_device_get_mdc return value correctly (Ming Lei) [1798919] - [block] block: Fix a lockdep complaint triggered by request queue flushing (Ming Lei) [1798919] - [block] block: Fix the type of 'sts' in bsg_queue_rq() (Ming Lei) [1798919] - [block] block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT (Ming Lei) [1798919] - [block] nbd: fix shutdown and recv work deadlock v2 (Ming Lei) [1798919] - [block] blk-iocost: fix incorrect vtime comparison in iocg_is_idle() (Ming Lei) [1798919] - [block] iocost: check active_list of all the ancestors in iocg_activate() (Ming Lei) [1798919] - [block] iocost: over-budget forced IOs should schedule async delay (Ming Lei) [1798919] - [block] blk-cgroup: remove blkcg_drain_queue (Ming Lei) [1798919] - [block] block: fix NULL pointer dereference in account statistics with IDE (Ming Lei) [1798919] - [block] null_blk: remove unused variable warning on !CONFIG_BLK_DEV_ZONED (Ming Lei) [1798919] - [block] brd: warn on un-aligned buffer (Ming Lei) [1798919] - [block] brd: remove max_hw_sectors queue limit (Ming Lei) [1798919] - [block] block: set the zone size in blk_revalidate_disk_zones atomically (Ming Lei) [1798919] - [block] block: don't handle bio based drivers in blk_revalidate_disk_zones (Ming Lei) [1798919] - [block] block: allocate the zone bitmaps lazily (Ming Lei) [1798919] - [block] block: replace seq_zones_bitmap with conv_zones_bitmap (Ming Lei) [1798919] - [block] block: simplify blkdev_nr_zones (Ming Lei) [1798919] - [block] block: remove the empty line at the end of blk-zoned.c (Ming Lei) [1798919] - [block] null_blk: cleanup null_gendisk_register (Ming Lei) [1798919] - [block] null_blk: fix zone size paramter check (Ming Lei) [1798919] - [fs] block: don't send uevent for empty disk when not invalidating (Ming Lei) [1798919] - [block] ataflop: Remove unneeded semicolon (Ming Lei) [1798919] - [block] drbd: Remove unneeded semicolon (Ming Lei) [1798919] - [scsi] sr_vendor: support Beurer GL50 evo CD-on-a-chip devices (Ming Lei) [1798919] - [cdrom] cdrom: respect device capabilities during opening action (Ming Lei) [1798919] - [fs] block: move clearing bd_invalidated into check_disk_size_change (Ming Lei) [1798919] - [block] block: remove (__)blkdev_reread_part as an exported API (Ming Lei) [1798919] - [block] block: fix bdev_disk_changed for non-partitioned devices (Ming Lei) [1798919] - [block] block: move rescan_partitions to fs/block_dev.c (Ming Lei) [1798919] - [block] block: merge invalidate_partitions into rescan_partitions (Ming Lei) [1798919] - [block] block: refactor rescan_partitions (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Remove set but not used variable 'buflen' (Ming Lei) [1798919] - [md] block: rework zone reporting (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Cleanup sd_zbc_alloc_report_buffer() (Ming Lei) [1798919] - [block] null_blk: Add zone_nr_conv to features (Ming Lei) [1798919] - [block] null_blk: clean up report zones (Ming Lei) [1798919] - [block] null_blk: clean up the block device operations (Ming Lei) [1798919] - [block] block: Remove partition support for zoned block devices (Ming Lei) [1798919] - [md] block: Simplify report zones execution (Ming Lei) [1798919] - [block] block: cleanup the !zoned case in blk_revalidate_disk_zones (Ming Lei) [1798919] - [scsi] block: Enhance blk_revalidate_disk_zones() (Ming Lei) [1798919] - [block] nbd: prevent memory leak (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: add zone open, close, and finish support (Ming Lei) [1798919] - [block] null_blk: add zone open, close, and finish support (Ming Lei) [1798919] - [md] dm: add zone open, close and finish support (Ming Lei) [1798919] - [block] loop: fix no-unmap write-zeroes request behavior (Ming Lei) [1798919] - [block] null_blk: return fixed zoned reads > write pointer (Ming Lei) [1798919] - [block] null_blk: Enable modifying 'submit_queues' after an instance has been configured (Ming Lei) [1798919] - [block] null_blk: Improve nullb_device_##NAME##_store() readability (Ming Lei) [1798919] - [block] block,bfq: Skip tracing hooks if possible (Ming Lei) [1798919] - [block] block: Don't disable interrupts in trigger_softirq() (Ming Lei) [1798919] - [lib] sbitmap: Delete sbitmap_any_bit_clear() (Ming Lei) [1798919] - [block] blk-mq: Delete blk_mq_has_free_tags() and blk_mq_can_queue() (Ming Lei) [1798919] - [block] block: add zone open, close and finish ioctl support (Ming Lei) [1798919] - [uapi] uapi: fix ioctl documentation (Ming Lei) [1798919] - [uapi] uapi: linux/blkzoned.h: fix BLKGETZONESZ and BLKGETNRZONES definitions (Ming Lei) [1798919] - [block] block: add zone open, close and finish operations (Ming Lei) [1798919] - [block] block: Simplify REQ_OP_ZONE_RESET_ALL handling (Ming Lei) [1798919] - [block] block: Remove REQ_OP_ZONE_RESET plugging (Ming Lei) [1798919] - [fs] bdev: Refresh bdev size for disks without partitioning (Ming Lei) [1798919] - [fs] bdev: Factor out bdev revalidation into a common helper (Ming Lei) [1798919] - [block] blk-mq: Make blk_mq_run_hw_queue() return void (Ming Lei) [1798919] - [fs] fcntl: fix typo in RWH_WRITE_LIFE_NOT_SET r/w hint name (Ming Lei) [1798919] - [block] blk-mq: remove needless goto from blk_mq_get_driver_tag (Ming Lei) [1798919] - [block] block: Reduce the amount of memory used for tag sets (Ming Lei) [1798919] - [block] block: Reduce the amount of memory required per request queue (Ming Lei) [1798919] - [block] block: Remove the synchronize_rcu() call from __blk_mq_update_nr_hw_queues() (Ming Lei) [1798919] - [block] block: account statistics for passthrough requests (Ming Lei) [1798919] - [block] blk-stat: Optimise blk_stat_add() (Ming Lei) [1798919] - [block] blk-mq: Embed counters into struct mq_inflight (Ming Lei) [1798919] - [block] blk-mq: Reuse callback in blk_mq_in_flight*() (Ming Lei) [1798919] - [block] blk-mq: Inline status checkers (Ming Lei) [1798919] - [block] block: Document all members of blk_mq_tag_set and bkl_mq_queue_map (Ming Lei) [1798919] - [block] block: Reduce sysfs_lock locking inside blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Remove "dying" checks from sysfs callbacks (Ming Lei) [1798919] - [block] block: Remove request_queue.nr_queues (Ming Lei) [1798919] - [trace] block: Fix writeback throttling W=1 compiler warnings (Ming Lei) [1798919] - [block] block: Fix three kernel-doc warnings (Ming Lei) [1798919] - [fs] writeback: fix use-after-free in finish_writeback_work() (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_complete() (Ming Lei) [1798919] - [block] nbd:fix memory leak in nbd_get_socket() (Ming Lei) [1798919] - [block] nbd: verify socket is supported during setup (Ming Lei) [1798919] - [block] nbd: handle racing with error'ed out commands (Ming Lei) [1798919] - [block] nbd: protect cmd->status with cmd->lock (Ming Lei) [1798919] - [block] nbd: fix possible sysfs duplicate warning (Ming Lei) [1798919] - [block] nbd: fix possible page fault for nbd disk (Ming Lei) [1798919] - [block] nbd: rename the runtime flags as NBD_RT_ prefixed (Ming Lei) [1798919] - [block] nbd: fix max number of supported devs (Ming Lei) [1798919] - [block] nbd: fix zero cmd timeout handling v2 (Ming Lei) [1798919] - [block] nbd: add missing config put (Ming Lei) [1798919] - [block] nbd: add function to convert blk req op to nbd cmd (Ming Lei) [1798919] - [block] nbd: add set cmd timeout helper (Ming Lei) [1798919] - [block] loop: change queue block size to match when using DIO (Ming Lei) [1798919] - [block] rsxx: add missed destroy_workqueue calls in remove (Ming Lei) [1798919] - [fs] cgroup, writeback: don't switch wbs immediately on dead wbs if the memcg is dead (Ming Lei) [1798919] - [block] block: drbd: remove a stray unlock in __drbd_send_protocol() (Ming Lei) [1798919] - [block] blkcg: make blkcg_print_stat() print stats only for online blkgs (Ming Lei) [1798919] - [block] iocost: don't nest spin_lock_irq in ioc_weight_write() (Ming Lei) [1798919] - [block] blk-rq-qos: fix first node deletion of rq_qos_del() (Ming Lei) [1798919] - [block] blkcg: Fix multiple bugs in blkcg_activate_policy() (Ming Lei) [1798919] - [block] block: Fix elv_support_iosched() (Ming Lei) [1798919] - [block] null_blk: Fix zoned command return code (Ming Lei) [1798919] - [block] blk-wbt: fix performance regression in wbt scale_up/scale_down (Ming Lei) [1798919] - [ata] Revert "libata, freezer: avoid block device removal while system is frozen" (Ming Lei) [1798919] - [mm] bdi: Do not use freezable workqueue (Ming Lei) [1798919] - [uapi] block: pg: add header include guard (Ming Lei) [1798919] - [block] block: fix null pointer dereference in blk_mq_rq_timed_out() (Ming Lei) [1798919] - [block] rq-qos: get rid of redundant wbt_update_limits() (Ming Lei) [1798919] - [block] iocost: bump up default latency targets for hard disks (Ming Lei) [1798919] - [block] iocost: improve nr_lagging handling (Ming Lei) [1798919] - [block] iocost: better trace vrate changes (Ming Lei) [1798919] - [block] block: drop device references in bsg_queue_rq() (Ming Lei) [1798919] - [block] pktcdvd: remove warning on attempting to register non-passthrough dev (Ming Lei) [1798919] - [ata] ata: libahci_platform: Add of_node_put() before loop exit (Ming Lei) [1798919] - [block] block, bfq: push up injection only after setting service time (Ming Lei) [1798919] - [block] block, bfq: increase update frequency of inject limit (Ming Lei) [1798919] - [block] block, bfq: reduce upper bound for inject limit to max_rq_in_driver+1 (Ming Lei) [1798919] - [block] block, bfq: update inject limit only after injection occurred (Ming Lei) [1798919] - [block] block: centralize PI remapping logic to the block layer (Ming Lei) [1798919] - [block] block: use symbolic constants for t10_pi type (Ming Lei) [1798919] - [block] null_blk: format pr_* logs with pr_fmt (Ming Lei) [1798919] - [block] null_blk: match the type of parameter nr_devices (Ming Lei) [1798919] - [block] null_blk: do not fail the module load with zero devices (Ming Lei) [1798919] - [block] block: also check RQF_STATS in blk_mq_need_time_stamp() (Ming Lei) [1798919] - [block] block: make rq sector size accessible for block stats (Ming Lei) [1798919] - [block] bfq: Fix bfq linkage error (Ming Lei) [1798919] - [scsi] scsi: core: remove dummy q->dev check (Ming Lei) [1798919] - [block] block: bypass blk_set_runtime_active for uninitialized q->dev (Ming Lei) [1798919] - [block] null_blk: validate the number of devices (Ming Lei) [1798919] - [block] null_blk: fix module name at log message (Ming Lei) [1798919] - [block] iocost_monitor: Report debt (Ming Lei) [1798919] - [tools] iocost_monitor: Report more info with higher accuracy (Ming Lei) [1798919] - [tools] iocost_monitor: Always use strings for json values (Ming Lei) [1798919] - [block] blk-iocost: Don't let merges push vtime into the future (Ming Lei) [1798919] - [block] blk-iocost: Account force-charged overage in absolute vtime (Ming Lei) [1798919] - [block] blk-iocost: Fix incorrect operation order during iocg free (Ming Lei) [1798919] - [block] bfq: Add per-device weight (Ming Lei) [1798919] - [block] bfq: Extract bfq_group_set_weight from bfq_io_set_weight_legacy (Ming Lei) [1798919] - [block] bfq: Fix the missing barrier in __bfq_entity_update_weight_prio (Ming Lei) [1798919] - [block] block: fix elevator_get_by_features() (Ming Lei) [1798919] - [scsi] sd: Set ELEVATOR_F_ZBD_SEQ_WRITE for ZBC disks (Ming Lei) [1798919] - [block] block: Set ELEVATOR_F_ZBD_SEQ_WRITE for nullblk zoned disks (Ming Lei) [1798919] - [block] block: Delay default elevator initialization (Ming Lei) [1798919] - [block] block: Improve default elevator selection (Ming Lei) [1798919] - [block] block: Introduce elevator features (Ming Lei) [1798919] - [block] block: Change elevator_init_mq() to always succeed (Ming Lei) [1798919] - [block] block: Cleanup elevator_init_mq() use (Ming Lei) [1798919] - [block] paride/pcd: need to check if cd->disk is null in pcd_detect (Ming Lei) [1798919] - [block] paride/pcd: need to set queue to NULL before put_disk (Ming Lei) [1798919] - [block] blkcg: add missing NULL check in ioc_cpd_alloc() (Ming Lei) [1798919] - [block] blkcg: fix missing free on error path of blk_iocost_init() (Ming Lei) [1798919] - [trace] blkcg: blk-iocost: predeclare used structs (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_coef_gen.py (Ming Lei) [1798919] - [block] blkcg: add tools/cgroup/iocost_monitor.py (Ming Lei) [1798919] - [block] blkcg: implement blk-iocost (Ming Lei) [1798919] - [block] blk-mq: add optional request->alloc_time_ns (Ming Lei) [1798919] - [block] block: extend 'struct request' via 'request_aux' (Ming Lei) [1798919] - [block] blkcg: s/RQ_QOS_CGROUP/RQ_QOS_LATENCY/ (Ming Lei) [1798919] - [block] block/rq_qos: implement rq_qos_ops->queue_depth_changed() (Ming Lei) [1798919] - [block] block/rq_qos: add rq_qos_merge() (Ming Lei) [1798919] - [block] blkcg: separate blkcg_conf_get_disk() out of blkg_conf_prep() (Ming Lei) [1798919] - [block] blkcg: make ->cpd_init_fn() optional (Ming Lei) [1798919] - [block] blkcg: pass @q and @blkcg into blkcg_pol_alloc_pd_fn() (Ming Lei) [1798919] - [include] writeback: Generalize and expose wb_completion (Ming Lei) [1798919] - [block] null_blk: fix inline misuse (Ming Lei) [1798919] - [block] null_blk: create a helper for req completion (Ming Lei) [1798919] - [block] null_blk: create a helper for zoned devices (Ming Lei) [1798919] - [block] null_blk: create a helper for mem-backed ops (Ming Lei) [1798919] - [block] null_blk: create a helper for badblocks (Ming Lei) [1798919] - [block] null_blk: create a helper for throttling (Ming Lei) [1798919] - [block] null_blk: move duplicate code to callers (Ming Lei) [1798919] - [block] block: remove struct request_queue queue_head (Ming Lei) [1798919] - [fs] writeback, cgroup: inode_switch_wbs() shouldn't give up on wb_switch_rwsem trylock fail (Ming Lei) [1798919] - [fs] writeback, cgroup: Adjust WB_FRN_TIME_CUT_DIV to accelerate foreign inode switching (Ming Lei) [1798919] - [block] blk-mq: Fix memory leak in blk_mq_init_allocated_queue error handling (Ming Lei) [1798919] - [block] loop: Add LOOP_SET_DIRECT_IO to compat ioctl (Ming Lei) [1798919] - [lib] lib: scatterlist: Fix to support no mapped sg (Ming Lei) [1798919] - [block] null_blk: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [scsi] scsi: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] blk-zoned: implement REQ_OP_ZONE_RESET_ALL (Ming Lei) [1798919] - [block] block: add req op to reset all zones and flag (Ming Lei) [1798919] - [block] block: Fix a comment in blk_cleanup_queue() (Ming Lei) [1798919] - [block] block: Fix spelling in the header above blkg_lookup() (Ming Lei) [1798919] - [kernel] cgroup: Move cgroup_parse_float() implementation out of CONFIG_SYSFS (Ming Lei) [1798919] - [kernel] cgroup: add cgroup_parse_float() (Ming Lei) [1798919] - [block] nbd: replace kill_bdev() with __invalidate_device() again (Ming Lei) [1798919] - [block] nbd: add netlink reconfigure resize support (Ming Lei) [1798919] - [block] nbd: fix crash when the blksize is zero (Ming Lei) [1798919] - [block] nbd: propagate genlmsg_reply return code (Ming Lei) [1798919] - [block] block: loop: mark bvec as ITER_BVEC_FLAG_NO_REF (Ming Lei) [1798919] - [block] loop: properly observe rotational flag of underlying device (Ming Lei) [1798919] - [block] block: Limit zone array allocation size (Ming Lei) [1798919] - [block] block: Fix null_blk_zoned creation failure with small number of zones (Ming Lei) [1798919] - [scsi] sd_zbc: Fix report zones buffer allocation (Ming Lei) [1798919] - [scsi] scsi: sd_zbc: Fix sd_zbc_report_zones() buffer allocation (Ming Lei) [1798919] - [md] block: Kill gfp_t argument of blkdev_report_zones() (Ming Lei) [1798919] - [md] dm zoned: Fix zone report handling (Ming Lei) [1798919] - [block] blkcg: implement REQ_CGROUP_PUNT (Ming Lei) [1798919] - [include] blkcg, writeback: Implement wbc_blkcg_css() (Ming Lei) [1798919] - [fs] blkcg, writeback: Add wbc->no_cgroup_owner (Ming Lei) [1798919] - [fs] blkcg, writeback: Rename wbc_account_io() to wbc_account_cgroup_owner() (Ming Lei) [1798919] - [block] cgroup, blkcg: Prepare some symbols for module and !CONFIG_CGROUP usages (Ming Lei) [1798919] - [fs] writeback: synchronize sync(2) against cgroup writeback membership switches (Ming Lei) [1798919] - [block] blk-mq: move cancel of requeue_work to the front of blk_exit_queue (Ming Lei) [1798919] - [block] blk-mq-debugfs: support rq_qos (Ming Lei) [1798919] - [block] null_blk: fix type mismatch null_handle_cmd() (Ming Lei) [1798919] - [block] null_blk: remove duplicate 0 initialization (Ming Lei) [1798919] - [block] null_blk: remove duplicate check for report zone (Ming Lei) [1798919] - [block] null_blk: add zoned config support information (Ming Lei) [1798919] - [tools] tools arch x86: Sync asm/cpufeatures.h with the kernel sources (Vitaly Kuznetsov) [1807448] - [x86] vmware: Use bool type for vmw_sched_clock (Vitaly Kuznetsov) [1807448] - [x86] vmware: Enable steal time accounting (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add steal time clock support for VMware guests (Vitaly Kuznetsov) [1807448] - [x86] vmware: Remove vmware_sched_clock_setup() (Vitaly Kuznetsov) [1807448] - [x86] vmware: Make vmware_select_hypercall() __init (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Fix platform detection VMWARE_PORT macro (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_HYPERCALL, for clang/llvm (Vitaly Kuznetsov) [1807448] - [x86] cpu/vmware: Use the full form of INL in VMWARE_PORT (Vitaly Kuznetsov) [1807448] - [x86] vmware: Add a header file for hypercall definitions (Vitaly Kuznetsov) [1807448] - [x86] vmware: Update platform detection code for VMCALL/VMMCALL hypercalls (Vitaly Kuznetsov) [1807448] - [netdrv] hv_netvsc: Fix unwanted wakeup in netvsc_attach() (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: make recording RSS hash depend on feature flag (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: record hardware hash in skb (Mohammed Gamal) [1815503] - [netdrv] hv_netvsc: flag software created hash value (Mohammed Gamal) [1815503] - [video] hyperv: hyperv_fb: Use physical memory for fb on HyperV Gen 1 VMs (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Support deferred IO for Hyper-V frame buffer driver (Mohammed Gamal) [1816744] - [video] hyperv: hyperv_fb: Obtain screen resolution from Hyper-V host (Mohammed Gamal) [1816744] - [uio] uio_hv_generic: drop #ifdef DEBUG (Mohammed Gamal) [1816744] - [hid] hv: Remove dependencies on PAGE_SIZE for ring buffer (Mohammed Gamal) [1816744] - [x86] x86/hyperv: Create and use Hyper-V page definitions (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Drop HV_X64_CONFIGURE_PROFILER definition (Mohammed Gamal) [1816285] - [x86] x86: hv: Add function to allocate zeroed page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Add functions to allocate/deallocate page for Hyper-V (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix indentation in hv_do_fast_hypercall16() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Micro-optimize send_ipi_one() (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make vapic support x2apic mode (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Fix overflow bug in fill_gva_list() (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Zero out the VP ASSIST PAGE on allocation (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Make hv_vcpu_is_preempted() visible (Mohammed Gamal) [1816285] - [x86] x86/hyper-v: Implement EOI assist (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Prevent potential NULL pointer dereference (Mohammed Gamal) [1816285] - [x86] Drivers: hv: vmbus: Break out ISA independent parts of mshyperv.h (Mohammed Gamal) [1816285] - [x86] x86/hyperv: Remove unused include (Mohammed Gamal) [1816285] - [net] vsock/virtio: add support for MSG_PEEK (Stefano Garzarella) [1818059]- [include] leds: triggers: new function led_set_trigger_data() (Torez Smith) [1686205] - [leds] leds: triggers: add device attribute support (Torez Smith) [1686205] - [usb] USB: cdc-wdm: fix race between write and disconnect due to flag abuse (Torez Smith) [1686205] - [usb] usb: host: xhci: rcar: Fix typo in compatible string matching (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Set DMA mask correctly (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Whitelist auto-delink support (Torez Smith) [1686205] - [usb] USB: storage: ums-realtek: Update module parameter description for auto_delink_en (Torez Smith) [1686205] - [usb] usb: host: ohci: fix a race condition between shutdown and irq (Torez Smith) [1686205] - [usb] usb: hcd: use managed device resources (Torez Smith) [1686205] - [usb] typec: tcpm: fix a typo in the comparison of pdo_max_voltage (Torez Smith) [1686205] - [usb] usb-storage: Add new JMS567 revision to unusual_devs (Torez Smith) [1686205] - [usb] usb: chipidea: udc: don't do hardware access if gadget has stopped (Torez Smith) [1686205] - [usb] usbtmc: more sanity checking for packet size (Torez Smith) [1686205] - [usb] usb: udc: lpc32xx: silence fall-through warning (Torez Smith) [1686205] - [usb] usb: chipidea: imx: fix EPROBE_DEFER support during driver probe (Torez Smith) [1686205] - [usb] usb: host: fotg2: restart hcd after port reset (Torez Smith) [1686205] - [usb] USB: CDC: fix sanity checks in CDC union parser (Torez Smith) [1686205] - [usb] usb: cdc-acm: make sure a refcount is taken early enough (Torez Smith) [1686205] - [usb] USB: serial: option: add the BroadMobi BM818 card (Torez Smith) [1686205] - [usb] USB: serial: option: Add Motorola modem UARTs (Torez Smith) [1686205] - [usb] USB: core: Fix races in character device registration and deregistraion (Torez Smith) [1686205] - [usb] usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt (Torez Smith) [1686205] - [usb] usb: gadget: composite: Clear "suspended" on reset/disconnect (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix sysfs interface of "role" (Torez Smith) [1686205] - [usb] usb: setup authorized_default attributes using usb_bus_notify (Torez Smith) [1686205] - [usb] usb: iowarrior: fix deadlock on disconnect (Torez Smith) [1686205] - [usb] Revert "USB: rio500: simplify locking" (Torez Smith) [1686205] - [usb] usb: usbfs: fix double-free of usb memory upon submiturb error (Torez Smith) [1686205] - [usb] usb: yurex: Fix use-after-free in yurex_delete (Torez Smith) [1686205] - [usb] USB: serial: option: add D-Link DWM-222 device ID (Torez Smith) [1686205] - [usb] USB: serial: option: Add support for ZTE MF871A (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests (Torez Smith) [1686205] - [usb] xhci: Fix NULL pointer dereference at endpoint zero reset (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Fix timeout in xhci_suspend() (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: Fix uninitilized symbol error (Torez Smith) [1686205] - [usb] usb: typec: tcpm: remove tcpm dir if no children (Torez Smith) [1686205] - [usb] usb: typec: tcpm: free log buf memory when remove debug file (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Add NULL check before dereferencing config (Torez Smith) [1686205] - [tools] tools headers UAPI: Sync usbdevice_fs.h with the kernels to get new ioctl (Torez Smith) [1686205] - [usb] xhci: Fix crash if scatter gather is used with Immediate Data Transfer (IDT) (Torez Smith) [1686205] - [usb] usb: usb251xb: Reallow swap-dx-lanes to apply to the upstream port (Torez Smith) [1686205] - [usb] Revert "usb: usb251xb: Add US port lanes inversion property" (Torez Smith) [1686205] - [documentation] Revert "usb: usb251xb: Add US lanes inversion dts-bindings" (Torez Smith) [1686205] - [usb] usb: wusbcore: fix unbalanced get/put cluster_id (Torez Smith) [1686205] - [usb] usb/hcd: Fix a NULL vs IS_ERR() bug in usb_hcd_setup_local_mem() (Torez Smith) [1686205] - [usb] usb-storage: Add a limitation for blk_queue_max_hw_sectors() (Torez Smith) [1686205] - [usb] usb: pci-quirks: Minor cleanup for AMD PLL quirk (Torez Smith) [1686205] - [usb] usb: pci-quirks: Correct AMD PLL quirk detection (Torez Smith) [1686205] - [usb] vfs: Convert gadgetfs to use the new mount API (Torez Smith) [1686205] - [usb] Revert "usb: gadget: storage: Remove warning message" (Torez Smith) [1686205] - [documentation] Revert "dt-bindings: add binding for USBSS-DRD controller." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Separated decoding functions from dwc3 driver." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Patch simplify usb_decode_set_clear_feature function." (Torez Smith) [1686205] - [usb] Revert "usb:gadget Simplify usb_decode_get_set_descriptor function." (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Add Cadence USB3 DRD Driver" (Torez Smith) [1686205] - [usb] Revert "usb:cdns3 Fix for stuck packets in on-chip OUT buffer." (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Fix example warnings (Torez Smith) [1686205] - [usb] usb :fsl: Change string format for errata property (Torez Smith) [1686205] - [usb] usb: host: Stops USB controller init if PLL fails to lock (Torez Smith) [1686205] - [usb] usb: phy: Workaround for USB erratum-A005728 (Torez Smith) [1686205] - [usb] usb: fsl: Set USB_EN bit to select ULPI phy (Torez Smith) [1686205] - [usb] usb: Handle USB3 remote wakeup for LPM enabled devices correctly (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix 4CC cmd write (Torez Smith) [1686205] - [usb] drivers/usb/typec/tps6598x.c: fix portinfo width (Torez Smith) [1686205] - [usb] usb: storage: scsiglue: Do not skip VPD if try_vpd_pages is set (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add a workaround for a race condition of workqueue (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: remove redundant assignment to ret (Torez Smith) [1686205] - [usb] usb: dwc2: use a longer AHB idle timeout in dwc2_core_reset() (Torez Smith) [1686205] - [usb] USB: gadget: function: fix issue Unneeded variable: "value" (Torez Smith) [1686205] - [usb] usb: phy: phy-mxs-usb: add imx7ulp support (Torez Smith) [1686205] - [usb] usb:cdns3 Fix for stuck packets in on-chip OUT buffer (Torez Smith) [1686205] - [usb] usb:cdns3 Add Cadence USB3 DRD Driver (Torez Smith) [1686205] - [usb] usb:gadget Simplify usb_decode_get_set_descriptor function (Torez Smith) [1686205] - [usb] usb:gadget Patch simplify usb_decode_set_clear_feature function (Torez Smith) [1686205] - [usb] usb:gadget Separated decoding functions from dwc3 driver (Torez Smith) [1686205] - [documentation] dt-bindings: add binding for USBSS-DRD controller (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for TigerLake Devices (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for isodebug v1 (Torez Smith) [1686205] - [usb] usb: host: Fix excessive alignment restriction for local memory allocations (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct platform_callback pointer (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use renesas_usbhs_platform_info on of_device_id.data (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add a common function for the .get_id (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move device tree properties parsing (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add struct device * declaration in usbhs_probe() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add has_new_pipe_configs flag (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use dev_of_node macro instead of open coded (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove type member from renesas_usbhs_driver_param (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use a specific flag instead of type for multi_clks (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Avoid to write platform_data's value (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move macros from mod.c to the mod.h (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove notify_hotplug callback (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: revise the irq_vbus comments (Torez Smith) [1686205] - [usb] USB: core: Fix compiler warnings in devio.c (Torez Smith) [1686205] - [usb] USB: core: Remove usbfs_mutex (Torez Smith) [1686205] - [usb] usb: clean up some of the computations in adu_read (Torez Smith) [1686205] - [usb] scsi: usb: image: microtek: use sg helper to iterate over scatterlist (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use struct assignment instead of memcpy() (Torez Smith) [1686205] - [usb] USB: core: correct a spelling mistake in the comment (Torez Smith) [1686205] - [usb] usb: dwc3: remove unused @lock member of dwc3_ep struct (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add Support for Intel Elkhart Lake Devices (Torez Smith) [1686205] - [usb] usb: Replace snprintf with scnprintf in gether_get_ifname (Torez Smith) [1686205] - [uapi] USB: fix types in uapi include (Torez Smith) [1686205] - [usb] USB: serial: option: add support for GosunCn ME3630 RNDIS mode (Torez Smith) [1686205] - [usb] xhci: detect USB 3.2 capable host controllers correctly (Torez Smith) [1686205] - [usb] usb: xhci: Don't try to recover an endpoint if port is in error state (Torez Smith) [1686205] - [usb] usb: gadget: ether: Fix race between gether_disconnect and rx_submit (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove warning message (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Add support for disabling U1 and U2 entries (Torez Smith) [1686205] - [usb] usb: gadget: send usb_gadget as an argument in get_config_params (Torez Smith) [1686205] - [documentation] doc: dt: bindings: usb: dwc3: Update entries for disabling U1 and U2 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Use of_clk_get_parent_count() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix core validation in probe, move after clocks are enabled (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Improve error handling (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Start USB in 'host mode' on the SDM845 (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for booting with ACPI (Torez Smith) [1686205] - [usb] Revert "usb: dwc2: host: Setting qtd to NULL after freeing it" (Torez Smith) [1686205] - [usb] usb: gadget: net2272: remove redundant assignments to pointer 's' (Torez Smith) [1686205] - [usb] usb: gadget: Zero ffs_io_data (Torez Smith) [1686205] - [usb] USB: omap_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] fotg210-udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: at91_udc: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Enhance role switch support (Torez Smith) [1686205] - [usb] usb: gadget: u_audio: Fixed variable declaration coding style issue (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: data_len used before properly set (Torez Smith) [1686205] - [usb] USB: dwc2: Don't turn off the usbphy in suspend if wakeup is enabled (Torez Smith) [1686205] - [documentation] Documentation: dt-bindings: Add snps, need-phy-for-wake for dwc2 USB (Torez Smith) [1686205] - [usb] usb: dwc2: Force 8bit UTMI width for Samsung Exynos SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: meson-g12a: Add support for IRQ based OTG switching (Torez Smith) [1686205] - [usb] usb: dwc2: Use generic PHY width in params setup (Torez Smith) [1686205] - [usb] usb: host: fotg2: add device tree probing (Torez Smith) [1686205] - [usb] usb: isp1362: Spelling s/eclusive/exclusive/ (Torez Smith) [1686205] - [usb] USB: add usbfs ioctl to retrieve the connection parameters (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Fix Wunused-const-variable (Torez Smith) [1686205] - [usb] usb: chipidea: udc: workaround for endpoint conflict issue (Torez Smith) [1686205] - dt-bindings: usb: renesas_gen3: Rename bindings documentation file (Torez Smith) [1686205] - dt-bindings: usb: renesas_usbhs: Rename bindings documentation file (Torez Smith) [1686205] - [documentation] docs: power: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] docs: kbuild: convert docs to ReST and rename to *.rst (Torez Smith) [1686205] - [usb] usb: chipidea: msm: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Use devm_platform_ioremap_resource() (Torez Smith) [1686205] - [usb] usb: chipidea: Use dev_err() instead of pr_err() (Torez Smith) [1686205] - [usb] usb: chipidea: imx: "fsl, usbphy" phandle is not mandatory now (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add imx7ulp support (Torez Smith) [1686205] - [usb] usb: typec: Make sure an alt mode exist before getting its partner (Torez Smith) [1686205] - [usb] Revert "usb: mtu3: fix up undefined reference to usb_debug_root" (Torez Smith) [1686205] - [usb] USB: sisusbvga: Remove unneeded variable (Torez Smith) [1686205] - [usb] usb: typec: tcpm: fusb302: simplify getting the adapter of a client (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add runtime pm workaround (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: enable runtime pm support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: fix return value check in lpc32xx_udc_probe() (Torez Smith) [1686205] - [usb] usb: gadget: dwc2: fix zlp handling (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer for none DDMA (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC (Torez Smith) [1686205] - [usb] usb: gadget: fusb300_udc: Fix memory leak of fusb300->ep (Torez Smith) [1686205] - [usb] usb: phy: mxs: Disable external charger detect in mxs_phy_hw_init() (Torez Smith) [1686205] - [usb] usb: dwc2: Fix DMA cache alignment issues (Torez Smith) [1686205] - [usb] usb: dwc2: host: Fix wMaxPacketSize handling (fix webcam regression) (Torez Smith) [1686205] - [usb] USB: move usb debugfs directory creation to the usb common core (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove unneeded variable frame (Torez Smith) [1686205] - [usb] media: usb/gadget/f_uvc: set device_caps in struct video_device (Torez Smith) [1686205] - [usb] usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink() (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove controlling PWEN/EXTLP support (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: remove sudmac support (Torez Smith) [1686205] - [usb] usb: xhci: Add Clear_TT_Buffer (Torez Smith) [1686205] - [usb] usb: Add devaddr in struct usb_device (Torez Smith) [1686205] - [usb] USB: Fix chipmunk-like voice when using Logitech C270 for recording audio (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new ID to ums-realtek (Torez Smith) [1686205] - [usb] USB: use genalloc for USB HCs with local memory (Torez Smith) [1686205] - [usb] usb: phy: mv-usb: Remove set but not used variable 'phy' (Torez Smith) [1686205] - [usb] usb: ftdi-elan: fix possible condition with no effect (if == else) (Torez Smith) [1686205] - [usb] USB: ohci-spear: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: remove redundant license text (Torez Smith) [1686205] - [usb] USB: atm: ueagle-atm.c: fix SPDX tag to be BSD2 (Torez Smith) [1686205] - [usb] usb: ohci-s3c2410: Remove set but not used variable 'hcd' (Torez Smith) [1686205] - [usb] usb: cdc-wdm: remove redundant assignment to rv (Torez Smith) [1686205] - [usb] usb: host: ohci-st: Remove set but not used variable 'ohci' (Torez Smith) [1686205] - [usb] usb: host: ehci-st: Remove set but not used variable 'ehci' (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix memory leak in do_flash (Torez Smith) [1686205] - [include] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix stub_dev lock context imbalance regression (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Torez Smith) [1686205] - [usb] usb: avoid redundant allocation and free of memory (Torez Smith) [1686205] - [usb] signal/usb: Replace kill_pid_info_as_cred with kill_pid_usb_asyncio (Torez Smith) [1686205] - [usb] xhci: Use zu for printing size_t type (Torez Smith) [1686205] - [usb] xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic() (Torez Smith) [1686205] - [usb] xhci: Fix immediate data transfer if buffer is already DMA mapped (Torez Smith) [1686205] - [usb] usb: xhci: avoid null pointer deref when bos field is NULL (Torez Smith) [1686205] - [usb] usb: xhci: Fix a potential null pointer dereference in xhci_debugfs_create_endpoint() (Torez Smith) [1686205] - [usb] xhci: update bounce buffer with correct sg num (Torez Smith) [1686205] - [tools] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit 0x1260 and 0x1261 compositions (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add Allied Telesis VT-Kit3 (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode (Torez Smith) [1686205] - [tools] treewide: Add SPDX license identifier - Makefile/Kconfig (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r7s9210 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add support for RZ/A2 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: support byte addressable CFIFO (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for CNEN bit (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: move flags to param (Torez Smith) [1686205] - [usb] usb: core: hub: Disable hub-initiated U1/U2 (Torez Smith) [1686205] - [usb] usb: core: hub: Enable/disable U1/U2 in configured state (Torez Smith) [1686205] - [usb] USB: rio500: simplify locking (Torez Smith) [1686205] - [usb] USB: rio500: fix memory leak in close after disconnect (Torez Smith) [1686205] - [usb] USB: rio500: refuse more than one device at a time (Torez Smith) [1686205] - [usb] usbip: usbip_host: fix BUG: sleeping function called from invalid context (Torez Smith) [1686205] - [usb] USB: sisusbvga: fix oops in error path of sisusb_probe (Torez Smith) [1686205] - [usb] USB: Add LPM quirk for Surface Dock GigE adapter (Torez Smith) [1686205] - [usb] usb: mtu3: fix up undefined reference to usb_debug_root (Torez Smith) [1686205] - [usb] USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor (Torez Smith) [1686205] - [usb] usb: remove redundant 'default n' from Kconfig-s (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use specific struct instead of USBHS_TYPE_* enums (Torez Smith) [1686205] - [usb] USB: OHCI: remove space before open square bracket '[' (Torez Smith) [1686205] - [usb] usb: exynos: add workaround for the USB device bindings conflict (Torez Smith) [1686205] - [usb] usbip: usbip_host: cleanup do_rebind() return path (Torez Smith) [1686205] - [usb] USB: serial: f81232: clear overrun flag (Torez Smith) [1686205] - [usb] USB: serial: f81232: fix interrupt worker not stop (Torez Smith) [1686205] - [usb] usb: dwc3: Rename DWC3_DCTL_LPM_ERRATA (Torez Smith) [1686205] - [usb] usb: dwc3: Fix default lpm_nyet_threshold value (Torez Smith) [1686205] - [usb] usb: dwc3: debug: Print GET_STATUS(device) tracepoint (Torez Smith) [1686205] - [usb] usb: dwc3: Do core validation early on probe (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Set lpm_capable (Torez Smith) [1686205] - [usb] usb: gadget: atmel: tie wake lock to running clock (Torez Smith) [1686205] - [usb] usb: gadget: atmel: support USB suspend (Torez Smith) [1686205] - [usb] usb: gadget: atmel_usba_udc: simplify setting of interrupt-enabled mask (Torez Smith) [1686205] - [usb] dwc2: gadget: Fix completed transfer size calculation in DDMA (Torez Smith) [1686205] - [usb] usb: dwc2: Set lpm mode parameters depend on HW configuration (Torez Smith) [1686205] - [usb] usb: dwc2: Fix channel disable flow (Torez Smith) [1686205] - [usb] usb: dwc2: Set actual frame number for completed ISOC transfer (Torez Smith) [1686205] - [usb] usb: gadget: do not use __constant_cpu_to_le16 (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Increase descriptors count for ISOC's (Torez Smith) [1686205] - [usb] usb: dwc3: move synchronize_irq() out of the spinlock protected block (Torez Smith) [1686205] - [usb] usb: dwc3: Free resource immediately after use (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: Convert to bulk clk API (Torez Smith) [1686205] - [usb] usb: dwc2: Delayed status support (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: rework interrupt handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: add support for stotg04 phy (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: properly setup phy interrupts (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify vbus handling (Torez Smith) [1686205] - [usb] usb: gadget: udc: lpc32xx: simplify probe (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Move gadget phy init into core phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move phy init into core (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Replace phyif with phy_utmi_width (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Remove duplicated phy init (Torez Smith) [1686205] - [usb] usb: dwc2: Move UTMI_PHY_DATA defines closer (Torez Smith) [1686205] - [usb] usb: dwc2: optionally assert phy reset when waking up (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Document quirk to reset PHY upon wakeup (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: document the vbus-supply property (Torez Smith) [1686205] - [usb] USB: UDC: net22{80, 72}: remove mistaken test of req->zero (Torez Smith) [1686205] - [usb] USB: UDC: net2280: Remove redundant "if" condition (Torez Smith) [1686205] - [usb] usb: gadget: fsl: fix link error against usb-gadget module (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Add OS descriptor support (Torez Smith) [1686205] - [usb] usb: gadget: f_ncm: Fix NTP-32 support (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Reject LPM token during Control transfers (Torez Smith) [1686205] - [usb] USB: Export usb_wakeup_enabled_descendants() (Torez Smith) [1686205] - [usb] usb: dwc2: bus suspend/resume for hosts with DWC2_POWER_DOWN_PARAM_NONE (Torez Smith) [1686205] - [usb] usb: dwc3: Add Amlogic G12A DWC3 glue (Torez Smith) [1686205] - [usb] usb: dwc2: Add Amlogic G12A DWC2 Params (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc3: Add Amlogic G12A DWC3 Glue Bindings (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: Add Amlogic G12A DWC2 Compatible (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: don't free buffer prematurely (Torez Smith) [1686205] - [usb] USB: serial: io_edgeport: fix up switch fall-through comments (Torez Smith) [1686205] - [usb] usb: usb251xb: Add US port lanes inversion property (Torez Smith) [1686205] - [usb] usb: usb251xb: Create a ports field collector method (Torez Smith) [1686205] - [documentation] usb: usb251xb: Add US lanes inversion dts-bindings (Torez Smith) [1686205] - [usb] usb: isp1760-hcd: Fix fall-through annotations (Torez Smith) [1686205] - [usb] usb: musb: dsps: Use dev_get_drvdata() (Torez Smith) [1686205] - [usb] usb: musb: jz4740: obtain USB PHY from devicetree (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Let the platform probe the PHY (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add usb-phy property to the jz4740-musb node (Torez Smith) [1686205] - [soc] soc: sunxi: Fix missing dependency on REGMAP_MMIO (Torez Smith) [1686205] - [usb] usb: musb: omap2430: Add support for idling phy when musb is idle (Torez Smith) [1686205] - [usb] usb: musb: Silence error about blacklisting hubs if !CONFIG_USB (Torez Smith) [1686205] - [usb] usbip: vhci_hcd: Mark expected switch fall-through (Torez Smith) [1686205] - [usb] UAS: fix alignment of scatter/gather segments (Torez Smith) [1686205] - [include] USB: serial: drop unused iflag macro (Torez Smith) [1686205] - [usb] USB: serial: drop unnecessary goto (Torez Smith) [1686205] - [usb] USB: serial: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: serial: fix unthrottle races (Torez Smith) [1686205] - [usb] USB: cdc-acm: clean up throttle handling (Torez Smith) [1686205] - [usb] USB: cdc-acm: fix unthrottle races (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: fix missing unlock on error in ccg_cmd_write_flash_row() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a77470 (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774c0 support (Torez Smith) [1686205] - [usb] usb: xhci: add endpoint context tracing when an endpoint is added (Torez Smith) [1686205] - [usb] xhci: Add tracing for input control context (Torez Smith) [1686205] - [usb] xhci: add port and bus number to port dynamic debugging (Torez Smith) [1686205] - [usb] usb: xhci: add Immediate Data Transfer support (Torez Smith) [1686205] - [usb] usb: usb251xb: Add an empty hub' i2c-bus segment checker (Torez Smith) [1686205] - [usb] USB: serial: spcp8x5: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: oti6858: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: simplify init_termios (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop bogus initial cflag (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: clean up initial-termios handling (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused termios (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: drop unused driver data flag (Torez Smith) [1686205] - [usb] USB: serial: fix initial-termios handling (Torez Smith) [1686205] - [usb] USB: yurex: Fix protection fault after device removal (Torez Smith) [1686205] - [usb] usb: usbip: fix isoc packet num validation in get_pipe (Torez Smith) [1686205] - [usb] usb/hcd: Send a uevent signaling that the host controller had died (Torez Smith) [1686205] - [usb] usb: typec: Add driver for NVIDIA Alt Modes (Torez Smith) [1686205] - [usb] usb: typec: displayport: Export probe and remove functions (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Support for DisplayPort alt mode (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Preliminary support for alternate modes (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add firmware flashing support (Torez Smith) [1686205] - [usb] usb: typec: ucsi: ccg: add get_fw_info function (Torez Smith) [1686205] - [usb] usb: usb251xb: Lock i2c-bus segment the hub resides (Torez Smith) [1686205] - [usb] usb: dwc3: Allow building USB_DWC3_QCOM without EXTCON (Torez Smith) [1686205] - [usb] usbip: stub_rx: tidy the indenting in is_clear_halt_cmd() (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up set_termios (Torez Smith) [1686205] - [usb] USB: serial: digi_acceleport: clean up modem-control handling (Torez Smith) [1686205] - [usb] USB: core: Fix bug caused by duplicate interface PM usage counter (Torez Smith) [1686205] - [usb] usb: mtu3: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: chipidea: msm: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: dwc2: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: misc: usb3503: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: xhci-mtk: get optional clock by devm_clk_get_optional() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Revert "Resolve fixed power role contract setup" (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Implement start_toggling for all port-types (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Notify the tcpc to start connection-detection for SRPs (Torez Smith) [1686205] - [usb] usb: host: use usb_endpoint_maxp instead of usb_maxpacket (Torez Smith) [1686205] - [usb] USB: dummy-hcd: Fix failure to give back unlinked URBs (Torez Smith) [1686205] - [usb] USB: core: Don't unbind interfaces following device reset failure (Torez Smith) [1686205] - [usb] usb-storage: Set virt_boundary_mask to avoid SG overflows (Torez Smith) [1686205] - [usb] USB: core: Fix unterminated string returned by usb_string() (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic EHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert the generic OHCI binding to YAML (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Convert USB HCD generic binding to YAML (Torez Smith) [1686205] - [usb] USB: hub: Remove returned value 'status' since never used (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Add Tegra186 XUSB support (Torez Smith) [1686205] - [usb] usb: host: xhci-tegra: Selectively program IPFS (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add Tegra186 support (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: drop the vbus GPIO (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: disable the regulator if the overcurrent irq fired (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: let the regulator framework keep track of use count (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix tranceiver suspend mode (Torez Smith) [1686205] - [usb] USB: serial: pl2303: fix non-supported xon/xoff (Torez Smith) [1686205] - [usb] USB: serial: option: add Olicard 600 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add new device id (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix resource leak (Torez Smith) [1686205] - [usb] usb: cdc-acm: fix race during wakeup blocking TX traffic (Torez Smith) [1686205] - [usb] usb: mtu3: fix EXTCON dependency (Torez Smith) [1686205] - [usb] usb: usb251xb: fix to avoid potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: core: Try generic PHY_MODE_USB_HOST if usb_phy_roothub_set_mode fails (Torez Smith) [1686205] - [usb] usb: introduce usb_ep_type_string() function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_irq_work static (Torez Smith) [1686205] - [usb] usb: u132-hcd: fix potential NULL pointer dereference (Torez Smith) [1686205] - [usb] usb: typec: wcove: Provide fwnode for the port (Torez Smith) [1686205] - [usb] usb: core: Add PM runtime calls to usb_hcd_platform_shutdown (Torez Smith) [1686205] - [usb] usb: sierra: fix a missing check of device_create_file (Torez Smith) [1686205] - [usb] usb: mtu3: add a function to switch mailbox state to string (Torez Smith) [1686205] - [usb] usb: mtu3: add tracepoints to help debug (Torez Smith) [1686205] - [usb] usb: mtu3: move vbus and mode debugfs interfaces into mtu3_debugfs.c (Torez Smith) [1686205] - [usb] usb: mtu3: add debugfs interface files (Torez Smith) [1686205] - [usb] usb: mtu3: supports new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild qmu_gpd struct to prepare to support new QMU format (Torez Smith) [1686205] - [usb] usb: mtu3: fix transfer error of USB3 Gen2 isoc (Torez Smith) [1686205] - [usb] usb: mtu3: rebuild the code of getting vbus regulator (Torez Smith) [1686205] - [usb] usb: mtu3: remove unnecessary local variable @req (Torez Smith) [1686205] - [usb] usb: mtu3: print useful information also for device and host modes (Torez Smith) [1686205] - [usb] usb: mtu3: check return value of devm_extcon_register_notifier() (Torez Smith) [1686205] - [usb] xhci: Don't let USB3 ports stuck in polling state prevent suspend (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Don't free all memory with spinlock held (Torez Smith) [1686205] - [usb] xhci: Fix port resume done detection for SS ports with LPM enabled (Torez Smith) [1686205] - [usb] USB: serial: mos7720: fix mos_parport refcount imbalance on error path (Torez Smith) [1686205] - [usb] USB: gadget: f_hid: fix deadlock in f_hidg_write() (Torez Smith) [1686205] - [usb] usb: gadget: net2272: Fix net2272_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix net2280_dequeue() (Torez Smith) [1686205] - [usb] usb: gadget: net2280: Fix overrun of OUT messages (Torez Smith) [1686205] - [usb] usb: dwc3: pci: add support for Comet Lake PCH ID (Torez Smith) [1686205] - [usb] usb: usb251xb: Remove unnecessary comparison of unsigned integer with >= 0 (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Add __printf attribute to fusb302_log function (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Improve suspend/resume handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: 2 small misc. fixes (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fix fusb302_handle_togdone_src Ra handling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Check vconn is off when we start toggling (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Fold fusb302_set_cc_pull into tcpm_set_cc (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Refactor / simplify tcpm_set_cc() (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Make fusb302_set_cc_polarity also set pull ups / downs (Torez Smith) [1686205] - [usb] usb: typec: pi3usb30532: Keep orientation when setting mux to safe mode (Torez Smith) [1686205] - [usb] usb: typec: altmodes/displayport: Fall back to multi-func pins (Torez Smith) [1686205] - [usb] usbip: Remove unnecessary null check (Torez Smith) [1686205] - [include] USB: usb.h: tweak struct urb to remove wasted space (Torez Smith) [1686205] - [usb] usb: common: Consider only available nodes for dr_mode (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Try PD-2.0 if sink does not respond to 3.0 source-caps (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add XHCI_TRUST_TX_LENGTH quirk (Torez Smith) [1686205] - [usb] usb: typec: Fix unchecked return value (Torez Smith) [1686205] - [usb] USB: serial: option: set driver_info for SIM5218 and compatibles (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add additional NovaTech products (Torez Smith) [1686205] - [usb] USB: serial: option: add support for Quectel EM12 (Torez Smith) [1686205] - [usb] wusb: Remove unnecessary static function ckhdid_printf (Torez Smith) [1686205] - [usb] usb: core: make default autosuspend delay configurable (Torez Smith) [1686205] - [usb] usb: core: Fix typo in description of "authorized_default" (Torez Smith) [1686205] - [usb] usb: chipidea: Refactor USB PHY selection and keep a single PHY (Torez Smith) [1686205] - [usb] usb: chipidea: Grab the (legacy) USB PHY by phandle first (Torez Smith) [1686205] - [usb] usb: chipidea: imx: set power polarity (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ci-hdrc-usb2: add property power-active-high (Torez Smith) [1686205] - [usb] usb: chipidea: imx: remove unused header files (Torez Smith) [1686205] - [usb] usb: chipidea: tegra: Fix missed ci_hdrc_remove_device() (Torez Smith) [1686205] - [usb] usb: core: add option of only authorizing internal devices (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: handle block writes separately with plain-I2C adapters (Torez Smith) [1686205] - [usb] usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on INTEL_SUNRISEPOINT_LP_XHCI (Torez Smith) [1686205] - [usb] usb: xhci: fix build warning - missing prototype (Torez Smith) [1686205] - [usb] usb: xhci: dbc: Fixing typo error (Torez Smith) [1686205] - [usb] usb: xhci: remove unused member 'parent' in xhci_regset struct (Torez Smith) [1686205] - [usb] xhci: tegra: Prevent error pointer dereference (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit ME910 ECM composition (Torez Smith) [1686205] - [usb] usb: core: Replace hardcoded check with inline function from usb.h (Torez Smith) [1686205] - [usb] usb: core: skip interfaces disabled in devicetree (Torez Smith) [1686205] - [usb] usb: typec: mux: remove redundant check on variable match (Torez Smith) [1686205] - [usb] USB: serial: cp210x: fix GPIO in autosuspend (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Defer probe if extcon device is not found (Torez Smith) [1686205] - [usb] cdc-wdm: pass return value of recover_from_urb_loss (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: remove set but not used variables 'uframes, transfer_buffer_length' (Torez Smith) [1686205] - [usb] USB: renesas_usbhs: fix spelling mistake "doens't" -> "doesn't" (Torez Smith) [1686205] - [usb] usb: wusbcore: wa-xfer: use struct_size() helper (Torez Smith) [1686205] - [usb] usb: core: config: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: dwc2: use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: typec: mux: Fix unsigned comparison with less than zero (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485 (Torez Smith) [1686205] - [usb] usb: typec: mux: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Find the ports by also matching against the device node (Torez Smith) [1686205] - [usb] usb: roles: Find the muxes by also matching against the device node (Torez Smith) [1686205] - [usb] usb: typec: Rationalize the API for the muxes (Torez Smith) [1686205] - [usb] usb: typec: tps6598x: Check mode of operation (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Remove unused functions (Torez Smith) [1686205] - [usb] USB: musb: mark expected switch fall-through (Torez Smith) [1686205] - [usb] usb: phy: twl6030-usb: fix possible use-after-free on remove (Torez Smith) [1686205] - [usb] usb: misc: usbtest: add super-speed isoc support (Torez Smith) [1686205] - [usb] usb: dwc3: Reset num_trbs after skipping (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't enable interrupt when disabling endpoint (Torez Smith) [1686205] - [usb] scsi: uas: Use scsi_et_resid() where appropriate (Torez Smith) [1686205] - [usb] usb: host: oxu210hp-hcd: fix indentation issue (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add vbus and overcurrent gpios (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a helper pointer to &pdev->dev (Torez Smith) [1686205] - [usb] usb: ohci-da8xx: add a new line after local variables (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on CONFIG_USB for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: Kconfig: Drop dependency on MACH_JZ4740 for jz4740 (Torez Smith) [1686205] - [usb] usb: musb: jz4740: Add support for devicetree (Torez Smith) [1686205] - [documentation] Documentation: dt: Add binding info for jz4740-musb driver (Torez Smith) [1686205] - [usb] USB: musb: fix indentation issue on a return statement (Torez Smith) [1686205] - [usb] fotg210-udc: pass struct device to DMA API functions (Torez Smith) [1686205] - [usb] fotg210-udc: remove a bogus dma_sync_single_for_device call (Torez Smith) [1686205] - [usb] usb: gadget: Change Andrzej Pietrasiewicz's e-mail address (Torez Smith) [1686205] - [usb] usb: f_fs: Avoid crash due to out-of-scope stack ptr access (Torez Smith) [1686205] - [usb] usb: typec: ucsi: Remove debug.h file (Torez Smith) [1686205] - [usb] usb: typec: Prepare alt mode enter/exit reporting for UCSI alt mode support (Torez Smith) [1686205] - [usb] usb: typec: displayport: Move the Configuration VDO helpers to the header (Torez Smith) [1686205] - [usb] USB: Fix configuration selection issues introduced in v4.20.0 (Torez Smith) [1686205] - [usb] usb: handle warm-reset port requests on hub resume (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add ID for Ingenico 3070 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add minimum baud rate for CP2105 SCI (Torez Smith) [1686205] - [usb] usb: dwc3: haps: Workaround matching VID PID (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: preserve wMaxPacketSize across usb_ep_autoconfig() call (Torez Smith) [1686205] - [usb] usb: gadget: move non-super speed code out of usb_ep_autoconfig_ss() (Torez Smith) [1686205] - [usb] usb: gadget: function: sync f_uac1 ac header baInterfaceNr (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add scatter-gather mode (Torez Smith) [1686205] - [usb] usb: gadget: fix various indentation issues (Torez Smith) [1686205] - [usb] usb: dwc2: Fix EP TxFIFO number setting (Torez Smith) [1686205] - [usb] udc: net2280: Fix net2280_disable (Torez Smith) [1686205] - [usb] USB: gadget: Improve kerneldoc for usb_ep_dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: debug: purge usage of strcat (Torez Smith) [1686205] - [usb] USB: serial: cp210x: add GPIO support for CP2104 (Torez Smith) [1686205] - [usb] usb: dwc3: trace: pass trace buffer size to decoding functions (Torez Smith) [1686205] - [usb] usb: core: Move variable initialization to appropriate place (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove DWC3_EP_END_TRANSFER_PENDING (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: early giveback if End Transfer already completed (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: don't use resource_index as a flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: clear DWC3_EP_TRANSFER_STARTED on cmd complete (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Correct the PPS out_volt calculation (Torez Smith) [1686205] - [usb] usb: gadget: musb: fix short isoc packets with inventra dma (Torez Smith) [1686205] - [usb] usbip: Fix vep_free_request() null pointer checks on input args (Torez Smith) [1686205] - [usb] usb: ehci-orion: add S2RAM support (Torez Smith) [1686205] - [usb] usb: ehci-orion: avoid double PHY initialization (Torez Smith) [1686205] - [usb] usb: host: xhci: mvebu: add reset on resume quirk (Torez Smith) [1686205] - [usb] usb: core: comply to PHY framework (Torez Smith) [1686205] - [usb] usb: phy: am335x: fix race condition in _probe (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Fix error handling of clk_prepare_enable (Torez Smith) [1686205] - [usb] usb: phy: fix link errors (Torez Smith) [1686205] - [usb] usb: gadget: udc: net2272: Fix bitwise and boolean operations (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Handle 0 xfer length for OUT EP (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove req->started flag (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: prevent dwc3_request from being queued twice (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: add dwc3_request status tracking (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: uvc: add uvcg_warn macro (Torez Smith) [1686205] - [usb] usb: gadget: u_serial: process RX in workqueue instead of tasklet (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774c0 support (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add bindings for r8a774c0 (Torez Smith) [1686205] - [usb] usb: gadget: aspeed: fix typo (Torez Smith) [1686205] - [usb] usb: dwc3: keystone: Add support for ti, am654-dwc3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: keystone-usb: Add ti, am654-dwc3 support (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix OTG events when gadget driver isn't loaded (Torez Smith) [1686205] - [usb] usb: dwc3: qcom: Add support for MSM8998 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: Add support for msm8998 (Torez Smith) [1686205] - [usb] usb: gadget: Remove dead branch code (Torez Smith) [1686205] - [usb] USB: serial: cp210x: support all gpios on CP2102N QFN28 package (Torez Smith) [1686205] - [usb] usb: ftdi-elan: Fix if == else warnings in ftdi_elan_respond_engine (Torez Smith) [1686205] - [usb] usb: typec: tpcm: improve error handling of tcpm_register_port (Torez Smith) [1686205] - [usb] usb: misc: usb3503: Add system sleep support in non-I2C mode (Torez Smith) [1686205] - [usb] usbip: Fix vhci_urb_enqueue() URB null transfer buffer error path (Torez Smith) [1686205] - [usb] usb: sisusb: remove useless macros and compact the code (Torez Smith) [1686205] - [usb] usb: sisusb: let files build only when needed (Torez Smith) [1686205] - [usb] usb: sisusb_con, cleanup configs (Torez Smith) [1686205] - [usb] usb: sisusb_con, convert addr macros to functions (Torez Smith) [1686205] - [usb] usb: ftdi-elan: remove a unnecessary variable 'empty_packets' (Torez Smith) [1686205] - [usb] usb: assign ACPI companions for embedded USB devices (Torez Smith) [1686205] - [usb] usb: split code locating ACPI companion into port and device (Torez Smith) [1686205] - [usb] USB: host: whci: rename Kbuild file (Torez Smith) [1686205] - [usb] USB: remove README file (Torez Smith) [1686205] - [usb] USB: add missing SPDX lines to Kconfig and Makefiles (Torez Smith) [1686205] - [usb] USB: storage: karma: add whitespace after declarations (Torez Smith) [1686205] - [usb] USB: serial: keyspan_usa: add proper SPDX lines for .h files (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add MODULE_DEVICE_TABLE (Torez Smith) [1686205] - [usb] USB: Consolidate LPM checks to avoid enabling LPM twice (Torez Smith) [1686205] - [usb] USB: Add new USB LPM helpers (Torez Smith) [1686205] - [usb] drivers: usb :fsl: Remove USB Errata checking code (Torez Smith) [1686205] - [usb] usb: kconfig: remove dependency FSL_SOC for ehci fsl driver (Torez Smith) [1686205] - [usb] usb: ehci: fsl: Update register accessing for arm/arm64 platforms (Torez Smith) [1686205] - [usb] usb: usb251xb: add usb data lane port swap feature (Torez Smith) [1686205] - [documentation] dt-bindings: usb: usb251xb: add documentation for data lane swapping (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: replace udelay() with usleep_range() (Torez Smith) [1686205] - [usb] USB: host: ohci-at91: add sam9x60-sfr definition for ohci (Torez Smith) [1686205] - [usb] xhci: Use struct_size() in kzalloc() (Torez Smith) [1686205] - [usb] usb: hub: add retry routine after intr URB submit error (Torez Smith) [1686205] - [usb] USB: leds: fix regression in usbport led trigger (Torez Smith) [1686205] - [usb] usb: chipidea: fix static checker warning for NULL pointer (Torez Smith) [1686205] - [usb] USB: usbip: delete README file (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add new PID to support PL2303TB (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix Remote Wakeup interrupt bit clearing (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix GPIO not working in autosuspend (Torez Smith) [1686205] - [usb] usb: gadget: Potential NULL dereference on allocation error (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Fix the uninitialized link_state when udc starts (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: synchronize_irq dwc irq in suspend (Torez Smith) [1686205] - [usb] USB: core: urb: Use struct_size() in kmalloc() (Torez Smith) [1686205] - [usb] cross-tree: phase out dma_zalloc_coherent() (Torez Smith) [1686205] - [usb] usb: gadget: udc: reduce indentation (Torez Smith) [1686205] - [usb] usb: devio: update max count of DPs per interval for ISOC (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: fix a couple of indentation issues (Torez Smith) [1686205] - [usb] usb: core: Simplify return value of usb_get_configuration() (Torez Smith) [1686205] - [usb] USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB (Torez Smith) [1686205] - [usb] usbcore: Select only first configuration for non-UAC3 compliant devices (Torez Smith) [1686205] - [usb] USB: storage: add quirk for SMI SM3350 (Torez Smith) [1686205] - [usb] USB: storage: don't insert sane sense for SPC3+ when bad sense specified (Torez Smith) [1686205] - [usb] usb: cdc-acm: send ZLP for Telit 3G Intel based modems (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra TPG2200 device id (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL678 series (Torez Smith) [1686205] - [usb] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader (Torez Smith) [1686205] - [usb] usb: r8a66597: Fix a possible concurrency use-after-free bug in r8a66597_endpoint_disable() (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Extend the matching rules on PPS APDO selection (Torez Smith) [1686205] - [documentation] usb: typec: Improve Alt Mode documentation (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix runtime pm for peripheral mode (Torez Smith) [1686205] - [usb] usb: musb: dsps: fix otg state machine (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add ids for Hewlett-Packard HP POS pole displays (Torez Smith) [1686205] - [usb] PCI: Move Synopsys HAPS platform device IDs (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for RZ/G2E (Torez Smith) [1686205] - [usb] usb: ehci-omap: Fix deferred probe for phy handling (Torez Smith) [1686205] - [usb] usb: roles: Add a description for the class to Kconfig (Torez Smith) [1686205] - [usb] xhci: Don't prevent USB2 bus suspend in state check intended for USB3 only (Torez Smith) [1686205] - [usb] USB: serial: option: add Telit LN940 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Fibocom NL668 series (Torez Smith) [1686205] - [usb] USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode) (Torez Smith) [1686205] - [usb] USB: serial: option: add GosunCn ZTE WeLink ME3630 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: mark PM functions as __maybe_unused (Torez Smith) [1686205] - [usb] usb: core: Remove unnecessary memset() (Torez Smith) [1686205] - [usb] usb: host: isp1362-hcd: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: dwc2: Fix disable all EP's on disconnect (Torez Smith) [1686205] - [usb] usb: chipidea: imx: allow to configure oc polarity on i.MX25 (Torez Smith) [1686205] - [usb] usb: chipidea: imx: Warn if oc polarity isn't specified (Torez Smith) [1686205] - [usb] usb: chipidea: imx: support configuring for active low oc signal (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties for HSIC pin groups (Torez Smith) [1686205] - [usb] usb: chipidea: host: override ehci->hub_control (Torez Smith) [1686205] - [usb] usb: chipidea: imx: add HSIC support (Torez Smith) [1686205] - [usb] usb: chipidea: add flag for imx hsic implementation (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Disable CSP for stream OUT ep (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'number, serial' (Torez Smith) [1686205] - [usb] USB: serial: option: add HP lt4132 (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on Amlogic devices (Torez Smith) [1686205] - [usb] xhci: move usb2 get port status link resume handling to its own function (Torez Smith) [1686205] - [usb] xhci: refactor U0 link state handling in get_port_status (Torez Smith) [1686205] - [usb] xhci: cleanup code that sets portstatus and portchange bits (Torez Smith) [1686205] - [usb] xhci: move usb2 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: move usb3 speficic bits to own function in get_port_status call (Torez Smith) [1686205] - [usb] xhci: remove unused hcd_index() (Torez Smith) [1686205] - [usb] xhci: move bus_state structure under the xhci_hub structure (Torez Smith) [1686205] - [usb] xhci: remove the unused sw_lpm_support (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: pci: Use devm functions to get the phy GPIOs" (Torez Smith) [1686205] - [usb] USB: gadget: udc: s3c2410_udc: convert to DEFINE_SHOW_ATTRIBUTE (Torez Smith) [1686205] - [usb] usb: mtu3: fix dbginfo in qmu_tx_zlp_error_handler (Torez Smith) [1686205] - [usb] usb: dwc3: trace: add missing break statement to make compiler happy (Torez Smith) [1686205] - [usb] xhci: Prevent U1/U2 link pm states if exit latency is too long (Torez Smith) [1686205] - [usb] xhci: workaround CSS timeout on AMD SNPS 3.0 xHC (Torez Smith) [1686205] - [tty] USB: serial: console: fix reported terminal settings (Torez Smith) [1686205] - [usb] usb: appledisplay: Remove unnecessary spinlock (Torez Smith) [1686205] - [usb] usb: appledisplay: Set urb transfer_flags to URB_NO_TRANSFER_DMA_MAP (Torez Smith) [1686205] - [usb] usb: quirk: add no-LPM quirk on SanDisk Ultra Flair device (Torez Smith) [1686205] - [usb] USB: Fix invalid-free bug in port_over_current_notify() (Torez Smith) [1686205] - [usb] usb: appledisplay: Add 27" Apple Cinema Display (Torez Smith) [1686205] - [platform] staging: typec: fusb302: Rename fcs, extcon-name to linux, extcon-name (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Report isoc transfer frame number (Torez Smith) [1686205] - [include] usb: gadget: Introduce frame_number to usb_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Use SIMPLE_DEV_PM_OPS macro (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Remove dummy runtime PM callbacks (Torez Smith) [1686205] - [usb] usb: dwc2: host: use hrtimer for NAK retries (Torez Smith) [1686205] - [usb] usb: hub: delay hub autosuspend if USB3 port is still link training (Torez Smith) [1686205] - [usb] usb: mtu3: clear SOFTCONN when clear USB3_EN if work as HS mode (Torez Smith) [1686205] - [usb] usb: mtu3: enable SETUPENDISR interrupt (Torez Smith) [1686205] - [usb] usb: mtu3: fix the issue about SetFeature(U1/U2_Enable) (Torez Smith) [1686205] - [usb] usb: mtu3: enable hardware remote wakeup from L1 automatically (Torez Smith) [1686205] - [usb] usb: mtu3: remove QMU checksum (Torez Smith) [1686205] - [usb] usb/mtu3: power down device ip at setup (Torez Smith) [1686205] - [usb] usb: dwc2: Disable power down feature on Samsung SoCs (Torez Smith) [1686205] - [usb] usb: dwc3: Correct the logic for checking TRB full in __dwc3_prepare_one_trb() (Torez Smith) [1686205] - [usb] usb: dwc3: don't issue no-op trb for stream capable endpoints (Torez Smith) [1686205] - [usb] usb: dwc3: update stream id in depcmd (Torez Smith) [1686205] - [usb] USB: serial: mos7840: add a product ID for the new product (Torez Smith) [1686205] - [usb] USB: serial: mos7840: clean up register handling (Torez Smith) [1686205] - [usb] usb: gadget: u_ether: fix unsafe list iteration (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: check if dep->frame_number is still valid (Torez Smith) [1686205] - [usb] USB: omap_udc: fix rejection of out transfers when DMA is used (Torez Smith) [1686205] - [usb] USB: omap_udc: fix USB gadget functionality on Palm Tungsten E (Torez Smith) [1686205] - [usb] USB: omap_udc: fix omap_udc_start() on 15xx machines (Torez Smith) [1686205] - [usb] USB: omap_udc: fix crashes on probe error and module removal (Torez Smith) [1686205] - [usb] USB: omap_udc: use devm_request_irq() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove unnecessary dev_info() (Torez Smith) [1686205] - [usb] usb: dwc3: trace: log ep commands in hex (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: return errors from __dwc3_gadget_start_isoc() (Torez Smith) [1686205] - [usb] usb: core: quirks: add RESET_RESUME quirk for Cherry G230 Stream series (Torez Smith) [1686205] - [usb] USB: usb-storage: Add new IDs to ums-realtek (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: remove wait_end_transfer (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: move requests to cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: introduce cancelled_list (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: extract dwc3_gadget_ep_skip_trbs() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: use num_trbs when skipping TRBs on ->dequeue() (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: track number of TRBs per request (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: combine unaligned and zero flags (Torez Smith) [1686205] - [usb] usb: dwc3: Add workaround for isoc start transfer failure (Torez Smith) [1686205] - [documentation] usb: dwc3: Add disabling of start_transfer failure quirk (Torez Smith) [1686205] - [usb] usb: dwc3: Track DWC_usb31 VERSIONTYPE (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Allow scatter-gather buffers (Torez Smith) [1686205] - [usb] usb: gadget: f_fs: Add support for CCID descriptors (Torez Smith) [1686205] - [usb] usb: gadget: uvc: constify vb2_ops structure (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Accept LPM token when TxFIFO is not empty (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Fix WkupAlert interrupt handler (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for DWC_usb3 v3.30a and higher (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add a safety connection way for forced_b_device (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Add support for DR detection through extcon (Torez Smith) [1686205] - [usb] usb: dwc3: drd: Switch to device property for 'extcon' handling (Torez Smith) [1686205] - [usb] usb: dwc3: don't log probe deferrals; but do log other error codes (Torez Smith) [1686205] - [usb] usb: gadget: aspeed-vhub: constify usb_gadget_ops structure (Torez Smith) [1686205] - [usb] usb: dwc3: Support option to disable USB2 LPM (Torez Smith) [1686205] - [documentation] usb: dwc3: Add a property to disable USB2 LPM (Torez Smith) [1686205] - [usb] usb: dwc3: Set GUSB2PHYCFG.ENBLSLPM (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print/set link state for peripheral mode (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly print/set link state for HS (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Dump internal LSP and ep registers (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Print eps Tx/RxFIFO in bytes (Torez Smith) [1686205] - [usb] usb: dwc3: debugfs: Properly name Tx/RxFIFO (Torez Smith) [1686205] - [usb] Revert "usb: dwc3: gadget: skip Set/Clear Halt when invalid" (Torez Smith) [1686205] - [usb] drivers: usb: early: clean up indentation, remove extraneous tabs (Torez Smith) [1686205] - [usb] USB: ene_usb6250: add missing indentation (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: use rounding when calculating baud rate divisors (Torez Smith) [1686205] - [usb] USB: serial: f81534: fix reading old/new IC config (Torez Smith) [1686205] - [usb] usb: cdc-acm: add entry for Hiro (Conexant) modem (Torez Smith) [1686205] - [usb] usb: xhci: Prevent bus suspend if a port connect change or polling state is detected (Torez Smith) [1686205] - [usb] usb: core: Fix hub port connection events lost (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: fix ISOC TRB type on unaligned transfers (Torez Smith) [1686205] - [usb] Revert "usb: gadget: ffs: Fix BUG when userland exits with submitted AIO transfers" (Torez Smith) [1686205] - [usb] usb: dwc2: pci: Fix an error code in probe (Torez Smith) [1686205] - [usb] usb: dwc3: Fix NULL pointer exception in dwc3_pci_remove() (Torez Smith) [1686205] - [usb] USB: serial: mos7840: remove set but not used variables 'st, data1, iflag' (Torez Smith) [1686205] - [usb] USB: serial: quatech2: remove set but not used variable 'port_priv' (Torez Smith) [1686205] - [include] USB: remove the unused struct hcd_timeout definition (Torez Smith) [1686205] - [usb] usb: typec: ucsi: add support for Cypress CCGx (Torez Smith) [1686205] - [usb] usb: xhci: fix timeout for transition from RExit to U0 (Torez Smith) [1686205] - [usb] usb: xhci: fix uninitialized completion when USB3 port got wrong status (Torez Smith) [1686205] - [usb] xhci: Add check for invalid byte size error when UAS devices are connected (Torez Smith) [1686205] - [usb] xhci: handle port status events for removed USB3 hcd (Torez Smith) [1686205] - [usb] xhci: Fix leaking USB3 shared_hcd at xhci removal (Torez Smith) [1686205] - [documentation] dt-bindings: usb: xhci-tegra: Add power-domain details (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: add 20" Apple Cinema Display (Torez Smith) [1686205] - [usb] USB: quirks: Add no-lpm quirk for Raydium touchscreens (Torez Smith) [1686205] - [usb] usb: quirks: Add delay-init quirk for Corsair K70 LUX RGB (Torez Smith) [1686205] - [usb] USB: Wait for extra delay time after USB_PORT_FEAT_RESET for quirky hub (Torez Smith) [1686205] - [usb] USB: gadget: udc: fix spelling mistake "intrerrupt" -> "interrupt" (Torez Smith) [1686205] - [usb] usb: host: remove unnecessary condition check (Torez Smith) [1686205] - [usb] usb: typec: tcpm: charge current handling for sink during hard reset (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Do not disconnect link for self powered devices (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Properly check last unaligned/zero chain TRB (Torez Smith) [1686205] - [usb] usb: dwc3: core: Clean up ULPI device (Torez Smith) [1686205] - [usb] usb: phy: ab8500: silence some uninitialized variable warnings (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Add genpd support (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Power-off power-domains on removal (Torez Smith) [1686205] - [usb] usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten (Torez Smith) [1686205] - [tools] usbip: tools: fix atoi() on non-null terminated string (Torez Smith) [1686205] - [usb] USB: misc: appledisplay: fix backlight update_status return code (Torez Smith) [1686205] - [usb] USB: fix the usbfs flag sanitization for control transfers (Torez Smith) [1686205] - [documentation] usb: host: add DT bindings for faraday fotg2 (Torez Smith) [1686205] - [usb] usb: host: ohci-at91: fix request of irq for optional gpio (Torez Smith) [1686205] - [usb] usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms (Torez Smith) [1686205] - [usb] usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable (Torez Smith) [1686205] - [usb] cdc-acm: correct counting of UART states in serial state notification (Torez Smith) [1686205] - [usb] cdc-acm: do not reset notification buffer index upon urb unlinking (Torez Smith) [1686205] - [usb] cdc-acm: fix race between reset and control messaging (Torez Smith) [1686205] - [usb] usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control() (Torez Smith) [1686205] - [usb] usb/early: remove set but not used variable 'remain_length' (Torez Smith) [1686205] - [usb] usb: typec: Fix copy/paste on typec_set_vconn_role() kerneldoc (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Report back negotiated PPS voltage and current (Torez Smith) [1686205] - [usb] USB: core: remove set but not used variable 'udev' (Torez Smith) [1686205] - [usb] usb: core: fix memory leak on port_dev_path allocation (Torez Smith) [1686205] - [usb] USB: net2280: Remove ->disconnect() callback from net2280_pullup() (Torez Smith) [1686205] - [usb] usb: dwc2: disable power_down on rockchip devices (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: add support for r8a77990 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usb3: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: remove set but not used variable 'iflag' (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix interrupt-out transfer length (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: add support for FT232R CBUS gpios (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: fix gpio name collisions (Torez Smith) [1686205] - [netdrv] net: usbnet: make driver_info const (Torez Smith) [1686205] - [usb] usb: typec: remove set but not used variables 'snk_ma, min_mv' (Torez Smith) [1686205] - [usb] usb: export firmware port location in sysfs (Torez Smith) [1686205] - [usb] usb: hub: try old enumeration scheme first for high speed devices (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Document r8a7744 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add support for r8a7744 (Torez Smith) [1686205] - [usb] usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage (Torez Smith) [1686205] - [tools] usbip: fix vhci_hcd controller counting (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Fix b-device mode for "workaround" (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add handler for WkupAlert interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: enable WKUP_ALERT interrupt (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Program GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: Add parameters for GREFCLK register (Torez Smith) [1686205] - [usb] usb: dwc2: Add definitions for new registers (Torez Smith) [1686205] - [usb] usb: dwc2: Update target (u)frame calculation (Torez Smith) [1686205] - [usb] usb: dwc2: Add dwc2_gadget_dec_frame_num_by_one() function (Torez Smith) [1686205] - [usb] usb: dwc2: Add core parameter for service interval support (Torez Smith) [1686205] - [usb] usb: dwc2: Update registers definitions to support service interval (Torez Smith) [1686205] - [usb] usb: gadget: f_uac2: disable IN/OUT ep if unused (Torez Smith) [1686205] - [usb] USB: gadget core: Issue ->disconnect() callback from usb_gadget_disconnect() (Torez Smith) [1686205] - [usb] usb: dwc3: Fix spelling of 'optimizations' (Torez Smith) [1686205] - [usb] usb: gadget: atmel: remove pointless retrieval of DT name property (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: fixup struct_udc_setup documentation (Torez Smith) [1686205] - [usb] usb: gadget: fsl_udc_core: check allocation return value and cleanup on failure (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check ENBLSLPM before sending ep command (Torez Smith) [1686205] - [usb] usb: dwc2: fix unbalanced use of external vbus-supply (Torez Smith) [1686205] - [usb] usb: dwc2: fix call to vbus supply exit routine, call it unlocked (Torez Smith) [1686205] - [usb] usb: dwc2: fix a race with external vbus supply (Torez Smith) [1686205] - [usb] usb: dwc2: get optional vbus-supply regulator once (Torez Smith) [1686205] - [usb] usb: dwc3: add EXTCON dependency for qcom (Torez Smith) [1686205] - [usb] usb: gadget: udc: atmel: handle at91sam9rl PMC (Torez Smith) [1686205] - [usb] usb: gadget: udc: fotg210-udc: Fix a sleep-in-atomic-context bug in fotg210_get_status() (Torez Smith) [1686205] - [usb] usb: dwc2: Disable all EP's on disconnect (Torez Smith) [1686205] - [documentation] usb: dwc3: exynos: Add support for Exynos5433 variant with all clocks (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Rework clock handling and prepare for new variants (Torez Smith) [1686205] - [usb] usb: dwc3: exynos: Remove dead code (Torez Smith) [1686205] - [usb] usb: gadget: udc: Remove unnecessary parentheses (Torez Smith) [1686205] - [usb] usb: dwc2: remove set but unused variable (Torez Smith) [1686205] - [usb] usb: gadget: fix spelling mistakeis "queing" -> "queuing" (Torez Smith) [1686205] - [usb] usb: xhci-mtk: resume USB3 roothub first (Torez Smith) [1686205] - [usb] xhci: Add missing CAS workaround for Intel Sunrise Point xHCI (Torez Smith) [1686205] - [usb] usb: cdc_acm: Do not leak URB buffers (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_abort_bulk_in_tag (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_ioctl_clear (Torez Smith) [1686205] - [usb] usb: usbtmc: uninitialized symbol 'actual' in usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix memory leak in usbtmc_ioctl_request (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: add support for R-Car E3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add bindings for r8a77990 (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: rcar3: Use OTG mode for R-Car D3 (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: set the mode by using extcon state for non-otg channel" (Torez Smith) [1686205] - [usb] Revert "usb: renesas_usbhs: add extcon notifier to set mode for non-otg channel" (Torez Smith) [1686205] - [usb] usb: core: added uevent for over-current (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Resolve fixed power role contract setup (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Correct spelling mistake for toggling state (Torez Smith) [1686205] - [usb] xhci: Avoid USB autosuspend when resuming USB2 ports (Torez Smith) [1686205] - [usb] usb: xhci: tegra: Firmware header is little endian (Torez Smith) [1686205] - [usb] xhci: Use soft retry to recover faster from transaction errors (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add platform TPL support (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports SSP without external USB3 gen2 hub (Torez Smith) [1686205] - [usb] usb: xhci-mtk: supports bandwidth scheduling with multi-TT (Torez Smith) [1686205] - [usb] usb: xhci-mtk: improve bandwidth scheduling (Torez Smith) [1686205] - [usb] usb: xhci-mtk: fix ISOC error when interval is zero (Torez Smith) [1686205] - [usb] usb: xhci-mtk: use maximum ESIT payload of endpiont context (Torez Smith) [1686205] - [usb] usb: host: Replace empty define with do while (Torez Smith) [1686205] - [usb] USB: serial: ftdi_sio: implement GPIO support for FT-X devices (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Use u to print unsigned int values (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Simplify attributes macros (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Fix operation on big endian platforms (Torez Smith) [1686205] - [uapi] usb: video: Fix endianness mismatches in descriptor structures (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Remove uvc_set_trace_param() function (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Replace plain printk() with dev_*() (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Only halt video streaming endpoint in bulk mode (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Factor out video USB request queueing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Sort frame intervals upon writing (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Prevent format changes after linking header (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFrameIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add bFormatIndex attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add interface number attributes (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Allocate groups dynamically (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Drop leaked references to config items (Torez Smith) [1686205] - [documentation] dt-bindings: usb: dwc2: add description for px30 (Torez Smith) [1686205] - [usb] USB: serial: simple: add Motorola Tetra MTP6550 id (Torez Smith) [1686205] - [usb] USB: serial: cypress_m8: fix spelling mistake "retreiving" -> "retrieving" (Torez Smith) [1686205] - [usb] USB: STORAGE: ISD200 Fixed coding style issue "space required in for loop" (Torez Smith) [1686205] - [usb] usb: typec: Group all TCPCI/TCPM code together (Torez Smith) [1686205] - [usb] usb: typec: fusb302: reorganizing the probe function a little (Torez Smith) [1686205] - [usb] usb: typec: class: Don't use port parent for getting mux handles (Torez Smith) [1686205] - [usb] usb: typec: mux: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: core: safely deal with the dynamic quirk lists (Torez Smith) [1686205] - [usb] usb: roles: Take care of driver module reference counting (Torez Smith) [1686205] - [usb] usb: phy: mxs: fix spelling mistake "stardard" -> "standard" (Torez Smith) [1686205] - [usb] usb: host: fotg2: Fix potential NULL dereference (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add multiple clocks management (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: add clock-names property (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Add reset_control (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ohci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [documentation] dt-bindings: usb: ehci: Add clocks description for R-Car Gen3 (Torez Smith) [1686205] - [usb] usbcore: Select UAC3 configuration for audio if present (Torez Smith) [1686205] - [documentation] usb: gadget: udc: renesas_usb3: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb: renesas_usbhs: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a774a1 support (Torez Smith) [1686205] - [documentation] dt-bindings: ehci-mv: add bindings (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: add DT support (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: use phy-pxa-usb (Torez Smith) [1686205] - [usb] USB: EHCI: ehci-mv: remove private_init (Torez Smith) [1686205] - [usb] USB: EHCI: make ehci-mv a separate driver (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove sysfs group TermChar and auto_abort (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix split quoted string in debug message (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant macro USBTMC_SIZE_IOBUFFER (Torez Smith) [1686205] - [usb] usb: usbtmc: Remove redundant code (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_API_VERSION (Torez Smith) [1686205] - [usb] usb: usbtmc: Replace USBTMC_TIMEOUT macros for control messages (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_OUT (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_ABORT_BULK_IN (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix ioctl USBTMC_IOCTL_CLEAR (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_read (Torez Smith) [1686205] - [usb] usb: usbtmc: Optimize usbtmc_write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_AUTO_ABORT (Torez Smith) [1686205] - [usb] usb: usbtmc: add ioctl USBTMC_IOCTL_MSG_IN_ATTR (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC488_IOCTL_WAIT_SRQ (Torez Smith) [1686205] - [usb] usb: usbtmc: Fix suspend/resume (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CLEANUP_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_CANCEL_IO (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific read (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl USBTMC_IOCTL_WRITE_RESULT (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for vendor specific write (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for generic requests on control (Torez Smith) [1686205] - [usb] usb: typec: fusb302: Populate tcpc fwnode for TCPM property handling (Torez Smith) [1686205] - [documentation] dt-bindings: usb: fusb302: Use usb-connector bindings for configuration (Torez Smith) [1686205] - [documentation] dt-bindings: connector: Add support for USB-PD PPS APDOs to bindings (Torez Smith) [1686205] - [usb] USB: handle NULL config in usb_find_alt_setting() (Torez Smith) [1686205] - [usb] USB: fix error handling in usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: remove LPM management from usb_driver_claim_interface() (Torez Smith) [1686205] - [usb] USB: usbdevfs: restore warning for nonsensical flags (Torez Smith) [1686205] - [usb] USB: usbdevfs: sanitize flags more (Torez Smith) [1686205] - [usb] Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt()" (Torez Smith) [1686205] - [usb] usb: musb: dsps: do not disable CPPI41 irq in driver teardown (Torez Smith) [1686205] - [usb] usb: chipidea: Fix otg event handler (Torez Smith) [1686205] - [usb] usb: chipidea: Prevent unbalanced IRQ disable (Torez Smith) [1686205] - [documentation] doc: usb: ci-hdrc-usb2: Add pinctrl properties definition (Torez Smith) [1686205] - [usb] usb: chipidea: Add dynamic pinctrl selection (Torez Smith) [1686205] - [usb] usb: chipidea: imx: make MODULE_LICENCE and SPDX-identifier match (Torez Smith) [1686205] - [usb] usb: chipidea: imx: enable OTG overcurrent in case USB subsystem is already started (Torez Smith) [1686205] - [usb] usb: chipidea: imx: do not use preprocessor conditionals for PM (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Add section header comments (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Don't wrap groups unnecessarily (Torez Smith) [1686205] - [usb] mos7720: bury dead TIOCM... in ->ioctl() (Torez Smith) [1686205] - [usb] USB: serial: option: add two-endpoints device-id flag (Torez Smith) [1686205] - [usb] USB: serial: option: improve Quectel EP06 detection (Torez Smith) [1686205] - [usb] Revert "cdc-acm: implement put_char() and flush_chars()" (Torez Smith) [1686205] - [usb] usb: Change usb_of_get_companion_dev() place to usb/common (Torez Smith) [1686205] - [usb] usb: xhci: fix interrupt transfer error happened on MTK platforms (Torez Smith) [1686205] - [usb] usb: core: phy: clean up return value check about devm_of_phy_get_by_index() (Torez Smith) [1686205] - [usb] usb: mtu3: disable vbus rise/fall interrupts of ltssm (Torez Smith) [1686205] - [usb] USB: wusbcore: Switch to bitmap_zalloc() (Torez Smith) [1686205] - [usb] usb: misc: fix obsolete function (Torez Smith) [1686205] - [usb] usb: iowarrior: replace kmalloc with kmalloc_array (Torez Smith) [1686205] - [usb] USB: OHCI: Remove USB bus reset delay from OHCI handover code (Torez Smith) [1686205] - [usb] usb: host: fotg2: add silicon clock handling (Torez Smith) [1686205] - [usb] USB: typec: fsusb302: remove unused variables snk_pdo and toggling_mode_name (Torez Smith) [1686205] - [usb] usb storage: remove inherited SCSI dependency for USB_STORAGE_ENE_UB6250 (Torez Smith) [1686205] - [usb] usb storage: group dependent USB storage Kconfig entries together (Torez Smith) [1686205] - [usb] USB: Removing NULL check for pool since dma_pool_destroy is safe (Torez Smith) [1686205] - [usb] usb: cdc-wdm: Fix a sleep-in-atomic-context bug in service_outstanding_interrupt() (Torez Smith) [1686205] - [usb] usb: misc: uss720: Fix two sleep-in-atomic-context bugs (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame() (Torez Smith) [1686205] - [usb] usb: Avoid use-after-free by flushing endpoints early in usb_set_interface() (Torez Smith) [1686205] - [usb] usb/typec: fix kernel-doc notation warning for typec_match_altmode (Torez Smith) [1686205] - [usb] usb: Don't die twice if PCI xhci host is not responding in resume (Torez Smith) [1686205] - [usb] usb: mtu3: fix error of xhci port id when enable U3 dual role (Torez Smith) [1686205] - [usb] usb: uas: add support for more quirk flags (Torez Smith) [1686205] - [usb] USB: Add quirk to support DJI CineSSD (Torez Smith) [1686205] - [usb] usb: typec: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] usb/dwc3/gadget: fix kernel-doc parameter warning (Torez Smith) [1686205] - [usb] USB: yurex: Check for truncation in yurex_read() (Torez Smith) [1686205] - [usb] USB: yurex: Fix buffer over-read in yurex_write() (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: Iterate over parent nodes for finding quirks (Torez Smith) [1686205] - [usb] xhci: Fix use after free for URB cancellation on a reallocated endpoint (Torez Smith) [1686205] - [usb] USB: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB controller (Torez Smith) [1686205] - [usb] usb: dwc2: Fix call location of dwc2_check_core_endianness (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Fix return value check in dwc3_byt_enable_ulpi_refclock() (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0 (Torez Smith) [1686205] - [usb] usb: gadget: fotg210-udc: Fix memory leak of fotg210->ep (Torez Smith) [1686205] - [usb] USB: net2280: Fix erroneous synchronization change (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: avoid unused function warnings (Torez Smith) [1686205] - [usb] USB: serial: ti_usb_3410_5052: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: io_ti: fix array underflow in completion handler (Torez Smith) [1686205] - [usb] USB: serial: pl2303: add a new device id for ATEN (Torez Smith) [1686205] - [usb] usb: renesas_usbhs: Kconfig: convert to SPDX identifiers (Torez Smith) [1686205] - [usb] usb: dwc3: gadget: Check MaxPacketSize from descriptor (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "stm32f4x9_fsotg" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "amlogic" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "his" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: Turn on uframe_sched on "bcm" platforms (Torez Smith) [1686205] - [usb] usb: dwc2: gadget: ISOC's starting flow improvement (Torez Smith) [1686205] - [usb] usb: dwc2: Make dwc2_readl/writel functions endianness-agnostic (Torez Smith) [1686205] - [usb] usb: dwc3: core: Enable AutoRetry feature in the controller (Torez Smith) [1686205] - [usb] usb: dwc3: Set default mode for dwc_usb31 (Torez Smith) [1686205] - [usb] usb: gadget: udc: renesas_usb3: Add register of usb role switch (Torez Smith) [1686205] - [usb] usb: dwc2: replace ioread32/iowrite32_rep with dwc2_readl/writel_rep (Torez Smith) [1686205] - [usb] usb: dwc2: Modify dwc2_readl/writel functions prototype (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Intel Merrifield can be host (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Supply device properties via driver data (Torez Smith) [1686205] - [documentation] arm64: dts: dwc3: description of incr burst type (Torez Smith) [1686205] - [usb] usb: dwc3: Enable undefined length INCR burst type (Torez Smith) [1686205] - [usb] usb: dwc3: add global soc bus configuration reg0 (Torez Smith) [1686205] - [usb] usb: dwc3: Describe 'wakeup_work' field of struct dwc3_pci (Torez Smith) [1686205] - [usb] USB: option: add support for DW5821e (Torez Smith) [1686205] - [usb] usb: dwc3: change stream event enable bit back to 13 (Torez Smith) [1686205] - [usb] usb: dwc3: of-simple: reset host controller at suspend/resume (Torez Smith) [1686205] - [usb] usb: gadget: storage: Remove reference counting (Torez Smith) [1686205] - [usb] usb: gadget: storage: Add error handling for no memory (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Use devm functions to get the phy GPIOs (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Enable ULPI Refclk on platforms where the firmware does not (Torez Smith) [1686205] - [usb] usb: dwc3: pci: Add GPIO lookup table on platforms without ACPI GPIO resources (Torez Smith) [1686205] - [usb] USB: gadget: Document that certain ep operations can be called in interrupt context (Torez Smith) [1686205] - [usb] usb: gadget: configfs: avoid spaces for indentation (Torez Smith) [1686205] - [usb] usb: dwc3: Add a glue driver for Synopsys HAPS platform (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Expose configuration name through video node (Torez Smith) [1686205] - [usb] usb: gadget: uvc: configfs: Move function to avoid forward declaration (Torez Smith) [1686205] - [usb] usb: dwc2: Move dwc2_readl/writel functions after hsotg structure (Torez Smith) [1686205] - [usb] usb: gadget: tcm: fix spelling mistake: "Manufactor" -> "Manufacturer" (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move trace parameter to function module (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Minimize #include in headers (Torez Smith) [1686205] - [usb] usb: gadget: uvc: Move userspace API definition to public header (Torez Smith) [1686205] - [usb] usb: host: exynos: Remove support for Exynos5440 (Torez Smith) [1686205] - [usb] usb: usbtmc: Add support for 32 bit compat applications (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for termination character (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for EOM bit (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctl for trigger (Torez Smith) [1686205] - [usb] usb: usbtmc: Add ioctls to set/get usb timeout (Torez Smith) [1686205] - [usb] usb: usbtmc: use consistent timeout error (Torez Smith) [1686205] - [usb] usb: usbtmc: Support Read Status Byte with SRQ per file (Torez Smith) [1686205] - [usb] USB: serial: cp210x: implement GPIO support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve line-speed handling for CP2104 and CP2105 (Torez Smith) [1686205] - [usb] USB: serial: cp210x: generalise CP2102N line-speed handling (Torez Smith) [1686205] - [usb] USB: serial: cp210x: improve baudrate support for CP2102N (Torez Smith) [1686205] - [usb] USB: serial: cp210x: honour device-type maximum line speed (Torez Smith) [1686205] - [usb] USB: serial: cp210x: make line-speed quantisation data driven (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop redundant input-speed re-encoding (Torez Smith) [1686205] - [usb] USB: serial: iuu_phoenix: drop unused driver-data baud rate (Torez Smith) [1686205] - [usb] USB: serial: mos7720: remove redundant variables iflag, mask and serial (Torez Smith) [1686205] - [documentation] dt-bindings: usb-xhci: Add r8a77990 support (Torez Smith) [1686205] - [usb] usb: host: ehci-sched: remove redundant pointer dev (Torez Smith) [1686205] - [usb] usb: host: u132-hcd: remove redundant variable num_ports (Torez Smith) [1686205] - [usb] USB: host: whci: remove redundant variable t (Torez Smith) [1686205] - [usb] usb: xhci: dbc: remove redundant pointer dbc (Torez Smith) [1686205] - [usb] usb: isp1760: remove redundant variable 'selector' (Torez Smith) [1686205] - [usb] usb-misc: sisusbvga: remove redundant variable modey (Torez Smith) [1686205] - [usb] usb: misc: uss720: remove redundant pointer usbdev (Torez Smith) [1686205] - [usb] usb: usbip: remove redundant pointer ep (Torez Smith) [1686205] - [usb] USB: serial: kl5kusb105: remove KLSI device id (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Add a condition check about PLL active (Torez Smith) [1686205] - [usb] usb: host: xhci-rcar: Simplify getting the firmware name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: host: xhci-plat: add firmware_name for R-Car Gen3 (Torez Smith) [1686205] - [usb] usb: typec: avoid format-overflow warning (Torez Smith) [1686205] - [usb] usb: typec: unlock dp->lock on error exit path, and also zero ret if successful (Torez Smith) [1686205] - [usb] usb: typec: fix dereference before null check on adev (Torez Smith) [1686205] - [usb] usb: usbtest: use irqsave() in USB's complete callback (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: add missing version error handling (Torez Smith) [1686205] - [usb] USB: serial: kobil_sct: fix modem-status error handling (Torez Smith) [1686205] - [usb] usb: simplify usbport trigger (Torez Smith) [1686205] - [include] device connection: Add fwnode member to struct device_connection (Torez Smith) [1686205]- [security] KEYS: reaching the keys quotas correctly (Vladis Dronov) [1820405] - [security] KEYS: allow reaching the keys quotas exactly (Vladis Dronov) [1820405] - [infiniband] RDMA/core: Ensure security pkey modify is not lost (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Ensure pq is not left on waitlist (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/mad: Do not crash if the rdma device does not have a umad interface (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix missing error check on dev_set_name() (Kamal Heib) [1786604] - [infiniband] RDMA/nl: Do not permit empty devices names during RDMA_NLDEV_CMD_NEWLINK/SET (Kamal Heib) [1786604] - [infiniband] RDMA/iwcm: Fix iwcm work deallocation (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Fix failure handling during device creation (Kamal Heib) [1786604] - [infiniband] RDMA/nldev: Fix crash when set a QP to a new counter but QPN is missing (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in ib_mr_pool_destroy (Kamal Heib) [1786604] - [infiniband] IB/hfi1, qib: Ensure RCU is locked when accessing list (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix pkey and port assignment in get_new_pps (Kamal Heib) [1786604] - [infiniband] RMDA/cm: Fix missing ib_cm_destroy_id() in ib_cm_insert_listen() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix use of logical OR in get_new_pps (Kamal Heib) [1786604] - [infiniband] Revert "RDMA/cma: Simplify rdma_resolve_addr() error flow" (Kamal Heib) [1786604] - [net] xprtrdma: Fix DMA scatter-gather list mapping imbalance (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix protection fault in get_pkey_idx_qp_list (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix soft lockup problem due to using tasklets in softirq (Kamal Heib) [1786604] - [infiniband] IB/umad: Fix kernel crash while unloading ib_umad (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add missing list deletion on freeing event queue (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Remove unwanted WARN_ON in siw_cm_llp_data_ready() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Fix invalid memory access in spec_filter_size (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Reset all QPs when the device is shut down (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Close window for pq and request coliding (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Acquire lock to release TID entries when user file is closed (Kamal Heib) [1786604 1739282] - [infiniband] IB/umem: use get_user_pages_fast() to pin DMA pages (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Mask access flags with the correct optional range (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Fix unbalanced cm_id reference count during address resolve (Kamal Heib) [1786604] - [infiniband] RDMA/umem: Fix ib_umem_find_best_pgsz() (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Fix logical condition in msix_request_irq (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Remove CM message structs (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for complex structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple structure members (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for swapping get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Use IBA functions for simple get/set acessors (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add SET/GET implementations to hide IBA wire format (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Add accessors for CM_REQ transport_type (Kamal Heib) [1786604] - [infiniband] RDMA/core: Ensure that rdma_user_mmap_entry_remove() is a fence (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Add new relaxed ordering memory region access flag (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Allow passing of optional access flags for MR registration (Kamal Heib) [1786604] - [rdma] RDMA/core: Add optional access flags range (Kamal Heib) [1786604] - [rdma] RDMA/uverbs: Verify MR access flags (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove ucontext_lock from the uverbs_destry_ufile_hw() path (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add UVERBS_METHOD_ASYNC_EVENT_ALLOC (Kamal Heib) [1786604] - [infiniband] IB/srp: Never use immediate data if it is disabled by a user (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Compute the maximum sges and inline size based on the WQE size (Kamal Heib) [1786604] - [infiniband] Introduce maximum WQE size to check limits (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove unused ucontext parameter from efa_qp_user_mmap_entries_remove (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Remove {} brackets from single statement if (Kamal Heib) [1786604] - [infiniband] RDMA/efa: Device definitions documentation updates (Kamal Heib) [1786604] - [net] xprtrdma: DMA map rr_rdma_buf as each rpcrdma_rep is created (Kamal Heib) [1786604] - [net] xprtrdma: Destroy reps from previous connection instance (Kamal Heib) [1786604] - [net] xprtrdma: Destroy rpcrdma_rep when Receive is flushed (Kamal Heib) [1786604] - [net] xprtrdma: Allocate and map transport header buffers at connect time (Kamal Heib) [1786604] - [net] xprtrdma: Refactor frwr_is_supported (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate per-transport "max pages" (Kamal Heib) [1786604] - [net] xprtrdma: Refactor initialization of ep->rep_max_requests (Kamal Heib) [1786604] - [net] xprtrdma: Make sendctx queue lifetime the same as connection lifetime (Kamal Heib) [1786604] - [net] xprtrdma: Eliminate ri_max_send_sges (Kamal Heib) [1786604] - [infiniband] RDMA/core: Use READ_ONCE for ib_ufile.async_file (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_uverbs_async_event_file into a uobject (Kamal Heib) [1786604] - [rdma] RDMA/core: Remove the ufile arg from rdma_alloc_begin_uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify type usage for ib_uverbs_async_handler() (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_wq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_srq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_qp.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not erase the type of ib_cq.uobject (Kamal Heib) [1786604] - [infiniband] RDMA/core: Make ib_ucq_object use ib_uevent_object (Kamal Heib) [1786604] - [infiniband] RDMA/core: Do not allow alloc_commit to fail (Kamal Heib) [1786604] - [infiniband] RDMA/core: Simplify destruction of FD uobjects (Kamal Heib) [1786604] - [infiniband] RDMA/mlx5: Use RCU and direct refcounts to keep memory alive (Kamal Heib) [1786604] - [infiniband] RDMA/uverbs: Remove needs_kfree_rcu from uverbs_obj_type_class (Kamal Heib) [1786604] - [infiniband] RDMA/core: Remove err in iw_query_port (Kamal Heib) [1786604] - [infiniband] IB/hfi1: Add RcvShortLengthErrCnt to hfi1stats (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add software counter for ctxt0 seq drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Return void in packet receiving functions (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Decouple IRQ name from type (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Create API for auto activate (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: IB/hfi1: Add an API to handle special case drop (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move common receive IRQ code to function (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add fast and slow handlers for receive context (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Move chip specific functions to chip.c (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/core: Fix locking in ib_uverbs_event_read (Kamal Heib) [1786604] - [infiniband] IB/core: Fix build failure without hugepages (Kamal Heib) [1786604] - [infiniband] IB/core: Rename event_handler_lock to qp_open_list_lock (Kamal Heib) [1786604] - [infiniband] IB/core: Cut down single member ib_cache structure (Kamal Heib) [1786604] - [infiniband] RDMA/core: Add trace points to follow MR allocation (Kamal Heib) [1786604] - [infiniband] RDMA/core: Trace points for diagnosing completion queue issues (Kamal Heib) [1786604] - [infiniband] RDMA/cma: Add trace points in RDMA Connection Manager (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM ARP functions (Kamal Heib) [1786604] - [infiniband] RDMA/cm: Delete unused CM LAP functions (Kamal Heib) [1786604] - [infiniband] RDMA/rxe: Fix error type of mmap_offset (Kamal Heib) [1786604] - [infiniband] IB/iser: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/hfi1: use true,false for bool variable (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/siw: use true,false for bool variable (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP with IB_ACCESS_HUGETLB handling (Kamal Heib) [1786604] - [infiniband] IB/core: Fix ODP get user pages flow (Kamal Heib) [1786604] - [infiniband] IB/rdmavt: Correct comments in rdmavt_qp.h header (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: List all receive contexts from debugfs (Kamal Heib) [1786604 1739282] - [infiniband] IB/hfi1: Add accessor API routines to access context members (Kamal Heib) [1786604 1739282] - [infiniband] RDMA/cm: Use RCU synchronization mechanism to protect cm_id_private xa_load() (Kamal Heib) [1786604] - [infiniband] RDMA/srpt: Remove unnecessary assertion in srpt_queue_response (Kamal Heib) [1786604] - [infiniband] RDMA/netlink: Do not always generate an ACK for some netlink operations (Kamal Heib) [1786604] - [infiniband] RDMA/siw: Simplify QP representation (Kamal Heib) [1786604] - [infiniband] RDMA/qedr: Add kernel capability flags for dpm enabled mode (Kamal Heib) [1786604] - [platform] platform/x86: intel_pmc_core: Add Intel Tiger Lake support (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Create platform dependent bitmap structs (Alexander Beregalov) [1783390] - [platform] platform/x86: intel_pmc_core: Clean up: Remove comma after the termination line (Alexander Beregalov) [1783390] - [pinctrl] pinctrl: tigerlake: Tiger Lake uses _HID enumeration (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add Coffee Lake-S ACPI ID (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Add missing Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Reuse struct intel_pinctrl in the driver (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use local variable to keep device pointer (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Keep pointer to struct device instead of its container (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Share struct intel_pinctrl for wider use (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GPIO direction definitions (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GPIO direction definitions (David Arcari) [1773772] - [include] gpio: Add definition for GPIO direction (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Move IRQ valid mask initialization to a dedicated callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Group GPIO IRQ chip initialization (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Pass irqchip when adding gpiochip (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Add GPIO <-> pin mapping ranges via callback (David Arcari) [1773772] - [gpio] gpiolib: Introduce ->add_pin_ranges() callback (David Arcari) [1773772] - [gpio] gpiolib: Initialize the hardware with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Update North Community pin list (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Really serialize all register accesses (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Update pin list according to v1.1v6 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Missed type change to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Add Intel Tiger Lake pin controller support (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use helper to restore register values on ->resume() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop level from warning to debug in intel_restore_hostown() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_intmask() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_hostown() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_restore_padcfg() helper (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Avoid potential glitches if pin is in GPIO mode (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Allocate IRQ chip dynamic (David Arcari) [1773772] - [pinctrl] gpio: Initialize the irqchip valid_mask with a callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: mark intel_pin_to_gpio __maybe_unused (David Arcari) [1773772] - [pinctrl] pinctrl: intel: remap the pin number to gpio offset for irq enabled pin (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Update pin names according to v1.08 (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove dev_err() usage after platform_get_irq() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use NSEC_PER_USEC for debounce calculus (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (part 2) (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Remove default Interrupt Status offset (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Provide Interrupt Status register offset (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Simplify offset validation in intel_get_padcfg() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Drop double check for data in intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use devm_platform_ioremap_resource() (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Re-use data structures from pinctrl-intel.h (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Use defined macro instead of magic in byt_get_gpio_mux() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Clear interrupt status in mask/unmask callback (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Use GENMASK() consistently (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Increase readability of intel_gpio_update_pad_mode() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Retain HOSTSW_OWN for requested gpio pin (David Arcari) [1773772] - [pinctrl] pinctrl: pinctrl-intel: move gpio suspend/resume to noirq phase (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Update pin names according to v1.13c (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Fix potential NULL pointer dereference (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Code formatting fixes (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Replace acpi.h with mod_devicetable.h (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Unexport intel_pinctrl_probe() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: intel: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: simplify getting .driver_data (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Sort register offsets by value (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Get rid of unneeded ->probe() stub (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Update pin list for B0 stepping (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Convert unsigned to unsigned int (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Sort headers alphabetically (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Remove unneeded MODULE_DEVICE_TABLE() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Move linux/pm.h to the local header (David Arcari) [1773772] - [pinctrl] pinctrl: Include nothing else (David Arcari) [1773772] - [pinctrl] pinctrl: lewisburg: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: icelake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: denverton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cedarfork: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Define PM ops via INTEL_PINCTRL_PM_OPS() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce common macro for PM operations (David Arcari) [1773772] - [pinctrl] pinctrl: sunrisepoint: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: cannonlake: Convert to use intel_pinctrl_probe_by_hid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_hid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: Convert to use device_get_match_data() (David Arcari) [1773772] - [pinctrl] pinctrl: geminilake: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: broxton: Convert to use intel_pinctrl_probe_by_uid() (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Introduce intel_pinctrl_probe_by_uid() internal API (David Arcari) [1773772] - [pinctrl] pinctrl: intel: Fix a spelling typo in kernel documentation (David Arcari) [1773772] - [pinctrl] pinctrl: baytrail: actually print the apparently misconfigured pin (David Arcari) [1773772] - [mm] mm, page_alloc: move_freepages should not examine struct page of reserved memory (Rafael Aquini) [1588584] - [mm] mm, page_alloc: initialize num_movable in move_freepages() (Rafael Aquini) [1588584] - [tools] selftests: vm: drop dependencies on page flags from mlock2 tests (Rafael Aquini) [1658886] - [powercap] powercap/intel_rapl: add support for TigerLake Mobile (David Arcari) [1783136] - [kernel] locking/lockdep: Avoid recursion in lockdep_count_{for, back}ward_deps() (Waiman Long) [1780993] - [kernel] locking/lockdep: Reuse freed chain_hlocks entries (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped lock chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Throw away all lock chains with zapped class (Waiman Long) [1780993] - [kernel] locking/lockdep: Track number of zapped classes (Waiman Long) [1780993] - [kernel] locking/lockdep: Display irq_context names in /proc/lockdep_chains (Waiman Long) [1780993] - [kernel] locking/lockdep: Decrement IRQ context counters when removing lock chain (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix lockdep_stats indentation problem (Waiman Long) [1780993] - [kernel] locking/lockdep: Fix buffer overrun problem in stack_trace (Waiman Long) [1780993] - [lib] lib/string: Make memzero_explicit() inline instead of external (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Remove sha256/224_init code duplication (Florian Westphal) [1820623] - [crypto] crypto: sha256 - Merge crypto/sha256.h into crypto/sha.h (Florian Westphal) [1820623] - [crypto] crypto: chelsio - Rename arrays to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [x86] crypto: x86 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [arm64] crypto: arm64 - Rename functions to avoid conflict with crypto/sha256.h (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Switch to the generic lib/crypto/sha256.c lib code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Add sha224 support to sha256 library code (Florian Westphal) [1820623] - [lib] crypto: sha256 - Make lib/crypto/sha256.c suitable for generic use (Florian Westphal) [1820623] - [lib] crypto: sha256 - Use get/put_unaligned_be32 to get input, memzero_explicit (Florian Westphal) [1820623] - [s390] crypto: sha256 - Move lib/sha256.c to lib/crypto (Florian Westphal) [1820623] - [crypto] crypto: sha256_generic - Fix some coding style issues (Florian Westphal) [1820623] - [lib] crypto: sha256 - Fix some coding style issues (Florian Westphal) [1820623] - [thunderbolt] thunderbolt: Fix error code in tb_port_is_width_supported() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Prevent crash if non-active NVMem file is read (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: fix memory leak of object sw (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Fix xhci check in usb4_switch_setup() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for USB 3.x tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for Time Management Unit (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_switch_find_cap() available to other files (Jarod Wilson) [1482838] - [netdrv] thunderbolt: Update Kconfig entries to USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add initial support for USB4 (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Populate PG field in hot plug acknowledgment packet (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Call tb_eeprom_get_drom_offset() from tb_eeprom_read_n() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_find_port() available to other files (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Power cycle the router if NVM authentication fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Do not start firmware unless asked by the user (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add bandwidth management for Display Port tunnels (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port adapter pairing and resource management (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add Display Port CM handshake for Titan Ridge devices (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add downstream PCIe port mappings for Alpine and Titan Ridge (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Expand controller name in tb_switch_is_xy() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add default linking between lane adapters if not provided by DROM (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add support for lane bonding (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Refactor add_switch() into two functions (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add helper macro to iterate over switch ports (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Make tb_sw_write() take const parameter (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert DP adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert PCIe adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Convert basic adapter register names to follow the USB4 spec (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log error if adding switch fails (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Log switch route string on config read/write timeout (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Introduce tb_switch_is_icm() (Jarod Wilson) [1482838] - [thunderbolt] thunderbolt: Add 'generation' attribute for devices (Jarod Wilson) [1482838]- [scsi] scsi: lpfc: Copyright updates for 12.6.0.4 patches (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.4 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Clean up hba max_lun_queue_depth checks (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Remove handler for obsolete ELS - Read Port Status (RPS) (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix coverity errors in fmdi attribute handling (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix compiler warning on frame size (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix registration of ELS type support in fdmi (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix broken Credit Recovery after driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix lpfc_io_buf resource leak in lpfc_get_scsi_buf_s4 error path (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix RQ buffer leakage when no IOCBs available (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Make lpfc_defer_acc_rsp static (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.3 (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix improper flag check for IO type (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix MDS Latency Diagnostics Err-drop rates (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix unmap of dpp bars affecting next driver load (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix disablement of FC-AL on lpe35000 models (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix ras_log via debugfs (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix Fabric hostname registration if system hostname changes (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix missing check for CSF in Write Object Mbox Rsp (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix: Rework setting of fdmi symbolic node name registration (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix incomplete NVME discovery when target (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: fix spelling mistakes of asynchronous (Dick Kennedy) [1793674] - [scsi] scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func (Dick Kennedy) [1793674] - [tools] tools/power turbostat: Support Tiger Lake (David Arcari) [1783441] - [md] dm integrity: fix logic bug in integrity tag testing (Mike Snitzer) [1820280] - [md] Revert "dm: always call blk_queue_split() in dm_process_bio()" (Mike Snitzer) [1820705] - [md] dm integrity: fix ppc64le warning (Mike Snitzer) [1820280] - [md] dm writecache: add cond_resched to avoid CPU hangs (Mike Snitzer) [1820280] - [md] dm integrity: improve discard in journal mode (Mike Snitzer) [1820280] - [md] dm integrity: add optional discard support (Mike Snitzer) [1820280] - [md] dm integrity: allow resize of the integrity device (Mike Snitzer) [1820280] - [md] dm integrity: factor out get_provided_data_sectors() (Mike Snitzer) [1820280] - [md] dm integrity: don't replay journal data past the end of the device (Mike Snitzer) [1820280] - [md] dm integrity: remove sector type casts (Mike Snitzer) [1820280] - [md] dm integrity: fix a crash with unusually large tag size (Mike Snitzer) [1820280] - [md] dm verity fec: fix memory leak in verity_fec_dtr (Mike Snitzer) [1820280] - [md] dm writecache: optimize superblock write (Mike Snitzer) [1820280] - [md] dm writecache: implement gradual cleanup (Mike Snitzer) [1820280] - [md] dm writecache: implement the "cleaner" policy (Mike Snitzer) [1820280] - [md] dm writecache: do direct write if the cache is full (Mike Snitzer) [1820280] - [md] dm integrity: print device name in integrity_metadata() error message (Mike Snitzer) [1820280] - [md] dm crypt: use crypt_integrity_aead() helper (Mike Snitzer) [1820280] - [lib] lib/test_bitmap: add tests for bitmap_parselist_user() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: add testcases for bitmap_parselist() (Vladis Dronov) [1819152] - [lib] lib/test_bitmap: switch test_bitmap_parselist to ktime_get() (Vladis Dronov) [1819152] - [lib] lib: rework bitmap_parselist (Vladis Dronov) [1819152] - [lib] lib: make bitmap_parselist_user() a wrapper on bitmap_parselist() (Vladis Dronov) [1819152] - [platform] platform/x86: mlx-platform: Add support for next generation systems (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new capability register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new system type (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Set system mux configuration based on system type (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more definitions for system attributes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Style changes (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Cosmetic changes (Ivan Vecera) [1820312] - [platform] platform/mellanox: Fix Kconfig indentation (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Fix possible buffer overflow (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Remove dev_err() usage after platform_get_irq() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix error handling in mlxplat_init() (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add more reset cause attributes (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Modify DMI matching order (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add regmap structure for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change API for i2c-mlxcpld driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Move regmap initialization before all drivers activation (Ivan Vecera) [1820312] - [documentation] ABI: sysfs-driver-mlxreg-io: fix the what fields (Ivan Vecera) [1820312] - [documentation] docs: watchdog: convert docs to ReST and rename to *.rst (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix parent device in i2c-mux-reg device registration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add devm_free_irq call to remove flow (Ivan Vecera) [1820312] - [i2c] i2c: mlxcpld: Fix wrong initialization order in probe (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [thermal] thermal: Introduce devm_thermal_of_cooling_device_register (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx_wdt: Use 'dev' instead of dereferencing it repeatedly (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Use HWMON_CHANNEL_INFO macro (Ivan Vecera) [1820312] - [include] hwmon: Add convience macro to define simple static sensors (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for fan capability registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlx-wdt platform driver activation (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for tachometer speed register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix access mode for fan_dir attribute (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add UID LED for the next generation systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add extra CPLD for next generation systems (Ivan Vecera) [1820312] - [documentation] Documentation/watchdog: Add documentation mlx-wdt driver (Ivan Vecera) [1820312] - [watchdog] watchdog: mlx-wdt: introduce a watchdog driver for Mellanox systems (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: additions for Mellanox watchdog driver (Ivan Vecera) [1820312] - [leds] leds: mlxreg: Add support for capability register (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Fix KASAN warning (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Correct mlxreg-io KernelVersion for 5.0 (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for new VMOD0007 board name (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan capability registers (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Add capability field to core platform data (Ivan Vecera) [1820312] - [include] platform_data/mlxreg: Document fixes for core platform data (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add support for fan direction register (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Convert to use SPDX identifier (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for new systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix LED configuration (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix tachometer registers (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Rename new systems product names (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add definitions for new registers (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: simplify code to reach the adapter (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Properly use mlxplat_mlxcpld_msn201x_items (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Fix copy-paste error in mlxplat_init() (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Remove unused define (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Change mlxreg-io configuration for MSN274x systems (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add new attribute for mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Allow mlxreg-io driver activation for more systems (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add ASIC hotplug device configuration (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Add hotplug hwmon uevent notification (Ivan Vecera) [1820312] - [platform] platform/mellanox: mlxreg-hotplug: Improve mechanism of ASIC health discovery (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-fan platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Use 2-factor allocator calls (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Modify macros for tachometer fault status reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Fix macros for tacho fault reading (Ivan Vecera) [1820312] - [hwmon] hwmon: (mlxreg-fan) Add support for Mellanox FAN driver (Ivan Vecera) [1820312] - [i2c] i2c: mux: mlxcpld: make use of __i2c_smbus_xfer (Ivan Vecera) [1820312] - [i2c] i2c: smbus: add unlocked __i2c_smbus_xfer variant (Ivan Vecera) [1820312] - [documentation] Documentation/ABI: Add documentation mlxreg-io sysfs interfaces (Ivan Vecera) [1820312] - [platform] platform/x86: mlx-platform: Add mlxreg-io platform driver activation (Ivan Vecera) [1820312] - [platform] platform/mellanox: Introduce support for Mellanox register access driver (Ivan Vecera) [1820312] - [kernel] audit: trigger accompanying records when no rules present (Richard Guy Briggs) [1819944] - [kernel] sched/fair: Allow a per-CPU kthread waking a task to stack on the same CPU, to fix XFS performance regression (Phil Auld) [1745111] - [hid] HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: add CMP device id (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: Spelling s/diconnect/disconnect/ (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: fix wrong error handling in ishtp_cl_alloc_tx_ring() (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: check the NO_D3 flag to distinguish resume paths (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: make ish suspend paths clear (Tony Camuso) [1818043] - [hid] HID: intel-ish-hid: ipc: set NO_D3 flag only when needed (Tony Camuso) [1818043] - [netdrv] net: ena: Add PCI shutdown handler to allow safe kexec (Bhupesh Sharma) [1758323] - [net] vsock: fix potential deadlock in transport->release() (Stefano Garzarella) [1771582] - [net] vsock/virtio: remove loopback handling (Stefano Garzarella) [1771582] - [net] vsock: use local transport when it is loaded (Stefano Garzarella) [1771582] - [net] vsock: add vsock_loopback transport (Stefano Garzarella) [1771582] - [net] vsock: add local transport support in the vsock core (Stefano Garzarella) [1771582] - [uapi] vsock: add VMADDR_CID_LOCAL definition (Stefano Garzarella) [1771582] - [net] vsock/virtio_transport_common: remove unused virtio header includes (Stefano Garzarella) [1771582] - [infiniband] IB/rdmavt: Free kernel completion queue when done (Gopal Tiwari) [1805036] - [powerpc] powerpc/64s: Fix section mismatch warnings from boot code (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/prom: convert PROM_BUG() to standard trap (Desnes Augusto Nunes do Rosario) [1391523] - [powerpc] powerpc/64: mark start_here_multiplatform as __ref (Desnes Augusto Nunes do Rosario) [1391523] - [mfd] mfd: intel-lpss: Add Intel Tiger Lake PCI IDs (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Release IDA resources (David Arcari) [1773767] - [mfd] mfd: intel-lpss: Keep device tables sorted by ID (David Arcari) [1773767] - [i2c] i2c: i801: Add support for Intel Tiger Lake (David Arcari) [1773765] - [edac] EDAC/mce_amd: Print !SMCA processor warning only once (Prarit Bhargava) [1796178] - [powerpc] powerpc/pseries/dlpar: Fix a missing check in dlpar_parse_cc_property() (Steve Best) [1806630] {CVE-2019-12614}- [x86] x86/gart: Rewrite early_gart_iommu_check() comment (Waiman Long) [1818532] - [mm] mm/memblock.c: warn if zero alignment was requested (Waiman Long) [1818532] - [powerpc] memblock: stop using implicit alignment to SMP_CACHE_BYTES (Waiman Long) [1818532] - [mm] memblock: replace BOOTMEM_ALLOC_* with MEMBLOCK variants (Waiman Long) [1818532] - [mm] mm: remove nobootmem (Waiman Long) [1818532] - [mm] memblock: rename __free_pages_bootmem to memblock_free_pages (Waiman Long) [1818532] - [mm] memblock: rename free_all_bootmem to memblock_free_all (Waiman Long) [1818532] - [firmware] memblock: replace free_bootmem_late with memblock_free_late (Waiman Long) [1818532] - [x86] memblock: replace free_bootmem{_node} with memblock_free (Waiman Long) [1818532] - [mm] mm: nobootmem: remove bootmem allocation APIs (Waiman Long) [1818532] - [mm] memblock: replace __alloc_bootmem with memblock_alloc_from (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low (Waiman Long) [1818532] - [mm] memblock: replace alloc_bootmem_pages_node with memblock_alloc_node (Waiman Long) [1818532] - [mm] memblock: add align parameter to memblock_alloc_node() (Waiman Long) [1818532] - [arm64] memblock: replace alloc_bootmem_low with memblock_alloc_low (2) (Waiman Long) [1818532] - [usb] memblock: replace alloc_bootmem_pages_nopanic with memblock_alloc_nopanic (Waiman Long) [1818532] - [x86] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_low with memblock_alloc_low (Waiman Long) [1818532] - [x86] memblock: replace alloc_bootmem_align with memblock_alloc (Waiman Long) [1818532] - [mm] memblock: remove _virt from APIs returning virtual address (Waiman Long) [1818532] - [powerpc] memblock: rename memblock_alloc{_nid, _try_nid} to memblock_phys_alloc* (Waiman Long) [1818532] - [mm] mm: nobootmem: remove dead code (Waiman Long) [1818532] - [mm] mm: remove bootmem allocator implementation (Waiman Long) [1818532] - [mm] mm: remove CONFIG_HAVE_MEMBLOCK (Waiman Long) [1818532] - [mm] mm: remove CONFIG_NO_BOOTMEM (Waiman Long) [1818532] - [mm] mm: disable deferred struct page for 32-bit arches (Waiman Long) [1818532] - [mm] mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM (Waiman Long) [1818532] - [mm] mm/hugetlb.c: don't zero 1GiB bootmem pages (Waiman Long) [1818532] - [mm] docs/mm: memblock: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: memblock: add kernel-doc description for memblock types (Waiman Long) [1818532] - [mm] docs/mm: memblock: add kernel-doc comments for memblock_add (Waiman Long) [1818532] - [mm] docs/mm: bootmem: add overview documentation (Waiman Long) [1818532] - [include] docs/mm: bootmem: add kernel-doc description of 'struct bootmem_data' (Waiman Long) [1818532] - [mm] docs/mm: bootmem: fix kernel-doc warnings (Waiman Long) [1818532] - [mm] docs/mm: nobootmem: fixup kernel-doc comments (Waiman Long) [1818532] - [mm] mm/bootmem: drop duplicated kernel-doc comments (Waiman Long) [1818532] - [lib] lib/smp_processor_id: Don't use cpumask_equal() (Waiman Long) [1812092] - [kernel] audit: always check the netlink payload length in audit_receive_msg() (Richard Guy Briggs) [1814448] - [kernel] audit: fix error handling in audit_data_to_entry() (Richard Guy Briggs) [1814448] - [fs] fat: work around race with userspace's read via blockdev while mounting (Bill O'Donnell) [1771351] - [include] raid6/test: fix a compilation error (Bhupesh Sharma) [1817524] - [arm64] arm64: kexec_file: add crash dump support (Bhupesh Sharma) [1817524] - [lib] libfdt: include fdt_addresses.c (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.1-22-gc40aeb60b47a (Bhupesh Sharma) [1817524] - [include] libfdt: reduce the number of headers included from libfdt_env.h (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: amd: Fix SPI bus warnings (Bhupesh Sharma) [1817524] - [arm64] arm64: dts: broadcom: Fix I2C and SPI bus warnings (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-30-g702c1b6c0e73 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.5.0-23-g87963ee20693 (Bhupesh Sharma) [1817524] - [include] linux/kernel.h: split *_MAX and *_MIN macros into (Bhupesh Sharma) [1817524] - [scripts] kbuild: disable dtc simple_bus_reg warnings by default (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-57-gf267e674d145 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: Update to upstream version v1.4.7-14-gc86da84d30e4 (Bhupesh Sharma) [1817524] - [scripts] scripts/dtc: consolidate include path options in Makefile (Bhupesh Sharma) [1817524] - [pci] PCI: Remove unnecessary returns (Myron Stowe) [1807175] - [pci] PCI: OF: Correct of_irq_parse_pci() documentation (Myron Stowe) [1807175] - [pci] PCI: Fix typos and whitespace errors (Myron Stowe) [1807175] - [documentation] PCI: Correct pci=resource_alignment parameter example (Myron Stowe) [1807175] - [pci] PCI: Use PCI_SRIOV_NUM_BARS in loops instead of PCI_IOV_RESOURCE_END (Myron Stowe) [1807175] - [pci] PCI: Convert pci_resource_to_user() to a weak function (Myron Stowe) [1807175] - [pci] PCI: pciehp: Refer to "Indicators" instead of "LEDs" in comments (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_green_led_{on, off, blink}() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Remove pciehp_set_attention_status() (Myron Stowe) [1807175] - [pci] PCI: pciehp: Combine adjacent indicator updates (Myron Stowe) [1807175] - [pci] PCI: pciehp: Add pciehp_set_indicators() to set both indicators (Myron Stowe) [1807175] - [pci] PCI: Add pci_irq_vector() and other stubs when !CONFIG_PCI (Myron Stowe) [1807175] - [pci] PCI: Force trailing new line to resource_alignment_param in sysfs (Myron Stowe) [1807175] - [pci] PCI: Move pci__resource_alignment_param() into their callers (Myron Stowe) [1807175] - [pci] PCI: pci.c: convert to use BUS_ATTR_RW (Myron Stowe) [1807175] - [pci] PCI: Clean up resource_alignment parameter to not require static buffer (Myron Stowe) [1807175] - [pci] PCI/IOV: Remove group write permission from sriov_numvfs, sriov_drivers_autoprobe (Myron Stowe) [1807175] - [pci] PCI/IOV: Move sysfs SR-IOV functions to iov.c (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change permissions from symbolic to octal (Myron Stowe) [1807175] - [pci] PCI: sysfs: Revert "rescan" file renames (Myron Stowe) [1807175] - [pci] PCI: sysfs: Change DEVICE_ATTR() to DEVICE_ATTR_WO() (Myron Stowe) [1807175] - [pci] PCI: pci-sysfs.c: convert to use BUS_ATTR_WO (Myron Stowe) [1807175] - [pci] PCI: sysfs: Define device attributes with DEVICE_ATTR*() (Myron Stowe) [1807175] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1807175] - [pci] PCI: Use devm_add_action_or_reset() (Myron Stowe) [1807175] - [pci] PCI: Get rid of dev->has_secondary_link flag (Myron Stowe) [1807175] - [pci] PCI/ACPI: Remove unnecessary struct hotplug_program_ops (Myron Stowe) [1807175] - [pci] PCI/ACPI: Move _HPP & _HPX functions to pci-acpi.c (Myron Stowe) [1807175] - [pci] PCI/ACPI: Rename _HPX structs from hpp_* to hpx_* (Myron Stowe) [1807175] - [pci] PCI: Make pci_set_of_node(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_enable_ptm() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_set_ecrc_checking(), pcie_ecrc_get_policy() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_ats_init() private (Myron Stowe) [1807175] - [pci] PCI: Make pcie_update_link_speed() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_bus_get(), pci_bus_put() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_hotplug_io_size, mem_size, and bus_size private (Myron Stowe) [1807175] - [pci] PCI: Make pci_save_vc_state(), pci_restore_vc_state(), etc private (Myron Stowe) [1807175] - [pci] PCI: Make pci_get_host_bridge_device(), pci_put_host_bridge_device() private (Myron Stowe) [1807175] - [pci] PCI: Make pci_check_pme_status(), pci_pme_wakeup_bus() private (Myron Stowe) [1807175] - [pci] PCI: Make PCI_PM_* delay times private (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_sem (Myron Stowe) [1807175] - [pci] PCI: Unexport pci_bus_get() and pci_bus_put() (Myron Stowe) [1807175] - [pci] PCI: Remove pci_block_cfg_access() et al (unused) (Myron Stowe) [1807175] - [wireless] PCI: Move ASPM declarations to linux/pci.h (Myron Stowe) [1807175] - [pci] PCI/MSI: Support allocating virtual MSI interrupts (Myron Stowe) [1807175] - [fs] gfs2: Remove unnecessary gfs2_qa_{get,put} pairs (Robert S Peterson) [1807146] - [fs] gfs2: Split gfs2_rsqa_delete into gfs2_rs_delete and gfs2_qa_put (Robert S Peterson) [1807146] - [fs] gfs2: Change inode qa_data to allow multiple users (Robert S Peterson) [1807146] - [fs] gfs2: eliminate gfs2_rsqa_alloc in favor of gfs2_qa_alloc (Robert S Peterson) [1807146] - [fs] gfs2: Switch to list_{first,last}_entry (Robert S Peterson) [1807146] - [fs] gfs2: Clean up inode initialization and teardown (Robert S Peterson) [1807146] - [fs] gfs2: Minor gfs2_alloc_inode cleanup (Robert S Peterson) [1807146] - [pinctrl] pinctrl: pinmux: fix a possible null pointer in pinmux_can_be_used_for_gpio (David Arcari) [1817454] - [pinctrl] pinctrl/gpio: Take MUX usage into account (David Arcari) [1817454] - [include] gpio: Fix build warnings on undefined struct pinctrl_dev (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused pin_is_valid() (David Arcari) [1817454] - [pinctrl] pinctrl: remove unneeded initializer for list_for_each_entry() iterator (David Arcari) [1817454] - [pinctrl] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (David Arcari) [1817454] - [pinctrl] pinctrl: core: Do not add device links for hogs (David Arcari) [1817454] - [pinctrl] pinctrl: Enable device link creation for pin control (David Arcari) [1817454] - [pinctrl] pinctrl: generic: add new 'drive-strength-microamp' property support (David Arcari) [1817454] - [pinctrl] pinctrl: remove unused 'pinconf-config' debugfs interface (David Arcari) [1817454] - [pinctrl] pinctrl: Change to use DEFINE_SHOW_ATTRIBUTE macro (David Arcari) [1817454] - [pinctrl] pinctrl: core: make sure strcmp() doesn't get a null parameter (David Arcari) [1817454] - [pinctrl] pinctrl: core: Remove broken remove_last group and pinmux functions (David Arcari) [1817454] - [pinctrl] pinctrl: pinmux: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: core: Return selector to the pinctrl driver (David Arcari) [1817454] - [pinctrl] pinctrl: Cut unused sysfs includes (David Arcari) [1817454] - [mm] mm, numa: fix bad pmd by atomically check for pmd_trans_huge when marking page tables prot_numa (Rafael Aquini) [1763878] - [mm] mm: thp: fix flags for pmd migration when split (Rafael Aquini) [1763878] - [mm] mm: thp: relocate flush_cache_range() in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix mmu_notifier in migrate_misplaced_transhuge_page() (Rafael Aquini) [1763878] - [mm] mm: thp: fix MADV_DONTNEED vs migrate_misplaced_transhuge_page race condition (Rafael Aquini) [1763878] - [fs] nfsd: set the server_scope during service startup (Scott Mayhew) [1817752] - [fs] nfsd: v4 support requires CRYPTO_SHA256 (Scott Mayhew) [1817752] - [fs] nfsd: Fix cld_net->cn_tfm initialization (Scott Mayhew) [1817752] - [fs] nfsd: add support for upcall version 2 (Scott Mayhew) [1817752] - [fs] nfsd: add a "GetVersion" upcall for nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: handle legacy client tracking records sent by nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: re-order client tracking method selection (Scott Mayhew) [1817752] - [fs] nfsd: keep a tally of RECLAIM_COMPLETE operations when using nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: un-deprecate nfsdcld (Scott Mayhew) [1817752] - [fs] nfsd: make nfs4_client_reclaim use an xdr_netobj instead of a fixed char array (Scott Mayhew) [1817752]- [s390] scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only sdevs) (Philipp Rudo) [1814791] - [s390] scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_remove (Philipp Rudo) [1814792] - [infiniband] RDMA/qedr: Fix null-pointer dereference when calling rdma_user_mmap_get_offset (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Make qedr_iw_load_qp() static (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix potential use after free (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Remove unsupported modify_port callback (Kamal Heib) [1786602] - [infiniband] IB/ipoib: Add ndo operation for getting VFs GUID attributes (Kamal Heib) [1786602] - [net] xprtrdma: Fix oops in Receive handler after device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix completion wait during device removal (Kamal Heib) [1786602] - [net] xprtrdma: Fix create_qp crash on device unload (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Adjust flow PSN with the correct resync_psn (Kamal Heib) [1786602] - [infiniband] IB/hfi1: Don't cancel unused work item (Kamal Heib) [1786602] - [infiniband] IB/core: Introduce rdma_user_mmap_entry_insert_range() API (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent auto-binding a QP which are not tracked with res (Kamal Heib) [1786602] - [infiniband] rxe: correctly calculate iCRC for unaligned payloads (Kamal Heib) [1786602] - [infiniband] treewide: Use sizeof_field() macro (Kamal Heib) [1786602] - [infiniband] RDMA/cma: add missed unregister_pernet_subsys in init failure (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Expose RDMA read related attributes (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Support remote read access in MR registration (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Store network attributes in device attributes (Kamal Heib) [1786602] - [infiniband] IB/hfi1: remove redundant assignment to variable ret (Kamal Heib) [1786602] - [infiniband] net: use rhashtable_lookup() instead of rhashtable_lookup_fast() (Kamal Heib) [1786602] - [infiniband] IB/core: Add interfaces to get VF node and port GUIDs (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use refcount_t type for refcount variable (Kamal Heib) [1786602] - [infiniband] RDMA/cma: Use ACK timeout for RoCE packetLifeTime (Kamal Heib) [1786602] - [infiniband] IB/umem: remove the dmasync argument to ib_umem_get (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add iWARP doorbell recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Add doorbell overflow recovery support (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Use the common mmap API (Kamal Heib) [1786602] - [infiniband] RDMA/qedr: Fix memory leak in user qp and mr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix synchronization methods and memory leaks in qedr (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix qpids xarray api used (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Fix srqs xarray initialization (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/qedr: Remove Unneeded variable rc (Kamal Heib) [1810854 1786602] - [infiniband] RDMA/mlx4: Separate creation of RWQ and QP (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Package for hns_roce_rereg_user_mr function (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Fix sg offset non-zero issue (Kamal Heib) [1786602] - [infiniband] dma-mapping: remove the DMA_ATTR_WRITE_BARRIER flag (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Clear the admin command buffer prior to its submission (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Cleanup unused mmap structures (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Report the SCSI residual to the initiator (Kamal Heib) [1786602] - [infiniband] RDMA: Change MAD processing function to remove extra casting and parameter (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Rewrite MAD processing logic to be readable (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Simplify process_mad function (Kamal Heib) [1786602] - [infiniband] RDMA/ocrdma: Make ocrdma_pma_counters() return void (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Do not check MAD sizes in roce and ib drivers (Kamal Heib) [1786602] - [infiniband] RDMA/hfi1: Delete unreachable code (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Allocate zeroed MAD buffer (Kamal Heib) [1786602] - [infiniband] RDMA/mad: Delete never implemented functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_port isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA/efa: Use the common mmap_xa helpers (Kamal Heib) [1786602] - [infiniband] RDMA: Connect between the mmap entry and the umap_priv structure (Kamal Heib) [1786602] - [infiniband] RDMA/hns: Use rdma_user_mmap_io (Kamal Heib) [1786602] - [infiniband] RDMA/core: Create mmap database and cookie helper functions (Kamal Heib) [1786602] - [infiniband] RDMA/core: Move core content from ib_uverbs to ib_core (Kamal Heib) [1786602] - [infiniband] RDMA/odp: Remove broken debugging call to invalidate_range (Kamal Heib) [1786602] - [infiniband] RDMA/vmw_pvrdma: Use resource ids from physical device if available (Kamal Heib) [1786602] - [infiniband] RDMA/core: Set DMA parameters correctly (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Increase DMA max_segment_size parameter (Kamal Heib) [1786602] - [uapi] rdma: Remove nes ABI header (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix TPG creation (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Update copyright together with SPDX tag (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Use specific keyword to check define (Kamal Heib) [1786602] - [infiniband] RDMA/cm: Delete unused cm_is_active_peer function (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Remove useless rxe_init_device_param assignments (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk in xprt_rdma_set_port (Kamal Heib) [1786602] - [net] xprtrdma: Replace dprintk() in rpcrdma_update_connect_private() (Kamal Heib) [1786602] - [net] xprtrdma: Refine trace_xprtrdma_fixup (Kamal Heib) [1786602] - [net] xprtrdma: Report the computed connect delay (Kamal Heib) [1786602] - [net] xprtrdma: Wake tasks after connect worker fails (Kamal Heib) [1786602] - [net] xprtrdma: Pull up sometimes (Kamal Heib) [1786602] - [net] xprtrdma: Refactor rpcrdma_prepare_msg_sges() (Kamal Heib) [1786602] - [net] xprtrdma: Move the rpcrdma_sendctx::sc_wr field (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_device (Kamal Heib) [1786602] - [net] xprtrdma: Remove rpcrdma_sendctx::sc_xprt (Kamal Heib) [1786602] - [net] xprtrdma: Ensure ri_id is stable during MR recycling (Kamal Heib) [1786602] - [net] xprtrdma: Manage MRs in context of a single connection (Kamal Heib) [1786602] - [net] xprtrdma: Fix MR list handling (Kamal Heib) [1786602] - [net] xprtrdma: Initialize rb_credits in one place (Kamal Heib) [1786602] - [infiniband] RDMA/core: Check that process is still alive before sending it to the users (Kamal Heib) [1786602] - [infiniband] RDMA/restrack: Remove PID namespace support (Kamal Heib) [1786602] - [infiniband] RDMA/uverbs: Add a check for uverbs_attr_get to uverbs_copy_to_struct_or_zero (Kamal Heib) [1786602] - [infiniband] IB/cma: Honor traffic class from lower netdevice for RoCE (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Provide MR statistics (Kamal Heib) [1786602] - [infiniband] RDMA/mlx5: Return ODP type per MR (Kamal Heib) [1786602] - [infiniband] RDMA/nldev: Allow different fill function per resource (Kamal Heib) [1786602] - [infiniband] IB/mlx5: Introduce ODP diagnostic counters (Kamal Heib) [1786602] - [infiniband] infiniband: fix sw/rdmavt/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_initiator.c kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iser_verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/verbs.c kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/srpt/ib_srpt.h kernel-doc notation (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix core/ipwm_util.h kernel-doc warnings (Kamal Heib) [1786602] - [infiniband] infiniband: fix ulp/iser/iscsi_iser.kernel-doc notation (Kamal Heib) [1786602] - [infiniband] RDMA/rw: Support threshold for registration vs scattering to local pages (Kamal Heib) [1786602] - [uapi] RDMA/uapi: Fix and re-organize the usage of rdma_driver_id (Kamal Heib) [1786602] - [net] svcrdma: Improve DMA mapping trace points (Kamal Heib) [1786602] - [infiniband] RDMA/iser: Use iser_err instead of pr_err for logging (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Calculate max_it_iu_size if remote max_it_iu length available (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Add parse function for maximum initiator to target IU size (Kamal Heib) [1786602] - [infiniband] IB/cm: Use container_of() instead of typecast (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Make the code for handling port identities more systematic (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the code that waits until an RDMA port is no longer in use (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Rework the approach for closing an RDMA channel (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Improve a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of iWARP logins (Kamal Heib) [1786602] - [infiniband] RDMA/srpt: Fix handling of SR-IOV and iWARP ports (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Make route resolving error messages more informative (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Honor the max_send_sge device attribute (Kamal Heib) [1786602] - [infiniband] RDMA/srp: Remove two casts (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Make node GUIDs valid EUI-64 identifiers (Kamal Heib) [1786602] - [infiniband] RDMA/iw_cxgb3: Remove the iw_cxgb3 module from kernel (Kamal Heib) [1786602] - [infiniband] RDMA/rxe: Verify modify_device mask (Kamal Heib) [1786602] - [infiniband] RDMA/core: Fix return code when modify_device isn't supported (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Fix port number endianness in a debug message (Kamal Heib) [1786602] - [infiniband] RDMA/siw: Simplify several debug messages (Kamal Heib) [1786602] - [infiniband] IB/iser: remove redundant macro definitions (Kamal Heib) [1786602] - [infiniband] IB/iser: bound protection_sg size by data_sg size (Kamal Heib) [1786602] - [infiniband] IB/iser: add unlikely checks in the fast path (Kamal Heib) [1786602] - [infiniband] RDMA/counter: Prevent QP counter manual binding in auto mode (Kamal Heib) [1786602] - [kvm] KVM: SVM: Override default MMIO mask if memory encryption is enabled (Wei Huang) [1789537] - [netdrv] mlx5e: Reorder mirrer action parsing to check for encap first (Ivan Vecera) [1818074] - [tools] selftests: mlxsw: Adjust test to recent changes (Ivan Vecera) [1818074] - [netdrv] vxlan: fix unexpected failure of vxlan_changelink() (Ivan Vecera) [1818074] - [netdrv] bonding: fix lockdep warning in bond_get_stats() (Ivan Vecera) [1818074] - [netdrv] bonding: fix using uninitialized mode_lock (Ivan Vecera) [1818074] - [net] export netdev_next_lower_dev_rcu() (Ivan Vecera) [1818074] - [netdrv] bonding: add missing netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [net] avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key() (Ivan Vecera) [1818074] - [include] net: fix kernel-doc warning in (Ivan Vecera) [1818074] - [net] batman-adv: Drop lockdep.h include for soft-interface.c (Ivan Vecera) [1818074] - [net] remove unnecessary variables and callback (Ivan Vecera) [1818074] - [netdrv] macsec: Fix multiple coding style issues (Ivan Vecera) [1818074] - [netdrv] vxlan: add adjacent link to limit depth level (Ivan Vecera) [1818074] - [net] core: add ignore flag to netdev_adjacent structure (Ivan Vecera) [1818074] - [netdrv] team: fix nested locking lockdep warning (Ivan Vecera) [1818074] - [netdrv] bonding: use dynamic lockdep key instead of subclass (Ivan Vecera) [1818074] - [netdrv] bonding: fix unexpected IFF_BONDING bit unset (Ivan Vecera) [1818074] - [net] core: add generic lockdep keys (Ivan Vecera) [1818074] - [net] core: limit nested device depth (Ivan Vecera) [1818074] - [net] udp: rehash on disconnect (Davide Caratti) [1817671] - [net] revert "udp: do rmem bulk free even if the rx sk queue is empty" (Davide Caratti) [1817671] - [net] udp: fix data-race in udp_set_dev_scratch() (Davide Caratti) [1817671] - [net] page_pool: refill page when alloc.count of pool is zero (Petr Oros) [1811201] - [net] page_pool: help compiler remove code in case CONFIG_NUMA=n (Petr Oros) [1811201] - [net] page_pool: handle page recycle for NUMA_NO_NODE condition (Petr Oros) [1811201] - [netdrv] mlx5e: Rx, Update page pool numa node when changed (Petr Oros) [1811201] - [net] page_pool: Don't recycle non-reusable pages (Petr Oros) [1811201] - [net] page_pool: Add API to update numa node (Petr Oros) [1811201] - [include] page_pool: extend tracepoint to also include the page PFN (Petr Oros) [1811201] - [net] page_pool: add destroy attempts counter and rename tracepoint (Petr Oros) [1811201] - [net] page_pool: remove unnecessary variable init (Petr Oros) [1811201] - [net] page_pool: fix logic in __page_pool_get_cached (Petr Oros) [1811201] - [netdrv] team: add missing attribute validation for array index (Hangbin Liu) [1816499] - [netdrv] team: add missing attribute validation for port ifindex (Hangbin Liu) [1816499] - [netdrv] team: Add vlan tx offload to hw_enc_features (Hangbin Liu) [1816499] - [netdrv] team: set slave to promisc if team is already in promisc mode (Hangbin Liu) [1816499] - [netdrv] team: Free BPF filter when unregistering netdev (Hangbin Liu) [1816499] - [netdrv] net: Remove switchdev.h inclusion from team/bond/vlan (Hangbin Liu) [1816499] - [netdrv] team: use operstate consistently for linkup (Hangbin Liu) [1816499] - [netdrv] team: avoid complex list operations in team_nl_cmd_options_set() (Hangbin Liu) [1816499] - [netdev] pass the stuck queue to the timeout handler (Ivan Vecera) [1811203] - [net] flow_dissector: extract more ICMP information (Ivan Vecera) [1795213] - [net] flow_dissector: skip the ICMP dissector for non ICMP packets (Ivan Vecera) [1795213] - [net] flow_dissector: add meaningful comments (Ivan Vecera) [1795213] - [net] vti[6]: fix packet tx through bpf_redirect() in XinY cases (Sabrina Dubroca) [1795145] - [net] xfrm interface: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [net] vti[6]: fix packet tx through bpf_redirect() (Sabrina Dubroca) [1795145] - [documentation] Clarify trap's description (Petr Oros) [1809496] - [net] devlink: Wait longer before warning about unset port type (Petr Oros) [1809496] - [documentation] Add a section for devlink-trap testing (Petr Oros) [1809496] - [tools] selftests: devlink_trap: Add test cases for devlink-trap (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Add devlink-trap helpers (Petr Oros) [1809496] - [tools] selftests: forwarding: devlink_lib: Allow tests to define devlink device (Petr Oros) [1809496] - [documentation] Add devlink-trap documentation (Petr Oros) [1809496] - [net] devlink: Add generic packet traps and groups (Petr Oros) [1809496] - [net] devlink: Add packet trap infrastructure (Petr Oros) [1809496] - [net] devlink: add warning in case driver does not set port type (Petr Oros) [1809496] - [net] devlink: remove unused devlink_port_get_phys_port_name() function (Petr Oros) [1809496] - [net] tcp: add sanity tests in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] tcp: implement coalescing on backlog queue (Guillaume Nault) [1790843] - [include] tcp: make tcp_space() aware of socket backlog (Guillaume Nault) [1790843] - [net] tcp: take care of compressed acks in tcp_add_reno_sack() (Guillaume Nault) [1790843] - [include] tcp: hint compiler about sack flows (Guillaume Nault) [1790843] - [net] tcp: drop dst in tcp_add_backlog() (Guillaume Nault) [1790843] - [net] drop_monitor: Do not cancel uninitialized work item (Petr Oros) [1810114] - [net] drop_monitor: Use kstrdup (Petr Oros) [1810114] - [net] drop_monitor: Better sanitize notified packets (Petr Oros) [1810114] - [net] drop_monitor: Make timestamps y2038 safe (Petr Oros) [1810114] - [net] drop_monitor: Allow user to start monitoring hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for summary alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Add support for packet alert mode for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Consider all monitoring states before performing configuration (Petr Oros) [1810114] - [net] drop_monitor: Add basic infrastructure for hardware drops (Petr Oros) [1810114] - [net] drop_monitor: Initialize hardware per-CPU data (Petr Oros) [1810114] - [net] drop_monitor: Move per-CPU data init/fini to separate functions (Petr Oros) [1810114] - [maintainers] drop_monitor: Add missing uAPI file to MAINTAINERS file (Petr Oros) [1810114] - [net] drop_monitor: Expose tail drop counter (Petr Oros) [1810114] - [net] drop_monitor: Make drop queue length configurable (Petr Oros) [1810114] - [net] drop_monitor: Add a command to query current configuration (Petr Oros) [1810114] - [net] drop_monitor: Allow truncation of dropped packets (Petr Oros) [1810114] - [net] drop_monitor: Add packet alert mode (Petr Oros) [1810114] - [net] drop_monitor: Add alert mode operations (Petr Oros) [1810114] - [net] drop_monitor: Require CAP_NET_ADMIN for drop monitor configuration (Petr Oros) [1810114] - [net] drop_monitor: Reset per-CPU data before starting to trace (Petr Oros) [1810114] - [net] drop_monitor: Initialize timer and work item upon tracing enable (Petr Oros) [1810114] - [net] drop_monitor: Split tracing enable / disable to different functions (Petr Oros) [1810114] - [net] drop_monitor: Use pre_doit / post_doit hooks (Petr Oros) [1810114] - [net] drop_monitor: Add extack support (Petr Oros) [1810114] - [net] drop_monitor: Avoid multiple blank lines (Petr Oros) [1810114] - [net] drop_monitor: Document scope of spinlock (Petr Oros) [1810114] - [net] drop_monitor: Rename and document scope of mutex (Petr Oros) [1810114] - [net] drop_monitor: Use correct error code (Petr Oros) [1810114] - [net] revert "net: dev: introduce support for sch BYPASS for lockless qdisc" (Paolo Abeni) [1805983] - [net] neighbour: remove neigh_cleanup() method (Ivan Vecera) [1795285] - [include] trace: events: neigh_update: print new state in string format (Ivan Vecera) [1795285] - [net] neigh: hook tracepoints in neigh update code (Ivan Vecera) [1795285] - [net] trace: events: add a few neigh tracepoints (Ivan Vecera) [1795285] - [net] netfilter: nf_tables: add __nft_chain_type_get() (Florian Westphal) [1806888] - [net] devlink: Hang reporter's dump method on a dumpit cb (Andrea Claudi) [1804798] - [net] core: Do not clear VF index for node/port GUIDs query (Petr Oros) [1805312] - [net] core: Populate VF index in struct ifla_vf_guid (Petr Oros) [1805312] - [net] core: Add support for getting VF GUIDs (Petr Oros) [1805312] - [tools] ptp: Extend the test program to check the external time stamp flags (Petr Oros) [1795192] - [netdrv] mlx5: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] igb: Reject requests that fail to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] dp83640: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] mv88e6xxx: Reject requests to enable time stamping on both edges (Petr Oros) [1795192] - [netdrv] ptp: Introduce strict checking of external time stamp options (Petr Oros) [1795192] - [netdrv] renesas: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mlx5: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] igb: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] dp83640: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] mv88e6xxx: reject unsupported external timestamp flags (Petr Oros) [1795192] - [netdrv] net: reject PTP periodic output requests with unsupported flags (Petr Oros) [1795192] - [ptp] Validate requests to enable time stamping of external signals (Petr Oros) [1795192] - [tools] ptp: Fix example program to match kernel (Petr Oros) [1795192] - [include] uaccess: add noop untagged_addr definition (Josef Oskera) [1805320] - [include] debugfs: Add debugfs_create_xul() for hexadecimal unsigned long (Josef Oskera) [1795286] - [documentation] debugfs: Document debugfs helper for unsigned long values (Josef Oskera) [1795286] - [net] vsock/virtio: add WARN_ON check on virtio_transport_get_ops() (Stefano Garzarella) [1692797] - [net] vsock/virtio: fix null-pointer dereference in virtio_transport_recv_listen() (Stefano Garzarella) [1692797] - [net] vsock: avoid to assign transport if its initialization fails (Stefano Garzarella) [1692797] - [misc] vsock/vmci: make vmci_vsock_cb_host_called static (Stefano Garzarella) [1692797] - [net] vsock: fix bind() behaviour taking care of CID (Stefano Garzarella) [1692797] - [net] vsock: prevent transport modules unloading (Stefano Garzarella) [1692797] - [misc] vsock/vmci: register vmci_transport only when VMCI guest/host are active (Stefano Garzarella) [1692797] - [net] vsock: add multi-transports support (Stefano Garzarella) [1692797] - [net] hv_sock: set VMADDR_CID_HOST in the hvs_remote_addr_init() (Stefano Garzarella) [1692797] - [net] vsock: move vsock_insert_unbound() in the vsock_create() (Stefano Garzarella) [1692797] - [net] vsock: add vsock_create_connected() called by transports (Stefano Garzarella) [1692797] - [net] vsock: handle buffer_size sockopts in the core (Stefano Garzarella) [1692797] - [net] vsock: add 'struct vsock_sock *' param to vsock_core_get_transport() (Stefano Garzarella) [1692797] - [net] vsock/virtio: add transport parameter to the virtio_transport_reset_no_sock() (Stefano Garzarella) [1692797] - [net] vsock: add 'transport' member in the struct vsock_sock (Stefano Garzarella) [1692797] - [kernel] vsock: remove linux/vm_sockets.h file (Stefano Garzarella) [1692797] - [net] vsock: remove vm_sockets_get_local_cid() (Stefano Garzarella) [1692797] - [net] vsock/vmci: remove unused VSOCK_DEFAULT_CONNECT_TIMEOUT (Stefano Garzarella) [1692797] - [x86] kvm: x86: clear stale x86_emulate_ctxt->intercept value (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: vmx: check descriptor table exits on instruction emulation (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Check IO instruction VM-exit conditions (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Refactor IO bitmap checks into helper function (Jon Maloy) [1806817] {CVE-2020-2732} - [x86] kvm: nvmx: Don't emulate instructions in guest mode (Jon Maloy) [1806817] {CVE-2020-2732}- [fs] gfs2: Fix oversight in gfs2_ail1_flush (Robert S Peterson) [1724769] - [kernel] sched/uclamp: Extend sched_setattr() to support utilization clamping (Phil Auld) [1810399] - [kernel] sched/core: Further clarify sched_class::set_next_task() (Phil Auld) [1810399] - [kernel] sched/fair: Use mul_u32_u32() (Phil Auld) [1810399] - [kernel] sched/core: Simplify sched_class::pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Optimize pick_next_task() (Phil Auld) [1810399] - [kernel] sched/core: Make pick_next_task_idle() more consistent (Phil Auld) [1810399] - [kernel] sched/fair: Better document newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Fix pick_next_task() vs 'change' pattern race (Phil Auld) [1810399] - [cpufreq] cpufreq: Initialize the governors in core_initcall (Phil Auld) [1810399] - [kernel] sched/vtime: Fix guest/system mis-accounting on task switch (Phil Auld) [1810399] - [kernel] sched/fair/util_est: Implement faster ramp-up EWMA on utilization increases (Phil Auld) [1810399] - [kernel] sched/topology: Allow sched_asym_cpucapacity to be disabled (Phil Auld) [1810399] - [kernel] sched/topology: Don't try to build empty sched domains (Phil Auld) [1810399] - [kernel] sched/topology: Don't set SD_BALANCE_WAKE on cpuset domain relax (Phil Auld) [1810399] - [kernel] membarrier: Fix RCU locking bug caused by faulty merge (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt_schedule() interrupt return comment (Phil Auld) [1810399] - [kernel] sched/membarrier: Return -ENOMEM to userspace on memory allocation failure (Phil Auld) [1810399] - [kernel] sched/membarrier: Skip IPIs when mm->mm_users == 1 (Phil Auld) [1810399] - [tools] selftests, sched/membarrier: Add multi-threaded test (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix p->mm->membarrier_state racy load (Phil Auld) [1810399] - [include] sched/membarrier: Call sync_core only before usermode for same mm (Phil Auld) [1810399] - [kernel] sched/membarrier: Remove redundant check (Phil Auld) [1810399] - [kernel] sched/membarrier: Fix private expedited registration check (Phil Auld) [1810399] - [kernel] tasks, sched/core: RCUify the assignment of rq->curr (Phil Auld) [1810399] - [kernel] tasks, sched/core: With a grace period after finish_task_switch(), remove unnecessary code (Phil Auld) [1810399] - [kernel] tasks, sched/core: Ensure tasks are available for a grace period after leaving the runqueue (Phil Auld) [1810399] - [kernel] tasks: Add a count of task RCU users (Phil Auld) [1810399] - [include] sched/core: Convert task_struct.usage to refcount_t (Phil Auld) [1810399] - [include] sched/core: Convert vcpu_is_preempted() from macro to an inline function (Phil Auld) [1810399] - [kernel] sched/fair: Remove unused cfs_rq_clock_task() function (Phil Auld) [1810399] - [scripts] Kbuild: Handle PREEMPT_RT for version string and magic (Phil Auld) [1810399] - [kernel] sched/fair: Use rq_lock/unlock in online_fair_sched_group (Phil Auld) [1810399] - [kernel] sched: Rework pick_next_task() slow-path (Phil Auld) [1810399] - [kernel] sched: Allow put_prev_task() to drop rq->lock (Phil Auld) [1810399] - [kernel] sched/fair: Expose newidle_balance() (Phil Auld) [1810399] - [kernel] sched: Add task_struct pointer to sched_class::set_curr_task (Phil Auld) [1810399] - [kernel] sched: Rework CPU hotplug task selection (Phil Auld) [1810399] - [kernel] rcu/tree: Fix SCHED_FIFO params (Phil Auld) [1810399] - [kernel] sched: Clean up active_mm reference counting (Phil Auld) [1810399] - [kernel] sched/{rt, deadline}: Fix set_next_task vs pick_next_task (Phil Auld) [1810399] - [kernel] sched: Fix kerneldoc comment for ia64_set_curr_task (Phil Auld) [1810399] - [kernel] stop_machine: Fix stop_cpus_in_progress ordering (Phil Auld) [1810399] - [kernel] sched/psi: Reduce psimon FIFO priority (Phil Auld) [1810399] - [kernel] sched/psi: Do not require setsched permission from the trigger creator (Phil Auld) [1810399] - [x86] x86/kvm: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [x86] x86/dumpstack: Indicate PREEMPT_RT in dumps (Phil Auld) [1810399] - [x86] x86: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] kprobes: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] tracing: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [include] locking/spinlocks: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] rcu: Use CONFIG_PREEMPTION (Phil Auld) [1810399] - [kernel] sched/preempt: Use CONFIG_PREEMPTION where appropriate (Phil Auld) [1810399] - [kernel] sched/core: Prevent race condition between cpuset and __sched_setscheduler() (Phil Auld) [1810399] - [kernel] rcu/tree: Call setschedule() gp ktread to SCHED_FIFO outside of atomic region (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Change cpuset_rwsem and hotplug lock order (Phil Auld) [1810399] - [kernel] cgroup/cpuset: Convert cpuset_mutex to percpu_rwsem (Phil Auld) [1810399] - [kernel] sched/deadline: Fix bandwidth accounting at all levels after offline migration (Phil Auld) [1810399] - [kernel] cpusets: Rebuild root domain deadline accounting information (Phil Auld) [1810399] - [kernel] sched/core: Streamle calls to task_rq_unlock() (Phil Auld) [1810399] - [kernel] sched/topology: Add partition_sched_domains_locked() (Phil Auld) [1810399] - [kernel] sched/stats: Fix unlikely() use of sched_info_on() (Phil Auld) [1810399] - [kernel] sched/fair: Change task_numa_work() storage to static (Phil Auld) [1810399] - [kernel] sched/fair: Move task_numa_work() init to init_numa_balancing() (Phil Auld) [1810399] - [kernel] sched/fair: Move init_numa_balancing() below task_numa_work() (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y (Phil Auld) [1810399] - [kernel] sched/rt, Kconfig: Introduce CONFIG_PREEMPT_RT (Phil Auld) [1810399] - [kernel] kconfig: include kernel/Kconfig.preempt from init/Kconfig (Phil Auld) [1810399] - [kernel] sched/core: Fix preempt warning in ttwu (Phil Auld) [1810399] - [kernel] sched/core: Optimize try_to_wake_up() for local wakeups (Phil Auld) [1810399] - [kernel] sched/core: Introduce set_next_task() helper for better code readability (Phil Auld) [1810399] - [kernel] sched/fair: Don't increase sd->balance_interval on newidle balance (Phil Auld) [1810399] - [kernel] sched/fair: Clean up load_balance() condition (Phil Auld) [1810399] - [mm] mm: fix possible PMD dirty bit lost in set_pmd_migration_entry() (Rafael Aquini) [1809698] - [mm] mm, thp: fix defrag setting if newline is not used (Rafael Aquini) [1809698] - [mm] mm/migrate.c: also overwrite error when it is bigger than zero (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: fix out of bounds write in mpol_parse_str() (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is valid (Rafael Aquini) [1809698] - [mm] mm/page-writeback.c: avoid potential division by zero in wb_min_max_ratio() (Rafael Aquini) [1809698] - [mm] mm/gup: fix memory leak in __gup_benchmark_ioctl (Rafael Aquini) [1809698] - [mm] mm: move_pages: return valid node id in status if the page is already on the target node (Rafael Aquini) [1809698] - [mm] mm/zsmalloc.c: fix the migrated zspage statistics (Rafael Aquini) [1809698] - [mm] mm: memcg/slab: wait for !root kmem_cache refcnt killing on root kmem_cache destruction (Rafael Aquini) [1809698] - [mm] mm/mempolicy.c: check range first in queue_pages_test_walk (Rafael Aquini) [1809698] - [mm] mm/memory.c: fix a huge pud insertion race during faulting (Rafael Aquini) [1809698] - [mm] mm: move the backup x_devmap() functions to asm-generic/pgtable.h (Rafael Aquini) [1809698] - [mm] mm/rmap.c: don't reuse anon_vma if we just want a copy (Rafael Aquini) [1809698] - [mm] mm/ksm.c: don't WARN if page is still mapped in remove_stable_node() (Rafael Aquini) [1809698] - [mm] mm/page_io.c: do not free shared swap slots (Rafael Aquini) [1809698] - [mm] mm: thp: handle page cache THP correctly in PageTransCompoundMap (Rafael Aquini) [1809698] - [mm] mm/slub: fix a deadlock in show_slab_objects() (Rafael Aquini) [1809698] - [mm] mm/vmpressure.c: fix a signedness bug in vmpressure_register_event() (Rafael Aquini) [1809698] - [trace] include/trace/events/writeback.h: fix -Wstringop-truncation warnings (Rafael Aquini) [1809698] - [mm] mm/compaction.c: clear total_{migrate, free}_scanned before scanning a new zone (Rafael Aquini) [1809698] - [mm] mm/hmm: fix hmm_range_fault()'s handling of swapped out pages (Rafael Aquini) [1809698] - [mm] mm/migrate.c: initialize pud_entry in migrate_vma() (Rafael Aquini) [1809698] - [kernel] ptrace: restore smp_rmb() in __ptrace_may_access() (Rafael Aquini) [1809698] - [documentation] mm: fix Documentation/vm/hmm.rst Sphinx warnings (Rafael Aquini) [1809698] - [fs] writeback: fix inode cgroup switching comment (Rafael Aquini) [1809698] - [include] mm/page_poison: update comment after code moved (Rafael Aquini) [1809698] - [mm] mm/filemap: pass inclusive 'end_byte' parameter to filemap_range_has_page (Rafael Aquini) [1809698] - [mm] ARM: 8826/1: mm: initialize pfn limits with find_limits() (Rafael Aquini) [1809698] - [fs] mm, proc: report PR_SET_THP_DISABLE in proc (Rafael Aquini) [1809698] - [mm] mm/khugepaged: fix crashes due to misaccounted holes (Rafael Aquini) [1809698] - [include] writeback: don't decrement wb->refcnt if !wb->bdi (Rafael Aquini) [1809698] - [mm] mm/filemap.c: Use existing variable (Rafael Aquini) [1809698] - [fs] removed extra extern file_fdatawait_range (Rafael Aquini) [1809698] - [s390] Revert "s390/dasd: Disable Thin Provisioning to prevent data loss" (Philipp Rudo) [1816984] - [s390] s390/dasd: fix data corruption for thin provisioned devices (Philipp Rudo) [1816984] - [block] virtio-blk: improve virtqueue error to BLK_STS (Philipp Rudo) [1816983] - [block] virtio-blk: fix hw_queue stopped on arbitrary error (Philipp Rudo) [1816983] - [s390] s390/pkey: fix missing length of protected key on return (Philipp Rudo) [1816981] - [s390] s390/mm: fix panic in gup_fast on large pud (Philipp Rudo) [1816980]- [mmc] mmc: core: Use a minimum 1600ms timeout when enabling CACHE ctrl (Yannick Cote) [1811430] - [mmc] mmc: core: Allow BKOPS and CACHE ctrl even if no HPI support (Yannick Cote) [1811430] - [net] net/smc: keep vlan_id for SMC-R in smc_listen_work() (Philipp Rudo) [1796890] - [scripts] redhat: fix modpost.c prerequisites (Frantisek Hrbata) [1818499] - [tools] tools/power/x86/intel-speed-select: Update version (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Change the order for clos disable (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Fix result display for turbo-freq auto mode (Prarit Bhargava) [1817068] - [tools] tools/power/x86/intel-speed-select: Add support for core-power discovery (Prarit Bhargava) [1817068] - [netdrv] can, slip: Protect tty->disc_data in write_wakeup and close with RCU (Steve Best) [1816036] - [kernel] exit: panic before exit_mm() on global init exit (Oleg Nesterov) [1808944] - [fs] nfsd: restore NFSv3 ACL support ("J. Bruce Fields") [1815683] - [fs] nfsd4: Fix kernel crash when reading proc file reply_cache_stats ("J. Bruce Fields") [1815683] - [fs] nfsd: fix cleanup of nfsd_reply_cache_init on failure ("J. Bruce Fields") [1815683] - [fs] nfsd: note inadequate stats locking ("J. Bruce Fields") [1815683] - [fs] nfsd4: drc containerization ("J. Bruce Fields") [1815683] - [fs] nfsd: don't call nfsd_reply_cache_shutdown twice ("J. Bruce Fields") [1815683] - [fs] nfsd: knfsd must use the container user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: rsi_parse() should use the current user namespace ("J. Bruce Fields") [1815683] - [net] SUNRPC: Fix the server AUTH_UNIX userspace mappings ("J. Bruce Fields") [1815683] - [fs] lockd: Pass the user cred from knfsd when starting the lockd server ("J. Bruce Fields") [1815683] - [net] SUNRPC: Temporary sockets should inherit the cred from their parent ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Cache the process user cred in the RPC server listener ("J. Bruce Fields") [1815683] - [fs] nfsd: Allow containers to set supported nfs versions ("J. Bruce Fields") [1815683] - [fs] nfsd: Add custom rpcbind callbacks for knfsd ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Allow further customisation of RPC program registration ("J. Bruce Fields") [1815683] - [net] SUNRPC: Clean up generic dispatcher code ("J. Bruce Fields") [1815683] - [fs] SUNRPC: Add a callback to initialise server requests ("J. Bruce Fields") [1815683] - [fs] SUNRPC/nfs: Fix return value for nfs4_callback_compound() ("J. Bruce Fields") [1815683] - [kernel] sched: Avoid scale real weight down to zero (Phil Auld) [1808562] - [nvme] nvme/pci: move cqe check after device shutdown (David Milburn) [1779247 1750267] - [mm] mm, slb: guarantee natural alignment for kmalloc(power-of-two) (Brian Foster) [1814964] - [tools] tools/power turbostat: Support Ice Lake server (Steve Best) [1776467] - [pinctrl] pinctrl: intel: Allow to request locked pads (Prarit Bhargava) [1783115] - [s390] s390/qeth: fix potential deadlock on workqueue flush (Philipp Rudo) [1814783] - [s390] s390/qeth: streamline control code for promisc mode (Philipp Rudo) [1814783] - [s390] scsi: zfcp: fix request object use-after-free in send path causing wrong traces (Philipp Rudo) [1814790] - [s390] s390/pci: Fix possible deadlock in recover_store() (Philipp Rudo) [1814788] - [s390] s390/pci: Recover handle in clp_set_pci_fn() (Philipp Rudo) [1814788] - [s390] scsi: zfcp: fix rport unblock if deleted SCSI devices on Scsi_Host (Philipp Rudo) [1814794] - [s390] scsi: zfcp: fix scsi_eh host reset with port_forced ERP for non-NPIV FCP devices (Philipp Rudo) [1814793] - [s390] s390/cio: fix virtio-ccw DMA without PV (Philipp Rudo) [1814787] - [s390] s390/kaslr: store KASLR offset for early dumps (Philipp Rudo) [1814781] - [mm] s390/mm: fix dynamic pagetable upgrade for hugetlbfs (Philipp Rudo) [1814779] - [char] tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send() (Steve Best) [1808048] - [s390] s390/qeth: fix dangling IO buffers after halt/clear (Philipp Rudo) [1814782] - [virtio] virtio_ring: fix unmap of indirect descriptors (Philipp Rudo) [1797289] - [virtio] virtio_ring: fix return code on DMA mapping fails (Philipp Rudo) [1797289] - [misc] dma-mapping: zero memory returned from dma_alloc_* (Philipp Rudo) [1788928] - [platform] platform/mellanox: fix the mlx-bootctl sysfs (Alaa Hleihel) [1655714] - [platform] platform/mellanox: Add bootctl driver for Mellanox BlueField Soc (Alaa Hleihel) [1655714] - [char] tpm: ibmvtpm: Wait for buffer to be set before proceeding (Steve Best) [1815548] - [scsi] iscsi: Avoid potential deadlock in iscsi_if_rx func (Oleksandr Natalenko) [1815874] - [x86] x86/vector: Remove warning on managed interrupt migration (Peter Xu) [1812331] - [scsi] scsi: lpfc: fix spelling mistake "Notication" -> "Notification" (Dick Kennedy) [1796565] - [scsi] scsi: lpfc: add RDF registration and Link Integrity FPIN logging (Dick Kennedy) [1796565] - [uapi] scsi: fc: Update Descriptor definition and add RDF and Link Integrity FPINs (Dick Kennedy) [1796565]- [kvm] KVM: PPC: Book3S HV: Use __gfn_to_pfn_memslot in HPT page fault handler (Sam Bobroff) [1815491] - [net] tcp: also NULL skb->dev when copy was needed (Florian Westphal) [1775961] - [net] tcp: ensure skb->dev is NULL before leaving TCP stack (Florian Westphal) [1775961]- [mm] mm/memcontrol: use vmstat names for printing statistics (Waiman Long) [1793534] - [base] mm/vmstat: add helpers to get vmstat item names for each enum type (Waiman Long) [1793534] - [mm] mm/vmstat.c: assert that vmstat_text is in sync with stat_items_size (Waiman Long) [1793534] - [mm] mm: memcontrol: dump memory.stat during cgroup OOM (Waiman Long) [1793534] - [mm] mm/memcontrol.c: lost css_put in memcg_expand_shrinker_maps() (Waiman Long) [1793534] - [mm] mm: memcg/slab: fix percpu slab vmstats flushing (Waiman Long) [1793534] - [include] include/linux/memcontrol.h: fix comments based on per-node memcg (Waiman Long) [1793534] - [mm] mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm() (Waiman Long) [1793534] - [mm] mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges (Waiman Long) [1793534] - [mm] mm: slab: make page_cgroup_ino() to recognize non-compound slab pages properly (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NULL-ptr deref in percpu stats flush (Waiman Long) [1793534] - [mm] mm/memcontrol: update lruvec counters in mem_cgroup_move_account (Waiman Long) [1793534] - [mm] mm: memcg: get number of pages on the LRU list in memcgroup base on lru_zone_size (Waiman Long) [1793534] - [mm] mm: memcontrol: fix percpu vmstats and vmevents flush (Waiman Long) [1793534] - [mm] mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones" (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu slab vmstats on kmem offlining (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmevents before releasing memcg (Waiman Long) [1793534] - [mm] mm: memcontrol: flush percpu vmstats before releasing memcg (Waiman Long) [1793534] - [mm] mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones (Waiman Long) [1793534] - [mm] mm/memcontrol: fix wrong statistics in memory.stat (Waiman Long) [1793534] - [mm] mm: memcontrol: don't batch updates of local VM stats and events (Waiman Long) [1793534] - [mm] mm: memcontrol: fix NUMA round-robin reclaim at intermediate level (Waiman Long) [1793534] - [mm] mm: memcontrol: fix recursive statistics correctness & scalabilty (Waiman Long) [1793534] - [mm] mm: memcontrol: move stat/event counting functions out-of-line (Waiman Long) [1793534] - [mm] mm: memcontrol: make cgroup stats and events query API explicitly local (Waiman Long) [1793534] - [mm] mm, memcg: rename ambiguously named memory.stat counters and functions (Waiman Long) [1793534] - [mm] mm: memcontrol: quarantine the mem_cgroup_nr_lru_pages() API (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: push down mem_cgroup_node_nr_lru_pages() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace node summing with memcg_page_state() (Waiman Long) [1793534] - [mm] mm: memcontrol: replace zone summing with lruvec_page_state() (Waiman Long) [1793534] - [include] mm: memcontrol: track LRU counts in the vmstats array (Waiman Long) [1793534] - [mm] mm: writeback: use exact memcg dirty counts (Waiman Long) [1793534] - [mm] mm: memcontrol: expose THP events on a per-memcg basis (Waiman Long) [1793534] - [mm] memcg: killed threads should not invoke memcg OOM killer (Waiman Long) [1793534] - [mm] mm, memcg: extract memcg maxable seq_file logic to seq_show_memcg_tunable (Waiman Long) [1793534] - [mm] mm, memcg: create mem_cgroup_from_seq (Waiman Long) [1793534] - [mm] mm/oom_kill.c: fix uninitialized oc->constraint (Waiman Long) [1793534] - [mm] mm, oom: add oom victim's memcg to the oom context information (Waiman Long) [1793534] - [mm] mm, oom: reorganize the oom report in dump_header (Waiman Long) [1793534] - [include] mm: Clarify the implication of adding new node stat items (Waiman Long) [1793534] - [mm] memcg: Revert "Add preemption point in accumulate_memcg_tree()" (Waiman Long) [1793534] - [base] driver core: add dev_groups to all drivers (Don Dutile) [1814347] - [tools] selftests/livepatch: Remove unused local variable in set_ftrace_enabled() (Yannick Cote) [1807115] - [tools] selftests/livepatch: Replace set_dynamic_debug() with setup_config() in README (Yannick Cote) [1807115] - [tools] selftests: livepatch: Fix it to do root uid check and skip (Yannick Cote) [1807115] - [tools] selftests/livepatch: Test interaction with ftrace_enabled (Yannick Cote) [1807115] - [tools] selftests/livepatch: Make dynamic debug setup and restore generic (Yannick Cote) [1807115] - [kernel] ftrace: Introduce PERMANENT ftrace_ops flag (Yannick Cote) [1807115] - [samples] livepatch: Handle allocation failure in the sample of shadow variable API (Yannick Cote) [1807115] - [lib] livepatch/samples/selftest: Use klp_shadow_alloc() API correctly (Yannick Cote) [1807115] - [lib] livepatch/selftest: Clean up shadow variable names and type (Yannick Cote) [1807115] - [samples] livepatch/sample: Use the right type for the leaking data pointer (Yannick Cote) [1807115] - [kernel] kprobes: Allow kprobes coexist with livepatch (Yannick Cote) [1727330 1807115] - [x86] ftrace/x86: Remove mcount() declaration (Yannick Cote) [1807115] - [tools] selftests: livepatch: add missing fragments to config (Yannick Cote) [1807115] - [lib] livepatch: Selftests of the API for tracking system state changes (Yannick Cote) [1807115] - [documentation] livepatch: Documentation of the new API for tracking system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Allow to distinguish different version of system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Basic API to track system state changes (Yannick Cote) [1807115] - [kernel] livepatch: Keep replaced patches until post_patch callback is called (Yannick Cote) [1807115] - [tools] selftests/livepatch: Disable the timeout (Yannick Cote) [1807115] - [kernel] livepatch: Nullify obj->mod in klp_module_coming()'s error path (Yannick Cote) [1807115] - [powerpc] livepatch: Remove klp_check_compiler_support() (Yannick Cote) [1807115] - [x86] ftrace/x86: Remove mcount support (Yannick Cote) [1807115] - [x86] ftrace/x86_32: Remove support for non DYNAMIC_FTRACE (Yannick Cote) [1807115] - [documentation] docs/livepatch: Unify style of livepatch documentation in the ReST format (Yannick Cote) [1807115] - [documentation] docs: livepatch: convert docs to ReST and rename to *.rst (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicate warning about missing reliable stacktrace support (Yannick Cote) [1807115] - [kernel] livepatch: Use static buffer for debugging messages under rq lock (Yannick Cote) [1807115] - [include] livepatch: Remove stale kobj_added entries from kernel-doc descriptions (Yannick Cote) [1807115] - [kernel] livepatch: Remove duplicated code for early initialization (Yannick Cote) [1807115] - [kernel] livepatch: Remove custom kobject state handling (Yannick Cote) [1807115] - [kernel] livepatch: Convert error about unsupported reliable stacktrace into a warning (Yannick Cote) [1807115] - [kernel] kprobes: Replace p with other pointer types (Yannick Cote) [1727330 1807115]- [drm] drm/bochs: downgrade pci_request_region failure from error to warning (Dave Airlie) [1804735] - [drm] drm/bochs: deinit bugfix (Dave Airlie) [1804735] - [fs] gfs2: fix O_EXCL|O_CREAT handling on cold dcache (Andrew Price) [1811787] - [net] esp: remove the skb from the chain when it's enqueued in cryptd_wq (Xin Long) [1807909] - [powerpc] powerpc/nvdimm: set target_node properly (Diego Domingos) [1815038]- [kernel] posix-cpu-timers: Fix two trivial comments (Prarit Bhargava) [1810244] - [kernel] hrtimer: Annotate lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fix permission check regression (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Always clear head pointer on dequeue (Prarit Bhargava) [1810244] - [kernel] hrtimer: Add a missing bracket and hide `migration_base' on !SMP (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry_active check actually work correctly (Prarit Bhargava) [1810244] - [include] posix-timers: Unbreak CONFIG_POSIX_TIMERS=n build (Prarit Bhargava) [1810244] - [kernel] tick: Mark sched_timer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Utilize timerqueue for storage (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Move state tracking to struct posix_cputimers (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Deduplicate rlimit handling (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless comparisons (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of 64bit divisions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate timer expiry further (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of zero checks (Prarit Bhargava) [1810244] - [kernel] rlimit: Rewrite non-sensical RLIMIT_CPU comment (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Respect INFINITY for hard RTTIME limit (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch thread group sampling to array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Restructure expiry array (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove cputime_expires (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Make expiry checks array based (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based sample functions (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Remove the odd field rename defines (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Switch check_*_timers() to array cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify set_process_cpu_timer() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify timer queueing (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide array based access to expiry cache (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move expiry cache into struct posix_cputimers (Prarit Bhargava) [1810244] - [include] sched: Move struct task_cputime to types.h (Prarit Bhargava) [1810244] - [include] posix-cpu-timers: Create a container struct (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Move prof/virt_ticks into caller (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample task times once in expiry check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Get rid of pointer indirection (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Simplify sample functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove pointless return value check (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_rearm() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use clock ID in posix_cpu_timer_set() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Consolidate thread group sample code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Rename thread_group_cputimer() and make it static (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sample directly in timer check (Prarit Bhargava) [1810244] - [kernel] itimers: Use quick sample function (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide quick sample function for itimer (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_timer_create() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Use common permission check in posix_cpu_clock_get() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Provide task validation functions (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove tsk argument from run_posix_cpu_timers() (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Sanitize bogus WARNONS (Prarit Bhargava) [1810244] - [kernel] hrtimer: Don't take expiry_lock when timer is currently migrated (Prarit Bhargava) [1810244] - [kernel] hrtimer: Protect lockless access to timer->base (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Fixup stale comment (Prarit Bhargava) [1810244] - [include] alarmtimers: Avoid rtc.h include (Prarit Bhargava) [1810244] - [include] posix-timers: Cleanup forward declarations and includes (Prarit Bhargava) [1810244] - [kernel] hrtimer: Improve comments on handling priority inversion against softirq kthread (Prarit Bhargava) [1810244] - [kernel] posix-timers: Use a callback for cancel synchronization on PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] posix-timers: Move rcu_head out of it union (Prarit Bhargava) [1810244] - [kernel] posix-timers: Rework cancel retry loops (Prarit Bhargava) [1810244] - [kernel] posix-timers: Cleanup the flag/flags confusion (Prarit Bhargava) [1810244] - [kernel] itimers: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [fs] timerfd: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] alarmtimer: Prepare for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] sched/deadline: Ensure inactive_timer runs in hardirq context (Prarit Bhargava) [1810244] - [kernel] timers: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Prepare support for PREEMPT_RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Determine hard/soft expiry mode for hrtimer sleepers on RT (Prarit Bhargava) [1810244] - [kernel] hrtimer: Move unmarked hrtimers to soft interrupt expiry on RT (Prarit Bhargava) [1810244] - [kernel] tick: Mark tick related hrtimers to expiry in hard interrupt context (Prarit Bhargava) [1810244] - [kvm] KVM: LAPIC: Mark hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] watchdog: Mark watchdog_hrtimer to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] perf/core: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [kernel] hrtimer: Make enqueue mode check work on RT (Prarit Bhargava) [1810244] - [kernel] sched: Mark hrtimers to expire in hard interrupt context (Prarit Bhargava) [1810244] - [staging] hrtimer/treewide: Use hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Provide hrtimer_sleeper_start_expires() (Prarit Bhargava) [1810244] - [kernel] hrtimer: Consolidate hrtimer_init() + hrtimer_init_sleeper() calls (Prarit Bhargava) [1810244] - [kernel] hrtimer: Remove task argument from hrtimer_init_sleeper() (Prarit Bhargava) [1810244] - [kernel] futex: Consolidate duplicated timer setup code (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Remove private interval storage (Prarit Bhargava) [1810244] - [kernel] posix-cpu-timers: Unbreak timer rearming (Prarit Bhargava) [1810244] - [mm] mm, slub: naive detection of double-free or freelist corruption (Rafael Aquini) [1810288] - [fs] nfs: add minor version to nfs_server_key for fscache (Dave Wysochanski) [1777097] - [edac] EDAC, mellanox: Add ECC support for BlueField DDR4 (Alaa Hleihel) [1725108] - [platform] platform/mellanox: fix potential deadlock in the tmfifo driver (Alaa Hleihel) [1655736] - [platform] platform/mellanox: Add TmFifo driver for Mellanox BlueField Soc (Alaa Hleihel) [1655736] - [mm] powerpc/pmem: Fix kernel crash due to wrong range value usage in flush_dcache_range (Steve Best) [1814279] - [mm] powerpc: Chunk calls to flush_dcache_range in arch_*_memory (Steve Best) [1814279] - [fs] cifs: fix NULL dereference in match_prepath (Leif Sahlberg) [1760879] - [fs] cifs: fail i/o on soft mounts if sessionsetup errors out (Leif Sahlberg) [1798031] - [sound] ALSA: usb-audio: set the interface format after resume on Dell WD19 (Perry Yuan) [1807965] - [fs] cifs: make sure we do not overflow the max EA buffer size (Leif Sahlberg) [1752437]- [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1814350] - [fs] fuse: fix stack use after return (Miklos Szeredi) [1814666]- [target] scsi: Revert "target: iscsi: Wait for all commands to finish before freeing a session" (Maurizio Lombardi) [1784442] - [infiniband] scsi: Revert "RDMA/isert: Fix a recently introduced regression related to logout" (Maurizio Lombardi) [1784442] - [target] scsi: Revert "target/core: Inline transport_lun_remove_cmd()" (Maurizio Lombardi) [1784442] - [target] scsi: libfc: remove unnecessary assertion on ep variable (Maurizio Lombardi) [1784442] - [infiniband] scsi: RDMA/isert: Fix a recently introduced regression related to logout (Maurizio Lombardi) [1784442] - [target] scsi: target/iblock: Fix protection error with blocks greater than 512B (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Fix a pr_debug() argument (Maurizio Lombardi) [1784442] - [target] scsi: target: iscsi: Wait for all commands to finish before freeing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Release SPC-2 reservations when closing a session (Maurizio Lombardi) [1784442] - [target] scsi: target: core: Document target_cmd_size_check() (Maurizio Lombardi) [1784442] - [target] scsi: target: tcmu: Prevent memory reclaim recursion (Maurizio Lombardi) [1784442] - [scsi] scsi: cxgb4i: remove set but not used variable 'ppmax' (Maurizio Lombardi) [1784442] - [target] scsi: target: remove unused extension parameters (Maurizio Lombardi) [1784442] - [target] scsi: target: fix SendTargets=All string compares (Maurizio Lombardi) [1784442] - [target] scsi: target: Remove tpg_list and se_portal_group.se_tpg_node (Maurizio Lombardi) [1784442] - [target] scsi: target: cxgbit: Fix cxgbit_fw4_ack() (Maurizio Lombardi) [1784442] - [infiniband] IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure full Gen3 speed in a Gen4 system (Kamal Heib) [1786601] - [infiniband] IB/core: Avoid deadlock during netlink message handling (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Fix incorrect error print (Kamal Heib) [1786601] - [infiniband] IB/iser: Support up to 16MB data transfer in a single command (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Add missing cast for 32 bit (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update name of some functions (Kamal Heib) [1786601] - [infiniband] RDMA/iwpm: Delete unnecessary checks before the macro call "dev_kfree_skb" (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Use existing FIELD_SIZEOF macro (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Remove umem check on dereg MR flow (Kamal Heib) [1786601] - [net] xprtrdma: Send Queue size grows after a reconnect (Kamal Heib) [1786601] - [net] xprtrdma: Clear xprt->reestablish_timeout on close (Kamal Heib) [1786601] - [net] xprtrdma: Recycle MRs after disconnect (Kamal Heib) [1786601] - [net] xprtrdma: Optimize rpcrdma_post_recvs() (Kamal Heib) [1786601] - [net] xprtrdma: Inline XDR chunk encoder functions (Kamal Heib) [1786601] - [infiniband] RDMA/core: Make invalidate_range a device operation (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use kvcalloc for the dma_list and page_list (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Check for overflow when computing the umem_odp end (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Provide ib_umem_odp_release() to undo the allocs (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Split creating a umem_odp from ib_umem_get (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make the three ways to create a umem_odp clear (Kamal Heib) [1786601] - [infiniband] RMDA/odp: Consolidate umem_odp initialization (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Make it clearer when a umem is an implicit ODP umem (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Iterate over the whole rbtree directly (Kamal Heib) [1786601] - [infiniband] RDMA/odp: Use the common interval tree library instead of generic (Kamal Heib) [1786601] - [net] xprtrdma: Clean up xprt_rdma_set_connect_timeout() (Kamal Heib) [1786601] - [net] xprtrdma: Use an llist to manage free rpcrdma_reps (Kamal Heib) [1786601] - [net] xprtrdma: Remove rpcrdma_buffer::rb_mrlock (Kamal Heib) [1786601] - [net] xprtrdma: Cache free MRs in each rpcrdma_req (Kamal Heib) [1786601] - [net] xprtrdma: Ensure creating an MR does not trigger FS writeback (Kamal Heib) [1786601] - [net] xprtrdma: Move rpcrdma_mr_get out of frwr_map (Kamal Heib) [1786601] - [net] xprtrdma: Combine rpcrdma_mr_put and rpcrdma_mr_unmap_and_put (Kamal Heib) [1786601] - [net] xprtrdma: Simplify rpcrdma_mr_pop (Kamal Heib) [1786601] - [net] xprtrdma: Rename rpcrdma_buffer::rb_all (Kamal Heib) [1786601] - [net] xprtrdma: Rename CQE field in Receive trace points (Kamal Heib) [1786601] - [infiniband] RDMA: Delete DEBUG code (Kamal Heib) [1786601] - [include] xprtrdma: Boost client's max slot table size to match Linux server (Kamal Heib) [1786601] - [net] xprtrdma: Boost maximum transport header size (Kamal Heib) [1786601] - [net] xprtrdma: Fix calculation of ri_max_segs again (Kamal Heib) [1786601] - [net] xprtrdma: Update obsolete comment (Kamal Heib) [1786601] - [net] xprtrdma: Refresh the documenting comment in frwr_ops.c (Kamal Heib) [1786601] - [net] svcrdma: Use llist for managing cache of recv_ctxts (Kamal Heib) [1786601] - [net] svcrdma: Remove svc_rdma_wq (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Rate limit admin queue error prints (Kamal Heib) [1786601] - [rdma] RDMA/core: Introduce ratelimited ibdev printk functions (Kamal Heib) [1786601] - [net] rdma: Enable ib_alloc_cq to spread work over a device's comp_vectors (Kamal Heib) [1786601] - [infiniband] RDMA/core: fix spelling mistake "Nelink" -> "Netlink" (Kamal Heib) [1786601] - [infiniband] net: Use skb_frag_off accessors (Kamal Heib) [1786601] - [infiniband] RDMA/efa: Expose device statistics (Kamal Heib) [1786601] - [infiniband] RDMA/core: Support netlink commands in non init_net net namespaces (Kamal Heib) [1786601] - [rdma] RDMA: Make most headers compile stand alone (Kamal Heib) [1786601] - [infiniband] RDMA/core: Annotate destroy of mutex to ensure that it is released as unlocked (Kamal Heib) [1786601] - [infiniband] net: Use skb accessors in network drivers (Kamal Heib) [1786601] - [documentation] docs: infiniband: add it to the driver-api bookset (Kamal Heib) [1786601] - [infiniband] IB/hfi1: use the new FOLL_LONGTERM flag to get_user_pages_fast() (Kamal Heib) [1786601] - [documentation] Documentation/infiniband: update from locked to pinned_vm (Kamal Heib) [1786601] - [infiniband] opa_vnic: fix check on record->event, incorrect operator used (Kamal Heib) [1786601] - [infiniband] opa_vnic: Convert vport_idr to XArray (Kamal Heib) [1786601] - [infiniband] IB/hfi1: Ensure ucast_dlid access doesnt exceed bounds (Kamal Heib) [1786601] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Kamal Heib) [1786601] - [infiniband] treewide: Add SPDX license identifier - Kbuild (Kamal Heib) [1786601] - [infiniband] mm/gup: add make_dirty arg to put_user_pages_dirty_lock() (Kamal Heib) [1786601] - [netdrv] ibmvnic: Do not process device remove during device reset (Steve Best) [1813223] - [bluetooth] Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature" (Gopal Tiwari) [1811534] - [tty] serial: 8250_pci: Make PCI class test non fatal (Prarit Bhargava) [1812742] - [powercap] powercap/intel_rapl: add support for ICX-D (Steve Best) [1485067] - [char] drivers: ipmi: fix off-by-one bounds check that leads to a out-of-bounds write (Tony Camuso) [1812922] - [char] ipmi:ssif: Handle a possible NULL pointer reference (Tony Camuso) [1812922] - [char] drivers: ipmi: Modify max length of IPMB packet (Tony Camuso) [1812922] - [char] drivers: ipmi: Support raw i2c packet in IPMB (Tony Camuso) [1812922] - [char] ipmi: fix ipmb_poll()'s return type (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation, continued (Tony Camuso) [1812922] - [char] char: Fix Kconfig indentation (Tony Camuso) [1812922] - [char] ipmi: kill off 'timespec' usage again (Tony Camuso) [1812922] - [char] drivers: ipmi: Support for both IPMB Req and Resp (Tony Camuso) [1812922] - [char] ipmi: Fix memory leak in __ipmi_bmc_register (Tony Camuso) [1812922] - [char] ipmi: bt-bmc: use devm_platform_ioremap_resource() to simplify code (Tony Camuso) [1812922] - [char] ipmi: use *ph to print small buffer (Tony Camuso) [1812922] - [char] ipmi: Don't leave holes in the I2C address list in the ssif driver (Tony Camuso) [1812922] - [char] ipmi: fix return value of ipmi_set_my_LUN (Tony Camuso) [1812922] - [char] ipmi: Convert pr_xxx() to dev_xxx() in the BT code (Tony Camuso) [1812922] - [char] ipmi:dmi: Ignore IPMI SMBIOS entries with a zero base address (Tony Camuso) [1812922] - [char] ipmi_si: fix potential integer overflow on large shift (Tony Camuso) [1812922] - [char] ipmi_si_pci: fix NULL device in ipmi_si error message (Tony Camuso) [1812922] - [char] ipmi: Convert printk(KERN_ to pr_( (Tony Camuso) [1812922] - [char] pci:ipmi: Move IPMI PCI class id defines to pci_ids.h (Tony Camuso) [1812922] - [char] ipmi:powernv: Convert ipmi_smi_t to struct ipmi_smi (Tony Camuso) [1812922] - [fs] NFSv4 fix acl retrieval over krb5i/krb5p mounts (Steve Dickson) [1787627]- [fs] gfs2: Additional information when gfs2_ail1_flush withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Fix lru_count going negative (Robert S Peterson) [1752976] - [fs] gfs2: allow journal replay to hold sd_log_flush_lock (Robert S Peterson) [1752976] - [fs] gfs2: don't allow releasepage to free bd still used for revokes (Robert S Peterson) [1752976] - [fs] gfs2: clean up iopen glock mess in gfs2_create_inode (Robert S Peterson) [1752976] - [fs] gfs2: flesh out delayed withdraw for gfs2_log_flush (Robert S Peterson) [1752976] - [fs] gfs2: Fix incorrect variable name (Robert S Peterson) [1752976] - [fs] gfs2: Do proper error checking for go_sync family of glops functions (Robert S Peterson) [1752976] - [fs] gfs2: Don't demote a glock until its revokes are written (Robert S Peterson) [1752976] - [fs] gfs2: drain the ail2 list after io errors (Robert S Peterson) [1752976] - [fs] gfs2: Withdraw in gfs2_ail1_flush if write_cache_pages fails (Robert S Peterson) [1752976] - [fs] gfs2: Do log_flush in gfs2_ail_empty_gl even if ail list is empty (Robert S Peterson) [1752976] - [fs] gfs2: Check for log write errors before telling dlm to unlock (Robert S Peterson) [1752976] - [fs] gfs2: Prepare to withdraw as soon as an IO error occurs in log write (Robert S Peterson) [1752976] - [fs] gfs2: Issue revokes more intelligently (Robert S Peterson) [1752976] - [fs] gfs2: Add verbose option to check_journal_clean (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop when checking ail item count before go_inval (Robert S Peterson) [1752976] - [fs] gfs2: Force withdraw to replay journals and wait for it to finish (Robert S Peterson) [1752976] - [fs] gfs2: Allow some glocks to be used during withdraw (Robert S Peterson) [1752976] - [fs] gfs2: move check_journal_clean to util.c for future use (Robert S Peterson) [1752976] - [fs] gfs2: Ignore dlm recovery requests if gfs2 is withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: Only complain the first time an io error occurs in quota or log (Robert S Peterson) [1752976] - [fs] gfs2: log error reform (Robert S Peterson) [1752976] - [fs] gfs2: Rework how rgrp buffer_heads are managed (Robert S Peterson) [1752976] - [fs] gfs2: clear ail1 list when gfs2 withdraws (Robert S Peterson) [1752976] - [fs] gfs2: Introduce concept of a pending withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Return bool from gfs2_assert functions (Robert S Peterson) [1752976] - [fs] gfs2: Turn gfs2_consist into void functions (Robert S Peterson) [1752976] - [fs] gfs2: Remove usused cluster_wide arguments of gfs2_consist functions (Robert S Peterson) [1752976] - [fs] gfs2: Report errors before withdraw (Robert S Peterson) [1752976] - [fs] gfs2: Split gfs2_lm_withdraw into two functions (Robert S Peterson) [1752976] - [fs] gfs2: Fix possible fs name overflows (Robert S Peterson) [1752976] - [fs] gfs2: Remove active journal side effect from gfs2_write_log_header (Robert S Peterson) [1752976] - [fs] gfs2: Don't loop forever in gfs2_freeze if withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix infinite loop in gfs2_ail1_flush on io error (Robert S Peterson) [1752976] - [fs] gfs2: Introduce function gfs2_withdrawn (Robert S Peterson) [1752976] - [fs] gfs2: fix glock reference problem in gfs2_trans_add_unrevoke (Robert S Peterson) [1752976] - [fs] gfs2: make gfs2_log_shutdown static (Robert S Peterson) [1752976] - [fs] gfs2: replace more printk with calls to fs_info and friends (Robert S Peterson) [1752976] - [fs] gfs2: dump fsid when dumping glock problems (Robert S Peterson) [1752976] - [fs] gfs2: simplify gfs2_freeze by removing case (Robert S Peterson) [1752976] - [fs] gfs2: Rename SDF_SHUTDOWN to SDF_WITHDRAWN (Robert S Peterson) [1752976] - [fs] gfs2: Warn when a journal replay overwrites a rgrp with buffers (Robert S Peterson) [1752976] - [fs] gfs2: log which portion of the journal is replayed (Robert S Peterson) [1752976] - [fs] gfs2: kthread and remount improvements (Robert S Peterson) [1752976] - [fs] gfs2: Fix occasional glock use-after-free (Robert S Peterson) [1752976] - [fs] gfs2: Rename sd_log_le_{revoke,ordered} (Robert S Peterson) [1724769] - [watchdog] watchdog: make nowayout sysfs file writable (David Arcari) [1802742] - [watchdog] watchdog: prevent deferral of watchdogd wakeup on RT (David Arcari) [1802742] - [watchdog] watchdog: Fix the race between the release of watchdog_core_data and cdev (David Arcari) [1802742] - [watchdog] watchdog: convert remaining drivers to use SPDX license identifier (David Arcari) [1802742] - [watchdog] watchdog: make the device time out at open_deadline when open_timeout is used (David Arcari) [1802742] - [watchdog] watchdog: introduce CONFIG_WATCHDOG_OPEN_TIMEOUT (David Arcari) [1802742] - [watchdog] watchdog: introduce watchdog.open_timeout commandline parameter (David Arcari) [1802742] - [watchdog] watchdog: let core print error message when registering device fails (David Arcari) [1802742] - [watchdog] watchdog: make watchdog_deferred_registration_add() void (David Arcari) [1802742] - [watchdog] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (David Arcari) [1802742] - [watchdog] watchdog: add error messages when initializing timeout fails (David Arcari) [1802742] - [watchdog] watchdog: refactor watchdog_init_timeout (David Arcari) [1802742] - [watchdog] watchdog: core: fix null pointer dereference when releasing cdev (David Arcari) [1802742] - [x86] x86/ioapic: Prevent inconsistent state when moving an interrupt (Prarit Bhargava) [1810236] - [x86] x86/fpu: Don't cache access to fpu_fpregs_owner_ctx (Prarit Bhargava) [1810236] - [lib] lib/ubsan: don't serialize UBSAN report (Prarit Bhargava) [1810243] - [lib] ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in uaccess regions (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix pwq ref leak in rescuer_thread() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix missing kfree(rescuer) in destroy_workqueue() (Prarit Bhargava) [1810243] - [kernel] workqueue: Fix spurious sanity check failures in destroy_workqueue() (Prarit Bhargava) [1810243] - [include] hrtimer: Add kernel doc annotation for HRTIMER_MODE_HARD (Prarit Bhargava) [1810243] - [kernel] genirq: Force interrupt threading on RT (Prarit Bhargava) [1810243] - [include] hrtimer: Introduce HARD expiry mode (Prarit Bhargava) [1810243] - [kernel] workqueue: Remove GPF argument from alloc_workqueue_attrs() (Prarit Bhargava) [1810243] - [kernel] workqueue: Make alloc/apply/free_workqueue_attrs() static (Prarit Bhargava) [1810243] - [tools] objtool: Add UACCESS validation (Prarit Bhargava) [1810243] - [tools] objtool: Handle function aliases (Prarit Bhargava) [1810243] - [lib] ubsan: build ubsan.c more conservatively (Prarit Bhargava) [1810243] - [lib] x86/uaccess, ubsan: Fix UBSAN vs. SMAP (Prarit Bhargava) [1810243] - [tools] objtool: Rewrite alt->skip_orig (Prarit Bhargava) [1810243] - [fs] dlm: Don't swamp the CPU with callbacks queued during recovery (Robert S Peterson) [1752976] - [nvme] nvmet: update AEN list and array at one place (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix controller use after free (Gopal Tiwari) [1781927] - [nvme] nvmet: Fix error print message at nvmet_install_queue function (Gopal Tiwari) [1781927] - [nvme] nvme-pci: remove nvmeq->tags (Gopal Tiwari) [1781927] - [nvme] nvmet: fix dsm failure when payload does not match sgl descriptor (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: switch to use helpers (Gopal Tiwari) [1781927] - [nvme] nvmet: fix per feat data len for get_feature (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix read queue count (Gopal Tiwari) [1781927] - [nvme] nvme/pci Limit write queue sizes to possible cpus (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Fix write and poll queue types (Gopal Tiwari) [1781927] - [nvme] nvme/pci: Remove last_cq_head (Gopal Tiwari) [1781927] - [nvme] nvme: Namepace identification descriptor list is optional (Gopal Tiwari) [1781927] - [nvme] Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T" (Gopal Tiwari) [1781927] - [nvme] nvme: else following return is not needed (Gopal Tiwari) [1781927] - [nvme] nvme: add error message on mismatching controller ids (Gopal Tiwari) [1781927] - [nvme] nvme_fc: add module to ops template to allow module references (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Avoid preallocating big SGL for data (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: add quirk to avoid changing temperature threshold (Gopal Tiwari) [1781927] - [nvme] nvme: hwmon: provide temperature min and max values for each sensor (Gopal Tiwari) [1781927] - [nvme] nvme: Discard workaround for non-conformant devices (Gopal Tiwari) [1781927] - [nvme] nvme: Add hardware monitoring support (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix crash in nvme_mpath_clear_ctrl_paths (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: fix a segmentation fault during module unload (Gopal Tiwari) [1781927] - [nvme] nvmet: clean up command parsing a bit (Gopal Tiwari) [1781927] - [nvme] nvmet: fill discovery controller sn, fr and mn correctly (Gopal Tiwari) [1781927] - [nvme] nvmet: Open code nvmet_req_execute() (Gopal Tiwari) [1781927] - [nvme] nvmet: Remove the data_len field from the nvmet_req struct (Gopal Tiwari) [1781927] - [nvme] nvmet: add plugging for read/write when ns is bdev (Gopal Tiwari) [1781927] - [nvme] nvmet: stop using bio_set_op_attrs (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce nvmet_dsm_len() helper (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Spelling s/resdicovered/rediscovered/ (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't check data_len in nvmet_tcp_map_data() (Gopal Tiwari) [1781927] - [nvme] nvme: Introduce nvme_lba_to_sect() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Don't set the request's data_len (Gopal Tiwari) [1781927] - [nvme] nvmet: Cleanup discovery execute handlers (Gopal Tiwari) [1781927] - [nvme] nvmet-rdma: add unlikely check at nvmet_rdma_map_sgl_keyed (Gopal Tiwari) [1781927] - [nvme] nvme: Cleanup and rename nvme_block_nr() (Gopal Tiwari) [1781927] - [nvme] nvme: introduce "Command Aborted By host" status code (Gopal Tiwari) [1781927] - [nvme] nvmet: Introduce common execute function for get_log_page and identify (Gopal Tiwari) [1781927] - [nvme] nvme: move common call to nvme_cleanup_cmd to core layer (Gopal Tiwari) [1781927] - [nvme] nvmet: add unlikely check at nvmet_req_alloc_sgl (Gopal Tiwari) [1781927] - [nvme] nvme-fc: ensure association_id is cleared regardless of a Disconnect LS (Gopal Tiwari) [1781927] - [nvme] nvme-fc: clarify error messages (Gopal Tiwari) [1781927] - [nvme] nvme: introduce nvme_is_aen_req function (Gopal Tiwari) [1781927] - [nvme] nvme-fc and nvmet-fc: sync with FC-NVME-2 header changes (Gopal Tiwari) [1781927] - [nvme] nvmet: use bio_io_error instead of duplicating it (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Set new cmd set indicator in nvme-fc cmnd iu (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: remove unused groups_only mode in ana log (Gopal Tiwari) [1781927] - [nvme] nvme-multipath: fix possible io hang after ctrl reconnect (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvmet-loop: fix possible leakage during error flow (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Initialize sk->sk_ll_usec only with NET_RX_BUSY_POLL (Gopal Tiwari) [1781927] - [nvme] nvme: Wait for reset state when required (Gopal Tiwari) [1781927] - [nvme] nvme: Prevent resets during paused controller state (Gopal Tiwari) [1781927] - [nvme] nvme: Restart request timers in resetting state (Gopal Tiwari) [1781927] - [nvme] nvme: Remove ADMIN_ONLY state (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Free tagset if no IO queues (Gopal Tiwari) [1781927] - [nvme] nvme: fix possible deadlock when nvme_update_formats fails (Gopal Tiwari) [1781927] - [include] nvme-fc: Sync nvme-fc header to FC-NVME-2 (Gopal Tiwari) [1781927] - [nvme] nvme: retain split access workaround for capability reads (Gopal Tiwari) [1781927] - [nvme] nvme: Move ctrl sqsize to generic space (Gopal Tiwari) [1781927] - [nvme] nvme: Add ctrl attributes for queue_count and sqsize (Gopal Tiwari) [1781927] - [nvme] nvme: allow 64-bit results in passthru commands (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Fix max_hw_sectors calculation (Gopal Tiwari) [1781927] - [nvme] Added QUIRKs for ADATA XPG SX8200 Pro 512GB (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fix wrong stop condition in io_work (Gopal Tiwari) [1781927] - [nvme] nvme: fix an error code in nvme_init_subsystem() (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: remove superflous check on request sgl (Gopal Tiwari) [1781927] - [nvme] nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Fix a race in controller removal (Gopal Tiwari) [1781927] - [nvme] nvmet: change ppl to lpp (Gopal Tiwari) [1781927] - [nvme] nvme: add uevent variables for controller devices (Gopal Tiwari) [1781927] - [nvme] nvme: Remove redundant assignment of cq vector (Gopal Tiwari) [1781927] - [nvme] nvme: enable aen regardless of the presence of I/O queues (Gopal Tiwari) [1781927] - [nvme] nvme: send discovery log page change events to userspace (Gopal Tiwari) [1781927] - [nvme] nvme: Assign subsys instance from first ctrl (Gopal Tiwari) [1781927] - [nvme] nvmet: fix a wrong error status returned in error log page (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: remove redundant assignment to variable ret (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: allow discovery subsystems accept a kato (Gopal Tiwari) [1781927] - [nvme] nvmet: Use PTR_ERR_OR_ZERO() in nvmet_init_discovery() (Gopal Tiwari) [1781927] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Fail transport errors with NVME_SC_HOST_PATH (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_report_ns_ids propagate error back (Gopal Tiwari) [1781927] - [nvme] nvme: pass status to nvme_error_status (Gopal Tiwari) [1781927] - [nvme] nvme: fix ns removal hang when failing to revalidate due to a transient error (Gopal Tiwari) [1781927] - [nvme] nvme: make nvme_identify_ns propagate errors back (Gopal Tiwari) [1781927] - [nvme] nvme: fail cancelled commands with NVME_SC_HOST_PATH_ERROR (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: fail command with NVME_SC_HOST_PATH_ERROR send failed (Gopal Tiwari) [1781927] - [nvme] nvme: include admin_q sync with nvme_sync_queues (Gopal Tiwari) [1781927] - [nvme] nvme-fc: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Use rq_dma_dir macro (Gopal Tiwari) [1781927] - [nvme] nvme-rdma: Add TOS for rdma transport (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Support shared tags across queues for Apple 2018 controllers (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for Apple 2018+ models (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Add support for variable IO SQ element size (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use struct nvme_ctrl directly (Gopal Tiwari) [1781927] - [nvme] nvme-pci: Pass the queue to SQ_SIZE/CQ_SIZE macros (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: Add TOS for tcp transport (Gopal Tiwari) [1781927] - [nvme] nvme: trace bio completion (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible NULL deref (Gopal Tiwari) [1781927] - [nvme] nvme: tcp: selects CRYPTO_CRC32C for nvme-tcp (Gopal Tiwari) [1781927] - [nvme] nvme-fabrics: Add type of service (TOS) configuration (Gopal Tiwari) [1781927] - [nvme] nvmet: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [nvme] nvmet: fix data units read and written counters in SMART log (Gopal Tiwari) [1781927] - [nvme] nvmet-tcp: fix possible memory leak (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: support simple polling (Gopal Tiwari) [1781927] - [nvme] nvme: trace: parse Get LBA Status command in detail (Gopal Tiwari) [1781927] - [include] nvme: add Get LBA Status command opcode (Gopal Tiwari) [1781927] - [nvme] nvme: move sqsize setting to the core (Gopal Tiwari) [1781927] - [nvme] nvme: don't pass cap to nvme_disable_ctrl (Gopal Tiwari) [1781927] - [nvme] nvme-pci: set ctrl sqsize to the device q_depth (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: cleanup nvme_tcp_recv_pdu (Gopal Tiwari) [1781927] - [nvme] nvme: have nvme_init_identify set ctrl->cap (Gopal Tiwari) [1781927] - [nvme] nvme-tcp: Use protocol specific operations while reading socket (Gopal Tiwari) [1781927] - [nvme] nvme: Fix cntlid validation when not using NVMEoF (Gopal Tiwari) [1781927] - [infiniband] PCI/P2PDMA: Introduce pci_p2pdma_unmap_sg() (Gopal Tiwari) [1781927] - [nvme] PCI/P2PDMA: Add attrs argument to pci_p2pdma_map_sg() (Gopal Tiwari) [1781927] - [lightnvm] lightnvm: remove nvm_submit_io_sync_fn (Gopal Tiwari) [1781927] - [powerpc] xive: Discard ESB load value when interrupt is invalid (David Gibson) [1744408] - [documentation] kvm: ppc: book3s hv: xive: Allow userspace to set the # of VPs (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Make VP block size configurable (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Set kvm->arch.xive when VPs are allocated (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Compute the VP id in a common helper (David Gibson) [1744408] - [powerpc] xive: Implement get_irqchip_state method for XIVE to fix shutdown race (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Free escalation interrupts before disabling the VP (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: xive: Ensure VP isn't already in use (David Gibson) [1744408] - [powerpc] kvm: ppc: book3s hv: Fix regression on big endian hosts (David Gibson) [1725763] - [powerpc] 64s: Fix misleading SPR and timebase information (David Gibson) [1725763] - [powerpc] powernv: Add ultravisor message log interface (David Gibson) [1725763] - [powerpc] powernv/opal-msglog: Refactor memcons code (David Gibson) [1725763] - [powerpc] kvm: Use UV_RETURN ucall to return to ultravisor (David Gibson) [1725763] - [powerpc] powernv: Access LDBAR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] powernv/idle: Fix restore of SPRN_LDBAR for POWER9 stop state (David Gibson) [1725763] - [powerpc] powernv/idle: Restore AMR/UAMOR/AMOR/IAMR after idle (David Gibson) [1725763] - [powerpc] 64s: Reimplement book3s idle code in C (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore IAMR after idle" (David Gibson) [1725763] - [powerpc] revert "powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle" (David Gibson) [1725763] - [powerpc] mm: Write to PTCR only if ultravisor disabled (David Gibson) [1725763] - [powerpc] mm: Use UV_WRITE_PATE ucall to register a PATE (David Gibson) [1725763] - [powerpc] powernv: Introduce FW_FEATURE_ULTRAVISOR (David Gibson) [1725763] - [powerpc] kernel: Add ucall_norets() ultravisor call handler (David Gibson) [1725763] - [documentation] documentation/powerpc: Ultravisor API (David Gibson) [1725763] - [documentation] documentation/powerpc: Add ELF note documentation (David Gibson) [1725763] - [powerpc] Add PowerPC Capabilities ELF note (David Gibson) [1725763] - [netdrv] mlx5e: allow TSO on VXLAN over VLAN topologies (Davide Caratti) [1780643] - [net] bluetooth: Add debug setting for changing minimum encryption key size (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Let hidp_send_message return number of queued bytes (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: search for destination address in all peers (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: always check destination address (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: check neighbour table for SLAAC (Gopal Tiwari) [1764976] - [net] bluetooth: Add SMP workaround Microsoft Surface Precision Mouse bug (Gopal Tiwari) [1764976] - [net] bluetooth: Use controller sets when available (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Check bearer type on __l2cap_global_chan_by_addr (Gopal Tiwari) [1764976] - [net] bluetooth: validate BLE connection interval updates (Gopal Tiwari) [1764976] - [net] bluetooth: Add support for LE ping feature (Gopal Tiwari) [1764976] - [net] bluetooth: Check state in l2cap_disconnect_rsp (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: NUL terminate a string in the compat ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Ignore CC events not matching the last HCI command (Gopal Tiwari) [1764976] - [net] bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1764976] - [net] bluetooth: hci_core: Don't stop BT if the BD address missing in dts (Gopal Tiwari) [1764976] - [net] bluetooth: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix incorrect pointer arithmatic in ext_adv_report_evt (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1764976] - [net] bluetooth: Add return check for L2CAP security level set (Gopal Tiwari) [1764976] - [net] bluetooth: Fix not initializing L2CAP tx_credits (Gopal Tiwari) [1764976] - [net] bluetooth: Check address length before reading address field (Gopal Tiwari) [1764976] - [net] bluetooth: Add quirk for reading BD_ADDR from fwnode property (Gopal Tiwari) [1764976] - [net] bluetooth: mgmt: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: a2mp: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: hci_event: Use struct_size() helper (Gopal Tiwari) [1764976] - [net] bluetooth: Fix decrementing reference count twice in releasing socket (Gopal Tiwari) [1764976] - [net] bluetooth: make hw_err static, reduces object code size (Gopal Tiwari) [1764976] - [net] bluetooth: Allow driver specific cmd timeout handling (Gopal Tiwari) [1764976] - [net] bluetooth: Mark expected switch fall-throughs (Gopal Tiwari) [1764976] - [net] bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt (Gopal Tiwari) [1764976] - [net] Bluetooth: Fix locking in bt_accept_enqueue() for BH context (Gopal Tiwari) [1764976] - [net] bluetooth: 6lowpan: Fix debugfs_simple_attr.cocci warnings (Gopal Tiwari) [1764976] - [net] bluetooth: Fix unnecessary error message for HCI request completion (Gopal Tiwari) [1764976] - [net] bluetooth: clean an indentation issue, remove extraneous space (Gopal Tiwari) [1764976] - [net] bluetooth: Change to use DEFINE_SHOW_ATTRIBUTE macro (Gopal Tiwari) [1764976] - [net] bluetooth: Remove redundant check on status (Gopal Tiwari) [1764976] - [net] bluetooth: Errata Service Release 8, Erratum 3253 (Gopal Tiwari) [1764976] - [net] bluetooth: Use separate L2CAP LE credit based connection result values (Gopal Tiwari) [1764976] - [net] rfcomm: get rid of mentioning TIOC[SG]SERIAL (Gopal Tiwari) [1764976] - [net] bluetooth: Fix debugfs NULL pointer dereference (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Detect if remote is not able to use the whole MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive rx credits from MTU and MPS (Gopal Tiwari) [1764976] - [net] bluetooth: l2cap: Derive MPS from connection MTU (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions and track LE resolve list modification (Gopal Tiwari) [1764976] - [net] bluetooth: Remove unnecessary smp_mb__{before, after}_atomic (Gopal Tiwari) [1764976] - [net] bluetooth: smp: fix crash in unpairing (Gopal Tiwari) [1764976] - [net] bluetooth: smp: Fix trying to use non-existent local OOB data (Gopal Tiwari) [1764976] - [net] bluetooth: Use correct tfm to generate OOB data (Gopal Tiwari) [1764976] - [net] hidp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] hidp: constify hidp_connection_add() (Gopal Tiwari) [1764976] - [net] cmtp: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bnep: fix compat_ioctl (Gopal Tiwari) [1764976] - [net] bluetooth: Add definitions for LE set address resolution (Gopal Tiwari) [1764976] - [net] bluetooth: remove redundant variables 'adv_set' and 'cp' (Gopal Tiwari) [1764976] - [net] bluetooth: hidp: Fix handling of strncpy for hid->name information (Gopal Tiwari) [1764976] - [net] bluetooth: Add new quirk for non-persistent setup settings (Gopal Tiwari) [1764976] - [net] bluetooth: Handle ADv set terminated event (Gopal Tiwari) [1764976] - [net] bluetooth: Implement secondary advertising on different PHYs (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set ADV set random address (Gopal Tiwari) [1764976] - [net] bluetooth: Implement disable and removal of adv instance (Gopal Tiwari) [1764976] - [net] bluetooth: Use ext adv for directed adv (Gopal Tiwari) [1764976] - [net] bluetooth: Implement PHY changed event (Gopal Tiwari) [1764976] - [net] bluetooth: Handle extended ADV PDU types (Gopal Tiwari) [1764976] - [net] bluetooth: Use Set ext adv/scan rsp data if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Impmlement extended adv enable (Gopal Tiwari) [1764976] - [net] bluetooth: Define PHY flags in hdev and set 1M as default (Gopal Tiwari) [1764976] - [net] bluetooth: Read no of adv sets during init (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Get PHY Configuration mgmt command (Gopal Tiwari) [1764976] - [net] bluetooth: Use selected PHYs in extended connect (Gopal Tiwari) [1764976] - [net] bluetooth: Set Scan PHYs based on selected PHYs by user (Gopal Tiwari) [1764976] - [net] bluetooth: Implement Set PHY Confguration command (Gopal Tiwari) [1764976] - [net] bluetooth: Add defines for BREDR pkt_type (Gopal Tiwari) [1764976] - [net] bluetooth: Use lock_sock_nested in bt_accept_enqueue (Gopal Tiwari) [1764976] - [net] bluetooth: avoid killing an already killed socket (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended LE Connection if supported (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for le conn status and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Process extended ADV report event (Gopal Tiwari) [1764976] - [net] bluetooth: Use extended scanning if controller supports (Gopal Tiwari) [1764976] - [net] bluetooth: Introduce helpers for LE set scan start and complete (Gopal Tiwari) [1764976] - [net] bluetooth: Store Resolv list size (Gopal Tiwari) [1764976] - [net] bluetooth: Add HCI command for clear Resolv list (Gopal Tiwari) [1764976] - [leds] triggers: let struct (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Skip 1 error print in device_want_to_sleep() (Gopal Tiwari) [1764976] - [bluetooth] btqca: Reset download type to default (Gopal Tiwari) [1764976] - [bluetooth] btqca: release_firmware after qca_inject_cmd_complete_event (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Send VS pre shutdown command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Use correct byte format for opcode of injected command (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add a short delay before downloading the NVM (Gopal Tiwari) [1764976] - [bluetooth] btusb: Fix error return code in btusb_mtk_setup_firmware() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use kfree_skb() instead of kfree() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7663U USB devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add protocol support for MediaTek MT7668U USB devices (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3491 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] Add new 13d3:3501 QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] hci_bcsp: Fix memory leak in rx_skb (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8723DU (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for clock osc property (Gopal Tiwari) [1764976] - [bluetooth] btmtkuart: add an implementation for boot-gpios property (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4359C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Load customized NVM based on the device property (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Add serdev support (Gopal Tiwari) [1764976] - [bluetooth] hci_mrvl: Wait for final ack before switching baudrate (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Add function to wait for characters to be sent (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: wcn3990: Drop baudrate change vendor event (Gopal Tiwari) [1764976] - [bluetooth] btqca: inject command complete event during fw download (Gopal Tiwari) [1764976] - [bluetooth] Cleanup formatting and coding style (Gopal Tiwari) [1764976] - [bluetooth] btrtl: HCI reset on close for Realtek BT chip (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: Refactor download_firmware (Gopal Tiwari) [1764976] - [bluetooth] hci_ll: set operational frequency earlier (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM4356 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Rename STATE_ to QCA_ (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM2076B1 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Added support for WCN3998 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Fix crash with non-serdev devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Give enough time to ROME controller to bootup (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Fix empty regulator supplies for Intel Macs (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM2076B1 UART Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43341B (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for SD8987 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Drop newline with bt_dev logging macros (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Fix hdev->stat.byte_rx accumulation (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add runtime PM support to SDIO based Bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: Add a bit definition for CHLPCR (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fixed incorrect type in assignment (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: fix spelling mistake "sliped" -> "slipped" (Gopal Tiwari) [1764976] - [bluetooth] btmtksdio: fix uninitialized symbol errors in btmtksdio_rx_packet (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Use module_sdio_driver helper (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663S and MT7668S SDIO devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Fix misspelling of 'baudrate' (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper function to get the chip family (Gopal Tiwari) [1764976] - [bluetooth] btusb: request wake pin with NOAUTOEN (Gopal Tiwari) [1764976] - [bluetooth] mediatek: add support for MediaTek MT7663U and MT7668U UART devices (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Reduce delay after sending baudrate request for WCN3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: add QCA6174A compatible properties (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Use msleep() instead of open coding it (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add delay after power-off pulse (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Move boot delay to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Pass boolean 'on/off' to qca_send_power_pulse() (Gopal Tiwari) [1764976] - [bluetooth] btqcomsmd: use HCI_QUIRK_USE_BDADDR_PROPERTY (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Set HCI_QUIRK_USE_BDADDR_PROPERTY for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in hci_uart_set_proto() (Gopal Tiwari) [1764976] - [bluetooth] mediatek: update the common setup between MT7622 and other devices (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass a pointer to mtk_hci_wmt_sync (Gopal Tiwari) [1764976] - [bluetooth] mediatek: fix up an error path to restore bdev->tx_state (Gopal Tiwari) [1764976] - [bluetooth] mediatek: trivial typo fix (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Initialize hci_dev before open() (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Disable IBS state machine and flush Tx buffer (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Deassert RTS while baudrate change command (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: use wait_until_sent() for power pulses (Gopal Tiwari) [1764976] - [bluetooth] remove redundant zero check on count (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add shutdown routine for BTUSB_INTEL_NEW devices (Gopal Tiwari) [1764976] - [bluetooth] btusb: btusb_intel_cmd_timeout: use sleeping functions (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Restore old logic to assume firmware is already loaded (Gopal Tiwari) [1764976] - [bluetooth] btusb: Use the cmd_timeout method to reset the Intel BT chip (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: add support for sd8977 chipset (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: Drop unused GPIO includes (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: lower log level of informational message (Gopal Tiwari) [1764976] - [bluetooth] hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl: improve printk messages (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add helper to set device address (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4329B1 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle specific unknown packets after firmware loading (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Turn off RTL8723BS on suspend, reprobe on resume (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add suspend / resume ops (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: clean an indentation issue, remove extraneous spaces (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Remove setting of HCI_QUIRK_RESET_ON_CLOSE (Gopal Tiwari) [1764976] - [bluetooth] Remove unnecessary smp_mb__after_atomic() barriers (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add BCM20702A1 variant (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Wait for device to come out of reset after power on (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for regulator supplies (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add compatible string for BCM4330 (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add default address for BCM43430A0 (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Add support for LPO clock (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Use "txco" and "extclk" to get clock reference (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Simplify clk_get error handling (Gopal Tiwari) [1764976] - [bluetooth] hci_bcm: Handle deferred probing for the clock supply (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for controller debug logs (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add support for 0cf3:535b QCA_ROME device (Gopal Tiwari) [1764976] - [bluetooth] btsdio: Do not bind to non-removable BCM43430 (Gopal Tiwari) [1764976] - [bluetooth] ath3k: add more information to error message (Gopal Tiwari) [1764976] - [bluetooth] bt3c_cs: Fix obsolete function (Gopal Tiwari) [1764976] - [bluetooth] btrsi: fix bt tx timeout issue (Gopal Tiwari) [1764976] - [bluetooth] btbcm: Add entry for BCM4335C0 UART bluetooth (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for RTL8822C with USB interface (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Fixed error space required before open paranethesis (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add poweroff support during hci down for wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] btusb: Add quirk for BTUSB_INTEL_NEW (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Make array extension_sig static, shrinks object size (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove serdev_device_open/close function calls (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Remove hdev dereference in qca_close() (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: clear HCI_UART_PROTO_READY to avoid closing proto races (Gopal Tiwari) [1764976] - [bluetooth] hci_serdev: Add protocol check in hci_uart_dequeue() (Gopal Tiwari) [1764976] - [bluetooth] hci_ldisc: Free rw_semaphore on close (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Fix memory leak (Gopal Tiwari) [1764976] - [bluetooth] Make BT_HCIUART_RTL configuration option depend on ACPI (Gopal Tiwari) [1764976] - [bluetooth] mediatek: pass correct size to h4_recv_buf() (Gopal Tiwari) [1764976] - [bluetooth] Introduce BT_HCIUART_RTL configuration option (Gopal Tiwari) [1764976] - [bluetooth] mediatek: Add protocol support for MediaTek serial devices (Gopal Tiwari) [1764976] - [bluetooth] btqca: Introduce HCI_EV_VENDOR and use it (Gopal Tiwari) [1764976] - [bluetooth] h5: Fix missing dependency on BT_HCIUART_SERDEV (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add support for Qualcomm Bluetooth chip wcn3990 (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Enable 3.2 Mbps operating speed (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Add wrapper functions for setting UART speed (Gopal Tiwari) [1764976] - [bluetooth] btqca: Add wcn3990 firmware download support (Gopal Tiwari) [1764976] - [bluetooth] btqca: Redefine qca_uart_setup() to generic function (Gopal Tiwari) [1764976] - [bluetooth] btqca: Rename ROME specific functions to generic functions (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for enable and device-wake GPIOs (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for the RTL8723BS (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add vendor setup, open, and close callbacks (Gopal Tiwari) [1764976] - [bluetooth] hci_h5: Add support for serdev enumerated devices (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for retrieving the UART settings (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Use rtl_dev_err and rtl_dev_info (Gopal Tiwari) [1764976] - [bluetooth] btrtl: Add support for a config filename postfix (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add support for the RTL8723BS and RTL8723DS chips (Gopal Tiwari) [1764976] - [bluetooth] btrtl: add MODULE_FIRMWARE declarations (Gopal Tiwari) [1764976] - [bluetooth] btrtl: split the device initialization into smaller parts (Gopal Tiwari) [1764976] - [bluetooth] btusb: Release RF resource on BT shutdown (Gopal Tiwari) [1764976] - [bluetooth] hci_qca: Replace GFP_ATOMIC with GFP_KERNEL (Gopal Tiwari) [1764976] - [bluetooth] hci_intel: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] btusb: Replace GFP_ATOMIC with GFP_KERNEL in inject_cmd_complete() (Gopal Tiwari) [1764976] - [bluetooth] bfusb: Replace GFP_ATOMIC with GFP_KERNEL in bfusb_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] bluecard_cs: Replace GFP_ATOMIC with GFP_KERNEL in bluecard_hci_set_baud_rate() (Gopal Tiwari) [1764976] - [bluetooth] bpa10x: Replace GFP_ATOMIC with GFP_KERNEL in bpa10x_send_frame() (Gopal Tiwari) [1764976] - [bluetooth] btmrvl_sdio: Replace GFP_ATOMIC with GFP_KERNEL in btmrvl_sdio_card_to_host() (Gopal Tiwari) [1764976] - [bluetooth] btusb: use irqsave() in URB's complete callback (Gopal Tiwari) [1764976] - [bluetooth] Add a new Realtek 8723DE ID 0bda:b009 (Gopal Tiwari) [1764976]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Frantisek Hrbata) - [powerpc] powerpc/pseries: Avoid NULL pointer dereference when drmem is unavailable (David Hildenbrand) [1812874] - [x86] kvm/svm: PKU not currently supported (Wei Huang) [1789159] - [x86] Remove the unsupported check for Cooper Lake (David Arcari) [1813921]- [netdrv] net/mlx5e: Show/set Rx network flow classification rules on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Init ethtool steering for representors (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Show/set Rx flow indir table and RSS hash key on ul rep (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5e: Introduce root ft concept for representors netdevs (Alaa Hleihel) [1795156 1794280] - [netdrv] net/mlx5: E-Switch, Use vport metadata matching only when mandatory (Alaa Hleihel) [1795156] - [nvme] nvme: log additional message for controller status (David Milburn) [1752952]- [powerpc] powerpc: fix hardware PMU exception bug on PowerVM compatibility mode systems (Desnes Augusto Nunes do Rosario) [1755221] - [mm] powerpc/book3s64/radix: Remove WARN_ON in destroy_context() (Steve Best) [1812821] - [kernel] rcutorture: Upper case solves the case of the vanishing NULL pointer (Waiman Long) [1810247] - [tools] torture: Suppress propagating trace_printk() warning (Waiman Long) [1810247] - [kernel] rcutorture: Dump trace buffer for callback pipe drain failures (Waiman Long) [1810247] - [tools] torture: Add --trust-make to suppress "make clean" (Waiman Long) [1810247] - [tools] torture: Make --cpus override idleness calculations (Waiman Long) [1810247] - [tools] torture: Run kernel build in source directory (Waiman Long) [1810247] - [tools] torture: Add function graph-tracing cheat sheet (Waiman Long) [1810247] - [tools] torture: Capture qemu output (Waiman Long) [1810247] - [tools] rcutorture: Tweak kvm options (Waiman Long) [1810247] - [kernel] rcutorture: Add trivial RCU implementation (Waiman Long) [1810247] - [kernel] rcutorture: Halt forward-progress checks at end of run (Waiman Long) [1810247] - [kernel] rcutorture: Give the scheduler a chance on PREEMPT && NO_HZ_FULL kernels (Waiman Long) [1810247] - [tools] rcutorture: Exempt TREE01 from forward-progress testing (Waiman Long) [1810247] - [kernel] rcutorture: Exempt tasks RCU from timely draining of grace periods (Waiman Long) [1810247] - [tools] rcutorture: Provide rudimentary Makefile (Waiman Long) [1810247] - [tools] torture: Make kvm-find-errors.sh and kvm-recheck.sh provide exit status (Waiman Long) [1810247] - [kernel] torture: Allow inter-stutter interval to be specified (Waiman Long) [1810247] - [kernel] rcutorture: Fix stutter_wait() return value and freelist checks (Waiman Long) [1810247] - [kernel] rcutorture: Add cond_resched() to forward-progress free-up loop (Waiman Long) [1810247] - [tools] rcutorture: Add cpu0 to the set of CPUs to add jitter (Waiman Long) [1810247] - [tools] rcutorture: Select from only online CPUs (Waiman Long) [1810247] - [kernel] rcu/sync: Simplify the state machine (Waiman Long) [1810247] - [kernel] locking/percpu-rwsem: Add DEFINE_PERCPU_RWSEM(), use it to initialize cgroup_threadgroup_rwsem (Waiman Long) [1810247] - [kernel] rcu/sync: Kill rcu_sync_type/gp_type (Waiman Long) [1810247] - [kernel] rcu: Make __call_srcu static (Waiman Long) [1810247] - [kernel] rcu: Upgrade sync_exp_work_done() to smp_mb() (Waiman Long) [1810247] - [documentation] doc: Remove ".vnet" from paulmck email addresses (Waiman Long) [1810247] - [kernel] rcu: Set a maximum limit for back-to-back callback invocation (Waiman Long) [1810247] - [kernel] rcu: Correctly unlock root node in rcu_check_gp_start_stall() (Waiman Long) [1810247] - [kernel] rcu: Dump specified number of blocked tasks (Waiman Long) [1810247] - [kernel] rcu: Remove unused rdp local from synchronize_rcu_expedited() (Waiman Long) [1810247] - [kernel] rcu: Rename rcu_data's ->deferred_qs to ->exp_deferred_qs (Waiman Long) [1810247] - [kernel] rcu: Add checks for dynticks counters in rcu_is_cpu_rrupt_from_idle() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_sched_exp_online_cleanup() (Waiman Long) [1810247] - [kernel] rcu: Avoid self-IPI in sync_rcu_exp_select_node_cpus() (Waiman Long) [1810247] - [kernel] rcu: Inline invoke_rcu_callbacks() into its sole remaining caller (Waiman Long) [1810247] - [kernel] rcu: Use irq_work to get scheduler's attention in clean context (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_read_unlock_special() to raise_softirq() if in_irq() (Waiman Long) [1810247] - [kernel] rcu: Only do rcu_read_unlock_special() wakeups if expedited (Waiman Long) [1810247] - [kernel] rcu: Check for wakeup-safe conditions in rcu_read_unlock_special() (Waiman Long) [1810247] - [kernel] rcu: Enable elimination of Tree-RCU softirq processing (Waiman Long) [1810247] - [kernel] rcuperf: Fix cleanup path for invalid perf_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix cleanup path for invalid torture_type strings (Waiman Long) [1810247] - [kernel] rcutorture: Fix expected forward progress duration in OOM notifier (Waiman Long) [1810247] - [kernel] rcutorture: Remove ->ext_irq_conflict field (Waiman Long) [1810247] - [kernel] rcutorture: Make rcutorture_extend_mask() comment match the code (Waiman Long) [1810247] - [tools] tools/.../rcutorture: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] torture: Don't try to offline the last CPU (Waiman Long) [1810247] - [kernel] rcu: Fix nohz status in stall warning (Waiman Long) [1810247] - [kernel] rcu: Move forward-progress checkers into tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move irq-disabled stall-warning checking to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Organize functions in tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Move FAST_NO_HZ stall-warning code to tree_stall.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU stall-warning info helper functions (Waiman Long) [1810247] - [kernel] rcu: Move rcu_print_task_exp_stall() to tree_exp.h (Waiman Long) [1810247] - [kernel] rcu: Inline RCU task stall-warning helper functions (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree.c (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of tree_plugin.h (Waiman Long) [1810247] - [kernel] rcu: Move RCU CPU stall-warning code out of update.c (Waiman Long) [1810247] - [kernel] srcu: Remove cleanup_srcu_struct_quiesced() (Waiman Long) [1810247] - [kernel] srcu: Check for in-flight callbacks in _cleanup_srcu_struct() (Waiman Long) [1810247] - [kernel] rcu: Correct READ_ONCE()/WRITE_ONCE() for ->rcu_read_unlock_special (Waiman Long) [1810247] - [kernel] rcu: Fix typo in tree_exp.h comment (Waiman Long) [1810247] - [kernel] rcu: Eliminate redundant NULL-pointer check (Waiman Long) [1810247] - [kernel] rcu: Fix force_qs_rnp() header comment (Waiman Long) [1810247] - [kernel] rcu: Update jiffies_to_sched_qs and adjust_jiffies_till_sched_qs() comments (Waiman Long) [1810247] - [kernel] rcu: Do a single rhp->func read in rcu_head_after_call_rcu() (Waiman Long) [1810247] - [kernel] rcu: Default jiffies_to_sched_qs to jiffies_till_sched_qs (Waiman Long) [1810247] - [kernel] rcu: Fix self-wakeups for grace-period kthread (Waiman Long) [1810247] - [kernel] rcu: Report error for bad rcu_nocbs= parameter values (Waiman Long) [1810247] - [kernel] rcu: Allow rcu_nocbs= to specify all CPUs (Waiman Long) [1810247] - [kernel] rcu: Move common code out of if-else block (Waiman Long) [1810247] - [kernel] rcu: Set rcutree.kthread_prio sysfs access to read-only (Waiman Long) [1810247] - [kernel] rcu: Make exit_rcu() handle non-preempted RCU readers (Waiman Long) [1810247] - [kernel] rcu: rcu_qs -- Use raise_softirq_irqoff to not save irqs twice (Waiman Long) [1810247] - [kernel] rcu: Avoid unnecessary softirq when system is idle (Waiman Long) [1810247] - [kernel] rcu: Unconditionally expedite during suspend/hibernate (Waiman Long) [1810247] - [kernel] rcu/tree: Convert to SPDX license identifier (Waiman Long) [1810247] - [kernel] srcu: Remove srcu_queue_delayed_work_on() (Waiman Long) [1810247] - [kernel] sched/fair: Define sched_idle_cpu() only for SMP configurations (Phil Auld) [1419746] - [kernel] sched/fair: Load balance aggressively for SCHED_IDLE CPUs (Phil Auld) [1419746] - [kernel] sched/fair : Improve update_sd_pick_busiest for spare capacity case (Phil Auld) [1419746] - [kernel] sched/fair: Fix find_idlest_group() to handle CPU affinity (Phil Auld) [1419746] - [kernel] sched/cfs: fix spurious active migration (Phil Auld) [1419746] - [kernel] sched/fair: Add comments for group_type and balancing at SD_NUMA level (Phil Auld) [1419746] - [kernel] sched/fair: Fix rework of find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Rework find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Optimize find_idlest_group() (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in wakeup path (Phil Auld) [1419746] - [kernel] sched/fair: Use utilization to select misfit task (Phil Auld) [1419746] - [kernel] sched/fair: Spread out tasks evenly when not overloaded (Phil Auld) [1419746] - [kernel] sched/fair: Use load instead of runnable load in load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Use rq->nr_running when balancing load (Phil Auld) [1419746] - [kernel] sched/fair: Rework load_balance() (Phil Auld) [1419746] - [kernel] sched/fair: Remove meaningless imbalance calculation (Phil Auld) [1419746] - [kernel] sched/fair: Rename sg_lb_stats::sum_nr_running to sum_h_nr_running (Phil Auld) [1419746] - [kernel] sched/fair: Clean up asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fall back to sched-idle CPU if idle CPU isn't found (Phil Auld) [1419746] - [kernel] sched/fair: Start tracking SCHED_IDLE tasks count in cfs_rq (Phil Auld) [1419746] - [kernel] sched/core: Allow sched_setattr() to use the current policy (Phil Auld) [1419746] - [kernel] sched/fair: Introduce fits_capacity() (Phil Auld) [1419746] - [kernel] sched/core: Provide a pointer to the valid CPU mask (Phil Auld) [1419746] - [x86] x86/percpu: Optimize raw_cpu_xchg() (Phil Auld) [1419746] - [kernel] x86/percpu, sched/fair: Avoid local_clock() (Phil Auld) [1419746] - [x86] x86/percpu, x86/irq: Relax {set,get}_irq_regs() (Phil Auld) [1419746] - [x86] x86/percpu: Relax smp_processor_id() (Phil Auld) [1419746] - [x86] x86/percpu: Differentiate this_cpu_{}() and __this_cpu_{}() (Phil Auld) [1419746] - [kernel] sched/fair: Fix unnecessary increase of balance interval (Phil Auld) [1419746] - [kernel] sched/fair: Trigger asym_packing during idle load balance (Phil Auld) [1419746] - [kernel] sched/fair: Fix rounding bug for asym packing (Phil Auld) [1419746] - [kernel] sched/fair: Fix warning on non-SMP build (Phil Auld) [1419746] - [kernel] sched/core: Create task_has_idle_policy() helper (Phil Auld) [1419746] - [firmware] efi: fix a mistype in comments mentioning efivar_entry_iter_begin() (Vladis Dronov) [1804417] - [firmware] efi: add a sanity check to efivar_store_raw() (Vladis Dronov) [1804417] - [firmware] efi: fix a race and a buffer overflow while reading efivars via sysfs (Vladis Dronov) [1804417] - [scsi] scsi: ibmvfc: Fix NULL return compiler warning (Steve Best) [1810653] - [scsi] scsi: ibmvfc: Avoid loss of all paths during SVC node reboot (Steve Best) [1810653] - [fs] xfs: fix some memory leaks in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: Fix deadlock between AGI and AGF when target_ip exists in xfs_rename() (Bill O'Donnell) [1765693] - [fs] xfs: fix inode fork extent count overflow (Bill O'Donnell) [1765693] - [fs] xfs: change the seconds fields in xfs_bulkstat to signed (Bill O'Donnell) [1765693] - [fs] xfs: assure zeroed memory buffers for certain kmem allocations (Bill O'Donnell) [1765693] - [fs] xfs: removed unused error variable from xchk_refcountbt_rec (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from xfs_get_aghdr_buf() (Bill O'Donnell) [1765693] - [fs] xfs: Fix tail rounding in xfs_alloc_file_space() (Bill O'Donnell) [1765693] - [fs] xfs: remove unlikely() from WARN_ON() condition (Bill O'Donnell) [1765693] - [fs] xfs: avoid unused to_mp() function warning (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of superblock (Bill O'Donnell) [1765693] - [fs] xfs: revert 1baa2800e62d ("xfs: remove the unused XFS_ALLOC_USERDATA flag") (Bill O'Donnell) [1765693] - [fs] xfs: removed unneeded variable (Bill O'Donnell) [1765693] - [fs] xfs: push the grant head when the log head moves forward (Bill O'Donnell) [1765693] - [fs] xfs: push iclog state cleaning into xlog_state_clean_log (Bill O'Donnell) [1765693] - [fs] xfs: factor iclog state processing out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor callbacks out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: factor debug code out of xlog_state_do_callback() (Bill O'Donnell) [1765693] - [fs] xfs: prevent CIL push holdoff in log recovery (Bill O'Donnell) [1765693] - [fs] xfs: fix missed wakeup on l_flush_wait (Bill O'Donnell) [1765693] - [fs] xfs: push the AIL in xlog_grant_head_wake (Bill O'Donnell) [1765693] - [fs] xfs: Use WARN_ON_ONCE for bailout mount-operation (Bill O'Donnell) [1765693] - [fs] xfs: define a flags field for the AG geometry ioctl structure (Bill O'Donnell) [1765693] - [fs] xfs: add a xfs_valid_startblock helper (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused XFS_ALLOC_USERDATA flag (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xfs_fsb_to_db (Bill O'Donnell) [1765693] - [fs] xfs: fix the dax supported check in xfs_ioctl_setattr_dax_invalidate (Bill O'Donnell) [1765693] - [fs] xfs: Fix stale data exposure when readahead races with hole punch (Bill O'Donnell) [1765693] - [mm] fs: Export generic_fadvise() (Bill O'Donnell) [1765693] - [fs] xfs: reverse search directory freespace indexes (Bill O'Donnell) [1765693] - [fs] xfs: speed up directory bestfree block scanning (Bill O'Donnell) [1765693] - [fs] xfs: factor free block index lookup from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: factor data block addition from xfs_dir2_node_addname_int() (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_dir2_addname() (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_CONTINUE values (Bill O'Donnell) [1765693] - [fs] xfs: remove all *_ITER_ABORT values (Bill O'Donnell) [1765693] - [fs] xfs: log proper length of btree block in scrub/repair (Bill O'Donnell) [1765693] - [fs] xfs: reinitialize rm_flags when unpacking an offset into an rmap irec (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred bmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred refcount functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary int returns from deferred rmap functions (Bill O'Donnell) [1765693] - [fs] xfs: remove unnecessary parameter from xfs_iext_inc_seq (Bill O'Donnell) [1765693] - [fs] xfs: fix sign handling problem in xfs_bmbt_diff_two_keys (Bill O'Donnell) [1765693] - [fs] xfs: don't return _QUERY_ABORT from xfs_rmap_has_other_keys (Bill O'Donnell) [1765693] - [fs] xfs: fix maxicount division by zero error (Bill O'Donnell) [1765693] - [fs] xfs: bmap scrub should only scrub records once (Bill O'Donnell) [1765693] - [fs] xfs: remove excess function parameter description in 'xfs_btree_sblock_v5hdr_verify' (Bill O'Donnell) [1765693] - [fs] fs: xfs: Remove KM_NOSLEEP and KM_SLEEP (Bill O'Donnell) [1765693] - [fs] fs/xfs: Fix return code of xfs_break_leased_layouts() (Bill O'Donnell) [1765693] - [fs] xfs: compat_ioctl: use compat_ptr() (Bill O'Donnell) [1765693] - [fs] xfs: fall back to native ioctls for unhandled compat ones (Bill O'Donnell) [1765693] - [fs] xfs: remove more ondisk directory corruption asserts (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Don't use KM_MAYFAIL at xfs_log_reserve() (Bill O'Donnell) [1765693] - [fs] xfs: Fix possible null-pointer dereferences in xchk_da_btree_block_check_sibling() (Bill O'Donnell) [1765693] - [fs] xfs: fix stack contents leakage in the v1 inumber ioctls (Bill O'Donnell) [1765693] - [fs] xfs: sync up xfs_trans_inode with userspace (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_trans_inode.c to libxfs/ (Bill O'Donnell) [1765693] - [fs] xfs: chain bios the right way around in xfs_rw_bdev (Bill O'Donnell) [1765693] - [fs] xfs: bump INUMBERS cursor correctly in xfs_inumbers_walk (Bill O'Donnell) [1765693] - [fs] xfs: don't update lastino for FSBULKSTAT_SINGLE (Bill O'Donnell) [1765693] - [fs] xfs: online scrub needn't bother zeroing its temporary buffer (Bill O'Donnell) [1765693] - [fs] xfs: only allocate memory for scrubbing attributes when we need it (Bill O'Donnell) [1765693] - [fs] xfs: refactor attr scrub memory allocation function (Bill O'Donnell) [1765693] - [fs] xfs: refactor extended attribute buffer pointer functions (Bill O'Donnell) [1765693] - [fs] xfs: attribute scrub should use seen_enough to pass error values (Bill O'Donnell) [1765693] - [fs] xfs: allow single bulkstat of special inodes (Bill O'Donnell) [1765693] - [fs] xfs: specify AG in bulk req (Bill O'Donnell) [1765693] - [fs] xfs: wire up the v5 inumbers ioctl (Bill O'Donnell) [1765693] - [fs] xfs: wire up new v5 bulkstat ioctls (Bill O'Donnell) [1765693] - [fs] xfs: introduce v5 inode group structure (Bill O'Donnell) [1765693] - [fs] xfs: introduce new v5 bulkstat structure (Bill O'Donnell) [1765693] - [fs] xfs: rename bulkstat functions (Bill O'Donnell) [1765693] - [fs] xfs: remove various bulk request typedef usage (Bill O'Donnell) [1765693] - [fs] fs: xfs: xfs_log: Change return type from int to void (Bill O'Donnell) [1765693] - [fs] xfs: poll waiting for quotacheck (Bill O'Donnell) [1765693] - [fs] xfs: multithreaded iwalk implementation (Bill O'Donnell) [1765693] - [fs] xfs: refactor INUMBERS to use iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: refactor iwalk code to handle walking inobt records (Bill O'Donnell) [1765693] - [fs] xfs: refactor xfs_iwalk_grab_ichunk (Bill O'Donnell) [1765693] - [fs] xfs: clean up long conditionals in xfs_iwalk_ichunk_ra (Bill O'Donnell) [1765693] - [fs] xfs: change xfs_iwalk_grab_ichunk to use startino, not lastino (Bill O'Donnell) [1765693] - [fs] xfs: move bulkstat ichunk helpers to iwalk code (Bill O'Donnell) [1765693] - [fs] xfs: calculate inode walk prefetch more carefully (Bill O'Donnell) [1765693] - [fs] xfs: convert bulkstat to new iwalk infrastructure (Bill O'Donnell) [1765693] - [fs] xfs: bulkstat should copy lastip whenever userspace supplies one (Bill O'Donnell) [1765693] - [fs] xfs: convert quotacheck to use the new iwalk functions (Bill O'Donnell) [1765693] - [fs] xfs: create simplified inode walk function (Bill O'Donnell) [1765693] - [fs] xfs: create iterator error codes (Bill O'Donnell) [1765693] - [fs] xfs: remove XFS_TRANS_NOFS (Bill O'Donnell) [1765693] - [fs] xfs: simplify xfs_ioend_can_merge (Bill O'Donnell) [1765693] - [fs] xfs: allow merging ioends over append boundaries (Bill O'Donnell) [1765693] - [fs] xfs: fix a comment typo in xfs_submit_ioend (Bill O'Donnell) [1765693] - [fs] xfs: remove the unused xfs_count_page_state declaration (Bill O'Donnell) [1765693] - [fs] xfs: fix iclog allocation size (Bill O'Donnell) [1765693] - [fs] xfs: remove unused header files (Bill O'Donnell) [1765693] - [fs] xfs: account for log space when formatting new AGs (Bill O'Donnell) [1765693] - [fs] xfs: refactor free space btree record initialization (Bill O'Donnell) [1765693] - [fs] xfs: always update params on small allocation (Bill O'Donnell) [1765693] - [fs] xfs: skip small alloc cntbt logic on NULL cursor (Bill O'Donnell) [1765693] - [fs] xfs: move small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: clean up small allocation helper (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_bmap.c into xfs_bmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_rmap.c into xfs_rmap_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_refcount.c into xfs_refcount_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_trans_extfree.c into xfs_extfree_item.c (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_bud_init into xfs_trans_get_bud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_rud_init into xfs_trans_get_rud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_cud_init into xfs_trans_get_cud (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_efd_init into xfs_trans_get_efd (Bill O'Donnell) [1765693] - [fs] xfs: remove a pointless comment duplicated above all xfs_item_ops instances (Bill O'Donnell) [1765693] - [fs] xfs: use a list_head for iclog callbacks (Bill O'Donnell) [1765693] - [fs] xfs: remove the xfs_log_item_t typedef (Bill O'Donnell) [1765693] - [fs] xfs: don't cast inode_log_items to get the log_item (Bill O'Donnell) [1765693] - [fs] xfs: add a flag to release log items on commit (Bill O'Donnell) [1765693] - [fs] xfs: split iop_unlock (Bill O'Donnell) [1765693] - [fs] xfs: don't use xfs_trans_free_items in the commit path (Bill O'Donnell) [1765693] - [fs] xfs: remove the dummy iop_push implementation for inode creation items (Bill O'Donnell) [1765693] - [fs] xfs: don't require log items to implement optional methods (Bill O'Donnell) [1765693] - [fs] xfs: stop using XFS_LI_ABORTED as a parameter flag (Bill O'Donnell) [1765693] - [fs] xfs: fix a trivial comment typo in xfs_trans_committed_bulk (Bill O'Donnell) [1765693] - [fs] xfs: add struct xfs_mount pointer to struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove the b_io_length field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: properly type the b_log_item field in struct xfs_buf (Bill O'Donnell) [1765693] - [fs] xfs: remove unused buffer cache APIs (Bill O'Donnell) [1765693] - [fs] xfs: stop using bp naming for log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to read and write the log recovery buffers (Bill O'Donnell) [1765693] - [fs] xfs: return an offset instead of a pointer from xlog_align (Bill O'Donnell) [1765693] - [fs] xfs: move the log ioend workqueue to struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: use bios directly to write log buffers (Bill O'Donnell) [1765693] - [fs] xfs: make use of the l_targ field in struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: remove the syncing argument from xlog_verify_iclog (Bill O'Donnell) [1765693] - [fs] xfs: update both stat counters together in xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out iclog size calculation from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out splitting of an iclog from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: factor out log buffer writing from xlog_sync (Bill O'Donnell) [1765693] - [fs] xfs: don't use REQ_PREFLUSH for split log writes (Bill O'Donnell) [1765693] - [fs] xfs: remove XLOG_STATE_IOABORT (Bill O'Donnell) [1765693] - [fs] xfs: reformat xlog_get_lowest_lsn (Bill O'Donnell) [1765693] - [fs] xfs: cleanup xlog_get_iclog_buffer_size (Bill O'Donnell) [1765693] - [fs] xfs: remove the l_iclog_size_log field from struct xlog (Bill O'Donnell) [1765693] - [fs] xfs: renumber XBF_WRITE_FAIL (Bill O'Donnell) [1765693] - [fs] xfs: remove the never used _XBF_COMPOUND flag (Bill O'Donnell) [1765693] - [fs] xfs: remove the no-op spinlock_destroy stub (Bill O'Donnell) [1765693] - [fs] xfs: move xfs_ino_geometry to xfs_shared.h (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flag arguments (Bill O'Donnell) [1765693] - [fs] xfs: remove the debug-only q_transp field from struct xfs_dquot (Bill O'Donnell) [1765693] - [fs] xfs: merge xfs_buf_zero and xfs_buf_iomove (Bill O'Donnell) [1765693] - [fs] xfs: remove unused flags arg from getsb interfaces (Bill O'Donnell) [1765693] - [fs] xfs: include WARN, REPAIR build options in XFS_BUILD_OPTIONS (Bill O'Donnell) [1765693] - [fs] xfs: finish converting to inodes_per_cluster (Bill O'Donnell) [1765693] - [fs] xfs: fix inode_cluster_size rounding mayhem (Bill O'Donnell) [1765693] - [fs] xfs: refactor inode geometry setup routines (Bill O'Donnell) [1765693] - [fs] xfs: separate inode geometry (Bill O'Donnell) [1765693] - [fs] xfs: use file_modified() helper (Bill O'Donnell) [1765693] - [fs] vfs: introduce file_modified() helper (Bill O'Donnell) [1765693]- [md] dm: bump version of core and various targets (Mike Snitzer) [1810746] - [md] dm: fix congested_fn for request-based device (Mike Snitzer) [1810746] - [md] dm integrity: use dm_bio_record and dm_bio_restore (Mike Snitzer) [1810746] - [md] dm bio record: save_restore bi_end_io and bi_integrity (Mike Snitzer) [1810746] - [md] dm writecache: verify watermark during resume (Mike Snitzer) [1810746] - [md] dm: report suspended device during destroy (Mike Snitzer) [1810746] - [md] dm thin metadata: fix lockdep complaint (Mike Snitzer) [1810746] - [md] dm cache: fix a crash due to incorrect work item cancelling (Mike Snitzer) [1810746] - [md] dm integrity: fix invalid table returned due to argument count mismatch (Mike Snitzer) [1810746] - [md] dm integrity: fix a deadlock due to offloading to an incorrect workqueue (Mike Snitzer) [1810746] - [md] dm integrity: fix recalculation when moving from journal mode to bitmap mode (Mike Snitzer) [1810746] - [md] dm writecache: improve performance of large linear writes on SSDs (Mike Snitzer) [1810746] - [md] dm mpath: Add timeout mechanism for queue_if_no_path (Mike Snitzer) [1810746] - [md] dm thin: change data device's flush_bio to be member of struct pool (Mike Snitzer) [1810746] - [md] dm thin: don't allow changing data device during thin-pool reload (Mike Snitzer) [1810746] - [md] dm thin: fix use-after-free in metadata_pre_commit_callback (Mike Snitzer) [1810746] - [md] dm thin metadata: use pool locking at end of dm_pool_metadata_close (Mike Snitzer) [1810746] - [md] dm writecache: fix incorrect flush sequence when doing SSD mode commit (Mike Snitzer) [1810746] - [md] dm crypt: fix benbi IV constructor crash if used in authenticated mode (Mike Snitzer) [1810746] - [md] dm crypt: Implement Elephant diffuser for Bitlocker compatibility (Mike Snitzer) [1810746] - [md] dm space map common: fix to ensure new block isn't already in use (Mike Snitzer) [1810746] - [md] dm verity: don't prefetch hash blocks for already-verified data (Mike Snitzer) [1810746] - [md] dm crypt: fix GFP flags passed to skcipher_request_alloc() (Mike Snitzer) [1810746] - [md] dm thin metadata: Fix trivial math error in on-disk format documentation (Mike Snitzer) [1810746] - [md] dm thin metadata: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm snapshot: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm bio prison v2: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm mpath: use true_false for bool variable (Mike Snitzer) [1810746] - [md] dm zoned: support zone sizes smaller than 128MiB (Mike Snitzer) [1810746] - [md] dm raid: table line rebuild status fixes (Mike Snitzer) [1810746] - [documentation] docs: dm-integrity: remove reference to ARC4 (Mike Snitzer) [1810746] - [md] dm thin: Flush data device before committing metadata (Mike Snitzer) [1810746] - [md] dm thin metadata: Add support for a pre-commit callback (Mike Snitzer) [1810746] - [md] dm btree: increase rebalance threshold in __rebalance2() (Mike Snitzer) [1810746] - [md] dm mpath: remove harmful bio-based optimization (Mike Snitzer) [1810746] - [md] dm integrity: fix excessive alignment of metadata runs (Mike Snitzer) [1810746] - [md] dm cache: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm bio prison: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm thin: replace spin_lock_irqsave with spin_lock_irq (Mike Snitzer) [1810746] - [md] dm raid: streamline rs_get_progress() and its raid_status() caller side (Mike Snitzer) [1810746] - [md] dm raid: simplify rs_setup_recovery call chain (Mike Snitzer) [1810746] - [md] dm raid: to ensure resynchronization, perform raid set grow in preresume (Mike Snitzer) [1810746] - [md] dm raid: change rs_set_dev_and_array_sectors API and callers (Mike Snitzer) [1810746] - [md] dm: introduce DM_GET_TARGET_VERSION (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global cache replacement (Mike Snitzer) [1810746] - [md] dm bufio: remove old-style buffer cleanup (Mike Snitzer) [1810746] - [md] dm bufio: introduce a global queue (Mike Snitzer) [1810746] - [md] dm bufio: refactor adjust_total_allocated (Mike Snitzer) [1810746] - [md] dm bufio: call adjust_total_allocated from __link_buffer and __unlink_buffer (Mike Snitzer) [1810746] - [md] dm crypt: omit parsing of the encapsulated cipher (Mike Snitzer) [1810746] - [md] dm crypt: switch to ESSIV crypto API template (Mike Snitzer) [1810746] - [crypto] crypto: essiv - create wrapper template for ESSIV generation (Mike Snitzer) [1810746] - [security] crypto: drop mask=CRYPTO_ALG_ASYNC from shash tfm allocations (Mike Snitzer) [1810746] - [crypto] crypto: drop mask=CRYPTO_ALG_ASYNC from cipher tfm allocations (Mike Snitzer) [1810746] - [md] dm verity: add root hash pkcs#7 signature verification (Mike Snitzer) [1810746] - [md] dm crypt: reuse eboiv skcipher for IV generation (Mike Snitzer) [1810746] - [md] dm integrity: fix a crash due to BUG_ON in __journal_read_write() (Mike Snitzer) [1810746] - [md] dm kcopyd: Increase default sub-job size to 512KB (Mike Snitzer) [1810746] - [documentation] docs: device-mapper: move it to the admin-guide (Mike Snitzer) [1810746] - [documentation] docs: convert docs to ReST and rename to *.rst (Mike Snitzer) [1810746] - [md] dm crypt: implement eboiv - encrypted byte-offset initialization vector (Mike Snitzer) [1810746] - [md] dm integrity: use kzalloc() instead of kmalloc() + memset() (Mike Snitzer) [1810746] - [md] dm integrity: always set version on superblock update (Mike Snitzer) [1810746] - [md] dm integrity: whitespace, coding style and dead code cleanup (Mike Snitzer) [1810746] - [md] dm integrity: implement synchronous mode for reboot handling (Mike Snitzer) [1810746] - [md] dm integrity: handle machine reboot in bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: add a bitmap mode (Mike Snitzer) [1810746] - [md] dm integrity: introduce a function add_new_range_and_wait() (Mike Snitzer) [1810746] - [md] dm integrity: allow large ranges to be described (Mike Snitzer) [1810746] - [md] dm ingerity: pass size to dm_integrity_alloc_page_list() (Mike Snitzer) [1810746] - [md] dm integrity: introduce rw_journal_sectors() (Mike Snitzer) [1810746] - [md] dm crypt and integrity: shash - remove shash_desc::flags (Mike Snitzer) [1810746] - [md] dm: fix potential for q->make_request_fn NULL pointer (Mike Snitzer) [1794340] - [netdrv] net/mlx5e: Don't clear the whole vf config when switching modes (mohamad meib) [1811428] - [scsi] scsi: be2iscsi: be_main: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: be_iscsi: Mark expected switch fall-through (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: switch to generic DMA API (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: fix spelling mistake "Retreiving" -> "Retrieving" (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: remove unused variable dmsg (Maurizio Lombardi) [1796740] - [scsi] scsi: be2iscsi: Update copyright (Maurizio Lombardi) [1796740] - [security] selinux: fix sidtab string cache locking (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: do not allocate ancillary buffer on first load (Ondrej Mosnacek) [1807001] - [security] selinux: remove redundant selinux_nlmsg_perm (Ondrej Mosnacek) [1807001] - [security] selinux: fix wrong buffer types in policydb.c (Ondrej Mosnacek) [1807001] - [security] selinux: treat atomic flags more carefully (Ondrej Mosnacek) [1807001] - [security] selinux: make default_noexec read-only after init (Ondrej Mosnacek) [1807001] - [security] selinux: move ibpkeys code under CONFIG_SECURITY_INFINIBAND (Ondrej Mosnacek) [1807001] - [security] Documentation, selinux: fix references to old selinuxfs mount point (Ondrej Mosnacek) [1807001] - [security] selinuxfs: use scnprintf to get real length for inode (Ondrej Mosnacek) [1807001] - [security] selinux: remove set but not used variable 'sidtab' (Ondrej Mosnacek) [1807001] - [security] selinux: ensure the policy has been loaded before reading the sidtab stats (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_update() (Ondrej Mosnacek) [1807001] - [security] selinux: randomize layout of key structures (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_enabled/disabled/enforcing_boot (Ondrej Mosnacek) [1807001] - [security] selinux: remove unnecessary selinux cred request (Ondrej Mosnacek) [1807001] - [security] selinux: ensure we cleanup the internal AVC counters on error in avc_insert() (Ondrej Mosnacek) [1807001] - [security] security: only build lsm_audit if CONFIG_SECURITY=y (Ondrej Mosnacek) [1807001] - [security] selinux: clean up selinux_inode_permission MAY_NOT_BLOCK tests (Ondrej Mosnacek) [1807001] - [security] selinux: fall back to ref-walk if audit is required (Ondrej Mosnacek) [1807001] - [security] selinux: revert "stop passing MAY_NOT_BLOCK to the AVC upon follow_link" (Ondrej Mosnacek) [1807001] - [security] selinux: cache the SID -> context string translation (Ondrej Mosnacek) [1807001 1806991] - [security] selinux: sidtab reverse lookup hash table (Ondrej Mosnacek) [1807001] - [security] selinux: default_range glblub implementation (Ondrej Mosnacek) [1807001] - [security] selinux: allow labeling before policy is loaded (Ondrej Mosnacek) [1807001 1777525] - [security] selinux: remove load size limit (Ondrej Mosnacek) [1807001] - [security] selinux: fix residual uses of current_security() for the SELinux blob (Ondrej Mosnacek) [1807001] - [kernel] rcu: Make kfree_rcu() ignore NULL pointers (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of ipc security blobs (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of inode security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of file security blob (Ondrej Mosnacek) [1807001] - [security] SELinux: Abstract use of cred security blob (Ondrej Mosnacek) [1807001] - [security] selinux: kill selinux_sb_get_mnt_opts() (Ondrej Mosnacek) [1807001] - [security] selinux; don't open-code a loop in sb_finish_set_opts() (Ondrej Mosnacek) [1807001] - [security] selinux: expand superblock_doinit() calls (Ondrej Mosnacek) [1807001] - [netdrv] hv_netvsc: Fix unwanted rx_table reset (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix tx_table init in rndis_set_subchannel() (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix send_table offset in case of a host bug (Mohammed Gamal) [1805950] - [netdrv] hv_netvsc: Fix offset usage in netvsc_send_table() (Mohammed Gamal) [1805950]- [block] blk-mq: Keep set->nr_hw_queues and set->map.nr_queues in sync (Ming Lei) [1810523] - [block] block: clear REQ_HIPRI if polling is not supported (Ming Lei) [1809506]- [perf] arm_spe: Enable ACPI/Platform automatic module loading (Jeremy Linton) [1501652] - [perf] perf: arm_spe: Don't error on high-order pages for aux buf (Jeremy Linton) [1501652] - [perf] arm_spe: handle devm_kasprintf() failure (Jeremy Linton) [1501652] - [perf] arm_spe: Enable automatic DT loading (Jeremy Linton) [1501652] - [block] blk-iolatency: fix STS_AGAIN handling (Ming Lei) [1764737] - [block] blk-iolatency: only account submitted bios (Ming Lei) [1764737] - [block] blk-iolatency: clear use_delay when io.latency is set to zero (Ming Lei) [1764737] - [block] blk-iolatency: #include "blk.h" (Ming Lei) [1764737] - [block] Blk-iolatency: warn on negative inflight IO counter (Ming Lei) [1764737] - [block] blk-iolatency: fix IO hang due to negative inflight counter (Ming Lei) [1764737] - [block] block: fix blk-iolatency accounting underflow (Ming Lei) [1764737] - [fs] xfs: stabilize insert range start boundary to avoid COW writeback race (Brian Foster) [1728979] - [x86] uprobes/x86: Fix detection of 32-bit user mode (Oleg Nesterov) [1804961] - [ipc] Revert "ipc, sem: remove uneeded sem_undo_list lock usage in exit_sem()" ("Herton R. Krzesinski") [1807627] - [powerpc] powerpc/tm: Fix clearing MSRin current when reclaiming on signal delivery (Gustavo Duarte) [1751116] - [powerpc] powerpc/tm: Set MSRjust prior to recheckpoint (Gustavo Duarte) [1751116] - [arm64] arm64: smp: Increase secondary CPU boot timeout value (Gavin Shan) [1807684] - [fs] ext4: work around deleting a file with i_nlink == 0 safely (Carlos Maiolino) [1801049] - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Waiman Long) [1810638] - [char] ipmi: Revert "fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier" (Waiman Long) [1810638]- [kernel] blktrace: Protect q->blk_trace with RCU (Ming Lei) [1798329] - [drm] drm/i915: Force DPCD backlight mode for some Dell CML 2020 panels (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED panel (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/dp: Introduce EDID-based quirks (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Auto detect DPCD backlight support by default (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight() (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Assume 100 brightness when not in DPCD control mode (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Fix eDP DPCD aux max backlight calculations (Lyude Paul) [1782671 1773796 1748892] - [drm] drm/i915: Check backlight type while doing eDP backlight initializaiton (Lyude Paul) [1782671 1773796 1748892] - [tools] selftests: nft_concat_range: Add test for reported add/flush/add issue (Stefano Brivio) [1807892] - [net] nft_set_pipapo: Actually fetch key data in nft_pipapo_remove() (Stefano Brivio) [1807892] - [net] sched: don't take rtnl lock during flow_action setup (Marcelo Leitner) [1804385] - [include] net: sched: refactor ct action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [include] net: sched: refactor police action helpers to require tcf_lock (Marcelo Leitner) [1804385] - [net] sched: lock action when translating it to flow_action infra (Marcelo Leitner) [1804385] - [powerpc] powerpc/smp: Fix NMI IPI xmon timeout (Diego Domingos) [1747320] - [powerpc] powerpc/smp: Fix NMI IPI timeout (Diego Domingos) [1747320] - [powerpc] powerpc: NMI IPI make NMI IPIs fully sychronous (Diego Domingos) [1747320] - [arm64] arm64: select CPUMASK_OFFSTACK if NUMA (Andrea Arcangeli) [1712856] - [arm64] arm64: tlb: skip tlbi broadcast (Andrea Arcangeli) [1712856]- [fs] fs/proc/proc_sysctl.c: Fix a NULL pointer dereference (Vladis Dronov) [1795521] {CVE-2019-20054} - [fs] fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links (Vladis Dronov) [1795521] {CVE-2019-20054} - [ptp] ptp: correctly disable flags on old ioctls (Petr Oros) [1795188] - [uapi] PTP: add support for one-shot output (Petr Oros) [1795188] - [ptp] PTP: introduce new versions of IOCTLs (Petr Oros) [1795188] - [virtio] virtio_ring: fix stalls for packed rings (Eugenio Perez) [1601355] - [virtio] virtio_ring: Fix potential mem leak in virtqueue_add_indirect_packed (Eugenio Perez) [1601355] - [uapi] virtio: drop internal struct from UAPI (Eugenio Perez) [1601355] - [virtio] virtio_ring: advertize packed ring layout (Eugenio Perez) [1601355] - [virtio] virtio_ring: leverage event idx in packed ring (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce packed ring support (Eugenio Perez) [1601355] - [virtio] virtio_ring: cache whether we will use DMA API (Eugenio Perez) [1601355] - [virtio] virtio_ring: extract split ring handling from ring creation (Eugenio Perez) [1601355] - [virtio] virtio_ring: allocate desc state for split ring separately (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce helper for indirect feature (Eugenio Perez) [1601355] - [virtio] virtio_ring: introduce debug helpers (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring fields in a sub struct (Eugenio Perez) [1601355] - [virtio] virtio_ring: put split ring functions together (Eugenio Perez) [1601355] - [virtio] virtio_ring: add _split suffix for split ring functions (Eugenio Perez) [1601355] - [uapi] virtio: add packed ring types and macros (Eugenio Perez) [1601355] - [x86] x86/mtrr: Skip cache flushes on CPUs with cache self-snooping (Prarit Bhargava) [1724541] - [x86] x86/cpu/intel: Clear cache self-snoop capability in CPUs with known errata (Prarit Bhargava) [1724541] - [documentation] Documentation PCI: Fix pciebus-howto.rst filename typo (Myron Stowe) [1793091] - [tools] tools: PCI: Fix installation when `make tools/pci_install` (Myron Stowe) [1793091] - [tools] tools: PCI: Fix broken pcitest compilation (Myron Stowe) [1793091] - [tools] tools pci: Do not delete pcitest.sh in 'make clean' (Myron Stowe) [1793091] - [pci] PCI: endpoint: Clear BAR before freeing its space (Myron Stowe) [1793091] - [pci] PCI: endpoint: Skip odd BAR when skipping 64bit BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Allocate enough space for fixed size BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Set endpoint controller pointer to NULL (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add support to specify alignment for buffers allocated to BARs (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Use pci_epc_get_features() to get EPC features (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Do not allocate next BARs memory if current BAR is 64Bit (Myron Stowe) [1793091] - [pci] PCI: pci-epf-test: Remove setting epf_bar flags in function driver (Myron Stowe) [1793091] - [pci] PCI: endpoint: Fix pci_epf_alloc_space() to set correct MEM TYPE flags (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add helper to get first unreserved BAR (Myron Stowe) [1793091] - [pci] PCI: endpoint: Add new pci_epc_ops to get EPC features (Myron Stowe) [1793091] - [pci] PCI: endpoint: functions: Use memcpy_fromio()/memcpy_toio() (Myron Stowe) [1793091] - [pci] PCI: Skip resource distribution when no hotplug bridges (Myron Stowe) [1793091] - [pci] PCI: Simplify pci_bus_distribute_available_resources() (Myron Stowe) [1793091] - [pci] PCI: Reset both NVIDIA GPU and HDA in ThinkPad P50 workaround (Myron Stowe) [1793091] - [pci] PCI: Enable NVIDIA HDA controllers (Myron Stowe) [1793091] - [pci] PCI: Use seq_puts() instead of seq_printf() in show_device() (Myron Stowe) [1793091] - [pci] PCI: Add NVIDIA GPU multi-function power dependencies (Myron Stowe) [1793091] - [pci] PCI: Generalize multi-function power dependency device links (Myron Stowe) [1793091] - [pci] PCI: sysfs: Ignore lockdep for remove attribute (Myron Stowe) [1793091] - [pci] PCI: Decode PCIe 32 GT/s link speed (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-test-function.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint-cfs.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert endpoint/pci-endpoint.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pcieaer-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-error-recovery.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert acpi-info.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert MSI-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci-iov-howto.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert PCIEBUS-HOWTO.txt to reST (Myron Stowe) [1793091] - [documentation] docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Myron Stowe) [1793091] - [documentation] Documentation: PCI: convert pci.txt to reST (Myron Stowe) [1793091] - [documentation] Documentation: add Linux PCI to Sphinx TOC tree (Myron Stowe) [1793091] - [pci] PCI: Reset Lenovo ThinkPad P50 nvgpu at boot if necessary (Myron Stowe) [1793091] - [pci] PCI: Add a stub for pci_ats_disabled() (Myron Stowe) [1793091] - [pci] PCI: Provide pci_match_id() with CONFIG_PCI=n (Myron Stowe) [1793091] - [misc] ocxl: Add PCI hotplug dependency to Kconfig (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Wrap warnings in macro (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Relax check when disabling slot (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Register opencapi slots (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Improve error msg on power state change failure (Steve Best) [1788902] - [pci] pci/hotplug/pnv-php: Remove erroneous warning (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Find opencapi slot for a device node (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Release opencapi device (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: set up PE on opencapi device when enabling (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Protect PE list (Steve Best) [1788902] - [powerpc] powerpc/powernv/ioda: Fix ref count for devices with their own PE (Steve Best) [1788902] - [of] of: overlay: add_changeset_property() memory leak (Steve Best) [1798483] - [of] of: unittest: initialize args before calling of_*parse_*() (Steve Best) [1798483] - [of] of: unittest: find overlaysentry by name instead of index (Steve Best) [1798483] - [of] of: unittest: allow base devicetree to have symbol metadata (Steve Best) [1798483] - [of] of: overlay: set node fields from properties when add new overlay node (Steve Best) [1798483] - [of] of: unittest: remove unused of_unittest_apply_overlay() argument (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments touching same property (Steve Best) [1798483] - [of] of: overlay: check prevents multiple fragments add or delete same node (Steve Best) [1798483] - [of] of: overlay: test case of two fragments adding same node (Steve Best) [1798483] - [of] of: overlay: make all pr_debug() and pr_err() messages unique (Steve Best) [1798483] - [of] of: overlay: validate overlay properties (Steve Best) [1798483] - [of] of: overlay: reorder fields in struct fragment (Steve Best) [1798483] - [of] of: overlay: do not duplicate properties from overlay for new nodes (Steve Best) [1798483] - [of] of: overlay: use prop add changeset entry for property in new nodes (Steve Best) [1798483] - [of] of: Convert to using pOFn instead of device_node.name (Steve Best) [1798483] - [powerpc] powerpc/pseries: add of_node_put() in dlpar_detach_node() (Steve Best) [1798483] - [of] of: overlay: add missing of_node_get() in __of_attach_node_sysfs (Steve Best) [1798483] - [of] of: overlay: add missing of_node_put() after add new node to changeset (Steve Best) [1798483] - [of] of: overlay: add tests to validate kfrees from overlay removal (Steve Best) [1798483]- [kernel] open the RHEL 8.3 development (Frantisek Hrbata) - [netdrv] Revert "r8169: don't use MSI before RTL8168d" (Josef Oskera) [1792839] - [drm] drm/nouveau/kms/gv100-: Re-set LUT after clearing for modesets (Ben Skeggs) [1789026] - [drm] drm/nouveau/disp/gv100-: not all channel types support reporting error codes (Ben Skeggs) [1789481] - [drm] drm/nouveau/disp/nv50-: prevent oops when no channel method map provided (Ben Skeggs) [1789481] - [fs] cifs: don't leak -EAGAIN for stat() during reconnect (Dave Wysochanski) [1769599] - [block] blk-mq: insert passthrough request into hctx->dispatch directly (Ming Lei) [1788728] - [scsi] scsi: megaraid_sas: fixup MSIx interrupt setup during resume (Tomas Henzl) [1805353]- [fs] NFS: Add deferred cache invalidation for close-to-open consistency violations (Benjamin Coddington) [1803162] - [block] nbd: fix stack corruption in nbd_check_sock_type() (Ming Lei) [1803664] - [mm] mm/vmscan.c: don't round up scan size for online memory cgroup (Aristeu Rozanski) [1775691] - [tools] selftests/bpf: fix clearing buffered output between tests/subtests (Yauheni Kaliuta) [1786006] - [tools] libbpf: avoid usage of __builtin_preserve_field_info (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: samples/bpf: fix Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1786006] - [tools] libbpf: fix Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1786006] - [tools] selftests: fix too long argument (Yauheni Kaliuta) [1786006] - [tools] libbpf: Add BPF-side definitions of supported field relocation kinds (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add sub-tests support for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: abstract away test log output (Yauheni Kaliuta) [1786006] - [tools] selftest/bpf: centralize libbpf logging management for test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: prevent headers to be compiled as C code (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: add test selectors by number and name to test_progs (Yauheni Kaliuta) [1786006] - [tools] selftests/bpf: revamp test_progs to allow more control (Yauheni Kaliuta) [1786006] - [net] core: Don't skip generic XDP program execution for cloned SKBs (Jiri Benc) [1802507] - [tools] selftests/bpf: De-flake test_tcpbpf (Jiri Benc) [1802507] - [net] bpf, sockmap: Check update requirements after locking (Jiri Benc) [1802507] - [net] bpf, sockhash: Synchronize_rcu before free'ing map (Jiri Benc) [1802507] - [net] bpf, sockmap: Don't sleep while holding RCU lock on tear-down (Jiri Benc) [1802507] - [net] net: bpf: Don't leak time wait and request sockets (Jiri Benc) [1802507] - [net] bpf/sockmap: Read psock ingress_msg before sk_receive_queue (Jiri Benc) [1802507] - [net] bpf: Clear skb->tstamp in bpf_redirect when necessary (Jiri Benc) [1802507] - [net] xdp: obtain the mem_id mutex before trying to remove an entry (Jiri Benc) [1802507] - [net] page_pool: do not release pool until inflight == 0 (Jiri Benc) [1802507] - [net] xsk: Fix registration of Rx-only sockets (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning umem (Jiri Benc) [1802507] - [net] xsk: avoid store-tearing when assigning queues (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing xlated program instructions (Jiri Benc) [1802507] - [tools] bpftool: Fix printing incorrect pointer in btf_dump_ptr (Jiri Benc) [1802507] - [tools] bpftool: Don't crash on missing jited insns or ksyms (Jiri Benc) [1802507] - [tools] bpftool: Match several programs with same tag (Jiri Benc) [1802507] - [tools] libbpf: Fix realloc usage in bpf_core_find_cands (Jiri Benc) [1802507] - [tools] libbpf: Add missing newline in opts validation macro (Jiri Benc) [1802507] - [tools] libbpf: Don't attach perf_buffer to offline/missing CPUs (Jiri Benc) [1802507] - [tools] libbpf: Extract and generalize CPU mask parsing logic (Jiri Benc) [1802507] - [tools] libbpf: Fix printf compilation warnings on ppc64le arch (Jiri Benc) [1802507] - [tools] libbpf: Fix sym->st_value print on 32-bit arches (Jiri Benc) [1802507] - [tools] libbpf: Make btf__resolve_size logic always check size error condition (Jiri Benc) [1802507] - [tools] libbpf: Fix another potential overflow issue in bpf_prog_linfo (Jiri Benc) [1802507] - [tools] libbpf: Fix potential overflow issue (Jiri Benc) [1802507] - [tools] libbpf: Fix memory leak/double free issue (Jiri Benc) [1802507] - [tools] libbpf: Fix off-by-one error in ELF sanity check (Jiri Benc) [1802507] - [tools] selftests/bpf: Fix test_attach_probe (Jiri Benc) [1802507] - [kernel] bpf: Fix bpf_event_output re-entry issue (Jiri Benc) [1802507] - [net] bpf: Fix incorrect verifier simulation of ARSH under ALU32 (Jiri Benc) [1802507] - [net] bpf: Fix passing modified ctx to ld/abs/ind instruction (Jiri Benc) [1802507] - [net] bpf: cgroup: prevent out-of-order release of cgroup bpf (Jiri Benc) [1802507] - [net] bpf: Fix precision tracking for unbounded scalars (Jiri Benc) [1802507] - [net] bpf: Fix cgroup local storage prog tracking (Jiri Benc) [1802507] - [net] bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack() (Jiri Benc) [1802507] - [net] bpf, offload: Unlock on error in bpf_offload_dev_create() (Jiri Benc) [1802507] - [powerpc] powerpc/bpf: Fix tail call implementation (Jiri Benc) [1802507] - [net] bpf: Fix use after free in bpf_get_prog_name (Jiri Benc) [1802507] - [net] bpf: Fix use after free in subprog's jited symbol removal (Jiri Benc) [1802507] - [uapi] bpf: fix BTF limits (Jiri Benc) [1802507] - [net] bpf: fix BTF verification of enums (Jiri Benc) [1802507] - [netdrv] ice: Don't tell the OS that link is going down (Jonathan Toppins) [1792670] - [powerpc] powerpc/powernv: implement opal_put_chars_atomic (Steve Best) [1806254] - [tty] powerpc/powernv: move opal console flushing to udbg (Steve Best) [1806254] - [powerpc] powerpc/powernv: Remove OPALv1 support from opal console driver (Steve Best) [1806254] - [powerpc] powerpc/powernv: Implement and use opal_flush_console (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg use flush fallback from console code (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal-kmsg standardise OPAL_BUSY handling (Steve Best) [1806254] - [powerpc] powerpc/powernv: Fix OPAL console driver OPAL_BUSY loops (Steve Best) [1806254] - [powerpc] powerpc/powernv: opal_put_chars partial write fix (Steve Best) [1806254] - [x86] Mark Comet Lake-S as supported (David Arcari) [1805754]- rebuild, due infrastructure issues last kernel build wasn't signed properly [1807216]- [nvme] nvme-multipath: Fix memory leak with ana_log_buf (David Milburn) [1804822] - [powerpc] pci/of: Fix OF flags parsing for 64bit BARs (David Gibson) [1804038]- [pci] PCI: pciehp: Add DMI table for in-band presence disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Wait for PDS if in-band presence is disabled (Myron Stowe) [1749528] - [pci] PCI: pciehp: Add support for disabling in-band presence (Myron Stowe) [1749528] - [netdrv] net/mlx5: DR, Handle reformat capability over sw-steering tables (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Fix matching on vport gvmi (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, use non preemptible call to get the current cpu number (Alaa Hleihel) [1794997] - [netdrv] net/mlx5: DR, Enable counter on non-fwd-dest objects (Alaa Hleihel) [1794997] - [iommu] iommu/vt-d: Simplify check in identity_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Remove deferred_attach_domain() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Do deferred attachment in iommu_need_mapping() (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Move deferred device attachment into helper function (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Add attach_deferred() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Refactor find_domain() helper (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Allow devices with RMRRs to use identity domain (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer (Jerry Snitselaar) [1797124 1784649] - [iommu] iommu/vt-d: Fix lock inversion between iommu->lock and device_domain_lock (Jerry Snitselaar) [1797124 1784649] - [ata] ata: ahci: Add shutdown to freeze hardware resources of ahci (David Milburn) [1784955] - [include] redhat: kabi: convert incorrect use of RH_KABI_EXTEND (Jiri Benc) [1715803] - [include] redhat: kabi: macros for intentional kABI breakage (Jiri Benc) [1715803] - [uapi] redhat: kabi: bpf: remove misleading comment (Jiri Benc) [1715803] - [include] redhat: kabi: introduce RH_KABI_HIDE_INCLUDE and RH_KABI_FAKE_INCLUDE (Jiri Benc) [1715803] - [kernel] kernel/module.c: wakeup processes in module_wq on module unload (Prarit Bhargava) [1804209] - [x86] kvm: x86: do not reset microcode version on INIT or RESET (Paolo Bonzini) [1801853] - [x86] kvm: x86: list MSR_IA32_UCODE_REV as an emulated MSR (Paolo Bonzini) [1801853] - [nvme] nvme: prevent warning triggered by nvme_stop_keep_alive (David Milburn) [1799890] - [nvme] nvme: nvme_keep_alive_end_io fixup setting comp_seen flag (David Milburn) [1799890]- [iommu] iommu: don't change default domain if already set by quirk (Jerry Snitselaar) [1786292] - [net] netfilter: ipset: Copy the right MAC address in hash:ip, mac IPv6 sets (Stefano Brivio) [1759422] - [net] ipv6/addrconf: only check invalid header values when NETLINK_F_STRICT_CHK is set (Guillaume Nault) [1802817] - [net] tcp: clear tp->segs_{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->data_segs{in|out} in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->delivered in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: clear tp->total_retrans in tcp_disconnect() (Guillaume Nault) [1802682] - [net] tcp: do not leave dangling pointers in tp->highest_sack (Guillaume Nault) [1802682] - [net] tcp: Fix highest_sack and highest_sack_seq (Guillaume Nault) [1802682] - [net] tcp: do not send empty skb from tcp_write_xmit() (Guillaume Nault) [1802682] - [net] tcp: md5: fix potential overestimation of TCP option space (Guillaume Nault) [1802682] - [net] tcp: fix data-race in tcp_recvmsg() (Guillaume Nault) [1802682] - [net] bridge: ebtables: don't crash when using dnat target in output chains (Andrea Claudi) [1798923] - [net] ip6_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ip_tunnel: fix namespaces move (Andrea Claudi) [1798649] - [net] ipv4: Detect rollover in specific fib table dump (Guillaume Nault) [1801587] - [net] inet: protect against too small mtu values. (Guillaume Nault) [1801587] - [net] icmp: fix data-race in cmp_global_allow() (Guillaume Nault) [1801587] - [net] inetpeer: fix data-race in inet_putpeer / inet_putpeer (Guillaume Nault) [1801587] - [net] ipv4: Fix table id reference in fib_sync_down_addr (Guillaume Nault) [1801587] - [net] dccp: do not leak jiffies on the wire (Guillaume Nault) [1801587] - [net] inet: stop leaking jiffies on the wire (Guillaume Nault) [1801587] - [tools] selftests: fib_tests: add more tests for metric update (Guillaume Nault) [1801587] - [net] ipv4: fix route update on metric change. (Guillaume Nault) [1801587] - [net] iptunnel: Set tun_flags in the iptunnel_metadata_reply from src (Guillaume Nault) [1801587] - [net] flow_dissector: Fix to use new variables for port ranges in bpf hook (Ivan Vecera) [1789862] - [net] net_sched: fix a resource leak in tcindex_set_parms() (Ivan Vecera) [1789862] - [tools] tc-testing: fix eBPF tests failure on linux fresh clones (Ivan Vecera) [1789862] - [net] net_sched: fix an OOB access in cls_tcindex (Ivan Vecera) [1789862] - [net] cls_rsvp: fix rsvp_policy (Ivan Vecera) [1789862] - [net] net_sched: ematch: reject invalid TCF_EM_SIMPLE (Ivan Vecera) [1789862] - [net] net_sched: walk through all child classes in tc_bind_tclass() (Ivan Vecera) [1789862] - [net] net_sched: fix ops->bind_class() implementations (Ivan Vecera) [1789862] - [net] net_sched: fix datalen for ematch (Ivan Vecera) [1789862] - [net] net_sched: use validated TCA_KIND attribute in tc_new_tfilter() (Ivan Vecera) [1789862] - [net] sch_prio: When ungrafting, replace with FIFO (Ivan Vecera) [1789862] - [net] pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM (Ivan Vecera) [1789862] - [net] sched: add delete_empty() to filters and use it in cls_flower (Ivan Vecera) [1789862] - [net] sched: act_mirred: Pull mac prior redir to non mac_header_xmit device (Ivan Vecera) [1789862] - [net] sched: cls_u32: fix refcount leak in the error path of u32_change() (Ivan Vecera) [1789862] - [net] net_sched: sch_fq: properly set sk->sk_pacing_status (Ivan Vecera) [1789862] - [net] net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add() (Ivan Vecera) [1789862] - [net] mqprio: Fix out-of-bounds access in mqprio_dump (Ivan Vecera) [1789862] - [net] sched: allow indirect blocks to bind to clsact in TC (Ivan Vecera) [1789862] - [net] core: rename indirect block ingress cb function (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in skb_mpls_push() (Ivan Vecera) [1789862] - [net] cls_flower: Fix the behavior using port ranges with hw-offload (Ivan Vecera) [1789862] - [net] sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues (Ivan Vecera) [1789862] - [net] Fixed updating of ethertype in function skb_mpls_pop (Ivan Vecera) [1789862] - [net] sched: fix `tc -s class show` no bstats on class with nolock subqueues (Ivan Vecera) [1789862] - [net] sched: act_pedit: fix WARN() in the traffic path (Ivan Vecera) [1789862] - [net] sched: actions: remove unused 'order' (Ivan Vecera) [1789862] - [net] sched: annotate lockless accesses to qdisc->empty (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_max_ack_backlog (Ivan Vecera) [1789862] - [net] inet: minor optimization for backlog setting in listen(2) (Ivan Vecera) [1789862] - [net] annotate lockless accesses to sk->sk_ack_backlog (Ivan Vecera) [1789862] - [net] use helpers to change sk_ack_backlog (Ivan Vecera) [1789862] - [net] sched: prevent duplicate flower rules from tcf_proto destroy race (Ivan Vecera) [1789862] - [net] flow_dissector: switch to siphash (Ivan Vecera) [1789862] - [netdrv] macvlan: use skb_reset_mac_header() in macvlan_queue_xmit() (Davide Caratti) [1801128] - [netdrv] macvlan: do not assume mac_header is set in macvlan_broadcast() (Davide Caratti) [1801128] - [net] psample: fix skb_over_panic (Sabrina Dubroca) [1800589] - [net] openvswitch: don't unlock mutex when changing the user_features fails (Davide Caratti) [1799363] - [net] rtnetlink: validate IFLA_MTU attribute in rtnl_create_link() (Guillaume Nault) [1798715] - [net] rtnetlink: fix a typo fbd -> fdb (Guillaume Nault) [1798715] - [net] bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, msg_push_data may leave end mark in place (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, push write_space updates through ulp updates (Sabrina Dubroca) [1798179] - [net] sk_msg: Don't check if sock is locked when tearing down psock (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, fix pop data with SK_DROP return code (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf (Sabrina Dubroca) [1798179] - [include] bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop (Sabrina Dubroca) [1798179] - [net] bpf: Sockmap, ensure sock lock held during tear down (Sabrina Dubroca) [1798179] - [net] tls: fix async operation (Sabrina Dubroca) [1798179] - [net] tls: Fix return values to avoid ENOTSUPP (Sabrina Dubroca) [1798179] - [net] skmsg: fix TLS 1.3 crash with full sk_msg (Sabrina Dubroca) [1798179] - [net] tls: free the record on encryption error (Sabrina Dubroca) [1798179] - [net] tls: take into account that bpf_exec_tx_verdict() may free the record (Sabrina Dubroca) [1798179] - [net] bpf: skmsg, fix potential psock NULL pointer dereference (Sabrina Dubroca) [1798179] - [net] tls: enable sk_msg redirect to tls socket egress (Sabrina Dubroca) [1798179] - [netdrv] macsec: fix refcnt leak in module exit routine (Sabrina Dubroca) [1799029] - [netdrv] ppp: Adjust indentation into ppp_async_input (Guillaume Nault) [1798104] - [net] l2tp: Allow duplicate session creation with UDP (Guillaume Nault) [1798104] - [net] Fix bugs introduced by netlink strict checking backport (Petr Oros) [1782172] - [tools] selftests: forwarding: fix race between packet receive and tc check (Hangbin Liu) [1797941] - [tools] selftests: forwarding: tc_common: Add hitting check (Hangbin Liu) [1797941] - [tools] selftests: net: push jq workaround into separate helper (Hangbin Liu) [1797941] - [tools] selftests: loopback.sh: skip this test if the driver does not support (Hangbin Liu) [1797941] - [tools] selftests: pmtu: fix init mtu value in description (Hangbin Liu) [1797941] - [tools] selftests: forwarding: Delete IPv6 address at the end (Hangbin Liu) [1797941] - [tools] selftests: pmtu: use -oneline for ip route list cache (Hangbin Liu) [1797941] - [tools] selftests: net: tcp_mmap should create detached threads (Hangbin Liu) [1797941] - [tools] selftests: net: reuseport_dualstack: fix uninitalized parameter (Hangbin Liu) [1797941] - [net] tipc: fix link overflow issue at socket shutdown (Xin Long) [1798070] - [net] tipc: fix retrans failure due to wrong destination (Xin Long) [1798070] - [net] tipc: fix potential hanging after b/rcast changing (Xin Long) [1798070] - [net] tipc: fix ordering of tipc module init and exit routine (Xin Long) [1798070] - [net] tipc: fix wrong timeout input for tipc_wait_for_cond() (Xin Long) [1798070] - [net] tipc: fix wrong socket reference counter after tipc_sk_timeout() returns (Xin Long) [1798070] - [net] tipc: fix potential memory leak in __tipc_sendmsg() (Xin Long) [1798070] - [net] tipc: fix link name length check (Xin Long) [1798070] - [net] tipc: update replicast capability for broadcast send link (Xin Long) [1798070] - [net] tipc: update cluster capabilities if node deleted (Xin Long) [1798070] - [net] tipc: update mon's self addr when node addr generated (Xin Long) [1798070] - [net] tipc: reduce sensitive to retransmit failures (Xin Long) [1798070] - [net] sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY (Xin Long) [1798061] - [net] sctp: fully initialize v4 addr in some functions (Xin Long) [1798061] - [net] sctp: cache netns in sctp_ep_common (Xin Long) [1798061] - [net] sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook (Xin Long) [1798061] - [net] xfrm: support output_mark for offload ESP packets (Xin Long) [1798059] - [net] xfrm: release device reference for invalid state (Xin Long) [1798059] - [net] netfilter: fix a use-after-free in mtype_destroy() (Davide Caratti) [1796361] - [net] netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present (Davide Caratti) [1796361] - [net] netfilter: conntrack: Request module if l3proto is unknown (Phil Sutter) [1752765] - [include] tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE() (Guillaume Nault) [1780828] - [include] tcp: tighten acceptance of ACKs not matching a child socket (Guillaume Nault) [1780828] - [include] tcp: fix rejected syncookies due to stale timestamps (Guillaume Nault) [1780828] - [net] SUNRPC: Make "no retrans timeout" soft tasks behave like softconn for timeouts (Steve Dickson) [1801454] - [kernel] genirq, sched/isolation: Isolate from handling managed interrupts (Peter Xu) [1783026]- [nvme] nvme: fix the parameter order for nvme_get_log in nvme_get_fw_slot_info (David Milburn) [1798630] - [mm] arm64: debug: Remove unused return value from do_debug_exception() (Bhupesh Sharma) [1802511] - [mm] arm64: debug: Don't propagate UNKNOWN FAR into si_code for debug signals (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Reorganize arguments for is_el1_permission_fault() (Bhupesh Sharma) [1802511] - [mm] arm64/mm: Define esr_to_debug_fault_info() (Bhupesh Sharma) [1802511] - [infiniband] IB/mlx5: Do reverse sequence during device removal (Alaa Hleihel) [1801497] - [netdrv] bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Refactor logic to re-enable SRIOV after firmware reset detected (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix logic that disables Bus Master during firmware reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix TC queue mapping (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix NTUPLE firmware command failures (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix ipv6 RFS filter matching logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal (Jonathan Toppins) [1801868] - [netdrv] bnxt: Detach page from page pool before sending up the stack (Jonathan Toppins) [1801868] - [netdrv] bnxt: apply computed clamp value for coalece parameter (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix MSIX request logic for RDMA driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Free context memory in the open path if firmware has been reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return error if FW returns more data than dump length (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix bp->fw_health allocation and free logic (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add missing devlink health reporters for VFs (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix the logic that creates the health reporters (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Do driver unregister cleanup in bnxt_init_one() failure path (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Send FUNC_RESOURCE_QCAPS command in bnxt_resume() (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Combine 2 functions calling the same HWRM_DRV_RGTR fw command (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Abort waiting for firmware response if there is no heartbeat (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Return proper error code for non-existent NVM variable (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Add a warning message for driver initiated reset (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Improve RX buffer error handling (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Extend ETHTOOL_RESET to hot reset driver (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Increase firmware response timeout for coredump commands (Jonathan Toppins) [1801868] - [netdrv] bnxt_en: Fix suspend/resume path on 57500 chips (Jonathan Toppins) [1801111] - [netdrv] bnxt_en: Disable/enable Bus master during suspend/resume (Jonathan Toppins) [1801111] - [fs] cifs: fix soft mounts hanging in the reconnect code (Leif Sahlberg) [1795423] - [kernel] audit: CONFIG_CHANGE don't log internal bookkeeping as an event (Richard Guy Briggs) [1798512] - [security] selinux: reorder hooks to make runtime disable less broken (Ondrej Mosnacek) [1778990] - [scsi] scsi: qla2xxx: Fix unbound NVME response length (Himanshu Madhani) [1796480] - [isdn] misdn: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779475] {CVE-2019-17055}- [fs] Revert: f5bcc37b81fc ("namei: allow restricted O_CREAT of FIFOs and regular files") (Eric Sandeen) [1801468] - [fs] Revert: 433cbb6cf0ae ("quota: honor quota type in Q_XGETQSTATcalls") (Eric Sandeen) [1800435] - [infiniband] RDMA/siw: Fix setting active_mtu attribute (Kamal Heib) [1797199] - [infiniband] RDMA/hfi1: Fix memory leak in _dev_comp_vect_mappings_create (Kamal Heib) [1733690] - [scsi] scsi: lpfc: Fix release of hwq to clear the eq relationship (Dick Kennedy) [1798661] - [x86] kvm/hyper-v: don't allow to turn on unsupported VMX controls for nested guests (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: move VMX controls sanitization out of nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm/hyper-v: remove stale evmcs_already_enabled check from nested_enable_evmcs() (Vitaly Kuznetsov) [1786288] - [x86] kvm: svm: relax conditions for allowing MSR_IA32_SPEC_CTRL accesses (Paolo Bonzini) [1796417] - [x86] kvm: x86: avoid incorrect writes to host MSR_IA32_SPEC_CTRL (Paolo Bonzini) [1796417] - [tools] selftests: netfilter: Introduce tests for sets with range concatenation (Stefano Brivio) [1593711] - [net] nf_tables: Add set type for arbitrary concatenation of ranges (Stefano Brivio) [1593711] - [lib] bitmap: Introduce bitmap_cut(): cut bits and shift remaining (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: Support for sets with multiple ranged fields (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add NFTA_SET_ELEM_KEY_END attribute (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: add nft_setelem_parse_key() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init() (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused parameter ctx (Stefano Brivio) [1593711] - [net] netfilter: nf_tables: remove unused variable (Stefano Brivio) [1593711] - [ptp] ptp: free ptp device pin descriptors properly (Vladis Dronov) [1787568] - [ptp] ptp: fix the race between the release of ptp_clock and cdev (Vladis Dronov) [1787568] - [ptp] ptp: Fix pass zero to ERR_PTR() in ptp_clock_register (Vladis Dronov) [1787568]- [fs] NFSv4: pnfs_roc() must use cred_fscmp() to compare creds (Benjamin Coddington) [1800893] - [drm] drm/nouveau/kms/gv100-: avoid sending a core update until the first modeset (Ben Skeggs) [1801091] - [drm] drm/nouveau/kms/gv100-: move window ownership setup into modesetting path (Ben Skeggs) [1801091] - [drm] drm/nouveau/disp/gv100-: halt NV_PDISP_FE_RM_INTR_STAT_CTRL_DISP_ERROR storms (Ben Skeggs) [1801091] - [drm] drm/nouveau: Add HD-audio component notifier support (Ben Skeggs) [1792191] - [netdrv] net/mlx5: Fix deadlock in fs_core (Alaa Hleihel) [1786630] - [drm] drm/amd/dm/mst: Ignore payload update failures (Lyude Paul) [1773800 1773795] - [kernel] sched/rt: Optimize checking group RT scheduler constraints (Phil Auld) [1797106] - [fs] cifs: Fix mount options set in automount (Dave Wysochanski) [1790922]- [kernel] timers/nohz: Update NOHZ load in remote tick (Scott Wood) [1791434] - [kernel] sched/core: Don't skip remote tick for idle CPUs (Scott Wood) [1791434] - [drm] drm/amdgpu/vi: silence an uninitialized variable warning (Lyude Paul) [1792565] - [drm] drm: panel-lvds: Potential Oops in probe error handling (Lyude Paul) [1792565] - [drm] drm/i915: Fix pid leak with banned clients (Lyude Paul) [1792565] - [drm] drm/amdgpu: allow direct upload save restore list for raven2 (Lyude Paul) [1792565] - [drm] drm/amd/display: Reorder detect_edp_sink_caps before link settings read (Lyude Paul) [1792565] - [drm] drm/i915: Add missing include file (Lyude Paul) [1792565] - [drm] drm/amdgpu: enable gfxoff for raven1 refresh (Lyude Paul) [1792565] - [drm] drm/amdgpu/discovery: reserve discovery data at the top of VRAM (Lyude Paul) [1792565] - [drm] drm/amdgpu: cleanup creating BOs at fixed location (v2) (Lyude Paul) [1792565] - [drm] drm/tegra: Fix ordering of cleanup code (Lyude Paul) [1792565] - [drm] drm/i915/gen9: Clear residual context state on context switch (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1407352427:icl,ehl (Lyude Paul) [1792565] - [drm] drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ (Lyude Paul) [1792565] - [drm] drm/fb-helper: Round up bits_per_pixel if possible (Lyude Paul) [1792565] - [drm] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl, ehl (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for vega20 (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock for navi (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu/smu: add metrics table lock (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: fix panel scaling (Lyude Paul) [1792565 1741114] - [drm] drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware (Lyude Paul) [1792565] - [drm] drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit (Lyude Paul) [1792565] - [drm] drm/amd/display: Reset steer fifo before unblanking the stream (Lyude Paul) [1792565] - [drm] drm/amd/display: Change the delay time before enabling FEC (Lyude Paul) [1792565] - [drm] drm/amd/display: Fixed kernel panic when booting with DP-to-HDMI dongle (Lyude Paul) [1792565] - [drm] drm/amdgpu: add cache flush workaround to gfx8 emit_fence (Lyude Paul) [1792565] - [drm] drm/amdgpu: add check before enabling/disabling broadcast mode (Lyude Paul) [1792565] - [drm] drm: limit to INT_MAX in create_blob ioctl (Lyude Paul) [1792565] - [drm] drm/amdgpu: Call find_vma under mmap_sem (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix uninitialized variable pasid_mapping_needed (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix bad DMA from INTERRUPT_CNTL2 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Avoid accidental thread reactivation (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix potential double drop fence reference (Lyude Paul) [1792565] - [drm] drm/amdgpu: disallow direct upload save restore list from gfx driver (Lyude Paul) [1792565] - [gpu] gpu: host1x: Allocate gather copy for host1x (Lyude Paul) [1792565] - [drm] drm/tegra: sor: Use correct SOR index on Tegra210 (Lyude Paul) [1792565] - [drm] drm/amd/display: correctly populate dpp refclk in fpga (Lyude Paul) [1792565] - [drm] drm: Don't free jobs in wait_event_interruptible() (Lyude Paul) [1792565] - [drm] drm/gma500: fix memory disclosures due to uninitialized bytes (Lyude Paul) [1792565] - [drm] drm/amdgpu: fix amdgpu trace event print string format error (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: avoid disabling ECC if RAS is enabled for VEGA20 (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Restore audio when setting a mode (Lyude Paul) [1792565] - [drm] drm/amd/display: Program DWB watermarks from correct state (Lyude Paul) [1792565] - [drm] drm/amd/display: Fix dongle_caps containing stale information (Lyude Paul) [1792565] - [drm] drm/amd/display: add new active dongle to existent w/a (Lyude Paul) [1792565] - [drm] drm/amd/display: refactor Device ID for external chips (Lyude Paul) [1792565] - [drm] drm/amd/display: wait for set pipe mcp command completion (Lyude Paul) [1792565] - [drm] drm/amd/display: Properly round nominal frequency for SPD (Lyude Paul) [1792565] - [drm] drm/drm_vblank: Change EINVAL by the correct errno (Lyude Paul) [1792565] - [drm] drm/amdkfd: Fix MQD size calculation (Lyude Paul) [1792565] - [drm] drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the internal I2C controller (Lyude Paul) [1792565] - [drm] drm/amd/display: set minimum abm backlight level (Lyude Paul) [1792565] - [drm] drm/amd/display: load iram for abm 2.3 (Lyude Paul) [1792565] - [drm] drm/amd/powerplay: A workaround to GPU RESET on APU (Lyude Paul) [1792565] - [drm] drm/amdkfd: fix a potential NULL pointer dereference (v2) (Lyude Paul) [1792565] - [drm] drm/amd/display: Set number of pipes to 1 if the second pipe was disabled (Lyude Paul) [1792565] - [drm] drm/amd/display: Handle virtual signal type in disable_link() (Lyude Paul) [1792565] - [drm] drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2) (Lyude Paul) [1792565] - [drm] drm/amdgpu: grab the id mgr lock while accessing passid_mapping (Lyude Paul) [1792565] - [drm] drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code (Lyude Paul) [1792565] - [drm] drm/bridge: analogix-anx78xx: silence -EPROBE_DEFER warnings (Lyude Paul) [1792565] - [drm] drm/amd/display: verify stream link before link test (Lyude Paul) [1792565] - [drm] drm: Use EOPNOTSUPP, not ENOTSUPP (Lyude Paul) [1792565] - [drm] drm/mipi-dbi: fix a loop in debugfs code (Lyude Paul) [1792565] - [drm] drm: mst: Fix query_payload ack reply struct (Lyude Paul) [1792565] - [drm] Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper." (Lyude Paul) [1792565] - [drm] drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9 (Lyude Paul) [1792565] - [drm] drm/amdgpu: avoid using invalidate semaphore for picasso (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: re-init clear state buffer after gpu reset (Lyude Paul) [1792565] - [drm] drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt (Lyude Paul) [1792565] - [drm] drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10 (Lyude Paul) [1792565] - [drm] drm/amdgpu: set adev->num_vmhubs for gmc6, 7, 8 (Lyude Paul) [1792565] - [drm] drm/amdgpu: Export function to flush TLB of specific vm hub (Lyude Paul) [1792565] - [drm] drm/amdgpu: add new member in amdgpu_device for vmhub counts per asic chip (Lyude Paul) [1792565] - [drm] drm/amdgpu: rename AMDGPU_GFXHUB/MMHUB macro with hub number (Lyude Paul) [1792565] - [drm] drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub (Lyude Paul) [1792565] - [drm] drm/amd/display: add default clocks if not able to fetch them (Lyude Paul) [1792565] - [drm] drm/amd/display: re-enable wait in pipelock, but add timeout (Lyude Paul) [1792565] - [drm] drm/dp_mst: Correct the bug in drm_dp_update_payload_part1() (Lyude Paul) [1792565] - [drm] drm/radeon: fix r1xx/r2xx register checker for POT textures (Lyude Paul) [1792565] - [drm] drm/i915/fbc: Disable fbc by default on all glk+ (Lyude Paul) [1792565] - [drm] drm/nouveau/kms/nv50-: Limit MST BPC to 8 (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom (Lyude Paul) [1792565 1773804] - [drm] drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN (Lyude Paul) [1792565 1773804] - [drm] drm/mgag200: Flag all G200 SE A machines as broken wrt (Lyude Paul) [1792565] - [drm] drm/mgag200: Add workaround for HW that does not support 'startadd' (Lyude Paul) [1792565] - [drm] drm/mgag200: Store flags from PCI driver data in device structure (Lyude Paul) [1792565] - [drm] drm/mgag200: Extract device type from flags (Lyude Paul) [1792565] - [dma-buf] dma-buf: Fix memory leak in sync_file_merge() (Lyude Paul) [1792565] - [video] video/hdmi: Fix AVI bar unpack (Lyude Paul) [1792565] - [drm] drm: damage_helper: Fix race checking plane->state->fb (Lyude Paul) [1792565] - [drm] drm/i915: Fix detection for a CMP-V PCH (Lyude Paul) [1792565] - [x86] Mark AMD Ryzen 7 as supported (David Arcari) [1797317] - [x86] Mark AMD Ryzen 5 as supported (David Arcari) [1718051] - [mm] mm/sparse.c: reset section's mem_map when fully deactivated (Pingfan Liu) [1797848] - [drm] drm/mgag200: Don't unpin the current cursor image's buffer (Lyude Paul) [1784290] - [drm] drm/mgag200: Set cursor scanout address to correct BO (Lyude Paul) [1784290] - [drm] drm/mgag200: Pin displayed cursor BO to video memory (Lyude Paul) [1784290] - [tools] Correction to manpage of cpupower (Prarit Bhargava) [1796139] - [fs] cifs: fix soft mounts hanging in the reconnect code (Dave Wysochanski) [1795429] - [net] ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup (Sabrina Dubroca) [1774440] - [net] ipv6: add net argument to ip6_dst_lookup_flow (Sabrina Dubroca) [1774440] - [netdrv] can: peak_usb: fix slab info leak (Guillaume Nault) [1787486] {CVE-2019-19534} - [netdrv] vxlan: fix tos value before xmit (Hangbin Liu) [1786075] - [net] netfilter: nft_tproxy: Fix port selector on Big Endian (Phil Sutter) [1781481] - [net] devlink: Change devlink health locking mechanism (Petr Oros) [1785997] - [net] xfrm: Fix memleak on xfrm state destroy (Xin Long) [1780470] - [net] erspan: remove the incorrect mtu limit for erspan (Hangbin Liu) [1783871] - [net] ieee802154: enforce CAP_NET_RAW for raw sockets (Andrea Claudi) [1779495] {CVE-2019-17053} - [net] netfilter: masquerade: don't flush all conntracks if only one address deleted on device (Patrick Talbert) [1772334]- [mm] memcg: Add preemption point in accumulate_memcg_tree() (Waiman Long) [1795049] - [edac] EDAC: skx_common: downgrade message importance on missing PCI device (Aristeu Rozanski) [1775511] - [infiniband] IB/core: Do not notify GID change event of an unregistered device (Kamal Heib) [1787333] - [infiniband] IB/core: Let IB core distribute cache update events (Kamal Heib) [1787333] - [arm64] arm64: kexec: always reset to EL2 if present (Bhupesh Sharma) [1794805] - [tools] perf header: Use last modification time for timestamp (Michael Petlan) [1791258] - [netdrv] net/mlx5e: Enable all available stats for uplink reps (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Create q counters on uplink representors (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert rep stats to mlx5e_stats_grp-based infra (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: IPoIB, use separate stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Convert stats groups array to array of group pointers (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Declare stats groups via macro (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Profile specific stats groups (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Move uplink rep init/cleanup code into own functions (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add discard counters per priority (Alaa Hleihel) [1786321] - [netdrv] net/mlx5e: Add port buffer's congestion counters (Alaa Hleihel) [1786321] - [netdrv] net/mlx5: Expose HW capability bits for port buffer per priority congestion counters (Alaa Hleihel) [1786321] - [netdrv] qede: Fix multicast mac configuration (Manish Chopra) [1784894] - [thunderbolt] thunderbolt: Drop unnecessary read when writing LC command in Ice Lake (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Fix lockdep circular locking depedency warning (Jarod Wilson) [1784568] - [thunderbolt] thunderbolt: Read DP IN adapter first two dwords in one go (Jarod Wilson) [1784568]- [pci] PCI/PM: Move pci_dev_wait() definition earlier (Myron Stowe) [1794266] - [pci] PCI/PM: Add missing link delays required by the PCIe spec (Myron Stowe) [1794266] - [pci] PCI/PM: Add pcie_wait_for_link_delay() (Myron Stowe) [1794266] - [pci] PCI/PM: Return error when changing power state from D3cold (Myron Stowe) [1794266] - [pci] PCI/PM: Decode D3cold power state correctly (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_complete_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Avoid exporting __pci_complete_power_transition() (Myron Stowe) [1794266] - [pci] PCI/PM: Fold __pci_start_power_transition() into its caller (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_power_up() in pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Move power state update away from pci_power_up() (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.suspend_late() hook (Myron Stowe) [1794266] - [pci] PCI/PM: Remove unused pci_driver.resume_early() hook (Myron Stowe) [1794266] - [xen] xen-platform: Convert to generic power management (Myron Stowe) [1794266] - [pci] PCI/PM: Simplify pci_set_power_state() (Myron Stowe) [1794266] - [pci] PCI/PM: Expand PM reset messages to mention D3hot (not just D3) (Myron Stowe) [1794266] - [pci] PCI/PM: Apply D2 delay as milliseconds, not microseconds (Myron Stowe) [1794266] - [pci] PCI/PM: Use pci_WARN() to include device information (Myron Stowe) [1794266] - [pci] PCI/PM: Use PCI dev_printk() wrappers for consistency (Myron Stowe) [1794266] - [pci] PCI/PM: Make power management op coding style consistent (Myron Stowe) [1794266] - [pci] PCI/PM: Run resume fixups before disabling wakeup events (Myron Stowe) [1794266] - [pci] PCI/PM: Clear PCIe PME Status even for legacy power management (Myron Stowe) [1794266] - [pci] PCI/PM: Always return devices to D0 when thawing (Myron Stowe) [1794266] - [pci] PCI: PM: Fix pci_power_up() (Myron Stowe) [1794266] - [pci] PCI: Make pcie_downstream_port() available outside of access.c (Myron Stowe) [1794266] - [pci] PCI: Add pci_info_ratelimited() to ratelimit PCI separately (Myron Stowe) [1794266] - [pci] PCI: PM: Simplify bus-level hibernation callbacks (Myron Stowe) [1794266] - [pci] PCI: Do not poll for PME if the device is in D3cold (Myron Stowe) [1794266] - [pci] PCI: PM: Replace pci_dev_keep_suspended() with two functions (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid resuming devices in D3hot during system suspend (Myron Stowe) [1794266] - [pci] PCI: PM: Avoid skipping bus-level PM on platforms without ACPI (Myron Stowe) [1794266] - [pci] treewide: Switch printk users from pf and pF to ps and pS, respectively (Myron Stowe) [1794266] - [sound] ALSA: Use the legacy HDA driver as default for Intel DSP platforms (Jaroslav Kysela) [1793227] - [nvme] nvme: nvme_mpath_init remove multipath check (David Milburn) [1790958] - [mm] mm/page-writeback.c: don't break integrity writeback on ->writepage() error (Christoph von Recklinghausen) [1782117] - [arm64] arm64: Revert support for execute-only user mappings (Jeremy Linton) [1788629] - [powerpc] powerpc/papr_scm: Don't enable direct map for a region by default (Steve Best) [1795706]- [tools] selftests/eeh: Bump EEH wait time to 60s (Steve Best) [1783199] - [tools] tools/kvm_stat: Fix kvm_exit filter name (Gavin Shan) [1780345] - [infiniband] RDMA/bnxt_re: Report more number of completion vectors (Selvin Xavier) [1788037 1753515] - [infiniband] RDMA/bnxt_re: Fix Send Work Entry state check while polling completions (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Fix missing le16_to_cpu (Selvin Xavier) [1788037] - [infiniband] RDMA/bnxt_re: Avoid freeing MR resources if dereg fails (Selvin Xavier) [1788037 1737147] - [infiniband] RDMA/bnxt_re: Fix stat push into dma buffer on gen p5 devices (Selvin Xavier) [1788037 1771855] - [infiniband] RDMA/bnxt_re: Fix chip number validation Broadcom's Gen P5 series (Selvin Xavier) [1788037 1783943] - [netdrv] net/mlx5e: Clear VF config when switching modes (mohamad meib) [1787276] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup fixup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: cache memory blocks in xarray to accelerate lookup (David Hildenbrand) [1789900] - [base] drivers/base/memory.c: drop the mem_sysfs_mutex (David Hildenbrand) [1789900] - [base] driver/base/memory.c: validate memory block size early (David Hildenbrand) [1789900] - [fs] block: Don't revalidate bdev of hidden gendisk (David Milburn) [1779342] - [scsi] scsi: virtio_scsi: unplug LUNs when events missed (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: implement request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix dh and multipathing for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: fix missing .cleanup_rq for SCSI hosts without request batching (Maxim Levitsky) [1614188] - [scsi] scsi: core: add support for request batching (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use struct_size() helper (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: remove unused 'affinity_hint_set' (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: don't send sc payload with tmfs (Maxim Levitsky) [1614188] - [scsi] scsi: virtio_scsi: Remove per-target data because it is no longer used (Maxim Levitsky) [1614188] - [powerpc] powerpc/pseries/lparcfg: Fix display of Maximum Memory (Steve Best) [1795622] - [powerpc] powernv: Don't reprogram SLW image on every KVM guest entry/exit (Laurent Vivier) [1751078] - [x86] Mark certain versions of Comet Lake as supported (David Arcari) [1794198] - [s390] s390/dasd: Disable Thin Provisioning to prevent data loss (Philipp Rudo) [1793461]- [x86] kvm: x86/mmu: Take slots_lock when using kvm_mmu_zap_all_fast() (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: disable shattered huge page recovery for PREEMPT_RT (Paolo Bonzini) [1690344] {CVE-2018-12207} - [documentation] documentation: Add ITLB_MULTIHIT documentation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: x86: mmu: Recovery of shattered NX large pages (Paolo Bonzini) [1690344] {CVE-2018-12207} - [virt] kvm: Add helper function for creating VM worker threads (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: mmu: ITLB_MULTIHIT mitigation (Paolo Bonzini) [1690344] {CVE-2018-12207} - [kernel] cpu/speculation: Uninline and export CPU mitigations helpers (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] cpu: Add Tremont to the cpu vulnerability whitelist (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] bugs: Add ITLB_MULTIHIT bug infrastructure (Paolo Bonzini) [1690344] {CVE-2018-12207} - [x86] kvm: vmx, svm: always run with EFER.NXE=1 when shadow paging is active (Paolo Bonzini) [1690344] {CVE-2018-12207} - [crypto] crypto: hmac - fix memory leak in hmac_init_tfm() (Herbert Xu) [1775858] - [crypto] crypto: hash - fix incorrect HASH_MAX_DESCSIZE (Herbert Xu) [1775858] - [nvme] nvme: Translate more status codes to blk_status_t (Gopal Tiwari) [1781537] - [include] nvme: resync include/linux/nvme.h with nvmecli (Gopal Tiwari) [1781537] - [netdrv] hv_netvsc: Fix memory leak when removing rndis device (Mohammed Gamal) [1733007] - [fs] cifs: Fix memory allocation in __smb2_handle_cancelled_cmd() (Dave Wysochanski) [1793182] - [tools] perf c2c: Fix report with offline cpus (Michael Petlan) [1744903] - [kernel] locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN (Waiman Long) [1793028] - [mm] mm/memory_hotplug: don't free usage map when removing a re-added early section (Pingfan Liu) [1787269] - [netdrv] iavf: remove current MAC address filter on VF reset (Stefan Assmann) [1735725 1738738] - [dma] dma-mapping: fix handling of dma-ranges for reserved memory (again) (Jerry Snitselaar) [1784691]- [fs] pnfs/filelayout: enable LAYOUTGET on OPEN (Steve Dickson) [1756140] - [fs] NFSD fixing possible null pointer derefering in copy offload (Benjamin Coddington) [1763220] - [fs] nfsd: Ensure CLONE persists data and metadata changes to the target file (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix backchannel latency metrics (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for layoutreturn (Benjamin Coddington) [1763220] - [fs] NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process() (Benjamin Coddington) [1763220] - [fs] NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid() (Benjamin Coddington) [1763220] - [fs] NFSv4: Don't allow a cached open with a revoked delegation (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix svcauth_gss_proxy_init() (Benjamin Coddington) [1763220] - [net] SUNRPC: The TCP back channel mustn't disappear while requests are outstanding (Benjamin Coddington) [1763220] - [net] xprtrdma: Close window between waking RPC senders and posting Receives (Benjamin Coddington) [1763220] - [net] xprtrdma: Connection becomes unstable after a reconnect (Benjamin Coddington) [1763220] - [net] xprtrdma: Add unique trace points for posting Local Invalidate WRs (Benjamin Coddington) [1763220] - [net] sunrpc: fix crash when cache_head become valid before update (Benjamin Coddington) [1763220] - [fs] nfsd4: fix up replay_matches_cache() (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix leak of clp->cl_acceptor string (Benjamin Coddington) [1763220] - [fs] pNFS: Ensure we do clear the return-on-close layout stateid on fatal errors (Benjamin Coddington) [1763220] - [fs] NFS: Fix O_DIRECT accounting of number of bytes read/written (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix another issue with MIC buffer space (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix buffer handling of GSS MIC without slack (Benjamin Coddington) [1763220] - [fs] Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated" (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't handle errors if the bind/connect succeeded (Benjamin Coddington) [1763220] - [net] SUNRPC: Fix congestion window race with disconnect (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't try to parse incomplete RPC messages (Benjamin Coddington) [1763220] - [net] SUNRPC: Don't receive TCP data into a request buffer that has been reset (Benjamin Coddington) [1763220] - [net] SUNRPC: Dequeue the request from the receive queue while we're re-encoding (Benjamin Coddington) [1763220] - [net] SUNRPC: Handle connection breakages correctly in call_status() (Benjamin Coddington) [1763220] - [net] xprtrdma: Toggle XPRT_CONGESTED in xprtrdma's slot methods (Benjamin Coddington) [1763220] - [fs] NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0 (Benjamin Coddington) [1763220] - [fs] NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend() (Benjamin Coddington) [1763220] - [fs] NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Only reap expired delegations (Benjamin Coddington) [1763220] - [fs] NFSv4.1: Fix open stateid recovery (Benjamin Coddington) [1763220] - [fs] NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid (Benjamin Coddington) [1763220] - [fs] NFSv4: Handle the special Linux file open access mode (Benjamin Coddington) [1763220] - [fs] nfsd: Fix overflow causing non-working mounts on 1 TB machines (Benjamin Coddington) [1763220] - [md] md: make sure desc_nr less than MD_SB_DISKS (Nigel Croxon) [1769057] - [md] md: raid1: check rdev before reference in raid1_sync_request func (Nigel Croxon) [1769057] - [md] md/raid10: prevent access of uninitialized resync_pages offset (Nigel Croxon) [1769057] - [md] md: avoid invalid memory access for array sb->dev_roles (Nigel Croxon) [1769057] - [md] md/raid1: avoid soft lockup under high load (Nigel Croxon) [1769057] - [md] md: no longer compare spare disk superblock events in super_load (Nigel Croxon) [1769057] - [md] md: improve handling of bio with REQ_PREFLUSH in md_flush_request() (Nigel Croxon) [1769057] - [md] md/bitmap: avoid race window between md_bitmap_resize and bitmap_file_clear_bit (Nigel Croxon) [1769057] - [md] md/raid0: Fix an error message in raid0_make_request() (Nigel Croxon) [1769057] - [md] md/raid0: fix warning message for parameter default_layout (Nigel Croxon) [1769057] - [netdrv] net/mlx5: DR, Init lists that are used in rule's member (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, No need for atomic refcount for internal SW steering resources (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multiple destination action from dr_create_fte (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Add support for multiple destination table action (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Align dest FT action creation to API (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Pass table flags at creation to lower layer (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create multi-destination table for SW-steering use (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Create FTE entry in the FW from SW-steering (Alaa Hleihel) [1775986] - [netdrv] net/mlx5: DR, Use attributes struct for FW flow table creation (Alaa Hleihel) [1775986] - [drm] drm/amd/display: fix struct init in update_bounding_box (Don Dutile) [1784621] - [tools] perf/x86/pmu-events: Fix Kernel_Utilization metric (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update all the Intel JSON metrics from TMAM 3.6 (Michael Petlan) [1788434] - [tools] perf vendor events intel: Update CascadelakeX events to v1.05 (Michael Petlan) [1788434] - [tools] cpupower: mperf_monitor: Update cpupower to use the RDPRU instruction (Janakarajan Natarajan) [1766357] - [tools] cpupower: mperf_monitor: Introduce per_cpu_schedule flag (Janakarajan Natarajan) [1766357] - [tools] cpupower: Move needs_root variable into a sub-struct (Janakarajan Natarajan) [1766357] - [mm] coredump: fix race condition between collapse_huge_page() and core dumping (Andrea Arcangeli) [1722986] - [mm] memcg, oom: don't require __GFP_FS when invoking memcg OOM killer (Waiman Long) [1791170] - [uapi] mm: move MAP_SYNC to asm-generic/mman-common.h (Jeff Moyer) [1791539]- [linux] ptr_ring: wrap back ->producer in __ptr_ring_swap_queue() (Lu Lu) [1663784] - [virtio] virtio-balloon: fix managed page counts when migrating pages between zones (David Hildenbrand) [1689800] - [infiniband] IB/mlx4: Follow mirror sequence of device add during device removal (mohamad meib) [1786042] - [netdrv] gve: Fix the queue page list allocated pages count (Patricio Noyola) [1789114] - [netdrv] gve: fix dma sync bug where not all pages synced (David Awogbemila) [1790957] - [netdrv] gve: Fixes DMA synchronization (David Awogbemila) [1789027] - [net] SUNRPC: Ignore queue transmission errors on successful transmission (Benjamin Coddington) [1769367] - [net] Revert "SUNRPC: Micro-optimise when the task is known not to be sleeping" (Benjamin Coddington) [1769367] - [net] SUNRPC: Fix up calculation of client message length (Benjamin Coddington) [1769367] - [net] Merge tag 'nfs-rdma-for-5.1-1' of git://git.linux-nfs.org/projects/anna/linux-nfs (Benjamin Coddington) [1769367] - [char] tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's" (Jerry Snitselaar) [1789088] - [char] tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts" (Jerry Snitselaar) [1789088] - [tools] perf jvmti: Link against tools/lib/ctype.h to have weak strlcpy() (Michael Petlan) [1786048] - [tools] perf jvmti: Link against tools/lib/string.o to have weak strlcpy() (Michael Petlan) [1786048] - [kernel] kprobes: Show address of kprobes if kallsyms does (Michael Petlan) [1747099] - [kernel] genirq/debugfs: Reset domain debugfs_file on removal of the debugfs file (Mohammed Gamal) [1782640] - [powerpc] powerpc: Fix 32-bit KVM-PR lockup and host crash with MacOS guest (Steve Best) [1789594]- [platform] x86: intel_pmc_core: Add Comet Lake (CML) platform support to intel_pmc_core driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Fix the SoC naming inconsistency (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core_pltdrv: Module removal warning fix (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Do not ioremap RAM (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Remove dev_err() usage after platform_get_irq() (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Add ICL-NNPI support to PMC Core (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Attach using APCI HID "INT33A1" (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: transform Pkg C-state residency from TSC ticks into microseconds (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc: no need to check return value of debugfs_create functions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Allow to dump debug registers on S0ix failure (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Convert to a platform_driver (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Don't map non-used optional resources (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Apply same width for offset definitions (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: Use BIT() macro (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_core: Mark local function static (Lenny Szubowicz) [1773793] - [platform] x86: intel_pmc_ipc: adding error handling (Lenny Szubowicz) [1773793] - [mm] memory_hotplug: cleanup __remove_pages() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: drop local variables in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't check for "all holes" in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: we always have a zone in find_(smallest|biggest)_section_pfn (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: poison memmap in remove_pfn_range_from_zone() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: shrink zones when offlining memory (Christoph von Recklinghausen) [1766491] - [mm] memmap_init: update variable name in memmap_init_zone (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_zone_span() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix try_offline_node() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: fix updating the node span (Christoph von Recklinghausen) [1766491] - [mm] hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic() (Christoph von Recklinghausen) [1766491] - [mm] memory_hotplug: don't access uninitialized memmaps in shrink_pgdat_span() (Christoph von Recklinghausen) [1766491] - [mm] page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo (Christoph von Recklinghausen) [1766491] - [mm] memory-failure.c: don't access uninitialized memmaps in memory_failure() (Christoph von Recklinghausen) [1766491] - [fs] proc/page.c: don't access uninitialized memmaps in fs/proc/page.c (Christoph von Recklinghausen) [1766491] - [base] base/memory.c: don't access uninitialized memmaps in soft_offline_page_store() (Christoph von Recklinghausen) [1766491] - [base] base/node.c: simplify unregister_memory_block_under_nodes() (Christoph von Recklinghausen) [1766491] - [kernel] /proc/kpagecount: return 0 for special pages that are never mapped (Christoph von Recklinghausen) [1766491] - [netdrv] fm10k: fix fm10k_get_fault_pf to read correct address (Neil Horman) [1721716] - [netdrv] fm10k: convert NON_Q_VECTORS(hw) into NON_Q_VECTORS (Neil Horman) [1721716] - [netdrv] fm10k: mark unused parameters with __always_unused (Neil Horman) [1721716] - [netdrv] fm10k: cast page_addr to u8 * when incrementing it (Neil Horman) [1721716] - [netdrv] fm10k: explicitly return 0 on success path in function (Neil Horman) [1721716] - [netdrv] fm10k: remove needless initialization of size local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove needless assignment of err local variable (Neil Horman) [1721716] - [netdrv] fm10k: remove unnecessary variable initializer (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the ring variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the result local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local msg variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the local i variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the tx_buffer variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of the q_idx local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of local err variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce the scope of qv local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of *p local variable (Neil Horman) [1721716] - [netdrv] fm10k: reduce scope of the err variable (Neil Horman) [1721716] - [netdrv] fm10k: Use dev_get_drvdata (Neil Horman) [1721716] - [crypto] crypto: qat - Silence smp_processor_id() warning (Neil Horman) [1723573] - [crypto] crypto: qat - use struct_size() helper (Neil Horman) [1723573] - [crypto] crypto: qat - do not offload zero length requests (Neil Horman) [1723573] - [crypto] crypto: qat - return error for block ciphers for invalid requests (Neil Horman) [1723573] - [crypto] crypto: qat - return proper error code in setkey (Neil Horman) [1723573] - [crypto] crypto: qat - fix block size for aes ctr mode (Neil Horman) [1723573] - [crypto] crypto: qat - update iv after encryption or decryption operations (Neil Horman) [1723573] - [crypto] crypto: qat - add check for negative offset in alg precompute function (Neil Horman) [1723573] - [crypto] crypto: qat - remove spin_lock in qat_ablkcipher_setkey (Neil Horman) [1723573] - [crypto] treewide: Add SPDX license identifier - Makefile/Kconfig (Neil Horman) [1723573] - [crypto] crypto: shash - remove shash_desc::flags (Neil Horman) [1723573] - [crypto] crypto: rsa - unimplement sign/verify for raw RSA backends (Neil Horman) [1723573] - [hv] Revert "hv: vmbus: Implement suspend/resume for VSC drivers for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Ignore the offers when resuming from hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend/resume the vmbus itself for hibernation" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Clean up hv_sock channels by force upon suspend" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Suspend after cleaning up hv_sock and sub channels" (Mohammed Gamal) [1788082] - [hv] Revert "hv: vmbus: Resume after fixing up old primary channels" (Mohammed Gamal) [1788082] - [hv] Revert "vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP" (Mohammed Gamal) [1788082] - [x86] kvm: vmx: Introduce handle_unexpected_vmexit and handle WAITPKG vmexit (Paul Lai) [1494707] - [x86] kvm: vmx: Emulate MSR IA32_UMWAIT_CONTROL (Paul Lai) [1494707] - [x86] kvm: x86: Add support for user wait instructions (Paul Lai) [1494707] - [tools] tools arch x86: Update tools's copy of cpufeatures.h (Paul Lai) [1494707] - [kvm] KVM: x86: expose AVX512_BF16 feature to guest (Paul Lai) [1642539] - [x86] x86/cpufeatures: Enumerate the new AVX512 BFLOAT16 instructions (Paul Lai) [1642539] - [block] rbd: silence bogus uninitialized warning in rbd_object_map_update_finish() (Jeff Layton) [1777961] - [fs] ceph: increment/decrement dio counter on async requests (Jeff Layton) [1777961] - [fs] ceph: take the inode lock before acquiring cap refs (Jeff Layton) [1777961] - [scsi] scsi: lpfc: fix build failure with DEBUGFS disabled (Dick Kennedy) [1784863] - [scsi] Revert "storvsc: setup 1:1 mapping between hardware queue and CPU queue" (Cathy Avery) [1787594] - [tools] perf session: Return error code for perf_session__new() function on failure (Michael Petlan) [1754995] - [tools] perf header: Fix false warning when there are no duplicate cache entries (Michael Petlan) [1776499] - [firmware] efi/memreserve: Register reservations as 'reserved' in /proc/iomem (Bhupesh Sharma) [1772730] - [firmware] efi/memreserve: deal with memreserve entries in unmapped memory (Bhupesh Sharma) [1772730] - [powerpc] powerpc/powernv: Avoid re-registration of imc debugfs directory (Diego Domingos) [1781098] - [powerpc] powerpc/powernv: Return for invalid IMC domain (Diego Domingos) [1781098]- [tools] perf tools: Allow to link with libbpf dynamicaly (Michael Petlan) [1781570] - [tools] perf probe: Fix spelling mistake "addrees" -> "address" (Michael Petlan) [1760227] - [tools] perf probe: Trace a magic number if variable is not found (Michael Petlan) [1760227] - [tools] perf probe: Support DW_AT_const_value constant value (Michael Petlan) [1760227] - [tools] perf probe: Support multiprobe event (Michael Petlan) [1760227] - [tools] perf probe: Generate event name with line number (Michael Petlan) [1760227] - [tools] perf probe: Do not show non representive lines by perf-probe -L (Michael Petlan) [1760227] - [tools] perf probe: Verify given line is a representive line (Michael Petlan) [1760227] - [tools] perf probe: Show correct statement line number by perf probe -l (Michael Petlan) [1760227] - [tools] perf probe: Skip overlapped location on searching variables (Michael Petlan) [1760227] - [tools] perf probe: Fix to show calling lines of inlined functions (Michael Petlan) [1760227] - [tools] perf probe: Filter out instances except for inlined subroutine and subprogram (Michael Petlan) [1760227] - [tools] perf probe: Skip end-of-sequence and non statement lines (Michael Petlan) [1760227] - [tools] perf probe: Return a better scope DIE if there is no best scope (Michael Petlan) [1760227] - [tools] perf probe: Fix to show ranges of variables in functions without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to show inlined function callsite without entry_pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to list probe event with correct line number (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe an inline function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix to probe a function which has no entry pc (Michael Petlan) [1760227] - [tools] perf probe: Fix wrong address verification (Michael Petlan) [1760227] - [tools] perf probe: Fix to show function entry line as probe-able (Michael Petlan) [1760227] - [tools] perf probe: Walk function lines in lexical blocks (Michael Petlan) [1760227] - [tools] perf probe: Fix to find range-only function instance (Michael Petlan) [1760227] - [scsi] qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Added support for MPI and PEP regions for ISP28XX (Himanshu Madhani) [1782598] - [scsi] qla2xxx: Correctly retrieve and interpret active flash region (Himanshu Madhani) [1782598] - [nvme] nvme: Add quirk for LiteON CL1 devices running FW 22301111 (Perry Yuan) [1769179] - [nvme] nvme-pci: Save PCI state before putting drive into deepest state (Perry Yuan) [1769180] - [infiniband] rdma/cxgb4: Fix spelling mistake "immedate" -> "immediate" (Vishal Kulkarni) [1725823] - [infiniband] rdma/cxgb4: Fix null pointer dereference on alloc_skb failure (Vishal Kulkarni) [1725823] - [infiniband] iw_cxgb4: Fix qpid leak (Vishal Kulkarni) [1725823] - [netdrv] net/mlx5e: Use correct enum to determine uplink port (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix concurrency issues between config flow and XSK (mohamad meib) [1786113] - [infiniband] IB/mlx5: Fix steering rule of drop and count (mohamad meib) [1786113] - [netdrv] net/mlx5e: ethtool, Fix analysis of speed setting (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix translation of link mode into speed (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix free peer_flow when refcount is 0 (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix freeing flow with kfree() and not kvfree() (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix SFF 8472 eeprom length (mohamad meib) [1786113] - [netdrv] net/mlx5e: Query global pause state before setting prio2buffer (mohamad meib) [1786113] - [netdrv] net/mlx5e: Fix TXQ indices to be sequential (mohamad meib) [1786113] - [infiniband] RDMA/mlx5: Fix a race with mlx5_ib_update_xlt on an implicit MR (mohamad meib) [1786113] - [netdrv] ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe (Jarod Wilson) [1783853] {CVE-2019-15099} - [netdrv] revert "[netdrv] ice: mark driver as tech-preview" (Jonathan Toppins) [1783062] - [netdrv] ibmvnic: Fix typo in retry check (Steve Best) [1783775] - [netdrv] ibmveth: Detect unsupported packets before sending to the hypervisor (Steve Best) [1784904] - [netdrv] igc: add additional delay during phy hw reset (David Arcari) [1782824] - [net] bridge: fix regression in br_mdb_fill_info() (Petr Oros) [1783888] - [net] bpf: Emit audit messages upon successful prog load and unload (Jiri Olsa) [1781266] - [fs] fuse: fix leak of fuse_io_priv (Miklos Szeredi) [1777009] - [fs] virtiofs: Check contents of options string (Vivek Goyal) [1783426] - [fs] exec: Fix mem leak in kernel_read_file (Eric Sandeen) [1683731] {CVE-2019-8980} - [lib] sbitmap: only queue kyber's wait callback if not already active (Ming Lei) [1784544] - [fs] CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks (Dave Wysochanski) [1788202] - [kernel] ftrace: Check for successful allocation of hash (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Check for empty hash and comment the race with registering probes (Desnes Augusto Nunes do Rosario) [1719414] - [kernel] ftrace: Fix NULL pointer dereference in t_probe_next() (Desnes Augusto Nunes do Rosario) [1719414] - [iommu] vt-d: Allocate reserved region for ISA with correct permission (Jerry Snitselaar) [1778041] - [iommu] set group default domain before creating direct mappings (Jerry Snitselaar) [1778041] - [iommu] vt-d: Fix dmar pte read access not set error (Jerry Snitselaar) [1778041] - [iommu] vt-d: Set ISA bridge reserved region as relaxable (Jerry Snitselaar) [1778041] - [iommu] fix KASAN use-after-free in iommu_insert_resv_region (Auger Eric) [1777014] - [platform] platform/x86: dell-laptop: fix rfkill functionality (Jarod Wilson) [1725878] - [mm] mm/hugetlb: defer freeing of huge pages if in non-task context (Waiman Long) [1780015] - [mm] powerpc/book3s64/hash: Use secondary hash for bolted mapping if the primary is full (Steve Best) [1783159] - [mm] powerpc/pseries: Don't fail hash page table insert for bolted mapping (Steve Best) [1783159] - [powerpc] powerpc/pseries: Don't opencode HPTE_V_BOLTED (Steve Best) [1783159] - [powerpc] powerpc/perf: Disable trace_imc pmu (Steve Best) [1785573] - [powerpc] powerpc/spinlocks: Include correct header for static key (Phil Auld) [1767529] - [powerpc] powerpc/shared: Use static key to detect shared processor (Phil Auld) [1767529] - [powerpc] powerpc/vcpu: Assume dedicated processors as non-preempt (Phil Auld) [1767529] - [arm64] arm64: compat: Workaround Neoverse-N1 #1542419 for compat user-space (Jeremy Linton) [1757828] - [arm64] arm64: Fake the IminLine size on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Hide CTR_EL0.DIC on systems affected by Neoverse-N1 #1542419 (Jeremy Linton) [1757828] - [arm64] arm64: Handle erratum 1418040 as a superset of erratum 1188873 (Jeremy Linton) [1757828] - [arm64] arm64: errata: Add workaround for Cortex-A76 erratum #1463225 (Jeremy Linton) [1757828] - [arm64] arm64: Kconfig: Tidy up errata workaround help text (Jeremy Linton) [1757828] - [arm64] arm64: Apply ARM64_ERRATUM_1188873 to Neoverse-N1 (Jeremy Linton) [1757828] - [arm64] arm64: Add part number for Neoverse N1 (Jeremy Linton) [1757828] - [arm64] arm64: Make ARM64_ERRATUM_1188873 depend on COMPAT (Jeremy Linton) [1757828] - [clocksource] arm64: Restrict ARM64_ERRATUM_1188873 mitigation to AArch32 (Jeremy Linton) [1757828] - [arm64] arm64: arch_timer: avoid unused function warning (Jeremy Linton) [1757828] - [arm64] arm64: Add workaround for Cortex-A76 erratum 1286807 (Jeremy Linton) [1757828]- [kernel] audit: remove redundant condition check in kauditd_thread() (Richard Guy Briggs) [1716002] - [kernel] audit: Report suspicious O_CREAT usage (Richard Guy Briggs) [1716002] - [fs] namei: allow restricted O_CREAT of FIFOs and regular files (Richard Guy Briggs) [1716002] - [kernel] audit_get_nd(): don't unlock parent too early (Richard Guy Briggs) [1716002] - [fs] namei.c: keep track of nd->root refcount status (Richard Guy Briggs) [1716002] - [fs] namei.c: new helper - legitimize_root() (Richard Guy Briggs) [1716002] - [kernel] kill the last users of user_{path, lpath, path_dir}() (Richard Guy Briggs) [1716002] - [kernel] namei.h: get the comments on LOOKUP_... in sync with reality (Richard Guy Briggs) [1716002] - [kernel] kill LOOKUP_NO_EVAL, don't bother including namei.h from audit.h (Richard Guy Briggs) [1716002] - [kernel] audit_inode(): switch to passing AUDIT_INODE_.. (Richard Guy Briggs) [1716002] - [fs] filename_mountpoint(): make LOOKUP_NO_EVAL unconditional there (Richard Guy Briggs) [1716002] - [fs] filename_lookup(): audit_inode() argument is always 0 (Richard Guy Briggs) [1716002] - [kernel] audit: remove the BUG() calls in the audit rule comparison functions (Richard Guy Briggs) [1716002] - [kernel] audit: enforce op for string fields (Richard Guy Briggs) [1716002] - [kernel] audit: deliver signal_info regarless of syscall (Richard Guy Briggs) [1716002] - [fs] fsnotify: fix unlink performance regression (Richard Guy Briggs) [1716002] - [kernel] audit_compare_dname_path(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] audit_update_watch(): switch to const struct qstr * (Richard Guy Briggs) [1716002] - [fs] inotify_handle_event(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: switch send_to_group() and ->handle_event to const struct qstr * (Richard Guy Briggs) [1716002] - [kernel] fsnotify(): switch to passing const struct qstr * for file_name (Richard Guy Briggs) [1716002] - [kernel] switch fsnotify_move() to passing const struct qstr * for old_name (Richard Guy Briggs) [1716002] - [fs] ovl_lookup_real_one(): don't bother with strlen() (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memory leak bug (Richard Guy Briggs) [1716002] - [kernel] audit: purge unnecessary list_empty calls (Richard Guy Briggs) [1716002] - [security] audit: link integrity evm_write_xattrs record to syscall event (Richard Guy Briggs) [1716002] - [csky] syscall_get_arch: add "struct task_struct *" argument (Richard Guy Briggs) [1716002] - [kernel] audit: Make audit_log_cap and audit_copy_inode static (Richard Guy Briggs) [1716002] - [kernel] audit: connect LOGIN record to its syscall record (Richard Guy Briggs) [1716002] - [kernel] audit: fix a memleak caused by auditing load module (Richard Guy Briggs) [1716002] - [kernel] fanotify: check FS_ISDIR flag instead of d_is_dir() (Richard Guy Briggs) [1716002] - [kernel] fsnotify: report FS_ISDIR flag with MOVE_SELF and DELETE_SELF events (Richard Guy Briggs) [1716002] - [kernel] fsnotify: annotate directory entry modification events (Richard Guy Briggs) [1716002] - [kernel] audit: mark expected switch fall-through (Richard Guy Briggs) [1716002] - [kernel] audit: hide auditsc_get_stamp and audit_serial prototypes (Richard Guy Briggs) [1716002] - [tty] audit: join tty records to their syscall (Richard Guy Briggs) [1716002] - [kernel] audit: remove audit_context when CONFIG_ AUDIT and not AUDITSYSCALL (Richard Guy Briggs) [1716002] - [kernel] audit: remove unused actx param from audit_rule_match (Richard Guy Briggs) [1716002] - [kernel] audit: ignore fcaps on umount (Richard Guy Briggs) [1716002] - [kernel] audit: clean up AUDITSYSCALL prototypes and stubs (Richard Guy Briggs) [1716002] - [kernel] audit: more filter PATH records keyed on filesystem magic (Richard Guy Briggs) [1716002] - [kernel] audit: add support for fcaps v3 (Richard Guy Briggs) [1716002] - [kernel] audit: move loginuid and sessionid from CONFIG_AUDITSYSCALL to CONFIG_AUDIT (Richard Guy Briggs) [1716002] - [kernel] audit: add syscall information to CONFIG_CHANGE records (Richard Guy Briggs) [1716002] - [kernel] audit: hand taken context to audit_kill_trees for syscall logging (Richard Guy Briggs) [1716002] - [kernel] audit: give a clue what CONFIG_CHANGE op was involved (Richard Guy Briggs) [1716002] - [kernel] audit: remove duplicated include from audit.c (Richard Guy Briggs) [1716002] - [kernel] audit: shorten PATH cap values when zero (Richard Guy Briggs) [1716002] - [kernel] audit: use current whenever possible (Richard Guy Briggs) [1716002] - [kernel] audit: minimize our use of audit_log_format() (Richard Guy Briggs) [1716002] - [kernel] audit: remove WATCH and TREE config options (Richard Guy Briggs) [1716002] - [kernel] audit: use session_info helper (Richard Guy Briggs) [1716002] - [kernel] audit: localize audit_log_session_info prototype (Richard Guy Briggs) [1716002] - [kernel] audit: Use 'mark' name for fsnotify_mark variables (Richard Guy Briggs) [1716002] - [kernel] audit: Replace chunk attached to mark instead of replacing mark (Richard Guy Briggs) [1716002] - [kernel] audit: Simplify locking around untag_chunk() (Richard Guy Briggs) [1716002] - [kernel] audit: Drop all unused chunk nodes during deletion (Richard Guy Briggs) [1716002] - [kernel] audit: Guarantee forward progress of chunk untagging (Richard Guy Briggs) [1716002] - [kernel] audit: Allocate fsnotify mark independently of chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Provide helper for dropping mark's chunk reference (Richard Guy Briggs) [1716002] - [kernel] audit: Remove pointless check in insert_hash() (Richard Guy Briggs) [1716002] - [kernel] audit: Factor out chunk replacement code (Richard Guy Briggs) [1716002] - [kernel] audit: Make hash table insertion safe against concurrent lookups (Richard Guy Briggs) [1716002] - [kernel] audit: Embed key into chunk (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible tagging failures (Richard Guy Briggs) [1716002] - [kernel] audit: Fix possible spurious -ENOSPC error (Richard Guy Briggs) [1716002] - [kernel] audit_tree: Remove mark->lock locking (Richard Guy Briggs) [1716002] - [kernel] audit: print empty EXECVE args (Richard Guy Briggs) [1716002] - [security] evm: fix return value check in evm_write_xattrs() (Richard Guy Briggs) [1716002] - [kernel] audit: fix use-after-free in audit_add_watch (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_real_ts64() for timestamps (Richard Guy Briggs) [1716002] - [kernel] audit: use ktime_get_coarse_ts64() for time access (Richard Guy Briggs) [1716002] - [kernel] audit: simplify audit_enabled check in audit_watch_log_rule_change() (Richard Guy Briggs) [1716002] - [kernel] audit: check audit_enabled in audit_tree_log_remove_rule() (Richard Guy Briggs) [1716002] - [kernel] cred: conditionally declare groups-related functions (Richard Guy Briggs) [1716002] - [kernel] audit: eliminate audit_enabled magic number comparison (Richard Guy Briggs) [1716002] - [kernel] audit: Fix extended comparison of GID/EGID (Richard Guy Briggs) [1716002] - [kernel] audit: tie ANOM_ABEND records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: tie SECCOMP records to syscall (Richard Guy Briggs) [1716002] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1716002] - [documentation] admin guide/pm: Admin guide for intel-speed-select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display TRL buckets for just base config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Ignore missing config level (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Increment version (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use core count for base-freq mask (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Support platform with limited Intel(R) Speed Select (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use Frequency weight for CLOS (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make CLOS frequency in MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Use mailbox for CLOS_PM_QOS_CONFIG (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Auto mode for CLX (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Correct CLX-N frequency units (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change display of "avx" to "avx2" (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend command set for perf-profile (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement base-freq commands on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement 'perf-profile info' on CascadeLake-N (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Implement CascadeLake-N help and command functions structures (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add check for CascadeLake-N models (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Make process_command generic (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add int argument to command functions (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Refuse to disable core-power when getting used (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Turbo-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Base-freq feature auto mode (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Remove warning for unused result (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix perf-profile command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Extend core-power command set (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix some debug prints (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Format get-assoc information (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Allow online/offline based on tdp (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix high priority core mask over count (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Display core count for bucket (Prarit Bhargava) [1766228] - [platform] x86: isst: Allow additional TRL MSRs (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix memory leak (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output success/failed for command output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Output human readable CPU list (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Change turbo ratio output to maximum turbo frequency (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Switch output to MHz (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Simplify output for turbo-freq and base-freq (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix cpu-count output (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix help option typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix package typo (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Fix a read overflow in isst_set_tdp_level_msr() (Prarit Bhargava) [1766228] - [platform] x86: isst: Use dev_get_drvdata (Prarit Bhargava) [1766228] - [tools] power/x86/intel-speed-select: Add .gitignore file (Prarit Bhargava) [1766228] - [tools] tools/power/x86: A tool to validate Intel Speed Select commands (Prarit Bhargava) [1766228] - [platform] x86: isst: Restore state on resume (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select PUNIT MSR interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via MSRs (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mailbox interface via PCI (Prarit Bhargava) [1766228] - [platform] x86: isst: Add Intel Speed Select mmio interface (Prarit Bhargava) [1766228] - [platform] x86: isst: Add IOCTL to Translate Linux logical CPU to PUNIT CPU number (Prarit Bhargava) [1766228] - [platform] x86: isst: Store per CPU information (Prarit Bhargava) [1766228] - [platform] x86: isst: Add common API to register and handle ioctls (Prarit Bhargava) [1766228] - [documentation] platform/x86: isst: Update ioctl-number.txt for Intel Speed Select interface (Prarit Bhargava) [1766228]- [tools] libbpf: Refactor relocation handling (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix call relocation offset calculation bug (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix bpf_object name determination for bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] libbpf: return previous print callback from libbpf_set_print (Yauheni Kaliuta) [1772081] - [tools] libbpf: fix bpf_object__name() to actually return object name (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Make CO-RE reloc test impartial to test_progs flavor (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add BPF_CORE_READ and BPF_CORE_READ_STR_INTO macro tests (Yauheni Kaliuta) [1772081] - [tools] bpftool: Allow to read btf as raw data (Yauheni Kaliuta) [1772081] - [tools] bpftool: implement "bpftool btf show|list" (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_btf_get_next_id() to cycle through BTF objects (Jiri Olsa) [1772081] - [tools] libbpf: refactor bpf_*_get_next_id() functions (Yauheni Kaliuta) [1772081] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1772081] - [tools] libbpf: attempt to load kernel BTF from sysfs first (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add getter for program size (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_get_link_xdp_info() function to get more XDP information (Yauheni Kaliuta) [1772081] - [tools] libbpf: Use pr_warn() when printing netlink errors (Yauheni Kaliuta) [1772081] - [tools] libbpf: Propagate EPERM to caller on program load (Yauheni Kaliuta) [1772081] - [tools] libbpf: Unpin auto-pinned maps if loading fails (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add auto-pinning of maps when loading BPF objects (Yauheni Kaliuta) [1772081] - [tools] libbpf: Teach bpf_object__open to guess program types (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add bpf_program__get_{type, expected_attach_type) APIs (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move directory creation into _pin() functions (Yauheni Kaliuta) [1772081] - [tools] libbpf: Store map pin path and status in struct bpf_map (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix error handling in bpf_map__reuse_fd() (Yauheni Kaliuta) [1772081] - [tools] libbpf: Make DECLARE_LIBBPF_OPTS macro strictly a variable declaration (Yauheni Kaliuta) [1772081] - [tools] bpftool: Fix bpftool build by switching to bpf_object__open_file() (Yauheni Kaliuta) [1772081] - [tools] bpf: Rename pr_warning to pr_warn to align with kernel logging (Yauheni Kaliuta) [1772081] - [tools] libbpf: provide more helpful message on uninitialized global var (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Add field existence CO-RE relocs tests (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add support for field existance CO-RE relocation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Update BTF reloc support to latest Clang format (Yauheni Kaliuta) [1772081] - [tools] libbpf: Add BPF_CORE_READ/BPF_CORE_READ_INTO helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: Refactor bpf_object__open APIs to use common opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: Move bpf_{helpers, helper_defs, endian, tracing}.h into libbpf (Jiri Olsa) [1772081] - [tools] uapi/bpf: fix helper docs (Yauheni Kaliuta) [1772081] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1772081] - [uapi] bpf: fix 'struct pt_reg' typo in documentation (Yauheni Kaliuta) [1772081] - [tools] libbpf: Fix BTF-defined map's __type macro handling of arrays (Yauheni Kaliuta) [1772081] - [scripts] bpf: Print an error when known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Emit an #error directive known types list needs updating (Yauheni Kaliuta) [1772081] - [scripts] bpf: Fix xdp_md forward declaration typo (Yauheni Kaliuta) [1772081] - [scripts] bpf: teach bpf_helpers_doc.py to dump BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Split off tracing-only helpers into bpf_tracing.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: samples/bpf: Split off legacy stuff from bpf_helpers.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Undo GCC-specific bpf_helpers.h changes (Yauheni Kaliuta) [1772081] - [tools] libbpf: auto-generate list of BPF helper definitions (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add bpf-gcc support (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: bpf_tcp_gen_syncookie->bpf_helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: relicense bpf_helpers.h and bpf_endian.h (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: introduce bpf_cpu_to_be64 and bpf_be64_to_cpu (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: Adjust CO-RE reloc tests for new bpf_core_read() macro (Yauheni Kaliuta) [1772081] - [tools] bpf: fix core_reloc.c compilation error (Yauheni Kaliuta) [1772081] - [tools] libbpf: add bpf_object__open_{file, mem} w/ extensible opts (Yauheni Kaliuta) [1772081] - [tools] libbpf: make libbpf.map source of truth for libbpf version (Yauheni Kaliuta) [1772081] - [tools] libbpf: stop enforcing kern_version, populate it for users (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs misc tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ints tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs ptr-as-array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs modifiers/typedef tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs enum/ptr/func_proto tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs array tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs nesting tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs struct flavors tests (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add CO-RE relocs testing setup (Yauheni Kaliuta) [1772081] - [tools] selftests/bpf: add BPF_CORE_READ relocatable read macro (Yauheni Kaliuta) [1772081] - [tools] libbpf: implement BPF CO-RE offset relocation algorithm (Yauheni Kaliuta) [1772081] - [tools] libbpf: add .BTF.ext offset relocation section loading (Yauheni Kaliuta) [1772081] - [tools] libbpf: convert libbpf code to use new btf helpers (Yauheni Kaliuta) [1772081] - [tools] libbpf: add helpers for working with BTF types (Yauheni Kaliuta) [1772081] - [gpu] drm/i915: Add new CNL PCH ID seen on a CML platform (Lyude Paul) [1771779] - [gpu] drm/amdgpu: add warning for GRBM 1-cycle delay issue in gfx9 (Lyude Paul) [1771779] - [gpu] drm/amdgpu: register gpu instance before fan boost feature enablment (Lyude Paul) [1771779] - [gpu] drm/amd/swsmu: fix smu workload bit map error (Lyude Paul) [1771779] - [gpu] drm/amdgpu: dont schedule jobs while in reset (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Try to acquire the page lock around set_page_dirty() (Lyude Paul) [1771779] - [gpu] drm/i915/pmu: "Frequency" is reported as accumulated cycles (Lyude Paul) [1771779] - [gpu] drm/i915: Don't oops in dumb_create ioctl if we have no crtcs (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: issue no PPSMC_MSG_GetCurrPkgPwr on unsupported ASICs (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff on original raven (Lyude Paul) [1771779] - [gpu] drm/amdgpu: disable gfxoff when using register read interface (Lyude Paul) [1771779] - [gpu] revert "drm/i915/ehl: Update MOCS table for EHL" (Lyude Paul) [1771779] - [gpu] drm/i915: update rawclk also on resume (Lyude Paul) [1771779] - [gpu] dc.c:use kzalloc without test (Lyude Paul) [1771779] - [gpu] drm/amd/display: Passive DP->HDMI dongle detection fix (Lyude Paul) [1771779] - [gpu] drm/amd/display: add 50us buffer as WA for pstate switch in active (Lyude Paul) [1771779] - [gpu] drm/amd/display: do not synchronize "drr" displays (Lyude Paul) [1771779] - [gpu] drm/amdgpu: If amdgpu_ib_schedule fails return back the error (Lyude Paul) [1771779] - [gpu] drm/sched: Set error to s_fence if HW job submission failed (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: do not execute 0-sized IBs (v2) (Lyude Paul) [1771779] - [gpu] drm/radeon: fix si_enable_smc_cac() failed issue (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix error handling in amdgpu_bo_list_create (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix potential VM faults (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix SDMA hang when performing VKexample test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/powerplay/vega10: allow undervolting in p7 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gfx10: update gfx golden settings (Lyude Paul) [1771779] - [gpu] drm/i915: Fix PCH reference clock for FDI on HSW/BDW (Lyude Paul) [1771779] - [gpu] drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: user pages array memory leak fix (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd7: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/uvd6: fix allocation size in enc ring test (v2) (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vcn: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/amdgpu/vce: fix allocation size in enc ring test (Lyude Paul) [1771779] - [gpu] drm/i915: Favor last VBT child device with conflicting AUX ch/DDC pin (Lyude Paul) [1771779] - [gpu] drm/i915/userptr: Never allow userptr into the mappable GGTT (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1 (Lyude Paul) [1771779] - [gpu] drm/ttm: Restore ttm prefaulting (Lyude Paul) [1771779] - [gpu] drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50 (Lyude Paul) [1771779] - [gpu] drm/amd/display: memory leak (Lyude Paul) [1771779] - [gpu] drm/amdgpu: fix multiple memory leaks in acp_hw_init (Lyude Paul) [1771779] - [gpu] drm: Clear the fence pointer when writeback job signaled (Lyude Paul) [1771779] - [gpu] drm: Free the writeback_job when it with an empty fb (Lyude Paul) [1771779] - [gpu] drm/i915: Mark contents as dirty on a write fault (Lyude Paul) [1771779] - [gpu] drm/i915: Whitelist COMMON_SLICE_CHICKEN2 (Lyude Paul) [1771779] - [gpu] drm/i915: Bump skl+ max plane width to 5k for linear/x-tiled (Lyude Paul) [1771779] - [gpu] drm/i915: Perform GGTT restore much earlier during resume (Lyude Paul) [1771779] - [gpu] drm/radeon: Bail earlier when radeon.cik_/si_support=0 is passed (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Check for valid number of registers to read (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix KFD-related kernel oops on Hawaii (Lyude Paul) [1771779] - [gpu] drm/i915: to make vgpu ppgtt notificaiton as atomic operation (Lyude Paul) [1771779] - [gpu] drm/i915/gvt: update vgpu workload head pointer correctly (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay: change metrics update period from 1ms to 100ms (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/nv50-: Don't create MSTMs for eDP connectors (Lyude Paul) [1771779] - [gpu] drm/atomic: Take the atomic toys away from X (Lyude Paul) [1771779] - [gpu] drm/atomic: Reject FLIP_ASYNC unconditionally (Lyude Paul) [1771779] - [gpu] drm/i915/dp: Fix dsc bpp calculations, v5 (Lyude Paul) [1771779] - [dma-buf] sw_sync: Synchronize signal vs syncpt free (Lyude Paul) [1771779] - [gpu] drm/amdgpu/si: fix ASIC tests (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix trigger not generated for freesync (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix MPO HUBP underflow with Scatter Gather (Lyude Paul) [1771779] - [gpu] drm/amd/powerpaly: fix navi series custom peak level value error (Lyude Paul) [1771779] - [gpu] drm/amd/display: support spdif (Lyude Paul) [1771779] - [gpu] drm/nouveau/volt: Fix for some cards having 0 maximum voltage (Lyude Paul) [1771779] - [gpu] drm/nouveau/kms/tu102-: disable input lut when input is already FP16 (Lyude Paul) [1771779] - [gpu] drm/amdgpu/sdma5: fix number of sdma5 trap irq types for navi1x (Lyude Paul) [1771779] - [gpu] drm/amd/display: Register VUPDATE_NO_LOCK interrupts for DCN2 (Lyude Paul) [1771779] - [gpu] drm/amd/display: reprogram VM config when system resume (Lyude Paul) [1771779] - [gpu] drm/amd/display: Fix frames_to_insert math (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix issue where 252-255 values are clipped (Lyude Paul) [1771779] - [gpu] drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property() (Lyude Paul) [1771779] - [gpu] revert "drm/radeon: Fix EEH during kexec" (Lyude Paul) [1771779] - [gpu] drm/amd/display: Use proper enum conversion functions (Lyude Paul) [1771779] - [gpu] drm/amdgpu: Fix hard hang for S/G display BOs (Lyude Paul) [1771779] - [gpu] drm/panel: check failure cases in the probe func (Lyude Paul) [1771779] - [gpu] drm/bridge: sii902x: fix missing reference to mclk clock (Lyude Paul) [1771779] - [gpu] drm/tinydrm/kconfig: Select BACKLIGHT_CLASS_DEVICE (Lyude Paul) [1771779] - [video] ssd1307fb: Start page range at page_offset (Lyude Paul) [1771779] - [gpu] drm/amd/display: Copy GSL groups when committing a new context (Lyude Paul) [1771779] - [gpu] drm/amd/display: Clear FEC_READY shadow register if DPCD write fails (Lyude Paul) [1771779] - [gpu] drm/amd/display: fix not calling ppsmu to trigger PME (Lyude Paul) [1771779] - [gpu] drm/amd/display: Power-gate all DSCs at driver init time (Lyude Paul) [1771779] - [gpu] drm/amd/display: add monitor patch to add T7 delay (Lyude Paul) [1771779] - [gpu] drm/panel: simple: fix AUO g185han01 horizontal blanking (Lyude Paul) [1771779] - [gpu] drm/vkms: Avoid assigning 0 for possible_crtc (Lyude Paul) [1771779] - [gpu] drm/bridge: tc358767: Increase AUX transfer length limit (Lyude Paul) [1771779] - [gpu] drm/vkms: Fix crc worker races (Lyude Paul) [1771779] - [gpu] drm/amdgpu/display: fix 64 bit divide (Lyude Paul) [1771779] - [gpu] drm/amd/display: Add missing HBM support and raise Vega20's uclk (Lyude Paul) [1771779] - [gpu] drm/amd/display: dce11.x /dce12 update formula input (Lyude Paul) [1771779] - [gpu] drm/amd/display: Restore backlight brightness after system resume (Lyude Paul) [1771779] - [gpu] drm: fix module name in edid_firmware log message (Lyude Paul) [1771779] - [gpu] drm/amd/powerplay/smu7: enforce minimal VBITimeout (v2) (Lyude Paul) [1771779] - [gpu] drm/amd/display: readd -msse2 to prevent Clang from emitting libcalls to undefined SW FP routines (Lyude Paul) [1771779] - [gpu] drm/amd/display: Don't replace the dc_state for fast updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Skip determining update type for async updates (Lyude Paul) [1771779] - [gpu] drm/amd/display: Allow cursor async updates for framebuffer swaps (Lyude Paul) [1771779] - [include] sk_buff: fix skb_ext_put() and skb_ext_reset() calls (Ivan Vecera) [1779923] - [net] openvswitch: fix flow command message size (Paolo Abeni) [1776765] - [net] netfilter: nf_tables: add SECMARK support (Phil Sutter) [1715851] - [net] netfilter: nf_tables: add requirements for connsecmark support (Phil Sutter) [1715851] - [wireless] mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring (Jarod Wilson) [1781534] {CVE-2019-19057} - [tools] selftests/powerpc: Disable basic EEH selftest (Steve Best) [1782232] - [x86] kvm: x86: Remove a spurious export of a static function (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: use MSR_IA32_TSX_CTRL to hard-disable TSX on guest that lack it (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: vmx: implement MSR_IA32_TSX_CTRL disable RTM functionality (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: implement MSR_IA32_TSX_CTRL effect on CPUID (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: do not modify masked bits of shared MSRs (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm: x86: fix presentation of TSX feature in ARCH_CAPABILITIES (Paolo Bonzini) [1779553] {CVE-2019-19338} - [x86] kvm/x86: Export MDS_NO=0 to guests when TSX is enabled (Paolo Bonzini) [1779553] {CVE-2019-19338} - [fs] cifs: Close open handle after interrupted close (Leif Sahlberg) [1771691] - [fs] cifs: Do not miss cancelled OPEN responses (Leif Sahlberg) [1771691] - [fs] cifs: Fix NULL pointer dereference in mid callback (Leif Sahlberg) [1771691] - [fs] cifs: add a debug macro that prints \\server\share for errors (Leif Sahlberg) [1772630] - [fs] cifs: add new debugging macro cifs_server_dbg (Leif Sahlberg) [1772630]- [netdrv] wireless: fix nl80211 vendor commands (Jarod Wilson) [1776606] - [net] nl80211: fix VENDOR_CMD_RAW_DATA (Jarod Wilson) [1776606] - [netdrv] rt2x00: initialize last_reset (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't consider IV len in A-MSDU (Jarod Wilson) [1776606] - [net] mac80211: fix station inactive_time shortly after boot (Jarod Wilson) [1776606] - [net] mac80211: fix ieee80211_txq_setup_flows() failure path (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support new API for scan config cmd (Jarod Wilson) [1776606] - [netdrv] mt76: dma: fix buffer unmap with non-linear skbs (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2e: disable pcie_aspm by default (Jarod Wilson) [1776606] - [net] nl80211: fix validation of mesh path nexthop (Jarod Wilson) [1776606] - [net] nl80211: Disallow setting of HT for channel 14 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix problem of too small skb->len (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: 0x2720 is qu and 0x30DC is not (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add workaround for power gating in integrated 22000 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle iwl_mvm_tvqm_enable_txq() error return (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix all 9460 entries for qnj (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix potential overflow on P2P code (Jarod Wilson) [1775223 1776606] {CVE-2019-17666} - [netdrv] iwlwifi: pcie: fix merge damage on making QnJ exclusive (Jarod Wilson) [1776606] - [netdrv] ath10k: fix latency issue for QCA988x (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: change qu with jf devices to use qu configuration (Jarod Wilson) [1776606] - [netdrv] iwlwifi: exclude GEO SAR support for 3168 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix memory leaks in iwl_pcie_ctxt_info_gen3_init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix memory leak in alloc_sgtable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix rb_allocator workqueue allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix indexing in command dump for new HW (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix race in sync rx queue notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: force single phy init (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix ACPI table revision checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't access trans_cfg via cfg (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove input-polldev.h header (Jarod Wilson) [1776606] - [net] mac80211: Don't access sk_queue_head->next directly (Jarod Wilson) [1776606] - [net] mac80211: fix scan when operating on DFS channels in ETSI domains (Jarod Wilson) [1776606] - [net] mac80211: accept deauth frames in IBSS mode (Jarod Wilson) [1776606] - [net] cfg80211: fix a bunch of RCU issues in multi-bssid code (Jarod Wilson) [1776606] - [net] nl80211: fix memory leak in nl80211_get_ftm_responder_stats (Jarod Wilson) [1776606] - [net] cfg80211: wext: avoid copying malformed SSIDs (Jarod Wilson) [1778634 1776606] {CVE-2019-17133} - [net] mac80211: Reject malformed SSID elements (Jarod Wilson) [1776606] - [net] mac80211: keep BHs disabled while calling drv_tx_wake_queue() (Jarod Wilson) [1776606] - [net] mac80211: fix txq null pointer dereference (Jarod Wilson) [1776606] - [net] nl80211: fix null pointer dereference (Jarod Wilson) [1776606] - [net] cfg80211: initialize on-stack chandefs (Jarod Wilson) [1776606] - [net] cfg80211: validate SSID/MBSSID element ordering assumption (Jarod Wilson) [1776606] - [net] nl80211: validate beacon head (Jarod Wilson) [1776606] - [net] cfg80211: Purge frame registrations on iftype change (Jarod Wilson) [1776606] - [net] cfg80211: Do not compare with boolean in nl80211_common_reg_change_event (Jarod Wilson) [1776606] - [net] cfg80211: always shut down on HW rfkill (Jarod Wilson) [1776606] - [net] cfg80211: fix boundary value in ieee80211_frequency_to_channel() (Jarod Wilson) [1776606] - [net] cfg80211: add local BSS receive time to survey information (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_CMD_UPDATE_FT_IES to supported commands (Jarod Wilson) [1776606] - [netdrv] wireless: Fix Kconfig indentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw: don't send GEO_TX_POWER_LIMIT command to FW version 36 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix mt7615 firmware path definitions (Jarod Wilson) [1776606] - [netdrv] rtw88: configure firmware after HCI started (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: release tx skbs DMAed when stop (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: extract skbs free routine for trx rings (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix build w/o CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] rtw88: report RX power for each antenna (Jarod Wilson) [1776606] - [netdrv] rtw88: fix wrong rx power calculation (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192de: replace _rtl92d_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: replace _rtl92c_evm_db_to_percentage with generic version (Jarod Wilson) [1776606] - [netdrv] rtw88: allows to receive AMSDU in AMPDU (Jarod Wilson) [1776606] - [netdrv] rtw88: add dynamic cck pd mechanism (Jarod Wilson) [1776606] - [netdrv] rtw88: move IQK/DPK into phy_calibration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add SW DPK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add FW IQK support (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: Enable interrupt migration (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update pwr_seq to v13 (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update PHY parameter to v38 (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: rtl8192ce: rtl8192de: rtl8723ae: rtl8821ae: Remove some unused bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723be: Remove unused SET_XXX and GET_XXX macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8723ae: Remove unused GET_XXX and SET_XXX macros (Jarod Wilson) [1776606] - [netdrv] brcmsmac: Use DIV_ROUND_CLOSEST directly to make it readable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: make array static const and remove redundant assignment (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't realloc wiphy during PCIe reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: split brcmf_attach() and brcmf_detach() functions (Jarod Wilson) [1776606] - [netdrv] brcmfmac: move "cfg80211_ops" pointer to another struct (Jarod Wilson) [1776606] - [netdrv] ath10k: fix channel info parsing for non tlv target (Jarod Wilson) [1776606] - [netdrv] ath10k: adjust skb length in ath10k_sdio_mbox_rx_packet (Jarod Wilson) [1776606] - [netdrv] ath10k: free beacon buf later in vdev teardown (Jarod Wilson) [1776606] - [net] mac80211: allow drivers to set max MTU (Jarod Wilson) [1776606] - [net] mac80211: ibss: send deauth when expiring inactive STAs (Jarod Wilson) [1776606] - [net] mac80211: don't check if key is NULL in ieee80211_key_link() (Jarod Wilson) [1776606] - [net] mac80211: clear crypto tx tailroom counter upon keys enable (Jarod Wilson) [1776606] - [net] mac80211: remove unnecessary key condition (Jarod Wilson) [1776606] - [net] mac80211: list features in WEP/TKIP disable in better order (Jarod Wilson) [1776606] - [net] mac80211: vht: add support VHT EXT NSS BW in parsing VHT (Jarod Wilson) [1776606] - [netdrv] ath9k: release allocated buffer if timed out (Jarod Wilson) [1778582 1776606] {CVE-2019-19074} - [netdrv] ath9k_htc: release allocated buffer if timed out (Jarod Wilson) [1778572 1776606] {CVE-2019-19073} - [netdrv] ath9k: Remove unneeded variable to store return value (Jarod Wilson) [1776606] - [netdrv] ath10k: add reorder and change PN check logic for mac80211 (Jarod Wilson) [1776606] - [netdrv] ath10k: add mic bytes for pmf management packet (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] hostap: use *ph to print small buffer (Jarod Wilson) [1776606] - [netdrv] rtlwifi: Fix file release memory leak (Jarod Wilson) [1776606] - [netdrv] rtw88: fix seq_file memory leak (Jarod Wilson) [1776606] - [netdrv] hostap: remove set but not used variable 'copied' in prism2_io_debug_proc_read (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add "reset" debugfs entry for testing reset (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add stub version of brcmf_debugfs_get_devdir() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: remove iwl_fw_cancel_dumps function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periodic trigger (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix dump structs doc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: add DRAM buffer allocation command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove apply point, switch to time point API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add iwl_tlv_array_len() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't log un-decrypted frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add support for single antenna diversity (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: handle BAR_FRAME_RELEASE (0xc2) notification (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: drop BA sessions on too many old-SN frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add sta_id to WOWLAN_CONFIG_CMD (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for suspend-resume flow for new device generation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix warning iwl-trans.h is included more than once (Jarod Wilson) [1776606] - [netdrv] iwlwifi: always access the trans configuration via trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_trans instead of cfg to some functions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add a pointer to the trans_cfg directly in trans (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pass the iwl_config_trans_params when needed (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: set iwl_trans->cfg later in the probe function (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: move some cfg mangling from trans_pcie_alloc to probe (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: use the cfg we passed to iwl_trans_pcie_alloc() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: separate elements from cfg that are needed by trans_alloc (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use regions ops array instead of switch case in dump flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: make a single ops struct for paging collect (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move tx fifo data into fw runtime (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list for dump TLVs during dump creation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: separate cfg and dump flows to different modules (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: look for the first supported channel when add/remove phy ctxt (Jarod Wilson) [1776606] - [netdrv] iwlwifi: allocate bigger nvm data in case of UHB (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unnecessary IWL_DEVICE_AX200_COMMON definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: align wrt log prints to the same format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove debug flow TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: verify debug TLVs at allocation phase (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use function to check if ini dbg mode is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove duplicate FW string definitions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 50 for 22000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: api: fix FTM struct documentation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support per-platform antenna gain (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove check for lq_sta in __iwl_mvm_rs_tx_status() (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: simplify the channel switch flow for newer firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: stop passing bogus gfp flags arguments to dma_alloc_coherent (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove periphery phy and aux regions handling (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use linked list to store debug TLVs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: maintain buffer allocations from trans instead of TLVs buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: add debug periphery registers to 9000 device family (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove unused regdb_ptrs allocation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: align dbg tlv functions names to a single format (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: don't pass large argument by value (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove pm_runtime completely (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the d0i3 related module parameters (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove some more d0i3 code from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: remove the refs / unrefs from the transport (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the opmode's d0i3 handlers (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove runtime_pm_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Set w-pointer upon resume according to SN (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: use FW thermal monitoring regardless of CONFIG_THERMAL (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: name magic numbers with enum (Jarod Wilson) [1776606] - [netdrv] iwlwifi: scan: add support for new scan request command version (Jarod Wilson) [1776606] - [netdrv] iwlwifi: LTR updates (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove the code under IWLWIFI_PCIE_RTPM (Jarod Wilson) [1776606] - [netdrv] iwlwifi: trans: remove suspending flag (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove CMD_HIGH_PRIO (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove last leftovers of d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove iwl_mvm_update_d0i3_power_mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove d0i3_ap_sta_id (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: iwl_mvm_wowlan_config_key_params is for wowlan only (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the d0i3 entry/exit flow (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove the tx defer for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove all the d0i3 references (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: start to remove the code for d0i3 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add the skb length to a print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix scan config command size (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add ldbg config cmd debug print (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: support debug recording suspend resume command (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move debug recording stop from trans to op mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move monitor recording functionality from header file (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unnecessary forward declarations (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Block 26-tone RU OFDMA transmissions (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove redundant condition in iwl_mvm_set_hw_rfkill_state (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Send DQA enable command only if TVL is on (Jarod Wilson) [1776606] - [netdrv] iwlwifi: bump FW API to 49 for 22000 series (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support to read temperature from mcu (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_txwi_to_txp utility routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use devm_platform_ioremap_resource() to simplify code (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove unneeded return value on set channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: remove redundant chandef copy (Jarod Wilson) [1776606] - [netdrv] mt76: make mt76_rx_convert static (Jarod Wilson) [1776606] - [netdrv] mt76: remove offchannel check in tx scheduling (Jarod Wilson) [1776606] - [netdrv] mt76: do not send BAR frame on tx aggregation flush stop (Jarod Wilson) [1776606] - [netdrv] mt76: stop rx aggregation on station removal (Jarod Wilson) [1776606] - [netdrv] mt76: dma: reset q->rx_head on rx reset (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: apply calibration-free data from OTP (Jarod Wilson) [1776606] - [netdrv] mt76: add default implementation for mt76_sw_scan/mt76_sw_scan_complete (Jarod Wilson) [1776606] - [netdrv] mt76: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add BIP_CMAC_128 cipher support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove unnecessary mcu queue initialization (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_tx_tasklet in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: move survey_time in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable survey support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: enable multi-vif support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: do not copy beacon skb in mt76x02_mac_set_beacon_enable (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: introduce mt76x02_pre_tbtt_enable and mt76x02_beacon_enable macros (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add Smart Carrier Sense support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rework locking scheme for mt7615_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: switch to SPDX tag instead of verbose boilerplate text (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix some checkpatch warnings (Jarod Wilson) [1776606] - [netdrv] mt76: Add paragraphs to describe the config symbols fully (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update cw_min/max related settings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add 4 WMM sets support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix watchdog rescheduling in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix MT7615_WATCHDOG_TIME definition (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_mmio_read_copy routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add set_key_cmd and mt76_wcid to mt7615_mac_wtbl_set_key signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove wtbl_sec_key definition (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mac_wtbl_set_key routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add mt7615_mac_wtbl_addr routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mac_get_key_info in mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add missing register initialization (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: add support to TP-Link T2UHP (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: remove unneeded {put,get}_unaligned (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix endian in mt76u_copy (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix invalid fallback rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix PS buffering of action frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix using VHT STBC rates (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: fix typo in mt76u_fill_rx_sg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: sync with mt7603 rate control changes (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: reset rate index/counters on rate table update (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: move mt7615_mcu_set_rates to mac.c (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable hardware rate up/down selection (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_mcu_send_ram_firmware routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: always release sem in mt7615_load_patch (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fall back to sw encryption for unsupported ciphers (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: clean up FWDL TXQ during/after firmware upload (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add radar pattern test knob to debugfs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add csa support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not perform txcalibration before cac is complited (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add hw dfs pattern detector support (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: introduce mt7615_regd_notifier (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: restricted __le16 degrades to integer (Jarod Wilson) [1776606] - [netdrv] mt76: round up length on mt76_wr_copy (Jarod Wilson) [1776606] - [netdrv] ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe() (Jarod Wilson) [1776606] - [netdrv] ath6kl: Fix a possible null-pointer dereference in ath6kl_htc_mbox_create() (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set ackto to max timeout in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: set max timeout according to channel width (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: properly set last timeout timestamp in ath_dynack_reset (Jarod Wilson) [1776606] - [netdrv] ath9k: dyanck: introduce ath_dynack_set_timeout routine (Jarod Wilson) [1776606] - [netdrv] ath9k: dynack: fix possible deadlock in ath_dynack_node_{de}init (Jarod Wilson) [1776606] - [netdrv] ath9k: add loader for AR92XX (and older) pci(e) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: get chip's default RAM info during PCIe setup (Jarod Wilson) [1776606] - [netdrv] brcmfmac: replace strncpy() by strscpy() (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not set IEEE80211_TX_STAT_AMPDU_NO_BACK on tx status (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove redundant assignment to pointer hash (Jarod Wilson) [1776606] - [netdrv] brcm80211: Avoid possible null-pointer dereferences in wlc_phy_radio_init_2056() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: enable MSI interrupt (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Move a mass of jobs in hw IRQ to soft IRQ (Jarod Wilson) [1776606] - [netdrv] rtw88: remove redundant assignment to pointer debugfs_topdir (Jarod Wilson) [1776606] - [netdrv] rtw88: drop unused rtw_coex_coex_dm_reset() (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix an error message (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Fix incorrect returned values (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove some variable initializations (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ee: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Fix memory leak when hardware init fails (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unused variables 'RTL8712_SDIO_EFUSE_TABLE' and 'MAX_PGPKT_SIZE' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: Fix value set in descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: fix non-kerneldoc comment in usb.c (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix infinite loop because supported is not being shifted (Jarod Wilson) [1776606] - [netdrv] mt76: Remove dev_err() usage after platform_get_irq() (Jarod Wilson) [1776606] - [net] mac80211: Do not send Layer 2 Update frame before authorization (Jarod Wilson) [1776606] - [netdrv] revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band" (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear up IV's on key removal (Jarod Wilson) [1776606] - [netdrv] iwlwifi: assign directly to iwl_trans->cfg in QuZ detection (Jarod Wilson) [1776606] - [netdrv] mwifiex: Fix three heap overflow at parsing element in cfg80211_ap_settings (Jarod Wilson) [1776244 1775484 1775475 1776606] - [netdrv] mt76: mt76x0e: disable 5GHz band for MT7630E (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0e: don't use hw encryption for MT7630E (Jarod Wilson) [1776606] - [net] nl80211: fill all policy .type entries (Jarod Wilson) [1776606] - [net] cfg80211: Add support to set tx power for a station associated (Jarod Wilson) [1776606] - [net] cfg80211: Fix Extended Key ID key install checks (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for rekeys with Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: Simplify Extended Key ID API (Jarod Wilson) [1776606] - [net] nl80211: require and validate vendor command policy (Jarod Wilson) [1776606] - [net] mac80211: AMPDU handling for Extended Key ID (Jarod Wilson) [1776606] - [net] mac80211: IEEE 802.11 Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Extended Key ID support (Jarod Wilson) [1776606] - [net] nl80211/cfg80211: Specify band specific min RSSI thresholds with sched scan (Jarod Wilson) [1776606] - [net] cfg80211: Use const more consistently in for_each_element macros (Jarod Wilson) [1776606] - [net] nl80211: use for_each_element() in validate_ie_attr() (Jarod Wilson) [1776606] - [net] cfg80211: add peer measurement with FTM initiator API (Jarod Wilson) [1776606] - [net] nl80211: use netlink policy validation function for elements (Jarod Wilson) [1776606] - [net] nl80211: use policy range validation where applicable (Jarod Wilson) [1776606] - [net] cfg80211: support FTM responder configuration/statistics (Jarod Wilson) [1776606] - [net] lib80211: move TKIP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] lib80211: move WEP handling to ARC4 library code (Jarod Wilson) [1776606] - [net] mac80211: move WEP handling to ARC4 library interface (Jarod Wilson) [1776606] - [netdrv] rt2x00: clear IV's on start to fix AP mode regression (Jarod Wilson) [1776606] - [netdrv] rt2800usb: Add new rt2800usb device PLANEX GW-USMicroN (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: remove unnecessary rx flag checks (Jarod Wilson) [1776606] - [netdrv] rt2x00usb: fix rx queue hang (Jarod Wilson) [1776606] - [netdrv] rt2800: do not enable watchdog by default (Jarod Wilson) [1776606] - [netdrv] rt2x00: add restart hw (Jarod Wilson) [1776606] - [netdrv] rt2800: do not nullify initialization vector data (Jarod Wilson) [1776606] - [netdrv] rt2800: add pre_reset_hw callback (Jarod Wilson) [1776606] - [netdrv] rt2800: initial watchdog implementation (Jarod Wilson) [1776606] - [netdrv] rt2800: add helpers for reading dma done index (Jarod Wilson) [1776606] - [netdrv] rt2x00: allow to specify watchdog interval (Jarod Wilson) [1776606] - [netdrv] rt2x00: add RT3883 support (Jarod Wilson) [1776606] - [netdrv] rt2x00mmio: remove legacy comment (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove not used entry field (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove last_nostatus_check (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use timer and work for handling tx statuses timeouts (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: fetch tx status changes (Jarod Wilson) [1776606] - [netdrv] rt2800: move txstatus pending routine (Jarod Wilson) [1776606] - [netdrv] rt2800: new flush implementation for SoC devices (Jarod Wilson) [1776606] - [netdrv] rt2800: partially restore old mmio txstatus behaviour (Jarod Wilson) [1776606] - [netdrv] rt2x00: code-style fix in rt2800usb.c (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not print error when queue is full (Jarod Wilson) [1776606] - [netdrv] rt2x00: check number of EPROTO errors (Jarod Wilson) [1776606] - [netdrv] rt2x00: use ratelimited variants dev_warn/dev_err (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not increment sequence number while re-transmitting (Jarod Wilson) [1776606] - [netdrv] rt2800: comment and simplify AGC init for RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_RFRX_EN only for MT7620 (Jarod Wilson) [1776606] - [netdrv] rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove confusing AGC register (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove unneeded check (Jarod Wilson) [1776606] - [netdrv] rt2x00: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [netdrv] rt2x00: Work around a firmware bug with shared keys (Jarod Wilson) [1776606] - [netdrv] rt2x00: reduce tx power to nominal level on RT6352 (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt61pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2800lib: mark expected switch fall-throughs (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2500pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2x00: rt2400pci: mark expected switch fall-through (Jarod Wilson) [1776606] - [netdrv] rt2800: flush and txstatus rework for rt2800mmio (Jarod Wilson) [1776606] - [netdrv] rt2x00: use different txstatus timeouts when flushing (Jarod Wilson) [1776606] - [netdrv] rt2x00: do not check for txstatus timeout every time on tasklet (Jarod Wilson) [1776606] - [netdrv] rt2800mmio: use txdone/txstatus routines from lib (Jarod Wilson) [1776606] - [netdrv] rt2800: move usb specific txdone/txstatus routines to rt2800lib (Jarod Wilson) [1776606] - [netdrv] rt2x00: use simple_read_from_buffer() (Jarod Wilson) [1776606] - [netdrv] rt2x00: remove redundant functions rt2x00mac_sta_{add/remove} (Jarod Wilson) [1776606] - [net] mac80211: Correctly set noencrypt for PAE frames (Jarod Wilson) [1776606] - [net] mac80211: Don't memset RXCB prior to PAE intercept (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: handle switching killer Qu B0 NICs to C0 (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: improve rate probing for devices with static fallback (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix default max throughput rate indexes (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: reduce unnecessary rate probing attempts (Jarod Wilson) [1776606] - [net] mac80211: minstrel_ht: fix per-group max throughput rate initialization (Jarod Wilson) [1776606] - [net] nl80211: Add support for EDMG channels (Jarod Wilson) [1776606] - [net] mac80211: fix possible NULL pointerderef in obss pd code (Jarod Wilson) [1776606] - [net] mac80211: add assoc-at support (Jarod Wilson) [1776606] - [uapi] cfg80211: Support assoc-at timer in sta-info (Jarod Wilson) [1776606] - [net] cfg80211: apply same mandatory rate flags for 5GHz and 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: ibss: use 11a mandatory rates for 6GHz band operation (Jarod Wilson) [1776606] - [net] cfg80211: use same IR permissive rules for 6GHz band (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz in code handling array with NUM_NL80211_BANDS entries (Jarod Wilson) [1776606] - [net] cfg80211: extend ieee80211_operating_class_to_band() for 6GHz (Jarod Wilson) [1776606] - [net] cfg80211: util: add 6GHz channel to freq conversion and vice versa (Jarod Wilson) [1776606] - [net] cfg80211: add 6GHz UNII band definitions (Jarod Wilson) [1776606] - [uapi] nl80211: add 6GHz band definition to enum nl80211_band (Jarod Wilson) [1776606] - [net] revert "cfg80211: fix processing world regdomain when non modular" (Jarod Wilson) [1776606] - [net] mac80211: add missing length field increment when generating Radiotap header (Jarod Wilson) [1776606] - [net] mac80211: 80Mhz was not reported properly when using tx_status_ext (Jarod Wilson) [1776606] - [net] mac80211: fix bad guard when reporting legacy rates (Jarod Wilson) [1776606] - [net] mac80211: fix TX legacy rate reporting when tx_status_ext is used (Jarod Wilson) [1776606] - [net] mac80211: fix possible sta leak (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix recognition of QuZ devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't switch FW to qnj when ax201 is detected (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix the byte count table format for 22560 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Allow multicast data frames only when associated (Jarod Wilson) [1776606] - [netdrv] revert "mwifiex: fix system hang problem after resume" (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192ce: Remove unused GET_XXX and SET_XXX (Jarod Wilson) [1776606] - [netdrv] rtw88: add BT co-existence support (Jarod Wilson) [1776606] - [netdrv] rtw88: enclose c2h cmd handle with mutex (Jarod Wilson) [1776606] - [netdrv] rtw88: allow c2h operation in irq context (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove local configuration variable (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl88188ee: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: remove set but not used variable 'ip_sel' (Jarod Wilson) [1776606] - [netdrv] brcmsmac: remove three set but not used variables (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove set but not used variable 'dtim_period' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove unneeded function _rtl_dump_channel_map() (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl_pci: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: pcie: Use dev_get_drvdata (Jarod Wilson) [1776606] - [netdrv] mwifiex: make error values consistent in mwifiex_update_bss_desc_with_ie() (Jarod Wilson) [1776606] - [netdrv] rtw88: use txpwr_lmt_cfg_pair struct, not arrays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix compile time assert build errors (Jarod Wilson) [1776606] - [net] mac80211: HE STA disassoc due to QOS NULL not sent (Jarod Wilson) [1776606] - [net] mac80211: allow setting spatial reuse parameters from bss_conf (Jarod Wilson) [1776606] - [net] nl80211: add strict start type (Jarod Wilson) [1776606] - [net] cfg80211: add support for parsing OBBS_PD attributes (Jarod Wilson) [1776606] - [net] mac80211: reject zero MAC address in add station (Jarod Wilson) [1776606] - [net] cfg80211: use parallel_ops for genl (Jarod Wilson) [1776606] - [net] mac80211: add missing null return check from call to ieee80211_get_sband (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix an out-of-bound access (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't unmap as page memory that was mapped as single (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add 3 new IDs for the 9000 series (iwl9260_2ac_160_cfg) (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix possible out-of-bounds read when accessing lq_info (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix frame drop from the reordering buffer (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: replace RS mutex with a spin_lock (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: send LQ command always ASYNC (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: fix comparison of u32 variable with less than zero (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix locking in delayed GTK setting (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a wrapper around rs_tx_status to handle locks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a loose synchronization of the NSSN across Rx queues (Jarod Wilson) [1776606] - [netdrv] iwlwiif: mvm: refactor iwl_mvm_notify_rx_queue (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a new RSS sync notification for NSSN sync (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: prepare the ground for more RSS notifications (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: avoid races in rate init and rate perform (Jarod Wilson) [1776606] - [net] revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues" (Jarod Wilson) [1776606] - [net] mac80211: add support for the ADDBA extension element (Jarod Wilson) [1776606] - [net] mac80211: propagate HE operation info into bss_conf (Jarod Wilson) [1776606] - [net] cfg80211: fix dfs channels remain DFS_AVAILABLE after ch_switch (Jarod Wilson) [1776606] - [net] cfg80211: fix duplicated scan entries after channel switch (Jarod Wilson) [1776606] - [net] cfg80211: refactor cfg80211_bss_update (Jarod Wilson) [1776606] - [net] mac80211: don't WARN on short WMM parameters from AP (Jarod Wilson) [1776606] - [net] nl80211: Include wiphy address setup in NEW_WIPHY (Jarod Wilson) [1776606] - [net] mac80211: implement HE support for mesh (Jarod Wilson) [1776606] - [net] mac80211: add IEEE80211_KEY_FLAG_GENERATE_MMIE to ieee80211_key_flags (Jarod Wilson) [1776606] - [kernel] mac80211: he: add Spatial Reuse element parsing support (Jarod Wilson) [1776606] - [net] mac80211: add struct ieee80211_tx_status support to ieee80211_add_tx_radiotap_header (Jarod Wilson) [1776606] - [net] {nl, mac}80211: fix interface combinations on crypto controlled devices (Jarod Wilson) [1776606] - [net] mac80211: propagate struct ieee80211_tx_status into ieee80211_tx_monitor() (Jarod Wilson) [1776606] - [net] mac80211: add xmit rate to struct ieee80211_tx_status (Jarod Wilson) [1776606] - [kernel] mac80211: add support for parsing ADDBA_EXT IEs (Jarod Wilson) [1776606] - [net] cfg80211: give all multi-BSSID BSS entries the same timestamp (Jarod Wilson) [1776606] - [net] cfg80211: don't parse MBSSID if transmitting BSS isn't created (Jarod Wilson) [1776606] - [net] cfg80211: clean up cfg80211_inform_single_bss_frame_data() (Jarod Wilson) [1776606] - [net] cfg80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: add tx dequeue function for process context (Jarod Wilson) [1776606] - [net] mac80211: run late dequeue late tx handlers without holding fq->lock (Jarod Wilson) [1776606] - [net] lib80211: use crypto API ccm(aes) transform for CCMP processing (Jarod Wilson) [1776606] - [net] mac80211: remove unused and unneeded remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove unused .remove_sta_debugfs callback (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dvm: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: pass the vif to cancel_remain_on_channel (Jarod Wilson) [1776606] - [netdrv] mwifiex: use eth_broadcast_addr() to assign broadcast address (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove assignment to itself (Jarod Wilson) [1776606] - [netdrv] brcmfmac: don't net_ratelimit() CONSOLE messages on firmware crash (Jarod Wilson) [1776606] - [netdrv] rtw88: debug: dump tx power indexes in use (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: fix issue possible condition with no effect (if == else) (Jarod Wilson) [1776606] - [netdrv] brcmfmac: remove unnecessary strlcpy() upon obtaining "ver" iovar (Jarod Wilson) [1776606] - [netdrv] brcmfmac: simply remove flowring if bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware commands when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: clear events in brcmf_fweh_detach() will always fail (Jarod Wilson) [1776606] - [netdrv] brcmfmac: avoid firmware command in brcmf_netdev_open() when bus is down (Jarod Wilson) [1776606] - [netdrv] brcmfmac: change the order of things in brcmf_detach() (Jarod Wilson) [1776606] - [netdrv] revert "brcmfmac: fix NULL pointer derefence during USB disconnect" (Jarod Wilson) [1776606] - [netdrv] brcmfmac: allow 160MHz in custom regulatory rules (Jarod Wilson) [1776606] - [netdrv] brcmfmac: enable DFS_OFFLOAD extended feature if supported (Jarod Wilson) [1776606] - [netdrv] brcmfmac: add 160MHz in chandef_to_chanspec() (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Use DMA sync instead of remapping in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: Rearrange the memory usage for skb in RX ISR (Jarod Wilson) [1776606] - [netdrv] rtw88: Fix misuse of GENMASK macro (Jarod Wilson) [1776606] - [netdrv] rtl8xxxu: Fix wifi low signal strength issue of RTL8723BU (Jarod Wilson) [1776606] - [net] mac80211: don't warn about CW params when not using them (Jarod Wilson) [1776606] - [net] mac80211: fix possible memory leak in ieee80211_assign_beacon (Jarod Wilson) [1776606] - [kernel] fix typos and some coding style in comments (Jarod Wilson) [1776606] - [netdrv] ath10k: work around uninitialized vht_pfr variable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: add support for qu c-step devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 9000 and 20000 series (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: clear rfkill_safe_init_done when we start the firmware (Jarod Wilson) [1776606] - [netdrv] iwlwifi: don't WARN when calling iwl_get_shared_mem_conf with RF-Kill (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: don't service an interrupt that was masked (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix RF-Kill interrupt while FW load for gen2 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: fix ALIVE interrupt handling for gen2 devices w/o MSI-X (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: delay GTK setting in FW in AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove MAC_FILTER_IN_11AX for AP mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: debug recording stop and restart command remove (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: don't stop dbg recording before entering D3 from 9000 devices (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: fix debug monitor stop and restart in ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: make the usage of TWT configurable (Jarod Wilson) [1776606] - [netdrv] iwlwifi: support FSEQ TLV even when FMAC is not compiled (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: move trans debug fields to a separate struct (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: remove redundant checking of ini mode (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: enforce apply point early on buffer allocation tlv (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: fix debug monitor stop and restart delays (Jarod Wilson) [1776606] - [netdrv] iwlwifi: pcie: increase the size of PCI dumps (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Drop large non sta frames (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: Add log information about SAR status (Jarod Wilson) [1776606] - [netdrv] iwlwifi: Add support for SAR South Korea limitation (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fix module init error paths (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: convert to FW AC when configuring MU EDCA (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: correctly fill the ac array in the iwl_mac_ctx_cmd (Jarod Wilson) [1776606] - [netdrv] iwlwifi: remove some unnecessary NULL checks (Jarod Wilson) [1776606] - [netdrv] iwlwifi: d3: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: lib: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] iwlwifi: fw api: support adwell HB default APs number api (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: remove multiple debugfs entries (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: implement dump info collection (Jarod Wilson) [1776606] - [netdrv] iwlwifi: mvm: add a debugfs entry to set a fixed size AMSDU for all TX packets (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: support debug info TLV (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: use different barker for ini dump (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: add consecutive trigger firing support (Jarod Wilson) [1776606] - [kernel] ieee80211: Add a missing extended capability flag definition (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: abort region collection in case the size is 0 (Jarod Wilson) [1776606] - [netdrv] iwlwifi: update CSI API (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg_ini: dump headers cleanup (Jarod Wilson) [1776606] - [netdrv] iwlwifi: dbg: allow dump collection in case of an early error (Jarod Wilson) [1776606] - [netdrv] iwlwifi: iwl_mvm_tx_mpdu() must be called with BH disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: pci: remove unnecessary casts (Jarod Wilson) [1776606] - [netdrv] ath10k: remove unnecessary 'out of memory' message (Jarod Wilson) [1776606] - [netdrv] ath10k: destroy sdio workqueue while remove sdio module (Jarod Wilson) [1776606] - [netdrv] ath10k: Move non-fatal warn logs to dbg level for SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix memory leak in qmi (Jarod Wilson) [1776606] - [netdrv] ath10k: add new hw_ops for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath9k: correctly handle short radar pulses (Jarod Wilson) [1776606] - [netdrv] rtw88: refine flow to get tx power index (Jarod Wilson) [1776606] - [netdrv] rtw88: remove all RTW_MAX_POWER_INDEX macro (Jarod Wilson) [1776606] - [netdrv] rtw88: update tx power limit table to RF v20 (Jarod Wilson) [1776606] - [netdrv] rtw88: correct power limit selection (Jarod Wilson) [1776606] - [netdrv] rtw88: choose the lowest as world-wide power limit (Jarod Wilson) [1776606] - [netdrv] rtw88: fix incorrect tx power limit at 5G (Jarod Wilson) [1776606] - [netdrv] rtw88: remove unused variable (Jarod Wilson) [1776606] - [netdrv] rtw88: unify prefixes for tx power setting routine (Jarod Wilson) [1776606] - [netdrv] rtw88: do not use (void *) as argument (Jarod Wilson) [1776606] - [netdrv] rtw88: resolve order of tx power setting routines (Jarod Wilson) [1776606] - [netdrv] ath: fix SPDX tags (Jarod Wilson) [1776606] - [netdrv] ath10k: Add WMI diag fw logging support for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: add report MIC error for sdio chip (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for controlling tx power to a station (Jarod Wilson) [1776606] - [netdrv] ath10k: Add peer delete response event (Jarod Wilson) [1776606] - [netdrv] ath10k: wait for vdev delete response from firmware (Jarod Wilson) [1776606] - [netdrv] ath10k: fix PCIE device wake up failed (Jarod Wilson) [1776606] - [netdrv] ath10k: fix failure to set multiple fixed rate (Jarod Wilson) [1776606] - [netdrv] ath10k: Change the warning message string (Jarod Wilson) [1776606] - [netdrv] ath10k: fix fw crash by moving chip reset after napi disabled (Jarod Wilson) [1776606] - [netdrv] ath10k: add missing error handling (Jarod Wilson) [1776606] - [netdrv] ath10k: enabling tx stats support over pktlog (Jarod Wilson) [1776606] - [netdrv] ath10k: acquire lock to fix lockdep's warning (Jarod Wilson) [1776606] - [netdrv] ath10k: change firmware file name for UTF mode of SDIO/USB (Jarod Wilson) [1776606] - [netdrv] ath10k: add support for firmware crash recovery on SDIO chip (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wrapper function to ath10k debug (Jarod Wilson) [1776606] - [netdrv] ath10k: add htt_h2t_aggr_cfg_msg op for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add inline wrapper for htt_h2t_aggr_cfg_msg (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sparse warnings: warning: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: warning: cast from restricted __le16 (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix sparse warnings: incorrect type in assignment (different base types) (Jarod Wilson) [1776606] - [netdrv] mt76: move nl80211_dfs_regions in mt76_dev data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove cfg80211_chan_def from mt7615_set_channel signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: update peer's bssid when state transition occurs (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix incorrect settings in mesh mode (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: take into account extPA when configuring tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init per-channel target power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for per-chain signal strength reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: simplify mt7615_mcu_set_sta_rec routine (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: improve hardware rate switching configuration (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: rework and fix tx status reporting (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove key check in mt7615_mcu_set_wtbl_key (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: remove unused variable in mt7615_mcu_set_bcn (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: fix slow performance when enable encryption (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: enable support for mesh (Jarod Wilson) [1776606] - [netdrv] mt76: Remove set but not used variables 'pid' and 'final_mpdu' (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_get_rate in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange locking in mt7615_config (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: init get_txpower mac80211 callback (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add the capability to configure tx power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: select wifi band according to eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add support for mtd eeprom parsing (Jarod Wilson) [1776606] - [netdrv] mt76: move mt76_insert_ccmp_hdr in mt76-module (Jarod Wilson) [1776606] - [netdrv] mt76: fix setting chan->max_power (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix reading target tx power from eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: do not process rx packets if the device is not initialized (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add debugfs knob to enable/disable edcca (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: add static qualifier to mt7615_rx_poll_complete (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: rearrange cleanup operations in mt7615_unregister_device (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: stop mac80211 queues before setting the channel (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: run __mt76_mcu_send_msg in mt7615_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt7615: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use standard signature for mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused structure in mcu.h (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: do not use function pointers whenever possible (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify __mt7615_mcu_set_dev_info and mt7615_mcu_set_dev_info (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove skb_ret from mt7615_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt7615: remove dest from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: remove query from mt7615_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove unused parameter in mt7615_mcu_del_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: unify mt7615_mcu_add_wtbl_bmc and mt7615_mcu_del_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: use proper msg size in mt7615_mcu_add_wtbl_bmc (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: remove bss_info_convert_vif_type routine (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_sta_rec (Jarod Wilson) [1776606] - [netdrv] mt7615: mcu: simplify __mt7615_mcu_set_wtbl (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Make mt7615_irq_handler static (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: Use after free in mt7615_mcu_set_bcn() (Jarod Wilson) [1776606] - [netdrv] mt76: Fix a signedness bug in mt7615_add_interface() (Jarod Wilson) [1776606] - [netdrv] mt76: move netif_napi_del in mt76_dma_cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use napi polling for tx cleanup (Jarod Wilson) [1776606] - [netdrv] wireless/mediatek: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: dynamically alloc mcu req in mt7603_mcu_set_eeprom (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: enable/disable pre_tbtt_tasklet in mt7603_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: move pre_tbtt_tasklet in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_mask in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: move beacon_int in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: report firmware version using ethtool (Jarod Wilson) [1776606] - [netdrv] mt76: fix endianness sparse warnings (Jarod Wilson) [1776606] - [netdrv] mt76: mt7615: use sizeof instead of sizeof_field (Jarod Wilson) [1776606] - [netdrv] mt76: add mac80211 driver for MT7615 PCIe-based chipsets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: run __mt76_mcu_send_msg in mt7603_mcu_send_firmware (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: init mcu_restart function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: initialize mt76_mcu_ops data structure (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use standard signature for mt7603_mcu_msg_send (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: remove query from mt7603_mcu_msg_send signature (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix initialization of max rx length (Jarod Wilson) [1776606] - [netdrv] mt76: use macro for sn and seq_ctrl conversion (Jarod Wilson) [1776606] - [netdrv] mt76: add skb pointer to mt76_tx_info (Jarod Wilson) [1776606] - [netdrv] mt76: move mac_work in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: only schedule txqs from the tx tasklet (Jarod Wilson) [1776606] - [netdrv] mt76: move tx tasklet to struct mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: store wcid tx rate info in one u32 reduce locking (Jarod Wilson) [1776606] - [netdrv] mt76: use readl/writel instead of ioread32/iowrite32 (Jarod Wilson) [1776606] - [netdrv] mt76: fix tx power issues (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_free_device routine (Jarod Wilson) [1776606] - [netdrv] mt76: unify set_tim (Jarod Wilson) [1776606] - [netdrv] mt7603: core: do not use magic numbers in mt7603_reg_map (Jarod Wilson) [1776606] - [netdrv] mt7603: remove mt7603_mcu_init routine (Jarod Wilson) [1776606] - [netdrv] mt76: dma: add static qualifier to mt76_dma_tx_queue_skb (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_tx_info data structure (Jarod Wilson) [1776606] - [netdrv] mt76: introduce mt76_sw_queue data structure (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_complete_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_prepare_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: remove mt76_queue dependency from tx_queue_skb function pointer (Jarod Wilson) [1776606] - [netdrv] mt76: dma: move mt76x02_init_{tx, rx}_queue in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mmio: move mt76x02_set_irq_mask in mt76 module (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: send BAR after powersave wakeup (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix sequence number assignment (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: add missing initialization for dev->ps_lock (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: use the correct hweight8() function (Jarod Wilson) [1776606] - [netdrv] mt76: fix return value check in mt76_wmac_probe() (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: set moredata flag when queueing ps-filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear the service period on releasing PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: notify mac80211 about buffered frames in ps queue (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix up hardware queue index for PS filtered packets (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: clear ps filtering mode before releasing buffered frames (Jarod Wilson) [1776606] - [netdrv] mt76: mt7603: fix tx status HT rate validation (Jarod Wilson) [1776606] - [netdrv] mt76: add driver for MT7603E and MT7628/7688 (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0u: do not reset radio on resume (Jarod Wilson) [1776606] - [netdrv] mt7601u: null check the allocation (Jarod Wilson) [1776606] - [netdrv] mt7601u: use params->ssn value directly (Jarod Wilson) [1776606] - [netdrv] mt76: usb: fix rx A-MSDU support (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: get rid of {out,in}_max_packet (Jarod Wilson) [1776606] - [netdrv] mt76: mt76u: reduce rx memory footprint (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02u: fix sparse warnings: should it be static? (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x0: fix RF frontend initialization for external PA (Jarod Wilson) [1776606] - [netdrv] mt76: generalize mt76_get_txpower for 4x4:4 devices (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx reordering on rate control probing without a-mpdu (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix tx status reporting issues (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: fix edcca file permission (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: run mt76x02_edcca_init atomically in mt76_edcca_set (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2: move mutex_lock inside mt76x2_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x2u: remove mt76x02_edcca_init in mt76x2u_set_channel (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove enable from mt76x02_edcca_init signature (Jarod Wilson) [1776606] - [netdrv] mt76: move tx_napi in mt76_dev (Jarod Wilson) [1776606] - [netdrv] mt76: mt76x02: remove useless return in mt76x02_resync_beacon_timer (Jarod Wilson) [1776606] - [netdrv] mt7601u: fix possible memory leak when the device is disconnected (Jarod Wilson) [1776606] - [netdrv] mt7601u: do not schedule rx_tasklet when the device has been disconnected (Jarod Wilson) [1776606] - [netdrv] mwifiex: don't disable hardirqs; just softirqs (Jarod Wilson) [1776606] - [netdrv] mwifiex: dispatch/rotate from reorder table atomically (Jarod Wilson) [1776606] - [netdrv] mwifiex: ignore processing invalid command response (Jarod Wilson) [1776606] - [netdrv] mwifiex: update set_mac_address logic (Jarod Wilson) [1776606] - [netdrv] mwifiex: print PCI mmap with pK (Jarod Wilson) [1776606] - [netdrv] mwifiex: drop 'set_consistent_dma_mask' log message (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add support for hr1 RF ID (Jarod Wilson) [1776606] - [netdrv] iwlwifi: change 0x02F0 fw from qu to quz (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and change wrong structs (Jarod Wilson) [1776606] - [netdrv] iwlwifi: add new cards for 22000 and fix struct name (Jarod Wilson) [1776606] - [net] mac80211: notify offchannel expire on mgmt_tx (Jarod Wilson) [1776606] - [net] nl80211: send event when CMD_FRAME duration expires (Jarod Wilson) [1776606] - [net] mac80211: no need to check return value of debugfs_create functions (Jarod Wilson) [1776606] - [net] mac80211: extend __rate_control_send_low warning (Jarod Wilson) [1776606] - [net] mac80211: fill low rate even for HAS_RATE_CONTROL (Jarod Wilson) [1776606] - [net] mac80211: use STA info in rate_control_send_low() (Jarod Wilson) [1776606] - [net] mac80211: call rate_control_send_low() internally (Jarod Wilson) [1776606] - [net] cfg80211: Add a function to iterate all BSS entries (Jarod Wilson) [1776606] - [net] mac80211: allow turning TWT responder support on and off via netlink (Jarod Wilson) [1776606] - [net] mac80211: dynamically enable the TWT requester support on STA interfaces (Jarod Wilson) [1776606] - [net] mac80211: add ieee80211_get_he_iftype_cap() helper (Jarod Wilson) [1776606] - [uapi] nl80211: add support for SAE authentication offload (Jarod Wilson) [1776606] - [net] nl80211: add WPA3 definition for SAE authentication (Jarod Wilson) [1776606] - [net] nl80211: add NL80211_ATTR_IFINDEX to port authorized event (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8188ee: remove redundant assignment to rtstatus (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable k (Jarod Wilson) [1776606] - [netdrv] rtlwifi: remove redundant assignment to variable badworden (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8192cu: fix error handle when usb probe failed (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: remove unused function exhalbtc_stack_operation_notify (Jarod Wilson) [1776606] - [netdrv] rtlwifi: btcoex: Remove set but not used variable 'len' and 'asso_type_v2' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove set but not used variables 'cur_txokcnt' and 'b_last_is_cur_rdl_state' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert inline routines to little-endian words (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Convert macros that set descriptor (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Replace local bit manipulation macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: rtl8821ae: Remove unused GET_XXX and SET_XXX descriptor macros (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: use le32 to access cckswing tables (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Fix used uninitialized variables in power tracking (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: make tables to be 'static const' (Jarod Wilson) [1776606] - [netdrv] rtlwifi: 8192de: Reduce indentation and fix coding style (Jarod Wilson) [1776606] - [netdrv] rtw88: fix typo rtw_writ16_set (Jarod Wilson) [1776606] - [netdrv] rtw88: rsvd page should go though management queue (Jarod Wilson) [1776606] - [netdrv] rtw88: restore DACK results to save time (Jarod Wilson) [1776606] - [netdrv] rtw88: power on again if it was already on (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: use more accurate ofdm fa counting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: disable rx clock gating before counter reset (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: update channel and bandwidth BB setting (Jarod Wilson) [1776606] - [netdrv] rtw88: 8822c: add rf write protection when switching channel (Jarod Wilson) [1776606] - [netdrv] rtw88: add beacon function setting (Jarod Wilson) [1776606] - [netdrv] rtw88: add support for random mac scan (Jarod Wilson) [1776606] - [netdrv] rtw88: add fast xmit support (Jarod Wilson) [1776606] - [netdrv] rtw88: more descriptions about LPS (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: check if queue mapping exceeds size of ac_to_hwq (Jarod Wilson) [1776606] - [netdrv] rtw88: pci: use ieee80211_ac_numbers instead of 0-3 (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use strlcpy() instead of strcpy() (Jarod Wilson) [1776606] - [netdrv] brcmfmac: fix typos in code comments (Jarod Wilson) [1776606] - [netdrv] brcm80211: select WANT_DEV_COREDUMP conditionally for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: use separate Kconfig file for brcmfmac (Jarod Wilson) [1776606] - [netdrv] brcmfmac: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmsmac: switch phy source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcmutil: switch source files to using SPDX license identifier (Jarod Wilson) [1776606] - [netdrv] brcm80211: switch common header files to using SPDX license identifier (Jarod Wilson) [1776606] - [net] cfg80211: Handle bss expiry during connection (Jarod Wilson) [1776606] - [netdrv] ath10k: Check tx_stats before use it (Jarod Wilson) [1776606] - [netdrv] ath10k: add peer id check in ath10k_peer_find_by_id (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv service map for mesh 11s (Jarod Wilson) [1776606] - [netdrv] ath10k: Do not send probe response template for mesh (Jarod Wilson) [1776606] - [netdrv] ath10k: Add wmi tlv vdev subtype for mesh in WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: change swap mail box config for UTF mode of SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the wrong value of enums for wmi tlv stats id (Jarod Wilson) [1776606] - [netdrv] ath10k: coredump: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix encoding for protected management frames (Jarod Wilson) [1776606] - [netdrv] ath10k: rx_duration update for fw_stats debugfs entry (Jarod Wilson) [1776606] - [netdrv] ath10k: Fix the tx stats bytes & packets parsing (Jarod Wilson) [1776606] - [netdrv] ath10k: Modify CE4 src buffer entries to 2048 for WCN3990 (Jarod Wilson) [1776606] - [netdrv] ath10k: Move board id and fw version logging to info level (Jarod Wilson) [1776606] - [netdrv] ath10k: Added support to reset HTT stats in debugfs (Jarod Wilson) [1776606] - [netdrv] ath10k: Extended the HTT stats support to retrieve Mu-MIMO related stats (Jarod Wilson) [1776606] - [netdrv] ath: DFS JP domain W56 fixed pulse type 3 RADAR detection (Jarod Wilson) [1776606] - [netdrv] ath9k: drop redundant code in ar9003_hw_set_channel (Jarod Wilson) [1776606] - [netdrv] ath: drop duplicated define (Jarod Wilson) [1776606] - [netdrv] ath9k: Remove some set but not used variables (Jarod Wilson) [1776606] - [netdrv] ath9k: Differentiate between max combined and per chain power (Jarod Wilson) [1776606] - [netdrv] ath9k: Check for errors when reading SREV register (Jarod Wilson) [1776606] - [netdrv] ath9k: Don't trust TX status TID number when reporting airtime (Jarod Wilson) [1776606] - [netdrv] ath6kl: remove redundant check of status != 0 (Jarod Wilson) [1776606] - [netdrv] ath6kl: add some bounds checking (Jarod Wilson) [1776606] - [netdrv] ath6kl: wmi: use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath6kl: debug: Use struct_size() helper (Jarod Wilson) [1776606] - [netdrv] ath10k: fix incorrect multicast/broadcast rate setting (Jarod Wilson) [1776606] - [netdrv] ath10k: enable QCA6174 hw3.2 SDIO hardware (Jarod Wilson) [1776606] - [netdrv] ath10k: add fragmentation handler for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add PN replay protection for high latency devices (Jarod Wilson) [1776606] - [netdrv] ath10k: add handler for HTT_T2H_MSG_TYPE_SEC_IND event (Jarod Wilson) [1776606] - [netdrv] ath10k: add struct for high latency PN replay protection (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: add missing error check (Jarod Wilson) [1776606] - [netdrv] ath10k: add initialization of HTC header (Jarod Wilson) [1776606] - [netdrv] ath10k: fix use-after-free on SDIO data frames (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: support MSDU ids with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: initialise struct ath10k_bus params to zero (Jarod Wilson) [1776606] - [netdrv] ath10k: htt: don't use txdone_fifo with SDIO (Jarod Wilson) [1776606] - [netdrv] ath10k: don't disable interrupts in ath10k_sdio_remove() (Jarod Wilson) [1776606] - [netdrv] ath10k: sdio: workaround firmware UART pin configuration bug (Jarod Wilson) [1776606] - [net] cfg80211: Add airtime statistics and settings (Jarod Wilson) [1776606] - [base] depend on HAS_IOMEM for devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [base] provide devm_platform_ioremap_resource() (Jarod Wilson) [1776606] - [lib] crypto: arc4 - refactor arc4 core code into separate library (Jarod Wilson) [1776606] - [crypto] export arc4 defines (Jarod Wilson) [1776606] - [crypto] arc4 - convert to skcipher API (Jarod Wilson) [1776606] - [kernel] bitfield: add u8 helpers (Jarod Wilson) [1776606]- [md] raid5: need to set STRIPE_HANDLE for batch head (Nigel Croxon) [1774840] - [scsi] lpfc: remove left-over BUILD_NVME defines (Ewan Milne) [1782235] - [block] fix memleak of bio integrity data (Ming Lei) [1779898] - [fs] xfs: attach dquots and reserve quota blocks during unwritten conversion (Carlos Maiolino) [1782094] - [nvme] nvme-fc: fix double-free scenarios on hw queues (Ewan Milne) [1781390] - [tools] power turbostat: Add Cometlake support (David Arcari) [1759661] - [mm] hugetlbfs: take read_lock on i_mmap for PMD sharing (Waiman Long) [1731295] - [documentation] powerpc/pseries: Add documentation for vcpudispatch_stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Protect against hogging the cpu while setting up the stats (Gustavo Duarte) [1723870] - [powerpc] pseries: Provide vcpu dispatch statistics (Gustavo Duarte) [1723870] - [powerpc] pseries: Move mm/book3s64/vphn.c under platforms/pseries/ (Gustavo Duarte) [1723870] - [powerpc] pseries: Generalize hcall_vphn() (Gustavo Duarte) [1723870] - [powerpc] mm: Move book3s64 specifics in subdirectory mm/book3s64 (Gustavo Duarte) [1723870] - [powerpc] pseries: Introduce rwlock to gatekeep DTLB usage (Gustavo Duarte) [1723870] - [powerpc] pseries: Factor out DTL buffer allocation and registration routines (Gustavo Duarte) [1723870] - [powerpc] pseries: Do not save the previous DTL mask value (Gustavo Duarte) [1723870] - [powerpc] pseries: Use macros for referring to the DTL enable mask (Gustavo Duarte) [1723870] - [powerpc] mm: change #include "mmu_decl.h" to (Gustavo Duarte) [1723870] - [fs] devpts_pty_kill(): don't bother with d_delete() (Eric Sandeen) [1772718] - [fs] devpts: always delete dcache dentry-s in dput() (Eric Sandeen) [1772718] - [infiniband] rdma/siw: Fix post_recv QP state locking (Kamal Heib) [1779625] - [infiniband] rdma/siw: Fix SQ/RQ drain logic (Kamal Heib) [1779625] - [infiniband] rdma/siw: Relax from kmap_atomic() use in TX path (Kamal Heib) [1779625] - [netdrv] nfp: flower: cmsg rtnl locks can timeout reify messages (Pablo Cascon) [1729154] - [netdrv] nfp: Drop unnecessary continue in nfp_net_pf_alloc_vnics (Pablo Cascon) [1729154] - [netdrv] nfp: flower: handle neighbour events on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: flower: prevent ingress block binds on internal ports (Pablo Cascon) [1729154] - [netdrv] nfp: add AMDA0058 boards to firmware list (Pablo Cascon) [1729154] - [netdrv] nfp: no need to check return value of debugfs_create functions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: encode mac indexes with pre-tunnel rule check (Pablo Cascon) [1729154] - [netdrv] nfp: flower: remove offloaded MACs when reprs are applied to OvS bridges (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: verify pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: detect potential pre-tunnel rules (Pablo Cascon) [1729154] - [netdrv] nfp: flower: push vlan after tunnel in merge (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS set action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS pop action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: offload MPLS push action (Pablo Cascon) [1729154] - [netdrv] nfp: flower: ensure ip protocol is specified for L4 matches (Pablo Cascon) [1729154] - [netdrv] nfp: flower: fix ethernet check on match fields (Pablo Cascon) [1729154] - [netdrv] nfp: ccm: increase message limits (Pablo Cascon) [1729154] - [netdrv] nfp: Use spinlock_t instead of struct spinlock (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE encap action support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add GRE decap classification support (Pablo Cascon) [1729154] - [netdrv] nfp: flower: rename tunnel related functions in action offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: add helper functions for tunnel classification (Pablo Cascon) [1729154] - [netdrv] nfp: flower: refactor tunnel key layer calculation (Pablo Cascon) [1729154] - [netdrv] nfp: flower: extend extack messaging for flower match and actions (Pablo Cascon) [1729154] - [netdrv] nfp: flower: use extack messages in flower offload (Pablo Cascon) [1729154] - [netdrv] nfp: flower: check L4 matches on unknown IP protocols (Pablo Cascon) [1729154] - [netdrv] nfp: print a warning when binding VFs to PF driver (Pablo Cascon) [1729154] - [netdrv] nfp: update the old flash error message (Pablo Cascon) [1729154] - [netdrv] nfp: prepare for more TX metadata prepend (Pablo Cascon) [1729154] - [netdrv] nfp: add tls init code (Pablo Cascon) [1729154] - [netdrv] nfp: parse crypto opcode TLV (Pablo Cascon) [1729154] - [netdrv] nfp: add support for sending control messages via mailbox (Pablo Cascon) [1729154] - [netdrv] nfp: parse the mailbox cmsg TLV (Pablo Cascon) [1729154] - [netdrv] nfp: make bar_lock a semaphore (Pablo Cascon) [1729154] - [netdrv] nfp: count all failed TX attempts as errors (Pablo Cascon) [1729154] - [netdrv] nfp: ensure skb network header is set for packet redirect (Pablo Cascon) [1728773] - [netdrv] nfp: reintroduce ndo_get_port_parent_id for representor ports (Pablo Cascon) [1728773] - [netdrv] nfp: implement PCI driver shutdown callback (Pablo Cascon) [1728773] - [netdrv] nfp: add SR-IOV trusted VF support (Pablo Cascon) [1728773] - [netdrv] nfp: split out common control message handling code (Pablo Cascon) [1728773] - [netdrv] nfp: move vNIC reset before netdev init (Pablo Cascon) [1728773] - [netdrv] nfp: add a mutex lock for the vNIC ctrl BAR (Pablo Cascon) [1728773] - [netdrv] nfp: opportunistically poll for reconfig result (Pablo Cascon) [1728773] - [netdrv] nfp: remove ndo_get_port_parent_id implementation (Pablo Cascon) [1728773] - [netdrv] nfp: pass switch ID through devlink_port_attrs_set() (Pablo Cascon) [1728773] - [netdrv] nfp: implement ethtool get module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: nsp: implement read SFF module EEPROM (Pablo Cascon) [1728773] - [netdrv] nfp: do not handle nn->port defined case in nfp_net_get_phys_port_name() (Pablo Cascon) [1728773] - [netdrv] nfp: register devlink port before netdev (Pablo Cascon) [1728773] - [netdrv] nfp: remove defines for unused control bits (Pablo Cascon) [1728773] - [netdrv] replace ndo_get_devlink with ndo_get_devlink_port (Pablo Cascon) [1728773] - [netdrv] nfp: add .ndo_get_devlink (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add rcu locks when accessing netdev for tunnels (Pablo Cascon) [1728773] - [netdrv] nfp: flower: add qos offload stats request and reply (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix size_t compile warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: fix implicit fallthrough warning (Pablo Cascon) [1728773] - [netdrv] nfp: flower: offload merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support stats update for merge flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: generate merge flow rule (Pablo Cascon) [1728773] - [netdrv] nfp: flower: validate merge hint flows (Pablo Cascon) [1728773] - [netdrv] nfp: flower: handle merge hint messages (Pablo Cascon) [1728773] - [netdrv] nfp: flower: get flows by host context (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow tunnels to output to internal port (Pablo Cascon) [1728773] - [netdrv] nfp: flower: support fallback packets from internal ports (Pablo Cascon) [1728773] - [netdrv] nfp: allow fallback packets from non-reprs (Pablo Cascon) [1728773] - [netdrv] nfp: flower: allow offloading of matches on 'internal' ports (Pablo Cascon) [1728773] - [netdrv] nfp: flower: turn on recirc and merge hint support in firmware (Pablo Cascon) [1728773] - [netdrv] nfp: flower: reduce action list size by coalescing mangle actions (Pablo Cascon) [1728773] - [fs] xfs: properly serialise fallocate against AIO+DIO (Eric Sandeen) [1765547] - [fs] xfs: fix attr leaf header freemap.size underflow (Brian Foster) [1728989] - [mm] maintain randomization of page free lists (Rafael Aquini) [1620349] - [mm] move buddy list manipulations into helpers (Rafael Aquini) [1620349] - [mm] shuffle initial free memory to improve memory-side-cache utilization (Rafael Aquini) [1620349] - [powerpc] kvm: ppc: book3s hv: Flush link stack on guest exit to host kernel (Gustavo Duarte) [1777686] - [powerpc] book3s64: Fix link stack flush on context switch (Gustavo Duarte) [1777686] - [powerpc] 64s: support nospectre_v2 cmdline option (Gustavo Duarte) [1777686] - [powerpc] fsl: Update Spectre v2 reporting (Gustavo Duarte) [1777686] - [powerpc] fsl: Add nospectre_v2 command line argument (Gustavo Duarte) [1777686] - [powerpc] fsl: Fix spectre_v2 mitigations reporting (Gustavo Duarte) [1777686] - [powerpc] 64: Make meltdown reporting Book3S 64 specific (Gustavo Duarte) [1777686] - [powerpc] 64: Disable the speculation barrier from the command line (Gustavo Duarte) [1777686] - [x86] kprobes: Avoid kretprobe recursion bug (Jiri Olsa) [1779235] - [x86] kprobes: Verify stack frame on kretprobe (Jiri Olsa) [1779235]- [fs] iomap: Fix pipe page leakage during splicing (Andreas Grunbacher) [1622634] - [fs] iomap: fix return value of iomap_dio_bio_actor on 32bit systems (Andreas Grunbacher) [1622634] - [fs] iomap: iomap_bmap should check iomap_apply return value (Andreas Grunbacher) [1622634] - [fs] iomap: Fix overflow in iomap_page_mkwrite (Andreas Grunbacher) [1622634] - [fs] splice: only read in as much information as there is pipe buffer space (Andreas Grunbacher) [1622634] - [fs] gfs2: Always mark inode dirty in fallocate (Andreas Grunbacher) [1622634] - [fs] dax: Fix pmd vs pte conflict detection (Jeff Moyer) [1777250] - [fs] xfs: move local to extent inode logging into bmap helper (Brian Foster) [1737677] - [fs] xfs: remove broken error handling on failed attr sf to leaf change (Brian Foster) [1737677] - [fs] xfs: log the inode on directory sf to block format change (Brian Foster) [1737677] - [block] bfq: deschedule empty bfq_queues not referred by any process (Ming Lei) [1773831] - [scsi] revert "scsi: qla2xxx: Fix memory leak when sending I/O fails" (Himanshu Madhani) [1759275] - [infiniband] rdma/iw_cxgb4: Report correct port speed/width (Vishal Kulkarni) [1757806] - [infiniband] rdma/iw_cxgb4: fix SRQ access from dump_qp() (Vishal Kulkarni) [1779997] - [net] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Vladis Dronov) [1778898] - [atm] iphase: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [x86] tls: Fix possible spectre-v1 in do_get_thread_area() (Vladis Dronov) [1778898] - [x86] ptrace: Fix possible spectre-v1 in ptrace_get_debugreg() (Vladis Dronov) [1778898] - [net] atm: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [powerpc] ptrace: Mitigate potential Spectre v1 (Vladis Dronov) [1778898] - [char] applicom: Fix potential Spectre v1 vulnerabilities (Vladis Dronov) [1778898] - [char] mwave: fix potential Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] misc/sgi-gru: fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [usb] gadget: storage: Fix Spectre v1 vulnerability (Vladis Dronov) [1778898] - [misc] hmc6352: fix potential Spectre v1 (Vladis Dronov) [1778898] - [s390] qeth: ensure linear access to packet headers (Philipp Rudo) [1781085] - [s390] qeth: guard against runt packets (Philipp Rudo) [1781085] - [s390] qeth: handle skb allocation error gracefully (Philipp Rudo) [1781085] - [s390] qeth: drop unwanted packets earlier in RX path (Philipp Rudo) [1781085] - [s390] qeth: support per-frame invalidation (Philipp Rudo) [1781085] - [s390] qeth: gather more detailed RX dropped/error statistics (Philipp Rudo) [1781085] - [s390] Mark expected switch fall-throughs (Philipp Rudo) [1781085] - [sched] fair: Scale bandwidth quota and period without losing quota/period ratio precision (Phil Auld) [1706247] - [sched] fair: Fix -Wunused-but-set-variable warnings (Phil Auld) [1706247] - [sched] fair: Fix low cpu usage with high throttling by removing expiration of cpu-local slices (Phil Auld) [1706247] - [kernel] sched/core: Remove double update_max_interval() call on CPU startup (Phil Auld) [1757535] - [kernel] sched/core: Fix migration to invalid CPU in __set_cpus_allowed_ptr() (Phil Auld) [1757535] - [kernel] sched/fair: Don't assign runtime for throttled cfs_rq (Phil Auld) [1757535] - [kernel] cpufreq: schedutil: Don't skip freq update when limits change (Phil Auld) [1757535] - [kernel] sched/deadline: Fix double accounting of rq/running bw in push & pull (Phil Auld) [1757535] - [kernel] sched/fair: Fix imbalance due to CPU affinity (Phil Auld) [1757535] - [kernel] sched/fair: Use RCU accessors consistently for ->numa_group (Phil Auld) [1757535] - [kernel] sched/fair: Don't free p->numa_faults with concurrent readers (Phil Auld) [1757535] - [kernel] sched/fair: Rename weighted_cpuload() to cpu_runnable_load() (Phil Auld) [1757535] - [kernel] sched/topology: Remove unused 'sd' parameter from arch_scale_cpu_capacity() (Phil Auld) [1757535] - [kernel] sched/fair: Don't push cfs_bandwith slack timers forward (Phil Auld) [1757535] - [documentation] sched/fair: Fix "runnable_avg_yN_inv" not used warnings (Phil Auld) [1757535] - [kernel] sched/fair: Clean up definition of NOHZ blocked load functions (Phil Auld) [1757535] - [kernel] sched/core: Add __sched tag for io_schedule() (Phil Auld) [1757535] - [kernel] sched/fair: Remove sgs->sum_weighted_load (Phil Auld) [1757535] - [kernel] sched/core: Remove sd->*_idx (Phil Auld) [1757535] - [kernel] sched/core: Remove rq->cpu_load[] (Phil Auld) [1757535] - [kernel] sched/debug: Remove sd->*_idx range on sysctl (Phil Auld) [1757535] - [kernel] sched/fair: Replace source_load() & target_load() with weighted_cpuload() (Phil Auld) [1757535] - [kernel] sched/fair: Remove the rq->cpu_load[] update code (Phil Auld) [1757535] - [kernel] sched/fair: Remove rq->load (Phil Auld) [1757535] - [kernel] sched/core: Unify p->on_rq updates (Phil Auld) [1757535] - [kernel] sched/core: Remove ttwu_activate() (Phil Auld) [1757535] - [kernel] sched/cpufreq: Fix 32-bit math overflow (Phil Auld) [1757535] - [kernel] sched/fair: Update scale invariance of PELT (Phil Auld) [1757535] - [kernel] sched/pelt: Skip updating util_est when utilization is higher than CPU's capacity (Phil Auld) [1757535] - [kernel] sched/fair: Move the rq_of() helper function (Phil Auld) [1757535] - [kernel] sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/task_rq_lock() (Phil Auld) [1757535] - [kernel] sched/numa: Remove unused numa_stats::nr_running field (Phil Auld) [1757535] - [kernel] sched/fair: Add lsub_positive() and use it consistently (Phil Auld) [1706247 1757535] - [kernel] sched/fair: Mask UTIL_AVG_UNCHANGED usages (Phil Auld) [1706247 1757535] - [cpuidle] teo: Avoid using "early hits" incorrectly (Al Stone) [1725618] - [cpuidle] teo: Fix "early hits" handling for disabled idle states (Al Stone) [1725618] - [cpuidle] teo: Consider hits and misses metrics of disabled states (Al Stone) [1725618] - [cpuidle] teo: Rename local variable in teo_select() (Al Stone) [1725618] - [cpuidle] teo: Ignore disabled idle states that are too deep (Al Stone) [1725618] - [cpuidle] teo: Get rid of redundant check in teo_update() (Al Stone) [1725618] - [cpuidle] teo: Allow tick to be stopped if PM QoS is used (Al Stone) [1725618] - [cpuidle] governors: unify last_state_idx (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Fix idle states all being marked invalid (Al Stone) [1725618] - [cpuidle] menu: Avoid overflows when computing variance (Al Stone) [1725618] - [cpuidle] dt: bail out if the idle-state DT node is not compatible (Al Stone) [1725618] - [kernel] cpuidle: use BIT() for idle state flags and remove CPUIDLE_DRIVER_FLAGS_MASK (Al Stone) [1725618] - [cpuidle] New timer events oriented governor for tickless systems (Al Stone) [1725618] - [cpuidle] Add 'above' and 'below' idle state metrics (Al Stone) [1725618] - [cpuidle] big.little: fix refcount leak (Al Stone) [1725618] - [documentation] documentation: admin-guide: pm: Add cpuidle document (Al Stone) [1725618] - [cpuidle] powerpc/pseries/cpuidle: Fix preempt warning (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Convert to use cpuidle_register|unregister() (Al Stone) [1725618] - [cpuidle] arm: cpuidle: Don't register the driver when back-end init returns -ENXIO (Al Stone) [1725618] - [cpuidle] menu: Remove get_loadavg() from the performance multiplier (Al Stone) [1725618] - [kernel] sched: Factor out nr_iowait and nr_iowait_cpu (Al Stone) [1725618] - [kernel] sched/core: Fix comment regarding nr_iowait_cpu() and get_iowait_load() (Al Stone) [1725618] - [cpuidle] menu: Avoid computations when result will be discarded (Al Stone) [1725618] - [cpuidle] menu: Drop redundant comparison (Al Stone) [1725618] - [cpuidle] menu: Simplify checks related to the polling state (Al Stone) [1725618] - [cpuidle] menu: Move the latency_req == 0 special case check (Al Stone) [1725618] - [cpuidle] menu: Avoid computations for very close timers (Al Stone) [1725618] - [cpuidle] menu: Do not update last_state_idx in menu_select() (Al Stone) [1725618] - [cpuidle] menu: Get rid of first_idx from menu_select() (Al Stone) [1725618] - [cpuidle] menu: Compute first_idx when latency_req is known (Al Stone) [1725618] - [cpuidle] menu: Replace data->predicted_us with local variable (Al Stone) [1725618] - [cpuidle] enter_state: Don't needlessly calculate diff time (Al Stone) [1725618] - [kernel] cpuidle: Remove unnecessary wrapper cpuidle_get_last_residency() (Al Stone) [1725618] - [cpuidle] menu: Update stale polling override comment (Al Stone) [1725618] - [cpuidle] menu: Fix white space (Al Stone) [1725618] - [cpuidle] powernv/cpuidle: Use parsed device tree values for cpuidle_init (Al Stone) [1725618] - [powerpc] powernv/cpuidle: Parse dt idle properties into global structure (Al Stone) [1725618] - [cpuidle] arm: cpuidle: silence error on driver registration failure (Al Stone) [1725618]- [documentation] docs: admin-guide: Remove threads-max auto-tuning (Joe Lawrence) [1771270] - [documentation] docs: admin-guide: Fix min value of threads-max in kernel.rst (Joe Lawrence) [1771270] - [kernel] sysctl.c: do not override max_threads provided by userspace (Joe Lawrence) [1771270] - [fs] ext4: fix integer overflow when calculating commit interval (Lukas Czerner) [1775166] - [fs] ext4: fix punch hole for inline_data file systems (Lukas Czerner) [1775166] - [fs] ext4: fix warning inside ext4_convert_unwritten_extents_endio (Lukas Czerner) [1775166] - [fs] ext4: set error return correctly when ext4_htree_store_dirent fails (Lukas Czerner) [1775166] - [fs] ext4: fix warning when turn on dioread_nolock and inline_data (Lukas Czerner) [1775166] - [fs] ext4: use jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [fs] jbd2: introduce jbd2_inode dirty range scoping (Lukas Czerner) [1775166] - [mm] add filemap_fdatawait_range_keep_errors() (Lukas Czerner) [1775166] - [fs] ext4: enforce the immutable flag on open files (Lukas Czerner) [1775166] - [fs] ext4: don't allow any modifications to an immutable file (Lukas Czerner) [1775166] - [fs] jbd2: fix typo in comment of journal_submit_inode_data_buffers (Lukas Czerner) [1775166] - [fs] jbd2: fix some print format mistakes (Lukas Czerner) [1775166] - [fs] ext4: do not delete unlinked inode from orphan list on failed truncate (Lukas Czerner) [1775166] - [fs] ext4: wait for outstanding dio during truncate in nojournal mode (Lukas Czerner) [1775166] - [fs] ext4: don't perform block validity checks on the journal inode (Lukas Czerner) [1775166] - [fs] ext4: fix block validity checks for journal inodes using indirect blocks (Lukas Czerner) [1775166] - [fs] ext4: fix miscellaneous sparse warnings (Lukas Czerner) [1775166] - [fs] jbd2: fix potential double free (Lukas Czerner) [1775166] - [fs] quota: fix condition for resetting time limit in do_set_dqblk() (Lukas Czerner) [1778119] - [fs] quota: honor quota type in Q_XGETQSTAT[V] calls (Lukas Czerner) [1778119] - [fs] quota: fix a problem about transfer quota (Lukas Czerner) [1778119] - [fs] quota: add dqi_dirty_list description to comment of Dquot List Management (Lukas Czerner) [1778119] - [fs] quota: check time limit when back out space/inode change (Lukas Czerner) [1778119] - [fs] quota: fix wrong indentation (Lukas Czerner) [1778119] - [fs] quota: remove trailing whitespaces (Lukas Czerner) [1778119] - [fs] quota: code cleanup for __dquot_alloc_space() (Lukas Czerner) [1778119] - [fs] quota: Lock s_umount in exclusive mode for Q_XQUOTA{ON, OFF} quotactls (Lukas Czerner) [1778119] - [fs] quota: Replace XQM_MAXQUOTAS usage with MAXQUOTAS (Lukas Czerner) [1778119] - [hv] vmbus: Fix harmless building warnings without CONFIG_PM_SLEEP (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Resume after fixing up old primary channels (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend after cleaning up hv_sock and sub channels (Mohammed Gamal) [1774675] - [kernel] hv: vmbus: Add a helper function is_sub_channel() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Clean up hv_sock channels by force upon suspend (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Suspend/resume the vmbus itself for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Ignore the offers when resuming from hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Implement suspend/resume for VSC drivers for hibernation (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix virt_to_hvpfn() for X86_PAE (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the unused "tsc_page" from struct hv_context (Mohammed Gamal) [1774675] - [hv] tools: hv: Use the correct style for SPDX License Identifier (Mohammed Gamal) [1774675] - [hv] hv_balloon: Reorganize the probe function (Mohammed Gamal) [1774675] - [hv] hv_balloon: Use a static page for the balloon_up send buffer (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Replace page definition with Hyper-V specific one (Mohammed Gamal) [1774675] - [hv] hv: Add a module description line to the hv_vmbus driver (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Remove the undesired put_cpu_ptr() in hv_synic_cleanup() (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Fix race condition with new ring_buffer_info mutex (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Set ring_info field to 0 and remove memset (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Refactor chan->state if statement (Mohammed Gamal) [1774675] - [hv] hv: vmbus: Expose monitor data only when monitor pages are used (Mohammed Gamal) [1774675] - [netdrv] hv_netvsc: Fix error handling in netvsc_attach() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix error handling in netvsc_set_features() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Sync offloading features to VF NIC (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Allow scatter-gather feature to be tunable (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix a warning of suspicious RCU usage (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Fix extra rcu_read_unlock in netvsc_recv_callback() (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: Set probe mode to sync (Mohammed Gamal) [1774687] - [netdrv] hv_netvsc: fix race that may miss tx queue wakeup (Mohammed Gamal) [1774687] - [netdrv] nfp: bpf: fix latency bug when updating stack index register (Pablo Cascon) [1729156] - [netdrv] nfp: bpf: eliminate zero extension code-gen (Pablo Cascon) [1729156] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during suspend/resume (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Call bnxt_ulp_stop()/bnxt_ulp_start() during error recovery (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Improve bnxt_ulp_stop()/bnxt_ulp_start() call sequence (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: flow_offload: offload tunnel decap rules via indirect callbacks (Jonathan Toppins) [1773724] - [netdrv] bnxt: Avoid logging an unnecessary message when a flow can't be offloaded (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to collect crash dump via ethtool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Add support to invoke OP-TEE API to reset firmware (Jonathan Toppins) [1773724] - [netdrv] broadcom: bnxt: Fix use true/false for bool (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Avoid disabling pci device in bnxt_remove_one() for already disabled device (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Minor formatting changes in FW devlink_health_reporter (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Adjust the time to wait before polling firmware readiness (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix devlink NVRAM related byte order related issues (Jonathan Toppins) [1773724] - [netdrv] bnxt_en: Fix the size of devlink MSIX parameters (Jonathan Toppins) [1773724] - [nvme] Fix parsing of ANA log page (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix ana log nsid lookup when nsid is not found (Ewan Milne) [1769028] - [nvme] nvme-multipath: fix possible I/O hang when paths are updated (Ewan Milne) [1769028] - [nvme] revert "nvme: update node paths after adding new path" (Ewan Milne) [1769028] - [netdrv] mlx5: Update the list of the PCI supported devices (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix auto group size calculation (Mohammad Heib) [1776921] - [netdrv] mlx5e: Do not use non-EXT link modes in EXT mode (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix set vf link state error flow (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Limit STE hash table enlarge based on bytemask (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix invalid EQ vector number on CQ creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Skip rehash for tables with byte mask zero (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix error flow cleanup in mlx5e_tc_tun_create_header_ipv4/6 (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix matcher builders select check (Mohammad Heib) [1776921] - [netdrv] mlx5: Read num_vfs before disabling SR-IOV (Mohammad Heib) [1776921] - [netdrv] mlx5: Clear VF's configuration on disabling SRIOV (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak during rule creation (Mohammad Heib) [1776921] - [netdrv] mlx5: DR, Fix memory leak in modify action destroy (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix eswitch debug print of max fdb flow (Mohammad Heib) [1776921] - [netdrv] mlx5: LAG, Use affinity type enumerators (Mohammad Heib) [1776921] - [netdrv] mlx5: E-switch, Enable metadata on own vport (Mohammad Heib) [1776921] - [netdrv] mlx5: Correct comment for legacy fields (Mohammad Heib) [1776921] - [netdrv] mlx5: Fixed a typo in a comment in esw_del_uc_addr() (Mohammad Heib) [1776921] - [netdrv] mlx5: Fix rtable reference leak (Mohammad Heib) [1776921] - [netdrv] mlx5: fix a -Wstringop-truncation warning (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix a race with XSKICOSQ in XSK wakeup flow (Mohammad Heib) [1776921] - [netdrv] mlx5e: Fix wrong max num channels indication (Mohammad Heib) [1776921] - [netdrv] mlx5e: Add XSK zero-copy support (Mohammad Heib) [1776921]- [mm] memremap: drop unused SECTION_SIZE and SECTION_MASK (Don Dutile) [1754737] - [mm] memremap: Fix reuse of pgmap instances with internal references (Don Dutile) [1754737] - [mm] memunmap: don't access uninitialized memmap in memunmap_pages() (Don Dutile) [1754737] - [mm] memremap: move from kernel/ to mm/ (Don Dutile) [1754737] - [kernel] memremap: provide an optional internal refcount in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: replace the altmap_valid field with a PGMAP_ALTMAP_VALID flag (Don Dutile) [1754737] - [mm] memremap: remove the data field in struct dev_pagemap (Don Dutile) [1754737] - [kernel] memremap: add a migrate_to_ram method to struct dev_pagemap_ops (Don Dutile) [1754737] - [kernel] memremap: lift the devmap_enable manipulation into devm_memremap_pages (Don Dutile) [1754737] - [nvdimm] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754737] - [kernel] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754737] - [kernel] memremap: validate the pagemap type passed to devm_memremap_pages (Don Dutile) [1754737] - [mm] remove MEMORY_DEVICE_PUBLIC support (Don Dutile) [1754737] - [mm] migrate.c: cleanup expected_page_refs() (Don Dutile) [1754737] - [mm] migration: factor out code to compute expected number of page references (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754737] - [kernel] mm/devm_memremap_pages: introduce devm_memunmap_pages (Don Dutile) [1754737] - [kernel] memremap.c: remove the unused device_private_entry_fault() export (Don Dutile) [1754737] - [base] devres: introduce devm_release_action() (Don Dutile) [1754737] - [base] devres: Align data[] to ARCH_KMALLOC_MINALIGN (Don Dutile) [1754737] - [base] devres: provide devm_kstrdup_const() (Don Dutile) [1754737] - [base] devres: constify p in devm_kfree() (Don Dutile) [1754737] - [kernel] mm: move is_kernel_rodata() to asm-generic/sections.h (Don Dutile) [1754737] - [kernel] mm: fix vm_fault_t cast in VM_FAULT_GET_HINDEX() (Don Dutile) [1754737] - [kernel] mm: create the new vm_fault_t type (Don Dutile) [1754737] - [kernel] mm/hmm: convert to use vm_fault_t (Don Dutile) [1754737] - [kernel] mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm (Don Dutile) [1754737] - [fs] proc/vmcore.c: Convert to use vmf_error() (Don Dutile) [1754737] - [fs] proc/vmcore.c: use new typedef vm_fault_t (Don Dutile) [1754737] - [s390] vdso_fault return type (Don Dutile) [1754737] - [mm] inline vm_insert_pfn_prot() into caller (Don Dutile) [1754737] - [mm] remove vm_insert_pfn() (Don Dutile) [1754737] - [mm] make vm_insert_pfn_prot() static (Don Dutile) [1754737] - [x86] convert vdso to use vm_fault_t (Don Dutile) [1754737] - [mm] introduce vmf_insert_pfn_prot() (Don Dutile) [1754737] - [mm] convert __vm_insert_mixed() to vm_fault_t (Don Dutile) [1754737] - [kernel] mm: remove vm_insert_mixed() (Don Dutile) [1754737] - [fs] cramfs: convert to use vmf_insert_mixed (Don Dutile) [1754737] - [scsi] cxlflash: Change return type for fault handler (Don Dutile) [1754737] - [misc] ocxl: Change return type for fault handler (Don Dutile) [1754737] - [kernel] fs/iomap.c: change return type to vm_fault_t (Don Dutile) [1754737] - [mm] swap.c: remove duplicated include (Don Dutile) [1754737] - [kernel] perf/aux: Fix the aux_output group inheritance fix (Michael Petlan) [1743210] - [kernel] perf/core: Fix inheritance of aux_output groups (Michael Petlan) [1743210] - [kernel] perf/aux: Disallow aux_output for kernel events (Michael Petlan) [1743210] - [kernel] perf/core: Reattach a misplaced comment (Michael Petlan) [1743210] - [kernel] perf/aux: Fix AUX output stopping (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON transaction for machine type 8561 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite (Michael Petlan) [1743210] - [tools] objtool: Fix build by linking against tools/lib/ctype.o sources (Michael Petlan) [1743210] - [tools] perf list: Allow plurals for metric, metricgroup (Michael Petlan) [1743210] - [tools] perf vendor events: Minor fixes to the README (Michael Petlan) [1743210] - [tools] perf vendor events amd: Remove redundant '[' (Michael Petlan) [1743210] - [tools] perf vendor events amd: Add L3 cache events for Family 17h (Michael Petlan) [1743210] - [tools] tools include uapi: Update copy of files related to new fspick, fsmount, fsconfig, fsopen, move_mount and open_tree syscalls (Michael Petlan) [1743210] - [tools] perf pmu-events: Fix missing "cpu_clk_unhalted.core" event (Michael Petlan) [1743210] - [tools] perf annotate: Fix s390 gap between kernel end and module start (Michael Petlan) [1743210] - [tools] perf record: Fix module size on s390 (Michael Petlan) [1743210] - [tools] perf tools: Fix include paths in ui directory (Michael Petlan) [1743210] - [tools] perf tools: Fix a typo in a variable name in the Documentation Makefile (Michael Petlan) [1743210] - [tools] perf cpumap: Fix writing to illegal memory in handling cpumap mask (Michael Petlan) [1743210] - [tools] perf ftrace: Fix failure to set cpumask when only one cpu is present (Michael Petlan) [1743210] - [tools] perf db-export: Fix thread__exec_comm() (Michael Petlan) [1743210] - [tools] perf annotate: Fix printing of unaugmented disassembled instructions from BPF (Michael Petlan) [1743210] - [tools] perf bench numa: Fix cpu0 binding (Michael Petlan) [1743210] - [tools] perf tools: Fix perf.data documentation units for memory size (Michael Petlan) [1743210] - [tools] perf header: Fix use of unitialized value warning (Michael Petlan) [1743210] - [tools] perf header: Fix divide by zero error if f_header.attr_size==0 (Michael Petlan) [1743210] - [tools] tools perf beauty: Fix usbdevfs_ioctl table generator to handle _IOC() (Michael Petlan) [1743210] - [tools] perf build: Do not use -Wshadow on gcc < 4.8 (Michael Petlan) [1743210] - [tools] perf probe: Avoid calling freeing routine multiple times for same pointer (Michael Petlan) [1743210] - [tools] perf probe: Set pev->nargs to zero after freeing pev->args entries (Michael Petlan) [1743210] - [tools] perf session: Fix loading of compressed data split across adjacent records (Michael Petlan) [1743210] - [tools] perf stat: Always separate stalled cycles per insn (Michael Petlan) [1743210] - [tools] perf stat: Fix segfault for event group in repeat mode (Michael Petlan) [1743210] - [tools] perf tools: Fix proper buffer size for feature processing (Michael Petlan) [1743210] - [tools] perf script: Fix off by one in brstackinsn IPC computation (Michael Petlan) [1743210] - [tools] perf script: Improve man page description of metrics (Michael Petlan) [1743210] - [tools] perf script: Fix --max-blocks man page description (Michael Petlan) [1743210] - [tools] perf vendor events s390: Add JSON files for machine type 8561 (Michael Petlan) [1743210] - [tools] perf cs-etm: Return errcode in cs_etm__process_auxtrace_info() (Michael Petlan) [1743210] - [tools] perf cs-etm: Remove errnoeous ERR_PTR() usage in cs_etm__process_auxtrace_info (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export switch events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Export switch events (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__threads() (Michael Petlan) [1743210] - [tools] perf script: Add scripting operation process_switch() (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use new 'has_calls' column (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Remove redundant semi-colons (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add has_calls column to comms table (Michael Petlan) [1743210] - [tools] perf db-export: Also export thread's current comm (Michael Petlan) [1743210] - [tools] perf db-export: Factor out db_export__comm() (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export comm details (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Export comm details (Michael Petlan) [1743210] - [tools] perf db-export: Fix a white space issue in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Move export__comm_thread into db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Export comm before exporting thread (Michael Petlan) [1743210] - [tools] perf db-export: Export main_thread in db_export__sample() (Michael Petlan) [1743210] - [tools] perf db-export: Pass main_thread to db_export__thread() (Michael Petlan) [1743210] - [tools] perf db-export: Rename db_export__comm() to db_export__exec_comm() (Michael Petlan) [1743210] - [tools] perf db-export: Get rid of db_export__deferred() (Michael Petlan) [1743210] - [tools] perf trace: Auto bump rlimit(MEMLOCK) for eBPF maps sake (Michael Petlan) [1743210] - [tools] perf test: Auto bump rlimit(MEMLOCK) for BPF test sake (Michael Petlan) [1743210] - [tools] perf tools: Introduce rlimit__bump_memlock() helper (Michael Petlan) [1743210] - [tools] perf-probe: Add user memory access attribute support (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf intel-bts: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf script: Assume native_arch for pipe mode (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Fix DROP VIEW power_events_view (Michael Petlan) [1743210] - [tools] perf hists browser: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf cs-etm: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf parse-events: remove unused variable: error (Michael Petlan) [1743210] - [tools] perf parse-events: Remove unused variable 'i' (Michael Petlan) [1743210] - [tools] perf metricgroup: Add missing list_del_init() when flushing egroups list (Michael Petlan) [1743210] - [tools] perf tools: Use list_del_init() more thorougly (Michael Petlan) [1743210] - [tools] perf tools: Use zfree() where applicable (Michael Petlan) [1743210] - [tools] tools lib: Adopt zalloc()/zfree() from tools/perf (Michael Petlan) [1743210] - [tools] perf tools: Move get_current_dir_name() cond prototype out of util.h (Michael Petlan) [1743210] - [tools] perf namespaces: Move the conditional setns() prototype to namespaces.h (Michael Petlan) [1743210] - [tools] perf tools: Add missing headers, mostly stdlib.h (Michael Petlan) [1743210] - [tools] perf evsel: perf_evsel__name(NULL) is valid, no need to check evsel (Michael Petlan) [1743210] - [tools] perf session: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf inject: The tool->read() call may pass a NULL evsel, handle it (Michael Petlan) [1743210] - [tools] perf map: Fix potential NULL pointer dereference found by smatch tool (Michael Petlan) [1743210] - [tools] perf trace: Fix potential NULL pointer dereference found by the smatch tool (Michael Petlan) [1743210] - [tools] perf annotate: Fix dereferencing freed memory found by the smatch tool (Michael Petlan) [1743210] - [tools] perf top: Fix potential NULL pointer dereference detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf stat: Fix use-after-freed pointer detected by the smatch tool (Michael Petlan) [1743210] - [tools] perf test mmap-thread-lookup: Initialize variable to suppress memory sanitizer warning (Michael Petlan) [1743210] - [tools] perf script: Allow specifying the files to process guest samples (Michael Petlan) [1743210] - [tools] perf tools metric: Don't include duration_time in group (Michael Petlan) [1743210] - [tools] perf list: avoid extra : for --raw metrics (Michael Petlan) [1743210] - [tools] perf vendor events intel: Metric fixes for SKX/CLX (Michael Petlan) [1743210] - [tools] perf tools: Fix typos / broken sentences (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 L3C PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 HHA PMU aliasing (Michael Petlan) [1743210] - [tools] perf jevents: Add support for Hisi hip08 DDRC PMU aliasing (Michael Petlan) [1743210] - [tools] perf pmu: Support more complex PMU event aliasing (Michael Petlan) [1743210] - [tools] perf diff: Documentation -c cycles option (Michael Petlan) [1743210] - [tools] perf diff: Print the basic block cycles diff (Michael Petlan) [1743210] - [tools] perf diff: Link same basic blocks among different data (Michael Petlan) [1743210] - [tools] perf diff: Use hists to manage basic blocks per symbol (Michael Petlan) [1743210] - [tools] perf diff: Check if all data files with branch stacks (Michael Petlan) [1743210] - [tools] perf hists: Add block_info in hist_entry (Michael Petlan) [1743210] - [tools] perf symbol: Create block_info structure (Michael Petlan) [1743210] - [tools] perf jevents: Use nonlocal include statements in pmu-events.c (Michael Petlan) [1743210] - [tools] perf annotate: Add csky support (Michael Petlan) [1743210] - [tools] perf stat: Fix metrics with --no-merge (Michael Petlan) [1743210] - [tools] perf stat: Fix group lookup for metric group (Michael Petlan) [1743210] - [tools] perf stat: Don't merge events in the same PMU (Michael Petlan) [1743210] - [tools] perf stat: Make metric event lookup more robust (Michael Petlan) [1743210] - [tools] tools lib: Move argv_{split, free} from tools/perf/util/ (Michael Petlan) [1743210] - [tools] perf tools: Drop strxfrchar(), use strreplace() equivalent from kernel (Michael Petlan) [1743210] - [tools] tools lib: Adopt strreplace() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use strim() from tools/lib (Michael Petlan) [1743210] - [tools] perf tools: Remove trim() implementation, use tools/lib's strim() (Michael Petlan) [1743210] - [tools] tools lib: Adopt strim() from the kernel (Michael Petlan) [1743210] - [tools] perf tools: Ditch rtrim(), use skip_spaces() to get closer to the kernel (Michael Petlan) [1743210] - [tools] perf report: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf metricgroup: Use strsep() (Michael Petlan) [1743210] - [tools] perf strfilter: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf probe: Use skip_spaces() for argv handling (Michael Petlan) [1743210] - [tools] perf time-utils: Use skip_spaces() (Michael Petlan) [1743210] - [tools] perf header: Use skip_spaces() in __write_cpudesc() (Michael Petlan) [1743210] - [tools] perf stat: Use recently introduced skip_spaces() (Michael Petlan) [1743210] - [tools] tools lib: Adopt skip_spaces() from the kernel sources (Michael Petlan) [1743210] - [tools] perf tools: Use linux/ctype.h in more places (Michael Petlan) [1743210] - [tools] tools perf: Move from sane_ctype.h obtained from git to the Linux's original (Michael Petlan) [1743210] - [tools] perf tools: Add missing util.h to pick up 'page_size' variable (Michael Petlan) [1743210] - [tools] perf tools: Remove old baggage that is util/include/linux/ctype.h (Michael Petlan) [1743210] - [tools] perf symbols: We need util.h in symbol-elf.c for zfree() (Michael Petlan) [1743210] - [tools] perf kallsyms: Adopt hex2u64 from tools/perf/util/util.h (Michael Petlan) [1743210] - [tools] tools x86 machine: Add missing util.h to pick up 'page_size' (Michael Petlan) [1743210] - [tools] perf string: Move 'dots' and 'graph_dotted_line' out of sane_ctype.h (Michael Petlan) [1743210] - [tools] perf ctype: Remove now unused 'spaces' variable (Michael Petlan) [1743210] - [tools] perf ui stdio: No need to use 'spaces' to left align (Michael Petlan) [1743210] - [tools] perf ctype: Remove unused 'graph_line' variable (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export Intel PT power and ptwrite events (Michael Petlan) [1743210] - [tools] perf db-export: Export synth events (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize CBR events when last seen value changes (Michael Petlan) [1743210] - [tools] perf intel-pt: Add CBR value to decoder state (Michael Petlan) [1743210] - [tools] perf intel-pt: Cater for CBR change in PSB+ (Michael Petlan) [1743210] - [tools] perf intel-pt: Decoder to output CBR changes immediately (Michael Petlan) [1743210] - [tools] perf thread-stack: Eliminate code duplicating thread_stack__pop_ks() (Michael Petlan) [1743210] - [tools] perf thread-stack: Fix thread stack return from kernel for kernel-only case (Michael Petlan) [1743210] - [tools] perf tools: Fix cache.h include directive (Michael Petlan) [1743210] - [tools] tools build: Fix the zstd test in the test-all.c common case feature test (Michael Petlan) [1743210] - [tools] perf build: Handle slang being in /usr/include and in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] tools build: Add test to check if slang.h is in /usr/include/slang/ (Michael Petlan) [1743210] - [tools] perf tools: Don't hardcode host include path for libslang (Michael Petlan) [1743210] - [tools] perf evsel: Make perf_evsel__name() accept a NULL argument (Michael Petlan) [1743210] - [tools] perf trace: Fixup pointer arithmetic when consuming augmented syscall args (Michael Petlan) [1743210] - [tools] perf pmu: Fix uncore PMU alias list for ARM64 (Michael Petlan) [1743210] - [tools] perf tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] tools build feature tests: Add missing SPDX headers (Michael Petlan) [1743210] - [tools] perf trace: Streamline validation of select syscall names list (Michael Petlan) [1743210] - [tools] perf trace: Fix exclusion of not available syscall names from selector list (Michael Petlan) [1743210] - [tools] perf intel-pt: Add callchain to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add memory information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add LBR information to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add XMM registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Add gp registers to synthesized PEBS sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Synthesize PEBS sample basic information (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out common sample preparation for re-use (Michael Petlan) [1743210] - [tools] perf intel-pt: Prepare to synthesize PEBS samples (Michael Petlan) [1743210] - [tools] perf intel-pt: Add decoder support for PEBS via PT (Michael Petlan) [1743210] - [tools] perf intel-pt: Add Intel PT packet decoder test (Michael Petlan) [1743210] - [tools] perf intel-pt: Add new packets for PEBS via PT (Michael Petlan) [1743210] - [tools] perf tests arm64: Compile tests unconditionally (Michael Petlan) [1743210] - [tools] perf trace: Skip unknown syscalls when expanding strace like syscall groups (Michael Petlan) [1743210] - [tools] perf report: Support s390 diag event display on x86 (Michael Petlan) [1743210] - [tools] perf report: Fix OOM error in TUI mode on s390 (Michael Petlan) [1743210] - [tools] perf test 6: Fix missing kvm module load for s390 (Michael Petlan) [1743210] - [tools] perf time-utils: Add support for multiple explicit time intervals (Michael Petlan) [1743210] - [tools] perf tests: Add a test for time-utils (Michael Petlan) [1743210] - [tools] perf time-utils: Make perf_time__parse_for_ranges() more logical (Michael Petlan) [1743210] - [tools] perf time-utils: Simplify perf_time__parse_for_ranges() error paths slightly (Michael Petlan) [1743210] - [tools] perf time-utils: Fix --time documentation (Michael Petlan) [1743210] - [tools] perf time-utils: Prevent percentage time range overlap (Michael Petlan) [1743210] - [tools] perf time-utils: Factor out set_percent_time() (Michael Petlan) [1743210] - [tools] perf time-utils: Treat time ranges consistently (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for efficient time interval filtering (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for lookahead (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_get_buffer() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add intel_pt_fast_forward() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add reposition parameter to intel_pt_get_data() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_reposition() (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_8b_tsc() (Michael Petlan) [1743210] - [tools] perf intel-pt: Add lookahead callback (Michael Petlan) [1743210] - [tools] perf report: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf script: Set perf time interval in itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf auxtrace: Add perf time interval to itrace_synth_ops (Michael Petlan) [1743210] - [tools] perf config: Update default value for llvm.clang-bpf-cmd-template (Michael Petlan) [1743210] - [tools] perf cs-etm: Properly set the value of 'old' and 'head' in snapshot mode (Michael Petlan) [1743210] - [tools] perf data: Fix perf.data documentation for HEADER_CPU_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf tools: Apply new CPU topology sysfs attributes (Michael Petlan) [1743210] - [tools] perf header: Rename "sibling cores" to "sibling sockets" (Michael Petlan) [1743210] - [tools] perf stat: Support per-die aggregation (Michael Petlan) [1743210] - [tools] perf header: Add die information in CPU topology (Michael Petlan) [1743210] - [tools] perf cpumap: Retrieve die id information (Michael Petlan) [1743210] - [tools] perf evsel: Remove superfluous nthreads system_wide setup in alloc_fd() (Michael Petlan) [1743210] - [tools] perf record: Add support to collect callchains from kernel or user space only (Michael Petlan) [1743210] - [tools] perf config: Bail out when a handler returns failure for a key-value pair (Michael Petlan) [1743210] - [tools] perf trace: Exit when failing to build eBPF program (Michael Petlan) [1743210] - [tools] perf trace: Associate more argument names with the filename beautifier (Michael Petlan) [1743210] - [tools] perf trace: Consume the augmented_raw_syscalls payload (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move reading filename to the loop (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Change helper to consider just the augmented_filename part (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Move the probe_read_str to a separate function (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Tell which args are filenames and how many bytes to copy (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Select find text when find bar is activated (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Tree (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to Call Graph Graph (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add CallGraphModelParams (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add IPC information to the Branch reports (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Export IPC information (Michael Petlan) [1743210] - [tools] perf db-export: Add brief documentation (Michael Petlan) [1743210] - [tools] perf thread-stack: Accumulate IPC information (Michael Petlan) [1743210] - [tools] perf intel-pt: Document IPC usage (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from TSC/TMA/MTC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Re-factor TIP cases in intel_pt_walk_to_ip (Michael Petlan) [1743210] - [tools] perf intel-pt: Record when decoding PSB+ packets (Michael Petlan) [1743210] - [tools] perf script: Add output of IPC ratio (Michael Petlan) [1743210] - [tools] perf intel-pt: Add support for samples to contain IPC ratio (Michael Petlan) [1743210] - [tools] perf tools: Add IPC information to perf_sample (Michael Petlan) [1743210] - [tools] perf intel-pt: Accumulate cycle count from CYC packets (Michael Petlan) [1743210] - [tools] perf intel-pt: Factor out intel_pt_update_sample_time (Michael Petlan) [1743210] - [tools] perf record: Allow mixing --user-regs with --call-graph=dwarf (Michael Petlan) [1743210] - [tools] perf symbols: Remove unused variable 'err' (Michael Petlan) [1743210] - [tools] perf data: document directory format header: HEADER_DIR_FORMAT (Michael Petlan) [1743210] - [tools] perf data: document clockid header: HEADER_CLOCKID (Michael Petlan) [1743210] - [tools] perf data: document memory topology header: HEADER_MEM_TOPOLOGY (Michael Petlan) [1743210] - [tools] perf data: Add description of header HEADER_BPF_PROG_INFO and HEADER_BPF_BTF (Michael Petlan) [1743210] - [tools] perf intel-pt: Rationalize intel_pt_sync_switch()'s use of next_tid (Michael Petlan) [1743210] - [tools] perf intel-pt: Improve sync_switch by processing PERF_RECORD_SWITCH* in events (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-postgresql.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: export-to-sqlite.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Add support for pyside2 (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Use argparse module for argument parsing (Michael Petlan) [1743210] - [tools] perf scripts python: exported-sql-viewer.py: Change python2 to python (Michael Petlan) [1743210] - [tools] perf top: Lower message level for failure on synthesizing events for pre-existing BPF programs (Michael Petlan) [1743210] - [tools] perf machine: Return NULL instead of null-terminating /proc/version array (Michael Petlan) [1743210] - [tools] perf version: Append 12 git SHA chars to the version string (Michael Petlan) [1743210] - [tools] perf script: Remove superfluous BPF event titles (Michael Petlan) [1743210] - [tools] perf script: Add --show-bpf-events to show eBPF related events (Michael Petlan) [1743210] - [tools] perf tests: Add map_groups__merge_in test (Michael Petlan) [1743210] - [tools] perf script: Pad DSO name for --call-trace (Michael Petlan) [1743210] - [tools] perf dso: Add BPF DSO read and size hooks (Michael Petlan) [1743210] - [tools] perf dso: Simplify dso_cache__read function (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso_cache__read (Michael Petlan) [1743210] - [tools] perf dso: Separate generic code in dso__data_file_size() (Michael Petlan) [1743210] - [tools] perf tools: Remove const from thread read accessors (Michael Petlan) [1743210] - [tools] perf top: Add --namespaces option (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for sync_file_range's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsmount' arguments (Michael Petlan) [1743210] - [tools] perf trace: Introduce syscall_arg__scnprintf_strarray_flags (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsmount's 'attr_flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fsconfig' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fsconfig's 'cmd' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'fspick' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for fspick's 'flags' arg values (Michael Petlan) [1743210] - [tools] perf trace: Beautify 'move_mount' arguments (Michael Petlan) [1743210] - [tools] perf beauty: Add generator for 'move_mount' flags argument (Michael Petlan) [1743210] - [tools] perf augmented_raw_syscalls: Fix up comment (Michael Petlan) [1743210] - [tools] perf tools: Preserve eBPF maps when loading kcore (Michael Petlan) [1743210] - [tools] perf machine: Keep zero in pgoff BPF map (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script intel-pt documentation (Michael Petlan) [1743210] - [tools] perf auxtrace: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf intel-pt: Fix itrace defaults for perf script (Michael Petlan) [1743210] - [tools] perf-with-kcore.sh: Always allow fix_buildid_cache_permissions (Michael Petlan) [1743210] - [tools] tools build: Check if gettid() is available before providing helper (Michael Petlan) [1743210] - [tools] tools build feature: Check if get_current_dir_name() is available (Michael Petlan) [1743210] - [tools] perf jvmti: Address gcc string overflow warning for strncpy() (Michael Petlan) [1743210] - [tools] perf python: Remove -fstack-protector-strong if clang doesn't have it (Michael Petlan) [1743210] - [tools] perf annotate tui browser: Do not use member from variable within its own initialization (Michael Petlan) [1743210] - [tools] perf thread: Allow references to thread objects after machine__exit() (Michael Petlan) [1743210] - [fs] sysfs: Fix internal_create_group() for named group updates (Michael Petlan) [1743210] - [x86] perf/x86/intel: Support PEBS output to PT (Michael Petlan) [1743210] - [kernel] perf: Allow normal events to output AUX data (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Handle erratum #420 only on the affected CPU family (10h) (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix reading of the IBS OpData register and thus precise RIP validity (Michael Petlan) [1743210] - [kernel] perf/hw_breakpoint: Fix arch_hw_breakpoint use-before-initialization (Michael Petlan) [1743210] - [x86] perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops (Michael Petlan) [1743210] - [x86] perf/x86/intel: Restrict period on Nehalem (Michael Petlan) [1743210] - [x86] perf/x86: Fix typo in comment (Michael Petlan) [1743210] - [kernel] perf/core: Fix creating kernel counters for PMUs that override event->cpu (Michael Petlan) [1743210] - [x86] perf/x86: Apply more accurate check on hypervisor platform (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x register (Michael Petlan) [1743210] - [x86] perf/x86/intel: Fix SLOTS PEBS event constraint (Michael Petlan) [1743210] - [x86] perf/x86/intel: Mark expected switch fall-throughs (Michael Petlan) [1743210] - [kernel] perf_event_get(): don't bother with fget_raw() (Michael Petlan) [1743210] - [kernel] perf/core: Fix exclusive events' grouping (Michael Petlan) [1743210] - [x86] perf/x86/amd/uncore: Set the thread mask for F17h L3 PMCs (Michael Petlan) [1743210] - [perf] x86/amd/uncore: Do not set 'ThreadMask' and 'SliceMask' for non-L3 PMCs (Michael Petlan) [1743210] - [kernel] perf/core: Fix race between close() and fork() (Michael Petlan) [1743210] - [perf] cgroups: Don't rotate events for cgroups unnecessarily (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get quirk state from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get attributes from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get MSR values from new probe framework (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Get rapl_cntr_mask from new probe framework (Michael Petlan) [1743210] - [x86] intel: Aggregate big core client naming (Michael Petlan) [1743210] - [x86] perf/x86/rapl: Use new MSR detection interface (Michael Petlan) [1743210] - [x86] perf/x86/cstate: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86/msr: Use new probe function (Michael Petlan) [1743210] - [x86] perf/x86: Add MSR probe interface (Michael Petlan) [1743210] - [x86] perf/x86/intel: Disable check_msr for real HW (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use ->is_visible callback for default group (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add IMC uncore support for Snow Ridge (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Clean up client IMC (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Support MMIO type uncore blocks (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Factor out box ref/unref functions (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add uncore support for Snow Ridge server (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Handle invalid event coding for free-running counter (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add more Icelake CPUIDs (Michael Petlan) [1743210] - [x86] perf/x86/intel: Add Icelake desktop CPUID (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for default attributes (Michael Petlan) [1743210] - [x86] perf/x86/intel: Use update attributes for skylake format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for extra format (Michael Petlan) [1743210] - [x86] perf/x86: Use update attribute groups for caps (Michael Petlan) [1743210] - [x86] perf/x86: Add is_visible attribute_group callback for base events (Michael Petlan) [1743210] - [x86] perf/x86: Use the new pmu::update_attrs attribute group (Michael Petlan) [1743210] - [x86] perf/x86: Get rid of x86_pmu::event_attrs (Michael Petlan) [1743210] - [x86] perf/x86/regs: Check reserved bits (Michael Petlan) [1743210] - [fs] sysfs: Add sysfs_update_groups function (Michael Petlan) [1743210] - [kernel] perf/core: Add attr_groups_update into struct pmu (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add new IMC PCI IDs for KabyLake, AmberLake and WhiskeyLake CPUs (Michael Petlan) [1743210] - [x86] perf/x86/intel/uncore: Add tabs to Uncore IMC PCI IDs (Michael Petlan) [1743210] - [kernel] perf/core: Allow non-privileged uprobe for user processes (Michael Petlan) [1743210] - [x86] perf/x86: Add Intel Ice Lake NNPI uncore support (Michael Petlan) [1743210] - [perf] arm_pmu: acpi: spe: Add initial MADT/SPE probing (Michael Petlan) [1743210] - [netdrv] mwifiex: fix possible heap overflow in mwifiex_process_country_ie() (Jarod Wilson) [1776210] {CVE-2019-14895} - [kernel] crash_core: Make S390 share the same crashkernel=auto reservation policy as X86_64 (Baoquan He) [1780432] - [s390] kasan: avoid report in get_wchan (Philipp Rudo) [1780112 1780111] - [s390] process: avoid potential reading of freed stack (Philipp Rudo) [1780112] - [fs] cifs: don't use 'pre:' for MODULE_SOFTDEP (Leif Sahlberg) [1767094] - [hwmon] Do not output deprecated warning for hwmon_device_register() (Prarit Bhargava) [1778295] - [scsi] lpfc: size cpu map by last cpu id set (Dick Kennedy) [1778912] - [scsi] lpfc: use hdwq assigned cpu for allocation (Dick Kennedy) [1778908] - [scsi] be2iscsi: Include null char in SET_HOST_DATA (Maurizio Lombardi) [1776358] - [netdrv] vmxnet3: turn off lro when rxcsum is disabled (Neil Horman) [1776056] - [mmc] sdhci-pci: Add another Id for Intel CML (Alexander Beregalov) [1766718] - [x86] kvm: untaint kernel for tech-preview when using nested VMX (Paolo Bonzini) [1726756] - [powerpc] kvm: ppc: book3s hv: xive: Fix potential page leak on error path (Laurent Vivier) [1760202] - [powerpc] kvm: ppc: book3s hv: xive: Free previous EQ page when setting up a new one (Laurent Vivier) [1760202] - [virt] kvm: arm/arm64: vgic: Don't rely on the wrong pending table (Auger Eric) [1777059] - [x86] kvm: x86: remove set but not used variable 'called' (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: Zero the IOAPIC scan request dest vCPUs bitmap (Nitesh Narayan Lal) [1773677] - [x86] kvm: x86: deliver KVM IOAPIC scan request to target vCPUs (Nitesh Narayan Lal) [1773677] - [kernel] kvm: remember position in kvm->vcpus array (Nitesh Narayan Lal) [1773677] - [kernel] watchdog: Reduce message verbosity (Vitaly Kuznetsov) [1774915]- [fs] binfmt_elf: Do not move brk for INTERP-less ET_EXEC (Waiman Long) [1749633] - [fs] binfmt_elf: move brk out of mmap when doing direct loader exec (Waiman Long) [1749633] - [gpu] drm/i915/cmdparser: Fix jump whitelist clearing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/gen8+: Add RC6 CTX corruption WA (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915: Lower RM timeout to avoid DSI hard hangs (Dave Airlie) [1756805] {CVE-2019-0154} - [gpu] drm/i915/cmdparser: Ignore Length operands during command matching (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Add support for backward jumps (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915/cmdparser: Use explicit goto for error paths (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add gen9 BCS cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Allow parsing of unsized batches (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Support ro ppgtt mapped cmdparser shadow buffers (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Add support for mandatory cmdparsing (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Remove Master tables from cmdparser (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Disable Secure Batches for gen6+ (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] drm/i915: Rename gen7 cmdparser tables (Dave Airlie) [1756873] {CVE-2019-0155} - [gpu] [drm] radeon: fix bad DMA from INTERRUPT_CNTL2 (Sam Bobroff) [1293697] - [netdrv] mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame() (Jarod Wilson) [1776162] {CVE-2019-14901} - [netdrv] mlx4_en: Fix wrong limitation for number of TX rings (Mohammad Heib) [1776822] - [netdrv] mlx4_en: fix mlx4 ethtool -N insertion (Mohammad Heib) [1776822] - [netdrv] mlx4_core: fix wrong comment about the reason of subtract one from the max_cqes (Mohammad Heib) [1776822] - [netdrv] ibmvnic: Serialize device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Bound waits for device queries (Steve Best) [1778037] - [netdrv] ibmvnic: Terminate waiting device threads after loss of service (Steve Best) [1778037] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1778037] - [netdrv] ibmvnic: Ignore H_FUNCTION return from H_EOI to tolerate XIVE mode (Steve Best) [1778037] - [netdrv] revert "net/ibmvnic: Fix EOI when running in XIVE mode" (Steve Best) [1778037] - [netdrv] cnic: Set fp_hsi_ver as part of CLIENT_SETUP ramrod (Manish Chopra) [1770797] - [netdrv] bnx2x: Fix PF-VF communication over multi-cos queues (Manish Chopra) [1770797] - [netdrv] bnx2x: Enable Multi-Cos feature (Manish Chopra) [1770797] - [netdrv] bnx2x: Utilize FW 7.13.15.0 (Manish Chopra) [1770797] - [fs] seq_file: fix problem when seeking mid-record (Bill O'Donnell) [1753822] - [documentation] fs/seq_file.c: simplify seq_file iteration code and interface (Bill O'Donnell) [1753822] - [scripts] kbuild: replace BASH-specific ${@:2} with shift and ${@} (Jiri Olsa) [1739493] - [scripts] btf: do not use CONFIG_OUTPUT_FORMAT (Jiri Olsa) [1739493] - [kernel] btf: fix return value check in btf_vmlinux_init() (Jiri Olsa) [1739493] - [kernel] btf: rename /sys/kernel/btf/kernel into /sys/kernel/btf/vmlinux (Jiri Olsa) [1739493] - [scripts] btf: expose BTF info through sysfs (Jiri Olsa) [1739493] - [netdrv] qede: fix NULL pointer deref in __qede_remove() (Manish Chopra) [1769203] - [gpu] cleanup: Remove .rej files (Prarit Bhargava) [1779738] - [lib] string: Add strscpy_pad() function (Josef Oskera) [1764588] - [char] virtio_console: allocate inbufs in add_port() only if it is needed (Pankaj Gupta) [1612795] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] xfs: make mem_to_page available outside of xfs_buf.c (Bill O'Donnell) [1583556] - [fs] xfs: get allocation alignment from the buftarg (Bill O'Donnell) [1583556] - [fs] xfs: add kmem_alloc_io() (Bill O'Donnell) [1583556] - [fs] cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs (Leif Sahlberg) [1765979] - [fs] cifs: avoid using MID 0xFFFF (Leif Sahlberg) [1765979] - [fs] cifs: Fix retry mid list corruption on reconnects (Leif Sahlberg) [1765979] - [fs] nfsd: allow fh_want_write to be called twice ("J. Bruce Fields") [1699222] - [net] revert "sunrpc: Fix up task signalling" (Dave Wysochanski) [1776067] - [s390] kasan: support memcpy_real with TRACE_IRQFLAGS (Philipp Rudo) [1777468] - [s390] kasan: add kdump support (Philipp Rudo) [1777468] - [s390] idle: fix cpu idle time calculation (Philipp Rudo) [1777361] - [s390] kaslr: add support for R_390_GLOB_DAT relocation type (Philipp Rudo) [1777467] - [x86] jump_label: Make tp_vec_nr static (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Batch jump label updates (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Batch updates if arch supports it (Daniel Bristot de Oliveira) [1731860] - [x86] alternative: Batch of patch operations (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Sort entries of the same key by the code (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Add a __jump_label_set_jump_code() helper (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Don't warn on __exit jump entries (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Add a jump_label_can_update() helper (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Remove the return value of text_poke_*() (Daniel Bristot de Oliveira) [1731860] - [x86] jump-label: Remove support for custom text poker (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Use text_poke_early() during early init (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Add text_poke_kgdb() to not assert the lock when debugging (Daniel Bristot de Oliveira) [1731860] - [x86] kprobes: Prohibit probing on functions before kprobe_int3_handler() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Fix NULL dereference bug in __jump_label_mod_update() (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Annotate entries that operate on __init code earlier (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Switch to jump_entry accessors (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Implement generic support for relative references (Daniel Bristot de Oliveira) [1731860] - [kernel] jump_label: Abstract jump_entry member accessors (Daniel Bristot de Oliveira) [1731860] - [x86] alternatives: Lockdep-enforce text_mutex in text_poke*() (Daniel Bristot de Oliveira) [1731860] - [x86] revert "x86/paravirt: Set up the virt_spin_lock_key after static keys get initialized" (Daniel Bristot de Oliveira) [1731860] - [x86] jump_label: Initialize static branching early (Vitaly Kuznetsov) [1777260] - [x86] speculation: Fix redundant MDS mitigation message (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation: Fix incorrect MDS/TAA mitigation status (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add config options to set tsx=on|off|auto (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [documentation] x86/speculation/taa: Add documentation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] tsx: Add "auto" option to the tsx= cmdline parameter (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add sysfs reporting for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] speculation/taa: Add mitigation for TSX Async Abort (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a "tsx=" cmdline option with TSX disabled by default (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] cpu: Add a helper function x86_read_arch_cap_msr() (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [x86] msr: Add the IA32_TSX_CTRL MSR (Josh Poimboeuf) [1766551] {CVE-2019-11135} - [powerpc] xive: Prevent page fault issues in the machine crash handler (Diego Domingos) [1756116] - [tools] Fix memcpy_mcsafe_64.S link on selftests (Desnes Augusto Nunes do Rosario) [1775570]- [powerpc] perf: Fix loop exit condition in nest_imc_event_init (Steve Best) [1778609] - [net] netfilter: nf_tables: Add missing nft_tproxy Makefile line (Phil Sutter) [1762977]- [x86] kdump: Remove the backup region handling (Lianbo Jiang) [1730143] - [x86] kdump: Always reserve the low 1M when the crashkernel option is specified (Lianbo Jiang) [1730143] - [x86] crash: Add a forward declaration of struct kimage (Lianbo Jiang) [1730143] - [x86] kdump: Remove the unused crash_copy_backup_region() (Lianbo Jiang) [1730143] - [pci] p2pdma: Fix missing check for dma_virt_ops (Don Dutile) [1754734] - [pci] p2pdma: use the dev_pagemap internal refcount (Don Dutile) [1754734] - [pci] memremap: pass a struct dev_pagemap to ->kill and ->cleanup (Don Dutile) [1754734] - [pci] memremap: move dev_pagemap callbacks into a separate structure (Don Dutile) [1754734] - [pci] mm/devm_memremap_pages: fix final page put race (Don Dutile) [1754734] - [pci] p2pdma: track pgmap references per resource, not globally (Don Dutile) [1754734] - [pci] p2pdma: fix the gen_pool_add_virt() failure path (Don Dutile) [1754734] - [pci] mm, hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Don Dutile) [1754734] - [lib] genalloc.c: Add algorithm, align and zeroed family of DMA allocators (Don Dutile) [1754732] - [lib] genalloc.c: include vmalloc.h (Don Dutile) [1754732] - [lib] genalloc.c: use vzalloc_node() to allocate the bitmap (Don Dutile) [1754732] - [md] dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors (Mike Snitzer) [1770210] - [fs] gfs2: fix race between gfs2_freeze_func and unmount (Abhijith Das) [1676972] - [fs] cifs: smbd: Retry on memory registration failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Indicate to retry on transport sending failure (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Return EINTR when interrupted (Leif Sahlberg) [1771772] - [fs] cifs: smbd: Don't destroy transport on RDMA disconnect (Leif Sahlberg) [1771772] - [lib] crc-t10dif: crc_t10dif_mutex can be static (Vladis Dronov) [1769462] - [lib] crc-t10dif: Allow current transform to be inspected in sysfs (Vladis Dronov) [1769462] - [lib] crc-t10dif: Pick better transform if one becomes available (Vladis Dronov) [1769462] - [crypto] api - Introduce notifier for new crypto algorithms (Vladis Dronov) [1769462] - [netdrv] e1000e: Drop unnecessary __E1000_DOWN bit twiddling (Ken Cox) [1748256] - [netdrv] e1000e: Use rtnl_lock to prevent race conditions between net and pci/pm (Ken Cox) [1748256]- [powerpc] pseries: safely roll back failed DLPAR cpu add (Steve Best) [1772341] - [powerpc] pseries: address checkpatch warnings in dlpar_offline_cpu (Steve Best) [1772341] - [scsi] storvsc: setup 1:1 mapping between hardware queue and CPU queue (Cathy Avery) [1771503] - [scsi] storvsc: Add ability to change scsi queue depth (Cathy Avery) [1771503] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 320 (Cathy Avery) [1771503] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: Align driver syntax with oob (Don Brace) [1725045] - [scsi] smartpqi: remove unused manifest constants (Don Brace) [1725045] - [scsi] smartpqi: fix problem with unique ID for physical device (Don Brace) [1725045] - [scsi] smartpqi: correct syntax issue (Don Brace) [1725045] - [scsi] smartpqi: change TMF timeout from 60 to 30 seconds (Don Brace) [1725045] - [scsi] smartpqi: fix LUN reset when fw bkgnd thread is hung (Don Brace) [1725045] - [scsi] smartpqi: add inquiry timeouts (Don Brace) [1725045] - [scsi] smartpqi: fix call trace in device discovery (Don Brace) [1725045] - [scsi] smartpqi: fix controller lockup observed during force reboot (Don Brace) [1725045] - [scsi] smartpqi: clean up an indentation issue (Don Brace) [1725045] - [scsi] smartpqi: remove set but not used variable 'ctrl_info' (Don Brace) [1725045] - [scsi] smartpqi: clean up indentation of a statement (Don Brace) [1725045] - [scsi] smartpqi: bump version (Don Brace) [1725045] - [scsi] smartpqi: update copyright (Don Brace) [1725045] - [scsi] smartpqi: add new pci ids (Don Brace) [1725045] - [scsi] smartpqi: correct REGNEWD return status (Don Brace) [1725045] - [scsi] smartpqi: add gigabyte controller (Don Brace) [1725045] - [scsi] smartpqi: correct hang when deleting 32 lds (Don Brace) [1725045] - [scsi] smartpqi: add bay identifier (Don Brace) [1725045] - [scsi] smartpqi: add sysfs entries (Don Brace) [1725045] - [scsi] smartpqi: add module param to hide vsep (Don Brace) [1725045] - [scsi] smartpqi: add pci ids for fiberhome controller (Don Brace) [1725045] - [scsi] smartpqi: add module param for exposure order (Don Brace) [1725045] - [scsi] smartpqi: unlock on error in pqi_submit_raid_request_synchronous() (Don Brace) [1725045] - [scsi] smartpqi: Reporting unhandled SCSI errors (Don Brace) [1725045] - [scsi] mpt3sas: Bump mpt3sas driver version to 32.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix module parameter max_msix_vectors (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reject NVMe Encap cmnds to unsupported HBA (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use Component img header to get Package ver (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fail release cmnd if diag buffer is released (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add app owned flag support for diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reuse diag buffer allocated at load time (Tomas Henzl) [1725737] - [scsi] mpt3sas: clear release bit when buffer reregistered (Tomas Henzl) [1725737] - [scsi] mpt3sas: Maintain owner of buffer through UniqueID (Tomas Henzl) [1725737] - [scsi] mpt3sas: Free diag buffer without any status check (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix clear pending bit in ioctl status (Tomas Henzl) [1725737] - [scsi] mpt3sas: Display message before releasing diag buffer (Tomas Henzl) [1725737] - [scsi] mpt3sas: Register trace buffer based on NVDATA settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce module parameter to override queue depth (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 31.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Run SAS DEVICE STATUS CHANGE EVENT from ISR (Tomas Henzl) [1725737] - [scsi] mpt3sas: Reduce the performance drop (Tomas Henzl) [1725737] - [scsi] mpt3sas: Handle fault during HBA initialization (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add sysfs to know supported features (Tomas Henzl) [1725737] - [scsi] mpt3sas: Support MEMORY MOVE Tool box command (Tomas Henzl) [1725737] - [scsi] mpt3sas: Allow ioctls to blocked access status NVMe (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enumerate SES of a managed PCIe switch (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update MPI headers to 2.6.8 spec (Tomas Henzl) [1725737] - [scsi] mpt3sas: Gracefully handle online firmware update (Tomas Henzl) [1725737] - [scsi] mpt3sas: memset request frame before reusing (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add support for PCIe Lane margin (Tomas Henzl) [1725737] - [scsi] mpt3sas: support target smid for [abort|query] task (Tomas Henzl) [1725737] - [scsi] mpt3sas: clean up a couple sizeof() uses (Tomas Henzl) [1725737] - [scsi] mpt3sas: Fix msix load balance on and off settings (Tomas Henzl) [1725737] - [scsi] mpt3sas: Determine smp affinity on per HBA basis (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use configured PCIe link speed, not max (Tomas Henzl) [1725737] - [scsi] mpt3sas: Remove CPU arch check to determine perf_mode (Tomas Henzl) [1725737] - [scsi] mpt3sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1725737] - [scsi] mpt3sas: make driver options visible in sys (Tomas Henzl) [1725737] - [scsi] mpt3sas: Mark expected switch fall-through (Tomas Henzl) [1725737] - [scsi] mpt3sas: Update driver version to 29.100.00.00 (Tomas Henzl) [1725737] - [scsi] mpt3sas: Introduce perf_mode module parameter (Tomas Henzl) [1725737] - [scsi] mpt3sas: Enable interrupt coalescing on high iops (Tomas Henzl) [1725737] - [scsi] mpt3sas: Affinity high iops queues IRQs to local node (Tomas Henzl) [1725737] - [scsi] mpt3sas: save and use MSI-X index for posting RD (Tomas Henzl) [1725737] - [scsi] mpt3sas: Use high iops queues under some circumstances (Tomas Henzl) [1725737] - [scsi] mpt3sas: change _base_get_msix_index prototype (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add flag high_iops_queues (Tomas Henzl) [1725737] - [scsi] mpt3sas: Add Atomic RequestDescriptor support on Aero (Tomas Henzl) [1725737] - [scsi] mpt3sas: function pointers of request descriptor (Tomas Henzl) [1725737] - [scsi] mpt3sas_ctl: fix double-fetch bug in _ctl_ioctl_main() (Tomas Henzl) [1725737] - [md] revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues" (Mike Snitzer) [1775756] - [md] dm thin: wakeup worker only when deferred bios exist (Mike Snitzer) [1775756] - [md] dm raid: Remove unnecessary negation of a shift in raid10_format_to_md_layout (Mike Snitzer) [1775756] - [md] dm writecache: handle REQ_FUA (Mike Snitzer) [1775756] - [md] dm writecache: fix uninitialized variable warning (Mike Snitzer) [1775756] - [md] dm stripe: use struct_size() in kmalloc() (Mike Snitzer) [1775756] - [md] dm table: do not allow request-based DM to stack on partitions (Mike Snitzer) [1775756] - [md] dm cache: fix bugs when a GFP_NOWAIT allocation fails (Mike Snitzer) [1775756] - [md] dm writecache: skip writecache_wait for pmem mode (Mike Snitzer) [1775756] - [md] dm stats: use struct_size() helper (Mike Snitzer) [1775756] - [md] dm space map common: remove check for impossible sm_find_free() return value (Mike Snitzer) [1775756] - [md] dm raid1: use struct_size() with kzalloc() (Mike Snitzer) [1775756] - [md] dm writecache: optimize performance by sorting the blocks for writeback_all (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for getting two block with same LBA (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member pointer in writeback_struct (Mike Snitzer) [1775756] - [md] dm: make dm_table_find_target return NULL (Mike Snitzer) [1775756] - [md] dm table: fix invalid memory accesses with too high sector number (Mike Snitzer) [1775756] - [md] dm space map metadata: fix missing store of apply_bops() return value (Mike Snitzer) [1775756] - [md] dm btree: fix order of block initialization in btree_split_beneath (Mike Snitzer) [1775756] - [md] dm raid: add missing cleanup in raid_ctr() (Mike Snitzer) [1775756] - [md] dm kcopyd: always complete failed jobs (Mike Snitzer) [1775756] - [md] dm crypt: remove obsolete comment about plumb IV (Mike Snitzer) [1775756] - [md] dm crypt: wipe private IV struct after key invalid flag is set (Mike Snitzer) [1775756] - [md] dm: update stale comment in end_clone_bio() (Mike Snitzer) [1775756] - [md] dm log writes: fix incorrect comment about the logged sequence example (Mike Snitzer) [1775756] - [md] dm log writes: use struct_size() to calculate size of pending_block (Mike Snitzer) [1775756] - [md] dm crypt: use struct_size() when allocating encryption context (Mike Snitzer) [1775756] - [md] dm thin metadata: check if in fail_io mode when setting needs_check (Mike Snitzer) [1775756] - [md] dm verity: use message limit for data block corruption message (Mike Snitzer) [1775756] - [md] dm log writes: make sure super sector log updates are written in order (Mike Snitzer) [1775756] - [md] dm: fix a couple brace coding style issues (Mike Snitzer) [1775756] - [md] dm crypt: print device name in integrity error message (Mike Snitzer) [1775756] - [documentation] dm integrity: update documentation (Mike Snitzer) [1775756] - [md] dm integrity: don't report unused options (Mike Snitzer) [1775756] - [md] dm integrity: don't check null pointer before kvfree and vfree (Mike Snitzer) [1775756] - [md] dm integrity: correctly calculate the size of metadata area (Mike Snitzer) [1775756] - [md] dm mpath: always free attached_handler_name in parse_path() (Mike Snitzer) [1775756] - [md] dm writecache: avoid unnecessary lookups in writecache_find_entry() (Mike Snitzer) [1775756] - [md] dm writecache: remove unused member page_offset in writeback_struct (Mike Snitzer) [1775756] - [md] dm delay: fix a crash when invalid device is specified (Mike Snitzer) [1775756] - [md] dm: only initialize md->dax_dev if CONFIG_DAX_DRIVER is enabled (Mike Snitzer) [1775756] - [md] dm writecache: add unlikely for returned value of rb_next_prev (Mike Snitzer) [1775756] - [md] dm writecache: remove needless dereferences in __writecache_writeback_pmem() (Mike Snitzer) [1775756] - [md] dm crypt: fix endianness annotations around org_sector_of_dmreq (Mike Snitzer) [1775756] - [md] dm integrity: fix deadlock with overlapping I_O (Mike Snitzer) [1775756] - [md] dm: disable DISCARD if the underlying storage no longer supports it (Mike Snitzer) [1775756] - [md] dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES * PAGE_SIZE") (Mike Snitzer) [1775756] - [md] dm integrity: make dm_integrity_init and dm_integrity_exit static (Mike Snitzer) [1775756] - [md] dm integrity: change memcmp to strncmp in dm_integrity_ctr (Mike Snitzer) [1775756] - [x86] platform/uv: Account for UV Hubless in is_uvX_hub Ops (Frank Ramsay) [1757510] - [x86] platform/uv: Check EFI Boot to set reboot type (Frank Ramsay) [1757510] - [x86] platform/uv: Decode UVsystab Info (Frank Ramsay) [1757510] - [x86] platform/uv: Add UV Hubbed/Hubless Proc FS Files (Frank Ramsay) [1757510] - [x86] platform/uv: Setup UV functions for Hubless UV Systems (Frank Ramsay) [1757510] - [x86] platform/uv: Add return code to UV BIOS Init function (Frank Ramsay) [1757510] - [x86] platform/uv: Return UV Hubless System Type (Frank Ramsay) [1757510] - [x86] platform/uv: Save OEM_ID from ACPI MADT probe (Frank Ramsay) [1757510] - [x86] mm: Handle physical-virtual alignment mismatch in phys_p4d_init() (Baoquan He) [1685383] - [x86] mm/kaslr: Reduce randomization granularity for 5-level paging to 1GB (Baoquan He) [1685383] - [x86] mm/kaslr: Use only one PUD entry for real mode trampoline (Baoquan He) [1685383] - [documentation] documentation/stackprotector: powerpc supports stack protector (Bhupesh Sharma) [1714310] - [makefile] kbuild: mark prepare0 as PHONY to fix external module build (Bhupesh Sharma) [1714310] - [makefile] kbuild: fix single target build for external module (Bhupesh Sharma) [1714310] - [arm64] enable per-task stack canaries (Bhupesh Sharma) [1714310] - [powerpc] Fix stack protector crashes on CPU hotplug (Bhupesh Sharma) [1714310] - [powerpc] 64: properly initialise the stackprotector canary on SMP (Bhupesh Sharma) [1714310] - [powerpc] Fix stackprotector detection for non-glibc toolchains (Bhupesh Sharma) [1714310] - [powerpc] 64: add stack protector support (Bhupesh Sharma) [1714310] - [powerpc] 32: add stack protector support (Bhupesh Sharma) [1714310] - [pci] vmd: Fix shadow offsets to reflect spec changes (Myron Stowe) [1757896] - [pci] vmd: Fix config addressing when using bus offsets (Myron Stowe) [1757896] - [pci] Fix typos and whitespace errors (Myron Stowe) [1757896] - [pci] vmd: use the proper dma_* APIs instead of direct methods calls (Myron Stowe) [1757896] - [powerpc] powernv: Disable native PCIe port management (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix eeh eeh_debugfs_break_device() with SRIOV devices (Gustavo Duarte) [1524642] - [tools] selftests/powerpc: Add basic EEH selftest (Gustavo Duarte) [1524642] - [powerpc] eeh: Add a eeh_dev_break debugfs interface (Gustavo Duarte) [1524642] - [powerpc] eeh: Add debugfs interface to run an EEH check (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix debugfs_simple_attr.cocci warnings (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix build with STACKTRACE=n (Gustavo Duarte) [1524642] - [powerpc] eeh: Set attention indicator while recovering (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add attention indicator support (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add support for IODA3 Power9 PHBs (Gustavo Duarte) [1524642] - [pci] pci-hotplug/pnv_php: Add a reset_slot() callback (Gustavo Duarte) [1524642] - [powerpc] powernv/eeh: Use generic code to handle hot resets (Gustavo Duarte) [1524642] - [powerpc] eeh: Remove stale CAPI comment (Gustavo Duarte) [1524642] - [powerpc] eeh: Defer printing stack trace (Gustavo Duarte) [1524642] - [powerpc] eeh: Check slot presence state in eeh_handle_normal_event() (Gustavo Duarte) [1524642] - [powerpc] eeh: Make permanently failed devices non-actionable (Gustavo Duarte) [1524642] - [powerpc] eeh: Fix race when freeing PDNs (Gustavo Duarte) [1524642] - [powerpc] eeh: Clean up EEH PEs after recovery finishes (Gustavo Duarte) [1524642] - [netdrv] be2net: disable bh with spin_lock in be_process_mcc (Petr Oros) [1724777] - [netdrv] be2net: Synchronize be_update_queues with dev_watchdog (Petr Oros) [1724777] - [netdrv] be2net: Signal that the device cannot transmit during reconfiguration (Petr Oros) [1724777] - [netdrv] be2net: fix link failure after ethtool offline test (Petr Oros) [1724777] - [netdrv] be2net: Fix number of Rx queues used for flow hashing (Petr Oros) [1724777] - [netdrv] benet: remove broken and unused macro (Petr Oros) [1724777] - [netdrv] benet: use skb_vlan_tag_get_prio() (Petr Oros) [1724777] - [netdrv] benet: use __vlan_hwaccel helpers (Petr Oros) [1724777] - [netdrv] revert "[netdrv] be2net: Disable queue dump in be_tx_timeout handler" (Petr Oros) [1724777] - [infiniband] rdma/i40iw: Set queue pair state when being queried (Stefan Assmann) [1721712] - [infiniband] ib/i40iw: Use kmemdup rather than open coding (Stefan Assmann) [1721712] - [infiniband] rdma/i40iw: Handle workqueue allocation failure (Stefan Assmann) [1721712] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: Fix namespace creation on misaligned addresses (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: stop padding pmem namespaces to section alignment (Baoquan He) [1724969] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock" (Baoquan He) [1724969] - [nvdimm] revert "libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change" (Baoquan He) [1724969] - [mm] sparsemem: cleanup 'section number' data types (Baoquan He) [1724969] - [kernel] mm/devm_memremap_pages: enable sub-section remap (Baoquan He) [1724969] - [mm] sparsemem: support sub-section hotplug (Baoquan He) [1724969] - [mm] sparsemem: prepare for sub-section ranges (Baoquan He) [1724969] - [kernel] mm: kill is_dev_zone() helper (Baoquan He) [1724969] - [mm] hotplug: kill is_dev_zone() usage in __remove_pages() (Baoquan He) [1724969] - [mm] sparsemem: convert kmalloc_section_memmap() to populate_section_memmap() (Baoquan He) [1724969] - [mm] hotplug: prepare shrink_{zone, pgdat}_span for sub-section removal (Baoquan He) [1724969] - [mm] sparsemem: add helpers track active portions of a section at boot (Baoquan He) [1724969] - [mm] sparsemem: introduce a SECTION_IS_EARLY flag (Baoquan He) [1724969] - [mm] sparsemem: introduce struct mem_section_usage (Baoquan He) [1724969] - [base] base/memory.c: get rid of find_memory_block_hinted() (Baoquan He) [1724969] - [mm] memory_hotplug: move and simplify walk_memory_blocks() (Baoquan He) [1724969] - [mm] memory_hotplug: rename walk_memory_range() and pass start+size instead of pfns (Baoquan He) [1724969] - [mm] hotplug: make remove_memory() interface usable (Baoquan He) [1724969] - [kernel] mm: make register_mem_sect_under_node() static (Baoquan He) [1724969] - [base] base/memory: use "unsigned long" for block ids (Baoquan He) [1724969] - [base] mm: section numbers use the type "unsigned long" (Baoquan He) [1724969] - [base] base/memory.c: Use DEVICE_ATTR_RO and friends (Baoquan He) [1724969] - [mm] sparse.c: set section nid for hot-add memory (Baoquan He) [1724969] - [mm] memory_hotplug: remove "zone" parameter from sparse_remove_one_section (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_block_under_nodes() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: remove memory block devices before arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: drop MHP_MEMBLOCK_API (Baoquan He) [1724969] - [base] mm/memory_hotplug: create memory block devices after arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: allow arch_remove_memory() without CONFIG_MEMORY_HOTREMOVE (Baoquan He) [1724969] - [arm64] mm: add temporary arch_remove_memory() implementation (Baoquan He) [1724969] - [mm] sparse.c: clean up obsolete code comment (Baoquan He) [1724969] - [base] base/memory: pass a block_id to init_memory_block() (Baoquan He) [1724969] - [base] base/memory.c: remove an unnecessary check on NR_MEM_SECTIONS (Baoquan He) [1724969] - [s390] s390x/mm: implement arch_remove_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: make __remove_section() never fail (Baoquan He) [1724969] - [base] mm/memory_hotplug: make unregister_memory_section() never fail (Baoquan He) [1724969] - [base] base/memory.c: clean up relics in function parameters (Baoquan He) [1724969] - [base] mm, memory_hotplug: update a comment in unregister_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: release memory resource after arch_remove_memory() (Baoquan He) [1724969] - [kernel] mm, memory_hotplug: provide a more generic restrictions for memory hotplug (Baoquan He) [1724969] - [kernel] linux/memory_hotplug.h: remove duplicate declaration of offline_pages() (Baoquan He) [1724969] - [mm] x86: respect memory size limiting via mem= parameter (Baoquan He) [1724969] - [arm64] Add memory hotplug support (Baoquan He) [1724969] - [arm64] mm: check for upper PAGE_SHIFT bits in pfn_valid() (Baoquan He) [1724969] - [powerpc] mm: Fix section mismatch warning (Baoquan He) [1724969] - [base] mm/memory_hotplug: do not unlock after failing to take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: drop "online" parameter from add_memory_resource() (Baoquan He) [1724969] - [s390] s390x/mm: fail when an altmap is used for arch_add_memory() (Baoquan He) [1724969] - [mm] memory_hotplug: simplify and fix check_hotplug_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug: add nid parameter to arch_remove_memory (Baoquan He) [1724969] - [mm] sparse: pass nid instead of pgdat to sparse_add_one_section() (Baoquan He) [1724969] - [mm] sparse: drop pgdat_resize_lock in sparse_add/remove_one_section() (Baoquan He) [1724969] - [documentation] memory-hotplug.rst: add some details about locking internals (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling memtrace_offline_pages() (Baoquan He) [1724969] - [powerpc] powernv: hold device_hotplug_lock when calling device_online() (Baoquan He) [1724969] - [powerpc] powernv: Allow memory that has been hot-removed to be hot-added (Baoquan He) [1724969] - [powerpc] powernv/memtrace: Remove memtrace mmap() (Baoquan He) [1724969] - [mm] memory_hotplug: fix online/offline_pages called w.o. mem_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make add_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [mm] memory_hotplug: make remove_memory() take the device_hotplug_lock (Baoquan He) [1724969] - [powerpc] memtrace: Remove memory in chunks (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: drop unnecessary checks from register_mem_sect_under_node() (Baoquan He) [1724969] - [base] mm/memory_hotplug.c: make register_mem_sect_under_node() a callback of walk_memory_range() (Baoquan He) [1724969] - [mm] memory_hotplug.c: call register_mem_sect_under_node() (Baoquan He) [1724969] - [mm] memory_hotplug.c: make add_memory_resource use __try_online_node (Baoquan He) [1724969] - [pci] Always allow probing with driver_override (Myron Stowe) [1702178] - [pci] Return error if cannot probe VF (Myron Stowe) [1702178] - [target] scsi: target: core: Do not overwrite CDB byte 1 (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: clean the nl_cmd of the udev when nl send fails (Maurizio Lombardi) [1764579] - [target] scsi: target: tcmu: avoid use-after-free after command timeout (Maurizio Lombardi) [1764579] - [target] scsi: tcmu: Simplify tcmu_update_uio_info() (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: fix possible condition with no effect (if == else) (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make sure PDU processing continues if parsing a command fails (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Make iscsit_map_iovec() more robust (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Handle too large immediate data buffers correctly (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Only send R2T if needed (Maurizio Lombardi) [1764579] - [target] scsi: target/iscsi: Detect conn_cmd_list corruption early (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Make the XCOPY setup code easier to read by inlining two functions (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Simplify LUN initialization in XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Remove a set-but-not-used member variable from the XCOPY implementation (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Rework the SPC-2 reservation handling code (Maurizio Lombardi) [1764579] - [target] scsi: target/core: Fix a race condition in the LUN lookup code (Maurizio Lombardi) [1764579] - [target] scsi: target: alua: fix the tg_pt_gps_count (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Free conn_ops when zalloc_cpumask_var failed (Maurizio Lombardi) [1764579] - [target] scsi: target: iscsi: Fix np_ip_proto and np_sock_type in iscsit_setup_np (Maurizio Lombardi) [1764579] - [target] scsi: target: fix unsigned comparision with less than zero (Maurizio Lombardi) [1764579] - [target] scsi: target: Add device product id and revision configfs attributes (Maurizio Lombardi) [1764579] - [kernel] genirq/affinity: Remove const qualifier from node_to_cpumask argument (Ming Lei) [1743064] - [kernel] genirq/affinity: Spread vectors on node according to nr_cpu ratio (Ming Lei) [1743064] - [kernel] genirq/affinity: Improve __irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] genirq/affinity: Remove unused argument from [__]irq_build_affinity_masks() (Ming Lei) [1743064] - [kernel] workqueue, lockdep: Fix a memory leak in wq->lock_name (Waiman Long) [1736654] - [kernel] workqueue, lockdep: Fix an alloc_workqueue() error path (Waiman Long) [1736654] - [kernel] locking/lockdep: Report more stack trace statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Reduce space occupied by stack traces (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it clear that what lock_class::key points at is not modified (Waiman Long) [1736654] - [kernel] lockdep: Make print_lock() address visible (Waiman Long) [1736654] - [kernel] locking/lockdep: Clean up #ifdef checks (Waiman Long) [1736654] - [kernel] locking/lockdep: Hide unused 'class' variable (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix lock used or unused stats error (Waiman Long) [1736654] - [kernel] locking/lockdep: increase size of counters for lockdep statistics (Waiman Long) [1736654] - [kernel] locking/lockdep: Move mark_lock() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary DEBUG_LOCKS_WARN_ON() (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix merging of hlocks with non-zero references (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix OOO unlock when hlocks need merging (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove !dir in lock irq usage check (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust new bit cases in mark_lock (Waiman Long) [1736654] - [kernel] locking/lockdep: Consolidate lock usage bit initialization (Waiman Long) [1736654] - [kernel] locking/lockdep: Check redundant dependency only when CONFIG_LOCKDEP_SMALL (Waiman Long) [1736654] - [kernel] locking/lockdep: Refactorize check_noncircular and check_redundant (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in __lock_release (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove redundant argument in check_deadlock (Waiman Long) [1736654] - [documentation] locking/lockdep: Add explanation to lock usage rules in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comments on dependency search (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid constant checks in __bfs by using offset reference (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the return type of __cq_dequeue() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change type of the element field in circular_queue (Waiman Long) [1736654] - [kernel] locking/lockdep: Update comment (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unused argument in validate_chain() and check_deadlock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Change the range of class_idx in held_lock struct (Waiman Long) [1736654] - [kernel] locking/lockdep: Define INITIAL_CHAIN_KEY for chain keys to start with (Waiman Long) [1736654] - [kernel] locking/lockdep: Use lockdep_init_task for task initiation consistently (Waiman Long) [1736654] - [kernel] locking/lockdep: Update obsolete struct field description (Waiman Long) [1736654] - [kernel] locking/lockdep: Print the right depth for chain key collision (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove useless conditional macro (Waiman Long) [1736654] - [kernel] locking/lockdep: Adjust lock usage bit character checks (Waiman Long) [1736654] - [documentation] locking/lockdep: Add description and explanation in lockdep design doc (Waiman Long) [1736654] - [kernel] locking/lockdep: Change all print_*() return type to void (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove the unused print_lock_trace() function (Waiman Long) [1736654] - [kernel] locking/lockdep: Don't complain about incorrect name for no validate class (Waiman Long) [1736654] - [kernel] lockdep: Add assertion to check if in an interrupt (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove unnecessary unlikely() (Waiman Long) [1736654] - [kernel] locking/lockdep: Test all incompatible scenarios at once in check_irq_usage() (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid bogus Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Generate LOCKF_ bit composites (Waiman Long) [1736654] - [kernel] locking/lockdep: Use expanded masks on find_usage_*() functions (Waiman Long) [1736654] - [kernel] locking/lockdep: Map remaining magic numbers to lock usage mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Move valid_state() inside CONFIG_TRACE_IRQFLAGS && CONFIG_PROVE_LOCKING (Waiman Long) [1736654] - [kernel] lockdep: Simplify stack trace handling (Waiman Long) [1736654] - [kernel] locking/lockdep: Make lockdep_unregister_key() honor 'debug_locks' again (Waiman Long) [1736654] - [kernel] locking/lockdep: Zap lock classes even with lock debugging disabled (Waiman Long) [1736654] - [kernel] locking/lockdep: Only call init_rcu_head() after RCU has been initialized (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid a Clang warning (Waiman Long) [1736654] - [kernel] locking/lockdep: Shrink struct lock_class_key (Waiman Long) [1736654] - [kernel] locking/lockdep: Add module_param to enable consistency checks (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Test dynamic key registration (Waiman Long) [1736654] - [tools] lockdep/lib/tests: Fix run_tests.sh (Waiman Long) [1736654] - [kernel] workqueue: Use dynamic lockdep keys for workqueues (Waiman Long) [1736654] - [kernel] locking/lockdep: Add support for dynamic keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Verify whether lock objects are small enough to be used as class keys (Waiman Long) [1736654] - [kernel] locking/lockdep: Check data structure consistency (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse lock chains that have been freed (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix a comment in add_chain_cache() (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lockdep_next_lockchain() and lock_chain_count() (Waiman Long) [1736654] - [kernel] locking/lockdep: Reuse list entries that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Free lock classes that are no longer in use (Waiman Long) [1736654] - [kernel] locking/lockdep: Update two outdated comments (Waiman Long) [1736654] - [kernel] locking/lockdep: Make it easy to detect whether or not inside a selftest (Waiman Long) [1736654] - [kernel] locking/lockdep: Split lockdep_free_key_range() and lockdep_reset_lock() (Waiman Long) [1736654] - [kernel] locking/lockdep: Initialize the locks_before and locks_after lists earlier (Waiman Long) [1736654] - [kernel] locking/lockdep: Make zap_class() remove all matching lock order entries (Waiman Long) [1736654] - [kernel] locking/lockdep: Reorder struct lock_class members (Waiman Long) [1736654] - [kernel] locking/lockdep: Avoid that add_chain_cache() adds an invalid chain to the cache (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (2/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix reported required memory size (1/2) (Waiman Long) [1736654] - [kernel] locking/lockdep: Fix two 32-bit compiler warnings (Waiman Long) [1736654] - [kernel] locking/lockdep: Rename lockdep_info() to lockdep_init() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Provide enum lock_usage_bit mask names (Waiman Long) [1736654] - [kernel] locking/lockdep: Simplify mark_held_locks() (Waiman Long) [1736654] - [kernel] locking/lockdep: Add debug_locks check in __lock_downgrade() (Waiman Long) [1736654] - [kernel] locking/lockdep: Stop using RCU primitives to access 'all_lock_classes' (Waiman Long) [1736654] - [kernel] locking/lockdep: Make concurrent lockdep_reset_lock() calls safe (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove a superfluous INIT_LIST_HEAD() statement (Waiman Long) [1736654] - [kernel] locking/lockdep: Introduce lock_class_cache_is_registered() (Waiman Long) [1736654] - [kernel] locking/lockdep: Inline __lockdep_init_map() (Waiman Long) [1736654] - [kernel] locking/lockdep: Declare local symbols static (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Test the lockdep_reset_lock() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Add dummy print_irqtrace_events() implementation (Waiman Long) [1736654] - [tools] lib/lockdep: Rename "trywlock" into "trywrlock" (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Run lockdep tests a second time under Valgrind (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Improve testing accuracy (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Fix shellcheck warnings (Waiman Long) [1736654] - [tools] lib/lockdep/tests: Display compiler warning and error messages (Waiman Long) [1736654] - [kernel] locking/lockdep: Remove ::version from lock_class structure (Waiman Long) [1736654] - [init] kconfig: disable io_uring support (Jeff Moyer) [1758680] - [virt] kvm: arm64: pmu: Reset sample period on overflow handling (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Set the CHAINED attribute before creating the in-kernel event (Auger Eric) [1760872] - [arm64] kvm: Handle PMCR_EL0.LC as RES1 on pure AArch64 systems (Auger Eric) [1760872] - [virt] kvm: arm64: pmu: Fix cycle counter truncation (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Introduce kvm_pmu_vcpu_init() to setup PMU counter index (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Support chained PMU counters (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Remove pmc->bitmask (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Re-create event when setting counter value (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Extract duplicated code to own function (Auger Eric) [1760872] - [virt] kvm: arm/arm64: Rename kvm_pmu_{enable/disable}_counter functions (Auger Eric) [1760872] - [arm64] perf: Hook up new events (Auger Eric) [1760872] - [arm64] perf: Move event definitions into perf_event.h (Auger Eric) [1760872] - [arm64] perf: Remove duplicate generic cache events (Auger Eric) [1760872] - [arm64] perf: Terminate PMU assignment statements with semicolons (Auger Eric) [1760872] - [arm64] Allow CAVIUM_TX2_ERRATUM_219 to be selected (Auger Eric) [1771633] - [arm64] Avoid Cavium TX2 erratum 219 when switching TTBR (Auger Eric) [1771633] - [arm64] Enable workaround for Cavium TX2 erratum 219 when running SMT (Auger Eric) [1771633] - [arm64] kvm: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set (Auger Eric) [1771633] - [arm64] sysreg: fix incorrect definition of SYS_PAR_EL1_F (Auger Eric) [1771633] - [arm64] Force SSBS on context switch (Mark Salter) [1756103] - [arm64] enable pointer authentication (Mark Salter) [1756103] - [arm64] add ptrace regsets for ptrauth key management (Mark Salter) [1756103] - arm64: cpufeature: Rework ptr auth hwcaps using multi_entry_cap_matches (Mark Salter) [1756103] - [arm64] capabilities: Merge duplicate entries for Qualcomm erratum 1003 (Mark Salter) [1756103] - [arm64] cpufeature: Reduce number of pointer auth CPU caps from 6 to 4 (Mark Salter) [1756103] - [documentation] arm64: docs: document pointer authentication (Mark Salter) [1756103] - [documentation] arm64: docs: Document SSBS HWCAP (Mark Salter) [1756103] - [documentation] arm64: docs: Fix typos in ELF hwcaps (Mark Salter) [1756103] - [arm64] ptr auth: Move per-thread keys from thread_info to thread_struct (Mark Salter) [1756103] - [arm64] add prctl control for resetting ptrauth keys (Mark Salter) [1756103] - [arm64] perf: strip PAC when unwinding userspace (Mark Salter) [1756103] - [arm64] expose user PAC bit positions via ptrace (Mark Salter) [1756103] - [arm64] add basic pointer authentication support (Mark Salter) [1756103] - arm64/cpufeature: detect pointer authentication (Mark Salter) [1756103] - [arm64] cpufeature: Convert hook_lock to raw_spin_lock_t in cpu_enable_ssbs() (Mark Salter) [1756103] - [arm64] entry: Allow handling of undefined instructions from EL1 (Mark Salter) [1756103] - [arm64] Fix silly typo in comment (Mark Salter) [1756103] - [fs] smb3: fix signing verification of large reads (Dave Wysochanski) [1753114] - [fs] revert "nfs4: Fix v4.0 client state corruption when mount" (Benjamin Coddington) [1767012] - [kernel] svcrdma: Increase the default connection credit limit (Benjamin Coddington) [1771430] - [x86] quirks: Disable HPET on Intel Coffe Lake platforms (David Arcari) [1773774] - [sched] core: Fix CPU controller for !RT_GROUP_SCHED (Phil Auld) [1774652] - [x86] Add comment for x86 processor OS version support (David Arcari) [1709878] - [x86] kvm: svm: taint module and print taint message iff nested is enabled (Bandan Das) [1775410] - [x86] cpu: Add Tiger Lake to Intel family (Steve Best) [1773790] - [fs] Fix the locking in dcache_readdir() and friends (Miklos Szeredi) [1761746] - [infiniband] rdma/mlx5: Return proper error value (Mohammad Heib) [1772101] - [scsi] mpt3sas: change allocation option (Tomas Henzl) [1770264] - [scsi] qla2xxx: Initialized mailbox to prevent driver load failure (Himanshu Madhani) [1770309] - [mfd] intel-lpss: Add Intel Comet Lake PCH-H PCI IDs (David Arcari) [1773307] - [powercap] intel_rapl: add support for Cometlake desktop (David Arcari) [1759664] - [powercap] intel_rapl: add support for CometLake Mobile (David Arcari) [1746265] - [kernel] intel_rapl: need linux/cpuhotplug.h for enum cpuhp_state (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: Fix proc_thermal_rapl_remove() (Alexander Beregalov) [1732604] - [thermal] int340x/processor_thermal_device: add support for MMIO RAPL (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal_device: Fix build warning (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Read PPCC on resume (Alexander Beregalov) [1732604] - [thermal] thermal: processor_thermal: Downgrade error message (Alexander Beregalov) [1732604] - [thermal] intel: int340x: processor_thermal_device: simplify to get driver data (Alexander Beregalov) [1732604] - [thermal] int3403_thermal: favor _TMP instead of PTYP (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: fix mode setting (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Add additional UUIDs (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Fix sysfs race condition (Alexander Beregalov) [1732604] - [thermal] thermal: int340x_thermal: Make PCI dependency explicit (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: Fix a NULL vs IS_ERR() check (Alexander Beregalov) [1732604] - [thermal] int340x_thermal: int3400_thermal: simplify getting .driver_data (Alexander Beregalov) [1732604] - [powercap] Invoke powercap_init() and rapl_init() earlier (Alexander Beregalov) [1732604] - [powercap] intel_rapl: Fix module autoloading issue (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support two power limits for every RAPL domain (Alexander Beregalov) [1732604] - [powercap] intel_rapl: support 64 bit register (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract RAPL common code (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup hardcoded MSR access (Alexander Beregalov) [1732604] - [powercap] intel_rapl: cleanup some functions (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register access operations (Alexander Beregalov) [1732604] - [powercap] intel_rapl: abstract register address (Alexander Beregalov) [1732604] - [powercap] intel_rapl: introduce struct rapl_if_private (Alexander Beregalov) [1732604] - [kernel] intel_rapl: introduce intel_rapl.h (Alexander Beregalov) [1732604] - [powercap] intel_rapl: remove hardcoded register index (Alexander Beregalov) [1732604] - [powercap] intel_rapl: use reg instead of msr (Alexander Beregalov) [1732604] - [security] ima: Differentiate auditing policy rules from "audit" actions (Richard Guy Briggs) [1479911] - [security] ima: Do not audit if CONFIG_INTEGRITY_AUDIT is not set (Richard Guy Briggs) [1479911] - [security] ima: Use audit_log_format() rather than audit_log_string() (Richard Guy Briggs) [1479911] - [security] ima: Call audit_log_string() rather than logging it untrusted (Richard Guy Briggs) [1479911] - [security] selinux: avoid atomic_t usage in sidtab (Ondrej Mosnacek) [1741182] - [security] selinux: always return a secid from the network caches if we find one (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - rename type_val_to_struct_array (Ondrej Mosnacek) [1741182] - [security] selinux: policydb - fix some checkpatch.pl warnings (Ondrej Mosnacek) [1741182] - [security] selinux: shuffle around policydb.c to get rid of forward declarations (Ondrej Mosnacek) [1741182] - [security] selinux: fix memory leak in policydb_init() (Ondrej Mosnacek) [1741182] - [security] selinux: check sidtab limit before adding a new entry (Ondrej Mosnacek) [1741182] - [security] selinux: format all invalid context as untrusted (Ondrej Mosnacek) [1479914 1741182] - [security] selinux: remove some no-op BUG_ONs (Ondrej Mosnacek) [1741182] - [security] selinux: provide __le variables explicitly (Ondrej Mosnacek) [1741182] - [security] selinux: avoid uninitialized variable warning (Ondrej Mosnacek) [1741182] - [security] selinux: remove useless assignments (Ondrej Mosnacek) [1741182] - [security] selinux: fix NULL dereference in policydb_destroy() (Ondrej Mosnacek) [1741182] - [security] selinux: convert to kvmalloc (Ondrej Mosnacek) [1741182] - [kernel] lsm: generalize flag passing to security_capable (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove unused selinux_is_enabled (Ondrej Mosnacek) [1741182] - [kernel] selinux: Remove cred security blob poisoning (Ondrej Mosnacek) [1741182] - [security] selinux: Remove SECURITY_SELINUX_BOOTPARAM_VALUE (Ondrej Mosnacek) [1741182]- [tools] selftests: mlxsw: Add a test for leftover DSCP rule (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix local variable declarations in DSCP tests (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add counters for GC events (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1886 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent auto negotiation on number of lanes (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove 56G speed support (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Keep unmatched entries in a linked list (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Further reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Fix error path in mlxsw_sp_module_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: fix duplicated check on orig_egr_types (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Increase parsing depth when PTP is enabled (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Fix typo in qos_mc_aware.sh (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Do not process learned records with a dummy FID (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed (Ivan Vecera) [1737368] - [netdrv] remove redundant memset (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Apply the PTP shaper enable/disable logic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Set up PTP shaper when port status has changed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Enable/disable PTP shaper on a port when getting HWTSTAMP on/off (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add new operation for getting the port's speed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Set the PTP shaper parameters (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add QoS PTP Shaper Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add note about the PTP shaper (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add ptps field in QoS ETS Element Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix validation in mlxsw_sp1_ptp_packet_finish() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support ethtool get_ts_info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support SIOCGHWTSTAMP, SIOCSHWTSTAMP ioctls (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Configure PTP traps and FIFO events (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Garbage-collect unmatched entries (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Support timestamping on Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Disable BH when working with PHC (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Add PTP initialization / finalization (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: ptp: Hook into packet transmit path (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for using SKB control buffer (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: ptp: Hook into packet receive path (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Add support for traps specific to Spectrum-1 (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Extract a helper for trap registration (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Global Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Time Precision Packet Timestamping Reading (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Precision Time Protocol Trap Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Monitoring Time Precision Packet Port Configuration Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for negative temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add the hottest thermal zone detection (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend thermal core with per inter-connect device thermal zones (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Implement support for ingress device matching (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Fix SRC_SYS_PORT element size (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid size check for RX_ACL_SYSTEM_PORT element (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Write RX_ACL_SYSTEM_PORT acl element correctly (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Fix compilation on 32-bit ARM (Ivan Vecera) [1737368] - [tools] selftests: ptp: Add Physical Hardware Clock test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: PTP physical hardware clock initialization (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_ptp: Add implementation for physical hardware clock operations (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management Pulse Per Second Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management UTC Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: pci: Query free running clock PCI BAR and offsets (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add a new interface for reading the hardware free running clock (Ivan Vecera) [1737368] - [netdrv] mlxsw: cmd: Free running clock PCI BAR and offsets via query firmware (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement flash update status notifications (Ivan Vecera) [1737368] - [netdrv] mlxfw: Introduce status_notify op and call it to notify about the status (Ivan Vecera) [1737368] - [netdrv] mlxfw: Propagate error messages through extack (Ivan Vecera) [1737368] - [netdrv] mlxsw: Move firmware flash implementation to devlink (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Reduce buffer size in transactions for SFP modules temperature readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend the index size for temperature sensors readout (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Extend hwmon interface with inter-connect temperature attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Management General Peripheral Information Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Extend sensor index field size of Management Temperature Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Re-order initialization sequence (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Allow flexible setting of I2C transactions size (Ivan Vecera) [1737368] - [netdrv] mlxsw: i2c: Extend initialization with querying firmware info (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Disallow prio-tagged packets when PVID is removed (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Reduce pool size on Spectrum-2 (Ivan Vecera) [1737368] - [tools] selftests: tc_flower: Add TOS matching test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_flower: Fix TOS matching (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test nexthop offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Refresh nexthop neighbour when it becomes dead (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use different seeds for ECMP and LAG hash (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Prevent force of 56G (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Avoid warning after identical rules insertion (Ivan Vecera) [1737368] - [tools] selftests: Add loopback test (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Implement loopback ethtool feature (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add Port Physical Loopback Register (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: split base on local_ports_in_{1x, 2x} resources (Ivan Vecera) [1737368] - [netdrv] mlxsw: resources: Add local_ports_in_{1x, 2x} (Ivan Vecera) [1737368] - [netdrv] mlxsw: Bump firmware version to 13.2000.1122 (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove obsolete dependency on THERMAL=m (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Prevent ipv6 gateway with v4 route via replace and append (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Adjust CPU port shared buffer egress quotas (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Allow skipping ingress port quota configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Split business logic from mlxsw_sp_port_sb_pms_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use new CPU ingress pool for control packets (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add pools for CPU traffic (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Remove assumption about pool order (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing multicast TCs' attributes (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid changing threshold type of first egress pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Forbid configuration of multicast pool (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto TC's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add ability to veto pool's configuration (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Use defines for pool indices (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_buffers: Add extack messages for invalid configurations (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Relax FIB rule validation (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum: Use a stable ECMP/LAG seed (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Test neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Add neighbour offload indication (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_router: Propagate neighbour update errors (Ivan Vecera) [1737368] - [documentation] documentation: networking: devlink-info-versions: Add fw.psid (Ivan Vecera) [1737368] - [netdrv] mlxsw: core: Add support for devlink info command (Ivan Vecera) [1737368] - [netdrv] mlxsw: reg: Add MGIR register (Ivan Vecera) [1737368] - [tools] selftests: forwarding: test for bridge mcast traffic after report and leave (Ivan Vecera) [1737368] - [netdrv] mlxsw: switch_ib: Pass valid HW id down to mlxsw_core_port_init() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_port_parent_id implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Pass switch ID through devlink_port_attrs_set() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Rename rehash_dis trace (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove failed_rollback dead end (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Move rehash_dis trace call and err msg to vregion_migrate() (Ivan Vecera) [1737368] - [netdrv] mlxsw: spectrum_acl: Remove redundant failed_rollback from migrate_start() (Ivan Vecera) [1737368] - [netdrv] mlxsw: Remove ndo_get_phys_port_name implementation (Ivan Vecera) [1737368] - [netdrv] mlxsw: Implement ndo_get_devlink_port (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add a new test for strict priority (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: Add qos_lib.sh (Ivan Vecera) [1737368] - [tools] selftests: mlxsw: qos_mc_aware: Configure shared buffers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Add shared buffer helpers (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Simplify deduction of DEVLINK_DEV (Ivan Vecera) [1737368] - [tools] selftests: forwarding: devlink_lib: Avoid double sourcing of lib.sh (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Test action VLAN modify (Ivan Vecera) [1737368] - [tools] selftests: forwarding: Add PCP match and VLAN match tests (Ivan Vecera) [1737368] - [infiniband] rdma/mlx5: Use irq xarray locking for mkey_table (Alaa Hleihel) [1724336] - [netdrv] mlx4_core: Dynamically set guaranteed amount of counters per VF (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Initialize on stack link modes bitmap (Alaa Hleihel) [1724336] - [netdrv] mlx5e: fix ethtool self test: link speed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix handling of compressed CQEs in case of low NAPI budget (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't store direct pointer to action's tunnel info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix NULL pointer dereference in extended destination (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only skip encap flows update when encap init failed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Determine source port properly for vlan push action (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix flow counter list auto bits struct (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Clear old rate limit when closing QP (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Remove dead code (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: prevent memory leak in mlx5_fpga_conn_create_cq (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Fix consumer index of error cqe dump (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Zero-memset WQE info struct upon update (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Add missing synchronize_srcu() for MW cases (Alaa Hleihel) [1724307 1724336] - [infiniband] rdma/mlx5: Order num_pending_prefetch properly with synchronize_srcu (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Do not allow rereg of a ODP MR (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching on tunnel addresses type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add device ID of upcoming BlueField-2 (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Free mpi in mp_slave mode (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use the original address for the page during free_pages (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: FWTrace, Reduce stack usage (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove unnecessary clear_bit()s (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix spelling mistake "offlaods" -> "offloads" (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Remove leftover declaration (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Fix a typo in WOL function names (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing include file to lib/crypto.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: remove self-assignment on esw->dev (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support MLX5_CMD_OP_QUERY_LAG as a DEVX general command (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Fix mlx5_ifc_query_lag_out_bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix formats with line continuation whitespace (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix offset of tisc bits reserved field (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix -Wtype-limits compilation warnings (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support per device q counters in switchdev mode (Alaa Hleihel) [1659186 1724336] - [infiniband] ib/mlx5: Refactor code for counters allocation (Alaa Hleihel) [1659186 1724336] - [netdrv] mlx5: DR, Replace CRC32 implementation to use kernel lib (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Support IPv4 and IPv6 mixed matcher (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Allow insertion of duplicate rules (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: avoid 64-bit division in dr_icm_pool_mr_create() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Fix traffic duplication in ethtool steering (Alaa Hleihel) [1724336] - [netdrv] mlx5: DR, Allow matching on vport based on vhca_id (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix getting incorrect prev node in ste_free (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Remove redundant vport number from action (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: DR, Fix SW steering HW bits and definitions (Alaa Hleihel) [1724336] - [netdrv] mlx5: fix missing assignment of variable err (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Fix rt's type in dr_action_create_reformat_action (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Fix error return code in dr_domain_init_resources() (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Fix addr's type in mlx5dr_icm_dm (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add devlink flow_steering_mode parameter (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add support to use SMFS in switchdev mode (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Add API to set the namespace steering mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add direct rule fs_cmd implementation (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add CONFIG_MLX5_SW_STEERING for software steering support (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose APIs for direct rule managing (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add required FW steering functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering rule functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering action functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering matcher functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering table functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose steering domain functionality (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add Steering entry (STE) utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Expose an internal API to issue RDMA operations (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, ICM pool memory allocator (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add direct rule command utilities (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: DR, Add the internal direct rule types definitions (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Add flow steering actions to fs_cmd shim layer (Alaa Hleihel) [1760284 1724327 1724336] - [netdrv] mlx5: Set only stag for match untagged packets (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add stub for mlx5_eswitch_mode (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Avoid disabling RoCE when uninitialized (Alaa Hleihel) [1760284 1724336] - [kernel] mlx5: Add HW bits and definitions required for SW steering (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5: Move device memory management to mlx5_core (Alaa Hleihel) [1760284 1724336] - [netdrv] mlx5e: Support LAG TX port affinity distribution (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Expose new function for TIS destroy loop (Alaa Hleihel) [1760285 1724336] - [kernel] mlx5: Add lag_tx_port_affinity capability bit (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Add device out of buffer counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5: Fix the order of fc_stats cleanup (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix deallocation of non-fully init encap entries (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only access fully initialized flows in neigh update (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor neigh used value update for concurrent execution (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect neigh hash encap list with spinlock and rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Refactor mlx5e_neigh_update_table->encap_lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend neigh hash entry with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Always take reference to neigh entry (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extract code that queues neigh update work into function (Alaa Hleihel) [1663231 1724336] - [kernel] mlx5: Add support for VNIC_ENV internal rq counter (Alaa Hleihel) [1760291 1724336] - [netdrv] mlx5e: Use refcount_t for refcount (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Use vhca_id in generating representor port_index (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify querying port representor parent id (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Removed unused hwid (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Allow concurrent creation of encap entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect encap hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend encap entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of mod_hdr entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod_hdr hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect mod header entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend mod header entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Allow concurrent creation of hairpin entries (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin hash table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect hairpin entry flows list with spinlock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend hairpin entry with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5: E-switch, Tide up eswitch config sequence (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Remove redundant mc_promisc NULL check (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, remove redundant error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Introduce helper function to enable/disable vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Initialize TSAR Qos hardware block before its user vports (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-switch, Combine metadata enable/disable functionality (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Verify support QoS element type (Alaa Hleihel) [1724336] - [netdrv] mlx5: Make load_one() and unload_one() symmetric (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add flow counter pool (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Add flow counter bulk infrastructure (Alaa Hleihel) [1760297 1724336] - [kernel] mlx5: Add flow counter bulk allocation hardware bits and command (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5: Refactor and optimize flow counter bulk query (Alaa Hleihel) [1760297 1724336] - [netdrv] mlx5e: Protect tc flow table with mutex (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Rely on rcu instead of rtnl lock when getting upper dev (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Eswitch, use state_lock to synchronize vlan change (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Eswitch, change offloads num_flows type to atomic64 (Alaa Hleihel) [1663231 1724327 1724336] - [netdrv] mlx5e: Protect unready flows with dedicated lock (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Protect tc flows hashtable with rcu (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Change flow flags type to unsigned long (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Extend tc flow struct with reference counter (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Simplify get_route_and_out_devs helper function (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Improve ethtool rxnfc callback structure (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Avoid warning print when not required (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Print a warning when LRO feature is dropped or not allowed (Alaa Hleihel) [1663231 1724336] - [netdrv] mlx5e: Remove ethernet segment from dump WQE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add num bytes metadata to WQE info (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix delay in fw fatal report handling due to fw report (Alaa Hleihel) [1724336] - [netdrv] mlx5: Fix crdump chunks print (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Block MR WR if UMR is not possible (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR re-registration flow to use UMR properly (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report and handle ODP support properly (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Consolidate use_umr checks into single function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix compatibility issue with ethtool flash device (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix use-after-free error while accessing ev_file pointer (Alaa Hleihel) [1724307 1724336] - [netdrv] mlx5e: Remove redundant check in CQE recovery flow of tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow of CQE recovery on tx reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix false negative indication on tx reporter CQE recovery (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field placement (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix tisn field name (Alaa Hleihel) [1724336] - [netdrv] mlx5e: kTLS, Fix progress params context WQE layout (Alaa Hleihel) [1724336] - [kernel] mlx5: kTLS, Fix wrong TIS opmod constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: crypto, Fix wrong offset in encryption key command (Alaa Hleihel) [1724336] - [netdrv] mlx5e: ethtool, Avoid setting speed to 56GBASE when autoneg off (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Only support tx/rx pause setting for port owner (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support inner header match criteria for non decap flow action (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Use flow keys dissector to parse packets for ARFS (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Check the correct variable in error handling code (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Fix implicit MR release flow (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5e: always initialize frag->last_in_page (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Release locks during notifier unregister (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix MR registration flow to use UMR properly (Alaa Hleihel) [1764207 1724336] - [netdrv] mlx5e: kTLS, Call WARN_ONCE on netdev mismatch (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Prevent encap flow counter update async to user query (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix matching of speed to PRM link modes (Alaa Hleihel) [1724336] - [kernel] mlx5: Fix modify_cq_in alignment (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add missing RDMA_RX capabilities (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use reversed order when unregister devices (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Prevent concurrent MR updates during invalidation (Alaa Hleihel) [1724308 1724336] - [infiniband] ib/mlx5: Fix clean_mr() to work in the expected order (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Move MRs to a kernel PD when freeing them to the MR cache (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Use direct mkey destroy command upon UMR unreg failure (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Fix unreg_umr to ignore the mkey state (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Replace kfree with kvfree (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rely on filter_dev instead of dissector keys for tunnels (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Verify encapsulation is supported (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Convert single case statement switch statements into if statements (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Reduce ingress acl modify metadata stack usage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Fix compilation error in TLS code (Alaa Hleihel) [1724336] - [netdrv] mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix error flow in tx reporter diagnose (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix return value from timeout recover function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Rx, Fix checksum calculation for new hardware (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Fix port tunnel GRE entropy control (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Fix default encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Return in default case statement in tx_post_resync_params (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Register devlink ports for physical link, PCI PF, VFs (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Set RDMA DIM to be enabled by default (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Report correctly tag matching rendezvous capability (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Implement VHCA tunnel mechanism in DEVX (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Introduce VHCA tunnel device capability (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Add kTLS TX HW offload support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Introduce a fenced NOP WQE posting function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Re-work TIS creation functions (Alaa Hleihel) [1760285 1724336] - [netdrv] mlx5e: Tx, Unconstify SQ stop room (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Don't implicitly assume SKB-less wqe has one WQEBB (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Make SQ WQE fetch function type generic (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Tx, Enforce L4 inline copy when needed (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move helper functions to a new txrx datapath header (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Add core TLS support for the Connect-X family (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add crypto library to support create/destroy encryption key (Alaa Hleihel) [1724336] - [netdrv] mlx5: Kconfig, Better organize compilation flags (Alaa Hleihel) [1724336] - [netdrv] mlx5: Accel, Expose accel wrapper for IPsec FPGA function (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter_alloc_stats() and counter_update_stats() support (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support statistic q counter configuration (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Add counter set id as a parameter for mlx5_ib_query_q_counters() (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: Support set qp counter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added devlink info callback (Alaa Hleihel) [1724336] - [netdrv] mlx5: Added fw version query command (Alaa Hleihel) [1724336] - [kernel] mlx5: Add rts2rts_qp_counters_set_id field in hca cap (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use proper allocation API to get zeroed memory (Alaa Hleihel) [1724336] - [infiniband] ib/mlx5: DEVX cleanup mdev (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Add DEVX support for CQ events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Implement DEVX dispatching event (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Enable subscription for device events over DEVX (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Register DEVX with mlx5_core to get async events (Alaa Hleihel) [1724307 1724336] - [infiniband] ib/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_EVENT_FD (Alaa Hleihel) [1724307 1724336] - [kernel] mlx5: Properly name the generic WQE control field (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce TLS TX offload hardware bits and structures (Alaa Hleihel) [1724336] - [netdrv] mlx5: Refactor mlx5_esw_query_functions for modularity (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch prepare functions change handler to be modular (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Introduce and use mlx5_eswitch_get_total_vports() (Alaa Hleihel) [1724327 1724336] - [infiniband] ib/mlx5: Fixed reporting counters on 2nd port for Dual port RoCE (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose device definitions for object events (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report EQE data upon CQ completion (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report a CQ error event only when a handler was set (Alaa Hleihel) [1724336] - [netdrv] mlx5: mlx5_core_create_cq() enhancements (Alaa Hleihel) [1724336] - [netdrv] mlx5: Expose the API to register for ANY event (Alaa Hleihel) [1724336] - [netdrv] mlx5: Use event mask based on device capabilities (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Fix mlx5_core_destroy_cq() error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Handle UC address change in switchdev mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Consider host PF for inline mode and vlan pop (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use iterator for vlan and min-inline setups (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Reg/unreg function changed event at correct stage (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Consolidate eswitch function number of VFs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Refactor eswitch SR-IOV interface (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Handle host PF vport mac/guid for ECPF (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use correct flags when configuring vlan (Alaa Hleihel) [1724336] - [netdrv] mlx5: Reduce dependency on enabled_vfs counter and num_vfs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Don't handle VF func change if host PF is disabled (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Limit scope of mlx5_get_next_phys_dev() to PCI PF devices (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move pci status reg access mutex to mlx5_pci_init (Alaa Hleihel) [1724336] - [kernel] mlx5: Rename mlx5_pci_dev_type to mlx5_coredev_type (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Cleanup rep when doing unload (Alaa Hleihel) [1724336] - [infiniband] {ib, net}/mlx5: E-Switch, Use index of rep for vport to IB port mapping (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Use vport index when init rep (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Added MCQI and MCQS registers' description to ifc (Alaa Hleihel) [1724336] - [kernel] mlx5: Add hardware definitions for sub functions (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Disallow tc redirect offload cases we don't support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Expose same physical switch_id for all representors (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Don't refresh TIRs when updating representor SQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: reduce stack usage in mlx5_eswitch_termtbl_create (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Set drvinfo in generic manner (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Correct phys_port_name for PF port (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Report netdevice MPLS features (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move to HW checksumming advertising (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Allow adding the same MAC more than once (Alaa Hleihel) [1724336] - [netdrv] mlx5: MPFS, Cleanup add MAC flow (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Move queue param structs to en/params.h (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Encapsulate open/close queues into a function (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Consider XSK in XDP MTU limit calculation (Alaa Hleihel) [1724336] - [netdrv] mlx5e: XDP_TX from UMEM support (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Share the XDP SQ for XDP_TX between RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Refactor struct mlx5e_xdp_info (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Allow ICO SQ to be used by multiple RQs (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Calculate linear RX frag size considering XSK (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Replace deprecated PCI_DMA_TODEVICE (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Attach/detach XDP program safely (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Enable vport metadata matching if firmware supports it (Alaa Hleihel) [1724327 1724336] - [infiniband] rdma/mlx5: Add vport metadata matching for IB representors (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in slow path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Pass metadata from FDB to eswitch manager (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Add query and modify esw vport context functions (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Add match on vport metadata for rule in fast path (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Specifying known origin of packets matching the flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Tag packet with vport number in VF vports and uplink ingress ACLs (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Add flow context for flow tag (Alaa Hleihel) [1724336] - [netdrv] mlx5: Introduce a helper API to check VF vport (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Support allocating modify header context from ingress ACL (Alaa Hleihel) [1724336] - [netdrv] mlx5: Get vport ACL namespace by vport index (Alaa Hleihel) [1724336] - [kernel] mlx5: Introduce vport metadata matching bits and enum constants (Alaa Hleihel) [1724336] - [netdrv] mlx5: Convert mkey_table to XArray (Alaa Hleihel) [1724308 1724307 1724336] - [infiniband] rdma/mlx5: Refactor MR descriptors allocation (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Use PA mapping for PI handover (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Improve PI handover performance (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Remove unused IB_WR_REG_SIG_MR code (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Enable decap and packet reformat on FDB (Alaa Hleihel) [1724336] - [infiniband] rdma/mlx5: Consider eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: add missing void argument to function mlx5_devlink_alloc (Alaa Hleihel) [1724336] - [kernel] mlx5: Expose eswitch encap mode (Alaa Hleihel) [1724336] - [netdrv] mlx5: Declare more strictly devlink encap mode (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: use indirect calls wrapper for the rx packet handler (Alaa Hleihel) [1724336] - [netdrv] mlx5e: use indirect calls wrapper for skb allocation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW fatal issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW fatal reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add fw fatal devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Report devlink health on FW issues (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add support for FW reporter dump (Alaa Hleihel) [1724336] - [netdrv] mlx5: Create FW devlink_health_reporter (Alaa Hleihel) [1724336] - [netdrv] mlx5: Issue SW reset on FW assert (Alaa Hleihel) [1724336] - [netdrv] mlx5: Control CR-space access by different PFs (Alaa Hleihel) [1724336] - [netdrv] mlx5: Handle SW reset of FW in error flow (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Crdump support (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add Vendor Specific Capability access gateway (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all devlink related functions calls to devlink.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Add EQ enable/disable API (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Use a single IRQ for all async EQs (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Rename mlx5_irq_info to mlx5_irq (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move all IRQ logic to pci_irq.c (Alaa Hleihel) [1724336] - [netdrv] mlx5: Generalize IRQ interface to work with irq_table (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ table creation from EQ table creation (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ affinity set to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move IRQ rmap creation to IRQ allocation phase (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ data from EQ table data (Alaa Hleihel) [1724336] - [netdrv] mlx5: Separate IRQ request/free from EQ life cycle (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Change interrupt handler to call chain notifier (Alaa Hleihel) [1724308 1724336] - [netdrv] mlx5: Introduce EQ polling budget (Alaa Hleihel) [1724336] - [netdrv] mlx5: Support querying max VFs from device (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Return raw output for query esw functions (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Handle representors creation in handler context (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: Increase wait time for fw initialization (Alaa Hleihel) [1724336] - [netdrv] mlx5: Move firmware flash implementation to devlink (Alaa Hleihel) [1724336] - [netdrv] mlx5e: TX, Improve performance under GSO workload (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Use termination table for VLAN push actions (Alaa Hleihel) [1722647 1724327 1724336] - [netdrv] mlx5e: Geneve, Add support for encap/decap flows offload (Alaa Hleihel) [1725582 1724336] - [netdrv] mlx5e: Rearrange tc tunnel code in a modular way (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Geneve, Keep tunnel info as pointer to the original struct (Alaa Hleihel) [1724336] - [netdrv] mlx5: Geneve, Manage Geneve TLV options (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Enable setting multiple match criteria for flow group (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5e: Allow matching only enc_key_id/enc_dst_port for decapsulation action (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Generalize vport type in vport representor (Alaa Hleihel) [1724336] - [netdrv] {ib, net}/mlx5: Constify rep ops functions pointers (Alaa Hleihel) [1724327 1724336] - [netdrv] {ib, net}/mlx5: No need to typecast from void* to mlx5_ib_dev* (Alaa Hleihel) [1724336] - [netdrv] mlx5: E-Switch, Honor eswitch functions changed event cap (Alaa Hleihel) [1724327 1724336] - [netdrv] mlx5: E-Switch, Replace host_params event with functions_changed event (Alaa Hleihel) [1724327 1724336] - [kernel] mlx5: Introduce termination table bits (Alaa Hleihel) [1722647 1724336] - [kernel] mlx5: Add core dump register access HW bits (Alaa Hleihel) [1724336] - [netdrv] mlx5: potential error pointer dereference in error handling (Alaa Hleihel) [1724336] - [netdrv] mlx5e: Support tagged tunnel over bond (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Avoid detaching non-existing netdev under switchdev mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix source port matching in fdb peer flow rule (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace reciprocal_scale in TX select queue function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid reloading already removed devices (Alaa Hleihel) [1724335] - [netdrv] mlx5: Update pci error handler entries and command translation (Alaa Hleihel) [1724335] - [infiniband] mlx5: avoid 64-bit division (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Disable rxhash when CQE compress is enabled (Alaa Hleihel) [1724335] - [netdrv] mlx5e: restrict the real_dev of vlan device is the same as uplink device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Allocate root ns memory using kzalloc to match kfree (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free in fs init error unwinding path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Avoid double free of root ns in the error flow path (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix error handling in mlx5_load() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix possible modify header actions memory leak (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix no rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Additional check for flow destination comparison (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add missing ethtool driver info for representors (Alaa Hleihel) [1766306 1724335] - [netdrv] mlx5e: Fix number of vports for ingress ACL configuration (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Fix ethtool rxfh commands when CONFIG_MLX5_EN_RXNFC is disabled (Alaa Hleihel) [1724335] - [netdrv] mlx5: Fix peer pf disable hca command (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Correct type to u16 for vport_num and int for vport_index (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add meaningful return codes to status_to_err function (Alaa Hleihel) [1724335] - [netdrv] mlx5: Imply MLXFW in mlx5_core (Alaa Hleihel) [1724335] - [netdrv] mlx5: Set completion EQs as shared resources (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Verify DEVX general object type correctly (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove MAYEXEC flag (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Device resource control for privileged DEVX user (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add steering SW ICM device memory type (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Warn on allocated MEMIC buffers during cleanup (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Support device memory type attribute (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Add missing XRC options to QP optional params mask (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use atomic rep state to serialize state change (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix the check of legal vport (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Use getter to access all vport array (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use available mlx5_vport struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: Reuse mlx5_esw_for_each_vf_vport macro in two files (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove unused mlx5_query_nic_vport_vlans (Alaa Hleihel) [1724335] - [netdrv] mlx5e: remove meaningless CFLAGS_tracepoint.o (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Put the common XDP code into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ethtool, Add support for EEPROM high pages query (Alaa Hleihel) [1724322 1724335] - [netdrv] mlx5e: Return error when trying to insert existing flower filter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop with VLAN 0 rewrite in prio tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: ACLs for priority tag mode (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Turn on HW tunnel offload in all TIRs (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take common TIR context settings into a function (Alaa Hleihel) [1724335] - [kernel] mlx5: Fix broken hca cap offset (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add flow table capabilities for Geneve decap with TLV options (Alaa Hleihel) [1725554 1724335] - [kernel] mlx5: Geneve, Add basic Geneve encap/decap flow table capabilities (Alaa Hleihel) [1725554 1724335] - [netdrv] mlx5: Eswitch, enable RoCE loopback traffic (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add new miss flow table action (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add support in RDMA RX steering (Alaa Hleihel) [1724335] - [netdrv] mlx5: Pass flow steering objects to fs_cmd (Alaa Hleihel) [1724335] - [netdrv] mlx5: Enable general events on all interfaces (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Restrict 'DELAY_DROP_TIMEOUT' subtype to Ethernet interfaces (Alaa Hleihel) [1724335] - [netdrv] mlx5: Separate and generalize dma device from pci device (Alaa Hleihel) [1724335] - [netdrv] mlx5: Get rid of storing copy of device name (Alaa Hleihel) [1724335] - [kernel] mlx5: e-switch: Introduce prio tag mode (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Expose TIR ICM address to user space (Alaa Hleihel) [1724335] - [netdrv] mlx5: Introduce new TIR creation core API (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose TIR ICM address in command outbox (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose SW ICM related device memory capabilities (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use #define for the WQE wait timeout constant (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused rx_page_reuse stat (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Take HW interrupt trigger into a function (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Add an underflow warning comment (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Move parameter calculation functions to en/params.c (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Report mlx5e_xdp_set errors (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove unused parameter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Inline small packets into the TX MPWQE in XDP xmit flow (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Add TX MPWQE session counter (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Enhance RQ indication for XDP redirect flush (Alaa Hleihel) [1724335] - [netdrv] mlx5e: XDP, Fix shifted flag index in RQ bitmap (Alaa Hleihel) [1724335] - [netdrv] mlx5e: RX, Support multiple outstanding UMR posts (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Don't create IB representors when in multiport RoCE mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Initialize roce port info before multiport master init (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow DEVX and raw creation flow on reps (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Add query e-switch vport context to devx white list (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Allow inserting a steering rule to the FDB (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Create flow table with max size supported (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Access the prio bypass inside the FDB flow table namespace (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Check for error return in flow_rule rather than err (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Remove VF representor profile (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move to single device multiport ports in switchdev mode (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move SMI caps logic (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Refactor netdev affinity code (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move default representors SQ steering to rule to modify QP (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move rep into port struct (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use correct size for device resources (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move ports allocation to outside of INIT stage (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Free IB device on remove (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Move netdev info into the port struct (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, add a new prio to be used by the RDMA side (Alaa Hleihel) [1724335] - [kernel] mlx5: E-Switch, don't use hardcoded values for FDB prios (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Remove references to uboject->context (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Unify logic of MTU boundaries (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Obsolete param field holding a constant value (Alaa Hleihel) [1724335] - [netdrv] mlx5: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Do not rewrite fields with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with ingress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Offload TC e-switch rules with egress VLAN device (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Allow VLAN rewrite of prio field with the same match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deny VLAN rewrite if there is no VLAN header match (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Use helpers to get headers criteria and value pointers (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Return -EOPNOTSUPP when attempting to offload an unsupported action (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Deletes unnecessary setting of esw_attr->parse_attr (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Remove 'parse_attr' argument in parse_tc_fdb_actions() (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Make the log friendly when decapsulation offload not supported (Alaa Hleihel) [1724335] - [netdrv] mlx5: E-Switch, Fix double mutex initialization (Alaa Hleihel) [1724335] - [netdrv] mlx5: Handle event of power detection in the PCIE slot (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Cleanup WQE page fault handler (Alaa Hleihel) [1724335] - [kernel] mlx5: Expose MPEIN (Management PCIE INfo) register layout (Alaa Hleihel) [1724335] - [netdrv] mlx5: Add rate limit print macros (Alaa Hleihel) [1724335] - [infiniband] mlx5: Add explicit bar address field (Alaa Hleihel) [1724335] - [netdrv] mlx5: Replace dev_err/warn/info by mlx5_core_err/warn/info (Alaa Hleihel) [1724335] - [netdrv] mlx5: Use dev->priv.name instead of dev_name (Alaa Hleihel) [1724335] - [netdrv] mlx5: Make mlx5_core messages independent from mdev->pdev (Alaa Hleihel) [1724335] - [netdrv] mlx5: Break load_one into three stages (Alaa Hleihel) [1724335] - [netdrv] mlx5: Function setup/teardown procedures (Alaa Hleihel) [1724335] - [netdrv] mlx5: Move health and page alloc init to mdev_init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Split mdev init and pci init (Alaa Hleihel) [1724335] - [netdrv] mlx5: Remove redundant init functions parameter (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove spinlock support from mlx5_write64 (Alaa Hleihel) [1724335] - [kernel] mlx5: Remove unused MLX5_*_DOORBELL_LOCK macros (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Declare devx_async_cmd_event_fops static (Alaa Hleihel) [1724335] - [infiniband] ib/mlx5: Compare only index part of a memory window rkey (Alaa Hleihel) [1724335] - [infiniband] mlx5: Convert mlx5_srq_table to XArray (Alaa Hleihel) [1724335] - [netdrv] mlx5e: Replace TC VLAN pop and push actions with VLAN modify (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Support VLAN modify action (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: Add VLAN ID rewrite fields (Alaa Hleihel) [1722646 1724335] - [netdrv] mlx5e: TX, Add geneve tunnel stateless offload support (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Take SW parser code to a separate function (Alaa Hleihel) [1722661 1724335] - [netdrv] mlx5e: Fix port buffer function documentation format (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify mlx5_sriov_is_enabled() by using pci core API (Alaa Hleihel) [1724335] - [netdrv] mlx5: Rename total_vfs to total_vports (Alaa Hleihel) [1724335] - [netdrv] mlx5: Simplify sriov enable/disable flow (Alaa Hleihel) [1724335] - [infiniband] rdma/mlx5: Use rdma_user_map_io for mapping BAR pages (Alaa Hleihel) [1724333] - [netdrv] mlx5e: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Switch to Toeplitz RSS hash by default (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Protect against non-uplink representor for encap (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Rx, Fixup skb checksum for packets with tail padding (Alaa Hleihel) [1724333] - [netdrv] mlx5e: XDP, Avoid checksum complete when XDP prog is loaded (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Use fail-safe channels reopen in tx reporter recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Skip un-needed tx recover if interface state is down (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xon formula (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update xoff formula (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, fix syndrome (0x678139) when turn on vepa (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Protect from invalid memory access in offload fdb table (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix access to invalid memory when toggling esw modes (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Add a lock on tir list (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix error handling when refreshing TIRs (Alaa Hleihel) [1724333] - [netdrv] mlx5: Decrease default mr cache size (Alaa Hleihel) [1748518 1724333] - [infiniband] ib/mlx5: Reset access mask when looping inside page fault handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport rate (Alaa Hleihel) [1724333] - [netdrv] mlx5: Avoid panic when setting vport mac, getting vport config (Alaa Hleihel) [1724333] - [netdrv] mlx5e: IPoIB, Fix RX checksum statistics update (Alaa Hleihel) [1724333] - [netdrv] mlx5: Remove redundant lag function to get pf num (Alaa Hleihel) [1724333] - [netdrv] mlx5: ODP support for XRC transport is not enabled by default in FW (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Update tx reporter status in case channels were successfully opened (Alaa Hleihel) [1722274 1724333] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Set correct write permissions for implicit ODP MR (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Declare mlx5e_tx_reporter_recover_from_ctx as static (Alaa Hleihel) [1724333] - [netdrv] mlx5: Support ndo bridge_setlink and getlink (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5: E-Switch, Add support for VEPA in legacy mode (Alaa Hleihel) [1722659 1724333] - [netdrv] mlx5e: Fix mlx5e_tx_reporter_create return value (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix return status of TX reporter timeout recover (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Re-add support for TX timeout when TX reporter is not valid (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Fix warn print in case of TX reporter creation failure (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Disable esw manager vport correctly (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Fix the warning on vport index out of range (Alaa Hleihel) [1724333] - [netdrv] mlx5: Delete unused FPGA QPN variable (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Wrap the open and apply of channels in one fail-safe function (Alaa Hleihel) [1724333] - [netdrv] mlx5: Factor out HCA capabilities functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Allow transition to offloads mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Load/unload VF reps according to event from host PF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Consider ECPF vport depends on eswitch ownership (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Assign a different position for uplink rep and vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Centralize repersentor reg/unreg to eswitch driver (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Support load/unload reps of specific vport types (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Add state to eswitch vport representors (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Use getter and iterator to access vport/rep (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Split VF and special vports for offloads mode (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Refactor offloads flow steering init/cleanup (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to host PF vport as other vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Properly refer to the esw manager vport (Alaa Hleihel) [1724333] - [netdrv] mlx5: Correctly set LAG mode for ECPF (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Avoid magic numbers when initializing offloads mode (Alaa Hleihel) [1724333] - [kernel] mlx5: Relocate vport macros to the vport header file (Alaa Hleihel) [1724333] - [netdrv] mlx5: E-Switch, Normalize the name of uplink vport number (Alaa Hleihel) [1724333] - [kernel] mlx5: Provide an alternative VF upper bound for ECPF (Alaa Hleihel) [1724333] - [kernel] mlx5: Add host params change event (Alaa Hleihel) [1724333] - [kernel] mlx5: Add query host params command (Alaa Hleihel) [1724333] - [netdrv] mlx5: Update enable HCA dependency (Alaa Hleihel) [1724333] - [netdrv] mlx5: Introduce Mellanox SmartNIC and modify page management logic (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Use unified register/load function for uplink and VF vports (Alaa Hleihel) [1724333] - [netdrv] mlx5: Use consistent vport num argument type (Alaa Hleihel) [1724333] - [kernel] mlx5: Use void pointer as the type in address_of macro (Alaa Hleihel) [1724333] - [netdrv] mlx5: Align ODP capability function with netdev coding style (Alaa Hleihel) [1724333] - [netdrv] mlx5: use RCU lock in mlx5_eq_cq_get() (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Fix memory leak in case we fail to add an IB device (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Simplify WQE count power of two check (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Add tx timeout support for mlx5e tx reporter (Alaa Hleihel) [1722274 1724333] - [netdrv] mlx5e: Add tx reporter support (Alaa Hleihel) [1722274 1724333] - [infiniband] ib/mlx5: Advertise XRC ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Advertise SRQ ODP support for supported transports (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add ODP SRQ support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Let read user wqe also from SRQ buffer (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Add XRC initiator ODP support (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Clean mlx5_ib_mr_responder_pfault_handler() signature (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Remove useless check in ODP handler (Alaa Hleihel) [1724333] - [netdrv] mlx5: Set ODP SRQ support in firmware (Alaa Hleihel) [1724333] - [kernel] mlx5: Add XRC transport to ODP device capabilities layout (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement DEVX hot unplug for async command FD (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Implement the file ops of DEVX async command FD (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Reuse fold sw stats in representors (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Present the representors SW stats when state is not opened (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Separate between ethtool and netdev software stats folding (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add trace points for flow tables create/destroy (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Expand XPS cpumask to cover all online cpus (Alaa Hleihel) [1724333] - [netdrv] mlx5e: Take CQ decompress fields into a separate structure (Alaa Hleihel) [1724333] - [netdrv] mlx5e: RX, Make sure packet header does not cross page boundary (Alaa Hleihel) [1724333] - [infiniband] mlx5: no need to check return value of debugfs_create functions (Alaa Hleihel) [1724333] - [netdrv] mlx5: Add pci AtomicOps request (Alaa Hleihel) [1724333] - [infiniband] ib/mlx5: Don't override existing ip_protocol (Alaa Hleihel) [1724333] - [infiniband] rdma/mlx5: Replace kzalloc with kcalloc (Alaa Hleihel) [1724333] - [documentation] netfilter: doc: Add nf_tables part in tproxy.txt (Phil Sutter) [1762977] - [net] netfilter: nft_socket: fix erroneous socket assignment (Phil Sutter) [1762977] - [net] netfilter: nft_socket: Break evaluation if no socket found (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Fix missing-braces warning (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Add missing config check (Phil Sutter) [1762977] - [net] netfilter: nf_tables: Add native tproxy support (Phil Sutter) [1762977] - [net] netfilter: nft_tproxy: Move nf_tproxy_assign_sock() to nf_tproxy.h (Phil Sutter) [1762977] - [net] sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key (Ivan Vecera) [1774706] - [net] ipmr: Fix skb headroom in ipmr_get_route(). (Guillaume Nault) [1773692] - [net] netns: fix GFP flags in rtnl_net_notifyid() (Guillaume Nault) [1763661] - [net] netns: fix NLM_F_ECHO mechanism for RTM_NEWNSID (Guillaume Nault) [1763661] - [netdrv] ptp: ptp_clock: Publish scaled_ppm_to_ppb (Ivan Vecera) [1772085] - [kernel] rh_features: move rh_features entry to sys/kernel (Hangbin Liu) [1660583] - [net] netfilter: nf_tables: Make nft_meta expression more robust (Phil Sutter) [1725169] - [tools] selftests/tls: add test for concurrent recv and send (Sabrina Dubroca) [1760375] - [net] tls: add a TX lock (Sabrina Dubroca) [1760375] - [net] tls: don't pay attention to sk_write_pending when pushing partial records (Sabrina Dubroca) [1760375] - [net] tls: fix sk_msg trim on fallback to copy mode (Sabrina Dubroca) [1760375] - [net] tls: align non temporal copy to cache lines (Sabrina Dubroca) [1760375] - [net] tls: remove the record tail optimization (Sabrina Dubroca) [1760375] - [net] tls: use RCU for the adder to the offload record list (Sabrina Dubroca) [1760375] - [net] tls: unref frags in order (Sabrina Dubroca) [1760375] - [net] tcp: ulp: fix possible crash in tcp_diag_get_aux_size() (Sabrina Dubroca) [1760375] - [net] tls: dedup the record cleanup (Sabrina Dubroca) [1760375] - [net] tls: clean up the number of #ifdefs for CONFIG_TLS_DEVICE (Sabrina Dubroca) [1760375] - [net] tls: narrow down the critical area of device_offload_lock (Sabrina Dubroca) [1760375] - [net] tls: don't jump to return (Sabrina Dubroca) [1760375] - [net] tls: export protocol version, cipher, tx_conf/rx_conf to socket diag (Sabrina Dubroca) [1760375] - [net] tcp: ulp: add functions to dump ulp-specific information (Sabrina Dubroca) [1760375] - [net] tls: use RCU protection on icsk->icsk_ulp_data (Sabrina Dubroca) [1760375] - [net] core/skmsg: Delete an unnecessary check before the function call "consume_skb" (Sabrina Dubroca) [1760375] - [net] tls, fix sk_write_space NULL write when tx disabled (Sabrina Dubroca) [1760375] - [net] tls: swap sk_write_space on close (Sabrina Dubroca) [1760375] - [net] tls: prevent skb_orphan() from leaking TLS plain text with offload (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a litmus test for the socket reuse through shutdown (Sabrina Dubroca) [1760375] - [net] tls: partially revert fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [documentation] TLS: fix stat counters description (Sabrina Dubroca) [1760375] - [tools] selftests/tls: fix TLS tests with CONFIG_TLS=n (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add shutdown tests (Sabrina Dubroca) [1760375] - [tools] selftests/tls: close the socket with open record (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a bidirectional test (Sabrina Dubroca) [1760375] - [tools] selftests/tls: test error codes around TLS ULP installation (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add a test for ULP but no keys (Sabrina Dubroca) [1760375] - [net] bpf: sockmap/tls, close can race with map free (Sabrina Dubroca) [1760375] - [net] tls: fix transition through disconnect with close (Sabrina Dubroca) [1760375] - [net] tls: remove sock unlock/lock around strp_done() (Sabrina Dubroca) [1760375] - [net] tls: remove close callback sock unlock/lock around TX work flush (Sabrina Dubroca) [1760375] - [net] tls: don't call tls_sk_proto_close for hw record offload (Sabrina Dubroca) [1760375] - [net] tls: don't arm strparser immediately in tls_set_sw_offload() (Sabrina Dubroca) [1760375] - [net] tls: add missing prot info init (Sabrina Dubroca) [1760375] - [netdrv] mlx5: Return -EINVAL when WARN_ON_ONCE triggers in mlx5e_tls_resync(). (Sabrina Dubroca) [1760375] - [net] tls: don't clear TX resync flag on error (Sabrina Dubroca) [1760375] - [tools] selftests/tls: add test for poll() with data in TLS ULP (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven resync mechanism for TX (Sabrina Dubroca) [1760375] - [net] tls: generalize the resync callback (Sabrina Dubroca) [1760375] - [net] tls: add kernel-driven TLS RX resync (Sabrina Dubroca) [1760375] - [net] tls: rename handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: pass record number as a byte array (Sabrina Dubroca) [1760375] - [net] tls: simplify seq calculation in handle_device_resync() (Sabrina Dubroca) [1760375] - [net] tls: export TLS per skb encryption (Sabrina Dubroca) [1760375] - [include] net/tls: simplify driver context retrieval (Sabrina Dubroca) [1760375] - [include] net/tls: split the TLS_DRIVER_STATE_SIZE and bump TX to 16 bytes (Sabrina Dubroca) [1760375] - [net] tls: don't pass version to tls_advance_record_sn() (Sabrina Dubroca) [1760375] - [include] net/tls: reorganize struct tls_context (Sabrina Dubroca) [1760375] - [net] tls: use version from prot (Sabrina Dubroca) [1760375] - [net] tls: don't re-check msg decrypted status in tls_device_decrypted() (Sabrina Dubroca) [1760375] - [net] tls: don't look for decrypted frames on non-offloaded sockets (Sabrina Dubroca) [1760375] - [net] tls: remove false positive warning (Sabrina Dubroca) [1760375] - [net] tls: check return values from skb_copy_bits() and skb_store_bits() (Sabrina Dubroca) [1760375] - [net] tls: fully initialize the msg wrapper skb (Sabrina Dubroca) [1760375] - [net] tls: replace the sleeping lock around RX resync with a bit lock (Sabrina Dubroca) [1760375] - [net] revert "net/tls: avoid NULL-deref on resync during device removal" (Sabrina Dubroca) [1760375] - [net] tls: avoid NULL-deref on resync during device removal (Sabrina Dubroca) [1760375] - [net] tls: Add support of AES128-CCM based ciphers (Sabrina Dubroca) [1760375] - [documentation] add TLS offload documentation (Sabrina Dubroca) [1760375] - [documentation] tls: RSTify the ktls documentation (Sabrina Dubroca) [1760375] - [net] xdp: increase kABI version (Jiri Benc) [1749817] - [tools] selftests: bpf: disable test_seg6_loop test (Jiri Benc) [1749817] - [tools] selftests: bpf: fix test_tc_tunnel hanging (Jiri Benc) [1749817] - [tools] selftests: bpf: xdping is not meant to be run standalone (Jiri Benc) [1749817] - [tools] libbpf: Use implicit XSKMAP lookup from AF_XDP XDP program (Jiri Benc) [1749817] - [lib] bpf, testing: Introduce 'gso_linear_no_head_frag' skb_segment test (Jiri Benc) [1749817] - [lib] bpf, testing: Refactor test_skb_segment() for testing skb_segment() on different skbs (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: Don't leak server_fd in tcp_rtt (Jiri Benc) [1749817] - [tools] selftests/bpf: test_progs: fix client/server race in tcp_rtt (Jiri Benc) [1749817] - [net] flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH (Jiri Benc) [1749817] - [tools] selftests/bpf: fix race in test_tcp_rtt test (Jiri Benc) [1749817] - [net] xdp: unpin xdp umem pages in error path (Jiri Benc) [1749817] - [net] sock: make cookie generation global instead of per netns (Jiri Benc) [1749817] - [net] bpfilter: add "WITH Linux-syscall-note" to SPDX tag of uapi headers (Jiri Benc) [1749817] - [net] bpf: sockmap, only create entry if ulp is not already enabled (Jiri Benc) [1749817] - [net] bpf: sockmap, synchronize_rcu before free'ing map (Jiri Benc) [1749817] - [net] bpf: sockmap, sock_map_delete needs to use xchg (Jiri Benc) [1749817] - [net] core: page_pool: add user refcnt and reintroduce page_pool_destroy (Jiri Benc) [1749817] - [net] bpf: avoid unused variable warning in tcp_bpf_rtt() (Jiri Benc) [1749817] - [net] xdp: fix potential deadlock on socket mutex (Jiri Benc) [1749817] - [net] bpfilter: print umh messages to /dev/kmsg (Jiri Benc) [1749817] - [net] xdp: fix possible cq entry leak (Jiri Benc) [1749817] - [net] xdp: fix race on generic receive path (Jiri Benc) [1749817] - [samples] bpf: fix tcp_bpf.readme detach command (Jiri Benc) [1749817] - [samples] bpf: add sample program that periodically dumps TCP stats (Jiri Benc) [1749817] - [tools] selftests/bpf: test BPF_SOCK_OPS_RTT_CB (Jiri Benc) [1749817] - [tools] bpf/tools: sync bpf.h (Jiri Benc) [1749817] - [net] bpf: add icsk_retransmits to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: add dsack_dups/delivered{, _ce} to bpf_tcp_sock (Jiri Benc) [1749817] - [net] bpf: split shared bpf_tcp_sock and bpf_sock_ops implementation (Jiri Benc) [1749817] - [net] bpf: add BPF_CGROUP_SOCK_OPS callback that is executed on every RTT (Jiri Benc) [1749817] - [net] init/kconfig: add CONFIG_CC_CAN_LINK (Jiri Benc) [1749817] - [net] page_pool: add helper function for retrieving dma direction (Jiri Benc) [1749817] - [net] xdp: fix hang while unregistering device bound to xdp socket (Jiri Benc) [1749817] - [net] xdp: hold device for umem regardless of zero-copy mode (Jiri Benc) [1749817] - [net] xsk: Change the default frame size to 4096 and allow controlling it (Jiri Benc) [1749817] - [tools] libbpf: Support getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add getsockopt XDP_OPTIONS (Jiri Benc) [1749817] - [net] xsk: Add API to check for available entries in FQ (Jiri Benc) [1749817] - [net] xsk: Properly terminate assignment in xskq_produce_flush_desc (Jiri Benc) [1749817] - [net] xdp: Make __mem_id_disconnect static (Jiri Benc) [1749817] - [net] xsk: sample kernel code is now in libbpf (Jiri Benc) [1749817] - [net] page_pool: fix compile warning when CONFIG_PAGE_POOL is disabled (Jiri Benc) [1749817] - [net] page_pool: make sure struct device is stable (Jiri Benc) [1749817] - [net] page_pool: add tracepoints for page_pool with details need by XDP (Jiri Benc) [1749817] - [net] xdp: add tracepoints for XDP mem (Jiri Benc) [1749817] - [net] xdp: force mem allocator removal and periodic warning (Jiri Benc) [1749817] - [net] xdp: tracking page_pool resources and safe removal (Jiri Benc) [1749817] - [netdrv] mlx5: more strict use of page_pool API (Jiri Benc) [1749817] - [net] page_pool: introduce page_pool_free and use in mlx5 (Jiri Benc) [1749817] - [net] veth: use xdp_release_frame for XDP_PASS (Jiri Benc) [1749817] - [net] xdp: page_pool related fix to cpumap (Jiri Benc) [1749817] - [net] xdp: fix leak of IDA cyclic id if rhashtable_insert_slow fails (Jiri Benc) [1749817] - [net] page_pool: add helper function to unmap dma addresses (Jiri Benc) [1749817] - [net] page_pool: add helper function to retrieve dma addresses (Jiri Benc) [1749817] - [net] page_pool: use DMA_ATTR_SKIP_CPU_SYNC for DMA mappings (Jiri Benc) [1749817] - [net] page_pool: don't use page->private to store dma_addr_t (Jiri Benc) [1749817] - [mm] add dma_addr_t to struct page (Jiri Benc) [1749817] - [tools] bpf: Sync asm-generic/socket.h to tools/ (Jiri Benc) [1749817] - [net] bpf: net: Add SO_DETACH_REUSEPORT_BPF (Jiri Benc) [1749817] - [net] veth: Support bulk XDP_TX (Jiri Benc) [1749817] - [net] flow_dissector: remove unused FLOW_DISSECTOR_F_STOP_AT_L3 flag (Jiri Benc) [1749817] - [tools] selftests/bpf: fix compilation error for flow_dissector.c (Jiri Benc) [1749817] - [net] bpf: Update BPF_CGROUP_RUN_PROG_INET_EGRESS calls (Jiri Benc) [1749817] - [net] signal/bpfilter: Fix bpfilter_kernl to use send_sig not force_sig (Jiri Benc) [1749817] - [net] arch: Use asm-generic/socket.h when possible (Jiri Benc) [1749817] - [net] flow_dissector: correct comments on enum flow_dissector_key_id (Jiri Benc) [1749817] - [net] tcp: add stat of data packet reordering events (Jiri Benc) [1749817] - [net] tcp: add dsack blocks received stats (Jiri Benc) [1749817] - [net] tcp: add data bytes retransmitted stats (Jiri Benc) [1749817] - [net] tcp: add data bytes sent stats (Jiri Benc) [1749817] - [net] tcp: add a helper to calculate size of opt_stats (Jiri Benc) [1749817] - [net] netfilter: Support iif matches in POSTROUTING (Phil Sutter) [1775961] - [tools] selftests: add basic netdevsim devlink flash testing (Petr Oros) [1770359] - [netdrv] netdevsim: implement fake flash updating with notifications (Petr Oros) [1770359] - [net] devlink: allow driver to update progress of flash update (Petr Oros) [1770359] - [net] devlink: Add extack to shared buffer operations (Petr Oros) [1770347] - [net] xfrm: policy: avoid warning splat when merging nodes (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix bydst hlist corruption on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix infinite loop when merging src-nodes (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: alter htresh to trigger move of policies to hash table (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix reinsertion on node merge (Sabrina Dubroca) [1758100] - [net] xfrm: policy: delete inexact policies from inexact list on hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: use hlist rcu variants on inexact insert, part 2 (Sabrina Dubroca) [1758100] - [tools] selftests: xfrm: add block rules with adjacent/overlapping subnets (Sabrina Dubroca) [1758100] - [net] xfrm: policy: remove set but not used variable 'priority' (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix policy hash rebuild (Sabrina Dubroca) [1758100] - [net] xfrm: policy: fix netlink/pf_key policy lookups (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add 2nd-level saddr trees for inexact policies (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by source address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: check reinserted policies match their node (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in a tree ordered by destination address (Sabrina Dubroca) [1758100] - [net] xfrm: policy: add inexact policy search tree infrastructure (Sabrina Dubroca) [1758100] - [net] xfrm: policy: consider if_id when hashing inexact policy (Sabrina Dubroca) [1758100] - [net] xfrm: policy: store inexact policies in an rhashtable (Sabrina Dubroca) [1758100] - [net] xfrm: policy: return NULL when inexact search needed (Sabrina Dubroca) [1758100] - [net] xfrm: policy: split list insertion into a helper (Sabrina Dubroca) [1758100] - [net] xfrm: security: iterate all, not inexact lists (Sabrina Dubroca) [1758100] - [tools] selftests: add xfrm policy test script (Sabrina Dubroca) [1758100] - [net] af_packet: fix the tx skb protocol in raw sockets with ETH_P_ALL (Ivan Vecera) [1765561] - [netdrv] mlx5e: Trust kernel regarding transport offset (Ivan Vecera) [1765561] - [netdrv] net/mlx5e: Remove the wrong assumption about transport offset (Ivan Vecera) [1765561] - [net] packet: Remove redundant skb->protocol set (Ivan Vecera) [1765561] - [net] packet: Ask driver for protocol if not provided by user (Ivan Vecera) [1765561] - [net] ethernet: Add parse_protocol header_ops support (Ivan Vecera) [1765561] - [include] net: Introduce parse_protocol header_ops callback (Ivan Vecera) [1765561] - [net] Don't set transport offset to invalid value (Ivan Vecera) [1765561] - [netdrv] Fix Kconfig indentation (Josef Oskera) [1764592] - [netdrv] be2net: make two arrays static const, makes object smaller (Josef Oskera) [1764592] - [netdrv] be2net: eliminate enable field from be_aic_obj (Josef Oskera) [1764592] - [netdrv] Use skb_frag_off accessors (Josef Oskera) [1764592] - [netdrv] Use skb accessors in network drivers (Josef Oskera) [1764592] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 338 (Josef Oskera) [1764592] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Josef Oskera) [1764592] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Josef Oskera) [1764592] - [documentation] networking: switchdev: Update port parent ID section (Ivan Vecera) [1757840] - [net] Get rid of SWITCHDEV_ATTR_ID_PORT_PARENT_ID (Ivan Vecera) [1757840] - [net] dsa: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [drivers] staging: fsl-dpaa2: ethsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] mscc: ocelot: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] net/mlx5e: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [netdrv] liquidio: Implement ndo_get_port_parent_id() (Ivan Vecera) [1757840] - [net] tipc: fix unlimited bundling of small messages (Jon Maloy) [1761969] - [net] tipc: clean up skb list lock handling on send path (Jon Maloy) [1761969] - [net] tipc: fix false detection of retransmit failures (Jon Maloy) [1761969] - [net] tipc: reduce risk of wakeup queue starvation (Jon Maloy) [1761969] - [net] tipc: fix changeover issues due to large packet (Jon Maloy) [1761969] - [net] tipc: optimize link synching mechanism (Jon Maloy) [1761969] - [net] tipc: Fix a typo (Jon Maloy) [1761969] - [net] tipc: use rcu dereference functions properly (Jon Maloy) [1761969] - [net] tipc: remove ub->ubsock checks (Jon Maloy) [1761969] - [net] tipc: embed jiffies in macro TIPC_BC_RETR_LIM (Jon Maloy) [1761969] - [net] tipc: add dst_cache support for udp media (Jon Maloy) [1761969] - [net] tipc: rename function msg_get_wrapped() to msg_inner_hdr() (Jon Maloy) [1761969] - [net] tipc: eliminate unnecessary skb expansion during retransmission (Jon Maloy) [1761969] - [net] tipc: simplify stale link failure criteria (Jon Maloy) [1761969] - [net] tipc: check msg->req data len in tipc_nl_compat_bearer_disable (Jon Maloy) [1761969] - [net] tipc: remove the unnecessary msg->req check from tipc_nl_compat_bearer_set (Jon Maloy) [1761969] - [net] tipc: fix issues with early FAILOVER_MSG from peer (Jon Maloy) [1761969] - [net] tipc: include retrans failure detection for unicast (Jon Maloy) [1761969] - [net] tipc: purge deferredq list for each grp member in tipc_group_delete (Jon Maloy) [1761969] - [net] devlink: remove redundant rtnl lock assert (Marcelo Leitner) [1774694]- [gpu] drm/i915/aml: Allow SPT PCH for all AML devices (Lyude Paul) [1761469 1731110] - [gpu] drm/i915/cml: Add second PCH ID for CMP (Lyude Paul) [1731110] - [drm] i915/cml: Add Missing PCI IDs (Lyude Paul) [1727949 1731110] - [gpu] DRM Backport 5.2 -> 5.3 (Lyude Paul) [1731110] - [xen] mm/pgtable: drop pgtable_t variable from pte_fn_t functions (Lyude Paul) [1731110] - [gpu] DRM Backport 5.1 -> 5.2 (Lyude Paul) [1731110] - [s390] bus_find_device: Unify the match callback with class_find_device (Lyude Paul) [1731110] - [kernel] i2c: algo-bit: include main i2c header (Lyude Paul) [1731110] - [extcon] axp288: Add a depends on ACPI to the Kconfig entry (Lyude Paul) [1731110] - [extcon] axp288: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [acpi] gpio: merrifield: Fix build err without CONFIG_ACPI (Lyude Paul) [1731110] - [gpio] merrifield: Convert to use acpi_dev_get_first_match_dev() (Lyude Paul) [1731110] - [kernel] proc/sysctl: add shared variables for range check (Lyude Paul) [1731110] - [gpu] drm/i915: Split Pineview device info into desktop and mobile (Lyude Paul) [1731110] - [gpu] snd/hda, drm/i915: Track the display_power_status using a cookie (Lyude Paul) [1731110] - [video] hdmi: Dropped static functions from kernel doc (Lyude Paul) [1731110] - [video] hdmi: Add Unpack function for DRM infoframe (Lyude Paul) [1731110] - [video] drm: Enable HDR infoframe support (Lyude Paul) [1731110] - [kernel] drm: Add HDR source metadata property (Lyude Paul) [1731110] - [gpu] drm: Add colorspace info to AVI Infoframe (Lyude Paul) [1731110] - [gpu] drm: Add HDMI colorspace property (Lyude Paul) [1731110] - [kernel] video/hdmi: Add an enum for HDMI packet types (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the pack functions (Lyude Paul) [1731110] - [video] hdmi: Constify infoframe passed to the log functions (Lyude Paul) [1731110] - [video] hdmi: Pass buffer size to infoframe unpack functions (Lyude Paul) [1731110] - [video] hdmi: Constify 'buffer' to the unpack functions (Lyude Paul) [1731110] - [video] media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC (Lyude Paul) [1731110] - [media] replace ADOBERGB by OPRGB (Lyude Paul) [1731110] - [dma-buf] add show_fdinfo handler (Lyude Paul) [1731110] - [dma-buf] dma-fence: Signal all callbacks from dma_fence_release() (Lyude Paul) [1731110] - [dma-buf] udmabuf: actually unmap the scatterlist (Lyude Paul) [1731110] - [dma-buf] Make mmap callback actually optional (Lyude Paul) [1731110] - [dma-buf] Remove unused sync_dump() (Lyude Paul) [1731110] - [kernel] dma-buf: explicitely note that dma-fence-chains use 64bit seqno (Lyude Paul) [1731110] - [dma-buf] fix stack corruption in dma_fence_chain_release (Lyude Paul) [1731110] - [dma-buf] add new dma_fence_chain container v7 (Lyude Paul) [1731110] - [dma-buf] add some lockdep asserts to the reservation object implementation (Lyude Paul) [1731110] - [iommu] arm-smmu-v3: Fix build error without CONFIG_PCI_ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Avoid locking on invalidation path when not using ATS (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Fix ATC invalidation ordering wrt main TLBs (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Rework enabling/disabling of ATS for PCI masters (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Don't issue CMD_SYNC for zero-length invalidations (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Remove boolean bitfield for 'ats_enabled' flag (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Document ordering guarantees of command insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Defer TLB invalidation until ->iotlb_sync() (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Reduce contention during command-queue insertion (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Operate directly on low-level queue where possible (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Move low-level queue fields out of arm_smmu_queue (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Drop unused 'q' argument from Q_OVF macro (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Separate s/w and h/w views of prod and cons indexes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Pass struct iommu_iotlb_gather to ->unmap() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Remove unused ->tlb_sync() callback (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Replace ->tlb_add_flush() with ->tlb_add_page() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Call ->tlb_flush_walk() and ->tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Hook up ->tlb_flush_walk() and ->tlb_flush_leaf() in drivers (Jerry Snitselaar) [1729845] - [kernel] iommu/io-pgtable: Introduce tlb_flush_walk() and tlb_flush_leaf() (Jerry Snitselaar) [1729845] - [iommu] Pass struct iommu_iotlb_gather to ->unmap() and ->iotlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce iommu_iotlb_gather_add_page() (Jerry Snitselaar) [1729845] - [kernel] iommu: Introduce struct iommu_iotlb_gather for batching TLB flushes (Jerry Snitselaar) [1729845] - [iommu] io-pgtable: Rename iommu_gather_ops to iommu_flush_ops (Jerry Snitselaar) [1729845] - [iommu] io-pgtable-arm: Remove redundant call to io_pgtable_tlb_sync() (Jerry Snitselaar) [1729845] - [kernel] iommu: Remove empty iommu_tlb_range_add() callback from iommu_ops (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Invalidate ATC when detaching a device (Jerry Snitselaar) [1729845] - [iommu] arm-smmu-v3: Add support for PCI ATS (Jerry Snitselaar) [1729845] - [iommu] Introduce iotlb_sync_map callback (Jerry Snitselaar) [1742234] - [kernel] dma-mapping: fix page attributes for dma_mmap_* (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: check pfn validity in dma_common_{mmap, get_sgtable} (Jerry Snitselaar) [1754727] - [kernel] swiotlb: checking whether swiotlb buffer is full with io_tlb_used (Jerry Snitselaar) [1754727] - [kernel] dma-direct: fix zone selection after an unaddressable CMA allocation (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: page-align the size in dma_free_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-contiguous: do not overwrite align in dma_alloc_contiguous() (Jerry Snitselaar) [1754727] - [kernel] dma-mapping: fix panic caused by passing empty cma command line argument (Jerry Snitselaar) [1754727] - [iommu] dma: Handle SG length overflow better (Jerry Snitselaar) [1742234] - [iommu] dma: Handle MSI mappings separately (Jerry Snitselaar) [1742234] - [iommu] dma: Apply dma_{alloc, free}_contiguous functions (Jerry Snitselaar) [1742234] - [iommu] dma: Don't depend on CONFIG_DMA_DIRECT_REMAP (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_mmap (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_get_sgtable (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc, part 2 (Jerry Snitselaar) [1742234] - [iommu] dma: Cleanup variable naming in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Split iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Merge the CMA and alloc_pages allocation paths (Jerry Snitselaar) [1742234] - [iommu] dma: Don't remap CMA unnecessarily (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_alloc (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Remove __iommu_dma_free (Jerry Snitselaar) [1742234] - [iommu] dma: Refactor the page array remapping allocator (Jerry Snitselaar) [1742234] - [iommu] dma: Factor out remapped pages lookup (Jerry Snitselaar) [1742234] - [iommu] dma: Squash __iommu_dma_{map, unmap}_page helpers (Jerry Snitselaar) [1742234] - [iommu] dma: Move domain lookup into __iommu_dma_{map, unmap} (Jerry Snitselaar) [1742234] - [iommu] dma: Move __iommu_dma_map (Jerry Snitselaar) [1742234] - [iommu] dma: Use for_each_sg in iommu_dma_alloc (Jerry Snitselaar) [1742234] - [clk] Make clk_bulk_get_all() return a valid "id" (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Support all Mali configurations (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Correct Mali attributes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Fix panic after kexec -p for kdump (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Fix compilation error with !CONFIG_IOMMU_IOVA (Jerry Snitselaar) [1742234] - [iommu] amd: Check PM_LEVEL_SIZE() condition in locked section (Jerry Snitselaar) [1742234] - [iommu] amd: Fix incorrect PASID decoding from event log (Jerry Snitselaar) [1742234] - [iommu] amd: Lock code paths traversing protection_domain->dev_list (Jerry Snitselaar) [1742234] - [iommu] amd: Lock dev_data in attach/detach code paths (Jerry Snitselaar) [1742234] - [iommu] amd: Check for busy devices earlier in attach_device() (Jerry Snitselaar) [1742234] - [iommu] amd: Take domain->lock for complete attach/detach path (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_devtable_lock (Jerry Snitselaar) [1742234] - [iommu] amd: Remove domain->updated (Jerry Snitselaar) [1742234] - [iommu] iova: Avoid false sharing on fq_timer_on (Jerry Snitselaar) [1742234] - [iommu] Don't use sme_active() in generic code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix wrong analysis whether devices share the same bus (Jerry Snitselaar) [1742234] - [iommu] amd: Wait for completion of IOTLB flush in attach_device (Jerry Snitselaar) [1742234] - [iommu] amd: Unmap all L7 PTEs when downgrading page-sizes (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce first_pte_l7() helper (Jerry Snitselaar) [1742234] - [iommu] amd: Fix downgrading default page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Fix pages leak in free_pagetable() (Jerry Snitselaar) [1742234] - [documentation] documentation: Update Documentation for iommu.passthrough (Jerry Snitselaar) [1745844] - [iommu] Disable passthrough mode when SME is active (Jerry Snitselaar) [1745844] - [iommu] Set default domain type at runtime (Jerry Snitselaar) [1745844] - [iommu] Print default domain type on boot (Jerry Snitselaar) [1745844] - [x86] dma: Get rid of iommu_pass_through (Jerry Snitselaar) [1745844] - [iommu] vt-d: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] amd: Request passthrough mode from IOMMU core (Jerry Snitselaar) [1745844] - [iommu] Use Functions to set default domain type in iommu_set_def_domain_type() (Jerry Snitselaar) [1745844] - [iommu] Add helpers to set/get default domain type (Jerry Snitselaar) [1745844] - [iommu] Remember when default domain type was set on kernel command line (Jerry Snitselaar) [1745844] - [iommu] amd: Flush old domains in kdump kernel (Jerry Snitselaar) [1742234] - [iommu] amd: Fix race in increase_address_space() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove global page flush support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix possible use-after-free of private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain before using a private one (Jerry Snitselaar) [1742234] - [iommu] vt-d: Correctly check format of page table in debugfs (Jerry Snitselaar) [1742234] - [iommu] vt-d: Detach domain when move device out of group (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Mark expected switch fall-through (Jerry Snitselaar) [1722978] - [iommu] vt-d: Print pasid table entries MSB to LSB in debugfs (Jerry Snitselaar) [1742234] - [iommu] iova: Remove stale cached32_node (Jerry Snitselaar) [1742234] - [iommu] vt-d: Check if domain->pgd was allocated (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't queue_iova() if there is no flush queue (Jerry Snitselaar) [1742234] - [iommu] amd: fix a crash in iova_magazine_free_pfns (Jerry Snitselaar) [1742234] - [iommu] Use right function to get group for device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Fix compilation when CONFIG_CMA=n (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Support non-coherent page tables (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Replace IO_PGTABLE_QUIRK_NO_DMA with specific flag (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: request DMA32 memory, and improve debugging (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Add support to use system cache (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Increase maximum size of queues (Jerry Snitselaar) [1722978] - [iommu] amd: Flush not present cache in iommu_map_page (Jerry Snitselaar) [1742234] - [iommu] amd: Only free resources once on init error (Jerry Snitselaar) [1742234] - [iommu] amd: Move gart fallback to amd_iommu_init (Jerry Snitselaar) [1742234] - [iommu] amd: Make iommu_disable safer (Jerry Snitselaar) [1742234] - [iommu] amd: Add missed 'tag' to error msg in iommu_print_event (Jerry Snitselaar) [1742234] - [iommu] amd: Remove redundant assignment to variable npages (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup unused variable (Jerry Snitselaar) [1742234] - [iommu] vt-d: Silence a variable set but not used (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove an unused variable "length" (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup after delegating DMA domain to generic iommu (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix suspicious RCU usage in probe_acpi_namespace_devices() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allow DMA domain attaching to rmrr locked device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't enable iommu's which have been ignored (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set domain type for a private domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't return error when device gets right domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix a variable set but not used (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Fix typo in SVM code comment (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove static identity map code (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove duplicated code for device hotplug (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove startup parameter from device_def_domain_type() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Cleanup get_valid_domain_for_dev() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement is_attach_deferred iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Probe DMA-capable ACPI name space devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle 32bit device with identity default domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Identify default domains replaced with private (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the dma domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Delegate the identity domain to upper layer (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add device_def_domain_type() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable DMA remapping after rmrr mapped (Jerry Snitselaar) [1742234] - [iommu] vt-d: Expose ISA direct mapping region via iommu_get_resv_regions (Jerry Snitselaar) [1742234] - [iommu] vt-d: Implement apply_resv_region iommu ops entry (Jerry Snitselaar) [1742234] - [iommu] Add API to request DMA domain for device (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show scalable mode DMAR table internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Introduce macros useful for dumping DMAR table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Modify the format of intel DMAR tables dump (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary rcu_read_locks (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix bind svm with multiple devices (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Avoid constant zero in TLBI writes (Jerry Snitselaar) [1722978] - [iommu] vt-d: Set the right field for Page Walk Snoop (Jerry Snitselaar) [1742234] - [iommu] Add missing new line for dma type (Jerry Snitselaar) [1742234] - [kernel] iommu/iova: Separate atomic variables to improve performance (Jerry Snitselaar) [1742234] - [iommu] Remove iommu_callback_data (Jerry Snitselaar) [1742234] - [iommu] amd: Remove amd_iommu_pd_list (Jerry Snitselaar) [1742234] - [iommu] amd: Use pci_prg_resp_pasid_required() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix leak in intel_pasid_alloc_table on error path (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make kernel parameter igfx_off work with vIOMMU (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set intel_iommu_gfx_mapped correctly (Jerry Snitselaar) [1742234] - [iommu] vt-d: cleanup: no spaces at the start of a line (Jerry Snitselaar) [1742234] - [iommu] vt-d: Don't request page request irq under dmar_global_lock (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use struct_size() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Flush IOTLB for untrusted device in time (Jerry Snitselaar) [1742234] - [iommu] vt-d: Clean up iommu_no_mapping (Jerry Snitselaar) [1742234] - [vfio] type1: Add domain at(de)taching group helpers (Jerry Snitselaar) [1742234] - [iommu] vt-d: Return ID associated with an auxiliary domain (Jerry Snitselaar) [1742234] - [iommu] vt-d: Aux-domain specific domain attach/detach (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move common code out of iommu_attch_device() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add per-device IOMMU feature ops entries (Jerry Snitselaar) [1742234] - [iommu] vt-d: Make intel_iommu_enable_pasid() more generic (Jerry Snitselaar) [1742234] - [iommu] vt-d: Switch to bitmap_zalloc() (Jerry Snitselaar) [1742234] - [iommu] Bind process address spaces to devices (Jerry Snitselaar) [1742234] - [iommu] Add APIs for multiple domains per device (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Log CBFRSYNRA register on context fault (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Don't disable SMMU in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Disable tagged pointers (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Link domains and devices (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add a master->domain pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Store SteamIDs in master (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Rename arm_smmu_master_data to arm_smmu_master (Jerry Snitselaar) [1722978] - [iommu] io-pgtable: Add ARM Mali midgard MMU page table format (Jerry Snitselaar) [1722978] - [iommu] vt-d: Save the right domain ID used by hardware (Jerry Snitselaar) [1742234] - [iommu] iova: Fix tracking of recently failed iova address (Jerry Snitselaar) [1742234] - [iommu] Fix IOMMU debugfs fallout (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.is_attach_deferred() (Jerry Snitselaar) [1742234] - [kernel] iommu: Document iommu_ops.iotlb_sync_map() (Jerry Snitselaar) [1742234] - [kernel] iommu: Fix flush_tlb_all typo (Jerry Snitselaar) [1742234] - [iommu] io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables (Jerry Snitselaar) [1722978] - [iommu] Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [kernel] iommu: Allow io-pgtable to be used outside of iommu/ (Jerry Snitselaar) [1722978] - [iommu] iova: Allow compiling the library without IOMMU support (Jerry Snitselaar) [1742234] - [iommu] amd: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] amd: Remove clear_flush_young notifier (Jerry Snitselaar) [1742234] - [iommu] amd: Print reason for iommu_map_page failure in map_sg (Jerry Snitselaar) [1742234] - [iommu] vt-d: Get domain ID before clear pasid entry (Jerry Snitselaar) [1742234] - [iommu] vt-d: Set context field after value initialized (Jerry Snitselaar) [1742234] - [kernel] pci/ats: Add inline to pci_prg_resp_pasid_required() (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Enable ATS only if the device uses page aligned address (Jerry Snitselaar) [1724922] - [pci] ats: Add pci_ats_page_aligned() interface (Jerry Snitselaar) [1724922] - [iommu] vt-d: Fix PRI/PASID dependency issue (Jerry Snitselaar) [1724921 1724927] - [pci] ats: Add pci_prg_resp_pasid_required() interface (Jerry Snitselaar) [1724921 1724927] - [iommu] vt-d: Allow interrupts from the entire bus for aliased devices (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add helper to set an IRTE to verify only the bus number (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove misleading "domain 0" test from domain_exit() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unused dmar_remove_one_dev_info() argument (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove unnecessary local variable initializations (Jerry Snitselaar) [1742234] - [iommu] vt-d: Use dev_printk() when possible (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove change_pte notifier (Jerry Snitselaar) [1742234] - iommu/vt-d: Implement dma_[un]map_resource() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Support page request in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Leave scalable mode default off (Jerry Snitselaar) [1742234] - [iommu] of: Fix probe-deferral (Jerry Snitselaar) [1742234] - [iommu] Check for iommu_ops == NULL in iommu_probe_device() (Jerry Snitselaar) [1742234] - [iommu] of: Don't call iommu_ops->add_device directly (Jerry Snitselaar) [1742234] - powerpc/iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [powerpc] iommu: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use device_iommu_mapped() (Jerry Snitselaar) [1742234] - [iommu] of: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] dma: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Use helper functions to access dev->iommu_fwspec (Jerry Snitselaar) [1722978] - [acpi] iort: Fix rc_dma_get_range() (Jerry Snitselaar) [1722978] - [kernel] iommu: Change tlb_range_add to iotlb_range_add and tlb_sync to iotlb_sync (Jerry Snitselaar) [1742234] - [iommu] arm-smmu: Make arm-smmu-v3 explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Make arm-smmu explicitly non-modular (Jerry Snitselaar) [1722978] - [iommu] Audit and remove any unnecessary uses of module.h (Jerry Snitselaar) [1742234] - [iommu] irq_remapping: Remove unused header files (Jerry Snitselaar) [1742234] - [iommu] Do physical merging in iommu_map_sg() (Jerry Snitselaar) [1742234] - [iommu] amd: Remove leading 0s in error log messages (Jerry Snitselaar) [1742234] - [iommu] amd: Fix line-break in error log reporting (Jerry Snitselaar) [1742234] - [iommu] amd: Use pr_fmt() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow to upgrade page-size (Jerry Snitselaar) [1742234] - [iommu] amd: Restart loop if cmpxchg64 succeeded in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Allow downgrading page-sizes in alloc_pte() (Jerry Snitselaar) [1742234] - [iommu] amd: Ignore page-mode 7 in free_sub_pt() (Jerry Snitselaar) [1742234] - [iommu] amd: Introduce free_sub_pt() function (Jerry Snitselaar) [1742234] - [iommu] amd: Collect page-table pages in freelist (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove deferred invalidation (Jerry Snitselaar) [1724930] - [iommu] vt-d: Shared virtual address in scalable mode (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add first level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup context and enable RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Pass pasid table to context mapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Setup pasid entry for RID2PASID support (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add second level page table interface (Jerry Snitselaar) [1742234] - [iommu] vt-d: Reserve a domain id for FL and PT modes (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add 256-bit invalidation descriptor support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Move page table helpers into header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Manage scalalble mode PASID tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enumerate the scalable mode capability (Jerry Snitselaar) [1742234] - [kernel] iommu/vtd: Cleanup dma_remapping.h header (Jerry Snitselaar) [1742234] - [documentation] dt-bindings: arm-smmu: Add binding doc for Qcom smmu-500 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add support for qcom, smmu-v2 variant (Jerry Snitselaar) [1722978] - [documentation] dt-bindings: arm-smmu: Add bindings for qcom, smmu-v2 (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add the device_link between masters and smmu (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Invoke pm_runtime across the driver (Jerry Snitselaar) [1722978] - [iommu] arm-smmu: Add pm_runtime/sleep ops (Jerry Snitselaar) [1722978] - [clk] add managed version of clk_bulk_get_all (Jerry Snitselaar) [1722978] - [clk] add new APIs to operate on all available clocks (Jerry Snitselaar) [1722978] - [clk] bulk: add of_clk_bulk_get() (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Use explicit mb() when moving cons pointer (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Avoid memory corruption from Hisilicon MSI payloads (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix big-endian CMD_SYNC writes (Jerry Snitselaar) [1722978] - [iommu] revert "iommu/io-pgtable-arm: Check for v7s-incapable systems" (Jerry Snitselaar) [1722978] - [iommu] Fix a typo (Jerry Snitselaar) [1742234] - [iommu] Tidy up window attributes (Jerry Snitselaar) [1742234] - [iommu] amd: Add default branch in amd_iommu_capable() (Jerry Snitselaar) [1742234] - [iommu] amd: Move iommu_init_pci() to .init section (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show context internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support for Interrupt remapping (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add debugfs support to show register contents (Jerry Snitselaar) [1742234] - [iommu] vt-d: Enable base Intel IOMMU debugfs support (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Update register definitions to VT-d 3.0 specification (Jerry Snitselaar) [1742234] - [iommu] vt-d: Relocate struct/function declarations to its header files (Jerry Snitselaar) [1742234] - [of] iommu/of: make of_pci_map_rid() available for other devices too (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Remove unnecessary wrapper function (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Add SPDX header (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Fix a couple of minor comment typos (Jerry Snitselaar) [1722978] - [kernel] iommu/shmobile: Remove unused linux/platform_data/sh_ipmmu.h header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Handle memory shortage on pasid table allocation (Jerry Snitselaar) [1742234] - [iommu] Add sysfs attribyte for domain type (Jerry Snitselaar) [1742234] - [iommu] amd: Add basic debugfs infrastructure for AMD IOMMU (Jerry Snitselaar) [1742234] - [iommu] Enable debugfs exposure of IOMMU driver internals (Jerry Snitselaar) [1742234] - [iommu] vt-d: Remove the obsolete per iommu pasid tables (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply per pci device pasid table in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Allocate and free pasid table (Jerry Snitselaar) [1742234] - [iommu] vt-d: Per PCI device pasid table interfaces (Jerry Snitselaar) [1742234] - [iommu] vt-d: Add for_each_device_domain() helper (Jerry Snitselaar) [1742234] - [iommu] vt-d: Move device_domain_info to header (Jerry Snitselaar) [1742234] - [iommu] vt-d: Apply global PASID in SVA (Jerry Snitselaar) [1742234] - [iommu] vt-d: Avoid using idr_for_each_entry() (Jerry Snitselaar) [1742234] - [iommu] vt-d: Global PASID name space (Jerry Snitselaar) [1742234] - [iommu] vt-d: Fix dev iotlb pfsid use (Jerry Snitselaar) [1742234] - [kernel] iommu/vt-d: Add definitions for PFSID (Jerry Snitselaar) [1742234] - [iommu] amd: Argument page_size could be uninitialized (Jerry Snitselaar) [1742234] - [iommu] arm-smmu-v3: Abort all transactions if SMMU is enabled in kdump kernel (Jerry Snitselaar) [1722978] - [iommu] arm-smmu-v3: Prevent any devices access to memory without registration (Jerry Snitselaar) [1722978] - [iommu] [] iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm-v7s: Abort allocation when table address overflows the PTE (Jerry Snitselaar) [1722978] - [iommu] io-pgtable-arm: Fix pgtable allocation in selftest (Jerry Snitselaar) [1722978] - [netdrv] iavf: initialize ITRN registers with correct values (Stefan Assmann) [1721697] - [netdrv] iavf: fix MAC address setting for VFs when filter is rejected (Stefan Assmann) [1721697] - [netdrv] iavf: allow permanent MAC address to change (Stefan Assmann) [1721697] - [netdrv] iavf: remove unused debug function iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721697] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721697] - [netdrv] iavf: fix dereference of null rx_buffer pointer (Stefan Assmann) [1721697] - [netdrv] iavf: Fix up debug print macro (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: allow null RX descriptors (Stefan Assmann) [1721697] - [netdrv] iavf: add call to iavf_[add|del]_cloud_filter (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor init state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Refactor the watchdog state machine (Stefan Assmann) [1721697] - [netdrv] iavf: Remove timer for work triggering, use delaying work instead (Stefan Assmann) [1721697] - [netdrv] iavf: Move commands processing to the separate function (Stefan Assmann) [1721697] - [netdrv] iavf: Fix the math for valid length for ADq enable (Stefan Assmann) [1721697] - [netdrv] iavf: Change GFP_KERNEL to GFP_ATOMIC in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: wait longer for close to complete (Stefan Assmann) [1721697] - [netdrv] iavf: use signed variable (Stefan Assmann) [1721697] - [netdrv] iavf: Create VLAN tag elements starting from the first element (Stefan Assmann) [1721697] - [netdrv] iavf: update comments and file checks to match iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e_device to iavf_device (Stefan Assmann) [1721697] - [netdrv] iavf: change remaining i40e defines to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_client.h defines to match driver name (Stefan Assmann) [1721697] - [netdrv] iavf: rename iavf_status structure flags (Stefan Assmann) [1721697] - [netdrv] iavf: replace i40e variables with iavf (Stefan Assmann) [1721697] - [netdrv] iavf: rename i40e functions to be iavf (Stefan Assmann) [1721697] - [netdrv] iavf: change iavf_status_code to iavf_status (Stefan Assmann) [1721697] - [netdrv] iavf: Rename i40e_adminq* files to iavf_adminq* (Stefan Assmann) [1721697] - [netdrv] iavf: iavf_client: use struct_size() helper (Stefan Assmann) [1721697] - [netdrv] iavf: use struct_size() in kzalloc() (Stefan Assmann) [1721697] - [netdrv] iavf: Limiting RSS queues to CPUs (Stefan Assmann) [1721697] - [netdrv] iavf: Use printf instead of gnu_printf for iavf_debug_d (Stefan Assmann) [1721697] - [netdrv] igb/igc: use ktime accessors for skb->tstamp (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for ethtool -m issue on X722 NIC (Stefan Assmann) [1721695] - [netdrv] intel: Demote MTU change prints to debug (Stefan Assmann) [1721695] - [netdrv] i40e: implement VF stats NDO (Stefan Assmann) [1721695] - [netdrv] i40e: enable X710 support (Stefan Assmann) [1721695] - [netdrv] i40e: Add UDP segmentation offload support (Stefan Assmann) [1721695] - [netdrv] i40e: prevent memory leak in i40e_setup_macvlans (Stefan Assmann) [1721695] - [netdrv] i40e: Refactoring VF MAC filters counting to make more reliable (Stefan Assmann) [1721695] - [netdrv] i40e: Fix LED blinking flow for X710T*L devices (Stefan Assmann) [1721695] - [netdrv] i40e: allow ethtool to report SW and FW versions in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: initialize ITRN registers with correct values (Stefan Assmann) [1721695] - [netdrv] i40e: Extend PHY access with page change flag (Stefan Assmann) [1721695] - [netdrv] i40e: Extract detection of HW flags into a function (Stefan Assmann) [1721695] - [netdrv] i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for persistent lldp support (Stefan Assmann) [1721695] - [netdrv] i40e: clear __I40E_VIRTCHNL_OP_PENDING on invalid min Tx rate (Stefan Assmann) [1721695] - [netdrv] i40e: use BIT macro to specify the cloud filter field flags (Stefan Assmann) [1721695] - [netdrv] i40e: Fix message for other card without FEC (Stefan Assmann) [1721695] - [netdrv] i40e: fix missed "Negotiated" string in i40e_print_link_message() (Stefan Assmann) [1721695] - [netdrv] i40e: mark additional missing bits as reserved (Stefan Assmann) [1721695] - [netdrv] i40e: remove I40E_AQC_ADD_CLOUD_FILTER_OIP (Stefan Assmann) [1721695] - [netdrv] i40e: use ktime_get_real_ts64 instead of ktime_to_timespec64 (Stefan Assmann) [1721695] - [netdrv] i40e: check __I40E_VF_DISABLE bit in i40e_sync_filters_subtask (Stefan Assmann) [1721695] - [netdrv] i40e: Remove EMPR traces from debugfs facility (Stefan Assmann) [1721695] - [netdrv] i40e: Implement debug macro hw_dbg using dev_dbg (Stefan Assmann) [1721695] - [netdrv] i40e: fix hw_dbg usage in i40e_hmc_get_object_va (Stefan Assmann) [1721695] - [netdrv] i40e: simplify Rx buffer recycle (Stefan Assmann) [1721695] - [netdrv] i40e: fix retrying in i40e_aq_get_phy_capabilities (Stefan Assmann) [1721695] - [netdrv] i40e: Persistent LLDP support (Stefan Assmann) [1721695] - [netdrv] i40e: allow reset in recovery mode (Stefan Assmann) [1721695] - [netdrv] i40e: Remove function i40e_update_dcb_config() (Stefan Assmann) [1721695] - [netdrv] i40e: Fix crash caused by stress setting of VF MAC addresses (Stefan Assmann) [1721695] - [netdrv] i40e: reset veb.tc_stats when resetting veb.stats (Stefan Assmann) [1721695] - [netdrv] i40e: Update FW API version to 1.9 (Stefan Assmann) [1721695] - [netdrv] i40e: check_recovery_mode had wrong if statement (Stefan Assmann) [1721695] - [netdrv] i40e: Add drop mode parameter to set mac config (Stefan Assmann) [1721695] - [netdrv] i40e: fix shifts of signed values (Stefan Assmann) [1721695] - [netdrv] i40e: add check on i40e_configure_tx_ring() return value (Stefan Assmann) [1721695] - [netdrv] i40e: Check if transceiver implements DDM before access (Stefan Assmann) [1721695] - [netdrv] i40e: reduce stack usage in i40e_set_fc (Stefan Assmann) [1721695] - [netdrv] i40e: no need to check return value of debugfs_create functions (Stefan Assmann) [1721695] - [netdrv] i40e: Remove unicast log when VF is leaving multicast mode (Stefan Assmann) [1721695] - [netdrv] i40e: verify string count matches even on early return (Stefan Assmann) [1721695] - [netdrv] i40e: Log info when PF is entering and leaving Allmulti mode (Stefan Assmann) [1721695] - [netdrv] i40e: Update visual effect for advertised FEC mode (Stefan Assmann) [1721695] - [netdrv] i40e: fix code comments (Stefan Assmann) [1721695] - [netdrv] i40e: don't report link up for a VF who hasn't enabled queues (Stefan Assmann) [1721695] - [netdrv] i40e: Log disable-fw-lldp flag change by ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect ethtool statistics veb and veb.tc_ (Stefan Assmann) [1721695] - [netdrv] Use skb_frag_off accessors (Stefan Assmann) [1721695] - [netdrv] i40e: Use dev_get_drvdata (Stefan Assmann) [1721695] - [netdrv] Use skb accessors in network drivers (Stefan Assmann) [1721695] - [netdrv] i40e: Add macvlan support on i40e (Stefan Assmann) [1721695] - [netdrv] i40e/i40e_virtchnl_pf: Use struct_size() in kzalloc() (Stefan Assmann) [1721695] - [netdrv] i40e: update copyright string (Stefan Assmann) [1721695] - [netdrv] i40e: Fix descriptor count manipulation (Stefan Assmann) [1721695] - [netdrv] i40e: missing priorities for any QoS traffic (Stefan Assmann) [1721695] - [netdrv] i40e: Add log entry while creating or deleting TC0 (Stefan Assmann) [1721695] - [netdrv] i40e: fix incorrect function documentation comment (Stefan Assmann) [1721695] - [netdrv] i40e: Fix for missing "link modes" info in ethtool (Stefan Assmann) [1721695] - [netdrv] i40e: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Stefan Assmann) [1721695] - [netdrv] i40e: mark expected switch fall-through (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: remove duplicate stat calculation for tx_errors (Stefan Assmann) [1721695] - [netdrv] i40e: Check if the BAR size is large enough before writing to registers (Stefan Assmann) [1721695] - [netdrv] i40e: Missing response checks in driver when starting/stopping FW LLDP (Stefan Assmann) [1721695] - [netdrv] i40e: add input validation for virtchnl handlers (Stefan Assmann) [1721695] - [netdrv] i40e: Improve AQ log granularity (Stefan Assmann) [1721695] - [netdrv] i40e: Add bounds check for ch[] array (Stefan Assmann) [1721695] - [netdrv] i40e: Use signed variable (Stefan Assmann) [1721695] - [netdrv] i40e: add constraints for accessing veb array (Stefan Assmann) [1721695] - [netdrv] i40e: let untrusted VF to create up to 16 VLANs (Stefan Assmann) [1721695] - [netdrv] i40e: add functions stubs to support EEE (Stefan Assmann) [1721695] - [netdrv] i40e: Use LLDP ethertype define ETH_P_LLDP (Stefan Assmann) [1721695] - [netdrv] r8169: disable TSO on a single version of RTL8168c to fix performance (Corinna Vinschen) [1730024] - [netdrv] r8169: fix sporadic transmit timeout issue (Corinna Vinschen) [1730024] - [netdrv] r8169: inline rtl8169_free_rx_databuff (Corinna Vinschen) [1730024] - [netdrv] r8169: fix performance issue on RTL8168evl (Corinna Vinschen) [1730024] - [netdrv] r8169: allocate rx buffers using alloc_pages_node (Corinna Vinschen) [1730024] - [netdrv] r8169: sync PCIe PHY init with vendor driver 8.047.01 (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper r8168_mac_ocp_modify (Corinna Vinschen) [1730024] - [netdrv] r8169: remove access to legacy register MultiIntr (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of xmit_more (Corinna Vinschen) [1730024] - [netdrv] r8169: don't use MSI before RTL8168d (Corinna Vinschen) [1730024] - [netdrv] revert ("r8169: remove 1000/Half from supported modes") (Corinna Vinschen) [1730024] - [netdrv] r8169: enable HW csum and TSO (Corinna Vinschen) [1730024] - [netdrv] r8169: remove r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: implement callback ndo_features_check (Corinna Vinschen) [1730024] - [netdrv] r8169: set GSO size and segment limits (Corinna Vinschen) [1730024] - [netdrv] r8169: align setting PME with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_set_rx_mode (Corinna Vinschen) [1730024] - [netdrv] r8169: fix a typo in a comment (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_rx (Corinna Vinschen) [1730024] - [netdrv] r8169: fix RTL8168g PHY init (Corinna Vinschen) [1730024] - [netdrv] r8169: fix issue with confused RX unit after PHY power-down on RTL8411b (Corinna Vinschen) [1730024] - [netdrv] r8169: sync few chip names with vendor driver (Corinna Vinschen) [1730024] - [netdrv] r8169: add random MAC address fallback (Corinna Vinschen) [1730024] - [netdrv] revert "r8169: improve handling VLAN tag" (Corinna Vinschen) [1730024] - [netdrv] r8169: remove not needed call to dma_sync_single_for_device (Corinna Vinschen) [1730024] - [netdrv] r8169: consider that 32 Bit DMA is the default (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling VLAN tag (Corinna Vinschen) [1730024] - [netdrv] r8169: don't activate ASPM in chip if OS can't control ASPM (Corinna Vinschen) [1730024] - [netdrv] r8169: improve handling of Abit Fatal1ty F-190HD (Corinna Vinschen) [1730024] - [netdrv] r8169: use helper rtl_is_8168evl_up for setting register MaxTxPacketSize (Corinna Vinschen) [1730024] - [netdrv] r8169: add helper rtl_is_8168evl_up (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_coalesce_info (Corinna Vinschen) [1730024] - [netdrv] r8169: let mdio read functions return -ETIMEDOUT (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove member coalesce_info from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: remove callback hw_start from struct rtl_cfg_info (Corinna Vinschen) [1730024] - [netdrv] r8169: rename CPCMD_QUIRK_MASK and apply it on all chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: improve setting interrupt mask (Corinna Vinschen) [1730024] - [netdrv] r8169: silence sparse warning in rtl8169_start_xmit (Corinna Vinschen) [1730024] - [netdrv] r8169: factor out firmware handling (Corinna Vinschen) [1730024] - [netdrv] r8169: rename r8169.c to r8169_main.c (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_fw_request_firmware and rtl_fw_release_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: make rtl_fw_format_ok and rtl_fw_data_ok more independent (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_fw_write_firmware (Corinna Vinschen) [1730024] - [netdrv] r8169: add enum rtl_fw_opcode (Corinna Vinschen) [1730024] - [netdrv] r8169: use paged versions of phylib MDIO access functions (Corinna Vinschen) [1730024] - [netdrv] r8169: avoid tso csum function indirection (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct jumbo_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: remove struct mdio_ops (Corinna Vinschen) [1730024] - [netdrv] r8169: improve r8169_csum_workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: decouple rtl_phy_write_fw from actual driver code (Corinna Vinschen) [1730024] - [netdrv] r8169: improve rtl_fw_format_ok (Corinna Vinschen) [1730024] - [netdrv] r8169: enable WoL speed down on more chip versions (Corinna Vinschen) [1730024] - [netdrv] r8169: fix MAC address being lost in PCI D3 (Corinna Vinschen) [1730024] - [netdrv] r8169: remove 1000/Half from supported modes (Corinna Vinschen) [1730024] - [netdrv] r8169: remove support for RTL_GIGA_MAC_VER_01 (Corinna Vinschen) [1730024] - [netdrv] r8169: improve RTL8168d PHY initialization (Corinna Vinschen) [1730024] - [netdrv] r8169: change type of member mac_version in rtl8169_private (Corinna Vinschen) [1730024] - [netdrv] r8169: remove unneeded return statement in rtl_hw_init_8168g (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_hw_init_8168ep (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier - Makefile/Kconfig (Corinna Vinschen) [1730024] - [netdrv] treewide: Add SPDX license identifier for more missed files (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl8168g_set_pause_thresholds (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_set_fifo_size (Corinna Vinschen) [1730024] - [netdrv] r8169: move EEE LED config to rtl8168_config_eee_mac (Corinna Vinschen) [1730024] - [netdrv] r8169: simplify rtl_writephy_batch and rtl_ephy_init (Corinna Vinschen) [1730024] - [netdrv] r8169: speed up rtl_loop_wait (Corinna Vinschen) [1730024] - [netdrv] r8169: make use of phy_set_asym_pause (Corinna Vinschen) [1730024] - [netdrv] r8169: remove rtl_write_exgmac_batch (Corinna Vinschen) [1730024] - [netdrv] r8169: remove manual autoneg restart workaround (Corinna Vinschen) [1730024] - [netdrv] r8169: add rtl_reset_packet_filter (Corinna Vinschen) [1730024] - [netdrv] r8169: add helpers rtl_eri_set/clear_bits (Corinna Vinschen) [1730024] - [netdrv] r8169: make ERIAR_EXGMAC the default in eri functions (Corinna Vinschen) [1730024] - [netdrv] r8169: use pci_dev_id() helper (Corinna Vinschen) [1730024] - [kernel] phy: fix write to mii-ctrl1000 register (Petr Oros) [1772010] - [netdrv] bcmgenet: don't set phydev->link from MAC (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR applied after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround for KSZ9021 (Petr Oros) [1772010] - [netdrv] phy: fix race in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: consider AN_RESTART status when reading link status (Petr Oros) [1772010] - [kernel] fixed_phy: Add forward declaration for struct gpio_desc; (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: print gpio error only if gpio node is present (Petr Oros) [1772010] - [netdrv] phy: mscc: initialize stats array (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: define soft_reset for 40nm EPHY (Petr Oros) [1772010] - [netdrv] Add genphy_c45_config_aneg() function to phy-c45.c (Petr Oros) [1772010] - [netdrv] phy: sfp: hwmon: Fix scaling of RX power (Petr Oros) [1772010] - [kernel] hwmon: Fix HWMON_P_MIN_ALARM mask (Petr Oros) [1772010] - [netdrv] phy: rename Asix Electronics PHY driver (Petr Oros) [1772010] - [netdrv] sfp: read eeprom in maximum 16 byte increments (Petr Oros) [1772010] - [netdrv] phylink: avoid reducing support mask (Petr Oros) [1772010] - [netdrv] phy: dp83867: Set up RGMII TX delay (Petr Oros) [1772010] - [netdrv] phy: dp83867: do not call config_init twice (Petr Oros) [1772010] - [netdrv] phy: dp83867: increase SGMII autoneg timer duration (Petr Oros) [1772010] - [netdrv] phy: dp83867: fix speed 10 in sgmii mode (Petr Oros) [1772010] - [netdrv] phy: marvell10g: report if the PHY fails to boot firmware (Petr Oros) [1772010] - [netdrv] phylink: ensure consistent phy interface mode (Petr Oros) [1772010] - [netdrv] phylink: ensure inband AN works correctly (Petr Oros) [1772010] - [netdrv] phy: aquantia: readd XGMII support for AQR107 (Petr Oros) [1772010] - [netdrv] phy: realtek: Replace phy functions with non-locked version in rtl8211e_config_init() (Petr Oros) [1772010] - [netdrv] meson: fixup g12a glue ephy id (Petr Oros) [1772010] - [netdrv] phy: realtek: fix double page ops in generic Realtek driver (Petr Oros) [1772010] - [netdrv] phy: realtek: add missing page operations (Petr Oros) [1772010] - [netdrv] phy: realtek: Change TX-delay setting for RGMII modes only (Petr Oros) [1772010] - [netdrv] phy: realtek: Add rtl8211e rx/tx delays config (Petr Oros) [1772010] - [netdrv] phy: improve pause mode reporting in phy_print_status (Petr Oros) [1772010] - [kernel] phy: improve resuming from hibernation (Petr Oros) [1772010] - [netdrv] phy: fix phy_validate_pause (Petr Oros) [1772010] - [netdrv] phy: micrel: make sure the factory test bit is cleared (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix buffer overrun with stats counters (Petr Oros) [1772010] - [netdrv] phy: avoid unneeded MDIO reads in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve genphy_soft_reset (Petr Oros) [1772010] - [netdrv] spi: micrel eth switch: declare missing of table (Petr Oros) [1772010] - [netdrv] phy: marvell: add new default led configure for m88e151x (Petr Oros) [1772010] - [netdrv] phy: vitesse: Remove support for VSC8514 (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8514 PHY (Petr Oros) [1772010] - [netdrv] mdio: rename mdio_device reset to reset_gpio (Petr Oros) [1772010] - [netdrv] phy: add support for reset-controller (Petr Oros) [1772010] - [documentation] dt-bindings: add PHY reset controller binding (Petr Oros) [1772010] - [netdrv] phy: remove dead code from phy_sanitize_settings (Petr Oros) [1772010] - [netdrv] phy: don't set autoneg if it's not supported (Petr Oros) [1772010] - [netdrv] phy: micrel: add Asym Pause workaround (Petr Oros) [1772010] - [netdrv] phy: warn if phylib and ethtool PHY mode definitions are out of sync (Petr Oros) [1772010] - [netdrv] phy: add support for new modes in phylib (Petr Oros) [1772010] - [netdrv] phy: shrink PHY settings array (Petr Oros) [1772010] - [netdrv] phy: switch drivers to use dynamic feature detection (Petr Oros) [1772010] - [netdrv] phy: fix setting autoneg_complete in genphy_update_link (Petr Oros) [1772010] - [netdrv] phy: replace genphy_10g_driver with genphy_c45_driver (Petr Oros) [1772010] - [netdrv] phy: remove unnecessary callback settings in C45 drivers (Petr Oros) [1772010] - [netdrv] phy: improve link partner capability detection (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: clean-up gxl variant driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: add g12a support (Petr Oros) [1772010] - [netdrv] phy: add amlogic g12a mdio mux support (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add g12a mdio mux documentation (Petr Oros) [1772010] - [netdrv] phy: realtek: remove setting callback get_features and use phylib fallback (Petr Oros) [1772010] - [netdrv] phy: fix autoneg mismatch case in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add the suspend/resume callbacks for the 88x2210 (Petr Oros) [1772010] - [netdrv] phy: marvell10g: implement suspend/resume callbacks (Petr Oros) [1772010] - [netdrv] phy: deal properly with autoneg incomplete in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: use c45 standard to detect link partner autoneg capability (Petr Oros) [1772010] - [netdrv] phy: aquantia: add SGMII statistics (Petr Oros) [1772010] - [netdrv] phy: improve genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: add suspend / resume callbacks for AQR107 family (Petr Oros) [1772010] - [netdrv] phy: realtek: use genphy_read_abilities (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: remove redundant !timeout check (Petr Oros) [1772010] - [netdrv] phy: marvell: add PHY tunable fast link down support for 88E1540 (Petr Oros) [1772010] - [uapi] ethtool: add PHY Fast Link Down support (Petr Oros) [1772010] - [netdrv] phy: aquantia: inform about proprietary 1000Base-T2 mode being in use (Petr Oros) [1772010] - [netdrv] phy: aquantia: report PHY details like firmware version (Petr Oros) [1772010] - [netdrv] phy: aquantia: print remote capabilities if link partner is Aquantia PHY (Petr Oros) [1772010] - [kernel] phy: bcm54xx: Encode link speed and activity into LEDs (Petr Oros) [1772010] - [netdrv] phy: aquantia: simplify aqr_config_aneg (Petr Oros) [1772010] - [netdrv] phy: don't clear BMCR in genphy_soft_reset (Petr Oros) [1772010] - [netdrv] phy: Re-parent menus for MDIO bus drivers correctly (Petr Oros) [1772010] - [netdrv] phy: Correct Cygnus/Omega PHY driver prompt (Petr Oros) [1772010] - [netdrv] phy: aquantia: add downshift support (Petr Oros) [1772010] - [netdrv] phy: Move Omega PHY entry to Cygnus PHY driver (Petr Oros) [1772010] - [netdrv] phy: Prepare for moving Omega out of bcm7xxx (Petr Oros) [1772010] - [netdrv] phy: Add DP83825I to the DP83822 driver (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for changed interface mode in read_status (Petr Oros) [1772010] - [netdrv] phy: aquantia: check for supported interface modes in config_init (Petr Oros) [1772010] - [netdrv] phy: improve handling link_change_notify callback (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: fix interrupt support (Petr Oros) [1772010] - [gpio] gpiolib: devprop: Fix syntax error (Petr Oros) [1772010] - [kernel] gpiolib: export devprop_gpiochip_set_names() (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: fix Kconfig dependencies (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_mmd_changed in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_no_soft_reset (Petr Oros) [1772010] - [netdrv] phy: don't export gen10g_read_status (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_config_init (Petr Oros) [1772010] - [netdrv] phy: remove gen10g_suspend and gen10g_resume (Petr Oros) [1772010] - [netdrv] phy: use genphy_c45_aneg_done in genphy_aneg_done (Petr Oros) [1772010] - [netdrv] phy: micrel ksz8061: link failure after cable connect (Petr Oros) [1772010] - [netdrv] phy: phylink: fix uninitialized variable in phylink_get_mac_state (Petr Oros) [1772010] - [netdrv] phy: aquantia: add hwmon support (Petr Oros) [1772010] - [netdrv] phy: aquantia: rename aquantia.c to aquantia_main.c (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use the generic C45 helper to read the 2110 features (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Let genphy_c45_pma_read_abilities set Aneg bit (Petr Oros) [1772010] - [netdrv] phy: dp83867: add soft reset delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux: Add support for Generic Mux controls (Petr Oros) [1772010] - [netdrv] phy: improve auto-neg emulation in swphy (Petr Oros) [1772010] - [netdrv] phy: marvell10g: add support for the 88x2110 PHY (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Force reading of 2.5/5G (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use a #define for 88X3310 family id (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use 2500BASEX when using 2.5GBASET (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use linkmode_set_bit helper instead of __set_bit (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Use get_features to get the PHY abilities (Petr Oros) [1772010] - [netdrv] phy: aquantia: use genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_read_status (Petr Oros) [1772010] - [netdrv] phy: don't change modes we don't care about in genphy_c45_read_lpa (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for auto-negotiation configuration (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove false 5G and 10G speed ability for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: check PMAPMD link status only in genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix use-after-free on device_register fails (Petr Oros) [1772010] - [netdrv] phy: at803x: disable delay only for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: at803x: don't inline helpers (Petr Oros) [1772010] - [netdrv] phy: aquantia: Use get_features for the PHYs abilities (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_check_and_restart_aneg in mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_check_and_restart_aneg (Petr Oros) [1772010] - [netdrv] phy: use genphy_config_eee_advert in genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: export genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phy: don't use 10BaseT/half as default in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: remove orphaned register read in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: marvell10g: improve mv3310_config_aneg (Petr Oros) [1772010] - [netdrv] phy: disable aneg in genphy_c45_pma_setup_forced (Petr Oros) [1772010] - [netdrv] phy: use mii_10gbt_stat_mod_linkmode_lpa_t in genphy_c45_read_lpa (Petr Oros) [1772010] - [kernel] phy: add helper mii_10gbt_stat_mod_linkmode_lpa_t (Petr Oros) [1772010] - [netdrv] phy: marvell10g: check for newly set aneg (Petr Oros) [1772010] - [netdrv] phy: marvell10g: use genphy_c45_an_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add genphy_c45_an_config_aneg (Petr Oros) [1772010] - [kernel] phy: add helper linkmode_adv_to_mii_10gbt_adv_t (Petr Oros) [1772010] - [netdrv] mdio_bus: Fix PTR_ERR() usage after initialization to constant (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Support generic PHY status read (Petr Oros) [1772010] - [netdrv] phy: marvell10g: Don't explicitly set Pause and Asym_Pause (Petr Oros) [1772010] - [netdrv] phy: use phy_resolve_aneg_linkmode in genphy_read_status (Petr Oros) [1772010] - [netdrv] phy: improve phy_resolve_aneg_linkmode (Petr Oros) [1772010] - [netdrv] phy: fix potential race in the phylib state machine (Petr Oros) [1772010] - [kernel] phy: don't use locking in phy_is_started (Petr Oros) [1772010] - [netdrv] phy: fix interrupt handling in non-started states (Petr Oros) [1772010] - [netdrv] phy: simplify genphy_config_eee_advert (Petr Oros) [1772010] - [netdrv] phylink: avoid resolving link state too early (Petr Oros) [1772010] - [netdrv] phylink: add phylink_init_eee() helper (Petr Oros) [1772010] - [netdrv] phylink: only call mac_config() during resolve when link is up (Petr Oros) [1772010] - [netdrv] phy: use phy_modify_changed in genphy_config_advert (Petr Oros) [1772010] - [netdrv] phy: marvell10g: fix usage of new MMD modifying helpers (Petr Oros) [1772010] - [netdrv] phy: add register modifying helpers returning 1 on change (Petr Oros) [1772010] - [netdrv] phy: aquantia: add support for AQCS109 (Petr Oros) [1772010] - [netdrv] phy: disregard "Clause 22 registers present" bit in get_phy_c45_devs_in_pkg (Petr Oros) [1772010] - [netdrv] phy: let genphy_c45_read_link manage the devices to check (Petr Oros) [1772010] - [netdrv] phy: don't double-read link status register if link is up (Petr Oros) [1772010] - [netdrv] fixed-phy: Add fixed_phy_register_with_gpiod() API (Petr Oros) [1772010] - [netdrv] phy: fixed_phy: Fix fixed_phy not checking GPIO (Petr Oros) [1772010] - [netdrv] phy: consider latched link-down status in polling mode (Petr Oros) [1772010] - [netdrv] sfp: do not probe SFP module before we're attached (Petr Oros) [1772010] - [netdrv] phy: make use of new MMD accessors (Petr Oros) [1772010] - [kernel] phy: provide full set of accessor functions to MMD registers (Petr Oros) [1772010] - [netdrv] phy: improve genphy_c45_read_link (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Drop GPIO from fixed_phy_add() (Petr Oros) [1772010] - [netdrv] dp83640: expire old TX-skb (Petr Oros) [1772010] - [netdrv] phy: aquantia: replace magic numbers with constants (Petr Oros) [1772010] - [netdrv] phy: aquantia: use macro PHY_ID_MATCH_MODEL (Petr Oros) [1772010] - [netdrv] phy: aquantia: remove unneeded includes (Petr Oros) [1772010] - [netdrv] phy: aquantia: Shorten name space prefix to aqr_ (Petr Oros) [1772010] - [netdrv] revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for 88e151x" (Petr Oros) [1772010] - [netdrv] phy: at803x: Use helpers to access MMD PHY registers (Petr Oros) [1772010] - [netdrv] phy: change phy_start_interrupts to phy_request_interrupt (Petr Oros) [1772010] - [netdrv] phy: start interrupts in phy_start (Petr Oros) [1772010] - [netdrv] phy: warn if phy_start is called from invalid state (Petr Oros) [1772010] - [netdrv] phy: start state machine in phy_start only (Petr Oros) [1772010] - [netdrv] phy: Add SDPX tag based on COPYING file (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2 SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Fixup GPLv2+ SPDX tags based on license text (Petr Oros) [1772010] - [netdrv] phy: Remove redundent License text when SPDX header is present (Petr Oros) [1772010] - [netdrv] phy: Convert some PHY and MDIO driver files to SPDX headers (Petr Oros) [1772010] - [netdrv] phy: at803x: Disable phy delay for RGMII mode (Petr Oros) [1772010] - [netdrv] phy: improve phy_init_hw (Petr Oros) [1772010] - [netdrv] phy: fix issue with loading PHY driver w/o initramfs (Petr Oros) [1772010] - [netdrv] phy: remove phy_stop_interrupts (Petr Oros) [1772010] - [netdrv] phy: ensure phylib state machine is stopped after calling phy_stop (Petr Oros) [1772010] - [netdrv] phy: stop PHY if needed when entering phy_disconnect (Petr Oros) [1772010] - [netdrv] phy: micrel: use phy_read_mmd and phy_write_mmd (Petr Oros) [1772010] - [netdrv] phy: improve get_phy_id (Petr Oros) [1772010] - [kernel] phy: remove state PHY_CHANGELINK (Petr Oros) [1772010] - [netdrv] phy: mdio_bus: add missing device_del() in mdiobus_register() error handling (Petr Oros) [1772010] - [netdrv] phy: check return code when requesting PHY driver module (Petr Oros) [1772010] - [netdrv] phy: Add helpers to determine if PHY driver is generic (Petr Oros) [1772010] - [netdrv] phy: improve logging in phylib (Petr Oros) [1772010] - [netdrv] phy: don't include asm/irq.h directly (Petr Oros) [1772010] - [netdrv] phy: remove preliminary workaround for not loading PHY driver (Petr Oros) [1772010] - [netdrv] phy: meson-gxl: Use the genphy_soft_reset callback (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix deadlock from wrong locking (Petr Oros) [1772010] - [netdrv] phy: marvell: Errata for mv88e6390 internal PHYs (Petr Oros) [1772010] - [netdrv] phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ9031 (Petr Oros) [1772010] - [netdrv] phy: fix too strict check in phy_start_aneg (Petr Oros) [1772010] - [kernel] phy.h: fix obvious errors in doc and kerneldoc content (Petr Oros) [1772010] - [netdrv] phy: mscc: Fix the VSC 8531/41 Chip Init sequence (Petr Oros) [1772010] - [netdrv] phy: Fix the issue that netif always links up after resuming (Petr Oros) [1772010] - [netdrv] phy: print stack trace in phy_error (Petr Oros) [1772010] - [netdrv] phy: improve phy state checking (Petr Oros) [1772010] - [netdrv] fixed phy: Add fixed_phy_change_carrier() (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Add phy_ignore_ta_mask to platform data (Petr Oros) [1772010] - [kernel] phy: mdio-gpio: Add platform_data support for phy_mask (Petr Oros) [1772010] - [kernel] gpio: Export gpiod_get_from_of_node() (Petr Oros) [1772010] - [netdrv] phy: Revert toggling reset changes (Petr Oros) [1772010] - [netdrv] phy: sfp: correct store of detected link modes (Petr Oros) [1772010] - [netdrv] phy: micrel: add toggling phy reset if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: Fix not to call phy_resume() if PHY is not attached (Petr Oros) [1772010] - [netdrv] phy: improve generic EEE ethtool functions (Petr Oros) [1772010] - [netdrv] phy: add workaround for issue where PHY driver doesn't bind to the device (Petr Oros) [1772010] - [netdrv] phy: mscc: fix deadlock in vsc85xx_default_config (Petr Oros) [1772010] - [netdrv] phy: vitesse: remove duplicate support for VSC8574 (Petr Oros) [1772010] - [netdrv] phy: icplus: allow configuring the interrupt function on IP101GR (Petr Oros) [1772010] - [netdrv] phy: icplus: implement .did_interrupt for IP101A/G (Petr Oros) [1772010] - [netdrv] phy: icplus: rename IP101A_G_NO_IRQ to IP101A_G_IRQ_ALL_MASK (Petr Oros) [1772010] - [netdrv] phy: icplus: use the BIT macro where possible (Petr Oros) [1772010] - [netdrv] phy: icplus: keep all ip101a_g functions together (Petr Oros) [1772010] - [documentation] dt-bindings: phy: add bindings for the IC Plus Corp. IP101A/G PHYs (Petr Oros) [1772010] - [documentation] dt-bindings: vendor-prefix: add prefix for IC Plus Corp (Petr Oros) [1772010] - [netdrv] phy: mdio-gpio: Fix working over slow can_sleep GPIOs (Petr Oros) [1772010] - [netdrv] phy: check for implementation of both callbacks in phy_drv_supports_irq (Petr Oros) [1772010] - [netdrv] phy: icplus: add config_intr callback (Petr Oros) [1772010] - [kernel] phy: remove states PHY_STARTING and PHY_PENDING (Petr Oros) [1772010] - [netdrv] phy: leds: Don't make our own link speed names (Petr Oros) [1772010] - [netdrv] phy: improve and inline phy_change (Petr Oros) [1772010] - [netdrv] phy: simplify phy_mac_interrupt and related functions (Petr Oros) [1772010] - [netdrv] phy: don't set state PHY_CHANGELINK in phy_change (Petr Oros) [1772010] - [kernel] phy: improve struct phy_device member interrupts handling (Petr Oros) [1772010] - [netdrv] phy: remove flag PHY_HAS_INTERRUPT from driver configs (Petr Oros) [1772010] - [netdrv] phy: replace PHY_HAS_INTERRUPT with a check for config_intr and ack_interrupt (Petr Oros) [1772010] - [netdrv] phy: use phy_check_link_status in more places in the state machine (Petr Oros) [1772010] - [kernel] phy: remove state PHY_AN (Petr Oros) [1772010] - [netdrv] phy: add phy_check_link_status (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_RESUMING (Petr Oros) [1772010] - [netdrv] phy: remove useless check in state machine case PHY_NOLINK (Petr Oros) [1772010] - [netdrv] phy: make phy_trigger_machine static (Petr Oros) [1772010] - [netdrv] phy: bcm7xxx: Add entry for BCM7255 (Petr Oros) [1772010] - [netdrv] phy: Allow BCM54616S PHY to setup internal TX/RX clock delay (Petr Oros) [1772010] - [netdrv] phy: mdio-mux-bcm-iproc: simplify getting .driver_data (Petr Oros) [1772010] - [documentation] dt-bindings: add support for Microchip KSZ9131 (Petr Oros) [1772010] - [netdrv] phy: micrel: add Microchip KSZ9131 initial driver (Petr Oros) [1772010] - [netdrv] phy: mscc: fix memory leak in vsc8574_config_pre_init (Petr Oros) [1772010] - [netdrv] phy: mscc: fix signedness bug in vsc85xx_downshift_get (Petr Oros) [1772010] - [netdrv] phy: merge phy_start_aneg and phy_start_aneg_priv (Petr Oros) [1772010] - [netdrv] phy: simplify handling of PHY_RESUMING in state machine (Petr Oros) [1772010] - [netdrv] phy: improve handling of PHY_RUNNING in state machine (Petr Oros) [1772010] - [netdrv] phy: trigger state machine immediately in phy_start_machine (Petr Oros) [1772010] - [netdrv] phy: sfp: remove sfp_mutex's definition (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8574 PHY (Petr Oros) [1772010] - [netdrv] phy: mscc: add support for VSC8584 PHY (Petr Oros) [1772010] - [dt-bindings] vsc8531: add two additional LED modes for VSC8584 (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded temporary variable (Petr Oros) [1772010] - [netdrv] phy: mscc: shorten `x != 0` condition to `x` (Petr Oros) [1772010] - [netdrv] phy: mscc: remove unneeded parenthesis (Petr Oros) [1772010] - [netdrv] phy: mscc: Add EEE init sequence (Petr Oros) [1772010] - [netdrv] phy: mscc: add ethtool statistics counters (Petr Oros) [1772010] - [netdrv] phy: mscc: migrate to phy_select/restore_page functions (Petr Oros) [1772010] - [netdrv] phy: phylink: fix SFP interface autodetection (Petr Oros) [1772010] - [netdrv] phy: Convert to using pOFn instead of device_node.name (Petr Oros) [1772010] - [netdrv] phy: improve handling delayed work (Petr Oros) [1772010] - [netdrv] phy: mscc: fix printf format (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: mark PM functions as __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: marvell: Fix build (Petr Oros) [1772010] - [netdrv] phy: marvell: Avoid unnecessary soft reset (Petr Oros) [1772010] - [netdrv] phy: Stop with excessive soft reset (Petr Oros) [1772010] - [netdrv] phy: sfp: Fix unregistering of HWMON SFP device (Petr Oros) [1772010] - [netdrv] phy: fix WoL handling when suspending the PHY (Petr Oros) [1772010] - [net] core: add member wol_enabled to struct net_device (Petr Oros) [1772010] - [netdrv] phy: mdio-bcm-unimac: Allow configuring MDIO clock divider (Petr Oros) [1772010] - [netdrv] phy: don't reschedule state machine when PHY is halted (Petr Oros) [1772010] - [netdrv] phy: phylink: ensure the carrier is off when starting phylink (Petr Oros) [1772010] - [netdrv] phy: call state machine synchronously in phy_stop (Petr Oros) [1772010] - [net] linkwatch: add check for netdevice being present to linkwatch_do_dev (Petr Oros) [1772010] - [netdrv] sfp: fix oops with ethtool -m (Petr Oros) [1772010] - [netdrv] mdio: remove duplicated include from mdio_bus.c (Petr Oros) [1772010] - [netdrv] phy: et011c: Remove incorrect PHY_POLL flags (Petr Oros) [1772010] - [netdrv] phy: sfp: Handle unimplemented hwmon limits and alarms (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, led-d-mode' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, edge-slowdown' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: read 'vsc8531, vddmac' as an u32 (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize function for getting LED mode from DT (Petr Oros) [1772010] - [netdrv] phy: mscc: factorize code for LEDs mode (Petr Oros) [1772010] - [netdrv] dp83640: Mark expected switch fall-throughs (Petr Oros) [1772010] - [netdrv] phylink: add helper for configuring 2500BaseX modes (Petr Oros) [1772010] - [netdrv] phy: sftp: print debug message with text, not numbers (Petr Oros) [1772010] - [netdrv] phy: Add support for Broadcom Omega internal Combo GPHY (Petr Oros) [1772010] - [netdrv] phy: Add pm support to Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [netdrv] phy: Add support to configure clock in Broadcom iProc mdio mux (Petr Oros) [1772010] - [documentation] dt-bindings: Add clock handle to Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Use devm api for mdio bus allocation in bcm iproc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Disable external master access in bcm mdio mux driver (Petr Oros) [1772010] - [arm64] dts: Fix the base address of the Broadcom iProc mdio mux (Petr Oros) [1772010] - [netdrv] phy: Fix the register offsets in Broadcom iProc mdio mux driver (Petr Oros) [1772010] - [documentation] dt-bindings: Fix Broadcom iProc mdio mux driver base address (Petr Oros) [1772010] - [netdrv] phy: mscc: the extended page access register is 16 bits (Petr Oros) [1772010] - [netdrv] phy: marvell: Replace mdelay() with msleep() in m88e1116r_config_init() (Petr Oros) [1772010] - [kernel] phy: add helper phy_polling_mode (Petr Oros) [1772010] - [netdrv] phy: prevent PHYs w/o Clause 22 regs from calling genphy_config_aneg (Petr Oros) [1772010] - [netdrv] phy: add GBit master / slave error detection (Petr Oros) [1772010] - [netdrv] phy: sfp: Do not use "imply HWMON" (Petr Oros) [1772010] - [netdrv] phy: sfp: Add HWMON support for module sensors (Petr Oros) [1772010] - [kernel] hwmon: Add helper to tell if a char is invalid in a name (Petr Oros) [1772010] - [kernel] hwmon: Add support for power min, lcrit, min_alarm and lcrit_alarm (Petr Oros) [1772010] - [kernel] hwmon: Add missing HWMON_T_LCRIT_ALARM define (Petr Oros) [1772010] - [netdrv] phy: Drop OF dependency for MDIO_BCM_UNIMAC (Petr Oros) [1772010] - [gpio] gpiolib: Mark gpio_suffixes array with __maybe_unused (Petr Oros) [1772010] - [netdrv] phy: vitesse: Add support for VSC73xx (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Fix SGMII enable/disable (Petr Oros) [1772010] - [netdrv] phy: dp83tc811: Add INT_STAT3 (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check read_status results (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Use correct mdio bus (Petr Oros) [1772010] - [netdrv] phy: xgmiitorgmii: Check phy_driver ready before accessing (Petr Oros) [1772010] - [netdrv] mdio-mux-gpio: Remove VLA usage (Petr Oros) [1772010] - [netdrv] phy: fixed-phy: Make the error path simpler (Petr Oros) [1772010] - [netdrv] phy: Allow compile test of GPIO consumers if !GPIOLIB (Petr Oros) [1772010] - [watchdog] hpwdt: Reflect changes (Joseph Szczypek) [1769477] - [documentation] watchdog/hpwdt: Update documentation (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Add module parameter kdumptimeout (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Have core ping watchdog (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Advertize max_hw_heartbeat_ms (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Stop hpwdt on unregister (Joseph Szczypek) [1769477] - [watchdog] hpwdt: drop warning after registering device (Joseph Szczypek) [1769477] - [watchdog] hpwdt: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Joseph Szczypek) [1769477] - [nvme] make fabrics command run on a separate request queue (David Milburn) [1766361] - [nvme] Restart request timers in resetting state (David Milburn) [1766361] - [nvme] nvme-rdma: fix possible use-after-free in connect timeout (David Milburn) [1766361] - [block] blk-mq: remove blk_mq_complete_request_sync (David Milburn) [1766361] - [nvme] wait until all completed request's complete fn is called (David Milburn) [1766361] - [nvme] don't abort completed request in nvme_cancel_request (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_tagset_wait_completed_request() (David Milburn) [1766361] - [block] blk-mq: introduce blk_mq_request_completed() (David Milburn) [1766361]- [hwtracing] intel_th: pci: Add Jasper Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake PCH support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix possible memory leak in mode_store() (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix overflow in shift of an unsigned int (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix missing allocation failure check on a kstrndup (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an uninitialized mutex (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix the window switching sequence (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Tiger Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Preserve pre-existing buffer configuration (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Prevent freeing buffers while locked windows exist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Get rid of the window size limit (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu-sink: An example msu buffer "sink" (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Introduce buffer interface (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start read iterator from a non-empty window (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Split sgt array and pointer in multiwindow mode (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Support multipage blocks (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Ice Lake NNPI support (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with disabled IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Remove set but not used variable 'last' (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix unused variable warning on arm64 platform (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add current window tracking (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Add a sysfs attribute to trigger window switch (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Correct the block wrap detection (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add switch triggering support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Factor out trace start/stop (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Factor out pipeline draining (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Switch over to scatterlist (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Replace open-coded list_{first, last, next}_entry variants (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only report useful IRQs to subdevices (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Start handling IRQs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Use MSI interrupt signalling (Jiri Olsa) [1771015] - [hwtracing] intel_th: Communicate IRQ via resource (Jiri Olsa) [1771015] - [hwtracing] intel_th: Add "rtit" source device (Jiri Olsa) [1771015] - [hwtracing] intel_th: Skip subdevices if their MMIO is missing (Jiri Olsa) [1771015] - [hwtracing] intel_th: Rework resource passing between glue layers and core (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix single mode with IOMMU (Jiri Olsa) [1771015] - [hwtracing] intel_th: pci: Add Comet Lake support (Jiri Olsa) [1771015] - [hwtracing] intel_th: gth: Fix an off-by-one in output unassigning (Jiri Olsa) [1771015] - [hwtracing] intel_th: Don't reference unassigned outputs (Jiri Olsa) [1771015] - [hwtracing] intel_th: pti: Use sysfs_match_string() helper (Jiri Olsa) [1771015] - [hwtracing] intel_th: Only create useful device nodes (Jiri Olsa) [1771015] - [hwtracing] intel_th: Mark expected switch fall-throughs (Jiri Olsa) [1771015] - [hwtracing] intel_th: msu: Fix an off-by-one in attribute store (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix resource handling for ACPI glue layer (Jiri Olsa) [1771015] - [hwtracing] intel_th: Fix device removal logic (Jiri Olsa) [1771015] - [hwtracing] hwtracing/intel_th/msu.c: change return type to vm_fault_t (Jiri Olsa) [1771015] - [scripts] kbuild: modversions: Fix relative CRC byte order interpretation (Don Zickus) [1772940] - [tools] tools x86 uapi asm: Sync the pt_regs.h copy with the kernel sources (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for trace sequences APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for APIs used to extract common fields from a record (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_parse_header_page() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for parse event APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event filter APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event fields APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number_field() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for print field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for get field value APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for find field APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for libtraceevent event get APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for list events APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event find APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_read_number() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for registering print function (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for function related libtraceevent APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for event handler APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for tep_strerror() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for page size APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for host endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for file endian APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for get/set cpus APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man page for header_page APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Man pages for tep_handler related APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add support for man pages with multiple names (Michael Petlan) [1743208] - [tools] tools lib traceevent: Introduce man pages (Michael Petlan) [1743208] - [tools] perf/x86/regs: Use PERF_REG_EXTENDED_MASK (Michael Petlan) [1743208] - [tools] perf record: Fix s390 missing module symbol and warning for non-root users (Michael Petlan) [1743208] - [tools] perf machine: Read also the end of the kernel (Michael Petlan) [1743208] - [tools] perf test vmlinux-kallsyms: Ignore aliases to _etext when searching on kallsyms (Michael Petlan) [1743208] - [tools] perf session: Add missing swap ops for namespace events (Michael Petlan) [1743208] - [tools] perf namespace: Protect reading thread's namespace (Michael Petlan) [1743208] - [tools] perf data: Fix 'strncat may truncate' build failure with recent gcc (Michael Petlan) [1743208] - [tools] perf stat: Support 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf stat: Factor out aggregate counts printing (Michael Petlan) [1743208] - [tools] perf tools: Add a 'percore' event qualifier (Michael Petlan) [1743208] - [tools] perf docs: Add description for stderr (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix sample timestamp wrt non-taken branches (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix improved sample timestamp (Michael Petlan) [1743208] - [tools] perf intel-pt: Fix instructions sampling rate (Michael Petlan) [1743208] - [tools] perf regs x86: Add X86 specific arch__intr_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Add generic support for arch__intr/user_reg_mask() (Michael Petlan) [1743208] - [tools] perf parse-regs: Split parse_regs (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Add Cortex-A57 and Cortex-A72 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Map Brahma-B53 CPUID to cortex-a53 events (Michael Petlan) [1743208] - [tools] perf vendor events arm64: Remove [[:xdigit:]] wildcard (Michael Petlan) [1743208] - [tools] perf jevents: Remove unused variable (Michael Petlan) [1743208] - [tools] perf test zstd: Fixup verbose mode output (Michael Petlan) [1743208] - [tools] perf tests: Implement Zstd comp/decomp integration test (Michael Petlan) [1743208] - [tools] perf inject: Enable COMPRESSED record decompression (Michael Petlan) [1743208] - [tools] perf report: Implement perf.data record decompression (Michael Petlan) [1743208] - [tools] perf record: Implement -z, --compression_level[=] option (Michael Petlan) [1743208] - [tools] perf report: Add stub processing of compressed events for -D (Michael Petlan) [1743208] - [tools] perf record: Implement compression for AIO trace streaming (Michael Petlan) [1743208] - [tools] perf record: Implement compression for serial trace streaming (Michael Petlan) [1743208] - [tools] perf tools: Introduce Zstd streaming based compression API (Michael Petlan) [1743208] - [tools] perf mmap: Implement dedicated memory buffer for data compression (Michael Petlan) [1743208] - [tools] perf record: Implement COMPRESSED event record and its attributes (Michael Petlan) [1743208] - [tools] perf session: Define 'bytes_transferred' and 'bytes_compressed' metrics (Michael Petlan) [1743208] - [tools] perf build tests: Add NO_LIBZSTD=1 to make_minimal (Michael Petlan) [1743208] - [tools] perf machine: Null-terminate version char array upon fgets(/proc/version) error (Michael Petlan) [1743208] - [tools] perf vendor events intel: Add uncore_upi JSON support (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add 'About' dialog box (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add context menu (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add copy to clipboard (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Add tree level (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Fix error when shrinking / enlarging font (Michael Petlan) [1743208] - [tools] perf scripts python: exported-sql-viewer.py: Move view creation (Michael Petlan) [1743208] - [tools] perf tools x86: Add support for recording and printing XMM registers (Michael Petlan) [1743208] - [tools] perf parse-regs: Improve error output when faced with unknown register name (Michael Petlan) [1743208] - [tools] perf record: Fix suggestion to get list of registers usable with --user-regs and --intr-regs (Michael Petlan) [1743208] - [tools] perf tools: Speed up report for perf compiled with linwunwind (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove hard coded install paths from pkg-config file (Michael Petlan) [1743208] - [tools] csky: Add support for libdw (Michael Petlan) [1743208] - [tools] perf test: Fix spelling mistake "leadking" -> "leaking" (Michael Petlan) [1743208] - [tools] perf annotate: Remove hist__account_cycles() from callback (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Silvermont to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update GoldmontPlus to v1.01 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Goldmont to v13 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Bonnell to V4 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update KnightsLanding events to v9 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Haswell events to v28 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyBridge events to v21 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SandyBridge events to v16 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update JakeTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update IvyTown events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update HaswellX events to v20 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update BroadwellX events to v14 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update SkylakeX events to v1.12 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Skylake events to v42 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell-DE events to v7 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update Broadwell events to v23 (Michael Petlan) [1743208] - [tools] perf vendor events intel: Update metrics from TMAM 3.5 (Michael Petlan) [1743208] - [tools] perf record: Implement --mmap-flush= option (Michael Petlan) [1743208] - [tools] tools build: Implement libzstd feature check, LIBZSTD_DIR and NO_LIBZSTD defines (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments and local variables of libtraceevent from pevent to tep (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event_filter to "tep" (Michael Petlan) [1743208] - [tools] perf tools, tools lib traceevent: Rename "pevent" member of struct tep_event to "tep" (Michael Petlan) [1743208] - [tools] tools lib traceevent: Rename input arguments of libtraceevent APIs from pevent to tep (Michael Petlan) [1743208] - [tools] tools tools, tools lib traceevent: Make traceevent APIs more consistent (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove call to exit() from tep_filter_add_filter_str() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Remove tep filter trivial APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Removed unneeded !! and return parenthesis (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement new traceevent APIs for accessing struct tep_handler fields (Michael Petlan) [1743208] - [tools] tools lib traceevent: Coding style fixes (Michael Petlan) [1743208] - [tools] tools lib traceevent: Change description of few APIs (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add more debugging to see various internal ring buffer entries (Michael Petlan) [1743208] - [tools] tools lib traceevent: Implement a new API, tep_list_events_copy() (Michael Petlan) [1743208] - [tools] tools lib traceevent: Add mono clocks to be parsed in seconds (Michael Petlan) [1743208] - [tools] tools lib traceevent: Handle trace_printk() "px" (Michael Petlan) [1743208] - [tools] perf list: Output tool events (Michael Petlan) [1743208] - [tools] perf evsel: Support printing evsel name for 'duration_time' (Michael Petlan) [1743208] - [tools] perf stat: Implement duration_time as a proper event (Michael Petlan) [1743208] - [tools] perf stat: Revert checks for duration_time (Michael Petlan) [1743208] - [tools] perf list: Fix s390 counter long description for L1D_RO_EXCL_WRITES (Michael Petlan) [1743208] - [tools] perf tools: Add header defining used namespace struct to event.h (Michael Petlan) [1743208] - [tools] perf trace beauty renameat: No need to include linux/fs.h (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Use a PERCPU_ARRAY map to copy more string bytes (Michael Petlan) [1743208] - [tools] perf augmented_raw_syscalls: Copy strings from all syscalls with 1st or 2nd string arg (Michael Petlan) [1743208] - [tools] perf trace: Add 'string' event alias to select syscalls with string args (Michael Petlan) [1743208] - [x86] perf/x86: Always store regs->ip in perf_callchain_kernel() (Michael Petlan) [1743208] - [x86] perf/x86: Remove pmu->pebs_no_xmm_regs (Michael Petlan) [1743208] - [x86] perf/x86: Clean up PEBS_XMM_REGS (Michael Petlan) [1743208] - [kernel] perf/x86: Disable extended registers for non-supported PMUs (Michael Petlan) [1743208] - [kernel] perf/ioctl: Add check for the sample_period value (Michael Petlan) [1743208] - [kernel] perf/core: Fix perf_sample_regs_user() mm check (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Use regular variables for nesting (Michael Petlan) [1743208] - [kernel] perf/ring-buffer: Always use {READ, WRITE}_ONCE() for rb->user_page data (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Add ordering to rb->nest increment (Michael Petlan) [1743208] - [kernel] perf/ring_buffer: Fix exposing a temporarily decreased data_head (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Fix EVENT vs. UEVENT PEBS constraints (Michael Petlan) [1743208] - [x86] perf/x86/intel: Allow PEBS multi-entry in watermark mode (Michael Petlan) [1743208] - [x86] perf/x86/intel: Fix INTEL_FLAGS_EVENT_CONSTRAINT* masking (Michael Petlan) [1743208] - [x86] perf/x86/amd/iommu: Make the 'amd_iommu_attr_groups' symbol static (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Tremont core PMU support (Michael Petlan) [1743208] - [x86] perf/x86/intel/uncore: Add Intel Icelake uncore support (Michael Petlan) [1743208] - [x86] perf/x86/msr: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/rapl: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel/cstate: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86/intel: Add Icelake support (Michael Petlan) [1743208] - [x86] perf/x86: Support constraint ranges (Michael Petlan) [1743208] - [x86] perf/x86/lbr: Avoid reading the LBRs when adaptive PEBS handles them (Michael Petlan) [1743208] - [x86] perf/x86/intel: Support adaptive PEBS v4 (Michael Petlan) [1743208] - [x86] perf/x86/intel/ds: Extract code of event update in short period (Michael Petlan) [1743208] - [x86] perf/x86/intel: Extract memory code PEBS parser for reuse (Michael Petlan) [1743208] - [x86] perf/x86: Support outputting XMM registers (Michael Petlan) [1743208] - [x86] perf/x86/intel: Force resched when TFA sysctl is modified (Michael Petlan) [1743208] - [kernel] perf/core: Add perf_pmu_resched() as global function (Michael Petlan) [1743208] - [kernel] perf/headers: Fix stale comment for struct perf_addr_filter (Michael Petlan) [1743208] - [kernel] perf/core: Make perf_swevent_init_cpu() static (Michael Petlan) [1743208] - [x86] perf/x86: Add sanity checks to x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Optimize x86_schedule_events() (Michael Petlan) [1743208] - [x86] perf/x86: Clear ->event_constraint[] on put (Michael Petlan) [1743208] - [x86] perf/x86/intel: Optimize intel_get_excl_constraints() (Michael Petlan) [1743208] - [x86] perf/x86: Remove PERF_X86_EVENT_COMMITTED (Michael Petlan) [1743208] - [x86] perf/x86: Simplify x86_pmu.get_constraints() interface (Michael Petlan) [1743208] - [x86] perf/x86/intel: Simplify intel_tfa_commit_scheduling() (Michael Petlan) [1743208] - [tools] perf evsel: Do not rely on errno values for precise_ip fallback (Michael Petlan) [1715508] - [kernel] redhat: perf kABI-check failure fix (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [x86] cpufeature: Fix various quality problems in the header (Michael Petlan) [1715508] - [x86] cpufeature: Add facility to check for min microcode revisions (Michael Petlan) [1715508] - [tools] perf tools: Remove needless asm/unistd.h include fixing build in some places (Michael Petlan) [1715508] - [tools] tools build: Add -ldl to the disassembler-four-args feature test (Michael Petlan) [1715508] - [tools] perf cs-etm: Always allocate memory for cs_etm_queue::prev_packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Don't check cs_etm_queue::prev_packet validity (Michael Petlan) [1715508] - [tools] perf report: Report OOM in status line in the GTK UI (Michael Petlan) [1715508] - [tools] perf bench numa: Add define for RUSAGE_THREAD if not present (Michael Petlan) [1715508] - [tools] tools lib traceevent: Change tag string for error (Michael Petlan) [1715508] - [tools] perf annotate: Fix build on 32 bit for BPF annotation (Michael Petlan) [1715508] - [tools] perf bpf: Return value with unlocking in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_btf() (Michael Petlan) [1715508] - [tools] perf tools: Fix map reference counting (Michael Petlan) [1715508] - [tools] perf evlist: Fix side band thread draining (Michael Petlan) [1715508] - [tools] perf tools: Check maps for bpf programs (Michael Petlan) [1715508] - [tools] perf bpf: Return NULL when RB tree lookup fails in perf_env__find_bpf_prog_info() (Michael Petlan) [1715508] - [tools] tools include uapi: Sync sound/asound.h copy (Michael Petlan) [1715508] - [tools] perf top: Always sample time to satisfy needs of use of ordered queuing (Michael Petlan) [1715508] - [tools] perf evsel: Use hweight64() instead of hweight_long(attr.sample_regs_user) (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix missing equality check for strcmp (Michael Petlan) [1715508] - [tools] perf stat: Disable DIR_FORMAT feature for 'perf stat record' (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Fix use of parent_id in calls_view (Michael Petlan) [1715508] - [tools] perf header: Fix lock/unlock imbalances when processing BPF/BTF info (Michael Petlan) [1715508] - [tools] perf pmu: Fix parser error for uncore event alias (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix never-ending loop (Michael Petlan) [1715508] - [tools] perf machine: Update kernel map address and re-order properly (Michael Petlan) [1715508] - [tools] tools headers uapi: Synchronize i915_drm.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Update drm/i915_drm.h (Michael Petlan) [1715508] - [tools] perf evsel: Fix max perf_event_attr.precise_ip detection (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix TSC slip (Michael Petlan) [1715508] - [tools] perf cs-etm: Add missing case value (Michael Petlan) [1715508] - [tools] perf bpf: Show more BPF program info in print_bpf_prog_info() (Michael Petlan) [1715508] - [tools] perf bpf: Extract logic to create program names from perf_event__synthesize_one_bpf_prog() (Michael Petlan) [1715508] - [tools] perf tools: Save bpf_prog_info and BTF of new BPF programs (Michael Petlan) [1715508] - [tools] perf evlist: Introduce side band thread (Michael Petlan) [1715508] - [tools] perf annotate: Enable annotation of BPF programs (Michael Petlan) [1715508] - [tools] perf build: Check what binutils's 'disassembler()' signature to use (Michael Petlan) [1715508] - [tools] tools build: Add -lrt to FEATURE_CHECK_LDFLAGS-libaio (Michael Petlan) [1715508] - [tools] tools build: Add test-reallocarray.c to test-all.c to fix the build (Michael Petlan) [1715508] - [tools] perf bpf: Process PERF_BPF_EVENT_PROG_LOAD for annotation (Michael Petlan) [1715508] - [tools] perf symbols: Introduce DSO_BINARY_TYPE__BPF_PROG_INFO (Michael Petlan) [1715508] - [tools] perf feature detection: Add -lopcodes to feature-libbfd (Michael Petlan) [1715508] - [tools] perf top: Add option --no-bpf-event (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save BTF in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info information as headers to perf.data (Michael Petlan) [1715508] - [tools] perf bpf: Save bpf_prog_info in a rbtree in perf_env (Michael Petlan) [1715508] - [tools] perf bpf: Make synthesize_bpf_events() receive perf_session pointer instead of perf_tool (Michael Petlan) [1715508] - [tools] perf bpf: Synthesize bpf events with bpf_program__get_prog_info_linear() (Michael Petlan) [1715508] - [tools] perf record: Replace option --bpf-event with --no-bpf-event (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak in test__perf_evsel__tp_sched_test() (Michael Petlan) [1715508] - [tools] perf tests: Fix memory leak by expr__find_other() in test__expr() (Michael Petlan) [1715508] - [tools] perf tests: Fix a memory leak of cpu_map object in the openat_syscall_event_on_all_cpus test (Michael Petlan) [1715508] - [tools] perf evsel: Free evsel->counts in perf_evsel__exit() (Michael Petlan) [1715508] - [tools] perf top: Fix global-buffer-overflow issue (Michael Petlan) [1715508] - [tools] perf maps: Purge all maps from the 'names' tree (Michael Petlan) [1715508] - [tools] perf map: Remove map from 'names' tree in __maps__remove() (Michael Petlan) [1715508] - [tools] perf hist: Add missing map__put() in error case (Michael Petlan) [1715508] - [tools] perf top: Fix error handling in cmd_top() (Michael Petlan) [1715508] - [tools] perf top: Delete the evlist before perf_session, fixing heap-use-after-free issue (Michael Petlan) [1715508] - [tools] perf build-id: Fix memory leak in print_sdt_events() (Michael Petlan) [1715508] - [tools] perf config: Fix a memory leak in collect_config() (Michael Petlan) [1715508] - [tools] perf config: Fix an error in the config template documentation (Michael Petlan) [1715508] - [tools] perf list: Don't forget to drop the reference to the allocated thread_map (Michael Petlan) [1715508] - [tools] perf tools: Add doc about how to build perf with Asan and UBSan (Michael Petlan) [1715508] - [tools] perf vendor events: Remove P8 HW events which are not supported (Michael Petlan) [1715508] - [tools] perf stat: Improve scaling (Michael Petlan) [1715508] - [tools] perf stat: Fix --no-scale (Michael Petlan) [1715508] - [tools] perf script: Support relative time (Michael Petlan) [1715508] - [tools] perf report: Indicate JITed code better in report (Michael Petlan) [1715508] - [tools] perf report: Show all sort keys in help output (Michael Petlan) [1715508] - [tools] perf record: Clarify help for --switch-output (Michael Petlan) [1715508] - [tools] perf record: Allow to limit number of reported perf.data files (Michael Petlan) [1715508] - [tools] perf list: Filter metrics too (Michael Petlan) [1715508] - [tools] perf tools report: Add custom scripts to script menu (Michael Petlan) [1715508] - [tools] perf ui browser: Fix ui popup argv browser for many entries (Michael Petlan) [1715508] - [tools] perf script: Add array bound checking to list_scripts (Michael Petlan) [1715508] - [tools] perf tools: Add some new tips describing the new options (Michael Petlan) [1715508] - [tools] perf report: Implement browsing of individual samples (Michael Petlan) [1715508] - [tools] perf report: Support builtin perf script in scripts menu (Michael Petlan) [1715508] - [tools] perf report: Support running scripts for current time range (Michael Petlan) [1715508] - [tools] perf report: Support time sort key (Michael Petlan) [1715508] - [tools] perf script: Filter COMM/FORK/.. events by CPU (Michael Petlan) [1715508] - [tools] perf tools: Update x86's syscall_64.tbl, no change in tools/perf behaviour (Michael Petlan) [1715508] - [tools] perf script python: Add printdate function to SQL exporters (Michael Petlan) [1715508] - [tools] perf report: Use less for scripts output (Michael Petlan) [1715508] - [tools] perf session: Add process callback to reader object (Michael Petlan) [1715508] - [tools] perf header: Add DIR_FORMAT feature to describe directory data (Michael Petlan) [1715508] - [tools] perf data: Make perf_data__size() work over directory (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__update_dir() function (Michael Petlan) [1715508] - [tools] perf data: Don't store auxtrace index for directory data file (Michael Petlan) [1715508] - [tools] perf data: Support having perf.data stored as a directory (Michael Petlan) [1715508] - [tools] perf vendor events amd: perf PMU events for AMD Family 17h (Michael Petlan) [1715508] - [tools] perf probe: Fix getting the kernel map (Michael Petlan) [1715508] - [tools] perf report: Parse time quantum (Michael Petlan) [1715508] - [tools] perf time-utils: Add utility function to print time stamps in nanoseconds (Michael Petlan) [1715508] - [tools] perf report: Support output in nanoseconds (Michael Petlan) [1715508] - [tools] perf script: Support insn output for normal samples (Michael Petlan) [1715508] - [tools] perf data: Force perf_data__open|close zero data->file.path (Michael Petlan) [1715508] - [tools] perf session: Fix double free in perf_data__close (Michael Petlan) [1715508] - [tools] perf evsel: Probe for precise_ip with simple attr (Michael Petlan) [1715508] - [tools] perf tools: Read and store caps/max_precise in perf_pmu (Michael Petlan) [1715508] - [tools] perf hist: Fix memory leak of srcline (Michael Petlan) [1715508] - [tools] perf hist: Add error path into hist_entry__init (Michael Petlan) [1715508] - [tools] perf diff: Support --pid/--tid filter options (Michael Petlan) [1715508] - [tools] perf diff: Support --cpu filter option (Michael Petlan) [1715508] - [tools] perf diff: Support --time filter option (Michael Petlan) [1715508] - [tools] perf thread: Generalize function to copy from thread addr space from intel-bts code (Michael Petlan) [1715508] - [tools] perf annotate: Calculate the max instruction name, align column to that (Michael Petlan) [1715508] - [tools] perf clang: Remove needless extra semicolon (Michael Petlan) [1715508] - [tools] perf bpf: Automatically add BTF ELF markers (Michael Petlan) [1715508] - [tools] perf beauty msg_flags: Add missing s lost when adding prefix suppression logic (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add call tree (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out CallGraphModelBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Improve TreeModel abstraction (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out TreeWindowBase (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-postgresql.py: Fix invalid input syntax for integer error (Michael Petlan) [1715508] - [tools] perf scripts python: export-to-sqlite.py: Export calls parent_id (Michael Petlan) [1715508] - [tools] perf db-export: Add calls parent_id to enable creation of call trees (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix divide by zero when TSC is not available (Michael Petlan) [1715508] - [tools] perf auxtrace: Improve address filter error message when there is no DSO (Michael Petlan) [1715508] - [tools] perf time-utils: Refactor time range parsing code (Michael Petlan) [1715508] - [tools] tools lib traceevent: Fix buffer overflow in arg_eval (Michael Petlan) [1715508] - [tools] perf probe: Clarify error message about not finding kernel modules debuginfo (Michael Petlan) [1715508] - [tools] replace open encodings for NUMA_NO_NODE (Michael Petlan) [1715508] - [tools] perf script python: Add Python3 support to stat-cpi.py (Michael Petlan) [1715508] - [tools] perf tools: Add perf_exe() helper to find perf binary (Michael Petlan) [1715508] - [tools] perf script: Handle missing fields with -F +. (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__open_dir_data function (Michael Petlan) [1715508] - [tools] perf data: Add perf_data__(create_dir|close_dir) functions (Michael Petlan) [1715508] - [tools] perf data: Fail check_backup in case of error (Michael Petlan) [1715508] - [tools] perf data: Make check_backup work over directories (Michael Petlan) [1715508] - [tools] perf tools: Add rm_rf_perf_data function (Michael Petlan) [1715508] - [tools] perf tools: Add pattern name checking to rm_rf (Michael Petlan) [1715508] - [tools] perf tools: Add depth checking to rm_rf (Michael Petlan) [1715508] - [tools] perf data: Add global path holder (Michael Petlan) [1715508] - [tools] perf data: Move size to struct perf_data_file (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Add top calls report (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove no selection error (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove SQLTableDialogDataItem (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Create new dialog data item classes (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move report name into ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportVars (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Factor out ReportDialogBase (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Move column headers (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Hide Call Graph option if no calls table (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Remove leftover debugging prints (Michael Petlan) [1715508] - [tools] perf scripts python: exported-sql-viewer.py: Fix missing shebang (Michael Petlan) [1715508] - [tools] perf thread-stack: Hide x86 retpolines (Michael Petlan) [1715508] - [tools] perf thread-stack: Improve thread_stack__no_call_return() (Michael Petlan) [1715508] - [tools] perf tools: Make rm_rf() remove single file (Michael Petlan) [1715508] - [tools] perf cpumap: Increase debug level for cpu_map__snprint verbose output (Michael Petlan) [1715508] - [tools] perf bpf-event: Add missing new line into pr_debug call (Michael Petlan) [1715508] - [tools] perf script: Allow +- operator for type specific fields option (Michael Petlan) [1715508] - [tools] perf evsel: Force sample_type for slave events (Michael Petlan) [1715508] - [tools] perf session: Don't report zero period samples for slave events (Michael Petlan) [1715508] - [tools] perf trace: Allow dumping a BPF map after setting up BPF events (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map dumper (Michael Petlan) [1715508] - [tools] perf doc: Fix documentation of the Flags section in perf.data (Michael Petlan) [1715508] - [tools] perf doc: Fix HEADER_CMDLINE description in perf.data documentation (Michael Petlan) [1715508] - [tools] perf report: Don't shadow inlined symbol with different addr range (Michael Petlan) [1715508] - [tools] perf tools: Use sysfs__mountpoint() when reading cpu topology (Michael Petlan) [1715508] - [tools] perf tools: Add numa_topology object (Michael Petlan) [1715508] - [tools] perf tools: Add cpu_topology object (Michael Petlan) [1715508] - [tools] perf tests shell: Skip trace+probe_vfs_getname.sh if built without trace support (Michael Petlan) [1715508] - [tools] perf header: Remove unused 'cpu_nr' field from 'struct cpu_topo' (Michael Petlan) [1715508] - [tools] perf header: Get rid of write_it label (Michael Petlan) [1715508] - [tools] perf list: Display metric expressions for --details option (Michael Petlan) [1715508] - [tools] perf tools: Fix legacy events symbol separator parsing (Michael Petlan) [1715508] - [tools] perf tools: Rename build libperf to perf (Michael Petlan) [1715508] - [tools] perf tools: Rename LIB_FILE to LIBPERF_A (Michael Petlan) [1715508] - [tools] perf tools: Compile perf with libperf-in.o instead of libperf.a (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize auxtrace_buffer fetch function (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main packet processing loop (Michael Petlan) [1715508] - [tools] perf cs-etm: Modularize main decoder function (Michael Petlan) [1715508] - [tools] perf cs-etm: Make cs_etm__run_decoder() queue independent (Michael Petlan) [1715508] - [tools] perf cs-etm: Rethink kernel address initialisation (Michael Petlan) [1715508] - [tools] perf cs-etm: Cleaning up function cs_etm__alloc_queue() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix erroneous comment (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm__init_trace_params() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix memory leak in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Introducing function cs_etm_decoder__init_dparams() (Michael Petlan) [1715508] - [tools] perf cs-etm: Fix wrong return values in error path (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "time" and "timestamp" (Michael Petlan) [1715508] - [tools] perf cs-etm: Remove unused structure field "state" (Michael Petlan) [1715508] - [tools] perf build: Add missing FEATURE_CHECK_LDFLAGS-libcrypto (Michael Petlan) [1715508] - [tools] perf unwind: Do not put libunwind-{x86, aarch64} in FEATURE_TESTS_BASIC (Michael Petlan) [1715508] - [tools] perf coresight: Do not test for libopencsd by default (Michael Petlan) [1715508] - [tools] perf trace: Filter out gnome-terminal* parent (Michael Petlan) [1715508] - [tools] perf trace: Check if the 'fd' is negative when mapping it to pathname (Michael Petlan) [1715508] - [tools] perf beauty ioctl cmd: The 'fd' arg is signed (Michael Petlan) [1715508] - [tools] perf utils: Silence "Couldn't synthesize bpf events" warning for EPERM (Michael Petlan) [1715508] - [tools] perf cs-etm: Add proper header file for symbols (Michael Petlan) [1715508] - [tools] perf record: Implement --affinity=node|cpu option (Michael Petlan) [1715508] - [tools] perf auxtrace: Add timestamp to auxtrace errors (Michael Petlan) [1715508] - [tools] perf intel-pt: Packet splitting can happen only on 32-bit (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix CYC timestamp calculation after OVF (Michael Petlan) [1715508] - [tools] perf intel-pt: Fix overlap calculation for padding (Michael Petlan) [1715508] - [tools] perf auxtrace: Define auxtrace record alignment (Michael Petlan) [1715508] - [tools] perf thread-stack: Represent jmps to the start of a different symbol (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__no_call_return() by adding more local variables (Michael Petlan) [1715508] - [tools] perf thread-stack: Tidy thread_stack__push_cp() usage (Michael Petlan) [1715508] - [tools] perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols (Michael Petlan) [1715508] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on CLX (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception return packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add traceID in packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Change tuple from traceID-CPU# to traceID-metadata (Michael Petlan) [1715508] - [tools] perf cs-etm: Add exception number in exception packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for trace discontinuity (Michael Petlan) [1715508] - [tools] perf cs-etm: Set sample flags for instruction range packet (Michael Petlan) [1715508] - [tools] perf cs-etm: Add last instruction information in packet (Michael Petlan) [1715508] - [tools] perf tools: Add documentation for BPF event selection (Michael Petlan) [1715508] - [tools] perf report: Move symbol annotation to the resort phase (Michael Petlan) [1715508] - [tools] perf evsel: Add output_resort_cb method (Michael Petlan) [1715508] - [tools] perf hists: Add argument to hists__resort_cb_t callback (Michael Petlan) [1715508] - [tools] perf record: Apply affinity masks when reading mmap buffers (Michael Petlan) [1715508] - [tools] perf tools: Add fallback versions for CPU_{OR, EQUAL}() (Michael Petlan) [1715508] - [tools] perf record: Bind the AIO user space buffers to nodes (Michael Petlan) [1715508] - [tools] perf record: Allocate affinity masks (Michael Petlan) [1715508] - [tools] perf pmu: Remove set_drv_config API (Michael Petlan) [1715508] - [tools] perf coresight: Remove set_drv_config() API (Michael Petlan) [1715508] - [tools] perf arm cs-etm: Use event attributes to send sink information to kernel (Michael Petlan) [1715508] - [tools] perf pmu: Move EVENT_SOURCE_DEVICE_PATH to PMU header file (Michael Petlan) [1715508] - [tools] perf bpf-loader: Remove unecessary includes from bpf-loader.h (Michael Petlan) [1715508] - [tools] perf powerpc kvm-stat: Add missing evlist.h header (Michael Petlan) [1715508] - [tools] perf kvm stat: Replace kvm-stat.h includes with forward declarations (Michael Petlan) [1715508] - [tools] perf pmu: Remove needless evsel.h only needs one fwd decl (Michael Petlan) [1715508] - [tools] perf tests pmu: Add missing headers (Michael Petlan) [1715508] - [tools] perf hist: Remove the needless callchain.h include from hist.h (Michael Petlan) [1715508] - [tools] perf tools: Add missing include in various places (Michael Petlan) [1715508] - [tools] perf thread: Don't include symbol.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf evsel: No need to include symbol.h in evsel.h, symbol_conf.h is enough (Michael Petlan) [1715508] - [tools] perf tools: Add missing include for symbols.h (Michael Petlan) [1715508] - [tools] perf hist: Remove symbol.h from hist.h, just fwd decls are needed (Michael Petlan) [1715508] - [tools] perf tests: Add missing headers so far obtained indirectly (Michael Petlan) [1715508] - [tools] perf map: Move structs and prototypes for map groups to a separate header (Michael Petlan) [1715508] - [tools] pref tools: Add missing map.h includes (Michael Petlan) [1715508] - [tools] perf symbols: Introduce map_symbol.h (Michael Petlan) [1715508] - [tools] perf callchain: Uninline callchain_cursor_reset() to remove map.h dependency (Michael Petlan) [1715508] - [tools] perf srccode: Move struct definition from map.h to srccode.h (Michael Petlan) [1715508] - [tools] perf arm pmu: Add missing linux/string.h header (Michael Petlan) [1715508] - [tools] perf powerpc: Add missing headers to skip-callchain-idx.c (Michael Petlan) [1715508] - [tools] perf augmented_syscalls: Convert to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf examples: Convert etcsnoop to use bpf_map() (Michael Petlan) [1715508] - [tools] perf trace: Fixup etcsnoop example (Michael Petlan) [1715508] - [tools] perf augmented_raw_syscalls: Use bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Convert pid_map() to bpf_map() (Michael Petlan) [1715508] - [tools] perf bpf: Add bpf_map() helper (Michael Petlan) [1715508] - [tools] perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT (Michael Petlan) [1715508] - [tools] perf sched: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf hist: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf symbols: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf util: Use cached rbtree for rblists (Michael Petlan) [1715508] - [tools] perf callchain: Use cached rbtrees (Michael Petlan) [1715508] - [tools] perf machine: Use cached rbtrees (Michael Petlan) [1715508] - [tools] Update rbtree implementation (Michael Petlan) [1715508] - [tools] perf callchain: No need to include perf.h (Michael Petlan) [1715508] - [tools] perf comm: Remove needless headers from comm.h (Michael Petlan) [1715508] - [tools] perf namespaces: Remove namespaces.h from .h headers (Michael Petlan) [1715508] - [tools] perf symbols: Remove some unnecessary includes from symbol.h (Michael Petlan) [1715508] - [tools] perf symbols: Remove include map.h from dso.h (Michael Petlan) [1715508] - [tools] perf block-range: Add missing headers (Michael Petlan) [1715508] - [tools] perf tools: Move branch structs to branch.h (Michael Petlan) [1715508] - [tools] perf annotate: Remove lots of headers from annotate.h (Michael Petlan) [1715508] - [tools] perf symbols: Move symbol_conf to separate file (Michael Petlan) [1715508] - [tools] perf color: Add missing stdarg.g to color.h (Michael Petlan) [1715508] - [tools] perf utils: Move perf_config using routines from color.c to separate object (Michael Petlan) [1715508] - [tools] perf top: Synthesize BPF events for pre-existing loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Synthesize PERF_RECORD_* for loaded BPF programs (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [tools] perf tools: Handle PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] tools headers uapi: Sync tools/include/uapi/linux/perf_event.h (Michael Petlan) [1715508] - [tools] perf report: Display names in s390 diagnostic counter sets (Michael Petlan) [1715508] - [tools] perf tools: Remove duplicate headers (Michael Petlan) [1715508] - [tools] perf session: Add reader__process_events function (Michael Petlan) [1715508] - [tools] perf session: Add 'data_offset' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add 'data_size' member to reader object (Michael Petlan) [1715508] - [tools] perf session: Add reader object (Michael Petlan) [1715508] - [tools] perf session: Get rid of file_size variable (Michael Petlan) [1715508] - [tools] perf session: Rearrange perf_session__process_events function (Michael Petlan) [1715508] - [tools] perf tools: Replace automatic const char[] variables by statics (Michael Petlan) [1715508] - [tools] perf/doc: Update design.txt for exclude_{host|guest} flags (Michael Petlan) [1715508] - [x86] perf/x86/intel/pt: Remove software double buffering PMU capability (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX software double buffering (Michael Petlan) [1715508] - [x86] perf/x86/amd: Update generic hardware cache events for Family 17h (Michael Petlan) [1715508] - [x86] perf/x86/amd: Add event map for AMD Family 17h (Michael Petlan) [1715508] - [x86] perf/x86: Fix incorrect PEBS_REGS (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Fix AUX record suppression (Michael Petlan) [1715508] - [kernel] perf/core: Fix the address filtering fix (Michael Petlan) [1715508] - [kernel] perf/core: Fix perf_event_disable_inatomic() race (Michael Petlan) [1715508] - [x86] perf/x86/intel: Initialize TFA MSR (Michael Petlan) [1715508] - [x86] perf/x86/intel: Fix handling of wakeup_events for multi-entry PEBS (Michael Petlan) [1715508] - [kernel] perf/core: Restore mmap record type correctly (Michael Petlan) [1715508] - [x86] perf/x86/intel: Make dev_attr_allow_tsx_force_abort static (Michael Petlan) [1715508] - [kernel] uprobes: convert uprobe.ref to refcount_t (Michael Petlan) [1715508] - [kernel] perf, bpf: Consider events with attr.bpf_event as side-band events (Michael Petlan) [1715508] - [kernel] perf/core: Mark expected switch fall-through (Michael Petlan) [1715508] - [x86] perf/x86/intel/uncore: Fix client IMC events return huge result (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Use high order allocations for AUX buffers optimistically (Michael Petlan) [1715508] - [x86] events: Mark expected switch-case fall-throughs (Michael Petlan) [1715508] - [kernel] perf, pt, coresight: Fix address filters for vmas with non-zero offset (Michael Petlan) [1715508] - [kernel] perf: Copy parent's address filter offsets on clone (Michael Petlan) [1715508] - [x86] perf/x86/intel: Add counter freezing quirk for Goldmont (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up counter freezing quirk (Michael Petlan) [1715508] - [x86] perf/x86/intel: Clean up SNB PEBS quirk (Michael Petlan) [1715508] - [x86] perf/x86/kvm: Avoid unnecessary work in guest filtering (Michael Petlan) [1715508] - [perf] aux: Make perf_event accessible to setup_aux() (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.aux_refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/ring_buffer: Convert ring_buffer.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf: Convert perf_event_context.refcount to refcount_t (Michael Petlan) [1715508] - [kernel] perf/uprobes: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/hw_breakpoints: Convert to SPDX license identifier (Michael Petlan) [1715508] - [kernel] perf/core: Convert to SPDX license identifiers (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_BPF_EVENT (Michael Petlan) [1715508] - [kernel] perf, bpf: Introduce PERF_RECORD_KSYMBOL (Michael Petlan) [1715508] - [kernel] perf: Remove duplicated workqueue.h include from perf_event.h (Michael Petlan) [1715508] - [tools] perf/core: Remove unused perf_flags (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Strengthen exclusion checks with PERF_PMU_CAP_NO_EXCLUDE (Michael Petlan) [1715508] - [x86] perf/core, arch/x86: Use PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add PERF_PMU_CAP_NO_EXCLUDE for exclusion incapable PMUs (Michael Petlan) [1715508] - [kernel] perf/core: Add function to test for event exclusion flags (Michael Petlan) [1715508]- [kernel] mm/hmm: fix ZONE_DEVICE anon page mapping reuse (Jerome Glisse) [1498655 1597758] - [gpu] drm/nouveau/dmem: missing mutex_lock in error path (Jerome Glisse) [1498655 1597758] - [mm] hmm: always return EBUSY for invalid ranges in hmm_range_{fault, snapshot} (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: move hmm_vma_range_done and hmm_vma_fault to nouveau (Jerome Glisse) [1498655 1597758] - [kernel] mm: factor out a devm_request_free_mem_region helper (Jerome Glisse) [1498655 1597758] - [mm] don't clear ->mapping in hmm_devmem_free (Jerome Glisse) [1498655 1597758] - [mm] remove the struct hmm_device infrastructure (Jerome Glisse) [1498655 1597758] - [mm] hmm: Fix error flows in hmm_invalidate_range_start (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove confusing comment and logic from hmm_release (Jerome Glisse) [1498655 1597758] - [mm] hmm: Poison hmm_range during unregister (Jerome Glisse) [1498655 1597758] - [mm] hmm: Remove racy protection against double-unregistration (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use lockdep instead of comments (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold on to the mmget for the lifetime of the range (Jerome Glisse) [1498655 1597758] - [mm] hmm: Do not use list*_rcu() for hmm->ranges (Jerome Glisse) [1498655 1597758] - [mm] hmm: Simplify hmm_get_or_create and make it reliable (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: Remove duplicate condition test before wait_event_timeout (Jerome Glisse) [1498655 1597758] - [mm] hmm: Hold a mmgrab from hmm to mm (Jerome Glisse) [1498655 1597758] - [mm] hmm: Use hmm_mirror not mm as an argument for hmm_range_register (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix use after free with struct hmm in the mmu notifiers (Jerome Glisse) [1498655 1597758] - [mm] hmm: Only set FAULT_FLAG_ALLOW_RETRY for non-blocking (Jerome Glisse) [1498655 1597758] - [mm] hmm: support automatic NUMA balancing (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: clean up some coding style and comments (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: suppress compilation warnings when CONFIG_HUGETLB_PAGE is not set (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert various hmm_pfn_* to device_entry which is a better name (Jerome Glisse) [1498655 1597758] - [mm] hmm: add a helper function that fault pages and map them to a device (Jerome Glisse) [1498655 1597758] - [mm] hmm: allow to mirror vma of a file on a DAX backed filesystem (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: add helpers to test if mm is still alive or not (Jerome Glisse) [1498655 1597758] - [mm] hmm: mirror hugetlbfs (snapshoting, faulting and DMA mapping) (Jerome Glisse) [1498655 1597758] - [documentation] [documentation] mm/hmm: add default fault flags to avoid the need to pre-fill pfns arrays (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve driver API to work and wait over a range (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_fault() to hmm_range_fault() (Jerome Glisse) [1498655 1597758] - [mm] hmm: improve and rename hmm_vma_get_pfns() to hmm_range_snapshot() (Jerome Glisse) [1498655 1597758] - [mm] hmm: do not erase snapshot when a range is invalidated (Jerome Glisse) [1498655 1597758] - [mm] hmm: use reference counting for HMM struct (Jerome Glisse) [1498655 1597758] - [kernel] mm/hmm: convert to use vm_fault_t (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove set but not used variable 'devmem' (Jerome Glisse) [1498655 1597758] - [mm] hmm: mark hmm_devmem_{add, add_resource} EXPORT_SYMBOL_GPL (Jerome Glisse) [1498655 1597758] - [mm] hmm: replace hmm_devmem_pages_create() with devm_memremap_pages() (Jerome Glisse) [1498655 1597758] - [mm] hmm: use devm semantics for hmm_devmem_{add, remove} (Jerome Glisse) [1498655 1597758] - [mm] hmm: invalidate device page table at start of invalidation (Jerome Glisse) [1498655 1597758] - [mm] hmm: use a structure for update callback parameters (Jerome Glisse) [1498655 1597758] - [mm] hmm: properly handle migration pmd (Jerome Glisse) [1498655 1597758] - [mm] hmm: fix utf8 . (Jerome Glisse) [1498655 1597758] - [mm] hmm.c: remove unused variables align_start and align_end (Jerome Glisse) [1498655 1597758] - [hid] hyperv: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778 1772010] - [hid] logitech-hidpp: do all FF cleanup in hidpp_ff_destroy() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: rework device validation (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: split g920_get_config() (Benjamin Tissoires) [1740778] - [hid] fix error message in hid_open_report() (Benjamin Tissoires) [1740778] - [hid] Fix assumption that devices have inputs (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Trekstor Primebook C11B to descriptor override (Benjamin Tissoires) [1740778] - [hid] apple: Fix stuck function keys when using FN (Benjamin Tissoires) [1740778] - [hid] wacom: Fix several minor compiler warnings (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X500 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] hidraw: Fix invalid read in hidraw_ioctl (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix crash when initial logi_dj_recv_query_paired_devices fails (Benjamin Tissoires) [1740778] - [hid] logitech: Fix general protection fault caused by Logitech driver (Benjamin Tissoires) [1740778] - [hid] sony: Fix memory corruption issue on cleanup (Benjamin Tissoires) [1740778] - [hid] prodikeys: Fix general protection fault during probe (Benjamin Tissoires) [1740778] - [hid] wacom: correct misreported EKR ring values (Benjamin Tissoires) [1740778] - [hid] cp2112: prevent sleeping function called from invalid context (Benjamin Tissoires) [1740778] - [hid] wacom: Correct distance scale for 2nd-gen Intuos devices (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove support for the G700 over USB (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech-hidpp: add USB PID for a few more supported mice" (Benjamin Tissoires) [1740778] - [hid] sony: Fix race condition between rumble and device remove (Benjamin Tissoires) [1740778] - [hid] hiddev: do cleanup in failure of opening a device (Benjamin Tissoires) [1740778] - [hid] hiddev: avoid opening a disconnected device (Benjamin Tissoires) [1740778] - [hid] input: fix a4tech horizontal wheel custom usage (Benjamin Tissoires) [1740778] - [hid] Add quirk for HP X1200 PIXART OEM mouse (Benjamin Tissoires) [1740778] - [hid] holtek: test for sanity of intfdata (Benjamin Tissoires) [1740778] - [hid] wacom: fix bit shift for Cintiq Companion 2 (Benjamin Tissoires) [1740778] - [hid] quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Really fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [hid] Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add the Powerplay receiver (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add USB PID for a few more supported mice (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename "gaming" receiver to "lightspeed" (Benjamin Tissoires) [1740778] - [hid] Add another Primax PIXART OEM mouse quirk (Benjamin Tissoires) [1740778] - [hid] wacom: generic: add touchring adjustment for 2nd Gen Pro Small (Benjamin Tissoires) [1740778] - [hid] quirks: Refactor ELAN 400 and 401 handling (Benjamin Tissoires) [1740778] - [hid] video: fbdev: don't print error message on framebuffer_alloc() failure (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix forwarding of very long HID++ reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Huion HS64 tablet (Benjamin Tissoires) [1740778] - [hid] wacom: add new MobileStudio Pro support (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read the number of expected touches on a per collection basis (Benjamin Tissoires) [1740778] - [hid] wacom: generic: support the 'report valid' usage for touch (Benjamin Tissoires) [1740778] - [hid] wacom: generic: read HID_DG_CONTACTMAX from any feature report (Benjamin Tissoires) [1740778] - [hid] wacom: Add 2nd gen Intuos Pro Small support (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee Rainbow CV720 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix return value of logi_dj_recv_query_hidpp_devices (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 333 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 307 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 297 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 267 (Benjamin Tissoires) [1740778] - [hid] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 265 (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Fix 064d:c52f receiver support (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Call request_module before doing device_add" (Benjamin Tissoires) [1740778] - [hid] revert "hid: core: Do not call request_module() in async context" (Benjamin Tissoires) [1740778] - [hid] revert "hid: Increase maximum report size allowed by hid_field_extract()" (Benjamin Tissoires) [1740778] - [hid] a4tech: fix horizontal scrolling (Benjamin Tissoires) [1740778] - [hid] hyperv: Add a module description line (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 178 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: Add support for the S510 remote control (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: hid: make const array consumer_rdesc_start static (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make const array template static (Benjamin Tissoires) [1740778] - [hid] multitouch: handle faulty Elo touch device (Benjamin Tissoires) [1740778] - [input] treewide: Add SPDX license identifier for more missed files (Benjamin Tissoires) [1740778] - [hid] wacom: Sync INTUOSP2_BT touch state after each frame if necessary (Benjamin Tissoires) [1740778] - [hid] wacom: Correct button numbering 2nd-gen Intuos Pro over Bluetooth (Benjamin Tissoires) [1740778] - [hid] wacom: Send BTN_TOUCH in response to INTUOSP2_BT eraser contact (Benjamin Tissoires) [1740778] - [hid] wacom: Don't report anything prior to the tool entering range (Benjamin Tissoires) [1740778] - [hid] wacom: Don't set tool type until we're in range (Benjamin Tissoires) [1740778] - [hid] wacom: correct touch resolution x/y typo (Benjamin Tissoires) [1740778] - [hid] wacom: generic: Correct pad syncing (Benjamin Tissoires) [1740778] - [hid] wacom: generic: only switch the mode on devices with LEDs (Benjamin Tissoires) [1740778] - [hid] logitech-dj: Add usb-id for the 27MHz MX3000 receiver (Benjamin Tissoires) [1740778] - [hid] rmi: Use SET_REPORT request on control endpoint for Acer Switch 3 and 5 (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for the MX5500 keyboard (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the Logitech MX5500's Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add iBall Aer3 to descriptor override (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix spelling in printk (Benjamin Tissoires) [1740778] - [hid] input: add mapping for KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [hid] input: fix assignment of .value (Benjamin Tissoires) [1740778] - [hid] input: make sure the wheel high resolution multiplier is set (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add usbhid dependency in Kconfig (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 consumer keys reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 extra mouse buttons reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add support for HID++ 1.0 wheel reports (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make hidpp10_set_register_bit a bit more generic (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: add input_device ptr to struct hidpp_device (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not hardcode very long report length (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: handle devices attached to 27MHz wireless receivers (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: use RAP instead of FAP to get the protocol version (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove unused origin_is_hid_core function parameter (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove double assignment from __hidpp_send_report (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: do not make failure to get the name fatal (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: ignore very-short or empty names (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: make .probe usbhid capable (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: allow non HID++ devices to be handled by this module (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for Logitech Bluetooth Mini-Receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: make appending of the HID++ descriptors conditional (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove false-positive error on double queueing of delayed-work (Benjamin Tissoires) [1740778] - [hid] logitech-dj: pick a better name for non-unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: deal with some KVMs adding an extra interface to the usbdev (Benjamin Tissoires) [1740778] - [hid] logitech-dj: replace dev_err calls with hid_err calls (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz mouse-only receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for 27 MHz receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for the gaming unifying receiver (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add support for non unifying receivers (Benjamin Tissoires) [1740778] - [hid] logitech-dj: add logi_dj_recv_queue_unknown_work helper (Benjamin Tissoires) [1740778] - [hid] logitech-dj: support sharing struct dj_receiver_dev between USB-interfaces (Benjamin Tissoires) [1740778] - [hid] logitech-dj: rename dj_receiver_dev.hdev to dj_receiver_dev.hidpp (Benjamin Tissoires) [1740778] - [hid] logitech-dj: protect the paired_dj_devices access in add_djhid_dev with the lock (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove unused querying_devices variable (Benjamin Tissoires) [1740778] - [hid] logitech-dj: do not schedule the dj report itself (Benjamin Tissoires) [1740778] - [hid] logitech-dj: remove USB dependency (Benjamin Tissoires) [1740778] - [hid] logitech-dj: declare and use a few HID++ 1.0 constants (Benjamin Tissoires) [1740778] - [hid] logitech-dj: use BIT() macro for RF Report types (Benjamin Tissoires) [1740778] - [hid] logitech-dj: fix variable naming in logi_dj_hidpp_event (Benjamin Tissoires) [1740778] - [hid] logitech-dj: reshuffle logi_dj_recv_forward_* (Benjamin Tissoires) [1740778] - [hid] logitech: Stop setting drvdata to NULL on probe failure and remove (Benjamin Tissoires) [1740778] - [hid] quirks: do not blacklist Logitech devices (Benjamin Tissoires) [1740778] - [hid] u2fzero: fail probe if not using USB transport (Benjamin Tissoires) [1740778] - [hid] u2fzero: fix compiling error in u2fzero_probe() (Benjamin Tissoires) [1740778] - [hid] revert "hid: i2c-hid: Disable runtime PM on Synaptics touchpad" (Benjamin Tissoires) [1740778] - [hid] add driver for U2F Zero built-in LED and RNG (Benjamin Tissoires) [1740778] - [hid] core: Do not call request_module() in async context (Benjamin Tissoires) [1740778] - [hid] macally: Add support for Macally ikey keyboard (Benjamin Tissoires) [1740778] - [hid] core: Call request_module before doing device_add (Benjamin Tissoires) [1740778] - [hid] core: move Usage Page concatenation to Main item (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: change low battery level threshold from 31 to 30 percent (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: remove hidpp_is_connected() (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: simplify printing of HID++ version (Benjamin Tissoires) [1740778] - [hid] picolcd: Convert to use sysfs_streq() (Benjamin Tissoires) [1740778] - [hid] hid-sensor-custom: simplify getting .driver_data (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Assistant key (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Synaptics touchpad (Benjamin Tissoires) [1740778] - [hid] quirks: Fix keyboard + touchpad on Lenovo Miix 630 (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Toggle Display" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for "Full Screen" key (Benjamin Tissoires) [1740778] - [hid] input: add mapping for keyboard Brightness Up/Down/Toggle keys (Benjamin Tissoires) [1740778] - [hid] input: add mapping for Expose/Overview key (Benjamin Tissoires) [1740778] - [hid] input: fix mapping of aspect ratio key (Benjamin Tissoires) [1740778] - [hid] logitech: Handle 0 scroll events for the m560 (Benjamin Tissoires) [1740778] - [hid] debug: fix race condition with between rdesc_show() and device removal (Benjamin Tissoires) [1740778] - [hid] logitech: check the return value of create_singlethread_workqueue (Benjamin Tissoires) [1740778] - [hid] steam: fix deadlock with input devices (Benjamin Tissoires) [1740778] - [hid] uclogic: remove redudant duplicated null check on ver_ptr (Benjamin Tissoires) [1740778] - [hid] quirks: Drop misused kernel-doc annotation (Benjamin Tissoires) [1740778] - [hid] quirks: use correct format chars in dbg_hid (Benjamin Tissoires) [1740778] - [hid] Remove Waltop tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove KYE tablets from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] Remove hid-uclogic entries from hid_have_special_driver (Benjamin Tissoires) [1740778] - [hid] uclogic: Do not initialize non-USB devices (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee G5 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support Gray-coded rotary encoders (Benjamin Tissoires) [1740778] - [hid] uclogic: Support faking Wacom pad device ID (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Deco 01 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G640 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for XP-Pen Star G540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee EX07S frame controls (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee M540 (Benjamin Tissoires) [1740778] - [hid] uclogic: Add support for Ugee 2150 (Benjamin Tissoires) [1740778] - [hid] uclogic: Support v2 protocol (Benjamin Tissoires) [1740778] - [hid] uclogic: Support fragmented high-res reports (Benjamin Tissoires) [1740778] - [hid] uclogic: Support in-range reporting emulation (Benjamin Tissoires) [1740778] - [hid] uclogic: Designate current protocol v1 (Benjamin Tissoires) [1740778] - [hid] uclogic: Re-initialize tablets on resume (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract tablet parameter discovery into a module (Benjamin Tissoires) [1740778] - [hid] uclogic: Extract report descriptors to a module (Benjamin Tissoires) [1740778] - [hid] Clarify vendor ID reuse by Ugee tablets (Benjamin Tissoires) [1740778] - [hid] viewsonic: Support PD1011 signature pad (Benjamin Tissoires) [1740778] - [hid] kye: Add support for EasyPen M406XE (Benjamin Tissoires) [1740778] - [hid] wacom: Add support for Pro Pen slim (Benjamin Tissoires) [1740778] - [hid] roccat: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] wacom: Mark expected switch fall-through (Benjamin Tissoires) [1740778] - [hid] fix Logitech WingMan Formula GP joined axes (Benjamin Tissoires) [1740778] - [hid] multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons (Benjamin Tissoires) [1740778] - [hid] steam: fix boot loop with bluetooth firmware (Benjamin Tissoires) [1740778] - [hid] Add ASUS T100CHI keyboard dock battery quirks (Benjamin Tissoires) [1740778] - [hid] Add support for Toshiba WT10A tablet bluetooth keyboard (Benjamin Tissoires) [1740778] - [hid] wacom: Move HID fix for AES serial number into wacom_hid_usage_quirk (Benjamin Tissoires) [1740778] - [hid] elan: Make array buf static, shrinks object size (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Ignore input report if there's no data present on Elan touchpanels (Benjamin Tissoires) [1740778] - [hid] core: simplify active collection tracking (Benjamin Tissoires) [1740778] - [hid] Support for Maltron L90 keyboard media keys (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM on Goodix touchpad (Benjamin Tissoires) [1740778] - [hid] sony: Fix SHANWAN PS3 GamePad rumble and led settings support (Benjamin Tissoires) [1740778] - [hid] sony: Transform one-time SHANWAN check into quirk (Benjamin Tissoires) [1740778] - [hid] core: replace the collection tree pointers with indices (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add Odys Winbook 13 to descriptor override (Benjamin Tissoires) [1740778] - [hid] lenovo: Add checks to fix of_led_classdev_register (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: add MSI interrupt support (Benjamin Tissoires) [1740778] - [hid] debug: Change to use DEFINE_SHOW_ATTRIBUTE macro (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: fixes incorrect error handling (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] logitech-hidpp: fix typo, hiddpp to hidpp (Benjamin Tissoires) [1740778] - [hid] input: use the Resolution Multiplier for high-resolution scrolling (Benjamin Tissoires) [1740778] - [hid] core: process the Resolution Multiplier (Benjamin Tissoires) [1740778] - [hid] core: store the collections as a basic tree (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for Cougar 700K Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] hidraw: enforce minors_lock locking via lockdep (Benjamin Tissoires) [1740778] - [hid] quirks: fix RetroUSB.com devices (Benjamin Tissoires) [1740778] - [kernel] hid: input: support Microsoft wireless radio control hotkey (Benjamin Tissoires) [1740778] - [kernel] hid: use macros in IS_INPUT_APPLICATION (Benjamin Tissoires) [1740778] - [hid] ite: Add USB id match for another ITE based keyboard rfkill key quirk (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: Create a utility class for counting scroll events" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Add function to enable HID++ 1.0 "scrolling acceleration"" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Enable high-resolution scrolling on Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: Use LDJ_DEVICE macro for existing Logitech mice" (Benjamin Tissoires) [1740778] - [hid] revert "hid: logitech: fix a used uninitialized GCC warning" (Benjamin Tissoires) [1740778] - [hid] revert "hid: input: simplify/fix high-res scroll event handling" (Benjamin Tissoires) [1740778] - [hid] Add quirk for Primax PIXART OEM mice (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Disable runtime PM for LG touchscreen (Benjamin Tissoires) [1740778] - [hid] steam: remove input device when a hid client is running (Benjamin Tissoires) [1740778] - [hid] revert "hid: uhid: use strlcpy() instead of strncpy()" (Benjamin Tissoires) [1740778] - [hid] uhid: forbid UHID_CREATE under KERNEL_DS or elevated privileges (Benjamin Tissoires) [1740778] - [hid] iio/hid-sensors: Fix IIO_CHAN_INFO_RAW returning wrong values for signed numbers (Benjamin Tissoires) [1740778] - [hid] input: Ignore battery reported by Symbol DS4308 (Benjamin Tissoires) [1740778] - [hid] Add quirk for Microsoft PIXART OEM mouse (Benjamin Tissoires) [1740778] - [kernel] hid: fix up .raw_event() documentation (Benjamin Tissoires) [1740778] - [hid] i2c-hid: add Direkt-Tek DTLAPY133-1 to descriptor override (Benjamin Tissoires) [1740778] - [hid] input: simplify/fix high-res scroll event handling (Benjamin Tissoires) [1740778] - [hid] we do not randomly make new drivers 'default y' (Benjamin Tissoires) [1740778] - [hid] i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array (Benjamin Tissoires) [1740778] - [hid] alps: allow incoming reports when only the trackstick is opened (Benjamin Tissoires) [1740778] - [hid] revert "hid: add NOGET quirk for Eaton Ellipse MAX UPS" (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add a small delay after sleep command for Raydium touchpanel (Benjamin Tissoires) [1740778] - [hid] usbhid: Add quirk for Redragon/Dragonrise Seymur 2 (Benjamin Tissoires) [1740778] - [hid] wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452 (Benjamin Tissoires) [1740778] - [hid] google: add dependency on Cros EC for Hammer (Benjamin Tissoires) [1740778] - [hid] elan: fix spelling mistake "registred" -> "registered" (Benjamin Tissoires) [1740778] - [hid] google: drop superfluous const before SIMPLE_DEV_PM_OPS() (Benjamin Tissoires) [1740778] - [hid] google: add support tablet mode switch for Whiskers (Benjamin Tissoires) [1740778] - [hid] magicmouse: add support for Apple Magic Trackpad 2 (Benjamin Tissoires) [1740778] - [hid] i2c-hid: override HID descriptors for certain devices (Benjamin Tissoires) [1740778] - [hid] hid-bigbenff: driver for BigBen Interactive PS3OFMINIPAD gamepad (Benjamin Tissoires) [1740778] - [hid] logitech: fix a used uninitialized GCC warning (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: using list_head for ipc write queue (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: use resource-managed api (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: Enhance API to get ring buffer sizes (Benjamin Tissoires) [1740778] - [hid] input: Set INPUT_PROP_-property for HID_UP_DIGITIZERS (Benjamin Tissoires) [1740778] - [hid] microsoft: the driver now neeed MEMLESS_FF infrastructure (Benjamin Tissoires) [1740778] - [hid] cougar: Stop processing vendor events on hid-core (Benjamin Tissoires) [1740778] - [hid] cougar: Make parameter 'g6_is_space' dinamically settable (Benjamin Tissoires) [1740778] - [hid] microsoft: Add rumble support for Xbox One S controller (Benjamin Tissoires) [1740778] - [hid] microsoft: Convert private data to be a proper struct (Benjamin Tissoires) [1740778] - [hid] logitech: Use LDJ_DEVICE macro for existing Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Enable high-resolution scrolling on Logitech mice (Benjamin Tissoires) [1740778] - [hid] logitech: Add function to enable HID++ 1.0 "scrolling acceleration" (Benjamin Tissoires) [1740778] - [hid] input: Create a utility class for counting scroll events (Benjamin Tissoires) [1740778] - [hid] multitouch: simplify the application retrieval (Benjamin Tissoires) [1740778] - [hid] input: do not append a suffix if the name already has it (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling (Benjamin Tissoires) [1740778] - [hid] i2c-hid: disable runtime PM operations on hantick touchpad (Benjamin Tissoires) [1740778] - [hid] sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub report (Benjamin Tissoires) [1740778] - [hid] core: fix NULL pointer dereference (Benjamin Tissoires) [1740778] - [hid] hid-saitek: Add device ID for RAT 7 Contagion (Benjamin Tissoires) [1740778] - [hid] core: fix memory leak on probe (Benjamin Tissoires) [1740778] - [hid] add support for Apple Magic Keyboards (Benjamin Tissoires) [1740778] - [hid] intel_ish-hid: tx_buf memory leak on probe/remove (Benjamin Tissoires) [1740778] - [hid] intel-ish-hid: Prevent loading of driver on Mehlow (Benjamin Tissoires) [1740778] - [hid] cougar: Add support for the Cougar 500k Gaming Keyboard (Benjamin Tissoires) [1740778] - [hid] cougar: make compare_device_paths reusable (Benjamin Tissoires) [1740778] - [hid] multitouch: handle palm for touchscreens (Benjamin Tissoires) [1740778] - [hid] multitouch: touchscreens also use confidence reports (Benjamin Tissoires) [1740778] - [hid] multitouch: report MT_TOOL_PALM for non-confident touches (Benjamin Tissoires) [1740778] - [hid] microsoft: support the Surface Dial (Benjamin Tissoires) [1740778] - [hid] core: do not upper bound the collection stack (Benjamin Tissoires) [1740778] - [hid] input: enable Totem on the Dell Canvas 27 (Benjamin Tissoires) [1740778] - [hid] multitouch: remove one copy of values (Benjamin Tissoires) [1740778] - [hid] multitouch: ditch mt_report_id (Benjamin Tissoires) [1740778] - [hid] multitouch: store a per application quirks value (Benjamin Tissoires) [1740778] - [hid] multitouch: Store per collection multitouch data (Benjamin Tissoires) [1740778] - [hid] multitouch: make sure the static list of class is not changed (Benjamin Tissoires) [1740778] - [hid] elan: Add support for touchpad on the Toshiba Click Mini L9W (Benjamin Tissoires) [1740778] - [hid] elan: Add USB-id for HP x2 10-n000nd touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Add a flag for selecting if the touchpad has a LED (Benjamin Tissoires) [1740778] - [hid] elan: Query resolution from the touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Query device max_x and max_y value from touchpad (Benjamin Tissoires) [1740778] - [hid] elan: Hardcode finger-count and usb-interface (Benjamin Tissoires) [1740778] - [hid] elan: Correctly report MT_PRESSURE instead of TOOL_WIDTH (Benjamin Tissoires) [1740778] - [hid] elan: Stop claiming we have TOUCH_MAJOR and then never reporting it (Benjamin Tissoires) [1740778] - [hid] elan: Remove unused max_area_x and max_area_y vatiables (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sc->output_report_dmabuf (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_battery_probe() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_leds_init() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_sensors() (Benjamin Tissoires) [1740778] - [hid] hid-sony.c: Use devm_ api to simplify sony_register_touchpad() (Benjamin Tissoires) [1740778] - [hid] wacom: convert Wacom custom usages to standard HID usages (Benjamin Tissoires) [1740778] - [hid] wacom: Move handling of HID quirks into a dedicated function (Benjamin Tissoires) [1740778] - [hid] wacom: Replace touch_max fixup code with static touch_max definitions (Benjamin Tissoires) [1740778] - [hid] wiimote: add support for Guitar-Hero devices (Benjamin Tissoires) [1740778] - [hid] usbhid: use irqsave() in USB's complete callback (Benjamin Tissoires) [1740778] - [hid] redragon: fix num lock and caps lock LEDs (Benjamin Tissoires) [1740778] - [hid] hid-ntrig: add error handling for sysfs_create_group (Benjamin Tissoires) [1740778] - [hid] i2c-hid: Add vddl regulator control (Benjamin Tissoires) [1740778] - [uapi] input: document meanings of KEY_SCREEN and KEY_ZOOM (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - avoid processing unknown IRQs (Benjamin Tissoires) [1740778] - [input] revert "input: elantech - enable SMBus on new (2018+) systems" (Benjamin Tissoires) [1740778] - [input] elantech - annotate fall-through case in elantech_use_host_notify() (Benjamin Tissoires) [1740778] - [samples] treewide: Add SPDX license identifier - Makefile/Kconfig (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - remove Lenovo Legion Y7000 PnpID (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI mode for HP Spectre X360 (Benjamin Tissoires) [1740778] - [input] elantech - enable SMBus on new (2018+) systems (Benjamin Tissoires) [1740778] - [input] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Benjamin Tissoires) [1740778] - [kernel] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard: Use in-place iterator API in the channel callback (Benjamin Tissoires) [1740778] - [input] usbtouchscreen - initialize PM mutex before using it (Benjamin Tissoires) [1740778] - [input] alps - fix a mismatch between a condition check and its comment (Benjamin Tissoires) [1740778] - [input] psmouse - fix build error of multiple definition (Benjamin Tissoires) [1740778] - [input] alps - don't handle ALPS cs19 trackpoint-only device (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - remove dependencies on PAGE_SIZE for ring buffer (Benjamin Tissoires) [1740778] - [input] synaptics - fix misuse of strlcpy (Benjamin Tissoires) [1740778] - [input] synaptics - whitelist Lenovo T580 SMBus intertouch (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBUS on T480 thinkpad trackpad (Benjamin Tissoires) [1740778] - [input] joydev - extend absolute mouse detection (Benjamin Tissoires) [1740778] - [kernel] input: elan_i2c - export the device id whitelist (Benjamin Tissoires) [1740778] - [kernel] pm: suspend: Rename pm_suspend_via_s2idle() (Benjamin Tissoires) [1740778] - [kernel] pm: sleep: Add kerneldoc comments to some functions (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus on ThinkPad E480 and E580 (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - remove set but not used variable 'sensor_flags' (Benjamin Tissoires) [1740778] - [input] uinput - add compat ioctl number translation for UI_*_FF_UPLOAD (Benjamin Tissoires) [1740778] - [input] libps2 - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - write config register values to the right offset (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix enum_fmt (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fill initial format (Benjamin Tissoires) [1740778] - [uapi] input: add KEY_KBD_LAYOUT_NEXT (Benjamin Tissoires) [1740778] - [input] synaptics-rmi4 - fix possible double free (Benjamin Tissoires) [1740778] - [input] hyperv-keyboard - add module description (Benjamin Tissoires) [1740778] - [input] i8042 - signal wakeup from atkbd/psmouse (Benjamin Tissoires) [1740778] - [input] evdev - use struct_size() in kzalloc() and vzalloc() (Benjamin Tissoires) [1740778] - [input] elan_i2c - add hardware ID for multiple Lenovo laptops (Benjamin Tissoires) [1740778] - [input] wacom_serial4 - add support for Wacom ArtPad II tablet (Benjamin Tissoires) [1740778] - [input] elan_i2c - add id for touchpad found in Lenovo s21e-20 (Benjamin Tissoires) [1740778] - [input] i8042 - rework DT node name comparisons (Benjamin Tissoires) [1740778] - [input] synaptics_i2c - remove redundant spinlock (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK (Benjamin Tissoires) [1740778] - [input] revert "input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G" (Benjamin Tissoires) [1740778] - [input] elantech - enable 3rd button support on Fujitsu CELSIUS H780 (Benjamin Tissoires) [1740778] - [uapi] input: input_event - fix the CONFIG_SPARC64 mixup (Benjamin Tissoires) [1740778] - [input] uinput - fix undefined behavior in uinput_validate_absinfo() (Benjamin Tissoires) [1740778] - [uapi] input: input_event - provide override for sparc64 (Benjamin Tissoires) [1740778] - [input] soc_button_array - fix mapping of the 5th GPIO in a PNP0C40 device (Benjamin Tissoires) [1740778] - [input] soc_button_array - add usage-page 0x01 usage-id 0xca mapping (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for touchpad in ASUS Aspire F5-573G (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP EliteBook 840 G4 (Benjamin Tissoires) [1740778] - [input] synaptics - enable RMI on ThinkPad T560 (Benjamin Tissoires) [1740778] - [documentation] input: add `REL_WHEEL_HI_RES` and `REL_HWHEEL_HI_RES` (Benjamin Tissoires) [1740778] - [uapi] input: restore EV_ABS ABS_RESERVED (Benjamin Tissoires) [1740778] - [input] synaptics - enable SMBus for HP 15-ay000 (Benjamin Tissoires) [1740778] - [input] synaptics - add PNP ID for ThinkPad P50 to SMBus (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15ARR (Benjamin Tissoires) [1740778] - [input] elan_i2c - add support for ELAN0621 touchpad (Benjamin Tissoires) [1740778] - [documentation] revert "input: Add the `REL_WHEEL_HI_RES` event code" (Benjamin Tissoires) [1740778] - [input] atkbd - clean up indentation issue (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ELAN0620 to the ACPI table (Benjamin Tissoires) [1740778] - [input] synaptics - avoid using uninitialized variable when probing (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - mark expected switch fall-through (Benjamin Tissoires) [1740778] - [input] elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM (Benjamin Tissoires) [1740778] - [input] of_touchscreen - add support for touchscreen-min-x|y (Benjamin Tissoires) [1740778] - [input] elants_i2c - use DMA safe i2c when possible (Benjamin Tissoires) [1740778] - [input] uinput - add a schedule point in uinput_inject_events() (Benjamin Tissoires) [1740778] - [input] evdev - add a schedule point in evdev_write() (Benjamin Tissoires) [1740778] - [input] mousedev - add a schedule point in mousedev_write() (Benjamin Tissoires) [1740778] - [uapi] input: reserve 2 events code because of HID (Benjamin Tissoires) [1740778] - [input] i8042 - enable keyboard wakeups by default when s2idle is used (Benjamin Tissoires) [1740778] - [input] uinput - allow for max == min during input_absinfo validation (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari CapsLock behaviour (Benjamin Tissoires) [1740778] - [input] atakbd - fix Atari keymap (Benjamin Tissoires) [1740778] - [documentation] input: Add the `REL_WHEEL_HI_RES` event code (Benjamin Tissoires) [1740778] - [input] mark expected switch fall-throughs (Benjamin Tissoires) [1740778] - [input] evdev - switch to bitmap API (Benjamin Tissoires) [1740778] - [input] elan_i2c_smbus - cast sizeof to int for comparison (Benjamin Tissoires) [1740778] - [uapi] input: stop telling users to snail-mail Vojtech (Benjamin Tissoires) [1740778] - [documentation] input: add MT_TOOL_DIAL (Benjamin Tissoires) [1740778] - [input] i8042 - increment wakeup_count for the respective port (Benjamin Tissoires) [1740778] - [input] xen-kbdfront - allow better run-time configuration (Benjamin Tissoires) [1740778] - [xen] Sync up with the canonical protocol definitions in Xen (Benjamin Tissoires) [1740778] - [cpufreq] dev_pm_qos_update_request() can return 1 on success (Al Stone) [1739729 1725581] - [cpufreq] Make cpufreq_generic_init() return void (Al Stone) [1739729 1725581] - [cpufreq] Add QoS requests for userspace constraints (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Reuse refresh_frequency_limits() (Al Stone) [1739729 1725581] - [cpufreq] Register notifiers with the PM QoS framework (Al Stone) [1739729 1725581] - [base] pm / qos: Add support for MIN/MAX frequency constraints (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Rename __dev_pm_qos_read_value() and dev_pm_qos_raw_read_value() (Al Stone) [1739729 1725581] - [base] pm / qos: Pass request type to dev_pm_qos_{add|remove}_notifier() (Al Stone) [1739729 1725581] - [cpufreq] Avoid calling cpufreq_verify_current_freq() from handle_update() (Al Stone) [1739729 1725581] - [cpufreq] Consolidate cpufreq_update_current_freq() and __cpufreq_get() (Al Stone) [1739729 1725581] - [cpufreq] Don't skip frequency validation for has_target() drivers (Al Stone) [1739729 1725581] - [cpufreq] Use has_target() instead of !setpolicy (Al Stone) [1739729 1725581] - [cpufreq] Remove redundant !setpolicy check (Al Stone) [1739729 1725581] - [kernel] cpufreq: Move the IS_ENABLED(CPU_THERMAL) macro into a stub (Al Stone) [1739729 1725581] - [opp] Don't use IS_ERR on invalid supplies (Al Stone) [1739729 1725581] - [kernel] pm: sleep: Update struct wakeup_source documentation (Al Stone) [1739729 1725581] - [base] base: power: remove wakeup_sources_stats_dentry variable (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Fail initialization if driver cannot be registered (Al Stone) [1739729 1725581] - [opp] Make dev_pm_opp_set_rate() handle freq = 0 to drop performance votes (Al Stone) [1739729 1725581] - [opp] Don't overwrite rounded clk rate (Al Stone) [1739729 1725581] - [base] pm: sleep: Show how long dpm_suspend_start() and dpm_suspend_end() take (Al Stone) [1739729 1725581] - [base] pm / clk: Remove error message on out-of-memory condition (Al Stone) [1739729 1725581] - [base] base: power: clock_ops: Use of_clk_get_parent_count() (Al Stone) [1739729 1725581] - [opp] Allocate genpd_virt_devs from dev_pm_opp_attach_genpd() (Al Stone) [1739729 1725581] - [opp] Attach genpds to devices from within OPP core (Al Stone) [1739729 1725581] - [base] pm / domains: Add GENPD_FLAG_RPM_ALWAYS_ON flag (Al Stone) [1739729 1725581] - [cpufreq] Don't find governor for setpolicy drivers in cpufreq_init_policy() (Al Stone) [1739729 1725581] - [cpufreq] Explain the kobject_put() in cpufreq_policy_alloc() (Al Stone) [1739729 1725581] - [x86] cpufreq: Call transition notifier only once for each policy (Al Stone) [1739729 1725581] - [cpufreq] Fix kobject memleak (Al Stone) [1739729 1725581] - [cpufreq] centrino: Fix centrino_setpolicy() kerneldoc comment (Al Stone) [1739729 1725581] - [base] pm / domains: Allow to attach a CPU via genpd_dev_pm_attach_by_id|name() (Al Stone) [1739729 1725581] - [base] pm / domains: Search for the CPU device outside the genpd lock (Al Stone) [1739729 1725581] - [base] pm / domains: Drop unused in-parameter to some genpd functions (Al Stone) [1739729 1725581] - [base] pm / domains: Use the base device for driver_deferred_probe_check_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Enable genpd_dev_pm_attach_by_id|name() for single PM domain (Al Stone) [1739729 1725581] - [base] pm / domains: Allow OF lookup for multi PM domain case from ->attach_dev() (Al Stone) [1739729 1725581] - [base] pm / domains: Don't kfree() the virtual device in the error path (Al Stone) [1739729 1725581] - [cpufreq] Move ->get callback check outside of __cpufreq_get() (Al Stone) [1739729 1725581] - [x86] tsc: Rework time_cpufreq_notifier() (Al Stone) [1739729 1725581] - [x86] tsc: Fix UV TSC initialization (Al Stone) [1739729 1725581] - [x86] tsc: Prevent result truncation on 32bit (Al Stone) [1739729 1725581] - [x86] tsc: Consolidate init code (Al Stone) [1739729 1725581] - [x86] tsc: Make use of tsc_calibrate_cpu_early() (Al Stone) [1739729 1725581] - [x86] tsc: Split native_calibrate_cpu() into early and late parts (Al Stone) [1739729 1725581] - [x86] tsc: Use TSC as sched clock early (Al Stone) [1739729 1725581] - [x86] tsc: Initialize cyc2ns when tsc frequency is determined (Al Stone) [1739729 1725581] - [x86] tsc: Calibrate tsc only once (Al Stone) [1739729 1725581] - [x86] tsc: Redefine notsc to behave as tsc=unstable (Al Stone) [1739729 1725581] - [x86] platform/uv: Provide is_early_uv_system() (Al Stone) [1739729 1725581] - [base] pm / domains: remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [cpufreq] Remove needless bios_limit check in show_bios_limit() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq/acpi-cpufreq.c: This fixes the following checkpatch warning (Al Stone) [1739729 1725581] - [base] pm / core: Propagate dev->power.wakeup_path when no callbacks (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd governor for CPUs (Al Stone) [1739729 1725581] - [cpuidle] Export the next timer expiration for CPUs (Al Stone) [1739729 1725581] - [base] pm / core: Introduce dpm_async_fn() helper (Al Stone) [1739729 1725581] - [cpufreq] boost: Remove CONFIG_CPU_FREQ_BOOST_SW Kconfig option (Al Stone) [1739729 1725581] - [opp] Introduce dev_pm_opp_find_freq_ceil_by_volt() (Al Stone) [1739729 1725581] - [base] pm / domains: Add support for CPU devices to genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Add generic data pointer to struct genpd_power_state (Al Stone) [1739729 1725581] - [cpufreq] rhel: cpufreq: switch printk users from pf and pF to ps and pS, respectively (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for device_pm_wait_for_dev() (Al Stone) [1739729 1725581] - [base] pm / core: fix kerneldoc comment for dpm_watchdog_handler() (Al Stone) [1739729 1725581] - [cpufreq] stats: Use lock by stat to replace global spin lock (Al Stone) [1739729 1725581] - [cpufreq] Remove cpufreq_driver check in cpufreq_boost_supported() (Al Stone) [1739729 1725581] - [cpufreq] ppc_cbe: fix possible object reference leak (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: Convert some slow-path static_cpu_has() callers to boot_cpu_has() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Update max frequency on global turbo changes (Al Stone) [1739729 1725581] - [base] pm / wakeup: Use pm_pr_dbg() instead of pr_debug() (Al Stone) [1739729 1725581] - [cpufreq] Add cpufreq_cpu_acquire() and cpufreq_cpu_release() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Driver-specific handling of _PPC updates (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Load only on Intel hardware (Al Stone) [1739729 1725581] - [cpufreq] scpi: Fix use after free (Al Stone) [1739729 1725581] - [base] pm / domains: Avoid a potential deadlock (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix up iowait_boost computation (Al Stone) [1739729 1725581] - [opp] pm / opp: Update performance state when freq == old_freq (Al Stone) [1739729 1725581] - [base] pm / wakeup: Drop wakeup_source_drop() (Al Stone) [1739729 1725581] - [base] pm / wakeup: Rework wakeup source timer cancellation (Al Stone) [1739729 1725581] - [base] pm / domains: Remove one unnecessary blank line (Al Stone) [1739729 1725581] - [base] pm / domains: Return early for all errors in _genpd_power_off() (Al Stone) [1739729 1725581] - [base] pm / domains: Improve warn for multiple states but no governor (Al Stone) [1739729 1725581] - [opp] Fix handling of multiple power domains (Al Stone) [1739729 1725581] - [base] pm / qos: Fix typo in file description (Al Stone) [1739729 1725581] - [base] pm-runtime: Call pm_runtime_active|suspended_time() from sysfs (Al Stone) [1739729 1725581] - [base] pm-runtime: Consolidate code to get active/suspended time (Al Stone) [1739729 1725581] - [base] pm: Add and use pr_fmt() (Al Stone) [1739729 1725581] - [cpufreq] Improve kerneldoc comments for cpufreq_cpu_get/put() (Al Stone) [1739729 1725581] - [cpufreq] acpi-cpufreq: Report if CPU doesn't support boost technologies (Al Stone) [1739729 1725581] - [base] driver core: Fix PM-runtime for links added during consumer probe (Al Stone) [1739729 1725581] - [cpufreq] Pass updated policy to driver ->setpolicy() callback (Al Stone) [1739729 1725581] - [cpufreq] Fix two debug messages in cpufreq_set_policy() (Al Stone) [1739729 1725581] - [cpufreq] Reorder and simplify cpufreq_update_policy() (Al Stone) [1739729 1725581] - [cpufreq] Add kerneldoc comments for two core functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix use-after-free in scmi_cpufreq_exit() (Al Stone) [1739729 1725581] - [kernel] pm / core: Add support to skip power management in device/driver model (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Rework iowait boosting to be less aggressive (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Eliminate intel_pstate_get_base_pstate() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Avoid redundant initialization of local vars (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Work around for Hisilicon CPPC cpufreq (Al Stone) [1739729 1725581] - [cpufreq] speedstep: convert BUG() to BUG_ON() (Al Stone) [1739729 1725581] - [cpufreq] powernv: fix missing check of return value in init_powernv_pstates() (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: remove unneeded semicolon (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [kernel] pm / domains: Mark "name" const in genpd_dev_pm_attach_by_name() (Al Stone) [1739729 1725581] - [cpufreq] Replace double NOT (!!) with single NOT (!) (Al Stone) [1739729 1725581] - [base] pm / suspend: Print debug messages for device using direct-complete (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Add reasons for failure and debug messages (Al Stone) [1739729 1725581] - [base] driver core: Fix possible supplier PM-usage counter imbalance (Al Stone) [1739729 1725581] - [base] pm-runtime: Fix __pm_runtime_set_status() race with runtime resume (Al Stone) [1739729 1725581] - [cpufreq] dt: Implement online/offline() callbacks (Al Stone) [1739729 1725581] - [cpufreq] Allow light-weight tear down and bring up of CPUs (Al Stone) [1739729 1725581] - [base] pm-runtime: Take suppliers into account in __pm_runtime_set_status() (Al Stone) [1739729 1725581] - [opp] no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [cpufreq] scmi: Register an Energy Model (Al Stone) [1739729 1725581] - [opp] pm / opp: Introduce a power estimation helper (Al Stone) [1739729 1725581] - [opp] pm / opp: Remove unused parameter of _generic_set_opp_clk_only() (Al Stone) [1739729 1725581] - [cpufreq] scpi: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] dt: Register an Energy Model (Al Stone) [1739729 1725581] - [cpufreq] stats: Fix concurrency issues while resetting stats (Al Stone) [1739729 1725581] - [cpufreq] stats: Declare freq-attr right after their callbacks (Al Stone) [1739729 1725581] - [base] driver core: Do not call rpm_put_suppliers() in pm_runtime_drop_link() (Al Stone) [1739729 1725581] - [base] driver core: Fix handling of runtime PM flags in device_link_add() (Al Stone) [1739729 1725581] - [base] driver core: Do not resume suppliers under device_links_write_lock() (Al Stone) [1739729 1725581] - [base] driver core: Avoid careless re-use of existing device links (Al Stone) [1739729 1725581] - [base] driver core: Fix DL_FLAG_AUTOREMOVE_SUPPLIER device link flag handling (Al Stone) [1739729 1725581] - [base] driver core: Add flag to autoremove device link on supplier unbind (Al Stone) [1739729 1725581] - [base] driver core: Rename flag AUTOREMOVE to AUTOREMOVE_CONSUMER (Al Stone) [1739729 1725581] - [base] pm-runtime: update accounting_timestamp on enable (Al Stone) [1739729 1725581] - [cpufreq] scpi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] scmi: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] cpufreq-dt: Use auto-registration of thermal cooling device (Al Stone) [1739729 1725581] - [cpufreq] Auto-register the driver as a thermal cooling device if asked (Al Stone) [1739729 1725581] - [cpufreq] thermal: cpu_cooling: Require thermal core to be compiled in (Al Stone) [1739729 1725581] - [cpufreq] Use struct kobj_attribute instead of struct global_attr (Al Stone) [1739729 1725581] - [base] pm / wakeup: fix kerneldoc comment for pm_wakeup_dev_event() (Al Stone) [1739729 1725581] - [base] pm: domains: no need to check return value of debugfs_create functions (Al Stone) [1739729 1725581] - [opp] Add support for parsing the 'opp-level' property (Al Stone) [1739729 1725581] - [kernel] cpufreq: Replace open-coded << with BIT() (Al Stone) [1739729 1725581] - [base] pm: clock_ops: fix missing clk_prepare() return value check (Al Stone) [1739729 1725581] - [cpufreq] e_powersaver: Use struct_size() in kzalloc() (Al Stone) [1739729 1725581] - [cpufreq] Don't update new_policy on failures (Al Stone) [1739729 1725581] - [cpufreq] scmi: Fix frequency invariance in slow path (Al Stone) [1739729 1725581] - [cpufreq] check if policy is inactive early in __cpufreq_get() (Al Stone) [1739729 1725581] - [opp] cpufreq: scpi/scmi: Fix freeing of dynamic OPPs (Al Stone) [1739729 1725581] - [base] pm: sleep: call devfreq suspend/resume (Al Stone) [1739729 1725581] - [devfreq] pm / devfreq: add devfreq_suspend/resume() functions (Al Stone) [1739729 1725581] - [base] pm / domains: remove define_genpd_open_function() and define_genpd_debugfs_fops() (Al Stone) [1739729 1725581] - [base] pm / domains: Propagate performance state updates (Al Stone) [1739729 1725581] - [base] pm / domains: Factorize dev_pm_genpd_set_performance_state() (Al Stone) [1739729 1725581] - [base] pm / domains: Save OPP table pointer in genpd (Al Stone) [1739729 1725581] - [opp] Don't return 0 on error from of_get_required_opp_performance_state() (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_xlate_performance_state() helper (Al Stone) [1739729 1725581] - [opp] Improve _find_table_of_opp_np() (Al Stone) [1739729 1725581] - [base] pm / domains: Make genpd performance states orthogonal to the idlestates (Al Stone) [1739729 1725581] - [opp] Fix missing debugfs supply directory for OPPs (Al Stone) [1739729 1725581] - [opp] Use opp_table->regulators to verify no regulator case (Al Stone) [1739729 1725581] - [base] pm: Switch to use ptR (Al Stone) [1739729 1725581] - [cpufreq] powernv: add of_node_put() (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Force HWP min perf before offline (Al Stone) [1739729 1725581] - [cpufreq] cpufreq: change CONFIG_6xx to CONFIG_PPC_BOOK3S_32 (Al Stone) [1739729 1725581] - [opp] Fix parsing of multiple phandles in "operating-points-v2" property (Al Stone) [1739729 1725581] - [opp] Remove of_dev_pm_opp_find_required_opp() (Al Stone) [1739729 1725581] - [base] opp: Rename and relocate of_genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Configure all required OPPs (Al Stone) [1739729 1725581] - [opp] Add dev_pm_opp_{set|put}_genpd_virt_dev() helper (Al Stone) [1739729 1725581] - [base] pm / domains: Add genpd_opp_to_performance_state() (Al Stone) [1739729 1725581] - [opp] Populate OPPs from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Populate required opp tables from "required-opps" property (Al Stone) [1739729 1725581] - [opp] Separate out custom OPP handler specific code (Al Stone) [1739729 1725581] - [opp] Identify and mark genpd OPP tables (Al Stone) [1739729 1725581] - [base] pm / domains: Rename genpd virtual devices as virt_dev (Al Stone) [1739729 1725581] - [cpufreq] remove unused arm_big_little_dt driver (Al Stone) [1739729 1725581] - [cpufreq] drop ARM_BIG_LITTLE_CPUFREQ support for ARM64 (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: Fix compilation for !CONFIG_ACPI (Al Stone) [1739729 1725581] - [base] pm / domains: Deal with multiple states but no governor in genpd (Al Stone) [1739729 1725581] - [base] pm / domains: Don't treat zero found compatible idle states as an error (Al Stone) [1739729 1725581] - [cpufreq] conservative: Take limits changes into account properly (Al Stone) [1739729 1725581] - [opp] pm / opp: _of_add_opp_table_v2(): increment count only if OPP is added (Al Stone) [1739729 1725581] - [cpufreq] dt: Try freeing static OPPs only if we have added them (Al Stone) [1739729 1725581] - [opp] Return error on error from dev_pm_opp_get_opp_count() (Al Stone) [1739729 1725581] - [opp] Improve error handling in dev_pm_opp_of_cpumask_add_table() (Al Stone) [1739729 1725581] - [cpufreq] cpufreq / cppc: Mark acpi_ids as used (Al Stone) [1739729 1725581] - [opp] Pass OPP table to _of_add_opp_table_v{1|2}() (Al Stone) [1739729 1725581] - [opp] Prevent creating multiple OPP tables for devices sharing OPP nodes (Al Stone) [1739729 1725581] - [opp] Use a single mechanism to free the OPP table (Al Stone) [1739729 1725581] - [opp] Don't remove dynamic OPPs from _dev_pm_opp_remove_table() (Al Stone) [1739729 1725581] - [opp] Create separate kref for static OPPs list (Al Stone) [1739729 1725581] - [opp] Don't take OPP table's kref for static OPPs (Al Stone) [1739729 1725581] - [opp] Parse OPP table's DT properties from _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Pass index to _of_init_opp_table() (Al Stone) [1739729 1725581] - [opp] Protect dev_list with opp_table lock (Al Stone) [1739729 1725581] - [opp] Don't try to remove all OPP tables on failure (Al Stone) [1739729 1725581] - [opp] Free OPP table properly on performance state irregularities (Al Stone) [1739729 1725581] - [cpufreq] Convert to using pOFn instead of device_node.name (Al Stone) [1739729 1725581] - [cpufreq] remove unnecessary unlikely() (Al Stone) [1739729 1725581] - [base] pm / clk: signedness bug in of_pm_clk_add_clks() (Al Stone) [1739729 1725581] - [trace] cpufreq: trace frequency limits change (Al Stone) [1739729 1725581] - [cpufreq] pcc-cpufreq: Disable dynamic scaling on many-CPU systems (Al Stone) [1739729 1725581] - [base] pm / domains: Stop deferring probe at the end of initcall (Al Stone) [1739729 1725581] - [base] driver: core: Allow subsystems to continue deferring probe (Al Stone) [1739729 1725581] - [base] driver core: allow stopping deferred probe after init (Al Stone) [1739729 1725581] - [base] driver core: add a debugfs entry to show deferred devices (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce dev_pm_domain_attach_by_name() (Al Stone) [1739729 1725581] - [base] pm / domains: Introduce option to attach a device by name to genpd (Al Stone) [1739729 1725581] - [cpufreq] intel_pstate: use match_string() helper (Al Stone) [1739729 1725581] - [fs] ceph: use ceph_evict_inode to cleanup inode's resource (Jeff Layton) [1767959] - [fs] ceph: return -EINVAL if given fsc mount option on kernel w/o support (Jeff Layton) [1767959] - [fs] ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open (Jeff Layton) [1767959] - [fs] ceph: add missing check in d_revalidate snapdir handling (Jeff Layton) [1767959] - [fs] ceph: fix RCU case handling in ceph_d_revalidate() (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free in __ceph_remove_cap() (Jeff Layton) [1767959] - [block] rbd: cancel lock_dwork if the wait is interrupted (Jeff Layton) [1767959] - [fs] ceph: just skip unrecognized info in ceph_reply_info_extra (Jeff Layton) [1767959] - [fs] ceph: call ceph_mdsc_destroy from destroy_fs_client (Jeff Layton) [1767959] - [net] libceph: use ceph_kvmalloc() for osdmap arrays (Jeff Layton) [1767959] - [net] libceph: avoid a __vmalloc() deadlock in ceph_kvmalloc() (Jeff Layton) [1767959] - [fs] ceph: include ceph_debug.h in cache.c (Jeff Layton) [1767959] - [fs] ceph: move static keyword to the front of declarations (Jeff Layton) [1767959] - [block] rbd: pull rbd_img_request_create() dout out into the callers (Jeff Layton) [1767959] - [fs] ceph: reconnect connection if session hang in opening state (Jeff Layton) [1767959] - [net] libceph: drop unused con parameter of calc_target() (Jeff Layton) [1767959] - [fs] ceph: use release_pages() directly (Jeff Layton) [1767959] - [block] rbd: fix response length parameter for encoded strings (Jeff Layton) [1767959] - [fs] ceph: allow arbitrary security.* xattrs (Jeff Layton) [1767959] - [fs] ceph: only set CEPH_I_SEC_INITED if we got a MAC label (Jeff Layton) [1767959] - [fs] ceph: turn ceph_security_invalidate_secctx into static inline (Jeff Layton) [1767959] - [fs] ceph: add buffered/direct exclusionary locking for reads and writes (Jeff Layton) [1767959] - [net] libceph: handle OSD op ceph_pagelist_append() errors (Jeff Layton) [1767959] - [fs] ceph: don't return a value from void function (Jeff Layton) [1767959] - [fs] ceph: don't freeze during write page faults (Jeff Layton) [1767959] - [fs] ceph: update the mtime when truncating up (Jeff Layton) [1767959] - [fs] ceph: fix indentation in __get_snap_name() (Jeff Layton) [1767959] - [fs] ceph: remove incorrect comment above __send_cap (Jeff Layton) [1767959] - [fs] ceph: remove CEPH_I_NOFLUSH (Jeff Layton) [1767959] - [fs] ceph: remove unneeded test in try_flush_caps (Jeff Layton) [1767959] - [fs] ceph: have __mark_caps_flushing return flush_tid (Jeff Layton) [1767959] - [fs] ceph: fix comments over ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: eliminate session->s_trim_caps (Jeff Layton) [1767959] - [fs] ceph: fetch cap_gen under spinlock in ceph_add_cap (Jeff Layton) [1767959] - [fs] ceph: remove ceph_get_cap_mds and __ceph_get_cap_mds (Jeff Layton) [1767959] - [fs] ceph: don't SetPageError on writepage errors (Jeff Layton) [1767959] - [fs] ceph: auto reconnect after blacklisted (Jeff Layton) [1767959] - [fs] ceph: invalidate all write mode filp after reconnect (Jeff Layton) [1767959] - [fs] ceph: return -EIO if read/write against filp that lost file locks (Jeff Layton) [1767959] - [fs] ceph: add helper function that forcibly reconnects to ceph cluster (Jeff Layton) [1767959] - [fs] ceph: pass filp to ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: track and report error of async metadata operation (Jeff Layton) [1767959] - [fs] ceph: allow closing session in restarting/reconnect state (Jeff Layton) [1767959] - [net] libceph: add function that clears osd client's abort_err (Jeff Layton) [1767959] - [net] libceph: add function that reset client's entity addr (Jeff Layton) [1767959] - [fs] ceph: don't list vxattrs in listxattr() (Jeff Layton) [1767959] - [fs] ceph: fix directories inode i_blkbits initialization (Jeff Layton) [1767959] - [block] rbd: restore zeroing past the overlap when reading from parent (Jeff Layton) [1767959] - [net] libceph: don't call crypto_free_sync_skcipher() on a NULL tfm (Jeff Layton) [1767959] - [net] libceph: fix PG split vs OSD (re)connect race (Jeff Layton) [1767959] - [fs] ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply (Jeff Layton) [1767959] - [fs] ceph: clear page dirty before invalidate page (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in fill_inode() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_build_xattrs_blob() (Jeff Layton) [1767959] - [fs] ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr() (Jeff Layton) [1767959] - [kernel] libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer (Jeff Layton) [1767959] - [fs] ceph: fix end offset in truncate_inode_pages_range call (Jeff Layton) [1767959] - [fs] ceph: initialize superblock s_time_gran to 1 (Jeff Layton) [1767959] - [block] rbd: setallochint only if object doesn't exist (Jeff Layton) [1767959] - [block] rbd: support for object-map and fast-diff (Jeff Layton) [1767959] - [block] rbd: call rbd_dev_mapping_set() from rbd_dev_image_probe() (Jeff Layton) [1767959] - [net] libceph: export osd_req_op_data() macro (Jeff Layton) [1767959] - [net] libceph: change ceph_osdc_call() to take page vector for response (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (again) (Jeff Layton) [1767959] - [block] rbd: new exclusive lock wait/wake code (Jeff Layton) [1767959] - [block] rbd: quiescing lock should wait for image requests (Jeff Layton) [1767959] - [block] rbd: lock should be quiesced on reacquire (Jeff Layton) [1767959] - [block] rbd: introduce copyup state machine (Jeff Layton) [1767959] - [block] rbd: rename rbd_obj_setup_*() to rbd_obj_init_*() (Jeff Layton) [1767959] - [block] rbd: move OSD request allocation into object request state machines (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_setup_discard_ops() (Jeff Layton) [1767959] - [block] rbd: factor out rbd_osd_setup_copyup() (Jeff Layton) [1767959] - [block] rbd: introduce obj_req->osd_reqs list (Jeff Layton) [1767959] - [fs] libceph: rename r_unsafe_item to r_private_item (Jeff Layton) [1767959] - [block] rbd: introduce image request state machine (Jeff Layton) [1767959] - [block] rbd: move OSD request submission into object request state machines (Jeff Layton) [1767959] - [block] rbd: get rid of RBD_OBJ_WRITE_{FLAT, GUARD} (Jeff Layton) [1767959] - [block] rbd: replace obj_req->tried_parent with obj_req->read_state (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->xferred, obj_req->result and img_req->xferred (Jeff Layton) [1767959] - [fs] ceph: don't NULL terminate virtual xattrs (Jeff Layton) [1767959] - [fs] ceph: return -ERANGE if virtual xattr value didn't fit in buffer (Jeff Layton) [1767959] - [fs] ceph: make getxattr_cb return ssize_t (Jeff Layton) [1767959] - [fs] ceph: more precise CEPH_CLIENT_CAPS_PENDING_CAPSNAP (Jeff Layton) [1767959] - [fs] ceph: kick flushing and flush snaps before sending normal cap message (Jeff Layton) [1767959] - [fs] ceph: clear CEPH_I_KICK_FLUSH flag inside __kick_flushing_caps() (Jeff Layton) [1767959] - [fs] ceph: increment change_attribute on local changes (Jeff Layton) [1767959] - [fs] ceph: handle change_attr in cap messages (Jeff Layton) [1767959] - [fs] ceph: add change_attr field to ceph_inode_info (Jeff Layton) [1767959] - [kernel] iversion: add a routine to update a raw value with a larger one (Jeff Layton) [1767959] - [fs] ceph: allow querying of STATX_BTIME in ceph_getattr (Jeff Layton) [1767959] - [kernel] libceph: turn on CEPH_FEATURE_MSG_ADDR2 (Jeff Layton) [1767959] - [fs] ceph: handle btime in cap messages (Jeff Layton) [1767959] - [fs] ceph: add btime field to ceph_inode_info (Jeff Layton) [1767959] - [net] libceph: rename ceph_encode_addr to ceph_encode_banner_addr (Jeff Layton) [1767959] - [net] libceph: use TYPE_LEGACY for entity addrs instead of TYPE_NONE (Jeff Layton) [1767959] - [net] ceph: fix decode_locker to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [fs] ceph: have MDS map decoding use entity_addr_t decoder (Jeff Layton) [1767959] - [net] libceph: correctly decode ADDR2 addresses in incremental OSD maps (Jeff Layton) [1767959] - [net] libceph: fix watch_item_t decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: switch osdmap decoding to use ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: ADDR2 support for monmap (Jeff Layton) [1767959] - [net] libceph: add ceph_decode_entity_addr (Jeff Layton) [1767959] - [net] libceph: fix sa_family just after reading address (Jeff Layton) [1767959] - [fs] ceph: remove request from waiting list before unregister (Jeff Layton) [1767959] - [fs] ceph: don't blindly unregister session that is in opening state (Jeff Layton) [1767959] - [fs] ceph: fix infinite loop in get_quota_realm() (Jeff Layton) [1767959] - [fs] ceph: add selinux support (Jeff Layton) [1767959] - [fs] ceph: rename struct ceph_acls_info to ceph_acl_sec_ctx (Jeff Layton) [1767959] - [fs] ceph: fix debug print format in __set_xattr() (Jeff Layton) [1767959] - [fs] ceph: fix warning PTR_ERR_OR_ZERO can be used (Jeff Layton) [1767959] - [fs] ceph: hold i_ceph_lock when removing caps for freeing inode (Jeff Layton) [1767959] - [fs] ceph: ensure d_name/d_parent stability in ceph_mdsc_lease_send_msg() (Jeff Layton) [1767959] - [fs] ceph: use READ_ONCE to access d_parent in RCU critical section (Jeff Layton) [1767959] - [fs] ceph: fix dir_lease_is_valid() (Jeff Layton) [1767959] - [fs] ceph: close race between d_name_cmp() and update_dentry_lease() (Jeff Layton) [1767959] - [fs] ceph: fix improper use of smp_mb__before_atomic() (Jeff Layton) [1767959] - [fs] ceph: fix "ceph.dir.rctime" vxattr value (Jeff Layton) [1767959] - [fs] ceph: remove unused vxattr length helpers (Jeff Layton) [1767959] - [fs] ceph: fix listxattr vxattr buffer length calculation (Jeff Layton) [1767959] - [fs] ceph: add ceph.snap.btime vxattr (Jeff Layton) [1767959] - [fs] ceph: carry snapshot creation time with inodes (Jeff Layton) [1767959] - [fs] ceph: clean up ceph.dir.pin vxattr name sizeof() (Jeff Layton) [1767959] - [fs] ceph: silence a checker warning in mdsc_show() (Jeff Layton) [1767959] - [net] libceph: remove ceph_get_direct_page_vector() (Jeff Layton) [1767959] - [fs] ceph: don't open-code the check for dead lockref (Jeff Layton) [1767959] - [net] ceph: no need to check return value of debugfs_create functions (Jeff Layton) [1767959] - [fs] ceph: fix ceph_mdsc_build_path to not stop on first component (Jeff Layton) [1767959] - [fs] ceph: fix error handling in ceph_get_caps() (Jeff Layton) [1767959] - [fs] ceph: avoid iput_final() while holding mutex or in dispatch thread (Jeff Layton) [1767959] - [fs] ceph: single workqueue for inode related works (Jeff Layton) [1767959] - [fs] ceph: flush dirty inodes before proceeding with remount (Jeff Layton) [1767959] - [fs] ceph: fix unaligned access in ceph_send_cap_releases (Jeff Layton) [1767959] - [net] libceph: make ceph_pr_addr take an struct ceph_entity_addr pointer (Jeff Layton) [1767959] - [net] libceph: fix unaligned accesses in ceph_entity_addr handling (Jeff Layton) [1767959] - [block] rbd: don't assert on writes to snapshots (Jeff Layton) [1767959] - [block] rbd: client_mutex is never nested (Jeff Layton) [1767959] - [fs] ceph: print inode number in __caps_issued_mask debugging messages (Jeff Layton) [1767959] - [fs] ceph: just call get_session in __ceph_lookup_mds_session (Jeff Layton) [1767959] - [fs] ceph: simplify arguments and return semantics of try_get_cap_refs (Jeff Layton) [1767959] - [fs] ceph: fix comment over ceph_drop_caps_for_unlink (Jeff Layton) [1767959] - [fs] ceph: move wait for mds request into helper function (Jeff Layton) [1767959] - [fs] ceph: have ceph_mdsc_do_request call ceph_mdsc_submit_request (Jeff Layton) [1767959] - [fs] ceph: after an MDS request, do callback and completions (Jeff Layton) [1767959] - [fs] ceph: use pathlen values returned by set_request_path_attr (Jeff Layton) [1767959] - [fs] ceph: use __getname/__putname in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: use ceph_mdsc_build_path instead of clone_dentry_name (Jeff Layton) [1767959] - [fs] ceph: fix potential use-after-free in ceph_mdsc_build_path (Jeff Layton) [1767959] - [fs] ceph: dump granular cap info in "caps" debugfs file (Jeff Layton) [1767959] - [fs] ceph: make iterate_session_caps a public symbol (Jeff Layton) [1767959] - [fs] ceph: fix NULL pointer deref when debugging is enabled (Jeff Layton) [1767959] - [fs] ceph: properly handle granular statx requests (Jeff Layton) [1767959] - [fs] ceph: remove superfluous inode_lock in ceph_fsync (Jeff Layton) [1767959] - [kernel] libceph: fix clang warning for CEPH_DEFINE_OID_ONSTACK (Jeff Layton) [1767959] - [block] rbd: convert all rbd_assert(0) to BUG() (Jeff Layton) [1767959] - [block] rbd: avoid clang -Wuninitialized warning (Jeff Layton) [1767959] - [fs] ceph: snapshot nfs re-export (Jeff Layton) [1767959] - [fs] ceph: quota: fix quota subdir mounts (Jeff Layton) [1767959] - [fs] ceph: factor out ceph_lookup_inode() (Jeff Layton) [1767959] - [fs] ceph: remove duplicated filelock ref increase (Jeff Layton) [1767959] - [fs] ceph: fix ci->i_head_snapc leak (Jeff Layton) [1767959] - [fs] ceph: handle the case where a dentry has been renamed on outstanding req (Jeff Layton) [1767959] - [fs] ceph: ensure d_name stability in ceph_dentry_hash() (Jeff Layton) [1767959] - [fs] ceph: only use d_name directly when parent is locked (Jeff Layton) [1767959] - [fs] mark expected switch fall-throughs (Jeff Layton) [1767959] - [fs] ceph: fix use-after-free on symlink traversal (Jeff Layton) [1767959] - [net] libceph: fix breakage caused by multipage bvecs (Jeff Layton) [1767959] - [block] rbd: drop wait_for_latest_osdmap() (Jeff Layton) [1767959] - [net] libceph: wait for latest osdmap in ceph_monc_blacklist_add() (Jeff Layton) [1767959] - [block] rbd: set io_min, io_opt and discard_granularity to alloc_size (Jeff Layton) [1767959] - [block] rbd: advertise support for RBD_FEATURE_DEEP_FLATTEN (Jeff Layton) [1767959] - [block] rbd: whole-object write and zeroout should copyup when snapshots exist (Jeff Layton) [1767959] - [block] rbd: copyup with an empty snapshot context (aka deep-copyup) (Jeff Layton) [1767959] - [block] rbd: introduce rbd_obj_issue_copyup_ops() (Jeff Layton) [1767959] - [block] rbd: stop copying num_osd_ops in rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: factor out __rbd_osd_req_create() (Jeff Layton) [1767959] - [block] rbd: clear ->xferred on error from rbd_obj_issue_copyup() (Jeff Layton) [1767959] - [block] rbd: remove experimental designation from kernel layering (Jeff Layton) [1767959] - [fs] ceph: add mount option to limit caps count (Jeff Layton) [1767959] - [fs] ceph: periodically trim stale dentries (Jeff Layton) [1767959] - [fs] ceph: delete stale dentry when last reference is dropped (Jeff Layton) [1767959] - [fs] ceph: remove dentry_lru file from debugfs (Jeff Layton) [1767959] - [fs] ceph: touch existing cap when handling reply (Jeff Layton) [1767959] - [fs] ceph: pass inclusive lend parameter to filemap_write_and_wait_range() (Jeff Layton) [1767959] - [block] rbd: round off and ignore discards that are too small (Jeff Layton) [1767959] - [block] rbd: handle DISCARD and WRITE_ZEROES separately (Jeff Layton) [1767959] - [block] rbd: get rid of obj_req->obj_request_count (Jeff Layton) [1767959] - [net] libceph: use struct_size() for kmalloc() in crush_decode() (Jeff Layton) [1767959] - [fs] ceph: send cap releases more aggressively (Jeff Layton) [1767959] - [fs] ceph: support getting ceph.dir.pin vxattr (Jeff Layton) [1767959] - [fs] ceph: support versioned reply (Jeff Layton) [1767959] - [fs] ceph: map snapid to anonymous bdev ID (Jeff Layton) [1767959] - [fs] ceph: split large reconnect into multiple messages (Jeff Layton) [1767959] - [fs] ceph: decode feature bits in session message (Jeff Layton) [1767959] - [fs] ceph: set special inode's blocksize to page size (Jeff Layton) [1767959] - [fs] ceph: avoid repeatedly adding inode to mdsc->snap_flush_list (Jeff Layton) [1767959] - [fs] ceph: quota: cleanup license mess (Jeff Layton) [1767959] - [net] libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive() (Jeff Layton) [1767959] - [fs] ceph: clear inode pointer when snap realm gets dropped by its inode (Jeff Layton) [1767959] - [block] rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set (Jeff Layton) [1767959] - [fs] ceph: use vmf_error() in ceph_filemap_fault() (Jeff Layton) [1767959] - [net] libceph: allow setting abort_on_full for rbd (Jeff Layton) [1767959] - [fs] ceph: don't encode inode pathes into reconnect message (Jeff Layton) [1767959] - [fs] ceph: update wanted caps after resuming stale session (Jeff Layton) [1767959] - [fs] ceph: skip updating 'wanted' caps if caps are already issued (Jeff Layton) [1767959] - [fs] ceph: don't request excl caps when mount is readonly (Jeff Layton) [1767959] - [fs] ceph: don't update importing cap's mseq when handing cap export (Jeff Layton) [1767959] - [net] libceph: switch more to bool in ceph_tcp_sendmsg() (Jeff Layton) [1767959] - [net] libceph: use MSG_SENDPAGE_NOTLAST with ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: use sock_no_sendpage() as a fallback in ceph_tcp_sendpage() (Jeff Layton) [1767959] - [net] libceph: drop last_piece logic from write_partial_message_data() (Jeff Layton) [1767959] - [fs] ceph: remove redundant assignment (Jeff Layton) [1767959] - [fs] ceph: cleanup splice_dentry() (Jeff Layton) [1767959] - [fs] libceph: assume argonaut on the server side (Jeff Layton) [1767959] - [fs] ceph: quota: fix null pointer dereference in quota check (Jeff Layton) [1767959] - [fs] ceph: add non-blocking parameter to ceph_try_get_caps() (Jeff Layton) [1767959] - [net] libceph: check reply num_data_items in setup_request_data() (Jeff Layton) [1767959] - [net] libceph: preallocate message data items (Jeff Layton) [1767959] - [net] libceph, rbd, ceph: move ceph_osdc_alloc_messages() calls (Jeff Layton) [1767959] - [net] libceph: introduce alloc_watch_request() (Jeff Layton) [1767959] - [net] libceph: assign cookies in linger_submit() (Jeff Layton) [1767959] - [net] libceph: enable fallback to ceph_msg_new() in ceph_msgpool_get() (Jeff Layton) [1767959] - [fs] ceph: num_ops is off by one in ceph_aio_retry_work() (Jeff Layton) [1767959] - [net] libceph: no need to call osd_req_opcode_valid() in osd_req_encode_op() (Jeff Layton) [1767959] - [fs] ceph: set timeout conditionally in __cap_delay_requeue (Jeff Layton) [1767959] - [net] libceph: don't consume a ref on pagelist in ceph_msg_data_add_pagelist() (Jeff Layton) [1767959] - [net] libceph: introduce ceph_pagelist_alloc() (Jeff Layton) [1767959] - [net] libceph: osd_req_op_cls_init() doesn't need to take opcode (Jeff Layton) [1767959] - [kernel] libceph: bump CEPH_MSG_MAX_DATA_LEN (Jeff Layton) [1767959] - [fs] ceph: only allow punch hole mode in fallocate (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_sync_read() (Jeff Layton) [1767959] - [fs] ceph: check if LOOKUPNAME request was aborted when filling trace (Jeff Layton) [1767959] - [fs] ceph: fix dentry leak in ceph_readdir_prepopulate (Jeff Layton) [1767959] - [fs] revert "ceph: fix dentry leak in splice_dentry()" (Jeff Layton) [1767959] - [fs] ceph: check snap first in ceph_set_acl() (Jeff Layton) [1767959] - [block] rbd: add __init/__exit annotations (Jeff Layton) [1767959] - [fs] ceph: reset cap hold timeout only for requeued inode (Jeff Layton) [1767959] - [fs] ceph: don't drop message if it contains more data than expected (Jeff Layton) [1767959] - [fs] ceph: support cephfs' own feature bits (Jeff Layton) [1767959] - [net] crush: fix using plain integer as NULL warning (Jeff Layton) [1767959] - [net] libceph: remove unnecessary non NULL check for request_key (Jeff Layton) [1767959] - [fs] ceph: refactor error handling code in ceph_reserve_caps() (Jeff Layton) [1767959] - [fs] ceph: refactor ceph_unreserve_caps() (Jeff Layton) [1767959] - [fs] ceph: change to void return type for __do_request() (Jeff Layton) [1767959] - [fs] ceph: compare fsc->max_file_size and inode->i_size for max file size limit (Jeff Layton) [1767959] - [fs] ceph: add additional size check in ceph_setattr() (Jeff Layton) [1767959] - [fs] ceph: add additional offset check in ceph_write_iter() (Jeff Layton) [1767959] - [fs] ceph: add additional range check in ceph_fallocate() (Jeff Layton) [1767959] - [fs] ceph: add new field max_file_size in ceph_fs_client (Jeff Layton) [1767959] - [net] ceph: fix whitespace (Jeff Layton) [1767959] - [fs] ceph: adding new return type vm_fault_t (Jeff Layton) [1767959] - [kernel] libceph: remove now unused ceph_{en, de}code_timespec() (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for r_stamp (Jeff Layton) [1767959] - [fs] libceph: use timespec64 for r_mtime (Jeff Layton) [1767959] - [fs] ceph: use timespec64 for inode timestamp (Jeff Layton) [1767959] - [fs] ceph: stop using current_kernel_time() (Jeff Layton) [1767959] - [net] libceph: use timespec64 in for keepalive2 and ticket validity (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_symlink() (Jeff Layton) [1767959] - [fs] ceph: add d_drop for some error cases in ceph_mknod() (Jeff Layton) [1767959] - [fs] ceph: return errors from posix_acl_equiv_mode() correctly (Jeff Layton) [1767959] - [net] libceph: amend "bad option arg" error message (Jeff Layton) [1767959] - [net] libceph: stop parsing when a bad int arg is detected (Jeff Layton) [1767959] - [kernel] libceph: change ceph_pagelist_encode_string() to take u32 (Jeff Layton) [1767959] - [net] libceph: make ceph_osdc_notify{, _ack}() payload_len u32 (Jeff Layton) [1767959] - [fs] ceph: restore ctime as well in the case of restoring old mode (Jeff Layton) [1767959] - [fs] ceph: add retry logic for error -ERANGE in ceph_get_acl() (Jeff Layton) [1767959]- [tools] objtool: Support repeated uses of the same C jump table (Yauheni Kaliuta) [1747617] - [tools] objtool: Refactor jump table code (Yauheni Kaliuta) [1747617] - [tools] objtool: Fix sibling call detection (Yauheni Kaliuta) [1747617] - [tools] objtool: Add --backtrace support (Yauheni Kaliuta) [1747617] - [tools] libbpf: Improve handling of corrupted ELF during map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix negative FD close() in xsk_setup_xdp_prog() (Yauheni Kaliuta) [1747617] - [kernel] bpf: Change size to u64 for bpf_map_{area_alloc, charge_init}() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: Fix btf_dump padding test case (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix struct end padding in btf_dump (Yauheni Kaliuta) [1747617] - [tools] bpf: Allow narrow loads of bpf_sysctl fields with offset > 0 (Yauheni Kaliuta) [1747617] - [tools] bpftool: move "__printf()" attributes to header file (Yauheni Kaliuta) [1747617] - [media] bpf: media: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format string for p_err() in detect_common_prefix() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix argument for p_err() in BTF do_dump() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix arguments for p_err() in do_event_pipe() (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix format strings and arguments for jsonw_printf() (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking of stack slots (Yauheni Kaliuta) [1747617] - [kernel] bpf: handle 32-bit zext during constant blinding (Yauheni Kaliuta) [1747617] - [net] bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking in presence of bpf2bpf calls (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add config fragment BPF_JIT (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_btf_dump with O= (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_cgroup_storage on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: close prog FD before exit on showing a single program (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "bind{4, 6} deny specific IP & port" on s390 (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools infrastructure (Yauheni Kaliuta) [1747617] - [tools] bpftool: add error message on pin failure (Yauheni Kaliuta) [1747617] - [tools] bpftool: fix error message (prog -> object) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: tests for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [x86] bpf: fix x64 JIT code generation for jmp to 1st insn (Yauheni Kaliuta) [1747617] - [tools] libbpf: set BTF FD for prog only when there is supported .BTF.ext data (Yauheni Kaliuta) [1747617] - [tools] libbpf : make libbpf_num_possible_cpus function thread safe (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix missing __WORDSIZE definition (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix erroneous multi-closing of BTF FD (Yauheni Kaliuta) [1747617] - [tools] libbpf: silence GCC8 warning about string truncation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add another gso_segs access (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix sendmsg6_prog on s390 (Yauheni Kaliuta) [1747617] - [tools] libbpf: Avoid designated initializers for unnamed union members (Yauheni Kaliuta) [1747617] - [tools] libbpf: Fix endianness macro usage for some compilers (Yauheni Kaliuta) [1747617] - [tools] libbpf: sanitize VAR to conservative 1-byte INT (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix SIGSEGV when BTF loading fails, but .BTF.ext exists (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_xdp_noinline on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix "valid read map access into a read-only array 1" on s390 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Disable GCC -fgcse optimization for ___bpf_prog_run() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix perf_buffer on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: structure test_{progs, maps, verifier} test runners uniformly (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_verifier/test_maps make dependencies (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix another GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: skip nmi test when perf hw events are disabled (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove logic duplication in test_verifier (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add selftests for wide loads (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: rename verifier/wide_store.c to verifier/wide_access.c (Yauheni Kaliuta) [1747617] - [net] bpf: allow wide aligned loads for bpf_sock_addr user_ip6 and msg_src_ip6 (Yauheni Kaliuta) [1747617] - [samples] bpf: build with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: put test_stub.o into $(OUTPUT) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make directory prerequisites order-only (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix attach_probe on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use typedef'ed arrays as map values (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add trickier size resolution tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BTF verifier size resolution logic (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix compiling loop{1, 2, 3}.c on s390 (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: make PT_REGS_* work in userspace (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix s930 -> s390 typo (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: compile progs with -D__TARGET_ARCH_$(SRCARCH) (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: do not ignore clang failures (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: avoid fall-through warnings (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix bpf_target_sparc check (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix ptr to u64 conversion warning on 32-bit platforms (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision bit propagation for BPF_ST instructions (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix ORC unwinding in non-JIT BPF code (Yauheni Kaliuta) [1747617] - [tools] objtool: Add support for C jump tables (Yauheni Kaliuta) [1747617] - [tools] objtool: Don't use ignore flag for fake jumps (Yauheni Kaliuta) [1747617] - [tools] objtool: Support per-function rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_reuseport_array on s390 (Yauheni Kaliuta) [1747617] - [tools] bpftool: add completion for bpftool prog "loadall" (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: Fix build error without CONFIG_NET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_attach_probe map definition (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add verifier tests for wide stores (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf_buffer_ prefix to README (Yauheni Kaliuta) [1747617] - [tools] bpftool: switch map event_pipe to libbpf's perf_buffer (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test perf buffer API (Yauheni Kaliuta) [1747617] - [tools] libbpf: auto-set PERF_EVENT_ARRAY size to number of CPUs (Yauheni Kaliuta) [1747617] - [tools] libbpf: add perf buffer API (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test_tcp_rtt to .gitignore (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix test_align liveliness expectations (Yauheni Kaliuta) [1747617] - [tools] bpftool: add "prog run" subcommand to test-run programs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert legacy BPF maps to BTF-defined ones (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert selftests using BTF-defined maps to new syntax (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add __uint and __type macro for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: capture value in BTF type info for BTF-defined map defs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert existing tracepoint tests to new APIs (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add kprobe/uprobe selftests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch test to new attach_perf_event API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add raw tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add tracepoint attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add kprobe/uprobe attach API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add ability to attach/detach BPF program to perf event (Yauheni Kaliuta) [1747617] - [tools] libbpf: introduce concept of bpf_link (Yauheni Kaliuta) [1747617] - [tools] libbpf: make libbpf_strerror_r agnostic to sign of error (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: fix inlines in test_lwt_seg6local (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: standardize to static __always_inline (Yauheni Kaliuta) [1747617] - [samples] bpf: Add support for fq's EDT to HBM (Yauheni Kaliuta) [1747617] - [tools] bpf, libbpf, smatch: Fix potential NULL pointer dereference (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix GCC8 warning for strncpy (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: add tests for shifts by zero (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_K shift by 0 (Yauheni Kaliuta) [1747617] - [x86] bpf, x32: Fix bug with ALU64 {LSH, RSH, ARSH} BPF_X shift by 0 (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix precision tracking (Yauheni Kaliuta) [1747617] - [tools] bpf: fix uapi bpf_prog_info fields alignment (Yauheni Kaliuta) [1747617] - [kernel] devmap: Allow map lookups from eBPF (Yauheni Kaliuta) [1747617] - [net] bpf_xdp_redirect_map: Perform map lookup in eBPF helper (Yauheni Kaliuta) [1747617] - [net] devmap: Rename ifindex member in bpf_redirect_info (Yauheni Kaliuta) [1747617] - [kernel] devmap/cpumap: Use flush list instead of bitmap (Yauheni Kaliuta) [1747617] - [kernel] xskmap: Move non-standard list manipulation to helper (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix -Wstrict-aliasing in test_sockopt_sk.c (Yauheni Kaliuta) [1747617] - [tools] bpftool: support cgroup sockopt (Yauheni Kaliuta) [1747617] - [documentation] bpf: add sockopt documentation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises BPF_F_ALLOW_MULTI (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test that exercises sk helpers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add sockopt test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test sockopt section name (Yauheni Kaliuta) [1747617] - [tools] libbpf: support sockopt hooks (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement getsockopt and setsockopt hooks (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix cgroup bpf release synchronization (Yauheni Kaliuta) [1747617] - [samples] bpf: make the use of xdp samples consistent (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix BPF_ALU32 | BPF_ARSH on BE arches (Yauheni Kaliuta) [1747617] - [tools] bpftool: use correct argument in cgroup errors (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix compiler warning with CONFIG_MODULES=n (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: build tests with debug info (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix max() type mismatch for 32bit (Yauheni Kaliuta) [1747617] - [trace] xdp: Add tracepoint for bulk XDP_TX (Yauheni Kaliuta) [1747617] - [tools] selftests, bpf: Add test for veth native XDP (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix spelling mistake "conflictling" -> "conflicting" (Yauheni Kaliuta) [1747617] - [kernel] bpf: precise scalar_value tracking (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add realistic loop tests (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add basic verifier tests for loops (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests (Yauheni Kaliuta) [1747617] - [kernel] bpf: fix callees pruning callers (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce bounded loops (Yauheni Kaliuta) [1747617] - [kernel] bpf: extend is_branch_taken to registers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix tests due to const spill/fill (Yauheni Kaliuta) [1747617] - [kernel] bpf: track spill/fill of constants (Yauheni Kaliuta) [1747617] - [tools] libbpf: constify getter APIs (Yauheni Kaliuta) [1747617] - [samples] bpf: refactor header include path (Yauheni Kaliuta) [1747617] - [samples] bpf: remove unnecessary include options in Makefile (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert tests w/ custom values to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: switch BPF_ANNOTATE_KV_PAIR tests to BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add test for BTF-defined maps (Yauheni Kaliuta) [1747617] - [tools] libbpf: allow specifying map definitions using BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: split initialization and loading of BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: identify maps by section index in addition to offset (Yauheni Kaliuta) [1747617] - [tools] libbpf: refactor map initialization (Yauheni Kaliuta) [1747617] - [tools] libbpf: streamline ELF parsing error-handling (Yauheni Kaliuta) [1747617] - [tools] libbpf: extract BTF loading logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: add common min/max macro to libbpf_internal.h (Yauheni Kaliuta) [1747617] - [net] bpf: fix the check that forwarding is enabled in bpf_ipv6_fib_lookup (Yauheni Kaliuta) [1747617] - [kernel] bpf: Fix build error without CONFIG_INET (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert socket_cookie test to sk storage (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_SOCK_OPS prog type (Yauheni Kaliuta) [1747617] - [net] bpf: export bpf_sock for BPF_PROG_TYPE_CGROUP_SOCK_ADDR prog type (Yauheni Kaliuta) [1747617] - [tools] bpf: Add test for SO_REUSEPORT_DETACH_BPF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix check for presence of associated BTF for map creation (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: signedness bug in enable_all_controllers() (Yauheni Kaliuta) [1747617] - [samples] bpf: fix include path in Makefile (Yauheni Kaliuta) [1747617] - [kernel] bpf: silence warning messages in core (Yauheni Kaliuta) [1747617] - [tools] bpf: use libbpf_num_possible_cpus internally (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: remove bpf_util.h from BPF C progs (Yauheni Kaliuta) [1747617] - [tools] bpf: add a new API libbpf_num_possible_cpus() (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf : clean up feature/ when make clean (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fix constness of source arg for bpf helpers (Yauheni Kaliuta) [1747617] - [samples] bpf: don't run probes at the local make stage (Yauheni Kaliuta) [1747617] - [tools] libbpf: remove qidconf and better support external bpf programs (Yauheni Kaliuta) [1747617] - [tools] bpf: Add bpf_map_lookup_elem selftest for xskmap (Yauheni Kaliuta) [1747617] - [tools] bpf/tools: sync bpf.h (Yauheni Kaliuta) [1747617] - [net] bpf: Allow bpf_map_lookup_elem() on an xskmap (Yauheni Kaliuta) [1747617] - [documentation] docs: bpf: get rid of two warnings (Yauheni Kaliuta) [1747617] - [net] bpf: allow CGROUP_SKB programs to use bpf_skb_cgroup_id() helper (Yauheni Kaliuta) [1747617] - [samples] bpf: print a warning about headers_install (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove redundant assignment to err (Yauheni Kaliuta) [1747617] - [samples] bpf: hbm: fix spelling mistake "notifcations" -> "notificiations" (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: measure RTT from xdp using xdping (Yauheni Kaliuta) [1747617] - [documentation] bpf: doc: update answer for 32-bit subregister question (Yauheni Kaliuta) [1747617] - [kernel] bpf: move memory size checks to bpf_map_charge_init() (Yauheni Kaliuta) [1747617] - [kernel] bpf: rework memlock-based memory accounting for maps (Yauheni Kaliuta) [1747617] - [kernel] bpf: group memory related fields in struct bpf_map_memory (Yauheni Kaliuta) [1747617] - [net] bpf: add memlock precharge for socket local storage (Yauheni Kaliuta) [1747617] - [kernel] bpf: add memlock precharge check for cgroup_local_storage (Yauheni Kaliuta) [1747617] - [samples] bpf: Add more stats to HBM (Yauheni Kaliuta) [1747617] - [samples] bpf: Add cn support to hbm_out_kern.c (Yauheni Kaliuta) [1747617] - [kernel] bpf: Update __cgroup_bpf_run_filter_skb with cn (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup inet skb programs can return 0 to 3 (Yauheni Kaliuta) [1747617] - [kernel] bpf: Create BPF_PROG_CGROUP_INET_EGRESS_RUN_ARRAY (Yauheni Kaliuta) [1747617] - [tools] libbpf: reduce unnecessary line wrapping (Yauheni Kaliuta) [1747617] - [tools] libbpf: typo and formatting fixes (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify two pieces of logic (Yauheni Kaliuta) [1747617] - [tools] libbpf: use negative fd to specify missing BTF (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix error code returned on corrupted ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: check map name retrieved from ELF (Yauheni Kaliuta) [1747617] - [tools] libbpf: simplify endianness check (Yauheni Kaliuta) [1747617] - [tools] libbpf: preserve errno before calling into user callback (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix detection of corrupted BPF instructions section (Yauheni Kaliuta) [1747617] - [tools] libbpf: prevent overwriting of log_level in bpf_object__load_progs() (Yauheni Kaliuta) [1747617] - [kernel] bpf: tracing: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: cgroup: properly use bpf_prog_array api (Yauheni Kaliuta) [1747617] - [kernel] bpf: remove __rcu annotations from bpf_prog_array (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add auto-detach test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: enable all available cgroup v2 controllers (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: convert test_cgrp2_attach2 example into kselftest (Yauheni Kaliuta) [1747617] - [samples] bpf: fix a couple of style issues in bpf_load (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: fail test_tunnel.sh if subtests fail (Yauheni Kaliuta) [1747617] - [tools] bpftool: make -d option print debug output from verifier (Yauheni Kaliuta) [1747617] - [tools] libbpf: add bpf_object__load_xattr() API function to pass log_level (Yauheni Kaliuta) [1747617] - [tools] bpftool: add -d option to get debug output from libbpf (Yauheni Kaliuta) [1747617] - [tools] libbpf: fix warning that PTR_ERR_OR_ZERO can be used (Yauheni Kaliuta) [1747617] - [tools] bpf: style fix in while(!feof()) loop (Yauheni Kaliuta) [1747617] - [kernel] bpf: check signal validity in nmi for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: auto-complete BTF IDs for btf dump (Yauheni Kaliuta) [1747617] - [samples] bpf: add ibumad sample to .gitignore (Yauheni Kaliuta) [1747617] - [x86] x32: bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [s390] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [powerpc] bpf: eliminate zero extension code-gen (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: enable hi32 randomization for all tests (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: adjust several test_verifier helpers for insn insertion (Yauheni Kaliuta) [1747617] - [tools] libbpf: add "prog_flags" to bpf_program/bpf_prog_load_attr/bpf_load_program_attr (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: randomize high 32-bit when BPF_F_TEST_RND_HI32 is set (Yauheni Kaliuta) [1747617] - [tools] bpf: sync uapi header bpf.h (Yauheni Kaliuta) [1747617] - [uapi] bpf: introduce new bpf prog load flags "BPF_F_TEST_RND_HI32" (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: insert zero extension according to analysis result (Yauheni Kaliuta) [1747617] - [kernel] bpf: introduce new mov32 variant for doing explicit zero extension (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark patched-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [kernel] bpf: verifier: mark verified-insn with sub-register zext flag (Yauheni Kaliuta) [1747617] - [tools] bpf: add selftest in test_progs for bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpf: sync bpf uapi header bpf.h to tools directory (Yauheni Kaliuta) [1747617] - [kernel] bpf: implement bpf_send_signal() helper (Yauheni Kaliuta) [1747617] - [tools] bpftool: update bash-completion w/ new c option for btf dump (Yauheni Kaliuta) [1747617] - [tools] bpftool/docs: add description of btf dump C option (Yauheni Kaliuta) [1747617] - [tools] bpftool: add C output format option to btf dump subcommand (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add btf_dump BTF-to-C conversion tests (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf_dump API for BTF-to-C conversion (Yauheni Kaliuta) [1747617] - [tools] libbpf: switch btf_dedup() to hashmap for dedup table (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add tests for libbpf's hashmap (Yauheni Kaliuta) [1747617] - [tools] libbpf: add resizable non-thread safe internal hashmap (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: use btf__parse_elf to check presence of BTF/BTF.ext (Yauheni Kaliuta) [1747617] - [tools] bpftool: use libbpf's btf__parse_elf API (Yauheni Kaliuta) [1747617] - [tools] libbpf: add btf__parse_elf API to load .BTF and .BTF.ext (Yauheni Kaliuta) [1747617] - [tools] libbpf: ensure libbpf.h is included along libbpf_internal.h (Yauheni Kaliuta) [1747617] - [samples] bpf: Do not define bpf_printk macro (Yauheni Kaliuta) [1747617] - [tools] selftests: bpf: Move bpf_printk to bpf_helpers.h (Yauheni Kaliuta) [1747617] - [kernel] bpf: convert explored_states to hash table (Yauheni Kaliuta) [1747617] - [kernel] bpf: split explored_states (Yauheni Kaliuta) [1747617] - [kernel] bpf: cleanup explored_states (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: add pyperf scale test (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: adjust verifier scale test (Yauheni Kaliuta) [1747617] - [kernel] bpf: bump jmp sequence limit (Yauheni Kaliuta) [1747617] - [tools] libbpf: emit diff of mismatched public API, if any (Yauheni Kaliuta) [1747617] - [tools] bpf, selftest: test global data/bss/rodata sections (Yauheni Kaliuta) [1747617] - [tools] selftests/bpf: test_tc_tunnel: skip unsupported tests (Jiri Benc) [1749814] - [tools] selftests/bpf: More compatible nc options in test_tc_edt (Jiri Benc) [1749814] - [net] xdp: check device pointer before clearing (Jiri Benc) [1749814] - [net] bpf: udp: Avoid calling reuseport's bpf_prog from udp_gro (Jiri Benc) [1749814] - [net] bpf: sockmap, fix use after free from sleep in psock backlog workqueue (Jiri Benc) [1749814] - [include] bpf: sockmap, restore sk_write_space when psock gets dropped (Jiri Benc) [1749814] - [net] bpfilter: fallback to netfilter if failed to load bpfilter kernel module (Jiri Benc) [1749814] - [net] pass net_device argument to the eth_get_headlen (Jiri Benc) [1749814] - [net] flow_dissector: handle no-skb use case (Jiri Benc) [1749814] - [net] plumb network namespace into __skb_flow_dissect (Jiri Benc) [1749814] - [net] bpfilter: dont use module_init in non-modular code (Jiri Benc) [1749814] - [net] xsk: fix XDP socket ring buffer memory ordering (Jiri Benc) [1749814] - [tools] selftests/bpf: install files test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] fix bpf_xdp_adjust_head regression for generic-XDP (Jiri Benc) [1749814] - [tools] selftests/bpf: reduce time to execute test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] selftests/bpf: add wrapper scripts for test_xdp_vlan.sh (Jiri Benc) [1749814] - [tools] bpf: fix XDP vlan selftests test_xdp_vlan.sh (Jiri Benc) [1749814] - [net] core: support XDP generic on stacked devices. (Jiri Benc) [1749814] - [netdrv] netvsc: unshare skb in VF rx handler (Jiri Benc) [1749814] - [net] convert rps_needed and rfs_needed to new static branch api (Jiri Benc) [1749814] - [net] core: Document __skb_flow_dissect() flags argument (Jiri Benc) [1749814] - [net] gso: Fix skb_segment splat when splitting gso_size mangled skb having linear-headed frag_list (Jiri Benc) [1749814] - [net] sock_map, fix missing ulp check in sock hash case (Jiri Benc) [1749814] - [net] Fix missing meta data in skb with vlan packet (Jiri Benc) [1749814] - [include] skbuff.h: fix using plain integer as NULL warning (Jiri Benc) [1749814] - [netdrv] netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit (Jiri Benc) [1761359] - [netdrv] netdevsim: Restore per-network namespace accounting for fib entries (Jiri Benc) [1761359] - [netdrv] netdevsim: Make nsim_num_vf static (Jiri Benc) [1761359] - [netdrv] netdevsim: fix fall-through annotation (Jiri Benc) [1761359] - [netdrv] netdevsim: implement ndo_get_devlink_port (Jiri Benc) [1761359] - [netdrv] netdevsim: move netdev creation/destruction to dev probe (Jiri Benc) [1761359] - [netdrv] netdevsim: extend device attrs to support port addition and deletion (Jiri Benc) [1761359] - [netdrv] netdevsim: implement dev probe/remove skeleton with port initialization (Jiri Benc) [1761359] - [netdrv] netdevsim: change debugfs tree topology (Jiri Benc) [1761359] - [netdrv] netdevsim: generate random switch id instead of using dev id (Jiri Benc) [1761359] - [netdrv] netdevsim: merge sdev into dev (Jiri Benc) [1761359] - [netdrv] netdevsim: rename dev_init/exit() functions and make them independent on ns (Jiri Benc) [1761359] - [netdrv] netdevsim: add bus attributes to add new and delete devices (Jiri Benc) [1761359] - [netdrv] netdevsim: use ida for bus device ids (Jiri Benc) [1761359] - [netdrv] netdevsim: add stub netdevsim driver implementation (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration and related code to bus.c (Jiri Benc) [1761359] - [netdrv] netdevsim: put netdevsim bus code into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: rename devlink.c to dev.c to contain per-dev(asic) items (Jiri Benc) [1761359] - [netdrv] netdevsim: create devlink instance per netdevsim instance (Jiri Benc) [1761359] - [netdrv] netdevsim: move device registration on bus to be done earlier in init (Jiri Benc) [1761359] - [netdrv] netdevsim: move sdev-specific init/uninit code into separate functions (Jiri Benc) [1761359] - [netdrv] netdevsim: make bpf_offload_dev_create() per-sdev instead of first ns (Jiri Benc) [1761359] - [netdrv] netdevsim: move shared dev creation and destruction into separate file (Jiri Benc) [1761359] - [netdrv] netdevsim: let net core to free netdevsim netdev (Jiri Benc) [1761359] - [netdrv] netdevsim: remove nsim_dellink() implementation (Jiri Benc) [1761359] - [include] driver core: add BUS_ATTR_WO() macro (Jiri Benc) [1761359] - arm64: bpf: do not allocate executable memory (Yauheni Kaliuta) [1762214] - modules: page-align module section allocations only for arches supporting strict module rwx (Yauheni Kaliuta) [1762214] - modules: always page-align module section allocations (Yauheni Kaliuta) [1762214] - modules: fix compile error if don't have strict module rwx (Yauheni Kaliuta) [1762214] - modules: Use vmalloc special flag (Yauheni Kaliuta) [1762214] - modules: fix BUG when load module with rodata=n (Yauheni Kaliuta) [1762214] - x86/modules: Avoid breaking W^X while loading modules (Yauheni Kaliuta) [1762214] - x86/alternatives, jumplabel: Use text_poke_early() before mm_init() (Yauheni Kaliuta) [1762214] - x86/kprobes: Set instruction page as executable (Yauheni Kaliuta) [1762214] - x86/ftrace: Set trampoline pages as executa (Yauheni Kaliuta) [1762214] - [tools] bpftool: Fix json dump crash on powerpc (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix race in flow dissector tests (Yauheni Kaliuta) [1747615] - [arm64] insn: Fix ldadd instruction encoding (Yauheni Kaliuta) [1747615] - [scripts] kbuild: tolerate missing pahole when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: handle old pahole more gracefully when generating BTF (Yauheni Kaliuta) [1747615] - [scripts] kbuild: add ability to generate BTF type info for vmlinux (Yauheni Kaliuta) [1747615] - [scripts] kbuild: hardcode genksyms path and remove GENKSYMS variable (Yauheni Kaliuta) [1747615] - [scripts] bpf: fix script for generating man page on BPF helpers (Yauheni Kaliuta) [1747615] - [tools] add smp_* barrier variants to include infrastructure (Yauheni Kaliuta) [1747615] - [tools] tools headers barrier: Fix arm64 tools build failure wrt smp_load_{acquire, release} (Yauheni Kaliuta) [1747615] - [tools] bpf, x32: Fix bug for BPF_JMP | {BPF_JSGT, BPF_JSLE, BPF_JSLT, BPF_JSGE} (Yauheni Kaliuta) [1747615] - [x86] unwind/orc: Fall back to using frame pointers for generated code (Yauheni Kaliuta) [1747615] - [x86] unwind: Add hardcoded ORC entry for NULL (Yauheni Kaliuta) [1747615] - [x86] unwind: Handle NULL pointer calls better in frame unwinder (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix accessing bpf_sysctl.file_pos on s390 (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix narrower loads on s390 (Yauheni Kaliuta) [1747615] - [net] bpf: rename bpf_ctx_wide_store_ok to bpf_ctx_wide_access_ok (Yauheni Kaliuta) [1747615] - [net] bpf: allow wide (u64) aligned stores for some fields of bpf_sock_addr (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: improve unexpected success reporting in test_syctl (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix "ctx:write sysctl:write read ok" on s390 (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix format string for p_err() in query_flow_dissector() (Yauheni Kaliuta) [1747615] - [tools] bpftool: add raw_tracepoint_writable prog type to header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix NULL deref in btf_type_is_resolve_source_only (Yauheni Kaliuta) [1747615] - [net] bpf: Set sk_bpf_storage back to NULL for cloned sk (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix nested bpf tracepoints with per-cpu data (Yauheni Kaliuta) [1747615] - [net] bpf: Fix out of bounds memory access in bpf_sk_storage (Yauheni Kaliuta) [1747615] - [kernel] sysctl: define proc_do_static_key() (Yauheni Kaliuta) [1747615] - [x86] bpf, x64: fix stack layout of JITed bpf code (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing RCU read lock on flush (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Add missing bulk queue free (Yauheni Kaliuta) [1747615] - [kernel] bpf, devmap: Fix premature entry free on destroying map (Yauheni Kaliuta) [1747615] - [powerpc] bpf: use unsigned division instruction for 64-bit operations (Yauheni Kaliuta) [1747615] - [tools] bpf: fix div64 overflow tests to properly detect errors (Yauheni Kaliuta) [1747615] - [tools] bpf: sync BPF_FIB_LOOKUP flag changes with BPF uapi (Yauheni Kaliuta) [1747615] - [uapi] bpf: simplify definition of BPF_FIB_LOOKUP related flags (Yauheni Kaliuta) [1747615] - [tools] bpf: lpm_trie: check left child of last leftmost node for NULL (Yauheni Kaliuta) [1747615] - [tools] bpf: expand section tests for test_section_names (Yauheni Kaliuta) [1747615] - [tools] bpf: more msg_name rewrite tests to test_sock_addr (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: enable recvmsg attach types (Yauheni Kaliuta) [1747615] - [tools] bpf: sync tooling uapi header (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix unconnected udp hooks (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix JSON output when lookup fails (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: move test_lirc_mode2_user to TEST_GEN_PROGS_EXTENDED (Yauheni Kaliuta) [1747615] - [tools] libbpf: Return btf_fd for load_sk_storage_btf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix compiler warning in flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: complete sub-register zero extension checks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: move sub-register zero extension checks into subreg.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add zero extend checks for ALU32 and/or/xor (Yauheni Kaliuta) [1747615] - [samples] bpf: suppress compiler warning (Yauheni Kaliuta) [1747615] - [samples] bpf: fix to change the buffer size for read() (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix BTF raw dump of FWD's fwd_kind (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix bpf_get_current_task (Yauheni Kaliuta) [1747615] - [tools] libbpf: move logging helpers into libbpf_internal.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add test_sysctl and map_tests/tests.h to .gitignore (Yauheni Kaliuta) [1747615] - [kernel] bpf: relax inode permission check for retrieving bpf program (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add prog detach to flow_dissector test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add missing \n to flow_dissector CHECK errors (Yauheni Kaliuta) [1747615] - [tools] libbpf: don't fail when feature probing fails (Yauheni Kaliuta) [1747615] - [tools] bpf: test ref bit from data path and add new tests for syscall path (Yauheni Kaliuta) [1747615] - [kernel] bpf, lru: avoid messing with eviction heuristics upon syscall lookup (Yauheni Kaliuta) [1747615] - [kernel] bpf: add map_lookup_elem_sys_only for lookups from syscall side (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1747615] - [uapi] bpf: btf: fix the brackets of BTF_INT_OFFSET() (Yauheni Kaliuta) [1747615] - [kernel] bpf: devmap: fix use-after-free Read in __dev_map_entry_free (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix undefined behavior in narrow load handling (Yauheni Kaliuta) [1747615] - [tools] libbpf: detect supported kernel BTF features and sanitize BTF (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: Add files generated after build to .gitignore (Yauheni Kaliuta) [1747615] - [tools] bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix minor issues in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix recurring typo in documentation for BPF helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: add various test cases for backward jumps (Yauheni Kaliuta) [1747615] - [documentation] docs/btf: fix the missing section marks (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: initialize bpf_object pointers where needed (Yauheni Kaliuta) [1747615] - [tools] libbpf: add libbpf_util.h to header install (Yauheni Kaliuta) [1747615] - [tools] bpf: fix perf build error with uClibc (seen on ARC) (Yauheni Kaliuta) [1747615] - [tools] bpftool: exclude bash-completion/bpftool from .gitignore pattern (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: set RLIMIT_MEMLOCK properly for test_libbpf_open.c (Yauheni Kaliuta) [1747615] - [net] bpf: Use PTR_ERR_OR_ZERO in bpf_fd_sk_storage_update_elem() (Yauheni Kaliuta) [1747615] - [kernel] bpf: Use vmalloc special flag (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fail bpf_probe_write_user() while mm is switched (Yauheni Kaliuta) [1747615] - [kernel] mm/tlb: Provide default nmi_uaccess_okay() (Yauheni Kaliuta) [1747615] - [kernel] asm-generic/tlb: Guard with #ifdef CONFIG_MMU (Yauheni Kaliuta) [1747615] - [tools] bpf: Add ene-to-end test for bpf_sk_storage_* helpers (Yauheni Kaliuta) [1747615] - [tools] bpf: Add BPF_MAP_TYPE_SK_STORAGE test to test_maps (Yauheni Kaliuta) [1747615] - [tools] bpf: Add verifier tests for the bpf_sk_storage (Yauheni Kaliuta) [1747615] - [tools] bpf: Refactor BTF encoding macro to test_btf.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Support BPF_MAP_TYPE_SK_STORAGE in bpf map probing (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: Introduce bpf sk local storage (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: test writable buffers in raw tps (Yauheni Kaliuta) [1747615] - [tools] sync bpf.h (Yauheni Kaliuta) [1747615] - [kernel] bpf: add writable context for raw tracepoints (Yauheni Kaliuta) [1747615] - [arm64] bpf, arm64: use more scalable stadd over ldxr / stxr loop in xadd (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix indendation in bash-completion/bpftool (Yauheni Kaliuta) [1747615] - [tools] bpftool: add bash completions for btf command (Yauheni Kaliuta) [1747615] - [tools] bpftool/docs: add btf sub-command documentation (Yauheni Kaliuta) [1747615] - [tools] bpftool: add ability to dump BTF types (Yauheni Kaliuta) [1747615] - [tools] bpftool: Fix errno variable usage (Yauheni Kaliuta) [1747615] - [tools] bpftool: show flow_dissector attachment status (Yauheni Kaliuta) [1747615] - [net] bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type (Yauheni Kaliuta) [1747615] - [samples] bpf: add hbm sample to .gitignore (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix samples/bpf build failure due to undefined UINT32_MAX (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: fix segfault in bpf_object__init_maps' pr_debug statement (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: handle old kernels more graceful wrt global data sections (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand test_tc_tunnel with SIT encap (Yauheni Kaliuta) [1747615] - [net] bpf: update skb->protocol in bpf_skb_net_grow (Yauheni Kaliuta) [1747615] - [tools] bpf/flow_dissector: don't adjust nhoff by ETH_HLEN in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: properly return error from bpf_flow_load (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: run flow dissector tests in skb-less mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add flow dissector bpf_skb_load_bytes helper test (Yauheni Kaliuta) [1747615] - [net] bpf: when doing BPF_PROG_TEST_RUN for flow dissector use no-skb mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: drop bpf_verifier_lock (Yauheni Kaliuta) [1747615] - [kernel] bpf: remove global variables (Yauheni Kaliuta) [1747615] - [documentation] bpf: document the verifier limits (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix BPF_LOG_BUF_SIZE off-by-one error (Yauheni Kaliuta) [1747615] - [documentation] bpf: move BPF_PROG_TYPE_FLOW_DISSECTOR documentation to a new common place (Yauheni Kaliuta) [1747615] - [tools] bpf: Increase MAX_NR_MAPS to 17 in test_verifier.c (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix compile errors due to unsync linux/in6.h and netinet/in.h (Yauheni Kaliuta) [1747615] - [documentation] bpf: Document BPF_PROG_TYPE_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: fix a compilation error (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap memory prefetchw optimizations for struct page (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap do bulk allocation of SKBs (Yauheni Kaliuta) [1747615] - [net] core: introduce build_skb_around (Yauheni Kaliuta) [1747615] - [kernel] bpf: cpumap use ptr_ring_consume_batched (Yauheni Kaliuta) [1747615] - [tools] libbpf: optimize barrier for XDP socket rings (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf_id in map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: re-organize newline printing for map listing (Yauheni Kaliuta) [1747615] - [tools] bpftool: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix printf formatter for ptrdiff_t argument (Yauheni Kaliuta) [1747615] - [kernel] bpf: use BPF_CAST_CALL for casting bpf call (Yauheni Kaliuta) [1747615] - [uapi] bpf: allow clearing all sock_ops callback flags (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add VRF test cases to lwt_ip_encap test (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: make flow dissector tests more extensible (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: two scale tests (Yauheni Kaliuta) [1747615] - [tools] bpftool: Improve handling of ENOSPC on reuseport_array map dumps (Yauheni Kaliuta) [1747615] - [tools] bpftool: Use print_entry_error() in case of ENOENT when dumping (Yauheni Kaliuta) [1747615] - [tools] bpftool: add a note on program statistics in man page (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix short option name for printing version in man pages (Yauheni Kaliuta) [1747615] - [tools] bpftool: fix man page documentation for "pinmaps" keyword (Yauheni Kaliuta) [1747615] - [tools] bpftool: reset errno for "bpftool cgroup tree" (Yauheni Kaliuta) [1747615] - [tools] bpftool: remove blank line after btf_id when listing programs (Yauheni Kaliuta) [1747615] - [net] bpf: reserve flags in bpf_skb_net_shrink (Yauheni Kaliuta) [1747615] - [tools] bpf: fix whitespace for ENCAP_L2 defines in bpf.h (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bring back (void *) cast to set_ipv4_csum in test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] selftests/btf: add VAR and DATASEC case for dedup tests (Yauheni Kaliuta) [1747615] - [tools] btf: add support for VAR and DATASEC in btf_dedup() (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor "check_reg_arg" to eliminate code redundancy (Yauheni Kaliuta) [1747615] - [kernel] bpf: factor out reg and stack slot propagation into "propagate_liveness_reg" (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate code redundance (Yauheni Kaliuta) [1747615] - [kernel] bpf: refactor propagate_liveness to eliminate duplicated for loop (Yauheni Kaliuta) [1747615] - [netdrv] netdevsim: move sdev specific bpf debugfs files to sdev dir (Yauheni Kaliuta) [1747615] - [kernel] bpf: Fix distinct pointer types warning for ARCH=i386 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: C based test for sysctl and strtoX (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test ARG_PTR_TO_LONG arg type (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add sysctl and strtoX helpers to bpf_helpers.h (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_strtol and bpf_strtoul helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce ARG_PTR_TO_{INT,LONG} arg types (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test file_pos field in bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test BPF_CGROUP_SYSCTL (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test sysctl section name (Yauheni Kaliuta) [1747615] - [tools] libbpf: Support sysctl hook (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add file_pos field to bpf_sysctl ctx (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_{get, set}_new_value helpers (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_current_value helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Introduce bpf_sysctl_get_name helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sysctl hook (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add base proto function for cgroup-bpf programs (Yauheni Kaliuta) [1747615] - [net] bpf: explicitly prohibit ctx_{in, out} in non-skb BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: add L2 encap to test_tc_tunnel (Yauheni Kaliuta) [1747615] - [tools] bpf: sync bpf.h to tools/ for BPF_F_ADJ_ROOM_ENCAP_L2 (Yauheni Kaliuta) [1747615] - [net] bpf: add layer 2 encap support to bpf_skb_adjust_room (Yauheni Kaliuta) [1747615] - [tools] selftests_bpf: extend test_tc_tunnel for UDP encap (Yauheni Kaliuta) [1747615] - [kernel] bpf: fix missing bpf_check_uarg_tail_zero in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [s390] Convert IS_ENABLED uses to __is_defined (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: add selftest for __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] libbpf: add support for ctx_{size, }_{in, out} in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [net] bpf: support input __sk_buff context in BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747615] - [tools] bpftool: show btf id in program information (Yauheni Kaliuta) [1747615] - [tools] libbpf: Fix build with gcc-8 (Yauheni Kaliuta) [1747615] - [tools] libbpf: fix crash in XDP socket part with new larger BPF_LOG_BUF_SIZE (Yauheni Kaliuta) [1747615] - [tools] bpf, bpftool: fix a few ubsan warnings (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: add test cases for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, selftest: test {rd, wr}only flags and direct value access (Yauheni Kaliuta) [1747615] - [tools] bpf: bpftool support for dumping data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: add support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: support global data/bss/rodata sections (Yauheni Kaliuta) [1747615] - [tools] bpf, libbpf: refactor relocation handling (Yauheni Kaliuta) [1747615] - [tools] bpf: sync {btf, bpf}.h uapi header from tools infrastructure (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow for key-less BTF in array map (Yauheni Kaliuta) [1747615] - [kernel] bpf: kernel side support for BTF Var and DataSec (Yauheni Kaliuta) [1747615] - [documentation] bpf: add specification for BTF Var and DataSec kinds (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow . char as part of the object name (Yauheni Kaliuta) [1747615] - [kernel] bpf: add syscall side map freeze support (Yauheni Kaliuta) [1747615] - [kernel] bpf: add program side {rd, wr}only support for maps (Yauheni Kaliuta) [1747615] - [kernel] bpf: do not retain flags that are not tied to map lifetime (Yauheni Kaliuta) [1747615] - [kernel] bpf: implement lookup-free direct value access for maps (Yauheni Kaliuta) [1747615] - [net] ipv6: Add neighbor helpers that use the ipv6 stub (Yauheni Kaliuta) [1747615] - [tools] libbpf: Ignore -Wformat-nonliteral warning (Yauheni Kaliuta) [1747615] - [kernel] bpf: Add missed newline in verifier verbose log (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test unbounded var_off stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Sanity check max value for var_off stack access (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in unpriv mode (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [kernel] bpf: Reject indirect var_off stack access in raw mode (Yauheni Kaliuta) [1747615] - [samples] bpf: fix build with new clang (Yauheni Kaliuta) [1747615] - [samples] selftests/bpf: add NULL check for ksym_search (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: ksym_search won't check symbols exists (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: synthetic tests to push verifier limits (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add few verifier scale tests (Yauheni Kaliuta) [1747615] - [tools] libbpf: teach libbpf about log_level bit 2 (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase verifier log limit (Yauheni Kaliuta) [1747615] - [kernel] bpf: increase complexity limit and maximum program size (Yauheni Kaliuta) [1747615] - [kernel] bpf: verbose jump offset overflow check (Yauheni Kaliuta) [1747615] - [kernel] bpf: convert temp arrays to kvcalloc (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by not remarking live_read (Yauheni Kaliuta) [1747615] - [kernel] bpf: improve verification speed by droping states (Yauheni Kaliuta) [1747615] - [kernel] bpf: add verifier stats and log_level bit 2 (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: remove duplicate .flags initialization in ctx_skb.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-invalid-specifier for bpf_obj_id.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: fix -Wformat-security warning for flow_dissector_load.c (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tests.h should depend on .c files, not the output (Yauheni Kaliuta) [1747615] - [tools] bpf: add bpffs multi-dimensional array tests in test_btf (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Test variable offset stack access (Yauheni Kaliuta) [1747615] - [kernel] bpf: Support variable offset stack access from helpers (Yauheni Kaliuta) [1747615] - [net] ipv6: Move ipv6 stubs to a separate header file (Yauheni Kaliuta) [1747615] - [tools] bpf: generate pkg-config file for libbpf (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: don't depend on hardcoded perf sample_freq (Yauheni Kaliuta) [1747615] - [tools] bpf: test_tc_tunnel.sh needs reverse path filtering disabled (Yauheni Kaliuta) [1747615] - [tools] selftests: bpf: tc-bpf flow shaping with EDT (Yauheni Kaliuta) [1747615] - [net] bpf: make bpf_skb_ecn_set_ce callable from BPF_PROG_TYPE_SCHED_ACT (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to encap modes (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: convert bpf tunnel test to BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] bpf: Sync bpf.h to tools (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room encap flags (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room flag BPF_F_ADJ_ROOM_FIXED_GSO (Yauheni Kaliuta) [1747615] - [net] bpf: add bpf_skb_adjust_room mode BPF_ADJ_ROOM_MAC (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with tso (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: extend bpf tunnel test with gre (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test to ipv6 (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: expand bpf tunnel test with decap (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: bpf tunnel encap test (Yauheni Kaliuta) [1747615] - [net] bpf: in bpf_skb_adjust_room avoid copy in tx fast path (Yauheni Kaliuta) [1747615] - [samples] bpf: add xdp_sample_pkts to .gitignore (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: add tests for bpf_tcp_check_syncookie and bpf_skc_lookup_tcp (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: test references to sock_common (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: allow specifying helper for BPF_SK_LOOKUP (Yauheni Kaliuta) [1747615] - [tools] update uapi/linux/bpf.h (Yauheni Kaliuta) [1747615] - [net] bpf: add helper to check for a valid SYN cookie (Yauheni Kaliuta) [1747615] - [net] bpf: add skc_lookup_tcp helper (Yauheni Kaliuta) [1747615] - [kernel] bpf: allow helpers to return PTR_TO_SOCK_COMMON (Yauheni Kaliuta) [1747615] - [kernel] bpf: track references based on is_acquire_func (Yauheni Kaliuta) [1747615] - [tools] selftests/bpf: Add arm target register definitions (Yauheni Kaliuta) [1747615] - [documentation] bpf, doc: add RISC-V JIT to BPF documentation (Yauheni Kaliuta) [1747615] - [uapi] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1747615] - [uapi] bpf: add documentation for helpers bpf_spin_lock(), bpf_spin_unlock() (Yauheni Kaliuta) [1747615]- [perf] perf: Add CCPI2 PMU support in ThunderX2 UNCORE driver (Robert Richter) [1726054] - [documentation] documentation: perf: Update documentation for ThunderX2 PMU uncore driver (Robert Richter) [1726054] - [scsi] lpfc: Update lpfc version to 12.6.0.2 (Dick Kennedy) [1771674] - [scsi] lpfc: revise nvme max queues to be hdwq count (Dick Kennedy) [1771674] - [scsi] lpfc: Initialize cpu_map for not present cpus (Dick Kennedy) [1771674] - [scsi] lpfc: fix inlining of lpfc_sli4_cleanup_poll_list() (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_cmpl_els_rsp(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: fix: coverity: lpfc_get_scsi_buf_s3(): Null pointer dereferences (Dick Kennedy) [1771674] - [scsi] lpfc: Fix lpfc_cpumask_of_node_init() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_sli4_enable_intr() (Dick Kennedy) [1771674] - [scsi] lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq() (Dick Kennedy) [1771674] - [scsi] lpfc: Update lpfc version to 12.6.0.1 (Dick Kennedy) [1771674] - [scsi] lpfc: Add enablement of multiple adapter dumps (Dick Kennedy) [1771674] - [scsi] lpfc: Change default IRQ model on AMD architectures (Dick Kennedy) [1771674] - [scsi] lpfc: Add registration for CPU Offline/Online events (Dick Kennedy) [1771674] - [scsi] lpfc: Clarify FAWNN error message (Dick Kennedy) [1771674] - [scsi] lpfc: Sync with FC-NVMe-2 SLER change to require Conf with SLER (Dick Kennedy) [1771674] - [scsi] lpfc: Fix dynamic fw log enablement check (Dick Kennedy) [1771674] - [scsi] lpfc: Fix unexpected error messages during RSCN handling (Dick Kennedy) [1771674] - [scsi] lpfc: Fix kernel crash at lpfc_nvme_info_show during remote port bounce (Dick Kennedy) [1771674] - [scsi] lpfc: Fix configuration of BB credit recovery in service parameters (Dick Kennedy) [1771674] - [scsi] lpfc: Fix duplicate unreg_rpi error in port offline flow (Dick Kennedy) [1771674] - [infiniband] ib/srp: Add missing new line after displaying fast_io_fail_tmo param (Kamal Heib) [1678461 1720899] - [net] sunrpc: The RDMA back channel mustn't disappear while requests are outstanding (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Skip counter if port doesn't match (Kamal Heib) [1720899] - [rdma] uverbs: Prevent potential underflow (Kamal Heib) [1720899] - [infiniband] ib/core: Use rdma_read_gid_l2_fields to compare GID L2 fields (Kamal Heib) [1720899] - [infiniband] rdma/siw: free siw_base_qp in kref release routine (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: move iw_rem_ref() calls out of spinlock (Kamal Heib) [1720899] - [infiniband] ib/core: Fix wrong iterating on ports (Kamal Heib) [1720899] - [infiniband] rdma/nldev: Reshuffle the code to avoid need to rebind QP in error path (Kamal Heib) [1720899] - [infiniband] rdma/cm: Fix memory leak in cm_add/remove_one (Kamal Heib) [1720899] - [infiniband] rdma/core: Fix an error handling path in 'res_get_common_doit()' (Kamal Heib) [1720899] - [infiniband] rdma/iwcm: Fix a lock inversion issue (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix serialization issue in write_space() (Kamal Heib) [1720899] - [infiniband] rdma/vmw_pvrdma: Free SRQ only once (Kamal Heib) [1757294 1720899] - [infiniband] rdma: Fix double-free in srq creation error flow (Kamal Heib) [1720899] - [infiniband] rdma/siw: Fix page address mapping in TX path (Kamal Heib) [1720899] - [infiniband] rdma/cma: Fix false error message (Kamal Heib) [1720899] - [infiniband] rdma/{cxgb3, cxgb4, i40iw}: Remove common code (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Fix use after free and refcnt leak on ndev in_device in iwarp_query_port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/core: Add common iWARP query port (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/i40iw: Associate ibdev to netdev before IB device registration (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma/cxgb3: Use ib_device_set_netdev() (Kamal Heib) [1760097 1745655 1720899] - [infiniband] rdma: Introduce ib_port_phys_state enum (Kamal Heib) [1760097 1745655 1720899] - [sched] topology: Improve load balancing on AMD EPYC systems (Phil Auld) [1757535] - [netdrv] broadcom: Use dev_get_drvdata (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add a new BNXT_FW_RESET_STATE_POLL_FW_DOWN state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.100 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Increase timeout for HWRM_DBG_COREDUMP_XX commands (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Don't proceed in .ndo_set_rx_mode() when device is not in open state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix compile error regression with CONFIG_BNXT_SRIOV not set (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add FW fatal devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add bnxt_fw_exception() to handle fatal firmware errors (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add RESET_FW state logic to bnxt_fw_reset_task() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Do not send firmware messages if firmware is in error state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Retain user settings on a VF after RESET_NOTIFY event (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add devlink health reset reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle RESET_NOTIFY async event from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add new FW devlink_health_reporter (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add BNXT_STATE_IN_FW_RESET state (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Enable health monitoring (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Pre-map the firmware health monitoring registers (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Discover firmware error recovery capabilities (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle firmware reset status during IF_UP (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Register buffers for VFs before reserving resources (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_sriov_enable() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Prepare bnxt_init_one() to be called multiple times (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress all error messages in hwrm_do_send_msg() in silent mode (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Simplify error checking in the SR-IOV message forwarding functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Convert error code in firmware message response to standard code (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Remove the -1 error return code from bnxt_hwrm_do_send_msg() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use a common function to print the same ethtool -f error message (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix allocation of zero statistics block size regression (Jonathan Toppins) [1724766] - [netdrv] bnxt: no need to check return value of debugfs_create functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add PCI IDs for 57500 series NPAR devices (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support all variants of the 5750X chip family (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_init_one() and turn on TPA support on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Support TPA counters on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Allocate the larger per-ring statistics block for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor ethtool ring statistics logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add hardware GRO setup function for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA ID mapping logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add fast path logic for TPA on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Set TPA GRO mode flags on 57500 chips properly (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor tunneled hardware GRO logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Handle standalone RX_AGG completions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Expand bnxt_tpa_info struct to support 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor TPA logic (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add TPA structure definitions for BCM57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.89 (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix to include flow direction in L2 key (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Use correct src_fid to determine direction of the flow (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Improve RX doorbell sequence (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC clearing logic for 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix VNIC accounting when enabling aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add page_pool_destroy() during RX ring cleanup (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: add page_pool support (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: optimized XDP_REDIRECT support (Jonathan Toppins) [1724766 1669220] - [netdrv] bnxt_en: Refactor __bnxt_xmit_xdp() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: rename some xdp functions (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Device serial number is supported only for PFs (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Query firmware capability to support aRFS on 57500 chips (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Separate RDMA MR/AH context allocation (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: read the clause type from the PHY ID (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Read package version from firmware (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Check new firmware capability to display extended stats (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Add support for PCIe statistics (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Refactor bnxt_alloc_stats() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Update firmware interface to 1.10.0.69 (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_port_parent_id implementation for physical ports (Jonathan Toppins) [1724766] - [netdrv] bnxt: pass switch ID through devlink_port_attrs_set() (Jonathan Toppins) [1724766] - [netdrv] bnxt: move bp->switch_id initialization to PF probe (Jonathan Toppins) [1724766] - [netdrv] bnxt: remove ndo_get_phys_port_name implementation (Jonathan Toppins) [1724766] - [netdrv] bnxt: implement ndo_get_devlink_port (Jonathan Toppins) [1724766] - [netdrv] bnxt: Implement ndo_get_port_parent_id() (Jonathan Toppins) [1724766] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1724766] - [netdrv] bnxt_en: Fix firmware signaled resource change logic in open (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-thoughs (Jonathan Toppins) [1724766] - [netdrv] bnx2x: Mark expected switch fall-throughs (Jonathan Toppins) [1724766] - [tools] selftests: kvm: vmx_dirty_log_test: skip the test when VMX is not supported (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: consolidate VMX support checks (Vitaly Kuznetsov) [1771575] - [tools] selftests: kvm: vmx_set_nested_state_test: don't check for VMX support twice (Vitaly Kuznetsov) [1771575] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769904] - [net] vsock: Send reset control packet when socket is partially bound (Stefano Garzarella) [1769904] - [net] vsock/virtio: fix sock refcnt holding during the shutdown (Stefano Garzarella) [1769855] - [kernel] vsock/virtio: remove unused 'work' field from 'struct virtio_vsock_pkt' (Stefano Garzarella) [1769855] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 482 (Stefano Garzarella) [1769855] - [net] vsock/virtio: set SOCK_DONE on peer shutdown (Stefano Garzarella) [1769855] - [net] vsock/virtio: discard packets if credit is not respected (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: send a credit update when buffer size is changed (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: a better comment on credit update (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: fix locking in virtio_transport_inc_tx_pkt() (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: reduce credit update messages (Stefano Garzarella) [1769853 1769846 1769836] - [net] vsock/virtio: change the maximum packet size allowed (Stefano Garzarella) [1679971] - [vhost] vsock: split packets to send using multiple buffers (Stefano Garzarella) [1679971] - [net] vsock/virtio: limit the memory used per-socket (Stefano Garzarella) [1769744] - [net] vsock/virtio: free packets during the socket release (Stefano Garzarella) [1769744] - [net] vsock: Fix a lockdep warning in __vsock_release() (Stefano Garzarella) [1769714] - [net] vsock: correct removal of socket from the list (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Stefano Garzarella) [1769714] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 321 (Stefano Garzarella) [1769714] - [net] Fix ERROR:do not initialise statics to 0 in af_vsock.c (Stefano Garzarella) [1769714] - [net] vsock: bind to random port for VMADDR_PORT_ANY (Stefano Garzarella) [1769714] - [tools] tc-testing: added tests with cookie for conntrack TC action (Ivan Vecera) [1739606] - [net] cls_bpf: fix NULL deref on offload filter removal (Ivan Vecera) [1739606] - [tools] tc-testing: fixed two failing pedit tests (Ivan Vecera) [1739606] - [tools] tc-testing: implement tests for new fast_init action flag (Ivan Vecera) [1739606] - [net] sched: update action implementations to support flags (Ivan Vecera) [1739606] - [net] sched: use temporary variable for actions indexes (Ivan Vecera) [1739606] - [net] sched: extend TCA_ACT space with TCA_ACT_FLAGS (Ivan Vecera) [1739606] - [net] sched: modify stats helper functions to support regular stats (Ivan Vecera) [1739606] - [net] sched: don't expose action qstats to skb_tc_reinsert() (Ivan Vecera) [1739606] - [net] sched: extract qstats update code into functions (Ivan Vecera) [1739606] - [net] sched: extract bstats update code into function (Ivan Vecera) [1739606] - [net] sched: extract common action counters update code into function (Ivan Vecera) [1739606] - [tools] tc-testing: list required kernel options for act_ct action (Ivan Vecera) [1739606] - [net] fq_codel: do not include (Ivan Vecera) [1739606] - [net] sch_generic: Use pfifo_fast as fallback scheduler for CAN hardware (Ivan Vecera) [1739606] - [net] sched: taprio: fix -Wmissing-prototypes warnings (Ivan Vecera) [1739606] - [net] sched: act_police: re-use tcf_tm_dump() (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit TDC tests (Ivan Vecera) [1739606] - [net] sched: Avoid using yield() in a busy waiting loop (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] sched: etf: Fix ordering of packets with same txtime (Ivan Vecera) [1739606] - [tools] tc-testing: updated pedit test cases (Ivan Vecera) [1739606] - [net] taprio: Fix returning EINVAL when configuring without flags (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_ACT_KIND (Ivan Vecera) [1739606] - [net] net_sched: fix backward compatibility for TCA_KIND (Ivan Vecera) [1739606] - [net] sched: Set default of CONFIG_NET_TC_SKB_EXT to N (Ivan Vecera) [1739606] - [net] sch_netem: fix rcu splat in netem_enqueue() (Ivan Vecera) [1739606] - [net] net_sched: remove need_resched() from qdisc_run() (Ivan Vecera) [1739606] - [net] sched: cbs: Avoid division by zero when calculating the port rate (Ivan Vecera) [1739606] - [net] sched: taprio: Avoid division by zero on invalid link speed (Ivan Vecera) [1739606] - [net] sched: taprio: Fix potential integer overflow in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] sched: cbs: Fix not adding cbs instance to list (Ivan Vecera) [1739606] - [net] Fix Kconfig indentation (Ivan Vecera) [1739606] - [net] net_sched: add policy validation for action attributes (Ivan Vecera) [1739606] - [net] net_sched: add max len check for TCA_KIND (Ivan Vecera) [1739606] - [net] taprio: Add support for hardware offloading (Ivan Vecera) [1739606] - [net] sched: use get_dev() action API in flow_action infra (Ivan Vecera) [1739606] - [net] sched: take reference to psample group in flow_action infra (Ivan Vecera) [1739606] - [net] sched: extend flow_action_entry with destructor (Ivan Vecera) [1739606] - [net] sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero (Ivan Vecera) [1739606] - [net] net_sched: check cops->tcf_block in tc_bind_tclass() (Ivan Vecera) [1739606] - [net] sched: fix reordering issues (Ivan Vecera) [1739606] - [net] net_sched: act_police: add 2 new attributes to support police 64bit rate and peakrate (Ivan Vecera) [1739606] - [net] openvswitch: Set OvS recirc_id from tc chain index (Ivan Vecera) [1739606] - [net] sk_buff: drop all skb extensions on free and skb scrubbing (Ivan Vecera) [1739606] - [net] minor cleanup in skb_ext_add() (Ivan Vecera) [1739606] - [include] net: drop the unused helper skb_ext_get() (Ivan Vecera) [1739606] - [net] fix possible user-after-free in skb_ext_add() (Ivan Vecera) [1739606] - [net] sk_buff: add skb extension infrastructure (Ivan Vecera) [1739606] - [net] sched: cbs: remove redundant assignment to variable port_rate (Ivan Vecera) [1739606] - [tools] tc-testing: don't hardcode 'ip' in nsPlugin.py (Ivan Vecera) [1739606] - [net] sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate (Ivan Vecera) [1739606] - [net] taprio: Set default link speed to 10 Mbps in taprio_set_picos_per_byte (Ivan Vecera) [1739606] - [net] taprio: Fix kernel panic in taprio_destroy (Ivan Vecera) [1739606] - [netdrv] mlx5e: Move local var definition into ifdef block (Ivan Vecera) [1739606] - [net] sched: cls_matchall: cleanup flow_action before deallocating (Ivan Vecera) [1739606] - [net] sched: act_vlan: implement stats_update callback (Ivan Vecera) [1739606] - [net] sched: act_sample: fix psample group handling on overwrite (Ivan Vecera) [1739606] - [net] sched: flower: don't take rtnl lock for cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: copy tunnel info when setting flow_action entry->tunnel (Ivan Vecera) [1739606] - [net] sched: take reference to action dev before calling offloads (Ivan Vecera) [1739606] - [net] sched: take rtnl lock in tc_setup_flow_action() (Ivan Vecera) [1739606] - [net] sched: conditionally obtain rtnl lock in cls hw offloads API (Ivan Vecera) [1739606] - [net] sched: add API for registering unlocked offload block callbacks (Ivan Vecera) [1739606] - [net] sched: notify classifier on successful offload add/delete (Ivan Vecera) [1739606] - [net] sched: refactor block offloads counter usage (Ivan Vecera) [1739606] - [net] sched: change tcf block offload counter type to atomic_t (Ivan Vecera) [1739606] - [net] sched: protect block offload-related fields with rw_semaphore (Ivan Vecera) [1739606] - [net] net_sched: fix a NULL pointer deref in ipt action (Ivan Vecera) [1739606] - [tools] tc-testing: concurrency: wrap piped rule update commands (Ivan Vecera) [1739606] - [tools] tc-testing: use dedicated DUMMY interface name for dummy dev (Ivan Vecera) [1739606] - [net] flow_offload: convert block_ing_cb_list to regular list type (Ivan Vecera) [1739606] - [netdrv] sched: use major priority number as hardware priority (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for matchall filter (Ivan Vecera) [1739606] - [net] taprio: remove unused variable 'entry_list_policy' (Ivan Vecera) [1739606] - [tools] tc-testing: updated skbedit action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update skbedit action for batched events operations (Ivan Vecera) [1739606] - [net] fq_codel: remove set but not used variables 'prev_ecn_mark' and 'prev_drop_count' (Ivan Vecera) [1739606] - [net] flow_offload: support get multi-subsystem block (Ivan Vecera) [1739606] - [net] flow_offload: move tc indirect block to flow offload (Ivan Vecera) [1739606] - [net] cls_api: add flow_indr_block_call function (Ivan Vecera) [1739606] - [net] cls_api: remove the tcf_block cache (Ivan Vecera) [1739606] - [net] cls_api: modify the tc_indr_block_ing_cmd parameters. (Ivan Vecera) [1739606] - [net] sched: sch_taprio: fix memleak in error path for sched list parse (Ivan Vecera) [1739606] - [net] fq_codel: Kill useless per-flow dropped statistic (Ivan Vecera) [1739606] - [net] Increase fq_codel count in the bulk dropper (Ivan Vecera) [1739606] - [include] sched: sample: allow accessing psample_group with rtnl (Ivan Vecera) [1739606] - [tools] tc-testing: updated vlan action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update vlan action for batched events operations (Ivan Vecera) [1739606] - [tools] tc-testing: Clarify the use of tdc's -d option (Ivan Vecera) [1739606] - [net] sched: Fix a possible null-pointer dereference in dequeue_func() (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for [b|p]fifo qdisc (Ivan Vecera) [1739606] - [net] ife: error out when nla attributes are empty (Ivan Vecera) [1739606] - [net] sched: verify that q!=NULL before setting q->flags (Ivan Vecera) [1739606] - [net] net_sched: unset TCQ_F_CAN_BYPASS when adding filters (Ivan Vecera) [1739606] - [net] fix: taprio: Change type of txtime-delay parameter to u32 (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [include] pkt_sched: Include const.h (Ivan Vecera) [1739606] - [tools] tc-testing: introduce scapyPlugin for basic traffic (Ivan Vecera) [1739606] - [tools] tc-testing: Allow tdc plugins to see test case data (Ivan Vecera) [1739606] - [tools] tc-testing: added tdc tests for prio qdisc (Ivan Vecera) [1739606] - [tools] tc-testing: updated mirred action tests with batch create/delete (Ivan Vecera) [1739606] - [net] sched: update mirred action for batched events operations (Ivan Vecera) [1739606] - [net] sched: em_ipt: add support for addrtype matching (Ivan Vecera) [1739606] - [net] sched: em_ipt: keep the user-specified nfproto and dump it (Ivan Vecera) [1739606] - [net] sched: em_ipt: set the family based on the packet if it's unspecified (Ivan Vecera) [1739606] - [net] sched: em_ipt: match only on ip/ipv6 traffic (Ivan Vecera) [1739606] - [net] taprio: Adjust timestamps for TCP packets (Ivan Vecera) [1739606] - [net] taprio: make clock reference conversions easier (Ivan Vecera) [1739606] - [net] taprio: Add support for txtime-assist mode (Ivan Vecera) [1739606] - [net] taprio: Remove inline directive (Ivan Vecera) [1739606] - [net] taprio: calculate cycle_time when schedule is installed (Ivan Vecera) [1739606] - [net] etf: Add skip_sock_check (Ivan Vecera) [1739606] - [include] etf: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [tools] tc-testing: add ingress qdisc tests (Ivan Vecera) [1739606] - [tools] tc-testing: Restore original behaviour for namespaces in tdc (Ivan Vecera) [1739606] - [include] net: sched: act_ctinfo: tidy UAPI definition (Ivan Vecera) [1739606] - [include] act_ctinfo: Don't use BIT() in UAPI headers. (Ivan Vecera) [1739606] - [net] sched: cls_matchall: allow to delete filter (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix policy validation (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: fix action creation (Ivan Vecera) [1739606] - [tools] tc-tests: updated skbedit tests (Ivan Vecera) [1739606] - [tools] tc-tests: added path to ip command in tdc (Ivan Vecera) [1739606] - [net] sched: remove NET_CLS_IND config option (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: use extack error reporting (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for clsact Qdisc ops (Ivan Vecera) [1739606] - [net] sched: ingress: set 'unlocked' flag for Qdisc ops (Ivan Vecera) [1739606] - [tools] tc-tests: updated fw with bind actions by reference use cases (Ivan Vecera) [1739606] - [net] sched: act_ctinfo: minor size optimisation (Ivan Vecera) [1739606] - [net] flow_offload: use struct_size() in kzalloc() (Ivan Vecera) [1739606] - [net] sched: don't use tc_action->order during action dump (Ivan Vecera) [1739606] - [net] sch_htb: redefine htb qdisc overlimits (Ivan Vecera) [1739606] - [tools] selftests: tc-testing: Add pedit tests (Ivan Vecera) [1739606] - [net] sched: add ingress mirred action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add helpers to detect ingress mirred actions (Ivan Vecera) [1757520] - [net] sched: add skbedit of ptype action to hardware IR (Ivan Vecera) [1757520] - [include] net: tc_act: add skbedit_ptype helper functions (Ivan Vecera) [1757520] - [net] openvswitch: load and reference the NAT helper. (Flavio Leitner) [1752970] - [net] openvswitch: load NAT helper (Flavio Leitner) [1752970] - [net] netfilter: nf_nat: register NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: add API to manage NAT helpers. (Flavio Leitner) [1752970] - [net] netfilter: use macros to create module aliases. (Flavio Leitner) [1752970] - [net] xfrm: remove a duplicated assignment (Sabrina Dubroca) [1760002] - [net] xfrm: remove empty xfrmi_init_net (Sabrina Dubroca) [1760002] - [net] xfrm: remove unneeded export_symbols (Sabrina Dubroca) [1760002] - [include] xfrm: clean an indentation issue, remove a space (Sabrina Dubroca) [1760002] - [net] xfrm6: remove BUG_ON from xfrm6_dst_ifdown (Sabrina Dubroca) [1760002] - [net] xfrm: policy: add missing indentation (Sabrina Dubroca) [1760002] - [net] xfrm: Fix bucket count reported to userspace (Sabrina Dubroca) [1760002] - [net] xfrm: use complete IPv6 addresses for hash (Sabrina Dubroca) [1760002] - [net] xfrm: use correct size to initialise sp->ovec (Sabrina Dubroca) [1760002] - [net] xfrm: allow driver to quietly refuse offload (Sabrina Dubroca) [1760002] - [net] esp: remove redundant define esph (Sabrina Dubroca) [1760002] - [net] ip6_vti: simplify stats handling in vti6_xmit (Sabrina Dubroca) [1760002] - [net] xfrm: fix 'passing zero to ERR_PTR()' warning (Sabrina Dubroca) [1760002] - [net] xfrm: remove blank lines at EOF (Sabrina Dubroca) [1760002] - [net] xfrm: don't check offload_handle for nonzero (Sabrina Dubroca) [1760002] - [net] ipv6: xfrm: use 64-bit timestamps (Sabrina Dubroca) [1760002] - [net] devlink: Introduce PCI VF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Introduce PCI PF port flavour and port attribute (Petr Oros) [1761495] - [net] devlink: Return physical port fields only for applicable port flavours (Petr Oros) [1761495] - [net] devlink: Refactor physical port attributes (Petr Oros) [1761495] - [net] ipv4: fix race condition between route lookup and invalidation (Guillaume Nault) [1765639] - [net] add {READ|WRITE}_ONCE() annotations on ->rskq_accept_head (Guillaume Nault) [1765639] - [net] ipv4/icmp: fix rt dst dev null pointer dereference (Guillaume Nault) [1765639] - [net] ipip: validate header length in ipip_tunnel_xmit (Guillaume Nault) [1765639] - [net] ipv4: Use return value of inet_iif() for __raw_v4_lookup in the while loop (Guillaume Nault) [1765639] - [net] ipv4: Fix raw socket lookup for local traffic (Guillaume Nault) [1765639] - [net] ipv4: Return error for RTA_VIA attribute (Guillaume Nault) [1765639] - [net] ipmr: fix unresolved entry dumps (Guillaume Nault) [1765639] - [net] ipvs: don't ignore errors in case refcounting ip_vs module fails (Davide Caratti) [1687094] - [net] ipvs: fix tinfo memory leak in start_sync_thread (Davide Caratti) [1687094] - [net] tcp: fix a possible lockdep splat in tcp_done() (Marcelo Leitner) [1764654] - [net] tcp: add rcu protection around tp->fastopen_rsk (Marcelo Leitner) [1764654] - [net] tcp: annotate lockless access to tcp_memory_pressure (Marcelo Leitner) [1764654] - [net] tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR (Marcelo Leitner) [1764654] - [net] tcp: inherit timestamp on mtu probe (Marcelo Leitner) [1764654] - [net] tcp: remove empty skb from write queue in error cases (Marcelo Leitner) [1764654] - [net] tcp: get rid of tcp_check_send_head() (Marcelo Leitner) [1764654] - [net] tcp: make sure EPOLLOUT wont be missed (Marcelo Leitner) [1764654] - [net] ipv4: set the tcp_min_rtt_wlen range from 0 to one day (Marcelo Leitner) [1764654] - [net] net-tcp: /proc/sys/net/ipv4/tcp_probe_interval is a u32 not int (Marcelo Leitner) [1764654] - [net] tcp: fix a race in inet_diag_dump_icsk() (Marcelo Leitner) [1764654] - [net] netfilter: nft_meta: Add NFT_META_I/OIFKIND meta type (Florian Westphal) [1763657] - [net] netfilter: nft_xfrm: use state family, not hook one (Florian Westphal) [1763654] - [net] netfilter: nf_tables: add xfrm expression (Florian Westphal) [1763654] - [net] netfilter: nf_tables: rt: allow checking if dst has xfrm attached (Florian Westphal) [1763654] - [netdrv] mlx5e: Fix unnecessary flow_block_cb_is_busy call (Ivan Vecera) [1737890] - [netdrv] nfp: flower: verify that block cb is not busy before binding (Ivan Vecera) [1737890] - [netdrv] net/mlx5e: Provide cb_list pointer when setting up tc block on rep (Ivan Vecera) [1737890] - [net] sched: Fix NULL-pointer dereference in tc_indr_block_ing_cmd() (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block structure and use it (Ivan Vecera) [1737890] - [net] flow_offload: rename tc_setup_cb_t to flow_setup_cb_t (Ivan Vecera) [1737890] - [include] flow_offload: include linux/kernel.h from flow_offload.h (Ivan Vecera) [1737890] - [net] flow_offload: remove netns parameter from flow_block_cb_alloc() (Ivan Vecera) [1737890] - [net] openvswitch: rename flow_stats to sw_flow_stats (Ivan Vecera) [1737890] - [netdrv] mlx5e: Fix unused variable warning when CONFIG_MLX5_ESWITCH is off (Ivan Vecera) [1737890] - [netdrv] net: flow_offload: rename tc_cls_flower_offload to flow_cls_offload (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_is_busy() and use it (Ivan Vecera) [1737890] - [net] sched: remove tcf block API (Ivan Vecera) [1737890] - [include] sched: use new symbol for TC kABI version (Ivan Vecera) [1737890] - [netdrv] use flow block API (Ivan Vecera) [1737890] - [net] sched: use flow block API (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_{priv, incref, decref}() (Ivan Vecera) [1737890] - [net] flow_offload: add list handling functions (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_alloc() and flow_block_cb_free() (Ivan Vecera) [1737890] - [net] flow_offload: rename TCF_BLOCK_BINDER_TYPE_* to FLOW_BLOCK_BINDER_TYPE_* (Ivan Vecera) [1737890] - [net] flow_offload: rename TC_BLOCK_{UN}BIND to FLOW_BLOCK_{UN}BIND (Ivan Vecera) [1737890] - [net] flow_offload: add flow_block_cb_setup_simple() (Ivan Vecera) [1737890] - [net] openvswitch: free vport unless register_netdevice() succeeds (Stefano Brivio) [1765580] - [net] openvswitch: Clear the L4 portion of the key for "later" fragments. (Stefano Brivio) [1765580] - [net] openvswitch: Properly set L4 keys on "later" IP fragments (Stefano Brivio) [1765580] - [net] openvswitch: Print error when ovs_execute_actions() fails (Stefano Brivio) [1765580] - [net] openvswitch: do not free vport if register_netdevice() is failed. (Stefano Brivio) [1765580] - [net] xfrm: policy: remove pcpu policy cache (Xin Long) [1743519] - [net] netem: correct the parent's backlog when corrupted packet was dropped (Davide Caratti) [1764553] - [net] netem: fix error path for corrupted GSO frames (Davide Caratti) [1764553] - [net] avoid potential infinite loop in tc_ctl_action() (Davide Caratti) [1764553] - [net] act_mirred: Fix mirred_init_module error handling (Davide Caratti) [1764553] - [net] sch_dsmark: fix potential NULL deref in dsmark_init() (Davide Caratti) [1764553] - [net] sch_cbq: validate TCA_CBQ_WRROPT to avoid crash (Davide Caratti) [1764553] - [net] sched: sch_sfb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: multiq: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: sch_htb: don't call qdisc_put() while holding tree lock (Davide Caratti) [1764553] - [net] sched: fix possible crash in tcf_action_destroy() (Davide Caratti) [1764553] - [net] sch_netem: fix a divide by zero in tabledist() (Davide Caratti) [1764553] - [net] sched: act_sample: don't push mac header on ip6gre ingress (Davide Caratti) [1764553] - [net] net_sched: let qdisc_put() accept NULL pointer (Davide Caratti) [1764553] - [net] tcp: adjust rto_base in retransmits_timed_out() (Marcelo Leitner) [1756775] - [net] tcp: better handle TCP_USER_TIMEOUT in SYN_SENT state (Marcelo Leitner) [1756775] - [include] netlink: use 48 byte ctx instead of 6 signed longs for callback (Petr Oros) [1751273] - [net] rtnetlink: skip metrics loop for dst_default_metrics (Petr Oros) [1751273] - [include] netlink: Add field to skip in-kernel notifications (Petr Oros) [1751273] - [include] netlink: Document all fields of 'struct nl_info' (Petr Oros) [1751273] - [net] ipoib: show VF broadcast address (Petr Oros) [1751273] - [net] remove empty netlink_tap_exit_net (Petr Oros) [1751273] - [net] netlink: make netlink_walk_start() void return type (Petr Oros) [1751273] - [include] net: nexthop uapi (Petr Oros) [1751273] - [net] Treat sock->sk_drops as an unsigned int when printing (Petr Oros) [1751273] - [net] fix two coding style issues (Petr Oros) [1751273] - [net] ipset: drop ipset_nest_start() and ipset_nest_end() (Petr Oros) [1751273] - [net] netlink: make nla_nest_start() add NLA_F_NESTED flag (Petr Oros) [1751273] - [net] netfilter: nf_tables: fix a missing check of nla_put_failure (Petr Oros) [1751273] - [net] ncsi: fix a missing check for nla_nest_start (Petr Oros) [1751273] - [net] genetlink: use idr_alloc_cyclic for family->id assignment (Petr Oros) [1751273] - [net] netlink: Check address length before reading groups field (Petr Oros) [1751273] - [net] core: Fix rtnetlink kernel-doc headers (Petr Oros) [1751273] - [net] rhashtable: Remove obsolete rhashtable_walk_init function (Petr Oros) [1751273] - [net] netfilter: nf_tables: use rhashtable_walk_enter instead of rhashtable_walk_init (Petr Oros) [1751273] - [net] netlink: reduce NLA_POLICY_NESTED{, _ARRAY} arguments (Petr Oros) [1751273] - [net] netlink: rename NETLINK_DUMP_STRICT_CHK -> NETLINK_GET_STRICT_CHK (Petr Oros) [1751273] - [include] netlink: replace __NLA_ENSURE implementation (Petr Oros) [1751273] - [include] netlink: fix typo in nla_parse_nested() comment (Petr Oros) [1751273] - [net] netlink: remove hash::nelems check in netlink_insert (Petr Oros) [1751273] - [net] netlink: Make groups check less stupid in netlink_bind() (Petr Oros) [1751273] - [include] genetlink: constify genl_err_attr() argument (Petr Oros) [1751273] - [net] netlink: do not store start function in netlink_cb (Petr Oros) [1751273] - [include] linux: Add skb_frag_t page_offset accessors (Petr Oros) [1757515] - [include] net: add missing documentation in linux/skbuff.h (Petr Oros) [1757515] - [net] l2tp: Fix possible NULL pointer dereference (Stefano Brivio) [1764185] - [net] l2ip: fix possible use-after-free (Stefano Brivio) [1764185] - [net] l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() (Stefano Brivio) [1764185] - [net] l2tp: fix infoleak in l2tp_ip6_recvmsg() (Stefano Brivio) [1764185] - [net] l2tp: copy 4 more bytes to linear part if necessary (Stefano Brivio) [1764185] - [net] l2tp: fix reading optional fields of L2TPv3 (Stefano Brivio) [1764185] - [net] l2tp: remove ->recv_payload_hook (Stefano Brivio) [1764185] - [net] l2tp: don't export l2tp_session_queue_purge() (Stefano Brivio) [1764185] - [net] l2tp: remove .show from struct l2tp_tunnel (Stefano Brivio) [1764185] - [netdrv] vxlan: do not destroy fdb if register_netdevice() is failed (Stefano Brivio) [1763793] - [net] ip6erspan: remove the incorrect mtu limit for ip6erspan (Stefano Brivio) [1763286] - [net] ipv6: Handle missing host route in __ipv6_ifa_notify (Stefano Brivio) [1763286] - [net] ipv6: drop incoming packets having a v4mapped source address (Stefano Brivio) [1763286] - [net] ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit (Stefano Brivio) [1763286] - [net] mld: fix memory leak in mld_del_delrec() (Stefano Brivio) [1763286] - [net] ipv6: rt6_check should return NULL if 'from' is NULL (Stefano Brivio) [1763286] - [net] ipv6_sockglue: Fix a missing-check bug in ip6_ra_control() (Stefano Brivio) [1763286] - [net] ipv6_gre: Fix GRO to work on IPv6 over GRE tap (Stefano Brivio) [1763286] - [net] ipv4: Return -ENETUNREACH if we can't create route but saddr is valid (Stefano Brivio) [1686686] - [net] netfilter: nft_connlimit: disable bh on garbage collection (Florian Westphal) [1762844] - [net] netfilter: ebtables: Fix argument order to ADD_COUNTER (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: reject trailing data after last rule (Florian Westphal) [1762844] - [net] netfilter: ebtables: CONFIG_COMPAT: drop a bogus WARN_ON (Florian Westphal) [1762844] - [net] netfilter: bridge: set skb transport_header before entering NF_INET_PRE_ROUTING (Florian Westphal) [1762844] - [net] netfilter: ebtables: also count base chain policies (Florian Westphal) [1762844] - [net] netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are present (Florian Westphal) [1762844] - [net] sctp: change sctp_prot .no_autobind with true (Xin Long) [1762625] - [net] sctp: destroy bucket if failed to bind addr (Xin Long) [1762625] - [net] sctp: remove redundant assignment when call sctp_get_port_local (Xin Long) [1762625] - [net] sctp: change return type of sctp_get_port_local (Xin Long) [1762625] - [net] sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()' (Xin Long) [1762625] - [net] sctp: fix the missing put_user when dumping transport thresholds (Xin Long) [1762625] - [net] sctp: use transport pf_retrans in sctp_do_8_2_transport_strike (Xin Long) [1762625] - [net] sctp: allow users to set ep ecn flag by sockopt (Xin Long) [1762625] - [net] sctp: allow users to set netns ecn flag with sysctl (Xin Long) [1762625] - [net] sctp: make ecn flag per netns and endpoint (Xin Long) [1762625] - [net] sctp: remove net sctp.x_enable working as a global switch (Xin Long) [1762625] - [net] sctp: add SCTP_AUTH_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: add sctp_auth_init and sctp_auth_free (Xin Long) [1762625] - [net] sctp: use ep and asoc auth_enable properly (Xin Long) [1762625] - [net] sctp: add SCTP_ASCONF_SUPPORTED sockopt (Xin Long) [1762625] - [net] sctp: check asoc peer.asconf_capable before processing asconf (Xin Long) [1762625] - [net] sctp: not set peer.asconf_capable in sctp_association_init (Xin Long) [1762625] - [net] sctp: add asconf_enable in struct sctp_endpoint (Xin Long) [1762625] - [net] sctp: fix memleak in sctp_send_reset_streams (Xin Long) [1762625] - [net] sctp: fix the transport error_count check (Xin Long) [1762625] - [net] sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions (Ivan Vecera) [1737820] - [net] avoid errors when trying to pop MLPS header on non-MPLS packets (Ivan Vecera) [1737820] - [net] netfilter: connlabels: prefer static lock initialiser (Ivan Vecera) [1737820] - [net] sched: include mpls actions in hardware intermediate representation (Ivan Vecera) [1737820] - [net] sched: Make NET_ACT_CT depends on NF_NAT (Ivan Vecera) [1737820] - [tools] tc-tests: Add tc action ct tests (Ivan Vecera) [1737820] - [net] sched: cls_flower: Add matching on conntrack info (Ivan Vecera) [1737820] - [net] flow_dissector: add connection tracking dissection (Ivan Vecera) [1737820] - [net] sched: Introduce action ct (Ivan Vecera) [1737820] - [tools] tc-tests: actions: add MPLS tests (Ivan Vecera) [1737820] - [net] sched: add mpls manipulation actions to TC (Ivan Vecera) [1737820] - [net] core: add MPLS update core helper and use in OvS (Ivan Vecera) [1737820] - [net] core: move pop MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] core: move push MPLS functionality from OvS to core helper (Ivan Vecera) [1737820] - [net] sched: Introduce act_ctinfo action (Ivan Vecera) [1737820] - [netdrv] mlx5e: Allow dissector meta key in tc flower (Ivan Vecera) [1762861] - [tools] selftests: tc: add ingress device matching support (Ivan Vecera) [1762861] - [net] flow_offload: implement support for meta key (Ivan Vecera) [1762861] - [net] sched: cls_flower: use flow_dissector for ingress ifindex (Ivan Vecera) [1762861] - [net] flow_dissector: add support for ingress ifindex dissection (Ivan Vecera) [1762861] - [net] udp: only do GSO if # of segs > 1 (Guillaume Nault) [1762357] - [net] udp: fix gso_segs calculations (Guillaume Nault) [1762357] - [tools] selftests: rtnetlink: add small test case with 'promote_secondaries' enabled (Petr Oros) [1759177] - [net] ipv4: fix infinite loop on secondary addr promotion (Petr Oros) [1759177] - [tools] selftests: rtnetlink: add addresses with fixed life time (Petr Oros) [1759177] - [net] ipv4: remove erroneous advancement of list pointer (Petr Oros) [1759177] - [net] ipv4: fix rcu lockdep splat due to wrong annotation (Petr Oros) [1759177] - [net] ipv4: provide __rcu annotation for ifa_list (Petr Oros) [1759177] - [drivers] use in_dev_for_each_ifa_rtnl/rcu (Petr Oros) [1759177] - [net] use new in_dev_ifa iterators (Petr Oros) [1759177] - [net] netfilter: use in_dev_for_each_ifa_rcu (Petr Oros) [1759177] - [net] devinet: use in_dev_for_each_ifa_rcu in more places (Petr Oros) [1759177] - [net] inetdevice: provide replacement iterators for in_ifaddr walk (Petr Oros) [1759177] - [fs] afs: do not send list of client addresses (Petr Oros) [1759177] - [net] sctp: add SCTP_SEND_FAILED_EVENT event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_MADE_PRIM event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_REMOVED event (Xin Long) [1751129] - [net] sctp: add SCTP_ADDR_ADDED event (Xin Long) [1751129] - [netdrv] team: call RCU read lock when walking the port_list (Hangbin Liu) [1724896] - [net] packet: fix race in tpacket_snd() (Davide Caratti) [1760276] - [net] packet: fix memory leak in packet_set_ring() (Davide Caratti) [1760276] - [net] packet: unconditionally free po->rollover (Davide Caratti) [1760276] - [net] llc: fix skb leak in llc_build_and_send_ui_pkt() (Davide Caratti) [1760276] - [net] af_key: fix leaks in key_pol_get_resp and dump_sp. (Davide Caratti) [1760276] - [net] packet: in recvmsg msg_name return at least sizeof sockaddr_ll (Davide Caratti) [1760276] - [net] packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec (Davide Caratti) [1760276] - [net] packet: fix 4gb buffer limit due to overflow check (Davide Caratti) [1760276] - [net] llc: do not use sk_eat_skb() (Davide Caratti) [1760276] - [fs] proc: fix /proc/net/* after setns(2) (Davide Caratti) [1760276] - [net] Unpublish sk from sk_reuseport_cb before call_rcu (Paolo Abeni) [1760409] - [net] Fix null de-reference of device refcount (Paolo Abeni) [1760409] - [include] ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled (Paolo Abeni) [1760409] - [net] neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit (Paolo Abeni) [1760409] - [net] ebpf: record usage of flow dissector (Jiri Benc) [1749812] - [tools] selftests/bpf: More compatible nc options in test_lwt_ip_encap (Jiri Benc) [1749812] - [tools] selftests/bpf: Set rp_filter in test_flow_dissector (Jiri Benc) [1749812] - [net] bpf: lwtunnel: fix reroute supplying invalid dst (Jiri Benc) [1749812] - [kernel] rh_features: convert to atomic allocation (Jiri Benc) [1749812] - [net] xsk: lock the control mutex in sock_diag interface (Jiri Benc) [1749812] - [documentation] networking: fix af_xdp.rst Sphinx warnings (Jiri Benc) [1749812] - [documentation] flow_dissector: rst'ify documentation (Jiri Benc) [1749812] - [documentation] flow_dissector: document BPF flow dissector environment (Jiri Benc) [1749812] - [net] xsk: fix umem memory leak on cleanup (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid options in Tx descriptor (Jiri Benc) [1749812] - [net] xsk: fix to reject invalid flags in xsk_bind (Jiri Benc) [1749812] - [net] xsk: fix potential crash in xsk_diag_put_umem() (Jiri Benc) [1749812] - [net] bpfilter: re-add header search paths to tools include to fix build error (Jiri Benc) [1749812] - [documentation] xsk: add FAQ to facilitate for first time users (Jiri Benc) [1749812] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN for flow dissector (Jiri Benc) [1749812] - [tools] sync uapi/linux/if_link.h header (Jiri Benc) [1749812] - [net] xdp: allow generic and driver XDP on one interface (Jiri Benc) [1749812] - [net] xdp: Provide extack messages when prog attachment failed (Jiri Benc) [1749812] - [net] bpfilter: remove extra header search paths for bpfilter_umh (Jiri Benc) [1749812] - [include] bpf: fix missing prototype warnings (Jiri Benc) [1749812] - [net] xsk: add sock_diag interface for AF_XDP (Jiri Benc) [1749812] - [net] xsk: add id to umem (Jiri Benc) [1749812] - [net] xsk: track AF_XDP sockets on a per-netns list (Jiri Benc) [1749812] - [include] redhat: rh_kabi: introduce RH_KABI_EXTEND_WITH_SIZE (Jiri Benc) [1749812] - [net] tcp: Avoid TCP syncookie rejected by SO_REUSEPORT socket (Jiri Benc) [1749812] - [net] tcp: use monotonic timestamps for PAWS (Jiri Benc) [1749812] - [net] tcp: remove one indentation level in tcp_create_openreq_child (Jiri Benc) [1749812] - [netdrv] ppp: Fix memory leak in ppp_write (Guillaume Nault) [1759312] - [netdrv] ppp: deflate: Fix possible crash in deflate_init (Guillaume Nault) [1759312] - [netdrv] pppoe: fix reception of frames with no mac header (Guillaume Nault) [1759312] - [net] tcp_bbr: fix quantization code to not raise cwnd if not probing bandwidth (Florian Westphal) [1759208] - [net] tcp_bbr: refactor bbr_target_cwnd() for general inflight provisioning (Florian Westphal) [1759208] - [net] tcp_bbr: centralize code to set gains (Florian Westphal) [1759208] - [net] tcp_bbr: apply PROBE_RTT cwnd cap even if acked==0 (Florian Westphal) [1759208] - [net] tcp_bbr: in restart from idle, see if we should exit PROBE_RTT (Florian Westphal) [1759208] - [net] tcp_bbr: add bbr_check_probe_rtt_done() helper (Florian Westphal) [1759208] - [net] xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode (Hangbin Liu) [1734589] - [tools] selftests: forwarding: gre_multipath: Fix flower filters (Hangbin Liu) [1756832] - [tools] selftests: forwarding: gre_multipath: Enable IPv4 forwarding (Hangbin Liu) [1756832] - [tools] set sysctl bc_forwarding properly in router_broadcast.sh (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: enable forwarding before ipv4 from/iif test (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: use pre-defined DEV_ADDR (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: fix local IPv4 address typo (Hangbin Liu) [1756832] - [tools] selftests: fib_rule_tests: print the result and return 1 if any tests failed (Hangbin Liu) [1756832] - [tools] selftests: fib_tests: Fix 'Command line is not complete' errors (Hangbin Liu) [1756832] - [tools] selftests: Update fib_tests to handle missing ping6 (Hangbin Liu) [1756832] - [tools] fib_tests: Add tests for metrics on routes (Hangbin Liu) [1756832] - [tools] selftests: udpgso_bench.sh explicitly requires bash (Hangbin Liu) [1756832] - [tools] selftests/net: add tls to .gitignore (Hangbin Liu) [1756832] - [net] ipv4: avoid mixed n_redirects and rate_tokens usage (Paolo Abeni) [1753092] - [lib] netlink: set bad attribute also on maxtype check (Petr Oros) [1757776] - [lib] netlink: add validation of NLA_F_NESTED flag (Petr Oros) [1757776] - [net] ila: Fix rhashtable walker list corruption (Petr Oros) [1757776] - [lib] ila: make lockdep happy again (Petr Oros) [1757776] - [net] genetlink: do not validate dump requests if there is no policy (Petr Oros) [1757776] - [include] netlink: Fix nlmsg_parse as a wrapper for strict message parsing (Petr Oros) [1757776] - [net] tipc: fix missing indentation in source code (Petr Oros) [1757776] - [net] genetlink: optionally validate strictly/dumps (Petr Oros) [1757776] - [lib] netlink: add strict parsing for future attributes (Petr Oros) [1757776] - [include] netlink: re-add parse/validate functions in strict mode (Petr Oros) [1757776] - [net] netlink: make validation more configurable for future strictness (Petr Oros) [1757776] - [lib] netlink: add NLA_MIN_LEN (Petr Oros) [1757776] - [net] genetlink: make policy common to family (Petr Oros) [1757776] - [net] ila: Flush netlink command to clear xlat table (Petr Oros) [1757776] - [net] ila: Create main ila source file (Petr Oros) [1757776] - [net] ila: Call library function alloc_bucket_locks (Petr Oros) [1757776] - [net] ila: Fix use of rhashtable walk in ila_xlat.c (Petr Oros) [1757776] - [net] rtnetlink: fix rtnl_valid_stats_req() nlmsg_len check (Petr Oros) [1757750] - [net] mpls: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] mpls: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addrlabel: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv6: addr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: ipmr: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: route: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] ipv4: netconf: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] namespace: perform strict checks also for doit handlers (Petr Oros) [1757750] - [net] rtnetlink: ifinfo: perform strict checks also for doit handler (Petr Oros) [1757750] - [net] rtnetlink: stats: reject requests for unknown stats (Petr Oros) [1757750] - [net] rtnetlink: stats: validate attributes in get as well as dumps (Petr Oros) [1757750] - [net] netlink: add helper to retrieve NETLINK_F_STRICT_CHK (Petr Oros) [1757750] - [include] linux/netlink.h: drop unnecessary extern prefix (Petr Oros) [1757750] - [net] rtnetlink: avoid frame size warning in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: remove a level of indentation in rtnl_newlink() (Petr Oros) [1757750] - [net] rtnetlink: Add more extack messages to rtnl_newlink (Petr Oros) [1757750] - [net] netfilter: nf_tables: allow lookups in dynamic sets (Florian Westphal) [1759074] - [net] netfilter: nf_tables: check the result of dereferencing base_chain->stats (Florian Westphal) [1759074] - [net] revert "netfilter: nft_hash: add map lookups for hashing operations" (Florian Westphal) [1759074] - [net] netfilter: nf_tables: don't prevent event handler from device cleanup on netns exit (Florian Westphal) [1759074] - [net] netfilter: nft_ct: enable conntrack for helpers (Florian Westphal) [1759074] - [net] netfilter: conntrack: always store window size un-scaled (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix rst sequence number mismatch (Florian Westphal) [1758668] - [net] netfilter: synproxy: fix erroneous tcp mss option (Florian Westphal) [1758668] - [net] netfilter: nfnetlink: avoid deadlock due to synchronous request_module (Florian Westphal) [1758668] - [net] netfilter: nf_queue: fix reinject verdict handling (Florian Westphal) [1758668] - [net] netfilter: conntrack: Use consistent ct id hash calculation (Florian Westphal) [1758668] - [net] netfilter: ctnetlink: don't use conntrack/expect object addresses as id (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls for an l3mdev slave (Florian Westphal) [1758668] - [net] netfilter: avoid using skb->nf_bridge directly (Florian Westphal) [1758668] - [net] netfilter: nat: can't use dst_hold on noref dst (Florian Westphal) [1758668] - [net] netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev (Florian Westphal) [1758668] - [net] netfilter: conntrack: fix removal of conntrack entries when l4tracker is removed (Florian Westphal) [1758668] - [net] netfilter: xt_hashlimit: fix a possible memory leak in htable_create() (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: add missing code to get interface index in checkentry. (Florian Westphal) [1758668] - [net] netfilter: xt_TEE: fix wrong interface selection (Florian Westphal) [1758668] - [net] netfilter: xtables: avoid BUG_ON (Florian Westphal) [1758668] - [net] netfilter: nat: limit port clash resolution attempts (Florian Westphal) [1758646] - [net] netfilter: nat: remove l4 protocol port rovers (Florian Westphal) [1758646] - [net] neighbour: remove stray semicolon (Ivan Vecera) [1757459] - [net] neighbor: Initialize protocol when new pneigh_entry are created (Ivan Vecera) [1757459] - [net] neighbour: register rtnl doit handler (Ivan Vecera) [1757459] - [net] neighbor: Add protocol attribute (Ivan Vecera) [1757459] - [net] neighbor: Add extack messages for add and delete commands (Ivan Vecera) [1757459] - [net] rtnetlink: address is mandatory for rtnl_fdb_get (Ivan Vecera) [1757105] - [netdrv] vxlan: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] rtnetlink: support for fdb get (Ivan Vecera) [1757105] - [net] bridge: support for ndo_fdb_get (Ivan Vecera) [1757105] - [net] ipmr: remove hard code cache_resolve_queue_len limit (Hangbin Liu) [1631022] - [net] ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set (Hangbin Liu) [1740961] - [net] xfrm interface: fix management of phydev (Xin Long) [1727240] - [net] xfrm interface: fix list corruption for x-netns (Xin Long) [1727240] - [net] xfrm interface: ifname may be wrong in logs (Xin Long) [1727240] - [net] xfrm interface: avoid corruption on changelink (Xin Long) [1727240] - [net] netlink: add validation function to policy (Ivan Vecera) [1753333] - [net] netlink: add attribute range validation to policy (Ivan Vecera) [1753333] - [net] sched: police: allow accessing police->params with rtnl (Ivan Vecera) [1731416] - [net] sched: remove block pointer from common offload structure (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload install and remove functionality. (Ivan Vecera) [1731416] - [net] nfp: flower: add qos offload framework (Ivan Vecera) [1731416] - [net] sched: add block pointer to tc_cls_common_offload structure (Ivan Vecera) [1731416] - [net] sched: allow stats updates from offloaded police actions (Ivan Vecera) [1731416] - [net] sched: extend matchall offload for hardware statistics (Ivan Vecera) [1731416] - [net] sched: add police action to the hardware intermediate representation (Ivan Vecera) [1731416] - [net] sched: move police action structures to header (Ivan Vecera) [1731416] - [net] sched: remove unused functions for matchall offload (Ivan Vecera) [1731416] - [net] dsa: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [netdrv] mlxsw: use intermediate representation for matchall offload (Ivan Vecera) [1731416] - [net] tipc: disallow enabling of loopback interface bearer (Jon Maloy) [1717305] - [net] tipc: add NULL pointer check before calling kfree_rcu (Jon Maloy) [1747392] - [net] xsk: Return the whole xdp_desc from xsk_umem_consume_tx (Ivan Vecera) [1748497] - [net] devlink: add warning for ndo_get_port_parent_id set when not needed (Petr Oros) [1737133] - [net] devlink: introduce devlink_compat_switch_id_get() helper (Petr Oros) [1737133] - [net] devlink: extend port attrs for switch ID (Petr Oros) [1737133] - [net] devlink: convert devlink_port_attrs bools to bits (Petr Oros) [1737133] - [net] devlink: add warning for ndo_get_phys_port_name set when not needed (Petr Oros) [1737133] - [netdrv] nfp: move devlink port type set after netdev registration (Petr Oros) [1737133] - [netdrv] dsa: move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] mlxsw: Move devlink_port_attrs_set() call before register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port type after registration (Petr Oros) [1737133] - [netdrv] bnxt: call devlink_port_type_eth_set() before port register (Petr Oros) [1737133] - [netdrv] bnxt: set devlink port attrs properly (Petr Oros) [1737133] - [netdrv] dsa: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] bnxt: add missing net/devlink.h include (Petr Oros) [1737133] - [netdrv] revert "devlink: Add a generic wake_on_lan port parameter" (Petr Oros) [1737133] - [netdrv] bnxt_en: Add bnxt_en initial port params table and register it (Petr Oros) [1737133] - [netdrv] mlxsw: spectrum: Assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [netdrv] netdevsim: assume CONFIG_NET_DEVLINK is always enabled (Petr Oros) [1737527] - [net] devlink: introduce devlink_compat_phys_port_name_get() (Petr Oros) [1737527] - [net] replace ndo_get_devlink with ndo_get_devlink_port (Petr Oros) [1737527] - [net] devlink: select NET_DEVLINK from drivers (Petr Oros) [1737527] - [net] devlink: add port type spinlock (Petr Oros) [1737527] - [net] devlink: warn on setting type on unregistered port (Petr Oros) [1737527] - [net] devlink: disallow port_attrs_set() to be called before register (Petr Oros) [1737527] - [net] devlink: don't pass return value of __devlink_port_type_set() (Petr Oros) [1737527] - [net] devlink: don't take devlink_mutex for devlink_compat_* (Petr Oros) [1737527] - [net] devlink: add couple of missing mutex_destroy() calls (Petr Oros) [1737527] - [net] devlink: fix kdoc (Petr Oros) [1737527] - [net] devlink: require non-NULL ops for devlink instances (Petr Oros) [1737527] - [net] devlink: hold a reference to the netdevice around ethtool compat (Petr Oros) [1737527] - [net] devlink: create a special NDO for getting the devlink instance (Petr Oros) [1737527] - [net] devlink: Add WARN_ON to catch errors of not cleaning devlink objects (Petr Oros) [1737527] - [netdrv] s390/qeth: fix xmit_more support (Ivan Vecera) [1734516] - [netdrv] revert "[netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only)" (Ivan Vecera) [1734516] - [netdrv] net/mlx5e: Fix wrong xmit_more application (Ivan Vecera) [1734516] - [include] net: use correct this_cpu primitive in dev_recursion_level (Ivan Vecera) [1734516] - [netdrv] drivers: net: aurora: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: net: sfc: use netdev_xmit_more helper (Ivan Vecera) [1734516] - [netdrv] drivers: mellanox: use netdev_xmit_more() helper (Ivan Vecera) [1734516] - [netdrv] net: move skb->xmit_more hint to softnet data (Ivan Vecera) [1734516] - [net] place xmit recursion in softnet data (Ivan Vecera) [1734516]- [netdrv] net: ena: clean up indentation issue (John Linville) [1770979] - [netdrv] net: ena: Select DIMLIB for ENA_ETHERNET (John Linville) [1770979] - [netdrv] net: ena: fix incorrect update of intr_delay_resolution (John Linville) [1770979] - [netdrv] net: ena: fix retrieval of nonadaptive interrupt moderation intervals (John Linville) [1770979] - [netdrv] net: ena: fix update of interrupt moderation register (John Linville) [1770979] - [netdrv] net: ena: remove all old adaptive rx interrupt moderation code from ena_com (John Linville) [1770979] - [netdrv] net: ena: remove ena_restore_ethtool_params() and relevant fields (John Linville) [1770979] - [netdrv] net: ena: remove old adaptive interrupt moderation code from ena_netdev (John Linville) [1770979] - [netdrv] net: ena: remove code duplication in ena_com_update_nonadaptive_moderation_interval _*() (John Linville) [1770979] - [netdrv] net: ena: enable the interrupt_moderation in driver_supported_features (John Linville) [1770979] - [netdrv] net: ena: reimplement set/get_coalesce() (John Linville) [1770979] - [netdrv] net: ena: switch to dim algorithm for rx adaptive interrupt moderation (John Linville) [1770979] - [netdrv] net: ena: add intr_moder_rx_interval to struct ena_com_dev and use it (John Linville) [1770979]- [fs] autofs: add ignore mount option (Ian Kent) [1743441] - [fs] autofs: improve ioctl sbi checks (Ian Kent) [1672133] - [crypto] crypto: ccp - Retry SEV INIT command in case of integrity check failure. (Gary Hook) [1767627] - [crypto] crypto: ccp - Verify access to device registers before initializing (Gary Hook) [1756867] - [crypto] crypto: ccp - Change a message to reflect status instead of failure (Gary Hook) [1756867] - [netdrv] ixgbevf: Bump version for RHEL 8.2.0 (Ken Cox) [1721701] - [netdrv] ixgbevf: Fix secpath usage for IPsec Tx offload (Ken Cox) [1721701] - [netdrv] ixgbevf: make array api static const, makes object smaller (Ken Cox) [1721701] - [netdrv] ixgbevf: Link lost in VM on ixgbevf when restoring from freeze or suspend (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a compilation error of skb_frag_t (Ken Cox) [1721701] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721701] - [netdrv] ixgbevf: Use cached link state instead of re-reading the value for ethtool (Ken Cox) [1721701] - [netdrv] ixgbevf: fix possible divide by zero in ixgbevf_update_itr (Ken Cox) [1721701] - [netdrv] ixgbevf: fix a missing check of ixgbevf_write_msg_read_ack (Ken Cox) [1721701] - [infiniband] IB/hfi1: Use a common pad buffer for 9B and 16B packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid excessive retry for TID RDMA READ request (Honggang Li) [1719676] - [infiniband] RDMA/hfi1: Prevent memory leak in sdma_init (Honggang Li) [1719676] - [infiniband] IB/hfi1: remove unlikely() from IS_ERR*() condition (Honggang Li) [1719676] - [infiniband] IB/hfi1: Define variables as unsigned long to fix KASAN warning (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add a counter for credit waits (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add traces for TID RDMA READ (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix memory leaks (Honggang Li) [1719676] - [infiniband] infiniband: hfi1: fix a memory leak bug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets that cause TIDErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop stale TID RDMA packets (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix Spectre v1 vulnerability (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove unused define (Honggang Li) [1719676] - [infiniband] IB/hfi1: Do not update hcrc for a KDETH packet during fault injection (Honggang Li) [1719676] - [infiniband] IB/hfi1: Drop all TID RDMA READ RESP packets after r_next_psn (Honggang Li) [1719676] - [infiniband] IB/hfi1: Field not zero-ed when allocating TID flow memory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Unreserve a flushed OPFN request (Honggang Li) [1719676] - [infiniband] IB/hfi1: Check for error on call to alloc_rsm_map_table (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix variable shadowing issue in rvt_create_cq (Honggang Li) [1719676] - [infiniband] RDMA/rvt: Do not use a kernel header in the ABI (Honggang Li) [1719676] - [infiniband] IB/hfi1: No need to use try_module_get for debugfs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add trace for map_mr_sg (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Enhance trace information for FRWR debug (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add missing INVALIDATE opcodes for trace (Honggang Li) [1719676] - [infiniband] IB/hfi1: Reduce excessive aspm inlines (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Add helpers to hide SWQE WR details (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1, qib}: Remove AH refcount for UD QPs (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Set QP allowed opcodes after QP allocation (Honggang Li) [1719676] - [infiniband] IB/{hfi1, qib, rdmavt}: Put qp in error state when cq is full (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fracture single lock used for posting and processing RWQEs (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move receive work queue struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/hfi1: Move rvt_cq_wc struct into uapi directory (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Add new completion inline (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Convert to new completion API (Honggang Li) [1719676] - [infiniband] IB/hfi1: Spelling s/statisfied/satisfied/ (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle port down properly in pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Handle wakeup of orphaned QPs for pio (Honggang Li) [1719676] - [infiniband] IB/hfi1: Wakeup QPs orphaned on wait list after flush (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use aborts to trigger RC throttling (Honggang Li) [1719676] - [infiniband] IB/hfi1: Create inline to get extended headers (Honggang Li) [1719676] - [infiniband] IB/hfi1: Silence txreq allocation warnings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Avoid hardlockup with flushlist_lock (Honggang Li) [1719676] - [infiniband] IB/hfi1: Correct tid qp rcd to match verbs context (Honggang Li) [1719676] - [infiniband] IB/hfi1: Close PSM sdma_progress sleep window (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate fault injection opcode user input (Honggang Li) [1719676] - [infiniband] IB/hfi1: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use struct_size() helper (Honggang Li) [1719676] - [infiniband] IB/hfi1: Validate page aligned for a given virtual address (Honggang Li) [1719676] - [infiniband] IB/{qib, hfi1, rdmavt}: Correct ibv_devinfo max_mr value (Honggang Li) [1719676] - [infiniband] IB/hfi1: Insure freeze_work work_struct is canceled on shutdown (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix alloc_qpn() WARN_ON() (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove set but not used variables 'offset' and 'fspsn' (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Catch use-after-free access of AH structures (Honggang Li) [1719676] - [infiniband] IB/hfi1: Remove reference to RHF.VCRCErr (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add selected Rcv counters (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, qib, hfi1}: Use new routine to release reference counts (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Use more efficient allowed_ops (Honggang Li) [1719676] - [infiniband] IB/rdmavt: Fix ab/ba include issues (Honggang Li) [1719676] - [infiniband] IB/hfi1: Make opfn.h self sufficient (Honggang Li) [1719676] - [infiniband] IB/{rdmavt, hfi1): Miscellaneous comment fixes (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add debugfs to control expansion ROM write protect (Honggang Li) [1719676] - [infiniband] hfi1: Convert hfi1_unit_table to XArray (Honggang Li) [1719676] - [infiniband] hfi1: Convert vesw_idr to XArray (Honggang Li) [1719676] - [infiniband] RDMA/rdmavt: Use correct sizing on buffers holding page DMA addresses (Honggang Li) [1719676] - [infiniband] IB/hfi1: Fix two format strings (Honggang Li) [1719676] - [infiniband] IB/hfi1: Add running average for adaptive pio (Honggang Li) [1719676] - [infiniband] mm: replace all open encodings for NUMA_NO_NODE (Honggang Li) [1719676] - [infiniband] drivers/IB,hfi1: do not se mmap_sem (Honggang Li) [1719676] - [infiniband] IB/hfi1: Suppress a compiler warning (Honggang Li) [1719676] - [scsi] qla2xxx: Update driver version (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: don't use zero for FC4_PRIORITY_NVME (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: initialize fc4_type_priority (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fix NPIV tear down process (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove an include directive (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix device connect issues in P2P configuration (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Improve logging for scan thread (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Capture FW dump on MPI heartbeat stop event (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Check for MB timeout while capturing ISP27/28xx FW dump (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Set remove flag for all VP (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Add error handling for PLOGI ELS passthrough (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Dual FCP-NVMe target port support (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix a dma_pool_free() call (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix memory leak when sending I/O fails (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix driver unload hang (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix SRB leak on switch command timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix double scsi_done for abort path (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Do command completion on abort timeout (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Reduce the number of forward declarations (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: fixup incorrect usage of host_byte (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Fix partial flash write of MBI (Himanshu Madhani) [1763248] - [scsi] scsi: qla2xxx: Remove WARN_ON_ONCE in qla2x00_status_cont_entry() (Himanshu Madhani) [1763248] - [scsi] qla2xxx: Fix conflict_port check for NULL (Himanshu Madhani) [1763248] - [netdrv] Bump version for RHEL 8.2.0 (Ken Cox) [1721700] - [netdrv] ixgbe: Fix secpath usage for IPsec TX offload. (Ken Cox) [1721700] - [netdrv] ixgbe: fix double clean of Tx descriptors with xdp (Ken Cox) [1721700] - [netdrv] ixgbe: Prevent u8 wrapping of ITR value to something less than 10us (Ken Cox) [1721700] - [netdrv] ixgbe: use skb_get_queue_mapping in tx path (Ken Cox) [1721700] - [netdrv] ixgbe: fix memory leaks (Ken Cox) [1721700] - [netdrv] ixgbe: sync the first fragment unconditionally (Ken Cox) [1721700] - [netdrv] ixgbe: Use kzfree() rather than its implementation. (Ken Cox) [1721700] - [netdrv] ixgbe: simplify Rx buffer recycle (Ken Cox) [1721700] - [netdrv] ixgbe: no need to check return value of debugfs_create functions (Ken Cox) [1721700] - [netdrv] ixgbe: fix possible deadlock in ixgbe_service_task() (Ken Cox) [1721700] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721700] - [netdrv] ixgbe: fix potential u32 overflow on shift (Ken Cox) [1721700] - [netdrv] ixgbe: Avoid NULL pointer dereference with VF on non-IPsec hw (Ken Cox) [1721700] - [netdrv] ixgbe: Check DDM existence in transceiver before access (Ken Cox) [1721700] - [netdrv] ixgbe: implement support for SDP/PPS output on X550 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: Use LLDP ethertype define ETH_P_LLDP (Ken Cox) [1721700] - [netdrv] ixgbe: add a kernel documentation comment for ixgbe_ptp_get_ts_config (Ken Cox) [1721700] - [netdrv] ixgbe: use 'cc' instead of 'hw_cc' for local variable (Ken Cox) [1721700] - [netdrv] ixgbe: fix PTP SDP pin setup on X540 hardware (Ken Cox) [1721700] - [netdrv] ixgbe: reduce PTP Tx timestamp timeout to 1 second (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx packet count (Ken Cox) [1721700] - [netdrv] ixgbe: fix AF_XDP tx byte count (Ken Cox) [1721700] - [netdrv] ixgbe: remove umem from adapter (Ken Cox) [1721700] - [netdrv] ixgbe: add tracking of AF_XDP zero-copy state for each queue pair (Ken Cox) [1721700] - [netdrv] ixgbe: fix mdio bus registration (Ken Cox) [1721700] - [netdrv] nfp: bpf: implement jitting of JMP32 (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support removing dead code (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: support optimizing dead branches (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: save original program length (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: split up the skip flag (Pablo Cascon) [1729067] - [netdrv] nfp: bpf: don't use instruction number for jump target (Pablo Cascon) [1729067] - [scsi] scsi: target: iscsi: rename some variables to avoid confusion. (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: tie the challenge length to the hash digest size (Maurizio Lombardi) [1769801] - [scsi] scsi: target: iscsi: CHAP: add support for SHA1, SHA256 and SHA3-256 (Maurizio Lombardi) [1769801] - [scsi] scsi: target: compare full CHAP_A Algorithm strings (Maurizio Lombardi) [1769801] - [arm64] arm64: topology: Use PPTT to determine if PE is a thread (Jeremy Linton) [1721297] - [acpi] ACPI/PPTT: Add support for ACPI 6.3 thread flag (Jeremy Linton) [1721297] - [acpi] ACPI / LPSS: Save/restore LPSS private registers also on Lynxpoint (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] docs: fix numaperf.rst and add it to the doc tree (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Rename arm_smmu_v3_set_proximity() 'node' local variable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [misc] h8300: pci: Remove local declaration of pcibios_penalize_isa_irq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mm] mmc: sdhci-acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [ata] ata: pata_acpi: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [gpu] vga-switcheroo: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_ips: make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: intel_pmc: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: apple-gmux: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/intel/lpss: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/Kconfig: Select PCI_LOCKLESS_CONFIG if PCI is enabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [mfd] mfd: Fix unmet dependency warning for MFD_TPS68470 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] drivers/acpi/scan.c: document why we don't need the device_hotplug_lock (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Fix regression in acpi_device_set_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Add new hw_changes_brightness quirk, set it on PB Easynote MZ35 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: blacklist: fix clang warning for unused DMI table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Update table load object initialization" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Make acpi_sleep_state_supported() non-static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove needless __ghes_check_estatus() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Unexport acpi_device_get_power() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI / ACPI: Use cached ACPI device state to get PCI device power state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190703 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update table load object initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for object initialization sequence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: remove legacy module-level code due to deprecation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: simplify creation of the initial/default namespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: intel: Drop double removal of address space handler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APD: remove redundant assignment to pointer clk (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Introduce "poweroff" callbacks for ACPI PM domain and LPSS (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Simplify and fix PM domain hibernation callbacks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PM: ACPI/PCI: Resume all devices during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI: PM/ACPI: Refresh all stale power state data in pci_pm_complete() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add function to return ACPI 6.3 Identical tokens (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Modify node flag detection to find last IDENTICAL (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Introduce concept of a _PR0 dependent device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Allow transitions to D0 to occur in special cases (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Avoid evaluating _PS3 on transitions from D3hot to D3cold (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: utils: Cleanup acpi_dev_match_cb (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make AC and battery drivers available on !X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] coresight: acpi: Support for AMBA components (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs on first direct enable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: configfs: Resolve objects on host-directed table loads (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Allow BGRT to be overridden (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / sleep: Switch to use acpi_dev_get_first_match_dev() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] gpio: merrifield: Fix build err without CONFIG_ACPI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: OSL: Make a W=1 kernel-doc warning go away (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Don't limit named child node matching to data nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPIT: Correct LPIT end address for lpit_process() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/irq: Implement helper to create hierachical domains (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add memory-side caching attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Add heterogenous memory access attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] node: Link memory nodes to their compute nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [documentation] doc/mm: New documentation for memory performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Call pm_set_suspend_via_firmware() during hibernation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PCI: PM: Add missing wakeup.flags.valid checks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build error when IOMMU_SUPPORT is disabled (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Set enable_for_wake for wakeup GPEs during suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190509 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Linux: move ACPI_DEBUG_DEFAULT flag out of ifndef (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: change _ADR representation to 64 bits (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: fix handling of data_nodes in acpi_get_next_subnode() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix an uninitialized memory_target (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Update acpi_hmat_type enum with ACPI_HMAT_TYPE_PROXIMITY (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: fix memory leaks in hmat_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Check ATS capability in root complex nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: Use dev_get_drvdata() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: event: replace strcpy() by strscpy() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Use acpi_lpss_* instead of acpi_subsys_* functions for hibernate (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Reject platform device creation on NUMA node mapping failure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: button: reinitialize button state upon resume (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190405 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: add check to avoid null pointer dereference (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190329 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: utilities: fix spelling of PCC to platform_comm_channel (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg length macro/define for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg compare macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename nameseg copy macro for clarity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Print debug messages when enabling GPEs for wakeup (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register memory side cache attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register performance attributes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Register processor domain to its memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi/hmat: Parse and report heterogeneous memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Add HMAT to generic parsing tables (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi: Create subtable parsing infrastructure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [arm64] arm64: numa: rework ACPI NUMA initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Add support for PMCG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: video: Use vendor backlight on Sony VPCEH3U1E (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Remove deprecated function since no user left (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Clean up whitespace (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add labels for PNP button devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Simplify acpi_bus_extract_wakeup_device_power_package() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix comment typos (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPICA: Clear status of GPEs before enabling them" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Namespace: remove address node from global list after method termination (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of GPEs before enabling them (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: use different default debug value than ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / utils: Drop reference in test for device presence (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: sysfs: Prevent get_status() from returning acpi_status (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / device_sysfs: Avoid OF modalias creation for removed device (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local data structures static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / configfs: Mark local functions static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: tables: Simplify PPTT leaf node detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Respect PRP0001 when retrieving device match data (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190215 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add GTDT Revision 3 support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: HMAT updates (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: PPTT add additional fields in Processor Structure Flags (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add Error Disconnect Recover Notification value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: MADT: add support for statistical profiling in GICC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [clk] clk: x86: Move clk-lpss.h to platform_data/x86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: Fix possible out-of-bounds access to BERT region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Set P_LVL{2, 3sc] } idle state descriptions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / CPPC: Add a helper to get desired performance (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: SRAT: add Generic Affinity Structure subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Add Trigger order to PCC Identifier structure in PDTT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update/clarify messages for control method failures (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Fix possible fault with the "test objects" command (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Interpreter: Emit warning for creation of a zero-length op region (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove legacy module-level code support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: Make PWM2 device always present at Lenovo Yoga Book (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Extend chassis-type detection with a "Lunch Box" check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / video: Refactor and fix dmi_is_desktop() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Add support for the SDEI GHES Notification type (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [firmware] firmware: arm_sdei: Add ACPI GHES registration helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/PPTT: Add acpi_pptt_warn_missing() to consolidate logs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Use separate fixmap pages for arm64 NMI-like notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Only use queued estatus entry during in_nmi_queue_one_entry() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Split ghes_read_estatus() to allow a peek at the CPER length (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make GHES estatus header validation more user friendly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Pass ghes and estatus separately to avoid a later copy (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Let the notification helper specify the fixmap slot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move locking to the notification helper (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch NOTIFY_SEA to use the estatus queue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Move NOTIFY_SEA between the estatus-queue and NOTIFY_NMI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't allow ghes_ack_error() to mask earlier errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Generalise the estatus queue's notify code (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't update struct ghes' flags in read/clear estatus (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove spurious GHES_TO_CLEAR check (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't store CPER records physical address in struct ghes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make estatus pool allocation a static size (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Make hest.c manage the estatus memory pool (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Switch estatus pool to use vmalloc memory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Remove silent flag from ghes_read_estatus() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Don't wait to serialise with oops messages when panic()ing (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Set debug output flags independent of ACPICA (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Get rid of acpi_sleep_dispatch() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for BSG2150 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Simplify boot EC checks in acpi_ec_add() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Eliminate acpi_config_boot_ec() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_dsdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Make acpi_ec_ecdt_probe() more straightforward (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Declare boot_ec as static (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / DPTF: remove header search path to the parent directory (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Clean up probing for early EC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: debug: Clean up acpi_aml_init() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: no need to check return value of debugfs_create functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC: Look for ECDT EC after calling acpi_load_tables() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make PCI dependency explicit (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20190108 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: All acpica: Update copyrights to 2019 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: Add option to dump extra info for memory leaks (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Convert more ACPI errors to firmware errors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: APEI: EINJ: Use DEFINE_DEBUGFS_ATTRIBUTE for debugfs files (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / APEI: Fix parsing HEST that includes Deferred Machine Check subtable (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: table override from built-in initrd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] APEI / ERST: Switch to use new generic UUID API (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Add generic intel_soc_pmic_exec_mipi_pmic_seq_element handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Implement exec_mipi_pmic_seq_element for CHT Whiskey Cove PMIC (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix build when CONFIG_IOMMU_API=n (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Fix TS-pin current-source handling (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: NUMA: Use correct type for printing addresses on i386-PAE (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: power: Skip duplicate power resource references in _PRx (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Fix build failure when CONFIG_NLS is set to 'n' (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: Add an ifdef around amlcode and dsdt_amlcode (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Make PCI slot detection driver depend on PCI (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Stub out ACS functions when CONFIG_PCI is not set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] PCI/ACPI: Allow ACPI to be built without CONFIG_PCI set (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable dGPU direct output (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: PM: Loop in full LPS0 mode only (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Don't call iommu_ops->add_device directly (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use device_iommu_mapped() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Use helper functions to access dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] driver core: Introduce device_iommu_mapped() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu/sysfs: Rename iommu_release_device() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Consolitate ->add/remove_device() calls (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [iommu] iommu: Introduce wrappers around dev->iommu_fwspec (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / tables: add DSDT AmlCode new declaration name support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181213 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: change coding style to match ACPICA, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debug output: Add option to display method/object evaluation (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: disassembler: disassemble OEMx tables as AML (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018.2" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Expressions in package elements are not supported (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update buffer-to-string conversions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: add comments, no functional change (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove defines that use deprecated flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Add "Windows 2018" string in the _OSI support (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [pci] PCI: Remove unused attr variable in pci_dma_configure (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Refactor _CCA enforcement (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Ignore acpi_device_fix_up_power() return value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI, APEI, EINJ: Change to use DEFINE_SHOW_ATTRIBUTE macro (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT3515 ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI/IORT: Fix iort_get_platform_device_domain() uninitialized pointer value (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: SPCR: Consider baud rate 0 as preconfigured state (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / glue: Add acpi_platform_notify() function (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [drivers] drivers core: Prepare support for multiple platform notifications (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / platform: Add SMB0001 HID to forbidden_id_list (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Fix handling of buffer-size in acpi_ex_write_data_to_field() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181031 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: Enhance error detection (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: iASL: adding definition and disassembly for TPM2 revision 3 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: refactor to fix unused variable warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: fix IOSF_MBI dependency (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Add depends on IOSF_MBI to Kconfig entry (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: xpower: Block P-Unit I2C access during read-modify-write (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [include] PM / Domains: Document flags for genpd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for INT33FE ACPI nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: probe ECDT before loading AML tables regardless of module-level code flag (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Remove acpi_gbl_group_module_level_code and only use acpi_gbl_execute_tables_as_methods instead (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended opcodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: AML interpreter: add region addresses in global list during initialization (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: TAD: Add low-level support for real time capability (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Export acpi_device_get_power() for use by modular build drivers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: remove redundant 'default n' from Kconfig (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix rare oops when removing modules (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / SBS: Fix GPE storm on recent MacBookPro's (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20181003 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Never run _REG on system_memory and system_IO (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Split large interpreter file (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for field unit access (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Rename some of the Field Attribute defines (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update for generic_serial_bus and attrib_raw_process_bytes protocol (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / processor: Fix the return value of acpi_processor_ids_walk() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Resume BYT/CHT I2C controllers from resume_noirq (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the BYT I2C5 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add a device link from the GPU to the CHT I2C7 controller (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make acpi_lpss_find_device() also find PCI devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper accept a NULL uid argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Make hid_uid_match helper take an acpi_device as first argument (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] acpi:ipmi: Convert ipmi_user_t to struct ipmi_user 0001-x86-smp-fix-non-SMP-broken-build-due-to-redefinition.patch brew_job bzlist bzlist-v2 run.sh testing_desc v4-notes v5-notes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Exclude I2C busses shared with PUNIT from pmc_atom_d3_mask (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Convert drivers to use SPDX identifier (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: Sort headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / property: Switch to bitmap_zalloc() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: custom_method: remove meaningless null check before debugfs_remove() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / LPSS: Force LPSS quirks on boot (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / bus: Only call dmi_check_system() on X86 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: fix menuconfig presentation of ACPI submenu (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] xen/ACPI: don't upload Px/Cx data for disabled processors (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [x86] x86/smp: fix non-SMP broken build due to redefinition of apic_id_is_primary_thread (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Clear status of all events when entering sleep states (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180810 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpiexec: fix a small memory leak regression (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Reference count: add additional debugging details (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: acpi_exec: fixing -fi option (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Debugger: Cleanup interface to the AML disassembler (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Utilities: split hex detection into smaller functions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update an error message for a duplicate table (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [platform] platform/x86: Add ACPI i2c-multi-instantiate pseudo driver (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [kernel] PM / reboot: Eliminate race between reboot and suspend (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: utils: Remove status workaround from acpi_device_always_present() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Create platform device for fwnodes with multiple i2c devices (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Initialize status to ACPI_STA_DEFAULT (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: bus: Fix a pointer coding style issue (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] arm64 / ACPI: clean the additional checks before calling ghes_notify_sea() (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / scan: Add static attribute to indirect_io_hosts[] (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: get rid of negations in conditions (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: use specialized print macros (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: reorder headers alphabetically (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / battery: drop inclusion of init.h (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: battery: remove redundant old_present check on insertion (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Use data node name and reg property for graphs (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow direct graph endpoint references (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Make the ACPI graph API private (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: property: Allow making references to non-device nodes (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI: Convert ACPI reference args to generic fwnode reference args (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] Revert "ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: save NVS memory for ASUS 1025C laptop (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: fix defined but not used warning (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Update version to 20180629 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL compiler: allow compilation of externals with paths that refer to existing names" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / x86: enable touchscreen on Dell Venue Pro 7139 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / PM: Default to s2idle in all machines supporting LP S0 (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [acpi] ACPI / button: increment wakeup count only when notified (Al Stone) [1754787 1739728 1730098 1721297 1664185] - [powerpc] powerpc/papr_scm: Fix an off-by-one check in papr_scm_meta_{get, set} (Gustavo Duarte) [1731035] - [nvdimm] libnvdimm/altmap: Track namespace boundaries in altmap (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Pick nearby online node if the device node is not online (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Force a scm-unbind if initial scm-bind fails (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update drc_pmem_unbind() to use H_SCM_UNBIND_ALL (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Update SCM hcall op-codes in hvcall.h (Gustavo Duarte) [1731035] - [mm] mm/nvdimm: add is_ioremap_addr and use that to check ioremap address (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Use a specific endian format for storing uuid from the device tree (Gustavo Duarte) [1731035] - [powerpc] powerpc/nvdimm: Add support for multibyte read/write for metadata (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries/scm: Mark the region volatile if cache flush not required (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/nvdimm: Add an informative message if we fail to allocate altmap block (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Consolidate numa_enable check and min_common_depth check (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fix node look up with numa=off boot (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/drconf: Use NUMA_NO_NODE on failures instead of node 0 (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/radix: Use the right page size for vmemmap mapping (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm/hash/4k: Don't use 64K page size for vmemmap with 4K pagesize (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use the correct bind address (Gustavo Duarte) [1731035] - [powerpc] powerpc/mm: Fallback to RAM if the altmap is unusable (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use ibm, unit-guid as the iset cookie (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix DIMM device registration race (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Remove endian conversions (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Update DT properties (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Fix resource end address (Gustavo Duarte) [1731035] - [powerpc] powerpc/papr_scm: Use depend instead of select (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: Add driver for PAPR SCM regions (Gustavo Duarte) [1731035] - [powerpc] powerpc/pseries: PAPR persistent memory support (Gustavo Duarte) [1731035] - [mm] mm, vmstat: reduce zone->lock holding time by /proc/pagetypeinfo (Waiman Long) [1770314] - [mm] mm, vmstat: hide /proc/pagetypeinfo from normal users (Waiman Long) [1770314] - [crypto] crypto: chtls - remove cdev_list_lock (Neil Horman) [1737078] - [crypto] crypto/chelsio/chtls: listen fails with multiadapt (Neil Horman) [1737078] - [tools] cpupower : Handle set and info subcommands correctly (Steve Best) [1769973] - [s390] s390/qeth: use IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qdio: implement IQD Multi-Write (Philipp Rudo) [1731028] - [s390] s390/qeth: add xmit_more support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: add BQL support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: when in TX NAPI mode, use napi_consume_skb() (Philipp Rudo) [1731028] - [s390] s390/qeth: add TX NAPI support for IQD devices (Philipp Rudo) [1731028] - [s390] s390/qeth: collect accurate TX statistics (Philipp Rudo) [1731028] - [s390] s390/qdio: let drivers opt-out from Output Queue scanning (Philipp Rudo) [1731028] - [s390] s390/qdio: enable drivers to poll for Output completions (Philipp Rudo) [1731028] - [usb] xhci-pci: allow host runtime PM as default for Intel Alpine and Titan Ridge (Myron Stowe) [1769877] - [x86] x86/atomic: Fix smp_mb__{before,after}_atomic() (Prarit Bhargava) [1769789] - [kernel] stacktrace: Don't skip first entry on noncurrent tasks (Waiman Long) [1766681] - [kernel] tracing: Fix user stack trace "??" output (Waiman Long) [1766681] - [kernel] tracing: Fix out-of-range read in trace_stack_print() (Waiman Long) [1766681] - [kernel] stacktrace: Constify 'entries' arguments (Waiman Long) [1766681] - [kernel] stacktrace: Force USER_DS for stack_trace_save_user() (Waiman Long) [1766681] - [x86] x86/stacktrace: Prevent infinite loop in arch_stack_walk_user() (Waiman Long) [1766681] - [kernel] stacktrace: Use PF_KTHREAD to check for kernel threads (Waiman Long) [1766681] - [kernel] stacktrace: Unbreak stack_trace_save_tsk_reliable() (Waiman Long) [1766681] - [x86] x86/stacktrace: Use common infrastructure (Waiman Long) [1766681] - [kernel] stacktrace: Keep stack_trace structure and remove snprint_stack_trace() (Waiman Long) [1766681] - [kernel] stacktrace: Provide common infrastructure (Waiman Long) [1766681] - [kernel] livepatch: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Remove the last struct stack_trace usage (Waiman Long) [1766681] - [kernel] tracing: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] tracing: Make ftrace_trace_userstack() static and conditional (Waiman Long) [1766681] - [kernel] tracing: Use percpu stack trace buffer more intelligently (Waiman Long) [1766681] - [kernel] tracing: Simplify stacktrace retrieval in histograms (Waiman Long) [1766681] - [kernel] lockdep: Remove save argument from check_prev_add() (Waiman Long) [1766681] - [kernel] lockdep: Remove unused trace argument from print_circular_bug() (Waiman Long) [1766681] - [drm] drm: Simplify stacktrace handling (Waiman Long) [1766681] - [md] dm persistent data: Simplify stack trace handling (Waiman Long) [1766681] - [md] dm bufio: Simplify stack trace retrieval (Waiman Long) [1766681] - [fs] btrfs: ref-verify: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] dma/debug: Simplify stracktrace retrieval (Waiman Long) [1766681] - [lib] fault-inject: Simplify stacktrace retrieval (Waiman Long) [1766681] - [mm] mm/page_owner: Simplify stack trace handling (Waiman Long) [1766681] - [mm] mm/kmemleak: Simplify stacktrace handling (Waiman Long) [1766681] - [mm] mm/slub: Simplify stack trace retrieval (Waiman Long) [1766681] - [kernel] latency_top: Simplify stack trace handling (Waiman Long) [1766681] - [fs] proc: Simplify task stack retrieval (Waiman Long) [1766681] - [kernel] backtrace-test: Simplify stack trace handling (Waiman Long) [1766681] - [lib] lib/stackdepot: Provide functions which operate on plain storage arrays (Waiman Long) [1766681] - [kernel] stacktrace: Provide helpers for common stack trace operations (Waiman Long) [1766681] - [kernel] tracing: Cleanup stack trace code (Waiman Long) [1766681] - [kernel] tracing: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [drm] drm: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] latency_top: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/kasan: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/page_owner: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [mm] mm/slub: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] lockdep: Remove the ULONG_MAX stack trace hackery (Waiman Long) [1766681] - [kernel] s390/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] parisc/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm64/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] riscv/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] unicore32/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] sh/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] arm/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] [x86] x86/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [kernel] um/stacktrace: Remove the pointless ULONG_MAX marker (Waiman Long) [1766681] - [mm] mm/page_owner: clamp read count to PAGE_SIZE (Waiman Long) [1766681] - [kernel] tracing: Export trace_dump_stack to modules (Waiman Long) [1766681] - [kernel] tracing: Have stack tracer trace full stack (Waiman Long) [1766681] - [kernel] trace: Use rcu_dereference_raw for hooks from trace-event subsystem (Waiman Long) [1766681] - [kernel] tracing: Have trace_stack nr_entries compare not be so subtle (Waiman Long) [1766681] - [cpuidle] cpuidle: governor: Add new governors to cpuidle_governors again (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: do not set an owner to allow modunload (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: set haltpoll as preferred governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: allow governor switch on cpuidle_register_driver() (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: Add cpuidle.governor= command line parameter (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: vcpu hotplug support (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: disable host side polling when kvm virtualized (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add haltpoll governor (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: header file stubs must be "static inline" (Marcelo Tosatti) [1759282] - [cpuidle] governors: unify last_state_idx (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: add poll_limit_ns to cpuidle_device structure (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Fix default time limit (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Disregard disable idle states (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: poll_state: Revise loop termination condition (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle: menu: Fix wakeup statistics updates for polling state (Marcelo Tosatti) [1759282] - [cpuidle] cpuidle-haltpoll: return -ENODEV on modinit failure (Marcelo Tosatti) [1759282] - [cpuidle] add cpuidle-haltpoll driver (Marcelo Tosatti) [1759282] - [mm] mem-hotplug: fix node spanned pages when we have a node with only ZONE_MOVABLE (Baoquan He) [1756210] - [x86] x86, efi: never relocate kernel below lowest acceptable address (Kairui Song) [1747367] - [fs] CIFS: Force reval dentry if LOOKUP_REVAL flag is set (Dave Wysochanski) [1767664] - [fs] CIFS: Force revalidate inode when dentry is stale (Dave Wysochanski) [1767664] - [fs] CIFS: Gracefully handle QueryInfo errors during open (Dave Wysochanski) [1767664] - [block] blk-mq: make sure that line break can be printed (Ming Lei) [1741462] - [block] blk-mq: avoid sysfs buffer overflow with too many CPU cores (Ming Lei) [1741462] - [netdrv] bnx2x: Fix VF's VLAN reconfiguration in reload. (Manish Chopra) [1720393] - [netdrv] bnx2x: Prevent ptp_task to be rescheduled indefinitely (Manish Chopra) [1720393] - [netdrv] bnx2x: Check if transceiver implements DDM before access (Manish Chopra) [1720393] - [fs] xfs: allocate xattr buffer on demand (Eric Sandeen) [1684599] - [fs] xfs: consolidate attribute value copying (Eric Sandeen) [1684599] - [fs] xfs: move remote attr retrieval into xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: remove unnecessary indenting from xfs_attr3_leaf_getvalue (Eric Sandeen) [1684599] - [fs] xfs: make attr lookup returns consistent (Eric Sandeen) [1684599] - [i2c] i2c: i801: Add support for Intel Comet Lake (David Arcari) [1761547] - [powerpc] powerpc/xmon: Improve output of XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Fix output of XIVE IPI (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Add a dump of all XIVE interrupts (Diego Domingos) [1731130] - [powerpc] powerpc/xive: Fix dump of XIVE interrupt under pseries (Diego Domingos) [1731130] - [powerpc] powerpc/xmon: Check for HV mode when dumping XIVE info from OPAL (Diego Domingos) [1731130] - [fs] xfs: convert inode to extent format after extent merge due to shift (Brian Foster) [1745253] - [mmc] mmc: sdhci-pci: Add support for Intel CML (Alexander Beregalov) [1761593] - [powerpc] powerpc/mm/mce: Keep irqs disabled during lockless page table walk (Gustavo Duarte) [1524649] - [tools] seltests/powerpc: Add a selftest for memcpy_mcsafe (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Fix stack corruption for smaller sizes (Gustavo Duarte) [1524649] - [powerpc] powerpc: add machine check safe copy_to_user (Gustavo Duarte) [1524649] - [powerpc] powerpc/memcpy: Add memcpy_mcsafe for pmem (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Handle UE event for memcpy_mcsafe (Gustavo Duarte) [1524649] - [kernel] extable: Add function to search only kernel exception table (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Make machine_check_ue_event() static (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Fix MCE handling for huge pages (Gustavo Duarte) [1524649] - [powerpc] powerpc/mce: Schedule work from irq_work (Gustavo Duarte) [1524649] - [x86] x86/boot/64: Round memory hole size up to next PMD page (Frank Ramsay) [1755602] - [x86] x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area (Frank Ramsay) [1755602] - [idle] intel_idle: add support for Jacobsville (Steve Best) [1481744] - [powercap] powercap/intel_rapl: add support for ICX (Steve Best) [1724421] - [block] blk-mq: apply normal plugging for HDD (Ming Lei) [1759380] - [block] blk-mq: honor IO scheduler for multiqueue devices (Ming Lei) [1759380] - [block] blk-mq: simplify blk_mq_make_request() (Ming Lei) [1759380] - [block] blk-mq: remove blk_mq_put_ctx() (Ming Lei) [1759380] - [nvdimm] libnvdimm: Enable unit test infrastructure compile checks (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Use PAGE_SIZE instead of SZ_4K for align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/label: Remove the dpa align check (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add page size and struct page size to pfn superblock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn_dev: Add a build check to make sure we notice when struct page size change (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Advance namespace seed for specific probe errors (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Rewrite _probe_success() to _advance_seeds() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Consolidate 'security' operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Tighten scope of nvdimm->busy vs security operations (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/security: Introduce a 'frozen' attribute (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, region: Use struct_size() in kzalloc() (Jeff Moyer) [1724965] - [tools] tools/testing/nvdimm: Fix fallthrough warning (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/of_pmem: Provide a unique name for bus provider (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pfn: fix fsdax-mode namespace info-block zero-fields (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Stop holding nvdimm_bus_list_mutex over __nd_ioctl() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/region: Register badblocks before namespaces (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/bus: Prevent duplicate device_unregister() calls (Jeff Moyer) [1724965] - [drivers] drivers/base: Introduce kill_device() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm, namespace: Drop uuid_t implementation detail (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'resource' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Drop register_filesystem() (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/pmem: Bypass CONFIG_HARDENED_USERCOPY overhead (Jeff Moyer) [1724965] - [nvdimm] libnvdimm: Fix compilation warnings with W=1 (Jeff Moyer) [1724965] - [nvdimm] libnvdimm/namespace: Fix label tracking error (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'modalias' attribute to DAX 'bus' devices (Jeff Moyer) [1724965] - [dax] device-dax: Add a 'target_node' attribute (Jeff Moyer) [1724965] - [dax] device-dax: Auto-bind device after successful new_id (Jeff Moyer) [1724965] - [dax] acpi/nfit, device-dax: Identify differentiated memory with a unique numa-node (Jeff Moyer) [1724965] - [dax] device-dax: Add /sys/class/dax backwards compatibility (Jeff Moyer) [1724965] - [dax] device-dax: Add support for a dax override driver (Jeff Moyer) [1724965] - [dax] device-dax: Move resource pinning+mapping into the common driver (Jeff Moyer) [1724965] - [dax] device-dax: Introduce bus + driver model (Jeff Moyer) [1724965] - [dax] device-dax: Start defining a dax bus model (Jeff Moyer) [1724965] - [dax] device-dax: Remove multi-resource infrastructure (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region base (Jeff Moyer) [1724965] - [dax] device-dax: Kill dax_region ida (Jeff Moyer) [1724965] - [kernel] memremap: Convert to XArray (Jeff Moyer) [1724965] - [drivers] drivers/dax/device.c: convert variable to vm_fault_t type (Jeff Moyer) [1724965] - [drivers] driver core: Rewrite test_async_driver_probe to cover serialization and NUMA affinity (Jeff Moyer) [1724965] - [drivers] libnvdimm: Schedule device registration on node local to the device (Jeff Moyer) [1724965] - [drivers] PM core: Use new async_schedule_dev command (Jeff Moyer) [1724965] - [drivers] driver core: Attach devices on CPU local to device node (Jeff Moyer) [1724965] - [kernel] async: Add support for queueing on specific NUMA node (Jeff Moyer) [1724965] - [kernel] workqueue: Provide queue_work_node to queue work near a given NUMA node (Jeff Moyer) [1724965] - [drivers] driver core: Probe devices asynchronously instead of the driver (Jeff Moyer) [1724965] - [drivers] device core: Consolidate locking and unlocking of parent and device (Jeff Moyer) [1724965] - [drivers] driver core: Establish order of operations for device_add and device_del via bitflag (Jeff Moyer) [1724965] - [drivers] driver core: Add missing dev->bus->need_parent_lock checks (Jeff Moyer) [1724965] - [drivers] driver core: Move async_synchronize_full call (Jeff Moyer) [1724965]- [scsi] scsi: qedi: update driver version to 8.37.0.20 (Nilesh Javali) [1724588] - [scsi] scsi: qedi: Check targetname while finding boot target information (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove set but not used variables 'cdev' and 'udev' (Nilesh Javali) [1724588] - [scsi] scsi: qedi: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1724588] - [scsi] qedi: Use hwfns and affin_hwfn_idx to get MSI-X vector index (Nilesh Javali) [1724588] - [scsi] scsi: qedf: Update the version to 8.42.3.0 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix race betwen fipvlan request and response path (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Use discovery list to traverse rports (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Decrease the LL2 MTU size to 2500 (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Check for module unloading bit before processing link update AEN (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Initiator fails to re-login to switch after link down (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add debug information for unsolicited processing (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add support for 20 Gbps speed (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Interpret supported caps value correctly (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Add shutdown callback handler (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Update module description string (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Fix crash during sg_reset (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Stop sending fipvlan request on unload (Nilesh Javali) [1724589] - [scsi] scsi: qedf: Print message during bailout conditions (Nilesh Javali) [1724589] - [scsi] qedf: Use hwfns and affin_hwfn_idx to get MSI-X vector index to use (Nilesh Javali) [1724589] - [scsi] scsi: bnx2fc: Handle scope bits when array returns BUSY or TSF (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'task', 'port', 'orig_task' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variables 'lport', 'host' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: remove set but not used variable 'fh' (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_srr (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix bnx2fc_cmd refcount imbalance in send_rec (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Update the driver version to 2.12.10 (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Limit the IO size according to the FW capability (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Do not allow both a cleanup completion and abort completion for the same request (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Separate out completion flags and variables for abort and cleanup (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Only put reference to io_req in bnx2fc_abts_cleanup if cleanup times out (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: Redo setting source FCoE MAC (Nilesh Javali) [1724598] - [scsi] scsi: bnx2fc: fix incorrect cast to u64 on shift operation (Nilesh Javali) [1724598] - [netdrv] qed: Fix build error without CONFIG_DEVLINK (Manish Chopra) [1720392] - [netdrv] RDMA/qedr: Fix the hca_type and hca_rev returned in device attributes (Manish Chopra) [1720392] - [netdrv] qede: qede_fp: simplify a bit 'qede_rx_build_skb()' (Manish Chopra) [1720392] - [netdrv] qede: Make two functions static (Manish Chopra) [1720392] - [netdrv] qede: Handle infinite driver spinning for Tx timestamp. (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "fullill" -> "fulfill" (Manish Chopra) [1720392] - [netdrv] qed: Fix Config attribute frame format. (Manish Chopra) [1720392] - [netdrv] qed*: Fix size of config attribute dump. (Manish Chopra) [1720392] - [netdrv] net: qed: Move static keyword to the front of declaration (Manish Chopra) [1720392] - [netdrv] qede: Add support for dumping the grc data. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for configuring grc dump config flags. (Manish Chopra) [1720392] - [netdrv] qede: Add support for reading the config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add APIs for reading config id attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add cleanup in qed_slowpath_start() (Manish Chopra) [1720392] - [netdrv] qed: Add driver API for flashing the config attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add API for configuring NVM attributes. (Manish Chopra) [1720392] - [netdrv] qed: Add new ethtool supported port types based on media. (Manish Chopra) [1720392] - [netdrv] net/ethernet/qlogic/qed: force the string buffer NULL-terminated (Manish Chopra) [1720392] - [netdrv] qed: RDMA - Fix the hw_ver returned in device attributes (Manish Chopra) [1720392] - [netdrv] qed*: Change dpi_addr to be denoted with __iomem (Manish Chopra) [1720392] - [netdrv] qed: reduce maximum stack frame size (Manish Chopra) [1720392] - [netdrv] qed: Prefer pcie_capability_read_word() (Manish Chopra) [1720392] - [netdrv] qed: Add support for Timestamping the unicast PTP packets. (Manish Chopra) [1720392] - [netdrv] qed: Fix -Wmaybe-uninitialized false positive (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix default window size to be based on chip (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Fix tc for MPA ll2 connection (Manish Chopra) [1720392] - [netdrv] qed: iWARP - fix uninitialized callback (Manish Chopra) [1720392] - [netdrv] qed: iWARP - Use READ_ONCE and smp_store_release to access ep->state (Manish Chopra) [1720392] - [netdrv] qed: remove redundant assignment to rc (Manish Chopra) [1720392] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1720392] - [netdrv] qed: fix spelling mistake "inculde" -> "include" (Manish Chopra) [1720392] - [netdrv] qed: Reduce the severity of ptp debug message. (Manish Chopra) [1720392] - [netdrv] qed*: Add iWARP 100g support (Manish Chopra) [1720392] - [netdrv] qed: Add qed devlink parameters table (Manish Chopra) [1720392] - [netdrv] qed: Set the doorbell address correctly (Manish Chopra) [1720392] - [netdrv] qedr: Change the MSI-X vectors selection to be based on affined engine (Manish Chopra) [1720392] - [netdrv] qed: Modify offload protocols to use the affined engine (Manish Chopra) [1720392] - [netdrv] qed*: Change hwfn used for sb initialization (Manish Chopra) [1720392] - [netdrv] qed: Add llh ppfid interface and 100g support for offload protocols (Manish Chopra) [1720392] - [netdrv] qed: Modify api for performing a dmae to another PF (Manish Chopra) [1720392] - [virt] kvm: arm/arm64: vgic: Use the appropriate TRACE_INCLUDE_PATH (Auger Eric) [1749501] - [arm64] kvm: Kill hyp_alternate_select() (Auger Eric) [1749501] - [arm64] kvm: Replace hyp_alternate_select with has_vhe() (Auger Eric) [1749501] - [arm64] kvm: Drop hyp_alternate_select for checking for ARM64_WORKAROUND_834220 (Auger Eric) [1749501] - [documentation] kvm: arm/arm64: vgic: Allow more than 256 vcpus for KVM_IRQ_LINE (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Use a single IO device per redistributor (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Remove spurious semicolons (Auger Eric) [1749501] - [arm64] perf_event: Add missing header needed for smp_processor_id() (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Make function comments match function declarations (Auger Eric) [1749501] - [arm64] kvm: Remove VMID rollover I-cache maintenance (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-irqfd: Implement kvm_arch_set_irq_inatomic (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Check the LPI translation cache on MSI injection (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Cache successful MSI->LPI translation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on vgic teardown (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on ITS disable (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on disabling LPIs (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Invalidate MSI-LPI translation cache on specific commands (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-its: Add MSI-LPI translation cache invalidation (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add __vgic_put_lpi_locked primitive (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Add LPI translation cache definition (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic-v2: Handle SGI bits in GICD_I{S, C}PENDR0 as WI (Auger Eric) [1749501] - [arm64] kvm: Replace hardcoded '1' with SYS_PAR_EL1_F (Auger Eric) [1749501] - [arm64] sysreg: Add some field definitions for PAR_EL1 (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix potential deadlock when ap_list is long (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Properly initialise private IRQ affinity (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Reevaluate level sensitive interrupts on enable (Auger Eric) [1749501] - [arm64] kvm: arm64: Don't write junk to sysregs on reset (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Sync ICH_VMCR_EL2 back when about to block (Auger Eric) [1749501] - [arm64] kvm: hyp: debug-sr: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: arm64: Update kvm_arm_exception_class and esr_class_str for new EC (Auger Eric) [1749501] - [virt] kvm: arm: vgic-v3: Mark expected switch fall-through (Auger Eric) [1749501] - [arm64] kvm: regmap: Fix unexpected switch fall-through (Auger Eric) [1749501] - [arm64] sve: Fix a couple of magic numbers for the Z-reg count (Auger Eric) [1749501] - [arm64] sve: Factor out FPSIMD to SVE state conversion (Auger Eric) [1749501] - [arm64] kvm: arm/arm64: Initialise host's MPIDRs by reading the actual register (Auger Eric) [1749501] - [arm64] kvm: arm64: Migrate _elx sysreg accessors to msr_s/mrs_s (Auger Eric) [1749501] - [arm64] sysreg: Make mrs_s and msr_s macros work with Clang and LTO (Auger Eric) [1749501] - [documentation] kvm: doc: Add API documentation on the KVM_REG_ARM_WORKAROUNDS register (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Add save/restore support for firmware workaround state (Auger Eric) [1749501] - [arm64] kvm: Propagate full Spectre v2 workaround state to KVM guests (Auger Eric) [1749501] - [arm64] sve: Fix missing SVE/FPSIMD endianness conversions (Auger Eric) [1749501] - [virt] kvm: arm/arm64: vgic: Fix kvm_device leak in vgic_its_destroy (Auger Eric) [1749501] - [arm64] kvm: arm64: Filter out invalid core register IDs in KVM_GET_REG_LIST (Auger Eric) [1749501] - [arm64] kvm: arm64: Skip more of the SError vaxorcism (Auger Eric) [1749501] - [arm64] kvm: arm64: Re-mask SError after the one instruction window (Auger Eric) [1749501] - [arm64] Update silicon-errata.txt for Neoverse-N1 #1349291 (Auger Eric) [1749501] - [arm64] kvm: arm64: Defer guest entry when an asynchronous exception is pending (Auger Eric) [1749501] - [arm64] kvm: arm64: Consume pending SError as early as possible (Auger Eric) [1749501] - [arm64] kvm: arm64: Make indirect vectors preamble behaviour symmetric (Auger Eric) [1749501] - [arm64] kvm: arm64: Abstract the size of the HYP vectors pre-amble (Auger Eric) [1749501] - [arm64] assembler: Switch ESB-instruction with a vanilla nop if !ARM64_HAS_RAS (Auger Eric) [1749501] - [arm64] kvm: arm64/sve: Fix vq_present() macro to yield a bool (Auger Eric) [1749501] - [arm64] kvm: arm64: Implement vq_present() as a macro (Auger Eric) [1749501] - [arm64] fpsimd: Don't disable softirq when touching FPSIMD/SVE state (Auger Eric) [1749501] - [arm64] fpsimd: Introduce fpsimd_save_and_flush_cpu_state() and use it (Auger Eric) [1749501] - [arm64] fpsimd: Remove the prototype for sve_flush_cpu_state() (Auger Eric) [1749501] - [scripts] genksyms: Teach parser about 128-bit built-in types (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_add_default (Auger Eric) [1749501] - [tools] kvm: selftests: introduce aarch64_vcpu_setup (Auger Eric) [1749501] - [virt] kvm: arm/arm64: Move cc/it checks under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [arm64] kvm: arm64: Move pmu hyp code under hyp's Makefile to avoid instrumentation (Auger Eric) [1749501] - [documentation] arm64: docs: Document perf event attributes (Auger Eric) [1749501] - [arm64] kvm: Fix perf cycle counter support for VHE (Auger Eric) [1749501] - [arm64] kvm: Avoid isb's by using direct pmxevtyper sysreg (Auger Eric) [1749501] - [arm64] kvm: Enable VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] kvm: Enable !VHE support for :G/:H perf event modifiers (Auger Eric) [1749501] - [arm64] arm_pmu: Add !VHE support for exclude_host/exclude_guest attributes (Auger Eric) [1749501] - [arm64] kvm: Add accessors to track guest/host only counters (Auger Eric) [1749501] - [arm64] arm_pmu: Remove unnecessary isb instruction (Auger Eric) [1749501] - [arm64] perf: Add support for chaining event counters (Auger Eric) [1749501] - [arm64] perf: Disable PMU while processing counter overflows (Auger Eric) [1749501] - [arm64] perf: Clean up armv8pmu_select_counter (Auger Eric) [1749501] - [arm64] kvm: arm: Remove pgtable page standard functions from stage-2 page tables (Auger Eric) [1749501] - [netdrv] e1000e: Add support for Tiger Lake (Ken Cox) [1767480] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Corinna Vinschen) [1721705] - [netdrv] igb: Use dev_get_drvdata where possible (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721705] - [netdrv] igb: add RR2DCDELAY to ethtool registers dump (Corinna Vinschen) [1721705] - [netdrv] igb: minor ethool regdump amendment (Corinna Vinschen) [1721705] - [netdrv] igb: clear out skb->tstamp after reading the txtime (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb: mark expected switch fall-through (Corinna Vinschen) [1721705] - [netdrv] igb/igc: warn when fatal read failure happens (Corinna Vinschen) [1721705] - [netdrv] igb: fix various indentation issues (Corinna Vinschen) [1721705] - [netdrv] igb: Exclude device from suspend direct complete optimization (Corinna Vinschen) [1721705] - [netdrv] intel: correct return from set features callback (Corinna Vinschen) [1721705] - [netdrv] net: Use skb accessors in network drivers (Corinna Vinschen) [1721708] - [s390] s390/kaslr: reserve memory for kasan usage (Philipp Rudo) [1725888] - [s390] s390/mem_detect: provide single get_mem_detect_end (Philipp Rudo) [1725888] - [s390] s390/setup: adjust start_code of init_mm to _text (Philipp Rudo) [1725888] - [s390] s390/boot: add missing declarations and includes (Philipp Rudo) [1725888] - [s390] locking/lockdep: check for freed initmem in static_obj() (Philipp Rudo) [1725888] - [s390] s390/kernel: add support for kernel address space layout randomization (KASLR) (Philipp Rudo) [1725888] - [s390] s390/kernel: introduce .dma sections (Philipp Rudo) [1725888] - [s390] s390/sclp: do not use static sccbs (Philipp Rudo) [1725888] - [s390] s390/kprobes: use static buffer for insn_page (Philipp Rudo) [1725888] - [s390] s390/kernel: convert SYSCALL and PGM_CHECK handlers to .quad (Philipp Rudo) [1725888] - [s390] s390/kernel: build a relocatable kernel (Philipp Rudo) [1725888] - [s390] s390/extmem: remove code for 31 bit addressing mode (Philipp Rudo) [1725888] - [s390] s390/setup: remove obsolete #ifdef (Philipp Rudo) [1725888] - [net] net/core: work around section mismatch warning for ptp_classifier (Philipp Rudo) [1725888] - [sound] ALSA: bebob: fix to detect configured source of sampling clock for Focusrite Saffire Pro i/o series (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: link the order of establishing connections and Syt-match clock mode (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand delay of start for IR context just for version 3 firmware (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: expand sleep just after breaking connections for protocol version 1 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC/SOF - enable SND_SOC_SOF_HDA_COMMON_HDMI_CODEC (Jaroslav Kysela) [1710702] - [sound] ALSA: timer: Fix mutex deadlock at releasing card (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: eve: Enable mclk and ssp sclk early (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dt-bindings: rt5682: add button delay device property (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: improve the sensitivity of push button (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt_rt298: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: add support for snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: fix include guard name (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: hdac_hda: add support for HDMI/DP as a HDA codec (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/hdmi - implement mst_no_extra_pcms flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF - remove the dead code (skylake/kabylake) (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel - fix the card names (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: Add prepare/complete PM callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: Add support for DSP D0i3 state when entering S0ix (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: return -ENOTSUPP if D0I3 is not supported (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: implement suspend/resume for S0ix<->S0 transition (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ignore suspend/resume for D0ix compatible streams (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: implement prepare/complete callbacks (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag suspend_ignored for sof stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a flag to indicate the system suspend target (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add support for sending compact IPC (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: add helpers for setting D0 substate for ADSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: configure D0ix IPC flags in set_power_state (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: add cAVS specific compact IPC header file (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: Don't read mailbox for PM_GATE reply (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce message for DSP power gating (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: PM: rename sof_send_pm_ipc to sof_send_pm_ctx_ipc (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: HDA: use macro for register polling retry count (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: align the comments for D0I3C update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: parse and store d0i3_compatible flag (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: token: add tokens for PCM compatible with D0i3 substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add flag to snd_sof_pcm_stream for D0i3 compatible stream (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: APL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: CNL: add set_power_state() ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-dsp: Add helper for setting DSP D0ix substate (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add set_power_state() to dsp_ops for power state update (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: reset default d0_substate at probe() and resume() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: add a field to store the current D0 substate of DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: eve: implement set_bias_level function for rt5514 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: only support INFO_BATCH for legacy platforms (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: define INFO_ flags in dsp_ops (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initial support to JasperLake. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for JSL (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: add dev_err() traces for snd_sof_dsp_read_poll_timeout() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda-loader: improve error handling (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: sof: include types.h at header.h (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Fix randbuild error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: check errors when parsing LED tokens (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: remove always-true redundant test (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: bdw: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: byt: fix operator precedence warnings (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Read ESAI parameters and send them to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi led support for switch controls (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: imx: Describe ESAI parameters to be sent to DSP (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pci: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: acpi: add debug module param (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ASoC: SOF: Force polling mode on CFL and CNL" (Jaroslav Kysela) [1710702] - [sound] ALSA: AsoC: SOF: refactor control load code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable dual control for pga (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: enable sync_write in hdac_bus (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: simple_card_utils.h: Add missing include (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: Add context data to any IPC timeout. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix reset of host_period_bytes (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: core: check for mandatory fw_ready op during SOF probe (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: ipc: retain DSP context after FW exception. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: trace: move to opt-in with Kconfig and module parameter (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Fix 2 front mics of codec 0x623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC623 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix mutex deadlock in HDMI codec driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Fix pending unsol events at shutdown (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: Correct a typo in the clock proc string (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: add support for MOTU UltraLite (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: code refactoring to handle model specific switch for protocol v2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: minor code refactoring for protocol version 2 (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: detect SPH source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: print for unknown source of sampling clock (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: fix wrong spelling for macro (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: Fix prototype of helper function to return negative value (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: sound: usb: usb true/false for bool return type (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow non-Intel device probe gracefully (Jaroslav Kysela) [1710702] - [sound] ALSA: Revert "ALSA: hda: Flush interrupts on disabling" (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Fix missing inline for pci_pr3_present() (Jaroslav Kysela) [1710702] - [sound] ALSA: PCI: Add a helper to check Power Resource Requirements _PR3 existence (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Fix copy&paste error in the validator (Jaroslav Kysela) [1710702] - [sound] ALSA: usb-audio: Add DSD support for EVGA NU Audio (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: postpone to start IR context (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: handle several AMDTP streams in callback handler of IRQ target (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: cancel flushing isoc context in the laste step to process context callback (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace ack callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: replace pointer callback to flush isoc contexts in AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add irq_target member into amdtp_domain struct (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the minimum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: tune the maximum available size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: schedule hardware IRQ according to the size of PCM period (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: share PCM buffer size for both direction (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: use variable size of queue for isoc packets instead of fixed size (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: use the same size of period for PCM substreams in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: use the same size of period for PCM substream in AMDTP streams (Jaroslav Kysela) [1710702] - [sound] ALSA: fireface: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-motu: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-tascam: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-digi00x: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: dice: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: oxfw: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: fireworks: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: bebob: register the size of PCM period to AMDTP domain (Jaroslav Kysela) [1710702] - [sound] ALSA: firewire-lib: add a member into AMDTP domain for events per period (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Enable headset mic on Asus MJ401TA (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda/realtek - Add support for ALC711 (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Force runtime PM on Nvidia HDMI codecs (Jaroslav Kysela) [1710702] - [sound] ALSA: hda - Add laptop imic fixup for ASUS M9V laptop (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Add Tigerlake/Jasperlake PCI ID (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a driver (Jaroslav Kysela) [1710702] - [sound] ALSA: hdac: clear link output stream mapping (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: dapm: fix a memory leak bug (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: debug: fix possible memory leak in sof_dfsentry_write() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: Intel: sof-rt5682: add a check for devm_clk_get (Jaroslav Kysela) [1710702] - [sound] ALSA: Fix Kconfig indentation (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: control: return true when kcontrol values change (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: fix intel DSP config (Jaroslav Kysela) [1710702] - [sound] ALSA: hda: add Intel DSP configuration / probe code (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: core: Fix pcm code debugfs error (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoc: rockchip: i2s: Fix RPM imbalance (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Don't generate kcontrols without READ flags (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: bytcr_rt5651: add null check to support_button_press (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: add remove function to disable jack (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: rt5682: add NULL handler to set_jack function (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: intel: sof_rt5682: use separate route map for dmic (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: initialise and verify FW crash dump data. (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: Intel: hda: fix warnings during FW load (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: harden PCM STOP sequence (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: pcm: fix resource leak in hw_free (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: topology: fix parse fail issue for byte/bool tuple types (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: SOF: loader: fix kernel oops on firmware boot failure (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm_adsp: Fix theoretical NULL pointer for alg_region (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: max98373: check for device node before parsing (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create() (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: soc-component: fix a couple missing error assignments (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: wm8994: Do not register inapplicable controls for WM1811 (Jaroslav Kysela) [1710702] - [sound] ALSA: ASoC: samsung: arndale: Add missing OF node dereferencing (Jaroslav Kysela) [1710702] - [infiniband] RDMA/bnxt_re: Fix spelling mistake "missin_resp" -> "missing_resp" (Kamal Heib) [1724772] - [infiniband] RDMA: Fix goto target to release the allocated memory (Kamal Heib) [1724772] - [infiniband] IB/bnxt_re: Do not notifify GID change event (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Honor vlan_id in GID entry comparison (Kamal Heib) [1724772] - [infiniband] ib/bnxt: Remove mention of idr_alloc from comment (Kamal Heib) [1724772] - [infiniband] RDMA/bnxt_re: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1724772] - [infiniband] bnxt_re: Clean cq for kernel consumers only (Kamal Heib) [1724772] - [infiniband] bnxt_re: fix the regression due to changes in alloc_pbl (Kamal Heib) [1724772] - [scsi] scsi: lpfc: Make lpfc_debugfs_ras_log_data static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix NULL check before mempool_destroy is not needed (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix spelling error in MAGIC_NUMER_xxx (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix build error of lpfc_debugfs.c for vfree/vmalloc (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_nvmet: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: lpfc_attr: Fix Use plain integer as NULL pointer (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Update lpfc version to 12.6.0.0 (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add additional discovery log messages (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FC-AL support to lpe32000 models (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add FA-WWN Async Event reporting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Add log macros to allow print by serverity or verbosity setting (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make FW logging dynamically configurable (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Revise interrupt coalescing for missing scenarios (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Remove lock contention target write path (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Slight fast-path performance optimizations (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix coverity error of dereference after null check (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix hardlockup in lpfc_abort_handler (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix bad ndlp ptr in xri aborted handling (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix lockdep errors in sli_ringtx_put (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Fix reporting of read-only fw error errors (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: fix lpfc_nvmet_mrq to be bound by hdw queue count (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: Make function lpfc_defer_pt2pt_acc static (Dick Kennedy) [1768102] - [scsi] scsi: lpfc: add support for posting FC events on FPIN reception (Dick Kennedy) [1768102] - [infiniband] RDMA/siw: Mark Software iWARP Driver as tech-preview (Kamal Heib) [1767292] - [crypto] crypto: ccp - Replace dma_pool_alloc + memset with dma_pool_zalloc (Gary Hook) [1724859] - [crypto] crypto: ccp/gcm - use const time tag comparison. (Gary Hook) [1724859] - [crypto] crypto: ccp - Switch to SPDX license identifiers (Gary Hook) [1724859] - [crypto] crypto: ccp - Validate the the error value used to index error messages (Gary Hook) [1724859] - [crypto] crypto: ccp - Make ccp_register_rsa_alg static (Gary Hook) [1724859] - [crypto] crypto: ccp - Update copyright notices and dates (Gary Hook) [1724859] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Gary Hook) [1724859] - [x86] x86/umwait: Fix error handling in umwait_init() (Steve Best) [1724525] - [documentation] Documentation/ABI: Document umwait control sysfs interfaces (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait maximum time (Steve Best) [1724525] - [x86] x86/umwait: Add sysfs interface to control umwait C0.2 state (Steve Best) [1724525] - [x86] x86/umwait: Initialize umwait control values (Steve Best) [1724525] - [x86] x86/cpufeatures: Enumerate user wait instructions (Steve Best) [1724525] - [fs] virtiofs: Remove set but not used variable 'fc' (Vivek Goyal) [1694161] - [fs] virtiofs: Retry request submission from worker context (Vivek Goyal) [1694161] - [fs] virtiofs: Count pending forgets as in_flight forgets (Vivek Goyal) [1694161] - [fs] virtiofs: Set FR_SENT flag only after request has been sent (Vivek Goyal) [1694161] - [fs] virtiofs: No need to check fpq->connected state (Vivek Goyal) [1694161] - [fs] virtiofs: Do not end request in submission context (Vivek Goyal) [1694161] - [fs] fuse: don't advise readdirplus for negative lookup (Vivek Goyal) [1694161] - [fs] fuse: don't dereference req->args on finished request (Vivek Goyal) [1694161] - [fs] virtio-fs: don't show mount options (Vivek Goyal) [1694161] - [fs] virtio-fs: Change module name to virtiofs.ko (Vivek Goyal) [1694161] - [include] bitops: protect variables in bit_clear_unless() macro (Vivek Goyal) [1694161] - [include] bitops: protect variables in set_mask_bits() macro (Vivek Goyal) [1694161] - [fs] fuse: Make fuse_args_to_req static (Vivek Goyal) [1694161] - [fs] fuse: fix memleak in cuse_channel_open (Vivek Goyal) [1694161] - [fs] fuse: fix beyond-end-of-page access in fuse_parse_cache() (Vivek Goyal) [1694161] - [fs] fuse: unexport fuse_put_request (Vivek Goyal) [1694161] - [fs] fuse: kmemcg account fs data (Vivek Goyal) [1694161] - [fs] fuse: on 64-bit store time in d_fsdata directly (Vivek Goyal) [1694161] - [fs] fuse: fix missing unlock_page in fuse_writepage() (Vivek Goyal) [1694161] - [fs] virtio-fs: add virtiofs filesystem (Vivek Goyal) [1694161] - [fs] fuse: allow skipping control interface and forced unmount (Vivek Goyal) [1694161] - [fs] fuse: dissociate DESTROY from fuseblk (Vivek Goyal) [1694161] - [fs] fuse: delete dentry if timeout is zero (Vivek Goyal) [1694161] - [fs] fuse: separate fuse device allocation and installation in fuse_conn (Vivek Goyal) [1694161] - [fs] fuse: add fuse_iqueue_ops callbacks (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_fill_super_common() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_dequeue_forget() function (Vivek Goyal) [1694161] - [fs] fuse: export fuse_get_unique() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_send_init_request() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_len_args() (Vivek Goyal) [1694161] - [fs] fuse: export fuse_end_request() (Vivek Goyal) [1694161] - [fs] fuse: fix request limit (Vivek Goyal) [1694161] - [fs] fuse: stop copying pages to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: stop copying args to fuse_req (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_req (Vivek Goyal) [1694161] - [fs] fuse: simplify request allocation (Vivek Goyal) [1694161] - [fs] fuse: unexport request ops (Vivek Goyal) [1694161] - [fs] fuse: convert retrieve to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert release to simple api (Vivek Goyal) [1694161] - [fs] cuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert init to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert writepages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readdir to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert readpages to simple api (Vivek Goyal) [1694161] - [fs] fuse: convert direct_io to simple api (Vivek Goyal) [1694161] - [fs] fuse: add simple background helper (Vivek Goyal) [1694161] - [fs] fuse: convert sync write to simple api (Vivek Goyal) [1694161] - [fs] fuse: covert readpage to simple api (Vivek Goyal) [1694161] - [fs] fuse: fuse_short_read(): don't take fuse_req as argument (Vivek Goyal) [1694161] - [fs] fuse: convert ioctl to simple api (Vivek Goyal) [1694161] - [fs] fuse: move page alloc (Vivek Goyal) [1694161] - [fs] fuse: convert readlink to simple api (Vivek Goyal) [1694161] - [fs] fuse: add pages to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert destroy to simple api (Vivek Goyal) [1694161] - [fs] fuse: add nocreds to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert fuse_force_forget() to simple api (Vivek Goyal) [1694161] - [fs] fuse: add noreply to fuse_args (Vivek Goyal) [1694161] - [fs] fuse: convert flush to simple api (Vivek Goyal) [1694161] - [fs] fuse: simplify 'nofail' request (Vivek Goyal) [1694161] - [fs] fuse: rearrange and resize fuse_args fields (Vivek Goyal) [1694161] - [fs] fuse: flatten 'struct fuse_args' (Vivek Goyal) [1694161] - [fs] fuse: fix deadlock with aio poll and fuse_iqueue::waitq.lock (Vivek Goyal) [1694161] - [fs] cuse: fix broken release (Vivek Goyal) [1694161] - [fs] fuse: cleanup fuse_wait_on_page_writeback (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (take 2) (Vivek Goyal) [1694161] - [fs] Revert "fuse: require /dev/fuse reads to have enough buffer capacity" (Vivek Goyal) [1694161] - [fs] fuse: extract helper for range writeback (Vivek Goyal) [1694161] - [fs] fuse: add FUSE_WRITE_KILL_PRIV (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_alloc_inode (Vivek Goyal) [1694161] - [fs] fuse: Add ioctl flag for x32 compat ioctl (Vivek Goyal) [1694161] - [fs] fuse: document fuse_fsync_in.fsync_flags (Vivek Goyal) [1694161] - [fs] fuse: require /dev/fuse reads to have enough buffer capacity (Vivek Goyal) [1694161] - [fs] fuse: retrieve: cap requested size to negotiated max_write (Vivek Goyal) [1694161] - [fs] fuse: allow filesystems to have precise control over data cache (Vivek Goyal) [1694161] - [fs] fuse: convert printk -> pr_* (Vivek Goyal) [1694161] - [fs] fuse: fix writepages on 32bit (Vivek Goyal) [1694161] - [fs] fuse: cache readdir calls if filesystem opts out of opendir (Vivek Goyal) [1694161] - [fs] fuse: support clients that don't implement 'opendir' (Vivek Goyal) [1694161] - [fs] fuse: lift bad inode checks into callers (Vivek Goyal) [1694161] - [fs] fuse: multiplex cached/direct_io file operations (Vivek Goyal) [1694161] - [fs] fuse add copy_file_range to direct io fops (Vivek Goyal) [1694161] - [fs] fuse: use iov_iter based generic splice helpers (Vivek Goyal) [1694161] - [fs] fuse: Switch to using async direct IO for FOPEN_DIRECT_IO (Vivek Goyal) [1694161] - [fs] fuse: use atomic64_t for khctr (Vivek Goyal) [1694161] - [fs] fuse: clean up aborted (Vivek Goyal) [1694161] - [fs] fuse: Protect ff->reserved_req via corresponding fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Protect fi->nlookup with fi->lock (Vivek Goyal) [1694161] - [fs] fuse: Introduce fi->lock to protect write related fields (Vivek Goyal) [1694161] - [fs] fuse: Convert fc->attr_version into atomic64_t (Vivek Goyal) [1694161] - [fs] fuse: Add fuse_inode argument to fuse_prepare_release() (Vivek Goyal) [1694161] - [fs] fuse: Verify userspace asks to requeue interrupt that we really sent (Vivek Goyal) [1694161] - [fs] fuse: Do some refactoring in fuse_dev_do_write() (Vivek Goyal) [1694161] - [fs] fuse: Wake up req->waitq of only if not background (Vivek Goyal) [1694161] - [fs] fuse: Optimize request_end() by not taking fiq->waitq.lock (Vivek Goyal) [1694161] - [fs] fuse: Kill fasync only if interrupt is queued in queue_interrupt() (Vivek Goyal) [1694161] - [fs] fuse: Remove stale comment in end_requests() (Vivek Goyal) [1694161] - [fs] fuse: Replace page without copying in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: fix leaked aux requests (Vivek Goyal) [1694161] - [fs] fuse: only reuse auxiliary request in fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: clean up fuse_writepage_in_flight() (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_find_writeback() helper (Vivek Goyal) [1694161] - [fs] cuse: fix ioctl (Vivek Goyal) [1694161] - [fs] fuse: Fix memory leak in fuse_dev_free() (Vivek Goyal) [1694161] - [fs] fuse: fix revalidation of attributes for permission check (Vivek Goyal) [1694161] - [fs] fuse: fix fsync on directory (Vivek Goyal) [1694161] - [fs] fuse: Add bad inode check in fuse_destroy_inode() (Vivek Goyal) [1694161] - [fs] fuse: enable caching of symlinks (Vivek Goyal) [1694161] - [fs] fuse: only invalidate atime in direct read (Vivek Goyal) [1694161] - [fs] fuse: realloc page array (Vivek Goyal) [1694161] - [fs] fuse: add max_pages to init_out (Vivek Goyal) [1694161] - [fs] fuse: allocate page array more efficiently (Vivek Goyal) [1694161] - [fs] fuse: reduce size of struct fuse_inode (Vivek Goyal) [1694161] - [fs] fuse: use iversion for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: use mtime for readdir cache verification (Vivek Goyal) [1694161] - [fs] fuse: add readdir cache version (Vivek Goyal) [1694161] - [fs] fuse: allow using readdir cache (Vivek Goyal) [1694161] - [fs] fuse: allow caching readdir (Vivek Goyal) [1694161] - [fs] fuse: extract fuse_emit() helper (Vivek Goyal) [1694161] - [fs] fuse: add FOPEN_CACHE_DIR (Vivek Goyal) [1694161] - [fs] fuse: split out readdir.c (Vivek Goyal) [1694161] - [fs] fuse: Use hash table to link processing request (Vivek Goyal) [1694161] - [fs] fuse: kill req->intr_unique (Vivek Goyal) [1694161] - [fs] fuse: change interrupt requests allocation algorithm (Vivek Goyal) [1694161] - [fs] fuse: do not take fc->lock in fuse_request_send_background() (Vivek Goyal) [1694161] - [fs] fuse: introduce fc->bg_lock (Vivek Goyal) [1694161] - [fs] fuse: add locking to max_background and congestion_threshold changes (Vivek Goyal) [1694161] - [fs] fuse: use READ_ONCE on congestion_threshold and max_background (Vivek Goyal) [1694161] - [fs] fuse: use list_first_entry() in flush_bg_queue() (Vivek Goyal) [1694161] - [fs] fuse: reduce allocation size for splice_write (Vivek Goyal) [1694161] - [fs] fuse: use kvmalloc to allocate array of pipe_buffer structs. (Vivek Goyal) [1694161] - [fs] fuse: convert last timespec use to timespec64 (Vivek Goyal) [1694161] - [fs] fs: fuse: Adding new return type vm_fault_t (Vivek Goyal) [1694161] - [fs] fuse: simplify fuse_abort_conn() (Vivek Goyal) [1694161] - [infiniband] RDMA/siw: Fix IPv6 addr_list locking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix 64/32bit pointer inconsistency (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix SGL mapping issues (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix potential NULL de-ref (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Change CQ flags from 64->32 bits (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix a memory leak in siw_init_cpulist() (Kamal Heib) [1725830 1720892] - [infiniband] Do not dereference 'siw_crypto_shash' before checking (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove set but not used variables 'rv' (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix error return code in siw_init_module() (Kamal Heib) [1725830 1720892] - [infiniband] RMDA/siw: Require a 64 bit arch (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Mark expected switch fall-throughs (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Remove set but not used variable 's' (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Add missing dependencies on LIBCRC32C and DMA_VIRT_OPS (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Add missing rtnl_lock around access to ifa (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: Use proper enumerated type in map_cqe_status (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Remove unnecessary kthread create/destroy printouts (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/siw: Fix DEFINE_PER_CPU compilation when ARCH_NEEDS_WEAK_PER_CPU (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: addition to kernel build environment (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: completion queue methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: receive path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: transmit path (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: queue pair methods (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application buffer management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: application interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: connection management (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: network and RDMA core interface (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: main include file (Kamal Heib) [1725830 1720892] - [infiniband] rdma/siw: iWarp wire packet format (Kamal Heib) [1725830 1720892] - [infiniband] RDMA/cma: fix null-ptr-deref Read in cma_cleanup (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Rewrite PID namespace check to be reliable (Kamal Heib) [1720892] - [infiniband] RDMA/counters: Properly implement PID checks (Kamal Heib) [1720892] - [infiniband] IB/core: Fix NULL pointer dereference when bind QP to counter (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Fix MR npages calculation for IB_ACCESS_HUGETLB (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix error code in stat_get_doit_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Prevent QP counter binding if counters unsupported (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix -Wunused-const-variable warnings (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Added configuration of RDMA dynamic interrupt moderation to netlink (Kamal Heib) [1720892] - [infiniband] RDMA/core: Provide RDMA DIM support for ULPs (Kamal Heib) [1720892] - [infiniband] linux/dim: Implement RDMA adaptive moderation (DIM) (Kamal Heib) [1720892] - [infiniband] IB/mad: Fix use-after-free in ib mad completion handling (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Track driver QP types in resource tracker (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Remove the lock around remove_client_context (Kamal Heib) [1720892] - [infiniband] RDMA/devices: Do not deadlock during client removal (Kamal Heib) [1720892] - [infiniband] IB/core: Add mitigation for Spectre V1 (Kamal Heib) [1720892] - [infiniband] IB/counters: Always initialize the port counter object (Kamal Heib) [1720892] - [infiniband] IB/core: Fix querying total rdma stats (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix race when resolving IP address (Kamal Heib) [1720892] - [infiniband] xprtrdma: Modernize ops->connect (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove rpcrdma_req::rl_buffer (Kamal Heib) [1720892] - [infiniband] xprtrdma: Refactor chunk encoding (Kamal Heib) [1720892] - [infiniband] xprtrdma: Streamline rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] xprtrdma: Simplify rpcrdma_rep_create (Kamal Heib) [1720892] - [infiniband] xprtrdma: Wake RPCs directly in rpcrdma_wc_send path (Kamal Heib) [1720892] - [infiniband] xprtrdma: Reduce context switching due to Local Invalidation (Kamal Heib) [1720892] - [infiniband] xprtrdma: Add mechanism to place MRs back on the free list (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove fr_state (Kamal Heib) [1720892] - [infiniband] xprtrdma: Remove the RPCRDMA_REQ_F_PENDING flag (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix occasional transport deadlock (Kamal Heib) [1720892] - [infiniband] xprtrdma: Replace use of xdr_stream_pos in rpcrdma_marshal_req (Kamal Heib) [1720892] - [infiniband] xprtrdma: Fix use-after-free in rpcrdma_post_recvs (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make rdma_counter.h compile stand alone (Kamal Heib) [1720892] - [infiniband] IB/core: Work on the caller socket net namespace in nldev_newlink() (Kamal Heib) [1663224 1720892] - [infiniband] RDMA/rxe: Fill in wc byte_len with IB_WC_RECV_RDMA_WITH_IMM (Kamal Heib) [1720892] - [infiniband] ibverbs/rxe: Remove variable self-initialization (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get default counter statistics through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow get counter mode through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter manual mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Allow manual mode configuration support (Kamal Heib) [1720892] - [infiniband] RDMA/core: Get sum value of all counters when perform a sysfs stat read (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Implement counter dumpit calback (Kamal Heib) [1720892] - [infiniband] RDMA/nldev: Allow counter auto mode configration through RDMA netlink (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add "auto" configuration mode support (Kamal Heib) [1720892] - [infiniband] RDMA/counter: Add set/clear per-port auto mode support (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Make is_visible_in_pid_ns() as an API (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Add an API to attach a task to a resource (Kamal Heib) [1720892] - [infiniband] RDMA/restrack: Introduce statistic counter (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Add child to parent list only if device initialized (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: remove redundant assignment to variable ret (Kamal Heib) [1720892] - [infiniband] IB/ipoib: Remove memset after vzalloc in ipoib_cm.c (Kamal Heib) [1720892] - [infiniband] IB: Remove unneeded memset (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Audit policy settings for netlink attributes (Kamal Heib) [1720892] - [infiniband] docs: infiniband: convert docs to ReST and rename to *.rst (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Introduce rdma_rw_inv_key helper (Kamal Heib) [1720892] - [infiniband] RDMA/core: Validate integrity handover device cap (Kamal Heib) [1720892] - [infiniband] RDMA/core: Rename signature qp create flag and signature device capability (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add an integrity MR pool support (Kamal Heib) [1720892] - [infiniband] IB/iser: Unwind WR union at iser_tx_desc (Kamal Heib) [1720892] - [infiniband] IB/iser: Use IB_WR_REG_MR_INTEGRITY for PI handover (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Introduce and implement new IB_WR_REG_MR_INTEGRITY work request (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Update set_sig_data_segment attribute for new signature API (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Pass UMR segment flags instead of boolean (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Add attr for max number page list length for PI operation (Kamal Heib) [1720892] - [infiniband] RDMA/mlx5: Implement mlx5_ib_map_mr_sg_pi and mlx5_ib_alloc_mr_integrity (Kamal Heib) [1720892] - [infiniband] RDMA/core: Add signature attrs element for ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce ib_map_mr_sg_pi to map data/protection sgl's (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce IB_MR_TYPE_INTEGRITY and ib_alloc_mr_integrity API (Kamal Heib) [1720892] - [infiniband] RDMA/core: Save the MR type in the ib_mr structure (Kamal Heib) [1720892] - [infiniband] RDMA/core: Introduce new header file for signature operations (Kamal Heib) [1720892] - [infiniband] RDMA/odp: Do not leak dma maps when working with huge pages (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: Use offsetofend instead of opencoding (Kamal Heib) [1720892] - [infiniband] [scsi] scsi: RDMA/srp: Fix a sleep-in-invalid-context bug (Kamal Heib) [1720892] - [infiniband] RDMA: Check umem pointer validity prior to release (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Remove asynchronic QP destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Convert destroy_wq to be void (Kamal Heib) [1720892] - [infiniband] RDMA/netlink: Resort policy array (Kamal Heib) [1720892] - [infiniband] RDMA: Report available cdevs through RDMA_NLDEV_CMD_GET_CHARDEV (Kamal Heib) [1720892] - [infiniband] RDMA: Add NLDEV_GET_CHARDEV to allow char dev discovery and autoload (Kamal Heib) [1720892] - [infiniband] ipoib: correcly show a VF hardware address (Kamal Heib) [1720892] - [infiniband] RDMA: Move rdma_node_type to uapi/ (Kamal Heib) [1720892] - [infiniband] rdma: Remove nes (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check for ETH_SS_TEST (Kamal Heib) [1720892] - [infiniband] RDMA: Convert CQ allocations to be under core responsibility (Kamal Heib) [1720892] - [infiniband] RDMA/hns: Return correct error code from hns_roce_v1_rsv_lp_qp() (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Don't expose DMA addresses (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use sizeof() notation instead of plain sizeof (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA: Clear CQ objects during their allocation (Kamal Heib) [1720892] - [infiniband] RDMA: Clean destroy CQ in drivers do not return errors (Kamal Heib) [1720892] - [infiniband] RDMA/i40iw: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb3: Delete and properly mark unimplemented resize CQ function (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Avoid memory allocation during CQ destroy (Kamal Heib) [1720892] - [infiniband] RDMA: Move owner into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move uverbs_abi_ver into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] RDMA: Move driver_id into struct ib_device_ops (Kamal Heib) [1720892] - [infiniband] rdma: Delete the ib_ucm module (Kamal Heib) [1720892] - [infiniband] ucma: Convert ctx_idr to XArray (Kamal Heib) [1720892] - [infiniband] ucma: Convert multicast_idr to XArray (Kamal Heib) [1720892] - [infiniband] RDMA/ucma: Use struct_size() helper (Kamal Heib) [1720892] - [infiniband] RDMA/srp: Accept again source addresses that do not have a port number (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: implement ethtool .get_link() callback (Kamal Heib) [1720892] - [infiniband] RDMA/uverbs: check for allocation failure in uapi_add_elm() (Kamal Heib) [1720892] - [infiniband] RDMA: Convert put_page() to put_user_page*() (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove second wait queue initialization call (Kamal Heib) [1720892] - [infiniband] RDMA/nes: Remove useless NULL checks (Kamal Heib) [1720892] - [infiniband] RDMA/core: Make ib_destroy_cq() void (Kamal Heib) [1720892] - [infiniband] RDMA/ipoib: Remove check of destroy CQ (Kamal Heib) [1720892] - [infiniband] RDMA/core: Return void from ib_device_check_mandatory() (Kamal Heib) [1720892] - [infiniband] RDMA/umem: Move page_shift from ib_umem to ib_odp_umem (Kamal Heib) [1720892] - [infiniband] RDMA/qedr: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/cxgb4: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720892] - [infiniband] RDMA/core: Fix doc typo (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Add info regarding SG count failure (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Print the correct number of sig MRs (Kamal Heib) [1720892] - [infiniband] RDMA/rw: Fix doc typo (Kamal Heib) [1720892] - [infiniband] IB/isert: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Remove unused sig_attrs argument (Kamal Heib) [1720892] - [infiniband] IB/iser: Refactor iscsi_iser_check_protection function (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Entropy in admin commands id (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Print address on AH creation failure (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Be consistent with success flow return value (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use API to get contiguous memory blocks aligned to device supported page size (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unused includes (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use rdma block iterator in chunk list creation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove unneeded admin commands abort flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Use kvzalloc instead of kzalloc with fallback (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove check that prevents destroy of resources in error flows (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Handle mmap insertions overflow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Fix success return value in case of error (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Remove MAYEXEC flag check from mmap flow (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add driver to Kconfig/Makefile (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa module (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA verbs implementation (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add common command handlers (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Implement functions that submit and complete admin commands (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the ABI definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the com service API definitions (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa_com.h file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add the efa.h header file (Kamal Heib) [1720892] - [infiniband] RDMA/efa: Add EFA device definitions (Kamal Heib) [1720892] - [infiniband] RDMA: Add EFA related definitions (Kamal Heib) [1720892] - [fs] CIFS: Fix use after free of file info structures (Dave Wysochanski) [1757865] - [mm] mm, memory_hotplug: fix scan_movable_pages() for gigantic hugepages (Rafael Aquini) [1730172] - [char] ipmi: Don't allow device module unload when in use (Tony Camuso) [1759916] - [netdrv] net: phy: Also request modules for C45 IDs (Gary Hook) [1764274] - [s390] s390/dasd: Fix error handling during online processing (Philipp Rudo) [1764492] - [s390] s390/cpumsf: Check for CPU Measurement sampling (Philipp Rudo) [1764490] - [edac] EDAC/amd64: Support asymmetric dual-rank DIMMs (Gary Hook) [1753384] - [edac] EDAC/amd64: Cache secondary Chip Select registers (Gary Hook) [1753384] - [edac] EDAC/amd64: Decode syndrome before translating address (Gary Hook) [1753384] - [edac] EDAC/amd64: Find Chip Select memory size using Address Mask (Gary Hook) [1753384] - [edac] EDAC/amd64: Initialize DIMM info for systems with more than two channels (Gary Hook) [1753384] - [edac] EDAC/amd64: Recognize DRAM device type ECC capability (Gary Hook) [1753384] - [edac] EDAC/amd64: Support more than two controllers for chip selects handling (Gary Hook) [1753384] - [scsi] scsi: fnic: fix msix interrupt allocation (Govindarajulu Varadarajan) [1745083] - [scsi] scsi: fnic: print port speed only at driver init or speed change (Govindarajulu Varadarajan) [1745083] - [netdrv] qmi_wwan: apply SET_DTR quirk to Sierra WP7607 (Lubomir Rintel) [1729083]- [tools] libbpf: remove compile time warning from libbpf_util.h (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove dependency on barrier.h in xsk.h (Yauheni Kaliuta) [1747341] - [kernel] seccomp, bpf: disable preemption before calling into bpf prog (Yauheni Kaliuta) [1747341] - [lib] bpf: test_bpf: turn off preemption in function __run_once (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove unnecessary cast-to-void (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix sysctl.c warning (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix using uninitialized ioctl results (Yauheni Kaliuta) [1747341] - [tools] libbpf: proper XSKMAP cleanup (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix invalid munmap call (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix XDP socket ring buffer memory ordering (Yauheni Kaliuta) [1747341] - [tools] libbpf: remove likely/unlikely in xsk.h (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect, correctly get dummy program id (Yauheni Kaliuta) [1747341] - [net] bpf: fix access to skb_shared_info->gso_segs (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix out of bounds backwards jmps due to dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix use after free in prog symbol exposure (Yauheni Kaliuta) [1747341] - [include] bpf: Fix preempt_enable_no_resched() abuse (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test cases for pkt/null checks in subprogs (Yauheni Kaliuta) [1747341] - [kernel] bpf: mark registers in all frames after pkt/null checks (Yauheni Kaliuta) [1747341] - [tools] libbpf: add binary to gitignore (Yauheni Kaliuta) [1747341] - [net] bpf: Check address length before reading address family (Yauheni Kaliuta) [1747341] - [net] flow_dissector: disable preemption around BPF calls (Yauheni Kaliuta) [1747341] - [net] flow_dissector: switch kernel context to struct bpf_flow_dissector (Yauheni Kaliuta) [1747341] - [net] flow_dissector: fix clamping of BPF flow_keys for non-zero nhoff (Yauheni Kaliuta) [1747341] - [net] flow_dissector: allow access only to a subset of __sk_buff fields (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: pass flow_keys->n_proto to BPF programs (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix vlan handling in flow dissector program (Yauheni Kaliuta) [1747341] - [tools] bpf, libbpf: fix quiet install_headers (Yauheni Kaliuta) [1747341] - [tools] libbpf: add libelf dependency to shared library build (Yauheni Kaliuta) [1747341] - [tools] libbpf: add xsk.h to install_headers target (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test for VOID equivalence check (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix btf_dedup equivalence check handling of different kinds (Yauheni Kaliuta) [1747341] - [documentation] bpf, doc: fix BTF docs reflow of bullet list (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test case for invalid call stack in dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: remove incorrect 'verifier bug' warning (Yauheni Kaliuta) [1747341] - [kernel] bpf: Only print ref_obj_id for refcounted reg (Yauheni Kaliuta) [1747341] - [tools] tool: use bpf_program__get_prog_info_linear() in prog.c:do_dump() (Yauheni Kaliuta) [1747341] - [tools] tools lib bpf: Introduce bpf_program__get_prog_info_linear() (Yauheni Kaliuta) [1747341] - [tools] perf tools: Fix errors under optimization level '-Og' (Yauheni Kaliuta) [1747341] - [kernel] bpf: Try harder when allocating memory for large maps (Yauheni Kaliuta) [1747341] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add fwd enum resolution test for btf_dedup (Yauheni Kaliuta) [1747341] - [tools] btf: resolve enum fwds in btf_dedup (Yauheni Kaliuta) [1747341] - [tools] bpf: Add an example for bpf_get_listener_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Test ref release issue in bpf_tcp_sock and bpf_sk_fullsock (Yauheni Kaliuta) [1747341] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [net] bpf: Add bpf_get_listener_sock(struct bpf_sock *sk) helper (Yauheni Kaliuta) [1747341] - [kernel] bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix to reject unknown flags in xsk_socket__create() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix segfault of test_progs when prog loading failed (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix replace_map_fd_with_map_ptr's ldimm64 second imm field (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_progs: initialize duration in singal_pending test (Yauheni Kaliuta) [1747341] - [tools] libbpf: force fixdep compilation at the start of the build (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: fix compilation with out-of-tree $(OUTPUT) (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test that GSO works in lwt_ip_encap (Yauheni Kaliuta) [1747341] - [bpf] bpf: hbm: fix spelling mistake "deault" -> "default" (Yauheni Kaliuta) [1747341] - [tools] bpf: add test cases for non-pointer sanitiation logic (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - misc (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - spinlock (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - tracepoint (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - stackmap (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - xdp (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - pkt access (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_progs - preparations (Yauheni Kaliuta) [1747341] - [bpf] bpf: HBM test script (Yauheni Kaliuta) [1747341] - [bpf] bpf: User program for testing HBM (Yauheni Kaliuta) [1747341] - [bpf] bpf: Sample HBM BPF program to limit egress bw (Yauheni Kaliuta) [1747341] - [include] bpf: sync bpf.h to tools and update bpf_helpers.h (Yauheni Kaliuta) [1747341] - [net] bpf: add bpf helper bpf_skb_ecn_set_ce (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: silence compiler warning for xdpsock_user.c (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: set unlimited RLIMIT_MEMLOCK for test_sock_fields (Yauheni Kaliuta) [1747341] - [documentation] docs/bpf: minor casing/punctuation fixes (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: reflow text to fill up to 78 characters (Yauheni Kaliuta) [1747341] - [documentation] docs/btf: fix typos, improve wording (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix u64_stats_init() usage in bpf_prog_alloc() (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add btf_dedup test of FWD/STRUCT resolution (Yauheni Kaliuta) [1747341] - [tools] btf: allow to customize dedup hash table size (Yauheni Kaliuta) [1747341] - [tools] libbpf: fix formatting for btf_ext__get_raw_data (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix btf_dedup testing code (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: make sure readelf shows full names in build checks (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: use libbpf where easy (Yauheni Kaliuta) [1747341] - [tools] tools: libbpf: add a correctly named define for map iteration (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: remove load_sock_ops in favour of bpftool (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: force IPv4 in ping (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c for flow dissector (Yauheni Kaliuta) [1747341] - [tools] bpf: add missing entries to bpf_helpers.h (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: selftests: add map lookup to test_map_in_map bpf prog (Yauheni Kaliuta) [1747341] - [kernel] bpf: set inner_map_meta->spin_lock_off correctly (Yauheni Kaliuta) [1747341] - [bpf] samples: bpf: fix: broken sample regarding removed function (Yauheni Kaliuta) [1747341] - [tools] tools/bpftool: recognize bpf_prog_info run_time_ns and run_cnt (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync bpf.h into tools (Yauheni Kaliuta) [1747341] - [kernel] bpf: expose program stats via bpf_prog_info (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix build without bpf_syscall (Yauheni Kaliuta) [1747341] - [kernel] bpf: enable program stats (Yauheni Kaliuta) [1747341] - [kernel] bpf: check that BPF programs run with preemption disabled (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: convert xdpsock to use libbpf for AF_XDP access (Yauheni Kaliuta) [1747341] - [tools] libbpf: add support for using AF_XDP sockets (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: make sure signal interrupts BPF_PROG_TEST_RUN (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Fix dummy program unloading for xdp_redirect samples (Yauheni Kaliuta) [1747341] - [s390] s390/net: convert pnetids to ascii (Yauheni Kaliuta) [1747341] - [net] bpf: add skb->queue_mapping write access from tc clsact (Yauheni Kaliuta) [1747341] - [tools] tools/libbpf: support bigger BTF data sizes (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: test_lwt_ip_encap: add negative tests. (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_object__btf (Yauheni Kaliuta) [1747341] - [tools] libbpf: Introduce bpf_map__resize (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: replace bzero with memset (Yauheni Kaliuta) [1747341] - [net] net: fix GSO in bpf_lwt_push_ip_encap (Yauheni Kaliuta) [1747341] - [net] net: fix double-free in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: fix memory leak in bpf_lwt_xmit_reroute (Yauheni Kaliuta) [1747341] - [net] bpf: make LWTUNNEL_BPF dependent on INET (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add test_lwt_ip_encap selftest (Yauheni Kaliuta) [1747341] - [include] bpf: sync /include/.../bpf.h with tools/include/.../bpf.h (Yauheni Kaliuta) [1747341] - [net] bpf: add handling of BPF_LWT_REROUTE to lwt_bpf.c (Yauheni Kaliuta) [1747341] - [net] ipv6_stub: add ipv6_route_input stub/proxy. (Yauheni Kaliuta) [1747341] - [net] bpf: handle GSO in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: implement BPF_LWT_ENCAP_IP mode in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: add plumbing for BPF_LWT_ENCAP_IP in bpf_lwt_push_encap (Yauheni Kaliuta) [1747341] - [net] bpf: offload: add priv field for drivers (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, add text about feature-subcommand (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: relax sub-register mode compilation criteria (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: centre kernel bpf objects under new subdir "progs" (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: extend sub-register mode compilation to all bpf object files (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add "alu32" to .gitignore (Yauheni Kaliuta) [1747341] - [tools] bpf: Add test_sock_fields for skb->sk and bpf_tcp_sock (Yauheni Kaliuta) [1747341] - [tools] bpf: Add skb->sk, bpf_sk_fullsock and bpf_tcp_sock tests to test_verifer (Yauheni Kaliuta) [1747341] - [nclude] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add struct bpf_tcp_sock and BPF_FUNC_tcp_sock (Yauheni Kaliuta) [1747341] - [net] bpf: Refactor sock_ops_convert_ctx_access (Yauheni Kaliuta) [1747341] - [net] bpf: Add state, dst_ip4, dst_ip6 and dst_port to bpf_sock (Yauheni Kaliuta) [1747341] - [kernel] bpf: Add a bpf_sock pointer to __sk_buff and a bpf_sk_fullsock helper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: remove btf__get_strings() superseded by raw data API (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf_ext data (Yauheni Kaliuta) [1747341] - [tools] btf: expose API to work with raw btf data (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add log_level to bpf_load_program_attr (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add missing strings.h include (Yauheni Kaliuta) [1747341] - [s390] s390/net: move pnet constants (Yauheni Kaliuta) [1747341] - [tools] bpf: test_maps: fix possible out of bound access warning (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: doc, fix incorrect text (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test reading the offloaded program (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add test for mixing generic and offload XDP (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: print traceback when test fails (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: fix the expected messages (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add const qualifier to btf__get_map_kv_tids() map_name parameter (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add "any alignment" annotation for some tests (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: use localhost in tcp_{server, client}.py (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: fix JMP32 code-gen (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: remove generated verifier/tests.h on 'make clean' (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Check the prog id before exiting (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Add a "force" flag to XDP samples (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Extend RLIMIT_MEMLOCK for xdp_{sample_pkts, router_ipv4} (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: Convert XDP samples to libbpf usage (Yauheni Kaliuta) [1747341] - [bpf] samples/bpf: xdp_redirect_cpu have not need for read_trace_pipe (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: test for BPF_F_LOCK (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync uapi/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce BPF_F_LOCK flag (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock C test (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add simple BPF_PROG_TEST_RUN examples for flow dissector (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: add bpf_spin_lock verifier tests (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: sync include/uapi/linux/bpf.h (Yauheni Kaliuta) [1747341] - [kernel] bpf: add support for bpf_spin_lock to cgroup local storage (Yauheni Kaliuta) [1747341] - [kernel] bpf: introduce bpf_spin_lock (Yauheni Kaliuta) [1747341] - [net] bpf: Correctly annotate implicit fall through in bpf_base_func_proto (Yauheni Kaliuta) [1747341] - [kernel] bpf, cgroups: clean up kerneldoc warnings (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix bitrotted kerneldoc (Yauheni Kaliuta) [1747341] - [include] bpf: BPF_PROG_TYPE_CGROUP_{SKB, SOCK, SOCK_ADDR} require cgroups enabled (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: mark verifier test that uses bpf_trace_printk as BPF_PROG_TYPE_TRACEPOINT (Yauheni Kaliuta) [1747341] - [net] bpf: add BPF_PROG_TEST_RUN support for flow dissector (Yauheni Kaliuta) [1747341] - [net] net/flow_dissector: move bpf case into __skb_flow_bpf_dissect (Yauheni Kaliuta) [1747341] - [net] Revert "[net] flow_dissector: disable preemption around BPF calls" (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: warn about risky prog array updates (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: remove duplicated include (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up the rest of test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: break up test_verifier (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: prepare for break up of verifier tests (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: makefile support sub-register code-gen test mode (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: functional and min/max reasoning unit tests for JMP32 (Yauheni Kaliuta) [1747341] - [s390] s390: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [powerpc] ppc: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [arm64] arm64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [x86] x86_64: bpf: implement jitting of JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: JIT blinds support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: interpreter support for JMP32 (Yauheni Kaliuta) [1747341] - [tools] tools: bpftool: teach cfg code about JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: disassembler support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier support JMP32 (Yauheni Kaliuta) [1747341] - [kernel] bpf: refactor verifier min/max code for condition jump (Yauheni Kaliuta) [1747341] - [include] bpf: allocate 0x06 to new eBPF instruction class JMP32 (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: suppress readelf stderr when probing for BTF support (Yauheni Kaliuta) [1747341] - [net] bpf: allow BPF programs access skb_shared_info->gso_segs field (Yauheni Kaliuta) [1747341] - [tools] tool: feature probing, change default action (Yauheni Kaliuta) [1747341] - [kernel] bpf: notify offload JITs about optimizations (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: record original instruction index (Yauheni Kaliuta) [1747341] - [tools] selftests: bpf: add tests for dead code removal (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove unconditional branches by 0 (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: remove dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: verifier: hard wire branches to dead code (Yauheni Kaliuta) [1747341] - [kernel] bpf: change parameters of call/branch offset adjustment (Yauheni Kaliuta) [1747341] - [tools] selftests/bpf: don't hardcode iptables/nc path in test_tcpnotify_user (Yauheni Kaliuta) [1747341] - [tools] libbpf: Show supported ELF section names when failing to guess prog/attach type (Yauheni Kaliuta) [1747341] - [documentation] bpf: btf: add btf documentation (Yauheni Kaliuta) [1747341] - [kernel] perf: Make perf_event_output() propagate the output() return (Yauheni Kaliuta) [1747341] - [kernel] bpf: fix a (false) compiler warning (Yauheni Kaliuta) [1747341] - [tools] tool: add bash completion for peek/push/enqueue/pop/dequeue (Yauheni Kaliuta) [1747341] - [tools] tool: add pop and dequeue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add push and enqueue commands (Yauheni Kaliuta) [1747341] - [tools] tool: add peek command (Yauheni Kaliuta) [1747341] - [tools] tool: don't print empty key/value for maps (Yauheni Kaliuta) [1747341] - [tools] tool: make key optional in lookup command (Yauheni Kaliuta) [1747341] - [tools] tool: make key and value optional in update command (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: support __int128 in bpftool map pretty dumper (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add bpffs pretty print test for int128 (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: refactor test_btf pretty printing for multiple map value formats (Yauheni Kaliuta) [1747341] - [tools] tools/bpf: add int128 raw test in test_btf (Yauheni Kaliuta) [1747341] - [kernel] bpf: btf: support 128 bit integer type (Yauheni Kaliuta) [1747341] - [tools] libbpf: don't define CC and AR (Yauheni Kaliuta) [1747341] - [include] bpf: remove leftovers after v5.0 update (Yauheni Kaliuta) [1715770] - [target] scsi: target: cxgbit: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725820] - [netdrv] cxgb4i: add support for IEEE_8021QAZ_APP_SEL_STREAM selector (Vishal Kulkarni) [1725818] - [net] SUNRPC: Fix possible autodisconnect during connect due to old last_used (Dave Wysochanski) [1724692] - [fs] NFSv4: Add lease_time and lease_expired to 'nfs4:' line of mountstats (Dave Wysochanski) [1727369] - [scsi] scsi: zfcp: fix reaction on bit error threshold notification (Philipp Rudo) [1764494] - [iommu] iommu/arm-smmu: Error out only if not enough context interrupts (Mark Langsdorf) [1658736] - [netdrv] cxgb4:Fix out-of-bounds MSI-X info array access (Vishal Kulkarni) [1763194] - [fs] vfs: Fix EOVERFLOW testing in put_compat_statfs64 (Eric Sandeen) [1757902] - [security] selinux: fix context string corruption in convert_context() (Ondrej Mosnacek) [1758086] - [fs] cifs: use cifsInodeInfo->open_file_lock while iterating to avoid a panic (Dave Wysochanski) [1757865] - [kernel] alarmtimer: Use EOPNOTSUPP instead of ENOTSUPP (Vladis Dronov) [1760638] - [netdrv] cxgb4: RHEL-only disable device dump (Jonathan Toppins) [1708456] - [fs] xfs: Fix deadlock between AGI and AGF with RENAME_WHITEOUT (Brian Foster) [1759564] - [x86] x86/stacktrace: Prevent access_ok() warnings in arch_stack_walk_user() (Jerome Marchand) [1757758] - [s390] s390/sclp: Fix bit checked for has_sipl (Philipp Rudo) [1748347] - [fs] dax: dax_layout_busy_page() should not unmap cow pages (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup in put_unlocked_entry() (Jeff Moyer) [1752109] - [fs] dax: Fix missed wakeup with PMD faults (Jeff Moyer) [1752109] - [fs] dax: Fix xarray entry association for mixed mappings (Jeff Moyer) [1752109] - [mm] mm: page_mkclean vs MADV_DONTNEED race (Jeff Moyer) [1752109] - [fs] dax: Flush partial PMDs correctly (Jeff Moyer) [1752109 1724979] - [fs] dax: Use non-exclusive wait in wait_entry_unlocked() (Jeff Moyer) [1752109] - [x86] x86/mm: Fix decoy address handling vs 32-bit builds (Jeff Moyer) [1752109 1585079] - [fs] dax: Fix unlock mismatch with updated API (Jeff Moyer) [1752109 1724956] - [fs] dax: Don't access a freed inode (Jeff Moyer) [1752109 1724956] - [fs] dax: Check page->mapping isn't NULL (Jeff Moyer) [1752109 1585079 1724956] - [fs] dax: Avoid losing wakeup in dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Fix huge page faults (Jeff Moyer) [1752109] - [fs] dax: Fix dax_unlock_mapping_entry for PMD pages (Jeff Moyer) [1752109] - [fs] dax: Reinstate RCU protection of inode (Jeff Moyer) [1752109] - [fs] dax: Make sure the unlocking entry isn't locked (Jeff Moyer) [1752109] - [fs] dax: Remove optimisation from dax_lock_mapping_entry (Jeff Moyer) [1752109] - [fs] dax: Convert page fault handlers to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_lock_mapping_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax writeback to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert __dax_invalidate_entry to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_layout_busy_page to XArray (Jeff Moyer) [1752109] - [fs] dax: Convert dax_insert_pfn_mkwrite to XArray (Jeff Moyer) [1752109] - [fs] dax: Hash on XArray instead of mapping (Jeff Moyer) [1752109] - [fs] dax: Rename some functions (Jeff Moyer) [1752109] - [fs] dax: Fix deadlock in dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079 1641544] - [drivers] device-dax: Add missing address_space_operations (Jeff Moyer) [1752109 1585079] - [x86] x86/mm/pat: Prepare {reserve, free}_memtype() for "decoy" addresses (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Teach memory_failure() about dev_pagemap pages (Jeff Moyer) [1703560 1752109 1585079] - [fs] filesystem-dax: Introduce dax_lock_mapping_entry() (Jeff Moyer) [1752109 1585079] - [mm] mm, memory_failure: Collect mapping size in collect_procs() (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Let memory_failure() optionally take a page reference (Jeff Moyer) [1752109 1585079] - [mm] mm, madvise_inject_error: Disable MADV_SOFT_OFFLINE for ZONE_DEVICE pages (Jeff Moyer) [1752109 1585079] - [fs] filesystem-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Set page->index (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Enable page_mapping() (Jeff Moyer) [1752109 1585079] - [drivers] device-dax: Convert to vmf_insert_mixed and vm_fault_t (Jeff Moyer) [1752109 1585079] - [pci] PCI: Add quirk to disable MSI-X support for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI/VPD: Prevent VPD access for Amazon's Annapurna Labs Root Port (Myron Stowe) [1732357] - [pci] PCI: Add ACS quirk for Amazon Annapurna Labs root ports (Myron Stowe) [1732357] - [pci] PCI: Add Amazon's Annapurna Labs vendor ID (Myron Stowe) [1732357] - [arm64] arm64: PCI: Preserve firmware configuration when desired (Myron Stowe) [1732372] - [arm64] arm64: PCI: Allow resource reallocation if necessary (Myron Stowe) [1732372] - [pci] PCI: Don't auto-realloc if we're preserving firmware config (Myron Stowe) [1732372] - [pci] PCI/ACPI: Evaluate PCI Boot Configuration _DSM (Myron Stowe) [1732372] - [irqchip] irqchip/gic-v2m: Add support for Amazon Graviton variant of GICv3+GICv2m (Myron Stowe) [1732382] - [pci] PCI: al: Add Amazon Annapurna Labs PCIe host controller driver (Myron Stowe) [1732357] - [netdrv] mlx4: fix spelling mistake "veify" -> "verify" (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Fix memory leaks (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: fix a memory leak bug (Alaa Hleihel) [1724340] - [netdrv] IB/mlx4: Delete unused func arg (Alaa Hleihel) [1724340] - [netdrv] net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query (Alaa Hleihel) [1724340 1724339] - [netdrv] net/mlx4_core: Change the error print to info print (Alaa Hleihel) [1724340 1724339] - [netdrv] mlx4: Convert pv_id_table to XArray (Alaa Hleihel) [1724340 1724339] - [netdrv] IB/mlx4: Fix race condition between catas error reset and aliasguid flows (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix qp mtt size calculation (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix locking in SRIOV mode when switching between events and polling (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: Fix reset flow when in command polling mode (Alaa Hleihel) [1724340 1724338] - [netdrv] mellanox: Switch to bitmap_zalloc() (Alaa Hleihel) [1724340 1724338] - [netdrv] IB/mlx4: Increase the timeout for CM cache (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4_core: A write memory barrier is sufficient in EQ ci update (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: Mark expected switch fall-through (Alaa Hleihel) [1724340 1724338] - [netdrv] net/mlx4: remove unneeded semicolon (Alaa Hleihel) [1724340 1724338] - [parport] parport: parport_serial: Add support for Sunix Multi I/O boards (John Linville) [1663781] - [tty] serial: 8250_pci: Add support for Sunix serial boards (John Linville) [1663781] - [scsi] hpsa: update driver version (Joseph Szczypek) [1761968] - [scsi] scsi: hpsa: add missing hunks in reset-patch (Joseph Szczypek) [1761968] - [netdrv] igc: Clean up unused shadow_vfta pointer (David Arcari) [1721713] - [netdrv] igc: Add Rx checksum support (David Arcari) [1721713] - [netdrv] igc: Add set_rx_mode support (David Arcari) [1721713] - [netdrv] igc: Add SCTP CRC checksumming functionality (David Arcari) [1721713] - [netdrv] igc: Add tx_csum offload functionality (David Arcari) [1721713] - [netdrv] igc: Remove unneeded PCI bus defines (David Arcari) [1721713] - [netdrv] igc: Add NVM checksum validation (David Arcari) [1721713] - [netdrv] igc: Remove useless forward declaration (David Arcari) [1721713] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (David Arcari) [1721713] - [netdrv] igc: Add more SKUs for i225 device (David Arcari) [1721713] - [netdrv] igc: Update the MAC reset flow (David Arcari) [1721713] - [netdrv] igc: Remove the unused field from a device specification structure (David Arcari) [1721713] - [netdrv] igc: Remove the polarity field from a PHY information structure (David Arcari) [1721713] - [netdrv] net: Use skb accessors in network drivers (David Arcari) [1721713] - [netdrv] igc: Prefer pcie_capability_read_word() (David Arcari) [1721713] - [netdrv] igc: Cleanup the redundant code (David Arcari) [1721713] - [netdrv] igc: Add flow control support (David Arcari) [1721713] - [netdrv] igc: Remove the obsolete workaround (David Arcari) [1721713] - [netdrv] igc: Clean up unused pointers (David Arcari) [1721713] - [netdrv] igc: Fix double definitions (David Arcari) [1721713] - [netdrv] igb/igc: warn when fatal read failure happens (David Arcari) [1721713] - [scsi] scsi: qla2xxx: Fix different size DMA Alloc/Unmap (Himanshu Madhani) [1753031] - [scsi] qla2xxx: call dma_free_coherent with correct size in all cases in qla24xx_sp_unmap (Himanshu Madhani) [1753031] - [arm64] crypto: arm64/crc32 - remove PMULL based CRC32 driver (Mark Salter) [1742821] - [arm64] arm64/lib: improve CRC32 performance for deep pipelines (Mark Salter) [1742821] - [arm64] arm64/lib: add accelerated crc32 routines (Mark Salter) [1742821] - [arm64] arm64: cpufeature: add feature for CRC32 instructions (Mark Salter) [1742821] - [lib] lib/crc32: make core crc32() routines weak so they can be overridden (Mark Salter) [1742821] - [arm64] arm64: cpu: Move errata and feature enable callbacks closer to callers (Mark Salter) [1742821] - [arm64] arm64: kill config_sctlr_el1() (Mark Salter) [1742821] - [include] ethtool: Add SFF-8436 and SFF-8636 max EEPROM length definitions (Petr Oros) [1757522] - [net] bridge/mdb: remove wrong use of NLM_F_MULTI (Hangbin Liu) [1756799] - [net] bridge: mcast: don't delete permanent entries when fast leave is enabled (Hangbin Liu) [1756799] - [net] bridge: multicast: use rcu to access port list from br_multicast_start_querier (Hangbin Liu) [1756799] - [net] bridge: Fix ethernet header pointer before check skb forwardable (Hangbin Liu) [1756799] - [net] clear skb->tstamp in bridge forwarding path (Hangbin Liu) [1756799] - [net] bridge: br_arp_nd_proxy: set icmp6_router if neigh has NTF_ROUTER (Hangbin Liu) [1756799] - [net] vlan: Inherit MPLS features from parent device (Hangbin Liu) [1724306] - [netdrv] linux/dim: Fix overflow in dim calculation (Ivan Vecera) [1737807] - [lib] dim: Fix -Wunused-const-variable warnings (Ivan Vecera) [1737807] - [lib] linux/dim: Add completions count to dim_sample (Ivan Vecera) [1737807] - [netdrv] linux/dim: Move implementation to .c files (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally used net_dim members (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename net_dim_sample() to net_dim_update_sample() (Ivan Vecera) [1737807] - [netdrv] linux/dim: Rename externally exposed macros (Ivan Vecera) [1737807] - [include] linux/dim: Remove "net" prefix from internal DIM members (Ivan Vecera) [1737807] - [include] linux/dim: Move logic to dim.h (Ivan Vecera) [1737807] - [tools] selftests: add a test case for cls_lower handle overflow (Ivan Vecera) [1761512] - [net] idr: introduce idr_for_each_entry_continue_ul() (Ivan Vecera) [1761512] - [net] idr: fix overflow case for idr_for_each_entry_ul() (Ivan Vecera) [1761512] - [net] sctp: add chunks to sk_backlog when the newsk sk_socket is not set (Xin Long) [1734271] - [net] netns: enable to dump full nsid translation table (Petr Oros) [1757748] - [net] netns: enable to specify a nsid for a get request (Petr Oros) [1757748] - [net] netns: add support of NETNSA_TARGET_NSID (Petr Oros) [1757748] - [net] netns: introduce 'struct net_fill_args' (Petr Oros) [1757748] - [net] netns: remove net arg from rtnl_net_fill() (Petr Oros) [1757748] - [net] mpls: fix warning with multi-label encap (Hangbin Liu) [1756788] - [net] mpls: Return error for RTA_GATEWAY attribute (Hangbin Liu) [1756788] - [net] macsec: drop skb sk before calling gro_cells_receive (Xin Long) [1745819] - [net] team: add ethtool get_link_ksettings (Hangbin Liu) [1724896] - [net] sched: flower: don't call synchronize_rcu() on mask creation (Ivan Vecera) [1751856] - [net] sched: flower: refactor reoffload for concurrent access (Ivan Vecera) [1751856] - [net] sched: flower: fix filter net reference counting (Ivan Vecera) [1751856] - [net] sched: flower: use correct ht function to prevent duplicates (Ivan Vecera) [1751856] - [net] sched: flower: insert filter to ht before offloading it to hw (Ivan Vecera) [1751856] - [net] sched: ensure tc flower reoffload takes filter ref (Ivan Vecera) [1751856] - [net] sched: flower: set unlocked flag for flower proto ops (Ivan Vecera) [1751856] - [net] sched: flower: track rtnl lock state (Ivan Vecera) [1751856] - [net] sched: flower: protect flower classifier state with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent tcf proto deletion (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent filter insertion in fl_change (Ivan Vecera) [1751856] - [net] sched: flower: protect masks list with spinlock (Ivan Vecera) [1751856] - [net] sched: flower: handle concurrent mask insertion (Ivan Vecera) [1751856] - [net] sched: flower: add reference counter to flower mask (Ivan Vecera) [1751856] - [net] sched: flower: track filter deletion with flag (Ivan Vecera) [1751856] - [net] sched: flower: introduce reference counting for filters (Ivan Vecera) [1751856] - [net] sched: flower: refactor fl_change (Ivan Vecera) [1751856] - [net] sched: flower: don't check for rtnl on head dereference (Ivan Vecera) [1751856] - [kernel] exit from RHEL 8.2 early ystream mode (Phillip Lougher)- [x86] kvm: svm: Remove unneeded WBINVD and DF_FLUSH when starting SEV guests (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Reduce WBINVD/DF_FLUSH invocations (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Guard against DEACTIVATE when performing WBINVD/DF_FLUSH (Janakarajan Natarajan) [1762517] - [x86] kvm: svm: Serialize access to the SEV ASID bitmap (Janakarajan Natarajan) [1762517] - [xen] remove pre-xen3 fallback handlers (Vitaly Kuznetsov) [1759997] - [net] SUNRPC: Count ops completing with tk_status < 0 (Dave Wysochanski) [1636572] - [net] SUNRPC: Use proper printk specifiers for unsigned long long (Dave Wysochanski) [1636572] - [net] SUNRPC: Move call to rpc_count_iostats before rpc_call_done (Dave Wysochanski) [1636572] - [net] SUNRPC: Add tracking of RPC level errors (Dave Wysochanski) [1636572] - [net] SUNRPC: Refactor rpc_restart_call/rpc_restart_call_prepare (Dave Wysochanski) [1636572] - [net] SUNRPC: Fix up task signalling (Dave Wysochanski) [1636572] - [net] SUNRPC: Track writers of the 'channel' file to improve cache_listeners_exist (Dave Wysochanski) [1741333] - [net] sunrpc/cache: handle missing listeners better. (Dave Wysochanski) [1741333] - [pci] PCI/ACPI: Advertise _HPX Type 3 support via _OSC (Myron Stowe) [1712756] - [pci] PCI/ACPI: Implement _HPX Type 3 Setting Record (Myron Stowe) [1712756] - [netdrv] e1000e: Add support for Comet Lake (David Arcari) [1764549] - [netdrv] e1000e: Add support for S0ix (Ken Cox) [1721709] - [netdrv] e1000e: Make speed detection on hotplugging cable more reliable (Ken Cox) [1721709] - [netdrv] ethernet: Delete unnecessary checks before the macro call dev_kfree_skb (Ken Cox) [1721709] - [netdrv] e1000e: add workaround for possible stalled packet (Ken Cox) [1721709] - [netdrv] e1000e: Use dev_get_drvdata where possible (Ken Cox) [1721709] - [netdrv] net: Use skb accessors in network drivers (Ken Cox) [1721709] - [netdrv] e1000e: PCIm function state support (Ken Cox) [1721709] - [netdrv] e1000e: Make watchdog use delayed work (Ken Cox) [1721709] - [netdrv] e1000e: Reduce boot time by tightening sleep ranges (Ken Cox) [1721709] - [netdrv] e1000e: Increase pause and refresh time (Ken Cox) [1721709] - [scsi] scsi: megaraid_sas: Introduce module parameter for default queue depth (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix a compilation warning (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make a bunch of functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some functions static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix panic on loading firmware crashdump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fix spelling mistake "megarid_sas" -> "megaraid_sas" (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.50.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add module parameter for FW Async event logging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable msix_load_balance for Invader and later controllers (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix calculation of target ID (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Make some symbols static (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.710.06.00-rc1 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Introduce various Aero performance modes (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use high IOPS queues based on IO workload (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Set affinity for high IOPS reply queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enable coalescing for high IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for High IOPS queues (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for MPI toolbox commands (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Offload Aero RAID5/6 division calculations to driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: RAID1 PCI bandwidth limit algorithm is applicable for only Ventura (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: megaraid_sas: Add check for count returned by HOST_DEVICE_LIST DCMD (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Handle sequence JBOD map failure at driver level (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Don't send FPIO to RL Bypass queue (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: In probe context, retry IOC INIT once if firmware is in fault (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Release Mutex lock before OCR in case of DCMD timeout (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Call disable_irq from process IRQ poll (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove few debug counters from IO path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add support for Non-secure Aero PCI IDs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add 32 bit atomic descriptor support to AERO adapters (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Use struct_size() helper (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused including (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use DEVICE_ATTR_{RO, RW} (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: use octal permissions instead of constants (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: make max_sectors visible in sys (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'buff_addr' and 'ci_h' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'sge_sz' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variables 'host' and 'wait_time' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: remove set but not used variable 'cur_state' (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Update driver version to 07.708.03.00 (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map through debugfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Fix MSI-X vector print (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add debug prints for device list (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add prints in suspend and resume path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print firmware interrupt status (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print FW fault information (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Export RAID map id through sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Print BAR information from driver (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system registers for debugging (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Dump system interface regs from sysfs (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Add formatting option for megasas_dump (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance internal DCMD timeout prints (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Enhance prints in OCR and TM path (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Load balance completions across all MSI-X (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: IRQ poll to avoid CPU hard lockups (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Block PCI config space access from userspace during OCR (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Rework code around controller reset (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: fw_reset_no_pci_access required for MFI adapters only (Tomas Henzl) [1726251] - [scsi] scsi: megaraid_sas: Remove unused variable target_index (Tomas Henzl) [1726251] - [x86] perf/x86/msr: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/cstate: Add Comet Lake CPU support (Michael Petlan) [1763290] - [x86] perf/x86/intel: Update KBL Package C-state events to also include PC8/PC9/PC10 counters (Michael Petlan) [1763290] - [x86] x86/cpu: Add Comet Lake to the Intel CPU models header (Michael Petlan) [1763290] - [s390] s390/qeth: reject oversized SNMP requests (Philipp Rudo) [1726414] - [s390] s390/qeth: serialize cmd reply with concurrent timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: move cast type selection into fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper for route validation (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate skb RX processing in L3 driver (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate pm code (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline SNMP cmd code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove static cmd buffer infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate MPC cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate vnicc cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate diag cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate various cmds with sub-types (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify parameter for simple assist cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: dynamically allocate simple IPA cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: allocate a single cmd on read channel (Philipp Rudo) [1726414] - [s390] s390/qeth: command-chain the IDX sequence (Philipp Rudo) [1726414] - [s390] s390/qeth: convert RCD code to common IO infrastructure (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for dynamically allocated cmds (Philipp Rudo) [1726414] - [s390] s390/qeth: remove 'channel' parameter from callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert device-specific trace entries (Philipp Rudo) [1726414] - [s390] s390/qeth: remove OSN-specific IO code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove qeth_wait_for_buffer() (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up setting of BLKT defaults (Philipp Rudo) [1726414] - [s390] s390/qeth: restart pending READ cmd from callback (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify DOWN state handling (Philipp Rudo) [1726414] - [s390] s390/qeth: use mm helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: don't mask TX errors on IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error when updating TX queue count (Philipp Rudo) [1726414] - [s390] s390/qeth: fix VLAN attribute in bridge_hostnotify udev event (Philipp Rudo) [1726414] - [s390] s390/qeth: check dst entry before use (Philipp Rudo) [1726414] - [s390] s390/qeth: handle limited IPv4 broadcast in L3 TX path (Philipp Rudo) [1726414] - [s390] s390/qeth: trust non-IP cast type in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: extract helper to determine L2 cast type (Philipp Rudo) [1726414] - [s390] s390/qeth: cache max number of available buffer elements (Philipp Rudo) [1726414] - [s390] s390/qeth: don't clear Output buffers on every queue init (Philipp Rudo) [1726414] - [s390] s390/qeth: use IS_* helpers for checking device type (Philipp Rudo) [1726414] - [s390] s390/qeth: clean up stale buffer state documentation (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RX seqno in skb->cb (Philipp Rudo) [1726414] - [s390] s390: qeth: address type mismatch warning (Philipp Rudo) [1726414] - [s390] s390/qeth: stop/wake TX queues based on their fill level (Philipp Rudo) [1726414] - [s390] s390/qeth: simplify QoS code (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for OSA devices (Philipp Rudo) [1726414] - [s390] s390/qeth: add TX multiqueue support for IQD devices (Philipp Rudo) [1726414] - [s390] s390/qeth: don't keep statistics for tx timeout (Philipp Rudo) [1726414] - [s390] s390/qeth: don't bother updating the last-tx time (Philipp Rudo) [1726414] - [s390] s390/qeth: handle error from qeth_update_from_chp_desc() (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify naming for some QDIO helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: send IDX cmds via qeth_send_control_data() (Philipp Rudo) [1726414] - [s390] s390/qeth: use callback to finalize cmd (Philipp Rudo) [1726414] - [s390] s390/qeth: let qeth_notify_reply() set the notify reason (Philipp Rudo) [1726414] - [s390] s390/qeth: clarify default cmd callback (Philipp Rudo) [1726414] - [s390] s390/qeth: don't poll for cmd IO completion (Philipp Rudo) [1726414] - [s390] s390/qeth: convert IP table spinlock to mutex (Philipp Rudo) [1726414] - [s390] s390/qeth: defer IPv6 address notifier events (Philipp Rudo) [1726414] - [s390] s390/qeth: add wrapper for IP table access (Philipp Rudo) [1726414] - [s390] s390/qeth: remove locking for RX modeset cache (Philipp Rudo) [1726414] - [s390] s390/qeth: defer RX modesetting (Philipp Rudo) [1726414] - [s390] s390/qeth: fix race when initializing the IP address table (Philipp Rudo) [1726414] - [s390] s390/qeth: don't erase configuration while probing (Philipp Rudo) [1726414] - [s390] s390/qeth: drop redundant state checking (Philipp Rudo) [1726414] - [s390] s390/qeth: don't special-case HW trap during suspend (Philipp Rudo) [1726414] - [s390] s390/qeth: remove driver-wide workqueue (Philipp Rudo) [1726414] - [s390] s390/qeth: don't defer close_dev work during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: remove a redundant check for card->dev (Philipp Rudo) [1726414] - [s390] s390/qeth: call dev_close() during recovery (Philipp Rudo) [1726414] - [s390] s390/qeth: unconditionally clear MAC_REGISTERED flag (Philipp Rudo) [1726414] - [s390] s390/qeth: enable/disable the HW trap a little earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: remove RECOVER state (Philipp Rudo) [1726414] - [s390] s390/qeth: split out OSN netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: add support for ETHTOOL_GRINGPARAM (Philipp Rudo) [1726414] - [s390] s390/qeth: overhaul ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: move ethtool code into its own file (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce ethtool statistics (Philipp Rudo) [1726414] - [s390] s390/qeth: use a static Output Queue array (Philipp Rudo) [1726414] - [s390] s390/qeth: allow manual recovery when device is SOFTSETUP (Philipp Rudo) [1726414] - [s390] s390/qeth: convert remaining legacy cmd callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: convert bridgeport callbacks (Philipp Rudo) [1726414] - [s390] s390/qeth: allow cmd callbacks to return errnos (Philipp Rudo) [1726414] - [s390] s390/qeth: limit trace to valid data of command request (Philipp Rudo) [1726414] - [s390] s390/qeth: align csum offload with TSO control logic (Philipp Rudo) [1726414] - [s390] s390/qeth: enable only required csum offload features (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate filling of low-level cmd length fields (Philipp Rudo) [1726414] - [s390] s390/qeth: reduce data length for ARP cache query (Philipp Rudo) [1726414] - [s390] s390/qeth: remove VLAN tracking for L2 devices (Philipp Rudo) [1726414] - [s390] s390/qeth: detach netdevice while card is offline (Philipp Rudo) [1726414] - [s390] s390/qeth: delay netdevice registration (Philipp Rudo) [1726414] - [s390] s390/qeth: remove TX disable from online path (Philipp Rudo) [1726414] - [s390] s390/qeth: register MAC address earlier (Philipp Rudo) [1726414] - [s390] s390/qeth: consolidate open/stop netdev ops (Philipp Rudo) [1726414] - [s390] s390/qeth: remove bogus netif_wake_queue() (Philipp Rudo) [1726414] - [s390] s390/qeth: streamline TX buffer management (Philipp Rudo) [1726414] - [s390] s390/qeth: don't process hsuid in qeth_l3_setup_netdev() (Philipp Rudo) [1726414] - [s390] s390/qeth: remove unused fallback in Layer3's MAC code (Philipp Rudo) [1726414] - [s390] s390/qeth: remove two IPA command helpers (Philipp Rudo) [1726414] - [s390] s390/qeth: replace open-coded cmd setup (Philipp Rudo) [1726414] - [s390] s390/qeth: remove card list (Philipp Rudo) [1726414] - [s390] s390/qeth: unify transmit code (Philipp Rudo) [1726414] - [s390] s390/qeth: handle af_iucv skbs in qeth_l3_fill_header() (Philipp Rudo) [1726414] - [s390] s390/qeth: sanitize ARP requests (Philipp Rudo) [1726414] - [s390] s390/qdio: restrict QAOB usage to IQD unicast queues (Philipp Rudo) [1726414] - [s390] s390/qdio: add sanity checks to the fast-requeue path (Philipp Rudo) [1726414] - [s390] s390/qdio: don't touch the dsci in tiqdio_add_input_queues() (Philipp Rudo) [1726414] - [s390] s390/qdio: (re-)initialize tiqdio list entries (Philipp Rudo) [1726414] - [s390] s390/qdio: optimize state inspection of HW-owned SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: use get_buf_state() in debug_get_buf_state() (Philipp Rudo) [1726414] - [s390] s390/qdio: allow to scan all Output SBALs in one go (Philipp Rudo) [1726414] - [s390] s390/qdio: consolidate index tracking for queue scan (Philipp Rudo) [1726414] - [s390] s390/qdio: limit direct access to first_to_check cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: eliminate queue's last_move cursor (Philipp Rudo) [1726414] - [s390] s390/qdio: simplify SBAL range calculation (Philipp Rudo) [1726414] - [s390] s390/qdio: pass up count of ready-to-process SBALs (Philipp Rudo) [1726414] - [s390] s390/qdio: fix output of DSCI value in debug file (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up qdio_check_outbound_after_thinint() (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up pci_out_supported() (Philipp Rudo) [1726414] - [s390] s390/qdio: make SBAL address array type-safe (Philipp Rudo) [1726414] - [s390] s390/qdio: clean up AOB handling (Philipp Rudo) [1726414] - [s390] s390/ccwgroup: add get_ccwgroupdev_by_busid() (Philipp Rudo) [1726414]- [net] xprtrdma: Remove stale comment (Kamal Heib) [1720891] - [net] xprtrdma: Update comments that reference ib_drain_qp (Kamal Heib) [1720891] - [net] xprtrdma: Remove pr_err() call sites from completion handlers (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate struct rpcrdma_create_data_internal (Kamal Heib) [1720891] - [net] xprtrdma: Aggregate the inline settings in struct rpcrdma_ep (Kamal Heib) [1720891] - [net] xprtrdma: Remove rpcrdma_create_data_internal::rsize and wsize (Kamal Heib) [1720891] - [net] xprtrdma: Eliminate rpcrdma_ia::ri_device (Kamal Heib) [1720891] - [net] xprtrdma: More Send completion batching (Kamal Heib) [1720891] - [net] xprtrdma: Clean up sendctx functions (Kamal Heib) [1720891] - [net] xprtrdma: Trace marshaling failures (Kamal Heib) [1720891] - [net] xprtrdma: Increase maximum number of backchannel requests (Kamal Heib) [1720891] - [net] xprtrdma: Backchannel can use GFP_KERNEL allocations (Kamal Heib) [1720891] - [net] xprtrdma: Clean up regbuf helpers (Kamal Heib) [1720891] - [net] xprtrdma: De-duplicate "allocate new, free old regbuf" (Kamal Heib) [1720891] - [net] xprtrdma: Allocate req's regbufs at xprt create time (Kamal Heib) [1720891] - [net] xprtrdma: rpcrdma_regbuf alignment (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_rep() and rpcrdma_destroy_rep() (Kamal Heib) [1720891] - [net] xprtrdma: Clean up rpcrdma_create_req() (Kamal Heib) [1720891] - [scsi] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 502 (Kamal Heib) [1720891] - [infiniband] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Kamal Heib) [1720891] - [net] xprtrdma: Use struct_size() in kzalloc() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Fix panic when port_data isn't initialized (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Pass udata on uverbs error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/core: Clear out the udata before error unwind (Kamal Heib) [1720891] - [infiniband] RDMA/srp: Rename SRP sysfs name after IB device rename trigger (Kamal Heib) [1720891] - [infiniband] treewide: Add SPDX license identifier - Makefile/Kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/core: Change system parameters callback from dumpit to doit (Kamal Heib) [1720891] - [infiniband] RDMA: Directly cast the sockaddr union to sockaddr (Kamal Heib) [1720891] - [infiniband] RDMA/ipoib: Allow user space differentiate between valid dev_port (Kamal Heib) [1720891] - [infiniband] RDMA/device: Don't fire uevent before device is fully initialized (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Remove hugetlb flag (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use core helpers to get aligned DMA address (Kamal Heib) [1720891] - [infiniband] RDMA/bnxt_re: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use core helpers to get aligned DMA address within a supported page size (Kamal Heib) [1720891] - [infiniband] RDMA/i40iw: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720891] - [infiniband] RDMA/verbs: Add a DMA iterator to return aligned contiguous memory blocks (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Add API to find best driver supported page size in an MR (Kamal Heib) [1720891] - [infiniband] RDMA/core: Allow detaching gid attribute netdevice for RoCE (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Use rdma_read_gid_attr_ndev_rcu to access netdev (Kamal Heib) [1720891] - [infiniband] RDMA: Introduce and use GID attr helper to read RoCE L2 fields (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add vlan enable bit for hip08 (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Update some fields of qp context (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Delete unused variable in hns_roce_v2_modify_qp function (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Add enable judgement for UD vlan (Kamal Heib) [1720891] - [infiniband] IB/mlx5: Consider vlan of lower netdev for macvlan GID entries (Kamal Heib) [1720891] - [infiniband] IB/cm: Reduce dependency on gid attribute ndev check (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Consider skb reserve space based on netdev of GID (Kamal Heib) [1720891] - [infiniband] RDMA: Get rid of iw_cm_verbs (Kamal Heib) [1720891] - [infiniband] RDMA/cxgb4: Use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Do not invoke init_port on compat devices (Kamal Heib) [1720891] - [infiniband] IB/core: Set qp->real_qp before it may be accessed (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize uverbs_attr_bundle ucontext in ib_uverbs_get_context (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Initialize udata struct on destroy flows (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Handle page combining avoidance correctly in ib_umem_add_sg_table() (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce RDMA subsystem ibdev_* print functions (Kamal Heib) [1720891] - [infiniband] uverbs: Convert idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Remove rdma_user_mmap_page (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Use get_zeroed_page() for clock_info (Kamal Heib) [1720891] - [infiniband] RDMA/mlx5: Do not allow the user to write to the clock page (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Consider scope_id while binding to ipv6 ll address (Kamal Heib) [1720891] - [infiniband] IB/core: Allow vlan link local address based RoCE GIDs (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add a netlink command to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce a helper function to change net namespace of rdma device (Kamal Heib) [1720891] - [infiniband] RDMA/core: Avoid freeing netdevs in disable_device() (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove use of idr use pci bdf instead (Kamal Heib) [1720891] - [infiniband] RDMA/drivers: Convert easy drivers to use ib_device_set_netdev() (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Use correct value for SG entries in sg_copy_to_buffer() (Kamal Heib) [1720891] - [infiniband] RDMA: Handle SRQ allocations by IB/core (Kamal Heib) [1720891] - [infiniband] qedr: Convert srqidr to XArray (Kamal Heib) [1720891] - [infiniband] qedr: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Handle AH allocations by IB/core (Kamal Heib) [1720891] - [infiniband] RDMA/hns: Fix bad endianess of port_pd variable (Kamal Heib) [1720891] - [infiniband] RDMA/mad: Reduce MAD scope to mlx5_ib only (Kamal Heib) [1720891] - [infiniband] RDMA/ocrdma: Remove a set-but-not-used variable (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support object allocation in atomic context (Kamal Heib) [1720891] - [infiniband] IB: When attrs.udata/ufile is available use that instead of uobject (Kamal Heib) [1720891] - [infiniband] RDMA/nldev: Return device protocol (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Move debug counters to be under relevant IB device (Kamal Heib) [1720891] - [infiniband] RDMA/umem: Combine contiguous PAGE_SIZE regions in SGEs (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Remove useless zeroing of static global variable (Kamal Heib) [1720891] - [infiniband] RDMA/cma: Set proper port number as index (Kamal Heib) [1720891] - [infiniband] IB: Pass only ib_udata in function prototypes (Kamal Heib) [1720891] - [infiniband] IB: Remove 'uobject->context' dependency in object destroy APIs (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert mmidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert qpidr to XArray (Kamal Heib) [1720891] - [infiniband] cxgb4: Convert cqidr to XArray (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down ib_x destroy path (Kamal Heib) [1720891] - [infiniband] IB: Pass uverbs_attr_bundle down uobject destroy path (Kamal Heib) [1720891] - [infiniband] IB: ucontext should be set properly for all cmd & ioctl paths (Kamal Heib) [1720891] - [infiniband] RDMA/core: Don't compare specific bit after boolean AND (Kamal Heib) [1720891] - [infiniband] RDMA/netlink: Remove unused data structure (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add command to set ib_core device net namspace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add interface to read device namespace sharing mode (Kamal Heib) [1720891] - [infiniband] RDMA/core: Extend ib_device_get_by_index for net namespace (Kamal Heib) [1720891] - [infiniband] RDMA: Check net namespace access for uverbs, umad, cma and nldev (Kamal Heib) [1720891] - [infiniband] RDMA/core: Add module param to disable device sharing among net ns (Kamal Heib) [1720891] - [infiniband] RDMA/core: Support core port attributes in non init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Implement compat device/sysfs tree in net namespace (Kamal Heib) [1720891] - [infiniband] RDMA/core: Restrict sysfs entries view to init_net (Kamal Heib) [1720891] - [infiniband] RDMA/core: Introduce ib_core_device to hold device (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/mthca: Use correct sizing on buffers holding page DMA addresses (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Allow the compiler to verify declaration and definition consistency (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Annotate uverbs_request_next_ptr() return value as a __user pointer (Kamal Heib) [1720891] - [infiniband] RDMA/uverbs: Add a __user annotation to a pointer (Kamal Heib) [1720891] - [infiniband] IB/rxe: Replace av->network_type with skb->protocol (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add SMP details to MAD tracing (Kamal Heib) [1720891] - [infiniband] IB/UMAD: Add umad trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add agent trace points (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add recv path trace point (Kamal Heib) [1720891] - [infiniband] IB/MAD: Add send path trace points (Kamal Heib) [1720891] - [infiniband] RDMA/vmw_pvrdma: Skip zeroing device attrs (Kamal Heib) [1720891] - [infiniband] IB/iser: remove uninitialized variable len (Kamal Heib) [1720891] - [infiniband] IB/core: Ensure an invalidate_range callback on ODP MR (Kamal Heib) [1720891] - [infiniband] RDMA/rxe: Fix slab-out-bounds access which lead to kernel crash later (Kamal Heib) [1720891] - [infiniband] drivers: infiniband: Fix whitespace in kconfig (Kamal Heib) [1720891] - [infiniband] RDMA/nes: remove redundant check on udata (Kamal Heib) [1720891] - [infiniband] cma: Convert portspace IDRs to XArray (Kamal Heib) [1720891] - [infiniband] ucm: Convert ctx_id_table to XArray (Kamal Heib) [1720891] - [infiniband] ib core: Convert query_idr to XArray (Kamal Heib) [1720891] - [infiniband] RDMA/cm: Convert local_id_table to XArray (Kamal Heib) [1720891] - [infiniband] IB/mad: Convert ib_mad_clients to XArray (Kamal Heib) [1720891] - [infiniband] RDMA: Use __packed annotation instead of __attribute__ ((packed)) (Kamal Heib) [1720891] - [char] tpm: Remove a deprecated comments about implicit sysfs locking (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for interrupts (Jerry Snitselaar) [1725580 1742257] - [char] tpm_tis_core: Turn on the TPM before probing IRQ's (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix null pointer dereference on chip register error path (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Actually fail on TPM errors during "get random" (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 399 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Add SPDX license identifier - Makefile/Kconfig (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Open tpm dev in unbuffered mode (Jerry Snitselaar) [1725580 1742257] - [tools] selftests/tpm2: Extend tests to cover partial reads (Jerry Snitselaar) [1725580 1742257] - [tools] selftests: add TPM 2.0 tests (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: fix -Wvarags warning (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: Move trusted.h to include/keys [ver #2] (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: Expose common functionality [ver #2] (Jerry Snitselaar) [1725580 1742257] - [char] tpm: Wrap the buffer from the caller to tpm_buf in tpm_send() (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: correctly initialize digests and fix locking issue (Jerry Snitselaar) [1725580 1742257] - [security] KEYS: trusted: allow module init if TPM is inactive or deactivated (Jerry Snitselaar) [1725580 1742257] - [net] net/smc: make sure EPOLLOUT is raised (Philipp Rudo) [1726415] - [net] net/smc: avoid fallback in case of non-blocking connect (Philipp Rudo) [1726415] - [net] net/smc: do not schedule tx_work in SMC_CLOSED state (Philipp Rudo) [1726415] - [net] net/smc: common release code for non-accepted sockets (Philipp Rudo) [1726415] - [net] net/smc: Fix error path in smc_init (Philipp Rudo) [1726415] - [net] net/smc: hold conns_lock before calling smc_lgr_register_conn() (Philipp Rudo) [1726415] - [dma] dmaengine: ioatdma: support latency tolerance report (LTR) for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: add descriptor pre-fetch support for v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: disable DCA enabling on IOATDMA v3.4 (Jerry Snitselaar) [1661996] - [dma] dmaengine: ioatdma: Add Snow Ridge ioatdma device id (Jerry Snitselaar) [1661996] - [kernel] mutex: Fix up mutex_waiter usage (Waiman Long) [1736609] - [kernel] locking/mutex: Use mutex flags macro instead of hard code (Waiman Long) [1736609] - [kernel] locking/mutex: Make __mutex_owner static to mutex.c (Waiman Long) [1736609] - [kernel] locking/mutex: Test for initialized mutex (Waiman Long) [1736609] - [kernel] kernel/locking/mutex.c: remove caller signal_pending branch predictions (Waiman Long) [1736609] - [kernel] Revert "locking/pvqspinlock: Don't wait if vCPU is preempted" (Waiman Long) [1736609] - [kernel] locking/rwsem: Check for operations on an uninitialized rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make handoff writer optimistically spin on owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Add ACQUIRE comments (Waiman Long) [1736609] - [tty] tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop (Waiman Long) [1736609] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1736609] - [kernel] locking/rwsem: Don't call owner_on_cpu() on read-owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Guard against making count negative (Waiman Long) [1736609] - [kernel] locking/rwsem: Adaptive disabling of reader optimistic spinning (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable time-based spinning on reader-owned rwsem (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem->owner an atomic_long_t (Waiman Long) [1736609] - [kernel] locking/rwsem: Enable readers spinning on writer (Waiman Long) [1736609] - [kernel] locking/rwsem: Clarify usage of owner's nonspinaable bit (Waiman Long) [1736609] - [kernel] locking/rwsem: Wake up almost all readers in wait queue (Waiman Long) [1736609] - [kernel] locking/rwsem: More optimal RT task handling of null owner (Waiman Long) [1736609] - [kernel] locking/rwsem: Always release wait_lock before waking up tasks (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement lock handoff to prevent lock starvation (Waiman Long) [1736609] - [kernel] locking/rwsem: Make rwsem_spin_on_owner() return owner state (Waiman Long) [1736609] - [kernel] locking/rwsem: Code cleanup after files merging (Waiman Long) [1736609] - [kernel] locking/rwsem: Add rwsem_init.c to keep __init_rwsem() kABI (Waiman Long) [1736609] - [kernel] locking/rwsem: Merge rwsem.h and rwsem-xadd.c into rwsem.c (Waiman Long) [1736609] - [kernel] locking/rwsem: Implement a new locking scheme (Waiman Long) [1736609] - [kernel] locking/rwsem: Remove rwsem_wake() wakeup optimization (Waiman Long) [1736609] - [kernel] locking/rwsem: Make owner available even if !CONFIG_RWSEM_SPIN_ON_OWNER (Waiman Long) [1736609] - [kernel] locking/lock_events: Use raw_cpu_{add, inc}() for stats (Waiman Long) [1736609] - [kernel] locking/lock_events: Use this_cpu_add() when necessary (Waiman Long) [1736609] - [kernel] locking/rwsem: Revert "[kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath ..." (Waiman Long) [1736609] - [block] block: don't release queue's sysfs lock during switching elevator (Ming Lei) [1760151] - [block] blk-mq: move lockdep_assert_held() into elevator_exit (Ming Lei) [1760151] - [block] block: fix race between switching elevator and removing queues (Ming Lei) [1760151] - [md] raid5: use bio_end_sector in r5_next_bio (Nigel Croxon) [1754949] - [md] raid5: remove STRIPE_OPS_REQ_PENDING (Nigel Croxon) [1754949] - [md] md: add feature flag MD_FEATURE_RAID0_LAYOUT (Nigel Croxon) [1754949] - [md] md/raid0: avoid RAID0 data corruption due to layout confusion. (Nigel Croxon) [1754949] - [md] raid5: don't set STRIPE_HANDLE to stripe which is in batch list (Nigel Croxon) [1754949] - [md] raid5: don't increment read_errors on EILSEQ return (Nigel Croxon) [1754949] - [md] md/raid5: use bio_end_sector to calculate last_sector (Nigel Croxon) [1730670] - [md] md/raid1: fail run raid1 array when active disk less than one (Nigel Croxon) [1730670] - [md] md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone (Nigel Croxon) [1730670] - [md] raid5 improve too many read errors msg by adding limits (Nigel Croxon) [1730670] - [md] md: don't report active array_state until after revalidate_disk() completes. (Nigel Croxon) [1730670] - [md] md: only call set_in_sync() when it is expected to succeed. (Nigel Croxon) [1730670] - [md] raid1: factor out a common routine to handle the completion of sync write (Nigel Croxon) [1730670] - [md] md: don't call spare_active in md_reap_sync_thread if all member devices can't work (Nigel Croxon) [1730670] - [md] md: don't set In_sync if array is frozen (Nigel Croxon) [1730670] - [md] md: allow last device to be forcibly removed from RAID1/RAID10. (Nigel Croxon) [1730670] - [md] md/raid10: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid1: end bio when the device faulty (Nigel Croxon) [1730670] - [md] md/raid6: Set R5_ReadError when there is read failure on parity disk (Nigel Croxon) [1730670] - [md] raid1: use an int as the return value of raise_barrier() (Nigel Croxon) [1730670] - [md] md/raid1: Fix a warning message in remove_wb() (Nigel Croxon) [1730670] - [crypto] crypto: ccp - Fix SEV_VERSION_GREATER_OR_EQUAL (Gary Hook) [1754634] - [crypto] crypto: ccp - Do not free psp_master when PLATFORM_INIT fails (Gary Hook) [1754634] - [crypto] crypto: ccp - Use kmemdup in ccp_copy_and_save_keypart() (Gary Hook) [1754634] - [crypto] crypto: ccp - introduce SEV_GET_ID2 command (Gary Hook) [1754634] - [netdrv] e1000e: start network tx queue only when link is up (Oleksandr Natalenko) [1747869] - [netdrv] Revert "e1000e: fix cyclic resets at link up with active tx" (Oleksandr Natalenko) [1747869] - [mm] mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: fix race condition in zs_destroy_pool (Rafael Aquini) [1735181] - [mm] mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely (Rafael Aquini) [1735181] - [mm] mm, page_owner: handle THP splits correctly (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix hugetlb page migration/fault race causing SIGBUS (Rafael Aquini) [1735181] - [mm] mm/usercopy: use memory range to be accessed for wraparound check (Rafael Aquini) [1735181] - [mm] mm/memcontrol.c: fix use after free in mem_cgroup_iter() (Rafael Aquini) [1735181] - [mm] mm/hmm: fix bad subpage pointer in try_to_unmap_one (Rafael Aquini) [1735181] - [mm] mm: vmscan: check if mem cgroup is disabled or not before calling memcg slab shrinker (Rafael Aquini) [1735181] - [mm] mm: revert "kmemleak: allow to coexist with fault injection" (Rafael Aquini) [1735181] - [mm] mm/vmalloc: sync unmappings in __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: add priority threshold to __purge_vmap_area_lazy() (Rafael Aquini) [1735181] - [mm] mm/cma.c: fail if fixed declaration can't be honored (Rafael Aquini) [1735181] - [mm] mm/mmu_notifier: use hlist_add_head_rcu() (Rafael Aquini) [1735181] - [mm] mm/mincore.c: fix race between swapoff and mincore (Rafael Aquini) [1735181] - [mm] mm, swap: fix race between swapoff and some swap operations (Rafael Aquini) [1735181] - [mm] mm/failslab.c: by default, do not fail allocations with direct reclaim only (Rafael Aquini) [1735181] - [mm] mm: vmscan: scan anonymous pages on file refaults (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: prevent useless kswapd loops (Rafael Aquini) [1735181] - [mm] mm/page_idle.c: fix oops because end_pfn is larger than max_pfn (Rafael Aquini) [1760459 1735181] - [mm] mm/mempolicy.c: fix an incorrect rebind node in mpol_rebind_nodemask (Rafael Aquini) [1735181] - [mm] mm/vmscan.c: fix trying to reclaim unevictable LRU page (Rafael Aquini) [1735181] - [mm] mm/mlock.c: change count_mm_mlocked_page_nr return type (Rafael Aquini) [1735181] - [mm] mm/mlock.c: mlockall error for flag MCL_ONFAULT (Rafael Aquini) [1735181] - [mm] mm/list_lru.c: fix memory leak in __memcg_init_list_lru_node (Rafael Aquini) [1735181] - [mm] memcg: make it work on sparse non-0-node systems (Rafael Aquini) [1735181] - [mm] prctl_set_mm: downgrade mmap_sem to read lock (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page when mapping->host is not set (Rafael Aquini) [1735181] - [mm] mm/debug.c: fix __dump_page() for poisoned pages (Rafael Aquini) [1735181] - [mm] mm: update references to page _refcount (Rafael Aquini) [1735181] - [mm] mm: lower the printk loglevel for __dump_page messages (Rafael Aquini) [1735181] - [mm] mm: print more information about mapping in __dump_page (Rafael Aquini) [1735181] - [mm] hugetlb: use same fault hash key for shared and private mappings (Rafael Aquini) [1735181] - [mm] mm/hugetlb.c: don't put_page in lock of hugetlb_lock (Rafael Aquini) [1735181] - [mm] mm: fix inactive list balancing between NUMA nodes and cgroups (Rafael Aquini) [1735181] - [mm] mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate (Rafael Aquini) [1735181] - [mm] mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified (Rafael Aquini) [1734286 1735181] - [mm] mm/hotplug: fix offline undo_isolate_page_range() (Rafael Aquini) [1735181] - [mm] mm/sparse: fix a bad comparison (Rafael Aquini) [1735181] - [mm] mm, swap: bounds check swap_info array accesses to avoid NULL derefs (Rafael Aquini) [1735181] - [mm] mm/vmalloc.c: don't dereference possible NULL pointer in __vunmap() (Rafael Aquini) [1735181] - [mm] mm: hwpoison: fix thp split handing in soft_offline_in_use_page() (Rafael Aquini) [1735181] - [mm] hugetlbfs: fix races and page leaks during migration (Rafael Aquini) [1735181] - [mm] tmpfs: fix uninitialized return value in shmem_link (Rafael Aquini) [1735181] - [mm] tmpfs: fix link accounting when a tmpfile is linked in (Rafael Aquini) [1735181] - [mm] mm: migrate: don't rely on __PageMovable() of newpage after unlocking it (Rafael Aquini) [1735181] - [mm] oom, oom_reaper: do not enqueue same task twice (Rafael Aquini) [1735181] - [mm] mm: page_mapped: don't assume compound page is huge or THP (Rafael Aquini) [1735181] - [mm] mm, memcg: fix reclaim deadlock with writeback (Rafael Aquini) [1735181] - [mm] mm, swap: fix swapoff with KSM pages (Rafael Aquini) [1735181] - [mm] mm/huge_memory: fix lockdep complaint on 32-bit i_size_read() (Rafael Aquini) [1735181] - [mm] mm/huge_memory: splitting set mapping+index before unfreeze (Rafael Aquini) [1735181] - [mm] mm/huge_memory: rename freeze_page() to unmap_page() (Rafael Aquini) [1735181] - [mm] mm/page_alloc.c: fix calculation of pgdat->nr_zones (Rafael Aquini) [1735181] - [mm] mm: use swp_offset as key in shmem_replace_page() (Rafael Aquini) [1735181] - [mm] mm: cleancache: fix corruption on missed inode invalidation (Rafael Aquini) [1735181] - [mm] mm/vmstat.c: fix NUMA statistics updates (Rafael Aquini) [1735181] - [mm] mm, swap: make CONFIG_THP_SWAP depend on CONFIG_SWAP (Rafael Aquini) [1735181] - [mm] ARM: 8820/1: mm: Stop printing the virtual memory layout (Rafael Aquini) [1655192] - [netdrv] net: dsa: bcm_sf2: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: systemport: Remove print of base address (Rafael Aquini) [1655192] - [netdrv] net: phy: mdio-bcm-unimac: Remove print of base address (Rafael Aquini) [1655192] - [x86] x86/mm: Don't leak kernel addresses (Rafael Aquini) [1655192] - [x86] x86/realmode: Make set_real_mode_mem() static inline (Rafael Aquini) [1655192] - [x86] x86/realmode: Don't leak the trampoline kernel address (Rafael Aquini) [1655192] - [arm64] arm64/vdso: don't leak kernel addresses (Rafael Aquini) [1655192] - [powerpc] powerpc/traps: Fix the message printed when stack overflows (Rafael Aquini) [1655192] - [kernel] kdb: print real address of pointers instead of hashed addresses (Rafael Aquini) [1655192] - [kernel] kdb: use correct pointer when 'btc' calls 'btt' (Rafael Aquini) [1655192]- [fs] signal: Allow cifs and drbd to receive their terminating signals (Leif Sahlberg) [1757670] - [fs] smb3: fix unmount hang in open_shroot (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: replace various strncpy with strscpy and similar (Leif Sahlberg) [1757670] - [fs] cifs: Use kzfree() to zero out the password (Leif Sahlberg) [1757670] - [fs] cifs: set domainName when a domain-key is used in multiuser (Leif Sahlberg) [1757670] - [fs] SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL (Leif Sahlberg) [1757670] - [fs] smb3: send CAP_DFS capability during session setup (Leif Sahlberg) [1757670] - [fs] SMB3: Fix potential memory leak when processing compound chain (Leif Sahlberg) [1757670] - [fs] SMB3: Fix deadlock in validate negotiate hits reconnect (Leif Sahlberg) [1757670] - [fs] cifs: fix rmmod regression in cifs.ko caused by force_sig changes (Leif Sahlberg) [1757670] - [fs] cifs: update internal module number (Leif Sahlberg) [1757670] - [fs] cifs: flush before set-info if we have writeable handles (Leif Sahlberg) [1757670] - [fs] smb3: optimize open to not send query file internal info (Leif Sahlberg) [1757670] - [fs] CIFS: fix deadlock in cached root handling (Leif Sahlberg) [1757670] - [fs] cifs: fix crash in cifs_dfs_do_automount (Leif Sahlberg) [1757670] - [fs] cifs: fix parsing of symbolic link error response (Leif Sahlberg) [1757670] - [fs] cifs: refactor and clean up arguments in the reparse point parsing (Leif Sahlberg) [1757670] - [fs] SMB3: query inode number on open via create context (Leif Sahlberg) [1757670] - [fs] smb3: Send netname context during negotiate protocol (Leif Sahlberg) [1757670] - [fs] smb3: do not send compression info by default (Leif Sahlberg) [1757670] - [fs] smb3: add new mount option to retrieve mode from special ACE (Leif Sahlberg) [1757670] - [fs] smb3: Allow query of symlinks stored as reparse points (Leif Sahlberg) [1757670] - [fs] cifs: Fix a race condition with cifs_echo_request (Leif Sahlberg) [1757670] - [fs] cifs: always add credits back for unsolicited PDUs (Leif Sahlberg) [1757670] - [fs] fs: cifs: cifsssmb: Change return type of convert_ace_to_cifs_ace (Leif Sahlberg) [1757670] - [fs] add some missing definitions (Leif Sahlberg) [1757670] - [fs] cifs: fix typo in debug message with struct field ia_valid (Leif Sahlberg) [1757670] - [fs] smb3: minor cleanup of compound_send_recv (Leif Sahlberg) [1757670] - [fs] CIFS: Fix module dependency (Leif Sahlberg) [1757670] - [fs] cifs: simplify code by removing CONFIG_CIFS_ACL ifdef (Leif Sahlberg) [1757670] - [fs] cifs: Fix check for matching with existing mount (Leif Sahlberg) [1757670] - [fs] cifs: Properly handle auto disabling of serverino option (Leif Sahlberg) [1757670] - [fs] smb3: if max_credits is specified then display it in /proc/mounts (Leif Sahlberg) [1757670] - [fs] Fix match_server check to allow for auto dialect negotiate (Leif Sahlberg) [1757670] - [fs] cifs: add missing GCM module dependency (Leif Sahlberg) [1757670] - [fs] SMB3.1.1: Add GCM crypto to the encrypt and decrypt functions (Leif Sahlberg) [1757670] - [fs] SMB3: Add SMB3.1.1 GCM to negotiated crypto algorigthms (Leif Sahlberg) [1757670] - [fs] fs: cifs: Drop unlikely before IS_ERR(_OR_NULL) (Leif Sahlberg) [1757670] - [fs] cifs: Use kmemdup in SMB2_ioctl_init() (Leif Sahlberg) [1757670] - [fs] SMB3: retry on STATUS_INSUFFICIENT_RESOURCES instead of failing write (Leif Sahlberg) [1757670] - [fs] cifs: fix panic in smb2_reconnect (Leif Sahlberg) [1757670] - [fs] CIFS: cifs_read_allocate_pages: don't iterate through whole page array on ENOMEM (Leif Sahlberg) [1757670] - [fs] dfs_cache: fix a wrong use of kfree in flush_cache_ent() (Leif Sahlberg) [1757670] - [fs] fs/cifs/smb2pdu.c: fix buffer free in SMB2_ioctl_free (Leif Sahlberg) [1757670] - [fs] cifs: fix memory leak of pneg_inbuf on -EOPNOTSUPP ioctl case (Leif Sahlberg) [1757670] - [fs] cifs: add support for SEEK_DATA and SEEK_HOLE (Leif Sahlberg) [1757670] - [fs] cifs: Allocate memory for all iovs in smb2_ioctl (Leif Sahlberg) [1757670] - [fs] cifs: Don't match port on SMBDirect transport (Leif Sahlberg) [1757670] - [fs] cifs:smbd Use the correct DMA direction when sending data (Leif Sahlberg) [1757670] - [fs] cifs:smbd When reconnecting to server, call smbd_destroy() after all MIDs have been called (Leif Sahlberg) [1757670] - [fs] smb3: trivial cleanup to smb2ops.c (Leif Sahlberg) [1757670] - [fs] cifs: cleanup smb2ops.c and normalize strings (Leif Sahlberg) [1757670] - [fs] smb3: display session id in debug data (Leif Sahlberg) [1757670] - [fs] cifs: update module internal version number (Leif Sahlberg) [1757670] - [fs] cifs: fix crash querying symlinks stored as reparse-points (Leif Sahlberg) [1757670] - [fs] SMB3: Clean up query symlink when reparse point (Leif Sahlberg) [1757670] - [fs] cifs: fix strcat buffer overflow and reduce raciness in smb21_set_oplock_level() (Leif Sahlberg) [1757670] - [fs] Negotiate and save preferred compression algorithms (Leif Sahlberg) [1757670] - [fs] cifs: rename and clarify CIFS_ASYNC_OP and CIFS_NO_RESP (Leif Sahlberg) [1757670] - [fs] smb3: Add protocol structs for change notify support (Leif Sahlberg) [1757670] - [fs] cifs: fix smb3_zero_range for Azure (Leif Sahlberg) [1757670] - [fs] cifs: zero-range does not require the file is sparse (Leif Sahlberg) [1757670] - [fs] Add new flag on SMB3.1.1 read (Leif Sahlberg) [1757670] - [fs] cifs: add fiemap support (Leif Sahlberg) [1757670] - [fs] SMB3: Add defines for new negotiate contexts (Leif Sahlberg) [1757670] - [fs] cifs: fix bi-directional fsctl passthrough calls (Leif Sahlberg) [1757670] - [fs] cifs: smbd: take an array of reqeusts when sending upper layer data (Leif Sahlberg) [1757670] - [fs] SMB3: Add handling for different FSCTL access flags (Leif Sahlberg) [1757670] - [fs] cifs: Add support for FSCTL passthrough that write data to the server (Leif Sahlberg) [1757670] - [fs] cifs: remove superfluous inode_lock in cifs_{strict_}fsync (Leif Sahlberg) [1757670] - [fs] cifs: Call MID callback before destroying transport (Leif Sahlberg) [1757670] - [fs] smbd: Make upper layer decide when to destroy the transport (Leif Sahlberg) [1757670] - [fs] SMB3: update comment to clarify enumerating snapshots (Leif Sahlberg) [1757670] - [fs] CIFS: check CIFS_MOUNT_NO_DFS when trying to reuse existing sb (Leif Sahlberg) [1757670] - [fs] CIFS: Show locallease in /proc/mounts for cifs shares mounted with locallease feature. (Leif Sahlberg) [1757670] - [fs] cifs: Fix DFS cache refresher for DFS links (Leif Sahlberg) [1757670] - [fs] cifs: don't use __constant_cpu_to_le32() (Leif Sahlberg) [1757670] - [fs] SMB3: Track total time spent on roundtrips for each SMB3 command (Leif Sahlberg) [1757670] - [fs] cifs: use the right include for signal_pending() (Leif Sahlberg) [1757670] - [fs] CIFS: Mask off signals when sending SMB packets (Leif Sahlberg) [1757670] - [infiniband] RDMA/umem: Revert broken 'off by one' fix (Kamal Heib) [1720888] - [infiniband] RDMA/umem: minor bug fix in error handling path (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Don't do double free of allocated PD (Kamal Heib) [1720888] - [infiniband] RDMA: Handle ucontext allocations by IB/core (Kamal Heib) [1720888] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Fix a WARN() message (Kamal Heib) [1720888] - [infiniband] RDMA/uverbs: Store PR pointer before it is overwritten (Kamal Heib) [1720888] - [infiniband] RDMA/core: Cosmetic change - move member initialization to correct block (Kamal Heib) [1720888] - [infiniband] rdma_rxe: Use netlink messages to add/delete links (Kamal Heib) [1720888] - [infiniband] RDMA/core: Add RDMA_NLDEV_CMD_NEWLINK/DELLINK support (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Close a race after ib_register_device (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Add ib_device_get_by_name() and use it in rxe (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use driver_unregister and new unregistration API (Kamal Heib) [1720888] - [infiniband] RDMA/device: Provide APIs from the core code to help unregistration (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Use ib_device_get_by_netdev() instead of open coding (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_get_by_netdev() (Kamal Heib) [1720888] - [infiniband] RDMA/device: Add ib_device_set_netdev() as an alternative to get_netdev (Kamal Heib) [1720888] - [infiniband] RDMA/cache: Move the cache per-port data into the main ib_port_data (Kamal Heib) [1720888] - [infiniband] RDMA/device: Consolidate ib_device per_port data into one place (Kamal Heib) [1720888] - [infiniband] RDMA: Add and use rdma_for_each_port (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Don't expose number of not-visible entries (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Connect QP number to .doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Provide parent IDs for PD, MR and QP objects (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Share with user-space object IDs (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Prepare restrack_root to addition of extra fields per-type (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Hide restrack DB from IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Reduce scope of synchronization lock while updating DB (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Add resource tracker doit callback (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Translate from ID to restrack object (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Convert internal DB from hash to XArray (Kamal Heib) [1720888] - [infiniband] RDMA/core: Move device addition deletion to device.c (Kamal Heib) [1720888] - [infiniband] RDMA/core: Introduce and use ib_setup_port_attrs() (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use simpler device_del() instead of device_unregister() (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Remove useless usecnt variable and redundant memset (Kamal Heib) [1720888] - [infiniband] IB/{hw, sw}: Remove 'uobject->context' dependency in object creation APIs (Kamal Heib) [1720888] - [infiniband] RDMA/qedr: remove set but not used variable 'ib_ctx' (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Kamal Heib) [1720888] - [infiniband] RDMA/mthca: Clear QP objects during their allocation (Kamal Heib) [1720888] - [include] IB/verbs: Add helper function rdma_udata_to_drv_context (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Add ib_ucontext to uverbs_attr_bundle sent from ioctl and cmd flows (Kamal Heib) [1720888] - [infiniband] IB/ipoib: Use __func__ instead of function's name (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: Remove set but not used variable 'msg_seq' (Kamal Heib) [1720888] - [infiniband] RDMA/nes: Use for_each_sg_dma_page iterator for umem SGL (Kamal Heib) [1720888] - [net] xprtrdma: Check inline size before providing a Write chunk (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/vmw_pvrdma: Use for_each_sg_dma_page iterator on umem SGL (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Re-organize device.c locking (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the client_data (Kamal Heib) [1720888] - [infiniband] RDMA/devices: Use xarray to store the clients (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use an ida instead of a free page in alloc_name (Kamal Heib) [1720888] - [infiniband] RDMA/device: Get rid of reg_state (Kamal Heib) [1720888] - [infiniband] RDMA/device: Check that the rename is nop under the lock (Kamal Heib) [1720888] - [infiniband] RDMA: Handle PD allocations by IB/core (Kamal Heib) [1720888] - [infiniband] RDMA/hns: fix spelling mistake "reseved" -> "reserved" (Kamal Heib) [1720888] - [infiniband] RDMA/core: Share driver structure size with core (Kamal Heib) [1720888] - [infiniband] IB/cma: Define option to set ack timeout and pack tos_set (Kamal Heib) [1720888] - [infiniband] drivers/IB,core: reduce scope of mmap_sem (Kamal Heib) [1720888] - [infiniband] drivers/IB,usnic: reduce scope of mmap_sem (Kamal Heib) [1720888] - [net] svcrdma: Remove syslog warnings in work completion handlers (Kamal Heib) [1720888] - [net] svcrdma: Squelch compiler warning when SUNRPC_DEBUG is disabled (Kamal Heib) [1720888] - [net] svcrdma: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] RDMA/iwpm: move kdoc comments to functions (Kamal Heib) [1720888] - [infiniband] RDMA/cma: Remove CM_ID statistics provided by rdma-cm module (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Rework I/O context allocation (Kamal Heib) [1720888] - [infiniband] scsi: RDMA/srpt: Fix handling of command / TMF submission failure (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: Support no port mapping requirements (Kamal Heib) [1720888] - [infiniband] RDMA/IWPM: refactor the IWPM message attribute names (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Improve loopback marking (Kamal Heib) [1720888] - [infiniband] RDMA/rxe: Move rxe_init_av() to rxe_av.c (Kamal Heib) [1720888] - [infiniband] IB/core: Remove ib_sg_dma_address() and ib_sg_dma_len() (Kamal Heib) [1720888] - [infiniband] IB/uverbs: Expose XRC ODP device capabilities (Kamal Heib) [1720888] - [include] IB/core: Allocate a bit for SRQ ODP support (Kamal Heib) [1720888] - [infiniband] RDMA/core: Use the ops infrastructure to keep all callbacks in one place (Kamal Heib) [1720888] - [infiniband] RDMA/cxgb4: Sort SRQ ops alphabetically (Kamal Heib) [1720888] - [infiniband] RDMA/restrack: Refactor user/kernel restrack additions (Kamal Heib) [1720888] - [infiniband] RDMA/core: Simplify restrack interface (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Prepare CAP_NET_ADMIN checks for .doit callbacks (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Factor out the PID namespace check (Kamal Heib) [1720888] - [infiniband] RDMA/nldev: Dynamically generate restrack dumpit callbacks (Kamal Heib) [1720888] - [infiniband] IB/usnic: Remove stub functions (Kamal Heib) [1720888] - [infiniband] RDMA: Add indication for in kernel API support to IB device (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce async DEVX obj query API (Kamal Heib) [1720888] - [infiniband] IB/mlx5: Introduce MLX5_IB_OBJECT_DEVX_ASYNC_CMD_FD (Kamal Heib) [1720888] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Kamal Heib) [1720888] - [infiniband] infiniband: remove unneeded header search paths (Kamal Heib) [1720888] - [infiniband] infiniband: ipoib: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: usnic: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] infiniband: ocrdma: no need to check return value of debugfs_create functions (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Use PCI-ID as an identification in debugfs (Kamal Heib) [1720888] - [infiniband] IB/umad: Do not check status of nonseekable_open() (Kamal Heib) [1720888] - [infiniband] IB/umad: Avoid additional device reference during open()/close() (Kamal Heib) [1720888] - [infiniband] IB/rxe: Remove unnecessary rxe variable (Kamal Heib) [1720888] - [infiniband] IB/core: Simplify rdma cgroup registration (Kamal Heib) [1720888] - [infiniband] RDMA/device: Use __ib_device_get_by_name() in ib_device_rename() (Kamal Heib) [1720888] - [infiniband] RDMA: Rename port_callback to init_port (Kamal Heib) [1720888] - [infiniband] RDMA: Clear CTX objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA: Clear PD objects during their allocation (Kamal Heib) [1720888] - [infiniband] RDMA/ocrdma: Fix out of bounds index check in query pkey (Kamal Heib) [1720888] - [infiniband] IB/{core, hw}: Have ib_umem_get extract the ib_ucontext from ib_udata (Kamal Heib) [1720888] - [infiniband] IB/{core, uverbs}: Move ib_umem_xxx functions from ib_core to ib_uverbs (Kamal Heib) [1720888] - [infiniband] RDMA/core: Don't depend device ODP capabilities on kconfig option (Kamal Heib) [1720888] - [infiniband] IB/srp: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/core: Use struct_size() in kzalloc() (Kamal Heib) [1720888] - [infiniband] IB/usnic: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [infiniband] IB/cm: Use struct_size() in kmalloc() (Kamal Heib) [1720888] - [mm] mm: introduce put_user_page*(), placeholder versions (Rafael Aquini) [1746371] - [mm] mm/gup: add FOLL_LONGTERM capability to GUP fast (Rafael Aquini) [1746371] - [mm] mm/gup: change GUP fast to use flags rather than a write 'bool' (Rafael Aquini) [1746371] - [mm] mm/gup: change write parameter to flags in fast walk (Rafael Aquini) [1746371] - [mm] mm/gup: replace get_user_pages_longterm() with FOLL_LONGTERM (Rafael Aquini) [1746371] - [s390] s390/mm: fix pxd_bad with folded page tables (Rafael Aquini) [1746371] - [s390] s390/mm: fix dump_pagetables top level page table walking (Rafael Aquini) [1746371] - [s390] s390/mm: convert to the generic get_user_pages_fast code (Rafael Aquini) [1746371] - [s390] s390/mm: make the pxd_offset functions more robust (Rafael Aquini) [1746371] - [mm] mm/gup: fix gup_pmd_range() for dax (Rafael Aquini) [1746371] - [mm] mm/gup: remove the 'write' parameter from gup_fast_permitted() (Rafael Aquini) [1746371] - [mm] mm/gup: fix follow_page_mask() kerneldoc comment (Rafael Aquini) [1746371] - [mm] mm/gup: fix __get_user_pages_fast() comment (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: prevent integer overflow in ioctl (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: add additional pinning methods (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: time put_page() (Rafael Aquini) [1746371] - [mm] mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl (Rafael Aquini) [1746371] - [mm] mm: remove caller signal_pending branch predictions (Rafael Aquini) [1746371] - [mm] mm: remove unnecessary local variable addr in __get_user_pages_fast() (Rafael Aquini) [1746371] - [mm] mm: change return type int to vm_fault_t for fault handlers (Rafael Aquini) [1746371] - [mm] mm: make mm->pinned_vm an atomic64 counter (Rafael Aquini) [1746371]- [kernel] sched/core: Schedule new worker even if PI-blocked (Waiman Long) [1758629] - [char] random: add a spinlock_t to struct batched_entropy (Waiman Long) [1758629] - [crypto] crypto: chacha20 - Fix chacha20_block() keystream alignment (again) (Waiman Long) [1758629] - [fs] locking/percpu-rwsem: Remove preempt_disable variants (Waiman Long) [1758629] - [x86] x86/tsc: Add option to disable tsc clocksource watchdog (Waiman Long) [1758629] - [x86] x86/irq: Handle spurious interrupt after shutdown gracefully (Waiman Long) [1758629] - [x86] x86/ioapic: Implement irq_get_irqchip_state() callback (Waiman Long) [1758629] - [kernel] genirq: Add optional hardware synchronization for shutdown (Waiman Long) [1758629] - [kernel] genirq: Fix misleading synchronize_irq() documentation (Waiman Long) [1758629] - [kernel] genirq: Delay deactivation in free_irq() (Waiman Long) [1758629] - [kernel] genirq: Remove redundant NULL pointer check in __free_irq() (Waiman Long) [1758629] - [kernel] genirq: Synchronize only with single thread on free_irq() (Waiman Long) [1758629] - [kernel] genirq: Update code comments wrt recycled thread_mask (Waiman Long) [1758629] - [usb] usb: core: remove flags variable in __usb_hcd_giveback_urb() (Waiman Long) [1758629] - [usb] usb: core: remove local_irq_save() around ->complete() handler (Waiman Long) [1758629] - [media] media: tm6000: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [media] media: em28xx-audio: use irqsave() in USB's complete callback (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize __cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Factor common code between cpa_flush_*() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_array() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move CLFLUSH test into cpa_flush_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_kernel_range() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Unconditionally avoid WBINDV when we can (Waiman Long) [1758629] - [x86] x86/mm/cpa: Move flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Use flush_tlb_all() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid the 4k pages check completely (Waiman Long) [1758629] - [x86] x86/mm/cpa: Do the range check early (Waiman Long) [1758629] - [x86] x86/mm/cpa: Optimize same protection check (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add sanity check for existing mappings (Waiman Long) [1758629] - [x86] x86/mm/cpa: Avoid static protection checks on unmap (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add large page preservation statistics (Waiman Long) [1758629] - [x86] x86/mm/cpa: Add debug mechanism (Waiman Long) [1758629] - [x86] x86/mm/cpa: Allow range check for static protections (Waiman Long) [1758629] - [x86] x86/mm/cpa: Rework static_protections() (Waiman Long) [1758629] - [x86] x86/mm/cpa: Split, rename and clean up try_preserve_large_page() (Waiman Long) [1758629] - [x86] x86/mm/init32: Mark text and rodata RO in one go (Waiman Long) [1758629] - [mm] mm/kasan/quarantine.c: make quarantine_lock a raw_spinlock_t (Waiman Long) [1758629] - [mm] mm/list_lru.c: fold __list_lru_count_one() into its caller (Waiman Long) [1758629] - [mm] mm: workingset: make shadow_lru_isolate() use locking suffix (Waiman Long) [1758629] - [mm] mm: workingset: remove local_irq_disable() from count_shadow_nodes() (Waiman Long) [1758629] - [iommu] iommu/amd: Remove redundant WARN_ON() (Waiman Long) [1758629] - [mm] mm/list_lru: introduce list_lru_shrink_walk_irq() (Waiman Long) [1758629] - [mm] mm/list_lru.c: pass struct list_lru_node* as an argument to __list_lru_walk_one() (Waiman Long) [1758629] - [mm] mm/list_lru.c: move locking from __list_lru_walk_one() to its caller (Waiman Long) [1758629] - [mm] mm/list_lru.c: use list_lru_walk_one() in list_lru_walk_node() (Waiman Long) [1758629] - [kernel] userns: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [kernel] userns: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [kernel] bdi: use irqsave variant of refcount_dec_and_lock() (Waiman Long) [1758629] - [mm] bdi: use refcount_t for reference counting instead atomic_t (Waiman Long) [1758629] - [char] random: remove preempt disabled region (Waiman Long) [1758629] - [misc] ocxl: Update for AFU descriptor template version 1.1 (Steve Best) [1751207] - [misc] ocxl: Make ocxl_remove() static (Steve Best) [1751207] - [misc] ocxl: do not use C++ style comments in uapi header (Steve Best) [1751207] - [misc] ocxl: Allow contexts to be attached with a NULL mm (Steve Best) [1751207] - [misc] ocxl: Fix return value check in afu_ioctl() (Steve Best) [1751207] - [misc] ocxl: Provide global MMIO accessors for external drivers (Steve Best) [1751207] - [misc] ocxl: move event_fd handling to frontend (Steve Best) [1751207] - [misc] ocxl: afu_irq only deals with IRQ IDs, not offsets (Steve Best) [1751207] - [misc] ocxl: Allow external drivers to use OpenCAPI contexts (Steve Best) [1751207] - [misc] ocxl: Create a clear delineation between ocxl backend & frontend (Steve Best) [1751207] - [misc] ocxl: Don't pass pci_dev around (Steve Best) [1751207] - [misc] ocxl: Split pci.c (Steve Best) [1751207] - [misc] ocxl: Remove some unused exported symbols (Steve Best) [1751207] - [misc] ocxl: Remove superfluous 'extern' from headers (Steve Best) [1751207] - [misc] ocxl: read_pasid never returns an error, so make it void (Steve Best) [1751207] - [misc] ocxl: Rename struct link to ocxl_link (Steve Best) [1751207] - [misc] ocxl: remove set but not used variables 'tid' and 'lpid' (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in read_afu_name() (Steve Best) [1751207] - [misc] ocxl/afu_irq: Don't include (Steve Best) [1751207] - [misc] ocxl: Clarify error path in setup_xsl_irq() (Steve Best) [1751207] - [misc] ocxl: Fix endiannes bug in ocxl_link_update_pe() (Steve Best) [1751207] - [misc] ocxl: Fix access to the AFU Descriptor Data (Steve Best) [1751207] - [netdrv] gve: account for lack of netdev_xmit_more() definition (RHEL-only) (John Linville) [1728864] - [netdrv] gve: Copy and paste bug in gve_get_stats() (John Linville) [1728864] - [netdrv] gve: Fix case where desc_cnt and data_cnt can get out of sync (John Linville) [1728864] - [netdrv] gve: replace kfree with kvfree (John Linville) [1728864] - [netdrv] gve: Remove the exporting of gve_probe (John Linville) [1728864] - [netdrv] gve: fix unused variable/label warnings (John Linville) [1728864] - [netdrv] gve: Fix error return code in gve_alloc_qpls() (John Linville) [1728864] - [netdrv] gve: fix -ENOMEM null check on a page allocation (John Linville) [1728864] - [netdrv] gve: Fix u64_stats_sync to initialize start (John Linville) [1728864] - [netdrv] gve: Add ethtool support (John Linville) [1728864] - [netdrv] gve: Add workqueue and reset support (John Linville) [1728864] - [netdrv] gve: Add transmit and receive support (John Linville) [1728864] - [netdrv] gve: Add basic driver framework for Compute Engine Virtual NIC (John Linville) [1728864] - [mfd] mfd: intel-lpss: Add Intel Comet Lake PCI IDs (David Arcari) [1761586] - [scsi] scsi: core: save/restore command resid for error handling (Ewan Milne) [1760503] - [scsi] scsi: sd: Ignore a failure to sync cache due to lack of authorization (Ewan Milne) [1760503] - [scsi] scsi: core: Add sysfs attributes for VPD pages 0h and 89h (Ewan Milne) [1760503] - [scsi] scsi: core: Log SCSI command age with errors (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_rdac: zero cdb in send_mode_select() (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve unaligned completion resid message (Ewan Milne) [1760503] - [scsi] scsi: core: Reduce memory required for SCSI logging (Ewan Milne) [1760503] - [scsi] scsi: core: Complain if scsi_target_block() fails (Ewan Milne) [1760503] - [scsi] scsi: core: Make scsi_internal_device_unblock_nowait() reject invalid new_state (Ewan Milne) [1760503] - [scsi] scsi: scsi_debugfs: Use for_each_set_bit to simplify code (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix compilation warning (Ewan Milne) [1760503] - [scsi] scsi: devinfo: BLIST_TRY_VPD_PAGES for SanDisk Cruzer Blade (Ewan Milne) [1760503] - [scsi] scsi: core: use scmd_printk() to print which command timed out (Ewan Milne) [1760503] - [scsi] scsi: Avoid that .queuecommand() gets called for a blocked SCSI device (Ewan Milne) [1760503] - [scsi] scsi: core: don't preallocate small SGL in case of NO_SG_CHAIN (Ewan Milne) [1760503] - [scsi] scsi: scsi_dh_alua: Fix possible null-ptr-deref (Ewan Milne) [1760503] - [scsi] scsi: st: add a SPDX tag to st.c (Ewan Milne) [1760503] - [scsi] scsi: sr: add a SPDX tag to sr.c (Ewan Milne) [1760503] - [scsi] scsi: sg: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: switch remaining files to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: sd: add a SPDX tag to sd.c (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_srp: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_spi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_sas: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_iscsi: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: scsi_transport_fc: switch to SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: switch the remaining scsi midlayer files to use SPDX tags (Ewan Milne) [1760503] - [scsi] scsi: core: add SPDX tags to scsi midlayer files missing licensing information (Ewan Milne) [1760503] - [scsi] Revert "scsi: sd: Keep disk read-only when re-reading partition" (Ewan Milne) [1760503] - [scsi] scsi: core: set result when the command cannot be dispatched (Ewan Milne) [1760503] - [scsi] scsi: core: map PQ=1, PDT=other values to SCSI_SCAN_TARGET_PRESENT (Ewan Milne) [1760503] - [scsi] scsi: core: don't hold device refcount in IO path (Ewan Milne) [1760503] - [scsi] scsi: sd: Quiesce warning if device does not report optimal I/O size (Ewan Milne) [1760503] - [scsi] scsi: core: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Ewan Milne) [1760503] - [scsi] scsi: core: Avoid that a kernel warning appears during system resume (Ewan Milne) [1760503] - [scsi] scsi: core: Also call destroy_rcu_head() for passthrough requests (Ewan Milne) [1760503] - [scsi] scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c (Ewan Milne) [1760503] - [scsi] scsi: sd: Optimal I/O size should be a multiple of physical block size (Ewan Milne) [1760503] - [scsi] scsi: sd: Fix typo in sd_first_printk() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: Implement support for write protect (Ewan Milne) [1760503] - [scsi] scsi: sd_zbc: Fix zone information messages (Ewan Milne) [1760503] - [scsi] scsi: sd: Improve sd_print_capacity() (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: fix write_same with virtual_gb problem (Ewan Milne) [1760503] - [scsi] scsi: sd: Protect against READ(6) or WRITE(6) with zero block transfer length (Ewan Milne) [1760503] - [scsi] scsi: core: Remove an atomic instruction from the hot path (Ewan Milne) [1760503] - [scsi] scsi: sd: Rename 'SCpnt' into 'cmd' (Ewan Milne) [1760503] - [scsi] scsi: sd: Clean up sd_setup_read_write_cmnd() (Ewan Milne) [1760503] - [scsi] scsi: sd: Create helper functions for read/write commands (Ewan Milne) [1760503] - [scsi] scsi: sd: Simplify misaligned I/O check (Ewan Milne) [1760503] - [scsi] scsi: sd: Be consistent about blocks vs. sectors (Ewan Milne) [1760503] - [scsi] scsi: sd: Remove a local variable (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: add cmd abort option to every_nth (Ewan Milne) [1760503] - [scsi] scsi: scsi_debug: skip long delays when ndelay small (Ewan Milne) [1760503] - [x86] efi/x86: Do not clean dummy variable in kexec path (Bhupesh Sharma) [1724436] - [scsi] scsi: csiostor: create per port irq affinity mask set (Jonathan Toppins) [1725816] - [pci] PCI: let pci_disable_link_state propagate errors (Myron Stowe) [1735834] - [scsi] scsi: scsi_transport_fc: Add FPIN fc event codes (Ewan Milne) [1755587] - [scsi] scsi: scsi_transport_fc: refactor event posting routines (Ewan Milne) [1755587] - [scsi] scsi: fc: add FPIN ELS definition (Ewan Milne) [1755587] - [scsi] scsi: lib/sg_pool.c: clear 'first_chunk' in case of no preallocation (Ewan Milne) [1747162] - [scsi] scsi: core: Run queue when state is set to running after being blocked (Ewan Milne) [1691599] - [scsi] scsi: sd: Fix a race between closing an sd device and sd I/O (Ewan Milne) [1689118] - [net] net/ibmvnic: Fix EOI when running in XIVE mode. (Steve Best) [1761378] - [powerpc] powerpc/mce: Fix SLB rebolting during MCE recovery path. (Desnes Augusto Nunes do Rosario) [1725842] - [powerpc] powerpc/pseries: hwpoison the pages upon hitting UE (Desnes Augusto Nunes do Rosario) [1725842] - [x86] perf/x86/amd: Change/fix NMI latency mitigation to use a timestamp (David Arcari) [1730134] - [arm64] arm64: entry: Remove unneeded need_resched() loop (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Fix big-endian when checking preempt count in assembly (Mark Langsdorf) [1737075] - [arm64] arm64: preempt: Provide our own implementation of asm/preempt.h (Mark Langsdorf) [1737075] - [include] preempt: Move PREEMPT_NEED_RESCHED definition into arch code (Mark Langsdorf) [1737075] - [x86] x86/intel_rdt: Ensure a CPU remains online for the region's pseudo-locking sequence (Alexander Beregalov) [1724902] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Alexander Beregalov) [1724902] - [arm64] arm64/sve: Fix wrong free for task->thread.sve_state (Andrew Jones) [1756450] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.1 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: cleanup: remove unused fcp_txcmlpq_cnt (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Complete removal of FCoE T10 PI support on SLI-4 adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update async event logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hdwq sgl locks and irq handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix spinlock_irq issues in lpfc_els_flush_cmd() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix list corruption in lpfc_sli_get_iocbq (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix host hang at boot or slow boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity errors on NULL pointer checks (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVMe ABTS in response to receiving an ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery failures when target device connectivity bounces (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix GPF on scsi command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix locking on mailbox command completion (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix device recovery errors after PLOGI failures (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix rpi release when deleting vport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix NVME io abort failures causing hangs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix miss of register read failure check (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix premature re-enabling of interrupts in lpfc_sli_host_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix pt2pt discovery on SLI3 HBAs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reset recovery paths that are not recovering (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Convert existing pf users to ps (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: fix 12.4.0.0 GPF at boot (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove bg debugfs buffers (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Resolve checker warning for lpfc_new_io_buf() (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Update lpfc version to 12.4.0.0 (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Merge per-protocol WQ/CQ pairs into single per-cpu pair (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add NVMe sequence level error recovery support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Support dynamic unbounded SGL lists on G7 hardware. (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add MDS driver loopback diagnostics support (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add first and second level hardware revisions to sysfs reporting (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Migrate to px and pf in kernel print calls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Add simple unlikely optimizations to reduce NVME latency (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix coverity warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme first burst module parameter description (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix BlockGuard enablement on FCoE adapters (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix reported physical link speed on a disabled trunked link (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Max Frame Size value shown in fdmishow output (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix upcall to bsg done in non-success cases (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sli4 adapter initialization with MSI (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme sg_seg_cnt display if HBA does not support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix nvme target mode ABTSing a received ABTS (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix hang when downloading fw on port enabled for nvme (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix too many sg segments spamming in kernel log (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash due to port reset racing vs adapter error handling (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix deadlock on host_lock during cable pulls (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix error in remote port address change (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix driver nvme rescan logging (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix sg_seg_cnt for HBAs that don't support NVME (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix propagation of devloss_tmo setting to nvme transport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix loss of remote port after devloss due to lack of RPIs (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix devices that don't return after devloss followed by rediscovery (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix null ptr oops updating lpfc_devloss_tmo via sysfs attribute (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix FLOGI handling across multiple link up/down conditions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix irq raising in lpfc_sli_hba_down (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix Oops in nvme_register with target logout/login (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix issuing init_vpi mbox on SLI-3 card (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ADISC reception terminating login state if a NVME target (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix discovery when target has no GID_FT information (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix leak of ELS completions on adapter reset (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix failure to clear non-zero eq_delay after io rate reduction (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix crash on driver unload in wq free (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix ELS field alignments (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Fix PLOGI failure with high remoteport count (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove NULL check before some freeing functions (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use spin_lock_irqsave in IRQ context (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: remove redundant code (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove unnecessary null check before kfree (Dick Kennedy) [1757574] - [scripts] scripts/spelling.txt: drop "sepc" from the misspelling list (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: reduce stack size with CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE (Dick Kennedy) [1757574] - [scsi] lpfc: add sysfs interface to post NVME RSCN (Dick Kennedy) [1757574] - [scsi] lpfc: add support for translating an RSCN rcv into a discovery rescan (Dick Kennedy) [1757574] - [scsi] lpfc: add support to generate RSCN events for nport (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: use sg helper to iterate over scatterlist (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Avoid unused function warnings (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Make some symbols static (Dick Kennedy) [1757574] - [scsi] scsi: lpfc: Remove set but not used variables 'qp' (Dick Kennedy) [1757574] - [lib] lib/vsprintf: Reinstate printing of legacy clock IDs (Prarit Bhargava) [1751075] - [lib] vsprintf: fix data type of variable in string_nocheck() (Prarit Bhargava) [1751075] - [scripts] kconfig: tests: fix recursive inclusion unit test (Prarit Bhargava) [1751075] - [kernel] printk: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for missed files (Prarit Bhargava) [1751075] - [kernel] printk: Add SPDX license identifier for more missed files (Prarit Bhargava) [1751075] - [kernel] panic: add an option to replay all the printk message in buffer (Prarit Bhargava) [1751075] - [kernel] panic: avoid the extra noise dmesg (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not break early boot with probing addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make function pointer_string static (Prarit Bhargava) [1751075] - [lib] vsprintf: Limit the length of inlined error messages (Prarit Bhargava) [1751075] - [lib] vsprintf: Avoid confusion between invalid address and value (Prarit Bhargava) [1751075] - [lib] vsprintf: Prevent crash when dereferencing invalid pointers (Prarit Bhargava) [1751075] - [lib] vsprintf: Consolidate handling of unknown pointer specifiers (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pO handler as kobject_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out pV handler as va_format() (Prarit Bhargava) [1751075] - [lib] vsprintf: Factor out p[iI] handler as ip_addr_string() (Prarit Bhargava) [1751075] - [lib] vsprintf: Do not check address of well-known strings (Prarit Bhargava) [1751075] - [lib] vsprintf: Consistent pK handling for kptr_restrict == 0 (Prarit Bhargava) [1751075] - [lib] vsprintf: Shuffle restricted_pointer() (Prarit Bhargava) [1751075] - [kernel] printk: Tie printk_once / printk_deferred_once into .data.once for reset (Prarit Bhargava) [1751075] - [lib] lib: Use new kselftest header (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Add empty module_exit function (Prarit Bhargava) [1751075] - [scripts] checkpatch: add pt as a valid vsprintf extension (Prarit Bhargava) [1751075] - [lib] lib/test_printf: Switch to bitmap_zalloc() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf.c: move sizeof(struct printf_spec) next to its definition (Prarit Bhargava) [1751075] - [kernel] printk/docs: Add extra integer types to printk-formats (Prarit Bhargava) [1751075] - [kernel] printk: Remove no longer used LOG_PREFIX. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Remove pCr remnant in comment (Prarit Bhargava) [1751075] - [kernel] printk: Pass caller information to log_store(). (Prarit Bhargava) [1751075] - [kernel] kernel/sysctl: add panic_print into sysctl (Prarit Bhargava) [1751075] - [kernel] panic: add options to print system info when panic happens (Prarit Bhargava) [1751075] - [include] include/linux/printk.h: drop silly "static inline asmlinkage" from dump_stack() (Prarit Bhargava) [1751075] - [kernel] printk: Add caller information to printk() output. (Prarit Bhargava) [1751075] - [kernel] printk: Remove print_prefix() calls with NULL buffer. (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Print time and date in human readable format via pt (Prarit Bhargava) [1751075] - [kernel] printk: fix printk_time race. (Prarit Bhargava) [1751075] - [kernel] printk: Make printk_emit() local function. (Prarit Bhargava) [1751075] - [documentation] doc: printk-formats: Remove bogus kobject references for device nodes (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash printed address for netdev bits fallback (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Hash legacy clock addresses (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Prepare for more general use of ptr_to_id() (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Make ptr argument conts in ptr_to_id() (Prarit Bhargava) [1751075] - [kernel] printk: fix integer overflow in setup_log_buf() (Prarit Bhargava) [1751075] - [kernel] printk: do not preliminary split up cont buffer (Prarit Bhargava) [1751075] - [kernel] printk: lock/unlock console only for new logbuf entries (Prarit Bhargava) [1751075] - [kernel] printk: keep kernel cont support always enabled (Prarit Bhargava) [1751075] - [kernel] printk: Give error on attempt to set log buffer length to over 2G (Prarit Bhargava) [1751075] - [kernel] printk: Add KBUILD_MODNAME and remove a redundant print prefix (Prarit Bhargava) [1751075] - [kernel] printk: Correct wrong casting (Prarit Bhargava) [1751075] - [kernel] printk: CON_PRINTBUFFER console registration is a bit racy (Prarit Bhargava) [1751075] - [kernel] printk: Do not miss new messages when replaying the log (Prarit Bhargava) [1751075] - [kernel] Revert "printk: make sure to print log on console." (Prarit Bhargava) [1751075] - [lib] vsprintf: print OF node name using full_name (Prarit Bhargava) [1751075] - [kernel] printk/tracing: Do not trace printk_nmi_enter() (Prarit Bhargava) [1751075] - [misc] notifier: Remove notifier header file wherever not used (Prarit Bhargava) [1751075] - [init] init: allow initcall tables to be emitted using relative references (Prarit Bhargava) [1751075] - [lib] lib/vsprintf: Do not handle pO[^F] as px (Prarit Bhargava) [1751075] - [kernel] console: Replace #if 0 with atomic var 'ignore_console_lock_warning' (Prarit Bhargava) [1751075] - [lib] vsprintf: Use hw RNG for ptr_key (Prarit Bhargava) [1751075] - [kernel] printk: Fix warning about unused suppress_message_printing (Prarit Bhargava) [1751075] - [char] random: Return nbytes filled from hw RNG (Prarit Bhargava) [1751075] - [char] random: Fix whitespace pre random-bytes work (Prarit Bhargava) [1751075] - [kernel] printk/nmi: Prevent deadlock when accessing the main log buffer in NMI (Prarit Bhargava) [1751075] - [kernel] printk: Create helper function to queue deferred console handling (Prarit Bhargava) [1751075] - [kernel] printk: Split the code for storing a message into the log buffer (Prarit Bhargava) [1751075] - [kernel] printk: Clean up syslog_print_all() (Prarit Bhargava) [1751075] - [kernel] printk: Export is_console_locked (Prarit Bhargava) [1751075] - [kernel] printk: Remove unnecessary kmalloc() from syslog during clear (Prarit Bhargava) [1751075] - [kernel] printk: Make CONSOLE_LOGLEVEL_QUIET configurable (Prarit Bhargava) [1751075] - [kernel] printk: make sure to print log on console. (Prarit Bhargava) [1751075] - [lib] lib/test_printf.c: accept "ptrval" as valid result for plain 'p' tests (Prarit Bhargava) [1751075] - [kernel] softirq: Remove tasklet_hrtimer (Prarit Bhargava) [1737073] - [include] list: add function list_rotate_to_front() (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Rename the file for consistency (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Move Kconfig option (Prarit Bhargava) [1737073] - [clocksource] clocksource/drivers/tcb_clksrc: Use tcb as sched_clock (Prarit Bhargava) [1737073] - [kernel] irq_work: Do not raise an IPI when queueing work on the local CPU (Prarit Bhargava) [1737073] - [tty] tty/sysrq: Convert show_lock to raw_spinlock_t (Prarit Bhargava) [1737073] - [net] xfrm: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Replace hrtimer tasklet with softirq hrtimer (Prarit Bhargava) [1737073] - [kernel] kthread: Do not use TIMER_IRQSAFE (Prarit Bhargava) [1737073] - [kernel] kthread: Convert worker lock to raw spinlock (Prarit Bhargava) [1737073] - [netdrv] mac80211_hwsim: Timer should be initialized before device registered (Prarit Bhargava) [1737073] - [net] xfrm: use time64_t for in-kernel timestamps (Prarit Bhargava) [1737073] - [x86] x86/intel: Aggregate microserver naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core graphics naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core mobile naming (Prarit Bhargava) [1725644] - [x86] x86/intel: Aggregate big core client naming (Prarit Bhargava) [1725644] - [tools] turbostat: Replace GPLv2 boilerplate/reference with SPDX - rule 335 (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: update version number (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: rename has_hsw_msrs() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix Haswell Core systems (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add support for Hygon Fam 18h (Dhyana) RAPL (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix caller parameter of get_tdp_amd() (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Fix CPUC1 display value (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: do not enforce 1ms (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: read from pipes too (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Add Ice Lake NNPI support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: add Jacobsville support (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: remove duplicate pc10 column (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix file descriptor leaks (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix leak of file descriptor on error return path (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: fix buffer overrun (Prarit Bhargava) [1725644] - [tools] tools/power turbostat: Make interval calculation per thread to reduce jitter (Prarit Bhargava) [1725644] - [tools] tools/power/x86: Enable compiler optimisations and Fortify by default (Prarit Bhargava) [1725644] - [x86] x86/cpu: Add Ice Lake NNPI to Intel family (Prarit Bhargava) [1725644]- [tools] perf tools: Fix segfault in cpu_cache_level__read() (Michael Petlan) [1761995] - [scsi] qla2xxx: Update driver version to 10.01.00.19.08.2-k (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Nport ID display value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link up fail (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix N2N link reset (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Optimize NPIV tear down process (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale mem access on driver unload (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix unbound sleep in fcport delete path. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence fwdump template message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stale session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix stuck login session (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix driver reload for ISP82xx (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix flash read for Qlogic ISPs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix message indicating vectors used by driver (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: fix spelling mistake "initializatin" -> "initialization" (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a recently introduced kernel warning (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a NULL pointer dereference (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_async_abort_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous if-tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2x00_els_dcmd2_free() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Inline the qla2x00_fcport_event_handler() function (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report invalid mailbox status codes (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove superfluous sts_entry_* casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Let the compiler check the type of the SCSI command context pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if sp->done() is not called from the completion path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make sure that aborted commands are freed (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce qla2xxx_get_next_handle() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Modify NVMe include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qlt_handle_abts_completion() more robust (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a race condition between aborting and completing a SCSI command (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the function qla2xxx_init_sp() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Enable type checking for the SRB free and done callback functions (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Rework key encoding in qlt_find_host_by_d_id() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the responder mode if appropriate for ELS pass-through IOCBs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make it explicit that ELS pass-through IOCBs use little endian (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check secondary image if reading the primary image fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla24xx_read_flash_data() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the be_id_t and le_id_t data types for FC src/dst IDs (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a soft reset fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use memcpy() and strlcpy() instead of strcpy() and strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the PCI info string output buffer size (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if waiting for pending commands times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare fourth qla2x00_set_model_info() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Always check the qla2x00_wait_for_hba_online() return value (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress multiple Coverity complaint about out-of-bounds accesses (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unreachable code from qla83xx_idc_lock() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix qla24xx_process_bidir_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify a debug statement (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove dead code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if parsing the version string fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a mailbox command times out (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use strlcpy() instead of strncpy() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Do not corrupt vha->plogi_ack_list (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Report the firmware status code if a mailbox command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix session lookup in qlt_abort_work() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qla24xx_abort_sp_done() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous tests (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous pointer check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_lport_dump() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the number of casts in GID list code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Verify locking assumptions at runtime (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change data_dsd into an array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla_tgt_cmd.cdb const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reduce the scope of three local variables in qla2xxx_queuecommand() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Change the return type of qla2x00_update_ms_fdmi_iocb() into void (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare the fourth ql_dump_buffer() argument const (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a superfluous forward declaration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove an include directive from qla_mr.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Include the header file from qla_dsd.h (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs instead of spaces for indentation (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Improve Linux kernel coding style conformance (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Really fix qla2xxx_eh_abort() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_abort_srb() again decrease the sp reference count (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Allow NVMe IO to resume with short cable pull (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix hang in fcport delete path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use common update-firmware-options routine for ISP27xx+ (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix NVMe port discovery after a short device port loss (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Correct error handling during initialization failures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Retry fabric Scan on IOCB queue full (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix premature timer expiration (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix Relogin to prevent modifying scan_state flag (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reject EH_{abort|device_reset|target_request} (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Skip FW dump on LOOP initialization error (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use Correct index for Q-Pair array (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort timeout race condition. (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix DMA unmap leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Replace vmalloc + memset with vzalloc (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary null check (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: remove double assignment in qla2x00_update_fcport (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Add cleanup for PCI EEH recovery (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that lockdep complains about unsafe locking in tcm_qla2xxx_close_session() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qlt_send_resp_ctio() corrupts memory (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use __le64 instead of uint32_t[2] for sending DMA addresses to firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Check the size of firmware data structures at compile time (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Pass little-endian values to the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla24xx_async_abort_cmd() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove unnecessary locking from the target code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Complain if a command is released that is owned by the firmware (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: target: Fix offline port handling and host reset handling (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix abort handling in tcm_qla2xxx_write_pending() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix error handling in qlt_alloc_qfull_cmd() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Simplify qlt_send_term_imm_notif() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix use-after-free issues in qla2xxx_qpair_sp_free_dma() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a qla24xx_enable_msix() error path (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that qla2x00_mem_free() crashes if called twice (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_mem_free() easier to verify (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the size of the mailbox arrays from 4 to 8 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Log the status code if a firmware command fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Avoid that Coverity complains about dereferencing a NULL rport pointer (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Uninline qla2x00_init_timer() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_is_reserved_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_clear_loop_id() from qla_inline.h into qla_init.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla2x00_find_new_loop_id() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_reserved_loop_ids() definition (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a format specifier (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Update two source code comments (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Silence Successful ELS IOCB message (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix device staying in blocked state (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move qla2x00_set_fcport_state() from a .h into a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove two superfluous casts (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove qla_tgt_cmd.data_work and qla_tgt_cmd.data_work_free (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the include directive (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare qla24xx_build_scsi_crc_2_iocbs() static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Move the port_state_str[] definition from a .h to a .c file (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Insert spaces where required (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix formatting of pointer types (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Leave a blank line after declarations (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use tabs to indent code (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix FC-AL connection target discovery (Himanshu Madhani) [1728845] - [scsi] scsi: tcm_qla2xxx: Minimize #include directives (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister resources in the opposite order of the registration order (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Unregister chrdev if module initialization fails (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use get/put_unaligned where appropriate (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Make qla2x00_process_response_queue() easier to read (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Declare local symbols static (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use ARRAY_SIZE() in the definition of QLA_LAST_SPEED (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove a comment that refers to the SCSI host lock (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Remove useless set memory to zero use memset() (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Cleanup fcport memory to prevent leak (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Further limit FLASH region write access from SysFS (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Disable T10-DIF feature with FC-NVMe during probe (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Increase the max_sgl_segments to 1024 (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Reset the FCF_ASYNC_{SENT|ACTIVE} flags (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Set the qpair in SRB to NULL when SRB is released (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix a small typo in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Fix comment alignment in qla_bsg.c (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: deadlock by configfs_depend_item (Himanshu Madhani) [1728845] - [scsi] scsi: qla2xxx: use lower_32_bits and upper_32_bits instead of reinventing them (Himanshu Madhani) [1728845] - [md] dm snapshot: rework COW throttling to fix deadlock (Mike Snitzer) [1758605] - [md] dm snapshot: introduce account_start_copy() and account_end_copy() (Mike Snitzer) [1758605] - [netdrv] ice: Bump version (Jonathan Toppins) [1721711] - [netdrv] ice: Enable DDP package download (Jonathan Toppins) [1721711] - [netdrv] ice: Initialize DDP package structures (Jonathan Toppins) [1721711] - [netdrv] ice: Implement Dynamic Device Personalization (DDP) download (Jonathan Toppins) [1721711] - [netdrv] ice: Fix FW version formatting in dmesg (Jonathan Toppins) [1721711] - [netdrv] ice: send driver version to firmware (Jonathan Toppins) [1721711] - [netdrv] ice: Rework around device/function capabilities (Jonathan Toppins) [1721711] - [netdrv] ice: change default number of receive descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Minor refactor in queue management (Jonathan Toppins) [1721711] - [netdrv] ice: Allow for delayed LLDP MIB change registration (Jonathan Toppins) [1721711] - [netdrv] ice: update Tx context struct (Jonathan Toppins) [1721711] - [netdrv] ice: Report VF link status with opcode to get resources (Jonathan Toppins) [1721711] - [netdrv] ice: Check for DCB capability before initializing DCB (Jonathan Toppins) [1721711] - [netdrv] ice: report link down for VF when PF's queues are not enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Reliably reset VFs (Jonathan Toppins) [1721711] - [netdrv] ice: change work limit to a constant (Jonathan Toppins) [1721711] - [netdrv] ice: small efficiency fixes (Jonathan Toppins) [1721711] - [netdrv] ice: move code closer together (Jonathan Toppins) [1721711] - [netdrv] ice: clean up arguments (Jonathan Toppins) [1721711] - [netdrv] ice: Check root pointer for validity (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_main_vsi to get PF/main VSI (Jonathan Toppins) [1721711] - [netdrv] ice: Update fields in ice_vsi_set_num_qs when reconfiguring (Jonathan Toppins) [1721711] - [netdrv] ice: Only disable VLAN pruning for the VF when all VLANs are removed (Jonathan Toppins) [1721711] - [netdrv] ice: Remove enable DCB when SW LLDP is activated (Jonathan Toppins) [1721711] - [netdrv] ice: Report stats when VSI is down (Jonathan Toppins) [1721711] - [netdrv] ice: Always notify FW of VF reset (Jonathan Toppins) [1721711] - [netdrv] ice: Correctly handle return values for init DCB (Jonathan Toppins) [1721711] - [netdrv] ice: Limit Max TCs on devices with more than 4 ports (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup defines in ice_type.h (Jonathan Toppins) [1721711] - [netdrv] ice: print extra message if topology issue (Jonathan Toppins) [1721711] - [netdrv] ice: add print of autoneg state to link message (Jonathan Toppins) [1721711] - [netdrv] ice: update driver unloading field for Queue Shutdown AQ command (Jonathan Toppins) [1721711] - [netdrv] ice: add needed PFR during driver unload (Jonathan Toppins) [1721711] - [netdrv] ice: Deduce TSA value from the priority value in the CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Report what the user set for coalesce [tx|rx]-usecs (Jonathan Toppins) [1721711] - [netdrv] ice: Fix resource leak in ice_remove_rule_internal() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix EMP reset handling (Jonathan Toppins) [1721711] - [netdrv] ice: fix adminq calls during remove (Jonathan Toppins) [1721711] - [netdrv] ice: Rework ice_ena_msix_range (Jonathan Toppins) [1721711] - [netdrv] ice: Fix VF configuration issues due to reset (Jonathan Toppins) [1721711] - [netdrv] ice: Alloc queue management bitmaps and arrays dynamically (Jonathan Toppins) [1721711] - [netdrv] ice: add support for virtchnl_queue_select.[tx|rx]_queues bitmap (Jonathan Toppins) [1721711] - [netdrv] ice: add support for enabling/disabling single queues (Jonathan Toppins) [1721711] - [netdrv] ice: fix potential infinite loop (Jonathan Toppins) [1721711] - [netdrv] ice: fix ice_is_tc_ena (Jonathan Toppins) [1721711] - [netdrv] ice: add validation in OP_CONFIG_VSI_QUEUES VF message (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clog kernel debug log with VF MDD events errors (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce a local variable for a VSI in the rebuild path (Jonathan Toppins) [1721711] - [netdrv] ice: shorten local and add debug prints (Jonathan Toppins) [1721711] - [netdrv] ice: Sanitize ice_ena_vsi and ice_dis_vsi (Jonathan Toppins) [1721711] - [netdrv] ice: added sibling head to parse nodes (Jonathan Toppins) [1721711] - [netdrv] ice: Fix ethtool port and PFC stats for 4x25G cards (Jonathan Toppins) [1721711] - [netdrv] ice: Don't allow VSI to remove unassociated ucast filter (Jonathan Toppins) [1721711] - [netdrv] ice: Fix issues updating VSI MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: update ethtool stats on-demand (Jonathan Toppins) [1721711] - [netdrv] ice: Add input handlers for virtual channel handlers (Jonathan Toppins) [1721711] - [netdrv] ice: Don't clear auto_fec bit in ice_cfg_phy_fec() (Jonathan Toppins) [1721711] - [netdrv] ice: Fix flag used for module query (Jonathan Toppins) [1721711] - [netdrv] ice: silence some bogus error messages (Jonathan Toppins) [1721711] - [netdrv] ice: Rename ethtool private flag for lldp (Jonathan Toppins) [1721711] - [netdrv] ice: reject VF attempts to enable head writeback (Jonathan Toppins) [1721711] - [netdrv] ice: Copy dcbx configuration only if mode is correct (Jonathan Toppins) [1721711] - [netdrv] ice: Treat DCBx state NOT_STARTED as valid (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call synchronize_irq() for VF's from the host (Jonathan Toppins) [1721711] - [netdrv] ice: Account for all states of FW DCBx and LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Allow egress control packets from PF_VSI (Jonathan Toppins) [1721711] - [netdrv] ice: improve print for VF's when adding/deleting MAC filters (Jonathan Toppins) [1721711] - [netdrv] ice: Change type for queue counts (Jonathan Toppins) [1721711] - [netdrv] ice: Move VF resources definition to SR-IOV specific file (Jonathan Toppins) [1721711] - [netdrv] ice: Increase size of Mailbox receive queue for many VFs (Jonathan Toppins) [1721711] - [netdrv] ice: Reduce wait times during VF bringup/reset (Jonathan Toppins) [1721711] - [netdrv] ice: update GLINT_DYN_CTL and GLINT_VECT2FUNC register access (Jonathan Toppins) [1721711] - [netdrv] ice: Do not always bring up PF VSI in ice_ena_vsi() (Jonathan Toppins) [1721711] - [netdrv] ice: allow empty Rx descriptors (Jonathan Toppins) [1721711] - [netdrv] ice: Fix kernel hang with DCB reset in CEE mode (Jonathan Toppins) [1721711] - [netdrv] ice: Set WB_ON_ITR when we don't re-enable interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: fix set pause param autoneg check (Jonathan Toppins) [1721711] - [netdrv] ice: Restructure VFs initialization flows (Jonathan Toppins) [1721711] - [netdrv] ice: Assume that more than one Rx queue is rare in ice_napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Use the software based tail when checking for hung Tx ring (Jonathan Toppins) [1721711] - [netdrv] ice: Bump version number (Jonathan Toppins) [1721711] - [netdrv] ice: Remove flag to track VF interrupt status (Jonathan Toppins) [1721711] - [netdrv] ice: Remove unnecessary flag ICE_FLAG_MSIX_ENA (Jonathan Toppins) [1721711] - [netdrv] ice: Don't return error for disabling LAN Tx queue that does exist (Jonathan Toppins) [1721711] - [netdrv] ice: Remove duplicate code in ice_alloc_rx_bufs (Jonathan Toppins) [1721711] - [netdrv] ice: Add stats for Rx drops at the port level (Jonathan Toppins) [1721711] - [netdrv] ice: Update number of VF queue before setting VSI resources (Jonathan Toppins) [1721711] - [netdrv] ice: Set up Tx scheduling tree based on alloc VSI Tx queues (Jonathan Toppins) [1721711] - [netdrv] ice: Only bump Rx tail and release buffers once per napi_poll (Jonathan Toppins) [1721711] - [netdrv] ice: Disable VFs until reset is completed (Jonathan Toppins) [1721711] - [netdrv] ice: Do not configure port with no media (Jonathan Toppins) [1721711] - [netdrv] ice: separate out control queue lock creation (Jonathan Toppins) [1721711] - [netdrv] ice: Always set prefena when configuring an Rx queue (Jonathan Toppins) [1721711] - [netdrv] ice: Move vector base setup to PF VSI (Jonathan Toppins) [1721711] - [netdrv] ice: track hardware stat registers past rollover (Jonathan Toppins) [1721711] - [netdrv] ice: add lp_advertising flow control support (Jonathan Toppins) [1721711] - [netdrv] ice: Use struct_size() helper (Jonathan Toppins) [1721711] - [netdrv] ice: Use LLDP ethertype define ETH_P_LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Trivial cosmetic changes (Jonathan Toppins) [1721711] - [netdrv] ice: Recognize higher speeds (Jonathan Toppins) [1721711] - [netdrv] ice: Use a different ICE_DBG bit for firmware log messages (Jonathan Toppins) [1721711] - [netdrv] ice: Update function header (Jonathan Toppins) [1721711] - [netdrv] ice: Move define for ICE_AQC_DRIVER_UNLOADING (Jonathan Toppins) [1721711] - [netdrv] ice: Align to updated AQ command formats (Jonathan Toppins) [1721711] - [netdrv] ice: Use continue instead of an else block (Jonathan Toppins) [1721711] - [netdrv] ice: Change minimum descriptor count value for Tx/Rx rings (Jonathan Toppins) [1721711] - [netdrv] ice: Add switch rules to handle LLDP packets (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup ice_update_link_info (Jonathan Toppins) [1721711] - [netdrv] ice: Use right type for ice_cfg_vsi_lan return (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for Forward Error Correction (FEC) (Jonathan Toppins) [1721711] - [netdrv] ice: Add support for virtchnl_vector_map.[rxq|txq]_map (Jonathan Toppins) [1721711] - [netdrv] ice: Introduce ice_init_mac_fltr and move ice_napi_del (Jonathan Toppins) [1721711] - [netdrv] ice: Use GLINT_DYN_CTL to disable VF's interrupts (Jonathan Toppins) [1721711] - [netdrv] ice: Add a helper to trigger software interrupt (Jonathan Toppins) [1721711] - [netdrv] ice: Configure RSS LUT key only if RSS is enabled (Jonathan Toppins) [1721711] - [netdrv] ice: Add ice_get_fw_log_cfg to init FW logging (Jonathan Toppins) [1721711] - [netdrv] ice: Minor cleanup in ice_switch.h (Jonathan Toppins) [1721711] - [netdrv] ice: Remove redundant and premature event config (Jonathan Toppins) [1721711] - [netdrv] ice: Change message level (Jonathan Toppins) [1721711] - [netdrv] ice: Check all VFs for MDD activity, don't disable (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor interrupt tracking (Jonathan Toppins) [1721711] - [netdrv] ice: Add handler for ethtool selftest (Jonathan Toppins) [1721711] - [netdrv] ice: Don't call ice_cfg_itr() for SR-IOV (Jonathan Toppins) [1721711] - [netdrv] ice: Set minimum default Rx descriptor count to 512 (Jonathan Toppins) [1721711] - [netdrv] ice: Resolve static analysis warning (Jonathan Toppins) [1721711] - [netdrv] ice: Implement toggling ethtool rx-vlan-filter (Jonathan Toppins) [1721711] - [netdrv] ice: Remove direct write for GLLAN_RCTL_0 (Jonathan Toppins) [1721711] - [netdrv] ice: Fix LINE_SPACING style issue (Jonathan Toppins) [1721711] - [netdrv] ice: Silence semantic parser warnings (Jonathan Toppins) [1721711] - [netdrv] ice: Fix couple of issues in ice_vsi_release (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize ice_vf struct (Jonathan Toppins) [1721711] - [netdrv] ice: Use bitfields when possible (Jonathan Toppins) [1721711] - [netdrv] ice: Reorganize tx_buf and ring structs (Jonathan Toppins) [1721711] - [netdrv] ice: Format ethtool reported stats (Jonathan Toppins) [1721711] - [netdrv] ice: Gracefully handle reset failure in ice_alloc_vfs() (Jonathan Toppins) [1721711] - [netdrv] ice: Refactor the LLDP MIB change event handling (Jonathan Toppins) [1721711] - [netdrv] ice: Advertise supported link modes if none requested (Jonathan Toppins) [1721711] - [netdrv] ice: Fix hang when ethtool disables FW LLDP (Jonathan Toppins) [1721711] - [netdrv] ice: Call out dev/func caps when printing (Jonathan Toppins) [1721711] - [netdrv] ice: Remove braces for single statement blocks (Jonathan Toppins) [1721711] - [netdrv] ice: Cleanup an unnecessary variable initialization (Jonathan Toppins) [1721711] - [netdrv] ice: Implement LLDP persistence (Jonathan Toppins) [1721711] - [netdrv] ice: Fix double spacing (Jonathan Toppins) [1721711] - [kernel] sched/debug: Fix potential deadlock when writing to sched_features (Vladis Dronov) [1760060] - [kernel] sched/debug: Use match_string() helper instead of open-coded logic (Vladis Dronov) [1760060] - [hid] HID: intel-ish-hid: ipc: add EHL device id (Tony Camuso) [1716756] - [hid] HID: remove NO_D3 flag when remove driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix wrong driver_data usage (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Fix a use after free in load_fw_from_host() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1716756] - [platform] platform/chrome: Add ChromeOS EC ISHTP driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: prefix header search paths with $(srctree)/ (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add Comet Lake PCI device ID (Tony Camuso) [1716756] - [platform] platform/chrome: cros_ec: Add EC host command support using rpmsg (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: fix spelling mistake "multipe" -> "multiple" (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ISH firmware loader client driver (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface function for PCI device pointer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use the new interface functions in HID ish client (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move functions related to bus and device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add interface functions for struct ishtp_cl (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move the common functions from client.h (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Store ishtp_cl_device instance in device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Move driver registry functions (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Simplify ishtp_cl_link() (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Hide members of struct ishtp_cl_device (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Add match callback to ishtp bus type (Tony Camuso) [1716756] - [hid] HID: intel-ish: enable raw interface to HID devices on ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Use VID/PID from ISH (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: Switch to use new generic UUID API (Tony Camuso) [1716756] - [hid] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR busy_clear bit (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to search client id (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for client search (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function to access client buffer (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper functions for client buffer operation (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: use helper function for private driver data set/get (Tony Camuso) [1716756] - [hid] HID: intel-ish-hid: ishtp: add helper function for driver data get/set (Tony Camuso) [1716756] - [platform] platform/chrome: Move cros-ec transport drivers to drivers/platform. (Tony Camuso) [1716756] - [tools] tools: PCI: Fix compiler warning in pcitest (Myron Stowe) [1753749] - [iommu] iommu: Fix integer truncation (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Ignore root complex whitelist when an IOMMU is present (Myron Stowe) [1753749] - [pci] PCI: Cleanup setup-bus.c comments and whitespace (Myron Stowe) [1753749] - [include] CPER: Remove unnecessary use of user-space types (Myron Stowe) [1753749] - [include] CPER: Add UEFI spec references (Myron Stowe) [1753749] - [pci] PCI: Fix comment typos (Myron Stowe) [1753749] - [pci] PCI: Cleanup register definition width and whitespace (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless MY_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pointless PCIE_MODULE_NAME definition (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove unused dbg/err/info/warn() wrappers (Myron Stowe) [1753749] - [pci] PCI: pciehp: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI: pciehp: Replace pciehp_debug module param with dyndbg (Myron Stowe) [1753749] - [pci] PCI: pciehp: Remove pciehp_debug uses (Myron Stowe) [1753749] - [pci] PCI/AER: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/DPC: Log messages with pci_dev, not pcie_device (Myron Stowe) [1753749] - [pci] PCI/PME: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI/AER: Replace dev_printk(KERN_DEBUG) with dev_info() (Myron Stowe) [1753749] - [pci] PCI: Replace dev_printk(KERN_DEBUG) with dev_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Replace printk(KERN_INFO) with pr_info(), etc (Myron Stowe) [1753749] - [pci] PCI: Use dev_printk() when possible (Myron Stowe) [1753749] - [iommu] iommu/dma: Reserve IOVA for PCIe inaccessible DMA address (Myron Stowe) [1753749] - [pci] PCI: Add dma_ranges window list (Myron Stowe) [1753749] - [pci] PCI: endpoint: Fix a potential NULL pointer dereference (Myron Stowe) [1753749] - [tools] tools: PCI: Handle pcitest.sh independently from pcitest (Myron Stowe) [1753749] - [tools] tools: PCI: Add 'h' in optstring of getopt() (Myron Stowe) [1753749] - [tools] tools: PCI: Change pcitest compiling process (Myron Stowe) [1753749] - [tools] tools: PCI: Fix compilation warnings (Myron Stowe) [1753749] - [tools] tools: PCI: Exit with error code when test fails (Myron Stowe) [1753749] - [pci] PCI: Mark Atheros AR9462 to avoid bus reset (Myron Stowe) [1753749] - [pci] switchtec: Fix unintended mask of MRPC event (Myron Stowe) [1753749] - [pci] switchtec: Increase PFF limit from 48 to 255 (Myron Stowe) [1753749] - [pci] PCI/LINK: Disable bandwidth notification interrupt during suspend (Myron Stowe) [1753749] - [pci] PCI/P2PDMA: Allow P2P DMA between any devices under AMD ZEN Root Complex (Myron Stowe) [1753749] - [maintainers] MAINTAINERS: Add Karthikeyan Mitran and Hou Zhiqiang for Mobiveil PCI (Myron Stowe) [1753749] - [platform] platform/chrome: chromeos_laptop: use pci_dev_id() helper (Myron Stowe) [1753749] - [iommu] iommu/amd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [drm] drm/amdkfd: Use pci_dev_id() helper (Myron Stowe) [1753749] - [powerpc] powerpc/powernv/npu: Use pci_dev_id() helper (Myron Stowe) [1753749] - [x86] x86/PCI: Fix PCI IRQ routing table memory leak (Myron Stowe) [1753749] - [pci] PCI: Remove unused pci_request_region_exclusive() (Myron Stowe) [1753749] - [pci] PCI: Mark expected switch fall-throughs (Myron Stowe) [1753749] - [pci] PCI/ACPI: Remove the need for 'struct hotplug_params' (Myron Stowe) [1753749] - [pci] PCI/ACPI: Do not export pci_get_hp_params() (Myron Stowe) [1753749] - [pci] PCI: rpaphp: Get/put device node reference during slot alloc/dealloc (Myron Stowe) [1753749] - [pci] PCI: rpadlpar: Fix leaked device_node references in add/remove paths (Myron Stowe) [1753749] - [pci] PCI: Assign bus numbers present in EA capability for bridges (Myron Stowe) [1753749] - [pci] PCI: OF: Support "external-facing" property (Myron Stowe) [1753749] - [documentation] dt-bindings: Add "external-facing" PCIe port property (Myron Stowe) [1753749] - [pci] PCI: Init PCIe feature bits for managed host bridge alloc (Myron Stowe) [1753749] - [pci] PCI/AER: Change pci_aer_init() stub to return void (Myron Stowe) [1753749] - [s390] s390/zcrypt: CEX7S exploitation support (Philipp Rudo) [1726416] - [s390] s390/pkey: Add sysfs attributes to emit AES CIPHER key blobs (Philipp Rudo) [1726416] - [s390] s390/crypto: Support for SHA3 via CPACF (MSA6) (Philipp Rudo) [1726416] - [s390] s390/crypto: xts-aes-s390 fix extra run-time crypto self tests finding (Philipp Rudo) [1726416] - [s390] s390: vfio-ap: fix warning reset not completed (Philipp Rudo) [1726416] - [s390] crypto: s390 - Rename functions to avoid conflict with crypto/sha256.h (Philipp Rudo) [1726416] - [s390] s390/zcrypt: fix wrong handling of cca cipher keygenflags (Philipp Rudo) [1726416] - [s390] crypto: s390/xts-aes - invoke fallback for ciphertext stealing (Philipp Rudo) [1726416] - [s390] s390/paes: Prepare paes functions for large key blobs (Philipp Rudo) [1726416] - [s390] s390/pkey: add CCA AES cipher key support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: Add low level functions for CCA AES cipher keys (Philipp Rudo) [1726416] - [s390] s390/zcrypt: extend cca_findcard function and helper (Philipp Rudo) [1726416] - [s390] s390/pkey: pkey cleanup: narrow in-kernel API, fix some variable types (Philipp Rudo) [1726416] - [s390] s390/zcrypt: adjust switch fall through comments for -Wimplicit-fallthrough (Philipp Rudo) [1726416] - [s390] crypto: s390/aes - fix name clash after AES library refactor (Philipp Rudo) [1726416] - [s390] s390/zcrypt: new sysfs attributes serialnr and mkvps (Philipp Rudo) [1726416] - [s390] s390/zcrypt: add base code for cca crypto card info support (Philipp Rudo) [1726416] - [s390] s390/zcrypt: move cca misc functions to new code file (Philipp Rudo) [1726416] - [s390] s390: use __u{16, 32, 64} instead of uint{16, 32, 64}_t in uapi header (Philipp Rudo) [1726416] - [s390] s390/zcrypt: remove the exporting of ap_query_configuration (Philipp Rudo) [1726416] - [s390] s390/crypto: sha: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: prng: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/crypto: ghash: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/pkey: Use -ENODEV instead of -EOPNOTSUPP (Philipp Rudo) [1726416] - [s390] s390/zcrypt: support special flagged EP11 cprbs (Philipp Rudo) [1726416] - [s390] s390/crypto: fix possible sleep during spinlock aquired (Philipp Rudo) [1726416] - [s390] s390/crypto: use TRNG for seeding/reseeding (Philipp Rudo) [1726416] - [s390] s390/crypto: rework generate_entropy function for pseudo random dd (Philipp Rudo) [1726416] - [s390] s390: zcrypt: initialize variables before_use (Philipp Rudo) [1726416] - [powerpc] powerpc/pseries: Track LMB nid instead of using device tree (Steve Best) [1758742] - [powerpc] powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request (Steve Best) [1758742] - [net] hv_sock: Fix hang when a connection is closed (Cathy Avery) [1739477] - [net] hv_sock: Use consistent types for UUIDs (Cathy Avery) [1739477] - [net] hvsock: fix epollout hang from race condition (Cathy Avery) [1739477] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Cathy Avery) [1739477] - [net] hv_sock: perf: loop in send() to maximize bandwidth (Cathy Avery) [1739477] - [net] hv_sock: perf: Allow the socket buffer size options to influence the actual socket buffers (Cathy Avery) [1739477] - [net] hv_sock: Add support for delayed close (Cathy Avery) [1739477] - [powerpc] powerpc/rtas: allow rescheduling while changing cpu states (Steve Best) [1758651] - [powerpc] powerpc/pseries/mobility: use cond_resched when updating device tree (Steve Best) [1758651] - [tools] selftests/powerpc: Fix compile error on tlbie_test due to newer gcc (Desnes Augusto Nunes do Rosario) [1755707] - [tools] selftests/powerpc: Add test case for tlbie vs mtpidr ordering issue (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/mm: Fixup tlbie vs mtpidr/mtlpidr ordering issue on POWER9 (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/radix: Rename CPU_FTR_P9_TLBIE_BUG feature flag (Desnes Augusto Nunes do Rosario) [1755707] - [powerpc] powerpc/book3s64/mm: Don't do tlbie fixup for some hardware revisions (Desnes Augusto Nunes do Rosario) [1755707] - [scsi] scsi: zfcp: make DIX experimental, disabled, and independent of DIF (Philipp Rudo) [1723829] - [s390] s390: add support for IBM z15 machines (Philipp Rudo) [1757015] - [s390] s390/pci: add mio_enabled attribute (Philipp Rudo) [1757118] - [s390] s390: fix setting of mio addressing control (Philipp Rudo) [1757118] - [s390] s390/pci: correctly handle MIO opt-out (Philipp Rudo) [1757118] - [s390] s390/pci: deal with devices that have no support for MIO instructions (Philipp Rudo) [1757118] - [s390] s390/pci: fix assignment of bus resources (Philipp Rudo) [1757118] - [s390] s390/pci: fix struct definition for set PCI function (Philipp Rudo) [1757118] - [s390] s390/pci: fix MSI message data (Philipp Rudo) [1757123] - [powerpc] powerpc/tm: Add tm-poison test (Steve Best) [1756721] - [powerpc] powerpc/powernv: Add new opal message type (Desnes Augusto Nunes do Rosario) [1706975] - [powerpc] powerpc/powernv: Enhance opal message read interface (Desnes Augusto Nunes do Rosario) [1706975] - [char] hwrng: core - don't wait on add_early_randomness() (Laurent Vivier) [1660802] - [firmware] efi: Export Runtime Configuration Interface table to sysfs (Al Stone) [1665518] - [nvme] nvme: Treat discovery subsystems as unique subsystems (Ewan Milne) [1757525] - [powerpc] powerpc/powernv/opal: Use standard interrupts property when available (Steve Best) [1757173] - [powerpc] powerpc: dump kernel log before carrying out fadump or kdump (Steve Best) [1756922] - [kernel] genirq/affinity: Create affinity mask for single vector (Ming Lei) [1733420] - [virt] kvm: arm/arm64: Only skip MMIO insn once (Andrew Jones) [1733928] - [vfio] type1: remove duplicate retrieval of reserved regions (Auger Eric) [1704597] - [vfio] type1: Add IOVA range capability support (Auger Eric) [1704597] - [vfio] type1: check dma map request is within a valid iova range (Auger Eric) [1704597] - [vfio] type1: Update iova list on detach (Auger Eric) [1704597] - [vfio] type1: Check reserved region conflict and update iova list (Auger Eric) [1704597] - [vfio] type1: Introduce iova list and add iommu aperture validity check (Auger Eric) [1704597] - [iommu] Revisit iommu_insert_resv_region() implementation (Auger Eric) [1704597] - [iommu] vt-d: Differentiate relaxable and non relaxable RMRRs (Auger Eric) [1704597] - [iommu] Introduce IOMMU_RESV_DIRECT_RELAXABLE reserved memory regions (Auger Eric) [1704597] - [iommu] vt-d: Handle PCI bridge RMRR device scopes in intel_iommu_get_resv_regions (Auger Eric) [1704597] - [iommu] vt-d: Handle RMRR with PCI bridge device scopes (Auger Eric) [1704597] - [iommu] vt-d: Introduce is_downstream_to_pci_bridge helper (Auger Eric) [1704597] - [iommu] vt-d: Duplicate iommu_resv_region objects per device list (Auger Eric) [1704597] - [iommu] Fix a leak in iommu_insert_resv_region (Auger Eric) [1704597] - [pci] hv: Avoid use of hv_pci_dev->pci_slot after freeing it (Mohammed Gamal) [1737569]- [x86] kvm: x86: omit "impossible" pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix consistency check on injected exception error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: omit absent pmu MSRs from MSR list (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Fix libkvm build error (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Limit guest PMCs to those supported on the host (Vitaly Kuznetsov) [1749495] - [virt] kvm: x86, powerpc: do not allow clearing largepages debugfs entry (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: x86: clarify what is reported on KVM_GET_MSRS failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Set VMENTER_L1D_FLUSH_NOT_REQUIRED if !X86_BUG_L1TF (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: add test for dirty logging inside nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix nested guest live migration with PML (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: assign two bits to track SPTE kinds (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Expose XSAVEERPTR to the guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Enumerate support for CLZERO instruction (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use AMD CPUID semantics for AMD vCPUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Improve emulation of CPUID leaves 0BH and 1FH (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix userspace set invalid CR4 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix a spurious -E2BIG in __do_cpuid_func (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Loosen filter for adaptive tuning of lapic_timer_advance_ns (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: cleanup and fix host 64-bit mode checks (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix build warnings in hv_enable_direct_tlbflush() on i386 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't check kvm_rebooting in __kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Drop ____kvm_handle_fault_on_reboot() (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add error handling to VMREAD helper (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Optimize VMX instruction error and fault handling (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Check kvm_rebooting in kvm_spurious_fault() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: limit atomic switch MSRs (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Intercept RDPRU (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add "significant index" flag to a few CPUID leaves (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Skip invalid pages during zapping iff root_count is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Explicitly track only a single invalid mmu generation (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "kvm: x86/mmu: Remove is_obsolete() call" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: reclaim the zapped-obsolete page first"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: collapse TLB flushes when zap all pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: zap pages in batch"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: add tracepoint for kvm_mmu_invalidate_all_pages"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: revert "revert "kvm: mmu: show mmu_valid_gen in shadow page related tracepoints"" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Use fast invalidate mechanism to zap MMIO sptes (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Treat invalid shadow pages as obsolete (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Tune lapic_timer_advance_ns smoothly (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add comments to document various emulation types (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle single-step #DB for EMULTYPE_SKIP on EPT misconfig (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove emulation_result enums, EMULATE_{DONE, FAIL, USER_EXIT} (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Remove EMULATE_FAIL handling in handle_invalid_guest_state() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move triple fault request into RM int injection (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Handle emulation failure directly in kvm_task_switch() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Exit to userspace on emulation skip failure (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #UD injection for failed emulation into emulation code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add explicit flag for forced emulation on #UD (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move #GP injection for VMware into x86_emulate_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't attempt VMWare emulation on #GP with non-zero error code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor kvm_vcpu_do_singlestep() to remove out param (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Clean up handle_emulation_failure() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Relocate MMIO exit stats counting (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check Host Address Space Size on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hyperv_cpuid: add check for NoNonArchitecturalCoreSharing bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: hyper-v: set NoNonArchitecturalCoreSharing CPUID bit when SMT is impossible (Vitaly Kuznetsov) [1749495] - [kernel] cpu/smt: create and export cpu_smt_possible() (Vitaly Kuznetsov) [1749495] - [x86] kvm: hyperv: Fix Direct Synthetic timers assert an interrupt w/o lapic_in_kernel (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually flush collapsible SPTEs only when toggling flags (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicate guest mode handling (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Introduce VM_MODE_PXXV48_4K (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Create VM earlier for dirty log test (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Move vm type into _vm_create() internally (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: announce KVM_CAP_HYPERV_ENLIGHTENED_VMCS support only when it is available (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove unneeded nested_enable_evmcs() hook (Vitaly Kuznetsov) [1749495] - [x86] kvm/hyper-v/vmx: Add direct tlb flush support (Vitaly Kuznetsov) [1749495] - [documentation] kvm/hyper-v: Add new KVM capability KVM_CAP_HYPERV_DIRECT_TLBFLUSH (Vitaly Kuznetsov) [1749495] - [x86] hyper-v: Fix definition of struct hv_vp_assist_page (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel PMU MSRs to msrs_to_save[] (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use IPI shorthands in kvm guest when support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix INIT signal handling in various CPU states (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Introduce exit reason for receiving INIT signal on guest-mode (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Stop the preemption timer during vCPU reset (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Micro optimize IPI latency (Vitaly Kuznetsov) [1749495] - [x86] kvm: Nested KVM MMUs need PAE root too (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: set ctxt->have_exception in x86_decode_insn() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always stop emulation on page fault (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: trace nested VM-Enter failures detected by H/W (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: add tracepoint for failed nested VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix a check in nested_svm_vmrun() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Return to userspace with internal error on unexpected exit reason (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add kvm_emulate_{rd, wr}msr() to consolidate VXM/SVM code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Refactor up kvm_{g, s}et_msr() to simplify callers (Vitaly Kuznetsov) [1749495] - [documentation] doc: kvm: Fix return description of KVM_SET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Tune PLE Window tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Change ple_window type to unsigned int (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Remove tailing newline for tracepoints (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Trace vcpu_id for vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Manually calculate reserved bits when loading PDPTRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Disable posted interrupts for non-standard IRQs delivery modes (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix and tweak the comments for VM-Enter (Vitaly Kuznetsov) [1749495] - [x86] kvm: Assert that struct kvm_vcpu is always as offset zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add pv tlb shootdown tracepoint (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally call x86 ops that are always implemented (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Consolidate "is MMIO SPTE" code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Add explicit access mask for MMIO SPTEs (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Rename access permissions cache member in struct kvm_vcpu_arch (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate hardcoded RIP advancement from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: eliminate weird goto from vmrun_interception() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: remove hardcoded instruction length from intercepts (Vitaly Kuznetsov) [1749495] - [x86] kvm: add xsetbv to the emulator (Vitaly Kuznetsov) [1749495] - [x86] kvm: clear interrupt shadow on EMULTYPE_SKIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: propagate errors from skip_emulated_instruction() (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: don't pretend to advance RIP in case wrmsr_interception() results in #GP (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix x86_decode_insn() return when fetching insn bytes fails (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use Intel speculation bugs and features as derived in generic x86 code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: always expose VIRT_SSBD to guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix reporting of AMD speculation bug CPUID leaf (Vitaly Kuznetsov) [1749495] - [virt] kvm: Call kvm_arch_vcpu_blocking early into the blocking sequence (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/mmu: Reintroduce fast invalidate/zap for flushing memslot (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: work around leak of uninitialized stack contents (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: handle page fault in vmread (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Don't update RIP or do single-step on faulting emulation (Vitaly Kuznetsov) [1749495] - [tools] selftests/kvm: make platform_info_test pass on AMD (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: x86/mmu: Zap only the relevant pages when removing a memslot" (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix state save/load on processors without XSAVE (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: fix vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: provide common function to enable eVMCS (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: do not try running the VM in vmx_set_nested_state_test (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: svm: remove redundant assignment of var new_entry (Vitaly Kuznetsov) [1749495] - [tools] selftests: kvm: Adding config fragments (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Update gitignore file for latest changes (Vitaly Kuznetsov) [1749495] - [virt] kvm: remove unnecessary PageReserved check (Vitaly Kuznetsov) [1749495] - [x86] kvm: remove useless calls to kvm_para_available (Vitaly Kuznetsov) [1749495] - [x86] kvm: no need to check return value of debugfs_create functions (Vitaly Kuznetsov) [1749495] - [s390] kvm: remove kvm_arch_has_vcpu_debugfs() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix leak vCPU's VMCS value into other pCPU (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check preempted_in_kernel for involuntary preemption (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Don't need to wakeup vCPU twice afer timer fire (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Boost queue head vCPU to mitigate lock waiter preemption (Vitaly Kuznetsov) [1749495] - [documentation] documentation: move Documentation/virtual to Documentation/virt (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add fixed counters to PMU filter (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: dump VMCS on failed entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: refine kvm_pmu err msg when event creation failed (Vitaly Kuznetsov) [1749495] - [virt] kvm: Boost vCPUs that are delivering interrupts (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove superfluous define from vmx.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: Fix detection of AMD Errata 1096 (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Inject timer interrupt via posted interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: Don't call kvm_spurious_fault() from .fixup (Vitaly Kuznetsov) [1749495] - [x86] kvm: Replace vmx_vmenter()'s call to kvm_spurious_fault() with UD2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: Fix fastop function ELF metadata (Vitaly Kuznetsov) [1749495] - [x86] paravirt: Fix callee-saved function ELF sizes (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Make lapic timer unpinned (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/vpmu: reset pmc->counter to 0 for pmu fixed_counters (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Ignore segment base for VMX memory operand when segment not FS or GS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: ioapic and apic debug macros cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: some tsc debug cleanup (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix coccinelle warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid constant-conversion warning (Vitaly Kuznetsov) [1749495] - [x86] kvm: avoid -Wsometimes-uninitized warning (Vitaly Kuznetsov) [1749495] - [documentation] documentation: virtual: Add toctree hooks (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: Convert cpuid.txt to .rst (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Unconditionally enable irqs in guest context (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: PMU Event Filter (Vitaly Kuznetsov) [1749495] - [kernel] kvm: x86: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Properly check if "page" is valid in kvm_vcpu_unmap (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Retry tune per-vCPU timer_advance_ns if adaptive tuning goes insane (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: write down valid APIC registers (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: ARBPRI is a reserved register for x2APIC (Vitaly Kuznetsov) [1749495] - [x86] kvm nvmx: Check Host Segment Registers and Descriptor Tables on vmentry of nested guests (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Stash L1's CR3 in vmcs01.GUEST_CR3 on nested entry w/o EPT (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add tracepoints around __direct_map and FNAME(fetch) (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: change kvm_mmu_page_get_gfn BUG_ON to WARN_ON (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: remove now unneeded hugepage gfn adjustment (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: make FNAME(fetch) and __direct_map more similar (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Do not release the page inside mmu_set_spte() (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: remove has_leaf_count from struct kvm_cpuid_param (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: rename do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: set struct kvm_cpuid_entry2 flags in do_cpuid_1_ent (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: extract do_cpuid_7_mask and support multiple subleafs (Vitaly Kuznetsov) [1749495] - [x86] kvm: cpuid: do_cpuid_ent works on a whole CPUID function (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: remove the trailing newline used in the fmt parameter of TP_printk (Vitaly Kuznetsov) [1749495] - [x86] kvm: svm: add nrips module parameter (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: degrade WARN to pr_warn_ratelimited (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Pass through AMD_STIBP_ALWAYS_ON in GET_SUPPORTED_CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Remove unnecessary sync_roots from handle_invept (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: document CPUID bit for MSR_KVM_POLL_CONTROL (Vitaly Kuznetsov) [1749495] - [documentation] kvm: x86: Expose PV_SCHED_YIELD CPUID feature bit to guest (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Implement PV sched yield hypercall (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Yield to IPI target if necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: list VMX MSRs in KVM_GET_MSR_INDEX_LIST (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: allow setting the VMFUNC controls MSR (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: include conditional controls in /dev/kvm KVM_GET_MSRS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix apic dangling pointer in vcpu (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: check CPUID before allowing read/write of IA32_XSS (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Check for a kernel warning (Vitaly Kuznetsov) [1749495] - [tools] kvm: tests: Sort tests in the Makefile alphabetically (Vitaly Kuznetsov) [1749495] - [documentation] kvm: fix typo in documentation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: shadow pin based execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Leave preemption timer running when it's disabled (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Drop hv_timer_armed from 'struct loaded_vmcs' (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preset *DT exiting in vmcs02 when emulating UMIP (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Preserve last USE_MSR_BITMAPS when preparing vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Explicitly initialize controls shadow at VMCS allocation (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reset VMCS controls shadow on VMCS switch (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Shadow VMCS controls on a per-VMCS basis (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS secondary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS primary execution controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Shadow VMCS pin controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Add builder macros for shadowing controls (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use adjusted pin controls for vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Copy PDPTRs to/from vmcs12 only when necessary (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't update GUEST_BNDCFGS if it's clean in HV eVMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_DEBUGCTLMSR when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for SYSENTER MSRs when they're written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Update vmcs12 for MSR_IA32_CR_PAT when it's written (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write APIC-access page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't speculatively write virtual-APIC page address (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't dump VMCS if virtual APIC page can't be mapped (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't reread VMCS-agnostic state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't "put" vCPU or host state when switching VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: simplify vmx_prepare_switch_to_{guest, host} (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Don't rewrite GUEST_PML_INDEX during nested VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Write ENCLS-exiting bitmap once per vmcs02 (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Always sync GUEST_BNDCFGS when it comes from vmcs01 (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Always signal #GP on WRMSR to MSR_IA32_CR_PAT with bad value (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename prepare_vmcs02_*_full to prepare_vmcs02_*_rare (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Sync rarely accessed guest fields only when needed (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Add helpers to identify shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Use descriptive names for VMCS sync functions and flags (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Lift sync_vmcs12() out of prepare_vmcs12() (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Track vmcs12 offsets for shadowed VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to GUEST_{CS, SS}_AR_BYTES (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Intercept VMWRITEs to read-only shadow VMCS fields (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Handle NMIs, #MCs and async #PFs in common irqs-disabled fn (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_{before, after}_interrupt() calls to vendor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Store the host kernel's IDT base in a global variable (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Read cached VM-Exit reason to detect external interrupt (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: small cleanup in handle_exception (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix handling of #MC that occurs during VM-Entry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: move MSR_IA32_POWER_CTL handling to common code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: offset is ensure to be in range (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use same convention to name kvm_lapic_{set, clear}_vector() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: check kvm_apic_sw_enabled() is enough (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: add host poll control msrs (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: segment limit check: use access length (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: fix limit checking in get_vmx_mem_address() (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add Intel CPUID.1F cpuid emulation support (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Use DR_TRAP_BITS instead of hard-coded 15 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clean up conditions for asynchronous page fault handling (Vitaly Kuznetsov) [1749495] - [documentation] docs: amd-memory-encryption.rst get rid of warnings (Vitaly Kuznetsov) [1749495] - [virt] kvm: Convert kvm_lock to a mutex (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: remove unneeded 'asm volatile ("")' from vmcs_write64 (Vitaly Kuznetsov) [1749495] - [virt] kvm: irqchip: Use struct_size() in kzalloc() (Vitaly Kuznetsov) [1749495] - [x86] kvm/vmx: drop bad asm() clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: hide vcpu_setup in processor code (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Emulate MSR_IA32_MISC_ENABLE MWAIT bit (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Provide a capability to disable cstate msr read intercepts (Vitaly Kuznetsov) [1749495] - [documentation] kvm: documentation: Add disable pause exits to KVM_CAP_X86_DISABLE_EXITS (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: refine kvm_get_arch_capabilities() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Directly return result from kvm_arch_check_processor_compat() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Optimize timer latency further (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Delay trace_kvm_wait_lapic_expire tracepoint to after vmexit (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Extract adaptive tune timer advancement logic (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: properly map nested VMCB (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix reserved bits related calculation errors caused by MKTME (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Move kvm_set_mmio_spte_mask() from x86.c to mmu.c (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compile on s390 part 2 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: fix return value for reserved EFER (Vitaly Kuznetsov) [1749495] - [tools] kvm_stat: fix fields filter for child events (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: aarch64: compile with warnings on (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: do not mask the value that is written to fixed PMUs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86/pmu: mask the result of rdpmc according to the width of the counters (Vitaly Kuznetsov) [1749495] - [x86] kvm/pmu: Set AMD's virt PMU version to 1 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: do not spam dmesg with VMCS/VMCB dumps (Vitaly Kuznetsov) [1749495] - [virt] kvm: Check irqchip mode before assign irqfd (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Remove duplicated TEST_ASSERT in hyperv_cpuid.c (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Expose per-vCPU timer_advance_ns to userspace (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Fix lapic_timer_advance_ns parameter overflow (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Fix -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Fix using __this_cpu_read() in preemptible context (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on s390 (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include CPUID leaf 0x8000001e in kvm's supported CPUID (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Include multiple indices with CPUID leaf 0x8000001d (Vitaly Kuznetsov) [1749495] - [tools] kvm: selftests: Fix a condition in test_hv_cpuid() (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix spinlock taken warning during host resume (Vitaly Kuznetsov) [1749495] - [virt] kvm: fix compilation on aarch64 (Vitaly Kuznetsov) [1749495] - [x86] revert "kvm: nvmx: Expose RDPMC-exiting only when guest supports PMU" (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Fix L1TF mitigation for shadow MMU (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Disable intercept for FS/GS base MSRs in vmcs02 when possible (Vitaly Kuznetsov) [1749495] - [tools] tests: kvm: Add tests to .gitignore (Vitaly Kuznetsov) [1749495] - [documentation] kvm: Introduce KVM_CAP_MANUAL_DIRTY_LOG_PROTECT2 (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix kvm_clear_dirty_log_protect off-by-(minus-)one (Vitaly Kuznetsov) [1749495] - [virt] kvm: Fix the bitmap range to copy during clear dirty (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: use direct accessors for RIP and RSP (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Use accessors for GPRs outside of dedicated caching logic (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Omit caching logic for always-available GPRs (Vitaly Kuznetsov) [1749495] - [x86] kvm, x86: Properly check whether a pfn is an MMIO or not (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use page_address_valid in a few more locations (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the enlightened VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map for accessing the shadow VMCS (Vitaly Kuznetsov) [1749495] - [x86] kvm/nsvm: Use the new mapping API for mapping guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm/x86: Use kvm_vcpu_map in emulator_cmpxchg_emulated (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the posted interrupt descriptor table (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the virtual APIC page (Vitaly Kuznetsov) [1749495] - [x86] kvm/nvmx: Use kvm_vcpu_map when mapping the L1 MSR bitmap (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmptrld: Use kvm_vcpu_map when copying VMCS12 from guest memory (Vitaly Kuznetsov) [1749495] - [virt] kvm: Introduce a new guest mapping API (Vitaly Kuznetsov) [1749495] - [x86] kvm: Handle PFNs outside of kernel reach when touching GPTEs (Vitaly Kuznetsov) [1749495] - [x86] nvmx: Update the PML table without mapping and unmapping the page (Vitaly Kuznetsov) [1749495] - [x86] nvmx: handle_vmon: Read 4 bytes from guest memory (Vitaly Kuznetsov) [1749495] - [x86] kvm: Implement HWCR support (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Include architectural defs header in capabilities.h (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: clean up some debug output (Vitaly Kuznetsov) [1749495] - [virt] kvm_main: fix some comments (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Skip delta_tsc shift-and-divide if the dividend is zero (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Check for a pending timer intr prior to start_hv_timer() (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Refactor ->set_hv_timer to use an explicit expired param (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Explicitly cancel the hv timer if it's pre-expired (Vitaly Kuznetsov) [1749495] - [x86] kvm: lapic: Busy wait for timer to expire when using hv_timer (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: Nop emulation of MSR_IA32_POWER_CTL (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Add support of clear Trace_ToPA_PMI status (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject PMI for KVM guest (Vitaly Kuznetsov) [1749495] - [documentation] revert "kvm: doc: Document the life cycle of a VM and its resources" (Vitaly Kuznetsov) [1749495] - [documentation] documentation: kvm: fix dirty log ioctl arch lists (Vitaly Kuznetsov) [1749495] - [x86] kvm: Make steal_time visible (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Inject #GP if guest attempts to set unsupported EFER bits (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Skip EFER vs. guest CPUID checks for host-initiated writes (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Return -EINVAL when signaling failure in pre-VM-Entry helpers (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Rename and split top-level consistency checks to match SDM (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Move guest non-reg state checks to VM-Exit path (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-entry control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: nvmx: Check "load IA32_PAT" VM-exit control on vmentry (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: optimize check for valid PAT value (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: clear VM_EXIT_SAVE_IA32_PAT (Vitaly Kuznetsov) [1749495] - [x86] kvm: vmx: print more APICv fields in dump_vmcs (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: Raise #GP when guest vCPU do not support PMU (Vitaly Kuznetsov) [1749495] - [documentation] kvm: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1749495] - [x86] kvm: x86: skip populating logical dest map if apic is not sw enabled (Bandan Das) [1728503] - [powerpc] kvm: ppc: book3s: Fix incorrect guest-to-user-translation error handling (David Gibson) [1749504] - [powerpc] kvm: Fall through switch case explicitly (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix CR0 setting in TM emulation (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Invalidate ERAT when flushing guest TLB entries (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Only write DAWR[X] when handling h_set_dawr in real mode (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: xive: Fix spelling mistake "acessing" -> "accessing" (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Make sure to load LPID for radix VCPUs (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Flush TLB on secondary radix threads (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Move HPT guest TLB flushing to C code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Handle virtual mode in XIVE VCPU push code (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: smb->smp comment fixup (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Allocate guest TCEs on demand too (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Avoid lockdep debugging in TCE realmode handlers (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Fix lockdep warning when entering the guest (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement real mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s hv: Implement virtual mode H_PAGE_INIT handler (David Gibson) [1749504] - [powerpc] kvm: ppc: book3s: Protect memslots while validating user address (David Gibson) [1749504] - [pci] PCI: hv: Use bytes 4 and 5 from instance ID as the PCI domain numbers (Mohammed Gamal) [1671288] - [pci] PCI: hv: Detect and fix Hyper-V PCI domain number collision (Mohammed Gamal) [1671288] - [fs] Revert "lockd: Show pid of lockd for remote locks" (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops in nfs4_do_setattr (Benjamin Coddington) [1732409] - [fs] NFSv4: Check the return value of update_open_stateid() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix delegation state recovery (Benjamin Coddington) [1732409] - [fs] pnfs/flexfiles: Fix PTR_ERR() dereferences in ff_layout_track_ds_error (Benjamin Coddington) [1732409] - [fs] Revert "NFS: readdirplus optimization by cache mechanism" (memleak) (Benjamin Coddington) [1732409] - [fs] svcrdma: Ignore source port when computing DRC hash (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Use the correct TCP timeout for flexfiles I/O (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix bug only first CB_NOTIFY_LOCK is handled (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Again fix a race where CB_NOTIFY_LOCK fails to wake a waiter (Benjamin Coddington) [1732409] - [fs] SUNRPC fix regression in umount of a secure mount (Benjamin Coddington) [1732409] - [fs] NFS4: Fix v4.0 client state corruption when mount (Benjamin Coddington) [1732409] - [fs] NFSv4: When recovering state fails with EAGAIN, retry the same recovery (Benjamin Coddington) [1732409] - [fs] pnfs: Fix a problem where we gratuitously start doing I/O through the MDS (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure the bvecs are reset when we re-encode the RPC request (Benjamin Coddington) [1732409] - [fs] sunrpc/cache: remove the exporting of cache_seq_next (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a use after free when a server rejects the RPCSEC_GSS credential (Benjamin Coddington) [1732409] - [fs] xprtrdma: Fix an frwr_map recovery nit (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix incorrect return value in copy_file_range (Benjamin Coddington) [1732409] - [fs] NFS: Fix handling of reply page vector (Benjamin Coddington) [1732409] - [fs] NFS: Forbid setting AF_INET6 to "struct sockaddr_in"->sin_family. (Benjamin Coddington) [1732409] - [fs] nfsd: Don't release the callback slot unless it was actually held (Benjamin Coddington) [1732409] - [fs] nfsd/nfsd3_proc_readdir: fix buffer count and page pointers (Benjamin Coddington) [1732409] - [fs] sunrpc: don't mark uninitialised items as VALID. (Benjamin Coddington) [1732409] - [fs] SUNRPC: fix uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Fix layoutstats handling during read failovers (Benjamin Coddington) [1732409] - [fs] NFS: Fix a typo in nfs_init_timeout_values() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't let RPC_SOFTCONN tasks time out if the transport is connected (Benjamin Coddington) [1732409] - [fs] NFS: fix mount/umount race in nlmclnt. (Benjamin Coddington) [1732409] - [fs] NFS: Fix nfs4_lock_state refcounting in nfs4_alloc_{lock, unlock}data() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant check for the reply length in call_decode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle the SYSTEM_ERR rpc error (Benjamin Coddington) [1732409] - [fs] SUNRPC: rpc_decode_header() must always return a non-zero value on error (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the ENOTCONN error on socket disconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix the minimal size for reply buffer allocation (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a client regression when handling oversized replies (Benjamin Coddington) [1732409] - [fs] pNFS: Fix a typo in pnfs_update_layout (Benjamin Coddington) [1732409] - [fs] SUNRPC: Take the transport send lock before binding+connecting (Benjamin Coddington) [1732409] - [fs] SUNRPC: Micro-optimise when the task is known not to be sleeping (Benjamin Coddington) [1732409] - [fs] SUNRPC: Check whether the task was transmitted before rebind/reconnect (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove redundant calls to RPC_IS_QUEUED() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up (Benjamin Coddington) [1732409] - [fs] nfsd: allow nfsv3 readdir request to be larger. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Respect RPC call timeouts when retrying transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up RPC back channel transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Prevent thundering herd when the socket is not connected (Benjamin Coddington) [1732409] - [fs] nfsd: fix wrong check in write_v4_end_grace() (Benjamin Coddington) [1732409] - [fs] nfsd: fix memory corruption caused by readdir (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow dynamic allocation of back channel slots (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Bump the default callback session slot count to 16 (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert remaining GFP_NOIO, and GFP_NOWAIT sites in sunrpc (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Clean up mirror DS initialisation (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove dead code in ff_layout_mirror_valid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_select_ds_stateid() (Benjamin Coddington) [1732409] - [fs] NFS/flexfile: Simplify nfs4_ff_layout_ds_version() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify ff_layout_get_ds_cred() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_find_or_create_ds_client() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Simplify nfs4_ff_layout_select_ds_fh() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Speed up read failover when DSes are down (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Don't invalidate DS deviceids for being unresponsive (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Remove bogus checks for invalid deviceids (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Avoid unnecessary layout invalidations (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: refactor calls to fs4_ff_layout_prepare_ds() (Benjamin Coddington) [1732409] - [fs] NFSv4: Handle early exit in layoutget by returning an error (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Send LAYOUTERROR when failing over mirrored reads (Benjamin Coddington) [1732409] - [fs] NFSv4.2: Add client support for the generic 'layouterror' RPC call (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Abort I/O early if the layout segment was invalidated (Benjamin Coddington) [1732409] - [fs] NFSv4/pnfs: Fix barriers in nfs4_mark_deviceid_unavailable() (Benjamin Coddington) [1732409] - [fs] NFS/flexfiles: Fix up sparse RCU annotations (Benjamin Coddington) [1732409] - [fs] NFSv4/flexfiles: Fix invalid deref in FF_LAYOUT_DEVID_NODE() (Benjamin Coddington) [1732409] - [fs] NFS: Add missing encode / decode sequence_maxsz to v4.2 operations (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Don't process the sequence op more than once. (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Reinitialise sequence results before retransmitting a request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix an Oops in udp_poll() (Benjamin Coddington) [1732409] - [fs] NFS/pnfs: Bulk destroy of layouts needs to be safe w.r.t. umount (Benjamin Coddington) [1732409] - [fs] NFS: Fix a soft lockup in the delegation recovery code (Benjamin Coddington) [1732409] - [fs] nfsd: fix performance-limiting session calculation (Benjamin Coddington) [1732409] - [fs] svcrpc: fix UDP on servers with lots of threads (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the redundant 'zerocopy' argument to xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Further cleanups of xs_sendpages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert socket page send code to use iov_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xs_send_kvec() to use iov_iter_kvec() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Initiate a connection close on an ESHUTDOWN error in stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't suppress socket errors when a message read completes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Handle zero length fragments correctly (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the stream record info when the receive worker is running (Benjamin Coddington) [1732409] - [fs] nfs: fix xfstest generic/099 failed on nfsv3 (Benjamin Coddington) [1732409] - [fs] NFS: Fix typo in comments of nfs_readdir_alloc_pages() (Benjamin Coddington) [1732409] - [fs] NFS: Remove redundant semicolon (Benjamin Coddington) [1732409] - [fs] NFS: readdirplus optimization by cache mechanism (Benjamin Coddington) [1732409] - [fs] fs/nfs: Fix nfs_parse_devname to not modify it's argument (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove pointless test in unx_match() (Benjamin Coddington) [1732409] - [fs] NFS: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use poll() to fix up the socket requeue races (Benjamin Coddington) [1732409] - [fs] SUNRPC: Set memalloc_nofs_save() on all rpciod/xprtiod jobs (Benjamin Coddington) [1732409] - [fs] NFS: Fix sparse annotations for nfs_set_open_stateid_locked() (Benjamin Coddington) [1732409] - [fs] NFS: Fix up documentation warnings (Benjamin Coddington) [1732409] - [fs] NFS: ENOMEM should also be a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: EINTR is also a fatal error. (Benjamin Coddington) [1732409] - [fs] NFS: Ensure NFS writeback allocations don't recurse back into NFS. (Benjamin Coddington) [1732409] - [fs] NFS: Pass error information to the pgio error cleanup routine (Benjamin Coddington) [1732409] - [fs] NFS: Clean up list moves of struct nfs_page (Benjamin Coddington) [1732409] - [fs] NFS: Don't recoalesce on error in nfs_pageio_complete_mirror() (Benjamin Coddington) [1732409] - [fs] NFS: Fix an I/O request leakage in nfs_do_recoalesce (Benjamin Coddington) [1732409] - [fs] NFS: Fix I/O request leakages (Benjamin Coddington) [1732409] - [fs] Revert "nfsd4: return default lease period" (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use au_rslack when computing reply buffer size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add rpc_auth::au_ralign field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make AUTH_SYS and AUTH_NULL set au_verfsize (Benjamin Coddington) [1732409] - [fs] NFS: Account for XDR pad of buf->pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce rpc_prepare_reply_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xdr_buf_trim() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Introduce trace points in rpc_auth_gss.ko (Benjamin Coddington) [1732409] - [fs] xprtrdma: Squelch a sparse warning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when decoding RPC Reply header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up rpc_verify_header() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use struct xdr_stream when constructing RPC Call header (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add build option to disable support for insecure enctypes (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_xprt::tsh_size (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove some dprintk() call sites from auth functions (Benjamin Coddington) [1732409] - [fs] NFS: Add trace events to report non-zero NFS status codes (Benjamin Coddington) [1732409] - [fs] NFS: Remove print_overflow_msg() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add trace event that reports reply page vector alignment (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add XDR overflow trace event (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add xdr_stream::rqst field (Benjamin Coddington) [1732409] - [fs] SUNRPC: Display symbolic flag names in RPC trace events (Benjamin Coddington) [1732409] - [fs] rpc: properly check debugfs dentry before using it (Benjamin Coddington) [1732409] - [fs] svcrpc: fix unlikely races preventing queueing of sockets (Benjamin Coddington) [1732409] - [fs] svcrpc: svc_xprt_has_something_to_do seems a little long (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't allow compiler optimisation of svc_xprt_release_slot() (Benjamin Coddington) [1732409] - [fs] nfsd: fix an IS_ERR() vs NULL check (Benjamin Coddington) [1732409] - [fs] nfsd: Fix error return values for nfsd4_clone_file_range() (Benjamin Coddington) [1732409] - [fs] nfs: Fix NULL pointer dereference of dev_name (Benjamin Coddington) [1732409] - [fs] SUNRPC: Address Kerberos performance/behavior regression (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure we respect the RPCSEC_GSS sequence number limit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Ensure rq_bytes_sent is reset before request transmission (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix unnecessary retry in nfs4_copy_file_range (Benjamin Coddington) [1732409] - [fs] sunrpc: kernel BUG at kernel/cred.c:825! (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix TCP receive code on archs with flush_dcache_page() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert to DEFINE_SHOW_ATTRIBUTE (Benjamin Coddington) [1732409] - [fs] sunrpc: Add xprt after nfs4_test_session_trunk() (Benjamin Coddington) [1732409] - [fs] sunrpc: convert unnecessary GFP_ATOMIC to GFP_NOFS (Benjamin Coddington) [1732409] - [fs] sunrpc: handle ENOMEM in rpcb_getport_async (Benjamin Coddington) [1732409] - [fs] NFS: remove unnecessary test for IS_ERR(cred) (Benjamin Coddington) [1732409] - [fs] NFSv4.2 fix async copy reboot recovery (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix some kernel doc complaints (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify defining common RPC trace events (Benjamin Coddington) [1732409] - [fs] NFS: Fix NFSv4 symbolic trace point output (Benjamin Coddington) [1732409] - [fs] nfs: fixed broken compilation in nfs_callback_up_net() (Benjamin Coddington) [1732409] - [fs] nfs: minor typo in nfs4_callback_up_net() (Benjamin Coddington) [1732409] - [fs] sunrpc: fix debug message in svc_create_xprt() (Benjamin Coddington) [1732409] - [fs] sunrpc: remove svc_rdma_bc_class (Benjamin Coddington) [1732409] - [fs] sunrpc: remove unused bc_up operation from rpc_xprt_ops (Benjamin Coddington) [1732409] - [fs] sunrpc: use SVC_NET() in svcauth_gss_* functions (Benjamin Coddington) [1732409] - [fs] nfsd: drop useless LIST_HEAD (Benjamin Coddington) [1732409] - [fs] SUNRPC discard cr_uid from struct rpc_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: simplify auth_unix. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove crbind rpc_cred operation (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove generic cred code. (Benjamin Coddington) [1732409] - [fs] NFS/NFSD/SUNRPC: replace generic creds with 'struct cred'. (Benjamin Coddington) [1732409] - [fs] NFS: struct nfs_open_dir_context: convert rpc_cred pointer to cred. (Benjamin Coddington) [1732409] - [fs] NFS: change access cache to use 'struct cred'. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove RPCAUTH_AUTH_NO_CRKEY_TIMEOUT (Benjamin Coddington) [1732409] - [fs] NFS: move credential expiry tracking out of SUNRPC into NFS. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add side channel to use non-generic cred for rpc call. (Benjamin Coddington) [1732409] - [fs] SUNRPC: introduce RPC_TASK_NULLCREDS to request auth_none (Benjamin Coddington) [1732409] - [fs] NFS/SUNRPC: don't lookup machine credential until rpcauth_bindcred(). (Benjamin Coddington) [1732409] - [fs] SUNRPC: discard RPC_DO_ROOTOVERRIDE() (Benjamin Coddington) [1732409] - [fs] NFSv4: don't require lock for get_renew_cred or get_machine_cred (Benjamin Coddington) [1732409] - [fs] NFSv4: add cl_root_cred for use when machine cred is not available. (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove machine_cred field from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove uid and gid from struct auth_cred (Benjamin Coddington) [1732409] - [fs] SUNRPC: remove groupinfo from struct auth_cred. (Benjamin Coddington) [1732409] - [fs] SUNRPC: add 'struct cred *' to auth_cred and rpc_cred (Benjamin Coddington) [1732409] - [fs] cred: allow get_cred() and put_cred() to be given NULL. (Benjamin Coddington) [1732409] - [fs] cred: export get_task_cred(). (Benjamin Coddington) [1732409] - [fs] cred: add get_cred_rcu() (Benjamin Coddington) [1732409] - [fs] cred: add cred_fscmp() for comparing creds. (Benjamin Coddington) [1732409] - [fs] SUNRPC: allow /proc entries without CONFIG_SUNRPC_DEBUG (Benjamin Coddington) [1732409] - [fs] nfs: fix comment to nfs_generic_pg_test which does the opposite (Benjamin Coddington) [1732409] - [fs] NFSv4: cleanup remove unused nfs4_xdev_fs_type (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove xprt_connect_status() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a race with XPRT_CONNECTING (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix disconnection races (Benjamin Coddington) [1732409] - [fs] Revert "[net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down"" (Benjamin Coddington) [1732409] - [fs] lockd: Show pid of lockd for remote locks (Benjamin Coddington) [1732409] - [fs] NFSD remove OP_CACHEME from 4.2 op_flags (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't force a redundant disconnection in xs_read_stream() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up socket polling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use the discard iterator rather than MSG_TRUNC (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat EFAULT as a truncated message in xs_read_stream_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up handling of the XDRBUF_SPARSE_PAGES flag (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix RPC receive hangs (Benjamin Coddington) [1732409] - [fs] nfsd: Return EPERM, not EACCES, in some SETATTR cases (Benjamin Coddington) [1732409] - [fs] sunrpc: fix cache_head leak due to queued request (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a potential race in xprt_connect() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a memory leak in call_encode() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix leak of krb5p encode pages (Benjamin Coddington) [1732409] - [fs] SUNRPC: call_connect_status() must handle tasks that got transmitted (Benjamin Coddington) [1732409] - [fs] nfs: don't dirty kernel pages read by direct-io (Benjamin Coddington) [1732409] - [fs] NFS: use locks_copy_lock() to copy locks. (Benjamin Coddington) [1732409] - [fs] nfsd: clean up indentation, increase indentation in switch statement (Benjamin Coddington) [1732409] - [fs] nfsd: fix a warning in __cld_pipe_upcall() (Benjamin Coddington) [1732409] - [fs] lockd: fix decoding of TEST results (Benjamin Coddington) [1732409] - [fs] nfsd4: fix crash on writing v4_end_grace before nfsd startup (Benjamin Coddington) [1732409] - [fs] nfsd4: skip unused assignment (Benjamin Coddington) [1732409] - [fs] nfsd4: forbid all renames during grace period (Benjamin Coddington) [1732409] - [fs] nfsd4: remove unused nfs4_check_olstateid parameter (Benjamin Coddington) [1732409] - [fs] nfsd4: zero-length WRITE should succeed (Benjamin Coddington) [1732409] - [fs] NFSv4.2 copy do not allocate memory under the lock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a NFSv4 state manager deadlock (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix an Oops during delegation callbacks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a bogus get/put in generic_key_to_expire() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a Oops when destroying the RPCSEC_GSS credential cache (Benjamin Coddington) [1732409] - [fs] NFSv4: Ensure that the state manager exits the loop on SIGKILL (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't exit the state manager without clearing NFS4CLNT_MANAGER_RUNNING (Benjamin Coddington) [1732409] - [fs] SUNRPC: drop pointless static qualifier in xdr_get_next_encode_buffer() (Benjamin Coddington) [1732409] - [fs] nfsd: COPY and CLONE operations require the saved filehandle to be set (Benjamin Coddington) [1732409] - [fs] sunrpc: correct the computation for page_ptr when truncating (Benjamin Coddington) [1732409] - [fs] NFS: fix spelling mistake, EACCESS -> EACCES (Benjamin Coddington) [1732409] - [fs] SUNRPC: Use atomic(64)_t for seq_send(64) (Benjamin Coddington) [1732409] - [fs] nfsd: Fix an Oops in free_session() (Benjamin Coddington) [1732409] - [fs] nfsd: correctly decrement odstate refcount in error path (Benjamin Coddington) [1732409] - [fs] nfsd: fix fall-through annotations (Benjamin Coddington) [1732409] - [fs] knfsd: Improve lookup performance in the duplicate reply cache using an rbtree (Benjamin Coddington) [1732409] - [fs] knfsd: Further simplify the cache lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Simplify NFS duplicate replay cache (Benjamin Coddington) [1732409] - [fs] knfsd: Remove dead code from nfsd_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace the cache_detail->hash_lock with a regular spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove non-RCU protected lookup (Benjamin Coddington) [1732409] - [fs] NFS: Fix up a typo in nfs_dns_ent_put (Benjamin Coddington) [1732409] - [fs] NFS: Lockless DNS lookups (Benjamin Coddington) [1732409] - [fs] knfsd: Lockless lookup of NFSv4 identities. (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless server RPCSEC_GSS context lookup (Benjamin Coddington) [1732409] - [fs] knfsd: Allow lockless lookups of the exports (Benjamin Coddington) [1732409] - [fs] SUNRPC: Make server side AUTH_UNIX use lockless lookups (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow cache lookups to use RCU protection rather than the r/w spinlock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the auth cred cache to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert auth creds to use refcount_t (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify lookup code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up the AUTH cache code (Benjamin Coddington) [1732409] - [fs] NFS: change sign of nfs_fh length (Benjamin Coddington) [1732409] - [fs] sunrpc: safely reallow resvport min/max inversion (Benjamin Coddington) [1732409] - [fs] nfs: remove redundant call to nfs_context_set_write_error() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix a compile warning for cmpxchg64() (Benjamin Coddington) [1732409] - [fs] SUNRPC: use cmpxchg64() in gss_seq_send64_fetch_and_inc() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor sunrpc_cache_lookup (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add lockless lookup of the server's auth domain (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove the server 'authtab_lock' and just use RCU (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix lookup revalidate of regular files (Benjamin Coddington) [1732409] - [fs] NFS: Refactor nfs_lookup_revalidate() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Replace krb5_seq_lock with a lockless scheme (Benjamin Coddington) [1732409] - [fs] SUNRPC: Lockless lookup of RPCSEC_GSS mechanisms (Benjamin Coddington) [1732409] - [fs] SUNRPC: Remove rpc_authflavor_lock in favour of RCU locking (Benjamin Coddington) [1732409] - [fs] NFS: Remove private spinlock in struct nfs_pgio_header (Benjamin Coddington) [1732409] - [fs] NFSv3: Improve NFSv3 performance when server returns no post-op attributes (Benjamin Coddington) [1732409] - [fs] NFSv4: Split out NFS v4.2 copy completion functions (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of nfs4_recovery_handle_error() (Benjamin Coddington) [1732409] - [fs] NFS: Reduce indentation of the switch statement in nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFS: Split out the body of nfs4_reclaim_open_state() (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix the r/wsize checking (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert struct nfs4_state to use refcount_t (Benjamin Coddington) [1732409] - [fs] NFSv4: Convert open state lookup to use RCU (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the open context to RCU (Benjamin Coddington) [1732409] - [fs] NFS: Simplify internal check for whether file is open for write (Benjamin Coddington) [1732409] - [fs] NFS: Convert lookups of the lock context to RCU (Benjamin Coddington) [1732409] - [fs] pNFS: Don't allocate more pages than we need to fit a layoutget response (Benjamin Coddington) [1732409] - [fs] pNFS: Don't zero out the array in nfs4_alloc_pages() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Unexport xdr_partial_copy_from_skb() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up xs_udp_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow AF_LOCAL sockets to use the generic stream receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up - rename xs_tcp_data_receive() to xs_stream_data_receive() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify TCP receive code by switching to using iterators (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a bvec array to struct xdr_buf for use with iovec_iter() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a label for RPC calls that require allocation on receive (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert the xprt->sending queue back to an ordinary wait queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix priority queue fairness (Benjamin Coddington) [1732409] - [fs] SUNRPC: Convert xprt receive queue to use an rbtree (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't take transport->lock unnecessarily when taking XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Cleanup: remove the unused 'task' argument from the request_send() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Clean up transport write space handling (Benjamin Coddington) [1732409] - [fs] SUNRPC: Turn off throttling of RPC slots for TCP sockets (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow soft RPC calls to time out when waiting for the XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Allow calls to xprt_transmit() to drain the entire transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Enqueue swapper tagged RPCs at the head of the transmit queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Support for congestion control when queuing is enabled (Benjamin Coddington) [1732409] - [fs] SUNRPC: Improve latency for interactive tasks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move RPC retransmission stat counter to xprt_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify xprt_prepare_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't reset the request 'bytes_sent' counter when releasing XPRT_LOCK (Benjamin Coddington) [1732409] - [fs] SUNRPC: Treat the task and request as separate in the xprt_ops->send_request() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Fix up the back channel transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor RPC call encoding (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a transmission queue for RPC requests (Benjamin Coddington) [1732409] - [fs] SUNRPC: Distinguish between the slot allocation list and receive queue (Benjamin Coddington) [1732409] - [fs] SUNRPC: Minor cleanup for call_transmit() (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove wait for reply code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor xprt_transmit() to remove the reply queue code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename xprt->recv_lock to xprt->queue_lock (Benjamin Coddington) [1732409] - [fs] SUNRPC: Don't wake queued RPC calls multiple times in xprt_transmit (Benjamin Coddington) [1732409] - [fs] SUNRPC: Test whether the task is queued before grabbing the queue spinlocks (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add a helper to wake up a sleeping rpc_task and set its status (Benjamin Coddington) [1732409] - [fs] SUNRPC: Refactor the transport request pinning (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify dealing with aborted partially transmitted messages (Benjamin Coddington) [1732409] - [fs] SUNRPC: Add socket transmit queue offset tracking (Benjamin Coddington) [1732409] - [fs] SUNRPC: Move reset of TCP state variables into the reconnect code (Benjamin Coddington) [1732409] - [fs] SUNRPC: Rename TCP receive-specific state variables (Benjamin Coddington) [1732409] - [fs] SUNRPC: Avoid holding locks across the XDR encoding of the RPC message (Benjamin Coddington) [1732409] - [fs] SUNRPC: Simplify identification of when the message send/receive is complete (Benjamin Coddington) [1732409] - [fs] SUNRPC: The transmitted message must lie in the RPCSEC window of validity (Benjamin Coddington) [1732409] - [fs] SUNRPC: If there is no reply expected, bail early from call_decode (Benjamin Coddington) [1732409] - [fs] nfsd: remove set but not used variable 'dirp' (Benjamin Coddington) [1732409] - [fs] NFSD introduce async copy feature (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFSD OFFLOAD_STATUS xdr (Benjamin Coddington) [1732409] - [fs] NFSD CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Don't open code clearing of delegation state (Benjamin Coddington) [1732409] - [fs] NFSv4.1 fix infinite loop on I/O. (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] pNFS: Ensure we return the error if someone kills a waiting layoutget (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a tracepoint Oops in initiate_file_draining() (Benjamin Coddington) [1732409] - [fs] sunrpc: Add comment defining gssd upcall API keywords (Benjamin Coddington) [1732409] - [fs] nfsd: Remove callback_cred (Benjamin Coddington) [1732409] - [fs] nfsd: Use correct credential for NFSv4.0 callback with GSS (Benjamin Coddington) [1732409] - [fs] sunrpc: Extract target name into svc_cred (Benjamin Coddington) [1732409] - [fs] sunrpc: Enable the kernel to specify the hostname part of service principals (Benjamin Coddington) [1732409] - [fs] pNFS: Remove unwanted optimisation of layoutget (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: ff_layout_pg_init_read should exit on error (Benjamin Coddington) [1732409] - [fs] pNFS: Treat RECALLCONFLICT like DELAY... (Benjamin Coddington) [1732409] - [fs] pNFS: When updating the stateid in layoutreturn, also update the recall range (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence() (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix locking in pnfs_generic_recover_commit_reqs (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix a typo in nfs4_init_channel_attrs() (Benjamin Coddington) [1732409] - [fs] NFSv4: Don't busy wait if NFSv4 session draining is interrupted (Benjamin Coddington) [1732409] - [fs] NFS recover from destination server reboot for copies (Benjamin Coddington) [1732409] - [fs] nfsd: use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] nfsd: constify write_op[] (Benjamin Coddington) [1732409] - [fs] fs/nfsd: Delete invalid assignment statements in nfsd4_decode_exchange_id (Benjamin Coddington) [1732409] - [fs] NFSD: Handle full-length symlinks (Benjamin Coddington) [1732409] - [fs] NFSD: Refactor the generic write vector fill helper (Benjamin Coddington) [1732409] - [fs] nfsd: Mark expected switch fall-through (Benjamin Coddington) [1732409] - [fs] nfsd: fix leaked file lock with nfs exported overlayfs (Benjamin Coddington) [1732409] - [fs] NFS add a simple sync nfs4_proc_commit after async COPY (Benjamin Coddington) [1732409] - [fs] NFS handle COPY ERR_OFFLOAD_NO_REQS (Benjamin Coddington) [1732409] - [fs] NFS send OFFLOAD_CANCEL when COPY killed (Benjamin Coddington) [1732409] - [fs] NFS export nfs4_async_handle_error (Benjamin Coddington) [1732409] - [fs] NFS handle COPY reply CB_OFFLOAD call race (Benjamin Coddington) [1732409] - [fs] NFS add support for asynchronous COPY (Benjamin Coddington) [1732409] - [fs] NFS COPY xdr handle async reply (Benjamin Coddington) [1732409] - [fs] NFS OFFLOAD_CANCEL xdr (Benjamin Coddington) [1732409] - [fs] NFS CB_OFFLOAD xdr (Benjamin Coddington) [1732409] - [fs] NFS: Use an appropriate work queue for direct-write completion (Benjamin Coddington) [1732409] - [fs] NFSv4: Fix error handling in nfs4_sp4_select_mode() (Benjamin Coddington) [1732409] - [fs] pnfs: Use true and false for boolean values (Benjamin Coddington) [1732409] - [fs] pnfs: pnfs_find_lseg() should not check NFS_LSEG_LAYOUTRETURN (Benjamin Coddington) [1732409] - [fs] NFS: Mark expected switch fall-throughs (Benjamin Coddington) [1732409] - [fs] NFSv4: Mark the inode change attribute up to date in update_changeattr() (Benjamin Coddington) [1732409] - [fs] NFSv4: Detect nlink changes on cross-directory renames too (Benjamin Coddington) [1732409] - [fs] NFSv4: bump/drop the nlink count on the parent dir when we mkdir/rmdir (Benjamin Coddington) [1732409] - [fs] pnfs: Fix handling of NFS4ERR_OLD_STATEID replies to layoutreturn (Benjamin Coddington) [1732409] - [fs] sunrpc: whitespace fixes (Benjamin Coddington) [1732409] - [fs] NFSv4 client live hangs after live data migration recovery (Benjamin Coddington) [1732409] - [fs] NFSv4.0 fix client reference leak in callback (Benjamin Coddington) [1732409] - [fs] sunrpc: kstrtoul() can also return -ERANGE (Benjamin Coddington) [1732409] - [fs] NFS: silence a harmless uninitialized variable warning (Benjamin Coddington) [1732409] - [fs] net/sunrpc: Make rpc_auth_create_args a const (Benjamin Coddington) [1732409] - [fs] pnfs/blocklayout: off by one in bl_map_stripe() (Benjamin Coddington) [1732409] - [fs] nfs: Referrals not inheriting proto setting from parent (Benjamin Coddington) [1732409] - [fs] nfs: initiate returning delegation when reclaiming one that's been recalled (Benjamin Coddington) [1732409] - [fs] fs: nfs: Adding new return type vm_fault_t (Benjamin Coddington) [1732409] - [fs] nfs: add error check in nfs_idmap_prepare_message() (Benjamin Coddington) [1732409] - [fs] NFS: More excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Fix excessive attribute revalidation in nfs_execute_ok() (Benjamin Coddington) [1732409] - [fs] NFS: Ensure we immediately start writeback on rescheduled writes (Benjamin Coddington) [1732409] - [fs] NFSv4.1: Fix a potential layoutget/layoutrecall deadlock (Benjamin Coddington) [1732409] - [fs] pNFS: Parse the results of layoutget on open even if permissions checks fail (Benjamin Coddington) [1732409] - [fs] NFS: Allow optimisation of lseek(fd, SEEK_CUR, 0) on directories (Benjamin Coddington) [1732409] - [fs] pNFS: Wait for stale layoutget calls to complete in pnfs_update_layout() (Benjamin Coddington) [1732409] - [fs] pNFS/flexfiles: Ensure we always return a layout if it has layoutstats (Benjamin Coddington) [1732409] - [fs] pNFS: Ignore non-recalled layouts in pnfs_layout_need_return() (Benjamin Coddington) [1732409] - [fs] pNFS: Don't update the stateid when replying NFS4ERR_DELAY to a layout recall (Benjamin Coddington) [1732409] - [fs] pNFS: Don't discard layout segments that are marked for return (Benjamin Coddington) [1732409] - [fs] nfsd: don't advertise a SCSI layout for an unsupported request_queue (Benjamin Coddington) [1732409] - [fs] nfsd: fix corrupted reply to badly ordered compound (Benjamin Coddington) [1732409] - [fs] nfsd: clarify check_op_ordering (Benjamin Coddington) [1732409] - [fs] nfsd: update obselete comment referencing the BKL (Benjamin Coddington) [1732409] - [fs] nfsd4: cleanup sessionid in nfsd4_destroy_session (Benjamin Coddington) [1732409] - [fs] nfsd4: less confusing nfsd4_compound_in_session (Benjamin Coddington) [1732409] - [fs] nfsd4: support change_attr_type attribute (Benjamin Coddington) [1732409] - [fs] nfsd: fix NFSv4 time_delta attribute (Benjamin Coddington) [1732409] - [fs] nfsd4: return default lease period (Benjamin Coddington) [1732409] - [fs] nfsd4: extend reclaim period for reclaiming clients (Benjamin Coddington) [1732409] - [netdrv] i40e: Do not check VF state in i40e_ndo_get_vf_config (Stefan Assmann) [1752498] - [netdrv] i40e: Add support for X710 device (Stefan Assmann) [1752891] - [mm] mm/oom_kill.c: add task UID to info message on an oom kill (Joel Savitz) [1693039] - [pci] ACPICA: Increase total number of possible Owner IDs (Al Stone) [1713050] - [powerpc] powerpc/pseries: correctly track irq state in default idle (Steve Best) [1751971] - [powerpc] powerpc/imc: Dont create debugfs files for cpu-less nodes (Steve Best) [1726031] - [fs] userfaultfd_release: always remove uffd flags and clear vm_userfaultfd_ctx (Alex Gladkov) [1749763] - [infiniband] RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message (Selvin Xavier) [1643312] - [drm] drm/bochs: Fix connector leak during driver unload (Sam Bobroff) [1463490] - [tools] selftests: Remove forced unbuffering for test running (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add test plan API to kselftest.h and adjust callers (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Remove KSFT_TAP_LEVEL (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Move test output to diagnostic lines (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Distinguish between missing and non-executable (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Add plan line and fix result line syntax (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract logic for multiple test runs (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Use runner.sh for emit targets (Desnes Augusto Nunes do Rosario) [1721461] - [tools] selftests: Extract single-test shell logic from lib.mk (Desnes Augusto Nunes do Rosario) [1721461] - [tools] x86/selftests/pkeys: Fork() to check for state being preserved (Vladis Dronov) [1738880] - [x86] x86/pkeys: Properly copy pkey state at fork() (Vladis Dronov) [1738880] - [netdrv] cxgb4: fix a memory leak bug (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Prefer pcie_capability_read_word() (Jonathan Toppins) [1725776] - [netdrv] allocate_flower_entry: should check for null deref (Jonathan Toppins) [1725776] - [netdrv] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region() (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS refcounting for alloc/free mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for cxgb4 change mac (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Add MPS TCAM refcounting for raw mac filters (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Re-work the logic for mps refcounting (Jonathan Toppins) [1725776] - [netdrv] cxgb4/libcxgb/cxgb4i/cxgbit: enable eDRAM page pods for iSCSI (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Set initial IRQ affinity hints (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Make t4_get_tp_e2c_map static (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Revert "cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size" (Jonathan Toppins) [1725776] - [netdrv] cxgb4: offload VLAN flows regardless of VLAN ethtype (Jonathan Toppins) [1725776] - [netdrv] cxgb4: use firmware API for validating filter spec (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Enable hash filter with offload (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Fix error path in cxgb4_init_module (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Delete all hash and TCAM filters before resource cleanup (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf_main: Mark expected switch fall-through (Jonathan Toppins) [1725776] - [netdrv] cxgb4/cxgb4vf: Display advertised FEC in ethtool (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.23.3.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4: Update 1.22.9.0 as the latest firmware supported. (Jonathan Toppins) [1725776] - [netdrv] cxgb4/l2t: Use struct_size() in kvzalloc() (Jonathan Toppins) [1725776] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Jonathan Toppins) [1725776] - [netdrv] crypto/chelsio/chtls: macro correction in tx path (Jonathan Toppins) [1725776]- [kernel] rcu: Add sparse check to rcu_assign_pointer() (Waiman Long) [1737054] - [kernel] rcu: Fix obsolete DYNTICK_IRQ_NONIDLE comment (Waiman Long) [1737054] - [kernel] rcu: Repair rcu_nmi_exit() docbook header (Waiman Long) [1737054] - [kernel] rcu: Remove preemption disabling from expedited CPU selection (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_process_callbacks() to rcu_core() for Tree RCU (Waiman Long) [1737054] - [kernel] rcu: Rename rcu_check_callbacks() to rcu_sched_clock_irq() (Waiman Long) [1737054] - [kernel] rcu: Docbook for rcu_head_init() and rcu_head_after_call_rcu() (Waiman Long) [1737054] - [documentation] doc: Fix outdated links (Waiman Long) [1737054] - [documentation] doc: CPU-hotplug notifiers cannot invoke synchronize_srcu() or srcu_barrier() (Waiman Long) [1737054] - [documentation] doc: Now jiffies_till_sched_qs solicits help from cond_resched() (Waiman Long) [1737054] - [kernel] rcuperf: Stop abusing IS_ENABLED() (Waiman Long) [1737054] - [kernel] rcutorture: Add grace period after CPU offline (Waiman Long) [1737054] - [kernel] torture: Explain and simplify odd "for" loop in mkinitrd.sh (Waiman Long) [1737054] - [kernel] rcutorture: Record grace periods in forward-progress histogram (Waiman Long) [1737054] - [kernel] rcu: Prevent needless ->gp_seq_needed update in __note_gp_changes() (Waiman Long) [1737054] - [kernel] rcu: Do RCU GP kthread self-wakeup from softirq and interrupt (Waiman Long) [1737054] - [kernel] rcu: Add sysrq rcu_node-dump capability (Waiman Long) [1737054] - [kernel] rcu: Protect rcu_check_gp_kthread_starvation() access to ->gp_flags (Waiman Long) [1737054] - [kernel] rcu: Improve diagnostics for failed RCU grace-period start (Waiman Long) [1737054] - [kernel] rcu: Update NOCB comments (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_cpu per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_has_work to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_cpu_kthread_loops per-CPU variable (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_status to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Move rcu_cpu_kthread_task to rcu_data structure (Waiman Long) [1737054] - [kernel] rcu: Accommodate zero jiffies_till_first_fqs and kthread kicking (Waiman Long) [1737054] - [kernel] rcu: Remove wrapper definitions for obsolete RCU update functions (Waiman Long) [1737054] - [kernel] rcu: Discard separate per-CPU callback counts (Waiman Long) [1737054] - [kernel] rcu: Inline _synchronize_rcu_expedited() into synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate PREEMPT and !PREEMPT synchronize_rcu_expedited() (Waiman Long) [1737054] - [kernel] rcu: Determine expedited-GP IPI handler at build time (Waiman Long) [1737054] - [kernel] rcu: Inline rcu_kthread_do_work() into its sole remaining caller (Waiman Long) [1737054] - [kernel] rcu: Eliminate RCU_BH_FLAVOR and RCU_SCHED_FLAVOR (Waiman Long) [1737054] - [kernel] rcu: Inline force_quiescent_state() into rcu_force_quiescent_state() (Waiman Long) [1737054] - [kernel] rcu: Make expedited IPI handler return after handling critical section (Waiman Long) [1737054] - [kernel] rcu: Rename and comment changes due to only one rcuo kthread per CPU (Waiman Long) [1737054] - [kernel] sched: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [net] net/core: Replace call_rcu_bh() and synchronize_rcu_bh() (Waiman Long) [1737054] - [net] netpoll: allow cleanup to be synchronous (Waiman Long) [1737054] - [net] netfilter: Replace call_rcu_bh(), rcu_barrier_bh(), and synchronize_rcu_bh() (Waiman Long) [1737054] - [kernel] uprobes: Use synchronize_rcu() not synchronize_sched() (Waiman Long) [1737054] - [kernel] rcutorture: Don't do busted forward-progress testing (Waiman Long) [1737054] - [kernel] rcutorture: Use 100ms buckets for forward-progress callback histograms (Waiman Long) [1737054] - [kernel] rcutorture: Recover from OOM during forward-progress tests (Waiman Long) [1737054] - [kernel] rcutorture: Print forward-progress test age upon failure (Waiman Long) [1737054] - [kernel] rcutorture: Print time since GP end upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcutorture: Print histogram of CB invocation at OOM time (Waiman Long) [1737054] - [kernel] rcutorture: Print GP age upon forward-progress failure (Waiman Long) [1737054] - [kernel] rcu: Print per-CPU callback counts for forward-progress failures (Waiman Long) [1737054] - [kernel] rcu: Account for nocb-CPU callback counts in RCU CPU stall warnings (Waiman Long) [1737054] - [kernel] rcutorture: Dump grace-period diagnostics upon forward-progress OOM (Waiman Long) [1737054] - [kernel] rcutorture: Prepare for asynchronous access to rcu_fwd_startat (Waiman Long) [1737054] - [kernel] torture: Remove unnecessary "ret" variables (Waiman Long) [1737054] - [kernel] rcutorture: Affinity forward-progress test to avoid housekeeping CPUs (Waiman Long) [1737054] - [kernel] rcutorture: Break up too-long rcu_torture_fwd_prog() function (Waiman Long) [1737054] - [kernel] rcutorture: Remove cbflood facility (Waiman Long) [1737054] - [kernel] torture: Bring any extra CPUs online during kernel startup (Waiman Long) [1737054] - [kernel] rcutorture: Add call_rcu() flooding forward-progress tests (Waiman Long) [1737054] - [tools] rcutorture/formal: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [tools] tools/kernel.h: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/decnet: Replace rcu_barrier_bh() with rcu_barrier() (Waiman Long) [1737054] - [net] net/core/skmsg: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] cgroups: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] types: Remove call_rcu_bh() and call_rcu_sched() (Waiman Long) [1737054] - [include] percpu-rwsem: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [net] net/bridge: Replace call_rcu_bh() and rcu_barrier_bh() (Waiman Long) [1737054] - [kernel] srcu: Use "ssp" instead of "sp" for srcu_struct pointer (Waiman Long) [1737054] - [kernel] srcu: Lock srcu_data structure in srcu_gp_start() (Waiman Long) [1737054] - [mm] mm: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] percpu-refcount: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] events: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] workqueue: Replace call_rcu_sched() with call_rcu() (Waiman Long) [1737054] - [kernel] modules: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] sched/membarrier: synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] lockdep: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] kprobes: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [init] main: Replace rcu_barrier_sched() with rcu_barrier() (Waiman Long) [1737054] - [kernel] tracing: Replace synchronize_sched() and call_rcu_sched() (Waiman Long) [1737054] - [kernel] tracepoints: Free early tracepoints after RCU is initialized (Waiman Long) [1737054] - [kernel] tracing: Fix synchronizing to event changes with tracepoint_synchronize_unregister() (Waiman Long) [1737054] - [kernel] tracepoint: Make rcuidle tracepoint callers use SRCU (Waiman Long) [1737054] - [fs] fs/file: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/cpufreq_governor: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [cpufreq] cpufreq/intel_pstate: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [vhost] drivers/vhost: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [netdrv] ethernet/sis: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [char] drivers/ipmi: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [crypto] crypto/pcrypt: Replace synchronize_rcu_bh() with synchronize_rcu() (Waiman Long) [1737054] - [mm] mm: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [kernel] locking/mutex: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [fs] userfaultfd: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [net] smsc: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [scripts] checkpatch.pl: Suggest lockdep instead of asserting !spin_is_locked() (Waiman Long) [1737054] - [scripts] checkpatch: Create table of obsolete APIs and apply to RCU (Waiman Long) [1737054] - [maintainers] MAINTAINERS: Add Joel Fernandes as RCU reviewer (Waiman Long) [1737054] - [kernel] rcu: Avoid signed integer overflow in rcu_preempt_deferred_qs() (Waiman Long) [1737054] - [kernel] rcu: Replace this_cpu_ptr() with __this_cpu_read() (Waiman Long) [1737054] - [kernel] rcu: Speed up expedited GPs when interrupting RCU reader (Waiman Long) [1737054] - [kernel] rcu: Trace end of grace period before end of grace period (Waiman Long) [1737054] - [kernel] rcu: Adjust the comment of function rcu_is_watching (Waiman Long) [1737054] - [kernel] rcu: Add jiffies-since-GP-activity to show_rcu_gp_kthreads() (Waiman Long) [1737054] - [kernel] rcu: Add state name to show_rcu_gp_kthreads() output (Waiman Long) [1737054] - [kernel] rcu: Parameterize rcu_check_gp_start_stall() (Waiman Long) [1737054] - [kernel] rcu: Avoid double multiply by HZ (Waiman Long) [1737054] - [documentation] doc: Fix "struction" typo in RCU memory-ordering documentation (Waiman Long) [1737054] - [documentation] doc: Correct parameter in stallwarn (Waiman Long) [1737054] - [documentation] doc: RCU scheduler spinlock rcu_read_unlock() restriction remains (Waiman Long) [1737054] - [documentation] doc: Make listing in RCU perf/scale requirements use rcu_assign_pointer() (Waiman Long) [1737054] - [documentation] doc: Remove obsolete (non-)requirement about disabling preemption (Waiman Long) [1737054] - [documentation] doc: Make reader aware of rcu_dereference_protected (Waiman Long) [1737054] - [documentation] doc: rcu: Encourage use of rcu_barrier in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete checklist item about synchronize_rcu usage (Waiman Long) [1737054] - [documentation] doc: rcu: Remove obsolete suggestion from checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Add more rationale for using rcu_read_lock_sched in checklist (Waiman Long) [1737054] - [documentation] doc: rcu: Update core and full API in whatisRCU (Waiman Long) [1737054] - [documentation] doc: Document rcutorture forward-progress test kernel parameters (Waiman Long) [1737054] - [documentation] doc: rcu: Update description of gp_seq fields in rcu_data (Waiman Long) [1737054] - [documentation] doc: rcu: Better clarify the rcu_segcblist ->len field (Waiman Long) [1737054] - [documentation] doc: rcu: Update Data-Structures for RCU flavor consolidation (Waiman Long) [1737054] - [documentation] doc: Remove rcu_dynticks from Data-Structures (Waiman Long) [1737054] - [documentation] doc: Update information about resched_cpu (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/update.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree_plugin.h (Waiman Long) [1737054] - [kernel] rcu: Stop expedited grace periods from relying on stop-machine (Waiman Long) [1737054] - [kernel] srcu: Prevent __call_srcu() counter wrap with read-side critical section (Waiman Long) [1737054] - [include] srcu: Fix kernel-doc missing notation (Waiman Long) [1737054] - [x86] x86/PCI: Replace spin_is_locked() with lockdep (Waiman Long) [1737054] - [tools] rcutorture: Make use of nolibc when available (Waiman Long) [1737054] - [tools] rcutorture: Import a copy of nolibc (Waiman Long) [1737054] - [tools] rcutorture: Check initrd/init instead of initrd only (Waiman Long) [1737054] - [tools] rcutorture: Always strip using the cross-compiler (Waiman Long) [1737054] - [tools] rcutorture: Add cross-compile capability to initrd.sh (Waiman Long) [1737054] - [tools] rcutorture: Make initrd/init execute in userspace (Waiman Long) [1737054] - [tools] rcutorture: Add initrd support for systems lacking dracut (Waiman Long) [1737054] - [tools] rcutorture: Automatically create initrd directory (Waiman Long) [1737054] - [documentation] doc: Remove rcu_preempt_state reference in stallwarn (Waiman Long) [1737054] - [documentation] doc: Clarify RCU data-structure comment about rcu_tree fanout (Waiman Long) [1737054] - [documentation] doc: Set down forward-progress requirements (Waiman Long) [1737054] - [powerpc] powerpc: Convert hugepd_free() to use call_rcu() (Waiman Long) [1737054] - [s390] s390/mm: Convert tlb_table_flush() to use call_rcu() (Waiman Long) [1737054] - [kernel] sparc/oprofile: Convert timer_stop() to use synchronize_rcu() (Waiman Long) [1737054] - [kernel] sched/membarrier: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1737054] - [kernel] rcu: Consolidate the RCU update functions invoked by sync.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate synchronize_rcu_mult() (Waiman Long) [1737054] - [kernel] rcu: Fix rcu_{node, data} comments about gp_seq_needed (Waiman Long) [1737054] - [kernel] rcu: Remove unused rcu_state externs (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for kernel/rcu/tree.c (Waiman Long) [1737054] - [kernel] rcu: Eliminate BUG_ON() for sync.c (Waiman Long) [1737054] - [include] srcu: Add notrace variant of srcu_dereference (Waiman Long) [1737054] - [documentation] PM/EM: Document the Energy Model framework (Phil Auld) [1718927] - [kernel] sched/doc: Document Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/fair: Remove unneeded prototype of capacity_of() (Phil Auld) [1718927] - [kernel] sched/fair: Skip LLC NOHZ logic for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Tune down misfit NOHZ kicks (Phil Auld) [1718927] - [kernel] sched/fair: Comment some nohz_balancer_kick() kick conditions (Phil Auld) [1718927] - [kernel] sched/fair: Prune, fix and simplify the nohz_balancer_kick() comment block (Phil Auld) [1718927] - [kernel] sched/fair: Explain LLC nohz kick condition (Phil Auld) [1718927] - [kernel] sched/fair: Simplify nohz_balancer_kick() (Phil Auld) [1718927] - [kernel] sched/topology: Fix percpu data types in struct sd_data & struct s_data (Phil Auld) [1718927] - [kernel] sched/fair: Simplify post_init_entity_util_avg() by calling it with a task_struct pointer argument (Phil Auld) [1718927] - [kernel] sched/fair: Fix util_avg of new tasks for asymmetric systems (Phil Auld) [1718927] - [kernel] sched/fair: Optimize update_blocked_averages() (Phil Auld) [1718927] - [kernel] sched/topology: Introduce a sysctl for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] Revert "sched/core: Take the hotplug lock in sched_init_smp()" (Phil Auld) [1718927] - [kernel] cpu/hotplug: Mute hotplug lockdep during init (Phil Auld) [1718927] - [kernel] sched/fair: Select an energy-efficient CPU on task wake-up (Phil Auld) [1718927] - [kernel] sched/fair: Introduce an energy estimation helper function (Phil Auld) [1718927] - [kernel] sched/fair: Add over-utilization/tipping point indicator (Phil Auld) [1718927] - [kernel] sched/fair: Clean-up update_sg_lb_stats parameters (Phil Auld) [1718927] - [kernel] sched/toplogy: Introduce the 'sched_energy_present' static key (Phil Auld) [1718927] - [kernel] sched/topology: Make Energy Aware Scheduling depend on schedutil (Phil Auld) [1718927] - [kernel] sched/topology: Disable EAS on inappropriate platforms (Phil Auld) [1718927] - [kernel] sched/topology: Add lowest CPU asymmetry sched_domain level pointer (Phil Auld) [1718927] - [kernel] sched/topology: Reference the Energy Model of CPUs when available (Phil Auld) [1718927] - [kernel] PM: Introduce an Energy Model management framework (Phil Auld) [1718927] - [kernel] sched/cpufreq: Prepare schedutil for Energy Aware Scheduling (Phil Auld) [1718927] - [kernel] sched/topology: Relocate arch_scale_cpu_capacity() to the internal header (Phil Auld) [1718927] - [kernel] sched/core: Take the hotplug lock in sched_init_smp() (Phil Auld) [1718927] - [kernel] sched/core: Disable SD_PREFER_SIBLING on asymmetric CPU capacity domains (Phil Auld) [1718927] - [kernel] sched/fair: Don't move tasks to lower capacity CPUs unless necessary (Phil Auld) [1718927] - [kernel] sched/fair: Set rq->rd->overload when misfit (Phil Auld) [1718927] - [kernel] sched/fair: Wrap rq->rd->overload accesses with READ/WRITE_ONCE() (Phil Auld) [1718927] - [kernel] sched/core: Change root_domain->overload type to int (Phil Auld) [1718927] - [kernel] sched/fair: Change 'prefer_sibling' type to bool (Phil Auld) [1718927] - [kernel] sched/fair: Kick nohz balance if rq->misfit_task_load (Phil Auld) [1718927] - [kernel] sched/fair: Consider misfit tasks when load-balancing (Phil Auld) [1718927] - [kernel] sched/fair: Add sched_group per-CPU max capacity (Phil Auld) [1718927] - [kernel] sched/fair: Add 'group_misfit_task' load-balance type (Phil Auld) [1718927] - [kernel] sched/topology: Add static_key for asymmetric CPU capacity optimizations (Phil Auld) [1718927] - [kernel] sched/core, workqueues: Distangle worker accounting from rq lock (Phil Auld) [1737067] - [kernel] workqueue: Use normal rcu (Phil Auld) [1737067] - [kernel] tick/broadcast: Fix warning about undefined tick_broadcast_oneshot_offline() (Phil Auld) [1737067] - [kernel] timer/trace: Improve timer tracing (Phil Auld) [1737067] - [include] timer/trace: Replace deprecated vsprintf pointer extension pf by ps (Phil Auld) [1737067] - [kernel] timer: Move trace point to get proper index (Phil Auld) [1737067] - [kernel] tick/sched: Update tick_sched struct documentation (Phil Auld) [1737067] - [kernel] tick: Remove outgoing CPU from broadcast masks (Phil Auld) [1737067] - [kernel] timekeeping: Consistently use unsigned int for seqcount snapshot (Phil Auld) [1737067] - [kernel] sched/fair: Robustify CFS-bandwidth timer locking (Phil Auld) [1737067] - [kernel] tick/sched : Remove redundant cpu_online() check (Phil Auld) [1737067] - [misc] sched/swait: Rename to exclusive (Phil Auld) [1737067] - [kernel] sched/swait: Switch to full exclusive mode (Phil Auld) [1737067] - [kernel] sched/swait: Remove __prepare_to_swait (Phil Auld) [1737067] - [netdrv] net: ena: don't wake up tx queue when down (John Linville) [1722628] - [netdrv] Revert "net: ena: ethtool: add extra properties retrieval via get_priv_flags" (John Linville) [1722628] - [netdrv] net: ena: Fix bug where ring allocation backoff stopped too late (John Linville) [1722628] - [netdrv] net: ena: update driver version from 2.0.3 to 2.1.0 (John Linville) [1722628] - [netdrv] net: ena: remove inline keyword from functions in *.c (John Linville) [1722628] - [netdrv] net: ena: add ethtool function for changing io queue sizes (John Linville) [1722628] - [netdrv] net: ena: allow queue allocation backoff when low on memory (John Linville) [1722628] - [netdrv] net: ena: make ethtool show correct current and max queue sizes (John Linville) [1722628] - [netdrv] net: ena: enable negotiating larger Rx ring size (John Linville) [1722628] - [netdrv] net: ena: add MAX_QUEUES_EXT get feature admin command (John Linville) [1722628] - [netdrv] net: ena: use dev_info_once instead of static variable (John Linville) [1722628] - [netdrv] net: ena: add good checksum counter (John Linville) [1722628] - [netdrv] net: ena: optimise calculations for CQ doorbell (John Linville) [1722628] - [netdrv] net: ena: add support for changing max_header_size in LLQ mode (John Linville) [1722628] - [netdrv] net: ena: allow automatic fallback to polling mode (John Linville) [1722628] - [netdrv] net: ena: add newline at the end of pr_err prints (John Linville) [1722628] - [netdrv] net: ena: arrange ena_probe() function variables in reverse christmas tree (John Linville) [1722628] - [netdrv] net: ena: replace free_tx/rx_ids union with single free_ids field in ena_ring (John Linville) [1722628] - [netdrv] net: ena: ethtool: add extra properties retrieval via get_priv_flags (John Linville) [1722628] - [netdrv] net: ena: add handling of llq max tx burst size (John Linville) [1722628] - [netdrv] net: ena: gcc 8: fix compilation warning (John Linville) [1722628] - [netdrv] net: ena: fix ena_com_fill_hash_function() implementation (John Linville) [1722628] - [netdrv] net: ena: improve latency by disabling adaptive interrupt moderation by default (John Linville) [1722628] - [netdrv] net: ena: fix return value of ena_com_config_llq_info() (John Linville) [1722628] - [netdrv] net: ena: fix incorrect test of supported hash function (John Linville) [1722628] - [netdrv] net: ena: fix: Free napi resources when ena_up() fails (John Linville) [1722628] - [netdrv] net: ena: fix: set freed objects to NULL to avoid failing future allocations (John Linville) [1722628] - [netdrv] net: ena: fix swapped parameters when calling ena_com_indirect_table_fill_entry (John Linville) [1722628] - [arm64] arm64: kexec: Add comment to explain use of __flush_icache_range() (Mark Salter) [1757450] - [arm64] arm64: kexec: machine_kexec should call __flush_icache_range (Mark Salter) [1757450] - [arm64] arm64: Do not issue IPIs for user executable ptes (Mark Salter) [1757450] - [arm64] arm64: hibernate: Avoid sending cross-calling with interrupts disabled (Mark Salter) [1757450] - [arm64] arm64: mm: Export __flush_icache_range() to modules (Mark Salter) [1757450] - [arm64] arm64: IPI each CPU after invalidating the I-cache for kernel mappings (Mark Salter) [1757450] - [s390] s390/dasd: Handle out-of-space constraint (Philipp Rudo) [1525398] - [s390] s390/dasd: Use ALIGN_DOWN macro (Philipp Rudo) [1525398] - [s390] s390/dasd: Make dasd_setup_queue() a discipline function (Philipp Rudo) [1525398] - [s390] s390/dasd: Add new ioctl to release space (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dasd_sleep_on_queue_interruptible() (Philipp Rudo) [1525398] - [s390] s390/dasd: Add missing intensity definition (Philipp Rudo) [1525398] - [s390] s390/dasd: Fix whitespace (Philipp Rudo) [1525398] - [s390] s390/dasd: Add dynamic formatting support for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Recognise data for ESE volumes (Philipp Rudo) [1525398] - [s390] s390/dasd: Put sub-order definitions in a separate section (Philipp Rudo) [1525398] - [s390] s390/dasd: Make layout analysis ESE compatible (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove old defines and function (Philipp Rudo) [1525398] - [s390] s390/dasd: Remove unused structs and function prototypes (Philipp Rudo) [1525398] - [tools] perf report: Dump s390 counter set data to file (Philipp Rudo) [1731036] - [tools] perf report: Display arch specific diagnostic counter sets, starting with s390 (Philipp Rudo) [1731036] - [tools] perf report: Add s390 diagnosic sampling descriptor size (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for CPU-MF SVN 6 (Philipp Rudo) [1731036] - [s390] s390/cpumf: Fix warning from check_processor_id (Philipp Rudo) [1731036] - [s390] s390/cpum_cf_diag: Add support for s390 counter facility diagnostic trace (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Handle EBUSY return code from CPU counter facility reservation (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: add ctr_stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move common functions into a separate file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_avail() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: replace stcctm5() with the stcctm() function (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: add store cpu counter multiple instruction support (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Add minimal in-kernel interface for counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: introduce kernel_cpumcf_alert() to obtain measurement alerts (Philipp Rudo) [1731036] - [s390] s390/cpu_mf: move struct cpu_cf_events and per-CPU variable to header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: rename per-CPU counter facility structure and variables (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: prepare for in-kernel counter measurements (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: move counter set controls to a new header file (Philipp Rudo) [1731036] - [s390] s390/cpum_cf: Reject request for sampling in event initialization (Philipp Rudo) [1731036] - [s390] s390/perf: Change CPUM_CF return code in event init function (Philipp Rudo) [1731036] - [acpi] ACPI / property: Add two new Thunderbolt property GUIDs to the list (Jarod Wilson) [1483494] - [acpi] ACPI: property: restore _DSD data subnodes GUID comment (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Intel Ice Lake (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Expose active parts of NVM even if upgrade is not supported (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Hide switch attributes that are not set (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not fail adding switch if some port is not implemented (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Use 32-bit writes when writing ring producer/consumer (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move NVM upgrade support flag to struct icm (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Correct path indices for PCIe tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Show key using *pE not *pEp (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Switch to use device_property_count_uXX() (Jarod Wilson) [1483494] - [include] device property: Add helpers to count items in an array (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Implement CIO reset correctly for Titan Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make sure device runtime resume completes before taking domain lock (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add SPDX license identifier for more missed files (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make priority unsigned in struct tb_path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: shash - remove shash_desc::flags (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Start firmware on Titan Ridge Apple systems (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Reword output of tb_dump_hop() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make rest of the logging to happen at debug level (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make __TB_[SW|PORT]_PRINT take const parameters (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for XDomain connections (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Make tb_switch_alloc() return ERR_PTR() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for DMA tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add XDomain UUID exchange support (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Run tb_xdp_handle_request() in system workqueue (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not tear down tunnels when driver is unloaded (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for Display Port tunnels (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rework NFC credits handling (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize port finding routines to support all port types (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Scan only valid NULL adapter ports in hotplug (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add support for full PCIe daisy chains (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Discover preboot PCIe paths the boot firmware established (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Deactivate all paths before restarting them (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Extend tunnel creation to more than 2 adjacent switches (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add helper function to iterate from one port to another (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Assign remote for both ports in case of dual link (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add functions for allocating and releasing HopIDs (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Generalize tunnel creation functionality (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Rename tunnel_pci to tunnel (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Cache adapter specific capability offset into struct port (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Properly disable path (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Set sleep bit when suspending switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Configure lanes when switch is initialized (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Move LC specific functionality into a separate file (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Add dummy read after port capability list walk on Light Ridge (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Enable TMU access when accessing port space on legacy devices (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Do not allocate switch if depth is greater than 6 (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Take domain lock in switch sysfs attribute callbacks (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Block reads and writes if switch is unplugged (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Drop duplicated get_switch_at_route() (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Remove unused work field in struct tb_switch (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check the return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a missing check of kzalloc (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: xdomain: Fix to check return value of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check return value of ida_simple_get (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix to check for kmemdup failure (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Fix a missing check of kmemdup (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: property: Fix a NULL pointer dereference (Jarod Wilson) [1483494] - [thunderbolt] thunderbolt: Prevent root port runtime suspend during NVM upgrade (Jarod Wilson) [1483494] - [netdrv] net/ibmvnic: prevent more than one thread from running in reset (Steve Best) [1756943] - [netdrv] net/ibmvnic: unlock rtnl_lock in reset so linkwatch_event can run (Steve Best) [1756943] - [netdrv] sfc: don't score irq moderation points for GRO (Jarod Wilson) [1736303] - [netdrv] sfc: Use dev_get_drvdata where possible (Jarod Wilson) [1736303] - [netdrv] sfc: Remove 'PCIE error reporting unavailable' (Jarod Wilson) [1736303] - [netdrv] sfc: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1736303] - [netdrv] sfc: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1736303] - [netdrv] bonding: no need to print a message if debugfs_create_dir() fails (Jarod Wilson) [1756517] - [netdrv] bonding: Add vlan tx offload to hw_enc_features (Jarod Wilson) [1756517] - [netdrv] bonding: fix value exported by Netlink for peer_notif_delay (Jarod Wilson) [1756517] - [netdrv] bonding: add an option to specify a delay between peer notifications (Jarod Wilson) [1756517] - [netdrv] bonding: validate ip header before check IPPROTO_IGMP (Jarod Wilson) [1756517] - [netdrv] bonding/main: fix NULL dereference in bond_select_active_slave() (Jarod Wilson) [1756517] - [netdrv] bonding: Always enable vlan tx offload (Jarod Wilson) [1756517] - [netdrv] bonding/options: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/alb: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/802.3ad: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding/main: convert to using slave printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: add slave_foo printk macros (Jarod Wilson) [1756517] - [netdrv] bonding: fix error messages in bond_do_fail_over_mac (Jarod Wilson) [1756517] - [netdrv] bonding: improve event debug usability (Jarod Wilson) [1756517] - [netdrv] net: bonding: Inherit MPLS features from slave devices (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jarod Wilson) [1756517] - [netdrv] bonding: Replace GPLv2 boilerplate/reference with SPDX - rule 90 (Jarod Wilson) [1756517] - [netdrv] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 5 (Jarod Wilson) [1756517] - [netdrv] bonding: Add SPDX license identifier - Makefile/Kconfig (Jarod Wilson) [1756517] - [powerpc] powerpc/fadump: support holes in kernel boot memory area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: remove RMA_START and RMA_END macros (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about option to release opalcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider f/w load area (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: provide an option to invalidate /sys/firmware/opal/core file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: enable CONFIG_OPAL_CORE for FADUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opalcore: export /sys/firmware/opal/core for analysing opal crashes (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: update documentation about CONFIG_PRESERVE_FA_DUMP (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add support to preserve crash data on FADUMP disabled kernel (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve how crashed kernel's memory is reserved (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: consider reserved ranges while releasing memory (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make crash memory ranges array allocation generic (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process architected register state data provided by firmware (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: make use of memblock's bottom up allocation mode (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Update documentation about OPAL platform support (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: handle invalidation of crashdump and re-registraion (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Warn before processing partial crashdump (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: process the crashdump by exporting it as /proc/vmcore (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: support copying multiple kernel boot memory regions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define OPAL register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: reset metadata address during clean up (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: register kernel metadata address with opal (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: improve fadump_reserve_mem() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add fadump support on powernv (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/opal: add MPIPL interface definitions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/powernv: Make possible for user to force a full ipl cec reboot (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use FADump instead of fadump for how it is pronounced (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: move out platform specific support from generic code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: release all the memory above boot memory size (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add source info while displaying region contents (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] pseries/fadump: define RTAS register/un-register callback functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: introduce callbacks for platform specific operations (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move rtas specific definitions to platform code (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: define an empty fadump_cleanup() (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: use helper functions to reserve/release cpu notes buffer (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: Improve fadump documentation (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: declare helper functions in internal header file (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: add helper functions (Desnes Augusto Nunes do Rosario) [1524687] - [powerpc] powerpc/fadump: move internal macros/definitions to a new header (Desnes Augusto Nunes do Rosario) [1524687] - [watchdog] watchdog: iTCO: Add support for Cannon Lake PCH iTCO (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Use iTCO version 6 in Cannon Lake PCH and beyond (Alexander Beregalov) [1724532] - [i2c] i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus (Alexander Beregalov) [1724532] - [block] loop: set PF_MEMALLOC_NOIO for the worker thread (Ming Lei) [1741392] - [fs] bdev: Fixup error handling in blkdev_get() (Ming Lei) [1741392] - [block] loop: Fix mount(2) failure due to race with LOOP_SET_FD (Ming Lei) [1741392] - [block] block, bfq: handle NULL return value by bfq_init_rq() (Ming Lei) [1741392] - [block] block, bfq: move update of waker and woken list to queue freeing (Ming Lei) [1741392] - [block] block, bfq: reset last_completed_rq_bfqq if the pointed queue is freed (Ming Lei) [1741392] - [block] block: aoe: Fix kernel crash due to atomic sleep when exiting (Ming Lei) [1741392] - [block] rq-qos: use a mb for got_token (Ming Lei) [1741392] - [block] rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule (Ming Lei) [1741392] - [block] rq-qos: don't reset has_sleepers on spurious wakeups (Ming Lei) [1741392] - [block] rq-qos: fix missed wake-ups in rq_qos_throttle (Ming Lei) [1741392] - [include] wait: add wq_has_single_sleeper helper (Ming Lei) [1741392] - [block] block, bfq: check also in-flight I/O in dispatch plugging (Ming Lei) [1741392] - [block] block: fix sysfs module parameters directory path in comment (Ming Lei) [1741392] - [block] block: Allow mapping of vmalloc-ed buffers (Ming Lei) [1741392] - [block] block/bio-integrity: fix a memory leak bug (Ming Lei) [1741392] - [block] block: Disable write plugging for zoned block devices (Ming Lei) [1741392] - [block] blk-throttle: fix zero wait time for iops throttled group (Ming Lei) [1741392] - [block] block: Fix potential overflow in blk_report_zones() (Ming Lei) [1741392] - [block] blk-cgroup: turn on psi memstall stuff (Ming Lei) [1741392] - [block] block: init flush rq ref count to 1 (Ming Lei) [1741392] - [lib] sbitmap: Replace cmpxchg with xchg (Ming Lei) [1741392] - [block] block: Remove unused code (Ming Lei) [1741392] - [block] block, bfq: Init saved_wr_start_at_switch_to_srt in unlikely case (Ming Lei) [1741392] - [block] block, bfq: re-schedule empty queues if they deserve I/O plugging (Ming Lei) [1741392] - [block] block, bfq: preempt lower-weight or lower-priority queues (Ming Lei) [1741392] - [block] block, bfq: detect wakers and unconditionally inject their I/O (Ming Lei) [1741392] - [block] block, bfq: bring forward seek&think time update (Ming Lei) [1741392] - [block] block, bfq: update base request service times when possible (Ming Lei) [1741392] - [block] block, bfq: fix rq_in_driver check in bfq_update_inject_limit (Ming Lei) [1741392] - [block] block, bfq: reset inject limit when think-time state changes (Ming Lei) [1741392] - [kernel] cgroup: export css_next_descendant_pre for bfq (Ming Lei) [1741392] - [block] block: update print_req_error() (Ming Lei) [1741392] - [block] block: use blk_op_str() in blk-mq-debugfs.c (Ming Lei) [1741392] - [block] block: add centralize REQ_OP_XXX to string helper (Ming Lei) [1741392] - [block] block: improve print_req_error (Ming Lei) [1741392] - [block] block: rename CONFIG_DEBUG_BLK_CGROUP to CONFIG_BFQ_CGROUP_DEBUG (Ming Lei) [1741392] - [block] bfq-iosched: move bfq_stat_recursive_sum into the only caller (Ming Lei) [1741392] - [block] blk-cgroup: move struct blkg_stat to bfq (Ming Lei) [1741392] - [block] blk-cgroup: introduce a new struct blkg_rwstat_sample (Ming Lei) [1741392] - [block] blk-cgroup: pass blkg_rwstat structures by reference (Ming Lei) [1741392] - [block] blk-cgroup: factor out a helper to read rwstat counter (Ming Lei) [1741392] - [block] block: drbd: no need to check return value of debugfs_create functions (Ming Lei) [1741392] - [block] blk-core: Remove blk_end_request*() declarations (Ming Lei) [1741392] - [block] block: code cleanup queue_poll_stat_show() (Ming Lei) [1741392] - [block] block: use right format specifier for op (Ming Lei) [1741392] - [block] block: get rid of redundant else (Ming Lei) [1741392] - [block] block: use req_op() to maintain consistency (Ming Lei) [1741392] - [fs] blkcg, writeback: dead memcgs shouldn't contribute to writeback ownership arbitration (Ming Lei) [1741392] - [block] blkcg: blkcg_activate_policy() should initialize ancestors first (Ming Lei) [1741392] - [block] blkcg: perpcu_ref init/exit should be done from blkg_alloc/free() (Ming Lei) [1741392] - [block] blkcg: update blkcg_print_stat() to handle larger outputs (Ming Lei) [1741392] - [block] block: bio: Use struct_size() in kmalloc() (Ming Lei) [1741392] - [block] block: genhd: Use struct_size() helper (Ming Lei) [1741392] - [block] block: null_blk: fix race condition for null_del_dev (Ming Lei) [1741392] - [block] blk-mq/debugfs: Fix improper print qualifier (Ming Lei) [1741392] - [block] loop: Don't change loop device under exclusive opener (Ming Lei) [1741392]- [documentation] timekeeping.txt: Correct maxCount of n-bit binary counter (Jaroslav Kysela) [1738610] - [sound] ALSA: clk: Add (devm_)clk_get_optional() functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: align comments with firmware files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: rename SOUNDWIRE to ALH (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: add ALH parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: remove SPDX "WITH Linux-syscall-note" from kernel-space headers again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fe_compr can be bit field (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: fixup for_each_card_links() macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Define a set of DAPM pre/post-up events (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: use bit field for bus_control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: remove an unused field from struct hda_codec (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Avoid polluting led_* namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Hiby device family to quirks for native DSD support (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: DSD auto-detection for Playback Designs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: remove some dead code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix possible NULL dereference at create_yamaha_midi_quirk() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Clean up check_input_term() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Remove superfluous bLength checks (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Simplify parse_audio_unit() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: More validations of descriptor units (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Check mixer unit bitmap yet more strictly (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix memory leak at line6_init_pcm() error path (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate() (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit (Jaroslav Kysela) [1738610] - [sound] ALSA: hiface: fix multiple memory leak bugs (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Add Pioneer DDJ-SX3 PCM quirck (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Skip bSynchAddress endpoint check if it is invalid (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix PCM device order (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Unify audioformat release code (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix gpf in snd_usb_pipe_sanity_check (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Scarlett Gen 2 mixer interface (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: sizeof (byte) is always 1, use that fact. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix a typo (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix wrong altsetting for LINE6_PODHD500_1 (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix Line6 Helix audio format rates (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Fix parse of UAC2 Extension Units (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Fix write on zero-sized buffer (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: fix sign unintended sign extension on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Sanity checks for each pipe and EP types (Jaroslav Kysela) [1738610] - [sound] ALSA: usb-audio: Enable .product_name override for Emagic, Unitor 8. (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Use container_of() (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Drop superfluous timer helper function (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: variax: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: podhd: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: pod: Rewrite complex timer & work combo with a delayed work (Jaroslav Kysela) [1738610] - [sound] ALSA: line6: Assure canceling delayed work at disconnection (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 33 (Jaroslav Kysela) [1738610] - [sound] ALSA: sparc: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ux500: mop500: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: txx9: txx9aclc-generic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: osk5912: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap3pandora: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-twl4030: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-hdmi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: omap-abe-twl6040: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: n810: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Set unused serializers as INACTIVE (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix SDMA users not providing channel names (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for auxclk-fs-ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: ams-delta: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: trimslice: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8903: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: tegra_alc5632: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: pass volume min/max linear value to FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ignore unrecoverable CTX_SAVE IPC errors at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add earpiece (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: spdifrx: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: dfsdm: add 16 bits audio record support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add cpu_dai_name for DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add min/max step for volume_table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sof: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: clarify operator precedence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASOC: SOF: ipc: prevent logging trace messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add new macro hstream_to_sof_hda_stream() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure RUN bit setting to 0 during clear stream status (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: fix a deadlock with bus->reg_lock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: modify stream interrupt handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: save handle to sdev in sof_intel_hda_stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove misleading error trace from IRQ thread (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: dont wake dsp up in kcontrol IO (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: compress: Fix memory leak from snd_soc_new_compress (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: sirf-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: sh7760-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: ssiu: tidyup SSI_MODE1/2 settings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: fixup mod ID calculation in rsnd_ctu_probe_ (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: add missing pin sharing with SSI9 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sh: migor: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tobermory: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: snow: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8994: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_wm8580: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smdk_spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: smartq_wm8987: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_tlv320aic23: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec_hermes: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix a double-free issue for cpu_dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: fix an use-after-free issue for codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: odroid: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: lowland: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: littlemill: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: jive_wm8750: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: h1940_uda1380: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: bells: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: arndale_rt5631: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip-max98090: Remove MICBIAS as supply of input pin IN34 (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rockchip: rockchip_max98090: Enable MICBIAS for headset keypress detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3399_gru_sound: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rk3399_gru_sound: Support 32, 44.1 and 88.2 kHz sample rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rk3288_hdmi_analog: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: pdm: select CONFIG_RATIONAL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: storm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: Fix oops with multiple DAI links (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: tosa: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: hx4700: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: kernel: fix typos and some coding style in comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Add missing Slimbus0 audio route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: apq8016_sbc: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: zylonite: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: z2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: ttc-dkb: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: spitz: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: pxa2xx-ac97.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: poodle: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: palm27x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: mioa701_wm9713: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: magician: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: imote2: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: em-x270: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e800_wm9712: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e750_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: e740_wm9705: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: corgi: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pxa: brownstone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs: mxs-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-toddr: expose all 8 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmout: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmout: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: tdmin: expose all 16 inputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdmin: right_j is not supported (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: fix sample clock inversion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm: consistently use SND_SOC_DAIFMT defines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: require regmap mmio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: free reset on device removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: add reset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifout: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-spdifin: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-pdm: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: expose all 8 outputs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-frddr: add sm1 support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-fifo: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5676: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-rt5650-rt5514: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8173-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6797-mt6351: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-wm8960: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701-cs42448: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add missing newline at end of file (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood: armada-370-db: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: qi_lb60: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 239 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix incorrect capture position reporting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Fix NULL ptr dereference when unloading clk dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Don't return failure on machine driver reload (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Do not disable FW notifications (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use GFP_KERNEL instead of GFP_ATOMIC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: correct naming for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof_rt5682: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt-da7219-max98357a: add BE dailink for dmic16k (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add MCLK support for BYT platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_rt286: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_ssm4567: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_nau88l25_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_rt5514_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5663_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_rt5660: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: kbl_da7219_max98927: add dai_trigger function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_nocodec: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_da7213: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_cx2072x: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-rt5640: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: byt-max98090: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_rt298: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_for_each_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: add missing const at graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: phycore-ac97: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card-utils: care no Platform for DPCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: wm1133-ev1: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: pcm030-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mx27vis-aic32x4: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-spdif: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-sgtl5000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-mc13783: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-es8328: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: imx-audmix: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: mpc8610_hpcd/p1022_ds/p1022_rdk: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: fsl-asoc-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: eukrea-tlv320: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl: efika-audio-fabric: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: Allow bus error handler to be called directly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm_adsp: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove multiple defines. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: add irqflag IRQF_ONESHOT flag (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix misuse of GENMASK macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: suppress error message for EPROBE_DEFER (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tas571x: Fix -Wunused-const-variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix charge pump source assignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix of unmute outputs on probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: add ADC mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Improve VAG power and mute control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sgtl5000: Fix definition of VAG Ramp Control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Rename driver to differentiate from main codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: remove redundant assignment to variable idx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5514-spi: don't use snd_soc_lookup_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: simplify the EFUSE read function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Remove executable attribute from source files (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: add silence detection and manual PDB control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Convert headers to SPDX (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix DC calibration offset not applying (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Relocate my e-mail to .com domain zone (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8825: fix fake interruption when booting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nau8822: support master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: soc: codecs: mt6358: change return type of mt6358_codec_init_reg (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: msm8916-wcd-digital: Add sidetone support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98383: fix i2c probe failure (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 496 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: report codec link up/down status to bus (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec: hdac_hdmi: fix pin connections at cvt enable (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 463 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: mark PM function as __maybe_unused (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: use mdelay for sdmode-delay (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: avoid speaker pop when playback startup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix MFREQ selection issue for async mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cros_ec_codec: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4118: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: spi: AD ASoC: declare missing of table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ab8500: add range to usleep_range (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: snappercl15: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: simone: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: ep93xx-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cirrus: edb93xx: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm: cygnus-pcm: Unneeded variable: "ret". (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s.c: use devm_snd_soc_register_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1200: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: db1000: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: tse850-pcm5142: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9x5_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: sam9g20_wm8731: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: mikroe-proto: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-wm8904: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pdmic: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-pcm-dma.c: use devm_snd_dmaengine_pcm_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 234 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: atmel-classd: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-rt5645: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp-da7219-max98357a: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 200 (Jaroslav Kysela) [1738610] - [sound] ALSA: ps3: Remove Unneeded variable: "ret" (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 277 (Jaroslav Kysela) [1738610] - [sound] ALSA: rme9652: Unneeded variable: "result". (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 274 (Jaroslav Kysela) [1738610] - [sound] ALSA: hdspm: Fix single speed ADAT capture and playback with RME HDSPe AIO (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 264 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 404 (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - Remove set but not used variables 'orun_mask, urun_mask' (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es: Remove unneeded variable err (Jaroslav Kysela) [1738610] - [sound] ALSA: lx6464es - add support for LX6464ESe pci express variant (Jaroslav Kysela) [1738610] - [sound] ALSA: ice1712: Check correct return value to snd_i2c_sendbytes (EWS/DMX 6Fire) (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 29 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 46 (Jaroslav Kysela) [1738610] - [sound] ALSA: emu10k1: Remove unneeded variable "change" (Jaroslav Kysela) [1738610] - [sound] ALSA: echoaudio: Replace kmalloc + memcpy with kmemdup (Jaroslav Kysela) [1738610] - [sound] ALSA: pci: echoaudio: remove variable which is a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 364 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 118 (Jaroslav Kysela) [1738610] - [sound] ALSA: cs4281: remove redundant assignment to variable val and remove a goto (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 32 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 116 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 456 (Jaroslav Kysela) [1738610] - [sound] ALSA: au88x0: Remove unneeded variable: "changed" (Jaroslav Kysela) [1738610] - [sound] ALSA: asihpi: Remove unneeded variable change (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 88 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: remove unused variable 'snd_ac97_controls_master_mono' (Jaroslav Kysela) [1738610] - [sound] ALSA: dmasound_atari: Mark expected switch fall-through (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 176 (Jaroslav Kysela) [1738610] - [sound] ALSA: i2c: ak4xxx-adda: Fix a possible null pointer dereference in build_adc_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: isa/wavefront: remove redundant assignment to pointer bptr (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 370 (Jaroslav Kysela) [1738610] - [sound] ALSA: sb: remove redundant assignment to variable result (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda: Add codec on bus address table lately" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Unexport a few more stuff (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Drop export of snd_hdac_bus_add/remove_device() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add codec on bus address table lately (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: readl/writel need linux/io.h (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: intel-nhlt: handle NHLT VENDOR_DEFINED DMIC geometry (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move parts of NHLT code to new module (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix 1-minute detection delay when i915 module is not available (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix a headphone detection issue when using SOF (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix: lock reg_lock before calling snd_hdac_bus_update_rirb (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: add polling mode in snd_hdac_bus_get_response (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sdm845: remove unneeded semicolon (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Replace strncpy() with strscpy_pad() for pcm->name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: remove redundant use of ret variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: Add an op to set callback function for plug event (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_unbind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_bind_aux_dev() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_dais() next to soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add new soc_link_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_dai() next to soc_remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_dais() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_remove_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: self contained soc_probe_link_components() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1305: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: make array pd static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: simple-card-utils: set 0Hz to sysclk when shutdown (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: ignore 0Hz sysclk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: make two arrays static const, makes object smaller (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Use regmap_multi_reg_write() when initializing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Reset used registers at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Group register initialization at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: ad193x: Fix memory corruption on BE 64b systems (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: support fixed and variable both clock rates (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix redundant codes of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add DT-bindings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dmaengine: Make the pcm->name equal to pcm->id if the name is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix COMPILE_TEST error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Include link-name in error messages (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: consider CPU-Platform possibility (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: don't select unnecessary Platform (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Fix NULL pointer in of parser (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: Mark links as nonatomic (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qcom: common: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment to jack at soc_remove_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf-audio: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: add clock control of MCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: audio-graph: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: indicate rebind issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_for_each_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for cpu (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_link_components() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add snd_soc_dapm_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dapm related setup at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_probe_component() position (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_rtd_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix space issues (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove forward declaration of headset_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move headset jack to card-specific storage (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF/Intel: fix selection of SND_INTEL_NHTL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: broadwell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bdw-rt5677: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: haswell: Simplify device probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Haswell: Adjust machine device private context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-evm: Do not fail if the dai_set_sysclk returns -ENOTSUPP (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: edma-pcm: Fix for legacy dma_slave_map based channel lookup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Add S32_LE as support format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-i2s: Move the XSYNCERR workaround to .prepare callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: Fix implicit fallthrough warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_ssi: Fix clock control issue in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wcd9335: Fix primary interpolator max rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data is valid on rising edge (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: tdm hw support tdm out and 8ch i2s out (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: implement left-justified data mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel_ssc_dai: rework DAI format configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: atmel: enable SOC_SSC_PDC and SOC_SSC_DMA in Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Force suspend/resume during system suspend/resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: fix tdm out data align issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: add mutex protection to set_fmt/set_tdm_slot (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix inverted L/R of headphone mixer volume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8316: fix headphone mixer volume table (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Release topology when we are done with it (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove memory available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove MCPS available check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Remove static table index when parsing topology (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print module type instead of id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: NHLT: Fix debug print format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Expose snd_soc_dapm_new_control_unlocked properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: fix memory leaks on sm, se and sbe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate and fix asoc_tplg_dapm_widget_*_create flow (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: topology: Consolidate how dtexts and dvalues are freed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: fix modern dai link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use correct function to access iomem space (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix an is IS_ERR() vs NULL check (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i: Revert A83t description (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Fix return value check in imx8_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM-related variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: Revert initial A83t support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmix: register the card on a proper dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx8: Make some functions static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: rename soc_post_component_init() to soc_rtd_init() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize list at one place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: fix get control data return type and arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: initialize component list (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-topology: use for_each_component_dais() at remove_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_cleanup_card_resources() become void (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add NOTE to snd_soc_rtdcom_lookup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use device_register() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: switch tdm pins gpio function when playback on or off (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt2701: Fix -Wunused-const-variable warnings (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8988: fix typo in wm8988_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: imx: Add i.MX8 HW support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add OF DSP device support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: AMD: Fix Kconfig warning without GPIOLIB (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for DSP formats (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_width by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the actual format width instead of an hardcoded one (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use the physical / slot width for the clocks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add support for TDM slots (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded dai_link check from snd_soc_remove_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: merge snd_soc_initialize_card_lists() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx8qm (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix simultaneous capture and playback in master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Wait for RX/TX RDY only if controller is running (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mchp-i2s-mcc: Fix unprepare of GCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Support more channels (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Pass the channels number as an argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Remove duplicated quirks structure (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK period on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix MCLK Enable bit offset on A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix WSS and SR fields for the A83t (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the LRCK polarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix LRCK and BCLK polarity offsets on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: RX and TX counter registers are swapped (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix the MCLK and BCLK dividers on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Use module clock as BCLK parent on newer SoCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the format configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Move the channel configuration to a callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Rework MCLK divider calculation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Replace call to params_channels by local variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Don't use the oversample to calculate BCLK (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Switch to devm for PCM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Register regmap and PCM before our component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: implement input mode select as a mux (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8904: fix typo in DAPM kcontrol name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add all Chromebooks that need pmc_plt_clk_0 quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: Fix double reset assersion when transitioning to suspend state (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: initial support for Intel ALH DAI type (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Add dummy support for i.MX8 DAIs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: Add driver suspend and resume to support MEGA Fast (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for EHL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for Tiger Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add Cometlake machine driver support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Move pcm_mutex up to card level from snd_soc_pcm_runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: 88pm860x: remove unused variables 'pcm_switch_controls' and 'aif1_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l56: remove unused variable 'adc_swap_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: remove unused variable 'pga_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic31xx: remove unused variable 'cm_m_enum' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic23: remove unused variable 'tlv320aic23_rec_src' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: remove unused variable 'dac_vol_tlv' and 'adc_vol_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98371: remove unused variable 'max98371_noload_gain_tlv' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42l73: remove unused variables 'vsp_output_mux' and 'xsp_output_mux' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Print constant literals from format specifier (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt6358: add delay after dmic clock on (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: remove unused variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt2701: remove unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: Fix -Wunused-const-variable warning (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8737: Fix copy-paste error in wm8737_snd_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4349: Use PM ops 'cs4349_runtime_pm' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: es8328: Fix copy-paste error in es8328_right_line_controls (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: hsw: remove i386 build warning w/ size_t argument (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Fix typos in ti/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: Set period size to 240 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow reconfiguration of tdm_slots and slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Retain the independence of DAC and ADC side of the codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: make headset codec optional (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-mt6358-ts3a227-max98357: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max9850: remove unused variable 'max9850_reg' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98926: remove two unused variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style of aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: rx51: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun4i-codec: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: tm2_wm5110: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: speyside: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: rockchip_max98090: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183-da7219-max98357: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hdmi: Offload dapm update at jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: byt: Refactor fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: bdw: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Remove call to snd_sof_dsp_mailbox_init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ml26124: remove unused variable 'ngth' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6351: remove unused variable 'mt_lineout_control' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: intel: skl_hda_dsp_common: create HDMI jack kctl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tscs454: remove unused variable 'PLL_48K_RATE' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fix module_put() warning in soc_cleanup_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: dai_link check under soc_dpcm_debugfs_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: define soc_dpcm_debugfs_add() for non CONFIG_DEBUG_FS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for card->deferred_resume_work (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove unneeded list_empty() check for snd_soc_try_rebind_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_dapm_debugfs_init() at soc_init_card_debugfs() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_card_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_add_routes() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_add_component_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdac_hda: fix page fault issue by removing race (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Direct MMIO accesses (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for imx7ulp/imx8mq (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: mark regmap as fast_io (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: large_config_get overhaul (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Implement set_bclk_ratio (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add support for SAI new version (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: derive TX FIFO watermark from FIFO depth (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: add of_match data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Update Tx/Rx channel enable mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Add registers definition for multiple datalines (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup for snd_soc_dapm_new_controls() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: reuse rtdcom at snd_soc_rtdcom_add() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use for_each_card_links_safe() at snd_soc_find_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: check return value of snd_soc_add_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add comment for for_each_xxx (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: set component->debugfs_root NULL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add a flag for the R0 calibration test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add R0 temperature and TDM1 ADC2DAT Swap control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: don't call clk_get_rate() under atomic context (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: Remove executable bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pcm_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_mmap() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_page() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_copy_user() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_ioctrl() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_pcm_component_pointer() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_set_bias_level() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_stream_event() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: move snd_soc_component_seq_notifier() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_name() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_of_xlate_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_is_suspended() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_hw_params() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_close() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-component: add snd_soc_component_get/put() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-component.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_fill_silence() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_copy_kernel() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: remove soc_rtdcom_ack() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma address for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: zx-tdm: remove redundant assignment to ts_width on error return path (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: SoC: skylake: no need to check return value of debugfs_create functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fill some of the runtime stream parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: remove ephemeral variables (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: create pcm for codec2codec links as well (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: use common NHLT module (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Merge skl_sst and skl into skl_dev struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Limit large_config_get to single frame (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix use of potentially uninitialized variable (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Update request-reply IPC model (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Common: Fix NULL dereference in tx_wait_done (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix race condition in IPC rx list (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 490 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Read HIPCT extension before clearing DONE bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: move NHLT header to common directory (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: au1x: psc-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: psc-ac97: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: aio-dma: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: uniphier: evea: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: inno_rk3036: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: jz4740: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mmp-sspa: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: jz4725b: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: msm8916-wcd: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun8i-codec-analog: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xlnx: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs4271: Fix a typo in the CS4171_NR_RATIOS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: Mark expected switch fall-throughs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: xtfpga-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: kirkwood-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: spear: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mxs-saif: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sirf: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: bcm2835-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_audmix: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: imx-audmux: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt6797: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mt8173: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ep93xx-i2s: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tegra20_das: use devm_platform_ioremap_resource() to simplify code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: g12a-tohdmitx: override codec2codec params (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98373: add 88200 and 96000 sampling rate support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Incorrect SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: fix missing return of error return code (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Support for correct symmetric sample bits (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Correct slot_width posed constraint (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rockchip: Fix mono capture (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Fix some acpi vs apci typo in somme comments (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: deal with params when necessary (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: name link using stream direction (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codec2codec: run callbacks in order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: codecs: Add uda1334 codec driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1308: Add RT1308 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Makefile - fix the top-level kernel module names (add snd- prefix) (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Improve serializer handling in multi AXR setups (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for RIGHT_J format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Cleanup skl_module_cfg declaration (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Make MCPS and CPS params obsolete (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Combine snd_soc_skl_ipc and snd_soc_skl (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Reset pipeline before its deletion (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Strip T and L from TLV IPCs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Properly cleanup on component removal (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Initialize lists before access so they are safe to use (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add function to cleanup debugfs interface (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use recommended SDxFMT programming sequence (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Switch to modern UUID API (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-pcm: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: wm8955: Fix a typo in 'wm8995_pll_factors()' function name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Fail card instantiation if DAI format setup fails (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: move snd_soc_dai_stream_valid() to soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use existing snd_soc_dai_digital_mute() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_compress_new() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_remove() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_probe() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_suspend() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_delay() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_bespoke_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_trigger() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_prepare() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_shutdown() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_startup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: add snd_soc_dai_hw_free() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dai: mv soc_dai_hw_params() to soc-dai (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: add soc-dai.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Return -ENOTSUPP from set_channel_map() if no operation provided (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: support dai_link with platforms_num != 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: defer card registration if codec component is missing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_find_dai() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_dai_link_component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: soc_find_component() uses snd_soc_is_matching_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: move soc_find_component() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: call snd_soc_unbind_card() under mutex_lock; (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: allow no Platform on dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: remove legacy style dai_link (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc.h: add sound dai_link connection macro (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: Support hw_free() callback at DAI level (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5665: Fix a typo in the name of a function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove dev_err() usage after platform_get_irq() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: recover the channel swap after xrun (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Wrap some operations to be functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add pm runtime function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ssp: BCLK delay parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add DMIC token for unmute gain ramp time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix stream id setting (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix link DMA config (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reset link DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reserve host DMA channel for hostless streams (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: assign link DMA channel at run-time (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Elkhart Lake (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: initial support for Tiger Lake. (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Use generic function for fw ready / mem windows creation (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: make sure DMA is start/stop by read the RUN bit (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix HDA direct MMIO access (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated clear WAKESTS (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: clear stream status and wakests properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add function for hda stop chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: set position buffer in init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: correct ROM state mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_window_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_mailbox_offset (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add runtime idle callback (Jaroslav Kysela) [1738610] - [sound] ALSA: docs: timers: convert docs to ReST and rename to *.rst (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use SOF defined init chip in resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Enable jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: reduce ifdef usage for hda (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: remove unused state variable in suspend function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: implement runtime idle for CNL/APL (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined stop chip in suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the SOF defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: release link DMA for paused streams during suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Don't ignore SRAM block types (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: loader: Use the BAR provided by FW (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Introduce snd_sof_dsp_get_bar_index ops (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: increase default IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: use timeout configured at probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: add ALH support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: use common code to send PCM_FREE IPC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: reset DMA state in prepare (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: couple host and link DMA during FE hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pci: mark last_busy value at runtime PM init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fixup HDaudio topology name with DMIC number (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Add missing include file hdac_hda.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: Initialize hdaudio bus properly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix MSI handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Initialize HDA controller after i915 init (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: add a parameter to disable MSI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: remove duplicated include from hda.c (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: disallow building without CONFIG_PCI again (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: intel: extend IPC dump information (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Allow all channels in case of parallel DIN/DOUT setup (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Fix a typo in the name of a constant (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Add support for multi DIN/DOUT with TDM slots parameter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Rename min_frame_size to slot_width (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dmic dapm widget and route (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: skl-hda-dsp-generic: add dependency to dmic driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Match Product Family instead of product (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Invalidate only paths reachable for a given stream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: use set_get_data in process load (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_esai: Add compatible string for imx6ull (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: keep analog power register at SND_SOC_BIAS_OFF (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Remove magic number register writes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Revert remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: remove superfluous set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: depop stereo dac (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: handle concurrent interrupts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: clear interrupts by polarity flip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: move jack-detect init to i2c probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: fall back to DT prop names on error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add component driver name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: use more of the volume range from DACs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: remove w90x900/nuc900 platform drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: nuc900: nuc900-audio: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add dmic dapm widget to support dmic PCM (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add for_each_xxx macro for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use snd_soc_dai_link_component for aux_dev (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: remove useless check on codec (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: fix null pointer dereference in clean up (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: use modern dai_link style (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sst: fix kmalloc call with wrong flags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Fix deadlock in snd_soc_instantiate_card() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Remove erroneous soc_cleanup_card_resources() call (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for CPU (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: move DAI pre-links initiation to snd_soc_instantiate_card (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: fix warning reported by kbuild test robot and minor issue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Mark format integer literals as unsigned (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: Tell codec that jack is being removed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Change SR and WSS computation (Jaroslav Kysela) [1738610] - [sound] ALSA: SoC: rt274: Fix internal jack assignment in set_jack callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090: fix kernel oops with platform_name override (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 422 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 395 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 340 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 288 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Add offset to RX channel select (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-i2s: Fix sun8i tx channel offset mask (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98090: remove 24-bit format support if RJ is 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: da7219: Fix build error without CONFIG_I2C (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Fix COMPILE_TEST build error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: pcm3168a: Implement set_tdm_slot callback (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: Make some symbols static (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove set but not used variable 'is_right_j ' (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt1011: Add RT1011 amplifier driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: debug: add new debugfs entries for IPC flood test (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: Introduce SOF_IPC_GLB_TEST_MSG IPC command (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: uapi: mirror firmware changes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: send time stamp to FW for alignment (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: bump to ABI 3.6 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: soundwire: add initial soundwire support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: add support for mux/demux component (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix DSP oops definitions in FW ABI (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ipc: don't check for HIPCCTL register value (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: re-enable IPC IRQ at end of handler (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: move code around for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: cnl-ipc: read all IPC registers first (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Do not send cmd via SHIM register (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add mode parameter for snd_sof_debugfs_buf_item (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ASoC: core: use component driver name as component name" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: sai: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: replace fw ready bitfield with explicit bit ordering (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Baytrail: add quirk for Aegex 10 (RU2) tablet (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: fix typos of SPDX-License-Identifier (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 162 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 149 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: use the defined ppcap functions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: add COMPILE_TEST for PCI options (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: Add COMPILE_TEST for new machine drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove dependency on asm/platform_sst_audio.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoc: fix sound/soc/intel/skylake/slk-ssp-clk.c build error on IA64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: use common helpers to detect CPUs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677: Add missing voice activation register definitions (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: use component driver name as component name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Fix build error with CONFIG_GPIOLIB is not set (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix undefined references with Baytrail-only support (Jaroslav Kysela) [1738610] - [sound] ALSA: wcd9335: fix a incorrect use of kstrndup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-codec: fix first delay on Speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add support for H6 SoC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Add TX fifo bit flush quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: sun4i-spdif: Move quirks to the top (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix spelling mistake "configued" -> "configured" (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: fix integer overflow on unsigned int multiply (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: force end-of-file for debugfs trace at suspend (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: trace: remove code duplication in sof_wait_trace_avail() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: Show KConfig entry (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: topology: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cx2072x: remove redundant assignment to pulse_len (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: fix the hda init chip (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: ipc: fix a race, leading to IPC timeouts (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: control: correct the copy size for bytes kcontrol put (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove warning - initialize workqueue on open (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: clear hw_params_upon_resume flag correctly (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: fix error handling with the probe workqueue (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove snd_soc_unregister_component in case of error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: core: remove DSP after unregistering machine driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: fixup references at soc_cleanup_card_resources() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Force polling mode on CFL and CNL (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 119 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 64 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: core: lock client_mutex while removing link components (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Restore original configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: qdsp6: q6core: Use struct_size() in kmemdup() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Use struct_size() helper (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: Use struct_size() in krealloc() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: boards: remove unnecessary inclusion of skl.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: move card registration to the end of probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: mediatek: mt8183: remove unused DAPM pins (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable dev runtime suspend and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Add machine driver for CX2072X on BYT/CHT platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Add support for Conexant CX2072X CODEC (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Unify the supported input and output rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: fixup try_module_get()/module_put() timing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: add newline for clarity (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: fix compile error (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix AMP quirk support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: sof-rt5682: fix for codec button mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 4 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 3 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 1 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: simple-card: Fix configuration of DAI format (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: WARN() is not related to component->driver->probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rsnd: move pcm_new from snd_soc_component_driver to snd_soc_dai_driver (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: Remap button control-function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: enable IIR filter (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rename functions that pollute the simple_xxx namespace (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: soc-acpi: Fix machine selection order (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: rt5677-spi: Handle over reading when flipping bytes (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-dpm: fixup DAI active unbalance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: tlv320aic3x: Add support for high power analog output (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add reset gpio handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: cs42xx8: Add regcache mask dirty (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: replace the process_option table with function (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_asrc: Fix the issue about unsupported rate (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: add g12a tohdmitx control (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: add basic codec-to-codec link support (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: dapm: allow muxes to force a disconnect (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: meson: axg-card: set link name based on link node name (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: MT8183: set data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Mediatek: add memory interface data align (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: rstn_control - return a non-zero on error only (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: re-introduce mutex locking (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add soc_pcm_components_open() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: add missing cpu_dai->rate = 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: do cpu_dai related operation at same place (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use soc_find_component() at snd_soc_get_dai_id() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: add soc_component_to_node() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: tidyup soc_bind_dai_link() comment balance (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: don't use codec_dais on soc_bind_dai_link() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-core: use i on snd_soc_resume() (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: max98357a: request GPIO when device get probed (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL add Icelake chip info struct (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: ICL: add Icelake SSP count (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: pcm: remove runtime PM calls during pcm open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: Intel: Skylake: Add Cometlake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Add Comet Lake PCI IDs (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: amd: Reporting accurate hw_ptr for acp3x dma (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-pcm: BE dai needs prepare when pause release after resume (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: ak4458: add return value for ak4458_probe (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC : cs4265 : readable register too low (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix error in verbose ipc command parsing (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: fix race in FW boot timeout handling (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: nocodec: fix undefined reference (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: soc-acpi: fix implicit header use of module.h/export.h (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: fsl_sai: Move clock operation to PM runtime (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: stm32: i2s: manage identification registers (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove ops dependency on the dai id (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the dai drivers in the private data (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove reference to the current substream (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hdmi-codec: remove function name debug traces (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 (Jaroslav Kysela) [1738610] - [sound] ALSA: xen-front: fix unintention integer overflow on left shifts (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - PCI quirk for Medion E4254 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply AMD controller workaround for Raven platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix alienware headset mic (Jaroslav Kysela) [1738610] - [sound] ALSA: Add Acer Aspire Ethos 8951G model quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi: remove redundant assignment to variable pcm_idx (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Pavilion 15 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix overridden device-specific initialization (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix potential endless loop at applying quirks (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Allow runtime PM for controller if component notifier is used (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Blacklist PC beep for Lenovo ThinkCentre M73/93 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check beep whitelist before assigning in all codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - Add new SBZ quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fixes inverted Conexant GPIO mic mute led (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Define a fallback_pin_fixup_tbl for alc269 family (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Expand pin_match function to match upcoming new tbls (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Drop unsol event handler for Intel HDMI codecs (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a generic reboot_notify (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Let all conexant codec enter D3 when rebooting (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/sigmatel - remove unused variable 'stac9200_core_init' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add quirk for HP Envy x360 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Set fifo_size for both playback and capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a quirk model for fixing Huawei Matebook X right speaker (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Add model description for Chrome headset button quirk (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fix a typo in model documentation (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Inform too slow responses (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Apply workaround for another AMD chip 1022:1487 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Remove page allocation redirection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Workaround for crackled sound on AMD controller (1022:1457) (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't override global PCM hw info flag (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add support of Zhaoxin controller (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/intel: stop probe if DMICS are detected on Skylake+ platforms (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Show the fatal CORB/RIRB error more clearly (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Add a conexant codec entry to let mute led work (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Fix intermittent CORB/RIRB stall on Intel chips (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: SOF: Intel: hda: Make hdac_device device-managed (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Flush interrupts on disabling (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Allow audio component for AMD/ATI and Nvidia HDMI (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Don't report spurious jack state changes (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Optimize resume for codecs without jack detection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Don't resume forcibly i915 HDMI/DP codec (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Fix i915 reverse port/pin mapping (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/hdmi - Remove duplicated define (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: apply ALC891 headset fixup to one Dell machine (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Fixed Headphone Mic can't record on Dell platform (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Simplify snd_hdac_refresh_widgets() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Fix widget_mutex incomplete protection (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132 - remove redundant assignment to variable 'changed' (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Change front mic location for Lenovo M710q (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek: Add quirks for several Clevo notebook barebones (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops" (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Add Elkhart Lake PCI ID (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: fix a mask for unsolicited event tags (Jaroslav Kysela) [1738610] - [sound] ALSA: ASoC: hda: fix unbalanced codec dev refcount for HDA_DEV_ASOC (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/ca0132: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Update headset mode for ALC256 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: move polling_mode flag to struct hdac_bus (Jaroslav Kysela) [1738610] - [sound] ALSA: hda: assign polling_mode after azx_bus_init (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Improve the headset mic for Acer Aspire laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda - Force polling mode on CNL for fixing codec communication (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Enable micmute LED for Huawei laptops (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Set default power save node to 0 (Jaroslav Kysela) [1738610] - [sound] ALSA: hda/realtek - Check headset type by unplug and resume (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: Fix codec name after machine driver is unloaded and reloaded (Jaroslav Kysela) [1738610] - [sound] ALSA: hdac: fix memory release for SST and SOF drivers (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 371 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier for more missed files (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 130 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 336 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 285 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 295 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 273 (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong packet parameter for Alesis iO26 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: check intermediate state of clock status and retry (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: handle error code when getting current source of clock (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: remove WARN_ON() at destruction of AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: add note for FE-8 (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add support for MOTU 4pre (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix isoc cycle count to which rx packet is scheduled (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix error path for initialization of stream structures (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix to handle correct stream for PCM playback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix NULL pointer dereference to unused stream structure (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire: fix a memory leak bug (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: localize kernel APIs to start/stop each AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: support AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for initialization/destruction of AMDTP stream (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for bus reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for initialization/destruction of AMDTP streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to start AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to add AMDTP stream into AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add a kernel API to stop a couple of AMDTP streams in AMDTP domain (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add AMDTP domain structure to handle several isoc contexts (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: more code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: process payload of isoc context according to packet descriptors (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for FF data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for MOTU data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for TASCAM data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for DOT data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for AM824 data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass packet descriptor to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process context payloads (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to process PCM substream (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use packet descriptor for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add list of packet descriptor (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass no syt information to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add syt_override member for some protocols (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: operate data block counter in top level of processing for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block counter to data block processing layer (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: pass data block count as an argument to tracepoints event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete ctx_data.tx.first_dbc with CIP_UNALIGHED_DBC flag (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for local variables (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for post operation to data block counter (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring for error path of parser for CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix different data block counter between probed event and transferred isochronous packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix initial value of data block count for IR context without CIP_DBC_IS_END_EVENT (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireface: fix initial value of data block counter for IR context with CIP_NO_HEADER (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix invalid length of rx packet payload for tracepoint events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: fix wrong reference count for stream functionality at error path of rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib/fireworks: fix miss detection of received MIDI messages (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix to process MIDI conformant data channel for AM824 format (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: cache next data_block_counter after probing tracepoints event for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify common tracepoints for both direction (Jaroslav Kysela) [1738610] - [sound] ALSA: Revert "ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events" (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: ensure to release isochronous resources in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: unify stop and release method for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: minor code refactoring to stop isochronous context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: rename helper functions to begin/finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: code refactoring for condition to stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: add helper function to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify midi callback function (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: unify the count of subscriber for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split allocation of isochronous resources from establishment of connection (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for error path to start duplex stream (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: change the range of critical section for stream data in PCM.hw_free callback (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring for callback function to rawmidi interface (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code rafactoring for callback functions to PCM interface (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: fix compiler warning due to returning uninitialized value (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure stream parameter in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: configure packet format in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: unify substreams counter (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: rename helper functions for duplex streams (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: expand stop procedure for packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: break packet streaming at bus-reset handler (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: start duplex streams if supported (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: set packet parameter according to current configuration (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: code refactoring for stop condition of packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure stream parameters in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for pcm.hw_params/hw_free (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: code refactoring for rawmidi.open/close (Jaroslav Kysela) [1738610] - [sound] ALSA: fireworks: unify substream counter (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: code refactoring to initialize/destroy stream data (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: obsolete useless member of private structure (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: don't set XRUN in stop streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: bebob: configure sampling transfer frequency in pcm.hw_params callback (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: code refactoring to stop packet streaming (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to keep isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: simplify error path to begin streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-digi00x: refactoring to move timing of registration for isochronous channel (Jaroslav Kysela) [1738610] - [sound] ALSA: oxfw: allow PCM capture for Stanton SCS.1m (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: update isochronous resources when starting packet streaming after bus-reset (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in latter protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff400 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: support allocate_resources operation in ff800 protocol (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: add protocol-specific operation to allocate isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: minor code refactoring to finish streaming session (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: update isochronous resources when starting packet streaming after bus reset (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: reserve/release isochronous resources in pcm.hw_params/hw_free callbacks (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for release of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for reservation of isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-tascam: code refactoring for registration of isochronous channels (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-motu: fix destruction of data for isochronous resources (Jaroslav Kysela) [1738610] - [sound] ALSA: fireface: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IR packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: refactoring to obsolete IT packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix inverted node IDs for amdtp_packet events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: fix data block counter for incoming packet without CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 8 byte packet header for IT context to separate CIP header from CIP payload (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: code refactoring to queueing packets (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to generate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify packet handler for IR context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use 16 bytes IR context header to separate CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: split helper function to check incoming CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: compute pointer to payload buffer in context handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: calculate the length of packet payload in packet handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use clear name for variable of CIP header (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use IT context header to compute cycle count for scheduling packet (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: obsolete macro for header of IT context (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add helper function to cancel context inner callback handler (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use union for directional parameters (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: unify tracing events to 'amdtp_packet' event (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use dynamic array for CIP header of tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same unit for payload argument in tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: add data_blocks/data_block_counter parameter to in_packet/out_packet tracing events (Jaroslav Kysela) [1738610] - [sound] ALSA: firewire-lib: use the same type of argument for CIP header for tracing event (Jaroslav Kysela) [1738610] - [sound] ALSA: dice: add stream format parameters for PreSonus FireStudio (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 102 (Jaroslav Kysela) [1738610] - [sound] ALSA: aoa: onyx: always initialize register read value (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 250 (Jaroslav Kysela) [1738610] - [sound] ALSA: ac97: Fix double free of ac97_codec_device (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Add SPDX license identifier - Makefile/Kconfig (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: add support for 352.8KHz and 384KHz sample rate (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Fix potential concurrent access to the deleted pool (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: fix lost wakeup event scenarios in snd_pcm_drain (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Be more restrictive about when a drain is allowed (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Don't allow paritial drain operations on capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Prevent bypasses of set_params (Jaroslav Kysela) [1738610] - [sound] ALSA: compress: Fix regression on compressed capture streams (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: Fix refcount_inc() on zero usage (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: Break too long mutex context in the write loop (Jaroslav Kysela) [1738610] - [sound] ALSA: seq: fix incorrect order of dest_client/dest_ports arguments (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 372 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 345 (Jaroslav Kysela) [1738610] - [sound] ALSA: control: Use struct_size() (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 167 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 (Jaroslav Kysela) [1738610] - [sound] ALSA: treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 151 (Jaroslav Kysela) [1738610] - [sound] ALSA: pcm: oss: Use struct_size() helper (Jaroslav Kysela) [1738610]- [tools] selftests/powerpc: Retry on host facility unavailable (Desnes Augusto Nunes do Rosario) [1739770] - [tools] selftests/powerpc: Do not fail with reschedule (Desnes Augusto Nunes do Rosario) [1739770] - [tools] libperf: Warn when exceeding MAX_NR_CPUS in cpumap (Frank Ramsay) [1753332] - [tools] perf header: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf machine: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf session: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf stat: Replace MAX_NR_CPUS with cpu__max_cpu() (Frank Ramsay) [1753332] - [tools] perf svghelper: Replace MAX_NR_CPUS with perf_env::nr_cpus_online (Frank Ramsay) [1753332] - [tools] perf timechart: Refactor svg_build_topology_map() (Frank Ramsay) [1753332] - [tools] perf tools: Increase MAX_NR_CPUS and MAX_CACHES (Frank Ramsay) [1753332] - [crypto] crypto: chelsio - count incomplete block in IV (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix softlockup with heavy I/O (Jonathan Toppins) [1725813] - [crypto] crypto: chelsio - Fix NULL pointer dereference (Jonathan Toppins) [1725813] - [nvme] nvme-pci: Allow PCI bus-level PM to be used if ASPM is disabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI/ASPM: Add pcie_aspm_enabled() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix async probe remove race (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix controller removal race with scan work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix possible use-after-free in connect error flow (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix a possible deadlock when passthru commands sent to a multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-core: Fix extra device_put() call on error path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: fix nvmet_file_flush() always returning an error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-loop: Flush nvme_delete_wq when removing the port (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: Fix use-after-free bug when a port is removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] Revert "nvme-pci: don't create a read hctx mapping without read queues" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix multipath crash when ANA is deactivated (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix memory leak caused by incorrect subsystem free (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: ignore subnqn for ADATA SX6000LNP (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix NULL deref for fabrics options (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix regression upon hot device removal and insertion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: fix module unloads while lports still pending (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: set the STABLE_WRITES flag when data digests are enabled (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: print a hint while rejecting NSID 0 or 0xffffffff (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: don't use sendpage for SLAB pages (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: do not select namespaces which are about to be removed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: also check for a disabled path if there is a single sibling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-multipath: factor out a nvme_path_is_disabled helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: export I/O characteristics attributes in Identify (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set physical block size and optimal I/O size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: add delete completion and submission queue to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix spelling mistake "spcecific" -> "specific" (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check for NULL return from pci_alloc_p2pmem() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: limit max_hw_sectors based on the DMA max mapping size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't fall back to a 32-bit DMA mask (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't create a read hctx mapping without read queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: make nvme_dev_pm_ops static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: resolve warnings on RCU usage and sleep warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: fix inconsistent lock state warnings (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Skip devices in D0 for (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [pci] PCI: PM: Avoid possible suspend-to-idle issue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add I/O characteristics fields (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: enable to inject errors into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: prepare for fault injection into admin commands (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: introduce target-side trace (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: print result and status in hex format (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: support for fabrics commands in host-side (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: move opcode symbol print to nvme.h (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: do not export nvme_trace_disk_name (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: properly report state change failure in nvme_reset_work (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: clean up nvme_remove_dead_ctrl a bit (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: set the errno on ctrl state change error (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: adjust irq max_vector using num_possible_cpus() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use host managed power state for suspend (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unnecessary zero for static var (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce nvme_is_fabrics to check fabrics cmd (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fc: add message when creating new association (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove queue_count_ops for write_queues and poll_queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix possible io failures when removing multipathed ns (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: export get and set features (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add transport discovery change op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fcloop: add support for nvmet discovery_event op (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: remove blk_init_request_from_bio (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: initialize the write priority (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix u32 overflow in the number of namespace list calculation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: add transport discovery change event callback support (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: don't limit DMA segement size (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix data_len to 0 for bdev-backed write_zeroes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-tcp: fix queue mapping when queue count is limited (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use blk-mq mapping for unmanaged irqs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: copy MTFA field from identify controller (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: release namespace SRCU protection before performing controller ioctls (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: merge nvme_ns_ioctl into nvme_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove the ifdef around nvme_nvm_ioctl (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: fix srcu locking on error return in nvme_get_ns_from_disk (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: Fix known effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Sync queues on reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Unblock reset_work on IO failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Don't disable on timeout in reset state (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: Fix controller freeze wait disabling (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: validate cntlid during controller initialisation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: change locking for the per-subsystem controller list (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: trace all async notice events (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: remove unused argument (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: add known admin effects to augument admin effects log page (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: init shadow doorbell after each reset (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: mark expected switch fall-through (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: mark nvme_core_init and nvme_core_exit static (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: protect discovery change log event list iteration (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: move command size checks to the core (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-fabrics: check more command sizes (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove an unneeded variable initialization (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: unquiesce admin queue on shutdown (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: shutdown on timeout during deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: set 0 capacity if namespace block size exceeds PAGE_SIZE (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-rdma: fix a NULL deref when an admin connect times out (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-file: clamp-down file namespace lba_shift (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: include (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: rename nvme_completion instances from rsp to cqe (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-rdma: remove p2p_client initialization from fast-path (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: return a specified error it subsys_alloc fails (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix discover log page when offsets are used (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: never fail double namespace enablement (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: log the error status on Identify Namespace failure (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: tidy up nvme_map_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: add safety check for subsystem lock during nvmet_ns_changed (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: only call nvme_unmap_data for requests transferring data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove q_dmadev from nvme_queue (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: merge nvme_free_iod into nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: move the call to nvme_cleanup_cmd out of nvme_unmap_data (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove nvme_init_iod (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: use a flag for polled queues (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_integrity_vec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add dma_map_bvec helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [block] block: add a rq_dma_dir helper (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: use zero-sized array and struct_size() in kzalloc() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: remove unused nvme_iod member (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: avoid double errno conversions (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid double dereference to convert le to cpu (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix error flow during ns enable (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper write zeroes setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: disable Write Zeroes for qemu controllers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: bring Disconnect into compliance with FC-NVME spec (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add proper discard setup for the multipath device (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: remove nvme_ns_config_oncs (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet-fc: fix issues with targetport assoc_list list walking (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: add get-feature to admin cmds tracer (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-loop: init nvmet_ctrl fatal_err_work when allocate (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: put ns_head ref if namespace fails allocation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-trace: fix cdw10 buffer overrun (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: don't warn on block content change effects (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: update comment to make the code easier to read (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-lightnvm: convert to SPDX identifiers (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: return error from (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: avoid that deleting a controller triggers a circular locking complaint (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: introduce a helper function for controller deletion (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme: unexport nvme_delete_ctrl_sync() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvme-pci: check kstrtoint() return value in queue_count_set() (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [nvme] nvmet: fix indentation (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [lightnvm] lightnvm: simplify geometry (Gopal Tiwari) [1718463 1711181 1724950 1725066] - [powerpc] powerpc/tm: Fix FP/VMX unavailable exceptions inside a transaction (Gustavo Duarte) [1750653] - [powerpc] powerpc/tm: Fix restoring FP/VMX facility incorrectly on interrupts (Gustavo Duarte) [1750653] - [block] block: split .sysfs_lock into two locks (Ming Lei) [1697383] - [block] block: add helper for checking if queue is registered (Ming Lei) [1697383] - [block] blk-mq: don't hold q->sysfs_lock in blk_mq_map_swqueue (Ming Lei) [1697383] - [block] block: don't hold q->sysfs_lock in elevator_init_mq (Ming Lei) [1697383] - [block] block: Remove blk_mq_register_dev() (Ming Lei) [1697383] - [x86] KVM: X86: Fix fpu state crash in kvm guest (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't use current->mm to check for a kthread (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update kernel's FPU state before using for the fsave header (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use fault_in_pages_writeable() for pre-faulting (Prarit Bhargava) [1737070] - [mm] mm/gup: continue VM_FAULT_RETRY processing even for pre-faults (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fault-in user stack if copy_fpstate_to_sigframe() fails (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Add PKRU value to init_fpstate (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore regs in copy_fpstate_to_sigframe() in order to use the fastpath (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add a fastpath to __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Defer FPU state load until return to userspace (Prarit Bhargava) [1737070] - [x86] x86/fpu: Merge the two code paths in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Restore from kernel memory on the 64-bit path too (Prarit Bhargava) [1737070] - [x86] x86/fpu: Inline copy_user_to_fpregs_zeroing() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Update xstate's PKRU value on write_pkru() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Prepare copy_fpstate_to_sigframe() for TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always store the registers in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/entry: Add TIF_NEED_FPU_LOAD (Prarit Bhargava) [1737070] - [x86] x86/fpu: Eager switch PKRU state (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Don't check if PKRU is zero before writing it (Prarit Bhargava) [1737070] - [x86] x86/fpu: Only write PKRU if it is different from current (Prarit Bhargava) [1737070] - [x86] x86/pkeys: Provide *pkru() helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Use a feature number instead of mask in two more helpers (Prarit Bhargava) [1737070] - [x86] x86/fpu: Make __raw_xsave_addr() use a feature number instead of mask (Prarit Bhargava) [1737070] - [x86] x86/fpu: Add an __fpregs_load_activate() internal helper (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove user_fpu_begin() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized (Prarit Bhargava) [1737070] - [x86] x86/fpu: Don't save fxregs for ia32 frames in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in copy_fpstate_to_sigframe() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Always init the state in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove preempt_disable() in fpu__clear() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu__restore() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove fpu->initialized usage in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [x86] x86/entry: Remove unneeded need_resched() loop (Prarit Bhargava) [1737070] - [x86] x86/uaccess: Introduce user_access_{save, restore}() (Prarit Bhargava) [1737070] - [x86] x86/fpu: Fix i486 + no387 boot crash by only saving FPU registers on context switch if there is an FPU (Prarit Bhargava) [1737070] - [x86] x86/fpu: Remove second definition of fpu in __fpu__restore_sig() (Prarit Bhargava) [1737070] - [net] udp: correct reuseport selection with connected sockets (Paolo Abeni) [1665807] - [net] udp6: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp: add missing rehash callback to udplite (Paolo Abeni) [1665807] - [net] udp6: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] udp: prefer listeners bound to an address (Paolo Abeni) [1665807] - [net] sched: fix race between deactivation and dequeue for NOLOCK qdisc (Davide Caratti) [1744397] - [net] check extack._msg before print (Ivan Vecera) [1751279] - [net] report invalid mtu value via netlink extack (Ivan Vecera) [1751279] - [net] report min and max mtu network device settings (Ivan Vecera) [1751279] - [net] failover: change mtu has RTNL (Ivan Vecera) [1751279] - [net] neigh: fix multiple neigh timer scheduling (Lorenzo Bianconi) [1730632] - [net] virtchnl: fix 'Unknown bps' in dmesg for 2.5Gb/5Gb speeds (Ivan Vecera) [1748437] - [net] Add a define for LLDP ethertype (Ivan Vecera) [1748428] - [net] devlink: Add support for direct reporter health state update (Petr Oros) [1746363] - [netdrv] Add IANA_VXLAN_UDP_PORT definition to vxlan header file (Ivan Vecera) [1731347] - [netdrv] Move the definition of the default Geneve udp port to public header file (Ivan Vecera) [1731347] - [net] openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [pci] PCI: Add pci_dev_id() helper (Myron Stowe) [1735874] - [netdrv] ibmvnic: Warn unknown speed message only when carrier is present (Steve Best) [1749873] - [netdrv] net/ibmvnic: Fix missing { in __ibmvnic_reset (Steve Best) [1749873] - [netdrv] net/ibmvnic: free reset work of removed device from queue (Steve Best) [1749873] - [netdrv] ibmvnic: Do not process reset during or after device removal (Steve Best) [1749873] - [cpufreq] cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP (Alexander Beregalov) [1752053] - [char] hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable (Prarit Bhargava) [1660796] - [hwtracing] intel_th: pci: Add support for another Lewisburg PCH (Jiri Olsa) [1714486] - [x86] x86/entry/32: Fix ENDPROC of common_spurious (Prarit Bhargava) [1730447] - [x86] x86/irq: Seperate unused system vectors from spurious entry again (Prarit Bhargava) [1730447] - [vfio] vfio/type1: Handle different mdev isolation type (Tarun Gupta) [1498341] - [vfio] vfio/type1: Add domain at(de)taching group helpers (Tarun Gupta) [1498341] - [vfio] vfio/mdev: Add iommu related member in mdev_device (Tarun Gupta) [1498341] - [documentation] ipmb: place it at driver-api and convert to ReST (Tony Camuso) [1752071] - [char] ipmi_si_intf: Fix race in timer shutdown handling (Tony Camuso) [1752071] - [char] ipmi_ssif: avoid registering duplicate ssif interface (Tony Camuso) [1752071] - [char] ipmi: Free receive messages when in an oops (Tony Camuso) [1752071] - [char] ipmi_si: Only schedule continuously in the thread in maintenance mode (Tony Camuso) [1752071] - [char] ipmi_si: Remove ipmi_ from the device attr names (Tony Camuso) [1752071] - [char] ipmi_si: Convert device attr permissions to octal (Tony Camuso) [1752071] - [char] ipmi_si: Rework some include files (Tony Camuso) [1752071] - [char] ipmi_si: Convert timespec64 to timespec (Tony Camuso) [1752071] - [char] Fix uninitialized variable in ipmb_dev_int.c (Tony Camuso) [1752071] - [char] fix platform_no_drv_owner.cocci warnings (Tony Camuso) [1752071] - [char] ipmi: ipmb: don't allocate i2c_client on stack (Tony Camuso) [1752071] - [char] ipmi: ipmb: Fix build error while CONFIG_I2C is set to m (Tony Camuso) [1752071] - [char] Add support for IPMB driver (Tony Camuso) [1752071] - [char] drivers: ipmi: Drop device reference (Tony Camuso) [1752071] - [char] ipmi_ssif: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] Add SPDX license identifier - Makefile/Kconfig (Tony Camuso) [1752071] - [char] ipmi_si: use bool type for initialized variable (Tony Camuso) [1752071] - [char] ipmi_si: fix unexpected driver unregister warning (Tony Camuso) [1752071] - [char] ipmi: Remove warning if no slave address is present (Tony Camuso) [1752071] - [char] ipmi:ssif: Only unregister the platform driver if it was registered (Tony Camuso) [1752071] - [char] ipmi: Add the i2c-addr property for SSIF interfaces (Tony Camuso) [1752071] - [char] ipmi: avoid atomic_inc in exit function (Tony Camuso) [1752071] - [char] ipmi: Remove file from ipmi_file_private (Tony Camuso) [1752071] - [char] ipmi_si: remove an unused variable in try_smi_init() (Tony Camuso) [1752071] - [char] ipmi: Make ipmi_interfaces_srcu variable static (Tony Camuso) [1752071] - [char] ipmi: Change to ktime_get_ts64() (Tony Camuso) [1752071] - [char] ipmi: Free the address list on module cleanup (Tony Camuso) [1752071] - [edac] EDAC, skx, i10nm: Fix source ID register offset (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Check ECC enabling status per channel (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add Intel additional Ice-Lake support (Aristeu Rozanski) [1485543 1482412] - [x86] x86/CPU: Add more Icelake model numbers (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx, i10nm: Make skx_common.c a pure library (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Add code to recognise new compound error code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Fix randconfig builds (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, i10nm: Add a driver for Intel 10nm server processors (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Delete duplicated code (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_common: Separate common code out from skx_edac (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Let EDAC core show the decoded result for debugfs (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Move debugfs node under EDAC's hierarchy (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Prepend hex formatting with '0x' (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx: Fix function calling order in skx_exit() (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, skx_edac: Fix logical channel intermediate decoding (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting (Aristeu Rozanski) [1485543 1482412] - [edac] EDAC: Correct DIMM capacity unit symbol (Aristeu Rozanski) [1485543 1482412] - [x86] x86/mce: Add notifier_block forward declaration (Aristeu Rozanski) [1485543 1482412] - [netdrv] net: thunderx: fix NULL pointer dereference in nicvf_open/nicvf_stop (Dean Nelson) [1657380] - [netdrv] net: thunder: fix a potential NULL pointer dereference (Dean Nelson) [1657380] - [netdrv] net: thunderx: remove link change polling code and info from nicpf (Dean Nelson) [1657380] - [netdrv] net: thunderx: move link state polling function to VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: add mutex to protect mailbox from concurrent calls for same VF (Dean Nelson) [1657380] - [netdrv] net: thunderx: rework xcast message structure to make it fit into 64 bit (Dean Nelson) [1657380] - [netdrv] net: thunderx: add nicvf_send_msg_to_pf result check for set_rx_mode_task (Dean Nelson) [1657380] - [netdrv] net: thunderx: make CFG_DONE message to run through generic send-ack sequence (Dean Nelson) [1657380] - [netdrv] net: thunderx: replace global nicvf_rx_mode_wq work queue for all VFs to private for each of them. (Dean Nelson) [1657380] - [netdrv] net: thunderx: set tso_hdrs pointer to NULL in nicvf_free_snd_queue (Dean Nelson) [1657380] - [x86] perf/x86/intel/rapl: Cosmetic rename internal variables in response to multi-die/pkg support (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Cosmetic renames in response to multi-die/pkg support (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Cosmetic: Rename internal variables to zones from packages (David Arcari) [1616309] - [x86] perf/x86/intel/cstate: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/rapl: Support multi-die/package (David Arcari) [1616309] - [x86] perf/x86/intel/uncore: Support multi-die/package (David Arcari) [1616309] - [topology] topology: Create core_cpus and die_cpus sysfs attributes (David Arcari) [1616309] - [topology] topology: Create package_cpus sysfs attribute (David Arcari) [1616309] - [hwmon] hwmon/coretemp: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Update RAPL domain name and debug messages (David Arcari) [1616309] - [thermal] thermal/x86_pkg_temp_thermal: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Support multi-die/package (David Arcari) [1616309] - [powercap] powercap/intel_rapl: Simplify rapl_find_package() (David Arcari) [1616309] - [x86] x86/topology: Define topology_logical_die_id() (David Arcari) [1616309] - [x86] x86/topology: Define topology_die_id() (David Arcari) [1616309] - [topology] cpu/topology: Export die_id (David Arcari) [1616309] - [x86] x86/topology: Create topology_max_die_per_package() (David Arcari) [1616309] - [x86] x86/topology: Add CPUID.1F multi-die/package support (David Arcari) [1616309] - [x86] x86/smpboot: Rename match_die() to match_pkg() (David Arcari) [1616309] - [documentation] topology: Simplify cputopology.txt formatting and wording (David Arcari) [1616309] - [documentation] x86/topology: Fix documentation typo (David Arcari) [1616309] - [mm] mm: remove stale comment from page struct (Rafael Aquini) [1737065] - [mm] mm/slab.c: fix an infinite loop in leaks_show() (Rafael Aquini) [1737065] - [mm] mm/slub.c: update the comment about slab frozen (Rafael Aquini) [1737065] - [mm] mm/slab.c: remove unneed check in cpuup_canceled (Rafael Aquini) [1737065] - [mm] slub: remove useless kmem_cache_debug() before remove_full() (Rafael Aquini) [1737065] - [mm] slab: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slub: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: use slab_list instead of lru (Rafael Aquini) [1737065] - [mm] slob: respect list_head abstraction layer (Rafael Aquini) [1737065] - [mm] slab: fix a crash by reading /proc/slab_allocators (Rafael Aquini) [1737065] - [mm] mm: add support for kmem caches in DMA32 zone (Rafael Aquini) [1737065] - [mm] mm, slub: make the comment of put_cpu_partial() complete (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove an unused addr argument (Rafael Aquini) [1737065] - [mm] mm/slab.c: kmemleak no scan alien caches (Rafael Aquini) [1737065] - [mm] mm/slub.c: freelist is ensured to be NULL when new_slab() fails (Rafael Aquini) [1737065] - [mm] slab: alien caches must not be initialized if the allocation of the alien cache failed (Rafael Aquini) [1737065] - [mm] include/linux/slab.h: fix sparse warning in kmalloc_type() (Rafael Aquini) [1737065] - [mm] mm/slub.c: record final state of slub action in deactivate_slab() (Rafael Aquini) [1737065] - [mm] mm/slub.c: page is always non-NULL in node_match() (Rafael Aquini) [1737065] - [mm] mm/slub.c: remove validation on cpu_slab in __flush_cpu_slab() (Rafael Aquini) [1737065] - [mm] mm, slab: remove unnecessary unlikely() (Rafael Aquini) [1737065] - [mm] mm: move obj_to_index to include/linux/slab_def.h (Rafael Aquini) [1737065] - [mm] slab: make kmem_cache_create{_usercopy} description proper kernel-doc (Rafael Aquini) [1737065] - [mm] slub: extend slub debug to handle multiple slabs (Rafael Aquini) [1737065] - [mm] mm/slub.c: switch to bitmap_zalloc() (Rafael Aquini) [1737065] - [fs] io_uring: add need_resched() check in inner poll loop (Jeff Moyer) [1706143] - [fs] io_uring: don't enter poll loop if we have CQEs pending (Jeff Moyer) [1706143] - [fs] io_uring: fix potential hang with polled IO (Jeff Moyer) [1706143] - [fs] io_uring: fix an issue when IOSQE_IO_LINK is inserted into defer list (Jeff Moyer) [1706143] - [fs] io_uring: fix manual setup of iov_iter for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: fix KASAN use after free in io_sq_wq_submit_work (Jeff Moyer) [1706143] - [fs] io_uring: ensure ->list is initialized for poll commands (Jeff Moyer) [1706143] - [fs] io_uring: track io length in async_list based on bytes (Jeff Moyer) [1706143] - [fs] io_uring: don't use iov_iter_advance() for fixed buffers (Jeff Moyer) [1706143] - [fs] io_uring: add a memory barrier before atomic_read (Jeff Moyer) [1706143] - [fs] io_uring: fix counter inc/dec mismatch in async_list (Jeff Moyer) [1706143] - [fs] io_uring: fix the sequence comparison in io_sequence_defer (Jeff Moyer) [1706143] - [fs] io_uring: fix io_sq_thread_stop running in front of io_sq_thread (Jeff Moyer) [1706143] - [include] io_uring: add support for recvmsg() (Jeff Moyer) [1706143] - [include] io_uring: add support for sendmsg() (Jeff Moyer) [1706143] - [fs] signal: remove the wrong signal_pending() check in restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] io_uring: add support for sqe links (Jeff Moyer) [1706143] - [fs] io_uring: ensure req->file is cleared on allocation (Jeff Moyer) [1706143] - [fs] io_uring: fix memory leak of UNIX domain socket inode (Jeff Moyer) [1706143] - [fs] io_uring: punt short reads to async context (Jeff Moyer) [1706143] - [fs] uio: make import_iovec()/compat_import_iovec() return bytes on success (Jeff Moyer) [1706143] - [fs] io_uring: Fix __io_uring_register() false success (Jeff Moyer) [1706143] - [tools] tools/io_uring: sync with liburing (Jeff Moyer) [1706143] - [tools] tools/io_uring: fix Makefile for pthread library link (Jeff Moyer) [1706143] - [fs] io_uring: use wait_event_interruptible for cq_wait conditional wait (Jeff Moyer) [1706143] - [fs] io_uring: adjust smp_rmb inside io_cqring_events (Jeff Moyer) [1706143] - [fs] io_uring: fix infinite wait in khread_park() on io_finish_async() (Jeff Moyer) [1706143] - [fs] io_uring: remove 'ev_flags' argument (Jeff Moyer) [1706143] - [fs] io_uring: fix failure to verify SQ_AFF cpu (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQE data (Jeff Moyer) [1706143] - [fs] io_uring: use cpu_online() to check p->sq_thread_cpu instead of cpu_possible() (Jeff Moyer) [1706143] - [fs] io_uring: fix shadowed variable ret return code being not checked (Jeff Moyer) [1706143] - [fs] req->error only used for iopoll (Jeff Moyer) [1706143] - [fs] io_uring: add support for eventfd notifications (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_SYNC_FILE_RANGE (Jeff Moyer) [1706143] - [fs] fs: add sync_file_range() helper (Jeff Moyer) [1706143] - [fs] io_uring: add support for marking commands as draining (Jeff Moyer) [1706143] - [fs] io_uring: avoid page allocation warnings (Jeff Moyer) [1706143] - [include] iov_iter: fix iov_iter_type (Jeff Moyer) [1706143] - [fs] block: fix handling for BIO_NO_PAGE_REF (Jeff Moyer) [1706143] - [fs] io_uring: drop req submit reference always in async punt (Jeff Moyer) [1706143] - [fs] io_uring: free allocated io_memory once (Jeff Moyer) [1706143] - [fs] io_uring: fix SQPOLL cpu validation (Jeff Moyer) [1706143] - [fs] io_uring: have submission side sqe errors post a cqe (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after unsetting IORING_SQ_NEED_WAKEUP (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after incrementing dropped counter (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading SQ tail (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier after updating SQ head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before reading cq head (Jeff Moyer) [1706143] - [fs] io_uring: remove unnecessary barrier before wq_has_sleeper (Jeff Moyer) [1706143] - [fs] io_uring: fix notes on barriers (Jeff Moyer) [1706143] - [fs] io_uring: fix handling SQEs requesting NOWAIT (Jeff Moyer) [1706143] - [fs] io_uring: remove 'state' argument from io_{read,write} path (Jeff Moyer) [1706143] - [fs] io_uring: fix poll full SQ detection (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition when sq threads goes sleeping (Jeff Moyer) [1706143] - [fs] io_uring: fix race condition reading SQ entries (Jeff Moyer) [1706143] - [fs] io_uring: fail io_uring_register(2) on a dying io_uring instance (Jeff Moyer) [1706143] - [fs] io_uring: fix CQ overflow condition (Jeff Moyer) [1706143] - [fs] io_uring: fix possible deadlock between io_uring_{enter,register} (Jeff Moyer) [1706143] - [powerpc] arch: add pidfd and io_uring syscalls everywhere (Jeff Moyer) [1706143] - [fs] io_uring: drop io_file_put() 'file' argument (Jeff Moyer) [1706143] - [fs] io_uring: only test SQPOLL cpu after we've verified it (Jeff Moyer) [1706143] - [fs] io_uring: park SQPOLL thread if it's percpu (Jeff Moyer) [1706143] - [fs] io_uring: restrict IORING_SETUP_SQPOLL to root (Jeff Moyer) [1706143] - [tools] tools/io_uring: remove IOCQE_FLAG_CACHEHIT (Jeff Moyer) [1706143] - [fs] io_uring: fix double free in case of fileset regitration failure (Jeff Moyer) [1706143] - [fs] io_uring: offload write to async worker in case of -EAGAIN (Jeff Moyer) [1706143] - [fs] io_uring: fix big-endian compat signal mask handling (Jeff Moyer) [1706143] - [fs] block: add BIO_NO_PAGE_REF flag (Jeff Moyer) [1706143] - [fs] iov_iter: add ITER_BVEC_FLAG_NO_REF flag (Jeff Moyer) [1706143] - [maintainers] io_uring: mark me as the maintainer (Jeff Moyer) [1706143] - [fs] io_uring: retry bulk slab allocs as single allocs (Jeff Moyer) [1706143] - [fs] io_uring: fix poll races (Jeff Moyer) [1706143] - [fs] io_uring: fix fget/fput handling (Jeff Moyer) [1706143] - [fs] io_uring: add prepped flag (Jeff Moyer) [1706143] - [fs] io_uring: make io_read/write return an integer (Jeff Moyer) [1706143] - [fs] io_uring: use regular request ref counts (Jeff Moyer) [1706143] - [fs] mm: refactor readahead defines in mm.h (Jeff Moyer) [1706143] - [tools] io_uring: add a few test tools (Jeff Moyer) [1706143] - [fs] io_uring: allow workqueue item to handle multiple buffered requests (Jeff Moyer) [1706143] - [fs] io_uring: add support for IORING_OP_POLL (Jeff Moyer) [1706143] - [fs] io_uring: add io_kiocb ref count (Jeff Moyer) [1706143] - [fs] io_uring: add submission polling (Jeff Moyer) [1706143] - [fs] io_uring: add file set registration (Jeff Moyer) [1706143] - [net] net: split out functions related to registering inflight socket files (Jeff Moyer) [1706143] - [include] io_uring: add support for pre-mapped user IO buffers (Jeff Moyer) [1706143] - [block] block: implement bio helper to add iter bvec pages to bio (Jeff Moyer) [1706143] - [fs] io_uring: batch io_kiocb allocation (Jeff Moyer) [1706143] - [fs] io_uring: use fget/fput_many() for file references (Jeff Moyer) [1706143] - [fs] fs: add fget_many() and fput_many() (Jeff Moyer) [1706143] - [fs] io_uring: support for IO polling (Jeff Moyer) [1706143] - [fs] io_uring: add fsync support (Jeff Moyer) [1706143] - [include] Add io_uring IO interface (Jeff Moyer) [1706143] - [fs] iomap: wire up the iopoll method (Jeff Moyer) [1706143] - [fs] block: add bio_set_polled() helper (Jeff Moyer) [1706143] - [fs] block: wire up block device iopoll method (Jeff Moyer) [1706143] - [fs] signal: Add restore_user_sigmask() (Jeff Moyer) [1706143] - [fs] signal: Add set_user_sigmask() (Jeff Moyer) [1706143] - [net] iov_iter: Fix 9p virtio breakage (Benjamin Coddington) [1734762] - [lib] iov_iter: Add I/O discard iterator (Benjamin Coddington) [1734762] - [fs] iov_iter: Separate type from direction and use accessor functions (Benjamin Coddington) [1734762] - [fs] iov_iter: Use accessor function (Benjamin Coddington) [1734762]- [kernel] ftrace/x86: Anotate text_mutex split between ftrace_arch_code_modify_post_process() and ftrace_arch_code_modify_prepare() (Joe Lawrence) [1696461] - [kernel] ftrace/x86: Remove possible deadlock between register_kprobe() and ftrace_run_update_code() (Joe Lawrence) [1696461] - [kernel] Revert "livepatch: Remove reliable stacktrace check in klp_try_switch_task()" (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: push and pop dynamic debug config (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: add test skip handling (Joe Lawrence) [1696461] - [kernel] module: Fix livepatch/ftrace module text permissions race (Joe Lawrence) [1696461] - [kernel] kprobes: Mark ftrace mcount handler functions nokprobe (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: Add functions.sh to TEST_PROGS_EXTENDED (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: use TEST_PROGS for test scripts (Joe Lawrence) [1696461] - [kernel] livepatch/selftests: use "$@" to preserve argument list (Joe Lawrence) [1696461] - [kernel] livepatch: Module coming and going callbacks can proceed with all listed patches (Joe Lawrence) [1696461] - [kernel] livepatch: Proper error handling in the shadow variables selftest (Joe Lawrence) [1696461] - [kernel] livepatch: return -ENOMEM on ptr_id() allocation failure (Joe Lawrence) [1696461] - [kernel] livepatch: Introduce klp_for_each_patch macro (Joe Lawrence) [1696461] - [kernel] livepatch: core: Return EOPNOTSUPP instead of ENOSYS (Joe Lawrence) [1696461] - [kernel] livepatch: samples: non static warnings fix (Joe Lawrence) [1696461] - [kernel] livepatch: Remove signal sysfs attribute (Joe Lawrence) [1696461] - [kernel] livepatch: Send a fake signal periodically (Joe Lawrence) [1696461] - [kernel] selftests/livepatch: introduce tests (Joe Lawrence) [1696461] - [kernel] livepatch: Remove ordering (stacking) of the livepatches (Joe Lawrence) [1696461] - [kernel] livepatch: Atomic replace and cumulative patches documentation (Joe Lawrence) [1696461] - [kernel] livepatch: Remove Nop structures when unused (Joe Lawrence) [1696461] - [kernel] livepatch: Add atomic replace (Joe Lawrence) [1696461] - [kernel] livepatch: Use lists to manage patches, objects and functions (Joe Lawrence) [1696461] - [kernel] livepatch: Simplify API by removing registration step (Joe Lawrence) [1696461] - [kernel] livepatch: Don't block the removal of patches loaded after a forced transition (Joe Lawrence) [1696461] - [kernel] livepatch: Consolidate klp_free functions (Joe Lawrence) [1696461] - [kernel] livepatch: Shuffle klp_enable_patch()/klp_disable_patch() code (Joe Lawrence) [1696461] - [kernel] livepatch: Change unsigned long old_addr -> void *old_func in struct klp_func (Joe Lawrence) [1696461] - [kernel] livepatch: check kzalloc return values (Joe Lawrence) [1696461] - [kernel] livepatch: Replace synchronize_sched() with synchronize_rcu() (Joe Lawrence) [1696461] - [kernel] livepatch: Validate module/old func name length (Joe Lawrence) [1696461] - [kernel] livepatch: Remove reliable stacktrace check in klp_try_switch_task() (Joe Lawrence) [1696461] - [pci] PCI/LINK: Add Kconfig option (default off) (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use shared MSI/MSI-X vector for Bandwidth Management (Myron Stowe) [1748141] - [pci] PCI: Fix issue with "pci=disable_acs_redir" parameter being ignored (Myron Stowe) [1748141] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller (Myron Stowe) [1748141] - [pci] PCI/LINK: Deduplicate bandwidth reports for multi-function devices (Myron Stowe) [1748141] - [pci] PCI/LINK: Clear bandwidth notification interrupt before enabling it (Myron Stowe) [1748141] - [pci] PCI/LINK: Supply IRQ handler so level-triggered IRQs are acked (Myron Stowe) [1748141] - [pci] PCI/LINK: Report degraded links via link bandwidth notification (Myron Stowe) [1748141] - [pci] PCI/portdrv: Support PCIe services on subtractive decode bridges (Myron Stowe) [1748141] - [pci] PCI/portdrv: Use conventional Device ID table formatting (Myron Stowe) [1748141] - [pci] PCI: Update PCIEPORTBUS Kconfig help text (Myron Stowe) [1748141] - [pci] PCI: Clean up usage of __u32 type (Myron Stowe) [1748141] - [pci] PCI: Move Rohm Vendor ID to generic list (Myron Stowe) [1748141] - [pci] PCI: pciehp: Add HXT quirk for Command Completed errata (Myron Stowe) [1748141] - [pci] PCI: Add ACS quirk for HXT SD4800 (Myron Stowe) [1748141] - [pci] PCI: Add HXT vendor ID (Myron Stowe) [1748141] - [pci] PCI: Use of_node_name_eq() for node name comparisons (Myron Stowe) [1748141] - [pci] PCI: Mark expected switch fall-through (Myron Stowe) [1748141] - [pci] PCI: ibmphp: Turn semaphores into completions or mutexes (Myron Stowe) [1748141] - [pci] x86/PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub (Myron Stowe) [1748141] - [pci] PCI: Rely on config space header type, not class code (Myron Stowe) [1748141] - [pci] PCI: Make pci_size() return real BAR size (Myron Stowe) [1748141] - [pci] PCI/DPC: Fix print AER status in DPC event handling (Myron Stowe) [1748141] - [pci] PCI/ASPM: Save LTR Capability for suspend/resume (Myron Stowe) [1748141] - [pci] PCI/ASPM: Use LTR if already enabled by platform (Myron Stowe) [1748141] - [pci] PCI: Enable SERR# forwarding for all bridges (Myron Stowe) [1748141] - [pci] PCI/AER: Use match_string() helper to simplify the code (Myron Stowe) [1748141] - [fs] gfs2: Use async glocks for rename (Robert S Peterson) [1737561] - [fs] gfs2: create function gfs2_glock_update_hold_time (Robert S Peterson) [1737561] - [fs] gfs2: separate holder for rgrps in gfs2_rename (Robert S Peterson) [1737561] - [netdrv] net: aquantia: reapply vlan filters on up (Igor Russkikh) [1740500] - [s390] s390/setup: Fix kernel lock down for s390 (Philipp Rudo) [1748343] - [powerpc] kvm: ppc: book3s hv: Fix XICS-on-XIVE H_IPI when priority = 0 (David Gibson) [1725800] - [s390] vfio-ap: fix irq registration (Thomas Huth) [1660910] - [s390] ap: kvm: Enable PQAP/AQIC facility for the guest (Thomas Huth) [1660910] - [s390] ap: implement PAPQ AQIC interception in kernel (Thomas Huth) [1660910] - [s390] vfio: ap: register IOMMU VFIO notifier (Thomas Huth) [1660910] - [s390] ap: kvm: add PQAP interception for AQIC (Thomas Huth) [1660910] - [s390] kvm: s390: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Return correct values for Invalid CRYCB format (Thomas Huth) [1749503] - [s390] kvm: s390: vsie: Do not shadow CRYCB when no AP and no keys (Thomas Huth) [1749503] - [s390] kvm: s390: change default halt poll time to 50us (Thomas Huth) [1749503] - [s390] kvm: s390: fix typo in parameter description (Thomas Huth) [1749503] - [s390] kvm: s390: provide kvm_arch_no_poll function (Thomas Huth) [1749503] - [kernel] kvm: polling: add architecture backend to disable polling (Thomas Huth) [1749503] - [s390] vtime: steal time exponential moving average (Thomas Huth) [1749503] - [tools] kvm: selftests: fix ucall on x86 (Thomas Huth) [1730412] - [tools] kvm: selftests: Test invalid bits in kvm_valid_regs and kvm_dirty_regs on s390x (Thomas Huth) [1730412] - [s390] kvm: s390: Disallow invalid bits in kvm_valid_regs and kvm_dirty_regs (Thomas Huth) [1730412] - [tools] kvm: selftests: Add a test for the KVM_S390_MEM_OP ioctl (Thomas Huth) [1730412] - [s390] kvm: s390: Test for bad access register and size at the start of S390_MEM_OP (Thomas Huth) [1730412] - [tools] kvm: selftests: Enable dirty_log_test on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Implement ucall() for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Split ucall.c into architecture specific files (Thomas Huth) [1730412] - [tools] kvm: selftests: ucall improvements (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: dirty_log_test: fix unaligned memslot size (Thomas Huth) [1730412] - [tools] kvm: selftests: Compile code with warnings enabled (Thomas Huth) [1730412] - [tools] kvm: selftests: enable pgste option for the linker on s390 (Thomas Huth) [1730412] - [tools] kvm: selftests: Move kvm_create_max_vcpus test to generic code (Thomas Huth) [1730412] - [virt] kvm: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID (Thomas Huth) [1730412] - [documentation] kvm: move KVM_CAP_NR_MEMSLOTS to common code (Thomas Huth) [1730412] - [tools] kvm: selftests: Add the sync_regs test for s390x (Thomas Huth) [1730412] - [s390] kvm: s390: fix memory slot handling for KVM_SET_USER_MEMORY_REGION (Thomas Huth) [1730412] - [tools] kvm: selftests: Add processor code for s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Align memory region addresses to 1M on s390x (Thomas Huth) [1730412] - [tools] kvm: selftests: Introduce a VM_MODE_DEFAULT macro for the default bits (Thomas Huth) [1730412] - [tools] kvm: selftests: aarch64: fix default vm mode (Thomas Huth) [1730412] - [tools] kvm: selftests: Guard struct kvm_vcpu_events with __KVM_HAVE_VCPU_EVENTS (Thomas Huth) [1730412] - [tools] kvm: selftests: Wrap vcpu_nested_state_get/set functions with x86 guard (Thomas Huth) [1730412]- [fs] xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT (Bill O'Donnell) [1739607] - [fs] xfs: fix reflink source file racing with directio writes (Bill O'Donnell) [1739607] - [fs] xfs: implement cgroup aware writeback (Bill O'Donnell) [1274406] - [fs] xfs: simplify xfs_chain_bio (Bill O'Donnell) [1274406] - [fs] xfs: inode btree scrubber should calculate im_boffset correctly (Bill O'Donnell) [1739607] - [fs] xfs: fix broken log reservation debugging (Bill O'Donnell) [1739607] - [fs] xfs: don't reserve per-AG space for an internal log (Bill O'Donnell) [1739607] - [fs] xfs: change some error-less functions to void types (Bill O'Donnell) [1739607] - [fs] xfs: add online scrub for superblock counters (Bill O'Donnell) [1739607] - [fs] xfs: don't parse the mtpt mount option (Bill O'Donnell) [1739607] - [fs] xfs: scrub should check incore counters against ondisk headers (Bill O'Donnell) [1739607] - [fs] xfs: allow scrubbers to pause background reclaim (Bill O'Donnell) [1739607] - [fs] xfs: rename the speculative block allocation reclaim toggle functions (Bill O'Donnell) [1739607] - [fs] xfs: track delayed allocation reservations across the filesystem (Bill O'Donnell) [1739607] - [fs] xfs: fix broken bhold behavior in xrep_roll_ag_trans (Bill O'Donnell) [1739607] - [fs] xfs: unlock inode when xfs_ioctl_setattr_get_trans can't get transaction (Bill O'Donnell) [1739607] - [fs] xfs: kill the xfs_dqtrx_t typedef (Bill O'Donnell) [1739607] - [fs] xfs: widen inode delalloc block counter to 64-bits (Bill O'Donnell) [1739607] - [fs] xfs: widen quota block counters to 64-bit integers (Bill O'Donnell) [1739607] - [fs] xfs: assert that we don't enter agfl freeing with a non-permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: make tr_growdata a permanent transaction (Bill O'Donnell) [1739607] - [fs] xfs: merge adjacent io completions of the same type (Bill O'Donnell) [1739607] - [fs] xfs: remove unused m_data_workqueue (Bill O'Donnell) [1739607] - [fs] xfs: implement per-inode writeback completion queues (Bill O'Donnell) [1739607] - [fs] xfs: scrub should only cross-reference with healthy btrees (Bill O'Donnell) [1739607] - [fs] xfs: scrub/repair should update filesystem metadata health (Bill O'Donnell) [1739607] - [fs] xfs: hoist the already_fixed variable to the scrub context (Bill O'Donnell) [1739607] - [fs] xfs: collapse scrub bool state flags into a single unsigned int (Bill O'Donnell) [1739607] - [fs] xfs: refactor scrub context initialization (Bill O'Donnell) [1739607] - [fs] xfs: report inode health via bulkstat (Bill O'Donnell) [1739607] - [fs] xfs: report AG health via AG geometry ioctl (Bill O'Donnell) [1739607] - [fs] xfs: report fs and rt health via geometry structure (Bill O'Donnell) [1739607] - [fs] xfs: add a new ioctl to describe allocation group geometry (Bill O'Donnell) [1739607] - [fs] xfs: bump XFS_IOC_FSGEOMETRY to v5 structures (Bill O'Donnell) [1739607] - [fs] xfs: clear BAD_SUMMARY if unmounting an unhealthy filesystem (Bill O'Donnell) [1739607] - [fs] xfs: replace the BAD_SUMMARY mount flag with the equivalent health code (Bill O'Donnell) [1739607] - [fs] xfs: track metadata health status (Bill O'Donnell) [1739607] - [fs] xfs,fstrim: fix to return correct minlen (Bill O'Donnell) [1739607] - [fs] xfs: shutdown after buf release in iflush cluster abort path (Bill O'Donnell) [1739607] - [fs] xfs: wake commit waiters on CIL abort before log item abort (Bill O'Donnell) [1739607] - [fs] xfs: fix btree scrub checking with regards to root-in-inode (Bill O'Donnell) [1739607] - [fs] xfs: dabtree scrub needs to range-check level (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: zero initialize highstale and lowstale in xfs_dir2_leaf_addname (Bill O'Donnell) [1739607] - [fs] xfs: clean up xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: Zero initialize highstale and lowstale in xfs_dir2_leafn_add (Bill O'Donnell) [1739607] - [fs] xfs: fix backwards endian conversion in scrub (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variables (Bill O'Donnell) [1739607] - [fs] xfs: rework breaking of shared extents in xfs_file_iomap_begin (Bill O'Donnell) [1739607] - [fs] xfs: don't pass iomap flags to xfs_reflink_allocate_cow (Bill O'Donnell) [1739607] - [fs] xfs: fix uninitialized error variable (Bill O'Donnell) [1739607] - [fs] xfs: introduce an always_cow mode (Bill O'Donnell) [1739607] - [fs] xfs: report IOMAP_F_SHARED from xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: make COW fork unwritten extent conversions more robust (Bill O'Donnell) [1739607] - [fs] xfs: merge COW handling into xfs_file_iomap_begin_delay (Bill O'Donnell) [1739607] - [fs] xfs: also truncate holes covered by COW blocks (Bill O'Donnell) [1739607] - [fs] xfs: don't use delalloc extents for COW on files with extsize hints (Bill O'Donnell) [1739607] - [fs] xfs: fix SEEK_DATA for speculative COW fork preallocation (Bill O'Donnell) [1739607] - [fs] xfs: make xfs_bmbt_to_iomap more useful (Bill O'Donnell) [1739607] - [fs] xfs: fix xfs_buf magic number endian checks (Bill O'Donnell) [1739607] - [fs] xfs: retry COW fork delalloc conversion when no extent was found (Bill O'Donnell) [1739607] - [fs] xfs: remove the truncate short cut in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: move xfs_iomap_write_allocate to xfs_aops.c (Bill O'Donnell) [1739607] - [fs] xfs: move stat accounting to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: move transaction handling to xfs_bmapi_convert_delalloc (Bill O'Donnell) [1739607] - [fs] xfs: split XFS_BMAPI_DELALLOC handling from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: factor out two helpers from xfs_bmapi_write (Bill O'Donnell) [1739607] - [fs] xfs: simplify the xfs_bmap_btree_to_extents calling conventions (Bill O'Donnell) [1739607] - [fs] xfs: remove the s_maxbytes checks in xfs_map_blocks (Bill O'Donnell) [1739607] - [fs] xfs: remove the io_type field from the writeback context and ioend (Bill O'Donnell) [1739607] - [fs] xfs: compile time offset checks for common v4/v5 metadata (Bill O'Donnell) [1739607] - [fs] xfs: use buf ops magic to detect btree block type (Bill O'Donnell) [1739607] - [fs] xfs: add magic numbers to dquot buffer ops (Bill O'Donnell) [1739607] - [fs] xfs: add inode magic to inode verifier (Bill O'Donnell) [1739607] - [fs] xfs: factor xfs_da3_blkinfo verification into common helper (Bill O'Donnell) [1739607] - [fs] xfs: miscellaneous verifier magic value fixups (Bill O'Donnell) [1739607] - [fs] xfs: use verifier magic field in dir2 leaf verifiers (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between bnobt and cntbt magic values (Bill O'Donnell) [1739607] - [fs] xfs: split up allocation btree verifier (Bill O'Donnell) [1739607] - [fs] xfs: distinguish between inobt and finobt magic values (Bill O'Donnell) [1739607] - [fs] xfs: create a separate finobt verifier (Bill O'Donnell) [1739607] - [fs] xfs: always check magic values in on-disk byte order (Bill O'Donnell) [1739607] - [fs] xfs: clarify documentation for the function to reverify buffers (Bill O'Donnell) [1739607] - [fs] xfs: cache unlinked pointers in an rhashtable (Bill O'Donnell) [1739607] - [fs] xfs: add tracepoints for high level iunlink operations (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode update in iunlink_remove (Bill O'Donnell) [1739607] - [fs] xfs: refactor unlinked list search and mapping to a separate function (Bill O'Donnell) [1739607] - [fs] xfs: refactor inode unlinked pointer update functions (Bill O'Donnell) [1739607] - [fs] xfs: strengthen AGI unlinked inode bucket pointer checks (Bill O'Donnell) [1739607] - [fs] xfs: refactor AGI unlinked bucket updates (Bill O'Donnell) [1739607] - [fs] xfs: add xfs_verify_agino_or_null helper (Bill O'Donnell) [1739607] - [fs] xfs: clean up iunlink functions (Bill O'Donnell) [1739607] - [fs] xfs: Introduce XFS_PTAG_VERIFIER_ERROR panic mask (Bill O'Donnell) [1739607] - [fs] xfs: remove duplicated xfs_defer.h (Bill O'Donnell) [1739607] - [fs] xfs: check attribute name validity (Bill O'Donnell) [1739607] - [fs] xfs: check directory name validity (Bill O'Donnell) [1739607] - [fs] xfs: fix off-by-one error in rtbitmap cross-reference (Bill O'Donnell) [1739607] - [fs] xfs: scrub should flag dir/attr offsets that aren't mappable with xfs_dablk_t (Bill O'Donnell) [1739607] - [fs] xfs: abort xattr scrub if fatal signals are pending (Bill O'Donnell) [1739607] - [fs] xfs: consolidate scrub dinode mapping code into a single function (Bill O'Donnell) [1739607] - [fs] xfs: scrub big block inode btrees correctly (Bill O'Donnell) [1739607] - [fs] xfs: clean up the inode cluster checking in the inobt scrub (Bill O'Donnell) [1739607] - [fs] xfs: hoist inode cluster checks out of loop (Bill O'Donnell) [1739607] - [fs] xfs: check inobt record alignment on big block filesystems (Bill O'Donnell) [1739607] - [fs] xfs: check the ir_startino alignment directly (Bill O'Donnell) [1739607] - [fs] xfs: never try to scrub more than 64 inodes per inobt record (Bill O'Donnell) [1739607] - [powerpc] powerpc: Allow flush_(inval_)dcache_range to work across ranges >4GB (Steve Best) [1744062] - [scsi] scsi: lpfc: Fix port relogin failure due to GID_FT interaction (Dick Kennedy) [1733217] - [rpmspec] redhat: Fix error messages during build of zfcpdump kernel (Philipp Rudo) [1745652] - [s390] s390/protvirt: avoid memory sharing for diag 308 set/store (Philipp Rudo) [1745614] - [infiniband] IB/hfi1: Remove extra brackets from an if (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Update I/O section to be clearer about CPU vs thread (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Fix style, spacing and grammar in I/O section (Petr Oros) [1737066] - [powerpc] arch: Remove dummy mmiowb() definitions from arch code (Petr Oros) [1737066] - [netdrv] net/ethernet/silan/sc92031: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [infiniband] i40iw: Redefine i40iw_mmiowb() to do nothing (Petr Oros) [1737066] - [scsi] scsi/qla1280: Remove stale comment about mmiowb() (Petr Oros) [1737066] - [netdrv] drivers: Remove explicit invocations of mmiowb() (Petr Oros) [1737066] - [infiniband] drivers: Remove useless trailing comments from mmiowb() invocations (Petr Oros) [1737066] - [documentation] Documentation: Kill all references to mmiowb() (Petr Oros) [1737066] - [riscv] riscv/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [powerpc] powerpc/mmiowb: Hook up mmwiob() implementation to asm-generic code (Petr Oros) [1737066] - [nds32] nds32/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [x86] x86/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [arm64] arm64/io: Remove useless definition of mmiowb() (Petr Oros) [1737066] - [include] mmiowb: Hook up mmiowb helpers to spinlocks and generic I/O accessors (Petr Oros) [1737066] - [arm64] arch: Use asm-generic header for asm/mmiowb.h (Petr Oros) [1737066] - [kernel] asm-generic/mmiowb: Add generic implementation of mmiowb() tracking (Petr Oros) [1737066] - [documentation] docs/memory-barriers.txt: Rewrite "KERNEL I/O BARRIER EFFECTS" section (Petr Oros) [1737066] - [s390] s390/cpum_sf: save TOD clock base in SDBs for time conversion (Philipp Rudo) [1743504] - [net] netns: provide pure entropy for net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [net] netns: get more entropy from net_hash_mix() (Paolo Abeni) [1737439] {CVE-2019-10639} - [netdrv] net: phy: improve pause handling (Petr Oros) [1735763] - [netdrv] net: phy: fix reading fixed phy status (Petr Oros) [1735763] - [netdrv] net: phy: allow a PHY driver to define neither features nor get_features (Petr Oros) [1735763] - [netdrv] net: phy: Add support for asking the PHY its abilities (Petr Oros) [1735763] - [netdrv] net: phy: use genphy_read_abilities in genphy driver (Petr Oros) [1735763] - [netdrv] net: phy: add genphy_read_abilities (Petr Oros) [1735763] - [netdrv] net: phy: let genphy_c45_read_abilities also check aneg capability (Petr Oros) [1735763] - [netdrv] net: phy: Add generic support for 2.5GBaseT and 5GBaseT (Petr Oros) [1735763] - [netdrv] net: phy: Extract genphy_c45_pma_read_abilities from marvell10g (Petr Oros) [1735763] - [netdrv] net: phy: Move of_set_phy_eee_broken to phy-core.c (Petr Oros) [1735763] - [netdrv] net: phy: Mask-out non-compatible modes when setting the max-speed (Petr Oros) [1735763] - [netdrv] net: phy: don't allow __set_phy_supported to add unsupported modes (Petr Oros) [1735763] - [netdrv] net: phy: remove unneeded masking of PHY register read results (Petr Oros) [1735763] - [netdrv] net: phy: probe the PHY before determining the supported features (Petr Oros) [1735763] - [rpmspec] fix package summary and description for some kernel subpackages ("Herton R. Krzesinski") [1656863] - [fs] mm/huge_memory: fix vmf_insert_pfn_{pmd, pud}() crash, handle unaligned addresses (Jeff Moyer) [1743159] - [mm] mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd() (Jeff Moyer) [1743159] - [arm64] arm64: disable improved unwind tables (Mark Langsdorf) [1684694] - [arm64] arm64/stacktrace: Export save_stack_trace_regs() (Mark Langsdorf) [1684694] - [fs] nfs4: flex_file: ignore synthetic uid/gid for tightly coupled DSes (Steve Dickson) [1655712] - [include] futex: Update comments and docs about return values of arch futex code (Waiman Long) [1737058] - [arm64] arm64: futex: Avoid copying out uninitialised stack in failed cmpxchg() (Waiman Long) [1737058] - [arm64] arm64: futex: Bound number of LDXR/STXR loops in FUTEX_WAKE_OP (Waiman Long) [1737058] - [kernel] locking/futex: Allow low-level atomic operations to return -EAGAIN (Waiman Long) [1737058] - [arm64] arm64: futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value (Waiman Long) [1737058] - [kernel] futex: Ensure that futex address is aligned in handle_futex_death() (Waiman Long) [1737058] - [kernel] futex: Convert futex_pi_state.refcount to refcount_t (Waiman Long) [1737058] - [kernel] sched/wake_q: Reduce reference counting for special users (Waiman Long) [1737058] - [kernel] sched/wake_q: Add branch prediction hint to wake_q_add() cmpxchg (Waiman Long) [1737058] - [kernel] futex: No need to check return value of debugfs_create functions (Waiman Long) [1737058] - [kernel] futex: Handle early deadlock return correctly (Waiman Long) [1737058] - [kernel] futex: Fix barrier comment (Waiman Long) [1737058] - [kernel] futex: Cure exit race (Waiman Long) [1737058] - [kernel] futex: Replace spin_is_locked() with lockdep (Waiman Long) [1737058] - [kernel] futex: Mark expected switch fall-throughs (Waiman Long) [1737058] - [kernel] sched/deadline: Correctly handle active 0-lag timers (Phil Auld) [1735907] - [include] build_bug.h: add wrapper for _Static_assert (Ivan Vecera) [1735752] - [include] build_bug.h: remove most of dummy BUILD_BUG_ON stubs for Sparse (Ivan Vecera) [1735752] - [include] build_bug.h: remove negative-array fallback for BUILD_BUG_ON() (Ivan Vecera) [1735752] - [mm] percpu: remove spurious lock dependency between percpu and sched (Rafael Aquini) [1731180] - [mm] percpu: use chunk scan_hint to skip some scanning (Rafael Aquini) [1731180] - [mm] percpu: convert chunk hints to be based on pcpu_block_md (Rafael Aquini) [1731180] - [mm] percpu: make pcpu_block_md generic (Rafael Aquini) [1731180] - [mm] percpu: use block scan_hint to only scan forward (Rafael Aquini) [1731180] - [mm] percpu: remember largest area skipped during allocation (Rafael Aquini) [1731180] - [mm] percpu: add block level scan_hint (Rafael Aquini) [1731180] - [mm] percpu: set PCPU_BITMAP_BLOCK_SIZE to PAGE_SIZE (Rafael Aquini) [1731180] - [mm] percpu: relegate chunks unusable when failing small allocations (Rafael Aquini) [1731180] - [mm] percpu: manage chunks based on contig_bits instead of free_bytes (Rafael Aquini) [1731180] - [mm] percpu: introduce helper to determine if two regions overlap (Rafael Aquini) [1731180] - [mm] percpu: do not search past bitmap when allocating an area (Rafael Aquini) [1731180] - [mm] percpu: update free path with correct new free region (Rafael Aquini) [1731180] - [mm] mm/percpu: add checks for the return value of memblock_alloc*() (Rafael Aquini) [1731180] - [mm] percpu: km: no need to consider pcpu_group_offsets[0] (Rafael Aquini) [1731180] - [mm] percpu: use nr_groups as check condition (Rafael Aquini) [1731180] - [mm] percpu: convert spin_lock_irq to spin_lock_irqsave. (Rafael Aquini) [1731180] - [mm] mm: percpu: remove unnecessary unlikely() (Rafael Aquini) [1731180] - [fs] /proc/meminfo: add percpu populated pages count (Rafael Aquini) [1731180] - [netdrv] tg3: Use napi_alloc_frag() (Jonathan Toppins) [1724774] - [fs] fuse: fix copy_file_range() in the writeback case (Miklos Szeredi) [1650518] - [fs] fuse: add support for copy_file_range() (Miklos Szeredi) [1650518]- [x86] perf/x86/intel: Fix spurious NMI on fixed counter (Michael Petlan) [1755110] - [x86] perf/x86/intel: Fix race in intel_pmu_disable_event() (Michael Petlan) [1755110] - [netdrv] drivers: tap.c: fix wrong backport causing WARN_ON_ONCE(1) in skb_flow_dissect() (Davide Caratti) [1750711] - [virt] KVM: coalesced_mmio: add bounds checking (Bandan Das) [1746804] {CVE-2019-14821}- [fs] gfs2: clear buf_in_tr when ending a transaction in sweep_bh_for_rgrps (Robert S Peterson) [1750939] - [s390] kvm: s390: kvm_s390_vm_start_migration: check dirty_bitmap before using it as target for memset() (Thomas Huth) [1753260] - [fs] cifs: fix credits leak for SMB1 oplock breaks (Leif Sahlberg) [1752243]- Revert "[redhat] switch secureboot kernel image signing to release keys" (Phillip Lougher) - [iommu] iommu/amd: Add support for X2APIC IOMMU interrupts (Suravee Suthikulpanit) [1734842] - [vhost] vhost: make sure log_num < in_num (Eugenio Perez) [1750882] {CVE-2019-14835}- [kernel] open the RHEL 8.2 development (Phillip Lougher) - [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [md] Revert "[md] dm: eliminate 'split_discard_bios' flag from DM target interface" (Mike Snitzer) [1749929] - [md] Revert "[md] dm: make sure to obey max_io_len_target_boundary" (Mike Snitzer) [1749929] - [pci] PCI: Restore Resizable BAR size bits correctly for 1MB BARs (Myron Stowe) [1717760] - [net] netfilter: nft_fib_netdev: Terminate rule eval if protocol=IPv6 and ipv6 module is disabled (Phil Sutter) [1743945] - [net] netfilter: bridge: Drops IPv6 packets if IPv6 module is not loaded (Phil Sutter) [1743945] - [drm] drm/qxl: get vga ioports (Gerd Hoffmann) [1728936] - [drm] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe() (Lyude Paul) [1724363]- [net] netfilter: nft_set: fix allocation size overflow in privsize callback. (Florian Westphal) [1746338] - [net] net: route dump netlink NLM_F_MULTI flag missing (Stefano Brivio) [1745971] - [net] sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue (Davide Caratti) [1745390] - [net] sched: pfifo_fast: fix wrong dereference when qdisc is reset (Davide Caratti) [1745387] - [scsi] scsi: vmw_pscsi: Fix use-after-free in pvscsi_queue_lck() (David Milburn) [1746597]- [drm] drm/virtio: use virtio_max_dma_size (Gerd Hoffmann) [1739291] - [mm] hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined (Rafael Aquini) [1706088] - [powerpc] kvm: ppc: book3s: Enable XIVE native capability only if OPAL has required functions [BZ1744884] (David Gibson) [1744884] - [scsi] scsi: lpfc: Fix oops when fewer hdwqs than cpus (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Limit xri count for kdump environment (Dick Kennedy) [1745731] - [scsi] scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ (Dick Kennedy) [1745731] - [scsi] scsi: qla2xxx: Fix hardirq-unsafe locking (Himanshu Madhani) [1719941] - [x86] Revert "[x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel" (Baoquan He) [1669088] - [x86] Revert "[x86] x86/boot: Add xloadflags bits to check for 5-level paging support" (Baoquan He) [1669088]- [wireless] mwifiex: fix 802.11n/WPA detection (Jarod Wilson) [1714476] {CVE-2019-3846}- [x86] x86/kdump: Reserve extra memory when SME or SEV is active (Kairui Song) [1728519] - [scsi] scsi: qla2xxx: Fix hardlockup in abort command during driver remove (Himanshu Madhani) [1690041] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k1 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic from use after free in qla2x00_async_tm_cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: cleanup trace buffer initialization (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: qla2x00_alloc_fw_dump: set ha->eft (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use mutex protection during qla2x00_sysfs_read_fw_dump() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: move IO flush to the front of NVME rport unregistration (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix NVME cmd and LS cmd timeout race condition (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Complain loudly about reference count underflow (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix race conditions in the code for aborting SCSI commands (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Use an on-stack completion in qla24xx_control_vp() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Change abort wait_loop from msleep to wait_event_timeout (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set the SCSI command result before calling the command done (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: on session delete, return nvme cmd (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix kernel crash after disconnecting NVMe devices (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Remove the fcport test from qla_nvme_abort_work() (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix driver unload when FC-NVMe LUNs are connected (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Set remote port devloss timeout to 0 (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix panic in qla_dfs_tgt_counters_show (Himanshu Madhani) [1690041] - [scsi] scsi: qla2xxx: Fix fw dump corruption (Himanshu Madhani) [1690041] - [x86] kvm: disable nested virt on pre-haswell processors (Paolo Bonzini) [1739739] - [x86] kvm: taint kernel for tech-preview when using nested virtualization (Paolo Bonzini) [1739739] - [x86] kvm: x86: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when kvm_intel.nested is disabled (Vitaly Kuznetsov) [1746100]- [char] ipmi: move message error checking to avoid deadlock (Tony Camuso) [1731388 1718699] - [crypto] crypto: testmgr - mark crc32 checksum as FIPS allowed (Neil Horman) [1738887] - [include] dma-mapping: use dma_get_mask in dma_addressing_limited (Don Dutile) [1738631] - [kernel] dma-direct: correct the physical addr in dma_direct_sync_sg_for_cpu/device (Don Dutile) [1738631] - [kernel] dma-direct: only limit the mapping size if swiotlb could be used (Don Dutile) [1738631] - [include] dma-mapping: add a dma_addressing_limited helper (Don Dutile) [1738631] - [kernel] dma-direct: Force unencrypted DMA under SME for certain DMA masks (Don Dutile) [1738631] - [lib] lib/genalloc: introduce chunk owners (Don Dutile) [1738631] - [lib] lib/genalloc: add gen_pool_dma_zalloc() for zeroed DMA allocations (Don Dutile) [1738631] - [lib] lib/genalloc.c: fix allocation of aligned buffer from non-aligned chunk (Don Dutile) [1738631] - [include] dma-mapping: remove dma_max_pfn (Don Dutile) [1738631] - [mmc] mmc: core: let the dma map ops handle bouncing (Don Dutile) [1738631] - [mmc] mmc: core: align max segment size with logical block size (Don Dutile) [1738631] - [kernel] swiotlb: no need to check return value of debugfs_create functions (Don Dutile) [1738631] - [xen] swiotlb: fix phys_addr_t overflow warning (Don Dutile) [1738631] - [kernel] swiotlb: Return consistent SWIOTLB segments/nr_tbl (Don Dutile) [1738631] - [kernel] swiotlb: Group identical cleanup in swiotlb_cleanup() (Don Dutile) [1738631] - [kernel] swiotlb: save io_tlb_used to local variable before leaving critical section (Don Dutile) [1738631] - [kernel] swiotlb: dump used and total slots when swiotlb buffer is full (Don Dutile) [1738631] - [kernel] swiotlb: add checks for the return value of memblock_alloc*() (Don Dutile) [1738631] - [kernel] swiotlb: add debugfs to track swiotlb buffer usage (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NO_KERNEL_MAPPING in common code (Don Dutile) [1738631] - [kernel] dma-direct: fix DMA_ATTR_NO_KERNEL_MAPPING for remapped allocations (Don Dutile) [1738631] - [kernel] dma-mapping: remove a pointless memset in dma_atomic_pool_init (Don Dutile) [1738631] - [kernel] dma-mapping: fix lack of DMA address assignment in generic remap allocator (Don Dutile) [1738631] - [kernel] dma-remap: support DMA_ATTR_NO_KERNEL_MAPPING (Don Dutile) [1738631] - [kernel] dma-mapping: support highmem in the generic remap allocator (Don Dutile) [1738631] - [kernel] dma-direct: handle DMA_ATTR_NON_CONSISTENT in common code (Don Dutile) [1738631] - [kernel] dma-mapping: add a dma_alloc_need_uncached helper (Don Dutile) [1738631] - [kernel] dma-mapping: truncate dma masks to what dma_addr_t can hold (Don Dutile) [1738631] - [kernel] dma-remap: Avoid de-referencing NULL atomic_pool (Don Dutile) [1738631] - [include] dma-buf: add DMA_BUF_SET_NAME ioctls (Don Dutile) [1738631] - [include] dma-buf: give each buffer a full-fledged inode (Don Dutile) [1738631] - [fs] new wrapper: alloc_file_pseudo() (Don Dutile) [1738631] - [kernel] dma-direct: provide generic support for uncached kernel segments (Don Dutile) [1738631] - [include] dma-contiguous: fix !CONFIG_DMA_CMA version of dma_{alloc, free}_contiguous() (Don Dutile) [1738631] - [kernel] dma-contiguous: use fallback alloc_pages for single pages (Don Dutile) [1738631] - [kernel] dma-contiguous: add dma_{alloc,free}_contiguous() helpers (Don Dutile) [1738631] - [iommu] iommu/dma: Fix condition check in iommu_dma_unmap_sg (Don Dutile) [1738631] - [iommu] iommu/dma: move the arm64 wrappers to common code (Don Dutile) [1738631] - [iommu] iommu/dma-iommu.c: convert to use vm_map_pages() (Don Dutile) [1738631] - [mm] mm: introduce new vm_map_pages() and vm_map_pages_zero() API (Don Dutile) [1738631] - [mm] arm64/iommu: handle non-remapped addresses in ->mmap and ->get_sgtable (Don Dutile) [1738631] - [arm64] arm64/mm: wire up CONFIG_ARCH_HAS_SET_DIRECT_MAP (Don Dutile) [1738631] - [kernel] mm/hibernation: Make hibernation handle unmapped pages (Don Dutile) [1738631] - [mm] page_poison: play nicely with KASAN (Don Dutile) [1738631] - [mm] mm/vmalloc: Avoid rare case of flushing TLB with weird arguments (Don Dutile) [1738631] - [mm] mm/vmalloc: Fix calculation of direct map addr range (Don Dutile) [1738631] - [mm] mm/vmalloc: Add flag for freeing of special permsissions (Don Dutile) [1738631] - [x86] x86/mm/cpa: Add set_direct_map_*() functions (Don Dutile) [1738631] - [arm64] dma-mapping: add a kconfig symbol for arch_setup_dma_ops availability (Don Dutile) [1738631] - [iommu] iommu/dma: Remove the flush_page callback (Don Dutile) [1738631] - [include] iommu/dma: Cleanup dma-iommu.h (Don Dutile) [1738631] - [dma] dmaengine: Add matching device node validation in __dma_request_channel() (Don Dutile) [1738631] - [dma] dmaengine: dma_request_chan_by_mask() to handle deferred probing (Don Dutile) [1738631] - [include] dma-buf: start caching of sg_table objects v2 (Don Dutile) [1738631] - [kernel] dma-mapping: add a Kconfig symbol to indicate arch_dma_prep_coherent presence (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Remove iommu_dma_map_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/ls-scfg-msi: Don't map the MSI page in ls_scfg_msi_compose_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-mbi: Don't map the MSI page in mbi_compose_m{b, s}i_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gicv2m: Don't map the MSI page in gicv2m_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Don't map the MSI page in its_irq_compose_msi_msg() (Don Dutile) [1738631] - [irqchip] irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size (Don Dutile) [1738631] - [iommu] iommu/dma-iommu: Split iommu_dma_map_msi_msg() in two parts (Don Dutile) [1738631] - [iommu] iommu/dma: Remove unused variable (Don Dutile) [1738631] - [iommu] iommu/dma: Use NUMA aware memory allocations in __iommu_dma_alloc_pages() (Don Dutile) [1738631] - [kernel] genirq/msi: Add a new field in msi_desc to store an IOMMU cookie (Don Dutile) [1738631] - [pci] PCI/MSI: Remove unused mask_msi_irq() and unmask_msi_irq() (Don Dutile) [1738631] - [include] PCI/MSI: Remove unused __write_msi_msg() and write_msi_msg() (Don Dutile) [1738631] - [include] genirq/msi: Clean up usage of __u8/__u16 types (Don Dutile) [1738631] - [base] platform-msi: Free descriptors in platform_msi_domain_free() (Don Dutile) [1738631] - [base] genirq/msi: Allow creation of a tree-based irqdomain for platform-msi (Don Dutile) [1738631] - [kernel] dma-debug: only skip one stackframe entry (Don Dutile) [1738631] - [dma] dmaengine: idma64: Move driver name to the header (Don Dutile) [1738631] - [kernel] dma-mapping: remove an unnecessary NULL check (Don Dutile) [1738631] - [include] dma-buf: Update [un]map documentation to match the other functions (Don Dutile) [1738631] - [include] dma-buf: Remove leftover [un]map_atomic comments (Don Dutile) [1738631] - [x86] x86/dma: Remove the x86_dma_fallback_dev hack (Don Dutile) [1738631] - [kernel] dma-mapping: remove leftover NULL device support (Don Dutile) [1738631] - [kernel] dma: select GENERIC_ALLOCATOR for DMA_REMAP (Don Dutile) [1738631] - [crypto] crypto: ccp - Ignore unconfigured CCP device on suspend/resume (Gary Hook) [1743999] - [md] dm snapshot: fix oversights in optional discard support (Mike Snitzer) [1744291] - [md] dm snapshot: add optional discard support features (Mike Snitzer) [1744291] - [md] dm snapshot: Use fine-grained locking scheme (Mike Snitzer) [1744291] - [md] dm snapshot: Make exception tables scalable (Mike Snitzer) [1744291] - [md] dm snapshot: Replace mutex with rw semaphore (Mike Snitzer) [1744291] - [md] dm snapshot: Don't sleep holding the snapshot lock (Mike Snitzer) [1744291] - [include] list_bl: Add hlist_bl_add_before/behind helpers (Mike Snitzer) [1744291] - [powerpc] powerpc/rtas: use device model APIs and serialization during LPM (Steve Best) [1741643] - [firmware] firmware/efi: Add NULL pointer checks in efivars API functions (Jarod Wilson) [1741949] - [fs] ovl: fix wrong flags check in FS_IOC_FS[SG]ETXATTR ioctls (Miklos Szeredi) [1724518] - [include] mm: page_cache_add_speculative(): refactor out some code duplication (Michael Petlan) [1738331] - [netdrv] ibmvnic: Unmap DMA address of TX descriptor buffers after use (Steve Best) [1743155] - [fs] NFSv4.1 don't free interrupted slot on open (Steve Dickson) [1708345] - [fs] NFSv4.1: Avoid false retries when RPC calls are interrupted (Steve Dickson) [1708345] - [net] ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets (Stefano Brivio) [1743203] - [net] inet: frags: re-introduce skb coalescing for local delivery (Guillaume Nault) [1719418]- [net] xfrm: fix sa selector validation (Sabrina Dubroca) [1738871] - [net] xfrm: Fix xfrm sel prefix length validation (Sabrina Dubroca) [1738871] - [kernel] locking/rwsem: Prevent decrement of reader count before increment (Waiman Long) [1740338] - [include] include/list: Backport list_cut_before() (Waiman Long) [1740338] - [vhost] vhost: vsock: add weight support (Jason Wang) [1738494] - [vhost] vhost_net: fix possible infinite loop (Jason Wang) [1738494] - [vhost] vhost: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost: reject zero size iova range (Jason Wang) [1738494] - [vhost] vhost: silence an unused-variable warning (Jason Wang) [1738494] - [vhost] vhost: correctly check the return value of translate_desc() in log_used() (Jason Wang) [1738494] - [vhost] vhost: return EINVAL if iovecs size does not match the message size (Jason Wang) [1738494] - [vhost] Revert "net: vhost: lock the vqs one by one" (Jason Wang) [1738494] - [vhost] vhost_net: switch to use mutex_trylock() in vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] vhost: make sure used idx is seen before log in vhost_add_used_n() (Jason Wang) [1738494] - [vhost] vhost: fix IOTLB locking (Jason Wang) [1738494] - [netdrv] tun: wake up waitqueues after IFF_UP is set (Jason Wang) [1738494] - [netdrv] tuntap: synchronize through tfiles array instead of tun->numqueues (Jason Wang) [1738494] - [netdrv] tuntap: fix dividing by zero in ebpf queue selection (Jason Wang) [1738494] - [netdrv] tun: Remove unused first parameter of tun_get_iff() (Jason Wang) [1738494] - [netdrv] tun: Add ioctl() TUNGETDEVNETNS cmd to allow obtaining real net ns of tun device (Jason Wang) [1738494] - [netdrv] tun: add a missing rcu_read_unlock() in error path (Jason Wang) [1738494] - [netdrv] tun: properly test for IFF_UP (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary memory barrier (Jason Wang) [1738494] - [netdrv] tun: fix blocking read (Jason Wang) [1738494] - [netdrv] tun: move the call to tun_set_real_num_queues (Jason Wang) [1738494] - [netdrv] tun: publish tfile after it's fully initialized (Jason Wang) [1738494] - [netdrv] tun: replace get_cpu_ptr with this_cpu_ptr when bh disabled (Jason Wang) [1738494] - [netdrv] tun: remove skb access after netif_receive_skb (Jason Wang) [1738494] - [netdrv] tun: remove unnecessary check in tun_flow_update (Jason Wang) [1738494] - [netdrv] tuntap: fix multiqueue rx (Jason Wang) [1738494] - [netdrv] tun: Adjust on-stack tun_page initialization. (Jason Wang) [1738494] - [netdrv] tuntap: free XDP dropped packets in a batch (Jason Wang) [1738494] - [vhost] vhost_net: mitigate page reference counting during page frag refill (Jason Wang) [1738494] - [vhost] net: vhost: remove bad code line (Jason Wang) [1738494] - [vhost] net: vhost: add rx busy polling in tx path (Jason Wang) [1738494] - [vhost] net: vhost: factor out busy polling logic to vhost_net_busy_poll() (Jason Wang) [1738494] - [vhost] net: vhost: replace magic number of lock annotation (Jason Wang) [1738494] - [vhost] net: vhost: lock the vqs one by one (Jason Wang) [1738494] - [vhost] vhost_net: add a missing error return (Jason Wang) [1738494] - [netdrv] net: tun: remove useless codes of tun_automq_select_queue (Jason Wang) [1738494] - [vhost] vhost_net: batch submitting XDP buffers to underlayer sockets (Jason Wang) [1738494] - [netdrv] tap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tuntap: accept an array of XDP buffs through sendmsg() (Jason Wang) [1738494] - [netdrv] tun: switch to new type of msg_control (Jason Wang) [1738494] - [netdrv] tuntap: move XDP flushing out of tun_do_xdp() (Jason Wang) [1738494] - [netdrv] tuntap: split out XDP logic (Jason Wang) [1738494] - [netdrv] tuntap: tweak on the path of skb XDP case in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: simplify error handling in tun_build_skb() (Jason Wang) [1738494] - [netdrv] tuntap: enable bh early during processing XDP (Jason Wang) [1738494] - [netdrv] tuntap: switch to use XDP_PACKET_HEADROOM (Jason Wang) [1738494] - [netdrv] net: sock: introduce SOCK_XDP (Jason Wang) [1738494] - [vhost] vhost: correctly check the iova range when waking virtqueue (Jason Wang) [1738494] - [vhost] vhost: switch to use new message format (Jason Wang) [1738494] - [vhost] vhost_net: batch update used ring for datacopy TX (Jason Wang) [1738494] - [vhost] vhost_net: rename VHOST_RX_BATCH to VHOST_NET_BATCH (Jason Wang) [1738494] - [vhost] vhost_net: rename vhost_rx_signal_used() to vhost_net_signal_used() (Jason Wang) [1738494] - [vhost] vhost_net: split out datacopy logic (Jason Wang) [1738494] - [vhost] vhost_net: introduce tx_can_batch() (Jason Wang) [1738494] - [vhost] vhost_net: introduce get_tx_bufs() (Jason Wang) [1738494] - [vhost] vhost_net: introduce vhost_exceeds_weight() (Jason Wang) [1738494] - [vhost] vhost_net: introduce helper to initialize tx iov iter (Jason Wang) [1738494] - [vhost] vhost_net: drop unnecessary parameter (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Avoid rx queue wake-ups during busypoll (Jason Wang) [1738494] - [vhost] vhost_net: Avoid tx vring kicks during busyloop (Jason Wang) [1738494] - [vhost] vhost_net: Rename local variables in vhost_net_rx_peek_head_len (Jason Wang) [1738494] - [mm] x86/mm/fault: Allow stack access below rsp (Waiman Long) [1739341] - [mm] x86/mm: Clarify hardware vs. software "error_code" (Waiman Long) [1739341] - [net] libceph: handle an empty authorize reply (Ilya Dryomov) [1720582]- [drm] drm: Don't retry infinitely when receiving no data on i2c over AUX (Lyude Paul) [1672361] - [scsi] scsi: hpsa: update revision to RH3 (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: remove printing internal cdb on tag collision (Joseph Szczypek) [1739615] - [scsi] scsi: hpsa: correct scsi command status issue after reset (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: fix broken doc references due to renames (Joseph Szczypek) [1739615] - [scsi] hpsa: docs: pci: fix broken links due to conversion from pci.txt to pci.rst (Joseph Szczypek) [1739615]- [drm] drm/nouveau: Only recalculate PBN/VCPI on mode/connector changes (Lyude Paul) [1734452 1734444] - [drm] drm/nouveau: Only release VCPI slots on mode changes (Lyude Paul) [1734452 1734444] - [infiniband] RDMA/srp: turn off 'use_imm_data' by default (Honggang Li) [1725158] - [gpu] vga_switcheroo: Fix missing gpu_bound call at audio client registration (Lyude Paul) [1739727] - [net] Bluetooth: Fix faulty expression for minimum encryption key size check (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Fix regression with minimum encryption key size alignment (Gopal Tiwari) [1743076] {CVE-2019-9506} - [net] Bluetooth: Align minimum encryption key size for LE and BR/EDR connections (Gopal Tiwari) [1743076] {CVE-2019-9506}- [rpmspec] perf: package tips.txt (Michael Petlan) [1663816] - [mm] mm/memblock.c: skip kmemleak for kasan_init() (Mark Langsdorf) [1722741] - [kernel] mm/resource: Return real error codes from walk failures (Kairui Song) [1740443] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1733231] - [tools] selftests/powerpc: Fix Makefiles for headers_install change (Steve Best) [1740127] - [tools] selftests/powerpc: Add more version checks to alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Skip earlier in alignment_handler test (Steve Best) [1740127] - [tools] selftests/powerpc: Consolidate copy/paste test logic (Steve Best) [1740127] - [s390] s390/bpf: use 32-bit index for tail calls (Yauheni Kaliuta) [1719377] - [s390] s390/bpf: fix lcgr instruction encoding (Yauheni Kaliuta) [1719377] - [tools] selftests/bpf: fix "alu with different scalars 1" on s390 (Yauheni Kaliuta) [1719377] - [net] bpf: fix use after free in bpf_evict_inode (Yauheni Kaliuta) [1719377] - [arm64] bpf, arm64: remove prefetch insn in xadd mapping (Yauheni Kaliuta) [1719377] - [scsi] scsi: lpfc: Fix crash when cpu count is 1 and null irq affinity mask (Dick Kennedy) [1720905] - [md] md: add bitmap_abort label in md_run (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of bitmap (Nigel Croxon) [1721944] - [md] md-bitmap: create and destroy wb_info_pool with the change of backlog (Nigel Croxon) [1721944] - [md] md: introduce mddev_create/destroy_wb_pool for the change of member device (Nigel Croxon) [1721944] - [md] md/raid1: fix potential data inconsistency issue with write behind device (Nigel Croxon) [1721944] - [md] md: fix for divide error in status_resync (Nigel Croxon) [1721944] - [md] md/raid10: read balance chooses idlest disk for SSD (Nigel Croxon) [1721944] - [md] md: raid1-10: Unify r{1,10}bio_pool_free (Nigel Croxon) [1721944] - [md] md: raid10: Use struct_size() in kmalloc() (Nigel Croxon) [1721944] - [md] md/raid1: get rid of extra blank line and space (Nigel Croxon) [1721944] - [md] md: fix spelling typo and add necessary space (Nigel Croxon) [1721944] - [md] md: md.c: Return -ENODEV when mddev is NULL in rdev_attr_show (Nigel Croxon) [1721944] - [md] raid5-cache: Need to do start() part job after adding journal device (Nigel Croxon) [1721944] - [md] drivers: md: Unify common definitions of raid1 and raid10 (Nigel Croxon) [1721944] - [kernel] userfaultfd: use RCU to free the task struct when fork fails (Andrea Arcangeli) [1718498]- [efi] efi/arm: Revert "Defer persistent reservations until after paging_init()" (Mark Salter) [1699961] - [s390] s390/ipl: Fix detection of has_secure attribute (Philipp Rudo) [1740653] - [fs] xfs: don't crash on null attr fork xfs_bmapi_read (Bill O'Donnell) [1719094] - [powerpc] powerpc/mm: Don't report PUDs as memory leaks when using kmemleak (Desnes Augusto Nunes do Rosario) [1716952] - [x86] kvm: x86: introduce is_pae_paging (Vitaly Kuznetsov) [1720556] - [s390] s390/kasan: Fix recursion loop when triggering kdump (Philipp Rudo) [1740249] - [s390] s390/dasd: fix endless loop after read unit address configuration (Philipp Rudo) [1740251] - [tools] selftests/powerpc: Give some tests longer to run (Steve Best) [1740420] - [nvme] nvme-rdma: use dynamic dma mapping per command (David Milburn) [1738252] - [nvme] nvme-rdma: remove redundant reference between ib_device and tagset (David Milburn) [1738252] - [x86] kvm: svm/avic: Do not send AVIC doorbell to self (Janakarajan Natarajan) [1720981] - [net] tipc: initialise addr_trial_end when setting node addresses (Jon Maloy) [1740317] - [net] tipc: ensure head->lock is initialised (Jon Maloy) [1740317] - [net] netfilter: nf_tables: fix oops during rule dump (Stefano Brivio) [1739734] - [include] netfilter: nf_tables: correct NFT_LOGLEVEL_MAX value (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: do not dump private area (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix register ordering (Stefano Brivio) [1739734] - [net] ipvs: defer hook registration to avoid leaks (Stefano Brivio) [1739734] - [net] ipvs: Fix use-after-free in ip_vs_in (Stefano Brivio) [1739734] - [net] netfilter: nf_conntrack_h323: restore boundary check correctness (Stefano Brivio) [1739734] - [net] netfilter: fix nf_l4proto_log_invalid to log invalid packets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: prevent shift wrap in nft_chain_parse_hook() (Stefano Brivio) [1739734] - [net] netfilter: nft_set_rbtree: check for inactive element after flag mismatch (Stefano Brivio) [1739734] - [net] netfilter: nft_compat: use-after-free when deleting targets (Stefano Brivio) [1739734] - [net] netfilter: nf_tables: fix leaking object reference count (Stefano Brivio) [1739734] - [net] ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6 (Stefano Brivio) [1739640] - [net] ipv6: Unlink sibling route in case of failure (Stefano Brivio) [1739640] - [net] ipv6: Default fib6_type to RTN_UNICAST when not set (Stefano Brivio) [1739640] - [net] inet: frags: call inet_frags_fini() after unregister_pernet_subsys() (Stefano Brivio) [1739640] - [net] ipv6: flowlabel: fl6_sock_lookup() must use atomic_inc_not_zero (Stefano Brivio) [1739640] - [net] netfilter: ipset: Fix rename concurrency with listing (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix error path in set_target_v3_checkentry() (Stefano Brivio) [1739578] - [net] netfilter: ipset: Fix the last missing check of nla_parse_deprecated() (Stefano Brivio) [1739578] - [net] netfilter: ipset: fix a missing check of nla_parse (Stefano Brivio) [1739578] - [netdrv] ipvlan, l3mdev: fix broken l3s mode wrt local routes (Guillaume Nault) [1738329] - [net] sched: use temporary variable for actions indexes (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] sched: cbs: Fix error path of cbs_module_init (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix use after free and double free with packet corruption (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [net] netem: fix backlog accounting for corrupted GSO frames (Marcelo Leitner) [1739244 1729822 1729818 1729398] - [netdrv] macsec: fix checksumming after decryption (Sabrina Dubroca) [1738237] - [netdrv] macsec: fix use-after-free of skb during RX (Sabrina Dubroca) [1738237] - [net] xfrm interface: fix memory leak on creation (Sabrina Dubroca) [1738267] - [net] tls: fix socket wmem accounting on fallback with netem (Sabrina Dubroca) [1739260] - [net] tls: fix poll ignoring partially copied records (Sabrina Dubroca) [1739260] - [net] tls: make sure offload also gets the keys wiped (Sabrina Dubroca) [1739260] - [net] tls: reject offload of TLS 1.3 (Sabrina Dubroca) [1739260] - [net] tls: fix page double free on TX cleanup (Sabrina Dubroca) [1739260] - [net] tls, correctly account for copied bytes with multiple sk_msgs (Sabrina Dubroca) [1739260] - [net] tcp: fix tcp_set_congestion_control() use from bpf hook (Guillaume Nault) [1738272] - [net] tcp: Reset bytes_acked and bytes_received when disconnecting (Guillaume Nault) [1738272] - [net] tcp: Ensure DCTCP reacts to losses (Guillaume Nault) [1738272] - [net] tcp: tcp_v4_err() should be more careful (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer upon receiving packet with ECN CWR flag (Guillaume Nault) [1738272] - [net] tcp: always ACK immediately on hole repairs (Guillaume Nault) [1738272] - [net] tcp: avoid resetting ACK timer in DCTCP (Guillaume Nault) [1738272] - [net] tcp: mandate a one-time immediate ACK (Guillaume Nault) [1738272] - [net] tipc: fix unitilized skb list crash (Xin Long) [1734298] - [net] tipc: compat: allow tipc commands without arguments (Xin Long) [1738397] - [net] sctp: factor out sctp_connect_add_peer (Xin Long) [1738393] - [net] sctp: factor out sctp_connect_new_asoc (Xin Long) [1738393] - [net] sctp: clean up __sctp_connect (Xin Long) [1738393] - [net] sctp: check addr_size with sa_family_t size in __sctp_setsockopt_connectx (Xin Long) [1738393] - [net] sctp: only copy the available addr data in sctp_transport_init (Xin Long) [1738393] - [net] sctp: drop unneeded likely() call around IS_ERR() (Xin Long) [1738393] - [net] sctp: fix warning "NULL check before some freeing functions is not needed" (Xin Long) [1738393] - [net] sctp: remove rcu_read_lock from sctp_bind_addr_state (Xin Long) [1738393] - [net] sctp: rename sp strm_interleave to ep intl_enable (Xin Long) [1738393] - [net] sctp: rename asoc intl_enable to asoc peer.intl_capable (Xin Long) [1738393] - [net] sctp: remove prsctp_enable from asoc (Xin Long) [1738393] - [net] sctp: remove reconf_enable from asoc (Xin Long) [1738393] - [net] sctp: count data bundling sack chunk for outctrlchunks (Xin Long) [1738393] - [net] sctp: fix error handling on stream scheduler initialization (Xin Long) [1738393] - [net] sctp: not bind the socket in sctp_connect (Xin Long) [1738393] - [net] sctp: change to hold sk after auth shkey is created successfully (Xin Long) [1738393] - [net] sctp: Free cookie before we memdup a new one (Xin Long) [1738393] - [net] Fix memory leak in sctp_process_init (Xin Long) [1738393] - [net] sctp: deduplicate identical skb_checksum_ops (Xin Long) [1738393] - [net] sctp: Check address length before reading address family (Xin Long) [1738393] - [net] sctp: Pass sk_buff_head explicitly to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Make sctp_enqueue_event tak an skb list. (Xin Long) [1738393] - [net] sctp: Use helper for sctp_ulpq_tail_event() when hooked up to ->enqueue_event (Xin Long) [1738393] - [net] sctp: Always pass skbs on a list to sctp_ulpq_tail_event(). (Xin Long) [1738393] - [net] sctp: Remove superfluous test in sctp_ulpq_reasm_drain(). (Xin Long) [1738393] - [netdrv] ppp: Remove direct skb_queue_head list pointer access. (Xin Long) [1738393] - [net] ipv6: fix neighbour resolution with raw socket (Stefano Brivio) [1728320] - [net] ipv6: constify rt6_nexthop() (Stefano Brivio) [1728320] - [net] openvswitch: fix csum updates for MPLS actions (Marcelo Leitner) [1738654] - [net] udp_gso: Allow TX timestamp with UDP GSO (Paolo Abeni) [1738585] - [net] bpf: udp: ipv6: Avoid running reuseport's bpf_prog from __udp6_lib_err (Paolo Abeni) [1738585] - [net] fix ifindex collision during namespace removal (Paolo Abeni) [1738492] - [net] rtnl: return early from rtnl_unregister_all when protocol isn't registered (Paolo Abeni) [1738492] - [net] neigh: fix use-after-free read in pneigh_get_next (Paolo Abeni) [1738492] - [net] socket: set sock->sk to NULL after calling proto_ops::release() (Paolo Abeni) [1738492] - [net] socket: make bond ioctls go through compat_ifreq_ioctl() (Paolo Abeni) [1738492] - [net] socket: fix SIOCGIFNAME in compat (Paolo Abeni) [1738492] - [net] Revert "kill dev_ifsioc()" (Paolo Abeni) [1738492] - [net] revert "socket: fix struct ifreq size in compat ioctl" (Paolo Abeni) [1738492] - [net] ip6_tunnel: fix possible use-after-free on xmit (Guillaume Nault) [1737105] - [net] genetlink: Fix a memory leak on error path (Guillaume Nault) [1737821] - [net] netfilter: ipset: Copy the right MAC address in bitmap:ip, mac and hash:ip, mac sets (Stefano Brivio) [1723605] - [net] netfilter: ipset: Actually allow destination MAC address for hash:ip, mac sets too (Stefano Brivio) [1723605] - [net] igmp: fix memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] don't clear sock->sk early to avoid trouble in strparser (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST (Hangbin Liu) [1736816] - [net] ipv4/igmp: fix another memory leak in igmpv3_del_delrec() (Hangbin Liu) [1736816] - [net] route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race (Hangbin Liu) [1736816] - [net] netlabel: fix out-of-bounds memory accesses (Hangbin Liu) [1736816] - [net] ipv4: Fix memory leak in network namespace dismantle (Hangbin Liu) [1736816] - [net] bridge: delete local fdb on device init failure (Hangbin Liu) [1736824] - [net] bridge: stp: don't cache eth dest pointer before skb pull (Hangbin Liu) [1736824] - [net] bridge: don't cache ether dest pointer on input (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale ipv6 hdr pointer when handling v6 query (Hangbin Liu) [1736824] - [net] bridge: mcast: fix stale nsrcs pointer in igmp3/mld2 report handling (Hangbin Liu) [1736824] - [net] bridge: fix per-port af_packet sockets (Hangbin Liu) [1736824] - [include] ip: fix ip_mc_may_pull() return value (Hangbin Liu) [1736824] - [net] bridge: use struct_size() helper (Hangbin Liu) [1736824] - [net] bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() calls (Hangbin Liu) [1736824] - [net] net/bridge/br_multicast: remove redundant variable "err" (Hangbin Liu) [1736824] - [x86] x86/kdump/64: Restrict kdump kernel reservation to <64TB (Baoquan He) [1669090] - [x86] x86/kexec/64: Prevent kexec from 5-level paging to a 4-level only kernel (Baoquan He) [1669088] - [x86] x86/boot: Add xloadflags bits to check for 5-level paging support (Baoquan He) [1669088] - [tools] perf header: Fix wrong node write in NUMA_TOPOLOGY feature (Michael Petlan) [1722044] - [tools] perf c2c: Fix c2c report for empty numa node (Michael Petlan) [1722044] - [x86] kvm: svm/avic: fix off-by-one in checking host APIC ID (Janakarajan Natarajan) [1720983]- [fs] gfs2: gfs2_walk_metadata fix (Andreas Grunbacher) [1724361] - [netdrv] mlx4/en_netdev: allow offloading VXLAN over VLAN (Paolo Abeni) [1733532] - [fs] xfs: always rejoin held resources during defer roll (Bill O'Donnell) [1706588] - [bluetooth] Bluetooth: hci_uart: check for missing tty operations (Gopal Tiwari) [1734239] {CVE-2019-10207}- [documentation] Documentation: Add swapgs description to the Spectre v1 documentation (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [documentation] Documentation: Add section about CPU vulnerabilities for Spectre (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation/swapgs: Exclude ATOMs from speculation through SWAPGS (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/entry/64: Use JMP instead of JMPQ (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Enable Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/speculation: Prepare entry code for Spectre v1 swapgs mitigations (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Combine word 11 and 12 into a new scattered features word (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [x86] x86/cpufeatures: Carve out CQM features retrieval (Josh Poimboeuf) [1724501] {CVE-2019-1125} - [netdrv] ibmveth: fix DMA unmap error in ibmveth_xmit_start error path (Steve Best) [1739431] - [rpmspec] rpmspec: use make macro to do headers_install with rpm CFLAGS/LDFLAGS ("Herton R. Krzesinski") [1738659] - [rpmspec] rpmspec: use tools_make for building tools ("Herton R. Krzesinski") [1738659] - [tools] tools gpio: Allow overriding CFLAGS ("Herton R. Krzesinski") [1738659] - [tools] tools thermal tmon: Allow overriding CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [tools] tools iio: Override CFLAGS assignments ("Herton R. Krzesinski") [1738659] - [fs] NFS: Fix dentry revalidation on NFSv4 lookup (Steve Dickson) [1667774] - [fs] pNFS: Avoid read/modify/write when it is not necessary (Benjamin Coddington) [1680649] - [fs] pNFS: Fix potential corruption of page being written (Benjamin Coddington) [1680649] - [fs] gfs2: Inode dirtying fix (Andreas Grunbacher) [1724361] - [net] sunrpc: make visible processing error in bc_svc_process() ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove unused xpo_prep_reply_hdr callback ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: remove svc_tcp_bc_class ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: replace svc_serv->sv_bc_xprt by boolean flag ("J. Bruce Fields") [1660823] {CVE-2018-16884} - [net] sunrpc: use-after-free in svc_process_common() ("J. Bruce Fields") [1660823] {CVE-2018-16884}- [scsi] scsi: implement .cleanup_rq callback (Ming Lei) [1696256] - [md] blk-mq: add callback of .cleanup_rq (Ming Lei) [1696256] - [block] blk-mq: insert rq with DONTPREP to hctx dispatch list when requeue (Ming Lei) [1696256] - [scsi] scsi: core: Fix race on creating sense cache (Ming Lei) [1696256] - [block] blk-mq: balance mapping between present CPUs and queues (Ming Lei) [1733040] - [block] blk-mq: Fix spelling in a source code comment (Ming Lei) [1733040] - [drm] drm/i915: Don't dereference request if it may have been retired when printing (Lyude Paul) [1715997] - [drm] drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT (Lyude Paul) [1715997] - [drm] drm/i915: Support flags in whitlist WAs (Lyude Paul) [1715997] - [drm] drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings. (Lyude Paul) [1715997] - [drm] drm/i915/userptr: Acquire the page lock around set_page_dirty() (Lyude Paul) [1715997] - [drm] drm/i915/perf: fix ICL perf register offsets (Lyude Paul) [1715997] - [drm] drm/virtio: Add memory barriers for capset cache. (Lyude Paul) [1715997] - [drm] drm/amd/display: Always allocate initial connector state state (Lyude Paul) [1715997] - [drm] drm/vkms: Forward timer right after drm_crtc_handle_vblank (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: Also sprinkle irqrestore over early exits (Lyude Paul) [1715997] - [drm] drm/crc-debugfs: User irqsafe spinlock in drm_crtc_add_crc_entry (Lyude Paul) [1715997] - [drm] drm/amd/display: Increase Backlight Gain Step Size (Lyude Paul) [1715997] - [drm] drm/amd/display: CS_TFM_1D only applied post EOTF (Lyude Paul) [1715997] - [drm] drm/edid: Fix a missing-check bug in drm_load_edid_firmware() (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix sdma queue map issue (Lyude Paul) [1715997] - [drm] drm/amdkfd: Fix a potential memory leak (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable ABM before destroy ABM struct (Lyude Paul) [1715997] - [drm] drm/amdgpu/sriov: Need to initialize the HDP_NONSURFACE_BAStE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Reserve shared fence for eviction fence (Lyude Paul) [1715997] - [drm] drm/amd/display: Disable cursor when offscreen in negative direction (Lyude Paul) [1715997] - [drm] drm/amd/display: Fill prescale_params->scale for RGB565 (Lyude Paul) [1715997] - [drm] drm/virtio: set seqno for dma-fence (Lyude Paul) [1715997] - [drivers] dma-buf: Discard old fence_excl on retrying get_fences_rcu for realloc (Lyude Paul) [1715997] - [drivers] dma-buf: balance refcount inbalance (Lyude Paul) [1715997] - [drm] drm/edid: parse CEA blocks embedded in DisplayID (Lyude Paul) [1715997] - [drm] drm/nouveau/i2c: Enable i2c pads & busses during preinit (Lyude Paul) [1715997] - [drm] drm: return -EFAULT if copy_to_user() fails (Lyude Paul) [1715997] - [drm] drm/vmwgfx: fix a warning due to missing dma_parms (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Honor the sg list segment size limitation (Lyude Paul) [1715997] - [drm] drm/virtio: move drm_connector_update_edid_property() call (Lyude Paul) [1715997] - [drm] drm/amdgpu/gfx9: use reset default for PA_SC_FIFO_SIZE (Lyude Paul) [1715997] - [drm] drm/amdgpu: Don't skip display settings in hwmgr_resume() (Lyude Paul) [1717138 1715997] - [drm] drm/amd/powerplay: use hardware fan control if no powerplay fan table (Lyude Paul) [1715997] - [drm] drm/i915/ringbuffer: EMIT_INVALIDATE *before* switch context (Lyude Paul) [1715997] - [drm] drm/i915: Skip modeset for cdclk changes if possible (Lyude Paul) [1715997] - [drm] drm/i915: Remove redundant store of logical CDCLK state (Lyude Paul) [1715997] - [drm] drm/i915: Save the old CDCLK atomic state (Lyude Paul) [1715997] - [drm] drm/i915: Force 2*96 MHz cdclk on glk/cnl when audio power is enabled (Lyude Paul) [1715997] - [drm] drm/i915: Don't clobber M/N values during fastset check (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Use the backdoor port if the HB port is not available (Lyude Paul) [1715997] - [drm] drm: add fallback override/firmware EDID modes workaround (Lyude Paul) [1715997] - [drm] drm/edid: abstract override/firmware EDID retrieval (Lyude Paul) [1715997] - [drm] drm/vmwgfx: NULL pointer dereference from vmw_cmd_dx_view_define() (Lyude Paul) [1715997] - [drm] drm/vmwgfx: integer underflow in vmw_cmd_dx_set_shader() leading to an invalid read (Lyude Paul) [1715997] - [drm] drm/amdgpu: keep stolen memory on picasso (Lyude Paul) [1715997] - [drm] drm/i915/dmc: protect against reading random memory (Lyude Paul) [1715997] - [drm] drm/i915: Fix per-pixel alpha with CCS (Lyude Paul) [1715997] - [drm] drm/i915/dsi: Use a fuzzy check for burst mode clock check (Lyude Paul) [1715997] - [drm] drm/i915/sdvo: Implement proper HDMI audio support for SDVO (Lyude Paul) [1715997] - [drm] drm/amdgpu/{uvd,vcn}: fetch ring's read_ptr after alloc (Lyude Paul) [1715997] - [drm] drm/amd/display: Use plane->color_space for dpp if specified (Lyude Paul) [1715997] - [drm] drm/amd/display: disable link before changing link settings (Lyude Paul) [1715997] - [drm] Revert "drm: allow render capable master with DRM_AUTH ioctls" (Lyude Paul) [1715997] - [drm] drm/amd: fix fb references in async update (Lyude Paul) [1715997] - [drm] drm/i915/gvt: Initialize intel_gvt_gtt_entry in stack (Lyude Paul) [1715997] - [drm] drm: don't block fb changes for async plane updates (Lyude Paul) [1715997] - [drm] drm/i915/gvt: emit init breadcrumb for gvt request (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) (Lyude Paul) [1715997] - [drm] drm/amd/display: Add ASICREV_IS_PICASSO (Lyude Paul) [1715997] - [drm] drm/amdgpu/soc15: skip reset on init (Lyude Paul) [1715997] - [include] drm/i915: Fix I915_EXEC_RING_MASK (Lyude Paul) [1715997] - [drm] drm/amdgpu: remove ATPX_DGPU_REQ_POWER_FOR_DISPLAYS check when hotplug-in (Lyude Paul) [1715997] - [drm] drm/radeon: prefer lower reference dividers (Lyude Paul) [1715997] - [drm] drm/amdgpu/psp: move psp version specific function pointers to early_init (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirks to Sensics and OSVR headsets. (Lyude Paul) [1715997] - [drm] drm: add non-desktop quirk for Valve HMDs (Lyude Paul) [1715997] - [drm] drm/cma-helper: Fix drm_gem_cma_free_object() (Lyude Paul) [1715997] - [drm] drm/lease: Make sure implicit planes are leased (Lyude Paul) [1715997] - [drm] drm: Expose "FB_DAMAGE_CLIPS" property to atomic aware user-space only (Lyude Paul) [1715997] - [drm] drm/atomic: Wire file_priv through for property changes (Lyude Paul) [1715997] - [drm] drm/fb-helper: generic: Call drm_client_add() after setup is done (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix compat mode shader operation (Lyude Paul) [1715997] - [drm] drm/vmwgfx: Fix user space handle equal to zero (Lyude Paul) [1715997] - [drm] drm: Wake up next in drm_read() chain if we are forced to putback the event (Lyude Paul) [1715997] - [drm] drm/drv: Hold ref on parent device during drm_device lifetime (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset planes that were disabled in init_pipes (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix exception from AUX acquire failure (Lyude Paul) [1715997] - [drm] drm: writeback: Fix leak of writeback job (Lyude Paul) [1715997] - [drm] drm/amd/display: Set stream->mode_changed when connectors change (Lyude Paul) [1715997] - [drm] drm/amd/display: half bandwidth for YCbCr420 during validation (Lyude Paul) [1715997] - [drm] drm/amd/display: Re-add custom degamma support (Lyude Paul) [1715997] - [drm] drm/amd/display: Fix Divide by 0 in memory calculations (Lyude Paul) [1715997] - [drm] drm/amd/display: add pipe lock during stream update (Lyude Paul) [1715997] - [drm] drm/amd/display: Reset alpha state for planes to the correct values (Lyude Paul) [1715997] - [drm] drm/amd/display: Update ABM crtc state on non-modeset (Lyude Paul) [1715997] - [drm] drm/amd/display: Link train only when link is DP and backend is enabled (Lyude Paul) [1715997] - [drm] drm/amd/display: fix releasing planes when exiting odm (Lyude Paul) [1715997] - [drm] drm/amd/display: Prevent cursor hotspot overflow for RV overlay planes (Lyude Paul) [1715997] - [drm] drm/amd/display: use proper formula to calculate bandwidth from timing (Lyude Paul) [1715997] - [drm] drm/amdgpu: fix old fence check in amdgpu_fence_emit (Lyude Paul) [1715997] - [drm] drm/nouveau/bar/nv50: ensure BAR is mapped (Lyude Paul) [1715997] - [pci] PCI: Mark AMD Stoney Radeon R7 GPU ATS as broken (Lyude Paul) [1715997] - [kernel] locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is empty (Waiman Long) [1737089] - [tools] perf vendor events power9: Added missing event descriptions (Michael Petlan) [1581405] - [crypto] crypto: skcipher - fix crash flushing dcache in error path (David Gibson) [1724370] - [netdrv] bnx2x: Prevent load reordering in tx completion processing (Manish Chopra) [1729599] - [x86] x86/boot/KASLR: Always return a value from process_mem_region (Baoquan He) [1564822] - [x86] x86/kexec: Add the ACPI NVS region to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Call get_rsdp_addr() after console_init() (Baoquan He) [1564822] - [x86] x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels (Baoquan He) [1564822] - [x86] x86/kexec: Add the EFI system tables and ACPI tables to the ident map (Baoquan He) [1564822] - [x86] x86/boot: Fix incorrect ifdeffery scope (Baoquan He) [1564822] - [x86] x86/boot: Correct RSDP parsing with 32-bit EFI (Baoquan He) [1564822] - [x86] x86/boot: Fix randconfig build error due to MEMORY_HOTREMOVE (Baoquan He) [1564822] - [x86] x86/boot: Fix cmdline_find_option() prototype visibility (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Limit KASLR to extract the kernel in immovable memory only (Baoquan He) [1564822] - [x86] x86/boot: Parse SRAT table and count immovable memory regions (Baoquan He) [1564822] - [x86] x86/boot: Early parse RSDP and save it in boot_params (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in memory (Baoquan He) [1564822] - [x86] x86/boot: Search for RSDP in the EFI tables (Baoquan He) [1564822] - [x86] x86/boot: Add "acpi_rsdp=" early parsing (Baoquan He) [1564822] - [x86] x86/boot: Copy kstrtoull() to boot/string.c (Baoquan He) [1564822] - [x86] x86/boot: Use CC_SET()/CC_OUT() instead of open coding it (Baoquan He) [1564822] - [x86] x86/boot: Build the command line parsing code unconditionally (Baoquan He) [1564822] - [x86] x86/boot: Clear RSDP address in boot_params for broken loaders (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address from boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Mostly revert commit ae7e1238e68f2a ("Add ACPI RSDP address to setup_header") (Baoquan He) [1564822] - [x86] x86/acpi, x86/boot: Take RSDP address for boot params if available (Baoquan He) [1564822] - [x86] x86/boot: Add ACPI RSDP address to setup_header (Baoquan He) [1564822] - [x86] x86/xen: Fix boot loader version reported for PVH guests (Baoquan He) [1564822] - [x86] x86/boot: Add missing va_end() to die() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Remove return value from handle_mem_options() (Baoquan He) [1564822] - [x86] x86/boot/KASLR: Make local variable mem_limit static (Baoquan He) [1564822] - [crypto] crypto: user - prevent operating on larval algorithms (Herbert Xu) [1728835]- [scsi] scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA (Tomas Henzl) [1734769] - [netdrv] bonding: Force slave speed check after link state recovery for 802.3ad (Jarod Wilson) [1732820] - [pci] PCI: hv: Add pci_destroy_slot() in pci_devices_present_work(), if necessary (Mohammed Gamal) [1733302] - [pci] PCI: hv: Add hv_pci_remove_slots() when we unload the driver (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a use-after-free bug in hv_eject_device_work() (Mohammed Gamal) [1733302] - [pci] PCI: hv: Fix a memory leak in hv_eject_device_work() (Mohammed Gamal) [1733302] - [nvme] nvmet: fix setting ns queue's segment boundary (Ming Lei) [1734458]- [tools] perf script python: Remove explicit shebang from setup.py (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from tests/attr.c (Michael Petlan) [1664768 1663814] - [tools] perf script python: Remove explicit shebang from Python scripts (Michael Petlan) [1664768 1663814] - [tools] perf script python: Use PyBytes for attr in trace-event-python (Michael Petlan) [1664768 1663814] - [tools] perf script python: Add trace_context extension module to sys.modules (Michael Petlan) [1663814 1664768] - [tools] perf scripts python: exported-sql-viewer.py: Fix python3 support (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-sqlite.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to export-to-postgresql.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to exported-sql-viewer.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to intel-pt-events.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to event_analyzing_sample.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: add Python3 support to check-perf-trace.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to futex-contention.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Remove mixed indentation (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to syscall-counts.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to stackcollapse.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to sctop.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to powerpc-hcalls.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to net_dropmonitor.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to mem-phys-addr.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to failed-syscalls-by-pid.py (Michael Petlan) [1663814 1664768] - [tools] perf script python: Add Python3 support to netdev-times.py (Michael Petlan) [1663814 1664768] - [powerpc] mm_iommu: Allow pinning large regions (David Gibson) [1629531] - [powerpc] mm_iommu: Fix potential deadlock (David Gibson) [1629531] - [powerpc] mm/iommu: allow large IOMMU page size only for hugetlb backing (David Gibson) [1629531] - [powerpc] mm/iommu: allow migration of cma allocated pages during mm_iommu_do_alloc (David Gibson) [1629531] - [mm] update get_user_pages_longterm to migrate pages allocated from CMA region (David Gibson) [1629531] - [kernel] mm/cma: add PF flag to force non cma alloc (David Gibson) [1629531] - [net] tcp: be more careful in tcp_fragment() (Marcelo Leitner) [1732103] - [net] tipc: initialize 'validated' field of received packets (Jon Maloy) [1730574] - [documentation] networking: fix default_ttl typo in mpls-sysctl (Hangbin Liu) [1724882]- [powerpc] powerpc/mm: Limit rma_size to 1TB when running without HV mode (Suraj Jitindar Singh) [1723297] - [x86] kvm: nvmx: Set cached_vmcs12 and cached_shadow_vmcs12 NULL after free (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: do not use dangling shadow VMCS after guest reset (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear pending KVM_REQ_GET_VMCS12_PAGES when leaving nested (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Change KVM_STATE_NESTED_EVMCS to signal vmcs12 is copied from eVMCS (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Allow restore nested-state to enable eVMCS when vCPU in SMM (Paolo Bonzini) [1732096] - [tools] kvm: nvmx: reorganize initial steps of vmx_set_nested_state (Paolo Bonzini) [1732096] - [x86] kvm: x86: Modify struct kvm_nested_state to have explicit fields for data (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Clear nested_run_pending if setting nested state fails (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: really fix the size checks on KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: Set nested_run_pending in vmx_set_nested_state after checks complete (Paolo Bonzini) [1732096] - [x86] kvm: nvmx: KVM_SET_NESTED_STATE - Tear down old EVMCS state before setting new state (Paolo Bonzini) [1732096] - [tools] kvm: selftests: avoid type punning (Paolo Bonzini) [1732096] - [tools] tests: kvm: Add tests for KVM_SET_NESTED_STATE (Paolo Bonzini) [1732096] - [x86] kvm: x86/mmu: Allocate PAE root array when using SVM's 32-bit NPT (Paolo Bonzini) [1732096] - [x86] kvm: lapic: Fix pending interrupt in IRR blocked by software disable LAPIC (Paolo Bonzini) [1732096] - [x86] kvm: x86: Dynamically allocate user_fpu (Paolo Bonzini) [1732096] - [x86] revert "kvm: x86: Use task structs fpu field for user" (Paolo Bonzini) [1732096] - [x86] hyperv: suppress "pci: fatal: No config space access function found" (Raghavendra Rao) [1734265] - [powerpc] [kvm] kvm: ppc: book3s hv: Save and restore guest visible PSSCR bits on pseries (Suraj Jitindar Singh) [1710726] - [powerpc] pmu: Set pmcregs_in_use in paca when running as LPAR (Suraj Jitindar Singh) [1710726] - [powerpc] [kvm] kvm: ppc: book3s hv: Always save guest pmu for guest capable of nesting (Suraj Jitindar Singh) [1710726] - [powerpc] kvm: ppc: book3s hv: xive: fix rollback when kvmppc_xive_create fails (David Gibson) [1731900] - [powerpc] powerpc/pseries: Fix xive=off command line (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: don't use string functions from lib/ (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: remove CONFIG_CMDLINE #ifdef mess (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc: Move `path` variable inside DEBUG_PROM (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Generate "phandle" instead of "linux, phandle" (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move a few remaining statics to appropriate sections (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Move prom_radix_disable to __prombss (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Remove support for OPAL v2 (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Replace __initdata with __prombss when applicable (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/prom_init: Make of_workarounds static (Desnes Augusto Nunes do Rosario) [1731400] - [powerpc] powerpc/powernv/idle: Restore AMR/UAMOR/AMOR after idle (David Gibson) [1730183] - [powerpc] powerpc/powernv/idle: Restore IAMR after idle (David Gibson) [1730183]- [kernel] fork: report pid exhaustion correctly (Don Dutile) [1726448] - [lib] idr: Fix idr_get_next race with idr_remove (Don Dutile) [1726448] - [kernel] Fix failure path in alloc_pid() (Don Dutile) [1726448] - [target] scsi: iscsi: set auth_protocol back to NULL if CHAP_A value is not supported (Maurizio Lombardi) [1733498]- [infiniband] IB/umem: Add missing down_read on umem_rwsem (Alaa Hleihel) [1733188] - [fs] gfs2: Fix rounding error in gfs2_iomap_page_prepare (Andreas Grunbacher) [1733621] - [s390] s390/qeth: cancel cmd on early error (Philipp Rudo) [1731430] - [s390] s390/qeth: simplify reply object handling (Philipp Rudo) [1731430] - [s390] s390/qeth: release cmd buffer in error paths (Philipp Rudo) [1731430] - [mm] mm: hugetlb: soft-offline: dissolve_free_huge_page() return zero on !PageHuge (Rafael Aquini) [1706088] - [mm] mm: soft-offline: return -EBUSY if set_hwpoison_free_buddy_page() fails (Rafael Aquini) [1706088] - [mm] mm: soft-offline: close the race against page allocation (Rafael Aquini) [1706088] - [mm] mm: fix race on soft-offlining free huge pages (Rafael Aquini) [1706088] - [pci] PCI: Probe bridge window attributes once at enumeration-time (Myron Stowe) [1730763] - [mm] swap_readpage(): avoid blk_wake_io_task() if !synchronous (Ming Lei) [1724016] - [mm] mm/page_io.c: fix polled swap page in (Ming Lei) [1724016] - [include] fs: fix kABI for struct pipe_buf_operations (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fs: prevent page refcount overflow in pipe_buf_get (Miklos Szeredi) [1705007] {CVE-2019-11487} - [mm] mm: prevent get_user_pages() from overflowing page refcount (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: add 'try_get_page()' helper function (Miklos Szeredi) [1705007] {CVE-2019-11487} - [include] mm: make page ref count overflow check tighter and more explicit (Miklos Szeredi) [1705007] {CVE-2019-11487} - [fs] fuse: call pipe_buf_release() under pipe lock (Miklos Szeredi) [1705007] {CVE-2019-11487} - [kernel] trace: Fix preempt_enable_no_resched() abuse (Phil Auld) [1705550] - [kernel] sched/numa: Fix a possible divide-by-zero (Phil Auld) [1705550] - [kernel] sched/core: Fix buffer overflow in cgroup2 property cpu.max (Phil Auld) [1705550] - [kernel] sched/fair: Remove unused 'sd' parameter from select_idle_smt() (Phil Auld) [1705550] - [kernel] sched/topology: Remove the ::smt_gain field from 'struct sched_domain' cleanups (Phil Auld) [1705550] - [kernel] sched/numa: Remove unused code from update_numa_stats() (Phil Auld) [1705550]- [s390] virtio/s390: fix race on airq_areas[] (Cornelia Huck) [1733499] - [powerpc] powerpc: ignore __GFP_DMA/DMA32 if we left an empty ZONE_DMA/DMA32 enabled for kABI purposes (David Gibson) [1728314] - [netdrv] bnx2x: Disable multi-cos feature. (Manish Chopra) [1679024] - [char] tpm: tpm_ibm_vtpm: Fix unallocated banks (Jerry Snitselaar) [1726126] - [scsi] scsi: ibmvfc: fix WARN_ON during event pool release (Steve Best) [1731133] - [tools] perf vendor events power9: General metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Branch_prediction, instruction_stats, latency, lsu_rejects, memory, prefetch & translation metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Dl1_reloads, instruction_misses, l[23]_stats & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power9: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Translaton & general metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Branch_prediction, latency, bus_stats, instruction_mix & instruction_stats metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Dl1_reload, instruction_misses, l2_stats, lsu_rejects, memory & pteg_reloads metrics (Michael Petlan) [1694638] - [tools] perf vendor events power8: Cpi_breakdown & estimated_dcache_miss_cpi metrics (Michael Petlan) [1694638] - [powerpc] powerpc/tm: Fix oops on sigreturn on systems without TM (Steve Best) [1732753] - [net] net/mlx5e: Add ndo_set_feature for uplink representor (Alaa Hleihel) [1727708] - [misc] VMCI: Fix integer overflow in VMCI handle arrays (Cathy Avery) [1729587] - [tools] perf version: Fix segfault due to missing OPT_END() (Michael Petlan) [1732065] - [sound] ALSA: hda/realtek - Headphone Mic can't record after S3 (Jaroslav Kysela) [1727676] - [char] random: fix CRNG initialization when random.trust_cpu=1 (Oleksandr Natalenko) [1728583] - [char] random: move rand_initialize() earlier (Oleksandr Natalenko) [1728583] - [char] random: make CPU trust a boot parameter (Oleksandr Natalenko) [1728583] - [char] random: add a config option to trust the CPU's hwrng (Oleksandr Natalenko) [1728583] - [fs] blockdev: Fix livelocks on loop device (Ming Lei) [1683593] - [block] nbd: Use set_blocksize() to set device blocksize (Ming Lei) [1683593] - [kernel] ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (Aristeu Rozanski) [1730959] {CVE-2019-13272}- [include] linux/printk.h: use DYNAMIC_DEBUG_BRANCH in pr_debug_ratelimited (Mike Snitzer) [1729301] - [include] dm: use printk ratelimiting functions (Mike Snitzer) [1729301] - [md] dm crypt: move detailed message into debug level (Mike Snitzer) [1729301] - [powerpc] powerpc/xive: Fix loop exit-condition in xive_find_target_in_mask() (Steve Best) [1731838] - [s390] s390/qeth: be drop monitor friendly (Philipp Rudo) [1731200] - [s390] s390/cpumf: Add extended counter set definitions for model 8561 and 8562 (Philipp Rudo) [1731195] - [s390] s390/qdio: handle PENDING state for QEBSM devices (Philipp Rudo) [1731194] - [net] net/af_iucv: build proper skbs for HiperTransport (Philipp Rudo) [1731193] - [net] net/af_iucv: remove GFP_DMA restriction for HiperTransport (Philipp Rudo) [1731193] - [wireless] iwlwifi: mvm: disable TX-AMSDU on older NICs (Jarod Wilson) [1728992] - [wireless] carl9170: fix misuse of device driver API (Jarod Wilson) [1728992] - [wireless] p54: fix crash during initialization (Jarod Wilson) [1728992] - [wireless] p54usb: Fix race between disconnect and firmware loading (Jarod Wilson) [1728992] - [wireless] mwifiex: Don't abort on small, spec-compliant vendor IEs (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 507 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 505 (Jarod Wilson) [1728992] - [wireless] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 501 (Jarod Wilson) [1728992] - [net] treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Don't tune while the card is off (Jarod Wilson) [1728992] - [wireless] brcmfmac: sdio: Disable auto-tuning around commands expected to fail (Jarod Wilson) [1728992] - [mmc] mmc: core: Add sdio_retune_hold_now() and sdio_retune_release() (Jarod Wilson) [1728992] - [mmc] mmc: core: API to temporarily disable retuning for SDIO CRC errors (Jarod Wilson) [1728992] - [wireless] Revert "brcmfmac: disable command decode in sdio_aos" (Jarod Wilson) [1728992] - [net] cfg80211: report measurement start TSF correctly (Jarod Wilson) [1728992] - [net] cfg80211: fix memory leak of wiphy device name (Jarod Wilson) [1728992] - [net] cfg80211: util: fix bit count off by one (Jarod Wilson) [1728992] - [net] mac80211: do not start any work during reconfigure flow (Jarod Wilson) [1728992] - [net] cfg80211: use BIT_ULL in cfg80211_parse_mbssid_data() (Jarod Wilson) [1728992] - [net] mac80211: only warn once on chanctx_conf being NULL (Jarod Wilson) [1728992] - [net] mac80211: drop robust management frames from unknown TA (Jarod Wilson) [1728992] - [wireless] mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies() (Jarod Wilson) [1728992 1721749] {CVE-2019-10126} - [wireless] iwlwifi: mvm: change TLC config cmd sent by rs to be async (Jarod Wilson) [1728992] - [wireless] iwlwifi: Fix double-free problems in iwl_req_fw_callback() (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix AX201 killer sku loading firmware issue (Jarod Wilson) [1728992] - [wireless] iwlwifi: print fseq info upon fw assert (Jarod Wilson) [1728992] - [wireless] iwlwifi: clear persistence bit according to device family (Jarod Wilson) [1728992] - [wireless] iwlwifi: fix load in rfkill flow for unified firmware (Jarod Wilson) [1728992] - [wireless] iwlwifi: mvm: remove d3_sram debugfs file (Jarod Wilson) [1728992] - [wireless] mwifiex: Abort at too short BSS descriptor element (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [wireless] mwifiex: Fix possible buffer overflows at parsing bss descriptor (Jarod Wilson) [1728992 1714476] {CVE-2019-3846} - [net] mac80211: free peer keys before vif down in mesh (Jarod Wilson) [1728992] - [wireless] rtw88: Make some symbols static (Jarod Wilson) [1728992] - [wireless] rtw88: avoid circular locking between local->iflist_mtx and rtwdev->mutex (Jarod Wilson) [1728992] - [wireless] rtw88: fix unassigned rssi_level in rtw_sta_info (Jarod Wilson) [1728992] - [wireless] rtw88: fix subscript above array bounds compiler warning (Jarod Wilson) [1728992] - [net] mac80211: mesh: fix RCU warning (Jarod Wilson) [1728992] - [net] nl80211: fix station_info pertid memory leak (Jarod Wilson) [1728992] - [net] mac80211: Do not use stack memory with scatterlist for GMAC (Jarod Wilson) [1728992] - [net] {nl,mac}80211: allow 4addr AP operation on crypto controlled devices (Jarod Wilson) [1728992] - [wireless] mac80211_hwsim: mark expected switch fall-through (Jarod Wilson) [1728992] - [net] mac80211: fix rate reporting inside cfg80211_calculate_bitrate_he() (Jarod Wilson) [1728992] - [net] mac80211: remove set but not used variable 'old' (Jarod Wilson) [1728992] - [net] mac80211: handle deauthentication/disassociation from TDLS peer (Jarod Wilson) [1728992] - [net] wireless: Skip directory when generating certificates (Jarod Wilson) [1728992] - [netdrv] i40e: Check and set the PF driver state first in i40e_ndo_set_vf_mac (Stefan Assmann) [1719538] - [fs] cifs: fix crash in smb2_compound_op()/smb2_set_next_command() (Leif Sahlberg) [1722704] - [firmware] efi/arm: Show SMBIOS bank/device location in CPER and GHES error logs (Robert Richter) [1721386]- [x86] x86/speculation: Allow guests to use SSBD even if host does not (Waiman Long) [1728341] - [block] block: kill BLK_MQ_F_SG_MERGE (Ming Lei) [1716595] - [block] block: kill QUEUE_FLAG_NO_SG_MERGE (Ming Lei) [1716595]- [x86] x86/insn-eval: Fix use-after-free access to LDT entry (Rafael Aquini) [1728561] {CVE-2019-13233} - [arm64] arm64/mm: Correct the cache line size warning with non coherent device (Mark Salter) [1715061] - [arm64] arm64: cacheinfo: Update cache_line_size detected from DT or PPTT (Mark Salter) [1715061] - [base] drivers: base: cacheinfo: Add variable to record max cache line size (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Trap CTR_EL0 access only where it is necessary (Mark Salter) [1715061] - [arm64] arm64: cpufeature: Fix handling of CTR_EL0.IDC field (Mark Salter) [1715061] - [arm64] arm64: cpufeature: ctr: Fix cpu capability check for late CPUs (Mark Salter) [1715061] - [arm64] arm64: cpu_errata: Remove ARM64_MISMATCHED_CACHE_LINE_SIZE (Mark Salter) [1715061] - [fs] gfs2: Clean up freeing struct gfs2_sbd (Robert S Peterson) [1683698] - [target] scsi: target/iblock: Fix overrun in WRITE SAME emulation (Maurizio Lombardi) [1729503] - [x86] kvm/nvmx: fix VMCLEAR when Enlightened VMCS is in use (Vitaly Kuznetsov) [1717785] - [x86] kvm/nvmx: don't use clean fields data on enlightened VMLAUNCH (Vitaly Kuznetsov) [1717785] - [x86] kvm: nvmx: use correct clean fields when copying from eVMCS (Vitaly Kuznetsov) [1717785] - [fs] NFS4: Only set creation opendata if O_CREAT (Benjamin Coddington) [1708471] - [tools] perf test: Fix failure of 'evsel-tp-sched' test on s390 (Michael Petlan) [1729213] - [fs] PNFS fallback to MDS if no deviceid found (Benjamin Coddington) [1708386] - [mm] mm, memcg: add a memcg_slabinfo debugfs file (Waiman Long) [1699202] - [mm] mm: memcg/slab: reparent memcg kmem_caches on cgroup removal (Waiman Long) [1699202] - [mm] mm: memcg/slab: stop setting page->mem_cgroup pointer for slab pages (Waiman Long) [1699202] - [mm] mm: memcg/slab: rework non-root kmem_cache lifecycle management (Waiman Long) [1699202] - [mm] mm: memcg/slab: synchronize access to kmem_cache dying flag using a spinlock (Waiman Long) [1699202] - [mm] mm: memcg/slab: don't check the dying flag on kmem_cache creation (Waiman Long) [1699202] - [mm] mm: memcg/slab: unify SLAB and SLUB page accounting (Waiman Long) [1699202] - [mm] mm: memcg/slab: introduce __memcg_kmem_uncharge_memcg() (Waiman Long) [1699202] - [mm] mm: memcg/slab: generalize postponed non-root kmem_cache deactivation (Waiman Long) [1699202] - [mm] mm: memcg/slab: rename slab delayed deactivation functions and fields (Waiman Long) [1699202] - [mm] mm: memcg/slab: postpone kmem_cache memcg pointer initialization to memcg_link_cache() (Waiman Long) [1699202] - [mm] slub: add comments to endif pre-processor macros (Waiman Long) [1699202] - [mm] mm, slab: shorten kmalloc cache names for large sizes (Waiman Long) [1699202] - [base] mm, proc: add KReclaimable to /proc/meminfo (Waiman Long) [1699202] - [mm] mm: rename and change semantics of nr_indirectly_reclaimable_bytes (Waiman Long) [1699202] - [fs] dcache: allocate external names from reclaimable kmalloc caches (Waiman Long) [1699202] - [mm] mm, slab/slub: introduce kmalloc-reclaimable caches (Waiman Long) [1699202] - [mm] mm, slab: combine kmalloc_caches and kmalloc_dma_caches (Waiman Long) [1699202] - [mm] mm: don't warn about large allocations for slab (Waiman Long) [1699202] - [mm] slab: Replace synchronize_sched() with synchronize_rcu() (Waiman Long) [1699202] - [acpi] ACPI / PM: LPIT: Register sysfs attributes based on FADT (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Quirk to ignore XTAL shutdown (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add Package cstates residency info (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc_core: Add ICL platform support (Lenny Szubowicz) [1493461] - [platform] platform/x86: intel_pmc: Sort headers alphabetically (Lenny Szubowicz) [1493461] - [net] Revert "[net] net: openvswitch: Add a new action check_pkt_len" ("Herton R. Krzesinski")- [nvme] nvme-rdma: use nr_phys_segments when map rq to sgl (David Milburn) [1729113] - [nvme] nvme-loop: kill timeout handler (Ming Lei) [1692744] - [netdrv] bnxt_en: Suppress error messages when querying DSCP DCB capabilities. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Cap the returned MSIX vectors to the RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic for RDMA driver. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix ethtool selftest crash under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Disable bus master during PCI shutdown and driver unload. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Reduce memory usage when running in kdump kernel. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix aggregation buffer leak under OOM condition. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve NQ reservations. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix uninitialized variable usage in bnxt_rx_pkt(). (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix statistics context reservation logic. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Pass correct extended TX port statistics size to firmware. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Fix possible crash in bnxt_hwrm_ring_free() under error conditions. (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Free short FW command HWRM memory in error path in bnxt_init_one() (Selvin Xavier) [1727972] - [netdrv] bnxt_en: Improve multicast address setup logic. (Selvin Xavier) [1727972] - [net] net: openvswitch: Add a new action check_pkt_len (Numan Siddique) [1700733]- [crypto] crypto: vmx - ghash: do nosimd fallback manually (Desnes Augusto Nunes do Rosario) [1729532] - [crypto] crypto: vmx - CTR: always increment IV as quadword (Desnes Augusto Nunes do Rosario) [1729532] - [net] vsock/virtio: fix flush of works during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: stop workers during the .remove() (Stefano Garzarella) [1700312] - [net] vsock/virtio: use RCU to avoid use-after-free on the_virtio_vsock (Stefano Garzarella) [1700312] - [net] vsock/virtio: Initialize core virtio vsock before registering the driver (Stefano Garzarella) [1700312] - [nvme] nvme-fabrics: document the poll function argument (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: fix queue mapping when queue count is limited (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: rework queue maps handling (David Milburn) [1727784 1725132] - [nvme] nvme-rdma: implement polling queue map (David Milburn) [1727784 1725132] - [nvme] nvme-fabrics: allow nvmf_connect_io_queue to poll (David Milburn) [1727784 1725132] - [hid] HID: multitouch: Add pointstick support for ALPS Touchpad (Benjamin Tissoires) [1672423]- [tools] perf header: Assign proper ff->ph in perf_event__synthesize_features() (Michael Petlan) [1667983] - [pci] PCI/IOV: Assume SR-IOV VFs support extended config space. (Myron Stowe) [1714978] - [pci] Revert "PCI/IOV: Use VF0 cached config space size for other VFs" (Myron Stowe) [1714978] - [x86] x86/crash: Add e820 reserved ranges to kdump kernel's e820 table (Lianbo Jiang) [1630108] - [mm] x86/mm: Rework ioremap resource mapping determination (Lianbo Jiang) [1630108] - [x86] x86/e820, ioport: Add a new I/O resource descriptor IORES_DESC_RESERVED (Lianbo Jiang) [1630108] - [kernel] resource: Fix find_next_iomem_res() iteration issue (Lianbo Jiang) [1630108] - [kernel] resource: Include resource end in walk_*() interfaces (Lianbo Jiang) [1630108] - [x86] x86/kexec: Correct KEXEC_BACKUP_SRC_END off-by-one error (Lianbo Jiang) [1630108] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.3 (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix kernel warnings related to smp_processor_id() (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix BFS crash with DIX enabled (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix FDMI fc4type for nvme support (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix fcp_rsp_len checking on lun reset (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix poor use of hardware queues if fewer irq vectors (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix oops when driver is loaded with 1 interrupt vector (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix incorrect logical link speed on trunks when links down (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix memory leak in abnormal exit path from lpfc_eq_create (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Rework misleading nvme not supported in firmware message (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix hardlockup in scsi_cmd_iocb_cmpl (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Cancel queued work for an IO when processing a received ABTS (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Prevent 'use after free' memory overwrite in nvmet LS handling (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix PT2PT PLOGI collison stopping discovery (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revert message logging on unsupported topology (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet handling of received ABTS for unmapped frames (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Separate CQ processing for nvmet_fc upcalls (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Revise message when stuck due to unresponsive adapter (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Correct nvmet buffer free race condition (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix nvmet target abort cmd matching (Dick Kennedy) [1717027] - [scsi] scsi: lpfc: Fix alloc context on oas lun creations (Dick Kennedy) [1717027]- [virt] kvm: fix guest initialization code mismerge (Marcelo Tosatti) [1726487] - [powerpc] powerpc/watchpoint: Restore NV GPRs while returning from exception (Steve Best) [1728557] - [fs] fs/proc/vmcore: Enable dumping of encrypted memory when SEV was active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Set the C-bit in the identity map page table when SEV is active (Lianbo Jiang) [1646810] - [x86] x86/kexec: Do not map kexec area as decrypted when SEV is active (Lianbo Jiang) [1646810] - [mm] x86/mm: Do not use set_{pud, pmd}_safe() when splitting a large page (Lianbo Jiang) [1646810]- [net] sched: protect against stack overflow in TC act_mirred (Ivan Vecera) [1726399] - [net] sched: refactor reinsert action (Ivan Vecera) [1726399] - [net] mpls: Fix 6PE forwarding (Hangbin Liu) [1726533] - [net] make skb_dst_force return true when dst is refcounted (Florian Westphal) [1704809] - [net] ipv4: Fix off-by-one in route dump counter without netlink strict checking (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: fix suspicious RCU usage in rt6_dump_route() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: fix suspicious RCU usage in fib_dump_info_fnhe() (Stefano Brivio) [1725383 1725381 1574290] - [net] ip6_fib: Don't discard nodes with valid routing information in fib6_locate_1() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv6/route: Change return code of rt6_dump_route() for partial node dumps (Stefano Brivio) [1725383 1725381 1574290] - [net] revert "net/ipv6: Bail early if user only wants cloned entries" (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4: Dump route exceptions if requested (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/route: Allow NULL flowinfo in rt_fill_info() (Stefano Brivio) [1725383 1725381 1574290] - [net] ipv4/fib_frontend: Allow RTM_F_CLONED flag to be used for filtering (Stefano Brivio) [1725383 1725381 1574290] - [net] fib_frontend, ip6_fib: Select routes or exceptions dump from RTM_F_CLONED (Stefano Brivio) [1725383 1725381 1574290] - [tools] selftests: bpf: disable test_lwt_seg6local (Jiri Benc) [1716346] - [netdrv] ipvlan: Fix ipvlan device tso disabled while NETIF_F_IP_CSUM is set (Matteo Croce) [1725125] - [netdrv] ipvlan: disallow userns cap_net_admin to change global mode/flags (Matteo Croce) [1725124] - [net] netfilter: nft_fib: Fix existence check support (Phil Sutter) [1680578] - [net] ipset: Fix memory accounting for hash types on resize (Stefano Brivio) [1714111] - [tools] selftests: pmtu: Make list_flush_ipv6_exception test more demanding (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv4_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce list_flush_ipv6_exception test case (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add support for routing via nexthop objects (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move route installs to a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Move running of test into a new function (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Fix encapsulating device in pmtu_vti6_link_change_mtu (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Simplify cleanup and namespace names (Stefano Brivio) [1725384] - [tools] selftests: pmtu.sh: Remove quotes around commands in setup_xfrm (Stefano Brivio) [1725384] - [tools] selftests: Add debugging options to pmtu.sh (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add explicit tests for PMTU exceptions cleanup (Stefano Brivio) [1725384] - [tools] selftests: pmtu: disable DAD in all namespaces (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce FoU and GUE PMTU exceptions tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over GENEVE over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce tests for IPv4/IPv6 over VXLAN over IPv4/IPv6 (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Add optional traffic captures for single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Allow selection of single tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: add basic IPv4 and IPv6 PMTU tests (Stefano Brivio) [1725384] - [tools] selftests: pmtu: extend MTU parsing helper to locked MTU (Stefano Brivio) [1725384] - [tools] selftests: pmtu: Introduce check_pmtu_value() (Stefano Brivio) [1725384] - [tools] selftests: pmtu: properly redirect stderr to /dev/null (Stefano Brivio) [1725384] - [tools] selftests: pmtu: detect correct binary to ping ipv6 addresses (Stefano Brivio) [1725384] - [net] ipv6: icmp: Updating pmtu for link local route (Guillaume Nault) [1721961] - [net] bridge: Mark FDB entries that were added by user as such (Ivan Vecera) [1724400] - [net] tipc: change to use register_pernet_device (Xin Long) [1719136] - [net] sched: cls_flower: fix infinite loop in fl_walk() (Davide Caratti) [1712739]- [rpmspec] redhat: fix vmlinux debuginfo on ppc64le (Jan Stancek) [1727638] - [powerpc] powerpc/rtas: retry when cpu offline races with suspend/migration (Steve Best) [1727051] - [kernel] arm64/crashkernel: Reduce crashkernel size to 448M by default (Bhupesh Sharma) [1564422]- [scsi] scsi: libiscsi: Fix race between iscsi_xmit_task and iscsi_complete_task (Chris Leech) [1718875] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.2 (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: add check for loss of ndlp when sending RRQ (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: correct rcu unlock issue in lpfc_nvme_info_show (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: resolve lockdep warnings (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Make lpfc_sli4_oas_verify static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix a recently introduced compiler warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix missing wakeups on abort threads (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Change smp_processor_id() into raw_smp_processor_id() (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove unused functions (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Remove set-but-not-used variables (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Move trunk_errmsg[] from a header file into a .c file (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Annotate switch/case fall-through (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Fix indentation and balance braces (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: Declare local functions static (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: avoid uninitialized variable warning (Dick Kennedy) [1714795] - [scsi] scsi: lpfc: change snprintf to scnprintf for possible overflow (Dick Kennedy) [1714795] - [net] Bluetooth: hidp: fix buffer overflow (Gopal Tiwari) [1723654] {CVE-2019-11884} - [s390] virtio/s390: make airq summary indicators DMA (Philipp Rudo) [1651752] - [s390] virtio/s390: use DMA memory for ccw I/O and classic notifiers (Philipp Rudo) [1651752] - [s390] virtio/s390: add indirection to indicators access (Philipp Rudo) [1651752] - [s390] virtio/s390: use cacheline aligned airq bit vectors (Philipp Rudo) [1651752] - [s390] s390/airq: use DMA memory for adapter interrupts (Philipp Rudo) [1651752] - [s390] s390/cio: add basic protected virtualization support (Philipp Rudo) [1651752] - [s390] s390/cio: introduce DMA pools to cio (Philipp Rudo) [1651752] - [s390] s390/mm: force swiotlb for protected virtualization (Philipp Rudo) [1651752] - [s390] virtio/s390: DMA support for virtio-ccw (Philipp Rudo) [1651752] - [s390] virtio/s390: use vring_create_virtqueue (Philipp Rudo) [1651752] - [block] virtio-blk: Consider virtio_max_dma_size() for maximum segment size (Philipp Rudo) [1651752] - [virtio] virtio: Introduce virtio_max_dma_size() (Philipp Rudo) [1651752] - [kernel] dma: Introduce dma_max_mapping_size() (Philipp Rudo) [1651752] - [kernel] swiotlb: Add is_swiotlb_active() function (Philipp Rudo) [1651752] - [kernel] swiotlb: Introduce swiotlb_max_mapping_size() (Philipp Rudo) [1651752] - [mm] x86/mm: Create a workarea in the kernel for SME early encryption (Lianbo Jiang) [1564427] - [x86] x86/mm: Identify the end of the kernel area to be reserved (Lianbo Jiang) [1564427] - [x86] x86/kdump: Export the SME mask to vmcoreinfo (Lianbo Jiang) [1564427] - [fs] proc/vmcore: Fix i386 build error of missing copy_oldmem_page_encrypted() (Lianbo Jiang) [1564427] - [fs] kdump, proc/vmcore: Enable kdumping encrypted memory with SME enabled (Lianbo Jiang) [1564427] - [iommu] iommu/amd: Remap the IOMMU device table with the memory encryption mask for kdump (Lianbo Jiang) [1564427] - [kernel] kexec: Allocate decrypted control pages for kdump if SME is enabled (Lianbo Jiang) [1564427] - [mm] x86/ioremap: Add an ioremap_encrypted() helper (Lianbo Jiang) [1564427] - [documentation] Documentation: Add ARM64 to kernel-parameters.rst (Jeremy Linton) [1640855] - [arm64] arm64/speculation: Support 'mitigations=' cmdline option (Jeremy Linton) [1640855] - [arm64] arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB (Jeremy Linton) [1640855] - [arm64] arm64: enable generic CPU vulnerabilites support (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for speculative store bypass (Jeremy Linton) [1640855] - [arm64] arm64: Always enable ssb vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Always enable spectre-v2 vulnerability detection (Jeremy Linton) [1640855] - [arm64] arm64: Use firmware to detect CPUs that are not affected by Spectre-v2 (Jeremy Linton) [1640855] - [arm64] arm64: Advertise mitigation of Spectre-v2, or lack thereof (Jeremy Linton) [1640855] - [arm64] arm64: add sysfs vulnerability show for meltdown (Jeremy Linton) [1640855] - [arm64] arm64: Add sysfs vulnerability show for spectre-v1 (Jeremy Linton) [1640855] - [arm64] arm64: Provide a command line to disable spectre_v2 mitigation (Jeremy Linton) [1640855] - [documentation] powerpc/fsl: Add FSL_PPC_BOOK3E as supported arch for nospectre_v2 boot arg (Jeremy Linton) [1640855] - [documentation] Documentation: Document arm64 kpti control (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist HiSilicon Taishan v110 CPUs (Jeremy Linton) [1640855] - [arm64] arm64: Add MIDR encoding for HiSilicon Taishan CPUs (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Whitelist Cortex-A CPUs that don't implement the CSV3 field (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Update arm64_kernel_use_ng_mappings() when forced on (Jeremy Linton) [1640855] - [arm64] arm64: kpti: Avoid rewriting early page tables when KASLR is enabled (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge duplicate Cavium erratum entries (Jeremy Linton) [1640855] - [arm64] arm64: capabilities: Merge entries for ARM64_WORKAROUND_CLEAN_CACHE (Jeremy Linton) [1640855] - [arm64] arm64: Use a raw spinlock in __install_bp_hardening_cb() (Jeremy Linton) [1640855] - [arm64] arm64: KVM: Guests can skip __install_bp_hardening_cb()s HYP work (Jeremy Linton) [1640855] - [arm64] arm64: fix SSBS sanitization (Jeremy Linton) [1640855] - [arm64] arm64: don't zero DIT on signal return (Jeremy Linton) [1640855] - [kvm] KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3 (Jeremy Linton) [1640855] - [arm64] arm64: ssbd: Drop #ifdefs for PR_SPEC_STORE_BYPASS (Jeremy Linton) [1640855] - [arm64] arm64: cpufeature: Detect SSBS and advertise to userspace (Jeremy Linton) [1640855] - [arm64] arm64: move SCTLR_EL{1,2} assertions to (Jeremy Linton) [1640855]- [powerpc] powerpc/mm/64s/hash: Reallocate context ids on fork (Steve Best) [1723808] - [powerpc] powerpc/perf: Use cpumask_last() to determine the designated cpu for nest/core units. (Steve Best) [1725746] - [fs] iomap: fix page_done callback for short writes (Andreas Grunbacher) [1724361] - [fs] fs: fold __generic_write_end back into generic_write_end (Andreas Grunbacher) [1724361] - [fs] iomap: don't mark the inode dirty in iomap_write_end (Andreas Grunbacher) [1724361] - [fs] gfs2: Fix iomap write page reclaim deadlock (Andreas Grunbacher) [1724361] - [fs] iomap: Add a page_prepare callback (Andreas Grunbacher) [1724361] - [fs] iomap: Fix use-after-free error in page_done callback (Andreas Grunbacher) [1724361] - [fs] fs: Turn __generic_write_end into a void function (Andreas Grunbacher) [1724361] - [fs] iomap: Clean up __generic_write_end calling (Andreas Grunbacher) [1724361] - [kvm] KVM: PPC: Book3S HV: Clear pending decrementer exceptions on nested guest entry (Suraj Jitindar Singh) [1718822] - [kvm] KVM: PPC: Book3S HV: Signed extend decrementer value if not using large decrementer (Suraj Jitindar Singh) [1718822]- [hid] HID: chicony: add another quirk for PixArt mouse (Oleksandr Natalenko) [1724967] - [scsi] scsi: smartpqi: properly set both the DMA mask and the coherent DMA mask (Don Brace) [1712272] - [tools] perf beauty waitid options: Fix up prefix showing logic (Michael Petlan) [1715507] - [include] redhat: perf kABI-check failure fix (Michael Petlan) [1715507] - [tools] perf script python: Add Python3 support to tests/attr.py (Michael Petlan) [1715507] - [tools] perf trace: Support multiple "vfs_getname" probes (Michael Petlan) [1715507] - [tools] perf symbols: Filter out hidden symbols from labels (Michael Petlan) [1715507] - [tools] perf symbols: Add fallback definitions for GELF_ST_VISIBILITY() (Michael Petlan) [1715507] - [tools] perf clang: Do not use 'return std::move(something)' (Michael Petlan) [1715507] - [tools] perf tests evsel-tp-sched: Fix bitwise operator (Michael Petlan) [1715507] - [tools] perf script: Fix crash when processing recorded stat data (Michael Petlan) [1715507] - [tools] perf top: Fix wrong hottest instruction highlighted (Michael Petlan) [1715507] - [tools] perf tools: Handle TOPOLOGY headers with no CPU (Michael Petlan) [1715507] - [tools] perf python: Remove -fstack-clash-protection when building with some clang versions (Michael Petlan) [1715507] - [tools] perf script: Fix crash with printing mixed trace point and other events (Michael Petlan) [1715507] - [tools] perf ordered_events: Fix crash in ordered_events__free (Michael Petlan) [1715507] - [tools] tools headers powerpc: Remove unistd.h (Michael Petlan) [1715507] - [tools] perf powerpc: Rework syscall table generation (Michael Petlan) [1715507] - [tools] perf symbols: Add 'arch_cpu_idle' to the list of kernel idle symbols (Michael Petlan) [1715507] - [tools] perf beauty: Switch from using uapi/linux/fs.h to uapi/linux/mount.h (Michael Petlan) [1715507] - [tools] tools include uapi: Grab a copy of linux/mount.h (Michael Petlan) [1715507] - [tools] perf top: Lift restriction on using callchains without "sym" in --sort (Michael Petlan) [1715507] - [tools] tools lib traceevent: Remove tep_data_event_from_type() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_is_file_bigendian() to tep_file_bigendian() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of tep_register_event_handler() API (Michael Petlan) [1715507] - [tools] tools lib traceevent: Changed return logic of trace_seq_printf() and trace_seq_vprintf() APIs (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename struct cmdline to struct tep_cmdline (Michael Petlan) [1715507] - [tools] tools lib traceevent: Initialize host_bigendian at tep_handle allocation (Michael Petlan) [1715507] - [tools] tools lib traceevent: Introduce new libtracevent API: tep_override_comm() (Michael Petlan) [1715507] - [tools] perf tests: Add a test for the ARM 32-bitpage (Michael Petlan) [1715507] - [tools] perf tools: Make find_vdso_map() more modular (Michael Petlan) [1715507] - [tools] perf trace: Fix alignment forlines (Michael Petlan) [1715507] - [tools] perf trace: Fix ')' placement in "interrupted" syscall lines (Michael Petlan) [1715507] - [tools] perf test shell: Use a fallback to get the pathname in vfs_getname (Michael Petlan) [1715507] - [tools] perf python: Make sure the python binding output directory is in place (Michael Petlan) [1715507] - [tools] perf strbuf: Remove redundant va_end() in strbuf_addv() (Michael Petlan) [1715507] - [tools] perf annotate: Pass filename to objdump via execl (Michael Petlan) [1715507] - [tools] perf report: Fix wrong iteration count in --branch-history (Michael Petlan) [1715507] - [tools] tools headers uapi: Sync copy of asm-generic/unistd.h with the kernel sources (Michael Petlan) [1715507] - [tools] tools beauty: Make the prctl option table generator catch all PR_ options (Michael Petlan) [1715507] - [tools] perf stat: Fix endless wait for child process (Michael Petlan) [1715507] - [tools] perf session: Add comment for perf_session__register_idle_thread() (Michael Petlan) [1715507] - [tools] perf thread-stack: Fix thread stack processing for the idle task (Michael Petlan) [1715507] - [tools] perf thread-stack: Allocate an array of thread stacks (Michael Petlan) [1715507] - [tools] perf thread-stack: Factor out thread_stack__init() (Michael Petlan) [1715507] - [tools] perf thread-stack: Allow for a thread stack array (Michael Petlan) [1715507] - [tools] perf thread-stack: Avoid direct reference to the thread's stack (Michael Petlan) [1715507] - [tools] perf thread-stack: Tidy thread_stack__bottom() usage (Michael Petlan) [1715507] - [tools] perf thread-stack: Simplify some code in thread_stack__process() (Michael Petlan) [1715507] - [tools] perf c2c: Increase the HITM ratio limit for displayed cachelines (Michael Petlan) [1715507] - [tools] perf c2c: Change the default coalesce setup (Michael Petlan) [1715507] - [tools] perf trace beauty ioctl: Beautify USBDEVFS_ commands (Michael Petlan) [1715507] - [tools] perf trace beauty: Export function to get the files for a thread (Michael Petlan) [1715507] - [tools] perf trace: Wire up ioctl's USBDEBFS_ cmd table generator (Michael Petlan) [1715507] - [tools] perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of usbdevice_fs.h (Michael Petlan) [1715507] - [tools] perf trace: Store the major number for a file when storing its pathname (Michael Petlan) [1715507] - [tools] perf trace: Move the files table resizing to outside set_pathname() (Michael Petlan) [1715507] - [tools] perf trace: Rename thread_thread->paths to thread_trace->files (Michael Petlan) [1715507] - [tools] perf script: Fix LBR skid dump problems in brstackinsn (Michael Petlan) [1715507] - [tools] perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*" (Michael Petlan) [1715507] - [tools] perf trace: Do not hardcode the size of the tracepoint common_ fields (Michael Petlan) [1715507] - [tools] perf build: Don't unconditionally link the libbfd feature test to -liberty and -lz (Michael Petlan) [1715507] - [tools] perf beauty mmap: PROT_WRITE should come before PROT_EXEC (Michael Petlan) [1715507] - [tools] perf trace: Check if the raw_syscalls:sys_{enter, exit} are setup before setting tp filter (Michael Petlan) [1715507] - [tools] perf symbols: Relax checks on perf-PID.map ownership (Michael Petlan) [1715507] - [tools] perf trace: Wire up the fadvise 'advice' table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add generator for fadvise64's 'advice' arg constants (Michael Petlan) [1715507] - [tools] tools headers uapi: Grab a copy of fadvise.h (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print mmap's 'offset' arg in hexadecimal (Michael Petlan) [1715507] - [tools] perf beauty mmap: Print PROT_READ before PROT_EXEC to match strace output (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify arch_prctl()'s arguments (Michael Petlan) [1715507] - [tools] perf trace: When showing string prefixes show prefix + ??? for unknown entries (Michael Petlan) [1715507] - [tools] perf trace: Move strarrays to beauty.h for further reuse (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the x86_arch prctl code table generator (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for x86's 'arch_prctl' codes (Michael Petlan) [1715507] - [tools] tools include arch: Grab a copy of x86's prctl.h (Michael Petlan) [1715507] - [tools] perf trace: Show NULL when syscall pointer args are 0 (Michael Petlan) [1715507] - [tools] perf trace: Enclose the errno strings with () (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Copy 'access' arg as well (Michael Petlan) [1715507] - [tools] perf trace: Add alignment spaces after the closing parens (Michael Petlan) [1715507] - [tools] perf trace beauty: Print O_RDONLY when (flags & O_ACCMODE) == 0 (Michael Petlan) [1715507] - [tools] perf trace: Allow asking for not suppressing common string prefixes (Michael Petlan) [1715507] - [tools] perf trace: Add a prefix member to the strarray class (Michael Petlan) [1715507] - [tools] perf trace: Enclose strings with double quotes (Michael Petlan) [1715507] - [tools] perf trace: Make the alignment of the syscall args be configurable (Michael Petlan) [1715507] - [tools] perf trace: Allow suppressing the syscall argument names (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall start timestamp should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring default for perf_event_attr.inherit (Michael Petlan) [1715507] - [tools] perf config: Show the configuration when no arguments are provided (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if the syscall duration should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow configuring if zeroed syscall args should be printed (Michael Petlan) [1715507] - [tools] perf trace: Allow specifying a set of events to add in perfconfig (Michael Petlan) [1715507] - [tools] perf augmented_raw_syscalls: Do not include stdio.h (Michael Petlan) [1715507] - [tools] perf cs-etm: Generate branch sample for exception packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat EO_TRACE element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Treat NO_SYNC element as trace discontinuity (Michael Petlan) [1715507] - [tools] perf cs-etm: Rename CS_ETM_TRACE_ON to CS_ETM_DISCONTINUITY (Michael Petlan) [1715507] - [tools] perf cs-etm: Refactor enumeration cs_etm_sample_type (Michael Petlan) [1715507] - [tools] perf cs-etm: Remove unused 'trace_on' in cs_etm_decoder (Michael Petlan) [1715507] - [tools] perf cs-etm: Avoid stale branch samples when flush packet (Michael Petlan) [1715507] - [tools] perf cs-etm: Correct packets swapping in cs_etm__flush() (Michael Petlan) [1715507] - [tools] perf trace: Switch to using a struct for the aumented_raw_syscalls syscalls map values (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Switch to using a struct for the syscalls map values (Michael Petlan) [1715507] - [tools] perf bpf: Move perf_event_output() from stdio.h to bpf.h (Michael Petlan) [1715507] - [tools] perf trace: Implement syscall filtering in augmented_syscalls (Michael Petlan) [1715507] - [tools] perf trace: Avoid using raw_syscalls in duplicity with eBPF augmentation (Michael Petlan) [1715507] - [tools] perf trace: Rename set_ev_qualifier_filter to clarify its a tracepoint filter (Michael Petlan) [1715507] - [tools] perf tools: Cast off_t to s64 to avoid warning on bionic libc (Michael Petlan) [1715507] - [tools] perf tools: Add missing open_memstream() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] perf header: Fix up argument to ctime() (Michael Petlan) [1715507] - [tools] perf tools: Add missing sigqueue() prototype for systems lacking it (Michael Petlan) [1715507] - [tools] tools lib subcmd: Don't add the kernel sources to the include path (Michael Petlan) [1715507] - [tools] perf trace beauty: renameat's newdirfd may also be AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Beautify renameat2's flags argument (Michael Petlan) [1715507] - [tools] perf beauty: Wire up the renameat flags table generator to the Makefile (Michael Petlan) [1715507] - [tools] perf beauty: Add a string table generator for renameat2's flags constants (Michael Petlan) [1715507] - [tools] perf trace beauty: Beautify renameat2's fd arg wrt AT_FDCWD (Michael Petlan) [1715507] - [tools] perf trace: Allow selecting use the use of the ordered_events code (Michael Petlan) [1715507] - [tools] perf trace: Rename delivery functions to ease making ordered_events selectable (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix processing of dereferenced args in bprintk events (Michael Petlan) [1715507] - [tools] perf stat: Avoid segfaults caused by negated options (Michael Petlan) [1715507] - [tools] perf auxtrace: Alter addr_filter__entire_dso() to work if there are no symbols (Michael Petlan) [1715507] - [tools] perf dso: Export data_file_size() method there are no symbols (Michael Petlan) [1715507] - [tools] perf trace: Add ordered processing (Michael Petlan) [1715507] - [tools] perf ordered_events: Add first_time() method (Michael Petlan) [1715507] - [tools] perf trace: Move event delivery to a new deliver_event() function (Michael Petlan) [1715507] - [tools] perf ordered_events: Add ordered_events__flush_time interface (Michael Petlan) [1715507] - [tools] perf annotate: Introduce basic support for ARC (Michael Petlan) [1715507] - [tools] perf config: Modify size factor of snprintf (Michael Petlan) [1715507] - [tools] perf record: Fix memory leak on AIO objects deallocation (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix Load_Miss_Real_Latency on SKL/SKX (Michael Petlan) [1715507] - [tools] perf parse-events: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf probe: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf ui helpline: Use strlcpy() as a shorter form of strncpy() + explicit set nul (Michael Petlan) [1715507] - [tools] perf svghelper: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf help: Remove needless use of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf header: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf dso: Fix unchecked usage of strncpy() (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for PTMv1.1 decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add support for ETMv3 trace decoding (Michael Petlan) [1715507] - [tools] perf cs-etm: Add configuration for ETMv3 trace protocol (Michael Petlan) [1715507] - [tools] perf top: Move perf_top__reset_sample_counters() to after counts display (Michael Petlan) [1715507] - [tools] perf top: Display slow reader warning when droping samples (Michael Petlan) [1715507] - [tools] perf top: Save and display the drop count stats (Michael Petlan) [1715507] - [tools] perf top: Drop samples which are behind the refresh rate (Michael Petlan) [1715507] - [tools] perf top: Set the 'session_done' volatile variable when exiting (Michael Petlan) [1715507] - [tools] perf top: Use cond variable instead of a lock (Michael Petlan) [1715507] - [tools] perf top: Add processing thread (Michael Petlan) [1715507] - [tools] perf top: Move lost events warning to helpline (Michael Petlan) [1715507] - [tools] perf top: Save and display the lost count stats (Michael Petlan) [1715507] - [tools] perf ordered_events: Add private data member (Michael Petlan) [1715507] - [tools] perf ordered_events: Rework show_progress for __ordered_events__flush (Michael Petlan) [1715507] - [tools] perf tools: Support 'srccode' output (Michael Petlan) [1715507] - [tools] perf trace: We need to consider "nr" if "__syscall_nr" is not there (Michael Petlan) [1715507] - [tools] perf tools: Allow specifying proc-map-timeout in config file (Michael Petlan) [1715507] - [tools] tools lib subcmd: Fix a few source code comment typos (Michael Petlan) [1715507] - [tools] perf tools: Fix diverse comment typos (Michael Petlan) [1715507] - [tools] perf bpf-loader: Fix debugging message typo (Michael Petlan) [1715507] - [tools] perf tools Documentation: Fix diverse typos (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix diverse typos in comments (Michael Petlan) [1715507] - [tools] perf vendor events intel: Fix diverse typos (Michael Petlan) [1715507] - [tools] perf tests ARM: Disable breakpoint tests 32-bit (Michael Petlan) [1715507] - [tools] perf cs-etm: Support for ARM A32/T32 instruction sets in CoreSight trace (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Fixed syntax error Fixed missing ']' error (Michael Petlan) [1715507] - [tools] tools lib traceevent: traceevent API cleanup (Michael Petlan) [1715507] - [tools] perf tools: traceevent API cleanup, remove __tep_data2host*() (Michael Petlan) [1715507] - [tools] tools lib traceevent: Rename tep_free_format() to tep_free_event() (Michael Petlan) [1715507] - [tools] tools lib traceevent, perf tools: Rename 'struct tep_event_format' to 'struct tep_event' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Install trace-seq.h API header file (Michael Petlan) [1715507] - [tools] tools lib traceevent: Added support for pkg-config (Michael Petlan) [1715507] - [tools] tools lib traceevent: Implement new API tep_get_ref() (Michael Petlan) [1715507] - [tools] perf report: Documentation average IPC and IPC coverage (Michael Petlan) [1715507] - [tools] perf report: Display average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] perf annotate: Create a annotate2 flag in struct symbol (Michael Petlan) [1715507] - [tools] perf annotate: Compute average IPC and IPC coverage per symbol (Michael Petlan) [1715507] - [tools] tools lib traceevent: Add sanity check to is_timestamp_in_us() (Michael Petlan) [1715507] - [tools] perf beauty mmap_flags: Check if the arch has a mmap.h file (Michael Petlan) [1715507] - [tools] perf record: Extend trace writing to multi AIO (Michael Petlan) [1715507] - [tools] perf record: Enable asynchronous trace writing (Michael Petlan) [1715507] - [tools] perf mmap: Map data buffer for preserving collected data (Michael Petlan) [1715507] - [tools] tools build feature: Check if libaio is available (Michael Petlan) [1715507] - [tools] perf intel-pt: Fix error with config term "pt=0" (Michael Petlan) [1715507] - [tools] perf top: Allow passing a kallsyms file (Michael Petlan) [1715507] - [tools] perf bpf: Use ERR_CAST instead of ERR_PTR(PTR_ERR()) (Michael Petlan) [1715507] - [tools] tools include: Adopt ERR_CAST() from the kernel err.h header (Michael Petlan) [1715507] - [tools] perf tests record: Allow for 'sleep' being 'coreutils' (Michael Petlan) [1715507] - [tools] tools lib traceevent: Fix compile warnings in tools/lib/traceevent/event-parse.c (Michael Petlan) [1715507] - [tools] perf script: Use fallbacks for branch stacks (Michael Petlan) [1715507] - [tools] perf tools: Use fallback for sample_addr_correlates_sym() cases (Michael Petlan) [1715507] - [tools] perf thread: Add fallback functions for cases where cpumode is insufficient (Michael Petlan) [1715507] - [tools] perf machine: Record if a arch has a single user/kernel address space (Michael Petlan) [1715507] - [tools] perf env: Also consider env->arch == NULL as local operation (Michael Petlan) [1715507] - [tools] perf map: Remove extra indirection from map__find() (Michael Petlan) [1715507] - [tools] perf stat: Fix CSV mode column output for non-cgroup events (Michael Petlan) [1715507] - [tools] perf stat: Fix shadow stats for clock events (Michael Petlan) [1715507] - [tools] perf build: Give better hint about devel package for libssl (Michael Petlan) [1715507] - [tools] perf pmu: Move *_cpuid_str() weak functions to header.c (Michael Petlan) [1715507] - [tools] perf symbols: Fix slowness due to -ffunction-section (Michael Petlan) [1715507] - [tools] perf jvmti: Separate jvmti cmlr check (Michael Petlan) [1715507] - [tools] perf vendor events: Add JSON metrics for Cascadelake server (Michael Petlan) [1715507] - [tools] perf vendor events: Add stepping in CPUID string for x86 (Michael Petlan) [1715507] - [tools] perf stat: Use perf_evsel__is_clocki() for clock events (Michael Petlan) [1715507] - [tools] perf pmu: Suppress potential format-truncation warning (Michael Petlan) [1715507] - [tools] perf tools: Add Hygon Dhyana support (Michael Petlan) [1715507] - [tools] perf bench: Add epoll_ctl(2) benchmark (Michael Petlan) [1715507] - [tools] perf bench: Add epoll parallel epoll_wait benchmark (Michael Petlan) [1715507] - [tools] tools build feature: Check if eventfd() is available (Michael Petlan) [1715507] - [tools] perf bench: Move HAVE_PTHREAD_ATTR_SETAFFINITY_NP into bench.h (Michael Petlan) [1715507] - [tools] perf script: Share code and output format for uregs and iregs output (Michael Petlan) [1715507] - [tools] perf bpf: Reduce the hardcoded .max_entries for pid_maps (Michael Petlan) [1715507] - [tools] perf script: Add newline after uregs output (Michael Petlan) [1715507] - [tools] Revert "perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter" (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove example hardcoded set of filtered pids (Michael Petlan) [1715507] - [tools] perf trace: Fill in BPF "filtered_pids" map when present (Michael Petlan) [1715507] - [tools] perf trace: See if there is a map named "filtered_pids" (Michael Petlan) [1715507] - [tools] perf trace: Add "_from_option" suffix to trace__set_filter() (Michael Petlan) [1715507] - [tools] perf evlist: Rename perf_evlist__set_filter* to perf_evlist__set_tp_filter* (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Use pid_filter (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Drop 'write', 'poll' for testing without self pid filter (Michael Petlan) [1715507] - [tools] perf bpf: Add simple pid_filter class accessible to BPF proggies (Michael Petlan) [1715507] - [tools] perf bpf: Add defines for map insertion/lookup (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Remove needless linux/socket.h include (Michael Petlan) [1715507] - [tools] perf augmented_syscalls: Filter on a hard coded pid (Michael Petlan) [1715507] - [tools] perf bpf: Add unistd.h to the headers accessible to bpf proggies (Michael Petlan) [1715507] - [kernel] perf/core: Fix impossible ring-buffer sizes warning (Michael Petlan) [1715507] - [x86] perf/x86: Add check_period PMU callback (Michael Petlan) [1715507] - [kernel] perf/core: Don't WARN() for impossible ring-buffer sizes (Michael Petlan) [1715507] - [x86] perf/x86/intel/uncore: Add Node ID mask (Michael Petlan) [1715507] - [kernel] perf core: Fix perf_proc_update_handler() bug (Michael Petlan) [1715507] - [tools] powerpc/perf: Update perf_regs structure to include MMCRA (Michael Petlan) [1715507] - [powerpc] powerpc/perf: Update perf_regs structure to include SIER (Michael Petlan) [1715507] - [include] perf/core: Declare the __percpu attribute on non-deref types (Michael Petlan) [1715507] - [kernel] perf: Fix typos in comments (Michael Petlan) [1715507] - [arm64] arm64: perf: Add support for Armv8.1 PMCEID register format (Michael Petlan) [1715507]- [fs] xfs: abort unaligned nowait directio early (Brian Foster) [1690458] - [fs] xfs: serialize unaligned dio writes against all other dio writes (Brian Foster) [1690458] - [sound] ALSA: hda/hdmi: consider eld_valid also in sync_eld_via_acomp() (Jaroslav Kysela) [1708555] - [fs] Fix error code in nfs_lookup_verify_inode() (Scott Mayhew) [1722315] - [md] dm table: don't copy from a NULL pointer in realloc_argv() (Jerome Marchand) [1571628] - [net] netfilter: ipset: replace a strncpy() with strscpy() (Jerome Marchand) [1571628] - [lib] lib/ubsan.c: don't mark __ubsan_handle_builtin_unreachable as noreturn (Jerome Marchand) [1571628] - [include] netfilter: avoid erronous array bounds warning (Jerome Marchand) [1571628] - [x86] x86/mm/KASLR: Compute the size of the vmemmap section properly (Baoquan He) [1669076] - [security] selinux: fix empty write to keycreate file (Ondrej Mosnacek) [1719067] - [netdrv] net: aquantia: fix vlans not working over bridged network (Igor Russkikh) [1718716] - [s390] s390/jump_label: replace stop_machine with smp_call_function (Philipp Rudo) [1722161] - [s390] s390/dumpstack: print psw mask and address again (Philipp Rudo) [1722157] - [s390] s390/crypto: fix gcm-aes-s390 selftest failures (Philipp Rudo) [1722156] - [wireless] Backport mt76 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709867 1709828] - [wireless] Add rtw88 driver from linux-5.2-rc5 (Stanislaw Gruszka) [1487086 1709828] - [wireless] Backport mt7601u driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport mwifiex driver from linux-5.2-rc2 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtl8xxxu driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport rtlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath9k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport ath10k driver from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport brcm80211 drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [wireless] Backport iwlwifi drivers from linux-5.2-rc5 (Stanislaw Gruszka) [1696052 1662020 1662015 1650016 1650015 1650014 1650013 1622445 1494008 1494001 1709828] - [net] Backport mac80211 from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [net] Backport core wireless code from linux-5.2-rc5 (Stanislaw Gruszka) [1709828] - [include] netlink: add nl_set_extack_cookie_u64() (Stanislaw Gruszka) [1709828] - [netdrv] r8152: Fix an error on RTL8153-BD MAC Address Passthrough support (Torez Smith) [1683883 1683882] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BD (Torez Smith) [1683883 1683882] - [netdrv] nfp: abm: fix spelling mistake "offseting" -> "offsetting" (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove vlan CFI bit from push vlan action (Pablo Cascon) [1713258] - [netdrv] nfp: flower: replace CFI with vlan present (Pablo Cascon) [1713258] - [netdrv] nfp: flower: remove double new line (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix ALU32 high bits clearance bug (Pablo Cascon) [1713258] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Pablo Cascon) [1713258] - [netdrv] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Pablo Cascon) [1713258] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Pablo Cascon) [1713258] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Pablo Cascon) [1713258] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: move nfp_bpf_analyzer_ops from verifier.c to offload.c (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: relax prog rejection through max_pkt_offset (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: double check vNIC capabilities after object sharing (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: optimise save/restore for R6~R9 based on register usage (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: fix return address from register-saving subroutine to callee (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: update fixup function for BPF-to-BPF calls support (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: account for additional stack usage when checking stack limit (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: add main logics for BPF-to-BPF calls support in nfp driver (Pablo Cascon) [1713258] - [netdrv] nfp: bpf: copy eBPF subprograms information from kernel verifier (Pablo Cascon) [1713258] - [netdrv] bpf: add verifier callback to get stack usage info for offloaded progs (Pablo Cascon) [1713258]- [rpmspec] Enable kernel signing for ppc64le (Gustavo Duarte) [1504169] - [nvme] nvme: fix memory leak for power latency tolerance (David Milburn) [1724793] - [rpmspec] redhat: fix missing files for mlxsw specific self-tests (Ivan Vecera) [1724735] - [rpmspec] redhat: Package the signing key for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Enable kernel signing for s390 (Philipp Rudo) [1714194] - [rpmspec] redhat: Rename secure boot sources (Philipp Rudo) [1714194] - [powerpc] powerpc: fix max_zone_pfns initialization (Laurent Vivier) [1706560] - [crypto] crypto: dh - update test for public key verification (Herbert Xu) [1722692] - [hid] HID: i2c-hid: Don't reset device upon system resume (Perry Yuan) [1715385] - [rpmspec] correct the ghost initramfs attributes (Rafael Aquini) [1678881] - [s390] s390/mm: fix address space detection in exception handling (Philipp Rudo) [1722160] - [s390] s390/zcrypt: Fix wrong dispatching for control domain CPRBs (Philipp Rudo) [1722158] - [virt] kvm: arm/arm64: Fix emulated ptimer irq injection (Andrew Jones) [1716383] - [x86] kvm/nested: mark as TechPreview on first VM creation (Vitaly Kuznetsov) [1723447] - [powerpc] bpf: powerpc64: add JIT support for bpf line info (Yauheni Kaliuta) [1722423] - [fs] cifs: add spinlock for the openFileList to cifsInodeInfo (Leif Sahlberg) [1712197] - [fs] cifs: fix GlobalMid_Lock bug in cifs_reconnect (Leif Sahlberg) [1716743] - [mm] powerpc/numa: document topology_updates_enabled, disable by default (Desnes Augusto Nunes do Rosario) [1705465] - [mm] powerpc/numa: improve control of topology updates (Desnes Augusto Nunes do Rosario) [1705465] - [kernel] bpf: decouple the lifetime of cgroup_bpf from cgroup itself (Jiri Olsa) [1656432] - [netdrv] USB: hso: Fix OOB memory access in hso_probe/hso_get_config_data (Torez Smith) [1689308 1666662] {CVE-2018-19985} - [usb] USB: check usb_get_extra_descriptor for proper size (Torez Smith) [1689308 1666662] {CVE-2018-20169} - [kvm] KVM: PPC: Book3S HV: Restore SPRG3 in kvmhv_p9_guest_entry() (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Fix lockdep warning when entering guest on POWER9 (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix page offset when clearing ESB pages (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Take the srcu read lock when accessing memslots (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough interrupts (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Introduce a new mutex for the XIVE device (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Fix the enforced limit on the vCPU identifier (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Do not test the EQ flag validity when resetting (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: XIVE: Clear file mapping when device is released (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Don't take kvm->lock around kvm_for_each_vcpu (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S: Use new mutex to synchronize access to rtas token list (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Use new mutex to synchronize MMU setup (David Gibson) [1719524] - [kvm] KVM: PPC: Book3S HV: Avoid touching arch.mmu_ready in XIVE release functions (David Gibson) [1719524] - [mm] mm, oom: don't kill global init via memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: remove 'prefer children over parent' heuristic (Waiman Long) [1711604] - [mm] mm, oom: fix use-after-free in oom_kill_process (Waiman Long) [1711604] - [kernel] fork, memcg: fix crash in free_thread_stack on memcg charge fail (Waiman Long) [1711604] - [mm] memcg: localize memcg_kmem_enabled() check (Waiman Long) [1711604] - [mm] memcg, oom: notify on oom killer invocation from the charge path (Waiman Long) [1711604] - [mm] mm: handle no memcg case in memcg_kmem_charge() properly (Waiman Long) [1711604] - [kernel] mm: rework memcg kernel stack accounting (Waiman Long) [1711604] - [mm] mm/memcontrol.c: convert mem_cgroup_id::ref to refcount_t type (Waiman Long) [1711604] - [mm] memcg: remove memcg_kmem_skip_account (Waiman Long) [1711604] - [mm] mm/memcontrol.c: fix memory.stat item ordering (Waiman Long) [1711604] - [mm] mm: drain memcg stocks on css offlining (Waiman Long) [1711604] - [mm] mm: memcontrol: print proper OOM header when no eligible victim left (Waiman Long) [1711604] - [mm] mm, oom: introduce memory.oom.group (Waiman Long) [1711604] - [mm] mm, oom: refactor oom_kill_process() (Waiman Long) [1711604] - [mm] memcg: reduce memcg tree traversals for stats collection (Waiman Long) [1711604] - [mm] mm/vmscan.c: clear shrinker bit if there are no objects related to memcg (Waiman Long) [1711604] - [mm] mm: add SHRINK_EMPTY shrinker methods return value (Waiman Long) [1711604] - [mm] mm/vmscan.c: generalize shrink_slab() calls in shrink_node() (Waiman Long) [1711604] - [mm] mm/vmscan.c: iterate only over charged shrinkers during memcg shrink_slab() (Waiman Long) [1711604] - [mm] mm/list_lru.c: set bit in memcg shrinker bitmap on first list_lru item appearance (Waiman Long) [1711604] - [mm] mm/memcontrol.c: export mem_cgroup_is_root() (Waiman Long) [1711604] - [mm] mm/list_lru.c: pass lru argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru: pass dst_memcg argument to memcg_drain_list_lru_node() (Waiman Long) [1711604] - [mm] mm/list_lru.c: add memcg argument to list_lru_from_kmem() (Waiman Long) [1711604] - [mm] fs: propagate shrinker::id to list_lru (Waiman Long) [1711604] - [fs] fs: Don't need to put list_lru into its own cacheline (Waiman Long) [1711604] - [fs] fs/super.c: refactor alloc_super() (Waiman Long) [1711604] - [mm] mm/workingset.c: refactor workingset_init() (Waiman Long) [1711604] - [mm] mm, memcg: assign memcg-aware shrinkers bitmap to memcg (Waiman Long) [1711604] - [mm] mm/memcontrol.c: move up for_each_mem_cgroup{, _tree} defines (Waiman Long) [1711604] - [mm] mm: assign id to every memcg-aware shrinker (Waiman Long) [1711604] - [mm] mm: introduce CONFIG_MEMCG_KMEM as combination of CONFIG_MEMCG && !CONFIG_SLOB (Waiman Long) [1711604] - [mm] mm/list_lru.c: combine code under the same define (Waiman Long) [1711604] - [mm] memcg, oom: move out_of_memory back to the charge path (Waiman Long) [1711604] - [fs] fs, mm: account buffer_head to kmemcg (Waiman Long) [1711604] - [fs] fs: fsnotify: account fsnotify metadata to kmemcg (Waiman Long) [1711604] - [include] mm: introduce mem_cgroup_put() helper (Waiman Long) [1711604] - [net] tcp: refine memory limit test in tcp_fragment() (Florian Westphal) [1724584] - [net] tcp: enforce tcp_min_snd_mss in tcp_mtu_probing() (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tcp: add tcp_min_snd_mss sysctl (Florian Westphal) [1719923] {CVE-2019-11479} - [net] tipc: pass tunnel dev as NULL to udp_tunnel(6)_xmit_skb (Xin Long) [1722751] - [include] ip6_tunnel: allow not to count pkts on tstats by passing dev as NULL (Xin Long) [1722751] - [net] ip_tunnel: allow not to count pkts on tstats by setting skb's dev to NULL (Xin Long) [1722751] - [net] netfilter: ipv6: nf_defrag: accept duplicate fragments again (Guillaume Nault) [1717106] - [net] netfilter: ipv6: nf_defrag: fix leakage of unqueued fragments (Guillaume Nault) [1717106] - [net] ethtool: fix potential userspace buffer overflow (Paolo Abeni) [1718393] - [net] net-gro: fix use-after-free read in napi_gro_frags() (Paolo Abeni) [1718393] - [net] ethtool: Check for vlan etype or vlan tci when parsing flow_rule (Paolo Abeni) [1718393] - [include] test nouarg before dereferencing zerocopy pointers (Paolo Abeni) [1718393] - [net] avoid weird emergency message (Paolo Abeni) [1718393] - [net] net-gro: Fix GRO flush when receiving a GSO packet. (Paolo Abeni) [1718393] - [net] sock_diag: fix autoloading of the raw_diag module (Paolo Abeni) [1718393] - [net] make skb_partial_csum_set() more robust against overflows (Paolo Abeni) [1718393] - [net] packets: Always register packet sk in the same order (Paolo Abeni) [1718393] - [net] net-sysfs: call dev_hold if kobject_init_and_add success (Paolo Abeni) [1718393] - [net] gro_cells: make sure device is up in gro_cells_receive() (Paolo Abeni) [1718393] - [net] net-sysfs: Fix mem leak in netdev_register_kobject (Paolo Abeni) [1718393] - [include] avoid false positives in untrusted gso validation (Paolo Abeni) [1718393] - [include] net: validate untrusted gso packets without csum offload (Paolo Abeni) [1718393] - [net] Do not allocate page fragments that are not skb aligned (Paolo Abeni) [1718393] - [net] set default network namespace in init_dummy_netdev() (Paolo Abeni) [1718393] - [net] Fix usage of pskb_trim_rcsum (Paolo Abeni) [1718393] - [net] call sk_dst_reset when set SO_DONTROUTE (Paolo Abeni) [1718393] - [net] net, skbuff: do not prefer skb allocation fails early (Paolo Abeni) [1718393] - [net] ethtool: check the return value of get_regs_len (Paolo Abeni) [1718393] - [net] packet: copy user buffers before orphan or clone (Paolo Abeni) [1718393] - [net] don't keep lonely packets forever in the gro hash (Paolo Abeni) [1718393] - [net] net-gro: reset skb->pkt_type in napi_reuse_skb() (Paolo Abeni) [1718393] - [net] flow_dissector: do not dissect l4 ports for fragments (Paolo Abeni) [1718393] - [net] net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN (Paolo Abeni) [1718393] - [net] tipc: fix modprobe tipc failed after switch order of device registration (Jon Maloy) [1718064] - [net] tipc: switch order of device registration to fix a crash (Jon Maloy) [1718064] - [net] tipc: fix hanging clients using poll with EPOLLOUT flag (Jon Maloy) [1718064] - [net] tipc: fix missing Name entries due to half-failover (Jon Maloy) [1718064] - [net] tipc: remove rcu_read_unlock() left in tipc_udp_recv() (Jon Maloy) [1718064] - [net] tipc: tipc_udp_recv() cleanup vs rcu verbs (Jon Maloy) [1718064] - [net] tipc: introduce new socket option TIPC_SOCK_RECVQ_USED (Jon Maloy) [1718064] - [net] tipc: set sysctl_tipc_rmem and named_timeout right range (Jon Maloy) [1718064] - [net] tipc: fix link established but not in session (Jon Maloy) [1718064] - [net] tipc: use standard write_lock & unlock functions when creating node (Jon Maloy) [1718064] - [net] tipc: missing entries in name table of publications (Jon Maloy) [1718064] - [net] tipc: adapt link failover for new Gap-ACK algorithm (Jon Maloy) [1718064] - [net] tipc: reduce duplicate packets for unicast traffic (Jon Maloy) [1718064] - [net] tipc: improve TIPC throughput by Gap ACK blocks (Jon Maloy) [1718064] - [net] tipc: add NULL pointer check (Jon Maloy) [1718064] - [net] tipc: fix return value check in tipc_mcast_send_sync() (Jon Maloy) [1718064] - [net] tipc: fix a null pointer deref (Jon Maloy) [1718064] - [net] tipc: fix use-after-free in tipc_sk_filter_rcv (Jon Maloy) [1718064] - [net] tipc: smooth change between replicast and broadcast (Jon Maloy) [1718064] - [net] tipc: introduce new capability flag for cluster (Jon Maloy) [1718064] - [net] tipc: support broadcast/replicast configurable for bc-link (Jon Maloy) [1718064] - [net] sched: avoid double free on matchall reoffload (Ivan Vecera) [1688236 1687456] - [net] taprio: add null check on sched_nest to avoid potential null pointer dereference (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: remove unused index from nfp_fl_pedit() (Ivan Vecera) [1688236 1687456] - [net] mlx5e: Fix calling wrong function to get inner vlan key and mask (Ivan Vecera) [1688236 1687456] - [net] flow_offload: support CVLAN match (Ivan Vecera) [1688236 1687456] - [net] nfp: flower: fix masks for tcp and ip flags fields (Ivan Vecera) [1688236 1687456] - [net] sched: use the hardware intermediate representation for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: add sample action to the hardware intermediate representation (Ivan Vecera) [1688236 1687456] - [net] cls_cgroup: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] cls_matchall: avoid panic when receiving a packet before filter set (Ivan Vecera) [1688236 1687456] - [net] add a generic tracepoint for TX queue timeout (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for cycle-time-extension (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support for setting the cycle-time manually (Ivan Vecera) [1688236 1687456] - [net] taprio: Add support adding an admin schedule (Ivan Vecera) [1688236 1687456] - [net] taprio: Fix potencial use of invalid memory during dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_dequeue() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Fix taprio_peek() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove should_restart_cycle() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Refactor taprio_get_start_time() (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: Remove pointless variable assigment (Ivan Vecera) [1688236 1687456] - [net] tc_act: drop include of module.h from tc_ife.h (Ivan Vecera) [1688236 1687456] - [net] fib: drop include of module.h from fib_notifier.h (Ivan Vecera) [1688236 1687456] - [net] ife: drop include of module.h from net/ife.h (Ivan Vecera) [1688236 1687456] - [net] psample: drop include of module.h from psample.h (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix build without 64bit div (Ivan Vecera) [1688236 1687456] - [net] revert: "net: sched: put back q.qlen into a single location" (Ivan Vecera) [1688236 1687456] - [net] sched: when clearing NOLOCK, clear TCQ_F_CPUSTATS, too (Ivan Vecera) [1688236 1687456] - [net] sched: always do stats accounting according to TCQ_F_CPUSTATS (Ivan Vecera) [1688236 1687456] - [net] sched: prefer qdisc_is_empty() over direct qlen access (Ivan Vecera) [1688236 1687456] - [net] caif: avoid using qdisc_qlen() (Ivan Vecera) [1688236 1687456] - [net] sched: cbs: fix port_rate miscalculation (Ivan Vecera) [1688236 1687456] - [net] sched: taprio: fix picos_per_byte miscalculation (Ivan Vecera) [1688236 1687456] - [net] selftests: add a tc matchall test case (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make sure we can write the IP header before changing DSCP bits (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Use tc_skb_protocol() helper for getting packet protocol (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: fix divide by zero in the traffic path (Ivan Vecera) [1688236 1687456] - [net] sched: don't set tunnel for decap action (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qdisc tree flush/purge helpers (Ivan Vecera) [1688236 1687456] - [net] sched: introduce and use qstats read helpers (Ivan Vecera) [1688236 1687456] - [net] sched: fix ->get helper of the matchall cls (Ivan Vecera) [1688236 1687456] - [net] sched: Kconfig: update reference link for PIE (Ivan Vecera) [1688236 1687456] - [net] dev: introduce support for sch BYPASS for lockless qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: add empty status flag for NOLOCK qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: fix cleanup NULL pointer exception in act_mirr (Ivan Vecera) [1688236 1687456] - [net] sched: let actions use RCU to access 'goto_chain' (Ivan Vecera) [1688236 1687456] - [net] sched: don't dereference a->goto_chain to read the chain index (Ivan Vecera) [1688236 1687456] - [net] sched: act_vlan: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbmod: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_simple: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_sample: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_police: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_pedit: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_nat: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_connmark: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_mirred: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_ife: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_gact: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: act_bpf: validate the control action inside init() (Ivan Vecera) [1688236 1687456] - [net] sched: prepare TC actions to properly validate the control action (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Interpret fwmark parameter as a bitmask (Ivan Vecera) [1688236 1687456] - [net] net_sched: return correct value for *notify* functions (Ivan Vecera) [1688236 1687456] - [net] sched: fix potential use-after-free in __tcf_chain_put() (Ivan Vecera) [1688236 1687456] - [net] sched: flower: insert new filter to idr after setting its mask (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Fix double free dst_cache (Ivan Vecera) [1688236 1687456] - [net] sched: avoid unused-label warning (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Simplify logic in cake_select_tin() (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Permit use of connmarks as tin classifiers (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Make the dual modes fairer (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Allow test cases to be skipped (Ivan Vecera) [1688236 1687456] - [net] sched: put back q.qlen into a single location (Ivan Vecera) [1688236 1687456] - [net] sched: pie: avoid slow division in drop probability decay (Ivan Vecera) [1688236 1687456] - [net] netem: fix skb length BUG_ON in __skb_to_sgvec (Ivan Vecera) [1688236 1687456] - [net] revert "net: sched: fw: don't set arg->stop in fw_walk() when empty" (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix 64-bit division (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore local tdc config file (Ivan Vecera) [1688236 1687456] - [net] sched: fix typo in walker_check_empty() (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix mistake in reference link (Ivan Vecera) [1688236 1687456] - [net] sched: act_csum: Fix csum calc for tagged packets (Ivan Vecera) [1688236 1687456] - [net] sched: pie: update references (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add derandomization mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: pie: add more cases to auto-tune alpha and beta (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change initial value of pie_vars->burst_time (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->tupdate (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change default value of pie_params->target (Ivan Vecera) [1688236 1687456] - [net] sched: pie: change value of QUEUE_THRESHOLD (Ivan Vecera) [1688236 1687456] - [net] sched: don't release block->lock when dumping chains (Ivan Vecera) [1688236 1687456] - [net] sched: set dedicated tcf_walker flag when tp is empty (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix metadata handling (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix NULL pointer dereference during init (Ivan Vecera) [1688236 1687456] - [net] Use RCU_POINTER_INITIALIZER() to init static variable (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel replace/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel add/delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent delete (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify concurrent replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules replace (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules deletion (Ivan Vecera) [1688236 1687456] - [net] selftests: concurrency: add test to verify parallel rules insertion (Ivan Vecera) [1688236 1687456] - [net] selftests: tdc_batch.py: add options needed for concurrency tests (Ivan Vecera) [1688236 1687456] - [net] sched: act_skbedit: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_ipt: fix refcount leak when replace fails (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: Add dst_cache support (Ivan Vecera) [1688236 1687456] - [net] net_sched: initialize net pointer inside tcf_exts_init() (Ivan Vecera) [1687456 1688236] - [net] sched: potential NULL dereference in tcf_block_find() (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a race condition in tcindex_destroy() (Ivan Vecera) [1688236 1687456] - [net] sched: using kfree_rcu() to simplify the code (Ivan Vecera) [1688236 1687456] - [net] sched: route: don't set arg->stop in route4_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: fw: don't set arg->stop in fw_walk() when empty (Ivan Vecera) [1688236 1687456] - [net] sched: cgroup: verify that filter is not NULL during walk (Ivan Vecera) [1688236 1687456] - [net] sched: matchall: verify that filter is not NULL in mall_walk() (Ivan Vecera) [1688236 1687456] - [net] sched: remove duplicated include from cls_api.c (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix two more memory leaks in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] net_sched: fix a memory leak in cls_tcindex (Ivan Vecera) [1688236 1687456] - [net] sched: unlock rules update API (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tcf_block_find() into standalone functions (Ivan Vecera) [1688236 1687456] - [net] sched: add flags to Qdisc class ops struct (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops to support unlocked classifiers (Ivan Vecera) [1688236 1687456] - [net] sched: extend proto ops with 'put' callback (Ivan Vecera) [1688236 1687456] - [net] sched: track rtnl lock status when validating extensions (Ivan Vecera) [1688236 1687456] - [net] sched: prevent insertion of new classifiers during chain flush (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tp insert/delete for concurrent execution (Ivan Vecera) [1688236 1687456] - [net] sched: traverse classifiers in chain with tcf_get_next_proto() (Ivan Vecera) [1688236 1687456] - [net] sched: introduce reference counting for tcf_proto (Ivan Vecera) [1688236 1687456] - [net] sched: protect filter_chain list with filter_chain_lock mutex (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain template accesses with block lock (Ivan Vecera) [1688236 1687456] - [net] sched: traverse chains in block with tcf_get_next_chain() (Ivan Vecera) [1688236 1687456] - [net] sched: protect block->chain0 with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: refactor tc_ctl_chain() to use block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect chain->explicitly_created with block->lock (Ivan Vecera) [1688236 1687456] - [net] sched: protect block state with mutex (Ivan Vecera) [1688236 1687456] - [net] Change TCA_ACT_* to TCA_ID_* to match that of TCA_ID_POLICE (Ivan Vecera) [1688236 1687456] - [net] Move all TC actions identifiers to one place (Ivan Vecera) [1688236 1687456] - [net] sched: use struct_size() helper (Ivan Vecera) [1688236 1687456] - [net] documentation: bring operstate documentation up-to-date (Ivan Vecera) [1688236 1687456] - [net] cls_flower: Remove filter from mask before freeing it (Ivan Vecera) [1688236 1687456] - [net] cls_flower: don't expose TC actions to drivers anymore (Ivan Vecera) [1688236 1687456] - [net] drivers: net: use flow action infrastructure (Ivan Vecera) [1688236 1687456] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1688236 1687456] - [net] net_sched: add performance counters for basic filter (Ivan Vecera) [1688236 1687456] - [net] net_sched: add hit counter for matchall (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: allocate mask dynamically in fl_change() (Ivan Vecera) [1688236 1687456] - [net] selftests: tc-testing: fix parsing of ife type (Ivan Vecera) [1688236 1687456] - [net] net_sched: refetch skb protocol for each filter (Ivan Vecera) [1688236 1687456] - [net] sched: act_tunnel_key: fix memory leak in case of action replace (Ivan Vecera) [1688236 1687456] - [net] sch_api: Change signature of qdisc_tree_reduce_backlog() to use ints (Ivan Vecera) [1688236 1687456] - [net] sch_cake: Correctly update parent qlen when splitting GSO packets (Ivan Vecera) [1688236 1687456] - [net] sched: Fix detection of empty queues in child qdiscs (Ivan Vecera) [1688236 1687456] - [net] sched: Avoid dereferencing skb pointer after child enqueue (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Remove old entries from rhashtable (Ivan Vecera) [1688236 1687456] - [net] sched: simplify the qdisc_leaf code (Ivan Vecera) [1688236 1687456] - [net] selftests: Fix test errors related to lib.mk khdr target (Ivan Vecera) [1688236 1687456] - [net] net_sched: fold tcf_block_cb_call() into tc_setup_cb_call() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Reject duplicated rules also under skip_sw (Ivan Vecera) [1688236 1687456] - [net] tc-testing: gitignore, ignore generated test results (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Implement the TdcResults module in tdc (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add new TdcResults module (Ivan Vecera) [1688236 1687456] - [net] tc-testing: Add command timeout feature to tdc (Ivan Vecera) [1688236 1687456] - [net] netem: use a list in addition to rbtree (Ivan Vecera) [1688236 1687456] - [net] Prevent invalid access to skb->prev in __qdisc_drop_all (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: Guard against lack of returncode in executed command (Ivan Vecera) [1688236 1687456] - [net] tc-testing: tdc.py: ignore errors when decoding stdout/stderr (Ivan Vecera) [1688236 1687456] - [net] etf: Drop all expired packets (Ivan Vecera) [1688236 1687456] - [net] etf: Split timersortedlist_erase() (Ivan Vecera) [1688236 1687456] - [net] etf: Use cached rb_root (Ivan Vecera) [1688236 1687456] - [net] etf: Cancel timer if there are no pending skbs (Ivan Vecera) [1688236 1687456] - [net] sched: cls_flower: Classify packets using port ranges (Ivan Vecera) [1688236 1687456] - [net] act_mirred: clear skb->tstamp on redirect (Ivan Vecera) [1688236 1687456] - [net] core: use __vlan_hwaccel helpers (Ivan Vecera) [1688236 1687456] - [net] sched: Replace call_rcu_bh() and rcu_barrier_bh() (Ivan Vecera) [1688236 1687456] - [net] sched: Remove egdev mechanism (Ivan Vecera) [1688236 1687456] - [net] sched: avoid writing on noop_qdisc (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: simplify the hell out u32_delete() emptiness check (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: keep track of knodes count in tc_u_common (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tp_c (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: the tp_c argument of u32_set_parms() is always tp->data (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: pass tc_u_common to u32_set_parms() instead of tc_u_hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: clean tc_u_common hashtable (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_common ->rcu (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of tc_u_knode ->tp (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: get rid of unused argument of u32_destroy_key() (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: make sure that divisor is a power of 2 (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: disallow linking to root hnode (Ivan Vecera) [1688236 1687456] - [net] sched: cls_u32: mark root hnode explicitly (Ivan Vecera) [1688236 1687456] - [net] sched: pie: fix coding style issues (Ivan Vecera) [1688236 1687456] - [net] treewide: Replace more open-coded allocation size multiplications (Ivan Vecera) [1688236 1687456] - [net] sched: remove unused helpers (Ivan Vecera) [1688236 1687456] - [net] tc-testing: use a plugin to build eBPF program (Ivan Vecera) [1688236 1687456] - [net] tc-testing: fix build of eBPF programs (Ivan Vecera) [1688236 1687456] - [net] tc: Add support for configuring the taprio scheduler (Ivan Vecera) [1688236 1687456] - [documentation] KVM: arm64: Clarify access behaviour for out-of-range SVE register slice IDs (Andrew Jones) [1550499] - [documentation] KVM: Clarify KVM_{SET,GET}_ONE_REG error code documentation (Andrew Jones) [1550499] - [documentation] KVM: Clarify capability requirements for KVM_ARM_VCPU_FINALIZE (Andrew Jones) [1550499] - [kvm] KVM: arm/arm64: Clean up vcpu finalization function parameter naming (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Explain validity checks in set_sve_vls() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Simplify KVM_REG_ARM64_SVE_VLS array sizing (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: WARN when avoiding divide-by-zero in sve_reg_to_region() (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Make register ioctl access errors more consistent (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Miscellaneous tidyups in guest.c (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Clean up UAPI register ID definitions (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: sys_regs: Demote redundant vcpu_has_sve() checks to WARNs (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Demote kvm_arm_init_arch_resources() to just set up SVE (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify vq map semantics (Andrew Jones) [1550499] - [kvm] arm64: KVM: Fix system register enumeration (Andrew Jones) [1550499] - [documentation] KVM: arm64/sve: Document KVM API extensions for SVE (Andrew Jones) [1550499] - [documentation] KVM: Document errors for KVM_GET_ONE_REG and KVM_SET_ONE_REG (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a capability to advertise SVE support (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Allow userspace to enable SVE for vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Add pseudo-register for the guest's vector lengths (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add KVM_ARM_VCPU_FINALIZE ioctl (Andrew Jones) [1550499] - [virt] KVM: arm/arm64: Add hook for arch-specific KVM initialisation (Andrew Jones) [1550499] - [arm64] arm64/sve: In-kernel vector length availability query interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Enumerate SVE register indices for KVM_GET_REG_LIST (Andrew Jones) [1550499] - [arm64] KVM: arm64/sve: Add SVE support to register access ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64: Reject ioctl access to FPSIMD V-regs on SVE vcpus (Andrew Jones) [1550499] - [kvm] KVM: arm64: Factor out core register ID enumeration (Andrew Jones) [1550499] - [kvm] KVM: arm64: Add missing #include of in guest.c (Andrew Jones) [1550499] - [include] KVM: Allow 2048-bit register access via ioctl interface (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: Context switch the SVE registers (Andrew Jones) [1550499] - [kvm] KVM: arm64/sve: System register context switch and access support (Andrew Jones) [1550499] - [kvm] KVM: arm64: Support runtime sysreg visibility filtering (Andrew Jones) [1550499] - [kvm] KVM: arm64: Propagate vcpu into read_id_reg() (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add a vcpu flag to control SVE visibility for the guest (Andrew Jones) [1550499] - [arm64] arm64/sve: Enable SVE state tracking for non-task contexts (Andrew Jones) [1550499] - [arm64] arm64/sve: Check SVE virtualisability (Andrew Jones) [1550499] - [arm64] arm64/sve: Clarify role of the VQ map maintenance functions (Andrew Jones) [1550499] - [arm64] KVM: arm64: Add missing #includes to kvm_host.h (Andrew Jones) [1550499] - [kvm] KVM: arm64: Refactor kvm_arm_num_regs() for easier maintenance (Andrew Jones) [1550499] - [arm64] KVM: arm64: Delete orphaned declaration for __fpsimd_enabled() (Andrew Jones) [1550499] - [arm64] arm64: fpsimd: Always set TIF_FOREIGN_FPSTATE on task state flush (Andrew Jones) [1550499] - [documentation] KVM: Documentation: Document arm64 core registers in detail (Andrew Jones) [1550499] - [arm64] arm64/sve: Disentangle from (Andrew Jones) [1550499] - [arm64] arm64/sve: ptrace: Fix SVE_PT_REGS_OFFSET definition (Andrew Jones) [1550499]- [fs] xfs: fix reporting supported extra file attributes for statx() (Bill O'Donnell) [1721034] - [scsi] scsi: hpsa: correct ioaccel2 chaining (Joseph Szczypek) [1706121] - [powerpc] powerpc/pseries/mobility: rebuild cacheinfo hierarchy post-migration (Steve Best) [1720929] - [powerpc] powerpc/pseries/mobility: prevent cpu hotplug during DT update (Steve Best) [1720929] - [powerpc] powerpc/cacheinfo: add cacheinfo_teardown, cacheinfo_rebuild (Steve Best) [1720929] - [kernel] cpuset: restore sanity to cpuset_cpus_allowed_fallback() (Joel Savitz) [1677311]- [scripts] scripts: override locale from environment when running recordmcount.pl (Prarit Bhargava) [1721515] - [netdrv] net: aquantia: fix wol configuration not applied sometimes (Igor Russkikh) [1662198] - [x86] x86/resctrl: Prevent NULL pointer dereference when local MBM is disabled (Prarit Bhargava) [1721208] - [fs] inotify: Fix fsnotify_mark refcount leak in inotify_update_existing_watch() (Miklos Szeredi) [1451863] - [fs] inotify: Fix fd refcount leak in inotify_add_watch(). (Miklos Szeredi) [1451863] - [fs] fanotify: Use inode_is_open_for_write (Miklos Szeredi) [1451863] - [fs] fanotify: Make sure to check event_len when copying (Miklos Szeredi) [1451863] - [fs] fsnotify/fdinfo: include fdinfo.h for inotify_show_fdinfo() (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC_PERM (Miklos Szeredi) [1451863] - [include] fsnotify: refactor fsnotify_parent()/fsnotify() paired calls when event is on path (Miklos Szeredi) [1451863] - [include] fanotify: introduce new event mask FAN_OPEN_EXEC (Miklos Szeredi) [1451863] - [fs] fanotify: return only user requested event types in event mask (Miklos Szeredi) [1451863] - [fs] fanotify: support reporting thread id instead of process id (Miklos Szeredi) [1451863] - [fs] fanotify: add BUILD_BUG_ON() to count the bits of fanotify constants (Miklos Szeredi) [1451863] - [fs] fsnotify: convert runtime BUG_ON() to BUILD_BUG_ON() (Miklos Szeredi) [1451863] - [fs] fanotify: deprecate uapi FAN_ALL_* constants (Miklos Szeredi) [1451863] - [fs] fanotify: simplify handling of FAN_ONDIR (Miklos Szeredi) [1451863] - [include] fanotify: fix collision of internal and uapi mark flags (Miklos Szeredi) [1451863] - [fs] fanotify: store fanotify_init() flags in group's fanotify_data (Miklos Szeredi) [1451863] - [fs] fanotify: clean up handling of "mark type" (Miklos Szeredi) [1451863] - [fs] fsnotify: fix false positive warning on inode delete (Miklos Szeredi) [1451863] - [include] inotify: Add flag IN_MASK_CREATE for inotify_add_watch() (Miklos Szeredi) [1451863] - [fs] fanotify: factor out helpers to add/remove mark (Miklos Szeredi) [1451863] - [fs] fsnotify: add helper to get mask from connector (Miklos Szeredi) [1451863] - [fs] fsnotify: let connector point to an abstract object (Miklos Szeredi) [1451863] - [fs] fsnotify: pass connp and object type to fsnotify_add_mark() (Miklos Szeredi) [1451863] - [fs] fsnotify: use typedef fsnotify_connp_t for brevity (Miklos Szeredi) [1451863] - [powerpc] powerpc/pseries: Fix oops in hotplug memory notifier (Steve Best) [1720932] - [netdrv] net: aquantia: tcp checksum 0xffff being handled incorrectly (Igor Russkikh) [1719176] - [netdrv] net: aquantia: fix LRO with FCS error (Igor Russkikh) [1719176] - [netdrv] net: aquantia: check rx csum for all packets in LRO session (Igor Russkikh) [1719176] - [netdrv] net: aquantia: tx clean budget logic error (Igor Russkikh) [1719176] - [security] selinux: log raw contexts as untrusted strings (Ondrej Mosnacek) [1719666] - [kernel] audit: add saddr_fam filter field (Richard Guy Briggs) [1715679] - [kernel] audit: re-structure audit field valid checks (Richard Guy Briggs) [1715679] - [kernel] audit: rename FILTER_TYPE to FILTER_EXCLUDE (Richard Guy Briggs) [1715679] - [kernel] audit: allow other filter list types for AUDIT_EXE (Richard Guy Briggs) [1715679] - [documentation] ovl: doc: add non-standard corner cases (Miklos Szeredi) [1718370] - [fs] ovl: support the FS_IOC_FSETXATTR ioctls (Miklos Szeredi) [1718370] - [fs] ovl: relax WARN_ON() for overlapping layers use case (Miklos Szeredi) [1718370] - [fs] ovl: check the capability before cred overridden (Miklos Szeredi) [1718370] - [fs] ovl: do not generate duplicate fsnotify events for "fake" path (Miklos Szeredi) [1718370] - [fs] ovl: support stacked SEEK_HOLE/SEEK_DATA (Miklos Szeredi) [1718370] - [fs] ovl: fix missing upper fs freeze protection on copy up for ioctl (Miklos Szeredi) [1718370] - [fs] fuse: fallocate: fix return with locked inode (Miklos Szeredi) [1717457] - [fs] fuse: honor RLIMIT_FSIZE in fuse_file_fallocate (Miklos Szeredi) [1717457] - [fs] fuse: decrement NR_WRITEBACK_TEMP on the right page (Miklos Szeredi) [1717457] - [fs] fuse: handle zero sized retrieve correctly (Miklos Szeredi) [1717457] - [fs] fuse: continue to send FUSE_RELEASEDIR when FUSE_OPEN returns ENOSYS (Miklos Szeredi) [1717457]- [mm] mm/mincore.c: make mincore() more conservative (Rafael Aquini) [1664203] {CVE-2019-5489} - [x86] x86/umip: Make the UMIP activated message generic (David Arcari) [1720014] - [x86] x86/umip: Print UMIP line only once (David Arcari) [1720014] - [crypto] crypto: vmac - separate tfm and request context (Desnes Augusto Nunes do Rosario) [1702702] - [crypto] crypto: ccp - Update driver messages to remove some confusion (David Arcari) [1719026] - [block] blk-mq: fix hang caused by freeze/unfreeze sequence (Ming Lei) [1719835] - [block] blk-mq: remove WARN_ON(!q->elevator) from blk_mq_sched_free_requests (Ming Lei) [1719835] - [block] block: free sched's request pool in blk_cleanup_queue (Ming Lei) [1719835] - [block] block: don't protect generic_make_request_checks with blk_queue_enter (Ming Lei) [1719835] - [block] block: move blk_exit_queue into __blk_release_queue (Ming Lei) [1719835] - [block] block: print offending values when cloned rq limits are exceeded (Ming Lei) [1719816] - [block] block: fix page leak when merging to same page (Ming Lei) [1662864] - [x86] RHEL: fix build of spec_ctrl.h for older assemblers (Jeff Moyer) [1719406] - [drm] drm/amd/display: Initialize stream_update with memset (Jeff Moyer) [1719406] - [mm] mm/gup: finish consolidating error handling (Jeff Moyer) [1641506] - [mm] mm/gup: cache dev_pagemap while pinning pages (Jeff Moyer) [1641506] - [rpmspec] kernel packaging: Fix extra namespace collision (Prarit Bhargava) [1699868] - [rpmspec] redhat: kernel-selftests-internal: add dependencies (Jiri Benc) [1717943] - [kernel] kernel/module.c: Only return -EEXIST for modules that have finished loading (Prarit Bhargava) [1666939] - [input] Input: elantech - remove P52 and P72 from SMBus blacklist (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - handle physical middle button (Benjamin Tissoires) [1703157] - [input] Input: elantech/SMBus - export all capabilities from the PS/2 node (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - do not query the info if they are provided (Benjamin Tissoires) [1703157] - [input] Input: elantech - detect middle button based on firmware version (Benjamin Tissoires) [1703157] - [input] Input: elantech - add helper function elantech_is_buttonpad() (Benjamin Tissoires) [1703157] - [input] Input: elantech - query the min/max information beforehand too (Benjamin Tissoires) [1703157] - [input] Input: elantech - enable middle button support on 2 ThinkPads (Benjamin Tissoires) [1703157] - [input] Input: elan_i2c - increment wakeup count if wake source (Benjamin Tissoires) [1703157] - [kernel] timekeeping: Update multiplier when NTP frequency is set directly (Prarit Bhargava) [1714164] - [fs] xfs: fix use after free in buf log item unlock assert (Brian Foster) [1666150] - [fs] xfs: add missing error check in xfs_prepare_shift() (Brian Foster) [1699214] - [documentation] Documentation: Fix grammatical error in sysctl/fs.txt & clarify negative dentry (Waiman Long) [1673955] - [fs] fs/dcache: Track & report number of negative dentries (Waiman Long) [1673955] - [fs] fs/dcache: Fix incorrect nr_dentry_unused accounting in shrink_dcache_sb() (Waiman Long) [1673955] - [net] tcp: tcp_fragment() should apply sane memory limits (Florian Westphal) [1719858] {CVE-2019-11478} - [net] tcp: limit payload size of sacked skbs (Florian Westphal) [1719603] {CVE-2019-11477}- [tools] kvm: selftests: make hyperv_cpuid test pass on AMD (Vitaly Kuznetsov) [1718501] - [scsi] vmw_pvscsi: Fixed to work with SG_CHAIN (Ewan Milne) [1717278] - [x86] mark AMD Rome processors supported (David Arcari) [1520002] - [fs] ext4: zero out the unused memory region in the extent tree block (Lukas Czerner) [1715276] {CVE-2019-11833} - [s390] s390/smp: Fix calling smp_call_ipl_cpu() from ipl CPU (David Hildenbrand) [1715041] - [vfio] vfio/type1: Limit DMA mappings per container (Alex Williamson) [1695592] {CVE-2019-3882} - [tools] selftests/powerpc: Remove Power9 paste tests (Diego Domingos) [1662374] - [tools] selftests/powerpc: Remove Power9 copy_unaligned test (Diego Domingos) [1662374] - [tools] selftests/powerpc: Fix ptrace tm failure (Diego Domingos) [1662374] - [netdrv] mlxsw: core: Prevent reading unsupported slave address from SFP EEPROM (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent QSFP module initialization for old hardware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix autoneg status in ethtool (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Reincrease PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put MC TCs into DWRR mode (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add a multicast pool for Spectrum-2 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test VRF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not check VRF MAC address (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for mlxsw ordered workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Do not use WQ_MEM_RECLAIM for EMAD workqueue (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add MDB entries in prepare phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: mlxsw: core: avoid -Wint-in-bool-context warning (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Initialize base_mac (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Prevent duplication during QSFP module initialization (Ivan Vecera) [1680241] - [netdrv] mellanox: Switch to bitmap_zalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend initialization by querying resources data (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Extend input parameters list of command API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Modify input parameter name in initialization API (Ivan Vecera) [1680241] - [netdrv] mlxsw: i2c: Fix comment misspelling (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move resource query API to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Add ethtool support (Ivan Vecera) [1680241] - [netdrv] mlxsw: minimal: Make structures and variables names shorter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Move ethtool module callbacks to a common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make mlxsw_sp_acl_tcam_vregion_rehash() return void (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remember where to continue rehash migration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow to interrupt/continue rehash work (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Do rollback as another call to mlxsw_sp_acl_tcam_vchunk_migrate_all() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put vchunk migrate start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Put this_is_rollback to rehash context struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Rename variables in mlxsw_sp_acl_tcam_ventry_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vchunk->chunk by the newly created chunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: assign vregion->region by the newly created region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push code start/end from mlxsw_sp_acl_tcam_vregion_migrate() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash start/end code into separate functions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce new rehash context struct and save hint_priv there (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't migrate already migrated entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Push rehash dw struct into rehash sub-struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: remove set but not used variable 'autoneg_status' (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add massive delta rehash test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Check migrate end trace (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add vregion migration end tracepoint (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add IPv6 variant of simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take mutex in mlxsw_sp_acl_tcam_vregion_rehash_work() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove RTNL lock assertions from ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Don't take rtnl lock during vregion_rehash_intrvl_set() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard objagg instance manipulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable vregion rehash per-profile (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce mutex to guard Bloom Filter updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce vregion mutex (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Refactor vregion association code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce a mutex to guard region list updates (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM group structure into two (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unused ops field from group structure (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC support for new port types and speeds (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 ASIC port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add new port type-speed fields for PTYS register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: 80 columns wrapping change (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Rename p_eth_proto_adm to full name p_eth_proto_admin (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add port type-speed operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Rename port type-speed functions to ASIC specific (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Query port connector type from firmware (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove unsupported eth_proto_lp_advertise field in PTYS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove duplicate port link mode entry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Avoid -Wformat-truncation warnings (Ivan Vecera) [1680241] - [netdrv] net: Remove SWITCHDEV_ATTR_ID_PORT_BRIDGE_FLAGS_SUPPORT (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Reject overlarge headroom size requests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Update port headroom configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Add Spectrum-2 shared buffer configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_mm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_cm in sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_prs in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep mlxsw_sp_sb_pms in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep pool descriptors in mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allocate prs & pms dynamically (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add struct mlxsw_sp_sb_vals (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change IP2ME CPU policer rate and burst size values (Ivan Vecera) [1680241] - [netdrv] mlxsw: __mlxsw_sp_port_headroom_set(): Fix a use of local variable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add some missing configuration symbols (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: fix spelling mistake "temprature" -> "temperature" (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend thermal module with per QSFP module thermal zones (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Allow thermal zone binding to an external cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add QSFP module temperature label attribute to hwmon (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with QSFP module temperature attributes (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend hwmon interface with fan fault attribute (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Rename cooling device (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Replace thermal temperature trips with defines (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Modify thermal zone definition (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Set different thermal polling time based on bus frequency capability (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Add API for QSFP module temperature thresholds reading (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Fan Out of Range Event Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Management Temperature Bulk Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move QSFP EEPROM definitions to common location (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove unused variables (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: avoid double sourcing of lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Fix VLAN modify action support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Drop unnecessary WARN_ON_ONCE() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set LAG port collector only when active (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta rehash test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add couple of vregion rehash tracepoints (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: add "acl_region_rehash_interval" devlink param (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement region migration according to hints (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add multi field to PAGT register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass hints priv all the way to ERP code (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement basic ERP rehash hits creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split entry struct into entry and ventry (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split chunk struct into chunk and vchunk (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split region struct into region and vregion (Ivan Vecera) [1680241] - [netdrv] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1680241] - [netdrv] devlink: publish params only after driver init is done (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Offload blackhole routes (Ivan Vecera) [1680241] - [netdrv] mlxsw: Implement ndo_get_port_parent_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Trace EMAD errors (Ivan Vecera) [1680241] - [netdrv] drivers: net: use flow action infrastructure (Ivan Vecera) [1680241] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_flower: Fix test result handling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Ignore ARP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Enable forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_bridge_1q_lag: Flush neighbors (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix roaming test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Wait for tardy mirrored packets (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix TTL test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Update ping limits (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Make ping timeout configurable (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Add delta two masks one key test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Fix multiple_masks_test (Ivan Vecera) [1680241] - [tools] selftests: spectrum-2: Extend and move trace helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add C-TCAM spill tracepoint (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Include delta bits into hashtable key (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Use OK instead of PASS in test output (Ivan Vecera) [1680241] - [tools] selftests: net: forwarding: change devlink resource support checking (Ivan Vecera) [1680241] - [documentation] Documentation: add devlink param file for mlxsw driver (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add more extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Fix rul/rule typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move mr_ruleset and mr_rule structs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove unnecessary arg on action_replace call path (Ivan Vecera) [1680241] - [netdrv] mlxfw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Enable VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add support for VXLAN on Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Breakout common code to a common function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose functions to create and destroy underlay RIF (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP suppression (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN symmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for ARP decapsulation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VXLAN asymmetric routing (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE hierarchical topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with keys test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology with key test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP-in-IP GRE flat topology test (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add IP tunneling lib (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add GRE tunnel support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Update tunnel decap properties (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Support RIF without device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Change mlxsw_sp_ipip_lb_ul_vr_id() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add underlay RIF ID support (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Mark RIF index as taken before creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Adjust loopback RIF configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set RIF ops per ASIC type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Split RIF ops array for Spectrum-2 support (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add underlay egress RIF field in RTDP register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add fields to RITR - Router Interface Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test case for externally learned FDB entries (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FDB offload indication (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not treat static FDB entries as sticky (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Update dummy FID index (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Return error on PCI reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Increase PCI SW reset timeout (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Ring CQ's doorbell before RDQ's (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test veto of unsupported VXLAN FDBs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add extack messages to VXLAN FDB rejection (Ivan Vecera) [1680241] - [netdrv] mlxsw: Add extack to mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl_bloom_filter: use struct_size() in kzalloc() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add a test for VLAN deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Set PVID correctly during VLAN deletion (Ivan Vecera) [1680241] - [net] net: bridge: Fix VLANs memory leak (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for VLAN addition error flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Replace error code with EINVAL (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid returning errors in commit phase (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VXLAN dependency for spectrum (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Disable lag port TX before removing it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Remove ASSERT_RTNL()s in module removal flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add cleanup after C-TCAM update error condition (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: drop useless LIST_HEAD (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add router test with VID 1 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Adjust test regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove limitation regarding VID 1 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Switch to VID 4095 as default VID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add an helper function to cleanup VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Store pointer to default port VLAN in port struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Allow controlling destruction of default port VLAN (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set PVID during port initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Replace hard-coded default VID with a define (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test case for L3 VNI (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not force specific configuration order (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add rtnetlink tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Hold a reference on RIF's netdev (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Make RIF deletion more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate 'struct mlxsw_sp' further (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Properly cleanup LAG uppers when removing port from LAG (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove reference count from VLAN entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Handle VLAN device unlinking (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Remove unused function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Do not destroy RIFs based on FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Sanitize VLAN interface's uppers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Fix memory leak upon driver reload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add trap for decapsulated ARP packets (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Increase timeout during firmware flash process (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1910.622 (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom delta test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter complex test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add Bloom filter simple test (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Activate Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set master RP index on transition to eRP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Update Bloom filter on eRP transitions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Set A-TCAM rules in Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter update (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Bloom filter handling (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Introduce Bloom filter (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 Bloom filter resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Algorithmic Bloom Filter Entries Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test FID RIF MAC vetoing (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Test RIF MAC vetoing (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Veto unsupported RIF MAC addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp.mac_mask (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Generalize mlxsw_sp_netdevice_router_port_event() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a port device (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: extack: Test VLAN add on a VXLAN device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on port VLAN events (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Propagate extack on VXLAN VLAN events (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add multicast routing test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add Multicast routing support for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Limit priority value (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Support rule creation without action creation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add replace rule action operation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add multicast router profile operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add Spectrum-2 keys (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change stage of ACL initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy Engine Multicast Router Binding Table Register (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add PVID test case for VXLAN with VLAN-aware bridges (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: vxlan: Test FDB un/marking on VXLAN join/leave (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Un/offload FDB on nve_fid_disable/enable (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add mlxsw_sp_fid_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_clear_offload (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add mlxsw_sp_nve_ops.fdb_replay (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Publish mlxsw_sp_switchdev_notifier (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Track NVE type at FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Fix VLAN device deletion via ioctl (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Relax GRE decap matching check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Avoid leaking FID's reference count (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Remove easily triggerable warnings (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a new test extack.sh (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add one-armed router test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Mirror loopbacked packets instead of trapping them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Load firmware version based on devlink parameter (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Reset firmware after flash during driver initialization (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add VxLAN test with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration with a VLAN-aware bridge (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VLAN-aware bridges as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare function for VLAN-aware bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Unify VxLAN leave function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating them (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Flip driver to use emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Introduce emulated VLAN RIFs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Introduce emulated 802.1Q FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Make flood index calculation more robust (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not set field when it is reserved (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Consider VxLAN learning enabled as valid (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Allow VxLAN learning (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Allow deletion of learned FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Process learned VxLAN FDB entries (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Add API to resolve learned IP addresses (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow FID lookup by its index (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Store ifindex of NVE device in FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFN register (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Extend cooling device with cooling levels (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN flooding (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for VxLAN configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose discard counters via ethtool (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: spectrum-2: Add simple delta test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Implement delta for ERP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Push code related to num_ctcam_erps inc/dec into separate helpers (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Remove mlxsw_afk_encode() block range args and key/mask check (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Don't encode the key again in mlxsw_sp_acl_atcam_12kb_lkey_id_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl: Change order of args of ops->encode_block() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl: Pass key pointer to master_mask_set/clear (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: acl_erp: Convert to use objagg for tracking ERPs (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 ctcam_two_atcam_masks_test (Ivan Vecera) [1680241] - [tools] selftests: Adjust spectrum-2 two_mask_test (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix IP2ME CPU policer configuration (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Add a test for UC awareness (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Tweak for min shaper (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Set minimum shaper on MC TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: QEEC: Add minimum shaper fields (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix devlink unregister flow (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Don't ignore deletions of learned MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Add support for VxLAN encapsulation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable VxLAN enslavement to bridges (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Configure matching local routes for NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Clear NVE configuration when destroying 802.1D FIDs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement VxLAN operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_nve: Implement common NVE core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allow querying VR ID based on table ID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Enable local routes promotion to perform NVE decap (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Add APIs to lookup FID without creating it (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_fid: Allow setting and clearing NVE properties on FID (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: Fix use-after-free when flashing firmware during init (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add NVE packet traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add NVE resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Monitoring Parsing State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add definition of unicast tunnel record for SFD register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Default Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE QoS Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Decapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Encapsulation ECN Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE Underlay Multicast Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunnel Port Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Tunneling NVE General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Seed LAG hash function (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Extend FDB flush types for NVE (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add a new type of KVD linear record (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Move L3 protocol and address definitions to global header file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Do not assume notifier information type (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Check notification relevance based on upper device (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Prepare for VxLAN FDB notifications (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Remove misuses of private header file (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_mc_aware: Make executable (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Have lldpad_app_wait_set() wait for unknown, too (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Delete RIF when VLAN device is removed (Ivan Vecera) [1680241] - [netdrv] mlxsw: pci: Derive event type from event queue number (Ivan Vecera) [1680241] - [netdrv] mlxsw: Make MLXSW_SP1_FWREV_MINOR a hard requirement (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Bump required firmware version (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add a test for UC behavior under MC flood (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add mtu_set(), mtu_restore() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add ethtool_stats_get() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Tweak SBMM configuration (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Configure MC pool (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow configuration of static pools (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Pass SBPM min_size in cells (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow an infinite maximum for per-TC pool limit (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Allow pools of infinite size (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Keep shared buffer size in mlxsw_sp_sb (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Split TC_COUNT into ingress and egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Use devlink pool indices throughout (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Init shaper for TCs 8..15 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_buffers: Set up a dedicated pool for BUM traffic (Ivan Vecera) [1680241] - [netdrv] mlxsw: remove unused arrays mlxsw_i2c_driver_name and mlxsw_pci_driver_name (Ivan Vecera) [1680241] - [netdrv] mlxsw: core: remove unnecessary function mlxsw_core_driver_put (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counter for all 16 TCs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Include RFC-2819 counters in stats length (Ivan Vecera) [1680241] - [netdrv] mlxsw: Replace license text with SPDX identifiers and adjust copyrights (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add TC flower test for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Reset FW after flash (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Update the supported firmware to version 13.1702.6 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Disallow usage of vlan_id key on egress (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: use PTR_ERR_OR_ZERO() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Update next-hop statistics match criteria (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Configure MC-aware mode on mlxsw ports (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Fix a typo (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Switch Traffic Class Table is Multicast-Aware Register (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for ip_forward_update_priority (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move DSCP capture to lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Move lldpad waiting to lib.sh (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Handle sysctl_ip_fwd_update_priority (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extract work-scheduling into a new function (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team LACP (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL team (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Introduce $ARPING (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Support team devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add require_command() (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: qos_dscp_bridge: Fix (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add test for trust-DSCP (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Support ieee_setapp, ieee_delapp (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority to DSCP Mapping Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS ReWrite Enable Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Priority Trust State Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add QoS Port DSCP to Priority Mapping Register (Ivan Vecera) [1680241] - [tools] selftests: add a selftest for directed broadcast forwarding (Ivan Vecera) [1680241] - [tools] selftests: forwarding: add tests for TC chain get and dump operations (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Start using A-TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM rule insertion and deletion (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Pass C-TCAM region and entry to insert function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM region initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Make global TCAM resources available to regions (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Encapsulate C-TCAM region in A-TCAM region (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add A-TCAM initialization (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Allow encoding a partial key (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Extend Spectrum-2 region struct (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for C-TCAM eRPs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Enable C-TCAM only mode in eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement common eRP core (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 eRP resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add Spectrum-2 maximum large key ID resource (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine eRP Table Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine TCAM Entry Register Version 3 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Prepare PERERP register for A-TCAM usage (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_flower: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Add extack messages (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Propagate extack pointer (Ivan Vecera) [1680241] - [tools] selftests: forwarding: gre_multipath: Drop IPv6 tests (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Implement chain template hinting (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Extend to support Spectrum-2 ASIC (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add initial Spectrum-2 ACL implementation (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add region association callback (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add support for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Prepare for Spectrum-2 block encoding (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine General Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region eRP Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Configuration Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Policy-Engine Region Association Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: acl: Introduce activity get operation for action block/set (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add support for activity information from PEFA register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Introduce flex key blocks for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add Spectrum-2 variant of flex actions ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Add Spectrum-2 stubs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add KVDL manager implementation for Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add Infrastructure Entry Delete Register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Expose counters for various packet sizes (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Optimize processing of VRRP MACs (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Add VRRP traps (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Direct macvlans' MACs to router (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Enable macvlan upper devices (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_nh: Unset rp_filter on host VRF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_span: Change LAG lower selection (Ivan Vecera) [1680241] - [netdrv] mlxsw: resources: Add couple of Spectrum-2 KVD resources (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Prepare for multiple FW versions for Spectrum and Spectrum-2 (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Implement priority setting for rules inserted to TCAM (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Add priority field for PTCEV2 register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Move block items encoding into Spectrum op (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Convert mlxsw_afk_create args to ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Add tcam init/fini ops (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Split TCAM handling 3 ways (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_mr_tcam: Push Spectrum-specific operations into a separate file (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry_count to free function (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Pass entry type to alloc/free (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_kvdl: Push out KVD linear management into ops (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_lib: Tighten up VLAN capture (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Fix helper to get the first KVD linear index (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_actions: Allow the first set to be dummy (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Put pointer to flex action ops to mlxsw_sp (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Change SRC_SYS_PORT flex key element size (Ivan Vecera) [1680241] - [netdrv] mlxsw: core_acl_flex_keys: Split MAC and IP address flex key elements (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_acl: Ignore always-zeroed bits in tp->prio (Ivan Vecera) [1680241] - [netdrv] mlxsw: reg: Introduce Flex2 key type for PTAR register (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum: Change name of mlxsw_sp_afk_blocks to mlxsw_sp1_afk_blocks (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: avoid uninitialized variable access (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add mlxsw-specific test for mirror to gretap (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow importing dependent libraries (Ivan Vecera) [1680241] - [tools] selftests: forwarding: test for bridge port isolation (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1q (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test mirror-to-gretap w/ UL 802.1d (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for resources (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for mirror-to-gretap test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add scale test for mirror-to-gretap (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for tc flower test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add tc flower scale test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add target for router test on spectrum (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add router test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink KVD resource test (Ivan Vecera) [1680241] - [tools] selftests: mlxsw: Add devlink_lib_spectrum.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Add devlink_lib.sh (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Parameterize NUM_NETIFS in two functions (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Add check_err_fail() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Allow lib.sh sourcing from other directories (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_changes: Fix waiting for neighbor (Ivan Vecera) [1680241] - [tools] selftests: forwarding: lib: Split out setup_wait_dev() (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test multipath tunneling (Ivan Vecera) [1680241] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Unset rp_filter (Ivan Vecera) [1680241] - [tools] selftests: forwarding: Test routed bridge interface (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_switchdev: Ban PVID change if bridge has a RIF (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Add mlxsw_sp_rif_fid() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Publish mlxsw_sp_rif_find_by_dev() (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Allocate FID according to PVID (Ivan Vecera) [1680241] - [netdrv] mlxsw: spectrum_router: Propagate extack to .fid_get() (Ivan Vecera) [1680241] - [netdrv] net: phy: realtek: Dummy IRQ calls for RTL8366RB (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add generic Realtek PHY driver (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: use new PHYID matching macros (Corinna Vinschen) [1680528] - [include] net: phy: add macros for PHYID matching (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: load driver for all PHYs with a Realtek OUI (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: fix RTL8201F sysfs name (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: Support RTL8366RB variant (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211C to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211C (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add missing entry for RTL8211 to mdio_device_id table (Corinna Vinschen) [1680528] - [netdrv] net: phy: realtek: add support for RTL8211 (Corinna Vinschen) [1680528] - [netdrv] r8169: change irq handler to always trigger NAPI polling (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for chip hw init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: create function pointer array for PHY init functions (Corinna Vinschen) [1680528] - [netdrv] r8169: disable ASPM again (Corinna Vinschen) [1680528] - [netdrv] r8169: disable tx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: use netif_receive_skb_list batching" (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_receive_skb_list batching (Corinna Vinschen) [1680528] - [netdrv] r8169: disable default rx interrupt coalescing on RTL8168 (Corinna Vinschen) [1680528] - [netdrv] r8169: fix cable re-plugging issue (Corinna Vinschen) [1680528] - [netdrv] r8169: use netif_start_queue instead of netif_wake_qeueue in rtl8169_start_xmit (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read interrupt mask register in interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: make use of xmit_more and __netdev_sent_queue" (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: remove unneeded mmiowb barriers" (Corinna Vinschen) [1680528] - [netdrv] r8169: Avoid pointer aliasing (Corinna Vinschen) [1680528] - [netdrv] r8169: Load MAC address from device tree if present (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_wol_pll_power_down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve WoL handling (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: add EEE support for RTL8168f (Corinna Vinschen) [1680528] - [netdrv] r8169: enable EEE per default on chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: add general EEE support for chip versions from RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out PHY init sequence adjusting 10M and ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out disabling ALDPS (Corinna Vinschen) [1680528] - [netdrv] r8169: improve firmware handling (Corinna Vinschen) [1680528] - [netdrv] r8169: remove PCI DAC support (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rx buffer allocation (Corinna Vinschen) [1680528] - [netdrv] r8169: factor out getting ether_clk (Corinna Vinschen) [1680528] - [netdrv] r8169: replace mii_bus member with phy_device member in struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: reset chip synchronously in __rtl8169_resume (Corinna Vinschen) [1680528] - [netdrv] r8169: add helpers for locking / unlocking the config registers (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl_pcie_state_l2l3_enable (Corinna Vinschen) [1680528] - [netdrv] r8169: initialize task workqueue only once (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call in pcierr (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl_get_events (Corinna Vinschen) [1680528] - [netdrv] r8169: load Realtek PHY driver module before r8169 (Corinna Vinschen) [1680528] - [netdrv] r8169: don't try to read counters if chip is in a PCI power-save state (Corinna Vinschen) [1680528] - [netdrv] r8169: Add support for new Realtek Ethernet (Corinna Vinschen) [1680528] - [netdrv] r8169: fix WoL device wakeup enable (Corinna Vinschen) [1680528] - [netdrv] r8169: improve spurious interrupt detection (Corinna Vinschen) [1680528] - [netdrv] r8169: fix crash if CONFIG_DEBUG_SHIRQ is enabled (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded mmiowb barriers (Corinna Vinschen) [1680528] - [netdrv] ethernet/realtek: Replace synchronize_sched() with synchronize_rcu() (Corinna Vinschen) [1680528] - [netdrv] r8169: make use of xmit_more and __netdev_sent_queue (Corinna Vinschen) [1680528] - [netdrv] r8169: replace macro TX_FRAGS_READY_FOR with a function (Corinna Vinschen) [1680528] - [netdrv] r8169: use napi_consume_skb where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify detecting chip versions with same XID (Corinna Vinschen) [1680528] - [netdrv] r8169: remove default chip versions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove ancient GCC bug workaround in a second place (Corinna Vinschen) [1680528] - [netdrv] r8169: improve chip version identification (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify ocp functions (Corinna Vinschen) [1680528] - [netdrv] r8169: remove workaround for ancient gcc bug (Corinna Vinschen) [1680528] - [netdrv] r8169: remove manual padding in struct ring_info (Corinna Vinschen) [1680528] - [netdrv] r8169: remove "not PCI Express" message (Corinna Vinschen) [1680528] - [netdrv] r8169: remove print_mac_version (Corinna Vinschen) [1680528] - [netdrv] r8169: use PCI_VDEVICE macro (Corinna Vinschen) [1680528] - [netdrv] r8169: replace event_slow with irq_mask (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unused interrupt sources (Corinna Vinschen) [1680528] - [netdrv] r8169: use dev_get_drvdata where possible (Corinna Vinschen) [1680528] - [netdrv] r8169: merge rtl_irq_enable and rtl_irq_enable_all (Corinna Vinschen) [1680528] - [pci] PCI: add USR vendor id and use it in r8169 and w6692 driver (Corinna Vinschen) [1680528] - [netdrv] net: ethernet: Convert phydev advertize and supported from u32 to link mode (Corinna Vinschen) [1680528] - [netdrv] r8169: fix broken Wake-on-LAN from S5 (poweroff) (Corinna Vinschen) [1680528] - [netdrv] r8169: add support for Byte Queue Limits (Corinna Vinschen) [1680528] - [netdrv] r8169: handle all interrupt events in the hard irq handler (Corinna Vinschen) [1680528] - [netdrv] r8169: fix NAPI handling under high load (Corinna Vinschen) [1680528] - [netdrv] r8169: re-enable MSI-X on RTL8168g (Corinna Vinschen) [1680528] - [netdrv] r8169: remove unneeded call to netif_stop_queue in rtl8169_net_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify rtl8169_set_magic_reg (Corinna Vinschen) [1680528] - [netdrv] r8169: Enable MSI-X on RTL8106e (Corinna Vinschen) [1680528] - [netdrv] r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips (Corinna Vinschen) [1680528] - [netdrv] r8169: always autoneg on resume (Corinna Vinschen) [1680528] - [netdrv] r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO (Corinna Vinschen) [1680528] - [netdrv] r8169: Disable clk during suspend / resume (Corinna Vinschen) [1680528] - [netdrv] r8169: improve a check in rtl_init_one (Corinna Vinschen) [1680528] - [netdrv] r8169: improve rtl8169_irq_mask_and_ack (Corinna Vinschen) [1680528] - [netdrv] r8169: use default watchdog timeout (Corinna Vinschen) [1680528] - [netdrv] r8169: fix autoneg issue on resume with RTL8168E (Corinna Vinschen) [1680528] - [netdrv] r8169: remove duplicated RTL8169s PHY initialization steps (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify RTL8169 PHY initialization (Corinna Vinschen) [1680528] - [netdrv] r8169: Get and enable optional ether_clk clock (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8106E (Corinna Vinschen) [1680528] - [netdrv] r8169: Align ASPM/CLKREQ setting function with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED (Corinna Vinschen) [1680528] - [netdrv] r8169: set TxConfig register after TX / RX is enabled, just like RxConfig (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure max jumbo frame size per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: don't configure csum function per chip version (Corinna Vinschen) [1680528] - [netdrv] r8169: simplify interrupt handler (Corinna Vinschen) [1680528] - [netdrv] r8169: don't include asm headers directly (Corinna Vinschen) [1680528] - [netdrv] r8169: remove version info (Corinna Vinschen) [1680528] - [netdrv] r8169: restore previous behavior to accept BIOS WoL settings (Corinna Vinschen) [1680528] - [netdrv] r8169: power down chip in probe (Corinna Vinschen) [1680528] - [netdrv] r8169: don't read chip phy status register (Corinna Vinschen) [1680528] - [netdrv] r8169: remove mii_if_info member from struct rtl8169_private (Corinna Vinschen) [1680528] - [netdrv] r8169: remove rtl8169_set_speed_xmii (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_speed_down / phy_speed_up (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_mii_ioctl (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_nway_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_ethtool_(g|s)et_link_ksettings (Corinna Vinschen) [1680528] - [netdrv] r8169: replace open-coded PHY soft reset with genphy_soft_reset (Corinna Vinschen) [1680528] - [netdrv] r8169: use phy_resume/phy_suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: add basic phylib support (Corinna Vinschen) [1680528] - [netdrv] r8169: fix runtime suspend (Corinna Vinschen) [1680528] - [netdrv] r8169: remove old PHY reset hack (Corinna Vinschen) [1680528] - [netdrv] r8169: remove TBI 1000BaseX support (Corinna Vinschen) [1680528] - [netdrv] r8169: use standard debug output functions (Corinna Vinschen) [1680528] - [netdrv] r8169: reject unsupported WoL options (Corinna Vinschen) [1680528] - [netdrv] r8169: don't check WoL when powering down PHY and interface is down (Corinna Vinschen) [1680528] - [netdrv] r8169: improve saved_wolopts handling (Corinna Vinschen) [1680528] - [netdrv] Revert "r8169: restore previous behavior to accept BIOS WoL settings" (Corinna Vinschen) [1680528] - [netdrv] r8169: improve phy initialization when resuming (Corinna Vinschen) [1680528] - [netdrv] r8169: enable ASPM on RTL8168E-VL (Corinna Vinschen) [1680528] - [netdrv] r8169: align ASPM entry latency setting with vendor driver (Corinna Vinschen) [1680528] - [netdrv] r8169: Reinstate ASPM Support (Corinna Vinschen) [1680528] - [netdrv] r8169: Don't disable ASPM in the driver (Corinna Vinschen) [1680528] - [kernel] kernel/sched/psi.c: expose pressure metrics on root cgroup (Waiman Long) [1678388] - [kernel] psi: introduce psi monitor (Waiman Long) [1678388] - [spi] include/: refactor headers to allow kthread.h inclusion in psi_types.h (Waiman Long) [1678388] - [kernel] psi: track changed states (Waiman Long) [1678388] - [kernel] psi: split update_stats into parts (Waiman Long) [1678388] - [kernel] psi: rename psi fields in preparation for psi trigger addition (Waiman Long) [1678388] - [kernel] psi: make psi_enable static (Waiman Long) [1678388] - [kernel] psi: introduce state_mask to represent stalled psi states (Waiman Long) [1678388] - [kernel] kernel: cgroup: add poll file operation (Waiman Long) [1678388] - [fs] fs: kernfs: add poll file operation (Waiman Long) [1678388] - [documentation] psi: clarify the units used in pressure files (Waiman Long) [1678388] - [kernel] psi: avoid divide-by-zero crash inside virtual machines (Waiman Long) [1678388] - [init] psi: clarify the Kconfig text for the default-disable option (Waiman Long) [1678388] - [kernel] psi: fix aggregation idle shut-off (Waiman Long) [1678388] - [init] psi: fix reference to kernel commandline enable (Waiman Long) [1678388] - [kernel] psi: make disabling/enabling easier for vendor kernels (Waiman Long) [1678388] - [kernel] kernel/sched/psi.c: simplify cgroup_move_task() (Waiman Long) [1678388] - [kernel] psi: cgroup support (Waiman Long) [1678388] - [kernel] psi: pressure stall information for CPU, memory, and IO (Waiman Long) [1678388] - [kernel] sched: introduce this_rq_lock_irq() (Waiman Long) [1678388] - [kernel] sched: sched.h: make rq locking and clock functions available in stats.h (Waiman Long) [1678388] - [kernel] sched: loadavg: make calc_load_n() public (Waiman Long) [1678388] - [kernel] sched: loadavg: consolidate LOAD_INT, LOAD_FRAC, CALC_LOAD (Waiman Long) [1678388] - [kernel] delayacct: track delays from thrashing cache pages (Waiman Long) [1678388] - [mm] mm: workingset: tell cache transitions from workingset thrashing (Waiman Long) [1678388] - [mm] mm: workingset: don't drop refault information prematurely (Waiman Long) [1678388] - [scsi] scsi: ibmvfc: Add failed PRLI to cmd_status lookup array (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Byte swap status and error codes when logging (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Remove "failed" from logged errors (Diego Domingos) [1665716] - [scsi] scsi: ibmvfc: Clean up transport events (Diego Domingos) [1665716] - [scsi] scsi: ibmvscsi: Don't use rc uninitialized in ibmvscsi_do_work (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: fix tripping of blk_mq_run_hw_queue WARN_ON (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: redo driver work thread to use enum action states (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: Wire up host_reset() in the driver's scsi_host_template (Gustavo Duarte) [1665715] - [scsi] scsi: ibmvscsi: change strncpy+truncation to strlcpy (Gustavo Duarte) [1665715] - [fs] ext4: avoid panic during forced reboot due to aborted journal (Lukas Czerner) [1717831] - [fs] ext4: fix use-after-free in dx_release() (Lukas Czerner) [1717831] - [fs] ext4: fix data corruption caused by overlapping unaligned and aligned IO (Lukas Czerner) [1717831] - [fs] ext4: avoid drop reference to iloc.bh twice (Lukas Czerner) [1717831] - [nvme] nvme-tcp: mark NVMe/TCP as a technical preview (Chris Leech) [1696451] - [nvme] nvme-tcp: fix possible null deref on a timed out io queue connect (Chris Leech) [1696451] - [nvme] nvme-tcp: rename function to have nvme_tcp prefix (Chris Leech) [1696451] - [nvme] nvme-tcp: fix a NULL deref when an admin connect times out (Chris Leech) [1696451] - [nvme] nvmet-tcp: don't fail maxr2t greater than 1 (Chris Leech) [1696451] - [nvme] nvmet-tcp: implement C2HData SUCCESS optimization (Chris Leech) [1696451] - [nvme] nvme-tcp: fix an endianess miss-annotation (Chris Leech) [1696451] - [nvme] nvme-tcp: support C2HData with SUCCESS flag (Chris Leech) [1696451] - [nvme] nvme-tcp: use older iov_iter API to fix panic (Chris Leech) [1696451] - [nvme] nvmet: fix building bvec from sg list (Ming Lei) [1690287] - [nvme] nvmet: set loop queue's segment boundary mask as PAGE_SIZE - 1 (Ming Lei) [1690287] - [x86] x86/qspinlock: Fix compile error (Waiman Long) [1709451] - [kernel] locking/rwsem: Prevent unneeded warning during locking selftest (Waiman Long) [1709451] - [kernel] locking/rwsem: Enable lock event counting (Waiman Long) [1709451] - [kernel] locking/lock_events: Don't show pvqspinlock events on bare metal (Waiman Long) [1709451] - [kernel] locking/lock_events: Make lock_events available for all archs & other locks (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs (Waiman Long) [1709451] - [kernel] locking/rwsem: Enhance DEBUG_RWSEMS_WARN_ON() macro (Waiman Long) [1709451] - [kernel] locking/rwsem: Add debug check for __down_read*() (Waiman Long) [1709451] - [kernel] locking/rwsem: Micro-optimize rwsem_try_read_lock_unqueued() (Waiman Long) [1709451] - [kernel] locking/rwsem: Move rwsem internal function declarations to rwsem-xadd.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Move owner setting code from rwsem.c to rwsem.h (Waiman Long) [1709451] - [kernel] locking/rwsem: Relocate rwsem_down_read_failed() (Waiman Long) [1709451] - [kernel] locking/rwsem: Optimize down_read_trylock() (Waiman Long) [1709451] - [kernel] locking/rwsem: Remove rwsem-spinlock.c & use rwsem-xadd.c for all archs (Waiman Long) [1709451] - [x86] locking/rwsem: Remove arch specific rwsem files (Waiman Long) [1709451] - [kernel] locking/qspinlock: Remove unnecessary BUG_ON() call (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Track the no MCS node available case (Waiman Long) [1709451] - [kernel] locking/qspinlock: Handle > 4 slowpath nesting levels (Waiman Long) [1709451] - [kernel] locking/pvqspinlock: Extend node size when pvqspinlock is configured (Waiman Long) [1709451] - [kernel] locking/qspinlock_stat: Count instances of nested lock slowpaths (Waiman Long) [1709451] - [kernel] locking/qspinlock, x86: Provide liveness guarantee (Waiman Long) [1709451] - [kernel] locking/qspinlock: Rework some comments (Waiman Long) [1709451] - [kernel] locking/qspinlock: Re-order code (Waiman Long) [1709451] - [x86] x86/headers: Fix -Wmissing-prototypes warning (Waiman Long) [1709451] - [x86] Revert "x86/refcount: Work around GCC inlining bug" (Waiman Long) [1709451] - [x86] x86/asm: 'Simplify' GEN_*_RMWcc() macros (Waiman Long) [1709451] - [x86] x86/refcount: Work around GCC inlining bug (Waiman Long) [1709451] - [lib] locking/refcounts: Include fewer headers in (Waiman Long) [1709451] - [media] media: stk1160: Set the vb2_queue lock before calling vb2_queue_init (Torez Smith) [1697664] - [usb] USB: typec: fsusb302: Drop empty set_current_limit implementation (Torez Smith) [1697664] - [usb] USB: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] USB: musb: mark expected switch fall-throughs (Torez Smith) [1697664] - [usb] usb: wusbcore: security: cast sizeof to int for comparison (Torez Smith) [1697664] - [usb] usb: typec: tcpm: Support for Alternate Modes (Torez Smith) [1697664] - [usb] usb: typec: pi3usb30532: Start using generic state values (Torez Smith) [1697664] - [usb] usb: typec: Add driver for DisplayPort alternate mode (Torez Smith) [1697664] - [usb] usb: typec: Bus type for alternate modes (Torez Smith) [1697664] - [usb] usb: typec: Register a device for every mode (Torez Smith) [1697664] - [usb] usb: typec: mux: Get the mux identifier from function parameter (Torez Smith) [1697664] - [usb] usb: update for tcpci drivers moving out of staging (Torez Smith) [1697664] - [netdrv] net: usb: Mark expected switch fall-throughs (Torez Smith) [1697664] - [media] media: tm6000: add error handling for dvb_register_adapter (Torez Smith) [1697664] - [usb] usb: typec: function for checking cable plug orientation (Torez Smith) [1697664] - [include] usb: pd: include kernel.h (Torez Smith) [1697664] - [staging] staging: typec: tcpci: move tcpci drivers out of staging (Torez Smith) [1697664] - [usb] typec: tcpm: add starting value for drp toggling (Torez Smith) [1697664] - [usb] usb: typec: tcpm: support get typec and pd config from device properties (Torez Smith) [1697664] - [usb] usb: typec: add API to get typec basic port power and data config (Torez Smith) [1697664] - [staging] usb: typec: add fwnode to tcpc (Torez Smith) [1697664] - [documentation] dt-bindings: usb: add documentation for typec port controller(TCPCI) (Torez Smith) [1697664] - [documentation] dt-bindings: connector: add properties for typec (Torez Smith) [1697664] - [usb] usb: typec: tps6598x: Remove VLA usage (Torez Smith) [1697664] - [usb] usb: cdc-wdm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: cdc-wdm: don't enable interrupts in USB-giveback (Torez Smith) [1697664] - [usb] usb: legousbtower: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: ldusb: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: iowarrior: remove intr_idx_lock (Torez Smith) [1697664] - [usb] usb: adutux: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: wusbcore: remove excessive irqsave (Torez Smith) [1697664] - [usb] usb: usb-skeleton: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usblp: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: usbfs: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: core: use irqsave() in sg_complete() complete callback (Torez Smith) [1697664] - [usb] usb: cdc-acm: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: host: ehci-npcm7xx: Fix some error codes in probe (Torez Smith) [1697664] - [media] media: cx231xx: fix RC_CORE dependency (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: rename tty flag variable (Torez Smith) [1697664] - [usb] USB: serial: usb_wwan: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: ti_usb_3410_5052: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: symbolserial: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: sierra: fix potential deadlock at close (Torez Smith) [1697664] - [usb] USB: serial: quatech2: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7840: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: mos7720: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_ti: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: io_edgeport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: digi_acceleport: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] USB: serial: cyberjack: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [usb] usb: chipidea: tegra: Use aligned DMA on Tegra114/124 (Torez Smith) [1697664] - [documentation] dt-bindings: usb: new ehci-npcm7xx dt (Torez Smith) [1697664] - [usb] USB host: Add USB ehci support for nuvoton npcm7xx platform (Torez Smith) [1697664] - [usb] usb: cdc-acm: Decrement tty port's refcount if probe() fail (Torez Smith) [1697664] - [usb] USB: mon: use ktime_get_real_ts64 instead of getnstimeofday64 (Torez Smith) [1697664] - [usb] USB: xhci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: ehci-hcd: Add get_resuming_ports method (Torez Smith) [1697664] - [usb] USB: Report wakeup events on root-hub ports (Torez Smith) [1697664] - [usb] USB: serial: cast sizeof() to int when comparing with error code (Torez Smith) [1697664] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Torez Smith) [1697664] - [netdrv] net: usb: rtl8150: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: r8152: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: kaweth: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: hso: use irqsave() in USB's complete callback (Torez Smith) [1697664] - [netdrv] net: usb: cdc-phonet: use irqsave() in USB's complete callback (Torez Smith) [1697664]- [net] selftests/tls: add test for sleeping even though there is data (Sabrina Dubroca) [1711821] - [net] tls: fix no wakeup on partial reads (Sabrina Dubroca) [1711821] - [net] selftests/tls: test for lowat overshoot with multiple records (Sabrina Dubroca) [1711821] - [net] tls: fix lowat calculation if some data came from previous record (Sabrina Dubroca) [1711821] - [net] tls: don't ignore netdev notifications if no TLS features (Sabrina Dubroca) [1711821] - [net] tls: fix state removal with feature flags off (Sabrina Dubroca) [1711821] - [net] tls: handle errors from padding_length() (Sabrina Dubroca) [1711821] - [net] tls: avoid NULL pointer deref on nskb->sk in fallback (Sabrina Dubroca) [1711821] - [net] tls: byte swap device req TCP seq no upon setting (Sabrina Dubroca) [1711821] - [net] tls: remove old exports of sk_destruct functions (Sabrina Dubroca) [1711821] - [net] tls: don't log errors every time offload can't proceed (Sabrina Dubroca) [1711821] - [net] tls: fix refcount adjustment in fallback (Sabrina Dubroca) [1711821] - [net] strparser: make it explicitly non-modular (Sabrina Dubroca) [1711821] - [net] strparser: partially revert "strparser: Call skb_unclone conditionally" (Sabrina Dubroca) [1711821] - [net] tls: fix the IV leaks (Sabrina Dubroca) [1711821] - [net] strparser: fix comment (Sabrina Dubroca) [1711821] - [net] tls: prevent false connection termination with offload (Sabrina Dubroca) [1711821] - [net] tls: Replace kfree_skb() with consume_skb() (Sabrina Dubroca) [1711821] - [net] strparser: fix a missing check for create_singlethread_workqueue (Sabrina Dubroca) [1711821] - [net] tls: Fix tls_device receive (Sabrina Dubroca) [1711821] - [net] tls: Fix mixing between async capable and async (Sabrina Dubroca) [1711821] - [net] tls: Return type of non-data records retrieved using MSG_PEEK in recvmsg (Sabrina Dubroca) [1711821] - [net] selftest/tls: Add test to verify received 'type' of non-data record (Sabrina Dubroca) [1711821] - [net] tls: Move protocol constants from cipher context to tls context (Sabrina Dubroca) [1711821] - [net] tls: Do not use async crypto for non-data records (Sabrina Dubroca) [1711821] - [net] tls: Disable async decrytion for tls1.3 (Sabrina Dubroca) [1711821] - [net] tls: Set async_capable for tls zerocopy only if we see EINPROGRESS (Sabrina Dubroca) [1711821] - [net] tls: Add tests for TLS 1.3 (Sabrina Dubroca) [1711821] - [net] tls: Add tls 1.3 support (Sabrina Dubroca) [1711821] - [net] tls: Refactor control message handling on recv (Sabrina Dubroca) [1711821] - [net] tls: Refactor tls aad space size calculation (Sabrina Dubroca) [1711821] - [net] tls: Support 256 bit keys (Sabrina Dubroca) [1711821] - [net] tls: free ctx in sock destruct (Sabrina Dubroca) [1711821] - [net] tls: build_protos moved to common routine (Sabrina Dubroca) [1711821] - [net] tls: Fix recvmsg() to be able to peek across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Make function tls_sw_do_sendpage static (Sabrina Dubroca) [1711821] - [net] tls: remove unused function tls_sw_sendpage_locked (Sabrina Dubroca) [1711821] - [net] Optimize sk_msg_clone() by data merge to end dst sg entry (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv partial/large_buff test cases (Sabrina Dubroca) [1711821] - [net] tls: allocate tls context using GFP_ATOMIC (Sabrina Dubroca) [1711821] - [net] tls: Init routines in create_ctx (Sabrina Dubroca) [1711821] - [net] selftests/tls: Fix recv(MSG_PEEK) & splice() test cases (Sabrina Dubroca) [1711821] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add MSG_WAITALL in recv() syscall (Sabrina Dubroca) [1711821] - [net] tls: async support causes out-of-bounds access in crypto APIs (Sabrina Dubroca) [1711821] - [net] selftests/tls: Add test for recv(PEEK) spanning across multiple records (Sabrina Dubroca) [1711821] - [net] tls: Add support for async decryption of tls records (Sabrina Dubroca) [1711821] - [net] tls: Calculate nsg for zerocopy path without skb_cow_data (Sabrina Dubroca) [1711821] - [net] strparser: remove redundant variable 'rd_desc' (Sabrina Dubroca) [1711821] - [net] tls: Use kmemdup to simplify the code (Sabrina Dubroca) [1711821] - [net] tls: Use socket data_ready callback on record availability (Sabrina Dubroca) [1711821] - [net] selftests: tls: add selftests for TLS sockets (Sabrina Dubroca) [1711821] - [net] strparser: Call skb_unclone conditionally (Sabrina Dubroca) [1711821] - [net] tls: Remove VLA usage on nonce (Sabrina Dubroca) [1711821] - [net] tls: Removed unused variable (Sabrina Dubroca) [1711821] - [netdrv] veth: use generic helper to report timestamping info (Jiri Benc) [1718938] - [netdrv] veth: Fix -Wformat-truncation (Jiri Benc) [1718938] - [netdrv] veth: Mark expected switch fall-throughs (Jiri Benc) [1718938] - [net] Add extack argument to rtnl_create_link (Jiri Benc) [1718938] - [netdrv] veth: Add ethtool statistics support for XDP (Jiri Benc) [1718938] - [netdrv] veth: Account for XDP packet statistics on rx side (Jiri Benc) [1718938] - [netdrv] veth: Account for packet drops in ndo_xdp_xmit (Jiri Benc) [1718938] - [netdrv] veth: rename pcpu_vstats as pcpu_lstats (Jiri Benc) [1718938] - [netdrv] net: move definition of pcpu_lstats to header file (Jiri Benc) [1718938] - [netdrv] veth: add software timestamping (Jiri Benc) [1718938] - [net] tcp: tcp_grow_window() needs to respect tcp_space() (Marcelo Leitner) [1718344] - [net] tcp: fix a potential NULL pointer dereference in tcp_sk_exit (Marcelo Leitner) [1718344] - [net] tcp: do not use ipv6 header for ipv4 flow (Marcelo Leitner) [1718344] - [net] tcp: Don't access TCP_SKB_CB before initializing it (Marcelo Leitner) [1718344] - [net] tcp: do not report TCP_CM_INQ of 0 for closed connections (Marcelo Leitner) [1718344] - [net] tcp: clear icsk_backoff in tcp_write_queue_purge() (Marcelo Leitner) [1718344] - [net] tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state (Marcelo Leitner) [1718344] - [net] tcp: change txhash on SYN-data timeout (Marcelo Leitner) [1718344] - [net] tcp: lack of available data can also cause TSO defer (Marcelo Leitner) [1718344] - [net] tcp: fix NULL ref in tail loss probe (Marcelo Leitner) [1718344] - [net] tcp: Do not underestimate rwnd_limited (Marcelo Leitner) [1718344] - [net] tcp: defer SACK compression after DupThresh (Marcelo Leitner) [1718344] - [net] tcp: do not release socket ownership in tcp_close() (Marcelo Leitner) [1718344] - [net] tcp: Fix SOF_TIMESTAMPING_RX_HARDWARE to use the latest timestamp during TCP coalescing (Marcelo Leitner) [1718344] - [net] inet: make sure to grab rcu_read_lock before using ireq->ireq_opt (Marcelo Leitner) [1718344] - [net] tcp/dccp: fix lockdep issue when SYN is backlogged (Marcelo Leitner) [1718344] - [net] xfrm4: Fix uninitialized memory read in _decode_session4 (Sabrina Dubroca) [1718812] - [net] esp4: add length check for UDP encapsulation (Sabrina Dubroca) [1718812] - [net] xfrm: clean up xfrm protocol checks (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix potential panic when unloading xfrm6_tunnel module (Sabrina Dubroca) [1718812] - [net] xfrm: Reset secpath in xfrm failure (Sabrina Dubroca) [1718812] - [net] xfrm: policy: Fix out-of-bound array accesses in __xfrm_policy_unlink (Sabrina Dubroca) [1718812] - [net] xfrm: destroy xfrm_state synchronously on net exit path (Sabrina Dubroca) [1718812] - [net] esp: Skip TX bytes accounting when sending from a request socket (Sabrina Dubroca) [1718812] - [net] xfrm: refine validation of template and selector families (Sabrina Dubroca) [1718812] - [net] xfrm: policy: increment xfrm_hash_generation on hash rebuild (Sabrina Dubroca) [1718812] - [net] xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi (Sabrina Dubroca) [1718812] - [net] xfrm_user: fix freeing of xfrm states on acquire (Sabrina Dubroca) [1718812] - [net] xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force clears the dst_entry (Sabrina Dubroca) [1718812] - [net] xfrm: Fix error return code in xfrm_output_one() (Sabrina Dubroca) [1718812] - [net] vti4: eliminated some duplicate code (Guillaume Nault) [1718443] - [net] vti4: removed duplicate log message (Guillaume Nault) [1718443] - [net] vti4: ipip tunnel deregistration fixes (Guillaume Nault) [1718443] - [net] vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel (Guillaume Nault) [1718443] - [net] fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling gro_cells_receive() (Guillaume Nault) [1718443] - [netdrv] vxlan: test dev->flags & IFF_UP before calling netif_rx() (Guillaume Nault) [1718443] - [net] devlink: turn devlink into a built-in (Petr Oros) [1717458] - [net] ipv6: fix EFAULT on sendto with icmpv6 and hdrincl (Stefano Brivio) [1718503] - [net] ipv6: use READ_ONCE() for inet->hdrincl as in ipv4 (Stefano Brivio) [1718503] - [net] ipv6: Fix redirect with VRF (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a raw socket to an address (Stefano Brivio) [1718503] - [net] ipv6: prevent possible fib6 leaks (Stefano Brivio) [1718503] - [net] vrf: sit mtu should not be updated when vrf netdev is the link (Stefano Brivio) [1718503] - [net] ipv6: A few fixes on dereferencing rt->from (Stefano Brivio) [1718503] - [tools] selftests: fib_rule_tests: Fix icmp proto with ipv6 (Stefano Brivio) [1718503] - [net] ipv6: fix races in ip6_dst_destroy() (Stefano Brivio) [1718503] - [net] ipv6/flowlabel: wait rcu grace period before put_pid() (Stefano Brivio) [1718503] - [net] ipv6: invert flowlabel sharing check in process and user mode (Stefano Brivio) [1718503] - [net] route: Avoid crash from dereferencing NULL rt->from (Stefano Brivio) [1718503] - [net] udpv6: Check address length before reading address family (Stefano Brivio) [1718503] - [net] ip6_gre: fix possible use-after-free in ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ip6_gre: remove gre_hdr_len from ip6erspan_rcv (Stefano Brivio) [1718503] - [net] ipv6: Fix dangling pointer when ipv6 fragment (Stefano Brivio) [1718503] - [net] ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type (Stefano Brivio) [1718503] - [net] inet: switch IP ID generator to siphash (Stefano Brivio) [1718503] - [net] sit: fix UBSAN Undefined behaviour in check_6rd (Stefano Brivio) [1718503] - [net] ip6mr: Do not call __IP6_INC_STATS() from preemptible context (Stefano Brivio) [1718503] - [net] sit: fix memory leak in sit_init_net() (Stefano Brivio) [1718503] - [net] ipv4: Add ICMPv6 support when parse route ipproto (Stefano Brivio) [1718503] - [net] ipv6: Return error for RTA_VIA attribute (Stefano Brivio) [1718503] - [net] Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255 (Stefano Brivio) [1718503] - [net] ip6_gre: do not report erspan_ver for ip6gre or ip6gretap (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in rt6_update_exception_stamp_rt() (Stefano Brivio) [1718503] - [net] ipv6: route: enforce RCU protection in ip6_route_check_nh_onlink() (Stefano Brivio) [1718503] - [net] ipv6: propagate genlmsg_reply return code (Stefano Brivio) [1718503] - [net] fix IPv6 prefix route residue (Stefano Brivio) [1718503] - [net] ip6mr: Fix notifiers call on mroute_clean_tables() (Stefano Brivio) [1718503] - [net] af_packet: fix raw sockets over 6in4 tunnel (Stefano Brivio) [1718503] - [net] ip6_gre: fix tunnel list corruption for x-netns (Stefano Brivio) [1718503] - [net] ipv6: fix kernel-infoleak in ipv6_local_error() (Stefano Brivio) [1718503] - [net] ip: on queued skb use skb_header_pointer instead of pskb_may_pull (Stefano Brivio) [1718503] - [net] ipv4: fix use-after-free in ip_cmsg_recv_dstaddr() (Stefano Brivio) [1718503] - [net] ipv6: Take rcu_read_lock in __inet6_bind for mapped addresses (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to a v4 mapped address (Stefano Brivio) [1718503] - [net] ipv6: Consider sk_bound_dev_if when binding a socket to an address (Stefano Brivio) [1718503] - [net] ip: validate header length on virtual device xmit (Stefano Brivio) [1718503] - [net] ipv6: Fix a test against 'ipv6_find_idev()' return value (Stefano Brivio) [1718503] - [net] ipv6: tunnels: fix two use-after-free (Stefano Brivio) [1718503] - [net] ipv6: add missing tx timestamping on IPPROTO_RAW (Stefano Brivio) [1718503] - [net] clear skb->tstamp in forwarding paths (Stefano Brivio) [1718503] - [net] ipv6: sr: properly initialize flowi6 prior passing to ip6_route_output (Stefano Brivio) [1718503] - [net] always initialize pagedlen (Stefano Brivio) [1718503] - [net] ipv6: Fix PMTU updates for UDP/raw sockets in presence of VRF (Stefano Brivio) [1718503] - [net] ipv6: gro: do not use slow memcmp() in ipv6_gro_receive() (Stefano Brivio) [1718503] - [net] xfrm: fix out-of-bounds packet access (Stefano Brivio) [1718503] - [net] ipv6: take rcu lock in rawv6_send_hdrinc() (Stefano Brivio) [1718503] - [net] ip6_tunnel: be careful when accessing the inner header (Stefano Brivio) [1718503] - [net] revert "ipv6: fix double refcount of fib6_metrics" (Stefano Brivio) [1718503] - [net] ipv6: fix memory leak on dst->_metrics (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for ip6_mr failure (Stefano Brivio) [1718503] - [net] ipv6: fix cleanup ordering for pingv6 registration (Stefano Brivio) [1718503] - [net] ip6_tunnel: collect_md xmit: Use ip_tunnel_key's provided src address (Stefano Brivio) [1718503] - [net] ipv6: fix addrconf_sysctl_addr_gen_mode (Stefano Brivio) [1718503] - [net] ipv6: don't reinitialize ndev->cnf.addr_gen_mode on new inet6_dev (Stefano Brivio) [1718503] - [net] ipv6: reserve room for IFLA_INET6_ADDR_GEN_MODE (Stefano Brivio) [1718503] - [net] ipv6: propagate net.ipv6.conf.all.addr_gen_mode to devices (Stefano Brivio) [1718503] - [net] openvswitch: check for null pointer return from nla_nest_start_noflag (Stefano Brivio) [1718408] - [net] openvswitch: add seqadj extension when NAT is used (Stefano Brivio) [1718408] - [net] netfilter: Replace spin_is_locked() with lockdep (Stefano Brivio) [1718392] - [net] netfilter: ipset: do not call ipset_nest_end after nla_nest_cancel (Stefano Brivio) [1718392] - [net] netfilter: ipset: Fix calling ip_set() macro at dumping (Stefano Brivio) [1718392] - [include] netfilter: ipset: Correct rcu_dereference() call in ip_set_put_comment() (Stefano Brivio) [1718392] - [net] netfilter: ipset: fix ip_set_list allocation failure (Stefano Brivio) [1718392] - [net] netfilter: ipset: Make invalid MAC address checks consistent (Stefano Brivio) [1649087] - [net] netfilter: ipset: Allow matching on destination MAC address for mac and ipmac sets (Stefano Brivio) [1649087] - [netdrv] rocker: Handle SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [net] switchdev: Add SWITCHDEV_PORT_ATTR_SET (Ivan Vecera) [1717892] - [netdrv] rocker: Add missing break for PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] bridge: Stop calling switchdev_port_attr_get() (Ivan Vecera) [1717892] - [netdrv] rocker: Check Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] mlxsw: spectrum: Handle PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [include] net: switchdev: Add PORT_PRE_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [netdrv] rocker: Remove port_attr_bridge_flags_get assignment (Ivan Vecera) [1717892] - [netdrv] rocker: Remove getting PORT_BRIDGE_FLAGS (Ivan Vecera) [1717892] - [net] pktgen: do not sleep with the thread lock held (Paolo Abeni) [1715575] - [include] ipv6: fix the check before getting the cookie in rt6_get_cookie (Xin Long) [1709166] - [net] ipv4: not do cache for local delivery if bc_forwarding is enabled (Xin Long) [1712657] - [net] sctp: avoid running the sctp state machine recursively (Xin Long) [1717316] - [netdrv] netdevsim: use skb_sec_path helper (Hangbin Liu) [1711810] - [netdrv] netdevsim: convert to DEFINE_SHOW_ATTRIBUTE (Hangbin Liu) [1711810] - [netdrv] netdevsim: make debug dirs' dentries static (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: use internal netns switch for ip commands (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: add testcases for vxlan flag sets (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink: Add a test case for multipath route get (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh: add testcase for neigh get (Hangbin Liu) [1711810] - [tools] selftests: net: rtnetlink.sh: add fdb get test (Hangbin Liu) [1711810] - [tools] selftests: rtnetlink.sh explicitly requires bash (Hangbin Liu) [1711810] - [net] udp: with udp_segment release on error path (Paolo Abeni) [1718079] - [net] ipv6: explicitly initialize udp6_addr in udp_sock_create6() (Paolo Abeni) [1718079] - [netdrv] geneve: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] vxlan: Don't assume linear buffers in vxlan_err_lookup() (Stefano Brivio) [1652222] - [netdrv] geneve: Initialize addr6 with memset (Stefano Brivio) [1652222] - [net] ip_tunnel: don't force DF when MTU is locked (Stefano Brivio) [1652222] - [netdrv] geneve: ICMP error lookup handler (Stefano Brivio) [1652222] - [netdrv] vxlan: ICMP error lookup handler (Stefano Brivio) [1652222] - [net] udp: Handle ICMP errors for tunnels with same destination port on both endpoints (Stefano Brivio) [1652222] - [net] udp: gro behind static key (Stefano Brivio) [1652222] - [net] bpf: in __bpf_redirect_no_mac pull mac only if present (Jiri Benc) [1687471] - [net] lwt_bpf: remove unnecessary rcu_read_lock in run_lwt_bpf (Jiri Benc) [1687471] - [net] bpf: add End.DT6 action to bpf_lwt_seg6_action helper (Jiri Benc) [1687471] - [net] bpf: fix out-of-bounds read in __bpf_skc_lookup (Jiri Benc) [1687459] - [net] bpf: Check sk_fullsock() before returning from bpf_sk_lookup() (Jiri Benc) [1687459] - [net] flow_dissector: disable preemption around BPF calls (Jiri Benc) [1687459] - [net] bpf: sockmap, only stop/flush strp if it was enabled at some point (Jiri Benc) [1687459] - [net] bpf: Stop the psock parser before canceling its work (Jiri Benc) [1687459] - [net] bpf: only test gso type on gso packets (Jiri Benc) [1687459] - [tools] selftests: add dummy xdp test helper (Jiri Benc) [1687459] - [net] filter: mark expected switch fall-through (Jiri Benc) [1687459] - [documentation] Update references to netdev-FAQ (Jiri Benc) [1687459] - [net] bpfilter: remove trailing newline (Jiri Benc) [1687459] - [net] core: filter: mark expected switch fall-through (Jiri Benc) [1687459] - [net] revert "xsk: simplify AF_XDP socket teardown" (Jiri Benc) [1687459] - [net] bpf/test_run: fix unkillable BPF_PROG_TEST_RUN (Jiri Benc) [1687459] - [net] xsk: share the mmap_sem for page pinning (Jiri Benc) [1687459] - [net] xsk: add missing smp_rmb() in xsk_mmap (Jiri Benc) [1687459] - [net] bpf: only adjust gso_size on bytestream protocols (Jiri Benc) [1687459] - [net] sk_msg: Always cancel strp work before freeing the psock (Jiri Benc) [1687459] - [net] bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt() (Jiri Benc) [1687459] - [net] bpf: fix SO_MAX_PACING_RATE to support TCP internal pacing (Jiri Benc) [1687459] - [net] bpf: bpf_setsockopt: reset sock dst on SO_MARK changes (Jiri Benc) [1687459] - [net] bpf: correctly set initial window on active Fast Open sender (Jiri Benc) [1687459] - [net] xsk: simplify AF_XDP socket teardown (Jiri Benc) [1687459] - [net] bpf: fix doc of bpf_skb_adjust_room() in uapi (Jiri Benc) [1687459] - [net] bpf: do not blindly change rlimit in reuseport net selftest (Jiri Benc) [1687459] - [net] xsk: proper AF_XDP socket teardown ordering (Jiri Benc) [1687459] - [net] bpf: typo fix in Documentation/networking/af_xdp.rst (Jiri Benc) [1687459] - [net] xdp: split code for map vs non-map redirect (Jiri Benc) [1687459] - [net] xdp: explicit inline __xdp_map_lookup_elem (Jiri Benc) [1687459] - [net] xdp: unlikely instrumentation for xdp map redirect (Jiri Benc) [1687459] - [net] xdp: remove redundant variable 'headroom' (Jiri Benc) [1687459] - [net] xsk: include XDP meta data in AF_XDP frames (Jiri Benc) [1687459] - [net] bpf: Enable BPF_PROG_TYPE_SK_REUSEPORT bpf prog in reuseport selection (Jiri Benc) [1687459] - [net] revert "xdp: add NULL pointer check in __xdp_return()" (Jiri Benc) [1687459] - [lib] test_rhashtable: Make test_insert_dup() allocate its hash table dynamically (Jiri Benc) [1717066] - [lib] test_rhashtable: remove semaphore usage (Jiri Benc) [1717066] - [lib] rhashtable: detect when object movement between tables might have invalidated a lookup (Jiri Benc) [1717066] - [lib] rhashtable: remove duplicated include from rhashtable.c (Jiri Benc) [1717066] - [lib] rhashtable: clean up dereference of ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: use cmpxchg() to protect ->future_tbl (Jiri Benc) [1717066] - [lib] rhashtable: simplify nested_table_alloc() and rht_bucket_nested_insert() (Jiri Benc) [1717066] - [lib] rhashtable: simplify INIT_RHT_NULLS_HEAD() (Jiri Benc) [1717066] - [lib] rhashtable: remove nulls_base and related code (Jiri Benc) [1717066] - [lib] rhashtable: split rhashtable.h (Jiri Benc) [1717066] - [lib] rhashtable: silence RCU warning in rhashtable_test (Jiri Benc) [1717066] - [net] devlink: publish params only after driver init is done (Ivan Vecera) [1715929] - [net] iptunnel: NULL pointer deref for ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_gre: Refactor collect metatdata mode tunnel xmit to ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Fix route fl4 init in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add tnl_update_pmtu in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] ip_tunnel: Add ip tunnel dst_cache in ip_md_tunnel_xmit (Hangbin Liu) [1712792] - [net] vlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [net] vlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: Mark expected switch fall-through (Hangbin Liu) [1664359] - [netdrv] macvlan: disable SIOCSHWTSTAMP in container (Hangbin Liu) [1664359] - [netdrv] macvlan: pass get_ts_info and SIOC[SG]HWTSTAMP ioctl to real device (Hangbin Liu) [1664359] - [net] ethtool: add compat for flash update (Petr Oros) [1708339] - [net] devlink: add flash update command (Petr Oros) [1708339] - [net] devlink: Fix list access without lock while reading region (Petr Oros) [1708339] - [net] devlink: Return right error code in case of errors for region read (Petr Oros) [1708339] - [net] devlink: use direct return of genlmsg_reply (Petr Oros) [1708339] - [net] devlink: Rename devlink health attributes (Petr Oros) [1709874] - [net] devlink: Modify reply of DEVLINK_CMD_HEALTH_REPORTER_GET (Petr Oros) [1709874] - [net] devlink: Update reporter state to error even if recover aborted (Petr Oros) [1709874] - [documentation] devlink: Add Documentation/networking/devlink-health.txt (Petr Oros) [1709874] - [net] devlink: Add health dump {get, clear} commands (Petr Oros) [1709874] - [net] devlink: Add health diagnose command (Petr Oros) [1709874] - [net] devlink: Add health recover command (Petr Oros) [1709874] - [net] devlink: Add health set command (Petr Oros) [1709874] - [net] devlink: Add health get command (Petr Oros) [1709874] - [net] devlink: Add health report functionality (Petr Oros) [1709874] - [net] devlink: Add health reporter create/destroy functionality (Petr Oros) [1709874] - [net] devlink: Add devlink formatted message (fmsg) API (Petr Oros) [1709874] - [net] devlink: add hardware errors tracing facility (Petr Oros) [1709874] - [net] cnb: devlink: report cell size of shared buffers (Petr Oros) [1708348] - [net] devlink: skip info_get op call if it is not defined in dumpit (Petr Oros) [1708342] - [include] devlink: add a generic board.manufacture version name (Petr Oros) [1708342] - [net] devlink: don't allocate attrs on the stack (Petr Oros) [1708342] - [net] devlink: fix condition for compat device info (Petr Oros) [1708342] - [net] ethtool: add compat for devlink info (Petr Oros) [1708342] - [include] devlink: add generic info version names (Petr Oros) [1708342] - [net] devlink: add version reporting to devlink info API (Petr Oros) [1708342] - [net] devlink: add device information API (Petr Oros) [1708342] - [net] devlink: Add devlink notifications support for port params (Petr Oros) [1710228] - [net] devlink: Add support for driverinit set value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add support for driverinit get value for devlink_port (Petr Oros) [1710228] - [net] devlink: Add port param set command (Petr Oros) [1710228] - [net] devlink: Add port param get command (Petr Oros) [1710228] - [net] devlink: Add devlink_param for port register and unregister (Petr Oros) [1710228] - [net] ipv6: properly check return value in inet6_dump_all() (Petr Oros) [1714656] - [net] Don't return invalid table id error when dumping all families (Petr Oros) [1714656] - [net] ipmr_base: Do not reset index in mr_table_dump (Petr Oros) [1714656] - [net] ipv6: Fix dump of specific table with strict checking (Petr Oros) [1714656] - [net] ipv4: avoid compile error in fib_info_nh_uses_dev (Petr Oros) [1714656] - [net] ipv4: Bail early if user only wants prefix entries (Petr Oros) [1714656] - [net] ipv6: Bail early if user only wants cloned entries (Petr Oros) [1714656] - [net] mpls: Handle kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Enable kernel side filtering of route dumps (Petr Oros) [1714656] - [net] Plumb support for filtering ipv4 and ipv6 multicast route dumps (Petr Oros) [1714656] - [net] ipmr: Refactor mr_rtm_dumproute (Petr Oros) [1714656] - [net] mpls: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] ipv6: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] netfilter: nft_fib: Convert nft_fib4_eval to new dev helper (Petr Oros) [1714656] - [net] netfilter: rpfilter: Convert rpfilter_lookup_reverse to new dev helper (Petr Oros) [1714656] - [net] ipv4: Move device validation to helper (Petr Oros) [1714656] - [net] ipv4: Plumb support for filtering route dumps (Petr Oros) [1714656] - [net] Add struct for fib dump filter (Petr Oros) [1714656] - [lib] iov_iter: Fix build error without CONFIG_CRYPTO (Ivan Vecera) [1714213] - [net] datagram: introduce skb_copy_and_hash_datagram_iter helper (Ivan Vecera) [1714213] - [lib] iov_iter: introduce hash_and_copy_to_iter helper (Ivan Vecera) [1714213] - [net] datagram: consolidate datagram copy to iter helpers (Ivan Vecera) [1714213] - [lib] iov_iter: pass void csum pointer to csum_and_copy_to_iter (Ivan Vecera) [1714213] - [net] datagram: open-code copy_page_to_iter (Ivan Vecera) [1714213] - [include] net: enable mpls_ptr in net_device (Hangbin Liu) [1350011] - [net] netfilter: ipset: actually allow allowable CIDR 0 in hash:net, port, net (Stefano Brivio) [1680512] - [net] netfilter: ipset: fix ip_set_byindex function (Stefano Brivio) [1680512] - [net] netfilter: ipset: Introduction of new commands and protocol version 7 (Stefano Brivio) [1680512] - [net] ipv6: don't return positive numbers when nothing was dumped (Petr Oros) [1700306] - [net] rtnetlink: restore handling of dumpit return value in rtnl_dump_all() (Petr Oros) [1700306] - [net] netlink: fixup regression in RTM_GETADDR (Petr Oros) [1700306] - [net] {ipv4, ipv6}: Do not put target net if input nsid is invalid (Petr Oros) [1700306] - [net] rtnl_dump_all needs to propagate error from dumpit function (Petr Oros) [1700306] - [net] rtnetlink: Move ifm in valid_fdb_dump_legacy to closer to use (Petr Oros) [1700306] - [net] neighbor: NTF_PROXY is a valid ndm_flag for a dump request (Petr Oros) [1700306] - [net] mpls: Implement handler for strict data checking on dumps (Petr Oros) [1700306] - [net] rtnetlink: Update comment in rtnl_stats_dump regarding strict data checking (Petr Oros) [1700306] - [net] ipv6: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [net] ipv4: Put target net when address dump fails due to bad attributes (Petr Oros) [1700306] - [tools] headers uapi: Update linux/netlink.h header copy (Petr Oros) [1700306] - [net] neigh: fix NULL deref in pneigh_dump_table() (Petr Oros) [1700306] - [net] ipv6: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv4: Add support for dumping addresses for a specific device (Petr Oros) [1700306] - [net] ipv6: Remove ip_idx arg to in6_dump_addrs (Petr Oros) [1700306] - [net] ipv4: Move loop over addresses on a device into in_dev_dump_addr (Petr Oros) [1700306] - [net] netlink: Add answer_flags to netlink_callback (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_fdb_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Move input checking for rtnl_fdb_dump to helper (Petr Oros) [1700306] - [net] bridge: Update br_mdb_dump for strict data checking (Petr Oros) [1700306] - [net] Update netconf dump handlers for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update ip6addrlbl_dump for strict data checking (Petr Oros) [1700306] - [net] fib_rules: Update fib_nl_dumprule for strict data checking (Petr Oros) [1700306] - [net] namespace: Update rtnl_net_dumpid for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neightbl_dump_info for strict data checking (Petr Oros) [1700306] - [net] neighbor: Update neigh_dump_info for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update fib dumps for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update ipmr_rtm_dumplink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update inet6_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_stats_dump for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_bridge_getlink for strict data checking (Petr Oros) [1700306] - [net] rtnetlink: Update rtnl_dump_ifinfo for strict data checking (Petr Oros) [1700306] - [net] ipv6: Update inet6_dump_addr for strict data checking (Petr Oros) [1700306] - [net] ipv4: Update inet_dump_ifaddr for strict data checking (Petr Oros) [1700306] - [net] netlink: Add new socket option to enable strict checking on dumps (Petr Oros) [1700306] - [net] ipv6: Refactor address dump to push inet6_fill_args to in6_dump_addrs (Petr Oros) [1700306] - [lib] netlink: Add strict version of nlmsg_parse and nla_parse (Petr Oros) [1700306] - [net] Add extack to nlmsg_parse (Petr Oros) [1700306] - [include] netlink: Add extack message to nlmsg_parse for invalid header length (Petr Oros) [1700306] - [net] netlink: Pass extack to dump handlers (Petr Oros) [1700306] - [net] neigh: Extend dump filter to proxy neighbor dumps (Petr Oros) [1700306] - [lib] netlink: add nested array policy validation (Petr Oros) [1700306] - [lib] netlink: allow NLA_NESTED to specify nested policy to validate (Petr Oros) [1700306] - [lib] netlink: move extack setting into validate_nla() (Petr Oros) [1700306] - [lib] netlink: make validation_data const (Petr Oros) [1700306] - [lib] netlink: remove NLA_NESTED_COMPAT (Petr Oros) [1700306] - [lib] netlink: add ethernet address policy types (Petr Oros) [1700306] - [net] sched: cls_u32: add res to offload information (Ivan Vecera) [1711377] - [net] sched: gred: support reporting stats from offloads (Ivan Vecera) [1711377] - [net] sched: gred: add basic Qdisc offload (Ivan Vecera) [1711377] - [net] sched: gred: allow manipulating per-DP RED flags (Ivan Vecera) [1711377] - [net] sched: gred: store red flags per virtual queue (Ivan Vecera) [1711377] - [net] sched: gred: provide a better structured dump and expose stats (Ivan Vecera) [1711377] - [net] sched: gred: store bytesin as a 64 bit value (Ivan Vecera) [1711377] - [net] sched: gred: use extack to provide more details on configuration errors (Ivan Vecera) [1711377] - [net] sched: gred: pass extack to nla_parse_nested() (Ivan Vecera) [1711377] - [net] sched: gred: separate error and non-error path in gred_change() (Ivan Vecera) [1711377] - [net] netlink: add NLA_REJECT policy type (Ivan Vecera) [1711377] - [lib] netlink: Return extack message if attribute validation fails (Ivan Vecera) [1711377] - [net] sched: red: notify drivers about RED's limit parameter (Ivan Vecera) [1711039] - [net] sched: mq: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: red: offload a graft notification (Ivan Vecera) [1711039] - [net] sched: provide notification for graft on root (Ivan Vecera) [1711039] - [net] sched: prio: delay destroying child qdiscs on change (Ivan Vecera) [1711039] - [net] sched: red: delay destroying child qdisc on replace (Ivan Vecera) [1711039] - [net] sched: refactor grafting Qdiscs with a parent (Ivan Vecera) [1711039] - [net] sched: add an offload graft helper (Ivan Vecera) [1711039] - [net] sched: set TCQ_F_OFFLOADED flag for MQ (Ivan Vecera) [1711039] - [net] sched: red: remove unnecessary red_dump_offload_stats parameter (Ivan Vecera) [1711039] - [net] sched: add an offload dump helper (Ivan Vecera) [1711039] - [netdrv] netdevsim: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [netdrv] rocker: Implement ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] Introduce ndo_get_port_parent_id() (Ivan Vecera) [1708368] - [net] use indirect calls helpers at early demux stage (Paolo Abeni) [1700747] - [net] use indirect calls helpers for L3 handler hooks (Paolo Abeni) [1700747] - [net] use indirect calls helpers at the socket layer (Paolo Abeni) [1700747] - [net] use indirect calls helpers for ptype hook (Paolo Abeni) [1700747] - [net] add documentation to socket.c (Paolo Abeni) [1700747] - [net] udp: use indirect call wrappers for GRO socket lookup (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO transport layer (Paolo Abeni) [1700747] - [net] use indirect call wrappers at GRO network layer (Paolo Abeni) [1700747] - [net] indirect call wrappers: helpers to speed-up indirect calls of builtin (Paolo Abeni) [1700747] - [powerpc] powerpc: bpf: Fix generation of load/store DW instructions (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: propagate liveness on all frames (Yauheni Kaliuta) [1700846] - [net] bpf: do not restore dst_reg when cur_state is freed (Yauheni Kaliuta) [1700846] - [tools] tools lib bpf: Fix the build by adding a missing stdarg.h include (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fix version info and add it to shared object (Yauheni Kaliuta) [1700846] - [tools] btf: fix bug with resolving STRUCT/UNION into corresponding FWD (Yauheni Kaliuta) [1700846] - [tools] tools/libbpf: signedness bug in btf_dedup_ref_type() (Yauheni Kaliuta) [1700846] - [tools] libbpf: fix libbpf_print (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: simplify libbpf API function libbpf_set_print() (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr() (Yauheni Kaliuta) [1700846] - [include] bpf: promote bpf_perf_event.h to mandatory UAPI header (Yauheni Kaliuta) [1700846] - [net] bpf: Avoid unnecessary instruction in convert_bpf_ld_abs() (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix check of allowed specifiers in bpf_trace_printk (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: Document Jump X addressing mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix license for a compat header file (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Capitalise document heading (Yauheni Kaliuta) [1700846] - [documentation] docs: Add bpf/index to top level index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Add toctree to index (Yauheni Kaliuta) [1700846] - [documentation] docs: bpf: Rename README.rst to index.rst (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported map types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip verifier tests for unsupported program types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: skip sockmap in test_maps if kernel doesn't have support (Yauheni Kaliuta) [1700846] - [rpmspec] rpmspec: pack bpf-helpers, bpftool-net, bpftool-feature manpages (Yauheni Kaliuta) [1700846] - [net] bpf, tcp: correctly handle DONT_WAIT flags and timeo == 0 (Yauheni Kaliuta) [1700846] - [kernel] bpf: mark bpf_event_notify and bpf_event_init as static (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap fix msg->sg.size account on ingress skb (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap remove duplicate queue free (Yauheni Kaliuta) [1700846] - [net] net/tls: remove set but not used variables (Yauheni Kaliuta) [1700846] - [media] bpf: add map helper functions push, pop, peek in more BPF programs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix infinite loop in map create (Yauheni Kaliuta) [1700846] - [net] net/tls: fix build without CONFIG_TLS_DEVICE (Yauheni Kaliuta) [1700846] - [net] net/tls: don't leak partially sent record in device mode (Yauheni Kaliuta) [1700846] - [net] xdp: fix cpumap redirect SKB creation bug (Yauheni Kaliuta) [1700846] - [net] net/core: Document reuseport_add_sock() bind_inany argument (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: clarify bump in libbpf version info (Yauheni Kaliuta) [1700846] - [net] net/tls: Inform user space about send buffer availability (Yauheni Kaliuta) [1700846] - [tools] libbpf: handle BTF parsing and loading properly (Yauheni Kaliuta) [1700846] - [net] bpf: fix warning about using plain integer as NULL (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: fixing leak when kernel does not support btf (Yauheni Kaliuta) [1700846] - [net] tls: Fix write space handling (Yauheni Kaliuta) [1700846] - [net] tls: Fix tls_device handling of partial records (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, fix documentation for attach types (Yauheni Kaliuta) [1700846] - [tools] btf: separate btf creation and loading (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a selftest test_btf failure (Yauheni Kaliuta) [1700846] - [tools] selftests/btf: add initial BTF dedup tests (Yauheni Kaliuta) [1700846] - [tools] btf: add BTF types deduplication algorithm (Yauheni Kaliuta) [1700846] - [tools] btf: extract BTF type size calculation (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: silence a libbpf unnecessary warning (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: implement libbpf btf__get_map_kv_tids() API function (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: expose functions btf_ext__* as API functions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a support for getting xdp prog id on ifindex (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add a helper for retrieving a map fd for a given name (Yauheni Kaliuta) [1700846] - [tools] libbpf: introduce bpf_map_lookup_elem_flags() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add bash completion for bpftool probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for a network device (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add C-style "#define" output for probes (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF helper functions (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF map types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for eBPF program types (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for kernel configuration options (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add probes for /proc/ eBPF parameters (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add basic probe capability, probe syscall availability (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: print out btf log at LIBBPF_WARN level (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move libbpf pr_* debug print functions to headers (Yauheni Kaliuta) [1700846] - [net] net: tls: Fix deadlock in free_resources tx (Yauheni Kaliuta) [1700846] - [net] net: tls: Save iv in tls_rec for async crypto requests (Yauheni Kaliuta) [1700846] - [tools] bpf: pull in pkt_sched.h header for tooling to fix bpftool build (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: change section name of bpfilter UMH blob (Yauheni Kaliuta) [1700846] - [netdrv] tap: call skb_probe_transport_header after setting skb->dev (Yauheni Kaliuta) [1700846] - [net] Prevent overflow of sk_msg in sk_msg_clone() (Yauheni Kaliuta) [1700846] - [net] tls: Do not call sk_memcopy_from_iter with zero length (Yauheni Kaliuta) [1700846] - [net] net: ipv4: Set skb->dev for output route resolution (Yauheni Kaliuta) [1700846] - [net] bpf: refactor bpf_test_run() to separate own failures and test program result (Yauheni Kaliuta) [1700846] - [include] bpf: fix pointer offsets in context for 32 bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: copy a few net uapi headers to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: tcp_bpf_recvmsg should return EAGAIN when nonblocking and no data (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, fix psock create on existing kcm/tls port (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove socket lock assertion on ULP cleanup (Yauheni Kaliuta) [1700846] - [lib] bpf: test_bpf: add init_net to dev for flow_dissector (Yauheni Kaliuta) [1700846] - [net] flow_dissector: lookup netns by skb->sk if skb->dev is NULL (Yauheni Kaliuta) [1700846] - [net] tls: Fixed uninitialised vars warning (Yauheni Kaliuta) [1700846] - [include] cgroup: Simplify cgroup_ancestor (Yauheni Kaliuta) [1700846] - [netdrv] veth: Orphan skb before GRO (Yauheni Kaliuta) [1700846] - [net] net/core/filter: fix unused-variable warning (Yauheni Kaliuta) [1700846] - [net] bpf: fix build error with clang (Yauheni Kaliuta) [1700846] - [netdrv] veth: Free queues on link delete (Yauheni Kaliuta) [1700846] - [net] bpf: fix sanitation rewrite in case of non-pointers (Yauheni Kaliuta) [1700846] - [net] bpf: drop refcount if bpf_map_new_fd() fails in map_create() (Yauheni Kaliuta) [1700846] - [net] bpf: decrease usercnt if bpf_map_new_fd() fails in bpf_map_get_fd_by_id() (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: fix lookup bug in map_delete_elem (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in stackmap (Yauheni Kaliuta) [1700846] - [net] bpf: Fix narrow load on a bpf_sock returned from sk_lookup() (Yauheni Kaliuta) [1700846] - [net] bpf: Fix syscall's stackmap lookup potential deadlock (Yauheni Kaliuta) [1700846] - [kernel] bpf: fix potential deadlock in bpf_prog_register (Yauheni Kaliuta) [1700846] - [net] bpf: fix lockdep false positive in percpu_freelist (Yauheni Kaliuta) [1700846] - [net] bpf: run bpf programs with preemption disabled (Yauheni Kaliuta) [1700846] - [tools] bpf, selftests: fix handling of sparse CPU allocations (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix test_btf for typedef func_proto case (Yauheni Kaliuta) [1700846] - [net] bpf: btf: allow typedef func_proto (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix crash with un-owned prog arrays (Yauheni Kaliuta) [1700846] - [tools] bpftool: fix percpu maps updating (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: Cleanup license mess (Yauheni Kaliuta) [1700846] - [net] bpf: Annotate implicit fall through in cgroup_dev_func_proto (Yauheni Kaliuta) [1700846] - [net] bpf: Make function btf_name_offset_valid static (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: retry tests that expect build-id (Yauheni Kaliuta) [1700846] - [net] bpf: zero out build_id for BPF_STACK_BUILD_ID_IP (Yauheni Kaliuta) [1700846] - [net] bpf: don't assume build-id length is always 20 bytes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: properly account for libbfd variations (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry loading program on EAGAIN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: workaround clang asm goto compilation errors (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: install with_tunnels.sh for test_flow_dissector.sh (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: disallow to remove bpfilter module while being used (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Fix type cast and pointer warnings (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: restart bpfilter_umh when error occurred (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use cleanup callback to release umh_info (Yauheni Kaliuta) [1700846] - [kernel] umh: add exit routine for UMH process (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: Set user mode helper's command line (Yauheni Kaliuta) [1700846] - [kernel] umh: Add command line to user mode helpers (Yauheni Kaliuta) [1700846] - [net] net: bpfilter: use get_pid_task instead of pid_task (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpftool map dump with bitfields (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test btf bitfield with >=256 struct member offset (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs bitfield pretty print (Yauheni Kaliuta) [1700846] - [net] bpf: fix panic in stack_map_get_build_id() on i386 and arm32 (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install files tcp_(server|client)*.py (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: user proper argument index (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] bpf, doc: add note for libbpf's stand-alone build (Yauheni Kaliuta) [1700846] - [documentation] bpf, doc: update design qa to reflect kern_version requirement (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix incorrect users of create_and_get_cgroup (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases for alu op on mixed dst register types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Fix [::] -> [::1] rewrite in sys_sendmsg (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to selftests (Yauheni Kaliuta) [1700846] - [net] bpf: fix check_map_access smin_value test when pointer contains offset (Yauheni Kaliuta) [1700846] - [net] bpf: restrict stack pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: restrict map value pointer arithmetic for unprivileged (Yauheni Kaliuta) [1700846] - [net] bpf: enable access to ax register also from verifier rewrite (Yauheni Kaliuta) [1700846] - [net] bpf: move tmp variable into ax register in interpreter (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix error printing in test_devmap() (Yauheni Kaliuta) [1700846] - [tools] bpf: fix segfault in test_verifier selftest (Yauheni Kaliuta) [1700846] - [net] bpf: tls_sw, init TLS ULP removes BPF proto hooks (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, sock{map|hash} redirect through ULP (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, zap ingress queue on psock down (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, fix socket data_ready events (Yauheni Kaliuta) [1700846] - [net] bpf: skb_verdict, support SK_PASS on RX BPF path (Yauheni Kaliuta) [1700846] - [net] bpf: skmsg, replace comments with BUILD bug (Yauheni Kaliuta) [1700846] - [net] bpf: sk_msg, improve offset chk in _is_valid_access (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, fix sk_msg_md access past end test (Yauheni Kaliuta) [1700846] - [net] bpf/cpumap: make sure frame_size for build_skb is aligned if headroom isn't (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: reorder stack size check with dead code sanitization (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: verifier: add tests for JSET interpretation (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: teach the verifier to reason about the BPF_JSET instruction (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add trivial JSET tests (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_LD_IMM64 to the line_info test (Yauheni Kaliuta) [1700846] - [net] bpf: Ensure line_info.insn_off cannot point to insn with zero code (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: do not force gcc as CC (Yauheni Kaliuta) [1700846] - [tools] bpf: fix up uapi helper description and sync bpf header with tools (Yauheni Kaliuta) [1700846] - [net] bpf: log struct/union attribute for forward type (Yauheni Kaliuta) [1700846] - [tools] bpf: sk_msg, add tests for size field (Yauheni Kaliuta) [1700846] - [tools] bpf: add tools lib/include support sk_msg_md size field (Yauheni Kaliuta) [1700846] - [include] bpf: sockmap, metadata support for reporting size of msg (Yauheni Kaliuta) [1700846] - [net] bpf: correct slot_type marking logic to allow more stack slot sharing (Yauheni Kaliuta) [1700846] - [kernel] bpf: support raw tracepoints in modules (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add an option to prevent auto-mount of bpffs, tracefs (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: attempt to mount tracefs if required for tracelog cmd (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: check precise {func, line, jited_line}_info_rec_size in test_btf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: fix memleak by freeing line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: support pretty print with kind_flag set (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: refactor btf_dumper_int_bits() (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: test kernel bpffs map pretty print with struct kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add test_btf unit tests for kind_flag (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync btf.h header from kernel to tools (Yauheni Kaliuta) [1700846] - [net] bpf: enable cgroup local storage map pretty print with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix struct/union/fwd types with kind_flag (Yauheni Kaliuta) [1700846] - [net] bpf: btf: refactor btf_int_bits_seq_show() (Yauheni Kaliuta) [1700846] - [net] bpf: remove useless version check for prog load (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix -Wmissing declaration warnings (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix warning on struct bpf_prog_linfo definition (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a prog array map update example to documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix examples in documentation for bpftool prog (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add doc for -m option to bpftool-prog.rst (Yauheni Kaliuta) [1700846] - [net] bpf: add self-check logic to liveness analysis (Yauheni Kaliuta) [1700846] - [net] bpf: improve stacksafe state comparison (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: check insn processed in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: speed up stacksafe check (Yauheni Kaliuta) [1700846] - [net] bpf: verbose log bpf_line_info in verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Create a new btf_name_by_offset() for non type name use case (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix sk lookup usage in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: remove obsolete prog->aux sanitation in bpf_insn_prepare_dump (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: make sure callees don't prune with caller differences (Yauheni Kaliuta) [1700846] - [tools] bpf: sync tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: include sub program tags in bpf_prog_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Remove !func_info and !line_info check from test_btf and bpftool (Yauheni Kaliuta) [1700846] - [net] bpf: Remove bpf_dump_raw_ok() check for func_info and line_info (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: dual license all files (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: replace Netronome boilerplate with SPDX license headers (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix SPDX format in headers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add btf annotations for cgroup_local_storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for cgroup local storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: pass struct btf pointer to the map_check_btf() callback (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use __bpf_constant_htons in test_prog.c (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K (Yauheni Kaliuta) [1700846] - [arm64] bpf: arm64: Enable arm64 jit to provide bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: use proper type when passing prog_type (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: rename *_info_cnt to nr_*_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: rename *_info_cnt to nr_*_info in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: clean up bpf_prog_get_info_by_fd() (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool: Fix newline and p_err issue (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing pointer dereference for map stacktrace fixup (Yauheni Kaliuta) [1700846] - [net] bpf: relax verifier restriction on BPF_MOV | BPF_ALU (Yauheni Kaliuta) [1700846] - [tools] media: bpf: add bpf function to report mouse movement (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: bpftool: Print bpf_line_info during prog dump (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Add btf_line_info support to libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Refactor and bug fix on the bpf_func_info loading logic (Yauheni Kaliuta) [1700846] - [tools] bpf: Add unit tests for bpf_line_info (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor and bug fix in test_func_type in test_btf.c (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: Add bpf_line_info support (Yauheni Kaliuta) [1700846] - [net] net/flow_dissector: correctly cap nhoff and thoff in case of BPF (Yauheni Kaliuta) [1700846] - [net] selftests/bpf: use thoff instead of nhoff in BPF flow dissector (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: update testcases for BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: verifier remove the rejection on BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [net] bpf: interpreter support BPF_ALU | BPF_ARSH (Yauheni Kaliuta) [1700846] - [s390] s390: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [powerpc] ppc: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Yauheni Kaliuta) [1700846] - [tools] bpf: Expect !info.func_info and insn_off name changes in test_btf/libbpf/bpftool (Yauheni Kaliuta) [1700846] - [tools] bpf: tools: Sync uapi bpf.h for the name changes in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Change insn_offset to insn_off in bpf_func_info (Yauheni Kaliuta) [1700846] - [net] bpf: Improve the info.func_info and info.func_info_rec_size behavior (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add a command to dump the trace pipe (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: don't allocate BPF JIT programs in module memory (Yauheni Kaliuta) [1700846] - [net] bpf: add __weak hook for allocating executable memory (Yauheni Kaliuta) [1700846] - [net] bpf: add per-insn complexity limit (Yauheni Kaliuta) [1700846] - [net] bpf: improve verifier branch analysis (Yauheni Kaliuta) [1700846] - [net] bpf: check pending signals while verifying programs (Yauheni Kaliuta) [1700846] - [tools] selftests: add a test for bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] libbpf: add bpf_prog_test_run_xattr (Yauheni Kaliuta) [1700846] - [tools] tools: sync uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [net] bpf: respect size hint to BPF_PROG_TEST_RUN if present (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: seg fault with NULL pointer arg (Yauheni Kaliuta) [1700846] - [powerpc] bpf: powerpc64: optimize JIT passes for bpf function calls (Yauheni Kaliuta) [1700846] - [tools] bpf: allow BPF read access to qdisc pkt_len (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix license in README.rst (Yauheni Kaliuta) [1700846] - [net] bpf: Fix memleak in aux->func_info and aux->btf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: get ifindex from ifname (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: improve xdp1 example (Yauheni Kaliuta) [1700846] - [tools] bpf: Apply F_NEEDS_EFFICIENT_UNALIGNED_ACCESS to more ACCEPT test cases (Yauheni Kaliuta) [1700846] - [tools] bpf: Make more use of 'any' alignment in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Adjust F_NEEDS_EFFICIENT_UNALIGNED_ACCESS handling in test_verifier.c (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_F_ANY_ALIGNMENT (Yauheni Kaliuta) [1700846] - [tools] bpf: Improve socket lookup reuseport documentation (Yauheni Kaliuta) [1700846] - [tools] bpf: Support sk lookup in netns with id 0 (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix verifier log string check for bad alignment (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add owner_prog_type and owner_jited to bpftool output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: mark offloaded programs more explicitly in plain output (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for new map types (queue and stack) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix bash completion for bpftool prog (attach|detach) (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use "/proc/self/" i.o. crafting links with getpid() (Yauheni Kaliuta) [1700846] - [arm64] arm64/bpf: use movn/movk/movk sequence to generate kernel addresses (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: make libbpf _GNU_SOURCE friendly (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix a bitfield pretty print issue (Yauheni Kaliuta) [1700846] - [tools] bpf: Fix various lib and testsuite build failures on 32-bit (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add addition type tests to test_btf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix two test_btf unit test cases (Yauheni Kaliuta) [1700846] - [net] bpf: btf: check name validity for various types (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragment CONFIG_FTRACE_SYSCALLS (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap, add options for msg_pop_data() helper (Yauheni Kaliuta) [1700846] - [tools] bpf: add msg_pop_data helper to tools (Yauheni Kaliuta) [1700846] - [tools] libbpf: Document API and ABI conventions (Yauheni Kaliuta) [1700846] - [tools] libbpf: Verify versioned symbols (Yauheni Kaliuta) [1700846] - [tools] libbpf: Add version script for DSO (Yauheni Kaliuta) [1700846] - [tools] libbpf: Name changing for btf_get_from_id (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: change selftest test_btf for both jit and non-jit (Yauheni Kaliuta) [1700846] - [net] bpf: btf: support proper non-jit func info (Yauheni Kaliuta) [1700846] - [arm64] bpf, arm64: fix getting subprog addr from aux for calls (Yauheni Kaliuta) [1700846] - [net] bpf, ppc64: generalize fetching subprog into bpf_jit_get_func_addr (Yauheni Kaliuta) [1700846] - [tools] bpf: align map type names formatting (Yauheni Kaliuta) [1700846] - [net] bpf: btf: fix spelling mistake "Memmber" -> "Member" (Yauheni Kaliuta) [1700846] - [net] bpf, tags: Fix DEFINE_PER_CPU expansion (Yauheni Kaliuta) [1700846] - [tools] bpf: Add BPF_MAP_TYPE_QUEUE and BPF_MAP_TYPE_STACK to bpftool-map (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: fix: error handling regarding kprobe_events (Yauheni Kaliuta) [1700846] - [tools] libbpf: make bpf_object__open default to UNSPEC (Yauheni Kaliuta) [1700846] - [tools] bpf: add skb->tstamp r/w access from tc clsact and cg skb progs (Yauheni Kaliuta) [1700846] - [net] bpf: fix integer overflow in queue_stack_map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix spelling mistake "memeory" -> "memory" (Yauheni Kaliuta) [1700846] - [net] bpf, lpm: make longest_prefix_match() faster (Yauheni Kaliuta) [1700846] - [tools] bpf: adding tests for map_in_map helpber in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: adding support for map in map in libbpf (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: don't specify prog name if kernel doesn't support it (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: remove map name retry from bpf_create_map_xattr (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: introduce bpf_object__probe_caps to test BPF capabilities (Yauheni Kaliuta) [1700846] - [tools] libbpf: make sure bpf headers are c++ include-able (Yauheni Kaliuta) [1700846] - [tools] bpf: fix a libbpf loader issue (Yauheni Kaliuta) [1700846] - [include] bpf: fix a compilation error when CONFIG_BPF_SYSCALL is not defined (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add support for func types (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: enhance test_btf file testing to test func info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: refactor to implement btf_get_from_id() in lib/bpf (Yauheni Kaliuta) [1700846] - [samples] tools/bpf: do not use pahole if clang/llvm can generate BTF sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add support to read .BTF.ext sections (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: extends test_btf to test load/retrieve func_type info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add new fields for program load in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: sync kernel uapi bpf.h header to tools directory (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce bpf_func_info (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Add tests for BTF_KIND_FUNC_PROTO and BTF_KIND_FUNC (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: Sync kernel btf.h header (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Add BTF_KIND_FUNC and BTF_KIND_FUNC_PROTO (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Break up btf_type_is_void() (Yauheni Kaliuta) [1700846] - [tools] tools: add selftest for BPF_F_ZERO_SEED (Yauheni Kaliuta) [1700846] - [tools] tools: sync linux/bpf.h (Yauheni Kaliuta) [1700846] - [include] bpf: move BPF_F_QUERY_EFFECTIVE after map flags (Yauheni Kaliuta) [1700846] - [net] bpf: allow zero-initializing hash map seed (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: retry map creation without the name (Yauheni Kaliuta) [1700846] - [net] bpf: allocate local storage buffers using GFP_ATOMIC (Yauheni Kaliuta) [1700846] - [net] bpf: fix off-by-one error in adjust_subprog_starts (Yauheni Kaliuta) [1700846] - [net] bpf: fix null pointer dereference on pointer offload (Yauheni Kaliuta) [1700846] - [tools] bpftool: make libbfd optional (Yauheni Kaliuta) [1700846] - [net] net/bpf: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [powerpc] net/bpf_jit: PPC: split VLAN_PRESENT bit handling from VLAN_TCI (Yauheni Kaliuta) [1700846] - [net] net/skbuff: add macros for VLAN_PRESENT bit (Yauheni Kaliuta) [1700846] - [tools] selftest/bpf: Use bpf_sk_lookup_{tcp, udp} in test_sock_addr (Yauheni Kaliuta) [1700846] - [net] bpf: Support socket lookup in CGROUP_SOCK_ADDR progs (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte order in bpf_sk_lookup_udp (Yauheni Kaliuta) [1700846] - [net] bpf: Extend the sk_lookup() helper to XDP hookpoint (Yauheni Kaliuta) [1700846] - [net] bpf: helper to pop data from messages (Yauheni Kaliuta) [1700846] - [net] bpf: fix wrong helper enablement in cgroup local storage (Yauheni Kaliuta) [1700846] - [include] bpf: sk_msg program helper bpf_msg_push_data (Yauheni Kaliuta) [1700846] - [net] bpf: Fix IPv6 dport byte-order in bpf_sk_lookup (Yauheni Kaliuta) [1700846] - [net] bpf: Allow sk_lookup with IPv6 module (Yauheni Kaliuta) [1700846] - [net] net: core: Fix build with CONFIG_IPV6=m (Yauheni Kaliuta) [1700846] - [net] bpf: Fix dev pointer dereference from sk_skb (Yauheni Kaliuta) [1700846] - [net] bpf: fix building without CONFIG_INET (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf: Fix bpf_program__next() API (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix uninitialized duration warning (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 for bpf_sock_addr (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test narrow loads with off > 0 in test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Allow narrow loads with offset > 0 (Yauheni Kaliuta) [1700846] - [tools] bpftool: support loading flow dissector (Yauheni Kaliuta) [1700846] - [tools] bpftool: add pinmaps argument to the load/loadall (Yauheni Kaliuta) [1700846] - [tools] bpftool: add loadall command (Yauheni Kaliuta) [1700846] - [tools] libbpf: add internal pin_name (Yauheni Kaliuta) [1700846] - [tools] libbpf: bpf_program__pin: add special case for instances.nr == 1 (Yauheni Kaliuta) [1700846] - [tools] libbpf: cleanup after partial failure in bpf_object__pin (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: rename flow dissector section to flow_dissector (Yauheni Kaliuta) [1700846] - [netdrv] bpf: do not pass netdev to translate() and prepare() offload callbacks (Yauheni Kaliuta) [1700846] - [net] bpf: pass prog instead of env to bpf_prog_offload_verifier_prep() (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass destroy() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [include] bpf: pass translate() as a callback and remove its ndo_bpf subcommand (Yauheni Kaliuta) [1700846] - [netdrv] bpf: call verifier_prep from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call finalize() from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [net] bpf: call verify_insn from its callback in struct bpf_offload_dev (Yauheni Kaliuta) [1700846] - [netdrv] bpf: pass a struct with offload callbacks to bpf_offload_dev_create() (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary when it exists (Yauheni Kaliuta) [1700846] - [tools] bpftool: Improve handling of ENOENT on map dumps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a test case for sock_ops perf-event notification (Yauheni Kaliuta) [1700846] - [net] bpf: add perf event notificaton support for sock_ops (Yauheni Kaliuta) [1700846] - [net] bpf: let verifier to calculate and record max_pkt_offset (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: update references to other man pages in documentation (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: pass an argument to silence open_obj_pinned() (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix plain output and doc for --bpffs option (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: prevent infinite loop in get_fdinfo() (Yauheni Kaliuta) [1700846] - [samples] bpf_load: add map name to load_maps error message (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: adjust rlimit RLIMIT_MEMLOCK when loading programs, maps (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: enable (uncomment) all tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpf_prog_get_info_by_fd to return 0 func_lens for unpriv (Yauheni Kaliuta) [1700846] - [net] bpf: show main program address and length in bpf_prog_info (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited address in bpf_prog_info->jited_ksyms (Yauheni Kaliuta) [1700846] - [net] bpf: show real jited prog address in /proc/kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: test make sure to run unpriv test cases in test_verifier (Yauheni Kaliuta) [1700846] - [tools] bpf: add various test cases to test_verifier (Yauheni Kaliuta) [1700846] - [net] bpf: don't set id on after map lookup with ptr_to_map_val return (Yauheni Kaliuta) [1700846] - [tools] libbpf: Fix compile error in libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] kselftests/bpf: use ping6 as the default ipv6 ping binary if it exists (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add unlimited rlimit for flow_dissector_load (Yauheni Kaliuta) [1700846] - [net] bpf: add bpf_jit_limit knob to restrict unpriv allocations (Yauheni Kaliuta) [1700846] - [net] bpf: make direct packet write unclone more robust (Yauheni Kaliuta) [1700846] - [net] bpf: fix leaking uninitialized memory on pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet write into pop/peek helpers (Yauheni Kaliuta) [1700846] - [net] bpf: fix cg_skb types to hint access type in may_access_direct_pkt_data (Yauheni Kaliuta) [1700846] - [net] bpf: fix direct packet access for flow dissector progs (Yauheni Kaliuta) [1700846] - [net] bpf: disallow direct packet access for unpriv in cg_skb (Yauheni Kaliuta) [1700846] - [tools] bpf: fix test suite to enable all unpriv program types (Yauheni Kaliuta) [1700846] - [net] bpf, btf: fix a missing check bug in btf_parse (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add config fragments BPF_STREAM_PARSER and XDP_SOCKETS (Yauheni Kaliuta) [1700846] - [net] bpf: devmap: fix wrong interface selection in notifier_call (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: fix completion for "bpftool map update" (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: print nb of cmds to stdout (not stderr) for batch mode (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: document restriction on '.' in names to pin in bpffs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix return value comparison for tests in test_libbpf.sh (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: simplify and cleanup perf ring buffer walk (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: avoid retpoline for map push/pop/peek operation (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: remove unneeded flow key in check_helper_mem_access (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: reject xadd on flow key memory (Yauheni Kaliuta) [1700846] - [net] bpf, verifier: fix register type dump in xadd and st (Yauheni Kaliuta) [1700846] - [net] ulp: remove uid and user_visible members (Yauheni Kaliuta) [1700846] - [tools] bpf: test_sockmap add options to use msg_push_data (Yauheni Kaliuta) [1700846] - [tools] bpf: libbpf support for msg_push_data (Yauheni Kaliuta) [1700846] - [tools] Sync uapi/bpf.h to tools/include (Yauheni Kaliuta) [1700846] - [net] bpf: add tests for direct packet access from CGROUP_SKB (Yauheni Kaliuta) [1700846] - [net] bpf: add cg_skb_is_valid_access for BPF_PROG_TYPE_CGROUP_SKB (Yauheni Kaliuta) [1700846] - [tools] bpf, libbpf: use correct barriers in perf ring buffer walk (Yauheni Kaliuta) [1700846] - [tools] tools, perf: add and use optimized ring_buffer_{read_head, write_tail} helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add test cases for queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf: add MAP_LOOKUP_AND_DELETE_ELEM syscall (Yauheni Kaliuta) [1700846] - [net] bpf: add queue and stack maps (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: add ARG_PTR_TO_UNINIT_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf/syscall: allow key to be null in map functions (Yauheni Kaliuta) [1700846] - [net] bpf: rename stack trace map operations (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: use 4 context mode for the NFP disasm (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix file resource leak in load_kallsyms (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap, add msg_peek tests to test_sockmap (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, support for msg_peek in sk_msg with redirect ingress (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix skmsg recvmsg handler to track size correctly (Yauheni Kaliuta) [1700846] - [include] bpf: skmsg, improve sk_msg_used_element to work in cork context (Yauheni Kaliuta) [1700846] - [tools] libbpf: Per-symbol visibility for DSO (Yauheni Kaliuta) [1700846] - [tools] bpf, tls: add tls header to tools infrastructure (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: add map create command (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add flag to allow non-compat map definitions (Yauheni Kaliuta) [1700846] - [tools] bpf: bpftool, add support for attaching programs to maps (Yauheni Kaliuta) [1700846] - [maintainers] bpf, doc: add maintainers entry to related files (Yauheni Kaliuta) [1700846] - [tools] bpf: add tls support for testing in test_sockmap (Yauheni Kaliuta) [1700846] - [net] tls: add bpf support to sk_msg handling (Yauheni Kaliuta) [1700846] - [net] tls: replace poll implementation with read hook (Yauheni Kaliuta) [1700846] - [net] tls: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: convert to generic sk_msg interface (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: remove ulp bits from sockmap (Yauheni Kaliuta) [1700846] - [net] tcp, ulp: enforce sock_owned_by_me upon ulp init and cleanup (Yauheni Kaliuta) [1700846] - [net] net/tls: Make function get_rec() static (Yauheni Kaliuta) [1700846] - [net] net/tls: Mark the end in scatterlist table (Yauheni Kaliuta) [1700846] - [net] tls: Fixed a memory leak during socket close (Yauheni Kaliuta) [1700846] - [net] net/tls: Removed redundant checks for non-NULL (Yauheni Kaliuta) [1700846] - [net] tls: Add support for inplace records encryption (Yauheni Kaliuta) [1700846] - [net] tls: Remove redundant vars from tls record structure (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed race condition in async encryption (Yauheni Kaliuta) [1700846] - [net] tls: Fix socket mem accounting error under async encryption (Yauheni Kaliuta) [1700846] - [net] net/tls: Add support for async encryption of records for performance (Yauheni Kaliuta) [1700846] - [net] tls: Remove dead code in tls_sw_sendmsg (Yauheni Kaliuta) [1700846] - [net] net/tls: Fixed return value when tls_complete_pending_work() fails (Yauheni Kaliuta) [1700846] - [net] bpf: wait for running BPF programs when updating map-in-map (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: install script with_addr.sh (Yauheni Kaliuta) [1700846] - [tools] selftests: bpf: add config fragment LWTUNNEL (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: use proper type and uapi perf_event.h header for libbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add XDP selftests for modifying and popping VLAN headers (Yauheni Kaliuta) [1700846] - [tools] bpf: make TC vlan bpf_helpers avail to selftests (Yauheni Kaliuta) [1700846] - [net] net: fix generic XDP to handle if eth header was mangled (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, check bpf_map_lookup_elem access in bpf prog (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test_verifier, change names of fixup maps (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, print strerror when map lookup error occurs (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, split the function do_dump() (Yauheni Kaliuta) [1700846] - [net] bpf: return EOPNOTSUPP when map lookup isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: error handling when map_lookup_elem isn't supported (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix a missing check bug (Yauheni Kaliuta) [1700846] - [net] bpf: allow offload of programs with BPF-to-BPF function calls (Yauheni Kaliuta) [1700846] - [net] bpf: add verifier callback to get stack usage info for offloaded progs (Yauheni Kaliuta) [1700846] - [tools] libbpf: relicense libbpf as LGPL-2.1 OR BSD-2-Clause (Yauheni Kaliuta) [1700846] - [samples] bpf, tracex3_user: erase "ARRAY_SIZE" redefined (Yauheni Kaliuta) [1700846] - [tools] libbpf: Use __u32 instead of u32 in bpf_program__load (Yauheni Kaliuta) [1700846] - [tools] libbpf: Make include guards consistent (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in str_error.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in nlattr.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Consistent prefixes for interfaces in libbpf.h (Yauheni Kaliuta) [1700846] - [tools] libbpf: Move __dump_nlmsg_t from API to implementation (Yauheni Kaliuta) [1700846] - [documentation] Documentation: Describe bpf reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add C tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support loading individual progs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add tests for reference tracking (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Generalize dummy program types (Yauheni Kaliuta) [1700846] - [tools] bpf: Add helper to retrieve socket in BPF (Yauheni Kaliuta) [1700846] - [include] bpf: Introduce bpf_skb_ancestor_cgroup_id helper (Yauheni Kaliuta) [1700846] - [tools] bpf: sync include/uapi/linux/bpf.h to tools/include/uapi/linux/bpf.h (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h uapi with tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h uapi to tools/ (Yauheni Kaliuta) [1700846] - [tools] bpf: sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add reference tracking to verifier (Yauheni Kaliuta) [1700846] - [net] bpf: Macrofy stack state copy (Yauheni Kaliuta) [1700846] - [include] bpf: Add PTR_TO_SOCKET verifier type (Yauheni Kaliuta) [1700846] - [net] bpf: Generalize ptr_or_null regs check (Yauheni Kaliuta) [1700846] - [net] bpf: Reuse canonical string formatter for ctx errs (Yauheni Kaliuta) [1700846] - [net] bpf: Add iterator for spilled registers (Yauheni Kaliuta) [1700846] - [net] bpf: don't accept cgroup local storage with zero value size (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: cgroup local storage-based network counters (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: extend the storage test to test per-cpu cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier per-cpu cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for PERCPU_CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of per-cpu cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf: introduce per-cpu cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: rework cgroup storage pointer passing (Yauheni Kaliuta) [1700846] - [net] bpf: extend cgroup bpf core to allow multiple cgroup storage types (Yauheni Kaliuta) [1700846] - [net] bpf/test_run: support cgroup local storage (Yauheni Kaliuta) [1700846] - [net] bpf: harden flags check in cgroup_storage_update_elem() (Yauheni Kaliuta) [1700846] - [net] bpf: permit CGROUP_DEVICE programs accessing helper bpf_get_current_cgroup_id() (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test libbpf_{prog,attach}_type_by_name (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Use libbpf_attach_type_by_name in test_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support sk_skb/stream_{parser, verdict} section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Support cgroup_skb/{e,in}gress section names (Yauheni Kaliuta) [1700846] - [tools] libbpf: Introduce libbpf_attach_type_by_name (Yauheni Kaliuta) [1700846] - [tools] bpftool: Fix bpftool net output (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for BPF_MAP_TYPE_REUSEPORT_SOCKARRAY maps (Yauheni Kaliuta) [1700846] - [tools] bpf: test_maps, only support ESTABLISHED socks (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, fix transition through disconnect without close (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap only allow ESTABLISHED sock state (Yauheni Kaliuta) [1700846] - [net] bpf: remove redundant null pointer check before consume_skb (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix compilation failure (Yauheni Kaliuta) [1700846] - [net] flow_dissector: fix build failure without CONFIG_NET (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: fix a compilation failure (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: remove duplicated includes (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: improve output format for bpftool net (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix bpf_flow.c build (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: test bpf flow dissection (Yauheni Kaliuta) [1700846] - [tools] flow_dissector: implements eBPF parser (Yauheni Kaliuta) [1700846] - [tools] bpf: support flow dissector in libbpf and bpftool (Yauheni Kaliuta) [1700846] - [include] flow_dissector: implements flow dissector BPF hook (Yauheni Kaliuta) [1700846] - [net] bpf: btf: Fix end boundary calculation for type section (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix a netlink recv issue (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: support prog array map and map of maps (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for program array map (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add net support (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add more netlink functionalities in lib/bpf (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: move bpf/lib netlink related functions into a new file (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf/test_progs: do not check errno == 0 (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add missing executables to .gitignore (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: fix verifier instability (Yauheni Kaliuta) [1700846] - [net] bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool, add xskmap in map types (Yauheni Kaliuta) [1700846] - [tools] bpf: add selftest for bpf's (set|get)_sockopt for SAVE_SYN (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: xdpsock, minor fixes (Yauheni Kaliuta) [1700846] - [samples] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN sample program (Yauheni Kaliuta) [1700846] - [net] bpf: add TCP_SAVE_SYN/TCP_SAVED_SYN options for bpf_(set|get)sockopt (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: bpftool: add btf percpu map formated dump (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs percpu map pretty print tests in test_btf (Yauheni Kaliuta) [1700846] - [net] bpf: add bpffs pretty print for percpu arraymap/hash/lru_hash (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: display non-spill stack slot types in print_verifier_state (Yauheni Kaliuta) [1700846] - [tools] bpf: use --cgroup in test_suite if supplied (Yauheni Kaliuta) [1700846] - [tools] bpf: sockmap test remove shutdown() calls (Yauheni Kaliuta) [1700846] - [net] bpf: remove duplicated include from syscall.c (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap, decrement copied count correctly in redirect error case (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix potential use after free in bpf_tcp_close (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: return from do_event_pipe() on bad arguments (Yauheni Kaliuta) [1700846] - [net] bpf: use per htab salt for bucket hash (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: write_space events need to be passed to TCP handler (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock hash count in alloc_sock_hash_elem (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys (Yauheni Kaliuta) [1700846] - [net] bpf: fix redirect to map under tail calls (Yauheni Kaliuta) [1700846] - [netdrv] veth: Support per queue XDP ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add XDP TX and REDIRECT (Yauheni Kaliuta) [1700846] - [net] xdp: Helpers for disabling napi_direct of xdp_return_frame (Yauheni Kaliuta) [1700846] - [net] bpf: Make redirect_info accessible from modules (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add ndo_xdp_xmit (Yauheni Kaliuta) [1700846] - [netdrv] veth: Handle xdp_frames in xdp napi ring (Yauheni Kaliuta) [1700846] - [netdrv] veth: Avoid drops by oversized packets when XDP is enabled (Yauheni Kaliuta) [1700846] - [netdrv] veth: Add driver XDP (Yauheni Kaliuta) [1700846] - [net] net: Export skb_headers_offset_update (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: fix bpf selftest test_cgroup_storage failure (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix map elem deletion race with smap_stop_sock (Yauheni Kaliuta) [1700846] - [net] bpf, sockmap: fix leakage of smap_psock_map_entry (Yauheni Kaliuta) [1700846] - [net] bpf: fix a rcu usage warning in bpf_prog_array_copy_core() (Yauheni Kaliuta) [1700846] - [tools] bpf: test: fix spelling mistake "REUSEEPORT" -> "REUSEPORT" (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Selftest for bpf_skb_ancestor_cgroup_id (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add cgroup id helpers to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [net] bpf: decouple btf from seq bpf fs dump and enable more maps (Yauheni Kaliuta) [1700846] - [tools] bpf: Test BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [tools] bpf: test BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [tools] bpf: Refactor ARRAY_SIZE macro to bpf_util.h (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_PROG_TYPE_SK_REUSEPORT (Yauheni Kaliuta) [1700846] - [net] bpf: Introduce BPF_MAP_TYPE_REUSEPORT_SOCKARRAY (Yauheni Kaliuta) [1700846] - [net] net: Add ID (if needed) to sock_reuseport and expose reuseport_lock (Yauheni Kaliuta) [1700846] - [tools] tools/bpf: add bpffs pretty print btf test for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: btf: add pretty print for hash/lru_hash maps (Yauheni Kaliuta) [1700846] - [net] bpf: fix bpffs non-array map seq_show issue (Yauheni Kaliuta) [1700846] - [powerpc] powerpc/Makefiles: Convert ifeq to ifdef where possible (Yauheni Kaliuta) [1700846] - [net] bpf: introduce update_effective_progs() (Yauheni Kaliuta) [1700846] - [s390] s390: fix br_r1_trampoline for machines without exrl (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: fix a typo in map in map test (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: fix BTF code added twice to different trees (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: extend test_cgrp2_attach2 test to use cgroup storage (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add a cgroup storage test (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: add verifier cgroup storage tests (Yauheni Kaliuta) [1700846] - [tools] bpftool: add support for CGROUP_STORAGE maps (Yauheni Kaliuta) [1700846] - [net] bpf: introduce the bpf_get_local_storage() helper function (Yauheni Kaliuta) [1700846] - [net] bpf: don't allow create maps of cgroup local storages (Yauheni Kaliuta) [1700846] - [net] bpf/verifier: introduce BPF_PTR_TO_MAP_VALUE (Yauheni Kaliuta) [1700846] - [net] bpf: extend bpf_prog_array to store pointers to the cgroup storage (Yauheni Kaliuta) [1700846] - [net] bpf: allocate cgroup storage entries on attaching bpf programs (Yauheni Kaliuta) [1700846] - [net] bpf: pass a pointer to a cgroup storage using pcpu variable (Yauheni Kaliuta) [1700846] - [net] bpf: introduce cgroup storage maps (Yauheni Kaliuta) [1700846] - [net] bpf: add ability to charge bpf maps memory dynamically (Yauheni Kaliuta) [1700846] - [net] bpf: verifier: MOV64 don't mark dst reg unbounded (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test for get_socket_cookie (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Add bpf_get_socket_cookie to bpf_helpers.h (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Support bpf_get_socket_cookie in more prog types (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdpsock_user.c to libbpf (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: convert xdp_fwd_user.c to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: add bpf_object__find_program_by_title() (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: handle NULL program gracefully in bpf_program__nth_fd() (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add BTF build flags to Makefile (Yauheni Kaliuta) [1700846] - [tools] tools/bpftool: ignore build products (Yauheni Kaliuta) [1700846] - [tools] bpf: Add Python 3 support to selftests scripts for bpf (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: fix inconsistent IS_ERR and PTR_ERR (Yauheni Kaliuta) [1700846] - [net] bpf: sockmap: remove redundant pointer sg (Yauheni Kaliuta) [1700846] - [net] bpf: bpf_prog_array_alloc() should return a generic non-rcu pointer (Yauheni Kaliuta) [1700846] - [tools] tools: bpftool: don't pass FEATURES_DUMP to libbpf (Yauheni Kaliuta) [1700846] - [tools] tools: libbpf: remove libelf-getphdrnum feature detection (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: test_cgrp2_sock2: fix an off by one (Yauheni Kaliuta) [1700846] - [samples] samples: bpf: ensure that we don't load over MAX_PROGS programs (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test case for BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Better verification in test_tcpbpf (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Switch test_tcpbpf_user to cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Fix const'ness in cgroup_helpers (Yauheni Kaliuta) [1700846] - [tools] bpf: Sync bpf.h to tools/ (Yauheni Kaliuta) [1700846] - [net] bpf: Add BPF_SOCK_OPS_TCP_LISTEN_CB (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: print map dump and lookup with btf info (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: add btf print functionality (Yauheni Kaliuta) [1700846] - [tools] bpf: btf: export btf types and name by offset from lib (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: build and install man page for eBPF helpers from bpftool/ (Yauheni Kaliuta) [1700846] - [tools] tools: bpf: synchronise BPF UAPI header with tools (Yauheni Kaliuta) [1700846] - [include] bpf: fix documentation for eBPF helpers (Yauheni Kaliuta) [1700846] - [tools] bpftool: add bash completion for cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: document cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] bpftool: introduce cgroup tree command (Yauheni Kaliuta) [1700846] - [tools] selftests/bpf: Test sys_connect BPF hooks with TFO (Yauheni Kaliuta) [1700846] - [samples] samples/bpf: Add xdp_sample_pkts example (Yauheni Kaliuta) [1700846] - [tools] trace_helpers.c: Add helpers to poll multiple perf FDs for events (Yauheni Kaliuta) [1700846] - [net] bpf: deal with kABI breakage in cgroups (Yauheni Kaliuta) [1700846] - [netdrv] nfp: bpf: fix static check error through tightening shift amount adjustment (Pablo Cascon) [1663986] - [netdrv] nfp: disable netpoll on representors (Pablo Cascon) [1663986] - [netdrv] nfp: validate the return code from dev_queue_xmit() (Pablo Cascon) [1663986] - [netdrv] nfp: fix simple vNIC mailbox length (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: set higher timeout for flash bundle (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: allow the use of DMA buffer (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: move default buffer handling into its own function (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: use fractional size of the buffer (Pablo Cascon) [1663986] - [netdrv] nfp: report RJ45 connector in ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: remove ethtool flashing fallback (Pablo Cascon) [1663986] - [netdrv] nfp: Remove switchdev.h inclusion (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: fix code-gen bug on BPF_ALU | BPF_XOR | BPF_K (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: allow flashing the device via devlink (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: include vendor/product info in serial number (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: use the generic manufacture identifier instead of vendor (Pablo Cascon) [1663986] - [netdrv] nfp: flower: cmsg: use struct_size() helper (Pablo Cascon) [1663986] - [netdrv] nfp: Implement ndo_get_port_parent_id() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: complete ALU32 logic shift supports (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: correct the behavior for shifts by zero (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report the running and flashed versions (Pablo Cascon) [1663986] - [netdrv] nfp: nsp: add support for versions command (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report fixed versions (Pablo Cascon) [1663986] - [netdrv] nfp: devlink: report driver name and serial number (Pablo Cascon) [1663986] - [netdrv] nfp: use struct_size() in kzalloc() (Pablo Cascon) [1663986] - [netdrv] nfp: flower: enable MAC address sharing for offloadable devs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure MAC cleanup on address change (Pablo Cascon) [1663986] - [netdrv] nfp: flower: add infastructure for non-repr priv data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure deletion of old offloaded MACs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove list infastructure from MAC offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ignore offload of VF and PF repr MAC addresses (Pablo Cascon) [1663986] - [netdrv] nfp: flower: tidy tunnel related private data (Pablo Cascon) [1663986] - [netdrv] nfp: flower: support multiple memory units for filter offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase cmesg reply timeout (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: optimize codegen for JSET with a constant (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remove the trivial JSET optimization (Pablo Cascon) [1663986] - [netdrv] nfp: flower: fix cb_ident duplicate in indirect block register (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allow to opt-out of RED offload (Pablo Cascon) [1663986] - [netdrv] nfp: flower: ensure TCP flags can be placed in IPv6 frame (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: implement jitting of BPF_ALU | BPF_ARSH | BPF_* (Pablo Cascon) [1663986] - [netdrv] nfp: convert to DEFINE_SHOW_ATTRIBUTE (Pablo Cascon) [1663986] - [netdrv] nfp: report more info when reconfiguration fails (Pablo Cascon) [1663986] - [netdrv] nfp: add offset to all TLV parsing errors (Pablo Cascon) [1663986] - [netdrv] nfp: add offloads on representors (Pablo Cascon) [1663986] - [netdrv] nfp: add locking around representor changes (Pablo Cascon) [1663986] - [netdrv] nfp: run don't require Qdiscs on representor netdevs (Pablo Cascon) [1663986] - [netdrv] nfp: run representor TX locklessly (Pablo Cascon) [1663986] - [netdrv] nfp: avoid oversized TSO headers with metadata prepend (Pablo Cascon) [1663986] - [netdrv] nfp: correct descriptor offsets in presence of metadata (Pablo Cascon) [1663986] - [netdrv] nfp: move queue variable init (Pablo Cascon) [1663986] - [netdrv] nfp: move temporary variables in nfp_net_tx_complete() (Pablo Cascon) [1663986] - [netdrv] nfp: copy only the relevant part of the TX descriptor for frags (Pablo Cascon) [1663986] - [netdrv] nfp: flower: prevent offload if rhashtable insert fails (Pablo Cascon) [1663986] - [netdrv] nfp: flower: release metadata on offload failure (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add support for more threshold actions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add cls_u32 offload for simple band classification (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add functions to update DSCP -> virtual queue map (Pablo Cascon) [1663986] - [netdrv] nfp: abm: calculate PRIO map len and check mailbox size (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add GRED offload (Pablo Cascon) [1663986] - [netdrv] nfp: abm: wrap RED parameters in bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: add up bands for sto/non-sto stats (Pablo Cascon) [1663986] - [netdrv] nfp: abm: switch to extended stats for reading packet/byte counts (Pablo Cascon) [1663986] - [netdrv] nfp: abm: size threshold table to account for bands (Pablo Cascon) [1663986] - [netdrv] nfp: abm: pass band parameter to functions (Pablo Cascon) [1663986] - [netdrv] nfp: abm: map per-band symbols (Pablo Cascon) [1663986] - [netdrv] nfp: abm: restructure Qdisc handling (Pablo Cascon) [1663986] - [netdrv] nfp: abm: save RED's parameters (Pablo Cascon) [1663986] - [netdrv] nfp: abm: reset RED's child based on limit (Pablo Cascon) [1663986] - [netdrv] nfp: abm: build full Qdisc hierarchy based on graft notifications (Pablo Cascon) [1663986] - [netdrv] nfp: abm: allocate Qdisc child table (Pablo Cascon) [1663986] - [netdrv] nfp: abm: remember which Qdisc is root (Pablo Cascon) [1663986] - [netdrv] nfp: abm: track all offload-enabled qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: abm: keep track of all RED thresholds (Pablo Cascon) [1663986] - [netdrv] nfp: abm: rename qdiscs -> red_qdiscs (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary code in flow lookup (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove TC egdev offloads (Pablo Cascon) [1663986] - [netdrv] nfp: flower: offload tunnel decap rules via indirect TC blocks (Pablo Cascon) [1663986] - [netdrv] nfp: flower: increase scope of netdev checking functions (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow non repr netdev offload (Pablo Cascon) [1663986] - [netdrv] nfp: use the new __netdev_tx_sent_queue() BQL optimisation (Pablo Cascon) [1663986] - [netdrv] nfp: abm: refuse RED offload with harddrop set (Pablo Cascon) [1663986] - [netdrv] nfp: abm: don't set negative threshold (Pablo Cascon) [1663986] - [netdrv] nfp: abm: provide more precise info about offload parameter validation (Pablo Cascon) [1663986] - [netdrv] nfp: parse vNIC TLV capabilities at alloc time (Pablo Cascon) [1663986] - [netdrv] nfp: pass ctrl_bar pointer to nfp_net_alloc (Pablo Cascon) [1663986] - [netdrv] nfp: abm: split qdisc offload code into a separate file (Pablo Cascon) [1663986] - [netdrv] nfp: flower: include geneve as supported offload tunnel type (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use geneve and vxlan helpers (Pablo Cascon) [1663986] - [netdrv] nfp: flower: use the common netdev notifier (Pablo Cascon) [1663986] - [netdrv] nfp: register a notifier handler in a central location for the device (Pablo Cascon) [1663986] - [netdrv] nfp: flower: make nfp_fl_lag_changels_event() void (Pablo Cascon) [1663986] - [netdrv] nfp: flower: don't try to nack device unregister events (Pablo Cascon) [1663986] - [netdrv] nfp: flower: remove unnecessary iteration over devices (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: protect against mis-initializing atomic counters (Pablo Cascon) [1663986] - [netdrv] nfp: devlink port split support for 1x100G CXP NIC (Pablo Cascon) [1663986] - [netdrv] nfp: replace long license headers with SPDX (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support pointers to other stack frames for BPF-to-BPF calls (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: account for BPF-to-BPF calls when preparing nfp JIT (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: ignore helper-related checks for BPF calls in nfp verifier (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename nfp_prog->stack_depth as nfp_prog->stack_frame_depth (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow control message sizing for map ops (Pablo Cascon) [1663986] - [netdrv] nfp: allow apps to request larger MTU on control vNIC (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: parse global BPF ABI version capability (Pablo Cascon) [1663986] - [netdrv] nfp: warn on experimental TLV types (Pablo Cascon) [1663986] - [netdrv] nfp: remove ndo_poll_controller (Pablo Cascon) [1663986] - [netdrv] nfp: replace spin_lock_bh with spin_lock in tasklet callback (Pablo Cascon) [1663986] - [netdrv] nfp: separate VXLAN and GRE feature handling (Pablo Cascon) [1663986] - [netdrv] nfp: validate rtsym accesses fall within the symbol (Pablo Cascon) [1663986] - [netdrv] nfp: prefix rtsym error messages with symbol name (Pablo Cascon) [1663986] - [netdrv] nfp: fix readq on absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: make RTsym users handle absolute symbols correctly (Pablo Cascon) [1663986] - [netdrv] nfp: support access to absolute RTsyms (Pablo Cascon) [1663986] - [netdrv] nfp: convert all RTsym users to use new read/write helpers (Pablo Cascon) [1663986] - [netdrv] nfp: convert existing RTsym helpers to full target decoding (Pablo Cascon) [1663986] - [netdrv] nfp: pass cpp_id to nfp_cpp_map_area() (Pablo Cascon) [1663986] - [netdrv] nfp: add RTsym access helpers (Pablo Cascon) [1663986] - [netdrv] nfp: add basic errors messages to target logic (Pablo Cascon) [1663986] - [netdrv] nfp: save the MU locality field offset (Pablo Cascon) [1663986] - [netdrv] nfp: refactor the per-chip PCIe config (Pablo Cascon) [1663986] - [netdrv] nfp: add support for NFP5000 (Pablo Cascon) [1663986] - [netdrv] nfp: abm: look up MAC addresses via management FW (Pablo Cascon) [1663986] - [netdrv] nfp: add support for indirect HWinfo lookup (Pablo Cascon) [1663986] - [netdrv] nfp: interpret extended FW load result codes (Pablo Cascon) [1663986] - [netdrv] nfp: attempt FW load from flash (Pablo Cascon) [1663986] - [netdrv] nfp: encapsulate NSP command arguments into structs (Pablo Cascon) [1663986] - [netdrv] nfp: clean up return types in kdoc comments (Pablo Cascon) [1663986] - [netdrv] nfp: flower: allow matching on ipv4 UDP tunnel tos and ttl (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: xdp_adjust_tail support (Pablo Cascon) [1663986] - [netdrv] nfp: fix variable dereferenced before check in nfp_app_ctrl_rx_raw() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: improve map offload info messages (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: remember maps by ID (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow receiving perf events on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: pass raw data buffer to nfp_bpf_event_output() (Pablo Cascon) [1663986] - [netdrv] nfp: allow control message reception on data queues (Pablo Cascon) [1663986] - [netdrv] nfp: move repr handling on RX path (Pablo Cascon) [1663986] - [netdrv] nfp: protect from theoretical size overflows on HW descriptor ring (Pablo Cascon) [1663986] - [netdrv] nfp: restore correct ordering of fields in rx ring structure (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow program sharing within ASIC (Pablo Cascon) [1663986] - [netdrv] nfp: add .ndo_init() and .ndo_uninit() callbacks (Pablo Cascon) [1663986] - [netdrv] nfp: add support for simultaneous driver and hw XDP (Pablo Cascon) [1663986] - [netdrv] nfp: avoid using getnstimeofday64() (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: migrate to advanced reciprocal divide in reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u32 divide using reciprocal_div.h (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: support u16 and u32 multiplications (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: copy range info for all operands of all ALU operations (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: rename umin/umax to umin_src/umax_src (Pablo Cascon) [1663986] - [netdrv] nfp: make use of napi_consume_skb() (Pablo Cascon) [1663986] - [netdrv] nfp: implement netpoll ndo (thus enabling netconsole) (Pablo Cascon) [1663986] - [netdrv] nfp: fail probe if serial or interface id is missing (Pablo Cascon) [1663986] - [netdrv] nfp: expose ring stats of inactive rings via ethtool (Pablo Cascon) [1663986] - [netdrv] nfp: bpf: allow source ptr type be map ptr in memcpy optimization (Pablo Cascon) [1663986] - [netdrv] bpf: offload: keep the offload state per-ASIC (Pablo Cascon) [1663986] - [netdrv] bpf: offload: aggregate offloads per-device (Pablo Cascon) [1663986] - [tools] selftests/bpf: add test for sharing objects between netdevs (Ivan Vecera) [1708399] - [netdrv] netdevsim: allow program sharing between devices (Ivan Vecera) [1708399] - [net] bpf: offload: allow program and map sharing per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: keep the offload state per-ASIC (Ivan Vecera) [1708399] - [netdrv] bpf: offload: aggregate offloads per-device (Ivan Vecera) [1708399] - [net] bpf: offload: rename bpf_offload_dev_match() to bpf_offload_prog_map_match() (Ivan Vecera) [1708399] - [netdrv] netdevsim: associate bound programs with shared dev (Ivan Vecera) [1708399] - [netdrv] netdevsim: add shared netdevsim devices (Ivan Vecera) [1708399] - [netdrv] netdevsim: add switch_id attribute (Ivan Vecera) [1708399]- [infiniband] IB/mlx5: Remove set but not used variable (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: WQE dump jumps over first 16 bytes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix false compilation warning (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Remove redundant assignment (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix compilation warning in en_tc.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix compilation warning in eq.c (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix the max MTU check in case of XDP (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix use-after-free after xdp_return_frame (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix scatter to CQE in DCT QP creation (Alaa Hleihel) [1691238] - [netdrv] Revert "net/mlx5e: Enable reporting checksum unnecessary also for L3 packets" (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Rx, Check ip headers sanity (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, idr remove on flow delete (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: FPGA, tls, hold rcu read lock a bit longer (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Consider tunnel type for encap contexts (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Correctly use the namespace type when allocating pedit action (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Allow legacy link-modes configuration via non-extended ptys (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: ethtool, Fix type analysis of advertised link-mode (Alaa Hleihel) [1691238] - [netdrv] net: mlx5: Add a missing check on idr_find, free buf (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Allow IPv4 ttl & IPv6 hop_limit rewrite for all L4 protocols (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Use mlx5 core to create/destroy a DEVX DCT (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix DCT creation bad flow (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix bad flow upon DEVX mkey creation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Add support for ODP for DEVX indirection mkey (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Manage indirection mkey upon DEVX flow for ODP (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: DEVX handling for indirection MKEY (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Fix access to non-existing receive queue (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Properly get the PF number phys port name ndo (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Consolidate update FTE for all removal changes (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add a locked flag to node removal functions (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Add modify FTE helper function (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix multiple updates of steering rules in parallel (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Validate correct PD before prefetch MR (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Introduce and reuse helper to identify ODP MR (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Protect against prefetch of invalid MR (Alaa Hleihel) [1691238] - [infiniband] net/mlx5: Make mlx5_cmd_exec_cb() a safe API (Alaa Hleihel) [1691238] - [infiniband] RDMA: Clean structures from CONFIG_INFINIBAND_ON_DEMAND_PAGING (Alaa Hleihel) [1691238] - [infiniband] RDMA/mlx5: Embed into the code flow the ODP config option (Alaa Hleihel) [1691238] - [netdrv] net/mlx5e: Add missing static function annotation (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Do not use hw_access_flags for be and CPU data (Alaa Hleihel) [1691238] - [netdrv] net/mlx5: Fix code style issue in mlx driver (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Fix the locking of SRQ objects in ODP events (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Make mlx5_ib_stage_odp_cleanup() static (Alaa Hleihel) [1691238] - [infiniband] IB/mlx5: Declare local functions 'static' (Alaa Hleihel) [1691238] - [netdrv] RDMA/mlx5: Delete declaration of already removed function (Alaa Hleihel) [1691238] - [netdrv] mlx5-core: Mark ConnectX-6 Dx as unsupported device (Alaa Hleihel) [1691236 1687434] - [netdrv] net/mlx5: Update the list of the PCI supported devices (Alaa Hleihel) [1691236 1687434] - [infiniband] IB/mlx5: Fix mapping of link-mode to IB width and speed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: ethtool, Add ethtool support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add support for 50Gbps per lane link modes (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Add support to ext_* fields introduced in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [include] net/mlx5: Add new fields to Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5: Refactor queries to speed fields in Port Type and Speed register (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Set peer flow needed also for multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Update check for merged eswitch device (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Use hint to resolve route when in HW multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Always query offloaded tc peer rule counter (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Re-attempt to offload flows on multipath port affinity events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Emit port affinity event for multipath offloads (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Allow one failure when offloading tc encap rules under multipath (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't inherit flow flags on peer flow creation (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Activate HW multipath and handle port affinity based on FIB events (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Add multipath mode (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use own workqueue for lag netdev events processing (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Expose lag operations in header file (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5: Use unsigned int bit instead of bool as a struct member (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Don't make internal use of errno to denote missing neigh (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Cleanup attach encap function (Alaa Hleihel) [1691236 1663236] - [netdrv] net/mlx5e: Remove 'parse_attr' argument in mlx5e_tc_add_fdb_flow() (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Introduce mlx5e_flow_esw_attr_init() helper (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Return the allocated flow directly from __mlx5e_add_fdb_flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix GRE key by controlling port tunnel entropy calculation (Alaa Hleihel) [1691236 1663240] - [include] net/mlx5: Introduce tunnel entropy control in PCMR register (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Use read-modify-write when changing PCMR register values (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Remove wrong and superfluous tc pedit header type check (Alaa Hleihel) [1691236] - [netdrv] drivers: net: use flow action infrastructure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: support for two independent packet edit actions (Alaa Hleihel) [1691236] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, fix redirect resources availability check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix a compilation warning in events.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: No command allowed when command interface is not ready (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix NULL pointer derefernce in set channels error flow (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Don't overwrite pedit action when multiple pedit used (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Update hw flows when encap source mac changed (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the inner headers to determine tc/pedit offload limitation on decap flows (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Properly set steering match levels for offloaded TC decap rules (Alaa Hleihel) [1691236 1663207] - [netdrv] net/mlx5e: Unblock setting vid 0 for VFs through the uplink rep (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move to use common phys port names for vport representors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow MAC invalidation while spoofchk is ON (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Take lock with IRQs disabled to avoid deadlock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong private flag usage causing checksum disable (Alaa Hleihel) [1691236] - [netdrv] Revert "net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager" (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix flow creation on representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix how advise_mr() launches async work (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Fix check for supported user flags when creating a QP (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix cb_ident duplicate in indirect block register (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong (zero) TX drop counter indication for representor (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Fix wrong error code return on FEC query failure (Alaa Hleihel) [1691236] - [infiniband] Revert "IB/mlx5: Fix long EEH recover time with NVMe offloads" (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC INI usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: drop useless LIST_HEAD (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: fix semicolon.cocci warnings (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Signedness bug in UVERBS_HANDLER() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allocate the per-port Q counter shared when DEVX is supported (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add user control for XDP TX MPWQE feature (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Support Enhanced Multi-Packet TX WQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Add array for WQE info descriptors (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Maintain a FIFO structure for xdp_info instances (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Replace boolean doorbell indication with segment pointer (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Warn upon polling an error CQE (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Change the XDP SQ redirect indication (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: XDP, Precede XDP-related operations in RQ poll by a loaded program check (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: TX, Print opcode in error CQE warning (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix wrong error unwind (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix long EEH recover time with NVMe offloads (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Simplify netdev unbinding (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the correct commands for UMEM and UCTX allocation (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix LAG requirement when CONFIG_MLX5_ESWITCH is off (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Fix query_nic_sys_image_guid() error during init (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support tunnel encap over tagged Ethernet (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Support VLAN encap ETH header generation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Re-order route and encap header memory allocation (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Tunnel encap ETH header helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC encap flows with vlan on underlay (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Tunnel routing output devs helper function (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Fail attempt to offload e-switch TC flows with egress upper devices (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Allow vlans on e-switch uplink reps (Alaa Hleihel) [1691236 1663255] - [netdrv] net/mlx5e: Increase VF representors' SQ size to 128 (Alaa Hleihel) [1691236] - [netdrv] mlx5: extend PTP gettime function to read system clock (Alaa Hleihel) [1691236] - [netdrv] mlx5: update timecounter at least twice per counter overflow (Alaa Hleihel) [1691236] - [include] IB/mlx5: Introduce uid as part of alloc/dealloc transport domain (Alaa Hleihel) [1691236] - [netdrv] drivers: net: ethernet: mellanox: use skb_sec_path helper (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Fix compile issue when ODP disabled (Alaa Hleihel) [1691236] - [include] net/mlx5: Add shared Q counter bits (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add advise_mr() support (Alaa Hleihel) [1691236 1663248] - [infiniband] IB/uverbs: Add helper to get array size from ptr attribute (Alaa Hleihel) [1691236 1663248] - [infiniband] RDMA/mlx5: Fix function name typo 'fileds' -> 'fields' (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Delete unreachable handle_atomic code by simplifying SW completion (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Continue driver initialization despite debugfs failure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Add some ethtool port control entries to the uplink rep netdev (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Expose ethtool pause and link functions to mlx5e callers (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Add sriov and udp tunnel ndo support for the uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Handle port mtu/link, dcb and lag for uplink reps (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Uninstantiate esw manager vport netdev on switchdev mode (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Remove leftover code from the PF netdev being uplink rep (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use dedicated uplink vport netdev representor (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5e: Use single argument for the esw representor build params helper (Alaa Hleihel) [1691236 1663256] - [netdrv] net/mlx5: E-Switch, Remove redundant reloading of the IB interface (Alaa Hleihel) [1691236 1663256 1663207] - [netdrv] net/mlx5: Handle LAG FW commands failure gracefully (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Make RoCE and SR-IOV LAG modes explicit (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Rename mlx5_lag_is_bonded() to __mlx5_lag_is_active() (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow co-enablement of uplink LAG and SRIOV (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Allow/disallow LAG according to pre-req only (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Adjustments for the activate LAG logic to run under sriov (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Duplicate offloaded TC eswitch rules under uplink LAG (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Offload TC e-switch rules with egress LAG device (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: In case of LAG, one switch parent id is used for all representors (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Enhance flow counter scheme for offloaded TC eswitch rules (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5e: Infrastructure for duplicated offloading of TC flows (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5e: E-Switch, Add peer miss rules (Alaa Hleihel) [1691236 1663230 1663207] - [netdrv] net/mlx5: Introduce inter-device communication mechanism (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Fold the modify lag code into function (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Add lag affinity info to log (Alaa Hleihel) [1691236 1663230] - [netdrv] net/mlx5: Split the activate lag function into two routines (Alaa Hleihel) [1691236 1663230] - [include] net/mlx5: E-Switch, Introduce flow counter affinity (Alaa Hleihel) [1691236 1663230] - [infiniband] IB/mlx5: Unify e-switch representors load approach between uplink and VFs (Alaa Hleihel) [1691236] - [include] net/mlx5: Use lowercase 'X' for hex values (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove set but not used variable 'upriv' (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove duplicated include from eswitch.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use monitor counters for update stats (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Monitor counters commands support (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Avoid query PPCNT register if not supported by the device (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use CQE padding for Ethernet CQs (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Support multiple encapsulations for a TC flow (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Allow association of a flow to multiple encaps (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Change parse attr struct to accommodate multiple tunnel infos (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Support header rewrite actions with remote port mirroring (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Replace the split logic with extended destination (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5e: Annul encap action ordering requirement (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Move flow attr reformat action bit to per dest flags (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5e: Refactor eswitch flow attr for destination specific properties (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: E-Switch, Rename esw attr mirror count field (Alaa Hleihel) [1691236 1663239 1663207] - [netdrv] net/mlx5: Consider encapsulation properties when comparing destinations (Alaa Hleihel) [1691236 1663239] - [infiniband] RDMA/mlx5: Fail early if user tries to create flows on IB representors (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Remove duplicated include from mlx5_ib.h (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add 2X width support to query_port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Add HDR speed support to query port (Alaa Hleihel) [1691236 1683102] - [infiniband] IB/mlx5: Report CapabilityMask2 in ib_query_port (Alaa Hleihel) [1691236 1683102] - [netdrv] net/mlx5e: Add GRE protocol offloading (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Move TC tunnel offloading code to separate source file (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Branch according to classified tunnel type (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel decap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Refactor VXLAN tunnel encap offloading code (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Replace egdev with indirect block notifications (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Propagate the filter's net device to mlx5e structures (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Provide the TC filter netdev as parameter to flower callbacks (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Support TC indirect block notifications for eswitch uplink reprs (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5e: Store eswitch uplink representor state on a dedicated struct (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Remove the get protocol device interface entry (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Support extended destination format in flow steering command (Alaa Hleihel) [1691236 1663239] - [netdrv] net/mlx5: E-Switch, Change vhca id valid bool field to bit flag (Alaa Hleihel) [1691236 1663239 1663207] - [include] net/mlx5: Introduce extended destination fields (Alaa Hleihel) [1691236 1663239] - [infiniband] net/mlx5: Revise gre and nvgre key formats (Alaa Hleihel) [1691236 1663240] - [netdrv] net/mlx5: Add monitor commands layout and event data (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for plugged-disabled cable status in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Add support for PCIe power slot exceeded error in PME (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Rework handling of port module events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Move flow counters data structures from flow steering header (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Use helper to get CQE opcode (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: When fetching CQEs return CQE instead of void pointer (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Report packet based credit mode device capability (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Add packet based credit mode support (Alaa Hleihel) [1691236] - [include] net/mlx5: Expose packet based credit mode (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable TX on a DEVX flow table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Improve ethtool private-flags code structure (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: ethtool, Support user configuration for RX hash fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move RSS params to a dedicated struct (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Refactor TIR configuration function (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Move modify tirs hash functionality (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Cleanup unused defines (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove trailing space of tx_pause ethtool counter name (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow XRC usage via verbs in DEVX context (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Update the supported DEVX commands (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enforce DEVX privilege by firmware (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Enable modify and query verbs objects via DEVX (Alaa Hleihel) [1691236] - [include] net/mlx5: Update mlx5_ifc with DEVX UCTX capabilities bits (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold modify RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Unfold create RMP function (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Initialize SRQ tables on mlx5_ib (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Update SRQ functions signatures to mlx5_ib format (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use stages for callback to setup and release DEVX (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Remove SRQ signature global flag (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Move SRQ functions to RDMA part (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove references to local mlx5_core functions (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove not-used lib/eq.h header file (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove dead transobj code (Alaa Hleihel) [1691236] - [infiniband] net/mlx5: Align SRQ licenses and copyright information (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Debug print for forwarded async events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward SRQ resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward QP/WorkQueues resource events (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove all deprecated software versions of FW events (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw delay drop general event (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow forwarding event type general event as is (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Handle raw port change event rather than the software version (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Remove unused events callback and logic (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Forward all mlx5 events to mlx5 notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Use the new mlx5 core notifier API (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Allow port change event to be forwarded to driver notifiers chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Driver events notifier API (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented QP's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Use fragmented SRQ's buffer for in-kernel users (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Attach a DEVX counter via raw flow creation (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Improve core device events handling (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Device events, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CQ ERR, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Resource tables, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: CmdIF, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWPage, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: E-Switch, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: Clock, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FPGA, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: FWTrace, Use async events chain (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Introduce atomic notifier chain subscription API (Alaa Hleihel) [1691236] - [infiniband] RDMA/mlx5: Use the uapi disablement APIs instead of code (Alaa Hleihel) [1691236] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Alaa Hleihel) [1691236] - [netdrv] mlx5: use skb_vlan_tag_get_prio() (Alaa Hleihel) [1691236] - [infiniband] IB/mlx5: Allow modify AV in DCI QP to RTR (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Make EQE access methods inline (Alaa Hleihel) [1691236] - [netdrv] {net, IB}/mlx5: Move Page fault EQ and ODP logic to RDMA (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Generic EQ (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Different EQ types (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Privatize eq_table and friends (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, irq_info and rmap belong to eq_table (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Create all EQs in one place (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Move all EQ logic to eq.c (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove redundant completion EQ list lock (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, No need to store eq index as a field (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Remove unused fields and structures (Alaa Hleihel) [1691236] - [netdrv] net/mlx5: EQ, Use the right place to store/read IRQ affinity hint (Alaa Hleihel) [1691236] - [include] net/mlx5: Fix offsets of ifc reserved fields (Alaa Hleihel) [1691236] - [netdrv] net/mlx5e: Remove the false indication of software timestamping support (Alaa Hleihel) [1691234 1647734] - [netdrv] net/mlx5: Typo fix in del_sw_hw_rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: RX, Fix wrong early return in receive queue poll (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Cancel DIM work on close SQ (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Remove unused UDP GSO remaining counter (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid encap flows deletion attempt the 1st time a neigh is resolved (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Properly initialize flow attributes for slow path eswitch rule deletion (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid overriding the user provided priority for offloaded tc rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Err if asked to mirror a goto chain tc eswitch rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix default amount of channels for VF representors (Alaa Hleihel) [1691234] - [include] net/mlx5: E-Switch, Fix fdb cap bits swap (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Block DEVX umem from the non applicable cases (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Fix XRC QP support after introducing extended atomic (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix failing ethtool query on FEC query error (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix wrong field name in FEC related functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Fix a bug in turning off FEC policy in unsupported speeds (Alaa Hleihel) [1691234] - [include] net/mlx5: Fix XRC SRQ umem valid bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Allocate enough space for the FDB sub-namespaces (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Added 'raw_errors_laneX' fields to ethtool statistics (Alaa Hleihel) [1691234] - [include] net/mlx5: Added "per_lane_error_counters" cap bit to PCAM (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool driver callback for query/set FEC policy (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add port FEC get/set functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add FEC fields to Port Phy Link Mode (PPLM) reg (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Remove counter from idr after removing it from list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Take fs_counters dellist before addlist (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Refactor fragmented buffer struct fields and init flow (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Support offloading tc priorities and chains for eswitch flows (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Use a slow path rule instead if vxlan neighbour isn't available (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Enable setting goto slow path chain action (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Avoid duplicated code for tc offloads add/del fdb rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: For TC offloads, always add new flow instead of appending the actions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add a no-append flow insertion mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Add chains and priorities (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Have explicit API to delete fwd rules (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Split FDB fast path prio to multiple namespaces (Alaa Hleihel) [1691234] - [include] net/mlx5: Add cap bits for multi fdb encap (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Split TC add rule path for nic vs e-switch (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change return type of tc add flow functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Use flow counter IDs and not the wrapping cache object (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Get counters for offloaded flows from callers (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Add support for extended atomic operations (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Allow scatter to CQE without global signaled WRs (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify that driver supports user flags (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Support scatter to CQE for DC transport type (Alaa Hleihel) [1691234] - [include] net/mlx5: Expose DC scatter to CQE capability bit (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Add support for flow tag to raw create flow (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Verify DEVX object type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add new counter for aRFS rule insertion failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add extack messages for TC offload failures (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: E-Switch, Add extack messages to devlink callbacks (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Allow reporting of checksum unnecessary (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable reporting checksum unnecessary also for L3 packets (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Add ethtool control of ring params to VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable multi-queue and RSS for VF representors (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose ethtool rss key size / indirection table functions (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Expose function for building RSS params (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Provide explicit directive if to create inner indirect tirs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: E-Switch, Provide flow dest when creating vport rx rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Extract creation of rep's default flow rule (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Enable stateless offloads for VF representor netdevs (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Change VF representors' RQ type (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Ethtool steering, Support masks for l3/l4 filters (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX on IB (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Enable DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Manage device uid for DEVX white list commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Expose RAW QP device handles to user space (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set valid umem bit on DEVX (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of XRCD commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of CQ creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid upon PD allocation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIS commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of TIR commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of MCG commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Set uid as part of QP creation (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Use uid as part of PD commands (Alaa Hleihel) [1691234] - [include] net/mlx5: Update mlx5_ifc with DEVX UID bits (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of DCT commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SRQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of SQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of RQ commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of QP commands (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Set uid as part of CQ commands (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Enable vport loopback when user context or QP mandate (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating RAW ethernet QP with loopback support (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Refactor transport domain bookkeeping logic (Alaa Hleihel) [1691234] - [infiniband] net/mlx5: Rename incorrect naming in IFC file (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Use rdma_user_mmap_io (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Allow creating a matcher for a NIC TX flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX namespace when getting a flow table (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add flow actions support to raw create flow (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor raw flow creation (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Don't overwrite action if already set (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Refactor flow action parsing to be more generic (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching packet reformat action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable reformat on NIC RX if supported (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching DECAP action to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable decap and packet reformat on flow tables (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Enable attaching modify header to steering flows (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add NIC TX steering support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5e: Replace PTP clock lock from RW lock to seq lock (Alaa Hleihel) [1691234] - [netdrv] net/mlx5e: Move Q counters allocation and drop RQ to init_rx (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add flow counters idr (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Store flow counters in a list (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add new list to store deleted flow counters (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Change flow counters addlist type to single linked list (Alaa Hleihel) [1691234] - [infiniband] RDMA/mlx5: Extend packet reformat verbs (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add new flow action verb - packet reformat (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Alaa Hleihel) [1691234 1663215] - [infiniband] RDMA/mlx5: Add a new flow action verb - modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export packet reformat alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Pass a namespace for packet reformat ID allocation (Alaa Hleihel) [1691234 1663215] - [include] net/mlx5: Expose new packet reformat capabilities (Alaa Hleihel) [1691234 1663215] - [netdrv] {net, RDMA}/mlx5: Rename encap to reformat packet (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Move header encap type to IFC header file (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Break encap/decap into two separated flow table creation flags (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add support for more namespaces when allocating modify header (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Export modify header alloc/dealloc functions (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Add proper NIC TX steering flow tables support (Alaa Hleihel) [1691234 1663215] - [netdrv] net/mlx5: Cleanup flow namespace getter switch logic (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Change TX affinity assignment in RoCE LAG mode (Alaa Hleihel) [1691234] - [netdrv] net/mlx5: Add memic command opcode to command checker (Alaa Hleihel) [1691234] - [infiniband] IB/mlx5: Destroy the DEVX object upon error flow (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, Read capabilities only when it is safe (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, fix udp source port value (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Improve argument name for add flow API (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, l4 proto support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering, ip6 support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow parsing refactoring (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Ethtool steering flow validation refactoring (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Unexport functions that need not be exported (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Remove unused mlx5_query_vport_admin_state (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: E-Switch, Remove unused argument when creating legacy FDB (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Rename modify/query_vport state related enums (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Mark expected switch fall-throughs (Alaa Hleihel) [1691231] - [netdrv] mellanox: fix the dport endianness in call of __inet6_lookup_established() (Alaa Hleihel) [1691231] - [netdrv] mlx5: handle DMA mapping error case for XDP redirect (Alaa Hleihel) [1691231] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Issue direct lookup on vxlan ports by vport representors (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Use function to access sq_dma object in fifo (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TX, Move DB fields in TXQ-SQ struct (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add support for XDP_REDIRECT in device-out side (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Re-order fields of struct mlx5e_xdpsq (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Refactor XDP counters (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Make XDP xmit functions more generic (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Add counter for XDP redirect in RX (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Enable driver uapi commands for flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for a flow table destination for driver flow steering (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support adding flow steering rule by raw description (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce driver create and destroy flow methods (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add support for flow table destination number (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add forward compatible support for the FTE match data (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: Support offloading double vlan push/pop tc actions (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Refactor tc vlan push/pop actions offloading (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5e: Support offloading tc double vlan headers match (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: FW tracer, Add debug prints (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, Enable tracing (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, parse traces and kernel tracing support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, events handling (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, register log buffer memory key (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, create trace buffer and copy strings database (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, implement tracer logic (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove set but not used variables (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add XRQ commands definitions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Add core support for double vlan push/pop steering action (Alaa Hleihel) [1691231 1615127] - [netdrv] net/mlx5: Expose MPEGC (Management PCIe General Configuration) structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: FW tracer, add hardware structures (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: fix an unused-function warning (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: IPsec, fix byte count in CQE (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add common metadata functions (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, build TLS netdev from capabilities (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add software statistics (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add Innova TLS rx data path (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, add innova rx support (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Accel, add TLS rx offload routines (Alaa Hleihel) [1691231] - [netdrv] net/mlx5e: TLS, refactor variable names (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Check that supplied blue flame index doesn't overflow (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Melt consecutive calls to alloc_bfreg() in one call (Alaa Hleihel) [1691231] - [netdrv] net/mlx5: Use 2-factor allocator calls (Alaa Hleihel) [1691231] - [infiniband] RDMA/mlx5: Remove unused port number parameter (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose dump and fill memory key (Alaa Hleihel) [1691231] - [include] net/mlx5: Add hardware definitions for dump_fill_mkey (Alaa Hleihel) [1691231] - [infiniband] net/mlx5: Limit scope of dump_fill_mkey function (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Add support for drain SQ & RQ (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Support RoCE ICRC encapsulated error counter (Alaa Hleihel) [1691231 1663195] - [include] net/mlx5: Add RoCE RX ICRC encapsulated counter (Alaa Hleihel) [1691231 1663195] - [infiniband] RDMA/mlx5: Refactor transport domain checks (Alaa Hleihel) [1691231] - [infiniband] IB/mlx5: Expose DEVX tree (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX query EQN support (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for memory registration (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX query UAR (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add DEVX support for modify and query commands (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add obj create and destroy functionality (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Add support for DEVX general command (Alaa Hleihel) [1691231 1663190] - [infiniband] IB/mlx5: Introduce DEVX (Alaa Hleihel) [1691231 1663190] - [netdrv] net/mlx5: Expose DEVX specification (Alaa Hleihel) [1691231]- [virt] kvm: arm/arm64: Don't emulate virtual timers on userspace ioctls (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Remove unused timer variable (Andrew Jones) [1716066] - [virt] kvm: arm/arm64: Rework the timer code to use a timer_map (Andrew Jones) [1716066] - [powerpc] powernv: Fix compile without CONFIG_TRACEPOINTS (David Gibson) [1524674] - [virt] kvm: ppc: book3s: Remove useless checks in 'release' method of KVM device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Clear escalation interrupt pointers on device close (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Prevent races when releasing device (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Replace the 'destroy' method by a 'release' method (David Gibson) [1524674] - [virt] kvm: Introduce a 'release' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Activate XIVE exploitation mode (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add passthrough support (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a mapping for the source ESB pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a TIMA mapping (David Gibson) [1524674] - [virt] kvm: Introduce a 'mmap' method for KVM devices (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add get/set accessors for the VP XIVE state (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to dirty the XIVE EQ pages (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to sync the sources (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a global reset control (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add controls for the EQ configuration (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Add a control to configure a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: add a control to initialize a source (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: xive: Introduce a new capability KVM_CAP_PPC_IRQ_XIVE (David Gibson) [1524674] - [powerpc] kvm: ppc: book3s hv: Add a new KVM device for the XIVE native exploitation mode (David Gibson) [1524674] - [powerpc] xive: add OPAL extensions for the XIVE native exploitation support (David Gibson) [1524674] - [powerpc] powernv: move OPAL call wrapper tracing and interrupt handling to C (David Gibson) [1524674] - [thermal] thermal/intel_powerclamp: fix truncated kthread name (Lihong Yang) [1716810] - [kernel] kernel/signal.c: trace_signal_deliver when signal_group_exit (Waiman Long) [1548279] - [kernel] signal: unconditionally leave the frozen state in ptrace_stop() (Waiman Long) [1548279] - [kernel] cgroup: never call do_group_exit() with task->frozen bit set (Waiman Long) [1548279] - [kernel] kernel: cgroup: fix misuse of x (Waiman Long) [1548279] - [kernel] cgroup: get rid of cgroup_freezer_frozen_exit() (Waiman Long) [1548279] - [kernel] cgroup: prevent spurious transition into non-frozen state (Waiman Long) [1548279] - [kernel] cgroup: Remove unused cgrp variable (Waiman Long) [1548279] - [documentation] cgroup: document cgroup v2 freezer interface (Waiman Long) [1548279] - [kernel] cgroup: add tracing points for cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: make TRACE_CGROUP_PATH irq-safe (Waiman Long) [1548279] - [tools] kselftests: cgroup: don't fail on cg_kill_all() error in cg_destroy() (Waiman Long) [1548279] - [kernel] cgroup: cgroup v2 freezer (Waiman Long) [1548279] - [kernel] cgroup: protect cgroup->nr_(dying_)descendants by css_set_lock (Waiman Long) [1548279] - [kernel] cgroup: implement __cgroup_task_count() helper (Waiman Long) [1548279] - [kernel] cgroup: rename freezer.c into legacy_freezer.c (Waiman Long) [1548279] - [kernel] cgroup: remove extra cgroup_migrate_finish() call (Waiman Long) [1548279] - [kernel] cgroup/cpuset: Update stale generate_sched_domains() comments (Waiman Long) [1548279] - [kernel] cgroup: saner refcounting for cgroup_root (Waiman Long) [1548279] - [fs] fix cgroup_do_mount() handling of failure exits (Waiman Long) [1548279] - [kernel] cgroup: Add named hierarchy disabling to cgroup_no_v1 boot param (Waiman Long) [1548279] - [kernel] cgroup: fix parsing empty mount option string (Waiman Long) [1548279] - [kernel] cgroup: fix CSS_TASK_ITER_PROCS (Waiman Long) [1548279] - [kernel] cgroup: Fix dom_cgrp propagation when enabling threaded mode (Waiman Long) [1548279] - [lib] lib: objagg: fix handling of object with 0 users when assembling hints (Ivan Vecera) [1704850] - [lib] test_objagg: Uninitialized variable in error handling (Ivan Vecera) [1704850] - [lib] test_objagg: Test the correct variable (Ivan Vecera) [1704850] - [lib] lib: objagg: Fix an error code in objagg_hints_get() (Ivan Vecera) [1704850] - [lib] lib: objagg: add root count to stats (Ivan Vecera) [1704850] - [lib] lib: objagg: implement optimization hints assembly and use hints for object creation (Ivan Vecera) [1704850] - [lib] lib: objagg: fix typo in objagg_stats_put() docstring (Ivan Vecera) [1704850] - [lib] lib: introduce initial implementation of object aggregation manager (Ivan Vecera) [1704850] - [netdrv] ibmvnic: Fix unchecked return codes of memory allocations (Steve Best) [1718919] - [netdrv] ibmvnic: Refresh device multicast list after reset (Steve Best) [1718919] - [netdrv] ibmvnic: Do not close unopened driver during reset (Steve Best) [1718919] - [target] scsi: target: tcmu: Switch to bitmap_zalloc() (Maurizio Lombardi) [1712917] - [target] scsi: target: tcmu: wait for nl reply only if there are listeners or during an add (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_handle_text_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Simplify iscsit_dump_data_payload() (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Rename a function and a function pointer (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Fix spelling of "unsolicited" (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Convert comments about locking into runtime checks (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Remove an incorrect comment (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Add target_send_busy() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Inline transport_lun_remove_cmd() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the LUN RESET implementation (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove several state tests from the TMF code (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the write_pending_status() callback function (Maurizio Lombardi) [1712917] - [target] scsi: target: make the pi_prot_format ConfigFS path readable (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: fix use after free (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: fix error msg typo when create lio_qr_cache failed (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kmem_cache_free() instead of kfree() (Maurizio Lombardi) [1712917] - [target] scsi: target: perform t10_wwn ID initialisation in target_alloc_device() (Maurizio Lombardi) [1712917] - [target] scsi: target: remove hardcoded T10 Vendor ID in INQUIRY response (Maurizio Lombardi) [1712917] - [target] scsi: target: add device vendor_id configfs attribute (Maurizio Lombardi) [1712917] - [target] scsi: target: consistently null-terminate t10_wwn strings (Maurizio Lombardi) [1712917] - [target] scsi: target: use consistent left-aligned ASCII INQUIRY data (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Reduce the amount of code executed with a spinlock held (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make ABORT and LUN RESET handling synchronous (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix TAS handling for aborted commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify the code for aborting SCSI commands (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make it possible to wait from more than one context for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use system workqueues for TMF (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix target_wait_for_sess_cmds breakage with active signals (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Simplify transport_clear_lun_ref() (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use kvcalloc() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/tcmu: Fix queue_cmd_ring() declaration (Maurizio Lombardi) [1712917] - [target] scsi: target: replace fabric_ops.name with fabric_alias (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops (Maurizio Lombardi) [1712917] - [target] scsi: target: drop unused pi_prot_format attribute storage (Maurizio Lombardi) [1712917] - [target] scsi: target: add emulate_pr backstore attr to toggle PR support (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Avoid that a kernel oops is triggered when COMPARE AND WRITE fails (Maurizio Lombardi) [1712917] - [target] scsi: target: Don't request modules that aren't even built (Maurizio Lombardi) [1712917] - [target] scsi: target: Set response length for REPORT TARGET PORT GROUPS (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Always call transport_complete_callback() upon failure (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use sg_alloc_table() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Use the SECTOR_SHIFT constant (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove the SCF_COMPARE_AND_WRITE_POST flag (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Remove an unused data member from struct xcopy_pt_cmd (Maurizio Lombardi) [1712917] - [target] scsi: target/core: Fix spelling in two source code comments (Maurizio Lombardi) [1712917] - [target] scsi: target: stash sess_err_stats on Data-Out timeout (Maurizio Lombardi) [1712917] - [target] scsi: target: split out helper for cxn timeout error stashing (Maurizio Lombardi) [1712917] - [target] scsi: target: log NOP ping timeouts as errors (Maurizio Lombardi) [1712917] - [target] scsi: target: log Data-Out timeouts as errors (Maurizio Lombardi) [1712917] - [include] scsi: target: use ISCSI_IQN_LEN in iscsi_target_stat (Maurizio Lombardi) [1712917] - [target] scsi: target: iblock: split T10 PI SGL across command bios (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: fix spelling mistake "entires" -> "entries" (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Fix conn_ops double free (Maurizio Lombardi) [1712917] - [target] scsi: iscsi: target: Set conn->sess to NULL when iscsi_login_set_conn_values fails (Maurizio Lombardi) [1712917] - [target] scsi: target: loop, usb, vhost, xen: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: tcm_fc: use target_remove_session (Maurizio Lombardi) [1712917] - [target] scsi: target: make transport_init_session_tags static (Maurizio Lombardi) [1712917] - [target] scsi: iscsi target: have iscsit_start_nopin_timer call __iscsit_start_nopin_timer (Maurizio Lombardi) [1712917] - [target] scsi: target: fix __transport_register_session locking (Maurizio Lombardi) [1712917] - [target] Revert "scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers" (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use u64 for dev_size (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use match_int for dev params (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: do not set max_blocks if data_bitmap has been setup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: unmap if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: check if dev is configured before block/reset (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: use lio core se_device configuration helper (Maurizio Lombardi) [1712917] - [target] scsi: target: add helper to check if dev is configured (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: initialize list head (Maurizio Lombardi) [1712917] - [target] scsi: target_core_user: fix double unlock (Maurizio Lombardi) [1712917] - [target] scsi: target: Remove se_dev_entry.ua_count (Maurizio Lombardi) [1712917] - [target] scsi: target: Fix handling of removed LUNs (Maurizio Lombardi) [1712917] - [target] scsi: target: Send unit attention condition even if the sense buffer is too small (Maurizio Lombardi) [1712917] - [target] scsi: target: Do not duplicate the code that marks that a command has sense data (Maurizio Lombardi) [1712917] - [target] scsi: target/tcm_loop: Avoid that static checkers warn about dead code (Maurizio Lombardi) [1712917] - [target] scsi: target/iscsi: Reduce number of __iscsit_free_cmd() callers (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify the code for waiting for command completion (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (2/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify transport_generic_free_cmd() (1/2) (Maurizio Lombardi) [1712917] - [target] scsi: target: Fold core_tmr_handle_tas_abort() into transport_cmd_finish_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Simplify core_tmr_handle_tas_abort() (Maurizio Lombardi) [1712917] - [target] scsi: target: Document when CMD_T_STOP and CMD_T_COMPLETE are set (Maurizio Lombardi) [1712917] - [target] scsi: target: Make the session shutdown code also wait for commands that are being aborted (Maurizio Lombardi) [1712917] - [target] scsi: target: Introduce transport_init_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Rename transport_init_session() into transport_alloc_session() (Maurizio Lombardi) [1712917] - [target] scsi: target: Move a list_del_init() statement (Maurizio Lombardi) [1712917] - [target] scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion (Maurizio Lombardi) [1712917] - [target] scsi: target: Use config_item_name() instead of open-coding it (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: Don't pass KERN_ERR to pr_err (Maurizio Lombardi) [1712917] - [target] scsi: target: remove target_find_device (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: add module wide block/reset_netlink support (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: misc nl code cleanup (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: simplify nl interface (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: track nl commands (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: delete unused __wait (Maurizio Lombardi) [1712917] - [target] scsi: tcmu: remove useless code and clean up the code style (Maurizio Lombardi) [1712917]- [ipc] ipc: do cyclic id allocation for the ipc object. (Waiman Long) [1710480] - [ipc] ipc: conserve sequence numbers in ipcmni_extend mode (Waiman Long) [1710480] - [ipc] ipc: allow boot time extension of IPCMNI from 32k to 16M (Waiman Long) [1710480] - [ipc] ipc/mqueue: optimize msg_get() (Waiman Long) [1710480] - [ipc] ipc/mqueue: remove redundant wq task assignment (Waiman Long) [1710480] - [ipc] ipc: prevent lockup on alloc_msg and free_msg (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for semmni (Waiman Long) [1710480] - [ipc] ipc: IPCMNI limit check for msgmni and shmmni (Waiman Long) [1710480] - [ipc] ipc/shm.c: use ERR_CAST() for shm_lock() error return (Waiman Long) [1710480] - [ipc] ipc/shm: properly return EIDRM in shm_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: update return value of ipc_getref from int to bool (Waiman Long) [1710480] - [ipc] ipc/util.c: further variable name cleanups (Waiman Long) [1710480] - [ipc] ipc: simplify ipc initialization (Waiman Long) [1710480] - [ipc] ipc: get rid of ids->tables_initialized hack (Waiman Long) [1710480] - [lib] lib/rhashtable: guarantee initial hashtable allocation (Waiman Long) [1710480] - [lib] lib/rhashtable: simplify bucket_table_alloc() (Waiman Long) [1710480] - [ipc] ipc: drop ipc_lock() (Waiman Long) [1710480] - [ipc] ipc/util.c: correct comment in ipc_obtain_object_check (Waiman Long) [1710480] - [ipc] ipc: rename ipcctl_pre_down_nolock() (Waiman Long) [1710480] - [ipc] ipc/util.c: use ipc_rcu_putref() for failues in ipc_addid() (Waiman Long) [1710480] - [ipc] ipc: reorganize initialization of kern_ipc_perm.seq (Waiman Long) [1710480] - [ipc] ipc: compute kern_ipc_perm.id under the ipc lock (Waiman Long) [1710480] - [x86] x86/speculation/mds: Improve CPU buffer clear documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Revert CPU buffer clear on double fault exit (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add 'mitigations=' support for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [s390] s390/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [powerpc] powerpc/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [mm] x86/speculation: Support 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kernel] cpu/speculation: Add 'mitigations=' cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Fix documentation typo (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Correct the possible MDS sysfs values (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/mds: Add MDSUM variant to the MDS documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Fix comment (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add SMT warning message (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Move arch_smt_update() call to after mitigation decisions (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds=full,nosmt cmdline option (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] Documentation: Add MDS vulnerability documentation (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] documentation: Move L1TF to separate directory (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation mode VMWERV (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [base] x86/speculation/mds: Add sysfs reporting for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add mitigation control for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Conditionally clear CPU buffers on idle entry (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm/vmx: Add MDS protection when L1D Flush is not active (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Clear CPU buffers on exit to user (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/mds: Add mds_clear_cpu_buffers() (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [kvm] x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add BUG_MSBDS_ONLY (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation/mds: Add basic bug infrastructure for MDS (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Consolidate CPU whitelists (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] x86/msr-index: Cleanup bit defines (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [documentation] x86/speculation/l1tf: Drop the swap storage limit restriction when l1tf=off (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [x86] x86/speculation: Cast ~SPEC_CTRL_STIBP atomic value to int (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [tools] tools power x86_energy_perf_policy: Override CFLAGS assignments and add LDFLAGS to build command (Waiman Long) [1713695 1690360 1690351 1690338] {CVE-2018-12126 CVE-2018-12127 CVE-2018-12130 CVE-2019-11091} - [scsi] scsi: qla2xxx: Fix read offset in qla24xx_load_risc_flash() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplify conditional check again (Himanshu Madhani) [1665555] - [scsi] qla2xxx: Update driver version to 10.01.00.15.08.1-k (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Secure flash update support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Simplification of register address used in qla_tmpl.c (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correction and improvement to fwdt processing (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Update flash read/write routine (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add support for multiple fwdump templates/segments (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Cleanups for NVRAM/Flash read/write path (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Correctly report max/min supported speeds (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Serdes support for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add Device ID for ISP28XX (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Fix routine qla27xx_dump_{mpi|ram}() (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Remove FW default template (Himanshu Madhani) [1665555] - [scsi] scsi: qla2xxx: Add fw_attr and port_no SysFS node (Himanshu Madhani) [1665555] - [netdrv] e1000e: Disable runtime PM on CNP+ (David Arcari) [1659179] - [netdrv] intel: correct return from set features callback (David Arcari) [1659179] - [netdrv] e1000e: Fix -Wformat-truncation warnings (David Arcari) [1659179] - [netdrv] e1000e: fix cyclic resets at link up with active tx (David Arcari) [1659179] - [netdrv] e1000e: fix a missing check for return value (David Arcari) [1659179] - [netdrv] e1000e: Exclude device from suspend direct complete optimization (David Arcari) [1659179] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (David Arcari) [1659179] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1659179] - [netdrv] e1000e: extend PTP gettime function to read system clock (David Arcari) [1659179] - [netdrv] e1000e: allow non-monotonic SYSTIM readings (David Arcari) [1659179] - [netdrv] intel-ethernet: use correct module license (David Arcari) [1659179] - [kernel] sched/cpufreq: Fix kobject memleak (Phil Auld) [1714719] - [kernel] sched/core: Check quota and period overflow at usec to nsec conversion (Phil Auld) [1714719] - [kernel] sched/core: Handle overflow in cpu_shares_write_u64 (Phil Auld) [1714719] - [kernel] sched/rt: Check integer overflow at usec to nsec conversion (Phil Auld) [1714719] - [base] arch_topology: Make cpu_capacity sysfs node as read-only (Phil Auld) [1714719] - [x86] sched/x86: Save [ER]FLAGS on context switch (Phil Auld) [1714719] - [kernel] sched/fair: Remove setting task's se->runnable_weight during PELT update (Phil Auld) [1714719] - [kernel] sched/fair: Disable LB_BIAS by default (Phil Auld) [1714719] - [arm64] sched/topology, arch/arm64: Rebuild the sched_domain hierarchy when the CPU capacity changes (Phil Auld) [1714719] - [base] sched/topology, drivers/base/arch_topology: Rebuild the sched_domain hierarchy when capacities change (Phil Auld) [1714719] - [kernel] sched/topology: Add SD_ASYM_CPUCAPACITY flag detection (Phil Auld) [1714719] - [kernel] sched/fair: Fix load_balance redo for !imbalance (Phil Auld) [1714719] - [tools] cpupower : frequency-set -r option misses the last cpu in related cpu list (Steve Best) [1717841] - [kernel] Uprobes: Fix kernel oops with delayed_uprobe_remove() (Gustavo Duarte) [1608798] - [kernel] trace_uprobe/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes/sdt: Prevent multiple reference counter for same uprobe (Gustavo Duarte) [1608798] - [kernel] uprobes: Support SDT markers having reference count (semaphore) (Gustavo Duarte) [1608798] - [kernel] Uprobe: Additional argument arch_uprobe to uprobe_write_opcode() (Gustavo Duarte) [1608798] - [kernel] Uprobes: Simplify uprobe_register() body (Gustavo Duarte) [1608798] - [pci] PCI: Rework pcie_retrain_link() wait loop (Myron Stowe) [1707902] - [pci] PCI: Work around Pericom PCIe-to-PCI bridge Retrain Link erratum (Myron Stowe) [1707902] - [pci] PCI: Factor out pcie_retrain_link() function (Myron Stowe) [1707902] - [tools] selftests/powerpc: Fix strncpy usage (Diego Domingos) [1662372] - [tools] selftests: Fix test errors related to lib.mk khdr target (Diego Domingos) [1662372] - [nvme] nvme-fc: use separate work queue to avoid warning (Ewan Milne) [1715135] - [scsi] scsi: scsi_transport_fc: nvme: display FC-NVMe port roles (Ewan Milne) [1715135] - [nvme] nvme-fc: correct csn initialization and increments on error (Ewan Milne) [1715135] - [nvme] nvme-multipath: avoid crash on invalid subsystem cntlid enumeration (Ewan Milne) [1715135] - [nvme] nvme-multipath: don't print ANA group state by default (Ewan Milne) [1715135] - [nvme] nvme-multipath: split bios with the ns_head bio_set before submitting (Ewan Milne) [1715135] - [nvme] nvme-multipath: relax ANA state check (Ewan Milne) [1715135] - [drm] drm/i915: Bump gen7+ fb size limits to 16kx16k (Lyude Paul) [1664969] - [drm] drm/i915: Bump fb stride limit to 128KiB for gen4+ and 256KiB for gen7+ (Lyude Paul) [1664969] - [drm] drm/i915: Align dumb buffer stride to 4k to allow for gtt remapping (Lyude Paul) [1664969] - [drm] drm/i915: Overcome display engine stride limits via GTT remapping (Lyude Paul) [1664969] - [drm] drm/i915: Shuffle stride checking code around (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add live vma selftest (Lyude Paul) [1664969] - [drm] drm/i915/selftests: Add mock selftest for remapped vmas (Lyude Paul) [1664969] - [drm] drm/i915: Add a new "remapped" gtt_view (Lyude Paul) [1664969] - [md] dax: Arrange for dax_supported check to span multiple devices (Jeff Moyer) [1665364] - [mm] mm/memory_hotplug.c: drop memory device reference after find_memory_block() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Retain security state after overwrite (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/pmem: fix a possible OOB access when read and write pmem (Jeff Moyer) [1665367 1665364 1665362] - [acpi] libnvdimm/security, acpi/nfit: unify zero-key for all security commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: provide fix for secure-erase to use zero-key (Jeff Moyer) [1665367 1665364 1665362 1584976] - [mm] mm/memory.c: fix modifying of page protection by insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix a kmemdup failure check (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Fix a potential NULL pointer dereference (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Always dump _DSM output payload (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Deposit pagetable even when installing zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/namespace: Clean up holder_class_store() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/of_pmem: Fix platform_no_drv_owner.cocci warnings (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Update NFIT flags error message (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Fix LBA masking during 'free list' population (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/btt: Remove unnecessary code in btt_freelist_init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Remove dax_label_reserve (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax: Check the end of the block-device capacity with dax_direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Avoid stale ARS results (Jeff Moyer) [1697175 1665367 1665364 1665362] - [acpi] nfit/ars: Allow root to busy-poll the ARS state machine (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Introduce scrub_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Remove ars_start_flags (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt short-ARS even in the no_init_ars case (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot (Jeff Moyer) [1697194 1665367 1665364 1665362] - [fs] fs/dax: NIT fix comment regarding start/end vs range (Jeff Moyer) [1665367 1665364 1665362] - [fs] fs/dax: Convert to use vmf_error() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Require opt-in for read-only label configurations (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pmem: Honor force_raw for legacy pmem regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/pfn: Account for PAGE_SIZE > info-block-size in nd_pfn_init() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Fix altmap reservation size calculation (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: Fix over-trim in trim_pfn_device() (Jeff Moyer) [1665367 1665364 1665362 1662227] - [nvdimm] libnvdimm/dimm: Add a no-BLK quirk based on NVDIMM family (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Add Hyper-V NVDIMM DSM command set to white list (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: acpi_nfit_ctl(): Check out_obj->type in the right place (Jeff Moyer) [1665367 1665364 1665362] - [acpi] nfit: Fix nfit_intel_shutdown_status() command submission (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm/security: Require nvdimm_security_setup_events() to succeed (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] nfit_test: fix security state pull for nvdimm security nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/security: Fix nvdimm_security_state() state request selection (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm/label: Clear 'updating' flag after label-set update (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Remove duplicate set nd_set in acpi_nfit_init_interleave_set() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id() (Jeff Moyer) [1665367 1665364 1665362] - [include] libnvdimm/dimm: Fix security capability detection for non-Intel NVDIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] nfit: Mark some functions as __maybe_unused (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] ACPI/nfit: delete the function to_acpi_nfit_desc (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: delete the redundant header file (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: add MEMORY_DEVICE_PRIVATE support (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] mm, devm_memremap_pages: fix shutdown handling (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: kill mapping "System RAM" support (Jeff Moyer) [1665367 1665364 1665362] - [kernel] mm, devm_memremap_pages: mark devm_memremap_pages() EXPORT_SYMBOL_GPL (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm/security: Quiet security operations (Jeff Moyer) [1665367 1665364 1665362 1584976] - [documentation] libnvdimm/security: Add documentation for nvdimm security support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: add Intel DSM 1.8 support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add overwrite support for nfit_test (Jeff Moyer) [1665367 1665364 1665362 1584976] - [tools] tools/testing/nvdimm: Add test support for Intel nvdimm security DSMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: add Intel DSM 1.8 master passphrase support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm/security: Add security DSM overwrite support (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add support for issue secure erase DSM to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add enable/update passphrase support for Intel nvdimms (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add disable passphrase support to Intel nvdimm. (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add unlock of nvdimm support for Intel DIMMs (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] acpi/nfit, libnvdimm: Add freeze security support to Intel nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Introduce nvdimm_security_ops (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys-encrypted: add nvdimm key format type to encrypted keys (Jeff Moyer) [1665367 1665364 1665362 1584976] - [security] keys: Export lookup_user_key to external users (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] acpi/nfit, libnvdimm: Store dimm id as a member to struct nvdimm (Jeff Moyer) [1665367 1665364 1665362 1584976] - [nvdimm] libnvdimm, namespace: Replace kmemdup() with kstrndup() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, label: Switch to bitmap_zalloc() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] ACPI/nfit: Adjust annotation for why return 0 if fail to find NFIT at start (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, bus: Check id immediately following ida_simple_get (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather than "ARS-short" (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [nvdimm] libnvdimm, pfn: Pad pfn namespaces relative to other regions (Jeff Moyer) [1665367 1665364 1665362 1662227] - [tools] tools/testing/nvdimm: Align test resources to 128M (Jeff Moyer) [1665367 1665364 1665362 1662227] - [acpi] acpi/nfit: Add support for Intel DSM 1.8 commands (Jeff Moyer) [1665367 1665364 1665362 1584976] - [acpi] Revert "acpi, nfit: Further restrict userspace ARS start requests" (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix ARS overflow continuation (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix the array size for dimm devices. (Jeff Moyer) [1665367 1665364 1665362 1658918] - [mm] mm: Fix warning in insert_pfn() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Further restrict userspace ARS start requests (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi, nfit: Fix Address Range Scrub completion tracking (Jeff Moyer) [1665367 1665364 1665362 1662224 1641487] - [tools] tools/testing/nvdimm: Populate dirty shutdown data (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Collect shutdown status (Jeff Moyer) [1665367 1665364 1665362 1662217] - [acpi] acpi, nfit: Introduce nfit_mem flags (Jeff Moyer) [1665367 1665364 1665362 1662217] - [nvdimm] libnvdimm, label: Fix sparse warning (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, namespace: Drop the repeat assignment for variable dev->parent (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, region: Fail badblocks listing for inactive regions (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pfn: during init, clear errors in the metadata area (Jeff Moyer) [1665367 1665364 1665362 1641565] - [nvdimm] libnvdimm: Set device node in nd_device_register (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: Hold reference on parent while scheduling async init (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm: remove duplicate include (Jeff Moyer) [1665367 1665364 1665362] - [fs] filesystem-dax: Fix use of zero page (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: Restore page attributes when clearing errors (Jeff Moyer) [1665367 1665364 1665362] - [drivers] device-dax: avoid hang on error before devm_memremap_pages() (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: improve emulation of smart injection (Jeff Moyer) [1685043 1665367 1665364 1665362] - [fs] filesystem-dax: Do not request kaddr and pfn when not required (Jeff Moyer) [1665367 1665364 1665362] - [drivers] dax/super: Do not request a pointer kaddr when not required (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [nvdimm] libnvdimm, pmem: kaddr and pfn can be NULL to ->direct_access() (Jeff Moyer) [1665367 1665364 1665362] - [acpi] acpi/nfit: queue issuing of ars when an uc error notification comes in (Jeff Moyer) [1665367 1665364 1665362 1641487] - [kernel] mm, dev_pagemap: Do not clear ->mapping on final put (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Fix support for emulating controller temperature (Jeff Moyer) [1665367 1665364 1665362] - [tools] tools/testing/nvdimm: Make DSM failure code injection an override (Jeff Moyer) [1665367 1665364 1665362 1658918] - [acpi] acpi, nfit: Prefer _DSM over _LSR for namespace label reads (Jeff Moyer) [1665367 1665364 1665362 1658918] - [nvdimm] libnvdimm: Introduce locked DIMM capacity support (Jeff Moyer) [1665367 1665364 1665362 1658918] - [drm] drm/nouveau: fix duplication of nv50_head_atom struct (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/disp/dp: respect sink limits when selecting failsafe link configuration (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: initial support for boards with TU117 chipset (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/core: allow detected chipset to be overridden (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gf119-gp10x: push HeadSetControlOutputResource() mthd when encoders change (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/nv50-: fix bug preventing non-vsync'd page flips (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/kms/gv100-: fix spurious window immediate interlocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/nouveau: forward error generated while resuming objects tree (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/nouveau/i2c: Disable i2c bus access after ->fini() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add WaDisableBankHangMode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/fbc: disable framebuffer compression on GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix setting 10 bit deep color mode (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add missing combo PHY lane power setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Factor out combo PHY lane power setup helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Corrupt DSI picture fix for GeminiLake (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix clockgating issue when using scalers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Suppress spurious combo PHY B warning (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable read only ppgtt support for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use Engine1 instance for gen11 pm interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Disable video turbo mode for rp control (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable media sampler powergate (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: introduce REG_BIT() and REG_GENMASK() to define register contents (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1664615 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Apply a recommended rc6 threshold (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dedicated rc6 enabling sequence for gen11 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Don't warn on spurious interrupts (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Handle rps interrupts without irq lock (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure we have enough memory bandwidth on ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sandybridge_pcode_read() deal with the second data register (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix ONLY icl+ max plane width (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix MG_DP_MODE() register programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Really calculate the cursor ddb based on the highest enabled wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Inline skl_update_pipe_wm() into its only caller (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass pipe_wm around so much (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Move some variables to tighter scope (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Keep plane watermarks enabled more aggressively (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make sure cursor has enough ddb for the selected wm level (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Allocate enough DDB for the cursor (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract skl_compute_wm_params() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Don't pass plane state to skl_compute_plane_wm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Accept alloc_size == blocks (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Introduce Comet Lake PCH (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/cml: Add CML PCI IDS (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix PSR2 selective update corruption after PSR1 setup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off the CUS when turning off a HDR plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix legacy gamma mode for ICL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Refactor icl_is_hdr_plane (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] drm/i915: Add new ICL PCI ID (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Fix CRC mismatch error for DP link layer compliance (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Prevent incorrect DBuf enabling (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Read out memory type (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on cnl+ (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Clean up intel_get_dram_info() a bit (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i914: s/l_info/dimm_l/ etc. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Generalize intel_is_dram_symmetric() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Use dram_dimm_info more (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract DIMM info on GLK too (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix DRAM size reporting for BXT (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract BXT DIMM helpers (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Polish skl_is_16gb_dimm() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Extract functions to derive SKL+ DIMM info (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Store DIMM rank information as a number (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Default to Thread Group preemption for compute workloads (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Fix the state checker for ICL Y planes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: move MG pll hw_state readout (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Finalize Wa_1408961008:icl (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Call MG_DP_MODE() macro with the right parameters order (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Drop redundant gamma mode mask (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Implement new w/a for underruns with wm1+ disabled (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Include "ignore lines" in skl+ wm state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] Revert "drm/i915: W/A for underruns with WM1+ disabled on icl" (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make MG PHY macros semantically consistent (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Make combo PHY DDI macro definitions consistent for ICL and CNL (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add degamma and gamma lut size to gen11 caps (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable pipe output csc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Enable ICL Pipe CSC block (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/icl: Add icl pipe degamma and gamma support (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/glk: Fix degamma lut programming (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Dump skl+ watermark changes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Update DSPCNTR gamma/csc bits during crtc_enable() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Disable pipe gamma when C8 pixel format is used (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe CSC when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Turn off pipe gamma when it's not needed (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe csc enable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Track pipe gamma enable/disable in crtc state (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915: Populate gamma_mode for all platforms (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Main backport to rebase from 4.18 to 5.1 (Lyude Paul) [1713573 1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] {CVE-2019-11085} - [include] list: Backport list_is_first() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] lib/scatterlist: Provide a DMA page iterator (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [acpi] ACPI / PMIC: Add support for executing PMIC MIPI sequence elements (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vfio: add edid api for display (vgpu) devices. (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm: don't miss the last page because of round-off error (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] PM-runtime: Add new interface to get accounted time (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: move i915_kick_out_vgacon to vgaarb (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [scripts] tracing: Avoid calling cc-option -mrecord-mcount for every Makefile (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb_helper: Allow leaking fbdev smem_start (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/fb: Stop leaking physical address (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: Add FBINFO_HIDE_SMEM_START flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] vt: Remove vc_panic_force_write (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] fbdev: Drop FBINFO_CAN_FORCE_OUTPUT flag (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [video] fbdev: fix kerneldoc (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] fbdev: add remove_conflicting_pci_framebuffers() (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [media] media: cec-notifier: Get notifier by device and connector name (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [base] driver core: Add device_link_remove function (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] include: Move ascii85 functions from i915 to linux/ascii85.h (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [mm] mm, drm/i915: mark pinned shmemfs pages as unevictable (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] list: introduce list_bulk_move_tail helper (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [fs] sysfs: constify sysfs create/remove files harder (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm/i915/selftests: Remove unused dmabuf->kmap routines, fix the build (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma-buf: remove kmap_atomic interface (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [include] include/linux/bitops.h: introduce BITS_PER_TYPE (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] dma_buf: remove device parameter from attach callback v2 (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [pci] PCI: Export pcie_get_speed_cap and pcie_get_width_cap (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [drm] drm: Add support for pps and compression mode command packet (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking/mutex: Fix mutex debug call and ww_mutex documentation (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: Implement an algorithm choice for Wound-Wait mutexes (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286] - [kernel] locking: WW mutex cleanup (Lyude Paul) [1707312 1688524 1685552 1685427 1665631 1665088 1664615 1664609 1664189 1664177 1664175 1664104 1662017 1660302 1643842 1640840 1639990 1639436 1637606 1633845 1633843 1633842 1504286]- [netdrv] igb: Fix WARN_ONCE on runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: use struct_size() helper (Corinna Vinschen) [1659168] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Corinna Vinschen) [1659168] - [netdrv] igb: Bump version number (Corinna Vinschen) [1659168] - [netdrv] Revert "igb: reduce CPU0 latency when updating statistics" (Corinna Vinschen) [1659168] - [netdrv] igb: Fix an issue that PME is not enabled during runtime suspend (Corinna Vinschen) [1659168] - [netdrv] igb: Change RXPBSIZE size when setting Qav mode (Corinna Vinschen) [1659168] - [netdrv] igb: reduce CPU0 latency when updating statistics (Corinna Vinschen) [1659168] - [netdrv] igb: fix uninitialized variables (Corinna Vinschen) [1659168] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659168] - [netdrv] igb: Fix format with line continuation whitespace (Corinna Vinschen) [1659168] - [netdrv] igb: extend PTP gettime function to read system clock (Corinna Vinschen) [1659168] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Corinna Vinschen) [1659168] - [netdrv] igb: remove ndo_poll_controller (Corinna Vinschen) [1659168] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659168] - [netdrv] igb: Replace mdelay() with msleep() in igb_integrated_phy_loopback() (Corinna Vinschen) [1659168] - [netdrv] igb: Replace GFP_ATOMIC with GFP_KERNEL in igb_sw_init() (Corinna Vinschen) [1659168] - [netdrv] igb: Use an advanced ctx descriptor for launchtime (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_phy: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb: e1000_82575: Mark expected switch fall-through (Corinna Vinschen) [1659168] - [netdrv] igb_main: Mark expected switch fall-throughs (Corinna Vinschen) [1659168] - [netdrv] igb: Use dma_wmb() instead of wmb() before doorbell writes (Corinna Vinschen) [1659168] - [netdrv] igb: Add support for ETF offload (Corinna Vinschen) [1659168] - [netdrv] igb: Only call skb_tx_timestamp after descriptors are ready (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_offload_cbs() (Corinna Vinschen) [1659168] - [netdrv] igb: Only change Tx arbitration when CBS is on (Corinna Vinschen) [1659168] - [netdrv] igb: Refactor igb_configure_cbs() (Corinna Vinschen) [1659168] - [fs] Revert "[fs] ext4: protect journal inode's blocks using block_validity" (Lukas Czerner) [1716549] - [fs] xfs: don't trip over uninitialized buffer on extent read of corrupted inode (Bill O'Donnell) [1715942] - [fs] xfs: always init bma in xfs_bmapi_write (Bill O'Donnell) [1715942] - [lib] rhashtable: Still do rehash when we get EEXIST (Vladis Dronov) [1712457] - [fs] vmcore: Add a kernel parameter novmcoredd (Kairui Song) [1705864] - [powerpc] powerpc/eeh: Correct retries in eeh_pe_reset_full() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Improve recovery of passed-through devices (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_clear_pe_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Add include_passed to eeh_pe_state_clear() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: remove sw_state from eeh_unfreeze_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_clear_frozen_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup control flow in eeh_handle_normal_event() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_ops.wait_state() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_pe_state_mark() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unnecessary eeh_pe_state_mark_with_cfg() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_enabled() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup logic in eeh_rmv_from_parent_pe() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup field names in eeh_rmv_data (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup list_head field names (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup eeh_add_virt_device() (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup unused field in eeh_dev (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Cleanup EEH_POSTPONED_PROBE (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Avoid misleading message "EEH: no capable adapters found" (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix use of EEH_PE_KEEP on wrong field (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix null deref for devices removed during EEH (Sam Bobroff) [1352405] - [powerpc] powerpc/eeh: Fix possible null deref in eeh_dump_dev_log() (Sam Bobroff) [1352405] - [edac] x86/MCE/AMD, EDAC/mce_amd: Add new error descriptions for some SMCA bank types (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new McaTypes for CS, PSP, and SMU units (Janakarajan Natarajan) [1688469] - [x86] x86/MCE/AMD, EDAC/mce_amd: Add new MP5, NBIO, and PCIE SMCA bank types (Janakarajan Natarajan) [1688469] - [scsi] megaraid_sas: remove tech preview from Aero series (Tomas Henzl) [1668409] - [scsi] megaraid_sas: sync with mainline (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix spelling mistake "oustanding" -> "outstanding" (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Make megasas_host_device_list_query() static (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: reduce module load time (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove a bunch of set but not used variables (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: return error when create DMA pool failed (Tomas Henzl) [1668409] {CVE-2019-11810} - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update structures for HOST_DEVICE_LIST DCMD (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for DEVICE_LIST DCMD in driver (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework device add code in AEN path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rework code to get PD and LD list (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: correct an info message (Tomas Henzl) [1668409] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: fix out-of-bound array accesses (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: changes to function prototypes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: NULL check before some freeing functions is not needed (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas_fusion: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid: megaraid_sas_base: Mark expected switch fall-through (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: modify max supported lds related print (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: remove unused macro (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: increase timeout for IOC INIT to 180seconds (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove double endian conversion (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Re-use max_mfi_cmds to calculate queue sizes (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Rename scratch_pad registers (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Remove spin lock for dpc operation (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: optimize raid context access in IO path (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fail init if heartbeat timer fails (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: For SRIOV, do not set STOP_ADP bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix combined reply queue mode detection (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix module parameter description (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix goto labels in error handling (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Update copyright information (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add check for reset adapter bit (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Fix msleep granularity (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add support for FW snap dump (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: Add watchdog thread to detect Firmware fault (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: switch to generic DMA API (Tomas Henzl) [1668409] - [scsi] scsi: megaraid_sas: fix a missing-check bug (Tomas Henzl) [1668409] - [kernel] get_maintainer.pl: Add default .get_maintainer.conf file for RHEL (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow option --mpath to read all files in (Prarit Bhargava) [1714630] - [scripts] get_maintainer.pl: add -mpath= for MAINTAINERS file location (Prarit Bhargava) [1714630] - [scripts] get_maintainer: allow usage outside of kernel tree (Prarit Bhargava) [1714630] - [scripts] Revert "[scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override" (Prarit Bhargava) [1714630] - [include] signal: Make siginmask safe when passed a signal of 0 (Waiman Long) [1714351] - [fs] signal: Don't send signals to tasks that don't exist (Waiman Long) [1714351] - [kernel] signal: Restore the stop PTRACE_EVENT_EXIT (Waiman Long) [1714351] - [kernel] signal: Better detection of synchronous signals (Waiman Long) [1714351] - [kernel] signal: Always notice exiting tasks (Waiman Long) [1714351] - [kernel] signal: Always attempt to allocate siginfo for SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user32 (Waiman Long) [1714351] - [kernel] signal: Guard against negative signal numbers in copy_siginfo_from_user (Waiman Long) [1714351] - [kernel] signal: In sigqueueinfo prefer sig not si_signo (Waiman Long) [1714351] - [include] signal: Use a smaller struct siginfo in the kernel (Waiman Long) [1714351] - [include] signal: Distinguish between kernel_siginfo and siginfo (Waiman Long) [1714351] - [kernel] signal: Introduce copy_siginfo_from_user and use it's return value (Waiman Long) [1714351] - [arm64] signal: Remove the need for __ARCH_SI_PREABLE_SIZE and SI_PAD_SIZE (Waiman Long) [1714351] - [kernel] signal: Fail sigqueueinfo if si_signo != sig (Waiman Long) [1714351] - [kernel] signal/sparc: Move EMT_TAGOVF into the generic siginfo.h (Waiman Long) [1714351] - [mm] signal/arm: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Use send_sig_fault where appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_ptrace_errno_trap (Waiman Long) [1714351] - [arm64] signal/arm64: In ptrace_hbptriggered name the signal description string (Waiman Long) [1714351] - [arm64] signal/arm64: Remove arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_mceerr as appropriate (Waiman Long) [1714351] - [arm64] signal/arm64: Add and use arm64_force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/arm64: Only call set_thread_esr once in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Only perform one esr_to_fault_info call in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Expand __do_user_fault and remove it (Waiman Long) [1714351] - [mm] signal/arm64: For clarity separate the 3 signal sending cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Consolidate the two hwpoison cases in do_page_fault (Waiman Long) [1714351] - [mm] signal/arm64: Factor set_thread_esr out of __do_user_fault (Waiman Long) [1714351] - [arm64] signal/arm64: Factor out arm64_show_signal from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Remove unneeded tsk parameter from arm64_force_sig_info (Waiman Long) [1714351] - [arm64] signal/arm64: Push siginfo generation into arm64_notify_die (Waiman Long) [1714351] - [powerpc] signal/powerpc: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [powerpc] signal/powerpc: Simplify _exception_pkey by using force_sig_pkuerr (Waiman Long) [1714351] - [powerpc] signal/powerpc: Specialize _exception_pkey for handling pkey exceptions (Waiman Long) [1714351] - [powerpc] signal/powerpc: Call force_sig_fault from _exception (Waiman Long) [1714351] - [powerpc] signal/powerpc: Factor the common exception code into exception_common (Waiman Long) [1714351] - [powerpc] powerpc/traps: Print unhandled signals in a separate function (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/powerpc: Call _exception_pkey directly from bad_key_fault_exception (Waiman Long) [1714351] - [mm] signal/powerpc: Remove pkey parameter from __bad_area (Waiman Long) [1714351] - [mm] signal/powerpc: Use force_sig_mceerr as appropriate (Waiman Long) [1714351] - [x86] signal/x86: Use force_sig_fault where appropriate (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey by value (Waiman Long) [1714351] - [mm] signal/x86: Replace force_sig_info_fault with force_sig_fault (Waiman Long) [1714351] - [mm] signal/x86: Call force_sig_pkuerr from __bad_area_nosemaphore (Waiman Long) [1714351] - [mm] signal/x86: Pass pkey not vma into __bad_area (Waiman Long) [1714351] - [mm] signal/x86: Don't compute pkey in __do_page_fault (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from mm_fault_error (Waiman Long) [1714351] - [mm] signal/x86: Remove the pkey parameter from do_sigbus (Waiman Long) [1714351] - [mm] signal/x86: Remove pkey parameter from bad_area_nosemaphore (Waiman Long) [1714351] - [x86] signal/x86/traps: Simplify trap generation (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig instead of open coding it. (Waiman Long) [1714351] - [x86] signal/x86/traps: Use force_sig_bnderr (Waiman Long) [1714351] - [x86] signal/x86/traps: Move more code into do_trap_no_signal so it can be reused (Waiman Long) [1714351] - [x86] signal/x86/traps: Factor out show_signal (Waiman Long) [1714351] - [x86] signal/x86: Move mpx siginfo generation into do_bounds (Waiman Long) [1714351] - [x86] signal/x86: In trace_mpx_bounds_register_exception add __user annotations (Waiman Long) [1714351] - [mm] signal/x86: Move MCE error reporting out of force_sig_info_fault (Waiman Long) [1714351] - [x86] signal/x86: Inline fill_sigtrap_info in it's only caller send_sigtrap (Waiman Long) [1714351] - [powerpc] signal: Simplify tracehook_report_syscall_exit (Waiman Long) [1714351] - [kernel] signal: Pair exports with their functions (Waiman Long) [1714351] - [kernel] signal: Remove specific_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Use group_send_sig_info to kill all processes in a pid namespace (Waiman Long) [1714351] - [tty] tty_io: Use group_send_sig_info in __do_SACK to note it is a session being killed (Waiman Long) [1714351] - [misc] signal/GenWQE: Fix sending of SIGKILL (Waiman Long) [1714351] - [include] signal: Remove SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Use SEND_SIG_PRIV not SEND_SIG_FORCED with SIGKILL and SIGSTOP (Waiman Long) [1714351] - [kernel] signal: Never allocate siginfo for SIGKILL or SIGSTOP (Waiman Long) [1714351] - [usb] signal: Don't send siginfo to kthreads. (Waiman Long) [1714351] - [usb] signal: Remove the siginfo paramater from kernel_dqueue_signal (Waiman Long) [1714351] - [tty] signal: send_sig_all no longer needs SEND_SIG_FORCED (Waiman Long) [1714351] - [kernel] signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid namespace init (Waiman Long) [1714351] - [x86] signal: Properly deliver SIGSEGV from x86 uprobes (Waiman Long) [1714351] - [kernel] signal: Properly deliver SIGILL from uprobes (Waiman Long) [1714351] - [kernel] signal: Always ignore SIGKILL and SIGSTOP sent to the global init (Waiman Long) [1714351] - [iommu] mm: convert return type of handle_mm_fault() caller to vm_fault_t (Waiman Long) [1714351] - [kernel] signal: make get_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make sigkill_pending() return bool (Waiman Long) [1714351] - [kernel] signal: make legacy_queue() return bool (Waiman Long) [1714351] - [kernel] signal: make wants_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make flush_sigqueue_mask() void (Waiman Long) [1714351] - [kernel] signal: make unhandled_signal() return bool (Waiman Long) [1714351] - [kernel] signal: make recalc_sigpending_tsk() return bool (Waiman Long) [1714351] - [kernel] signal: make has_pending_signals() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_task_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make sig_handler_ignored() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_ok_by_cred() return bool (Waiman Long) [1714351] - [kernel] signal: simplify rt_sigaction() (Waiman Long) [1714351] - [kernel] signal: make do_sigpending() void (Waiman Long) [1714351] - [kernel] signal: make may_ptrace_stop() return bool (Waiman Long) [1714351] - [kernel] signal: make kill_as_cred_perm() return bool (Waiman Long) [1714351] - [kernel] signal: make force_sigsegv() void (Waiman Long) [1714351] - [kernel] signal: Don't restart fork when signals come in. (Waiman Long) [1714351] - [kernel] fork: Have new threads join on-going signal group stops (Waiman Long) [1714351] - [include] fork: Skip setting TIF_SIGPENDING in ptrace_init_task (Waiman Long) [1714351] - [kernel] signal: Add calculate_sigpending() (Waiman Long) [1714351] - [kernel] fork: Unconditionally exit if a fatal signal is pending (Waiman Long) [1714351] - [kernel] fork: Move and describe why the code examines PIDNS_ADDING (Waiman Long) [1714351] - [kernel] signal: Push pid type down into complete_signal. (Waiman Long) [1714351] - [kernel] signal: Push pid type down into __send_signal (Waiman Long) [1714351] - [kernel] signal: Push pid type down into send_signal (Waiman Long) [1714351] - [tty] signal: Pass pid type into do_send_sig_info (Waiman Long) [1714351] - [fs] signal: Pass pid type into send_sigio_to_task & send_sigurg_to_task (Waiman Long) [1714351] - [kernel] signal: Pass pid type into group_send_sig_info (Waiman Long) [1714351] - [kernel] signal: Pass pid and pid type into send_sigqueue (Waiman Long) [1714351] - [kernel] posix-timers: Noralize good_sigevent (Waiman Long) [1714351] - [fs] signal: Use PIDTYPE_TGID to clearly store where file signals will be sent (Waiman Long) [1714351] - [kernel] pid: Implement PIDTYPE_TGID (Waiman Long) [1714351] - [include] pids: Move the pgrp and session pid pointers from task_struct to signal_struct (Waiman Long) [1714351] - [fs] pids: Compute task_tgid using signal->leader_pid (Waiman Long) [1714351] - [kernel] pids: Move task_pid_type into sched/signal.h (Waiman Long) [1714351] - [init] pids: Initialize leader_pid in init_task (Waiman Long) [1714351]- [s390] s390: enable processes for mio instructions (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to disable usage of MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: provide support for MIO instructions (Philipp Rudo) [1651734] - [s390] s390/pci: improve bar check (Philipp Rudo) [1651734] - [s390] s390/ism: move oddities of device IO to wrapper function (Philipp Rudo) [1651734] - [s390] s390/pci: move io address mapping code to pci_insn.c (Philipp Rudo) [1651734] - [s390] s390/pci: add parameter to force floating irqs (Philipp Rudo) [1651735] - [s390] s390/pci: gather statistics for floating vs directed irqs (Philipp Rudo) [1651735] - [s390] s390: show statistics for MSI IRQs (Philipp Rudo) [1651735] - [s390] s390/pci: provide support for CPU directed interrupts (Philipp Rudo) [1651735] - [s390] s390/airq: provide cacheline aligned ivs (Philipp Rudo) [1651735] - [s390] s390/pci: clarify interrupt vector usage (Philipp Rudo) [1651735] - [s390] s390/airq: recognize directed interrupts (Philipp Rudo) [1651735] - [s390] s390/sclp: detect DIRQ facility (Philipp Rudo) [1651735] - [s390] s390/pci: move everything irq related to pci_irq.c (Philipp Rudo) [1651735] - [s390] s390/pci: remove stale rc (Philipp Rudo) [1651735] - [s390] s390/pci: remove unused define (Philipp Rudo) [1651735] - [s390] s390/pci: mark command line parser data __initdata (Philipp Rudo) [1651735] - [cpufreq] cpufreq: intel_pstate: Ignore turbo active ratio in HWP (David Arcari) [1711970] - [scsi] mpt3sas: remove tech preview from Aero series (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix indentation issue (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update mpt3sas driver version to 28.100.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Improve the threshold value and introduce module param (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Load balance to improve performance and avoid soft lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Irq poll to avoid CPU hard lockups (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: simplify interrupt handler (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix typo in request_desript_type (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add missing breaks in switch statements (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Update driver version to 27.102.00.00 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for ATLAS PCIe switch (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Add support for NVMe Switch Adapter (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Rename mpi endpoint device ID macro. (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: mpt3sas_scsih: Mark expected switch fall-through (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix memory ordering on 64bit writes (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: fix spelling mistake "manufaucturing" -> "manufacturing" (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix driver modifying persistent data in Manufacturing page11 (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Don't modify EEDPTagMode field setting on SAS3.5 HBA devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Fix Sync cache command failure during driver unload (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Call sas_remove_host before removing the target devices (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Refactor mpt3sas_wait_for_ioc function (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Separate out mpt3sas_wait_for_ioc (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: Added new #define variable IOC_OPERATIONAL_WAIT_COUNT (Tomas Henzl) [1684444] - [scsi] scsi: mpt3sas: switch to generic DMA API (Tomas Henzl) [1684444] - [tools] perf tools beauty ioctl: Support new ISO7816 commands (Michael Petlan) [1709243] - [tools] perf tools: Restore proper cwd on return from mnt namespace (Michael Petlan) [1709243] - [tools] perf tools: Fix crash on synthesizing the unit (Michael Petlan) [1709243] - [tools] perf tools: Do not zero sample_id_all for group members (Michael Petlan) [1709243] - [tools] perf beauty: Use SRCARCH, ARCH=x86_64 must map to "x86" to find the headers (Michael Petlan) [1709243] - [tools] perf intel-pt: Add MTC and CYC timestamps to debug log (Michael Petlan) [1709243] - [tools] perf intel-pt: Add more event information to debug log (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fix table find when table re-ordered (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add help window (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add Selected branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Fall back to /usr/local/lib/libxed.so (Michael Petlan) [1709243] - [tools] perf top: Display the LBR stats in callchain entry (Michael Petlan) [1709243] - [tools] perf stat: Handle different PMU names with common prefix (Michael Petlan) [1709243] - [tools] perf record: Support weak groups (Michael Petlan) [1709243] - [tools] perf evlist: Move perf_evsel__reset_weak_group into evlist (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Start collecting pathnames in the BPF program (Michael Petlan) [1709243] - [tools] perf trace: Fix setting of augmented payload when using eBPF + raw_syscalls (Michael Petlan) [1709243] - [tools] perf trace: When augmenting raw_syscalls plug raw_syscalls:sys_exit too (Michael Petlan) [1709243] - [tools] perf examples bpf: Start augmenting raw_syscalls:sys_{start,exit} (Michael Petlan) [1709243] - [tools] perf intel-pt/bts: Calculate cpumode for synthesized samples (Michael Petlan) [1709243] - [tools] perf intel-pt: Insert callchain context into synthesized callchains (Michael Petlan) [1709243] - [tools] perf top: Start display thread earlier (Michael Petlan) [1709243] - [tools] perf trace beauty: Use the mmap flags table generated from headers (Michael Petlan) [1709243] - [tools] perf beauty: Wire up the mmap flags table generator to the Makefile (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MAP_ mmap's flag constants (Michael Petlan) [1709243] - [tools] perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc} (Michael Petlan) [1709243] - [tools] perf cs-etm: Correct CPU mode for samples (Michael Petlan) [1709243] - [tools] perf unwind: Take pgoff into account when reporting elf to libdwfl (Michael Petlan) [1709243] - [tools] perf top: Do not use overwrite mode by default (Michael Petlan) [1709243] - [tools] perf trace: Beautify mount's first pathname arg (Michael Petlan) [1709243] - [tools] perf trace: Beautify the umount's 'name' argument (Michael Petlan) [1709243] - [tools] perf trace: Consider syscall aliases too (Michael Petlan) [1709243] - [tools] perf trace beauty: Beautify mount/umount's 'flags' argument (Michael Petlan) [1709243] - [tools] perf trace beauty: Allow syscalls to mask an argument before considering it (Michael Petlan) [1709243] - [tools] perf beauty: Introduce strarray__scnprintf_flags() (Michael Petlan) [1709243] - [tools] perf beauty: Switch from GPL v2.0 to LGPL v2.1 (Michael Petlan) [1709243] - [tools] perf beauty: Add a generator for MS_ mount/umount's flag constants (Michael Petlan) [1709243] - [tools] tools include uapi: Grab a copy of linux/fs.h (Michael Petlan) [1709243] - [tools] perf script: Support total cycles count (Michael Petlan) [1709243] - [tools] perf script: Make itrace script default to all calls (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add All branches report (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to display all the database tables (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to shrink / enlarge font (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add ability to find symbols in the call-graph (Michael Petlan) [1709243] - [tools] perf scripts python: exported-sql-viewer.py: Add support for multiple sub-windows (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Rename to exported-sql-viewer.py (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Refactor TreeItem class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add data helper functions (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Factor out CallGraphModel from TreeModel (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Remove use of setObjectName() (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Add a class for global data (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Separate the database details into a class (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Make a "Main" function (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Change icon (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Set a minimum window size (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Provide better default column sizes (Michael Petlan) [1709243] - [tools] perf scripts python: call-graph-from-sql.py: Use SPDX license identifier (Michael Petlan) [1709243] - [tools] perf trace: Introduce per-event maximum number of events property (Michael Petlan) [1709243] - [tools] perf script: Flush output stream after events in verbose mode (Michael Petlan) [1709243] - [tools] perf script: Allow extended console debug output (Michael Petlan) [1709243] - [tools] perf stat: Poll for monitored tasks being alive (Michael Petlan) [1709243] - [tools] perf trace: Drop thread refcount in trace__event_handler() (Michael Petlan) [1709243] - [tools] perf trace: Drop addr_location refcounts (Michael Petlan) [1709243] - [tools] perf evsel: Mark a evsel as disabled when asking the kernel do disable it (Michael Petlan) [1709243] - [tools] perf evsel: Introduce per event max_events property (Michael Petlan) [1709243] - [tools] tools lib subcmd: Introduce OPTION_ULONG (Michael Petlan) [1709243] - [tools] perf arm64: Fix generate system call table failed with /tmp mounted with noexec (Michael Petlan) [1709243] - [tools] perf symbols: Set PLT entry/header sizes properly on Sparc (Michael Petlan) [1709243] - [tools] perf jitdump: Add Sparc support. (Michael Petlan) [1709243] - [tools] perf annotate: Add Sparc support (Michael Petlan) [1709243] - [tools] perf record: Encode -k clockid frequency into Perf trace (Michael Petlan) [1709243] - [tools] perf probe: Support SDT markers having reference counter (semaphore) (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Move struct tep_handler definition in a local header file (Michael Petlan) [1709243] - [tools] tools lib traceevent: Separate out tep_strerror() for strerror_r() issues (Michael Petlan) [1709243] - [tools] perf python: More portable way to make CFLAGS work with clang (Michael Petlan) [1709243] - [tools] perf python: Make clang_has_option() work on Python 3 (Michael Petlan) [1709243] - [tools] perf tools: Free temporary 'sys' string in read_event_files() (Michael Petlan) [1709243] - [tools] perf tools: Avoid double free in read_event_file() (Michael Petlan) [1709243] - [tools] perf tools: Free 'printk' string in parse_ftrace_printk() (Michael Petlan) [1709243] - [tools] perf tools: Cleanup trace-event-info 'tdata' leak (Michael Petlan) [1709243] - [tools] perf strbuf: Match va_{add,copy} with va_end (Michael Petlan) [1709243] - [tools] perf test: S390 does not support watchpoints in test 22 (Michael Petlan) [1709243] - [tools] perf auxtrace: Include missing asm/bitsperlong.h to get BITS_PER_LONG (Michael Petlan) [1709243] - [tools] tools include: Adopt linux/bits.h (Michael Petlan) [1709243] - [tools] perf intel-pt: Implement decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf intel-pt: Add decoder flags for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__process() for trace begin / end (Michael Petlan) [1709243] - [tools] perf tools: Improve thread_stack__event() for trace begin / end (Michael Petlan) [1709243] - [tools] perf db-export: Add trace begin / end branch type variants (Michael Petlan) [1709243] - [tools] perf script: Enhance sample flags for trace begin / end (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enum filter_trivial_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename data2host*() APIs (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename struct plugin_list to struct tep_plugin_list (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to structs filter_type and event_filter (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to various structs filter_arg_*. (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to struct filter_{arg,value_type} (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{exp,arg}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix tep_ to enums filter_{boolean,op,cmp}_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum print_arg_type to enum tep_print_arg_type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Add prefix tep_ to all print_* structures (Michael Petlan) [1709243] - [tools] tools lib traceevent: Add prefix TEP_ to all EVENT_FL_* flags (Michael Petlan) [1709243] - [tools] tools lib traceevent: Rename enum event_{sort_}type to enum tep_event_{sort_}type (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename enum format_flags to enum tep_format_flags (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct format{_field} to struct tep_format{_field} (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Rename struct event_format to struct tep_event_format (Michael Petlan) [1709243] - [tools] perf script: Print DSO for callindent (Michael Petlan) [1709243] - [tools] perf script: Allow sym and dso without ip, addr (Michael Petlan) [1709243] - [tools] tools lib subcmd: Support overwriting the pager (Michael Petlan) [1709243] - [tools] perf tools: Report itrace options in help (Michael Petlan) [1709243] - [tools] perf help: Add missing subcommand `version` (Michael Petlan) [1709243] - [tools] perf tools: Initialize perf_data_file fd field (Michael Petlan) [1709243] - [tools] perf util: Make copyfile_offset() global (Michael Petlan) [1709243] - [tools] perf tools: Add 'struct perf_mmap' arg to record__write() (Michael Petlan) [1709243] - [tools] perf auxtrace: Pass struct perf_mmap into mmap__read* functions (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op3 (Michael Petlan) [1709243] - [tools] perf tools: Remove perf_tool from event_op2 (Michael Petlan) [1709243] - [tools] perf bpf-loader: use PTR_ERR_OR_ZERO inetead of return code (Michael Petlan) [1709243] - [tools] tools include: Adopt PTR_ERR_OR_ZERO from the kernel err.h header (Michael Petlan) [1709243] - [tools] perf ordered_events: Prevent crossing max_alloc_size (Michael Petlan) [1709243] - [tools] perf ordered_events: Add 'struct ordered_events_buffer' layer (Michael Petlan) [1709243] - [tools] perf test: Add watchpoint test (Michael Petlan) [1709243] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo (Michael Petlan) [1709243] - [tools] perf map: Turn some pr_warning() to pr_debug() (Michael Petlan) [1709243] - [tools] perf trace: Use the raw_syscalls:sys_enter for the augmented syscalls (Michael Petlan) [1709243] - [tools] perf trace: Setup augmented_args in the raw_syscalls:sys_enter handler (Michael Petlan) [1709243] - [tools] perf trace: Introduce syscall__augmented_args() method (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Avoid optimization to pass older BPF validators (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Check probe_read_str() return separately (Michael Petlan) [1709243] - [tools] perf annotate: Handle arm64 move instructions (Michael Petlan) [1709243] - [tools] perf trace beauty: Alias 'umount' to 'umount2' (Michael Petlan) [1709243] - [tools] perf stat: Move the display functions to stat-display.c (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_events' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'walltime_*' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Propagate 'struct target' arg to sort_aggr_thread() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_merge' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'big_num' data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Do not use the global 'evsel_list' in print functions (Michael Petlan) [1709243] - [tools] perf stat: Move *_aggr_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move ru_* data to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_mixed_hw_group_error' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'print_free_counters_hint' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'null_run' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Add 'walltime_nsecs_stats' pointer to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' to aggr_update_shadow() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' to first_shadow_cpu() (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only_len' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'run_count' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use 'evsel->evlist' instead of 'evsel_list' in collect_all_aliases() (Michael Petlan) [1709243] - [tools] perf stat: Pass 'evlist' argument to print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'target' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move 'unit_width' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'metric_only' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'interval_clear' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move csv_* to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Pass a 'struct perf_stat_config' argument to global print functions (Michael Petlan) [1709243] - [tools] perf stat: Pass 'struct perf_stat_config' argument to local print functions (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move STAT_RECORD out of perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Introduce perf_evlist__print_counters() (Michael Petlan) [1709243] - [tools] perf stat: Move perf_stat_synthesize_config() to stat.c (Michael Petlan) [1709243] - [tools] perf stat: Add 'perf_event__handler_t' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_evlist' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_tool' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Add 'struct perf_stat_config' argument to perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Rename 'is_pipe' argument to 'attrs' in perf_stat_synthesize_config() (Michael Petlan) [1709243] - [tools] perf stat: Move create_perf_stat_counter() to stat.c (Michael Petlan) [1709243] - [tools] perf evsel: Introduce perf_evsel__store_ids() (Michael Petlan) [1709243] - [tools] perf tools: Switch 'session' argument to 'evlist' in perf_event__synthesize_attrs() (Michael Petlan) [1709243] - [tools] perf stat: Add 'identifier' flag to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use local config arg for scale in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf stat: Move 'no_inherit' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Move 'initial_delay' to 'struct perf_stat_config' (Michael Petlan) [1709243] - [tools] perf stat: Use evsel->threads in create_perf_stat_counter() (Michael Petlan) [1709243] - [tools] perf trace: Show comm and tid for tracepoint events (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Hook into syscalls:sys_exit_SYSCALL too (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Rename augmented_*_syscall__enter to just *_syscall (Michael Petlan) [1709243] - [tools] perf augmented_syscalls: Update the header comments (Michael Petlan) [1709243] - [tools] perf bpf: Add syscall_exit() helper (Michael Petlan) [1709243] - [tools] tools lib traceevent, perf tools: Split trace-seq related APIs in a separate header file (Michael Petlan) [1709243] - [tools] perf report: Create auxiliary trace data files for s390 (Michael Petlan) [1709243] - [tools] perf trace beauty: Reorganize 'struct sockaddr *' beautifier (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment sendto's 'addr' arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment bind's 'myaddr' sockaddr arg (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Add augmented_sockaddr_syscall_enter() (Michael Petlan) [1709243] - [tools] perf trace augmented_syscalls: Augment connect's 'sockaddr' arg (Michael Petlan) [1709243] - [tools] perf bpf: Add linux/socket.h to the headers accessible to bpf proggies (Michael Petlan) [1709243] - [tools] perf bpf: Give precedence to bpf header dir (Michael Petlan) [1709243] - [tools] perf trace: Add a etcsnoop.c augmented syscalls eBPF utility (Michael Petlan) [1709243] - [tools] perf trace: Augment 'newstat' (aka 'stat') filename ptr (Michael Petlan) [1709243] - [tools] perf trace: Introduce augmented_filename_syscall_enter() declarator (Michael Petlan) [1709243] - [tools] perf trace: Augment inotify_add_watch pathname syscall arg (Michael Petlan) [1709243] - [tools] perf trace: Augment the 'open' syscall 'filename' arg (Michael Petlan) [1709243] - [tools] perf trace: Use the augmented filename, expanding syscall enter pointers (Michael Petlan) [1709243] - [tools] perf trace: Show comm/tid for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Extract the comm/tid printing for syscall enter (Michael Petlan) [1709243] - [tools] perf trace: Print the syscall name for augmented_syscalls (Michael Petlan) [1709243] - [tools] perf trace: Make the augmented_syscalls filter out the tracepoint event (Michael Petlan) [1709243] - [tools] perf trace: Pass augmented args to the arg formatters when available (Michael Petlan) [1709243] - [x86] perf/x86/intel: Disallow precise_ip on BTS events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add generic branch tracing check to intel_pmu_has_bts() (Michael Petlan) [1709243] - [x86] perf/x86/intel: Move branch tracing setup to the Intel-specific source file (Michael Petlan) [1709243] - [x86] perf/x86/intel: Fix regression by default disabling perfmon v4 interrupt handling (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Support CoffeeLake 8th CBOX (Michael Petlan) [1709243] - [x86] perf/x86/intel/uncore: Add more IMC PCI IDs for KabyLake and CoffeeLake CPUs (Michael Petlan) [1709243] - [tools] perf tools: Don't clone maps from parent when synthesizing forks (Michael Petlan) [1709243] - [tools] perf top: Allow disabling the overwrite mode (Michael Petlan) [1709243] - [kernel] perf/core: Clean up inconsisent indentation (Michael Petlan) [1709243] - [tools] perf script: Implement --graph-function (Michael Petlan) [1709243] - [tools] tools script: Add --call-trace and --call-ret-trace (Michael Petlan) [1709243] - [tools] perf script: Add --insn-trace for instruction decoding (Michael Petlan) [1709243] - [tools] perf trace: Introduce --max-events (Michael Petlan) [1709243] - [x86] perf/x86/intel: Add quirk for Goldmont Plus (Michael Petlan) [1709243] - [kernel] perf: Suppress AUX/OVERWRITE records (Michael Petlan) [1709243] - [x86] perf/x86/intel/pt: Annotate 'pt_cap_group' with __ro_after_init (Michael Petlan) [1709243] - [x86] perf/x86: Add __ro_after_init annotations (Michael Petlan) [1709243] - [x86] x86/mm/mem_encrypt: Disable all instrumentation for early SME setup (Janakarajan Natarajan) [1679265] - [fs] cifs: fix copy_file_range to allow write on the same file (Leif Sahlberg) [1689100] - [infiniband] Revert "[infiniband] IB/usnic: Remove stub functions" (Jonathan Toppins) [1713753] - [x86] Update stepping values for Whiskey Lake U/Y (David Arcari) [1704801] - [powerpc] powerpc/perf: Trace imc PMU functions (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Trace imc events detection and cpuhotplug (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Declare static identifier a such (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Add privileged access check for thread_imc (Jiri Olsa) [1608796] - [powerpc] powerpc/perf: Rearrange setting of ldbar for thread-imc (Jiri Olsa) [1608796] - [powerpc] powerpc/include: Add data structures and macros for IMC trace mode (Jiri Olsa) [1608796] - [scsi] hpsa: correct-static-checker-issue-in-reset-handler (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: update driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device resets (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: do-not-complete-cmds-for-deleted-devices (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: wait longer for ptraid commands (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for tag collision (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: use local workqueues instead of system workqueues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct simple mode (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: correct device id issues (Joseph Szczypek) [1713772] - [scsi] scsi: hpsa: check for lv removal (Joseph Szczypek) [1713772] - [mm] mm, slub: restore the original intention of prefetch_freepointer() (Rafael Aquini) [1714671] - [fs] Revert "add KABI padding to dentry structure" (Waiman Long) [1714253] - [crypto] crypto: drbg - add FIPS 140-2 CTRNG for noise source (Herbert Xu) [1687905] - [infiniband] RDMA/qedr: Fix incorrect device rate. (Manish Chopra) [1713580] - [scsi] scsi: bnx2fc: remove unneeded variable (Nilesh Javali) [1665308] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665308] - [char] ipmi:ssif: compare block number correctly for multi-part return messages (Tony Camuso) [1712159] - [kernel] kernel/sysctl.c: define minmax conv functions in terms of non-minmax versions (Alex Gladkov) [1683922] - [kernel] kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv (Alex Gladkov) [1683922] - [tools] tools/testing/selftests/sysctl/sysctl.sh: add tests for >32-bit values written to 32-bit integers (Alex Gladkov) [1683922] - [kernel] sched/nohz: Run NOHZ idle load balancer on HK_FLAG_MISC CPUs (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] nohz_full: Allow the boot CPU to be nohz_full (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/isolation: Require a present CPU in housekeeping mask (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] kernel/cpu: Allow non-zero CPU to be primary for suspend / kexec freeze (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] power/suspend: Add function to disable secondaries for suspend (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/core: Allow the remote scheduler tick to be started on CPU0 (Desnes Augusto Nunes do Rosario) [1666614] - [kernel] sched/fair: Use non-atomic cpumask_{set,clear}_cpu() (Desnes Augusto Nunes do Rosario) [1666614] - [lib] lib: reciprocal_div: implement the improved algorithm on the paper mentioned (Petr Oros) [1706982] - [kernel] kernel/sysctl.c: fix proc_do_large_bitmap for large input buffers (Eric Sandeen) [1667092] - [kernel] tools/testing/selftests/sysctl/sysctl.sh: add proc_do_large_bitmap() test case (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: allow graceful use on older kernels (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: ignore diff output on verify_diff_w() (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: load module before testing for it (Eric Sandeen) [1667092] - [tools] tools/testing/selftests/sysctl/sysctl.sh: remove superfluous test_reqs() (Eric Sandeen) [1667092] - [kernel] kernel/sysctl.c: fix out-of-bounds access when setting file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow for file-max (Eric Sandeen) [1694160] - [kernel] sysctl: handle overflow in proc_get_long (Eric Sandeen) [1694160] - [s390] kvm: s390: Fix potential spectre warnings (Thomas Huth) [1702344] - [powerpc] mm: move warning from resize_hpt_for_hotplug() (Laurent Vivier) [1660737] - [powerpc] pseries: Use pr_xxx() in lpar.c (Laurent Vivier) [1660737] - [infiniband] RDMA/iw_cxgb4: Always disconnect when QP is transitioning to TERMINATE state (Arjun Vynipadath) [1664673] - [infiniband] cxgb4: kfree mhp after the debug print (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxbg: Use correct sizing on buffers holding page DMA addresses (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Make function read_tcb() static (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Remove kref accounting for sync operation (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: cq/qp mask depends on bar2 pages in a host page (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: fix srqidx leak during connection abort (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: complete the cached SRQ buffers (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Remove a set-but-not-used variable (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when finding ipv6 routes (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use tos when importing the endpoint (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: use listening ep tos when accepting new connections (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb*: kzalloc the iwcm verbs struct (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Drop __GFP_NOFAIL (Arjun Vynipadath) [1664673] - [infiniband] infiniband: cxgb4: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664673] - [infiniband] RDMA/iw_cxgb4: Fix the unchecked ep dereference (Arjun Vynipadath) [1664673] - [infiniband] RDMA: Introduce and use rdma_device_to_ibdev() (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Check for send WR also while posting write with completion WR (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: only reconnect with MPAv1 if the peer aborts (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Use proper enumerated type in c4iw_bar2_addrs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: remove redundant null pointer check before kfree_skb (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Remove pci_unmap_addr() wrappers for DMA API (Arjun Vynipadath) [1664673] - [infiniband] iw_cxgb4: Declare ib_post_send() and ib_post_recv() arguments const (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Simplify a structure initialization (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Fix SRQ endianness annotations (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for kernel mode SRQ's (Arjun Vynipadath) [1664673] - [infiniband] rdma/cxgb4: Add support for srq functions & structs (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Restore the dropped uninitialized_var (Arjun Vynipadath) [1664673] - [infiniband] RDMA/cxgb4: Make c4iw_poll_cq_one() easier to analyze (Arjun Vynipadath) [1664673] - [fs] gfs2: clean_journal improperly set sd_log_flush_head (Robert S Peterson) [1693660]- [netdrv] bonding/802.3ad: fix slave link initialization transition states (Jarod Wilson) [1714387] - [iommu] iommu/vt-d: Disable ATS support on untrusted devices (Jerry Snitselaar) [1649210 1692246] - [documentation] thunderbolt: Export IOMMU based DMA protection support to userspace (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Do not enable ATS for untrusted devices (Jerry Snitselaar) [1649210 1692246] - [iommu] iommu/vt-d: Force IOMMU on for platform opt in hint (Jerry Snitselaar) [1649210 1692246] - [arm64] arm64: makefile fix build of .i file in external module case (Jerome Marchand) [1713052] - [s390] s390/protvirt: block kernel command line alteration (Philipp Rudo) [1651711] - [s390] s390/protvirt: add memory sharing for diag 308 set/store (Philipp Rudo) [1651711] - [s390] s390/uv: introduce guest side ultravisor code (Philipp Rudo) [1651711] - [netdrv] net: aquantia: fix undefined devm_hwmon_device_register_with_info reference (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make aq_ndev_driver_name static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove outdated device ids (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixups on 64bit dma counters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: get total counters from DMA block (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fetch up to date statistics on ethtool request (Igor Russkikh) [1706905] - [netdrv] net: aquantia: extract timer cb into work job (Igor Russkikh) [1706905] - [netdrv] net: aquantia: introduce fwreq mutex (Igor Russkikh) [1706905] - [netdrv] net: aquantia: user correct MSI irq type (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use macros for better visibility (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve ifup link detection (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link status irq handling (Igor Russkikh) [1706905] - [netdrv] net: aquantia: create global service workqueue (Igor Russkikh) [1706905] - [netdrv] net: aquantia: link interrupt handling function (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add link interrupt fields (Igor Russkikh) [1706905] - [netdrv] net: aquantia: implement hwmon api for chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure to readout chip temperature (Igor Russkikh) [1706905] - [netdrv] net: aquantia: enable driver build for arm64 or compile_test (Igor Russkikh) [1706905] - [netdrv] net: aquantia: improve LRO configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Increase rx ring default size from 1K to 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Make RX default frame size 2K (Igor Russkikh) [1706905] - [netdrv] net: aquantia: Introduce rx refill threshold value (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx performance by page reuse strategy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: optimize rx path using larger preallocated skb len (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload for UDP/TCP over IPv6 (Igor Russkikh) [1706905] - [netdrv] net: aquantia: use better wrappers for state registers (Igor Russkikh) [1706905] - [netdrv] net: aquantia: replace AQ_HW_WAIT_FOR with readx_poll_timeout_atomic (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed instack structure overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed buffer overflow (Igor Russkikh) [1706905] - [netdrv] net: aquantia: added newline at end of file (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed memcpy size (Igor Russkikh) [1706905] - [netdrv] net: aquantia: regression on cpus with high cores: set mode with 8 queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of RSS configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix initialization of RSS table (Igor Russkikh) [1706905] - [netdrv] net: aquantia: increase max number of hw queues (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix RSS table and key sizes (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix rx checksum offload bits (Igor Russkikh) [1706905] - [netdrv] net: aquantia: return 'err' if set MPI_DEINIT state fails (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix spelling mistake "specfield" -> "specified" (Igor Russkikh) [1706905] - [netdrv] net: aquantia: cleanup err handing in hw_atl_utils_fw_rpc_wait (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of rx-vlan-filter offload (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add ethertype and PCP to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add vlan id to rx flow filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add support of L3/L4 ntuple filters (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add infrastructure for ntuple rules (Igor Russkikh) [1706905] - [netdrv] net: aquantia: add rx-flow filter definitions (Igor Russkikh) [1706905] - [netdrv] net: aquantia: allow rx checksum offload configuration (Igor Russkikh) [1706905] - [netdrv] net: aquantia: invalid checksumm offload implementation (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fixed enable unicast on 32 macvlan (Igor Russkikh) [1706905] - [netdrv] net: aquantia: fix potential IOMMU fault after driver unbind (Igor Russkikh) [1706905] - [netdrv] net: aquantia: synchronized flow control between mac/phy (Igor Russkikh) [1706905] - [netdrv] net: aquantia: make function aq_fw2x_update_stats static (Igor Russkikh) [1706905] - [netdrv] net: aquantia: remove some redundant variable initializations (Igor Russkikh) [1706905] - [netdrv] bnxt_en: Add device IDs 0x1806 and 0x1752 for 57500 devices. (Selvin Xavier) [1672208] - [scsi] scsi: fnic: Remove set but not used variable 'vdev' (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: no need to check return value of debugfs_create functions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Update fnic driver version to 1.6.0.47 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Enable fnic devcmd2 interface (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Adding devcmd2 init and posting interfaces (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add devcmd2 initialization helpers (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 controller definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic devcmd2 interface definitions (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Impose upper limit on max. # of CQs processed per intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: RQ enable and then post descriptors (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: delaying vnic dev enable till after req intr (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Warn when calling done for IO not issued to fw (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: fnic stats for max CQs processed and ISR time (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Add port speed stat to fnic debug stats (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: use fnic_lock to guard fnic->state_flags (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: vnic_rq_clean change BUG_ON to WARN_ON (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: change fnic queue depth to 256 (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: support to display 20G port speed (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: Use vzalloc (Govindarajulu Varadarajan) [1656236] - [scsi] scsi: fnic: switch to generic DMA API (Govindarajulu Varadarajan) [1656236] - [pci] PCI/PME: Fix possible use-after-free on remove (Myron Stowe) [1701834] - [pci] PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove() (Myron Stowe) [1701834] - [pci] PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe ports (Myron Stowe) [1701834] - [tools] perf arm64: Fix mksyscalltbl when system kernel headers are ahead of the kernel (Michael Petlan) [1709242] - [rpmspec] perf: remove bpf examples (Michael Petlan) [1709242] - [tools] perf tools: Stop fallbacking to kallsyms for vdso symbols lookup (Michael Petlan) [1709242] - [tools] perf report: Don't crash on invalid inline debug information (Michael Petlan) [1709242] - [tools] perf cpu_map: Align cpu map synthesized events properly. (Michael Petlan) [1709242] - [tools] perf tools: Fix tracing_path_mount proper path (Michael Petlan) [1709242] - [tools] perf evsel: Store ids for events with their own cpus perf_event__synthesize_event_update_cpus (Michael Petlan) [1709242] - [tools] perf vendor events intel: Fix wrong filter_band* values for uncore events (Michael Petlan) [1709242] - [tools] Revert "perf tools: Fix PMU term format max value calculation" (Michael Petlan) [1709242] - [tools] tools headers uapi: Sync kvm.h copy (Michael Petlan) [1709242] - [tools] perf record: Use unmapped IP for inline callchain cursors (Michael Petlan) [1709242] - [tools] perf python: Use -Wno-redundant-decls to build with PYTHON=python3 (Michael Petlan) [1709242] - [tools] perf report: Don't try to map ip to invalid map (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-sqlite.py sample columns (Michael Petlan) [1709242] - [tools] perf script python: Fix export-to-postgresql.py occasional failure (Michael Petlan) [1709242] - [tools] perf Documentation: Fix out-of-tree asciidoctor man page generation (Michael Petlan) [1709242] - [tools] perf tools: Fix maps__find_symbol_by_name() (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/if_link.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/vhost.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copies of kvm headers (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of drm/drm.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] tools headers uapi: Update tools's copy of linux/perf_event.h (Michael Petlan) [1709242] - [tools] perf annotate: Fix parsing aarch64 branch instructions after objdump update (Michael Petlan) [1709242] - [tools] perf probe powerpc: Ignore SyS symbols irrespective of endianness (Michael Petlan) [1709242] - [tools] perf event-parse: Use fixed size string for comms (Michael Petlan) [1709242] - [tools] perf util: Fix bad memory access in trace info. (Michael Petlan) [1709242] - [tools] perf tools: Streamline bpf examples and headers installation (Michael Petlan) [1709242] - [tools] perf evsel: Fix potential null pointer dereference in perf_evsel__new_idx() (Michael Petlan) [1709242] - [tools] perf arm64: Fix include path for asm-generic/unistd.h (Michael Petlan) [1709242] - [tools] perf tests: Add breakpoint modify tests (Michael Petlan) [1709242] - [tools] perf annotate: Properly interpret indirect call (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add dummy task_struct state member (Michael Petlan) [1709242] - [tools] tools/lib/lockdep: Add empty nmi.h (Michael Petlan) [1709242] - [tools] tools lib traceevent: Change to SPDX License format (Michael Petlan) [1709242] - [tools] perf llvm: Allow passing options to llc in addition to clang (Michael Petlan) [1709242] - [tools] perf parser: Improve error message for PMU address filters (Michael Petlan) [1709242] - [tools] perf tools: Disable parallelism for 'make clean' (Michael Petlan) [1709242] - [tools] perf auxtrace: Fix queue resize (Michael Petlan) [1709242] - [tools] perf python: Remove -mcet and -fcf-protection when building with clang (Michael Petlan) [1709242] - [tools] perf arm spe: Fix uninitialized record error variable (Michael Petlan) [1709242] - [tools] perf tools: Move syscall_64.tbl check into check-headers.sh (Michael Petlan) [1709242] - [tools] perf tools: Make check-headers.sh check based on kernel dir (Michael Petlan) [1709242] - [tools] perf tools: Fix check-headers.sh AND list path of execution (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename static variables and functions in event-parse.c (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename internal parser related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename various pevent get/set/is APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_find_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent field APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_data_ APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_register / unregister APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_filter* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_plugin_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent: Rename pevent_function* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, tools lib lockdep: Rename 'enum pevent_errno' to 'enum tep_errno' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'enum pevent_flag' to 'enum tep_flag' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename traceevent_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_set_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_register_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent_read_number_* APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent print APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent parse APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent find APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent alloc / free APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename pevent plugin related APIs (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename 'struct pevent_record' to 'struct tep_record' (Michael Petlan) [1709242] - [tools] tools lib traceevent, perf tools: Rename struct pevent to struct tep_handle (Michael Petlan) [1709242] - [tools] perf probe powerpc: Fix trace event post-processing (Michael Petlan) [1709242] - [tools] perf map: Optimize maps__fixup_overlappings() (Michael Petlan) [1709242] - [tools] perf map: Synthesize maps only for thread group leader (Michael Petlan) [1709242] - [tools] perf trace: Wire up the augmented syscalls with the syscalls:sys_enter_FOO beautifier (Michael Petlan) [1709242] - [tools] perf trace: Setup the augmented syscalls bpf-output event fields (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__setup_output_event() return the bpf-output event (Michael Petlan) [1709242] - [tools] perf trace: Handle "bpf-output" events associated with "__augmented_syscalls__" BPF map (Michael Petlan) [1709242] - [tools] perf bpf: Add wrappers to BPF_FUNC_probe_read(_str) functions (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf__setup_output_event() strerror() counterpart (Michael Petlan) [1709242] - [tools] perf bpf: Generalize bpf__setup_stdout() (Michael Petlan) [1709242] - [tools] perf bpf: Make bpf__for_each_stdout_map() generic (Michael Petlan) [1709242] - [tools] perf bpf: Add bpf/stdio.h wrapper to bpf_perf_event_output function (Michael Petlan) [1709242] - [tools] perf bpf: Add struct bpf_map struct (Michael Petlan) [1709242] - [tools] perf report: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Add --percent-type option (Michael Petlan) [1709242] - [tools] perf annotate: Display percent type in stdio output (Michael Petlan) [1709242] - [tools] perf annotate: Make local period the default percent type (Michael Petlan) [1709242] - [tools] perf annotate: Add support to toggle percent type (Michael Petlan) [1709242] - [tools] perf annotate: Pass browser percent_type in annotate_browser__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Pass 'struct annotation_options' to map_symbol__annotation_dump() (Michael Petlan) [1709242] - [tools] perf annotate: Pass struct annotation_options to symbol__calc_lines() (Michael Petlan) [1709242] - [tools] perf annotate: Add percent_type to struct annotation_options (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_PERIOD_LOCAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Add PERCENT_HITS_GLOBAL percent value (Michael Petlan) [1709242] - [tools] perf annotate: Switch struct annotation_data::percent to array (Michael Petlan) [1709242] - [tools] perf annotate: Loop group events directly in annotation__calc_percent() (Michael Petlan) [1709242] - [tools] perf annotate: Rename hist to sym_hist in annotation__calc_percent (Michael Petlan) [1709242] - [tools] perf annotate: Rename local sample variables to data (Michael Petlan) [1709242] - [tools] perf annotate: Rename struct annotation_line::samples* to data* (Michael Petlan) [1709242] - [tools] perf annotate: Get rid of annotation__scnprintf_samples_period() (Michael Petlan) [1709242] - [tools] perf annotate: Make annotation_line__max_percent static (Michael Petlan) [1709242] - [tools] perf annotate: Make symbol__annotate_fprintf2() local (Michael Petlan) [1709242] - [tools] perf bpf: Add 'syscall_enter' probe helper for syscall enter tracepoints (Michael Petlan) [1709242] - [tools] perf tools: Drop unneeded bitmap_zero() calls (Michael Petlan) [1709242] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Michael Petlan) [1709242] - [tools] perf report: Add GUI report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf report: Add raw report support for s390 auxiliary trace (Michael Petlan) [1709242] - [tools] perf auxtrace: Support for perf report -D for s390 (Michael Petlan) [1709242] - [tools] perf trace: Use perf_evsel__sc_tp_{uint,ptr} for "id"/"args" handling syscalls:* events (Michael Petlan) [1709242] - [tools] perf trace: Setup struct syscall_tp for syscalls:sys_{enter,exit}_NAME events (Michael Petlan) [1709242] - [tools] perf trace: Allow setting up a syscall_tp struct without a format_field (Michael Petlan) [1709242] - [tools] perf trace: Rename some syscall_tp methods to raw_syscall (Michael Petlan) [1709242] - [tools] perf trace: Use beautifiers on syscalls:sys_enter_ handlers (Michael Petlan) [1709242] - [tools] perf trace: Associate vfs_getname()'ed pathname with fd returned from 'openat' (Michael Petlan) [1709242] - [tools] perf trace: Do not require --no-syscalls to suppress strace like output (Michael Petlan) [1709242] - [tools] perf bpf: Include uapi/linux/bpf.h from the 'perf trace' script's bpf.h (Michael Petlan) [1709242] - [tools] perf tools: Allow overriding MAX_NR_CPUS at compile time (Michael Petlan) [1709242] - [tools] perf bpf: Show better message when failing to load an object (Michael Petlan) [1709242] - [tools] perf list: Unify metric group description format with PMU event description (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Generate branch sample when receiving a CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Support dummy address value for CS_ETM_TRACE_ON packet (Michael Petlan) [1709242] - [tools] perf cs-etm: Fix start tracing packet handling (Michael Petlan) [1709242] - [tools] perf build: Fix installation directory for eBPF (Michael Petlan) [1709242] - [tools] perf c2c report: Fix crash for empty browser (Michael Petlan) [1709242] - [tools] perf tests: Fix indexing when invoking subtests (Michael Petlan) [1709242] - [tools] perf trace: Beautify the AF_INET & AF_INET6 'socket' syscall 'protocol' args (Michael Petlan) [1709242] - [tools] perf trace beauty: Add beautifiers for 'socket''s 'protocol' arg (Michael Petlan) [1709242] - [tools] perf trace beauty: Do not print NULL strarray entries (Michael Petlan) [1709242] - [tools] perf beauty: Add a generator for IPPROTO_ socket's protocol constants (Michael Petlan) [1709242] - [tools] tools include uapi: Grab a copy of linux/in.h (Michael Petlan) [1709242] - [tools] perf tests: Fix complex event name parsing (Michael Petlan) [1709242] - [tools] perf evlist: Fix error out while applying initial delay and LBR (Michael Petlan) [1709242] - [tools] perf trace beauty: Default header_dir to cwd to work without parms (Michael Petlan) [1709242] - [tools] perf test: Fix subtest number when showing results (Michael Petlan) [1709242] - [tools] perf stat: Get rid of extra clock display function (Michael Petlan) [1709242] - [tools] perf tools: Use perf_evsel__match instead of open coded equivalent (Michael Petlan) [1709242] - [tools] perf tools: Fix struct comm_str removal crash (Michael Petlan) [1709242] - [tools] perf machine: Use last_match threads cache only in single thread mode (Michael Petlan) [1709242] - [tools] perf machine: Add threads__set_last_match function (Michael Petlan) [1709242] - [tools] perf machine: Add threads__get_last_match function (Michael Petlan) [1709242] - [tools] perf tools: Synthesize GROUP_DESC feature in pipe mode (Michael Petlan) [1709242] - [tools] perf script: Show correct offsets for DWARF-based unwinding (Michael Petlan) [1709242] - [tools] perf trace arm64: Use generated syscall table (Michael Petlan) [1709242] - [tools] perf arm64: Generate system call table from asm/unistd.h (Michael Petlan) [1709242] - [tools] tools include: Grab copies of arm64 dependent unistd.h files (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh when event exists (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh to ensure cleanups (Michael Petlan) [1709242] - [tools] perf tests: Fix record+probe_libc_inet_pton.sh for powerpc64 (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering when return address is in a register (Michael Petlan) [1709242] - [tools] perf powerpc: Fix callchain ip filtering (Michael Petlan) [1709242] - [tools] perf list: Add missing documentation for --desc and --debug options (Michael Petlan) [1709242] - [tools] perf stat: Add transaction flag (-T) support for s390 (Michael Petlan) [1709242] - [tools] perf json: Add s390 transaction counter definition (Michael Petlan) [1709242] - [tools] perf list: Add s390 support for detailed PMU event description (Michael Petlan) [1709242] - [tools] Revert "perf list: Add s390 support for detailed/verbose PMU event description" (Michael Petlan) [1709242] - [tools] perf cs-etm: Bail out immediately for instruction sample failure (Michael Petlan) [1709242] - [tools] perf cs-etm: Introduce invalid address macro (Michael Petlan) [1709242] - [tools] perf hists: Clarify callchain disabling when available (Michael Petlan) [1709242] - [tools] perf tests: Check that complex event name is parsed correctly (Michael Petlan) [1709242] - [arm64] arm64: perf: Reject stand-alone CHAIN events for PMUv3 (Michael Petlan) [1709242] - [x86] perf/x86/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf events (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX (Michael Petlan) [1709242] - [kernel] perf/ring_buffer: Prevent concurent ring buffer access (Michael Petlan) [1709242] - [x86] perf/x86/intel/uncore: Use boot_cpu_data.phys_proc_id instead of hardcorded physical package ID 0 (Michael Petlan) [1709242] - [kernel] perf/core: Fix perf_pmu_unregister() locking (Michael Petlan) [1709242] - [kernel] perf/core: Add sanity check to deal with pinned event failure (Michael Petlan) [1709242] - [kernel] perf/core: Force USER_DS when recording user stack data (Michael Petlan) [1709242] - [include] perf/UAPI: Clearly mark __PERF_SAMPLE_CALLCHAIN_EARLY as internal use (Michael Petlan) [1709242] - [x86] perf/x86/intel: Add support/quirk for the MISPREDICT bit on Knights Landing CPUs (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Simplify breakpoint enable in perf_event_modify_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Enable breakpoint in modify_user_hw_breakpoint (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove superfluous bp->attr.disabled = 0 (Michael Petlan) [1709242] - [kernel] arm64: perf: Add cap_user_time aarch64 (Michael Petlan) [1709242] - [include] arm_pmu: Add support for 64bit event counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support Extended PEBS for Goldmont Plus (Michael Petlan) [1709242] - [x86] perf/x86/intel/ds: Handle PEBS overflow for fixed counters (Michael Petlan) [1709242] - [x86] perf/x86/intel: Support PEBS on fixed counters (Michael Petlan) [1709242] - [kernel] perf, tools: Use correct articles in comments (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Clean up and consolidate modify_user_hw_breakpoint_check() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Pass new breakpoint type to modify_breakpoint_slot() (Michael Petlan) [1709242] - [kernel] perf/hw_breakpoint: Remove default hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/arch/arm64: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [powerpc] perf/arch/powerpc: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [x86] perf/arch/x86: Implement hw_breakpoint_arch_parse() (Michael Petlan) [1709242] - [arm64] perf/hw_breakpoint: Pass arch breakpoint struct to arch_check_bp_in_kernelspace() (Michael Petlan) [1709242] - [kernel] perf/core: Change perf_mmap_fault() return type to 'vm_fault_t' (Michael Petlan) [1709242] - [x86] perf/x86/intel/lbr: Optimize context switches for the LBR call stack (Michael Petlan) [1709242] - [netdrv] cnic: Refactor code and mark expected switch fall-through (Nilesh Javali) [1665302] - [netdrv] cnic: remove use of VLAN_TAG_PRESENT (Nilesh Javali) [1665302] - [netdrv] cnic: use kvzalloc to allocate memory for csk_tbl (Nilesh Javali) [1665302] - [netdrv] cnic: remove redundant pointer req and variable func (Nilesh Javali) [1665302] - [scsi] drivers: Remove useless trailing comments from mmiowb() invocations (Nilesh Javali) [1665307] - [scsi] scsi: qedf: remove set but not used variables (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.20 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add return value to log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print fcport information on wait for upload timeout (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check the return value of start_xmit (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Log message if scsi_add_host fails (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for fcoe_libfc_config failure (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add comment to display logging levels (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add port_id for fcport into initiate_cleanup debug message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add LBA to underrun debug messages (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Print scsi_cmd backpointer in good completion path if the command is still being used (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add driver state to 'driver_stats' debugfs node (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Change MSI-X load error message (Nilesh Javali) [1665301] - [scsi] scsi: qedf: remove memset/memcpy to nfunc and use func instead (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Remove set but not used variable 'fr_len' (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Update the driver version to 8.37.25.19 (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Fix lport may be used uninitialized warning (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correctly handle refcounting of rdata (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Cleanup rrq_work after QEDF_CMD_OUTSTANDING is cleared (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for tm_flags instead of cmd_type during cleanup (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add a flag to help debugging io_req which could not be cleaned (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't send ABTS for under run scenario (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Don't queue anything if upload is in progress (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check both the FCF and fabric ID before servicing clear virtual link (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fc_rport_priv reference counting fixes (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_scsi_done() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Wait for upload and link down processing during soft ctx reset (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add additional checks for io_req->sc_cmd validity (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup bit operations (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fixup locking in qedf_restart_rport() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: missing kref_put in qedf_xmit() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Check for link state before processing LL2 packets and send fipvlan retries (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing fc_disc_init call after allocating lport (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct the memory barriers in qedf_ring_doorbell (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Use a separate completion for cleanup commands (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify abort and tmf handler to handle edge condition and flush (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Modify flush routine to handle all I/Os and TMF (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Simplify s/g list mapping (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Add missing return in qedf_post_io_req() in the fcport offload check (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Correct xid range overlap between offloaded requests and libfc requests (Nilesh Javali) [1665301] - [scsi] scsi: qedf: Do not retry ELS request if qedf_alloc_cmd fails (Nilesh Javali) [1665301] - [scsi] scsi: fcoe: make use of fip_mode enum complete (Nilesh Javali) [1665301] - [scsi] scsi: stop setting up request->special (Nilesh Javali) [1665301] - [scsi] scsi: qedf: no need to check return value of debugfs_create functions (Nilesh Javali) [1665301] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665301] - [scsi] scsi: qedf: NULL check before some freeing functions is not needed (Nilesh Javali) [1665301] - [scsi] scsi: qedf: fully convert to the generic DMA API (Nilesh Javali) [1665301] - [scsi] scsi: qedi: Adjust termination and offload ramrod timers (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Abort ep termination if offload not scheduled (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fix spelling mistake "oflload" -> "offload" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: remove declaration of nvm_image from stack (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Remove set but not used variable 'cls_sess' (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add ep_state for login completion on un-reachable targets (Nilesh Javali) [1665300] - [scsi] cross-tree: phase out dma_zalloc_coherent() (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Update driver version to 8.33.0.21 (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Move LL2 producer index processing in BH. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: add module param to set ping packet size (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Add packet filter in light L2 Rx path. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Check for session online before getting iSCSI TLV data. (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Replace PAGE_SIZE with QEDI_PAGE_SIZE (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Fix spelling mistake "OUSTANDING" -> "OUTSTANDING" (Nilesh Javali) [1665300] - [scsi] scsi: qedi: Cleanup redundant QEDI_PAGE_SIZE macro definition (Nilesh Javali) [1665300] - [scsi] scsi: qedi: fully convert to the generic DMA API (Nilesh Javali) [1665300] - [x86] x86/kdump: Fall back to reserve high crashkernel memory (Pingfan Liu) [1682984] - [x86] x86/kdump: Have crashkernel=X reserve under 4G by default (Pingfan Liu) [1682984] - [x86] Revert "[x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr" (Pingfan Liu) [1682984] - [scsi] scsi: core: avoid pre-allocating big SGL for data (Ewan Milne) [1698297] - [scsi] scsi: core: avoid pre-allocating big SGL for protection information (Ewan Milne) [1698297] - [nvme] scsi: lib/sg_pool.c: improve APIs for allocating sg pool (Ewan Milne) [1698297] - [kvm] KVM: PPC: Book3S HV: Save/restore vrsave register in kvmhv_p9_guest_entry() (Suraj Jitindar Singh) [1700272] - [fs] ext4: avoid kernel warning when writing the superblock to a dead device (Lukas Czerner) [1695021] - [fs] ext4: cond_resched in work-heavy group loops (Lukas Czerner) [1698815] - [fs] ext4: ignore e_value_offs for xattrs with value-in-ea-inode (Lukas Czerner) [1698815] - [fs] ext4: protect journal inode's blocks using block_validity (Lukas Czerner) [1698815] - [fs] ext4: use BUG() instead of BUG_ON(1) (Lukas Czerner) [1698815] - [fs] jbd2: check superblock mapped prior to committing (Lukas Czerner) [1698815] - [fs] ext4: remove incorrect comment for NEXT_ORPHAN() (Lukas Czerner) [1698815] - [fs] ext4: make sanity check in mballoc more strict (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race with debug_want_extra_isize (Lukas Czerner) [1698815] - [fs] ext4: fix ext4_show_options for file systems w/o journal (Lukas Czerner) [1698815] - [fs] ext4: actually request zeroing of inode table after grow (Lukas Czerner) [1698815] - [fs] Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal" (Lukas Czerner) [1698815] - [fs] ext4: fix some error pointer dereferences (Lukas Czerner) [1698815] - [fs] ext4: fix special inode number checks in __ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: prohibit fstrim in norecovery mode (Lukas Czerner) [1698815] - [fs] ext4: cleanup bh release code in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: brelse all indirect buffer in ext4_ind_remove_space() (Lukas Czerner) [1698815] - [fs] ext4: report real fs size after failed resize (Lukas Czerner) [1698815] - [fs] ext4: add missing brelse() in add_new_gdb_meta_bg() (Lukas Czerner) [1698815] - [fs] ext4: remove useless ext4_pin_inode() (Lukas Czerner) [1698815] - [fs] ext4: avoid panic during forced reboot (Lukas Czerner) [1698815] - [fs] ext4: fix data corruption caused by unaligned direct AIO (Lukas Czerner) [1698815] - [fs] ext4: fix NULL pointer dereference while journal is aborted (Lukas Czerner) [1698815] - [fs] jbd2: jbd2_get_transaction does not need to return a value (Lukas Czerner) [1698815] - [fs] jbd2: fix invalid descriptor block checksum (Lukas Czerner) [1698815] - [fs] ext4: fix bigalloc cluster freeing when hole punching under load (Lukas Czerner) [1698815] - [fs] ext4: add sysfs attr /sys/fs/ext4//journal_task (Lukas Czerner) [1698815] - [fs] ext4: Change debugging support help prefix from EXT4 to Ext4 (Lukas Czerner) [1698815] - [fs] ext4: fix compile error when using BUFFER_TRACE (Lukas Czerner) [1698815] - [fs] jbd2: fix compile warning when using JBUFFER_TRACE (Lukas Czerner) [1698815] - [fs] ext4: annotate more implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: annotate implicit fall throughs (Lukas Czerner) [1698815] - [fs] ext4: don't update s_rev_level if not required (Lukas Czerner) [1698815] - [fs] jbd2: fold jbd2_superblock_csum_{verify,set} into their callers (Lukas Czerner) [1698815] - [fs] jbd2: fix race when writing superblock (Lukas Czerner) [1698815] - [fs] ext4: fix crash during online resizing (Lukas Czerner) [1698815] - [fs] ext4: disallow files with EXT4_JOURNAL_DATA_FL from EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: add mask of ext4 flags to swap (Lukas Czerner) [1698815] - [fs] ext4: update quota information while swapping boot loader inode (Lukas Czerner) [1698815] - [fs] ext4: cleanup pagecache before swap i_data (Lukas Czerner) [1698815] - [fs] ext4: fix check of inode in swap_inode_boot_loader (Lukas Czerner) [1698815] - [fs] ext4: unlock unused_pages timely when doing writeback (Lukas Czerner) [1698815] - [fs] ext4: cleanup clean_bdev_aliases() calls (Lukas Czerner) [1698815] - [fs] jbd2: discard dirty data when forgetting an un-journalled buffer (Lukas Czerner) [1698815] - [fs] jbd2: clear dirty flag when revoking a buffer from an older transaction (Lukas Czerner) [1698815] - [fs] ext4: replace opencoded i_writecount usage with inode_is_open_for_write() (Lukas Czerner) [1698815] - [fs] jbd2: fix deadlock while checkpoint thread waits commit thread to finish (Lukas Czerner) [1698815] - [fs] ext4: use IS_ENCRYPTED() to check encryption status (Lukas Czerner) [1698815] - [fs] ext4: track writeback errors using the generic tracking infrastructure (Lukas Czerner) [1698815] - [fs] ext4: use ext4_write_inode() when fsyncing w/o a journal (Lukas Czerner) [1698815] - [fs] ext4: fix a potential fiemap/page fault deadlock w/ inline_data (Lukas Czerner) [1698815] - [fs] ext4: make sure enough credits are reserved for dioread_nolock writes (Lukas Czerner) [1698815] - [fs] ext4: check for shutdown and r/o file system in ext4_write_inode() (Lukas Czerner) [1698815] - [fs] ext4: force inode writes when nfsd calls commit_metadata() (Lukas Czerner) [1698815] - [fs] ext4: avoid declaring fs inconsistent due to invalid file handles (Lukas Czerner) [1698815] - [fs] ext4: include terminating u32 in size of xattr entries when expanding inodes (Lukas Czerner) [1698815] - [fs] ext4: compare old and new mode before setting update_mode flag (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_GROUP_ADD ioctl (Lukas Czerner) [1698815] - [fs] ext4: hard fail dax mount on unsupported devices (Lukas Czerner) [1698815] - [fs] ext4: remove redundant condition check (Lukas Czerner) [1698815] - [fs] jbd2: clean up indentation issue, replace spaces with tab (Lukas Czerner) [1698815] - [fs] ext4: clean up indentation issues, remove extraneous tabs (Lukas Czerner) [1698815] - [fs] ext4: missing unlock/put_page() in ext4_try_to_write_inline_data() (Lukas Czerner) [1698815] - [fs] ext4: fix possible use after free in ext4_quota_enable (Lukas Czerner) [1698815] - [fs] jbd2: avoid long hold times of j_state_lock while committing a transaction (Lukas Czerner) [1698815] - [fs] ext4: add ext4_sb_bread() to disambiguate ENOMEM cases (Lukas Czerner) [1698815] - [fs] ext4: remove unneeded brelse call in ext4_xattr_inode_update_ref() (Lukas Czerner) [1698815] - [fs] ext4: fix use-after-free race in ext4_remount()'s error path (Lukas Czerner) [1698815] - [fs] ext4: don't open-code ERR_CAST (Lukas Czerner) [1698815] - [fs] ext4: cache NULL when both default_acl and acl are NULL (Lukas Czerner) [1698815] - [fs] ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR (Lukas Czerner) [1698815] - [fs] ext4: fix setattr project check in fssetxattr ioctl (Lukas Czerner) [1698815] - [fs] ext4: convert fault handler to use vm_fault_t type (Lukas Czerner) [1698815] - [fs] ext4: fix EXT4_IOC_SWAP_BOOT (Lukas Czerner) [1698815] - [fs] ext4: fix argument checking in EXT4_IOC_MOVE_EXT (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at page invalidation time (Lukas Czerner) [1698815] - [fs] ext4: adjust reserved cluster count when removing extents (Lukas Czerner) [1698815] - [fs] ext4: reduce reserved cluster count by number of allocated clusters (Lukas Czerner) [1698815] - [fs] ext4: fix reserved cluster accounting at delayed write time (Lukas Czerner) [1698815] - [fs] ext4: add new pending reservation mechanism (Lukas Czerner) [1698815] - [fs] ext4: generalize extents status tree search functions (Lukas Czerner) [1698815] - [fs] ext4: readpages() should submit IO as read-ahead (Lukas Czerner) [1698815] - [fs] ext4: improve code readability in ext4_iget() (Lukas Czerner) [1698815] - [fs] ext4: use swap macro in mext_page_double_lock (Lukas Czerner) [1698815] - [fs] ext4: fix warning message in ext4_enable_quotas() (Lukas Czerner) [1698815] - [fs] ext4: super: extend timestamps to 40 bits (Lukas Czerner) [1698815] - [fs] jbd2: replace current_kernel_time64 with ktime equivalent (Lukas Czerner) [1698815] - [fs] ext4: use timespec64 for all inode times (Lukas Czerner) [1698815] - [fs] ext4: use ktime_get_real_seconds for i_dtime (Lukas Czerner) [1698815] - [fs] ext4: use 64-bit timestamps for mmp_time (Lukas Czerner) [1698815] - [scsi] scsi: smartpqi: Use HCTX_TYPE_DEFAULT for blk_mq_tag_set->map (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add spdx (Don Brace) [1665565] - [scsi] scsi: smartpqi: update copyright (Don Brace) [1665565] - [scsi] scsi: smartpqi: add H3C controller IDs (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase LUN reset timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: Reporting 'logical unit failure' (Don Brace) [1665565] - [scsi] scsi: smartpqi_init: fix boolean expression in pqi_device_remove_start (Don Brace) [1665565] - [scsi] scsi: smartpqi: call pqi_free_interrupts() in pqi_shutdown() (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix build warnings (Don Brace) [1665565] - [scsi] scsi: smartpqi: update driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add ofa support (Don Brace) [1665565] - [scsi] scsi: smartpqi: increase fw status register read timeout (Don Brace) [1665565] - [scsi] scsi: smartpqi: bump driver version (Don Brace) [1665565] - [scsi] scsi: smartpqi: add smp_utils support (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct lun reset issues (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct volume status (Don Brace) [1665565] - [scsi] scsi: smartpqi: do not offline disks for transient did no connect conditions (Don Brace) [1665565] - [scsi] scsi: smartpqi: allow for larger raid maps (Don Brace) [1665565] - [scsi] scsi: smartpqi: check for null device pointers (Don Brace) [1665565] - [scsi] scsi: smartpqi: enhance numa node detection (Don Brace) [1665565] - [scsi] scsi: smartpqi: wake up drives after os resumes from suspend (Don Brace) [1665565] - [scsi] scsi: smartpqi: fix disk name mount point (Don Brace) [1665565] - [scsi] scsi: smartpqi: add h3c ssid (Don Brace) [1665565] - [scsi] scsi: smartpqi: add sysfs attributes (Don Brace) [1665565] - [scsi] scsi: smartpqi: refactor sending controller raid requests (Don Brace) [1665565] - [scsi] scsi: smartpqi: turn off lun data caching for ptraid (Don Brace) [1665565] - [scsi] scsi: smartpqi: correct host serial num for ssa (Don Brace) [1665565] - [scsi] scsi: smartpqi: add no_write_same for logical volumes (Don Brace) [1665565] - [scsi] scsi: smartpqi: Add retries for device reset (Don Brace) [1665565] - [scsi] scsi: smartpqi: add support for PQI Config Table handshake (Don Brace) [1665565] - [scsi] scsi: smartpqi: fully convert to the generic DMA API (Don Brace) [1665565] - [net] rtnetlink: always put IFLA_LINK for links with a link-netnsid (Sabrina Dubroca) [1711933] - [net] ipv6: add inet6_fill_args (Ivan Vecera) [1711956] - [net] ipv4: add inet_fill_args (Ivan Vecera) [1711956] - [net] rtnetlink: s/IFLA_IF_NETNSID/IFLA_TARGET_NETNSID/g (Ivan Vecera) [1711956] - [include] if_link: add IFLA_TARGET_NETNSID alias (Ivan Vecera) [1711956] - [net] rtnetlink: move type calculation out of loop (Ivan Vecera) [1711956] - [net] ipv6: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [net] ipv4: enable IFA_TARGET_NETNSID for RTM_GETADDR (Ivan Vecera) [1711956] - [include] if_addr: add IFA_TARGET_NETNSID (Ivan Vecera) [1711956] - [net] rtnetlink: add rtnl_get_net_ns_capable() (Ivan Vecera) [1711956] - [tools] selftests: forwarding: mirror_gre_vlan_bridge_1q: Fix untagged test (Hangbin Liu) [1710283] - [tools] selftests: forwarding: Tweak tc filters for mirror-to-gretap tests (Hangbin Liu) [1710283] - [tools] selftests: forwarding: lib: Avoid trapping soft devices (Hangbin Liu) [1710283] - [tools] selftests: pmtu: maximum MTU for vti4 is 2^16-1-20 (Hangbin Liu) [1704659] - [net] sched: red: inform offloads about harddrop setting (Ivan Vecera) [1710999] - [net] tls: fix copy to fragments in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't copy negative amounts of data in reencrypt (Ivan Vecera) [1710366] - [net] tls: don't leak IV and record seq when offload fails (Ivan Vecera) [1710366] - [net] tls: avoid potential deadlock in tls_set_device_offload_rx() (Ivan Vecera) [1710366] - [net] tls: prevent bad memory access in tls_is_sk_tx_device_offloaded() (Ivan Vecera) [1710366] - [net] tls: Combined memory allocation for decryption request (Ivan Vecera) [1710366] - [net] tls: Skip zerocopy path for ITER_KVEC (Ivan Vecera) [1710366] - [net] tls: Fix copy-paste error in tls_device_reencrypt (Ivan Vecera) [1710366] - [net] tls: Add rx inline crypto offload (Ivan Vecera) [1710366] - [net] tls: Fill software context without allocation (Ivan Vecera) [1710366] - [net] tls: Split tls_sw_release_resources_rx (Ivan Vecera) [1710366] - [net] tls: Split decrypt_skb to two functions (Ivan Vecera) [1710366] - [net] tcp: Don't coalesce decrypted and encrypted SKBs (Ivan Vecera) [1710366] - [include] Add TLS rx resync NDO (Ivan Vecera) [1710366] - [net] Add TLS RX offload feature (Ivan Vecera) [1710366] - [net] Add decrypted field to skb (Ivan Vecera) [1710366] - [net] tls: Use aead_request_alloc/free for request alloc/free (Ivan Vecera) [1710366] - [net] tls: Refactor tls_offload variable names (Ivan Vecera) [1703389]- [netdrv] qede: use ethtool_rx_flow_rule() to remove duplicated parser code (Manish Chopra) [1663274] - [netdrv] qede: place ethtool_rx_flow_spec after code after TC flower codebase (Manish Chopra) [1663274] - [netdrv] drivers: net: use flow action infrastructure (Manish Chopra) [1663274] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Manish Chopra) [1663274] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Manish Chopra) [1663274] - [netdrv] qede: Populate mbi version in ethtool driver query data. (Manish Chopra) [1663274] - [netdrv] qed: Define new MF bit for no_vlan config (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "faspath" -> "fastpath" (Manish Chopra) [1663274] - [netdrv] qed: Fix the DORQ's attentions handling (Manish Chopra) [1663274] - [netdrv] qed: Fix missing DORQ attentions (Manish Chopra) [1663274] - [netdrv] qed: Fix the doorbell address sanity check (Manish Chopra) [1663274] - [netdrv] qed: Delete redundant doorbell recovery types (Manish Chopra) [1663274] - [netdrv] qede: fix write to free'd pointer error and double free of ptp (Manish Chopra) [1663274] - [netdrv] qede: Fix internal loopback failure with jumbo mtu configuration (Manish Chopra) [1663274] - [netdrv] qed: Read device port count from the shmem (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP syn packet mac address validation. (Manish Chopra) [1663274] - [netdrv] qed: Fix iWARP buffer size provided for syn packet processing. (Manish Chopra) [1663274] - [netdrv] qed: fix indentation issue with statements in an if-block (Manish Chopra) [1663274] - [netdrv] qede: Add ethtool interface for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed: Add API for SmartAN query. (Manish Chopra) [1663274] - [netdrv] qed*: Advance drivers version to 8.37.0.20 (Manish Chopra) [1663274] - [netdrv] qed: Change verbosity for coalescing message. (Manish Chopra) [1663274] - [netdrv] qede: Fix system crash on configuring channels. (Manish Chopra) [1663274] - [netdrv] qed: Consider TX tcs while deriving the max num_queues for PF. (Manish Chopra) [1663274] - [netdrv] qed: Assign UFP TC value to vlan priority in UFP mode. (Manish Chopra) [1663274] - [netdrv] qed: Fix EQ full firmware assert. (Manish Chopra) [1663274] - [netdrv] qed: Fix stack out of bounds bug (Manish Chopra) [1663274] - [netdrv] qed: Fix system crash in ll2 xmit (Manish Chopra) [1663274] - [netdrv] qed: Fix VF probe failure while FLR (Manish Chopra) [1663274] - [netdrv] qed: Fix LACP pdu drops for VFs (Manish Chopra) [1663274] - [netdrv] qed: Fix bug in tx promiscuous mode settings (Manish Chopra) [1663274] - [netdrv] qede: Error recovery process (Manish Chopra) [1663274] - [netdrv] qed: Add infrastructure for error detection and recovery (Manish Chopra) [1663274] - [netdrv] qed: Revise load sequence to avoid PCI errors (Manish Chopra) [1663274] - [netdrv] qed: Mark expected switch fall-through (Manish Chopra) [1663274] - [include] qed: remove duplicated include from qed_if.h (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Fix out of bounds index check in query pkey (Manish Chopra) [1663274] - [netdrv] qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory barrier (Manish Chopra) [1663274] - [include] qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page count (Manish Chopra) [1663274] - [infiniband] infiniband/qedr: Potential null ptr dereference of qp (Manish Chopra) [1663274] - [netdrv] qed: Fix an error code qed_ll2_start_xmit() (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Dispalying" -> "Displaying" (Manish Chopra) [1663274] - [netdrv] qede: Register l2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Expose the doorbell overflow recovery mechanism to the protocol drivers (Manish Chopra) [1663274] - [netdrv] qed: Register light L2 queues with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Register slowpath queue doorbell with doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qed: Use the doorbell overflow recovery mechanism in case of doorbell overflow (Manish Chopra) [1663274] - [netdrv] qed: Add doorbell overflow recovery mechanism (Manish Chopra) [1663274] - [netdrv] qede - Add a statistic for a case where driver drops tx packet due to memory allocation failure. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "attnetion" -> "attention" (Manish Chopra) [1663274] - [netdrv] qed: Add support for MBI upgrade over MFW. (Manish Chopra) [1663274] - [netdrv] qede: Update link status only when interface is ready. (Manish Chopra) [1663274] - [netdrv] qede: Simplify the usage of qede-flags. (Manish Chopra) [1663274] - [netdrv] qed: Display port_id in the UFP debug messages. (Manish Chopra) [1663274] - [netdrv] qed: Fix QM getters to always return a valid pq (Manish Chopra) [1663274] - [netdrv] qed: Fix bitmap_weight() check (Manish Chopra) [1663274] - [netdrv] drivers/net/ethernet/qlogic/qed/qed_rdma.h: fix typo (Manish Chopra) [1663274] - [netdrv] qed: Fix reading wrong value in loop condition (Manish Chopra) [1663274] - [netdrv] qed: Fix rdma_info structure allocation (Manish Chopra) [1663274] - [netdrv] qed: Fix overriding offload_tc by protocols without APP TLV (Manish Chopra) [1663274] - [netdrv] qed: Fix PTT leak in qed_drain() (Manish Chopra) [1663274] - [netdrv] qed: Fix potential memory corruption (Manish Chopra) [1663274] - [netdrv] qed: Fix SPQ entries not returned to pool in error flows (Manish Chopra) [1663274] - [netdrv] qed: Fix blocking/unlimited SPQ entries leak (Manish Chopra) [1663274] - [netdrv] qed: Fix memory/entry leak in qed_init_sp_request() (Manish Chopra) [1663274] - [netdrv] qed: fix link config error handling (Manish Chopra) [1663274] - [netdrv] qed: Fix static checker warning (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "transcevier" -> "transceiver" (Manish Chopra) [1663274] - [netdrv] qed: Prevent link getting down in case of autoneg-off. (Manish Chopra) [1663274] - [netdrv] qede: Check available link modes before link set from ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Add supported link and advertise link to display in ethtool. (Manish Chopra) [1663274] - [netdrv] qed: Added supported transceiver modes, speed capability and board config to HSI. (Manish Chopra) [1663274] - [netdrv] qed: Align local and global PTT to propagate through the APIs. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "Ireelevant" -> "Irrelevant" (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_ooo_submit_tx_buffers (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: Remove enumerated type qed_roce_ll2_tx_dest (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "b_cb_registred" -> "b_cb_registered" (Manish Chopra) [1663274] - [netdrv] qed: Remove set but not used variable 'p_archipelago' (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt (Manish Chopra) [1663274] - [netdrv] qed: Avoid constant logical operation warning in qed_vf_pf_acquire (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor (Manish Chopra) [1663274] - [netdrv] qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv (Manish Chopra) [1663274] - [netdrv] qed: Avoid implicit enum conversion in qed_set_tunn_cls_info (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "toogle" -> "toggle" (Manish Chopra) [1663274] - [netdrv] net: qed: list usage cleanup (Manish Chopra) [1663274] - [netdrv] net: qede: Use FIELD_SIZEOF directly instead of reimplementing its function (Manish Chopra) [1663274] - [netdrv] qed: remove duplicated include from qed_cxt.c (Manish Chopra) [1663274] - [netdrv] qed*: Utilize FW 8.37.7.0 (Manish Chopra) [1663274] - [infiniband] RDMA/qedr: remove set but not used variable 'ctx' (Manish Chopra) [1663274] - [netdrv] qed: Lower the severity of a dcbx log message. (Manish Chopra) [1663274] - [netdrv] qed: fix spelling mistake "comparsion" -> "comparison" (Manish Chopra) [1663274] - [netdrv] net_sched: remove list_head from tc_action (Manish Chopra) [1663274] - [infiniband] qedr: Add user space support for SRQ (Manish Chopra) [1663274] - [infiniband] qedr: Add support for kernel mode SRQ's (Manish Chopra) [1663274] - [infiniband] qedr: Add wrapping generic structure for qpidr and adjust idr routines. (Manish Chopra) [1663274] - [netdrv] qed/qede: qede_setup_tc() can be static (Manish Chopra) [1663274] - [netdrv] qede: Ingress tc flower offload (drop action) support. (Manish Chopra) [1663274] - [netdrv] qede: Add destination ip based flow profile. (Manish Chopra) [1663274] - [netdrv] qed/qede: Multi CoS support. (Manish Chopra) [1663274] - [netdrv] qede: qede_fp: Mark expected switch fall-through (Manish Chopra) [1663274] - [netdrv] qed: qed_dev: Mark expected switch fall-throughs (Manish Chopra) [1663274] - [netdrv] qed: Add Multi-TC RoCE support (Manish Chopra) [1663274] - [netdrv] qed: Add DCBX API - qed_dcbx_get_priority_tc() (Manish Chopra) [1663274] - [netdrv] qed: Make some functions static (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_get_cm_pq_idx_rl (Manish Chopra) [1663274] - [netdrv] qed: remove redundant functions qed_set_gft_event_id_cm_hdr (Manish Chopra) [1663274] - [netdrv] qede: Add driver callbacks for eeprom module query. (Manish Chopra) [1663274] - [netdrv] qed: Add qed APIs for PHY module query. (Manish Chopra) [1663274] - [netdrv] qed: remove redundant pointer 'name' (Manish Chopra) [1663274] - [iommu] iommu: Don't print warning when IOMMU driver only supports unmanaged domains (Jerry Snitselaar) [1707616 1694210 1689183] - [iommu] iommu/vt-d: Check capability before disabling protected memory (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: fix sg->dma_address for sg->offset bigger than PAGE_SIZE (Jerry Snitselaar) [1694210 1694029] - [iommu] iommu/amd: Fix NULL dereference bug in match_hid_uid (Jerry Snitselaar) [1677737 1694210] - [iommu] iommu/vt-d: Fix NULL pointer reference in intel_svm_bind_mm() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Remove unnecessary WARN_ON() (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Check identity map for hot-added devices (Jerry Snitselaar) [1694210] - [iommu] iommu/dmar: Fix buffer overflow during PCI bus notification (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix memory leak in intel_iommu_put_resv_regions() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Fix amd_iommu=force_isolation (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Handle domain agaw being less than iommu agaw (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Use memunmap to free memremap (Jerry Snitselaar) [1694210] - [iommu] amd/iommu: Fix Guest Virtual APIC Log Tail Address Register (Jerry Snitselaar) [1694210] - [iommu] iommu/vt-d: Fix NULL pointer dereference in prq_event_thread() (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: Return devid as alias for ACPI HID devices (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Free irqs in shutdown handler (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Move irq request past pm_runtime_enable (Jerry Snitselaar) [1694210] - [iommu] iommu/rockchip: Handle errors returned from PM framework (Jerry Snitselaar) [1694210] - [iommu] iommu/amd: make sure TLB to be flushed before IOVA freed (Jerry Snitselaar) [1694210] - [idle] intel_idle: Get rid of custom ICPU() macro (Alexander Beregalov) [1710976] - [security] selinux: do not report error on connect(AF_UNSPEC) (Ondrej Mosnacek) [1707828] - [security] selinux: Check address length before reading address family (Ondrej Mosnacek) [1707828] - [scsi] scsi: core: add new RDAC LENOVO/DE_Series device (Maurizio Lombardi) [1700912] - [infiniband] i40iw: Avoid panic when handling the inetdev event (Stefan Assmann) [1659180] - [infiniband] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659180] - [infiniband] infiniband: prefix header search paths with $(srctree)/ (Stefan Assmann) [1659180] - [infiniband] i40iw: remove use of VLAN_TAG_PRESENT (Stefan Assmann) [1659180] - [infiniband] RDMA/i40iw: Fix incorrect iterator type (Stefan Assmann) [1659180] - [infiniband] infiniband: i40iw, nes: don't use wall time for TCP sequence numbers (Stefan Assmann) [1659180] - [infiniband] i40iw: Reorganize acquire/release of locks in i40iw_manage_apbvt (Stefan Assmann) [1659180] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659174] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659174] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659174] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659174] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659174] - [netdrv] i40e: Memory leak in i40e_config_iwarp_qvlist (Stefan Assmann) [1659162] - [netdrv] i40e: Fix of memory leak and integer truncation in i40e_virtchnl.c (Stefan Assmann) [1659162] - [netdrv] i40e: Use struct_size() in kzalloc() (Stefan Assmann) [1659162] - [netdrv] i40e: Revert ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: missing input validation on VF message handling by the PF (Stefan Assmann) [1659162] - [netdrv] i40e: Add support for X710 B/P & SFP+ cards (Stefan Assmann) [1659162] - [netdrv] i40e: Wrong truncation from u16 to u8 (Stefan Assmann) [1659162] - [netdrv] i40e: add num_vectors checker in iwarp handler (Stefan Assmann) [1659162] - [netdrv] i40e: Fix the typo in adding 40GE KR4 mode (Stefan Assmann) [1659162] - [netdrv] i40e: Setting VF to VLAN 0 requires restart (Stefan Assmann) [1659162] - [netdrv] i40e: add new pci id for X710/XXV710 N3000 cards (Stefan Assmann) [1659162] - [netdrv] i40e: VF's promiscuous attribute is not kept (Stefan Assmann) [1659162] - [netdrv] i40e: Introduce recovery mode support (Stefan Assmann) [1659162] - [netdrv] i40e: print PCI vendor and device ID during probe (Stefan Assmann) [1659162] - [netdrv] i40e: fix misleading message about promisc setting on un-trusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove out-of-range comparisons in i40e_validate_cloud_filter (Stefan Assmann) [1659162] - [netdrv] i40e: Further implementation of LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBase_LR4, CR4 and fibre (Stefan Assmann) [1659162] - [netdrv] i40e: ShadowRAM checksum calculation change (Stefan Assmann) [1659162] - [netdrv] i40e: remove error msg when vf with port vlan tries to remove vlan 0 (Stefan Assmann) [1659162] - [netdrv] i40e: change behavior on PF in response to MDD event (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for allowing too many MDD events on VF (Stefan Assmann) [1659162] - [netdrv] i40e: Fix misleading error message (Stefan Assmann) [1659162] - [netdrv] i40e: Able to add up to 16 MAC filters on an untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Report advertised link modes on 40GBASE_SR4 (Stefan Assmann) [1659162] - [netdrv] i40e: The driver now prints the API version in error message (Stefan Assmann) [1659162] - [netdrv] i40e: Changed maximum supported FW API version to 1.8 (Stefan Assmann) [1659162] - [netdrv] i40e: Remove misleading messages for untrusted VF (Stefan Assmann) [1659162] - [netdrv] i40e: Update i40e_init_dcb to return correct error (Stefan Assmann) [1659162] - [netdrv] i40e: Fix for 10G ports LED not blinking (Stefan Assmann) [1659162] - [netdrv] i40e: save PTP time before a device reset (Stefan Assmann) [1659162] - [netdrv] i40e: don't allow changes to HW VLAN stripping on active port VLANs (Stefan Assmann) [1659162] - [netdrv] i40e: Implement DDP support in i40e driver (Stefan Assmann) [1659162] - [netdrv] i40e: Queues are reserved despite "Invalid argument" error (Stefan Assmann) [1659162] - [netdrv] i40e: add tracking of AF_XDP ZC state for each queue pair (Stefan Assmann) [1659162] - [netdrv] i40e: move i40e_xsk_umem function (Stefan Assmann) [1659162] - [netdrv] i40e: fix WoL support check (Stefan Assmann) [1659162] - [netdrv] i40e: fix i40e_ptp_adjtime when given a negative delta (Stefan Assmann) [1659162] - [netdrv] i40e: fix XDP_REDIRECT/XDP xmit ring cleanup race (Stefan Assmann) [1659162] - [netdrv] i40e: fix potential RX buffer starvation for AF_XDP (Stefan Assmann) [1659162] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Stefan Assmann) [1659162] - [netdrv] flow_offload: add flow_rule and flow_match structures and use them (Stefan Assmann) [1659162] - [netdrv] i40e: clean up several indentation issues (Stefan Assmann) [1659162] - [netdrv] i40e: increase indentation (Stefan Assmann) [1659162] - [netdrv] i40e: update version number (Stefan Assmann) [1659162] - [netdrv] i40e: remove debugfs tx_timeout support (Stefan Assmann) [1659162] - [netdrv] i40e: check queue pairs num in config queues handler (Stefan Assmann) [1659162] - [netdrv] i40e: Change unmatched function types (Stefan Assmann) [1659162] - [netdrv] i40e: Add support FEC configuration for Fortville 25G (Stefan Assmann) [1659162] - [netdrv] i40e: Limiting RSS queues to CPUs (Stefan Assmann) [1659162] - [netdrv] i40e: Remove umem from VSI (Stefan Assmann) [1659162] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Stefan Assmann) [1659162] - [netdrv] i40e: extend PTP gettime function to read system clock (Stefan Assmann) [1659162] - [netdrv] i40e: DRY rx_ptype handling code (Stefan Assmann) [1659162] - [netdrv] i40e: fix kerneldoc for xsk methods (Stefan Assmann) [1659162] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Stefan Assmann) [1659162] - [netdrv] i40e: suppress bogus error message (Stefan Assmann) [1659162] - [netdrv] i40e: Allow disabling FW LLDP on X722 devices (Stefan Assmann) [1659162] - [netdrv] i40e: update driver version (Stefan Assmann) [1659162] - [netdrv] i40e: Protect access to VF control methods (Stefan Assmann) [1659162] - [netdrv] i40e: Replace strncpy with strlcpy to ensure null termination (Stefan Assmann) [1659162] - [netdrv] i40e: Add capability flag for stopping FW LLDP (Stefan Assmann) [1659162] - [netdrv] i40e: Use a local variable for readability (Stefan Assmann) [1659162] - [netdrv] i40e: Replace spin_is_locked() with lockdep (Stefan Assmann) [1659162] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Stefan Assmann) [1659162] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Stefan Assmann) [1659162] - [netdrv] drivers: net: remove inclusion when not needed (Stefan Assmann) [1659162] - [netdrv] i40e: Remove unnecessary print statement (Stefan Assmann) [1659162] - [netdrv] i40e: Use proper enum in i40e_ndo_set_vf_link_state (Stefan Assmann) [1659162] - [nvme] nvmet: ignore EOPNOTSUPP for discard (Ewan Milne) [1696369] - [tools] tools: bpftool: fix potential NULL pointer dereference in do_load (Ivan Vecera) [1708560] - [tools] tools lib bpf: Provide wrapper for strerror_r to build in !_GNU_SOURCE systems (Ivan Vecera) [1708560] - [tools] libbpf: Remove the duplicate checking of function storage (Ivan Vecera) [1708560] - [tools] bpf: fix build error in libbpf with EXTRA_CFLAGS="-Wp, -D_FORTIFY_SOURCE=2 -O2" (Ivan Vecera) [1708560] - [tools] tools: include reallocarray feature test in FEATURE_TESTS_BASIC (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow reuse of maps with bpftool prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow map reuse (Ivan Vecera) [1708560] - [tools] tools: bpf: make use of reallocarray (Ivan Vecera) [1708560] - [tools] tools: libbpf: move library error code into a separate file (Ivan Vecera) [1708560] - [tools] tools: bpftool: reimplement bpf_prog_load() for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: add extended attributes version of bpf_object__open() (Ivan Vecera) [1708560] - [tools] tools: libbpf: recognize offload neutral maps (Ivan Vecera) [1708560] - [tools] tools: bpftool: allow users to specify program type for prog load (Ivan Vecera) [1708560] - [tools] tools: libbpf: expose the prog type guessing from section name logic (Ivan Vecera) [1708560] - [tools] tools: bpftool: add support for loading programs for offload (Ivan Vecera) [1708560] - [tools] tools: bpftool: refactor argument parsing for prog load (Ivan Vecera) [1708560] - [tools] selftests/bpf: add Error: prefix in check_extack helper (Ivan Vecera) [1708560] - [tools] selftests/bpf: remove duplicated word from test offloads (Ivan Vecera) [1708560] - [tools] tools: bpftool: deal with options upfront (Ivan Vecera) [1708560] - [tools] tools: bpftool: add missing --bpffs to completions (Ivan Vecera) [1708560] - [tools] tools: bpftool: drop unnecessary Author comments (Ivan Vecera) [1708560] - [tools] tools: libbpf: don't return '.text' as a program for multi-function programs (Ivan Vecera) [1708560] - [tools] tools: libbpf: restore the ability to load programs from .text section (Ivan Vecera) [1708560] - [tools] tools: libbpf: allow setting ifindex for programs and maps (Ivan Vecera) [1708560] - [tools] tools: libbpf: add section names for missing program types (Ivan Vecera) [1708560] - [tools] tools: bpftool: use correct make variable type to improve compilation time (Ivan Vecera) [1708560] - [scsi] scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport (Dick Kennedy) [1588024]- [xen] ALSA: xen: Introduce shared buffer helpers for page directory... (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Initialize completion for defer messages (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Remove duplicate assignment (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Fix uninitialized adev deref (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: intel: Add pre/post bank switch ops (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: keep track of Masters in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support for multi link bank switch (Jaroslav Kysela) [1683051] - [include] ALSA: soundwire: Handle multiple master instances in a stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Add support to lock across bus instances (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix acquiring bus lock twice during master release (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix incorrect exit after configuring stream (Jaroslav Kysela) [1683051] - [drivers] ALSA: soundwire: Fix duplicate stream state assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix for Lenovo B50-70 inverted internal microphone bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix race between creating and refreshing sysfs entries (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors (Jaroslav Kysela) [1683051] - [include] ALSA: uapi: #include in asound.h (Jaroslav Kysela) [1683051] - [include] ALSA: timer: fix wrong comment to refer to 'SNDRV_TIMER_PSFLG_*' (Jaroslav Kysela) [1683051] - [sound] ALSA: x86/cpu: Sanitize FAM6_ATOM naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: don't select DPCM via simple-audio-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: don't select DPCM via audio-graph-card (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Corrected fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Avoid superfluous COEF EAPD setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixup headphone noise via runtime suspend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix unused variable warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: toneport: Fix broken usage of timer for delayed execution (Jaroslav Kysela) [1683051] - [sound] ALSA: aica: Fix a long-time build breakage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi: no checking monitor in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save PGA for mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: save output volume for mixer controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: initialize setting when ramping volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: core: fix undefined nocodec reference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: xtensa: fix undefined references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Propagate sof_get_ctrl_copy_params() error properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hdea/realtek - Headset fixup for System76 Gazelle (gaze14) (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: add CometLake PCI IDs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support low power consumption for ALC295 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: Fix an uninitialized variable compile warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Fix a compile warning with CONFIG_PCI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Fix a compile warning at CONFIG_COMMON_CLK=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sound/soc/sof/: fix kconfig dependency warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: change trace level on iec control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: update pcm hardware constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: Fix restore of DAPM Muxes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: RT5677-SPI: Disable 16Bit SPI Transfers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Consider eld_valid when reporting jack event (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Read the pin sense from register when repolling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add reserved DMA memory support (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: emux: soundfont.c: divide by zero in calc_gus_envelope_time() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: Map BTN_0 to KEY_PLAYPAUSE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: add sof-rt5682 machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic:refine code style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: skl_hda_dsp_generic: add DMIC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: CNL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: APL: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: IPC: add ipc dump function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: intel: hda: add hw_params_upon_resume flag for hda stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: handle real stream interrupts only (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-stream: store stream capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-ipc: simplify handling of IPC IRQ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: ipc: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: use snd_sof_pcm_period_elapsed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: PCM: add period_elapsed work to fix race condition in interrupt context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda-pcm: remove useless dependency on hdac_ext (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set bus->idx as 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: set I2S slave before enabling DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add SSP info to the chip info struct (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: hda: add the SSP Host Device memory space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: cnl: add pointer ops to use DPIB position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: topology: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASOC: SOF: ipc: add support for stricter ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: add Kconfig option for strict ABI checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: avoid Oops if DMA setup fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: stream is already locked in hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: remove redundant null checks of dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skip hw_free on codec dai for which the stream is invalid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix valid stream condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: unlock the device on startup errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update the support rate list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Use clk_round_rate to handle enabled bclk/wclk case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: Headphone Jack sense inverts on the LattePanda board (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Fix missing break in switch statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct region base typo in wm_halo_setup_algs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: fix spelling mistake "incompatble" -> "incompatible" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Use DSP ops pointers to stop watchdog in error handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix to use list_for_each_entry_safe() when delete items (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix return value check in sprd_mcdt_probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: fix DAI_CLK_EN register bit overwrite (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix kcontrols for effect widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: cache pdev->dev pointer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix potential uninitialized variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: add I2S2 control path from UL2 and UL3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: change supported formats of DL2 and UL1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: remove "model" attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmix: fix object reference leaks in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs43130: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: fix a NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add Geminilake Realtek+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make boards more available for compile test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Fix invalid license ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: Make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx: fix fiq dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: acp3x: Make acp3x_dai_i2s_ops static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove set but not used variable 'mclk_rate' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_micfil: Remove set but not used variable 'osr' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Enable TDM support for DSP_A/B modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure wclk and bclk of master codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build err while CONFIG_I2C set to module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix spelling mistake "plalform" -> "platform" (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply the fixup for ASUS Q325UAR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Register irq handler after the chip initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: fix a double free bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unregister device twice on ASoC driver (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: use dynamic buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix a memory leak bug (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix misuse of x (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - EAPD turn on later (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Dell AIO speaker noise (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: select relevant machine drivers for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Make sure BDW based machine drivers build for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Build support for SOF core and Intel drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Kconfig: expose common option between SST and SOF drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add platform differentiation for APL and CNL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: add SKL+ platform DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add support for HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA trace operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA stream operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add hda-bus support and initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA PCM operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA firmware loader (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add ACPI device support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA IPC mechanisms. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add Intel specific HDA DSP HW operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add HDA controller for Intel DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add APL/CNL HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add legacy IPC support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BDW HW DSP support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Intel: Add BYT, CHT and BSW DSP HW support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add utils (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add xtensa support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Nocodec machine driver support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PM support (Jaroslav Kysela) [1683051] - [include] ALSA: ASoC: SOF: Add userspace ABI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add firmware loader support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP HW abstraction operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add DSP firmware logger support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for loading topologies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add PCM operations support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add support for IPC IO between DSP and Host (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add driver debug support. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware KControl support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: SOF: Add Sound Open Firmware driver core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: simplify dai driver initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Read pin switches conf from devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add missing return 0 in remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_parse_pin_switches() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix irq mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: align quirk override handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: fix compilation warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Add support for runtime pm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Update is_slave_mode with correct value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum multi-channel data transfer support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: rt5682: initialize mutex before using (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: return the get_irq error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup 6ch settings to 8ch (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Handle the error from snd_usb_mixer_apply_create_quirk() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add new Dell platform for headset mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codec: hdac_hdmi add device_link to card device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: Remove set but not used variable 'stage_type' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: save fixed-up hw_params of BE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tobermory: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: tm2_wm5110: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: speyside: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: snow: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8994*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_wm8580: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smdk_spdif: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: smartq_wm8987: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_uda134x: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx_simtec*: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c2412-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: rx1950_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c24xx-i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: s3c-i2s-v2: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: pcm: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: neo1973_wm8753: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: lowland: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: littlemill: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: jive_wm8750: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: idma: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: h1940_uda1380: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: bells: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: arndale: Convert to SPDX License Identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ps3: Remove set but not used variables 'start_vaddr' and 'pcm_index' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - add two more pin configuration sets to quirk table (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't refer to snd_cards array directly (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Drop superfluous id-uniquification behavior (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Fix card races between register and disconnect (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Fix racy addition/deletion of nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Correct unlock sequence at snd_seq_client_ioctl_unlock() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for Focusrite Scarlett Solo (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize ext-bus-specific fields in snd_hdac_bus_init(), too (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Initialize power_state field properly (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect racy pool manipulation from OSS sequencer (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Simplify snd_seq_kernel_client_enqueue() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Cover unsubscribe_port() in list_mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: seq: Protect in-kernel ioctl calls with mutex" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing regmap requirement (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix racy display power access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: fix error handling when try_module_get() fails. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl: fix wrong number of channels (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Coding style fixes (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Simplify error path in snd_timer_open() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix race of get-subscription call vs port-delete ioctls (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Protect in-kernel ioctl calls with mutex (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove superfluous irqsave flags (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Align temporary re-locking with irqsave version (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use kvmalloc() for cell pools (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Revert active callback sync check at close (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add two more machines to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix spacing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: remove headset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: update module refcount if module_get_upon_open is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: conditionally increase module refcount on component open (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for the Teclast X98+ II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add quirk for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm1133-ev1: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: phycore-ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm030-audio-fabric: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_rdk: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: p1022_ds: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mx27vis-aic32x4: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc8610_hpcd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_i2s: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_psc_ac97: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mpc5200_dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-ssi: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm-fiq: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-mc13783: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-es8328: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-dma: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-pcm: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: fix sai driver name initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the correct dobj to free enum control values and texts (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix OOB-reads from strlcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: change mic bias DAPM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Support synchronous mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix big-endian check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdmout: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm-formatter: rework quirks settings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-frddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: add g12a support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove link components before cleaning up card resources (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: add remove() callback for component driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l35: Disable regulators on driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add adc volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add support of master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add reset management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add regulator management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Avoid calling snd_compr_stop_error from WDT expiry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98357a: add missing supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Playback PowerTune Controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Add Switch for Setting Common Mode Voltage (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Do not use stream buffer size before it is set (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Mark RXFIFO_DATA as volatile and precious (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix spelling mistake "faied" -> "failed" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: Correct PDM_CTRL0 reg value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: adjust waterlevel in frame unit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add compatible for rk1808 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fixup pdm fractional div (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: optimize clear logic (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: add default regs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: using left justified store mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: change dma burst to 8 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: pdm: fix regmap_ops hang issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Update copyright and use SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix the smatch warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Change author's name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk for Tuxedo XC 1509 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Move to ACT_INIT state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Fix modular build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: Enable codec clock once and keep it enabled (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Fix build error in mt8183_da7219_max98357_dev_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: TS3A227: fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make use of local variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Remove redundant NULL check in wm_adsp_buffer_free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: aic31xx_set_jack() can be static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Check for buffer in trigger stop (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21 with ALC233 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix a leaked reference by adding missing of_node_put (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Align tplg pointer increment across all kcontrols (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: support driver alias names for FE topology overrides (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio compress offload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix SND_SOC_LOCHNAGAR_SC kconfig warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: set power_check callback for widgets that shouldnt be always on (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add button press detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add headphone/headset detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: skip missing substream while applying symmetry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: Convert to use acpi_dev_get_first_match_dev() (Jaroslav Kysela) [1683051] - [acpi] ALSA: ACPI / utils: Introduce acpi_dev_get_first_match_dev() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove set but not used variable 'dai_name' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add support for inverted jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix typo in comment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: fix spelling mistake: "missign" -> "missing" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with DA7219 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Mediatek: MT8183: Add machine driver with TS3A227 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Add ACPI ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add multi endpoint support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Fix Common Pins (Jaroslav Kysela) [1683051] - [sound] ALSA: us122l: Use alloc_pages_exact() (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make snd_timer_close() really kill pending actions (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Check ack_list emptiness instead of bit flag (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Make sure to clear pending ack list (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: Unify timer callback process code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_audmix: Fix kbuild failure (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Add support of loading GUS-patch (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Add Audio Mixer CPU DAI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: enable S24_LE format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Only enable with common clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Allow 192000 Sample Rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Remove mclk references (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Restructure set_dai_sysclk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Dynamically Determine Clocking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Move aosr and dosr setting to separate functions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Control clock gating with CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model BDIV divider in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model DAC/ADC dividers in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model CODEC_CLKIN in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Model PLL in CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Initialize private_value in snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: aloop: Support S24 sample formats (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Don't suspend stream in unrecoverable PCM state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer dereference in snd_soc_dapm_free_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf-audio: Remove redundant of_match_node call (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix incorrect extern (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of 64 bits division (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix crash at suspend/resume after failed codec registration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Simplify alt firmware loading code (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix possible OOB access in PCM oss plugins (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with ALC256 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: test memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: lochnagar: Add driver to support Lochnagar 2 sound card (Jaroslav Kysela) [1683051] - [mfd] ALSA: mfd: lochnagar: Add support for the Cirrus Logic Lochnagar (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Properly Set Processing Blocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mchp-i2s-mcc: add driver for I2SC Multi-Channel Controller (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: rename asoc_simple_card_xxx() to asoc_simple_() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: separate asoc_simple_card_parse_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_card_init_priv() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_be_hw_params_fixup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_dai_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_hw_param() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_shutdown() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: share asoc_simple_startup() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: share common priv for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: add asoc_simple_debug_info() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Update DA7219 DAI clock name to align with codec updates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Expose BCLK and WCLK control through CCF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix channel swap issue when stream starts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: add constraint for the asrc of older version (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: Set auto-increment bit for register writes (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Fix Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: add mmap support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: fix debugfs warnings on entry creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: dfsdm: manage multiple prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct some minor issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Don't use register read to determine slave/master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Break out clock setting into separate function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: jz4740: Depend on MIPS instead of MACH_JZ4740 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add WDT expiry IRQ handling support for Halo core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add HALO MPU fault logging (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for new Halo core DSPs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Reduce repititive code on mtk_regmap_update_bits. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Fix UBSAN warning. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out DSP specific operations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out parsing of firmware ID header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor firmware status reading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Move wm_adsp2_set_dspclk to CODEC drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Don't export wm_adsp2_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Shutdown any compressed streams on DSP watchdog timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add locking to wm_adsp2_bus_error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct handling of compressed streams that restart (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free link string in error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free stream_name of dai_drv (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Don't trigger jackpoll_work in azx_resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: add graph_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph: rename graph_get_conversion() to graph_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add simple_parse_mclk_fs() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename simple_get_conversion() to simple_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: recording has no sound after booting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: fix jack type detection issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Check JD status when system resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: skip for i2s5 in mck_disable (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use 8 byte header for IR context to get isochronous cycle (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support MOTU 8pre FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: fix mismatch between snd_opl3_drum_switch definition and declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_JD_NOT_INV quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for active-high jack detect (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: spdifrx: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: Make gpio property optional (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: dt-bindings: add regulator property to simple amplifier (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: simple-amplifier: remame dio2125 documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: use 'version' field of unit directory to identify model (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: add a check for request_region (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: add a check for ioremap_nocache (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: create tlv before soc_tplg_init_kcontrol (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: merge alc_fixup_headset_jack to alc295_fixup_chromebook (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: hdmi - add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: automatic selecting BCLK in I2S master mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the typo of function name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix clock configuration for 44100 sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8810: fix the issue of widget with prefixed name (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - add more quirks for HP Z2 G4 and HP Z240 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed Headset Mic JD not stable (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with ALC255 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: avoid build error without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: usx2y: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Avoid NULL pointer dereference at snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: axi-i2s: let both capture and playback be optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: Avoid a potential deadlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix registers declaration in regmap (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix the issue of the widget with prefix name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: prevent snd_soc_dpcm use after free (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:intel:skl:fix a simultaneous playback & capture issue on hda platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:hdac_hda:use correct format to setup hda codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC:soc-pcm:fix a codec fixup issue in TDM case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: fix davinci_mcasp_probe dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ams-delta: remove duplicate 'const' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: remove compat dma probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: use default dai name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: improve channel capabilities handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: change trigger traces (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add i2c dependency for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: src: fix compiler warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix DAPM routes for capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Fix probe deferral following prelink failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: avoid limiting params->msbits in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix set_sync service (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix oversampling mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix exposed capabilities in spdif mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix iec958 controls indexation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ab8500: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix S/PDIF DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add quirk for MOTU MicroBook II (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd add loopback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: fix reset gpio reference counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: skip useless write in slave mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix race condition in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: remove useless callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix dma configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix stream count management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix 16 bit format support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: fix IRQ clearing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: fix dependency for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add Maxim98373 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: fix SSI9 4/5/6/7 busif related register address (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: fix construction of PCM frame for capture direction (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against Liquid Saffire 56 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Extend i915 component bind timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Improve logging messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Add support for multiple compressed buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Refactor compress stream initialisation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Reorder some functions for improved clarity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out stripping padding from ADSP data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Fix an IS_ERR() vs NULL checking bug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: sound card name from device tree (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Prevent uninitialized variable use (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix of-node refcount unbalance in apq8016_sbc_parse_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Fix of_node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix of-node refcount unbalance in DAI-link parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow compressed buffers in any memory region (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Update cached error state on trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix of-node refcount unbalance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: Fix energysense SLEEP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: pcm186x: fix wrong usage of DECLARE_TLV_DB_SCALE() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix multiple "IIS multi" devices initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix secondary platform device unregistration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk: Add DAI links for Multi-Playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add Geminilake Dialog Maxim machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Headset button support in broxton machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Rename hpvcc regulator supply to cpvdd (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1977: Add support for setting MICBIAS via DT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Potential small memory leak in dapm_cnew_widget() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add missing DAPM routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Make function 'wm8741_mute' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: fix register setting issue in RIGHT_J mode (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: imx-sgtl5000: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix missing of_node_put() at simple_dai_link_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Fix refcount underflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Ensure proper sample rate on pri/sec PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: remove set but not used variables 'mask, cr1' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: free created components in tplg load error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Make some symbols static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select dmic for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix sysclk_df type (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: fix TXCLK_DF mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add support to disable on-chip PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Add runtime support for DSP_A and I2S modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Fix frame polarity for DSP_A format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Set constraint to always have 32 sample bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ad193x: Remove capture support for codecs without ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: fix spelling mistake "doens't" -> "doesn't" (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Expose sample resolution through proc interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Prevent potential NULL platform data dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Remove unused SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Update TDM usage to be more flexible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add support for master mode BCLK rate adjustment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to SPDX License Indentifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Comments clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Change indentation in SAMSUNG_I2S_FMTS definition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Simplify pri_dai, sec_dai pointers usage (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add missing put_device() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Specify DMA channel names through custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: odroid: Add support for secondary CPU DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Get rid of a static spinlock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move quirks data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move IP variant data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Drop spinlock pointer from i2s_dai data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move SFR pointer to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: Remove set but not used variable 'hw' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Disable PC beep in passthrough on alc285 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone and internal speaker support for System76 oryp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Make symbol 'cros_ec_dai' static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: make some functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Remove unused including (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move registers cache to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move opclk data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move core clk to the driver common data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Add widgets and routes for DPCM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Move clk supplier data to common driver data structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Restore support for the secondary PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Comment why read blocks when PCM is not running (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove new_mach_data field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cnl-match.c: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: icl-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: hsw-bdw-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: glk-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: cht-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: byt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: soc-acpi: bxt-match: remove asoc_plat_name field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: icl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hsw-bdw-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hda-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cnl-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: byt-match.c: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt-match: remove prefix for SOF files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Convert to single component with multiple DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: dmaengine: Allow to specify custom DMA device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Extend use of chan_names provided in custom DMA config (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Improve of_node test in dmaengine_pcm_request_chan_of() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Fix prescaler setting for the secondary DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use __printf markup to silence compiler (Jaroslav Kysela) [1683051] - [sound] ALSA: tlv320aic32x4: delay i2c access by 1 ms after hardware reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd fix rx stream assign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Set OSR mode in hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8741: Add digital mute callback (Jaroslav Kysela) [1683051] - [sound] ALSA: PCM: check if ops are defined before suspending PCM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: use devm_kzalloc for all structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: use pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add clock select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add soft reset on probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: set .ignore_module_refcount field in component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: don't increase component module refcount unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: gpiolib: acpi: Introduce ACPI_GPIO_QUIRK_ONLY_GPIOIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: convert license header to SPDX (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-analog: add missing license information (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: regulator notifier registration should be managed (Jaroslav Kysela) [1683051] - [sound] ALSA: i915/snd_hdac: I915 subcomponent for the snd_hdac (Jaroslav Kysela) [1683051] - [base] ALSA: components: multiple components for a device (Jaroslav Kysela) [1683051] - [documentation] ALSA: component: Add documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Revert capture stream behavior change in blocking mode (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix function name in kernel-doc comment (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Define snd_pcm_lib_preallocate_*() as returning void (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix up for snd_pcm_lib_preallocate_pages_for_all() API change (Jaroslav Kysela) [1683051] - [sound] ALSA: SoC: stm32: i2s: manage clock power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: i2s: add power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Remove unnecessary const qualifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs35l36: Add support for Cirrus CS35L36 Amplifier (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix implicit fb endpoint setup by quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for HP EliteBook 840 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: Use C++ style comments in header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Kconfig: Show knob, and depend on MIPS || COMPILE_TEST (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Add support for devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4740: Use SPDX license notifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: Prevent clk_get_rate() calls in atomic context (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Line Playback Volume, Line Boost Volume, Line Right, Line Left, Line Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add FM Playback Volume, FM Left, FM Right, FM Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Playback Switch, Mic2 Playback Switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Merge sun4i_codec_left_mixer_controls and sun4i_codec_right_mixer_controls into sun4i_codec_mixer_controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic1 Boost Volume, Mic2 Boost Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add sun7i_codec_controls, sun7i_codec_codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add Mic Playback Volume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-codec: Add MIC2 Pre-Amplifier, Mic2 input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: jz4725b: fix spelling mistake "Deemphatize" -> "Deemphasize" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: fix semicolon.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: correct shift bit for ssiu9 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: Add jz4725b-codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup rsnd_ssi_master_clk_start() user count check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: harden use of lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xtensa: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dwc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix out-of-bounds accesses to DAPM lookup tables (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Clean up proc file creations (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Move card id proc creation into info.c (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Minor optimization (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Drop unused snd_info_entry.card field (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Clean up with new procfs helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Add standard helpers for card proc file entries (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: emux: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: opl4: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: Remove superfluous snd_info_register() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Add helper functions for component trigger/set_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: Clarify the intent of current compressed ops handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: remove some unnecessary NULL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssm2602: Fix ADC powerup sequencing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Check for NULL widget in dapm_update_dai_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: spi: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: sh: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: parisc: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: atmel: Drop superfluous PCM preallocation error checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix build error without CONFIG_PCI (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Fix stop handling on compressed capture streams (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for new T+A USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: info: Always register entries recursively (Jaroslav Kysela) [1683051] - [sound] ALSA: core: Don't allow NULL device for memory allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: fix missing header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: btcvsd: fix spelling mistake "offest" -> "offset" (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: unload physical dai link in remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: add SND_SOC_DOBJ_GRAPH type for dapm routes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: clear platform pointers on error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: fix object reference leaks in fsl_asoc_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add warnings for widget overwrite when adding route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Only power up active channels from a DAI (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix oops/use-after-free case with dai driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: fix use-after-free issue with dailink sname (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: add btcvsd driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Add channel numbers to AIFs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup TDM Split mode check for CTU (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: synchronize connection check for simple-card/audio-graph (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup MIX kctrl registration (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Avoid passing NULL to memory allocators (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hal2: pass struct device to DMA API functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Serialize codec registrations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use a common helper for hp pin reference (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix lose hp_pins for disable auto mute (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Headset microphone support for System76 darp5 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: remove a superfluous function declaration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sprd: Add Spreadtrum audio DMA platfrom driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: modify dapm route loading routine and add dapm route unloading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: fix memory leak in soc_tplg_dapm_widget_create (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Fix memory leak from soc_tplg_denum_create_texts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Remove widgets from dobj list (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Reduce number of dereferences when accessing dobj (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use standard device registration for beep (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply ALC294 hp init also for S4 resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Record the current power state before suspend/resume calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: remove useless test (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed hp_pin no value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cros_ec_codec: Add codec driver for Cros EC (Jaroslav Kysela) [1683051] - [documentation] ALSA: ASoC: Documentation: Add google, cros-ec-codec (Jaroslav Kysela) [1683051] - [maintainers] ALSA: MAINTAINERS: add maintainers for ChromeOS EC sub-drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix missing slimbus dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Cleanup DSD whitelist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: add slim support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add audio routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add capture dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add playback dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add basic controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: glk_rt5682_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_rt298: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt_da7219_max98357a: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5672: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_rt5645: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_nau8824: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht_bsw_max98090_ti: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_da7213: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bdw-rt5677: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broadwell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: haswell: platform name fixup support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add helper to change platform name for all dailinks (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: add support for Solid State Logic Duende Classic/Mini (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Variable "ret" in function rt5651_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: add static inline fallbacks when CONFIG_ACPI=n (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix clocking calculations when not using the PLL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the set_bclk_ratio interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs V2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fixup build error for mt6358 (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix tight loop of OSS capture stream (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add Opus #3 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt6358: add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: mt8183: add platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow soc_find_component lookups to match parent of_node (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use the common error path in __snd_pcm_lib_xfer() (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: Off by one in latter_handle_midi_msg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: make const arrays static, reduces object code size (Jaroslav Kysela) [1683051] - [sound] ALSA: proc: Avoid possible leaks of snd_info_entry objects (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Simplify proc file destruction (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Drop unused snd_pcm_substream.file field (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: comment cleanup about destination address of async transactions for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Cleanup snd_pcm_stream_lock() & co (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Remove down_write() hack for snd_pcm_link_rwsem (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: More fine-grained PCM link locking (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Fix multi-CODEC setups (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support rx MIDI functionality for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-specific operation to fill transaction buffer with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address to receive async transaction for MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: support tx MIDI functionality of Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add model-dependent parameter for address range to receive async transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: change prototype of handler for async transaction with MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Correct the setting while select ASRC clk for AD/DA filter (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add driver flag for runtime PM (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: implement runtime suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: remove redundant clock enable API (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: add runtime PM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: get clock handles early in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: runtime power management support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: rename to asoc_simple_card_canonicalize_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use for_each_link_codecs() for dai_link codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add soc_cleanup_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: reduce if/else nest on soc_probe_link_dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: merge card resources cleanup method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add new snd_soc_flush_all_delayed_work() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add .num_platform for dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Avoid confusing loop in snd_pcm_unlink() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make PCM linked list consistent while re-grouping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Unify snd_pcm_group initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_card_unref() inside in_pcm_file() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mute LED support for HP ProBook 470 G5 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface UCX (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to parse of clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring for dump of sync status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to get clock status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to switch mode to fetch PCM frame (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add protocol-dependent operation to dump status (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: obsolete proc node to leave one node (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: unify protocol layer for FF400/FF800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: rename protocol layer for former models (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: add explanation of legacy/modern style of dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_sai: Remove expensive print in irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove error due to probe deferral (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: don't print EPROBE_DEFER as error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: lower log level for potential probe deferral cases (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: put of nodes if finding codec fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix oops on re-probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add default pdata for i2s mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Set DAI format for dmic codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Kconfig: select max98927 for sdm845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-audmux: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: change snprintf to scnprintf for possible overflow (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix PLL source register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't defer probe on optional, NULL components (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Make snd_pcm_suspend() local static (Jaroslav Kysela) [1683051] - [sound] ALSA: pcmcia: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: arm: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ppc: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove superfluous snd_pcm_suspend*() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Move PCM suspend/resume code into trigger callback (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Suspend streams globally via device type PM ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Make snd_soc_find_component() more robust (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix init platform memory handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: parse AES audio parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: Select REGMAP_MMIO to fix build error (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: msm8916-wcd-digital: remove few unused variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: fix waring unused-function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe control for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: program stripe bits for controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add verbs for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add register offset for stripe control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add api to program stripe control bits (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skl: Fix display power regression (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix typo for ALC225 model (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: Hold client_mutex around soc_init_dai_link() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: use correct drvdata in snd_byt_cht_es8316_mc_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: move the codec PLL configuration to _init (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: SND_SOC_DAPM_MICBIAS is deprecated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add recalc_rate function to return DAI clock rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: MCLK should be enabled before DAI clocks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: defer card probe until all component is added to list (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Remove set but not used variable 'first_ch_bits' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix a mask wrong issue in snd_hdac_stream_start() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatches for register mask and value in hdac controller (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Disable headset Mic VREF for headset mode of ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add unplug function into unplug state of Headset Mode for ALC225 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix CM6206 register definitions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Variable "buf" in function rt274_jack_detect() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ADAU7002: Add optional delay before start of capture (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Potential NULL dereference in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk for PoV TAB-P1006W-232 (v1.0) tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for jack-detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirks module parameter (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Revert "Fix DMIC map headsetmic mapping" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add support for jack detect using an external GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add ACPI ID 10EC5640 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for PoV P1006W tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: update BSDSR/BSDISR handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: Allow SCLK pad drive strength to be changed (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable SPDIF driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add SPDIF audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add MICFIL SoC Digital Audio Interface driver. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: eliminate left-over from Raumfeld machine driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt298: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rl6437a: use __be32 for a __be32 buf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: store eq kcontrol byte in __be (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use logical AND (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: fix endianness issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6351: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs42xx.c: fix boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: fix boolean assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98927: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rt286: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: fix boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4271: fix boolean assignments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98383: fix boolean assignments to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: remove unused mux/mixer define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5645: remove unused mux define (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: fix kernel doc descriptions (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98090: remove unused constant variables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: declare trigger function as static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: Add support for AK4497 (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: fix a missing check of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: fix check on snd_card_register (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1712: fix a missing check of snd_i2c_sendbytes (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: add a check of the status of snd_ctl_add (Jaroslav Kysela) [1683051] - [sound] ALSA: oxygen: initialize spdif_playback_enable to 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: virtuoso: add de-emphasis control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support Dell headset mode for New AIO platform (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Always check descriptor sizes in parser code (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Check mixer unit descriptors more strictly (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Avoid access before bLength check in build_audio_procunit() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Add support for GPIO mode of the pins (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: Move context save/restore to runtime_pm callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: davinci-mcasp: No need for IS_MODULE/BUILTIN check for pcm driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for ASUS MeMO Pad 7 (ME176C) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Fallback to BYT-CR if IRQ 5 is missing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: sst: Simplify is_byt_cr() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Add ACPI match table entry for ES8316 codec on BYTCR platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Set card long_name based on quirks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add input-map support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add external speaker mux support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Add support for SSP0 (BYTCR) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Minor refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcht_es8316: Sort includes alphabetically (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Let core handle GPIO descriptor (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator/gpio: Allow nonexclusive GPIO access (Jaroslav Kysela) [1683051] - [regulator] ALSA: regulator: fixed: Default enable high on DT regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add DAC mono mix switch mixer control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8316: Add jack-detect support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Variable "val" in function rt274_i2c_probe() could be uninitialized (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: fix platform_no_drv_owner.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: fix error handling in xlnx_formatter_pcm_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add workaround for silence of rk3288 ACODEC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: support ACODEC for rk3328 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: add asoc_simple_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: reduce naming prefix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step2 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: cleanup DAI link loop method - step1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add link_info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add 1 CPU : 1 Codec support again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable audio formatter driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: add pcm formatter platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: remove simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add asoc_graph_card_get_conversion() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: check "reg" property on asoc_simple_card_get_dai_id() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: use snd_mask_set_format in all machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: simplify boolean test (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Baytrail: remove unneeded variable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: assign booleans to true/false (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: remove unneeded semicolon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: simplify boolean tests (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless cast (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: enable MCLK in STANDBY (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: save model id directly in of_device_id.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: make the driver visible in Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4341: Add driver for CS4341 DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix recording no sound issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: atom: Make PCI dependency explicit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: prevent potential divide by zero bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a small memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Fix a NULL vs IS_ERR() bug (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Off by one in of_q6asm_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Fix a double unlock in pcm512x_digital_mute() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: change license header format style (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Grammar s/the the/the/ (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: cleanup a debug printk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: set jack only for a specific backend (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Revert DSP detection on legacy HD-audio driver (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: clear pending irq handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable the headset mic auto detection for ASUS laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: force HDaudio legacy or SKL+ driver selection (Jaroslav Kysela) [1683051] - [sound] ALSA: HD-Audio: SKL+: abort probe if DSP is present and Skylake driver selected (Jaroslav Kysela) [1683051] - [sound] ALSA: HDA: export process_unsol_events() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX391UA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix model-id of unit for Apogee Ensemble (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Use Xen common shared buffer implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Kconfig: Remove the deprecated options (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ti: Merge davinci and omap directories (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add mute LED support for HP EliteBook 840 G4 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle model-specific registers (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for packet streaming on Fireface 800 (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: allocate isochronous resources in mode-specific implementation (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: code refactoring to handle multiplier mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to switch fetching mode (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix for state to fetch PCM frames (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: use the same print format for 'without_header' tracepoints (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong assignment for 'out_packet_without_header' tracepoint (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix wrong handling payload_length as payload_quadlet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add display_port_rx port routing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to Display port RX dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: add support for display_port_rx (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Add support to compress offload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: add support to MP3 format (Jaroslav Kysela) [1683051] - [sound] ALSA: soc-compress: add support to snd_compr_set_runtime_buffer() (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: make use of runtime buffer for copy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add more platform granularity (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: merge simple-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup prefix for snd_soc_codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup convert_rate/channel method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup mclk-fs method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: merge audio-graph-scu-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() ID method (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Invoke pcm_new() for all DAI-link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm512x: Implement the digital_mute interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: fix do_div warning in spdifin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add error logs on probe, remove dependency on NHLT (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: remove useless tests on HDaudio capabilities (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: stop probe if HDaudio capabilities don't exist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Harden DSP detection with PCI class/subclass info (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add CFL-S support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add powersaving widgets for DAC and ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: enable i2s driver build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: xlnx: Add i2s driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_rt5660: Add a new machine driver for kbl with rt5660 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-toddr: add support for spdifin backend (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: Dereference pointer for memcpy sizeof in asoc_simple_card_probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: add support for Huawei WMI micmute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix front speakers on Huawei MBXP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove RSND_REG_ from rsnd_reg (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for Fireface 800 with MIDI functionality only (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: localize a handler for MIDI messages on tx transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add driver data for register for MIDI high address (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share register for async transaction of MIDI messages (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: add support for second optical interface for ADAT stream (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share helper function to get current sampling rate and clock source (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share status and configuration dump (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: share some registers for status of clock synchronization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: add dai-link support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - make pci_iounmap() call conditional (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Always set display_power_control for Intel HSW+ codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add missing display power-off at driver removal (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make snd_hdac_display_power() void function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Properly free the display power at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Drop superfluous AZX_DCAPS_I915_POWERWELL checks (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Refactor display power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: use cpu/codec pointer on simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fix build warning without CONFIG_OF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: add rt5663 codec select (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: fix the audio jack button remapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Point of View Mobii TAB-P1005W-232 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Prowise PT301 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX433FN/UX333FA with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC294 mic and headset-mode fixups for ASUS X542UN (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/intel: Refactoring PM code (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix reference to wrong register for clock configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Add copyright and module author (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add configuration for headset codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add TDM configuration for speaker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix signal paths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Calculate LRCLK divider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Remove useless assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Enable headset button support for new codec (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack button support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add jack pointer and unsolicited event bits to callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fixed headphone issue for ALC700 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5660: Add a new ACPI match ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: ak4104: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: cs4270: move to GPIO consumer API (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use dma_ops of parent device for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: use DMA addr rather than CPU pa for acp_audio_dma (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Gnawty (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Remove direct OF name and type accesses (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Use of_node_name_eq for node name comparisons (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4860G/Z6860G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: Fix mic issue on Acer AIO Veriton Z4660G (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add support for Acer Aspire C24-860 headset mic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek: ALC286 mic and headset-mode fixups for Acer Aspire U27-880 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added max98373_reset for stable amp reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care multi DPCM codec_conf (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use cpu/codec pointer on graph_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: care link / dai count (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: fixup asoc_simple_card_get_dai_id() counting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add missing TDM Split mode support for simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup mod ID for CTU regmap read/write (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: indicates Channel and Mode for debug (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Add Tegra186 and Tegra194 support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra - Probe up to 8 codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add pmc_plt_clk_0 quirk for Chromebook Clapper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove raumfeld machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in card.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add ACPI matching tables for ICL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix speaker output regression on Thinkpad T570 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: au8540: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add support for AMD Stoney Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add SMSL D1 to quirks for native DSD support (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix starvation on down_write_nonblock() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Call snd_pcm_unlink() conditionally at closing (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/tegra: compatible string as shortname (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: thinkpad_acpi: Add audio mute LED classdev support (Jaroslav Kysela) [1683051] - [platform] ALSA: platform/x86: dell-laptop: Add micmute LED trigger support (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Support led audio trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: Don't disable pcm3168a when CONFIG_PM defined (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce module_param wakeup_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: introduce mode switch delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Create and setup jack in init callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: sdm845: Add board specific dapm widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Implement configurable dismod handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Update PDIR (pin direction) register handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Clear TXSTAT register before activating serializers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Add FW reply for MCLK/SCLK IPC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Make DSP replies more human readable (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: trigger: Introduce audio mute LED trigger (Jaroslav Kysela) [1683051] - [drivers] ALSA: leds: core: Introduce LED pattern trigger (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Support ALC300 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add auto-mute quirk for HP Spectre x360 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9867: Fix whitespace (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc.h: makes snd_soc_of_parse_audio_prefix() inline (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fix a NULL vs IS_ERR() check in probe (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix the pop noise on headphone for lenovo laptops (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: fix spelling mistake "Frequence" -> "Frequency" (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers" (Jaroslav Kysela) [1683051] - [sound] ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Consolidate helpers for adding and replacing ctl elements (Jaroslav Kysela) [1683051] - [sound] ALSA: control: Fix race between adding and removing a user element (Jaroslav Kysela) [1683051] - [sound] ALSA: sparc: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix invalid snd_free_pages() at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - fix headset mic detection for MSI MS-B171 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add ASRock N68C-S UCC the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: Fix incorrect bit shift at AC97-SPSA control write (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: notify events of change of state for userspace applications (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: apply small refactoring to handle several type of event for hwdep interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: queue events for change of control surface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: add new hwdep ioctl command to get state image (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: pick up data of state from tx isochronous pakcets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Add pm_qos handling to avoid overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Add pm_qos handling to avoid under/overruns with CPU_IDLE (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Fix latency value calculation for pm_qos (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup define position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: tidyup typo SND_AUDIO_GRAPH_CARD (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup asoc_simple_card_parse_daifmt() timing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "convert-rate/channels" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: tidyup "prefix" parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_of_parse_node_prefix() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: add VCC regulator widget (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: sun50i-codec-analog: Add support for cpvdd regulator supply (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: remove "option" from asoc_simple_card_of_parse_routing() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: tidyup asoc_simple_card_parse_convert() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: accept NULL parameter on asoc_simple_card_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: remove asoc_simple_card_clk_register() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: makes rsnd_ssi_is_dma_mode() static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup rsnd_parse_connect_ssiu_compatible() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Add support for Secondary MI2S interface (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: Update slot_width for Quaternary TDM port (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use platform_data for machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: fix interface for Chromebook machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: define common interface for machine driver configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: acpi: fix: continue searching when machine is ignored (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic3x: Add support for CBM_CFS and CBS_CFM clocking modes (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Use device_type helpers to access the node type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - fix AE-5 pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add new ZxR quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: clean up indentation, replace spaces with tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Fix error handling of regulator_set_load (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix spelling mistake "Inavlid" -> "Invalid" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: fix indentation issue with return statement (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320dac33: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: asihpi: clean up indentation, remove extraneous tab (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert a few more users to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Add regulator support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4118: Add support for AK4118 S/PDIF transceiver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Fix device reset-registers trigger value (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: remove set but not used variable 'dma_buffer' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Fixed build errors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Recalculate audio map forcely when card instantiated (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-abe-twl6040: Fix missing audio card caused by deferred probing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: fix memory leak of i2s_data on error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add DT property for single-ended output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Rename output widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Set dai_link id to each dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: add missing route for ADC (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: enable acp3x drivers build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x system resume pm op (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x runtime pm ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x tdm mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x i2s ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add acp3x pcm driver dma ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: Interrupt handler changes for ACP3x DMA driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: add ACP3x PCM platform driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: amd: create ACP3x PCM platform device (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP3.0 PCI driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: add ACP 3.x IP register header (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Power down links before turning off display audio power (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: add Icelake support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Factor out common init code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Fix dma-unsafe read of scratch registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing slave_config setting for I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: No need to initialize max_xx_thres when it is not used (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Remove redundant check for mcbsp->pdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Re-arrange files for core McBSP and Sidetone function split (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Move out the FIFO check from set_threshold and get_delay (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Simplify the mcbsp_start/_stop function parameters (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up the interrupt handlers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Skip dma_data.maxburst initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: Clean up dma_data addr initialization code (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: add support for APOGEE duet FireWire (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Call pci_iounmap() instead of iounmap() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add quirk entry for HP Pavilion 15 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Optimize for non-PCI configuration (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use ring buffer for rsnd_mod_name() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: fix crash on module removal (Jaroslav Kysela) [1683051] - [sound] ALSA: oss: Use kvzalloc() for local buffer allocations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_ssi: Change to use DEFINE_SHOW_ATTRIBUTE macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add TDM Split mode support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add SSIU BUSIF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: handle DPCM converted rate/chan under core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move HDMI information from ssi.c to core.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use defined io_playback/io_capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rename rsnd_runtime_is_ssi_xxx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove error check which never happen (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: remove endpoint bidirectional check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add quirk for APL RVP boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add SOF information for APL RVP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: remove GFP_ATOMIC, use GFP_KERNEL (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: boards: fix Skylake typo (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Atom machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: use standard interface for Hdaudio machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: change ac97 dependencies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: Remove unused machine driver for AM3517-evm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: remove read-only status register from snd_kcontrol_new (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: Remove redundant snd_soc_component_read32 calls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Fix the dai widgets (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: Only add routing once. (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Define registers for CM6206 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix incorrect clearance of thinkpad_acpi hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Fix wrong MI2S SD line mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: cht_bsw_max98090_ti: Add quirk for boards using pmc_plt_clk_0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: rsnd_mod_name() handles both name and ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add .get_id/.get_id_sub (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: move .get_status under rsnd_mod_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: cleanup hw_constraint for LEFT_J/I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcbsp: On OMAP1 and OMAP2420 only 16bit format is supported (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: constify regulator_desc structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: constify snd_soc_dai_ops structures (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: remove unnecessary unlikely() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: mrfld: fix uninitialized variable access (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm97xx: fix uninitialized regmap pointer problem (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: constify snd_soc_ops structure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix less than zero comparison on unsigned int (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: rename SND_SUNXI_ADDA_PR_REGMAP to SND_SUN8I_ADDA_PR_REGMAP (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Rip out the lpe audio runtime suspend/resume hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: x86: Fix runtime PM for hdmi-lpe-audio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup clock start checker (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: fix insufficient PCM rule for period/buffer size (Jaroslav Kysela) [1683051] - [sound] ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix to wait for releases of all ALSA character devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix noderef.cocci warnings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: fix master clock naming (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: add clock dependency for sai (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Actually fix microphone issue (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: move code from startup/shutdown hooks into pm_runtime hooks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm2000: Remove wm2000_read helper function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: fix mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Log addresses as 8 digits in wm_adsp_buffer_populate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Rename memory fields in wm_adsp_buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs42l51: add mclk support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: set sai as mclk clock provider (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: fix trivial checkpatch issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for hw_free on CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98927: minor white space clean up (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c/cs8427: Fix int to char conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: tidyup SSICR::SWSP for TDM (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: enable TDM settings for SSI parent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for capture channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: Add support for XTI clock (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8822: new codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_sgtl5000: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: allow the sun8i-codec driver to be built on ARM64 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sunxi: Add new driver for Allwinner A64 codec's analog path controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec-analog: split regmap code into separate driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun8i-codec: Don't hardcode BCLK / LRCK ratio (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sun4i-i2s: Add compatibility with A64 codec I2S (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add 2 more models to the power_save blacklist (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Kabylake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add KBL Dialog Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add SND_JACK_LINEOUT jack type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: don't pass GFP_DMA32 to dma_alloc_coherent (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add I2S/Left_J TDM support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add hw constraint for channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3168a: add HW constraint for non RIGHT_J (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sta32x: set ->component pointer in private struct (Jaroslav Kysela) [1683051] - [sound] ALSA: au88xx: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92xx-ad1848: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: oss: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: caiaq: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add missing entries to Kconfig (Jaroslav Kysela) [1683051] - [sound] ALSA: isight: fix leak of reference to firewire unit in error path of .probe callback (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort DHT Rot Pnt Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort max98373_bde_gain_tlv in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort BDE Limiter Thresh Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Sort Digital Volume in reverse order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: enable mclk-fs on codec node (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: use 32bit TDM width as default (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: add I2C dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: simplify cleanup process when failing to register sound card (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob/fireworks: simplify handling of local device entry table (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: release reference count of firewire unit in .remove callback of bus driver (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: block .remove callback of bus driver till all of ALSA character devices are released (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo M715 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix headphone pin config for ASUS G751 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix input effect controls for desktop cards (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add error checking in ca0132_build_controls() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up patch_ca0132() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix microphone inconsistency issues (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98988: make it selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: Add master clock handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8782: add support for regulators (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add ASUS G751 quirk model entry (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Add quirk for ASUS G751 laptop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Use the standard fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt274: Add fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau1761: Use the standard fall-through annotation (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add custom mixer status quirks for RME CC devices (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: update quirk for B&W PX to remove microphone (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Disable automute for Elo VuPoint (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: A lightweight function to discard pending bytes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add fault detect recovery property to DT bindings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: enable and disable extclk if given (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: checking NULL vs IS_ERR() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: skylake: Add missing break in skl_tplg_get_token() (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain cache of stream formats (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: use managed-resource to maintain model-specific data (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: use managed-resource to maintain response buffer (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use managed-resource to maintain data specific to M-Audio FW-1814/ProjectMix I/O (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire: use managed-resource of fw unit device for private data (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760 (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-lib: add PCM rules to obsolete PCM constraints based on LCM of SYT_INTERVAL (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR exit commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR 600 ohm gain control (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Remove input select enum for ZxR (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR input/output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR DSP post-download commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR init commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DBpro hda_codec_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add ZxR quirks + new quirk check function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix surround sound with output effects (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Fix AE-5 control type (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix mismatch for register mask and value in ext controller. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: add SND_SOC_I2C_AND_SPI dependency (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: avoid AC97_BUS build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Rename dummy_dma_ops to snd_dummy_dma_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98088: add OF support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a MIC pre. route (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component_dais() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_component() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup SSI clock during suspend/resume modes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: qdsp6: remove duplicated include from q6adm.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tidyup for_each_card_prelinks() dai_link (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5663: Remove the boost volume in the beginning of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_be() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_dpcm_fe() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_comp_order() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_components() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_rtds() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_links() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_card_prelinks() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rename for_each_rtd_codec_dai_reverse to rollback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: convert for_each_rtd_codec_dai() for missing part (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 exit function (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 specific controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add input selection commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add output set commands for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_alt_out_select (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup functions for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Merge post-dsp functions + cleanup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change firmware name and usage (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 regular init setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add AE-5 pre-init and ca0113 functions (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change ca0132_mmio_init for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Set AE-5 bools and select mixer (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add pincfg for AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk for Sound BlasterX AE-5 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Define new verbs and control params (Jaroslav Kysela) [1683051] - [sound] ALSA: xen-front: Refine indentations and constify snd_pcm_ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix the audio-component completion timeout (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677-spi: Drop unused GPIO include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Minor code modification (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix capture unstable in beginning for some runs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Fix the boost volume at the begining of playback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Remove HP volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Improve HP performance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove redundant include (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514-spi: Get the period_bytes in the copy work to make sure the value correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: add snd_soc_is_matching_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: manage platform name under snd_soc_init_platform() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove duplicated include from q6asm-dai.c (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hisilicon: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es8328: Fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: fireworks: fix memory leak of response buffer at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of discovered stream formats at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak for model-dependent data at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at error path (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: fix fall-through annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Enable runtime PM only for discrete GPU (Jaroslav Kysela) [1683051] - [sound] ALSA: oxfw: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-tascam: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-digi00x: fix memory leak of private data (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Register irq handler after register initializations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit definition of pci_iomap() on SH (Jaroslav Kysela) [1683051] - [sound] ALSA: don't call skl_init_chip() to reset intel skl soc (Jaroslav Kysela) [1683051] - [sound] ALSA: enable interrupt after dma buffer initialization (Jaroslav Kysela) [1683051] - [sound] ALSA: Revert "ASoC: Intel: Skylake: Acquire irq after RIRB allocation" (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove dai->driver NULL check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card rebind (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: remove unneeded static set .owner field in platform_driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add missing INTERLEAVED PCM attribute (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: remove unused num_dai_links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: avoid nested code on soc_remove_dai() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: remove empty rt5668_i2c_remove() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: fix unused variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Fix UBSAN warning at snd_soc_get/put_volsw_sx() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: switch to new ac97 bus support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix simultaneous playback and capture on different channel (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: fix possible info leak to userspace on SNDRV_EMU10K1_IOCTL_INFO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: skl-topology: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6core: Use kmemdup to replace kzalloc + memcpy (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: txx9: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nuc900: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tscs454: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5668: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: bcm: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel_ssc_dai: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Ensure reset bit is cleared before configuring (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: clean up a return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix a couple uninitialized ret variables (Jaroslav Kysela) [1683051] - [sound] ALSA: fireface: fix memory leak in ff400_switch_fetching_mode() (Jaroslav Kysela) [1683051] - [sound] ALSA: bebob: use address returned by kmalloc() instead of kernel stack for streaming DMA mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Update hardware pointer before start capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: usleep_range() needs include/delay.h (Jaroslav Kysela) [1683051] - [sound] ALSA: regmap: split up regmap_config.use_single_rw (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: hdac_hdmi: Limit sampling rates at dai creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Avoid uninitialised variable warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sgtl5000: avoid division by zero if lo_vag is zero (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't use p for dev_dbg() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: don't fallback to PIO mode when -EPROBE_DEFER (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: adg: care clock-frequency size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: gen: use tab instead of white-space (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: remove redundant check for !port condition (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move CODEC to CODEC params from the widget to the runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Add support for multi-CODEC CODEC to CODEC links (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move connection of CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Cosmetic tidy up of snd_soc_dapm_new_control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Move error handling to snd_soc_dapm_new_control_unlocked (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_rtd_codec_dai() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: add for_each_link_codecs() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add overflow detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Cleanup indirect PCM helper usages (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: mips: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: rme32: Use SNDRV_PCM_INFO_SYNC_APPLPTR info flag (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix several mismatch for register mask and value (Jaroslav Kysela) [1683051] - [sound] ALSA: aoa: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Don't schedule DAPM work if already in target state (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Add driver for PROTO Audio CODEC (with a WM8731) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: merge .nolock_start and .prepare (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support to init different BUSIF instance (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssiu: Support BUSIF other than BUSIF0 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate PDMACHCRE with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoc: rsnd: dma: Calculate dma address with consider of BUSIF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Check runtime channel number rather than hw_params (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: ssi: Fix issue in dma data address assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: remove is_play parameter from hw_rule function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 8 bit S8 format (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for the DSP_A/DSP_B formats (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add support for 16/24 bit slot widths (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add warning message to rsnd_kctrl_accept_runtime() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: fixup not to call clk_get/set under non-atomic (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Initialize allocated buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tlv320aic31xx: Add short circuit detection support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fix soc-core.c kernel-doc warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: q6routing: initialize data correctly (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Add channel fault reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Save last fault register even when clear (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas6424: Print full register name in error message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: support snd_soc_dai_link_component style for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: use snd_soc_dai_link_component for platform (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-util: remove dai_link compatible code for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card: use simple_dai_props (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple_card_utils: support snd_soc_dai_link_component style for codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add a S/PDIF enable switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: Add native 32bit I2S transport (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4265: SOC_SINGLE register value error fix (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 TDM slot width setting support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: tas5720: add TAS5722 specific volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-mcasp: Add support for FIFO usage caused delay reporting (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix cancel_work_sync() stall from jackpoll work (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Clean up jackpoll_ms option handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg pdm input (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add DT module alias (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmic: add Kconfig prompt for the generic dmic codec. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Unused exported functions changed to internal (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve legibility of if-statements (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Improve stylistics of file comments (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel: tse850: switch to SPDX license identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change MCLK to 48Mhz (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set constraints for DMIC and MAX98357a codec (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm3060: Add codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: cht-bsw-rt5672: Add key-mappings for the headset buttons (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5670: Add quirk for Thinkpad 8 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau17x1: Implemented safeload support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sigmadsp: safeload should not have lower byte limit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: add HDA BE DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add table for HDA-based platforms (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: move hda_codec.h to include/sound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8804: Add ACPI support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Update calibration function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: Change DAC/ADC volume scale (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added 10ms sleep after amp software reset (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-tdm: restrict formats depending on slot width (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-fifo: report interrupt request failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: imply clock and reset controllers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: Properly initialise hw->rate_max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Don't fail creating new DAPM control on NULL pinctrl (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Remove clock framework ifdefs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Convert to using pOFn instead of device_node.name (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: Use the new non-cached allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Use the new non-cached allocation for 440MX workaround (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Remove substream allocation/free ops (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Use new non-cached allocation for non-snoop mode (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Check the non-cached stream buffers more explicitly (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Add non-cached buffer type (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Simplify snd_malloc_dev_pages() calls (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't align the size to power-of-two (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Do error checks at creating system ports (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: add error check in snd_seq_system_client_init() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: signedness bug in snd_pcm_plug_alloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: hdspm: fix spelling mistake "Initializeing" -> "Initializing" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Return 0 when size < start_threshold in capture (Jaroslav Kysela) [1683051] - [kvm] ALSA: treewide: correct "differenciate" and "instanciate" typos (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Fix HP Headset Mic can't record (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix unbalanced pm_runtime_enable (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix check of pm_runtime_get_sync failure (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: fix device initialization in the compat layer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied again (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added speaker FS gain cotnrol register to volatile. (Jaroslav Kysela) [1683051] - [sound] ALSA: update dell-wmi mic-mute registration to new world order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Fix discarding the unsubscribed output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: Acquire irq after RIRB allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9712: fix replace codec to component (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirks for 2 more devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adav80x: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: Add delays to capture path to remove DC offset noise (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add exit commands for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Change mixer controls for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D input and output select commands (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add DSP setup defaults for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D startup functions and setup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add bool variable to enable/disable pci region2 mmio (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add Recon3D pincfg (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add quirk ID and enum for Recon3D (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Add alt_functions unsolicited response (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Clean up ca0132_init function. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Create mmio gpio function to make code clearer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Make DSP name configurable by codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Declare firmware controls from codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max98373: Added software reset register to readable registers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct DSP pointer for preloader control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Fix initialization of rt5677_of_match.data (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: compress: make BE and FE order inline with dpcm (Jaroslav Kysela) [1683051] - [sound] ALSA: intel_hdmi: remove redundant variable cfg_val (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Set delay value for the capture case (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Modified DMA pointer for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Make ACP->SYSMEM DMA non circular (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Fix missing break in switch (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add SLIM tx AIF_IN dapm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: remove unused header files from common.h (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sdm845: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove unused header files (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: make common.c as proper module (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8903: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da9055: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm5100-tables: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7213: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7219: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cs4270: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8990: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tda7419: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: max9850: use true and false for boolean values (Jaroslav Kysela) [1683051] - [sound] ALSA: dice: fix wrong copy to rx parameters for Alesis iO26 (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360 (Jaroslav Kysela) [1683051] - [sound] ALSA: seq_oss: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: samsung: i2s: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-dmic: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_esai: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: omap-mcpdm: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci-i2s: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: fix memory leak (Jaroslav Kysela) [1683051] - [sound] ALSA: synth: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: pci: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: i2c: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: isa: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: drivers: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: compress: Remove empty init and exit (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: fix spelling mistake "acumulator" -> "accumulator" (Jaroslav Kysela) [1683051] - [sound] ALSA: es18xx: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: opti9xx: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: opti92x: mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: galaxy: Mark expected switch fall-throughs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bxt: Use refcap device for mono recording (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: remove support for card rebind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: smd845: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: apq8096: remove auto rebinding (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Fix unmet dependency warning for SND_SOC_SDM845 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8994: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm9081: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8995: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8962: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8996: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8904: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8960: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8955: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5677: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5640: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8961: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix a typo (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix invalid use of sizeof in parse_uac_endpoint_attributes() (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Drop unused 64bit division macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Use no intrruptible mutex_lock (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix leftovers at probe error path (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Remove dead codes (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Minor cleanup of MIDI event parser helpers (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: Use delay set in component pointer function (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: Fix build due to CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: remove redundant pointer 'urb' (Jaroslav Kysela) [1683051] - [sound] ALSA: sonicvibes: remove redundant pointer 'dir' (Jaroslav Kysela) [1683051] - [sound] ALSA: ens137x: remove redundant array pcm_devs (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: remove redundant variable attn (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: remove redundant pointer 'dma' (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: remove redundant variable max_streams (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: remove redundant pointers 'priv' and 'rtd' (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8540: remove redundant variable osrate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: add sdm845 sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Add support to parse common audio device nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add CLASS-H Controller support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wcd9335: add support to wcd9335 codec (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Operate UAC3 Power Domains in PCM callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add UAC3 Power Domains to suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: AudioStreaming Power Domain parsing (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Initial Power Domain support (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Use READ_ONCE/WRITE_ONCE() macros (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: virmidi: Offload the output event processing (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: change functions to static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: add support for multichannel output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sirf: Fix potential NULL pointer dereference (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra_alc5632: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh: Kconfig: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4613: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: da7210: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4554: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4642: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm8988: fix typo in rate constraints (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: i2s: Fix typo/broken macro (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi: Use single mutex unlock in error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Turn CX8200 into D3 as well upon reboot (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: cthw20k2: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: ALSA:: ctxfi: cthw20k1: Replace mdelay() with msleep() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: quirks: Replace mdelay() with msleep() and usleep_range() (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp_modem: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: atiixp: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: bt87x: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: echoaudio: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: maestro3: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0m: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: intel8x0: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: lola: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: mixart: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Properly endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Proper endian notations for BDL pointers (Jaroslav Kysela) [1683051] - [sound] ALSA: trident: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: ymfpci: Proper endian notations (Jaroslav Kysela) [1683051] - [sound] ALSA: xen: Use standard pcm_format_to_bits() for ALSA format bits (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: sb: Fix PCM format bit calculation (Jaroslav Kysela) [1683051] - [sound] ALSA: wss: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: asihpi: Fix PCM format notations (Jaroslav Kysela) [1683051] - [sound] ALSA: au88x0: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: ad1816a: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix sparse warning wrt PCM format type (Jaroslav Kysela) [1683051] - [sound] ALSA: riptide: Fix PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Fix implicit PCM format type conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: virmidi: Fix too long output trigger loop (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Use standard pcm_format_to_bits() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm186x: Declare PCM format with snd_pcm_format_t (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl: Use snd_mask_set_format() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix interval evaluation with openmin/max (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add snd_mask_set_format() helper for standard usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: intel: Fix snd_pcm_format_t handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Use int for format bit position (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dmaengine: Fix missing __user prefix in copy_user callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: zte: Fix incorrect PCM format bit usages (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: align axg card driver with DT bindings documentation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: use IRQ_RETVAL in the fifo irq handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix build warning (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add a fix voltage regulator for DA7219 and ADAU7002 (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Fix missing PAGE_SIZE definition (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: declare snd_sgbuf_aligned_pages() unconditionally (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1: Fix missing __force annotation for user/kernel pointer cast (Jaroslav Kysela) [1683051] - [sound] ALSA: korg1212: Add __force annotation to cast in user-copy callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use standard lower_32_bits() and upper_32_bits() (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Declare the common variable in header file (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: Declare common variables properly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Fix a sparse warning about snd_ctl_elem_iface_t (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/ca0132 - Use NULL instead of 0 (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Fix the default sample sizes (Jaroslav Kysela) [1683051] - [sound] ALSA: msnd: Add missing __iomem annotations (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Encore mDSD USB DAC (Jaroslav Kysela) [1683051] - [sound] ALSA: cs5535audio: Fix invalid endian conversion (Jaroslav Kysela) [1683051] - [sound] ALSA: vxpocket: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: vx222: Fix invalid endian conversions (Jaroslav Kysela) [1683051] - [sound] ALSA: seq: Fix poll() error return (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: fix widget handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: fix inversion between __iowrite32 and __ioread32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Atom: simplify iomem address and casts (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: make sst_dma functions static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: BDL definitions should be __le32 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Haswell: fix endianness handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5631: add Volume to the name of volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: imx-sgtl5000: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_utils: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_asrc: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl-asoc-card: Switch to SPDX identifier (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to snd_soc_dai_get_channel_map() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5514: Fix the issue of the delay volume applied (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: axg-spdifout: select SND_PCM_IEC958 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Allow delayed i915 audio component binding (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations (Jaroslav Kysela) [1683051] - [sound] ALSA: memalloc: Don't exceed over the requested size (Jaroslav Kysela) [1683051] - [sound] ALSA: timer: catch invalid timer object creation (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove clock divider and pll setup from zylonite and magician (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg sound card support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: export snd_soc_of_get_slot_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm input driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm output driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm interface driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add tdm formatter base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: improve goto error label (Jaroslav Kysela) [1683051] - [usb] ALSA: powerpc/ps3: Set driver coherent_dma_mask (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the "Connect Tablet 9" tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add quirk table entries for various devices (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add mono speaker quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add IN2 input mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Set OVCD limit for VIOS LTH17 to 2000uA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix using the wrong GPIO for the ext-amp on some boards (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add IN3 Boost volume control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Parse HOST_BUFFER controls (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Allow up to 8 channels for voice control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Take prefix into account in control name length (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Correct algorithm list allocation size (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Ensure DSP boot work complete before preloader_put return (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Allow changing from a bad sample rate (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg spdif output (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg toddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg frddr driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: meson: add axg fifo base driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdac_hdmi: Add documentation for power management (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: remove component framework related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: remove component fw related code (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: add support to card re-bind using component framework (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Add __force to cast in snd_pcm_lib_read/write() (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Nuke snd_pcm_lib_mmap_vmalloc() (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Use kvmalloc() for buffers (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Minor code refactoring (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Simplify error paths (Jaroslav Kysela) [1683051] - [sound] ALSA: rawmidi: Tidy up coding styles (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Make audio component support more generic (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/i915: Associate audio component with devres (Jaroslav Kysela) [1683051] - [sound] ALSA: drm/i915: Split audio component to a generic type (Jaroslav Kysela) [1683051] - [sound] ALSA: emu8000: Use swap macro in snd_emu8000_sample_new (Jaroslav Kysela) [1683051] - [sound] ALSA: emu10k1_patch: Use swap macro in snd_emu10k1_sample_new (Jaroslav Kysela) [1683051] - [gpu] ALSA: vga_switcheroo: set audio client id according to bound GPU id (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: use PCI_BASE_CLASS_DISPLAY to replace PCI_CLASS_DISPLAY_VGA (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Tidy up logic for Processing Unit min/max values (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Unify virtual type units type to UAC3 values (Jaroslav Kysela) [1683051] - [include] ALSA: usb-audio: Add support for Processing Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Processing Unit controls parsing in UAC2 (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-audio: Add support for Selector Units in UAC3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: For capture have interrupts on I2S->ACP channel (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Send correct channel for configuring DMA descriptors (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Boards: Add GLK Realtek Maxim I2S machine driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hdmi-codec: fix routing (Jaroslav Kysela) [1683051] - [sound] ALSA: cs46xx: remove redundant pointer 'ins' (Jaroslav Kysela) [1683051] - [sound] ALSA: ali5451: remove redundant pointer 'codec' (Jaroslav Kysela) [1683051] - [sound] ALSA: sb8: remove redundant pointer runtime (Jaroslav Kysela) [1683051] - [sound] ALSA: gus: remove redundant pointer private_data (Jaroslav Kysela) [1683051] - [sound] ALSA: es1688: remove redundant pointer chip (Jaroslav Kysela) [1683051] - [sound] ALSA: opl3: remove redundant pointer opl3 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: off by one in routing_hw_params() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: fix a range check in of_q6afe_parse_dai_data() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: allow soc-core to pick up name prefixes from component nodes (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: add rate merge to the BE stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: rework runtime stream merge (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Fix snd_interval_refine first/last with open min/max (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Reporting button presses (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Disable jack-detect over suspend/resume (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Add button press support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Allow disabling jack-detect by calling set_jack(NULL) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5651: Fix workqueue cancel vs irq free race on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add support for externar amplifier enable GPIO (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Move getting of codec_dev into probe() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove is_valleyview helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix2 8 tablet (Jaroslav Kysela) [1683051] - [dma] ALSA: dmaengine: add support for reporting pause and resume separately (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: adau171x1: Connect playback DAI to the DSP (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA_SOC_SSP depend on PLAT_PXA (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: replace "p" with "pK" (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Allow drivers to set R/W wait time. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8824: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: add support for an external clock in devicetree (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: cmd: Add missing newline to debug message (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsl_spdif: Use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: Do not overwrite slim dai num_channels (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add slim rx routings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: add support to slim tx dais (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: Add missing slimbus capture ports (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sti: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: davinci: Use snd_pcm_stop_xrun() helper (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: nau8825: use 64-bit arithmetic instead of 32-bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: do not close port if its not opened (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: Use snd_pcm_stop_xrun() for xrun injection (Jaroslav Kysela) [1683051] - [sound] ALSA: pcm: trace XRUN event at injection, too (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: core: Allow topology to override machine driver FE DAI link config. (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: atmel-i2s: Remove unnecessary audio PLL clock (aclk) (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: add support for the es7154 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: correct required power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Simplify trigger handler (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Reset bytescount when starting transaction (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Do not generate interrups for every captured sample (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Fix Capture DMA channel names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always subtract bytescount (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Always stop ch2 first (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: mark expected switch fall-through (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7241: add es7241 codec support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add button detection mode control (Jaroslav Kysela) [1683051] - [sound] ALSA: usb-midi: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: usb: caiaq: audio: use irqsave() in USB's complete callback (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: Add VDD and AVDD power supplies (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: check if mclk rate is valid (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: es7134: remove 64kHz rate from the supported rates (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa-ssp: remove .set_pll() and .set_clkdiv() callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: select SND_PXA2XX_LIB for drivers that depend on it (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-generic-dmaengine-pcm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-compress: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-topology: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dapm: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-core: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-acpi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-devres.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-jack.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dpcm.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-ops.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-dai.h: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-io.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-scu-card.c: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: snd-aoa: add of_node_put() in error path (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mt6797: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: mediatek: sub dai use list_head (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: make SND_PXA2XX_SOC_I2S selectable (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove bindings from pxa2xx-pcm (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: provide PCM ops for ssp, i2s and ac97 components (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa2xx-pcm-lib: fix indenting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: move some functions to pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: clean up function names in pxa2xx-lib (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fold pxa2xx-pcm into its only user, pxa2xx-ac97 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: remove the dmaengine compat need (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/hdmi - Don't fall back to generic when i915 binding fails (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: don't merge format from invalid codec dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: extend channel merging to the backend cpu dai (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: qdafe: fix some off by one bugs (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dpcm: improve runtime update predictability (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: Add AZX_DCAPS_PM_RUNTIME for AMD Raven Ridge (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: add extended ops in the hdac_bus (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: remove memory allocation from snd_hdac_ext_bus_device_init (Jaroslav Kysela) [1683051] - [sound] ALSA: hda: split snd_hda_codec_new function (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: ext: add wait for codec to respond after link reset (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_driver, use hdac_driver instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_bus and use hdac_bus instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hdac: Remove usage of struct hdac_ext_device and use hdac_device instead (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move in_pm accessors to HDA core (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tas517x: add tas5707 support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifer: add simple-amplifier compatible (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-amplifier: rename dio2125 to simple-amplifer (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Sort DMI table entries alphabetically (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_HP_LR_SWAPPED quirk (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Simplify card long-name (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix DMIC map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1 map headsetmic mapping (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Remove IN2 input mappings (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Fix IN1_IN2_MAP quirk not being logged (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Change default input map from in2 to in1 (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5651: Add BYT_RT5651_DEFAULT_QUIRKS define (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Kill snd_hda_codec_update_cache() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC882 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC262 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC268 (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC259 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Comprehensive model list for ALC662 & co (Jaroslav Kysela) [1683051] - [sound] ALSA: Fix references to Documentation/.*/MultiSound (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: remove unused struct q6asm member (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: add proper error check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: remove redundant owner assignment (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6routing: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe-dai: support dt based module loading (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6afe: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6asm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qdsp6: q6adm: use of_platform_populate/depopulate() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-utils: Fix unregistration order (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: cx20442: Don't ignore regulator_get() errors. (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Apply PRE_PROBE fixup after ALC269 codec variant setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Use standard verb containers (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Simplify control management (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/via - Rewrite with error goto (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/cirrus - Simplify creation of new controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Clean up beep code (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common helper for creating ALC268 beep controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use common GPIO mask for ALC660VD ASUS fixup (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify Dell XPS13 GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Convert some manual GPIO setups (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify mute LED GPIO handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc885_fixup_macpro_gpio() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Consolidate gpio_data and gpio_led (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Add GPIO data update helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Manage GPIO bits commonly (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Allow skipping spec->init_amp detection (Jaroslav Kysela) [1683051] - [sound] ALSA: ac97: add codecs devicetree binding (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: soc-pcm: DPCM cares BE channel constraint (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Configure channel 1 or channel 0 for capture (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Change codec to channel link as per hardware redesign (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: uniphier: remove redundant check of PLL ID (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: use devm_snd_soc_register_component() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix missing rename from 'reef' to 'sof' (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Simplify alc269_fixup_hp_line1_mic1_led() (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Sanity check of unexpected cap_sync_hook override (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/sigmatel - Use common helper for mic mute LED (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Allow multiple ADCs for mic mute LED controls (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/conexant - Use the mic-mute LED helper (Jaroslav Kysela) [1683051] - [sound] ALSA: hda/realtek - Use the mic-mute LED helper for HP and others (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Use the common helper for thinkpad_acpi mic mute LED handling (Jaroslav Kysela) [1683051] - [sound] ALSA: hda - Move mic mute LED helper to the generic parser (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: rename 'reef' to 'sof' in ACPI matching table (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: arizona: Set compressed IRQ to a wake source (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: wm_adsp: Simplify handling of alg offset and length (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add support for Motu Traveler (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: cancel chunk alignment for protocol version 2 (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for AES/EBU on XLR interface (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: add a flag for chunks for main 1/2 out (Jaroslav Kysela) [1683051] - [sound] ALSA: firewire-motu: suppless consumption for unused element of array in stack (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pcm: Tidy up open/hw_params handling (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: fix copy/paste issue with SOF/broadwell topology file (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add entries for SOF-based machine drivers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: add firmware/topology information for SOF (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: common: Add Geminilake Dialog+Maxim machine driver entry (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: move SKL+ codec ACPI tables to common directory (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: Skylake: cleanup before moving ACPI tables (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: broxton: reduce machine name for bxt_da7219_max98357a (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: kbl_da7219_max98357a: add fe_ops for kbl Audio Capture Port (Jaroslav Kysela) [1683051] - [sound] ALSA: ARM: pxa: change SSP DMA channels allocation (Jaroslav Kysela) [1683051] - [sound] ALSA: line6: stop using get_seconds() (Jaroslav Kysela) [1683051] - [sound] ALSA: ctxfi: use enum type CT_SUM_CTL where appropriate (Jaroslav Kysela) [1683051] - [sound] ALSA: ice1724: remove unused array (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect threshold (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Nuvison/TMax TM800W560 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: tegra: fix device_node refcounting (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: pxa: add devicetree support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: codecs: PCM1789: unconditionally flush work (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt5682: add rt5682 codec driver (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add headphone auto switching (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Remove Playback/Capture in names (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: TSCS42xx: Add mic bias boost control (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak4458: make structure soc_codec_dev_ak4458 static const (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ak5558: make two structures static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: twl6040: make pointer dmic_codec_dev static (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: qcom: apq8096: set card as device drvdata (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: add rsnd_daidrv_get() (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: audio-graph-card: add hp and mic detect gpios same as simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card: move hp and mic detection to soc_card probe (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: simple-card-utils: move hp and mic detect gpios from simple-card (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Vi10 tablet (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rt1305: Use ULL suffixes for 64-bit constants (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: add config for rockchip dmaengine pcm register (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rockchip: put device_node on remove (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: stm32: sai: add iec958 controls support (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: AMD: Add NULL pointer check (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: SSI parent cares SWSP bit (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: has .symmetric_rates if SSIs are sharing WS pin (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: sh7760-ac97: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dma-sh7760: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: migor: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: rsnd: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: siu: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: ssi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: hac: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: fsi: convert to SPDX identifiers (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Add callback for DAPM route load/unload (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: topology: Give more data to clients via callbacks (Jaroslav Kysela) [1683051] - [sound] ALSA: ASoC: dapm: Fix potential DAI widget pointer deref when linking DAIs (Jaroslav Kysela) [1683051] - [fs] gfs2: Fix loop in gfs2_rbm_find (v2) (Andreas Grunbacher) [1690483] - [fs] gfs2: Rename bitmap.bi_{len => bytes} (Andreas Grunbacher) [1690483]- [vfio] vfio/pci: Mask buggy SR-IOV VF INTx support (Myron Stowe) [1678076] - [netdrv] net/ibmvnic: Update carrier state after link state change (Steve Best) [1711282] - [netdrv] net/ibmvnic: Update MAC address settings after adapter reset (Steve Best) [1711282] - [scsi] scsi: storvsc: Reduce default ring buffer size to 128 Kbytes (Cathy Avery) [1691370] - [scsi] scsi: storvsc: Fix calculation of sub-channel count (Cathy Avery) [1691370] - [powercap] powercap: RAPL: Get rid of custom RAPL_CPU() macro (Alexander Beregalov) [1706827] - [tools] tools/power turbostat: Increase default buffer size (Prarit Bhargava) [1711260] - [char] virtio_console: initialize vtermno value for ports (Pankaj Gupta) [1460636] - [rpmspec] redhat: exclude kvm_stat from pathfix.py's tenure (Vitaly Kuznetsov) [1692804] - [virt] kvm: arm: Skip stage2 huge mappings for unaligned ipa backed by THP (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Ensure vcpu target is unset on reset failure (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-v3: Retire pending interrupts on disabling LPIs (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Fix CNTP_TVAL calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move RSB stuffing to before the first RET after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix size checks in vmx_set_nested_state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Check for in-kernel LAPIC before deferencing apic pointer (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix KVM_CLEAR_DIRTY_LOG for memory slots of unaligned size (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: reset MMU context when 32-bit guest switches PAE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Whitelist port 0x7e for pre-incrementing rip (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Convert guest TSC to host time domain if necessary (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Allow user to disable adaptive tuning of timer advancement (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Track lapic timer advance per vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: lapic: Disable timer advancement if adaptive tuning goes haywire (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyper-v: deal with buggy TLB flush requests from WS2012 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Consider LAPIC TSC-Deadline timer expired if deadline too short (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: avoid misreporting level-triggered irqs as edge-triggered in tracing (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix spectrev1 gadgets (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix warning Using plain integer as NULL pointer (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add a selftest for SMM (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: fix for compilers that do not support -no-pie (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm/evmcs_test: complete I/O before migrating guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Always use 32-bit SMRAM save state for 32-bit kernels (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Don't clear EFER during SMM transitions for 32-bit vCPU (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: clear SMM flags before loading state while leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Open code kvm_set_hflags (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Load SMRAM in a single shot when leaving SMM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Expose RDPMC-exiting only when guest supports PMU (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm: move kvm_load/put_guest_xcr0 into atomic context (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: svm: make sure NMI is injected after nmi_singlestep (Vitaly Kuznetsov) [1692804] - [kvm] svm/avic: Fix invalidate logical APIC id entry (Vitaly Kuznetsov) [1692804] - [kvm] Revert "svm: Fix AVIC incomplete IPI emulation" (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Fix overflow on kvm mmu page limit calculation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: always use early vmcs check when EPT is disabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: allow tests to use bad virtual-APIC page address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Fix an inverted list_empty() check when zapping sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: fix x2APIC VTPR read intercept (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: prevent DBG_DECRYPT and DBG_ENCRYPT overflow (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: fix potential get_num_contig_pages overflow (Vitaly Kuznetsov) [1692804] - [documentation] Documentation: kvm: clarify KVM_SET_USER_MEMORY_REGION (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: complete IO before migrating guest state (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: disable stack protector for all KVM tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: explicitly disable PIE for tests (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: assert on exit reason in CR4/cpuid sync test (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: update rip after emulating IO (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid spurious pending stimer on vCPU init (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: Move MSR_IA32_ARCH_CAPABILITIES to array emulated_msrs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts (Vitaly Kuznetsov) [1692804] - [virt] kvm: don't redefine flags as something else (Vitaly Kuznetsov) [1692804] - [kvm] kvm: mmu: Used range based flushing in slot_handle_level_range (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Fix definition of HV_MAX_FLUSH_REP_COUNT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: remove check on nr_mmu_pages in kvm_arch_commit_memory_region() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: Add a vmentry check for HOST_SYSENTER_ESP and HOST_SYSENTER_EIP fields (Vitaly Kuznetsov) [1692804] - [kvm] KVM: SVM: Workaround errata#1096 (insn_len maybe zero on SMAP violation) (Vitaly Kuznetsov) [1692804] - [virt] KVM: Reject device ioctls from processes other than the VM's creator (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Fix incorrect word ordering regarding supported use of APIs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix handling of role.cr4_pae and rename it to 'gpte_size' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not inherit quadrant and invalid for the root shadow EPT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Comments cleanup in mmu.c (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Make attribute accessors static (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix handling of stage2 huge mappings (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Enforce PTE mappings at stage2 when needed (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when parsing the memslots (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic-its: Take the srcu lock when writing to guest memory (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Always set ICH_HCR_EL2.EN if GICv4 is enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reset the PMU in preemptible context (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix formatting of a comment (Vitaly Kuznetsov) [1692804] - [documentation] KVM: doc: Document the life cycle of a VM and its resources (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range()" (Vitaly Kuznetsov) [1692804] - [documentation] virtio-ccw: diag 500 may return a negative cookie (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Add count cache flush parameters to kvmppc_get_cpu_char() (Vitaly Kuznetsov) [1692804] - [virt] kvm: properly check debugfs dentry before using it (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Fix compilation when KVM is not enabled (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc: Avoid circular header inclusion in mmu-hash.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: MMU: record maximum physical address width in kvm_mmu_extended_role (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Return LA57 feature based on hardware capability (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: fix switch between root and guest MMUs (Vitaly Kuznetsov) [1692804] - [virt] KVM: Minor cleanups for kvm_main.c (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Fix architecturally invalid reset value for FPEXC32_EL2 (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/kvm: Save and restore host AMR/IAMR/UAMOR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Improve KVM reference counting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Fix build failure without IOMMU support (Vitaly Kuznetsov) [1692804] - [powerpc] powerpc/64s: Better printing of machine check info for guest MCEs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Simplify machine check handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Context switch AMR on Power9 (Vitaly Kuznetsov) [1692804] - [virt] Revert "KVM: Eliminate extra function calls in kvm_get_dirty_log_protect()" (Vitaly Kuznetsov) [1692804] - [x86] x86: kvmguest: use TSC clocksource if invariant TSC is exposed (Vitaly Kuznetsov) [1692804] - [virt] KVM: Never start grow vCPU halt_poll_ns from value below halt_poll_ns_grow_start (Vitaly Kuznetsov) [1692804] - [virt] KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter (Vitaly Kuznetsov) [1692804] - [virt] KVM: grow_halt_poll_ns() should never shrink vCPU halt_poll_ns (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Consolidate kvm_mmu_zap_all() and kvm_mmu_zap_mmio_sptes() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: WARN if zapping a MMIO spte results in zapping children (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Differentiate between nr zapped and list unstable (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: skip over invalid root pages when zapping all sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: x86: use the fast way to invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: show mmu_valid_gen in shadow page related tracepoints" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: add tracepoint for kvm_mmu_invalidate_all_pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: zap pages in batch" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: collapse TLB flushes when zap all pages" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: reclaim the zapped-obsolete page first" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Remove is_obsolete() call (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Voluntarily reschedule as needed when zapping MMIO sptes (Vitaly Kuznetsov) [1692804] - [kvm] Revert "KVM: MMU: drop kvm_mmu_zap_mmio_sptes" (Vitaly Kuznetsov) [1692804] - [x86] Revert "KVM: MMU: document fast invalidate all pages" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Zap only the relevant pages when removing a memslot (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Split remote_flush+zap case out of kvm_mmu_flush_or_zap() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Move slot_level_*() helper functions up a few lines (Vitaly Kuznetsov) [1692804] - [virt] KVM: Move the memslot update in-progress flag to bit 63 (Vitaly Kuznetsov) [1692804] - [virt] KVM: Remove the hack to trigger memslot generation wraparound (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Refactor the MMIO SPTE generation handling (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Use a u64 when passing the MMIO gen around (Vitaly Kuznetsov) [1692804] - [virt] KVM: Explicitly define the "memslot update in-progress" bit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Do not cache MMIO accesses while memslots are in flux (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86/mmu: Detect MMIO generation wrap in any address space (Vitaly Kuznetsov) [1692804] - [virt] KVM: Call kvm_arch_memslots_updated() before updating memslots (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [virt] kvm: Add memcg accounting to KVM allocations (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not start the preemption timer hrtimer unnecessarily (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix typos in vmentry/vmexit control setting (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cleanup freeing of nested state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Sync the pending Posted-Interrupts (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIR64B CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: expose MOVDIRI CPU feature into VM. (Vitaly Kuznetsov) [1692804] - [kvm] kvm, x86, mmu: Use kernel generic dynamic physical address mask (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: remove useless is_protmode check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Ignore limit checks on VMX instructions using flat segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Apply addr size mask to effective address for VMX instructions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Sign extend displacements of VMX instr's mem operands (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix improper check when deactivate AVIC (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: cull apicv code when userspace irqchip is requested (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC DFR and LDR handling (Vitaly Kuznetsov) [1692804] - [virt] kvm: Use struct_size() in kmalloc() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: set offset for kvm unstable clock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Reorder clearing of registers in the vCPU-run assembly flow (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Call vCPU-run asm sub-routine from C and remove clobbering (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Preserve callee-save registers in vCPU-run asm sub-routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Return VM-Fail from vCPU-run assembly via standard ABI reg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass @launched to the vCPU-run asm via standard ABI regs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use RAX as the scratch register during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Rename ____vmx_vcpu_run() to __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Fold __vmx_vcpu_run() back into vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vCPU-run code to a proper assembly routine (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Create a stack frame in vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use #defines in place of immediates in VM-Enter inline asm (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: Explicitly #define the VCPU_REGS_* indices (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove unused gpa_end variable (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Fix comment for KVM_PHYS_SHIFT (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: fix spelling mistake: "auxilary" -> "auxiliary" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Prefix header search paths with $(srctree)/ (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Fix TRACE_INCLUDE_PATH (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Mark physical interrupt active when a virtual interrupt is pending (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Describe data or unified caches as having 1 set and 1 way (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Expose sanitised cache type register to guest (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Move kvm_is_write_fault to header file (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Assign the phys timer on VHE systems (Vitaly Kuznetsov) [1692804] - [include] clocksource/arm_arch_timer: Store physical timer IRQ number for KVM on VHE (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: timer: Rework data structures for multiple timers (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: consolidate arch timer trap handlers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Reuse sys_reg() macro when searching the trap table (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Fix ICH_ELRSR_EL2 sysreg naming (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Simplify bg_timer programming (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Factor out VMID into struct kvm_vmid (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Statically configure the host's view of MPIDR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Drop VHE-specific HYP call stub (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Allow for direct call of HYP functions when using VHE (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Introduce kvm_call_hyp_ret() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Release all hardware TCE tables attached to a group (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Optimise mmio emulation for devices on FAST_MMIO_BUS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Allow XICS emulation to work in nested hosts using XIVE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Replace kmalloc_node+memset with kzalloc_node (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Add emulation for slbfee. instruction (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Fix entry number check for add_atomic_switch_msr() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Recompute PID.ON when clearing PID.SN (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Restore a preemption timer consistency check (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is available (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use vcpu->arch.regs directly when saving/loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Don't save guest registers after VM-Fail (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Invert the ordering of saving guest/host scratch reg at VM-Enter (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass "launched" directly to the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Update VMCS.HOST_RSP via helper C function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Load/save guest CR2 via C code in __vmx_vcpu_run() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Cache host_rsp on a per-VMCS basis (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Let the compiler select the reg for holding HOST_RSP (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Reference vmx->loaded_vmcs->launched directly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail via CC_{SET, OUT} in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Capture VM-Fail to a local var in nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Explicitly reference the scratch reg in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Drop STACK_FRAME_NON_STANDARD from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove a rogue "rax" clobber from nested_vmx_check_vmentry_hw() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Let the compiler save/load RDX during vCPU-run (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Manually load RDX in vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Save RSI to an unused output in the vCPU-run asm blob (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Modify only RSP when creating a placeholder for guest's RCX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Zero out *all* general purpose registers after VM-Exit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Check a single byte for VMCS "launched" in nested early checks (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Compare only a single byte for VMCS' "launched" in vCPU-run (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: add selftest for releasing VM file descriptor while in L2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm/arm64: Add kvm_ras.h to collect kvm specific RAS plumbing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: work around leak of uninitialized stack contents (CVE-2019-7222) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Forbid kprobing of the VHE world-switch code (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Relax the restriction on using stage2 PUD huge mapping (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Always initialize the group of private IRQs (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Don't panic on failure to properly reset system registers (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Allow a VCPU to fully reset itself (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Reset the VCPU without preemption and vcpu state loaded (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: fix possible null pointer dereference in pending_irqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: start using the GIB (Vitaly Kuznetsov) [1692804] - [s390] KVM: s390: add gib_alert_irq_handler() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: kvm_s390_gisa_clear() now clears the IPM only (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add functions to (un)register GISC with GISA (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add kvm reference to struct sie_page2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: add the GIB and its related life-cyle functions (Vitaly Kuznetsov) [1692804] - [s390] s390/cio: add function chsc_sgib() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: introduce struct kvm_s390_gisa_interrupt (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: remove kvm_s390_ from gisa static inline functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: use pending_irqs_no_gisa() where appropriate (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: coding style kvm_s390_gisa_init/clear() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: s390: move bitmap idle_mask into arch struct top level (Vitaly Kuznetsov) [1692804] - [virt] virt/kvm: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Mark expected switch fall-throughs (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix TRACE_INCLUDE_PATH and remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: check returned evmcs version range (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: nested_enable_evmcs() sets vmcs_version incorrectly (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move vmx_vcpu_run()'s VM-Enter asm blob to a helper function (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: Fix region overlap check in kvm_util (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: fix some -Wmissing-prototypes warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: clear events pending from svm_complete_interrupts() when exiting to L1 (Vitaly Kuznetsov) [1692804] - [kvm] svm: Fix AVIC incomplete IPI emulation (Vitaly Kuznetsov) [1692804] - [kvm] svm: Add warning message for AVIC IPI invalid target (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: WARN_ONCE if sending a PV IPI returns a fatal error (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix PV IPIs for 32-bit KVM host (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: recommend using eVMCS only when it is enabled (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't recommend doing reset via synthetic MSR (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86/vmx: Use kzalloc for cached_vmcs12 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Use the correct field var when clearing VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix single-step debugging (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: don't announce GUEST IDLE MSR support (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Don't generate UNDEF when LORegion feature is present (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_cpu->ap_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Make vgic_irq->irq_lock a raw_spinlock (Vitaly Kuznetsov) [1692804] - [kvm] KVM: powerpc: remove -I. header search paths (Vitaly Kuznetsov) [1692804] - [documentation] Documentation/virtual/kvm: Update URL for AMD SEV API specification (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Avoid return error when flush tlb successfully in the hv_remote_flush_tlb_with_range() (Vitaly Kuznetsov) [1692804] - [kvm] kvm: sev: Fail KVM_SEV_INIT if already initialized (Vitaly Kuznetsov) [1692804] - [virt] KVM: validate userspace input in kvm_clear_dirty_log_protect() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Fix bit shifting in update_intel_pt_cfg (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: radix: Fix uninitialized var build error (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: fix exit mmio address guessing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VM-Enter + VM-Exit handling to non-inline sub-routines (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Explicitly reference RCX as the vmx_vcpu pointer in asm blobs (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use SVM assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in the kvm_zap_gfn_range() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Flush tlb directly in kvm_set_pte_rmapp() (Vitaly Kuznetsov) [1692804] - [virt] KVM/MMU: Move tlb flush in kvm_set_pte_rmapp() to kvm_mmu_notifier_change_pte() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Make kvm_set_spte_hva() return int (Vitaly Kuznetsov) [1692804] - [kvm] KVM: Replace old tlb flush function with new one to flush a specified range. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/MMU: Add tlb flush with range helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Add hv tlb range flush support (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Add HvFlushGuestAddressList hypercall support (Vitaly Kuznetsov) [1692804] - [x86] KVM: Add tlb_remote_flush_with_range callback in kvm_x86_ops (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Disable Intel PT when VMXON in L1 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Set intercept for Intel PT MSRs read/write (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Implement Intel PT MSRs read/write emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Introduce a function to initialize the PT configuration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT context switch for each vcpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel Processor Trace cpuid emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add Intel PT virtualization work mode (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: add new capability for Intel PT (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Add new bit definitions for PT MSRs (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Introduce intel_pt_validate_cap() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Export pt_cap_get() (Vitaly Kuznetsov) [1692804] - [x86] perf/x86/intel/pt: Move Intel PT MSRs bit defines to global header (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: aarch64: dirty_log_test: support greater than 40-bit IPAs (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add pa-48/va-48 VM modes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: improve mode param management (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: reset guest test phys offset (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: always use -t (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: don't identity map the test mem (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: x86_64: dirty_log_test: fix -t (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix some typos (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: convert to SPDX identifiers (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Remove KF() macro placeholder (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Allow guest read access to IA32_TSC (Vitaly Kuznetsov) [1692804] - [kvm] kvm: nVMX: NMI-window and interrupt-window exiting should wake L2 from HLT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nSVM: Fix nested guest support for PAUSE filtering. (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Remove duplicated include from vmx.c (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: report failed stage when exit reason is unexpected (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix size of x86_fpu_cache objects (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Flush branch predictor when entering KVM (Vitaly Kuznetsov) [1692804] - [kvm] powerpc/fsl: Emulate SPRN_BUCSR register (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nSVM: fix switch to guest mmu (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add trapped system register access tracepoint (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm64: Make vcpu const in vcpu_read_sys_reg (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: arch_timer: Simplify kvm_timer_vcpu_terminate (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Remove arch timer workqueue (Vitaly Kuznetsov) [1692804] - [virt] KVM: fix unregistering coalesced mmio zone from wrong bus (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Add support for creating PUD hugepages at stage 2 (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Update age handlers to support PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support handling access faults for PUD hugepages (Vitaly Kuznetsov) [1692804] - [arm64] KVM: arm64: Support PUD hugepage in stage2_is_exec() (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Support dirty page tracking for PUD hugepages (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Introduce helpers to manipulate page table entries (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Re-factor setting the Stage 2 entry to exec on fault (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: Share common code in user_mem_abort() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: arm/arm64: Log PSTATE for unhandled sysregs (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Consistently advance singlestep when emulating instructions (Vitaly Kuznetsov) [1692804] - [virt] arm64: KVM: Skip MMIO insn after emulation (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L3 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Introduce new hcall H_COPY_TOFROM_GUEST to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Allow passthrough of an emulated device to an L2 guest (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Update kvmppc_st and kvmppc_ld to use quadrants (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Add load_from_eaddr and store_to_eaddr to the kvmppc_ops struct (Vitaly Kuznetsov) [1692804] - [powerpc] KVM: PPC: Book3S HV: Implement functions to access quadrants 1 & 2 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Add function kvmhv_vcpu_is_radix() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv machines (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: ucall: improve ucall placement in memory, fix unsigned comparison (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Dynamically allocate guest_fpu (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Use task structs fpu field for user (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Guest Non-Register States to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for Host Control Registers and MSRs to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Entry Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Exit Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Remove param indirection from nested_vmx_check_msr_switch() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move the checks for VM-Execution Control Fields to a separate helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Prepend "nested_vmx_" to check_vmentry_{pre, post}reqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Check ept_pointer before flushing ept tlb (Vitaly Kuznetsov) [1692804] - [kvm] KVM nVMX: MSRs should not be stored if VM-entry fails during or after loading guest state (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Don't modify MSR_PLATFORM_INFO on vCPU reset (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: add cpu into VMX preemption timer bug list (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Stop caring about EOI for direct stimers (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: avoid open-coding stimer_mark_pending() in kvm_hv_notify_acked_sint() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: direct mode for synthetic timers (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm/hyper-v: use stimer config definition from hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: Add hyperv_cpuid test (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: implement an unchecked version of vcpu_ioctl() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce KVM_GET_SUPPORTED_HV_CPUID (Vitaly Kuznetsov) [1692804] - [kvm] x86/hyper-v: Do some housekeeping in hyperv-tlfs.h (Vitaly Kuznetsov) [1692804] - [x86] x86/hyper-v: Mark TLFS structures packed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyper-v: Introduce nested_get_evmcs_version() helper (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: don't retry message delivery for periodic timers (Vitaly Kuznetsov) [1692804] - [kvm] x86: kvm: hyperv: simplify SynIC message delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: remove unnecessary recalculate_apic_map (Vitaly Kuznetsov) [1692804] - [kvm] kvm: svm: remove unused struct definition (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Skip all SYSCALL MSRs in setup_msrs() when !EFER.SCE (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Don't set hardware IA32_CSTAR MSR on VM-entry (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Document the need for MSR_STAR in i386 builds (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Set IA32_TSC_AUX for legacy mode guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move nested code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose nested_vmx_allowed() to nested VMX as a non-inline (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various getters and setters to nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose misc variables needed for nested VMX (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move "vmcs12 to shadow/evmcs sync" to helper function (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Call nested_vmx_setup_ctls_msrs() iff @nested is true (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Set callbacks for nested functions during hardware setup (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move the hardware {un}setup functions to the bottom (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: nVMX: Allow nested_enable_evmcs to be NULL (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move nested hardware/vcpu {un}setup to helper functions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX instruction wrappers to a dedicated header file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move eVMCS code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Add vmx.h to hold VMX definitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Move vmcs12 code to dedicated files (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMCS definitions to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Expose various module param vars via capabilities.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move capabilities structs and helpers to dedicated file (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Pass vmx_capability struct to setup_vmcs_config() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Properly handle dynamic VM Entry/Exit controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move caching of MSR_IA32_XSS to hardware_setup() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Drop the "vmx" prefix from vmx_evmcs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: rename vmx_shadow_fields.h to vmcs_shadow_fields.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Move VMX specific files to a "vmx" subdirectory (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to hyperv.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Add requisite includes to kvm_cache_regs.h (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: Alphabetize the includes in vmx.c (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Allocate and configure VM{READ, WRITE} bitmaps iff enable_shadow_vmcs (Vitaly Kuznetsov) [1692804] - [tools] kvm: introduce manual dirty log reprotect (Vitaly Kuznetsov) [1692804] - [virt] kvm: rename last argument to kvm_get_dirty_log_protect (Vitaly Kuznetsov) [1692804] - [virt] kvm: make KVM_CAP_ENABLE_CAP_VM architecture agnostic (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Set hflag to indicate that POWER9 supports 1T segments (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Change to use DEFINE_SHOW_ATTRIBUTE macro (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Don't trap host pointer auth use to EL2 (Vitaly Kuznetsov) [1692804] - [kvm] arm64/kvm: hide ptrauth from guests (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add pointer authentication register bits (Vitaly Kuznetsov) [1692804] - [arm64] arm64: add comments about EC exception levels (Vitaly Kuznetsov) [1692804] - [arm64] arm64/kvm: consistently handle host HCR_EL2 flags (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add configuration/documentation for Cortex-A76 erratum 1165522 (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle ARM erratum 1165522 in TLB invalidation (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Add synchronization on translation regime change for erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Force VHE for systems affected by erratum 1165522 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Add TCR_EPD{0,1} definitions (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Rework detection of SVE, !VHE systems (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Check VMX-preemption timer controls on vmentry of L2 guests (Vitaly Kuznetsov) [1692804] - [kvm] KVM/nVMX: Remove unneeded forward jump in nested_vmx_check_vmentry_hw asm (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Unrestricted guest mode requires EPT (Vitaly Kuznetsov) [1692804] - [tools] tools/kvm_stat: switch to python3 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: Trace changes to active TSC offset regardless if vCPU in guest-mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: vmcs12 revision_id is always VMCS12_REVISION even when copied from eVMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Verify eVMCS revision id match supported eVMCS version on eVMCS VMPTRLD (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/vmx: fix old-style function declaration (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: fix empty-body warnings (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Fix kernel info-leak when enabling KVM_CAP_HYPERV_ENLIGHTENED_VMCS more than once (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm/arm64: vgic: Replace spin_is_locked() with lockdep (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Move and undef TRACE_INCLUDE_PATH/FILE (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Use exported tb_to_ns() function in decrementer emulation (Vitaly Kuznetsov) [1692804] - [tools] selftests: kvm: Fix -Wformat warnings (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: fix spelling mistake "Insufficent" -> "Insufficient" (Vitaly Kuznetsov) [1692804] - [kvm] Revert "kvm: x86: optimize dr6 restore" (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Optimize clearing TCEs for sparse tables (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: tweak shadow fields (Vitaly Kuznetsov) [1692804] - [tools] selftests/kvm: add missing executables to .gitignore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Don't use streamlined entry path on early POWER9 chips (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Enable 32 bits kvm vcpu events support (Vitaly Kuznetsov) [1692804] - [virt] arm/arm64: KVM: Rename function kvm_arch_dev_ioctl_check_extension() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: enable nested virtualization by default (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear registers in svm.c (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Introduce KVM_CAP_EXCEPTION_PAYLOAD (Vitaly Kuznetsov) [1692804] - [kvm] kvm: vmx: Defer setting of DR6 until #DB delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Defer setting of CR2 until #PF delivery (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add payload operands to kvm_multiple_exception (Vitaly Kuznetsov) [1692804] - [x86] kvm: x86: Add exception payload fields to kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: Add has_payload and payload to kvm_queued_exception (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: Fix omission in struct kvm_vcpu_events (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: add Enlightened VMCS test (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: nested state migration for Enlightened VMCS (Vitaly Kuznetsov) [1692804] - [tools] KVM: selftests: state_test: test bare VMXON migration (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/hyperv: don't clear VP assist pages on init (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: optimize prepare_vmcs02{, _full} for Enlightened VMCS case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: implement enlightened VMPTRLD and VMCLEAR (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add enlightened VMCS state (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add KVM_CAP_HYPERV_ENLIGHTENED_VMCS capability (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: refactor evmcs_sanitize_exec_ctrls() (Vitaly Kuznetsov) [1692804] - [virt] KVM: refine the comment of function gfn_to_hva_memslot_prot() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: reintroduce pte_list_remove, but including mmu_spte_clear_track_bits (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: rename pte_list_remove to __pte_list_remove (Vitaly Kuznetsov) [1692804] - [virt] kvm/x86 : add coalesced pio support (Vitaly Kuznetsov) [1692804] - [documentation] kvm/x86 : add document for coalesced mmio (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86 : fix some typo (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Change hv flush logic when ept tables are mismatched. (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Use 32bit xor to clear register (Vitaly Kuznetsov) [1692804] - [x86] KVM/x86: Use assembly instruction mnemonics instead of .byte streams (Vitaly Kuznetsov) [1692804] - [kvm] KVM/x86: Fix invvpid and invept register operand size in 64-bit mode (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if MMU reconfiguration is needed in init_kvm_nested_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: check if tdp/shadow MMU reconfiguration is needed (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/nVMX: introduce source data cache for kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make space for source data caching in struct kvm_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: get rid of redundant kvm_mmu_setup() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: introduce guest_mmu (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: add kvm_mmu parameter to kvm_mmu_free_roots() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu.c: set get_pdptr hook in kvm_init_shadow_ept_mmu() (Vitaly Kuznetsov) [1692804] - [kvm] x86/kvm/mmu: make vcpu->mmu a pointer to the current MMU (Vitaly Kuznetsov) [1692804] - [kvm] kvm: x86: optimize dr6 restore (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize sparse VP set processing (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: fix 'tlb_lush' typo (Vitaly Kuznetsov) [1692804] - [virt] vgic: Add support for 52bit guest physical address (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: WARN if nested run hits VMFail with early consistency checks enabled (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: add option to perform early consistency checks via H/W (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: write HOST_IA32_EFER in vmx_set_constant_host_state() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: call kvm_skip_emulated_instruction in nested_vmx_{fail, succeed} (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not call nested_vmx_succeed() for consistency check VMExit (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do not skip VMEnter instruction that succeeds (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: do early preparation of vmcs02 before check_vmentry_postreqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: initialize vmcs02 constant exactly once (per VMCS) (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: split pieces of prepare_vmcs02() to prepare_vmcs02_early() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: VMX: remove ASSERT() on vmx->pml_pg validity (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vVMX: rename label for post-enter_guest_mode consistency check (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: assimilate nested_vmx_entry_failure() into nested_vmx_enter_non_root_mode() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: rename enter_vmx_non_root_mode to nested_vmx_enter_non_root_mode (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: try to set EFER bits correctly when initializing controls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: do not unconditionally clear EFER switching (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: reset cache/shadows when switching loaded VMCS (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: use vm_exit_controls_init() to write exit controls for vmcs02 (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move vmcs12 EPTP consistency check to check_vmentry_prereqs() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: move host EFER consistency checks to VMFail path (Vitaly Kuznetsov) [1692804] - [virt] KVM: leverage change to adjust slots->used_slots in update_memslots() (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: implement PV IPI send hypercalls (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: optimize kvm_hv_flush_tlb() for vp_index == vcpu_idx case (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: valid_bank_mask should be 'u64' (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: hyperv: keep track of mismatched VP indexes (Vitaly Kuznetsov) [1692804] - [virt] KVM: x86: hyperv: optimize 'all cpus' case in kvm_hv_flush_tlb() (Vitaly Kuznetsov) [1692804] - [kvm] kvm/x86: return meaningful value from KVM_SIGNAL_MSI (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: move definition PT_MAX_HUGEPAGE_LEVEL and KVM_NR_PAGE_SIZES together (Vitaly Kuznetsov) [1692804] - [kvm] KVM/VMX: Remve unused function is_external_interrupt(). (Vitaly Kuznetsov) [1692804] - [kvm] KVM: x86: return 0 in case kvm_mmu_memory_cache has min number of objects (Vitaly Kuznetsov) [1692804] - [kvm] nVMX x86: Make nested_vmx_check_pml_controls() concise (Vitaly Kuznetsov) [1692804] - [x86] KVM: x86: adjust kvm_mmu_page member to save 8 bytes (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: support high GPAs in dirty_log_test (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: stop lying to aarch64 tests about PA-bits (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: dirty_log_test: also test 64K pages on aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: port dirty_log_test to aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce new VM mode for 64K pages (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vcpu support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add virt mem support for aarch64 (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add vm_phy_pages_alloc (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: tidy up kvm_util (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: add cscope make target (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: move arch-specific files to arch-specific locations (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: introduce ucall (Vitaly Kuznetsov) [1692804] - [tools] kvm: selftests: vcpu_setup: set cr4.osfxsr (Vitaly Kuznetsov) [1692804] - [kvm] KVM: LAPIC: Tune lapic_timer_advance_ns automatically (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Do not flush TLB on L1<->L2 transitions if L1 uses VPID and EPT (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush linear and combined mappings on VPID02 related flushes (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Use correct VPID02 when emulating L1 INVVPID (Vitaly Kuznetsov) [1692804] - [kvm] KVM: nVMX: Flush TLB entries tagged by dest EPTP on L1<->L2 transitions (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: rename KVM_GUEST_CR0_MASK tp KVM_VM_CR0_ALWAYS_OFF (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Remove redundand permission bits removal (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Propagate errors to the guest when failed instead of ignoring (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S HV: Provide mode where all vCPUs on a core must be the same VM (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Book3S PR: Exiting split hack mode needs to fixup both PC and LR (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Remove some extra semicolon in kvm_target_cpu (Vitaly Kuznetsov) [1692804] - [kvm] KVM: PPC: Validate all tces before updating tables (Vitaly Kuznetsov) [1692804] - [documentation] arm64: Add silicon-errata.txt entry for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [arm64] arm64: arch_timer: Add workaround for ARM erratum 1188873 (Vitaly Kuznetsov) [1692804] - [virt] signal/arm/kvm: Use send_sig_mceerr (Vitaly Kuznetsov) [1692804] - [arm64] arm64/cpufeatures: Introduce ESR_ELx_SYS64_ISS_RT() (Vitaly Kuznetsov) [1692804] - [kvm] signal/x86: Use send_sig_mceerr as apropriate (Vitaly Kuznetsov) [1692804] - [x86] x86/kvm: Use __bss_decrypted attribute in shared variables (Vitaly Kuznetsov) [1692804] - [x86] x86/mm: Add .bss..decrypted section to hold shared variables (Vitaly Kuznetsov) [1692804] - [kvm] KVM: vmx: Inject #UD for SGX ENCLS instruction in guest (Vitaly Kuznetsov) [1692804] - [x86] KVM: vmx: Add defines for SGX ENCLS exiting (Vitaly Kuznetsov) [1692804] - [documentation] KVM: Documentation: rename the capability of KVM_CAP_ARM_SET_SERROR_ESR (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark kvm_get_preset_lpj() as __init (Vitaly Kuznetsov) [1692804] - [virt] kvm: Don't open code task_pid in kvm_vcpu_ioctl (Vitaly Kuznetsov) [1692804] - [virt] KVM: arm64: Share the parts of get/set events useful to 32bit (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: export the capability to set guest SError syndrome (Vitaly Kuznetsov) [1692804] - [kvm] arm/arm64: KVM: Add KVM_GET/SET_VCPU_EVENTS (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Switch kvmclock data to a PER_CPU variable (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Move kvmclock vsyscall param and init to kvmclock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Mark variables __initdata and __ro_after_init (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Cleanup the code (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Decrapify kvm_register_clock() (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove page size requirement from wall_clock (Vitaly Kuznetsov) [1692804] - [x86] x86/kvmclock: Remove memblock dependency (Vitaly Kuznetsov) [1692804] - [kvm] kvm/arm: use PSR_AA32 definitions (Vitaly Kuznetsov) [1692804] - [kvm] arm64: KVM: Handle Set/Way CMOs as NOPs if FWB is present (Vitaly Kuznetsov) [1692804] - [arm64] arm64: KVM: Add support for Stage-2 control of memory types and cacheability (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Handle mismatched cache type (Vitaly Kuznetsov) [1692804] - [arm64] arm64: Fix mismatched cache line size detection (Vitaly Kuznetsov) [1692804]- [lib] rhel-kabi: Add RH_KABI_FORCE_CHANGE() to radix-tree and idr functions (Don Dutile) [1692079] - [lib] XArray: Fix xa_reserve for 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Fix xa_erase of 2-byte aligned entries (Don Dutile) [1692079] - [lib] XArray: Use xa_cmpxchg to implement xa_reserve (Don Dutile) [1692079] - [lib] XArray: Fix xa_release in allocating arrays (Don Dutile) [1692079] - [lib] XArray: Mark xa_insert and xa_reserve as must_check (Don Dutile) [1692079] - [lib] XArray: Add cyclic allocation (Don Dutile) [1692079] - [lib] XArray: Redesign xa_alloc API (Don Dutile) [1692079] - [lib] XArray: Add support for 1s-based allocation (Don Dutile) [1692079] - [lib] XArray: Change xa_insert to return -EBUSY (Don Dutile) [1692079] - [lib] XArray: Update xa_erase family descriptions (Don Dutile) [1692079] - [lib] XArray tests: RCU lock prohibits GFP_KERNEL (Don Dutile) [1692079] - [include] XArray: Fix an arithmetic error in xa_is_err (Don Dutile) [1692079] - [lib] XArray tests: Check mark 2 gets squashed (Don Dutile) [1692079] - [include] XArray: Fix typo in comment (Don Dutile) [1692079] - [lib] XArray: Honour reserved entries in xa_insert (Don Dutile) [1692079] - [lib] XArray: Permit storing 2-byte-aligned pointers (Don Dutile) [1692079] - [lib] XArray: Change xa_for_each iterator (Don Dutile) [1692079] - [lib] XArray: Turn xa_init_flags into a static inline (Don Dutile) [1692079] - [lib] XArray tests: Add RCU locking (Don Dutile) [1692079] - [lib] XArray: Fix xa_alloc when id exceeds max (Don Dutile) [1692079] - [lib] XArray tests: Check iterating over multiorder entries (Don Dutile) [1692079] - [lib] XArray tests: Handle larger indices more elegantly (Don Dutile) [1692079] - [include] XArray: Add xa_cmpxchg_irq and xa_cmpxchg_bh (Don Dutile) [1692079] - [tools] radix tree: Don't return retry entries from lookup (Don Dutile) [1692079] - [lib] XArray tests: Add missing locking (Don Dutile) [1692079] - [lib] XArray tests: Correct some 64-bit assumptions (Don Dutile) [1692079] - [lib] XArray: Correct xa_store_range (Don Dutile) [1692079] - [lib] XArray: Fix Documentation (Don Dutile) [1692079] - [lib] XArray: Handle NULL pointers differently for allocation (Don Dutile) [1692079] - [lib] XArray: Unify xa_store and __xa_store (Don Dutile) [1692079] - [include] XArray: Add xa_store_bh() and xa_store_irq() (Don Dutile) [1692079] - [lib] XArray: Turn xa_erase into an exported function (Don Dutile) [1692079] - [lib] XArray: Unify xa_cmpxchg and __xa_cmpxchg (Don Dutile) [1692079] - [lib] XArray: Regularise xa_reserve (Don Dutile) [1692079] - [lib] XArray: Export __xa_foo to non-GPL modules (Don Dutile) [1692079] - [lib] XArray: Fix xa_for_each with a single element at 0 (Don Dutile) [1692079] - [lib] xarray: Add range store functionality (Don Dutile) [1692079] - [lib] xarray: Move multiorder_check to in-kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder_shrink to kernel tests (Don Dutile) [1692079] - [lib] xarray: Move multiorder account test in-kernel (Don Dutile) [1692079] - [tools] radix tree test suite: Convert iteration test to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert tag_tagged_items to XArray (Don Dutile) [1692079] - [tools] radix tree test suite: Convert regression1 to XArray (Don Dutile) [1692079] - [lib] ida: Convert to XArray (Don Dutile) [1692079] - [lib] xarray: Track free entries in an XArray (Don Dutile) [1692079] - [lib] xarray: Add xa_reserve and xa_release (Don Dutile) [1692079] - [lib] xarray: Add xas_create_range (Don Dutile) [1692079] - [lib] xarray: Add xas_for_each_conflict (Don Dutile) [1692079] - [lib] xarray: Step through an XArray (Don Dutile) [1692079] - [lib] xarray: Destroy an XArray (Don Dutile) [1692079] - [lib] xarray: Extract entries from an XArray (Don Dutile) [1692079] - [lib] xarray: Add XArray iterators (Don Dutile) [1692079] - [lib] xarray: Add XArray conditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray unconditional store operations (Don Dutile) [1692079] - [tools] xarray: Add XArray marks (Don Dutile) [1692079] - [tools] xarray: Add XArray load operation (Don Dutile) [1692079] - [documentation] xarray: Add documentation (Don Dutile) [1692079] - [include] xarray: Define struct xa_node (Don Dutile) [1692079] - [tools] xarray: Add definition of struct xarray (Don Dutile) [1692079] - [lib] test_ida: Fix lockdep warning (Don Dutile) [1692079] - [lib] xarray: Change definition of sibling entries (Don Dutile) [1692079] - [mm] xarray: Replace exceptional entries (Don Dutile) [1692079] - [lib] idr: Permit any valid kernel pointer to be stored (Don Dutile) [1692079] - [pci] Update email address (Don Dutile) [1692079] - [lib] ida: Change ida_get_new_above to return the id (Don Dutile) [1692079] - [lib] ida: Remove old API (Don Dutile) [1692079] - [target] target/iscsi: Allocate session IDs from an IDA (Don Dutile) [1692079] - [target] iscsi target: fix session creation failure handling (Don Dutile) [1692079] - [drm] drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's (Don Dutile) [1692079] - [drm] drm/vmwgfx: Convert to new IDA API (Don Dutile) [1692079] - [dma] dmaengine: Convert to new IDA API (Don Dutile) [1692079] - [powerpc] ppc: Convert vas ID allocation to new IDA API (Don Dutile) [1692079] - [media] media: Convert entity ID allocation to new IDA API (Don Dutile) [1692079] - [mm] ppc: Convert mmu context allocation to new IDA API (Don Dutile) [1692079] - [net] Convert net_namespace to new IDA API (Don Dutile) [1692079] - [misc] cb710: Convert to new IDA API (Don Dutile) [1692079] - [block] rsxx: Convert to new IDA API (Don Dutile) [1692079] - [scsi] osd: Convert to new IDA API (Don Dutile) [1692079] - [scsi] sd: Convert to new IDA API (Don Dutile) [1692079] - [fs] devpts: Convert to new IDA API (Don Dutile) [1692079] - [fs] fs: Convert namespace IDAs to new API (Don Dutile) [1692079] - [fs] fs: Convert unnamed_dev_ida to new API (Don Dutile) [1692079] - [lib] test_ida: check_ida_destroy and check_ida_alloc (Don Dutile) [1692079] - [lib] test_ida: Convert check_ida_conv to new API (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_max (Don Dutile) [1692079] - [lib] test_ida: Move ida_check_leaf (Don Dutile) [1692079] - [tools] idr-test: Convert ida_check_nomem to new API (Don Dutile) [1692079] - [tools] ida: Start new test_ida module (Don Dutile) [1692079] - [lib] ida: Lock the IDA in ida_destroy (Don Dutile) [1692079] - [lib] radix-tree: Fix UBSAN warning (Don Dutile) [1692079] - [include] rh_kabi: Indirect EXTEND macros so nesting of other macros will resolve. (Don Dutile) [1692079] - [s390] s390/pkey: add one more argument space for debug feature entry (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix possible deadlock situation on ap queue remove (Philipp Rudo) [1710033] - [s390] zcrypt: handle AP Info notification from CHSC SEI command (Philipp Rudo) [1710033] - [s390] s390/zcrypt: revisit ap device remove procedure (Philipp Rudo) [1710033] - [s390] pkey: Indicate old mkvp only if old and current mkvp are different (Philipp Rudo) [1710033] - [s390] s390/zcrypt: use new state UNBOUND during queue driver rebind (Philipp Rudo) [1710033] - [s390] s390/zcrypt: fix specification exception on z196 during ap probe (Philipp Rudo) [1710033] - [s390] s390/zcrypt: rework ap scan bus code (Philipp Rudo) [1710033] - [s390] s390/zcrypt: make sysfs reset attribute trigger queue reset (Philipp Rudo) [1710033] - [s390] s390/zcrypt: improve special ap message cmd handling (Philipp Rudo) [1710033] - [s390] s390: vfio-ap: include for test_facility() (Philipp Rudo) [1710033] - [fs] flexfiles: enforce per-mirror stateid only for v4 DSes (Scott Mayhew) [1709556] - [fs] flexfiles: use per-mirror specified stateid for IO (Scott Mayhew) [1709556] - [powerpc] powerpc/pseries: Fix build break due to pnv_npu2_init() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/sriov: Register IOMMU groups for VFs (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Allocate enough memory in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [powerpc] powerpc/powernv/npu: Fix oops in pnv_try_setup_npu_table_group() (Sam Bobroff) [1704567] - [mm] mm: defer ZONE_DEVICE page initialization to the point where we init pgmap (Waiman Long) [1666538 1634343] - [mm] mm: create non-atomic version of SetPageReserved for init use (Waiman Long) [1666538 1634343] - [mm] mm: provide kernel parameter to allow disabling page init poisoning (Waiman Long) [1666538 1634343] - [x86] x86/resctrl: Initialize a new resource group with default MBA values (David Arcari) [1688127] - [x86] x86/resctrl: Move per RDT domain initialization to a separate function (David Arcari) [1688127] - [x86] x86/resctrl: Do not repeat rdtgroup mode initialization (David Arcari) [1688127] - [x86] x86/resctrl: Fix rdt_find_domain() return value and checks (David Arcari) [1688127] - [x86] x86/resctrl: Use rdt_last_cmd_puts() where possible (David Arcari) [1688127]- [s390] s390/pci: map IOV resources (Philipp Rudo) [1659411] - [powerpc] powerpc/book3s/64: check for NULL pointer in pgd_alloc() (Steve Best) [1710310] - [md] dm thin metadata: do not write metadata if no changes occurred (Mike Snitzer) [1710030] - [md] dm thin metadata: add wrappers for managing write locking of metadata (Mike Snitzer) [1710030] - [md] dm thin metadata: check __commit_transaction()'s return (Mike Snitzer) [1710030] - [md] dm space map common: zero entire ll_disk (Mike Snitzer) [1710030] - [powerpc] powerpc/tm: Fix stack pointer corruption (Desnes Augusto Nunes do Rosario) [1707635] - [pci] PCI/MSI: Remove obsolete sanity checks for multiple interrupt sets (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove the leftovers of the original set support (Prarit Bhargava) [1686678] - [nvme] nvme-pci: Simplify interrupt allocation (Prarit Bhargava) [1686678] - [include] genirq/affinity: Add new callback for (re)calculating interrupt sets (Prarit Bhargava) [1686678] - [nvme] genirq/affinity: Store interrupt sets size in struct irq_affinity (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Code consolidation (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Move allocation of 'node_to_cpumask' to irq_build_affinity_masks() (Prarit Bhargava) [1686678] - [kernel] genirq/irqdesc: Fix double increment in alloc_descs() (Prarit Bhargava) [1686678] - [include] genirq: Fix the kerneldoc comment for struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Add is_managed to struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/core: Introduce struct irq_affinity_desc (Prarit Bhargava) [1686678] - [kernel] genirq/affinity: Remove excess indentation (Prarit Bhargava) [1686678]- [md] dm: make sure to obey max_io_len_target_boundary (Mike Snitzer) [1712607]- [mm] x86/dump_pagetables: Fix LDT remap address marker (Baoquan He) [1639560] - [x86] x86/mm: Fix guard hole handling (Baoquan He) [1639560] - [x86] x86/mm: Move LDT remap out of KASLR region on 5-level paging (Baoquan He) [1639560] - [x86] x86/ldt: Define LDT_END_ADDR (Baoquan He) [1639560] - [mm] x86/ldt: Reserve address-space range on 32 bit for the LDT (Baoquan He) [1639560] - [documentation] x86/mm/doc: Enhance the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [documentation] x86/mm/doc: Clean up the x86-64 virtual memory layout descriptions (Baoquan He) [1639560] - [fs] cifs: fix page reference leak with readv/writev (Leif Sahlberg) [1708033] - [fs] cifs: do not attempt cifs operation on smb2+ rename error (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak in SMB2_read (Leif Sahlberg) [1708033] - [fs] CIFS: keep FileInfo handle live during oplock break (Leif Sahlberg) [1708033] - [fs] cifs: fix handle leak in smb2_query_symlink() (Leif Sahlberg) [1708033] - [fs] cifs: Fix lease buffer length error (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_read (Leif Sahlberg) [1708033] - [fs] cifs: Fix use-after-free in SMB2_write (Leif Sahlberg) [1708033] - [fs] cifs: a smb2_validate_and_copy_iov failure does not mean the handle is invalid. (Leif Sahlberg) [1708033] - [fs] SMB3: Allow persistent handle timeout to be configurable on mount (Leif Sahlberg) [1708033] - [fs] smb3: Fix enumerating snapshots to Azure (Leif Sahlberg) [1708033] - [fs] cifs: fix kref underflow in close_shroot() (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] SMB3: Fix SMB3.1.1 guest mounts to Samba (Leif Sahlberg) [1708033] - [fs] cifs: Fix slab-out-of-bounds when tracing SMB tcon (Leif Sahlberg) [1708033] - [fs] cifs: allow guest mounts to work for smb3.11 (Leif Sahlberg) [1708033] - [fs] fix incorrect error code mapping for OBJECTID_NOT_FOUND (Leif Sahlberg) [1708033] - [fs] cifs: fix that return -EINVAL when do dedupe operation (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending rdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: Fix an issue with re-sending wdata when transport returning -EAGAIN (Leif Sahlberg) [1708033] - [fs] CIFS: fix POSIX lock leak and invalid ptr deref (Leif Sahlberg) [1708033] - [fs] SMB3: Allow SMB3 FSCTL queries to be sent to server from tools (Leif Sahlberg) [1708033] - [fs] cifs: fix incorrect handling of smb2_set_sparse() return in smb3_simple_falloc (Leif Sahlberg) [1708033] - [fs] smb2: fix typo in definition of a few error flags (Leif Sahlberg) [1708033] - [fs] CIFS: make mknod() an smb_version_op (Leif Sahlberg) [1708033] - [documentation] cifs: minor documentation updates (Leif Sahlberg) [1708033] - [documentation] cifs: minor updates to documentation (Leif Sahlberg) [1708033] - [fs] cifs: remove unused value pointed out by Coverity (Leif Sahlberg) [1708033] - [fs] SMB3: passthru query info doesn't check for SMB3 FSCTL passthru (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoints for simple fallocate and zero range (Leif Sahlberg) [1708033] - [fs] cifs: fix smb3_zero_range so it can expand the file-size when required (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_ioctl_init/free helpers to be used with compounding (Leif Sahlberg) [1708033] - [fs] smb3: Add dynamic trace points for various compounded smb3 ops (Leif Sahlberg) [1708033] - [fs] cifs: cache FILE_ALL_INFO for the shared root handle (Leif Sahlberg) [1708033] - [fs] smb3: display volume serial number for shares in /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] cifs: simplify how we handle credits in compound_send_recv() (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic tracepoint for timeout waiting for credits (Leif Sahlberg) [1708033] - [fs] smb3: display security information in /proc/fs/cifs/DebugData more accurately (Leif Sahlberg) [1708033] - [fs] cifs: add a timeout argument to wait_for_free_credits (Leif Sahlberg) [1708033] - [fs] cifs: prevent starvation in wait_for_free_credits for multi-credit requests (Leif Sahlberg) [1708033] - [fs] cifs: wait_for_free_credits() make it possible to wait for >=1 credits (Leif Sahlberg) [1708033] - [fs] cifs: pass flags down into wait_for_free_credits() (Leif Sahlberg) [1708033] - [fs] cifs: change wait_for_free_request() to take flags as argument (Leif Sahlberg) [1708033] - [fs] fs: cifs: Kconfig: pedantic formatting (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on normal (non-large read/write) ops (Leif Sahlberg) [1708033] - [fs] CIFS: Return -EAGAIN instead of -ENOTSOCK (Leif Sahlberg) [1708033] - [fs] CIFS: Only send SMB2_NEGOTIATE command on new TCP connections (Leif Sahlberg) [1708033] - [fs] CIFS: Fix read after write for files with read caching (Leif Sahlberg) [1708033] - [fs] smb3: for kerberos mounts display the credential uid used (Leif Sahlberg) [1708033] - [fs] cifs: use correct format characters (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for query_info_enter/done (Leif Sahlberg) [1708033] - [fs] smb3: add dynamic trace point for smb3_cmd_enter (Leif Sahlberg) [1708033] - [fs] smb3: improve dynamic tracing of open and posix mkdir (Leif Sahlberg) [1708033] - [fs] smb3: add missing read completion trace point (Leif Sahlberg) [1708033] - [fs] smb3: Add tracepoints for read, write and query_dir enter (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoints for query dir (Leif Sahlberg) [1708033] - [fs] smb3: Update POSIX negotiate context with POSIX ctxt GUID (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Try to acquire credits at once for compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Return error code when getting file handle for writeback (Leif Sahlberg) [1708033] - [fs] CIFS: Move open file handling to writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Move unlocking pages from wdata_send_pages() (Leif Sahlberg) [1708033] - [fs] CIFS: Find and reopen a file before get MTU credits in writepages (Leif Sahlberg) [1708033] - [fs] CIFS: Reopen file before get SMB2 MTU credits for async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Remove custom credit adjustments for SMB2 async IO (Leif Sahlberg) [1708033] - [fs] CIFS: Adjust MTU credits before reopening a file (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending compound requests (Leif Sahlberg) [1708033] - [fs] CIFS: Check for reconnects before sending async requests (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in non-MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Respect reconnect in MTU credits calculations (Leif Sahlberg) [1708033] - [fs] CIFS: Set reconnect instance to one initially (Leif Sahlberg) [1708033] - [fs] CIFS: Respect SMB2 hdr preamble size in read responses (Leif Sahlberg) [1708033] - [fs] CIFS: Count SMB3 credits for malformed pending responses (Leif Sahlberg) [1708033] - [fs] CIFS: Do not log credits when unmounting a share (Leif Sahlberg) [1708033] - [fs] CIFS: Always reset read error to -EIO if no response (Leif Sahlberg) [1708033] - [fs] cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED (Leif Sahlberg) [1708033] - [fs] CIFS: Do not skip SMB2 message IDs on send failures (Leif Sahlberg) [1708033] - [fs] smb3: request more credits on tree connect (Leif Sahlberg) [1708033] - [fs] smb3: make default i/o size for smb3 mounts larger (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reset lease state to NONE on lease break (Leif Sahlberg) [1708033] - [fs] smb3: fix bytes_read statistics (Leif Sahlberg) [1708033] - [fs] cifs: return -ENODATA when deleting an xattr that does not exist (Leif Sahlberg) [1708033] - [fs] cifs: add credits from unmatched responses/messages (Leif Sahlberg) [1708033] - [fs] cifs: replace snprintf with scnprintf (Leif Sahlberg) [1708033] - [fs] cifs: Fix NULL pointer dereference of devname (Leif Sahlberg) [1708033] - [fs] CIFS: Fix leaking locked VFS cache pages in writeback retry (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: fix use-after-free of the lease keys (Leif Sahlberg) [1708033] - [fs] CIFS: Do not consider -ENODATA as stat failure for reads (Leif Sahlberg) [1708033] - [fs] CIFS: Do not count -ENODATA as failure for query directory (Leif Sahlberg) [1708033] - [fs] CIFS: Fix trace command logging for SMB2 reads and writes (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible oops and memory leaks in async IO (Leif Sahlberg) [1708033] - [fs] cifs: limit amount of data we request for xattrs to CIFSMaxBufSize (Leif Sahlberg) [1708033] - [fs] cifs: fix computation for MAX_SMB2_HDR_SIZE (Leif Sahlberg) [1708033] - [fs] cifs: print CIFSMaxBufSize as part of /proc/fs/cifs/DebugData (Leif Sahlberg) [1708033] - [fs] smb3: add credits we receive from oplock/break PDUs (Leif Sahlberg) [1708033] - [fs] CIFS: Fix mounts if the client is low on credits (Leif Sahlberg) [1708033] - [fs] CIFS: Do not assume one credit for async responses (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculations in compound mid callback (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit calculation for encrypted reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculations for reads with errors (Leif Sahlberg) [1708033] - [fs] CIFS: Do not reconnect TCP session in add_credits() (Leif Sahlberg) [1708033] - [fs] smb3: Cleanup license mess (Leif Sahlberg) [1708033] - [fs] CIFS: Fix possible hang during async MTU reads and writes (Leif Sahlberg) [1708033] - [fs] cifs: fix memory leak of an allocated cifs_ntsd structure (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error paths in writeback code (Leif Sahlberg) [1708033] - [fs] CIFS: Move credit processing to mid callbacks for SMB3 (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credits calculation for cancelled requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix potential OOB access of lock element array (Leif Sahlberg) [1708033] - [fs] cifs: Limit memory used by lock request calls to a page (Leif Sahlberg) [1708033] - [fs] cifs: move large array from stack to heap (Leif Sahlberg) [1708033] - [fs] CIFS: Do not hide EINTR after sending network packets (Leif Sahlberg) [1708033] - [fs] CIFS: Fix credit computation for compounded requests (Leif Sahlberg) [1708033] - [fs] CIFS: Do not set credits to 1 if the server didn't grant anything (Leif Sahlberg) [1708033] - [fs] CIFS: Fix adjustment of credits for MTU requests (Leif Sahlberg) [1708033] - [fs] cifs: Fix a tiny potential memory leak (Leif Sahlberg) [1708033] - [fs] cifs: Fix a debug message (Leif Sahlberg) [1708033] - [fs] smb3: add smb3.1.1 to default dialect list (Leif Sahlberg) [1708033] - [fs] cifs: fix confusing warning message on reconnect (Leif Sahlberg) [1708033] - [fs] smb3: fix large reads on encrypted connections (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number (Leif Sahlberg) [1708033] - [fs] cifs: we can not use small padding iovs together with encryption (Leif Sahlberg) [1708033] - [fs] cifs: Minor Kconfig clarification (Leif Sahlberg) [1708033] - [fs] cifs: Always resolve hostname before reconnecting (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect_tcon() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in smb2_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Only free DFS target list if we actually got one (Leif Sahlberg) [1708033] - [fs] cifs: start DFS cache refresher in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Use GFP_ATOMIC when a lock is held in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_reconnect() (Leif Sahlberg) [1708033] - [fs] cifs: Add support for failover in cifs_mount() (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'sep' (Leif Sahlberg) [1708033] - [fs] cifs: Make use of DFS cache to get new DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: check kzalloc return (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'server' (Leif Sahlberg) [1708033] - [fs] cifs: Use kzfree() to free password (Leif Sahlberg) [1708033] - [fs] cifs: Fix to use kmem_cache_free() instead of kfree() (Leif Sahlberg) [1708033] - [fs] cifs: update for current_kernel_time64() removal (Leif Sahlberg) [1708033] - [fs] cifs: Add DFS cache routines (Leif Sahlberg) [1708033] - [fs] cifs: Save TTL value when parsing DFS referrals (Leif Sahlberg) [1708033] - [fs] cifs: auto disable 'serverino' in dfs mounts (Leif Sahlberg) [1708033] - [fs] cifs: Make devname param optional in cifs_compose_mount_options() (Leif Sahlberg) [1708033] - [fs] cifs: Skip any trailing backslashes from UNC (Leif Sahlberg) [1708033] - [fs] cifs: Refactor out cifs_mount() (Leif Sahlberg) [1708033] - [fs] CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock problem (Leif Sahlberg) [1708033] - [fs] CIFS: return correct errors when pinning memory failed for direct I/O (Leif Sahlberg) [1708033] - [fs] CIFS: use the correct length when pinning memory for direct I/O for write (Leif Sahlberg) [1708033] - [fs] cifs: check ntwrk_buf_start for NULL before dereferencing it (Leif Sahlberg) [1708033] - [fs] cifs: remove coverity warning in calc_lanman_hash (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'smb_buf' (Leif Sahlberg) [1708033] - [fs] cifs: suppress some implicit-fallthrough warnings (Leif Sahlberg) [1708033] - [fs] cifs: change smb2_query_eas to use the compound query-info helper (Leif Sahlberg) [1708033] - [fs] Add vers=3.0.2 as a valid option for SMBv3.0.2 (Leif Sahlberg) [1708033] - [fs] cifs: create a helper function for compound query_info (Leif Sahlberg) [1708033] - [fs] cifs: address trivial coverity warning (Leif Sahlberg) [1708033] - [fs] cifs: smb2 commands can not be negative, remove confusing check (Leif Sahlberg) [1708033] - [fs] cifs: use a compound for setting an xattr (Leif Sahlberg) [1708033] - [fs] cifs: clean up indentation, replace spaces with tab (Leif Sahlberg) [1708033] - [fs] smb3: Fix rmdir compounding regression to strict servers (Leif Sahlberg) [1708033] - [fs] CIFS: Avoid returning EBUSY to upper layer VFS (Leif Sahlberg) [1708033] - [fs] cifs: Fix separator when building path from dentry (Leif Sahlberg) [1708033] - [fs] cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure cifs) (Leif Sahlberg) [1708033] - [fs] cifs: fix signed/unsigned mismatch on aio_read patch (Leif Sahlberg) [1708033] - [fs] cifs: don't dereference smb_file_target before null check (Leif Sahlberg) [1708033] - [fs] CIFS: Add direct I/O functions to file_operations (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O write (Leif Sahlberg) [1708033] - [fs] CIFS: Add support for direct I/O read (Leif Sahlberg) [1708033] - [fs] smb3: missing defines and structs for reparse point handling (Leif Sahlberg) [1708033] - [fs] smb3: allow more detailed protocol info on open files for debugging (Leif Sahlberg) [1708033] - [fs] smb3: on kerberos mount if server doesn't specify auth type use krb5 (Leif Sahlberg) [1708033] - [fs] smb3: add trace point for tree connection (Leif Sahlberg) [1708033] - [fs] cifs: fix spelling mistake, EACCESS -> EACCES (Leif Sahlberg) [1708033] - [fs] cifs: fix return value for cifs_listxattr (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.14 (Leif Sahlberg) [1708033] - [fs] smb3: add debug for unexpected mid cancellation (Leif Sahlberg) [1708033] - [fs] cifs: allow calling SMB2_xxx_free(NULL) (Leif Sahlberg) [1708033] - [fs] smb3 - clean up debug output displaying network interfaces (Leif Sahlberg) [1708033] - [fs] smb3: show number of current open files in /proc/fs/cifs/Stats (Leif Sahlberg) [1708033] - [fs] cifs: add support for ioctl on directories (Leif Sahlberg) [1708033] - [fs] cifs: fallback to older infolevels on findfirst queryinfo retry (Leif Sahlberg) [1708033] - [fs] smb3: do not attempt cifs operation in smb3 query info error path (Leif Sahlberg) [1708033] - [fs] smb3: send backup intent on compounded query info (Leif Sahlberg) [1708033] - [fs] cifs: track writepages in vfs operation counters (Leif Sahlberg) [1708033] - [fs] smb2: fix uninitialized variable bug in smb2_ioctl_query_info (Leif Sahlberg) [1708033] - [fs] cifs: add IOCTL for QUERY_INFO passthrough to userspace (Leif Sahlberg) [1708033] - [fs] cifs: minor clarification in comments (Leif Sahlberg) [1708033] - [fs] CIFS: Print message when attempting a mount (Leif Sahlberg) [1708033] - [fs] CIFS: Adds information-level logging function (Leif Sahlberg) [1708033] - [fs] cifs: OFD locks do not conflict with eachothers (Leif Sahlberg) [1708033] - [fs] CIFS: SMBD: Do not call ib_dereg_mr on invalidated memory registration (Leif Sahlberg) [1708033] - [fs] CIFS: pass page offsets on SMB1 read/write (Leif Sahlberg) [1708033] - [fs] fs/cifs: fix uninitialised variable warnings (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for sending lease break responses to server (Leif Sahlberg) [1708033] - [fs] cifs: do not return atime less than mtime (Leif Sahlberg) [1708033] - [fs] smb3: update default requested iosize to 4MB from 1MB for recent dialects (Leif Sahlberg) [1708033] - [fs] smb3: Add debug message later in smb2/smb3 reconnect path (Leif Sahlberg) [1708033] - [fs] CIFS: make 'nodfs' mount opt a superblock flag (Leif Sahlberg) [1708033] - [fs] smb3: track the instance of each session for debugging (Leif Sahlberg) [1708033] - [fs] smb3: minor missing defines relating to reparse points (Leif Sahlberg) [1708033] - [fs] smb3: add way to control slow response threshold for logging and stats (Leif Sahlberg) [1708033] - [fs] cifs: minor updates to module description for cifs.ko (Leif Sahlberg) [1708033] - [fs] cifs: protect against server returning invalid file system block size (Leif Sahlberg) [1708033] - [fs] smb3: allow stats which track session and share reconnects to be reset (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing from compounded ops (Leif Sahlberg) [1708033] - [fs] cifs: create a define for the max number of iov we need for a SMB2 set_info (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_RENAME and SMB2_OP_HARDLINK to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: remove the is_falloc argument to SMB2_set_eof (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_INFO to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: change SMB2_OP_SET_EOF to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: make rmdir() use compounding (Leif Sahlberg) [1708033] - [fs] cifs: create helpers for SMB2_set_info_init/free() (Leif Sahlberg) [1708033] - [fs] cifs: change unlink to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: change mkdir to use a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a smb2_compound_op and change QUERY_INFO to use it (Leif Sahlberg) [1708033] - [fs] cifs: fix a credits leak for compund commands (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint to catch cases where credit refund of failed op overlaps reconnect (Leif Sahlberg) [1708033] - [fs] cifs: remove set but not used variable 'cifs_sb' (Leif Sahlberg) [1708033] - [fs] cifs: Use kmemdup rather than duplicating its implementation in smb311_posix_mkdir() (Leif Sahlberg) [1708033] - [fs] smb3: do not display confusing message on mount to Azure servers (Leif Sahlberg) [1708033] - [fs] smb3: fix lease break problem introduced by compounding (Leif Sahlberg) [1708033] - [fs] cifs: only wake the thread for the very last PDU in a compound (Leif Sahlberg) [1708033] - [fs] cifs: add a warning if we try to to dequeue a deleted mid (Leif Sahlberg) [1708033] - [fs] smb2: fix missing files in root share directory listing (Leif Sahlberg) [1708033] - [fs] cifs: read overflow in is_valid_oplock_break() (Leif Sahlberg) [1708033] - [fs] cifs: integer overflow in in SMB2_ioctl() (Leif Sahlberg) [1708033] - [fs] CIFS: fix wrapping bugs in num_entries() (Leif Sahlberg) [1708033] - [fs] cifs: prevent integer overflow in nxt_dir_entry() (Leif Sahlberg) [1708033] - [fs] fs/cifs: suppress a string overflow warning (Leif Sahlberg) [1708033] - [fs] cifs: connect to servername instead of IP for IPC$ share (Leif Sahlberg) [1708033] - [fs] smb3: check for and properly advertise directory lease support (Leif Sahlberg) [1708033] - [fs] smb3: minor debugging clarifications in rfc1001 len processing (Leif Sahlberg) [1708033] - [fs] SMB3: Backup intent flag missing for directory opens with backupuid mounts (Leif Sahlberg) [1708033] - [fs] fs/cifs: don't translate SFM_SLASH (U+F026) to backslash (Leif Sahlberg) [1708033] - [fs] cifs: update internal module version number for cifs.ko to 2.12 (Leif Sahlberg) [1708033] - [fs] cifs: check kmalloc before use (Leif Sahlberg) [1708033] - [fs] cifs: check if SMB2 PDU size has been padded and suppress the warning (Leif Sahlberg) [1708033] - [fs] cifs: create a define for how many iovs we need for an SMB2_open() (Leif Sahlberg) [1708033] - [fs] smb3: create smb3 equivalent alias for cifs pseudo-xattrs (Leif Sahlberg) [1708033] - [fs] smb3: allow previous versions to be mounted with snapshot= mount parm (Leif Sahlberg) [1708033] - [fs] cifs: don't show domain= in mount output when domain is empty (Leif Sahlberg) [1708033] - [fs] cifs: add missing support for ACLs in SMB 3.11 (Leif Sahlberg) [1708033] - [fs] smb3: enumerating snapshots was leaving part of the data off end (Leif Sahlberg) [1708033] - [fs] cifs: update smb2_queryfs() to use compounding (Leif Sahlberg) [1708033] - [fs] cifs: update receive_encrypted_standard to handle compounded responses (Leif Sahlberg) [1708033] - [fs] cifs: create SMB2_open_init()/SMB2_open_free() helpers. (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_query_info_[init|free]() (Leif Sahlberg) [1708033] - [fs] cifs: add SMB2_close_init()/SMB2_close_free() (Leif Sahlberg) [1708033] - [fs] smb3: display stats counters for number of slow commands (Leif Sahlberg) [1708033] - [fs] CIFS: fix uninitialized ptr deref in smb2 signing (Leif Sahlberg) [1708033] - [fs] smb3: Do not send SMB3 SET_INFO if nothing changed (Leif Sahlberg) [1708033] - [fs] smb3: fix minor debug output for CONFIG_CIFS_STATS (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for slow responses (Leif Sahlberg) [1708033] - [fs] cifs: add compound_send_recv() (Leif Sahlberg) [1708033] - [fs] cifs: make smb_send_rqst take an array of requests (Leif Sahlberg) [1708033] - [fs] cifs: update init_sg, crypt_message to take an array of rqst (Leif Sahlberg) [1708033] - [fs] smb3: fix reset of bytes read and written stats (Leif Sahlberg) [1708033] - [fs] smb3: display bytes_read and bytes_written in smb3 stats (Leif Sahlberg) [1708033] - [fs] cifs: simple stats should always be enabled (Leif Sahlberg) [1708033] - [fs] cifs: use a refcount to protect open/closing the cached file handle (Leif Sahlberg) [1708033] - [fs] smb3: add reconnect tracepoints (Leif Sahlberg) [1708033] - [fs] smb3: add tracepoint for session expired or deleted (Leif Sahlberg) [1708033] - [fs] cifs: remove unused stats (Leif Sahlberg) [1708033] - [fs] smb3: don't request leases in symlink creation and query (Leif Sahlberg) [1708033] - [fs] smb3: remove per-session operations from per-tree connection stats (Leif Sahlberg) [1708033] - [fs] SMB3: Number of requests sent should be displayed for SMB3 not just CIFS (Leif Sahlberg) [1708033] - [fs] smb3: snapshot mounts are read-only and make sure info is displayable about the mount (Leif Sahlberg) [1708033] - [fs] smb3: remove noisy warning message on mount (Leif Sahlberg) [1708033] - [fs] cifs: add missing debug entries for kconfig options (Leif Sahlberg) [1708033] - [fs] smb3: fill in statfs fsid and correct namelen (Leif Sahlberg) [1708033] - [fs] cifs: Make sure all data pages are signed correctly (Leif Sahlberg) [1708033] - [fs] CIFS: fix memory leak and remove dead code (Leif Sahlberg) [1708033] - [fs] cifs: use 64-bit timestamps for fscache (Leif Sahlberg) [1708033] - [fs] cifs: use timespec64 internally (Leif Sahlberg) [1708033] - [fs] cifs: Silence uninitialized variable warning (Leif Sahlberg) [1708033] - [fs] fs/cifs: Simplify ib_post_(send|recv|srq_recv)() calls (Leif Sahlberg) [1708033]- [edac] EDAC/amd64: Set maximum channel layer size depending on family (Gary Hook) [1690984] - [edac] EDAC/amd64: Adjust printed chip select sizes when interleaved (Gary Hook) [1690984] - [edac] EDAC/amd64: Recognize x16 symbol size (Gary Hook) [1690984] - [edac] EDAC/amd64: Support more than two Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC/amd64: Use a macro for iterating over Unified Memory Controllers (Gary Hook) [1690984] - [edac] EDAC, amd64: Add Family 17h, models 10h-2fh support (Gary Hook) [1670609 1690984] - [md] dm mpath: fix missing call of path selector type->end_io (Mike Snitzer) [1686227] - [rpmspec] redhat: do not generate debuginfo for self-tests and samples (Ivan Vecera) [1708375] - [netdrv] broadcom: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [netdrv] cross-tree: phase out dma_zalloc_coherent() (Kamal Heib) [1684380] - [netdrv] broadcom: tg3: fix use of SPEED_UNKNOWN ethtool constant (Kamal Heib) [1684380] - [netdrv] tg3: allow ethtool -p to work for NICs in down state (Kamal Heib) [1684380] - [netdrv] tg3: optionally use eth_platform_get_mac_address() to get mac address (Kamal Heib) [1684380] - [netdrv] tg3: extend PTP gettime function to read system clock (Kamal Heib) [1684380] - [netdrv] tg3: Fix fall-through annotations (Kamal Heib) [1684380] - [netdrv] tg3: Mark expected switch fall-throughs (Kamal Heib) [1684380] - [mm] x86/mm/KASLR: Fix the size of the direct mapping section (Baoquan He) [1669075] - [netdrv] net/mlx4_en: fix spelling mistake: "quiting" -> "quitting" (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix error handling when initializing CQ bufs in the driver (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Add masking for a few queries on HCA caps (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Fix using wrong function to destroy sqp AHs under SRIOV (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: replace pci_{,un}map_sg with dma_{,un}map_sg (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4: Get rid of page operation after dma_alloc_coherent (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: drop useless LIST_HEAD (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove set but not used variable 'pd' (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Utilize macro to calculate SQ spare size (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: remove fallback after kzalloc_node() (Alaa Hleihel) [1691235 1691228] - [infiniband] IB/mlx4: Remove unneeded NULL check (Alaa Hleihel) [1691235 1691228] - [infiniband] mlx4: Use snprintf instead of complicated strcpy (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix several coding style errors (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_core: Fix return codes of unsupported operations (Alaa Hleihel) [1691235 1691228] - [netdrv] {net, IB}/mlx4: Initialize CQ buffers in the driver when possible (Alaa Hleihel) [1691235 1691228] - [netdrv] mlx4: use __vlan_hwaccel helpers (Alaa Hleihel) [1691235 1691228] - [netdrv] net/mlx4_en: Fix build break when CONFIG_INET is off (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: use __netdev_tx_sent_queue() (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_en: add a missing include (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Add port and TID to MAD debug print (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Enable debug print of SMPs (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA: Fix dependencies for rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [infiniband] IB/mlx4: Remove unnecessary parentheses (Alaa Hleihel) [1691233 1691228] - [infiniband] RDMA/mlx4: Use rdma_user_mmap_io (Alaa Hleihel) [1691233 1691228] - [netdrv] net/mlx4_core: Fix warnings during boot on driverinit param set failures (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Use devlink region_snapshot parameter (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add Crdump FW snapshot support (Alaa Hleihel) [1691228] - [netdrv] net/mlx4_core: Add health buffer address capability (Alaa Hleihel) [1691228] - [netdrv] mlx4: Add support for devlink reload and load driverinit values (Alaa Hleihel) [1691228 1663198] - [netdrv] mlx4: Add mlx4 initial parameters table and register it (Alaa Hleihel) [1691228 1663198] - [infiniband] IB/mlx4: Create slave AH's directly (Alaa Hleihel) [1691228] - [infiniband] IB/mlx4: Add support for drain SQ & RQ (Alaa Hleihel) [1691228] - [net] openvswitch: return an error instead of doing BUG_ON() (Eelco Chaudron) [1700468] - [include] net: add netif_is_geneve() (Petr Oros) [1707002] - [netdrv] team: fix possible recursive locking when add slaves (Hangbin Liu) [1700679] - [netdrv] phy: Fix ioctl handler when modifing MII_ADVERTISE (Petr Oros) [1691676] - [netdrv] mii: Add mii_lpa_mod_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] phy: marvell: Rename mii_lpa_to_linkmode_lpa_t (Petr Oros) [1691676] - [netdrv] mii: Rename mii_stat1000_to_linkmode_lpa_t (Petr Oros) [1691676] - [include] mii: Fix autoneg in mii_lpa_to_linkmode_lpa_t() (Petr Oros) [1691676] - [netdrv] phy: remove unused code in phy_probe (Petr Oros) [1691676] - [netdrv] phy: check if advertising is zero using linkmode_empty (Petr Oros) [1691676] - [netdrv] phy: marvell: remove set but not used variable 'pause' (Petr Oros) [1691676] - [netdrv] phy: Add support for resolving 5G and 2.5G autoneg (Petr Oros) [1691676] - [netdrv] phy: Add more link modes to the settings table (Petr Oros) [1691676] - [netdrv] phy: Fixup kerneldoc markup. (Petr Oros) [1691676] - [netdrv] phy: Convert u32 phydev->lp_advertising to linkmode (Petr Oros) [1691676] - [netdrv] ethernet: Convert phydev advertize and supported from u32 to link mode (Petr Oros) [1691676] - [netdrv] bonding: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [netdrv] bonding: Give bond_set_dev_addr() a return value (Ivan Vecera) [1705509] - [netdrv] ipvlan: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] bridge: Handle NETDEV_PRE_CHANGEADDR from ports (Ivan Vecera) [1705509] - [net] bridge: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Issue NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add NETDEV_PRE_CHANGEADDR (Ivan Vecera) [1705509] - [net] dev: Add extack argument to dev_set_mac_address() (Ivan Vecera) [1705509] - [netdrv] phy: phy driver features are mandatory (Petr Oros) [1691720] - [netdrv] phy: add missing phy driver features (Petr Oros) [1691720] - [netdrv] phy: Add missing features to PHY drivers (Petr Oros) [1691720] - [netdrv] phy: genphy_10g_driver: Avoid NULL pointer dereference (Petr Oros) [1691720] - [netdrv] phy: phy_support_sym_pause: Clear Asym Pause (Petr Oros) [1691720] - [netdrv] phy: Replace phy driver features u32 with link_mode bitmap (Petr Oros) [1691720] - [netdrv] ethernet: xgbe: expand PHY_GBIT_FEAUTRES (Petr Oros) [1691720] - [net] net: phy: Add limkmode equivalents to some of the MII ethtool helpers (Petr Oros) [1691720] - [netdrv] phy: Add helper for advertise to lcl value (Petr Oros) [1691720] - [net] phy: Add helper to convert MII ADV register to a linkmode (Petr Oros) [1691720] - [netdrv] phy: Add phydev_info() (Petr Oros) [1691720] - [netdrv] phy: Add phydev_warn() (Petr Oros) [1691720] - [netdrv] phy: Move linkmode helpers to somewhere public (Petr Oros) [1691720] - [netdrv] ethernet: dpaa: remove unused variables (Petr Oros) [1691720] - [netdrv] ravb: Disable Pause Advertisement (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to determine if pause configuration is supported (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for set_pauseparam for Asym Pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper for MACs which support asym pause (Petr Oros) [1691720] - [netdrv] ethernet: Add helper to remove a supported link mode (Petr Oros) [1691720] - [netdrv] ethernet: Fix up drivers masking pause support (Petr Oros) [1691720] - [netdrv] bcmgenet: Fix speed selection for reverse MII (Petr Oros) [1691720] - [netdrv] ethernet: Use phy_set_max_speed() to limit advertised speed (Petr Oros) [1691720] - [netdrv] phy: bcm63xx: Allow to be built with COMPILE_TEST (Petr Oros) [1691720] - [netdrv] phy: et1011c: Remove incorrect missing 1000 Half (Petr Oros) [1691720] - [netdrv] phy: ste10Xp: Remove wrong SUPPORTED_Pause (Petr Oros) [1691720] - [tools] selftests: net: ip_defrag: cover new IPv6 defrag behavior (Guillaume Nault) [1660282] - [tools] selftests: net: fix/improve ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests: use posix-style redirection in ip_defrag.sh (Guillaume Nault) [1660282] - [tools] selftests: net: Clean up an unused variable (Guillaume Nault) [1660282] - [tools] selftests/net: add ipv6 tests to ip_defrag selftest (Guillaume Nault) [1660282] - [tools] selftests/net: add ip_defrag selftest (Guillaume Nault) [1660282] - [net] ip6: fix skb leak in ip6frag_expire_frag_queue() (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees in nf_conntrack_reasm.c (Guillaume Nault) [1660282] - [net] IP6 defrag: use rbtrees for IPv6 defrag (Guillaume Nault) [1660282] - [net] IP defrag: encapsulate rbtree defrag code into callable functions (Guillaume Nault) [1660282] - [net] ipv4: do not handle duplicate fragments as overlapping (Guillaume Nault) [1660282] - [net] ipv4: ipv6: netfilter: Adjust the frag mem limit when truesize changes (Guillaume Nault) [1660282] - [net] ipv6: remove dependency of nf_defrag_ipv6 on ipv6 module (Guillaume Nault) [1660282] - [net] ipv6: fix typo in net/ipv6/reassembly.c (Guillaume Nault) [1660282] - [net] core: dev: Attach extack to NETDEV_PRE_UP (Ivan Vecera) [1705501] - [net] core: dev: Add call_netdevice_notifiers_extack() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to __dev_change_flags() (Ivan Vecera) [1705501] - [net] core: dev: Add extack argument to dev_change_flags() (Ivan Vecera) [1705501] - [netdrv] ipvlan: ipvlan_set_port_mode(): Add an extack argument (Ivan Vecera) [1705501] - [netdrv] vrf: cycle_netdev(): Add an extack argument (Ivan Vecera) [1705501] - [net] net: core: dev: Add extack argument to dev_open() (Ivan Vecera) [1705501] - [net] vlan: conditional inclusion of FCoE hooks to match netdevice.h and bnx2x (Chris Leech) [1685894] - [net] Do not route unicast IP packets twice (Ivan Vecera) [1704923] - [net] skbuff: Rename 'offload_mr_fwd_mark' to 'offload_l3_fwd_mark' (Ivan Vecera) [1704923] - [net] devlink: Add 'fw_load_policy' generic parameter (Ivan Vecera) [1704902] - [net] bridge: Extend br_vlan_get_pvid() for bridge ports (Ivan Vecera) [1704863] - [net] ipv4: Notify about changes to ip_forward_update_priority (Ivan Vecera) [1704697] - [net] ipv4: Control SKB reprioritization after forwarding (Ivan Vecera) [1704697] - [net] dcb: Add priority-to-DSCP map getters (Ivan Vecera) [1704639] - [net] xsk: export xdp_get_umem_from_qid (Ivan Vecera) [1704606] - [net] net: Add lag.h, net_lag_port_dev_txable() (Ivan Vecera) [1704297] - [netdrv] team: Publish team_port_get_rcu() (Ivan Vecera) [1704297] - [net] sched: sch_api: set an error msg when qdisc_alloc_handle() fails (Ivan Vecera) [1677094] - [net] ethtool: Remove unnecessary null check in ethtool_rx_flow_rule_create (Ivan Vecera) [1691738] - [net] flow_offload: fix block stats (Ivan Vecera) [1691738] - [net] sched: flower: only return error from hw offload if skip_sw (Ivan Vecera) [1691738] - [net] flow_offload: Fix flow action infrastructure (Ivan Vecera) [1691738] - [net] ethtool: add ethtool_rx_flow_spec to flow_rule structure translator (Ivan Vecera) [1691738] - [net] flow_offload: add wake-up-on-lan and queue to flow_action (Ivan Vecera) [1691738] - [net] flow_offload: add statistics retrieval infrastructure and use it (Ivan Vecera) [1691738] - [net] cls_api: add translator to flow_action representation (Ivan Vecera) [1691738] - [net] flow_offload: add flow action infrastructure (Ivan Vecera) [1691738] - [net] flow_offload: add flow_rule and flow_match structures and use them (Ivan Vecera) [1691738] - [net] netfilter: ipv6: Don't preserve original oif for loopback address (Florian Westphal) [1702813] - [net] netfilter: ipv6: Preserve link scope traffic original oif (Florian Westphal) [1702813] - [net] sctp: implement memory accounting on rx path (Xin Long) [1665243] {CVE-2019-3874} - [net] sctp: implement memory accounting on tx path (Xin Long) [1665243] {CVE-2019-3874} - [net] openvswitch: fix flow actions reallocation (Eelco Chaudron) [1700468] - [net] openvswitch: fix missing checks for nla_nest_start (Eelco Chaudron) [1700468] - [net] openvswitch: fix a NULL pointer dereference (Eelco Chaudron) [1700468] - [net] openvswitch: meter: Use struct_size() in kzalloc() (Eelco Chaudron) [1700468] - [net] openvswitch: Fix IPv6 later frags parsing (Eelco Chaudron) [1700468] - [net] openvswitch: fix spelling mistake "execeeds" -> "exceeds" (Eelco Chaudron) [1700468] - [net] openvswitch: remove BUG_ON from get_dpdev (Eelco Chaudron) [1700468] - [net] openvswitch: fix linking without CONFIG_NF_CONNTRACK_LABELS (Eelco Chaudron) [1700468] - [net] revert "openvswitch: Fix template leak in error cases." (Eelco Chaudron) [1700468] - [net] openvswitch: Use correct reply values in datapath and vport ops (Eelco Chaudron) [1700468] - [net] ovs: fix return type of ndo_start_xmit function (Eelco Chaudron) [1700468] - [net] openvswitch: Derive IP protocol number for IPv6 later frags (Eelco Chaudron) [1700468] - [net] openvswitch: kernel datapath clone action (Eelco Chaudron) [1700468] - [net] openvswitch: Avoid OOB read when parsing flow nlattrs (Eelco Chaudron) [1700468] - [net] net/vlan: remove unused #define HAVE_VLAN_GET_TAG (Ivan Vecera) [1700369] - [net] vlan: include the shift in skb_vlan_tag_get_prio() (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_copy_tag() helper (Ivan Vecera) [1700369] - [net] vlan: introduce __vlan_hwaccel_clear_tag() helper (Ivan Vecera) [1700369] - [net] sctp: initialize _pad of sockaddr_in before copying to user memory (Xin Long) [1699076] - [net] sctp: use memdup_user instead of vmemdup_user (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: fix ignoring asoc_id for tcp-style sockets on SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: not copy sctp_sock pd_lobby in sctp_copy_descendant (Xin Long) [1699076] - [net] sctp: get sctphdr by offset in sctp_compute_cksum (Xin Long) [1699076] - [net] sctp: call sctp_auth_init_hmacs() in sctp_sock_migrate() (Xin Long) [1699076] - [net] sctp: move up sctp_auth_init_hmacs() in sctp_endpoint_init() (Xin Long) [1699076] - [net] sctp: sctp_sock_migrate() returns error if sctp_bind_addr_dup() fails (Xin Long) [1699076] - [net] sctp: remove sched init from sctp_stream_init (Xin Long) [1699076] - [net] sctp: call iov_iter_revert() after sending ABORT (Xin Long) [1699076] - [net] ipvs: get sctphdr by sctphoff in sctp_csum_check (Xin Long) [1699076] - [net] sctp: chunk.c: correct format string for size_t in printk (Xin Long) [1699076] - [net] sctp: don't compare hb_timer expire date before starting it (Xin Long) [1699076] - [net] doc: sctp: Merge and clean up rst files (Xin Long) [1699076] - [net] sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASOC and SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_EVENT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_ENABLE_STREAM_RESET sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_PRINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DEACTIVATE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_DELETE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_ACTIVE_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_AUTH_KEY sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_MAX_BURST sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_CONTEXT sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SNDINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DEFAULT_SEND_PARAM sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC and add SCTP_CURRENT_ASSOC for SCTP_DELAYED_SACK sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_CURRENT_ASSOC for SCTP_STREAM_SCHEDULER_VALUE sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_INTERLEAVING_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RECONFIG_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PR_SUPPORTED sockopt (Xin Long) [1699076] - [net] sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_LOCAL_AUTH_CHUNKS sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_MAXSEG sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_ASSOCINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_RTOINFO sockopt (Xin Long) [1699076] - [net] sctp: use SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_PARAMS sockopt (Xin Long) [1699076] - [net] sctp: introduce SCTP_FUTURE/CURRENT/ALL_ASSOC (Xin Long) [1699076] - [net] sctp: set flow sport from saddr only when it's 0 (Xin Long) [1699076] - [net] sctp: set chunk transport correctly when it's a new asoc (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream adding (Xin Long) [1699076] - [net] sctp: improve the events for sctp stream reset (Xin Long) [1699076] - [net] sctp: allocate sctp_sockaddr_entry with kzalloc (Xin Long) [1699076] - [net] sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event (Xin Long) [1699076] - [net] sctp: frag_point sanity check (Xin Long) [1699076] - [net] sctp: kfree_rcu asoc (Xin Long) [1699076] - [net] sctp: update frag_point when stream_interleave is set (Xin Long) [1699076] - [net] sctp: add sockopt SCTP_EVENT (Xin Long) [1699076] - [net] sctp: rename enum sctp_event to sctp_event_type (Xin Long) [1699076] - [net] sctp: add subscribe per asoc (Xin Long) [1699076] - [net] sctp: define subscribe in sctp_sock as __u16 (Xin Long) [1699076] - [net] sctp: process sk_reuseport in sctp_get_port_local (Xin Long) [1699076] - [net] sctp: add sock_reuseport for the sock in __sctp_hash_endpoint (Xin Long) [1699076] - [net] sctp: do reuseport_select_sock in __sctp_rcv_lookup_endpoint (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_ordered(). (Xin Long) [1699076] - [net] sctp: Fix SKB list traversal in sctp_intl_store_reasm(). (Xin Long) [1699076] - [net] sctp: define SCTP_SS_DEFAULT for Stream schedulers (Xin Long) [1699076] - [net] sctp: clear the transport of some out_chunk_list chunks in sctp_assoc_rm_peer (Xin Long) [1699076] - [net] sctp: use sk_wmem_queued to check for writable space (Xin Long) [1699076] - [net] sctp: count both sk and asoc sndbuf with skb truesize and sctp_chunk size (Xin Long) [1699076] - [net] sctp: use the pmtu from the icmp packet to update transport pathmtu (Xin Long) [1699076] - [net] sctp: fix fall-through annotation (Xin Long) [1699076] - [net] sctp: Use skb_queue_is_first(). (Xin Long) [1699076] - [net] sctp: not traverse asoc trans list if non-ipv6 trans exists for ipv6_flowlabel (Xin Long) [1699076] - [net] sctp: fix invalid reference to the index variable of the iterator (Xin Long) [1699076] - [net] sctp: remove useless start_fail from sctp_ht_iter in proc (Xin Long) [1699076] - [net] sctp: Make wrappers for accessing in/out streams (Xin Long) [1699076] - [net] sctp: whitespace fixes (Xin Long) [1699076] - [net] sctp: check for ipv6_pinfo legal sndflow with flowlabel in sctp_v6_get_dst (Xin Long) [1699076] - [net] sctp: add support for setting flowlabel when adding a transport (Xin Long) [1699076] - [net] sctp: add spp_ipv6_flowlabel and spp_dscp for sctp_paddrparams (Xin Long) [1699076] - [net] sctp: add support for dscp and flowlabel per transport (Xin Long) [1699076] - [net] ipv4: add __ip_queue_xmit() that supports tos param (Xin Long) [1699076] - [net] sctp: add support for SCTP_REUSE_PORT sockopt (Xin Long) [1699076] - [netdrv] pptp: dst_release sk_dst_cache in pptp_sock_destruct (Xin Long) [1671606] - [net] datagram: fix unbounded loop in __skb_try_recv_datagram() (Paolo Abeni) [1692379] - [net] ipv6: route: purge exception on removal (Paolo Abeni) [1669049] - [net] vsock: cope with memory allocation failure at socket creation time (Paolo Abeni) [1671619] - [net] ptp: fix Spectre v1 vulnerability (Hangbin Liu) [1664624]- [infiniband] RDMA/bnxt_re: fix or'ing of data into an uninitialized struct member (Selvin Xavier) [1664798] - [netdrv] RDMA/bnxt_en: Enable RDMA driver support for 57500 chip (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Update kernel user abi to pass chip context (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add extended psn structure for 57500 adapters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Enable GSI QP support for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Skip backing store allocation for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add 64bit doorbells for 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add chip context to identify 57500 series (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: fix a size calculation (Selvin Xavier) [1664798] - [infiniband] infiniband: bnxt_re: qplib: Check the return value of send_message (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Increase depth of control path command queue (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Query HWRM Interface version from FW (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of destroy AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Make use of create AH sleepable flag (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing the device structure after it is freed (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix system hang when registration with L2 driver fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid resource leak in case the NQ registration fails (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Wait for delayed work to finish before device removal (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Limit max_pkey to 16 bit value (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix qp async event reporting (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Report out of sequence hw counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Expose rx discards and drop counters (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Prevent driver crash due to NULL pointer in error message print (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Drop L2 async events silently (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid accessing nq->bar_reg_iomem in failure case (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Avoid NULL check after accessing the pointer (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Remove the unnecessary version macro definition (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix recursive lock warning in debug kernel (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Add missing spin lock initialization (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: QPLIB: Add and use #define dev_fmt(fmt) "QPLIB: " fmt (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Modify a fall-through annotation (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c (Selvin Xavier) [1664798] - [infiniband] RDMA/bnxt_re: Fix a couple off by one bugs (Selvin Xavier) [1664798] - [powerpc] powerpc/fadump: Do not allow hot-remove memory from fadump reserved area. (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Throw proper error message on fadump registration failure (Gustavo Duarte) [1524686] - [powerpc] powerpc/fadump: Reservationless firmware assisted dump (Gustavo Duarte) [1524686] - [infiniband] IB/hfi1: Fix WQ_MEM_RECLAIM warning (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Implement CCA for TID RDMA protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove WARN_ON when freeing expected receive groups (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unify the software PSN check for TID RDMA READ/WRITE (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to read next expected psn from hardware flow (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Delay the release of destination mr for TID RDMA WRITE DATA (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Do not flush send queue in the TID RDMA second leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix the allocation of RSM table (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Eliminate opcode tests on mr deref (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Clear the IOWAIT pending bits when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Failed to drain send queue when QP is put into error state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add missing break in switch statement (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a build warning for TID RDMA READ (Alex Estrin) [1660618] - [infiniband] RDMA/rdmavt: Adapt to handle non-uniform sizes on umem SGEs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prioritize the sending of ACK packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA WRITE protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between TID RDMA WRITE and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA WRITE functionality into RDMA verbs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the dual leg code (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg ACK packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the TID second leg send packet builder (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Resend the TID RDMA WRITE DATA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA RESYNC packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA retry timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA ACK packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE DATA packet (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to receive TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID resource timer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA WRITE response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add an s_acked_ack_queue pointer (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow for extra entries in QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Build TID RDMA WRITE request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Enable TID RDMA READ protocol (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add interlock between a TID RDMA request and other requests (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate TID RDMA READ protocol into RC protocol (Alex Estrin) [1660618] - [include] IB/hfi1: Increment the retry timeout value for TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions for restarting TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add TID RDMA handlers (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add a function to build TID RDMA READ response (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to receive TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set PbcInsertHcrc for TID RDMA packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add functions to build TID RDMA READ request (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for flow and TID management functions (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add the counter n_tidwait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA RcvArray programming and TID allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi1: TID RDMA flow allocation (Alex Estrin) [1660618] - [infiniband] IB/hfi: Move RC functions into a header file (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for OPFN (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Integrate OPFN into RC transactions (Alex Estrin) [1660618] - [infiniband] IB/hfi1, IB/rdmavt: Allow for extending of QP's s_ack_queue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN interface (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN helper functions for TID RDMA feature (Alex Estrin) [1660618] - [infiniband] IB/hfi1: OPFN support discovery (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib, rvt} Cleanup open coded sge usage (Alex Estrin) [1660618] - [infiniband] IB/{hfi1,qib}: Cleanup open coded sge sizing (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Use GUP longterm for PSM page pining (Alex Estrin) [1660618] - [infiniband] infiniband: qib: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: no need to check return value of debugfs_create functions (Alex Estrin) [1660618] - [infiniband] infiniband: hfi1: drop crazy DEBUGFS_SEQ_FILE_CREATE() macro (Alex Estrin) [1660618] - [infiniband] IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM (Alex Estrin) [1660618] - [infiniband] IB/qib: Fix an error code in qib_sdma_verbs_send() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reduce lock contention on iowait_lock for sdma and pio (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Close VNIC sdma_progress sleep window (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Allow the driver to initialize QP priv struct (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add OPFN and TID RDMA capability bits (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Unreserve a reserved request when it is completed (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Consider LMC in 16B/bypass ingress packet check (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Limit VNIC use of SDMA engines to the available count (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Correctly process FECN and BECN in packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Ignore LNI errors before DC8051 transitions to Polling state (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Dump pio info for non-user send contexts (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Fix a latency issue for small messages (Alex Estrin) [1660618] - [infiniband] RDMA/qib: Remove all occurrences of BUG_ON() (Alex Estrin) [1660618] - [infiniband] IB/qib: fix spelling mistake "colescing" -> "coalescing" (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Use VL15 for SM packets (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add mtu check for operational data VLs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Add static trace for iowait (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare resource waits for dual leg (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Error path MAD response size is incorrect (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move UnsupportedVL bits definitions to the correct header (Alex Estrin) [1660618] - [infiniband] IB/hfi1: set_intr_bits uses incorrect source for register modification (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Missing return value in error path for user sdma (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Right size user_sdma sequence numbers and related variables (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move URGENT IRQ enable to hfi1_rcvctrl() (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework the IRQ API to be more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: PCIe bus width retry (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Make the MSIx resource allocation a bit more flexible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Prepare for new HFI1 MSIx API (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Get the hfi1_devdata structure as early as possible (Alex Estrin) [1660618] - [infiniband] IB/hfi1: tune_pcie_caps is arbitrarily placed, poorly (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove duplicated defines (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rework file list in Makefile (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove incorrect call to do_interrupt callback (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Set in_use_ctxts bits for user ctxts only (Alex Estrin) [1660618] - [include] include/rdma/opa_addr.h: Fix an endianness issue (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove INTx support and simplify MSIx usage (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Reorg ctxtdata and rightsize fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove caches of chip CSRs (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove unused/writeonly devdata fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Rightsize ctxt_eager_bufs fields (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvctrl from ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrq_size (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Remove rcvhdrsize (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move rhf_offset from devdata to ctxtdata (Alex Estrin) [1660618] - [infiniband] IB/hfi1: Move normal functions from hfi1_devdata to const array (Alex Estrin) [1660618] - [infiniband] scsi: RDMA/srpt: Fix handling of TMF submission failure (Jonathan Toppins) [1685313] - [infiniband] scsi: RDMA/srpt: Fix a credit leak for aborted commands (Jonathan Toppins) [1685313] - [net] xprtrdma: Reduce the doorbell rate (Receive) (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix sparse warnings (Jonathan Toppins) [1685313] - [net] xprtrdma: Fix helper that drains the transport (Jonathan Toppins) [1685313] - [netdrv] enic: fix build warning without CONFIG_CPUMASK_OFFSTACK (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Fix out of bounds index check in query pkey (Jonathan Toppins) [1685313] - [infiniband] IB/usnic: Remove stub functions (Jonathan Toppins) [1685313] - [infiniband] rdma: fix build errors on s390 and MIPS due to bad ZERO_PAGE use (Jonathan Toppins) [1685313] - [infiniband] RDMA/ucontext: Fix regression with disassociate (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Fix dma_nents type definition (Jonathan Toppins) [1685313] - [infiniband] IB/iser: Pass the correct number of entries for dma mapped SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/rxe: Use for_each_sg_page iterator on umem SGL (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Fix memory leak on pvrdma_pci_remove (Jonathan Toppins) [1685313] - [infiniband] RDMA/vmw_pvrdma: Support upto 64-bit PFNs (Jonathan Toppins) [1683475] - [include] IB/mlx5: Remove dead code (Jonathan Toppins) [1685313] - [infiniband] IB/mlx5: Ranges in implicit ODP MR inherit its write access (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix frwr memory registration (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Add wc_flags and wc_immdata to cq entry trace (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix concurrency panics in QP post_send and modify to error (Jonathan Toppins) [1685313] - [infiniband] IB/rdmavt: Fix loopback send with invalidate ordering (Jonathan Toppins) [1685313] - [infiniband] IB/hfi1: Add limit test for RC/UC send via loopback (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: Fix string truncation error (Jonathan Toppins) [1685313] - [infiniband] RDMA/iwcm: add tos_set bool to iw_cm struct (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: listening device cm_ids should inherit tos (Jonathan Toppins) [1685313] - [infiniband] RDMA/cma: Rollback source IP address if failing to acquire device (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Call ib_cache_release_one() only from ib_device_release() (Jonathan Toppins) [1685313] - [infiniband] RDMA/device: Ensure that security memory is always freed (Jonathan Toppins) [1685313] - [infiniband] RDMA/uverbs: Fix an error flow in ib_uverbs_poll_cq (Jonathan Toppins) [1685313] - [infiniband] IB/ipoib: Make ipoib_intercept_dev_id_attr() static (Jonathan Toppins) [1685313] - [infiniband] RDMA: Provide safe ib_alloc_device() function (Jonathan Toppins) [1685313] - [infiniband] IB/core, ipoib: Do not overreact to SM LID change event (Jonathan Toppins) [1685313] - [infiniband] IB/core: Abort page fault handler silently during owning process exit (Jonathan Toppins) [1685313] - [infiniband] RDMA/core: Verify that memory window type is legal (Jonathan Toppins) [1685313] - [infiniband] IB/core: Don't register each MAD agent for LSM notifier (Jonathan Toppins) [1711086 1685313] - [include] IB/core: Eliminate a hole in MAD agent struct (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Fix potential memory leak while creating MAD agents (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Unregister notifier before freeing MAD security (Jonathan Toppins) [1711086 1685313] - [infiniband] IB/core: Destroy QP if XRC QP fails (Jonathan Toppins) [1685313] - [infiniband] IB/core: Declare local functions 'static' (Jonathan Toppins) [1685313] - [infiniband] RDMA/i40iw: Make sure to initialize ib_device_ops (Jonathan Toppins) [1685313] - [rpmspec] Update the kernel rpm package description to mention backports/bug fixes ("Herton R. Krzesinski") [1701064] - [netdrv] bonding: fix arp_validate toggling in active-backup mode (Jarod Wilson) [1654214] - [scsi] scsi: bnx2i: fix indentation issue, remove a tab (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: remove set but not used variable 'cid_num' (Maurizio Lombardi) [1665626] - [scsi] scsi: bnx2i: add error handling for ioremap_nocache (Maurizio Lombardi) [1665626] - [wireless] iwlwifi: mvm: Send LQ command as async when necessary (Stanislaw Gruszka) [1687265] - [scsi] scsi: bnx2fc: Fix error handling in probe() (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Fix NULL dereference in error handling (Maurizio Lombardi) [1665625] - [scsi] scsi: bnx2fc: Remove set but not used variable 'oxid' (Maurizio Lombardi) [1665625] - [scsi] bnx2fc_fcoe: Use skb_queue_walk_safe(). (Maurizio Lombardi) [1665625] - [netdrv] hv_netvsc: Fix rndis_per_packet_info internal field initialization (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add handler for LRO setting change (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Add support for LRO/RSC in the vSwitch (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix unwanted wakeup after tx_disable (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix IP header checksum for coalesced packets (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: fix typos in code comments (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix hash key value reset after other ops (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Refactor assignments of struct netvsc_device_info (Mohammed Gamal) [1691375] - [netdrv] hv_netvsc: Fix ethtool change hash key error (Mohammed Gamal) [1691375] - [netdrv] ice: Disable sniffing VF traffic on PF (Kamal Heib) [1659176] - [netdrv] ice: Use more efficient structures (Kamal Heib) [1659176] - [netdrv] ice: Use bitfields where possible (Kamal Heib) [1659176] - [netdrv] ice: Add function to program ethertype based filter rule on VSIs (Kamal Heib) [1659176] - [netdrv] ice: Separate if conditions for ice_set_features() (Kamal Heib) [1659176] - [netdrv] ice: Remove __always_unused attribute (Kamal Heib) [1659176] - [netdrv] ice: Suppress false-positive style issues reported by static analyzer (Kamal Heib) [1659176] - [netdrv] ice: Refactor getting/setting coalesce (Kamal Heib) [1659176] - [netdrv] ice: Always free/allocate q_vectors (Kamal Heib) [1659176] - [netdrv] ice: Do not unnecessarily initialize local variable (Kamal Heib) [1659176] - [netdrv] ice: Add more validation in ice_vc_cfg_irq_map_msg (Kamal Heib) [1659176] - [netdrv] ice: Don't remove VLAN filters that were never programmed (Kamal Heib) [1659176] - [netdrv] ice: Preserve VLAN Rx stripping settings (Kamal Heib) [1659176] - [netdrv] ice: Fix for allowing too many MDD events on VF (Kamal Heib) [1659176] - [netdrv] ice: Use pf instead of vsi-back (Kamal Heib) [1659176] - [netdrv] ice: Use dev_err when ice_cfg_vsi_lan fails (Kamal Heib) [1659176] - [netdrv] ice: Refactor link event flow (Kamal Heib) [1659176] - [netdrv] ice: Add missing PHY type to link settings (Kamal Heib) [1659176] - [netdrv] ice: Add reg_idx variable in ice_q_vector structure (Kamal Heib) [1659176] - [netdrv] ice: Remove runtime change of PFINT_OICR_ENA register (Kamal Heib) [1659176] - [netdrv] ice: Fix issue when adding more than allowed VLANs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary wait when disabling/enabling Rx queues (Kamal Heib) [1659176] - [netdrv] ice: Add ability to update rx-usecs-high (Kamal Heib) [1659176] - [netdrv] ice: Add 52 byte RSS hash key support (Kamal Heib) [1659176] - [netdrv] ice: Use ice_for_each_q_vector macro where possible (Kamal Heib) [1659176] - [netdrv] ice: Validate ring existence and its q_vector per VSI (Kamal Heib) [1659176] - [netdrv] ice: Reduce scope of variable in ice_vsi_cfg_rxqs (Kamal Heib) [1659176] - [netdrv] ice: Resolve static analysis reported issue (Kamal Heib) [1659176] - [netdrv] ice: Return configuration error without queue to disable (Kamal Heib) [1659176] - [netdrv] ice: Create framework for VSI queue context (Kamal Heib) [1659176] - [netdrv] ice: Calculate ITR increment based on direct calculation (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump driver version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to control FW LLDP and DCBX (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB rebuild (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to get DCB related statistics (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add priority information into VLAN header (Kamal Heib) [1700995 1659176] - [netdrv] ice: Update rings based on TC information (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code to process LLDP MIB change events (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 4/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 3/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 2/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Add code for DCB initialization part 1/4 (Kamal Heib) [1700995 1659176] - [netdrv] ice: Bump version (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix incorrect use of abbreviations (Kamal Heib) [1700995 1659176] - [netdrv] ice: Fix typos in code comments (Kamal Heib) [1700995 1659176] - [netdrv] ice: Remove "2 BITS" comment (Kamal Heib) [1659176] - [netdrv] ice: Update comment regarding the ITR_GRAN_S (Kamal Heib) [1659176] - [netdrv] ice: Update function header for __ice_vsi_get_qs (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary braces (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: Add missing case in print_link_msg for printing flow control (Kamal Heib) [1659176] - [netdrv] ice: Audit hotpath structures with pahole (Kamal Heib) [1659176] - [netdrv] ice: Do not bail out when filter already exists (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF attempt to delete default MAC address (Kamal Heib) [1659176] - [netdrv] ice: enable VF admin queue interrupts (Kamal Heib) [1659176] - [netdrv] ice: Fix for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Implement pci_error_handler ops (Kamal Heib) [1659176] - [netdrv] ice: Put __ICE_PREPARED_FOR_RESET check in ice_prepare_for_reset (Kamal Heib) [1659176] - [netdrv] ice: use virt channel status codes (Kamal Heib) [1659176] - [netdrv] ice: Remove unnecessary newlines from log messages (Kamal Heib) [1659176] - [netdrv] ice: Create a generic name for the ice_rx_flg64_bits structure (Kamal Heib) [1659176] - [netdrv] ice: add and use new ice_for_each_traffic_class() macro (Kamal Heib) [1659176] - [netdrv] ice: change VF VSI tc info along with num_queues (Kamal Heib) [1659176] - [netdrv] ice: Prevent unintended multiple chain resets (Kamal Heib) [1659176] - [netdrv] ice: map Rx buffer pages with DMA attributes (Kamal Heib) [1659176] - [netdrv] ice: Limit the ice_add_rx_frag to frag addition (Kamal Heib) [1659176] - [netdrv] ice: Gather the rx buf clean-up logic for better reuse (Kamal Heib) [1659176] - [netdrv] ice: Introduce bulk update for page count (Kamal Heib) [1659176] - [netdrv] ice: Get rid of ice_pull_tail (Kamal Heib) [1659176] - [netdrv] ice: Pull out page reuse checks onto separate function (Kamal Heib) [1659176] - [netdrv] ice: Retrieve rx_buf in separate function (Kamal Heib) [1659176] - [netdrv] ice: Enable link events over the ARQ (Kamal Heib) [1659176] - [netdrv] ice: use irq_num var in ice_vsi_req_irq_msix (Kamal Heib) [1659176] - [netdrv] ice: Restore VLAN switch rule if port VLAN existed before (Kamal Heib) [1659176] - [netdrv] ice: update VSI config dynamically (Kamal Heib) [1659176] - [netdrv] ice: Get VF VSI instances directly via PF (Kamal Heib) [1659176] - [netdrv] ice: Don't let VF know that it is untrusted (Kamal Heib) [1659176] - [netdrv] ice: Set LAN_EN for all directional rules (Kamal Heib) [1659176] - [netdrv] ice: Do not set LB_EN for prune switch rules (Kamal Heib) [1659176] - [netdrv] ice: Enable LAN_EN for the right recipes (Kamal Heib) [1659176] - [netdrv] ice: Add support for PF/VF promiscuous mode (Kamal Heib) [1659176] - [netdrv] ice: code cleanup in ice_sched.c (Kamal Heib) [1659176] - [netdrv] ice: Remove unused vsi_id field (Kamal Heib) [1659176] - [netdrv] ice: fix some function prototype and signature style issues (Kamal Heib) [1659176] - [netdrv] ice: fix the divide by zero issue (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reconfiguring VF queues (Kamal Heib) [1659176] - [netdrv] ice: Remove unused function prototype (Kamal Heib) [1659176] - [netdrv] ice: fix static analysis warnings (Kamal Heib) [1659176] - [netdrv] ice: Fix issue reclaiming resources back to the pool after reset (Kamal Heib) [1659176] - [netdrv] ice: Enable MAC anti-spoof by default (Kamal Heib) [1659176] - [netdrv] ice: Determine descriptor count and ring size based on PAGE_SIZE (Kamal Heib) [1659176] - [netdrv] ice: Reset all VFs with VFLR during SR-IOV init flow (Kamal Heib) [1659176] - [netdrv] ice: Get resources per function (Kamal Heib) [1659176] - [netdrv] ice: Implement flow to reset VFs with PFR and other resets (Kamal Heib) [1659176] - [netdrv] ice: configure GLINT_ITR to always have an ITR gran of 2 (Kamal Heib) [1659176] - [netdrv] ice: use ice_for_each_vsi macro when possible (Kamal Heib) [1659176] - [netdrv] ice : Ensure only valid bits are set in ice_aq_set_phy_cfg (Kamal Heib) [1659176] - [netdrv] ice: remove redundant variable and if condition (Kamal Heib) [1659176] - [netdrv] ice: avoid multiple unnecessary de-references in probe (Kamal Heib) [1659176] - [netdrv] ice: Fix issue with VF reset and multiple VFs support on PFs (Kamal Heib) [1659176] - [netdrv] ice: Fix broadcast traffic in port VLAN mode (Kamal Heib) [1659176] - [netdrv] ice: fix overlong string, update stats output (Kamal Heib) [1659176] - [netdrv] ice: Fix for FC get rx/tx pause params (Kamal Heib) [1659176] - [netdrv] ice: use absolute vector ID for VFs (Kamal Heib) [1659176] - [netdrv] ice: check for a leaf node presence (Kamal Heib) [1659176] - [netdrv] ice: flush Tx pipe on disable queue timeout (Kamal Heib) [1659176] - [netdrv] ice: clear VF ARQLEN register on reset (Kamal Heib) [1659176] - [netdrv] ice: don't spam VFs with link messages (Kamal Heib) [1659176] - [netdrv] ice: only use the VF for ICE_VSI_VF in ice_vsi_release (Kamal Heib) [1659176] - [netdrv] ice: fix numeric overflow warning (Kamal Heib) [1659176] - [netdrv] ice: fix issue where host reboots on unload when iommu=on (Kamal Heib) [1659176] - [netdrv] ice: fix ice_remove_rule_internal vsi_list handling (Kamal Heib) [1659176] - [netdrv] ice: fix stack hogs from struct ice_vsi_ctx structures (Kamal Heib) [1659176] - [netdrv] ice: sizeof() should be avoided (Kamal Heib) [1659176] - [netdrv] ice: Fix added in VSI supported nodes calc (Kamal Heib) [1659176] - [netdrv] ice: Fix the calculation of ICE_MAX_MTU (Kamal Heib) [1659176] - [netdrv] ice: Mark extack argument as __always_unused (Kamal Heib) [1659176] - [netdrv] ice: add const qualifier to mac_addr parameter (Kamal Heib) [1659176] - [netdrv] ice: Add support for new PHY types (Kamal Heib) [1659176] - [netdrv] ice: Offload SCTP checksum (Kamal Heib) [1659176] - [netdrv] ice: Allow for software timestamping (Kamal Heib) [1659176] - [netdrv] ice: Implement getting and setting ethtool coalesce (Kamal Heib) [1659176] - [netdrv] ice: Add support for adaptive interrupt moderation (Kamal Heib) [1659176] - [netdrv] ice: Move aggregator list into ice_hw instance (Kamal Heib) [1659176] - [netdrv] ice: Rework queue management code for reuse (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool private flag to make forcing link down optional (Kamal Heib) [1659176] - [netdrv] ice: Set physical link up/down when an interface is set up/down (Kamal Heib) [1659176] - [netdrv] ice: Implement support for normal get_eeprom[_len] ethtool ops (Kamal Heib) [1659176] - [netdrv] ice: Add ethtool set_phys_id handler (Kamal Heib) [1659176] - [netdrv] ice: Configure RSS LUT and HASH KEY in rebuild path (Kamal Heib) [1659176] - [netdrv] ice: Refactor a few Tx scheduler functions (Kamal Heib) [1659176] - [netdrv] ice: Fix unused variable build warning (Kamal Heib) [1659176] - [netdrv] ice: Do not enable NAPI on q_vectors that have no rings (Kamal Heib) [1659176] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Kamal Heib) [1659176] - [netdrv] ice: Fix possible NULL pointer de-reference (Kamal Heib) [1659176] - [netdrv] ice: Use Tx|Rx in comments (Kamal Heib) [1659176] - [netdrv] ice: Cosmetic formatting changes (Kamal Heib) [1659176] - [netdrv] ice: Cleanup short function signatures (Kamal Heib) [1659176] - [netdrv] ice: Cleanup ice_tx_timeout() (Kamal Heib) [1659176] - [netdrv] ice: Fix return value from NAPI poll (Kamal Heib) [1659176] - [netdrv] ice: Constify global structures that can/should be (Kamal Heib) [1659176] - [netdrv] ice: Do not set LAN_EN for MAC-VLAN filters (Kamal Heib) [1659176] - [netdrv] ice: Pass the return value of ice_init_def_sw_recp() (Kamal Heib) [1659176] - [netdrv] ice: Cleanup duplicate control queue code (Kamal Heib) [1659176] - [netdrv] ice: Remove ICE_MAX_TXQ_PER_TXQG check when configuring Tx queue (Kamal Heib) [1659176] - [netdrv] ice: Destroy scheduler tree in reset path (Kamal Heib) [1659176] - [netdrv] ice: Fix to make VLAN priority tagged traffic to appear on all TCs (Kamal Heib) [1659176] - [netdrv] ice: Call pci_disable_sriov before stopping queues for VF (Kamal Heib) [1659176] - [netdrv] ice: Increase Rx queue disable timeout (Kamal Heib) [1659176] - [netdrv] ice: Fix NVM mask defines (Kamal Heib) [1659176] - [netdrv] ice: Avoid nested RTNL locking in ice_dis_vsi (Kamal Heib) [1659176] - [netdrv] ice: Calculate guaranteed VSIs per function and use it (Kamal Heib) [1659176] - [netdrv] ice: Remove node before releasing VSI (Kamal Heib) [1659176] - [netdrv] ice: Check for q_vector when stopping rings (Kamal Heib) [1659176] - [netdrv] ice: Fix debug print in ice_tx_timeout (Kamal Heib) [1659176] - [netdrv] intel-ethernet: use correct module license (Kamal Heib) [1659176] - [netdrv] bnx2x: Add support for detection of P2P event packets. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: Replace magic numbers with macro definitions. (Manish Chopra) [1638306 1663271] - [netdrv] bnx2x: fix spelling mistake "dicline" -> "decline" (Manish Chopra) [1663271] - [netdrv] bnx2x: Utilize FW 7.13.11.0. (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove set but not used variable 'mfw_vn' (Manish Chopra) [1663271] - [netdrv] bnx2x: Use struct_size() in kzalloc() (Manish Chopra) [1663271] - [netdrv] broadcom: Mark expected switch fall-throughs (Manish Chopra) [1663271] - [netdrv] bnx2x: Bump up driver version to 1.713.36 (Manish Chopra) [1663271] - [netdrv] bnx2x: fix various indentation issues (Manish Chopra) [1663271] - [netdrv] cross-tree: phase out dma_zalloc_coherent() on headers (Manish Chopra) [1663271] - [netdrv] bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw (Manish Chopra) [1663271] - [netdrv] bnx2x: Send update-svid ramrod with retry/poll flags enabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Enable PTP only on the PF that initializes the port (Manish Chopra) [1663271] - [netdrv] bnx2x: Remove configured vlans as part of unload sequence. (Manish Chopra) [1663271] - [netdrv] bnx2x: Clear fip MAC when fcoe offload support is disabled (Manish Chopra) [1663271] - [netdrv] bnx2x: Add storm FW version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] bnx2x: Add MBI version to ethtool driver query output. (Manish Chopra) [1663271] - [netdrv] drivers: net: remove inclusion when not needed (Manish Chopra) [1663271] - [netdrv] bnx2x: remove ndo_poll_controller (Manish Chopra) [1663271] - [netdrv] bnx2x: Provide VF link status in ndo_get_vf_config (Manish Chopra) [1663271] - [netdrv] bnx2x: Ignore bandwidth attention in single function mode (Manish Chopra) [1663271] - [block] block: remove CONFIG_LBDAF (Ming Lei) [1708452] - [kernel] sched/pelt: Fix warning and clean up IRQ PELT config (Phil Auld) [1637824] - [kernel] sched/pelt: Fix update_blocked_averages() for RT and DL classes (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove remaining traces of NUMA rate-limiting (Phil Auld) [1637824] - [kernel] sched/fair: Fix cpu_util_wake() for 'execl' type workloads (Phil Auld) [1637824] - [kernel] sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Phil Auld) [1637824] - [kernel] sched/numa: Migrate pages to local nodes quicker early in the lifetime of a task (Phil Auld) [1637824] - [mm] mm, sched/numa: Remove rate-limiting of automatic NUMA balancing migration (Phil Auld) [1637824] - [kernel] sched/numa: Avoid task migration for small NUMA improvement (Phil Auld) [1637824] - [mm] mm/migrate: Use spin_trylock() while resetting rate limit (Phil Auld) [1637824] - [kernel] sched/numa: Limit the conditions where scan period is reset (Phil Auld) [1637824] - [kernel] sched/numa: Reset scan rate whenever task moves across nodes (Phil Auld) [1637824] - [kernel] sched/numa: Pass destination CPU as a parameter to migrate_task_rq (Phil Auld) [1637824] - [kernel] sched/numa: Stop multiple tasks from moving to the CPU at the same time (Phil Auld) [1637824] - [kernel] sched/fair: Fix scale_rt_capacity() for SMT (Phil Auld) [1637824] - [kernel] sched/numa: Move task_numa_placement() closer to numa_migrate_preferred() (Phil Auld) [1637824] - [kernel] sched/numa: Use group_weights to identify if migration degrades locality (Phil Auld) [1637824] - [kernel] sched/numa: Update the scan period without holding the numa_group lock (Phil Auld) [1637824] - [kernel] sched/numa: Remove numa_has_capacity() (Phil Auld) [1637824] - [kernel] sched/numa: Modify migrate_swap() to accept additional parameters (Phil Auld) [1637824] - [kernel] sched/numa: Remove unused task_capacity from 'struct numa_stats' (Phil Auld) [1637824] - [kernel] sched/numa: Skip nodes that are at 'hoplimit' (Phil Auld) [1637824] - [kernel] sched/debug: Reverse the order of printing faults (Phil Auld) [1637824] - [kernel] sched/numa: Use task faults only if numa_group is not yet set up (Phil Auld) [1637824] - [kernel] sched/numa: Set preferred_node based on best_cpu (Phil Auld) [1637824] - [kernel] sched/numa: Simplify load_too_imbalanced() (Phil Auld) [1637824] - [kernel] sched/numa: Evaluate move once per node (Phil Auld) [1637824] - [kernel] sched/fair: Remove #ifdefs from scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Clarify sugov_get_util() (Phil Auld) [1637824] - [kernel] sched/sysctl: Remove unused sched_time_avg_ms sysctl (Phil Auld) [1637824] - [kernel] sched/core: Remove the rt_avg code (Phil Auld) [1637824] - [kernel] sched/core: Use PELT for scale_rt_capacity() (Phil Auld) [1637824] - [kernel] sched/cpufreq: Remove sugov_aggregate_util() (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Take time spent in interrupts into account (Phil Auld) [1637824] - [kernel] sched/irq: Add IRQ utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use DL utilization tracking (Phil Auld) [1637824] - [kernel] sched/dl: Add dl_rq utilization tracking (Phil Auld) [1637824] - [kernel] cpufreq/schedutil: Use RT utilization tracking (Phil Auld) [1637824] - [kernel] sched/rt: Add rt_rq utilization tracking (Phil Auld) [1637824] - [kernel] sched/pelt: Move PELT related code in a dedicated file (Phil Auld) [1637824] - [char] ipmi_si: Potential array underflow in hotmod_handler() (Tony Camuso) [1665131] - [char] ipmi_si: Remove hacks for adding a dummy platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Consolidate scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Remove hotmod devices on removal and exit (Tony Camuso) [1665131] - [char] ipmi_si: Remove hardcode IPMI devices by scanning the platform bus (Tony Camuso) [1665131] - [char] ipmi_si: Switch hotmod to use a platform device (Tony Camuso) [1665131] - [char] ipmi: Fix failure on SMBIOS specified devices (Tony Camuso) [1665131] - [char] ipmi: Consolidate the adding of platform devices (Tony Camuso) [1665131] - [char] ipmi_si: Rename addr_type to addr_space to match what it does (Tony Camuso) [1665131] - [char] ipmi_si: Convert some types into unsigned (Tony Camuso) [1665131] - [char] ipmi: ipmi_si_hardcode.c: init si_type array to fix a crash (Tony Camuso) [1665131] - [char] ipmi_si: Fix crash when using hard-coded device (Tony Camuso) [1665131] - [char] ipmi: Use dedicated API for copying a UUID (Tony Camuso) [1665131] - [char] ipmi: Use defined constant for UUID representation (Tony Camuso) [1665131] - [char] ipmi:ssif: Change some pr_xxx to dev_xxx calls (Tony Camuso) [1665131] - [char] ipmi: kcs_bmc: handle devm_kasprintf() failure case (Tony Camuso) [1665131] - [char] ipmi: Fix return value when a message is truncated (Tony Camuso) [1665131] - [char] ipmi: clean an indentation issue, remove extraneous space (Tony Camuso) [1665131] - [char] ipmi: Make the smi watcher be disabled immediately when not needed (Tony Camuso) [1665131] - [char] ipmi: Fix how the lower layers are told to watch for messages (Tony Camuso) [1665131] - [char] ipmi: Fix SSIF flag requests (Tony Camuso) [1665131] - [char] ipmi_si: fix use-after-free of resource->name (Tony Camuso) [1665131] - [char] ipmi: Don't initialize anything in the core until something uses it (Tony Camuso) [1665131] - [char] ipmi:ssif: Fix handling of multi-part return messages (Tony Camuso) [1665131] - [char] ipmi:dmi: Use pr_fmt in the IPMI DMI code (Tony Camuso) [1665131] - [char] ipmi: Remove platform driver overrides and use the id_table (Tony Camuso) [1665131] - [char] ipmi: msghandler: Add and use pr_fmt and dev_fmt, remove PFX (Tony Camuso) [1665131] - [char] ipmi: Use more common logging styles (Tony Camuso) [1665131] - [acpi] ACPI / glue: Split dev_is_platform() out of module for wide use (Tony Camuso) [1665131]- [scsi] scsi: hpsa: bump driver version (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: remove timeout from TURs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: clean up two indentation issues (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: mark expected switch fall-throughs (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: switch to generic DMA API (Joseph Szczypek) [1672669] - [scsi] scsi: hpsa: Use vmemdup_user to replace the open code (Joseph Szczypek) [1672669] - [netdrv] ibmvnic: Add device identification to requested IRQs (Steve Best) [1665717] - [crypto] crypto: authenc - fix parsing key with misaligned rta_len (Herbert Xu) [1707546] - [block] block: don't drain in-progress dispatch in blk_cleanup_queue() (Ming Lei) [1694879] - [block] blk-mq: move cancel of hctx->run_work into blk_mq_hw_sysfs_release (Ming Lei) [1694879] - [include] blk-mq: always free hctx after request queue is freed (Ming Lei) [1694879] - [block] blk-mq: split blk_mq_alloc_and_init_hctx into two parts (Ming Lei) [1694879] - [block] blk-mq: free hw queue's resource in hctx's release handler (Ming Lei) [1694879] - [block] blk-mq: move cancel of requeue_work into blk_mq_release (Ming Lei) [1694879] - [block] blk-mq: grab .q_usage_counter when queuing request from plug code path (Ming Lei) [1694879] - [block] block: fix use-after-free on gendisk (Ming Lei) [1694879] - [netdrv] bonding: fix event handling for stacked bonds (Jarod Wilson) [1708390] - [netdrv] bonding: show full hw address in sysfs for slave entries (Jarod Wilson) [1708390] - [netdrv] bonding: fix PACKET_ORIGDEV regression (Jarod Wilson) [1708390] - [netdrv] bonding: check slave set command firstly (Jarod Wilson) [1708390] - [netdrv] bonding: count master 3ad stats separately (Jarod Wilson) [1708390] - [netdrv] bonding: add support for xstats and export 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: add 3ad stats (Jarod Wilson) [1708390] - [netdrv] bonding: 3ad: remove bond_3ad_rx_indication's length argument (Jarod Wilson) [1708390] - [netdrv] bonding: adjust style of bond_3ad_rx_indication (Jarod Wilson) [1708390] - [netdrv] bonding: update nest level on unlink (Jarod Wilson) [1708390] - [netdrv] bonding: fix indentation issues, remove extra spaces (Jarod Wilson) [1708390] - [netdrv] bonding: convert to DEFINE_SHOW_ATTRIBUTE (Jarod Wilson) [1708390] - [netdrv] bonding: fix 802.3ad state sent to partner when unbinding slave (Jarod Wilson) [1708390] - [netdrv] bonding: use netpoll_poll_dev() helper (Jarod Wilson) [1708390] - [net] netpoll: do not test NAPI_STATE_SCHED in poll_one_napi() (Jarod Wilson) [1708390] - [net] netpoll: make ndo_poll_controller() optional (Jarod Wilson) [1708390] - [netdrv] bonding: don't cast const buf in sysfs store (Jarod Wilson) [1708390] - [netdrv] netdevsim: fix sa_idx out of bounds check (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: add ipsec offload API test (Ivan Vecera) [1708373] - [netdrv] netdevsim: add ipsec offload testing (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use dummydev as a test device (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: clear the return code at start of ipsec test (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: use a local IP address for IPsec tests (Ivan Vecera) [1708373] - [tools] selftests: rtnetlink: hide complaint from terminated monitor (Ivan Vecera) [1708373] - [powerpc] powerpc/watchdog: Use hrtimers for per-CPU heartbeat (Steve Best) [1708327] - [netdrv] ixgbevf: Update driver version for RHEL-8.1.0 (Ken Cox) [1659166] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659166] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Ken Cox) [1659166] - [netdrv] ixgbevf: add support for software timestamps (Ken Cox) [1659166] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659166] - [netdrv] ixgbevf: off by one in ixgbevf_ipsec_tx() (Ken Cox) [1659166] - [netdrv] ixgbevf: fix msglen for ipsec mbx messages (Ken Cox) [1659166] - [netdrv] ixgbevf: remove ndo_poll_controller (Ken Cox) [1659166] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659166] - [netdrv] ixgbevf: enable VF IPsec offload operations (Ken Cox) [1659166] - [netdrv] ixgbevf: add VF IPsec offload code (Ken Cox) [1659166] - [netdrv] ixgbevf: add defines for IPsec offload request (Ken Cox) [1659166] - [netdrv] ixgbevf: VF2VF TCP RSS (Ken Cox) [1659166] - [netdrv] ixgbe: Update driver version for RHEL-8.1.0 (Ken Cox) [1659164] - [netdrv] intel: correct return from set features callback (Ken Cox) [1659164] - [netdrv] ixgbe: don't do any AF_XDP zero-copy transmit if netif is not OK (Ken Cox) [1659164] - [netdrv] ixgbe: fix potential RX buffer starvation for AF_XDP (Ken Cox) [1659164] - [netdrv] ixgbe: fix older devices that do not support IXGBE_MRQC_L3L4TXSWEN (Ken Cox) [1659164] - [netdrv] net: bpf: remove XDP_QUERY_XSK_UMEM enumerator (Ken Cox) [1659164] - [netdrv] ixgbe: Use struct_size() helper (Ken Cox) [1659164] - [netdrv] ixgbe: remove magic constant in ixgbe_reset_hw_82599() (Ken Cox) [1659164] - [netdrv] ixgbe: use mii_bus to handle MII related ioctls (Ken Cox) [1659164] - [netdrv] ixgbe: register a mdiobus (Ken Cox) [1659164] - [netdrv] drivers: net: intel: use secpath helpers in more places (Ken Cox) [1659164] - [netdrv] ixgbe: Fix race when the VF driver does a reset (Ken Cox) [1659164] - [netdrv] ixgbe: recognize 1000BaseLX SFP modules as 1Gbps (Ken Cox) [1659164] - [netdrv] ixgbe: Replace synchronize_sched() with synchronize_rcu() (Ken Cox) [1659164] - [netdrv] i40e/ixgbe/igb: fail on new WoL flag setting WAKE_MAGICSECURE (Ken Cox) [1659164] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (Ken Cox) [1659164] - [netdrv] ixgbe: allow IPsec Tx offload in VEPA mode (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear_bit on xdp_ring->state if xdp_ring is null (Ken Cox) [1659164] - [netdrv] ixgbe: fix MAC anti-spoofing filter after VFLR (Ken Cox) [1659164] - [netdrv] ixgbe/ixgbevf: fix XFRM_ALGO dependency (Ken Cox) [1659164] - [netdrv] drivers: net: remove inclusion when not needed (Ken Cox) [1659164] - [netdrv] ixgbe: check return value of napi_complete_done() (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Tx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Tx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: add AF_XDP zero-copy Rx support (Ken Cox) [1659164] - [netdrv] ixgbe: move common Rx functions to ixgbe_txrx_common.h (Ken Cox) [1659164] - [netdrv] ixgbe: added Rx/Tx ring disable/enable functions (Ken Cox) [1659164] - [netdrv] ixgbe: Fix crash with VFs and flow director on interface flap (Ken Cox) [1659164] - [netdrv] ixgbe: remove redundant function ixgbe_fw_recovery_mode() (Ken Cox) [1659164] - [netdrv] ixgbe: Fix ixgbe TX hangs with XDP_TX beyond queue limit (Ken Cox) [1659164] - [netdrv] ixgbe: remove ndo_poll_controller (Ken Cox) [1659164] - [netdrv] intel-ethernet: use correct module license (Ken Cox) [1659164] - [netdrv] ixgbe: fix the return value for unsupported VF offload (Ken Cox) [1659164] - [netdrv] ixgbe: disallow IPsec Tx offload when in SR-IOV mode (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload request message handling (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec offload enable flag (Ken Cox) [1659164] - [netdrv] ixgbe: add VF IPsec management (Ken Cox) [1659164] - [netdrv] ixgbe: prep IPsec constants for later use (Ken Cox) [1659164] - [netdrv] ixgbe: reload IPsec IP table after sa tables (Ken Cox) [1659164] - [netdrv] ixgbe: don't clear IPsec sa counters on HW clearing (Ken Cox) [1659164] - [netdrv] ixgbe: firmware recovery mode (Ken Cox) [1659164] - [netdrv] ixgbe: fix driver behaviour after issuing VFLR (Ken Cox) [1659164] - [netdrv] ixgbe: Prevent unsupported configurations with XDP (Ken Cox) [1659164] - [netdrv] ixgbe: Refactor queue disable logic to take completion time into account (Ken Cox) [1659164] - [netdrv] ixgbe: Reorder Tx/Rx shutdown to reduce time needed to stop device (Ken Cox) [1659164] - [netdrv] ixgbe: add ipsec security registers into ethtool register dump (Ken Cox) [1659164] - [netdrv] ixgbe: Do not allow LRO or MTU change with XDP (Ken Cox) [1659164] - [wireless] brcmfmac: add subtype check for event handling in data path (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [wireless] brcmfmac: assure SSID length from firmware is limited (Stanislaw Gruszka) [1705386] {CVE-2019-9500} - [base] driver core: Postpone DMA tear-down until after devres release (Maurizio Lombardi) [1698053]- [of] of: Add missing exports of node name compare functions (Neil Horman) [1665660] - [of] of: add node name compare helper functions (Neil Horman) [1665660] - [include] gpio: Add API to explicitly name a consumer (Neil Horman) [1665660] - [drivers] spi: spi-gpio: fix SPI_CS_HIGH capability (Neil Horman) [1665660] - [drivers] spi: use gpio[d]_set_value_cansleep for setting chipselect GPIO (Neil Horman) [1665660] - [drivers] spi: gpio: Advertise support for SPI_CS_HIGH (Neil Horman) [1665660] - [include] spi: support inter-word delay requirement for devices (Neil Horman) [1665660] - [drivers] spi: dw: Fix default polarity of native chipselect (Neil Horman) [1665660] - [drivers] spi: Support high CS when using descriptors (Neil Horman) [1665660] - [include] spi: Go back to immediate teardown (Neil Horman) [1665660] - [drivers] spi: dw: change snprintf to scnprintf for possible overflow (Neil Horman) [1665660] - [drivers] spi: dw: fix warning unused variable 'ret' (Neil Horman) [1665660] - [include] spi: core: avoid waking pump thread from spi_sync instead run teardown delayed (Neil Horman) [1665660] - [drivers] spi: dw: Convert to use CS GPIO descriptors (Neil Horman) [1665660] - [include] spi: Optionally use GPIO descriptors for CS GPIOs (Neil Horman) [1665660] - [drivers] spi: dw: fix potential variable assignment error (Neil Horman) [1665660] - [drivers] spi: Use of_node_name_eq for node name comparisons (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add ACPI support (Neil Horman) [1665660] - [include] spi: add support for octal mode I/O data transfer (Neil Horman) [1665660] - [drivers] spi: Fix formatting of header block (Neil Horman) [1665660] - [drivers] spi: Fix core transfer waits after slave support (Neil Horman) [1665660] - [drivers] spi: Deal with slaves that return from transfer_one() unfinished (Neil Horman) [1665660] - [include] spi: gpio: Support 3WIRE high-impedance turn-around (Neil Horman) [1665660] - [drivers] spi: Make GPIO CSs honour the SPI_NO_CS flag (Neil Horman) [1665660] - [drivers] dw: spi: add support for Amazon's Alpine spi controller (Neil Horman) [1665660] - [include] spi: Add driver_override SPI device attribute (Neil Horman) [1665660] - [include] spi: make OF helper available for others (Neil Horman) [1665660] - [include] spi: switch to SPDX license identifier (Neil Horman) [1665660] - [drivers] spi: always use software fallback for SPI_CS_WORD when using cs_gio (Neil Horman) [1665660] - [drivers] spi: add software implementation for SPI_CS_WORD (Neil Horman) [1665660] - [include] spi: add new SPI_CS_WORD flag (Neil Horman) [1665660] - [drivers] spi: gpio: No MISO does not imply no RX (Neil Horman) [1665660] - [drivers] spi: dw: support 4-16 bits per word (Neil Horman) [1665660] - [drivers] spi: spi-gpio: Remove set but not used variable 'pdata' (Neil Horman) [1665660] - [drivers] spi: Do not print a message if spi_controller_{suspend,resume}() fails (Neil Horman) [1665660] - [drivers] spi: gpio: Fix copy-and-paste error (Neil Horman) [1665660] - [drivers] spi: dw-mmio: avoid hardcoded field mask (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Jaguar2 support (Neil Horman) [1665660] - [include] spi: Introduce one new field to set word delay (Neil Horman) [1665660] - [drivers] spi: Fix double IDR allocation with DT aliases (Neil Horman) [1665660] - [drivers] spi: fix IDR collision on systems with both fixed and dynamic SPI bus numbers (Neil Horman) [1665660] - [drivers] spi: spi-gpio: add SPI_3WIRE support (Neil Horman) [1665660] - [drivers] spi: add flags parameter to txrx_word function pointers (Neil Horman) [1665660] - [drivers] spi: dw-mmio: add MSCC Ocelot support (Neil Horman) [1665660] - [drivers] spi: dw: export dw_spi_set_cs (Neil Horman) [1665660] - [drivers] spi: dw: allow providing own set_cs callback (Neil Horman) [1665660] - [drivers] spi: dw: fix possible race condition (Neil Horman) [1665660] - [acpi] ACPI / APD: Add clock frequency for Hisilicon Hip08 SPI controller (Neil Horman) [1665660] - [md] md/raid: raid5 preserve the writeback action after the parity check (Nigel Croxon) [1702309] - [md] Revert "Don't jump to compute_result state from check_result state" (Nigel Croxon) [1702309] - [md] md: return -ENODEV if rdev has no mddev assigned (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to handle_active_stripes (Nigel Croxon) [1702309] - [md] md: add __acquires/__releases annotations to (un)lock_two_stripes (Nigel Croxon) [1702309] - [md] md: mark md_cluster_mod static (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_sync (Nigel Croxon) [1702309] - [md] md: use correct type in super_1_load (Nigel Croxon) [1702309] - [md] md: use correct types in md_bitmap_print_sb (Nigel Croxon) [1702309] - [md] md: add a missing endianness conversion in check_sb_changes (Nigel Croxon) [1702309] - [md] md: add mddev->pers to avoid potential NULL pointer dereference (Nigel Croxon) [1702309] - [md] md: batch flush requests. (Nigel Croxon) [1702309] - [md] Revert "MD: fix lock contention for flush bios" (Nigel Croxon) [1702309] - [md] Don't jump to compute_result state from check_result state (Nigel Croxon) [1702309] - [netdrv] bnxt_en: Reset device on RX buffer errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Improve RX consumer index validity check. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Drop oversize TX packets to prevent errors. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Wait longer for the firmware message response to complete. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix typo in firmware message timeout logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return relevant error code when offload fails (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for mdio read/write to external PHY (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Propagate trusted VF attribute to firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for BCM957504 (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.47. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable interrupts when allocating CP rings or NQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix context memory allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ring checking logic on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust default RX coalescing ticks to 10 us. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Support for 64-bit flow handle. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase context memory allocations on 57500 chips for RDMA. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add Level 2 context memory paging support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Enhance bnxt_alloc_ring()/bnxt_free_ring(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for 2nd firmware message channel. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Introduce bnxt_get_hwrm_resp_addr & bnxt_get_hwrm_seq_id routines. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Avoid arithmetic on void * pointer. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use macros for firmware message doorbell offsets. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Set hwrm_intr_seq_id value to its inverted value. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.33. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix ethtool self-test loopback. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: query force speeds before disabling autoneg mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not free port statistics buffer when device is down. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Save ring statistics before reset. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Return linux standard errors in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Don't set ETS on unused TCs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add ethtool -S priority counters. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add SR-IOV support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Reserve 1 stat_ctx for RDMA driver. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not modify max_stat_ctxs after RDMA driver requests/frees stat_ctxs (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get rid of num_stat_ctxs variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_get_avail_cp_rings_for_en() helper function. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Store the maximum NQs available on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove printing of hwrm message (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix _bnxt_get_max_rings() for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix NQ/CP rings accounting on the new 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Keep track of reserved IRQs. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix CNP CoS queue regression. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix filling time in bnxt_fill_coredump_record() (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add software "missed_irqs" counter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Workaround occasional TX timeout on 57500 A0. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Disable RDMA support on the 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix RSS context allocation. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Copy and paste bug in extended tx_stats (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PCI ID for BCM57508 device. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new NAPI poll function for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_poll_work(). (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add coalescing setup for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use bnxt_cp_ring_info struct pointer as parameter for RX path. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add RSS support for 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Increase RSS context array count and skip ring groups on 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate/Free CP rings for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify bnxt_ring_alloc_send_msg() to support 57500 chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add helper functions to get firmware CP ring ID. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Allocate completion ring structures for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Modify the ring reservation functions for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust MSIX and ring groups for 57500 series chips. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Re-structure doorbells. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add 57500 new chip ID and basic structures. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Configure context memory on new devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Check context memory requirements from firmware. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new flags to setup new page table PTE bits on newer devices. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Refactor bnxt_ring_struct. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update interrupt coalescing logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add maximum extended request length fw message support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add additional extended port statistics. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface spec. to 1.10.0.3. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Remove unnecessary unsigned integer comparison and initialize variable (Selvin Xavier) [1664477] - [netdrv] bnxt_en: get the reduced max_irqs by the ones used by RDMA (Selvin Xavier) [1664477] - [netdrv] bnxt_en: free hwrm resources, if driver probe fails. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix VNIC reservations on the PF. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add a driver specific gre_ver_check devlink parameter. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use msix_vec_per_pf_max and msix_vec_per_pf_min devlink params. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: return proper error when FW returns HWRM_ERR_CODE_RESOURCE_ACCESS_DENIED (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Use ignore_ari devlink parameter (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix TX timeout during netpoll. (Selvin Xavier) [1664477] - [netdrv] bnxt: remove ndo_poll_controller (Selvin Xavier) [1664477] - [netdrv] bnxt_en: don't try to offload VLAN 'modify' action (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'addr_type' (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove set but not used variable 'rx_stats' (Selvin Xavier) [1664477] - [netdrv] net: bnxt: Fix a uninitialized variable warning. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: take coredump_record structure off stack (Selvin Xavier) [1664477] - [netdrv] bnxt_en: avoid string overflow for record->system_name (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Fix strcpy() warnings in bnxt_ethtool.c (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Do not use the CNP CoS queue for networking traffic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add DCBNL DSCP application protocol support. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add hwmon sysfs support to read temperature (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Notify firmware about IF state changes. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Move firmware related flags to a new fw_cap field in struct bnxt. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add BNXT_NEW_RM() macro. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add support for ethtool get dump. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update RSS setup and GRO-HW logic according to the latest spec. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add new VF resource allocation strategy mode. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add PHY retry logic. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add external loopback test to ethtool selftest. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Adjust timer based on ethtool stats-block-usecs settings. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Update firmware interface version to 1.9.2.25. (Selvin Xavier) [1664477] - [netdrv] bnxt_en: combine 'else if' and 'else' into single branch (Selvin Xavier) [1664477] - [netdrv] bnxt_en: remove redundant debug register dma mem allocation (Selvin Xavier) [1664477] - [netdrv] bnxt_en: Add bnxt_en initial params table and register it. (Selvin Xavier) [1664477] - [netdrv] sfc: mcdi_port: Mark expected switch fall-through (Jarod Wilson) [1685478] - [netdrv] sfc: ensure recovery after allocation failures (Jarod Wilson) [1685478] - [netdrv] sfc: Replace dev_kfree_skb_any by dev_consume_skb_any (Jarod Wilson) [1685478] - [netdrv] sfc: add bundle partition definitions to mtd (Jarod Wilson) [1685478] - [netdrv] sfc: Replace spin_is_locked() with lockdep (Jarod Wilson) [1685478] - [netdrv] sfc: remove ndo_poll_controller (Jarod Wilson) [1685478] - [iommu] iommu/amd: Set exclusion range correctly (Jerry Snitselaar) [1702766] - [iommu] iommu/amd: Reserve exclusion range in iova-domain (Jerry Snitselaar) [1694835] - [scsi] scsi: mpt3sas: Fix kernel panic during expander reset (Tomas Henzl) [1677693] - [mm] mm/vmstat.c: fix /proc/vmstat format for CONFIG_DEBUG_TLBFLUSH=y CONFIG_SMP=n (Waiman Long) [1705607] - [mm] x86/mm: Drop usage of __flush_tlb_all() in kernel_physical_mapping_init() (Waiman Long) [1705607] - [include] x86/mm: Validate kernel_physical_mapping_init() PTE population (Waiman Long) [1705607] - [include] generic/pgtable: Introduce set_pte_safe() (Waiman Long) [1705607] - [include] generic/pgtable: Introduce {p4d,pgd}_same() (Waiman Long) [1705607] - [include] generic/pgtable: Make {pmd, pud}_same() unconditionally available (Waiman Long) [1705607] - [mm] percpu: stop printing kernel addresses (Waiman Long) [1705607] - [x86] x86/speculation: Prevent deadlock on ssb_state::lock (Waiman Long) [1705607] - [fs] debugfs: fix use-after-free on symlink traversal (Waiman Long) [1705607] - [lib] debugobjects: avoid recursive calls with kmemleak (Waiman Long) [1705607] - [mm] mm/swapfile.c: use kvzalloc for swap_info_struct allocation (Waiman Long) [1705607] - [mm] hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444! (Waiman Long) [1705607] - [include] watchdog/core: Add missing prototypes for weak functions (Waiman Long) [1705607] - [mm] memory_hotplug: cond_resched in __remove_pages (Waiman Long) [1705607] - [kernel] genirq: Fix race on spurious interrupt detection (Waiman Long) [1705607] - [kernel] printk: Fix panic caused by passing log_buf_len to command line (Waiman Long) [1705607] - [mm] mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback (Waiman Long) [1705607] - [mm] mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly (Waiman Long) [1705607] - [mm] hugetlbfs: dirty pages as they are added to pagecache (Waiman Long) [1705607] - [fs] mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range() (Waiman Long) [1705607] - [kernel] sched/fair: Fix the min_vruntime update logic in dequeue_entity() (Waiman Long) [1705607] - [mm] x86/mm/pat: Disable preemption around __flush_tlb_all() (Waiman Long) [1705607] - [x86] x86/corruption-check: Fix panic in memory_corruption_check() when boot option without value is provided (Waiman Long) [1705607] - [x86] x86/time: Correct the attribute on jiffies' definition (Waiman Long) [1705607] - [x86] x86/percpu: Fix this_cpu_read() (Waiman Long) [1705607] - [x86] x86/tsc: Force inlining of cyc2ns bits (Waiman Long) [1705607] - [mm] mm/migrate.c: split only transparent huge pages when allocation fails (Waiman Long) [1705607] - [mm] mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2 (Waiman Long) [1705607] - [mm] mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE (Waiman Long) [1705607] - [mm] percpu: stop leaking bitmap metadata blocks (Waiman Long) [1705607] - [lib] vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced pointers (Waiman Long) [1705607] - [mm] mm/vmstat.c: fix outdated vmstat_text (Waiman Long) [1705607] - [base] PM / core: Clear the direct_complete flag on errors (Waiman Long) [1705607] - [tools] x86/vdso: Fix vDSO syscall fallback asm constraint regression (Waiman Long) [1705607] - [x86] x86/vdso: Only enable vDSO retpolines when enabled and supported (Waiman Long) [1705607] - [tools] selftests/x86: Add clock_gettime() tests to test_vdso (Waiman Long) [1705607] - [x86] x86/vdso: Fix asm constraints on vDSO syscall fallbacks (Waiman Long) [1705607] - [drivers] clocksource/drivers/timer-atmel-pit: Properly handle error cases (Waiman Long) [1705607] - [mm] mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly (Waiman Long) [1705607] - [mm] mm, thp: fix mlocking THP page with migration enabled (Waiman Long) [1705607] - [mm] mm: migration: fix migration of huge PMD shared pages (Waiman Long) [1705607] - [net] net/smc: improve smc_conn_create reason codes (Philipp Rudo) [1703471] - [net] net/smc: improve smc_listen_work reason codes (Philipp Rudo) [1703471] - [net] net/smc: code cleanup smc_listen_work (Philipp Rudo) [1703471] - [net] net/smc: cleanup of get vlan id (Philipp Rudo) [1703471] - [net] net/smc: consolidate function parameters (Philipp Rudo) [1703471] - [net] net/smc: check for ip prefix and subnet (Philipp Rudo) [1703471] - [net] net/smc: fallback to TCP after connect problems (Philipp Rudo) [1703471] - [net] net/smc: nonblocking connect rework (Philipp Rudo) [1703471] - [net] net/smc: move unhash before release of clcsock (Philipp Rudo) [1703471] - [net] net/smc: fix return code from FLUSH command (Philipp Rudo) [1703471] - [net] net/smc: propagate file from SMC to TCP socket (Philipp Rudo) [1703471] - [net] net/smc: fix a NULL pointer dereference (Philipp Rudo) [1703471] - [net] net/smc: wait for pending work before clcsock release_sock (Philipp Rudo) [1703471] - [net] net/smc: allow pnetid-less configuration (Philipp Rudo) [1700797] - [net] net/smc: allow PCI IDs as ib device names in the pnet table (Philipp Rudo) [1700797] - [net] net/smc: add pnet table namespace support (Philipp Rudo) [1700797] - [net] net/smc: add smcd support to the pnet table (Philipp Rudo) [1700797] - [net] net/smc: rework pnet table (Philipp Rudo) [1700797] - [net] net/smc: cleanup for smcr_tx_sndbuf_nonempty (Philipp Rudo) [1700797]- [tools] tools power turbostat: Override CFLAGS assignments and add LDFLAGS to build command (Steve Best) [1705959] - [tools] tools/power turbostat: update version number (Steve Best) [1705959] - [tools] tools/power turbostat: Add checks for failure of fgets() and fscanf() (Steve Best) [1705959] - [tools] tools/power turbostat: Warn on bad ACPI LPIT data (Steve Best) [1705959] - [tools] tools/power turbostat: Also read package power on AMD F17h (Zen) (Steve Best) [1705959] - [tools] tools/power turbostat: Add support for AMD Fam 17h (Zen) RAPL (Steve Best) [1705959] - [tools] tools/power turbostat: Do not display an error on systems without a cpufreq driver (Steve Best) [1705959] - [tools] tools/power turbostat: Add Die column (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CNL-specific code (Steve Best) [1705959] - [tools] tools/power turbostat: Cleanup CC3-skip code (Steve Best) [1705959] - [tools] tools/power turbostat: Restore ability to execute in topology-order (Steve Best) [1705959] - [tools] tools/power turbostat: fix goldmont C-state limit decoding (Steve Best) [1705959] - [tools] tools/power turbostat: reduce debug output (Steve Best) [1705959] - [tools] tools/power turbosat: fix AMD APIC-id output (Steve Best) [1705959] - [mmc] mmc: sdhci-iproc: Add ACPI support (Mark Langsdorf) [1576966] - [mmc] mmc: sdhci-pltfm: Convert DT properties to generic device properties (Mark Langsdorf) [1576966] - [tty] serial: 8250_dw: Add ACPI support for uart on Broadcom SoC (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: Add clock-frequency property (Mark Langsdorf) [1576966] - [watchdog] watchdog: sp805: set WDOG_HW_RUNNING when appropriate (Mark Langsdorf) [1576966] - [thermal] thermal: broadcom: Add Stingray thermal driver (Mark Langsdorf) [1576966] - [hv] hv: vmbus: Change server monitor_pages index to 0 (Mohammed Gamal) [1691383] - [kernel] hv: vmbus: Expose counters for interrupts and full conditions (Mohammed Gamal) [1691383] - [kernel] vmbus: Switch to use new generic UUID API (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Check for ring when getting debug info (Mohammed Gamal) [1691383] - [x86] hyper-v: move synic/stimer control structures definitions to hyperv-tlfs.h (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Return -EINVAL for the sys files for unopened channels (Mohammed Gamal) [1691383] - [hv] x86, hyperv: remove PCI dependency (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Offload the handling of channels to two workqueues (Mohammed Gamal) [1691383] - [hv] hv: vmbus: check the creation_status in vmbus_establish_gpadl() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove the useless API vmbus_get_outgoing_channel() (Mohammed Gamal) [1691383] - [hv] hv: kvp: Use u to print U32 (Mohammed Gamal) [1691383] - [hv] hv_utils: update name in struct hv_driver util_drv (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Get rid of unnecessary state in hv_context (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the recent regression caused by incorrect clean-up (Mohammed Gamal) [1691383] - [hv] hv_balloon: Replace spin_is_locked() with lockdep (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use cpumask_var_t for on-stack cpu mask (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix two "this statement may fall through" warnings (Mohammed Gamal) [1691383] - [hv] hv: kvp: Fix the indentation of some "break" statements (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the descriptions of some function parameters (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Use get/put_cpu() in vmbus_connect() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix synic per-cpu context initialization (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Cleanup synic memory free path (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove use of slow_virt_to_phys() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: add numa_node to sysfs (Mohammed Gamal) [1691383] - [x86] hv: vmbus: Get rid of MSR access from vmbus_drv.c (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the issue with freeing up hv_ctl_table_hdr (Mohammed Gamal) [1691383] - [hv] hv: vmus: Fix the check for return value from kmsg get dump buffer (Mohammed Gamal) [1691383] - [hv] hv: Send one page worth of kmsg dump over Hyper-V during panic (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Remove x86 MSR refs in arch independent code (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Fix the offer_in_progress in vmbus_process_offer() (Mohammed Gamal) [1691383] - [hv] hv: vmbus: Add comments on ring buffer signaling (Mohammed Gamal) [1691383] - [video] use the new async probing feature for the hyperv drivers (Mohammed Gamal) [1691383] - [rpmspec] kernel-packaging: Remove kernel files from kernel-modules-extra package (Prarit Bhargava) [1705216] - [fs] xfs: don't ever put nlink > 0 inodes on the unlinked list (Brian Foster) [1693063] - [fs] xfs: reserve blocks for ifree transaction during log recovery (Brian Foster) [1693063] - [fs] xfs: rename m_inotbt_nores to m_finobt_nores (Brian Foster) [1693063] - [net] xfrm: Honor original L3 slave device in xfrmi policy lookup (Herbert Xu) [1702198] - [net] xfrm: Fix inbound traffic via XFRM interfaces across network namespaces (Herbert Xu) [1702198] - [net] xfrm: Make set-mark default behavior backward compatible (Herbert Xu) [1702198] - [net] xfrm: remove unnecessary check in xfrmi_get_stats64 (Herbert Xu) [1702198] - [net] xfrm: fix gro_cells leak when remove virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Make function xfrmi_get_link_net() static (Herbert Xu) [1702198] - [net] xfrm: fix ptr_ret.cocci warnings (Herbert Xu) [1702198] - [net] xfrm: Return detailed errors from xfrmi_newlink (Herbert Xu) [1702198] - [net] xfrm: Allow xfrmi if_id to be updated by UPDSA (Herbert Xu) [1702198] - [net] xfrm: Remove xfrmi interface ID from flowi (Herbert Xu) [1702198] - [net] xfrm: Allow Set Mark to be Updated Using UPDSA (Herbert Xu) [1702198] - [net] xfrm: Add virtual xfrm interfaces (Herbert Xu) [1702198] - [net] xfrm: Add a new lookup key to match xfrm interfaces. (Herbert Xu) [1702198] - [net] flow: Extend flow informations with xfrm interface id. (Herbert Xu) [1702198] - [net] xfrm: Extend the output_mark to support input direction and masking. (Herbert Xu) [1702198] - [fs] xfs: don't account extra agfl blocks as available (Brian Foster) [1656687] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't fail IT nexus reset for Open Reject timeout (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Don't hard reset disk during controller reset (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Support all RAS events with MSI interrupts (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: allocate different SAS address for directly attached situation (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Adjust the printk format of functions hisi_sas_init_device() (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Fix for setting the PHY linkrate when disconnected (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: Remedy inconsistent PHY down state in software (Xiaojun Tan) [1702614] - [scsi] scsi: hisi_sas: add host reset interface for test (Xiaojun Tan) [1702614] - [hid] HID: Increase maximum report size allowed by hid_field_extract() (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove data[128] usage on stack when sending HBM request (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: move doorbell writing before flush (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Optimize writing ipc message from queue (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Ice Lake mobile (Tony Camuso) [1688112] - [hid] HID: increase maximum global item tag report size to 256 (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: Enable Sunrise Point-H ish driver (Tony Camuso) [1688112] - [hid] HID: intel-ish-hid: remove redundant variable num_frags (Tony Camuso) [1688112]- [s390] Disable kexec_load via kernel_lockdown for s390 (Philipp Rudo) [1659399] - [s390] s390/ipl: Provide has_secure sysfs attribute (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Create ipl report and pass to next kernel (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Signature verification prototype (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Load new kernel to absolute 0 (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Unify loader code (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Simplify parmarea access (Philipp Rudo) [1659399] - [s390] s390/purgatory: Omit use of bin2c (Philipp Rudo) [1659399] - [s390] s390/purgatory: Reduce purgatory size (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix detection of text segment in ELF loader (Philipp Rudo) [1659399] - [s390] s390/kexec_file: Fix potential segment overlap in ELF loader (Philipp Rudo) [1659399] - [s390] s390/zcore: Rename ipl_block to mitigate name collision (Philipp Rudo) [1659399] - [s390] s390/boot: pad bzImage to 4K (Philipp Rudo) [1659399] - [s390] s390/ipl: add helper functions to create an IPL report (Philipp Rudo) [1659399] - [s390] s390/ipl: read IPL report at early boot (Philipp Rudo) [1659399] - [s390] s390/ipl: add definitions for the IPL report block (Philipp Rudo) [1659399] - [s390] s390/ipl: provide uapi header for list directed IPL (Philipp Rudo) [1659399] - [s390] s390/ipl: make ipl_info less confusing (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section compile time validation (Philipp Rudo) [1659399] - [s390] s390: move ipl block to .boot.preserved.data section (Philipp Rudo) [1659399] - [s390] s390: introduce .boot.preserved.data section (Philipp Rudo) [1659399] - [mm] s390: clean up redundant facilities list setup (Philipp Rudo) [1659399] - [s390] s390/als: remove duplicated in-place implementation of stfle (Philipp Rudo) [1659399] - [netdrv] fm10k: Fix a potential NULL pointer dereference (Neil Horman) [1659172] - [netdrv] fm10k: use struct_size() in kzalloc() (Neil Horman) [1659172] - [netdrv] fm10k: TRIVIAL cleanup of extra spacing in function comment (Neil Horman) [1659172] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Neil Horman) [1659172] - [netdrv] fm10k: bump driver version to match out-of-tree release (Neil Horman) [1659172] - [netdrv] fm10k: add missing device IDs to the upstream driver (Neil Horman) [1659172] - [netdrv] fm10k: ensure completer aborts are marked as non-fatal after a resume (Neil Horman) [1659172] - [netdrv] fm10k: fix SM mailbox full condition (Neil Horman) [1659172] - [netdrv] fm10k: remove ndo_poll_controller (Neil Horman) [1659172] - [netdrv] intel-ethernet: use correct module license (Neil Horman) [1659172] - [scsi] Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO" (Nilesh Javali) [1701545] - [tools] tools: introduce test_and_clear_bit (Peter Xu) [1694926] - [net] bridge: fix netlink export of vlan_stats_per_port option (Ivan Vecera) [1703551] - [net] bridge: fix vlan stats use-after-free on destruction (Ivan Vecera) [1703551] - [tools] headers uapi: Update linux/if_link.h header copy (Ivan Vecera) [1703551] - [net] bridge: fix a possible memory leak in __vlan_add (Ivan Vecera) [1703551] - [net] bridge: add support for per-port vlan stats (Ivan Vecera) [1703551] - [net] bridge: mcast: Default back to multicast enabled state (Ivan Vecera) [1703551] - [net] bridge: pack net_bridge better (Ivan Vecera) [1703551] - [net] bridge: convert mtu_set_by_user to a bit (Ivan Vecera) [1703551] - [net] bridge: convert neigh_suppress_enabled option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert mcast options to bits (Ivan Vecera) [1703551] - [net] bridge: convert and rename mcast disabled (Ivan Vecera) [1703551] - [net] bridge: convert group_addr_set option to a bit (Ivan Vecera) [1703551] - [net] bridge: convert nf call options to bits (Ivan Vecera) [1703551] - [net] bridge: add bitfield for options and convert vlan opts (Ivan Vecera) [1703551] - [net] bridge: make struct opening bracket consistent (Ivan Vecera) [1703551] - [net] Add netif_is_gretap()/netif_is_ip6gretap() (Ivan Vecera) [1701208] - [net] sched: register callbacks for indirect tc block binds (Ivan Vecera) [1701214] - [tools] selftests: tc-testing: fix tunnel_key failure if dst_port is unspecified (Ivan Vecera) [1701210] - [tools] selftests: tc-testing: drop test on missing tunnel key id (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Don't dump dst port if it wasn't set (Ivan Vecera) [1701210] - [net] sched: act_tunnel_key: Allow key-less tunnels (Ivan Vecera) [1701210] - [net] ethtool: Added support for 50Gbps per lane link modes (Ivan Vecera) [1701215] - [net] ip_gre: fix parsing gre header in ipgre_err (Hangbin Liu) [1702212] - [net] vxlan: Free a leaked vetoed multicast rdst (Ivan Vecera) [1691695] - [net] switchdev: Add extack argument to call_switchdev_notifiers() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add extack to switchdev operations (Ivan Vecera) [1691695] - [net] net: Add extack argument to ndo_fdb_add() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Delete remote after update (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Postpone vxlan_config_apply() (Ivan Vecera) [1691695] - [netdrv] vxlan: changelink: Inline vxlan_dev_configure() (Ivan Vecera) [1691695] - [netdrv] vxlan: Allow vetoing of FDB notifications (Ivan Vecera) [1691695] - [netdrv] vxlan: Have vxlan_fdb_replace() save original rdst value (Ivan Vecera) [1691695] - [netdrv] vxlan: Split vxlan_fdb_update() in two (Ivan Vecera) [1691695] - [netdrv] vxlan: Move up vxlan_fdb_free(), vxlan_fdb_destroy() (Ivan Vecera) [1691695] - [net] bridge: Add br_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_clear_offload() (Ivan Vecera) [1691695] - [netdrv] vxlan: Add vxlan_fdb_replay() (Ivan Vecera) [1691695] - [net] route: add support for directed broadcast forwarding (Xin Long) [1562384] - [net] erspan: build the header with the right proto according to erspan_ver (Xin Long) [1663862] - [net] ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL (Xin Long) [1688617] - [net] tipc: handle the err returned from cmd header function (Jon Maloy) [1693452] - [net] tipc: check link name with right length in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: check bearer name with right length in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: change to check tipc_own_id to return in tipc_net_stop (Jon Maloy) [1693452] - [net] tipc: tipc clang warning (Jon Maloy) [1693452] - [net] tipc: fix cancellation of topology subscriptions (Jon Maloy) [1693452] - [net] tipc: allow service ranges to be connect()'ed on RDM/DGRAM (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check for nla_nest_start (Jon Maloy) [1693452] - [net] net: tipc: fix a missing check of nla_nest_start (Jon Maloy) [1693452] - [net] tipc: fix RDM/DGRAM connect() regression (Jon Maloy) [1693452] - [net] tipc: fix race condition causing hung sendto (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_rcvmsg() (Jon Maloy) [1693452] - [net] tipc: improve function tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: fix link session and re-establish issues (Jon Maloy) [1693452] - [net] tipc: fix skb may be leaky in tipc_link_input (Jon Maloy) [1693452] - [net] tipc: remove dead code in struct tipc_topsrv (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: remove unneeded semicolon in trace.c (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_doit (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_name_table_dump (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_set (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_bearer_enable (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in tipc_nl_compat_link_reset_stats (Jon Maloy) [1693452] - [net] tipc: fix uninit-value in in tipc_conn_rcv_sub (Jon Maloy) [1693452] - [net] tipc: fix memory leak in tipc_nl_compat_publ_dump (Jon Maloy) [1693452] - [net] tipc: fix a missing check of genlmsg_put (Jon Maloy) [1693452] - [net] tipc: fix a double free in tipc_enable_bearer() (Jon Maloy) [1693452] - [net] net/netlink_compat: Fix a missing check of nla_parse_nested (Jon Maloy) [1693452] - [net] tipc: fix uninitialized value for broadcast retransmission (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc bearer (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc node (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc socket (Jon Maloy) [1693452] - [net] tipc: add trace_events for tipc link (Jon Maloy) [1693452] - [net] tipc: enable tracepoints in tipc (Jon Maloy) [1693452] - [net] tipc: handle broadcast NAME_DISTRIBUTOR packet when receiving it (Jon Maloy) [1693452] - [net] tipc: check group dests after tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: check tsk->group in tipc_wait_for_cond() (Jon Maloy) [1693452] - [net] tipc: compare remote and local protocols in tipc_udp_enable() (Jon Maloy) [1693452] - [net] tipc: use lock_sock() in tipc_sk_reinit() (Jon Maloy) [1693452] - [net] tipc: fix node keep alive interval calculation (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning during node delete (Jon Maloy) [1693452] - [net] tipc: don't assume linear buffer when reading ancillary data (Jon Maloy) [1693452] - [net] tipc: fix lockdep warning when reinitilaizing sockets (Jon Maloy) [1693452] - [net] tipc: fix link re-establish failure (Jon Maloy) [1693452] - [net] tipc: improve broadcast retransmission algorithm (Jon Maloy) [1693452] - [net] tipc: use destination length for copy string (Jon Maloy) [1693452] - [net] tipc: support binding to specific ip address when activating UDP bearer (Jon Maloy) [1677371 1693452] - [net] tipc: remainder of commit ignore STATE_MSG on wrong link session (Jon Maloy) [1693452] - [net] tipc: buffer overflow handling in listener socket (Jon Maloy) [1693452] - [net] tipc: add SYN bit to connection setup messages (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_filter_connect() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_sk_timeout() (Jon Maloy) [1693452] - [net] tipc: refactor function tipc_msg_reverse() (Jon Maloy) [1693452] - [net] tipc: Add and use skb_mark_not_on_list(). (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for tipc_topsrv_queue_evt() comments (Jon Maloy) [1693452] - [net] tipc: correct spelling errors for struct tipc_bc_base's comment (Jon Maloy) [1693452] - [net] tipc: correct structure parameter comments for topsrv (Jon Maloy) [1693452] - [net] net/tipc: remove redundant variables 'tn' and 'oport' (Jon Maloy) [1693452] - [net] net: tipc: bcast: Replace GFP_ATOMIC with GFP_KERNEL in tipc_bcast_init() (Jon Maloy) [1693452] - [net] net: tipc: name_table: Replace GFP_ATOMIC with GFP_KERNEL in tipc_nametbl_init() (Jon Maloy) [1693452] - [net] tipc: make some functions static (Jon Maloy) [1693452] - [net] tipc: make link capability update thread safe (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_group_size (Jon Maloy) [1693452] - [net] tipc: remove unused tipc_link_is_active (Jon Maloy) [1693452] - [net] tipc: check session number before accepting link protocol messages (Jon Maloy) [1693452] - [net] tipc: add sequence number check for link STATE messages (Jon Maloy) [1693452] - [net] tipc: mark expected switch fall-throughs (Jon Maloy) [1693452] - [net] tipc: extend sock diag for group communication (Jon Maloy) [1693452] - [net] tipc: Auto removal of peer down node instance (Jon Maloy) [1693452] - [net] tipc: optimize function tipc_node_timeout() (Jon Maloy) [1693452] - [net] tipc: eliminate buffer cloning in function tipc_msg_extract() (Jon Maloy) [1693452] - [net] netfilter: nf_conncount: fix argument order to find_next_bit (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: speculative garbage collection on empty lists (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: move all list iterations under spinlock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: merge lookup and add functions (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: restart search when nodes have been erased (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: split gc in two phases (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: don't skip eviction when age is negative (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: replace CONNCOUNT_LOCK_SLOTS with CONNCOUNT_SLOTS (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use rb_link_node_rcu() instead of rb_link_node() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: remove wrong condition check routine (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix unexpected permanent node of list. (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: fix list_del corruption in conn_free (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: use spin_lock_bh instead of spin_lock (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Add list lock and gc worker, and RCU for init tree search (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Split insert and traversal (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Move locking into count_tree() (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit in nf_conncount_lookup() and cleanup (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Switch to plain list (Florian Westphal) [1531074] - [net] netfilter: nf_conncount: Early exit for garbage collection (Florian Westphal) [1531074] - [net] ptp: uapi: change _IOW to IOWR in PTP_SYS_OFFSET_EXTENDED definition (Hangbin Liu) [1677215] - [net] ptp: check that rsv field is zero in struct ptp_sys_offset_extended (Hangbin Liu) [1677215] - [net] ptp: deprecate gettime64() in favor of gettimex64() (Hangbin Liu) [1677215] - [net] ptp: add PTP_SYS_OFFSET_EXTENDED ioctl (Hangbin Liu) [1677215] - [net] ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl (Hangbin Liu) [1677215] - [net] ptp: reorder declarations in ptp_ioctl() (Hangbin Liu) [1677215] - [net] tuntap: fix multiqueue rx (Guillaume Nault) [1686563]- [edac] EDAC/amd64: Add Family 17h Model 30h PCI IDs (Aristeu Rozanski) [1696603] - [x86] Update stepping values for coffee lake desktop (David Arcari) [1704800] - [security] KEYS: trusted: allow trusted.ko to initialize w/o a TPM (Jerry Snitselaar) [1694208] - [security] tpm: pass an array of tpm_extend_digest structures to tpm_pcr_extend() (Jerry Snitselaar) [1665130 1665129] - [security] KEYS: trusted: explicitly use tpm_chip structure from tpm_default_chip() (Jerry Snitselaar) [1665130 1665129] - [char] tpm/ppi: Enable submission of optional command parameter for PPI 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Possibly show command parameter if TPM PPI 1.3 is used (Jerry Snitselaar) [1665130] - [char] tpm/ppi: Display up to 101 operations as define for version 1.3 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: rename TPM_PPI_REVISION_ID to TPM_PPI_REVISION_ID_1 (Jerry Snitselaar) [1665130] - [char] tpm/ppi: pass function revision ID to tpm_eval_dsm() (Jerry Snitselaar) [1665130] - [char] tpm: Fix the type of the return value in calc_tpm2_event_size() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: fix an invalid condition in tpm_common_poll (Jerry Snitselaar) [1694208] - [char] tpm: turn on TPM on suspend for TPM 1.x (Jerry Snitselaar) [1694208 1665130] - [char] tpm: move tpm_chip definition to include/linux/tpm.h (Jerry Snitselaar) [1665129] - [char] tpm: retrieve digest size of unknown algorithms with PCR read (Jerry Snitselaar) [1665130 1665129] - [char] tpm: rename and export tpm2_digest and tpm2_algorithms (Jerry Snitselaar) [1665130 1665129] - [char] tpm: dynamically allocate the allocated_banks array (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove @flags from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: take TPM chip power gating out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: introduce tpm_chip_start() and tpm_chip_stop() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: remove TPM_TRANSMIT_UNLOCKED flag (Jerry Snitselaar) [1665130 1665129] - [char] tpm: use tpm_try_get_ops() in tpm-sysfs.c. (Jerry Snitselaar) [1665130] - [char] tpm: remove @space from tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move TPM space code out of tpm_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: move tpm_validate_commmand() to tpm2-space.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: clean up tpm_try_transmit() error handling flow (Jerry Snitselaar) [1665130 1665129] - [char] tpm: encapsulate tpm_dev_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: access command header through struct in tpm_try_transmit() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: declare struct tpm_header (Jerry Snitselaar) [1665130 1665129] - [char] tpm: print tpm2_commit_space() error inside tpm2_commit_space() (Jerry Snitselaar) [1665129] - [char] tpm: return 0 from pcrs_show() when tpm1_pcr_read() fails (Jerry Snitselaar) [1665130] - [char] tpm: fix invalid return value in pubek_show() (Jerry Snitselaar) [1694208 1665130] - [char] tpm: use tpm_buf in tpm_transmit_cmd() as the IO parameter (Jerry Snitselaar) [1665130 1665129] - [char] tpm: don't return bool from update_timeouts (Jerry Snitselaar) [1665130] - [char] tpm: don't print error message in tpm_transmit_cmd when tpm still testing (Jerry Snitselaar) [1665129] - [char] tpm: add _head suffix to tcg_efi_specid_event and tcg_pcr_event2 (Jerry Snitselaar) [1665129] - [char] tpm: Fix off-by-one when reading binary_bios_measurements (Jerry Snitselaar) [1694208 1665130] - [char] tpm: Simplify the measurements loop (Jerry Snitselaar) [1665130] - [char] tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete (Jerry Snitselaar) [1694208] - [char] tpm: Unify the send callback behaviour (Jerry Snitselaar) [1665129] - [char] tpm: Fix some name collisions with drivers/char/tpm.h (Jerry Snitselaar) [1694208] - [char] tpm/tpm_crb: Avoid unaligned reads in crb_recv() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: add support for partial reads (Jerry Snitselaar) [1665129] - [char] tpm: tpm_ibmvtpm: fix kdoc warnings (Jerry Snitselaar) [1665129] - [char] tpm: fix kdoc for tpm2_flush_context_cmd() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: tpm_try_transmit() refactor error flow. (Jerry Snitselaar) [1694208 1665129] - [char] tpm: use u32 instead of int for PCR index (Jerry Snitselaar) [1665130 1665129] - [security] ima: Get rid of ima_used_chip and use ima_tpm_chip != NULL instead (Jerry Snitselaar) [1665130 1665129] - [security] ima: Use tpm_default_chip() and call TPM functions with a tpm_chip (Jerry Snitselaar) [1665129] - [char] tpm1: reimplement tpm1_continue_selftest() using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: reimplement SAVESTATE using tpm_buf (Jerry Snitselaar) [1665130] - [char] tpm1: rename tpm1_pcr_read_dev to tpm1_pcr_read() (Jerry Snitselaar) [1665130] - [char] tpm1: implement tpm1_pcr_read_dev() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm1: rewrite tpm1_get_random() using tpm_buf structure (Jerry Snitselaar) [1665130] - [char] tpm: tpm-space.c remove unneeded semicolon (Jerry Snitselaar) [1665129] - [char] tpm: tpm-interface.c drop unused macros (Jerry Snitselaar) [1694208 1665130] - [char] tpm: add tpm_auto_startup() into tpm-interface.c (Jerry Snitselaar) [1665129] - [char] tpm: factor out tpm_startup function (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x pm suspend flow into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm 1.x selftest code from tpm-interface.c tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm1_get_random into tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm_getcap to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: move tpm1_pcr_extend to tpm1-cmd.c (Jerry Snitselaar) [1665130] - [char] tpm: factor out tpm_get_timeouts() (Jerry Snitselaar) [1665130 1665129] - [char] tpm: add tpm_calc_ordinal_duration() wrapper (Jerry Snitselaar) [1665130 1665129] - [char] tpm: factor out tpm 1.x duration calculation to tpm1-cmd.c (Jerry Snitselaar) [1665130 1665129] - [char] tpm: sort objects in the Makefile (Jerry Snitselaar) [1665129] - [char] tpm2: add new tpm2 commands according to TCG 1.36 (Jerry Snitselaar) [1665129] - [char] tpm: tpm_i2c_nuvoton: use correct command duration for TPM 2.x (Jerry Snitselaar) [1665129] - [char] tpm: add support for nonblocking operation (Jerry Snitselaar) [1665129] - [char] tpm: add ptr to the tpm_space struct to file_priv (Jerry Snitselaar) [1665129] - [char] tpm: Make SECURITYFS a weak dependency (Jerry Snitselaar) [1665129] - [char] tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/deactivated (Jerry Snitselaar) [1665130] - [char] tpm: fix response size validation in tpm_get_random() (Jerry Snitselaar) [1694208 1665129] - [char] tpm: replace TPM_TRANSMIT_RAW with TPM_TRANSMIT_NESTED (Jerry Snitselaar) [1665129] - [char] tpm: Convert tpm_find_get_ops() to use tpm_default_chip() (Jerry Snitselaar) [1665129] - [char] tpm: Implement tpm_default_chip() to find a TPM chip (Jerry Snitselaar) [1665129] - [char] tpm: rename tpm_chip_find_get() to tpm_find_get_ops() (Jerry Snitselaar) [1665129] - [char] tpm: Allow tpm_tis drivers to set hwrng quality. (Jerry Snitselaar) [1665129] - [char] tpm: Return the actual size when receiving an unsupported command (Jerry Snitselaar) [1694208 1665129] - [char] tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) (Jerry Snitselaar) [1665129] - [char] tpm_tis_spi: Pass the SPI IRQ down to the driver (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_random() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_get_tpm_pt() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_probe() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [char] tpm: migrate tpm2_shutdown() to use struct tpm_buf (Jerry Snitselaar) [1665129] - [pci] PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter (Myron Stowe) [1704979] - [s390] s390/pci: skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Add flag so platforms can skip VF scanning (Myron Stowe) [1704979] - [pci] PCI/IOV: Factor out sriov_add_vfs() (Myron Stowe) [1704979] - [pci] switchtec: Add MRPC DMA mode support (Myron Stowe) [1704979] - [pci] switchtec: Improve MRPC efficiency by enabling write combining (Myron Stowe) [1704979] - [pci] switchtec: Fix SWITCHTEC_IOCTL_EVENT_IDX_ALL flags overwrite (Myron Stowe) [1704979] - [pci] switchtec: Set DMA coherent mask (Myron Stowe) [1704979] - [pci] switchtec: Remove immediate status check after submitting MRPC command (Myron Stowe) [1704979] - [pci] PCI / PM: Allow runtime PM without callback functions (Myron Stowe) [1704979] - [pci] PCI/P2PDMA: Clean up documentation and kernel-doc (Myron Stowe) [1704979] - [pci] PCI: Remove unnecessary space before function pointer arguments (Myron Stowe) [1704979] - [maintainers] MAINTAINERS: Add x86 early-quirks.c file pattern to PCI subsystem (Myron Stowe) [1704979] - [pci] PCI: Expand the "PF" acronym in Kconfig help text (Myron Stowe) [1704979] - [x86] x86/PCI: Fix Broadcom CNB20LE unintended sign extension (redux) (Myron Stowe) [1704979] - [pci] PCI/ASPM: Remove unused lists from struct pcie_link_state (Myron Stowe) [1704979] - [pci] PCI / ACPI: Identify untrusted PCI devices (Myron Stowe) [1704979]- [documentation] x86/resctrl: Update Documentation/x86/resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Remove unnecessary check for cbm_validate() (Prarit Bhargava) [1504489] - [maintainers] MAINTAINERS: Update resctrl filename patterns (Prarit Bhargava) [1504489] - [documentation] Documentation: Rename and update intel_rdt_ui.txt to resctrl_ui.txt (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Introduce AMD QOS feature (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Fixup the user-visible strings (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add AMD's X86_FEATURE_MBA to the scattered CPUID features (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the config option INTEL_RDT to RESCTRL (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Add vendor check for the MBA software controller (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Bring cbm_validate() into the resource structure (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Initialize the vendor-specific resource functions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Move all the macros to resctrl/internal.h (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Re-arrange the RDT init code (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename the RDT functions and definitions (Prarit Bhargava) [1504489] - [x86] x86/resctrl: Rename and move rdt files to a separate directory (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Prevent pseudo-locking from using stale pointers (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix initial allocation to consider CDP (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: CBM overlap should also check for overlap with CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce utility to obtain CDP peer (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix out-of-bounds memory access in CBM tests (Prarit Bhargava) [1504489] - [x86] perf/x86: Add helper to obtain performance counter index (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Switch to bitmap_zalloc() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Re-enable pseudo-lock measurements (Prarit Bhargava) [1504489] - [x86] x86/cpu: Sanitize FAM6_ATOM naming (David Arcari) [1504489] - [x86] x86/intel_rdt: Use perf infrastructure for measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create required perf event attributes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Remove local register variables (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix exclusive mode handling of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix incorrect loop end condition (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Do not allow pseudo-locking of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix unchecked MSR access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix invalid mode warning when multiple resources are managed (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Global closid helper to support future fixes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix size reporting of MBA resource (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix data type in parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Disable PMU access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix possible circular lock dependency (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make CPU information accessible for pseudo-locked regions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support restoration of subset of permissions (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Fix cleanup of plr structure on error (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Move pseudo_lock_region_clear() (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Limit C-states dynamically when pseudo-locking active (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support L3 cache performance event of Broadwell (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: More precise L2 hit/miss measurements (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create character device exposing pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create debugfs files for pseudo-locking testing (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Create resctrl debug area (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure RDT cleanup on exit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Resctrl files reflect pseudo-locked information (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support creation/removal of pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Pseudo-lock region creation/removal core (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Discover supported platforms via prefetch disable bits (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utilities to test pseudo-locked region possibility (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Split resource group removal in two (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable entering of pseudo-locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support enter/exit of locksetup mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce pseudo-locked region (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add check to determine if monitoring in progress (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Utilities to restrict/restore access to specific files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Protect against resource group changes during locking (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to restrict/restore access to resctrl files (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Add utility to test if tasks assigned to resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Respect read and write access (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce the Cache Pseudo-Locking modes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Display resource groups' allocations' size in bytes (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce "bit_usage" to display cache allocations details (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Ensure requested schemata respects mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Support flexible data to parsing callbacks (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Making CBM name and type more explicit (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Enable setting of exclusive mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce new "exclusive" mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Initialize new resource group with sane defaults (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Make useful functions available internally (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce test to determine if closid is in use (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce resource group's mode resctrl file (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Associate mode with each RDT resource group (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Introduce RDT resource group mode (Prarit Bhargava) [1504489] - [x86] x86/intel_rdt: Provide pseudo-locking hooks within rdt_mount (Prarit Bhargava) [1504489] - [x86] perf/x86: Make perf callchains work without CONFIG_FRAME_POINTER (Jiri Olsa) [1699780]- [kernel] sched/fair: Do not re-read ->h_load_next during hierarchical load calculation (Phil Auld) [1701762] - [s390] kvm: s390: enable MSA9 keywrapping functions depending on cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add deflate conversion facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: add enhanced sort facilty to cpu model (Thomas Huth) [1660913] - [s390] kvm: s390: provide query function for instructions returning 32 byte (Thomas Huth) [1660913] - [s390] kvm: s390: add MSA9 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector BCD enhancements facility to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add vector enhancements facility 2 to cpumodel (Thomas Huth) [1660913] - [s390] kvm: s390: add debug logging for cpu model subfunctions (Thomas Huth) [1660913] - [s390] kvm: s390: implement subfunction processor calls (Thomas Huth) [1660913] - [powercap] powercap: intel_rapl: add support for Jacobsville (Steve Best) [1482401] - [x86] x86/cpu: Add Atom Tremont (Jacobsville) (Steve Best) [1482401]- [crypto] crypto: qat - Remove unused goto label (Neil Horman) [1660313] - [crypto] crypto: prefix header search paths with $(srctree)/ (Neil Horman) [1660313] - [crypto] crypto: qat - no need to check return value of debugfs_create functions (Neil Horman) [1660313] - [crypto] cross-tree: phase out dma_zalloc_coherent() (Neil Horman) [1660313] - [crypto] crypto: qat - move temp buffers off the stack (Neil Horman) [1660313] - [crypto] crypto: qat - Remove VLA usage (Neil Horman) [1660313] - [include] block: kill all_q_node in request_queue (Ming Lei) [1702865] - [block] bfq: update internal depth state when queue depth changes (Ming Lei) [1702865] - [fs] block: fix the return errno for direct IO (Ming Lei) [1702865] - [block] block: do not leak memory in bio_copy_user_iov() (Ming Lei) [1702865] - [nvme] nvme: cancel request synchronously (Ming Lei) [1702865] - [block] blk-mq: introduce blk_mq_complete_request_sync() (Ming Lei) [1702865] - [scsi] scsi: virtio_scsi: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] virtio-blk: limit number of hw queues by nr_cpu_ids (Ming Lei) [1702865] - [block] block, bfq: fix use after free in bfq_bfqq_expire (Ming Lei) [1702865] - [block] paride/pcd: Fix potential NULL pointer dereference and mem leak (Ming Lei) [1702865] - [block] blk-mq: do not reset plug->rq_count before the list is sorted (Ming Lei) [1702865] - [block] paride/pf: Fix potential NULL pointer dereference (Ming Lei) [1702865] - [block] blk-mq: add trace block plug and unplug for multiple queues (Ming Lei) [1702865] - [block] block: use blk_free_flush_queue() to free hctx->fq in blk_mq_init_hctx (Ming Lei) [1702865] - [block] paride/pcd: cleanup queues when detection fails (Ming Lei) [1702865] - [block] paride/pf: cleanup queues when detection fails (Ming Lei) [1702865] - [crypto] crypto: chelsio - Fixed Traffic Stall (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix passing zero to 'PTR_ERR' warning in chcr_aead_op (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Inline single pdu only (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - avoid using sa_entry imm (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variables 'adap' (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - check set_msg_len overflow in generate_b0 (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Fix wrong error counter increments (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Reset counters on cxgb4 Detach (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Handle PCI shutdown event (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - cleanup:send addr as value in function argument (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Use same value for both channel in single WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Swap location of AAD and IV sent in WR (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - remove set but not used variable 'kctx_len' (Arjun Vynipadath) [1664679] - [crypto] drivers: chelsio: use skb_sec_path helper (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - ESN for Inline IPSec Tx (Arjun Vynipadath) [1664679] - [crypto] crypto: chcr - small packet Tx stalls the queue (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - clean up various indentation issues (Arjun Vynipadath) [1664679] - [crypto] crypto: chelsio - Update ntx queue received from cxgb4 (Arjun Vynipadath) [1664679]- [platform] platform/x86: intel_pmc_core: Convert to INTEL_CPU_FAM6 macro (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Avoid a u32 overflow (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Include Reserved IP for LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix file permissions for ltr_show (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP name (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix PCH IP sts reading (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Handle CFL regmap properly (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: convert to DEFINE_SHOW_ATTRIBUTE (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Decode Snoop / Non Snoop LTR (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Fix LTR IGNORE Max offset (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Show Latency Tolerance info (David Arcari) [1658080] - [platform] platform/x86: intel_pmc: Convert to use SPDX identifier (David Arcari) [1658080] - [platform] platform/x86: intel_pmc_core: Add CNP SLPS0 debug registers (David Arcari) [1658080] - [x86] x86/cpu: Introduce INTEL_CPU_FAM*() helper macros (David Arcari) [1658080] - [include] locking/atomics, asm-generic: Move some macros from to a new file (David Arcari) [1658080] - [s390] s390/kasan: fix strncpy_from_user kasan checks (Philipp Rudo) [1665182] - [s390] s390: correct some inline assembly constraints (Philipp Rudo) [1665182] - [s390] s390/kasan: improve string/memory functions checks (Philipp Rudo) [1665182] - [include] compiler: remove __no_sanitize_address_or_inline again (Philipp Rudo) [1665182] - [s390] s390/kasan: increase instrumented stack size to 64k (Philipp Rudo) [1665182] - [mm] s390/kasan: support preemptible kernel build (Philipp Rudo) [1665182] - [mm] s390/kasan: add support for mem= kernel parameter (Philipp Rudo) [1665182] - [mm] s390/kasan: optimize kasan vmemmap allocation (Philipp Rudo) [1665182] - [mm] s390/kasan: avoid kasan crash with standby memory defined (Philipp Rudo) [1665182] - [s390] s390/head: avoid doubling early boot stack size under KASAN (Philipp Rudo) [1665182] - [mm] s390/mm: improve debugfs ptdump markers walking (Philipp Rudo) [1665182] - [mm] s390/mm: optimize debugfs ptdump kasan zero page walking (Philipp Rudo) [1665182] - [s390] s390/kasan: add option for 4-level paging support (Philipp Rudo) [1665182] - [mm] s390/kasan: free early identity mapping structures (Philipp Rudo) [1665182] - [s390] s390/kasan: enable stack and global variables access checks (Philipp Rudo) [1665182] - [s390] s390/dumpstack: disable __dump_trace kasan instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: reipl and kexec support (Philipp Rudo) [1665182] - [s390] s390/smp: kasan stack instrumentation support (Philipp Rudo) [1665182] - [include] compiler: introduce __no_sanitize_address_or_inline (Philipp Rudo) [1665182] - [s390] s390/kasan: use noexec and large pages (Philipp Rudo) [1665182] - [mm] s390/kasan: dynamic shadow mem allocation for modules (Philipp Rudo) [1665182] - [mm] s390/mm: add kasan shadow to the debugfs pgtable dump (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid user access code instrumentation (Philipp Rudo) [1665182] - [s390] s390/kasan: double the stack size (Philipp Rudo) [1665182] - [s390] s390/kasan: add initialization code and enable it (Philipp Rudo) [1665182] - [s390] s390: add pgd_page primitive (Philipp Rudo) [1665182] - [s390] s390: introduce MAX_PTRS_PER_P4D (Philipp Rudo) [1665182] - [s390] s390/kasan: replace some memory functions (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid instrumentation of early C code (Philipp Rudo) [1665182] - [s390] s390/kasan: avoid vdso instrumentation (Philipp Rudo) [1665182] - [s390] s390/mm: add missing pfn_to_kaddr helper (Philipp Rudo) [1665182] - [s390] s390/cpum_cf: Add support for CPU-MF SVN 6 (Philipp Rudo) [1683278] - [s390] s390: report new CPU capabilities (Philipp Rudo) [1685086] - [net] net/smc: fix smc_poll in SMC_INIT state (Philipp Rudo) [1700812] - [net] net/smc: fix byte_order for rx_curs_confirmed (Philipp Rudo) [1700812] - [net] net/smc: check port_idx of ib event (Philipp Rudo) [1700799] - [net] net/smc: check connections in smc_lgr_free_work (Philipp Rudo) [1700799] - [net] net/smc: reduce amount of status updates to peer (Philipp Rudo) [1700799] - [net] net/smc: no delay for free tx buffer wait (Philipp Rudo) [1700799] - [net] net/smc: move wake up of close waiter (Philipp Rudo) [1700799] - [net] net/smc: reset cursor update required flag (Philipp Rudo) [1700799] - [net] net/smc: correct state change for peer closing (Philipp Rudo) [1700799] - [net] net/smc: delete rkey first before switching to unused (Philipp Rudo) [1700799] - [net] net/smc: fix sender_free computation (Philipp Rudo) [1700799] - [net] net/smc: preallocated memory for rdma work requests (Philipp Rudo) [1700799] - [net] net/smc: fix use of variable in cleared area (Philipp Rudo) [1700799] - [net] net/smc: use device link provided in qp_context (Philipp Rudo) [1700799] - [net] net/smc: call smc_cdc_msg_send() under send_lock (Philipp Rudo) [1700799] - [net] net/smc: do not wait under send_lock (Philipp Rudo) [1700799] - [net] net/smc: recvmsg and splice_read should return 0 after shutdown (Philipp Rudo) [1700799] - [net] net/smc: don't wait for send buffer space when data was already sent (Philipp Rudo) [1700799] - [net] net/smc: prevent races between smc_lgr_terminate() and smc_conn_free() (Philipp Rudo) [1700799] - [net] net/smc: allow 16 byte pnetids in netlink policy (Philipp Rudo) [1700799] - [net] net/smc: fix another sizeof to int comparison (Philipp Rudo) [1700799] - [net] net/smc: move code to clear the conn->lgr field (Philipp Rudo) [1700799] - [net] net/smc: use client and server LGR pending locks for SMC-R (Philipp Rudo) [1700799] - [net] net/smc: unlock LGR pending lock earlier for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: use smc_curs_copy() for SMC-D (Philipp Rudo) [1700799] - [net] net/smc: postpone release of clcsock (Philipp Rudo) [1700799] - [net] smc: move unhash as early as possible in smc_release() (Philipp Rudo) [1700799] - [net] net/smc: fix TCP fallback socket release (Philipp Rudo) [1700799] - [s390] s390/ism: ignore some errors during deregistration (Philipp Rudo) [1700799] - [infiniband] mlx4: trigger IB events needed by SMC (Philipp Rudo) [1700799] - [s390] s390/smp: fix CPU hotplug deadlock with CPU rescan (Philipp Rudo) [1700836] - [block] s390/dasd: fix panic for failed online processing (Philipp Rudo) [1700811] - [netdrv] s390/qeth: fix use-after-free in error path (Philipp Rudo) [1700803] - [netdrv] s390/qeth: cancel close_dev work before removing a card (Philipp Rudo) [1700802] - [netdrv] s390/qeth: conclude all event processing before offlining a card (Philipp Rudo) [1700800] - [scsi] scsi: zfcp: fix posting too many status read buffers leading to adapter shutdown (Philipp Rudo) [1700775] - [fs] xfs: prohibit fstrim in norecovery mode (Bill O'Donnell) [1697749] - [x86] perf/x86: Fixup typo in stub functions (Waiman Long) [1688789] - [x86] perf/x86/intel: Fix memory corruption (Waiman Long) [1688789] - [x86] perf/x86/intel: Implement support for TSX Force Abort (Waiman Long) [1688789] - [x86] x86: Add TSX Force Abort CPUID/MSR (Waiman Long) [1688789] - [x86] perf/x86/intel: Generalize dynamic constraint creation (Waiman Long) [1688789] - [x86] perf/x86/intel: Make cpuc allocations consistent (Waiman Long) [1688789] - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu() (Waiman Long) [1688789] - [x86] perf/x86/intel: Export mem events only if there's PEBS support (Waiman Long) [1688789] - [x86] perf/x86/intel: Add a separate Arch Perfmon v4 PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Factor out common code of PMI handler (Waiman Long) [1688789] - [x86] perf/x86/intel: Introduce PMU flag for Extended PEBS (Waiman Long) [1688789] - [x86] x86/speculation: Add PR_SPEC_DISABLE_NOEXEC (Waiman Long) [1671512]- [kernel] exit from RHEL 8.1 early ystream mode ("Herton R. Krzesinski") - [net] Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer (Gopal Tiwari) [1700507] {CVE-2019-3459} - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1664683] - [target] scsi: target: iscsi: cxgbit: add missing spin_lock_init() (Arjun Vynipadath) [1664683] - [scsi] scsi: cxgb4i: fix incorrect spelling "reveive" -> "receive" (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: update route finding logic (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: find cxgbi device by MAC address (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgbi: remove redundant __kfree_skb call on skb and free cst->atid (Arjun Vynipadath) [1664685] - [scsi] scsi: libcxgbi: remove uninitialized variable len (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: validate tcp sequence number only if chip version <= T5 (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: get pf number from lldi->pf (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add wait_for_completion() (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: fix thermal configuration dependencies (Arjun Vynipadath) [1664685] - [scsi] scsi: cxgb4i: add DCB support for iSCSI connections (Arjun Vynipadath) [1664685] - [netdrv] cxgb4: Don't return EAGAIN when TCAM is full. (Arjun Vynipadath) [1664670] - [netdrv] chelsio: use BUG() instead of BUG_ON(1) (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/chtls: Prefix adapter flags with CXGB4 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Call netif_carrier_off properly in pci_probe (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Revert force link up behaviour (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Add VF Link state support (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Prefix adapter flags with CXGB4VF (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: Enter debugging mode if FW is inaccessible (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: Enable outer UDP checksum offload for T6 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix up netdev->hw_features (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: Mask out interrupts that are not enabled. (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Export sge_host_page_size to ulds (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add capability to get/set SGE Doorbell Queue Timer Tick (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Add support for SGE doorbell queue timer (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: Few more link management changes. (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: add tcb flags and tcb rpl struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608b (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Program hash region for {t4/t4vf}_change_mac() (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: smt: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: sched: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: cxgb4_tc_u32: use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4vf: Update port information in cxgb4vf_open() (Arjun Vynipadath) [1664682] - [netdrv] cxgb4/cxgb4vf: Link management changes (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4: TLS record offload enable (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: clip_tbl: Use struct_size() in kvzalloc() (Arjun Vynipadath) [1664670] - [netdrv] net: cxgb4: fix various indentation issues (Arjun Vynipadath) [1664670] - [netdrv] net: chelsio: Add a missing check on cudg_get_buffer (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove DEFINE_SIMPLE_DEBUGFS_FILE() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: number of VFs supported is not always 16 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variables 'multitrc, speed' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use new fw interface to get the VIN and smt index (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/cxgb4vf: Fix mac_hlist initialization and free (Arjun Vynipadath) [1664682 1664670] - [netdrv] cxgb4vf: fix memleak in mac_hlist initialization (Arjun Vynipadath) [1664682] - [netdrv] cxgb4vf: free mac_hlist properly (Arjun Vynipadath) [1664682] - [netdrv] cxgb4: free mac_hlist properly (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal zone build error (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix thermal configuration dependencies (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add thermal zone support (Arjun Vynipadath) [1664670] - [infiniband] cxgb4: use __vlan_hwaccel helpers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T6 PCI device ids 0x608a (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix the error path of cxgb4_uld_register() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: use FW_PORT_ACTION_L1_CFG32 for 32 bit capability (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove the unneeded locks (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in IEEE_FAUX_SYNC (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Use proper enum in cxgb4_dcb_handle_fw_update (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove duplicated include from cxgb4_main.c (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add per rx-queue counter for packet errors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Fix endianness issue in t4_fwcache() (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix abort_req_rss6 struct (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove redundant assignment to vlan_cmd.dropnovlan_fm (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect hardware queue descriptors (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device ids 0x50af and 0x50b0 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: remove set but not used variable 'spd' (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: add support to display DCB info (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/t4_hw: mark expected switch fall-throughs (Arjun Vynipadath) [1664670] - [netdrv] cxgb4/l2t: Mark expected switch fall-through (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: fix endian to test F_FW_PORT_CMD_DCBXDIS32 (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: print ULD queue information managed by LLD (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: move Tx/Rx free pages collection to common code (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add support to read actual provisioned resources (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: Add new T5 PCI device id 0x50ae (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect number of free PSTRUCT page pointers (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: display number of rx and tx pages free (Arjun Vynipadath) [1664670] - [netdrv] cxgb4: collect ASIC LA dumps from ULP TX (Arjun Vynipadath) [1664670] - [netdrv] libcxgb: replace vmalloc and memset with vzalloc (Arjun Vynipadath) [1664670] - [netdrv] enic: fix checksum validation for IPv6 (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Return the correct opcode when creating WR (Jonathan Toppins) [1688010 1685309] - [infiniband] RDMA/vmw_pvrdma: Use atomic memory allocation in create AH (Jonathan Toppins) [1685309] - [infiniband] IB/usnic: fix spelling mistake "miniumum" -> "minimum" (Jonathan Toppins) [1685309] - [infiniband] RDMA/drivers: Fix spelling mistake "initalize" -> "initialize" (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Reuse code which sets port state (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make counters thread safe (Jonathan Toppins) [1685309] - [infiniband] RDMA: Cleanup undesired pd->uobject usage (Jonathan Toppins) [1685309] - [infiniband] IB/{mlx5, ocrdma, qedr, rxe}: Omit port validation from IB verbs (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Fix incorrect cache cleanup in error flow (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Utilize generic function to validate port number (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: Make function rxe_pool_cleanup return void (Jonathan Toppins) [1685309] - [infiniband] rxe: IB_WR_REG_MR does not capture MR's iova field (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: make rxe_unregister_device void (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: move the variable into the function that uses it (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Add link_down, rdma_sends, rdma_recvs stats counters (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Distinguish between down links and disabled links (Jonathan Toppins) [1685309] - [infiniband] rxe: fix error completion wr_id and qp_num (Jonathan Toppins) [1685309] - [infiniband] IB/rxe: clean skb queue directly (Jonathan Toppins) [1685309] - [net] xprtrdma: Make sure Send CQ is allocated on an existing compvec (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework SCSI device reset handling (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start (Jonathan Toppins) [1685309] - [net] xprtrdma: Double free in rpcrdma_sendctxs_create() (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix error code in rpcrdma_buffer_create() (Jonathan Toppins) [1685309] - [infiniband] IB/ipoib: drop useless LIST_HEAD (Jonathan Toppins) [1685309] - [net] xprtrdma: Prevent leak of rpcrdma_rep objects (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't leak freed MRs (Jonathan Toppins) [1685309] - [net] xprtrdma: Add documenting comment for rpcrdma_buffer_destroy (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace outdated comment for rpcrdma_ep_post (Jonathan Toppins) [1685309] - [net] xprtrdma: Update comments in frwr_op_send (Jonathan Toppins) [1685309] - [net] xprtrdma: Trace mapping, alloc, and dereg failures (Jonathan Toppins) [1685309] - [net] xprtrdma: Add trace points for calls to transport switch methods (Jonathan Toppins) [1685309] - [net] xprtrdma: Relocate the xprtrdma_mr_map trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Clean up of xprtrdma chunk trace points (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove unused fields from rpcrdma_ia (Jonathan Toppins) [1685309] - [net] xprtrdma: Cull dprintk() call sites (Jonathan Toppins) [1685309] - [net] xprtrdma: Simplify locking that protects the rl_allreqs list (Jonathan Toppins) [1685309] - [net] xprtrdma: Expose transport header errors (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove request_module from backchannel (Jonathan Toppins) [1685309] - [net] xprtrdma: Plant XID in on-the-wire RDMA offset (FRWR) (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove rpcrdma_memreg_ops (Jonathan Toppins) [1685309] - [net] xprtrdma: Remove support for FMR memory registration (Jonathan Toppins) [1685309] - [net] xprtrdma: Reduce max_frwr_depth (Jonathan Toppins) [1685309] - [net] xprtrdma: Fix ri_max_segs and the result of ro_maxpages (Jonathan Toppins) [1685309] - [net] xprtrdma: Don't wake pending tasks until disconnect is done (Jonathan Toppins) [1685309] - [net] xprtrdma: No qp_event disconnect (Jonathan Toppins) [1685309] - [net] xprtrdma: Replace rpcrdma_receive_wq with a per-xprt workqueue (Jonathan Toppins) [1685309] - [net] xprtrdma: Refactor Receive accounting (Jonathan Toppins) [1685309] - [net] xprtrdma: Ensure MRs are DMA-unmapped when posting LOCAL_INV fails (Jonathan Toppins) [1685309] - [net] xprtrdma: Yet another double DMA-unmap (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Use kmem_cache_free() instead of kfree() (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Rework the srpt_alloc_srq() error path (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Remove driver version and release date (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Make kernel-doc headers complete (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Join split strings (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Improve coding style conformance (Jonathan Toppins) [1685309] - [infiniband] RDMA/srpt: Fix a use-after-free in the channel release code (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Rework handling of the maximum information unit length (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Move srp_rdma_ch.max_ti_iu_len declaration (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Propagate ib_post_send() failures to the SCSI mid-layer (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Handle large SCSI CDBs correctly (Jonathan Toppins) [1685309] - [infiniband] RDMA/srp: Document srp_parse_in() arguments (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Add support for immediate data (Jonathan Toppins) [1685309] - [infiniband] include/scsi/srp.h: Move response flag definitions into this file (Jonathan Toppins) [1685309] - [net] svcrdma: Optimize the logic that selects the R_key to invalidate (Jonathan Toppins) [1685309] - [infiniband] IB/srpt: Drop pointless static qualifier in srpt_make_tpg() (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs in uverbs_user_mmap_disassociate (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix ioctl query port to consider device disassociation (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Fix OOPs upon device disassociation (Jonathan Toppins) [1685309] - [infiniband] RDMA/umem: Add missing initialization of owning_mm (Jonathan Toppins) [1685309] - [infiniband] RDMA/device: Expose ib_device_try_get(() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Mark ioctl responses with UVERBS_ATTR_F_VALID_OUTPUT (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Add cm_id restrack resource based on kernel or user cm_id type (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Don't expose unsafe global rkey to regular user (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fix post send success return value in case of error (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add advise_mr to the list of known ops (Jonathan Toppins) [1685309] - [infiniband] IB/uverbs: Signedness bug in UVERBS_HANDLER() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Start using dev_groups of class (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Use class_groups and let core create class file (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Refactor code to use cdev_device_add() (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Avoid destroying device while it is accessed (Jonathan Toppins) [1685309] - [infiniband] IB/umad: Simplify and avoid dynamic allocation of class (Jonathan Toppins) [1685309] - [infiniband] RDMA/iwcm: Don't copy past the end of dev_name() string (Jonathan Toppins) [1685309] - [infiniband] IB/core: Move query port to ioctl (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Expose port_cap_flags2 (Jonathan Toppins) [1685309] - [infiniband] IB/core: uverbs copy to struct or zero helper (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if destroy address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA: Mark if create address handle is in a sleepable context (Jonathan Toppins) [1685309] - [infiniband] RDMA/restrack: Resource-tracker should not use uobject pointers (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add support to advise_mr (Jonathan Toppins) [1685309] - [include] IB/uverbs: Add helper to get array size from ptr attribute (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add an ioctl method to destroy an object (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a method to introspect handles in a context (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Delete RoCE GID in hw when corresponding IP is deleted (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Implement an ioctl that can call write and write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA: Start use ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/rdmavt: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/rxe: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/vmw_pvrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/usnic: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qib: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/qedr: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/ocrdma: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/nes: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mthca: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx5: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/mlx4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/i40iw: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hns: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/hfi1: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb4: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/cxgb3: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/bnxt_re: Initialize ib_device_ops struct (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Introduce ib_device_ops (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Optimize clearing of extra bytes in response (Jonathan Toppins) [1685309] - [infiniband] IB/core: Add new IB rates (Jonathan Toppins) [1685309] - [include] IB/core: Add 2X port width (Jonathan Toppins) [1685309] - [include] IB/core: Add CapabilityMask2 to port attributes (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Validate port number in query_pkey verb (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Fix typo in string concatenation macro (Jonathan Toppins) [1685309] - [infiniband] IB/core: Enable getting an object type from a given uobject (Jonathan Toppins) [1685309] - [infiniband] IB/core: Introduce UVERBS_IDR_ANY_OBJECT (Jonathan Toppins) [1685309] - [infiniband] RDMA/nldev: Export to user space number of contexts (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Annotate alloc/deallloc paths with context tracking (Jonathan Toppins) [1685309] - [include] RDMA/restrack: Track ucontext (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use only attrs for the write() handler signature (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not check the input length on create_cq/qp paths (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use the iterator for ib_uverbs_unmarshall_recv() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add a simple iterator interface for reading the command (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Simplify ib_uverbs_ex_query_device (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Fill in the response for IB_USER_VERBS_EX_CMD_MODIFY_QP (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() and core for write_ex handlers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_request() for request copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_response() for remaining response copying (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Get rid of the 'callback' scheme in the compat path (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass ucore for write/write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Remove out_len checks that are now done by the core (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: fix ptr_ret.cocci warnings (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for ioctl() (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use uverbs_attr_bundle to pass udata for write_ex (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Prohibit write() calls with too small buffers (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add structure size info to write commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Do not pass ib_uverbs_file to ioctl methods (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make write() handlers return 0 on success (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Replace ib_uverbs_file with uverbs_attr_bundle for write (Jonathan Toppins) [1685309] - [include] RDMA/uverbs: Add missing driver_data (Jonathan Toppins) [1685309] - [infiniband] RDMA/core: Sync unregistration with netlink commands (Jonathan Toppins) [1685309] - [infiniband] RDMA/cma: Move cma module specific functions to cma_priv.h (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Check for NULL driver methods for every write call (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Make all the method functions in uverbs_cmd static (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Convert the write interface to use uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/verbs: Store the write/write_ex uapi entry points in the uverbs_api (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Require all objects to have a driver destroy function (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Add helpers to mark uapi functions as unsupported (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Factor out the add/get pattern into a helper (Jonathan Toppins) [1685309] - [infiniband] RDMA/uverbs: Use a linear list to describe the compiled-in uapi (Jonathan Toppins) [1685309] - [infiniband] IB/core: Make function ib_fmr_pool_unmap return void (Jonathan Toppins) [1685309] - [include] RDMA/core: Remove unused header files mm.h, socket.h, scatterlist.h (Jonathan Toppins) [1685309] - [include] IB/uverbs: fix a typo (Jonathan Toppins) [1685309] - [fs] coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping (Andrea Arcangeli) [1696081] {CVE-2019-3892} - [scsi] scsi: csiostor: fix missing data copy in csio_scsi_err_handler() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: drop serial_number usage (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix calls to dma_set_mask_and_coherent() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: Remove set but not used variable 'pln' (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: no need to check return value of debugfs_create functions (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state() (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: fix incorrect dma device in case of vport (Arjun Vynipadath) [1664680] - [scsi] scsi: csiostor: switch to generic DMA API (Arjun Vynipadath) [1664680] - [netdrv] thunderx: eliminate extra calls to put_page() for pages held for recycling (Dean Nelson) [1644011] - [netdrv] thunderx: enable page recycling for non-XDP case (Dean Nelson) [1644011] - [cpufreq] cpufreq: intel_pstate: Also use CPPC nominal_perf for base_frequency (Prarit Bhargava) [1696131] - [acpi] ACPI / CPPC: Fix guaranteed performance handling (Prarit Bhargava) [1696131] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (Corinna Vinschen) [1659169] - [netdrv] igbvf: Replace spin_is_locked() with lockdep (Corinna Vinschen) [1659169] - [netdrv] intel-ethernet: use correct module license (Corinna Vinschen) [1659169] - [netdrv] igbvf: netdev: Mark expected switch fall-through (Corinna Vinschen) [1659169] - [x86] x86/MCE: Initialize mce.bank in the case of a fatal error in mce_no_way_out() (David Arcari) [1698959] - [x86] x86/mce: Restore MCE injector's module name (David Arcari) [1698959] - [x86] x86/mce: Streamline MCE subsystem's naming (David Arcari) [1698959] - [x86] x86: Fix various typos in comments (David Arcari) [1698959] - [x86] x86/MCE/AMD: Fix the thresholding machinery initialization order (David Arcari) [1698959] - [x86] x86/mce: Fix -Wmissing-prototypes warnings (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Validate a MCE's address before using it (David Arcari) [1698959] - [x86] acpi/nfit, x86/mce: Handle only uncorrectable machine checks (David Arcari) [1698959] - [x86] x86: Clean up 'sizeof x' => 'sizeof(x)' (David Arcari) [1698959] - [x86] x86/mcelog: Remove one mce_helper definition (David Arcari) [1698959] - [x86] x86/mce-inject: Reset injection struct after injection (David Arcari) [1698959] - [mm] x86/mce: Fix set_mce_nospec() to avoid #GP fault (David Arcari) [1698959] - [x86] x86/memory_failure: Introduce {set, clear}_mce_nospec() (David Arcari) [1698959] - [x86] x86/mce: Cleanup __mc_scan_banks() (David Arcari) [1698959] - [x86] x86/mce: Carve out bank scanning code (David Arcari) [1698959] - [x86] x86/mce: Carve out the crashing_cpu check (David Arcari) [1698959] - [x86] x86/mce: Always use 64-bit timestamps (David Arcari) [1698959] - [x86] x86/mce: Remove !banks check (David Arcari) [1698959] - [md] dm cache metadata: Fix loading discard bitset (Mike Snitzer) [1701618] - [block] null_blk: prevent crash from bad home_node value (Ming Lei) [1696951] - [powerpc] powerpc/security: Fix spectre_v2 reporting (Gustavo Duarte) [1694456] - [powerpc] powerpc/powernv: Query firmware for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/pseries: Query hypervisor for count cache flush settings (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add support for software count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/64s: Add new security feature flags for count cache flush (Gustavo Duarte) [1694456] - [powerpc] powerpc/asm: Add a patch_site macro & helpers for patching instructions (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Call setup_barrier_nospec() from setup_arch() (Gustavo Duarte) [1694456] - [powerpc] powerpc/64: Add CONFIG_PPC_BARRIER_NOSPEC (Gustavo Duarte) [1694456] - [powerpc] powerpc64s: Show ori31 availability in spectre_v1 sysfs file not v2 (Gustavo Duarte) [1694456]- [kernel] sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup (Joel Savitz) [1695651] - [crypto] crypto: ux500 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: talitos - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sun4i-ss - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: stm32 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: rockchip - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: qce - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: picoxcell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: omap - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: n2 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: marvell - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ixp4xx - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: hifn_795x - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccree - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: ccp - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: cavium - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: caam - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: bcm - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: atmel - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: sparc - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [s390] crypto: s390 - Forbid 2-key 3DES in FIPS mode (Herbert Xu) [1687908] - [crypto] crypto: des_generic - Forbid 2-key in 3DES and add helpers (Herbert Xu) [1687908] - [crypto] crypto: mxc-scc - Remove broken driver (Herbert Xu) [1687908] - [kernel] ntp: Audit NTP parameters adjustment (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Audit clock adjustments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove duplicated include (Ondrej Mosnacek) [1680034] - [kernel] timekeeping/ntp: Constify some function arguments (Ondrej Mosnacek) [1680034] - [kernel] ntp: Use kstrtos64 for s64 variable (Ondrej Mosnacek) [1680034] - [kernel] ntp: Remove redundant arguments (Ondrej Mosnacek) [1680034] - [kernel] timekeeping: Use ktime_get_real_ts64() instead of getnstimeofday64() (Ondrej Mosnacek) [1680034] - [netdrv] hinic: Add pci device ids (Xiaojun Tan) [1662040] - [netdrv] net-next/hinic:add shutdown callback (Xiaojun Tan) [1662040] - [netdrv] hinic: optmize rx refill buffer mechanism (Xiaojun Tan) [1662040] - [netdrv] net: hinic: remove redundant pointer pfhwdev (Xiaojun Tan) [1662040] - [netdrv] net: hns: fix unsigned comparison to less than zero (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix sparse: some warnings in HNS drivers (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix WARNING when remove HNS driver with SMMU enabled (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix ICMP6 neighbor solicitation messages discard problem (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix probabilistic memory overwrite when HNS driver initialized (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use NAPI_POLL_WEIGHT for hns driver (Xiaojun Tan) [1661885] - [netdrv] net: hns: fix KASAN: use-after-free in hns_nic_net_xmit_hw() (Xiaojun Tan) [1661885] - [netdrv] net: hns: use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fixes the missing put_device in positive leg for roce reset (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix object reference leaks in hns_dsaf_roce_reset() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Restart autoneg need return failed when autoneg off (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix for missing of_node_put() after of_parse_phandle() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Use struct_size() in devm_kzalloc() (Xiaojun Tan) [1661885] - [netdrv] net: hns: Fix use after free identified by SLUB debug (Xiaojun Tan) [1661885] - [netdrv] net: hns: make function hns_gmac_wait_fifo_clean() static (Xiaojun Tan) [1661885] - [netdrv] net: hns: use eth_get_headlen interface instead of hns_nic_get_headlen (Xiaojun Tan) [1661885] - [netdrv] net: hns: Mark expected switch fall-through (Xiaojun Tan) [1661885] - [netdrv] net: hns: remove redundant variables 'max_frm' and 'tmp_mac_key' (Xiaojun Tan) [1661885] - [netdrv] net: hisilicon: hns: Replace mdelay() with msleep() (Xiaojun Tan) [1661885] - [netdrv] net: hns: make hns_dsaf_roce_reset non static (Xiaojun Tan) [1661885] - [netdrv] net: hns: Make many functions static (Xiaojun Tan) [1661885] - [bluetooth] Bluetooth: btusb: Add support for Intel bluetooth device 8087:0029 (Gopal Tiwari) [1678084] - [bluetooth] Bluetooth: btusb: Use bt_dev_err for Intel firmware loading errors (Gopal Tiwari) [1678084]- [vfio] vfio/pci: Restore device state on PM transition (Alex Williamson) [1700254] - [vfio] vfio/pci: Parallelize device open and release (Alex Williamson) [1700254] - [pci] Revert "PCI/ASPM: Do not initialize link state when aspm_disabled is set" (Myron Stowe) [1694143] - [pci] PCI: Fix incorrect value returned from pcie_get_speed_cap() (Myron Stowe) [1694143] - [x86] x86/PCI: Apply VMD's AERSID fixup generically (Myron Stowe) [1694143] - [pci] PCI/IOV: Remove unnecessary include of (Myron Stowe) [1694143] - [pci] PCI: pcie: Remove redundant 'default n' from Kconfig (Myron Stowe) [1694143] - [documentation] NTB: switchtec_ntb: Update switchtec documentation with prerequisites for NTB (Myron Stowe) [1694143] - [pci] PCI: Fix Switchtec DMA aliasing quirk dmesg noise (Myron Stowe) [1694143] - [pci] PCI: Add macro for Switchtec quirk declarations (Myron Stowe) [1694143] - [pci] PCI: Add Device IDs for Intel GPU "spurious interrupt" quirk (Myron Stowe) [1694143] - [pci] PCI / ACPI: Mark expected switch fall-through (Myron Stowe) [1694143] - [pci] PCI: Remove set but unused variable (Myron Stowe) [1694143] - [pci] PCI: Fix pci.c kernel-doc parameter warning (Myron Stowe) [1694143] - [pci] PCI: Allocate dma_alias_mask with bitmap_zalloc() (Myron Stowe) [1694143] - [include] PCI: Remove unused NFP32xx IDs (Myron Stowe) [1694143] - [maintainers] maintainers: Add Hyper-V IOMMU driver into Hyper-V CORE AND DRIVERS scope (Vitaly Kuznetsov) [1663292 1669989] - [iommu] hyper-v: Add Hyper-V stub IOMMU driver (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Set x2apic destination mode to physical when x2apic is available (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyper-v: Enable PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [clocksource] clockevents/drivers/i8253: Add support for PIT shutdown quirk (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Enable PV qspinlock for Hyper-V (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add GUEST_IDLE_MSR support (Vitaly Kuznetsov) [1663292 1669989] - [x86] hv: vmbus: Make TLFS #define names architecture neutral (Vitaly Kuznetsov) [1663292 1669989] - [x86] hyperv: Add interrupt handler annotations (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Refactor hv_irq_unmask() to use cpumask_to_vpset() (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Replace hv_vp_set with hv_vpset (Vitaly Kuznetsov) [1663292 1669989] - [pci] hv: Add __aligned(8) to struct retarget_msi_interrupt (Vitaly Kuznetsov) [1663292 1669989] - [vfio] vfio-pci/nvlink2: Fix ancient gcc warnings (Sam Bobroff) [1524679] - [vfio] vfio/pci: Cleanup license mess (Sam Bobroff) [1524679] - [vfio] vfio/pci: set TRACE_INCLUDE_PATH to fix the build error (Sam Bobroff) [1524679] - [vfio] vfio_pci: Add NVIDIA GV100GL [Tesla V100 SXM2] subdriver (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow regions to add own capabilities (Sam Bobroff) [1524679] - [vfio] vfio_pci: Allow mapping extra regions (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Fault user page into the hypervisor's pagetable (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Check mmio_atsd array bounds when populating (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add release_ownership hook (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Add compound IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Convert NPU IOMMU helpers to iommu_table_group_ops (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move single TVE handling to NPU PE (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Reference iommu_table while it is linked to a group (Sam Bobroff) [1524679] - [powerpc] powerpc/iommu_api: Move IOMMU groups setup to a single place (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/pseries: Rework device adding to IOMMU groups (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries: Remove IOMMU API support for non-LPAR systems (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/npu: Enable platform support (Sam Bobroff) [1524679] - [powerpc] powerpc/pseries/iommu: Use memory@ nodes in max RAM address calculation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/npu: Move OPAL calls away from context manipulation (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv: Move npu struct from pnv_phb to pci_controller (Sam Bobroff) [1524679] - [powerpc] powerpc/vfio/iommu/kvm: Do not pin device memory (Sam Bobroff) [1524679] - [vfio] powerpc/mm/iommu/vfio_spapr_tce: Change mm_iommu_get to reference a region (Sam Bobroff) [1524679] - [powerpc] powerpc/ioda/npu: Call skiboot's hot reset hook when disabling NPU2 (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels of cached userspace addresses on demand (Sam Bobroff) [1524679] - [powerpc] powerpc/powernv/ioda1: Remove dead code for a single device PE (Sam Bobroff) [1524679] - [rpmspec] redhat: add TC selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add net selftests to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: add pktgen samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: rename bpf_samples to kernel-selftests-internal (Ivan Vecera) [1691376] - [rpmspec] redhat: remove bpf_samples dependency on glibc-static and build it by default (Ivan Vecera) [1691376] - [tools] selftests: bpf: modify urandom_read and link it non-statically (Ivan Vecera) [1691376]- [netdrv] ibmvnic: Fix netdev feature clobbering during a reset (Steve Best) [1699018] - [netdrv] ibmvnic: Enable GRO (Steve Best) [1699018] - [x86] x86/perf/amd: Remove need to check "running" bit in NMI handler (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve NMI latency issues for active PMCs (David Arcari) [1640238] - [x86] x86/perf/amd: Resolve race condition when disabling PMC (David Arcari) [1640238] - [netdrv] qed: Fix qed_mcp_halt|resume() (Manish Chopra) [1697310]- [x86] x86/kexec: Fix a kexec_file_load() failure (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: include linux/vmalloc.h (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: handle empty command-line (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: return successfully even if kaslr-seed doesn't exist (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: Refactor setup_dtb() to consolidate error checking (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: add kaslr support (Bhupesh Sharma) [1666078] - [char] random: Make crng state queryable (Bhupesh Sharma) [1666078] - [include] include: pe.h: remove message[] from mz header definition (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: invoke the kernel without purgatory (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: allow for loading Image-format kernel (Bhupesh Sharma) [1666078] - [arm64] arm64: kexec_file: load initrd and device-tree (Bhupesh Sharma) [1666078] - [arm64] arm64: enable KEXEC_FILE config (Bhupesh Sharma) [1666078] - [arm64] arm64: cpufeature: add MMFR0 helper functions (Bhupesh Sharma) [1666078] - [arm64] arm64: add image head flag definitions (Bhupesh Sharma) [1666078] - [kernel] kexec_file: kexec_walk_memblock() only walks a dedicated region at kdump (Bhupesh Sharma) [1666078] - [kernel] powerpc, kexec_file: factor out memblock-based arch_kexec_walk_mem() (Bhupesh Sharma) [1666078] - [kernel] s390, kexec_file: drop arch_kexec_mem_walk() (Bhupesh Sharma) [1666078] - [kernel] kexec_file: make kexec_image_post_load_cleanup_default() global (Bhupesh Sharma) [1666078] - [include] asm-generic: add kexec_file_load system call to unistd.h (Bhupesh Sharma) [1666078] - [include] asm-generic: unistd.h: Wire up sys_rseq (Bhupesh Sharma) [1666078] - [fs] xfs: don't overflow xattr listent buffer (Bill O'Donnell) [1683531] - [drm] drm/i915/gvt: Add in context mmio 0x20D8 to gen9 mmio list (Paul Lai) [1651589] - [fs] copy_mount_string: Limit string length to PATH_MAX (Miklos Szeredi) [1655272] - [include] redhat: Reuse other arch's cpuhp_state to protect kABI (Robert Richter) [1658476] - [drivers] drivers/perf: Add Cavium ThunderX2 SoC UNCORE PMU driver (Robert Richter) [1658476] - [documentation] Documentation: perf: Add documentation for ThunderX2 PMU uncore driver (Robert Richter) [1658476]- [arm64] arm64: apply workaround on A64FX v1r0 (Mark Langsdorf) [1692306] - [fs] kernfs: fix xattr name handling in LSM helpers (Ondrej Mosnacek) [1558179] - [include] LSM: lsm_hooks.h - fix missing colon in docstring (Ondrej Mosnacek) [1558179] - [security] selinux: Make selinux_kernfs_init_security static (Ondrej Mosnacek) [1558179] - [fs] kernfs: initialize security of newly created nodes (Ondrej Mosnacek) [1558179] - [security] selinux: implement the kernfs_init_security hook (Ondrej Mosnacek) [1558179] - [include] LSM: add new hook for kernfs node initialization (Ondrej Mosnacek) [1558179] - [fs] kernfs: use simple_xattrs for security attributes (Ondrej Mosnacek) [1558179] - [security] selinux: try security xattr after genfs for kernfs filesystems (Ondrej Mosnacek) [1558179] - [fs] kernfs: do not alloc iattrs in kernfs_xattr_get (Ondrej Mosnacek) [1558179] - [fs] kernfs: clean up struct kernfs_iattrs (Ondrej Mosnacek) [1558179] - [fs] kernfs: allow creating kernfs objects with arbitrary uid/gid (Ondrej Mosnacek) [1558179] - [tools] tools/power turbostat: Add Icelake support (Steve Best) [1698546] - [tools] tools/power turbostat: consolidate duplicate model numbers (Steve Best) [1698546] - [mm] s390/mm: silence compiler warning when compiling without CONFIG_PGSTE (Thomas Huth) [1698848] - [scripts] unifdef: use memcpy instead of strncpy (Thomas Huth) [1698848] - [s390] s390: align struct lowcore to double page size (Thomas Huth) [1698848] - [powerpc] KVM: PPC: Book3S HV: Perserve PSSCR FAKE_SUSPEND bit on guest exit (Suraj Jitindar Singh) [1689768]- [virtio] virtio: Honour 'may_reduce_num' in vring_create_virtqueue (Cornelia Huck) [1697505] - [s390] setup: set control program code via diag 318 (Thomas Huth) [1592336] - [s390] kvm: s390: set host program identifier (Thomas Huth) [1592336] - [edac] EDAC, skx: Fix randconfig builds in a better way (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx: Fix randconfig builds (Aristeu Rozanski) [1501612 1649988 1571534] - [edac] EDAC, skx_edac: Add address translation for non-volatile DIMMs (Aristeu Rozanski) [1501612 1649988 1571534] - [acpi] ACPI/ADXL: Add address translation interface using an ACPI DSM (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Add macros for the corrected error count bit field (Aristeu Rozanski) [1501612 1649988 1571534] - [x86] x86/mce: Use BIT_ULL(x) for bit mask definitions (Aristeu Rozanski) [1501612 1649988 1571534] - [crypto] crypto: ecc - regularize scalar for scalar multiplication (Neil Horman) [1687888] - [crypto] crypto: ecc - check for invalid values in the key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - make crypto_dh_encode_key() make robust (Neil Horman) [1687888] - [crypto] crypto: dh - fix calculating encoded key size (Neil Horman) [1687888] - [crypto] crypto: ecdh - fix typo of P-192 b value (Neil Horman) [1687888] - [crypto] crypto: ecdh - add public key verification test (Neil Horman) [1687888] - [crypto] crypto: dh - fix memory leak (Neil Horman) [1687888] - [crypto] crypto: dh - add public key verification test (Neil Horman) [1687888] - [scsi] scsi: hisi_sas: Add softreset in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change SERDES_CFG init value to increase reliability of HiLink (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Send HARD RESET to clear the previous affiliation of STP target port (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set PHY linkrate when disconnected (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: print PHY RX errors count for later revision of v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Change return variable type in phy_up_v3_hw() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: fix calls to dma_set_mask_and_coherent() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Do some more tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Issue internal abort on all relevant queues (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change queue depth from 512 to 4096 (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add manual trigger for debugfs dump (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIX feature for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add missing seq_printf() call in hisi_sas_show_row_32() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix to only call scsi_get_prot_op() for non-NULL scsi_cmnd (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Some misc tidy-up (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Correct memory allocation size for DQ debugfs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix losing directly attached disk when hot-plug (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Reject setting programmed minimum linkrate > 1.5G (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove unused parameter of function hisi_sas_alloc() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: remove the check of sas_dev status in hisi_sas_I_T_nexus_reset() (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: shutdown axi bus to avoid exception CQ returned (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: send primitive NOTIFY to SSP situation only (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs ITCT file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix type casting and missing static qualifier in debugfs code (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: No need to check return value of debugfs_create functions (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Set protection parameters prior to adding SCSI host (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs IOST file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs DQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs CQ file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add debugfs for port registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Debugfs global register create file and add file operations (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Take debugfs snapshot for all regs (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Alloc debugfs snapshot buffer memory for all registers (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create root and device debugfs directories (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for DIF feature for v2 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Make sg_tablesize consistent value (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some code to reduce complexity (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix warnings detected by sparse (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: change the time of SAS SSP connection (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Relocate some codes to avoid an unused check (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt coalescing for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Add support for interrupt converge for v3 hw (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Create separate host attributes per HBA (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: use dma_set_mask_and_coherent (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Remove set but not used variable 'dq_list' (Xiaojun Tan) [1662038] - [scsi] scsi: hisi_sas: Fix NULL pointer dereference (Xiaojun Tan) [1662038] - [nvme] nvme-pci: add missing unlock for reset error (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix rapid add remove sequence (Gopal Tiwari) [1665354] - [nvme] nvme: remove the .stop_ctrl callout (Gopal Tiwari) [1665354] - [nvme] nvme: add support for the Write Zeroes command (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix null dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix timeout handler (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix uninitialized variable access (Gopal Tiwari) [1665354] - [nvme] nvme: don't initlialize ctrl->cntlid twice (Gopal Tiwari) [1665354] - [nvme] nvme: introduce NVME_QUIRK_IGNORE_DEV_SUBNQN (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: remove dead code (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: don't ask if controller is fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: unset write/poll queues for discovery controllers (Gopal Tiwari) [1665354] - [nvme] nvme: pad fake subsys NQN vid and ssvid with zeros (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix out of bounds access in nvme_cqe_pending (Gopal Tiwari) [1665354] - [nvme] nvme-pci: use the same attributes when freeing host_mem_desc_bufs. (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix the wrong setting of nr_maps (Gopal Tiwari) [1665354] - [nvme] nvme-pci: rerun irq setup on IO queue init errors (Gopal Tiwari) [1665354] - [nvme] nvme-pci: trace SQ status on completions (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to pass in nr_poll_queues (Gopal Tiwari) [1665354] - [nvme] nvme-core: optionally poll sync commands (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix spelling mistake "attepmpt" -> "attempt" (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: fix endianess annotations (Gopal Tiwari) [1665354] - [nvme] nvme-pci: refactor nvme_poll_irqdisable to make sparse happy (Gopal Tiwari) [1665354] - [nvme] nvme-pci: only set nr_maps to 2 if poll queues are supported (Gopal Tiwari) [1665354] - [nvme] nvmet: use a macro for default error location (Gopal Tiwari) [1665354] - [nvme] nvmet: fix comparison of a u16 with -1 (Gopal Tiwari) [1665354] - [nvme] nvme: fix kernel paging oops (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: support separate queue maps for read and write (Gopal Tiwari) [1665354] - [include] block: make request_to_qc_t public (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user to set nr_write_queues for separate queue maps (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: add missing nvmf_ctrl_options documentation (Gopal Tiwari) [1665354] - [nvme] blk-mq-rdma: pass in queue map to blk_mq_rdma_map_queues (Gopal Tiwari) [1665354] - [nvme] nvmet: update smart log with num err log entries (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for file backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log page cmd handler (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for bdev backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for admin-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for fabrics-cmd (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support for rdma backend (Gopal Tiwari) [1665354] - [nvme] nvmet: add error log support in the core (Gopal Tiwari) [1665354] - [nvme] nvmet: add interface to update error-log page (Gopal Tiwari) [1665354] - [include] nvme: add error log page slot definition (Gopal Tiwari) [1665354] - [nvme] nvmet: add error-log definitions (Gopal Tiwari) [1665354] - [nvme] nvme: remove nvme_common command cdw10 array (Gopal Tiwari) [1665354] - [nvme] nvme: provide fallback for discard alloc failure (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unused variable (Gopal Tiwari) [1665354] - [nvme] nvme: add __exit annotation (Gopal Tiwari) [1665354] - [nvme] nvmet: allow configfs tcp trtype configuration (Gopal Tiwari) [1665354] - [nvme] nvme-tcp: add NVMe over TCP host driver (Gopal Tiwari) [1665354] - [nvme] nvmet-tcp: add NVMe over TCP target driver (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing data digest (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: allow user passing header digest (Gopal Tiwari) [1665354] - [nvme] nvmet: Add install_queue callout (Gopal Tiwari) [1665354] - [nvme] nvmet: use unlikely for req status check (Gopal Tiwari) [1665354] - [include] nvme-tcp: Add protocol header (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: Add unlikely for response allocated check (Gopal Tiwari) [1665354] - [nvme] nvmet: fix the structure member indentation (Gopal Tiwari) [1665354] - [nvme] nvme: implement Enhanced Command Retry (Gopal Tiwari) [1665354] - [nvme] nvme: remove unused function nvme_ctrl_ready (Gopal Tiwari) [1665354] - [nvme] nvmet: support fabrics sq flow control (Gopal Tiwari) [1665354] - [nvme] nvmet: enable Discovery Controller AENs (Gopal Tiwari) [1665354] - [nvme] nvmet: expose support for fabrics SQ flow control disable in treq (Gopal Tiwari) [1665354] - [nvme] nvme: disable fabrics SQ flow control when asked by the user (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: remove the IN_ISR deferred scheduling options (Gopal Tiwari) [1665354] - [nvme] nvme: Remove unused forward declaration (Gopal Tiwari) [1665354] - [nvme] nvmet: allow host connect even if no allowed subsystems are exported (Gopal Tiwari) [1665354] - [nvme] nvmet: don't override treq upon modification. (Gopal Tiwari) [1665354] - [nvme] nvmet: mark nvmet_genctr static (Gopal Tiwari) [1665354] - [nvme] nvmet: add defines for discovery change async events (Gopal Tiwari) [1665354] - [nvme] nvmet: support for traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvmet: make kato and AEN processing for use by other controllers (Gopal Tiwari) [1665354] - [nvme] nvmet: change aen mask functions to use bit numbers (Gopal Tiwari) [1665354] - [nvme] nvmet: provide aen bit functions for multiple controller types (Gopal Tiwari) [1665354] - [nvme] nvmet: add support to Discovery controllers for commands (Gopal Tiwari) [1665354] - [nvme] nvmet: use IOCB_NOWAIT for file-ns buffered I/O (Gopal Tiwari) [1665354] - [nvme] nvmet: allow Keep Alive for Discovery controller (Gopal Tiwari) [1665354] - [nvme] nvme: support traffic based keep-alive (Gopal Tiwari) [1665354] - [nvme] nvme: cache controller attributes (Gopal Tiwari) [1665354] - [nvme] nvme: introduce ctrl attributes enumeration (Gopal Tiwari) [1665354] - [nvme] nvme: consolidate memset calls in the nvme_setup_cmd path (Gopal Tiwari) [1665354] - [nvme] nvme: warn when finding multi-port subsystems without multipathing enabled (Gopal Tiwari) [1665354] - [nvme] Revert "nvmet-rdma: use a private workqueue for delete" (Gopal Tiwari) [1665354] - [nvme] nvme-fabrics: move controller options matching to fabrics (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: always have a valid trsvcid (Gopal Tiwari) [1665354] - [nvme] nvme-pci: remove duplicate check (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix hot removal during error handling (Gopal Tiwari) [1665354] - [nvme] nvmet-fcloop: suppress a compiler warning (Gopal Tiwari) [1665354] - [nvme] nvme-core: make implicit seed truncation explicit (Gopal Tiwari) [1665354] - [nvme] nvmet-fc: fix kernel-doc headers (Gopal Tiwari) [1665354] - [nvme] nvmet: avoid integer overflow in the discard code (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvmet: use strlcpy() instead of strcpy() (Gopal Tiwari) [1665354] - [nvme] nvme-pci: fix nvme_suspend_queue() kernel-doc header (Gopal Tiwari) [1665354] - [nvme] nvme-core: declare local symbols static (Gopal Tiwari) [1665354] - [nvme] nvme-core: rework a NQN copying operation (Gopal Tiwari) [1665354] - [nvme] nvmet: use strcmp() instead of strncmp() for subsystem lookup (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: check for timeout in nvme_rdma_wait_for_cm() (Gopal Tiwari) [1665354] - [nvme] nvmet: remove unreachable code (Gopal Tiwari) [1665354] - [nvme] nvme: update node paths after adding new path (Gopal Tiwari) [1665354] - [nvme] nvme: remove ns sibling before clearing path (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: use a private workqueue for delete (Gopal Tiwari) [1665354] - [nvme] nvmet: don't split large I/Os unconditionally (Gopal Tiwari) [1665354] - [nvme] nvme-core: add async event trace helper (Gopal Tiwari) [1665354] - [nvme] nvmet_fc: support target port removal with nvmet layer (Gopal Tiwari) [1665354] - [nvme] nvmet: remove redundant module prefix (Gopal Tiwari) [1665354] - [nvme] nvme: fix typo in nvme_identify_ns_descs (Gopal Tiwari) [1665354] - [nvme] nvme: register ns_id attributes as default sysfs groups (Gopal Tiwari) [1665354] - [block] block: genhd: add 'groups' argument to device_add_disk (Gopal Tiwari) [1665354] - [nvme] nvme: count all ANA groups for ANA Log page (Gopal Tiwari) [1665354] - [nvme] nvmet-rdma: fix possible bogus dereference under heavy load (Gopal Tiwari) [1665354] - [nvme] nvmet: free workqueue object if module init fails (Gopal Tiwari) [1665354] - [nvme] nvme-fcloop: Fix dropped LS's to removed target port (Gopal Tiwari) [1665354] - [nvme] nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event (Gopal Tiwari) [1665354] - [nvme] nvmet: add ns write protect support (Gopal Tiwari) [1665354] - [nvme] nvme: set gendisk read only based on nsattr (Gopal Tiwari) [1665354] - [include] nvme.h: add support for ns write protect definitions (Gopal Tiwari) [1665354] - [nvme] nvmet: use Retain Async Event bit to clear AEN (Gopal Tiwari) [1665354] - [nvme] nvmet: support configuring ANA groups (Gopal Tiwari) [1665354] - [nvme] nvmet: add minimal ANA support (Gopal Tiwari) [1665354] - [nvme] nvmet: track and limit the number of namespaces per subsystem (Gopal Tiwari) [1665354] - [nvme] nvmet: keep a port pointer in nvmet_ctrl (Gopal Tiwari) [1665354] - [nvme] nvmet: check fileio lba range access boundaries (Gopal Tiwari) [1665354] - [nvme] nvmet: don't use uuid_le type (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize admin/io queue teardown sequence (Gopal Tiwari) [1665354] - [nvme] nvmet: fix file discard return status (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: centralize controller setup sequence (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: unquiesce queues when deleting the controller (Gopal Tiwari) [1665354] - [nvme] nvme: add disk name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme-rdma: mark expected switch fall-through (Gopal Tiwari) [1665354] - [nvme] nvme: add controller name to trace events (Gopal Tiwari) [1665354] - [nvme] nvme: use hw qid in trace events (Gopal Tiwari) [1665354] - [nvme] nvmet: add buffered I/O support for file backed ns (Gopal Tiwari) [1665354] - [nvme] nvme: move init of keep_alive work item to controller initialization (Gopal Tiwari) [1665354] - [nvme] nvmet: add commands supported and effects log page (Gopal Tiwari) [1665354] - [nvme] lightnvm: limit get chunk meta request size (Gopal Tiwari) [1665354] - [nvme] lightnvm: Remove redundant rq->__data_len initialization (Gopal Tiwari) [1665354] - [block] nbd: restrict use to AF_UNIX sockets (Mike Christie) [1673307] - [block] nbd: don't allow invalid blocksize settings (Mike Christie) [1673307] - [documentation] doc, block, bfq: add information on bfq execution time (Ming Lei) [1686682] - [block] block, bfq: save & resume weight on a queue merge/split (Ming Lei) [1686682] - [block] block, bfq: print SHARED instead of pid for shared queues in logs (Ming Lei) [1686682] - [block] block, bfq: always protect newly-created queues from existing active queues (Ming Lei) [1686682] - [block] block, bfq: do not tag totally seeky queues as soft rt (Ming Lei) [1686682] - [block] block, bfq: do not merge queues on flash storage with queueing (Ming Lei) [1686682] - [block] block, bfq: tune service injection basing on request service times (Ming Lei) [1686682] - [block] block, bfq: do not idle for lowest-weight queues (Ming Lei) [1686682] - [block] block, bfq: increase idling for weight-raised queues (Ming Lei) [1686682] - [block] block/bfq: fix ifdef for CONFIG_BFQ_GROUP_IOSCHED=y (Ming Lei) [1686682] - [block] block, bfq: fix in-service-queue check for queue merging (Ming Lei) [1686682] - [block] block, bfq: do not overcharge writes in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: port commit "cfq-iosched: improve hw_tag detection" (Ming Lei) [1686682] - [block] block, bfq: reduce threshold for detecting command queueing (Ming Lei) [1686682] - [block] block, bfq: fix queue removal from weights tree (Ming Lei) [1686682] - [block] block, bfq: fix sequential rq detection in rate estimation (Ming Lei) [1686682] - [block] block, bfq: unconditionally plug I/O in asymmetric scenarios (Ming Lei) [1686682] - [block] block, bfq: do not plug I/O of in-service queue when harmful (Ming Lei) [1686682] - [block] block, bfq: split function bfq_better_to_idle (Ming Lei) [1686682] - [block] block, bfq: consider also ioprio classes in symmetry detection (Ming Lei) [1686682] - [block] block, bfq: remove case of redirected bic from insert_request (Ming Lei) [1686682] - [block] block, bfq: make sure queue budgets are not below service received (Ming Lei) [1686682] - [block] block, bfq: avoid selecting a queue w/o budget (Ming Lei) [1686682] - [block] block, bfq: do not consider interactive queues in srt filtering (Ming Lei) [1686682] - [net] net: switchdev: Add extack to switchdev_handle_port_obj_add() callback (Ivan Vecera) [1690125] - [net] switchdev: Add extack to struct switchdev_notifier_info (Ivan Vecera) [1690125] - [net] vxlan: Add a function to init switchdev_notifier_vxlan_fdb_info (Ivan Vecera) [1690125] - [net] switchdev: Add extack argument to switchdev_port_obj_add() (Ivan Vecera) [1690125] - [net] bridge: Propagate extack to switchdev (Ivan Vecera) [1690125] - [net] ndo_bridge_setlink: Add extack (Ivan Vecera) [1690125] - [net] rocker, dsa, ethsw: Don't filter VLAN events on bridge itself (Ivan Vecera) [1690125] - [net] switchdev: Replace port obj add/del SDO with a notification (Ivan Vecera) [1690125] - [net] ocelot: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] mlxsw: spectrum_switchdev: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add helpers to aid traversal through lower devices (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] staging: fsl-dpaa2: ethsw: Introduce ethsw_port_dev_check() (Ivan Vecera) [1690125] - [net] dsa: slave: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] rocker: Handle SWITCHDEV_PORT_OBJ_ADD/_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add SWITCHDEV_PORT_OBJ_ADD, SWITCHDEV_PORT_OBJ_DEL (Ivan Vecera) [1690125] - [net] switchdev: Add a blocking notifier chain (Ivan Vecera) [1690125] - [net] switchdev: SWITCHDEV_OBJ_PORT_{VLAN, MDB}(): Sanitize (Ivan Vecera) [1690125] - [net] selftests: forwarding: Fix test for different devices (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add learning test (Ivan Vecera) [1693316] - [net] bridge: Allow querying bridge port flags (Ivan Vecera) [1693316] - [netdrv] vxlan: Allow changing ageing time (Ivan Vecera) [1693316] - [netdrv] vxlan: Add hardware FDB learning (Ivan Vecera) [1693316] - [netdrv] vxlan: Don't override user-added entries with ext-learned ones (Ivan Vecera) [1693316] - [netdrv] vxlan: Mark user-added FDB entries (Ivan Vecera) [1693316] - [netdrv] vxlan: vxlan_fdb_notify(): Make switchdev notification configurable (Ivan Vecera) [1693316] - [netdrv] vxlan: __vxlan_fdb_delete(): Drop unused argument vid (Ivan Vecera) [1693316] - [netdrv] vxlan: support NTF_USE refresh of fdb entries (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d_port_8472: New test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN decap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add an ECN encap test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TOS test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add a TTL test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Reconfigure & rerun tests (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add unicast test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add flood test (Ivan Vecera) [1693316] - [net] selftests: forwarding: vxlan_bridge_1d: Add ping test (Ivan Vecera) [1693316] - [net] selftests: forwarding: Add a skeleton of vxlan_bridge_1d (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add link_stats_rx_errors_get() (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_do(): Allow passing ping arguments (Ivan Vecera) [1693316] - [net] selftests: forwarding: ping{6, }_test(): Add description argument (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Add in_ns() (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Support NUM_NETIFS of 0 (Ivan Vecera) [1693316] - [net] skb_scrub_packet(): Scrub offload_fwd_mark (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: extract ping and ping6 so they can be reused (Ivan Vecera) [1693316] - [net] selftests: forwarding: README: Require diagrams (Ivan Vecera) [1693316] - [net] selftests: forwarding: lib: Extract interface-init functions (Ivan Vecera) [1693316] - [net] selftests: forwarding: tc_rule_stats_get: Parameterize direction (Ivan Vecera) [1693316] - [net] selftests: forwarding: multipath_eval(): Improve style (Ivan Vecera) [1693316] - [net] selftests: forwarding: Move multipath_eval() to lib.sh (Ivan Vecera) [1693316] - [net] selftests: Add test_vxlan_fdb_changelink.sh (Ivan Vecera) [1690309] - [netdrv] vxlan: changelink: Fix handling of default remotes (Ivan Vecera) [1690309] - [netdrv] vxlan: Fix error path in __vxlan_dev_create() (Ivan Vecera) [1690309] - [netdrv] vxlan: Unmark offloaded bit on replaced FDB entries (Ivan Vecera) [1690309] - [net] bridge: switchdev: Allow clearing FDB entry offload indication (Ivan Vecera) [1690309] - [netdrv] vxlan: Notify for each remote of a removed FDB entry (Ivan Vecera) [1690309] - [netdrv] vxlan: Support marking RDSTs as offloaded (Ivan Vecera) [1690309] - [netdrv] vxlan: Add vxlan_fdb_find_uc() for FDB querying (Ivan Vecera) [1690309] - [netdrv] vxlan: Add switchdev notifications (Ivan Vecera) [1690309] - [netdrv] net: Add netif_is_vxlan() (Ivan Vecera) [1690309] - [net] inet: Refactor INET_ECN_decapsulate() (Ivan Vecera) [1690309] - [netdrv] vxlan: Export address checking functions (Ivan Vecera) [1690309] - [net] vxlan: Remove duplicated include from vxlan.h (Ivan Vecera) [1690309] - [netdrv] geneve: correctly handle ipv6.disable module parameter (Jiri Benc) [1692390] - [net] ipv6: sit: reset ip header pointer in ipip6_rcv (Lorenzo Bianconi) [1691626] - [net] vxlan: Don't call gro_cells_destroy() before device is unregistered (Andrea Claudi) [1692499] - [net] xsk: do not remove umem from netdevice on fall-back to copy-mode (Petr Oros) [1690568] - [net] xsk: Check if a queue exists during umem setup (Petr Oros) [1690568] - [net] xsk: simplify xdp_clear_umem_at_qid implementation (Petr Oros) [1690568] - [net] ethtool: don't allow disabling queues with umem installed (Petr Oros) [1690568] - [net] ethtool: rename local variable max -> curr (Petr Oros) [1690568] - [net] xsk: fix bug when trying to use both copy and zero-copy on one queue id (Petr Oros) [1690568] - [net] add umem reference in netdev{_rx}_queue (Petr Oros) [1690568] - [net] xsk: remove unnecessary assignment (Petr Oros) [1690568] - [net] xsk: fix return value of xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] xsk: don't allow umem replace at stack level (Petr Oros) [1690568] - [net] xsk: refactor xdp_umem_assign_dev() (Petr Oros) [1690568] - [net] update real_num_rx_queues even when !CONFIG_SYSFS (Petr Oros) [1690568] - [net] core: add __netdev_sent_queue as variant of __netdev_tx_sent_queue (Petr Oros) [1690127] - [net] net: do not abort bulk send on BQL status (Petr Oros) [1690129] - [net] net: bql: add __netdev_tx_sent_queue() (Petr Oros) [1690129] - [net] net: ip6_gre: fix possible NULL pointer dereference in ip6erspan_set_version (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: initialize erspan_ver just for erspan tunnels (Lorenzo Bianconi) [1666315] - [net] net: ip6_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] net: ip_gre: always reports o_key to userspace (Lorenzo Bianconi) [1666315] - [net] tcp: handle inet_csk_reqsk_queue_add() failures (Guillaume Nault) [1690157] - [net] ip_gre: use erspan key field for tunnel lookup (Lorenzo Bianconi) [1664570] - [net] ip6_gre: simplify gre header parsing in ip6gre_err (Lorenzo Bianconi) [1664570] - [net] ipv4: use a dedicated counter for icmp_v4 redirect packets (Lorenzo Bianconi) [1664209] - [net] virtchnl: Fix off by one error (Ivan Vecera) [1690114] - [net] virtchnl: white space and reorder (Ivan Vecera) [1690114] - [net] i40e: Update status codes (Ivan Vecera) [1690114] - [net] ethtool: Add WAKE_FILTER and RX_CLS_FLOW_WAKE (Ivan Vecera) [1690091] - [net] geneve: allow to clear ttl inherit (Hangbin Liu) [1671251] - [net] geneve: add ttl inherit support (Hangbin Liu) [1671251] - [net] tipc: fix a double kfree_skb() (Jon Maloy) [1684290] - [net] vxlan: Fix GRO cells race condition between receive and link delete (Andrea Claudi) [1687046] - [net] sock: consistent handling of extreme SO_SNDBUF/SO_RCVBUF values (Guillaume Nault) [1686564] - [net] tun: implement carrier change (Guillaume Nault) [1686566] - [net] ip6_tunnel: respect ttl inherit for ip6tnl (Hangbin Liu) [1664944] - [net] ip6_gre: update version related info when changing link (Hangbin Liu) [1664900] - [net] ipv4/route: fail early when inet dev is missing (Paolo Abeni) [1685424] - [net] bonding/802.3ad: fix link_failure_count tracking (Matteo Croce) [1657905] - [net] bonding: avoid possible dead-lock (Matteo Croce) [1657905] - [net] bonding: fix length of actor system (Matteo Croce) [1657905] - [net] bonding: fix warning message (Matteo Croce) [1657905] - [net] bonding: pass link-local packets to bonding master also. (Matteo Croce) [1657905]- [infiniband] IB/usnic: fix spelling mistake "unvalid" -> "invalid" (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Get rid of ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] RDMA/usnic: Do not use ucontext->tgid (Jonathan Toppins) [1685307] - [infiniband] infiniband: remove redundant condition check before debugfs_remove (Jonathan Toppins) [1685307] - [infiniband] RDMA/rdmavt: Fix rvt_create_ah function signature (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use core provided API for registering device attributes (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Remove unnecessary enum values (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move ruc_loopback to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move send completion logic to rdmavt (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Move copy SGE logic into rdmavt (Jonathan Toppins) [1685307] - [infiniband] RDMA/rxe: Remove unused addr_same() (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid srq memory leak (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: replace kvfree with vfree (Jonathan Toppins) [1685307] - [infiniband] RDMA/drivers: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/drivers: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] IB/rxe: fixes for rdma read retry (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: avoid back-to-back retries (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Refactor lookup memory function (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Avoid NULL check when search is successful (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Change pool state enums to capital letters (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Replace spinlock with rwlock (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: Simplify rxe_find_route() to avoid GID query for netdev (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: remove redudant qpn check (Jonathan Toppins) [1685307] - [infiniband] IB/rxe: vary the source udp port for receive scaling (Jonathan Toppins) [1685307] - [infiniband] iser: set sector for ambiguous mr status errors (Jonathan Toppins) [1685307] - [net] svcrdma: Remove try_module_get from backchannel (Jonathan Toppins) [1685307] - [net] svcrdma: Remove ->release_rqst call in bc reply handler (Jonathan Toppins) [1685307] - [net] xprtrdma: Clean up xprt_rdma_disconnect_inject (Jonathan Toppins) [1685307] - [net] xprtrdma: Add documenting comments (Jonathan Toppins) [1685307] - [net] xprtrdma: Report when there were zero posted Receives (Jonathan Toppins) [1685307] - [net] xprtrdma: Move rb_flags initialization (Jonathan Toppins) [1685307] - [net] xprtrdma: Don't disable BH's in backchannel server (Jonathan Toppins) [1685307] - [net] xprtrdma: Remove memory address of "ep" from an error message (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_qp_async_error_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Simplify RPC wake-ups on connect (Jonathan Toppins) [1685307] - [net] xprtrdma: Re-organize the switch() in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Eliminate "connstate" variable from rpcrdma_conn_upcall() (Jonathan Toppins) [1685307] - [net] xprtrdma: Conventional variable names in rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] xprtrdma: Rename rpcrdma_conn_upcall (Jonathan Toppins) [1685307] - [net] sunrpc: Report connect_time in seconds (Jonathan Toppins) [1685307] - [net] sunrpc: Fix connect metrics (Jonathan Toppins) [1685307] - [net] xprtrdma: Name MR trace events consistently (Jonathan Toppins) [1685307] - [net] xprtrdma: Explicitly resetting MRs is no longer necessary (Jonathan Toppins) [1685307] - [net] xprtrdma: Create more MRs at a time (Jonathan Toppins) [1685307] - [net] xprtrdma: xprt_release_rqst_cong is called outside of transport_lock (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Log sysfs 'dev_id' accesses from userspace (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Use dev_port to expose network interface port numbers (Jonathan Toppins) [1685307] - [infiniband] IB/ipoib: Ensure that MTU isn't less than minimum permitted (Jonathan Toppins) [1685307] - [infiniband] IB/srp: Remove unnecessary unlikely() (Jonathan Toppins) [1685307] - [infiniband] IB/core: Fix oops in netdev_next_upper_dev_rcu() (Jonathan Toppins) [1685307] - [infiniband] IB/umem: Set correct address to the invalidation function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Add GIDs while changing MAC addr only for registered ndev (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fix comment for hw stats init for port == 0 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refactor ib_register_device() function (Jonathan Toppins) [1685307] - [infiniband] IB/mlx4: Refer to the device kobject instead of ports_parent (Jonathan Toppins) [1685307] - [include] RDMA/core: Allow existing drivers to set one sysfs group per device (Jonathan Toppins) [1685307] - [infiniband] RDMA/umad: Use kernel API to allocate umad indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use kernel API to allocate uverbs indexes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Increase total number of RDMA ports across all devices (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename ports_parent to ports_kobj (Jonathan Toppins) [1685307] - [infiniband] RDMA/nldev: Allow IB device rename through RDMA netlink (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Implement IB device rename function (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Annotate timeout as unsigned long (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Align multiple functions to kernel coding style (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Remove unused timeout_ms parameter from cma_resolve_iw_route() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cm: Respect returned status of cm_init_av_by_path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Protect from reentry to resource return path (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Release task struct which was hold by CM_ID object (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Consolidate task name updates in one place (Jonathan Toppins) [1685307] - [infiniband] RDMA/restrack: Un-inline set task implementation (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Check error status of rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [include] IB/mlx4: Avoid implicit enumerated type conversion (Jonathan Toppins) [1685307] - [infiniband] RDMA/netlink: Simplify netlink listener existence check (Jonathan Toppins) [1685307] - [infiniband] RDMA: Remove unused parameter from ib_modify_qp_is_ok() (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix RCU annotation for radix slot deference (Jonathan Toppins) [1685307] - [infiniband] RDMA: Fix building with CONFIG_MMU=n (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_ib_acquire_dev() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Introduce and use cma_acquire_dev_by_src_ip() (Jonathan Toppins) [1685307] - [infiniband] RDMA/cma: Allow accepting requests for multi port rdma device (Jonathan Toppins) [1685307] - [infiniband] IB/rdmavt: Rename check_send_wqe as setup_wqe (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Acquire and release mmap_sem on page range (Jonathan Toppins) [1685307] - [infiniband] IB/sa: simplify return code logic for ib_nl_send_msg() (Jonathan Toppins) [1685307] - [infiniband] RDMA/ulp: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_name instead of ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/core: Use dev_err/dbg/etc instead of pr_* + ibdev->name (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA: Fully setup the device name in ib_register_device (Jonathan Toppins) [1685307 1663226] - [infiniband] RDMA/umem: Fix potential addition overflow (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Minor optimizations (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Avoid synchronize_srcu in the ODP MR destruction path (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Handle a half-complete start/end sequence (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of per_mm->notifier_count (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use umem->owning_mm inside ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Move all the ODP related stuff out of ucontext and into per_mm (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Get rid of struct ib_umem.odp_data (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Make ib_umem_odp into a sub structure of ib_umem (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Use ib_umem_odp in all function signatures connected to ODP (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Do not use current->tgid to track the mm_struct (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Get rid of the old disassociate flow (Jonathan Toppins) [1685307] - [infiniband] RDMA/ucontext: Add a core API for mmaping driver IO memory (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Fix error unwind in ib_uverbs_add_one (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Properly return the error code of rdma_set_src_addr_rcu (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Remove is_closed from ib_uverbs_file (Jonathan Toppins) [1685307] - [include] IB/rxe: Revise the ib_wr_opcode enum (Jonathan Toppins) [1685307] - [include] RDMA: Remove duplicated include from ib_addr.h (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Consider net ns of gid attribute for RoCE (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce rdma_read_gid_attr_ndev_rcu() to check GID attribute (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Simplify roce_resolve_route_from_path() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Protect against changing dst->dev during destination resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Refer to network type instead of device type (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use common code flow for IPv4/6 for addr resolve (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rename rdma_copy_addr to rdma_copy_src_l2_addr (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Introduce and use rdma_set_src_addr() between IPv4 and IPv6 (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Let protocol specific function typecast sockaddr structure (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Avoid unnecessary sa_family overwrite (Jonathan Toppins) [1685307] - [infiniband] RDMA/core Introduce and use rdma_find_ndev_for_src_ip_rcu (Jonathan Toppins) [1685307] - [infiniband] IB/{hfi1, qib, rdmavt}: Schedule multi RC/UC packets instead of posting (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Move flow resources initialization (Jonathan Toppins) [1685307] - [infiniband] IB/uverbs: Add IDRs array attribute type to ioctl() interface (Jonathan Toppins) [1685307] - [include] RDMA/core: Document QP @event_handler function (Jonathan Toppins) [1685307] - [include] RDMA/core: Document CM @event_handler function (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Assign device ifindex before publishing the device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Follow correct unregister order between sysfs and cgroup (Jonathan Toppins) [1685307] - [infiniband] RDMA/umem: Restore lockdep check while downgrading lock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Define client_data_lock as rwlock instead of spinlock (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simpler spin lock irq API from blocking context (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Remove context entries from list while unregistering device (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Use simplified list_for_each (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: No need to protect kfree with spin lock and semaphore (Jonathan Toppins) [1685307] - [infiniband] RDMA/{cma, core}: Avoid callback on rdma_addr_cancel() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Rate limit MAD error messages (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Fail early if unsupported QP is provided (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use device.groups to initialize device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Use cdev_device_add() instead of cdev_add() (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Depend on device_add() to add device attributes (Jonathan Toppins) [1685307] - [infiniband] RDMA/core: Replace open-coded variant of get_device (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Declare closing variable as boolean (Jonathan Toppins) [1685307] - [infiniband] IB/core: Add an unbound WQ type to the new CQ API (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add generic function to fill in flow action object (Jonathan Toppins) [1685307] - [infiniband] RDMA/uverbs: Add UVERBS_ATTR_CONST_IN to the specs language (Jonathan Toppins) [1685307] - [netdrv] ibmvnic: Fix completion structure initialization (Steve Best) [1697103] - [rpmspec] redhat: limit headers_install_all to arches we care about (Denys Vlasenko) [1692404] - [lib] ida: Add new API (Jonathan Toppins) [1697588] - [edac] EDAC: Drop per-memory controller buses (Frank Ramsay) [1686477] - [edac] EDAC: Don't add devices under /sys/bus/edac (Frank Ramsay) [1686477] - [x86] x86/platform/UV: Use efi_runtime_lock to serialise BIOS calls (Frank Ramsay) [1677695]- [pci] PCI: pciehp: Fix re-enabling the slot marked for safe removal (Myron Stowe) [1695922] - [rpmspec] redhat: Enable gdb_index (Juri Lelli) [1696747] - [fs] ovl: Do not lose security.capability xattr over metadata file copy-up (Vivek Goyal) [1694757] - [fs] ovl: During copy up, first copy up data and then xattrs (Vivek Goyal) [1694757]- [netdrv] mark the intel igc driver as tech preview (David Arcari) [1495358] - [netdrv] igc: Remove unneeded hw_dbg prints (David Arcari) [1495358] - [netdrv] igc: Fix the typo in igc_base.h header definition (David Arcari) [1495358] - [netdrv] igc: Add support for the ntuple feature (David Arcari) [1495358] - [netdrv] igc: Add support for statistics (David Arcari) [1495358] - [netdrv] igc: Extend the ethtool supporting (David Arcari) [1495358] - [netdrv] igc: Add multiple receive queues control supporting (David Arcari) [1495358] - [netdrv] igc: Use struct_size() helper (David Arcari) [1495358] - [netdrv] igc: Add ethtool support (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_get_phy_id_base' method (David Arcari) [1495358] - [netdrv] igc: Remove the 'igc_read_mac_addr_base' method (David Arcari) [1495358] - [netdrv] igc: Remove unneeded code (David Arcari) [1495358] - [netdrv] igc: Remove unused code (David Arcari) [1495358] - [netdrv] igc: Fix code redundancy (David Arcari) [1495358] - [netdrv] igc: Remove unreachable code from igc_phy.c file (David Arcari) [1495358] - [netdrv] igc: Remove obsolete IGC_ERR define (David Arcari) [1495358] - [netdrv] ethernet/intel: consolidate NAPI and NAPI exit (David Arcari) [1495358] - [netdrv] igc: Clean up code (David Arcari) [1495358] - [netdrv] igc: Tidy up some white space (David Arcari) [1495358] - [netdrv] igc: fix error return handling from call to netif_set_real_num_tx_queues (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variable 'pci_using_dac' (David Arcari) [1495358] - [netdrv] igc: Remove set but not used variables 'ctrl_ext, link_mode' (David Arcari) [1495358] - [netdrv] intel-ethernet: software timestamp skbs as late as possible (David Arcari) [1495358] - [netdrv] igc: Add watchdog (David Arcari) [1495358] - [netdrv] igc: Add setup link functionality (David Arcari) [1495358] - [netdrv] igc: Add code for PHY support (David Arcari) [1495358] - [netdrv] igc: Add NVM support (David Arcari) [1495358] - [netdrv] igc: Add HW initialization code (David Arcari) [1495358] - [netdrv] igc: Add transmit and receive fastpath and interrupt handlers (David Arcari) [1495358] - [netdrv] igc: Add support for Tx/Rx rings (David Arcari) [1495358] - [netdrv] igc: Add interrupt support (David Arcari) [1495358] - [netdrv] igc: Add netdev (David Arcari) [1495358] - [netdrv] igc: Add support for PF (David Arcari) [1495358] - [netdrv] igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support (David Arcari) [1495358] - [s390] virtio-ccw: wire up ->bus_name callback (Cornelia Huck) [1695630] - [s390] s390/virtio: handle find on invalid queue gracefully (Cornelia Huck) [1695630] - [s390] virtio/s390: fix race in ccw_io_helper() (Cornelia Huck) [1695630] - [s390] virtio/s390: avoid race on vcdev->config (Cornelia Huck) [1695630] - [kvm] KVM: s390: make bitmap declaration consistent (Thomas Huth) [1695090] - [kvm] KVM: s390: drop obsolete else path (Thomas Huth) [1695090] - [kvm] KVM: s390: clarify kvm related kernel message (Thomas Huth) [1695090] - [kvm] s390: vsie: Use effective CRYCBD.31 to check CRYCBD validity (Thomas Huth) [1695090] - [kvm] KVM: s390: fix kmsg component kvm-s390 (Thomas Huth) [1695090] - [kvm] KVM: s390: unregister debug feature on failing arch init (Thomas Huth) [1695090] - [kvm] KVM: s390/vsie: avoid sparse warning (Thomas Huth) [1695090]- [powerpc] powerpc: use mm zones more sensibly (David Gibson) [1654978] - [s390] s390/mem_detect: add missing include (Philipp Rudo) [1695615] - [s390] s390: avoid vmlinux segments overlap (Philipp Rudo) [1695615] - [s390] s390/decompressor: add missing FORCE to build targets (Philipp Rudo) [1695615] - [s390] s390: move ipl block and cmd line handling to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: introduce sclp_early_get_hsa_size (Philipp Rudo) [1695615] - [s390] s390/mem_detect: add info source debug print (Philipp Rudo) [1695615] - [s390] s390/mem_detect: replace tprot loop with binary search (Philipp Rudo) [1695615] - [s390] s390/mem_detect: use SCLP info for continuous memory detection (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce z/VM specific diag260 call (Philipp Rudo) [1695615] - [s390] s390/mem_detect: introduce SCLP storage info (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section compile time validation (Philipp Rudo) [1695615] - [s390] s390/mem_detect: move tprot loop to early boot phase (Philipp Rudo) [1695615] - [s390] s390/sclp: move sclp_early_read_info to sclp_early_core.c (Philipp Rudo) [1695615] - [s390] s390: introduce .boot.data section (Philipp Rudo) [1695615] - [s390] s390/decompressor: clean up and rename compressed/misc.c (Philipp Rudo) [1695615] - [s390] s390: rescue initrd as early as possible (Philipp Rudo) [1695615] - [s390] s390/sclp: simplify early hsa_size detection (Philipp Rudo) [1695615] - [s390] s390/decompressor: get rid of .bss usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rework uncompressed image info collection (Philipp Rudo) [1695615] - [s390] s390: remove decompressor's head.S (Philipp Rudo) [1695615] - [s390] s390: clean up stacks setup (Philipp Rudo) [1695615] - [s390] s390: add initial 64-bit restart PSW (Philipp Rudo) [1695615] - [s390] s390/hibernate: fix error handling when suspend cpu != resume cpu (Philipp Rudo) [1695615] - [s390] s390/decompressor: support extra debug flags (Philipp Rudo) [1695615] - [s390] s390/build: add *.o.chkbss files to targets list (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid packing *.o.chkbss files into startup.a (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid constant startup.a rebuilds (Philipp Rudo) [1695615] - [s390] s390/boot: block uncompressed vmlinux booting attempts (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct EXCLUDE_FILE construct (Philipp Rudo) [1695615] - [s390] s390: move _text to an actual .text start (Philipp Rudo) [1695615] - [s390] s390: correct _stext offset (Philipp Rudo) [1695615] - [s390] s390: get rid of the first mb of uncompressed image (Philipp Rudo) [1695615] - [s390] s390: remove unused _ehead symbol (Philipp Rudo) [1695615] - [s390] s390: put expoline execute-trampolines into .text section (Philipp Rudo) [1695615] - [s390] s390/decompressor: discard ___kcrctab section (Philipp Rudo) [1695615] - [s390] s390/setup: do not reserve the decompressor code (Philipp Rudo) [1695615] - [s390] s390/decompressor: support uncompressed kernel (Philipp Rudo) [1695615] - [init] init/Kconfig: add an option for uncompressed kernel (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow to pack uncompressed vmlinux.bin into piggy.o (Philipp Rudo) [1695615] - [s390] s390/decompressor: allow preprocessor in piggy.o linker script (Philipp Rudo) [1695615] - [s390] s390/decompressor: extend .bss check for early code (Philipp Rudo) [1695615] - [s390] s390: add custom target and make path extension optional for .bss check (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid repeating objects list in Makefile (Philipp Rudo) [1695615] - [s390] s390/decompressor: reuse lib/mem.S for mem functions (Philipp Rudo) [1695615] - [s390] s390/decompressor: avoid reusing uncompressed image objects (Philipp Rudo) [1695615] - [s390] s390/als: avoid .init.* sections usage (Philipp Rudo) [1695615] - [s390] s390/decompressor: rename entry point to startup_decompressor (Philipp Rudo) [1695615] - [s390] s390/boot: make head.S and als.c be part of the decompressor only (Philipp Rudo) [1695615] - [s390] s390/decompressor: trim the kernel image up to 1M (Philipp Rudo) [1695615] - [s390] s390: remove uncompressed kernel image build (Philipp Rudo) [1695615] - [s390] s390/decompressor: correct build flags (Philipp Rudo) [1695615] - [s390] s390/build: remove obsolete -mkernel-backchain flag (Philipp Rudo) [1695615] - [tools] tools/power turbostat: return the exit status of a command (David Arcari) [1642739] - [misc] misc: hpilo: Do not claim unsupported hardware (Joseph Szczypek) [1665635] - [misc] misc: hpilo: Exclude unsupported device via blacklist (Joseph Szczypek) [1665635]- [fs] xfs: set buffer ops when repair probes for btree type (Bill O'Donnell) [1689281] - [fs] xfs: end sync buffer I/O properly on shutdown error (Bill O'Donnell) [1689281] - [fs] xfs: xfs_fsops: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] xfs: xfs_buf: drop useless LIST_HEAD (Bill O'Donnell) [1689281] - [fs] iomap: fix a use after free in iomap_dio_rw (Bill O'Donnell) [1689281] - [fs] xfs: reallocate realtime summary cache on growfs (Bill O'Donnell) [1689281] - [fs] xfs: stringify scrub types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: stringify btree cursor types in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_INODE_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: move XFS_AG_BTREE_CMP_FORMAT_STR mappings to libxfs (Bill O'Donnell) [1689281] - [fs] xfs: fix symbolic enum printing in ftrace output (Bill O'Donnell) [1689281] - [fs] xfs: fix function pointer type in ftrace format (Bill O'Donnell) [1689281] - [fs] xfs: Fix x32 ioctls when cmd numbers differ from ia32. (Bill O'Donnell) [1689281] - [fs] xfs: Fix bulkstat compat ioctls on x32 userspace. (Bill O'Donnell) [1689281] - [fs] xfs: Align compat attrlist_by_handle with native implementation. (Bill O'Donnell) [1689281] - [fs] xfs: require both realtime inodes to mount (Bill O'Donnell) [1689281] - [fs] xfs: cache minimum realtime summary level (Bill O'Donnell) [1689281] - [fs] xfs: count inode blocks correctly in inobt scrub (Bill O'Donnell) [1689281] - [fs] xfs: precalculate cluster alignment in inodes and blocks (Bill O'Donnell) [1689281] - [fs] xfs: precalculate inodes and blocks per inode cluster (Bill O'Donnell) [1689281] - [fs] xfs: add a block to inode count converter (Bill O'Donnell) [1689281] - [fs] xfs: remove xfs_rmap_ag_owner and friends (Bill O'Donnell) [1689281] - [fs] xfs: const-ify xfs_owner_info arguments (Bill O'Donnell) [1689281] - [fs] xfs: streamline defer op type handling (Bill O'Donnell) [1689281] - [fs] xfs: idiotproof defer op type configuration (Bill O'Donnell) [1689281] - [fs] xfs: clean up indentation issues, remove an unwanted space (Bill O'Donnell) [1689281] - [fs] xfs: libxfs: move xfs_perag_put late (Bill O'Donnell) [1689281] - [fs] xfs: split up the xfs_reflink_end_cow work into smaller transactions (Bill O'Donnell) [1689281] - [crypto] crypto: testmgr - add AES-CFB tests (Neil Horman) [1687897] - [scsi] scsi: iscsi: flush running unbind operations when removing a session (Maurizio Lombardi) [1695007] - [crypto] crypto: vmx - fix copy-paste error in CTR mode (Herbert Xu) [1693350] - [rpmspec] Fix cross builds (Jiri Olsa) [1694956] - [lib] sbitmap: order READ/WRITE freed instance and setting clear bit (Ming Lei) [1694521] - [block] blk-mq: fix sbitmap ws_active for shared tags (Ming Lei) [1694521] - [block] blk-mq: update comment for blk_mq_hctx_has_pending() (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_put_driver_tag() to put tag (Ming Lei) [1694521] - [include] sbitmap: trivial - update comment for sbitmap_deferred_clear_bit (Ming Lei) [1694521] - [block] blkcg: Fix kernel-doc warnings (Ming Lei) [1694521] - [block] block: Unexport blk_mq_add_to_requeue_list() (Ming Lei) [1694521] - [block] block: add BLK_MQ_POLL_CLASSIC for hybrid poll and return EINVAL for unexpected value (Ming Lei) [1694521] - [include] blk-mq: remove unused 'nr_expired' from blk_mq_hw_ctx (Ming Lei) [1694521] - [block] loop: access lo_backing_file only when the loop device is Lo_bound (Ming Lei) [1694521] - [block] blk-mq: use blk_mq_sched_mark_restart_hctx to set RESTART (Ming Lei) [1694521] - [kernel] blkcg: annotate implicit fall through (Ming Lei) [1694521] - [block] block: Replace function name in string with __func__ (Ming Lei) [1694521] - [block] block: fix NULL pointer dereference in register_disk (Ming Lei) [1694521] - [fs] fs: fix guard_bio_eod to check for real EOD errors (Ming Lei) [1694521] - [block] blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map (Ming Lei) [1694521] - [include] block: remove bvec_iter_rewind() (Ming Lei) [1694521] - [block] block: don't use bio->bi_vcnt to figure out segment number (Ming Lei) [1694521] - [fs] btrfs: look at bi_size for repair decisions (Ming Lei) [1694521] - [block] block: avoid setting none scheduler if it's already none (Ming Lei) [1694521] - [block] block: avoid setting wbt_lat_usec to current value (Ming Lei) [1694521] - [block] blk-sysfs: Rework documention of __blk_release_queue (Ming Lei) [1694521] - [block] blk-cgroup: Fix doc related to blkcg_exit_queue (Ming Lei) [1694521] - [block] block: kill QUEUE_FLAG_FLUSH_NQ (Ming Lei) [1694521] - [block] block: avoid setting nr_requests to current value (Ming Lei) [1694521] - [block] blk-mq: save default hctx into ctx->hctxs for not-supported type (Ming Lei) [1694521] - [block] blk-mq: save queue mapping result into ctx directly (Ming Lei) [1694521] - [block] block: mq-deadline: Fix write completion handling (Ming Lei) [1694521] - [crypto] crypto: user - fix leaking uninitialized memory to userspace (Herbert Xu) [1657880] {CVE-2018-19854} - [char] ipmi: fix sleep-in-atomic in free_user at cleanup SRCU user->release_barrier (Xiaojun Tan) [1689480] - [infiniband] usnic_verbs: fix deadlock (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix locking when unregistering (Govindarajulu Varadarajan) [1688505] - [infiniband] IB/usnic: Fix potential deadlock (Govindarajulu Varadarajan) [1688505] - [netdrv] net: hns3: fix improper error handling in the hclge_init_ae_dev() (Xiaojun Tan) [1687060] - [netdrv] net: hns3: fix netif_napi_del() not do problem when unloading (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Fix NULL deref when unloading driver (Xiaojun Tan) [1687060] - [netdrv] net: hns3: Modify the order of initializing command queue register (Xiaojun Tan) [1687060] - [netdrv] net: hns3: remove the Redundant put_vector in hns3_client_uninit (Xiaojun Tan) [1687060] - [netdrv] net: hns3: reuse reinitialization interface in the hns3_set_channels (Xiaojun Tan) [1687060]- [powercap] powercap/intel_rapl: add Ice Lake mobile (Steve Best) [1483427] - [x86] x86/CPU: Add Icelake model number (Steve Best) [1483427] - [watchdog] watchdog/hpwdt: Update Kconfig documentation (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Update driver version. (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Do not claim unsupported hardware (Joseph Szczypek) [1664861] - [watchdog] watchdog/hpwdt: Exclude via blacklist (Joseph Szczypek) [1664861] - [fs] autofs: add strictexpire mount option (Ian Kent) [1672134] - [fs] autofs: change catatonic setting to a bit flag (Ian Kent) [1672134] - [fs] autofs: simplify parse_options() function call (Ian Kent) [1672134] - [fs] autofs: add AUTOFS_EXP_FORCED flag (Ian Kent) [1672134] - [fs] autofs: make expire flags usage consistent with v5 params (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_indirect() static (Ian Kent) [1672134] - [fs] autofs: make autofs_expire_direct() static (Ian Kent) [1672134] - [fs] autofs: fix clearing AUTOFS_EXP_LEAVES in autofs_expire_indirect() (Ian Kent) [1672134] - [fs] autofs: fix inconsistent use of now variable (Ian Kent) [1672134] - [md] md: Fix failed allocation of md_register_thread (Nigel Croxon) [1665346] - [md] It's wrong to add len to sector_nr in raid10 reshape twice (Nigel Croxon) [1665346] - [md] raid5: set write hint for PPL (Nigel Croxon) [1665346] - [netdrv] amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs (Gary Hook) [1669565]- [x86] x86/retpolines: Disable switch jump tables when retpolines are enabled (Waiman Long) [1688258] - [x86] x86, retpolines: Raise limit for generating indirect calls from switch-case (Waiman Long) [1688258] - [net] vsock/virtio: fix kernel panic from virtio_transport_reset_no_sock (Stefano Garzarella) [1676595] - [net] vsock/virtio: reset connected sockets on device removal (Stefano Garzarella) [1676595] - [net] vsock/virtio: fix kernel panic after device hot-unplug (Stefano Garzarella) [1676595] - [powerpc] powerpc/livepatch: return -ERRNO values in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: small cleanups in save_stack_trace_tsk_reliable() (Joe Lawrence) [1659856] - [powerpc] powerpc/livepatch: relax reliable stack tracer checks for first-frame (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Make reliable stacktrace dependency clearer (Joe Lawrence) [1659856] - [powerpc] powerpc/64s: Clear on-stack exception marker upon exception return (Joe Lawrence) [1659856] - [infiniband] iw_cxgb4: Support FW write completion WR (Arjun Vynipadath) [1671320] - [infiniband] iw_cxgb4: RDMA write with immediate support (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: fix some info leaks (Arjun Vynipadath) [1671320] - [infiniband] rdma/cxgb4: Add support for 64Byte cqes (Arjun Vynipadath) [1671320] - [pci] pci: remove unused functionality (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] aacraid: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] be2iscsi: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] mpt3sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla2xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] qla4xxx: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] megaraid_sas: add removed id table" (Tomas Henzl) [1622638] - [scsi] lfpc: remove Lancer FCoE (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lpfc: add removed id table" (Tomas Henzl) [1622638] - [scsi] Revert "[scsi] lfpc: add Lancer FCoE to the removed devices" (Tomas Henzl) [1622638]- [kernel] printk: Export console_printk (Prarit Bhargava) [1642870] - [video] fbcon: Silence fbcon logo on 'quiet' boots (Prarit Bhargava) [1642870] - [scsi] scsi: ibmvscsi: Fix empty event pool access during host removal (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Protect ibmvscsi_head from concurrent modificaiton (Steve Best) [1692463] - [scsi] scsi: ibmvscsi: Improve strings handling (Steve Best) [1692463] - [x86] x86/mce: Handle varying MCA bank counts (David Arcari) [1668779] - [block] virtio_blk: add discard and write zeroes support (Stefano Garzarella) [1692939] - [arm64] arm64: kaslr: ensure randomized quantities are clean also when kaslr is off (Mark Salter) [1673068] - [arm64] arm64: kaslr: ensure randomized quantities are clean to the PoC (Mark Salter) [1673068] - [tools] perf annotate: Fix getting source line failure (Michael Petlan) [1614435] - [infiniband] IB/hfi1: Remove overly conservative VM_EXEC flag check (Alex Estrin) [1680018]- [scsi] scsi: qla2xxx: Fix NULL pointer crash due to stale CPUID (Himanshu Madhani) [1685013] - [scsi] scsi: core: Avoid that system resume triggers a kernel warning (Ewan Milne) [1691903] - [scsi] scsi: core: reset host byte in DID_NEXUS_FAILURE case (Ewan Milne) [1691903] - [scsi] scsi: core: Synchronize request queue PM status only on successful resume (Ewan Milne) [1691903] - [scsi] scsi: sd: Fix cache_type_store() (Ewan Milne) [1691903] - [scsi] scsi: sd: use mempool for discard special page (Ewan Milne) [1691903] - [scsi] scsi: core: Remove scsi_block_when_processing_errors: message (Ewan Milne) [1691903] - [scsi] scsi: core: Allow state transitions from OFFLINE to BLOCKED (Ewan Milne) [1691903] - [scsi] scsi: core: remove unnecessary unlikely() (Ewan Milne) [1691903] - [scsi] scsi: st: remove redundant pointer STbuffer (Ewan Milne) [1691903] - [scsi] scsi: core: Avoid that SCSI device removal through sysfs triggers a deadlock (Ewan Milne) [1691903] - [fs] scsi: sysfs: Introduce sysfs_{un,}break_active_protection() (Ewan Milne) [1691903] - [scsi] scsi sg: remove incorrect scsi command checking logic (Ewan Milne) [1691903] - [scsi] scsi: read host_busy via scsi_host_busy() (Ewan Milne) [1691903] - [scsi] scsi: sd: Remove a superfluous assignment (Ewan Milne) [1691903] - [scsi] scsi: don't add scsi command result bytes (Ewan Milne) [1691903] - [scsi] scsi: core: check for equality of result byte values (Ewan Milne) [1691903] - [scsi] scsi: scsi_transport_fc: use 64-bit timestamps consistently (Ewan Milne) [1691903] - [scsi] scsi: sg: clean up gfp_mask in sg_build_indirect (Ewan Milne) [1691903] - [scsi] scsi: core: remove Scsi_Cmnd typedef (Ewan Milne) [1691903] - [netdrv] ibmvnic: Report actual backing device speed and duplex values (Steve Best) [1691862] - [kernel] sched/fair: Fix O(nr_cgroups) in the load balancing path (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix insertion in rq->leaf_cfs_rq_list (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Add tmp_alone_branch assertion (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] sched/fair: Fix infinite loop in update_blocked_averages() by reverting a9e7f6544b9c (Phil Auld) [1685636] {CVE-2018-20784} - [kernel] tracing: Do a WARN_ON() if start_thread() in hwlat is called when thread exists (Jerome Marchand) [1693050] - [kernel] ftrace: Add missing check for existing hwlat thread (Jerome Marchand) [1693050] - [kernel] tracing: Do not call start/stop() functions when tracing_on does not change (Jerome Marchand) [1693050]- [scsi] scsi: lpfc: Fixup eq_clr_intr references (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix build error (Dick Kennedy) [1692882] - [scsi] scsi: be2iscsi: lpfc: fix typo (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.1 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Update Copyright in driver version (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Enhance 6072 log string (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix duplicate log message numbers (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Specify node affinity for queue memory allocation (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Reduce memory footprint for lpfc_queue (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Add loopback testing to trunking mode (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix link speed reporting for 4-link trunk (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix handling of trunk links state reporting (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix protocol support on G6 and G7 adapters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct boot bios information to FDMI registration (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix HDMI2 registration string for symbolic name (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix fc4type information for FDMI (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix FDMI manufacturer attribute value (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix io lost on host resets (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix mailbox hang on adapter init (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix driver crash in target reset handler (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct localport timeout duration error (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Convert bootstrap mbx polling from msleep to udelay (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Coordinate adapter error handling with offline handling (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Stop adapter if pci errors detected (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix deadlock due to nested hbalock call (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet handling of first burst cmd (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix lpfc_nvmet_mrq attribute handling when 0 (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix nvmet async receive buffer replenishment (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix location of SCSI ktime counters (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix use-after-free mailbox cmd completion (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve irq-unsafe lockdep heirarchy warning in lpfc_io_free (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Resolve inconsistent check of hdwq in lpfc_scsi_cmd_iocb_cmpl (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error codes in lpfc_sli4_pci_mem_setup() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix 32-bit format string warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix unused variable warning (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: resolve static checker warning in lpfc_sli4_hba_unset (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Correct __lpfc_sli_issue_iocb_s4 lockdep check (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix calls to dma_set_mask_and_coherent() (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: use dma_set_mask_and_coherent (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Remove set but not used variable 'phys_id' (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: fix a handful of indentation issues (Dick Kennedy) [1692882] - [scsi] scsi: lpfc: Fix error code if kcalloc() fails (Dick Kennedy) [1692882] - [security] security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock (Ondrej Mosnacek) [1683296] - [security] selinux: add the missing walk_size + len check in selinux_sctp_bind_connect (Ondrej Mosnacek) [1683296] - [security] selinux: fix avc audit messages (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace BUG_ONs with WARN_ONs in avc.c (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: log invalid contexts in AVCs (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: replace some BUG_ON()s with a WARN_ON() (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: inline some AVC functions used only once (Ondrej Mosnacek) [1670039 1683296] - [security] selinux: do not override context on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: never allow relabeling on context mounts (Ondrej Mosnacek) [1683296] - [security] selinux: stop passing MAY_NOT_BLOCK to the AVC upon follow_link (Ondrej Mosnacek) [1683296] - [security] selinux: avoid silent denials in permissive mode under RCU walk (Ondrej Mosnacek) [1683296] - [security] selinux: fix GPF on invalid policy (Ondrej Mosnacek) [1683296] - [security] selinux: overhaul sidtab to fix bug and improve performance (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: use separate table for initial SID lookup (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: make "selinux_policycap_names[]" const char * (Ondrej Mosnacek) [1683296] - [security] selinux: always allow mounting submounts (Ondrej Mosnacek) [1647723 1683296] - [security] selinux: refactor sidtab conversion (Ondrej Mosnacek) [1656787 1683296] - [security] selinux: fix non-MLS handling in mls_context_to_sid() (Ondrej Mosnacek) [1683296] - [security] selinux: check length properly in SCTP bind hook (Ondrej Mosnacek) [1683296] - [security] selinux: policydb - fix byte order and alignment issues (Ondrej Mosnacek) [1668222 1683296] - [security] selinux: Add __GFP_NOWARN to allocation at str_read() (Ondrej Mosnacek) [1683296] - [security] selinux: refactor mls_context_to_sid() and make it stricter (Ondrej Mosnacek) [1683296] - [security] selinux: fix mounting of cgroup2 under older policies (Ondrej Mosnacek) [1683296] - [security] selinux: cleanup dentry and inodes on error in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: constify write_op[] (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netnode (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avc (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netif (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netport (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in sidtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in netlink (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in selinuxfs (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in services (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in avtab (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in hooks (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in policydb (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in ebitmap (Ondrej Mosnacek) [1683296] - [security] selinux: Cleanup printk logging in conditional (Ondrej Mosnacek) [1683296] - [fs] fs/proc/kcore.c: fix invalid memory access in multi-page read optimization (Bhupesh Sharma) [1627539] - [fs] proc/kcore: add vmcoreinfo note to /proc/kcore (Bhupesh Sharma) [1627539] - [kernel] crash_core: use VMCOREINFO_SYMBOL_ARRAY() for swapper_pg_dir (Bhupesh Sharma) [1627539] - [fs] proc/kcore: optimize multiple page reads (Bhupesh Sharma) [1627539] - [fs] proc/kcore: clean up ELF header generation (Bhupesh Sharma) [1627539] - [fs] proc/kcore: hold lock during read (Bhupesh Sharma) [1627539] - [fs] proc/kcore: fix memory hotplug vs multiple opens race (Bhupesh Sharma) [1627539] - [fs] proc/kcore: replace kclist_lock rwlock with rwsem (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for memory hotplug notifier (Bhupesh Sharma) [1627539] - [fs] proc/kcore: don't grab lock for kclist_add() (Bhupesh Sharma) [1627539]- [net] Merge branch 'linus/master' into rdma.git for-next (Jonathan Toppins) [1685304] - [netdrv] net: cisco: enic: Replace GFP_ATOMIC with GFP_KERNEL (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Remove pointless functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/usnic: Suppress a compiler warning (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: usnic should not select INFINIBAND_USER_ACCESS (Jonathan Toppins) [1685304] - [infiniband] RDMA/vmw_pvrdma: Delete unused function (Jonathan Toppins) [1685304] - [infiniband] IB/usnic: Update with bug fixes from core code (Jonathan Toppins) [1685304] - [infiniband] RDMA/providers: Fix return value from create_srq callbacks (Jonathan Toppins) [1685304] - [infiniband] RDMA/rxe: Simplify the error handling code in rxe_create_ah() (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: avoid unnecessary NULL check (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: increase max MR limit (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Do not hide uABI stuff in memcpy (Jonathan Toppins) [1685304] - [net] rpc: remove unneeded variable 'ret' in rdma_listen_handler (Jonathan Toppins) [1685304] - [net] svcrdma: Clean up Read chunk path (Jonathan Toppins) [1685304] - [net] svcrdma: Avoid releasing a page in svc_xprt_release() (Jonathan Toppins) [1685304] - [net] sunrpc: remove redundant variables 'checksumlen', 'blocksize' and 'data' (Jonathan Toppins) [1685304] - [scsi] scsi: target: srp, vscsi, sbp, qla: use target_remove_session (Jonathan Toppins) [1685304] - [target] scsi: target: add session removal function (Jonathan Toppins) [1685304] - [target] scsi: target: rename target_alloc_session (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix check for return code from ib_create_srq (Jonathan Toppins) [1685304] - [infiniband] IB/ipoib: Fix error return code in ipoib_dev_init() (Jonathan Toppins) [1685304] - [infiniband] IPoIB: use kvzalloc to allocate an array of bucket pointers (Jonathan Toppins) [1685304] - [infiniband] ib_srpt: use kvmalloc to allocate ring pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Fix return code from ipoib_cm_dev_init (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Prefer unsigned int to bare use of unsigned (Jonathan Toppins) [1685304] - [infiniband] RDMA/ipoib: Use min_t() macro instead of min() (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Remove driver version and release data information (Jonathan Toppins) [1685304] - [target] scsi: target: Remove second argument from fabric_make_tpg() (Jonathan Toppins) [1685304] - [infiniband] IB/iser: set can_queue earlier to allow setting higher queue depth (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Set right entry state before releasing reference (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Free uapi on destroy (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Fix error cleanup path of ib_uverbs_add_one() (Jonathan Toppins) [1685304] - [infiniband] IB/core: Release object lock if destroy failed (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: fix UCM link error (Jonathan Toppins) [1685304] - [infiniband] IB/core: Change filter function return type from int to bool (Jonathan Toppins) [1685304] - [infiniband] IB/core: Update GID entries for netdevice whose mac address changes (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add default GIDs of the bond master netdev (Jonathan Toppins) [1685304] - [infiniband] IB/core: Consider adding default GIDs of bond device (Jonathan Toppins) [1685304] - [infiniband] IB/core: Delete lower netdevice default GID entries in bonding scenario (Jonathan Toppins) [1685304] - [infiniband] IB/core: Avoid confusing del_netdev_default_ips (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add comment for change upper netevent handling (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Fix compiling ucm.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not check for device disassociation during ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove struct uverbs_root_spec and all supporting code (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to unmarshal ioctl commands (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_alloc for allocations (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a simple allocator to uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove the ib_uverbs_attr pointer from each attr (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Provide implementation private memory for the uverbs_attr_bundle (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Use uverbs_api to manage the object type inside the uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Build the specs into a radix tree at runtime (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Have the core code create the uverbs_root_spec (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix reading of 32 bit flags (Jonathan Toppins) [1685304] - [infiniband] IB/ucm: Initialize sgid request GID attribute pointer (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow all DESTROY commands to succeed after disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not block disassociate during write() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not pass struct ib_device to the write based methods (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Lower the test for ongoing disassociation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow uobject allocation to work concurrently with disassociate (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow RDMA_REMOVE_DESTROY to work concurrently with disassociate (Jonathan Toppins) [1685304] - [include] IB/uverbs: Convert 'bool exclusive' into an enum (Jonathan Toppins) [1685304] - [include] IB/uverbs: Consolidate uobject destruction (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Make the write path destroy methods use the same flow as ioctl (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove rdma_explicit_destroy() from the ioctl methods (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Prefix _ib to IB/RoCE specific functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify gid type check in cma_acquire_dev() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Return bool instead of int (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Get rid of 1 bit boolean (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Constify path record, ib_cm_event, listen_id pointers (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Constify dst_addr argument (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Simplify rdma_resolve_addr() error flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Initialize resource type in __rdma_create_id() (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Check for verbs callbacks before using them (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove {create,destroy}_ah from mandatory verbs (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add UVERBS_ATTR_FLAGS_IN to the specs language (Jonathan Toppins) [1685304] - [infiniband] RDMA, core and ULPs: Declare ib_post_send() and ib_post_recv() arguments const (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5, ib_post_send(), IB_WR_REG_SIG_MR: Do not modify the 'wr' argument (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Restore needed argument to ib_post_send (Jonathan Toppins) [1685304] - [net] net/xprtrdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvmet-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [nvme] nvme-rdma: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srpt: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/srp: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/isert: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] IB/IPoIB: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [infiniband] RDMA: Constify the argument of the work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] IB/iser: Inline two work request conversion functions (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider netdevice for RoCE ports (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce and use sgid_attr in CM requests (Jonathan Toppins) [1685304] - [infiniband] IB/core: Remove extra parentheses (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Fix locking around struct ib_uverbs_file ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move the FD uobj type struct file allocation to alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Always propagate errors from rdma_alloc_commit_uobject() (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Rework the locking for cleaning up the ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise and clarify the rwsem and uobjects_lock (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify and revise uverbs_close_fd (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Revise the placement of get/puts on uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Clarify the kref'ing ordering for alloc_commit (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Handle IDR and FD types without truncation (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Get rid of null_obj_type (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Simplify ib_post_(send|recv|srq_recv)() calls (Jonathan Toppins) [1685304] - [include] IB/core: Allow ULPs to specify NULL as the third ib_post_(send|recv|srq_recv)() argument (Jonathan Toppins) [1685304] - [include] IB/mlx5: Introduce driver create and destroy flow methods (Jonathan Toppins) [1685304] - [infiniband] IB: Support ib_flow creation in drivers (Jonathan Toppins) [1685304] - [infiniband] IB/mlx5: Introduce flow steering matcher uapi object (Jonathan Toppins) [1685304] - [include] IB/uverbs: Move ib_access_flags and ib_read_counters_flags to uapi (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove cma_multicast->igmp_joined (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Refactor exit paths in ib_umem_get (Jonathan Toppins) [1685304] - [infiniband] IB: Enable uverbs_destroy_def_handler to be used by drivers (Jonathan Toppins) [1685304] - [include] IB/uverbs: Pass IB_UVERBS_QPF_GRH_REQUIRED to user space (Jonathan Toppins) [1685304] - [infiniband] RDMA: Validate grh_required when handling AVs (Jonathan Toppins) [1685304] - [infiniband] RDMA/hfi1: Move grh_required into update_sm_ah (Jonathan Toppins) [1685304] - [infiniband] IB/core: Simplify check for RoCE route resolve (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Do not use uverbs_cmd_mask in the ioctl path (Jonathan Toppins) [1685304] - [infiniband] RDMA/rw: Fix rdma_rw_ctx_signature_init() kernel-doc header (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove set-but-not-used variables (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove ib_find_cached_gid() and ib_find_cached_gid_by_port() (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove unused and erroneous msg sequence encoding (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucq_object uverbs_file with the one in ib_uobject (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Remove ib_uobject_file (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Tidy up remaining references to ucontext (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace file->ucontext with file in uverbs_cmd.c (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Replace ib_ucontext with ib_uverbs_file in core function calls (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Move non driver related elements from ib_ucontext to ib_ufile (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a uobj_perform_destroy helper (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Combine MIN_SZ_OR_ZERO with UVERBS_ATTR_STRUCT (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Use UVERBS_ATTR_MIN_SIZE correctly and uniformly (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove UA_FLAGS (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Get rid of the & in method specifications (Jonathan Toppins) [1685304] - [infiniband] IB: Improve uverbs_cleanup_ucontext algorithm (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_OBJECT and _TREE family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify method definition macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Simplify UVERBS_ATTR family of macros (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Split UVERBS_ATTR_FLOW_ACTION_ESP_HANDLE (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Store the specs_root in the struct ib_uverbs_device (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Remove now useless rcu_lock in dst_fetch_ha (Jonathan Toppins) [1685304] - [infiniband] IB/core: Check for rdma_protocol_ib only after validating port_num (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Remove redundant check (Jonathan Toppins) [1685304] - [infiniband] RDMA/umem: Don't check for a negative return value of dma_map_sg_attrs() (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of destroy_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/verbs: Drop kernel variant of create_flow (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Check existence of create_flow callback (Jonathan Toppins) [1685304] - [infiniband] RDMA/core: Remove unused ib cache functions (Jonathan Toppins) [1685304] - [infiniband] Revert "[infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set" (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use the AH's sgid_attr in post_wr paths (Jonathan Toppins) [1685304] - [infiniband] IB/mlx4: Use GID attribute from ah attribute (Jonathan Toppins) [1685304] - [infiniband] IB/rxe: Use rdma GID API (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Use sgid_attr from the AV (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Replace members of sa_path_rec with 'struct sgid_attr *' (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Pass the sgid_attr through various events (Jonathan Toppins) [1685304] - [infiniband] IB/cm: Keep track of the sgid_attr that created the cm id (Jonathan Toppins) [1685304] - [infiniband] IB: Make init_ah_attr_grh_fields set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_from_mcmember set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Make ib_init_ah_attr_from_wc set sgid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Free GID table entry during GID deletion (Jonathan Toppins) [1685304] - [infiniband] RDMA/cma: Consider net namespace while leaving multicast group (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Delete type and id from uverbs_obj_attr (Jonathan Toppins) [1685304] - [infiniband] IB/rdmavt, IB/hfi1: Create device dependent s_flags (Jonathan Toppins) [1685304] - [infiniband] IB/core: Expose ib_ucontext from a given ib_uverbs_file (Jonathan Toppins) [1685304] - [include] IB/core: Introduce DECLARE_UVERBS_GLOBAL_METHODS (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Allow an empty namespace in ioctl() framework (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add a macro to define a type with no kernel known size (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Add PTR_IN attributes that are allocated/copied automatically (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Refactor uverbs_finalize_objects (Jonathan Toppins) [1685304] - [infiniband] IB/uverbs: Export uverbs idr and fd types (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Use IDR for agent IDs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Hold the sgid_attr inside the struct ib_ah/qp (Jonathan Toppins) [1685304] - [infiniband] RDMA: Convert drivers to use sgid_attr instead of sgid_index (Jonathan Toppins) [1685304] - [infiniband] IB{cm, core}: Introduce and use ah_attr copy, move, replace APIs (Jonathan Toppins) [1685304] - [infiniband] IB/core: Tidy ib_resolve_eth_dmac (Jonathan Toppins) [1685304] - [infiniband] IB/core: Add a sgid_attr pointer to struct rdma_ah_attr (Jonathan Toppins) [1685304] - [infiniband] IB: Ensure that all rdma_ah_attr's are zero initialized (Jonathan Toppins) [1685304] - [infiniband] IB/mad: Agent registration is process context only (Jonathan Toppins) [1685304] - [infiniband] RDMA/uverbs: Refactor flow_resources_alloc() function (Jonathan Toppins) [1685304] - [infiniband] RDMA/nldev: Return port capability flag for IB only (Jonathan Toppins) [1685304] - [net] RDMA/smc: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [include] IB/cache: Restore compatibility for ib_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB: Replace ib_query_gid/ib_get_cached_gid with rdma_query_gid (Jonathan Toppins) [1685304] - [infiniband] IB/core: Make rdma_find_gid_by_filter support all protocols (Jonathan Toppins) [1685304] - [infiniband] IB/core: Provide rdma_ versions of the gid cache API (Jonathan Toppins) [1685304] - [infiniband] IB/core: Replace ib_query_gid with rdma_get_gid_attr (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID attribute get, put and hold APIs (Jonathan Toppins) [1685304] - [infiniband] RDMA: Use GID from the ib_gid_attr during the add_gid() callback (Jonathan Toppins) [1685304] - [infiniband] IB/core: Introduce GID entry reference counts (Jonathan Toppins) [1685304] - [infiniband] IB/core: Store default GID property per-table instead of per-entry (Jonathan Toppins) [1685304] - [infiniband] IB/core: Do not set the gid type when reserving default entries (Jonathan Toppins) [1685304] - [include] IDR: Expose the XArray lock (Jonathan Toppins) [1688319] - [x86] x86/cpufeatures: Enumerate MOVDIR64B instruction (Steve Best) [1482754] - [x86] x86/cpufeatures: Enumerate MOVDIRI instruction (Steve Best) [1482754] - [nvme] nvme: allow ANA support to be independent of native multipathing (Ewan Milne) [1690940] - [nvme] nvme: multipath: Change default of kernel NVMe multipath to be disabled (Ewan Milne) [1690940] - [nvme] nvme: convert to SPDX identifiers (Ewan Milne) [1690940] - [nvme] nvme-multipath: round-robin I/O policy (Ewan Milne) [1690940] - [nvme] nvme-multipath: drop optimization for static ANA group IDs (Ewan Milne) [1690940] - [nvme] nvme-multipath: zero out ANA log buffer (Ewan Milne) [1690940] - [nvme] nvme-fc: fix numa_node when dev is null (Ewan Milne) [1690940] - [nvme] nvme: add a numa_node field to struct nvme_ctrl (Ewan Milne) [1690940] - [nvme] nvme: update node paths after adding new path (Ewan Milne) [1690940] - [nvme] nvme: take node locality into account when selecting a path (Ewan Milne) [1690940] - [s390] s390/mm: Fix ERROR: "__node_distance" undefined! (Ewan Milne) [1690940] - [nvme] nvme: call nvme_complete_rq when nvmf_check_ready fails for mpath I/O (Ewan Milne) [1690940] - [nvme] nvme: properly propagate errors in nvme_mpath_init (Ewan Milne) [1690940] - [nvme] nvme: fixup crash on failed discovery (Ewan Milne) [1690940] - [nvme] nvme: add ANA support (Ewan Milne) [1690940] - [include] nvme.h: fixup ANA group descriptor format (Ewan Milne) [1690940] - [include] nvme.h: add ANA definitions (Ewan Milne) [1690940] - [nvme] nvme: remove nvme_req_needs_failover (Ewan Milne) [1690940] - [nvme] nvme: simplify the API for getting log pages (Ewan Milne) [1690940] - [include] nvme.h: add support for the log specific field (Ewan Milne) [1690940]- [md] dm writecache: set "Tech Preview" taint using mark_tech_preview() (Mike Snitzer) [1690587] - [md] dm integrity: limit the rate of error messages (Mike Snitzer) [1690105] - [md] dm snapshot: don't define direct_access if we don't support it (Mike Snitzer) [1690105] - [md] dm cache: add support for discard passdown to the origin device (Mike Snitzer) [1690105] - [md] dm writecache: fix typo in name for writeback_wq (Mike Snitzer) [1690105] - [md] dm thin: add sanity checks to thin-pool and external snapshot creation (Mike Snitzer) [1690105] - [md] dm block manager: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm verity fec: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm integrity: remove redundant unlikely annotation (Mike Snitzer) [1690105] - [md] dm switch: use struct_size() in kzalloc() (Mike Snitzer) [1690105] - [md] dm: remove unused _rq_tio_cache and _rq_cache (Mike Snitzer) [1690105] - [md] dm crypt: don't overallocate the integrity tag space (Mike Snitzer) [1690105] - [md] dm: eliminate 'split_discard_bios' flag from DM target interface (Mike Snitzer) [1690105] - [md] dm: always call blk_queue_split() in dm_process_bio() (Mike Snitzer) [1690105] - [md] dm: update dm_process_bio() to split bio if in ->make_request_fn() (Mike Snitzer) [1690105] - [md] dm rq: remove unused arguments from rq_completed() (Mike Snitzer) [1690105] - [md] dm integrity: replace open-coded allocation size multiplication (Mike Snitzer) [1690105] - [md] dm: Remove VLA usage from hashes (Mike Snitzer) [1690105] - [crypto] crypto: hash - Remove VLA usage (Mike Snitzer) [1690105] - [md] dm: Avoid namespace collision with bitmap API (Mike Snitzer) [1690105] - [md] md/dm-writecache: Don't request pointer dummy_addr when not required (Mike Snitzer) [1690105] - [scsi] scsi: qla2xxx: avoid printf format warning (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix issue reported by static checker for qla2x00_els_dcmd2_sp_done() (Himanshu Madhani) [1664534] - [scsi] qla2xxx: Update driver version to 10.00.00.14.08.1-k (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Avoid PCI IRQ affinity mapping when multiqueue is not supported (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add new FW dump template entry types (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix code indentation for qla27xx_fwdt_entry (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move marker request behind QPair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent SysFS access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for setting port speed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent multiple ADISC commands per session (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for FW started flag before aborting (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix unload when NVMe devices are configured (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add First Burst support for FC-NVMe devices (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove redundant null check on pointer sess (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move debug messages before sending srb preventing panic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use complete switch scan for RSCN events (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix fw options handle eh_bus_reset() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Restore FAWWPN of Physical Port only for loop down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent memory leak for CT req/rsp allocation (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix SRB allocation flag to avoid sleeping in IRQ context (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: allow session delete to finish before create. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix fcport null pointer access. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: flush IO on chip reset or sess delete (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session cleanup hang (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Change default ZIO threshold. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add pci function reset support. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N target discovery with Local loop (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: no need to check return value of debugfs_create functions (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix DMA error when the DIF sg buffer crosses 4GB boundary (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add protection mask module parameters (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for FC-NVMe discovery for NPIV port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NPIV handling for FC-NVMe (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Enable FC-NVME on NPIV ports (Himanshu Madhani) [1664534] - [scsi] Revert "scsi: qla2xxx: Fix NVMe Target discovery" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: NULL check before some freeing functions is not needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Split the __qla2x00_abort_all_cmds() function (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Introduce a switch/case statement in qlt_xmit_tm_rsp() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix a typo in MODULE_PARM_DESC (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove two arguments from qlafx00_error_entry() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make sure that qlafx00_ioctl_iosb_entry() initializes 'res' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove a set-but-not-used variable (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Make qla2x00_sysfs_write_nvram() easier to analyze (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Declare local functions 'static' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Improve several kernel-doc headers (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Modify fall-through annotations (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fully convert to the generic DMA API (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Simplify conditional check (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove unnecessary self assignment (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Return switch command on a timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move log messages before issuing command to firmware (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix for double free of SRB structure (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix recursive mailbox timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix NVMe Target discovery (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: don't allow negative thresholds (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix comment in MODULE_PARM_DESC in qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove set but not used variable 'ptr_dma' (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: fix typo "CT-PASSTRHU" -> "CT-PASSTHRU" (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted() (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix double increment of switch scan retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix duplicate switch's Nport ID entries (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix premature command free (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reject bsg request if chip is down. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: shutdown chip if reset fail (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix stuck session in PLOGI state (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix early srb free on abort (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add mode control for each physical port (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race condition for resource cleanup (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix dropped srb resource. (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix port speed display on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Increase abort timeout value (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Allow FC-NVMe underrun to be handled by transport (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move ABTS code behind qpair (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove stale ADISC_DONE event (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Remote port registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove ASYNC GIDPN switch command (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Reduce holding sess_lock to prevent CPU lock-up (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move {get|rel}_sp to base_qpair struct (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add support for ZIO6 interrupt threshold (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix out of order Termination and ABTS response (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add logic to detect ABTS hang and response completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add appropriate debug info for invalid RX_ID (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix deadlock between ATIO and HW lock (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Serialize mailbox request (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Terminate Plogi/PRLI if WWN is 0 (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Defer chip reset until target mode is enabled (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove all rports if fabric scan retry fails (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Force fw cleanup on ADISC error (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Turn off IOCB timeout timer on IOCB completion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Decrement login retry count for only plogi (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Move rport registration out of internal work_list (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Remove redundant check for fcport deletion (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Update rscn_rcvd field to more meaningful scan_needed (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Use correct qpair for ABTS/CMD (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix process response queue for ISP26XX and above (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Migrate NVME N2N handling into state machine (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Save frame payload size from ICB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix race between switch cmd completion and timeout (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix Management Server NPort handle reservation logic (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Flush mailbox commands on chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix session state stuck in Get Port DB (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix redundant fc_rport registration (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Silent erroneous message (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Prevent sysfs access when chip is down (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Add longer window for chip reset (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix login retry count (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Fix N2N link re-connect (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: Cleanup for N2N code (Himanshu Madhani) [1664534] - [scsi] scsi: qla2xxx: remove irq save in qla2x00_poll() (Himanshu Madhani) [1664534] - [netdrv] ice: Do autoneg based on VSI state (Jonathan Toppins) [1687903] - [fs] xfs: use the latest extent at writeback delalloc conversion time (Brian Foster) [1661968] - [fs] xfs: create delalloc bmapi wrapper for full extent allocation (Brian Foster) [1661968] - [fs] xfs: remove superfluous writeback mapping eof trimming (Brian Foster) [1661968] - [fs] xfs: validate writeback mapping using data fork seq counter (Brian Foster) [1661968] - [fs] xfs: update fork seq counter on data fork changes (Brian Foster) [1661968] - [fs] xfs: eof trim writeback mapping as soon as it is cached (Brian Foster) [1661968] - [perf] drivers/perf: hisi: update the sccl_id/ccl_id when MT is supported (Xiaojun Tan) [1677815]- [x86] x86/hyperv: Fix kernel panic when kexec on HyperV (Kairui Song) [1684451] - [rpmspec] apply linux-kernel-test.patch when building ("Herton R. Krzesinski") [1690534] - [netdrv] net: ena: update driver version from 2.0.2 to 2.0.3 (John Linville) [1690106] - [netdrv] net: ena: fix race between link up and device initalization (John Linville) [1690106] - [netdrv] net: phy: add phy_speed_down and phy_speed_up (Petr Oros) [1690131] - [netdrv] net: phy: add helper phy_config_aneg (Petr Oros) [1690131] - [nvme] nvme-fabrics: convert to SPDX identifiers (Ewan Milne) [1690909] - [nvme] nvme-fabrics: fix ctrl_loss_tmo < 0 to reconnect forever (Ewan Milne) [1690909] - [nvme] nvme-fc: reject reconnect if io queue count is reduced to zero (Ewan Milne) [1690601] - [nvme] nvme-fc: use nr_phys_segments to determine existence of sgl (Ewan Milne) [1690601] - [include] nvme-fc: convert to SPDX identifiers (Ewan Milne) [1690601] - [nvme] nvme-fc: initialize nvme_req(rq)->ctrl after calling __nvme_fc_init_request() (Ewan Milne) [1690601] - [nvme] nvme-fc: fix request private initialization (Ewan Milne) [1690601] - [nvme] nvme-fc: rework the request initialization code (Ewan Milne) [1690601] - [nvme] nvme-fc: introduce struct nvme_fcp_op_w_sgl (Ewan Milne) [1690601] - [nvme] nvme: cache struct nvme_ctrl reference to struct nvme_request (Ewan Milne) [1690601] - [nvme] nvme-fc: fix kernel-doc headers (Ewan Milne) [1690601] - [nvme] nvme_fc: add 'nvme_discovery' sysfs attribute to fc transport device (Ewan Milne) [1690601] - [nvme] nvme-fc: fix for a minor typos (Ewan Milne) [1690601] - [crypto] crypto: arm64/aes-ccm - fix logical bug in AAD MAC handling (Neil Horman) [1689185] - [mm] mm: enforce min addr even if capable() in expand_downwards() (Rafael Aquini) [1687667] {CVE-2019-9213} - [pci] PCI/VMD: Configure MPS settings before adding devices (Prarit Bhargava) [1659270] - [pci] PCI: vmd: Detach resources after stopping root bus (Prarit Bhargava) [1659270] - [char] tpm: separate cmd_ready/go_idle from runtime_pm (Jerry Snitselaar) [1677735] - [block] loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: do not print warn message if partition scan is successful (Ming Lei) [1683593] - [block] loop: drop caches if offset or block_size are changed (Ming Lei) [1683593] - [block] block: loop: remove redundant code (Ming Lei) [1683593] - [block] block: loop: check error using IS_ERR instead of IS_ERR_OR_NULL in loop_add() (Ming Lei) [1683593] - [block] loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl() (Ming Lei) [1683593] - [block] loop: Get rid of 'nested' acquisition of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Avoid circular locking dependency between loop_ctl_mutex and bd_mutex (Ming Lei) [1683593] - [block] loop: Fix deadlock when calling blkdev_reread_part() (Ming Lei) [1683593] - [block] loop: Move loop_reread_partitions() out of loop_ctl_mutex (Ming Lei) [1683593] - [block] loop: Move special partition reread handling in loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_change_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_fd() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_set_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down to loop_get_status() (Ming Lei) [1683593] - [block] loop: Push loop_ctl_mutex down into loop_clr_fd() (Ming Lei) [1683593] - [block] loop: Split setting of lo_state from loop_clr_fd (Ming Lei) [1683593] - [block] loop: Push lo_ctl_mutex down into individual ioctls (Ming Lei) [1683593] - [block] loop: Get rid of loop_index_mutex (Ming Lei) [1683593] - [block] loop: Fold __loop_release into loop_release (Ming Lei) [1683593] - [block] block/loop: Use global lock for ioctl() operation. (Ming Lei) [1683593] - [block] block/loop: Don't grab "struct file" for vfs_getattr() operation. (Ming Lei) [1683593] - [crypto] crypto: cfb - fix decryption (Herbert Xu) [1653188]- [misc] VMCI: Support upto 64-bit PPNs (Cathy Avery) [1683479] - [mm] mm, page_alloc: fix has_unmovable_pages for HugePages (David Gibson) [1688114] - [pci] PCI: pciehp: Disable Data Link Layer State Changed event on suspend (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Assign ctrl->slot_ctrl before writing it to hardware (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Queue one GHES event, not several uninitialized ones (Myron Stowe) [1688393 1537397] - [pci] PCI/AER: Refactor error injection fallbacks (Myron Stowe) [1688393] - [pci] PCI/AER: Reuse existing pcie_port_find_device() interface (Myron Stowe) [1688393] - [pci] PCI/AER: Use managed resource allocations (Myron Stowe) [1688393] - [pci] PCI/AER: Use threaded IRQ for bottom half (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo_in_spinlocked() to insert locked elements (Myron Stowe) [1688393] - [pci] PCI/AER: Use kfifo for tracking events instead of reimplementing it (Myron Stowe) [1688393] - [pci] PCI/AER: Remove error source from AER struct aer_rpc (Myron Stowe) [1688393] - [pci] PCI/AER: Remove unused aer_error_resume() (Myron Stowe) [1688393] - [pci] PCI: pnv_php: Use kmemdup() (Myron Stowe) [1688393] - [pci] PCI: cpqphp: Remove set but not used variable 'physical_slot' (Myron Stowe) [1688393] - [pci] PCI/ERR: Remove duplicated include from err.c (Myron Stowe) [1688393] - [pci] PCI: Equalize hotplug memory and io for occupied and empty slots (Myron Stowe) [1688393] - [pci] PCI / ACPI: Whitelist D3 for more PCIe hotplug ports (Myron Stowe) [1688393 1537397] - [acpi] ACPI / property: Allow multiple property compatible _DSD entries (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Implement runtime PM callbacks (Myron Stowe) [1688393 1537397] - [pci] PCI/portdrv: Resume upon exit from system suspend if left runtime suspended (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Do not handle events if interrupts are masked (Myron Stowe) [1688393 1537397] - [pci] PCI: pciehp: Disable hotplug interrupt during suspend (Myron Stowe) [1688393 1537397] - [pci] PCI / ACPI: Enable wake automatically for power managed bridges (Myron Stowe) [1688393 1537397] - [pci] PCI: Do not skip power-managed bridges in pci_enable_wake() (Myron Stowe) [1688393 1537397] - [pci] PCI: Unify device inaccessible (Myron Stowe) [1688393] - [pci] PCI/ERR: Always report current recovery status for udev (Myron Stowe) [1688393] - [pci] PCI/ERR: Simplify broadcast callouts (Myron Stowe) [1688393] - [pci] PCI/ERR: Run error recovery callbacks for all affected devices (Myron Stowe) [1688393] - [pci] PCI/ERR: Handle fatal error recovery (Myron Stowe) [1688393] - [pci] PCI/ERR: Use slot reset if available (Myron Stowe) [1688393] - [pci] PCI/AER: Don't read upstream ports below fatal errors (Myron Stowe) [1688393] - [pci] PCI/AER: Take reference on error devices (Myron Stowe) [1688393] - [pci] PCI/DPC: Save and restore config state (Myron Stowe) [1688393] - [pci] PCI: portdrv: Restore PCI config state on slot reset (Myron Stowe) [1688393] - [pci] PCI: portdrv: Initialize service drivers directly (Myron Stowe) [1688393] - [x86] x86/intel_rdt: Show missing resctrl mount options (David Arcari) [1689043] - [xen] xen/balloon: Fix mapping PG_offline pages to user space (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: exclude all PageOffline() pages (David Hildenbrand) [1652790] - [kernel] PM/Hibernate: use pfn_to_online_page() (David Hildenbrand) [1652790] - [hv] hv_balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [xen] xen/balloon: mark inflated pages PG_offline (David Hildenbrand) [1652790] - [kernel] kexec: export PG_offline to VMCOREINFO (David Hildenbrand) [1652790] - [include] mm: convert PG_balloon to PG_offline (David Hildenbrand) [1652790] - [include] mm: balloon: update comment about isolation/migration/compaction (David Hildenbrand) [1652790] - [mm] mm/page_alloc.c: memory hotplug: free pages as higher order (David Hildenbrand) [1652790] - [mm] mm/memory.c: do_fault: avoid usage of stale vm_area_struct ("Herton R. Krzesinski") [1684734] - [kernel] cpuset: remove unused task_has_mempolicy() (Waiman Long) [1548268] - [kernel] cpuset: Remove set but not used variable 'cs' (Waiman Long) [1548268] - [kernel] cgroup: Add .__DEBUG__. prefix to debug file names (Waiman Long) [1548268] - [kernel] cpuset: Minor cgroup2 interface updates (Waiman Long) [1548268] - [kernel] cpuset: Expose cpuset.cpus.subpartitions with cgroup_debug (Waiman Long) [1548268] - [documentation] cpuset: Add documentation about the new "cpuset.sched.partition" flag (Waiman Long) [1548268] - [kernel] cpuset: Use descriptive text when reading/writing cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Expose cpus.effective and mems.effective on cgroup v2 root (Waiman Long) [1548268] - [kernel] cpuset: Make generate_sched_domains() work with partition (Waiman Long) [1548268] - [kernel] cpuset: Make CPU hotplug work with partition (Waiman Long) [1548268] - [kernel] cpuset: Track cpusets that use parent's effective_cpus (Waiman Long) [1548268] - [kernel] cpuset: Add an error state to cpuset.sched.partition (Waiman Long) [1548268] - [kernel] cpuset: Add new v2 cpuset.sched.partition flag (Waiman Long) [1548268] - [kernel] cpuset: Simply allocation and freeing of cpumasks (Waiman Long) [1548268] - [kernel] cpuset: Define data structures to support scheduling partition (Waiman Long) [1548268] - [kernel] cpuset: Enable cpuset controller in default hierarchy (Waiman Long) [1548268] - [kernel] cgroup/tracing: Move taking of spin lock out of trace event handlers (Waiman Long) [1548268] - [powerpc] powerpc/powernv/ioda: Fix locked_vm counting for memory used by IOMMU tables (David Gibson) [1674410] - [pci] PCI: dwc: Fix MSI-X EP framework address calculation bug (Myron Stowe) [1687935] - [pci] PCI: cadence: Correct probe behaviour when failing to get PHY (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix PCI I/O mapping creation sequence (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Remove obsolete drivers/pci pattern from ACPI section (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix scheduling while atomic issues (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Move mobiveil PCI driver entry where it belongs (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Update PPC contacts for PCI core error handling (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add Gustavo Pimentel as DesignWare PCI maintainer (Myron Stowe) [1687935] - [maintainers] MAINTAINERS: Add entries for PPC64 RPA PCI hotplug drivers (Myron Stowe) [1687935] - [pci] PCI: mvebu: Drop bogus comment above mvebu_pcie_map_registers() (Myron Stowe) [1687935] - [pci] PCI: mvebu: Convert to use pci_host_bridge directly (Myron Stowe) [1687935] - [pci] PCI: mvebu: Use resource_size() to remap I/O space (Myron Stowe) [1687935] - [pci] PCI: mvebu: Only remap I/O space if configured (Myron Stowe) [1687935] - [pci] PCI: mvebu: Fix I/O space end address calculation (Myron Stowe) [1687935] - [pci] PCI: mvebu: Remove redundant platform_set_drvdata() call (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add Kconfig/Makefile entries (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Add missing ../pci.h include (Myron Stowe) [1687935] - [pci] PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI set maximum restriction (Myron Stowe) [1687935] - [tools] tools: PCI: Add MSI-X support (Myron Stowe) [1687935] - [documentation] pci_endpoint_test: Add 2 ioctl commands (Myron Stowe) [1687935] - [documentation] pci-epf-test/pci_endpoint_test: Add MSI-X support (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Use irq_type module parameter (Myron Stowe) [1687935] - [misc] pci-epf-test/pci_endpoint_test: Cleanup PCI_ENDPOINT_TEST memspace (Myron Stowe) [1687935] - [pci] PCI: dwc: Add legacy interrupt callback handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Rework MSI callbacks handler (Myron Stowe) [1687935] - [pci] PCI: dwc: Add MSI-X callbacks handler (Myron Stowe) [1687935] - [pci] PCI: Update xxx_pcie_ep_raise_irq() and pci_epc_raise_irq() signatures (Myron Stowe) [1687935] - [pci] PCI: endpoint: Add MSI-X interfaces (Myron Stowe) [1687935] - [pci] PCI: dwc: Fix EP link notification implementation (Myron Stowe) [1687935] - [pci] PCI: spear13xx: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: qcom: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: histb: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: designware-plat: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: artpec6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: armada8k: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: keystone: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: imx6: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: exynos: Drop unnecessary root_bus_nr setting (Myron Stowe) [1687935] - [pci] PCI: kirin: Add MSI support (Myron Stowe) [1687935] - [pci] PCI: pcie-cadence-ep: Remove redundant variable mmc (Myron Stowe) [1687935] - [pci] PCI: cadence: Add shutdown callback to host driver (Myron Stowe) [1687935] - [pci] PCI: cadence: Add Power Management ops for host and EP (Myron Stowe) [1687935] - [documentation] dt-bindings: PCI: cadence: Add DT bindings for optional PHYs (Myron Stowe) [1687935] - [pci] PCI: cadence: Add generic PHY support to host and EP drivers (Myron Stowe) [1687935] - [pci] PCI: cadence: Update cdns_pcie_writel() function signature (Myron Stowe) [1687935] - [pci] PCI: aardvark: Convert to use pci_host_probe() (Myron Stowe) [1687935] - [pci] PCI: aardvark: Size bridges before resources allocation (Myron Stowe) [1687935] - [pci] PCI: aardvark: Remove PCIe outbound window configuration (Myron Stowe) [1687935] - [pci] PCI: aardvark: Introduce an advk_pcie_valid_device() helper (Myron Stowe) [1687935] - [pci] PCI/xilinx: Depend on OF instead of the ARCH (Myron Stowe) [1687935] - [md] md: convert to kvmalloc (Nigel Croxon) [1661200] - [md] raid1: simplify raid1_error function (Nigel Croxon) [1661200] - [md] md-linear: use struct_size() in kzalloc() (Nigel Croxon) [1661200] - [md] md/raid5: fix 'out of memory' during raid cache recovery (Nigel Croxon) [1661200] - [md] md: Make bio_alloc_mddev use bio_alloc_bioset (Nigel Croxon) [1661200] - [md] raid10: refactor common wait code from regular read/write request (Nigel Croxon) [1661200] - [md] md: remvoe redundant condition check (Nigel Croxon) [1661200] - [lib] lib/raid6: add option to skip algo benchmarking (Nigel Croxon) [1661200] - [include] lib/raid6: avoid __attribute_const__ redefinition (Nigel Croxon) [1661200] - [include] lib/raid6: add missing include for raid6test (Nigel Croxon) [1661200] - [md] md: remove set but not used variable 'bi_rdev' (Nigel Croxon) [1661200] - [md] MD: Memory leak when flush bio size is zero (Nigel Croxon) [1661200] - [md] md: fix memleak for mempool (Nigel Croxon) [1661200] - [md] md-cluster: remove suspend_info (Nigel Croxon) [1661200] - [md] md-cluster: send BITMAP_NEEDS_SYNC message if reshaping is interrupted (Nigel Croxon) [1661200] - [md] md-cluster/bitmap: don't call md_bitmap_sync_with_cluster during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: don't call remove_and_add_spares during reshaping stage (Nigel Croxon) [1661200] - [md] md-cluster/raid10: call update_size in md_reap_sync_thread (Nigel Croxon) [1661200] - [md] md-cluster: introduce resync_info_get interface for sanity check (Nigel Croxon) [1661200] - [md] md-cluster/raid10: support add disk under grow mode (Nigel Croxon) [1661200] - [md] md-cluster/raid10: resize all the bitmaps before start reshape (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk - try2 (Nigel Croxon) [1661200] - [md] md/bitmap: use mddev_suspend/resume instead of ->quiesce() (Nigel Croxon) [1661200] - [md] md: remove redundant code that is no longer reachable (Nigel Croxon) [1661200] - [md] md: allow metadata updates while suspending an array - fix (Nigel Croxon) [1661200] - [md] MD: fix invalid stored role for a disk (Nigel Croxon) [1661200] - [md] md/raid10: Fix raid10 replace hang when new added disk faulty (Nigel Croxon) [1661200] - [md] raid5: block failing device if raid will be failed (Nigel Croxon) [1661200] - [md] md-cluster: release RESYNC lock after the last resync message (Nigel Croxon) [1661200] - [md] RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0 (Nigel Croxon) [1661200] - [md] md/raid5-cache: disable reshape completely (Nigel Croxon) [1661200] - [md] md/raid5: fix data corruption of replacements after originals dropped (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Do not disable irq on release_inactive_stripe_list() call (Nigel Croxon) [1661200] - [md] drivers/md/raid5: Use irqsave variant of atomic_dec_and_lock() (Nigel Croxon) [1661200] - [md] md/r5cache: remove redundant pointer bio (Nigel Croxon) [1661200] - [md] md-cluster: don't send msg if array is closing (Nigel Croxon) [1661200] - [md] md-cluster: show array's status more accurate (Nigel Croxon) [1661200] - [md] md-cluster: clear another node's suspend_area after the copy is finished (Nigel Croxon) [1661200] - [powerpc] KVM: PPC: Book3S HV: Add KVM stat largepages_[2M/1G] (Suraj Jitindar Singh) [1581563] - [tools] perf mem/c2c: Fix perf_mem_events to support powerpc (Steve Best) [1685084] - [powerpc] powerpc/perf: Add mem access events to sysfs (Steve Best) [1685084] - [netdrv] net-next/hinic: replace disable_irq_nosync/enable_irq (Xiaojun Tan) [1668958] - [powerpc] Fix access_ok() fallout for sparc32 and powerpc (Joe Lawrence) [1673980] - [x86] Remove 'type' argument from access_ok() function (Joe Lawrence) [1673980] - [arm64] arm64: move untagged_addr macro from uaccess.h to memory.h (Joe Lawrence) [1673980] - [powerpc] powerpc/uaccess: fix warning/error with access_ok() (Joe Lawrence) [1673980] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098] - [netdrv] igb: shorten maximum PHC timecounter update interval (Corinna Vinschen) [1637098]- [rpmspec] redhat: speed up binary rpm compression (Denys Vlasenko) [1686921] - [netdrv] net/mlx5e: RX, Verify MPWQE stride size is in range (Alaa Hleihel) [1683589] - [fs] debugfs: Fix EPERM regression from kernel lockdown check (Lenny Szubowicz) [1686755] - [infiniband] IB/hfi1: Close race condition on user context disable and close (Alex Estrin) [1682927] - [rpmspec] redhat: parallelize modules compression (Denys Vlasenko) [1686404] - [arm64] arm64: Add workaround for Fujitsu A64FX erratum 010001 (Mark Langsdorf) [1666951] - [s390] vfio_ap: link the vfio_ap devices to the vfio_ap bus subsystem (Cornelia Huck) [1686044] - [drm] drm/cirrus: fix connector leak at unload (Rob Clark) [1685773] - [powerpc] powerpc/hugetlb: Handle mmap_min_addr correctly in get_unmapped_area callback (Steve Best) [1685181] - [netdrv] net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames (Alaa Hleihel) [1663914 1651509] - [netdrv] net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames (Alaa Hleihel) [1651509] - [include] Fix RH_KABI_SET_SIZE to use dereference operator (Tony Camuso) [1670118]- [x86] x86/tsc: Make calibration refinement more robust (David Arcari) [1686254] - [powerpc] powerpc/hugetlb: Don't do runtime allocation of 16G pages in LPAR configuration (Steve Best) [1686756] - [rpmspec] parallelize "make mrproper" (Denys Vlasenko) [1686865] - [rpmspec] use "make -jN" (via _smp_mflags) for modules_install (Denys Vlasenko) [1686308] - [fs] xfs: zero length symlinks are not valid (Carlos Maiolino) [1589618] - [drm] drm/bufs: Fix Spectre v1 vulnerability (Rob Clark) [1663467] - [drm] drm/ioctl: Fix Spectre v1 vulnerabilities (Rob Clark) [1663467] - [scsi] scsi: lpfc: Update lpfc version to 12.2.0.0 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update 12.2.0.0 file copyrights to 2019 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix nvmet issues when link bounce under IO load (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct upcalling nvmet_fc transport during io done downcall (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix default driver parameter collision for allowing NPIV support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework locking on SCSI io completion (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Enable SCSI and NVME fc4s by default (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Resize cpu maps structures based on possible cpus (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Utilize new IRQ API when allocating MSI-X vectors (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Rework EQ/CQ processing to address interrupt coalescing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: convert eq_delay to usdelay (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Support non-uniform allocation of MSIX vectors to hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix setting affinity hints to correlate with hardware queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Allow override of hardware queue selection policies (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt partitioned XRI lists to efficient sharing (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize hardware queues with SCSI MQ interface (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Convert ring number to hardware queue for nvme wqe posting. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Move SCSI and NVME Stats to hardware queue structures (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adapt cpucheck debugfs logic to Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove unused FCP_XRI_ABORT_EVENT slowpath event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Partition XRI buffer list across Hardware Queues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Replace io_channels for nvme and fcp with general hdw_queues per cpu (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove extra vector and SLI4 queue for Expresslane (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement common IO buffers between NVME and SCSI (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: Remove excess check on NVME io submit code path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: cleanup: remove nrport from nvme command structure (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: no need to check return value of debugfs_create functions (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Update lpfc version to 12.0.0.10 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Adding ability to reset chip via pci bus reset (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Add log messages to aid in debugging fc4type discovery issues (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix discovery failure when PLOGI is defered (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update fault value on successful trunk events. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct MDS loopback diagnostics support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix link state reporting for trunking when adapter is offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: do not set queue->page_count to 0 if pc_sli4_params.wqpcnt is invalid (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.9 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix dif and first burst use in write commands (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix driver release of fw-logging buffers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct topology type reporting on G7 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct code setting non existent bits in sli4 ABORT WQE (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Defer LS_ACC to FLOGI on point to point logins (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: ls_rjt erroneus FLOGIs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Cap NPIV vports to 256 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix kernel Oops due to null pring pointers (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix a duplicate 0711 log message number. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix panic when FW-log buffsize is not initialized (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix block guard enablement on SLI3 adapters (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Use dma_zalloc_coherent (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.8 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add Trunking support (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Implement GID_PT on Nameserver query to support faster failover (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix odd recovery in duplicate FLOGIs in point-to-point (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct LCB RJT handling (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fcoe: Fix link down issue after 1000+ link bounces (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct errors accessing fw log (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Reset link or adapter instead of doing infinite nameserver PLOGI retry (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix lpfc_sli4_read_config return value check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct speeds on SFP swap (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix remoteport access (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'tgtp' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'psli' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variables 'fc_hdr' and 'hw_page_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: fix spelling mistake "Resrouce" -> "Resource" (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove a bogus pci_dma_sync_single_for_device call (Dick Kennedy) [1665288] - [netdrv] PCI/AER: Remove pci_cleanup_aer_uncorrect_error_status() calls (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Synchronize access to remoteport via rport (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Remove set but not used variable 'sgl_size' (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: update driver version to 12.0.0.7 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: add support to retrieve firmware logs (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: reduce locking when updating statistics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix errors in log messages. (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct invalid EQ doorbell write on if_type=6 (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct irq handling via locks when taking adapter offline (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct soft lockup when running mds diagnostics (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Correct race with abort on completion path (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Raise nvme defaults to support a larger io and more connectivity (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: raise sg count for nvme to use available sg resources (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Fix GFT_ID and PRLI logic for RSCN (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: remove an unnecessary NULL check (Dick Kennedy) [1665288] - [scsi] scsi: lpfc: Default fdmi_on to on (Dick Kennedy) [1665288] - [powerpc] powerpc/mm/hash: Increase vmalloc space with hash translation mode (Steve Best) [1676974] - [net] sunrpc: fix 4 more call sites that were using stack memory with a scatterlist (Scott Mayhew) [1679183] - [net] sunrpc: Don't use stack buffer with scatterlist (Scott Mayhew) [1679183] - [powerpc] powerpc/pseries: Perform full re-add of CPU for topology update post-migration (Steve Best) [1678209] - [fs] proc/stat: Make the interrupt statistics more efficient (Waiman Long) [1675168] - [kernel] genirq: Avoid summation loops for /proc/stat (Waiman Long) [1675168] - [powerpc] powerpc/pseries: fix EEH recovery of some IOV devices (Steve Best) [1676889] - [block] nvme: lock NS list changes while handling command effects (David Milburn) [1672759] - [powerpc] powerpc/radix: Fix kernel crash with mremap() (Steve Best) [1674186] - [crypto] crypto: ccp - fix the SEV probe in kexec boot path (Gary Hook) [1658806] - [netdrv] HDLC Frame Relay: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] DLCI: mark driver unsupported in RHEL8 (John Linville) [1660627] - [netdrv] ethoc: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dnet: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] dl2k: mark hardware unsupported in RHEL8 (John Linville) [1660627] - [netdrv] mark qla3xxx driver as unsupported (John Linville) [1658840] - [netdrv] sfc: initialise found bitmap in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: suppress duplicate nvmem partition types in efx_ef10_mtd_probe (Jarod Wilson) [1668656] - [netdrv] sfc: extend MTD support for newer hardware (Jarod Wilson) [1668656] - [netdrv] sfc: add missing NVRAM partition types for EF10 (Jarod Wilson) [1668656] - [netdrv] ibmvnic: Fix non-atomic memory allocation in IRQ context (Steve Best) [1671474] - [netdrv] ibmvnic: Convert reset work item mutex to spin lock (Steve Best) [1671474] - [powerpc] powerpc/pseries: Export raw per-CPU VPA data via debugfs (Steve Best) [1608797] - [powerpc] powerpc/pseries: Export maximum memory value (Steve Best) [1608797] - [netdrv] ibmveth: Do not process frames after calling napi_reschedule (Desnes Augusto Nunes do Rosario) [1635577] - [cpufreq] cpufreq: powernv: Remove global pstate ramp-down timer in POWER9 (Steve Best) [1670030] - [of] of: __of_detach_node() - remove node from phandle cache (Steve Best) [1669198] - [of] of: of_node_get()/of_node_put() nodes held in phandle cache (Steve Best) [1669198] - [edac] EDAC, sb_edac: Fix signedness bugs in *_get_ha() functions (Aristeu Rozanski) [1641574] - [edac] EDAC, sb_edac: Fix reporting for patrol scrubber errors (Aristeu Rozanski) [1641574] - [documentation] proc.txt: Adding 'HardwareCorrupted' field and description. (Prashant Dhamdhere) [1658233] - [netdrv] qed: Fix command number mismatch between driver and the mfw (Chad Dupuis) [1663500] - Revert "[redhat] switch secureboot kernel image signing to release keys" ("Herton R. Krzesinski")- [arm64] revert "arm64: tlb: Avoid synchronous TLBIs when freeing page tables" (Christoph von Recklinghausen) [1685697]- [firmware] drivers/firmware: psci_checker: stash and use topology_core_cpumask for hotplug tests (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: re-introduce numa mask check for scheduler MC selection (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: rename llc_siblings to align with other struct members (Josh Poimboeuf) [1687101] - [arm64] arm64: smp: remove cpu and numa topology information when hotplugging out CPU (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: restrict updating siblings_masks to online cpus only (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: add support to remove cpu topology sibling masks (Josh Poimboeuf) [1687101] - [arm64] arm64: numa: separate out updates to percpu nodeid and NUMA node cpumap (Josh Poimboeuf) [1687101] - [arm64] arm64: topology: refactor reset_cpu_topology to add support for removing topology (Josh Poimboeuf) [1687101]- [fs] gfs2: Fix missed wakeups in find_insert_glock (Andreas Grunbacher) [1678907]- [firmware] efi: Reduce the amount of memblock reservations for persistent allocations (Bhupesh Sharma) [1682988] - [firmware] efi: Permit multiple entries in persistent memreserve data structure (Bhupesh Sharma) [1682988] - [kernel] cpu/hotplug: Create SMT sysfs interface for all arches (Josh Poimboeuf) [1686068] - [net] netfilter: nft_set_hash: bogus element self comparison from deactivation path (Florian Westphal) [1678574] - [net] netfilter: nft_set_hash: fix lookups with fixed size hash on big endian (Florian Westphal) [1678574]- [security] revert "Add a SysRq option to lift kernel lockdown" (Lenny Szubowicz) [1684348] - [s390] s390/setup: fix boot crash for machine without EDAT-1 (Philipp Rudo) [1677357] - [s390] s390/setup: fix early warning messages (Philipp Rudo) [1677357]- [netdrv] net: hns3: add 8 BD limit for tx flow (Xiaojun Tan) [1676771] - [netdrv] net: hns3: fix a SSU buffer checking bug (Xiaojun Tan) [1676771] - [netdrv] net: hns3: aligning buffer size in SSU to 256 bytes (Xiaojun Tan) [1676771] - [netdrv] net: hns3: getting tx and dv buffer size through firmware (Xiaojun Tan) [1676771] - [net] netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs (Florian Westphal) [1676602] - [char] ipmi: fix use-after-free of user->release_barrier.rda (Xiaojun Tan) [1677550] - [char] ipmi: Prevent use-after-free in deliver_response (Xiaojun Tan) [1677550]- [x86] revert "cpu/hotplug: Add SMT policy options" (Josh Poimboeuf) [1683690] - [crypto] net: crypto set sk to NULL when af_alg_release (Neil Horman) [1679450] {CVE-2019-8912} - [drm] drm/i915/gvt: update force-to-nonpriv register whitelist (Paul Lai) [1643972] - [kernel] MODSIGN: Also check platform keyring in mod_verify_sig() (Lenny Szubowicz) [1568532] - [kernel] Fix for module sig verification (Lenny Szubowicz) [1568532] - [security] efi: Lock down the kernel if booted in secure boot mode (Lenny Szubowicz) [1568532] - [firmware] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode (Lenny Szubowicz) [1568532] - [x86] Copy secure_boot flag in boot params across kexec reboot (Lenny Szubowicz) [1568532] - [fs] debugfs: Restrict debugfs when the kernel is locked down (Lenny Szubowicz) [1568532] - [mm] x86/mmiotrace: Lock down the testmmiotrace module (Lenny Szubowicz) [1568532] - [kernel] Lock down module params that specify hardware parameters (eg. ioport) (Lenny Szubowicz) [1568532] - [tty] Lock down TIOCSSERIAL (Lenny Szubowicz) [1568532] - [pcmcia] Prohibit PCMCIA CIS storage when the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Disable ACPI table override if the kernel is locked down (Lenny Szubowicz) [1568532] - [acpi] acpi: Ignore acpi_rsdp kernel param when the kernel has been locked down (Lenny Szubowicz) [1568532] - [acpi] ACPI: Limit access to custom_method when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86/msr: Restrict MSR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [x86] x86: Lock down IO port access when the kernel is locked down (Lenny Szubowicz) [1568532] - [pci] PCI: Lock down BAR access when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] uswsusp: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] hibernate: Disable when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] kexec_load: Disable at runtime if the kernel is locked down (Lenny Szubowicz) [1568532] - [char] Restrict /dev/{mem, kmem, port} when the kernel is locked down (Lenny Szubowicz) [1568532] - [kernel] MODSIGN: Enforce module signatures if the kernel is locked down (Lenny Szubowicz) [1568532] - [security] Add a SysRq option to lift kernel lockdown (Lenny Szubowicz) [1568532] - [security] Add the ability to lock down access to the running kernel image (Lenny Szubowicz) [1568532]- [net] tun: forbid iface creation with rtnl ops (Sabrina Dubroca) [1680969] - [net] revert "bridge: do not add port to router list when receives query with source 0.0.0.0" (Hangbin Liu) [1679896] - [net] sctp: walk the list of asoc safely (Marcelo Leitner) [1679920] {CVE-2019-8956} - [net] netfilter: nf_nat: skip nat clash resolution for same-origin entries (Florian Westphal) [1677647] - [net] netfilter: nf_conntrack: resolve clash for matching conntracks (Florian Westphal) [1677647] - [net] netfilter: nf_tables: fix flush after rule deletion in the same batch (Phil Sutter) [1677672] - [net] gro_cell: add napi_disable in gro_cells_destroy (Stefano Brivio) [1674408] - [net] sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment (Xin Long) [1669386] - [net] ipvs: fix dependency on nf_defrag_ipv6 (Andrea Claudi) [1660808] - [net] sctp: check and update stream->out_curr when allocating stream_out (Xin Long) [1651877]- [x86] cpu/hotplug: Add SMT policy options (Josh Poimboeuf) [1677405]- [kernel] open the RHEL 8.1 development ("Herton R. Krzesinski") - [pci] pci/quirks: Add quirk to reset nvgpu at boot for the Lenovo ThinkPad P50 (Lyude Paul) [1677022] - [arm64] arm64, vmcoreinfo : Append 'MAX_USER_VA_BITS' to vmcoreinfo (Bhupesh Sharma) [1672962] - [md] dm thin: fix bug where bio that overwrites thin block ignores FUA (Mike Snitzer) [1679211] - [pci] PCI: Fix "try" semantics of bus and slot reset (Myron Stowe) [1662901] - [acpi] acpi/nfit: Fix bus command validation (Jeff Moyer) [1673958] - [pci] PCI/MSI: Return -ENOSPC from pci_alloc_irq_vectors_affinity() (Myron Stowe) [1667773] - [fs] NFS: Don't use page_file_mapping after removing the page (Benjamin Coddington) [1664190] - [fs] NFS: Fix up return value on fatal errors in nfs_page_async_flush() (Benjamin Coddington) [1664190] - [md] md: fix raid10 hang issue caused by barrier (Xiao Ni) [1630921] - [md] md/raid1: don't clear bitmap bits on interrupted recovery. (Xiao Ni) [1677360] - [virt] kvm: fix kvm_ioctl_create_device() reference counting (CVE-2019-6974) (Paolo Bonzini) [1673843] {CVE-2019-6974} - [block] blk-mq: fix a hung issue when fsync (Ming Lei) [1674399] - [block] Revert "block: cover another queue enter recursion via BIO_QUEUE_ENTERED" (Ming Lei) [1673966] - [tools] perf tools: Check for null when copying nsinfo. (Jiri Olsa) [1676451] - [iommu] iommu/amd: Fix IOMMU page flush when detach device from a domain (Suravee Suthikulpanit) [1672476]- [kernel] namespace: Add padding fix to user_table[] (Prarit Bhargava) [1677103] - [x86] KVM: nVMX: unconditionally cancel preemption timer in free_nested (CVE-2019-7221) (Paolo Bonzini) [1673841] {CVE-2019-7221} - [scsi] scsi: sd: fix entropy gathering for most rotational disks (Ewan Milne) [1676735] - [scsi] scsi: sd: Contribute to randomness when running rotational device (Ewan Milne) [1676735] - [rpmspec] Revert "Drop -doc subpackage" (Prarit Bhargava) [1657609] - [net] svcrdma: Remove max_sge check at connect time (Don Dutile) [1638869] - [net] svcrdma: Reduce max_send_sges (Don Dutile) [1638869] - [arm64] arm64: mm: Introduce MAX_USER_VA_BITS definition (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Rewrite stale comment in asm/tlbflush.h (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Avoid synchronous TLBIs when freeing page tables (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Remove redundant !CONFIG_HAVE_RCU_TABLE_FREE code (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Allow stride to be specified for __flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Justify non-leaf invalidation in flush_tlb_range() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Add DSB ISHST prior to TLBI in __flush_tlb_[kernel_]pgtable() (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlb: Use last-level invalidation in flush_tlb_kernel_range() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: EXPORT vabits_user to modules (Christoph von Recklinghausen) [1672997] - [arm64] arm64: fix ARM64_USER_VA_BITS_52 builds (Christoph von Recklinghausen) [1672997] - [arm64] arm64: Kconfig: Re-jig CONFIG options for 52-bit VA (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Allow forcing all userspace addresses to 52-bit (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: introduce 52-bit userspace support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Prevent mismatched 52-bit VA support (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Offset TTBR1 to allow 52-bit PTRS_PER_PGD (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Define arch_get_mmap_end, arch_get_mmap_base (Christoph von Recklinghausen) [1672997] - [firmware] arm64: mm: Introduce DEFAULT_MAP_WINDOW (Christoph von Recklinghausen) [1672997] - [mm] mm: mmap: Allow for "high" userspace addresses (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: apply r/o permissions of VM areas to its linear alias as well (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: purge lazily unmapped vm regions before changing permissions (Christoph von Recklinghausen) [1672997] - [arm64] arm64: mm: Don't wait for completion of TLB invalidation when page aging (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Use __pa_symbol() for set_swapper_pgd() (Christoph von Recklinghausen) [1672997] - [mm] arm64: mm: Drop the unused cpu parameter (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: move runtime pgds to rodata (Christoph von Recklinghausen) [1672997] - [mm] arm64/mm: use fixmap to modify swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Separate boot-time page tables from swapper_pg_dir (Christoph von Recklinghausen) [1672997] - [arm64] arm64/mm: Pass ttbr1 as a parameter to __enable_mmu() (Christoph von Recklinghausen) [1672997] - [mm] arm64: fix erroneous warnings in page freeing functions (Christoph von Recklinghausen) [1672997] - [mm] arm64: Implement page table free interfaces (Christoph von Recklinghausen) [1672997] - [arm64] arm64: tlbflush: Introduce __flush_tlb_kernel_pgtable (Christoph von Recklinghausen) [1672997] - [lib] ioremap: Update pgtable free interfaces with addr (Christoph von Recklinghausen) [1672997] - [mm] x86/mm: Disable ioremap free page handling on x86-PAE (Christoph von Recklinghausen) [1672997] - [arm64] arm64: KVM: Enable Common Not Private translations (Christoph von Recklinghausen) [1504991] - [arm64] arm64: mm: Support Common Not Private translations (Christoph von Recklinghausen) [1504991] - [kernel] cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM (Igor Mammedov) [1668147] - [tools] perf tools: Compile perf with -g instead of -ggdb3 to workaround gdb crash (Jiri Olsa) [1667109]- [fs] Revert "gfs2: Fix loop in gfs2_rbm_find" (Andreas Grunbacher) [1658528] - [net] bpf: fix sanitation of alu op with pointer / scalar type from different paths (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: prevent out of bounds speculation on pointer arithmetic (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: move {prev_,}insn_idx into verifier env (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf/verifier: per-register parent pointers (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: restrict unknown scalars of mixed signed bounds for unprivileged (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: Simplify ptr_min_max_vals adjustment (Jiri Olsa) [1673631] {CVE-2019-7308} - [net] bpf: fix inner map masking to prevent oob under speculation (Jiri Olsa) [1673631] {CVE-2019-7308} - [include] KABI: struct class padding (Prarit Bhargava) [1670035] - [include] KABI: struct timer_list padding (Prarit Bhargava) [1670035] - [include] KABI: struct irq_domain padding (Prarit Bhargava) [1670035] - [nvdimm] libnvdimm, pmem: Fix badblocks population for 'raw' namespaces (Jeff Moyer) [1672315] - [netdrv] net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance (Alaa Hleihel) [1648230] - [kernel] exec: increase BINPRM_BUF_SIZE to 256 (Oleg Nesterov) [1447445]- [include] KABI: struct kset padding (Prarit Bhargava) [1669796] - [include] KABI: struct kobject and kobj_type padding (Prarit Bhargava) [1669796] - [include] KABI: struct delayed_work padding (Prarit Bhargava) [1669796] - [include] KABI: struct work_struct padding (Prarit Bhargava) [1669796] - [include] KABI: struct hrtimer padding (Prarit Bhargava) [1669796] - [include] KABI: struct user_namespace padding (Prarit Bhargava) [1669796] - [include] KABI: struct resource padding (Prarit Bhargava) [1669796] - [include] KABI: Protect device_driver struct (Prarit Bhargava) [1666316] - [include] KABI: Protect radix functions (Prarit Bhargava) [1669079] - [char] ipmi: msghandler: Fix potential Spectre v1 vulnerabilities (Tony Camuso) [1672582] - [vhost] vhost: fix OOB in get_rx_bufs() (Jason Wang) [1668665] {CVE-2018-16880}- [md] dm: don't use bio_trim() afterall (Mike Snitzer) [1673657] - [md] dm: add memory barrier before waitqueue_active (Mike Snitzer) [1673110] - [x86] x86: uaccess: Inhibit speculation past access_ok() in user_access_begin() (Joe Lawrence) [1670113] {CVE-2018-20669} - [kernel] make 'user_access_begin()' do 'access_ok()' (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] i915: fix missing user_access_end() in page fault exception case (Joe Lawrence) [1670113] {CVE-2018-20669} - [drm] drm/i915: Force the slow path after a user-write error (Joe Lawrence) [1670113] {CVE-2018-20669} - [x86] x86/microcode/amd: Don't falsely trick the late loading mechanism (David Arcari) [1654904] - [fs] iomap: get/put the page in iomap_page_create/release() (Artem Savkov) [1664298] - [scsi] scsi: qla2xxx: Add new FC-NVMe enable BIT to enable FC-NVMe feature (Himanshu Madhani) [1671569] - [message] mptsas: pci-id table changes (Tomas Henzl) [1666730] - [message] mptsas: Taint kernel if mptsas is loaded (Tomas Henzl) [1666730] - [kernel] genirq/matrix: Improve target CPU selection for managed interrupts. (Gary Hook) [1669557] - [kernel] irq/matrix: Spread managed interrupts on allocation (Gary Hook) [1669557] - [kernel] irq/matrix: Split out the CPU selection code into a helper (Gary Hook) [1669557] - [net] sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach() (Stefano Brivio) [1671680] - [net] geneve: should not call rt6_lookup() when ipv6 was disabled (Stefano Brivio) [1671680] - [net] netfilter: physdev: relax br_netfilter dependency (Phil Sutter) [1650382] - [net] netfilter: nf_tables: add NFTA_RULE_POSITION_ID to nla_policy (Phil Sutter) [1670563] - [net] netfilter: nf_tables: Support RULE_ID reference in new rule (Phil Sutter) [1670563] - [net] rtnetlink: fix incorrect handling of device stats passed to userspace (Ivan Vecera) [1668298] - [net] netfilter: nf_tables: handle nft_object lookups via rhltable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: prepare nft_object for lookups via hashtable (Phil Sutter) [1659725] - [net] netfilter: nf_tables: selective rule dump needs table to be specified (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Fix for endless loop when dumping ruleset (Phil Sutter) [1659725] - [net] netfilter: nf_tables: Speed up selective rule dumps (Phil Sutter) [1659725] - [net] exclude sock_reuseport from kABI protection (Paolo Abeni) [1665984] - [include] KABI: struct device padding (Don Dutile) [1664445] - [include] KABI: struct dma_map_ops padding (Don Dutile) [1664482] - [kernel] swiotlb: clear io_tlb_start and io_tlb_end in swiotlb_exit (Don Dutile) [1664484] - [kernel] dma-mapping: remove a few unused exports (Don Dutile) [1664484] - [include] dma-mapping: properly stub out the DMA API for !CONFIG_HAS_DMA (Don Dutile) [1664484] - [kernel] dma-mapping: remove dmam_{declare,release}_coherent_memory (Don Dutile) [1664484] - [kernel] dma-mapping: implement dmam_alloc_coherent using dmam_alloc_attrs (Don Dutile) [1664484] - [include] dma-mapping: implement dma_map_single_attrs using dma_map_page_attrs (Don Dutile) [1664484] - [include] dma-mapping: fix flags in dma_alloc_wc (Don Dutile) [1664484] - [include] dma-mapping: deprecate dma_zalloc_coherent (Don Dutile) [1664484] - [arm64] arm64: default to the direct mapping in get_arch_dma_ops (Don Dutile) [1664484] - [kernel] dma-mapping: fix inverted logic in dma_supported (Don Dutile) [1664484] - [include] dma-mapping: bypass indirect calls for dma-direct (Don Dutile) [1664484] - [kernel] dma-direct: merge swiotlb_dma_ops into the dma_direct code (Don Dutile) [1664484] - [kernel] dma-direct: do not include SME mask in the DMA supported check (Don Dutile) [1664484] - [kernel] dma-direct: use dma_direct_map_page to implement dma_direct_map_sg (Don Dutile) [1664484] - [kernel] dma-direct: improve addressability error reporting (Don Dutile) [1664484] - [kernel] dma-direct: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [xen] swiotlb: remove dma_mark_clean (Don Dutile) [1664484] - [xen] swiotlb: remove SWIOTLB_MAP_ERROR (Don Dutile) [1664484] - [xen] xen-swiotlb: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] swiotlb: Skip cache maintenance on map error (Don Dutile) [1664484] - [kernel] swiotlb: add support for non-coherent DMA (Don Dutile) [1664484] - [kernel] swiotlb: mark is_swiotlb_buffer static (Don Dutile) [1664484] - [kernel] swiotlb: remove a pointless comment (Don Dutile) [1664484] - [kernel] swiotlb: clean up reporting (Don Dutile) [1664484] - [kernel] dma-direct: reject highmem pages from dma_alloc_from_contiguous (Don Dutile) [1664484] - [kernel] dma-direct: provide page based alloc/free helpers (Don Dutile) [1664484] - [include] dma-direct: Make DIRECT_MAPPING_ERROR viable for SWIOTLB (Don Dutile) [1664484] - [kernel] dma-direct: respect DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [kernel] dma-direct: document the zone selection logic (Don Dutile) [1664484] - [kernel] dma-direct: fix return value of dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-direct: always allow dma mask <= physiscal memory size (Don Dutile) [1664484] - [kernel] dma-direct: implement complete bus_dma_mask handling (Don Dutile) [1664484] - [kernel] dma-direct: refine dma_direct_alloc zone selection (Don Dutile) [1664484] - [kernel] dma-direct: add an explicit dma_direct_get_required_mask (Don Dutile) [1664484] - [kernel] kernel/dma/direct: take DMA offset into account in dma_direct_supported (Don Dutile) [1664484] - [kernel] dma-mapping: factor out dummy DMA ops (Don Dutile) [1664484] - [mm] arm64: dma-mapping: Fix FORCE_CONTIGUOUS buffer clearing (Don Dutile) [1664484] - [iommu] iommu/dma-iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/vt-d: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/intel: small map_page cleanup (Don Dutile) [1664484] - [iommu] intel-iommu: mark intel_dma_ops static (Don Dutile) [1664484] - [iommu] ia64: remove iommu_dma_supported (Don Dutile) [1664484] - [iommu] iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [iommu] iommu/dma: Use fast DMA domain lookup (Don Dutile) [1664484] - [x86] x86/amd_gart: fix unmapping of non-GART mappings (Don Dutile) [1664484] - [x86] x86/amd_gart: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [mm] arm64: remove the dummy_dma_ops mapping_error method (Don Dutile) [1664484] - [powerpc] powerpc: Do not redefine NEED_DMA_MAP_STATE (Don Dutile) [1664484] - [powerpc] powerpc/iommu: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [s390] s390: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [kernel] dma-mapping: always build the direct mapping code (Don Dutile) [1664484] - [kernel] dma-mapping: move dma_cache_sync out of line (Don Dutile) [1664484] - [kernel] dma-mapping: move various slow path functions out of line (Don Dutile) [1664484] - [base] dma-mapping: move dma_get_required_mask to kernel/dma (Don Dutile) [1664484] - [base] dma-mapping: move dma_default_get_required_mask under ifdef (Don Dutile) [1664484] - [include] dma-mapping: merge dma_unmap_page_attrs and dma_unmap_single_attrs (Don Dutile) [1664484] - [include] dma-mapping: simplify the dma_sync_single_range_for_{cpu,device} implementation (Don Dutile) [1664484] - [include] dma-mapping: return an error code from dma_mapping_error (Don Dutile) [1664484] - [pci] dma-mapping: remove the mapping_error dma_map_ops method (Don Dutile) [1664484] - [include] dma-mapping: provide a generic DMA_MAPPING_ERROR (Don Dutile) [1664484] - [kernel] dma-mapping: move the arm64 noncoherent alloc/free support to common code (Don Dutile) [1664484] - [mm] arm64: fix warnings without CONFIG_IOMMU_DMA (Don Dutile) [1664484] - [arm64] arm64: use the generic swiotlb_dma_ops (Don Dutile) [1664484] - [kernel] swiotlb: don't dip into swiotlb pool for coherent allocations (Don Dutile) [1664484] - [kernel] swiotlb: refactor swiotlb_map_page (Don Dutile) [1664484] - [kernel] swiotlb: use swiotlb_map_page in swiotlb_map_sg_attrs (Don Dutile) [1664484] - [kernel] swiotlb: merge swiotlb_unmap_page and unmap_single (Don Dutile) [1664484] - [kernel] swiotlb: remove the overflow buffer (Don Dutile) [1664484] - [kernel] swiotlb: do not panic on mapping failures (Don Dutile) [1664484] - [mm] arm64/dma-mapping: Mildly optimise non-coherent IOMMU ops (Don Dutile) [1664484] - [iommu] iommu: Add fast hook for getting DMA domains (Don Dutile) [1664484] - [iommu] iommu: Remove the ->map_sg indirection (Don Dutile) [1664484] - [iommu] kernel/dma: remove unsupported gfp_mask parameter from dma_alloc_from_contiguous() (Don Dutile) [1664484] - [mm] mm/cma: remove unsupported gfp_mask parameter from cma_alloc() (Don Dutile) [1664484] - [kernel] dma-mapping: move the remap helpers to a separate file (Don Dutile) [1664484] - [include] dma-mapping: fix return type of dma_set_max_seg_size() (Don Dutile) [1664484] - [include] dma-mapping: translate __GFP_NOFAIL to DMA_ATTR_NO_WARN (Don Dutile) [1664484] - [include] dma-debug: Check for drivers mapping invalid addresses in dma_map_single() (Don Dutile) [1664484] - [base] dma-mapping: make the get_required_mask method available unconditionally (Don Dutile) [1664484] - [xen] dma-mapping: support non-coherent devices in dma_common_get_sgtable (Don Dutile) [1664484] - [kernel] dma-mapping: consolidate the dma mmap implementations (Don Dutile) [1664484] - [kernel] dma-mapping: merge direct and noncoherent ops (Don Dutile) [1664484] - [include] dma-mapping: move the dma_coherent flag to struct device (Don Dutile) [1664484] - [include] dma-mapping: remove dma_deconfigure (Don Dutile) [1664484] - [base] dma-mapping: remove dma_configure (Don Dutile) [1664484] - [include] dma-mapping: relax warning for per-device areas (Don Dutile) [1664484] - [kernel] dma-mapping: add the missing ARCH_HAS_SYNC_DMA_FOR_CPU_ALL declaration (Don Dutile) [1664484] - [kernel] dma-noncoherent: add a arch_sync_dma_for_cpu_all hook (Don Dutile) [1664484] - [block] deprecate elevator= kernel parameter (Jeff Moyer) [1665295] - [rpmspec] kernel.spec: disable kabi checks until RC (=?UTF-8?q?=C4=8Cestm=C3=ADr=20Kalina?=) [1671007] - [iommu] iommu/amd: Unmap all mapped pages in error path of map_sg (Jerry Snitselaar) [1668448] - [iommu] iommu/amd: Call free_iova_fast with pfn in map_sg (Jerry Snitselaar) [1668448]- [arm64] arm64, vmcoreinfo : Append 'MAX_PHYSMEM_BITS' to vmcoreinfo (Bhupesh Sharma) [1666679] - [kernel] sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK (Joe Lawrence) [1667840] - [init] Small change to the message about certified hardware (Steve Best) [1671765] - [x86] x86/kdump: make the behavior of crashkernel=X consistent with kaslr (Pingfan Liu) [1640799] - [x86] Add back support for Intel processors (Steve Best) [1670529] - [net] SUNRPC: Clean up initialisation of the struct rpc_rqst (Benjamin Coddington) [1650494] - [x86] KABI, x86/paravirt: Protect paravirt ops structures (Waiman Long) [1669957] - [include] KABI: struct module padding (Prarit Bhargava) [1669480] - [include] KABI: struct stack_trace_struct padding (Prarit Bhargava) [1669480] - [documentation] iommu: Fix passthrough option documentation (Gary Hook) [1658391] - [iommu] iommu: Add config option to set passthrough as default (Gary Hook) [1658391] - [kernel] redhat: kernel: clean up taint flags (Jiri Benc) [1654313]- [scsi] scsi: qedi: Add the CRC size within iSCSI NVM image (Charles Rose) [1670186] - [fs] iomap: don't search past page end in iomap_is_partially_uptodate (Eric Sandeen) [1657588] - [netdrv] cxgb4: update supported DCB version (Arjun Vynipadath) [1668571] - [x86] kexec, KEYS: Make use of platform keyring for signature verify (Kairui Song) [1640486] - [security] integrity, KEYS: add a reference to platform keyring (Kairui Song) [1640486] - [security] efi: Allow the "db" UEFI variable to be suppressed (Kairui Song) [1640486] - [security] efi: Import certificates from UEFI Secure Boot (Kairui Song) [1640486] - [security] efi: Add an EFI signature blob parser (Kairui Song) [1640486] - [include] efi: Add EFI signature data types (Kairui Song) [1640486] - [security] integrity: Load certs to the platform keyring (Kairui Song) [1640486] - [security] integrity: Define a trusted platform keyring (Kairui Song) [1640486] - [security] security/integrity: remove unnecessary 'init_keyring' variable (Kairui Song) [1640486] - [x86] Fix kexec forbidding kernels signed with keys in the secondary keyring to boot (Kairui Song) [1640486] - [crypto] Replace magic for trusting the secondary keyring with #define (Kairui Song) [1640486] - [acpi] acpi/nfit: Fix command-supported detection (Jeff Moyer) [1665812] - [acpi] acpi/nfit: Block function zero DSMs (Jeff Moyer) [1665812] - [md] dm: add missing trace_block_split() to __split_and_process_bio() (Mike Snitzer) [1645283] - [md] dm: fix dm_wq_work() to only use __split_and_process_bio() if appropriate (Mike Snitzer) [1645283] - [md] dm: fix redundant IO accounting for bios that need splitting (Mike Snitzer) [1645283] - [md] dm: fix clone_bio() to trigger blk_recount_segments() (Mike Snitzer) [1645283] - [block] block: cover another queue enter recursion via BIO_QUEUE_ENTERED (Mike Snitzer) [1645283] - [md] dm thin: fix passdown_double_checking_shared_status() (Mike Snitzer) [1668039] - [tools] bpftool: Fix prog dump by tag (Jiri Olsa) [1667305] - [arm64] arm64: ftrace: Fix to enable syscall events on arm64 (Don Dutile) [1668035] - [arm64] arm64: implement syscall wrappers (Don Dutile) [1668035] - [arm64] arm64: convert compat wrappers to C (Don Dutile) [1668035] - [arm64] arm64: use SYSCALL_DEFINE6() for mmap (Don Dutile) [1668035] - [arm64] arm64: use {COMPAT,}SYSCALL_DEFINE0 for sigreturn (Don Dutile) [1668035] - [arm64] arm64: remove in-kernel call to sys_personality() (Don Dutile) [1668035] - [include] kernel: add ksys_personality() (Don Dutile) [1668035] - [arm64] arm64: drop alignment from syscall tables (Don Dutile) [1668035] - [arm64] arm64: entry: remove unused register aliases (Don Dutile) [1668035] - [arm64] arm64: convert native/compat syscall entry to C (Don Dutile) [1668035] - [arm64] arm64: svc: Ensure hardirq tracing is updated before return (Don Dutile) [1668035] - [arm64] arm64: convert syscall trace logic to C (Don Dutile) [1668035] - [arm64] arm64: move sve_user_{enable,disable} to (Don Dutile) [1668035] - [arm64] arm64: kill change_cpacr() (Don Dutile) [1668035] - [arm64] arm64: convert raw syscall invocation to C (Don Dutile) [1668035] - [arm64] arm64: introduce syscall_fn_t (Don Dutile) [1668035] - [arm64] arm64: remove sigreturn wrappers (Don Dutile) [1668035] - [arm64] arm64: rseq: Implement backend rseq calls and select HAVE_RSEQ (Don Dutile) [1668035] - [sound] ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock (Jaroslav Kysela) [1664249] - [infiniband] IB/hfi1: Fix an out-of-bounds access in get_hw_stats (Alex Estrin) [1667104] - [infiniband] IB/hfi1: Incorrect sizing of sge for PIO will OOPs (Alex Estrin) [1667095] - [drm] drm/nouveau: register backlight on pascal and newer (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for LVDS/eDP panels (Ben Skeggs) [1664899] - [drm] drm/nouveau/disp: move eDP panel power handling (Ben Skeggs) [1664899] - [drm] drm/nouveau/devinit: don't fail when PMU/PRE_OS is missing from VBIOS (Ben Skeggs) [1664899] - [kernel] locking/rwsem: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] futex: Fix (possible) missed wakeup (Waiman Long) [1668014] - [kernel] sched/wake_q: Fix wakeup ordering for wake_q (Waiman Long) [1668014] - [kernel] sched/wake_q: Document wake_q_add() (Waiman Long) [1668014] - [kernel] sched/wait: Fix rcuwait_wake_up() ordering (Waiman Long) [1668014] - [kernel] sched/Documentation: Update wake_up() & co. memory-barrier guarantees (Waiman Long) [1668014] - [kvm] KVM: PPC: Book3S HV: Flush guest mappings when turning dirty tracking on/off (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Cleanups - constify memslots, fix comments (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Book3S HV: Map single pages when doing dirty page logging (Laurent Vivier) [1650386] - [kvm] KVM: PPC: Pass change type down to memslot commit function (Laurent Vivier) [1650386] - [vhost] vhost: log dirty page correctly (Jason Wang) [1657578] - [netdrv] netxen: taint as unsupported in RHEL8 (Tony Camuso) [1654825] - [hid] HID: hiddev: fix potential Spectre v1 (Benjamin Tissoires) [1664611] - [net] resort to custom code for sk_buff padding (Paolo Abeni) [1665984] - [net] add padding to cipher_context (Paolo Abeni) [1665984] - [net] add padding to tls_crypto_context (Paolo Abeni) [1665984] - [net] add padding to ipv4_devconf (Paolo Abeni) [1665984] - [net] ip6mr: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [net] ipv4: Fix potential Spectre v1 vulnerability (Stefano Brivio) [1663472] - [include] add KABI padding to file_system_type (Eric Sandeen) [1665320 1650565] - [include] add KABI padding to multiple fs ops vectors (Eric Sandeen) [1665320] - [fs] add KABI padding to dentry structure (Eric Sandeen) [1665320] - [fs] add KABI padding to inode structure (Eric Sandeen) [1665320] - [include] add KABI padding to file_lock structure (Eric Sandeen) [1665320] - [include] KABI: add an iopoll method to struct file_operations (Eric Sandeen) [1665320] - [sound] ALSA: emux: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [sound] ALSA: pcm: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: rme9652: Fix potential Spectre v1 vulnerability (Jaroslav Kysela) [1663477] - [sound] ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities (Jaroslav Kysela) [1663477] - [powerpc] powerpc/tm: Unset MSR[TS] if not recheckpointing (Gustavo Duarte) [1663853] - [netdrv] r8152: Add support for MAC address pass through on RTL8153-BND (Perry Yuan) [1658433] - [hid] HID: debug: fix the ring buffer implementation (Tony Camuso) [1669469] {CVE-2019-3819}- [netdrv] net: hns: Fix WARNING when hns modules installed (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ping failed when use net bridge and send multicast (Xiaojun Tan) [1662120] - [netdrv] net: hns: Add mac pcs config when enable|disable mac (Xiaojun Tan) [1662120] - [netdrv] net: hns: Fix ntuple-filters status error. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Free irq when exit from abnormal branch (Xiaojun Tan) [1662120] - [netdrv] net: hns: Clean rx fbd when ae stopped. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Some registers use wrong address according to the datasheet. (Xiaojun Tan) [1662120] - [netdrv] net: hns: All ports can not work when insmod hns ko after rmmod. (Xiaojun Tan) [1662120] - [netdrv] net: hns: Incorrect offset address used for some registers. (Xiaojun Tan) [1662120] - [include] ipmi: RH_KABI macros to pad kabi exposed structs (Tony Camuso) [1658175] - [scsi] reserve space in structures for KABI (Ewan Milne) [1664397]- [include] PCI: Add reserved fields to 'struct hotplug_slot' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct hotplug_slot_ops' (Myron Stowe) [1663534] - [pci] PCI: Add reserved fields to 'struct pci_sriov' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_driver' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields to 'struct pci_bus' (Myron Stowe) [1663534] - [include] PCI: Add reserved fields, and extension, to 'struct pci_dev' (Myron Stowe) [1663534] - [pci] PCI: Add missing include to drivers/pci.h (Myron Stowe) [1663534] - [pci] PCI/IOV: Use VF0 cached config space size for other VFs (Myron Stowe) [1663534] - [include] PCI: always include 'p2pdma' in 'struct pci_dev' (Myron Stowe) [1663534] - [ata] PCI: Remove pci_set_dma_max_seg_size() (Myron Stowe) [1663534] - [pci] PCI: Remove pci_set_dma_seg_boundary() (Myron Stowe) [1663534] - [include] PCI: Remove pci_unmap_addr() wrappers for DMA API (Myron Stowe) [1663534] - [pci] PCI/AER: Abstract AER interrupt handling (Myron Stowe) [1663534] - [pci] PCI: Uninline PCI bus accessors for better ftracing (Myron Stowe) [1663534] - [pci] PCI/portdrv: Add runtime PM hooks for port service drivers (Myron Stowe) [1663534] - [pci] PCI: Make link active reporting detection generic (Myron Stowe) [1663534] - [block] block: don't lose track of REQ_INTEGRITY flag (Ming Lei) [1665684] - [nvme] nvme-pci: fix nvme_setup_irqs() (Ming Lei) [1661439] - [lib] sbitmap: Protect swap_lock from hardirq (Ming Lei) [1666192] - [lib] sbitmap: Protect swap_lock from softirqs (Ming Lei) [1666192] - [scsi] scsi: isci: initialize shost fully before calling scsi_add_host() (Ming Lei) [1664918] - [nvme] nvmet-fc: Mark NVMe/FC target mode driver as unsupported (Ewan Milne) [1664838] - [netdrv] bnx2x: Assign unique DMAE channel number for FW DMAE transactions. (Jonathan Toppins) [1638306] - [fs] block: don't use un-ordered __set_current_state(TASK_UNINTERRUPTIBLE) (Ming Lei) [1664580] - [netdrv] qed: Wait for ready indication before rereading the shmem (Chad Dupuis) [1652417] - [netdrv] qed: Avoid sending mailbox commands when MFW is not responsive (Chad Dupuis) [1652417] - [netdrv] qed: Wait for MCP halt and resume commands to take place (Chad Dupuis) [1652417] - [netdrv] qed: Prevent a possible deadlock during driver load and unload (Chad Dupuis) [1652417] - [fs] gfs2: Fix loop in gfs2_rbm_find (Andreas Grunbacher) [1658528] - [fs] gfs2: Get rid of potential double-freeing in gfs2_create_inode (Andreas Grunbacher) [1658539]- [vhost] vhost/vsock: fix vhost vsock cid hashing inconsistent (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [vhost] vhost/vsock: fix use-after-free in network stack callers (Stefan Hajnoczi) [1619848] {CVE-2018-14625} - [netdrv] bnx2x: Add VF spoof-checking configuration (Jonathan Toppins) [1646842] - [netdrv] net-next: hinic: fix a problem in free_tx_poll() (Xiaojun Tan) [1642016] - [netdrv] net: hns: fix for unmapping problem when SMMU is on (Xiaojun Tan) [1640526] - [netdrv] net: hns: add netif_carrier_off before change speed and duplex (Xiaojun Tan) [1640526] - [netdrv] net: hns: add the code for cleaning pkt in chip (Xiaojun Tan) [1640526] - [netdrv] net: hns: modify variable type in hns_nic_reuse_page (Xiaojun Tan) [1640526]- [irqchip] Mark GICv2 deprecated (Wei Huang) [1609391] - [scsi] qla2xxx: Use correct number of vectors for online CPUs (Himanshu Madhani) [1644058] - [scsi] megaraid_sas: mark Aero controllers as tech preview (Tomas Henzl) [1659972] - [scsi] megaraid_sas: add retry logic in megasas_readl (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Introduce new Aero adapter type (Tomas Henzl) [1659972] - [scsi] scsi: megaraid_sas: Fix Ventura series based checks (Tomas Henzl) [1659972] - [scsi] scsi: libfc: retry PRLI if we cannot analyse the payload (Chris Leech) [1631843] - [scsi] scsi: libfc: check fc_frame_payload_get() return value for null (Chris Leech) [1631843] - [scsi] scsi: libfc: hold disc_mutex in fc_disc_stop_rports() (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup lockdep annotations (Chris Leech) [1631843] - [scsi] scsi: libfc: fixup 'sleeping function called from invalid context' (Chris Leech) [1631843] - [scsi] scsi: libfc: Add lockdep annotations (Chris Leech) [1631843] - [md] dm crypt: fix parsing of extended IV arguments (Mike Snitzer) [1665290] - [kernel] redhat: kabi: reserved padding for kernel sched data structures (Rafael Aquini) [1664858] - [kernel] redhat: kabi: reserved padding for MM related data structures (Rafael Aquini) [1664858] - [vfio] vfio/type1: Fix unmap overflow off-by-one (Alex Williamson) [1662291] - [message] mptspi: pci-id table changes (Tomas Henzl) [1651803] - [message] mptspi: Taint kernel if mptspi is loaded (Tomas Henzl) [1651803] - [block] kabi: reserve space for public data structure (Ming Lei) [1551939] - [block] kabi: reserve space for blk-mq related structure (Ming Lei) [1551939] - [block] kabi: reserve space for bsg related structure (Ming Lei) [1551939] - [block] kabi: reserve space for integrity related structure (Ming Lei) [1551939] - [block] kabi: reserve space for CONFIG_BLK_DEV_ZONED (Ming Lei) [1551939] - [ata] ata: Disable AHCI ALPM feature for Ampere Computing eMAG SATA (David Milburn) [1663347] - [kvm] KVM: x86: Add CPUID support for new instruction WBNOINVD (Andrew Jones) [1659491] - [x86] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup (Andrew Jones) [1659491] - [virt] kvm: Change offset in kvm_write_guest_offset_cached to unsigned (Andrew Jones) [1659491] - [virt] kvm: Disallow wraparound in kvm_gfn_to_hva_cache_init (Andrew Jones) [1659491] - [kvm] KVM: x86: svm: report MSR_IA32_MCG_EXT_CTL as unsupported (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: Add ARM_EXCEPTION_IS_TRAP macro (Andrew Jones) [1659491] - [arm64] arm64: KVM: Avoid setting the upper 32 bits of VTCR_EL2 to 1 (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix unintended stage 2 PMD mappings (Andrew Jones) [1659491] - [virt] arm/arm64: KVM: vgic: Force VM halt when changing the active state of GICv3 PPIs/SGIs (Andrew Jones) [1659491] - [arm64] KVM: arm/arm64: Fixup the kvm_exit tracepoint (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Consider priority and active state for pending irq (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq() (Andrew Jones) [1659491] - [kvm] KVM: X86: Fix NULL deref in vcpu_scan_ioapic (Andrew Jones) [1659491] - [kvm] KVM: Fix UAF in nested posted interrupt processing (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring state (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Fix VMID alloc race by reverting to lock-less (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Free the VMREAD/VMWRITE bitmaps if alloc_kvm_area() fails (Andrew Jones) [1659491] - [kvm] arm64: KVM: Install stage-2 translation before enabling traps (Andrew Jones) [1659491] - [kvm] arm64: KVM: Make VHE Stage-2 TLB invalidation operations non-interruptible (Andrew Jones) [1659491] - [arm64] arm64: entry: Remove confusing comment (Andrew Jones) [1659491] - [kvm] arm64: entry: Place an SB sequence following an ERET instruction (Andrew Jones) [1659491] - [arm64] arm64: Add support for SB barrier and patch in over DSB; ISB sequences (Andrew Jones) [1659491] - [kvm] kvm: nVMX: Set VM instruction error for VMPTRLD of unbacked page (Andrew Jones) [1659491] - [kvm] kvm: svm: Ensure an IBPB on all affected CPUs when freeing a vmcb (Andrew Jones) [1659491] - [kvm] kvm: mmu: Fix race in emulated page table writes (Andrew Jones) [1659491] - [kvm] KVM: nVMX/nSVM: Fix bug which sets vcpu->arch.tsc_offset to L1 tsc_offset (Andrew Jones) [1659491] - [kvm] KVM: VMX: Update shared MSRs to be saved/restored on MSR_EFER.LMA changes (Andrew Jones) [1659491] - [kvm] KVM: x86: Fix kernel info-leak in KVM_HC_CLOCK_PAIRING hypercall (Andrew Jones) [1659491] - [kvm] svm: Add mutex_lock to protect apic_access_page_done on AMD systems (Andrew Jones) [1659491] - [kvm] KVM/nVMX: Do not validate that posted_intr_desc_addr is page aligned (Andrew Jones) [1659491] - [kvm] KVM: arm64: Safety check PSTATE when entering guest and handle IL (Andrew Jones) [1659491] - [virt] KVM: arm64: Fix caching of host MDCR_EL2 value (Andrew Jones) [1659491] - [kvm] x86/kvm/nVMX: allow bare VMXON state migration (Andrew Jones) [1659491] - [kvm] x86/kvm/lapic: preserve gfn_to_hva_cache len on cache reinit (Andrew Jones) [1659491] - [kvm] KVM: hyperv: define VP assist page helpers (Andrew Jones) [1659491] - [kvm] KVM: nVMX: move check_vmentry_postreqs() call to nested_vmx_enter_non_root_mode() (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Always reflect #NM VM-exits to L1 (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: consistently use 'hv_vcpu' for 'struct kvm_vcpu_hv' variables (Andrew Jones) [1659491] - [kvm] KVM: x86: hyperv: enforce vp_index < KVM_MAX_VCPUS (Andrew Jones) [1659491] - [kvm] KVM: nVMX: restore host state in nested_vmx_vmexit for VMFail (Andrew Jones) [1659491] - [kvm] KVM: nVMX: Clear reserved bits of #DB exit qualification (Andrew Jones) [1659491] - [virt] KVM: arm/arm64: Ensure only THP is candidate for adjustment (Andrew Jones) [1659491] - [kvm] x86: kvm: avoid unused variable warning (Andrew Jones) [1659491] - [kvm] powerpc64/ftrace: Include ftrace.h needed for enable/disable calls (Andrew Jones) [1659491] - [kvm] x86/kvm/vmx: Remove duplicate l1d flush definitions (Andrew Jones) [1659491] - [tools] perf kvm: Fix subcommands on s390 (Andrew Jones) [1659491] - [arm64] arm64: add PSR_AA32_* definitions (Andrew Jones) [1659491] - [pci] PCI: hotplug: Document TODOs (Myron Stowe) [1664454] - [pci] PCI: hotplug: Embed hotplug_slot (Myron Stowe) [1664454] - [pci] PCI: hotplug: Drop hotplug_slot_info (Myron Stowe) [1664454] - [pci] PCI: hotplug: Constify hotplug_slot_ops (Myron Stowe) [1664454] - [pci] PCI: pciehp: Reshuffle controller struct for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Rename controller struct members for clarity (Myron Stowe) [1664454] - [pci] PCI: pciehp: Unify controller and slot structs (Myron Stowe) [1664454] - [pci] PCI: pciehp: Tolerate Presence Detect hardwired to zero (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop hotplug_slot_ops wrappers (Myron Stowe) [1664454] - [pci] PCI: pciehp: Drop unnecessary includes (Myron Stowe) [1664454] - [pci] PCI: pciehp: Differentiate between surprise and safe removal (Myron Stowe) [1664454] - [pci] PCI: Simplify disconnected marking (Myron Stowe) [1664454] - [tools] perf vendor events arm64: Revise core JSON events for eMAG (Jiri Olsa) [1663353] - [tools] perf vendor events arm64: Enable JSON events for eMAG (Jiri Olsa) [1663353] - [perf] drivers/perf: xgene: Add CPU hotplug support (Jiri Olsa) [1663349] - [scsi] mpt3sas: mark Aero controllers as tech preview (Tomas Henzl) [1663281] - [powerpc] KVM: PPC: Book3S HV: Keep rc bits in shadow pgtable in sync with host (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Introduce kvmhv_update_nest_rmap_rc_list() (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Apply combination of host and l1 pte rc for nested guest (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Align gfn to L1 page size when inserting nest-rmap entry (Suraj Jitindar Singh) [1662029] - [powerpc] KVM: PPC: Book3S HV: Hold kvm->mmu_lock across updating nested pte rc bits (Suraj Jitindar Singh) [1662029] - [tools] perf python: Do not force closing original perf descriptor in evlist.get_pollfd (Jiri Olsa) [1659445] - [mm] mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings (Andrea Arcangeli) [1613993] - [rpmspec] spec: Add libperf-jvmti.so into perf debuginfo rpm (Jiri Olsa) [1653570] - [scsi] scsi: hisi_sas: Fix spin lock management in slot_index_alloc_quirk_v2_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Update v3 hw AIP_LIMIT and CFG_AGING_TIME register values (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Use block layer tag instead for IPTT (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: unmask interrupts ent72 and ent74 (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Free slot later in slot_complete_vx_hw() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Fix the race between IO completion and timeout for SMP/internal IO (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Move evaluation of hisi_hba in hisi_sas_task_prep() (Xiaojun Tan) [1642819] - [scsi] scsi: hisi_sas: Feed back linkrate(max/min) when re-attached (Xiaojun Tan) [1642819] - [hwtracing] intel_th: pci: Add Ice Lake PCH support (Jiri Olsa) [1485529]- [kernel] userns: also map extents in the reverse map to kernel IDs (Chris von Recklinghausen) [1652679] {CVE-2018-18955} - [net] ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create() error (Stefano Brivio) [1662789] - [net] ipv6: frags: Fix bogus skb->sk in reassembled packets (Herbert Xu) [1645839] - [net] redhat: blacklist auto-loadable net modules in modules-extra (Marcelo Leitner) [1642795] - [net] redhat: move sctp modules to kernel-modules-extra (Marcelo Leitner) [1642795] - [net] add reserved fields to neighbour (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_stats* (Paolo Abeni) [1655084] - [net] reserve bits in netdev_features_t for future features (Paolo Abeni) [1655084] - [net] add reserved fields to sk_buff (Paolo Abeni) [1655084] - [net] add reserved fields to ipv6_devconf (Paolo Abeni) [1655084] - [net] add reserved fields to fib_rule (Paolo Abeni) [1655084] - [net] add reserved fields to sock (Paolo Abeni) [1655084] - [net] add reserved fields to genl_family (Paolo Abeni) [1655084] - [net] add reserved fields to proto_ops (Paolo Abeni) [1655084] - [net] add reserved fields to proto (Paolo Abeni) [1655084] - [net] add reserved fields to genl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_ops (Paolo Abeni) [1655084] - [net] add reserved fields to dst_entry (Paolo Abeni) [1655084] - [net] add reserved fields to lwtunnel_state (Paolo Abeni) [1655084] - [net] add reserved fields to packet_type (Paolo Abeni) [1655084] - [net] add reserved fields to napi_struct (Paolo Abeni) [1655084] - [net] add reserved fields to net_device (Paolo Abeni) [1655084] - [net] exclude wireless_dev from KABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to dcbnl_rtnl_ops (Paolo Abeni) [1655084] - [net] add reserved fields to xfrm_* (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_obj (Paolo Abeni) [1655084] - [net] add reserved fields to switchdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to l3mdev_ops (Paolo Abeni) [1655084] - [net] exclude ndisc_ops from kABI protection (Paolo Abeni) [1655084] - [net] add reserved fields to xfrmdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to tlsdev_ops (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_rx_queue (Paolo Abeni) [1655084] - [net] add reserved fields to netdev_queue (Paolo Abeni) [1655084] - [net] add reserved fields to rtnl_link_ops (Paolo Abeni) [1655084] - [net] add reserved fields to ethtool_ops (Paolo Abeni) [1655084] - [net] add reserved fields to header_ops (Paolo Abeni) [1655084] - [net] add reserved fields to net_device_ops (Paolo Abeni) [1655084] - [net] add reserved fields to flowi* structs (Paolo Abeni) [1655084] - [arm64] KVM: arm64: Clarify explanation of STAGE2_PGTABLE_LEVELS (Christoph von Recklinghausen) [1643586 1643522] - [arm64] KVM: arm/arm64: Rename kvm_arm_config_vm to kvm_arm_setup_stage2 (Christoph von Recklinghausen) [1643586 1643522] - [virt] KVM: arm64: Drop __cpu_init_stage2 on the VHE path (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Allow tuning the physical address size for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Limit the minimum number of page table levels (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm64: Set a limit on the IPA size (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add 52bit support for PAR to HPFAR conversoin (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Switch to per VM IPA limit (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Configure VTCR_EL2.SL0 per VM (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Dynamic configuration of VTTBR mask (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Make stage2 page table layout dynamic (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Prepare for dynamic stage2 page table layout (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm/arm64: Prepare for VM specific stage2 translations (Christoph von Recklinghausen) [1643586 1643522] - [arm64] kvm: arm64: Configure VTCR_EL2 per VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Allow arch specific configurations for VM (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Clean up VTCR_EL2 initialisation (Christoph von Recklinghausen) [1643586 1643522] - [arm64] arm64: Add a helper for PARange to physical shift conversion (Christoph von Recklinghausen) [1643586 1643522] - [kvm] kvm: arm64: Add helper for loading the stage2 setting for a VM (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Remove spurious WARN_ON (Christoph von Recklinghausen) [1643586 1643522] - [virt] kvm: arm/arm64: Fix stage2_flush_memslot for 4 level page table (Christoph von Recklinghausen) [1643586 1643522] - [hv] hv_balloon: avoid touching uninitialized struct page during tail onlining (Vitaly Kuznetsov) [1662277] - [x86] Mark AMD EPYC guests as supported (David Arcari) [1663356] - [netdrv] be2net: Disable queue dump in be_tx_timeout handler (Petr Oros) [1646838] - [vhost] vhost: Fix Spectre V1 vulnerability (Jason Wang) [1663469] - [mm] mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT (Andrea Arcangeli) [1575028] - [tools] cpupower: Fix AMD Family 0x17 msr_pstate size (Prarit Bhargava) [1659883] - [tools] cpupower: Fix coredump on VMWare (Prarit Bhargava) [1659883] - [scsi] scsi: csiostor: remove flush_scheduled_work() (Arjun Vynipadath) [1663973] - [powerpc] KVM: PPC: Book3S HV: Fix race between kvm_unmap_hva_range and MMU mode switch (David Gibson) [1663225] - [fs] userfaultfd: check VM_MAYWRITE was set after verifying the uffd is registered (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not set (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: add i_size checks (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem/hugetlbfs: only allow to register VM_MAYWRITE vmas (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [mm] userfaultfd: allow get_mempolicy(MPOL_F_NODE|MPOL_F_ADDR) to trigger userfaults (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: clear flag if remap event not enabled (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] userfaultfd: disable irqs when taking the waitqueue lock (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] fs/userfaultfd.c: remove redundant pointer uwq (Andrea Arcangeli) [1657615] {CVE-2018-18397} - [fs] NFS: nfs_compare_mount_options always compare auth flavors. (Steve Dickson) [1661619] - [infiniband] RDMA/hns: Bugfix for RoCE loopback test (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Update posting & querying mailbox (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Fix the bug while use multi-hop of pbl (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Init qp context when modify qp from reset to init (Xiaojun Tan) [1663359] - [infiniband] RDMA/hns: Bugfix pbl configuration for rereg mr (Xiaojun Tan) [1663359] - [security] selinux: add support for RTM_NEWCHAIN, RTM_DELCHAIN, and RTM_GETCHAIN (Ondrej Mosnacek) [1660564] - [scsi] scsi: megaraid_sas: driver version update (Tomas Henzl) [1656261] - [scsi] scsi: megaraid_sas: Use 63-bit DMA addressing (Tomas Henzl) [1656261] - [x86] x86/kvm: mark as TechPreview when running as a nested hypervisor (Vitaly Kuznetsov) [1519039] - [rpmspec] kernel.spec: Fix kernel-tools files section logic (Prarit Bhargava) [1661247] - [crypto] crypto: ccp - Make function sev_get_firmware() static (Gary Hook) [1632894] - [crypto] crypto: ccp - Allow SEV firmware to be chosen based on Family and Model (Gary Hook) [1632894] - [crypto] crypto: ccp - Fix static checker warning (Gary Hook) [1632894] - [crypto] crypto: ccp - add timeout support in the SEV command (Gary Hook) [1632894] - [nvdimm] nvdimm: Use namespace index data to reduce number of label reads needed (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Split label init out from the logic for getting config data (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Remove empty if statement (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Clarify comment in sizeof_namespace_index (Jeff Moyer) [1634345] - [nvdimm] nvdimm: Sanity check labeloff (Jeff Moyer) [1634345] - [nvdimm] libnvdimm, dimm: Maximize label transfer size (Jeff Moyer) [1634345] - [mm] mm/page-writeback.c: fix range_cyclic writeback vs writepages deadlock (Brian Foster) [1659528] - [input] Input: elantech - disable elan-i2c for P52 and P72 (Benjamin Tissoires) [1658602] - [fs] cachefiles: avoid deprecated get_seconds() (David Howells) [1655613] - [fs] fscache, cachefiles: remove redundant variable 'cache' (David Howells) [1655613] - [fs] cachefiles: Explicitly cast enumerated type in put_object (David Howells) [1655613] - [fs] fscache: fix race between enablement and dropping of object (David Howells) [1655613] - [fs] cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is active (David Howells) [1655613] - [fs] fscache: Fix race in fscache_op_complete() due to split atomic_sub & read (David Howells) [1655613] - [fs] cachefiles: Fix an assertion failure when trying to update a failed object (David Howells) [1655613] - [fs] fscache: Fix out of bound read in long cookie keys (David Howells) [1655613] - [fs] fscache: Fix incomplete initialisation of inline key space (David Howells) [1655613] - [fs] cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) (David Howells) [1655613] - [kernel] ebpf: record usage of eBPF (Jiri Benc) [1654279] - [kernel] add rh_features to /proc (Jiri Benc) [1654279] - [kernel] add support for rh_features (Jiri Benc) [1654279] - [fs] fs/lock: show locks taken by processes from another pidns (Miklos Szeredi) [1616125] - [iommu] iommu/arm-smmu: Support non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm-v7s: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu: Add "iommu.strict" command line option (Xiaojun Tan) [1643114] - [iommu] iommu/dma: Add support for non-strict mode (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu: Ensure that page-table updates are visible before TLBI (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Implement flush_iotlb_all hook (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Avoid back-to-back CMD_SYNC operations (Xiaojun Tan) [1643114] - [iommu] iommu/arm-smmu-v3: Fix unexpected CMD_SYNC timeout (Xiaojun Tan) [1643114] - [iommu] iommu/io-pgtable-arm: Fix race handling in split_blk_unmap() (Xiaojun Tan) [1643114] - [infiniband] RDMA/hns: Update some attributes of the RoCE device (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Limit the size of extend sge of sq (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for CM test (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Submit bad wr when post send wr exception (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Bugfix for reserved qp number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Refactor the codes for setting transport opode (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Move all prints out of irq handle (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix an error code in hns_roce_v2_init_eq_table() (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix usage of bitmap allocation functions return values (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Support flush cqe for hip08 in kernel space (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Program the tclass and flow label into the hardware (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use macro instead of magic number (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Modify qp will return errno when qp type is illegal (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Assign the value for vlan field of qp context (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Only assgin the fields of the av if IB_QP_AV bit is set (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Enable modify_cq for uverbs. (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the data type of immediate data (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Use delay instead of usleep (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add illegal hop_num judgement (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add 50GE type of hnae3 device match (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Do not overwrite the error code during error unwind in hns_roce_init (Xiaojun Tan) [1639578] - [infiniband] hns: Remove a set-but-not-used variable (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_mac (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Update the implementation of set_gid (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TPQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Add TSQ link table support (Xiaojun Tan) [1639578] - [infiniband] RDMA/hns: Fix endian conversions and annotations (Xiaojun Tan) [1639578] - [scsi] scsi: hisi_sas: Add SATA FIS check for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: add memory barrier in task delivery function (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Tidy hisi_sas_task_prep() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Implement handlers of PCIe FLR for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: relocate some common code for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy host controller reset function a bit (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the failure of recovering PHY from STP link timeout (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: tidy channel interrupt handler for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Drop hisi_sas_slot_abort() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Update a couple of register settings for v3 hw (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add missing PHY spinlock init (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Pre-allocate slot DMA buffers (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Release all remaining resources in clear nexus ha (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Add a flag to filter PHY events during reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Adjust task reject period during host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Fix the conflict between dev gone and host reset (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Only process broadcast change in phy_bcast_v3_hw() (Zhou Wang) [1639541] - [scsi] scsi: hisi_sas: Use dmam_alloc_coherent() (Zhou Wang) [1639541] - [netdrv] xen/netfront: fix waiting for xenbus state change (Petr Oros) [1638456]- [x86] expand cpu feature/bug bits (David Arcari) [1662434] - [x86] add kabi support for cpuinfo_x86 (David Arcari) [1662434] - [init] Display a message about certified hardware (Steve Best) [1660523] - [scsi] scsi: t10-pi: Return correct ref tag when queue has no integrity profile (Ming Lei) [1660719] - [scsi] scsi: storvsc: Fix a race in sub-channel creation that can cause panic (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: set callbacks on open (Mohammed Gamal) [1650149] - [hv] vmbus: fix subchannel removal (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: defer opening vmbus until first use (Mohammed Gamal) [1650149] - [hv] vmbus: split ring buffer allocation from open (Mohammed Gamal) [1650149] - [hv] vmbus: pass channel to hv_process_channel_removal (Mohammed Gamal) [1650149] - [hv] Drivers: hv: vmbus: Reset the channel callback in vmbus_onoffer_rescind() (Mohammed Gamal) [1650149] - [uio] hv_uio_generic: map ringbuffer phys addr (Mohammed Gamal) [1650149] - [uio] uio: introduce UIO_MEM_IOVA (Mohammed Gamal) [1650149] - [hv] vmbus: add driver_override support (Mohammed Gamal) [1650149] - [hv] vmbus: keep pointer to ring buffer page (Mohammed Gamal) [1650149] - [uio] uio_hv_generic: increase size of receive and send buffers (Mohammed Gamal) [1650149] - [uio] uio: add SPDX license tags (Mohammed Gamal) [1650149] - [fs] gfs2: take jdata unstuff into account in do_grow (Robert S Peterson) [1660519] - [drm] drm/dp_mst: Check if primary mstb is null (Lyude Paul) [1658711] - [tools] perf tests: Use shebangs in the shell scripts (Michael Petlan) [1613523]- [mm] mm: put_and_wait_on_page_locked() while page is migrated (Baoquan He) [1649214] - [netdrv] i40e: define proper net_device::neigh_priv_len (Stefan Assmann) [1658743] - [netdrv] i40e: fix VLAN.TCI == 0 RX HW offload (Stefan Assmann) [1658743] - [netdrv] i40e: fix mac filter delete when setting mac address (Stefan Assmann) [1658743] - [netdrv] i40e: prevent overlapping tx_timeout recover (Stefan Assmann) [1658743] - [netdrv] i40e: Use correct shift for VLAN priority (Stefan Assmann) [1658743] - [netdrv] i40e: always set ks->base.speed in i40e_get_settings_link_up (Stefan Assmann) [1658743] - [netdrv] i40e: don't restart nway if autoneg not supported (Stefan Assmann) [1658743] - [netdrv] i40e: enable NETIF_F_NTUPLE and NETIF_F_HW_TC at driver load (Stefan Assmann) [1658743] - [netdrv] i40e: restore NETIF_F_GSO_IPXIP[46] to netdev features (Stefan Assmann) [1658743] - [acpi] ACPI/APEI: Clear GHES block_status before panic() (David Arcari) [1662442] - [misc] VMCI: Resource wildcard match fixed (Vitaly Kuznetsov) [1652868] - [mm] mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init (Waiman Long) [1655964] - [block] block/bio: Do not zero user pages (Ming Lei) [1662502] - [vhost] disable zerocopy by default (Jason Wang) [1582756] - [block] kyber: use sbitmap add_wait_queue/list_del wait helpers (Ming Lei) [1661426] - [lib] sbitmap: add helpers for add/del wait queue handling (Ming Lei) [1661426] - [net] Revert "sunrpc: Ensure we always close the socket after a connection shuts down" (Dave Wysochanski) [1657449] - [vhost] vhost/vsock: fix reset orphans race with close timeout (Stefan Hajnoczi) [1660445] - [misc] genwqe: Fix size check (Steve Best) [1660126] - [fs] aio: fix spectre gadget in lookup_ioctx (Jeff Moyer) [1660963] - [block] block: save irq state in blkg_lookup_create() (Ming Lei) [1660299] - [md] dm: don't reuse bio for flushes (Ming Lei) [1660401] - [wireless] mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT (Stanislaw Gruszka) [1637113] - [wireless] nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds (Stanislaw Gruszka) [1637113] - [block] blk-mq: enable IO poll if .nr_queues of type poll > 0 (Ming Lei) [1660826] - [powerpc] powerpc/rtas: Fix a potential race between CPU-Offline & Migration (Desnes Augusto Nunes do Rosario) [1639266] - [x86] kvm: x86: Add AMD's EX_CFG to the list of ignored MSRs (Eduardo Habkost) [1625111] - [scsi] scsi_sysfs: make unpriv_sgio queue attribute accessible for non-block devices (Paolo Bonzini) [1584504] - [block] scsi_ioctl: introduce unpriv_sgio queue flag (Paolo Bonzini) [1584504] - [block] scsi_ioctl: pass request_queue to blk_verify_command (Paolo Bonzini) [1584504] - [fs] ext4: missing !bh check in ext4_xattr_inode_write() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in __ext4_read_dirblock() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_move_to_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: release bs.bh before re-using in ext4_xattr_block_find() (Lukas Czerner) [1659481] - [fs] ext4: fix buffer leak in ext4_xattr_get_block() on error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of s_journal_flag_rwsem in error path (Lukas Czerner) [1659481] - [fs] ext4: fix possible leak of sbi->s_group_desc_leak in error path (Lukas Czerner) [1659481] - [fs] ext4: avoid possible double brelse() in add_new_gdb() on error path (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak in ext4_orphan_add() after prior errors (Lukas Czerner) [1659481] - [fs] ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty() (Lukas Czerner) [1659481] - [fs] ext4: fix possible inode leak in the retry loop of ext4_resize_fs() (Lukas Czerner) [1659481] - [fs] ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while resizing (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() update_backups()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() add_new_gdb_meta_bg()'s error path (Lukas Czerner) [1659481] - [fs] ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path (Lukas Czerner) [1659481] - [fs] ext4: avoid potential extra brelse in setup_new_flex_group_blocks() (Lukas Czerner) [1659481] - [scsi] scsi: lpfc: Enable Management features for IF_TYPE=6 (Dick Kennedy) [1658755] - [scsi] scsi: mpt3sas: Update driver version to 27.101.00.00 (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Replace readl with ioc->base_readl (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Add separate function for aero doorbell reads (Tomas Henzl) [1659035] - [scsi] scsi: mpt3sas: Introduce flag for aero based controllers (Tomas Henzl) [1659035] - [md] dm: do not allow readahead to limit IO size (Mike Snitzer) [1658757] - [md] dm raid: fix false -EBUSY when handling check/repair message (Mike Snitzer) [1658757] - [block] blk-mq: change blk_mq_queue_busy() to blk_mq_queue_inflight() (Mike Snitzer) [1658757] - [md] dm rq: cleanup leftover code from recently removed q->mq_ops branching (Mike Snitzer) [1658757] - [md] dm verity: log the hash algorithm implementation (Mike Snitzer) [1658757] - [md] dm crypt: log the encryption algorithm implementation (Mike Snitzer) [1658757] - [md] dm integrity: fix spelling mistake in workqueue name (Mike Snitzer) [1658757] - [md] dm flakey: Properly corrupt multi-page bios. (Mike Snitzer) [1658757] - [md] dm: Check for device sector overflow if CONFIG_LBDAF is not set (Mike Snitzer) [1658757] - [md] dm crypt: use u64 instead of sector_t to store iv_offset (Mike Snitzer) [1658757] - [md] dm kcopyd: Fix bug causing workqueue stalls (Mike Snitzer) [1658757] - [md] dm snapshot: Fix excessive memory usage and workqueue stalls (Mike Snitzer) [1658757] - [md] dm bufio: update comment in dm-bufio.c (Mike Snitzer) [1658757] - [md] dm writecache: fix typo in error msg for creating writecache_flush_thread (Mike Snitzer) [1658757] - [md] dm: remove indirect calls from __send_changing_extent_only() (Mike Snitzer) [1658757] - [md] dm mpath: only flush workqueue when needed (Mike Snitzer) [1658757] - [md] dm: avoid indirect call in __dm_make_request (Mike Snitzer) [1658757] - [md] dm thin: bump target version (Mike Snitzer) [1658757] - [md] dm thin: send event about thin-pool state change _after_ making it (Mike Snitzer) [1658757] - [md] dm cache metadata: verify cache has blocks in blocks_are_clean_separate_dirty() (Mike Snitzer) [1658757] - [md] dm writecache: remove disabled code in memory_entry() (Mike Snitzer) [1658757] - [md] dm raid: avoid bitmap with raid4/5/6 journal device (Mike Snitzer) [1658757] - [md] dm crypt: make workqueue names device-specific (Mike Snitzer) [1658757] - [md] dm: add dm_table_device_name() (Mike Snitzer) [1658757] - [md] dm ioctl: harden copy_params()'s copy_from_user() from malicious users (Mike Snitzer) [1658757] - [md] dm: remove unnecessary unlikely() around WARN_ON_ONCE() (Mike Snitzer) [1658757] - [md] dm thin: use refcount_t for thin_c reference counting (Mike Snitzer) [1658757] - [netdrv] nfp: provide a better warning when ring allocation fails (Pablo Cascon) [1645456] - [netdrv] nfp: use kvcalloc() to allocate SW buffer descriptor arrays (Pablo Cascon) [1645456] - [scsi] scsi: lpfc: rport port swap discovery issue. (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Fix discovery failures during port failovers with lots of vports (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: refactor mailbox structure context fields (Dick Kennedy) [1656635] - [scsi] scsi: lpfc: Correct loss of fc4 type on remote port address change (Dick Kennedy) [1656635] - [hid] HID: multitouch: Add pointstick support for Cirque Touchpad (Perry Yuan) [1656673] - [powerpc] KVM: PPC: Book3S HV: Fix handling for interrupted H_ENTER_NESTED (Suraj Jitindar Singh) [1649980] - [powerpc] powerpc: Select CONFIG_SWIOTLB (Gustavo Duarte) [1648466] - [fs] nfs: Fix a missed page unlock after pg_doio() (Benjamin Coddington) [1651287] - [arm64] arm64: fix possible spectre-v1 write in ptrace_hbp_set_event() (Mark Salter) [1637585] - [fs] fsnotify: Fix busy inodes during unmount (Lukas Czerner) [1650462] - [tools] perf vendor events arm64: Update ThunderX2 implementation defined pmu core events (Robert Richter) [1501638] - [tools] perf tools: Fix undefined symbol scnprintf in libperf-jvmti.so (Jiri Olsa) [1579484]- [block] blk-mq: export hctx->type in debugfs instead of sysfs (Ming Lei) [1660040] - [block] blk-mq: fix dispatch from sw queue (Ming Lei) [1660040] - [block] blk-mq: skip zero-queue maps in blk_mq_map_swqueue (Ming Lei) [1660040] - [nvme] nvme-pci: don't share queue maps (Ming Lei) [1660040] - [block] blk-mq: only dispatch to non-defauly queue maps if they have queues (Ming Lei) [1660040] - [x86] KVM: LAPIC: Fix pv ipis use-before-initialization (Paul Lai) [1657702] - [fs] autofs: fix directory and symlink access (Ian Kent) [1611967] - [infiniband] IB/iser: Fix possible NULL deref at iser_inv_desc() (Don Dutile) [1657574] - [infiniband] RDMA/core: Fix unwinding flow in case of error to register device (Don Dutile) [1657574] - [infiniband] IB/rxe: fix for duplicate request processing and ack psns (Don Dutile) [1657574] - [infiniband] IB/ipoib: Clear IPCB before icmp_send (Don Dutile) [1657574] - [infiniband] RDMA/core: Do not expose unsupported counters (Don Dutile) [1657574] - [infiniband] IB/ucm: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/ucma: Fix Spectre v1 vulnerability (Don Dutile) [1657574] - [infiniband] RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR (Don Dutile) [1657574] - [infiniband] RDMA/cma: Do not ignore net namespace for unbound cm_id (Don Dutile) [1657574] - [net] xprtrdma: Reset credit grant properly after a disconnect (Don Dutile) [1657574] - [input] Input: hyper-v - fix wakeup from suspend-to-idle (Vitaly Kuznetsov) [1588888] - [kernel] kernel: hung_task.c: disable on suspend (Vitaly Kuznetsov) [1588888] - [kernel] redhat: add a comment with warning about RH_KABI_EXCLUDE usage (Jiri Benc) [1656933] - [rpmspec] Sign the aarch64 kernel (Jeremy Linton) [1659158]- [netdrv] nfp: flower: add geneve option match offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: add geneve option push action offload (Pablo Cascon) [1655604] - [netdrv] nfp: flower: offload tos and tunnel flags for ipv4 udp tunnels (Pablo Cascon) [1655604] - [netdrv] nfp: flower: set ip tunnel ttl from encap action (Pablo Cascon) [1655604] - [netdrv] nfp: flower: extract ipv4 udp tunnel ttl from route (Pablo Cascon) [1655604] - [net] sctp: hold transport before accessing its asoc in sctp_transport_get_next (Marcelo Leitner) [1656271] - [net] sctp: fix the data size calculation in sctp_data_size (Marcelo Leitner) [1656271] - [net] sctp: fix race on sctp_id2asoc (Marcelo Leitner) [1656271] - [net] rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices (Hangbin Liu) [1657120] - [netdrv] mlx5e: fix csum adjustments caused by RXFCS (Hangbin Liu) [1657120] - [net] drop skb on failure in ip_check_defrag() (Hangbin Liu) [1657120] - [net] rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags (Hangbin Liu) [1657120] - [net] socket: fix a missing-check bug (Hangbin Liu) [1657120] - [net] rtnetlink: Disallow FDB configuration for non-Ethernet device (Hangbin Liu) [1657120] - [net] rtnetlink: Fail dump if target netnsid is invalid (Hangbin Liu) [1657120] - [net] rtnetlink: fix rtnl_fdb_dump() for ndmsg header (Hangbin Liu) [1657120] - [net] rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096 (Hangbin Liu) [1657120] - [net] socket: fix struct ifreq size in compat ioctl (Hangbin Liu) [1657120] - [net] fix pskb_trim_rcsum_slow() with odd trim offset (Hangbin Liu) [1657120] - [net] gso_segment: Reset skb->mac_len after modifying network header (Hangbin Liu) [1657120] - [net] Use __kernel_clockid_t in uapi net_stamp.h (Davide Caratti) [1638022] - [net] tun: Consistently configure generic netdev params via rtnetlink (Matteo Croce) [1657910] - [net] tun: napi flags belong to tfile (Matteo Croce) [1657910] - [net] tun: initialize napi_mutex unconditionally (Matteo Croce) [1657910] - [net] tun: remove unused parameters (Matteo Croce) [1657910] - [net] team: Forbid enslaving team device to itself (Matteo Croce) [1658725] - [net] sched: Remove TCA_OPTIONS from policy (Davide Caratti) [1658516] - [net] sched: cls_api: add missing validation of netlink attributes (Davide Caratti) [1658516] - [net] sched: gred: pass the right attribute to gred_change_table_def() (Davide Caratti) [1658516] - [net] sched: cls_u32: fix hnode refcounting (Davide Caratti) [1658516] - [net] sched: Add policy validation for tc attributes (Davide Caratti) [1658516] - [net] bpf: use __GFP_COMP while allocating page (Andrea Claudi) [1658231] - [net] xsk: do not call synchronize_net() under RCU read lock (Andrea Claudi) [1658231] - [net] bpf: fix partial copy of map_ptr when dst is scalar (Andrea Claudi) [1658231] - [net] bpf: Fix bpf_msg_pull_data() (Andrea Claudi) [1658231] - [net] bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix sg shift repair start offset in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] bpf: fix several offset tests in bpf_msg_pull_data (Andrea Claudi) [1658231] - [net] vlan: add support for tunnel offload (Andrea Claudi) [1656804] - [net] 8021q: move vlan offload registrations into vlan_core (Hangbin Liu) [1657658] - [net] ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called (Stefano Brivio) [1658010] - [net] ipv6: Allow onlink routes to have a device mismatch if it is the default route (Stefano Brivio) [1658010] - [net] ipv6: Fix index counter for unicast addresses in in6_dump_addrs (Stefano Brivio) [1658010] - [net] ipv6: mcast: fix a use-after-free in inet6_mc_check (Stefano Brivio) [1658010] - [net] ipv6: rate-limit probes for neighbourless routes (Stefano Brivio) [1658010] - [net] ipv6: stop leaking percpu memory in fib6 info (Stefano Brivio) [1658010] - [net] ipv6: Remove extra call to ip6_convert_metrics for multipath case (Stefano Brivio) [1658010] - [net] ipv6: Display all addresses in output of /proc/net/if_inet6 (Stefano Brivio) [1658010] - [net] ipv6: do not copy dst flags on rt init (Stefano Brivio) [1658010] - [net] ipv6: Only update MTU metric if it set (Stefano Brivio) [1658010] - [net] ipv6: don't get lwtstate twice in ip6_rt_copy_init() (Stefano Brivio) [1658010] - [net] ipv6: Put lwtstate when destroying fib6_info (Stefano Brivio) [1658010] - [net] ip6_tunnel: Fix encapsulation layout (Stefano Brivio) [1658008] - [net] vxlan: fill ttl inherit info (Stefano Brivio) [1658008] - [net] ip_tunnel: be careful when accessing the inner header (Stefano Brivio) [1658008] - [net] vti6: remove !skb->ignore_df check from vti6_xmit() (Stefano Brivio) [1658008] - [net] ip6_vti: fix a null pointer deference when destroy vti6 tunnel (Stefano Brivio) [1658008] - [net] ip6_vti: fix creating fallback tunnel device for vti6 (Stefano Brivio) [1658008] - [net] ip_vti: fix a null pointer deferrence when create vti fallback tunnel (Stefano Brivio) [1658008] - [net] l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache (Stefano Brivio) [1658008] - [net] macsec: let the administrator set UP state even if lowerdev is down (Sabrina Dubroca) [1645540] - [net] macsec: update operstate when lower device changes (Sabrina Dubroca) [1645540] - [net] tcp: do not restart timewait timer on rst reception (Paolo Abeni) [1657988] - [net] tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY (Paolo Abeni) [1657988] - [net] tcp, ulp: add alias for all ulp modules (Paolo Abeni) [1657988] - [net] tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach (Paolo Abeni) [1657988] - [net] ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT state (Paolo Abeni) [1657988] - [net] neighbour: Avoid writing before skb->head in neigh_hh_output() (Stefano Brivio) [1643336] - [net] ipv6: Check available headroom in ip6_xmit() even without options (Stefano Brivio) [1643336] - [net] ipv6: fix possible use-after-free in ip6_xmit() (Stefano Brivio) [1643336] - [net] openvswitch: Fix push/pop ethernet validation (Hangbin Liu) [1657226] - [net] cgroup, netclassid: add a preemption point to write_classid (Hangbin Liu) [1657226] - [net] ethtool: fix a privilege escalation bug (Hangbin Liu) [1657226] - [net] llc: set SOCK_RCU_FREE in llc_sap_add_socket() (Hangbin Liu) [1657226] - [net] dcb: For wild-card lookups, use priority -1, not 0 (Hangbin Liu) [1657226] - [net] packet: fix packet drop as of virtio gso (Hangbin Liu) [1657226] - [net] netlabel: check for IPV4MASK in addrinfo_get (Hangbin Liu) [1657226] - [net] netfilter: seqadj: re-load tcp header pointer after possible head reallocation (Florian Westphal) [1654259] - [net] netfilter: nf_tables: avoid BUG_ON usage (Florian Westphal) [1654259] - [net] netfilter: nf_tables: deactivate expressions in rule replecement routine (Florian Westphal) [1654259] - [net] netfilter: nat: fix double register in masquerade modules (Florian Westphal) [1654259] - [net] netfilter: add missing error handling code for register functions (Florian Westphal) [1654259] - [net] netfilter: nf_tables: fix use-after-free when deleting compat expressions (Florian Westphal) [1654259] - [net] netfilter: xt_RATEEST: remove netns exit routine (Florian Westphal) [1654259] - [net] netfilter: nf_tables: don't use position attribute on rule replacement (Florian Westphal) [1654259] - [net] revert "netfilter: nft_numgen: add map lookups for numgen random operations" (Florian Westphal) [1654259] - [net] netfilter: xt_IDLETIMER: add sysfs filename checking routine (Florian Westphal) [1654259] - [net] netfilter: conntrack: fix calculation of next bucket number in early_drop (Florian Westphal) [1654259] - [net] netfilter: conntrack: get rid of double sizeof (Florian Westphal) [1654259] - [net] netfilter: nft_set_rbtree: add missing rb_erase() in GC routine (Florian Westphal) [1654259] - [net] netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for NF_REPEAT (Florian Westphal) [1654259] - [net] netfilter: nf_tables: release chain in flushing set (Florian Westphal) [1654259] - [net] netfilter: xt_checksum: ignore gso skbs (Florian Westphal) [1654259] - [net] netfilter: xt_cluster: add dependency on conntrack module (Florian Westphal) [1654259] - [net] netfilter: fix memory leaks on netlink_dump_start error (Florian Westphal) [1654259] - [net] netfilter: x_tables: do not fail xt_alloc_table_info too easilly (Florian Westphal) [1654259] - [net] ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest() (Florian Westphal) [1654259] - [net] netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses (Florian Westphal) [1654259] - [net] xfrm: policy: use hlist rcu variants on insert (Sabrina Dubroca) [1657272] - [net] xfrm: validate template mode (Sabrina Dubroca) [1657272] - [net] xfrm: Fix NULL pointer dereference when skb_dst_force clears the dst_entry. (Sabrina Dubroca) [1657272] - [net] xfrm: reset transport header back to network header after all input transforms ahave been applied (Sabrina Dubroca) [1657272] - [net] xfrm: reset crypto_done when iterating over multiple input xfrms (Sabrina Dubroca) [1657272] - [net] xfrm: Validate address prefix lengths in the xfrm selector. (Sabrina Dubroca) [1657272] - [net] tls: fix currently broken MSG_PEEK behavior (Sabrina Dubroca) [1657225] - [net] tls: zero the crypto information from tls_context before freeing (Sabrina Dubroca) [1657225] - [net] tls: clear key material from kernel memory when do_tls_setsockopt_conf fails (Sabrina Dubroca) [1657225] - [net] tls: don't copy the key out of tls12_crypto_info_aes_gcm_128 (Sabrina Dubroca) [1657225] - [net] tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC (Sabrina Dubroca) [1657225] - [net] tls: possible hang when do_tcp_sendpages hits sndbuf is full case (Sabrina Dubroca) [1657225] - [net] tls: Fix improper revert in zerocopy_from_iter (Sabrina Dubroca) [1657225] - [net] tls: Fix zerocopy_from_iter iov handling (Sabrina Dubroca) [1657225] - [net] netfilter: conntrack: reset tcp maxwin on re-register (Florian Westphal) [1647310] - [net] configs: Enable CONFIG_IP_SET_HASH_IPMAC as a module (Stefano Brivio) [1655301] - [net] udp: fix handling of CHECKSUM_COMPLETE packets (Paolo Abeni) [1655656] - [net] udp: Unbreak modules that rely on external __skb_recv_udp() availability (Paolo Abeni) [1655656] - [net] udp6: fix encap return code for resubmitting (Paolo Abeni) [1655656] - [net] team: no need to do team_notify_peers or team_mcast_rejoin when disabling port (Hangbin Liu) [1653197] - [net] sctp: not increase stream's incnt before sending addstrm_in request (Xin Long) [1651428] - [net] sctp: not allow to set asoc prsctp_enable by sockopt (Xin Long) [1647272] - [net] revert "sctp: remove sctp_transport_pmtu_check" (Xin Long) [1643330] - [net] fix XPS static_key accounting (Ivan Vecera) [1651781] - [net] restore call to netdev_queue_numa_node_write when resetting XPS (Ivan Vecera) [1651781] - [net] allow fallback function to pass netdev (Ivan Vecera) [1651781] - [net] allow ndo_select_queue to pass netdev (Ivan Vecera) [1651781] - [net] Add generic ndo_select_queue functions (Ivan Vecera) [1651781] - [net] Add support for subordinate traffic classes to netdev_pick_tx (Ivan Vecera) [1651781] - [net] ixgbe: Add code to populate and use macvlan TC to Tx queue map (Ivan Vecera) [1651781] - [net] Add support for subordinate device traffic classes (Ivan Vecera) [1651781] - [net] net-sysfs: Drop support for XPS and traffic_class on single queue device (Ivan Vecera) [1651781] - [net] Provide stub for __netif_set_xps_queue if there is no CONFIG_XPS (Ivan Vecera) [1651781] - [net] allow to call netif_reset_xps_queues() under cpus_read_lock (Ivan Vecera) [1651781] - [net] documentation: Add explanation for XPS using Rx-queue(s) map (Ivan Vecera) [1651781] - [net] net-sysfs: Add interface for Rx queue(s) map per Tx queue (Ivan Vecera) [1651781] - [net] Enable Tx queue selection based on Rx queues (Ivan Vecera) [1651781] - [net] Record receive queue number for a connection (Ivan Vecera) [1651781] - [net] sock: Change tx_queue_mapping in sock_common to unsigned short (Ivan Vecera) [1651781] - [net] Use static_key for XPS maps (Ivan Vecera) [1651781] - [net] Refactor XPS for CPUs and Rx queues (Ivan Vecera) [1651781] - [net] devlink: Add helper function for safely copy string param (Ivan Vecera) [1647914] - [net] devlink: Fix param cmode driverinit for string type (Ivan Vecera) [1647914] - [net] devlink: Fix param set handling for string type (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params-bnxt.txt (Ivan Vecera) [1647914] - [net] devlink: Add Documentation/networking/devlink-params.txt (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_min (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter msix_vec_per_pf_max (Ivan Vecera) [1647914] - [net] devlink: Add generic parameter ignore_ari (Ivan Vecera) [1647914] - [net] devlink: double free in devlink_resource_fill() (Ivan Vecera) [1647914] - [net] devlink: Add extack for eswitch operations (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters region_snapshot (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot read command (Ivan Vecera) [1647914] - [net] devlink: Add support for region snapshot delete command (Ivan Vecera) [1647914] - [net] devlink: Extend the support querying for region snapshot IDs (Ivan Vecera) [1647914] - [net] devlink: Add support for region get command (Ivan Vecera) [1647914] - [net] devlink: Add support for creating region snapshots (Ivan Vecera) [1647914] - [net] devlink: Add callback to query for snapshot id before snapshot create (Ivan Vecera) [1647914] - [net] devlink: Add support for creating and destroying regions (Ivan Vecera) [1647914] - [net] devlink: fix incorrect return statement (Ivan Vecera) [1647914] - [net] devlink: Add enable_sriov boolean generic parameter (Ivan Vecera) [1647914] - [net] devlink: Add generic parameters internal_err_reset and max_macs (Ivan Vecera) [1647914] - [net] devlink: Add devlink notifications support for params (Ivan Vecera) [1647914] - [net] devlink: Add support for get/set driverinit value (Ivan Vecera) [1647914] - [net] devlink: Add param set command (Ivan Vecera) [1647914] - [net] devlink: Add param get command (Ivan Vecera) [1647914] - [net] devlink: Add devlink_param register and unregister (Ivan Vecera) [1647914] - [net] ipvs: call ip_vs_dst_notifier earlier than ipv6_dev_notf (Xin Long) [1645064] - [net] ipv6: fix a dst leak when removing its exception (Xin Long) [1645064] - [net] netfilter: ipset: list:set: Decrease refcount synchronously on deletion and replace (Stefano Brivio) [1649089] - [net] bridge: remove ipv6 zero address check in mcast queries (Hangbin Liu) [1639666] - [net] bridge: do not add port to router list when receives query with source 0.0.0.0 (Hangbin Liu) [1639666] - [net] netfilter: ipv6: fix oops when defragmenting locally generated fragments (Florian Westphal) [1642341] - [net] xfrm6: call kfree_skb when skb is toobig (Sabrina Dubroca) [1628851] - [net] sched: act_police: fix memory leak in case of invalid control action (Ivan Vecera) [1638022] - [net] sched: act_police: add missing spinlock initialization (Ivan Vecera) [1638022] - [net] netfilter: xt_socket: check sk before checking for netns. (Ivan Vecera) [1638022] - [net] sched: act_police: fix race condition on state variables (Ivan Vecera) [1638022] - [net] sched: cls_flower: validate nested enc_opts_policy to avoid warning (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix memory leak when IDR allocation fails (Ivan Vecera) [1638022] - [net] configs: disable CAKE, ETF & SKBPRIO qdisc in config (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' for exceed traffic in police.json (Ivan Vecera) [1638022] - [net] tc-tests: test denial of 'goto chain' on 'random' traffic in gact.json (Ivan Vecera) [1638022] - [net] sched: act_police: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] sched: act_gact: disallow 'goto chain' on fallback control action (Ivan Vecera) [1638022] - [net] net_sched: fix a crash in tc_new_tfilter() (Ivan Vecera) [1638022] - [net] core: make function ___gnet_stats_copy_basic() static (Ivan Vecera) [1638022] - [net] net_sched: convert idrinfo->lock from spinlock to a mutex (Ivan Vecera) [1638022] - [net] loopback: clear skb->tstamp before netif_rx() (Ivan Vecera) [1638022] - [net] skbuff: preserve sock reference when scrubbing the skb. (Ivan Vecera) [1638022] - [net] netfilter: check if the socket netns is correct. (Ivan Vecera) [1638022] - [net] sched: make function qdisc_free_cb() static (Ivan Vecera) [1638022] - [net] sched: use reference counting for tcf blocks on rules update (Ivan Vecera) [1638022] - [net] sched: implement tcf_block_refcnt_{get|put}() (Ivan Vecera) [1638022] - [net] sched: protect block idr with spinlock (Ivan Vecera) [1638022] - [net] sched: implement functions to put and flush all chains (Ivan Vecera) [1638022] - [net] sched: change tcf block reference counter type to refcount_t (Ivan Vecera) [1638022] - [net] sched: use Qdisc rcu API instead of relying on rtnl lock (Ivan Vecera) [1638022] - [net] sched: add helper function to take reference to Qdisc (Ivan Vecera) [1638022] - [net] sched: extend Qdisc with rcu (Ivan Vecera) [1638022] - [net] sched: rename qdisc_destroy() to qdisc_put() (Ivan Vecera) [1638022] - [net] core: netlink: add helper refcount dec and lock function (Ivan Vecera) [1638022] - [net] sched: act_ipt: check for underflow in __tcf_ipt_init() (Ivan Vecera) [1638022] - [net] sched: Add hardware specific counters to TC actions (Ivan Vecera) [1638022] - [net] core: Add new basic hardware counter (Ivan Vecera) [1638022] - [net] net_sched: change tcf_del_walker() to take idrinfo->lock (Ivan Vecera) [1638022] - [net] sched: Use FIELD_SIZEOF directly instead of reimplementing its function (Ivan Vecera) [1638022] - [net] sched: act_sample: fix NULL dereference in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: act_police: use per-cpu counters (Ivan Vecera) [1638022] - [net] net_sched: notify filter deletion when deleting a chain (Ivan Vecera) [1638022] - [net] htb: use anonymous union for simplicity (Ivan Vecera) [1638022] - [net] net_sched: remove redundant qdisc lock classes (Ivan Vecera) [1638022] - [net] sched: cls_flower: dump offload count value (Ivan Vecera) [1638022] - [net] net_sched: properly cancel netlink dump on failure (Ivan Vecera) [1638022] - [net] sched: fix memory leak in act_tunnel_key_init() (Ivan Vecera) [1638022] - [net] sched: action_ife: take reference to meta module (Ivan Vecera) [1638022] - [net] act_ife: fix a potential use-after-free (Ivan Vecera) [1638022] - [net] sched: act_nat: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: null actions array pointer before releasing action (Ivan Vecera) [1638022] - [net] sched: fix type of htb statistics (Ivan Vecera) [1638022] - [net] net_sched: add missing tcf_lock for act_connmark (Ivan Vecera) [1638022] - [net] revert "net: sched: act: add extack for lookup callback" (Ivan Vecera) [1638022] - [net] tc-testing: add test-cases for numeric and invalid control action (Ivan Vecera) [1638022] - [net] net_sched: reject unknown tcfa_action values (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix dump of extended layered op (Ivan Vecera) [1638022] - [net] sched: return -ENOENT when trying to remove filter from non-existent chain (Ivan Vecera) [1638022] - [net] sched: fix extack error message when chain is failed to be created (Ivan Vecera) [1638022] - [net] sched: Fix memory exposure from short TCA_U32_SEL (Ivan Vecera) [1638022] - [net] net_sched: fix unused variable warning in stmmac (Ivan Vecera) [1638022] - [net] sch_cake: Fix TC filter flow override and expand it to hosts as well (Ivan Vecera) [1638022] - [net] sch_cake: Remove unused including (Ivan Vecera) [1638022] - [net] act_ife: fix a potential deadlock (Ivan Vecera) [1638022] - [net] act_ife: move tcfa_lock down to where necessary (Ivan Vecera) [1638022] - [net] revert "net: sched: act_ife: disable bh when taking ife_mod_lock" (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcfa_capab (Ivan Vecera) [1638022] - [net] net_sched: remove list_head from tc_action (Ivan Vecera) [1638022] - [net] net_sched: remove unused tcf_idr_check() (Ivan Vecera) [1638022] - [net] net_sched: remove unused parameter for tcf_action_delete() (Ivan Vecera) [1638022] - [net] net_sched: remove unnecessary ops->delete() (Ivan Vecera) [1638022] - [net] net_sched: improve and refactor tcf_action_put_many() (Ivan Vecera) [1638022] - [net] sched: always disable bh when taking tcf_lock (Ivan Vecera) [1638022] - [net] sched: act_ife: always release ife action on init error (Ivan Vecera) [1638022] - [net] cls_matchall: fix tcf_unbind_filter missing (Ivan Vecera) [1638022] - [net] sched: act_ife: disable bh when taking ife_mod_lock (Ivan Vecera) [1638022] - [net] sched: act_mirred method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_vlan method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbmod method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_skbedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_simple method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_pedit method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_nat method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_ipt method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_gact method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_sum method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_bpf method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_connmark method rename for grep-ability and consistency (Ivan Vecera) [1638022] - [net] sched: act_police: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] core: protect rate estimator statistics pointer with lock (Ivan Vecera) [1638022] - [net] sched: act_mirred: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: extend action ops with put_dev callback (Ivan Vecera) [1638022] - [net] sched: act_vlan: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_skbmod: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_simple: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_sample: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_pedit: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ipt: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_ife: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_gact: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_csum: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] sched: act_bpf: remove dependency on rtnl lock (Ivan Vecera) [1638022] - [net] tc: Update README and add config (Ivan Vecera) [1638022] - [net] sched: fix block->refcnt decrement (Ivan Vecera) [1638022] - [net] tc-tests: initial version of nat action unit tests (Ivan Vecera) [1638022] - [net] sched: allow flower to match tunnel options (Ivan Vecera) [1638022] - [net] flow_dissector: allow dissection of tunnel options from metadata (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in skbedit match patterns (Ivan Vecera) [1638022] - [net] tc-testing: remove duplicate spaces in connmark match patterns (Ivan Vecera) [1638022] - [net] tc-testing: flush gact actions on test teardown (Ivan Vecera) [1638022] - [net] tc-testing: fix ip address in u32 test (Ivan Vecera) [1638022] - [net] sched: cls_flower: Fix an error code in fl_tmplt_create() (Ivan Vecera) [1638022] - [net] sched: fix flush on non-existing chain (Ivan Vecera) [1638022] - [net] sched: make tcf_chain_{get, put}() static (Ivan Vecera) [1638022] - [net] sched: fix notifications for action-held chains (Ivan Vecera) [1638022] - [net] sched: change name of zombie chain to "held_by_acts_only" (Ivan Vecera) [1638022] - [net] act_mirred: use TC_ACT_REINSERT when possible (Ivan Vecera) [1638022] - [net] tc: introduce TC_ACT_REINSERT. (Ivan Vecera) [1638022] - [net] tc/act: remove unneeded RCU lock in action callback (Ivan Vecera) [1638022] - [net] sched: user-space can't set unknown tcfa_action values (Ivan Vecera) [1638022] - [net] Add and use skb_mark_not_on_list(). (Ivan Vecera) [1638022] - [net] sch_netem: Move private queue handler to generic location. (Ivan Vecera) [1638022] - [net] sch_htb: Remove local SKB queue handling code. (Ivan Vecera) [1638022] - [net] act_bpf: Use kmemdup instead of duplicating it in tcf_bpf_init_from_ops (Ivan Vecera) [1638022] - [net] cls_bpf: Use kmemdup instead of duplicating it in cls_bpf_prog_from_ops (Ivan Vecera) [1638022] - [net] act_pedit: remove unnecessary semicolon (Ivan Vecera) [1638022] - [net] sched: don't dump chains only held by actions (Ivan Vecera) [1638022] - [net] sch_cake: Make gso-splitting configurable from userspace (Ivan Vecera) [1638022] - [net] sched: unmark chain as explicitly created on delete (Ivan Vecera) [1638022] - [net] sched: cls_api: fix dead code in switch (Ivan Vecera) [1638022] - [net] sched: cls_flower: Use correct inline function for assignment of vlan tpid (Ivan Vecera) [1638022] - [net] sched: fix trailing whitespace (Ivan Vecera) [1638022] - [net] cbs: Add support for the graft function (Ivan Vecera) [1638022] - [net] sched: add skbprio scheduler (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chain templates (Ivan Vecera) [1638022] - [net] selftests: forwarding: add tests for TC chains creation adn destruction (Ivan Vecera) [1638022] - [net] selftests: forwarding: move shblock tc support check to a separate helper (Ivan Vecera) [1638022] - [net] sched: cls_flower: propagate chain teplate creation and destruction to drivers (Ivan Vecera) [1638022] - [net] sched: cls_flower: implement chain templates (Ivan Vecera) [1638022] - [net] sched: cls_flower: change fl_init_dissector to accept mask and dissector (Ivan Vecera) [1638022] - [net] sched: cls_flower: move key/mask dumping into a separate function (Ivan Vecera) [1638022] - [net] sched: introduce chain templates (Ivan Vecera) [1638022] - [net] sched: introduce chain object to uapi (Ivan Vecera) [1638022] - [net] sched: Avoid implicit chain 0 creation (Ivan Vecera) [1638022] - [net] sched: push ops lookup bits into tcf_proto_lookup_ops() (Ivan Vecera) [1638022] - [net] nfp: bring back support for offloading shared blocks (Ivan Vecera) [1638022] - [net] sched: use PTR_ERR_OR_ZERO macro in tcf_block_cb_register (Ivan Vecera) [1638022] - [net] tc-tests: initial version of fw filter unit tests (Ivan Vecera) [1638022] - [net] sch_cake: Fix tin order when set through skb->priority (Ivan Vecera) [1638022] - [net] sched: act_skbedit: don't use spinlock in the data path (Ivan Vecera) [1638022] - [net] sched: skbedit: use per-cpu counters (Ivan Vecera) [1638022] - [net] tc-testing: add geneve options in tunnel_key unit tests (Ivan Vecera) [1638022] - [net] sched: fix unprotected access to rcu cookie pointer (Ivan Vecera) [1638022] - [net] sched: act_ife: fix memory leak in ife init (Ivan Vecera) [1638022] - [net] sched: refactor flower walk to iterate over idr (Ivan Vecera) [1638022] - [net] sched: flower: Fix null pointer dereference when run tc vlan command (Ivan Vecera) [1638022] - [net] sched: Fix warnings from xchg() on RCU'd cookie pointer. (Ivan Vecera) [1638022] - [net] cls_flower: fix error values for commands not supported by drivers (Ivan Vecera) [1638022] - [net] nfp: handle cls_flower command default case (Ivan Vecera) [1638022] - [net] bnxt: simplify cls_flower command switch and handle default case (Ivan Vecera) [1638022] - [net] sch_cake: Conditionally split GSO segments (Ivan Vecera) [1638022] - [net] sch_cake: Add overhead compensation support to the rate shaper (Ivan Vecera) [1638022] - [net] sch_cake: Add DiffServ handling (Ivan Vecera) [1638022] - [net] sch_cake: Add NAT awareness to packet classifier (Ivan Vecera) [1638022] - [net] netfilter: Add nf_ct_get_tuple_skb global lookup function (Ivan Vecera) [1638022] - [net] sch_cake: Add optional ACK filter (Ivan Vecera) [1638022] - [net] sch_cake: Add ingress mode (Ivan Vecera) [1638022] - [net] sched: Add Common Applications Kept Enhanced (cake) qdisc (Ivan Vecera) [1638022] - [net] Use __u32 in uapi net_stamp.h (Ivan Vecera) [1638022] - [net] sched: flower: Add supprt for matching on QinQ vlan headers (Ivan Vecera) [1638022] - [net] sched: flower: Dump the ethertype encapsulated in vlan (Ivan Vecera) [1638022] - [net] flow_dissector: Add support for QinQ dissection (Ivan Vecera) [1638022] - [net] sched: flower: Add support for matching on vlan ethertype (Ivan Vecera) [1638022] - [net] flow_dissector: Save vlan ethertype from headers (Ivan Vecera) [1638022] - [net] sched: change action API to use array of pointers to actions (Ivan Vecera) [1638022] - [net] sched: atomically check-allocate action (Ivan Vecera) [1638022] - [net] sched: use reference counting action init (Ivan Vecera) [1638022] - [net] sched: don't release reference on action overwrite (Ivan Vecera) [1638022] - [net] sched: implement reference counted action release (Ivan Vecera) [1638022] - [net] sched: add 'delete' function to action ops (Ivan Vecera) [1638022] - [net] sched: implement action API that deletes action by index (Ivan Vecera) [1638022] - [net] sched: always take reference to action (Ivan Vecera) [1638022] - [net] sched: implement unlocked action init API (Ivan Vecera) [1638022] - [net] sched: change type of reference and bind counters (Ivan Vecera) [1638022] - [net] sched: use rcu for action cookie update (Ivan Vecera) [1638022] - [net] sched: Make etf report drops on error_queue (Ivan Vecera) [1638022] - [net] sched: Add HW offloading capability to ETF (Ivan Vecera) [1638022] - [net] sched: Introduce the ETF Qdisc (Ivan Vecera) [1638022] - [net] sched: Allow creating a Qdisc watchdog with other clocks (Ivan Vecera) [1638022] - [net] packet: Hook into time based transmission. (Ivan Vecera) [1638022] - [net] ipv6: Hook into time based transmission (Ivan Vecera) [1638022] - [net] ipv4: Hook into time based transmission (Ivan Vecera) [1638022] - [net] Add a new socket option for a future transmit time. (Ivan Vecera) [1638022] - [net] Clear skb->tstamp only on the forwarding path (Ivan Vecera) [1638022] - [net] sched: act_pedit: fix possible memory leak in tcf_pedit_init() (Ivan Vecera) [1638022] - [net] net sched actions: add extack messages in pedit action (Ivan Vecera) [1638022] - [net] net:sched: add action inheritdsfield to skbedit (Ivan Vecera) [1638022] - [net] tc-testing: initial version of tunnel_key unit tests (Ivan Vecera) [1638022] - [net] net sched actions: avoid bitwise operation on signed value in pedit (Ivan Vecera) [1638022] - [net] net sched actions: fix misleading text strings in pedit action (Ivan Vecera) [1638022] - [net] net sched actions: use sizeof operator for buffer length (Ivan Vecera) [1638022] - [net] net sched actions: fix sparse warning (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit headers (Ivan Vecera) [1638022] - [net] net sched actions: fix coding style in pedit action (Ivan Vecera) [1638022] - [net] netem: slotting with non-uniform distribution (Ivan Vecera) [1638022] - [net] check tunnel option type in tunnel flags (Ivan Vecera) [1638022] - [net] sched: act_tunnel_key: add extended ack support (Ivan Vecera) [1638022] - [net] tc-tests: add an extreme-case csum action test (Ivan Vecera) [1638022] - [net] net_sched: remove unused htb drop_list (Ivan Vecera) [1638022]- [rpmspec] always run make with HOSTCFLAGS/HOSTLDFLAGS set (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to tools build (Jiri Olsa) [1624124] - [rpmspec] Pass global build flags to bpftool build (Jiri Olsa) [1624124] - [kernel] kbuild: Use HOST*FLAGS options from the command line (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOST_LOADLIBES to KBUILD_HOSTLDLIBS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTLDFLAGS to KBUILD_HOSTLDFLAGS (Jiri Olsa) [1624124] - [scripts] kbuild: Rename HOSTCXXFLAGS to KBUILD_HOSTCXXFLAGS (Jiri Olsa) [1624124] - [tools] kbuild: Rename HOSTCFLAGS to KBUILD_HOSTCFLAGS (Jiri Olsa) [1624124] - [tools] tools cpupower: Override CFLAGS assignments (Jiri Olsa) [1624124] - [tools] tools cpupower debug: Allow to use outside build flags (Jiri Olsa) [1624124] - [tools] perf tools: Pass build flags to traceevent build (Jiri Olsa) [1624124] - [tools] tools lib traceevent: Use LDFLAGS in the build commands (Jiri Olsa) [1624124] - [tools] perf tools: Link libperf-jvmti.so with LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow add linker flags via EXTRA_LDFLAGS variable (Jiri Olsa) [1624124] - [tools] bpftool: Allow to add compiler flags via EXTRA_CFLAGS variable (Jiri Olsa) [1624124] - [block] blkcg: handle dying request_queue when associating a blkg (Ming Lei) [1655485] - [block] block: deactivate blk_stat timer in wbt_disable_default() (Ming Lei) [1655485] - [lib] sbitmap: flush deferred clears for resize and shallow gets (Ming Lei) [1655485] - [md] dm: fix request-based dm's use of dm_wait_for_completion (Ming Lei) [1655485] - [nvme] nvme: fix irq vs io_queue calculations (Ming Lei) [1655485] - [md] dm: fix inflight IO check (Ming Lei) [1655485] - [md] dm: remove the pending IO accounting (Ming Lei) [1655485] - [block] block: return just one value from part_in_flight (Ming Lei) [1655485] - [block] block: switch to per-cpu in-flight counters (Ming Lei) [1655485] - [block] block: delete part_round_stats and switch to less precise counting (Ming Lei) [1655485] - [block] block: stop passing 'cpu' to all percpu stats methods (Ming Lei) [1655485] - [md] dm rq: leverage blk_mq_queue_busy() to check for outstanding IO (Ming Lei) [1655485] - [md] dm: dont rewrite dm_disk(md)->part0.in_flight (Ming Lei) [1655485] - [lib] sbitmap: silence bogus lockdep IRQ warning (Ming Lei) [1655485] - [scsi] scsi: Fix a harmless double shift bug (Ming Lei) [1655485] - [block] blk-mq: re-build queue map in case of kdump kernel (Ming Lei) [1655485] - [block] blkcg: put back rcu lock in blkcg_bio_issue_check() (Ming Lei) [1655485] - [block] block: convert io-latency to use rq_qos_wait (Ming Lei) [1655485] - [block] block: convert wbt_wait() to use rq_qos_wait() (Ming Lei) [1655485] - [block] block: add rq_qos_wait to rq_qos (Ming Lei) [1655485] - [block] blkcg: rename blkg_try_get() to blkg_tryget() (Ming Lei) [1655485] - [block] blkcg: change blkg reference counting to use percpu_ref (Ming Lei) [1655485] - [block] blkcg: remove bio_disassociate_task() (Ming Lei) [1655485] - [block] blkcg: remove additional reference to the css (Ming Lei) [1655485] - [block] blkcg: remove bio->bi_css and instead use bio->bi_blkg (Ming Lei) [1655485] - [block] blkcg: associate writeback bios with a blkg (Ming Lei) [1655485] - [block] blkcg: associate a blkg for pages being evicted by swap (Ming Lei) [1655485] - [block] blkcg: consolidate bio_issue_init() to be a part of core (Ming Lei) [1655485] - [block] blkcg: associate blkg when associating a device (Ming Lei) [1655485] - [block] dm: set the static flush bio device on demand (Ming Lei) [1655485] - [block] blkcg: introduce common blkg association logic (Ming Lei) [1655485] - [block] blkcg: convert blkg_lookup_create() to find closest blkg (Ming Lei) [1655485] - [block] blkcg: update blkg_lookup_create() to do locking (Ming Lei) [1655485] - [block] blkcg: fix ref count issue with bio_blkcg() using task_css (Ming Lei) [1655485] - [block] blk-mq: remove QUEUE_FLAG_POLL from default MQ flags (Ming Lei) [1655485] - [block] block: enable polling by default if a poll map is initalized (Ming Lei) [1655485] - [block] block: only allow polling if a poll queue_map exists (Ming Lei) [1655485] - [block] block: remove ->poll_fn (Ming Lei) [1655485] - [nvme] nvme-mpath: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-rdma: remove I/O polling support (Ming Lei) [1655485] - [nvme] nvme-pci: remove the CQ lock for interrupt driven queues (Ming Lei) [1655485] - [nvme] nvme-pci: don't poll from irq context when deleting queues (Ming Lei) [1655485] - [nvme] nvme-pci: refactor nvme_disable_io_queues (Ming Lei) [1655485] - [nvme] nvme-pci: consolidate code for polling non-dedicated queues (Ming Lei) [1655485] - [nvme] nvme-pci: only allow polling with separate poll queues (Ming Lei) [1655485] - [nvme] nvme-pci: cleanup SQ allocation a bit (Ming Lei) [1655485] - [nvme] nvme-pci: use atomic bitops to mark a queue enabled (Ming Lei) [1655485] - [block] block: move queues types to the block layer (Ming Lei) [1655485] - [fs] aio: clear IOCB_HIPRI (Ming Lei) [1655485] - [lib] sbitmap: fix sbitmap_for_each_set() (Ming Lei) [1655485] - [block] blk-mq: don't call ktime_get_ns() if we don't need it (Ming Lei) [1655485] - [block] block: add cmd_flags to print_req_error (Ming Lei) [1655485] - [lib] sbitmap: optimize wakeup check (Ming Lei) [1655485] - [lib] sbitmap: ammortize cost of clearing bits (Ming Lei) [1655485] - [block] block: avoid extra bio reference for async O_DIRECT (Ming Lei) [1655485] - [lib] sbitmap: don't loop for find_next_zero_bit() for !round_robin (Ming Lei) [1655485] - [block] blk-mq: use plug for devices that implement ->commits_rqs() (Ming Lei) [1655485] - [block] blk-mq: use bd->last == true for list inserts (Ming Lei) [1655485] - [block] ataflop: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] virtio_blk: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [nvme] nvme: implement mq_ops->commit_rqs() hook (Ming Lei) [1655485] - [block] blk-mq: add mq_ops->commit_rqs() (Ming Lei) [1655485] - [block] block: improve logic around when to sort a plug list (Ming Lei) [1655485] - [block] blk-mq: Add a NULL check in blk_mq_free_map_and_requests() (Ming Lei) [1655485] - [block] ataflop: fix error handling in atari_floppy_init() (Ming Lei) [1655485] - [block] block: add io timeout to sysfs (Ming Lei) [1655485] - [block] block: use rcu_work instead of call_rcu to avoid sleep in softirq (Ming Lei) [1655485] - [block] blk-mq: fix failure to decrement plug count on single rq removal (Ming Lei) [1655485] - [block] sunvdc: Do not spin in an infinite loop when vio_ldc_send() returns EAGAIN (Ming Lei) [1655485] - [block] block: sum requests in the plug structure (Ming Lei) [1655485] - [block] blk-mq: Simplify request completion state (Ming Lei) [1655485] - [scsi] scsi: Do not rely on blk-mq for double completions (Ming Lei) [1655485] - [block] blk-mq: Return true if request was completed (Ming Lei) [1655485] - [block] blk-mq: never redirect polled IO completions (Ming Lei) [1655485] - [block] blk-mq: ensure mq_ops ->poll() is entered at least once (Ming Lei) [1655485] - [block] block: make blk_poll() take a parameter on whether to spin or not (Ming Lei) [1655485] - [nvme] nvme: remove opportunistic polling from bdev target (Ming Lei) [1655485] - [block] blk-mq: remove 'tag' parameter from mq_ops->poll() (Ming Lei) [1655485] - [block] blk-mq: when polling for IO, look for any completion (Ming Lei) [1655485] - [block] block: fix attempt to assign NULL io_context (Ming Lei) [1655485] - [block] block: Initialize BIO I/O priority early (Ming Lei) [1655485] - [block] block: prevent merging of requests with different priorities (Ming Lei) [1655485] - [fs] aio: Fix fallback I/O priority value (Ming Lei) [1655485] - [block] block: Introduce get_current_ioprio() (Ming Lei) [1655485] - [block] block: Remove bio->bi_ioc (Ming Lei) [1655485] - [fs] aio: Comment use of IOCB_FLAG_IOPRIO aio flag (Ming Lei) [1655485] - [nvme] nvme-fc: remove ->poll implementation (Ming Lei) [1655485] - [block] block: have ->poll_fn() return number of entries polled (Ming Lei) [1655485] - [block] block: avoid ordered task state change for polled IO (Ming Lei) [1655485] - [nvme] nvme: default to 0 poll queues (Ming Lei) [1655485] - [block] floppy: remove now unused 'flags' variable (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [block] ide: don't acquire queue_lock in ide_complete_pm_rq (Ming Lei) [1655485] - [block] ide: don't acquire queue lock in ide_pm_execute_rq (Ming Lei) [1655485] - [block] pktcdvd: remove queue_lock around blk_queue_max_hw_sectors (Ming Lei) [1655485] - [block] floppy: remove queue_lock around floppy_end_request (Ming Lei) [1655485] - [block] block: remove the rq_alloc_data request_queue field (Ming Lei) [1655485] - [block] block: don't plug for aio/O_DIRECT HIPRI IO (Ming Lei) [1655485] - [block] block: for async O_DIRECT, mark us as polling if asked to (Ming Lei) [1655485] - [block] block: add polled wakeup task helper (Ming Lei) [1655485] - [block] blk-rq-qos: inline check for q->rq_qos functions (Ming Lei) [1655485] - [block] block: add queue_is_mq() helper (Ming Lei) [1655485] - [nvme] nvme: provide optimized poll function for separate poll queues (Ming Lei) [1655485] - [block] ide: clear ide_req()->special for non-passthrough requests (Ming Lei) [1655485] - [nvme] nvme: fix handling of EINVAL on pci_alloc_irq_vectors_affinity() (Ming Lei) [1655485] - [block] block: add wbt_disable_default export for BFQ (Ming Lei) [1655485] - [block] block: remove the queue_lock indirection (Ming Lei) [1655485] - [block] block: remove the lock argument to blk_alloc_queue_node (Ming Lei) [1655485] - [mmc] mmc: stop abusing the request queue_lock pointer (Ming Lei) [1655485] - [mmc] mmc: simplify queue initialization (Ming Lei) [1655485] - [block] umem: don't override the queue_lock (Ming Lei) [1655485] - [block] drbd: don't override the queue_lock (Ming Lei) [1655485] - [block] blk-cgroup: move locking into blkg_destroy_all (Ming Lei) [1655485] - [block] blk-cgroup: consolidate error handling in blkcg_init_queue (Ming Lei) [1655485] - [block] block: remove a few unused exports (Ming Lei) [1655485] - [block] block: update a few comments for the legacy request removal (Ming Lei) [1655485] - [block] block: remove the unused lock argument to rq_qos_throttle (Ming Lei) [1655485] - [block] block: remove queue_lockdep_assert_held (Ming Lei) [1655485] - [block] block: use atomic bitops for ->queue_flags (Ming Lei) [1655485] - [block] block: don't hold the queue_lock over blk_abort_request (Ming Lei) [1655485] - [block] block: remove deadline __deadline manipulation helpers (Ming Lei) [1655485] - [block] block: remove QUEUE_FLAG_BYPASS and ->bypass (Ming Lei) [1655485] - [nvme] nvmet-rdma: fix response use after free (Ming Lei) [1655485] - [nvme] nvme: validate controller state before rescheduling keep alive (Ming Lei) [1655485] - [block] block, bfq: fix decrement of num_active_groups (Ming Lei) [1655485] - [ata] libata: whitelist all SAMSUNG MZ7KM* solid-state disks (Ming Lei) [1655485] - [nvme] nvme-rdma: fix double freeing of async event data (Ming Lei) [1655485] - [nvme] nvme-pci: fix surprise removal (Ming Lei) [1655485] - [nvme] nvme: Free ctrl device name on init failure (Ming Lei) [1655485] - [nvme] nvme-fc: resolve io failures during connect (Ming Lei) [1655485] - [nvme] nvme: make sure ns head inherits underlying device limits (Ming Lei) [1655485] - [nvme] nvmet: don't try to add ns to p2p map unless it actually uses it (Ming Lei) [1655485] - [nvme] nvme-pci: fix conflicting p2p resource adds (Ming Lei) [1655485] - [nvme] nvmet: Optionally use PCI P2P memory (Ming Lei) [1655485] - [nvme] nvmet: Introduce helper functions to allocate and free request SGLs (Ming Lei) [1655485] - [nvme] nvme-pci: Add support for P2P memory in requests (Ming Lei) [1655485] - [nvme] nvme-pci: Use PCI p2pmem subsystem to manage the CMB (Ming Lei) [1655485] - [infiniband] IB/core: Ensure we map P2P memory correctly in rdma_rw_ctx_[init|destroy]() (Ming Lei) [1655485] - [block] block: Add PCI P2P flag for request queue (Ming Lei) [1655485] - [documentation] PCI/P2PDMA: Add P2P DMA driver writer's documentation (Ming Lei) [1655485] - [documentation] docs-rst: Add a new directory for PCI documentation (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Introduce configfs/sysfs enable attribute helpers (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add PCI p2pmem DMA mappings to adjust the bus offset (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Add sysfs group to display p2pmem stats (Ming Lei) [1655485] - [pci] PCI/P2PDMA: Support peer-to-peer memory (Ming Lei) [1655485] - [nvme] nvmet-rdma: support max(16KB, PAGE_SIZE) inline data (Ming Lei) [1655485] - [nvme] nvme-rdma: support up to 4 segments of inline data (Ming Lei) [1655485] - [fs] aio: fix failure to put the file pointer (Ming Lei) [1655485] - [lib] scsi: Remove percpu_ida (Ming Lei) [1655485] - [scsi] scsi: target: Convert target drivers to use sbitmap (Ming Lei) [1655485] - [scsi] scsi: target: Abstract tag freeing (Ming Lei) [1655485] - [block] mmc: block: Fix unsupported parallel dispatch of requests (Ming Lei) [1655485] - [scsi] scsi: target: sbitmap: add seq_file forward declaration (Ming Lei) [1655485] - [mm] mm, memory_hotplug: do not clear numa_node association after hot_remove (Waiman Long) [1657422] - [fs] iomap: partially revert 4721a601099 (simulated directio short read on EFAULT) (Brian Foster) [1654713] - [fs] splice: don't read more than available pipe space (Brian Foster) [1654713] - [fs] vfs: allow some remap flags to be passed to vfs_clone_file_range (Brian Foster) [1654713] - [fs] xfs: fix inverted return from xfs_btree_sblock_verify_crc (Brian Foster) [1654713] - [fs] xfs: fix PAGE_MASK usage in xfs_free_file_space (Brian Foster) [1654713] - [fs] fs/xfs: fix f_ffree value for statfs when project quota is set (Brian Foster) [1654713] - [fs] iomap: readpages doesn't zero page tail beyond EOF (Brian Foster) [1654713] - [fs] vfs: vfs_dedupe_file_range() doesn't return EOPNOTSUPP (Brian Foster) [1654713] - [fs] iomap: dio data corruption and spurious errors when pipes fill (Brian Foster) [1654713] - [fs] iomap: sub-block dio needs to zeroout beyond EOF (Brian Foster) [1654713] - [fs] iomap: FUA is wrong for DIO O_DSYNC writes into unwritten extents (Brian Foster) [1654713] - [fs] xfs: delalloc -> unwritten COW fork allocation can go wrong (Brian Foster) [1654713] - [fs] xfs: flush removing page cache in xfs_reflink_remap_prep (Brian Foster) [1654713] - [fs] xfs: extent shifting doesn't fully invalidate page cache (Brian Foster) [1654713] - [fs] xfs: finobt AG reserves don't consider last AG can be a runt (Brian Foster) [1654713] - [fs] xfs: fix transient reference count error in xfs_buf_resubmit_failed_buffers (Brian Foster) [1654713] - [fs] xfs: uncached buffer tracing needs to print bno (Brian Foster) [1654713] - [fs] xfs: make xfs_file_remap_range() static (Brian Foster) [1654713] - [fs] xfs: fix shared extent data corruption due to missing cow reservation (Brian Foster) [1654713] - [fs] xfs: fix overflow in xfs_attr3_leaf_verify (Brian Foster) [1654713] - [fs] xfs: print buffer offsets when dumping corrupt buffers (Brian Foster) [1654713] - [fs] xfs: Fix error code in 'xfs_ioc_getbmap()' (Brian Foster) [1654713] - [fs] xfs: cancel COW blocks before swapext (Brian Foster) [1654713] - [fs] xfs: clear ail delwri queued bufs on unmount of shutdown fs (Brian Foster) [1654713] - [fs] xfs: use offsetof() in place of offset macros for __xfsstats (Brian Foster) [1654713] - [fs] xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat (Brian Foster) [1654713] - [fs] xfs: fix use-after-free race in xfs_buf_rele (Brian Foster) [1654713] - [fs] xfs: Add attibute remove and helper functions (Brian Foster) [1654713] - [fs] xfs: Add attibute set and helper functions (Brian Foster) [1654713] - [fs] xfs: Add helper function xfs_attr_try_sf_addname (Brian Foster) [1654713] - [fs] xfs: Move fs/xfs/xfs_attr.h to fs/xfs/libxfs/xfs_attr.h (Brian Foster) [1654713] - [fs] xfs: issue log message on user force shutdown (Brian Foster) [1654713] - [fs] xfs: fix buffer state management in xrep_findroot_block (Brian Foster) [1654713] - [fs] xfs: always assign buffer verifiers when one is provided (Brian Foster) [1654713] - [fs] xfs: xrep_findroot_block should reject root blocks with siblings (Brian Foster) [1654713] - [fs] xfs: add a define for statfs magic to uapi (Brian Foster) [1654713] - [fs] xfs: print dangling delalloc extents (Brian Foster) [1654713] - [fs] xfs: fix fork selection in xfs_find_trim_cow_extent (Brian Foster) [1654713] - [fs] xfs: remove the unused trimmed argument from xfs_reflink_trim_around_shared (Brian Foster) [1654713] - [fs] xfs: remove the unused shared argument to xfs_reflink_reserve_cow (Brian Foster) [1654713] - [fs] xfs: handle zeroing in xfs_file_iomap_begin_delay (Brian Foster) [1654713] - [fs] xfs: remove suport for filesystems without unwritten extent flag (Brian Foster) [1654713] - [fs] xfs: remove XFS_IO_INVALID (Brian Foster) [1654713] - [fs] xfs: remove [cm]time update from reflink calls (Brian Foster) [1654713] - [fs] xfs: remove xfs_reflink_remap_range (Brian Foster) [1654713] - [fs] xfs: remove redundant remap partial EOF block checks (Brian Foster) [1654713] - [fs] xfs: support returning partial reflink results (Brian Foster) [1654713] - [fs] xfs: clean up xfs_reflink_remap_blocks call site (Brian Foster) [1654713] - [fs] xfs: fix pagecache truncation prior to reflink (Brian Foster) [1654713] - [fs] vfs: clean up generic_remap_file_range_prep return value (Brian Foster) [1654713] - [fs] vfs: hide file range comparison function (Brian Foster) [1654713] - [fs] vfs: enable remap callers that can handle short operations (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs dedupe functions (Brian Foster) [1654713] - [fs] vfs: plumb remap flags through the vfs clone functions (Brian Foster) [1654713] - [fs] vfs: make remap_file_range functions take and return bytes completed (Brian Foster) [1654713] - [fs] vfs: remap helper should update destination inode metadata (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: pass remap flags to generic_remap_file_range_prep (Brian Foster) [1654713] - [fs] vfs: combine the clone and dedupe into a single remap_file_range (Brian Foster) [1654713] - [fs] vfs: rename clone_verify_area to remap_verify_area (Brian Foster) [1654713] - [fs] vfs: rename vfs_clone_file_prep to be more descriptive (Brian Foster) [1654713] - [fs] vfs: skip zero-length dedupe requests (Brian Foster) [1654713] - [fs] vfs: avoid problematic remapping requests into partial EOF block (Brian Foster) [1654713] - [fs] vfs: strengthen checking of file range inputs to generic_remap_checks (Brian Foster) [1654713] - [fs] vfs: exit early from zero length remap operations (Brian Foster) [1654713] - [fs] vfs: check file ranges before cloning files (Brian Foster) [1654713] - [fs] vfs: vfs_clone_file_prep_inodes should return EINVAL for a clone from beyond EOF (Brian Foster) [1654713] - [block] blk-mq: not embed .mq_kobj and ctx->kobj into queue instance (Ming Lei) [1653124] - [fs] fs: fix lost error code in dio_complete (Ming Lei) [1655364] - [iommu] iommu/iova: Optimise attempts to allocate iova from 32bit address range (Robert Richter) [1639202]- [drm] drm/nouveau/drm/nouveau: Check rc from drm_dp_mst_topology_mgr_resume() (Lyude Paul) [1658810] - [x86] Mark Intel Apollo Lake supported (David Arcari) [1653799] - [infiniband] IB/mlx5: Fix implicit ODP interrupted page fault (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Improve ODP debugging messages (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Use multi threaded workqueue for page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Return success for PAGE_FAULT_RESUME in internal error state (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Lock QP during page fault handling (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Enumerate page fault types (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Add interface to hold and release core resources (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Release resource on error flow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Correctly set PFC param if global pause is turned off. (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_en: Change min MTU size to ETH_MIN_MTU (Alaa Hleihel) [1658085] - [netdrv] mlx5: fix get_ip_proto() (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix page fault handling for MW (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Initialize return variable in case pagefault was skipped (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Skip non-ODP MR when handling a page fault (Alaa Hleihel) [1658085] - [net] net/dim: Update DIM start sample after each DIM iteration (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Avoid load failure due to unknown link width (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Fix fence type for IB_WR_LOCAL_INV WR (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Removed unnecessary warnings in FEC caps query (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Fix selftest for small MTUs (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, verify received packet size in Linear Striding RQ (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Apply the correct check for supporting TC esw rules split (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Adjust to max number of channles when re-attaching (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Always use the match level enum when parsing TC rule match (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Claim TC hw offloads support only under a proper build config (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Don't match on vlan non-existence if ethertype is wildcarded (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: IPoIB, Reset QP after channels are closed (Alaa Hleihel) [1658085] - [netdrv] net/mlx4: Fix UBSAN warning of signed integer overflow (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Fix uninitialized variable compilation warning (Alaa Hleihel) [1658085] - [netdrv] net/mlx4_core: Zero out lkey field in SW2HW_MPT fw command (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Fix MR cache initialization (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove extraneous error check (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix memory leak when setting fpga ipsec caps (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Unmap DMA addr from HCA before IOMMU (Alaa Hleihel) [1658085] - [infiniband] RDMA/mlx5: Remove superfluous version print (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Allow transition of DCI QP to reset (Alaa Hleihel) [1658085] - [infiniband] IB/mlx5: Don't hold spin lock while checking device state (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Move mlx5e_priv_flags into en_ethtool.c (Alaa Hleihel) [1658085] - [netdrv] net/mlx5: Fix atomic_mode enum values (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: Delete unneeded function argument (Alaa Hleihel) [1658085] - [netdrv] net/mlx5e: RX, Prefetch the xdp_frame data area (Alaa Hleihel) [1658085] - [drm] drm/i915: Synchronize hpd work in i915_hpd_storm_ctl_show() (Lyude Paul) [1658376] - [drm] drm/i915: Add short HPD IRQ storm detection for non-MST systems (Lyude Paul) [1658376] - [drm] drm/i915: Clarify flow for disabling IRQs on storms (Lyude Paul) [1658376] - [drm] drm/i915: Fix threshold check in intel_hpd_irq_storm_detect() (Lyude Paul) [1658376] - [drm] drm/i915: Fix NULL deref when re-enabling HPD IRQs on systems with MST (Lyude Paul) [1658376] - [drm] drm/i915: Fix possible race in intel_dp_add_mst_connector() (Lyude Paul) [1658376] - [x86] kvm: x86: bump KVM_(SOFT_)MAX_VCPUS to 384 (Radim Krcmar) [1635205] - [block] blk-mq: punt failed direct issue to dispatch list (Ming Lei) [1656653] - [block] blk-mq: fix corruption with direct issue (Ming Lei) [1656653] - [pci] PCI: Add support for Immediate Readiness (Myron Stowe) [1483409] - [x86] x86/PCI: Remove node-local allocation when initialising host controller (Myron Stowe) [1483409] - [arm64] arm64: PCI: Remove node-local allocations when initialising host controller (Myron Stowe) [1483409] - [cpufreq] cpufreq: intel_pstate: Add base_frequency attribute (Prarit Bhargava) [1648207] - [acpi] ACPI / CPPC: Add support for guaranteed performance (Prarit Bhargava) [1648207] - [block] block: fix single range discard merge (Ming Lei) [1654096] - [scsi] SCSI: fix queue cleanup race before queue initialization is done (Ming Lei) [1642404] - [netdrv] net: hinic: fix null pointer dereference on pointer hwdev (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: fix a bug in rx data flow (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:fix a bug in set mac address (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:add rx checksum offload for HiNIC (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic:replace multiply and division operators (Xiaojun Tan) [1654207] - [netdrv] hinic: Fix l4_type parameter in hinic_task_set_tunnel_l4 (Xiaojun Tan) [1654207] - [netdrv] net-next/hinic: add checksum offload and TSO support (Xiaojun Tan) [1654207] - [netdrv] cxgb4: Remove SGE_HOST_PAGE_SIZE dependency on page size (Arjun Vynipadath) [1651082]- [x86] kvm: x86: Report STIBP on GET_SUPPORTED_CPUID (Eduardo Habkost) [1644870] - [kernel] power: remove possible deadlock when unregistering power_supply (Benjamin Tissoires) [1657623] - [md] dm: call blk_queue_split() to impose device limits on bios (Mike Snitzer) [1657340] - [pinctrl] Revert "pinctrl: intel: Do pin translation when lock IRQ" (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix HOSTSW_OWN register offset of H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation in other GPIO operations as well (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix gpio base for GPP-E (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq() (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: cannonlake: Fix community ordering for H variant (Benjamin Tissoires) [1658075] - [pinctrl] pinctrl: intel: Do pin translation when lock IRQ (Benjamin Tissoires) [1658075] - [firmware] efi: Prevent GICv3 WARN() by mapping the memreserve table before first use (Bhupesh Sharma) [1638640] - [firmware] efi: Permit calling efi_mem_reserve_persistent() from atomic context (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Defer persistent reservations until after paging_init() (Bhupesh Sharma) [1638640] - [firmware] efi/arm: Revert deferred unmap of early memmap mapping (Bhupesh Sharma) [1638640] - [arm64] arm64: memblock: don't permit memblock resizing until linear mapping is up (Bhupesh Sharma) [1638640] - [arm64] arm64: Fix /proc/iomem for reserved but not memory regions (Bhupesh Sharma) [1638640] - [tty] tty: wipe buffer. (Christoph von Recklinghausen) [1655051] - [tty] tty: wipe buffer if not echoing data (Christoph von Recklinghausen) [1655051]- [powerpc] powerpc/perf: Remove sched_task function defined for thread-imc (Steve Best) [1657153] - [s390] Add reserved fields to mm_context_t (Philipp Rudo) [1656874] - [s390] Add reserved fields to thread_struct (Philipp Rudo) [1656874] - [documentation] kdump: correct crashkernel=auto threshold (Raghavendra Rao) [1656698] - [fs] NFSv4.x: fix lock recovery during delegation recall (Steve Dickson) [1656410] - [x86] x86/spec_ctrl: Synchronize RHEL8 percpu SPEC_CTRL MSR states with new STIBP logic (Waiman Long) [1655662] - [x86] x86/speculation: Provide IBPB always command line options (Waiman Long) [1655662] - [x86] x86/speculation: Add seccomp Spectre v2 user space protection mode (Waiman Long) [1655662] - [x86] x86/speculation: Enable prctl mode for spectre_v2_user (Waiman Long) [1655662] - [x86] x86/speculation: Add prctl() control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Prepare arch_smt_update() for PRCTL mode (Waiman Long) [1655662] - [x86] x86/speculation: Prevent stale SPEC_CTRL msr content (Waiman Long) [1655662] - [x86] x86/speculation: Split out TIF update (Waiman Long) [1655662] - [x86] ptrace: Remove unused ptrace_may_access_sched() and MODE_IBRS (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for conditional IBPB in switch_mm() (Waiman Long) [1655662] - [x86] x86/speculation: Avoid __switch_to_xtra() calls (Waiman Long) [1655662] - [x86] x86/process: Consolidate and simplify switch_to_xtra() code (Waiman Long) [1655662] - [x86] x86/speculation: Prepare for per task indirect branch speculation control (Waiman Long) [1655662] - [x86] x86/speculation: Add command line control for indirect branch speculation (Waiman Long) [1655662] - [x86] x86/speculation: Unify conditional spectre v2 print functions (Waiman Long) [1655662] - [x86] x86/speculataion: Mark command line parser data __initdata (Waiman Long) [1655662] - [x86] x86/speculation: Mark string arrays const correctly (Waiman Long) [1655662] - [x86] x86/speculation: Reorder the spec_v2 code (Waiman Long) [1655662] - [x86] x86/l1tf: Show actual SMT state (Waiman Long) [1655662] - [x86] x86/speculation: Rework SMT state change (Waiman Long) [1655662] - [x86] sched/smt: Expose sched_smt_present static key (Waiman Long) [1655662] - [x86] x86/Kconfig: Select SCHED_SMT if SMP enabled (Waiman Long) [1655662] - [x86] sched/smt: Make sched_smt_present track topology (Waiman Long) [1655662] - [x86] x86/speculation: Reorganize speculation control MSRs update (Waiman Long) [1655662] - [x86] x86/speculation: Rename SSBD update functions (Waiman Long) [1655662] - [x86] x86/speculation: Disable STIBP when enhanced IBRS is in use (Waiman Long) [1655662] - [x86] x86/speculation: Move STIPB/IBPB string conditionals out of cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Remove unnecessary ret variable in cpu_show_common() (Waiman Long) [1655662] - [x86] x86/speculation: Clean up spectre_v2_parse_cmdline() (Waiman Long) [1655662] - [x86] x86/speculation: Update the TIF_SSBD comment (Waiman Long) [1655662] - [x86] x86/retpoline: Remove minimal retpoline support (Waiman Long) [1655662] - [x86] x86/retpoline: Make CONFIG_RETPOLINE depend on compiler support (Waiman Long) [1655662] - [x86] x86/spec_ctrl: Temporarily remove the IBRS code from process.c & bugs.c (Waiman Long) [1655662] - [nvme] nvme: flush namespace scanning work just before removing namespaces (Ewan Milne) [1656028] - [netdrv] i40e: Fix deletion of MAC filters (Stefan Assmann) [1646847] - [scsi] mpt3sas: Display message on Configurable secure HBA (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Add support for Aero controllers (Tomas Henzl) [1649314] - [scsi] scsi: mpt3sas: Update MPI headers to support Aero controllers (Tomas Henzl) [1649314] - [scsi] megaraid_sas: Add support for MegaRAID Aero controllers (Tomas Henzl) [1649384] - [netdrv] nfp: flower: enabled offloading of Team LAG (Pablo Cascon) [1649876] - [netdrv] net/mlx5: IPSec, Fix the SA context hash key (Alaa Hleihel) [1645857] - [hwmon] hwmon/k10temp: Add support for AMD family 17h, model 30h CPUs (Gary Hook) [1640681] - [x86] x86/amd_nb: Add PCI device IDs for family 17h, model 30h (Gary Hook) [1640681] - [x86] x86/amd_nb: Add support for newer PCI topologies (Gary Hook) [1640681] - [hwmon] hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs (Gary Hook) [1640681] - [net] tipc: fix info leak from kernel tipc_event (Jon Maloy) [1643279] - [net] tipc: eliminate message disordering during binding table update (Jon Maloy) [1643279] - [net] tipc: fix unsafe rcu locking when accessing publication list (Jon Maloy) [1643279] - [net] tipc: queue socket protocol error messages into socket receive buffer (Jon Maloy) [1643279] - [net] tipc: ignore STATE_MSG on wrong link session (Jon Maloy) [1643279] - [net] tipc: fix failover problem (Jon Maloy) [1643279] - [net] tipc: eliminate possible recursive locking detected by LOCKDEP (Jon Maloy) [1643279] - [net] tipc: lock wakeup & inputq at tipc_link_reset() (Jon Maloy) [1643279] - [net] tipc: reset bearer if device carrier not ok (Jon Maloy) [1643279] - [net] tipc: fix flow control accounting for implicit connect (Jon Maloy) [1643279] - [net] tipc: check return value of __tipc_dump_start() (Jon Maloy) [1643279] - [net] tipc: call start and done ops directly in __tipc_nl_compat_dumpit() (Jon Maloy) [1643279] - [net] tipc: orphan sock in tipc_release() (Jon Maloy) [1643279] - [net] tipc: switch to rhashtable iterator (Jon Maloy) [1643279] - [net] tipc: fix a missing rhashtable_walk_exit() (Jon Maloy) [1643279] - [net] tipc: add missing dev_put() on error in tipc_enable_l2_media (Jon Maloy) [1643279] - [net] tipc: initialize broadcast link stale counter correctly (Jon Maloy) [1643279] - [net] tipc: set link tolerance correctly in broadcast link (Jon Maloy) [1643279] - [net] tipc: extend link reset criteria for stale packet retransmission (Jon Maloy) [1643279] - [crypto] crypto: ccp - Add support for new CCP/PSP device ID (Gary Hook) [1634201] - [crypto] crypto: ccp - Support register differences between PSP devices (Gary Hook) [1634201] - [crypto] crypto: ccp - Remove unused #defines (Gary Hook) [1634201] - [crypto] crypto: ccp - Add psp enabled message when initialization succeeds (Gary Hook) [1634201] - [crypto] crypto: ccp - Fix command completion detection race (Gary Hook) [1634201] - [crypto] crypto: ccp - Check for NULL PSP pointer at module unload (Gary Hook) [1634201] - [net] sctp: increase sk_wmem_alloc when head->truesize is increased (Xin Long) [1645419] - [net] sctp: count sk_wmem_alloc by skb truesize in sctp_packet_transmit (Xin Long) [1645419] - [net] ipv6: re-do dad when interface has IFF_NOARP flag change (Hangbin Liu) [1644594] - [net] netfilter: nf_tables: don't skip inactive chains during update (Florian Westphal) [1643746] - [net] inet: frags: better deal with smp races (Sabrina Dubroca) [1645397] - [net] geneve, vxlan: Don't set exceptions if skb->len < mtu (Xin Long) [1642842] - [net] geneve, vxlan: Don't check skb_dst() twice (Xin Long) [1642842] - [net] sctp: fix strchange_flags name for Stream Change Event (Xin Long) [1641852] - [net] sctp: update dst pmtu with the correct daddr (Xin Long) [1644478] - [net] sctp: not free the new asoc when sctp_wait_for_connect returns err (Xin Long) [1644155] - [net] l2tp: fix a sock refcnt leak in l2tp_tunnel_register (Xin Long) [1642749] - [net] sctp: check policy more carefully when getting pr status (Xin Long) [1637786] - [net] sctp: get pr_assoc and pr_stream all status with SCTP_PR_SCTP_ALL instead (Xin Long) [1637786] - [net] ipv4/igmp: fix v1/v2 switchback timeout based on rfc3376, 8.12 (Hangbin Liu) [1638598] - [net] netfilter: nft_compat: ebtables 'nat' table is normal chain type (Florian Westphal) [1645377] - [net] sched: exclude TC from kABI guarantee (Ivan Vecera) [1628454] - [net] netfilter: nft_set_rbtree: allow loose matching of closing element in interval (Phil Sutter) [1641993] - [net] netfilter: xt_nat: fix DNAT target for shifted portmap ranges (Paolo Abeni) [1634258] - [net] sched: Fix for duplicate class dump (Phil Sutter) [1631179] - [x86] KVM: X86: Fix scan ioapic use-before-initialization (Bandan Das) [1653835] {CVE-2018-19407}- [scsi] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to free_irq during unload (Cathy Avery) [1590875] - [netdrv] net/ibmvnic: Fix RTNL deadlock during device reset (Steve Best) [1656076] - [s390] s390/qeth: fix length check in SNMP processing (Philipp Rudo) [1655612] - [s390] s390/ism: clear dmbe_mask bit before SMC IRQ handling (Philipp Rudo) [1655611] - [net] net/smc: use after free fix in smc_wr_tx_put_slot() (Philipp Rudo) [1655611] - [net] net/smc: atomic SMCD cursor handling (Philipp Rudo) [1655611] - [net] net/smc: add SMC-D shutdown signal (Philipp Rudo) [1655611] - [net] net/smc: use queue pair number when matching link group (Philipp Rudo) [1655611] - [net] net/smc: abort CLC connection in smc_release (Philipp Rudo) [1655611] - [net] net/smc: unregister rkeys of unused buffer (Philipp Rudo) [1655611] - [net] net/smc: add infrastructure to send delete rkey messages (Philipp Rudo) [1655611] - [net] net/smc: avoid a delay by waiting for nothing (Philipp Rudo) [1655611] - [net] net/smc: cleanup listen worker mutex unlocking (Philipp Rudo) [1655611] - [net] net/smc: short wait for late smc_clc_wait_msg (Philipp Rudo) [1655611] - [net] net/smc: no link delete for a never active link (Philipp Rudo) [1655611] - [net] net/smc: allow fallback after clc timeouts (Philipp Rudo) [1655611] - [net] net/smc: remove sock_error detour in clc-functions (Philipp Rudo) [1655611] - [net] net/smc: make smc_lgr_free() static (Philipp Rudo) [1655611] - [net] net/smc: cleanup tcp_listen_worker initialization (Philipp Rudo) [1655611] - [net] net/smc: fix smc_buf_unuse to use the lgr pointer (Philipp Rudo) [1655611] - [net] Revert "net: simplify sock_poll_wait" (Philipp Rudo) [1655611] - [powerpc] powerpc/pseries: Fix unitialized timer reset on migration (Steve Best) [1655053] - [powerpc] powerpc/pseries/mobility: Extend start/stop topology update scope (Steve Best) [1655053] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1641425]- [x86] KVM: VMX: re-add ple_gap module parameter (Gary Hook) [1652953] - [netdrv] tg3: Add PHY reset for 5717/5719/5720 in change ring and flow control paths (Steve Best) [1655515] - [pci] PCI/ASPM: Do not initialize link state when aspm_disabled is set (Myron Stowe) [1655246] - [pci] PCI/ACPI: Allow _OSC presence to be optional for PCI (Myron Stowe) [1655246] - [pci] PCI/ACPI: Correct error message for ASPM disabling (Myron Stowe) [1655246] - [pci] PCI/ASPM: Fix link_state teardown on device removal (Myron Stowe) [1655246] - [netdrv] ice: Change req_speeds to be u16 (Jonathan Toppins) [1644403] - [netdrv] ice: Fix the bytecount sent to netdev_tx_sent_queue (Jonathan Toppins) [1644403] - [netdrv] ice: Fix tx_timeout in PF driver (Jonathan Toppins) [1644403] - [netdrv] ice: Fix napi delete calls for remove (Jonathan Toppins) [1644403] - [netdrv] ice: Fix typo in error message (Jonathan Toppins) [1644403] - [netdrv] ice: Fix flags for port VLAN (Jonathan Toppins) [1644403] - [netdrv] ice: Remove duplicate addition of VLANs in replay path (Jonathan Toppins) [1644403] - [netdrv] ice: Free VSI contexts during for unload (Jonathan Toppins) [1644403] - [netdrv] ice: Fix dead device link issue with flow control (Jonathan Toppins) [1644403] - [netdrv] ice: Check for reset in progress during remove (Jonathan Toppins) [1644403] - [netdrv] ice: Set carrier state and start/stop queues in rebuild (Jonathan Toppins) [1644403] - [netdrv] virtchnl: Added support to exchange additional speed values (Jonathan Toppins) [1644403] - [netdrv] ice: Poll for link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Allocate VF interrupts and set queue map (Jonathan Toppins) [1644403] - [netdrv] ice: Introduce ice_dev_onetime_setup (Jonathan Toppins) [1644403] - [netdrv] ice: Use capability count returned by the firmware (Jonathan Toppins) [1644403] - [netdrv] ice: Update expected FW version (Jonathan Toppins) [1644403] - [netdrv] ice: Change device ID define names to align with branding string (Jonathan Toppins) [1644403] - [netdrv] ice: Make ice_msix_clean_rings static (Jonathan Toppins) [1644403] - [netdrv] ice: Update version string (Jonathan Toppins) [1644403] - [netdrv] ice: Use the right function to enable/disable VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add more flexibility on how we assign an ITR index (Jonathan Toppins) [1644403] - [netdrv] ice: Fix potential null pointer issues (Jonathan Toppins) [1644403] - [netdrv] ice: Add code to go from ICE_FWD_TO_VSI_LIST to ICE_FWD_TO_VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Fix forward to queue group logic (Jonathan Toppins) [1644403] - [netdrv] ice: Extend malicious operations detection logic (Jonathan Toppins) [1644403] - [netdrv] ice: Notify VF of link status change (Jonathan Toppins) [1644403] - [netdrv] ice: Implement virtchnl commands for AVF support (Jonathan Toppins) [1644403] - [netdrv] ice: Add handlers for VF netdevice operations (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for VF reset events (Jonathan Toppins) [1644403] - [netdrv] ice: Update VSI and queue management code to handle VF VSI (Jonathan Toppins) [1644403] - [netdrv] ice: Add handler to configure SR-IOV (Jonathan Toppins) [1644403] - [netdrv] ice: Add support to detect SR-IOV capability and mailbox queues (Jonathan Toppins) [1644403] - [netdrv] ice: Fix error on driver remove (Jonathan Toppins) [1644403] - [netdrv] ice: Add support for dynamic interrupt moderation (Jonathan Toppins) [1644403] - [netdrv] ice: Align ice_reset_req enum values to hardware reset values (Jonathan Toppins) [1644403] - [netdrv] ice: Implement ethtool hook for RSS switch (Jonathan Toppins) [1644403] - [netdrv] ice: Split irq_tracker into sw_irq_tracker and hw_irq_tracker (Jonathan Toppins) [1644403] - [netdrv] ice: Check for actual link state of port after reset (Jonathan Toppins) [1644403] - [netdrv] ice: Implement VSI replay framework (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 2/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Expand use of VSI handles part 1/2 (Jonathan Toppins) [1644403] - [netdrv] ice: Change pf state behavior to protect reset path (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 7/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 6/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 5/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 4/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 3/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 2/7 (Jonathan Toppins) [1644403] - [netdrv] ice: Move common functions out of ice_main.c part 1/7 (Jonathan Toppins) [1644403] - [netdrv] ice: fix changing of ring descriptor size (ethtool -G) (Jonathan Toppins) [1644403] - [netdrv] ice: Update to capabilities admin queue command (Jonathan Toppins) [1644403] - [netdrv] ice: Query the Tx scheduler node before adding it (Jonathan Toppins) [1644403] - [netdrv] ice: Update comment for ice_fltr_mgmt_list_entry (Jonathan Toppins) [1644403] - [netdrv] ice: update fw version check logic (Jonathan Toppins) [1644403] - [netdrv] ice: update branding strings and supported device ids (Jonathan Toppins) [1644403] - [netdrv] ice: replace unnecessary memcpy with direct assignment (Jonathan Toppins) [1644403] - [netdrv] ice: use [sr]q.count when checking if queue is initialized (Jonathan Toppins) [1644403] - [netdrv] ice: remove ndo_poll_controller (Jonathan Toppins) [1644403] - [fs] fanotify: fix handling of events on child sub-directory (Miklos Szeredi) [1652432] - [fs] fsnotify: generalize handling of extra event flags (Miklos Szeredi) [1652432] - [netdrv] net: hns3: add common validation in hclge_dcb (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix for multiple unmapping DMA problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename hns_nic_dma_unmap (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add handling for big TX fragment (Xiaojun Tan) [1640945] - [netdrv] net: hns3: move DMA map into hns3_fill_desc (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hns3_fill_desc_tso (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after loopback test (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Resume promisc mode and vlan filter status after reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Enable promisc mode when mac vlan table is full (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for rx vlan id handle to support Rev 0x21 hardware (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add egress/ingress vlan filter for revision 0x21 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Optimize for unicast mac vlan table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix loss of coal configuration while doing reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify hns3_get_max_available_channels (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change return type of hclge_tm_schd_info_update() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for netdev not up problem when setting mtu (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for packet buffer setting bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set extra mac address of pause param for HW (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix speed/duplex information loss problem when executing ethtool ethx cmd of VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add get_media_type ops support for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove print messages for error packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add nic state check before calling netif_tx_wake_queue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add handle for default case (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Unify the prefix of vf functions (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tqp array traversal condition for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ets validate issue (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix parameter type for q_id in hclge_tm_q_to_qs_map_cfg() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix client initialize state issue when roce client initialize failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Clear client pointer when initialize client failed or unintialize finished (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix cmdq registers initialization issue for vf (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for setting speed for phy failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Check hdev state when getting link status (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set STATE_DOWN bit of hdev state when stopping net (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove packet statistics of public (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove tx budget to clean more TX descriptors in a napi (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine hns3_get_link_ksettings() (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Remove redundant codes of query advertised flow control abilitiy (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Change the dst mac addr of loopback packet (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Only update mac configuation when necessary (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Preserve vlan 0 in hardware table (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix ping exited problem when doing lp selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for loopback selftest failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix error of checking used vlan id (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for multicast failure (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for vf vlan delete failed problem (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify variable type in hns3_nic_reuse_page (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add vlan filter setting by ethtool command -K (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Set tx ring' tc info when netdev is up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix desc num set to default when setting channel (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for information of phydev lost problem when down/up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add support for serdes loopback selftest (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Refine the MSIX allocation for PF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix MSIX allocation issue for VF (Xiaojun Tan) [1640945] - [netdrv] net: hns3: fix return value error while hclge_cmd_csq_clean failed (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Modify inconsistent bit mask macros (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for using wrong mask and shift in hclge_get_ring_chain_from_mbx (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Correct reset event status register (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent to request reset frequently (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Prevent sending command during global or core reset (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Add configure for mac minimal frame size (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for l4 checksum offload bug (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix for waterline not setting correctly (Xiaojun Tan) [1640945] - [netdrv] net: hns3: Fix tc setup when netdev is first up (Xiaojun Tan) [1640945] - [netdrv] net: hns3: modify hnae_ to hnae3_ (Xiaojun Tan) [1640945] - [netdrv] net: hns3: simplify hclge_cmd_csq_clean (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove some redundant assignments (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove back in struct hclge_hw (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add unlikely for error check (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add l4_type check for both ipv4 and ipv6 (Xiaojun Tan) [1640945] - [netdrv] net: hns3: add vector status check before free vector (Xiaojun Tan) [1640945] - [netdrv] net: hns3: rename the interface for init_client_instance and uninit_client_instance (Xiaojun Tan) [1640945] - [netdrv] net: hns3: remove hclge_get_vector_index from hclge_bind_ring_with_vector (Xiaojun Tan) [1640945] - [kernel] redhat: Enable -Werror for architectures (Laura Abbott) [1582754] - [drm] drm/atomic_helper: Remove dangling variable (Laura Abbott) [1582754] - [s390] s390/tools: fix gcc 8 stringop-truncation warnings (Laura Abbott) [1582754] - [tty] kgdboc: Fix restrict error (Laura Abbott) [1582754] - [misc] misc: kgdbts: Fix restrict error (Laura Abbott) [1582754] - [scsi] scsi: ibmvscsis: Fix a stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/extmem: fix gcc 8 stringop-overflow warning (Laura Abbott) [1582754] - [s390] s390/perf: fix gcc 8 array-bounds warning (Laura Abbott) [1582754] - [kernel] kdb: Use strscpy with destination buffer size (Laura Abbott) [1582754] - [fs] configfs: replace strncpy with memcpy (Laura Abbott) [1582754] - [fs] kernfs: Replace strncpy with memcpy (Laura Abbott) [1582754] - [kernel] disable stringop truncation warnings for now (Laura Abbott) [1582754] - [sound] ALSA: intel_hdmi: Use strlcpy() instead of strncpy() (Laura Abbott) [1582754] - [sound] ALSA: trident: Suppress gcc string warning (Laura Abbott) [1582754] - [lib] kobject: Replace strncpy with memcpy (Laura Abbott) [1582754] - [tty] TTY: isdn: Replace strncpy with memcpy (Laura Abbott) [1582754] - [target] scsi: target/iscsi: Make iscsit_ta_authentication() respect the output buffer size (Laura Abbott) [1582754] - [fs] fuse: don't need GETATTR after every READ (Miklos Szeredi) [1650538] - [fs] fuse: allow fine grained attr cache invaldation (Miklos Szeredi) [1650538]- [mm] mm: mremap: properly flush TLB before releasing the page (Rafael Aquini) [1645122] {CVE-2018-18281} - [x86] x86/spec_ctrl: Change default Skylake Spectre v2 mitigation to retpoline (Waiman Long) [1651806] - [fs] gfs2: write revokes should traverse sd_ail1_list in reverse (Andreas Grunbacher) [1652763] - [fs] gfs2: Fix marking bitmaps non-full (Andreas Grunbacher) [1652762] - [fs] GFS2: Flush the GFS2 delete workqueue before stopping the kernel threads (Andreas Grunbacher) [1652761] - [fs] gfs2: Don't leave s_fs_info pointing to freed memory in init_sbd (Andreas Grunbacher) [1652759] - [fs] gfs2: Use fs_* functions instead of pr_* function where we can (Andreas Grunbacher) [1652757] - [fs] gfs2: slow the deluge of io error messages (Andreas Grunbacher) [1652757] - [fs] gfs2_meta: ->mount() can get NULL dev_name (Andreas Grunbacher) [1652754] - [powerpc] powerpc/vdso: Correct call frame information (Steve Best) [1651281] - [i2c] i2c: i801: Add support for Intel Ice Lake (David Arcari) [1637435] - [usb] xhci: Add quirk to workaround the errata seen on Cavium Thunder-X2 Soc (Robert Richter) [1649829] - [x86] x86: numa_emulation: fix uniform-split numa emulation (Rafael Aquini) [1620341] - [x86] x86: numa_emulation: introduce uniform split capability (Rafael Aquini) [1620341] - [kernel] perf/hw_breakpoint: Modify breakpoint even if the new attr has disabled set (Mark Salter) [1643174] - [x86] KVM: vmx: hyper-v: don't pass EPT configuration info to vmx_hv_remote_flush_tlb() (Paolo Bonzini) [1636610] - [x86] KVM: x86: support CONFIG_KVM_AMD=y with CONFIG_CRYPTO_DEV_CCP_DD=m (Paolo Bonzini) [1636610] - [x86] kvm: nVMX: fix entry with pending interrupt if APICv is enabled (Paolo Bonzini) [1636610] - [x86] KVM: VMX: hide flexpriority from guest when disabled at the module level (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check for existence of secondary exec controls before accessing (Paolo Bonzini) [1636610] - [x86] KVM: x86: fix L1TF's MMIO GFN calculation (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: cut down decimal places in update interval dialog (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not use kvm_x86_ops->mpx_supported() directly (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled (Paolo Bonzini) [1636610] - [x86] KVM: x86: never trap MSR_KERNEL_GS_BASE (Paolo Bonzini) [1636610] - [x86] KVM: LAPIC: Fix pv ipis out-of-bounds access (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix loss of pending IRQ/NMI before entering L2 (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: re-animate display of dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: indicate dead guests as such (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: handle guest removals more gracefully (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: don't reset stats when setting PID filter for debugfs (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix updates for dead guests (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix handling of invalid paths in debugfs provider (Paolo Bonzini) [1636610] - [tools] tools/kvm_stat: fix python3 issues (Paolo Bonzini) [1636610] - [x86] KVM: x86: Unexport x86_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Rename emulate_instruction() to kvm_emulate_instruction() (Paolo Bonzini) [1636610] - [x86] KVM: x86: Do not re-{try, execute} after failed emulation in L2 (Paolo Bonzini) [1636610] - [x86] KVM: x86: Default to not allowing emulation retry in kvm_mmu_page_fault (Paolo Bonzini) [1636610] - [x86] KVM: x86: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE (Paolo Bonzini) [1636610] - [x86] KVM: x86: Invert emulation re-execute behavior to make it opt-in (Paolo Bonzini) [1636610] - [x86] KVM: x86: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation (Paolo Bonzini) [1636610] - [x86] KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO instr (Paolo Bonzini) [1636610] - [x86] KVM: SVM: remove unused variable dst_vaddr_end (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: avoid redundant double assignment of nested_run_pending (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Fix bad cleanup on error of get/set nested state IOCTLs (Paolo Bonzini) [1636610] - [tools] kvm: selftests: Add platform_info_test (Paolo Bonzini) [1636610] - [x86] KVM: x86: Control guest reads of MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] KVM: x86: Turbo bits in MSR_PLATFORM_INFO (Paolo Bonzini) [1636610] - [x86] nVMX x86: Check VPID value on vmentry of L2 guests (Paolo Bonzini) [1636610] - [x86] nVMX x86: check posted-interrupt descriptor addresss on vmentry of L2 (Paolo Bonzini) [1636610] - [x86] KVM: nVMX: Wake blocked vCPU in guest-mode if pending interrupt in virtual APICv (Paolo Bonzini) [1636610] - [x86] KVM: VMX: check nested state and CR4.VMXE against SMM (Paolo Bonzini) [1636610] - [x86] kvm: x86: make kvm_{load|put}_guest_fpu() static (Paolo Bonzini) [1636610] - [x86] x86/hyper-v: rename ipi_arg_{ex, non_ex} structures (Paolo Bonzini) [1636610] - [x86] KVM: VMX: use preemption timer to force immediate VMExit (Paolo Bonzini) [1636610] - [x86] KVM: VMX: modify preemption timer bit only when arming timer (Paolo Bonzini) [1636610] - [x86] KVM: VMX: immediately mark preemption timer expired only for zero value (Paolo Bonzini) [1636610] - [x86] KVM: SVM: Switch to bitmap_zalloc() (Paolo Bonzini) [1636610] - [lib] bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() (Paolo Bonzini) [1636610] - [x86] KVM/MMU: Fix comment in walk_shadow_page_lockless_end() (Paolo Bonzini) [1636610] - [tools] kvm: selftests: use -pthread instead of -lpthread (Paolo Bonzini) [1636610] - [tools] kvm: selftest: add dirty logging test (Paolo Bonzini) [1636610] - [tools] kvm: selftest: pass in extra memory when create vm (Paolo Bonzini) [1636610] - [tools] kvm: selftest: include the tools headers (Paolo Bonzini) [1636610] - [tools] kvm: selftest: unify the guest port macros (Paolo Bonzini) [1636610] - [x86] KVM: x86: don't reset root in kvm_mmu_setup() (Paolo Bonzini) [1636610] - [x86] kvm: mmu: Don't read PDPTEs when paging is not enabled (Paolo Bonzini) [1636610] - [x86] x86/kvm/lapic: always disable MMIO interface in x2APIC mode (Paolo Bonzini) [1636610] - [s390] KVM: s390: Make huge pages unavailable in ucontrol VMs (Paolo Bonzini) [1636610] - [s390] s390/mm: Check for valid vma before zapping in gmap_discard (Paolo Bonzini) [1636610] - [tools] selftests: add headers_install to lib.mk (Paolo Bonzini) [1636610] - [tools] selftests: kselftest: Remove outdated comment (Paolo Bonzini) [1636610] - [tools] selftests: android: move config up a level (Paolo Bonzini) [1636610] - [md] md: Avoid namespace collision with bitmap API (Paolo Bonzini) [1636610]- [cpufreq] cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC (Prarit Bhargava) [1654361] - [netdrv] nfp: flower: add ipv6 set flow label and hop limit offload (Pablo Cascon) [1651639] - [netdrv] nfp: flower: add ipv4 set ttl and tos offload (Pablo Cascon) [1651639] - [netdrv] ibmvnic: Update driver queues after change in ring size support (Steve Best) [1651947] - [netdrv] ibmvnic: Fix RX queue buffer cleanup (Steve Best) [1651947] - [netdrv] net/ibmnvic: Fix deadlock problem in reset (Steve Best) [1651947] - [netdrv] ibmvnic: fix accelerated VLAN handling (Steve Best) [1651947] - [netdrv] ibmvnic: Add ethtool private flag for driver-defined queue limits (Steve Best) [1651947] - [netdrv] ibmvnic: Introduce driver limits for ring sizes (Steve Best) [1651947] - [netdrv] ibmvnic: Increase maximum queue size limit (Steve Best) [1651947] - [netdrv] ibmvnic: remove ndo_poll_controller (Steve Best) [1651947] - [powerpc] powerpc/powernv/npu: Remove atsd_threshold debugfs setting (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Use size-based ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Reduce eieio usage when issuing ATSD invalidates (Steve Best) [1653661] - [powerpc] powerpc/powernv/npu: Add a debugfs setting to change ATSD threshold (Steve Best) [1653661] - [net] libceph: fall back to sendmsg for slab pages (Ilya Dryomov) [1653395] - [s390] s390/qeth: utilize virtual MAC for Layer2 OSD devices (Philipp Rudo) [1653246] - [fs] vfs: fix FIGETBSZ ioctl on an overlayfs file (Miklos Szeredi) [1651362] - [fs] ovl: fix decode of dir file handle with multi lower layers (Miklos Szeredi) [1651362] - [fs] ovl: fix missing override creds in link of a metacopy upper (Miklos Szeredi) [1651362] - [fs] ovl: automatically enable redirect_dir on metacopy=on (Miklos Szeredi) [1651362] - [fs] ovl: check whiteout in ovl_create_over_whiteout() (Miklos Szeredi) [1651362] - [fs] ovl: fix recursive oi->lock in ovl_link() (Miklos Szeredi) [1651362] - [fs] ovl: fix error handling in ovl_verify_set_fh() (Miklos Szeredi) [1651362] - [mm] mm, memory_hotplug: check zone_movable in has_unmovable_pages (Baoquan He) [1643839] - [netdrv] hv_netvsc: fix vf serial matching with pci slot info (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: remove ndo_poll_controller (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: pair VF based on serial number (Vitaly Kuznetsov) [1637519] - [netdrv] hv_netvsc: fix schedule in RCU context (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Fix return value check in hv_pci_assign_slots() (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: support reporting serial number as slot information (Vitaly Kuznetsov) [1637519] - [pci] PCI: hv: Replace GFP_ATOMIC with GFP_KERNEL in new_pcichild_device() (Vitaly Kuznetsov) [1637519] - [char] ipmi: Fix timer race with module unload (Robert Richter) [1649812] - [arm64] arm64: hugetlb: Avoid unnecessary clearing in huge_ptep_set_access_flags (Christoph von Recklinghausen) [1635192] - [arm64] arm64: hugetlb: Fix handling of young ptes (Christoph von Recklinghausen) [1635192] - [mm] mm: Preserve _PAGE_DEVMAP across mprotect() calls (Jeff Moyer) [1647647]- [crypto] crypto: vmx - Fix sleep-in-atomic bugs (Steve Best) [1653662] - [netdrv] net: ena: update driver version from 2.0.1 to 2.0.2 (John Linville) [1634044] - [netdrv] net: ena: fix crash during ena_remove() (John Linville) [1634044] - [netdrv] net: ena: fix crash during failed resume from hibernation (John Linville) [1634044] - [netdrv] net: ena: enable CONFIG_ENA_ETHERNET for aarch64 (John Linville) [1634044] - [netdrv] net: ena: enable Low Latency Queues (John Linville) [1634044] - [netdrv] net: ena: Fix Kconfig dependency on X86 (John Linville) [1634044] - [netdrv] net: ena: fix indentations in ena_defs for better readability (John Linville) [1634044] - [netdrv] net: ena: update driver version to 2.0.1 (John Linville) [1634044] - [netdrv] net: ena: remove redundant parameter in ena_com_admin_init() (John Linville) [1634044] - [netdrv] net: ena: change rx copybreak default to reduce kernel memory pressure (John Linville) [1634044] - [netdrv] net: ena: limit refill Rx threshold to 256 to avoid latency issues (John Linville) [1634044] - [netdrv] net: ena: explicit casting and initialization, and clearer error handling (John Linville) [1634044] - [netdrv] net: ena: use CSUM_CHECKED device indication to report skb's checksum status (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_netdev (John Linville) [1634044] - [netdrv] net: ena: add functions for handling Low Latency Queues in ena_com (John Linville) [1634044] - [netdrv] net: ena: introduce Low Latency Queues data structures according to ENA spec (John Linville) [1634044] - [netdrv] net: ena: complete host info to match latest ENA spec (John Linville) [1634044] - [netdrv] net: ena: minor performance improvement (John Linville) [1634044] - [netdrv] net: ena: fix auto casting to boolean (John Linville) [1634044] - [netdrv] net: ena: fix NULL dereference due to untimely napi initialization (John Linville) [1634044] - [netdrv] net: ena: fix rare bug when failed restart/resume is followed by driver removal (John Linville) [1634044] - [netdrv] net: ena: fix warning in rmmod caused by double iounmap (John Linville) [1634044] - [netdrv] net: ena: remove ndo_poll_controller (John Linville) [1634044] - [netdrv] net: ena: fix incorrect usage of memory barriers (John Linville) [1634044] - [netdrv] net: ena: fix missing calls to READ_ONCE (John Linville) [1634044] - [netdrv] net: ena: fix missing lock during device destruction (John Linville) [1634044] - [netdrv] net: ena: fix potential double ena_destroy_device() (John Linville) [1634044] - [netdrv] net: ena: fix device destruction to gracefully free resources (John Linville) [1634044] - [netdrv] net: ena: fix driver when PAGE_SIZE == 64kB (John Linville) [1634044] - [netdrv] net: ena: fix surprise unplug NULL dereference kernel crash (John Linville) [1634044] - [s390] s390/zcrypt: reinit ap queue state machine during device probe (Philipp Rudo) [1653668] - [s390] s390/kdump: Make elfcorehdr size calculation ABI compliant (Philipp Rudo) [1653245] - [s390] s390/kdump: Fix elfcorehdr size calculation (Philipp Rudo) [1653245] - [block] block: fix 32 bit overflow in __blkdev_issue_discard() (Ming Lei) [1638826] - [ata] libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD (Ming Lei) [1638826] - [block] block: copy ioprio in __bio_clone_fast() and bounce (Ming Lei) [1638826] - [trace] kyber: fix wrong strlcpy() size in trace_kyber_latency() (Ming Lei) [1638826] - [block] floppy: fix race condition in __floppy_read_block_0() (Ming Lei) [1638826] - [block] block: make blk_try_req_merge() static (Ming Lei) [1638826] - [block] block: remove dead queue members (Ming Lei) [1638826] - [block] block: clean up dead code that is now redundant (Ming Lei) [1638826] - [nvme] nvme: fix boot hang with only being able to get one IRQ vector (Ming Lei) [1638826] - [block] ide: don't clear special on ide_queue_rq() entry (Ming Lei) [1638826] - [block] null_blk: remove unused nullb device (Ming Lei) [1638826] - [block] ide: don't use req->special (Ming Lei) [1638826] - [block] pd: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] aoe: replace ->special use with private data in the request (Ming Lei) [1638826] - [block] skd_main: don't use req->special (Ming Lei) [1638826] - [block] nullb: remove leftover legacy request code (Ming Lei) [1638826] - [scsi] fnic: fix fnic_scsi_host_{start,end}_tag (Ming Lei) [1638826] - [block] block: remove set but not used variable 'et' (Ming Lei) [1638826] - [block] block: remove the BLKPREP_* values. (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from device handler ->prep_fn (Ming Lei) [1638826] - [scsi] scsi: return blk_status_t from scsi_init_io and ->init_command (Ming Lei) [1638826] - [scsi] scsi: clean up error handling in scsi_init_io (Ming Lei) [1638826] - [scsi] scsi: push blk_status_t up into scsi_setup_{fs,scsi}_cmnd (Ming Lei) [1638826] - [scsi] scsi: simplify scsi_prep_state_check (Ming Lei) [1638826] - [block] ide: cleanup ->prep_rq calling convention (Ming Lei) [1638826] - [block] block: remove req->timeout_list (Ming Lei) [1638826] - [block] blk-mq: provide a helper to check if a queue is busy (Ming Lei) [1638826] - [block] blk-mq-tag: change busy_iter_fn to return whether to continue or not (Ming Lei) [1638826] - [block] ms_block: remove unused pointer 'set' (Ming Lei) [1638826] - [block] sunvdc: fix compiler warning (Ming Lei) [1638826] - [nvme] nvme: add separate poll queue map (Ming Lei) [1638826] - [block] block: add REQ_HIPRI and inherit it from IOCB_HIPRI (Ming Lei) [1638826] - [nvme] nvme: utilize two queue maps, one for reads and one for writes (Ming Lei) [1638826] - [block] blk-mq: initial support for multiple queue maps (Ming Lei) [1638826] - [block] blk-mq: improve plug list sorting (Ming Lei) [1638826] - [block] blk-mq: cleanup and improve list insertion (Ming Lei) [1638826] - [block] blk-mq: cache request hardware queue mapping (Ming Lei) [1638826] - [block] blk-mq: separate number of hardware queues from nr_cpu_ids (Ming Lei) [1638826] - [block] blk-mq: support multiple hctx maps (Ming Lei) [1638826] - [block] blk-mq: add 'type' attribute to the sysfs hctx directory (Ming Lei) [1638826] - [block] blk-mq: allow software queue to map to multiple hardware queues (Ming Lei) [1638826] - [block] blk-mq: pass in request/bio flags to queue mapping (Ming Lei) [1638826] - [block] blk-mq: provide dummy blk_mq_map_queue_type() helper (Ming Lei) [1638826] - [block] blk-mq: abstract out queue map (Ming Lei) [1638826] - [block] blk-mq: kill q->mq_map (Ming Lei) [1638826] - [kernel] genirq/affinity: Add support for allocating interrupt sets (Ming Lei) [1638826] - [kernel] genirq/affinity: Pass first vector to __irq_build_affinity_masks() (Ming Lei) [1638826] - [kernel] genirq/affinity: Move two stage affinity spreading into a helper function (Ming Lei) [1638826] - [kernel] genirq/affinity: Spread IRQs to all available NUMA nodes (Ming Lei) [1638826] - [block] block: kill request ->cpu member (Ming Lei) [1638826] - [block] block: get rid of q->softirq_done_fn() (Ming Lei) [1638826] - [block] block: get rid of blk_queued_rq() (Ming Lei) [1638826] - [block] blk-merge: kill dead queue lock held check (Ming Lei) [1638826] - [block] block: remove req_no_special_merge() from merging code (Ming Lei) [1638826] - [block] block: kill request slab cache (Ming Lei) [1638826] - [block] block: remove request_list code (Ming Lei) [1638826] - [block] bsg: move bsg-lib parts outside of request queue (Ming Lei) [1638826] - [block] block: kill legacy parts of timeout handling (Ming Lei) [1638826] - [block] block: remove __blk_put_request() (Ming Lei) [1638826] - [block] block: get rid of MQ scheduler ops union (Ming Lei) [1638826] - [block] block: remove dead elevator code (Ming Lei) [1638826] - [block] block: remove legacy IO schedulers (Ming Lei) [1638826] - [block] block: cleanup kick/queued handling (Ming Lei) [1638826] - [block] block: remove non mq parts from the flush code (Ming Lei) [1638826] - [block] block: remove legacy rq tagging (Ming Lei) [1638826] - [block] blk-cgroup: remove legacy queue bypassing (Ming Lei) [1638826] - [block] blk-wbt: kill check for legacy queue type (Ming Lei) [1638826] - [block] block: remove blk_complete_request() (Ming Lei) [1638826] - [block] bsg: convert to use blk-mq (Ming Lei) [1638826] - [block] bsg: provide bsg_remove_queue() helper (Ming Lei) [1638826] - [block] bsg: pass in desired timeout handler (Ming Lei) [1638826] - [s390] dasd: remove dead code (Ming Lei) [1638826] - [block] block: remove q->lld_busy_fn() (Ming Lei) [1638826] - [scsi] scsi: kill off the legacy IO path (Ming Lei) [1638826] - [scsi] scsi: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: provide mq_ops->busy() hook (Ming Lei) [1638826] - [block] blk-mq: remove legacy check in queue blk_freeze_queue() (Ming Lei) [1638826] - [block] blk-mq: remove the request_list usage (Ming Lei) [1638826] - [block] ide: convert to blk-mq (Ming Lei) [1638826] - [block] mspro_block: convert to blk-mq (Ming Lei) [1638826] - [block] ms_block: convert to blk-mq (Ming Lei) [1638826] - [block] sunvdc: convert to blk-mq (Ming Lei) [1638826] - [block] null_blk: Add conventional zone configuration for zoned support (Ming Lei) [1638826] - [ata] libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9 (Ming Lei) [1638826] - [block] block, bfq: fix asymmetric scenarios detection (Ming Lei) [1638826] - [cdrom] gdrom: fix mistake in assignment of error (Ming Lei) [1638826] - [block] blk-mq: place trace_block_getrq() in correct place (Ming Lei) [1638826] - [block] block: Introduce blk_revalidate_disk_zones() (Ming Lei) [1638826] - [block] block: add a report_zones method (Ming Lei) [1638826] - [block] block: Expose queue nr_zones in sysfs (Ming Lei) [1638826] - [block] block: Improve zone reset execution (Ming Lei) [1638826] - [block] block: Introduce BLKGETNRZONES ioctl (Ming Lei) [1638826] - [block] block: Introduce BLKGETZONESZ ioctl (Ming Lei) [1638826] - [block] block: Limit allocation of zone descriptors for report zones (Ming Lei) [1638826] - [block] block: Introduce blkdev_nr_zones() helper (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Fix sd_zbc_check_zones() error checks (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Reduce boot device scan and revalidate time (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Rearrange code (Ming Lei) [1638826] - [scsi] scsi: sd_zbc: Remove an assignment from sd_zbc_setup_report_cmnd() (Ming Lei) [1638826] - [scsi] scsi: sd: don't crash the host on invalid commands (Ming Lei) [1638826] - [pci] PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice (Ming Lei) [1638826] - [fs] f2fs: remove request_list check in is_idle() (Ming Lei) [1638826] - [scsi] scsi: osd: initiator should use mq variant of request ending (Ming Lei) [1638826] - [scsi] scsi: fnic: replace gross legacy tag hack with blk-mq hack (Ming Lei) [1638826] - [infiniband] ib_srp: Remove WARN_ON in srp_terminate_io() (Ming Lei) [1638826] - [scsi] scsi: ufs: Disable blk-mq for now (Ming Lei) [1638826] - [block] sx8: convert to blk-mq (Ming Lei) [1638826] - [block] z2ram: convert to blk-mq (Ming Lei) [1638826] - [cdrom] gdrom: convert to blk-mq (Ming Lei) [1638826] - [block] floppy: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: convert to blk-mq (Ming Lei) [1638826] - [block] ataflop: fix error handling during setup (Ming Lei) [1638826] - [block] ataflop: fold headers into C file (Ming Lei) [1638826] - [block] amiflop: convert to blk-mq (Ming Lei) [1638826] - [block] amiflop: clean up on errors during setup (Ming Lei) [1638826] - [block] amiflop: fold headers into C file (Ming Lei) [1638826] - [block] swim3: convert to blk-mq (Ming Lei) [1638826] - [block] swim3: add real error handling in setup (Ming Lei) [1638826] - [block] swim: convert to blk-mq (Ming Lei) [1638826] - [block] swim: fix cleanup on setup error (Ming Lei) [1638826] - [mtd] mtd_blkdevs: convert to blk-mq (Ming Lei) [1638826] - [block] xsysace: convert to blk-mq (Ming Lei) [1638826] - [block] paride: convert pf to blk-mq (Ming Lei) [1638826] - [block] paride: convert pd to blk-mq (Ming Lei) [1638826] - [block] paride: convert pcd to blk-mq (Ming Lei) [1638826] - [block] ps3disk: convert to blk-mq (Ming Lei) [1638826] - [block] blk-mq: provide helper for setting up an SQ queue and tag set (Ming Lei) [1638826] - [block] null_blk: remove set but not used variable 'q' (Ming Lei) [1638826] - [cdrom] cdrom: don't attempt to fiddle with cdo->capability (Ming Lei) [1638826] - [block] block: remove bogus check for queue_lock assignment (Ming Lei) [1638826] - [block] null_blk: remove legacy IO path (Ming Lei) [1638826] - [block] um: Convert ubd driver to blk-mq (Ming Lei) [1638826] - [block] skd: fixup usage of legacy IO API (Ming Lei) [1638826] - [block] aoe: convert aoeblk to blk-mq (Ming Lei) [1638826] - [block] ide: remove redundant variables queue_run_ms and left (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion convert BUGs to WARNs (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion hints on fastpath (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_reprep helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_action helper (Ming Lei) [1638826] - [scsi] scsi: core: add scsi_io_completion_nz_result function (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: rename variables (Ming Lei) [1638826] - [scsi] scsi: core: scsi_io_completion: comment on end_request return (Ming Lei) [1638826] - [scsi] scsi: core: use blk_mq_run_hw_queues in scsi_kick_queue (Ming Lei) [1638826] - [scsi] scsi: sg: remove bad blk_end_request_all() call (Ming Lei) [1638826] - [block] blk-mq: complete req in softirq context in case of single queue (Ming Lei) [1638826] - [block] block, bfq: improve asymmetric scenarios detection (Ming Lei) [1638826] - [block] block: remove redundant 'default n' from Kconfig-s (Ming Lei) [1638826] - [block] blk-mq-debugfs: Also show requests that have not yet been started (Ming Lei) [1638826] - [block] block: Finish renaming REQ_DISCARD into REQ_OP_DISCARD (Ming Lei) [1638826] - [block] kyber: fix integer overflow of latency targets on 32-bit (Ming Lei) [1638826] - [block] kyber: add tracepoints (Ming Lei) [1638826] - [block] kyber: implement improved heuristics (Ming Lei) [1638826] - [block] kyber: don't make domain token sbitmap larger than necessary (Ming Lei) [1638826] - [block] block: export blk_stat_enable_accounting() (Ming Lei) [1638826] - [block] block: move call of scheduler's ->completed_request() hook (Ming Lei) [1638826] - [block] blk-mq: Enable support for runtime power management (Ming Lei) [1638826] - [block] block: Make blk_get_request() block for non-PM requests while suspended (Ming Lei) [1638826] - [block] block: Allow unfreezing of a queue while requests are in progress (Ming Lei) [1638826] - [lib] percpu-refcount: Introduce percpu_ref_resurrect() (Ming Lei) [1638826] - [block] block: Schedule runtime resume earlier (Ming Lei) [1638826] - [block] block: Split blk_pm_add_request() and blk_pm_put_request() (Ming Lei) [1638826] - [block] block, scsi: Change the preempt-only flag into a counter (Ming Lei) [1638826] - [block] block: Move power management code into a new source file (Ming Lei) [1638826] - [block] Blk-throttle: update to use rbtree with leftmost node cached (Ming Lei) [1638826] - [block] block: use bio_add_page in bio_iov_iter_get_pages (Ming Lei) [1638826] - [block] blok, bfq: do not plug I/O if all queues are weight-raised (Ming Lei) [1638826] - [block] block, bfq: inject other-queue I/O into seeky idle queues on NCQ flash (Ming Lei) [1638826] - [block] block, bfq: correctly charge and reset entity service in all cases (Ming Lei) [1638826]- [rpmspec] redhat: fix bpf_samples build (Jiri Benc) [1611579] - [fs] mnt: fix __detach_mounts infinite loop (Benjamin Coddington) [1628736] - [pci] pcie: Enable Broadom iProc PCIE and mark it is as tech preview (Mark Langsdorf) [1576958] - [pci] PCI/ACPI: Add iProc PCIe MCFG quirk (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Add ACPI/ECAM support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Remove PAXC slot check to allow VF support (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reduce inbound/outbound mapping print level (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Reject unconfigured physical functions from PAXC (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Disable MSI parsing in certain PAXC blocks (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Fix up corrupted PAXC root complex config registers (Mark Langsdorf) [1576958] - [pci] PCI: iproc: Activate PAXC bridge quirk for more devices (Mark Langsdorf) [1576958]- [s390] s390/mm: fix mis-accounting of pgtable_bytes (Joe Lawrence) [1644481] - [mm] mm: add mm_pxd_folded checks to pgtable_bytes accounting functions (Joe Lawrence) [1644481] - [mm] mm: introduce mm_[p4d|pud|pmd]_folded (Joe Lawrence) [1644481] - [mm] mm: make the __PAGETABLE_PxD_FOLDED defines non-empty (Joe Lawrence) [1644481] - [x86] x86/cpu/vmware: Do not trace vmware_sched_clock() (Vitaly Kuznetsov) [1650273] - [fs] fuse: fix possibly missed wake-up after abort (Lukas Czerner) [1649244] - [fs] fuse: fix leaked notify reply (Lukas Czerner) [1649244] - [fs] fuse: fix blocked_waitq wakeup (Lukas Czerner) [1649244] - [fs] fuse: set FR_SENT while locked (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_write() (Lukas Czerner) [1649244] - [fs] fuse: Fix use-after-free in fuse_dev_do_read() (Lukas Czerner) [1649244] - [fs] fuse: Add missed unlock_page() to fuse_readpages_fill() (Lukas Czerner) [1649244] - [fs] fuse: Don't access pipe->buffers without pipe_lock() (Lukas Czerner) [1649244] - [fs] fuse: fix initial parallel dirops (Lukas Czerner) [1649244] - [fs] fuse: Fix oops at process_init_reply() (Lukas Czerner) [1649244] - [fs] fuse: umount should wait for all requests (Lukas Czerner) [1649244] - [fs] fuse: fix unlocked access to processing queue (Lukas Czerner) [1649244] - [fs] fuse: fix double request_end() (Lukas Czerner) [1649244] - [fs] fuse: fix use-after-free in fuse_direct_IO() (Lukas Czerner) [1599195]- [firmware] efi: Fix debugobjects warning on 'efi_rts_work' (Waiman Long) [1652190] - [rpmspec] kernel.spec: Do not zip modules on noarch builds (Prarit Bhargava) [1646471] - [iommu] iommu/amd: Clear memory encryption mask from physical address (Gary Hook) [1640384]- [powerpc] powerpc/mm/radix: Only need the Nest MMU workaround for R -> RW transition (Steve Best) [1651276] - [powerpc] powerpc/mm/books3s: Add new pte bit to mark pte temporarily invalid (Steve Best) [1651276] - [powerpc] powerpc/tm: Fix HFSCR bit for no suspend case (Steve Best) [1651275]- [powerpc] powerpc/powernv: Fix concurrency issue with npu->mmio_atsd_usage (Steve Best) [1651267] - [tools] perf tools: Remove ext from struct kmod_path (Jiri Olsa) [1581390] - [tools] perf tools: Add gzip_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add lzma_is_compressed function (Jiri Olsa) [1581390] - [tools] perf tools: Add is_compressed callback to compressions array (Jiri Olsa) [1581390] - [tools] perf tools: Move the temp file processing into decompress_kmodule (Jiri Olsa) [1581390] - [tools] perf tools: Use compression id in decompress_kmodule() (Jiri Olsa) [1581390] - [tools] perf tools: Store compression id into struct dso (Jiri Olsa) [1581390] - [tools] perf tools: Add compression id into 'struct kmod_path' (Jiri Olsa) [1581390] - [tools] perf tools: Make is_supported_compression() static (Jiri Olsa) [1581390] - [tools] perf tools: Make decompress_to_file() function static (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in __open_dso() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in symbol__disassemble() (Jiri Olsa) [1581390] - [tools] perf tools: Get rid of dso__needs_decompress() call in read_object_code() (Jiri Olsa) [1581390] - [rpmspec] redhat: Enable kernel-tools (for kvm_stat) on s390x, too (Thomas Huth) [1631222]- [drm] drm/atomic_helper: Stop modesets on unregistered connectors harder (Lyude Paul) [1631575] - [drm] drm/nouveau: Fix nv50_mstc->best_encoder() (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Allow DPMS On<->Off changes for unregistered connectors (Lyude Paul) [1631575] - [drm] drm/i915: Fix intel_dp_mst_best_encoder() (Lyude Paul) [1631575] - [drm] drm/i915: Skip vcpi allocation for MSTB ports that are gone (Lyude Paul) [1631575] - [drm] drm/i915: Don't unset intel_connector->mst_port (Lyude Paul) [1631575] - [drm] drm/atomic_helper: Disallow new modesets on unregistered connectors (Lyude Paul) [1631575] - [s390] s390/qeth: fix HiperSockets sniffer (Philipp Rudo) [1649773] - [s390] s390/qeth: report 25Gbit link speed (Philipp Rudo) [1649772] - [s390] s390/qeth: sanitize strings in debug messages (Philipp Rudo) [1649770] - [s390] s390/qeth: fix initial operstate (Philipp Rudo) [1649769] - [s390] s390/qeth: unregister netdevice only when registered (Philipp Rudo) [1649769] - [powerpc] powerpc/64s: consolidate MCE counter increment (Steve Best) [1633550] - [powerpc] powerpc/64s: move machine check SLB flushing to mm/slb.c (Steve Best) [1633550] - [powerpc] powernv/pseries: consolidate code for mce early handling (Steve Best) [1633550] - [powerpc] powerpc/pseries: Dump the SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Display machine check error details (Steve Best) [1633550] - [powerpc] powerpc/pseries: Flush SLB contents on SLB MCE errors (Steve Best) [1633550] - [powerpc] powerpc/pseries: Define MCE error event section (Steve Best) [1633550] - [powerpc] powerpc/pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX (Steve Best) [1633550] - [powerpc] powerpc/pseries: Defer the logging of rtas error to irq work queue (Steve Best) [1633550] - [powerpc] powerpc/pseries: Fix endianness while restoring of r3 in MCE handler (Steve Best) [1633550] - [cdrom] cdrom: fix improper type cast, which can leat to information leak (Maurizio Lombardi) [1650476]- [drm] drm/amdgpu/pm: Fix potential Spectre v1 (Rob Clark) [1637115] - [drm] drm/i915/kvmgt: Fix potential Spectre v1 (Rob Clark) [1637115] - [fs] gfs2: Fix metadata read-ahead during truncate (2) (Andreas Grunbacher) [1647982] - [block] block: make sure writesame bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: cleanup __blkdev_issue_discard() (Ming Lei) [1648750] - [block] block: make sure discard bio is aligned with logical block size (Ming Lei) [1648750] - [block] block: Clear kernel memory before copying to user (Ming Lei) [1648752] - [block] block: respect virtual boundary mask in bvecs (Ming Lei) [1648756] - [block] xen: don't include from and (Ming Lei) [1648756] - [block] block: remove ARCH_BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] xen: provide a prototype for xen_biovec_phys_mergeable in xen.h (Ming Lei) [1648756] - [block] xen: remove the xen_biovec_phys_mergeable export (Ming Lei) [1648756] - [block] arm: remove the unused BIOVEC_MERGEABLE define (Ming Lei) [1648756] - [block] block: don't include bug.h from bio.h (Ming Lei) [1648756] - [block] block: don't include io.h from bio.h (Ming Lei) [1648756] - [block] block: remove bvec_to_phys (Ming Lei) [1648756] - [block] block: merge BIOVEC_SEG_BOUNDARY into biovec_phys_mergeable (Ming Lei) [1648756] - [block] block: add a missing BIOVEC_SEG_BOUNDARY check in bio_add_pc_page (Ming Lei) [1648756] - [block] block: simplify BIOVEC_PHYS_MERGEABLE (Ming Lei) [1648756] - [block] block: move req_gap_back_merge to blk.h (Ming Lei) [1648756] - [block] block: move req_gap_{back,front}_merge to blk-merge.c (Ming Lei) [1648756] - [block] block: move integrity_req_gap_{back,front}_merge to blk.h (Ming Lei) [1648756] - [fs] gfs2: Fix iomap buffer head reference counting bug (Andreas Grunbacher) [1647073] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k1 (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Initialize port speed to avoid setting lower speed (Himanshu Madhani) [1615896] - [scsi] scsi: qla2xxx: Fix incorrect port speed being set for FC adapters (Himanshu Madhani) [1615896] - [block] block: brd: associate with queue until adding disk (Ming Lei) [1644602] - [block] block: call rq_qos_exit() after queue is frozen (Ming Lei) [1641558] - [block] block: fix the DISCARD request merge (Ming Lei) [1646776] - [block] blk-mq: fallback to previous nr_hw_queues when updating fails (Ming Lei) [1642218] - [block] blk-mq: realloc hctx when hw queue is mapped to another node (Ming Lei) [1642218] - [block] blk-mq: change gfp flags to GFP_NOIO in blk_mq_realloc_hw_ctxs (Ming Lei) [1642218] - [block] blk-mq: adjust debugfs and sysfs register when updating nr_hw_queues (Ming Lei) [1642218] - [block] block: remove bio_rewind_iter() (Ming Lei) [1642208]- [fs] jbd2: fix use after free in jbd2_log_do_checkpoint() (Lukas Czerner) [1644694] - [fs] ext4: initialize retries variable in ext4_da_write_inline_data_begin() (Lukas Czerner) [1644694] - [fs] ext4: fix build error when DX_DEBUG is defined (Lukas Czerner) [1644694]- [pinctrl] pinctrl: intel: Add Ice Lake PCH pin controller support (David Arcari) [1483413] - [netdrv] nfp: flower: fix vlan match by checking both vlan id and vlan pcp (Pablo Cascon) [1645220] - [netdrv] nfp: flower: reject tunnel encap with ipv6 outer headers for offloading (Pablo Cascon) [1646644] - [netdrv] nfp: populate bus-info on representors (Pablo Cascon) [1643998] - [powerpc] KVM: PPC: Validate TCEs against preregistered memory page sizes (David Gibson) [1625821] - [powerpc] KVM: PPC: Inform the userspace about TCE update failures (David Gibson) [1625821] - [powerpc] KVM: PPC: Book3S: Fix guest DMA when guest partially backed by THP pages (David Gibson) [1625821]- [kernel] locking/lockdep: Fix debug_locks off performance problem (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove duplicated 'lock_class_ops' percpu array (Waiman Long) [1647560] - [kernel] locking/lockdep: Make class->ops a percpu counter and move it under CONFIG_DEBUG_LOCKDEP=y (Waiman Long) [1647560] - [kernel] locking/lockdep: Add a faster path in __lock_release() (Waiman Long) [1647560] - [kernel] locking/lockdep: Eliminate redundant IRQs check in __lock_acquire() (Waiman Long) [1647560] - [kernel] locking/lockdep: Remove add_chain_cache_classes() (Waiman Long) [1647560] - [fs] gfs2: Put bitmap buffers in put_super (Andreas Grunbacher) [1647073] - [scsi] scsi: hpsa: limit transfer length to 1MB, not 512kB (Joseph Szczypek) [1643956] - [netdrv] nfp: report FW vNIC stats in interface stats (Pablo Cascon) [1645032] - [rpmspec] spec: Add bpftool debuginfo package (Jiri Olsa) [1633018] - [crypto] crypto: chelsio: Fix memory corruption in DMA Mapped buffers (Arjun Vynipadath) [1631750] - [cdrom] cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status (Maurizio Lombardi) [1627732] {CVE-2018-16658}- [kernel] srcu: Make early-boot call_srcu() reuse workqueue lists (Waiman Long) [1644375] - [tools] rcutorture: Test early boot call_srcu() (Waiman Long) [1644375] - [kernel] srcu: Make call_srcu() available during very early boot (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_state.ofl_lock to raw_spinlock_t (Waiman Long) [1644375] - [kernel] rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completed (Waiman Long) [1644375] - [kernel] rcu: Switch ->dynticks to rcu_data structure, remove rcu_dynticks (Waiman Long) [1644375] - [kernel] rcu: Switch dyntick nesting counters to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch urgent quiescent-state requests to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch lazy counts to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch last accelerate/advance to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Switch ->tick_nohz_enabled_snap to rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Merge rcu_dynticks structure into rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_dynticks_snap() from Tiny RCU (Waiman Long) [1644375] - [kernel] rcu: Convert "1UL << x" to "BIT(x)" (Waiman Long) [1644375] - [kernel] rcu: Avoid resched_cpu() when rescheduling the current CPU (Waiman Long) [1644375] - [kernel] rcu: More aggressively enlist scheduler aid for nohz_full CPUs (Waiman Long) [1644375] - [kernel] rcu: Compute jiffies_till_sched_qs from other kernel parameters (Waiman Long) [1644375] - [kernel] rcu: Provide functions for determining if call_rcu() has been invoked (Waiman Long) [1644375] - [kernel] rcu: Eliminate ->rcu_qs_ctr from the rcu_dynticks structure (Waiman Long) [1644375] - [kernel] rcu: Motivate Tiny RCU forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Dump reader protection sequence if failures or close calls (Waiman Long) [1644375] - [kernel] rcu: Provide improved interrupt-from-idle check in rcu_check_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Make need_resched() respond to urgent RCU-QS needs (Waiman Long) [1644375] - [kernel] rcu: Inline _rcu_barrier() into its sole remaining caller (Waiman Long) [1644375] - [kernel] rcu: Define rcu_all_qs() only in !PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Remove !PREEMPT code from rcu_note_voluntary_context_switch() (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in update.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree_exp.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tree.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in tiny.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in srcutree.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcutorture.c (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcu.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in Kconfig (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate_wait.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rculist.h (Waiman Long) [1644375] - [kernel] rcu: Clean up flavor-related definitions and comments in rcupdate.h (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused rcutorture APIs (Waiman Long) [1644375] - [kernel] rcuperf: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcutorture: Remove the "rcu_bh" and "sched" torture types (Waiman Long) [1644375] - [kernel] rcu: Stop testing RCU-bh and RCU-sched (Waiman Long) [1644375] - [kernel] rcutorture: Add RCU-bh and RCU-sched support for extended readers (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-sched update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Consolidate RCU-bh update-side function definitions (Waiman Long) [1644375] - [kernel] rcu: Pull rcu_gp_kthread() FQS loop into separate function (Waiman Long) [1644375] - [kernel] rcu: Inline increment_cpu_stall_ticks() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Fix typo in force_qs_rnp()'s parameter's parameter (Waiman Long) [1644375] - [kernel] rcu: Eliminate initialization-time use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate RCU-barrier use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate quiescent-state and grace-period-nonstart use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate callback-invocation/invocation use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate grace-period management code use of rsp (Waiman Long) [1644375] - [kernel] rcu: Eliminate stall-warning use of rsp (Waiman Long) [1644375] - [kernel] rcu: Restructure rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Simplify rcutorture_get_gp_data() (Waiman Long) [1644375] - [kernel] rcu: Remove for_each_rcu_flavor() flavor-traversal macro (Waiman Long) [1644375] - [kernel] rcu: Remove last non-flavor-traversal rsp local variable from tree_plugin.h (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data structure's ->rsp field (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_node tree accessor macros (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from expedited grace-period functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from no-CBs CPU functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall_info() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_spawn_one_boost_kthread() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from dump_blkd_tasks() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_print_detail_task_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_init_one() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_boot_init_percpu_data() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from _rcu_barrier() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_pending() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __call_rcu() and friend (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __rcu_process_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from force-quiescent-state functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_do_batch() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from CPU hotplug functions (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_quiescent_state() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread() and friends (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_slow() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from __note_gp_changes() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_advance_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs_unlocked() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_accelerate_cbs() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_kthread_wake() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_future_gp_cleanup() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from check_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from print_other_cpu_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_stall_kick_kthreads() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_dump_cpu_stacks() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_check_gp_kthread_starvation() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from record_gp_stall_check_time() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_get_root() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_gp_in_progress() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rdp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_unblock_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rsp() (Waiman Long) [1644375] - [kernel] rcu: Remove rsp parameter from rcu_report_qs_rnp() (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_data_p pointer to default rcu_data structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state_p pointer to default rcu_state structure (Waiman Long) [1644375] - [kernel] rcu: Remove rcu_state structure's ->rda field (Waiman Long) [1644375] - [kernel] rcu: Eliminate rcu_state structure's ->call field (Waiman Long) [1644375] - [kernel] rcu: Remove RCU_STATE_INITIALIZER() (Waiman Long) [1644375] - [kernel] rcu: Express Tiny RCU updates in terms of RCU rather than RCU-sched (Waiman Long) [1644375] - [kernel] rcu: Define RCU-sched API in terms of RCU for Tree RCU PREEMPT builds (Waiman Long) [1644375] - [kernel] rcu: Fix typo in rcu_get_gp_kthreads_prio() header comment (Waiman Long) [1644375] - [kernel] rcu: Drop "wake" parameter from rcu_report_exp_rdp() (Waiman Long) [1644375] - [kernel] rcu: Update comments and help text for no more RCU-bh updaters (Waiman Long) [1644375] - [kernel] rcu: Define RCU-bh update API in terms of RCU (Waiman Long) [1644375] - [kernel] rcu: Report expedited grace periods at context-switch time (Waiman Long) [1644375] - [kernel] rcu: Apply RCU-bh QSes to RCU-sched and RCU-preempt when safe (Waiman Long) [1644375] - [kernel] rcu: Add warning to detect half-interrupts (Waiman Long) [1644375] - [kernel] rcu: Remove now-unused ->b.exp_need_qs field from the rcu_special union (Waiman Long) [1644375] - [kernel] rcu: Allow processing deferred QSes for exiting RCU-preempt readers (Waiman Long) [1644375] - [kernel] rcutorture: Test extended "rcu" read-side critical sections (Waiman Long) [1644375] - [kernel] rcu: Defer reporting RCU-preempt quiescent states when disabled (Waiman Long) [1644375] - [kernel] rcu: Refactor rcu_{nmi,irq}_{enter,exit}() (Waiman Long) [1644375] - [documentation] doc: Fix broken HTML directive (Waiman Long) [1644375] - [documentation] doc: Update removal of RCU-bh/sched update machinery (Waiman Long) [1644375] - [kernel] rcutorture: Maintain self-propagating CB only during forward-progress test (Waiman Long) [1644375] - [kernel] rcutorture: Check GP completion at stutter end (Waiman Long) [1644375] - [kernel] rcutorture: Print forward-progress test interval on error (Waiman Long) [1644375] - [kernel] rcutorture: Adjust number of reader kthreads per CPU-hotplug operations (Waiman Long) [1644375] - [kernel] rcutorture: Reduce priority of forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Limit reader duration if irq or bh disabled (Waiman Long) [1644375] - [kernel] rcutorture: Increase rcu_read_delay() longdelay_ms (Waiman Long) [1644375] - [kernel] rcutorture: Add self-propagating callback to forward-progress testing (Waiman Long) [1644375] - [kernel] rcutorture: Vary forward-progress test interval (Waiman Long) [1644375] - [kernel] rcutorture: Avoid no-test complaint if too few forward-progress tries (Waiman Long) [1644375] - [kernel] rcutorture: Also use GP sequence to judge forward progress (Waiman Long) [1644375] - [kernel] rcutorture: Add forward-progress tests for RCU grace periods (Waiman Long) [1644375] - [tools] rcutorture: Remove TREE06 and TREE08 from the default test list (Waiman Long) [1644375] - [kernel] rcuperf: Warn on bad perf type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Warn on bad torture type for built-in tests (Waiman Long) [1644375] - [kernel] rcutorture: Force occasional reader waits (Waiman Long) [1644375] - [tools] torture: Stop overwriting Make.out file with obsolete version (Waiman Long) [1644375] - [documentation] doc: Improve rcu_dynticks::dynticks documentation (Waiman Long) [1644375] - [documentation] doc: Fix broken RCU-requirements link to LKML archive (Waiman Long) [1644375] - [documentation] doc: Add design documentation on interruption of NMI handlers (Waiman Long) [1644375] - [kernel] rcutorture: Fix rcu_barrier successes counter (Waiman Long) [1644375] - [kernel] rcutorture: Add support to detect if boost kthread prio is too low (Waiman Long) [1644375] - [kernel] rcutorture: Use monotonic timestamp for stall detection (Waiman Long) [1644375] - [kernel] rcutorture: Make boost test more robust (Waiman Long) [1644375] - [kernel] rcutorture: Disable RT throttling for boost tests (Waiman Long) [1644375] - [kernel] rcutorture: Emphasize testing of single reader protection type (Waiman Long) [1644375] - [kernel] rcutorture: Handle extended read-side critical sections (Waiman Long) [1644375] - [kernel] rcutorture: Make rcu_torture_timer() use rcu_torture_one_read() (Waiman Long) [1644375] - [kernel] rcutorture: Use per-CPU random state for rcu_torture_timer() (Waiman Long) [1644375] - [kernel] rcutorture: Use atomic increment for n_rcu_torture_timers (Waiman Long) [1644375] - [kernel] rcutorture: Extract common code from rcu_torture_reader() (Waiman Long) [1644375] - [kernel] rcuperf: Remove unused torturing_tasks() function (Waiman Long) [1644375] - [kernel] rcu: Remove rcutorture test version and sequence number (Waiman Long) [1644375] - [kernel] rcutorture: Change units of onoff_interval to jiffies (Waiman Long) [1644375] - [kernel] rcu: Assign higher prio to RCU threads if rcutorture is built-in (Waiman Long) [1644375] - [documentation] rculist: Improve documentation for list_for_each_entry_from_rcu() (Waiman Long) [1644375] - [kernel] srcu: Add grace-period number to rcutorture statistics printout (Waiman Long) [1644375] - [kernel] rcu: Print stall-warning NMI dyntick state in hexadecimal (Waiman Long) [1644375] - [maintainers] MAINTAINERS: Update RCU, SRCU, and TORTURE-TEST entries (Waiman Long) [1644375] - [kernel] rcu: Make rcu_seq_diff() more exact (Waiman Long) [1644375] - [documentation] doc: Update synchronize_rcu() definition in whatisRCU.txt (Waiman Long) [1644375] - [kernel] rcu: Check the range of jiffies_till_{first, next}_fqs when setting them (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for rcutorture writer stall warning (Waiman Long) [1644375] - [kernel] rcu: Add comment to the last sleep in the rcu tasks loop (Waiman Long) [1644375] - [kernel] rcu: Speed up calling of RCU tasks callbacks (Waiman Long) [1644375] - [kernel] rcu: Add comment documenting how rcu_seq_snap works (Waiman Long) [1644375] - [kernel] rcu: Use RCU CPU stall timeout for rcu_check_gp_start_stall() (Waiman Long) [1644375] - [kernel] rcu: Remove __maybe_unused from rcu_cpu_has_callbacks() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_perf_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from rcu_torture_print_module_parms() (Waiman Long) [1644375] - [kernel] rcu: Remove "inline" from panic_on_rcu_stall() and rcu_blocking_is_gp() (Waiman Long) [1644375] - [kernel] rcu: Remove unused local variable "cpu" (Waiman Long) [1644375] - [kernel] rcu: Remove unused rcu_kick_nohz_cpu() function (Waiman Long) [1644375] - [kernel] rcu: Clarify and correct the rcu_preempt_qs() header comment (Waiman Long) [1644375] - [kernel] rcu: Inline rcu_dynticks_momentary_idle() into its sole caller (Waiman Long) [1644375] - [kernel] rcu: Mark task as .need_qs less aggressively (Waiman Long) [1644375] - [kernel] rcu: Improve RCU-tasks naming and comments (Waiman Long) [1644375] - [kernel] rcu: Use pr_fmt to prefix "rcu: " to logging output (Waiman Long) [1644375] - [kernel] rcu: rcupdate.h: Get rid of Sphinx warnings at rcu_pointer_handoff() (Waiman Long) [1644375] - [kernel] rcu: Improve rcu_note_voluntary_context_switch() reporting (Waiman Long) [1644375] - [kernel] rcu: Make rcu_read_unlock_special() static (Waiman Long) [1644375] - [kernel] rcu: Add diagnostics for offline CPUs failing to report QS (Waiman Long) [1644375] - [kernel] rcu: Record ->gp_state for both phases of grace-period initialization (Waiman Long) [1644375] - [kernel] rcu: Add CPU online/offline state to dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add up-tree information to dump_blkd_tasks() diagnostics (Waiman Long) [1644375] - [kernel] rcu: Remove CPU-hotplug failsafe from force-quiescent-state code path (Waiman Long) [1644375] - [kernel] rcu: Remove failsafe check for lost quiescent state (Waiman Long) [1644375] - [kernel] rcu: Move grace-period pre-init delay after pre-init (Waiman Long) [1644375] - [kernel] rcu: Add RCU-preempt check for waiting on newly onlined CPU (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs due to race with CPU offline (Waiman Long) [1644375] - [kernel] rcu: Fix grace-period hangs from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive splats from mid-init task resume (Waiman Long) [1644375] - [kernel] rcu: Suppress more involved false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive preempted-task splats (Waiman Long) [1644375] - [kernel] rcu: Suppress false-positive offline-CPU lockdep-RCU splat (Waiman Long) [1644375] - [kernel] rcu: Prevent useless FQS scan after all CPUs have checked in (Waiman Long) [1644375] - [kernel] rcu: Replace smp_wmb() with smp_store_release() for stall check (Waiman Long) [1644375] - [kernel] rcu: Fix typo and add additional debug (Waiman Long) [1644375] - [kernel] rcu: Make rcu_report_unblock_qs_rnp() warn on violated preconditions (Waiman Long) [1644375] - [kernel] rcu: Make rcu_init_new_rnp() stop upon already-set bit (Waiman Long) [1644375] - [kernel] rcu: Fix an obsolete ->qsmaskinit comment (Waiman Long) [1644375] - [kernel] rcu: Clean up handling of tasks blocked across full-rcu_node offline (Waiman Long) [1644375] - [kernel] rcu: Identify grace period is in progress as we advance up the tree (Waiman Long) [1644375] - [kernel] rcu: Use better variable names in funnel locking loop (Waiman Long) [1644375] - [kernel] rcu: Rename the grace-period-request variables and parameters (Waiman Long) [1644375] - [kernel] rcu: Regularize resetting of rcu_data wrap indicator (Waiman Long) [1644375] - [kernel] rcutorture: Correctly handle grace-period sequence wrap (Waiman Long) [1644375] - [kernel] rcu: Make rcu_start_this_gp() check for grace period already started (Waiman Long) [1644375] - [kernel] rcu: Fix cpustart tracepoint gp_seq number (Waiman Long) [1644375] - [kernel] rcu: Produce last "CleanupMore" trace only if late-breaking request (Waiman Long) [1644375] - [kernel] rcu: Don't funnel-lock above leaf node if GP in progress (Waiman Long) [1644375] - [documentation] doc: Update RCU CPU stall-warning documentation (Waiman Long) [1644375] - [documentation] doc: Update memory-ordering documentation for ->gp-seq (Waiman Long) [1644375] - [documentation] doc: Update data-structure documentation for ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make simple callback acceleration refer to rdp->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcu: Remove ->gpnum and ->completed (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_fqs tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_quiescent_state_report tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_unlock_preempted_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_preempt_task tracepoint to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period_init tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_future_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_grace_period tracepoint to gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make rcu_nocb_wait_gp() check if GP already requested (Waiman Long) [1644375] - [kernel] rcu: Move from ->need_future_gp[] to ->gp_seq_needed (Waiman Long) [1644375] - [kernel] rcutorture: Convert rcutorture_get_gp_data() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make RCU CPU stall warnings use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert grace-period requests to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->completedqs to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert ->rcu_iw_gpnum to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_in_progress() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_nocb_gp_get() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_try_advance_all_cbs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_implicit_dynticks_qs() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_gpnum_ovf() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move RCU's grace-period-change code to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert conditional grace-period primitives to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Make quiescent-state reporting use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Convert rcu_check_gp_kthread_starvation() to GP sequence number (Waiman Long) [1644375] - [kernel] rcu: Make rcutorture's batches-completed API use ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Move rcu_gp_slow() to ->gp_seq (Waiman Long) [1644375] - [kernel] rcu: Introduce grace-period sequence numbers (Waiman Long) [1644375] - [kernel] rcu: Make rcu_gp_cleanup() write only once to ->gp_flags (Waiman Long) [1644375] - [kernel] rcu: Diagnostics for grace-period startup hangs (Waiman Long) [1644375] - [kernel] rcu: Exclude near-simultaneous RCU CPU stall warnings (Waiman Long) [1644375] - [kernel] rcu: Use the proper lockdep annotation in dump_blkd_tasks() (Waiman Long) [1644375] - [kernel] rcu: Add debugging info to assertion (Waiman Long) [1644375] - [kernel] torture: Keep old-school dmesg format (Waiman Long) [1644375] - [kernel] torture: Make online/offline messages appear only for verbose=2 (Waiman Long) [1644375] - [tools] rcutorture: Make kvm-find-errors.sh find close calls (Waiman Long) [1644375] - [tools] rcutorture: Remove obsolete TREE08-T.boot file (Waiman Long) [1644375] - [tools] torture: Use a single build directory for torture scenarios (Waiman Long) [1644375] - [kernel] srcu: Introduce srcu_read_{un,}lock_notrace() (Waiman Long) [1644375] - [kernel] srcu: Add address of first callback to rcutorture output (Waiman Long) [1644375] - [kernel] srcu: Document that srcu_funnel_gp_start() implies srcu_funnel_exp_start() (Waiman Long) [1644375] - [kernel] srcu: Fix typos in __call_srcu() header comment (Waiman Long) [1644375] - [kernel] rcu: Make expedited grace period use direct call on last leaf (Waiman Long) [1644375]- [netdrv] nfp: flower: use offsets provided by pedit instead of index for ipv6 (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix multiple keys per pedit action (Pablo Cascon) [1645132] - [netdrv] nfp: flower: fix pedit set actions for multiple partial masks (Pablo Cascon) [1645132] - [netdrv] nfp: flower: ignore checksum actions when performing pedit actions (Pablo Cascon) [1644400] - [kernel] sched/fair: Fix throttle_list starvation with low CFS quota (Phil Auld) [1638526] - [net] tipc: fix the big/little endian issue in tipc_dest (Jon Maloy) [1640712] - [rpmspec] kernel.spec: Include kernel-signing-ca.cer public key (Prarit Bhargava) [1638465] - [block] block: don't deal with discard limit in blkdev_issue_discard() (Ming Lei) [1631255] - [powerpc] powerpc/mm: Check memblock_add against MAX_PHYSMEM_BITS range (Gustavo Duarte) [1561402] - [powerpc] powerpc/mm: Increase MAX_PHYSMEM_BITS to 128TB with SPARSEMEM_VMEMMAP config (Gustavo Duarte) [1561402]- [s390] s390/crypto: Enhance paes cipher to accept variable length key material (Philipp Rudo) [1644387] - [s390] s390/pkey: move pckmo subfunction available checks away from module init (Philipp Rudo) [1644387] - [s390] s390/pkey: Load pkey kernel module automatically (Philipp Rudo) [1644387] - [s390] s390/zcrypt: fix broken zcrypt_send_cprb in-kernel api function (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for transforming key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key verification (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit secure key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Add sysfs attributes to emit protected key blobs (Philipp Rudo) [1644387] - [s390] s390/pkey: Define protected key blob format (Philipp Rudo) [1644387] - [s390] s390/pkey: Introduce new API for random protected key generation (Philipp Rudo) [1644387] - [s390] s390/zcrypt: add ap_adapter_mask sysfs attribute (Philipp Rudo) [1644387] - [s390] s390/zcrypt: provide apfs failure code on type 86 error reply (Philipp Rudo) [1644387] - [s390] s390/zcrypt: zcrypt device driver cleanup (Philipp Rudo) [1644387] - [s390] s390/zcrypt: multiple zcrypt device nodes support (Philipp Rudo) [1644387] - [s390] s390/zcrypt: enable AP bus scan without a valid default domain (Philipp Rudo) [1644387] - [s390] s390/zcrypt: Use kmemdup to replace kmalloc + memcpy (Philipp Rudo) [1644387] - [s390] s390/qeth: add TSO support for L2 devices (Philipp Rudo) [1644381] - [s390] s390/qeth: add support for IPv6 TSO (Philipp Rudo) [1644381] - [s390] s390/qeth: enhance TSO control sequence (Philipp Rudo) [1644381] - [s390] s390/qeth: make TSO controls protocol-agnostic (Philipp Rudo) [1644381] - [s390] s390: qeth: Fix potential array overrun in cmd/rc lookup (Philipp Rudo) [1644381] - [s390] s390: qeth_core_mpc: Use ARRAY_SIZE instead of reimplementing its function (Philipp Rudo) [1644381] - [scsi] scsi: mpt3sas: Remove unnecessary parentheses and simplify null checks (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Use dma_pool_zalloc (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove unused macro MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT without logging levels (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove KERN_WARNING from panic uses (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert logging uses with MPT3SAS_FMT and reply_q_name to s: (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert mlsleading uses of pr_ with MPT3SAS_FMT (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Convert uses of pr_ with MPT3SAS_FMT to ioc_ (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Add ioc_ logging macros (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix calltrace observed while running IO & reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Improve kernel-doc headers (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Split _base_reset_handler(), mpt3sas_scsih_reset_handler() and mpt3sas_ctl_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix a race condition in mpt3sas_base_hard_reset_handler() (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix _transport_smp_handler() error path (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Introduce struct mpt3sas_nvme_cmd (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Annotate switch/case fall-through (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Remove set-but-not-used variables (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix indentation (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Update driver version "26.100.00.00" (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: As per MPI-spec, use combined reply queue for SAS3.5 controllers when HBA supports more than 16 MSI-x vectors (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Fix, False timeout prints for ioctl and other internal commands during controller reset (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't access the structure after decrementing it's instance reference count (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Incorrect command status was set/marked as not used (Tomas Henzl) [1638649] - [scsi] scsi: mpt3sas: Don't abort I/Os issued to NVMe drives while processing Async Broadcast primitive event (Tomas Henzl) [1638649] - [netdrv] net/mlx5e: Do not ignore netdevice TX/RX queues number (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Use non-delayed work for update stats (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Initialize all netdev common structures in one place (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Always initialize update stats delayed work (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Gather common netdev init/cleanup functionality in one place (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Fix netlink support in IPoIB (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Hoist alloc_netdev_mqs out of the driver (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Consolidate checking of the proposed child interface (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Maintain the child_intfs list from ndo_init/uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Do not remove child devices from within the ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of the sysfs_mutex (Alaa Hleihel) [1643103] - [infiniband] RDMA/netdev: Use priv_destructor for netdev cleanup (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move init code to ndo_init (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Move all uninit code into ndo_uninit (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Use cancel_delayed_work_sync for neigh-clean task (Alaa Hleihel) [1643103] - [infiniband] IB/ipoib: Get rid of IPOIB_FLAG_GOING_DOWN (Alaa Hleihel) [1643103] - [infiniband] RDMA/ipoib: Fix use of sizeof() (Alaa Hleihel) [1643103] - [netdrv] net/mlx5e: Do not recycle RX pages in interface down flow (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5e: Replace call to MPWQE free with dealloc in interface down flow (Alaa Hleihel) [1643103 1643047] - [net] net/xdp: Fix suspicious RCU usage warning (Alaa Hleihel) [1643103 1643047] - [netdrv] net/mlx5: WQ, fixes for fragmented WQ buffers API (Alaa Hleihel) [1643103 1636183] - [netdrv] net/mlx4_en: Use minimal rx and tx ring sizes on kdump kernel (Alaa Hleihel) [1643103 1615267] - [x86] mark coffeelake-s/h 8+2 as supported (David Arcari) [1575461 1575460] - [x86] x86/spec_ctrl: Synchronize STIBP changes with RHEL IBRS code (Waiman Long) [1643233] - [x86] x86/speculation: Propagate information about RSB filling mitigation to sysfs (Waiman Long) [1643233] - [x86] x86/speculation: Enable cross-hyperthread spectre v2 STIBP mitigation (Waiman Long) [1643233] - [x86] x86/speculation: Apply IBPB more strictly to avoid cross-process data leak (Waiman Long) [1643233] - [x86] x86/speculation: Add RETPOLINE_AMD support to the inline asm CALL_NOSPEC variant (Waiman Long) [1643233] - [x86] x86/CPU: Fix unused variable warning when !CONFIG_IA32_EMULATION (Waiman Long) [1643233] - [x86] x86/pti/64: Remove the SYSCALL64 entry trampoline (Waiman Long) [1643233] - [x86] x86/entry/64: Use the TSS sp2 slot for SYSCALL/SYSRET scratch space (Waiman Long) [1643233] - [x86] x86/entry/64: Document idtentry (Waiman Long) [1643233] - [x86] x86/asm-offsets: Move TSS_sp0 and TSS_sp1 to asm-offsets.c (Waiman Long) [1643233] - [x86] x86: Add entry trampolines to kcore (Waiman Long) [1643233] - [kernel] kallsyms, x86: Export addresses of PTI entry trampolines (Waiman Long) [1643233] - [kernel] kallsyms: Simplify update_iter_mod() (Waiman Long) [1643233] - [scsi] scsi: csiostor: fix incorrect port capabilities (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: add a check for NULL pointer after kmalloc() (Arjun Vynipadath) [1628866] - [scsi] scsi: csiostor: update ingress pack and pad boundary value (Arjun Vynipadath) [1628866]- [netdrv] nfp: flower: use host context count provided by firmware (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use stats array instead of storing stats per flow (Pablo Cascon) [1639609] - [netdrv] nfp: flower: use rhashtable for flow caching (Pablo Cascon) [1639609] - [netdrv] nfp: avoid soft lockups under control message storm (Pablo Cascon) [1639609] - [kernel] sched: disable autogroups by default (Phil Auld) [1568166] - [s390] s390/keyboard: sanitize array index in do_kdsk_ioctl (Steve Best) [1637591] - [char] ipmi:ssif: Add support for multi-part transmit messages > 2 parts (Tony Camuso) [1622053] - [scsi] scsi: libsas: fix a race condition when smp task timeout (Zhou Wang) [1640426] - [scsi] scsi: libsas: check the ata device status by ata_dev_enabled() (Zhou Wang) [1640426] - [scsi] scsi: libsas: always unregister the old device if going to discover new (Zhou Wang) [1640426] - [scsi] scsi: libsas: dynamically allocate and free ata host (Zhou Wang) [1640426] - [scsi] scsi: libsas: remove irq save in sas_ata_qc_issue() (Zhou Wang) [1640426]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1643333 1589158] - [netdrv] Taint kernel if e1000 is loaded (Neil Horman) [1643617] - [netdrv] iavf: fix a typo (Stefan Assmann) [1627882] - [netdrv] i40evf: remove ndo_poll_controller (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1627882] - [netdrv] iavf: finish renaming files to iavf (Stefan Assmann) [1627882] - [netdrv] iavf: rename most of i40e strings (Stefan Assmann) [1627882] - [netdrv] iavf: tracing infrastructure rename (Stefan Assmann) [1627882] - [netdrv] iavf: replace i40e_debug with iavf version (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_hw to iavf_hw (Stefan Assmann) [1627882] - [netdrv] iavf: rename I40E_ADMINQ_DESC (Stefan Assmann) [1627882] - [netdrv] iavf: rename device ID defines (Stefan Assmann) [1627882] - [netdrv] iavf: remove references to old names (Stefan Assmann) [1627882] - [netdrv] iavf: move i40evf files to new name (Stefan Assmann) [1627882] - [netdrv] iavf: rename i40e_status to iavf_status (Stefan Assmann) [1627882] - [netdrv] iavf: rename functions and structs to new name (Stefan Assmann) [1627882] - [netdrv] iavf: diet and reformat (Stefan Assmann) [1627882] - [netdrv] configs: enable CONFIG_IAVF=m (Stefan Assmann) [1627882] - [netdrv] intel-ethernet: rename i40evf to iavf (Stefan Assmann) [1627882] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1627882] - [netdrv] i40evf: cancel workqueue sync for adminq when a VF is removed (Stefan Assmann) [1627882] - [netdrv] i40evf: Don't enable vlan stripping when rx offload is turned on (Stefan Assmann) [1627882] - [netdrv] i40evf: set IFF_UNICAST_FLT flag for the VF (Stefan Assmann) [1627882] - [netdrv] i40evf: Validate the number of queues a PF sends (Stefan Assmann) [1627882] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1627882] - [netdrv] i40evf: update ethtool stats code and use helper functions (Stefan Assmann) [1627882] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1627882] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1627882] - [netdrv] i40e/i40evf: remove redundant functions i40evf_aq_(set/get)_phy_register (Stefan Assmann) [1627882] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1627882] - [init] init/main.c: Enable watchdog_thresh control from kernel line (Prarit Bhargava) [1643161] - [s390] s390/purgatory: Remove duplicate variable definitions (Philipp Rudo) [1642447] - [s390] s390/purgatory: Add missing FORCE to Makefile targets (Philipp Rudo) [1642447] - [s390] s390/purgatory: Fix crash with expoline enabled (Philipp Rudo) [1642447] - [s390] s390: disable asm code expolines if cc does not support it (Philipp Rudo) [1642447] - [netdrv] Revert be2net: remove desc field from be_eq_obj (Ivan Vecera) [1639867]- [rpmspec] redhat: add optional bpf_samples package (Jiri Benc) [1611579] - [powerpc] powerpc/time: Fix clockevent_decrementer initalisation for PR KVM (Steve Best) [1641615] - [net] ip: frags: fix crash in ip_do_fragment() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipfrag: let ip(6)frag_high_thresh in ns be higher than in init_net (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: discard IP frag queue on more errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: fail fast on IP defrag errors (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: process in-order fragments efficiently (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: add helpers to process in-order fragments faster (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv6: defrag: drop non-last frags smaller than min mtu (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ipv4: frags: precedence bug in ip_expire() (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: use rb trees for IP frag queue (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] modify skb_rbtree_purge to return the truesize of all purged skbs (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [net] ip: discard IPv4 datagrams with overlapping segments (Sabrina Dubroca) [1616058] {CVE-2018-5391} - [fs] ovl: fix format of setxattr debug (Miklos Szeredi) [1636875] - [fs] ovl: fix access beyond unterminated strings (Miklos Szeredi) [1636875] - [fs] ovl: make symbol 'ovl_aops' static (Miklos Szeredi) [1636875] - [fs] vfs: swap names of (do,vfs)_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_clone_file_range() (Miklos Szeredi) [1636875] - [fs] ovl: fix freeze protection bypass in ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: fix memory leak on unlink of indexed file (Miklos Szeredi) [1636875] - [fs] ovl: fix oopses in ovl_fill_super() failure paths (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fadvise() (Miklos Szeredi) [1636875] - [fs] vfs: implement readahead(2) using POSIX_FADV_WILLNEED (Miklos Szeredi) [1636875] - [fs] vfs: add the fadvise() file operation (Miklos Szeredi) [1636875] - [fs] Documentation/filesystems: update documentation of file_operations (Miklos Szeredi) [1636875] - [fs] ovl: fix GPF in swapfile_activate of file from overlayfs over xfs (Miklos Szeredi) [1636875] - [fs] ovl: respect FIEMAP_FLAG_SYNC flag (Miklos Szeredi) [1636875] - [fs] ovl: Enable metadata only feature (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metacopy only for ioctl modifying file attr (Miklos Szeredi) [1636875] - [fs] ovl: Do not do metadata only copy-up for truncate operation (Miklos Szeredi) [1636875] - [fs] ovl: add helper to force data copy-up (Miklos Szeredi) [1636875] - [fs] ovl: Check redirect on index as well (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on upper inode when it is linked (Miklos Szeredi) [1636875] - [fs] ovl: Set redirect on metacopy files upon rename (Miklos Szeredi) [1636875] - [fs] ovl: Do not set dentry type ORIGIN for broken hardlinks (Miklos Szeredi) [1636875] - [fs] ovl: Add an inode flag OVL_CONST_INO (Miklos Szeredi) [1636875] - [fs] ovl: Treat metacopy dentries as type OVL_PATH_MERGE (Miklos Szeredi) [1636875] - [fs] ovl: Check redirects for metacopy files (Miklos Szeredi) [1636875] - [fs] ovl: Move some dir related ovl_lookup_single() code in else block (Miklos Szeredi) [1636875] - [fs] ovl: Do not expose metacopy only dentry from d_real() (Miklos Szeredi) [1636875] - [fs] ovl: Open file with data except for the case of fsync (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_inode_realdata() (Miklos Szeredi) [1636875] - [fs] ovl: Store lower data inode in ovl_inode (Miklos Szeredi) [1636875] - [fs] ovl: Fix ovl_getattr() to get number of blocks from lower (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_dentry_lowerdata() to get lower data dentry (Miklos Szeredi) [1636875] - [fs] ovl: Copy up meta inode data from lowest data inode (Miklos Szeredi) [1636875] - [fs] ovl: Modify ovl_lookup() and friends to lookup metacopy dentry (Miklos Szeredi) [1636875] - [fs] ovl: Use out_err instead of out_nomem (Miklos Szeredi) [1636875] - [fs] ovl: A new xattr OVL_XATTR_METACOPY for file on upper (Miklos Szeredi) [1636875] - [fs] ovl: Add helper ovl_already_copied_up() (Miklos Szeredi) [1636875] - [fs] ovl: Copy up only metadata during copy up where it makes sense (Miklos Szeredi) [1636875] - [fs] ovl: During copy up, first copy up metadata and then data (Miklos Szeredi) [1636875] - [fs] ovl: Provide a mount option metacopy=on/off for metadata copyup (Miklos Szeredi) [1636875] - [fs] ovl: Move the copy up helpers to copy_up.c (Miklos Szeredi) [1636875] - [fs] ovl: Initialize ovl_inode->redirect in ovl_get_inode() (Miklos Szeredi) [1636875] - [fs] ovl: fix documentation of non-standard behavior (Miklos Szeredi) [1636875] - [fs] ovl: obsolete "check_copy_up" module option (Miklos Szeredi) [1636875] - [fs] vfs: remove open_flags from d_real() (Miklos Szeredi) [1636875] - [fs] Revert "fsnotify: support overlayfs" (Miklos Szeredi) [1636875] - [fs] Partially revert "locks: fix file locking on overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: do get_write_access() on upper layer of overlayfs" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: add flags to d_real()" (Miklos Szeredi) [1636875] - [fs] Revert "vfs: update ovl inode before relatime check" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix relatime for directories" (Miklos Szeredi) [1636875] - [fs] vfs: fix freeze protection in mnt_want_write_file() for overlayfs (Miklos Szeredi) [1636875] - [fs] Revert "ovl: don't allow writing ioctl on lower layer" (Miklos Szeredi) [1636875] - [fs] Revert "ovl: fix may_write_real() for overlayfs directories" (Miklos Szeredi) [1636875] - [fs] vfs: don't open real (Miklos Szeredi) [1636875] - [fs] ovl: add reflink/copyfile/dedup support (Miklos Szeredi) [1636875] - [fs] ovl: add O_DIRECT support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fiemap() (Miklos Szeredi) [1636875] - [fs] ovl: add lsattr/chattr support (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fallocate() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_mmap() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_fsync() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_write_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add ovl_read_iter() (Miklos Szeredi) [1636875] - [fs] ovl: add helper to return real file (Miklos Szeredi) [1636875] - [fs] ovl: stack file ops (Miklos Szeredi) [1636875] - [fs] ovl: deal with overlay files in ovl_d_real() (Miklos Szeredi) [1636875] - [fs] ovl: copy up file size as well (Miklos Szeredi) [1636875] - [fs] Revert "Revert "ovl: get_write_access() in truncate"" (Miklos Szeredi) [1636875] - [fs] ovl: copy up inode flags (Miklos Szeredi) [1636875] - [fs] ovl: copy up times (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_dedupe_file_range_one() to modules (Miklos Szeredi) [1636875] - [fs] vfs: export vfs_ioctl() to modules (Miklos Szeredi) [1636875] - [fs] vfs: make open_with_fake_path() not contribute to nr_files (Miklos Szeredi) [1636875] - [fs] ovl: fix wrong use of impure dir cache in ovl_iterate() (Miklos Szeredi) [1636875] - [fs] new helper: open_with_fake_path() (Miklos Szeredi) [1636875] - [fs] now we can fold open_check_o_direct() into do_dentry_open() (Miklos Szeredi) [1636875] - [fs] lift fput() on late failures into path_openat() (Miklos Szeredi) [1636875] - [fs] fold put_filp() into fput() (Miklos Szeredi) [1636875] - [fs] introduce FMODE_OPENED (Miklos Szeredi) [1636875] - [fs] ->file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] security_file_open(): lose cred argument (Miklos Szeredi) [1636875] - [fs] get rid of cred argument of vfs_open() and do_dentry_open() (Miklos Szeredi) [1636875] - [fs] pass ->f_flags value to alloc_empty_file() (Miklos Szeredi) [1636875] - [fs] pass creds to get_empty_filp(), make sure dentry_open() passes the right creds (Miklos Szeredi) [1636875] - [fs] alloc_file(): switch to passing O_... flags instead of FMODE_... mode (Miklos Szeredi) [1636875] - [fs] make sure do_dentry_open() won't return positive as an error (Miklos Szeredi) [1636875] - [fs] create_pipe_files(): use fput() if allocation of the second file fails (Miklos Szeredi) [1636875] - [fs] turn filp_clone_open() into inline wrapper for dentry_open() (Miklos Szeredi) [1636875] - [fs] fold security_file_free() into file_free() (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: extract helper for a single dedup (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: rationalize args (Miklos Szeredi) [1636875] - [fs] vfs: dedupe: return int (Miklos Szeredi) [1636875] - [fs] vfs: limit size of dedupe (Miklos Szeredi) [1636875] - [fs] ovl: set I_CREATING on inode being created (Miklos Szeredi) [1636875]- [rpmspec] redhat spec: Add new perf tools file (Jiri Olsa) [1579484] - [tools] perf tools: Fix use of alternatives to find JDIR (Jiri Olsa) [1579484] - [net] net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd() (Paolo Abeni) [1637576] - [thunderbolt] thunderbolt: Add Intel as copyright holder (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Convert rest of the driver files to use SPDX identifier (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Print connected devices (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Make the driver less verbose (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove a meaningless NULL pointer check before dma_pool_destroy (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Initialize after IOMMUs (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not handle ICM events after domain is stopped (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Add support for runtime PM (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Remove redundant variable 'approved' (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use correct ICM commands in system suspend (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: No need to take tb->lock in domain suspend/complete (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Do not unnecessarily call ICM get route (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Use 64-bit DMA mask if supported by the platform (Jarod Wilson) [1588929] - [thunderbolt] thunderbolt: Fix small typo in variable name (Jarod Wilson) [1588929] - [mm] Revert x86/e820: put !E820_TYPE_RAM regions into memblock.reserved (Baoquan He) [1639450] - [mm] mm: return zero_resv_unavail optimization (Baoquan He) [1639450] - [mm] mm: zero remaining unavailable struct pages (Baoquan He) [1639450] - [mm] mm: skip invalid pages block at a time in zero_resv_unresv() (Baoquan He) [1639450] - [mm] docs/mm: memblock: update kernel-doc comments (Baoquan He) [1639450] - [mm] mm/memblock: add a name for memblock flags enumeration (Baoquan He) [1639450] - [block] blk-wbt: wake up all when we scale up, not down (Ming Lei) [1640035]- [video] fbdev: make FB_BACKLIGHT a tristate (Rob Clark) [1589158] - [kernel] EDAC: Raise the maximum number of memory controllers (Aristeu Rozanski) [1634077] - [netdrv] i40e: disallow changing the number of descriptors when AF_XDP is on (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Rx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: clean zero-copy XDP Tx ring on shutdown/reset (Stefan Assmann) [1630760] - [netdrv] i40e: Remove unused msglen parameter from virtchnl functions (Stefan Assmann) [1630760] - [netdrv] i40e: fix double 'NIC Link is Down' messages (Stefan Assmann) [1630760] - [netdrv] i40e: add a helper function to validate a VF based on the vf id (Stefan Assmann) [1630760] - [netdrv] i40e: use declared variables for pf and hw (Stefan Assmann) [1630760] - [netdrv] i40e: Unset promiscuous settings on VF reset (Stefan Assmann) [1630760] - [netdrv] i40e: Fix VF's link state notification (Stefan Assmann) [1630760] - [netdrv] intel-ethernet: use correct module license (Stefan Assmann) [1630760] - [netdrv] i40e(vf): remove i40e_ethtool_stats.h header file (Stefan Assmann) [1630760] - [netdrv] i40e: fix possible compiler warning in xsk TX path (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Tx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Tx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] xsk: i40e: get rid of useless struct xdp_umem_props (Stefan Assmann) [1630760] - [netdrv] i40e: add AF_XDP zero-copy Rx support (Stefan Assmann) [1630760] - [netdrv] i40e: move common Rx functions to i40e_txrx_common.h (Stefan Assmann) [1630760] - [netdrv] i40e: refactor Rx path for re-use (Stefan Assmann) [1630760] - [netdrv] i40e: added queue pair disable/enable functions (Stefan Assmann) [1630760] - [netdrv] i40e: Prevent deleting MAC address from VF when set by PF (Stefan Assmann) [1630760] - [netdrv] i40e: hold the rtnl lock on clearing interrupt scheme (Stefan Assmann) [1630760] - [netdrv] i40e: Check and correct speed values for link on open (Stefan Assmann) [1630760] - [netdrv] i40e: report correct statistics when XDP is enabled (Stefan Assmann) [1630760] - [netdrv] i40e: static analysis report from community (Stefan Assmann) [1630760] - [netdrv] i40e: use correct length for strncpy (Stefan Assmann) [1630760] - [netdrv] i40evf: Change a VF mac without reloading the VF driver (Stefan Assmann) [1630760] - [netdrv] i40e: move ethtool stats boiler plate code to i40e_ethtool_stats.h (Stefan Assmann) [1630760] - [netdrv] i40e: convert queue stats to i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: fix condition of WARN_ONCE for stat strings (Stefan Assmann) [1630760] - [netdrv] i40e_txrx: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e_main: mark expected switch fall-through (Stefan Assmann) [1630760] - [netdrv] i40e: fix i40e_add_queue_stats data pointer update (Stefan Assmann) [1630760] - [netdrv] i40e: Add AQ command for rearrange NVM structure (Stefan Assmann) [1630760] - [netdrv] i40e: Add additional return code to i40e_asq_send_command (Stefan Assmann) [1630760] - [netdrv] i40e: fix warning about shadowed ring parameter (Stefan Assmann) [1630760] - [netdrv] i40e: remove unnecessary i variable causing -Wshadow warning (Stefan Assmann) [1630760] - [netdrv] i40e: convert priority flow control stats to use helpers (Stefan Assmann) [1630760] - [netdrv] i40e: convert VEB TC stats to use an i40e_stats array (Stefan Assmann) [1630760] - [netdrv] i40e: Set fec_config when forcing link state (Stefan Assmann) [1630760] - [netdrv] i40e: add helper to copy statistic values into ethtool buffer (Stefan Assmann) [1630760] - [netdrv] i40e: add helper function for copying strings from stat arrays (Stefan Assmann) [1630760] - [netdrv] i40e: Remove duplicated prepare call in i40e_shutdown (Stefan Assmann) [1630760] - [netdrv] cls_flower: fix error values for commands not supported by drivers (Stefan Assmann) [1630760] - [netdrv] net: drivers/net: Convert random_ether_addr to eth_random_addr (Stefan Assmann) [1630760] - [net] ipv4: don't let PMTU updates increase route MTU (Sabrina Dubroca) [1638845] - [net] ipv4: update fnhe_pmtu when first hop's MTU changes (Sabrina Dubroca) [1638845] - [net] xsk: add a simple buffer reuse queue (Ivan Vecera) [1634774] - [net] samples/bpf: add -c/--copy -z/--zero-copy flags to xdpsock (Ivan Vecera) [1634774] - [net] add napi_if_scheduled_mark_missed (Ivan Vecera) [1634774] - [net] xsk: expose xdp_umem_get_(data, dma) to drivers (Ivan Vecera) [1634774] - [net] xdp: export xdp_rxq_info_unreg_mem_model (Ivan Vecera) [1634774] - [net] xdp: implement convert_to_xdp_frame for MEM_TYPE_ZERO_COPY (Ivan Vecera) [1634774] - [net] xdp: Helper function to clear kernel pointers in xdp_frame (Ivan Vecera) [1634774] - [net] xsk: i40e: get rid of useless struct xdp_umem_props (Ivan Vecera) [1631809] - [net] xdp: fix uninitialized 'err' variable (Ivan Vecera) [1631805] - [tools] headers uapi: Update tools's copy of linux/if_link.h (Ivan Vecera) [1631805] - [tools] selftests/bpf: add test for multiple programs (Ivan Vecera) [1631805] - [net] netdevsim: add support for simultaneous driver and hw XDP (Ivan Vecera) [1631805] - [net] xdp: support simultaneous driver and hw XDP attachment (Ivan Vecera) [1631805] - [net] xdp: factor out common program/flags handling from drivers (Ivan Vecera) [1631805] - [net] xdp: don't make drivers report attachment mode (Ivan Vecera) [1631805] - [net] xdp: add per mode attributes for attached programs (Ivan Vecera) [1631805] - [net] sched: cls_flower: set correct offload data in fl_reoffload (Ivan Vecera) [1631522] - [net] sched: call reoffload op on block callback reg (Ivan Vecera) [1631522] - [net] sched: cls_bpf: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_u32: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_matchall: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: cls_flower: implement offload tcf_proto_op (Ivan Vecera) [1631522] - [net] sched: add tcf_proto_op to offload a rule (Ivan Vecera) [1631522] - [net] sched: pass extack pointer to block binds and cb registration (Ivan Vecera) [1631522]- [rpmspec] kernel.spec: s390/zfcpdump: add -zfcpdump kernel variant (Philipp Rudo) [1567291] - [kernel] rh_taint: correct loaddable module support dependencies (Philipp Rudo) [1567291] - [powerpc] KVM: PPC: Book3S HV: Avoid crash from THP collapse during radix page fault (David Gibson) [1639555] - [irqchip] irqchip/gic-v3-its: Allow use of LPI tables in reserved memory (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Register LPI tables with EFI config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Check that all RDs have the same property table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Use pre-programmed redistributor tables with kdump kernels (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Allow use of pre-programmed LPI tables (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Keep track of property table's PA and VA (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Move pending table allocation to init time (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Split property table clearing from allocation (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Change initialization ordering for LPIs (Jeremy Linton) [1625746] - [firmware] efi: add API to reserve memory persistently across kexec reboot (Jeremy Linton) [1625746] - [firmware] efi/arm: libstub: add a root memreserve config table (Jeremy Linton) [1625746] - [firmware] efi: honour memory reservations passed via a linux specific config table (Jeremy Linton) [1625746] - [irqchip] irqchip/gic-v3-its: Cap lpi_id_bits to reduce memory footprint (Jeremy Linton) [1625746] - [infiniband] RDMA/bnxt_re: Fix system crash during RDMA resource initialization (Selvin Xavier) [1637122] - [infiniband] RDMA/bnxt_re: Fix couple of memory leaks that could lead to IOMMU call traces (Selvin Xavier) [1637120] - [arm64] arm64: KVM: Sanitize PSTATE.M when being set from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [arm64] arm64: KVM: Tighten guest core register access from userspace (Wei Huang) [1635721] {CVE-2018-18021} - [fs] fs/cifs: require sha512 (Leif Sahlberg) [1610619] - [fs] smb3: simplify code by removing CONFIG_CIFS_SMB311 (Leif Sahlberg) [1610619] - [fs] smb3: add support for statfs for smb3.1.1 posix extensions (Leif Sahlberg) [1610619] - [fs] cifs: allow disabling insecure dialects in the config (Leif Sahlberg) [1610619] - [fs] smb3: if server does not support posix do not allow posix mount option (Leif Sahlberg) [1610619]- [security] cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias() (Joe Lawrence) [1638647] - [powerpc] powerpc/cacheinfo: Report the correct shared_cpu_map on big-cores (Steve Best) [1639265] - [powerpc] powerpc: Use cpu_smallcore_sibling_mask at SMT level on bigcores (Steve Best) [1639265] - [powerpc] powerpc: Detect the presence of big-cores via ibm, thread-groups (Steve Best) [1639265] - [x86] mark amd rome as unsupported (David Arcari) [1638506] - [netdrv] qed: Add support for virtual link (Chad Dupuis) [1638013] - [netdrv] qede: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Add driver support for 20G link speed (Chad Dupuis) [1638013] - [netdrv] qed: Fix shmem structure inconsistency between driver and the mfw (Chad Dupuis) [1638013] - [netdrv] qed: Add missing device config for RoCE EDPM in UFP mode (Chad Dupuis) [1638013] - [netdrv] qed: Add a flag which indicates if offload TC is set (Chad Dupuis) [1638013] - [netdrv] qed: Do not add VLAN 0 tag to untagged frames in multi-function mode (Chad Dupuis) [1638013] - [netdrv] qed: Fix populating the invalid stag value in multi function mode (Chad Dupuis) [1638013] - [tools] perf python: Fix pyrf_evlist__read_on_cpu() interface (Jiri Olsa) [1628229] - [tools] perf mmap: Store real cpu number in 'struct perf_mmap' (Jiri Olsa) [1628229]- [fs] gfs2: Fix iomap buffered write support for journaled files (2) (Andreas Grunbacher) [1637944] - [xen] xen/manage: don't complain about an empty value in control/sysrq node (Vitaly Kuznetsov) [1623344] - [drm] drm/amdgpu: Silence harmless WARN_ON() during MST disable (Lyude Paul) [1638137] - [netdrv] net: macb: Fix regression breaking non-MDIO fixed-link PHYs (Petr Oros) [1638259] - [netdrv] net: macb: do not disable MDIO bus at open/close time (Petr Oros) [1638259] - [fs] proc: restrict kernel stack dumps to root (Waiman Long) [1638044] - [base] firmware: Always initialize the fw_priv list object (Waiman Long) [1638044] - [base] firmware: Fix security issue with request_firmware_into_buf() (Waiman Long) [1638044] - [fs] sysfs: Do not return POSIX ACL xattrs via listxattr (Waiman Long) [1638044] - [fs] vfs: don't evict uninitialized inode (Waiman Long) [1638044] - [fs] new primitive: discard_new_inode() (Waiman Long) [1638044] - [arm64] arm64: jump_label.h: use asm_volatile_goto macro instead of "asm goto" (Waiman Long) [1638044] - [kernel] sched/topology: Set correct NUMA topology type (Waiman Long) [1638044] - [kernel] bpf: 32-bit RSH verification must truncate input before the ALU op (Waiman Long) [1638044] - [mm] mm: madvise(MADV_DODUMP): allow hugetlbfs pages (Waiman Long) [1638044] - [x86] x86/pti: Fix section mismatch warning/error (Waiman Long) [1638044] - [kernel] uaccess: Fix is_source param for check_copy_size() in copy_to_iter_mcsafe() (Waiman Long) [1638044] - [x86] x86/mm: Expand static page table for fixmap space (Waiman Long) [1638044] - [fs] fs/lock: skip lock owner pid translation in case we are in init_pid_ns (Waiman Long) [1638044] - [x86] perf/x86/intel/lbr: Fix incomplete LBR call stack (Waiman Long) [1638044] - [kernel] perf/hw_breakpoint: Split attribute parse and commit (Waiman Long) [1638044] - [kernel] bitfield: fix *_encode_bits() (Waiman Long) [1638044] - [kernel] posix-timers: Sanitize overrun handling (Waiman Long) [1638044] - [kernel] posix-timers: Make forward callback return s64 (Waiman Long) [1638044] - [kernel] alarmtimer: Prevent overflow for relative nanosleep (Waiman Long) [1638044] - [x86] x86/entry/64: Add two more instruction suffixes (Waiman Long) [1638044] - [powerpc] powerpc/kdump: Handle crashkernel memory reservation failure (Waiman Long) [1638044] - [s390] s390/mm: correct allocate_pgste proc_handler callback (Waiman Long) [1638044] - [x86] x86/numa_emulation: Fix emulated-to-physical node mapping (Waiman Long) [1638044] - [x86] x86/paravirt: Fix some warning messages (Waiman Long) [1638044] - [kernel] sched/fair: Fix vruntime_normalized() for remote non-migration wakeup (Waiman Long) [1638044] - [kernel] bpf/verifier: disallow pointer subtraction (Waiman Long) [1638044] - [mm] mm: shmem.c: Correctly annotate new inodes for lockdep (Waiman Long) [1638044] - [kernel] sched/core: Use smp_mb() in wake_woken_function() (Waiman Long) [1638044] - [kernel] bpf: fix rcu annotations in compute_effective_progs() (Waiman Long) [1638044] - [x86] x86/mm/pti: Add an overflow check to pti_clone_pmds() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_pmd() (Waiman Long) [1638044] - [x86] x86/pti: Check the return value of pti_user_pagetable_walk_p4d() (Waiman Long) [1638044] - [powerpc] powerpc/pseries/mm: call H_BLOCK_REMOVE (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: factorize PTE slot computation (Steve Best) [1637116] - [powerpc] powerpc/pseries/mm: Introducing FW_FEATURE_BLOCK_REMOVE (Steve Best) [1637116] - [watchdog] watchdog/hpwdt: Disable PreTimeout when Timeout is smaller (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update Driver Documentation (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Update version number (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Module parameter alias (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Display module parameters (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Claim NMI from iLO (Joseph Szczypek) [1632945] - [watchdog] watchdog: hpwdt: Initialize pretimeout from module parameter (Joseph Szczypek) [1632945]- [mm] mm/sparse: delete old sparse_init and enable new one (Baoquan He) [1625105] - [mm] mm/sparse: add new sparse_init_nid() and sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse: move buffer init/fini to the common place (Baoquan He) [1625105] - [mm] mm/sparse: use the new sparse buffer functions in non-vmemmap (Baoquan He) [1625105] - [mm] mm/sparse: abstract sparse buffer allocations (Baoquan He) [1625105] - [mm] mm/sparse: optimize memmap allocation during sparse_init() (Baoquan He) [1625105] - [mm] mm/sparse.c: add a new parameter 'data_unit_size' for alloc_usemap_and_memmap (Baoquan He) [1625105] - [mm] mm/sparsemem.c: defer the ms->section_mem_map clearing (Baoquan He) [1625105] - [mm] mm/sparse.c: add a static variable nr_present_sections (Baoquan He) [1625105] - [mm] mm/sparse.c: make sparse_init_one_section void and remove check (Baoquan He) [1625105] - [target] scsi: target: iscsi: cxgbit: fix csk leak (Arjun Vynipadath) [1628864] - [target] scsi: target: iscsi: cxgbit: use pr_debug() instead of pr_info() (Arjun Vynipadath) [1628864] - [infiniband] iw_cxgb4: only allow 1 flush on user qps (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: pass window scale in flowc work request (Arjun Vynipadath) [1628865] - [infiniband] iw_cxgb4: remove duplicate memcpy() in c4iw_create_listen() (Arjun Vynipadath) [1628865] - [netdrv] mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge (Petr Oros) [1638268] - [tty] tty: vt_ioctl: fix potential Spectre v1 (Prarit Bhargava) [1637123] - [powerpc] powerpc/time: Add set_state_oneshot_stopped decrementer callback (Steve Best) [1638287] - [powerpc] powerpc/time: Use clockevents_register_device(), fixing an issue with large decrementer (Steve Best) [1638287] - [hwmon] hwmon: (nct6775) Fix potential Spectre v1 (Dean Nelson) [1637464] - [vfio] vfio-pci: Disable binding to PFs with SR-IOV enabled (Alex Williamson) [1637871] - [netdrv] net: hns3: fix page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns: fix skb->truesize underestimation (Petr Oros) [1638385] - [netdrv] net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES (Petr Oros) [1638385] - [netdrv] net: hns3: Fix get_vector ops in hclgevf_main module (Petr Oros) [1638385] - [netdrv] net: hns3: Fix warning bug when doing lp selftest (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mac pause not disable in pfc mode (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for mailbox message truncated problem (Petr Oros) [1638385] - [netdrv] net: hns3: Fix return value error in hns3_reset_notify_down_enet (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for reset_level default assignment probelm (Petr Oros) [1638385] - [netdrv] net: hns3: Reset net device with rtnl_lock (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for phy link issue when using marvell phy driver (Petr Oros) [1638385] - [netdrv] net: hns3: Fix for command format parsing error in hclge_is_all_function_id_zero (Petr Oros) [1638385] - [net] xprtrdma: Fix disconnect regression (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Fix validity check for modify QP (Don Dutile) [1635418] - [infiniband] IB/srp: Avoid that sg_reset -d $srp_device triggers an infinite loop (Don Dutile) [1635418] - [infiniband] ucma: fix a use-after-free in ucma_resolve_ip() (Don Dutile) [1635418] - [infiniband] RDMA/uverbs: Atomically flush and mark closed the comp event queue (Don Dutile) [1635418] - [infiniband] RDMA/mlx4: Ensure that maximal send/receive SGE less than supported by HW (Don Dutile) [1635418 1623100] - [infiniband] RDMA/cma: Protect cma dev list with lock (Don Dutile) [1635418] - [infiniband] IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler (Don Dutile) [1635418] - [infiniband] RDMA/ucma: check fd type in ucma_migrate_id() (Don Dutile) [1635418] - [infiniband] RDMA/rxe: Set wqe->status correctly if an unexpected response is received (Don Dutile) [1635418] - [infiniband] IB/IPoIB: Set ah valid flag in multicast send flow (Don Dutile) [1635418] - [infiniband] RDMA/core: Avoid holding lock while initializing fields on stack (Don Dutile) [1635418] - [infiniband] IB/rxe: Drop QP0 silently (Don Dutile) [1635418] - [infiniband] RDMA/umem: Don't hold mmap_sem for too long (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (2/2) (Don Dutile) [1635418] - [infiniband] IB/srpt: Fix srpt_cm_req_recv() error path (1/2) (Don Dutile) [1635418] - [infiniband] RDMA: Fix storage of PortInfo CapabilityMask in the kernel (Don Dutile) [1635418] - [infiniband] IB/core: type promotion bug in rdma_rw_init_one_mr() (Don Dutile) [1635418] - [infiniband] RDMA/i40w: Hold read semaphore while looking after VMA (Don Dutile) [1635418] - [infiniband] vmw_pvrdma: Release netdev when vmxnet3 module is removed (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in __srpt_close_all_ch() (Don Dutile) [1635418] - [infiniband] ib_srpt: Fix a use-after-free in srpt_close_ch() (Don Dutile) [1635418] - [infiniband] IB/srpt: Support HCAs with more than two ports (Don Dutile) [1635418] - [infiniband] IB/rxe: don't clear the tx queue on every transfer (Don Dutile) [1635418] - [infiniband] IB/core: add max_send_sge and max_recv_sge attributes (Don Dutile) [1635418 1623100] - [infiniband] IB/rxe: support for 802.1q VLAN on the listener (Don Dutile) [1635418] - [netdrv] cxgb4: impose mandatory VLAN usage when non-zero TAG ID (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: when max_tx_rate is 0 disable tx rate limiting (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: do not return DUPLEX_UNKNOWN when link is down (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: expose stats fetched from firmware via debugfs (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: remove stats fetched from firmware (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: specify IQTYPE in fw_iq_cmd (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Fix the condition to check if the card is T5 (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Support ethtool private flags (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add support for FW_ETH_TX_PKT_VM_WR (Arjun Vynipadath) [1628863] - [netdrv] cxgb4: Add flag tc_flower_initialized (Arjun Vynipadath) [1628863] - [s390] s390/zcrypt: remove VLA usage from the AP bus (Philipp Rudo) [1637865] - [s390] s390/ap_bus: replace PTR_RET with PTR_ERR_OR_ZERO (Philipp Rudo) [1637865] - [s390] s390/crypto: fix gcc 8 stringop-truncation warning (Philipp Rudo) [1637865] - [s390] s390/zcrypt: code beautify (Philipp Rudo) [1637865] - [s390] s390/zcrypt: add copy_from_user length plausibility checks (Philipp Rudo) [1637865] - [s390] s390/zcrypt: Show load of cards and queues in sysfs (Philipp Rudo) [1637865] - [s390] s390/kvm: fix deadlock when killed by oom (Philipp Rudo) [1638264] - [fs] xfs: fix data corruption w/ unaligned reflink ranges (Brian Foster) [1633476] - [fs] xfs: fix data corruption w/ unaligned dedupe ranges (Brian Foster) [1633476] - [fs] xfs: update ctime and remove suid before cloning files (Brian Foster) [1633476] - [fs] xfs: zero posteof blocks when cloning above eof (Brian Foster) [1633476] - [fs] xfs: refactor clonerange preparation into a separate helper (Brian Foster) [1633476] - [netdrv] nfp: avoid buffer leak when FW communication fails (Petr Oros) [1638233] - [netdrv] nfp: don't fail probe on pci_sriov_set_totalvfs() errors (Petr Oros) [1638233] - [netdrv] nfp: wait for posted reconfigs when disabling the device (Petr Oros) [1638233] - [netdrv] liquidio: fix hang when re-binding VF host drv after running DPDK VF driver (Petr Oros) [1638224] - [netdrv] r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices (Petr Oros) [1638210] - [netdrv] r8169: add support for NCube 8168 network card (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8106e (Petr Oros) [1638210] - [netdrv] r8169: don't use MSI-X on RTL8168g (Petr Oros) [1638210] - [powerpc] KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM workarounds (David Gibson) [1637766] - [drm] drm/amdgpu: Suppress keypresses from ACPI_VIDEO events (Lyude Paul) [1631918] - [infiniband] IB/hfi1: Remove race conditions in user_sdma send path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Eliminate races in the SDMA send error path (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix destroy_qp hang after a link down (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix context recovery when PBC has an UnsupportedVL (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Invalid user input can result in crash (Alex Estrin) [1637068] - [infiniband] IB/hfi1: Fix SL array bounds check (Alex Estrin) [1637068] - [powerpc] powerpc/fadump: re-register firmware-assisted dump if already registered (Steve Best) [1637383] - [powerpc] powerpc/fadump: cleanup crash memory ranges support (Steve Best) [1637383] - [powerpc] powerpc/fadump: merge adjacent memory ranges to reduce PT_LOAD segements (Steve Best) [1637383] - [powerpc] powerpc/fadump: handle crash memory ranges array index overflow (Steve Best) [1637383] - [scsi] scsi: qedi: Initialize the stats mutex lock (Chad Dupuis) [1637245] - [fs] gfs2: Fix iomap buffered write support for journaled files (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate update_rgrp_lvb_unlinked (Andreas Grunbacher) [1637944] - [fs] gfs2: Fix gfs2_testbit to use clone bitmaps (Andreas Grunbacher) [1637944] - [fs] gfs2: Get rid of gfs2_ea_strlen (Andreas Grunbacher) [1637944] - [fs] GFS2: rgrp free blocks used incorrectly (Andreas Grunbacher) [1637944] - [fs] gfs2: remove redundant variable 'moved' (Andreas Grunbacher) [1637944] - [fs] gfs2: use iomap_readpage for blocksize == PAGE_SIZE (Andreas Grunbacher) [1637944] - [fs] gfs2: Use iomap for stuffed direct I/O reads (Andreas Grunbacher) [1637944] - [fs] gfs2: fallocate_chunk: Always initialize struct iomap (Andreas Grunbacher) [1637944] - [fs] gfs2: Remove gfs2_write_(begin,end) (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap direct I/O support (Andreas Grunbacher) [1637944] - [fs] gfs2: gfs2_extent_length cleanup (Andreas Grunbacher) [1637944] - [fs] gfs2: iomap buffered write support (Andreas Grunbacher) [1637944] - [fs] gfs2: Further iomap cleanups (Andreas Grunbacher) [1637944] - [fs] fs: gfs2: Adding new return type vm_fault_t (Andreas Grunbacher) [1637944] - [fs] gfs2: using posix_acl_xattr_size instead of posix_acl_to_xattr (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't reject a supposedly full bitmap if we have blocks reserved (Andreas Grunbacher) [1637944] - [fs] gfs2: Eliminate redundant ip->i_rgd (Andreas Grunbacher) [1637944] - [fs] gfs2: Stop messing with ip->i_rgd in the rlist code (Andreas Grunbacher) [1637944] - [fs] gfs2: call ktime_get_coarse_real_ts64() directly (Andreas Grunbacher) [1637944] - [fs] gfs2: Minor clarification to __gfs2_punch_hole (Andreas Grunbacher) [1637944] - [fs] gfs2: Don't withdraw under a spin lock (Andreas Grunbacher) [1637944] - [fs] gfs2: eliminate rs_inum and reduce the size of gfs2 inodes (Andreas Grunbacher) [1637944] - [drm] drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/disp: fix DP disable race (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early (Lyude Paul) [1628749] - [drm] drm/nouveau: Reset MST branching unit before enabling (Lyude Paul) [1628749] - [drm] drm/nouveau: Only write DP_MSTM_CTRL when needed (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in drm_load() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_disable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove useless poll_enable() call in switcheroo_set_state() (Lyude Paul) [1628749] - [drm] drm/nouveau: Fix deadlocks in nouveau_connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in connector_detect() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM requests (Lyude Paul) [1628749] - [drm] drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend() (Lyude Paul) [1628749] - [drm] drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement (Lyude Paul) [1628749] - [md] dm table: require that request-based DM be layered on blk-mq devices (Mike Snitzer) [1637682] - [md] dm: rename DM_TYPE_MQ_REQUEST_BASED to DM_TYPE_REQUEST_BASED (Mike Snitzer) [1637682] - [md] dm: remove legacy request-based IO path (Mike Snitzer) [1637682] - [md] dm linear: fix linear_end_io conditional definition (Mike Snitzer) [1637682] - [md] dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled (Mike Snitzer) [1637682] - [md] dm: fix report zone remapping to account for partition offset (Mike Snitzer) [1637682] - [md] dm cache: destroy migration_cache if cache target registration failed (Mike Snitzer) [1637682] - [md] dm cache: fix resize crash if user doesn't reload cache table (Mike Snitzer) [1637682] - [md] dm cache metadata: ignore hints array being too small during resize (Mike Snitzer) [1637682] - [md] dm raid: remove bogus const from decipher_sync_action() return type (Mike Snitzer) [1637682] - [md] dm mpath: fix attached_handler_name leak and dangling hw_handler_name pointer (Mike Snitzer) [1637682] - [md] dm thin metadata: fix __udivdi3 undefined on 32-bit (Mike Snitzer) [1637682] - [md] dm thin metadata: try to avoid ever aborting transactions (Mike Snitzer) [1637682] - [md] dm raid: bump target version, update comments and documentation (Mike Snitzer) [1637682] - [md] dm raid: fix RAID leg rebuild errors (Mike Snitzer) [1637682] - [md] dm raid: fix rebuild of specific devices by updating superblock (Mike Snitzer) [1637682] - [md] dm raid: fix stripe adding reshape deadlock (Mike Snitzer) [1637682] - [md] dm raid: fix reshape race on small devices (Mike Snitzer) [1637682] - [md] dm: disable CRYPTO_TFM_REQ_MAY_SLEEP to fix a GFP_KERNEL recursion deadlock (Mike Snitzer) [1637682] - [md] dm verity: fix crash on bufio buffer that was allocated with vmalloc (Mike Snitzer) [1637682] - [md] dm writecache: fix a crash due to reading past end of dirty_bitmap (Mike Snitzer) [1637682] - [md] dm crypt: don't decrease device limits (Mike Snitzer) [1637682] - [md] dm cache metadata: set dirty on all cache blocks after a crash (Mike Snitzer) [1637682] - [md] dm snapshot: remove stale FIXME in snapshot_map() (Mike Snitzer) [1637682] - [md] dm snapshot: improve performance by switching out_of_order_list to rbtree (Mike Snitzer) [1637682] - [md] dm kcopyd: avoid softlockup in run_complete_job (Mike Snitzer) [1637682] - [md] dm cache metadata: save in-core policy_hint_size to on-disk superblock (Mike Snitzer) [1637682] - [md] dm thin: stop no_space_timeout worker when switching to write-mode (Mike Snitzer) [1637682] - [md] dm kcopyd: return void from dm_kcopyd_copy() (Mike Snitzer) [1637682] - [md] dm thin: include metadata_low_watermark threshold in pool status (Mike Snitzer) [1637682] - [md] dm writecache: report start_sector in status line (Mike Snitzer) [1637682] - [md] dm crypt: convert essiv from ahash to shash (Mike Snitzer) [1637682] - [md] dm crypt: use wake_up_process() instead of a wait queue (Mike Snitzer) [1637682] - [md] dm integrity: recalculate checksums on creation (Mike Snitzer) [1637682] - [md] dm integrity: flush journal on suspend when using separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: use version 2 for separate metadata (Mike Snitzer) [1637682] - [md] dm integrity: allow separate metadata device (Mike Snitzer) [1637682] - [md] dm integrity: add ic->start in get_data_sector() (Mike Snitzer) [1637682] - [md] dm integrity: report provided data sectors in the status (Mike Snitzer) [1637682] - [md] dm integrity: implement fair range locks (Mike Snitzer) [1637682] - [md] dm integrity: decouple common code in dm_integrity_map_continue() (Mike Snitzer) [1637682] - [md] dm integrity: change 'suspending' variable from bool to int (Mike Snitzer) [1637682] - [md] dm delay: add flush as a third class of IO (Mike Snitzer) [1637682] - [md] dm delay: refactor repetitive code (Mike Snitzer) [1637682] - [md] dm cache: only allow a single io_mode cache feature to be requested (Mike Snitzer) [1637682] - [md] dm thin: update stale "Status" Documentation (Mike Snitzer) [1637682] - [pci] PCI: Reprogram bridge prefetch registers on resume (Myron Stowe) [1637155] - [input] Input: xen-kbdfront - fix multi-touch XenStore node's locations (Benjamin Tissoires) [1637027] - [input] Input: elantech - enable middle button of touchpad on ThinkPad P72 (Benjamin Tissoires) [1637027] - [hid] HID: i2c-hid: Use devm to allocate i2c_hid struct (Benjamin Tissoires) [1637027] - [hid] HID: input: fix leaking custom input node name (Benjamin Tissoires) [1637027] - [hid] HID: core: fix grouping by application (Benjamin Tissoires) [1637027] - [hid] HID: multitouch: fix Elan panels with 2 input modes declaration (Benjamin Tissoires) [1637027] - [input] Input: do not use WARN() in input_alloc_absinfo() (Benjamin Tissoires) [1637027] - [s390] s390: vfio-ap: setup APCB mask using KVM dedicated function (Cornelia Huck) [1508118] - [s390] KVM: s390: Tracing APCB changes (Cornelia Huck) [1508118] - [s390] KVM: s390: fix locking for crypto setting error path (Cornelia Huck) [1508118] - [s390] s390: doc: detailed specifications for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: CPU model support for AP virtualization (Cornelia Huck) [1508118] - [s390] KVM: s390: device attrs to enable/disable AP interpretation (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-1 CRYCB on host FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow guest FORMAT-0 CRYCB on host FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-0 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: allow CRYCB FORMAT-1 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Allow CRYCB FORMAT-2 (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Make use of CRYCB FORMAT2 clear (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: Do the CRYCB validation first (Cornelia Huck) [1508118] - [s390] KVM: s390: Clear Crypto Control Block when using vSIE (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_RESET ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: zeroize the AP queues (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement VFIO_DEVICE_GET_INFO ioctl (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: implement mediated device open callback (Cornelia Huck) [1508118] - [s390] KVM: s390: interface to clear CRYCB masks (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interface to view matrix mdev matrix (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure control domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure domains (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: sysfs interfaces to configure adapters (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: register matrix device with VFIO mdev framework (Cornelia Huck) [1508118] - [s390] s390: vfio-ap: base implementation of VFIO AP device driver (Cornelia Huck) [1508118] - [s390] KVM: s390: refactor crypto initialization (Cornelia Huck) [1508118] - [s390] KVM: s390: introduce and use KVM_REQ_VSIE_RESTART (Cornelia Huck) [1508118] - [s390] KVM: s390: vsie: simulate VCPU SIE entry/exit (Cornelia Huck) [1508118] - [s390] s390/zcrypt: hex string mask improvements for apmask and aqmask (Cornelia Huck) [1508118] - [s390] s390/zcrypt: AP bus support for alternate driver(s) (Cornelia Huck) [1508118] - [s390] s390/zcrypt: switch return type to bool for ap_instructions_available() (Cornelia Huck) [1508118] - [s390] s390/zcrypt: fix ap_instructions_available() returncodes (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Integrate ap_asm.h into include/asm/ap.h (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Review inline assembler constraints (Cornelia Huck) [1508118] - [s390] s390/zcrypt: Add ZAPQ inline function (Cornelia Huck) [1508118] - [net] ipv6: use rt6_info members when dst is set in rt6_fill_node (Xin Long) [1625864 1625803 1625117]- [netdrv] amd-xgbe: use dma_mapping_error to check map errors (David Arcari) [1637666] - [crypto] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe() (Waiman Long) [1629547] - [powerpc] powerpc: fix csum_ipv6_magic() on little endian platforms (Diego Domingos) [1625579] - [net] smc: generic netlink family should be __ro_after_init (Philipp Rudo) [1632435] - [net] net/smc: fix sizeof to int comparison (Philipp Rudo) [1632435] - [net] net/smc: no urgent data check for listen sockets (Philipp Rudo) [1632435] - [net] net/smc: enable fallback for connection abort in state INIT (Philipp Rudo) [1632435] - [net] net/smc: remove duplicate mutex_unlock (Philipp Rudo) [1632435] - [net] net/smc: fix non-blocking connect problem (Philipp Rudo) [1632435] - [net] net/smc: send response to test link signal (Philipp Rudo) [1632435] - [net] net: simplify sock_poll_wait (Philipp Rudo) [1632435] - [net] net/smc: Simplify ib_post_(send|recv|srq_recv)() calls (Philipp Rudo) [1632435] - [net] net/smc: Remove a WARN_ON() statement (Philipp Rudo) [1632435] - [powerpc] KVM: PPC: Book3S HV: Add NO_HASH flag to GET_SMMU_INFO ioctl result (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a VM capability to enable nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add nested shadow page tables to debugfs (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Allow HV module to load without hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle differing endianness for H_ENTER_NESTED (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Sanitise hv_regs on nested guest entry (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add one-reg interface to virtual PTCR register (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Don't access HFSCR, LPIDR or LPCR when running nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Invalidate TLB when nested vcpu moves physical cpu (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use hypercalls for TLB invalidation when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Implement H_TLB_INVALIDATE hcall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Introduce rmap to track nested guest mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle page fault for a nested guest (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypercalls correctly when nested (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use XICS hypercalls when running as a nested hypervisor (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Nested guest entry via hypercall (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Framework and hcall stubs for nested virtualization (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Use kvmppc_unmap_pte() in kvm_unmap_radix() (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Refactor radix page fault handler (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Make kvmppc_mmu_radix_xlate process/partition table agnostic (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Clear partition table entry on vm teardown (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Add a debugfs file to dump radix mappings (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Handle hypervisor instruction faults better (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Streamlined guest entry/exit path on P9 for radix guests (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Call kvmppc_handle_exit_hv() with vcore unlocked (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Rework TM save/restore code and make it C-callable (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Simplify real-mode interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Extract PMU save/restore operations as C-callable functions (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Move interrupt delivery on guest entry to C code (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S HV: Remove left-over code in XICS-on-XIVE emulation (Suraj Jitindar Singh) [1505999] - [powerpc] KVM: PPC: Book3S: Simplify external interrupt handling (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc: Turn off CPU_FTR_P9_TM_HV_ASSIST in non-hypervisor mode (Suraj Jitindar Singh) [1505999] - [powerpc] powerpc/64s: Remove POWER9 DD1 support (Suraj Jitindar Singh) [1505999] - [netdrv] net/mlx5: Add Fast teardown support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set vlan masks for all offloaded TC rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix out of bound access when setting vport rate (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Avoid unbounded peer devices when unpairing TC hairpin rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Cache the system image guid (Alaa Hleihel) [1636554] - [netdrv] mlx5: remove ndo_poll_controller (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix read from coherent memory (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: don't set CHECKSUM_COMPLETE on SCTP packets (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Set ECN for received packets using CQE indication (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix possible deadlock from lockdep when adding fte to fg (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Check for error in mlx5_attach_interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Consider PCI domain in search for next dev (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix not releasing read lock when adding flow rules (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB tables (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer strides offset (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use u16 for Work Queue buffer fragment size (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix debugfs cleanup in the device init/remove flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix use-after-free in self-healing flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Make function mlx5i_grp_sw_update_stats() static (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Use priv stats in completion rx flow (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB child devices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Add ndo stats support for IPoIB netdevices (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: IPoIB, Initialize max_opened_tc in mlx5i_init flow (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Fix leaking stack memory to userspace (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reorganize the makefile (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: clock.c depends on CONFIG_PTP_1588_CLOCK (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: vxlan.c depends on CONFIG_VXLAN (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move flow steering declarations into en/fs.h (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_ARFS for accelerated flow steering support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add CONFIG_MLX5_EN_RXNFC for ethtool rx nfc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Ethtool steering, move ethtool callbacks (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Reduce command polling interval (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use max_num_eqs for calculation of required MSIX vectors (Alaa Hleihel) [1636554] - [netdrv] RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq (Alaa Hleihel) [1636554] - [netdrv] overflow.h: Add arithmetic shift helper (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Fix uninitialized variable (Alaa Hleihel) [1636554] - [netdrv] RDMA: Fix return code check in rdma_set_cq_moderation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move vxlan logic to core driver (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add sync lock for add/del vxlan port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, return values for add/del port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename from mlx5e to mlx5 (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, rename struct mlx5e_vxlan to mlx5_vxlan_port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, move netdev only logic to en_main.c (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, add direct delete function (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, cleanup an unused member in vxlan work (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, replace ports radix-tree with hash table (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, check maximum number of UDP ports (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Vxlan, reflect 4789 UDP port default addition to software database (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Move XDP related code into new XDP files (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Restrict the combination of large MTU and XDP (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Gather all XDP pre-requisite checks in a single function (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: avoid excessive warning msgs when creating VFs on 2nd port (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Use PARTIAL_GSO for UDP segmentation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Remove redundant WARN when we cannot find neigh entry (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Fix tristate and description for MLX5 module (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Better return types for CQE API (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Use ERR_CAST() instead of coding it (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Add missing SET_DRIVER_VERSION command translation (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [netdrv] IB/mlx5: Honor cnt_set_id_valid flag instead of set_id (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Fix GRE flow specification (Alaa Hleihel) [1636554] - [infiniband] IB/mlx5: Remove set-but-not-used variables (Alaa Hleihel) [1636554] - [infiniband] RDMA/mlx5: Don't leak UARs in case of free fails (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Update NIC HW stats on demand only (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for total num of NOP operations (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add counter for MPWQE filler strides (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add channel events counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add a counter for congested UMRs (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add NAPI statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add XDP_TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add TX completions statistics (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: RX, Use existing WQ local variable (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Convert large order kzalloc allocations to kvzalloc (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO remaining counter (Alaa Hleihel) [1636554] - [netdrv] net/mlx5e: Add UDP GSO support (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Rate limit errors in command interface (Alaa Hleihel) [1636554] - [netdrv] net/mlx5: Prevent warns in dmesg upon firmware commands (Alaa Hleihel) [1636554] - [netdrv] mlx4: remove ndo_poll_controller (Alaa Hleihel) [1636553] - [netdrv] net/mlx4: Use cpumask_available for eq->affinity_mask (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/en_rx: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [netdrv] net/mlx4/mcg: Mark expected switch fall-throughs (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Use 4K pages for kernel QP's WQE buffer (Alaa Hleihel) [1636553] - [netdrv] net/mlx4_core: Allow MTTs starting at any index (Alaa Hleihel) [1636553] - [infiniband] IB/mlx4: Test port number before querying type (Alaa Hleihel) [1636553] - [powerpc] powerpc/numa: Skip onlining a offline node in kdump path (Steve Best) [1637118] - [netdrv] net: aquantia: Make function aq_fw1x_set_power() static (David Arcari) [1636533] - [netdrv] net: aquantia: memory corruption on jumbo frames (David Arcari) [1636533 1630377] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: renaming for better visibility (David Arcari) [1636533] - [netdrv] net: aquantia: whitespace changes (David Arcari) [1636533] - [netdrv] net: aquantia: implement EEE support (David Arcari) [1636533] - [netdrv] net: aquantia: implement WOL support (David Arcari) [1636533] - [netdrv] net: aquantia: definitions for WOL (David Arcari) [1636533] - [netdrv] net: aquantia: fix hw_atl_utils_fw_upload_dwords (David Arcari) [1636533] - [netdrv] net: aquantia: Make some functions static (David Arcari) [1636533] - [netdrv] net: aquantia: bump driver version (David Arcari) [1636533] - [netdrv] net: aquantia: Add renegotiate ethtool operation support (David Arcari) [1636533] - [netdrv] net: aquantia: Implement rx/tx flow control ethtools callback (David Arcari) [1636533] - [netdrv] net: aquantia: Improve adapter init/deinit logic (David Arcari) [1636533] - [netdrv] net: aquantia: Ethtool based ring size configuration (David Arcari) [1636533] - [wireless] ath10k: fix memory leak of tpc_stats (Petr Oros) [1637528] - [wireless] ath10k: snoc: use correct bus-specific pointer in RX retry (Petr Oros) [1637528] - [wireless] ath10k: fix incorrect size of dma_free_coherent in ath10k_ce_alloc_src_ring_64 (Petr Oros) [1637528] - [wireless] brcmsmac: fix wrap around in conversion from constant to s16 (Petr Oros) [1637528] - [wireless] mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status() (Petr Oros) [1637528] - [wireless] ath10k: transmit queued frames after processing rx packets (Petr Oros) [1637528] - [wireless] ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock (Petr Oros) [1637528] - [wireless] ath10k: use locked skb_dequeue for rx completions (Petr Oros) [1637528] - [wireless] ath10k: sdio: set skb len for all rx packets (Petr Oros) [1637528] - [wireless] ath10k: sdio: use same endpoint id for all packets in a bundle (Petr Oros) [1637528] - [wireless] iwlwifi: cancel the injective function between hw pointers to tfd entry index (Petr Oros) [1637528] - [wireless] ath10k: disable bundle mgmt tx completion event support (Petr Oros) [1637528] - [wireless] ath10k: prevent active scans on potential unusable channels (Petr Oros) [1637528] - [wireless] ath9k_hw: fix channel maximum power level test (Petr Oros) [1637528] - [wireless] ath9k: report tx status on EOSP (Petr Oros) [1637528] - [wireless] iwlwifi: pcie: don't access periphery registers when not available (Petr Oros) [1637528] - [wireless] brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference (Petr Oros) [1637528] - [netdrv] be2net: don't flip hw_features when VXLANs are added/deleted (Petr Oros) [1637133] - [netdrv] be2net: Fix memory leak in be_cmd_get_profile_config() (Petr Oros) [1637133] - [netdrv] be2net: Mark expected switch fall-through (Petr Oros) [1637133] - [netdrv] be2net: fix spelling mistake "seqence" -> "sequence" (Petr Oros) [1637133] - [netdrv] be2net: Update the driver version to 12.0.0.0 (Petr Oros) [1637133] - [netdrv] be2net: gather debug info and reset adapter (only for Lancer) on a tx-timeout (Petr Oros) [1637133] - [netdrv] be2net: move rss_flags field in rss_info to ensure proper alignment (Petr Oros) [1637133] - [netdrv] be2net: re-order fields in be_error_recovert to avoid hole (Petr Oros) [1637133] - [netdrv] be2net: remove unused tx_jiffies field from be_tx_stats (Petr Oros) [1637133] - [netdrv] be2net: move txcp field in be_tx_obj to eliminate holes in the struct (Petr Oros) [1637133] - [netdrv] be2net: reorder fields in be_eq_obj structure (Petr Oros) [1637133] - [netdrv] be2net: remove desc field from be_eq_obj (Petr Oros) [1637133] - [netdrv] be2net: remove unused old custom busy-poll fields (Petr Oros) [1637133] - [netdrv] be2net: remove unused old AIC info (Petr Oros) [1637133] - [x86] x86/spec_ctrl/compat: Call IBRS_ENTRY only after valid kernel stack (Waiman Long) [1636843] - [acpi] ACPI/PPTT: Handle architecturally unknown cache types (Jeremy Linton) [1636567] - [base] drivers: base: cacheinfo: Do not populate sysfs for unknown cache types (Jeremy Linton) [1636567] - [fs] getxattr: use correct xattr length (Lukas Czerner) [1637049] - [x86] Mark Intel Cascade Lake supported (Steve Best) [1636651] - [x86] x86/boot: Fix kexec booting failure in the SEV bit detection code (Kairui Song) [1632514] - [scsi] scsi: megaraid_sas: driver version upgrade (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Support FW provided TM timeout values (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Return immediately from wait_for_adapter_operational after kill adapter (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Update controller info during resume (Tomas Henzl) [1635565] - [scsi] scsi: megaraid_sas: Do not do Kill adapter if GET_CTRL_INFO times out (Tomas Henzl) [1635565] - [scsi] qla2xxx: Update driver version to 10.00.00.07.08.0-k (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Check for Register disconnect (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix re-using LoopID when handle is in use (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix duplicate switch database entries (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix NVMe session hang on unload (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix iIDMA error (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix stalled relogin (Himanshu Madhani) [1633373] - [scsi] scsi: qla2xxx: Fix unintended Logout (Himanshu Madhani) [1633373] - [powerpc] powerpc/pseries: Disable CPU hotplug across migrations (Steve Best) [1633587] - [block] blk-mq: I/O and timer unplugs are inverted in blktrace (Ming Lei) [1634330] - [block] block: fix deadline elevator drain for zoned block devices (Ming Lei) [1634333] - [block] blk-mq: Allow blocking queue tag iter callbacks (Ming Lei) [1634328] - [block] block: use nanosecond resolution for iostat (Ming Lei) [1634329] - [block] null_blk: fix zoned support for non-rq based operation (Ming Lei) [1634324] - [block] blk-cgroup: increase number of supported policies (Ming Lei) [1634335] - [block] block: bfq: swap puts in bfqg_and_blkg_put (Ming Lei) [1634334] - [block] block: don't warn when doing fsync on read-only devices (Ming Lei) [1634331] - [block] blkcg: use tryget logic when associating a blkg with a bio (Ming Lei) [1634332] - [block] blkcg: delay blkg destruction until after writeback has (Ming Lei) [1634332] - [block] Revert "blk-throttle: fix race between (Ming Lei) [1634332] - [block] blk-wbt: remove dead code (Ming Lei) [1634326] - [block] blk-wbt: improve waking of tasks (Ming Lei) [1634326] - [block] blk-wbt: abstract out end IO completion handler (Ming Lei) [1634326]- [dma] driver/dma/ioat: Call del_timer_sync() without holding prep_lock (Waiman Long) [1607654] - [netdrv] bnxt_en: Fix VF mac address regression (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA (Jonathan Toppins) [1635846] - [netdrv] bnxt_en: Clean up unused functions (Jonathan Toppins) [1635846] - [fs] fsnotify: fix ignore mask logic in fsnotify() (Lukas Czerner) [1635537] - [net] net/af_iucv: locate IUCV header via skb_network_header() (Philipp Rudo) [1635332] - [net] net/af_iucv: drop inbound packets with invalid flags (Philipp Rudo) [1635332] - [net] net/af_iucv: fix skb handling on HiperTransport xmit error (Philipp Rudo) [1635332] - [hid] HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return value (David Arcari) [1635746] - [i2c] i2c: designware: Re-init controllers with pm_disabled set on resume (David Arcari) [1635746] - [i2c] i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes (David Arcari) [1635746] - [fs] fs/quota: Fix spectre gadget in do_quotactl (Lukas Czerner) [1635521] - [fs] xfs: fix error handling in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove invalid log recovery first/last cycle check (Brian Foster) [1633171] - [fs] xfs: validate inode di_forkoff (Brian Foster) [1633171] - [fs] xfs: skip delalloc COW blocks in xfs_reflink_end_cow (Brian Foster) [1633171] - [fs] xfs: don't treat unknown di_flags2 as corruption in scrub (Brian Foster) [1633171] - [fs] xfs: remove duplicated include from alloc.c (Brian Foster) [1633171] - [fs] xfs: don't bring in extents in xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: fix transaction leak in xfs_reflink_allocate_cow() (Brian Foster) [1633171] - [fs] xfs: avoid lockdep false positives in xfs_trans_alloc (Brian Foster) [1633171] - [fs] xfs: refactor xfs_buf_log_item reference count handling (Brian Foster) [1633171] - [fs] xfs: clean up xfs_trans_brelse() (Brian Foster) [1633171] - [fs] xfs: don't unlock invalidated buf on aborted tx commit (Brian Foster) [1633171] - [fs] xfs: remove last of unnecessary xfs_defer_cancel() callers (Brian Foster) [1633171] - [fs] xfs: don't crash the vfs on a garbage inline symlink (Brian Foster) [1633171] - [fs] iomap: set page dirty after partial delalloc on mkwrite (Brian Foster) [1633171] - [fs] xfs: sanity check ag header values in xrep_calc_ag_resblks (Brian Foster) [1633171] - [fs] xfs: recalculate summary counters at mount time if icount is bad (Brian Foster) [1633171] - [fs] xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree (Brian Foster) [1633171] - [fs] xfs: remove b_last_holder & associated macros (Brian Foster) [1633171] - [fs] xfs: repair the AGI (Brian Foster) [1633171] - [fs] xfs: repair the AGFL (Brian Foster) [1633171] - [fs] xfs: repair the AGF (Brian Foster) [1633171] - [fs] xfs: remove dead error handling code in xfs_dquot_disk_alloc() (Brian Foster) [1633171] - [fs] xfs: use WRITE_ONCE to update if_seq (Brian Foster) [1633171] - [fs] xfs: fix a comment in xfs_log_reserve (Brian Foster) [1633171] - [fs] xfs: only validate summary counts on primary superblock (Brian Foster) [1633171] - [fs] xfs: substitute spaces with tabs (Brian Foster) [1633171] - [fs] xfs: fold dfops into the transaction (Brian Foster) [1633171] - [fs] xfs: always defer agfl block frees (Brian Foster) [1633171] - [fs] xfs: pass transaction to xfs_defer_add() (Brian Foster) [1633171] - [fs] xfs: replace xfs_defer_ops ->dop_pending with on-stack list (Brian Foster) [1633171] - [fs] xfs: cancel dfops on xfs_defer_finish() error (Brian Foster) [1633171] - [fs] xfs: clean out superfluous dfops dop params/vars (Brian Foster) [1633171] - [fs] xfs: drop dop param from xfs_defer_op_type ->finish_item() callback (Brian Foster) [1633171] - [fs] xfs: automatic dfops inode relogging (Brian Foster) [1633171] - [fs] xfs: automatic dfops buffer relogging (Brian Foster) [1633171] - [fs] xfs: add missing defer ijoins for held inodes (Brian Foster) [1633171] - [fs] xfs: replace dop_low with transaction flag (Brian Foster) [1633171] - [fs] xfs: pass transaction to dfops reset/move helpers (Brian Foster) [1633171] - [fs] xfs: remove unused __xfs_defer_cancel() internal helper (Brian Foster) [1633171] - [fs] xfs: use transaction for intent recovery instead of raw dfops (Brian Foster) [1633171] - [fs] xfs: refactor internal dfops initialization (Brian Foster) [1633171] - [fs] xfs: check da node magic in _node_lookup_int (Brian Foster) [1633171] - [fs] xfs: use a local variable for magic number in xfs_da3_node_lookup_int (Brian Foster) [1633171] - [fs] xfs: refactor log recovery check (Brian Foster) [1633171] - [fs] xfs: move extent busy tree initialization to xfs_initialize_perag (Brian Foster) [1633171] - [fs] xfs: avoid COW fork extent lookups in writeback if the fork didn't change (Brian Foster) [1633171] - [fs] xfs: maintain a sequence count for inode fork manipulations (Brian Foster) [1633171] - [fs] xfs: check for unknown v5 feature bits in superblock write verifier (Brian Foster) [1633171] - [fs] xfs: verify icount in superblock write (Brian Foster) [1633171] - [fs] libxfs: add more bounds checking to sb sanity checks (Brian Foster) [1633171] - [fs] xfs: refactor superblock verifiers (Brian Foster) [1633171] - [fs] xfs: refactor the xrep_extent_list into xfs_bitmap (Brian Foster) [1633171] - [fs] xfs: introduce a new xfs_inode_has_cow_data helper (Brian Foster) [1633171] - [fs] xfs: remove the xfs_ifork_t typedef (Brian Foster) [1633171] - [fs] xfs: simplify xfs_idata_realloc (Brian Foster) [1633171] - [fs] xfs: remove if_real_bytes (Brian Foster) [1633171] - [fs] xfs: move the repair extent list into its own file (Brian Foster) [1633171] - [fs] xfs: pass transaction lock while setting up agresv on cyclic metadata (Brian Foster) [1633171] - [fs] xfs: remove deprecated barrier/nobarrier mount (Brian Foster) [1633171] - [fs] xfs: clean up IRELE/iput callsites (Brian Foster) [1633171] - [fs] xfs: kill IHOLD (Brian Foster) [1633171] - [fs] xfs: bypass final dfops roll in trans commit path (Brian Foster) [1633171] - [fs] xfs: drop unnecessary xfs_defer_finish() dfops parameter (Brian Foster) [1633171] - [fs] xfs: remove unnecessary dfops init calls in xattr code (Brian Foster) [1633171] - [fs] xfs: remove all boilerplate defer init/finish code (Brian Foster) [1633171] - [fs] xfs: use internal dfops during (b|c)ui recovery (Brian Foster) [1633171] - [fs] xfs: use internal dfops in attr code (Brian Foster) [1633171] - [fs] xfs: use internal dfops in cow blocks cancel (Brian Foster) [1633171] - [fs] xfs: support embedded dfops in transaction (Brian Foster) [1633171] - [fs] xfs: pack holes in xfs_defer_ops and xfs_trans (Brian Foster) [1633171] - [fs] xfs: reset dfops to initial state after finish (Brian Foster) [1633171] - [fs] xfs: remove unused deferred ops committed field (Brian Foster) [1633171] - [fs] xfs: make deferred processing safe for embedded dfops (Brian Foster) [1633171] - [fs] xfs: fix transaction leak on remote attr set/remove failure (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in log recovery intent processing (Brian Foster) [1633171] - [fs] xfs: pull up dfops from xfs_itruncate_extents() (Brian Foster) [1633171] - [fs] xfs: force summary counter recalc at next mount (Brian Foster) [1633171] - [fs] xfs: refactor unmount record write (Brian Foster) [1633171] - [fs] xfs: detect and fix bad summary counts at mount (Brian Foster) [1633171] - [fs] xfs: fix indentation and other whitespace problems in scrub/repair (Brian Foster) [1633171] - [fs] xfs: shorten struct xfs_scrub_context to struct xfs_scrub (Brian Foster) [1633171] - [fs] xfs: shorten xfs_repair_ prefix to xrep_ (Brian Foster) [1633171] - [fs] xfs: shorten xfs_scrub_ prefix (Brian Foster) [1633171] - [fs] xfs: clean up xfs_btree_del_cursor callers (Brian Foster) [1633171] - [fs] xfs: trivial xfs_btree_del_cursor cleanups (Brian Foster) [1633171] - [fs] xfs: return from _defer_finish with a clean transaction (Brian Foster) [1633171] - [fs] xfs: check leaf attribute block freemap in verifier (Brian Foster) [1633171] - [fs] libxfs: Fix a couple of sparse complaintis (Brian Foster) [1633171] - [fs] xfs: use swap macro in xfs_dir2_leafn_rebalance (Brian Foster) [1633171] - [fs] xfs_bmap_util: use swap macro (Brian Foster) [1633171] - [fs] xfs_attr_leaf: use swap macro in xfs_attr3_leaf_rebalance (Brian Foster) [1633171] - [fs] xfs: don't assume a left rmap when allocating a new rmap (Brian Foster) [1633171] - [fs] xfs: kill __xfs_buf_submit_common() (Brian Foster) [1633171] - [fs] xfs: combine (a)sync buffer submission apis (Brian Foster) [1633171] - [fs] xfs: use sync buffer I/O for sync delwri queue submission (Brian Foster) [1633171] - [fs] xfs: refactor buffer submission into a common helper (Brian Foster) [1633171] - [fs] xfs: remove xfs_defer_init() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in inode inactivate (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in extent swap (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in reflink cow block cancel (Brian Foster) [1633171] - [fs] xfs: replace no-op firstblock init with ->t_firstblock (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dq alloc (Brian Foster) [1633171] - [fs] xfs: remove xfs_alloc_arg firstblock field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur private firstblock field (Brian Foster) [1633171] - [fs] xfs: remove bmap format helpers firstblock params (Brian Foster) [1633171] - [fs] xfs: remove bmap extent add helper firstblock params (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmalloca firstblock field (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in bmap extent split (Brian Foster) [1633171] - [fs] xfs: remove bmap insert/collapse firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() firstblock param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() firstblock param (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in insert/collapse range (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xfs_bmapi_remap() (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in xattr ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in attrfork add (Brian Foster) [1633171] - [fs] xfs: remove firstblock param from xfs dir ops (Brian Foster) [1633171] - [fs] xfs: use ->t_firstblock in dir ops (Brian Foster) [1633171] - [fs] xfs: add firstblock field to xfs_trans (Brian Foster) [1633171] - [fs] xfs: allow null firstblock in xfs_bmapi_write() when tp is null (Brian Foster) [1633171] - [fs] xfs: refactor dfops init to attach to transaction (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in reflink cow recover path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in cancel cow blocks operation (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for rmap extent swap operations (Brian Foster) [1633171] - [fs] xfs: remove unused btree cursor bc_private.a.dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_btree_cur bmbt dfops field (Brian Foster) [1633171] - [fs] xfs: remove dfops param from internal bmap extent helpers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for collapse/insert range operations (Brian Foster) [1633171] - [fs] xfs: remove struct xfs_bmalloca dfops field (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_remap() dfops param (Brian Foster) [1633171] - [fs] xfs: remove xfs_bunmapi() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bunmapi() callers (Brian Foster) [1633171] - [fs] xfs: remove xfs_bmapi_write() dfops param (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for all xfs_bmapi_write() callers (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in dqalloc transaction (Brian Foster) [1633171] - [fs] xfs: replace xfs_da_args->dfops accesses with ->t_dfops and remove (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops in extent split tx and remove param (Brian Foster) [1633171] - [fs] xfs: remove dfops param in attr fork add path (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for attr set/remove operations (Brian Foster) [1633171] - [fs] xfs: use ->t_dfops for recovery of (b|c)ui log items (Brian Foster) [1633171] - [fs] xfs: remove dfops param from high level dirname calls (Brian Foster) [1633171] - [fs] xfs: remove dfops parameter from ifree call stack (Brian Foster) [1633171] - [fs] xfs: rename xfs_trans ->t_agfl_dfops to ->t_dfops (Brian Foster) [1633171] - [fs] xfs: cow unwritten conversion uses uninitialized dfops (Brian Foster) [1633171] - [fs] xfs: update my copyrights for the writeback and iomap code (Brian Foster) [1633171] - [fs] xfs: add support for sub-pagesize writeback without buffer_heads (Brian Foster) [1633171] - [fs] xfs: allow writeback on pages without buffer heads (Brian Foster) [1633171] - [fs] xfs: refactor the tail of xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_start_page_writeback (Brian Foster) [1633171] - [fs] xfs: move all writeback buffer_head manipulation into xfs_map_at_offset (Brian Foster) [1633171] - [fs] xfs: don't look at buffer heads in xfs_add_to_ioend (Brian Foster) [1633171] - [fs] xfs: remove the imap_valid flag (Brian Foster) [1633171] - [fs] xfs: simplify xfs_map_blocks by using xfs_iext_lookup_extent directly (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_find_cow_mapping (Brian Foster) [1633171] - [fs] xfs: remove the now unused XFS_BMAPI_IGSTATE flag (Brian Foster) [1633171] - [fs] xfs: make xfs_writepage_map extent map centric (Brian Foster) [1633171] - [fs] xfs: rename the offset variable in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: remove xfs_map_cow (Brian Foster) [1633171] - [fs] xfs: remove xfs_reflink_trim_irec_to_next_cow (Brian Foster) [1633171] - [fs] xfs: don't use XFS_BMAPI_IGSTATE in xfs_map_blocks (Brian Foster) [1633171] - [fs] xfs: don't clear imap_valid for a non-uptodate buffers (Brian Foster) [1633171] - [fs] xfs: do not set the page uptodate in xfs_writepage_map (Brian Foster) [1633171] - [fs] xfs: move locking into xfs_bmap_punch_delalloc_range (Brian Foster) [1633171] - [fs] xfs: simplify xfs_aops_discard_page (Brian Foster) [1633171] - [fs] xfs: use iomap for blocksize == PAGE_SIZE readpage and readpages (Brian Foster) [1633171] - [fs] iomap: fix WARN_ON_ONCE on uninitialized variable (Brian Foster) [1633171] - [fs] iomap: Switch to offset_in_page for clarity (Brian Foster) [1633171] - [fs] iomap: add support for sub-pagesize buffered I/O without buffer heads (Brian Foster) [1633171] - [fs] iomap: add inline data support to iomap_readpage_actor (Brian Foster) [1633171] - [fs] iomap: support direct I/O to inline data (Brian Foster) [1633171] - [fs] iomap: refactor iomap_dio_actor (Brian Foster) [1633171] - [fs] iomap: add initial support for writes without buffer heads (Brian Foster) [1633171] - [fs] iomap: add an iomap-based readpage and readpages implementation (Brian Foster) [1633171] - [fs] iomap: add private pointer to struct iomap (Brian Foster) [1633171] - [fs] iomap: add a page_done callback (Brian Foster) [1633171] - [fs] iomap: generic inline data handling (Brian Foster) [1633171] - [fs] iomap: complete partial direct I/O writes synchronously (Brian Foster) [1633171] - [fs] iomap: mark newly allocated buffer heads as new (Brian Foster) [1633171] - [fs] fs: factor out a __generic_write_end helper (Brian Foster) [1633171] - [netdrv] amd-xgbe: mark driver as tech preview (David Arcari) [1633209] - [fs] ext4, dax: set ext4_dax_aops for dax files (Lukas Czerner) [1633239] - [fs] ext4, dax: add ext4_bmap to ext4_dax_aops (Lukas Czerner) [1633239] - [fs] ext4: don't mark mmp buffer head dirty (Lukas Czerner) [1633239] - [fs] ext4: show test_dummy_encryption mount option in /proc/mounts (Lukas Czerner) [1633239] - [fs] ext4: fix online resizing for bigalloc file systems with a 1k block size (Lukas Czerner) [1633239] - [fs] ext4: fix online resize's handling of a too-small final block group (Lukas Czerner) [1633239] - [fs] ext4: recalucate superblock checksum after updating free blocks/inodes (Lukas Czerner) [1633239] - [fs] ext4: avoid arithemetic overflow that can trigger a BUG (Lukas Czerner) [1633239] - [fs] ext4: avoid divide by zero fault when deleting corrupted inline directories (Lukas Czerner) [1633239] - [fs] ext4: check to make sure the rename(2)'s destination is not freed (Lukas Czerner) [1633239] - [fs] ext4: remove unneeded variable "err" in ext4_mb_release_inode_pa() (Lukas Czerner) [1633239] - [fs] ext4: fix spectre gadget in ext4_mb_regular_allocator() (Lukas Czerner) [1633239] - [fs] ext4: check for NUL characters in extended attribute's name (Lukas Czerner) [1633239] - [fs] ext4: use ext4_warning() for sb_getblk failure (Lukas Czerner) [1633239] - [fs] ext4: fix race when setting the bitmap corrupted flag (Lukas Czerner) [1633239] - [fs] ext4: reset error code in ext4_find_entry in fallback (Lukas Czerner) [1633239] - [fs] ext4: check allocation failure when duplicating "data" in ext4_remount() (Lukas Czerner) [1633239] - [fs] ext4: sysfs: print ext4_super_block fields as little-endian (Lukas Czerner) [1633239] - [firmware] efi/x86: Handle page faults occurring while running EFI runtime services (Bhupesh Sharma) [1627557] - [firmware] efi: Make efi_rts_work accessible to efi page fault handler (Bhupesh Sharma) [1627557] - [firmware] efi: Remove the declaration of efi_late_init() as the function is unused (Bhupesh Sharma) [1627557] - [firmware] efi: Use a work queue to invoke EFI Runtime Services (Bhupesh Sharma) [1627557] - [firmware] efi/x86: Use non-blocking SetVariable() for efi_delete_dummy_variable() (Bhupesh Sharma) [1627557] - [fs] gfs2: Special-case rindex for gfs2_grow (Robert S Peterson) [1628360] - [fs] GFS2: Fix recovery issues for spectators (Robert S Peterson) [1628298]- [powerpc] powerpc/pkeys: Fix reading of ibm, processor-storage-keys property (Steve Best) [1633551] - [powerpc] powerpc/pseries: Remove unneeded uses of dlpar work queue (Steve Best) [1633544] - [powerpc] powerpc/pseries: Remove prrn_work workqueue (Steve Best) [1633544] - [pci] ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot is not bridge (Myron Stowe) [1634816] - [pci] PCI: Fix enabling of PASID on RC integrated endpoints (Myron Stowe) [1634816] - [pci] IB/hfi1,PCI: Allow bus reset while probing (Myron Stowe) [1634816] - [pci] PCI: Fix faulty logic in pci_reset_bus() (Myron Stowe) [1634816] - [pci] PCI: pciehp: Fix hot-add vs powerfault detection order (Myron Stowe) [1634816] - [pci] Revert "PCI: Add ACS quirk for Intel 300 series" (Myron Stowe) [1634816] - [powerpc] powerpc/numa: Use associativity if VPHN hcall is successful (Steve Best) [1633569] - [pci] PCI: vmd: White list for fast interrupt handlers (Myron Stowe) [1632816] - [pci] PCI: Add function 1 DMA alias quirk for Marvell 88SS9183 (Myron Stowe) [1632816] - [pci] PCI: Rename pci_try_reset_bus() to pci_reset_bus() (Myron Stowe) [1632816] - [pci] PCI: Deprecate pci_reset_bus() and pci_reset_slot() functions (Myron Stowe) [1632816] - [pci] PCI: Unify try slot and bus reset API (Myron Stowe) [1632816] - [pci] PCI: Hide pci_reset_bridge_secondary_bus() from drivers (Myron Stowe) [1632816] - [pci] IB/hfi1: Use pci_try_reset_bus() for initiating PCI Secondary Bus Reset (Myron Stowe) [1632816] - [pci] PCI: Handle error return from pci_reset_bridge_secondary_bus() (Myron Stowe) [1632816] - [pci] PCI/IOV: Tidy pci_sriov_set_totalvfs() (Myron Stowe) [1632816] - [pci] PCI: Enable PASID only if entire path supports End-End TLP prefixes (Myron Stowe) [1632816] - [pci] PCI: Expand documentation for pci_add_dma_alias() (Myron Stowe) [1632816] - [pci] PCI: Add DMA alias quirk for Microsemi Switchtec NTB (Myron Stowe) [1632816] - [pci] switchtec: Use generic PCI Vendor ID and Class Code (Myron Stowe) [1632816] - [pci] PCI: Make pci_get_rom_size() static (Myron Stowe) [1632816] - [pci] PCI: Add check code for last image indicator not set (Myron Stowe) [1632816] - [pci] PCI: Avoid accessing memory outside the ROM BAR (Myron Stowe) [1632816] - [pci] PCI: Make early dump functionality generic (Myron Stowe) [1632816] - [pci] PCI: Cleanup PCI_REBAR_CTRL_BAR_SHIFT handling (Myron Stowe) [1632816] - [pci] PCI: Restore resized BAR state on resume (Myron Stowe) [1632816] - [pci] PCI: Clean up resource allocation in devm_of_pci_get_host_bridge_resources() (Myron Stowe) [1632816] - [pci] PCI: Add ACS Redirect disable quirk for Intel Sunrise Point (Myron Stowe) [1632816] - [pci] PCI: Add device-specific ACS Redirect disable infrastructure (Myron Stowe) [1632816] - [pci] PCI: Convert device-specific ACS quirks from NULL termination to ARRAY_SIZE (Myron Stowe) [1632816] - [pci] PCI: Add "pci=disable_acs_redir=" parameter for peer-to-peer support (Myron Stowe) [1632816] - [pci] PCI: Allow specifying devices using a base bus and path of devfns (Myron Stowe) [1632816] - [pci] PCI: Make specifying PCI devices in kernel parameters reusable (Myron Stowe) [1632816] - [pci] PCI: Hide ACS quirk declarations inside PCI core (Myron Stowe) [1632816] - [pci] PCI: Document ACPI description of PCI host bridges (Myron Stowe) [1632816] - [pci] PCI/MSI: Set IRQCHIP_ONESHOT_SAFE for PCI-MSI irqchips (Myron Stowe) [1632816] - [pci] PCI: Limit config space size for Netronome NFP5000 (Myron Stowe) [1632816] - [pci] PCI: Add PCI_DEVICE_DATA() macro to fully describe device ID entry (Myron Stowe) [1632816] - [pci] PCI: Unify PCI and normal DMA direction definitions (Myron Stowe) [1632816] - [pci] PCI: Use IRQF_ONESHOT if pci_request_irq() called with no handler (Myron Stowe) [1632816] - [pci] PCI: Call dma_debug_add_bus() for pci_bus_type from PCI core (Myron Stowe) [1632816] - [pci] PCI: Mark fall-through switch cases before enabling -Wimplicit-fallthrough (Myron Stowe) [1632816]- [s390] s390/sclp: Allow to request adapter reset (Philipp Rudo) [1635273] - [char] ipmi: Fix NULL pointer dereference in ssif_probe (Tony Camuso) [1635366] - [char] ipmi: Fix I2C client removal in the SSIF driver (Tony Camuso) [1635366] - [char] ipmi: kcs_bmc: don't change device name (Tony Camuso) [1635366] - [kernel] timers: Clear timer_base::must_forward_clk with timer_base::lock held (Waiman Long) [1632820] - [pci] switchtec: Fix Spectre v1 vulnerability (Waiman Long) [1632820] - [kernel] cpu/hotplug: Prevent state corruption on error rollback (Waiman Long) [1632820] - [kernel] cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun() (Waiman Long) [1632820] - [base] memory_hotplug: fix kernel_panic on offline page processing (Waiman Long) [1632820] - [mm] mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported (Waiman Long) [1632820] - [lib] debugobjects: Make stack check warning more informative (Waiman Long) [1632820] - [fs] fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot() (Waiman Long) [1632820] - [x86] x86/process: Don't mix user/kernel regs in 64bit __show_regs() (Waiman Long) [1632820] - [x86] x86/dumpstack: Don't dump kernel memory based on usermode RIP (Waiman Long) [1632820] - [x86] x86: Avoid pr_cont() in show_opcodes() (Waiman Long) [1632820] - [x86] x86/entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit() (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Increase l1tf memory limit for Nehalem+ (Waiman Long) [1632820] - [x86] x86/spectre: Add missing family 6 check to microcode check (Waiman Long) [1632820] - [x86] x86/nmi: Fix NMI uaccess race against CR3 switching (Waiman Long) [1632820] - [x86] x86/vdso: Fix lsl operand order (Waiman Long) [1632820] - [x86] x86/vdso: Fix vDSO build if a retpoline is emitted (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Suggest what to do on systems with too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix off-by-one error when warning that system has too much RAM (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit (Waiman Long) [1632820] - [x86] x86/speculation/l1tf: Exempt zeroed PTEs from inversion (Waiman Long) [1632820] - [x86] x86/mm/pti: Clear Global bit more aggressively (Waiman Long) [1632820] - [x86] x86/paravirt: Fix spectre-v2 mitigations for paravirt guests (Waiman Long) [1632820] - [target] scsi: target: iscsi: Use bin2hex instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633} - [target] scsi: target: iscsi: Use hex2bin instead of a re-implementation (Maurizio Lombardi) [1632184] {CVE-2018-14633}- [netdrv] ibmvnic: Include missing return code checks in reset function (Steve Best) [1633553] - [netdrv] ibmvnic: Update firmware error reporting with cause string (Steve Best) [1633553] - [netdrv] ibmvnic: Remove code to request error information (Steve Best) [1633553] - [s390] s390/qeth: remove duplicated carrier state tracking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up drop conditions for received cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-indent qeth_check_ipa_data() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consume local address events (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove various redundant code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove CARD_FROM_CDEV helper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: pass card pointer in iob callback (Hendrik Brueckner) [1633841] - [s390] s390/qeth: re-use qeth_notify_skbs() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove additional skb refcount (Hendrik Brueckner) [1633841] - [s390] s390/qeth: replace open-coded skb_queue_walk() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: on gdev release, reset drvdata (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix discipline unload after setup error (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use DEFINE_MUTEX for qeth_mod_mutex (Hendrik Brueckner) [1633841] - [s390] s390/qeth: convert layer attribute to enum (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce 0-initializing when building IPA cmds (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune spinlocks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix typo in return value (Hendrik Brueckner) [1633841] - [s390] s390/qeth: invoke softirqs after napi_schedule() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: uninstall IRQ handler on device removal (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_hdr_chk_and_bounce() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: prepare for copy-free TSO transmission (Hendrik Brueckner) [1633841] - [s390] s390/qeth: check size of required HW header cache object (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix up protocol headers early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: limit csum offload erratum to L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove qeth_get_elements_no() (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused L3 xmit code (Hendrik Brueckner) [1633841] - [s390] s390/qeth: run non-offload L3 traffic over common xmit path (Hendrik Brueckner) [1633841] - [s390] s390/qeth: move L2 xmit code to core module (Hendrik Brueckner) [1633841] - [s390] s390/qdio: reset old sbal_state flags (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't dump past end of unknown HW header (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use vzalloc for QUERY OAT buffer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: switch on SG by default for IQD devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: indicate error when netdev allocation fails (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use true and false for boolean values (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't restrict qeth_card to DMA memory (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up card initialization (Hendrik Brueckner) [1633841] - [s390] s390/qeth: do basic setup for data channel (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use qeth_setup_ccw() to set up all CCWs (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reduce hard-coded access to ccw channels (Hendrik Brueckner) [1633841] - [s390] s390/qeth: extract helper for MPC protocol type (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed up L2 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add support for constrained HW headers (Hendrik Brueckner) [1633841] - [s390] s390/qeth: merge linearize-check into HW header construction (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add statistics for consumed buffer elements (Hendrik Brueckner) [1633841] - [s390] s390/qeth: use core MTU range checking (Hendrik Brueckner) [1633841] - [s390] s390/qeth: simplify max MTU handling (Hendrik Brueckner) [1633841] - [s390] s390/qeth: don't cache HW port number (Hendrik Brueckner) [1633841] - [s390] s390/qeth: allocate netdevice early (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove redundant netif_carrier_ok() checks (Hendrik Brueckner) [1633841] - [s390] s390/qeth: reset layer2 attribute on layer switch (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fix race in used-buffer accounting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up IPv4 OSA xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: speed-up L3 IQD xmit (Hendrik Brueckner) [1633841] - [s390] s390/qeth: add a L3 xmit wrapper (Hendrik Brueckner) [1633841] - [s390] s390/qeth: increase GSO max size for eligible L3 devices (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up exported symbols (Hendrik Brueckner) [1633841] - [s390] s390/qeth: consolidate ccwgroup driver definition (Hendrik Brueckner) [1633841] - [s390] s390/qeth: clean up Output Queue selection (Hendrik Brueckner) [1633841] - [s390] s390/qeth: fine-tune RX modesetting (Hendrik Brueckner) [1633841] - [s390] s390/qeth: remove unused buffer->aob pointer (Hendrik Brueckner) [1633841] - [s390] s390/qeth: various buffer management cleanups (Hendrik Brueckner) [1633841] - [powerpc] powerpc: Avoid code patching freed init sections (Steve Best) [1633545] - [powerpc] powerpc/tm: Fix userspace r13 corruption (Steve Best) [1633543] - [powerpc] powerpc/tm: Avoid possible userspace r1 corruption on reclaim (Steve Best) [1633543] - [drm] drm/i915/cfl: Add a new CFL PCI ID (Rob Clark) [1626883] - [drm] drm/i915/aml: Introducing Amber Lake platform (Rob Clark) [1626883] - [drm] drm/i915/whl: Introducing Whiskey Lake platform (Rob Clark) [1626883] - [char] ipmi: Move BT capabilities detection to the detect call (Frank Ramsay) [1618774] - [char] ipmi: Rework SMI registration failure (Frank Ramsay) [1618774]- [s390] s390: detect etoken facility (Thomas Huth) [1634069] - [s390] s390/lib: use expoline for all bcr instructions (Thomas Huth) [1634069] - [documentation] vm.txt: Adding 'nr_hugepages_mempolicy' parameter description (Prashant Dhamdhere) [1626547]- [scsi] scsi: ipr: System hung while dlpar adding primary ipr adapter back (Steve Best) [1633217] - [target] scsi: iscsi: target: Don't use stack buffer for scatterlist (Maurizio Lombardi) [1631342] - [rpmspec] Forward port weak-modules support from RHEL 7 to RHEL 8 ("Herton R. Krzesinski") [1596884] - [fs] xfs: Close race between direct IO and xfs_break_layouts() (Eric Sandeen) [1622191] - [fs] xfs: remove unused iolock arg from xfs_break_dax_layouts (Eric Sandeen) [1622191] - [fs] ext4: Close race between direct IO and ext4_break_layouts() (Eric Sandeen) [1616303] - [fs] ext4: handle layout changes to pinned DAX mappings (Eric Sandeen) [1614154] - [fs] dax: dax_layout_busy_page() warn on !exceptional (Eric Sandeen) [1614154] - [fs] dax: mark tech preview (Eric Sandeen) [1627455] - [mm] usercopy: Allow boot cmdline disabling of hardening (Christoph von Recklinghausen) [1589928]- [s390] s390/crypto: Fix return code checking in cbc_paes_crypt() (Philipp Rudo) [1633266] - [drm] amd/display/dc/basics/logger.c: fix build error with CONFIG_FORTIFY_SOURCE=y ("Herton R. Krzesinski") [1548068] - [acpi] ACPICA: AML Parser: skip opcodes that open a scope upon parse failure (Jeremy Linton) [1609885] - [acpi] ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value (Jeremy Linton) [1609885] - [acpi] ACPICA: AML Parser: ignore all exceptions resulting from incorrect AML during table load (Jeremy Linton) [1609885] - [rpmspec] spec: Add missing BuildRequires for bpftool (Jiri Olsa) [1632756] - [powerpc] KVM: PPC: Avoid marking DMA-mapped pages dirty in real mode (David Gibson) [1628412] - [powerpc] powerpc/powernv/ioda: Allocate indirect TCE levels on demand (David Gibson) [1628412] - [powerpc] powerpc/powernv: Rework TCE level allocation (David Gibson) [1628412] - [powerpc] powerpc/powernv: Add indirect levels to it_userspace (David Gibson) [1628412] - [powerpc] KVM: PPC: Make iommu_table::it_userspace big endian (David Gibson) [1628412] - [powerpc] powerpc/powernv: Move TCE manupulation code to its own file (David Gibson) [1628412] - [net] net_sched: fix NULL pointer dereference when delete tcindex filter (Andrea Claudi) [1627648] - [net] net_sched: Fix missing res info when create new tc_index filter (Andrea Claudi) [1627648] - [samples] samples/bpf: xdpsock: order memory on AArch64 (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu load balance like Suricata (Jesper Brouer) [1615959] - [samples] samples/bpf: add Paul Hsieh's (LGPL 2.1) hash function SuperFastHash (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_redirect_cpu handle parsing of double VLAN tagged packets (Jesper Brouer) [1615959] - [samples] samples/bpf: all XDP samples should unload xdp/bpf prog on SIGTERM (Jesper Brouer) [1615959] - [samples] samples/bpf: xdp_rxq_info action XDP_TX must adjust MAC-addrs (Jesper Brouer) [1615959] - [samples] samples/bpf: extend xdp_rxq_info to read packet payload (Jesper Brouer) [1615959] - [powerpc] KVM: PPC: Book3S HV: Use correct pagesize in kvm_unmap_radix() (David Gibson) [1625498] - [net] igmp: fix incorrect unsolicit report count after link down and up (Hangbin Liu) [1625538] - [net] igmp: fix incorrect unsolicit report count when join group (Hangbin Liu) [1625538] - [netdrv] cxgb4: update 1.20.8.0 as the latest firmware supported (Arjun Vynipadath) [1622555] - [virt] svm: nested virt support off by default (Bandan Das) [1571993]- [powerpc] KVM: PPC: Book3S HV: Don't use compound_order to determine host mapping size (David Gibson) [1625860] - [virt] arm64: KVM: Remove pgd_lock (Wei Huang) [1627474] - [virt] KVM: Remove obsolete kvm_unmap_hva notifier backend (Wei Huang) [1627474] - [virt] arm64: KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Clean dcache to PoC when changing PTE due to CoW (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PTE entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Skip updating PMD entry if no change (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Move DEBUG_SPINLOCK_BUG_ON to vgic.h (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Do not use spin_lock_irqsave/restore with irq disabled (Wei Huang) [1627474] - [virt] KVM: arm: vgic-v3: Add support for ICC_SGI0R and ICC_ASGI1R accesses (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-v3: Add support for ICC_SGI0R_EL1 and ICC_ASGI1R_EL1 accesses (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-v3: Add core support for Group0 SGIs (Wei Huang) [1627474] - [virt] KVM: arm64: Remove non-existent AArch32 ICC_SGI1R encoding (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix lost IRQs from emulated physcial timer when blocked (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix potential loss of ptimer interrupts (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Fix possible spectre-v1 write in vgic_mmio_write_apr() (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Update documentation of the GIC devices wrt IIDR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Let userspace opt-in to writable v2 IGROUPR (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Allow configuration of interrupt groups (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Return error on incompatible uaccess GICD_IIDR writes (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Permit uaccess writes to return errors (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Signal IRQs using their configured group (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Add group field to struct irq (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: GICv2 IGROUPR should read as zero (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Keep track of implementation revision (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic: Define GICD_IIDR fields for GICv2 and GIv3 (Wei Huang) [1627474] - [virt] arm64: KVM: Cleanup tpidr_el2 init on non-VHE (Wei Huang) [1627474] - [virt] KVM: arm/arm64: vgic-debug: Show LPI status (Wei Huang) [1627474] - [virt] KVM: arm64: vgic-its: Remove VLA usage (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Fix vgic init race (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Enable adaptative WFE trapping (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Remove unnecessary CMOs when creating HYP page tables (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Stop using the kernel's (pmd, pud, pgd)_populate helpers (Wei Huang) [1627474] - [virt] KVM: arm/arm64: Consolidate page-table accessors (Wei Huang) [1627474] - [virt] arm64: KVM: Avoid marking pages as XN in Stage-2 if CTR_EL0.DIC is set (Wei Huang) [1627474] - [tools] radix tree test suite: Enable ubsan (Waiman Long) [1630244] - [tools] radix tree test suite: Fix compilation (Waiman Long) [1630244] - [block] blk-wbt: don't maintain inflight counts if disabled (Ming Lei) [1622790] - [block] blk-wbt: fix has-sleeper queueing check (Ming Lei) [1622790] - [block] blk-wbt: use wq_has_sleeper() for wq active check (Ming Lei) [1622790] - [block] blk-wbt: move disable check into get_limit() (Ming Lei) [1622790] - [block] block/DAC960.c: make some arrays static const, shrinks object (Ming Lei) [1622790] - [block] blk-mq: sync the update nr_hw_queues with (Ming Lei) [1617959] - [block] blk-mq: init hctx sched after update ctx and hctx mapping (Ming Lei) [1617959] - [block] block: remove duplicate initialization (Ming Lei) [1622790] - [block] tracing/blktrace: Fix to allow setting same value (Ming Lei) [1622790] - [block] pktcdvd: fix setting of 'ret' error return for a few cases (Ming Lei) [1622790] - [block] block: change return type to bool (Ming Lei) [1622790] - [block] block, bfq: return nbytes and not zero from struct cftype (Ming Lei) [1622790] - [block] block, bfq: improve code of bfq_bfqq_charge_time (Ming Lei) [1622790] - [block] block, bfq: reduce write overcharge (Ming Lei) [1622790] - [block] block, bfq: always update the budget of an entity when needed (Ming Lei) [1622790] - [block] block, bfq: readd missing reset of parent-entity service (Ming Lei) [1622790] - [block] block: don't warn for flush on read-only device (Ming Lei) [1622809]- [kernel] locking/rwsem: Make owner store task pointer of last owning reader (Waiman Long) [1631842] - [kernel] locking/rwsem: Exit read lock slowpath if queue empty & no writer (Waiman Long) [1631842] - [x86] x86/microcode: Update the new microcode revision unconditionally (Prarit Bhargava) [1630931] - [x86] x86/microcode: Make sure boot_cpu_data.microcode is up-to-date (Prarit Bhargava) [1630931] - [arm64] arm64: tlb: Provide forward declaration of tlb_flush() before including tlb.h (Waiman Long) [1630521] - [x86] x86/mm: Only use tlb_remove_table() for paravirt (Waiman Long) [1630521] - [mm] mm: mmu_notifier fix for tlb_end_vma (Waiman Long) [1630521] - [mm] mm/tlb, x86/mm: Support invalidating TLB caches for RCU_TABLE_FREE (Waiman Long) [1630521] - [mm] mm/tlb: Remove tlb_remove_table() non-concurrent condition (Waiman Long) [1630521] - [mm] mm: move tlb_table_flush to tlb_flush_mmu_free (Waiman Long) [1630521] - [kernel] clocksource: Revert Remove kthread (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Retain tick when shallow state is selected (Waiman Long) [1628402] - [cpufreq] cpufreq: governor: Avoid accessing invalid governor_data (Waiman Long) [1628402] - [cpuidle] cpuidle: menu: Handle stopped tick more aggressively (Waiman Long) [1628402] - [kernel] sched: idle: Avoid retaining the tick when it has been stopped (Waiman Long) [1628402] - [net] netfilter: xt_hashlimit: do not crash when reading proc file (Florian Westphal) [1630131] - [x86] x86/boot/KASLR: Skip specified number of 1GB huge pages when doing physical randomization (KASLR) (Baoquan He) [1564824] - [x86] x86/boot/KASLR: Add two new functions for 1GB huge pages handling (Baoquan He) [1564824] - [mfd] mfd: intel-lpss: Add Ice Lake PCI IDs (Gopal Tiwari) [1483477] - [mmc] mmc: sdhci-pci: Add support for Intel ICP (Gopal Tiwari) [1483496]- [mm] mm: get rid of vmacache_flush_all() entirely (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm, vmacache: hash addresses based on pmd (Waiman Long) [1631297] {CVE-2018-17182} - [mm] mm: Allocate the mm_cpumask (mm->cpu_bitmap) dynamically based on nr_cpu_ids (Waiman Long) [1631297] {CVE-2018-17182} - [infiniband] IB/hfi1: Invalid NUMA node information can cause a divide by zero (Alex Estrin) [1622222] - [nvdimm] libnvdimm: Export max available extent (Jeff Moyer) [1627874] - [nvdimm] libnvdimm: Use max contiguous area for namespace size (Jeff Moyer) [1627874] - [netdrv] ice: Fix and update driver version string (Jonathan Toppins) [1611786] - [netdrv] ice: Introduce SERVICE_DIS flag and service routine functions (Jonathan Toppins) [1611786] - [netdrv] ice: Enable VSI Rx/Tx pruning only when VLAN 0 is active (Jonathan Toppins) [1611786] - [netdrv] ice: Enable firmware logging during device initialization (Jonathan Toppins) [1611786] - [netdrv] ice: Implement ice_bridge_getlink and ice_bridge_setlink (Jonathan Toppins) [1611786] - [netdrv] ice: Add support for Tx hang, Tx timeout and malicious driver detection (Jonathan Toppins) [1611786] - [netdrv] ice: Clean up register file (Jonathan Toppins) [1611786] - [netdrv] ice: Implement handlers for ethtool PHY/link operations (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor VSI allocation, deletion and rebuild flow (Jonathan Toppins) [1611786] - [netdrv] ice: Refactor switch rule management structures and functions (Jonathan Toppins) [1611786] - [netdrv] ice: Code optimization for ice_fill_sw_rule() (Jonathan Toppins) [1611786] - [netdrv] ice: Prevent control queue operations during reset (Jonathan Toppins) [1611786] - [netdrv] ice: Update request resource command to latest specification (Jonathan Toppins) [1611786] - [netdrv] ice: Updates to Tx scheduler code (Jonathan Toppins) [1611786] - [netdrv] ice: Rework flex descriptor programming (Jonathan Toppins) [1611786] - [netdrv] net/mlx5: Fix SQ offset in QPs with small RQ (Alaa Hleihel) [1623367] - [x86] x86/spec_ctrl: Make IBRS code work with SSBD mitigation (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Auto-enable IBRS on Skylake (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Extend spectre_v2 boot option to support IBRS (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Boot time IBRS initialization (Waiman Long) [1565180] - [x86] x86/spec_ctrl: Add IBRS code to the 64-bit assembly entry code (Waiman Long) [1565180] - [x86] x86/cpufeatures: Increase NCAPINTS for future extension (Waiman Long) [1565180] - [netdrv] ice: Trivial formatting fixes (Jonathan Toppins) [1611783] - [netdrv] ice: Change struct members from bool to u8 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix potential return of uninitialized value (Jonathan Toppins) [1611783] - [netdrv] ice: Fix a few null pointer dereference issues (Jonathan Toppins) [1611783] - [netdrv] ice: Update to interrupts enabled in OICR (Jonathan Toppins) [1611783] - [netdrv] ice: Set VLAN flags correctly (Jonathan Toppins) [1611783] - [netdrv] ice: Use order_base_2 to calculate higher power of 2 (Jonathan Toppins) [1611783] - [netdrv] ice: Fix bugs in control queue processing (Jonathan Toppins) [1611783] - [netdrv] ice: Clean control queues only when they are initialized (Jonathan Toppins) [1611783] - [netdrv] ice: Report stats for allocated queues via ethtool stats (Jonathan Toppins) [1611783] - [netdrv] ice: Cleanup magic number (Jonathan Toppins) [1611783] - [netdrv] ice: Remove unnecessary node owner check (Jonathan Toppins) [1611783] - [netdrv] ice: Fix multiple static analyser warnings (Jonathan Toppins) [1611783] - [virt] KVM: VMX: fixes for vmentry_l1d_flush module parameter (Waiman Long) [1616248] {CVE-2018-15572} - [virt] KVM: x86: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts disabled (Waiman Long) [1616248] {CVE-2018-15572} - [virt] x86/kvm/vmx: Fix coding style in vmx_setup_l1d_flush() (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Support Enhanced IBRS on future CPUs (Waiman Long) [1614144] - [x86] x86/speculation: Protect against userspace-userspace spectreRSB (Waiman Long) [1616248] {CVE-2018-15572} - [x86] x86/speculation: Remove SPECTRE_V2_IBRS in enum spectre_v2_mitigation (Waiman Long) [1616248] {CVE-2018-15572} - [cpufreq] cpufreq: Fix a circular lock dependency problem (Waiman Long) [1599154] - [kernel] cpu/hotplug: Add a cpus_read_trylock() function (Waiman Long) [1599154] - [virt] xen/spinlock: Don't use pvqspinlock if only 1 vCPU (Waiman Long) [1618486]- [mailbox] mailbox: PCC: handle parse error (David Arcari) [1630382] - [hv] vmbus: don't return values for uninitalized channels (Vitaly Kuznetsov) [1617954] - [mm] kernel/memremap, kasan: make ZONE_DEVICE with work with KASAN (Bill O'Donnell) [1629578] - [mm] mm: fix BUG_ON() in vmf_insert_pfn_pud() from VM_MIXEDMAP removal (Jeff Moyer) [1622171] - [mm] dax: remove VM_MIXEDMAP for fsdax and device dax (Jeff Moyer) [1622171]- [i2c] i2c: i801: fix DNV's SMBCTRL register offset (David Arcari) [1628861] - [fs] ceph: avoid a use-after-free in ceph_destroy_options() (Ilya Dryomov) [1629884] - [fs] ceph: fix incorrect use of strncpy (Ilya Dryomov) [1629884] - [block] rbd: support cloning across namespaces (Ilya Dryomov) [1629884] - [block] rbd: factor out get_parent_info() (Ilya Dryomov) [1629884] - [block] rbd: support for images within namespaces (Ilya Dryomov) [1629884] - [block] rbd: pass rbd_spec into parse_rbd_opts_token() (Ilya Dryomov) [1629884] - [net] libceph: weaken sizeof check in ceph_x_verify_authorizer_reply() (Ilya Dryomov) [1629884] - [net] libceph: check authorizer reply/challenge length before reading (Ilya Dryomov) [1629884] - [net] libceph: implement CEPHX_V2 calculation mode (Ilya Dryomov) [1629884] - [net] libceph: add authorizer challenge (Ilya Dryomov) [1629884] - [net] libceph: factor out encrypt_authorizer() (Ilya Dryomov) [1629884] - [net] libceph: factor out __ceph_x_decrypt() (Ilya Dryomov) [1629884] - [net] libceph: factor out __prepare_write_connect() (Ilya Dryomov) [1629884] - [net] libceph: store ceph_auth_handshake pointer in ceph_connection (Ilya Dryomov) [1629884] - [pci] PCI: pciehp: Deduplicate presence check on probe & resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid implicit fallthroughs in switch statements (Myron Stowe) [1583983] - [pci] PCI: Whitelist Thunderbolt ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: Whitelist native hotplug ports for runtime D3 (Myron Stowe) [1583983] - [pci] PCI: sysfs: Resume to D0 on function reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume parent to D0 on config space access (Myron Stowe) [1583983] - [pci] PCI: pciehp: Resume to D0 on enable/disable (Myron Stowe) [1583983] - [pci] PCI: pciehp: Support interrupts sent from D3hot (Myron Stowe) [1583983] - [pci] PCI: pciehp: Obey compulsory command delay after resume (Myron Stowe) [1583983] - [pci] PCI: pciehp: Clear spurious events earlier on resume (Myron Stowe) [1583983] - [pci] PCI: portdrv: Deduplicate PM callback iterator (Myron Stowe) [1583983] - [pci] PCI: pciehp: Avoid slot access during reset (Myron Stowe) [1583983] - [pci] PCI: pciehp: Always enable occupied slot on probe (Myron Stowe) [1583983] - [pci] PCI: pciehp: Become resilient to missed events (Myron Stowe) [1583983] - [pci] PCI: pciehp: Tolerate initially unstable link (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_enable/disable_slot() static (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop enable/disable lock (Myron Stowe) [1583983] - [pci] PCI: pciehp: Enable/disable exclusively from IRQ thread (Myron Stowe) [1583983] - [pci] PCI: pciehp: Track enable/disable status (Myron Stowe) [1583983] - [pci] PCI: pciehp: Publish to user space last on probe (Myron Stowe) [1583983] - [pci] PCI: hotplug: Demidlayer registration with the core (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop slot workqueue (Myron Stowe) [1583983] - [pci] PCI: pciehp: Handle events synchronously (Myron Stowe) [1583983] - [pci] PCI: pciehp: Stop blinking on slot enable failure (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded polling (Myron Stowe) [1583983] - [pci] PCI: pciehp: Convert to threaded IRQ (Myron Stowe) [1583983] - [pci] PCI: pciehp: Document struct slot and struct controller (Myron Stowe) [1583983] - [pci] PCI: pciehp: Declare pciehp_unconfigure_device() void (Myron Stowe) [1583983] - [pci] PCI: pciehp: Drop unnecessary NULL pointer check (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix unprotected list iteration in IRQ handler (Myron Stowe) [1583983] - [pci] PCI: pciehp: Fix use-after-free on unplug (Myron Stowe) [1583983] - [pci] PCI: hotplug: Don't leak pci_slot on registration failure (Myron Stowe) [1583983] - [pci] PCI: hotplug: Delete skeleton driver (Myron Stowe) [1583983] - [netdrv] be2net: Use Kconfig flag to support for enabling/disabling adapters (Petr Oros) [1611768] - [acpi] ACPICA: Reference Counts: increase max to 0x4000 for large servers (Frank Ramsay) [1618760]- [net] udp6: add missing checks on edumux packet processing (Paolo Abeni) [1625954] - [net] udp4: fix IP_CMSG_CHECKSUM for connected sockets (Paolo Abeni) [1625954] - [s390] s390/pci: fix out of bounds access during irq setup (Hendrik Brueckner) [1627462] - [nvdimm] libnvdimm: fix ars_status output length calculation (Jeff Moyer) [1616307]- [scsi] scsi: lpfc: Correct MDS diag and nvmet configuration (Dick Kennedy) [1628323] - [iommu] iommu/arm-smmu: workaround DMA mode issues (Mark Salter) [1624077] - [x86] x86/microcode: Allow late microcode loading with SMT disabled (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] tools headers: Synchronise x86 cpufeatures.h for L1TF additions (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/kmmio: Make the tracer robust against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/mm/pat: Make set_memory_np() L1TF safe (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Invert all not present mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Fix SMT supported evaluation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation: Simplify sysfs report of VMX L1TF vulnerability (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Remove Yonah processors from not vulnerable list (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86: Don't include linux/irq.h from asm/hardirq.h (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/irq: Demote irq_cpustat_t::__softirq_pending to u16 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond' (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: detect SMT disabled by BIOS (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation/l1tf: Fix typos (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Initialize the vmx_l1d_flush_pages' content (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED architectures (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Documentation: Add section about CPU vulnerabilities (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs, kvm: Introduce boot-time control of L1TF mitigations (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Expose SMT control init function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Allow runtime control of L1D flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Serialize L1D flush parameter setter (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Add static key for flush always (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Move l1tf setup function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/l1tf: Handle EPT disabled state proper (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/kvm: Drop L1TF MSR list approach (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/litf: Introduce vmx status variable (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Online siblings when SMT control is turned on (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add find_msr() helper function (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest numbers (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush logic (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D MSR based flush (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add L1D flush algorithm (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM/VMX: Add module argument for L1TF mitigation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Boot HT siblings at least once (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] Revert "x86/apic: Ignore secondary threads if nosmt=force" (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Fix up pte->pfn conversion for PAE (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PAE swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpufeatures: Add detection of L1D cache flush support (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Extend 64bit swap file size limit (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/apic: Ignore secondary threads if nosmt=force (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/CPU/AMD: Do not check CPUID max ext level before parsing SMP info (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/intel: Evaluate smp_num_siblings early (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/topology: Provide detect_extended_topology_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/common: Provide detect_ht_early() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu/AMD: Remove the pointless detect_ht() call (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/cpu: Remove the pointless CPU printout (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Provide knobs to control SMT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Split do_cpu_down() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] cpu/hotplug: Make bringup/teardown of smp threads symmetric (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/topology: Provide topology_smt_supported() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/smp: Provide topology_is_primary_thread() (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] sched/smt: Update sched_smt_present at runtime (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/bugs: Move the l1tf function and define pr_fmt properly (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Limit swap file size to MAX_PA/2 (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Disallow non privileged high MMIO PROT_NONE mappings (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Add sysfs reporting for l1tf (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Make sure the first page is always reserved (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect PROT_NONE PTEs against speculation (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Protect swap entries against L1TF (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Change order of offset/type in swap entry (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646} - [x86] x86/speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT (Waiman Long) [1616046] {CVE-2018-3620 CVE-2018-3646}- [pci] PCI/DPC: Remove indirection waiting for inactive link (Myron Stowe) [1485556] - [pci] PCI/DPC: Use threaded IRQ for bottom half handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Print AER status in DPC event handling (Myron Stowe) [1485556] - [pci] PCI/DPC: Remove rp_pio_status from dpc struct (Myron Stowe) [1485556] - [pci] PCI/DPC: Defer event handling to work queue (Myron Stowe) [1485556] - [pci] PCI/DPC: Leave interrupts enabled while handling event (Myron Stowe) [1485556] - [net] net/mlx5e: Offload TC matching on tos/ttl for ip tunnels (Erez Alfasi) [1615121] - [net] net/mlx5e: Support setup of tos and ttl for tunnel key TC action offload (Erez Alfasi) [1615121] - [net] net/mlx5e: Use ttl from route lookup on tc encap offload only if needed (Erez Alfasi) [1615121] - [net] net/sched: cls_flower: Support matching on ip tos and ttl for tunnels (Erez Alfasi) [1615121] - [net] flow_dissector: Dissect tos and ttl from the tunnel info (Erez Alfasi) [1615121] - [net] net/sched: tunnel_key: Allow to set tos and ttl for tc based ip tunnels (Erez Alfasi) [1615121] - [net] net/sched: act_tunnel_key: disambiguate metadata dst error cases (Erez Alfasi) [1615121] - [net] net/sched: add tunnel option support to act_tunnel_key (Erez Alfasi) [1615121] - [iommu] iommu/amd: Add support for IOMMU XT mode (Suravee Suthikulpanit) [1504485] - [iommu] iommu/amd: Add support for higher 64-bit IOMMU Control Register (Suravee Suthikulpanit) [1504485] - [x86] x86: irq_remapping: Move irq remapping mode enum (Suravee Suthikulpanit) [1504485] - [firmware] dcdbas: Add support for WSMT ACPI table (Charles Rose) [1502286]- [documentation] scsi: documentation: add scsi_mod.use_blk_mq to scsi-parameters (Ewan Milne) [1600014] - [scsi] scsi: core: Update SCSI_MQ_DEFAULT help text to match default (Ewan Milne) [1600014] - [scsi] scsi: core: switch to scsi-mq by default (Ewan Milne) [1600014] - [pci] PCI: Match Root Port's MPS to endpoint's MPSS as necessary (Myron Stowe) [1502324] - [pci] PCI: Skip MPS logic for Virtual Functions (VFs) (Myron Stowe) [1502324] - [pci] PCI: Check for PCIe Link downtraining (Myron Stowe) [1502324] - [pci] PCI: Workaround IDT switch ACS Source Validation erratum (Myron Stowe) [1502324] - [of] OF: Don't set default coherent DMA mask (Mark Salter) [1581822] - [acpi] ACPI/IORT: Don't set default coherent DMA mask (Mark Salter) [1581822] - [iommu] iommu/dma: Respect bus DMA limit for IOVAs (Mark Salter) [1581822] - [of] of/device: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [acpi] ACPI/IORT: Set bus DMA mask as appropriate (Mark Salter) [1581822] - [kernel] dma-mapping: Generalise dma_32bit_limit flag (Mark Salter) [1581822] - [acpi] ACPI/IORT: Support address size limit for root complexes (Mark Salter) [1581822] - [of] of/platform: Initialise default DMA masks (Mark Salter) [1581822] - [net] Bluetooth: hidp: buffer overflow in hidp_process_report (Gopal Tiwari) [1623073] {CVE-2018-9363} - [irqchip] irqchip/gic-v3-its: Reduce minimum LPI allocation to 1 for PCI devices (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Honor hypervisor enforced LPI range (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3: Expose GICD_TYPER in the rdist structure (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Drop chunk allocation compatibility (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Move minimum LPI requirements to individual busses (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Use full range of LPIs (Mark Salter) [1550500] - [irqchip] irqchip/gic-v3-its: Refactor LPI allocator (Mark Salter) [1550500]- [netdrv] hv_netvsc: Fix a deadlock by getting rtnl lock earlier in netvsc_probe() (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: ignore devices that are not PCI (Vitaly Kuznetsov) [1625609] - [netdrv] hv/netvsc: Fix NULL dereference at single queue mode fallback (Vitaly Kuznetsov) [1625609] - [netdrv] hv_netvsc: Add per-cpu ethtool stats for netvsc (Vitaly Kuznetsov) [1625609] - [pci] PCI: shpchp: Separate existence of SHPC and permission to use it (Steve Best) [1622953] - [powerpc] KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate function (David Gibson) [1625513] - [kernel] rh_kabi: Add macros to size and extend structs (Prarit Bhargava) [1564570] - [pci] PCI: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] iwlwifi: Remove unnecessary include of (Myron Stowe) [1622672] - [wireless] ath9k: Remove unnecessary include of (Myron Stowe) [1622672] - [netdrv] igb: Remove unnecessary include of (Myron Stowe) [1622672] - [pci] PCI/ASPM: Convert to use sysfs_match_string() helper (Myron Stowe) [1622672] - [virt] KVM: s390: Properly lock mm context allow_gmap_hpage_1m setting (Thomas Huth) [1623513] - [virt] KVM: s390: vsie: copy wrapping keys to right place (Thomas Huth) [1623513] - [virt] KVM: s390: Fix pfmf and conditional skey emulation (Thomas Huth) [1623513] - [virt] KVM: s390: Fix storage attributes migration with memory slots (Thomas Huth) [1623513] - [virt] KVM: s390: a utility function for migration (Thomas Huth) [1623513]- [lib] vsprintf: Add command line option debug_boot_weak_hash (Prarit Bhargava) [1625687] - [netdrv] i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled (Stefan Assmann) [1616147] - [misc] ocxl: Fix page fault handler in case of fault on dying process (Steve Best) [1624644] - [edac] EDAC, sb_edac: Add support for systems with segmented PCI buses (Aristeu Rozanski) [1621849] - [netdrv] xen-netfront: fix warn message as irq device name has '/' (Vitaly Kuznetsov) [1576160] - [arm64] arm64, kaslr: export offset in VMCOREINFO ELF notes (Bhupesh Sharma) [1624246] - [rpmspec] redhat: Move gfs2 and dlm out of kernel-modules-extra (Andrew Price) [1623511] - [powerpc] powerpc/topology: Get topology for shared processors at boot (Steve Best) [1620039] - [fs] gfs2: Don't set GFS2_RDF_UPTODATE when the lvb is updated (Robert S Peterson) [1622057] - [fs] gfs2: improve debug information when lvb mismatches are found (Robert S Peterson) [1622057] - [fs] gfs2: cleanup: call gfs2_rgrp_ondisk2lvb from gfs2_rgrp_out (Robert S Peterson) [1622057] - [x86] Fix x86 32-bit invalid cpu boot failure message (Prarit Bhargava) [1571456] - [net] net/ipv6: init ip6 anycast rt->dst.input as ip6_input (Hangbin Liu) [1615671] - [pci] PCI/AER: Don't clear AER bits if error handling is Firmware-First (Myron Stowe) [1621933] - [pci] PCI/AER: Remove duplicate PCI_EXP_AER_FLAGS definition (Myron Stowe) [1621933] - [pci] PCI/portdrv: Remove pcie_portdrv_err_handler.slot_reset (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_COR handling (Myron Stowe) [1621933] - [pci] PCI/AER: Clear device status bits during ERR_FATAL and ERR_NONFATAL (Myron Stowe) [1621933] - [pci] PCI/AER: Remove ERR_FATAL code from ERR_NONFATAL path (Myron Stowe) [1621933] - [pci] PCI/AER: Factor out ERR_NONFATAL status bit clearing (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_NONFATAL bits during non-fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Clear only ERR_FATAL status bits during fatal recovery (Myron Stowe) [1621933] - [pci] PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes for rootport cumulative stats (Myron Stowe) [1621933] - [pci] PCI/AER: Add sysfs attributes to provide AER stats and breakdown (Myron Stowe) [1621933] - [pci] PCI/AER: Define aer_stats structure for AER capable devices (Myron Stowe) [1621933] - [pci] PCI/AER: Move internal declarations to drivers/pci/pci.h (Myron Stowe) [1621933] - [pci] PCI/AER: Adopt lspci names for AER error decoding (Myron Stowe) [1621933] - [pci] PCI/AER: Expose internal API for obtaining AER information (Myron Stowe) [1621933] - [kernel] rcu: Make expedited GPs handle CPU 0 being offline (Gustavo Duarte) [1610262] - [rpmspec] Generate BootLoaderSpec config fragments ("Herton R. Krzesinski") [1619766]- [net] erspan: set erspan_ver to 1 by default when adding an erspan dev (Xin Long) [1619118] - [hv] x86/hyper-v: Fix wrong merge conflict resolution (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Check cpumask_to_vpset() return value in hyperv_flush_tlb_others_ex() (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Trace PV IPI send (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_SEND_IPI hypercall when possible (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use 'fast' hypercall for HVCALL_SEND_IPI (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Implement hv_do_fast_hypercall16 (Vitaly Kuznetsov) [1597652] - [hv] x86/hyper-v: Use cheaper HVCALL_FLUSH_VIRTUAL_ADDRESS_(LIST, SPACE) hypercalls when possible (Vitaly Kuznetsov) [1597652] - [netdrv] xen-netfront: fix queue name setting (Vitaly Kuznetsov) [1576160] - [scsi] lfpc: add Lancer FCoE to the removed devices (Tomas Henzl) [1602033] - [scsi] megaraid_sas: add removed id table (Tomas Henzl) [1602033] - [scsi] aacraid: add removed id table (Tomas Henzl) [1602033] - [scsi] qla4xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] lpfc: add removed id table (Tomas Henzl) [1602033] - [scsi] qla2xxx: add removed id table (Tomas Henzl) [1602033] - [scsi] mpt3sas: add removed id table (Tomas Henzl) [1602033] - [scsi] be2iscsi: add removed id table (Tomas Henzl) [1602033] - [scsi] rh_taint, pci : add information about removed hardware (Tomas Henzl) [1602033] - [kernel] kernel: add SUPPORT_REMOVED kernel taint (Tomas Henzl) [1602033] - [net] sunrpc: Change rpc_print_iostats to rpc_clnt_show_stats and handle rpc_clnt clones (Dave Wysochanski) [1610373] - [net] sunrpc: Add _add_rpc_iostats() to add rpc_iostats metrics (Dave Wysochanski) [1610373] - [net] sunrpc: add _print_rpc_iostats() to output metrics for one RPC op (Dave Wysochanski) [1610373]- [net] xdp: exclude XDP from kABI guarantee (Jiri Benc) [1568551] - [kernel] rh_kabi: introduce RH_KABI_EXCLUDE (Jiri Benc) [1568551] - [powerpc] powerpc/powernv/pci: Work around races in PCI bridge enabling (Steve Best) [1620035] - [block] blk-wbt: fix IO hang in wbt_wait() (Ming Lei) [1614198] - [block] blkcg: Make blkg_root_lookup() work for queues in bypass mode (Ming Lei) [1614198] - [block] null_blk: add lock drop/acquire annotation (Ming Lei) [1614198] - [block] Blk-throttle: reduce tail io latency when iops limit is (Ming Lei) [1614198] - [block] block: paride: pd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] block: Ensure that a request queue is dissociated from the (Ming Lei) [1614198] - [block] block: Introduce blk_exit_queue() (Ming Lei) [1614198] - [block] blkcg: Introduce blkg_root_lookup() (Ming Lei) [1614198] - [block] block: Remove two superfluous #include directives (Ming Lei) [1614198] - [block] blk-mq: count the hctx as active before allocating tag (Ming Lei) [1614198] - [block] block: bvec_nr_vecs() returns value for wrong slab (Ming Lei) [1614198] - [block] drivers/block/drbd: remove the null check for (Ming Lei) [1614198] - [block] drivers/block/aoe/aoedev: NULL check is not needed for (Ming Lei) [1614198] - [block] drivers/block/mtip32xx: remove the null check for (Ming Lei) [1614198] - [block] cfq: Suppress compiler warnings about comparisons (Ming Lei) [1614198] - [block] cfq: Annotate fall-through in a switch statement (Ming Lei) [1614198] - [block] blk-wbt: Avoid lock contention and thundering herd issue in (Ming Lei) [1590363] - [block] target/loop: depend on SCSI (Ming Lei) [1614198] - [block] xen-blkfront: use true and false for boolean values (Ming Lei) [1614198] - [block] lightnvm: remove minor version check for 2.0 (Ming Lei) [1614198] - [block] scsi: Check sense buffer size at build time (Ming Lei) [1614198] - [block] libata-scsi: Move sense buffers onto stack (Ming Lei) [1614198] - [block] cdrom: Use struct scsi_sense_hdr internally (Ming Lei) [1614198] - [block] ide-cd: Remove redundant sense buffer (Ming Lei) [1614198] - [block] block: Switch struct packet_command to use struct (Ming Lei) [1614198] - [block] target: don't depend on SCSI (Ming Lei) [1614198] - [block] scsi: build scsi_common.o for all scsi passthrough request (Ming Lei) [1614198] - [block] scsi: cxlflash: Drop unused sense buffers (Ming Lei) [1614198] - [block] ide-cd: Drop unused sense buffers (Ming Lei) [1614198] - [block] blk-mq: fix updating tags depth (Ming Lei) [1611900] - [block] block: really disable runtime-pm for blk-mq (Ming Lei) [1611902] - [block] aoe: mark expected switch fall-through (Ming Lei) [1614198] - [block] block: make iolatency avg_lat exponentially decay (Ming Lei) [1614198] - [block] blk-cgroup: clear the throttle queue on fork (Ming Lei) [1614198] - [block] blk-cgroup: hold the queue ref during throttling (Ming Lei) [1614198] - [block] blk-iolatency: fix blkg leak in timer_fn (Ming Lei) [1614198] - [block] block/bsg-lib: use PTR_ERR_OR_ZERO to simplify the flow path (Ming Lei) [1614198] - [block] t10-pi: provide empty t10_pi_complete() for (Ming Lei) [1614198] - [block] block: blk_init_allocated_queue() set q->fq as NULL in the (Ming Lei) [1614198] - [block] nvme: use blk API to remap ref tags for IOs with metadata (Ming Lei) [1614198] - [block] block: move dif_prepare/dif_complete functions to block layer (Ming Lei) [1614198] - [block] block: move ref_tag calculation func to the block layer (Ming Lei) [1614198] - [block] block: don't account for split bio's size in cgroup stats (Ming Lei) [1614198] - [block] pktcdvd: Fix possible Spectre-v1 for pkt_devs (Ming Lei) [1614198] - [block] partitions/aix: append null character to print data from disk (Ming Lei) [1614198] - [block] partitions/aix: fix usage of uninitialized lv_info and lvname (Ming Lei) [1614198] - [block] readahead: stricter check for bdi io_pages (Ming Lei) [1614198] - [block] scsi: virtio_scsi: fix pi_bytes(out, in) on 4 KiB block size (Ming Lei) [1614198] - [block] block: move bio_integrity_(intervals, bytes) into blkdev.h (Ming Lei) [1614198] - [block] xen/blkfront: remove unused macros (Ming Lei) [1614198] - [block] block: allow max_discard_segments to be stacked (Ming Lei) [1614198] - [block] block: unexport bio_clone_bioset (Ming Lei) [1614198] - [block] md: remove a bogus comment (Ming Lei) [1614198] - [block] block: remove bio_clone_kmalloc (Ming Lei) [1614198] - [block] exofs: use bio_clone_fast in _write_mirror (Ming Lei) [1614198] - [block] bcache: don't clone bio in bch_data_verify (Ming Lei) [1614198] - [block] block: bio_set_pages_dirty can't see NULL bv_page in a valid (Ming Lei) [1614198] - [block] block: simplify bio_check_pages_dirty (Ming Lei) [1614198] - [block] block: Rename the null_blk_mod kernel module back into (Ming Lei) [1614198] - [block] blk-mq: fail the request in case issue failure (Ming Lei) [1614305] - [block] blk-rq-qos: make depth comparisons unsigned (Ming Lei) [1614198] - [block] blkcg: Track DISCARD statistics and output them in cgroup (Ming Lei) [1614198] - [block] block: Track DISCARD statistics and output them in stat and (Ming Lei) [1614198] - [block] block: Add and use op_stat_group() for indexing disk_stat (Ming Lei) [1614198] - [block] block: Define and use STAT_READ and STAT_WRITE (Ming Lei) [1614198] - [block] block: Add part_stat_read_accum to read across field entries (Ming Lei) [1614198] - [block] block: make bdev_ops->rw_page() take a REQ_OP instead of bool (Ming Lei) [1614198] - [block] pktcdvd: remove assignment in if condition (Ming Lei) [1614198] - [block] blk-mq: issue directly if hw queue isn't busy in case of (Ming Lei) [1614305] - [block] blk-iolatency: truncate our current time (Ming Lei) [1614198] - [block] blk-iolatency: don't change the latency window (Ming Lei) [1614198] - [block] block: remove blkdev_entry_to_request() macro (Ming Lei) [1614198] - [block] block: skd: Use pad printk format for dma_addr_t values (Ming Lei) [1614198] - [block] bsg: remove read/write support (Ming Lei) [1614198] - [block] blk-iolatency: fix max_depth comparisons (Ming Lei) [1614198] - [block] block: iolatency: avoid 64-bit division (Ming Lei) [1614198] - [block] block/DAC960.c: fix defined but not used build warnings (Ming Lei) [1614198] - [block] null_blk: add zone support (Ming Lei) [1614198] - [block] null_blk: move shared definitions to header file (Ming Lei) [1614198] - [block] block: Add default switch case to blk_pm_allow_request() to (Ming Lei) [1614198] - [block] block: fix infinite loop if the device loses discard (Ming Lei) [1614198] - [block] block, mm: remove unnecessary __GFP_HIGH flag (Ming Lei) [1614198] - [block] null_blk: remove NULLB_DEV_FL_CONFIGURED on turning off nullb (Ming Lei) [1614198] - [block] mm: skip readahead if the cgroup is congested (Ming Lei) [1614198] - [block] Documentation: add a doc for blk-iolatency (Ming Lei) [1614198] - [block] block: introduce blk-iolatency io controller (Ming Lei) [1614198] - [block] rq-qos: introduce dio_bio callback (Ming Lei) [1614198] - [block] block: remove external dependency on wbt_flags (Ming Lei) [1614198] - [block] blk-rq-qos: refactor out common elements of blk-wbt (Ming Lei) [1614198] - [block] blk-stat: export helpers for modifying blk_rq_stat (Ming Lei) [1614198] - [block] memcontrol: schedule throttling if we are congested (Ming Lei) [1614198] - [block] blkcg: add generic throttling mechanism (Ming Lei) [1614198] - [block] swap, blkcg: issue swap io with the appropriate context (Ming Lei) [1614198] - [block] blk: introduce REQ_SWAP (Ming Lei) [1614198] - [block] blk-cgroup: allow controllers to output their own stats (Ming Lei) [1614198] - [block] block: introduce bio_issue_as_root_blkg (Ming Lei) [1614198] - [block] block: add bi_blkg to the bio for cgroups (Ming Lei) [1614198] - [block] blk-mq: dequeue request one by one from sw queue if hctx is (Ming Lei) [1614305] - [block] block/loop: mark expected switch fall-through (Ming Lei) [1614198] - [block] drbd: mark expected switch fall-throughs (Ming Lei) [1614198] - [block] blk-mq: only attempt to merge bio if there is rq in sw queue (Ming Lei) [1614305] - [block] blk-mq: use list_splice_tail_init() to insert requests (Ming Lei) [1614305] - [block] blk-mq: fix typo in a function comment (Ming Lei) [1614198] - [block] blk-mq: code clean-up by adding an API to clear set->mq_map (Ming Lei) [1614198] - [block] paride: remove redundant variable n (Ming Lei) [1614198] - [block] partitions/ldm: remove redundant pointer dgrp (Ming Lei) [1614198] - [block] loop: remove redundant pointer inode (Ming Lei) [1614198] - [block] block/floppy: remove redundant variable dflags (Ming Lei) [1614198] - [block] Block: blk-throttle: set low_valid immediately once one (Ming Lei) [1614198] - [block] Blktrace: bail out early if block debugfs is not configured (Ming Lei) [1614198] - [block] block: Document how blk_update_request() handles (Ming Lei) [1614198] - [block] drbd: Do not redefine __must_hold() (Ming Lei) [1614198] - [block] blk-mq: avoid to synchronize rcu inside blk_cleanup_queue() (Ming Lei) [1597067] - [block] blk-mq: remove synchronize_rcu() from (Ming Lei) [1597067] - [block] blk-mq: introduce new lock for protecting hctx->dispatch_wait (Ming Lei) [1597067] - [block] blk-mq: don't pass **hctx to blk_mq_mark_tag_wait() (Ming Lei) [1597067] - [block] blk-mq: cleanup blk_mq_get_driver_tag() (Ming Lei) [1597067] - [block] block, bfq: give a better name to bfq_bfqq_may_idle (Ming Lei) [1614198] - [block] block, bfq: fix service being wrongly set to zero in case of (Ming Lei) [1614198] - [block] block, bfq: do not expire a queue that will deserve dispatch (Ming Lei) [1614198] - [block] block, bfq: add/remove entity weights correctly (Ming Lei) [1614198] - [block] block: Make struct request_queue smaller for (Ming Lei) [1614198] - [block] block: Inline blk_queue_nr_zones() (Ming Lei) [1614198] - [block] block: Remove bdev_nr_zones() (Ming Lei) [1614198] - [block] include/uapi/linux/blkzoned.h: Remove a superfluous __packed (Ming Lei) [1614198] - [block] block: Remove a superfluous cast from blkdev_report_zones() (Ming Lei) [1614198]- [net] tls: mark as Tech Preview (Sabrina Dubroca) [1570255] - [pci] PCI/VPD: Check for VPD access completion before checking for timeout (Myron Stowe) [1618820] - [rpmspec] redhat: remove bootwrapper subpackage (Gustavo Duarte) [1578399] - [virt] kvm: x86: Set highest physical address bits in non-present/reserved SPTEs (Paolo Bonzini) [1614808] - [virt] KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement PV IPIs in linux guest (Paolo Bonzini) [1614808] - [virt] KVM: X86: Add kvm hypervisor init time platform setup callback (Paolo Bonzini) [1614808] - [virt] KVM: X86: Implement "send IPI" hypercall (Paolo Bonzini) [1614808] - [virt] KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() (Paolo Bonzini) [1614808] - [virt] KVM: x86: Skip pae_root shadow allocation if tdp enabled (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Combine flushing remote tlb in mmu_set_spte() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_BASE when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: skip VMWRITE of HOST_(FS, GS)_SEL when possible (Paolo Bonzini) [1614808] - [virt] KVM: vmx: always initialize HOST_(FS, GS)_BASE to zero during setup (Paolo Bonzini) [1614808] - [virt] KVM: vmx: move struct host_state usage to struct loaded_vmcs (Paolo Bonzini) [1614808] - [virt] KVM: vmx: compute need to reload FS/GS/LDT on demand (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: remove a misleading comment regarding vmcs02 fields (Paolo Bonzini) [1614808] - [virt] KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] KVM: vmx: add dedicated utility to access guest's kernel_gs_base (Paolo Bonzini) [1614808] - [virt] KVM: vmx: track host_state.loaded using a loaded_vmcs pointer (Paolo Bonzini) [1614808] - [virt] KVM: vmx: refactor segmentation code in vmx_save_host_state() (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault priority for VMX operations (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 (Paolo Bonzini) [1614808] - [virt] KVM: try __get_user_pages_fast even if not in atomic context (Paolo Bonzini) [1614808] - [virt] KVM: vmx: Add tlb_remote_flush callback support (Paolo Bonzini) [1614808] - [virt] KVM: x86: Add tlb remote flush callback in kvm_x86_ops (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add hyperv_nested_flush_guest_mapping ftrace support (Paolo Bonzini) [1614808] - [virt] X86/Hyper-V: Add flush HvFlushGuestPhysicalAddressSpace hypercall support (Paolo Bonzini) [1614808] - [virt] x86/kvm: Don't use pvqspinlock code if only 1 vCPU (Paolo Bonzini) [1614808] - [virt] KVM/MMU: Simplify __kvm_sync_page() function (Paolo Bonzini) [1614808] - [virt] kvm: x86: Remove CR3_PCID_INVD flag (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add multi-entry LRU cache for previous CR3s (Paolo Bonzini) [1614808] - [virt] kvm: x86: Flush only affected TLB entries in kvm_mmu_invlpg* (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip shadow page resync on CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support selectively freeing either current or previous MMU root (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add a root_hpa parameter to kvm_mmu->invlpg() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Skip TLB flush on fast CR3 switch when indicated by guest (Paolo Bonzini) [1614808] - [virt] kvm: vmx: Support INVPCID in shadow paging mode (Paolo Bonzini) [1614808] - [virt] kvm: x86: Propagate guest PCIDs to host PCIDs (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add ability to skip TLB flush when switching CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Use fast CR3 switch for nested VMX (Paolo Bonzini) [1614808] - [virt] kvm: x86: Support resetting the MMU context without resetting roots (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add support for fast CR3 switch across different MMU modes (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce KVM_REQ_LOAD_CR3 (Paolo Bonzini) [1614808] - [virt] kvm: x86: Introduce kvm_mmu_calc_root_page_role() (Paolo Bonzini) [1614808] - [virt] kvm: x86: Add fast CR3 switch code path (Paolo Bonzini) [1614808] - [virt] kvm: x86: Avoid taking MMU lock in kvm_mmu_sync_roots if no sync is needed (Paolo Bonzini) [1614808] - [virt] kvm: x86: Make sync_page() flush remote TLBs once only (Paolo Bonzini) [1614808] - [virt] KVM: MMU: drop vcpu param in gpte_access (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Separate logic allocating shadow vmcs to a function (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Mark vmcs header as shadow in case alloc_vmcs_cpu() allocate shadow vmcs (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Expose VMCS shadowing to L1 guest (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Do not forward VMREAD/VMWRITE VMExits to L1 if required so by vmcs12 vmread/vmwrite bitmaps (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: vmread/vmwrite: Use shadow vmcs12 if running L2 (Paolo Bonzini) [1614808] - [virt] KVM: selftests: add tests for shadow VMCS save/restore (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: include shadow vmcs12 in nested state (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Cache shadow vmcs12 on VMEntry and flush to memory on VMExit (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing VMCS link pointer (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Verify VMCS shadowing controls (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Introduce nested_cpu_has_shadow_vmcs() (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Fail VMLAUNCH and VMRESUME on shadow VMCS (Paolo Bonzini) [1614808] - [virt] KVM: nVMX: Allow VMPTRLD for shadow VMCS if vCPU supports VMCS shadowing (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Change vmcs12(read, write)_any() to receive vmcs12 as parameter (Paolo Bonzini) [1614808] - [virt] KVM: VMX: Create struct for VMCS header (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add test for nested state save/restore (Paolo Bonzini) [1614808] - [virt] kvm: nVMX: Introduce KVM_CAP_NESTED_STATE (Paolo Bonzini) [1614808] - [virt] KVM: x86: do not load vmcs12 pages while still in SMM (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add basic test for state save and restore (Paolo Bonzini) [1614808] - [virt] kvm: selftests: ensure vcpu file is released (Paolo Bonzini) [1614808] - [virt] kvm: selftests: actually use all of lib/vmx.c (Paolo Bonzini) [1614808] - [virt] kvm: selftests: create a GDT and TSS (Paolo Bonzini) [1614808] - [virt] KVM: x86: ensure all MSRs can always be KVM_GET/SET_MSR'd (Paolo Bonzini) [1614808] - [virt] KVM: vmx: remove save/restore of host BNDCGFS MSR (Paolo Bonzini) [1614808] - [virt] KVM: Switch 'requests' to be 64-bit (explicitly) (Paolo Bonzini) [1614808] - [virt] kvm: selftests: add cr4_cpuid_sync_test (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Read kvm->arch.emul_smt_mode under kvm->lock (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Allow creating max number of VCPUs on POWER9 (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Pack VCORE IDs to access full VCPU ID space (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Fix constant size warning (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S HV: Add of_node_put() in success path (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Book3S: Fix matching of hardware and emulated TCE tables (Paolo Bonzini) [1614808] - [virt] KVM: PPC: Remove mmio_vsx_tx_sx_enabled in KVM MMIO emulation (Paolo Bonzini) [1614808]- [net] tcp: Add tcp_clamp_rto_to_user_timeout() helper to improve accuracy (Michael Cambria) [1605024] - [net] tcp: Add tcp_retransmit_stamp() helper routine (Michael Cambria) [1605024] - [net] tcp: convert icsk_user_timeout from jiffies to msecs (Michael Cambria) [1605024] - [kernel] Revert sched/fair: Consider SD_NUMA when selecting the most idle group to schedule on (Lauro Ramos Venancio) [1585746] - [kernel] redhat: makefile: adjust KBUILD_CFLAGS to reflect kernel.spec for powerpc builds (Gustavo Duarte) [1582568] - [rpmspec] redhat: spec: build ppc64le kernel with -O3 (Gustavo Duarte) [1582568] - [scsi] scsi: csiostor: update csio_get_flash_params() (Arjun Vynipadath) [1503574] - [scsi] csiostor: Add a soft dep on cxgb4 driver (Arjun Vynipadath) [1503574] - [firmware] dell_rbu: make firmware payload memory uncachable (Charles Rose) [1584401]- [scsi] scsi: lpfc: update driver version to 12.0.0.6 (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Remove lpfc_enable_pbde as module parameter (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Correct LCB ACCept payload (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Limit tracking of tgt queue depth in fast path (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix driver crash when re-registering NVME rports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix list corruption on the completion queue (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix sysfs Speed value on CNA ports (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: Fix ELS abort on SLI-3 adapters (Dick Kennedy) [1613913] - [scsi] scsi: lpfc: remove null check on nvmebuf (Dick Kennedy) [1613913] - [arm64] arm64: fix ACPI dependencies (Bhupesh Sharma) [1556832] - [arm64] arm64: acpi: fix alignment fault in accessing ACPI (Bhupesh Sharma) [1556832] - [firmware] efi/arm: map UEFI memory map even w/o runtime services enabled (Bhupesh Sharma) [1556832] - [firmware] efi/arm: preserve early mapping of UEFI memory map longer for BGRT (Bhupesh Sharma) [1556832] - [acpi] drivers: acpi: add dependency of EFI for arm64 (Bhupesh Sharma) [1556832] - [arm64] arm64: export memblock_reserve()d regions via /proc/iomem (Bhupesh Sharma) [1556832] - [arm64] arm64: kconfig: Ensure spinlock fastpaths are inlined if !PREEMPT (Waiman Long) [1607924] - [arm64] arm64: locking: Replace ticket lock implementation with qspinlock (Waiman Long) [1607924] - [arm64] arm64: barrier: Implement smp_cond_load_relaxed (Waiman Long) [1607924] - [scsi] scsi: lpfc: Revise copyright for new company language (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: update driver version to 12.0.0.5 (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: devloss timeout race condition caused null pointer reference (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix NVME Target crash in defer rcv logic (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Support duration field in Link Cable Beacon V1 command (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Make PBDE optimizations configurable (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix abort error path for NVMET (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix panic if driver unloaded when port is offline (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Fix driver not setting dpp bits correctly in doorbell word (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: Add Buffer overflow check, when nvme_info larger than PAGE_SIZE (Dick Kennedy) [1600946] - [scsi] scsi: lpfc: use monotonic timestamps for statistics (Dick Kennedy) [1600946] - [x86] mark intel knights landing and knights mill unsupported (David Arcari) [1610493] - [netdrv] igb: Remove superfluous reset to PHY and page 0 selection (Corinna Vinschen) [1612824] - [tools] selftests/powerpc: Fix ptrace-pkey for default execute permission change (Steve Best) [1498799] - [tools] selftests/powerpc: Fix core-pkey for default execute permission change (Steve Best) [1498799] - [powerpc] powerpc/pkeys: make protection key 0 less special (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Preallocate execute-only key (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Fix calculation of total pkeys (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Save the pkey registers before fork (Steve Best) [1498799] - [powerpc] powerpc/pkeys: key allocation/deallocation must not change pkey registers (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Deny read/write/execute by default (Steve Best) [1498799] - [powerpc] powerpc/pkeys: Give all threads control of their key permissions (Steve Best) [1498799] - [s390] KVM: s390: Add huge page enablement control (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page gmap linking support (David Hildenbrand) [1508102] - [s390] s390/mm: hugetlb pages within a gmap can not be freed (David Hildenbrand) [1508102] - [s390] KVM: s390: Beautify skey enable check (David Hildenbrand) [1508102] - [s390] KVM: s390: Add skey emulation fault handling (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge pmd storage key handling (David Hildenbrand) [1508102] - [s390] s390/mm: Clear skeys for newly mapped huge guest pmds (David Hildenbrand) [1508102] - [s390] s390/mm: Clear huge page storage keys on enable_skey (David Hildenbrand) [1508102] - [s390] s390/mm: Add huge page dirty sync support (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd invalidation and clearing (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd notification bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Add gmap pmd linking (David Hildenbrand) [1508102] - [s390] s390/mm: Abstract gmap notify bit setting (David Hildenbrand) [1508102] - [s390] s390/mm: Make gmap_protect_range more modular (David Hildenbrand) [1508102] - [s390] KVM: s390: Replace clear_user with kvm_clear_guest (David Hildenbrand) [1508102] - [hwmon] hwmon: (ibmpowernv) Add attributes to enable/disable sensor groups (Steve Best) [1524684] - [powerpc] powerpc/powernv: Add support to enable sensor groups (Steve Best) [1524684] - [net] net/smc: improve delete link processing (Hendrik Brueckner) [1548452] - [net] net/smc: provide fallback reason code (Hendrik Brueckner) [1548452] - [net] net/smc: use correct vlan gid of RoCE device (Hendrik Brueckner) [1548452] - [net] net/smc: fewer parameters for smc_llc_send_confirm_link() (Hendrik Brueckner) [1548452] - [net] net/smc: remove local variable page in smc_rx_splice() (Hendrik Brueckner) [1548452] - [net] net/smc: use DECLARE_BITMAP for rtokens_used_mask (Hendrik Brueckner) [1548452] - [net] net/smc: add function to get link group from link (Hendrik Brueckner) [1548452] - [net] net/smc: eliminate cursor read and write calls (Hendrik Brueckner) [1548452] - [net] net/smc: provide smc mode in smc_diag.c (Hendrik Brueckner) [1548452] - [s390] s390/ism: add device driver for internal shared memory (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D diag support (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in af_smc (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in data transfer (Hendrik Brueckner) [1548452] - [net] net/smc: add SMC-D support in CLC messages (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add base infrastructure for SMC-D and ISM (Hendrik Brueckner) [1548452] - [net] net/smc: add pnetid support (Hendrik Brueckner) [1548452] - [net] net/smc: determine port attributes independent from pnet table (Hendrik Brueckner) [1548452] - [x86] mark whiskey-lake processor supported (David Arcari) [1609604] - [s390] KVM: s390: add etoken support for guests (Thomas Huth) [1612110] - [char] ipmi: do not configure ipmi for HPE m400 (Tony Camuso) [1583537] - [scsi] scsi: ipr: Format HCAM overlay ID 0x41 (Steve Best) [1498222] - [x86] x86/stacktrace: Enable HAVE_RELIABLE_STACKTRACE for the ORC unwinder (Joe Lawrence) [1587952] - [x86] x86/unwind/orc: Detect the end of the stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not fail for ORC with regs on stack (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Clarify the reliable success paths (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Remove STACKTRACE_DUMP_ONCE (Joe Lawrence) [1587952] - [x86] x86/stacktrace: Do not unwind after user regs (Joe Lawrence) [1587952] - [infiniband] IB/rxe: Mark Soft-RoCE Transport driver as tech-preview (Don Dutile) [1605216] - [scsi] scsi: smartpqi: bump driver version to 1.1.4-130 (Don Brace) [1503736] - [scsi] scsi: smartpqi: fix critical ARM issue reading PQI index registers (Don Brace) [1503736] - [scsi] scsi: smartpqi: add inspur advantech ids (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve error checking for sync requests (Don Brace) [1503736] - [scsi] scsi: smartpqi: improve handling for sync requests (Don Brace) [1503736] - [netdrv] ice: mark driver as tech-preview (Jonathan Toppins) [1495347] - [init] init/Kconfig: remove EXPERT from CHECKPOINT_RESTORE (Adrian Reber) [1568995 1557617 1525389] - [scsi] be2iscsi: remove BE3 family support (Maurizio Lombardi) [1598366] - [x86] update rh_check_supported processor list (David Arcari) [1595918] - [kernel] kABI: Add generic kABI macros to use for kABI workarounds (Myron Stowe) [1546831] - [pci] add pci_hw_vendor_status() (Maurizio Lombardi) [1590829] - [ata] ahci: thunderx2: Fix for errata that affects stop engine (Robert Richter) [1563590] - [pci] Vulcan: AHCI PCI bar fix for Broadcom Vulcan early silicon (Robert Richter) [1563590] - [kernel] bpf: set default values for bpf_jit_harden and bpf_jit_kallsyms (Eugene Syromiatnikov) [1569061] - [kernel] bpf: Add tech preview taint for syscall (Eugene Syromiatnikov) [1559877] - [kernel] bpf: set unprivileged_bpf_disabled to 1 by default, add a boot parameter (Eugene Syromiatnikov) [1561171] - [kernel] add Red Hat-specific taint flags (Eugene Syromiatnikov) [1559877] - [tools] perf tests: Add Python 3 support to attr.py ("Herton R. Krzesinski") [1561505] - [tools] perf scripts python: Add Python 3 support to stat-cpi.py ("Herton R. Krzesinski") [1561505] - [kernel] kdump: fix a grammar issue in a kernel message (Dave Young) [1507353] - [scripts] tags.sh: Ignore redhat/rpm (Prarit Bhargava) [1582586] - [kernel] put RHEL info into generated headers (Prarit Bhargava) [1544999] - [kernel] kdump: add support for crashkernel=auto (Dave Young) [1507353] - [kernel] kdump: round up the total memory size to 128M for crashkernel reservation (Dave Young) [1507353] - [arm64] acpi: prefer booting with ACPI over DTS (Mark Salter) [1576869] - [acpi] aarch64: acpi scan: Fix regression related to X-Gene UARTs (Mark Salter) [1519554] - [acpi] ACPI / irq: Workaround firmware issue on X-Gene based m400 (Mark Salter) [1519554] - [x86] add rh_check_supported (David Arcari) [1565717] - [scsi] qla2xxx: Remove PCI IDs of deprecated adapter (Himanshu Madhani) [1572233] - [scsi] be2iscsi: remove unsupported device IDs (Chris Leech) [1574502] - [scsi] Removing Obsolete hba pci-ids from rhel8 (Dick Kennedy) [1572321] - [scsi] hpsa: modify hpsa driver version (Joseph Szczypek) [1471185] - [scsi] hpsa: remove old cciss-based smartarray pci ids (Joseph Szczypek) [1471185] - [kernel] rh_taint: add support for marking driver as unsupported (Jonathan Toppins) [1565704] - [kernel] rh_taint: add support (David Arcari) [1565704] - [scsi] qla4xxx: Remove deprecated PCI IDs from RHEL 8 (Chad Dupuis) [1518874] - [scsi] aacraid: Remove depreciated device and vendor PCI id's (Raghava Aditya Renukunta) [1495307] - [scsi] megaraid_sas: remove deprecated pci-ids (Tomas Henzl) [1509329] - [scsi] mpt*: remove certain deprecated pci-ids (Tomas Henzl) [1511953] - [kernel] modules: add rhelversion MODULE_INFO tag (Prarit Bhargava) [1544999] - [acpi] ACPI: APEI: arm64: Ignore broken HPE moonshot APEI support (Al Stone) [1518076] - [rpmspec] compute content hash for kernel-headers (Rafael Aquini) [1613003] - [rpmspec] compress modules on all architectures ("Herton R. Krzesinski") [1614556] - [rpmspec] add gcov rpm packaging support (Jan Stancek) [1601733] - [rpmspec] don't ship spdxcheck.py (Jakub Racek) - [rpmspec] clean stray bpf files (Jakub Racek) [1593309] - [rpmspec] Copy symvers.gz to /lib/modules (Eugene Syromiatnikov) [1609695] - [rpmspec] Add kabi-dup related code into specfile (Petr Oros) [1585672] - [rpmspec] kernel spec: Add and enable kabi check (Petr Oros) [1585672] - [rpmspec] Enable warning checks for configs in rpm build (Prarit Bhargava) [1589858] - [rpmspec] remove workaround for rst2man-3 from python3-docutils ("Herton R. Krzesinski") [1602148] - [rpmspec] fix dist tag used for hardlink in kernel-devel post ("Herton R. Krzesinski") [1596397] - [scripts] get_maintainer.pl: Add optional .get_maintainer.MAINTAINERS override (Prarit Bhargava) [1595727] - [rpmspec] drop kernel package dependency on python2 ("Herton R. Krzesinski") [1561505] - [kernel] Makefile: Move RHEL definitions down (Jakub Racek) [1576568] - [rpmspec] eBPF: Add bpftool package to spec file (Jerome Marchand) [1559607] - [rpmspec] fix conflicts with COPYING file while installing newer 4.17 kernel ("Herton R. Krzesinski") [1579563] - [rpmspec] do not build kernel meta-package on noarch ("Herton R. Krzesinski") [1579512] - [rpmspec] kernel spec: remove copy of arch/x86/purgatory/sha256.* ("Herton R. Krzesinski") - [rpmspec] spec: Add new arch/powerpc/kernel/module.lds file to kernel-devel rpm (Steve Best) [1572553] - [rpmspec] kernel spec: fix recent build errors from brp-mangle-shebangs ("Herton R. Krzesinski") [1575966] - [rpmspec] Add i386 to ExclusiveArch to fix noarch package build ("Herton R. Krzesinski") [1575152] - [rpmspec] Build kernel-abi-whitelists package (Petr Oros) [1571189] - [rpmspec] kernel spec: build bzImage for s390 (Hendrik Brueckner) [1570041] - [rpmspec] kernel spec: arm64: package module.lds in kernel-devel (Mark Salter) [1569014] - [rpmspec] Re-enable debuginfo packages and fix build with current dist tag ("Herton R. Krzesinski") [1568901] - [rpmspec] kernel spec: build kernel-debug on all architectures ("Herton R. Krzesinski") [1567367] - [rpmspec] don't build kernel meta-package if we are only building kernel headers ("Herton R. Krzesinski") - [rpmspec] remove use_vdso macro ("Herton R. Krzesinski") - [rpmspec] build perf and tools man pages instead of relying on a separate tarball ("Herton R. Krzesinski") - [rpmspec] disable debug build if arch is in nobuildarches list ("Herton R. Krzesinski") - [rpmspec] remove fedora changelog from spec file ("Herton R. Krzesinski") - [rpmspec] only support ppc64le builds ("Herton R. Krzesinski") - [rpmspec] remove x86 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove arm 32-bit package support ("Herton R. Krzesinski") - [rpmspec] remove configuration generation support from kernel spec file ("Herton R. Krzesinski") - [rpmspec] remove broken out patches from kernel spec file ("Herton R. Krzesinski") - [rpmspec] import kernel spec from rhel8 bootstrap dist-git ("Herton R. Krzesinski")/bin/sh  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~        !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  !!!!!!!!!! ! ! ! ! !!!!!!!!!!!!!!!!!!! !!!"!#!$!%!&!'!(!)!*!+!,!-!.!/!0!1!2!3!4!5!6!7!8!9!:!;!<!=!>!?!@!A!B!C!D!E!F!G!H!I!J!K!L!M!N!O!P!Q!R!S!T!U!V!W!X!Y!Z![!\!]!^!_!`!a!b!c!d!e!f!g!h!i!j!k!l!m!n!o!p!q!r!s!t!u!v!w!x!y!z!{!|!}!~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"""""""""" " " " " """"""""""""""""""" "!"""#"$"%"&"'"(")"*"+","-"."/"0"1"2"3"4"5"6"7"8"9":";"<"=">"?"@"A"B"C"D"E"F"G"H"I"J"K"L"M"N"O"P"Q"R"S"T"U"V"W"X"Y"Z"["\"]"^"_"`"a"b"c"d"e"f"g"h"i"j"k"l"m"n"o"p"q"r"s"t"u"v"w"x"y"z"{"|"}"~"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""########## # # # # ################### #!#"###$#%#&#'#(#)#*#+#,#-#.#/#0#1#2#3#4#5#6#7#8#9#:#;#<#=#>#?#@#A#B#C#D#E#F#G#H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#[#\#]#^#_#`#a#b#c#d#e#f#g#h#i#j#k#l#m#n#o#p#q#r#s#t#u#v#w#x#y#z#{#|#}#~#################################################################################################################################$$$$$$$$$$ $ $ $ $ $$$$$$$$$$$$$$$$$$$ $!$"$#$$$%$&$'$($)$*$+$,$-$.$/$0$1$2$3$4$5$6$7$8$9$:$;$<$=$>$?$@$A$B$C$D$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$T$U$V$W$X$Y$Z$[$\$]$^$_$`$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z${$|$}$~$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$%%%%%%%%%% % % % % %%%%%%%%%%%%%%%%%%% %!%"%#%$%%%&%'%(%)%*%+%,%-%.%/%0%1%2%3%4%5%6%7%8%9%:%;%<%=%>%?%@%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%[%\%]%^%_%`%a%b%c%d%e%f%g%h%i%j%k%l%m%n%o%p%q%r%s%t%u%v%w%x%y%z%{%|%}%~%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%&&&&&&&&&& & & & & &&&&&&&&&&&&&&&&&&& &!&"&#&$&%&&&'&(&)&*&+&,&-&.&/&0&1&2&3&4&5&6&7&8&9&:&;&<&=&>&?&@&A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&[&\&]&^&_&`&a&b&c&d&e&f&g&h&i&j&k&l&m&n&o&p&q&r&s&t&u&v&w&x&y&z&{&|&}&~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'''''''''' ' ' ' ' ''''''''''''''''''' '!'"'#'$'%'&'''(')'*'+','-'.'/'0'1'2'3'4'5'6'7'8'9':';'<'='>'?'@'A'B'C'D'E'F'G'H'I'J'K'L'M'N'O'P'Q'R'S'T'U'V'W'X'Y'Z'['\']'^'_'`'a'b'c'd'e'f'g'h'i'j'k'l'm'n'o'p'q'r's't'u'v'w'x'y'z'{'|'}'~'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''(((((((((( ( ( ( ( ((((((((((((((((((( (!("(#($(%(&('((()(*(+(,(-(.(/(0(1(2(3(4(5(6(7(8(9(:(;(<(=(>(?(@(A(B(C(D(E(F(G(H(I(J(K(L(M(N(O(P(Q(R(S(T(U(V(W(X(Y(Z([(\(](^(_(`(a(b(c(d(e(f(g(h(i(j(k(l(m(n(o(p(q(r(s(t(u(v(w(x(y(z({(|(}(~((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))) ) ) ) ) ))))))))))))))))))) )!)")#)$)%)&)')()))*)+),)-).)/)0)1)2)3)4)5)6)7)8)9):);)<)=)>)?)@)A)B)C)D)E)F)G)H)I)J)K)L)M)N)O)P)Q)R)S)T)U)V)W)X)Y)Z)[)\)])^)_)`)a)b)c)d)e)f)g)h)i)j)k)l)m)n)o)p)q)r)s)t)u)v)w)x)y)z){)|)})~)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))********** * * * * ******************* *!*"*#*$*%*&*'*(*)***+*,*-*.*/*0*1*2*3*4*5*6*7*8*9*:*;*<*=*>*?*@*A*B*C*D*E*F*G*H*I*J*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*[*\*]*^*_*`*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*{*|*}*~*********************************************************************************************************************************++++++++++ + + + + +++++++++++++++++++ +!+"+#+$+%+&+'+(+)+*+++,+-+.+/+0+1+2+3+4+5+6+7+8+9+:+;+<+=+>+?+@+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+T+U+V+W+X+Y+Z+[+\+]+^+_+`+a+b+c+d+e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+{+|+}+~+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++,,,,,,,,,, , , , , ,,,,,,,,,,,,,,,,,,, ,!,",#,$,%,&,',(,),*,+,,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,[,\,],^,_,`,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,{,|,},~,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,---------- - - - - ------------------- -!-"-#-$-%-&-'-(-)-*-+-,---.-/-0-1-2-3-4-5-6-7-8-9-:-;-<-=->-?-@-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z-[-\-]-^-_-`-a-b-c-d-e-f-g-h-i-j-k-l-m-n-o-p-q-r-s-t-u-v-w-x-y-z-{-|-}-~---------------------------------------------------------------------------------------------------------------------------------.......... . . . . ................... .!.".#.$.%.&.'.(.).*.+.,.-.../.0.1.2.3.4.5.6.7.8.9.:.;.<.=.>.?.@.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V.W.X.Y.Z.[.\.].^._.`.a.b.c.d.e.f.g.h.i.j.k.l.m.n.o.p.q.r.s.t.u.v.w.x.y.z.{.|.}.~.................................................................................................................................////////// / / / / /////////////////// /!/"/#/$/%/&/'/(/)/*/+/,/-/.///0/1/2/3/4/5/6/7/8/9/:/;/</=/>/?/@/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/[/\/]/^/_/`/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/{/|/}/~/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0000000000 0 0 0 0 0000000000000000000 0!0"0#0$0%0&0'0(0)0*0+0,0-0.0/000102030405060708090:0;0<0=0>0?0@0A0B0C0D0E0F0G0H0I0J0K0L0M0N0O0P0Q0R0S0T0U0V0W0X0Y0Z0[0\0]0^0_0`0a0b0c0d0e0f0g0h0i0j0k0l0m0n0o0p0q0r0s0t0u0v0w0x0y0z0{0|0}0~0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111 1 1 1 1 1111111111111111111 1!1"1#1$1%1&1'1(1)1*1+1,1-1.1/101112131415161718191:1;1<1=1>1?1@1A1B1C1D1E1F1G1H1I1J1K1L1M1N1O1P1Q1R1S1T1U1V1W1X1Y1Z1[1\1]1^1_1`1a1b1c1d1e1f1g1h1i1j1k1l1m1n1o1p1q1r1s1t1u1v1w1x1y1z1{1|1}1~1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111112222222222 2 2 2 2 2222222222222222222 2!2"2#2$2%2&2'2(2)2*2+2,2-2.2/202122232425262728292:2;2<2=2>2?2@2A2B2C2D2E2F2G2H2I2J2K2L2M2N2O2P2Q2R2S2T2U2V2W2X2Y2Z2[2\2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2q2r2s2t2u2v2w2x2y2z2{2|2}2~2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222223333333333 3 3 3 3 3333333333333333333 3!3"3#3$3%3&3'3(3)3*3+3,3-3.3/303132333435363738393:3;3<3=3>3?3@3A3B3C3D3E3F3G3H3I3J3K3L3M3N3O3P3Q3R3S3T3U3V3W3X3Y3Z3[3\3]3^3_3`3a3b3c3d3e3f3g3h3i3j3k3l3m3n3o3p3q3r3s3t3u3v3w3x3y3z3{3|3}3~3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333334444444444 4 4 4 4 4444444444444444444 4!4"4#4$4%4&4'4(4)4*4+4,4-4.4/404142434445464748494:4;4<4=4>4?4@4A4B4C4D4E4F4G4H4I4J4K4L4M4N4O4P4Q4R4S4T4U4V4W4X4Y4Z4[4\4]4^4_4`4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|4}4~4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444445555555555 5 5 5 5 5555555555555555555 5!5"5#5$5%5&5'5(5)5*5+5,5-5.5/505152535455565758595:5;5<5=5>5?5@5A5B5C5D5E5F5G5H5I5J5K5L5M5N5O5P5Q5R5S5T5U5V5W5X5Y5Z5[5\5]5^5_5`5a5b5c5d5e5f5g5h5i5j5k5l5m5n5o5p5q5r5s5t5u5v5w5x5y5z5{5|5}5~5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555556666666666 6 6 6 6 6666666666666666666 6!6"6#6$6%6&6'6(6)6*6+6,6-6.6/606162636465666768696:6;6<6=6>6?6@6A6B6C6D6E6F6G6H6I6J6K6L6M6N6O6P6Q6R6S6T6U6V6W6X6Y6Z6[6\6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6w6x6y6z6{6|6}6~6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666667777777777 7 7 7 7 7777777777777777777 7!7"7#7$7%7&7'7(7)7*7+7,7-7.7/707172737475767778797:7;7<7=7>7?7@7A7B7C7D7E7F7G7H7I7J7K7L7M7N7O7P7Q7R7S7T7U7V7W7X7Y7Z7[7\7]7^7_7`7a7b7c7d7e7f7g7h7i7j7k7l7m7n7o7p7q7r7s7t7u7v7w7x7y7z7{7|7}7~7777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777778888888888 8 8 8 8 8888888888888888888 8!8"8#8$8%8&8'8(8)8*8+8,8-8.8/808182838485868788898:8;8<8=8>8?8@8A8B8C8D8E8F8G8H8I8J8K8L8M8N8O8P8Q8R8S8T8U8V8W8X8Y8Z8[8\8]8^8_8`8a8b8c8d8e8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}8~8888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889999999999 9 9 9 9 9999999999999999999 9!9"9#9$9%9&9'9(9)9*9+9,9-9.9/909192939495969798999:9;9<9=9>9?9@9A9B9C9D9E9F9G9H9I9J9K9L9M9N9O9P9Q9R9S9T9U9V9W9X9Y9Z9[9\9]9^9_9`9a9b9c9d9e9f9g9h9i9j9k9l9m9n9o9p9q9r9s9t9u9v9w9x9y9z9{9|9}9~999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:::::::::: : : : : ::::::::::::::::::: :!:":#:$:%:&:':(:):*:+:,:-:.:/:0:1:2:3:4:5:6:7:8:9:::;:<:=:>:?:@:A:B:C:D:E:F:G:H:I:J:K:L:M:N:O:P:Q:R:S:T:U:V:W:X:Y:Z:[:\:]:^:_:`:a:b:c:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:}:~:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;;;;;;;;;; ; ; ; ; ;;;;;;;;;;;;;;;;;;; ;!;";#;$;%;&;';(;);*;+;,;-;.;/;0;1;2;3;4;5;6;7;8;9;:;;;<;=;>;?;@;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;T;U;V;W;X;Y;Z;[;\;];^;_;`;a;b;c;d;e;f;g;h;i;j;k;l;m;n;o;p;q;r;s;t;u;v;w;x;y;z;{;|;};~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<<<<<<<<<< < < < < <<<<<<<<<<<<<<<<<<< =?=@=A=B=C=D=E=F=G=H=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=[=\=]=^=_=`=a=b=c=d=e=f=g=h=i=j=k=l=m=n=o=p=q=r=s=t=u=v=w=x=y=z={=|=}=~=================================================================================================================================>>>>>>>>>> > > > > >>>>>>>>>>>>>>>>>>> >!>">#>$>%>&>'>(>)>*>+>,>->.>/>0>1>2>3>4>5>6>7>8>9>:>;><>=>>>?>@>A>B>C>D>E>F>G>H>I>J>K>L>M>N>O>P>Q>R>S>T>U>V>W>X>Y>Z>[>\>]>^>_>`>a>b>c>d>e>f>g>h>i>j>k>l>m>n>o>p>q>r>s>t>u>v>w>x>y>z>{>|>}>~>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>?????????? ? ? ? ? ??????????????????? ?!?"?#?$?%?&?'?(?)?*?+?,?-?.?/?0?1?2?3?4?5?6?7?8?9?:?;?<?=?>???@?A?B?C?D?E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?U?V?W?X?Y?Z?[?\?]?^?_?`?a?b?c?d?e?f?g?h?i?j?k?l?m?n?o?p?q?r?s?t?u?v?w?x?y?z?{?|?}?~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????@@@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@@@@ @!@"@#@$@%@&@'@(@)@*@+@,@-@.@/@0@1@2@3@4@5@6@7@8@9@:@;@<@=@>@?@@@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@[@\@]@^@_@`@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@{@|@}@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@AAAAAAAAAA A A A A AAAAAAAAAAAAAAAAAAA A!A"A#A$A%A&A'A(A)A*A+A,A-A.A/A0A1A2A3A4A5A6A7A8A9A:A;A<A=A>A?A@AAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZA[A\A]A^A_A`AaAbAcAdAeAfAgAhAiAjAkAlAmAnAoApAqArAsAtAuAvAwAxAyAzA{A|A}A~AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBB B B B B BBBBBBBBBBBBBBBBBBB B!B"B#B$B%B&B'B(B)B*B+B,B-B.B/B0B1B2B3B4B5B6B7B8B9B:B;B<B=B>B?B@BABBBCBDBEBFBGBHBIBJBKBLBMBNBOBPBQBRBSBTBUBVBWBXBYBZB[B\B]B^B_B`BaBbBcBdBeBfBgBhBiBjBkBlBmBnBoBpBqBrBsBtBuBvBwBxByBzB{B|B}B~BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCC C C C C CCCCCCCCCCCCCCCCCCC C!C"C#C$C%C&C'C(C)C*C+C,C-C.C/C0C1C2C3C4C5C6C7C8C9C:C;C<C=C>C?C@CACBCCCDCECFCGCHCICJCKCLCMCNCOCPCQCRCSCTCUCVCWCXCYCZC[C\C]C^C_C`CaCbCcCdCeCfCgChCiCjCkClCmCnCoCpCqCrCsCtCuCvCwCxCyCzC{C|C}C~CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDD D D D D DDDDDDDDDDDDDDDDDDD D!D"D#D$D%D&D'D(D)D*D+D,D-D.D/D0D1D2D3D4D5D6D7D8D9D:D;D<D=D>D?D@DADBDCDDDEDFDGDHDIDJDKDLDMDNDODPDQDRDSDTDUDVDWDXDYDZD[D\D]D^D_D`DaDbDcDdDeDfDgDhDiDjDkDlDmDnDoDpDqDrDsDtDuDvDwDxDyDzD{D|D}D~DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEE E E E E EEEEEEEEEEEEEEEEEEE E!E"E#E$E%E&E'E(E)E*E+E,E-E.E/E0E1E2E3E4E5E6E7E8E9E:E;E<E=E>E?E@EAEBECEDEEEFEGEHEIEJEKELEMENEOEPEQERESETEUEVEWEXEYEZE[E\E]E^E_E`EaEbEcEdEeEfEgEhEiEjEkElEmEnEoEpEqErEsEtEuEvEwExEyEzE{E|E}E~EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFF F F F F FFFFFFFFFFFFFFFFFFF F!F"F#F$F%F&F'F(F)F*F+F,F-F.F/F0F1F2F3F4F5F6F7F8F9F:F;F<F=F>F?F@FAFBFCFDFEFFFGFHFIFJFKFLFMFNFOFPFQFRFSFTFUFVFWFXFYFZF[F\F]F^F_F`FaFbFcFdFeFfFgFhFiFjFkFlFmFnFoFpFqFrFsFtFuFvFwFxFyFzF{F|F}F~FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGG G G G G GGGGGGGGGGGGGGGGGGG G!G"G#G$G%G&G'G(G)G*G+G,G-G.G/G0G1G2G3G4G5G6G7G8G9G:G;G<G=G>G?G@GAGBGCGDGEGFGGGHGIGJGKGLGMGNGOGPGQGRGSGTGUGVGWGXGYGZG[G\G]G^G_G`GaGbGcGdGeGfGgGhGiGjGkGlGmGnGoGpGqGrGsGtGuGvGwGxGyGzG{G|G}G~GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHH H H H H HHHHHHHHHHHHHHHHHHH H!H"H#H$H%H&H'H(H)H*H+H,H-H.H/H0H1H2H3H4H5H6H7H8H9H:H;H<H=H>H?H@HAHBHCHDHEHFHGHHHIHJHKHLHMHNHOHPHQHRHSHTHUHVHWHXHYHZH[H\H]H^H_H`HaHbHcHdHeHfHgHhHiHjHkHlHmHnHoHpHqHrHsHtHuHvHwHxHyHzH{H|H}H~HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIII I I I I IIIIIIIIIIIIIIIIIII I!I"I#I$I%I&I'I(I)I*I+I,I-I.I/I0I1I2I3I4I5I6I7I8I9I:I;I<I=I>I?I@IAIBICIDIEIFIGIHIIIJIKILIMINIOIPIQIRISITIUIVIWIXIYIZI[I\I]I^I_I`IaIbIcIdIeIfIgIhIiIjIkIlImInIoIpIqIrIsItIuIvIwIxIyIzI{I|I}I~IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJ J J J J JJJJJJJJJJJJJJJJJJJ J!J"J#J$J%J&J'J(J)J*J+J,J-J.J/J0J1J2J3J4J5J6J7J8J9J:J;J<J=J>J?J@JAJBJCJDJEJFJGJHJIJJJKJLJMJNJOJPJQJRJSJTJUJVJWJXJYJZJ[J\J]J^J_J`JaJbJcJdJeJfJgJhJiJjJkJlJmJnJoJpJqJrJsJtJuJvJwJxJyJzJ{J|J}J~JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKK K K K K KKKKKKKKKKKKKKKKKKK K!K"K#K$K%K&K'K(K)K*K+K,K-K.K/K0K1K2K3K4K5K6K7K8K9K:K;K<K=K>K?K@KAKBKCKDKEKFKGKHKIKJKKKLKMKNKOKPKQKRKSKTKUKVKWKXKYKZK[K\K]K^K_K`KaKbKcKdKeKfKgKhKiKjKkKlKmKnKoKpKqKrKsKtKuKvKwKxKyKzK{K|K}K~KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLL L L L L LLLLLLLLLLLLLLLLLLL L!L"L#L$L%L&L'L(L)L*L+L,L-L.L/L0L1L2L3L4L5L6L7L8L9L:L;L<L=L>L?L@LALBLCLDLELFLGLHLILJLKLLLMLNLOLPLQLRLSLTLULVLWLXLYLZL[L\L]L^L_L`LaLbLcLdLeLfLgLhLiLjLkLlLmLnLoLpLqLrLsLtLuLvLwLxLyLzL{L|L}L~LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMM M M M M MMMMMMMMMMMMMMMMMMM M!M"M#M$M%M&M'M(M)M*M+M,M-M.M/M0M1M2M3M4M5M6M7M8M9M:M;M<M=M>M?M@MAMBMCMDMEMFMGMHMIMJMKMLMMMNMOMPMQMRMSMTMUMVMWMXMYMZM[M\M]M^M_M`MaMbMcMdMeMfMgMhMiMjMkMlMmMnMoMpMqMrMsMtMuMvMwMxMyMzM{M|M}M~MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNN N N N N NNNNNNNNNNNNNNNNNNN N!N"N#N$N%N&N'N(N)N*N+N,N-N.N/N0N1N2N3N4N5N6N7N8N9N:N;N<N=N>N?N@NANBNCNDNENFNGNHNINJNKNLNMNNNONPNQNRNSNTNUNVNWNXNYNZN[N\N]N^N_N`NaNbNcNdNeNfNgNhNiNjNkNlNmNnNoNpNqNrNsNtNuNvNwNxNyNzN{N|N}N~NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOO O O O O OOOOOOOOOOOOOOOOOOO O!O"O#O$O%O&O'O(O)O*O+O,O-O.O/O0O1O2O3O4O5O6O7O8O9O:O;O<O=O>O?O@OAOBOCODOEOFOGOHOIOJOKOLOMONOOOPOQOROSOTOUOVOWOXOYOZO[O\O]O^O_O`OaObOcOdOeOfOgOhOiOjOkOlOmOnOoOpOqOrOsOtOuOvOwOxOyOzO{O|O}O~OOOO4.18.0-522.rt7.311.el84.18.0-522.rt7.311.el84.18.0-522.rt7.311.el84.18.0-522.rt7.311.el8.x86_64+debug4.18.0-522.rt7.311.el8+debug          !!""#$%%%&&''(())**+++,,---..//0001122233445566667788999:::;;;<<<==>>>??@@AABBCCDDEEFFGGHHHIIJJKKLLLMMNNOOPPQQRRRSSTTUUVVWWWXXYYZZZ[[\\]]^^___``aabbccddeeffggghhhiiijjkkllmnopqqrssttuuvvwvxyz{|}}}}}~~}}}}}}}}}          !!!"!#$$$%&'''(')'*+++,,-+.+/+01234555657589::;<<<=<>??@@AABACDEEFGHHIJJJKJLJMJNOPPPQPRPSPTPUVWWXWYWZ[[[[\\][^^_[`[abbbbccdbebfbgbhhiiijkiliminooooppqorosotouovwwwwwxwywzz{z|z}z~wwwwwwwwwww             !"#######################################################$$$$$$#############%%###############&&&&&&&&############################################################################################################''########################################################################(((###########################################))))))###################******##++++############,,,,,,,,,,,,####"-..........-/000000"12222222222222222222222222222222222222222222222222222222222233435366768696:6;3<3=>>?@AABCDEFFGFHFIFJFKFFLLMFNOFPFQFRFSFTFUVWWWWWXYYZ[[[[[[\\\]\^_``aaaabbcbdbebfagahaiajaklkmknooooppqqrrrssrttuuuvvvwuxxxyxzzx{{x||x}}x~~xuuuuuuuuuuuuuuuuuuuuuuuuu         uuuuuu  u!!u""u##u$$%%%&''&((&))&***+*,,-,.,/,0,1,2,3,4,5,6,7,8,9,:,;,<,=,>,?,@,A,B,C,D,E,F,G,H,I,J,K*LM*NONPNQNRNS&TTUTVVWVXTYYZY[Y\%]]%^^%__%``%aa%bbbccbddbeebffbgg%hh%ii%jj%kk%ll%mm%nnnoonpp%q%rr%sssssst%uu%vv%ww%xx%yy%zz%{{%||%}%~~~~%%%%%%%%%%%%%%%%%%%%%%%%%%%%$$$uuuuuuuuuuuuuu        u  u           uuuuu  u!!!""!##u$$$%%$&&&''&((&))&**&++$,,$---..-//$00$111213314415516177188$999::$;;;<<;==;>>;??;@@;AA;BB;CC;DD;EE;FFGG;HH;II;JJ;KK;LL;MM;NN;OO;PP;QQ;RR;SS;TT;UU;VV;WW;XX;YY$ZZZ[[Z\\Z]]Z^Z_Z``ZaZbbZccZdZeZfZgZhZiiZjZklkmZnnZopZqZrZsZtZuZvvZwxwyywzw{w|Z}Z~ZZZZZ$$$$$$uuuuuuuuu              !!""###$#%#&#'((()(*(+(,(---.-/(0112223344556667788999::;;<<===>>=??=@@AABBBCDDDEDFFGFHIIJJJKKLLMMMNMOOPPPQPRPSPTPUPVPWPXPYPZP[P\]]]^__```aa`bcccdcecffgchcicjckclcm`nn`oo`ppqqrrssstuuvvwwwxyyzzz{|||}}~}}}     u   !! "" ## $$ %% && '' (( )) **u+++,,,--,..,//,00,11+22u3u44u55566577u88u999:u;;u<<u==u>>>???@@>AAABB>CC>DD>EEuFFuGGGHuIIIJJIKKILLIMMINNIOOIPPIQQIRRISSITTIUUIVVIWWIXXIYYuZZZ[[Z\\Z]]Z^^Z__Z``ZaaZbbZccZddZeeZffZggZhhZiZjjZkkZllZmmZnnZooZppZqqZrrusssttsuusvvswwsxsyyyzy{{{||{}}{~~{{uuuuuuuuuuuuuuuuuuuuuuuuuuuu            !!""##$$$%%$&&$''$(($))$**$++,,--..//0011233445566778899::;;<<<==>>>?@@AABBBCBDEEFFGGHHIIIJJIKKILLMMNNNOONPPQQRRSSTTUUVVWWuXXXYYYZZX[[X\\X]]u^u___``uaaabbacccddaeeaffaggahhaiiujjukkkllkmknnkoppoooqorksuttuuuuvvuwuxxuyyuzzu{{u||u}}u~uuuuuuuuuuuuuuuuuuuuuuuuuuuuuu            !!""##$%%&&''(())*++,,--../0000000000000000000000000000001111111000/2222222222222222233333333333333333333322222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222422222/555555/6666676869666::::;;<;;=;:::::::>:?@:A:::B:::C::::::DDD:E::FG::::H:I:::JJJ:KL:::M:NOP:Q:::R:::6S66T6U6VW6X66YYYZY[YYYYYY\YY]^6_6`66a6bbcb66d6efegeehijeklkmmknoepqrpsptupvpwpxpyzp{p|p}p~ppppppppppppppppppppeeeeeeeeeeeeeeeee66666666666666666666666666666666666666666666 6 6   6  66  6                        66 666 66     66  6        ! "  # $666 % % % & ' & ( % ) % % * % % + ,66 - .6 /666 0 0 1 1 0 066 2666 3 4 5 4 4 4 4 4 4 4 4 4 4 4 6 4 4 4 4 4 4 7 7 4 3 8 3 3 9 3 :6 ;6 < < = = >66 ? ? ? ? @ A @ B ? ? ? ? ? ? ? ? ? C C C C ? ? D D D ? ? ? ? ? ? ? E ? ? ? F ?6666 G H I6 J6 K L666 M N M M O O P P M Q M M R M S M M T T M U M M V V M M W W W M X M M M Y M M M M6 Z66 [6 \ \ ]6 ^ _ ^ ` a ` b ` c d ` e ` ` f ` g h ^ i ^ j k66 l l m6 n n o6 p p q r q s p p t t u v66 w x w w y w z { w | } ~6 6 66 6 6 6 6 6 66 6 66 6 6 6 6 6 6 66 66 66 6 66 6 6 66 66 66 666 6 6 666 666 66           666 66    6 66 66 666 6                          !6 " " " " " "6 # # $ # # % & # ' ( # ) * # + # , # -6 . / 06 1 1 1 1 1 2 1 1 1 3 3 3 36 4 56 66 76666 86666 966 :6 ; < ; ; ; = ; ; ; ; ; ; ; > > ; ; ; ? ? ? ? ; @ ; ; ; ; A ; ; ; ;6 B B C C D B E B B F B B G B H6 I66 J J6 K K K666 L M N O P L6666 Q66 R6 S6 T6 U6 V6 W666 X Y Y Y Z X X [ X X X X X \ X ] ^ ] _ ] ` ] X a b X c d X e e X f g X X h h X X i j i k i l i m i i n i o i p q i r r s i t i u i v i w i X x X y y z X { X | } X X ~ X X  X X X X X X X X X X X X X X 6 66 6 6 6 6 666 6 66 66 6 66 6 6 66 6 6 6 6 66666 6 666 6 666 6 6 6 6 666 66 6 6 66 6 6 66 6 6 66 6 6 6 66 6 6 6 666 66 666 6 6   6  66     66 6       6 66 6                                           !  "  #  $   % &  ' (  )  *   + ,66 - - . /6 0 0 0 066 1 1 1 1 1 166 2 3 26 46 56 666 76 86 9 9 :6 ; <6 = > = = ?6 @ @ @ A6 B C6 D E E F D G H D I I J K I L I I M I I I N O O P I Q R I S I T I U V I I W W X I Y I Z I [ \ D ] ^ D _ D D ` D a a D b D c d D e D f D g g h i j i D k D l m D n D o D D p q D r s r t r D u D v D w x D y z D { D D | D } D ~  ~ D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D D 66 66 6 6 666 66 66 6 6 6 6 6 66 6 6 6 6 66 6 6 66 6 66 66 66 66 66 66 6 66 66 666 6 6 6 6 66 6666  6666         66  66           66                     !6 " " " # " " " " $66 % & & ' % ( % % % % % ) ) % % % % * + % , % % % % % - - - % % . % /6 0 1 26 36 466 5 5 6 5 7 5 5 5 8 5 5 9 : 5 5 5 ; 5 5 5 5 5 < = = 5 5 5 5 5 5 5 56 >6 ?66 @ A @ @ B @ @ C6 D D E D F D D D D G G G D D D D H H I H J H D D K D L D D M M D D N D O D P P P D D D D Q D D D R S T D U V D W D D X X X X X X D Y Z D D [ \ D D D ] D ^6 _6 ` a a b b b b66 c c c d c c e c c c66 f6 g6 h i h j k h h l l m h h n h o p o o o o o o q q q q o o o o r r r r r r r h s s h t t t h h h u v v v u w w w w w w w w w w w w u x u h h y y y y y y y y y y z { y y y y | y } } ~ } } } } y y y y  y y y6 6 6 6 66 666 6 6 6 66 666 6 6 6 6666 66 66 6666 6 66 666 6 66 6 66 6666 66 66 66 6 6 6 66666 66 66 666 66 66 66 6 6      6 66  6 6 6 66   66 6 6 6  6  66                66 6 6666 ! " !66 #6 $ %6 & ' &6 ( )6 *666 + + + + + + + +66 , - , , , , , . ,6 / 0 / 1 2 / / 3 / 4 / 5 / 6 7 / 8 / 9 / : / / / ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; / <6 =6 >6 ? @666 A A6 B C6 D6 E E E E E666 F G F F H H F I6 J K6 L L M M N N L L O L L6 P P Q R6 S S6 T T U66 V V6 W666 X6 Y Y Y Z Z66 [ [ [ [ [ [ [ [ [ [ [ [6 \ \6 ] ] ] ] ^ ]6 _ _ ` _ _ a a b a _ c c c c _ _ _ _ _ _ d _ e _ f f _ _ g66 h h6 i i j j i i i i i k i i66 l l m l l l n n l o l l p p p l q l l r l6 s666 t u v u w x u y t6 z {6 | } | | ~ ~ ~ ~ ~ |  |66 66 666 66 6 66 6 6 6 66 6 66 66 666 66 66 66 6 66 6 66 6 6 66 66 6 6666 66 66 6 6 6 66 6  666                                  666666666666666  !6"6###6$$$$$$$%%%%%$$&666'66(6)66***6+,6-66.6/60616626633333334656678666999:666;;<;;6=6666>>>>>>?>>>@A>>B>>>6CDCCCC66E66F666G6H6IIJKKKJLLL6M6N666OPQ6RR6S666TTTTTTTTTTTTTTTT66UV66W66XYXXXZZ[XX\\X]XX^66_6`6aabac666defgddhd6ii6666jjjjjjjk66666lmmm66nnnnn66o6pq6r6st666uuvwxu6y6zz{zzzz|z}zz~zz66666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666 6      66666666 6!!!"!!!!!!!!!!!!!!!!!!!#!!!!!!!!!$!!!!!!!!!%!!!!!!!&!!!!!!!!!!'!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!(!!)!!!!!!!*!!!!!!!!!!!!!!+!!!!!!!!!!!!!6,,--------.--/----0-1,,23,,4,,,5,66676866666966:;;:::<==<<:66>6?6@@@@6A66BC666DEF6G6HII666JJ666KKL66MNMOOMP6QQR66STTUUVSSSSWXSSSYSSSSSSSSSZSS[\S]]^]_]SSSSSS`SSSaSSSbSSSSSccSSSddddSSSSSeffffgfffffffffeeehiejekeeleeemmneeoepqereessttSSSSSSSSSSSSuvuuwSSSSSxySSSSSSSzS{SSSSS|SS}}~SSSSSSSSSSSSSSSSSSS  S    SSSSSSSSSSSSSSS66666666 66!!!"!6#6$66%%%%&6'66(((()6*+66,-.,/,01,,,,662633666466566666677869996:66;6<<=<>6?@6A66BBBBC66D6666E6F6G66H666IJIK66L6MNONMPMQQ66RR6STSUUUU66V6WXWYW6ZZ[Z\Z]66^^^^^^__```__a^6bbbb6cddddddddddddddddc6ef66g6hhhhihhjh66kkk66lmnolpqrlstsusvswlllx6yyz{z|zy6}~6666666666666666666666666666666666666666666666666666666666666666666666           666666666 6!!66""""#66$66%%666&&'&()66*6+6,66-.66//01/2/63666645555555566678669999:;:9<<=9>?>@>>AB9CDE9FG999H9I99J99K99L9M9NO9PPQRPPSTP9UV9W9XY9Z99[[[[9\9]9^_999`9a99bc9dde9f9ggh9i99j9klmn99o99p9qr9s999tu9v96w6xxy66zzzzzzzz{z6||}||6~666666666666666/////////                                              //    !!!!!!!!!!!!!   """""""""""""           #################################################         $                                 /%/&&&&&&&/''((('''''''''''''')))))))))'''''''************'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++''''''''''''''''''''',,,,,'''''''''''''''--.....-//////-----------------------------------'''000000000000000000000''''111111'''''2222''''''''''''''''''''333333333333'''''''''''''44444444444444444444'''''''''''''''''''''''''/555555/6/77777777777777777777777777777777777777777/8999999888888888888888888888888888888888888888888/:;;;:<<<<:=:>:??@@@@@@@?:AAA:B:CC:D:E:F:GGGGGGGGGGGG/HIIIIHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHJJJJJJJJJJJJJKJJJJJHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH/LMMMLLL/NNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONNN/PQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQPRRRRRRRRRRRRRRRRRRRRRRRRPSSSSSSSSSSTSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSUUSVVSSWWWWWWSSSSSSSSSSSXXSSSSSSSSSSSSSSSSSSSSSSSSSSSSYYYYYYYYSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSZSSSSSSSS[SSSSSSS\\SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS]]SSSSSSSSSSSSSSSSSSSSSSSSSS^SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS_SSSSSSSSSSSSSSSSSSSSSSSSSSS`aaaa````````````````````````````````````````````````````````````````````````````````````````SSbbSScccccccccccccccccSSSdddddddddSSeeeeeeeeeeeeeSSSSSSSSSSSSSSSffffSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSggSSSSSSSSSSSSSSSSSSSSShSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSiSSSSSjSSSSSSSSSSkkkkkkkkkkkkkkkkkkkSlllllSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSmmmmmmmmmmmmmSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSnSSSSSSSSSPoooPpppppPqqqqrrqqqqqqqqqqqqqqqqqqqqqqqPssttttssssPuuuuuuuuuuuvwuuuuuxxxxuuPyyyPzzzz/{{{{{{{{{{{{{{/|||||||||||||||||||||||||||||||||||||||||||||||||/}}~~~~~}}}}}}}}}}}}}}}}                               ! " #$$$$$$$$$$$$$$$$$$$$$$$$$%%%%$$$$$$$$$$$$$$$&&$$$$$'()))(((*((((((((((('+++++++',,,,,'----'...................'////'0000$$$$$$$$$$11111111111111112222222222222133333333333333111111111$$$$$$$$$$$$$$$444444444444$$$$55666666666665$$77777777777$$$$$$$$$$$88888888888888899999999888888888888888:;;;:<<<<<<<<<:=====::>>>:??????:@@@@:AAAA:BBBB:CDDDDCEEECFFFCGGG::HHHHH88888$$I$$$$$$$$$$JJJJJJJJJJJJJJ$$$$$KKKKKK$$$$$$$$$$$LLLMMMMLLNNNNNL$$$$$$$$$$$$$$$$$$$$OOOOPPOQORRRSSRTTOUUUVUWOXXOYYYZZO[[O\\O]]^^^__^```aa`b`cc`ddde^ff^gg^hhhihjjjk^lllmlnlolplq^rrrsrtrurvrwrxryrz^{{{|^}}~^^^^^^^^^^^^^^^^           ! "#$##%&&'()*))))+,+-+.+/+0+1+2+3+4+5)6789::::;<;=;>9??@?ABACAD9E9FGFHFIJJKLMLNLOLPPQQRPSSSTPUPVPWPXPYPZP[P\]^]_P`PaPbPcPdPePffgPhPiPjPkPlPmPnPoPpPqPrPsPtPuPvPwPxPyyzy{P|P}P~~~~~~~~~~~~~~~~~~~~PPPPPPPPPPPPPPPPPPPPPPPPPPPPPL4.18.0-522.rt7.311.el8.x86_64+debug.configKconfigKconfig.redhatMakefileMakefile.rhelverModule.symversSystem.maparchKconfigalphaKconfigKconfig.debugMakefilebootMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilearcKconfigKconfig.debugMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplat-axs10xKconfigMakefileplat-eznpsKconfigMakefileplat-hsdkKconfigMakefileplat-simMakefileplat-tb10xKconfigMakefilearmKconfigKconfig-nommuKconfig.debugMakefilebootMakefilebootpMakefilecompressedMakefiledtsMakefilecommonKconfigMakefilecryptoKconfigMakefilefirmwareKconfigMakefilekernelMakefilelibMakefilemach-actionsKconfigMakefilemach-alpineKconfigMakefilemach-artpecKconfigMakefilemach-asm9260Kconfigmach-aspeedKconfigmach-at91KconfigMakefileMakefile.bootmach-axxiaKconfigMakefilemach-bcmKconfigMakefilemach-berlinKconfigMakefilemach-clps711xKconfigMakefilemach-cns3xxxKconfigMakefilemach-davinciKconfigMakefileMakefile.bootmach-digicolorKconfigMakefilemach-doveKconfigMakefileMakefile.bootmach-ebsa110MakefileMakefile.bootmach-efm32MakefileMakefile.bootmach-ep93xxKconfigMakefileMakefile.bootmach-exynosKconfigMakefilemach-footbridgeKconfigMakefileMakefile.bootmach-geminiKconfigMakefilemach-highbankKconfigMakefilemach-hisiKconfigMakefilemach-imxKconfigMakefileMakefile.bootdevicesKconfigMakefilemach-integratorKconfigMakefilemach-iop13xxKconfigMakefileMakefile.bootmach-iop32xKconfigMakefileMakefile.bootmach-iop33xKconfigMakefileMakefile.bootmach-ixp4xxKconfigMakefileMakefile.bootmach-keystoneKconfigMakefilemach-ks8695KconfigMakefileMakefile.bootmach-lpc18xxMakefileMakefile.bootmach-lpc32xxMakefileMakefile.bootmach-mediatekKconfigMakefilemach-mesonKconfigMakefilemach-mmpKconfigMakefilemach-moxartKconfigMakefilemach-mv78xx0KconfigMakefilemach-mvebuKconfigMakefilemach-mxsKconfigMakefilemach-netxKconfigMakefileMakefile.bootmach-nomadikKconfigMakefilemach-npcmKconfigMakefilemach-nspireKconfigMakefilemach-omap1KconfigMakefileMakefile.bootmach-omap2KconfigMakefilemach-orion5xKconfigMakefilemach-oxnasKconfigMakefilemach-picoxcellKconfigMakefilemach-prima2KconfigMakefilemach-pxaKconfigMakefileMakefile.bootmach-qcomKconfigMakefilemach-realviewKconfigMakefilemach-rockchipKconfigMakefilemach-rpcMakefileMakefile.bootmach-s3c24xxKconfigMakefileMakefile.bootmach-s3c64xxKconfigMakefilemach-s5pv210KconfigMakefilemach-sa1100KconfigMakefileMakefile.bootmach-shmobileKconfigMakefilemach-socfpgaKconfigMakefilemach-spearKconfigMakefilemach-stiKconfigMakefilemach-stm32KconfigMakefileMakefile.bootmach-sunxiKconfigMakefilemach-tangoKconfigMakefilemach-tegraKconfigMakefilemach-u300KconfigMakefilemach-uniphierKconfigMakefilemach-ux500KconfigMakefilemach-versatileKconfigMakefilemach-vexpressKconfigMakefileMakefile.bootmach-vt8500KconfigMakefileMakefile.bootmach-w90x900KconfigMakefileMakefile.bootmach-zxKconfigMakefilemach-zynqKconfigMakefilemmKconfigMakefilenetMakefilenwfpeMakefileoprofileMakefileplat-iopMakefileplat-omapKconfigMakefileplat-orionMakefileplat-pxaKconfigMakefileplat-samsungKconfigMakefileplat-versatileKconfigMakefileprobesMakefilekprobesMakefileuprobesMakefiletoolsMakefilevdsoMakefilevfpMakefilexenMakefilearm64KconfigKconfig.debugKconfig.platformsMakefilebootMakefiledtsMakefileactionsMakefilealMakefileallwinnerMakefilealteraMakefileamdMakefileamlogicMakefileapmMakefilearmMakefilebroadcomMakefilenorthstar2MakefilestingrayMakefilecaviumMakefileexynosMakefilefreescaleMakefilehisiliconMakefilelgMakefilemarvellMakefilemediatekMakefilenvidiaMakefileqcomMakefilerealtekMakefilerenesasMakefilerockchipMakefilesocionextMakefilesprdMakefilesynapticsMakefilexilinxMakefilezteMakefilecryptoKconfigMakefilehypervMakefilekernelMakefileprobesMakefilevdsoMakefilevdso32MakefilekvmKconfigMakefilehypMakefilenvheMakefilevheMakefilelibMakefilemmMakefilenetMakefiletoolsMakefilexenMakefilec6xKconfigMakefilebootMakefiledtsMakefilekernelMakefilelibMakefilemmMakefileplatformsKconfigMakefileh8300KconfigKconfig.cpuMakefilebootMakefilecompressedMakefiledtsMakefilekernelMakefilelibMakefilemmMakefilehexagonKconfigMakefilekernelMakefilelibMakefilemmMakefileia64KconfigKconfig.debugMakefiledigMakefilehpcommonMakefilesimKconfigMakefilebootMakefilezx1MakefilekernelMakefileMakefile.gatelibMakefilemmMakefileoprofileMakefilepciMakefilesnMakefilekernelMakefilesn2MakefilepciMakefilepcibrMakefileuvMakefilekernelMakefilem68k68000MakefileKconfigKconfig.busKconfig.cpuKconfig.debugKconfig.devicesKconfig.machineMakefileamigaMakefileapolloMakefileatariMakefilebvme6000MakefilecoldfireMakefileemuMakefilefpsp040Makefilehp300Makefileifpsp060MakefilekernelMakefilelibMakefilemacMakefilemath-emuMakefilemmMakefilemvme147Makefilemvme16xMakefileq40Makefilesun3MakefilepromMakefilesun3xMakefiletoolsamigaMakefilemicroblazeKconfigKconfig.debugKconfig.platformMakefilebootMakefiledtsMakefilekernelMakefilecpuMakefilelibMakefilemmMakefileoprofileMakefilepciMakefilemipsKconfigKconfig.debugMakefileMakefile.postlinkalchemyKconfigMakefilecommonMakefiledevboardsMakefilear7Makefileath25KconfigMakefileath79KconfigMakefilebcm47xxKconfigMakefilebcm63xxKconfigMakefileboardsKconfigMakefilebmipsKconfigMakefilebootMakefilecompressedMakefiledtsMakefilebrcmMakefilecavium-octeonMakefileimgMakefileingenicMakefilelantiqMakefilemsccMakefilemtiMakefilenetlogicMakefileniMakefilepic32MakefileqcaMakefileralinkMakefilexilfpgaMakefiletoolsMakefilecavium-octeonKconfigMakefilecryptoMakefileexecutiveMakefilecobaltMakefilecryptoMakefiledecMakefilepromMakefileemmaMakefilecommonMakefilemarkeinsMakefilefwarcMakefilecfeMakefilelibMakefilesniMakefilegenericKconfigMakefilejazzKconfigMakefilejz4740KconfigMakefilekernelMakefilekvmKconfigMakefilelantiqKconfigMakefilefalconMakefilexwayMakefilelasatKconfigMakefileimageMakefilelibMakefileloongson32KconfigMakefilecommonMakefilels1bMakefilels1cMakefileloongson64KconfigMakefilecommonMakefilecs5536Makefilefuloong-2eMakefilelemote-2fMakefileloongson-3Makefilemath-emuMakefilemmMakefilemti-maltaMakefilenetMakefilenetlogicKconfigMakefilecommonMakefilexlpMakefilexlrMakefileoprofileMakefileparavirtKconfigMakefilepciMakefilepic32KconfigMakefilecommonMakefilepic32mzdaMakefilepistachioKconfigMakefilepmcs-msp71xxKconfigMakefilepnx833xMakefilecommonMakefilestb22xMakefilepowerMakefileralinkKconfigMakefilerb532Makefilesgi-ip22Makefilesgi-ip27KconfigMakefilesgi-ip32MakefilesibyteKconfigMakefilebcm1480MakefilecommonMakefilesb1250MakefileswarmMakefilesniMakefiletxx9KconfigMakefilegenericMakefilejmr3927Makefilerbtx4927Makefilerbtx4938Makefilerbtx4939MakefilevdsoMakefilevr41xxKconfigcasio-e55MakefilecommonMakefileibm-workpadMakefilends32KconfigKconfig.cpuMakefilebootMakefiledtsMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefilenios2KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmMakefileplatformKconfig.platformMakefileopenriscKconfigMakefilebootdtsMakefilekernelMakefilelibMakefilemmMakefilepariscKconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefileoprofileMakefilepowerpcKconfigKconfig.debugMakefileMakefile.postlinkbootMakefilecryptoMakefilekernelMakefileptraceMakefiletraceMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilebook3s32Makefilebook3s64MakefilenetMakefileoprofileMakefileperfMakefileplatforms40xKconfigMakefile44xKconfigMakefile4xxMakefile512xKconfigMakefile52xxKconfigMakefile82xxKconfigMakefile83xxKconfigMakefile85xxKconfigMakefile86xxKconfigMakefile8xxKconfigMakefileKconfigKconfig.cputypeMakefileamigaoneKconfigMakefilebook3sKconfigMakefilecellKconfigMakefilespufsMakefilechrpKconfigMakefileembedded6xxKconfigMakefilemapleKconfigMakefilepasemiKconfigMakefilepowermacKconfigMakefilepowernvKconfigMakefileps3KconfigMakefilepseriesKconfigMakefilepurgatoryMakefilesysdevKconfigMakefilegeMakefilexicsKconfigMakefilexiveKconfigMakefilexmonMakefileriscvKconfigMakefilekernelMakefilevdsoMakefilelibMakefilemmMakefiles390KconfigKconfig.debugMakefileappldataMakefilebootMakefilecompressedMakefilecryptoMakefilehypfsMakefilekernelMakefilesyscallsMakefilevdso32Makefilevdso64MakefilekvmKconfigMakefilelibMakefilemmMakefilenetMakefilenumaMakefileoprofileMakefilepciMakefilepurgatoryMakefilescriptsMakefile.chkbsstoolsMakefileshKconfigKconfig.cpuKconfig.debugMakefileboardsKconfigMakefilemach-ap325rxaMakefilemach-caymanMakefilemach-dreamcastMakefilemach-ecovec24Makefilemach-highlanderKconfigMakefilemach-hp6xxMakefilemach-kfr2r09Makefilemach-landiskMakefilemach-lboxre2Makefilemach-microdevMakefilemach-migorKconfigMakefilemach-r2dKconfigMakefilemach-rskKconfigMakefilemach-sdk7780KconfigMakefilemach-sdk7786Makefilemach-se7206Makefile7343Makefile770xMakefile7721Makefile7722Makefile7724Makefile7751Makefile7780MakefileMakefilemach-sh03Makefilemach-sh7763rdpMakefilemach-x3protoMakefilebootMakefilecompressedMakefiledtsMakefileromimageMakefilecchipsKconfighd6446xMakefiledriversKconfigMakefiledmaKconfigMakefilepciMakefilesuperhywayMakefilekernelMakefilecpuMakefileirqMakefilesh2Makefilesh2aMakefilesh3Makefilesh4Makefilesh4aMakefilesh5MakefileshmobileMakefilevsyscallMakefilelibMakefilelib64Makefilemath-emuMakefilemmKconfigMakefileoprofileMakefiletoolsMakefilesparcKconfigKconfig.debugMakefilebootMakefilecryptoMakefilekernelMakefilelibMakefilemath-emuMakefilemmMakefilenetMakefileoprofileMakefilepowerMakefilepromMakefilevdsoMakefileumKconfig.charKconfig.commonKconfig.debugKconfig.netKconfig.restKconfig.umMakefileMakefile-os-LinuxMakefile-skasdriversMakefilekernelMakefileskasMakefileos-LinuxMakefiledriversMakefileskasMakefilescriptsMakefile.rulesunicore32KconfigKconfig.debugMakefilebootMakefilecompressedMakefilekernelMakefilelibMakefilemmKconfigMakefilex86KconfigKconfig.cpuKconfig.debugMakefileMakefile.umMakefile_32.cpubootMakefilecompressedMakefilectype.hstring.cstring.hcocoMakefiletdxMakefilecryptoMakefilesha1-mbMakefilesha256-mbMakefilesha512-mbMakefileentryMakefilesyscallsMakefilesyscall_32.tblsyscall_64.tblsyscallhdr.shsyscalltbl.shvdsoMakefilevsyscallMakefileeventsKconfigMakefileamdMakefileintelMakefilehypervMakefileia32MakefileincludeasmKbuilda.out-core.hacenv.hacpi.hagp.halternative.hamd-ibs.hamd_hsmp.hamd_nb.hapb_timer.hapic.hapic_flat_64.hapicdef.hapm.harch_hweight.harchrandom.hasm-offsets.hasm-prototypes.hasm.hatomic.hatomic64_32.hatomic64_64.haudit.hbarrier.hbios_ebda.hbitops.hboot.hbootparam_utils.hbug.hbugs.hcache.hcacheflush.hcacheinfo.hcalgary.hce4100.hchecksum.hchecksum_32.hchecksum_64.hclocksource.hcmdline.hcmpxchg.hcmpxchg_32.hcmpxchg_64.hcoco.hcompat.hcpu.hcpu_device_id.hcpu_entry_area.hcpufeature.hcpufeatures.hcpuid.hcpuidle_haltpoll.hcpumask.hcrash.hcryptoaes.hcamellia.hglue_helper.hserpent-avx.hserpent-sse2.htwofish.hcurrent.hdebugreg.hdelay.hdesc.hdesc_defs.hdevice.hdisabled-features.hdiv64.hdma-mapping.hdma.hdmi.hdwarf2.he820api.htypes.hedac.hefi.helf.hemergency-restart.hemulate_prefix.henclu.hentry_arch.hespfix.hexec.hexport.hextable.hfb.hfixmap.hfloppy.hfpuapi.hinternal.hregset.hsched.hsignal.htypes.hxcr.hxstate.hframe.hfsgsbase.hftrace.hfutex.hgart.hgenapic.hgeode.hhardirq.hhighmem.hhpet.hhugetlb.hhw_breakpoint.hhw_irq.hhyperv-tlfs.hhypervisor.hi8259.hia32.hia32_unistd.himr.hinat.hinat_types.hinit.hinsn-eval.hinsn.hinst.hintel-family.hintel-mid.hintel_ds.hintel_mid_vrtc.hintel_pconfig.hintel_pmc_ipc.hintel_pt.hintel_punit_ipc.hintel_scu_ipc.hintel_telemetry.hinvpcid.hio.hio_apic.hiomap.hiommu.hiosf_mbi.hipi.hirq.hirq_regs.hirq_remapping.hirq_vectors.hirq_work.hirqdomain.hirqflags.hist.hjailhouse_para.hjump_label.hkasan.hkaslr.hkbdleds.hkdebug.hkexec-bzimage64.hkexec.hkgdb.hkprobes.hkvm-x86-ops.hkvm_host.hkvm_page_track.hkvm_para.hkvm_types.hkvm_vcpu_regs.hkvmclock.hlinkage.hlivepatch.hlocal.hlocal64.hmach_timer.hmach_traps.hmath_emu.hmc146818rtc.hmce.hmcsafe_test.hmem_encrypt.hmemtype.hmicrocode.hmicrocode_amd.hmicrocode_intel.hmisc.hmmconfig.hmmu.hmmu_context.hmmx.hmmzone.hmmzone_32.hmmzone_64.hmodule.hmpspec.hmpspec_def.hmpx.hmshyperv.hmsi.hmsidef.hmsr-index.hmsr-trace.hmsr.hmtrr.hmwait.hnmi.hnops.hnospec-branch.hnuma.hnuma_32.hnumachipnumachip.hnumachip_csr.holpc.holpc_ofw.horc_lookup.horc_types.hpage.hpage_32.hpage_32_types.hpage_64.hpage_64_types.hpage_types.hparavirt.hparavirt_types.hparport.hpci-direct.hpci-functions.hpci.hpci_64.hpci_x86.hpercpu.hperf_event.hperf_event_p4.hpgalloc.hpgtable-2level.hpgtable-2level_types.hpgtable-3level.hpgtable-3level_types.hpgtable-invert.hpgtable.hpgtable_32.hpgtable_32_types.hpgtable_64.hpgtable_64_types.hpgtable_types.hpkeys.hpkru.hplatform_sst_audio.hpm-trace.hposix_types.hpreempt.hprobe_roms.hprocessor-cyrix.hprocessor-flags.hprocessor.hprom.hproto.hpti.hptrace.hpurgatory.hpvclock-abi.hpvclock.hqrwlock.hqspinlock.hqspinlock_paravirt.hrealmode.hreboot.hreboot_fixups.hrefcount.hrequired-features.hresctrl.hrio.hrmwcc.hseccomp.hsections.hsegment.hserial.hset_memory.hsetup.hsetup_arch.hsev-common.hsev.hsgx.hsharedio.hmsr.htdx.hshmparam.hsigcontext.hsigframe.hsighandling.hsignal.hsimd.hsmap.hsmp.hsparsemem.hspec-ctrl.hspecial_insns.hspinlock.hspinlock_types.hsta2x11.hstackprotector.hstacktrace.hstring.hstring_32.hstring_64.hsuspend.hsuspend_32.hsuspend_64.hsvm.hswitch_to.hsync_bitops.hsync_core.hsyscall.hsyscall_wrapper.hsyscalls.hsysfb.htce.htdx.htext-patching.hthermal.hthread_info.htime.htimer.htimex.htlb.htlbbatch.htlbflush.htopology.htracecommon.hexceptions.hfpu.hhyperv.hirq_vectors.hmpx.htrace_clock.htrap_pf.htrapnr.htraps.htsc.huaccess.huaccess_32.huaccess_64.humip.hunaligned.hunistd.hunwind.hunwind_hints.huprobes.huser.huser32.huser_32.huser_64.huvbios.huv.huv_geo.huv_hub.huv_irq.huv_mmrs.hvdsovdso.hclocksource.hgettimeofday.hprocessor.hvsyscall.hvga.hvgtod.hvirtext.hvm86.hvmware.hvmx.hvmxfeatures.hvsyscall.hvvar.hword-at-a-time.hx86_init.hxencpuid.hevents.hhypercall.hhypervisor.hinterface.hinterface_32.hinterface_64.hpage-coherent.hpage.hpci.hswiotlb-xen.htrace_types.hxor.hxor_32.hxor_64.hxor_avx.hgeneratedasmdma-contiguous.hearly_ioremap.hkmap_size.hmcs_spinlock.hmm-arch-hooks.hmmiowb.hsyscalls_32.hsyscalls_64.hunistd_32_ia32.hunistd_64_x32.huapiasmbpf_perf_event.hpoll.hsocket.hunistd_32.hunistd_64.hunistd_x32.huapiasmKbuilda.out.hamd_hsmp.hauxvec.hbitsperlong.hboot.hbootparam.hbyteorder.hdebugreg.he820.herrno.hfcntl.hhw_breakpoint.hhwcap2.hioctl.hioctls.hipcbuf.hist.hkvm.hkvm_para.hkvm_perf.hldt.hmce.hmman.hmsgbuf.hmsr.hmtrr.hparam.hperf_regs.hposix_types.hposix_types_32.hposix_types_64.hposix_types_x32.hprctl.hprocessor-flags.hptrace-abi.hptrace.hresource.hsembuf.hsetup.hsgx.hshmbuf.hsigcontext.hsigcontext32.hsiginfo.hsignal.hsockios.hstat.hstatfs.hsvm.hswab.htermbits.htermios.htypes.hucontext.hunistd.hvm86.hvmx.hvsyscall.hkernelMakefileacpiMakefileapicMakefilecpuMakefilemceMakefilemicrocodeMakefilemtrrMakefileresctrlMakefilesgxMakefilefpuMakefilekprobesMakefilekvmKconfigMakefilelibMakefilemath-emuMakefilemmMakefilepatMakefilenetMakefileoprofileMakefilepciMakefileplatformMakefileatomMakefilece4100MakefileefiMakefilegeodeMakefilegoldfishMakefileintelintel-midMakefiledevice_libsMakefileintel-quarkMakefileMakefileirisMakefileolpcMakefilescx200MakefilesfiMakefilets5500MakefileuvMakefilepowerMakefilepurgatoryMakefileentry64.Spurgatory.csetup-x86_64.Sstack.SrasKconfigrealmodeMakefilermMakefiletoolsMakefilerelocs.crelocs.hrelocs_32.crelocs_64.crelocs_common.cumKconfigMakefileos-LinuxMakefilevdsoMakefilevideoMakefilexenKconfigMakefilextensaKconfigKconfig.debugMakefilebootMakefileboot-elfMakefileboot-redbootMakefiledtsMakefilelibMakefilekernelMakefilelibMakefilemmMakefileoprofileMakefileplatformsissMakefilext2000MakefilextfpgaMakefileblockKconfigKconfig.ioschedMakefilepartitionsKconfigMakefilecertsKconfigMakefilecryptoKconfigMakefileasymmetric_keysKconfigMakefileasync_txKconfigMakefiledriversKconfigMakefileaccessibilityKconfigMakefilebrailleMakefileacpiKconfigMakefileacpicaMakefileapeiKconfigMakefilearm64KconfigMakefiledptfKconfigMakefilenfitKconfigMakefilenumaKconfigMakefilepmicKconfigMakefileambaKconfigMakefileandroidKconfigMakefileataKconfigMakefileatmKconfigMakefileauxdisplayKconfigMakefilebaseKconfigMakefilefirmware_loaderKconfigMakefilepowerMakefileregmapKconfigMakefiletestKconfigMakefilebcmaKconfigMakefileblockKconfigMakefileaoeMakefiledrbdKconfigMakefilemtip32xxKconfigMakefileparideKconfigMakefilersxxMakefilexen-blkbackMakefilezramKconfigMakefilebluetoothKconfigMakefilebusKconfigMakefilefsl-mcKconfigMakefilemhiKconfigMakefileepKconfigMakefilehostKconfigMakefilecdromMakefilecharKconfigMakefileagpKconfigMakefilehw_randomKconfigMakefileipmiKconfigMakefilemwaveMakefilepcmciaKconfigMakefiletpmKconfigMakefilest33zp24KconfigMakefilexilinx_hwicapMakefilexillybusKconfigMakefileclkKconfigMakefileactionsKconfigMakefileat91MakefileaxisMakefileaxs10xMakefilebcmKconfigMakefileberlinMakefiledavinciMakefileh8300MakefilehisiliconKconfigMakefileimgtecKconfigMakefileimxMakefileingenicMakefilekeystoneKconfigMakefileloongson1MakefilemediatekKconfigMakefilemesonKconfigMakefilemicrochipMakefilemmpMakefilemvebuKconfigMakefilemxsMakefilenxpMakefilepistachioMakefilepxaMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipMakefilesamsungKconfigMakefilesirfMakefilesocfpgaMakefilespearMakefilesprdKconfigMakefilestMakefilesunxisunxi-ngKconfigMakefileMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefileux500MakefileversatileKconfigMakefilex86MakefilezteMakefilezynqMakefileclocksourceKconfigMakefileconnectorKconfigMakefilecounterKconfigMakefilecpufreqKconfigKconfig.armKconfig.powerpcKconfig.x86MakefilecpuidleKconfigKconfig.armKconfig.mipsKconfig.powerpcMakefilegovernorsMakefilecryptoKconfigMakefileamccMakefileaxisMakefilebcmMakefilecaamKconfigMakefilecaviumMakefilecptKconfigMakefilenitroxKconfigMakefilezipMakefileccpKconfigMakefileccreeMakefilechelsioKconfigMakefilechtlsMakefileinside-secureMakefilemarvellMakefilemediatekMakefilenxKconfigMakefileqatKconfigMakefileqat_4xxxMakefileqat_c3xxxMakefileqat_c3xxxvfMakefileqat_c62xMakefileqat_c62xvfMakefileqat_commonMakefileqat_dh895xccMakefileqat_dh895xccvfMakefileqceMakefilerockchipMakefilestm32KconfigMakefilesunxi-ssMakefileux500KconfigMakefilecrypMakefilehashMakefilevirtioKconfigMakefilevmxKconfigMakefiledaxKconfigMakefilehmemMakefilepmemMakefiledcaKconfigMakefiledevfreqKconfigMakefileeventKconfigMakefiledioMakefiledmadma-bufKconfigMakefileheapsKconfigMakefileKconfigMakefilebestcommKconfigMakefiledwdw-axi-dmacMakefileKconfigMakefilehsuKconfigMakefileidxdMakefileioatMakefileipuMakefilemediatekKconfigMakefileppc4xxMakefileptdmaKconfigMakefileqcomKconfigMakefileshKconfigMakefiletiKconfigMakefilexilinxMakefileedacKconfigMakefileeisaKconfigMakefileextconKconfigMakefilefirewireKconfigMakefilefirmwareKconfigMakefilearm_scmiMakefilebroadcomKconfigMakefilecirrusKconfigMakefileefiKconfigMakefilelibstubMakefiletestMakefilegoogleKconfigMakefilemesonKconfigMakefilepsciKconfigMakefilesmcccKconfigMakefiletegraKconfigMakefilefmcKconfigMakefilefpgaKconfigMakefilefsiKconfigMakefilegpioKconfigMakefilegpuMakefiledrmKconfigMakefileamdacpKconfigMakefileamdgpuKconfigMakefileamdkfdKconfigMakefiledisplayKconfigMakefileamdgpu_dmMakefiledcMakefilebasicsMakefilebiosMakefileclk_mgrMakefiledceMakefiledce100Makefiledce110Makefiledce112Makefiledce120Makefiledce60Makefiledce80Makefiledcn10Makefiledcn20Makefiledcn201Makefiledcn21Makefiledcn30Makefiledcn301Makefiledcn302Makefiledcn303Makefiledcn31Makefiledcn314Makefiledcn315Makefiledcn316Makefiledcn32Makefiledcn321MakefiledmlMakefiledscMakefilegpioMakefilehdcpMakefileirqMakefilelinkMakefilevirtualMakefiledmubsrcMakefilemodulescolorMakefilefreesyncMakefilehdcpMakefileinfo_packetMakefilepowerMakefilepmMakefilelegacy-dpmMakefilepowerplayMakefilehwmgrMakefilesmumgrMakefileswsmuMakefilesmu11Makefilesmu12Makefilesmu13MakefilearmKconfigMakefilearmadaKconfigMakefileaspeedKconfigMakefileastKconfigMakefileatmel-hlcdcKconfigMakefilebridgeKconfigMakefileadv7511KconfigMakefileanalogixKconfigMakefilecadenceKconfigMakefileimxKconfigMakefilesynopsysKconfigMakefiledisplayKconfigMakefileetnavivKconfigMakefileexynosKconfigMakefilefsl-dcuKconfigMakefilegma500KconfigMakefilegudKconfigMakefilehisiliconKconfigMakefilehibmcKconfigMakefilekirinKconfigMakefilehypervMakefilei2cKconfigMakefilei915KconfigKconfig.debugKconfig.profileKconfig.unstableMakefilegvtMakefileimxKconfigMakefilekmbKconfigMakefilelogicvcKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemgag200KconfigMakefilemsmKconfigMakefilemxsfbKconfigMakefilenouveauKconfigomapdrmKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilepanelKconfigMakefilepl111KconfigMakefileqxlKconfigMakefileradeonKconfigMakefilercar-duKconfigMakefilerockchipKconfigMakefileschedulerMakefileshmobileKconfigMakefilesolomonKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesun4iKconfigMakefiletegraKconfigMakefiletestsMakefiletilcdcKconfigMakefiletinyKconfigMakefilettmMakefiletve200KconfigMakefileudlKconfigMakefilev3dKconfigMakefilevboxvideoKconfigMakefilevc4KconfigMakefilevgemMakefilevirtioKconfigMakefilevkmsMakefilevmwgfxKconfigMakefilexenKconfigMakefilehost1xKconfigMakefileipu-v3KconfigMakefilevgaKconfigMakefilehidKconfigMakefileamd-sfh-hidKconfigMakefilei2c-hidKconfigMakefileintel-ish-hidKconfigMakefilesurface-hidKconfigMakefileusbhidKconfigMakefilehsiKconfigMakefileclientsKconfigMakefilecontrollersKconfigMakefilehvKconfigMakefilehwmonKconfigMakefilepmbusKconfigMakefilehwspinlockKconfigMakefilehwtracingKconfigcoresightKconfigMakefileintel_thKconfigMakefilestmKconfigMakefilei2cKconfigMakefilealgosKconfigMakefilebussesKconfigMakefilemuxesKconfigMakefileideKconfigMakefileidleKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileafeKconfigMakefileamplifiersKconfigMakefilebufferKconfigMakefilechemicalKconfigMakefilecommonKconfigMakefilecros_ec_sensorsKconfigMakefilehid-sensorsKconfigMakefilems_sensorsKconfigMakefilessp_sensorsKconfigMakefilest_sensorsKconfigMakefilecounterKconfigMakefiledacKconfigMakefiledummyKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefilehealthKconfigMakefilehumidityKconfigMakefileimuKconfigMakefilebmi160KconfigMakefileinv_mpu6050KconfigMakefilest_lsm6dsxKconfigMakefilelightKconfigMakefilemagnetometerKconfigMakefilemultiplexerKconfigMakefileorientationKconfigMakefilepotentiometerKconfigMakefilepotentiostatKconfigMakefilepressureKconfigMakefileproximityKconfigMakefileresolverKconfigMakefiletemperatureKconfigMakefiletestKconfigMakefiletriggerKconfigMakefileinfinibandKconfigMakefilecoreMakefilehwMakefilebnxt_reKconfigMakefilecxgb4KconfigMakefileefaKconfigMakefilehfi1KconfigMakefilehnsKconfigMakefileirdmaKconfigMakefilemanaKconfigMakefilemlx4KconfigMakefilemlx5KconfigMakefilemthcaKconfigMakefileocrdmaKconfigMakefileqedrKconfigMakefileqibKconfigMakefileusnicKconfigMakefilevmw_pvrdmaKconfigMakefileswMakefilerdmavtKconfigMakefilerxeKconfigMakefilesiwKconfigMakefileulpMakefileipoibKconfigMakefileiserKconfigMakefileisertKconfigMakefileopa_vnicKconfigMakefilesrpKconfigsrptKconfigMakefileinputKconfigMakefilegameportKconfigMakefilejoystickKconfigMakefileiforceKconfigMakefilekeyboardKconfigMakefilemiscKconfigMakefilemouseKconfigMakefilermi4KconfigMakefileserioKconfigMakefiletabletKconfigMakefiletouchscreenKconfigMakefileiommuKconfigMakefileamdKconfigMakefilearmMakefilearm-smmuarm-smmu-v3MakefileMakefileintelKconfigMakefileipackKconfigMakefilecarriersKconfigMakefiledevicesKconfigMakefileirqchipKconfigMakefileisdnKconfigMakefilecapiKconfigMakefiledivertMakefilegigasetKconfigMakefilehardwareKconfigMakefileavmKconfigMakefileeiconKconfigMakefilemISDNKconfigMakefilehisaxKconfigMakefilehysdnKconfigMakefilei4lKconfigMakefileisdnloopMakefilemISDNKconfigMakefileledsKconfigMakefiletriggerKconfigMakefilelightnvmKconfigMakefilemacintoshKconfigMakefileamsMakefilemailboxKconfigMakefilemcbKconfigMakefilemdKconfigMakefilebcacheKconfigMakefilepersistent-dataKconfigMakefilemediaKconfigMakefilececKconfigMakefilecommonKconfigMakefileb2c2KconfigMakefilesaa7146KconfigMakefilesianoKconfigMakefilev4l2-tpgKconfigMakefilevideobuf2KconfigMakefiledvb-coreKconfigMakefiledvb-frontendsKconfigMakefilecxd2880KconfigMakefiledrx39xyjKconfigMakefilefirewireKconfigMakefilei2cKconfigMakefileadv748xMakefilecx25840KconfigMakefileet8ek8KconfigMakefilem5molsKconfigMakefiles5c73m3MakefilesmiappKconfigMakefilesoc_cameraKconfigMakefilemmcKconfigMakefilesianoKconfigMakefilepciKconfigMakefileb2c2KconfigMakefilebt8xxKconfigMakefilecobaltKconfigMakefilecx18KconfigMakefilecx23885KconfigMakefilecx25821KconfigMakefilecx88KconfigMakefileddbridgeKconfigMakefiledm1105KconfigMakefiledt3155KconfigMakefileintelMakefileipu3KconfigMakefileivtvKconfigMakefilemantisKconfigMakefilemeyeKconfigMakefilenetup_unidvbKconfigMakefilengeneKconfigMakefilepluto2KconfigMakefilept1KconfigMakefilept3KconfigMakefilesaa7134KconfigMakefilesaa7146KconfigMakefilesaa7164KconfigMakefilesmipcieKconfigMakefilesolo6x10KconfigMakefilesta2x11KconfigMakefilettpciKconfigMakefiletw5864KconfigMakefiletw68KconfigMakefiletw686xKconfigMakefileplatformKconfigMakefileam437xKconfigMakefileatmelKconfigMakefilecadenceKconfigMakefilecec-gpioMakefilecodaMakefiledavinciKconfigMakefileexynos-gscMakefileexynos4-isKconfigMakefilemarvell-ccicKconfigMakefilemesonMakefilemtk-jpegMakefilemtk-mdpMakefilemtk-vcodecMakefilemtk-vpuMakefileomapKconfigMakefileomap3ispMakefileqcomcamss-8x16MakefilevenusMakefilercar-vinKconfigMakefilerockchiprgaMakefiles3c-camifMakefiles5p-cecMakefiles5p-g2dMakefiles5p-jpegMakefiles5p-mfcMakefilesoc_cameraKconfigMakefilestibdispMakefilec8sectpfeKconfigMakefilececMakefiledeltaMakefilehvaMakefilestm32Makefiletegra-cecMakefileti-vpeMakefilevimcKconfigMakefilevividKconfigMakefilevsp1MakefilexilinxKconfigMakefileradioKconfigMakefilesi470xKconfigMakefilesi4713KconfigMakefilewl128xKconfigMakefilercKconfigMakefileimg-irKconfigMakefilekeymapsKconfigMakefilespiKconfigMakefiletunersKconfigMakefileusbKconfigMakefileairspyKconfigMakefileas102KconfigMakefileau0828KconfigMakefileb2c2KconfigMakefilecpia2KconfigMakefilecx231xxKconfigMakefiledvb-usbdvb-usb-v2KconfigMakefileKconfigMakefileem28xxKconfigMakefilego7007KconfigMakefilegspcaKconfigMakefilegl860KconfigMakefilem5602KconfigMakefilestv06xxKconfigMakefilehackrfKconfigMakefilehdpvrKconfigMakefilemsi2500KconfigMakefilepulse8-cecKconfigMakefilepvrusb2KconfigMakefilepwcKconfigMakefilerainshadow-cecKconfigMakefiles2255KconfigMakefilesianoKconfigMakefilestk1160KconfigMakefilestkwebcamKconfigMakefiletm6000KconfigMakefilettusb-budgetKconfigMakefilettusb-decKconfigMakefileusbtvKconfigMakefileusbvisionKconfigMakefileuvcKconfigMakefilezr364xxKconfigMakefilev4l2-coreKconfigMakefilememoryKconfigMakefileMakefile.asm-offsetssamsungKconfigMakefiletegraKconfigMakefilememstickKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemessageMakefilefusionKconfigMakefilemfdKconfigMakefilemiscKconfigMakefilealtera-staplKconfigMakefilec2portKconfigMakefilecardreaderKconfigMakefilecb710KconfigMakefilecxlKconfigMakefileechoKconfigMakefileeepromKconfigMakefilegenwqeKconfigMakefileibmasmMakefilelis3lv02dKconfigMakefilelkdtmMakefilemeiKconfigMakefilehdcpKconfigMakefilepxpKconfigMakefilemicKconfigMakefilebusMakefilecardMakefilecosmMakefilecosm_clientMakefilehostMakefilescifMakefilevopMakefileocxlKconfigMakefilesgi-gruMakefilesgi-xpMakefileti-stKconfigMakefilevmw_vmciKconfigMakefilemmcKconfigMakefilecoreKconfigMakefilehostKconfigMakefilemtdKconfigMakefilechipsKconfigMakefiledevicesKconfigMakefilelpddrKconfigMakefilemapsKconfigMakefilenandKconfigMakefileonenandKconfigMakefilerawKconfigMakefileatmelMakefilebcm47xxnflashMakefilebrcmnandMakefilegpmi-nandMakefileparsersKconfigMakefilespi-norKconfigMakefiletestsMakefileubiKconfigMakefilemuxKconfigMakefilenetKconfigMakefileappletalkKconfigMakefilearcnetKconfigMakefilebondingMakefilecaifKconfigMakefilecanKconfigMakefilec_canKconfigMakefilecc770KconfigMakefileifi_canfdKconfigMakefilem_canKconfigMakefilemscanKconfigMakefilepeak_canfdKconfigMakefilercarKconfigMakefilesja1000KconfigMakefilesoftingKconfigMakefilespiKconfigMakefileusbKconfigMakefilekvaser_usbMakefilepeak_usbMakefiledsaKconfigMakefileb53KconfigMakefilemicrochipKconfigMakefilemv88e6xxxKconfigMakefileethernet3comKconfigMakefile8390KconfigMakefileKconfigMakefileadaptecKconfigMakefileaeroflexKconfigMakefileagereKconfigMakefilealacritechKconfigMakefileallwinnerKconfigMakefilealteonKconfigMakefilealteraKconfigMakefileamazonKconfigMakefileenaMakefileamdKconfigMakefilexgbeMakefileapmKconfigMakefilexgenexgene-v2KconfigMakefileKconfigMakefileappleKconfigMakefileaquantiaKconfigMakefileatlanticMakefilehw_atlMakefilearcKconfigMakefileatherosKconfigMakefilealxMakefileatl1cMakefileatl1eMakefileatlxMakefileauroraKconfigMakefilebroadcomKconfigMakefilebnx2xMakefilebnxtMakefilegenetMakefilebrocadeKconfigMakefilebnaKconfigMakefilecadenceKconfigMakefilecalxedaKconfigMakefilecaviumKconfigMakefilecommonMakefileliquidioMakefileocteonMakefilethunderMakefilechelsioKconfigMakefilecxgbMakefilecxgb3Makefilecxgb4Makefilecxgb4vfMakefileinline_cryptoKconfigMakefilech_ipsecMakefilech_ktlsMakefilelibcxgbMakefilecirrusKconfigMakefileciscoKconfigMakefileenicKconfigMakefilecortinaKconfigMakefiledavicomKconfigMakefiledecKconfigMakefiletulipKconfigMakefiledlinkKconfigMakefileemulexKconfigMakefilebenetKconfigMakefileezchipKconfigMakefilefaradayKconfigMakefilefreescaleKconfigMakefiledpaaKconfigMakefilefmanKconfigMakefilefs_enetKconfigMakefilefujitsuKconfigMakefilegoogleKconfigMakefilegveMakefilehisiliconKconfigMakefilehnsMakefilehns3Makefilehns3pfMakefilehns3vfMakefilehpKconfigMakefilehuaweiKconfigMakefilehinicKconfigMakefilei825xxKconfigMakefileibmKconfigMakefileeheaMakefileemacKconfigMakefileintelKconfigMakefilee1000Makefilee1000eMakefilefm10kMakefilei40eMakefileiavfMakefileiceMakefileigbMakefileigbvfMakefileigcMakefileixgbMakefileixgbeMakefileixgbevfMakefilemarvellKconfigMakefilemvpp2MakefilemediatekKconfigMakefilemellanoxKconfigMakefilemlx4KconfigMakefilemlx5coreKconfigMakefileaccelMakefilediagMakefileenMakefilexskMakefileen_accelMakefileeswMakefilefpgaMakefileipoibMakefilelibMakefilesteeringMakefilemlxbf_gigeKconfigMakefilemlxfwKconfigMakefilemlxswKconfigMakefilemicrelKconfigMakefilemicrochipKconfigMakefilemicrosoftKconfigMakefilemanaMakefilemoxaKconfigMakefilemsccKconfigMakefilemyricomKconfigMakefilemyri10geMakefilenatsemiKconfigMakefileneterionKconfigMakefilevxgeMakefilenetronomeKconfigMakefilenfpMakefilebpfMakefileflowerMakefilenfpcoreMakefilenfp6000MakefilenicMakefileniKconfigMakefilenuvotonKconfigMakefilenvidiaKconfigMakefilenxpKconfigMakefileoki-semiKconfigMakefilepch_gbeKconfigMakefilepacketenginesKconfigMakefilepasemiKconfigMakefilepensandoKconfigMakefileionicMakefileqlogicKconfigMakefilenetxenMakefileqedMakefileqedeMakefileqlcnicMakefileqlgeMakefilequalcommKconfigMakefileemacMakefilermnetKconfigMakefilerdcKconfigMakefilerealtekKconfigMakefilerenesasKconfigMakefilerockerKconfigMakefilesamsungKconfigMakefilesxgbeMakefileseeqKconfigMakefilesfcKconfigMakefilefalconKconfigMakefilesienaKconfigMakefilesgiKconfigMakefilesilanKconfigMakefilesisKconfigMakefilesmscKconfigMakefilesocionextKconfigMakefilestmicroKconfigMakefilestmmacKconfigMakefilesunKconfigMakefilesynopsysKconfigMakefiletehutiKconfigMakefiletiKconfigMakefiletoshibaKconfigMakefiletundraKconfigMakefileviaKconfigMakefilewiznetKconfigMakefilexilinxKconfigMakefilexircomKconfigMakefilexscaleKconfigMakefilefddiKconfigMakefileskfpMakefilefjesMakefilehamradioKconfigMakefilehippiKconfigMakefilehypervKconfigMakefileieee802154KconfigMakefileipvlanMakefilenetdevsimMakefilepcsKconfigMakefilephyKconfigMakefileplipKconfigMakefilepppKconfigMakefileslipKconfigMakefileteamKconfigMakefilethunderboltKconfigMakefileusbKconfigMakefilevmxnet3MakefilewanKconfigMakefilelmcMakefilewimaxKconfigMakefilei2400mKconfigMakefilewirelessKconfigMakefileadmtekKconfigMakefileathKconfigMakefilear5523KconfigMakefileath10kKconfigMakefileath11kKconfigMakefileath12kKconfigMakefileath5kKconfigMakefileath6klKconfigMakefileath9kKconfigMakefilecarl9170KconfigMakefilewcn36xxKconfigMakefilewil6210KconfigMakefileatmelKconfigMakefilebroadcomKconfigMakefileb43KconfigMakefileb43legacyKconfigMakefilebrcm80211KconfigMakefilebrcmfmacKconfigMakefilebcaMakefilecywMakefilewccMakefilebrcmsmacMakefilebrcmutilMakefileciscoKconfigMakefileintelKconfigMakefileipw2x00KconfigMakefileiwlegacyKconfigMakefileiwlwifiKconfigMakefiledvmMakefilemeiMakefilemvmMakefileintersilKconfigMakefilehostapKconfigMakefileorinocoKconfigMakefilep54KconfigMakefileprism54MakefilelegacyKconfigMakefilemarvellKconfigMakefilelibertasKconfigMakefilelibertas_tfKconfigMakefilemwifiexKconfigMakefilemediatekKconfigMakefilemt76KconfigMakefilemt7603KconfigMakefilemt7615KconfigMakefilemt76x0KconfigMakefilemt76x2KconfigMakefilemt7915KconfigMakefilemt7921KconfigMakefilemt7996KconfigMakefilemt7601uKconfigMakefilequantennaKconfigMakefileqtnfmacKconfigMakefileralinkKconfigMakefilert2x00KconfigMakefilerealtekKconfigMakefilertl818xKconfigMakefilertl8180Makefilertl8187Makefilertl8xxxuKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8188eeMakefilertl8192cMakefilertl8192ceMakefilertl8192cuMakefilertl8192deMakefilertl8192eeMakefilertl8192seMakefilertl8723aeMakefilertl8723beMakefilertl8723comMakefilertl8821aeMakefilertw88KconfigMakefilertw89KconfigMakefilersiKconfigMakefilestKconfigMakefilecw1200KconfigMakefiletiKconfigMakefilewl1251KconfigMakefilewl12xxKconfigMakefilewl18xxKconfigMakefilewlcoreKconfigMakefilevirtualKconfigMakefilezydasKconfigMakefilezd1211rwKconfigMakefilexen-netbackMakefilenfcKconfigMakefilefdpKconfigMakefilemicroreadKconfigMakefilenfcmrvlKconfigMakefilenxp-nciKconfigMakefilepn533KconfigMakefilepn544KconfigMakefiles3fwrn5KconfigMakefilest-nciKconfigMakefilest21nfcaKconfigMakefilest95hfKconfigMakefilentbKconfigMakefilehwKconfigMakefileamdKconfigMakefileepfKconfigMakefileidtKconfigMakefileintelKconfigMakefilemsccKconfigMakefiletestKconfigMakefilenubusMakefilenvdimmKconfigMakefilenvmeKconfigMakefilehostKconfigMakefiletargetKconfigMakefilenvmemKconfigMakefileofKconfigMakefileunittest-dataMakefileoppKconfigMakefilepariscKconfigMakefileparportKconfigMakefilepciKconfigMakefilecontrollerKconfigMakefiledwcKconfigMakefileendpointKconfigMakefilefunctionsKconfigMakefilehotplugKconfigMakefilepcieKconfigMakefileswitchKconfigMakefilepcmciaKconfigMakefileperfKconfigMakefilehisiliconMakefilephyKconfigMakefileallwinnerKconfigMakefileamlogicKconfigMakefilebroadcomKconfigMakefilehisiliconKconfigMakefilelantiqKconfigMakefilemarvellKconfigMakefilemediatekKconfigMakefilemotorolaKconfigMakefilequalcommKconfigMakefileralinkKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefiletiKconfigMakefilepinctrlKconfigMakefileactionsKconfigMakefileaspeedKconfigMakefilebcmKconfigMakefileberlinKconfigMakefilefreescaleKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemesonKconfigMakefilemvebuKconfigMakefilenomadikKconfigMakefilepxaKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilesh-pfcKconfigMakefilesirfMakefilespearKconfigMakefilesprdKconfigMakefilestm32KconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefileuniphierKconfigMakefilevt8500KconfigMakefilezteKconfigMakefileplatformKconfigMakefilechromeKconfigMakefilegoldfishKconfigMakefilemellanoxKconfigMakefilemipsKconfigMakefileolpcMakefilex86KconfigMakefiledell-wmi-sysmanMakefileintelKconfigMakefileifsKconfigMakefilepmcKconfigMakefilepmtKconfigMakefilespeed_select_ifKconfigMakefileuncore-frequencyKconfigMakefilepnpKconfigMakefileisapnpKconfigMakefilepnpacpiKconfigMakefilepnpbiosKconfigMakefilepowerKconfigMakefileavsKconfigMakefileresetKconfigMakefilesupplyKconfigMakefilepowercapKconfigMakefileppsKconfigMakefileclientsKconfigMakefilegeneratorsKconfigMakefileps3MakefileptpKconfigMakefilepwmKconfigMakefilerapidioKconfigMakefiledevicesKconfigMakefileswitchesKconfigMakefilerasKconfigMakefileregulatorKconfigMakefileremoteprocKconfigMakefileresetKconfigMakefilehisiliconKconfigMakefilestiKconfigMakefiletegraKconfigMakefilerpmsgKconfigMakefilertcKconfigMakefiles390MakefileblockKconfigMakefilecharKconfigMakefilecioMakefilecryptoMakefilenetKconfigMakefilescsiMakefilevirtioMakefilesbusMakefilecharKconfigMakefilescsiKconfigMakefileaacraidMakefileaic7xxxKconfig.aic79xxKconfig.aic7xxxMakefileaicasmMakefileaic94xxKconfigMakefilearcmsrMakefilearmKconfigMakefilebe2iscsiKconfigMakefilebfaMakefilebnx2fcKconfigMakefilebnx2iKconfigMakefilecsiostorKconfigMakefilecxgbiKconfigMakefilecxgb3iKconfigcxgb4iKconfigcxlflashKconfigMakefiledevice_handlerKconfigMakefileesas2rKconfigMakefilefcoeMakefilefnicMakefilehisi_sasKconfigMakefileibmvscsiMakefileibmvscsi_tgtMakefileisciMakefilelibfcMakefilelibsasKconfigMakefilelpfcMakefilemegaraidKconfig.megaraidMakefilempi3mrKconfigMakefilempt3sasKconfigMakefilemvsasKconfigMakefilepcmciaKconfigMakefilepm8001MakefileqedfKconfigMakefileqediKconfigMakefileqla2xxxKconfigMakefileqla4xxxKconfigMakefilesmartpqiKconfigMakefilesnicMakefilesym53c8xx_2MakefileufsKconfigMakefilesfiKconfigMakefileshKconfigMakefileclkMakefileintcKconfigMakefilemapleMakefilesuperhywayMakefilesioxKconfigMakefileslimbusKconfigMakefilesnKconfigMakefilesocKconfigMakefileactionsKconfigMakefileamlogicKconfigMakefileatmelKconfigMakefilebcmKconfigMakefilebrcmstbKconfigMakefilepmMakefiledoveMakefilefslKconfigMakefileqbmanKconfigMakefileqeKconfigMakefilefujitsuKconfigMakefilegeminiMakefileimxKconfigMakefilelantiqMakefilemediatekKconfigMakefileqcomKconfigMakefilerenesasKconfigMakefilerockchipKconfigMakefilesamsungKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefilefuseMakefiletiKconfigMakefileux500KconfigMakefileversatileKconfigMakefilexilinxKconfigMakefilezteKconfigMakefilesoundwireKconfigMakefilespiKconfigMakefilespmiKconfigMakefilessbKconfigMakefilestagingKconfigMakefileandroidKconfigMakefileionKconfigMakefileboardKconfigMakefileclocking-wizardKconfigMakefilecomediKconfigMakefiledriversMakefilekcomedilibMakefiledgncKconfigMakefileemxx_udcKconfigMakefilefbtftKconfigMakefilefsl-dpaa2KconfigMakefileethernetMakefileethswMakefilertcMakefilefsl-mcKconfigMakefilebusKconfigMakefiledpioMakefilefwserialKconfigMakefilegdm724xKconfigMakefilegoldfishKconfigMakefilegreybusKconfigMakefiletoolsMakefilegs_fpgabootKconfigMakefileiioKconfigMakefileaccelKconfigMakefileadcKconfigMakefileaddacKconfigMakefilecdcKconfigMakefilefrequencyKconfigMakefilegyroKconfigMakefileimpedance-analyzerKconfigMakefilemeterKconfigMakefileresolverKconfigMakefileks7010KconfigMakefilemediaKconfigMakefilebcm2048KconfigMakefiledavinci_vpfeKconfigMakefileimxKconfigMakefileimx074KconfigMakefilemt9t031KconfigMakefileomap4issKconfigMakefiletegra-vdeKconfigMakefilezoranKconfigMakefilemostKconfigMakefilecdevKconfigMakefiledim2KconfigMakefilei2cKconfigMakefilenetKconfigMakefilesoundKconfigMakefileusbKconfigMakefilevideoKconfigMakefilemt29f_spinandKconfigMakefilemt7621-dmaKconfigMakefilemt7621-dtsKconfigMakefilemt7621-ethKconfigMakefilemt7621-gpioKconfigMakefilemt7621-mmcKconfigMakefilemt7621-pciMakefilemt7621-pinctrlKconfigMakefilemt7621-spiKconfigMakefilenetlogicKconfigMakefilenvecKconfigMakefileocteonocteon-usbKconfigMakefileKconfigMakefileolpc_dconKconfigMakefilepi433KconfigMakefilertl8188euKconfigMakefilertl8192eKconfigMakefilertl8192eKconfigMakefilertl8192uKconfigMakefileieee80211Makefilertl8712KconfigMakefilertl8723bsKconfigMakefilertlwifiKconfigMakefilebtcoexistMakefilertl8822beMakefilerts5208KconfigMakefileskeinKconfigMakefilesm750fbKconfigMakefilespeakupKconfigMakefileunisysKconfigMakefilevisorhbaKconfigMakefilevisorinputKconfigMakefilevisornicKconfigMakefilevboxvideoKconfigMakefilevc04_servicesKconfigMakefilebcm2835-audioKconfigMakefilebcm2835-cameraKconfigMakefilevmeMakefiledevicesKconfigMakefilevt6655KconfigMakefilevt6656KconfigMakefilewilc1000KconfigMakefilewlan-ngKconfigMakefilexgifbKconfigMakefiletargetKconfigMakefileiscsiKconfigMakefilecxgbitKconfigMakefileloopbackKconfigMakefilesbpKconfigMakefiletcm_fcKconfigMakefiletcMakefileteeKconfigMakefileopteeKconfigMakefilethermalKconfigMakefilebroadcomKconfigMakefileintelKconfigMakefileint340x_thermalKconfigMakefileqcomKconfigMakefilesamsungKconfigMakefilestKconfigMakefiletegraKconfigMakefileti-soc-thermalKconfigMakefilethunderboltKconfigMakefilettyKconfigMakefilehvcKconfigMakefileipwirelessMakefileserdevKconfigMakefileserial8250KconfigMakefileKconfigMakefilecpm_uartMakefilejsmMakefilevtMakefileuioKconfigMakefileusbKconfigMakefileatmKconfigMakefilec67x00MakefilechipideaKconfigMakefileclassKconfigMakefilecommonKconfigMakefilecoreKconfigMakefiledwc2KconfigMakefiledwc3KconfigMakefileearlyMakefilegadgetKconfigMakefilefunctionMakefilelegacyKconfigMakefileudcKconfigMakefileaspeed-vhubKconfigMakefilebdcKconfigMakefilehostKconfigMakefilewhciMakefileimageKconfigMakefileisp1760KconfigMakefilemiscKconfigMakefilesisusbvgaKconfigMakefilemonKconfigMakefilemtu3KconfigMakefilemusbKconfigMakefilephyKconfigMakefilerenesas_usbhsKconfigMakefilerolesKconfigMakefileserialKconfigMakefileMakefile-keyspan_pda_fwstorageKconfigMakefiletypecKconfigMakefilealtmodesKconfigMakefilemuxKconfigMakefiletcpmKconfigMakefiletipdKconfigMakefileucsiKconfigMakefileusbipKconfigMakefilewusbcoreKconfigMakefileuwbKconfigMakefilei1480MakefiledfuMakefilevdpaKconfigMakefilealibabaMakefileifcvfMakefilemlx5Makefilevdpa_simMakefilevirtio_pciMakefilevfioKconfigMakefilemdevKconfigMakefilepciKconfigMakefileplatformKconfigMakefileresetKconfigMakefilevhostKconfigKconfig.vringhMakefilevideoKconfigMakefilebacklightKconfigMakefileconsoleKconfigMakefilefbdevKconfigMakefileatyMakefilecoreMakefilegeodeKconfigMakefilei810MakefileintelfbMakefilekyroMakefilematroxMakefilemb862xxMakefilembxMakefilemmpKconfigMakefilefbKconfigMakefilehwKconfigMakefilepanelKconfigMakefilenvidiaMakefileomapKconfigMakefileomap2KconfigMakefileomapfbKconfigMakefiledisplaysKconfigMakefiledssKconfigMakefilerivaMakefilesavageMakefilesisMakefilevermilionMakefileviaMakefilelogoKconfigMakefilevirtKconfigMakefilecocosev-guestKconfigMakefiletdx-guestKconfigMakefilenitro_enclavesKconfigMakefilevboxguestKconfigMakefilevirtioKconfigMakefilevisorbusKconfigMakefilevlynqKconfigMakefilevmeKconfigMakefileboardsKconfigMakefilebridgesKconfigMakefilew1KconfigMakefilemastersKconfigMakefileslavesKconfigMakefilewatchdogKconfigMakefilexenKconfigMakefileeventsMakefilexen-pcibackMakefilexenbusMakefilexenfsMakefilezorroKconfigMakefilefirmwareMakefilefs9pKconfigMakefileKconfigKconfig.binfmtMakefileadfsKconfigMakefileaffsKconfigMakefileafsKconfigMakefileautofsKconfigMakefilebefsKconfigMakefilebfsKconfigMakefilebtrfsKconfigMakefilecachefilesKconfigMakefilecephKconfigMakefilecifsKconfigMakefilecodaKconfigMakefileconfigfsKconfigMakefilecramfsKconfigMakefilecryptoKconfigMakefiledebugfsMakefiledevptsMakefiledlmKconfigMakefileecryptfsKconfigMakefileefivarfsKconfigMakefileefsKconfigMakefileexportfsMakefileext2KconfigMakefileext4KconfigMakefilef2fsKconfigMakefilefatKconfigMakefilefreevxfsKconfigMakefilefscacheKconfigMakefilefuseKconfigMakefilegfs2KconfigMakefilehfsKconfigMakefilehfsplusKconfigMakefilehostfsMakefilehpfsKconfigMakefilehugetlbfsMakefileiomapMakefileisofsKconfigMakefilejbd2KconfigMakefilejffs2KconfigMakefilejfsKconfigMakefilekernfsKconfigMakefilelockdMakefileminixKconfigMakefilenfsKconfigMakefileblocklayoutMakefilefilelayoutMakefileflexfilelayoutMakefilenfs_commonMakefilenfsdKconfigMakefilenilfs2KconfigMakefilenlsKconfigMakefilenotifyKconfigMakefilednotifyKconfigMakefilefanotifyKconfigMakefileinotifyKconfigMakefilentfsKconfigMakefileocfs2KconfigMakefileclusterMakefiledlmMakefiledlmfsMakefileomfsKconfigMakefileopenpromfsMakefileorangefsKconfigMakefileoverlayfsKconfigMakefileprocKconfigMakefilepstoreKconfigMakefileqnx4KconfigMakefileqnx6KconfigMakefilequotaKconfigMakefileramfsMakefilereiserfsKconfigMakefileromfsKconfigMakefilesquashfsKconfigMakefilesysfsKconfigMakefilesysvKconfigMakefiletracefsMakefileubifsKconfigMakefileudfKconfigMakefileufsKconfigMakefilexfsKconfigMakefileincludeacpiacbuffer.hacconfig.hacexcep.hacnames.hacoutput.hacpi.hacpi_bus.hacpi_drivers.hacpi_io.hacpi_lpat.hacpi_numa.hacpiosxf.hacpixf.hacrestyp.hactbl.hactbl1.hactbl2.hactbl3.hactypes.hacuuid.hapei.hbattery.hbutton.hcppc_acpi.hghes.hhed.hnfit.hpcc.hpdc_intel.hplatformacenv.hacenvex.hacgcc.hacgccex.hacintel.haclinux.haclinuxex.hprocessor.hreboot.hvideo.hasm-generic4level-fixup.h5level-fixup.hasm-offsets.hasm-prototypes.hatomic-instrumented.hatomic-long.hatomic.hatomic64.haudit_change_attr.haudit_dir_write.haudit_read.haudit_signal.haudit_write.hbarrier.hbitopsbitops-instrumented.hbitops.h__ffs.h__fls.harch_hweight.hatomic.hbuiltin-__ffs.hbuiltin-__fls.hbuiltin-ffs.hbuiltin-fls.hconst_hweight.hext2-atomic-setbit.hext2-atomic.hffs.hffz.hfind.hfls.hfls64.hhweight.hle.hlock.hnon-atomic.hsched.hbitsperlong.hbug.hbugs.hcache.hcacheflush.hchecksum.hcmpxchg-local.hcmpxchg.hcompat.hcurrent.hdelay.hdevice.hdiv64.hdma-contiguous.hdma-mapping.hdma.hearly_ioremap.hemergency-restart.herror-injection.hexec.hexport.hextable.hfb.hfixmap.hftrace.hfutex.hgetorder.hgpio.hhardirq.hhugetlb.hhw_irq.hhyperv-tlfs.hide_iops.hint-ll64.hio.hioctl.hiomap.hirq.hirq_regs.hirq_work.hirqflags.hkdebug.hkmap_size.hkprobes.hkvm_para.hkvm_types.hlinkage.hlocal.hlocal64.hmcs_spinlock.hmemory_model.hmm-arch-hooks.hmm_hooks.hmmiowb.hmmiowb_types.hmmu.hmmu_context.hmodule.hmshyperv.hmsi.hnuma.hpage.hparam.hparport.hpci.hpci_iomap.hpercpu.hpgalloc.hpgtable-nop4d-hack.hpgtable-nop4d.hpgtable-nopmd.hpgtable-nopud.hpgtable.hpgtable_uffd.hpreempt.hptrace.hqrwlock.hqrwlock_types.hqspinlock.hqspinlock_types.hresource.hseccomp.hsections.hsegment.hserial.hset_memory.hsignal.hsimd.hsizes.hspinlock.hstatfs.hstring.hswitch_to.hsyscall.hsyscalls.htermios-base.htermios.htimex.htlb.htlbflush.htopology.htrace_clock.huaccess.hunaligned.hunistd.huser.hvdsovsyscall.hvga.hvmlinux.lds.hvtime.hword-at-a-time.hxor.hclocksourcearm_arch_timer.hhyperv_timer.hpxa.hsamsung_pwm.htimer-sp804.htimer-ti-dm.hconfig64bit.h6lowpan.h8139cp.h8139too8139too.h8129.hac97bus.hacerwmi.hacerhdf.hacpiacpi.hac.hadxl.hapeiapei.heinj.herstdebug.hghes.hmemoryfailure.hpcieaer.hbattery.hbgrt.hbutton.hcmpc.hconfigfs.hcontainer.hcppclib.hcpufreqpss.hcustommethod.hdebug.hdebuggerdebugger.huser.hdock.hdptf.hecdebugfs.hextlog.hfan.hfpdt.hhed.hhmat.hhotplugcpu.hioapic.hmemory.hi2copregion.hipmi.hlegacytableslookup.hlpit.hnfit.hnuma.hpcislot.hplatformprofile.hprmt.hprocessorprocessor.haggregator.hcstate.hidle.hrevoverridepossible.hsbs.hsleep.hspcrtable.hsystempowerstatessupport.htableupgrade.htad.hthermalthermal.hrel.hvideo.hwatchdog.hwmi.hadvisesyscalls.haio.halim1535wdt.halim7101wdt.hallowdevcoredump.halterastapl.halx.hamdhsmp.hiommuiommu.hv2.hmemencrypt.hnb.hnuma.hphy.hpmc.hptdma.hsfhhid.hxgbexgbe.hhaveecc.hamigapartition.hamilorfkill.hapds9802als.haperturehelpers.happlegmux.hmfifastcharge.hproperties.haqtion.haquantiaphy.harchclocksourceinit.hcpuidlehaltpoll.hdefconfig.hdmaaddrt64bit.henablehugepagemigration.hmemoryhotplug.hhotremove.hsplitpmdptlock.hhasacpitableupgrade.haddpages.hcachelinesize.hccplatform.hcpurelax.hdebugvirtual.hdevmemisallowed.helfrandomize.hfastmultiplier.hfilterpgprot.hforcedmaunencrypted.hfortifysource.hgcovprofileall.hgiganticpage.hkcov.hkexecpurgatory.hmemencrypt.hmembarriersynccore.hnonoverlappingaddressspace.hpkeys.hpmemapi.hptespecial.hrefcount.hsetdirectmap.hmemory.hsgchain.hstrictkernelrwx.hmodulerwx.hsynccorebeforeusermode.hsyscallwrapper.huaccessflushcache.hmcsafe.hubsansanitizeall.hzonedevice.hhavenmisafecmpxchg.hhibernationheader.hpossible.hmayhavepcfdc.hmighthaveacpipdc.hpcparport.hserio.hmmaprndbitsbits.hmax.hmin.hcompatbitsbits.hmax.hmin.hnrgpio.hprockcoretext.hrandom.hselectmemorymodel.hsparsememdefault.henable.hstackwalk.hsupportsacpi.hatomicrmw.hdebugpagealloc.hint128.hmemoryfailure.hnumabalancing.hoptimizedinlining.hrt.huprobes.hsuspendpossible.husebuiltinbswap.hcmpxchglockref.hmemremapprot.hqueuedrwlocks.hspinlocks.huseshighvmaflags.hpguncached.hwantbatchedunmaptlbflush.hcompatipcparseversion.hdefaultbpfjit.hgeneralhugetlb.hhugepmdshare.holdcompatipc.hwantsdynamictaskstruct.hthpswap.harmgicmaxnr.hasn1.hassociativearray.hasuslaptop.hnbwmi.hwmi.hasymmetrickeytype.hpublickeysubtype.hasynccore.hmemcpy.hpq.hraid6recov.htest.htxdma.hxor.hataata.hacpi.hbmdma.hgeneric.hpiix.hsff.hverboseerror.hathcommon.hdebug.hath10kath10k.hce.hdebug.hdebugfs.hpci.htracing.hath11kath11k.hdebug.hdebugfs.hpci.htracing.hath9kath9k.hahb.hbtcoexsupport.hcommoncommon.hdebug.hdebugfs.hhtc.hhw.hpci.hpcoem.hrfkill.hwow.hatl1.hatl1c.hatl1e.hatl2.hatmatm.hbr2684.hclip.hlane.hatomic64selftest.hauditaudit.harch.hauditsyscall.hauto.confauto.conf.cmdautofsfs.hautofs4fs.hauxiliarybus.hbacklightapple.hclassdevice.hlcdsupport.hlp855x.hballooncompaction.hbareudp.hbasefull.hsmall.hbcmnetphylib.hbcm7xxxphy.hbcm87xxphy.hbcmabcma.hdrivergmaccmn.hgpio.hpci.hhostpcipci.hpossible.hpossible.hbe2iscsi.hbe2netbe2net.hhwmon.hlancer.hskyhawk.hbfqcgroupdebug.hgroupiosched.hbigkeys.hbinaryprintf.hbinfmtelf.hmisc.hscript.hbitfieldkunittest.hbitreverse.hbitskunittest.hblkcgroupcgroup.hfcappid.hiolatency.hrwstat.hdebugfs.hdevdev.hbsg.hbsglib.hdmdm.hbuiltin.hinitrd.hintegrityintegrity.ht10.hiotrace.hlooploop.hmincount.hmd.hnbd.hnullblk.hnvme.hpmem.hramram.hcount.hsize.hrbd.hsd.hsr.hthrottling.hmqpci.hrdma.hvirtio.hpm.hscsirequest.hwbtwbt.hmq.hblockblock.hcompat.hbnx2.hbnx2xbnx2x.hsriov.hbnxtbnxt.hdcb.hfloweroffload.hhwmon.hsriov.hbonding.hbootprintkdelay.hbootparamhardlockuppanicpanic.hvalue.hhotplugcpu0.hhungtaskpanicvalue.hsoftlockuppanicvalue.hbounce.hbpfbpf.hevents.hjitjit.halwayson.hdefaulton.hkprobeoverride.hlsm.hstreamparser.hsyscall.hunprivdefaultoff.hbql.hbranchprofilenone.hbrcmtracing.hbrcmdbg.hbrcmfmacbrcmfmac.hpcie.hprotobcdc.hmsgbuf.hsdio.husb.hbrcmsmacbrcmsmac.hleds.hbrcmutil.hbridgebridge.hebt8023.hamong.harp.harpreply.hbroute.hdnat.hip.hip6.hlimit.hlog.hmarkmark.ht.hnflog.hpkttype.hredirect.hsnat.hstp.htfilter.hnat.hvlan.higmpsnooping.hnetfilter.hnfebtables.hvlanfiltering.hbroadcomphy.hbsddisklabel.hprocessacctacct.hv3.hbtbt.hath3k.hbcm.hbnepbnep.hmcfilter.hprotofilter.hbredr.hcmtp.hdebugfs.hhcibcm203x.hhcibfusb.hhcibpa10x.hhcibtsdio.hhcibtusbhcibtusb.hautosuspend.hbcm.hmtk.hrtl.hhciuarthciuart.hath3k.hbcsp.hh4.hhcivhci.hhidp.hhs.hintel.hle.hmrvlmrvl.hsdio.hmtk.hrfcommrfcomm.htty.hrtl.hbtree.hbtt.hbugbug.hondatacorruption.hbuildbin2c.hbuildtimeextablesort.hcachefiles.hcancan.h8devusb.hbcm.hccancan.hpci.hplatform.hcalcbittiming.hcc770cc770.hplatform.hdebugdevices.hdev.hemspci.husb.hesdusb2.hgw.hkvaserpci.husb.hleds.hpeakpci.hpciec.husb.hplxpci.hraw.hsja1000sja1000.hplatform.hslcan.hsofting.hucan.hvcan.hcapiavm.hcardbus.hcaviumptp.hcb710core.hdebugassumptions.hcccanlink.hhaskasangeneric.hreturnthunk.hsancovtracepc.hsanestackprotector.hsls.hstackprotectornone.hworkingnosanitizeaddress.hisgcc.hoptimizeforperformance.hcdromcdrom.hpktcdvdpktcdvd.hbuffers.hceccore.hplatformdrivers.hcephfsfs.hposixacl.hsecuritylabel.hliblib.hprettydebug.husednsresolver.hcfg80211cfg80211.hcrdasupport.hdebugfs.hdefaultps.hrequiresignedregdb.husekernelregdbkeys.hcfsbandwidth.hcgroupbpf.hcpuacct.hdebug.hdevice.hfreezer.hhugetlb.hnetclassid.hprio.hperf.hpids.hrdma.hsched.hwriteback.hcgroups.hchargersmb347.hchecksignature.hcheckpointrestore.hchelsioinlinecrypto.hipsecinline.hlib.ht4.ht4vf.htlsdevice.hchrdevsch.hsg.hst.hcicadaphy.hcifscifs.hallowinsecurelegacy.hdebug.hdfsupcall.hposix.hsmbdirect.hupcall.hweakpwhash.hxattr.hclangversion.hcleancache.hclkbldi8253.hclkdevlookup.hclkevti8253.hclocksourcevalidatelastcycle.hwatchdog.hclsu32mark.hperf.hclztab.hcmdlinekunittest.hcnic.hcommonclk.hcompaction.hcompallaptop.hcompatcompat.h32.h32bittime.hbinfmtelf.hforu64alignment.holdsigaction.hconfigfsfs.hconnector.hconsolelogleveldefault.hquiet.htranslations.hcontextswitchtracer.htracking.hcontigalloc.hcordic.hcoredumpdefaultelfheaders.hcoredump.hcortinaphy.hcounter.hcpufreqfreq.hdefaultgovperformance.hgovattrset.hcommon.hconservative.hondemand.hperformance.hpowersave.hschedutil.huserspace.hstat.hibpbentry.hibrsentry.hidleidle.hgovhaltpoll.hmenu.hisolation.hrmap.hsrso.hsupamd.hcentaur.hintel.hunretentry.hcpusets.hcramfscramfs.hblockdev.hcrashcore.hdump.hcrcccitt.hitut.ht10dif.hcrc16.hcrc32crc32.hsliceby8.hcrc7.hcrc8.hcrossmemoryattach.hcryptocrypto.hacomp2.haead.haead2.haesaes.hniintel.hx8664.hakcipher.hakcipher2.halgapi.halgapi2.hansicprng.hanubis.harc4.hauthenc.hblkcipher.hblkcipher2.hblowfishblowfish.hcommon.hx8664.hcamelliacamellia.haesniavxx8664.havx2x8664.hx8664.hcastcommon.hcast5cast5.havxx8664.hcast6cast6.havxx8664.hcbc.hccm.hcfb.hchacha20chacha20.hx8664.hchacha20poly1305.hcmac.hcrc32crc32.hpclmul.hcrc32ccrc32c.hintel.hcrct10difcrct10dif.hpclmul.hcryptd.hctr.hcts.hdeflate.hdes.hdes3edex8664.hdevccpccp.hcrypto.hdd.hdebugfs.hchelsio.hnitroxnitrox.hcnn55xx.hpadlockpadlock.haes.hsha.hqatqat.h4xxx.hc3xxx.hc3xxxvf.hc62x.hc62xvf.hdh895xcc.hdh895xccvf.hspccp.hpsp.hdh.hdrbgdrbg.hctr.hhash.hhmac.hmenu.hecb.hecdh.hechainiv.hessiv.hfcrypt.hfipsfips.hname.hgcm.hgf128mul.hghashghash.hclmulniintel.hgluehelperx86.hhashhash.hinfo.hhash2.hhmac.hhw.hjitterentropy.hkhazad.hkpp.hkpp2.hlibarc4.hsha256.hlrw.hlzo.hmanager.hmanager2.hmcryptd.hmd4.hmd5.hmichaelmic.hnull.hnull2.hpcbc.hpcrypt.hpoly1305poly1305.hx8664.hrmd128.hrmd160.hrmd256.hrmd320.hrngrng.hdefault.hrng2.hrsa.hsalsa20.hseed.hseqiv.hserpentserpent.havxx8664.havx2x8664.hsse2x8664.hsha1sha1.hmb.hssse3.hsha256sha256.hmb.hssse3.hsha3.hsha512sha512.hmb.hssse3.hsimd.htea.htest.htgr192.htwofishtwofish.havxx8664.hcommon.hx866464.h3way.huseruser.hapiapi.haead.hhash.hrng.hskcipher.hvmac.hworkqueue.hwp512.hxcbc.hxts.hcuse.hcyclades.hcypressfirmware.hdamondamon.hdbgfs.hpaddr.hreclaim.hvaddr.hdavicomphy.hdaxdax.hdriver.hdca.hdcachewordaccess.hdcb.hdcdbas.hdeaoc.hdebugatomicsleep.hbootparams.hbugverbose.hcredentials.hfs.hinfoinfo.hbtf.hdwarf4.hkernel.hkmemleakkmemleak.hdefaultoff.hmempoolsize.hlist.hlockalloc.hnotifiers.hobjectsobjects.henabledefault.hfree.hpercpucounter.hrcuhead.htimers.hwork.hpageref.hpagealloc.hpercpumaps.hpreempt.hrtmutexes.hrwsems.hsectionmismatch.hsg.hshirq.hspinlock.hstackusage.hvm.hwwmutexslowpath.hdecompressbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hdefaultcubic.hfqcodel.hhostname.hhungtasktimeout.hiodelaytype.hmmapminaddr.hnetsch.hsecurityselinux.htcpcong.hdeferredstructpageinit.hdelllaptop.hrbtn.hrbu.hsmbiossmbios.hwmi.hsmo8800.hwmiwmi.haio.hdescriptor.hled.hsysman.hdetecthungtask.hdevcoredump.hdeviceprivate.hdevmem.hdevport.hdevtmpfsdevtmpfs.hmount.hdimlib.hdl2k.hdlcidlci.hmax.hdlmdlm.hdebug.hdmbioprison.hbufio.hcachecache.hsmq.hcrypt.hdebug.hdelay.hera.hflakey.hintegrity.hloguserspace.hwrites.hmirror.hmultipathmultipath.hhst.hioa.hql.hst.hpersistentdata.hraid.hsnapshot.hswitch.hthinprovisioning.huevent.hverity.hwritecache.hzero.hdmaacpi.hapidebugdebug.hsg.hcoherentpool.hengineengine.hraid.hops.hsharedbuffer.hvirtualchannels.hdmabufdebug.hdmadevicesdmadevices.hdebug.hvdebug.hdmardebug.hperf.htable.hdmatest.hdmidmi.hscanmachinenonefifallback.hsysfs.hdmiid.hdnet.hdnotify.hdnsresolver.hdoublefault.hdp83640phy.hdp83822phy.hdp83848phy.hdp83867phy.hdp83tc811phy.hdptfpower.hdql.hdrmdrm.hamdacp.hdcdc.hdcn.hamdgpuamdgpu.huserptr.hast.hbochs.hbridge.hbuddy.hcirrusqemu.hdisplaydphelper.hhdcphelper.hhdmihelper.hhelper.hdpauxchardev.hexportfortests.hfbdevemulation.hoveralloc.hgemshmemhelper.hgma500.hi2cch7006.hsil164.hi915i915.hcaptureerror.hcompresserror.hfencetimeout.hforceprobe.hgvtgvt.hkvmgt.hheartbeatinterval.hmaxrequestbusywait.hpreempttimeouttimeout.hcompute.hrequesttimeout.hstoptimeout.htimesliceduration.huserfaultautosuspend.huserptr.hkmshelper.hkunittesttest.hhelpers.hlibrandom.hloadedidfirmware.hmgag200.hmipidsi.hnouveaunouveau.hbacklight.hpanelpanel.hbridge.horientationquirks.hqxl.hradeonradeon.huserptr.hsched.httmttm.hhelper.hudl.hvboxvideo.hvirtiogpu.hvkms.hvmwgfx.hvramhelper.hdstcache.hdummydummy.hconsoleconsole.hcolumns.hrows.hdvba8293.haf9013.haf9033.hatbm8830.hau8522au8522.hdtv.hv4l.hav7110av7110.hir.hosd.hb2c2flexcopflexcop.hpci.husb.hbcm3510.hbt8xx.hbudgetbudget.hav.hci.hcore.hpatch.hcore.hcx22700.hcx22702.hcx24110.hcx24116.hcx24117.hcx24120.hcx24123.hcxd2099.hcxd2820r.hcxd2841er.hddbridge.hdib3000mb.hdib3000mc.hdib7000m.hdib7000p.hdib8000.hdm1105.hdrx39xyj.hdrxd.hdrxk.hds3000.hdummyfe.hdynamicminors.hec100.hfiredtvfiredtv.hinput.hgp8pskfe.hhopper.hisl6405.hisl6421.hisl6423.hix2505v.hl64781.hlg2160.hlgdt3305.hlgdt3306a.hlgdt330x.hlgs8gxx.hlnbh25.hlnbp21.hlnbp22.hm88ds3103.hm88rs2000.hmantis.hmaxadapters.hmb86a16.hmb86a20s.hmn88472.hmn88473.hmt312.hmt352.hmxl5xx.hnet.hngene.hnxt200x.hnxt6000.hor51132.hor51211.hpll.hpluto2.hpt1.hrtl2830.hrtl2832.hs5h1409.hs5h1411.hs5h1420.hs921.hsi2165.hsi2168.hsi21xx.hsp8870.hsp887x.hstb0899.hstb6000.hstb6100.hstv0288.hstv0297.hstv0299.hstv0367.hstv0900.hstv090x.hstv0910.hstv6110.hstv6110x.hstv6111.htc90522.htda10021.htda10023.htda10048.htda1004x.htda10071.htda10086.htda18271c2dd.htda665x.htda8083.htda8261.htda826x.hts2020.httusbbudget.hdec.htua6100.htunercx24113.hdib0070.hdib0090.hitd1000.husbusb.ha800.haf9005af9005.hremote.haf9015.haf9035.hanysee.hau6610.haz6007.haz6027.hce6230.hcinergyt2.hcxusb.hdib0700.hdib3000mc.hdibusbmb.hmc.hdigitv.hdtt200u.hdtv5100.hdw2102.hec168.hgl861.hgp8psk.hlme2510.hm920x.hmxl111sf.hnovatusb2.hopera1.hpctv452e.hrtl28xxu.htechnisatusb2.httusb2.humt010.hv2.hvp702x.hvp7045.hves1820.hves1x93.hzl10036.hzl10039.hzl10353.hdwdmacdmac.hcore.hpci.hdwmacintel.hdynamicdebug.hftraceftrace.hwithdirectcalls.hregs.hmemorylayout.hphysicalmask.hsigframe.he1000.he1000ee1000e.hhwts.hearlyprintkprintk.hdbgp.hefi.husbusb.hxdbc.hedacedac.hamd64.hatomicscrub.hdebug.hdecodemce.he752x.hghes.hi10nm.hi3000.hi3200.hi5000.hi5100.hi5400.hi7300.hi7core.hi82975x.hie31200.higen6.hlegacysysfs.hpnd2.hsbridge.hskx.hsupport.hx38.hedd.heeepclaptop.hwmi.heeprom93cx6.hlegacy.hmax6875.hefiefi.hdevpathparser.hesrt.hmixed.hpartition.hrci2table.hruntimemap.hwrappers.hsoftreserve.hstub.hvarsvars.hpstorepstore.hdefaultdisable.hefivarfs.helfcore.helfcore.henaethernet.henablemustcheck.henclosureservices.hencryptedkeys.henergymodel.henic.hepoll.hethernet.hethoc.hethtoolnetlink.heventtracing.heventfd.hevmevm.hattrfsuuid.hexclusivesystemram.hexpert.hexportfsexportfs.hblockops.hext4debug.hfsfs.hposixacl.hsecurity.hkunittests.huseforext2.hextrafirmware.hf71808ewdt.hfailiotimeout.hmakerequest.hmmcrequest.hpagealloc.hfailover.hfailslab.hfairgroupsched.hfanotifyfanotify.haccesspermissions.hfatdefaultcodepage.hiocharset.hfs.hkunittest.hfaultinjectioninjection.hdebugfs.hfbfb.hbootvesasupport.hcfbcopyarea.hfillrect.himageblit.hcmdline.hdeferredio.hefi.hnotify.hsyscopyarea.hfillrect.hfops.himageblit.htileblitting.hvesa.hfcappid.hfcoefnic.hfhandle.hfibrules.hfilelocking.hfipssignatureselftest.hfirewirefirewire.hnet.hohci.hsbp2.hfirmwarememmap.hfixearlyconmem.hfixedphy.hfm10k.hfont8x16.h8x8.hsupport.hfortifysource.hframewarn.hframebufferconsoleconsole.hdeferredtakeover.hdetectprimary.hrotation.hfreezer.hfrontswap.hfsdax.hiomap.hmbcache.hposixacl.hfscachefscache.hobjectlist.hstats.hfsnotify.hftraceftrace.hmcountrecord.hsyscalls.hfujitsues.hlaptop.htablet.hfunctionerrorinjection.hgraphtracer.hprofiler.htracer.hfusedax.hfs.hfusionfusion.hlogging.hmaxsge.hsas.hspi.hfutexfutex.hpi.hfwattrclass.hcfgsysfs.hcsdsp.hloaderloader.hsysfs.huserhelper.hgactprob.hgarp.hgccversion.hgenericallocator.hbugbug.hrelativepointers.hcalibratedelay.hclockeventsclockevents.hbroadcast.hminadjust.hcmosupdate.hcpucpu.hautoprobe.hvulnerabilities.hearlyioremap.hfindfirstbit.hgettimeofday.hhweight.hiomap.hirqdebugfs.heffectiveaffmask.hinjection.hmatrixallocator.hmigration.hprobe.hreservationmode.hshow.hisadma.hmsiirqirq.hdomain.hnetutils.hpciiomap.hpendingirq.hpinconf.hsmpidlethread.hstrncpyfromuser.hstrnlenuser.htimevsyscall.htracer.hvdsotimens.hgeneve.hgfs2fsfs.hlockingdlm.hgigasetbase.hcapi.hm101.hm105.hglob.hgpioacpi.hamdpt.hgeneric.hich.hsysfs.hviperboard.hgpiolibgpiolib.hfastpathlimit.hirqchip.hgraceperiod.hgrocells.hguptest.hgve.hhaltpollcpuidle.hhangchecktimer.hhardenedusercopyusercopy.hfallback.hhardirqsswresend.hhardlockupchecktimestamp.hdetectordetector.hperf.hhasdma.hiomem.hioportmap.hhashkunittest.hhaveacpiapeiapei.hnmi.halignedstructpage.harchauditsyscall.hcompatmmapbases.hhugevmap.hkasankasan.hvmalloc.hkcsan.hkgdb.hmmaprndbits.hcompatbits.hnodedevgroup.hseccompfilter.hsoftdirty.hthreadstructwhitelist.htracehook.htransparenthugepagehugepage.hpud.huserfaultfdwp.hvmapstack.hwithinstackframes.hbootmeminfonode.hcrecordmcount.hclkclk.hprepare.hcmpxchgdouble.hlocal.hcontexttracking.hcopythreadtls.hdebugkmemleak.hdmacontiguous.hdynamicftraceftrace.hwithdirectcalls.hregs.hebpfjit.hefficientunalignedaccess.hexitthread.hfastgup.hfentry.hftracemcountrecord.hfunctionerrorinjection.hgraphtracer.htracer.hgccplugins.hgenericvdso.hhardenedusercopyallocator.hhardlockupdetectorperf.hhwbreakpoint.hide.hinteltxt.hioremapprot.hirqexitonirqstack.htimeaccounting.hkernelbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hkprobeskprobes.honftrace.hkretprobes.hkvmkvm.hcpurelaxintercept.hdirtyring.heventfd.hirqbypass.hrouting.hirqchip.hirqfd.hmsi.hnopoll.hpfncache.hpmnotifier.hlivepatch.hmemorypresent.hmixedbreakpointsregs.hmmiotracesupport.hmodarchspecific.hmovepmd.hpud.hnetdsa.hnmi.hoprofile.hoptprobes.hpcspkrplatform.hperfeventsevents.hnmi.hregs.huserstackdump.hposixcputimerstaskwork.hpreemptlazy.hregsandstackaccessapi.hreliablestacktrace.hrseq.hschedavgirq.hsetuppercpuarea.hstackvalidation.hstackprotector.hsyscalltracepoints.huid16.hunstableschedclock.huserreturnnotifier.hvirtcpuaccountinggen.hhdlchdlc.hcisco.hfr.hppp.hraw.hhdmihdmi.hlpeaudio.hheaderscheck.hhibernatecallbacks.hhibernation.hhidhid.ha4tech.hacrux.halps.happle.happleir.hasus.haureal.hbatterystrength.hbelkin.hbetopff.hcherry.hchicony.hcmedia.hcorsair.hcypress.hdragonrise.helan.helecom.helo.hezkey.hgembird.hgeneric.hgfrm.hgreenasia.hgt683r.hgyration.hholtek.hicade.hite.hjabra.hkensington.hkeytouch.hkye.hlcpower.hled.hlenovo.hlogitechlogitech.hdj.hhidpp.hmagicmouse.hmicrosoft.hmonterey.hmultitouch.hnti.hntrig.hortek.hpantherlord.hpenmount.hpetalynx.hpicolcd.hpid.hplantronics.hprimax.hprodikeys.hrmi.hroccat.hsaitek.hsamsung.hsensoraccel3d.hals.hcustomsensor.hdevicerotation.hgyro3d.hhub.hhumidity.hiiocommon.htrigger.hinclinometer3d.hmagnetometer3d.hpress.hprox.htemp.hsmartjoyplus.hsony.hspeedlink.hsteelseries.hsunplus.hthingm.hthrustmaster.htivo.htopseed.htwinhan.huclogic.hwacom.hwaltop.hwiimote.hxinmo.hzeroplus.hzydacron.hhidraw.hhighrestimers.hhinic.hhisax163.h1tr6.havma1pcmcia.hbkma4t.hdiehldiva.helsa.henternowpci.heuro.hfritzpcipnp.hfritzpci.hgazel.hhfcpci.hsx.hhfc4s8s.hmaxcards.hnetjetnetjet.hu.hni1.hniccy.hnokeypad.hllc.hsendcomplete.hs0box.hsctquadro.hsedlbauer.hst5481.htelespci.hw6692.hhisttriggers.hhmemreporting.hhmmmirror.hhotplugcpu.hpcipci.hacpiacpi.hibm.hpcie.hshpc.hsmt.hhpaccel.hilo.hwatchdog.hwireless.hwmi.hhpethpet.hemulatertc.hmmap.htimer.hhpwdtnmidecoding.hhsaamdamd.hsvm.hhsudma.hhugetlbpage.hhugetlbfs.hhvcdriver.hhwconsole.hrandomrandom.hamd.hintel.htimeriomem.htpm.hvia.hvirtio.hhwlattracer.hhwmonhwmon.hvid.hhwpoisoninject.hhwspinlock.hhypervisorguest.hhysdnhysdn.hcapi.hhzhz.h1000.hi2ci2c.halgobit.halgopca.hamd756amd756.hs4882.hamd8111.hboardinfo.hchardev.hcompat.hdesignwarebaytrail.hcore.hplatform.hdiolanu2c.hhelperauto.hhidhid.hacpi.hcore.hi801.hisch.hismt.hmlxcpld.hmuxmux.hmlxcpld.hnforce2nforce2.hs4985.hparportparport.hlight.hpcaplatform.hpiix4.hscmi.hsimtec.hsis96x.hsmbus.hstub.htinyusb.hvia.hviapro.hviperboard.hi40ei40e.hdcb.hi40evf.hi6300esbwdt.hi8253lock.hi8k.hia32emulation.hfeatctl.hiavf.hib700wdt.hibmasr.hiceice.hhwts.hswitchdev.hicplusphy.hideapadlaptop.hidlepagetracking.hie6xxwdt.hieee802154ieee802154.h6lowpan.hdrivers.hfakelb.hsocket.hifb.hifcvf.higbigb.hdca.hhwmon.higbvf.higc.hiioiio.hbuffer.hconsumerspertrigger.hkfifobuf.htrigger.htriggeredbuffer.hikheaders.hillegalpointervalue.himaima.happraiseappraise.hbootparam.hmodsig.harchpolicy.hdefaulthashhash.hsha256.htemplate.hlsmrules.hmeasurepcridx.hreadpolicy.hsecureandortrustedboot.hsigtemplate.htrustedkeyring.hwritepolicy.hinetinet.hah.hdiagdiag.hdestroy.hespesp.hoffload.hespintcp.hipcomp.hmptcpdiag.hrawdiag.hsctpdiag.htcpdiag.htunnel.hudpdiag.hxfrmtunnel.hinet6ah.hespesp.hoffload.hespintcp.hipcomp.htunnel.hxfrmtunnel.hinfinibandinfiniband.haddrtranstrans.hconfigfs.hbnxtre.hcxgb4.hefa.hhfi1.hipoibipoib.hcm.hdebug.hirdma.hiser.hisert.hondemandpaging.hopavnic.hqedr.hrdmavt.hsrp.hsrpt.huseraccess.hmad.hmem.husnic.hvirtdma.hvmwarepvrdma.hinitenvarglimit.hinitramfssource.hinotifyuser.hinputinput.hapanel.hatiremote2.hatlasbtns.hcm109.hevdev.hffmemless.hgp2a.hgpiorotaryencoder.hjoydev.hkeyboard.hkeyspanremote.hleds.hmisc.hmouse.hmousedevmousedev.hscreenx.hy.hpcspkr.hpolldev.hpowermate.hsparsekmap.htablet.htouchscreen.huinput.hyealink.hinstructiondecoder.hint340xthermal.hintegrityintegrity.hasymmetrickeys.haudit.hplatformkeyring.hsignature.htrustedkeyring.hintelgtt.hhfithermal.hhidevent.hidle.hidma64.hidxdidxd.hbus.hperfmon.hsvm.hifs.hioatdma.hiommuiommu.hdebugfs.hfloppywa.hperfevents.hsvm.hips.hishhid.hishtpeclite.hmeimei.hme.hwdt.hoaktrail.hpchthermal.hpmccore.hpmtclass.hcrashlog.htelemetry.hpowerclamp.hqep.hraplrapl.hcore.hrst.hsdsi.hsocdtsiosfcore.hspeedselectinterface.htdxguest.hthth.hacpi.hgth.hmsu.hpci.hpti.hsth.hturbomax3.htxt.huncorefreqcontrol.hvbtn.hvsec.hwmithunderbolt.hxwayphy.hintervaltree.hiodelay0x80.htype0x80.h0xed.hnone.hudelay.hioasid.hiommuapi.hdebugfs.hdefaultpassthrough.hdma.hiopgtable.hiova.hsupport.hsva.hionic.hioschedbfq.hiosfmbi.hipadvancedrouter.hfibtriestats.hmroutemroute.hcommon.hmultipletables.hmulticast.hmultipletables.hnfarpmangle.harpfilter.harptables.hfilter.hiptables.hmangle.hmatchah.hecn.hrpfilter.httl.hnat.hraw.hsecurity.htargetecn.hmasquerade.hnetmap.hredirect.hreject.hsynproxy.httl.hpimsmv1.hv2.hrouteclassid.hmultipath.hverbose.hsctp.hsetset.hbitmapip.hipmac.hport.hhaship.hipmac.hipmark.hipport.hipportip.hipportnet.hmac.hnet.hnetiface.hnetnet.hnetport.hnetportnet.hlistset.hmax.hvsvs.hdebug.hdh.hfo.hftp.hipv6.hlblc.hlblcr.hlc.hmhmh.htabindex.hnfct.hnq.hovf.hpesip.hprotoahah.hesp.hesp.hsctp.htcp.hudp.hrr.hsed.hshsh.htabbits.htabbits.hwlc.hwrr.hip6nffilter.hiptables.hmangle.hmatchah.heui64.hfrag.hhl.hipv6header.hmh.hopts.hrpfilter.hrt.hnat.hraw.hsecurity.htargetmasquerade.hnpt.hreject.hsynproxy.hipcns.hipmideviceinterface.hdmidecode.hhandler.hpanicevent.hstring.hplatdata.hpoweroff.hsi.hssif.hwatchdog.hipppfilter.hipv6ipv6.hgre.hmip6.hmroutemroute.hmultipletables.hmultipletables.hndiscnodetype.hoptimisticdad.hpimsmv2.hrouteinfo.hrouterpref.hsitsit.h6rd.htunnel.hvti.hipvlan.hipvtap.hirene.hfintek.higuana.himonimon.hdecoder.hraw.hitecir.hjvcdecoder.hmcekbddecoder.hmceusb.hnecdecoder.hnuvoton.hrc5decoder.hrc6decoder.hredrat3.hsanyodecoder.hserialserial.htransmitter.hsir.hsonydecoder.hstreamzap.httusbir.hwinbondcir.hirqbypassmanager.hdomaindomain.hhierarchy.hforcedthreading.hmsiiommu.hpoll.hremap.hwork.hisadmaapi.hiscsibootsysfs.hibftibft.hfind.htargettarget.hcxgb4.htcp.hisdnisdn.haudio.hcapicapi.hcapi20.hcapidrvcapidrv.hverbose.hmiddleware.hdiversion.hdrvavmb1b1pci.hb1pciv4.hc4.ht1pci.hgigaset.hhisax.hhdlc.hi4l.hmpp.hpppppp.hvj.httyfax.hisl29003.hisl29020.hiso9660fs.hit87wdt.hit8712fwdt.hitcovendorsupport.hwdt.hiwldvm.hiwlmvm.hiwlwifiiwlwifi.hdebug.hdebugfs.hdevicetracing.hleds.hopmodemodular.hixgbeixgbe.hdca.hdcb.hhwmon.hipsec.hixgbevfixgbevf.hipsec.hjbd2.hjoliet.hkallsymskallsyms.habsolutepercpu.hall.hbaserelative.hkarmapartition.hkernelkernel.releasegzip.hkernfs.hkexeckexec.hbzimageverifysig.hcore.hfile.hjump.hsig.hkeyboardatkbd.hkeyskeys.hcompat.hkprobeevents.hkprobeskprobes.honftrace.hkretprobes.hksm.hkunitkunit.halltests.hdebugfs.hexampletest.htest.hkvmkvm.hamdamd.hsev.hasyncpf.hcompat.hexternalwritetracking.hgenericdirtylogreadprotect.hguest.hintel.hmmio.hvfio.hwerror.hl2tpl2tp.hdebugfs.heth.hip.hv3.hlatencytop.hlcdclassdevice.hplatform.hledtriggerphy.hledsblinkm.hbrightnesshwchanged.hclass.hclevomail.hintelss4200.hlm3530.hlp3944.hlp5521.hlp5523.hlp5562.hlp55xxcommon.hlt3593.hmlxcpld.hmlxreg.htriggeraudio.hbacklight.hcamera.hdefaulton.hdisk.hgpio.hheartbeat.honeshot.htimer.htransient.htriggers.hlegacyvsyscallemulate.hlibcrc32c.hlibfc.hlibfcoe.hlibnvdimm.hlinearrangesranges.hkunittest.hliquidioliquidio.hvf.hlirc.hlistkunittest.hlivepatch.hllc.hloaduefikeys.hlocalversion.hlockdebuggingsupport.hdowninefisecureboot.hkernel.heventcounts.hspinonowner.hstat.htorturetest.hlockdlockd.hv4.hlockdeplockdep.hbits.hchainsbits.hcircularqueuebits.hstacktracebits.hhashbits.hsupport.hlockupdetector.hlogbufshift.hcpumaxbufshift.hlogitechff.hlogologo.hlinuxclut224.hloopbacktarget.hlpcich.hsch.hlsiet1011cphy.hlsmlsm.hmmapminaddr.hlwtunnellwtunnel.hbpf.hlxtphy.hlz4decompress.hlzocompress.hdecompress.hmacemumousebtn.hpartition.hmac80211mac80211.hdebugfs.hhasrc.hhwsim.hleds.hmessagetracing.hrcdefaultdefault.hminstrel.hminstrel.hstahashmaxsize.hmac802154.hmachzwdt.hmacintoshdrivers.hmacsec.hmacvlan.hmacvtap.hmagicsysrqsysrq.hdefaultenable.hserial.hmailbox.hmantiscore.hmappingdirtyhelpers.hmarvell10gphy.hphy.hmaxrawdevs.hmaxlineargphy.hmaxsmp.hmdmd.hautodetect.hcluster.hfaulty.hlinear.hraid0.hraid1.hraid10.hraid456.hmdiomdio.hbcmunimac.hbitbang.hbus.hcavium.hdevice.hmsccmiim.hthunder.hmediaalteraci.hanalogtvsupport.hattach.hcamerasupport.hcecsupport.hcommonoptions.hdigitaltvsupport.hpcisupport.hradiosupport.hsubdrvautoselect.hsupport.htunertuner.he4000.hfc0011.hfc0012.hfc0013.hfc2580.hit913x.hm88rs6000t.hmax2165.hmc44s803.hmt2060.hmt2063.hmt20xx.hmt2131.hmt2266.hmxl5005s.hmxl5007t.hqm1d1b0004.hqm1d1c0042.hqt1010.hr820t.hsi2157.hsimple.htda18212.htda18218.htda18250.htda18271.htda827x.htda8290.htda9887.htea5761.htea5767.htua9001.hxc2028.hxc4000.hxc5000.husbsupport.hmegaraidsas.hmellanoxplatform.hmemsoftdirty.hmembarrier.hmemcgmemcg.hkmem.hswap.hmemcpykunittest.hmemfdcreate.hmemoryballoon.hfailure.hhotplug.hhotremove.hisolation.hmemregion.hmemstickmemstick.hjmicron38x.hr592.hrealtekpci.husb.htifmms.hmessagelogleveldefault.hmfdcore.hintellpsslpss.hacpi.hpci.hsm501sm501.hgpio.hviperboard.hvx855.hmhibusbus.hpcigeneric.hmicrelks8995ma.hphy.hmicrochipphy.ht1phy.hmicrocodemicrocode.hamd.hintel.hmicrosemiphy.hmigration.hmii.hminixsubpartition.hmiscfilesystems.hrtsxrtsx.hpci.husb.hmisdnmisdn.havmfritz.hdsp.hhfcmulti.hhfcpci.hhfcusb.hinfineon.hipac.hisar.hl1oip.hnetjet.hspeedfax.hw6692.hmlxplatform.hwdt.hmlx4core.hdebug.henen.hdcb.hinfiniband.hmlx5bridge.hclsact.hcorecore.henen.hdcb.hipoib.henarfs.hipsec.hrxnfc.htls.heswitch.hfpga.hinfiniband.hmpfs.hsfsf.hmanager.hswsteering.htcct.hsample.hvdpavdpa.hnet.hmlxfw.hmlxreghotplug.hio.hmlxswcorecore.hhwmon.hthermal.hi2c.hminimal.hpci.hspectrumspectrum.hdcb.hswitchib.hswitchx2.hmmcmmc.hblockblock.hminors.hcb710.hcqhci.hrealtekpci.husb.hricohmmc.hsdhcisdhci.hacpi.hpci.hpltfm.htifmsd.hushc.hviasdmmc.hvub300.hmmconffam10h.hmmiotrace.hmmummu.hgathermergevmas.hrcutablefree.htablefree.hnotifier.hmodifyldtsyscall.hmoduleforceload.hsigsig.hall.hformat.hhash.hkey.hsha256.hsrcversionall.hunload.hmodulesmodules.htreelookup.huseelfrela.hmodversions.hmouseappletouch.hbcm5974.hcyapa.helani2ci2c.hi2c.hsmbus.hps2ps2.halps.hbyd.hcypress.helantechelantech.hsmbus.hfocaltech.hlifebook.hlogips2pp.hsentelic.hsmbus.hsynapticssynaptics.hsmbus.htrackpoint.hvmmouse.hserial.hsynapticsi2c.husb.hvsxxxaa.hmpilib.hmplsmpls.hiptunnel.hrouting.hmptcpmptcp.hipv6.hkunittest.hmqioscheddeadline.hkyber.hmrp.hmsdosfs.hpartition.hmsilaptop.hwmi.hmsproblock.hmt76connaclib.hcore.hleds.husb.hmt7601u.hmt76x0common.hmt76x02lib.husb.hmt76x0u.hmt76x2common.hmt76x2u.hmt7921common.hmt7921e.hmtdmtd.hblkdevs.hblock.hcfii1.hi2.hmapbankwidth1.h2.h4.hubiubi.hbeblimit.hwlthreshold.hmtrrmtrr.hsanitizersanitizer.henabledefault.hspareregnrdefault.hmultiuser.hmutexspinonowner.hmwifiexmwifiex.hpcie.hsdio.husb.hmxmwmi.hmyri10gemyri10ge.hdca.hngsm.hhdlc.hnamespaces.hnationalphy.hndblk.hbtt.hclaim.hpfn.hneeddmamapstate.hmultiplenodes.hpercpuembedfirstchunk.hpagefirstchunk.hsgdmalength.hnetnet.hactbpf.hcsum.hct.hgact.hmirred.hmpls.hnat.hpedit.hpolice.hsample.hsimp.hskbedit.hskbmod.htunnelkey.hvlan.hclscls.hact.hbasic.hbpf.hcgroup.hflow.hflower.hfw.hmatchall.hroute4.hrsvp.hrsvp6.htcindex.hu32.hcore.hdevlink.hdropmonitor.hegress.hematchematch.hcmp.hipset.hmeta.hnbyte.hstack.htext.hu32.hfailover.hfc.hflowlimit.hingress.hiptunnel.hipgreipgre.hbroadcast.hdemux.hipip.hipvti.hkeykey.hmigrate.hl3masterdev.hmplsgso.hns.hnsh.hpacketengine.hpktgen.hpollcontroller.hptpclassify.hredirect.hschatm.hcbq.hcbs.hchoke.hcodel.hdefault.hdrr.hdsmark.hets.hfifo.hfqfq.hcodel.hgred.hhfsc.hhhf.hhtb.hingress.hmqpriomqprio.hlib.hmultiq.hnetem.hpie.hplug.hprio.hqfq.hred.hsfb.hsfq.htbf.hteql.hsched.hsockmsg.hswitchdev.htcskbext.hteamteam.hmodeactivebackup.hbroadcast.hloadbalance.hrandom.hroundrobin.hudptunnel.hvendoramazon.hamd.haquantia.hatheros.hbroadcom.hbrocade.hcavium.hchelsio.hcisco.hdec.hdlink.hemulex.hgoogle.hhuawei.hintel.hmellanox.hmicrosoft.hmyri.hnetronome.hoki.hpensando.hqlogic.hrealtek.hrocker.hsolarflare.hstmicro.hvrf.hnetconsolenetconsole.hdynamic.hnetdevaddrlisttest.hnetdevices.hnetdevsim.hnetfilternetfilter.hadvanced.hconncount.hfamilyarp.hbridge.hingress.hnetlinknetlink.hgluect.hlog.hqueue.hsynproxy.hxtconnmark.hmark.hmatchaddrtype.hbpf.hcgroup.hcluster.hcomment.hconnbytes.hconnlabel.hconnlimit.hconnmark.hconntrack.hcpu.hdccp.hdevgroup.hdscp.hecn.hesp.hhashlimit.hhelper.hhl.hiprange.hipvs.hlength.hlimit.hmac.hmark.hmultiport.hosf.howner.hphysdev.hpkttype.hpolicy.hquota.hrateest.hrealm.hrecent.hsctp.hsocket.hstate.hstatistic.hstring.htcpmss.hu32.hnat.hset.htargetaudit.hchecksum.hclassify.hconnmark.hconnsecmark.hct.hdscp.hhl.hhmark.hidletimer.hlog.hmark.hnetmap.hnflog.hnfqueue.hnotrack.hrateest.hredirect.hsecmark.htcpmss.htcpoptstrip.htee.htproxy.htrace.hxtables.hnetlabel.hnetlinkdiag.hnetpoll.hnetworkfilesystems.hphytimestamping.hsecmark.hnetxennic.hnewleds.hnfconntrackconntrack.hamanda.hbroadcast.hevents.hftp.hh323.hirc.hlabels.hmark.hnetbiosns.hpptp.hprocfs.hsane.hsecmark.hsip.hsnmp.htftp.htimeout.htimestamp.hzones.hctnetlinknetlink.hhelper.htimeout.hprotodccp.hgre.hsctp.hudplite.hdefragipv4.hipv6.hdupipv4.hipv6.hnetdev.hflowtabletable.hinet.hipv4.hipv6.hlogarp.hipv4.hipv6.hsyslog.hnatnat.hamanda.hftp.hh323.hirc.hmasquerade.hneeded.hpptp.hredirect.hsip.hsnmpbasic.htftp.hosf.hrejectipv4.hipv6.hsocketipv4.hipv6.htablestables.harp.hbridge.hinet.hipv4.hipv6.hnetdev.hset.htproxyipv4.hipv6.hnfpnfp.happabmnic.hflower.hdebug.hnfsaclsupport.hcommon.hdebug.hfs.hfscache.husekerneldns.hv3v3.hacl.hv4v4.h11.himplementationiddomain.h2.hsecuritylabel.hnfsdnfsd.hpnfs.hscsilayout.hv2acl.hv3v3.hacl.hv4v4.hsecuritylabel.hnftbridgereject.hcompat.hconnlimit.hcounter.hct.hdupipv4.hipv6.hnetdev.hfibfib.hinet.hipv4.hipv6.hnetdev.hflowoffload.hfwdnetdev.hhash.hlimit.hlog.hmasq.hnat.hnumgen.hobjref.hqueue.hquota.hredir.hrejectreject.hinet.hipv4.hipv6.hsocket.htproxy.hxfrm.hnitroenclaves.hnlattr.hnlmon.hnlsnls.hascii.hcodepage1250.h1251.h437.h737.h775.h850.h852.h855.h857.h860.h861.h862.h863.h864.h865.h866.h869.h874.h932.h936.h949.h950.hdefault.hiso88591.h13.h14.h15.h2.h3.h4.h5.h6.h7.h8.h9.hkoi8r.hu.hmacceltic.hcenteuro.hcroatian.hcyrillic.hgaelic.hgreek.hiceland.hinuit.hroman.hromanian.hturkish.hutf8.hnohzhz.hcommon.hfull.hnodesshift.hnoptracer.hnouveaudebugdebug.hdefault.hmmu.hpush.hnozomi.hnrcpuscpus.hdefault.hrangebegin.hend.hntbntb.hamd.hintel.hmsi.hnetdev.hperf.hpingpong.htool.htransport.hnumanuma.hemu.hkeepmeminfo.hnvtco.hnvdimmdax.hkeys.hpfn.hnvmecore.hfabrics.hfc.hmultipath.hrdma.htargettarget.hfc.hfcloop.hloop.hrdma.htcp.htcp.hverboseerrors.hnvmem.hnvram.hnvswsn2201.hobjagg.hoidregistry.holdsigsuspend3.hopenvswitchopenvswitch.hgeneve.hgre.hvxlan.hoprofilenmitimer.hoptimizeinlining.hoptprobes.hosfpartition.hosnoisetracer.houtputformat.hoverlayfs.hpacketpacket.hdiag.hpadata.hpagecounter.hextension.howner.hpoisoning.hpool.hreporting.htableisolation.hpanasoniclaptop.hpaniconoopsvalue.htimeout.hparavirtparavirt.hclock.hspinlocks.htimeaccounting.hparman.hparportparport.h1284.hnotpc.hpc.hserial.hpartitionadvanced.hpcc.hpccard.hpcipci.hats.hdirect.hdomains.hiov.hlabel.hlocklessconfig.hmmconfig.hmsimsi.hirqdomain.hpasid.hpfstub.hpri.hquirks.hstub.hpciebusdefault.hdpc.hecrc.hedr.hpme.hpcieaerpcieaer.hinject.hpcieaspmpcieaspm.hdefault.hpcieportbus.hpcipcwatchdog.hpcsxpcs.hpcspkrplatform.hperfeventsevents.hamdbrs.hpower.huncore.hintelcstate.hrapl.huncore.hpersistentkeyrings.hpgtablelevels.hphylib.hphylink.hphysaddrt64bit.hphysicalalign.hstart.hpidns.hpinconf.hpinctrlpinctrl.halderlake.hamd.hbaytrail.hbroxton.hcannonlake.hcedarfork.hdenverton.helkhartlake.hemmitsburg.hgeminilake.hicelake.hintel.hlewisburg.hmeteorlake.hsunrisepoint.htigerlake.hpinmux.hpkcs7messageparser.hpldmfw.hpluginhostcc.hpmpm.hadvanceddebug.hclk.hdebug.hgenericdomainsdomains.hsleep.hsleepsleep.hdebug.hsmp.hstdpartition.htracetrace.hrtc.hpmbus.hpmcatom.hpmicopregion.hpnfsblock.hfilelayout.hflexfilelayout.hpnp.hpnpacpi.hposixcputimerstaskwork.hmqueuemqueue.hsysctl.htimers.hpowerreset.hsupply.hpowercap.hppdev.hpppppp.hasync.hbsdcomp.hdeflate.hfilter.hmppe.hmultilink.hsynctty.hpppoatm.hpppoe.hpppol2tp.hppspps.hclientgpio.hldisc.hparport.hpptp.hpreemptcount.hlazy.hnotifiers.hrcu.hrt.hpreemption.hpreemptirqtracepoints.hpreventfirmwarebuild.hprimenumbers.hprintquotawarning.hprinter.hprintkprintk.hnmi.hsafelogbufshift.htime.hprobeevents.hprocchildren.hcpuresctrl.hevents.hfs.hkcore.hpagemonitor.hpidcpuset.hsysctl.hthermalmmiorapl.hvmcorevmcore.hdevicedump.hprofiling.hprovelocking.hrcu.hprovideohci1394dmainit.hpsample.hpsipsi.hdefaultdisabled.hpstorepstore.hcompresscompress.hdefault.hdeflatecompresscompress.hdefault.hram.hptp1588clockclock.hkvm.hvmw.hpvpanic.hpwmpwm.hdwc.hlpsslpss.hpci.hplatform.hsysfs.hqcomqmihelpers.hqedqed.hfcoe.hiscsi.hll2.hooo.hrdma.hsriov.hqede.hqedf.hqedi.hqfmtv2.hqla3xxx.hqrtrqrtr.hmhi.hqsemiphy.hqueuedspinlocks.hquotaquota.hdebug.hnetlinkinterface.htree.hquotactlquotactl.hcompat.hr8169.hradioadapters.htea575x.hraidattrs.hraid6pqpq.hbenchmark.hrandomtrustcpu.hrandom32selftest.hrandomizebase.hmemorymemory.hphysicalpadding.hras.hrationalrational.hkunittest.hrawdriver.hrcatiremote.hcore.hdecoders.hdevices.hloopback.hmap.hrcuboostboost.hdelay.hcpustalltimeout.hneedsegcblist.hnocbcpu.hstallcommon.htorturetest.hrdbzip2.hgzip.hlz4.hlzma.hlzo.hxz.hrdmarxe.hsiw.hrealtekautopm.hphy.hreedsolomonsolomon.hdec8.henc8.hregmapregmap.hi2c.hirq.hsoundwiresoundwire.hmbq.hspi.hrelay.hrelocatable.hrenesasphy.hresetcontroller.hresourcekunittest.hrethunk.hretpoline.hrfkillrfkill.hinput.hleds.hrfsaccel.hrheldifferences.hringbufferbuffer.hbenchmark.hrmi42dsensor.hcore.hf03f03.hserio.hf11.hf12.hf30.hf34.hf3a.hf55.hi2c.hsmb.hspi.hrockchipphy.hrocker.hrpcsecgsskrb5.hrps.hrseq.hrtmutexes.hrt2800liblib.hmmio.hrt2800pcirt2800pci.hrt3290.hrt33xx.hrt35xx.hrt53xx.hrt2800usbrt2800usb.hrt33xx.hrt3573.hrt35xx.hrt53xx.hrt55xx.hunknown.hrt2x00rt2x00.hliblib.hcrypto.hdebugfs.hfirmware.hleds.hmmio.hpci.husb.hrtcclass.hdrvbq32k.hbq4802.hcmos.hds1286.hds1307.hds1374.hds1511.hds1553.hds1672.hds1742.hds2404.hds3232ds3232.hhwmon.hem3027.hfm3130.hisl12022.hisl1208.hm41t80m41t80.hwdt.hm48t35.hm48t59.hmax6900.hmsm6242.hpcf8523.hpcf8563.hpcf8583.hrp5c01.hrs5c372.hrv3029c2.hrx4581.hrx8025.hrx8581.hstk17ta8.hv3020.hx1205.hhctosyshctosys.hdevice.hi2candspi.hintfdev.hproc.hsysfs.hliblib.hkunittest.hmc146818lib.hnvmem.hsystohcsystohc.hdevice.hrtlcards.hrtl8188ee.hrtl8192ccommon.hrtl8192ce.hrtl8192cu.hrtl8192de.hrtl8192ee.hrtl8192se.hrtl8723common.hrtl8723ae.hrtl8723be.hrtl8821ae.hrtl8xxxu.hrtlbtcoexist.hrtlwifirtlwifi.hdebug.hpci.husb.hrtw88rtw88.h8822b.h8822be.h8822c.h8822ce.hcore.hdebug.hdebugfs.hpci.hrtw89rtw89.h8852a.h8852ae.hcore.hpci.hruntimetestingmenu.hrwsemspinonowner.hsamplevfiomdevmtty.hsamples.hsamsunglaptop.hq10.hsataahciahci.hplatform.hhost.hmobilelpmpolicy.hpmp.hsbcfitpc2watchdog.hsbitmap.hscftorturetest.hschedautogroup.hcluster.hdebug.hhrtick.hinfo.hmcmc.hprio.homitframepointer.hsmt.htracer.hschedstats.hscsiscsi.haacraid.hbnx2iscsi.hbnx2xfcoe.hchelsiofcoe.hconstants.hcxgb4iscsi.hdebug.hdhdh.halua.hemc.hhpsw.hrdac.hdma.henclosure.hfcattrs.hhpsa.hiscsiattrs.hlogging.hlowlevel.hlpfc.hmod.hmpi3mr.hmpt2sasmpt2sas.hmaxsge.hmpt3sasmpt3sas.hmaxsge.hnetlink.hprocfs.hqlafc.hiscsi.hsasata.hattrs.hhostsmp.hlibsas.hscanasync.hsmartpqi.hspiattrs.hsrpattrs.hvirtio.hsctpcookiehmacmd5.hsha1.hdefaultcookiehmacsha1.hsdiouart.hseccompseccomp.hfilter.hsectionmismatchwarnonly.hsecuritysecurity.hinfiniband.hnetworknetwork.hxfrm.hpath.hselinuxselinux.havcstats.hbootparam.hcheckreqprotvalue.hdevelop.hdisable.hsid2strcachesize.hsidtabhashbits.hwritablehooks.hyama.hsecurityfs.hselectmemorymodel.hsensorsabituguru.habituguru3.hacpipower.had7414.had7418.hadm1021.hadm1025.hadm1026.hadm1029.hadm1031.hadm1275.hadm9240.hads1015.hads7828.hadt7410.hadt7411.hadt7462.hadt7470.hadt7475.hadt7x10.hamc6821.hamdenergy.hapds990x.happlesmc.hasb100.hasc7621.hatk0110.hatxp1.hbh1770.hcoretemp.hdellsmm.hdme1737.hds1621.hds620.hemc1403.hemc6w201.hf71805f.hf71882fg.hf75375s.hfam15hpower.hfschmd.hg760a.hgl518sm.hgl520sm.hhdaps.hi5500.hi5kamb.hibmaem.hibmpex.hina209.hina2xx.hit87.hjc42.hk10temp.hk8temp.hlineage.hlis3i2c.hlis3lv02d.hlm25066.hlm63.hlm73.hlm75.hlm77.hlm78.hlm80.hlm83.hlm85.hlm87.hlm90.hlm92.hlm93.hlm95234.hlm95241.hlm95245.hltc2978.hltc4151.hltc4215.hltc4245.hltc4261.hmax16064.hmax16065.hmax1619.hmax1668.hmax197.hmax34440.hmax6639.hmax6642.hmax6650.hmax6697.hmax8688.hmcp3021.hmlxregfan.hnct6775.hntcthermistor.hpc87360.hpc87427.hpcf8591.hpmbus.hsch5627.hsch5636.hsch56xxcommon.hsht15.hsht21.hsis5595.hsmsc47b397.hsmsc47m1.hsmsc47m192.hthmc50.htmp102.htmp401.htmp421.htsl2550.hucd9000.hucd9200.hviacputemp.hvia686a.hvt1211.hvt8231.hw83627ehf.hw83627hf.hw83781d.hw83791d.hw83792d.hw83793.hw83795.hw83l785ts.hw83l786ng.hzl6100.hserial82508250.hconsole.hdma.hdw.hdwlib.hexar.hextended.hlpss.hmanyports.hmid.hnruarts.hpci.hpnp.hrsa.hruntimeuarts.hshareirq.harcarc.hnrports.hcorecore.hconsole.hearlycon.hjsm.hmultiinstantiate.hnonstandard.hserioserio.halteraps2.harcps2.hi8042.hlibps2.hraw.hserport.hsevguest.hsfcsfc.hmcdilogging.hmon.hmtd.hsienasiena.hmcdilogging.hmon.hmtd.hsriov.hsriov.hsfi.hsgpool.hsgetmasksyscall.hsgigru.hioc4.hpartition.hxp.hsglalloc.hshmem.hshufflepageallocator.hsignalfd.hsignature.hsignedpefileverification.hskbextensions.hslabfreelisthardened.hrandom.hslhc.hslipslip.hcompressed.hsmart.hsls.hslubslub.hdebug.hkunittest.hsmp.hsmssdiodrv.hsianomdtv.hrc.husbdrv.hsmscphy.hsch311xwdt.hsndsnd.hac97codec.hpowersavesave.hdefault.had1889.hali5451.haloop.hamdacpconfig.hasihpi.hatiixpatiixp.hmodem.hau8810.hau8820.hau8830.hbcd2000.hbebob.hbt87x.hca0106.hcmipci.hcompressoffload.hcs46xxcs46xx.hnewdsp.hctldebug.hfastlookup.hinputvalidation.hled.hctxfi.hdarla20.hdarla24.hdebug.hdice.hdmasgbuf.hdrivers.hdummy.hdynamicminors.hecho3g.hemu10k1emu10k1.hseq.hemu10k1x.hens1370.hens1371.hes1968es1968.hinput.hradio.hfireface.hfirewirefirewire.hdigi00x.hlib.hmotu.htascam.hfireworks.hgina20.hgina24.hhdahda.hcodecanalog.hca0110.hca0132ca0132.hdsp.hcirrus.hcmedia.hconexant.hcs8409.hhdmi.hrealtek.hsi3054.hsigmatel.hvia.hcomponent.hcore.hcsdspcontrols.hdsploader.hextcore.hgenericgeneric.hleds.hhwdep.hi915.hinputbeepbeep.hmode.hintel.hpatchloader.hpowersavedefault.hpreallocsize.hreconfig.hscodeccs35l41cs35l41.hi2c.hspi.hhdsp.hhdspm.hhrtimer.hhwdep.hice1712.hice1724.hindigo.hindigodj.hindigodjx.hindigoio.hindigoiox.hinteldspconfig.hnhlt.hsoundwireacpi.hintel8x0.hintel8x0m.hisight.hjackjack.hinputdev.hkorg1212.hlayla20.hlayla24.hlola.hlx6464es.hmaestro3maestro3.hinput.hmaxcards.hmia.hmixart.hmona.hmpu401mpu401.huart.hmtpav.hopl3liblib.hseq.hossemul.hoxfw.hoxygenoxygen.hlib.hpci.hpcmpcm.held.htimer.hxrundebug.hpcsp.hpcxhr.hprocfs.hrawmidi.hrme32.hrme96.hrme9652.hseqdevice.hdummy.hhrtimerdefault.hmidimidi.hemul.hevent.hvirmidi.hsequencersequencer.hoss.hsocsoc.hacpiacpi.hintelmatch.hamdacp5x.hacp6x.hrenoirrenoir.hmach.hvangoghmach.hycmach.hcompress.hcs35l41cs35l41.hi2c.hlib.hspi.hcx2072x.hda7213.hda7219.hdmic.hes8316.hes8326.hhda.hhdachda.hhdmi.hi2candspi.hintelapl.havs.hbdwrt5650mach.hrt5677mach.hbroadwellmach.hbxtda7219max98357acommon.hmach.hrt298mach.hbytchtcx2072xmach.hda7213mach.hes8316mach.hnocodecmach.hbytcrrt5640mach.hrt5651mach.hcatpt.hcfl.hchtbswmax98090timach.hnau8824mach.hrt5645mach.hrt5672mach.hcmlh.hlplp.hda7219max98357amach.hcnl.hda7219max98357ageneric.hehlrt5660mach.hglkglk.hda7219max98357amach.hrt5682max98357amach.hhaswellmach.hhdadspcommon.hkblkbl.hda7219max98357amach.hmax98927mach.hrt5660mach.hrt5663max98927mach.hrt5514max98927mach.hmach.hsklskl.hhdadspgenericmach.hnau88l25max98357amach.hssm4567mach.hrt286mach.hskylakeskylake.hcommon.hfamily.hsspclk.hsofcirruscommon.hcmlrt1011rt5682mach.hda7219max98373mach.hes8336mach.hmaximcommon.hnau8825mach.hpcm512xmach.hrealtekcommon.hrt5682mach.hsspampmach.hwm8804mach.hsoundwiresofmach.hsstsst.htoplevel.huserfriendlylongnames.hmax98090.hmax98357a.hmax98373max98373.hi2c.hsdw.hmax98390.hmax98927.hnau8315.hnau8821.hnau8824.hnau8825.hpcm512xpcm512x.hi2c.hrl6231.hrl6347a.hrt1011.hrt1015.hrt1015p.hrt1308rt1308.hsdw.hrt1316sdw.hrt1318sdw.hrt286.hrt298.hrt5514rt5514.hspi.hrt5640.hrt5645.hrt5651.hrt5660.hrt5663.hrt5670.hrt5677rt5677.hspi.hrt5682rt5682.hi2c.hsdw.hrt5682s.hrt700rt700.hsdw.hrt711rt711.hsdcasdw.hsdw.hrt712sdcasdw.hrt715rt715.hsdcasdw.hsdw.hsdwmockup.hsofsof.hacpiacpi.hdev.halderlake.hamdcommon.hrembrandt.hrenoir.htoplevel.hapollolake.hbaytrail.hbroadwell.hcannonlake.hclient.hcoffeelake.hcometlake.hdebugprobes.helkhartlake.hgeminilake.hhdahda.haudiocodec.hcommon.hlinklink.hbaseline.hmlink.hprobes.hicelake.hintelapl.hatomhifiep.hcnl.hcommon.hhifiepipc.hicl.hipc4.hmtl.hsoundwiresoundwire.hlinkbaseline.htgl.htoplevel.hipc3.hjasperlake.hmerrifield.hmeteorlake.hpcipci.hdev.hprobeworkqueue.htigerlake.htoplevel.hxtensa.hssm4567.htopologytopology.hkunittest.hts3a227e.hutilskunittest.hwmadsp.hwm8804wm8804.hi2c.hsstatomhifi2platformplatform.hacpi.hsynthemux.htimer.htrident.husbusb.h6fire.haudio.hcaiaqcaiaq.hinput.hhiface.hline6.hpod.hpodhd.htoneport.hua101.hus122l.husx2y.hvariax.hverboseprintk.hprocfs.hvia82xxvia82xx.hmodem.hvirmidi.hvirtio.hvirtuoso.hvmaster.hvxlib.hvx222.hx86.hsockcgroupdata.hvalidatexmit.hsoftwatchdog.hsoftlockupdetector.hsolarisx86partition.hsonyff.hlaptop.hsonypicompat.hsoundsound.hosscorecore.hpreclaim.hsoundwiresoundwire.hamd.hcadence.hgenericallocation.hintel.hsp5100tco.hsparseirq.hsparsememsparsemem.hextreme.hmanual.hvmemmapvmemmap.henable.hspeculationmitigations.hspispi.hamd.hmaster.hpxa2xxpxa2xx.hpci.hsplitptlockcpus.hsquashfssquashfs.hdecompmultipercpu.hfiledirect.hfragmentcachesize.hlzo.hxattr.hxz.hzlib.hsrcu.hssbpossible.hstacktracer.hvalidation.hstackdepot.hstackprotectorstackprotector.hstrong.hstacktracestacktrace.hsupport.hstandalone.hste10xp.hstmstm.hdummy.hprotobasic.hsyst.hsourceconsole.hftrace.hheartbeat.hstmmaceth.hstp.hstreamparser.hstrictdevmem.hkernelrwx.hmodulerwx.hstripasmsyms.hsunpartition.hsunrpcsunrpc.hbackchannel.hdebug.hgss.hxprtrdma.hsuspendsuspend.hfreezer.hswap.hswiotlb.hswphy.hsymbolicerrname.hsyncookies.hsyncfile.hsynclinksynclink.hgt.hsynclinkmp.hsysctlsysctl.hexceptiontrace.hkunittest.hsysfssysfs.hsyscall.hsystemblacklisthashlist.hkeyring.hdataverification.htrustedkeyring.hkeys.hsysvipcsysvipc.hcompat.hsysctl.htabletserialwacom4.husbacecad.haiptek.hgtco.hkbtab.htap.htargetcore.htaskdelayacct.hioaccounting.hxacct.htasksrcurcu.hgeneric.hrudercu.htracercu.htaskstats.htcgatmel.hcrb.hinfineon.hnsc.htistis.hcore.hi2catmel.hinfineon.hnuvoton.hst33zp24st33zp24.hi2c.htpm.htcmfileio.hiblock.hpscsi.huser2.htcpcongadvanced.hbbr.hbic.hcubic.hdctcp.hhstcp.hhtcp.hhybla.hillinois.hlp.hnv.hscalable.hvegas.hveno.hwestwood.hyeah.hmd5sig.htdxguestdriver.htelclock.hteraneticsphy.htestbpf.hfpu.hkstrtox.hlistsort.hlivepatch.hstringhelpers.hvmalloc.htextsearchtextsearch.hbm.hfsm.hkmp.hthermalthermal.hdefaultgovstepwise.hemergencypoweroffdelayms.hgovbangbang.hfairshare.hstepwise.huserspace.hhwmon.hnetlink.hwritabletrips.hthinkpadacpiacpi.halsasupport.hhotkeypoll.hvideo.hlmi.hthreadinfointask.htickoneshot.htifm7xx1.hcore.htigon3tigon3.hhwmon.htimekunittest.hns.htimerfd.htimerlattracer.htipctipc.hcrypto.hdiag.hmediaib.hudp.htlstls.hdevice.htmpfstmpfs.hposixacl.hxattr.htopstarlaptop.htorturetest.htoshibabtrfkill.htouchscreenelo.hproperties.hwacomi2c.hw8001.htraceclock.hirqflagsirqflags.hnminmi.hsupport.hsupport.htracepoints.htracermaxtrace.hsnapshot.htracingtracing.hmap.hsupport.htreercu.hsrcu.htristate.conftrustedkeys.httpcieeprom.htty.htun.htypectypec.hdpaltmode.hfusb302.hhd3ss3220.hmuxpi3usb30532.hrt1711h.hstusb160x.htcpci.htcpm.htps6598x.hucsi.hucs2string.hucsiacpi.hudffs.hueficpercper.hx86.huhid.huid16.huiouio.haec.hcif.hpcigeneric.hpdrvgenirq.hsercos3.huninlinespinunlock.hunixunix.hdiag.hscm.hunix98ptys.hunixwaredisklabel.hunwinderorc.huprobeevents.huprobes.husbusb.hacm.hadutux.halim5632.han2720.hannouncenewdevices.happledisplay.harchhashcd.harmlinux.hatm.hautosuspenddelay.hbelkin.hcatc.hcommon.hconngpio.hcxacru.hdefaultpersist.hehcihcd.hpci.hroothubtt.httnewsched.hemi26.hemi62.hepson2888.hezusbfx2.hfewinitretries.hftdielan.hgl860.hgspcagspca.hbenq.hconex.hcpia1.hetoms.hfinepix.hjeilinj.hjl2005bcd.hkonica.hmars.hmr97310a.hnw80x.hov519.hov534ov534.h9.hpac207.hpac7302.hpac7311.hse401.hsn9c2028.hsn9c20x.hsonixb.hsonixj.hspca1528.hspca500.hspca501.hspca505.hspca506.hspca508.hspca561.hsq905.hsq905c.hsq930x.hstk014.hstv0680.hsunplus.ht613.htopro.htv8532.hvc032x.hvicam.hxirlinkcit.hzc3xx.hhid.hhiddev.hhsicusb3503.hhso.hhwahcd.hidmouse.hiowarrior.hipheth.hisightfw.hkaweth.hkc2190.hlan78xx.hlcd.hld.hledtrig.hledstriggerusbport.hlegotower.hm5602.hmdc800.hmicrotek.hmon.hnetax88179178a.hax8817x.hcdceem.hmbim.hncm.hsubsetsubset.henable.hcdcether.hch9200.hcx82310eth.hdm9601.hdrivers.hgl620a.hhuaweicdcncm.hint51x1.hkalmia.hmcs7830.hnet1080.hplusb.hqmiwwan.hrndishost.hsmsc75xx.hsmsc95xx.hzaurus.hohcihcdhcd.hpci.hlittleendian.hpci.hpegasus.hprinter.hpulse8cec.hpwcpwc.hinputevdev.hrainshadowcec.hroleswitch.hrolesintelxhci.hrtl8150.hrtl8152.hs2255.hserialserial.haircable.hark3116.hbelkin.hch341.hconsole.hcp210x.hcyberjack.hcypressm8.hdebug.hdigiacceleport.hedgeportedgeport.hti.hempeg.hf8153x.hftdisio.hgarmin.hgeneric.hipaq.hipw.hir.hiuu.hkeyspankeyspan.hpda.hklsi.hkobilsct.hmctu232.hmos7715parport.hmos7720.hmos7840.hmxuport.hnavman.homninet.hopticon.hoption.hoti6858.hpl2303.hqcaux.hqt2.hqualcomm.hsafesafe.hpadded.hsierrawireless.hspcp8x5.hssu100.hsymbol.hti.hupd78f0730.hvisor.hwhiteheat.hwwan.hxircom.hxsensmt.hsevseg.hsierranet.hsisusbvga.hspeedtouch.hstkwebcam.hstoragestorage.halauda.hcypressatacb.hdatafab.heneub6250.hfreecom.hisd200.hjumpshot.hkarma.honetouch.hrealtek.hsddr09.hsddr55.husbat.hstv06xx.hsupport.htmc.huas.hueagleatm.huhcihcd.husbnet.huss720.hvideoclassclass.hinputevdev.hvl600.hwdm.hwusbwusb.hcbaf.hxhcidbgcap.hhcd.hpci.hplatform.hxusbatm.hzr364xx.husb4usb4.hnet.husbpcwatchdog.husepercpunumanodeid.huserns.hreturnnotifier.hstacktracesupport.huserfaultfd.hutsns.huvmmtimer.hsysfs.huvccommon.huwbuwb.hhwa.hi1480u.hwhci.hvdpavdpa.hsimsim.hblock.hnet.hveth.hvfatfs.hvfiovfio.hiommutype1.hmdevmdev.hdevice.hnoiommu.hpcipci.hintx.hmmap.hvirqfd.hvgaarbarb.hmaxgpus.hconsole.hswitcheroo.hvhostvhost.hiotlb.hmenu.hnet.hring.hvdpa.hvsock.hviawdt.hvideoau0828au0828.hv4l2.hbt848.hcs3308.hcs5345.hcs53l32a.hcx18cx18.halsa.hcx231xxcx231xx.halsa.hdvb.hrc.hcx2341x.hcx23885.hcx25840.hcx88cx88.halsa.hblackbird.hdvb.hmpeg.hdev.hem28xxem28xx.halsa.hdvb.hrc.hfbivtv.hhdpvr.hiri2c.hivtv.hm52790.hmsp3400.hnomodeset.hpvrusb2pvrusb2.hdvb.hsysfs.hsaa6588.hsaa6752hs.hsaa711x.hsaa7127.hsaa7134saa7134.halsa.hdvb.hrc.hsaa7146saa7146.hvv.hsaa7164.hsaa717x.htda7432.htm6000tm6000.halsa.hdvb.htuner.htvaudio.htveeprom.hupd64031a.hupd64083.husbvision.hv4l2.hvp27smpx.hwm8739.hwm8775.hvideobufdmasg.hgen.hvmalloc.hvideobuf2core.hdmasg.hdvb.hmemops.hv4l2.hvmalloc.hvirtcpuaccountingaccounting.hgen.hdrivers.htobus.hvirtiovirtio.hballoon.hblk.hconsole.hfs.hinput.hmem.hmenu.hnet.hpcipci.hlegacy.hlib.hvdpa.hvsocketsvsockets.hcommon.hvirtualization.hvitessephy.hvlan8021q8021q.hgvrp.hmvrp.hvmeventcounters.hvmappfn.hstack.hvmd.hvmwareballoon.hpvscsi.hvmcivmci.hvsockets.hvmxnet3.hvpvdpa.hvsocketsvsockets.hdiag.hloopback.hvsockmon.hvtvt.hconsoleconsole.hsleep.hhwconsolebinding.hvxlan.hw83627hfwdt.hw83877fwdt.hw83977fwdt.hwan.hwantdevcoredump.hwatchdogwatchdog.hcore.hhandlebootenabled.hopentimeout.hsysfs.hwdatwdt.hwdtpci.hwireless.hwlanwlan.hvendorath.hbroadcom.hintel.hmarvell.hmediatek.hquantenna.hralink.hrealtek.hwmibmof.hx509certificateparser.hx86x86.h16bit.h5level.h6464.hacpinuma.hsmp.hacpicpufreqcpufreq.hcpb.hamdfreqsensitivity.hplatformdevice.hpstatepstate.hdefaultmode.hbootparammemorycorruptioncheck.hcheckbioscorruption.hcmov.hcmpxchg64.hcpastatistics.hcpuresctrl.hcpuid.hdebugfpu.hdebugctlmsr.hdecoderselftest.hespfix64.hextendedplatform.hfeaturenames.hhvcallbackvector.hintellpss.hmemoryprotectionkeys.hpstate.htsxmodeoff.humip.hinternodecacheshift.hioapic.hl1cacheshift.hlocalapic.hmcemce.hamd.hinject.hintel.hthreshold.hmceloglegacy.hmemencrypt.hminimumcpufamily.hmpparse.hmsr.hneedrelocs.hp4clockmod.hpat.hpkgtempthermal.hplatformdevices.hdriversintel.hpmtimer.hpmemlegacylegacy.hdevice.hpowernowk8.hptdumpptdump.hcore.hrerouteforbrokenbootirqs.hsgxsgx.hkvm.hsmap.hspeedsteplib.hsupportsmemoryfailure.hthermalvector.htsc.huv.hvmxfeaturenames.hvsyscallemulation.hx2apic.hxarraymulti.hxdpsocketssockets.hdiag.hxfrmxfrm.halgo.hespintcp.hinterface.hipcomp.hmigrate.hoffload.hstatistics.hsubpolicy.huser.hxfsfs.hposixacl.hquota.hwarn.hxilinxgmii2rgmii.hxorblocks.hxps.hxzdecdec.harm.harmthumb.hbcj.hia64.hpowerpc.hsparc.hx86.hyentayenta.henetune.ho2.hricoh.hti.htoshiba.hzbud.hzisofs.hzlibdeflate.hinflate.hzonedevice.hdma.hdma32.hzpool.hzramzram.hwriteback.hzsmalloczsmalloc.hstat.hzswap.hcryptoacompress.haead.haes.hakcipher.halgapi.harc4.hauthenc.hb128ops.hblowfish.hcast5.hcast6.hcast_common.hcbc.hchacha20.hcryptd.hcrypto_wq.hctr.hdes.hdh.hdrbg.hecdh.hengine.hgcm.hgf128mul.hghash.hhash.hhash_info.hhmac.hif_alg.hinternalacompress.haead.hakcipher.hgeniv.hhash.hkpp.hrng.hrsa.hscompress.hsimd.hskcipher.hkpp.hmcryptd.hmd5.hmorus1280_glue.hmorus640_glue.hmorus_common.hnull.hpadlock.hpcrypt.hpkcs7.hpoly1305.hpublic_key.hrng.hscatterwalk.hserpent.hsha.hsha1_base.hsha256_base.hsha3.hsha512_base.hskcipher.hsm3.hsm3_base.hsm4.hspeck.htwofish.hxts.hdrmdrm-backportREADME.txtlinuxmmu_notifier.hamd_asic_type.hbridgeanalogix_dp.hdw_hdmi.hdw_mipi_dsi.hmhl.hdisplaydrm_dp.hdrm_dp_aux_bus.hdrm_dp_dual_mode_helper.hdrm_dp_helper.hdrm_dp_mst_helper.hdrm_dsc.hdrm_dsc_helper.hdrm_hdcp.hdrm_hdcp_helper.hdrm_hdmi_helper.hdrm_scdc.hdrm_scdc_helper.hdrm_accel.hdrm_aperture.hdrm_atomic.hdrm_atomic_helper.hdrm_atomic_state_helper.hdrm_atomic_uapi.hdrm_audio_component.hdrm_auth.hdrm_blend.hdrm_bridge.hdrm_bridge_connector.hdrm_buddy.hdrm_cache.hdrm_client.hdrm_color_mgmt.hdrm_connector.hdrm_crtc.hdrm_crtc_helper.hdrm_damage_helper.hdrm_debugfs.hdrm_debugfs_crc.hdrm_device.hdrm_displayid.hdrm_drv.hdrm_edid.hdrm_encoder.hdrm_encoder_slave.hdrm_fb_dma_helper.hdrm_fb_helper.hdrm_fbdev_generic.hdrm_file.hdrm_fixed.hdrm_flip_work.hdrm_format_helper.hdrm_fourcc.hdrm_framebuffer.hdrm_gem.hdrm_gem_atomic_helper.hdrm_gem_dma_helper.hdrm_gem_framebuffer_helper.hdrm_gem_shmem_helper.hdrm_gem_ttm_helper.hdrm_gem_vram_helper.hdrm_ioctl.hdrm_kunit_helpers.hdrm_lease.hdrm_legacy.hdrm_managed.hdrm_mipi_dbi.hdrm_mipi_dsi.hdrm_mm.hdrm_mode_config.hdrm_mode_object.hdrm_modes.hdrm_modeset_helper.hdrm_modeset_helper_vtables.hdrm_modeset_lock.hdrm_module.hdrm_of.hdrm_panel.hdrm_pciids.hdrm_plane.hdrm_plane_helper.hdrm_prime.hdrm_print.hdrm_privacy_screen_consumer.hdrm_privacy_screen_driver.hdrm_privacy_screen_machine.hdrm_probe_helper.hdrm_property.hdrm_rect.hdrm_self_refresh_helper.hdrm_simple_kms_helper.hdrm_syncobj.hdrm_sysfs.hdrm_util.hdrm_utils.hdrm_vblank.hdrm_vblank_work.hdrm_vma_manager.hdrm_writeback.hgma_drm.hgpu_scheduler.hgud.hi2cch7006.hsil164.htda998x.hi915_component.hi915_drm.hi915_mei_hdcp_interface.hi915_pciids.hi915_pxp_tee_interface.hintel-gtt.hintel_lpe_audio.hspsc_queue.htask_barrier.httmttm_bo.httm_caching.httm_device.httm_execbuf_util.httm_kmap_iter.httm_placement.httm_pool.httm_range_manager.httm_resource.httm_tt.hdt-bindingsarmux500_pm_domains.hbusti-sysc.hclkti-dra7-atl.hclockactions,s900-cmu.halphascale,asm9260.ham3.ham4.haspeed-clock.hat91.hath79-clk.haxg-aoclkc.haxg-clkc.haxis,artpec6-clkctrl.hbcm-cygnus.hbcm-ns2.hbcm-nsp.hbcm-sr.hbcm21664.hbcm281xx.hbcm2835-aux.hbcm2835.hberlin2.hberlin2q.hboston-clock.hclps711x-clock.hcortina,gemini-clock.hdm814.hdm816.hdra7.hefm32-cmu.hexynos-audss-clk.hexynos3250.hexynos4.hexynos5250.hexynos5260-clk.hexynos5410.hexynos5420.hexynos5433.hexynos5440.hexynos7-clk.hgxbb-aoclkc.hgxbb-clkc.hhi3516cv300-clock.hhi3519-clock.hhi3620-clock.hhi3660-clock.hhi6220-clock.hhip04-clock.hhistb-clock.hhix5hd2-clock.himx1-clock.himx21-clock.himx27-clock.himx5-clock.himx6qdl-clock.himx6sl-clock.himx6sll-clock.himx6sx-clock.himx6ul-clock.himx7d-clock.hjz4740-cgu.hjz4770-cgu.hjz4780-cgu.hlpc18xx-ccu.hlpc18xx-cgu.hlpc32xx-clock.hlsi,axm5516-clks.hmarvell,mmp2.hmarvell,pxa168.hmarvell,pxa1928.hmarvell,pxa910.hmaxim,max77620.hmaxim,max77686.hmaxim,max77802.hmeson8b-clkc.hmicrochip,pic32-clock.hmpc512x-clock.hmt2701-clk.hmt2712-clk.hmt6797-clk.hmt7622-clk.hmt8135-clk.hmt8173-clk.hnuvoton,npcm7xx-clock.homap4.homap5.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-clk.hpxa-clock.hqcom,gcc-apq8084.hqcom,gcc-ipq4019.hqcom,gcc-ipq806x.hqcom,gcc-ipq8074.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,gcc-msm8994.hqcom,gcc-msm8996.hqcom,gcc-msm8998.hqcom,gcc-sdm845.hqcom,lcc-ipq806x.hqcom,lcc-mdm9615.hqcom,lcc-msm8960.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hqcom,mmcc-msm8996.hqcom,rpmcc.hqcom,rpmh.hqcom,videocc-sdm845.hr7s72100-clock.hr8a73a4-clock.hr8a7740-clock.hr8a7743-cpg-mssr.hr8a7745-cpg-mssr.hr8a77470-cpg-mssr.hr8a7778-clock.hr8a7779-clock.hr8a7790-clock.hr8a7790-cpg-mssr.hr8a7791-clock.hr8a7791-cpg-mssr.hr8a7792-clock.hr8a7792-cpg-mssr.hr8a7793-clock.hr8a7793-cpg-mssr.hr8a7794-clock.hr8a7794-cpg-mssr.hr8a7795-cpg-mssr.hr8a7796-cpg-mssr.hr8a77965-cpg-mssr.hr8a77970-cpg-mssr.hr8a77980-cpg-mssr.hr8a77990-cpg-mssr.hr8a77995-cpg-mssr.hrenesas-cpg-mssr.hrk3036-cru.hrk3066a-cru.hrk3128-cru.hrk3188-cru-common.hrk3188-cru.hrk3228-cru.hrk3288-cru.hrk3328-cru.hrk3368-cru.hrk3399-cru.hrockchip,rk808.hrv1108-cru.hs3c2410.hs3c2412.hs3c2443.hs5pv210-audss.hs5pv210.hsamsung,s2mps11.hsamsung,s3c64xx-clock.hsh73a0-clock.hsprd,sc9860-clk.hste-ab8500.hstih407-clks.hstih410-clks.hstih416-clks.hstih418-clks.hstm32fx-clock.hstm32h7-clks.hstm32mp1-clks.hstratix10-clock.hsun4i-a10-ccu.hsun4i-a10-pll2.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun7i-a20-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra114-car.htegra124-car-common.htegra124-car.htegra186-clock.htegra194-clock.htegra20-car.htegra210-car.htegra30-car.hvf610-clock.hzx296702-clock.hzx296718-clock.hdisplaytda998x.hdmaat91.haxi-dmac.hjz4780-dma.hnbpfaxi.hsun4i-a10.hgpioaspeed-gpio.hgpio.hmeson-axg-gpio.hmeson-gxbb-gpio.hmeson-gxl-gpio.hmeson8-gpio.hmeson8b-gpio.htegra-gpio.htegra186-gpio.htegra194-gpio.huniphier-gpio.hi2ci2c.hiioadcfsl-imx25-gcq.hadi,ad5592r.hqcom,spmi-vadc.hinputgpio-keys.hinput.hlinux-event-codes.hti-drv260x.hinterrupt-controllerarm-gic.hirq-st.hirq.hmips-gic.hmvebu-icu.hledscommon.hleds-netxbig.hleds-ns2.hleds-pca9532.hleds-pca955x.hmailboxtegra186-hsp.hmediac8sectpfe.homap3-isp.htda1997x.htvp5150.hxilinx-vip.hmemorymt2701-larb-port.hmt8173-larb-port.htegra114-mc.htegra124-mc.htegra186-mc.htegra20-mc.htegra210-mc.htegra30-mc.hmfdarizona.has3722.hatmel-flexcom.hdbx500-prcmu.hmax77620.hpalmas.hqcom-rpm.hst-lpc.hstm32f4-rcc.hstm32f7-rcc.hstm32h7-rcc.hmipslantiq_rcu_gphy.hmuxmux.hnetmicrochip-lan78xx.hmscc-phy-vsc8531.hqca-ar803x.hti-dp83867.hti-dp83869.hphyphy-pistachio-usb.hphy-qcom-qusb2.hphy.hpinctrlam33xx.ham43xx.hat91.hbcm2835.hbrcm,pinctrl-stingray.hdm814x.hdra.hhisi.hkeystone.hmt6397-pinfunc.hmt65xx.hmt7623-pinfunc.hnomadik.homap.hpinctrl-tegra-xusb.hpinctrl-tegra.hqcom,pmic-gpio.hqcom,pmic-mpp.hr7s72100-pinctrl.hrockchip.hsamsung.hstm32-pinfunc.hsun4i-a10.hpowerimx7-power.hmt2701-power.hmt2712-power.hmt6797-power.hmt7622-power.hmt7623a-power.hmt8173-power.howl-s500-powergate.howl-s700-powergate.hpx30-power.hr8a7743-sysc.hr8a7745-sysc.hr8a77470-sysc.hr8a7779-sysc.hr8a7790-sysc.hr8a7791-sysc.hr8a7792-sysc.hr8a7793-sysc.hr8a7794-sysc.hr8a7795-sysc.hr8a7796-sysc.hr8a77965-sysc.hr8a77970-sysc.hr8a77980-sysc.hr8a77990-sysc.hr8a77995-sysc.hraspberrypi-power.hrk3036-power.hrk3128-power.hrk3228-power.hrk3288-power.hrk3328-power.hrk3366-power.hrk3368-power.hrk3399-power.htegra186-powergate.htegra194-powergate.hpwmpwm.hregulatormaxim,max77802.hresetaltr,rst-mgr-a10.haltr,rst-mgr-a10sr.haltr,rst-mgr-s10.haltr,rst-mgr.hamlogic,meson-axg-reset.hamlogic,meson-gxbb-reset.hamlogic,meson8b-clkc-reset.hamlogic,meson8b-reset.haxg-aoclkc.hcortina,gemini-reset.hgxbb-aoclkc.hhisi,hi6220-resets.himx7-reset.hmt2701-resets.hmt7622-reset.hmt8135-resets.hmt8173-resets.hoxsemi,ox810se.hoxsemi,ox820.hpistachio-resets.hqcom,gcc-apq8084.hqcom,gcc-ipq806x.hqcom,gcc-mdm9615.hqcom,gcc-msm8660.hqcom,gcc-msm8916.hqcom,gcc-msm8960.hqcom,gcc-msm8974.hqcom,mmcc-apq8084.hqcom,mmcc-msm8960.hqcom,mmcc-msm8974.hsnps,hsdk-reset.hstih407-resets.hstih415-resets.hstih416-resets.hstm32mp1-resets.hsun4i-a10-ccu.hsun50i-a64-ccu.hsun50i-h6-ccu.hsun50i-h6-r-ccu.hsun5i-ccu.hsun6i-a31-ccu.hsun8i-a23-a33-ccu.hsun8i-a83t-ccu.hsun8i-de2.hsun8i-h3-ccu.hsun8i-r-ccu.hsun8i-r40-ccu.hsun8i-v3s-ccu.hsun9i-a80-ccu.hsun9i-a80-de.hsun9i-a80-usb.htegra124-car.htegra186-reset.htegra194-reset.htegra210-car.hti-syscon.hsocqcom,apr.hqcom,gsbi.hrockchip,boot-mode.hzte,pm_domains.hsoundadi,adau1977.hapq8016-lpass.haudio-jack-events.hcs35l32.hcs42l42.hfsl-imx-audmux.hqcom,q6afe.hqcom,q6asm.hrt5640.hrt5651.hsamsung-i2s.htas2552.htlv320aic31xx.hspmispmi.hthermallm90.htegra124-soctherm.htegra186-bpmp-thermal.hthermal.hthermal_exynos.husbpd.hgeneratedasm-offsets.hautoconf.hbounds.hcompile.htimeconst.huapilinuxversion.hutsrelease.hkeysasymmetric-parser.hasymmetric-subtype.hasymmetric-type.hbig_key-type.hceph-type.hdns_resolver-type.hencrypted-type.hkeyring-type.hrxrpc-type.hsystem_keyring.htrusted-type.htrusted_tpm.huser-type.hkunitassert.hresource.htest-bug.htest.htry-catch.hkvmarm_arch_timer.harm_hypercalls.harm_pmu.harm_psci.harm_vgic.hiodev.hlinux8250_pci.ha.out.hacct.hacpi.hacpi_dma.hacpi_iort.hacpi_pmtmr.hadb.hadfs_fs.hadxl.haer.hagp_backend.hagpgart.hahci-remap.hahci_platform.haio.halarmtimer.haltera_jtaguart.haltera_uart.hambabus.hclcd-regs.hclcd.hkmi.hmmci.hpl022.hpl080.hpl08x.hpl093.hserial.hsp810.hamd-iommu.hamd-pstate.hanon_inodes.haperture.hapm-emulation.hapm_bios.happle-gmux.happle_bl.harch_topology.harm-cci.harm-smccc.harm_sdei.hascii85.hasn1.hasn1_ber_bytecode.hasn1_decoder.hassoc_array.hassoc_array_priv.hasync.hasync_tx.hata.hata_platform.hatalk.hath9k_platform.hatm.hatm_suni.hatm_tcp.hatmdev.hatmel-mci.hatmel-ssc.hatmel_pdc.hatmel_tc.hatomic.hattribute_container.haudit.haudit_arch.hauto_dev-ioctl.hauto_fs.hauxiliary_bus.hauxvec.haverage.havfvirtchnl.hb1pcmcia.hbacking-dev-defs.hbacking-dev.hbacklight.hbadblocks.hballoon_compaction.hbcd.hbch.hbcm47xx_nvram.hbcm47xx_sprom.hbcm47xx_wdt.hbcm963xx_nvram.hbcm963xx_tag.hbcmabcma.hbcma_driver_arm_c9.hbcma_driver_chipcommon.hbcma_driver_gmac_cmn.hbcma_driver_mips.hbcma_driver_pci.hbcma_driver_pcie2.hbcma_regs.hbcma_soc.hbinfmts.hbio.hbit_spinlock.hbitfield.hbitmap.hbitops.hbitrev.hbits.hblk-cgroup.hblk-mq-pci.hblk-mq-rdma.hblk-mq-virtio.hblk-mq.hblk-pm.hblk_types.hblkdev.hblkpg.hblktrace_api.hblockgroup_lock.hbma150.hbottom_half.hbpf-cgroup.hbpf-netns.hbpf.hbpf_lirc.hbpf_local_storage.hbpf_lsm.hbpf_trace.hbpf_types.hbpf_verifier.hbpfilter.hbpfptr.hbrcmphy.hbsearch.hbsg-lib.hbsg.hbtf.hbtf_ids.hbtree-128.hbtree-type.hbtree.hbtrfs.hbuffer_head.hbug.hbuild_bug.hbuildid.hbvec.hbyteorderbig_endian.hgeneric.hlittle_endian.hc2port.hcache.hcacheinfo.hcancore.hdevdev.hpeak_canfd.hled.hplatformcc770.hmcp251x.hrcar_can.hsja1000.hrx-offload.hskb.hcapability.hcb710.hcc_platform.hcciss_ioctl.hccp.hcdev.hcdrom.hcephauth.hbuffer.hceph_debug.hceph_features.hceph_frag.hceph_fs.hceph_hash.hcls_lock_client.hdebugfs.hdecode.hlibceph.hmdsmap.hmessenger.hmon_client.hmsgpool.hmsgr.hosd_client.hosdmap.hpagelist.hrados.hstring_table.hstriper.htypes.hcfag12864b.hcgroup-defs.hcgroup.hcgroup_rdma.hcgroup_subsys.hcirc_buf.hcleancache.hclkclk-provider.hclk.hat91_pmc.hclk-conf.hdavinci.hmmp.hmxs.hrenesas.hsunxi-ng.htegra.hti.hzynq.hclkdev.hclock_cooling.hclockchips.hclocksource.hcm4000_cs.hcma.hcmdline-parser.hcn_proc.hcnt32_to_63.hcoda.hcoda_psdev.hcompaction.hcompat.hcompat_time.hcompiler-clang.hcompiler-gcc.hcompiler-intel.hcompiler.hcompiler_attributes.hcompiler_types.hcompletion.hcomponent.hconcap.hconfigfs.hconnector.hconsole.hconsole_struct.hconsolemap.hconst.hcontainer.hcontainer_of.hcontext_tracking.hcontext_tracking_state.hcookie.hcordic.hcoredump.hcoresight-pmu.hcoresight-stm.hcoresight.hcount_zeros.hcounter.hcounter_enum.hcper.hcpu.hcpu_cooling.hcpu_pm.hcpu_rmap.hcpufeature.hcpufreq.hcpuhotplug.hcpuidle.hcpuidle_haltpoll.hcpumask.hcpuset.hcrash_core.hcrash_dump.hcrc-ccitt.hcrc-itu-t.hcrc-t10dif.hcrc16.hcrc32.hcrc32c.hcrc32poly.hcrc4.hcrc7.hcrc8.hcred.hcrushcrush.hhash.hmapper.hcrypto.hcryptohash.hcs5535.hctype.hcuda.hcxl_err.hcyclades.hdamon.hdavinci_emac.hdax.hdca.hdcache.hdccp.hdcookies.hdebug_locks.hdebugfs.hdebugobjects.hdecompressbunzip2.hgeneric.hinflate.hmm.hunlz4.hunlzma.hunlzo.hunxz.hdelay.hdelayacct.hdelayed_call.hdell-led.hdev_printk.hdevcoredump.hdevfreq-event.hdevfreq.hdevfreq_cooling.hdevice-mapper.hdevice.hdevice_cgroup.hdevm-helpers.hdevpts_fs.hdigsig.hdim.hdio.hdirent.hdlm.hdlm_plock.hdm-bufio.hdm-dirty-log.hdm-io.hdm-kcopyd.hdm-region-hash.hdm9000.hdmadma-buf.hdma-contiguous.hdma-direct.hdma-direction.hdma-fence-array.hdma-fence-chain.hdma-fence-unwrap.hdma-fence.hdma-iommu.hdma-map-ops.hdma-mapping.hdma-resv.hdw.hhsu.hidma64.hipu-dma.hmmp-pdma.hpxa-dma.hqcom_bam_dma.hsprd-dma.hxilinx_dma.hdmaengine.hdmapool.hdmar.hdmi.hdnotify.hdns_resolver.hdqblk_qtree.hdqblk_v1.hdqblk_v2.hdrbd.hdrbd_genl.hdrbd_genl_api.hdrbd_limits.hds2782_battery.hdsalan9303.hdtlk.hdw_apb_timer.hdynamic_debug.hdynamic_queue_limits.hearlycpio.hecryptfs.hedac.hedd.hedma.heeprom_93cx6.heeprom_93xx46.hefi-bgrt.hefi.hefs_vh.heisa.helevator.helf-fdpic.helf-randomize.helf.helfcore-compat.helfcore.helfnote.henclosure.henergy_model.herr.herrname.herrno.herror-injection.herrqueue.herrseq.hetherdevice.hethtool.hethtool_netlink.heventfd.heventpoll.hevm.hexport.hexportfs.hext2_fs.hextable.hextconextcon-provider.hextcon.hextcon-adc-jack.hf2fs_fs.hf75375s.hfalloc.hfanotify.hfault-inject.hfb.hfbcon.hfcdevice.hfcntl.hfd.hfddidevice.hfdtable.hfec.hfile.hfilter.hfips.hfirewire.hfirmwarefirmware-map.hfirmware.hcirruscs_dsp.hwmfw.hintelstratix10-smc.hstratix10-svc-client.hmesonmeson_sm.hfixp-arith.hflat.hflex_array.hflex_proportions.hfmc-sdb.hfmc.hfont.hfortify-string.hfpgaadi-axi-common.haltera-pr-ip-core.hfpga-bridge.hfpga-mgr.hfpga-region.hfreezer.hfrontswap.hfs.hfs_context.hfs_enet_pd.hfs_parser.hfs_pin.hfs_stack.hfs_struct.hfs_uart_pd.hfscache-cache.hfscache.hfscrypt.hfscrypt_notsupp.hfscrypt_supp.hfsi.hfslfsl-diu-fb.hbestcommata.hbestcomm.hbestcomm_priv.hfec.hgen_bd.hsram.hedac.hguts.hmc.hptp_qoriq.hfsl_devices.hfsl_hypervisor.hfsl_ifc.hfsldma.hfsnotify.hfsnotify_backend.hftrace.hftrace_irq.hfutex.hfwnode.hgameport.hgcd.hgenalloc.hgeneric-radix-tree.hgenetlink.hgenhd.hgenl_magic_func.hgenl_magic_struct.hgetcpu.hgfp.hglob.hgoldfish.hgpiogpio-pxa.hgpio.hconsumer.hdriver.hgpio-reg.hmachine.hgpio_keys.hhardirq.hhash.hhashtable.hhdlc.hhdlcdrv.hhdmi.hhid-debug.hhid-roccat.hhid-sensor-hub.hhid-sensor-ids.hhid.hhidden.hhiddev.hhidraw.hhighmem-internal.hhighmem.hhighuid.hhil.hhil_mlc.hhippidevice.hhmm.hhost1x.hhp_sdc.hhpet.hhrtimer.hhrtimer_defs.hhsihsi.hssi_protocol.hhtcpld.hhuge_mm.hhugetlb.hhugetlb_cgroup.hhugetlb_inline.hhw_breakpoint.hhw_random.hhwmon-sysfs.hhwmon-vid.hhwmon.hhwspinlock.hhyperv.hhypervisor.hi2c-algo-bit.hi2c-algo-pca.hi2c-algo-pcf.hi2c-dev.hi2c-mux.hi2c-pxa.hi2c-smbus.hi2c.hi8042.hi8253.hicmp.hicmpv6.hide.hidr.hieee80211.hieee802154.hif_arp.hif_bridge.hif_eql.hif_ether.hif_fddi.hif_frad.hif_link.hif_ltalk.hif_macvlan.hif_phonet.hif_pppol2tp.hif_pppox.hif_tap.hif_team.hif_tun.hif_tunnel.hif_vlan.higmp.hihex.hiioaccelkxcjk_1013.hadcad_sigma_delta.hstm32-dfsdm-adc.hbuffer-dma.hbuffer-dmaengine.hbuffer.hbuffer_impl.hcommoncros_ec_sensors_core.hssp_sensors.hst_sensors.hst_sensors_i2c.hst_sensors_spi.hconfigfs.hconsumer.hdacad5421.had5504.had5791.hmax517.hmcp4725.hdriver.hevents.hfrequencyad9523.hadf4350.hgyroitg3200.hhw-consumer.hiio.himuadis.hkfifo_buf.hmachine.hmagnetometerak8975.hsw_device.hsw_trigger.hsysfs.htimerstm32-lptim-trigger.hstm32-timer-trigger.htrigger.htrigger_consumer.htriggered_buffer.htriggered_event.htypes.hima.himx-media.hin.hin6.hindirect_call_wrapper.hinet.hinet_diag.hinetdevice.hinit.hinit_ohci1394_dma.hinit_task.hinitrd.hinotify.hinputinput-polldev.hinput.had714x.hadp5589.hadxl34x.has5011.hauo-pixcir-ts.hbu21013.hcma3000.hcy8ctmg110_pdata.hcyttsp.helan-i2c-ids.hgp2ap002a00f.hili210x.hkxtj9.hlm8333.hmatrix_keypad.hmt.hnavpoint.hsamsung-keypad.hsh_keysc.hsparse-keymap.htouchscreen.htps6507x-ts.hinstrumented.hintegrity.hintel-iommu.hintel-ish-client-if.hintel-pti.hintel_rapl.hintel_th.hinterrupt.hinterval_tree.hinterval_tree_generic.hio-64-nonatomic-hi-lo.hio-64-nonatomic-lo-hi.hio-mapping.hio-pgtable.hio.hioasid.hioc3.hioc4.hiocontext.hiomap.hiommu-helper.hiommu.hiopoll.hioport.hioprio.hiosys-map.hiova.hip.hipack.hipc.hipc_namespace.hipmi-fru.hipmi.hipmi_smi.hipv6.hipv6_route.hirq.hirq_poll.hirq_sim.hirq_work.hirqbypass.hirqchipirqchip.harm-gic-common.harm-gic-v3.harm-gic-v4.harm-gic.harm-vgic-info.harm-vic.hchained_irq.hingenic.hirq-bcm2836.hirq-omap-intc.hirq-partition-percpu.hirq-sa11x0.hmmp.hmxs.hversatile-fpga.hxtensa-mx.hxtensa-pic.hirqdesc.hirqdomain.hirqflags.hirqhandler.hirqnr.hirqreturn.hisa.hisapnp.hiscsi_boot_sysfs.hiscsi_ibft.hisdnisdn.hcapilli.hcapiutil.hhdlc.hisdn_divertif.hisdn_ppp.hisdnif.hisicom.hism.hiversion.hjbd2.hjhash.hjiffies.hjournal-head.hjoystick.hjump_label.hjump_label_ratelimit.hjz4740-adc.hjz4780-nemc.hkallsyms.hkasan-checks.hkasan.hkbd_diacr.hkbd_kern.hkbuild.hkconfig.hkcore.hkcov.hkcsan-checks.hkcsan.hkdb.hkdebug.hkdev_t.hkern_levels.hkernel-page-flags.hkernel.hkernel_stat.hkernelcapi.hkernfs.hkexec.hkey-type.hkey.hkeyboard.hkfifo.hkgdb.hkhugepaged.hklist.hkmemleak.hkmod.hkmsg_dump.hkobj_map.hkobject.hkobject_ns.hkprobes.hkref.hks0108.hks8842.hks8851_mll.hksm.hkstrtox.hkthread.hktime.hkvm_dirty_ring.hkvm_host.hkvm_irqfd.hkvm_para.hkvm_types.hl2tp.hlapb.hlatencytop.hlcd.hlcm.hled-class-flash.hled-lm3530.hleds-bd2802.hleds-lp3944.hleds-lp3952.hleds-pca9532.hleds-regulator.hleds-tca6507.hleds.hleds_pwm.hlibata.hlibfdt.hlibfdt_env.hlibgcc.hlibnvdimm.hlibps2.hlicense.hlightnvm.hlimits.hlinear_range.hlinkage.hlinkmode.hlinux_logo.hlis3lv02d.hlist.hlist_bl.hlist_lru.hlist_nulls.hlist_sort.hlivepatch.hllc.hllist.hlocal_lock.hlocal_lock_internal.hlockdbind.hdebug.hlockd.hnlm.hshare.hxdr.hxdr4.hlockdep.hlockdep_types.hlockref.hlog2.hlogic_pio.hlp.hlru_cache.hlsm_audit.hlsm_hook_defs.hlsm_hooks.hlz4.hlzo.hmISDNdsp.hmISDNhw.hmISDNif.hmailboxbrcm-message.hmailbox_client.hmailbox_controller.hmaple.hmarvell_phy.hmath.hmath64.hmax17040_battery.hmbcache.hmbus.hmc146818rtc.hmc6821.hmcb.hmdev.hmdio-bitbang.hmdio-gpio.hmdio-mux.hmdio.hmei_aux.hmei_cl_bus.hmem_encrypt.hmemblock.hmemcontrol.hmemfd.hmemory.hmemory_hotplug.hmempolicy.hmempool.hmemregion.hmemremap.hmemstick.hmfd88pm80x.h88pm860x.haat2870.hab3100.habx500abx500.hab8500-bm.hab8500-codec.hab8500-gpadc.hab8500-sysctrl.hab8500.hux500_chargalg.hac100.hadp5520.haltera-a10sr.harizonacore.hpdata.hregisters.has3711.has3722.hasic3.hatmel-hlcdc.haxp20x.hbcm590xx.hbd9571mwv.hcore.hcros_ec.hcros_ec_commands.hcros_ec_lpc_mec.hcros_ec_lpc_reg.hda8xx-cfgchip.hda903x.hda9052da9052.hpdata.hreg.hda9055core.hpdata.hreg.hda9062core.hregisters.hda9063core.hpdata.hregisters.hda9150core.hregisters.hdavinci_voicecodec.hdb8500-prcmu.hdbx500-prcmu.hdln2.hdm355evm_msp.hds1wm.hezx-pcap.hhi6421-pmic.hhi655x-pmic.hhtc-pasic3.himx25-tsadc.hintel_msic.hintel_soc_pmic.hintel_soc_pmic_bxtwc.hipaq-micro.hjanz.hkempld.hlm3533.hlochnagar.hlochnagar1_regs.hlochnagar2_regs.hlp3943.hlp873x.hlp87565.hlp8788-isink.hlp8788.hlpc_ich.hmax14577-private.hmax14577.hmax77620.hmax77686-private.hmax77686.hmax77693-common.hmax77693-private.hmax77693.hmax77843-private.hmax8907.hmax8925.hmax8997-private.hmax8997.hmax8998-private.hmax8998.hmc13783.hmc13892.hmc13xxx.hmcp.hmenelaus.hmotorola-cpcap.hmt6323core.hregisters.hmt6397core.hregisters.hmxs-lradc.hpalmas.hpcf50633adc.hbacklight.hcore.hgpio.hmbc.hpmic.hqcom_rpm.hrave-sp.hrc5t583.hrdc321x.hretu.hrk808.hrn5t618.hrt5033-private.hrt5033.hsamsungcore.hirq.hrtc.hs2mpa01.hs2mps11.hs2mps13.hs2mps14.hs2mps15.hs2mpu02.hs5m8763.hs5m8767.hsi476x-core.hsi476x-platform.hsi476x-reports.hsky81452.hsmsc.hsta2x11-mfd.hstm32-lptimer.hstm32-timers.hstmpe.hstw481x.hsun4i-gpadc.hsysconsyscon.hatmel-matrix.hatmel-mc.hatmel-smc.hatmel-st.hclps711x.himx6q-iomuxc-gpr.himx7-iomuxc-gpr.ht7l66xb.htc3589x.htc6387xb.htc6393xb.hti-lmu-register.hti-lmu.hti_am335x_tscadc.htmio.htps6105x.htps65010.htps6507x.htps65086.htps65090.htps65217.htps65218.htps6586x.htps65910.htps65912.htps68470.htps80031.htwl.htwl4030-audio.htwl6040.hucb1x00.hviperboard.hwl1273-core.hwm831xauxadc.hcore.hgpio.hirq.hotp.hpdata.hpmu.hregulator.hstatus.hwatchdog.hwm8350audio.hcomparator.hcore.hgpio.hpmic.hrtc.hsupply.hwdt.hwm8400-audio.hwm8400-private.hwm8400.hwm8994core.hgpio.hpdata.hregisters.hwm97xx.hmhi.hmhi_ep.hmic_bus.hmicrel_phy.hmicrochipphy.hmigrate.hmigrate_mode.hmii.hmii_timestamper.hmin_heap.hminmax.hmisc_cgroup.hmiscdevice.hmlx4cmd.hcq.hdevice.hdoorbell.hdriver.hqp.hsrq.hmlx5cq.hdevice.hdoorbell.hdriver.heq.heswitch.hfs.hfs_helpers.hmlx5_ifc.hmlx5_ifc_fpga.hmlx5_ifc_vdpa.hmpfs.hport.hqp.hrsc_dump.htransobj.hvport.hmm-arch-hooks.hmm.hmm_inline.hmm_types.hmm_types_task.hmman.hmmap_lock.hmmccard.hcore.hhost.hmmc.hpm.hsd.hsdhci-pci-data.hsdio.hsdio_func.hsdio_ids.hsh_mmcif.hslot-gpio.hmmdebug.hmmiotrace.hmmu_context.hmmu_notifier.hmmzone.hmnt_namespace.hmod_devicetable.hmodule.hmodule_signature.hmoduleloader.hmoduleparam.hmount.hmpage.hmpi.hmpls.hmpls_iptunnel.hmroute.hmroute6.hmroute_base.hmsdos_fs.hmsdos_partition.hmsg.hmsi.hmtdbbm.hblktrans.hcfi.hcfi_endian.hconcat.hdoc2000.hflashchip.hftl.hgen_probe.hinftl.hlatch-addr-flash.hlpc32xx_mlc.hlpc32xx_slc.hmap.hmtd.hmtdram.hnand-gpio.hnand.hnand_bch.hnand_ecc.hndfc.hnftl.honenand.honenand_regs.hpartitions.hpfow.hphysmap.hpismo.hplat-ram.hqinfo.hrawnand.hsh_flctl.hsharpsl.hspear_smi.hspi-nor.hsuper.hubi.hxip.hmutex.hmuxconsumer.hdriver.hmv643xx.hmv643xx_eth.hmv643xx_i2c.hmvebu-pmsu.hmxm-wmi.hn_r3964.hnamei.hnd.hnetnet.hinteli40e_client.hiidc.hnetdev_features.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_comment.hip_set_counter.hip_set_getport.hip_set_hash.hip_set_list.hip_set_skbinfo.hip_set_timeout.hpfxlen.hnf_conntrack_amanda.hnf_conntrack_common.hnf_conntrack_dccp.hnf_conntrack_ftp.hnf_conntrack_h323.hnf_conntrack_h323_asn1.hnf_conntrack_h323_types.hnf_conntrack_irc.hnf_conntrack_pptp.hnf_conntrack_proto_gre.hnf_conntrack_sane.hnf_conntrack_sctp.hnf_conntrack_sip.hnf_conntrack_snmp.hnf_conntrack_tcp.hnf_conntrack_tftp.hnf_conntrack_zones_common.hnf_osf.hnfnetlink.hnfnetlink_acct.hx_tables.hxt_hashlimit.hxt_physdev.hnetfilter_arparp_tables.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebtables.hnetfilter_defs.hnetfilter_ingress.hnetfilter_ipv4netfilter_ipv4.hip_tables.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hnetlink.hnetpoll.hnfs.hnfs3.hnfs4.hnfs_fs.hnfs_fs_i.hnfs_fs_sb.hnfs_iostat.hnfs_page.hnfs_xdr.hnfsacl.hnitro_enclaves.hnl802154.hnls.hnmi.hnode.hnodemask.hnospec.hnotifier.hns_common.hnsc_gpio.hnsproxy.hntb.hntb_transport.hnubus.hnuma.hnvme-fc-driver.hnvme-fc.hnvme-rdma.hnvme-tcp.hnvme.hnvmem-consumer.hnvmem-provider.hnvram.hobjagg.hobjtool.hof.hof_address.hof_clk.hof_device.hof_dma.hof_fdt.hof_gpio.hof_graph.hof_iommu.hof_irq.hof_mdio.hof_net.hof_pci.hof_pdt.hof_platform.hof_reserved_mem.hoid_registry.holpc-ec.homap-dma.homap-dmaengine.homap-gpmc.homap-iommu.homap-mailbox.homapfb.honce.hoom.hopenvswitch.hoprofile.hosq_lock.hoverflow.hpadata.hpage-flags-layout.hpage-flags.hpage-isolation.hpage_counter.hpage_ext.hpage_idle.hpage_owner.hpage_ref.hpage_reporting.hpageblock-flags.hpagemap.hpagevec.hpagewalk.hparman.hparport.hparport_pc.hparser.hpata_arasan_cf_data.hpatchkey.hpath.hpch_dma.hpci-acpi.hpci-ats.hpci-dma-compat.hpci-ecam.hpci-ep-cfs.hpci-epc.hpci-epf.hpci-p2pdma.hpci.hpci_hotplug.hpci_ids.hpcspcs-xpcs.hpda_power.hpe.hpercpu-defs.hpercpu-refcount.hpercpu-rwsem.hpercpu.hpercpu_counter.hperfarm_pmu.hperf_event.hperf_regs.hpersonality.hpfn.hpfn_t.hphonet.hphyphy.homap_control_phy.homap_usb.hphy-qcom-ufs.hphy-sun4i-usb.hphy.htegraxusb.hulpi_phy.hphy_fixed.hphy_led_triggers.hphylink.hpid.hpid_namespace.hpim.hpinctrlconsumer.hdevinfo.hmachine.hpinconf-generic.hpinconf.hpinctrl-state.hpinctrl.hpinmux.hpipe_fs_i.hpkeys.hpktcdvd.hpl320-ipc.hplatform_dataad5449.had5755.had5761.had7266.had7291.had7298.had7303.had7791.had7793.had7879.had7887.hadau17x1.hadp5588.hadp8860.hadp8870.hads1015.hads7828.hapds990x.harm-ux500-pm.hasoc-imx-ssi.hasoc-kirkwood.hasoc-mx27vis.hasoc-palm27x.hasoc-s3c.hasoc-s3c24xx_simtec.hasoc-ti-mcbsp.hasoc-ux500-msp.hat24.hat91_adc.hata-pxa.hata-samsung_cf.hatmel.hb53.hbcmgenet.hbd6107.hbh1770glc.hbrcmfmac.hbrcmnand.hbt-nokia-h4p.hclk-da8xx-cfgchip.hclk-davinci-pll.hclk-fch.hclk-integrator.hclk-u300.hcpuidle-exynos.hcrypto-atmel.hcrypto-ux500.hcyttsp4.hdavinci_asp.hdb8500_thermal.hdma-atmel.hdma-coh901318.hdma-dw.hdma-ep93xx.hdma-hsu.hdma-imx-sdma.hdma-imx.hdma-mmp_tdma.hdma-mv_xor.hdma-s3c24xx.hdma-ste-dma40.hdmtimer-omap.hds620.hdwc3-omap.hedma.hefm32-spi.hefm32-uart.hehci-sh.helm.hemif_plat.heth-netx.hfsa9480.hg762.hgpio-ath79.hgpio-davinci.hgpio-dwapb.hgpio-htc-egpio.hgpio-omap.hgpio-ts5500.hgpio_backlight.hgpmc-omap.hhsmmc-omap.hhwmon-s3c.hi2c-cbus-gpio.hi2c-davinci.hi2c-gpio.hi2c-imx.hi2c-mux-gpio.hi2c-mux-reg.hi2c-ocores.hi2c-omap.hi2c-pca-platform.hi2c-pxa.hi2c-s3c2410.hi2c-xiic.hina2xx.hintel-mid_wdt.hintel-spi.hinvensense_mpu6050.hiommu-omap.hirda-pxaficp.hirda-sa11x0.hisl9305.hitco_wdt.hkeyboard-pxa930_rotary.hkeyboard-spear.hkeypad-ep93xx.hkeypad-nomadik-ske.hkeypad-omap.hkeypad-pxa27x.hkeypad-w90p910.hkeyscan-davinci.hlcd-mipid.hleds-kirkwood-netxbig.hleds-kirkwood-ns2.hleds-lm355x.hleds-lm3642.hleds-lp55xx.hleds-omap.hleds-pca963x.hleds-s3c24xx.hlm3630a_bl.hlm3639_bl.hlm8323.hlp855x.hlp8727.hlp8755.hltc4245.hlv5207lp.hmacb.hmax197.hmax3421-hcd.hmax6639.hmax6697.hmax732x.hmcs.hmdio-bcm-unimac.hmdio-gpio.hmediacamera-mx2.hcamera-mx3.hcamera-pxa.hcoda.hmmp-camera.homap1_camera.homap4iss.hs5p_hdmi.hsi4713.hsii9234.hsoc_camera_platform.htimb_radio.htimb_video.hmfd-mcp-sa11x0.hmicrochip-ksz.hmlxcpld.hmlxreg.hmmc-davinci.hmmc-esdhc-imx.hmmc-mxcmmc.hmmc-omap.hmmc-pxamci.hmmc-s3cmci.hmmc-sdhci-s3c.hmmp_audio.hmmp_dma.hmouse-pxa930_trkball.hmtd-davinci-aemif.hmtd-davinci.hmtd-mxc_nand.hmtd-nand-omap2.hmtd-nand-pxa3xx.hmtd-nand-s3c2410.hmtd-orion_nand.hmv88e6xxx.hmv_usb.hnet-cw1200.hnfcmrvl.hntc_thermistor.hnxp-nci.homap-twl4030.homap-wd-timer.homap1_bl.homapdss.hpca953x.hpca954x.hpcf857x.hpcmcia-pxa2xx_viper.hphy-da8xx-usb.hpinctrl-single.hpixcir_i2c_ts.hpm33xx.hpwm_omap_dmtimer.hpxa2xx_udc.hpxa_sdhci.hregulator-haptic.hremoteproc-omap.hrtc-ds2404.hrtc-v3020.hs3c-hsotg.hs3c-hsudc.hsa11x0-serial.hsc18is602.hsdhci-pic32.hserial-imx.hserial-omap.hserial-sccnxp.hshmob_drm.hsht3x.hshtc1.hsi5351.hsimplefb.hsky81452-backlight.hspi-clps711x.hspi-davinci.hspi-ep93xx.hspi-imx.hspi-mt65xx.hspi-nuc900.hspi-omap2-mcspi.hspi-s3c64xx.hssm2518.hst33zp24.hst_sensors_pdata.hsyscon.htc35876x.htda9950.hti-aemif.hti-sysc.htouchscreen-s3c2410.htsc2007.htsl2563.htsl2772.huio_dmem_genirq.huio_pruss.husb-davinci.husb-ehci-mxc.husb-ehci-orion.husb-musb-ux500.husb-mx2.husb-ohci-pxa27x.husb-ohci-s3c2410.husb-omap.husb-omap1.husb-pxa3xx-ulpi.husb-s3c2410_udc.husb3503.hux500_wdt.hvideo-clcd-versatile.hvideo-ep93xx.hvideo-imxfb.hvideo-mx3fb.hvideo-nuc900fb.hvideo-pxafb.hvideo_s3c.hvoltage-omap.hwiznet.hwkup_m3.hx86apple.hclk-lpss.hclk-pmc-atom.hpmc_atom.hsoc.hzforce_ts.hplatform_device.hplatform_profile.hpldmfw.hplist.hpm-trace.hpm.hpm2301_charger.hpm_clock.hpm_domain.hpm_opp.hpm_qos.hpm_runtime.hpm_wakeirq.hpm_wakeup.hpmbus.hpmu.hpnfs_osd_xdr.hpnp.hpoison.hpoll.hposix-clock.hposix-timers.hposix_acl.hposix_acl_xattr.hpowerab8500.hbq2415x_charger.hbq24190_charger.hbq24735-charger.hbq27xxx_battery.hcharger-manager.hgeneric-adc-battery.hgpio-charger.hisp1704_charger.hjz4740-battery.hmax17042_battery.hmax8903_charger.hsbs-battery.hsmartreflex.hsmb347-charger.htwl4030_madc_battery.hpower_supply.hpowercap.hppp-comp.hppp_channel.hppp_defs.hpps-gpio.hpps_kernel.hpr.hprandom.hpreempt.hprefetch.hprime_numbers.hprintk.hprmt.hproc_fs.hproc_ns.hprocessor.hprofile.hprojid.hproperty.hpsci.hpseudo_fs.hpsi.hpsi_types.hpsp-platform-access.hpsp-sev.hpsp-tee.hpsp.hpstore.hpstore_ram.hpti.hptp_classify.hptp_clock_kernel.hptr_ring.hptrace.hpurgatory.hpvclock_gtod.hpwm.hpwm_backlight.hpxa168_eth.hpxa2xx_ssp.hqcom-geni-se.hqcom_scm.hqedcommon_hsi.heth_common.hfcoe_common.hiscsi_common.hiwarp_common.hnvmetcp_common.hqed_chain.hqed_eth_if.hqed_fcoe_if.hqed_if.hqed_iov_if.hqed_iscsi_if.hqed_ll2_if.hqed_nvmetcp_if.hqed_rdma_if.hqede_rdma.hrdma_common.hroce_common.hstorage_common.htcp_common.hqnx6_fs.hquicklist.hquota.hquotaops.hradix-tree.hraiddetect.hmd_u.hpq.hxor.hraid_class.hramfs.hrandom.hrange.hras.hratelimit.hratelimit_types.hrational.hrbtree.hrbtree_augmented.hrbtree_latch.hrbtree_types.hrcu_node_tree.hrcu_segcblist.hrcu_sync.hrculist.hrculist_bl.hrculist_nulls.hrcupdate.hrcupdate_trace.hrcupdate_wait.hrcutiny.hrcutree.hrcuwait.hreboot-mode.hreboot.hreciprocal_div.hrefcount.hregmap.hregset.hregulatorab8500.hact8865.harizona-ldo1.harizona-micsupp.hconsumer.hda9211.hdb8500-prcmu.hdriver.hfan53555.hfixed.hgpio-regulator.hlp3971.hlp3972.hlp872x.hmachine.hmax1586.hmax8649.hmax8660.hmax8952.hmax8973-regulator.hmt6311.hmt6323-regulator.hmt6380-regulator.hmt6397-regulator.hof_regulator.hpfuze100.htps51632-regulator.htps62360.htps6507x.huserspace-consumer.hrelay.hremoteprocremoteproc.hqcom_rproc.hst_slim_rproc.hresctrl.hreservation.hresetreset-controller.hreset.hbcm63xx_pmb.hresource.hresource_ext.hrestart_block.hrfkill.hrh_flags.hrh_kabi.hrh_kabi_attributes.hrh_kabi_aux.hrh_kabi_memcg.hrh_tasklist_lock.hrhashtable-types.hrhashtable.hring_buffer.hrio.hrio_drv.hrio_ids.hrio_regs.hrmap.hrmi.hrndis.hrodata_test.hroot_dev.hrpmsgrpmsg.hqcom_glink.hqcom_smd.hrslib.hrtcrtc.hds1286.hds1307.hds1685.hm48t59.hsirfsoc_rtciobrg.hrtmutex.hrtnetlink.hrtsx_common.hrtsx_pci.hrtsx_usb.hrwbase_rt.hrwlock.hrwlock_api_smp.hrwlock_rt.hrwlock_types.hrwsem.hs3c_adc_battery.hsa11x0-dma.hsbitmap.hscatterlist.hscc.hschedsched.hautogroup.hclock.hcoredump.hcpufreq.hcputime.hdeadline.hdebug.hhotplug.hidle.hinit.hisolation.hjobctl.hloadavg.hmm.hnohz.hnuma_balancing.hprio.hrt.hsignal.hsmt.hstat.hsysctl.htask.htask_stack.htopology.htypes.huser.hwake_q.hxacct.hsched_clock.hscif.hscmi_protocol.hscpi_protocol.hscreen_info.hscs.hsctp.hscx200.hscx200_gpio.hsdb.hsdla.hseccomp.hsecurebits.hsecurity.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselection.hsem.hsemaphore.hseq_buf.hseq_file.hseq_file_net.hseqlock.hseqno-fence.hserdev.hserial.hserial_8250.hserial_bcm63xx.hserial_core.hserial_max3100.hserial_pnx8xxx.hserial_s3c.hserial_sci.hserio.hset_memory.hsfi.hsfi_acpi.hsfp.hsh_clk.hsh_dma.hsh_eth.hsh_intc.hsh_timer.hshdma-base.hshm.hshmem_fs.hshrinker.hsignal.hsignal_types.hsignalfd.hsiox.hsiphash.hsirfsoc_dma.hsizes.hskb_array.hskbuff.hskmsg.hslab.hslab_def.hslimbus.hslub_def.hsm501-regs.hsm501.hsmc911x.hsmc91x.hsmp.hsmp_types.hsmpboot.hsmsc911x.hsmscphy.hsocactionsowl-sps.hbrcmstbbrcmstb.hdovepmu.hmediatekinfracfg.hmtk_wed.hqcomapr.hmdt_loader.hqmi.hsmd-rpm.hsmem.hsmem_state.hwcnss_ctrl.hrenesasrcar-rst.hrcar-sysc.hsamsungexynos-pmu.hexynos-regs-pmu.hsunxisunxi_sram.htiknav_dma.hknav_qmss.hti-msgmgr.hti_sci_protocol.hsock_diag.hsocket.hsockptr.hsonet.hsony-laptop.hsonypi.hsort.hsound.hsoundcard.hsoundwiresdw.hsdw_amd.hsdw_intel.hsdw_registers.hsdw_type.hspiad7877.hadi_spi3.hads7846.hat73c213.hat86rf230.hcc2520.hcorgi_lcd.hds1305.heeprom.hflash.hifx_modem.hl4f00242t03.hlibertas_spi.hlms283gf05.hmax7301.hmc33880.hmcp23s08.hmmc_spi.hmxs-spi.hpxa2xx_spi.hrspi.hs3c24xx.hsh_hspi.hsh_msiof.hspi-fsl-dspi.hspi-mem.hspi.hspi_bitbang.hspi_gpio.hspi_oc_tiny.htdo24m.htle62x0.hxilinx_spi.hspinlock.hspinlock_api_smp.hspinlock_api_up.hspinlock_rt.hspinlock_types.hspinlock_types_raw.hspinlock_types_up.hspinlock_up.hsplice.hspmi.hsram.hsrcu.hsrcutiny.hsrcutree.hssbssb.hssb_driver_chipcommon.hssb_driver_extif.hssb_driver_gige.hssb_driver_mips.hssb_driver_pci.hssb_embedded.hssb_regs.hssbi.hstackdepot.hstackprotector.hstacktrace.hstart_kernel.hstat.hstatfs.hstatic_call.hstatic_call_types.hstatic_key.hstddef.hstm.hstmmac.hstmp3xxx_rtc_wdt.hstmp_device.hstop_machine.hstring.hstring_helpers.hstringhash.hstringify.hsudmac.hsungem_phy.hsunrpcaddr.hauth.hauth_gss.hbc_xprt.hcache.hclnt.hdebug.hgss_api.hgss_asn1.hgss_err.hgss_krb5.hgss_krb5_enctypes.hmetrics.hmsg_prot.hrpc_pipe_fs.hrpc_rdma.hrpc_rdma_cid.hsched.hstats.hsvc.hsvc_rdma.hsvc_rdma_pcl.hsvc_xprt.hsvcauth.hsvcauth_gss.hsvcsock.htimer.htypes.hxdr.hxprt.hxprtmultipath.hxprtrdma.hxprtsock.hsunserialcore.hsunxi-rsb.hsuperhyway.hsuspend.hsvga.hsw842.hswab.hswait.hswap.hswap_cgroup.hswap_slots.hswapfile.hswapops.hswiotlb.hswitchtec.hsxgbe_platform.hsync_core.hsync_file.hsynclink.hsys.hsys_soc.hsyscalls.hsyscore_ops.hsysctl.hsysfs.hsyslog.hsysrq.hsysv_fs.ht10-pi.htask_io_accounting.htask_io_accounting_ops.htask_work.htaskstats_kern.htboot.htc.htca6416_keypad.htcp.htee_drv.htextsearch.htextsearch_fsm.htfrc.hthermal.hthinkpad_acpi.hthread_info.hthreads.hthunderbolt.hti-emif-sram.hti_wilink_st.htick.htifm.htimb_dma.htimb_gpio.htime.htime32.htime64.htime_namespace.htimecounter.htimekeeper_internal.htimekeeping.htimekeeping32.htimer.htimerfd.htimeriomem-rng.htimerqueue.htimex.htnum.htopology.htorture.htoshiba.htpm.htpm_command.htpm_eventlog.htrace.htrace_clock.htrace_events.htrace_seq.htracefs.htracehook.htracepoint-defs.htracepoint.htransport_class.hts-nbus.htsacct_kern.htty.htty_driver.htty_flip.htty_ldisc.htypecheck.htypes.hu64_stats_sync.huaccess.hucb1400.hucs2_string.hudp.huidgid.huio.huio_driver.hulpidriver.hinterface.hregs.humh.hunalignedaccess_ok.hbe_byteshift.hbe_memmove.hbe_struct.hgeneric.hle_byteshift.hle_memmove.hle_struct.hmemmove.hpacked_struct.hunits.huprobes.husbusb.hassociation.haudio-v2.haudio-v3.haudio.hc67x00.hccid.hcdc-wdm.hcdc.hcdc_ncm.hch9.hchipidea.hcomposite.hehci-dbgp.hehci_def.hehci_pdriver.hezusb.hfunctionfs.hg_hid.hgadget.hgadget_configfs.hgpio_vbus.hhcd.hinput.hiowarrior.hirda.hisp116x.hisp1301.hisp1362.hm66592.hmusb-ux500.hmusb.hnet2280.hof.hohci_pdriver.hotg-fsm.hotg.hpd.hpd_ado.hpd_bdo.hpd_ext_sdb.hpd_vdo.hphy.hphy_companion.hquirks.hr8152.hr8a66597.hrenesas_usbhs.hrndis_host.hrole.hserial.hsl811.hstorage.htcpci.htcpm.htegra_usb_phy.htypec.htypec_altmode.htypec_dp.htypec_mux.htypec_retimer.htypec_tbt.huas.hulpi.husb338x.husb_phy_generic.husbnet.huvc.hwusb-wa.hwusb.hxhci-dbgp.husb_usual.husbdevice_fs.huser-return-notifier.huser.huser_namespace.huserfaultfd_k.husermode_driver.hutil_macros.huts.hutsname.huuid.huwbuwb.hdebug-cmd.hspec.humc.hwhci.hvbox_utils.hvdpa.hverification.hvermagic.hvexpress.hvfio.hvfs.hvga_switcheroo.hvgaarb.hvhost_iotlb.hvia-core.hvia-gpio.hvia.hvia_i2c.hvideodev2.hvirtio.hvirtio_byteorder.hvirtio_caif.hvirtio_config.hvirtio_console.hvirtio_dma_buf.hvirtio_net.hvirtio_pci_modern.hvirtio_ring.hvirtio_vsock.hvisorbus.hvlynq.hvm_event_item.hvmacache.hvmalloc.hvme.hvmpressure.hvmstat.hvmw_vmci_api.hvmw_vmci_defs.hvringh.hvt.hvt_buffer.hvt_kern.hvtime.hw1-gpio.hw1.hwait.hwait_bit.hwanrouter.hwatchdog.hwimaxdebug.hwin_minmax.hwireless.hwkup_m3_ipc.hwl12xx.hwm97xx.hwmi.hworkqueue.hwriteback.hww_mutex.hxarray.hxattr.hxxhash.hxz.hyam.hz2_battery.hzbud.hzconf.hzlib.hzorro.hzpool.hzsmalloc.hzstd.hzutil.hmath-emudouble.hop-1.hop-2.hop-4.hop-8.hop-common.hquad.hsingle.hsoft-fp.hmediacec-notifier.hcec-pin.hcec.hdavinciccdc_types.hdm355_ccdc.hdm644x_ccdc.hisif.hvpbe.hvpbe_display.hvpbe_osd.hvpbe_types.hvpbe_venc.hvpfe_capture.hvpfe_types.hvpif_types.hvpss.hdemux.hdmxdev.hdrv-intfcx2341x.hcx25840.hexynos-fimc.hmsp3400.hrenesas-ceu.hs3c_camif.hsaa7146.hsaa7146_vv.hsh_mobile_ceu.hsh_vou.hsi476x.hsoc_mediabus.htea575x.hdvb-usb-ids.hdvb_ca_en50221.hdvb_demux.hdvb_frontend.hdvb_math.hdvb_net.hdvb_ringbuffer.hdvb_vb2.hdvbdev.hframe_vector.hi2cad9389b.hadp1653.hadv7183.hadv7343.hadv7393.hadv7511.hadv7604.hadv7842.hak881x.hbt819.hcs5345.hcs53l32a.hir-kbd-i2c.hlm3560.hlm3646.hm52790.hm5mols.hmt9m032.hmt9p031.hmt9t001.hmt9t112.hmt9v011.hmt9v022.hmt9v032.hnoon010pc30.hov2659.hov7670.hov772x.hov9650.hrj54n1cb0c.hs5c73m3.hs5k4ecgx.hs5k6aa.hsaa6588.hsaa7115.hsaa7127.hsmiapp.hsr030pc30.htc358743.htda1997x.hths7303.htvaudio.htvp514x.htvp7002.htw9910.huda1342.hupd64031a.hupd64083.hwm8775.himx.hmedia-device.hmedia-devnode.hmedia-entity.hrc-core.hrc-map.hrcar-fcp.hsoc_camera.htpgv4l2-tpg.htuner-types.htuner.htveeprom.hv4l2-async.hv4l2-clk.hv4l2-common.hv4l2-ctrls.hv4l2-dev.hv4l2-device.hv4l2-dv-timings.hv4l2-event.hv4l2-fh.hv4l2-flash-led-class.hv4l2-fwnode.hv4l2-image-sizes.hv4l2-ioctl.hv4l2-mc.hv4l2-mediabus.hv4l2-mem2mem.hv4l2-rect.hv4l2-subdev.hvideobuf-core.hvideobuf-dma-contig.hvideobuf-dma-sg.hvideobuf-vmalloc.hvideobuf2-core.hvideobuf2-dma-contig.hvideobuf2-dma-sg.hvideobuf2-dvb.hvideobuf2-memops.hvideobuf2-v4l2.hvideobuf2-vmalloc.hvsp1.hmemoryjedec_ddr.hmiscaltera.hcharlcd.hcxl-base.hcxl.hcxllib.hocxl-config.hocxl.hnet6lowpan.h9p9p.hclient.htransport.hSpace.hact_api.haddrconf.haf_ieee802154.haf_rxrpc.haf_unix.haf_vsock.hah.harp.hatmclip.hax25.hax88796.hbareudp.hbluetoothbluetooth.hhci.hhci_core.hhci_mon.hhci_sock.hl2cap.hmgmt.hrfcomm.hsco.hbond_3ad.hbond_alb.hbond_options.hbonding.hbpf_sk_storage.hbusy_poll.hcaifcaif_dev.hcaif_device.hcaif_hsi.hcaif_layer.hcaif_spi.hcfcnfg.hcfctrl.hcffrml.hcfmuxl.hcfpkt.hcfserl.hcfsrvl.hcalipso.hcfg80211-wext.hcfg80211.hcfg802154.hchecksum.hcipso_ipv4.hcls_cgroup.hcodel.hcodel_impl.hcodel_qdisc.hcompat.hdatalink.hdcbevent.hdcbnl.hdevlink.hdn.hdn_dev.hdn_fib.hdn_neigh.hdn_nsp.hdn_route.hdrop_monitor.hdropreason.hdsa.hdsfield.hdst.hdst_cache.hdst_metadata.hdst_ops.herspan.hesp.hespintcp.hethoc.hfailover.hfib_notifier.hfib_rules.hfirewire.hflow.hflow_dissector.hflow_offload.hfou.hfq.hfq_impl.hgarp.hgen_stats.hgenetlink.hgeneve.hgre.hgro_cells.hgtp.hgue.hhwbm.hicmp.hieee80211_radiotap.hieee802154_netdev.hif_inet6.hife.hila.hinet6_connection_sock.hinet6_hashtables.hinet_common.hinet_connection_sock.hinet_ecn.hinet_frag.hinet_hashtables.hinet_sock.hinet_timewait_sock.hinetpeer.hip.hip6_checksum.hip6_fib.hip6_route.hip6_tunnel.hip_fib.hip_tunnels.hip_vs.hipcomp.hipconfig.hipv6.hipv6_frag.hipv6_stubs.hipx.hiucvaf_iucv.hiucv.hiw_handler.hkcm.hl3mdev.hlag.hlapb.hlib80211.hllc.hllc_c_ac.hllc_c_ev.hllc_c_st.hllc_conn.hllc_if.hllc_pdu.hllc_s_ac.hllc_s_ev.hllc_s_st.hllc_sap.hlwtunnel.hmac80211.hmac802154.hmanagdma.hhw_channel.hmana.hmana_auxiliary.hshm_channel.hmip6.hmld.hmpls.hmpls_iptunnel.hmptcp.hmrp.hncsi.hndisc.hneighbour.hnet_failover.hnet_namespace.hnet_ratelimit.hnet_seq_lock.hnetevent.hnetfilterbr_netfilter.hipv4nf_conntrack_ipv4.hnf_defrag_ipv4.hnf_dup_ipv4.hnf_nat_masquerade.hnf_reject.hipv6nf_conntrack_icmpv6.hnf_conntrack_ipv6.hnf_defrag_ipv6.hnf_dup_ipv6.hnf_nat_masquerade.hnf_reject.hnf_conntrack.hnf_conntrack_acct.hnf_conntrack_core.hnf_conntrack_count.hnf_conntrack_ecache.hnf_conntrack_expect.hnf_conntrack_extend.hnf_conntrack_helper.hnf_conntrack_l4proto.hnf_conntrack_labels.hnf_conntrack_seqadj.hnf_conntrack_synproxy.hnf_conntrack_timeout.hnf_conntrack_timestamp.hnf_conntrack_tuple.hnf_conntrack_zones.hnf_dup_netdev.hnf_flow_table.hnf_log.hnf_nat.hnf_nat_helper.hnf_nat_redirect.hnf_queue.hnf_reject.hnf_socket.hnf_tables.hnf_tables_core.hnf_tables_ipv4.hnf_tables_ipv6.hnf_tables_offload.hnf_tproxy.hnfnetlink_log.hnft_fib.hnft_reject.hxt_rateest.hnetlabel.hnetlink.hnetnsbpf.hcan.hconntrack.hcore.hdccp.hgeneric.hhash.hieee802154_6lowpan.hipv4.hipv6.hmib.hmpls.hnetfilter.hnftables.hpacket.hsctp.hsmc.hunix.hx_tables.hxdp.hxfrm.hnetprio_cgroup.hnetrom.hnexthop.hnfcdigital.hhci.hllc.hnci.hnci_core.hnfc.hnl802154.hnsh.hp8022.hpage_pool.hphonetgprs.hpep.hphonet.hpn_dev.hpie.hping.hpkt_cls.hpkt_sched.hpptp.hprotocol.hpsample.hpsnap.hraw.hrawv6.hred.hregulatory.hrequest_sock.hrose.hroute.hrsi_91x.hrtnetlink.hsch_generic.hscm.hsctpauth.hchecksum.hcommand.hconstants.hsctp.hsm.hstream_interleave.hstream_sched.hstructs.htsnmap.hulpevent.hulpqueue.hsecure_seq.hseg6.hseg6_hmac.hseg6_local.hslhc_vj.hsmc.hsnmp.hsock.hsock_reuseport.hstp.hstrparser.hswitchdev.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_police.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_wrapper.htcp.htcp_states.htimewait_sock.htipc.htls.htls_toe.htransp_v6.htso.htun_proto.hudp.hudp_tunnel.hudplite.hvsock_addr.hvxlan.hwext.hwimax.hx25.hx25device.hxdp.hxdp_priv.hxdp_sock.hxdp_sock_drv.hxfrm.hxsk_buff_pool.hpcmciaciscode.hcisreg.hcistpl.hdevice_id.hds.hss.hrasras_event.hrdmaib.hib_addr.hib_cache.hib_cm.hib_hdrs.hib_mad.hib_marshall.hib_pack.hib_pma.hib_sa.hib_smi.hib_sysfs.hib_umem.hib_umem_odp.hib_verbs.hiba.hibta_vol1_c12.hiw_cm.hiw_portmap.hlag.hmr_pool.hopa_addr.hopa_port_info.hopa_smi.hopa_vnic.hrdma_cm.hrdma_cm_ib.hrdma_counter.hrdma_netlink.hrdma_vt.hrdmavt_cq.hrdmavt_mr.hrdmavt_qp.hrestrack.hrw.hsignature.htid_rdma_defs.huverbs_ioctl.huverbs_named_ioctl.huverbs_std_types.huverbs_types.hscsifcfc_encaps.hfc_fc2.hfc_fcoe.hfc_fcp.hfc_fip.hfc_ms.hfc_frame.hfcoe_sysfs.hiscsi_if.hiscsi_proto.hiser.hlibfc.hlibfcoe.hlibiscsi.hlibiscsi_tcp.hlibsas.hosd_attributes.hosd_protocol.hosd_sec.hosd_sense.hosd_types.hsas.hsas_ata.hscsi.hscsi_bsg_iscsi.hscsi_cmnd.hscsi_common.hscsi_dbg.hscsi_device.hscsi_devinfo.hscsi_dh.hscsi_driver.hscsi_eh.hscsi_host.hscsi_ioctl.hscsi_proto.hscsi_request.hscsi_tcq.hscsi_transport.hscsi_transport_fc.hscsi_transport_iscsi.hscsi_transport_sas.hscsi_transport_spi.hscsi_transport_srp.hscsicam.hsg.hsrp.hviosrp.hsocarcaux.hmcip.htimers.hat91at91sam9_ddrsdr.hat91sam9_sdramc.hatmel-secumod.hatmel-sfr.hbcm2835raspberrypi-firmware.hbrcmstbcommon.hfslbman.hqeimmap_qe.hqe.hqe_ic.hqe_tdm.hucc.hucc_fast.hucc_slow.hqman.himxcpuidle.hrevision.htimer.hmediateksmi.hnpscommon.hmtm.hqcomcmd-db.hrockchiprockchip_sip.hsa1100pwer.htegraahb.hbpmp-abi.hbpmp.hcommon.hcpuidle.hemc.hflowctrl.hfuse.hivc.hmc.hpm.hpmc.hsoundac97codec.hcompat.hcontroller.hregs.hac97_codec.haci.hacp63_chip_offset_byte.had1816a.had1843.hadau1373.haess.hak4113.hak4114.hak4117.hak4531_codec.hak4641.hak4xxx-adda.halc5623.hasequencer.hasound.hasoundef.hcompress_driver.hcontrol.hcore.hcs35l33.hcs35l34.hcs35l35.hcs35l36.hcs35l41.hcs4231-regs.hcs4271.hcs42l42.hcs42l52.hcs42l56.hcs42l73.hcs8403.hcs8427.hda7213.hda7218.hda7219-aad.hda7219.hda9055.hdesignware_i2s.hdmaengine_pcm.hemu10k1.hemu10k1_synth.hemu8000.hemu8000_reg.hemux_legacy.hemux_synth.hes1688.hgraph_card.hgus.hhda-mlink.hhda_chmap.hhda_codec.hhda_component.hhda_hwdep.hhda_i915.hhda_register.hhda_regmap.hhda_verbs.hhdaudio.hhdaudio_ext.hhdmi-codec.hhwdep.hi2c.hinfo.hinitval.hintel-dsp-config.hintel-nhlt.hjack.hl3.hmax9768.hmax98088.hmax98090.hmax98095.hmemalloc.hminors.hmixer_oss.hmpu401.homap-hdmi-audio.hopl3.hopl4.hpcm-indirect.hpcm.hpcm_drm_eld.hpcm_iec958.hpcm_oss.hpcm_params.hpt2258.hpxa2xx-lib.hrawmidi.hrt1015.hrt286.hrt298.hrt5514.hrt5659.hrt5660.hrt5663.hrt5665.hrt5668.hrt5682.hrt5682s.hs3c24xx_uda134x.hsb.hsb16_csp.hsdw.hseq_device.hseq_kernel.hseq_midi_emul.hseq_midi_event.hseq_oss.hseq_oss_legacy.hseq_virmidi.hsh_dac_audio.hsh_fsi.hsimple_card.hsimple_card_utils.hsnd_wavefront.hsoc-acpi-intel-match.hsoc-acpi.hsoc-card.hsoc-component.hsoc-dai.hsoc-dapm.hsoc-dpcm.hsoc-jack.hsoc-link.hsoc-topology.hsoc.hsofsof.hchannel_map.hcontrol.hdai-amd.hdai-imx.hdai-intel.hdai-mediatek.hdai.hdebug.hext_manifest.hext_manifest4.hheader.hinfo.hipc4header.hpm.hstream.htopology.htrace.hxtensa.hsoundfont.hspear_dma.hspear_spdif.hsta32x.hsta350.htas2552-plat.htas5086.htea6330t.htimer.htlv.htlv320aic32x4.htlv320dac33-plat.htpa6130a2-plat.huda134x.huda1380.hutil_mem.hvx_core.hwavefront.hwm0010.hwm1250-ev1.hwm2000.hwm2200.hwm5100.hwm8903.hwm8904.hwm8955.hwm8960.hwm8962.hwm8993.hwm8996.hwm9081.hwm9090.hwss.htargetiscsiiscsi_target_core.hiscsi_target_stat.hiscsi_transport.htarget_core_backend.htarget_core_base.htarget_core_fabric.htracebpf_probe.hdefine_trace.hevents9p.hafs.halarmtimer.hasoc.havc.hbcache.hblock.hbpf_test_run.hbridge.hbtrfs.hcachefiles.hcgroup.hclk.hcma.hcompaction.hcontext_tracking.hcpuhp.hdamon.hdevlink.hdma_fence.hext4.hf2fs.hfib.hfib6.hfilelock.hfilemap.hfs.hfs_dax.hfscache.hfsi.hfsi_master_gpio.hgpio.hhost1x.hhuge_memory.hi2c.hib_mad.hib_umad.hinitcall.hintel-sst.hintel_ifs.hintel_iommu.hintel_ish.hio_uring.hiocost.hiommu.hipi.hirq.hirq_matrix.hiscsi.hjbd2.hkmem.hkvm.hkyber.hlibata.hlock.hmce.hmdio.hmigrate.hmlxsw.hmmc.hmmflags.hmodule.hmptcp.hnapi.hneigh.hnet.hnet_probe_common.hnetlink.hnfs.hnilfs2.hnmi.hobjagg.hoom.hosnoise.hpage_isolation.hpage_pool.hpage_ref.hpagemap.hpercpu.hpower.hpower_cpu_migrate.hpreemptirq.hprintk.hpwc.hqdisc.hqla.hqrtr.hrandom.hrcu.hrdma.hrdma_core.hregulator.hrpcgss.hrpcrdma.hrpm.hrseq.hrtc.hrxrpc.hsched.hscsi.hsctp.hsignal.hsiox.hskb.hsmbus.hsock.hsof.hsof_intel.hspi.hspmi.hsunrpc.hsunrpc_base.hsunvnet.hswiotlb.hsyscalls.htarget.htask.htcp.hthermal.hthermal_power_allocator.hthp.htimer.htlb.hudp.hufs.hv4l2.hvb2.hvmscan.hvsock_virtio_transport_common.hwbt.hworkqueue.hwriteback.hxdp.hxen.hperf.hsyscall.htrace_events.huapiasm-genericKbuild.asmauxvec.hbitsperlong.hbpf_perf_event.herrno-base.herrno.hfcntl.hhugetlb_encode.hint-l64.hint-ll64.hioctl.hioctls.hipcbuf.hkvm_para.hmman-common.hmman.hmsgbuf.hparam.hpoll.hposix_types.hresource.hsembuf.hsetup.hshmbuf.hshmparam.hsiginfo.hsignal-defs.hsignal.hsocket.hsockios.hstat.hstatfs.hswab.htermbits.htermios.htypes.hucontext.hunistd.hdrmamdgpu_drm.harmada_drm.hdrm.hdrm_fourcc.hdrm_mode.hdrm_sarea.hetnaviv_drm.hexynos_drm.hhabanalabs_accel.hi915_drm.hivpu_accel.hlima_drm.hmsm_drm.hnouveau_drm.homap_drm.hpanfrost_drm.hqxl_drm.hradeon_drm.htegra_drm.hv3d_drm.hvc4_drm.hvgem_drm.hvirtgpu_drm.hvmwgfx_drm.hlinuxKbuilda.out.hacct.hadb.hadfs_fs.haffs_hardblocks.hagpgart.haio_abi.ham437x-vpfe.handroidbinder.hapm_bios.harcfb.harm_sdei.haspeed-lpc-ctrl.hatalk.hatm.hatm_eni.hatm_he.hatm_idt77105.hatm_nicstar.hatm_tcp.hatm_zatm.hatmapi.hatmarp.hatmbr2684.hatmclip.hatmdev.hatmioc.hatmlec.hatmmpc.hatmppp.hatmsap.hatmsvc.haudit.hauto_dev-ioctl.hauto_fs.hauto_fs4.hauxvec.hax25.hb1lli.hbatadv_packet.hbatman_adv.hbaycom.hbcache.hbcm933xx_hcs.hbfs_fs.hbinfmts.hblkpg.hblktrace_api.hblkzoned.hbpf.hbpf_common.hbpf_perf_event.hbpfilter.hbpqether.hbsg.hbt-bmc.hbtf.hbtrfs.hbtrfs_tree.hbyteorderbig_endian.hlittle_endian.hcaifcaif_socket.hif_caif.hcancan.hbcm.herror.hgw.hnetlink.hraw.hvxcan.hcapability.hcapi.hcciss_defs.hcciss_ioctl.hcdrom.hcec-funcs.hcec.hcfm_bridge.hcgroupstats.hchio.hcifscifs_mount.hcifs_netlink.hclose_range.hcm4000_cs.hcn_proc.hcoda.hcoda_psdev.hcoff.hconnector.hconst.hcoresight-stm.hcramfs_fs.hcryptouser.hcuda.hcyclades.hcycx_cfm.hdcbnl.hdccp.hdevlink.hdlm.hdlm_device.hdlm_netlink.hdlm_plock.hdlmconstants.hdm-ioctl.hdm-log-userspace.hdma-buf.hdn.hdqblk_xfs.hdvbaudio.hca.hdmx.hfrontend.hnet.hosd.hversion.hvideo.hedd.hefs_fs_sb.helf-em.helf-fdpic.helf.helfcore.herrno.herrqueue.herspan.hethtool.hethtool_netlink.heventpoll.hfadvise.hfalloc.hfanotify.hfb.hfcntl.hfd.hfdreg.hfib_rules.hfiemap.hfilter.hfirewire-cdev.hfirewire-constants.hflat.hfou.hfpga-dfl.hfs.hfsl_hypervisor.hfsmap.hfuse.hfutex.hgameport.hgen_stats.hgenetlink.hgenwqegenwqe_card.hgfs2_ondisk.hgigaset_dev.hgpio.hgsmmux.hgtp.hhash_info.hhdlchdlc.hioctl.hhdlcdrv.hhdreg.hhid.hhiddev.hhidraw.hhpet.hhsics-protocol.hhsi_char.hhsr_netlink.hhw_breakpoint.hhyperv.hhysdn_if.hi2c-dev.hi2c.hi2o-dev.hi8k.hicmp.hicmpv6.hidxd.hif.hif_addr.hif_addrlabel.hif_alg.hif_arcnet.hif_arp.hif_bonding.hif_bridge.hif_cablemodem.hif_eql.hif_ether.hif_fc.hif_fddi.hif_frad.hif_hippi.hif_infiniband.hif_link.hif_ltalk.hif_macsec.hif_packet.hif_phonet.hif_plip.hif_ppp.hif_pppol2tp.hif_pppox.hif_slip.hif_team.hif_tun.hif_tunnel.hif_vlan.hif_x25.hif_xdp.hife.higmp.hiioevents.htypes.hila.hin.hin6.hin_route.hinet_diag.hinotify.hinput-event-codes.hinput.hio_uring.hioctl.hiommu.hip.hip6_tunnel.hip_vs.hipc.hipmi.hipmi_bmc.hipmi_msgdefs.hipmi_ssif_bmc.hipsec.hipv6.hipv6_route.hipx.hirqnr.hisdnisdn.hcapicmd.hisdn_divertif.hisdn_ppp.hisdnif.hiso_fs.hisst_if.hivtv.hivtvfb.hjffs2.hjoystick.hkcm.hkcmp.hkcov.hkd.hkdev_t.hkernel-page-flags.hkernel.hkernelcapi.hkexec.hkeyboard.hkeyctl.hkfd_ioctl.hkfd_sysfs.hkvm.hkvm_para.hl2tp.hlibc-compat.hlightnvm.hlimits.hlirc.hllc.hloop.hlp.hlwtunnel.hmagic.hmajor.hmap_to_7segment.hmatroxfb.hmax2175.hmdio.hmedia-bus-format.hmedia.hmei.hmembarrier.hmemfd.hmempolicy.hmeye.hmic_common.hmic_ioctl.hmii.hminix_fs.hmman.hmmcioctl.hmmtimer.hmodule.hmount.hmpls.hmpls_iptunnel.hmptcp.hmqueue.hmroute.hmroute6.hmrp_bridge.hmsdos_fs.hmsg.hmtio.hn_r3964.hnbd-netlink.hnbd.hncsi.hndctl.hneighbour.hnet.hnet_dropmon.hnet_namespace.hnet_tstamp.hnetconf.hnetdevice.hnetfilternetfilter.hipsetip_set.hip_set_bitmap.hip_set_hash.hip_set_list.hnf_conntrack_common.hnf_conntrack_ftp.hnf_conntrack_sctp.hnf_conntrack_tcp.hnf_conntrack_tuple_common.hnf_log.hnf_nat.hnf_osf.hnf_tables.hnf_tables_compat.hnfnetlink.hnfnetlink_acct.hnfnetlink_compat.hnfnetlink_conntrack.hnfnetlink_cthelper.hnfnetlink_cttimeout.hnfnetlink_log.hnfnetlink_queue.hx_tables.hxt_AUDIT.hxt_CHECKSUM.hxt_CLASSIFY.hxt_CONNMARK.hxt_CONNSECMARK.hxt_CT.hxt_DSCP.hxt_HMARK.hxt_IDLETIMER.hxt_LED.hxt_LOG.hxt_MARK.hxt_NFLOG.hxt_NFQUEUE.hxt_RATEEST.hxt_SECMARK.hxt_SYNPROXY.hxt_TCPMSS.hxt_TCPOPTSTRIP.hxt_TEE.hxt_TPROXY.hxt_addrtype.hxt_bpf.hxt_cgroup.hxt_cluster.hxt_comment.hxt_connbytes.hxt_connlabel.hxt_connlimit.hxt_connmark.hxt_conntrack.hxt_cpu.hxt_dccp.hxt_devgroup.hxt_dscp.hxt_ecn.hxt_esp.hxt_hashlimit.hxt_helper.hxt_ipcomp.hxt_iprange.hxt_ipvs.hxt_l2tp.hxt_length.hxt_limit.hxt_mac.hxt_mark.hxt_multiport.hxt_nfacct.hxt_osf.hxt_owner.hxt_physdev.hxt_pkttype.hxt_policy.hxt_quota.hxt_rateest.hxt_realm.hxt_recent.hxt_rpfilter.hxt_sctp.hxt_set.hxt_socket.hxt_state.hxt_statistic.hxt_string.hxt_tcpmss.hxt_tcpudp.hxt_time.hxt_u32.hnetfilter_arpnetfilter_arp.harp_tables.harpt_mangle.hnetfilter_bridgenetfilter_bridge.hebt_802_3.hebt_among.hebt_arp.hebt_arpreply.hebt_ip.hebt_ip6.hebt_limit.hebt_log.hebt_mark_m.hebt_mark_t.hebt_nat.hebt_nflog.hebt_pkttype.hebt_redirect.hebt_stp.hebt_vlan.hebtables.hnetfilter_decnet.hnetfilter_ipv4netfilter_ipv4.hip_tables.hipt_CLUSTERIP.hipt_ECN.hipt_LOG.hipt_REJECT.hipt_TTL.hipt_ah.hipt_ecn.hipt_ttl.hnetfilter_ipv6netfilter_ipv6.hip6_tables.hip6t_HL.hip6t_LOG.hip6t_NPT.hip6t_REJECT.hip6t_ah.hip6t_frag.hip6t_hl.hip6t_ipv6header.hip6t_mh.hip6t_opts.hip6t_rt.hip6t_srh.hnetlink.hnetlink_diag.hnetrom.hnexthop.hnfc.hnfs.hnfs2.hnfs3.hnfs4.hnfs4_mount.hnfs_fs.hnfs_idmap.hnfs_mount.hnfsacl.hnfsdcld.hdebug.hexport.hstats.hnilfs2_api.hnilfs2_ondisk.hnitro_enclaves.hnl80211.hnsfs.hnubus.hnvme_ioctl.hnvram.homap3isp.homapfb.hoom.hopenat2.hopenvswitch.hpacket_diag.hparam.hparport.hpatchkey.hpci.hpci_regs.hpcitest.hperf_event.hpersonality.hpfkeyv2.hpfrut.hpg.hphantom.hphonet.hpkt_cls.hpkt_sched.hpktcdvd.hpmu.hpoll.hposix_acl.hposix_acl_xattr.hposix_types.hppdev.hppp-comp.hppp-ioctl.hppp_defs.hpps.hpr.hprctl.hpsample.hpsci.hpsp-sev.hptp_clock.hptrace.hqemu_fw_cfg.hqnx4_fs.hqnxtypes.hqrtr.hquota.hradeonfb.hraidmd_p.hmd_u.hrandom.hraw.hrds.hreboot.hreiserfs_fs.hreiserfs_xattr.hresource.hrfkill.hrio_cm_cdev.hrio_mport_cdev.hromfs_fs.hrose.hroute.hrpmsg.hrseq.hrtc.hrtnetlink.hrxrpc.hscc.hschedsched.htypes.hscif_ioctl.hscreen_info.hsctp.hsdla.hseccomp.hsecurebits.hsed-opal.hseg6.hseg6_genl.hseg6_hmac.hseg6_iptunnel.hseg6_local.hselinux_netlink.hsem.hserial.hserial_core.hserial_reg.hserio.hsev-guest.hshm.hsignal.hsignalfd.hsmc.hsmc_diag.hsmiapp.hsnmp.hsock_diag.hsocket.hsockios.hsonet.hsonypi.hsound.hsoundcard.hspispidev.hstat.hstddef.hstm.hstring.hsunrpcdebug.hsuspend_ioctls.hswab.hswitchtec_ioctl.hsync_file.hsynclink.hsysctl.hsysinfo.htarget_core_user.htaskstats.htc_acttc_bpf.htc_connmark.htc_csum.htc_ct.htc_ctinfo.htc_defact.htc_gact.htc_gate.htc_ife.htc_ipt.htc_mirred.htc_mpls.htc_nat.htc_pedit.htc_sample.htc_skbedit.htc_skbmod.htc_tunnel_key.htc_vlan.htc_ematchtc_em_cmp.htc_em_ipt.htc_em_meta.htc_em_nbyte.htc_em_text.htcp.htcp_metrics.htdx-guest.htee.htermios.hthermal.htime.htime_types.htimerfd.htimes.htimex.htiocl.htipc.htipc_config.htipc_netlink.htipc_sockets_diag.htls.htoshiba.htty.htty_flags.htypes.hudf_fs_i.hudp.huhid.huinput.huio.huleds.hultrasound.hun.hunistd.hunix_diag.husbaudio.hcdc-wdm.hcdc.hch11.hch9.hcharger.hfunctionfs.hg_printer.hg_uvc.hgadgetfs.hmidi.htmc.hvideo.husbdevice_fs.husbip.huserfaultfd.huserio.hutime.hutsname.huuid.huvcvideo.hv4l2-common.hv4l2-controls.hv4l2-dv-timings.hv4l2-mediabus.hv4l2-subdev.hvbox_err.hvbox_vmmdev_types.hvboxguest.hvdpa.hveth.hvfio.hvfio_ccw.hvfio_zdev.hvhost.hvhost_types.hvideodev2.hvirtio_9p.hvirtio_balloon.hvirtio_blk.hvirtio_bt.hvirtio_config.hvirtio_console.hvirtio_crypto.hvirtio_fs.hvirtio_gpu.hvirtio_ids.hvirtio_input.hvirtio_iommu.hvirtio_mem.hvirtio_mmio.hvirtio_net.hvirtio_pci.hvirtio_ring.hvirtio_rng.hvirtio_scsi.hvirtio_snd.hvirtio_types.hvirtio_vsock.hvm_sockets.hvm_sockets_diag.hvmcore.hvsockmon.hvt.hvtpm_proxy.hwait.hwanrouter.hwatchdog.hwimaxwimax.hi2400m.hwireless.hwmi.hx25.hxattr.hxdp_diag.hxfrm.hxilinx-v4l2-controls.hzorro.hzorro_ids.hmisccxl.hocxl.hpvpanic.hmtdinftl-user.hmtd-abi.hmtd-user.hnftl-user.hubi-user.hrdmabnxt_re-abi.hcxgb4-abi.hefa-abi.hhfihfi1_ioctl.hhfi1_user.hhns-abi.hib_user_ioctl_cmds.hib_user_ioctl_verbs.hib_user_mad.hib_user_sa.hib_user_verbs.hirdma-abi.hmana-abi.hmlx4-abi.hmlx5-abi.hmlx5_user_ioctl_cmds.hmlx5_user_ioctl_verbs.hmthca-abi.hocrdma-abi.hqedr-abi.hrdma_netlink.hrdma_user_cm.hrdma_user_ioctl.hrdma_user_ioctl_cmds.hrdma_user_rxe.hrvt-abi.hsiw-abi.hvmw_pvrdma-abi.hscsicxlflash_ioctl.hfcfc_els.hfc_fs.hfc_gs.hfc_ns.hscsi_bsg_fc.hscsi_bsg_mpi3mr.hscsi_netlink.hscsi_netlink_fc.hsoundasequencer.hasoc.hasound.hasound_fm.hcompress_offload.hcompress_params.hemu10k1.hfirewire.hhdsp.hhdspm.hintelavstokens.hsb16_csp.hsfnt_info.hskl-tplg-interface.hsnd_sst_tokens.hsofabi.hfw.hheader.htokens.htlv.husb_stream.hvideoedid.hsisfb.huvesafb.hxenevtchn.hgntalloc.hgntdev.hprivcmd.hvdsobits.hclocksource.hconst.hdatapage.hhelpers.hjiffies.hktime.hlimits.hmath64.hprocessor.htime.htime32.htime64.hvsyscall.hvideoatmel_lcdc.haty128.hbroadsheetfb.hcirrus.hcvisionppc.hda8xx-fb.hdisplay_timing.hedid.hgbe.hhecubafb.hili9320.himx-ipu-image-convert.himx-ipu-v3.hkyro.hmach64.hmaxinefb.hmbxfb.hmetronomefb.hmipi_display.hmmp_disp.hneomagic.hnewport.hnomodeset.hof_display_timing.hof_videomode.homap-panel-data.homapfb_dss.homapvrfb.hpermedia2.hplatform_lcd.hpm3fb.hpmag-ba-fb.hpmagb-b-fb.hpxa168fb.hradeon.hs1d13xxxfb.hsa1100fb.hsamsung_fimd.hsh_mobile_lcdc.hsisfb.hsstfb.htdfx.htgafb.htrident.hudlfb.huvesafb.hvga.hvideomode.hw100fb.hxenacpi.harmhypercall.hhypervisor.hinterface.hpage-coherent.hpage.hballoon.hevents.hfeatures.hgrant_table.hhvc-console.hhvm.hinterfacecallback.helfnote.hevent_channel.hfeatures.hgrant_table.hhvmdm_op.hhvm_op.hhvm_vcpu.hparams.hstart_info.hio9pfs.hblkif.hconsole.hdisplif.hfbif.hkbdif.hnetif.hpciif.hprotocols.hpvcalls.hring.hsndif.htpmif.hvscsiif.hxenbus.hxs_wire.hmemory.hnmi.hphysdev.hplatform.hsched.hvcpu.hversion.hxen-mca.hxen.hxenpmu.hpage.hplatform_pci.hswiotlb-xen.htmem.hxen-front-pgdir-shbuf.hxen-ops.hxen.hxenbus.hxenbus_dev.hinitKconfigMakefileipcMakefilekernelKconfig.freezerKconfig.hzKconfig.locksKconfig.preemptMakefilebpfKconfigMakefilepreloadKconfigMakefileiteratorsMakefilecgroupMakefiledebugMakefilekdbMakefiledmaKconfigMakefileeventsMakefilegcovKconfigMakefileirqKconfigMakefilekcsanMakefilelivepatchKconfigMakefilelockingMakefilepowerKconfigMakefileprintkMakefilercuKconfigKconfig.debugMakefileschedMakefiletimeKconfigMakefiletraceKconfigMakefilelib842MakefileKconfigKconfig.debugKconfig.kasanKconfig.kcsanKconfig.kgdbKconfig.ubsanMakefilecryptoMakefiledimMakefilefontsKconfigMakefilekunitKconfigMakefilelivepatchMakefilelz4MakefilelzoMakefilemathKconfigMakefilempiMakefilepldmfwMakefileraid6MakefiletestMakefilereed_solomonMakefilevdsoKconfigMakefilexzKconfigMakefilezlib_deflateMakefilezlib_dfltccMakefilezlib_inflateMakefilezstdMakefilemmKconfigKconfig.debugMakefiledamonKconfigMakefilekasanMakefilenet6lowpanKconfigMakefile802KconfigMakefile8021qKconfigMakefile9pKconfigMakefileKconfigMakefileappletalkMakefileatmKconfigMakefileax25KconfigMakefilebatman-advKconfigMakefilebluetoothKconfigMakefilebnepKconfigMakefilecmtpKconfigMakefilehidpKconfigMakefilerfcommKconfigMakefilebpfMakefilebpfilterKconfigMakefilebridgeKconfigMakefilenetfilterKconfigMakefilecaifKconfigMakefilecanKconfigMakefilecephKconfigMakefilecoreMakefiledcbKconfigMakefiledccpKconfigMakefileccidsKconfigdecnetKconfigMakefilenetfilterKconfigMakefiledns_resolverKconfigMakefiledsaKconfigMakefileethernetMakefileethtoolMakefilehsrKconfigMakefileieee8021546lowpanKconfigMakefileKconfigMakefileifeKconfigMakefileipv4KconfigMakefilebpfilterMakefilenetfilterKconfigMakefileipv6KconfigMakefileilaMakefilenetfilterKconfigMakefileiucvKconfigMakefilekcmKconfigMakefilekeyMakefilel2tpKconfigMakefilel3mdevKconfigMakefilelapbKconfigMakefilellcKconfigMakefilemac80211KconfigMakefilemac802154KconfigMakefilemplsKconfigMakefilemptcpKconfigMakefilencsiKconfigMakefilenetfilterKconfigMakefileipsetKconfigMakefileipvsKconfigMakefilenetlabelKconfigMakefilenetlinkKconfigMakefilenetromMakefilenfcKconfigMakefilehciKconfigMakefilenciKconfigMakefilenshKconfigMakefileopenvswitchKconfigMakefilepacketKconfigMakefilephonetKconfigMakefilepsampleKconfigMakefileqrtrKconfigMakefilerdsKconfigMakefilerfkillKconfigMakefileroseMakefilerxrpcKconfigMakefileschedKconfigMakefilesctpKconfigMakefilesmcKconfigMakefilestrparserKconfigMakefilesunrpcKconfigMakefileauth_gssMakefilexprtrdmaMakefileswitchdevKconfigMakefiletipcKconfigMakefiletlsKconfigMakefileunixKconfigMakefilevmw_vsockKconfigMakefilewimaxKconfigMakefilewirelessKconfigMakefilex25KconfigMakefilexdpKconfigMakefilexfrmKconfigMakefilesamplesKconfigMakefileauxdisplayMakefilebpfMakefileMakefile.targetconfigfsMakefileconnectorMakefilehidrawMakefilehw_breakpointMakefilekdbMakefilekfifoMakefilekobjectMakefilekprobesMakefilelivepatchMakefilemeiMakefilemicmpssdMakefilenitro_enclavesMakefileqmiMakefilerpmsgMakefileseccompMakefiletimersMakefiletrace_eventsMakefiletrace_printkMakefileuhidMakefilev4lMakefilevfio-mdevMakefilevfsMakefilewatchdogMakefilescriptsKbuild.includeKconfig.includeLindentMakefileMakefile.asm-genericMakefile.buildMakefile.cleanMakefile.dtbinstMakefile.extrawarnMakefile.gcc-pluginsMakefile.headersinstMakefile.hostMakefile.kasanMakefile.kcovMakefile.kcsanMakefile.libMakefile.modbuiltinMakefile.modinstMakefile.modpostMakefile.modsignMakefile.ubsanadjust_autoksyms.shasn1_compilerasn1_compiler.cbasicMakefilefixdepfixdep.cmodules.orderbin2cbin2c.cbloat-o-meterbootgraph.plbpf_doc.pycc-can-link.shcheck_00index.shcheck_extable.shcheckincludes.plcheckkconfigsymbols.pycheckpatch.plcheckstack.plchecksyscalls.shcheckversion.plclang-toolsgen_compile_commands.pyrun-clang-tools.pyclang-version.shcleanfilecleanpatchcoccicheckcoccinelleapiallocalloc_cast.coccipool_zalloc-simple.coccizalloc-simple.coccicheck_bq27xxx_data.coccid_find_alias.coccidebugfsdebugfs_simple_attr.coccidrm-get-put.coccierr_cast.coccikstrdup.coccimemdup.coccimemdup_user.cocciplatform_no_drv_owner.coccipm_runtime.cocciptr_ret.cocciresource_size.coccisimple_open.coccivma_pages.coccifreeclk_put.coccidevm_free.cocciifnullfree.cocciiounmap.coccikfree.coccikfreeaddr.coccipci_free_consistent.cocciiteratorsdevice_node_continue.coccifen.cocciitnull.coccilist_entry_update.cocciuse_after_iter.coccilockscall_kern.coccidouble_lock.cocciflags.coccimini_lock.coccimiscarray_size.coccibadty.cocciboolconv.cocciboolinit.cocciboolreturn.coccibugon.coccicond_no_effect.coccicstptr.coccidoubleinit.cocciifaddr.cocciifcol.cocciirqf_oneshot.coccinewline_in_nl_msg.coccinoderef.cocciof_table.cocciorplus.coccireturnvar.coccisemicolon.cocciwarn.coccinullbadzero.coccideref_null.coccieno.coccikmerr.coccitestsdoublebitand.coccidoubletest.cocciodd_ptr_err.cocciunsigned_lesser_than_zero.cocciconfigconmakehashconmakehash.cconst_structs.checkpatchdecode_stacktrace.shdecodecodedepmod.shdiffconfigdocumentation-file-ref-checkdtcMakefileMakefile.dtcchecks.cdata.cdt_to_configdtc-lexer.ldtc-parser.ydtc.cdtc.hdtx_difffdtdump.cfdtget.cfdtput.cflattree.cfstree.cinclude-prefixesarcarmarm64c6xdt-bindingsh8300microblazemipsnios2openriscpowerpcshxtensalibfdtMakefile.libfdtfdt.cfdt.hfdt_addresses.cfdt_empty_tree.cfdt_overlay.cfdt_ro.cfdt_rw.cfdt_strerror.cfdt_sw.cfdt_wip.clibfdt.hlibfdt_env.hlibfdt_internal.hlivetree.csrcpos.csrcpos.htreesource.cupdate-dtc-source.shutil.cutil.hversion_gen.hyamltree.cexport_report.plextract-certextract-cert.cextract-ikconfigextract-module-sig.plextract-sys-certs.plextract-vmlinuxextract_xc3028.plfaddr2linefile-size.shfind-unused-docs.shgcc-goto.shgcc-ldgcc-plugin.shgcc-pluginsMakefilecyc_complexity_plugin.cgcc-common.hgcc-generate-gimple-pass.hgcc-generate-ipa-pass.hgcc-generate-rtl-pass.hgcc-generate-simple_ipa-pass.hgen-random-seed.shlatent_entropy_plugin.crandomize_layout_plugin.csancov_plugin.cstructleak_plugin.cgcc-version.shgcc-x86_32-has-stack-protector.shgcc-x86_64-has-stack-protector.shgdbMakefilelinuxMakefile__init__.pyconstants.py.incpus.pydmesg.pylists.pymodules.pyproc.pysymbols.pytasks.pyutils.pyvmlinux-gdb.pygen_initramfs_list.shgenksymsMakefilegenksymsgenksyms.cgenksyms.hkeywords.clex.llex.lex.cmodules.orderparse.tab.cparse.tab.hparse.yget_dvb_firmwareget_maintainer.plgfp-translateheaderdep.plheaders.shheaders_check.plheaders_install.shinsert-sys-cert.ckallsymskallsyms.ckconfigMakefileconfconf.cconfdata.cexpr.cexpr.hgconf-cfg.shgconf.cgconf.gladeimages.ckconf_id.clist.hlkc.hlkc_proto.hlxdialogBIG.FAT.WARNINGchecklist.cdialog.hinputbox.cmenubox.ctextbox.cutil.cyesno.cmconf-cfg.shmconf.cmenu.cmerge_config.shnconf-cfg.shnconf.cnconf.gui.cnconf.hpreprocess.cqconf-cfg.shqconf.ccqconf.hstreamline_config.plsymbol.ctestsauto_submenuKconfig__init__.pyexpected_stdoutchoiceKconfig__init__.pyalldef_expected_configallmod_expected_configallno_expected_configallyes_expected_configoldask0_expected_stdoutoldask1_configoldask1_expected_stdoutchoice_value_with_m_depKconfig__init__.pyconfigexpected_configexpected_stdoutconftest.pyerr_recursive_depKconfig__init__.pyexpected_stderrerr_recursive_incKconfigKconfig.inc1Kconfig.inc2Kconfig.inc3__init__.pyexpected_stderrinter_choiceKconfig__init__.pydefconfigexpected_confignew_choice_with_depKconfig__init__.pyconfigexpected_stdoutno_write_if_dep_unmetKconfig__init__.pyconfigexpected_configpreprocessbuiltin_funcKconfig__init__.pyexpected_stderrexpected_stdoutcircular_expansionKconfig__init__.pyexpected_stderrescapeKconfig__init__.pyexpected_stderrvariableKconfig__init__.pyexpected_stderrpytest.inirand_nested_choiceKconfig__init__.pyexpected_stdout0expected_stdout1expected_stdout2util.czconf.lzconf.lex.czconf.tab.czconf.ykernel-docksymoopsREADMEld-version.shleaking_addresses.pllink-vmlinux.shmakelstmarkup_oops.plmkcompile_hmkmakefilemksysmapmkuboot.shmodMakefiledevicetable-offsets.cdevicetable-offsets.hdevicetable-offsets.selfconfig.hempty.cfile2alias.cmk_elfconfigmk_elfconfig.cmodpostmodpost.cmodpost.hmodules.ordersumversion.cmodule-common.ldsmodules.ordernamespace.plobjdiffpackageMakefilebuilddebbuildtarmkdebianmkspecsnapcraft.templateparse-maintainers.plpatch-kernelpnmtologopnmtologo.cprofile2linkerlist.plprune-kernelrecordmcountrecordmcount.crecordmcount.hrecordmcount.plselinuxMakefileREADMEgenheadersMakefilegenheadersgenheaders.cmodules.orderinstall_policy.shmdpMakefiledbus_contextsmdpmdp.cmodules.ordermodules.ordersetlocalversionshow_deltasign-filesign-file.csortextablesortextable.csortextable.hspelling.txtsphinx-pre-installsplit-man.plstackdeltastackusagesubarch.includetags.shtest_fortify.shunifdefunifdef.cver_linuxxen-hypercalls.shxz_wrap.shsecurityKconfigKconfig.hardeningMakefileapparmorKconfigMakefilebpfMakefileintegrityKconfigMakefileevmKconfigMakefileimaKconfigMakefilekeysKconfigMakefileencrypted-keysMakefiletrusted-keysMakefileloadpinKconfigMakefileselinuxKconfigMakefileincludeclassmap.hinitial_sid_to_string.hsmackKconfigMakefiletomoyoKconfigMakefileyamaKconfigMakefilesoundKconfigMakefileac97KconfigMakefileaoaKconfigMakefilecodecsKconfigMakefilecoreMakefilefabricsKconfigMakefilesoundbusKconfigMakefilei2sbusMakefilearmKconfigMakefileatmelKconfigMakefilecoreKconfigMakefileossMakefileseqKconfigMakefileossMakefiledriversKconfigMakefilempu401Makefileopl3Makefileopl4MakefilepcspMakefilevxMakefilefirewireKconfigMakefilebebobMakefilediceMakefiledigi00xMakefilefirefaceMakefilefireworksMakefilemotuMakefileoxfwMakefiletascamMakefilehdaKconfigMakefileextMakefilei2cMakefileotherMakefileisaKconfigMakefilead1816aMakefilead1848Makefilecs423xMakefilees1688MakefilegalaxyMakefilegusMakefilemsndMakefileopti9xxMakefilesbMakefilewavefrontMakefilewssMakefilemipsKconfigMakefileossdmasoundKconfigMakefilepariscKconfigMakefilepciKconfigMakefileac97Makefileali5451MakefileasihpiMakefileau88x0Makefileaw2Makefileca0106Makefilecs46xxMakefilecs5535audioMakefilectxfiMakefileechoaudioMakefileemu10k1MakefilehdaKconfigMakefileice1712Makefilekorg1212MakefilelolaMakefilelx6464esMakefilemixartMakefilenm256MakefileoxygenMakefilepcxhrMakefileriptideMakefilerme9652MakefiletridentMakefilevx222MakefileymfpciMakefilepcmciaKconfigMakefilepdaudiocfMakefilevxMakefileppcKconfigMakefileshKconfigMakefilesocKconfigMakefileadiKconfigMakefileamdKconfigMakefileacpKconfigMakefilepsMakefileravenMakefilerenoirMakefilerplMakefilevangoghMakefileycMakefileatmelKconfigMakefileau1xKconfigMakefilebcmKconfigMakefilecirrusKconfigMakefilecodecsKconfigMakefiledwcKconfigMakefilefslKconfigMakefilegenericKconfigMakefilehisiliconKconfigMakefileimgKconfigMakefileintelKconfigMakefileatomMakefilesstMakefileavsMakefileboardsKconfigMakefileboardsKconfigMakefilecatptMakefilecommonMakefilekeembayMakefileskylakeMakefilejz4740KconfigMakefilekirkwoodKconfigMakefilemediatekKconfigMakefilecommonMakefilemt2701Makefilemt6797Makefilemt8173Makefilemt8183MakefilemesonKconfigMakefilemxsKconfigMakefilepxaKconfigMakefileqcomKconfigMakefileqdsp6MakefilerockchipKconfigMakefilesamsungKconfigMakefileshKconfigMakefilercarMakefilesofKconfigMakefileamdKconfigMakefileimxKconfigMakefileintelKconfigMakefilemediatekKconfigMakefilemt8186Makefilemt8195MakefilextensaKconfigMakefilespearKconfigMakefilesprdKconfigMakefilestiKconfigMakefilestmKconfigMakefilesunxiKconfigMakefiletegraKconfigMakefiletiKconfigMakefiletxx9KconfigMakefileuniphierKconfigMakefileux500KconfigMakefilexilinxKconfigMakefilextensaKconfigMakefilesparcKconfigMakefilespiKconfigMakefilesynthKconfigMakefileemuxMakefileusb6fireMakefileKconfigMakefilebcd2000MakefilecaiaqMakefilehifaceMakefileline6KconfigMakefilemiscMakefileusx2yMakefilevirtioKconfigMakefilex86KconfigMakefilexenKconfigMakefiletoolsMakefileaccountingMakefilearchx86intel_sdsiMakefilebpfMakefilebpftoolDocumentationMakefileMakefileresolve_btfidsMakefilerunqslowerMakefilebuildMakefileMakefile.buildMakefile.featureMakefile.includefeatureMakefiletestsexMakefilecgroupMakefilefirewireMakefilegpioMakefilehvMakefileiioMakefileincludetoolsbe_byteshift.hle_byteshift.hio_uringMakefilekvmkvm_statMakefilelaptopdslmMakefilefreefallMakefileledsMakefilelibapiMakefilebpfMakefilelockdepMakefileperfDocumentationMakefileMakefilesubcmdMakefiletraceeventDocumentationMakefileMakefilepluginsMakefileobjtoolMakefileobjtoolpciMakefilepcmciaMakefileperfDocumentationMakefileMakefileMakefile.configMakefile.perfarcharmMakefilearm64MakefilecskyMakefilemipsMakefilepowerpcMakefiles390MakefileshMakefilesparcMakefilex86MakefilextensaMakefilescriptsperlPerf-Trace-UtilMakefile.PLpoweracpiMakefileMakefile.configMakefile.rulestoolsacpidbgMakefileacpidumpMakefileecMakefilecpupowerMakefilebenchMakefiledebugi386MakefilekernelMakefilex86_64Makefilepm-graphMakefilex86intel-speed-selectMakefileturbostatMakefilex86_energy_perf_policyMakefilescriptsMakefile.archMakefile.includespiMakefiletestingnvdimmMakefileradix-treeMakefilescatterlistMakefileselftestsMakefileandroidMakefileionMakefilebpfMakefileMakefile.docsbpf_testmodMakefilebreakpointsMakefilecapabilitiesMakefilecgroupMakefilecoreMakefilecpu-hotplugMakefilecpufreqMakefiledamonMakefiledriversnetbondingMakefileteamMakefileefivarfsMakefileexecMakefilefilesystemsMakefilefirmwareMakefilefpuMakefileftraceMakefilefutexMakefilefunctionalMakefilegpioMakefileia64Makefileintel_pstateMakefileipcMakefilekcmpMakefilekexecMakefilekmodMakefilekvmMakefilelibMakefilelivepatchMakefilelockingMakefilemedia_testsMakefilemembarrierMakefilememfdMakefilememory-hotplugMakefilemountMakefilemqueueMakefilenetMakefileforwardingMakefilemptcpMakefilenetfilterMakefilensfsMakefilepowerpcMakefilealignmentMakefilebenchmarksMakefilecache_shapeMakefilecopyloopsMakefiledscrMakefileeehMakefilemathMakefilemceMakefilemmMakefilepapr_attributesMakefilepmuMakefileebbMakefilesampling_testsMakefileprimitivesMakefileptraceMakefilesignalMakefilestringloopsMakefileswitch_endianMakefilesyscallsMakefiletmMakefilevphnMakefileprctlMakefileprocMakefilepstoreMakefileptpMakefileptraceMakefilercutortureMakefileformalsrcu-cbmcMakefiletestsstore_bufferingMakefilerseqMakefilertcMakefileseccompMakefilesgxMakefilesigaltstackMakefilesizeMakefilesparc64MakefiledriversMakefilespliceMakefilestatic_keysMakefilesyncMakefilesysctlMakefiletc-testingMakefiletdxMakefiletimensMakefiletimersMakefiletpm2MakefileueventMakefileuserMakefilevDSOMakefilevmMakefilewatchdogMakefilex86MakefilezramMakefilevsockMakefilethermaltmonMakefileusbMakefileffs-aio-examplemultibuffhost_appMakefilesimplehost_appMakefileusbipMakefile.amlibsrcMakefile.amsrcMakefile.amvirtioMakefileringtestMakefilevhost_testMakefilevirtio-traceMakefilevmMakefilewmiMakefileusrKconfigMakefilevirtMakefilekvmKconfigMakefile.kvmlibKconfigMakefilevmlinux.hvmlinux.id/usr/src/kernels//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/alpha/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/plat-axs10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/plat-eznps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/plat-hsdk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/plat-sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arc/plat-tb10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/boot/bootp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-alpine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-artpec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-asm9260//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-axxia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-clps711x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-cns3xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-digicolor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-ebsa110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-efm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-ep93xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-footbridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-gemini//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-highbank//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-hisi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-imx/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-integrator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-iop13xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-iop32x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-iop33x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-ixp4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-keystone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-ks8695//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-lpc18xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-lpc32xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-moxart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-mv78xx0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-netx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-nomadik//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-npcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-nspire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-omap1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-omap2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-orion5x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-oxnas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-picoxcell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-prima2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-realview//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-rpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-s3c24xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-s3c64xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-s5pv210//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-sa1100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-socfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-tango//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-u300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-vexpress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-vt8500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-w90x900//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-zx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mach-zynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/nwfpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-iop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-orion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/plat-versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/probes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/probes/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/probes/uprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/vfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/al//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/apm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/broadcom/northstar2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/broadcom/stingray//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/lg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/socionext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/boot/dts/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kernel/probes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kvm/hyp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kvm/hyp/nvhe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/kvm/hyp/vhe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/arm64/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/c6x/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/h8300/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/hexagon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/hexagon/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/hexagon/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/hexagon/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/dig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/hp/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/hp/sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/hp/sim/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/hp/zx1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/sn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/sn/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/sn/kernel/sn2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/sn/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/sn/pci/pcibr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/ia64/uv/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/68000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/apollo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/atari//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/bvme6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/coldfire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/fpsp040//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/hp300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/ifpsp060//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/mvme147//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/mvme16x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/q40//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/sun3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/sun3/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/sun3x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/m68k/tools/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/microblaze/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/alchemy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/alchemy/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/alchemy/devboards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/ar7//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/ath25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/ath79//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/bcm47xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/bcm63xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/bcm63xx/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/bmips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/brcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/cavium-octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/img//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/ingenic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/mti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/pic32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/qca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/dts/xilfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/boot/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/cavium-octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/cavium-octeon/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/cavium-octeon/executive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/cobalt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/dec/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/emma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/emma/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/emma/markeins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/fw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/fw/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/fw/cfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/fw/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/fw/sni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/jazz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/jz4740//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lantiq/falcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lantiq/xway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lasat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lasat/image//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson32/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson32/ls1b//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson32/ls1c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64/common/cs5536//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64/fuloong-2e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64/lemote-2f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/loongson64/loongson-3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/mti-malta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/netlogic/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/netlogic/xlp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/netlogic/xlr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/paravirt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pic32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pic32/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pic32/pic32mzda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pistachio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pmcs-msp71xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pnx833x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pnx833x/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/pnx833x/stb22x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/rb532//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sgi-ip22//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sgi-ip27//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sgi-ip32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sibyte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sibyte/bcm1480//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sibyte/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sibyte/sb1250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sibyte/swarm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/sni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9/jmr3927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9/rbtx4927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9/rbtx4938//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/txx9/rbtx4939//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/vr41xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/vr41xx/casio-e55//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/vr41xx/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/mips/vr41xx/ibm-workpad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nds32/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/nios2/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/openrisc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/parisc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kernel/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kernel/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kernel/vdso64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/mm/book3s32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/mm/book3s64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/40x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/44x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/52xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/82xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/83xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/85xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/86xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/8xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/amigaone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/book3s//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/cell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/cell/spufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/chrp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/embedded6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/maple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/pasemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/powermac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/powernv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/ps3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/platforms/pseries//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/sysdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/sysdev/ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/sysdev/xics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/sysdev/xive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/powerpc/xmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/riscv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/riscv/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/riscv/kernel/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/riscv/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/riscv/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/appldata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/hypfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/kernel/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/kernel/vdso32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/kernel/vdso64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/s390/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-ap325rxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-cayman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-dreamcast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-ecovec24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-highlander//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-hp6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-kfr2r09//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-landisk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-lboxre2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-microdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-migor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-r2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-rsk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-sdk7780//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-sdk7786//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7206//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7343//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/770x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7721//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7722//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7724//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7751//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-se/7780//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-sh03//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-sh7763rdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boards/mach-x3proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/boot/romimage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/cchips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/cchips/hd6446x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/drivers/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/drivers/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/drivers/superhyway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh2a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh4a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/sh5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/cpu/shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/kernel/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/lib64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sh/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/prom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/sparc/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/kernel/skas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/os-Linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/os-Linux/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/os-Linux/skas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/um/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/unicore32/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/boot/compressed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/coco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/coco/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/crypto/sha1-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/crypto/sha256-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/crypto/sha512-mb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/entry//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/entry/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/entry/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/entry/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/events/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/events/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/ia32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/e820//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/numachip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/shared//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/asm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/generated//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/generated/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/generated/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/generated/uapi/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/include/uapi/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/apic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu/microcode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu/mtrr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu/resctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/cpu/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kernel/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/mm/pat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/ce4100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/geode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/intel-mid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/intel-mid/device_libs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/intel-quark//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/iris//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/olpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/scx200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/sfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/ts5500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/platform/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/purgatory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/realmode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/realmode/rm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/um//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/um/os-Linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/um/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/x86/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/boot/boot-elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/boot/boot-redboot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/boot/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/boot/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/platforms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/platforms/iss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/platforms/xt2000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/arch/xtensa/platforms/xtfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/block/partitions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/certs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/crypto/asymmetric_keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/crypto/async_tx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/accessibility//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/accessibility/braille//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/acpica//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/dptf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/nfit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/acpi/pmic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/amba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/auxdisplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/base/firmware_loader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/base/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/base/regmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/base/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/aoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/drbd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/mtip32xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/paride//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/rsxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/xen-blkback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/block/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bus/fsl-mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bus/mhi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bus/mhi/ep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/bus/mhi/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/cdrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/agp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/hw_random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/ipmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/mwave//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/tpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/tpm/st33zp24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/xilinx_hwicap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/char/xillybus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/axis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/axs10x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/h8300//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/imgtec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/ingenic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/keystone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/loongson1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/nxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/pistachio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/sirf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/socfpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/sunxi-ng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clk/zynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/connector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/counter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/cpuidle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/cpuidle/governors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/amcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/axis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/caam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/cavium/cpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/cavium/nitrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/cavium/zip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/ccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/ccree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/chelsio/chtls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/inside-secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/nx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_4xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_c3xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_c3xxxvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_c62x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_c62xvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_dh895xcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qat/qat_dh895xccvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/qce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/sunxi-ss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/ux500/cryp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/ux500/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/crypto/vmx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dax/hmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dax/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/devfreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/devfreq/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma-buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma-buf/heaps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/bestcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/dw-axi-dmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/dw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/hsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/idxd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/ioat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/ipu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/ppc4xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/ptdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/dma/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/edac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/eisa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/extcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/arm_scmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/efi/libstub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/efi/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/google//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/psci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/smccc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/firmware/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/fmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/fsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/amdgpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/amdkfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/amdgpu_dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/basics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/bios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/clk_mgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce112//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce120//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce60//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dce80//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn10//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn20//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn201//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn21//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn30//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn301//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn302//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn303//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn31//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn314//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn315//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dcn321//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/dsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dc/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dmub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/dmub/src//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules/color//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules/freesync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules/info_packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/display/modules/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/legacy-dpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/powerplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/powerplay/hwmgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/powerplay/smumgr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/swsmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/swsmu/smu11//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/swsmu/smu12//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/amd/pm/swsmu/smu13//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/armada//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/ast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/atmel-hlcdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge/adv7511//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge/analogix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/bridge/synopsys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/etnaviv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/exynos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/fsl-dcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/gma500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/gud//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/hisilicon/hibmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/hisilicon/kirin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/i915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/i915/gvt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/kmb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/logicvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/mgag200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/msm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/mxsfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/omapdrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/omapdrm/displays//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/omapdrm/dss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/pl111//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/qxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/radeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/rcar-du//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/scheduler//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/shmobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/sun4i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/tilcdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/tiny//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/tve200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/udl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/v3d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/vboxvideo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/vc4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/vgem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/vkms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/vmwgfx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/drm/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/host1x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/ipu-v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/gpu/vga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid/amd-sfh-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid/i2c-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid/intel-ish-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid/surface-hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hid/usbhid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hsi/clients//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hsi/controllers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwmon/pmbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwspinlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwtracing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwtracing/coresight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwtracing/intel_th//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/hwtracing/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/i2c/algos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/i2c/busses//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/i2c/muxes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/afe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/amplifiers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/buffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/chemical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common/cros_ec_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common/hid-sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common/ms_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common/ssp_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/common/st_sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/counter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/dac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/health//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/humidity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/imu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/imu/bmi160//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/imu/inv_mpu6050//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/imu/st_lsm6dsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/light//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/multiplexer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/orientation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/potentiometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/potentiostat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/pressure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/proximity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/temperature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iio/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/bnxt_re//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/efa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/hfi1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/hns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/irdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/mthca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/ocrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/qedr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/qib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/usnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/hw/vmw_pvrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/sw/rdmavt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/sw/rxe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/sw/siw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/iser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/isert//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/opa_vnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/srp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/infiniband/ulp/srpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/gameport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/joystick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/joystick/iforce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/keyboard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/mouse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/rmi4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/serio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/tablet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/input/touchscreen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu/arm/arm-smmu-v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu/arm/arm-smmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/iommu/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ipack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ipack/carriers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ipack/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/irqchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/divert//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/gigaset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hardware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hardware/avm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hardware/eicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hardware/mISDN//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hisax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/hysdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/i4l//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/isdnloop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/isdn/mISDN//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/lightnvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/macintosh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/macintosh/ams//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mcb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/md//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/md/bcache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/md/persistent-data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common/v4l2-tpg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/common/videobuf2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/dvb-core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/dvb-frontends//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/dvb-frontends/cxd2880//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/dvb-frontends/drx39xyj//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/adv748x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/cx25840//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/et8ek8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/m5mols//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/s5c73m3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/smiapp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/i2c/soc_camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/mmc/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/bt8xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/cobalt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/cx18//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/cx23885//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/cx25821//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/cx88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/ddbridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/dm1105//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/dt3155//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/intel/ipu3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/ivtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/mantis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/meye//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/netup_unidvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/ngene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/pluto2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/pt1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/pt3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/saa7134//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/saa7164//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/smipcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/solo6x10//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/sta2x11//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/ttpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/tw5864//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/tw68//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/pci/tw686x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/am437x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/cec-gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/coda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/exynos-gsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/exynos4-is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/marvell-ccic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/mtk-jpeg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/mtk-mdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/mtk-vcodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/mtk-vpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/omap3isp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/qcom/camss-8x16//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/qcom/venus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/rcar-vin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/rockchip/rga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/s3c-camif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/s5p-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/s5p-g2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/s5p-jpeg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/s5p-mfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/soc_camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti/bdisp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti/c8sectpfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti/delta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/sti/hva//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/tegra-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/ti-vpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/vimc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/vivid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/vsp1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/platform/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/radio/si470x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/radio/si4713//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/radio/wl128x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/rc/img-ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/rc/keymaps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/tuners//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/airspy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/as102//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/au0828//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/cpia2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/cx231xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/dvb-usb-v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/dvb-usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/em28xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/go7007//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/gspca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/gspca/gl860//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/gspca/m5602//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/gspca/stv06xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/hackrf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/hdpvr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/msi2500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/pulse8-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/pvrusb2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/pwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/rainshadow-cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/s2255//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/stk1160//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/stkwebcam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/tm6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/ttusb-budget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/ttusb-dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/usbtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/usbvision//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/uvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/usb/zr364xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/media/v4l2-core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memory/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memory/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memstick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memstick/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/memstick/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/message/fusion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/altera-stapl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/c2port//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/cardreader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/cb710//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/cxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/echo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/eeprom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/genwqe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/ibmasm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/lis3lv02d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/lkdtm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mei/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mei/pxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/card//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/cosm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/cosm_client//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/scif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/mic/vop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/ocxl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/sgi-gru//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/sgi-xp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/ti-st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/misc/vmw_vmci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mmc/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mmc/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/chips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/lpddr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/maps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/onenand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/raw/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/raw/bcm47xxnflash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/raw/brcmnand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/nand/raw/gpmi-nand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/parsers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/spi-nor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mtd/ubi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/appletalk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/arcnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/bonding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/c_can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/cc770//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/ifi_canfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/m_can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/mscan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/peak_canfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/rcar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/sja1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/softing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/usb/kvaser_usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/can/usb/peak_usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/dsa/b53//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/dsa/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/dsa/mv88e6xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/3com//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/8390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/adaptec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/aeroflex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/agere//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/alacritech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/alteon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/amazon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/amazon/ena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/amd/xgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/apm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/apm/xgene-v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/apm/xgene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/apple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/aquantia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/aquantia/atlantic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/aquantia/atlantic/hw_atl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/atheros//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/atheros/alx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/atheros/atl1c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/atheros/atl1e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/atheros/atlx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/aurora//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/broadcom/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/broadcom/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/broadcom/genet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/brocade//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/brocade/bna//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cadence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/calxeda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cavium/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cavium/liquidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cavium/octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cavium/thunder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/cxgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/cxgb3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/cxgb4vf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/inline_crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/inline_crypto/ch_ipsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/inline_crypto/ch_ktls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/chelsio/libcxgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cisco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cisco/enic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/cortina//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/davicom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/dec/tulip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/dlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/emulex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/emulex/benet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ezchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/faraday//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/freescale/dpaa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/freescale/fman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/freescale/fs_enet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/google//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/google/gve//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hisilicon/hns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hisilicon/hns3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hisilicon/hns3/hns3pf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hisilicon/hns3/hns3vf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/huawei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/huawei/hinic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/i825xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ibm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ibm/ehea//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ibm/emac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/e1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/e1000e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/fm10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/i40e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/iavf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/ice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/igb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/igbvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/igc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/ixgb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/ixgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/intel/ixgbevf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/marvell/mvpp2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/diag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/en/xsk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/en_accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/esw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlx5/core/steering//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlxbf_gige//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlxfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mellanox/mlxsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/micrel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/microsoft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/microsoft/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/moxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/myricom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/myricom/myri10ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/natsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/neterion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/neterion/vxge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp/flower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp/nfpcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp/nfpcore/nfp6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/netronome/nfp/nic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/nuvoton//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/nxp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/oki-semi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/oki-semi/pch_gbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/packetengines//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/pasemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/pensando//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/pensando/ionic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic/netxen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic/qede//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic/qlcnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qlogic/qlge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qualcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qualcomm/emac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/qualcomm/rmnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/rdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/rocker//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/samsung/sxgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/seeq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sfc/falcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sfc/siena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sgi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/silan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/smsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/socionext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/stmicro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/stmicro/stmmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/sun//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/synopsys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/tehuti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/toshiba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/tundra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/wiznet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/xircom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ethernet/xscale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/fddi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/fddi/skfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/fjes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/hamradio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/hippi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/hyperv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ipvlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/netdevsim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/plip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/slip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/thunderbolt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/vmxnet3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wan/lmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wimax/i2400m//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/admtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ar5523//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath11k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath12k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath5k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath6kl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/ath9k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/carl9170//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/wcn36xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ath/wil6210//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/b43//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/b43legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmfmac/bca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cyw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmfmac/wcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmsmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/broadcom/brcm80211/brcmutil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/cisco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/ipw2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/iwlegacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/iwlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/iwlwifi/dvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/iwlwifi/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intel/iwlwifi/mvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intersil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intersil/hostap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intersil/orinoco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intersil/p54//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/intersil/prism54//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/marvell/libertas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/marvell/libertas_tf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/marvell/mwifiex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt7603//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt7615//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt76x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt76x2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt7915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt7921//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt76/mt7996//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/mediatek/mt7601u//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/quantenna//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/quantenna/qtnfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ralink/rt2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtl818x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtl818x/rtl8180//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtl818x/rtl8187//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtl8xxxu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/btcoexist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8188ee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192ce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192cu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192de//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192ee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8192se//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8723ae//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8723be//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8723com//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtlwifi/rtl8821ae//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtw88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/realtek/rtw89//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/rsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/st/cw1200//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ti/wl1251//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ti/wl12xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ti/wl18xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/ti/wlcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/zydas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/wireless/zydas/zd1211rw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/net/xen-netback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/fdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/microread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/nfcmrvl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/nxp-nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/pn533//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/pn544//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/s3fwrn5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/st-nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/st21nfca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nfc/st95hf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw/epf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw/idt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/hw/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ntb/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nubus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nvme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nvme/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nvme/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/nvmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/of//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/of/unittest-data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/opp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/controller//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/controller/dwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/endpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/endpoint/functions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/pcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pci/switch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/perf/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/allwinner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/motorola//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/qualcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/ralink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/phy/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/aspeed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/berlin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/freescale//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/mvebu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/nomadik//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/sh-pfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/sirf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/stm32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/vt8500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pinctrl/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/chrome//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/olpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/dell-wmi-sysman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel/ifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel/pmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel/speed_select_if//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/platform/x86/intel/uncore-frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pnp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pnp/isapnp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pnp/pnpacpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pnp/pnpbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/power/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/power/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/power/supply//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/powercap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pps/clients//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pps/generators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ps3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/rapidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/rapidio/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/rapidio/switches//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/remoteproc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/reset/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/reset/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/reset/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/cio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/s390/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sbus/char//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/aacraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/aic7xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/aic7xxx/aicasm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/aic94xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/arcmsr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/be2iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/bfa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/bnx2fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/bnx2i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/csiostor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/cxgbi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/cxgbi/cxgb3i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/cxgbi/cxgb4i//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/cxlflash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/device_handler//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/esas2r//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/fcoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/fnic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/hisi_sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/ibmvscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/ibmvscsi_tgt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/isci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/libfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/libsas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/lpfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/megaraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/mpi3mr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/mpt3sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/mvsas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/pm8001//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/qedf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/qedi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/qla2xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/qla4xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/smartpqi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/snic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/sym53c8xx_2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/scsi/ufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sh/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sh/intc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sh/maple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sh/superhyway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/siox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/slimbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/sn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/amlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/bcm/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/bcm/brcmstb/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/fsl/qbman//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/fsl/qe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/gemini//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/lantiq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/tegra/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/versatile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soc/zte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/spmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/android/ion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/board//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/clocking-wizard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/comedi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/comedi/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/comedi/kcomedilib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/dgnc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/emxx_udc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fbtft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-dpaa2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-dpaa2/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-dpaa2/ethsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-dpaa2/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-mc/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fsl-mc/bus/dpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/fwserial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/gdm724x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/goldfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/greybus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/greybus/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/gs_fpgaboot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/addac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/impedance-analyzer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/meter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/iio/resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/ks7010//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/bcm2048//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/davinci_vpfe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/imx074//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/mt9t031//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/omap4iss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/tegra-vde//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/media/zoran//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/cdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/dim2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/most/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt29f_spinand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-eth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/mt7621-spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/netlogic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/nvec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/octeon-usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/octeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/olpc_dcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/pi433//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8188eu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8192e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8192e/rtl8192e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8192u//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8192u/ieee80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtl8723bs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtlwifi/btcoexist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rtlwifi/rtl8822be//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/rts5208//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/skein//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/sm750fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/speakup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/unisys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/unisys/visorhba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/unisys/visorinput//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/unisys/visornic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vboxvideo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vc04_services//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vc04_services/bcm2835-audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vc04_services/bcm2835-camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vme/devices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vt6655//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/vt6656//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/wilc1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/wlan-ng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/staging/xgifb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target/iscsi/cxgbit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target/loopback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target/sbp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/target/tcm_fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tee/optee//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/intel/int340x_thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/st//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thermal/ti-soc-thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/thunderbolt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/hvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/ipwireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/serdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/serial/8250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/serial/cpm_uart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/serial/jsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/tty/vt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/uio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/c67x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/chipidea//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/dwc2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/dwc3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget/udc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget/udc/aspeed-vhub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/gadget/udc/bdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/host/whci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/image//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/isp1760//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/misc/sisusbvga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/mon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/mtu3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/musb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/renesas_usbhs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/roles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/storage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec/altmodes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec/tcpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec/tipd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/typec/ucsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/usbip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/usb/wusbcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/uwb/i1480//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/uwb/i1480/dfu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa/alibaba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa/ifcvf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa/vdpa_sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vdpa/virtio_pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vfio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vfio/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vfio/platform/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vhost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/backlight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/aty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/geode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/i810//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/intelfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/kyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/matrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mb862xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mbx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mmp/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mmp/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/mmp/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/nvidia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/omap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/omap2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/omap2/omapfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/omap2/omapfb/displays//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/omap2/omapfb/dss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/riva//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/savage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/sis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/vermilion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/fbdev/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/video/logo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt/coco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt/coco/sev-guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt/coco/tdx-guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt/nitro_enclaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virt/vboxguest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/visorbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vlynq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vme/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/vme/bridges//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/w1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/w1/masters//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/w1/slaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/xen/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/xen/xen-pciback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/xen/xenbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/xen/xenfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/drivers/zorro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/adfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/affs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/afs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/autofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/befs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/bfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/btrfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/cachefiles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/coda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/cramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/debugfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/devpts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ecryptfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/efivarfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/efs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/exportfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ext2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ext4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/f2fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/fat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/freevxfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/fscache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/gfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/hfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/hfsplus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/hostfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/hpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/hugetlbfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/iomap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/isofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/jbd2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/jffs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/jfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/kernfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/minix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfs/blocklayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfs/filelayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfs/flexfilelayout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfs_common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nilfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/nls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/notify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/notify/dnotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/notify/fanotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/notify/inotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ntfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ocfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ocfs2/cluster//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ocfs2/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ocfs2/dlmfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/omfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/openpromfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/orangefs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/overlayfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/qnx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/qnx6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/reiserfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/romfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/squashfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/sysfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/sysv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/tracefs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ubifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/udf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/ufs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/fs/xfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/acpi/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/asm-generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/asm-generic/bitops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/asm-generic/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/8139too//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/apei/erst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/apei/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/cppc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/cpu/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/custom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/debugger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/ec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/legacy/tables//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/processor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/rev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/rev/override//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/spcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/system/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/system/power/states//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/acpi/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/advise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/alim1535//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/alim7101//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/allow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/allow/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd/sfh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd/xgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amd/xgbe/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amiga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/amilo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/aperture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/apple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/apple/mfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/aquantia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/cpuidle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/dma/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/dma/addr/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/enable/hugepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/enable/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/enable/split//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/enable/split/pmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/acpi/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/add//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/cache/line//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/cc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/devmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/devmem/is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/filter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/force/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/fortify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/gcov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/gcov/profile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/gigantic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/membarrier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/membarrier/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/non//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/non/overlapping//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/non/overlapping/address//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/pte//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/set//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/set/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/strict//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/strict/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/strict/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/sync/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/sync/core/before//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/syscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/uaccess//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/ubsan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/ubsan/sanitize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/has/zone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/have/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/have/nmi/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/hibernation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/may//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/may/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/may/have/pc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/might//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/might/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/might/have/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/might/have/pc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/mmap/rnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/mmap/rnd/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/mmap/rnd/compat/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/proc/kcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/select/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/sparsemem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports/atomic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/supports/optimized//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/suspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/use/builtin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/use/cmpxchg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/use/memremap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/use/queued//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/uses//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/uses/high//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/uses/high/vma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/uses/pg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/batched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/batched/unmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/batched/unmap/tlb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/compat/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/compat/ipc/parse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/default/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/general//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/huge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/huge/pmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/want/old/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/wants//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/wants/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/wants/dynamic/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arch/wants/thp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arm/gic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/arm/gic/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/associative//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asus/nb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asymmetric//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asymmetric/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asymmetric/public//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/asymmetric/public/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/async//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/async/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/async/tx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ata/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath10k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath11k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath9k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath9k/btcoex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ath9k/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/atomic64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/audit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/autofs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/autofs4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/auxiliary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/backlight//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/backlight/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/backlight/lcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/balloon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcm/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcm7xxx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcm87xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcma/driver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcma/driver/gmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcma/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bcma/host/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/be2net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bfq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bfq/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bfq/group//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/big//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/binary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/binfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bitfield//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bitfield/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bits//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bits/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/cgroup/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/loop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/loop/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/null//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/dev/ram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/mq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/blk/wbt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bnxt/flower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/boot/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hardlockup/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hung/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/hung/task/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/softlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bootparam/softlockup/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/jit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/jit/always//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/jit/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/kprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/stream//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/unpriv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bpf/unpriv/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/branch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/branch/profile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/brcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/brcmfmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/brcmfmac/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/brcmsmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/ebt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/ebt/802//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/ebt/mark//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/ebt/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/igmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bridge/vlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/broadcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bsd/process//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bsd/process/acct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/bnep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/bnep/mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/bnep/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/hcibtusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/hciuart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/mrvl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bt/rfcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bug/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/bug/on/data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/build//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/buildtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/buildtime/extable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/8dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/c/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/calc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/cc770//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/ems//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/esd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/kvaser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/peak//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/plx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/can/sja1000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cavium//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cb710//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cb710/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/sancov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/sancov/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/sane//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/stackprotector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/working//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/has/working/nosanitize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/is//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/optimize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cc/optimize/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cdrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cdrom/pktcdvd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cec/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/fs/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/lib/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ceph/lib/use/dns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/crda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/require//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/require/signed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/use/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfg80211/use/kernel/regdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cgroup/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/charger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/checkpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chelsio/inline//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chelsio/ipsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chelsio/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/chr/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cicada//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/allow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/allow/insecure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/dfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/smb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/weak//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cifs/weak/pw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clang//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clkbld//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clkdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clkevt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clocksource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clocksource/validate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clocksource/validate/last//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cls/u32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/clz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cmdline//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cmdline/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat/32bit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat/binfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat/for/u64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/compat/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/console/loglevel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/context//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/context/switch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/contig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/core/dump//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/core/dump/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/core/dump/default/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cortina//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/freq/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/freq/default/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/freq/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/freq/gov/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/ibpb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/ibrs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/idle/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/sup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cpu/unret//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crc/itu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crc32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cross//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cross/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/aes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/aes/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/aes/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/ansi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/blowfish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/blowfish/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/aesni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/aesni/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/aesni/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/aesni/avx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/aesni/avx2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/camellia/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast5/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast5/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast6/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/cast6/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/chacha20//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/chacha20/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/crc32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/crc32c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/crct10dif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/des3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/des3/ede//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/des3/ede/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev/ccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev/nitrox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev/padlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev/qat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/dev/sp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/drbg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/fips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/ghash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/ghash/clmul//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/ghash/clmul/ni//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/glue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/glue/helper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/michael//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/poly1305//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/poly1305/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/rng//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/avx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/avx2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/sse2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/serpent/sse2/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/sha1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/sha256//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/sha512//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/twofish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/twofish/avx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/twofish/avx/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/twofish/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/twofish/x86/64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/crypto/user/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/davicom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dcache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dcache/word//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/de//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/atomic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/kmemleak//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/kmemleak/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/kmemleak/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/kmemleak/mem/pool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/lock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/objects//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/objects/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/objects/percpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/objects/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/per/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/rt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/section//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/ww//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/debug/ww/mutex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/decompress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/fq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/hung/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/io/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/mmap/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/default/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/deferred/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/deferred/struct/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dell/smbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dell/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/detect//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/detect/hung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/devtmpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dlci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dlm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/bio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/multipath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/persistent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dm/thin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/api/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/coherent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/engine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/shared//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dma/virtual//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmabuf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmadevices//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmi/scan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmi/scan/machine//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmi/scan/machine/non//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dmi/scan/machine/non/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dp83640//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dp83822//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dp83848//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dp83867//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dp83tc811//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dptf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/amd/dc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/amdgpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/display/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/display/hdcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/display/hdmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/dp/aux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/export//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/export/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/fbdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/gem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/gem/shmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/capture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/fence//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/gvt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/heartbeat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/max/request//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/preempt/timeout//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/request//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/stop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/timeslice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/i915/userfault//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/kms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/kunit/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/load//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/load/edid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/mipi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/panel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/panel/orientation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/radeon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/drm/vram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dummy/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/au8522//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/av7110//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/b2c2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/b2c2/flexcop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/budget//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/dummy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/firedtv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/gp8psk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/ttusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/tuner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/af9005//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/cinergy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/dibusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/nova//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/nova/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/technisat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dvb/usb/umt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dw/dmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dwmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic/ftrace/with//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/dynamic/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/e1000e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/early/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/early/printk/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/edac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/edac/atomic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/edac/decode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/edac/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/eeepc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/eeprom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/dev/path//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/rci2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/vars//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/vars/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efi/vars/pstore/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/efivar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/enable/must//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/enclosure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/encrypted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/energy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ethtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/evm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/evm/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/exclusive//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/exclusive/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/exportfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/exportfs/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ext4/use/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/extra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/f71808e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fail//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fail/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fail/make//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fail/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fail/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fair//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fair/group//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fanotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fanotify/access//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fat/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fat/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fault//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fault/injection//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fault/injection/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb/boot/vesa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb/cfb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fb/sys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fcoe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fips/signature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fix/earlycon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fixed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/font//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fortify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/frame//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/framebuffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/framebuffer/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/framebuffer/console/deferred//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/framebuffer/console/detect//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fscache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fscache/object//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ftrace/mcount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fujitsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/function/error//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/function/graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fuse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fusion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fusion/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/futex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw/attr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw/cfg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw/cs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw/loader//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/fw/loader/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gact//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/bug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/bug/relative//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/calibrate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/clockevents//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/clockevents/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/cmos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/early//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/find//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/find/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/irq/effective//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/irq/effective/aff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/irq/matrix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/irq/reservation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/msi/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/pending//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/smp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/smp/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/strncpy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/strncpy/from//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/strnlen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/generic/vdso/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gfs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gfs2/fs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gfs2/fs/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gigaset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gpiolib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gpiolib/fastpath//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/grace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/gup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/haltpoll//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hangcheck//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardened//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardened/usercopy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardirqs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardirqs/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardlockup/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hardlockup/detector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/has/ioport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hash/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/acpi/apei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/aligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/aligned/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/compat/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/huge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/mmap/rnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/mmap/rnd/compat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/node//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/node/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/thread/struct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/transparent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/transparent/hugepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/userfaultfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/vmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/within//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/arch/within/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/bootmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/bootmem/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/cmpxchg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/context//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/copy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/copy/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/dynamic/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/dynamic/ftrace/with//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/dynamic/ftrace/with/direct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/ebpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/efficient//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/efficient/unaligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/exit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/ftrace/mcount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/function//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/function/error//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/function/graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/gcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/hardened//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/hardened/usercopy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/hardlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/hardlockup/detector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/ioremap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/irq/exit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/irq/exit/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/irq/exit/on/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/irq/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kprobes/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/cpu/relax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/dirty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/kvm/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/mixed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/mixed/breakpoints//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/mmiotrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/mod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/mod/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/move//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/pcspkr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/perf/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/perf/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/perf/user/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/posix/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/posix/cpu/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/posix/cpu/timers/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/regs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/regs/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/regs/and/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/regs/and/stack/access//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/reliable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/sched/avg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/setup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/setup/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/setup/per/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/syscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/unstable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/unstable/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/user/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/virt/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/have/virt/cpu/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hdlc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hdmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hdmi/lpe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/headers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hibernate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/battery//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/betop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/logitech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/custom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/inclinometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hid/sensor/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/high//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/high/res//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/16//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/avm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/avm/a1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/bkm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/enternow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/fritz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/hfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/netjet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hisax/sct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hmm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hotplug/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hotplug/pci/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hpet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hpet/emulate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hpwdt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hpwdt/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hsa/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hsu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hugetlb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hw/random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hwlat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hwmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hwpoison//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hypervisor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hysdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/hz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/amd756//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/designware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/diolan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/helper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/nforce2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/pca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i2c/tiny//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i40e//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i6300esb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/i8253//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ia32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ia32/feat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ib700//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/icplus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ideapad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/idle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/idle/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ie6xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/igb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iio/consumers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iio/consumers/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iio/kfifo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iio/triggered//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/illegal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/illegal/pointer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/appraise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/default/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/lsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/measure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/measure/pcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/read//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/secure/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/secure/and/or//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/secure/and/or/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/sig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ima/write//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/diag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/esp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/udp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet6/esp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inet6/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/addr/trans//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/bnxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/ipoib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/on/demand//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/opa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/infiniband/vmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/init/env//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/init/env/arg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/initramfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/inotify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/ati//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/atlas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/ff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/gpio/rotary//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/keyspan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/mousedev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/input/mousedev/screen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/instruction//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/int340x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/integrity/asymmetric//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/integrity/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/integrity/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/hfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/hid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/idxd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/iommu/floppy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/iommu/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/ish//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/ishtp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/pch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/pmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/rapl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/soc/dts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/soc/dts/iosf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/speed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/speed/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/th//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/turbo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/turbo/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/uncore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/uncore/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/intel/xway//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/interval//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/io/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/io/delay/type//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iommu/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iommu/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iosched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iosf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/advanced//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/fib/trie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/mroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/mroute/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/nf/arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/nf/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/nf/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/pimsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/route//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/set//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/set/bitmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/set/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/set/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/mh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/mh/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/pe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/proto/ah//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/sh/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip/vs/tab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip6/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip6/nf/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ip6/nf/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipmi/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipmi/dmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipmi/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipmi/plat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ippp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/mroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/mroute/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/ndisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/optimistic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/pimsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/route//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/router//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ipv6/sit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/imon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/ite//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/jvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/mce/kbd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/nec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/rc5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/rc6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/sanyo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/sony//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ir/winbond//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/irq/bypass//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/irq/domain//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/irq/forced//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/irq/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isa/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iscsi/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iscsi/ibft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iscsi/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/capi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/capi/capidrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/drv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/drv/avmb1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/isdn/tty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iso9660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/it87//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/it8712f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/itco//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/itco/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iwlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iwlwifi/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/iwlwifi/opmode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ixgbe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ixgbevf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kallsyms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kallsyms/absolute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kallsyms/base//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/karma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kexec/bzimage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kexec/bzimage/verify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/keyboard//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kprobes/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kunit/all//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kunit/example//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/async//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/external//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/external/write//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/generic/dirtylog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/kvm/generic/dirtylog/read//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/l2tp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lcd/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/led//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/led/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/brightness//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/brightness/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/clevo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/lp55xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/leds/trigger/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/legacy/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/linear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/linear/ranges//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/linear/ranges/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/liquidio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/list/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/load//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/load/uefi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/debugging//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/down//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/down/in//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/down/in/efi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/down/in/efi/secure//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lock/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/chains//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/circular//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/circular/queue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/stack/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockdep/stack/trace/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/log/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/log/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/log/cpu/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/log/cpu/max/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/logitech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/logo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/logo/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/loopback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lsi/et1011c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lsm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lsm/mmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lsm/mmap/min//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lwtunnel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lz4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/lzo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/rc/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/sta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/sta/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mac80211/sta/hash/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/machz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/macintosh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/magic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/magic/sysrq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/magic/sysrq/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mantis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mapping//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mapping/dirty//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/marvell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/marvell/10g//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/max/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/maxlinear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/md//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mdio/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mdio/mscc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/analog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/analog/tv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/camera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/cec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/digital//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/digital/tv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/subdrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/tuner//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/media/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/megaraid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mellanox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mem/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memcg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memcpy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memcpy/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memstick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memstick/jmicron//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memstick/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/memstick/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/message/loglevel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mfd/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mfd/intel/lpss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mfd/sm501//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mhi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mhi/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mhi/bus/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/micrel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/microchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/microchip/t1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/microcode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/microsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/minix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/misc/rtsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/misdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx4/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/core/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/en//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/sf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/sw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlx5/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlxreg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlxsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlxsw/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mlxsw/spectrum//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/block//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/ricoh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/sdhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmc/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmconf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu/gather//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu/gather/merge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu/gather/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu/gather/rcu/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mmu/gather/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modify//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modify/ldt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/module/force//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/module/sig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/module/srcversion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modules//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modules/tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modules/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/modules/use/elf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/elan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/elan/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/ps2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/ps2/elantech//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/ps2/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mouse/synaptics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mptcp/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mq/iosched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/msdos//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mspro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt76//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt76/connac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt76x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt76x02//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt76x2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mt7921//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/cfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/map//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/map/bank//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/map/bank/width//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/ubi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/ubi/beb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtd/ubi/wl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr/sanitizer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr/sanitizer/enable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr/sanitizer/spare//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr/sanitizer/spare/reg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mtrr/sanitizer/spare/reg/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mutex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mutex/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mutex/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mwifiex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/mxm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/myri10ge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/n//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/national//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/dma/map//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/multiple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per/cpu/embed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per/cpu/embed/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per/cpu/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/per/cpu/page/first//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/need/sg/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/act/tunnel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/cls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/drop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/ematch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/ip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/ipgre//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/l3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/l3/master//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/poll//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/sch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/sch/fq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/sch/mqprio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/sock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/tc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/tc/skb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/team/mode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/udp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/net/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netconsole//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netdev/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netdev/addr/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/family//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/netlink/glue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/xt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/xt/match//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netfilter/xt/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/network//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/network/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/netxen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/conntrack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/conntrack/netbios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/ct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/ct/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/ct/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/defrag//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/dup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/flow/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/nat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/nat/snmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/reject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/socket//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/tables//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nf/tproxy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfp/app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfp/app/abm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/acl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/use/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v4/1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v4/1/implementation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v4/1/implementation/id//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfs/v4/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfsd/v2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfsd/v3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfsd/v4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nfsd/v4/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/dup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/fib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/flow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/fwd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nft/reject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nitro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nls/codepage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nls/iso8859//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nls/koi8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nls/mac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/no//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/no/hz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nodes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nouveau//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nouveau/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nr/cpus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nr/cpus/range//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ntb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/numa/keep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nvme//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nvme/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nvme/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/nvsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/oid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/old//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/openvswitch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/oprofile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/oprofile/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/optimize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/osf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/osnoise//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/output//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/overlay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/page/table//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/panasonic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/panic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/panic/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/panic/on/oops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/paravirt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/paravirt/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/parport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/parport/not//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/partition//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pci/lockless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pci/msi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pci/msi/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pci/pf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcie/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcieaer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcieaspm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pcspkr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/perf/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/perf/events/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/perf/events/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/persistent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pgtable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/phys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/phys/addr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/phys/addr/t//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pkcs7//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pkcs7/message//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/plugin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/advanced//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/generic/domains//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/sleep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/std//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pm/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pmic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pnfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pnfs/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pnfs/flexfile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/posix/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/posix/cpu/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/posix/cpu/timers/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/posix/mqueue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ppp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ppp/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pps/client//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/preempt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/preemptirq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/prevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/prevent/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/prime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/print//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/print/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/printk/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/printk/safe/log//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/printk/safe/log/buf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/probe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/pid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/thermal/mmio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/vmcore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/proc/vmcore/device//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/prove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/provide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/provide/ohci1394//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/provide/ohci1394/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/psi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/psi/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pstore/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pstore/deflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pstore/deflate/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ptp/1588//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ptp/1588/clock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/pwm/lpss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qcom/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qfmt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qrtr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/qsemi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/queued//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/quota//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/quota/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/quotactl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/radio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/raid6/pq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/random//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/random/trust//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/random32//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/randomize//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/randomize/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/randomize/memory/physical//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rational//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rational/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/raw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rc/ati//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/boost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/cpu/stall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/nocb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/stall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rcu/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/reed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/reed/solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/regmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/regmap/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/resource//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/resource/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rfkill//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rhel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ring//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ring/buffer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rmi4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rmi4/2d//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rmi4/f03//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rpcsec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rpcsec/gss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2800//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2800/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2800pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2800usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2x00//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rt2x00/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/drv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/drv/ds3232//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/drv/m41t80//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/hctosys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/i2c/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/intf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/lib/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/mc146818//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtc/systohc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtl8192c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtl8723//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtlwifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtw88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rtw89//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/runtime/testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rwsem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rwsem/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/rwsem/spin/on//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sample//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sample/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sample/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sata//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sata/ahci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sata/mobile//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sata/mobile/lpm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sbc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sbc/fitpc2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scf/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sched/mc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sched/omit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sched/omit/frame//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/bnx2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/bnx2x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/chelsio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/cxgb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/dh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/dh/hp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/mpt2sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/mpt2sas/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/mpt3sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/mpt3sas/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/qla//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/sas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/sas/host//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/scan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/scsi/srp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp/cookie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp/cookie/hmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp/default/cookie//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sctp/default/cookie/hmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/section//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/section/mismatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/section/mismatch/warn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/network//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/avc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/checkreqprot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/sid2str//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/sid2str/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/sidtab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/selinux/sidtab/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/security/writable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/select/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/dell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/fam15h//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/i5k//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/lis3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/mlxreg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/ntc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/sch56xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sensors/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/8250//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/8250/many//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/8250/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/8250/runtime//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/8250/share//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/arc/nr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serial/multi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serio/altera//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/serio/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sfc/mcdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sfc/siena//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sfc/siena/mcdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sgetmask//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sgi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sgl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/shuffle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/shuffle/page//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/signed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/signed/pe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/signed/pe/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/skb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/slab//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/slab/freelist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/slip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/slub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/slub/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sms/sdio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sms/siano//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sms/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/smsc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/smsc/sch311x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ac97/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ac97/power/save//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/atiixp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/compress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/cs46xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/cs46xx/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ctl/fast//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/ctl/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/dynamic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/emu10k1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/es1968//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/codec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/codec/ca0132//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/cs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/cs/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/ext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/input/beep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/patch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/power/save//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/prealloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/scodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/hda/scodec/cs35l41//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/intel/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/jack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/jack/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/maestro3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/mpu401//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/opl3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/opl3/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/oxygen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/pcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/pcm/xrun//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/seq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/seq/hrtimer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/seq/midi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/sequencer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/acpi/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/amd/renoir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/amd/vangogh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/amd/yc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/cs35l41//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/hdac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/i2c/and//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bdw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bdw/rt5650//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bdw/rt5677//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/broadwell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bxt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bxt/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bxt/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bxt/rt298//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt/cht//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt/cht/cx2072x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt/cht/da7213//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt/cht/es8316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/byt/cht/nocodec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bytcr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bytcr/rt5640//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/bytcr/rt5651//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw/max98090//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw/max98090/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw/nau8824//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw/rt5645//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cht/bsw/rt5672//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cml/lp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cml/lp/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/cml/lp/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/ehl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/ehl/rt5660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/glk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/glk/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/glk/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/glk/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/glk/rt5682/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/haswell//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/da7219/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/da7219/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/rt5660//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/rt5663//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/rt5663/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/rt5663/rt5514//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/kbl/rt5663/rt5514/max98927//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/hda/dsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/hda/dsp/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/nau88l25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/nau88l25/max98357a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/nau88l25/ssm4567//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skl/rt286//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skylake//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/skylake/ssp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/cml//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/cml/rt1011//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/cml/rt1011/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/da7219//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/da7219/max98373//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/es8336//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/maxim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/nau8825//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/pcm512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/realtek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/ssp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/ssp/amp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sof/wm8804//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/soundwire/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/user/friendly//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/intel/user/friendly/long//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/max98373//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/pcm512x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt1308//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt1316//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt1318//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt5514//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt5677//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt5682//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt700//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt711//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt711/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt712/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt715//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/rt715/sdca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sdw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/hda/audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/hda/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/atom/hifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/hifi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/hifi/ep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/intel/soundwire/link//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/probe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/sof/probe/work//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/topology//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/topology/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/utils//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/utils/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/wm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/soc/wm8804//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/sst/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/sst/atom/hifi2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/sst/atom/hifi2/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/synth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/usb/caiaq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/verbose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/via82xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/snd/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sock/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sock/validate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/soft//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/softlockup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/solaris//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/solaris/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sony//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sonypi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sound/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sound/oss/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/soundwire/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sp5100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sparse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sparsemem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sparsemem/vmemmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/speculation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/spi/pxa2xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/split//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/split/ptlock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs/decomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs/decomp/multi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs/file//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs/fragment//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/squashfs/fragment/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stackprotector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stacktrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stm/proto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stm/proto/sys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stm/source//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stmmac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/stream//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/strict//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/strict/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/strict/module//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/strip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/strip/asm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sun//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sunrpc/xprt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/suspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/symbolic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/syn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/synclink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sysctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sysctl/exception//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sysctl/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sysfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/system//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/system/blacklist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/system/blacklist/hash//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/system/data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/system/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/sysvipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tablet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tablet/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tablet/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/task//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/task/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/task/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tasks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tasks/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tasks/rude//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tasks/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcg/tis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcg/tis/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcg/tis/st33zp24//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tcp/cong//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tdx/guest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/teranetics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/test/list//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/test/string//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/textsearch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/default/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/default/gov/step//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/emergency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/emergency/poweroff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/emergency/poweroff/delay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/gov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/gov/bang//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/gov/fair//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/gov/step//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/gov/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thermal/writable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thinkpad//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thinkpad/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thinkpad/acpi/alsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thinkpad/acpi/hotkey//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thread//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thread/info//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/thread/info/in//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tick//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tifm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tigon3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/time/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/timerlat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tipc/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tmpfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tmpfs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/topstar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/torture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/toshiba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/toshiba/bt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/touchscreen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/touchscreen/wacom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/trace/irqflags//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/trace/irqflags/nmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tracer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tracer/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tracing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/trusted//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ttpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/typec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/typec/dp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/typec/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ucs2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/ucsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/udf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uefi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uefi/cper//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uio/pdrv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uninline//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uninline/spin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/unix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/unix98//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/unixware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/unwinder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uprobe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ali//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/announce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/announce/new//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/arch/has//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/autosuspend//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/conn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ehci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ehci/root//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ehci/root/hub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ehci/tt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ezusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/few//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/few/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ftdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/gspca//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/gspca/ov534//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/gspca/xirlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/hsic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/hwa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/led//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/leds/trigger//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/ax88179//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/cdc/subset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/cx82310//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/huawei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/huawei/cdc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/net/rndis//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ohci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ohci/hcd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/ohci/little//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/pulse8//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/pwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/pwc/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/rainshadow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/role//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/roles//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/roles/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/digi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/edgeport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/ftdi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/keyspan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/kobil//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/mct//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/mos7715//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/safe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/serial/xsens//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/sierra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/storage//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/storage/cypress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/storage/ene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/uhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/video/class//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/video/class/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/wusb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb/xhci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/usb4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/use//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/use/percpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/use/percpu/numa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/use/percpu/numa/node//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/user/return//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/user/stacktrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uvc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vdpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vdpa/sim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vfat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vfio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vfio/iommu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vfio/mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vfio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vga/arb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vga/arb/max//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vhost//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/via//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/au0828//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/cx18//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/cx231xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/cx88//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/em28xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/fb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/ir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/pvrusb2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/saa7134//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/saa7146//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/video/tm6000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/videobuf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/videobuf/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/videobuf2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/videobuf2/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virt/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virt/cpu/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virt/to//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virtio/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/virtio/vsockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vitesse//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vlan/8021q//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vm/event//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vmap//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vmware/vmci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vsockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vt/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vt/hw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/vt/hw/console//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/w83627hf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/w83877f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/w83977f//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/want//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/want/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/watchdog/handle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/watchdog/handle/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/watchdog/open//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/wdat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/wlan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/wlan/vendor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x509//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x509/certificate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/64/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/acpi/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/amd/freq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/amd/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/amd/pstate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/amd/pstate/default//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/bootparam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/bootparam/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/bootparam/memory/corruption//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/check//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/check/bios//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/cpa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/decoder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/extended//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/hv/callback//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/intel/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/intel/memory/protection//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/intel/tsx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/intel/tsx/mode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/internode//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/internode/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/l1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/l1/cache//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/local//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/mcelog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/mem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/minimum//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/minimum/cpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/need//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/p4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/pkg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/pkg/temp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/platform/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/pm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/pmem//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/pmem/legacy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/powernow//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/ptdump//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/reroute//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/reroute/for//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/reroute/for/broken//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/reroute/for/broken/boot//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/speedstep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/supports//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/supports/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/vmx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/vmx/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/x86/vsyscall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xarray//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xdp/sockets//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xfrm/sub//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xfs/posix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/xz/dec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/yenta//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/yenta/ene//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/zlib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/zone//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/config/zsmalloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/crypto/internal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm-backport//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm-backport/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/drm/ttm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/bus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/clock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/display//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/interrupt-controller//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/pwm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/spmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/dt-bindings/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/generated//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/generated/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/generated/uapi/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/amba//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/avf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/bcma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/byteorder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/can/dev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/can/platform//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/clk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/crush//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/decompress//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/extcon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/firmware/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/firmware/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/firmware/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/fpga//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/fsl/bestcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/accel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/adc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/dac//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/frequency//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/gyro//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/imu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/magnetometer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/iio/timer//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/input//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/irqchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/lockd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mailbox//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/abx500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/arizona//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/da9052//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/da9055//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/da9062//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/da9063//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/da9150//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/mt6323//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/mt6397//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/pcf50633//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/syscon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/wm831x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/wm8350//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mfd/wm8994//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mlx4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mlx5//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/mux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/net/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter_arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter_bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter_ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/netfilter_ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/pcs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/phy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/phy/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/pinctrl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/platform_data//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/platform_data/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/platform_data/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/qed//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/regulator//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/remoteproc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/reset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/actions//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/dove//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/renesas//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/soundwire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/ssb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/ulpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/unaligned//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/uwb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/linux/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/math-emu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/media//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/media/davinci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/media/drv-intf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/media/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/media/tpg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/memory//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/iucv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/mana//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/netfilter/ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/netfilter/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/netns//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/phonet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/net/tc_act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/ras//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/arc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/at91//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/bcm2835//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/brcmstb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/fsl/qe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/nps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/sa1100//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/sound/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/sound/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/sound/sof/ipc4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/target//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/target/iscsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/trace/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/asm-generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/drm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/byteorder//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/cifs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/dvb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/genwqe//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/hdlc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/hsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/isdn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/mmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter_arp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter_bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter_ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/netfilter_ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/nfsd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/raid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/tc_act//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/tc_ematch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/linux/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/mtd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/rdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/rdma/hfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/scsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/scsi/fc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/sound/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/sound/intel/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/sound/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/uapi/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/video//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/xen/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/xen/interface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/xen/interface/hvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/include/xen/interface/io//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/init//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/bpf/preload//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/bpf/preload/iterators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/debug/kdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/dma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/gcov//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/irq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/kcsan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/rcu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/time//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/kernel/trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/842//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/crypto//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/dim//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/fonts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/kunit//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/lz4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/lzo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/math//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/mpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/pldmfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/raid6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/raid6/test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/reed_solomon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/vdso//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/xz//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/zlib_deflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/zlib_dfltcc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/zlib_inflate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/lib/zstd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/mm/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/mm/kasan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/6lowpan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/802//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/8021q//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/9p//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/appletalk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/atm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ax25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/batman-adv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bluetooth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bluetooth/bnep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bluetooth/cmtp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bluetooth/hidp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bluetooth/rfcomm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bpfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bridge//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/bridge/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/caif//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/can//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ceph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/dcb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/dccp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/dccp/ccids//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/decnet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/decnet/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/dns_resolver//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/dsa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ethernet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ethtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/hsr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ieee802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ieee802154/6lowpan//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ife//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv4/bpfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv4/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv6/ila//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ipv6/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/iucv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/kcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/key//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/l2tp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/l3mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/lapb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/llc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/mac80211//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/mac802154//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/mpls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/ncsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netfilter/ipset//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netfilter/ipvs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netlabel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netlink//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/netrom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/nfc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/nfc/hci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/nfc/nci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/nsh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/openvswitch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/packet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/phonet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/psample//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/qrtr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/rds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/rfkill//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/rose//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/rxrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/sched//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/sctp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/smc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/strparser//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/sunrpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/sunrpc/auth_gss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/sunrpc/xprtrdma//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/switchdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/tipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/tls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/unix//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/vmw_vsock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/wimax//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/wireless//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/x25//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/xdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/net/xfrm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/auxdisplay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/configfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/connector//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/hidraw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/hw_breakpoint//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/kdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/kfifo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/kobject//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/kprobes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/mei//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/mic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/mic/mpssd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/nitro_enclaves//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/qmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/rpmsg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/trace_events//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/trace_printk//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/uhid//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/v4l//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/vfio-mdev//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/vfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/samples/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/basic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/clang-tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/api/alloc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/api/debugfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/free//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/iterators//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/locks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/null//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/coccinelle/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/dtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/dtc/include-prefixes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/dtc/libfdt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/gcc-plugins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/gdb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/gdb/linux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/genksyms//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/lxdialog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/auto_submenu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/choice_value_with_m_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/err_recursive_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/err_recursive_inc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/inter_choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/new_choice_with_dep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/no_write_if_dep_unmet//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/preprocess//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/preprocess/builtin_func//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/preprocess/circular_expansion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/preprocess/escape//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/preprocess/variable//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/kconfig/tests/rand_nested_choice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/ksymoops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/mod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/package//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/selinux/genheaders//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/scripts/selinux/mdp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/apparmor//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/integrity//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/integrity/evm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/integrity/ima//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/keys/encrypted-keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/keys/trusted-keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/loadpin//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/selinux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/selinux/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/smack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/tomoyo//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/security/yama//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa/codecs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa/fabrics//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa/soundbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/aoa/soundbus/i2sbus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/core/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/core/seq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/core/seq/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers/mpu401//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers/opl3//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers/opl4//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers/pcsp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/drivers/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/bebob//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/dice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/digi00x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/fireface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/fireworks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/motu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/oxfw//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/firewire/tascam//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/hda/ext//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/i2c//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/i2c/other//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/ad1816a//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/ad1848//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/cs423x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/es1688//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/galaxy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/gus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/msnd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/opti9xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/sb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/wavefront//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/isa/wss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/oss//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/oss/dmasound//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/parisc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ac97//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ali5451//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/asihpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/au88x0//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/aw2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ca0106//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/cs46xx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/cs5535audio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ctxfi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/echoaudio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/emu10k1//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/hda//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ice1712//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/korg1212//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/lola//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/lx6464es//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/mixart//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/nm256//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/oxygen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/pcxhr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/riptide//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/rme9652//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/trident//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/vx222//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pci/ymfpci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pcmcia/pdaudiocf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/pcmcia/vx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/ppc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/adi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/acp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/ps//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/raven//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/renoir//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/rpl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/vangogh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/amd/yc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/atmel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/au1x//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/bcm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/cirrus//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/codecs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/dwc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/fsl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/generic//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/hisilicon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/img//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/atom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/atom/sst//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/avs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/avs/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/boards//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/catpt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/keembay//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/intel/skylake//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/jz4740//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/kirkwood//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek/common//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek/mt2701//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek/mt6797//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek/mt8173//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mediatek/mt8183//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/meson//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/mxs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/pxa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/qcom//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/qcom/qdsp6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/rockchip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/samsung//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sh/rcar//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/amd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/imx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/intel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/mediatek//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/mediatek/mt8186//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/mediatek/mt8195//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sof/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/spear//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sprd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/stm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/sunxi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/tegra//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/ti//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/txx9//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/uniphier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/ux500//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/xilinx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/soc/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/synth//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/synth/emux//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/6fire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/bcd2000//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/caiaq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/hiface//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/line6//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/misc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/usb/usx2y//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/sound/xen//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/accounting//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/arch/x86/intel_sdsi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/bpf/bpftool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/bpf/bpftool/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/bpf/resolve_btfids//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/bpf/runqslower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/build//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/build/feature//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/build/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/build/tests/ex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/firewire//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/hv//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/iio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/include//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/include/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/io_uring//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/kvm/kvm_stat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/laptop//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/laptop/dslm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/laptop/freefall//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/leds//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/api//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/lockdep//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/perf/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/subcmd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/traceevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/traceevent/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/lib/traceevent/plugins//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/objtool//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/pci//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/pcmcia//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/Documentation//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/arm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/arm64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/csky//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/mips//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/s390//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/sh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/sparc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/arch/xtensa//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/scripts/perl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/perf/scripts/perl/Perf-Trace-Util//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/acpi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/acpi/tools//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/acpi/tools/acpidbg//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/acpi/tools/acpidump//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/acpi/tools/ec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower/bench//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower/debug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower/debug/i386//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower/debug/kernel//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/cpupower/debug/x86_64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/pm-graph//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/x86/intel-speed-select//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/x86/turbostat//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/power/x86/x86_energy_perf_policy//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/scripts//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/spi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/nvdimm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/radix-tree//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/scatterlist//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/android//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/android/ion//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/bpf//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/bpf/bpf_testmod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/breakpoints//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/capabilities//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/cgroup//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/core//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/cpu-hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/cpufreq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/damon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/drivers/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/drivers/net/bonding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/drivers/net/team//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/efivarfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/exec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/filesystems//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/firmware//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/fpu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/ftrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/futex//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/futex/functional//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/gpio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/ia64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/intel_pstate//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/ipc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/kcmp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/kexec//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/kmod//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/lib//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/livepatch//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/locking//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/media_tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/membarrier//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/memfd//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/memory-hotplug//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/mount//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/mqueue//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/net//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/net/forwarding//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/net/mptcp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/netfilter//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/nsfs//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/alignment//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/benchmarks//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/cache_shape//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/copyloops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/dscr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/eeh//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/math//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/mce//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/mm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/papr_attributes//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/pmu//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/pmu/ebb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/pmu/sampling_tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/primitives//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/signal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/stringloops//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/switch_endian//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/syscalls//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/tm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/powerpc/vphn//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/prctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/proc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/pstore//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/ptp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/ptrace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rcutorture//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rcutorture/formal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rcutorture/formal/srcu-cbmc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rcutorture/formal/srcu-cbmc/tests/store_buffering//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rseq//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/rtc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/seccomp//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sgx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sigaltstack//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/size//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sparc64//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sparc64/drivers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/splice//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/static_keys//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sync//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/sysctl//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/tc-testing//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/tdx//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/timens//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/timers//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/tpm2//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/uevent//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/user//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/vDSO//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/watchdog//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/x86//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/selftests/zram//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/testing/vsock//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/thermal//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/thermal/tmon//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/ffs-aio-example//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/ffs-aio-example/multibuff//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/ffs-aio-example/multibuff/host_app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/ffs-aio-example/simple//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/ffs-aio-example/simple/host_app//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/usbip//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/usbip/libsrc//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/usb/usbip/src//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/virtio//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/virtio/ringtest//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/virtio/vhost_test//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/virtio/virtio-trace//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/vm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/tools/wmi//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/usr//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/virt//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/virt/kvm//usr/src/kernels/4.18.0-522.rt7.311.el8.x86_64+debug/virt/lib/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz3Tx86_64-redhat-linux-gnu                                                                                                                  !"#$ %&'()directoryLinux make config build file, ASCII textASCII textmakefile script, ASCII textemptyOS/2 REXX batch file, ASCII textAlgol 68 source, ASCII textC source, ASCII textPOSIX shell script, ASCII text executableC source, UTF-8 Unicode textassembler source, ASCII textUTF-8 Unicode textOS/2 REXX batch file, UTF-8 Unicode textISO-8859 textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=e6844ab677350963114f9ae43d1e021e7c904420, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=a29f4ad000e542d1cfc7664aac33e776a2db84d8, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=b1f0afba8f00797b3b19d3a73b9add9a60a571db, strippedPython script, ASCII text executablePerl script text executableBourne-Again shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d2bb0dd70d48c61ae26f7794b1e0822f5f5d3f7a, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=788f47b830450264867c27e317612360be908500, strippedC++ source, ASCII textexported SGML document, ASCII textELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=767eb69e620bade22ce4383ff3b83ef3d1a4d37e, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=9fe5cae0068929d08ef050228b6007e9589d8051, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=f11f6b94155c96a15bc1a36b876c975f0d64f615, strippedXML 1.0 document, ASCII textawk script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d691892d16654e7c6cdb3901ff2c08717658f095, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=0efac06953e1682cdc1724718869f2b496e548ba, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=e123d0c9efff655b6124886855fd57a6206c0bfe, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d041858070a09955834fe3acf204dd195ba7c132, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=70a9b5576f34df5bdcb3529b898d007d13433594, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=19a5a38ba987046e20ccfc6e95b513bcdfe4b59f, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=2ac0c74fef54e34d3a1e811f786f4293e4bbe9f7, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=72a43822ad128fa7a6b0536e6ec15204b5e480bf, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=43076cf9f91b69eb158e823e4a109afabc740184, strippedASCII text, with very long linesELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=d70710a7bf9ff9a7f328e8c08e3c899c7fa52299, strippedautomake makefile script, ASCII textbisonelfutils-libelf-develflexgccmakeopenssl-develutf-828cae0d2fa78b3836b5bcb102c1ed9283d82d2d65dfae07a5aba533ccffdc865? 7zXZ ͑!] b2u jӫ`(y/f-QulGi G6>3F_XQk[UbRfyLͳ'|8!qY r'1A(O~l9멹YK LXWf&D*fuMni!<95k1NHŘNDUό$<$^#hS& J]iOxf9bs8gIwTam*SfPё}rpb\1<zh?/6.TV9ѥ)_vbDJ2 ˎ.T!ٜ=AƤ/3$JPU`Z9rC_ЦE9E Fcσ=X^~Wè_$2pc1ħu5 _0}v{ A J}ύ}:'߉5e/N+ Oji)ZEƫi13ӫ5`7dFl%pG0G_߰k\S""$űnT.6ȮJ&odR74^ytZ Q-=WdX`uMqPXxu]lN7 ѭes s[1Ӄxqϔ )~`I:x:q;UV([:fhu X5AyT?itJc/dZo\%3tP[]?whQe X7_u @:;{O]%_ǛeΓ1?RJˎ>rQ )Dt[Z|_ҫᾓwchc9BSxb ZѼ}Ŕ 諑wuK&ಛV́}BVP ʷO@X5MV'wrLc %ٱV$Z&p Ba5m Hcl0-K:]8T"rf&aiwl,}WiN,ר X!v˦bfG,^ɟmU7X1xCL4 g\d:aA$9w~d,zeD;bLHB(TM3k6{6LHuR]7ZKG>)zsUrŹYjNat+Z;?ݴҚO*Wt$:DLP gךs:,L"Bl(sNnȫM d?'rՊ̫|IYxԝkkzDΚ~@'ɹY'Ae^Sy?|QVטA]C"5?uPYts3gcRhڑH߅ Ԕֱ 1m^9GVQRksW^0v=P 1 o$[iY;#Iɧ_;F:H"f-`iN#* IJ%z.?qw[RIuZqybld0pJFbG~ )'~} Ÿr C.,nZ3${/4Z;Rn8z|/uMpkH0FrXbz|5#>0Q\`t̬kقw(P_Oqǻzi昈cXUeLEv#[[¼p%Jf1 _̰HTra)Tޗ־ú\B%4?D.#Vma=} C  v@Jpe l^zz"G')5TI5* !c;kuV,UHf$Ó8Ğϊ\knP^'rK)9z?LGAKij3>dwy!5+ hhrfdmZd=i͗#O-ðe8ԅdf*=d{ٸxytӏ~ofP9 <|ycw`BYx67+&I5u#L~ Hs1w o^a2cB'#Sh>!RYbYaQ1RdJն'#Yc>4h3_0c@Z:Օ9ҰȍqYnujz$ơymkƏY |$@:HYF`Ae4ū1//&Wk'GX÷_nh뀌yguHC[.}MMv%9z18kzv`D~#֕CMZwY05#!U@*=WQF]Zrgni=o_j4H[MSC$6QAq7,KzTׄs5Vu!V4GSޗpvv:› HGƫ:$\Rjrڨ>IJZrZ$<(Sf'K&GsJ-D2jvrCͭeəY]9[^qwT]ul3\)~]d2]DeHj}I4n8BGg=X̺H2PUHMo6YBP$y5 DR3F6$04vLˁ,9C6 ԅbADy40%~9X&m@kZAɂmf>=ԾQ!.HR|["2>P@*YF w%:حap媉-][y6j'/  ' rEկv(semv|n[1X6FILFJ$p汓m]oRNQ·%3V@!?3.F֭6##U>afXjWb޹Ǻ  &C$C҄iY{hnG*MQA?U9iɨe7J==ywL^#n,f*-7}b_߈>~bY_VeC׷yY-S.GʩycGsJ_~yۖf=;bx1D%98,PD`OaAY;T1Xv (Ca>Jq3eSOSr@,ߩKՕϷM&.7P85kyp%˭-F:pأ8e⼱?⻻CXٛRCOIp0ݷg!ٔ9*_6#95(b_}AhkhIP|@ O>|̀bu_|@c0dYa+tEyYDuz20#փo 7LMLfhyعڜ4>+P]`ft=`0Z#4ZzHdKF )"kY"JĸOV$Ϣwan¾qgsG7X7UM붸Juxv:F?fDw?EL Dp MU>+o{PHH(,~` "ˏ!.i|m~uqY͜Yk'\}~!l[ Z"iu %v䖢dO[ C n 1W@Q{E}}=V)ZW@JgUyYW;81ݮL `M]9xRT=Ca=XBGM3R֔5+.x7l",gysd6 "mKɱhֲF! -oU.OҼV2Y -VK`7wQ-sf _/N»S*ՔV݃G?p9ܸ <1ճUFPM4Ʒ1Iٵ0zuR=Gf;0]H6)*1Sc=3Y %Ž[5Zxq !\-f\ t9-- ^X47M7P/?jwEĩ_Ej&'!ܫj(#ٿ$J]9 9m Xt9 f- yZYDKiRVRK@'W{`,Y/{G[s{R|G9<,CUJ,WA1R'\IIƑomYAKEY$vQÒ_ɆHq9 yoA̓I W  {CV .Ip skdq離ի&~OS1H:Υt#N$/*odCӮgA XP|&L -\JC| sl]ȍnum:X.PAӃ..|Ozkm?م|k яݹ%ť$'E'03BpX\wTʿbus Y:<=:J]$m撅*DŽw4czFs@2 ;Y0IUR=k_HEm{84  Au+1@iCݙz.FMϒG{gIE[>fV~iAq' H 15{+_I)s†nVf/|d3o2s0JA?/EJv!SD4i[3fҹ%qD1M)w:9k+ $IMz{PT1e^ctj4.Ľlĉ| 1! ?V'6G:pMbV&1Š!kRȻs(s rBEcVGR6`}CI>f ζxI:7`gr;NY2q)!`"Kj{K8(qyP&dFx(UC8x|. m[USHַU[IBwieZ9D^mf:'ݍ^ѷ| [5v;44|]@ǽlyXH?"&h 0ʊo28>0>hɒq5+Aeɖ$IȐ wB5D `/`˭G,Ϩi7@>E ;Tr]n3 ?3Y*\G )`~J?ʥ`P#}" M )sxzI8v#"nx2pl@nU?Vh=#3>E~>NiT*go *%x$FdKɼڞ+6y՟nݳ&h8\w :l {?gɉ9 6tX]OEJX3ғ0%詏+dk?l۟*i;)ـu;/rLeP|հ4$TCCgv7:_7 IHYy_-V=YVkq /X.=i% CWa 2 Pkl(fEGx21"dWH[x`RWRn"] ?pZHpo$9hd0Bz90Sޙ'w%==d_\ɂ'1,:%NJ􆔫 \~0SayY#&};}uod1X| dGrO#D9İ4ȫl\-f`{3ߚ M+EM*74;V"LEjRDth>ֿ2Y2:Cbf`x (ix:A{/@KzD5!(pE 4n0E]9쟻 ={2<^$i?Ug$pGi)^l^EXE|HZ*- 6;+I7u{++9%}jE gSk-dGSI t.iD)9߇% r/R$idX+D ˭c]M͈X*sE;vlZ9ɼbW~c_?l _Ɍpf9(Vz3mA=%c1# LJԑȪ+O`f7eœQBncV7BM%MHp"Ekg#3Z@;`zK~[n7&RY ؟6I7vylpP?XAZŒ<2څ';DK7@τpW)m0` @gnyb } gf[n!m Y  n=YR>`O<&N)gېNrZZ/]\hoQpT/͍,@3Qm~~5rEVhSP0`VD&xCcXXL*ECH8ٟp$"[zEi.MJjey8+Gu789f[wyƆ%~h!f.uH3O\uR?YIS.Q ͋h#x])l0n8;J E+NSbSۋGQڨʟIo;n}-Ya̒Ma7aJrKpqffO{4@+EYτpi S9_r׶>yP*_2n$p |@f@$d˞OJIr<"u!i^:)lEȤM^p^6;Ocqܑq#6bR 4%y}HW6~6^&0[V Ihs5Wj*- d9V8"pU.{kMBt3jm' Hdؤ2yuVΩp xHV9P/P_e5zQQqit[8yR[Rb}%npLiCrpPKKRI13)\`֡:,(]̽"lF ?㫝 b{|Xo]sUƲ a|V>#)XwFXz⿣ndi ĥrs9Š "1HYvQ*E MƲWJ/˩j`O5p6o)yG Du^TqckSmo`WZ fv? B{x'4+i"Iˏ[-~o o$jww*8pT\^k:Vtōv*aRx4(/RH%ʵ¿ ku_']F}|R?_pR \e&T9ūuLz4 _KMn+9^q@Z/ej TqN4iu zR1zNa[ fdlq"TP7tk6$$5ddk)jv"",&"PrfU.waJyjdm%j_&Cs`"Db4(t8l|آ9 O܍=ֹO~ݽh"e(`QM/MT؄JZW;znX@rͽubHٯJʫ+p\ZAa 'gDFPeݑbn%ʂ|'UWMsIX&P|9hsxI4v ΋/qkTXD' қk !.\:="A~/PcC|CVw#C҈Ki+!y͒ڦj\|р`C4}wz;ok5Vm>ĂVq2_^0}vW@Բ,baah(Ssb*Oф\k/lx¡ g1&e$p(Lnpnۺ}&_볏F9 <3`4摀LBUl<{]uã}[W yG]2zXdNizcTBoԐV6JTgbYɋUteW/l2޿8hc}0H{OFP_l ]=q\,,R| 2\e6`q9C=L m!S-DofZk]0 i+6M*n;^ڋj IC+w{Ѕ6S DQ)I،Em y\h/AJw+wbba4(Cp 7ة5 Af\O\'KebieVש7&4!6y<(g) -FlAjZI/y}4ep9v-2!!w_ϫ" _%q!1|L&; a˽]>` 8b?z8E9H4W]5f"sdO`wYa*t11ޖ(&ˉp$Ew^z!a"Q[Lb*yj5`:2W ն(sTAAM|6ʻ"20{꘭n"eb]S*iD27Pl'y4o`qqȶS`T.MT%_N Ge8(MebE>[S̛L࿚;)06~YNmkeo\|tK8B k[bX9x e|Z* ft&Y<#ND#Ͱ$'h f}~ʲ /[K!Jyq/Ax>#I[*?@AKhR" sHe-@_Ud(csԡI/O9vy7~>Ч˂N z<}s${ >#s3̀`XXpajuQꋎD0]ދF9j:U(*2kR쀅{{g(/26bLAsiAPφw?+Wq'\]Z/V%Ƭ>gB5Ay"-O߅'*,Wz-jX4ć ~Oig"J|oJ>?3>S ,-\0bCPF&Iɗ_rQwc4Bfn '9X\}BM܄T#J+GWĤxi0V_vՁI-Lf%#b H *ʭgr3+?/(3ā\8ԿN\4 .ڦ"}7}=n>O>AWz5.僣 n!{>ցi mCD+AgNDX|3=_4aS+0K8q0nֲއlBp;w"q[k&)kmcQ T4Q)a&kO(m)|#_tHVTET<Ho2$&ng.٪2ԭ`-8aF1HPVŰ##1#y{BFEKΜT~^pCsfQ0(ĆGB!:c劈N+E%'1 CǂUW"EGړh)͡ B~P6*$SG"w/Dv( I8i3p"U<0ݵ%T˗a0+2EXMkOmW*&u&F;k\R@Q-@B"_kxbhp]=GOC3`` aƁx\Dd H`&9~ԫb7tl(c#m}\7rYLW1/$Pb@%&Uۺɿ}ze eUZWY'KPcMW0wtF Z-nbdp j-z+P|=ȕ[MGP@FKwhy lR~r[ʿ3R>ǣK{{iXc`"?jgTH&΀mE{Y|^%D`IszS?tIoI&We[W-DpL qQ"dG9/ZIݜV$AI>m5Rr'B-{%$#UmJ57}ta+R bˢBwb1B C.2SwjdRfEEa{r`i)U.`PpB)wϻ_!!;r|` ҢECv^-걖"%PZ~~QB).b< h_㖓xI~HMT"bS\0phǩ&w^(ι'|t[oQ{8ƕC'u)i@)V{# ) [B=ë " /03uRxxRy^QYs ~T[xD,68^,l0'-hwpvxIt.o,|x+c{Er&υ2hƥA`v Pnc[ /0[С:׌%$&yt<ӗ#Ǡ7'{Nݵ0/FD{_Ѵ`PC}G-lUGgwr1 σ])o̓ֈopF<>LC^v%y&WJ?0?Ь[N Kş@<ˍqPt6li!pⱟpgnvh*/w*RNZˑop'0*;-i_oGcN-0[J^sך{+&`h%$m83(5CXL|=!I+e4+{ɚέzZo< !5R\Ji'6n! RG!B mM)-rg̀3 d&@F ^-ScGbyǖ;͙6E?1Q:!BBm e|qM_;n:PVR~7P9AAkEA$cݤ/MBk\W|*7 +U#E>#vn,X$ױ]<8{ ~#Q'5_#tqy= Xp ^gLsfgn$ԩx]~="go0[ ?cq=Yј؆=}}GO @DM'BLX,kFtTWkq2J 'iĮ,LҎIgMrf RVl!0z=hŲ;ۡKR;͟@o2{vgTߠGU dXSc˗"IL.~*_ &zEHT縉b -q1Uq.Aȿ (̕qp (●'ϣ1хTvl¥%WY$$LiM؝Gw ?E^|to”d_4;f7k G!i7-#y¨pb8Rt?nT]jDӨHKwZJaR X~} Gsh5xMg#] 44++ Y(]oV x&\d/!r?j'(Kn $b.er_2 lA`!Ecx_D'Mw^%:S2cd ZX^Q Q^,>Z}׾_l >ϏϦj IEP1gvYh2Nx@m$HѿL "tmdw5L0fL4ΔqL!Nc>k20=d@TY({]HaS*{͐~;M3{wʴӡ8zA闉qS[ZXD :qݳ8-p%#ejw. >!zOSŭ? OTsmciggP6s{>VA7źjfyCvXv`aV*Ħ&w )si xY(sx!摎J"kZ3il>oplWZw1N'*4;bmFu-:ja:F#MX!._P[?tEF`7,CjuΑ3^$4?1}DWF cY| 5[P681Nz8?i%`^-C WJzI0 DV8x9uٱ B/ꫝsltG+Kkx"K2xʋOsL(4B?qC A2'XEWBu9k៻CjiK`&ӏTڢ^_\x.]W<r@;vP~) Ƹpk._N3g n J?V>Ψۈ< by`$f#Vju=BrHx$a*Ƒk.P{c(_5rA|[lD(w: B3HʭHse!:h'WdX+ǪP5v>izE0Ʀ+j_}/ sNL:^vsc`|2>pKOF#34tD8m2\$X.uJKyc\*jNc8}zm+rMܟS=<ҥ̰yAqsawZV "Œ%XʈnxJL$#oF!*^.t1>%g,k,XKN!,2 26 RET~]$C..rV.#onK ]Q4„O2@MwƶMS[90nLT]tDL'P )ZBnH)v̊»sZL[diODuE?v]ꉛji7"u |%{ Z]po-7|7ӉgYY;\HJ!B{Y6k$ALǃhm`&MS#0u94ؼ S'thVOC2 lq?fؔ!Ll5ICDo{wYћ*}kKN`u׳ƍwZ>}`]ۜlS߆Dy! =n g2ZIcL oZDĀq,LJQxoB3JsBk0) nmP+N N6A.IpSCfWu\_k%L)qi9tR.Fs1":ىK]kdveì-ңG8 Ѯ4K}FkCpH<ٷl>~z4|: !m%Tjo&`5y9FO7Vq=]_j1AY>{J7>H:xRs6_ZDz&k xK9GCg:CM#sAK[ʄL? ~(b}9=.w@V6ɢ5jM{GZ^& sOTA4s5xՂ\?H',n_y dD*g=f!^xMUU\E]@;2-Nq'V5KrmFEX\vvƭ%/ZiAX4Qkc} az(dc印{3HG! P2x)T =<6Z;]Ρ-]̂A T$ӨrCE/9/SB<'YÕ޳#xRBB [D檃(!pNs3}(oBul34SEGr}8?#bOOYO ??0 JeڥJYz""ʋϥV$\:]yNKAѹt=we^{]A@ҽFi9Qɨ E?+V) l'#1B;L.yNppmJP f  x"z;arHBӏOPkHŤ! j^즻"BN̝ FA. el V'\qun=f{,"D|a@ rl-Yu:[$%snHrRd}_CѠC=>'_ǖkb~p^K^uDCU#MwꛩϿE/V @mw'fTN[f5ʆZXgvoEы ul17B&Ux/tpΘJpɻ;\3k\z')3^$.K5%%,XgJ9y eZ_'KOnIVc5E&R- HO""'O4I^l0否:+dyV_&NqY#\K֧!_|]ו*=_j$7Tx# DbP9Uf3 ,Q3xUɽNEaM5fKWY3$sU@B`AS؁Oq4BQ=_M*3bAmp Ÿx+ EdV:R YFz>-i3ʁ'z .-c7"Yvׄ䄐Z7 Ls0ЬwEڝKxO??"H zpTAAϳRA{O,ՖKY-J3b#3*!QmWz" 6N;"gN]_H_񗀚?3K}IW M:&`3 3?1?`Q|l&P8$*yo9^M_"^wAUƜZ{֩r Z!~Go*[5?n9@}_LxF%n P|dM:%^!{PM?Zt6zZ̜ثvGPO'Igl9GsOY#3ɚC݆̿emC-i{Xr]~c">:hC'o(vD]_~#lN4 SaA2=xDϬR 9^=oO*4DQ]Gk0J5|z:a{c_SZ%/s}}9z[kW[Ѭo̯_5EG=lF!/x5^rטS$r$F5Uf7>Y]Z}fpؗg"޷̀}!*xL}vuT(r{m8@'uK/ X,#~32:`!2L*Sn B)-42>@pp6 (u(lLЭ7?pW x,P{A=|hlBi-X{:qsG.Dh~)Q,}z^ r]7 h #f٢A>dޗ cxkXy#epKjUyBRc0&_.ң d觥_+^f|0X/2ỉl^]ㅅpW,7;$2#CR*kSڞ淦N45gUDwG#sReK =s$!Qnb)(>iʶsMzӵK"n/hG#stn*H*j1mz? 2MfF7s}{,HQjeqt/^H6^ -Snt,bhpʔjy*Mƚ#Wi"?LAޓJ&=%oyP{@dQ+(&pXfOm.;{ :brB |ܒ.0iBPcիaEϮPm6ǣ¨6^`%Fߘ ԉDPz0XAàWY?Jו詌Y}\GyqKO%jjW5̐|-| Ɲv"h=PE,nbDf HX52gI@Cn&6? + 75~nv†P0.I1|,ͨ,DAk66]NxC]N|JȆs("4y WHe4.,tߟlh/p|#(w9#|Kx/,D szzKR [ʔoCz(s>Ű-o*T#^ZOyV;찲_F M A3*5i3e-&U,MA$@sp4?{vI0,`X8̰>^$}1dPԽ:-{%Ǟxʗ6⡞}ɺn?l'Kt 4ZF\!c&Ƴ˥v<=~dBV˱O Ɇ/SѦp&bc&zimwa9&")S{.yOBd/'9(qat]*4nM%F6)>#!G;&1|MO[ )PxoE0@46i׵vA.-<N&DtVǩ B#Y_41m"+.]w> lҩ-e 'y7J {oCI)Zb>J6@ _EMR46ldackDCvP^w\# oJ ǣ޲Xe/E RT^w4 ~¨ވصj07MdxkZG8g_!n 6ryTǟ,4wS>m " G@o,,)%Nh6(|iյVauW0t)z87?Gii6Db?T|AT [9D zb:'5MҫQ-B4߁Zdqjm6߲T0* uOXrBErk2!s3c=$ WJ+>،l=G r1V=%-G+ԍLnͅ?\3 /nBL!}Л , 9:Hk\]ݲt3{H&d09ݼ EW!U4c9p²l8wFeF֘^[|'c MZ  6I`~V([:-ĕ6qE=_WaQRW- 8~_I0X rleId_b4㈏25֟OѕZUCrMs8g͝7!j*.*Pp1G.~|GuP"X\P\fմ M=@CE,ZWCFqRFE089ko@$I>- /cMpz  41<֟D?5 MͿY`c%fB$(kg3EW,(vh6$*+͒tco7Z1xrOJ\[0'zP>eJ&= ُ!^s84(vLi:YV(vw-yF^9S.TT"٠A.l}*CCcR5jQ(Cܸe ]}h8; Vv,Y4M#8 k+_P:m ڹnNFEbqo&gVOwkRQ92dhHbIۿ|( 'c\Jٸ ^,ذɿ7zI+qi{-o$''lFxB{Z%S9A{uv6U ׻̇gCmf}<HfL<)u2](uӇE(Za;<3i!MMzHYO_™(pn#'1vڇ9yyfl @1yƯ"=L?խE twm~x 'X}zӐnJځ|Z_ O]19 `U-9vD!2ڰ6#E3П,Vz&qa#$P`zLq)"g= Je_5] zIW38a(]XVH#b,HlHpDwx]LTU&M]}@<"V=i#s U@IۀHZ1@9n_XS>5q,o&8-mCE(y@ <$zeE^I;ٻv(( :WX+ ҨOᜬ|$/x\#|s5kj T̚q#FBQ]kꧤ{[cRuN MJ7͢%/IE֌LO"1ZE\&oSs/w9XzyʇTп14ܡ&TNog`?tхZ8q1{ꋇd U4%%eNL^O*Ѕ njEs@jQ,~QVF3|T.s"T=ȣ u?V!2XY98?j8. >d$leRGT)%`\WwԠӱY{>UWk΅mƆ#HIOί6>$JdHFmw8]4KRq*,z. > Cu2XflW= ƃ,iFŊNV7 !AO$5ɴ ı} Nwr\wHncL(w Y=]KaUIxQĢX?~ިC U҅Jmɬ+WھVVp;|W? T|yu\ZB_LDjW4<&js`4 ( }TO4t緼3h$"|ʷ)@9;Cyrħ 49[_Vc uW5AͣE3hZ׳mQ͏Kz]H~N J e3o)7 ^t,U)kS{f.Ey,\4Sǿ"x1?c@p<'$f:2~hJ[O/J#@{/me[F^o6ި0In1 z5 PX9LQ}3̰."բreH NKfW}"|vxqi?NJg XrZ^YN6a =s.m5ŻwG%=DFK|l|zj$Q.|o @]ܢ9q@.𖒖%ԁ^;ē ] !t0lBF)c\ eN#)Tދ->~# <+'osj/R77w(pibj+XҾС.$ڊP Oz /~LX/L<#3n}א{4CQ*v҆ƇNjDfjhj3w J@8<"#-sB#puMٚϴ KH[QV=a?v ȑmK7/bR!]趫]QA- ɽQƤiaDхB-l-F&ԐDg,h( ƑaC>~+ͳn/2MmV!f@;Whnd][fD[VѹՒlE"Y;X~kw49 7 *3c/ Q,:0",|w΁>Bwy }߃/̏qTX+*oxUءEv[wSoq;E-;'q 6i6_ Ga5!+LsHo,w+b3 ON]Αʹ^We~Q#@3UtC+yhQ lȝiꇟTe<kUhn7!T0ؗ]+CO3T8 p 6[~hوKXψHUp4)ctj;e/pH )prwIJ5sChܱ .m6@W707)m4;a7 ]2 )Mn.Go{&ICX?!a?K>aHxkg9@¤ M`I&]q!(vƖ뮿SaH[ix4jXS=L[Ato JaJO m0^&lQxIVh&tr:ZFtZmdX›Ti(H3M4M. [kj#݅cYL9$]7%9Z۶2"㬣!5`m)۱X;Q67gߕ?Leyz^~i7Cw,\  @2߹-Ul~PseJz}IL>2HyRO02 9a*c.F0,W&(oy ծһ..37jJ\^pop߰b]L ~KvIڌ>O.@Yv6r{_㢺s]%6O Hf=nTA򸋫o/t ډ{{ ;bA ۬`r1I(TժSчӢ ~Ox y 02 (@ron/J`t"K姇=6 BDim^W[˭>k]ͺ}y<ՕuRY駇S&|eŋ|Ĩ^p*O):!Ƒ Xv]Dy^vplHՋ_!>hhG?<\$$oLtL\I7d b܄!GG z@^(~"ʬ4+Py;ɕ *91M ؆R`-s2er;x| * L'[Y9Gw_+&y}ӯjNjNҰ2`f회ha>~65һo5y0^[WX:PX_Q/Z|,P>ű{ql"M[ҟ4&wUUċ~@&жvX썇=le)wCx0RIiE!a&~o«S: 4OFk!39Ms+ݺDܹJRa6i:LǧGxdU(M+7 hc9T)2;zL$~3sNϥR`,`5CyyړfLMtn|ϫ\<I=:Ƞu"Ifastc \Ðʱ`-]0/ --Rp\=.pq&h 5O?8;,EH* FYk2@;`:Ukbˤin2TC3-YrɢL<wl< $Xֽ:GBoO\v)Hܻ]p|,x;M7hjR=j&Aΐ.(y0gf!hj~,^ )V@驝&R}b:8mK%u(I^zd!Kpm? d%p P8\A1z!QK.)~!qbr.? w;;j$A%` QVGD _!RGrmC+#/L!8 :u8w뭶%P;e bCd\ S9_k\CݯF]e6,.GԟTk偍cwj7t lĜtZ1 / cd!V>S&  r=ּ )ʮ'9 r:>+5/LBJ8=x}cU{Ku9p+@P=+uVnǿ{VȏqM֚O2TV kKRj."r[rfgw˗ܳa8&j$HY_!{*܈*$sJhe_+='mph!ED6;@|F>Uf i.&F/)/DzZ_Gè2۷?~? 8z.WͱJl^=kj7ʅ3K"[-aIi=Tʏ¿29`e &~bff n2(k2 VMZ2ܝV)?}q}pQȈ`6C97oa:L,I;:MyIc1r;PP? Ufڻm>l ^h XZ~ivN!sm-lk}-2@̇T)K`R^t?P)ᔆ>Z0myr9iX+j@SDxF9pS鏷GhykhbO,CۗB}{"=((!PKe"ՐܗkjY\sooX(Ҭ6fmA(d' L鳑ΪX n?JW191,_AVනȴSv4Ahv2B8šFا:ؔOU4ى4M?ߴ =fD9tV򢢠Tg{#Yp.Ua9)%]uD*e,Y'[T9hnZT'L m`n9)MCI\ 9XURZauE?F۝*s `(f)%c\j!lCFXtG\@)dI7Wa|u.<̓ 7ꋤ].Wi*[ۅ81iCZq+ ŚsȠ4h>9C%.Q<6Yl.8o9tXҋP"qu{#O,;@$<,)xC vb Qb*BYOQJm L18zKښH]bi6YG:^*Fԗ%Ri0s?j*滱 ?4qwr#$YGp\B'h:߃ qHYSҐdu5@b}n32j׺eq6a@91`4G&ɸnsz+N#>l:8HB`&Jתh5ThI D/3ap«}o$5Yូ`K}@+ekƇٹ(U k~3)'ttoOqbcPnVHS_.\u\ǝKw#{NfGI.eUFhɺٗ i`] o > @gf&ӽL__|)ue8Hx ӑ`,t S#3ܞRr ilZuATj©j4Mі'~㳣lrp4mwgOS 6i /qe<\ӔHAzy);?)n=Ui⧮jnIL!7QV%gT8&A: V3r:5h`uFSgrb> JѦ<+h}_&E*DD}E$cJMظ^d,}"Mm- ̼l^q٣NfXС4xWb @\5Pi@/3+>LIo'Cq93U4bb8bƚO^񥨭_X7,F{x\?XږA81 hh̉;Oz*| [)Gb7JKVP`+Y4#٧!ٍLNe1[fͦ8+a"*-< sLJLYˬ`Kî~ܡCɦ7#6 !qsмZ)`Ӳ^ q/!30NcLxu\ܬѪvka,H<QϷ St_hF;!K˜;a_ D,ߧ,DžGIf+.$;GE89j3"V=^2j,'WGUaxiHRoEÌm367M+5B If`tKH iT6?iT[&c"_v[ဦ,FfV~]0қlg JR+Gk|q]XfGG?1zjMOicKpُr[TVBşAk@>W;r3"wb?.pQS֧KM"꫘4/sW?\s`Z vֳ:oh~m2?+5'P[2|`^JPO?Ur~UR"٦feTOZHD{: =A$4qkHt[)l\4Ŵ"uFȄĘq:X#ar-ŨM7:4$ ,>ܿ;$X纈cFE34S}Y+ozQncq:$៥4 s sc Uə >U&>jpl`z.4 G*@ zwQW쳇]eUH7~uU GD!?↭0+ȏ0WǬ =|GFaNNS?Zze6Ɇc&9IG+W%Q ͆qu5˿Ew 0lml\ȚdF2Nkia?޸95,لםnծg=Xq7PߵmLex'>$7zޛ&p+SOڗP-4"qHz#nt?N@ [lBtJ4"]Dߒ0_ELFa271Ed~ z -I?`j,wD~A 2N"#XsS (?moC^_9Lj v:44X7jx:E]|nN> u:׍?Ԅy: dJ.O!bw iHNV@w+˽)CCGXiہy0XiyuOp&`w`oj~ g'+3@\C|lbv|l]Ȁ /gWuA֞~}a8CGH阸gULO5d^46N|4(a^ew }U"ʂ.YocC(aki_lygu?4--pU\8VgtXncB^ wB{qL8lçK#q '$9]{a1Sh0l`9:h-pKy$‚acKJbWF"n1fa?J3&ER& }}^9i,n&/BkYr{7}.e&L|}LuwkY*?%\kOc?Հ.ma-.XfGn֝"W" O}.02Kx<<1uŤ!_5#6wTf mGHWպ0'V;,L 4\Cmr)|- >K_._ϟfB }| XsG!&œqQ k!SF ?$U utH99N$5"JJ낵d0Xo,qX[j`|ǫ} bwJsOZy˜svu}3 {_{if Km锂6PXI"m!S(~30!$<$VbU`0zAj=ƛ,{SP<v( /D}k&(' [d"#͑qz7#l=YJaw r# [$Ei_SYX^u_U‡%0%72bDLz)VWP70vu1,!{~O^0e'Ϥl Db"91䥐vJ=JC@yY`&bM, rXO jDcK?R^toc&zW͓C n::E bB~d{ŁZw'_{=C58 lWQBi4ؗ>: ?-E|`W߷$/ɨhU(fQ*Ƨ ~l4g潥UZ _/A-w3.3\!!q),Gw Ll'=urALTbD~h LV )dE@REwQbuY;gyGr%Jy|YR%r!MW iEn@yS0JNn0gr|b]eUѷ7̱,*W!a; AcZeep-Ĭ`?*R|} y47`66w]ړ8/pۨd=VAy>Ixn[Xerig'9|vrF|=dFW7%G!M}GOϙ0xÑ7a (@:܅=2jN5h̃-6P'T3 G@H*VUM"7,?1eaV *YMSP!B7ݙp?D`Ͱ~sl m<.  OPIaT#Yg)rCK1b'ZTv%۳8cBy_/_u{ҏi~?+;36xw:hB[!-RP[5ڕ29dxt (9#=BɺEYwiC l{§w@& `1z>~ H֩MԌ@mw"ܩD%L156<@Ah$~9tdJ짐k\-jͩvhf^c]`4`t$92lW[ A jB&r>o'!QBj&$=I&@V2n1@.?N`yXg$ ga_ nZ4o!kOd4[܉Ɍ%EթTl%W?*b-rioD]jt-^S@n媕k_v}*k^ i*{ǡ^q\HLpD̴G3>=dӁϵ]"%o:`]&wr< bGyoNхAs:}ߦ _TB|F&r>>zEzGqA--#':clINNw?j"$rSfbZn[;C[G$6Cv/'/ܖ [mFfc1SChi_%`r̞![%8 dΨ|Ȉ9rj菑F3:Re(3a>[Jf 1́[j2 Ì9#Nυ @=j_Lٲީ75qu0::dS* [P8ß^ޭ~93ouql"4Y^!yUnw([ii:jK^uF-ޱ98j ~W:ܢp!.J,(p!%Cch'F# i >},ff) ]{vݹ>dY3,PgL;CiKx9iSC2L̵{; l8¿Kf>H0ؼ{ k|V= hݓvktX0}f\G&ޗ19rGJV%i&f]~Yn]'IIP38kelte!r^j7 }aZe/@Bʧ oχTG  F~m1S~r\" X5DNI•4XhX$r}$bcv2ܸ#h|)P LVMhH V[R~7mFm(f a=C c].DGDQ HnZ*WD!v&^bO $*58*Yjau-BI"z-`GOD\Zւd5\S [(lHrg *[/Aq&/x`Vca5F_g|%`ǵIeP˨g=<\IzW"GpmPs-tB4'G`G yŒ[^ ng}O{x?OT6i{9o4soPݕwP=wb,hAI#:輚~gq1ZA<О.gP`[D ~ 5m1Km 2'w3R,u 7:Jc-&[aBTghqSaC!h,N"e$Mpk⣦L{ DZS`^x(^nuNJgFȅU^ H4kY$ K@ƄfFl 0hEv5W=fvьQ:3̷]e*E#3,\% Kc(%1$ӄ^/HTzH/sw p(E#{->#K=&gAc_ɓd9۵zoiY ;6 Q$ѕ@l^[pLQ9wuVs|tAdqx1\ GUӿkĺn[66!H` 0hwlp_3%1ApVΒAY1JOs@ G6'"2M nb}\ÜB9F6%'gCm \s-}Gq_9ӘRk!Lp%N!w)b%diS+|"52/ Vf=j>3ܲ(!-w8=rȈHkaOBRX )J%%8wz@BWȟĞJiu44uiB5yaKcf1 XAC!aÙB@{Vb8 ߝ@uC@\늁&"FPy!!ȳ|2e|<Ǜz@HF48/uECΰyˠFavw%c# |oka&( 1~DQL?4ܯNDl~\ĿaG<}CC@"X jj}׵ i*jJYʚ.M>6N`YUbU5[VuA`TOGu;E:"hhZԧ#{gKw=褆?][rL*[xժNO!Y`{q2lJ(/= g'.YܥI)RĨ w:lpmODÏcÆ.IB\x !lˀb+]miPMrB.Щ&O{qpe2ؙ &C{gto1.}_y' E0T~R1/ \q="+ w -Ic 0~Sv1CllN0C@fS5#%+ ʞ> Zo5r=7;l..Z bs&/q m^TFM굪Zu潶Ӭ@0toQD8î6t)GU*Ro1}2#j#y:qi3l})M]ޛ'v7FAu&{2u{a4Yt =[}@ X+ȣA2VȘŻBl6{2f9 /qN~|w,v*"mX@VSD{ -Mȷv!<鉚cV.YKEѱ@hwȖX-FbPUA,6"~- *=¤y)ؾ]Vcn5 aqT¡)΄'fuŴ LF_,3戼Z&sU[(A/̲m,%2U{EGc[!s3 2"j;!4D ꘠#d.bڍΒ3wS9]qb(k()Rz.R2fϗ*ײ2@c3=μS#mPS]bwh\u@^k#sWEjږTvK*YΪj ^r Ѥ(K9:r9$2ok|toM7K;R6F`? .\L34 c1(?Iw_FY43}^/+J6g1RͲjDW.Bm߄S>S }K ,Lu5)P dTWes'SAMVKQ02qNM:- N~\ Y-Qz>n搚g7zc}h,\>"=`ɐz}@`&"Le$FOR~ы׾:3Q0BʼB M,l@ -3:D)RC"P j9GyH uvhe=!Hn C['w0ڎ`r>#]zYf%\3qYkG#Lt v(}eHJYt:@5@]GAi Gz4FP$y>y@促jXnŐLn2&dUoGo*L`?J5{lUǟ!ţ؁nhh]|O*n [v48ȡBjxj| ,]o  ޮF#P-*9Jٗ !o{߬`lxNd]maӊ^SsW$q:{ e6CHO;|]1Slh|ŧǴ1f"7=$^07٤LL@X?3H%&PdC8x,vovSV)uͶ_,v/C=ܸZm2Ko_.*OJ|wǴI1vi-/F[gC/fپMK z۲9I☿ QzHە҄V5x. HQO#[@ %%*Dѳ?ߝY]sn_)<╹p`:8BI5E1:Q;l4'Vߪ^4锓[e6džHr?^ 4\}1l~rd^]Gcf aDbGeQmBʪ 3=$Y⪈ 7Дk֋`Z5֑L ^KГ⎋f R.$ ~ӒIE5U7^KWYͲjg$S|cPVomϐơҦz`ocDCزԔş $r&1x:f䊅m8i|84j mO183Vo;/`Q+yW3K y-jf]=7,)~Mu V~I޲l7F.@ u;P#Q#6znU,V=t=_}?3}2R Yw*7mrS暉rU$)wnB`sỈų>V:m"'a__DbPbLSS1t''l?"b97$#9Uקrn./)\f^ÅM z>Xl!~M9Pj1FfXΧbAϟ1E-}^:*j,sowDY U0E 0)]_Yގ7XbJXi 'a0q Vkj0]Bs LL%{y8տ Bbzjp0PK @2G{C߃GÙZrZEN5F<Sl}۝2D%dEֱ& oX3d+lPgYVuСgU,ƃDCuzȍoꫦrYX.x4l1_F( 2ݼ p`V(=UIt1 1ڂu5woI=6E񤮥!9.3]vm&p!!Gۧe_L?`F,2T=`,Ϧ3$ g:tq䭯~3Mw[ =yi:BޯRwliPjM[`zETT3PiԀ z5 SdFڃNQdڞ5YX4B *Ybՠ˖k<:qOY/w;_NoıJW?J?;Sh sJ '|U#>"l(`W ]lj _T2P?6P31a_f$^˾}t:Lk{&p"vZ)4ӖOJ1NQ&Z!nA45|'](CT XL"GN'H]).o; "%CAVy.tT vNgkO0@*iL_C %zzǒݭ u<̳17)1e~~-( 3eZ-}4DZJT*MM˅]ږ9ObSrbהo|lRm,Ӱu.+hvHMnI62mбδ ,1nx`E('ECS/q1Sqb8 TZ@z숷+diդ^l1K8^ä"ʞ ujf5u0y27;1<0-[<2$AŊߵ9&GiǞ}N(f6켕g^r*7Js{/zN8$Oݝ- ^ЋsIuIoZ8zGJłIFg(^{d?[5>mec] (Tgtg!D'2~7Vż<3&}b:')Nޤ}a7`C]QKbkb;ySM׵ihXE4 p^B6DA{z`Ey9&[=Rgԏ× +j΄aR;u!/{l/E">&s|c -*Ofq,럁$p󶃳Nee.mf (ܓyR;GEiȣ\hO}oF|sh4= B~2 Ct2z"jݔ?=S 8ZnZyNRrɧnǧY϶T\;l*:$&4ME\2KWDǼ8a{";[OLa,B>=lQ/8Ë| R>FqLzc$V<E,Ho*%^k+*"F(p6譁 rMLe#2Ps;ℸ[| A:jKQA͒,lw$"zǰWP메 ]'cZ{:oDWn2|ũNId!$F c]B յyPt4Eg2tU'cTj_+9 ͪrp, <岥͠3 J XJbBtbvyi_Wg#)&uF3g5L#UD77k$R7\{^j{%OЛ䢰@w#;c>W6+k Hz02eH|},F2[Fr[3=T{a!7S߲՛)旮^74%g.i=7gwQ1"3tu>?rՐ7c99V#[M# @@)=Ʉ,}OcGGSdn h#Eyf%"SQQD-) ́'-q-LaH#Nھ-p*t`ʛxt;-6!FaU6,Tqm \EϷ0jMҳy41S8x.75hHڌnK:>6D-clr $M [$$W^˄rw(A+o/T4ĀHϥ< s;nE[.S2.0/}1-6x(' 8eϨ<ȚWLCڷe uL`À ͜dH5 ejHGb#fj#-H8f-~ϭ@YrT^@cXSs){ڊAsKla8Й#zCGI)xCa J Ӯ\ݜ‰,P{T@hQi,S,crY:~XgDKTDIIr>(hEW-&Adq,DP>ӹgH?/p5"U<%~5w4`=ԄhdclV b9&9EײsY<j!OJP fB۱[cY{)?ޜsxm.VE(Ϻ1mJǟml͓i ,E~<Շ+?o7LXS&G)?ЊgCf@1SW5yjD!u,L%f[RbPkT#oա5PDJ9A?ÃZR $%bHDsu&MOk;DXg˞¶&e[,y5u׏g"Ж ¹ֺI|g g[i(8,N7 T$t!TXd(yS-+{.]6vf>S6 yG._NJJhq86@#x~%%=#6-*\rO%jƙWg9=gzoDw ~vc3<«Coxxajz!mlsX(٠)ST|mQ"=肪_2U+ (',iY}vʞkYv`9~1V)bos?Q\R:+cPrjAOv - !d΂/NSkl"r^+pP:L37_hzT=JK6'>ވ?,LэRMaѺf}?!+6Ωeq(ŕ{Q ,`vw$c^=%^G94`2n{Eo TRj8QJG ( Z=J-dm G֜9چMX !ɼG@թb_3,^Yއj%~ ;l7wJ9="EE*iĵZhA2v]lQlk!@d0vÅ8nRJ >nu?9r;8P5KI>hZHoom]@4q{P4VCqʔ@TAFd!?6%5'> ?E`xTTWletTBt{G{5+h;.RYMd =jcU9}/عMZH 1R"mH\S'=DDW8)rӒ Wf4ة>Y C_迷GB]y(N&1'g.n|F L*J4 E&_-!<=z"f p6܌'Xjᗶl9r֖):0 nuxo$E=):ڻ冒vrc%M jn}TlєD8$|04,23ry0k):=gaȥ`Y 6ri.X}ޙk waq@0WȎ-.e<׽Ұ\RᮏZK<4w1Umpbc)֨OH2m N^n{ n]ubi)Ӳ4:U{rc+};^TMp Cסr Gmn:[ \\,BtÈ\%cߗ3`5s [egeI-.yB5VAO'Љ X쌮{Qu[GхOP~7 D"KG6(N{٣+*,Vηz9yR>q 2KpLj; i5ެjU0*vVbZw[DZR9bG!X(.~D DyC6WOt /!eK\CbLseXFEc'h=qa0$q:{r YcvG%#]U(MíEetURmn NR!"6Mf!j)'.PWs,FZ1%6;be?hvL+jZN:$V ųPZ|kypd@k_iXZ(ݾ>Bi~keUv$ZIpMe@7<`X/^`_+m -*G17} dhu^YMcgӶNcS}jCr$΋! UL,4=IQ9r4Nߔ1k/_Ȗ܌>s P.['oOwx薟W6ufap*@OmH_`v eL2tEPHӚwA<[O3fӨ5J:.yuQia⃴~ w= L}˽ϕ}7{叮(h! [g<N]f`dm!X^? 'r OQﻘC=,b.kg.Rb)v mrRjQWEhxnםʟ',3kYBvɶޣ֜&b7 w-HChC$3TwsLjk^ꭵooSeqdb=wf4ARG9:3cx Tv,C=R|Qh@J(_Y[L\j^PjP6OSSMS_pUSBBR8֍MBJw77.]KH؂4*೻D&舸8v/?l-Ӯ>i{x9ϼJҔxa@Dt{7{Vhl<f<)HmıqO󸈻3;9îXrz*3KmS|q=.3;?hqtH`7{-WzL8={ֵhpHh"XIȱK벲2IəqfL|*-úГ"֐h?433Iu#?AA`p| Ħn~rzqEiF~'[wׂ0+Dc[V eNw ;FIR[dZ b(c2'bEJ U4gqllŻ$^+"}jv=!@d2#Ďwm@Hul>67U FCeT38IB sz)(ѧȟ]zju4Nk3{tnM uP#̘aHMZK:܉WXK9y7*?i%ʀ73EG[^r &.I+Bx~d yM_-xC1) aJ#ˎ$nwҧqgF.FbOhoS(׻,9"AEf*̂b+PɆ¡p2D!Pk_-;V\N7P71}R4`"406r <؁u2. k/.8$xssTBLz9WWdJM@$x}Hbđtw˸xTʮOAb*2eF>nbё˧1ezAd4X; PKsc ^05";?xSHN3{E!\Q;o-6Tܓu!_jܰ? H!)3 >:=kM@ GChnzHMm0ݦD8mbe}j2xaIg)=| uko4$muvcmZ38<ެ{M$l۷nzN:Ō*j|tQt.T,ЋEPjb̓ lvla!ڠFvN;9cz8d~u)!49-¡=Q|~]OM Do |I7}Zj-}ZuX\3ҙ `X,RȖۛP@k4r ? ]"q#ɩ[x]Ig}PyI|ؗ J(ϧI^T2 M}Ur5f顜H健k!$5gA\wh]hǼIX'JO>3_٩2 m3jt~楥JU,4~j2ƅFupcYk$1j vcy: Jo]+p0y1~aJfh3ǒul :GdUj. gOnb=PMQHvV?`7/.Ô`m忨 O k6Ә7Xƽt oD<Ugga W&L\mC\ @5owt̐:"#i2 VuhET[j/CqAn~u(H^.8cnr0LēnS~3ޒuq$O&3ٲa^V8ὲ\0RlЪE/y4jZx&YΔ չhD7c?xe@|ogtly" ,sk~_ QFH &:Ai?ME, xM>Excⲡ﯎64:"q{|5$[5E%}PIְ. 9k?͙*\[ZGFWX#F!gٶn'MtƩ xϧzvf,g{)+'1S*4_5Ey*$"l`²6waJs\ֳW~[Iv_G ŪKwNVS2^Mh8jJgT 8K?FvbiSm.)^s]G[2xǏ Rb^%NQCqeoW(kY5~ G1vC%RREg{.-ƫN7Rai똤лhzF$_?ȩh<ђe }8zXߟ$wz/R3;Ȩ]Ώ{p]X#^O; Uzz#4 L | &)y`oUͭ./Po4}/ jBYF,GDq^ mw}s{]9۽%9/qQj^3%@lƈ8q64d(lϸҠkI(a釔M,dՀ4򽘈'r 1h%P֚qS7yx)Ɠ B ^(X6DTḺ||: ZWlm5V]%x|1.ʶk{Ҭ -t7_(J<=5J.]+bMnFTi%ta;_;7 qKf/^ſH!5\b(ّKucYR>]{JG )1NP੪ZI9틂Cxk13Μ>Mz=:+?nM3 lꫀ< DZMˏXCkh**{J3gOS_~8}yʰD S.cޞr8$M:ܟ2i- 9a4Zb#Yc=ynn#,tV%RW:yï>G?[ꪷ1V,+Ell^#? ZpXC1@_}kK<߱80ܮO&)N7 zxW&nYJi݊0IKDp4Uq+dS7d9SRyTX Am\Lߟ$*bw\F\ 3J5bÅyjN$2x$+K\F=CңDOQcٚ~su2%P<&8oxC,,өe.~B{rbm^LW'LK_$ sGS(ԧe@D&H|o<.aO+}NJ11I'~lf& b1W./DkaʥUU/oiB]dxr5%ysI,o r]3tkG>ʕK_^Spv fEuA"r66޳!ϧr-]fVo;2P%{n#v1PKLzuї ޮ/‘rA@?ĵ1ᆕC0 eW3nIWO\9.]dl2e,\F]|YVi ɂ#eӱO[rճݳkӧ0h]r^u<o)c"J}g4#^oq-45[/SAN#M` ΢H~`?>:V]#< T-+Zo{RA.Šb?E~TA#(um+,ۯ3ygoopX.8ݶK0D󬦆Ε3Ust;ed ƤހnযPɂ5G֓&- Y=z̖mUc@ Α͛٥wc *Sn Id3*TIŮod$,8)h]d4.ǾM`*<"KnE`*==U/kpҁuL`@gwAvܩF!^ɵk1̐溦 &c*Ք+!#Ư}E|͡x-|vjcj{[uS_<R1}怄FVllBƢL[4rE:`Y`#Q0vy5囆"$ Jj z.T(6 e2K"onrjή(_T!+ F^s@6d2..Vqd07SUM@njN1"C!Drcwh !^f|rrEIȔǼ)!8ZJ:\H9kl7=GJe\ er\|p}mI%Vh, O2dTY^+єݰnPWYr;=mJ7L]˼@CҏqI瑛c9@ƿZCQxQ؞!7f;< 뎡N,"EQϫXLlvo@Z/:qaL 0ڗe zK!ZPxdlUU#~4N(ŖLӽa_š7 yԏ#px#  9r NkRy쐨50Bߓ/LmF)ϐM:fÐi"o@집qxӳ:[w?t{0nw}T6dWQҪ8\i{>}+)WCl6;S2$`RgdeW %rz?C ­ʼn7W0/dTCX沣mڿR]4lͤ]{xr5{8UP[$QPxrl}ر´ چZTvL¤'DVPިomx"'كϿ҇`z,ڊQn{N$]ADLJd?Bf-ǥwXIT%g)ټX^#9|{(p?G7 \A⪄qfFz]:GEգ`jS4R*P䝩U0&-9$xNA[*l—hGs|I,l.x(]kl<*D~,[X=G)sW VJMAR?zSV ::i[xqJ]rYxvZM5v~2YMeCFH9 (=Elk40Zi G 9RA3Y0 %?&t٦ͣb~dR!ULtOLEL^[q[ԶRՃ YJ`EƉMwNS'g7"dS~rR5rq _`ǩ)C);ٗ%Yi(K ~Z^{ ECrkLGRیsȽв埦4ȗ h#(c;9ic旸%cM<'C_ )?Lwą6 F%ӣGG[(`͜[Wf 0ߣ\)ìlo$g  eXG=|t#OJS{Mt^[ 0,h{,x'c@=WR<%sjK@Wn57F@ 4VT| k5Z_}?<r{joiW%Gnm냪Ln9} č _q< qR\h%haR>\ņʹBaHH7vL/^'FFʴ1O B; SvӘ^eFj.RƲnʽg䡠 ;'Yjx쩡|/ЀKon\Wt;)^IRt}3dSU gȝDSGx&\ !txZ5g/R1g RT^&Aap,By'`SCqmUouWDZr➰H]N E WT[xb?^"3 j ]:dq~14sFP 2Hw}ڡWjJz) $tfQJ͊E+?bZ!f0fo;;O"_68?NJ-UtkPT]  _&A&5`, Fŀbh\r8]b)p]6 ˴3csspE9)q*ۯ Qzy:XJĒH򝘸;vq!ƢL_#bj/Ն!c"Lk!:}_i*3J!yC.1x"qM.E? w+a~v0)'"Yt޼f:|cUEu5h 6uTmQMُތ>ˁYQB !Ҝd_Zr0ҝlI 5 t[$?_@`׃@?@#.Sr%P]ŮK̏o'w }4g2쐣#U9+ßN 6i/-M, M6'oL<=&!w> p_rp y`0 hv?#CoԵ45 f# 9cQ6*BDAS\0k/Iȥg\u(N?NP9KmPD/>H 'BCIJ3e}4EMAƼ@`T}.THx|V,84! x/=`#~w[nv"n1ЗqѦE|Kxfw"!5KPg /IHSt` $7S%ƿ/$Wu Ƀ'Sєj{oiQA="h63`k=UU~[7ֲ/EqQT@==x{jwoCȜ`1O3F7#>!Z&n{)2Y4ByZ@v4;"Y ftgc+_n aATd[ Y=ciNcli=z.QTU'+ Nq"ʬ?ˑ^d =L" tbwd`(Cr;c8>prP$Qǂ~4ǁO ;K#q𣵤ϧՍ ?O5ғpY֍6Ta w?Ltq/WsYb 90EK63 3h_+q*aW&d ^}ksb7Q1]aea6 )E9n1ײ <ÍPngG9oAϧ_wF3ߟaCLX3;&ZF@ڨL E7X\: uG+L-Ebeɹty3nߤ|\q)ZrabUOfYҮF#:OKFEC)9S1HoH|! AS{owW Huef`L'!U0*~q?5BhD '|Y"b8J3$5b`o06 MNEl,4qa^hO6N, 4\ EO: ,Io..4 NRS-,Sb#x=O܃=^8Vo}=zQ}Xb߫2(F-f5Fm఺>KHo!H |p_R7+Gۥ_UG[x=xk:SgO>E_\z K)]c`70,JwdÇB0Q sy _Y 0n_Go9&O#}\!8=E%[d_ :uq|be/%㻪W0#-tpuЦ-ѥ>\4z)Y;c^_9*KxG:^BiYxΉml{<8ucN`-eG8/s۞ܨq8K]үd+6cmlZ)h#PFQ )+͡..ViOSS!7Mik<^CeߔȤ/ 9 fѹKQګO$ B4c (KrƬH8cG;J<>3x#2cE>I>QOՋcaK. ƫԭb{..\F~bk, ²d$r(7%udK)kf)t}S 2j`;f#G(B2a+k܊hB9PSSX 快8.[ g]2 - _y 鷔 /˼ahq-6tLKVll,\׶U6\U~kY%\%)~= #3EA N\W{Ыp 'Rs٘.t!) ./RztƌC~fꪲL^n"yTѾ*ܐ2#Y&#ReҠSϸKSe P$Ӣaq0E vjbd`v*IjZI LDTiuyݑl% ,ܶ XF|yzG)򀍂Zd_6ō{E9w@z.[LHW\4G^k24|s}E~wi9<ԱW̏ibxϜDuܣAI7.kB"kcA#]0X X"7FtiV8VK <_$ PL&ћQ"G{& 2e UiٕUxN~S9~4(T[x|.,H@#T7ePb)#/#&1h">V?wߢ'Twߎt53JTGĉE@: WXqG~a;8RS=WN(W[̻|=y׍cb`ɉ~s򠧴=a-RkT-nFz$J! V7zʚÏ@>2$Q,5a^8d5@YM19]{-di<y\C}f.QbuIٽ:JWlLnsRBUVx + N#`hF2m+*yO5&!?Hqm_Kbl7r7jZMG>h{(~=9QZWb;`%hu٢.z4j(|,ɈuHN@+њaYHRG83cgveQINh5Yp<0@ۯtqokO z=EșQ7j(rNz2iYxz:<.ʱJMA:'/B s-f󅌇͋䪄%YW{J[OYjxE|>V6t‚"_>'ߖQwD+)pǡ|b~|a:w«GOr HL+z`膪yB :4U-!Z,nӍs`S`ãw>ιgkk'U<*~4 8Z7I#7)K*L;2MrxPeR5w-lv2ZGZ)x}ԁؾ*nNb^łQyCE[3u "hGx?ulTxq<&PdfA'=OcL;M-ik^OP-%Tʼ |̺׾5+WDʩb #,k1@s`dË*%vuYd;y~kUl\0}'Fݜ>~iyCN_ -˹I&$IB][/o( ?sVCf~ɷ *D#K-|iL:>iU(e:9qfIW|Y$bS8>yD!0]G IS&a=+â9!jhj}1ᅥ%a"Verza`Y.IU; լz>+e˖/ǚUOU+tq᳥O A;'ζeWoDͪrfčG7 B)kے鼏bVMtNQ[]Rd&3s${KeOC4_Ϋŵ7^Qb rL "%m׫Ao# SAkN ]o1keImGw%TXE'2nA9Ǚ6ˮVY}eOU_fOR |}CŜ)>SE}8΍%2x 5 !8Y縭%iSs9 =!LwT,1㙤}I%J!~ AGDBYm E^ϔvXB!܊'R惱"ͧuh_ ¹4>2hF眺m c3byST}O3#n^9"ivԊfe]VB 9}f ]{"ld obs WgB ʊa^z|e{FV3j `w"@<i G=>9-%T27[BV)_d|[Q`Mrߧ]r \~ZP2y`UBVnYQNWK$ uɜAFQ7EN l␐9kd͡4 &Hs08sRj֣^.PUGi[2zUTu>)d)gGjJRo6>.oR$n{U:_{x&3}^0P!P!L}lRأ\{륮Yo0UkA0ۭ zϣ7 >[~E?aɷE 6,|ެh]=9*)/?)45LHcFt[^BPS1j]Dֵ1IץZOXj/MEc:C2'^fst*XbFR պk]j tcm-3 {&LmHj_2͎Zh(K1IkLeyZBlG3=HBrl .է^[ۃ PzН|$3;WF_2mب^ {7 tI@0'zk}7Y((sLj>8/ f㡽\*oy'][*cCԺ\7DG.,\gsf]#"d ~[LHn'\ ິ0o˖]QY.z P$0#Y@ҁS@=~Nɻ -A͢\\sՈBYW0Z'{Qw{Hz8y^cbm-(Q۽%Jb { uBɪÄ#ݙdP\8eϫ=бTߊU9k,6ĭ]v?8gJ/,D碞_۞uEW.e(+мgGVnnDZ%!+U&:nva[Qoݜ0 W6Wr$09qrq]A7$#cJgɍuIQZoI%OE2N jWr"Z&PRZLwSOk@lDy$ [(ky ,FGrrV$9-m5*W5vB NWr'K9w Ł]f4̣ո_I `t Er>~YfYzFS[,Wgރ4sfmck#i My~@KD` OTF ]P.3]:"M` '±?Q]K`}3ѺkE ː CpEz=C_GgtKV!ەvG*Yp1n?Oi* SYw%}O0SF1O\ @ \"?e% K%bv: ݏzaPQ+P?]ۊzǩ}U8HN#"{w3J,wso+N7x\[w>krkkn<X["{,nuc}>|}Eoї(U.~?.CMgle\W;lkUlS5$"jW82V!` Q|YFLf7'$.t,DRU;y0͇T<9AB6sa+4v3ʟ4&dUЂߒ=?X*:Bzc,<_xn ~PH0d~Zo M5ߡ;:CBSFD++ (ݘ۠[6PmL> 6eGr)]W l/! "T oFZĺuiaFPn\c4/W k?vޘB{z7[U8 P#Aаk |`*R7dbF=՜ޠ`ջC Nz㮓UǴ?Y^P?2݅4J#QҰnQ]-EH+|j:l_ +CvBĸ) :=MPEk Gl*nZKvK=#g8%/n$w%UX9mc7,w25toyB㳎M ojr|nB|c#!rx{._fkP:`JX`ͮűMӔަY Fɵ/iJ~AA5&yATLCv5u߆m `~F9er)SE!i悉qGo~-˧RT[-\I8ES/hS6D8X6x '$w2*MUlUԩ D >1Vml'5QIչkPSҴbכm s,wy$ =- mD!z|.eb gP~jsPLn$ن^=2C) pTNFOoF_:Fٺp+㷀]ye#J+ڇ۞غV|pˀ}:?K{4rΡ"?5+tUHfnT98#4q*ˀ[ZJo8\u]qܕ’X />3J*)/_nwؖ)AjjxYE MJp%fr7-Ɖ?Aj{)x$^_qM鷀 ?rNZtI֫-:cDxHN܂'4kVP^>u9h>iO=%m0 `*Z8|:#{DBPOC/'E`0 71IQ$ ۚ*y[ 1unRWY*u68 Hա:m$,ed?yXr-~-{hq.UO:9G[*Mxm+ɫQAΡY}f5L8E{[ۉcȲ\M+_=5m&z(S7v J>!ƮĝASJe0DD/:ɇVqFD+W5ZAT)*! LP3S@Jؤ_G'-ۺ^V6; jؖg8r+9h4u!(XN)A5IūW" jbh04sd }PMa$ZZEf-b2rTq`}vM)i\`|{ѫ-#O{؉|9gF07 :Mp!{uQ[c燆5$d,hlpsܻWo~P^l`?V k֮ c7$i-F-v.a`r6\|~\l >t.&*nY7Tv^]Bc;WOVg7f~yNy-zab6Y ҂/[P7rpra&A>܀aAv#I6" ,Gi2T CQ #t^{Sybn 0H;_إRCL﵀%ȤQ&Vy/p'm~Ŋ:5m3\B"#^>ǞSv N%+uOeox,#hVd / 9c0"*kq}zO)%"&_|#xU'F 4 W1֦(S@b8.GJ%=~)"E[V8:|m0c4.5Bfط%Rp ndJ2M -)Hq ^y{DR)m >+heA]s ̓@?͖d- "ͶxD6X? *'g%a(gU" i#yG0++]" .m X0G.HXM$^ꡋçɂ:z)@p"-eFweQy$C&*oЮaEQ&-嫃WLԕq6JknW:c8Ba^f6 ނ2 mR"OBN#](X8"(eiՖ U'lxoBM1?[v{X˼;s>v0͹ cZVPq7r,4D&ke'c9`uQN7q ֋dng_(3 ;pR1P1K(.+-\@*ZhGzo#Y K 7T:dsCЭptK4/CnvyS,~DzS1K5o^项vvڙGX7d6#Ǽ+9`Ր^2BikaŐ@!Cc#gyzHWƒ] o0FҶZsaV^nfTuT_h$5lA)Yj38i$%`R#ycP;e#.^`#}5s/FUU! ]kڞn L[cQj?| JuHq~)T,5KJ Ոa\ &1IsO ބ1rmUj/rT-Pgf\X,E,˛riX}Ew7r. 7g*ib v7c*k`[T1<_#8iCLZrpђI#t^3GԟkNU۫Z͔w4I– V<W֒O%%i?MkUTsа@ȶ~(yϹ.scC4L4F QVBFyTR ң/^1jQ*ɓųyȽ4\xQd>w&9`e5$L,?n#bkc!8QގZ㍯Yޭ5t C{Srܔ\1VZ! `g63!hsd:)Gu '9AO3fX@e1eCϾFb(1zbE84oz:3{ GBn+vWKjX3 G @vj<-*.8HqKUBk&3 A{`lIƥE@j;e:!Ӣb* %!x@!H߉2ׯ&Ⱦg2WUekЕfjn7KZ(-!ԪvyǬTķ}x1rbl LK$?,2 O_dAOS~jmyࠜs~Tj=^sna0y Vȵrv6gl[\Z .2yĝ(T0uaLCR7]|(?;ޮǣJ/1QGbq^T*RtgEGZTof&OwAwm bՖ"e@, {Mgp߲U"agT(KHēxQ*?Di.1 LG|*4 ;dc H dGF2VC-C<_ilX|bkzod*3?4G JHwo1vD(Z~,Od0犆޵Lg)R~) Mm7]Q@/ "m/5lZ@HǃgakLAPe.d{cӻd}"yh"r%iɄEmc&) nE ^#O6/߱LdI*Zn!)h ,>md;vbU㓩 LMYO7[ Gx8>B8g(FKS2pθE;yZ*γ@%Qh6Km '8:q*mJ&N%VU u*N%"0>U4O6?UvW=n!*b멲c0!-x@*\qt " oZ /֎dOZDTrgja2,@f(Bh@2 ?Sf«g̕Pfkm`J8=O'fMnE;a'DS$mf7$y1Cq>s\bFjU*F2ftH`OFQ?mmI&\ 6'yĪ ~b_Y1cByCZow5mޑfKES7 tbsn"0IJ#жK>pҟhnGo`a_e 8D=Q[{Ƥ՞u7dThit]&f0ӁZya xK.y|BtҎNU}wH>iT}2ccW{-V%9'bWaL58Oǒ)JR$"5]0ɔ1M~M -m݀At(ұAk닊4Θ@ 5&tZr^C1\L?36,AH~wH#K]d,~ +~!c&3jpۨf /+&|U1RVo] )+C,&iY`Bʇj/zԉ%FNUmjik?mȝTV(c0{;L7-_J~W./Eṩ} gy%ZʆC̽BE‡!SP6\Ғ?%z ;—k]84[n,b ^* .SB $y=4$o`_G`4%4(UM[ѼjHpA\x^05!a}ddҠpީ_:?Vs ]d<Ŗ`īB9(b@6hOFf@~kS$x-`ȿ$n).Z~~28]U*BPzt2腌D0w0YZ /LRzvr7Irs.\=<<ʼn.QHꚣuUCs/}~qL)G7Ts5dۯ ӨjkYRr,La| g( ^Vb{vYLʅ55ۈ\;kN7&J4 %4p"I@mꘈ^s l ev7 #0+۵iǍ=WY\q8ZT[-xK]5_ )5hG,4F]tZ8  _!&Mrng xg:!\2ZDiVEm$܁Y0eo,2Z7J0bCtei/w'"L$O\ds~Y:UMPV'*A:p4DNg ȼkQw%T7SK_JP3G;WÈ5et1ÓXZ 쬟cj(IhrbK ꑱ԰iNJyY-=J>GkD-.͇T?uH$9ƣqz cfG5̙e_vU<-rJ;wK9 ?jAsotnԼHPmC9҈011-7fj=LK; O#~;]Tn+jVLדasgsl)\3 $Ms(JI& P6?)#N0yǷhm;JЉkQs^4 >e56Ǿ1"<׮91j@'fm[,x*\HULRT+Z(7A;eԿ+wP?E4 ZvٶwlqH4dD 8_[+AA'xc0] <@轗*;UHm{{,0\(K6MZ\=7jIf&'J!SD߼xgS(BK73x]/ ~(Y"/iTp @oe8lHڶj?k?xmOfJl~, 6 *X!J`ˢ]rԑ?+x{I_@4U{:ztx0b~Bs`hu}i؊G؝9I6}dҤA/gyFl^]ND3bN*wcJU]+ u2SdF{v!W> #ܕiH@x$5|N>H#N%]_1;9  5 trG,6sDYP&}óO$2bGd_P W5xmoY6)Hu?`P}3K)'&kza/ @+wd Fi=ß qċ\|wgrpV }d"[HYJ]{aS?gs6Tƅ:B).Oꑃ:HnğćD*zuZHSa0mYl|Ǹk,a:fGhk~Ň0ʡ,0<08ļ<)Z:|싕VAT%d,y:d+e<2%;ڄo+?Y8V^OZA糮o. <ڔQpoC@Rx^Z>'n59c_}})@׍n!I6f2K$3JъpVj9Q6/~/ZkSO+?%_ /dXtyx1י23S 5#5d dd i$[j\kwW1&5K>4K S j^4ӷ]#Fi'%ޘPW EUݬ-&coF;%ƫzA~(z)DTY W,@#cgtY{O$cR5yo(OJaXct48ؑ +*:uyEKDDҨu|٢pu SAr|//-́$F*E Ch:6k -!&DLTW?7H=Y&7`X ௱RK;~V/%˲:QjҮy_6$ٚ}Y)̒t=jT^H;.@!hH.9#GͅmpגLۥn#;3c m{ +*-}m9JNbxQL25nOVS|4[i,{eJ/>ytϨ,.; ZMAq ?Z&wJ ARq` M|gs14!Z 曐Sދa#_.'3= + qà_GMXc4OmRG_` srMwGÝj0l $h=B DԎB8[kmN j{WXTG$]ho YjZSCk)+E 2E m E%IQV&I% +ss~A?C㩭YdXDԑKOf_~g(۾۰cs.w#"Hn105GzT Hw2yPO8tO]G 7fV 65W4zyt)h Ј3 . .5f3] |QY^<2G!@h䬘Yd$_L:sہj@OKM[)lڟ4YlĖJL1ǡTg_&Ȑ^@HAM~LNbĒ( =R DHZW_H*O׺(̓x4ʣm' e$RZw!.j GC.T ֕NkO&COEl_qUձOs? hȲ9թ=Xq)X`1 _3nǜ&6(LY*_C$/2%0L`#T$1"4uS+4x)DA\ݏSܡ0<U<^L)CI _J@t(ɈʗN䱽UK$&WO? B'7AMuQgNٸ׹G*Mw= G) 6rg+up* (LZalJ8AYoo&D gq*URnV|ێBP_)Uۨs*TYtI Ao&5;o!bELX3+߅Q[T-/ g6jc$̽ۼ#ȡZjG,OJfUV9i4P&NM{=LbBjݶ{%nirR|)U" ׿@?6L6R qܘ )} ɧ Zxau^ |SyxzW/os<0@Ts{Nrxm R+n*{+xo<۹:S32uVO߻sqNÐj!O5)HY=0W/ײ*NX=GA^֘[JD`f\o*|5Uu5!n@\sBXfYQ4Yr';":}?B雧e=\思GI(fo|!ƕXO949-0j-'ې% ۹Zپq0@Mw`gN¤j~>ҡ{G*IX cS4ns r];PtDSBf[(V쌢E{ ł,k\E BI@,{qү*^"oPzd!rJFnNv@ ax%ܨ[Б^ME{tBnI&\yeO;P104qY2#p]0^sd^iRV*C4=uxu\lQjQw <٩qԭH,2ȴ|*蛆n.9$|t魷/,z^eOq{2=0@V S=xf[S4 9A^6[JA%\GDϨ.&:6]lZZ֐^7l!o}^ w")FëΌx[KܵR]+CQ۬*d OEq&A(KjE M:JY8MҵR"NmN69K]3)tAt@A3'2aY_S7a!} lDFeNW;U7_wQ5\ G*~_H}]j#AFX65xc)~͋V GɔsDz'+' O\싂y?90-Nf7h]}DA=q/]\8_MÞK"LKlqɏ)^G-sL%$Ń :#%&u@zZ,E?pO)^:uǐ̹X$P$AP&Kf/;huwt/mD[J~ ?gLERApթMQia\jftM]Bx26Bd]S~8-FW{ }lO68x JxL 1Q.Fj.R^kļtȰ&;`^,K>/ T:x>7/$c$ e0 q];$亭4_W\+S6w=qSEF8K⇦<q-V+˦CssvG.d;_IA(K*7BU`BMzw,[Pk`Rڎ| 4qT8@z]-I.dG/T{bAi3S)lO!Ҡc&8:^p5͋+PWdIK!ܿOK+B[X Dy'+4~E %*mSQ) 2Ғd ZZ1!X@aeՆlGrCxERCX=/T$R*+Ifiέ)l"ޜJ-s;E exw}fOy$Edv,H0V ^H[%w֒/zΙCp>0vS ƍhet=0)ݔ4#RΜAQf 0B9 ZaQHt  DO7 2)15ʱ!0q!z1)gvn`S`H)[B\nCgT͠f1;Hgu#umn=SXI{ 6S\keFApmv贲&m5;8ݟ0MO87j}O#NJ4EWh!ľ~ <&o!;4L@j @g{`XS kr6$^LeB Po4>"`"v<}%lE۠S|uЊi_6nUZa:d^phQ5J qG%ҙ}𲋼kQ@ֿB*n юFO{xTC{XclR `E#,(S=T^Ѝ<^1;awzHWxI=wKj;" khN變P`To+/azhV{ ۗׄ(٬{s]9 9Y!| ӟ4,D [TTPK{l'5^Ľ]rr1F2C(g(M}Hbj%)Mx2,WSLƭ3Hbx}mP%A$$QwvYRnwl)'WDcK +1AcZ. ɸL *ZE]"cv|Go*Nz;BcO!KsZfxcDi"A/i[?mO\9&If~=~?Ƙ iHEWcaeۂ=5yA]:s{ $+Sg$Y,   X&X̄l>?oɭYʃf": ,E B\-t\98#''@ j ^x̊SKm$< ȋ v~`zGb!/"'N8ѐv]k@ mq֪&t(zo& YE0Ff@h Fa?f%(tJ\'η $F SR 8@$c]Odl,hM:E[Vh`Z;8ռ)yϖ^=W*tJRQdU4$cJmN%4}(R=*/sm/~ehЌ@ɹ&i&oPL:CQ ݣƝo[|~?}{M{@@`byw|suS;ӛܨJ<թ3+GʪhwȽk+EkMVD+7^P=PǭJe'vyidpb4$60(;]/o^ǦBnOY<{!bVJ] 5 ~(Y sv]A/Xe% | Si+M#.'PD gM &[)f^ˤH6lηq;+TiNm0T7!ytS&టt% r7 <F)#Ntx 㪊TlH T r2;MpYsXF@+,\pa`Q%q_E2tbcv9f(xIDeA#%"6aH?Pgmte]Pn$򺜉 r"=h-$k5xL Zwe* --lL3pT5v7t5_&fIo%OQ(0aWOIy/,2־UqFZc'=Y<̍PJQ8r1պ.пK vA:tb/Wh$z*CV7Ywƌ?TggK݁c>BkSXÒS&aCN*w fā͈hf<}.%̜E׷qzhЀvw2Ia~v= !CM[]376WN-C #$֏d=m*|j$Ӽȝio Đ:aao`bE-r6ufuL%LKX[Oy[xŽҨXWxO 7w#͝>hD &й"^bֶ9r,H>c^6BCEqβ-ݻ~+g܅I /{7"椿/h:>oM3R|;}|o.HF,~Z&{lv4WH9YxrWަ8`rKVz%wVE;FI}يhA3_|drPUM1=>osCg.a(1kUoQPJՅIGmH80yAJ4t@B*:W^ߎ>X;FBgP\U'u\c|R'VRqY;6dxF:Ϛm߬T!jihUV\NbC4(\-1Xr/Q{?,%YkMJbDxg鼂^燎@E%( ΅Na6xVNS<[)NB2g})dppgڣZaf,>Csm:\S[ŸKOp=r X.D:W%`D|Eak^H g@]'28e8S'9 +(jw]!!$o<H8ဢBf[fv?Fl9?rMzѻ Ck5wG]헍}ho8qY t{!MQq@O,Ds}<@'bHRH @e{o3"**oej ?QAyܶ-815I%H.,4_51P2, }O>tdsP HًmO 8cmQAj9tcʀXͨa$ZByaORQJW)GJ]&&Z9hՌU)ז]%Tr lz+%Lyִ3MT=LF';wQD*(¡Cz&ջB+|&uΚO}^n բA/V2CU "syj"86VVԭ]oK ;\]hbf,sBRv9x139WRcO=)"?Hg,}H8o&ʛi1W5m8@f|XS5a#`'^l6NHe> A] wI3X7U`L1þ;ɕ;! xxUw-'x 07߽V79qi͙Rï/t꿮ͼqf >ei$sL_FL$5 H~ v|+)Wx<,lGh6|5F!cq/Ix[+ u:I"\t =gL 3c5)va|>Z5CElܺ:X6hK.5M6Q[9,(*a|ׄRyI,OX}%;@Sf<7NUH5Y}68 t<4Ħ duT6y.z+o }n8y^44<gQ\}0(&(((W4\$mRf B￵}JY6 A_F2>ZtP| 0ϯC\K" +^6E Ӻ3s252:h=GlLRvSyë҈3e8\[VAGj> ȇ{2n|skF+FI RM # */y.F`!|)>HewHxr=;X,s<6Ŧj#T?^]͹$(he!2UD6b஄ ;k%*Ȑg%_|EUD!|C—||LGj!5J//_,+s}YEfd8xlA OE{\qqz(e?O{,T Ż>euFT)՝2 ZBNT6r?zM}!h9U]20 !DoazRt&B%8!uqm'Q@ \{Ê-O~ty!yWPexۙg4?[QcIPв6\| Mm4νJo lHfZ~wA2W&yd:L8@M.P~M}ҋT~BjbN1шskTu )@(.Ӿl V _"< M&/p'3JeεEgy5sEai[BI,XS?Coc |FA6<;']~sh(k7ϳq'MȍG^#GWҸ8Y>٨Dc{EALڋP\ a{\{u*\wZ3DI8HV9g#F–GY^ס@ OdǡXPץE}0Ck1lO{"qslp/ YBWS`=H|9m>e.8.ldjHpgU:gVo>)0圑NX^7[[mZɶv;ѷ*HWBPMMj K3F 89␞ ( Ֆ2ެIUbReFjMľj,8!Y23ߧfS󌈀<$8G5!@5ؚ} pyBq{]`\L[Ǐp`ȖH4kj30t GQ 1u[93BDzcLdzV# 9n\Iҭ'd HT X+ω^5NPn_%䳉U% ~D5~dBՑ7JHy|iH-1 bz@Lst3iFR{1Urs @.bRTB5{nUZ}$~j$j;?$XAq6%~7Zv~6 #yh}}r5W7ffPB2a-gN;7)>R/u| G+{As+m77[,x(K}ceIP(PΓy$Xu܉M=[}~yw8o-z'ɜq[>ܖIC+\psw3|Yy@#v,|,`3~z/&_9mFDE苁(}NLbzbzXgW&~2,LIg[e_FzWt)OPjG''f6FqEY]u]/.`|Z)*zf TrK_,٭d=|(@]K#=r厜SOAL9Nq%OrccѻejiѨ&s|H7 $_TTl%.+ mSP#Gf0Pg ꟂmS#`ו>D9wkĺfU-v 6|+"{8k@ӌimPR¤2[$ț,MYm3-jǟ6n0v ŏfQp!ls1F%*nAގkbs+(~` @}2r!{BM Du8iz+׏?d"ePWC1J*IAsdLtab䖑wf8/ \^!wHK;3*CWgFB▮e(.S|{ԿEKycIdZrp% 88`ff/'آtInA'W! S{a= <8?; *v Y ɞY ue$G4Bui^wm>Z-[cTe,YXH&O]ζicBQT}j5_I`kzRu-YuZa] yT7 O!j1ywyJᅊ'$a>O_%̜Qt UjEbK3MRVN0]tZ79`GrVL9PcS0-sA[(a)|-Td&:Ĭib.83a nZz,)8Յ v$RR)u@ E !1fD{-ي'(m*Ea;sȴ0po:FG%&{?>Vh+JNFNf8j>^9W8zG/ Hv\ /֧|'@_ߤC!E4.p%pz?d\V^# 8ܮ"l5KWR;S洌Dg$Iٮ؁8;TdwG2@sb3OĕGz c2.sX*뾍u_3}t% k xE/QGRuEʭ&Hr;Tu=_m^i{h;gɢdŖwYAJG*pSBw˘;Tȅ\(H'&DGR-h÷ئ͚zaNp/\e1]/bĨs3𲝘ױ/!Y4mz*qp[H ^*TʴNQ}^~Bx@(pd|]/&}w4j48r~uJyӋ/$E4yxLss*}y>\VvD%@duiwY ?DybNdzMjSS W0bs|/N´2#֤< 'vckhgpP-GLCyIg]vDfܾ昒t'j#M߾x[.X f4 Uo ~BJtɇU&ýpO0hvF(0[sb).R }D2Aq1i `ތ0Vk 8q!p}_nGwgʯSGdas]sd [-mN UPV n,P>0JsT}@(N??Má\v_^Oa/pmyăt[S0aCUIC}g.+ V9muk h` P]mvVkt (B-I %tSoOuf&#H+Ojo{'WuD 1uv{d!Y8m\[7Z KN(TV[o+aC`CJCCORHqs ɇ%OilYZ/%U2f̀85PN a@AAxgp20nAk砟f=M{hKahpBVBN|2o-c̹q3!gu^Dʿsԋ=p5g/vB*a76;.2 6m ?dz-p<%3{^d!<]v5䝱 4-3#/`'^QN:FrbK^_G/d$ v4 |^ҍtG+ Uyr5V@XQ%db@+~i$ BQ:, fbI1F5a՟X^D;`8Mۗ؆8G$?9J8'%#XWd8SٸC#.@_'Uipݨ{w"_fa'wC-lJ_ Qs W$FbB&F[ܙ<澮Q>M%! *],s~?T?!f 7i4K" ԧ°l1OE<$79X;<&0 N+)yԚ:u.WBY l>t8 MdCpP9nHtonyr 6%~`~}Hȗyp>ֱ@. `9#8TGp憁_T'%?2.P[[/ &2Uc8`j8o䕗b םMcOكUsӾ;Jz;G#|{Q~zk|vu&<|H0m`F3짪{s, UC:&\^&bM$ EǑ0okՀwS[U=3!f0Kj=i!?/Q.&ea Nۧ@5#,dpx?$:/+["[t_"~)r%&xeCN)% m.$I}כ4%,*-hRIY.Q?8[G幃7U.+ÀC3bJ/tqs~?n4mSsmoNDL Uznpb 4^ m6!zn-Mz[[*=̂ 6.N,CGpCuhX u:bL C͙zZo#V.U *?0%\NYllQ޶\~&PrlF~\BqaZ Ƚu(y4@oP+ ^8Ra\OH"-/G{n\bhP~o_]3B]o eUzsF#-4@%Nq(b[iHX&P2.2J.ow mnK`kT^oą6ֽ T%VNuzBM*O.͢73htFo|jy{܀f#en_1PpOFro lS!^.&*:3[K|xQt+-*Z56u[%7тx`.YP#'=DFI{6@9h|ا2STAiN>+Tiwu SoΆh`PNưs|buuǦ$V\l"rV+RވWlUi,"f%(&7dךl) !\҇JI)VrkP`,HҠ3ufl| zw38Ðvro(=>ێeG%iWU]XcyXVu(4vͼXĆ*oi&5;%GjKS W^%ܳ|ܶk@Gv{BR`_يbC*JFpZVU%aӞpm֦ݫqlZMD| &`b5j(6ʶD$mZK2 T0vYQYFhpǎgI$ ;gAZsȊw+z070zZ~dY^M`-2M䪉lsq4l(d5ɶQIY1V54/NsnTڽy:WԐ_Z{]D1>a$ y]i0ޖhp'[}&"F88<}M t6^YqM"Î?Vi^BpWгqHkM܈nIHCdFF1xE'BB&7$|ɀ_4}rpQA/Pre x %EiAh z;}ݷCQTo$t`iqv3<^ T?bp txext|eVp99EVn`<1hjd=HN<ߛ wݠpyO`=rJ;hbP@4j蚼oԜImdn>֦1D*d^y%ŹG}ݢɁ]Hhl5B<1+$gP&>-j;.6II}z`~6f etI0[S/KFg䷱育߹8 ,<6"0D6Ȉ1#].H& 2fy+%m if'%&^IbxaɘOhkh3u\?Iw_0%Q$AJQʮLK8QvVLb$A{B<~r3n[؜[I>-J// w& `fL6p+LvN1J4JtJi:RcUE7 Qw)+thJx$6Y%?!4zwK,g/>ljNB'x :<__<S`i: L'D"QpqI>5la ISUf)70B~oRmڥOAXt/#հwl.b [zjPA]j " nZ_!FKA;JBcZ'G=/U+.fHX:UI {}D$[V^׻%Vh9zr q<7 5WŁ-pZA#I_  )&Qм(4$ά6%8S?<&(F5}Me ŗ 0ˠq.ahwQ-\JO#+ch˾8"fe[\=ͲK( ؃y?5`QVu/g`3':t:ߍZ^Q36ubZ:&Õ+,Ֆ=<Eeˊ̉olB5SEUg Jm> ED,S:exEDA>D9f^Nrk4TW#&Mgܯu=ob-~> [-?~R D WI.cr=AE?{3ݢ5 55 V52=H&j9o-B3 n!j{a6ӕON҉?RCI @G4n,_!l v4|J僉JvFBezhm1^N(y L Ӳ(fW<(i/.GF~ Ç̻1JՋss lF|"Yp\ n'Z t7~apZ;>9YEׁV(2Sى($Shn.SiE ՞)_:CRsU]b Z.dLi0@GYgM+Y*@!AWBʄ`jBރPtaqE΂fWŊﺪ8 !Y%1 EXd$qy~/ wc4 ,*p`ǁ|>*N02R 2;0`E/5קt!f^4+7cvŎ()0{^+;*VaZ M ѝȵ YG}ߍpu5twE)fe:qZcjҠtk@GSN< >I3shs+<MXQcPQ"C\&!UVGy ffgY鲨h0V vPP\?( XRL\I۲k`/'?YQbry?x]*TkJ RttI*^hYu00i;2נyZl>`TJ9Fwq s"V]icˠvitk8[cQV!7m9ut!YkmLL0PX6hۏ,Դ? 4 ^8q^a4X׺- ASM !>Eor66Mp o/AWw]g;OxaPBÞ+b+>p-9oV\NԷZDS s_Ix=bt=J ãɕmhb =]8(qCH\TVS)R2{m"M ՠB`6$[58}Lvv})G_7((DQ,5F YN OXCCh9{ɐ* UWvwJtכ~T=3]Y3A(j*H@$bƔ>k!v{Cp2م'fG ?7(QEy ^~V :iM`̾vs6rqM)HY9*A?KxSDYuױqK6hXzU 6E *,Q3#ںnjjV|R  mdH+0!t 4Q%*H)OsK?AC7X΍zC+,4p<bݶzD D t'i`UL0ç6 1N@=/ۗNZ2?Ql"_~#7|&>"+dqMz4n^vM~Tt<|"2-]llڙIZK#fGqZ5T-`n!hتP%*K9n8$&DjLHHt|teֲ;I[/6} ^=܅eW:HT2Y jPbI{XWq\6\Rpߕ,޺6ed0|I>/AT gw[TٹI!T #Y 'ܯ D/h$MgY~5Z:l@G&0 1Qm0V>OTR%M b^5]FO&,c>e[ t7N#h$5bHΣr^p՘w (PtQ}Mw9XЧ! 7_Qadc f&cg)Vdxd]/!uӒ5T6]_κ">^xT&q?MU1W7P[[}Ecq_[qr1Є"޶a8/>N,ީ EvHՐ%]B|ǭ ͅQ1zhnɣU u!{_UuIAXn@cwnop.e[nE7T50JvLVqhb> &J޺(CHھw1{mPIn{ǠoAfR>n}Ui֜/5Wv+&&Na@ߤQ m`mk:i+J,͹l]h,3R fKN'JyŦC:z<,RM\]|dmh%s5#ل">ch0ԢMՙ i;;w;jC]{7]*/j _^~n|Q&M͵![Q)ۚL΂фqЩŹ˰(؀_X'WHh9@{_'eUxF,E|r_LR ĦQ}v %x}m_WIGXO-4Kօ%/y0x sET Vtb|!<83mo~P9 RԚM*u,M=8nyt9#$rf `.L9?uTY4m۴wT'´qw|`G'Br]+L4O9NkA{\?8v£lBw 9Jn5Zt Oz4p%pSe,elm:~pBW!/P!WW4&7t36ˣOSLn}Eei3 _WS,FlL[A6–F Wy># 83(4}ヾf[jϲ3@@g%FR gi6Eapps>=H}7όh#k'8 En3ZtoN)VЕ~X](ܥf0VA{].NY!^rЌUOeٯW_ղjU*tdp\xF!h$#ńS<<-S_ 62DP W6/~*s1N"8י.ʾ(*[PtũppQ%v@P = e%?fzgt348H?8|,%BR_zUWĆ ;g EԆJڸiPRc46 E[?OѫH*/-sr;5@(')'.{&D#BG++d #{7Jotftcfv΅WDl׫21f@ \Mj׾JG9D:8{/[8||22)a;;@y.; G y ;d0EUdnJVĦ8w;n| Tz]R\~GΖ*Q[FިH*EQ4Jc:t~`Gs~Ŷ(#9$V|@{jvd\c0qFs6J׬N~ʰxn,35_\n*/bwp{8bu͛$96"uE!n5sg~J ݥhR ,!lVQ;;,dk% + ЈF) =%۰h-"^tPؠ3RMRrlvj>fTnDژz=aG)r 542b4D|6."+JɄw]s<\8{˯D|.B3Ewh"%‹Tt{P>G~hE/v 7Y%MsBNς#Ǒ_]̝Bdy/hWv^h_e챎~-;B/3q93H=7ോęcPCxaF,߫ B IBueaƢ5<RK.f2%/.*l&ʃpJ e1 /C^=ۂ~ ܸo=Oa7HQf fʒuS{le?7#lz'!غ;xx_';;U b> Z4|+˾Ǚ %.6eQm?'&A"iH>(v<ґnCvUU0:3 Ϋ$goS} v+ZAKpK-n Laa/N<>i˕]εndt/gY΋ 8Y\RegOGa^fHj&۸$lvۏ96wԛ2E"/[K So3KOc:rr6m{{Э/O_iL<{"RYUJKLGe7і ա M]_ ^S޾z ?`&Vori, [I[|o:qjA191+/ەVQ2,z!f"ppl)w:iqيu!Y_R_YvEL3NKL񌻞WDDRjG =gIktwCfO94MuvfĈCOUQ$3fa7ڄZ⊏WEQ[EV+hk1W| #Z5,U2T-ԯW&]$!7m BuwbbAJy]LXϲ=j,$4ufNfDŪFU ")<f}`N_ſl{M4:[0qx<ʗ>u"vUo)/e(V\1ޜQ#EmD{apuv2c.5w!"U0zq=ӯ&,S3$| ZsplyQV(IGF5ͣ䉟h,[> 5|$oס=U]7v/ء<k\9$(c\W^2>8= ɭv{=;'vZ^Fr~It AqZܒ(),_N_`!%T'.zQ#x-ìh=VT4St5~]m#>| 􀪘&G:qβQk}gwCu,=lD_9qW?)A( v+:CGԝgT3f:' e·/ "շZ +|}Nc/#]hZ/M(e۫x1ju_#T.D]; [$ScfsP;Ka[Nz]޽1Ӿ]5pdm*XaIFlnRՑ8׃ <{DK(IsLaC%4{L6Z#HqopUFq_?(ܪ'JAA4 lon:94q^)L$gYSIq .[qɃnM}|^p k&ג tgjp%TTqF9~bA^20-8" [?vobe>obq7wkFL%T1{c@ gXe8_Y4AީiZƂr>ϨWS49ݶl"z$Ͷ?4)EL΄fĆ2%C O=Bp_$>EʶIYRd}M?<ťEc$q0K -FiV( \8_z\ d=a@--'a1v&Pj: ec͗]A`,ljCG!+GwPj_CTkÆ4#N.q i|a sNָQC`@%0X]/&k28-zw9eU-i>W :l Ԧ<5`Nw[Y54I m4p&9:܁7Ir߆nyjQCfE,'on=uo7|ʹO}T<ҥKC;[^U4<5H['&DkDBQwizeUT@Q{gpT$5]W`CJN $%A'LH.(EYҝ!Y߭;Iev9"Ț',.]D˙CGS*$٭<_E[F3qx-66z0n<]{-᝵zv.@ڐ*Wi/izLZM0!|+Vj!|'No1f~.W B{O^!Ԏ%I|5G-e&< ˠ=J2?}S.l>tfF6E@2[ma8i sӧ+{!:]Kc+~h'0pFvSNƥ/ |ܘsyP,?xğF'%R/*`t_3Wrލ_L޲۽=re׺$(~0TXt;4v@ެJ6d5rpY G瓤ů@lekm|2m`b㧯K|xO; D7ͺ4 k,d jWM^#p4w9ϾLg,Bw_Z{Mt@btW@]S<ď.ɪJydߋPԆ&Ex>)ʷRHR`k^.H*͢HSﭜz \ OnVrIaOV5f?+󙹼4eMXJU|ś0 j*! KB0Eh&W|3zik!AܞMA0TcJeu:ݣ,6bPi $IE-mb1YP^(Kj~A856RfSGk<΃C vRɻ~;[3} =W89#z`\ggFqCw3&g!,<˚\iagdKތ9ԒvB1g{f9=ZvOfWSJlAAZCXKRQ4'Njs4܉mabnrq䏄y00܀qTx}qUX'G ?6%S'Sh\HGm6\0YZ~+b}$`cT`i짐Z,MM/i^@Mr8P.Ȱm'* а]XE (t?=j-(@%@JɎLkRppd<38*4kckK!68WW  Jȗgk!Rez)f4J3$Rs1.SeJ*GpaG?̓k 5'ۿCQQT`kV",GcT/)txځOB&Y j9pEb:Dn(3040w,ox]\h8QxLkTi\eMQjrfㄊ Ls5Sylf& #Joy,q35+@mKK'}?B+^Q?N*I>ddୀU9[o,!YQ@!QTuyZzէޮ{Ѭ֔3G>VZY5M:E5kY񁜒{!ƎO_ϟtO nGKtS27Itf^2[rJ[8AS*oT=Q4yd7"PQ^:6H>I3i"`K BU'|2ցof'|usQ)ƨMg)Rxeo!/'\o;w",eŀ&(qM v_Ig׸uV>o$?6t-Ļ '-7ky#巫u{W ܸ#Ј!4aSze!x_[}a }:OD!KORe0/ µ Io/%? (&cM G̤HƯǶpW4 ,u "yY^eld m͋1}؃؟E86yc)t*PkH"{3'CCS L "m׳*ösi V{rGS+1fn6F^xvh/  'oHy32p--l`fF =r_ ^uT;~̺Z1R)hX?Cް3J,?mVRS\Zi"ISqؘn)LT q]'PjP0Ï >qMQC\r4@56 u]肛k2#2olsDyO*)08V9NDl$pOk=!_>?6up8Xy(vNAESUJY9^`_SI9b1V;"D4ƤpgBBȲypdS\,(6T:h ZkAa(v..8ޏΝ\~o]Ѕ|nnuꅽ-XO{ H.AC!,z$nqא(Ag@Xf1?rji\vlIzuKq6rmVq!}D'><'onGl iu)8uiFp51si{ϱCw7aBTѭI6RϪ._s"[eή}zM-4FhrL!ӓ> s ^D!=$#6'm\bЊ*@Tiq]J&K|5qq9FLf5NGs1ǵY;L*K"w]o{'hE(a^utU$&MAVJD.c6l]lWޅzwg]X}uT!,һ#0_Bm-,y-0lNw4]k#m$bc0[\+6cϳC{% Ls >gU%7h\I6eiQI e fǩ,c>DeMu,R`$~vD- Cy[i@HKi~Z;> ;pNCz"^eYdZ.Xߕ2W^zDm qz+-$1ߞvfW6L>Be $B w7ܔOmj2^C4 '՞Z[{3G7*';z4ƛβVBd V W3EZ-V4؜bo؞>, "l<"5ޠr"~yz ]YzUW#W2ڕV8irLm:>pug6m]EB/Bv<.bg+pNf(m[X<[W)f5XSWp g`w$Jx( 9N]íb /G# vLRA{sX^2ĕP}RRښԵ? $RXaOw86y& {2nfc{vWEմXeW[KwW,HcJ `(uQ5&\VI)9̧sܿCuĜɤU H]@>~wE.bU7:Eu|b4 wkzCgS&*5$5z]a:p|㯥 5 `Q?c gvKB2`'Eͬui(FGZWVz 讓Xh C}*i ܡ.[6 (6 nC?k*֫G Ъ`HrG@Y['iԑnY Ѳ*hv"9 _0jҮkWnF.&n)JdN+;3ޢ!cMخ|8x}(G]>Wi 9:cp-+THf{Ri; &^fqmg0*b0Z2|f>+u^X0qUWcְY0?XOe) xy0j \+. *HʇQ_I( p82"XKV#^}.ǘ#ޛ7\-E9'k=*@U,W Qyk년3j]nė>ݺ!T,ΪRq+Ȩ&QŰ }4ޫl4f-_8J<̓R^ gͤBتR #L*׭߷*u~worRc| 'LSa B'gTSzx! CURcx#x[KA?#5#UsӅm&rb(-S3eZb1v*|za{°;m3 yHGӁ׵4??IYs38~;aVv@Io:Xٳ!fcq%Vx5_+i.BرJuM(zX5ʢ aK&&\a/E'ERXdzJpS2dLte8&&6QҢD>"} mi{NR1pN&j{1 Ty (TL`DIQjgGy>5y'd4/KN<ݭl;iv0Wz.UTzg%,Aw>f"^MY/is;:eMU|xt__dn, BHQrQ<=iRfF][Gnoo7`Z"0:ƮsDz F£ƙv;]U@[ȰFbqt㟐`-By?BKWT;˙ %oh@i.Fac_K(!}yH:s1`"Vgb`p\R)!b`ڮh$m;7*Սc ŅEƛ))!oE&W2Ӱ.(|B3[z [[*H.DYkV%5醑Q!8tϬc, D lF 5mf=^zVVgS(s I ^@t]Pd \?sX{nI|4V  WZPyn:MfQ-Sy{Rq, ~qۙp3a-Ex* dB-xP\**%̫$R!Xkvn`2.hjWOSKwQRq ɚjtP|ќEBZn2mvOѵy :# -Ne J஺?$#d{}4'ޔYO#Rfי$%:mt5׸ui?Ԫ6YJ o]XY &Q?06s۬g\q]\Hxi<^:m*@\`~Qk9p BkwWi1tۖJ{N@7rr8";K_.'rGslVt[g,F˥5v2I6wMədqGl1̱ .GgQ2:uRۄ9cZg\H{&p(hq9H XcA;wX'6:zVs7h"uIg0og4Mcúo{gy,%6e$0uc̬S].ϱ Ly"gVY'cŋk6n#_6Widɸ9ZvI~awa0Tw_w!qG6C5NufLVE4{R2t}_W hF׌ ?E ^r5fW?٨- (9an [*Aq5G"ܶwptPM ȩDQb)GpEDL(s&b үG/(1=ϜDubǸ)[Y#Lw"QgQ؈(g0sepUʿTҊw,RkQ|<9iuQTWlGL]aY-<0)1ths)6mc̷T~]-.y(/VgGvlM */Wҍ09}wxo{E󁠹mph\S/dB9l)!ˢC1cZNB'eg~կOw*Sb0H lm<}Y5#ܼ7n2~'F+ !jpUђb/alϢp:k :),Q1z1bLy7ۺ5 K?uجwX#[nx0MqL>&T*h_ l PnSC;tkɦ45NzZPҺ|s~3[PR 6&4RI2'Fؽ9OmIT$߉w}×n*\;'Ӈh"U$mH/&|:gdǘتF6Pӛꆊ@!| p'>xδFh Ar!KP2xOlhTj!!^ P51܃JȥʂVڟo|B"+rST#a]d9e- n;;R_^Q맀PQܒm*<|Nhq$̞|PJ k`yL "Qb^=_o\cdg`2JW،)W1}Xdi1vԏZ&t$1>(oǾK8To>1OC3d?/(why_]/bfR;υ SMwϵ ݨdpR+#n:+cRYtw H2&wBk֐a:bY}-G(v'={씰3p%Y$tOt}v\=Mݶ# LnSP&6f#]YZ 5Er ^"D%rh޵M0qGHr))r&1.AT%d⫶fs2:Ӳ#XCk;,F? ˺Aw(2X&Ff׳4po{L"LMJf)\RC'%NfKd<A?;SRK'oF}3*Y+\즏I ã7+}-Үs$8҆N\ MRYgo_F>3\bRNYD3*Za6T>&*t]H(?uF=Ye? \vgjwC~11Ij^d\^ɢR|2IsHUQD^-=Ưݕ=-InntE'":Ŷ@;|tϖ]76@XQX9nιyTAj"a:کTb:diVI>a:a|O,87oiȷ{-a{^q=QdNVSj6²-%i1)5e݉m@J78sjo|uzl8 pRLB85% 0V }CcrvCl& "e+' PGp{BlJ_9o8H7;/{Nq௼#[j(aBmo]zK<1g>G X[sHp1-)'I%C{26 ~_RS px3k:l9> ׈#}~U@k2`L 3p3ݺLXߋU=#F@4=^ /1XJv}f͡iY^ftL2AY^y/G-wДSTec=٭p FCYOYyPHhe{!(yLRJb˅r$b2J/ңR6Oc"EG99%}RΟYpۃEjE|`629KԕͩT`PhN@'@ٿyy6DJ%Y l|}E3۸ r>pq&tg9Ã!caÉCvn`񉯇L3pd t7/G8 (QmjߋԞijq_$eF@r1ˡ1;<}<r[I]g=%Vb֯s)(lMN? SZcXHO^4VwpeQb& EOv3o6 4trS;[&EC9sU*m6"4{ W+$3e5b5ejw(V&vs'V\qm`NŒqQϵ_<赈R!{PRs5PmTno1*;~4rBOAre兪/ USpnhXTq9 NYOr0KwOa ASy"cp+D+Xq=8un [m#!>Ɇ8$+O^}V8-`쳕ZYKFpt67Fޅe \QiPη?n<8KNYӅ4q =.@ 8 lSCÕ \N&Ƿ P֩U;]fG^%U6=Hk9Ď2OoSTUJl%?7(?J.hlUS%(z 7.>Gi{__u- (6=Gy-Rs8sc6iW%1`OLrڄ4u=qIDZj8pFCo%ywi}a8!FV 2ddȿ >E^iA9ת?oxh~zM>FVGV{YSQ>\L]{VHK=;AI0I<$݃gTu?y,\_c@C߬ (i/3%KGiT--xK&Hq(9dBM h÷3妝?%ѿkp^K,]ds\C&=QmFٍm5NwEf1"t\ϐ^!GRXSsӮR3ɓ m{boUN(/q1 kY*IB5,\@@PW'Kbmx2d,ߟI%*Ҏ?`e, Sezbij.0SZJXMj檼FeRCj{Iͅau>qDt%3EJFvh1DQI~UIxѐ sXp'M$ >Rc&fHuidqR; Γ8>N[I%Oo}w/c3d7V=ݰ߫URt>֤ښA0xVxL^N =Ko5$2 ),A)VpAUH>M X7sKؕd~Tk>9Fp1ago8rO$L$]1,Խ]+Ԓ9 ,kVB]6QJ)Ht4|`_WZaI'YvPUSQJw$9>jG [-'pDר'"P|B΃)ۯ*fTU˪ ʧS|pl@k씚"1-cmjUٮ] s++-ե?bˢjt~ůͿ׿Yp0,~K>mWKGNQ#Nn[cX$'m^_lJ_!jC'6#y셂Ho RGԮ{6!U e97//4O#ZuX$@ pU"QiwMT"̖9詩_?Tx\M `F!P3Kejy"PQ_L'7Rf߂fAYDE3 nHN#Er DH}we()m;v{e*a5^vG5 CY̶\c%Mf̾Wγ_׾I#1mYq"ע`Oyҙh!jg84D0 c۬̀{4)3=3j'p^d\KA"1#56Hs f餛d}0.[fOUz5.X~Ki>lN+v: NYiLs99!`3pԋ0ޡx)TG 䝭aT%:uo8G6 cLʹ/ړ0j23.ŒHRӴS!U._41fܛ~Q^¡ƳO_LbMFa4iMGG],z^=@ q&q E{N$ ֤g<N#:jMv2,˿=.jQ jVC7P5"ԉFN~PENJ7Ä趫#hت*F}׽*(ĺ&@(htX(1L Noz Ns~f>]g^`L-Q[FD&828܆Eϲ{&þn*>3ΕD<0&' bIzz-P]& }85䱫SM!ّ@b'd",ޗ,t[5w}G: TD {|angΨ^a\v?(Wfu_r ; l%h* } r)B)Dn)@-fcC^xØ !_0 ʼn@~yoO 5CWO7)8(0nX'!lAkWyaه `TZ]u+o`1RƛVznhrR8\+DUb%A1yVqvk(jI ny;߲L;n'c<*'H5!z k ѻu~œ`VX{fӈ/j?5 &E,AN}Sɸd\MF#]4Z:NLZkMQG-3,tV)uѹRͰJ7GPZٻߕiT: X8j>$ juø&&n3"?xdVOuR9Xxs&WP[4SwaldX 3ϴˊO (H\\TQSbB ~+qWi7we+@4ZTF.+ cwR؁!bnHlǕwl?R'δ)!ZuRAHwP/$7`>h޽aWAS_^rLTtĆvv4ɜP^S);>":,{Xf6W}E=*9$bu4``Ԇٻѓ|ww1s?/ Ƌ?iYI9G6Q=M4]^9|X-?%=}>YU`f^Ćq :r#\ZXZ$h)5Ppfc!5%Ie0?Zm`7i4?l3o5ڈA۪ׄ1:!_,Xvaeegp!$)':ižJSAQaR]W-9L#At|P4Rƻ4Wbfm"<<*^ܱXsXI?Gd#I<@SAS0 IaT-3*Աp OO3x8fqGAԻ' aKR'C2sKE:] BM@d4S]4K/+PdVl OEMyq/O FU-v鄷7 >~Uj4j0__h/R~"'1ÑpfVJftcBF0V`|]dq:KJݩ4Jӈ[]omY$$VvwtuЪO?/+044sv]ef77(L:$ '+\lvqo[wFі<(8*60AQ."cC;T3+X'rgrح0v(/w [; @z?vMzWtk3 ɞ@w-wH{3 4%tI}1KW)[p(@*jWB߭懵SOے!?Me1#vy_Olgʖ( "N]s_'#C,-͉O6QxZ!`.ED1LSYw7n2q(T0oBss2,7ݔX*ES(@rCCItuxrA/Ks!V9م}bG,FRl >zGDuW1'gdw}siL6Ht,c>myAASw!J<:|(+x_ _ Vs3&0O]~ 9@/x1tͰ:iw7LI0g@ 8 ь&Ӗ{uǴy2ܻ.e8VGlq8Hњ;rc Ko׽ZBUSe^ *=X8 %oy)s^Fxzi%^|ͱN3OY$`ȰqTƀYLrx`6}q_{I^5j;QMLjIo_;d$cK㟥@)b5afۋ>ÉaVd|xUT4m%-E 'Hޞ06g9N յ{޵$;oE5(r C4oBO! Zn"`^wj77Li;Ka21hb|ʤ3s^KX))w!I\oaJ?V#Zr% e CtD҉VM(?-_bo$C=)wkh.pj[@Oc@`$քg7|yey\g[G7qZ?dh-)$Ћ©~iF3|m zn[k4av0{Нj{7Jg&|z⵬O;Р>2g [ܐpjܡ.N9芊n !>gH;O驸4ަ]x0Ҩ<ڊa$3MVvEPv3^iԹz,L`m"6?h#X4fވ8;eL$TL P;A+8s(ۘy1Iܢeײ+-w"'kRV8Mس<~|x1Lgƅ25WkE{/ ѵ㥀Bt\zbk1+"P ٨ů UMA@Qs_wr?/h@Lֺ=Mk3 vi.ʒwn_8@:<ܞeET_?#Y~.} g0/HRW ^"yb*H+t#r"]DɊx$;lw: ń 0$?!4j:fE&Vb0(YU2GUx!${E@lI,UqDm]VXf. s VIDKR;KX{jWF^ '8r#E&1S9ֽ7z>-"b`2dV\QRB^11HN6FUG/mJǦ8}&i5O Ӳ΅Q6Gwn,0<*?G9gGG$Y6Hvg:7;R|+Hk٩Ukh*hQ+RZoWP" sm" :%T>5k`X#2MGLi UѹGM1A2ޡdeWM;[tb_N`-c槲@[wC<89f =w7|Y듓9A!NH4H k6|C}[mklMstI3rA#KHkRpʈ\g*Q2+0^ӫ &&^" AZG<䃺l[WM OKovf+njn[aVɊy_%7.Xc-urTB3wbRczo3glՕtn=apr\DHKϣ>WY D\FѫY+]ɫveFdN=l[;$) !.с>T6[5Ӷ$v.Q!%*Q]yj2ϕD#d=l?jǽE#hGw'ü^5”{ڲנQs\\K[T!"*Q7Y4CTɦ*"k4] + &imѬ"Gy>ýgż,oĮ|Z܀>?.9g+ TD,4u[ 9K7nMM( %aM\s EpdRI^vSHl L2;#&h6w (wۜIny4miiz*ƜsV:.7J,+TbvH)GhpOHɤ˘`L8׌mޗ@fNp~.ae{5r#x͹E(׺X?B[_f8ѭ5K!p^Tepkᾆ-LyބȘel_ڮiK#:ǖAcvہ %Uc[f[p<NOQOUb6H0qxpuj =.] ?7.ޗe$ބ1*o"'@@ f[LRm (iQ<;6,)9xL8_c3 ȤUxdc"6p?%H7 "÷RLEoo[݁+3e[b| OӝxHQ<jTy#?w|LR^(vDיC.37J}@Q8Zy>U$Э\@72j]\Azh0ɽ6yEHB:b1F,hvF'4HHHdFlU))Z3_H48ˡW@`Aghv tzf3玼2!h#+6@hsxZ&N\^XZCϚ`*i]>u厮\ :ϩ۹E+ɖ ?;-B#7x;IڹǍ%V\B+ozª󟤆lq'RE<1L ,Oj\IGH[_盫@ĘQ$ ZLWk_s\,'֐WR"#kBUZyT=PXsEb5?-ʈA5\Êny; c0cq$M!`x-19l4mF7LUG*:QTfKkAt0XLMg컷%6bvX`5@.#YO* x3`# 1lGtDX5rJ R.^UC3kϊ@lM ;A'0[h|/2DQ\[_*$?a {E`}Z;}l!sCo|9!"Φl Յ޻.V׫Qde9v6(S]=`D3{=dWhr6wiP)"a=eX_^ix +2b.g7o'O S2]=S%/}g*<|˾8Vg왪liT:{&X;wЪ| lv8RJhA*,*D&Vv*9VLuSc'ZaEdg-\7 'z0sU5t}Цz.S7òu5fɿ;ehI G+ şI~f)%Uԙie%JZ8 WmŁp.&֗YXk1(+:eH7-?MsEdqvqa/fU_ |BwѦyCq9"3y]7V}i I=,1i==I~)x21c0Gm?b#FyƹfwB9  Gh̪v,ӷ"Zc5L1SD˸"&3Id^ 0Ҳ 9`lR_Z43:o5. uj0oI1%cr{o}-셢[I7 _ps3fĵDS~J@8!N̎K<ΥpOm8W|B[);q̒2},u9:cf!ZC݆Crq`"XwpۼKi;5PWE֍[x(Xa!2̸ٻb8 ]Ig̦gl:e{%yKsGOAJ|K9/~tnq̥w O |nb4I$UEYgݏ.{D WsJ7 0d+a jҸ\(QPc2f˯CT@ QU,>?ŝkdVޏK` hvi$TU2 [:uh-&M|Qfqi.ˠb)"Cz;RvVD xOai 8슥eF 9G+̓T~-@|s{BaP>xgQ^n蝹ee/):FsۤOO;ElOͫH) fQB@!ݳS|U#jwPh+-FXO]JvVJ]~ BLф.|G𐟍h[_cd3 }z"Ý|rm]#BFo74 ?3HvMmu_M Pcv*wQ=\;`RV]:ۼf8wZZ+xȌ[:Kd]qiD5\->n.1]:Il䒦1, Cd|;݆4Fsy^nh  !P%2SaSYܨ%;+HT"tFgpBрe"*t{NC޽aS,L1m7za{NܥRtZC5-,u~&ۓm&O?j;HqKd(QGCovkUhDTAi=hJ*fFWVlt%,<<ovj%kuwb !&Z)eӿ3h Sh:Ã<4w;z~Ń/x9 .&]/:prJd#`[NBeB&(U RLYWe'k|SY*+"{ZFȮ(4\"$KXB ±&Յp\! }q@TfKНIKfWg |DXo^ BpRBۥù b -l $]w=ش&^#վp;b})+(ϨDޚ5=9yhe0֫}]_;9H AV 2K<l1Akq? _}?'|F?6W2P5Wv%P ܸht.@E CWkF-Zs;7LJd}T REnCl?/fmm=ۍKfhfOxUe4ϨoM0B#r;᫫eX4$N}ß-r6+xATFa_B7:&Ꭶ5Q枥WP򣧹=rwxTxP5i[js=(˳LNE+ß|a \{pTQN FOHɋ[Z{oO(Ɍ2)UP(e+B?챓(ͥ},k: /F}cYm[mT7z2, ŀ}Q@fW\U%k%,#{E,P-44 Vs]JCxg'ؼIw5ΰFGU7h k~NPSL%HFl.Cv3½Н.΀[@ "?f".$-c7RGny*يF=any[gzUEKQ} M @'tO[Hy魫.]v GNI9:YŲRDH]MM^3'3R{Cn)o$|XڧĚW+DO#_^ªH]R.=`Xe9@CS @l^|ojMZfdˀ!L".?e5 Om'rO{Z0Eƀ>>QY$a V]Vs*A36쥉6بH&* R"D daV߇k3roYbK]veg ;#_|fT{XJnsi ['pOze8f!sb6ׯӖ]c$S^hE+[P@ߦw7F|1;ݤѶOI<v ʕ,'O$<Fx1YS|i͸(.|MX["GgȚMպ%70ڐw6 ^!ҙUzEk@MKPR2-Ikjl>/DƩL) KbP&}þ .5vbl(_,Ro?$.@V6 W (/dpEmDtXu+^X&7iy7s-墕 F@́i6"|#D BE>Q;1ֲjp9I^J \1DEރU9ڛ4#{!URq\^5 A;W}!̏}Q< 4Ys'Xt* N Mye!@N]uo|#V8Z47OSs&{4T˸s } nKy%Ry5cu԰JrBF٤r.~Q뒋,ōs:BYط~޵#:Q>h(Wr_u)Ϫ}7EX(%>ZkiQ{lKM&#L=p2y0(. aElе/2/k6; B{ՈYE4\bbsz>L=JPzsb2{ 6 r@UǼF7oTJN аd`iط9;W-td*bG(Bo(|\[7]I:5}16Q߀oy؝"W]4XxoL"YxW6  p^ %*m80nL/.dӑX0y`MBkV8..JMPw!"~~*O*e?1iP:Ϲc S?"mv#oknTeOG+ƒ, 7m$ 0f58WQdmICxz -e[+JNg+P|ڭU8ߏ R2Xk)pـƗ4IF8"vRX7;aK/ssKmTUwfYZsjALVԞsڂ,VwycǛoWWIQ`lakc(|ǂbWxh}ّqrD0KU!_ *-' OַV2H!ډRs !Y ;Pgd|[x=f1FQQ^;fp pڙ*<҇ETRJѡk1'>." 0:CXP}ךe2۹r}A罅 Fib52r6Q)f9@@)VBP{hI|;Rb(A (kBW,P?^mnM7=x!&abgYXF%n$3Y9Wl"l>  'bB۲x_)j⏳GJl!9-W*9hL$/}7W1K癩T]bfMqDVK>*7~x󡡯A:=tp)E!MP_*U1͍, e4қʲwev ~|+Y3>kVp4xң|znsAc^0e@X&;sQz6]c2 k2gK|y&{\gR@ ~'fDƥ>a|Lc+(Kp{fd(ZǙ%%x]k\> 6+ ˂َCBxJgmEDw5h9G#r*h8 --0L¾ ;|t޼a'j+l#>gI*<:;^N'0/'~@n0T}#Ƥ_ VҐm%P/N5l4IRi"HcAnb8 Q<9!8Q䁹*xֆ/0ZYvp eBz/n_UiQۏjZb0ѫw9h>`== |F/8C_[ELbR,׿M]j[x`> /kBy95oG֜uVp14CvYie1☈z5]'Ne-꼞"#mk1cАMմRJ: t:#6 5oAL98;fܵ+-f~2k[-Fh&9W eq-;9RTZbL0"$PHJ -2ȪvajADWL"pf.i\Kgv et>T5߁=%㼷ɕy{؁>.y`BQx?Ӆ嬢=GAے&UXT N.yg.(ꖣ0w%HʶM)IT~>a\_b0 xgv\QMbO[]I*g `3 WV]r@[KM33xW'gsue7仩H ,VDĶM".G:)lJL_|1k&AmY?;S[(WSBC({nz@ѩNK6y!gI!$.BhȄm.5˔/}cL-Je,ӎT\@ xȟ>e7>K_WM=>Xxx$`Rʆ*-}AU=đ{ 7Voh`ӣ֌ J'r9" SQ&=J!ĆDSg56@ xPЄGd CDžzUk\9ah%{\󟵓 ѓ'U!Z\+B|ɝNc/ن-($ d4͘גJ$, 3mo%!jٞ}AS.s1j40Lg/;Tfdm56L>+ mgY"b6ck*MiD!d5A!`x`Ysnnt,5Z klft7i[m0'w&Ti Ia+ TW*h8 )Vy}B懄*K!HY6#;/VҙӦ'R%n IHZDDY$Sc5f,m"=o>% jyBOiy,HMmKd*inRF! OKQ]3 p k^ZpU[G#.q`d>rd?t݆Zi yy;?!D,1S&/UGy<Z űxyFws9=z4!p*FIU8#tIr3 HoO+J#'>,95\<-#ZJN3 ;hi"ܑT9/XTUX[,Dhhpd Nz#)@|Qdzo(gߣFbC&ѝ:6 :v:]]RRTJѐo9lz"qZ\rtq=V݌*d#+~Q-#u2 )Yd:оw㦈 4㷈6Q'%_»',?+UN|GMg'?4lSazEPXe-H{i$K{GK(| uz Wہ#zy<&Lj6ίf3j yeG,h@Ѐt>bBl١aOsb@*EC H={S@BCJ$OL`$[ Lug|qpʵ֎j4$%nQñXn$sB%\G7 v O%t4q3CSmaق1s9H7b:11WSFQ@eM.\Cq.X/POX!`([U2.zoTIF@sҽH+KL [b/GȤ$6̢f%yd /9}0w &qKu? WyP?_,xcPƴx[TI}oJT}O2[eTy_~vH lxl J,iԵ_;`~}ɫa3` 9l֝Quz0=1mLb-6U;<}a\1s>f&q~ >@IZ |oZ#li\&!:k'ⷷm{=IrB(s:tRQyZ|&b:4p6苨 z9Dc_i<R ߢI扩1UZ[JuNITZAS4^̞8p$^LLi~Si@M\7#:}~PnmTއCt%..bI;7g - Q V]^N@ R'XpPeU\Dapp1Icݓc-x,)P-2L_j>&4 4=[ (S_T$;iv3C31&Ó"^w7FІZڴ]e8΃]Z&*i;5VJ)Cg9ߣ.ep,k7gCrB Ġ;.FR|b=Ռi㠺ǭp>0 Dt^'}ρ82ËWw,Vpk<Mzu':QqPcñx=}0MXF:Y!ꖰEj)$>E`Sc*"e*]\Pevr(+.]RC'ǟa˝]"r+!&ro.uvH}2ˋ2Uĵ ?R7N<#]@=Fa"Cq(u[  tAvE>/.U\O;̉bmNfw9t+tjkJ`'[2.ϕ^ [p>p|B0 F;/\ gBLMVu3ėD|tw#UMNU8p'JNF%忛 R)aSyl T9se].*4kLzn4\ȷ9dH&Ԋ7 iRWh%8{{~[BʨGSt6c%:Hg?~o+XmYh@*Y%(h껱 @Z+X>n-UM7f9*C&NJgּ>s >UhO: ᾅVO-٧/_tSPʃ~C2*@ŸEU˦gZ+;c.JuV8uqB#3u vr;Wi=5p&?v} qԉpSAp|@ [ -M73tyv˩3O3iDJ:|,33 )vEיfK ]` hد|L#Bg<^Q:K.oh"]^-J6ڊ;i%vMOwMKD5荎ڽ+ϕ=ݬsq]^yt0ǧ^PD0䓱aTLeuMoO Jn|fyveH Pwk(jzm\_S>yn 5^U+9o izqit2\ؕW/Nzo~YJ1wȷTo7U]6IG[,Nn M}>曂Ru-RC[()=l%m@Wl DLs&ćk~Y`B=c- 'q# Mܸ e4Wh p( \bǁߋ)G&2 XQ0,YUduMm֖]YM腥80mrrx{"gY&>$ИRH.u]Q M K :,;#hLH=Ȭzz]qd*"F w.`y0_E&j)D.*VZ9x^ YYOkBE D;UGZw ~muGU2Fbr_ uJ6qvA "jZox!drZ?yER*ZE:MtJ%RK9٪Mnv/*rO6yIEϧ|H@B| ʽ<ζ~iQP[h!7l<6)֮$7ɓ4 Uȏ {4yWSjѥ((KA喚4bZ=5w9zyZ}| Qņ -)O"k]oxuL|#j.򽣩_N愪v7muhVGrw(rQ,m6u[ L48Iǧ0ެ{eFD!LL Q 9 {*ݞ]bEʔG[T8\lJ#I߻50Cɟ+xz-( Ԭ5FԾ|mѭSVPO9$F/mE|&clUlʳ}I2oK]]li ~4t|d`U;#KtӌOGj^w>hii?0D[D% 0ghHGPB]E*O p:1#|$ٯ9lz)a1vA^' *ƚJ\kj2KsHn5Lhs6S7X".ɿQ ^,8WXECz/5Q,p^Qgh iǬF-"+ߘX+f<`#RKS03\B0uB5UXj %T0KI9fQ['jMk4׌dk4#f0;sȥJˏoCi %z%=J/Hw^uwOӏqxFz~ Agخ ae/2_0c q=>p(1l@O6& Nh~Ps-;N R(>oE(kJVsR^Hi^H-N%EKM;h{20X;r*9YWǏղR((Y ?a]|m f=gTJgN "kx$jTW_ vz 9ӕLk> өV+ __s/ a BK%Exo|lz3#6m305d1% +z8:jPɩ98,'ũ `ItOGF{j+ %36yj 4:4E^Fn,Y C8,66(ᴹ0p.aއs9n8f%-niD/62v}RlOOl1/YKt%/߈0oTZU:S~sƗqfC Œ6Ns #lJV0GjLqGIxrJ҃l.eF+xbhY6EAOvJG`S.|?G%M"İ!lp# `Rȟ8**lq\8ԓS?'Ud,h!d\`RbAeb1١ ?M5?AW,t᳨"{ o&iPԾ`S:go{|r}[Nqbw**'jnH}JmuUUPfx{h:Տ;t2jr8:&Rnp)0(McBM_A,J.^ A08YQvZbl}tWŵUut0PnlI*V5SIFoF=9T-_ȷ$L՜9m6zYN j!6f/`0}fӬ;Ý^v,J`}ܙNj h?wN86 yCN3 ↩ÕSvkBvZS'= ~~OfR^ܢ̒k ;&ֱ_vv:&_\3M*l(W:8'J^S;צ{Jud#fW<T AJ~} Ƨ /R8SjC9a޻ n+QB{BL-N *: 'k_w!yyi(oX3LB"tRkꠝI]&O5S)r2b\frn1dP;$Z=6裸s0n; # ˆ]Kms}7 G=[4CɛSܜa'oB ȸ摸Qe{Xx.(&%*J:ҐF;! JYB73~) #ך{3*1.#&A}*ᥚ{C䵝0FR01;l?U!*/<8WS<‚v^V 7tE40zRs 8\|EߞyqǛޏn&"׽/A8Zv O.U{1i߭ ]T$ɑO|3s>{y basp?Mq\ސ*-WFAz\h M@P6݉W+3 &hҊZ4̀pC^n*7yئ[ ̘`08P^D!<^HpX$ێӝiH5$܋|0W; kbw?.Cy4f=2=֨hi(Ranad?ksWUQ-uh΃X)TwmxLg5Q}u.NoFCm܋~$a׮GyuVW]j)J^ :7~qW'J6Yy`}'וvLm;K+(Ԑʍ{t=Ӫ5ں݂zk {nTHc׾W YD{YY'C%ʮ&5(;w\)1La7F;)L}d 7SFYj,q#$Nvf϶Egc-a~"/; @q-oH-Q/FͭbXxR/-4$~}^Щ?863ޖRMZe)(f =DO)פ 8Nm9.Jl%H̥ fq]dzd.b@j1`2يDd등`C\~Q'lloq'HW3@od qpr`OVF\I{HĥNAG9 6mW3ޗ 2҅LD;Mb@ >N7R nA H*G'02{~oU8AuI3gy ftD:\&Y\"fI©`f)+EW"-PL-qRK\Mn$SNZbFgyUPTZ8/oa߃y>+Ѧ[96dnh'%_;S:d:cl8S(N?S#A2Qo2]v's Ű;=G]'6 +04IM$6]BaLӇMEZ (//Lm7^6fwFP%wq㯝(ssL g=փl5b\rNՒkE2Ja^5*{pR 5?wnL/'igq 1g 2ҺTȅLmqk̍l/2El>Zzl!0B0b g @wy\cYIXT#ɫo$nh)H^6evypoHdeXv"6ϖokTym ?Xo"y SĕPb]+v*CB?lJC0H0: U?,Z` ސ9}HFZFpgM0ON&AYKMi3\Σ͆YDѵm&|%v]RzW_M7M!|ZůDGq6 T-")= ۭ$;*VК6kQ[77Į ;zk0xtR@f 'jEBFXI)Hfd@$2.m -miqFu-[9oռ~ V،QsJ`Xv!vs2bQ9fÀF}=^`5",y8@lY\3K7Fvx.2Op G׸טJ-6BکJ.eS:yҵTGI! cr)&ބ,iq:tAahq3ɛ 8P.߿π̥G3L-{MunP8E"$ZP4C`#Q1r qxW=\7JÂC كtyZ.0;GR9gNټ6`+qsC8΀Qi%r//M'@ ymoZ,9~? 4])[(!8E8WDAס 3xBIo2}?wy7[NYB =95(l7UKJ!҇z"0!?R&IwS-}XRƠUzBnk +Pa;<Fߎ^};UhxH;h[M+DBfd5~e-{gQʲ3ʠS՗:YĮIu}5+JIg; PeDd=gG75wA28-WFshX{`!|5lGcۛ oBp-+ġeYA`ҲEdPڴJfp~e!6tZ B$; Y?:w$Ъxh)fQp0XFD"жMݪ,4W1$ۦp}$j]uw7eFC_jg􂤛gw !?n;;hי"Y+qU?ƕ[_'8"l.^+f9,*UI9,DՀq|`8ܸQ:EܽǽCf95Cey`" 36;'4P7W">~ -Vb;0geC8@ Q ?r]# Rh 'UɢdW=奵~.{"5L @+ DBFh~B|( e;4+C8ВK@ۄj%|cab6+WJvq 6W" zkJd! & B8P],Wd986ӊe/6 G0Co`m:ȿe =iѕcDlLn;&}6bQP JkzM*0٨;, 4: rߓ?iZ0hxۣp't MEE "fqπZ'ᥑx4n2 Ŋǝ1؜G~:hpo`*މe c6QAZ(Ky$ rH^S}DJ>Dwxa_»lܡtdƯOGyj4S)ʜq~}կePtCJ^ A}${t5uz$MbsF{'2z`fNM]I|{Io{@0s*u(I?\Q$shi{kTvB_o3B4(5y!jl4xB?/)}?KSOPeXɳk_HVcjg2NmtKʤ XhƳf!cnW.m5!u@лz哢wDgK$Qi4qnÔ{N^a$̚Y2=ڢ >Ap9%eo P=عYm dVޡE{T~>3\XNю^ QsDo,TIHu i .{!YHZ;v7sʝj wt8\ +mT;q!vVG))m `Q~WPsƔ 38wLDJxQPu7q_2{p^*ՂoJ?P;?Ko-*@E[, uN؆Y(tc)ɳ@&:W7}FM?h`&{LϞdojil |ӱ> .C^Or~ %EJnmi+f[8g$Xu;#`i#QQ<# YG^S}Vp%W`GHE4 'HsJHо9]SWJmV:PӱwygxXϖN((?1L]b&WSu92);y鞎޾pg|$~v^bZRk; 5vW= cv㋆dwx T0j8\n)(ahkۚvƵUL)K$rS$ep~tm2Y*5ML:LIۨT3 NJώϝ߼I^UA„_2:w2K7X<nF`97vg(2fjC;̫ a`XKy :Uڎ'CM3pN=}[\lS>ci]U s@m#2ZZK"C#q+B ()x\Ϸb LGԖDd֛^ ցTQ$X]谊M`6sN vٴRaCrωb*N(ro-\Azϸ1O~}-xPI {GiX]µiStdgX&?GR;LK)lFl4'p-5Sa:6TΖmaLE-Fn|AT}S"'\IVyCk_cyR+I1K9y[`V+N;{3Ő͑$`c] phTa{Eth9!j>˹!ssJ'fyHb]3z3*DmҷJWduvF`s4 /#"|GI@<ݣwWi5k^L-u,oĜ]d EIӇ0 $Ez.1j̋5(vnNpU؀ARƂ((֋!"kmHFFZ:we> #x@[w!4칩зUlҪ`s% n3 b_ LTγ٬ؿ ׉AMa"(.J} oʤ2I}俓Nw^Zi ]z 7CEagxHAPSH@ "߶6葜k[ f=lYo'ɨŞiD Ɩ;c3:Xit^j5Ipnt9f/uQHyQcH]-^M w[S:@;㣚 AW&TFi,ujZlejOVDt.:7&u>D ?%(8(Fd dG*@ m|zwck":Pn-G^==FZG\6\7jd)+lX(䬼is[(w*Y~f+6 >o2r%R_H!b["f:Fd/} IxNo<%Nj~onMb1DnxD|ozPz$eգI,G ^⿣I hJZo?tLa62) iE1].b1g0*ֈbL C đy[@.ݧUSZ鍍h yȏ&Q,,%d F掵p.A|3;DY[ k-p+pHX n>:Qr4\֕Dl ðO‚ʀEh7<`PFO#';3!:*)S6gEf$B@kMSzUP;MyuR`Na6J@~Fm5ie%.yY U%]Ia" ^@#ɏӱ`rhc|6d9z= M9 pVs&A|lv#Od@ 8ں 2U&mQyFvlvq&x?"wM)p!)iO="qfgs~ObaÏ`PD[W/{5?mT`CRaTW0G{͐ih~mόoX@yrK @%Ѓ &Fј\Onܰ?EZ{ۃ6}eҏʠǖ*ud#|nZz=ԈDKy!LOe>Fo5/\mxqR~ O#6G2f}R eʒ q=ÂI#ÚܢϪ;ų3, Oq@*C< 9"QlRB):W8ݓsL6%a}{n7.{x5Q[B8񘐤SX(u89ZfF;кP.Dpw%к̳~(SFyE.j3G-reAoW}F%'x:~!!"WQF5Dm*l)C**hu/5T9>%OvW9eHaJGLXN(t9HPzBYa8tAMW7ک,p4ZpVvy{FA61A.:m-xM G~^$jĶȀHYr 7!\ wưg?Ccjϯc=K'څA _8^WPW暖~ȖlHLwՠVE;xV;]) T%  V!yCڌ1>MH^\285[P=^DNDPf rvG[t3 #YV>$|*oᣞ/F\ze0X#QRwئK' Ǣ3/s됪r䭨$ ?)[C1'[XX^V]V.:7"Qbq _ y%YADh,OL~-%H*$.gK!S16IBd^q ܓ ޣԋ4T-AbO$\܍1k۷*R[ŵuvp*}UȉfB;&ŒwnkcLBnbJUiîyrՈwLL{ONEv ^_kQ\_+7 @ba.ct f([ˑ)N0LתhN,`i\#F Tォy-G)Aħra(+Τ҄3G/3!Rh4@01ԯ^>O4)WH7ʋ^4=A/3zMm~r!~ ӫ\/^_²10$ثE@ӛ7Mb&ÁTʒWX=]Vɧ[2cpQz|G?33U ]Ni8 9vͶ(,ϰ}ôJͼFVx/asN"/b}1X`%lql j:$~M7jE,7F;dضjM pYp7"tZI&e?f@r& HlۘHċ$R9 3'.uxP_Q^[ F_N&WG>ϝPuaVQ4ъ'a:/NbP>o7YhОKOZ6bY?B-!Uv)ӖxJny?/wnTEM(Ɓȁo eW(P# g93W!J'N0/"RXPQPIrA}O1g|%Oǖ6\]2 س/>ƎާƛўϼIQwVkVLYr\p8iqF))yUH`;1yFQgKj[}fi~`gsu<)8gJ;uXTF@&/V6=+6mq}à+$>puvEpB`;XqTjʵ6Ƣ*L*r!n 4Du2~>qvK{tOg,u 4V%˗D}ӫ2,'gɔlWu)n5V(߲%A) 0F\ě"d;k%<{B ȏoIIuC modM9}WJ; -E.?FQo?YrFWpr0лv = Jy\<xl7U0n[#K($%?!进dm(t 'c`yϑyiF@ aǘW`K":=Փ9X- XNxJĤf* _d7: g؛9\W(gu;(FyC0¥B:J7b{D]xeL1,gy/ QLdD;vdc90A[XdkCCB7U +Ie+ 7\Xiإhk>v?JV?S.9qh(1Pt̀oE kFLGDoruka|5pbЅi$Bp6X҉' ^naK[}UeiJ~;U/X4:sbq"-&ͿY=2Ck<dG:Cc_&Nuqc+ndQWc=2cA ëos4\QVO4JXL쇯00o͊5)HcN`Tc\qBw:9rEeePGY}vv =ٛ|i* 1pߘR<;mPF9&8g>"tP߆C Н{`_u]&Q mT+#$$Na\ȁ7^6-y6G'ar׿=<%5l_\;P]ݤENC09)@k.J5]P1}ô:nm: GWkq~Qz 0βUbS&CM$8JjIrxʁ"= V/¼)lqpDX Kޏo:e;dV]ptNd1|'5~kZz/u@IP|82ǒS#+.<3#\.<\/˼Lp/zr|omW%YRcB eȐz`)+EL~l"Yȕx3ϓ `wǓ~-~e#/˸fJR^ sIk=ڼBQ/>yzX(J(; "~QwyQEi׏FO]m#L[ DҚL|n~8Px"13[b@=G)L b\py+ShjAR43'xjf҇3px4%K-hib Ce/\ *3DA@55-̵c}f*t:OB=R[ ?ђ6pu=80V:,Q 4{ op; tbj.P^#qZ=*z(Ѷj}pKf^DXu@ *~|eUFf a/L,S r{| )s(*8!Jj”]#X0!ֵ g V/B3;8w[:ὪMKVjTȴĚBrSȞ϶"kNbb6ZI|pGc{ c9EX1rS*]\B!)/&¸'9 PCtጰkD9\+H: &w´hi.@2x=`ζa \g 6^h1M*OQbÎscgQ#SnMUCPƺyܲVh;Ю=m"hnwwaz'>Eɂ/O v _Hɑh`aC3`Z'nY\ ]rqHAX[N'^|XH%^IXr.c/wuM(]uޱK_y,-$|jj>^c-D>=e߸džZG3դ qWoBDqֹn-9ؕ*0\g^!=^e %u4`KGpߡ9~9N$;؟֕c )^ (ᖡnWcա^ M۹ L/u}\!xi8 t։M*zC>FẞQָ6qp:=MіA'o>uSZz_kU&H"Ϗ\- z(MSu 7ͬ"a1@첉3Jp`AOW[uJ ~Y+4$Ngr8oZFx,[y% <*_nl{yakh!V|}"Z7Co?ghh.[GnR}d5om2*=|ֽYL>5:(i˄BM,8BL;'RKF<9*czS>EnaI*fw6 **Pqkse @$T/?qvtt^#]Bc?o$ W)\ -)EL8Fmn2vTiQsKSamc/s U?SB4s]Q^/T0"]Wj$>.u}A7tjBoϞҳemV+C4g.t ݶ.vr\gŻJr!?S$_8d٣6w#T@C!:~8h+UM80w"طplioRK|VAR|%țK⠥G *k~t,<^+(mYxL?ۈu'p'Z =u +g˩!⮻(^/󡖸,ghz4JSJ\` Jncm CSmB]U[+ |][=W1["T=J"}uN>!,Zw⤪MKvSgli~!A6nrYlB_(\"w{ #s`d:6|6!E/cU38‚Ėt&3k%_9nqcҎTC+lýVXz.;;tH,Qou*?OYL6bB!e7j !EA >M<3nj/qih@&Uq(lF$54q> O],)?5?E/\wowʶd?,|wH4Fg+} ɲۛyą'Kȅ f+-E΅X)@E ^Te#hewZMVPE<@3_LI"IԨW-/SbzB {RᵤY"'HAVy&R]b fg!$sPo eT2xґ<~^\hB1T0-?z{O(DB.FI(? :doSj"kk\:[@N'QW24ƹ6<:[BA9ʌsx.,{I)3&H ܤz$6=9c(ջBxMBW3'gaS=cG/_`Rٝvl-܏w_Դe.}THfꭇ 2QWjg]U)R6|>S=ʛ7* UВLAWW9LY6m(gHzGb'yՏ>F߯<]o@"VLQk>nXTx\* X#-L MAe?B:H:g}oo ;_8<@=4|B\VZo6X5֚{ȯLG41_4.di_퍑.4dAb]ۗyq\PجqOѰϜ %"_4}$~u9S} 1<3MBv+jh]j} xt|a.|j=5BwU׎$ ;_/ ]KZHFQ*M˩^v\mB"PD տ&fW&`W.ǚ'g0<wWZ+=q 0^E97-#y$+ct h3b;wB[ |$R7@CiΗ2Q!ȍ;ke9::'k1թ# ?&dԜU|NgP:*|Z~ug1V] A T/vR( ,?/Eoꗣf~呅@ 9u> j&wֶj؄;^p_zTF!v}6 ybfLTfJl*6dRj5&M2ثD_0$I5`}ul[ ,J+1Jd 8T29n UXòik8> Tf%V=(:t477A"d:i?&;] DҎz|J!,5EZo>i_ʟK\!r!fz$ϲ[I&H1' w޲Vh=*zy97C3kXPSdYb]mJa(ݕs WG~h4Gq+REk-WFEsk˼Ft|a,~ y(]Y_RϔB(̇@\;{%jժG,q#rݪ%ey婝(hnD}z5o|NF Nۿ:/ ʋ6*j R&zPCB瀱w:QKYM!p~3:d ͉.ym3ku|dzhnL˄v%ӂ͒Ly)v.%w &tVkTѽYqwPb~[vxJ"2J 5PiO,TZ윕SFu7ʹ% x*Y㜩E TKfn24!>* ɑQ*~kIbif`h)~4Y "x(@`lrQ*cfdߩJfw,n%$d<;RXrUw'ϗD4\H/Tva>ٮ>9:ӽ{䓙UkEMiL&$Joе;M4m.!i ?!S&.ez{ )tIoJ0_sH]~7:MdaHYN 4 qD)w/ljU!l B7!|Q1𛈬 [[ՊZ(C{lo˽orο {κ&nIjcyWSj;>{ Ec];bڣM  ~D>LykWYM B6eEjZL63V = # ($ wV^|!]6?N$.2 v6S21b۰z8SEyR#kV}02N0iI؊EJ 耹/|_.~MvPGd? s|Cp/KVcyiH F/tˑFJ6ѵ2+\f'D@}.#SVWZ?fwK#`Sb2wɡ |d]ˈnj[J5{DܣՙҊv~"01ر"zw+Us%j$TЦZL4Ꚃ"S4)2| ԭ k  cP ^ 8l3iYuFsވF_G1ł@,$`)StO"6w0~ѳ~pX *aRxk8Z.A,Hh}iUs'E A:JLӔiܐcxP ~]odCqT߁# كqX guy2eM#[8Z6ttK h 3S[MgӦov/î}vn>0!ǧٍl,˕rͽ4y)=+klgg1A( YqM=/h0ȭ5}O>S ciZ$ZMb.Fs*9׊h%-OC7Zhw-7hUdG#ZJԺ`[4Fd[Ws\O/iI`MLG@H*;+M^d>f6 On>5A1䝯Vs7SCS TcBsV~ow]c߉,!_cLJ;ҪiOӊU]=:d˚ 7Y">R%z\y8R@}[i՜84șkL|Ek3^&[t_y;h1t+l( j3ʞ=ʴф5Y}pY䛠H7@2D ,x^`/L).ō]%>MC-")Q󟷋{ȕqMmݡZvVu2*CªR77v4u.Zm^ks2_JwH&Zř5{rx b!wz\MZ%Q0m"R !xpT&iQBc}!I w,A(M;<}h6psxBMsVZ92q8֗bTcY "F " 1ysEίx[D@{I+%TGeXͻa~ re `gW;@PsR`u$W&h &QySY>APqA[`ur6WV_&tZ<39xa# g[un~ȸ. 9X9C{Gܑ9 ?EE <j|-n;\i{;dc PqLnC -:!} "ݹ(t~qVr$Au.O/]oC(f;pgJIbf)r^f!X˝}xF^ Fl24Fs(Q,ۅ,-'lAEE^)sv s67PQ& $ R?.d2bGurx mN eK)Ϗ̻?̴ǩB cWIaFt{ {‹o`x@y]zq%L+XH r^Y蛬,2[k+e[jyXRsK ,:\$<teĪb ڝ+i3F;#bQm&[86b(7,vDVe s # 'Kn⸡)CܬVpytLn\C5D`Ѯ/Ve{>=oi)55;#N.ő1ǽmiK͂pIYK<;I,i lxWf _+8qwnt\s^^%r6dLo*?tK *w3ݠ$E(jg6<،34 KI#{ l:U#Um?YsCcz 7)|^Ԁ=r{qΔm>so$]HDdwtj3/]V 9G4'Տ7׈C?Į‡לn)++MimP4Q*im#a{+57X$N;aH>.GeXmi)spet-n bJw!̤F,'l7=cwy-"2|-\g`^ Y-YUg,K7[e^VQ\T;we\=CSѐqțPZ7q[tFLveJ b"-9JYWrK('@<14Fd$I#`a ^ru4q[q`ڵSc/x v|z+G*P`q,`grnW/C U-~nԿ8'˾SRcVȰK+ Okmv7 Hv1.4m1OS z. oY,]HƆ?=V3~qǁ%(ݞ!J < 6ϦۜLޠj{ %$7&4& Հp5 uYefژ`9xgV(1S^ R3Zk@VGBA mJis$ǖ6<#OB#-7>Wy/Ik-`E<ɽe]dA88d4#$nCQŻG`7[ǥ2(Ig H\ø7kIAɗ&k[ceGRws!E0 !V7/S1qy%~ZX;hsUnKy l]y`x!14\~OCԗúQ̞~Gh`duBxyy58BԶ.TlJ mN%̋TνU6RG骟ߩ#oiSqsClo6Q<$:b^Ҡ=@f<2$Y͌ $ 0빩%"Jٯ\\i=?+2X⃫IaA46eyG\-恔9u䥵08;|8ԤL*g#r䱻; 5.L/(gi+U ca\\skS ԜQ|)~Zd4V>A98`LW{74+Ro)mVJO+[p P8WaP,Mhz,Lkµ Ċ[Z K:07mt^yZIʼ!WX4B%ݛ&OP1Kq@.ltjPi@u4)Qr)QT5%[Ś7s)~F*{2d Bdb uj+)@l~dPf3KZ d09’W U'[]\w 47.)w717'jv!9{}Jq-,|wȄ5x1>Lo{,- %`Rդ~.} \QfV],uH[FFqʈ ؈ B|^S5ט=IHidbszK{iL4}+0^X&1 $Ңٿ>Ϫ ΛBjj;o ," 5v{*Vզ+6GTeL0ao8=`Sk\\4UZkO؋&'+Jqlu򘋺ѳ4(yߎVwwS w 8/=v}]ww+ ;M|5x<*p35w?s}$(32#/}(\'q7lpWV$*_h@TMpgE*\I~ӎ) CramY&JsQDd(74Jd>:M7o!)M/w=7=(AgȫvB;陎ȒX^b^5d$)Q. R[FeeCGLHNJ3(տŪpHk {\.F<ԁDR`1sA5r%IIT t1 c?tl'ᩳDF3ް/W=mȁ`m_Lv~̦+!EYX>ב gԇ/ 6!2EhS}Cxti9iVXDbqZo30<78I;vߜp鼳NfGC\F#ILLL/㈒חY%U:fZeHBQ4Ey.?m$cr]>Ymvh퐱W_ $jG粢d.ShT .3FLEV[@`E-9:/T +e_*;Rx=F*VU"zPꔴu\o˚=_J"y+^Onфq~0EcD")ڵP+ˣ*m )#B'kQKAcp Z:S㳴|GQS:@btid۝qìlQ2"!\`' )adzM{Moe_-V0Nc5 j]rylo]oΠcg2gzˀ wr裾aΡT1<:^,'CӪcm^c,qQ>ﰄ' =m6ӆDz55~vk25b|^Ɨ g{n u3_輀㳶{Qz>NZ3&9i&ri`Z|z(C|Ϗ6WęY 6֘ES I% s l&F "B J\b9 & (u?gtJJ]BCBDݙ޹+!v&ټPk咞#ppU?7=0gX%toPR f&& Ѝ@q^qttXqy:ǎ¶}<Ю4R_{<"2#ɶ=K]4@ߖtf" @71X|r1g4U ]ܧ N>79 4 NՑ5hX|GjwK0b_Bu\ Jl4 1}2j͇^ v;7Xۈ/ #Px6Ka<ݖд;h.^;woCH³iPwbh O lO.EFl˃Wz? .[̨.?_XCs]L؀'*87<1U)WݎZxmO#* R/.M;SyŒ=gB??MJ ՚K@ C C ]Be\!|C"`8!I]rD;=  3e!i1fvD'\Ր_M4WWz% cM4sDg1nr$ɼ-^" .a$ujIzk4?T"21ȳPT.§LcK]245Bݲ<Q]*6hMB.xt;RL4IJBSR94Y=6GTuZ$XYzF:eAC~Pg9Q2]ࠋXJf' ؈,jPP fv| )}g\T!dcsj!6c`1 UІ΍D_#\Z33% wYcࣞopRfr9n0f@60ZuBd1 jzIOf[Pv!cRu㿬Wmݞ!ه8XشZwoIc  q{ 7:nFذh"ޫ&+\!TIKJ 3蔶^ p`vChd0o&&DOH*1 %v) Ye )zFFXȷ1¿nkOɻw3R{L7Av89zH@ S__$eA (^a ii'ZqMd@u-u9$+ugcoЫ3ȷiTFX"'lWx[|$#+`"9(pdz{g;馷2"@X'I-َ h~YMI4uᱎ=_NC?'ܙZCm z3!|j2E+.nP`~4֪n4Twn`*6$ _U ٷנ8**{B D֙@ 4ז̱pB} 1PL'em1+aŝ~1MoӁP:R/QVdG7!9NI)fpYyb„ 9зjD^C|Ea}+dkӾȉ^X ]7i^^)(b},Gi"k%@8^ɱ{>?P- tO>WLFGxjPd=y`zpE:z z!Vzuw[J`ȋy턽ESByH?,u\u}BgHOIC"#j MZ>^sdvdM޺Zc B4v1& MZs$W2 *-6gICtQ@ǥ*Z#:,~Ɯzh=_흱{"R0s1dVVs;+$Nriijkwz&, d+S"ς`H;/q8P#{J.< Vjwٜ\tn>TFߪwTl-*w8 .dn~Pk2-V(={ݥG?(:/-$)̣Z=YTȌ*lrWgcbnG@eZob;pi縷s69QC BjD{Qe EX^;q FX's<>qYKuɕc<*?hvZj. ȯhR"\+zvGZ=/_ #cgbsם\xDS[<ѶQnQG݌b}G̓n(3PA]ǥ`-f+--'*a="JQoG\Ps%=^N .Ft}1aaODn,^~5y "ET\KźO[ʖYA`$'5-݋,dwpxv&"K43΁u YF﷙;6ןrK %iM,y_ -TgBx*7O%/L Ok--VW/j /m]0:j9v?"DgC 3Q%H;#)QEKX/) ~]1-V8N xFȩ'Bǜ.FltBaZ"c(rT+{x h5RJC,lӜ)1LwNA EäQ]'Z1@[_xD="'NHDqPMStSz~!r(/ψ=b0嶅Ƕk^n닁z"ĉ#"|+D8NGOٿW>!MfWCF?ZD-csvbBN̒4 W lŦd-Tl*e e? m%0iZGA ѵ)AnHG.RF𻻫 !Mt45;sYc+ ͪ:0^dEjSp&$GY6,oP<˶A+!Z[5Π֨Vj<-u*TSZ>O'r Πt(A+RY^.=ƺHۤ5you),60:X4F7GںlċRg:9r/cm}0B5w_4>uMTaZuK=86:3yDlWHDw!uGpˮCCD^o xa8rZei=Զ\>YŚ5]C&9!Sqf{<6Tj \e/H~A!yNY>_ĀBÞk}KS&VҫO* "6̽2."gDI g8&JeJm]ڭLaz*w{"W .P\T^:،Sڂ4Uұ۬T;t/`K.]#qӯ9v Z<}gߨ1~ ȴOW"OlׄJ 3SVAF[F"mu"k?@VAMQ ÌGi`4{w\O/iPf0HIꥯR `-F:1l{?ȉ=Е;20ם! G q}-a6 g߭NWRpYX^_5b2҉hEe0_MZ,f~E4>V4dTş2C-MB LQe:v"ܕbIn:' HHA4<[x|e8 xeTYҫk}j0(J#nydCaȗ0 HEDd4b?sTV\`̘A}΄)QC@rĨ6fgE2*eq'F5K >>]+GuQ?zxTBvwlX4-,;i'&2'ی$qdU$b $7%9!fX D)/-F\'Д2#/0>Bqe8`Ts#vj7 r]+l/EPp?oOXP@y"l qO[8s\s<>ILFwjh9;TO-"gli{Ͽ>1[/oQQnD`;Ʋ֜ϯbF*-JoL2|*ܓ,H OH'6+xoуV5F0xf&i WK^Jz<2LWjHsd@ٝuPE3W8_ U5PAS aufM3k<]?SZ1mRѥ@I?duv֩Uh;|z=1mD2 _GJ(JWhYxV2 s?2ˣ]a;/Mm$P mtm*VC*Cܑ;Y.YظM7*/L4d1Tr VpĒN(` .E9deUz x,3Ҭy6gKk$(;Y *r9'Q *NjZ~2Z~4uv0[^ļ5+<[T8뻰؏Ѽ1w!Nk="R9מN@r XYsdc8RFh}*1+Q=7J?'I&আ酰q(\| I[!4Zi'tXŃKSpd_h'$`. ʭ›x iX+F?ShFb_ 9#k<yIhk3u7 mb ܄gLP(-;/C "ۨIػ3cNe:jKW46`"[y)2zDd?"A)—}k'h3ghGi@,q(atIj ОMgoАTUţ\8fޫU7E2>)Wȝ OXGE+&Fzf-fl;IZWgk7 v&hݚjX(]"ƿAX6FRHJ`@ '=A l]xKnuYހ!+8vH0ρMwvWb8w8ISR]f&ڊQ۩3aZ!?t#o!7KJ< 1Khm=5,9 ~@24v櫸CjIUY INsj[<<!țT*uTzU/.!oϚm*PB6 Ⱀ970r[vIRȃG>dAfhR]ԦorHJ朶N5fm n`T3`k68_{KTA[uWO 1X)Gi0rFI֑\7azkY?O*wi/VL˦!rjkpJ65W{\ ?Df-pj rcRu|D*Yqz4|)Ė>HQP?ёW3͔>OpMJ)H4kWxyn%b}PTZhc@mv{rrlc[:CxiZlɨؘc7+0(!Ω#U]{Hm1 f^elγwXXH.,{#"QtyjgJ;PO)šŮ2@.WCs6f8hBKJVZӘ ̼"`o4$m1:np d2mq.mW̛yfl9 *`4w۞N &ƫ[|~WizL@G%AV.,n9|8忭Y[f2N5_] Qed,gq*ǡlKQ:Iz#_~q[-i(166B/^"X3Qr[Kmʳ[Ɋ&q0ƈцzGz{Û@F.șjhXw'2FF<.ߤoΩ<s䰜A ҳ,%# NA+ B I-a3"LͽJ0uxN.^<,y3=A)>zcoaI|1-(>i]PB|>X',=~VF" q,a^^z-pvPapcK7Ё(>oO;mWѶ \{MUǠnR[p]W9 OVGC05_f6}Uk_.e:)v҈ĽX;4B_U(ʐޟC>eKĬUWo8Սs.QWѸh{0 xg>ȶP{^X0s #Zq3 I?EUHTsyc^2VS*N}D{G-stb}' >HFJvd+aAI_Đq}Z܋tkS;]x3?ף$3qR{uu?; @KPhªir|!UJ^`shEצZMd[^QHNm+'XI\ۍ޴=_fjEe8= 4sdM^6A]")cAʓOg)2!_쨡Yh4mB[Lo%+ٯ+POU$^u;IsvmIَ`*zjpk*Ml, +KgJ3fRB5QZ͛7_D` V/?M'ݝfd½`]ߑIr_C)Yf>ETK»ú1s@~lgێisc{>ͪ~")nSnr@Nb8O:@o?Xrg.aIQU`AZ) Wq67jOm_xz^ e*lͳr>@>J2c;r*M\a2ڕQe&7}O~̞{ ۘya7 y>lus~ FSypa~ޮ52-2wUPf[~\kuh{tFV聮ШdgSN(摞8wO9z@4=u8a9_;DQ<4s']F%7p6C8~zJzBɽgL*=]:Ïl|$ɾb?B&'u52d Zx e2zUvvzvg*IvM藱O< )R=*O Wyy-o+'<.D :˗GbȐ yBdjo>7[c}@>]xԖk:_$CHJN(|:͠f]v_ Rxs~] 8}u)CP)D[TbD8sjr4dKf9ih2~wkrKq7n>$OH\F!"`J[⒌ `~lN1NU"^6j;t)%0 bz"v0 rJ<}+]|@9)ʇ LI=qHF5ݼ+lv r zlx!Vj>ɐS& @(+ k~B n?jcLm@;÷V0@HnC ;D+zB"fkg2TƔcA]CJE"&i%obwMWͨo nPk iٹN;R[@sB'5AP<rlxj|1ob-Yޙѳ`4@"0AV1ˈk QKdՙxyQb㻪Urr{l㗂h;TAS=ZCSH.椝f~<=|u?yZ\PVNfB+$,b+Miڦ 0k|>dÒ*NgR-0"TZ_,Ei9(ߍ5cos Bt=K+mW㎡b0U]T36#9KOc=ی鯉dg=ͯY7|BPg#H\3;t>z*Hlt (.2'hKJQ+82 tuOnG}&$\XiU_x"…"r̗-3N-f/y_:=x<)S]CsYT<c+45.RDFV' KbєȢlкuvqxXˀ# ֨m>_=T}mMж{C">X9]Qq^'l+/,I9cmcibBuuX^߬܏&pm+VwI8IEɁbJ:[rw҃w%im`-|@6E6H$/"h5HFq5S8|J͇ ~6OHΖ0z$XVO9@=BYG6U)R#c;ͱ5C K+dK/c?V5Mgu^YM1ڥ'DIHW)f*L{ҕpO.s1k*י΅jgɷ 8^=B zސ{]97>W]TYM>KuCmmXgJE8*-jnļIv`%#I+V^5a.'ԃ`$ {\**yC_tt;#fSsˮW <8kqP*#gWl' FPةm$Ӓ%3kYXu|Er2#U x̙J̛QMV 0&oKMs΅PFqjг:GjȹM~d3o0B|6{0s;K}z<#Ǧ𰭜cg9"ޠ:e2j.*#Ypkⷂ"4jdd_#uƬ'Qrj& qdm7{czOG,sϪ"PxTc+<j }{!K1s8 hkxe{SC &Ma0/ #E#Χ<q{S%uZxa\ZUd获ԋ "l؝jL(B9cIinLZIe0Y/Ն`=EpLpohI`k nFr1;džE+}#bf9utc';@qO I 8Vq(.q!&%q qBÊ}.Lm-=)Gmws*YKk4SQt¨j_^ÙG;|e<eqDJ#V$ 5sBB%+v6OܼC>j7KW_&](7%A3}&3'A!ߊcI)) (~,Fψ2n^U Gr/+ti NFkȹTU` rnI+*hbMm/'uB_um1{ss"c*F =/qOz{Á*u~ Sd74EewmHoxpJ_qH/RP]Ss"Ic䴍-B*ן*M:#T^xf<笭SD8ݲy=H1?^׃sѹԱZ#+?A2Lz +ؘ%VCSiX1R 2/џ+v P>.yjCygŽ^4PƓ/=fň4,#/땚rdAkgxkjN70S1çG|Odk=/F/[+C#@<g}d2"Vͩ ;}{[Q=wqiba0_h;a;9Df7]ԦHqui,jW9g n}>KrOertn2L`&èyWd~ G1…Uo-sFMzЯڛI Wf0eqg#Rwp\(~E>ZsNA%3K&mdXJJa0x/΁2#WMdԊ2Fhܞ<̙ؓR}LT>a 1>T @)颽02a'#( 52'va|۰V^d$wW ˆǡjFȨ@S5 iU+2<ߧǍhm{ Pl[.)R&R;CqLk"Kt._U, B1/nu{oX KЩ!~EܸX.>Y!d*fijuh]2ZZ*Ukq|Q=C=5=b!#`vkk=EѕOg:qQ\FRӴVQNnÈGF=ЅO !^*^76p4L#FeL e]s'@_EXJ[8lk>+jl-Ժț?NEQ -Me7OdIH![hC}#IJ>H~f G}NE2A0žG9p9N0 ]}s{wA#,@' čk8I b]HmnSaʷKAf[ o<>z"䬝mETfr&0Y[C[JzH'LL @[ˏ+8Fc0R$/e@z !T;Ǝ f5v g_) ̻ 56ؼº'ScOOsFL~lS:k^r.[ R69!p53PθCZΞ؈1&eha߄ b:9ad?01T*Zʇsߏ~Y] l@ReN|2!iF@Md@_#[2č|z U@ssJhgHjUۉm s )ՈRk8^ּul.2\$ ![G֢XڡVYQYOVXbC C 6BH݅nM)0>|_r@[בN.`8:2>4c1^nVٳQLjYP~T\ [+𡻿pi1d=A@> (Դk ӞJ+*CA4xT?/Z&]E'=.;-ᖊ#󜽕"ߟXͲ IO8¨{ Xr_O}jȪBΎaM9f4w^sf{Zi\`4ڰׯߴ?#?e(gr*ݡh@lR1rGuKg_Cz ä\QJЋʫaVzgסDO?gK!v7{.cЭAr^"0gh 6pթB89ٟ="{2gm#&hU.&iY;ND#K,M[t[J@|nG)6Cf4g;8I}mٗ9X #T߂i'XҕpAQ˗Ƨ>?_$-Ԯ@6[''O1ÑЮ`Ip<%c6&p1OSA}b3HM2f4s.tl |TL _R+5ւ?`/t Iq!#O5~c(E` bg'.~:>5m%M .#'K>W.H~Gl3dzi<) xH@7 3 !>Xi&T D_ ]wx-h[YTGD,d$bzPF:*0%kIC1i6w ev =׸Tܮr{fp&`E\.7\T^jI/: Ptc'E.I'vHZꃸ`$joL$*wgF{g)s0U@}4%/4KG@6?(u@MM&ՕJsRZ*mp;E`yBo֮W7D6Cu.7D?xd/gDށLyI֛ۈpX0V%gx Zo:m}l@(C]h-dD`C-+;Tv{Uz)mS(a~H&@&:g8/D)c)zC|HyƐa/\ ]7L?4g:hK*UKijO0S~0T5L3Uњر8q&(W2K fah-N9T8_A.mvho~дA%Pz]Q\ S["Ae_ _5R E5{Rjl3FokpwHro[iFE _ė¯w>9 Z .EDZ&6U>/Xƙ\xaXyHHqW7?٘8P)UCKK['nsEF30iЇ-t"7H1ň^Pꚼq$ãn$>ܯ} ߋ69ꄬq ϝ1EZь4=N6Eڹ; ki_.*Q"V!Se\e(t)mܞC@cA4W H=#8C E I3&,㠣;Բy*]!_54p]c\J}Ԗm[7V;AmT DcPl2?T4EW?~9~Ԟ4'ooT)KZv@fmcU7nL$g<~ 2)Cwl;,l_Ȗt1Ɠ~+ǒKr\< PC1֓SCr?y\Y1J "~]fKtX!o1T\֌k@g}~C,S-Is )$Ҹv4#jc r(Xd ?zztzT!K翳-,y J7k0=?J_qMD025RA7s^.U_%=w 2w4%АR}{i\O{ eP͙}C{-_d]>+Ǚ ^&㘃**JvSfy8})^u 9". M #(i2H/D搱UoD]~ICOKWb>/ԩ3#{FQ˲ɤf?%bJ3r2YӘ9Uf3s!k4tR5(ih˕c{5Lmna9oz bW+E&7C+np]u'iдn%&)<]?̵$.&Yju#8&< N_G|JbgYP2QPv7YroO<m1&6g3qw0贝^l_/LϱjT膄 kڏ,iBjQ ;gHqÕ յ]ח!iѨYA|tR=M([<'ʫPۿdPubD,jƍ[' 7LA;28v  c4 XXs}YI5ɸֲ;m'co.J%>|jRk˥7I}t1 >!-1/~=d~\ͪ*F}BiH\Аj3uߞ12x[6}Kǰ06ͽWQ sGԹ(C~L}ڧc*c+>iG7YA7pS{ɟk:: :C] w;']y A&Kh7}k N?5-XF 7"FbݰW^u5@G8 Rfrfh_bVDO=,_ gk  ܫ`P.pz;JG&RƟObr8NU1F4W&gʜK#P}әͲ_c$<$/, &6Pb(Rmaq#y9YY,E1^Ks`yN61еAĤ`7L5 yR l(*|l/cOl)E3(uT 1@g5i f&5\Ac±i~ E~yP.#/DZ%㒸7u VwI%j&9,ArI(~P@H3-~ ty1c0=\pK*m /P6ڌ)ź<XMJš%Ej5pj^]HkWܔYue g1Fp׾5 TA4λJ&uF@a5PޯNbtxKK7H//{$Lk:hG,(i8-<ôt0"άv$e,&m1QYDGPr* uN6"e4hfC!Ru 3<@ \f0pu`4x} HEL*;p-4y«vu[˂ߠX]#F;"Xȟˌ7n5]|ʆ ɴuyKC^fy~`SOX+ :WnE5uDž|dWoMGeڤ!)1!(@yfU#&w 4Y/ٲ#Gf#.=_y"<]k&]mZH۱}'rdNzMwL r6U ̗{]kk5踻s_DÄXbH| U/:fqc`?ܰGϒ&u&ҹ1pF ]2:/1N"2Ye*펛{LO24A䢓}DiEN`A|VT BIK|oM&Î/k&xɐ2:BhfLɳíW H9ãH03T͹*)1nyDXPOUbٻP=@ ?X^ྸR|w3b`#6Y7a@e"7G_y. Iԭ,[۞toэ#dK|(!"Ps@wŊ'MA+4Ul,(- R,; .蔞2w txs}CÿVV4,tQgXG'@z2; #/ /ǝ+3 $0*4C}$~0ǞruK[^\K]] sC9'3L_j:W%/eWFH5 bG,QQ^ze<( "0)ܰlVS"oIO=n8OÒ r87i*l9wW$I[Kr݊ |}= ̘DtC]K Ly(.I ڝu&C-W"`ޭOԏ5vѩ1=yBæIwy`\9eUC1ή&Z-,Eф~"Q&H0CkɚގR_ݓ0Aj(ZbMq}\W!S~KKe |/4htf_l U]7['y"'C"HǧSHgLǴ[XpO\3oT=+S򌬿^c핿oZ'EҚ2jl">Rt,EVIħ^g[+cY-o'DLj:cƦ;vhgP'pTfL;vcӖqJIK-wgT!i-Ӛ?: oĽ? >LgkCi,τˢ7kKm bp8hجG$u^f AvU>:zR 1|ljg1d%-:}ĘlASsm$۵1 DҩAX)wXkb) !vVEaP&ϗruXI d[$n7 , 嬦i<5D_ !1宀{啧Q^]Kcxnj|q豟R%34qA;Nkͥ<)$Vt y|AgգW3$Fˋ)ƎGԒV/dwZixb'<%'vb 96AnKJ$#]I"a*!2ekk#\,$' c(a}c!˂'hXĈ%iȾRM g4pI*AHIWEoL /:)<ª X(3E-c EB+6d:G(zOqQ35&a;3H^,Qe yXF.5#|) "X!J݈9xs2ˆQ@0Zg)]'=  nHKhEXHO/ R;Ș΢Kր뎽2usbwzqcHxonݬYTnC #.9NZú%9a"|ի],y=5o+]Z#O[Y8!ij{@M͇DORؘ`ͥosFuʆHvL D>N>b.|*`.5&YWbH-.`OuzN\{6ڣ rְvGx%_>d8RqDt񮿝B5Ikx. aCɹ*̡׈gH5)YJK$&T4FP'to1Cݢm p5Qs_cEړ1۠1Z6eK;cKNEjF^sO-=rSgkeHuϏ(:? u}䃼 c uKJUkDC6$CKde_:J ϨB`<¤(/ ANj~@2|T+}l٦aK ,1nI6+^ 9ԽF!:DɵwH rETrNS`Anw}vEj h ΄+ƪpp >ML!$Qr\t]Ib}-/ _Tbm{Nw0:eXAzw1Ž  މT(n oXB8@5MuM &1]`0V G]eR7b(H|pK1K,!9. LW7n&,Wy [2 f1C.{kD2<ѝA#jZ46ECfJte -Od׫/o2J}AaFMPxd\8XQқm(/Ǘߐb sL^_;_$~~O.Le$7@<|ׅQLG=Hpy^%}ȫH9]S/^Jpj Tэj aWg5DX dk.DZSi=&6jDDI_(Ri23,Jإǐ .N1r뉖T]iiu|Z]4®Heuf(ۣ'?F{*|3tP f~JLȞqYGva |ޕ'5#YT6HO؎PkbJcHF\{jO$!™h%Vvo'ZI)w_4[/aiXZn%W~4yH|K#e^_|f7G&{NYc O CߕۮE=#}"p ֆ`Ml3| @mL"nN:*vz44)(Ye?D_cr4^s6]z}Ϟ@.*â.7YJotXdݳot<qt%UVi5q1Ws#d="5C) ᗊsOLDpvjq a7jq6zvv:7(*mgm#D;^2 %"]BevT򆩩- [7!k̀$ɹSF4Ej#z*F"z!efo䐫߀"EE1{8ϫnӪ#O-ޜrQr)dO@pov4b?'Q<~ GUԟrMQ'lGʜ #kmoK!;||d\)&ȴ?t~* 7!P8eb.rE tH¿vr+6̘kR\t g*bzJEɍySY'-4[ͷаMI5ꉲv%Ĥsw''6 X1!gs!ěŪ1<5t(o/"[KQR#05ڒV.|,ޑqֶISgD ߘئ<[i$Eڇ?NxJX;^4pxnTsyXVP fT~koqXanQO[wwI{r ZR ˕$ud<P^Cؽ/=>H&ѠrVEH% U*(Eܕ?qXtZZpnHZHm@Gfjyscoϧ}VU^p [Y$2rΔXh͆ewabs@oZolwf0wJcl_*>ƭ ͍Vls$8pTF^M:Z(}a=E.h(\w[:e֨L GuC-HG JL〜>֮LH}c·$oӣWA"I`/jb#XGlK&uVmn\p^sϙQjÕca9zTaaxmzy =(tX=n8,/)Rԉ%Y'7:%"n1yүoc;~ý_vUmx˱CEӘ$‹y#y,y:& l2ip4#`@sJ{KׯB7_H[$):vjCh~~5{2f}b Gps75 Л8dAe&c1$ fo˷xPXV 9q 1OSg\ ߱C.UwW0pC-O҅X9I-a/;vr33To4l.!!'+ٍW^޿&@= BcN _ Cφ&1؁%ơw Nv-; `nO +Ղ@h$Z(` z&!F:zKUF\R^ʾzơzm;<֜OT\ Aی?"23/M/P6`6li aUqZZ؊/,n۫WOPAi*WZ="n}EC7'0Nf[Ŏz(?tZE#zԿ4L mzy宼HeC`+yl7hu_˾0ԿuQ3{?Bt6Iz\FJI՘ȕ^rdzld3LeaNȽ-`0wjzGew`-@EʯJ{S`k3T/W(Wni9}8&Ng#"ڜ BK W'bi'PoOԹ @_;:kSRp2ȥfۢT,ZKFʊZdݥWf]:<&d>~޲F iFjqP2&-mt0F.l!vmJ`Ɗ ?%t4؊d-j+[71Irv //<՟=g ƦpdIo&_ɂ:vt$_K>.yɫg L֍cwF.óin]2&D~t\_*g4 PS>؃ ~qOJ Eh86Q͒֟Q eQ*'(PzϊZA5}*?^^fq[-J݃}T@-N`.!`~|ۙV`2Lh#TSW^ܝQ)(h#"aJ(OݟjN DpOE{z49HL(C"@PK -.׺\`|@19Z^5_a z OGVkq0 |\J`FX;1hA8!塕'˦y3~6kcp8E[hVI@_0i>1ui n)ߟTDC͎Ϗg1hKhx=,3oEQ^B~"W"{Uxg8qgU2zk:@ʝ_"&.Hs4(w+dž5<E"͇;D Q-AnFW^\qDub](wW\ٳ 96*|X\rN*Ǹ]tؿ +Ԡiĥ ͟ib$Ɲ/ GC͡9XW wZcv¯Tփ=q_g% ?c S# xeY{L%ÔwdLE{Jtt71EpgUa )tL !(to-uzh?O0yd IՅps}1Xp6o $lq~[NeQ*zIюC@2: ͤ> br kqȽzsA). t ;J֗bp_XK$N$e0_ %|[x„N2(Jd! ꄱql$_\7kՋ~^j["^ ۤ! c mW͢M(/"V#2=H9"% uNiQ%-= fV)Oxz;dlh&{9X5he+\bǀE\ QwVo<J~]tdz´9P'f}jwۅ*sҬ-}rRWHR\9dӛ[hvlW8&m*}n=@4U\k?~ Vr DlBaՕ!u㱻-'+ I70 z>ޱTƽY*yo~A-8Q)>f'~zww-78m9:hB|(@(P#nL`I,>Ʀ 謂y8_K}sH4F׬%Ϋ?꠶C@[5oh!hws< 2xWAؒTJ.p̈́QC^(Xn!)udɒVĬ2RՐsJ?tk83J fthc&$l6mj (bMgӯ՘ќ YSZ" >J JږHQ#4m|5J lZP<4&Np=~ͫwX30CbHwQ 5s.XBZ3z Z1ެ-"KhlṾ Qk *E4kD ')\{=1o(tav pFmO&}XБZoȭ1sAD]a.ߐ_|acҔ Qc<YPO{GJ 67Z=|Xo {b3qy/p"HHtn,uF+DZ2ԔCF;$lI: .6KcTq캸zB='⸣qT<* RjԇhK gou3@~w{;娏sZ VBsh1- -jWlj:řa ?.X*4Z2 N%3ȸlDpg=:WDh K 0d~oD}feR G)a0Y}ƻei1E#=^Mde;pL +dLjT!3޶yA̓87k3Sd%hSo:{Qe8Pϸ.pbA\QdWg@e:ztu)Ok{Ju-]I. 06HZl -b(G("۸SM p\!I?WvA@ȬtE6`, N(r, o#P¾d6NNゃΔvJym-a̼;^t}r8|E +-0ϕNŰ^mfpCr7t0s* mNw,F:_ :Z@hWf0| \~m EsStK&ř;}3V̈́ ƓPBȀkXDZȻmH`:̮zN0z,&lg&$e:tV8d]ExDHa=cJ0Qˤ>n+ݞhaVyǾ>DfefvNju~%C69~yo6tjjG8ȸZya~kR~Ԗ914ʻGdnx̘TI~-<\b兔GWP&2i+8b/L6nƉWJa5mSZ{tɷy!656iDlx7E4.GeM3$[)"y6]q<0Șl*GkQy) 257Jw5.bdj9F5q2T_ UN}8DVgplS }&F3;q>LŒ9X3@lAFUV(Y={F3[oJxX|@uQrnR)gJR 'jQDfS|Zkev#;ciT'p#*O/(_ [Tr%Y%07/BɃ6f0 ,c†psm$br Z<64e>*Bﻘ,8KGw9CW۱.sCEJ}]yа&a,?RPovZ?-exu\жE^hL_}qEzKa-U':o!vĽߔUNW6Cѵ[FT)ׇ0o׼FЅ]=^P{1| h  K.mn0Sη_ٿi .2몣T\P8`o(w@.){êm-ʸsth'zd#SXha D~iPe Iv|v>AQm0P=k [ /EPC E#wBtؕ闀R %ᮌ8ak $nz%N[}#>ʃp#"C9^J9F_</C 5uW%[rTb?}yccV?N}VX1SV@t A+6ezM=Jt=^+8D.@UVK~vգkt+ϕ}8C7K* ;7^h$iopbA'9.~cL'oww5 J2ʳWO$Xh(`+ I#o굨 8mlhc_߶/wOßa΃=˴YVu FK\ZW2Hn3Ϧݨ=EΊVB8`SG~YӞ%6n{(I⩻=@U0 烦|AN!#[74~n&zZ~19[`d}P\;/,605y] yLMBL=N6K<[8SD z> ;I@Io0ፌU%I5cKթ%`$=d`/!AimYQ눥C֑\{:g j]_¤Up+W(4Sy9EjSOrPS-P ~bəsY,,HL>R#v8fܤ!6w@T%G_q: G<5f>20a|(\s&uÌxi }RYL׍gaNSAю3ny\".P@ E ܾ"ktce*zZS}`e9٪WePz1Ep;7L?P3¬-s8W_.`$'do ɛK)#\75( M%=½ xդ;H;77W$,E%s& <⫪ &\D=ׅ;ÎFG#&P̀}ǥDcėn^pmUDK9'wJ B\L!Xz%*$wsG|-*渲5$:aƑO.QbBXMm3;X)TIx jq PV=Y{)-г&$=+OMR\E]9>yī4}rz cTvjFQ[W?o{^L TDusP)ҀT aK`(I٣)x+aeCn3p#,=-330z( Y9oPErKSr"gQ]fc"a/MUBnuș)֣;%~Iв$Dz0%@+cts!Oq _^'g|T&yXK"mK|N|B|`u{;c>[@# iP߯K dV-"}}ϸ$Eֵ\rM%G5;%1uNpY(|dɓҚi9aR ' * zਂg,A!H2Ua'BiQawsG=J>`:1Vٳ<)Ҭ;ICZ3~wYۆ -BV\G|ξ/r@>* Q%*t;ba걛#FD%į|vy9:v*hh4u-&jG0iex7zgaڋ;X5izWnhk^}lY! OvBhśNJQ;o o͆l,.gnYo *r3^Xѫe`57CHYոFV81/s1D*ڣҝ?z/ji唜L:vTVHtkT!5ɮ#Լ oGjyh\"TkJ<[M&(ui! Հ 9.ɷTXOgBU%`^b*ZrB8uBvG ,Jn5?=;hx &^ٳ[#jM+4e]9a%eRI:rNPnVgs)DTάo .2(ցҪ$"n70͞ [1"bZ&> ʻ%i_HtNwS~΋PZ#ªJym|0X{VK`W!9?Y4X6]s;q ɔcuCէ+-LPd E NнtwjK6vnE0 K@HsDы2rLzӒ}B>[fVu2ؒRțiB.'9&`{MT΍ـ{ \,":)QX {ﯗ"?\/ђHv{^ ˇ٨ZٯwǛQ:db;rr LdES'ңQi'[Q "|Z7L[IoHCGCb僑cW E\Ϟ^UvAm '#U/#o ΀W\3j1>i_J 8Ry.G$%4ՖIz̜OQAFv3>G_4V_ sm0ELǯfh]/-ӞIwfUQ ?[!PomIF rTw}Ml`.5#tcvC岥>xb4>n23h@Mdpc=ڗ|Dx,d5,p y&Tjor]B6Ƀ t] gڵ`6`YY"H`\)zvHi:S?s ^Pp*U1\0Q6 ڣvNTxz$Jp` ,azϕT۶8Nx-A;ߣ%Z|a=awZʙ3$5ri1FǎlTj":tƤp!rcH8 Vps+ݢk$LW!k_&+j 2BYztV-Cڋ&`sRb̯HN 9E[=VдUovs@VR <,8bRvl$,u7<)mp 4^ܗw]5@JvPB 97MX9քڐ̿Y0^0!^u6Xd}cC*E)':0>54Uw Lq= $+G.ݻz]~\8\*"Cb:_/Tڬ#rװK$NWPQncMf.;△ot)K3KߊPXr"FfيjNQqw_;C;iA(9YrB0髐[‘XoDзM9g @-f6 !aW;QN(aA!_?h6$֗["aДev  ~6 2qH~èJ#]Å":ֽmʭeJڲ~<- NxaG~Ɠ3Y3] >kB \٭jӱ'c'44≴_G"iY$ޡ -Yw JnsIQqe}1-/Ϋֵ7X4["h8WV.]Zߨ1ΜM<\}zתz<']ѹ%k15an~ G*!@2ik>CwQ攁hrw9kjWNWT:JSHn,ճbdMyIYoKbYt"^~S}̥<=)󗻟>ҝ&έz h, 끝 O_dD!N 7{̳xerMیY$c/CcTˆB XPfVl",}49v 9BAg;ܵg?t]mIܽIphI0cM~+s (2|g2I-qs N?;GyvokHm7犆̄Rd3l=7Խd\-w OޛeoY UO,fG"/Qc! eq(AvC0 ZS/$삶X>"JR}5vEvN 7 hn/f1N1eՆ|<趒!^&yF4Y=O΃͓SlIS ~ة}Sb& PFA=| YϜxc| Vz%RɛmK#gA5n`qpkz\ҜxtiS+p3М{brI]k7{lYz!` jmQ.:'QF.dXx`hhhmnM~ ` uR`W_dm s$xc I$\5]6$4<ɱ80T5v3rلn:sֱc_4Y>9XW*ng]"pC_Db!L޷wvA?0DUr*jgeEŻfSs[pjዯ|3ijzDNpR%k:? XԭY98>{3y(AEcP'Ik: jt8zMڸ=a0FkdU ~ԫ}HfF—ϗb%|q)-4>K3Yd}f{  Lp|Fg?-> N1~CZG}w~AէEM~Dv]KN&eN^vl ԤOJ_#ǧ^p-+m}آLV0!#} 7R9*dSM܌ʃX(8"=Nxoܲ#n7HZLN\o~B%e0,MA>ZQ>ƾ.,oeяѯJmggfo!kB~Ӂ_&8+mT\]b`@U\yAv;zͰeģbCE]|̓q+ǟvwt+QhXErp+k:`IomvT7-L"XD6VXk$N.t[i茹^[HKs> yFG3Jw_޿ӥ~|ȡPOt8sNh~˝GL@ʣ֏l9"#p'uɯ[ќ_lSͿm DAGX'~.isLΉA}cW"jt-NYү["JSSmDM0|ylɁQfo|I=?F1Ҽ(>Yn/ލ CŵT>;!5f-A6%bڪgiI*!O@j,ѩ| 9Y5+`=)^KVY͖w\B=  eK;LӭACu;Xuā/@gDQ*٢o.>u p:1j9idi~0[{!Sln(s@dr;s*%2\%^W}*BȲcxR >+x"yq?%M2S3Յr^cײT[q=Mɞo\&4 U">S™~}o8f|KVN,&N[kY%4/>ռ,eYhϖq: B-]$y(x%gBZٚj,'>H~PRR/Jn&)]1vg ~FA`ˇsVJjaM :7b=5SȇZ|n6[BY&cC6HBǖru| Pʇ5o^h\ 60|/y~GdMYi1}QfcÊ[U#2d$M?aF$[ $mdq:!,9J~[^ۼe'EW'Jۥ\lzHO|YrSNC([Djxvw4\v-م^j_r6IF'g^ ],@{wM+QQ'F:bߊ u`d0=C,'x1Hh1!O) d4pL$# M8 "p$9oX8K>3@(X\n܇^#Sd03H;1VI ·g,;ty|w2ŞmƔI5<+5{OE_'>5I;UD)xPC:C&Bupl7^'ŏkǜ4k_1l&I)mMAIe[MCCӒT?h>J]aHpm‹b9mLG2(ե6%kMH(/ċ,'[N] Aw*B*Iqwxk5|aєإ{T Qa!#|g i CKؒRf7wwiuE+8P gyR>KۖgzōC_A'n[4(g /?;D6'19H@[DHə˫na8puJHս !D5}̱Oɥ+BoH&bh'mװm:Шfg=yh0M7kitVWIȲc(p6BD̏rll&=E@<TR@mmw:-k<JD+1aB?n䎩}39Wr@Pa3j:c6=]|h6fhw$\v 4^j23v<r8E)&NݫL#Lgdƨ-A,$P( ݶw/TZ[GΩb0@,zc9n hzaBpU(e|"3Q;t~^5y.VBN_u޵G(1벇N+8B|VY1pjωгz4@T3m Ul؛&o±wx{Tnv̶,3Hf8k8 C`WŶ4=J"EV ?\Χ,ʪf .\ FEcMX,U&;u4>f1f{O1m@۫yJbR[V7.Y:*o32YY_{Y [EQ/1-csz%TsIjUYc) ۽ۅAozKJ0裲Qh=a 8,xaJݖt: %s+±iۦϬFM\eJQ .<çif6P&֐8_msjʾðh.c? Q瞰G3O // ,2@ɻP``Jm(CGʁ*e{Xad-'ϋҀSM+'H=JqT8hNiùZM7M֒bNh\oxC OVQ`[RDr:d1gC*r뵏t9(^B 7]mn㈠<;^%O;^ z}dp`a%}òyYܯ1,=u rg t )GKCmis;sG dz3AJ;;)IɾOF{ghN3Gh/!Y*Ty>qݙ!Ms)#☬hC'e=RiV~9J#ٵj%`|#Z*pNHȅ MN(>2@|V4x9mIp%9B0DfwϪR=J/ 8v\W"pPzקJſ\y1=W8O3J|EMƝA\+1pGF4IC4$̦uf_> z3~;LFF(`_p+ڤKj)o?&\xv;D?}V}қIX| jmfmar>nT΋z=au }i@{nJyROU$uzy)o-AWͶl2C~E_Fbw4 RЃ#,2;KC5lN>;mMu m.:@/:]9P7n ='ɯhvLW}2}۟A魟sg/g2nތ,п" TS$*M BolqY>C-)'>J ~ =LTIV\ J&.ugpewв\̞ HC'g&@ZErSC|1 S4)2OM^9e!َ{7eFUOh7F_I+ѳ0)<4޴6K#2:9mx\ȅkK $8/t 3s~ׁ eAq)}-hFbQn7[Tjl놦^)W(x# cHew#֋trldiBmXaO/|'w\Cг ڬ^acRtG7c SvPbauǝ4zZe0V{M? ƛfs<ǚKPgVagrr>Ra A-$džC ib iD{6K7!nс,/?jy~Ci.*Bܛ!y! Ogk\CmBCɾUq5_ `}=rKe(P?1;vh4 f+V\M 8L>.VVe]{Ȝk+9@0Ӓsz v%"ժ gNJ /D ӤEq xu^u_8h"D*SK x~kjᶥc/!P0סmvd__zcHҦ QXq_ɝp֢$KR\[2I !͒yN+8YF^nC CupceY5Gy9=ksrJK;Ʌ`C|:k;4[}uT/һY[5JLk!{s#nјSs n^cGR0aY?%1PV6ccq9EH|v1M44,o?8T&-g-:V(%ЋZ?x{ p6HG-K==6;o0!r.T+R"sLЅn$0UњNc*@(O^ 7MP90u G\o %8;21 !]ؔWqmЦGjڄDdsX{ҡhƊXED T,sݨ{|" uFØ.Mp|Q:T)[_U;BơG+RF@ࡻ /G] "M$nhwarJzKG7\X-7=Z/hsU ``Q{xM1jkàO[ߘP9-q6FV ;EY!WǬye)TKl njW0 1} 60D=b)z w&WW"W' )hN=K?Cag7c9 o`+ZX-S/X8ܷɱl5[an"yd_"EcN[y}&sFIUAۇvfM!tP,vlk s]tEy"sVF#49lռ<9ؤw[#m[w%]EQBg3mI,uŸ͝j2_ 0qn"M mtY@SV:3cXkEDӿ`0=f{\o/#q9y^7Wx2H 6$܃)ݝ͍*5Qo`)0@>-.} +CMW]0gևvC|jA:@l#=,Ӣ㒍ASgt Zv:̠wPȥpÕ8n6 n#y$\@qHMFbD(գ U5Qvwb;e<39To _r?Nd!XXf [}mE>>cG允Ω [oe~騬kj!R]RZB [g} )eRm͘0o;/ ecy!| e0*lrh3 v(Bp8(0eA̅*/'8K'9bbǸa?q9 ~N.H޾f #*Ƚ'd̷lo Q4:Y'@=GM yi.lT.*wN»%Y_4S%b9.hJWġT4mdZq|V f:TCtgPMl5Y-#@.~bs(}H=.qqL,H_異p]#fl\ƚ0]0r"[':oUmȯ/Vz[VK[N\ ֔NFt[q9ziWQOFERxʑئj Pp5iU¦uw j'NG QB$fCg>^ ~+D/8>ыX RK-UA #x$*iÁ`Wx._" /]4}HTga*锸}~0^ ZdbZar#FTHAJo`y|B1ӥBcvb }~TU [Mė)S4w4$qKd>vLsWJlP&t0w|2(̢!mT j[91eZL[sO+'ˌ7D* P,kh/y)>B&ّSh2V`"2󑌃$U+i_ןhBZG\ a{GG1`rY{:(OڈTW!A=shr~yxvu~v6* fIN" =ނ%2EXI7yJ׳tP>F Tˢac uP [+lM雹*F'\U0J4"!БZoʄ^O'h#CIr %vܕ Xph:&etCo@:e`wKO${\|Y]_-uwYMJu- 87@xL>]̺٩#׭ (zL쭣aLKaTv $ha>Y[}_~[2G-C?;|)2)DӑsoV7 tO䭁y^SgZgitYR]QS U84^LJ1f.35q adjӛ*>vP0%P' D=NjK\ImYΑ$:|9D?_),m}k]n *Gn&9[駏ESNl pJgqT$$p_n|:MR&s2]Bᒿ[[JObC^Xڏu['}GzDK^ yi~W## [+ s&C?!MB Rm[w!rcc2H2҄Z+_qھ 24Ɨ%2_`kç)miZ ,|91y+EB,Mzؙ+FL&"zA5G 8vdqWf7E۟쎟Arݒ<]׻:H{_l__\X@\/~O Us-^vO#AxXQ`hgxLQF֐"? (Y{yvB IULx7Pgʱ`Q3D )<}Bg,uGC1ff5t@+*}WRǪuFeXn3~`h>!?lD .3@9]) $Վ5*}53uzfȕCE|Օ2 6OӌEdEYvҕ'-$5S-/mGɰ&; F nV.%Y^*YI 8U]VGEkЮJbw"#%y @vG[cT B. *Sgصd">)'"}*\"7D-`X\Yl "~)5CDU6uϓ!jD;?FOu \ACYƃ,zS;i3?odCś3d)>$`D/oܶs*)?CAi/SژR0ѝ &d֨^RVǾ=Y4A_Ys|m6?+qmG@C]⋊?9YtTpD:^0CWl>_ZRviBm؞Ԍ]δC%) E/Ciܐ챓}sj(Bq)tSKZq%@8yhTnfuyמ(c.k(m$ٟFqlZX(kI52(i1R }O>WA߯sF͐p<1сCff&tiqcYa.,»,)*i1>障\ A6;hYͤ"3ɫ8;ySLRHVʾb`xNaT@旚1֧t)$s7w}Dif4G5u:],ʲ}25 pL΁vgvwT|/MF2ږRd}<@}ȸFQLil 6ttp?7WQ,&.pb m#ھ=J0ֲ3VF6L\NU4Lo>-;,)15ÍdH̟ OeO࠲ mbB+ Ɉ(1TL?(&&fE=A ̿]פ5PCg(v>{ TF,$߇>M؏:}tzbj,DXEZ.q+'~$6[B$cB?UOY&JcI/)%';(_\XgCg# Wd4M ~.nu)a.ݙ}vA';J]+ۆS?hSn&eE0B9)q-_]?dW:1D.ٶv^i`Oa0y:a3#99jm邡>:*8WV'#a!$oox.)!b<HF<ҋ62䳼 nkF~#xvCX"Bz]_%(/_"9k' |g>Xg3T#!5ιF7MۑEth , .Wv3IBi"QE~ &ܺ+FX ;ojwo#mSƓ^G L]^_Qi 2!$@J ۷6ީz4 bgc^ xښ<b9m{$H0=-v#p!* n>ES=Fer&7U+)8S\3ʐ18W!Yp7ݤ߀s g+ O8;GrH~# ,'.B@>"W-UmH:+JXai$&{9pd0"NB' b_y*2,;*/ؘ) և,W%#lT@`E 0'ŀe 1`\uMuIy$i.@S FpF Fѣm}?}I-ʇx\_ `,-/ɻ"YYy]b`g>rM`FT:эs1.lڬ􀨩j5GDky]t)9I [H#U)~PE(H6[pݧР^xvo :R*&ř[D!]QbvH!2_NkBM7:|-5cJEgq ]r I/RDYy;4>j^j3+G_#'hJ@)𕙁}Uo~=D)|/>M[AH89:JP+Y}^pU y2)UrSWBp'QmIaAH(ex}i 6ic z"m#V!~U9M媧=Ds%&$Miv8ʓJ`ދ*_@Zo]WcJؖ:j3kÃ568?іxdDj܉Sxqad= (Š@DۥŠ5jÌQ;Yf΢\#fL"5z‡zx0JgpK`::VLC6F!z"^/])0۰_jhzv*ZIo/]Ԇ[-f.ËR!E  ڎ&"S~°P8 ńhZ{~f&9Rs|n%ܳwtq<{j%OQ˖<0ۧ,(jKρfsO @TILYϨ&i/ɔ9:WMorc 9ty =Qg?ĩzʰ"Pzf[%"-݃3 ,d'|CwN+V퐨_iǔلȘ}5ؚaz&,|d٭ ET:qx(dO/Ϟ"zȔd2W_%˓VhÈl܁MܒL~>>~\U{"ؑJ.!^K}w|,1$)r0?;|Ba0z {hɟSk$VjOGdL܉Sz._gk X_,|5'%نGs9G?'i:svA*pTDI-KiYP)z(@rTMe,ȫJ:K{3שၣt N7~搁BI )FTnC)?vW!r΅%=&w'!bSU%C?Cf0竘Hyټ&o6F ]ֿ[;B*<cqKRVXgBUŝ?q^mB$lgi/Ǻ>mf^톭EyΣn}##sjls.Fw=isy~$h+L;8CJPh츽+ Pn>S[( a,aq(1 63Ȼ)+>vrdӟʠYcFY4v9NC$Q:_:` o9gA;6`&g_hYOc6I?yX ]shc>vl%We3FهG 32:gVpH ViUpЯӂ\'.E-Pbّ}Gs2MAM4 T_O&N/cJC>9g-<۝_螔e&Ȅث0FSeXzP#U:d{_r;>hXAZs 3^h!2r &4D 9"rIª|a4jז|vFr.K|,+t;8P qeXw&ٖ<\o?Li<m݉{ZJ) KVn`.zU}$CȽAJdidy[@LCǍ}5NUle\Ǐ7x\n'V ^ /\1m&?AvލA7֐Ϡf-h&> ]BT)էfr`dk8i jW}CyeF+{,;&2m5ٸ!m+ iE=M$[ZG2RO00HWCǖj.2zlvEᘋ?H?{e^- W&yݸNHz\bu 79kewmQ_t֬swʺTTv qz ږ߾{A" B8+ShݨicjQ:myq' &2+ Qw.a4S>i9*uFi* "*,.lϞa;l=1M0cz'w7߽ɭeghid9`\*h4vŔ(ƾo4>-4>d%^e )yYxp^|': D)=v(Gcm5vQQ+F@5~44H.V$V^ J;lpॕPG Zѧ#]쮡Qx~‡`WkW1j^Ȩb )a>4mTrŒopaST9gszl}f`Z uluf7 R~(VCa*38sp֞K_6oz&mH;E D18uln8!˝CIr|dk)órm5-{+2r=[/Oۏ Hh~XP+KcQ#la{UM)Jc=_'ަ=@A sO.ԩ`?O( ҆aA*p~I u0kM 0 =l<3"NO: 'j0x_܋Y9wX-b#EFw{s,1^"z\Lm>%-?#8yC.{K0Q4\Լ n1/7K*Py2YwjUvBؚ{~g) G|Ο,`KM&Tcz}x><}y?U1iHK`KTA5,agOXK + +$,,BB_ ˜8tw1Afa!mIcǣf0bNRWv6OSafJGNUGP5ؘ3^GwX?pʕVHja:䱔(h+u< /}Zs*;S!YG-;TFECR' 柱5ҷFT@_J̶5+j89[;Z$ǚg!&d/(:1*˭EZ~S@{B\lJ'WiA,;VS7[zϐxt0A|gmS˗aBn^|}cgU}K0E"qN( jC0WNeȸTA5uU6qrmj:`Cy ʝ`"\r$4w}jl sJ^F[ֻiin S[ZSНKSX rP!Eo0I.ѨYDU !/h 㧫3٘8V4l4aSH=׋;T /9@o؟lA)QL%Ok{JD~9Sq TNQ<$;6-W#a8NӮa0 ;{L!3zng< `j(Rnp,n2_": n]O걉xK%e6!L.;G-&ĖYZ KHle,?;A ΆWÈG:RxRzgҺHPi%M"1 ϗh$(Q'm[yFm#lNك e1bp.X$Y/"ºu~\F4o۫!:ұ:S5G0ADpT&3{w6"w(߂Mnz@CA ?K79NGDdlg^cΞ$Ӳ_ڬlSo046X\\B ? ]-X{x`awy@Y. Yrw _,g%-C3C5/?zv}c^RÌ~M ݣ&&$LȾ= ~ļ(ƤKTc07-3ey Cޙ~ŧHq Hiܭ>CyCѧ`\~ɭnjkʣh,{BgMwǂ\e r/E?R k0zdjn#j4 LC>>CK3XTXBݲ!Ps: P4oT󜊼YSx8. .s"9K߸!fSD2|t_a"sc-:z8'gҭ,Qΐ |Yx:t8F=1zɗ4QPo`F7+_/Cs@h+ G: C>U0$YcK* ؙ6+E8&zs]{;Ⴥt+yXְcb`ڽ٣,V5YC%㏶1\ei2**W߷ T0ںPwDhsójhp%ȍ:P8VRqwY$[[fu-iHQVϑpG;O]ܨ^&.fzgӳ9iNYp<)?EAaǸoMx8-p1;MZ!k: B^GPpa0/6*-tp֭أ)&A'g'4=&# kfhTWGnؼ{Ɠ!]eP/:*̕B*;Ed݈’¢#^:x¼L94DhcOB=λc/~H>(2ХVaӽ$~ѯg5m;;p">^2E˵_/\6Z)NO{Z.Lqvl6n*)eSf_N"SqMEPCU xVBS'C[fzö/u1"PD^|?)x$8^PlyJ<эQrvپL|EvNp<UoQP͸YBvG}vU/bEʀ|΋[Mt5[[?ITk?(;tM[c e7P}lp4KPjOʕ`{>[e]HЃcK0`m}R ")0tQ=D']: UEԿ; PHiaQ/c\r,qc}xFc3săkॠ' 9KRrN&k$uӋBDŽ+h>%R~,f?B=tI>O)߼99 >R(x2P{$S/Հs~2'b0aBP|=YO ;O`o3tp߇PewmG3XF$Wݸ{~_?,VCѠ"HjLO@i~n]&btaa!W~'WRriDvl&2kM"X\YF!G4~Z#=z릵|HDw\[ܹn@y^rVxZڍ4D.ЫE7ߎlsxbj2[}ͥ)x? @l$j\QL!W4oɊD(Ѝ"7 WaH%ـX-<Md*-ܴRn1پsYMQK}-v`i,0pwZ'NeɇP/ +D4ptlodq)BI5du;+8/$7 NUcoGX1M}>6ȭc .qϨ=R( ~L*& ߸J?'c,LQ:@ x?M7Ϭ $. ;YxFpNЋ}Zwj^UoA?%S*avJ鼈zlg$+_ S8w D|[©P޻ 16%dEx,-xnW 2X ÙJll|,rE7+%u1" փWe>}a('rcP |<t?L* P5M%iS=z;>5hstEQ7M  EXnB^oMYz#Su 6ʿ3\+Rn~vjZ kUw|>5^݇+LSM0t5MMrVV 523)(7G)b%sNG‰)+IϜB&(=, >֑_i4;)2W?egUP5MՏvMGLku/h>﯁wAQ0l.gژ\P!\&3ʨ|Vr!XHBec|׉gZ>֛{-d,kvI~'T_z; ×'#NLxz{Z"<,!jޟBqI`-w}k~o)uQƂ}c g6m]iwegurGyRyߤjHUS= _P\S왯Lޤ nk]o޺DTgFeάbGx֎Aމ#VҬђMB[ӜᴊC&m-Ž(Iɹv\J+AoVq(^l]ȳDҎ@:'~3Ygļ9ۋy=L9hh7-PbJXRީe&Th78VuMrA`0w]pu|Dr RWq4/}9$ѯl)f>~ޜhg_ʏFT˪ ԑJ@ԙۿwslNZL\ʑahsX!q !J!GR5gq"]^P,V)]x]E_5h;D:MZڻ'8He lt- y_]ʏlN9Y}k6|)iA!JNGcYn?kX& ''q*@b, 7{D]U3ϣ 4D+**/#KPlvVjYo?ŻcdOq9{hrz{:[Rk[gguw 5ȸ uN[傋èwla>n? ̎(fK@Aj0ܓeڙSmðL(݁ؕ;"?XoR@2zwO9[׽*Sϝ(Gx#N#%^͛Tj q2|tܹ?= =z9[. ڪg~09н8o;IUp.R|+R;qxTa *ʛ?%cew) zK]*f6K4*]Sp[U$K֎Tl`>rE0^W Kw+_ P ;J_RAɑ;FٹāKYpQ:;˱kWm:#;ùU &sbgԀwPf@F ^S@,'dI89r, jf]4Ԝa L=@-'#Ή#Nv>u%03 3B9'05S?Cn!=0F-_LQr_m7dLnɷ}=_)U7lrlxy O@~PFq:)+>Gd`+-} Dz*;r]Q%bgM%]Bt~%7*&!GJ#^/Kǒ-ЮvS}I y;BnUg/Q뚞}qAbqVs<QkѶqq4[+xה6F=~Ra" LQ=yP]>)#^ޠ ]pISBrz@:)ő׭q i = b:=̀&GG^VawSV- uLSh{ФRx zMuŇʠ#)fŴl9%6(M^a.jzEk ~| BDrP`mbomt!-i/]_ʴnйs3UP9uӧX#LH5t [se 'M-3Ȉ Їg6j2Jon-FN9k?W ^ _Yb~-)kR=c=r[{yGPtyHBy0-=Х}a"ob6""!ٰއ_fLɤ,.HE?YPPUwC|PI;zLiP0 |ΩNA;2|Úˋ!2'<:t(7&2*$"Pv" G5v$:$Y҆Iԣ-kf !z;S1n1jmQs7^Y8 tL4dvJ$9nҍ{RVtҡ+2yhnJ[91/qp=dedQOS ̫@% tw-MZ$kWkaUgd'{ݑz 74A5+1w8{N6,6bdazg ^͏LĸWQ.Q9JpP{ٴrWm0xLSn#o).ؠÏaP˴߭0D\ ZsB Au;ITNq^J-:$, E?e{|]ZaP rlpz(u7̈Bq8Z-/@}bKAʳɆbഫew G:Gfik9]Ŋ fi찞9$g ǖ&Xî7/0L)L=~Ś2cbbUj OrLJ"a) =Zۇ9Kq}̀~wS!|*[eəFuV8tit3f:a_=*!BȐl;SeD=Z](At lͅP\' d]Bp!0Nu Ί)K8oJ񹳷9}7,6SHXoe|iEC-ޝfpzݐ¤ V 2ېx'L܇΄{=~'fC{Qh8RkQUX0UtwH7EǩAUڴY0b2,Q\wW(Ry7)2VS(Ynv}¶Eas"9n$fJH7$&}*OT;F]j#nr^ʹZ4gt!ヹ#:ƺ:V2 }?ݡ34G*ڐJܢ6l N5pZTM ;zgF̨-7hGOFY@Hnrp\A}t2=5RkLvGUʭ$ % &GEJtԖ<f .X-n9鯇ܿv"Į7 p*z.!KD ro42.E33(/h-s6M{l1!m&`$J!29?5,1Skt10+hQ.DJOF@tQʗ턫KĖ6Ody%8&n3`U ⟒8)6RJȗ^틁CW%gvKM$e˨z#dvl*%9G//J?a:RqN AU__GURTßmpI;⃇ 0:!Wi*L,Tlɐ+d%HCme3 o[Țp.oI,[ۍ*+*ܞ`,jb-yӾwŇif:M< N|ҸEU=Euًo$&VZ.Wk׸ҢM!Atb4HBB|vHUs3U]š+yl'~h&P $K/:ۅxJP'SI͚?(/&hǞj>E*=_KP,-RC3Pl,,d8KC:M[eJTYvS8YXH%:*;'D*oI>΂ D'`D޺ |WFEG=d]8_32==!_ 1RR"\HEm)c&T'K*3labm\yI F `cM\U4gH4IgU0~d=y?dQ=fάȗ6~ES&i4-3*(IDh~KRP`] .УzŒ&7Dwh"4ք^Ѻ09l*ݻ+k3:"@ `&6p6Wċe}fhF?ꈒGٟ!>vK\hIO }}ʞ@!ýGi`#| -Щsq/@֭kB 穤_wכ*`#F*jX..pH(Hu,Y}wK4&wnRɼ́M'68ISxdȺL,BS3ڬ K dzX߮JFŸHhZ(tfŵ=G~{Cd`X1őRË|BKgf6YWDl@2㌃({_,%F^9B]JC,2P VOOMӕhS"fJ Թp:^ ɶ MRk4o 6Q++,qtݷ:]7|fuMGü"oЯK+Ƞ%{N67]獄x|[e@!IdBz? ~fZ-[ οF3@@ <͉9n$خui|`R;͊#)MdU#P4}\GиVy{73pO oavљQ_ H=Sd5 -eJ @%vaLϪ*07SI7dKsj+wq3/ Г&C_-y|g)E?61Z\`\OD'Q!TWFmʥTَpW,-"'ρ|u]HV&Fb9.qocըyρֳgK\`X/ 5o>2IƩ?l d=w*st̯a cדխdlkI5:E}\^KI+Wʋ+.Q)pEQ aei+Ǡ܎5Fi $̳ JOֶ||R#:v(H]. Ip1d;FL D9\1 R6-E^zQUxɮϜ8N{WTz=^te߆k3 uWس1TyA1u͡`zkxltPSťa'_j;?iU 6={<бwqE\ΟFXײI7mܒP"+'afqa% g۽4xsiS5,2Q>d"߄-CMU#־Lqjx wU "G+kwecx$xU[t d*.3Ů:iqp.ل"tXXK3=XO3:(>3Bۤ#vյЍ}9IFlEv0#kw?׊r;v1C, eoq"j 6Cʊcf]90*v =hHŎwcy痥j򗣷[5yjPdZlV& r+p8x2H)^+x| 0LGa]Yؚ} ! K{_HIfLm0) *(jdd0z&B8u| q剐+ōutb⠅?QQH2 c([|g5/`4l/IR[4lك558ԯ)c54ErDJGp4;߁ۋKUjFyKq\YXئ0Nr2]m>F oH<Nj\6x.P)Pj-eqTToR7 zBDZ!ރW ZouH(Ҍ9atMo?"](o"IC+BR1<(H^ 1#b7O>\(kHK5D:σ+)KCU4EzeԫхV NӟS96jYэd4r zΫAQOJd2@J&*= +%XCs^yWDQ  M1}9Z"'FDmn)H{aޘDK̷&~FԡQ7|A#Quf|B~g+eK)N%bЯ<AG *6^  -nvE!xPYy>t#a+OsO}s؛Stl:`H3f0?t<]=9 \ׁ۽E&Վ-:7xZa ܪ{2Co+&syFM`û}!@Lu ɻt:`XSKPcX{ˁAJ^vMJ9Wa.]؈SaBݞ]2SrAVtG GzJYJN|HE'uhL Saò%?E7_l]3se,u6aR\y\`a4kI3x[EF税Cdㆄ9M)oMD}-wE#hxo>F mbg*)pVAZ`z$´&m5tB{>l!?rg0}5Ta1@£I8>F-|ڰt2_oK,IN߯ndM2ǯyG8J-ǝtdwUF#2BiwsHD|l.wY'{zɽ}nu'{0dϺI ϼ_]~02A H.)/n"kJ7e#2ҿU9,X[i98kit}IC:جME3*CY9SfMyLY@sg+@h-z^ fݶK62D];ޯ*i6Yk[*!?҇OrxUZgA݈3˪n'D1Ϣ0FWW*?e4)a3Km$`Y#m|&3)I@6j9}GG>@ӴxlkEC},Y8k*5>-|.B&̃Se2kWS~ 駱INgxrDCYZ4A%TW?'*ehMezѼ̊\p;/o6 4=ko'Z4Gt)N}H?'bȗ I=ꡎ!ƶP~3+Uv$<Q,!r ys7q$F*[BD]5qp|wQM+y{\(lagA33*d(2Y ё͠{n .$GX{"7ώhH}ep/\%dˢJL+W37?܄>>8bs<׼;qdcA`u.YjuPpۈ[o*_)H1U/&':K!/pW Ye^5v\:)w*  4H㗚8hجM%Hԛ[腼T7IHs; d Z$}=ZS +BuZ/SJ)mg>,%0c{ܚ˼U~G 1A B1߉lܨDŽ~24#Fԋ=nEO%iu31y+g+?HI7*a XJH++J2a2T_g}_H~{B\&ò%J<ؒ1&4rGQ8,Q*~scI7C"VT CgBZD݇xa)~ 3>*=ߏ*aKIx-ͫ+W՞;:?fok$,TVpea,k\ uEnr&{8@I&k؂j:%Cy87/ܖ.al!P5 #\^|j]FE,_~vu27fe>- !0q+gR3`L%w`eGO5])q^[o)izS""%%jݜb"LwAilʨ{5y7}fDM? z ڋ'Vp"xa|rۛНkf@*zU " L,~[ x/; U; Zu_!+c#,mgrj)s//[_CIxҵ] `ٕm6ÜH7LԱJ6=7͔ (ŕH'9-Tv0iimrcgBk(O]>i;؈ V3nzf c1 s i l(9AQ׫4uEfH~m\,]2ާ5ԾY`)gf+0 XN ϷYl~lDOѡmFlJcdIBA-{XIw;%I~e .j222koT_l&>i"5LYfܗꏃ[/v"ǶeLGBMqo*Za?r}'v1ˉNɥe0[nKިoڕ`vxrC^C;2p,6ȶ[9mvuBgf*,(SBK9Y^k3UmZk_ln;{ -Sѝ<͌  %dĚ[1~`27<'):4# ";Da0l tZ,/w@7hk2JS'nt0AQ5Ofũ >_{81kr٢?#$<\P33"QH Ż8<[T*WΆGX^8dPzWN9\g8S?.(vqhlI!:&U38rpV6IBΧ6ob)^&l}ˮ+l]0co(: @=_V{*9eğ45f&LBGc"V +l*`jQRA0]15y[V{j7m7zDŽ @伷圌χ"ׇ-g2.Of幭N]6"źO)mO: Z+W& qhdlF8*Y4oD#nx;;*S~ϵcF9F mԪ#N*/mTbUf\ 7 (6jNꙊ@0|8C3 %tW.Mn]It;=ʠ*LP؟txvA5}q4{ lZu S!хvh9Q|oFD&X0nc8Svcmk#s< )Gm1z2zγ%p$yrVS %]$ѕ|cd@}Y'*Ʀ]A yԼ~42PH#[G`,X(P OgOT^'9gbW]У^\!v?gHHWa/m>n éМ#zV8gyD)MYxClzɜNJ_ l2tڷnj)ij٭G%/iLTg[V:3 ƴ,YAkQ.\ξxy _*5$?~:9cn̈́XD aO;y<>W{l#S#vU bCIlޠ+x(~~S sGij2@BPsϯ͂kcBޯYvsaS8E:nh̡w$FMUqB NC܆QJ W cd,j6Rk8QT9x*?6^(}g%AtF9(7w$di*xJW@x!=r݃,Ę2;0gX>i(q8,ݬMK'%Ob{IƇ6<% QN׉_]Ŵa 94଻Dcv *^]w\~Ix |jP$NUG^3J4bO@7~J Ɵh"<.H߼! ;I#4vxF#-.oBayL,: Yf C%O\9orLG?`uWDQ!)jNNČ̗{Tfֶ} "Ber/q-GC=."Y:ǔIŒo[ԼGMaD)r(v) "#n _?Oͤaby(8_@Qs0'}fy!IBjnYΦ-Jd۱Rh~"q~6¦p E-3 :-J|PT]`W`T /ΕBώm's.Eu(eda<>uћikBJ>K<(xI )k% RocHU&1GèÌ޴k<,S9fXDמq|r ~aJ6("Efd(/7k͜ xcl 3[< 8c\a]fAS hY5Hx6@̢;Skuo;"/-& eSA}84%8R זF"^NB^dEYd2J5t0y>3kR-PK䏟,MJQ͡5_w1~`D38Cȵ= OQFs.eTKMnVAi)ʽW_p8/*:~ͩ}kEWhen["2{ч$l_.B 1F*EEjM4%Q T2'CWtVMr n rBpKwnAdXz߭( Wnͥ{;+GJӴkGfx3ҫIa3(om e!Э뫨79 d7>:KiU^#l\!}͡,8o ^\vf|7_aeGChm($("^vJwg5pCBKZ_&a(i.`D͠AX8>Vߢd\,Io2Tڸn\eeǧHZ!Sۈ6 R4/3wE)B曯r@U[ 0*\Z|ICCȸ%eCMZS;hHCD/<Ì™xg\QTPrc^ u?| >1ajHQNU GUsg% ՛QcZ/ۿ0Z:~؊P'<y+ȗ-w3-;6^)R1 s%ItkTKB} ʺLӊF !4U,'Iq.p8!ApoԪ6%'tʾj'ANqO70/4F|q η\Y1.0˳D4 ]^Wq+)G{7^J7u"10qZ*1@$G kvJ?ɜP*sh!N[jbBRZ!@y&G3O{.=4?[Kr1/RMO[Y=Sc%lhw -F}Ã~3NSx"1/6hVĒ'CGؒd_\^n^3k^xۉ1T %T.@qg-ى]=b=jkWAɗץ({6^dDzwOz[lJW2VKuc'':0Dk3G,-~3XP ޱW>.H]_7t5`*Tsn7,ON'3@S5!L7l:́mc~\a'Nansn9 Uv^xlh 3A Bag1t?QqBPV Th-dU;9ͳ'T0fhjQN#?Lwx,1Y}ݴ)W8BX=u0fѸl$'?DkY#Ls3~i?2jRc%`rԶ!(Le)9Ie S"){8+aQ;y A;saT`Ga_2S%4@To 8މv`,9[uk}t;7L,R⭉Mkz}-o鵛"%PXE3-ٓ DK&ˏ413" 3cV1lV(5kRF>Zbb{m԰Gn"F)nBݦ'6kdFFg"07賦s &wm*,~~7]6!CӐɍrݡN{`{ę)ɟ6MxTs#I^ QV-`{JǕqՆ9t0RP6;w/S|p4@hX틿t*6*PZa<,39HjҚ][p3!1.rȅ^|pYBF:!P7^tսhpbz:zː6 3T+7Q(VQ:a\$:G"rtm\eΥ(P9N^؟ji@zs`RX1u˞;oB4n/cA=2je;ޖu$ZN%=SgӖ'6WWVwܽ6ƭLʤJu.l& VFKR#HQOKFK yy+YGex8. Saä `~$(&e: )SpO\n'C"]xK"@"ZeczR`Bj8E_рd/4VĚ IF"aBUz/֐scHȑ=Knp%*ыweK:ސqB^J{s?9KUբ$` rw1'4Wj&ׄR,C|=&s7 2m%%`m͕ P7xm9ܔ$7yʴ=ğ90̿u#N/^} 3BU#J {E eTINAǵah^Pձ 3/Ez\gp- dʫHڳ&KXr߻ w$,PA\D>m@pfrdg ø:`+-վR _$QM%9T4Etyf~[QaWfvS&)ov$f938=´:޶ Ąw]p;OI:yb|)d<\,8` ]a,qby+hiĭQv&ifi'bF$xpf.]d`a Y148x&лSE6X \FpfZ pwCI :YwHӟ ŵy]Wj)zAUlgt@ ^ڊ &!l0 4eTdVfRcNՇ|^=ޓI&ݛ9AoXi*j#>fR,)~Wb.rI^h4UC 1qiVZ^%w!(kmĐ(%),O5 olg{=t>!l Z#B-/P]@ek fSOAe9 "oS4}߿'AW+rϪ3J~ 66xAb  S6r7I M^Y&+e@ cˣUb˦0 QSΨqr|([[%j>qfnҒ+<-ѐBvBcՀ]$k=>Ș1;RjeFͫ5S~@2sll!!MѬo}$ηVQY}:Jzj`Y<\ 3V!:ZiGmh;]C~_ok:)x?4{;jjQo$eqt٧d$K/R ,ѥb #F3KaȆ$6rwb쀼:;R~0auC7u'er}hBR4)u$L%9~,> AWJWPPʗZGШUIy:EkO8?0vqˢ1y[w"|?cdAxHçL9h}{a#D'Om$wq?&`Մ21N !u@xIxn8( , zZ IHncr Ն BVekuΦ_kK\Y]xIأkV@_Z"!Ɇx*vyK!%n9=^~0S]UW=_8?q, XOJR{-t)1=<=}^$"ٛ3!C:~Q~+q$_1u|.n)jrg.V)~̹?D"eaSj]rn?WpA&=fP d:H2bܑO0rBm}\|܋7Ȟ!CLl'c={݊ÃOpVRqZq> *PA%2qgPyF) {AB/cn@.4f܊Pvx+[n"bB;(ԠCNM5=YɅP ׆UrHRO5YCJQTSō0`rb:LEp\|ZQNoѽGEV@SB7_,԰;Ń!BgOXc"Z1=4H(+tcc5hV@W&nUXik`[2 K5!tI@ ݭa&A7 zCJvқ|na]=..;V0fNs)Mςt\_ s@ڪCy9H+FWf-dK:SsB§{@l =~O6U^G_wk "*LVvUg6rb-dn:GSYg/r"+%k{#Dq?shH|RU(ƗW82)Q,_kyw4 x'. NQwVc5)BAԼdܳOTP\"eg@tE ˵gѭ3c4bxF(%>yh^Xu7' \8hZ^E9@b/XՖOi23I٧&d .*Mn4ŗPZ@;h=A0%#ٲuKEs_;cnt_6dq[+zh.t(sP. !zQprr _]ڳm\VR_w.ͱ#TT$ĝi.#苴5"Dx ! MyP̘F>CDk۪OVwK'8q2]18okہYAdO}Ok`2VƤ\6O; :0\EF7)<୔o V$KpWM 9'Hszْb&?7u~Xg\'iw\w_ϱAJ \b8wZlKD^~r(y\y{!eE1?L֌/smdS"o: 4YqctF\HHHhH(Hۻ"F- ^dBe(;]{s$H  Eg46 Lme.&O$zRfP#Q=Ȋusƹ3ABC>-KvfEn@zSC%< dOWYYKz`6a)qÌ0:Il*q#%-ޑBu:Պ}v*fFGU3cCrٍ| #%pUW}^قtrEndW+bBEvZ(1`pڙsBX!9u^p?[fQ|)]'- !.^Lv{VS!pчH` Dx .wP2 ,`#v2UbC 7eJ5 Jg_0?'O$D" y1EÞ࣬:& V@yL]ʽ .[q~P<@lCX@`>El[6#ZXZu"7Iu#M FGT N-zk"a:}.%A(M (1I 1=24,*3r cO]8Rߜa[W C ;vu #Nн)yk{BŒnE:*uuIuөߒSHf|`JDSrF32׆u7Ff|zQ4e^rL^NZ't߭g]F+w_`3a=L~XI2눖kVK V_X apMh*Z4PEbC~*i%8jN`ET&g W#5ؓӟ4gUTz]2Ŷ{Z+Y |,4rKv`E);L4O  öz027Bz7BqܢS`N)j@e~eH$B?Hd%賑٧بhجS?iEfޛ"7a+i3-mV#RKKqD߱DGߜ.(/Fб@D_|_aҙa,O1ȌC1:WC}GU%$ԩ7aFđa&>{&Q (HP']!FSe߿ž·؏}o8awp(arᠲ=gQANѐy0On{w υ`,j̥t6_fZ]\r)ۡ*l}ɻۓM.i: W(rj%?0<)6s|-#4m.,m-I@֣֜7X=DA )m +\=$VD:WVֽ SU:60FQCIAɱ屇\#ˋXp,tlh0eZvH.<ѝ9g,[ {&{e=Sw$ŵLfrGdŅ,YhR#8ZV;`V}4ڽf#9㊪SK_>|_oiX{m>Rr S]NU2\}~PZ ]\0]L2^]lpq ) 'gwh{f=?QR&;m2z/kFxeu. Vd8Qz}ӫe>h/Ȋ.SMtC'(T]BGmG,bzaV8c׺lf*6ؾh; |LH8msH4X ƛG5OW yXg6_ -sI;~'r>ܿ\KJjИx2Q8!8xu&A1{ϞW)Q9ZS UmAǎvq8 /I uVg{ξ*>?زj GD/jēZ3ZdH)?Uo 54uM`uA o;󀶯qܔrFUCX f.aennRS;bQ z59sx@UT%yভހ#8:aK;$EjŵYc_3νA^y #wo&]WBA޼/Piٺ,|Nj^GQFA#H c0b!MorEGV^Pv\.c' % =a,fKE>'Bjbvd@\( ٝ$k?Y(zlC8.7=n]`^OoV%! iגΡ#U&TZWI<,:T4JO?wn4DHFaO^ L<dCB,E 3P>*6bmBmb]x.Fĥ-QЧ} Il:X,Ĩd¨ǵFW %}sSֳ2L ]YSDRW&$SEQU}z,^ 2" S=dӉu9&v]D%m (D3rq~1 j,}VTc3iф h(g I|7u sSqkU[43cń"=t3Ehc{Ek6@n&!:wrYF?gwx53Wε L}5MmZ\Ucz6\uXゲ"ek|'zc# !&<_/P "F.$bw {S=}.BЗ1oHԧ8S! 8.o0}y7a^>q#^ Ztm&O&"~r_qTe " Lj ~8y3~".V&Xԓ)~eA(Zu4[??0ř6r)%ɽѨE@WUȧ4} 8zZtu;!iIöcIvW8pGMᅑQbO\Ar8EVs'>vF*:4VXz{݂6 LS`1-()) sfOxMUmsnM,(A%  ŕ=ۇ56zNJЏJR&G=7 z[^p6Ԟ ^@$)C2b4vW <1:rWٍ쑯Q0s^Fkl3[肨0^yVw#;ڃ>[5/a?8.X!K|S~'Oe$ͤ+vǘՙU}N1t4B<~fN4$pD,U'㼍UX¿P meDK4QS7s{Xg#)lhiӮ j G r|pc!_O-tG3fbD˽*Sw>0ҴP\r@ Lz hOyc@U!i[崰(XWWa>VC )RG sd %q~̳Wׄ$b2m38+@ /q,oo~te0F^qOHL’@؀ PWwj0mBMgI9^1}$[WāyN%!76FC7Fua~(ڤԅz[M2,\Ŷ ޥDU]qȈ'&GO nYPkXIHkzQbfa\p>G7Gfu߲cP \R+l8o!dPn-B_uτs6 1dD6e0$h0_Bl)nO{/r:$]Il 5{H郕hr"j Z/ 5UCQpbhm͞I~Qy[b^ w߹9ٟLF>w̝}Sls-RV.K x]~XHyRʛ60Yb>Vb z~{tu[yܬ(J}To80kݤQD|REZR/;DZἬ1i}z88D;Rh-(SLjf4s>\)(ꖶl7oUAŞ 5TeQPQQR*vmMim7·!񣐃Sf>Ѱ5q?C #Ӑ! $wdI,(. _XNՄ0WE^;m^ >f( Vk޽ 5VKv>VQqS, dRI)( ߏ?eU^b&FCL$9xYR FoWokVhSI=C oS6TYO.OTyj:C W w"[0AUSh2S YΗ7ιѨAEPܷ3³8 mq[\wibMGI<"OfZ^?Fث9ځ,`@~],{)"g# CrOQv.RDPeC?̮^cTE_M¤$ۨ֏+( =knFE H\|1l ,zm5eJ.lBݾF+>~7#Dc0y_ٲSa.ȆZY)r[9U0 7a(SٸMMؠ Fjv `]ovU6$gXr]!_di}O2 nI6-̜Bo->)i8@&2QPG"O$n[}ںk[h$abHCO0; i+nc7ԁ|ل3(%9CycI×awӆ:v8S͛!zLN3\;,G!.xńZ=<9cEَֈΠͥ8Jt/*1HZД>~Q3/P!+6`~ߞ|{MQϓ}Q1bCv3eߑNw|G"K&Y&z/:$5Bw^ĈkFڊ3m8aO&Kia8t#x Jtas@'^TI6T}ōF裃nN|f+:8XO2AھɃtf6(`>Nh}TiC NBG=|O_v#"}# (>||b.gr8,mwpt.5 )kNykB\z[#NoRZeQIu61g1+;gBO|Z{w0 PO6q}OIN7(CaΑ PIJgdy7fJa],,Nӂ3G[^ȃdZoP:Z%dhToC=YO/[ o򫏞p:/hn=;ߟO9Y*+'qeh܍ ~  <?e`<Ҕӯ$M~y'p"m#Hc!l '$!遂58-]z4_z槮Lݩ FQNp ٭nPwLFAIQ99z#V/G؀yKjR,eFj;ɳUvdXm#|/g:+"s *7KP0',%ᆾח˩mBݪ+H~~w<ʖe0QYsCĿ6:Ѧ"X/r7ù';]`QdPuqk>p%ԺI~W'^_К0tkUF@dOږ҅7 0839fd.z'.v06F԰I/2qֹ僖@wY0nzuה0 {D+R3A$di)N9.cpZci"fmxn"[*9s /3:Y1xU5K1KU~"9Qz!l:b(*kS#२VHm_t/3ةA/TgPGVOMZ3Yk2O"9mRCpnjstǒ~z_'8ɟžWfAĄk.^[OBLls?)M&cզ"nS@uiŧDWWtpMQ߰Ar^1W>՜kU| lCd=Q]5JeFw̏DQ9L<) Kgy3jzp S)ESbU}eHr4c!uP;Hd #- 92&B"Џ]+g(NZr䮈 E)i#撷ge+(\lHNNO CT}gi"$'Un*E ה.Z5N̖+jyCp1)?tXTR<ޞ+ ?-Z$ğ~f3ބLyL«$bWD%F(ntTWHKR#8Q!NN\ط<7B*JO|]Ky)H6`p*͍Ŗ@핢B89Qg OvJX$ e8`n}ر$ZiFb# ÑyT&X I%r=cmsVٗqVV_Ua4bgO}nʟrLʹg?*5nAL׸]Udž4Z_z-f7MJ y؞I{/=#} zӜ2-0Fcp |.7Cn6&q;M?fg$IJH{`2Wa&M1W6'q(VQvZ<.zhX4NJ1`(y9-E?uݱa""˿{>}kιg!\?TAE/C1[4Ƙma<5q7Ibr L!oX PmoNՄ~}71[NqcU(sIᇹYR^OރD)ҿ!Zm;RC^sCC b95ι%%aPo$Ӻ|#Sz1 !T?}ieJ l7-Vg\E}e1͢$҄ Cͮ@Xԥdtc9Ss?E'x2$⾔Jsܕ݆jy? lx6yؘ" oI*yхMp)ȌT{E¸1ۂbξL8yAx$ZCas~%q p},}hiCӯa_̴Ĝ(#yz [`=lqߒS$mlBl{ͲyI,GGţN Y>%;°=y8 Q )(QY@M\YrxfɘԻu8e9r]5&j2jMWMJ)]9]Dؤߵ(vE%#45mdg`Kdep xc)b3ٔ$/vicDD+a~8ULHnqB ("b e89M=x%I H<W:-LNj!;j${Igͻ`{Ǽ#{l+M<159RŬ(t sJ7B< f3= AVsbi)IsoA>LZp/-`b̀ zkvs̭4WAE:b7k>(9 /ϓr(Tʞ39&)5 _Qڪc)\um^VĴ(P0C& WzZ5lY>al{m;aۅ[<8shJdұ06KکIM(]<:cZS4G09d9B2Gr1,KߢvID>TF?vk$pRZX=DNjnsbnf'T|{AGm34 (Cq?4S>U>/[=mWB7q3WbCƌtoh?ELZ=*DX#6%'Z*--l;JTv! .sTv0` D;ndnyt#"6}ƶu3gj4$~喍-u,幺{2t4X\kMʰ*`"WDŀ|6E蝈hHN]nl> Ts;.D knL8Aٓ^]PlvxfKZzަxk_SR4}f1DMzu0J+dPUPjt.\6 '| I )kvѺL(b_-H)V)tNJo{!7XK Zo<J C]oMpkJe@AA ptK*~0= *Xϖ(qL?~52u^CSCA%_Òч ićes|Fiy!J_n I 7bɊӈwYclPQ-ܹB@'Ɠ?7ɕl!`ӫY,5Y|f{\) jkIrH꽛i 7@  #[r(eyzJrH gԵ'yZֽ8"a Shi Ϋ Z6l+6Np-u@j.8_'[d+082*g$Cc½HYh31x_UQ{n鯏j[@& ˅x#Wλ| F_&BDVҴ9GCdHfeܞ)K &K&vw]kCĹ _0"p Q6 d~akڜ-`tGPxP{uV Q`F27C4Z~ħTuqO0t Z* ̢İ}ށNJ rv<5ҩrjav"DK]K]Zk0Z f! N*e6imka|]əs1}`kZ;!E%cb92$Ai_Q= 74c%fom4W LL0AV UD ޭ d<6*{O^X#,3¦O{"x ^gCxE-a},dt@ }Įp]R'NR V#?c}P2G\U旳 .%:}W?O;Q=Σui Hfvܢ=H\z ;GGxgFQ^_{AW,.,mXu=\}nV\n<5n^G=skүs)$"ڬ F\`+q   ґ3;A-?4Q*ym8t(]XKXᓽ1o)hhIw>J9tg5Mdwi< g*X@'DPaGy 9+ǤŪ>q wW'4  8&,vb;텅B.~)G;m6j5 a\nKgot?\NԜ!~BM >t;OVJt_ g[3Yup+R*ݪ,P":*FL0ZYu0N45V.ag /q;`B [BbPzt)=]96ؿARc'\RUPb?uRt oE/V#LѬor=)1yܻh3OJpGme 9P4|vT0 ɲשZ$hq׋JoK\8}:+{"W~y:e@b27ʾ㥀)% @6B_K2z+DEKޡZϣ2Ysp7WQbIq \|]vzYDTH}N(4|j4Pt LL{eTk{x*@ eAm ;XftׅlQipWK{}_w)R oPs"[NXdhbHlTo~@P.ݤ25]ւxZY!uZ^#U!cnEAYš9i.~Peaͺ\AF})e>u.Ajt+o ZU94g  $-vH7fPp8\KjAg.tcn7Bu zSSega֤\C7\#[M!7b# a,A,ТRUF`VzF/j$͗:»άAJhEKZWimebI Vh8a rjܛx[K4wVK=]Av`$_ =J50,o1B-tu7qz#ԶH*XꊅFcmi Z:=_)z3p+FKuK)/H맶z:s>fMN9/^][ZQ?Bp]lc~S8)֥ڒO>_wC*^wVhZs Gh,V:p޲ rrC6̒ G*y \8_fh\\8b#}8ɧ+HTRq+D[,h:H$t50!/MC)3DL~e[M{nV@C+750$$DBQ׏rs&_ZFgCp5q*@V1, }ribZs_pw+QŁwl0n1v:d%o gdJ/;nڼ ~;K (ե/k[҂`>g yˇr-Ts8 WBa=핮?~EPPBaة!u2QY-#yv5T!< 1SJ^=~&T%_MR*GЃ s4q*&R{YWF&zO)?z>`.ײ!ikM~P b4~E$H\GTŇ5t@׍۩-5! 7&?)<!;cCD ]gXNUZ?ƫQ8lЫP0{G)z\kw~܆mhByUF_ L%~ U<|lDXǥߎ: gχg ag^ ZСN6Npke ^f?oFNW}ق z'G 7|EZԹd|W]켓%l,U떟#G Soݍ!oσfjՂ'ɜ'-hklۈ*z'! -͕k|cp'|w[G Ȣ]cTʧI@6*rޝ;aɜ>1oϿrʢ#x~*u%+Jwg~)l]{r0`|Xv\Lr;//5<'TnR%X BB,6 T9n#[3gyhĥi`8N0D^5"+2ïviq,<jwQU(58s(uon,0Ш^'j]M9plj2?wST0ђ0Z'bgӁ -g^GMQfXKwI-yNh"s ??Dvuc`mc ֭fKDaRSuo!vܱN y,+)9 h8ȕ[fň8^d@3~VT'Gt:sO@]sFu{< :je$5>a0lKh:Q}`PB\!~U-h_j4QcUiVWf bv57rʗRܪ 9W4Rܺ7/"N).d=SF_AI4>R6s.lB!/ph=/)Lb6*0;V Ze*¥c0Y'$.7":ӁU{T?&ú ])\hVT#e!FXu奞 #=DLOɧ&UiK "7IRI fKĊL.z7.@'G^IMY쒕 E߭QT3l!tDtxFm~ٴSW);[mrmn=8PKwzН~C ` 4T@.T,ۑ}Ag:=|+7xg(9e[?G*lW+iR{G`C pjz"]_pQkAdD H1}6Nfg 7EY;vWɹgKՁ `U+b6>2 ^>lv%ŽP-mK/iF"#Fr7oD!D keΥ`jȂQ2.eI" GsSNxꎮ'$U_;^%a8V!F-mn}%vxhg(d&6,ReHvSkN+7n%Y5UOUGu?Hhqc:j$5Oz|H+ݟXSwvp88Ҕ@%Tjx/L[A͡H+AR}iP#V/bPM9;B>>K3^t\hY}c=:ܐ[͹\ CBN,fC`.8N>CErqSFIi=К\ת ދqɻ?RbRxk6woDC}MSx(]FwHPݙC +K~tw.tU+>'VKVkӁj k^TKayW35g*#^'8>^rF~z!Z "B;тX ?6S(K5茉F3}R ӄ" [A@#-7X?i:\(\XAvE4kMv *ZnHӫnZ]%Hǐxֻ=\bv8_E35e}֯u6U}CdZΛuo( cc^ ɇ?#W䖌Bsߢf$<$Gf(2XztlR\bqENEn3-$NGx^ֹK L!5GCM jc#f\,!* %i`V]}ʡL76X}=/RW<5h:O2jʔ?U~g7sEBHUԱ9/}s >ێdLjv`7v.V ƢU- 9k0wp.Z읔uY&*Ȓ;Vfs)R ӉZxqPSs2m)&Aȭ?U~6w=x@|CWE΍\{̶aQ N/bgONV20]B]=!\fg\l$4y[VZ#іXLcba6HGTq /#en"l le$"j<$ԔT 7fv}GM8Z-b~q;uˉA*jU X;/+Ûy)I̯2D x-N#GtSryMDj7f f(Fݗ |vlُ0ßsu=(tԜyаrkE pg2.~R! SS,ХAIy^b! g Cw2o.D&{e wFH߫]G\۷t&"Z C16=EzGlobea;ƹ8oN6SE݂>N=jJ7Ul@F[ؖg,Y< /1JaEU~nع-u$rKaXи;I$ G>HT)wk9kjkm)X2oR, Oo^ 7֫:o4^խ_[@)]Ӳ+U%,).%KO9'aa#R҅C[1zְ?sx^U8Hш+=zCzQRY[qk1Gch&| :k>ҎZgWD=TkoxL O|+A1$Y,2.v9(s|r"~Ls[\"tJbY{QtM:7?O +,D`ږ.#TlkQrqkj9)/pOG,Fv @G^^Y10yK4N~kD57 uUSKi ?~|X[R^S߄qߴmv  %OF50^6]~6\UBLҍ(u}wX(FfW[ 2%#3hleX*vEi?VC?ɟI_N*Bdr:!#rZm4W+G@6¼O+AԭsvaZsV#ϼ?Y[rM [;2xuޗ-`T 虐f+PJ&ܢ*my0|h'3f\T3eV1I'EڀcpY)hzUP+QnfO I]acD,m03M;닐OkػS$s-R ܽ( wHsqFǟøiBJ@DC:DZ b9y4CNFW{KAb֤x/T9U[h i|,:m޴'(κOJ/Б7G'"mU"b~H')kW><3<X>\JփǟN79F/`YT߻JÇقH_ Ue0b[-qwʏ{y4!2߇*@Лz>"WYHJa!%QC+#G*rA?-1+~4.z*7t^a@:(W\7do)+lW&J֭Q@[&VSCUZԊNTt)e˹K("(`Md.(B cii =.(:[-ajx,+#ʟ>s:|Fg-}ѧjneslν.blw#8H ٰDMǦ}Wb|i]\zp)Γ&'ŪԖS!%PDΧk5%8cn51z =`@sIa^-*oUޥ& Vu:-O@T7Y n^\jVٟF)Qu#_7s%bfJeR78@+5% g4IѷO2auˊ=,4b ۮXFI7wV[@nx/ƭjVR\(XLҝ IƑ/@D0f0`V~0r|}L~2DW%Q*ɮmӆh_YfW5=9'z=,I]?%!3 8o~%tHνQ0ȿ=)[deƯ#2K*ԗXEwrlkL]"< m)itTҭTyphЀK^al#D2Lc()?,G:JL`9Pr*&z2B*Uъh48@ yf?C;I[Pxs#S5tf=N-'D= H7lQF\Eݶr|;AL ybUcQc^Wl4 ٷπgBmOݹ@:`jXq|ך<)xI X怡;W4mVn-F}Il[WZ؈ؖD%֮Q9agz:fMä'MʄjnrҐ 7-ߦ@Oٖ7:0Nj0HiWQ?®tt I Dޑ sD_O Cc-ec5;'qVomY[DQ!L͇J>H,A"6UrP#%bJtƠCҹyc{D턘)hko6zy52~le-] CBhVUcӫYb| /C{as~c}@E{/KJl {3ʈpaaWR 1 m,s{F$$ǞR|pIP݉fMU9IkFuDk<@P uĩDg.ǺQ TPsQvW|sSzߟvjx/=d=dX+qxXEڐVY+c@9pYrEn WC- qn#chwxеRp/u6em%ۼ !7VǞԼsOlDgz>̽ k2h2P oY V?<4QFY-gzj6Z 37Dڐgw>jiޏYGϸ"=PNu#[SQC&A>}&}$QYhI0vnK }1,aZ 秄?Msr%?r ]sCT~VxsZF*rZC<ܤIxx ,͒[`i1+ݙ>tEOUV 9KrjؾI(32kOte P3!lTL_G'$-yu% Q%>DЭwE!= Lk׃FxPat.NJ2@ڭu|^}xtd*BJKl&͊)_W(V p\8=BCư&"p>RזEu SadZv5P"p˩VZAx&@E; BqRYzٹ}W@fʢ OT3-wb '|7/ Iupi1*Lqr"pokD\g,A=7K"~`4Ӫӭ;f$E=N'X jVĻsIDCMwpfi00&cYV Tu$$^tGuǦ;&fS%o|YqkSQ``dy"nۚo; "qT#ڟb3ɦ1HTN8?kF?8z.K#YhG*a$i-?0?L|zn 8-02 [s|_|p]$A? ˇtQ(o d2z'-]% 4:?i|Ĉ m=V?6Ab?a&[,B.w~A%"/h#BpnI f|e 7wȐ@2A)|CU\}|5o(hσO;4c{.] o?hKy[X_v"(W/a/U\ki4̏\/"z M)'j#%x]Pn,:mn3/t- J+OI L&!"){0QK+eֱdԷ P^Q >ڊXsĖ BNS5` h/:.[uh: Bk>FTcjoԅbtױ(uvJ R_ru,J95,`a di~ŋI wRruQK'屫0TvSLo^PAuGɋ fɦΉcm8u]Ou-$.Sq_*8?yN[߻ XC)*srf<1A?D G7UӬv6f (;^zH~u &eACqL0Vׂڡs եtUݶڈT+Vl!7X3IE ]H%KG.J^T|P%Y,q/( Zˊ)t#<4A$Y2 Ρ^rhCjtJfNs,<`^=_zz[=K2jtjn7~#HMs,ryqHegz:oU 7@pɾi|Bct "\:lAE ~>YJyL`5x'R+L8mGazE'; u6zQ~׷PmIzM>4-&o 7j31 I4x*ŖE(r8BnOQAcRI] k3. ath0S·#a4#LTïJ,+[GW醦}aATus C0/" *[F S axrH䄚Z(r(F*!Kk.]\pzA^u1j՝@ Tgr֗Rb'\"1ߠU<P]S&k.D/=<ܨUơ3:@-J)|H]C$;`Te'TUΛ1^= Q]Nh~S2{.շ "k Y쐿* jb)r 2"c?2)o %~oSN#zDC~3լ6B8#UB $JeAg_gt}|"6'UHL7W 9p}?CK0sLU>Ӯi&w_ɫV+k.EU,榔$7/n&%I!aZoB&8uiFV1YQKnLkV?RN1 kqԛ>E\omH[r!o%|4lӪخ쌯_n(X8K- C@}2DR4oLŵ<0`BjbjZȖIE)DJ= }l"fI1j(㊀5䲙ZT{11`lݱܼ%?ʡz;,uZ=?DCTfM }y]]&.\ c,DUqfkK#]\o>ƌߙ~qkӜyk~q)Xp(꽽oLh):&)`,%)Spו>FH,^И| O_e P: .9_^{wKVϷ#SeXndƉNV0`!W׺ّFUO4a!g},2bC]6ښ%CBYabAp}#_5D-5J 8Z7blOZ+ 7ܒNB)4P#<2bT JP;z@GoC C-\`bWX#D<5n"`a.8Bm&̻ *ҵ_t'$+YܗG4h fդƲдRhZlt i`f1e9CL?oh]Ws^u H{n9D|閭q!x0@}ƺyN?]k;lob\)]g{evƧb}"B\@2Ω{ 4tGsC|] ߌ{DCp'>I=VYQ'B>!Im5L V'іcƏq5h4c;0'ݪD@ߠge.8!~jldb/OqœK]'z?s%[fE}c|#= r2xFJuOͱU[lz3Xw>O{l<8rR# L Z $%W'4]讌i*Eʡ0;ÎhU| iA2Č8́rKۃ #k UUñ&5f^ teO-Uw-DtmJ5',6SPJvk .ޛӛ4s( &A"bN =PO M14Wb^^mPֽ(fjNgR!&l+HKʓNDL?2W7;u7 X>VΒg%RKx_ձ1/}Kl{ΩBo0n@֤7~ף=5oohjLVÑ3KBTjۚt 5i)x7>Z K2QZ:7w2'SS-ֺcsȚE uD7QѰXD,1gն?J^F~"Kdx`Π{Ɩ:7׼GZĶO=l @+rx/Ӽ(/Mυ1^@ͽ%~ژ#aΐ(S<֤yaa.:] -tgS'ľx0`<2>ݗjgZz֜˹*C Qc; &eܵMӺ98Ht n4:kUiO bw{Xy,HN-ұqY1#\Dz׭ XT `_͠߂-=YdJ,SJCwE8 |;bl3V{$~~rPq н7;^cMR{Vi'r̠&a5}e8szم'd +;1{bƾpyjyl 3L\ڴESt<8Vϩ&WVy\bY,ࡲf4dx-Hr0ہh0ѥKOR@ήhPWKN" ܱǓP}7:K(PʧɳN\Dd^,BaZf!VgytR %WDcJ(Dxh)$IF -m'+"M+*޼4XB1tuPh/]h#X%C/yoѫ;Au 3 A7>Ta1 ɺʫd 1r(iτ^T ϙ=xj<uf]eOq^r4qi?Z+ŖaԾΉ-̔={ڑ{8+0A=b8j x+̬a ?QoMb/_C:klsӾ[k8&)(k1ƒ"q(rpGe33ΆvMY_v_I"n5r-эÆ 2ye'}h Nz`6Ȝ}ViK9UH @б1:xM`;;^|T%m/˥"*'#"3)"FMg"h}Ig f#-99J)U.̝,{TgFpަլh'OP5}]<PFUE6R>AùzJBMGK+x%p=ڷ ;ҔSz_Zw}Fh7/'-\["wW?Lv߉%&̮5RQ-cA74O'F).YPy%ao?#CJ] 4dm:kԿ*dV5=8W܌m(ISicrhrpњ8>̆䩸μc1-f-+T馥nսF@p%|yy9y8"e% gvg3vv}&-cG!5lwy &3x.paF9.{ҍD)qHҝa{}Zص2H2w&x#KiXR}H>Wo6BRY&Œ='Pw!> [|\E~)Z5/St|KSXI|f10Wn6Rg,ѵ(LI4uV1+}ÒcYh?rLePTC*"^@bò zdeѥ6R+́2Y&=4aɲoK#Vgƾqw*\]H{ d'ga[o 9+qpZ,֧6rJ7ci?l}{V.5/*YpGi,h2u1"m4&^.y'-.w>ni*K%I4xޥqRWZsTH>f:}xjk[Z|;z4g\A*W`_.;\Xw+[6B%iS8!+RGa}˨5@-r he*\'-Rp~Zl\}Piwb]~^A,ӀTԑ BԪ{׽hbv³K/Mt'Of/4NHXT4h%ET|,(E' 4a@?,zT~">yyL)y 'm{EK`뀿Dx/bj1s3keEB<-Vtf}ˎGiqY8_H@[.RL֪lO[n]CͳW+IGyf?Ԙ4G%_'ak܇/;l&U*V ]]iΗsBÜƐ!4t  $R-(6[JDC1)S.)vE0uiw[S:!@G&J84V9W_j_tTD, .'jQvDŽ7iRm\-at3nEU}1,G$I-X<մ 8.UfNwh:6LuNOCnW; v Mxe?Ne^W4/\.v[֫Ua:K>2!May3Xjf".]G՘~yXx+Ni+$Q[ᅧ]R'Q,=":d&;%$u 9HOS`QciP?>\ 0~]jt—5YnYtw2fO.&6| w"9f'׏#JMbi!},X4.j Fx64jR%mw2a8yCS[[|XM2"4զ£(ElvN\f3 tUwuxO6YаmZR}t ."L)*מG $i-T~<#_:`l/ e :z#]xWۣto¡l@?/T6f OgH큼u ?/ڟ=C$}4ӓ:10>n=7" ȼ?BOְo[_5(eݨX<čq 08 3'%&,W Y}4'E`XNo#!X9avY_ P-Ule~Vqvnɘ zmىpe/?((PzH?.3t|ayI[8)`PQr3#Bm|,A5^#$]IbwtTTU8.`B&-82DRO¦Q P>Cy#`s}B[;&鍬)TBkN x,(M xU=nta$uoj[`bA$\׮5^iGq~g[CGKXs-.z(9Pydt^W!%! T@2Õp.n,?6=_mm #Ba;Rɤ[z- Ihd2jײCgBrKMx*&NZhi7?Wm֔F"=3;dDc@@A.qX{Q )N?i8IEn֯Jgpt5a8TaQApѻsSL~lQ8Qa< sHpEdem2Ɲ|TpiU>=載^ɟr@~b %9K*V} qEYG̠ ~WQx]/%Z'%ڂ{6{u 9;W A3Jw6Z"!`%pAonLdLI*C$1SM*GetexAh#tJb@Q5 L]6Vʄ;+)ch\e^š;}.2$ tf!;\oաlv8XRs(`E]۵r|bSAT s:gQ^m<HAa+!n 㫣]cUyN,5WľŻ]r4faYSo\O^GYO tnuqwmK^e2½I?y+6 r6hftR_<8ҽ{[spu~6/rJF2C U9JݪJʠ!MPLk]fakY&+cC.EnT1,ŧ磕Tlkhس'2z*4*gTCu+r}p;vg)00 }gѡDsA1$H?;O5.vzՒUj`PCqdu{}I'˔D#(R+JdZA{6VɉU\ SGHgiqi\]qDiR& RY{$ VRp1ubg}V񵳱7 ڬJ':^nF5ɏy/aWףO;҈M/\liܳ WKPRLdDkm0t%<O~tȿ8՛ܱ K1 G/yjk]Xp@mW`Z"KP?Pu`;UH&y$B*COx xDSeII?]B8& m Ԝ6W];-F0+*:]5,\A3b`[QA?]/Ҟ ! Bl^=  gz2f-"zq('J% :Ւꌢ~z}ŭv }X׀ 8 -\n#D]Ng[$6Eє^t9,x'D >Y?(s{} e, 4# !a%D7RY4dD_Y&Έ\^8˛*8u?рw4v:[,StDX:['yЃ-,^ /s=f8i;Pj6p*7;?L-nlT%H>pK9+r Ⱑqo -d f3#v[|(/3 -u'aӕ!P(y%+i:u:}iG{qIfjDejt:4P_D>֝yK g9XeTtq6&a:KMhwmQU~Xǖ*Y4wU7M9s._!aI:'D`YNOȟy|G(#@|픤;g.߁69S3g/)c6I`_tk)8;D$*fڹ`=Q#Q}bZ$L2йHcl^/^|ZF/eLS`tʳ`,\9aS ,1 l|pVp2yaHpTcONp\gDٜҥ0ߨv~P]CCL-?Y=AeZ+sT#N9[隟NʗakSZDЗhN:'%[嚓YU"DͥKArdإN] | rڢ lmӈq1LUfD}p8~SA62EOC2&fk`WbfH= HC/7|} AʧЯ&:5Z#!\%]`[e7*~aeo͕gl%HV8l->\fRܻBSV²\9ci9(v-@-u\P92)wva^9Fg9;CB' +okP3ΓCe~v]h~ *qT[CSvgE#p$ k7BX҅COԄ 8F͟]p)W !q)9=)i_"Z lX|/fR37F-.7Gu΍xX:>ka͉(Y11+ a?L9lviJ6V7-[asIxX}|{Rĩ&# M'k %}L0/8أr:*Z%vd7Q'Q~m?c,D Z4ܩgez[xw j:?@q`'dQ1=ԕg.?4HA$[}7&`exYummHc/ѯW/4[bUKo2t;v : c2ԎXcfumBO'}9T"3T>Kn4B$u/Ep2Ы㟗XwX̡ :υ bW󧾔O'8Vts`<( 8ԨޤO\Hw[Jzd㐽+}`gMj4s{8x[V ֤E&Q]ia(𞔣u* qGh>A߾S>{Ƶ"LPg guUN@)5q&;2UNqRFͥ7Es "xBd>ox Swr,5aDZ[|(~NVc.)S1UBSj)G17[‚x&ot~l ^4`B*Ƨ_D"}xŽ)nqkqq ݤf~L,`Fi_̘ןuYQϗB4J4lva;*SrLmA2&8XR3QH 'Cr9 v#p[ώ#I=:\x$E`؆ԓcuq!N.OCNX<'OObNff C.`U3 $dO˙{.R{Թ,g75|\$=? dI<1 c>o&}uK$l5ϟyT*-@jj5H`aW@c^#6V2Kr,: {@R Z Áp+Yc:U[Jlʖ3+:ʣS;rsۆĺPi fGق\|>}#˘ إA,yrWD J앖!5lS-nc4_D]1g`O:,s dp6<;p^v f)r ,((4KSE4ݮcwg%ȸ'd`c`k0BL#^O=3 ݟEvk-ĀҮT7a{ }IW DnHF$Bpz>D<r;#>+/ve$WW>6 k>_F%\F4u-5`WEb0 6C0`4@2IkDտZp&b ˱xtdzݒ'*BTFS.#f ЇO`V<0@Vd`{ոɆ._d$l|]N}Ea(Ɍ7rQ%ΤPD"c8Jj5G_=M@zZpzӄsL=N9؍WOJGI[6H,:#&mdq2@ԠLԽJD7/ c G}V PS4"X lRDtEMϋb'a!#+?v9Nwj24Vo0J9.c7ScUv#@!dր0DQOY ,+[ZuNhfǪPHtHsÅ 4>S;YϭOQ%p>Nx~YY1-F!|gX!aau{G=Ƨﻯ&Ghvp ĥEǶ50ݩB2Pb]t $~xlR^jgKAD@@߳4d "NP Ԕ^)(=# JHuBû{:VU />*l }[7EN- keق[op,~mPSƏ2b8S7'Μ?b{6ԙ %5hF N&2'o޵-C).] !qkd 0) ;eN(SRyrCέ]#Bo! m`V K>S*8:툋C͹'r4H7Wmf%u9O""B)IްmETԏ$N*v qlϜ4RixYu[c/rmm ]șZcѥ 8 ?S/:3;xrx1{׵B] ߈WQ;HSao0V;PzY?{5ҚB2-3BdnL]պP`~Ђ8 y7Diki5OBL3) 7kif##e\M\_Q(yZYcT0, (q9JY3MqֵCè?}l&y|l tpJ5v\JϱL~#ZMYZ鸗:ke%K>1$k[0qzpem&,NM'! dtPpT3wIH^*w,XxLAhU_gݺO) : X ĩ# h' CI*lŖ*me1r *Ş!d01Vi z\F,R-fER' ZmZtv%k#f8Q=Ek|n#_ erUxeg޺iLwL+n"fv@Q~<IC*ev~@6M{M?rbAW40 㛭 u# 4d6>wZiʊĀUbs`/āֵ,vFOAУ޻{P91n3D#w~d]X1f{ cMf,!- EzH;|L)F''9]53pdr+p9ܶdթ8R|2UsDuݢΆOc^K幝5n H0/G@D~E//Y/˿$-N}9 z67qbrG7[]WP3w0'x4]`r+ce8$m{+y† PgSkNJjVe׀w+k؆7IqbC x -H e+oI`d7<6-T4: {&ҎBUS*UìM^Bgf4/U#}ovH=zGD3]_Y6qyܮat'܃B߹W@L~beT{D<56{ˈRK8*\6I1괶,^3^dM]%waZy䗶z_G:_k~UȈY:nt@i\E8=%"@oQzߵB/ w^lƀE!_OflKUev3o'{ծTh 1Z(y1~+E?U?KyR"&V7:mvl4t| 1 Q» D]1:?J ɱB hLIVCNӳh$ߑ\2#2a3وwģM範\-qۉCӌ|h: DG-B][k@fxIi^p1#uW)ӄl.4h)*\ ,TIqЦ_ֆӂxYSzȸ+˂T\.C!s#Hm>; 4ˆY諽U ǐ# ksҠ*2D3ŴB$o,dλ3Y0f $S_87 u@ϑBinZN1T"sx y{MQ;2F46IZj)rA br*/7ebt֜4ɂpmg@PS[pu5 ]ig"/5JPA^glxj_S셐%k^ 0XV zEG@)qg s0P쵞A 1_=UZj(NFFCC}M~ٌZ[i@\D]I;;S1bxdeCw2˟%50Y\\h;gԱ~gQMZiUCkZ.Nǎ;!/GB /iA14uSnv ?t̏Tx> %c3n~Rۂh )EHXvE_UI (Q;G!w Qۊ$DZ{~[>Fhf65z3MOL_}oQo5G=`H (yM1<7JQv cۥ3\UNIdk!{WrI&B|ͮ|1 YC|O'6ZCl(0*~El  XB]JEmݳGHV%Ue$d InJŸN0%oZ7t2' KsunM;ЪyɄӺ5'ŘZ%$;?<ΧxkLqXf"4GC%&/5pܡ5 ?1gn*&8{M}Pe !c-xc=@|?$bKܗkuоXb0 2:,iܞV @( 9lh\umz@s2Y\ j/LGvƚdXI|k3W!7=a_wBo.NX#8c壒7m7JS-| H jC_M3KPS7n.=øŻzmXA?^~WQȘp12F 3jcq\h] Niӄ`c?.sXlL;D(DJfA#>r(pWb&X:}dpd*;$n僊o5wbS_9QLW4_K;HA.}ʺ_OېwEk&TP U%dzj%#A:b 8 sɧ7  $3dɪE`Cep6F_K2GeFb#AMkg]X Мc T],Y\6a-Mq"1#$w7׳nYC䨷\M驹οGݍ˜Vm {P?E% ,?X`ѽxP=m`EpFdG8oM;V)M74 H;.8|]$`,U7F7iQՄf*갋ntKdASl-"'b mqȺ,NJG0I|rie;x&~$f'40X<#=e% I!I;w`ʅ0RDy-FV;h;Mr1+t;,sz]MFW~dH?gǠu#$CzxKtsP86vk˅O!Hj[tT:@:Lۦ+yI {>+$ ?tI&CP$ ]r%M95Shv =]r0C(wω7a/ |?t^(]HPxbgrK^3j./L.qzLfȞ,*U^f`qҸĽPr,s{Sy EU@9h OB\Lj(, n29ø~8kߒZ*Y uE8`soߚ&;Tob$R45M.B$U@g:4g /,YQTqUio%Ϻ))VwOh[jG} &mX1cy" DCV)%o; O>#'. MwhK97$,[>bBSE{VKbF~ vϰں#pof~ǩKO/2lb:;H5X%eIC IRï3ܩ@GⅬatP'l8L +^%j_&LB\Z7yHZuaU:ge/(%]pIZDǍJsm0u:zOIVsΘP.A_^ Dg˔23 ,Ezop+6+й4Ļ2Đ [-[ܵ&|k} *^H!w*"wU3%1D5(.?J-A"@}Ju&%UIq gEDWw%B2uD@tA8l Z_}MʷH_; )Ypi-cfy;A:j6~$G_s\>UPN)=}$FtpR fB Cň:s{a} 'aWaٽp͖%DF9ui)ְn=j ԅz%!!ypՔ\=' KZ!R0}y/Tp( XN4zT&Y㞼vAA /W({o҉iNX;ɝ3Sܪj-Q2jzA zIAлvy[b' !Ad<3d>d+\_VyeIwETZ"X#Wo+ٜF6RKR%3sМYAF<]zG>NX9;|bRogYvw40@j=vհGt\d&EKQ#=Nϣcѻ\_Q]&s/'%q \j%Z#;@fPuk ʡ40N?fp*P\9HqFCM`ok ő xYPŘdGuSsYhPe{B(xa~٥:LY5rJ@. zO>&U;bW;mTB,Z}>U>' zڲJF<mR l{^% Gorl`#OT)yå> "vأA7vs sf%BޑbFfVbdl0trA_k!S%V z. 'aVC0ٚ \0moj<˓B[KLw7AVM MTlb$J6CjQR }BΚ򳆛{y&CpqBV#r/l<S#/wD;FtmF)ۿOQ Ίe[FNAYIs_MX,N<vJ;LwMߊ>YJ\ݛPJ/kO1j ͠*H)c=XNǞ M;BNVr1ge+%XJHecZdCH} 9RN(o;/J7q(qdϨ=v Z3fX"W#7Fq%,DNB8 H=nTly<8#xy~roƷ絖Yo*˴bc}?X݁U-VƤeCQZN*͢_oö1zRPy B>!;|_eHT&ZNhX"mse>Զ1DRF#Nitn&y9 ytYuep [J9*XP=b bVC7"!" sKR !+1',v0#Dڑen kF]k`yqKUpԲ>M_K? y2h̖B`X:!bb)7xU9;xU7%GTL!-TTn`'N2>T ݹy0R6'!N!bh]#g:lB}5c|:>&6nW|.EfIa7#&lB0BN)_3"*Ir z|DG.p ?A瑕W$eP8U0FPKTnQgwyN. ycTq_Z'F(;NHd˨`,ޟ8t[P.#<;HeR\1k| Vc g782 pD֟M)a[ lvqw[6(Tm_H>Ū,D&ÓJs JuJ]Aؐc!<:Y]p*+|fG.O^dGP񘣻R@Q_ v>}4dkrgBxy639GKȄunQ:LYoֶ!q>q? 6.5cR /< I,ͬ%b`8TB~k}O`63v^8xV7^m$TY4>ːo|XLwFZo8B&wn-wIL`vlΧ1Yvp.ѵ]64GD/ ^Ϸ Co.4 AɸA@|l[|DmOpS;B"19Ewٓ&zUϟlj>;LOI/rcF+]aeɳ3GH04 eC\x ԌMcC$|d5xM(b*17ZY;/b#/l&GEywfd27䜫 Xer u6M3,8 zG+$,A0dcl0Uȱ\65fhk45xN_JM w`r]XEBu?oq@) 45ړYPkçRd5gdɁwvǛ>(x>rVg$zAd KSM,M"A:<;D>1$9Cճ甒׈Xn]pUl{I&As du4 ѓrX5ce!frSEZ|\ ?(c ܊brܛ5/tX$!T[ )5-.O(C#eСd;2vۡZ?h2e:c>e)l.J0t$IZv!,?QD2GF:Um]ԆΦ=IҕSEr8Gֿ6iBy%:,V\zq]^o@PZG;] y64@DUWi4I5zd#h,QYdA/7мSvK)2DL%oFR>[exXLfs1+e7ʡB[y0n(u I.t(G9fFڮ6-D[8̨ui*$瑤5*U67Ю2KR_f>6`DGI0.ࢹ)Ywk[fR@Kbfz,3x'u9yCD܎[i|x<'itu[_pv?i'-_%Uh }$%qP8vlB Oo|[:k.7m'$dsNN;ً$R LmU0P\6L}eD &Pqo<}Ҙq#(0وCM{ O HkUeM;!yIt$G%{mnJS -[%SrR,tp_n;pDȎ_4D]5~; }C=$xu=D Ux cO܂5dYg!:<)]\o5zӶȏI!pBġ&z"މv |kMɚ#yS\1M=Y+p3fm.eҴYx."K.XsJ7ӒNjsXJ48!E;ok9P ֲq$MQ+ t*$oɁaIXPފe[O!L^,y*yd+=dPPc27z@xbUߴ #9Q$cBC3Db2# UWe1d4`;ybh{;yFhB[(XTux_?flw wA ς@%[(*՗Dx}<xzw`^ר!oW RQ=i{=#1 !MNP W#zFSyWFA JW^RۀEcN~Xm6B̵>6'Mg2/AoQmё\n[ #"&T#3v[&yy԰#Q3jd{J[t("VGw1 'IoL P`0rϤ$(ݩib~ ?)Hs\"@oL8a=znzlm_vLz3p _gh be\^H,ߟcxiV{ (5K`8Yoijmvi) _jp=0&׷$NkOE"I:A{wc4dnj( 09v^&ҋ}VTwE_֪df8SU[@:jm'U9Ux:7M'٨|Ń\+BpJ+?_.P53BnQq?z#΍[R- }^襥pl/u3Pe}c$2۪W1iMf),~KӫDĥtDzU (OCD[X~٤~hoݗP@מj݇[[2c%kGͼc%*BݬYk?+73p:4K`Wy]V|]T*AI"\o(`ykZ3 裪JX'uEO[<^q`'fb/|=jDy*0x`G{buh˾t" 1{{j 3L \hJb,(xRL8aDiћvC}ZR[^X;dح-UnƼ:Yuɼ<˄V*-Z!yeY_W04HcuGB֪>=,V~&}w=eHǀ7ӳoԥztAC7]f[X9qT?_HW}JP=}X!SiזHB塘uhw0%W1/Mg~U"t)oeA0s-ad(I\c= feh$yPW= :HhqF4VM=iIñE'0gZ s\d a0nW ٚ}M 4ըW9TRXٻ"ZI' 7)˯Ho[U9ʩ4'aI4ך[?Dfz՛iœn"~c5p/TUj~h*e.h3<\P"Z(t -q[tpTJҏ\d.6 p:[j |vX\2Z sJ>,;0xQKz uȲa l4,F|^5wcOYwF^a wNzv3 y)$}v(neVGX.G{*F7T8z:e3$Vci4?E+-dIpXhf ?_C/o\R.}FþSн;fE?Ѷɷ\{/H:ѽ: 񫨬;lKwa;Or.$+%{:e ltGΣɯ+AUF\:$fx2¤iun_7d`R ڼڟ!0FkD ~ʸC87FNcM-'/wwz{^/)Y@> o0 @!gY(=nˮ EzW݉ وhRU3'Syl~5~EX}=?2u .)U 2a:WdzD;T* s*w[Ck+kh^M.֙햂L-r@]YPs*4n DvG$UGt3f%ȄO#o.?4g*FQ3M{ s[- <2M?H2(oZ_e@)g8weQ &u#|}_"\\O7q 9-ef}{JLYB>yCً-WTM@+_x9cXaDRky ٶ #YS1E:k5n@ WPA΄q{ڝ Ze@CL.)*hkCvw?yr[iȧK#h{:?pMi`H%Cf=2@CB?֠f @~R ~9lpF1cvyՒBE1?8y$d\>ÄdTA沤~orF@~cRZG/R} 9zױ5؃hr|5fXN?WBb&ۙ&tJ&^ΗߨNb$O5/)Ɏe ?3boGLV+u).ЬO%w#@"r`țZrV&2/?cbN*{PPY?oHaF2=~~ u8\q6e= ^ eJ_;;|1QE1Sip.3K̓5ӊ") k>sa B.x8.I. W+ +]vࢄ&!I|a'~dyp6 - l3QDH)׼9s B?5ӊk 8l9e $\6&D4qGԆ gV+<4~@'go0P|lI}!t7'|.tHsmRT$iZC ;PRζQEP maoB` LکWJJ "2\b VeM՘H. QI K{)Yօ~^nw$$L^a>/5/7C2FE*K8v$Δίܘ%x68 ({װ-/ۈ;(ym+`|k0돹9g[{ze }5q4e$t`uA؃Aw:lK 1:!R %QK}"R6"OƏW ku OQTXP9KR3,ID=e%{li?#DZWFK=duԢ|͘#zBb_KoBk\5m* W/4ȌU%VVFS,R^̵ N{nMg~i@L,\1$|o|nٸL3WZIr= YǼ/], _\=!}}ePcHƝ7H`՛ly’+(ʝ놾YXn9@7b2&wpYӨ N1!!2l7P[Th nrCFdsK#]?<vfwyWJp{%T`G30-EvhYͻ_-Uw8EY3HŖP ](6;ydK9p$H`z5dl7Mc`@^JRw_",W -Jd?F5T\C gц] NNYwh>d4͸H )|J[(YY74 S1;X7 r2s8X"©*DƹG}'c´< `&KJRX2{~@nS p3Mā1)SKԔNVxH\#Y&+.$bKjMzmbZo[a{xbJ1{FxWqxr>W!%k3a2s8~p,`}'=E/0l(-s8RoE=pcLST {ny2!![| ؘ^}]dЎãwz' ot4kV:N'懐= Bdv*`l6tr:&"x;nQSA6! 9gxgDDEɛ\TCl_MOHz$VRt?T OM1UZIfk׀FV݊@Q"½JH o;6(tsvϱ.S1N!0:0 3>{tS@d0KbT6A g|DOh]=,'}-#MLX5H1[c:lSC6Ǥ0j+#o)cL~q0q*(zYD.Wp:P $ pwhM\50:ӗK]ˑD=g}W p{@(t 2zSqdY`Ւ]<tiOώ(Fna-( lMhL9olp\` _.]$T-+2/.fr_kv:dW F-C;u̡KiCa}K.W;Ń׃W.^^-KMmt"IC)'[̈́"塶vYx9og 2h[Dž6Z/q4I._@QwNY;d{a ]L3,P*p:V8mh ?be'x ue4.}˶ OX7q,+KWC36n@쩁'_^>3+$,yMKjX$=?:]`h 3aMC&?80zU1ej;hU ex_ E"&s(y. PEWa"{jH&S6z&c_ N(@krr͟q5 212G*dWq}@t_Wur&_8mR(5_#=!a R"襁QxS^G!gg|W3n̐5V -ekPgR64!`>ai|M oA{+] vG 圊pbw{Itg^/1=I\È*:Jerl)ďi]7"OϫƊ4~T_)7ms&Ǝ7V;^ S *͑+M_Tx/ Mji)8 >nD"|rIl\`} ITyEj,_ץqW$7hm Ur1w!Rb4nQ~xDCķ7V@69>WB_wYufD^>u<^tw;Zsusm䗧U^bni1XB+L>CI >L<ߑ.MPX H\_`b:ReW[<0'x gACLpZ8߷6-!&L%A(̭Y*MHeMVOqqkc^vyr;\2Ai_33,DwKhNYj"`"|7tWnY`P&78 ֦a{EI+el-(7L)/4pJ;i~3hjWfRth3 a%U͉KNL)S&Efi#rAH %.Ad:=D·]ʌPontm 2(pJx_ N+Un;vf+1% cʯ&ՃLn_д&܂ 6o"li6C28ڊ[tiQ BP/cѽL1)Ȟ7IW_bjED(J \`i 7Z4d&BٹiѳJM, {ZA. v}8@|"MMP_od@~"11Jǽ)n=ư\+Mcпg^|N{5HqR$-< M젃<F2ni!(; uqZ/N?$-:3~vfbM;`ȇvQߨN>nv6mS.:ۧƅ/H^ɂ3Pt(5 MbۂH..D> h箻mMyCZ%a5DDJw "5#N-_Gn~:~cJw8SSQXϔp)Z! n{I{ji_ts'}6hɖP9=PºvT. :/*'o7ѵ;rJ2J4Z&UJv{vec\ T]Vu{BX:%mݩ[7^hJgA &.J'XGu,^TV_,4,>90T;'!5qG SfJFqJ׼$seܕr .} ,;f #h8VԞPw~Wvq{[`@,k&,42&@},O {'Rr$A*ijvŸPӠꕙo7p!E_Vm0nw@RQ376;ɍOw(Y0c6v…5c9X<,HW0E}Zv P97~re\1xpT}JX5΁,څ'TrJ@M7}X'v{?I+pͭrO& Ϧl@̈&g{auBF{F`TVZ)ڙ {&0`v̡y^dG dR|}3Wh.#Mqta1Zd㋝6:"%mȀA5ː* <L!ןC55_)`8 j<_zw>֗9ECoEܹ[ %Dd}G"J\Z JK|wP "JX_=_zU.EeEeG90ڸ&E0 6,ʾc)z ;8hئgU/}S٥g7=\Y!pLYhEICo?n܏ ܘ(!߇"X?uoq#Sj)Ѱ#qџvj^(ݿgEF>p>Isy^>>>,m+N32@UٵAXs6t:RW.c@p1 ^iDA|oByߴU*)oʎIГ㗭*/u>CЋЁ֫y]+ب}]ӣp b'7d"83fE'4/z=b@b ICPa#M?{|©?͋E8 fӌIkH+ج|W U6^\WL8p`V)doJe|R8ڷ4X1=K*LmJUj^ߛԩ'BA$(Ϧ \51n[蜗pTKh)bwݒN4Rz}2 dtiʵ״[$2 P=9C Cr_q8ܡDɽt8x"T P5kU{OqzL9a?H#Bi}.OcՓqGqx-ԷG<3$CwŦO`5$>4Ǐ!l/B3~ϓ*ʱyމ=bzpzcǙSW.:LOIpZA{$p1KF&jn!Ea|isk+\82@.!okqrh)/[ ׊>~%ikڦsJt8sj7gð3wv=kϺ /:#"bg cDWRZI ;ss#%-aX}f)j>$p_;zsM[*0_SF8G(p32s/Hd # ^ܦyԓB\0CpW1:PbzF|3\'^ w;!)E?(2xWz~ l$gkQC*t:g)hm/a$( IzoHHJzzz*b#teZ?kZ ZaE{(*E8dD+jP?"$C˭ eC%ϩ418:CᐼO&,:L'\Scg3O]GOW s+5RkjF9^[&G5r|~s[즨k?sUb%KrYq68|O9 ymqc< RXSq(&EICU"\ꓢCOeׂ%sx R RQ=a`n@WmNEEiw^xɹ85$av'e7g &֫=&GGKϴ]:dz ge O<XMZbO'«&JF*m' #GG x{/{Ɲ!z;A{hy*7@)B)I [}w7QR$ioxo7)`ަL`$RDBs]{ݶr~Q堧ŐmyfeBj'O߹>5s,`8X%*޻'"iK"5 .Sk$]ื=GQtʍ{w3yKebXL@V6ᑕ|;)T#;\uV30 Kd@]@ڌ!sW;~ tR.tnT8+ w+Ǣgȑq氉%|5r"c l%O Eiik#Cf ,ׯ k\,ǒ|VL h0r >0{-HVvqkr%31:Go?ޡWQgԵG{2xYXmyJ&{zd`e0qr[$LNH7NtMp[c3.CPƍAJ9(lV9B6c.8ŧ ٜ"n&Ju,S)%. 5 %Pv6Gy'ӌwcIu,1+s?>bp6D7ncYUn堻Vv?ЖSBȶeH);1;ùrN8,6V۽lJ j2ݖn[/vȶnoB.kQ]spkl M&P{=[cmJ a|145ﴋX¸+|߃ی'PFҔ?Q7ȦerV@\ዎ6Y_!cH@H_*(K"&~.v-/2 /Kد{ 6_RP)@m쳟НB рB U]]9JD^"`9#4"Oyɤv kr m#4%4xcMBԩ‹|w") !9!D۾>-OKGK]ʫ'i4hU;n4h{~,Z:&7X,+-4plāP_|"2_wb,jsֶ"n*4$Wa m1 ;2N$b{:_GZd`-a 2eE5@VFgV /<l>mwiQh3Qfjidm]~1\+yC^P@ceŪ;:aJab2)K^u H>n<'p݆S5]DוͿdiKtS AExd}n\a}N40E +a| ǕtGw\̫'f&UnXb7l[Q~/5ԪF}N͇+؁zs)/+rbp _ Kw -)ܭS(˄Ҥ|&{,fˏpiqf ߛ:*歴h%Cp -YE|y#cwE^5ueHƅt_2?a]" "F &jP #g]ddya<88!O[ 9*ygߋ^S/74L /ר*jG":)Xlý^BͧEK_QFkǟL˾'xݚLRD`|z\3L'Pxw$- A-wF+$z>TSNRkdODwJW h`9 -RdU04 o1'Tؑ5GR\~>!)7xzXpv\8sc5,{)YSuKvv[E*~A1X-Kju>Vp];^E7x8ydE p|$('ΐ+ͺ)Br4q_[.GP6oe2KlI%CЮ|3kIG="IΏ? aZֶ:8Tpj( 0ULowtO<*WKcvIM3 x, i/{9?~ E{[ݳ|>8I2zDm7ޙ#P-PpH:\5-g.`v7dkb7q٬NҥҖw.F]b$܀;դR$ҡ2f?&؎ 啷@K^<ЉAtj`E*D&B+q혚A(8بtLax/ | !;M+REJi=6~b>vWkvhܷ>>u4>EèJh˿q%V/Er0jA We %&J9wDQq^W> $]Q5L&fKC}LAvȜZ# %EWd4WOĎ?Xk͖{JتIA_U<RbsR8#a&(^$蜭?f146mB:R?m6ߜt7M6:QHY/&π9߁\ڱ!-4Ҡ&u敄J:"&I[&yޢIokΥe>zd4Ls&]M@I}wqvQy1rV?.Fɂ+NW2z {0g228{o\[=>AT}l*| rL@m\%-, _@QM&ќMrUI)SRcEN5uhud} ~4R9C˘ks/㖽b6avwb`j4ك>*,gZEh!%=O)mA>_ H7hT -#0VI^+ν:r?)za~<v9hb9BsA[e*yF'kP 9<-E{@Jk0ĉI{H*\V2YU2UMYT"Ft'G܄wJtP6 zc?:јy<}=".W Š6R7֎4?&)g2p HBv[amJ︣ _Fw<1ZhgfDc!6<f7mj%ŭA>DR"F{47C+玻ZzO3E0o( 6G8k Ep"6+n2뺶T`nC_V>{>mG3.PZCl_|\ЙκJ˅i2L._^ &{dKvQ#ˈPُV3Lc{0d^qB2=XL$/9UMh\{,uT )M􀇗e.\٣l3 e; ']Vi~ry/gL7$z٧>J>5^߾D/׏1j,sjFIVD3jB}/ݑ,hVt_-ۃ p%7NPFHPDQ\YݣokJ3G pzS+R܊&C߳):I'Ar Oī6jyx p~m&|]RtEu^〵as1!3Ga5o@{СD_!=yέնړ0:k 7ǚ[{9(<#T;v]1co@[_sfrf䕽P{_|{0F K;dŽ[{)R-lORMVprl뻉jvw) N? /H&Q p$GS҅tb{Jm?qWEo[M-5kP:AhpFpG랫g.Ü5 `P/c?V4hGVra=Nb!F}$7kr#%`@V;oôKgK|Q:xaNN,:#KޖJ)lr$"̓7^LXH<ɘA |oER{XLŅkpXێd8C)l$tPHy?rVp:dzJDƤcyH7='ŖxC> |z=U㤟5֬ K,6B7wZxU#Qvwbq؞uoX" ;N} ; xR+MCvCqσ󖙗؛91^@Ju}uK/إRm,+h;eZ[BڊcbN^h˅ٓCjY:u>#kS=sԫUUƨC+=粴tx$$)(>[!K(-]IآwS^윖"'\A:JF@*+i,]A]RT`L Yj6vlQE2TQ:Q)sj+'gǛ+ HpV6өC4sK8N]'%ZBFt4.P,"ydkq+WMd<]p­ԜHSYj>R>B؜!ſ=^އ}KF@Ђ=mmN- c({6;g3.IA,0a 4ް2RA+6.}tUt$p;4g1YɄ*XVllAw5'*O`Q@*(ox4f0c CECĩ,.?j/"'V)ywS#pҦU`ls<©UPњ^ :qؐ{6zvtyGaQr=_NAQ{h܍G~@Q;QjFxEm]u;lHs./9W JW;zUf3KabتOVmAcRP$rIs1yqe-(ߘf'9SX.qoҵ1ʿ] ro۾In婍U`el7gT j]cN-r0gtAUdp86F캹iӾ!aДTD~j/) 3[\ B~dm,x,8jo^*֏=^Kv[(0Xbg61 Oae66M ڰY"IEsxf.@mM E8svPdG/vi49\6.)PMOd?“|$(d0߼\a05B!zY'U1cZ#9s|R}U A1J- n#GTcXR0@7Jh,$Tvy.HDT:]wjі5_ N"uG$zٴ v ~8?;LcĘX5أ-wy5沙[di T l^>~F`2w}q.ġd$b'PI72$`,QOnĤ0χƥZb6 ,0#"V*Ob4\:JYç7Mʋ ?:iVh=8V֘=m#,7s[[P\xI:ێ8%ýRm$`Q5E |wf;KB ۸APImDaY2Wٞ+F}^2An.uDĐ)I=M܂pH>d.Mb@&~7kф:6ϫ8@|Iof|)(k <2oyB v{>Ij%+&kdʽS)28rxiӍ[nVDo /Z0$W:Znx'q ܫ][p-V9BT;R}aRx0-``/#:%i9|h>SD>'x%K+q!LTW ';Qm?яϽaЩ4OvDd<X@N5AfLWs4AQnZt4-R@`'(󿱿G5̙yfp銿ZHi9d0yXt/8忤;4֮)qPv&;];T6iQb#xck>=B[qjKi &x4< *\R^=sUW#="o1|p3vxh*gH+&S `E x?TѝR鑾2[Ġl p_vA-EV`q;/$1i$|f,:r{L${~p&8ҟ1{ͫjRe8gwcV vkePlPX߱. ap{lh+JDyy840@0HXptDHu$#>􉰮#^W@Wywkk;\ɚ:o/tf k$_T$3H2Ǫߑ@Pf4`Hv8afNj__BAb[MWxD&ˎ$s~.7v{$y|d ٚR zI^( I>ILm r_f KXܞ?ty͎\8)awPKU?FwxbAR(iB#/%H%e[^+0s+1,00h bP..:֪=y^ 1)9zvՋBW&y@& 5)s;Xx䡁3kݑaZ}ǸM'e 6ܢV-yϖyjvZc!ʂ ;WS_]7pf/rphx̞4c4_7_GK\!1aH:gD;2^j":3?qfQaEΩ|wXs ۉ hѿ ' Lk>ّPU/ t8PFZB-vD49ϾJ­LD7+"UsOSL}lw-_:N*y <|N\i=*#֋YS)Vxyzdꦻq)=?w8yoNR({Q#ay,hBB9YpS`xPVd8m*UlZ}/Mue2öBk]xlًDCi=P:.iqb3ǠQw}w;}e*'0EEpӾX٤uWg hp;\qzK,: e)ux\2u"^sz]x\3zILV)>Z$k<5@A[*(w9 9z|qeBx{gB8]8eb19-yDU FB {ɮM9Lf0Z* p{*B)D;YwAp_ޔjrzQExvSLJ]RrQ;m])AׂMh>;8LQsh5nftm .8Eۭa2v$y(H=KFUx_b0<°j|#φa:}KhW!,:f=3l<`EpAtp2⊂F{'zspDGFR|7.#j7K!J,ɹ.5G?w~&*UrŠ]T'$/yLBNl=P:<'z 'dWI0<,ԌhUÐ?#[|Jz1G sRB'BmO3314nYs1(fSe)8aYv4Ipl^W3GUZ*w0Zmqp-ۋ a}VЗ*3> ^9Ά׳r]RwYi^6ysЭ[I':ũ. :ZS:ظ2>u (qLi>灀dl OW""19Iơ9ɎF4w}i@3p=9!ifkÏĉ;RXWcēDPg}1`?l0s)GS4H2*\ ::4d{" ¿G:Z.H4!w8iÐ:G0KB>Jfks(ϋ:RAW9v?d /`Go7#OP7*f[x9֯'.`qOz N 9Ϟ;J)؂$5,g6QZ{@I5Z+@/U483X2{S[-Ң^d9npH$[D"ͺ k(V*%u2 WԐhPQV6_R+F[FꯚHύC `fJBNe檎()"vSx0)D$E 5ê+'ؐJGF3}my{Uc@EL:~Ni2́$6tΔ8[fb1cxIC ՝p扲=nKͺ`Y妘C]².%G$誑Z@J̉#>ǩ)eD-&-- PDRE+$uKC2@:B ,7nf tѧ$Qҝ)r!uj1Cv1I %N]bX @I;PZcptw#X6rk/+&H?鸺(31ϸsO:Vݾ€(;bSP\ l}N?+'4Ǚbc|+RRX'FMH vA`,z&RW zнE'xbx|WbsP]ǮAJLTu1cĴ <ُچHdg+ߗAu~ĵ\r#Ud8I=/Jh2E桀'EЋ܏głTھa,pu4H7y%Q0^`y2тOް⠅zb+0JoPe:1=t}m'r}Ltw2# i!&x[Et^4e VQȻlne2̻#hs#j\E:"T+A% DTnExVZt_nFxȳwyQ*P13Nw)`?V ƭcdbDDZCse^/URTnƭZiN@mvOӯK⳺ğCpR^ih˵x,0)8$oS&qn6DL` n)taտ/!<^Rcd'ʵ՘H+g#.~vNCn}O<ć0vJ@8lpĵUxѕ1V9@d0;Dy!r=wV )8M)Z[bxP͞bSRZU`bcc}Tݸg0J٭Ba齳c }R8p>/@Pm'HLbP? 40®ܛxh\mBewO!cdLn0 Aejh+}F:豻C`Y8 w 9ߙ{ w0+{3uOOxCǹzȵ|d7cbgЛ3>=|f$#tE2f*b-8#|\-峦%0"mBNV:r/ ZoƋ'1;I$7& |/npQrQKz~y{&b*Df˳Tm{): v7z6,<"q3@1n|QIIDe",7+ QGzӛXDŧJާYT_T&Tnyʯ* ;YL/:af/:Y5˸"Ի&3cϔS.n[$0xu&J<|P ZQİԙ'\NֿircCq8ׯ/BbՊԑh:spWJSn94V7|"*r@'(粩jƧw[TCj}@ًZ Ū$Wj*qWL@Q2sQũb:frQq䚪cƸwP|vuѕ_MZ,SQ!^,^iBA,&/S/*p; )2;`)0Ƽ|uj&Mnklk]PjSIvoޖĵ;tbkOF4$ɢK_lcjmS, *\@ UսUOee5NZ(mr"wawڰl_ y\Ƃm}{U݇dJ̫;L[ŏR&$M6_dGyN|-N;*!3f_,Bz$32e[pW 2c|prXڽ:bZvr̚PME&8K=`ELNq^1Ɲ hvtKMBGH6!ҽs?!|`T1\q۩D R2Q $ ~>񯂝I4 e^#O@Zlt5j.{cH+W<_Qjs:C*_h1[^pnrnmWpx!|\jU-B5)o-Җ<'A 9OVdHT-Y֙%HU Hjƅ~gղ֙3f:Jv S%9_=ka@7޺+t$8b;qݻ(Z߸R)$c|٘S6Ҝ\g(?\V b tug$2󆬈LV`Y/.yTJ|" b]G7HLJV tm*3X{s&!WL[JhM买!ϛW|%gecOg0[)>ᡰ&ߥQ]TMrԗ:Ē?]|&?EV°'+z;jDFu9G(U)\j醰xR8l!2kE[2[]AR;fN?/ǧ_ז7D%Q#RN.AO\\é0O,.PU};~E@1N$>9DIaMLTͶF^rkHZ2ÙGߖF`#Z{(vrR;nl5iW˺]- rh@q8jQahorWSlu7#s%1[RP!P/|KySxeIN A]59YǬ=?t/RjNjKsf\/sGInDaڎ gX a$*LͬPL4oqoEe8*\> ݴ@9gd͒`F'!Z&NZf9Lm Ge̐q*r[GǛ ;;NddSMoW+iC &rVy *j+n3 Gj(/\eX(Δ'vV* Bw$.Ī 2@L%soI^5jC=V:(}]k+ l{; (<>Kq@i-Q 6:5s?Egu~D!^ˤԾ= .!ߖ(TEnqxN*tZQ؅LWO6o Y2)9ۃT28㱓4 `,cyK Yvҩ-ƒ*☈Hwjoc ״U{SLtxK@ҩu#%y"V;+9 k9!l_*NPP1wc@2b5~aOPԦmKQq`4mb!{_[6ҼAUueOxe6W:e%}yhKx&)'f~ :SiaW2 }/[px#Hcd\ 4r20?y;_Em_nxw\/U}mq$Oxg E?'-7F?ge  ^?yk C2Kj?o "\Ǖ^AuKX -\JMbedh=zYOIO "#"b,6IZsZQ mu4w_KI]'C4Z\X Um͒G! 9{nyUwI\3/ )0q,]L,1j IΉ@7G_}5ڷҞfv1-zPX5;#k?plTwNWRb , WS6FDbv}lA=GY2YKtS$yÿ2A~?׹pP Ef+@9:j~!׺aTp6@|U/Rx6%kON8\ց&]joJۘf L/Ob)@t;؆СK./6@L8}~a;ԋlj%#4с[5KQXjPSj,Iف湌- ʤb<;]g/I߅̱]^ђqeW7x3*fCzS{y}i'L&}[zAa1o{UBy!7[XQy z~m7ע[ɬMx)M(ġ/(ځd~wKZ7zfuuqBvquͺDm}AV*(8a,-|7xUߦ(Cp'$ Ĭ7lnс2 _W?@ )"DSx /d#`; m$5̫}Ont귖=;o~5}rBwId%vޮ|~@Ys1Zx\yEi)aCP21jW͒1t/W82m3BGQ/I=Ô2]F#%j/i%iiOܓnЁ. "q"HqF\E_ I%s4/;~RN *]'ɤmLwL}.|eԨ)GD3h=- @%Əyř6 FUq${HGIy6RjvjeG&oXA\a{\ަRHHU<=@b>M1V*o0rhZfn71 93A-Uz*C[P rV'| G/Du%XS~) UZfarlƷP@N/hx[4n(9~aǼť!tuyKX2=m>Vf&T彰-Ǡ!cMja8?5= ]h<ėEnfVi ޓ ʞZp~8 V(vXCs)Rv aT'QeB*-* kB)^μC5};i+S"E&25F|׳͇ycغi~DĔ+AbƔYG =vyꙸ*cwscsO 4GquTɸAX^5 9,)A1Ɨ2F.2U {q\(9>Y-s ֱdkYbyu++]Viēd| wFokLEN(TE;%OqY1o?yPueu3 Y;woY*Л{ vɂxu/Ԧ%ΐ-\eqx$dNAL3X.|.䒉&a?2пP g;oA9"l S9+{nTZ0un3zsFO#~iXӀ@K >v sv\[Ѯhc `rCCƥ)CF8.\/ ?ӫ!ڮFZY4[.bCwFZ K@!>co?`jпxg)S 秈gLcA5̑JeLBP:Ÿ^hXh~췃}oE|\bZ&}kwDtRvc "K!Z9A!g0Anl/"rJ1$)*_j: {V/Q^=c俧wq}؁6<`sɽC2V`0B#*QQ%e-Skvk OCsH\O[g%Ng]Q*? bp=ocamq1g޺/Kծqð7ӟTF Vz{KGB`_%a,TP/x$abz%f+0prl<"HzeFexjY!l?b*9N%*g\Օ.׹NIPo?q|mNLpAE8'N3j9yblE9Iɓ曧wnee!QǭKq ЗKWG'<@wr{x`B46,e?{ᒧp[bϘ&mG6("#^A2j<%w¾&_u)a9 аj cg/]#H΋85 V̾ +31K0MCVڝml0~El.NnjoGBnL}p=4?z3ڎ(g$WkѨP0pA}LC]2NTU=/SZhN~  OK:&D!|Җ;k`136`z_:-FV= !Ryxd qH);<~tceY6&~c[ãd=vk__#5G _dk=pZ ytc9:Ζ|&^%mx&Kz=5܈ 0u.d~6SI8di)P]:KUW1)h\븊͋! <50^@CiTUĀ~Zbcʹ['/p7g:Y~_Fi|B'x2k5Q)5~CKKmXYj^giYa`m0ulp]fz=hLF0 Y{%%@11F 8 =>LWlN!b|v(ڧ^o| ~3yl 3-/^$wշ=\Y)a{y7TK CK+_A's[4^*VRyr'#{]]c]`1J1+Tg]JSe] :,HSyxEYB>~gskF͹JkZt;snTF?s+KoAfCϑ,yLX3AC[N@ᬪ=aCBc-ZӄVd~ &Fsm:dP]i z 9V0xHU8ӄ[>=ɏ#<#v,JDSaB|aͤw]'WAN{t?1h^h4b1Ϩ`L[.mԴ͂87uX h,cyz*EQM3B6@6g)fI}cௌzw})?)_y@@\ B:ԑ?PO:O'WD0(⎩ny{\A7!=4a^0LzG~1FX IDQ]wHz062\˹Y6 Ţ9ijeAc5]է5(0cADМ>2XaŭCl3 N n',Q^C?5(Ċόk\|o܂7رR|KЀ4E `?y}0r+ HHZ`tޯ{%t]Gׅ2~b1 srŻ;gݳspη؟kX(=(@zGnmRms%BlOh~9+M1p[j-6VrB/im8"-.Mu"F]JF)7s%x!GC}JY`H6n}hbmBZw?~OW?UKVaHi\bUiR t}Wj?RzNEFBI^ \uM> hXPJ;3ݹ*, |2FWS/%E?QR[j Ndhv,b%ʪA|< h MGE$bN/ۅ\um䈭_7GTIgRfNɌ~mU{&:J-fa-B@85g[~nC\_-_ +jc]ӖbF._{5Wˑ*%箚4~/GzHdhܲ3SU5ԌhBьo exUTҟƤiH'b>=0OwyyQ&XڎT]=:g#+%tεciF ) 68s)BOJg9yl èx~XSـ̏N-׋@آsJέO$.W,tnLkw|P}О+9*0In_k(-YhrFc:̵K`5H"6 30w8[#[ M= :uZaQ 'r =:amz_LW!8v _RRqHIۃBl&GOS٤>>HdqQUR~.ЬQ ~nUKgI˕3ue%][*j{ b},Qi]QQLD*oUiȫfocfL iH0h{6)l8~fx}e*=OqF H;]߮~"B"v5"Mo/Yztȧ ^dmorNf(uGcѼc]7VGyI5ΚiOIϨb){Y_>CProBg*n0;o5si'hV&Eagkl P@.2#/6*<4v[- nE'uqcBVZv07Zh _ T v I*[ 2#1I/K !0a>}_hҦUj?q.䕓W~dlI˥$%8LPu!DLՖ.ѢgKQvQ)f:p=~"v'y%EXt>-;h##g $B(Vsz?7B* _*,X̭|֙c-aW#yERBMuS^wi4s1#(&H/JIT,Oy3mijc5m!l~ PBFf8pũ>i^R ]H V[ h'Uϓ u!Z/waX8) 8cjk$t9Qw%kE=ҵ X0ygtni®5pv-THicLOUyiՅ{6X2~gۉ"nc&^/_ ,g [9`MmK" 3A.9rJ-Bښc9Af0}|uaC%uoPC?>ԑ7o q7c)E7*Ѧqk(NTۜ 3^ ϝϐa&,a,lff3K(WO0'" ͢B-&C/-dTRL%E?pY&mMJϹONVUq*)Nˢq͐<˞ E08'ݾYE*g_6G4Sj=*.&-`l7$%q[C #Ĺb&lˍ#N1'm,c{_}rb&cCJy\,5]F ?Jry-$iPdЇz:Yi ƮK.N2;)xtv 9*W e}f͘ܒ Ϫ7胹ˮ(oF@aBqYԴE:[]ugo[ ;eܭt<ԜK9աgtݖ+!ܑ̋ Hh&k_ηW2mWc+UF_P^1+ªWim]UROIB6Ia\zo_tU2}TF }L;D ?gmK?(9 6)w)9CUMoW?"̓ngL!(MҵbXML'Y'}[R)RS:R =@vVig)"=3s| A0q;Ed7)cki!44pqlU;z^yђkP7˸W|}X/zh"C| Յ !ne{xcp~ +k'ה*״\}6j&ɳ&3Րtaf(rq85.h1>+W$-eIg%kWcbxLȡ@ɈlObp,b#=ͣ B6:[_OըY|$jclϩ^)$1 3)GW59- +NK( chjR)i4/}G/\o0~eBX+89Pi) KE ?,GwҨ'][W _0pDl6 !'̚_VCSymkPgkPXקeװua8_%9[7JD!zH"HBF7+8Nj΄K8H3a$Mӌv2kj2P%~~$r:۱KY}⥳#&X 5}Dմ5"2^b+Rux ^8N^=lKGq3̺~_`mjEb%7ҹ v)0K[x!:1V﹍*73Z}t#|e s T* JBimȱ0p5ap+\M0xFp^E] <ũkGa &z" B !NPK€ 夨xxuwmaxnb5sv/,,%-r`( e;˔G"$Dt.-[&6t트b2u ^10yo6Imae3KɞVCX% | 1B#' ֏$I6f-qZ9XNq^ ߢaōy#@ª X%v@$ZR1&ݡ:Zl{8RfixZHHb2pvmeהbk~o; L'$ MfьCnM,s{Y4;ڝO$,?Pśv}d~_e ֍}nX4HMvԼi11"k2kBB9jH;r+K< Z6B+Mdyd[\CxGԁb Fg{[.{XU Bni^pS<э^x~+]`ODsn/ZvڸwlwsM«܅%[Uc挒&P´El[2ك@uτ7;3cKԐzlBCC͗yS I`_u/G)lZYJ^'W c_L:4)wB$$@|V;9 8*$ʠRH7,I,2ɃTTiE_q%%5>d̽po/rk/FS XM&|P<842U .TH1xPIyF^)1s>>!JLxn /@ᙰkCǕçb`ۙ?K#˺6>l1v 7'oXh@/4.Э57wpK<Hb,Rd91 v c5YHN-<+Ww/c5`MW׺&M'_9'~/o].(OHhI'Q&ێs*,Aez︉AzQBptcR{#Q7g2B{(ƻ%y;5KL6> AZ/!Qn<_Qs_gOeVKxuB P˥3n޳k1Um u25Wm@VvL}Dpx0qz׼.F Dݕ?} ̀V%[tbt)ܑY+x?ӖDvGLR^:zW<ʹ̢|`U|'e27-o}sL-a~Ȍ|gzoȶ 侣*6=f`r<˷q򨞄}>\CID1P^a F63Al's^r:X~x *59:_TTݍZxN,vt."E0Zd <**^%bB\ 2Ѥ2\{VC\6薳N=[ M b`ח[<K/UD4#4Mn ˢVU`K Dˈm[4ÿ ,st-]O !*%[,Y6w,'IGmzC*/yve/n=k%:xyR2M!<\2Z@:VO,;eCV Ď82ӓ0 /rN[bŊnڮt$-hpTSd~ЌI{Hݻ V>#)Ox!Iuw*&>R&Dbb7A?k>h׷30́7a?o덌u9W437q>:I(a/ \-f1y#y\^U0F%rht9cvfl;e?4nGXQJ=$of+a,ZZMJx,1 Ef%1|MHB.pk2u17rlA9OERxA3q7i)8k@N!F ɽgeL2,h v%ڿF\ܤc32Ub|tӿ⍔ߺ]O#3TYFKOEQ8HLz|<(7ë E=MԍtT-u kŎDRyB/Xc˱sy3uXѿ3X51]l8vlъW 柗XxP<> 8>f2&"(w=" _04Ÿ:gާK4kz6@mz[x2 $u"LCS..>{w$ͭ7)Aߝ)֎kח;`.t([ "kHbz_8\sycG4t ,yipDr;,[LR5w3zFQpw %'g%l|AEV'Ihr` =+p/TN=,}ӋCn$"pCB/U^?n;SF<M`5'5Hk_qr9%R:im>isz;]SF12r.Dhz|a3:FbN뉪&=q&12 pAFWAY{EQ) Ocx[>r[挚xӰ2RU?l rHlaHpSrmP7_Ԕ}hMc1R||[YgSsL7޲uI/.^ ō xO ㋘&PvSZKX;khe!8ܲ 5ÎD0GoBpAOYҦRY+]aP+O-wk-Y|$LJ#DSo*q&+.8-N<'IM+p滛tT޳p&hՆ:X 9OBI!A)9SPL ςYKg Yļ6VcZ-,VYOʢY!+GZ-21C;b>'o82ɟ X,c9a8-1rSawlaS,DsFXn9U+r`F!^T%b6~Hpǫ@ <,OL55PԬpzdliHSP!sdLC,haP5#RƩX&}7/5 9^pkX,ȊC#͂;~4⑈hb/庡遲6@LH BnY4;Z. tYٚ1zTrELjuVM*[I ^#V;4~ܒGѱr.v}=:yWgg.W;2/`*ؙΨ5<󍿬BkqkN YҥI>!&XVv^.U]VHY^/GvJiwdks8 >0A޵o_k1D%/·1 ׭=#=JFry?JRijt3_"ܗ#݂dG_̚YJ8@K.`FB ISAS4"9>}13! [?/epȡyҧ S u#4_% r]ewqCFIFRdĂA(t,KLt"K'V/=w4 7+մ3Q_ fWn TUڱZ uckvG^ }gIw_~*kVhcz%SV Q S%w4>l[1@uyQK@w?6>N0iHA @ a5Q*ԞɴpP6X5*+Ų+J!zTQE2_T V@XR Ŝ H]MWC tf1ݭ5.E"- erGzJF,@ U_tS۫dorHݾ"h2[J̓- Ӈ\'/ F'K?c9<}|śGT[zR8QKD%6p N| < ij]L₲P7b}oH w}Gf?)j1z'b^hL/bR9<905:g۳Zd ^8(DZTWF AA_;2aOk WH\Ly.bP^I` 'aO~R%oPS Rb-f|#ԁu.+Yz ͯ`R'-XSS58v-0e77^auH%67G*)$x\Ǥsc#p0;GTksv =CРgwCv3`InZ<]ɗPY!7w %}L/+A?Я/? |JsJF7"cA*RvEW,/\k~?RFѦv},@!T_d?EY2ʤ넂Q(S*&Rƚxy`AbWiKN}e|A#U>Q*g~ pCa00vTELeP;j~PDV*ǭyLJxUb͝Nr/(c蓆(N+ R6 `+!G99δAdO\Wf'=lʽ VL^kF[_E濥?ɴkvՑJ—˶:a?\cNh!{OCOVl)Z?C_JWf5c:95kדF;IU܃BF,ەO w%:d~*Lc(7d, y`lf*gt{Qӌ#5mDUlQ&?Y,Dݿ#x4sF^^pQX'0U*5V}K85 @M*z¡~;b~C-Xq ah~O`.!1[1,QZbPaҬ`k\ 7Slr5cx\-Wdr?;2;X>8IoYR~}T)8K,;@znzI̊i-Z}'krMjHȽ}fdc3) xnQpKh$;?>1-O_œLS0r:ЂQ_&ÓWpzϷ<%Q$ I_1U-5>` rxy;5sϾ2Sa]N<_ɲ51֑P  om ~OJT@M I'p^HZ`mJ4.|P`[ϖ7:P Ȅ,îa>c$`"q#,8#(f?`dX)ڨU*ғ'R&N,UѽJ×G {X'Vǔeu096O*ˢU!ּ͡X|XCA͞)Ui0@DH{%Դ 2 &c]BiNci +Zt" I*C,U"Be:G͟U_n'’OB\hyvq]j5jGEW3+!(?8/Y<:ɚbaUʣ|sy bq CJ&]H |/xQX8F[XW˥{b"*wpdB]!]h$<*^0Pj*^<ԲjSZe*f=eli,?"K0ױwssp: J81 {ߢ^b (-([JAIG=זpJ|®ZΈ4xf2b o%lhB((Btk'Tgez2"Ydd2Yۑ1k5Qק$`V+8QWMeD _ 3S}vgyxhO~!C/::(Vע,pD@~ `0:WDfqS^{0tmb'DGIoN]xvև5I$g:61F3 ќ-:@>}smMw{`{K7bQ$hcOg#]xsQZ`tb\ V=':ā%}J%̖26HHgicOTEr_;W>4N_X ; |7g5i&fx?xQ GI]ۄ,\C1]:sO5T˧ρ)4,4JbQAG~-$NYʞ>6qxaEr~)i IL-TvMtG6%<@焺F,7]yi WU+7Y Ulڔo ͌v%"𱆀,wwi\&O&p@2qTA.*4A-vXjT?FȦN{d!2j˚cJZ36C 4wxxLәj_M;+M6ˑ] 5k4PSd!]!irb foSؿ07gR'{y%+c,F~TR# )S[l~"Z{b3 v>rEDƒٜ8@>gQXX'Kek]I)ā@G|=S?C%(gBGqb|"HW'lWn'@N}mVne#zBusҗ9hu2\(]Xܡ{Mذ#OИvꖥߏT@N Y%Õ/V=v w-@ռa*<5+~$E3p#|e㍦V3Q W1fEU`)#;n&cwnk:/CPl=<ٯF q#BB- #ͫ5a:$?]Jb)K3' :kppCs $ d GKPuSCa^^-kաQ1^A*:w5LVPx~-IӗB?Kbwd 8waĚ=ZDĪ? )G ={3wrC 3bҴ sڇpAYߦ;GLhy~^z]9YfVlY뱰X ̌nɁB^a󠯮"Nu4Yr< |{ 3`j>W ֢mSx=e=32 D]Adڢl(R}.+uo (NDf~Ɏ\57QmK2U'-֐IuPm,-GfZ˟HGvnmjk̘*LE9bsyT?^BABm?CSܞ. p)~r+/O`C&svO'.%5d'xgk\ip=BJm/IRqA[QRW~O)Hg n2H |ٖjQ[u%fOt&sMɔr9& %HzIrb 2x|i] 9v')?/>br$\la^uE1,ꁜc*,XB&/,joJTh6W˅DE3oSP-?}2u'FS@n'C c-kc;yF+N&jy|1U~`%L̰Dk~b41(B \di UR׮чţjctHbHޘo}`[3?kM2ӕ)͟[Y| 'ʬF~/;J;#֪VkA 'Ko|}-|LÁy"x;e*5UhsiE28k5"P/vA3.z[MnM}}nGrJs$s,?29z!s܅C#_t~lO}G8{c@E]P~Gz(z%6D,m1 ,N L?x;*˒ p')бXSeڍ^JEOxIOtaRo!\b$~4P2>NK"x/ٌi$dp`'Z_h&|U!fo !:}?=n&bZ3˷Ý ÿ^0]PH89o@6/Z:!4ſr`h7o9kjYAU*;7 & _7jyjQX "F oV8n58=IB2.ldc%d:E0i_@MV4' L[pHa!JlX1&b 2r-Gp\\00E S_)Rw={%"mE5}ȸ"n6[N;p;|PG y?LtdԲʖ8ȯ_jL$5)1ovB9xs| Dع 179sڶ> "]t9-& JMv~׉Kpz6Fjֹ8B'ȼ`VfY:Gwߤ4m!or#1āoE^qͳ5WJbɭ u.HJΓ]q"rAG[n uY HѤUϽYA;N`y˻$GbN fD^Λ%M%KsD[P`#jkC4 8tE-e9=4Jz^v+Kw_43$`eS]/ys,6˽?k>Lm+ʫM<}MNhP|6`"5C? p큊3<_G!pPӴO775^hh N tY~?`3 G%i)~RBL947f uveh9!/ 92%v 5VZ|XȺG p^x^(|2(^ pAmkr4z ܺzANdbV~Dj3 mRzqVRgh5۲óTAYגEXVɜ+G $ژ񟉁pjt RNC x8+{f}E Qb~+-1=) sq$kk3 KP 7 Cc4TЖ7<.Hڶv|(K. 3/2!N;-ۿhıqG~z.d*Kށd¼?;T6O ?80gQ ||>ʝFQ2SDuu<.ʚՙz B9UTn$b`_V[C؁q2?|cmzf!^W27Nb15yJGz"3A+jx,qa wE7Ụ&*M nX}~lO#`Y[=3J{KɤZ};bN>< {&@ὦN_b\^g|S%IܺLH|]]ۚ~xt]AzUs1}c%E5SB%}#>(<*s띮H8&*ϪZMyuVBFlЄňs^z-(s~}ڹ~[}9A ȋ{n+!k@$qU9Dž._~c%K# l>sJ":΋12Mc .mZТ·7H{IW]S}[NRbX>9.7IxmJ&w}_yHG^N>0 zthE 4Z-7_$R-G?c>pn@ǖSK8ԃ1.Ԃ(u\ Io Z\aQLZRlzsI,20bʠ0yQ>uK]1zǹ1,]vay nuW F2j;Ҏ L@,"H +|}: 9)Դ9^aCJ] ɕ3ƒ=.&LrFu4V S+S2j!~gYK,116"ZAm މ `OD!c{l\ea`us*kH8q$&Db[IX8؈gL\lWqci1b^ 5yuߴ4Zg][n7M枝Ͽ 7&P4M8fJi᤻UF~(np7qT%?z@oÅg֡e=mME KjrBZZ^7O2*VeԚXCΒT`*kk/@]o>ݟ,*U\Aqk"u|Ux2(  Oc Q*Ƹ7(a2ݣY/ZK}\KZ8[@˶55>]Z"y/`| 9$w:VFQȸp=B8|GS nC]oGquD9y*4RG qZi㸈W_X-ne]PS.j4q[lT^mSߖg7R؋ε !G7i-:bt-E<)YIwƨQ4' CT-ȕGP:)Suh1ٺ2`/3px"20g\?gm&I0K4yynƍ6#3P"d\8֑:e' B&h "_kQ7l5'&Y;L1rP;2,M#OM "ӈ%_0!Vcآ\w"({ѯh/)f,Xx*FS| Ks`NO10_K =ӱcv Vyd눷2Wrnn<Պzp_]"(`_$cYd>OULf,w>q;2NXK#/Mު"Hs-/(B -Z^5尳.= |JrC70>Vxcbk>]An$fi;X9KQ9J'XB-d$ %O vc`~׍'T-@EpBPNucP*ܓ|R)ktz"bk&;ekgdN"z$)yr:&#"`sh͐!o : 56 #g(E;ТM=z|M.!fg'^6 y]*d '9, iΠ2h~ЍU*I(OV(pSM_lcdkd/tv  V> t{dV;PmMT.-jV0K'o[3YRM1I ~j RM{$dLۢ\itՑ' 8N 0AUoRg;>YJ?G:HȻ֐)Sfȅx;X{lF7C.iH'x'IZG&k-lgeU6aNd5lh?vTxB>n-(PuwH6v%T7l{o9 EfT qz'F{CUf^uN]X"sF/D/xIdij*gGՌ]dtVHQ(H2d' sxkut8`-yX]cyyݰl,+ݶs`?Ý.^` T )*(D<`/kl?")f'qTDs/a5`.d1\]]5$ܮ "ш9idtsܐ/RvNļ$=W-llTi .6eR hjE$H vLoN:w{!&64azYGUblqĝv6~Odfxw-C|/!q9y `C ;3!tX8~y*`ў$YS%4X/-{2U1O vMm6Žxq$@qOZÛ?NO@Zo{%ZZ<3 j$:(H _k#OjIb]"0D2_ؒ;M!Iۖ !sHsc]S6h)r柃ꕁ(:2b$('` pD _i˄D#؆3xZcvcʼnмzM}Ї0܁["h4imbqJz) _ryN<.τu.Ya;| ;ꌾFI cUr:V -}!<1}'= NfW~Y5!uk\\GZqb BI7]C}zͮVwE~;S*^Lb2̈́=ҙfʀ;I18`:^Dⷄr D04vsXk;=k&ͭ׼XM(9jnuUd"?-{:ht@Ig٣916A6H7ʍK7r@(ǙڊE^mvzKuQp$gNNhhP^-Iy!qW CV)hprY)`<$/Ɨ7X?rۓ}ܕ%_:6QX]m[a(O\M /TQBdlnj6Kz%%*aCfx/,q9, FlU5D_ *qWnqpmbV._jvEЊf0L1BU Ii5uԹؐ쎮Y*Bܱj&dkN\N0\xnp%U @Һo"sGKfUO9F:M65=;I(zT`^>txέ 0R舯a 7.^Uk%S :z|%S6AlB:Uu~׆X,2RYx}Y5U-C|qۅo J5oe-8QȘEJ֭ |"}jK=ypHrJau&kjJ4]@+hM5u/ۄxأR\;>vXϺE|T&xs]h=r}?hlzW1K+a 6&NS(~{~Eg~3'2ٮ-#RAd1!B/fPH?U*wfg!345&MxL 2Red6Yש͑PWQ5Ges0Yg\J\f/mYIy,c܂׭UPu|ᮬgVHBD(X/dω%RsQ> ZAI[8<ɲBuR|w1: og<Abēh:jgpAE*"P rscIUh;EWړf'dXzS6׺H.w*wv |J&6M ˠ2^kD2Olnxq Y:$,Թyφ 6|cVݹUHYy^u~ \[jlř("H@%DGVjW|i,HjepJ>XUsiVWˁc;2c:20@.Ͼ݊Ap'njk;4+I JrGeJL@J`;j($!^3*S*(}?CՋupfcfǀbTq~TCNJөUQCx/ꈪ6 AuE[| &|'Y>5[~22R_x{MϞظ'T. Gj'P6Q?2G$ŕAj7 զ~776Ʊ).`vj }` NM]щ.,1҃0Ӣ\UEy|cm"44HfKLJ?'=8ɟwT ոCkcOx}6A-NP~ Gxg6 &iA.a 1lS5[ 'NˍK9;6N|ݞ#W:VD19TO4ɀhwB0r]]-PԟB֣itFel,j [Aɓ}=ҳ٧ʮ{NԬ2%o]JAR75^FC M;:"(/]/~u2(\qR,Ju4s:Qs{"ôTq0@sX UE2 ݙb&V)}7EO{['*V 8@1*yKI,O#t[ܠ|bxI]L--pi Z&OOlYxRJTjHATQk('_"ʱBxv &L]\|l)lYb`sB9g׹rڋBT}9dvN[u"TZ5V+ &SPصaO2G7(z:tCtfj-k?}+UKZY.!'Ɉրrbk:z4 #qA3StAU,3k<l~?W>efz=hSPj Ѳ~rMw%VXP!O ۲׿^[M; 1eu_{,|6.,ՋS@_sD UM `|g٩?۩N_GHI&z8󰙳W8Ӏ<ńl;Yv=dsD@13#&}z*uv԰+cζ4z@s[Io– e|F?^JR5r 1`O]h]|˱YzE!-1 5}5M6پL }MBx؉>>0cc U.1kd"'~ZYG )GfȢLiD׳CsӰocϊ55stvD^̘-7Jiޅ-J+#FMDIǾߧXF [X +!arhȲC}MG`qR@tjC5zgpj1f5ĸi1hNНlE#|ݎQ ; .fP M\nwξ$?l(sEwxJUEj(l* 5Ҵ>ّ;}ZFYƋ1?񽜷qD4=Km;,zeŨ|6Gc^iЩ=imw% kݍ?FN=o|\SRl)6 ]%靔Fzm, HX'kKh)90#_8x\ԶY:3:}} (6V3 jHy_U- }ϝl`Y+6ΠT KOFKVH6H |%Z1Wgs͸_Wc}_}s|ٰ`02?;H1ʓG a=OҐe0Н((t \A?WY`iQb ]z5`zNg^ ERsy~|[ċYwKh3у% M('N u⮂\4d1NjwRt肋 i]`.ߚiqЬs$2R!D|q0 qJRvxl؜P|} ({m|{H? HQ;i~'xOG 2)U5 aB'C]Cg^rK. *X[f]U62Y#PEy ^~۵x;Oe+f#:ʩ%I~ג~Z["Suiio!IXH}>f?Nl43{Ko'Avx1.w)BG"W\[ ]o4q6A֜g8>=_[hrU`Q~Xu="#hkTᔞ9E%s72_e \E/4ǛU#6ÊϷ/)Z]ړ%H;fk9I *Nly@%}"=ϪiY#sC7f'3ӱ^I/ &GA\t{s"Yh@N2@5a'nP٬>2vSM0S\zgSP2oqY77hẍ* |@ަʈmPe \.Ml7H!BGs"1Ҭͦᥲi-m^h n񰯯["iOT["/OuUY3GաMӁOWjTyPSum/BUk@TE*f::ύaN{rYe(R@iu8s;ǝv;y|ޢּG+tX* J:M}7@b"R]g3dY? |.6m7 U\+Ӫj`XS@[ߗoP(9fWQ޴Uo6>!a+4WagXb3;A ^hx窝]A`]7ל>ṟ%>vrV+D4 ?@BAɂ>u;m E奂ad]Bx|۸Bk(K :K7pe 8{mf>ŎwSmH>Z19կ@ia.'g^V8_T\%>4:G&MIs= d.!ҧFf8fIfڢ;_X;]6'\@ HQjzrαtq䋜ix^mUʄN Bk!m&&Wb)6 Y_6`]/N:,[-ȭ]W%Tzە*ffZbE$4z3J|`N4̵yпa?Ft;(6%atlfk`!ǦX0iJ bw|]V33?}Ic` ݉; j+ϢP6PzFZmSǪ_vr_Ml4$2|8m9UݠP6aٽ6 fby0LR*z^fz1p\#pi];"ҢgW\arxH$m]Al'srTˁ?֮4D%?L=%œZ"?q[T6 GЈ3"*oZqۼefco O;|װ lRL?]@苤h݀"rIR:k62<SiYes|u 5&E|]&gοc!h&J|d7>,% fs8 X6c֩4N4ߪ$ډ "Hۡ,uvH1*u 5q\?f_]Tq1B zW:+lֿ\'T.r:OYP/ EdCPI. -G:To|CEsݴ^lTa6U="p*b9̻~b?l oKɥKǯG (."H@EUc{%n D/v lYҫwnNqIϨ&KlEJzmPWėMsSr#jW1ߛ$XG-\y2˾|߅$YTEY0){ $V!!HQ5՘׼5(揋xp-p1A؋ru8^CPqNݯ)L<ӡ! T] Mo4b 2q\b2"$M('DZG5Pis]FsIJ0A18i\>-/ hJdQH:խEh]"8gDO D kL}=iu9#çd _7҅Xs/CtRajgˊ[,ZӸ'V2{}sBY#B[E@\f#jo$rokHh]Ɓ.%EUI] DDkaܶڣYn}_dW|))~%.5VfA7&#}SU_[[a;\(v)cHm/)H6 ro嬪 +Y,6qp{҂ݹ147^{tUY?pb)p!*C6?,2:B(o@Βd'nY|f#g7taiǝjz2 {,T bt* vjT7Hz- [5I(iAtSyp@}MS B.Zn^4O1S3sb0vkfs+^U?w$VBjk^ڥonpYkD,\OH__UTV+%ȳjDgSM=Άr풄 RѠMA, 荬λ puSpdT5BS}(z#1E ľDe)+-zC=H"Ϲ7:l,`df%qYV@$jH3thZ)Cs`!2]]\ *Gi멙[AhEi2\ivZ /U2]8WK}2S8wjVoSv)͟z KmW6 @K\_[{Tx-nvF{\YC$Ⰽ'[D2p1u}J&H$g4ԍ:>?ko?'!ӣ[;. /"Ōs~ٝH_f%!^}bAf8Zk2/WVH8Jly79{̭\'R4`|X$ҧƤb\o|G*}&嶛q kڡGB 'rB8Cٜ3,FCjhz Ke 9ƕFn*f`m2+(G$bhuWllI|9n퐥AH4*I/Bȼ`Avq*HjT"^cPB&f .r7#~TU:%9^x'~u߷_.Y3Lm8Xᖆjψd߬(f~mH&XF޻z?v{?3{:DHm.wy-n&Zt8b_fdHR/!z H{ $-9\/~|>?i#e.Y) |-‘:.Cur*UCnt˴x8G-g\~R#G#0Zu` 5ak zg^mg*xSafwe[ǚ;wg,~ɡuɧ{A&D 5TX>E"JSq\s7Dkwˆ f~GG ;_6*N; t)qXoXs6m/e2+_ʿG,L yJAɂ^b325}HZ@n91 \wX[cWM23kGS9\V4MQ}|>[ 6&VC'>A079vo:aj1j;DG[!]҂*,vȱS;gz 5QAw<)61РA*'/fYadL~֡$([/m(qF%.MA(,`e&pvڐ>UYw||sw0+ |8w&]p:0ڣQiK7od'`wc>)_J.'%,ҎyBgAǹ;Zs]1'U"(׆b5(Un uqes75[J}SNTfMZFك?Ufb3-i#ydHh8IS-LQ?>{7ረ JbF-<^Nw2{UՄuoJ'FP-=T5 ЉYQW,9E+@I{Z|d G0Y]֊=YXlA嶺VxiOT=v?]{83%3#ې̐Z&tճ[T; C,_@h@fU =R;S,x,/]E膅@KPMV=yba8Ðz[i1:|#mh%(hq3<P ˟WGx;:f p%һ4d K8D.㎯%=^/Hy.>"ꔔyo.$%&>a%mwN̅_zfVAyo`4hVȝW觍FQa5]X] r1.z)3(OgMr̤&ww9DQqH ڿ*:\s K~qcj.lD 7+A-Vv@wvvkg@ fU@X^K>Y bZn n-Н ay,Mi 1 HqLKgy3k/kpms~Y Q{Ffb뿓y2lHZ`2(Ix@e &T[y.5҃~'o_M}U7rAxBfj{JKzK~z 8ps>ZJ?HY85cKn'm3[vQ+J{%`Dz_}EFn˒RH~5`- p5SNU"".b_4I[0+c#q#(_݊_N@Cg8%"xMačzQ'ol.#עAa1RfV }\1KXVg~NG8.`nU\&~(GxՃ́Mb<5Q.<_JܵiV~~Y/a,?ZĊuFN`|s ؈gP+uDw b4ΰ].UrwjnAT$9!ww E5ѠۙXf¥cr'ßA6xYm B@.>Q|aHm:(0D;=Gz+޾Es2u#-j`Uz3r3N,j ۉUqc#5 pc/(k tTS@X)b!@I }*W~-3s}@#6ONuh.v4.JIa h}\5At1`Hy\/ar0 x}HjbP#wJaAnj}st\:_!CDz{9Ţ!\kd).[BD*HSOqk 1\k{Z2bLƿa?y6Yj: (gMtO{{Y+%)X4lA!̂>rz*2j7.UD#- s6M:,Ӓʧ%ooGXO? L%c.:wk]Bh/HBjCOBz4`=ZWry} `{|dofX)c3"._8L&XX&r D'>FZUO61[ޯS96 X o2&@Ae"ijXE,ƻ-&~.Rkk9 v+LGmnK 6?Z7&+=;&=$hI17h,hͧcdR 憀ŽzQmeʪT!hH[.+uVΥ-W}Idb` _n$DŽy[.4Lp+ fӥ Hk=1u*ãJ,Tnn lW>W m2\c\^4~ :Пj# !;V{SKUtWmylNeEELXvCwPg4~{*ˤtT9QՕ[?mE%~X_yX{U8֒"zӨ; |tdD 7ĥA-^J/@!QZnAPK ^.ѻ S2$ 8#+D.rH.ߗÑJ:'D-, 8 fGhx>7T`g|8Hvv(+}VGV'  _2eU( 9z5: ksPǵ^LCl$7X +Tomx8;B[PNaꕺl1L,%İ!O ͤ< j9켲"y#V${Þ5ږT: gQcۄJ k+~#8Ceŕ8Z[nxKw#@mVs{os*JUzaa->ph.wX~ZNDj6lDv/hסKNK, *vG6% ;ZF9W> w,%!|CS= HCJ8ڡHPW39oca ¸"23Lчu-i>z&ss #YLF_F.rV]R/4hby%=M󚦻4(KOwxrfl>U;tsU` P"Ȝ.5%ƇzchG+ _H"YFUoٸWw9à3"DQ:tQ$Zw.Dc$/*rvVFQu?϶翙=.tgƝ\,X_D%D-TkXf #'WeP@|Qy>@,\DO Wc _mj ox|60eVvR44XD1bce= OWg]y)-!G*#肻 ~ hlsyɷU g,][VLFA*dhf|/m`7훖\%맍b3bԏg+rvOk/D|oCǃ8孳5u Ƅa/ 7fn!k ĕֆE 'C4YYT!K_Fgz'ui }.'snʰcj G1 q7r)/7=a{ 9\U'ʘ\Vwm:-Kfc$+a|ckcWHC1n KbhB{+!FӾ}7+tq VExcjdLs7\"MggQ rKnZB$PGѹhm ܾlS+]lR6 zDOAmh.Əƶghѕ&,{oG%o ȁ=8is8]Af@f 8FHz^ ]V3 1:U.qO~E+ߋ7_&pl@ЅU#[Gk/08;F铕s:F|d\l+"4"ː99%24( Ys!zA.ԅu73˸f&8Pe˼Ӳ:r` #U@AYRYaij`ad((sk_<忓jm} +L 8ݰ!T~ gN~ U!GUWD6gy|MWd=ǭH=殀= ޴^s#AL/&쬜ts}<9SUv&9!̄^W6afd+yw4`U^ށkXQ ߐhw rĝuqyxn==Rh>7Pe cLWVQ3UƊX; o+P4[of[DJSǑCWί̲ ,}Ǐ<ſJN6)]nb#Ohqb:ίqBڟ(_#o%sOiJdZUetKW_>~Jj:y9@u.:-F|%pM(QM>{b"T=1R7'*v-ېm2 RFpUN&,.(/mXby1GT^nގ_4bL_ZIJS ?QuBBjKD et/ه@$aіcAV+̞+] 7&ps Y!ĕYR/Pdִsm[Ǫ$WuU0&>,M+ƽb\j1yb-ÆU$lVR~KH/hp[OibuOyG9 g c+o6_Qz$SxXkKNㆩⷕ`(wzfÂL(*묚7m927#8X#HQvٚ|f'LH~s4b #[򰱍SX' rE{`* ?Ie8%E.}9|!T:YNJ+F Wp#»[&(#u6&TQE+8u"~*cQ-E$\hcПg[R|ׇ YfSTY۬ZBVNe܊ZA]WD $5@3x=Wۍ0tQ1&%~C{'_ItHwމ}?g圆Rui@$U CCޝ:`f_ `34qq oge9ՋKK!@3Vm oK"3EyYY..6H5{mxPmթAR ]syAQ dnŠcTgX̪1X)8YKVsmgé5r$l B:T;v%xj">?; W3ڷ>Bp{ ?3/><{O6r"4WEz`("=At62(TL6ֻ@u9lwb. )cgx 2ОՒJ^!^wn׏C`wM+)$ߔj?$: df{d*9#lb݇Q'-'ŢS5g(=SL n?A4dkڷ, }xc8( xu^0bYqUdYDk;0҅Ku!ŚTSm * zvZHiWJBpyO 킴]z'<iMT~eZ, mƪlb2ZKe(aNJ}\o"ZWέä]&uMR=dbSYCo*A72ˈ*Prv-=tb Pmy|Zx"@!ap8cRՃc(q>BRD V>i0 Qkul1)%['^-/I!=vt.q $BD@l5$ԛ;(7%Nd^HDy~U#{34\4o,/XGC *iaJvQ 3,-|0f܉^wV#Uxa. n@ 8fzD~$XbrD>{ZiJ_o>z[Y4vh.b{@y_PJN X_`;kAHc(Z}"B-}Ēow$+7JǢumX6;V 3*U}@KR%\iKխqBl8/V&V ~= XE,RnҜ3(ɀew-itB%B"?[(̜Lڸ $Z~\+A P?}Nm:8؍E5 ~SEuɥվ ^DSr#MЭg Wk%˙:vpe5TK  i9DcJ|m\*Im`s >9ƽ^ՓHb(Ϳ^삋߇Zb|qr!KX.N)'mD)-|hexrY90Vh3*glc݋bԺ]Wu|eނ(a< |A#ZM^>dw/#1萔[\0(7Ô }ϰ֢xMPx>ٮ9!!'/@J/T/okEϰ@,b}Vwӕvl&<rP z[)BYu'5 @!r*MO-4_qI~ac,9=nζʉX"]Vzٱ*) #o佹*t0_On&%$A(Pxj{"p 2賡 gQ /IZuei?K~d~C;A r,E@F.*-"jA:2oRoڽ/hhA,d6@p`)KxE XjnERގP:L'=Ӿ<i0QG/>G͍*NO5;= / l n^)"R{e=@LL5K7w& јk#%Iٗa1aa? &Vg`c_!3]gWɋ}lZcM!%^iZr]"D5S͠$[fJ2C~f_ f526DFPxNBz~8N'Bئf|:QqX;ڷl9Hp>*V*oBq*^"^#E8-ujeJ` ]-V.)6LyF7}Lk5=xτx-:ZSKD$BPnfҴghf i3 3pnzb.:lG!4Zk0>pu>#Y9Z^fmiG%"b8F̙ $r^neE(!obܖ YOh_)Lt^/ggUIWrc*G}1-אwd)6.fܶVv72XȞ= v&u] $3r#B]oAꊆ~GB%[Ƥ*ZtryYXKuzi3e,CIo e#0˚1SNC 3V^#F9&[V/՜OIcagIjR[#sz =y2?qK4Z6KBx.[Y)@/ 6/4 \mwNW2@ޱA@rrpu[LL3߈Y)ry/ٹwM(iv첕 Ԡ.nh.Ε] U |:O  IރIk,b,p rUD@0­}IbYoK2dX|z 9B$_=%ҾOjXjF"YQ28TJHLL" 5}LXlyX?UYghl+&;N5;荞ƆEFp "=zؠq˜ٟNZZubA1gx$s~P| e]6N'xDPߗrL Nl[kc eY@גM S!U,ⵉQsizrW6M%g!pi ? ~T;0ޭA.xypto 볹i%?CԺ-Rϊ!hUXLW_F.8Cz pOF+-īO$l&F2_|C'XbAC_#ع= ԑłvS_ı= p`Z~n%\Qe7ֈU Pn>UcWx6oAuo'aܼq:m8/:۬A-7sx۶A :qJPUcP^),jF^O;[gs\^.ؑiX '*QfWp7TT%Oj~PB+iKI> Jf]:P #%)aeR7HtnO57ۄ ız1wTnYw P _@Pp&Eq7;(G&ol4vXl17jA pl\nEI/PUK|ksjgM.nM"͘- `9R/`#vV7QQi| ZyKkI@^D>&'HAX X壖K}Bk YU~k7O0?2 sINȅ!ʧG #3\ѝsͶ Ϗyj-x[^B?VT )t_iuyBeSh`jگ{3ao/Y@67um qb1y0_NS1[gOS1=+o.1p[U)wc{1xI}9'+niQL5_EKOR PR< 9} `jeZ]3[5qXl'nu<Pp)PrIOcgX;3L6 /o5^hglU0vjB|YRGV~^I^re_[Leq+FPP|!4cZ45* D`"c9ӈ5_ooC, px@!xL4]Z$mB a)j]k<\5o-!- zkﱃ]^,+oK$Jjps :X$lk_Tmḇ.k75է!sA[;Q8`>P˥]YiG̓Rq*%eQ6~ep-ywWuX R"."=)W#42RTƳaʓa{!'-~@HZ 2N/F3 Vk [~;E:|Z@"B+w؇p_+o7g#k_yi+7gV.S,YQo{(Xg%FR6 <)1bjrkO.`(*ގI.T^3:YUܻݷB:/7티nUM"qNI`mRz"ZCMRG_>˸C4UOP b'9i[ Y`8O˔r4O2C+v;rSKu| KEN>ēϾwb*ahS*D^X_g"$]fd_v&[YjKv +s*+e:+BvcŔ,ۖ/d;0`\q!I>3Мh]n+- !~J _qP%CoTAy+a54--n>\`>s/0Yc۱xiJa jB̈ f" \tͥ2֗t lw.96z(,7K]K>@|<&Ȯ㨝wX8n&6 7 t. E61Lo^|Sl[jڴd@tܡ|n)v[6ΩCН+.Kq.wx~广fR0c~3vذ]EDeCgǶRcea 4JFupJxM^NAUF5dHjt{GY[CLKy [Z^*>vd={-)ILdShT:V&j}jBU!w;%ߧC R*e:VJσ[?`iy'J /B-BD^ % ]e-n_NY#$#bR&? q"٩RR{e#83r3Sie{o_%8;/=;c|<2w8xE3xučGY8v序T2'1;{O/o,/SF󈔘^r!-ct>bU]ce $Թ@L]vԧǻMa1Wf,AT^qVe֣s~DYZH8pB"T&&ulS>BhԾ$JLr_ڜ-HC30b (_p"-ڔ继(X,2'IX]!& dT.@%TTL9Kԙ k DdD2D&!vcdC(#&pgMt6v,RZULt&чEF !ZڣYk7Rր= ~tw&!jC+,PfQ YSp3>&$W z?bRueF탠i>F:€6NYmC˅` XSP菸0 VQW|m1 e fT[pR1Ta(v,<ҵUZ]ƺ]6Wgƍ%s ?m 4qK,i.، 3M_eTm W% 7- AcG0n[S d-"7$wׅHRM7iԒc,F7^aܔge'q~7L:jfQ*h#хG7IP>)I~k*O!@erlY`n]r/@R(?I& ՛B EǸΌHOYԣ^# يx/SeNnZHg_z#U+6"V26"Ɩ3[(qꪛ4<*I /wHALr*WqPe&IF{=8"uDn-3e2/HQ}A;V&V/esN:N ŌPʘ-g&l8ݐJt~dȵۮ[Y, /G+u2N \ṈO h0- h-ioŢ Dz#+򿀩p$y}-~#t憢WZ6n?N^ܣjHS܏y]F8ie&t|" ]W(>nƗ\ FC ajH%].7 s 0'7*mb#Oy9F UA\.zC*)<>{H,[ՙVj2:S]0l$o} `]ؕcȂ9OAIi̜0=VįnorV&lxt\1Ӷl!9iw3=>>.vɽw^nGޛ0Յ3UcR_*Dc6n)j7IlJ7Բa j (R oC]сmC$x`6{x·n!"jv.s YV ĩiڡ7,}VA_ XO7*x94i0bRK{~> P!be`9vݾFOhpW~VIj~yFyEs2ձGf%U/+LߔZHѠ)A2̡3r~-4ƄYj"Q, TEMoh3,Ӫ–3UCWT0iqYAgoE  IkPZwݭ#skAc7la/KGvS?E, upyҚC&sĕuYu1饅b60nV.{FW}Sުkt$(*9zMe{>g`S7 BEW>GǔF~[qkj%t҉=Lj])|Q"` 9 I$9@mljT`ɓ $#q7XrL 3nŠ>a፟\$7fb(pZ yf/8.@r3)鮾#h]("P1%PUYӮ.'Άdi1f!(;oW<&T[`w!ցtK hprU~!?'Eep7c1OD;^v!#Ը50V'Ez  ǽuıP w< > LAAj<Bc/ ]`E~`+k.E%`9V̕WL*-_"JKeΩ2R_GT(g({G^ZER.` n0fv΍H>S\b[xYGf@Ϋ"C~uׄ@nG}fv%1;|76. !EgEZd%9e.ގ؋ P[! fQzT]7 z-iaT7JJTr#Է_J?Δk~W:|)8c-j$"]Kq]C>Y@rWLٙ2#; Xb sQa qre 6i+,Z+ZYd6)B xtێśSre-؝$P E%K# |B(箶Lv#lh+E ҎfjVV4+<; ;$Z̀σ;<9y@ab{2NԪ8콗y"Y]Ֆf:*ቛ}MFBS:Y^`J?v眭6}bzX=V2B@X.vPtd;ԇJK9'2! 'XKV'5BdjVqK^,wM%9\6#2v?9fԸ+G ܹ-9+"P37O}:^R2Kc`>_Lmm@ :5kR4>sPo<N!}9l;g\%1e<9Brs Jd@"JeQ?V?|n![YC6ew3Q*Ɇ_|u%زjseMCUZS:Xz3$ΰe~'Rh)ܼƽl[AlPZhN)o*F%v% # Z6/K7?Ncpp@&Ɏ`4{AEsg*cnQ DzhI}q./cHދu MD7Iv/ |bR'@0,=F6G_eD/S1P >D#$iaBuB{ %+OH%X~ʇz.M;$7?JKKbdW膲,@5Q-F:nDC2Ԯ>ֶi.SCvLpC m% `UX\:`:l| 4v0&Z8̓X|8j.]Qa -vCtLb)؆޽V}AFcv.O#aE9Qqې0X>8J[кG546Sjg*w,cqL nNd[8iY $YVOtȳ6JA|_Z(za̎'+?[O6*@jXJS%lltI/>QQ9)zs7f 36MHUjqd*w uG/Mp >zWICIzɼ\p|0uGD&QN^ir"] sVނ!٢ŊMF[`t}ہn(y:WA6Xq[/!hxamỉV9ds֭6sKLȦET~$ za4pYZ* K P-lCܶjUNt\߁Z¨F85H̶G9zب~ĉj%ᵨ R=GvNUyO6?~_j q>d<C\fC 8A&VٝIgA -eߏL u 94"gfG! %X6Y(^2\ˡ0z, z GCU1%K"rgRG5eu$.HӨ5|eUܞkgY1}rOd7x?{| 4f*|,䌤рT; ͑K[p!m#@7J:ʆCj*xTqlxEŹ۠P qYFᅊ:h@QadTXϙrvaX=zE17 ;b%!(3ӥwRtVqђFx(?~co,^[.^1Ě! DLRȇ"7`8#p;k~8u~hϰ#L;:$i!\3\`+F}Q_w >u12t ^dj]1b3Ǽ#0:3s kSgq%DzQ1Q;u7 sq5wiԝ E(>P0~}JO65a$/p=1V9þ10emC$o՚ڧ~1VkەqD϶" TKs[dU~/?] ԝE|~Q%dh2"d+{ mY_[HZګqp0pnXHMli~Zi*aT= Xq)^迭PPS#L^+teԥ#k^vQ8tb}`+fHHfP3oG5˱&,1L78Nmjv0F|cNZ?D'o&2,adnDsk"t52¦H6~.uYRL jU^1 ^`ŃӫQLe/sSJ[g:[&6.}cXiT;;~;+~Fu_d#Ii`mQz)aP )M)P# 'ߌ0 b~u(Whvc9)u| MLW♥zM~Z2_vm- tϠ JL&t-Gh;X[4scƈrRq I@i<n JqT+aDB~ ̐,aݬ d$܎ynA'ZWib ee0\hɂXʭrty=P!CD0#)h|%qoEI6>UBEGNE"LRN!w€ݧqCEFIm )>2[i6͡[AOM}F]Ww3Lu!JE' :RYSЄ$ -IuzRX'9"VGJ`$R7GXL!t blLKbRp}4痗M%9 8a )9 0}dž c#|<fYaGt2[(֮-rЛtf[H{|</L񷄸4{{ OHFwhϳY:np `Vzhk6C7軮6Sud:;DU%k{x8m*C,Ҝ:bRz+Xz%%O .xѓ$lE+s_|r2N>NΌ~nٗE6ds뽨 "q,"%^>Wb}o: 阇Vƥ>0i3*%:ݰv3 | ݶ-sэ0ӌ ;?R)>+͉XV'A@ƕ8ؤ2u(BÅXmt-8Xi$9ggjw$gdٻ W$^jHsFuGhSFgbG9= 28]c`_Z1VTPFO3C)*Y$=& ?o> WJRCA؄d~uEnZcB!R/+y >fm$7ezt"T@hW+1ZZau}X.N*EW؄>rR?[']7uiM":vf/o˭66z2 nAd5)уQDzq84x1Jr5xr2Ϸ?8!a.#3l./[~#Zv̺34 ҐhпHh5=@'{3Jwm7L`(#DCb챦 x.gERm',SUH\bV,g ^Ӛ)o8A8ռRbG*Ъ_v41l(9 oqĽ?(>* ,+=U|eh~wu[XSO酰||@tTWeDaņYf;/l%#s{@ w*Ap)niԞՒ@Wa+ 9[+G\ϽbFcǡB`d|aq[bSvw;Gq5檮:O54dZ)΃RP)c.౎fvЮʕHi*XVu2,7p1kbC2Ԓ nYlq7AQgtuNˈ>f%t':zm266|U悩5JiΆbg,S,[aU@ lH}SG _D6R_z_-DJ|w\xxHcvڊwI讘aPZaGeߔaE2(70g[7Gi#YGf*M 'tPdLyΌ^g6ֆL u/@O/*vE:F]ڒӹl ?*`|K{.:g^pG!)׳SiH7fقB:E3&#cAYPl[_o2"&`0f@ʾWψDLAʔ "tb_ WC&Z@Ro LcPOx`Ac KdgWr}Zzse\&?PQo1 {'o "3x+I[Cv\O=.@]:v}gVw=|Xaͺ0ύҎvE$S2G8ԋŃPpz6CO! HP29z?{ջp5ԘqbU0]]>۫L yki1uTPXi2Ѭ8,fkMt*F!!Gye |lFt e5ڷ"luVMk Gs&g&tZ9YmSm<$oYi ՟wqsk`U܍Uo"!$M1VLc" FN#MBfYgOKstJ BQ$rK \T`CKz% չj΅ 5e"WwIs5}W~ 5AkRIXyzLkbBVF4( fDx}\ǘZf/]LdՑgՇgyo[\| H#h͹hA|ڪ7t>=WXO/@pCc6]\AeKZEQG)>guv'"F49cP΀;9CMf}W~pe_xo*;K /ؼ7IӱmqؼPL+XK,pղ<)I-GsG=PyFp+w\ɭV̴z20s{B5lS^2Qze=z8=,CpTuKt n-W<xl䊋rʑjGsnEy+a!v.GA:N`ir\B#]c M" wA//r1.?L U_!Kg/s;m`0Gh9nCVݭVTfpllHdø"#{dnZ@ߢD}OuG K '';vv Y+T^}PH'Tg7 PLQ[YXcZ50rat/W)e?b@r=${9Ezg'Bv 7Ɇx&_p_$g?XY+nJ[/δQI˕n]g2&Znn]f=V#eX'7no6b@ڌ+N}[3, D>n!iui DHrO=‹"${|KDX=68߱>C\`k-ixRtV{u=yG2@2 Uԝ .5@@..I'ﵬspںw6iF,nqF2!z˃lm u)M6Mn.`S)w0llV GaUpr hP|A"]%2eU'z1, 69+ {G܈0Z }/T!Jb?d ݥu3pf# 7+vWOѹ|"#.bɋ-^"[8|M|3&6}eM3U#GDeX.ȷ Cٮ퀼5#|Q8%9\x)aA~b4Mߠ"oxW2~ mȁu #P|R2AS ~4iFR6Re q W]6D(ڸQ2.һIjtYtBSfS`{%!O#00њ踋x,S"}悏S+@ [*N0,*0'=?q-V/H@:Ȯ3Z;SR~1,4سJЖOȘ_9Q߁)9^ g+厗Uww.`Zm/]H@0+ο@&hlbYD>.l4wJ r hA^4lS^Ī0TeM}X{dAyaZ dm8&h}Rȑ8Tt),>#~;U#I0AG29nM*~Q08|W=&#߃Y{rrG"<C__bf1#l{7`F[p}1%i#zsưr8z VƌANWy Wz_L =8uU°F+^:7\Y.\rb~%Ca6nC*MM엄E{ Je㫐LJӳ_}$>0}oc*|xL\GN@h-}Q˰ o]#sL|\P{/Mj ! ǣ[{7U5MBɏErn}-X 79r TVaBq9 e(j]Xù,S,\tv9)r/99`"{K5W]W-]#ۢ!QDwiq>j(]tK/r1"uq}|EJ6Z:8hp|prO̠plCl"O;l><j%Ҙ$:DZ{M9T{ChGMKE8̐-4VnS'x $H4 vP5Z".@EfOƭ?2꿵quG7ītYsy;䥜`Ár^EctLD](0(]/ǣ(jC`-qH´ n I:lqB/*FfA_]k&I|bKʠ2yeߘu6rq4ͩ+PDYpneϐfb%?T6G8N+-eʿWъ~݇2i]@tB^K ^kGC1qp2hкf#/D~`ItK{ {CK5.t^|Q!Sx,0ejE2G2Sf")s*(GO|YQ$ی_`d? b5pQurP\v*kiphf,IO1t);fZ6EȚtEmxVX$:iXpBI' nmB/v;9CC oDT]KpXmHF|c;| A1:|/v!$9hglwlKv]+?NhAo:az+jpQx@EOBH = *{u2}D͵|xp|U .Ò<]?z$XKi(LIoSyRA~\y6n  a~9&M3Z6o&r1Fu|8-4 wܪTՃ͗XVYNn,.&4vsz~Ck2-݋# E %@-<̳ ~Z5LPy1 y,f8)c=ъ@1h|4%*ܮ%]K0z>?2)*olQo7q帴A=nUx[3Hۓ JJܔb.}ꆗ4Z^.cVpJ:*̸v"3yGH7j]6N'ړ 3ccX~X7\f B]Vk╿}rMnɣIsR=[>hSc npiMy7xWU,GhjDyQ&ϕ1l>IZ5s3o1R ʂ,U`DWٔC pFnvDt<;|Gi3X/4YItrU>ImM4.֔gaQsywީchel< (ӥiR&UM^Nz%lBQ]M V@וkL6sh0Bڞ'//Sp[sJ/#PHQ~9LƳ׫od1rTr_݂r,.J.Y{udo ?gRemr`;5t\$Dg zM!c6|zEIs(ݨنJOk*;ި⑆d6M!ls~sߣp!iwjÁزiG|5Dv4mM'xz E3>U$Bqz3+uQ i<О]i!uEzZ{&sv5hoڰ\yyA-QNFn}I--;ǜ#h}cҞ.."oXQ.o:y״)%A 0HD 'ХAYeo|-*(6]AP:'l͊~TjT Ҽ^BSNׁ{/)Zw- n2%ߞBEG+jQ~YI`>$ !"QGraXkA݇e*Bj ~;Wt%=t7)cdJrtTn#c9ȶO?HN0(#BQZn}]8^,ۃ.uϚ{4?ފoE60o8%·9Qqx&i UTIO]crt1[79Xxl#Y6`59,bj|1>IuL =X /lb8"GY isF!ā֩Iy\>2h\#v*dhv͕Ri6eEty.oZ~r@Z;!YH)Da 1s!"G1Ey?۲k:.-I˖m2TYq\k*Yq*)uD|'^A5pH2vX51v(:쾒KCAcLѤ`WoSl>&տT /vV O':4#sںPlN!Gc_@=p0 V5Zʅ vy3N"kWjפUc3Z_ؔ1|m]v. T$0Me)ܤqݗ=3:46ĜDM[ Ȟ-$g;43WwƼ]0|Fi?,l76\€-W{(ӿ@ڤ˙5odL7޲t\05{PKq'JVj4#%*8hަ(t )(=,(>Kr 0$3-sT\t*KPNb!e!Vx.;umM9&SnA`@]f =A; v}%q) 1ۮ"RS~zp-%K63Q \8T1m<80~zOI+Ed KyiTtIǖ,swpKI޸_uދ#jdz-+p=/l}N0fgut)̗^_ (EnE%5m5C\eQҕpI!Y {g4zG4o-a{UQbp(њKbf7R!@#kY,wE[ZߣVؘ8 JSjfHͰ4lgyȣm~Z{m ƽCfKEG|`nتer?KXhږԶ1ӓ9$J:F+-3@*ٛYȽ6xo׉Lvꛑ !Zfpx}3̞LG,% p7fR|y ϟzzo'TqjSbKBf)"(8O&F5qҾ8%85_;* H Y2c,,Sʴ&8l2H$_6YC`Ol Vi:1K >$:c!P|$8{ˋ:Ja(\\Y-},}`|ȑ]]1zT͑ajdFx fx$1фT})wX;5|yJQM0"4xC=@cէq=h*y'mk&J"=$Oc{u*ѿ}J&\W|U$RF|( &]η$Ӓ\[YvlutV!Usi(+(QKOq}Rd`6le%_ y8#DWuy2bE.P$dn73?Y?zk*Ǜ Sp=fԒWc-DPMJ$?0WLgS?lbu9 ]S:&Z+l UuI1n5M#y(|~qJ* !߫ t}VSk- g5 u TIY.K<#̋g>Ѵ E7Z-jp=آQψ_t "Hk Y֑%8bA&"WˬH=i(5zSzEy=VԼA5a\jՐPM : Bۊҽ{3rړx؝uBޘ8=[ D:#K *Z csZs?*/Sb4o$1{$@s`ϱ?r"q{pj%xoM;\`_`x0E0}_uٻXIXsIe6ȶpm3; yBSwITΈ\1 KN~JIM$ީ!ׅ ߀ehVzf`B*f2R bLE% K\kmIȺ~{rmieU+#Ǡ|=nWK|;k.d.k^d(/?jjfI|x>HIC̒:gk5JK4+vJ\~kӠFG jn#Mdwڌ& = [$'$^6.N[~b$MʔmßKP GDnCcg,R8ƩX2C肊Sn>h"()rE gڣ12ki Wܞ? nFbUIoE&sj-w:GnON9c-nС&ork*jP&ҥ=ZSHqxx}Icin]ޯ`/5N&5:EA L ef_ٞ"&Iq(v^:G #!z`[Gv76cUL#]eW(Z 9/eTCe)vR[M`bQH/NyI4%I `y,r[1ziOaf„X`ՔTQytݰ,dXN'Hf@&{,L)H[&ثdpsE:W4*4@նh F '~Z?x(^Ά/)Q@ЏRR2[ZeK%t/&ڵϿ=!w-,>\Jβa8;pUJ1QN<_m* z}Oe50o:LWP:_gWJAqq^XL$(<vCy##qg/:҈E16Ƚ BbY֘d)Da)!5!3)sz$xHq +zŧuX)+uzdڤ:!&͛SC2B  6R:znx8Ȃzq=UݝT@>{.#ς*^$@f4s ]>c"!V1o$69ۗɕȥVHe;pU|9ԉaJ>'ѻh;q|Pm̸f<9@jCs'jv{^/Z/ bX`-JYq;9VO,yz?[+ 8h9.ۃL/b2g%eF[ Z%/,@M8=݌A_ȷfmsG[?PInhԔL=h[| SNaiaxb.74d/z223ek144Ьu.6J/7 铇]E^QDSbX eOT'-VYC# 99nQ] KU3*@mO} {I!G}(T1Q⌦L\< |5kh_f:3RTb~ Y",+Ė觜\<"5c 4A1͉K’Vޗle`@bT tnK!Hevݮ\441 5} W0"KEAnˠ*ӏ3 PK.dD?N>.YK]wo4^]h> 3+QRCLk&? eN Μ"D= Jq?93όv1L@) 6Væ)|NͫF1t5ߝ#Ծx'[gX cgxaDt$O[f8>Jd2*{PZDc+Q? B;Jv/NeI9t5fv2%YZ@|F 0OKUqN3xA¼{S6UNqRpv^c#;K@r/zNdOl|*xJ%6a n/m*N |DD%} '#h WN4\k%TA@piѠ#l6O +%4}VcM '3T987~1(s) l7G<%@5\D_Lbc4bBu PP#kBs/ɮ@h[ Co!<]T fWߏ.>:S|g,VۻaWb80re(>u?8`Gه+t#A\5"ֱ߫Q:78u:<]w?,UFxXN)t:B,Ap>SLױ8g<ֲH%!GCYppign8C-GAT{%},r[3V5Panc?NX'c_~k -Dnh|M#k\6r R7 hX!U\}2T ]S<ѿ™a7|Qđ(BtVBKN0?ȊZ Md]3?<*[x%\PV5,S7vNύP TC;)Kz,OX߲Ò6TλBX?bdփ>F0faf2ücSLPE05ݵRٌ1}x^C8asaD N<<}2ZJbzPG¤f6;),n,F#rN^ }EHg16F}l$"qh@}$uƇ_幎j 7T'M+j)f}pnSo'k:N@4bo6N7JmbRH5Bxkvs٣lvw2Zּ1ue 1x+{x 6R\!0 o! y0F p֎!51ưË`&̈́g k$]VUt*KSy/Ԋ}dH!_~0v\cnFu-RdLJ o`Iyt4*m]t}1 dq HO*dro,?o}dJ'jmfU'1\Q3nVlygGb7.kΜ$;poRrA9wUyx_AhR&<^RJSUZ$Bn>+Rj0}϶ tQ Kg㘰BS1,oa*XdE&N@8Ap"ui~;z~iq`\r5?d>zS;/S)I<%x<`ђ 2/^s$";t_`OXs2 {@?:R@C+vq'%Ol <ֲ!@"@WxnAi)PL7Mz&7; , .շ:A[DUtf{g\LCh'P+iY{!Z Ppmym>H;{ zg )!o>XRmcMљ3yA9(u2g?AF:# +Q7|C%=;~A: '{mEfb6^%7i:&K hm5C+ QPN}ʷ=|H(X7P xpcL ,xiQgȏkQv곚;_3j qҷ {Q{uv% PF$]ŋswA8g\!0?A9RI `4>nX&)oW6%雯 GH>fX[x~ϓ^nRנ6R)ŹU4H+Q$=GL7hd?B=r w |谟MdO}i4BQY`fdKJ?B&}-{y>'ʩjN@(!=Yх RL:U)/ 11 c1Y' @;-.6tmqe.z0 @ioĨ[+bv ')HGY`N)\{zۊǣȲFB:&=T1IAg}c8Ӟ~Xwz#6rG'YAtitg'X* ɞ04yr–Gа2<RhS ]}7IC,bBSGo.<{>iZ\~a;qkƖVNRQzH!1]OaB t8pŋz Ws*콬nh+HX}%Oㄖ}dO&޳RQ͞zFR VSG)B>I?>Y/Jiţ1i>nNԢܮ)On}cطkU ~zA cWS6ܲx ,hKS 2[<"0Ggt-y@$˴KxjaHA}3[ԣZU,Nɻ6G;axeD 1F/cUZ;L06ٛ{EȚx#mےbg'tw4=ܩn䣼 mΞ₡ ac'M4(AP?b!c2ΰ4D"u_)> 'y+ 3c{tg='r r~ a+: ,#K}&(?Rf=ʯ=gwB[$̍[9F I؅d'RdGT8I;.a##~;\9:$x6Kh9߯AV7w=OF/M(2^ݬz߮5jᾔE.AetshqJ녯M!y`gU:W*ַڃ x|?,©0D1М2˙)WE/O 1852i/Uݢ"),B86yǠU|sA|M)qr;]1ak,w)0x,M8ɛWn7,aGkkz_lF+"ݩ UҟʚMSq&c-oJ`¸9:>kߵ:rM?P^lD &nɂb{5ZMqX|? 1R^ҹmbX.OXJfw"0W1I+\(@=pe |qCEw!'s BIk*VL!/2uֿ/F]~ʴ#Yia˿;Y+VYfR@Q G}uxtaQEe"J /@"jPG=@5(om!Zy ,-/)u?V쥠SY,=o쯤arTBg@lR`0sh0dtW/w|ua/Z# ŸE8vύwy|ƿa Ex 5mR#3ʇy[g(˓'@cOx*{vq槿{;e "%օiJ|2͉_UѲ 3^ƴ9Q18z.7b{"EWw=RK{V!"K1Ő Sw-'Knr)0qrYz``q'+dsoa!1 fĜn/_^a@T&N/KpnB%ق4=,mϓ|НdŒe }=J\6Ddn'n ~;28_d5R)eAB[\B8SDx*…Z& 1}q%2*^nre5dV渂x9Dz090 =@EmǯӌѢMtX Q~MSd4~̾׋O)F %_}3WZR5%$ %p[l^E/_=w:- gf-v)kkl{+B*yvG4SKOCK8nҤ%J/[Q ÓvMQ- C({X2ܝ;tQSkJo[ى0bǜNY|lWawh0V67I`ſcڞBX.Eг"z\(NP-ot>51Ìُ9P^FJg۞yg5=lIAMN{~^frC(YmaA2b SeV?4 =gzCK&@%2ٿڏ|cD>qڤ>cle5[5 л`G AwB;3<)y|{5F'i8`#uq搜𣄙Crsy䱰n?XV3',rg|R\x ,aCU m~2? 7-BuZSʗJ^GSe'ȃ_Z9lNs!l{Ayǿ}@įa#\%eZQȼ߫7JD豳՗EJնmdK+l-_xS' L]LQ"],:5pW3kd@x7yBPUvm؄FSbo`;F`d?؋ ac=gRg ON? !,ws ^ҳ?qz6 z%nqb ۞_*Z) xrjprpeh,>~37fZ/)/9-07i-ih& ]CY`LF*` t֦r4 Rˍ3@WDQtS{U^x?Iݖ31ZXHbE<@N} Ğl6(of]TUe\;Wp\M4 Зވ%/`eMxFz?zwf}Q߉L|e }NYz:yT3ϒt*K/gyBM^uXLqnznEk"vElc1R߲Zq[ "G?(VwxkN:QX!#kn¦dAn ɳ /*M]o䫞oj+(Qu giA- s Ш6XZ+OaQ%6qܸt,u D mc^fR;r8{_U/lev%1/Dx2J'^`Re2 $n΍.;2&S.gW}ycLYCoG"dPA6-kO)-tGT:;apI6VU%7_}:ט2qDZ@*جoX:mA3he J.waU+ODŽCd|X@ ȱV??DSuvTb>^Mb vQ%^0N YD`X/[sc94l`oZ<0V,2Q3i+63=k p3jXZ~ЙJӘ2 ~;WX{Gai|>ɮE Hma0EC&LohQ1+ӄO1G^&?g!ҙȎRp_$+nS)ETũFqۦOr2@73VYx b/k&rN"n*Y:rꅮզʖ',<ObGStTKA~rN)!L7vC[ވ h(RbNZP0ńtq^ @n^V ԋ"27@|nOtRb/EdvzK'5bggynRöKw<>dq)Q oРJIN۽fR4(ǠOvqܧA q3H `jR&|BJYs%8~cL|x^iNTXZځWkhNo|ֵA޷gTIB~Xb!#hE W^?V#sZ iƒeƯ. Xj.Jfq~wIQ7dϵGzʍ19mձfV+->w3D'"/BDO좺ڴnjvPFOŌ#l =c:^I2*(Vn6_0,SҤc7kj*uZes1 ɒEoTՏGEe% 3xYgL(:ðSОMб( 9} 6QvDz0Vt7.63w&_X^`s!Rۙ {ЊY :9lʎGu|/P,x\Ua.{B$m Gݹ2`gz,6!O_C.`&ɽg,]x[`&6 :e Ԇػg^|!kŊhy0Ǥ.n3` Wz927t).4K'ܟmAҲo=N j瘟}yL*@l4S: ,c\V)Hx)ێ2[TZr <d}=0 Aߙ,Ir`|%W8WW"{xzPYgy!ȐtB,?ޱ{+Rvs,~LX"|5Ohj^8^YX^R5k&O˱~ V>0GYWC㔙w}bCz:VxEmd_Unh*ug%,{ Ҭ`LZzqԲR%oSwŨAū܂/"ﱴÈ.DŽR!ʨYI0anS0L4i-p/8A֨&āߗfRĐnta4l΃Fd/>N2Ii RxCXжީPjƠ{K9<| ǴCeXi*&7ʐ <% ߘcQ$1\n3>IL> ޤh؇d=LWM1'IFH1OTtN_( *-,jT2 68? \bB#A]aay,DN<AfO[La:iJ2+b-AXJ~0`uy D@N ޢe9e@(gtHp~E_YMR_Wd2~x=~N5וy-?HW[iXu#@XHyo!;9{R8L441ʌEMZ~4T~hZP,8Ds[2Zo (DF֒0=|l]O%җJN[Б"{՝a.Z9qeLu'p_0a#oFRC^JneT(Hs4/!yj:~Wx .+u\vvTˮfR^nnrDW rs  N@rG<'@~&oWOH _a<%u~%&a f(A}DZ[כuda %%=wC| ?5qtuV[Brɻ+S'җuW#atPLri2 4ܯc[11]nrlٌf=3SCؗ1.D ;kh| _=+=s*BU6eL+<`'%IGJeQw^8!)rf#99MY_Ѹ~cRV>)=xL?oyZ CA8udOsŘv|MF\|PCgf4Y? l<+IdWD=V,0SQvZxX=⳼c ^{W\Jk\hUꙨ8VqE\VJKe `IǞaPl<[IwڼjSɏ,!  z sWb g^{0L|G'UPLu^EI DXForC:'KH$n3h3wK;dHh !c! TדZ@9Hÿmi KørZrzV `:){tUgZ8!w]{g߹t7闒W/cOYXXQ븛o >]_ prZz:i8)/q1UV+(Xl\:bJ]FQ&kIK䒹w /?C}!:U6 =sʼ*Y6+}7)4Gf^+j2݊ 9_q$S :TUD~KQ 2)| -f@4umoP gL3zaoqMZ2gΡ}gnj!|4{U /@ G+tFlo w:rZ湆Ɇ>:የ| }ţ}ZWϒPucGtT@Km9h˄ǐC^YoW۷nXDf),X=wcɚKv-sYTՖÇ߿pZ} mOo ypEvv^7^dRP3j:.:=cUuV#2jH{ A=uJ#i)rޚ6ݱ"jh >JlYPؑlj:U[!'M +;ۏ$ãF`A8xpuq?N x}8kN/0m? W! ?S[(`ߞ8:BO&DY{a;be7k;rjEyNZQ.ctN!j+O>׭Vf\=l<=*]Oz vzp:{(&:Vq fA.[+g 䦇2ܖw7Wh,*wg-R4m~ΗdKn4R@WDj^@'+󖆧|=6Љ Z:EuWGzc6G<Ƈ rKHkHbqJϬ+Zpaqx/.1$sNҀd%t-r/&17(-ޗ\tgu|vVJ)BX5W0X _5FA}Iv# *;LcV˨W.nshӲg?h\(| ("Ai`F];['E#{w>}K#l,jf!xlYßW]G .(#A5~=AA.u7A p#JYŠucҠD%2#嵪 /~N \}8~N{NCj.=ZA ~ˋHIU 2 lؐAeYNV)E@@b.ms'!Ptnr͕Z%9+9,"95vwn媤i(DFnPo;zl|LXMCeN M,w+\7Vm#g"{]R$Ciڦ<TՁ8;\'|dKn{q=%Nos.9.<ڷ2ɑWCf\e=(O3lk>7zOBWS>aO }UBF+-,*꛺<qaVUZUeVc"9XWRM.Ϥ2wtE!2}3*mBxArWDk9piU0㏬ u=w [#fq]1y[ֶ;.1q4s905/sm}<7^.sz}H0 0P{1l @w6/h2s7۬0nT]F'ٽ E 1_n-?1o`9 f7 9*gl@&Ks/j9 bT41J35UȤi8 t4( S1x P1_8@靤r+LƻnA)cP X-Iq2[?s +< ](jpR41 .`\JL.Ní!R*nz$<5 aP}>tlՅ1<<|9u ` a S)eb=u5'o%ck/Lm 7jT-R+G]R<&椋޽?F\Lefqf8YDk9T:7(HhlB jK+c$(兄A8>l/olF]= H][\|pц:{gɿ-RE/8b쮞Պ,*WDs>.Ā[2,e%1[цH'uv|$=4l_s-Vxtznk<]KŁ<3n/.<Ȏ,Ӵ>TTYqiw [ ]d驓sɞD=YRI k>yP>G{ )۾\jM^AHNJ޵'6%.r{uF|EzVí#η#T3%>ϛƹ\q m~ -<~+bҗQ7`0^Rw5~hu|- _I ;UW8.Ir@بS[&:5hmh{ʐkbMBJk9ʃꂜ6C,0$isdiҼV,U`B[r0WdmXV_R$gjۘLr_dD1Ms / ⮀ݯѳe6]ʼn`Ry7m sN0"O,C,_FBm9]l;sD8l2XNm~N@P *iii sbJ}l ķ=%bP,-9}j:>3 WU_enZ sm~qk[فp{Ot:n.} L}w"\lP]ݏb9&Z3٧K֞&~MrN֕[+0?~-Aq14މE07vi=^,o~a}ƂP@p[ٕb0r5Z.:IrcAD;˔M˨20䏝_aEn6kRxv?fDG˪SF¡c-W]|iF5g'(QDoM1G$-i/N[{%T 7ԤP+q C*?n\/("J-c`{^ p+Jú+`˅*~FtWI4ƚI*^Aret-0]vʳS#}̞5H5̟ #5z)*nOv%m Y)4WN 4;ApD6t{N) Lv@)^WII<Y:ɱwC!- zYT $.Îv`8kb9cn)NOPZc>0`Q떅6CԶ޽|MqJ2c؁(2h7 0l?LFj@X6-N,n*vJt@;3qXeCCd>yae ]֞s2W]$/DZ{&W ܖ2PH\&0ܟENŌ4b6& kxٴj8?9JU' ]c:}[d)P2:lS߁%Ic㟢.j% pf]1},*A[JpEk\-IJDdbOۦOY?;Jk%37¥OԈ56ذfJWb^o%uE0 2\v)0fc yW?-G F=e4_4?D\+0Y\>f^LC=Ae5e 0׫B'mA kLy4DaOk/BzzvG.*1sT+v?>*vp7i2r'{I)YMӦ#hRFkiB(Q6%Ckû;Ƿ A)b4D=B0C5]QާĈ-K@Z DЊ2#rgG%P}ӿ@F)^5VlT_cH'_ >&,>? \ %dxcoU&1AB^@vzY|uQ*?KNǁu-#/\2s{Tк!AJ VMOgۋL$_JX~Xs9Tq楦7% XE09osE=VID"!!yכֿiH\ZFG Q'NENYx؄0z|ʼGٝ$pnr=SbA "P(›F3jDے/aJ JAfeb8gDꫝVJs^uߑtEOgzUrb icES=wE}Ҟ&h.ȅK"fU_[SnNIgE=K?m,Wz^{:wB5)"k&)zaN6 fMKP-+gQis_K2)ou-3zPiIUӃH̙O5\萅֝ ' wiߎsX((K'&]M/ru˂yPWv]C?,:~ K`p% TD3g[WI +]FlOkwi̻SM[wyu G!xcbMx{.l]'Q?LPֵoT?r}D&??K͋C1N*>i-zmHinwzb#5N֜t0sk9Q^1̒z BcW. V.iF倰Lh7%v$Q&)ϵ%1TĚXڒV!nTSaǑfa&ڸiq4(Udnw2\-HKn]aTw? kWT'61*X(=E).9S%pl ' -X)T5VPfwҦ:ap9>a} Na0ķʲ~߷5 r'P~Ѷ_ј\|+u2@=-ݵ_CsX#!97O~v}Ϸ0O۩u5271;0a\Fre_dqEy$pIx8ͻМ>x> fScʴ\-&M\K][b%kiryH~,V\&j|sOs|#rդaňﶁ7+0OO~gig IFYg2Ma[j2Q48/KT#EFN6zOq:1K#n~7]!JܙkT5+?e>ՑGyS^l0GHz&_f?Ug²mԂsg| o4AõK3%@ tS&yu/}R#rj2,ے%qM14(4}qZks*#Pd9,Bi Gt#$wnoVOltR_ywx5S U{ (4x 0ZKY]oOT7zbvY[M۲F&P2B"7Y!(0〈X~; @ UyDWZlkVi/l{]ۇҖA'C}szSZ<^iZjЅHKjR@-dLO=ũ'yH$ %Ag%-.4 2b"28){=aj  V=T}kh(a4!Qg*VUb珄do2s^i1l}U6 t 7aV:oXLXEUzԼ;3pps_5R-s]l;עBJXJH&j+ o{@uo5LmÔAupw:pH6w^$VpOS? _? 0ND/ p={_*AѴ)lXmE869g+i#=B9v"7މgGpDl4i6Q(Krܩ6%rM{,MpJVsŐdmpl5eim4<6@ye+%f!ͅ󹵝!' [E92m/Ij&Y?Gt!&&?]3]d zzw5%Ɓrm(.wb[݋ْҰT.T%=}{MD$6?-n>XK izJ}٬/C嫐A7UM2yFnȓt0<|,=2/LOt]F'6\6pZIYdz|;|^J6@ )ؔVwƧgtB+F-K.MdqdڄcZ3ݥ)g%xp#U^̻^~imD$"9I#sGh}oMA]˧c#dj(&y-^݁eY)uG*Ƕg!x v]"VI]g硊+1z$<ؠX.t>"=ћ~8Nݐ{Yӑ#ǧ=p+Q)e>flFtwDdth.oqgDr {w Lf$ ]NYS $oaPɬoZ3WCr0s\2ic.^Ex!-OқΉW, 1F䞐PZmɈp \Nx_t |DO<98Px*%=iP1k$e1-}ʪu1 f IpFW ':(@yk @a dNZt^Î6x8"ٖ2os9½}ߣќ)μ7W Bu!)s//ӧYCM]%HqpX^}&8ĵ-LO{V_,~,]Ù-C1B'_d^yަ<رc<lt$+=; b0T[li 6)̯C3L̏P3xZ=A32g:ɏod/<R#Izң$7EYa!q 9z8˳d'a\@Fqӡ;(V~hm\$hZBZUş@첯}$݀59CTOy`+0KYpcAʍY%VشV8qymsk}x(ǽ%*R[*43{Be8 B洉Jnn͸laOpFO TV3ltUCi+1U7p2@-fZIdyx mA(NWH_d#لHFs<’5]sOc9mMWHʈ ?-R3^=]Ӓ-рI@n3,}B.WH_w#g άk6r툺%ݰC6BQ|&Mt`j7EIs_{ĝЋu0vp,~SlUT.k%JH9?Q{sJDKvzLn}i7=l/KyVWJj=Mg(hێ)WbB|An,. V OAvR8ұP%$LJX>[>#8덯*Dgɵlɣ% NUTBus&_ L\y*f9~ǽݕ5slEyeeY6?>9&ڰ߬`@e6ês >J͗A| P%Zgv-%`!e%F4}& BTO( b刿xYZ]BςxMw5yߞ5O;_jx6Jk1I>y՛W*2o7Z;w 7(\3VS67o)g5rò{npK1l1`@}ZC9OEa(>dp,97_̃\u 0dORqGt7 65u ni glkل QI3u!ZΨisAr57ثa fx x8بp>mk{Ly rqMxv̈́_Yzp_Jw0_ ȝqSml㿱X)2&T\8PXhh k?J ή8EYMP6JHhnhuS[dbL!Y|W6b]f%fJ#wLmO& c׊s 0#] gҊL "ꭎPR>K 2#W0v@f֗cDq6m@?' wz ^PRE>i 8T+Alvԯ {=T/n%-"[DJ0( u#-ݹnD##[xKS%{ã(n#+<[BnBs '@G}\_1 pz?!KӜkTT1u M9Ǟrꈧ){!PY :L؀𹒿"V`/+N 7msӍ9VZ;0k& #[CCv=z/yߒ&zZ9I<^K݁CʒXDۍ8#*O/q,GY F3m(:7sr -(cuA׋(ObBB*,4Qv@.5ʏuF2[ɇj_8[x@i^¨i.^;:()8Yb5Yg (TɆO'i\5Xfv}U*V𽑰 0xkmY̽[姡CaL:+]VSecVis&3A|;ᎯJx>ҞRW _.4^2_!Qm1=/T7m?lrs01i`%^9MÌ}$Z+JsAkQ(d@qs.޾ܡT8Fn+eYg3ӴhKю-yfDx c~J$q&C-.A*37lI< Yχ]}N<'!RѲ Nr9bﴓʘ&w@ߤ- $_T3ŔnTZ·a&=P@e@߁qGƀ\bBE htU\H^iRwB,9:a ʰ}2@5X`=c65#+ x=ABv!㈇̕i}#N1+|DB99}³a{D~bBVab=$CueOYϡE )-HMY³2}QJrxiP.ƃo{:~rEѻQ~D7Ye`Ky?2eQdFO]wӔo[յ%O֍.eY-]h3%romdRX=Nr[,i aR8>o[YӖNpɨ1:q^>i S[m{C֗n2|*(ǰ sߟy6Ӝf#sL?3vi͘sHcDJLS..(-ſrSFX^?z><3-[^BF,?jŘÌynj6!0F`aGb:7^g'(:IXP ڊ$ZύUU*&"3_= Җ$sEsh;x~aƉ N7N_ȥ_YY?~eui #V7,Asso9-;JC?xtvZE`m8;lNW|&x=OpZMOw'u?\_^.7Z!,̤5'H½JK`d[(Hk;Ew9҇E7m:)=k3݆;nܞxMǢS[V94[5Q!-c,/XdIlY.ꡧ)|8L  IcE?/D!Dpd]M Ao=P> roc'Og3`#æC\;LŝT*AVӱ"\c6-=?Gd<jBD{9; }=^]뢰K`\=V|p%?S{A|I 2<zL;Ig:39I8K5ZTUck򎱒x&W=|B[=CcU](0tWБ'm\kIziG7}]:*ʘJw:q7VL65Or,޻{@ƦѿBߛ`uJ=7"">pC siΛLS!F}'W|_▆h5^mZE{=fWxdľ67Vۗ]Y+lN3J!VIFMߕnצ6,c:zsƪ=9 *m,׈tP t)pu=*0X]!{4:bB[fwiG-sdmݻg4@#@1fݚ=:詇0 NYۿ?"u~ۉEuʑ/L>N.QYO?p!)Rz^')f3CGM>c >$Ȯ/\#2 K$Qm`u6 6.m y>>#"ڎ 2לL^`;g V=jyαeJgw3bʄ&0So[u\ _ eq>sN$J< Z@v?Ir8|/N*2Pi#6\ctus&GDɕcU6!|j73C6bR@&~F7gS_ a0 .)MnԇRWHb)6@Oi)ڦm4*~",KLx\q9w‰H&`1ՂFmnQ:VzC%b{0|6g^$s#ì)<(XƷ>>JWBwB~s b|||2-j0H.^W4}ğ?Rd|Lwd$sO\T=}3'M x(b#dɲR _YEmᆪtz?YZ4#%x]'9ào561?m#1iPm @!\秗Bp7ɚw{`ïm},{ 6{8GdxԜ #Sɂs0Y|wVAa ߏ#|w5O4ee7d\"AUVnYzճ m>:J;QL9pA6]K74]|>AGǹ^,ɤE÷N30ao1 ~z :ى{0e-crʂ*ՠANg+bYB{dſ?jT nQ#\憵"7T%EC Lpe:A; Q\]H9?:x&2ǽ0#I7n B$w(c$F)ĵ́{&1 ]u8 [/uӹY'&,z\3Lry6C_?gC3̿#Ao0"gg)}# y{ˈH=(H#w&+ zH=@SI}|ѷGAIeĴiwD#:|2SDHw]Rmhݬ1ǰuqa{*H\EI0Q26S|zh.ǝ 5onO¯yv7|5D`F@3J)|Ah_髰LtVl_G:41Z&X(l W˙xd i ]GLK7>N>z7-Mm_7r)-8'jx_jZH&9*ag`l7qDKEc23TT>m:4JwDKEN98Jl*o)Q$1\m%{J2pl< H2 ""XÑo:>ظHK@c(+zUwx#)Yu+ԀI[]?[~7. J쉉fPH1x0o-ҡ˗҉7^2 A`2宱=۰)+ 6 UψV rE]}9ثx>x̨_鶱ɡ-Q.}ՄF@:(iyfjMx,LeE6*9qʧpp?LΪq*(7+ b+L3#iBq|4V_cWJ &Wآ:~G8FgQT_ X"%Bjֺ}gq=;_u{T?aƜfp޴ܞNl(;7$ ?_a'>!'/pw0?/yٮ vA#ґxf5s2nlCҘvͣ{r/ZS ND&D cTHbЯ$@lNڈ/)k)wjX GmK͎"6PQ9[mf*)M(bzⓉ`*:(O+?K\K%=c‹YN28zKHC< k3]fn+r6򒖶$ʚN5HicGIVkWGa 5;!zI>@sB6}nk; mA9{CWzDmKP1bP0FNb_su~[_1+\رW.u9KoaVGӂj(ຝ| mfy:V@3]#))yt|R3cBt \ҪU0wxt ٣sQLy Yn|+A :̝fZܬ`QSX}d mwџ9X[]RVe~ {Ry.=| u,ȆR]YٻEyW-(7&k;@FlYD{XlEQ=7޻+d]^D}!»S`I(^8]&nƊ 8=l6؝DךUAKw+U^¨%Ϳ=w@^Iv֍E8_ &­_o'ɕ}B~_K;F/|NջʅXqON^ 2Jdik<ǐKmǴ[E0^uMsX Sm=o?%+7%piTq!d>0i|I!Tc[ K> ]kn6nKX}钡Ѥ5AZ<aUm+p{I!6nI@K" ,Tq_(Nt%r |e:6RR#؝]"Y츝c.wtɂO3:1Svd'Wkx"^Iw-WIz˶k3`0PGvHLVR+ZCW㕿M=6M^b3oѶsv>Kl\XMyPuآdzIZM݇j/R 6 )Y[WlzuC*r5|ġxiLtcY|_E >IDwgu5u ݙ"]Wu_D5 TXW=\ 틇)6@Y3G;.xV m-Ʀ< Ҷ vi{Q:gğ"K™H08y a=ZuwI쿨^R5D5g员nY(rK[bS3I[gjϨwD75L9;LhcJ^)k^IcyG&9Hs lf; ^1ւ.‰E;_v_6g؀T.e}أ۫I0kԚBLm~2H"4c^6)2!! 'aLU[&K?rwA =0eqD:}-X4 Bk &l*r gםMy~+c: ;h|_f`ףAe&DbI\PkETxw]f>٩GȆjm̧u 7+Q3Z0n?tze-E‰󱫫SY>3aqѱ 1o8q95i0 ǥR'DpꖳIdk]yI>n bF{W>IZ3|#te~8OJU[_!|)K\d$!6 3@@C< ,Jur#)? {Y^O GA ({fdW+ f zDk1km[wvASU1 B_(%cx5qÕ4Uk!k #>*2KqRU$Z3@[Y%V^eo(о$P&Am`lޤuX+f0qVyߑ䎺Hub~ -9;o$m$'sX@5NDWZ󩻱m UI5t-@,҈EsGeƄqاABp(Sܯ#ZX,y|@)?! ]>H* 8ԼoqŲ%+mAݚ~4]طW1<.jAzWq n|mEq*p4^7v=k~tgp;?jK8" aەQ*h`Y⅔%VrÃNIݖ>4mdOb@am̨?u54NX@i(8gc# =*~9($r_P;N|E>:彩sKPaA_}qϷw_\LA4Dp3űjL0wotX"xLZt`JNޤݶgT5C#N$/t(I+H ?)=,䁀׾[?:f,yt(}-i: <V!,(KHj3GdC\<⼞SJ2\J[].ON։DyS2K:3gǪY=qx!Qc| z-BB16H99*YNV“"g ll{n-FH*5Â0z8ՊpcF^Ď 1̅ >8@WfI;FַTZUyQP?.lX&raxYt5w1c?x߆c;¾|.<%b-&k[։\Mh2r|ixW$!/+g+,d{rj۟'+e!ݬa4 3<Ϝc\^+-Z)>lI\gk!)y g:+m73u9slO1V^ ;Sq~`jŚ98|͋crCnI.U_265f+;$BtU2s t](X*Wy퍏>Ui(ucmXT8I#O{+ve,ʠ3:"dT a[ƛ (p(*ͭcNjHM!Kϓ{_8UIpMcRș 'y=1x[/H"p(G2;NxYbP(2G/68Yݩ57aaF8r$eITp|0~arH^7'!(GרΛԢιRT_o6U(L'˒`f{.,و]W;>c?̹$O'Q!k!:l'*qPa{d/v֪>sxB>Тt>FILڈL< \>KF\Iv5@EO%KBQ,wubߩAnY{}L!>w֘ +~qo>yhٵDð$ɏHM_MXh;;](ijO$5.6k1jb)x`YtHdr#6mҶnޓTMmLSώo35@Ӛݿ:vr!dcE9|O_W5Wifynޝ3u4xb[y<򥉖faˈ*匱у&C@+.ki=I\7^a"]>m#Qw4XΔ# hkn~#z*Ԭ})kUơr6UQ&YGTEva[Juy2>ly-H2W̅nU?$G1K:_XNcҹiys0lO&4甬sR.Yz > k!3"d cVNmWe>h\fB?["Qu~??P.zO#s|iw?8"+!!ɇ${p]O@B CeՏi$[Z[o?H7|c E"TףR7mчqmgt8Q*J9\0 ==|]( :'ʍ>YЩbMC HabI&XlHG9T`X)wfRC5Ǧ"SPWq . 8/;\;YcR2V_+,mAiӤkD@ /. |kSqigaav.(8uLKy$J~]{ ֻ}@0@pj-1Hu~i&g"vP'gW#$-m+ Lixu>֮;ܡ!Y5Y`D @4XavT7 }x(XAZn1> );>nZN1;q1xpwbtډ&ͽ Zu+hUՇ{8eHuioE$у4xTO7{BJꚄ3mSt&~i ]obKbb2BWw.F\8ScȝΑ\O}k(3jrxn$'=[u#¤?F3?[)%Ke'۱7UYYC^66׸Xb3ԷY bng،)2gm4tXbF1>b#j G+d'1f`S޼D]fDyěcT#-r[[08,?eLYs>x.JKBHMͳr`V,wmDQZG%Ba ^{'-dx(S4? e77Ț5w_9Tբ% ʼקp!p?Vj8[qO=8?;ضA;CPpP~$ϡҶ7_Y@cq:JpIj]0t$7F[ a.f<X g8 eAX|;@w`iL{s'P3ʎ\"Q^ $-#28.!EihSXnʤ[/"gP3Hfldz/m$,T*s&Sun)ح-GfbP3;pCuAG|?[.|-fsL{6,zk'8KPJ#^XÑ{]Pզ>%Kz ᾢRFjU6a3!{r_YSע_Ԅļ+R¤i?VU!#?%6G7j;\)ᄏgS+Fz!MRlWj YT]3$Z!=U}N֊BwB0Զh^gr]XL_}mBCtYm2!mH-YARTRqg&LQN_VЦg* VPU3nV?Tas{u'A{}p>TV޽"87oM x+xWÌ $} :{d~G q$DtIS"h3j*Dž%WFw\K'I C_P-R\D% FA.}PK?ڡc vgGDM BZBEםIHܜX0s3Ȁ}6;rm-=c7#|zU ~=+A;,^,q*w(iso@ɠU-xڮ㯴"SeuA0[q`zԅK[%H'~C<&<Z6 |Ot X vqo.2XFsŨ?\]E-\6rvp ci'goAC8\D֔ZKz3$0WV.4L FDg?o=KW{S9) d{@2hf^O_N7,CĪ;11qQ?,l;0w꣺3:^5BظΦX~= q2xrSRӄ\XCutbT_A#+<C]aYyP⇆iy8pLQGR> 6?DG@Hx02+UVFS Cפ_~Yٻ:XtٟGVcGOS#doa-'UZkp \kdpGi$;0q>ӜqrPuUL__'3PIn=nFq]S} =ΤutuT|V?k,8qZ#Pܽ<;L94"I}EM!tfW8 ڻCM+FrC,V,)%d-yYօN)PKXqfzT5K7dI3I QQ&J`jMrXT>xc 1V(pv;Оn$|vTbr6 ^ Ɔ:xz“J-%#C`ۼ~5yJa'Hzn0P4;AEQ# |1)P!< Mu4gKΌ~+ӬmYbe0|^'G% q Q6Uta[oO[kHUiśF"еԑ[E7\+ա,[yiN35Mu+9" RFPli3:,OBILmF"0`}9eb{nzB j-k&R_CηR XPs|"E,C4 <>q-= Z^[B fB-_-Xm jNikuc w <~zJ$RVy,|IWuUMx︦8SS҄X =g2]E{7gߥ{_TPGc:_^k2X$_]mX gMW{*tn f=!ŕFU)m*RAbia+J U f@b=?kqSqٰtv#Kx[%w8ɕ+2zЕ8'֟gQZ#M~/GCݧT㴚m`NGL蠘y͒"C}#GqKGJ,܆(VuV"S`.6{p0Y>Itqħyc|˄!"o8ڲ<uy]:h4Z8pG8f$]:9&$z}+y*==}""#nvCZtFQٌ(e30nr)Y!e'5xY+ @H4 d W{s-NCھ ߦ=`HLMyUchY"uĠgz{<АjdW(Co`F:QB%p'lhzJùZ ;9cswܛ(j)d!~Jݩi3=)L2jvIL9] ;.*V -<*Y6 YDIH ĺp7l_CH&ot]UkWn";v}gS.C ] uz`VIIVd _hM?. `'@F;URĻ1$|ͬFɃ)uOOB${gX9 ;-Y&\ytoH S3" Sڭ{ kwA9kW S\1t J=M1 MlخwJNO FyKNI|NÈb?/x ޅp2<j2v04P/V  ғL6hgx }1O϶d1qu\@9nY;ӈ` K0>!T2ʣ#B1IhCvL1ֽ5/]: HI oÀv+ F øH0en֓|eH jm7Ҷ`H:2f5/$-v~Ld|48Jw7f0灧‹WgI‡@q{;Yڗ!$<Nx_؝#&iTrREN@@`u.@")_Pq C"_*`qP7-] إ.qd,#M mU2֎ '>CL!=1ZOd22IǪps8Cnn卻(T1 ]%WCjŠ&Bڵ'!U Ti1\'[V"Ɩ>=w},u;=9[пQL2);=Ǵ@_&?&PSHȒqgKa0^ą :_p,СscwkjO'/R5$;ٰw_N5ޯ-W "w0.]%o  bgd=3.okoH8R?90;eo2h̀Ej%9(.-%yָq i3tȷhorq we8]oK=Cyea6s(G9Q=KV]wbJEIrxӛ}(1K(y1nEzvU78(VrU`oOY:hkvNElwW07 sa<|zqohcõGu;?Z@%(B})]\rSdZ]6#~۝#v=N{I|v^$C!t uW 8-!:VybT &ۅZj8}qNLQR`@}R+B6wbߡ`a#ՄI:%U;Ώ6Q׊[pfxPr H^zwmd31-Z>UDxrIջ98 7H9VK/klEyr"R5@ "Pf賒wAjN8H);1;rlqgnJ:Z%toR>8dm59nkS4_I* {@Z8U;E88e>?_2 A~h'rW'n=ȶj`?>i9gBӳ.zL+rJ.5zs2y4nuv';\vݮ'L` 9w Fgg˝2nJib^ #QFuIi6A87GZazP XtPgg,UQ2]Og͓wIxZ0\B`hT9loڤJH}vT5՟Y J,eXڗ_#h`~ǍrdDe%F!9{ݔQLg;'闵A>4V&3pzcs@[BCr1m-k3IeP=vB~@G.:`7 6ZrPȟֿ[Oȳ)d~brn3y(uTS56]:-!gV|O9R/3,Uj'\;O~%ɢ h]bXaPY_&9^m!ɨjãiQo2|7xR3Aɀ̿dt}5'9c7H홁st{z=|($ά~^3 ܁JAmQ; \ԞqXfyU˷(anH~/[M@i̱M;/Jh=Z 1ߜs (Q%rypW[GXF/ShEg͊ 9D|[ՍM\^<[*i/bvX_@ޔ,#@kx)D-,o +&~ÓxbP !iKGX&%Hɧ]#KS̢BJy̌?wRߕ ϩj,8BR/kd9==0:jp0cw(Y5Sq^TO eRE 7dBs|=XgS[KՍ %GSMZٗj@$8=5{O*=sx7}nd"Gߕ_\E]WpzFw@WT| O!xw_l""ZǗJMo]*m;fH5j]eҔ@"ajyvx@Dɓ!*oeVF opFc*.}d`tpU11R<o19K#ml ~H(S6;F8uW#ߦr(O=w80@uO( &MIemlz'ĖtʝǴ<4FUy1On~Ds]˥'ވhYf}毌0J4b>Q`Zu>F  is vSWu<6*hnėJG21I L#u; L x^VhwQA͌"E1g eW?TY.hp[2 -i~^K6w_2t 8S9s.S6S> AKS #:(S|AئhaK#-4BC"VڰҒm-D(A I2n74ͧ "b=I~2ۚmv%T; =n5:NI9=`&5}ycph<^S* ȣ aLyഭ %N}SmnwC?6<4f;tbr(BXD#H3{ЗZ8x'4>RGr@e UTNa?f3 oS~F.3/M;(*q47KtӾ&?@.6sc},>we_ 3U/<b 9 0Y2eHy4Re32Zd~5Si@nmzpBe Z|WMn!3d.Z[``W_.["+l/Uz XM zw%2;P E6 ^w[2\cD) svFѸ#zk2O{Rߪ,zgnPCɆwRY<2<&/%aRZBhLFDZ^e𖵔l}.gfzpQv#rWID\<:YBя(`#*3LsΝ,(!}?I~p.EM2 6v.!#GlIͿʊ4}5I\ҞQL&s62 ꫵVFА{[׿dA&pPp' Ɇt1 2hK܉WzȽ+LmփաYCx‚@_*]X1ʁ(UKNHH}VScǀQcJlg1C}Kl;_5;#g~Htը< gē-.h晽UwԈX3pl? ASq-<ЛMrs@&I~Kݨqz"r0n M2Z$4)R4pvk X?%92׶Ehk)nm7inBj2s&8VXwa88i*OVŹ%݃1iD"mDʼnf:׷fwwK3} :z">߶׹ёdlV9ҏ*J4矅&RBڜ1wR[۔ ƠEtk(K/$(';L6Lw&Sx-3RadLO`Ԃ6{0~4ͬi0Mi_+IMRp|9 /ؿjo+C^`Y/{9Jnod)1"#̗:% ֒+ |N>  NG-/GDfAU6 fkgJ]SI1/ɢ8ux/ '}X5w_40VF؈E߷6A3wjtxYm]zLi-Fkg+<ĥW-Ej9^ptoo/BۇßQ]wfd"u~vQb. DfdoA&pc.~+jp٣Nn^jlvU@Iu̗Z2(!BmtY+,B^})^ h6CP`^yã<zRqiNL04"]JRQ Vw-5/Hd]`VY(zZ FgpUy2å4;W"4o 2Mm+1ż\pbٕ1L'rPWTV䙴jD}͔^4SK:ÍT@ּd *;E˜0}Z}cGϰqe#n)]LAsb`3Yc].Op o31g6{߭3VJS""l< O8Ǩ"L+5F:.MYgq ] *iӆ:5h\*$9/;^_(VevvXd~ʌNwFQi=bv] QM+0&pc)~d5U$U@LkFuˇ>.S e޾ ^=8 5wZ"mn?"p6tA;\4 +VbO"z䥪8f;rca}?$Ivi T(0ٜLеU8'r~f9U[R@@E\A~[ QdN+lZ☃X—G&}hc^WwKQ860Z)rj A}i r锫;(4}#G LMlWi.,ߠ$@!x4ęQ]:QTPPAۻ0Md'Hf_?7 VL$L"9C“ Auc#,->!S"pȡygWBUGkq6lF%y +9K*2!\Wuw2bЮ{ L1JPiU9<݉AGiZ}?T՘ {lGo]A. b_}^,ob xyE ae3?)tS<ϡ'zuO`;pOud Ƽ1ܝ7 5G幨nU3|[dО? d*|CnU'xc-aMP~Z$ ~W 9EǪ2MѾs1@X'$^B{zv 6P'dF#VaѴEJ\9 +$iv*$Q 漢rj;`_&X\&/wN  w_kMX0gO Pl+\'cuO_nL^ٛ\O<q܇2?8̕l,&s{HYڈ|Qcؚ/ 8>q%;ݴnm{ٷj^J_B. (r!G)5ykjtJ=dR )Ėq'%B,x b }*c`fd-7kn#FV Z_,#'-^ɉI/,K nV+C/Q`|Y97"S+.-h.#Cu ImLŢلi] XQGv@uPQk@O!`n ؓx3kgnېL5ATISO )̢C" %QUv<':ТjMUu}+[IhŷJ Ӆ8%[QuO& +oX]P+{SW'[b0_+ #H@?2@3: 2`8 IqQܢ]Qk̙:w8'R~eD wdbt]oy?qh<%þ"M c* Yb8DApj2ĐT86Ųag*&Ք`'<˝tt(*z"6JŋTZ:"a1Ț0gПы a(T'RcQd@5Թe<ҵX.)eW )OCfYzMVh5ڳ}E ͖u4( K%`l)ſ!ޅS~q?6mDˀ&ԡ;9! =tCG6FN%(2{,Y_/g试5w]m<; (oɗ47j|q5{z?e)m7q,;UM%+ TVnUn3փ ,FL{:m伫> "UǼCߍlmwtۉ8KQ(W `JNR, )LTcS}at~FTB"_=^ ^9FV֒V8E<\W9|ؘ/%l%d>i~`Z/(@ "^fq?Ȋ'f,تp$愉_g-1> jG ,C{onw{:Jw3 SۜM.׻zsAEpy\vC5R-U%c>ny[X>5pb@-Nv-hݱgxKؓ}^O^%;yn%#tw,k,T2O&]uZc"85$:oC8@wΉ T1 *UD;D9o^!մW/98s߰Y Iw8 ^!:"Zf !8^i% nrgʛMՅ[ ksW>=t]ĉ!v%<wBs:`!gDHzkp?Rx{byZt"-hGNB"V>R}Y|W4ҦH\=đVp ^*>w Uf#MaDA&j FD8sB&9^`A7*:k/9QS"ʨڊmkKҵ H55fe|@}}@cNiBf6Wv!Z Nƌ=@ |X M݋HjRxA0nO֚Yz!b%!LZ"-rzZkq=Iru]6ޟUhŅfa _m!mhV ~bsgi&f5:2`{zӜ~ap=wp9hڰgDNMV:ȉ?LKܩ%a/ګ|c`zCIV-F!+#7){c *v%kc*y"tqNj$N7 bJ98>\O4 y0Q򁭧rӮoDZDLZj>Hw4%vTHhd,v&+<θ=0yL' 1B 7IR`ld vl·Vr(4- EeHL Ƒr;-UO/?sE!Ï J4Nhy9pF,4Q4Z"թwr.H$Z`qe7O5zw-EOQ#G2ӺTP02+8K)fW@ց=H7@QLӐ_FcG64RQjl\3̄JnPF^Y9TM[:Z ͈rzLaڎ#U]`~'|R> 2t!jGa7?׏kNiڊ9KG:笲lL]j^ J~wϐ9޼ -T{& ^YVBɍM52q/Oܷd1Xg44]o]A|!E*cBHaԸ)Fs=ʼn (ric5L83ִ/AnHk~DD VgM>-[&=W=NH5 D8~t)#I떫G%Fԡ$cl=t.[Ysm~ ^oZPJ—j"FB^xA\Xzf'A%Aanj'BXF y'3`;nQ&VS \x N⛻x}0tm+q/H z1JѤi,$E2ClxE}X f&Fo+Xz[Z _3f $Cǯ=X2j0Qŏȉs} XiK5 ঌB.~t @g?~#wG\8%-1Zm']KTp^lhD1;NB*w&I3EO:S0αۋlMty8tzd/s3tU{7/DfmzD:,?r/e 9>#MS6*#ᅝ C,H"m%5@M7mopUo& =iޭ*bAF*5Oj t(7^_78i֙e -lm@Z]\<6F=E6@~7\m Iޖl|圮#Y)<f~мa=É8Za9n55LE2M?:rH  2C$?:(Z-B_ZlP@r H(AJCR' uKFH3%m (x&)<xtuѵkVql!Z{X.RS(vFk][='KYcK{N8¬EW++z˵5 f]gZ,5{mC7qͭEx@ *aO=->* MbI7ȓ:mj s+蘆#h>ˊ"7 SpV%dn3%Jxܞ}הXktN4ԑj D͐Z0ʥ ŐC@bM) $FX6t짣Eu:g JL4+͢#ާ!fFP3.?, [IiK /LEK/V[%bMwWȈaS1T<r#ҝԞ^e,nVSV>P/8^Jۻ%O(5 uG91إqRg:/J,ںQ ԽFrmyhJ'-=:a+Y y՝QDgrFϳ־.q4_!9ZtL+pjqĮ==ط‰)L;<&GXyOC%DB) d/GE{uD*KƨAQK8|} w=Y7b{1 vRnN&A}B^AXbqCX6 krn. &f7 ?wm!oC:|z*E2agTr&\)9%$RcT|u͒ I@.3XۉC & |?BZ$e9ȟIG+%F 66`Ufx'[׶(}d=x>/n'P7*ѿm֏G.\<mB7֕h4c$ۨˑ#}@ܒ3~7&zuy?fZ'|C[ys0uvH>NG08Y f^IN(s%`^jn4󭕓a%T"a۟gÈR5`*ʚ&X"p^sf9Mؾ+ oA8tܠjySg/,<4*(Wl+'{'~ԦRetI` 'HJc7py؂Se6 =֢;'(( Ӣq kLc2.6Lչ:=Jʜ)\=ZN] p";\ !ZOӄe%2l&Ax=7[E`J 07s Tio/*5O.wy$`jK"wCOQ]ħ\L<2/W> yKC1;رt_oOHk*0QbԆ0d ?؟:'xMLݬРN͊s84yN̐6 rFפ7g&d^C~nzS|K&HxfU4In*V諓nek=-> 40HQD&Wѱhq*F0pnߠ9=#Zsd|"gV箦\FPȌ0Ժvwx-lI,4]D-ʷk͇:,+FiR,p!Aoi$g <9z+O_*3 8%tC>ćH\}=)*rrLdeD-ߐL1IXD%Bz̝LYl5PaIUTŧ! ˸|"sᇚ1l SXzB(!q Ѵ 2Tʞ!l׈aYfr"6o-j\&Z6XH1"jDE6MJ:>F}fiYSXި;zq14oIuTLʰMDUaQlՆ'b7: 諡u+DW+2MN&k(L4W%A5VQ<=,m.lp\XsBЌvr4:$lTkT6 +[_ipFy |zjT}zYuTL{Pzh4Z&BN NTH m"f|o Wj2qw{p>ۘu$%~3*J FokO:3L_Cp'YY# >ӈCt$h׋M-]rj0 ^*9K[LCցsEuf!@+3͒*g{/(_Qo.[;*kQ&+Mtf/b5WoVo/R.ib*8iC10aKWiF!v!97,qCsyKDuvuѯ57oِx;j=罾"-]Xĭ$<9O!?uOhͿaE0kPcjtc:zm *ئ #$eЋ:3'*rHaHq5!.C1~JRQohM#XچKhD݊%Pq񁥍 C8*fofӅb+I Lu(Ga}, oU]~m3{o;ƞgi,N:D k,m& J0b>!!, <<8Es Va ?tQԳ*Td[hs?Yy)J|< 3Ŭh}' 56'Bn4LXC9(^(Ul6Ut˗B.`~.l+8*~ۥr> gBobI~Փ)NuK(aIYZ8O]PGBxՂ/t e~3O<0=yL7Zk~LzPPK 7) Sd9fusZ%&gNF6psŬv9Nq}tM7اm8`;Fdj g#;vf<-]6/6]Ѵ{tj:熍|=" *2 KX]/#uy\hQBOv(cy ǧ>,٥ lM*@& HO+~if/LvFB°ʙ\aN65K! E:xK~X SzB chR^~~a%({\?pM'16$ M;,(IϪM rdB[m x;kDȻZi(.?O\E.ci\U˹=/BTN-? NWQDg0cw`VW*U8#)͉cL #.R|m܍@šR(ʰ<- n9jcO9< `Kf&CPZ@.^ҷ|x]bhuSc>]TPhDe­LrGx/;x 8fS܄#ikq.'aZ&RkzNG;oj _׳ dYH!{ Mt⻲|Z^|b^|J$ݕdX KȺsƕQ*$E*KT`@<=^8{ab眚LTDwId`b WgŤq/0I;ML{ NtAOsژ1|K$dk)vM0$p1ʻi2XyYS^x$;_*HHWp74?IO{0sGpBwel>M$SOHeP>wsU=;Ǟ&ު55x ,T(h,h uL*xxa#phTxvQڟw9Xhy6tޔZ8XmaFd״:"w"`tg"Z5Ԧ|qVt_1JayL1xQVzOeF l bn1 mVƉ~cyNdgr ݜ~0,Y%zv/ܭ;;vIpA&&,d#/ؐ\Xj%Դ=Ik78ҍ剨G Wm_!@\U6ҚCOd/Zn0-B# H-=H$9deTfک/h`[8Ӿ̈́[jWDH .=㨪䯚b%ϑQ'[-x&ŢgcCly'Mk\7@٤ZɪC,w;5],YhbBe "0W뮑^4[hފ4K=`ψpM;f) 5+\h %+Șʳj`W.JQl4U/p=. طϬokkJ¶5,1609{ gNQ6qU*9=C3XSn0gf6P9YXP.8 M-ˑNQL8~3vz8AOLxإO|T ;L6Mv%T1m:f֌zxckOߢl:.B9g 4a'/Jqĕj4tuJSc`DN;e tg9!$ 9]C99QCR[28KdEX窷^)EY{T6X%J+<RW8C+G"Eq#Ȑv`h3#ث!rKgl&94";Am~H OqTun?g)eeJu2n w &4@0s<ңe*焸x67M; ;Ѧ2b͊tC 8< P?]ǣ}ъcBsbo-2˴]#zR+u4Tu/Uq8:_[x~{7ر[K(8AFPX'^/ݧ<14~1ðuVJniP%h6(YcSe|uG"{l #s+z5 8M߬m8!U9*7ͩO8yZH?{RZ N KtŊ+0r^<SrnU*"x!jdf"KDGs:aQ RK $;]=r?W=/@6)ؒ$kI!6]l1!¬ @@-OJ*W`K1 u%jhT{y':l-M *4uАT!'E,Mfď2vIJI{⇝{4Tg}r4h" MOuk)3=6\!_UBtM j&r"Op U”A9<;6z8`c[y7BNrƃsg=1f{#@)oHMQ˨(QHܟI^ jtV.m{rE]/jFPZY+?>MoR.`G1_$w:Dw,{ z6N9&w F4֣bƎZ? ޺ʤfcҴsU7`J'Ĭϒ/,qd[E8yp*[ *諳.S,6ڍ [B/:co7e3[/^7IR"jsH 픧ӌ<[â57"=RK]R:Vkޖk1) bHEY&/h\y3 Wa SSж''rp$뼂|vԤ&u_!B3^DR3;^EtԚ] ݿ:k@O~şO9r;=>Xݭw@Am$7BCxҼ,BM(cf6l\ yAŽOCRúh:4sB8l-Mzn Qx;W%jJF 0@y'1(:KHJ&t Os(Cۊv,oiSLw2"Xbaef WD1U4xeZ$'6Y[[M.׽6r [7ޕQv2@ι/?69>(ZttH)`>sf0wt2StmLxw.i p]CqBx QEr~":qmK Y~D>lN2oˢUE Xjk0}OU Ku3ihҥ#CeI{Y/.Ł ]$QWqb=#,A\MB`0iPkJMwjYZ5@+"8wc_րM ty gwN~5 BRP8#o D!7N9v%ÅCB >f+!3+C+vDm!>36۽ FAl|A&es}ܖ,0:}Ĵbn$vҙ{<%~s}'n6iP5d,MRQVϹr"Gha&IavV ZQ|WAm0&ӷU^[썢x/=ny:DQqt(sKC<` fj]Y WȩF\7Er,yW2%U&_ؖ߱iY'ٌsNvB^}*#X/\'6Ҍ :m5 ym9y#*QeybYzdυ/Hէ1]_|(D5+atB'x삻ONwT[!oiI84cP[HaM0ӣ|#ƸF6[_jtManBG 1R%Uu rOCj)TP9CH6ٽ#~!K)@A`c5~ z9H'0;0,LmCiXv pU=NHIEm\Sh?2Lý%]ȓTLK50$<$bUG2!#6N6tIJ!ӀH7gB1F:03:x^V]M(BȚfR+;,I&7R%cPK5pOa&;8jn ͔PxC~~`JnXgGm:֐GwK7["ud Ԝp?eӆ%y.?fiC痚ZI<7&.%26Uy$#8y /ESv$ʁ~c6ujʜqbkKZĝ,ِjQVUw옷scOTAWTC!3~O!ڶj[Ycs50@/!$9[FOj#8Cq4P씳T₃cx@}K聴&T4dlu\HdMaGf6DIo]nhKJ 1y-Ζq=r3 O r*>왹]oz"q:o\b4pƬv0fGL,rqp}?XADhҌҾ,E8n3guI r]uwD!R lr7oE~]*Dҳ> ~x{n_9 6+}) |9:ऴn@hp>'uĴ/ ğ3%x2@EiɻH Х*{kdSbG)<$*w/nEcoňj?vچ;qD @itр|%?:TMy<%{f@x=r񋥒n3!AyG6w=hpER;ITmrqKX98NqA([n H0sSz fx -/ X0do]s KmF]B4fKcG8mV\;K昑*qÑ܎@aDZ6n&%g$APZe8'f06\(gKd٧iko`fèַ+KJپ'n/Ŝ9dwE/?{^ُGcx.f0ye*f7j+5رQlB/BZ:'KD=8kwH4&+AI6m{aE`lA?f@-!s?Fx%hI_"m3n-n""G58_kQ?:넂`M]1Q"Xti(`uƏ5v0}n R~D%,g@,,Cy=M~`x <(݁UO( D Uh =*l(㧄{CCTrC@bO0LLjUV? @2g᷄%@*gXuo4K ` ջ|a`<O݄BraY #&&D(0%i-9אo(k뎘X (!wظ>VM.?J~|g,^>p$ߌS ᦟ)[N@'w 'iV~{&Ak_\&wswWo>=, 8jf{VguBty#g*ܛAh~uSr]*o3/~4vCCN:^S toe$u"=H(az :A?xvncC)N2 V(?\^J\pao|owzᆴSKEuM(p+/4;'׹A'zmv"(xN 5`-߷K!<'zGP&-GK'&0$iDhŷ|3Knk\f@>J_5#Oyes4sŠBlB*lm݀[e*-JEtO{K.O.rH:{ϻ$B[ߤ\ö؋o2_$ua#`|~aP3Ct9Y̡$MVK&ژ /=&ҏJ#}veQ@^a)-8Dz9  ˅hu۳t cW'@jg\"c<-HaY D/gvt&X|=[1/B!ьeR^@J$XBYtX0XGB0ˣlUf&z]9FXѢJ `B>->vSz9U9ubF.r+5&AM39x)V&,cr?@?θwo٫Lj ){.f1V+VXJ`IqInu)D۫]I$Z#u ' $%!V} ˤ* hU+@+} [x-)rύl ? 'Ej.8Qlۣ@pnr䳹3 sL߫>cٍF+K~dE<_3ʁ)C}3[ ?4I^Gz׼Nui|$,EWF^_ժ"ʽb} 14!e\r"ap<>J>QS4Q11^+>*y*, 2h<[Q`( m~Ht!F(Z )iϟ)p+9ԥً)Iuvy: [sD/I?a;VeSnHKQf!,]PWz6ػl apC`$TKgavnA(8/z] vwv#ñZs?C)A7,v%Sihiϴx9 ; UFfkô0@9\T f|"KD1Qh[)^yrUxm9LAB |wBDcޣv4Ue. @(ied qK\Ur!apwuCyauqc$B8jAQ(ʐ nXJSzI6рm8-2f^s*l0si$U栳Lm8c/vE;o1f0T֪[\ иO3#ס0o6}  PLfGK?#ʸ 72rS ̼gS`:aƱ؉ʹ׽n+a]* %73ă.NE#эEB;Hz4hs7RH0'X#!g+i &Rc" _Xg+{X,h`W'1?<.R'N?`_鷺Ԧa:崆V&qOe ]Lӂˋ\~'轞*W8o6VM~2; |;nJbZ>"o:s ,;U`]!w0a$ H2rtg^V nu]5 UƧVqG p=VL5Xa 4$~:EAmG;SY5{i+6RPX7dPr/S1tnwä.@Bn< WءiEnOn*'PЌyZ'em&V!U}ꏎ fœ1A UMʉO2su ])Y$URШdvH',`Y Lx|yM緙 (ظűj >PKJ EUQk- >B!13L}?|nwY 8BQXigv,㸮Ԭ9Yf8ǂqgc"F^AyͽHgR[oi}al:8Ta;c0/Qt`d1Nl"}߽.`1WuCF{)G6ؕir0pe MD:>e\.JIɉ D_p.᮶ct@$WTWKre ˸!}*MאNn}*[=?*0j waoU+ǟQA{5g554BV|Zl?Mc&vɶX6ds2՘hnʛeo+{r湶7p 9-=y!tPv SֿJ^mG:1߾~eMNwnj-ꌳMyX[sx (joo;f9E ǹuΣ/egЀO(\Z5gS=5 D1633)L${?j8G8^2oX$xŲZCYhJ+ 8 8Fe~4a;T֚Gʫ>/+pgChaEOq 'Δ0K.=udI^#kĬ6}piDKbu]gB57zh hil2ض?P)I)&O5 F(ßMI9UH6Mw"^yKb'P{gaW]?nrWx!執$oiƵxrGtΤmż ?m1V2PWV1>T<+WEWS̐2\ -F&0 )6jB(u=Ȭ *kƥfQÇ G  82֙~147AKf%ڨ?K?;5BTKa4n9͊'J"Gʥn2n' 9,G/yQRXF88$0^Ǟ)^ Fկ͌|n 5;2f_t"+a.OqT[g.#,)y!zsgÒ&ZEP @UbEVUB)l]  /-QSK9PsVWAPפ6r i2RaAAEw!Iqr$ UiON@7SqD:`w3&#ts E] iZ8ް9E1$/$;>.߉Ԡ7Xm6C)^OHXj5ωV~ MxX.Ip2Eݬ Uw(AAQz:l^4Fty~UuQ` ͥoT{BT ۆa\K wCJRhaPBˮO=ZBXݯ*A,sd^ک'V1Zy%g1h}ڣIc aMYT"$#j[d;اӶ ԕ?OL.ONT[R%CyH{ ʣs5+( .S/~dm zH*#dJ;OX_p t_unBwkQM)վQ-G`qRiMy=Mm*@DYH7 ga]N%V /ȷ6tvʠ*o{P&qYFA- 7"rQɇ栒B/bh$tZ"1c wL9<\7֍nٹM1Ha#_'t Ҩ`Yl1\Pt>wZ^ޯZdh5qyM6Q MjNzsA #`۩jR#"n?K7Du 8`ע;X00I=hpCs'AڭHj7Fyzn:$[(F[t44<_ʅ5Y$A|c&~%(dhP_0'?.V.`pKQg:--$QCGd&W9ok%Fo4&@"xoWܳմ^l1X=T-šZm&_p֙ ;",9TьaߺR Ma6RJZ|tWILmY*]U1{-_egR3AfMS-t́)ꢘs7"b(H1!bʱMns-Z1Opbxh=3 sW`E(DS'&E>$Q0jwFV|7fNA.U/];ȸh2Mu>3ؿ7W5BTtz PO߫ 1Ig(Ԧ ňhpSNy[ssSԄbw鏷aˁ~++ ?e$`5 5Qg6K'a3a#,`FTZKc,U911ickdz@+YٻMCR2/ ~:irM@1Cq0\~.z࣪2;=d!&(aRE&1H>oFٽK@j%e]ye ,ҥW]>\&}~0ҝêN(zY b'V ޜF^+9i a~f0l-u`U O ʃ=(,ڹ9Mݩ^lʞ!'1ٕH.D}3UИp}(&a8vDXq(ޥFnԹaTqTS]<Rӧp7-Dsj"t=T3^Y|CopF+(f 0gf> pwnR"AO̼;^nPz Ygi#^+Ԩei@pQc-ay:0LwR } TiJN4U-I_ɼyD/eٔ^"9sC"mex8FRѲџ$e:?2|+wq<(/)ɑT#9C={o_=ּ ,M€^~?Pbwp)0Č0@n ܏-dXA0pk'K{6YWBjE^dr6,TBx|; Ӽ;Л9H.[ Ϝ@RC~.ZLڍFuڲ(jizo7Y)ЗP(qH1DOHkG`Ȅ=h'(Ag(LvOaܖ?aYkq&ńA1ȳzQSYkz~}Vb%FNǰ}XxcH-m!19N*9'(륊ss]@BnuJRWV*ºd1:/B `C7-?XOk\YtBsQhͷG9( zu-9ġ#$8虔sA6(rg_y;"8^~n7dt"3;G5.-J4hRxC7IUl&`ߨZ3BH1:ouhZh>Vs|hI /s83@0gޜT f4r Ⱥ~N%b#V5_/B2)p;!(:kde/lFXoyxg[xvXt\mAjӶ/C&&;ŧhqi,:ղ(od4?]%UeUd뮾7CG9eLh\Y{R{jc ('|!ixSI{G2s!MjԦg织T|we搃(L$8x;[)sl{\)sj#S.Th 3lѻ Z[D=N<'j#Rz BڍsoGN+ұ|It~/*2y]s$Rc#3E+@T b" aE'+4 r'}䣇ڂKB4۽SD&JeƁ]Ѡ]ulׯ cYTtqk3M0IX[+H3IN-@b?Xkpx5W=Kuh>ܨk'\feaRTPHE-O0;"3l0{o QllBEiz ĘbHVNF XL74(WMtoJ ugGy#L[Mj-$[Efqx,#!틇34@{@*`R*b]16 `:^nDh6˅Y2BO2)sz*zZKRk=&} O4˰9M{͓u4D\_j-k;;^/~?HO(jLKmG$ZY5UK$d%\6O Nt@WVaE6aQA}$13S .h~3PϒJ xYd,:b5 ;uHjeZ2ש/"i2i o)I=G|AX4t X-CT4t%+h:`o%(nږ_x^" K|?5E|h6 /b+73:^ou3y7FowT 52lb)t߰eb\Cي8ъTd[p%gK2T>XtGJ= o1ϒheX\2{_"0ŅRMV"[nf'QGB̓"ɣxcv,0߷ G5k ԔK3U*ƗbtΒW"Cw`G!箂 nQpO%)d0-qw!>I( b!ڻؒ_J tsIn xdb<؄ $ӟxRcA|۹0VD1O~ ˂Bky>Cm# Uf[p@@v-,ɐcLn59A Vwx@>;7]Ha_NK9.oSϠ ;~'FdK0rj_:l 9Y%7Zc }o ! jՓ ]-5EzІE)S%|Z垤68μܶBW^NX[u࠿L> GWҐng 8<3@;/h@YomBY0a? +P:5q:+T;ӎ@\2=mrB71]I mClqaB):)*yc-]Խ,X, +۠qTl:SL(2n&gҰB|OZzmG43)e][0GS_ζEB\Y b= (mprg&z.F{x:༳CL5h$)W7Esrr!u9:I]u$ElP]w%)ee^p擵lb:]8, :GbY]d`lC4;A_61LL~|+ⓘyzw0 Jc}!(#bN=HmQ}⶘GK)b)e%Ф^&-˨J 9˂DE"/M|v7q,[߿dNbRdu7Q.vF_w6O݀di%Vm?"ed=vtb^eq|[n|s~9 QҐRRҭ0yf:qUM=ijQǎ$]M7S/(V 81M!Foo՘?L`ݦVܾ67hsZdq=q>0|HK˕v +\0W]yy2`3hM;9F_8,uv79,,8yEBU9|O@|SǼR_f_E<FO;LU[kDѪpy2Tܛy>_qa 7R/$/WwLIhN! b7癸Y%B:5?ͣL' 3w#BCMa:ژ)[}ZCUU〬6LymT8ZD/f%Hfc=S"je GrH2㓨w¬Nd[$,8=;ɷ2ؤީf}p6#!dOԜƲSӁ$cL/Y[+g^-N[s6ۭ} .wdʏPxk 49TOA+,ԭ6/F??G"zۼAbxw固=C&]bwVvb>4~X sr?(̵ E-0>m%xL;ڇn7Ũ+|NO.N1`+7%6iӈ=(l:K ƅ3YΊx}GրNoi1 /'q@p|gd*bղ MII>) Z xKͲ1#r 8fu2 紪<: Eى#s,\G#@VF Bt*/>2ZΤO|@/dɌlT!9"Ͽe.ol+ KWk~C|")k25#Z 1j]H2w5x EZv H2\w;S!L$;e3_T>k^[kT(~ܸtDi9;>O_Ji{s{[=Uʰ#6y@?>.]Wka{zL4B;e9n n,HLDm3Y*pz.tܡbM]eM;٭X~t4{Ĵ-z|xm%,5sW QQ.CJjas-<8K`&jSA`7k䳄ʜNU}#5,|a*y"RUKSzy5IMgz%I E%#+^wrN <1JH )X W7WPeΖ$܂|:ZbX~|g¬xaQnY1Ŷ@~>Z P->$D:2{ KV}_l}\; Nyh&l$`ؓ]xp,`"M'xETlND?m%F] VKwv ?$1%{Legb΄q_c< aDO[C WvȃlzcnQZ`;E[iA$EWLgbIƿm"C]ͶH+z8_j<7 HÚh M2kݥ|!~23 WZ.Mo~a>z ;dZ+e.O2 $|i:[p~KB>;VŪZ^|N<; f6)Ms{C+d ?WLJ9+B(!s(.'94L5k`8m֜8?ts S%N"M2U:wi w[^./ EJ ,(:wk? % :I/6QD&#iW2ggE.F}_mǓɺܔ*b&o@9:csD Q S|*}H)Iipi{5fH m5ӽ̶J7ib1 xA@U\? maѪTN'gmD̓d?5:UݑȦdw.ġlYЯM{q{@,jhC`;Ó&R^_o-} 7z*M stn^D!zX m4zc,~4h0#u/E'iύ jDA pcj4h"fm ?]1>vZYZp."pWz ЗZq󅬛bR,H 40`ry"Ī<:^-JI"VlLshdsȳvcIUzY$VhEE.h5IdLxQjVZp xq8hÿbՅG4u%EC|,Cs'Msi#ݵglx*þov h֘)[?nŮ Bvk)^6$x?QH5ŎV!)7͉}Xn/nmihi'.L36\I5g[w^d ߓGcIKf2-Հs9U@Z H4C0Jsk]I5\,cge gL0SMDy_C}C/taES[ON%WI`#*"|g+cٮr1*!i}ʲڇ+5/&FБZ@"6Ê222!f_ZR1mAYjqn`/DuKv3Lg.&jٹ˖)Vv_ImËnx-ʩrW j0_i.w蓵?[iw ^}js?.,,aT@;Ur_)@iU`V@i΢\L&Cz|ďsb+@wJDwE^#P"kԜZB[XQ>Lawql+@n> U {؞+)16SGvI ,p6FNU^ߚmjOrV8" BPM2_M4, {ް *6XK,!}jǃ)NT B ^p,DTgx;Wu\~K#"mO - Ƽڴ8{ V]3[yK~?6l mjښk M.%aimpd\VSy7>`(zr;es꺡,P=/Loϼ䟨8 } OB 0i2e!~8T4~pǀ6\6A/^"#`_jIiKyT9.b瑿H7r͠*&7vݚLx7[KOxWy3T`!oQ|8<Z?zȨ Tԟcn6DD~Pn@"P`w|mZiupEg( -YoٙUk{To֣ XuxjDW*̇dUc!dWY̳9gϋFb|>'` s?C?Տ1M!HdO2fRvqm+.Qy)πڈ=GQbAgI*;R5*6IsaKԋhө͸-{ 0HMo߉%%8˜eln’c٥feKS2Y xyYX͘۴^NH`Id06c~eTWƋ%Q}0"[dAj R=NdqPPUu*J, yDQ]_-$l~sHռ?CE5R@&ٸ{筩e'iN!m8_%q';6PΝfV~vi (6I*A1 됚J+^%3gDIqͨ$I"/f0_c*Y|uٔt**Do T:/ED) | zI˷)Cu'Lbma`VW^m8?tDMmpV؇OŎY0D 1¹T0y6ӋarӀlBd]QA9yc-c|kd~(Ks;u/R8T}4+..x}9Oxj.A0&cńM=zMzg*Ϩ~_8oqAVZ`ku#ڼ^%psyzxh5N ?3Ry5wEhXB/;_O{oM9bAA6)މmU=醝L҉V%ޣ4Əywm]A]: % n#3l:%OVnFèAl ;VNQPII/*;<+t(hK&y(Wҕ]J렋SO}Oϲj -O)99oow-ձ 2Pv X@t*gf77ed#]?Lm[/94PNw{y91_x 4ӫ/W!̵$"A0lսw=` {l J# 4_G܂_1Z'Aě.LDna@RK~G홠܊CɌD1HofB2Jk _<{ *AIH]N: bE*T8Sa#IGVV (8$2Iҍ,+o8<1Sl=$VAUx"93`A֩Ǡ!*G`evpm`kËDpu nXsTg\=??8O>xcvS^"M*o}r}CDu ?䥁ZAÌ @fQ-J[`!Ы~bSwPDX^,6z+lIӲƯfau{ zSy)`oq@S=-7Zڷ<] Js`B9*fnyՒ M7#<"06i0K.($D31ۛA!Ӷƺ,3 vw2KsaUw|!4_$ppvĎYABBr4/1fsҼ~tLvA/MV@z` o =Т `| rC*2O;]m@<ǧ,6;CkvH~9؄YZKY_?!k6ҰVqiɩ7Hx]LD!yknM+|F1gbbv~^k]E(īEn!pU:w$ڄvZZ!ySϨL952νL5OpBͼwؘyihm$Qa%Iqk@;^\IΦ4ƛ s#__@_F/aq+.z+: #hG!9 ט%s݂D ?GHsI.ɂ.QYCƔ!cK2G9 6v}ǔOA\,IeN<,R޾G0O @,;CEr\4xgnM9u%u k -OmJC:Nj9!+W$AhHz>yF|\՜F4 84m%Ȣ5=㢸GI'E%Sy8dPkQK!d!cuyjR@*(yj=,PlR\,J`:X'5r[1?<R,2nˇ#&ea2mM RB̀ѱ*W+J^x!j^MCN(/:tPG~aJaF&HVLڞEaXNp@pqy1 gtɓ,-].\= t)07Q-9; 3*%,cso+jD){q)J({nh[MY(d~gkS]xR4SEkkWfW(ZHG~wLSu IogږiLtDs2E"yqR'Ӽ_-~cY^*ZՏb![j-zrARC&G>1( 0-G;)ĵ/!^xdԵd^^>@ Ƥ[ޒV& 4C2gAqhsvU}QC"Gv25`VJUN+Fc2#sߗHF=8 ûjbwc_,x*=G4C# 4 4v.M+N8'e!s|BKY`,q-ۼV֓.4X*9Αޝ*g`_ei=vE.W3jv9%acwsѾJA~?Kmp:j{6↞hTН?NдSL>:3F>9K Y,]Р_]`>SEfLP]Nbx+c!GSK`7s>5/ujPp4y6^؃*K\ ЭdĺM-4YjMi:nŽ)}iUCuWI7aţ({L|8t(\'nvQ9/[/ϝٚ;q1ոrO6ӡsLš*d#e7{/NJc2a#"7Uswh^-Ư|l\ux~DLʱ^'WKռ9 g 6{UWXVT6ϣ}-#ިi_ 8i /$_C@LorTU^n /gfV {8-Q$7^ xN#ۑB=zͬҝ]*u]b&&4dHcV&y^ăTaZW֜ vr1Xon*3 PH'TmR+{f43霁'ܣ*4Y[ !`%fGoy('*a^a AR_+BW,8"8ܾl ;%x퀜Bd2l=/+':{j>v.QѨW^ NoV֟{noM:’y%wzÐF0I_ pVhnu1E:wH}-$aҰ2O%Q VLO:Ŧ)_"BuO{U|cR Xo-HuJ#xa -DZr7.^&J2Kk -ژ닡bs$u/Nm*{03sE%g$d6>Eh/ Aqra([!}dC= YGH"/1 cHe!(mCq#͗L_փ,f~q}4T֌(6.Q&\PI&_3]ȳ1a KGH挃.@2?gr㤖t_)SVHث'fy^UbEsd;/'y'yÞQ7 T-b@,a$ J݀AVQjDCBHP=r[5`jp_50-Ѥ +)O]gGD/J~h_#,yo?a";Y R*ݳN|"bvߙv&=GIO_}Dvx>|)o^QM_68 bN3^&2'ݻZT>Fp^P «ލ}44q-HrJ;NBUA8cMᘱ]^qJuSUVLq ߕ]4h${jWU u8x(CKbU, *?QَvP8)}#RPq}q+Pz]MCmL[)m QAR}fVy{rbo>aNN.I>S'Ϟ}>-pm'8A7/!Cr=HLZsM?''}Z3\&z&fN 9Kh륳B.t\_!^QǦ8L;?}X!  u~0LJa(t_=ݟr6¹Trh~:jl[+|vK(0711M(az5rAFm4ߤKqez]:@i/.z#WCVݢj#IȼDzpʮ~cilӣ=&9XHdBsCAi-_ZбJiyc9]q ~H]1uSnM+KLYlqjCz'Y\(ã>sphtB]dZa2U1:,-olLKWLmaثhoZ1]m40}3|ё& OGF+.ƼX3kxl"X|'pr~[B`@ꌸMA~2|O؉aB5b!I)>S8#xn00s ԗbQa9Pj[I܎cχ쌌2O!mIÆRq%;":BRYpWH$2$لۄ%'$v2T0 oQX U݉5ӿhBerɯ0&"jbJ~`rc&f}X}Y̤YjPZb2qF׳-l|~(:TAM3C).eB.|}nE|n94+ dT^;^d1&gQ ]38;[:J-sWoD.kׇAKIjPeCUy }\*q_T%Wv#۽TDL;"]8[λR32Esޓׄ/ӮА%uk;Dw>-S.zf6wx[ZZ9v 汛2p$f2(6sku=3R==9KgU'IqvШ1$YdUC4暹'DmI ^3iTe5h={vI^?Q$";H#hd#],QR߯t\;| {OD{R5CQ @~6[ C3):re'fT_$hf{6 <-y` *ώ_E!A%]JXDg릮9t_ $oF$ bXn*c'($Jt w;vʬA Z +H{?KDsCvBLydUmJ}^QơbpŸcV{:,<1~Ruh {8pQegk L&a t(Q4eMy$ǨzjLc| oWeoOTsM"W<͇R2PQl'Sm5Sd[T(M9׸s/C=.]/L€[X 09'+Zaj50IUϼN5R[߲VrfWma){_ٟkE \r%0ޅ~jIn-tfіC!G—ߛܚ7:6b|8Ć^zWK뤽M-J^c)*&N?E0r}ՖTcߧt3s[*7V)}!-`Tg9&g5~gN8KuUჳXVgKǨlinv#;3d,xp-ڔWc(T"ޅA=yp7ro[W4ϧ7h9sfAIEA90.bukz%`aȈG j[(7hC_' H8np50U]gO4+R׳H12݆ɋ42 3w 3Q 46wX"?bDfּYi78bO uFD+'|>Y8xCJCBdqw"p׏1⭻\1YSsc ,/ zL OU IMLƗݽ;9'@U@ X,%.ӉDxڬ}y7bCq/GYTe9,ƚD=C9nj)OL˖Cevt~_Wq9R~;g FX:5B Y8 Ľ)!A#,h6-®vRH{V$YHea-ٸy"DemYJgnAsXevy[}kb (#-ySJlaB"(U.!o) O:V*/:=+zø=ٞ 1j}yPb$6yݬdηWt1\Ɔ1Q3cPk \wURcXg9vԃ)p${aArmR;|"r@nVԕ2Ek=mF%Qg 0lo<-A(OfEwK xeԍ̢]M^%M=GFL,X@h+ئ G뫝BG\s*ɠQLQOg*x^"plqWq,kM;s?ưgQRy[$wtk9wwql4fl($SiYN!Z̓{/8{Y PWz֞JMnOGJF,3L ;MJr*p+) ++%?vBYZWrFu=ӸVM;B1k `fLx\ ;&l K7Ajۇ6>ܥ͋Vtl-ĢVW&o\cZE<9]}K]VEn'd&iTQ̲|%}Zp3)պTdpjT,u\2)7eҫi|٢)Mxonv[]ձfY8!^!fTʍ@O_#x!:25P05ζ$ s<=ﰼkfjHWX Y:!^<Q7{^܈X.4\kCii/8Aņ윖H**ɢl#Bc#;a #gJW2q~'In,xwOa@[!#ӌ)vmY[g-ߕ<~('Q0ko*sxyT`d1`D\;n P-c\S 1W>qLrqU~@Hq}ll םzBq>(J:Örf?{ݢ.@cFb嗅WUu^Ag=p( ј nqNa+j"2L%5d:l{D (\tB{M+-CKK1f?`Ͱ ]M_Lz*bH X{"upy1cneFveL;JHYh~ޖ(>Wy?G%RԢs4G@r`BZнBlvjȝԋ?F??ԯ( t:g,bj{\۾YtDåBD+@w t}X%2zZz,Z@c9]yDŊnr#L91'uB`/WV+b,U+U](t Qk^4 1iA-fz\C շh"=S!-5-̌ej*3}jKXF8 #X䯽KXT.B"OuD0QWcfS 'S-{gb q؄WH`:ka+9S*!MT4_WƤj AU4hoU@UM+`BZiWu fC$F2vmonA1;Icn/H_c`4hĢjYؓKrX0s91cVS+>-|4A—!ͅnVj v<+NYeZo; ˆ{-#%-mZV` d@=<=t+:-;".`Wx4Q'a/lW4­R Z^v:?9 U-v+Ž`];{$SusWS@\uVzO:>O 8|߲_0!y +Qcz|NǸfgo%z5H*p*" 8C3>9{rjb\A"1ǧau3(wq L#~ry9gB YU3`頌Ge}עsE\YW.X*F&ZLpFw!m /^Jl6D0}{HT&>+ZBؒ;0 UW‹8& -4V;+Z`2mY*dwif`l6Tv j3$RndXj5b[)cCWzdOÎ3htq=>P\vɟ6O?Q%$gZ ;l 7ڑd׵V<,Y cN.t4Pe4] DmJm{7]o*OS< #h[OF aEх+K~ePq yUrՎVA~YXUL,,ZfZ9AǯELz2,MjC֠cT\wu.f'+d95r|a9^I햅'!ryV6z,j1xd̋$;vxF  k8;xHmydRP;> ddJ]QI--cxhe!{/g|`VnWԷPrִ  וMEV4/=_/V/dJ~z)\=oU@À](i)c.?ɞ*6|FݑȆ W1ҧѻll|{zRK~m=FS9CQƜZAxv۞%z!]ۻ$;\KLH}wtR_-EE>wTf9֟aoRQDo<%c$p. A)7c[hJ GҋK5:D-x8a{JP(OD*SNZ93GW?lqˏv݊dδwHWvpf"ˍ`QFAf0lln**wO^ )1}aF&I ϝxʖHcJ/v =*!ZЯsIۡ`ˋ/s6 FkS|f~Muzj>Q$v=i47wpc~Հ7%8,'ȑ묿G~F{*jVۻV|;&Vk7j4w֙r/`}~ +l楰r$6ޅ&HlcP3,ڑ5 8}Kq{,1@CYY^hB4vB%<i2( P "ei$ ވjtr:ߒk6 P_2 t(P~-M5큄{рYrNSN|y“U3_v?Xl~ˡJ>_Dw%нTivt-H{DcN8SۺP *gAmG6`ILHB=M % xFBi"є9`¬B\;[&ʞh ^3=6܌ %s0>F=3P,0`ΥzNWvC=asB>Cuv(a 3L̃>ngߜ|vW; ;4 ۇ%=XP,C51fP{*{elm]m]7f7v+ G]4Q|O4LЎf7 ي䗃z|;>'tBmpdtMێilb74b #S]J[s2l@LFvs9D\Ӎ'\OU8v6 ֕*aA62"D4ʊh` \G#0IgO?|:a$3"6C*hj/BA#^Ai܀ӅkY6$1G^l8ɦ[^;+-T'f*ksLg*(~t'$&t9_/@}*' vrCEx%*0i !c G!M{hbt|# l\wB/0I *Rh{unԟS;"GXdor*]Q:ޤݰԴ>4ODR_GgvwY}(u(ĐG i, tpmmEhي>0v$j):52.ffUȍ)p!ȯR/s!=3UA `'Y"L0giDvL*3L (SX[[BYցEqqb6/)fF;RA41  "&ZĿ}ޥsZz ᰇmi5f!Nl+2w)c2e(Yʔulyctp*xvc:9e _ j]rGڝdz@\Nx37(}|Ba!,,p 9`ox6klJFCUF~(QCg֖!.Eڴk{c$o5_ XA}E7,9PO Ʋ-9Aܙ9y+f l?q!1yswCz]Fx?S]m 9ҏ DXVfb։qU,neLT@&4gtiȺ VZGmkLܵ)EzOq%epUݓdBQ"*dFG̀vW:N{m;Qgvb?6SR~ ;6C^3D}fX˟sinp..Nr1$il8w-q@VzQI3Hń O _tצ`qt җ`n@͹>c$k|9=:1;8~Sd;d_E@̰)&MJcwI#'=< gT(LoԿ=L Œ+]䭡4}d=@Iz@nBpoâJlspKBQ-5, oﰋV:Vɟ6x=įZtgYldE·HAM:va$'#BESI>zg7QFĭT,0]d8\__d禮C/'\ȟ8<†7dzU ]9FRŤvC% fF1=U BAU8X% 5hyvC , e&R.pObm }zq5SV -#%)]xBNZq'ձC٭ʛw4b)=38N#e-:R"lth%z۠\>=dji$yeݬdic_!o!.Us;b07cgiMoH2 btY~L+uj"!˚]֢<(.t̐>ySZiZѪ%00\ozWr`Ā>*&i<+ɻR";3҄U7E ONv+xg UrZ6ƥ3zK;h栃fjꎊZ.UO|{(ZysI~@^#C|"/VsvF]WTInPC-^$1e<>zkO yy(@7`-)yt[:#4-1sr9  PlQgYTTgmڶ;nRm="6ISs!m+g>E hguT8,2;*)f Amo(+OĠ^QNѷҷ}?>nPx8o$ܔTYntg-Ȯ(,);{HGG)0hy~=seoUX b|=gwQt sփb pBf!XKZ7XVב]_诊x/ Xw(3Z wBO%Yx}sȄ`@qzw`Ll1A'v͙ W>z8F?t+1R<d ˊ( S T Ŀnѳ=r.4 1S?ֲOͬ=|IʕUmv8Q`LϠ,[2P5CT  !|*`Oo пQ^ (n5e:Ć{' -:-(X#2CQ݋>Xh7dMPkȼo5Rf/ӊc2Hwh5ůwpcur}*!_Kֶ*d;:@#Jt>5b @?|ՍJ3˺Űʠ)}A3Oc+""{OCzĵpɕYtgklw!Ie[Pt G5I !{c-JJ5(0<~Z$T&f\&=1/5Hb2 l cԩd?b ;׮Y%N:% KrI{eBO"n``~S=VFRT NRU\=ۆ}@Lr,QhTP.A|ZI}0fF@Qk#Ql'ic%sZ!t_ 0Ҫ!`*GǬ|<ҕ_x8H4L,5M:KiY)塪ڭ*[R@s ^1#wFENE%Q.?N I\\33F)CV)GG2n 51fj;'J`W柅>`.^=%h!M{na ׊K$>?0XG{<C>Thn8f2'.Ruf.@bOM`vK jVڎue6Jghs{dohU89)>.HqSuVG ^3L;k!,^P;Ԩv6i4_~sNʁ"_Tl0ӡ}Zad-G"!.ec9`Mtv!NקR5U^wϘh0AعbjQlD gu?TgOu=,n~* |:ƭٳom/6llg&?zdSe cV 5~CAo` y'(d y|!K{G2ڎkl>]Cٻ* ^YNAխ1P#~lC>WrA+R)-$ACgnnhEgM+&aX)?ESW{?!* - V~KOp$"8aK/89/W(egMɖI5ǤOv[[Mnx[ؽc@)jfvP7J/!r"%g,;&s%OiVLìfpl -O{u9Zd CK񩂢sބ.uSVntLRqZ=b60oF9'>x1S7$]O#3uI +,K}ROߤ.>ؘ+Y"ͤ/ / >ҋx#2|ԕ*CPE86ؿΓWڌ1C5vL^W48qd6Fn(OJAU|w=U$" 7!à9+/,x?yiNsk/RpЈƞnTkq\qHWOδ-MtNԆPfh;+ب7&Ι Of) rW%$GUjs;&_h/aMEiV2WAGfP}˂9u'*^g-MpEGIit:oN,O% -+N2{#pC@5%&12IX3>/۰VpDWD(}4S;j|,+s)CXJZtⱣJڥH 7)jv+߄T ~{zJA2ZLUd)fU|*+CΗ%nbTWhQ$=c@ t*ʢ 5VZD(5-{4#tEALwC9ˊJsJ9bۇ/ۻP܇n>&}r6m;JQ,]yr?`kO#BD/CC y+.Gy+ >ښۅ>ٿNq\{J+l!espRGj0vV1V;%%Bb&aѩȰ/yHo݈-$) F<Q^Ч03nB;<Ѐm,wM)kYw-2m*-7jreXT~fΉ {tdvb eVtsDee,6 Qh6Ts%pB.s*mSm] ʻϫ򡎔K,q Q]1ްO06 iuƪ@x<o-u 7l OwFss`PEyL.)57 RFp[:6-gb`s02vIzx%"46.ȅg0uvu0<6XET-$(FFeWF* LŢ% @0(Hs؞n18 j%Ȼxo~ jSQŁ8`־މv?mt]GQ8g,%?1-hXs!Z8Ee҃|T5U\ǏxcT..T}ґэ ovS'K6ӱkv9neQ'3Fa֛w8Ksґq5u#_pbZ~1Im˨M!ƃk^"ڡoU˺Ķh{QG*Y}-ո,Mk<"G[W~V߆/$&Yʑ ( mݑw:o^Λc;!(8[ڑ֐#١4a;le8| Eg ju8XCB\ɗFA8J(R4PhRS`- +6~{M?Qgނyghl8N!\5h`#"$pWn(!72Bݪn `=td<}9LW]^),@<#Ymu}trp/{ːP%\֊wCFЇݶ'KTbOt[ǣ^6c-72MUe+R3x5$-/vtQqs/kc^ rF1_Wjt*~HH |M{ێbyުX=d+—vWScfI.)2U34,Ț)t]UJp3ЛW L&΅-fÏllѾ𜡫j}fP/4*g#Ȏih۬' ja+ަSb9pe}9쯧mSɫ%V*SH_Y[>NGbm&ܩ|hK'pۻOXIeqpq?M&wm悴8\ez|$Zs^u 禘 n &TQxûզV RbL|;ܰ`_]<税rZߏ#Ѷ?;B'gSmQCwXOFKU`tөdB+Q iF;*X9ǜL<(^I iX^}1G@p5C1 N@Wb@zv:/ar\~OL09?9ޠFhFbgh\j67H6?\pdSh3;UNmʀ/cM! uiUr_Ny`H0A~ﻵ`j;Zf'Ha9JM9|k 5@=dU?]71hbbf ~&mAdĿU`ϭӐtQ:"twLB0"U'XAT#FcI,L G7j-;IfEu[49?trn/ci8t3RlmͨE:+n@껥`6~r P7/l>e͏?khުw^= 6oI5y=dxp Ѿ} !\c; (}'9*4+tVY]*2;|"0ϰ>,TwQ ˜.pVzÃ_h SC!ls^hMڰ_V CraFփ_')rXeFaԜyg ʯ<3@A@P>J/(z뤢f -rJʕD7Grx]Տyd'ּxkU(䴨 Hx&,>ĺf}]к{f-n<Ca FFy_ oJDW»Z76i%*x8[^B65TC+T-z^V=.GeHU蝖vP^01Y1,4!HшƂ n`vԊ>IYi)A-]һgS~NK_Sݚ 0#kk qO[oXbB?mu RιL؁*Om=6pH*)Md| qrzx\P3K4SzmYS?zǃȞKvb1[y+\MƔCQ3yҪCAѫ s$$ thXn5@!`H ='BЭd>i=~,otO]O]r{ 0)v [G]Rt|nma _ޖP*_J\BB̰Fb "9-<;GI} w]Ε[)6m6+PXtS-A!N"SVOL HSa]RC)O"%˧(<֟zͻ3kL]k.w?EwbQ\rzOhnI9:D V4Zb2[4u%IZq):,ʶ_PR*9.V (a=lM:2j(jB{μnLjGBR->Ż ;#.'Uy$`㑸 '|շqLt/":2Xѕ&553Anqے#~ Ҧ&sr:~$934')>{= +Q}3n;.GCW%8g4*yWmiI;ͺ>|ꁜF֤S 'SjG3?~ꤍuQJ# T?GcS}oN~:9VU˧9N^31)~\0S.:3fʑvĦ7u"/f*\Fb$3 g^SѾ)< >;i17xjηfGph|yUrE%ȳ,im["kf[4^,ہܭ0 Y=2 tX"aF9_šj["VDdb0? fޚ0Q+ mfWh?$&F2>ijs9W>7%5V5rc-J`,Q;fEVeP _>(5r F 2í2nka3tHOr3[+,^xG 61L{ Ewf?swPXv CUVu ONaצ#$Se)i,9Qc(lsL<@A踂b<z+%l( KjFVr¦I}7S0lH풖ypZ|O0͒^$Q8ߜ?Y <s񌳀I?k>1O "j'%jiJ#0QBA/AD9l& D"0WAR k ń[\=v8͙&,a^w+Vh?*Hicb-?̓TxZ[J'ɛe,ghEE,_)[P-j&,N?Æv3'OMSGcqy8̉RkWp.8zݣFjb4,DmYj7SnA5aj.J rF_ zPͯ٠p` Š*{O# ok9c $\fːDŖhnqaO?S+c%_aQFfq)oO rY *%9nD*sb|]iE+|9'8vE2ײkL^s=&J(kcIJ݋_Xex=+hM3A_ Wp ©יL/ AvߣxqN2vG˩jD߰QtG4:XO|E) &as&ec3TNzԲ?s| !bА:j_(tA"ǠD|lNIр2|I1FX[׵KhR ֟,$ߚLmRƀ9X'ح*^\uWaP7Gb-pu!>hq^-RU4c"T{C2)۽YZ"8!#`4GwO W59yv^b(@D2 : hRƵ&q?VxzQTDD0;Z1+@cOPۂ,Zao U5ɑP5L:{:p_hiF FUl>hb5h Z"A<!/{瀷0u SPl8W7@yV=Aw=.Q A/c"Y %:Сm} dG3Rr(5+6*7Fk&[gs`RwإAw!s߳CAzcq<<Nļۑv8mwX@ y}D`-DHcHB[Nj:h?Q$4C*PY .om̩u\42-.߹OГXF V{<60p ' 6FS-Āo.c ȩC*ъ̲,0 [Shcnzs,іBxupuUv,A1zIr@RHv)fvLDRgiImfԉrrG8$y&;@7@X*R Dw Ytt:"U+7i!%T0gv6zQRqw?6X;Rƾ5Yɟ~?U@x)@,v`xih^?EpZv6Ģ6_=rZG.S[@Q a`(Jcm yN* ݭӼiF,*[nF~wsT) اo>L8&@k6@=`c*IXY^p*g*rmׂLl2[nRl"D2p'1fkO,Q*:[4٣P0ɫ^{ S8x@,i392~#8]GTXϴyZ'Ԕ?n3%lhHC|M!0YP,w:)#UK9AVěҍ^L"]{S+<-Le 5BƼ5grPs(6)O| 6?P9 se9jN=>*#xW ie>M:|neǂoPoe0~U ׃3zET]! |3/Lq⻸Jt!yjɘH^L-!CKE'/-UcI4[R.+BC)x[dE.tUe6(MBM }a2>k 50r/xسŀ"cUPU`uH5I,6#fXr?Yu.L -`I)T[/t~?7oa+Aɫ/0v?١ bBBjG3\7T&m Ƿz#C7f!l4ZAAz'!ibjM}HGR=j-WL',bTm6xoE-g#@=_o2`Ql%Ơ|76\%#,/vk,1&i6olkFťEB6/5-9fcyg˻oqG~kFmx {pϺwKMêq<]]K}A%ǀ u_:Q ȃdu28\MgϻI<B T,10o׬v-HL\q$tE Q'8-nWos2ΐ`= Tbxɋ8ǀ4{&Ɨ=Oes&oZj}f*>AVAǏ.D/|3x 0FiDKƢծeD-K|DpV3K}G?ۏiL` %0]fpv^9ƿXf_^iX.GAP;=Cr֢7.Gʧn)(LR=ayѸۅ. *z$I :>'[/7 @AH~ r&Hpf%|MqfTDeϤJdpl?瀢ZۃZ@҄[(1G36*hIhde|:*Wcͣv=_ 6Qơ͋#֩t݈&TN+7k>]uBKnΧgWb:LoN!idhC>2Qʐ|)f uG+j{00z6-aBuՓD 1b!ynޣZ|TtC SR+A^`Ԩ/8!O|,$qG$FDs&:AiWO4|t:E錯̣أn5]7ߒE%aۺ*FU i%}Mܵ:#ݩ$op0v5n] #H$=Z`4.@{#d2W| I5&ܫgߞ,[Ĺ~V2}oقS:E \ۘ/%:XUګLRQ-)fF 4!xkLrB$> ?$BePkkLt\xy 7X?EryĆV؈2~V.\[bI$De@n.@E/6"]S}ڿMcC )v'K!˺-RW==Z_HN $3 gbb-9{C :E]JQ$`W1&l7ŃeeEdu-ORla9Ѫh}+ԣe[OJ7_Q1S'xB ne1 qR6zkԊ=!(^H{koK ӡY hߢKpk8D@C2:hWKh|P u+PgaN}.|m4N6Ņ⊱4 Au{OrI=o%ެkᢡfoۣp6O w:OAl,>{7(-쿟%9 ,ks k^V==p38#kmY+3>ǘ.RcSd]{&Q.xw|l+UD%PWg^Q9CqR)5l tv!<*ň*qQYO0 ?u}Rv毥SD jLKE{7 I7b;[94G%oQCC[OBMw'N\"0 ؼ zRwF3(ظ%Z Xtbdwx!?#ynJ^-.f"0AT+*Ѿ^ߐ$@&iFv-6?o=ݿS2;VAOv$B0X=NLZ $dm~8>["/h# ߻MpXDM.B|%j!E?NJF` rh[y6aa^=8-L $a#0qr%e wTA v.~*a7S4`wt ٍS4'V"=F km͛^Ԝ0Pu)T.K&t2ZU:qare-^* RHFYU:Ob)g)tŬ9^4Xv8ToFv"IxP*D"),EDQ\5Ac7QVt"jp௣Smg-|1]l7`o3?)kV{{ӦuޚZ ޢ:P2>$q.m"䌑΂Trcu'.d^Hu4Dy߾8#2_7]7],ujv4jB-F{%e6h[*2те-m={a"r]`bF!2*-$ē/RQ2 pɪX1uZyZ=֨ԯRW4^8o㴞8k.C$#a:I5&xKi*}0lc@ ?S?T~_cq ';~JS _BWë5zʢ!I[`~ZX.'lL#D <3GTnœ62uk 7:=X /`)9Gyf$0_yOL=V "3H| ) iyy7e5j6Fw 3lFiz+tkKf&* +e1:2 %i/j\;rKhXۮxvz*, ])  `LY@o!]\UC0ʰ g|t0VNqESx oӥhF|Eyҟ;jZ Mq)j>z䝢_ƧomtzQ&wP̙q25PN0IuXpzAwr VL;/fi"O ҕ+1<ob71G`2= 0/w1If*G)N3;1`~V9N3a,jot=^+^ZdGbT ޷ /q7<1G/ӝD7͍,.v8-͒K.F:OuKh^!?Lzr UJ `] :\Wi{(dY^ Vq}fC7^#%>kp,$NbkOoDb^J6wS9*/e'07 ^:j+1$安LfOR#hEGIwxyX RG@A9ICuA3*#MsH{ZY=CY5F D!ze :=3A7bY2(?F~bFU Ff6)=)v#aB6 e4`-,m{*{6 omd.؆S&bMY.wЮU&hd,1zb%+5@-o =F>GKwpLhɔ*w9OLay.(Hyvv ̏":MH[.twÅ]<j=K/.A%EK* t:N`dVA錝Hw!70  mmI_W!JM'?-mCc=ɺǾ8s3 ;ŰiM%1MpJPui4{>㼕#gkp1y\YpHH,2v¯a [/I>( FT/Nm[>бl}BY2OSJDr"2drPzgS4hs؉ކL% c݀7DjSUFQ~-S2L tshKVS 7|chU|\)v~tg GNL^ɯ%1bia03dvVAX B%v߹`|#ܤpAB5<)ϐC`hCu &n[5U1CS#V-̣)^ [~XXO)7]?L &@ݿY  Щm>=d9͓ "omO2 c݇tݿa|m#LQyPvkؐj {-&<]Uh *|6#{)+}Laçm0p;V[ItT,T U])ysQxU-raxPp,3*yu|0!i)4-NR'r><ϸX c=J ?f9z|7U,t̛D6}ňU/#]/Gm1[A(' nk:W_SfRC>E՜.SqWzYI:|r$8e.f / B%;;F1apWR9:գt<z좆^7M\w{y娪7`IxD bh[bE>|l)PSwEP? r@GE1#"L`9PXʾfTg)٢聾"Ⲕ"swpEC(kӬf3N#z€Hʇ$3{Gg>a-ly֮$DYou9c !=:2qOſ7q9e5pj6&M%>-qթl*ӑKG,GkS>_OXD/ ȀĘی"gaR|5IqԹA!v/?LB2Zw'_ӊ/+١-MmE )K"i89t> v=BQ:K2^&|(<QVIg.5Rti$:hT*Kl˔^58`WmYeP<ۏt1H ܘk*m3jF}B)wʸ! j7X/wܕ&:zTnS#ŗZ z9O$.3fyZ]$!>%!am7J Uـ=LrO) `n ;]e '@KݟOGXi5޴;v>r-s%W򀳰SmCI*@s|R3HG |dj,3mELkW 3Wn!_SN{k1HnҔ:-2fp05T+ v_2Ąc,wnNG5x%Q=7X9sMھb|c, 35B`hk[9?Z|"6HYn5 ɛqũzmjd8N0m3}+%ܭOiE w6ՠp<*[jӉqH)T+d@?n-u~ŗd+H65GD6=ē˼i(䲠%&I-rʷ-^EQ}ʙbgu| [>@zhIG4~hQs$25LzW]gm? v8_K%Gfr-9$Sk 3jd22tE`I ~I1 ,[8@.1%.~RtcH}<:ğ2=F~Q)Xv[1zqA&iߖN!-ׯx 2 ZWw}C&84AxE8;kq2@"O*V Fg Cy 2 {(:oUC>-Xo$`i_ͧ5S#~ZvLp:/"6@jIY16UK74(Yz" OL)okaᘴ1 0=UBa8+ />޳  ϵ6{wy5n:mhAPCvPš/c=~4kmWLzN[n+>=F,/x !`qAb}4-";pg7y`HU[1A|Ϡ @BŲ^cM::-It)#|@|)@êAlNlt; EJ:?{F3ݮ JHysˈ8Yή^X Q*Ys@0]Т5Hp]䃒嵲N%r(6@1__E6 dEshw˕M?= uV`(b/ N%{@,~-($s;ZZDbZ)l41BjOM{|&^[\7ICTȦ})ɍ%3t7~L} 6 ؍jWBTZؔ5<(Y2!G <@y5gʢW=rP>A3?7eFo{thvȹl<rhP@At.c\:>͍+̐V1ԓS/ӫf۫kRbUfˎ4F+dIj4=m8&TF*<Hig߿.@ h*yZL}_,îf6G,_+~-BR?Fz`?U[q[bsۑ# yo`Q{-!_TσURVڥGZ!_~=yGb}VVQ]~oZ3zcwMz?ͭ E6 CE~BMp$8ƒ\H;gaj{mvÂ7?'͍(V0}}'kt0K8An8[-|~^qIRӈZkOĿ4ܘeM) $`Z5nTMnךֵyp|ޚzD;-p-B8FrdhN-꺹k鱼Zп[y+9V,^r[k7)&@3fpM(Y:ti33wx5wkt܈sCcOч`GG\?Y> _׳lj."ɭmR3}Or$dj F 9[ IfnsNW4kqB_,kjT|AYZ!7SbdZRivz"xf9aClsȿ!wQ`.p2iR ~2HY/qwذalloPK5\,0gƿOB #h$|9C0/|xͽ(dJ]J>L,(뙸yQbc˦>੩[&j'w:d0T[om|{1^f\/^"V.G.60+DC;@2^,8j :9'ȔSsE;ᄁ続L)3M‡´ccQqs&YLKY?VaM}vqH,&/;JEV/sM `~h-rffudagw'YmC)%oh+_4V3uNh*] kMYlQ? Jc/qsfindKGzLC(3MXfI",6*OQM?t-}=L>ܒE= IRh‡>mo/L9ڲI:k<@OhR~YPU-a;-9=Z`3w-p$E|SuQtz_*$Sjv̠ۜiDhE Siٚ2g|c~ Uhj~ ml'SnWsp6 (9w8m1 r''aJf%uCP1p LBbܸ}R^MƢ >Kȿ 9p@O:M!|$ }p[ үY*íy %C3#i2pJvv@؈E3mנczclOZ8n]J}Rg/kP<4?JpHVJ _2 udVI0i#s~IbnFK#߲C@a^{\ƶ0r!d|fTqf8ǪM09{IqG!ۜ#rQX܁^k mpd#m /~+g0 ·SD$>sR fΜǍu+X2qdaG/K,w[юkj:k^m ,p>OYFl>Ep^5YBt -v91(*L>k(d#kТ":1!EcpKM-on1[+lN칽 W[Kt|]tQH̷y֙:cHgs$Z-Dd/kPRzVm%}Ni"D `#0aY &ZnUm> 2ɝ% ÓS\Iv+bG$"\tFI_t| ̙[U8rg ظ,hղ 5mo"O !OP`5L@y1G`癶G9aiDhǵPS _v<%௃ *B-H šV2ZxAB'A?S+ә@L0h);+;I L8 7f2:>l*v~%,`*"x {J:*,X-E]z[$@ȹ]{HcXX8nF]G%N͒5Aoxj_+-myF?̍ xފHsy2Ė֫YtAN*mݵ0;~E( ysS Gr—,n23B(,5lHZŬBo5|\.a\夓ٿuCߞ[ hvVO;b)#g[/pad@y N">\xg#,'澳Idp-a_oWK'TB %#*a!s{qlYg3E$+‰>o|B93*{EM.uvjBy0,-a3OJ&$tu!"ú gLE@K݂nGvcxb _>YϜpB`*qu1X9hò^۵qBKg켬?"gckd \}Uk{äuAT85_tpnn)Dzl&v,5&DgYDA L)fρ)&6l)X;.(C% w{nqр;Gpީk#W0 OtL?R%(uxVܹTr!pl;n^i[+mSfhc¼˵S,i+j|?g=۝sm+? Ɯ[N).kX<B켈VC5q7>.bW{4:*RENv|Q2;NGgnҙ*⫌DbՉYә3$5;,ٳYk\G La&A3g}.EI# ˲Ux;1:0= Q05Q휲HqC}bOWFkv"R;HFWԵ Uȝ̬SHUrf,xi 6k/n}ru9s9TDk&oKI: k@?Gf4X.^ojH2@w@Y)> מ\FL_uIa(uh' v W"WJ,yvۊ-N&W t' ~o7=DenOqrtYnHh  8Zd1 mZٴw?d X{+P-= s3u͙#˵Yt{wd! G X0%emC}$ sAI#BN VׂVA"/Қ/)Ԃ~wyd?("Wz.;To)}c9m~J{iܒ noAb2>2E⎘Ih~WČQjb^r hs\C՛Փ@%oSAM̽'0Mb6́x'\9TtvD? 5s]a ekƢv>nF£(1REd|@xCYT ehD|:5X|*%#kP1OgAԽZ8^0yY- 2b3ЌN2~NESi+@Ύ,s"=*C:;7Է('嫮g;:q3 y hl >[0Vk7F!)-|2߈({fD/(h?۠ulh@u uz7Z/]0b9ADN='(ߚ3D]V n >EO>˾,1B]~s \{BݵqxO8(;_O7ɴ&|ZYIN:g q[/Ԍ>.&4⊕e_Gx'n`8ѥsԒF%;veD8yv4`#%OiL΄=>h}LFtW@(NP9 ooKPnM؉ѓ( 7(,g1IpVIu\DJ_&.Z:TGa%:)cFGdaNǗ`iScu>fM;E'y=r {zbxKzgkElig/R]+F2tH[ofrOTS\R_dw_SSɋ DUCWR|DUciUu5/(ܥhݟ[(~_E<-![>!oL] x\ Ugh A_lB0S wkldgUb oWPbq9F^<{@, S>eO9$j`F s&6D'v诹2j:0̰<_@MaQ&u Xy=gVoS9oCIpU  ﶠc)F]n@- IOGٲH}^"Ghќ;T V"`:zT# 1I@΄DXuF_bGcѦԀʼnC|Ö ޝ\FAO^'VQ[f\ .NC[Cqw S>_]%MpavvLcRt=At HDZ!6pvDCCӝRiᳬf\Wh[J٦ W'jfCYm ),y9un } *wrjG+˜='.L2C(Å)`GKe>:Ͳ={;.%b fSb&fS&?l'4Fm;vXخ2o=*R NAGm|zh_NO0F hx&u=՝"AYxc(8-m;:&=ey,͜Nr$PB8*7v@uq,ejk?L^yElUveHpuM\UF$6Qn RK8_.0XK=@єg(fm]~ +{WR p沩wam4H#9W[%Ck8-yL6d;i'Rߕg z<P}5w]$qG\p5X "Q^!aOA NG O0~#UpnBX>f:B s9&BT5r-*-,Ӆ1V/!$VFlr'^iD}Gd_0WϬ|.$,Z'sQhQnQd>pRůp?`*L=Nw*:+ [&% _dU+/ [/2&/1ov>('q;IU=9h>|Jd5<;1޲I(sOc{42Jz^9U: Ctsw"+NsPmU2&2J"d`K9qsYHPT]dI,VJu_eqxv>| % ͿUV)݆c%/? E iWU-ΞxJ ՟Ah]xe %1O).)ve{9Hd=_mk( MT6Bi3Vmn)Ax[* ˒[UīF0U=lUMtf͝XR,ճ3P\uds󇻪I (e,3`=ݨ8` t~,qu\FBbmןt2<"@ Dp {`gafiïiCMr7.6wi0mKb(j%E鋣r- ə;I褀Q_HfL[*d(d^]d65]GPUB))`H[Rg9J40⍩ CŁy 0FI#3Px8|'1GPN+bpJ7vT!vOXkтQdDc![܏|&4WZ_¿.[mK˗Hcfڼ AOg\#re:*&r$> !C1rwX;+TTo@ k`4}&<$://\wTP%#LGs_=_ʦΦ0D `2 6ۈ42A-isvD ʤawκyA*!Nrt'T[E D~~6q~« }C#JU])ǠJsva؁Li3d0)ēnԁ,%8-ٿ=||]L|! [5+Ǩ-\ԦMorp2S'ZCy 0w&51#ys!6,Pp0Uimue[k[s塀X`jf~ճ-nQ ڨ"ymy:H-${sp8c /j%}Qe.X"(JnJV}hcDlz;y@*qխu g bE(*qR{hADMNK,i4ݩ.5*낫x *tfx9_&¸0eѱ*{DK֩ X=fSjtD4;!^EԌ~a ԘQ1(D*l.xO8 qm_PU`r}%⸟v2WØր9b6̠}&YĺI)NZ!BsVң5s^օ-󓍆-ƹp@|%-%S)%FH/u{:Aܵ"qp'b:~y"];kOѫ3HdUrkBb;rx[w(݌\On<6>=5hPዠQGZQ톄AK6tRgBY|S m_攅(?Ln ;mʼ]ƒ!'l!*N#\4 aiłenyQp4!J2Lyp5Jr֬VªY7e 1ШZc}%r{CO~3J`Đ"!C;r s?I. _oCB=tͨoF(+e͔ VPV;G4b% Bw90}zFՊkCP0_Nִq0WCq6cp;&_65(uJF-hDfAp7 `ȆL@Ǘ-ʛX9_Pp$O@;=?2^hy42oߋ79ı r+rciU9f=8PXoƈ3g0JOٯZkLOyڽ۬8$ۘR]<_)"GMwT lB%1Qh0)/r{2pnn|θ䦈r4+=9~C:H퀛V dϰT`{C&ة@ݫ?'vyN ⩮JQ#BGꓜѩ-a6rWq8X ]=~:f8+;8Yb粭Qfwiq!pXDMNixn [rKn 0uf׈$u A0M-ODK,,MU/j'!1b t6#b<A2 H+ L;PNwvACDH|k@94+ $~?"1>Z3~U$o1Bx[MEF^/Q65!l^!/Q`DUr -]<ɷCWΈCTiKSQWR-$[b5y0xhwI7[Q;*Qw$IyX0w_WL? ^9>ʹ bRӃi Rti<9:!yx ;>h#9aI-GaqF&wysF/()=5gx%L^xԜ_zI+;uJDOYX]5 ?CYx sJ!/u/ATprcqrt4Z[(g$f%2v0̫u}츹;W"_I*tisR'ZHZ_/ݙ_3#T|Ik{";X1i%,HCw#i /HmowEh ~̔x9G/0/ғPǐYL^Ix;vJXpz$K c-\;xUϪusV{!\%)〸k^pƁ|lU&yNgQ#ҹajc͍Oj%ktj Љq"{N_7û7:e'7O~ sx٨;Ae3z'䂇 Úi5X tyi.ˍw3$vR6ɋkyloEEjqhWaQ=k'MNDpy~ra@bSOIaNP91Z*q"A۹r"w煢9:šυ+&Êxk6?̾b26#0>MJ;'H#B%` z?uM ~0k;hӺŁb"Jq8Wlۛ$igN˝jAGGk,לgU  پ_V"rnR%ne(hӰ2kLJ\őbM+KVY60" K [IQ3rtP̏X5m̩5b\0쀴  RX̛Xaš擳kh|8RzXv9@X_j3iJ_缇Ri]`KQjevSv۹˳ Yu9Y^dY|h&sٵ/bC̖^zĉ3qA-s3 QI9Fbh*n0D@j #M[ҕ0+wfS1͛~9Ķ,5̏CQ2ielD vm?kL&Kg?)~%SN5lI|{V HPGى]Vqk[K%у+7f&Jwi v{`ۮ)舊bKfRHDCoɉnXC呛th)ȅL#Z+%v= qEwckDZt #]LWF7-[aW H}ZI1|>'kb H?ᾲ=f*g(.)|n5*@pؗ&4„ _<5fd:mA-:7@(Z*P%[ v:bF%"Rl ftl+̹>f1+?DK qڣ919Ļ )}C Ր?^ z M̀> W1~:EVL_*k|_8Q4!:=MR^ 5%\%{kX/ MlWQHӉeȬb iz"`ǾSI:31B`լwyĴd#;n,*Klk^({̷}]TqC/"7S(M_Uk])5v+:#|H`F֋ƒfa#}#? ;R2 K[[uNk^%aZ?~R^S~t!0b"2z2.rV1bm4$"F*YPmeݽ{8 emQԕ BN$j.n 2@c(ó&(rpʖ8ɧ؛dJ|Z(r K()r-hworahitn|aIO8P ,nתcy~sna0D*y$}M$qxZ@tMըn* ^Jldl]-lM%<ꚂZ A+m# e{DP')uKHk~%W *x$j".i<~UPdS.K,g$YP#f|#/)`h# D!Xr>v`?.~\cD=Lc Krswϕ{f1v!90Aẩ.^'Y"| 1h5$xzAC#.P),5;>!R`Lov/ڱ@@!s!aVc=#(Ѣ!]VEnxiMi:LP  wFnE? o[b^ ^+Sk(2p4>@/!`y::r許0G2)S<ڮj/R:;40JUr̀- SOn_(fV5xl9=ȩ_ O2IWCIu}k٦}hoIk`4[dVa\u(7MǨ̬n賶o׿Lh&^suUr>1do.>8a\Y;fCj)X]4K}32VO9BP} |s]S1kU^>Ҫ7vloLy`ScHtpk,'?azun ,&cVɨ3S䫕C}WiuKQM\3zj0 "(unFI8?&LR+AbFQ$ 4|r4[5vC)F׽b Y}JɃ4V[f,m?y>)ݣ0eѹ._f8LN5 ai>` {m8ILBJTJ򾀏W'@Rܿ8(j9/aNLLǟiXXYkWoYp%^-+bF,&tmRZe yQ?5vesm&5#NQ0w{*I0V))wjt]d$}F7SZ11#Fo*U!o/sΉl?~ alM^B},]O/ Ua@g*qG\ 0o@,f^ИV~12#J• 8735\ xvۑ%㒯ۏ8^~αR?M\ nv#^0}yfL_≈2(#*.ciTw{j/QL`iT%%`l;f nN:%At]iEq͓c/ol {y!-cv@70%PcimmsI8+T+o!K/@]w&P\o"ۯ2P{b?٢Rhj0*#9:.E&i^Y#:yGC gcEԹU%m/々<ò}@D;c SKH y n}H1B؛0PxYTڐ3HhY`(MG'Lg )wdoT #[TYknC`d`?z>:uFzK`iPM[㮎=HRSfv^<oE#^U[obf!4ՍSq֟y=ǚdT m}3/}o4e1E.UT ˓ d~n1ת Y/ _b!n0t{8`"\S#u-ɰۚ4>n̯cT+}7MҹȆҢoP0! d4*!GE!R vnň7%W\wdJDFgr1y"P9P'|/Ǎ~ށ6=*[=#t we$:-h6{=kF~%09؆c8QkuCŦ:"o\NFJ!I Һ?*^T %L|Zxjl0p1pMؘrKFጿN{x_7.i5qD Z8H{;f+uw4`RD&4#ST:(ȉ-GKv6XUn]JB9hz8obZPI=kڇn7Dz Xz&gc؛ u#SX5Z&ZՂMO;FC4 .Mc$jrHm "DIY2R.`ѐi(Ra5)Ǐ e8@0ܕNZ9!d(WNFLm.0Qv c2)3F b؆pP7>9I4PI?qޣlC0?bSʎ ?>,?ڐ#".g7"8fl, &47"tf!N<,  'uPĭ/VHm8VPG"a=)5 fΰOxL_ u#&:#ޖilI׷JE,|Ш([%b#4_^*9Ɔ!SiVjrߠCqQ[60;du{xHvcr~qxIL ѤY7zuw&]g%ywa{xn1ULzO4 Zi[ךYޝqy8/E6AHfOC8]`Њ~/]zA-mimKRdLjWjbs&^ ^PK􆆗OmoZ'x]_dqՐbL0C% \9ku\i8o= n^,V3J0c%z-w&GOiZ폁@bc-ٞh%*qUqI^![rm|a9cJJ:⺉΄FV7+PYF)-.AGTP i*]$p/X1 (pv 21)N^^I8΅IJ̓RZ3M4u64ןHٵb\twSykB|xH ԠN_XfO;Ʒ{7ZIZVw|=vsp=˵HR"(n 0ګ.20N1Ohݙ}D!8#+$V{#A1xX%53n7) {23 p6Nه K#Z0iymOh ~}nP U?&93&Ü،J|-$KBjqW2V0_=𭾙Z%&{2?1ʻHõf7~]f6.cB9?V#aZ9FޤhOӪ^ݧ R=&!DKR;=i('~kA{ҙ8#[%`!o0:ZoߡSraݥyDfBɃ/ELB3)n3ٌYjpwY{xk$X@Y\=0p @p ,RM? =c.ݩ: &j5]U&[$طT #FUPIۺLp') -ȼ0Pݸ 绞ÕLZ(.񳂊[b+@e6\vld#ېBߙA4vW$RI{~"Dc(4#)rAV@7͊tG~V/8(e6QlY $NUl{P,ޙ|HB_IGh^-X}gs g%W˧wo)Xtb&ZDvÞcټt `L.9֕G!Y'{BãٙҩuaA%+ގ=(Qr #@dDKZE6 =WcBd\}H )I *Vvxr|;wxuႺn,wi8БeiX: ZWy}r5IT+9SŢPoC.8+ ra8rxPmSdubnTAx "+jgQ3[FN/+gθt>O#~w#D^6Y:Fj3&Thy ⨧9|NB\lCN-Bh7%^1 ,? !,XHSUFnT?.#8зU$ eꜻ;}S8zB#ۤ,@5.胛݋=Z""bUR㇧c/JIW.gqE+ȿ+Yҥ|˄툨&bхh2DIi XhndSpRnj?#Lj3;P|4gOk)[ѕbK&z ە|ys<Ǽ-KW$#9Q [!6пQN xF36`l~΂ AmgBr:{ wdS_1P!dB ɥ Gu-/'!7G,:|rX*ǻ Ade-t{q6"45RQ_ƫtټeUcm6(zK\U UƗ>6#pHhƫr˨UBPPR#zNbv6`kIjhѐAㄈQwL; `+>ڮx,0 ɔ$ҚeP['Ynp{nv$JRxg[ vo[[8{Uⱹa~F~g BRtv5߭AD 3Bop5*ZDb`2=9E]i,OК^͂<.PrNT9 b(ǡv}xVJ~;u=V3v]qtTBO,㰂H'*dyDkuﳩB4F*Ր֊`BHBz% ڜmQ7+ޙ[GfוRćR/nGeD6MO A%$rylEE" gM{4PZ[fD3C./˗@3W;೗xa ʐٰ8|^n`τIgY*mл}~g3{=s(eAck?heS$vL ]a1U1ֲ&q-,Lh}XK\5#eӪo&{NoUW }b V%j$!7 Ձ8V,1k U{Go7"D{ 𠡪%N4"z`8 vN_MT"|&{VU=ur]8 .~ Jҩ2pX34bs(\[:o/jt@3Yͣ Dű2/(}BB._2ͨ~%tY`-io=KSeղ*{viFl烪e]?@,j|,n..(`^JI>4]ƱtQui>D׼[\Nk 6r%%×-,t<Џ(Pх͔֒L'*PQKzlaw@#u%.i7!^nmofʄ XCAKQL{#৐ig6D+QIȪƶPNUl܂Z_f_Co0a!V=#%H}tA:iK]7 U}?GFD V Ć*~xvfm I2Ps$03Crs/՜5t~J4Bס(;A1tB+ߓ[<)We?<^ADhx7 e[V/e¸l,582>!E>k3Ċ#p"|.D5(rgGKT?9U7)YMe $x'U 2A˲ HĘk\D|6)TYZ<uoS}Q~7ғӄY.aDQԳ{6EYnj7[$Uu ? G_q2VzN93gشMN̄uv )>~zkfӰkG`=ޞiC]C>3^ MC5:*bq;0xUHv/ҺnkƝna=yA-|0Mbv-ةOX*M[Ն\lE (];7"lp>8P( *<.gMkrlhAUKfE o2M0OBgo,YpkϋWM]Kٿ#+&/5jx5T^x#~8 Tm'2324YR_V^(rK RmuRNlnXT[DxOERLvJREHF/;aukX!]4-o:9kGzp;:{EIvE\cOd_TO iKio?GhvBQY큨ۥ~X%gB lG\B䒺Cr<}|\R-؆23&pSJUN ws*Nb} _*إȾEmDfCWʭ:rh9d4A[({Ί*=`՞Ҧ;nh쐩rTlY[L] (uSĆe/n}|:9!< h57Dnϳ[[Fe#X@Ք)Yvw=_8at/f5Td[@ S|,r.pPg*ggLvZ^-7-Z1AZ("p%-ODp;dkiz_5d KO>ja7\=eĂdek2F CT)i߸)2&Ams=/"4`]CU8[hg ʥ /y qm1 ~>͔\f)ciPHҹoQW4rV$nh\0?(b+%FUH{Z^PBU^C`ehkMQrbr@yP"ok'S?F6=8 ‚J4R:/u(dtsS+;K uY{ЉPߙhshH6B9LDB5l6$?QeaQ6( U>˱)(sN7;NjV3Ivdz*xQpJE-):Gi..XM˩Dno8w/>@[aTBCri;N}aNЭeRwP!Y~Q'e-'+M**|INh mZq5Z4 2"e7w HO}S2IS r@1X2Tg**ZѠ'!VyHPȔMr&")h G]aukc.|z?匌9Ӧ#KUOsDV~hÀ+ݐ!cY#/:p*xo[`;>%V NH@:6qK!wڪOl!<1񒊫#x;E4͎U IxUGی՘ c1AʍC!UUXsxͶMPT>ҍc}5V0<j% >sqǟVx:۳# ^P(8:H5ba쥆*{f DIwzFj<@Z; ?hpqRĽbA$D3~frFmev%RRwvUvC,:Om-xr'v5飭Oy^2E&AW/ryMt W*-`QnPy>?seXYnW]i%ZFdc$fެ[֚@GA.F_B3VR8m H$wHpG6ۙYB/ R`jﱮLԆ &ȅ_j6*D';;OU "hf/R]}r]Q`RC|| Ɨ fɻvҟN')8G:,2y]ȑSM/UC@($2^|YUo3y%V"%5PdP7ijZ#NHy!SI-Nțm4G\ Sm\K{ ͛Ba{SGe-8YuQ-8k( y)AD7N\Sj3~tY/z蔺P厌Lb̫v 3nώ O- ud ԧ-Έqӄ uO'ޔ bYDYIiڮrP7-\-W}' '_'^Vy'NANȧ"gfy: 뺠OjTu{yi@ IBMk eҐ< x4FRv3e]|KLjĜ쐃@}Sȷ<,2h0㭂~5aD-z߳ 65{"gm IB wpo;]O?ymuuy=h"ب/ h6ՉhjHP^n!=eI|sR42j̄"= 1 эP ;KZ󆍡[qm9U;@AIOI mZ))1L0^cR;:nX.'CAXM70-.?pv+; *rYiFndY#//^nc%bJ JtQjWBrm?Ccq`dAZJ-94va9,K +Aex`יzw Z[$,2ʧ5xKElbq8 YO%N/{;XSkLz qW-7"bAp|h/44 h<\Cs7cr(6԰3]jd!cM LȦH nSTԾ#qjt$.@?X\br($TP6Xvj:}[qj&=#fbxQB:˥{HX&/`h$)+N_OM Wʉuo&+L2A_%BE#ykޅM,55j>w E$wCg 8+?A$e\ %jwo/I081<"'Ml%7PY͛)Zķ|PP l 3k4=wKQLVVVE$Z|`V݉|( FHlEdhlڅ@}®o^Ns<#VI:mU6H]#黋]S}K^.-*%O۠h#H pEO9z ]IvP@2S͟a N̷rkAN= LEu(ȋp>ٚo(VQCUٱ=tW}̓' ">9m1}OW|TD ~fl{B_ rn#3 eb1t Ȳyq)}ŧX<"J,IB[7i?&\?nr k~+J#^@[3e$VT:3 ҄7ҽ{[4zid'Y{vc[z%AR, -JxZw$cxR H2 RҏhCESx+Kʥ4DŽEq3[RRV*[hH>J&-*PKd.l'AqxDffhEMx{މcZۭKh3IBѕԕ76mg/U~qvBY>)8d4$!Ĝ^(51rY1cz!@tڗ_(V_[g>;RUPOL$ {3䶡3euDla:ޞ̄EmۜuPQc\wqjxtcĿY &Q ._S {FPz ĻejAP"MJ<|x<r~$Pc(Δ~W,l t4̀saqx]أ*ٽ=^xn42-8bv=F-~3$WR {װ R3dմ/3U!Sd4ɷC6jIÞr/חn0x~ c{rBp+݊ң, :'q [qZIF} PNrd 1B^8,9 xN3 O%i'mai/T;6"/DZ *5sU2] -x/Va%ỵִO/e-: /jZ&>#X˲fZo;,vwiy"f7^[~jʮ(J.(RYzֈ(:oZie] \E[Nc/c[חD#<*0Qw֝i4%*)y߀>1O^y%uBdL֕<*2Ŏs4C?TAMyAͤݐ818.">v/<q<2d_̙:t(".jjj׷Ӥ?Zkz)<=93rx!B޲XKK~τ!I'KRORZRvuKyů7/ A촒7NS9r" :8YK? BR1L_b9']v-?(%*l$S#GSl>uH,a 5PC®IT5CBb쯐893^E,܌1h$@<'rg=-VM4m[}z{ו>149Σ~krS]ZO:t nUT܁.@|QSjOv(=$ -6Yu׭'"֣`99L۔m r1X,nZ|/8Ix?}/?+gnKg!0@!{GjRsMOCJcw e[Lo|A:rv^K pE n %s몛{<\<>X[;GZK5XҾO *I\nvq<*8{"ˌN"8[ D򶟼÷Gw]ߣNؕ' p09xa2VH?m sEBIK66_JhȨ'1dkW ) Hӥ2u?.ˌ&oVa%I4ĺ[ƅv2M"nBV<>mGOV.2Xmdђs9p9o[A]R __֐Uͅz1 ^Y=cyjh|C) Mb) gv颵_P5 }Yx  wϟ҉ Oxx\P8V.eƹN_{QZ#FNEIR{(pQ4Eh.AO fzA 5G|r/#{][45%g)3Dnm\$c`ccf jZϘ'p`@ R9Oq6dmP0^-ԟ.g#"=r^s)aoG‡J LxZP~{lqIlDiQwjʆ~`@ܾJymߜ,Bֻ;4F_*0яOISkeN> ܊+&ڊ2χ!M?xD=gKMiơ-쬎-Mmũ'WBͲ°$GAJ1 Uj#,0[d\vy) xUYdC7ʆt38r$ p c|uf,fH%,SrY*7bon:j=\7 J_wG.'n/jlY.Hlб!Ew@MdjEUA#]~뇠v}8h SdK⨬ x*GF=`{q# VpШyE!믯o4o.jFm@ /A8XNyz25^AM€BDΓb-fPL8 =e2 BOIFj0·'u󁨪b;T<".HC,5[#a)e,{&F5w).; Ñhm%ٴCɰ8_Qnyl9f{pis/1j%eCQC휀wvFnpZuMdC!,WRbFn7AE# o< IB|fTzR-W:gp_:zT,LCAPN<$S/($&u"8^ T"HKEn JʥM ؘ,CI}޼iց\˶ت;G0ޘWQ1WUPmÿ.~rJʗ<2mW RF0݁y $END3J[LQp]k[>@|&eg(\oD [?u#\~*Ik==7$@P֙j'N@ @m95YI&7Ѱ]_ In&=$80*ze!0 oht`rׇ*,672\*ACǘMmMm,kj]/#G]ߊMTՌRºI=vCەm*dy>xțeDtر|9odbc)_h0k6Syݾȉ$2$卽)y!=ULQNjN_ab+l#!!_ iإ^>14Ԗ@) Yy/9}Hܺ #9:J&xdSu:s>fq [)S[*7su7ƒ}#_Ԟ݇;5Lw& X@ R).Gzy:Av -mQ %A1KKĭY?O3q=W} 8ܗU0Ť.'Մ,@ʠ~]tz٩95*g\|WQ'oZI2cȼ@֚bTIw>\YɫŶ(]^EVy7 sIk]rӋ㳴tZ,NݿG˰I1>v[hdd~+6ec l-"GUUΡ5%ŨqYONx!R=DV>3uFr=ںn^#&lW}R=QrG(<~U}"9@%jM=?ԠZ|Ol 2p&z))#e1Y͆HRog@!]y " B563=JѐG&P}KE?6(lQŜ[TE-FC @XV\0h)P? Ezz<ʺtKx:2[&jwd?ze~a<ټ?)V*r@!2i軙ܩsC-!=/'kAL^-.eZ R%( )^m3 #ӭ Fe %Zb/4ZO#UV~9Ntf s35 L\V_+Ai/u4~Jࣾ 5=hFS>Ic}dmLObs4џY.P!"uJfЃ?sK(͑#Kr{z+OFBiGSr.M~4t;VYVIzTW[f]lJB}E+Lv@Z w~~g }&f`}a\fዄF}1˞R:'c#T"8%/} po c]gɢI[ґeʁ (X>pVse 0gݘ7!;vcfL;`#)FlLa?囧QNVddlhWH{ҵ0Q!TQa Un@Pu'aA2Cbd D2VA# c)sQ/z6,SPCӃ5-obRHG܈Ef^;;v:/ļ}yAz/*Dߎ;;],Pg[~(^U{I+a((8¥8X~^8 \}^;k%)&fmem51qEՊ.#@dyruiXxۭ% D {7ЙavVc!Zy G{1=O!W5w,B^u1Q4zb. ׼ 7hSeLC% \&2%baIڻ{e&H ?Iuh%'K}Zg'SVP Zw:^CIV~@IPҟaFW-B}tyh'?a#W!\nhUKk=DƽGykdy jmTꉛ03(/ ʐQ9}BdM'Mkʣd&A rϥp@y:PךUt/y{&Oy-J:ʨ D/H/Cd f~@8n 93h22y$ě?j_¼ R <[$9ֹ>e6lt#u(Nj2& X.Eu GmE~N%=|&Xc99R/) NYZM.ʆP)"4$mDWs`zܕ1s$aټqB# T3?}P>4m]=*~auNO˰#c%ڃ^!A0WQ;q`ӭ[']ʨ و(zq䎅/M1!!ZL!K+)r%h-a6|D5!* L\\--IS~M\x)A@vӥ[&NeL/b(b\7Qs z>{DZGPdBjlXSYP"{I!Yz )?S/ &WUs^&eLe,d)"φKge)hz1CV%joۏN^vn'1i-f_Ѯ"4'c{<6 U5hT!8ڹ1"\ 1ڤ ;A7ۀ+yM~Y?}4=-cKD.5@yn}É[YN88lqǂ:P*n:?t&30q@Zo'JfX3&,\e(HAIɿ ,;7ZηE P]߀rZC(-KcVTv^?h\̷x\| SgmƚKSTEUg-~6UETؖlFq"c'z Jehvt{a ѻv赗"#%aGUҶ8`,j7GKP1jWx'pVڳSLj4)ӷ+v|Kkh}0oH?&,æ ̣DNl%]J ȋ&31Eڢ|IK MB̰o R*M]"ˀfnx49M n*ǐlz4S0&ޠn_޽)iH?eNKu^K{vFta<[~`#XO#`+7xѠic;E/F& ~܊ ?L5M`52Ii=뭌䋈N.{KW{ V. U!|1 ΖfF).DBKC״B ==:𔖲x(S!vaGf GPt /gd #M7,:6Vἧ=0m|6q) ocj}NoЖsLFbZL'k//k-7;_[F`~"Fi%|#ԲEuN@l9cPwTC'G5IWUb9'iG ke{(> qUWӧZl!C_g/l.'}x]׎Y)7#}#]H&N[SX|GU ˀAjW2XɀC~@T펼57\(7rcoR6))׺4h2A23[:ʕ3?H,Sj0'p>G/$rNϧ8 beA>pM`Je\b ynɋuwn#\WtZ94Ru/Y]8~s\' 1I(1]..,3uɺҪnu'GwcvsQcߙ)~<:mWt4تX=7~1Z; *%$0D.DF;\ ~k<CFX"aC!6&g ~. 4n݌[%pF~:*%Τg)68q|`XfӖ+DkœCϼ^Qh6s*aQy-\J']^oa8gջ6fэ.%3VGUΏX(&Q r\ M$X^T33Ȟ!HwFP m3;(>V?+ëaV-\ ؑpYd [S[i&ͫyMnV(Di[N[#|]8ӣ~ɳZ/i;4'WvTHzzI3:|5>O&&__˴_LKxwD[xMvt~!Pũ1A, VE~>!O XvJC4!Eq3[p<}w9E4%%K]UX4hnqD75HWPLIեly;=]*ړ$3O̺%J6_ȗIb-psY( Vbh(WtBmQ1p7b2?fN'1t~R}1bVE,QySDTj Nv·$Z#a"( ]xoO/{L?wyew.%јUD,R.by a>-0g',GeG9tzlMwsi+FC7yl=7YRCn +owwv+1Zg*;rMv-wRJ0xyUr+Z";T-҃xSz䕿eɳ-d*x"ދwُA K1>MXIMNͣo#rӪ}yKO; y̷զCԺl&'-Wlap=sK#R ] * T1(su*^,Zz]}Qxrb GA 4ʓD)S˒DV(OisoCPOG$sBF}]Rd1䉲 5N gȂ^agĢg. MSNzʷwh64BoEB!M`~x.;e,muKFz%,!Ku߲*6ȕp~lס?WZ3*6%Y= *»c=ͩ^%I rp y]vit-cA.q;H8*i+tӢ2ɦ(= x\XlfOL1ژ%3\^ǘ+:scZ.͊q LjN)ŵ@X4T z*j11 )#s/ }}(Om0WJdA+M.*Zͪ$郌Lco' 4"MV}JR+ڙmt'tS^Rj7><іH5CDj{4]]#++ԙϞvIa(<6=SK ώ.`{ YygV)(F8 s:Zn4bO*YoG/d#>]L@}% T\A.aA^r>X(kCˆe].7zytMasv9>Ѐe/_}2xtW7Wuvw]oK48˞Kᱝ 2b\B")k1⧱'*//{˃tH:i qԖ;f̥j6Ηh9=|q[s1CJ9FlBjasHYF0>;"͍Z4%7i&vYM'Uy nn`Q 74lUU-ҪF7;v%1t 7u4 D"O:^B} ]~ cXc2`"WUuZ<$F Bo?i75MR2 &x^9Ȅ͖}"`/>Yʦ즢H8Ijg!Y}|M\u"@ɷ_$Q9b32rGE&slNF9Nzj|Al3:k;W?:ibcu@kC]nK浵̭DD^ei,"vV\R1\@DPwPV"xݯcd\C$p3 b?K^hiǴ̅!ny'=)P) ֹsL_r s,p: 'rkPƻuY>3"xἩ)r{D5 .ifiΌVŁ=:$COJ >P4|ϟIv :Hy%DbV .%)J}s'0y23{"~] Hz|ŎNA#?$ {mzVۨqK^Ϣ6yB8Aq1zE32ф5Q,L6wDIJnR:p!Z'?eL) i2c!栗=o%Z8b>6A~;=6CcҔ}h udLzeJu.x}N;箓${835&2=DW;'RB/IkXjă_>wqz ~adQ QOjYk/ZkS`$96f}'3NmJj$dX/i-`OLGPp/w0%Q䍦f%`%z|!w[Cl:tvNDǏ{& aFix&%oUd 8K!i,@z7&-l, Һ}yQFcɵhӴ^Gw'= Եo.9\SNR(xpsK9"Ԩ^ g.DJE JQXC مo5wT|$bӤ (F;vN;|tqw蝣*?W6u}`v?vNri{0/]ĈB Qn$O "Pq _άYIЍu`,N,Bgׯ&Xѱ(ݔK;'LiGa?,ZCV99z{Ju ~h(f9DI}{!,f>4 k\o>/C6l]\XrV;) kӐ|@L';Expo;틊V!B= fq#rpV=$|vՁ_J4.Z;2^\.Į4APr2/~#McpT~g'g?K 9%PC Q%'%<dɤNt_6%#%x@'=N;@}unRQfv{g^{\w6~J|[F }@d~@`"dT~s'Fg,&7y^҅'<lRQZ:[0?!PS~w %7+:RK%rfōU /R`0]^Vr;m#g[ZKsUQGnI+t vM~(Eυ3пEbsF[,N:ST9d'ͧPJ;삔"1f2|v,'a1bR ݟ̉wS_GVReg!wBAا#LK{2-;Hq9q`UKrWYZj]֓mLr~By*~;;ec&IZ-HmHuLtTe fq!,,D /uH3x.3-|VZpDVN ?FGs0䣭hN+xw7Mwi]O"Y)f>"kwhU?R#Sfދ5U@L769\7PTœJ)IEÖO.oM BnPbLr%SZۖ'4ˇu#5C۪; Ij|!x8܅$X>jYkuG%:liqNH6^ut0 {tnJA#|r;; |ٱQBkU-Mh@zCͫ.9&`F@] 1vѺac =5\XcVqgP/Y/ "6xD.~yQIb.Us7Δ%lRڏ#gƍ"[g9>Lj Z f2M:P!m$44ɴС1nk,y[ÛD(uUʕ[leO)O!~$ '0t'5Lz<Ѱ@'f3SC*0}2п:2)":`^wh|TܴpW8q *H"֛,a ̷2DWIH\J菊O+"hKTl!psr.8b%Dw`Z:TmJ* b7[ @hϼt.ެP,5n-NR'-<~gvؔZ?#ah;VUޮYhb蚋faӤ3l{#G!XOfQ' 8!7q#Q~(5o2b%@AJqPm~[cɭO1v*>vgj 3RJ-wD,'QMX |x_#Gzo/Us{-S.;oNDlv5 E zHP9dsV*O rkɹ,`H lȔ1wW\SP[)hGn6y'2(˪RASB^%~]=H֐?Ey3k2LhTcFѰc\xpK0kSN3y f֚Hc z~7So_{) M!aVptn~K jÐy_gPiF׺_dX7XG&'L||I $`$גLSL[܎{wG9'!NZpE6m4]f[uO9E-2ZԚ6>&$p~~/;;NFfǩ7ͻNor&nÑ0,u|bG[j$'j[4:2ỳ"6QS-cX-֫҆T.ѓ0O R578ynj 'RpA"5-1Xwmsu JPnm%B= Īf- Kbo+ 7/%^jPWN2Pq A͖K. j>p <|̳?roǞ8TB?[NDm9 G190 x.~< | y%G&-IGwɌye*{tbp̀Ľ,0z`ۿn)M۫^מV#c8ŋ$Z 7HZ{)Xl #gjQdc}j͡{:MKFS%" aD')pt ۶=mq|)JhN-V1@2'ЄZ6']t0uJ֜Cg7"c0W ëh.'12_BEBxNorjOo* }2\z Eۢ)j-RVf|Q%>FM3){x^j%4%Zi hg^?a"o. /QH@69"mL\zKl{G,~37*IhU !.X#|)4S2fs<=A90rQ;Zc: D(wSIF|Xw|)$K)ӕQ ҳI yūēkCR5nq~R0{ߓY+Am7&~5n޿rB_18٠rBT BDg]hgiǘE?9]0sjϔA/&kPGz췴>#v$-sfQv3,!tIZ[ICzTdԩIyͤjC1{4أ͊'k!-"YU>4O90zD;7 ui^8;G_`7v^ npf+][ ϞVj]a8D@֊te[&R;2 kf$Bz s'(Ƅ Vڥ gٝMv̿-Gm@ǡb UZ@РU^mn83jzZQH]i0Ogc W*?v:jmK3w~ h9w Aт#Vak/.S 1q97|Jy#-])d}|eKG*Wri4xg*L/_e3-lή{NԮtor5,+xWl@,ZE@|={ҌM3B~bZHq`^M'&/'Bli}Eyw"Cȝ9o"lwqB#vϱn4ZM,0K-+{#?Cqܬ6Ro /!̖V^KRTĝgO y1d,#Id2OxMx_pй$b"^AL*UȏĖebGZ['~-w/~zr k{vO>`J@/bt\idPDC5![ XQJ\iA&uek팟|dqZW+@ 4;#j<;8Cq'nDsx\j<{3u;1ɰBGI{zlOry=ĵ-oɌ`؀W 'FC9IvMҦA9_--Rq<>hOA"N0t%'|ZӪRt6$'QB6E)3\yطoXV.doJ(Q|< q:cA7ٙ[7槰@w nzSxTYbznB{ %-\1! ͓g~a|g(Ske%Wޅ,IlhHǡ݂JS.9.+7+%N:?rVx&ڍ0IkǸ`5 $Ԁ'o᎐atF)}OºJ{s ž^y 'wJn($oi$ C'ZݗAJH&X ^; 5fP&GuL: 'l2!uF&KXK5̈́p~0=RAQq8p hVݺhg:0 fB}{4"E֛ޖ9-'˾A5[50Oґ [ {܀aa-ݵBIW&fJկU-խNV%vxNzՅΠ_ޑFa0!]=zmlfJ K'e놢3ܔ~VSfDFT(.ۑ3c5-IH'C8v%)6m]Hf[dÍfebsWzl;LTx19`>Dǽm] NUL.V:RLm^gsL̂WHLnWI/dD4!' ʏuf*3^~˻kMˊMB6 ؉H1cwW h6c>RpRc08`NrF|0$?qr`| g>UJ+B C2 n/݌RSF ǭX w-J\DTgvƻlc+7' Bb&LsC9]W2 9g)x>cu8[rpf>%(WQ]`Htc[hz`qjnCHW:-3t7Jh*1.?͍W" r4OBtN~ޒcyu"MK0ZWTHAx5 b~0 eʃ=]Xw`Òzߛ5/Q VE'g97IJv;jseFqdž@rK|q%O=r=HC_U41'}n" 9%-,E9vb&VZ(Bm{̤>+6Tn: EZN %Izjˊ_;IY%Dv'_qȡ5x*vc=Dm ߊ*"w0.bpu1A{C'k=ϩy(E0a@U&H^h dԭjo-@k)pP#q h8o,0cKDʹ#MKQ(j4-Q  ٲ:Û ?(T˭YU -4k}M*8rMKثg_zdvX ͘XG/MO̤[gt t#v5?`P*zT:hLQԟC3Zr~RM"o(VK]˫HXk%Nx"E07`cE_Hۼv@/"qL][&Aۊu3(z^ OSv7Gʳ_EaC 3:(TP2 ]Mix'Fr#Kv/DpO~i? \$>=;^9;Uuu )$MX{~SP?%c~h94LF?+NbNhIDr15dэM"H01?@L S_ڃk/` 6P MOU!!?u>N6LQuY>Ǭ846v~adJJò>LY"A``@Y Y-uƕDs|NG,)T}Ep+Iq]őj05L_ 6 ? fGA쾇?pA䪊6[jcj3Jga/pʩ5{zΏ=P%Gh9XrgLW 5\O-ߠr%}S݃%s;*ui.}/wH!Ų[A6@]|ژ[܇NLjMGz 6-0g|{}SlZ\D}q\l){:6aBsRR_\^Ƿ4W賈N`(~$Cru9fI[4K9wSFy.Ү  8r6騈ݳv `Dzox.-Jui`/  #CLό5f= rGh9G![X#6"%gaelPEQ38{}C"\\Ѫ< ©w@a#p,CMՃB)=Ladnu$B.v1{9b |eg{+IzKjTY!i~?䳵*SRfI88&@֐lFTއy΃N9R 14-vPV`Ӛe #[S:C&-h}겯@.oClڝ9! _H^XTO? D!2S&c@lw-cpo.ކLPo>X9#R/jmVU]Q t밨V {2|6)dn0'`x5d*YVJNXӠOΟu$9E x7Srȣ,F:<([+Tλ2x p|nlIȊA faMZ$4B*j?#j@s#u&#&˩C>ͳ  τ u%GI9ݗznwYO}V}ڹ]'͑?#a#ISO?7׈gFlQzD k&he,QRLIt((06 w2<8YZMF&LJbh+I%jXv @ v^X^y=~u] o՜-Xs7ǹKYnkJ$UȘGSOyF}U=aY]/AzF7K{ۭWe r7a^-gHMrt}< 6|d^ft砤 ykQOL'5{Ⱥ>LĿAtofkx;DpS|!FH@R8_hkP tSH( 蒳F/ÞQҾa8XԤ\܀Gkܡ=tse5y_8Cƹ>^"P |<^a! #2@Gx sNAdc5ll|/䪔NzguަN -fiLfB>\nxcN%XҶ`?_gu n?z~{d J$9yZR!^XV9Iם҆fd e$jܾ2SqB5?Mk2KPwTrTzY /RYLWf|-;VDk od#"SDF#O@q#}/A[X!mz L}ݒuqhaŷåM@R<%C6& P$*ЋYu0+ 9xMa4O}: +<D3f_7{*'P^ 'T값6 H{~ռH֮%Up]~nJp@Tn}Fs L@,kd"A@l9RI|P+b."{4-PaeȲ)aba}Gv+?>tI8i]-b v&SЋ ::eƕRbi8/$FjmN9)V6d"_)pSz%B*hV+8j:3|i6oD=7`^0*V-m5Nkp`YUИ'Rsp52B+^ҾdD|@ˆ,WV] tXui((sGl'#queh;Asjhi Y!HБ>׳1'l6iZWgW&ITͻ1C3`=nM?a'#~|6Cӿ\ˎ13zn;(Q5v|Cك+5$T x,aŅNhJː:?p"{yNJdaa ҚcPV#k^ԛ7Bp|\7)\(,A:bUy'dt'+l$g;2 >MslEH.66/YUFpH4] yy}i(,_oXA9 T]7дzM$2[j7}w4`qݕQq6`BȎd}{5ކlyrSv^ՄY(/s%q2 VN& re .c9 0sŲa2RZ3rx:raaԆo_'{k۾]X ^ŒtAq65Ƚbe+4Cꋚڛ&)rFӔWV#I >!G_΃0$ðpmY-j #nCb!_4zpKdV^5+Jӽi**1W9Ф?',!,e *ho%z**A-SJ)ȢC*a(=7j_ěe Јdk=&>gbh)s(mN9;C e[+фBPq: jȰʌ)fǥO.N3;ˢՒ&xFGIJg):\᠀L8bPovtE`NkyHw'[{SnO+Ř@%,ÉJL%zDP4,Jo{zsgb)V\i'r6и~FH̘hm@;'+hm–j&E1n'~`xT9ڤu9fm-UJοck 1)%!?*":YTݏq/[ c7;+>P*4uUzA}\&VsV#6&S$M0k6p9r$`;+pnZ`j 4$Ϝ9"`fdJUNFpkQ)dSwsm^z[$Rirg+nE9#ց 1H*3HTK(#JfV9/jYCΕ^I{gL>,%|GR-@V y!!3,7˹=ˁGw΋_q#4i8%ANQ16F_Y *A\ڷ->) ^D#;Nm6s[qPpɃn0tE4yB .U~ê 4Fg w((c2E(2ŪͷFt74aҌr\H K8G/erFo FciU?֕:$E2J1إ&0;1("yMp~pgBn#ޟ{Q%ZR 1lZ%G 0?LܓEZO w26Bk|"\_T J@aK ۔8|R#4*H\XkQQNνn~wtsdL(*BM& vp{/hDDWxh/qP }ң*Jgsһcs$&.[7vu )tO M0=7HjTޫ`F%{[18o?MG/+P6!hL$_պInn;JeOFj 08 u&&^8A+7N|:x乗<ݥba&m΀V詎|';JOޒo .؄:t:Ts]$TO];sJЭXAVop}&x7#[]5i$d`g*$pX*?Ө`pQȴB?hGIdiظq' qӟ|4aM<bM2P[@t"pHY ;eX#JULi [iܰaGuάh{6k4Z@H#.K̔fSXi4'fZ#S" `GOpr_.[nKdOz[K-KUNr#=@ [ef>mw"eLTQ=N;JU'W|nR6+ƏYɓ')WyjY(wN'6ѳ{PV>cfK ȓc^8i |mgq&p\a$ )zNl/ O,mS2lBlUZMΧK=Г(@45Kuc%Uˋj+)DueOɘ2ĩy=~vIpA@D%0i tarHWJB? *df,cuzMJA# ƙGRwGlEA]9D;;ί/[9iy*H}ٹg*yf ߈wpbOPq-oy7Hhܖ:t:<'Њ@zSE%p ӭ&'oq䧻a9s]s=}f&z#c m) 4UzM#hDj&Ѧ5rd{8St:ciă}Ft 7rg+9GZaM%;f8)%|9 Xz}{6޿$#},4 9=m (mf7bLM? 8a`!lpy TI8(DMK 2fWle DQ~&KDK6Kwc* ~S \>_fJCc!Y.rƻs3VE(È6k5)pP&:}}`{%r6 ,73ۋ"u]T[w09XsMha"=5HC<0کcQ{meLD\f* XڒאU2Еd˦R2n223H|{?j!!@n[HD z"f"n?pg2{0 Čj[f@˶ i<pw!ӡy,Vk"0Ah:k(㾡'}R,HUCkݨ?iQl4_Yo:og V?[Ja %OlYLO?*uJ4$NC ƥI #%1ldhlܵ0i\%5Q!ሏo,Nt7tnSZcbٗPq@J;6CegF$O['a끆93Kx, ~p]"y&"&QѵKrO^y\ G|zS ůE(d#eC鴛/] Ev*7`?/9ӂRu $2k h/}To8W]Cs >]Z.aT)[;I $xؽ,"f/0eϾSm/S 3Js>wj߅M}f&!Il 7yLA`RZX Zpz(UwP*efҲ,ObmˌܬNF]}D=&[0:pR1C@wu <tES|L>ŗJ8% Qp`{uϒ"O̖!u# ͍) G~/+i7|(۵uuik{aNK"ScN@eP:@P8}GggyW IgbKng\Ll^=A~Rdt,O;hTN|bC}TwE%̔|plEÛ6F=>DB&E(>/ 3#uM"Ag qBf. WIE58Tޕ*ab%p/Ȅ7kRm)jӵ2D Ye_Ac^>/ze }lxk̠WWS5B{;#ȱA.vq=M#ʐ|IrAQ3^tq".[ȃ#s&ROԓDM+DvOX#X+a''x>֩iz*`ëG@D^a s5-Su6 /Excɩj~ԜNjԇxW߉i5GB%E"5? )>tp ׬0/m /0Oh&E9;kunpa̜~׌rA)])kF% A I)N?\)#.~ՕqGA=%pm=G_==7g݅=_{4돈ph덷bl}p@V|8D %<al qccCHmIoy)V{tÍ(VĭIHU. M&7-ƾx9STp T!o}!2KE̻ p,e)r,(HBSZa$}/cDwUr-JcK<. ݷu[ږvPlB0],W\V;6 RX $az qޝ D \Sd9#h g"'־$F\݅4+ݕ)eǾq1&]/GGj5`_DK{MHVX]5ʬq`٧ۊi,}!|l2Jd/8&{%!4kȾ*% F7H*EP>oD'0$ pE8iwK iș` r`=@W-0‘q/칺 n8UU\w ;#[F~4ڊX+] ",s'2*s#^E8?\THF 򛫥ΞR=Rw`yhC鍺\Py4"8OD{4@:p]9!'eK#K.q4W;iP dK jdCJ'Ojt{rR:Lfp+̫l9=d`% $MN~!N%TWHdN}r=x妏+<֯Fῇ EKi~Vf\evAE-*r@ ̳;,/}[*ib3*\ɣV|D6*΄|'ΔF X [D8@OߙoT$L RuٳfjE/Ǐi,5* [S#4Ibܰ~ !4B֘X͑vaEn/:no )暷j<ϘfB #չ廻'J2JċS 4zD3?J== divލ !\ j,P5 .4(a t<)5?\Ma V=|ӎ٘S縇Ueh3`n8B!VdV86S?MKGJdCe#:;;ץinTXzF>у"fJ ,Hjc ߀< 苰dg ՔGOeyX28wSadѫOmehnꌀMhNAZ=s5#q;2-+f%W+832ꯅ0뭲8SpOp>bHR,.>D?Xz6:ù7s2gpH7t{Ԫ!qjW!朝֩t*=ôVӞ=#&^(;/T(une&pq1 awofyEZw`a#J|5mp0ZJ [󯊭2aSr}oĴ: űZz_;A^DE.$zVe- KQ*G1SyC[E25 =?r3.3g5AdDƟ0AX>!E("bٸհ7oAmmU08DP޿GI&ۺ5cS/x0/9?FE, = ?Cƫ潼0<+k밉g}\ԀסxM RvԆxmAE!ց?1R7Rb̫[<AW n-֡V)IoHiĽcA`{\gnp. cc=wl90"uvz2TJOYza)9(^.|<'Y0ۦ}$@"OPCyۼ>\:P "~JO].K!ۉrr{Qz({ BZ4/ٌ2$M46GDtθOs-jMK1M -)_cO v"M&\tUP^;E$J߹苆n}iik;+_V@5 R>ܘӨyGv֝r p*a#OEgȒ&G?B_,pt^ETx8 '<n.Ɛ*M9ps{ )PNa_7|S\C48_It2!Qub\G%{w<osfPQuZHk7q@*6zq ݲ-AT+@=Cvťv`_CObz4׆U58<FS RJp$f6  AU8G i8T98woNac;0{ xksm#){nM$F ǎ.*uHz$reW1oP b^ ~ʚSW;x>qUWfA?gVi#WzdJ2t!Ă_E@ЧkΙ-b`|b/yCR1$ec-`aFTcJcpH=6SFR8>S殓modv.Ei0%jjWg<E h$/''{^aX~tGt4FM/% $@Bx"2{;lOEi_/kN`2Zzn=cF~ѷ"pu 2e ޜ"s9y?Pa l$I, | #n^cM,KKx9@:n'PX ik%*(Pq$ZB]xm]@9)#o{w;hQM,D+Cٔ ][W@" s"V>B(Ik'֢Əc>=1{uFcI+M^1\B;XldR1 %,%-yan7P3g?t;GӄQxe$oI%¶4L +{>ѓ=8?I *)z[2h)KkNLêI-YVXv:Ȅ)>]=2r6π^c1ml{('r~;_LR?fɲڙyNxm`tqd/:G۬iq_!(#iTc}P@%|]h;B,/w>oS=(Mڤ0D*,$L / Qnus+LbX)i/%ou:!$Pz.uS'K-sj<2$'ieƳl--~"8rQVƫ7B\6[V2Dft\G $O u;vlnc-~jk8£::KS")+\В'Ȍ<۽F5"I?]eפJ>آ@~c̹,q`d(F 9tu!Nzbٙ-dC*29gCΖ^AYW睃 {~P;p i9=*BJ*Sqgfbm( 0y?eGۥ"[9z"nxw53#GrAFVA#z% Ws$tԗ~c8\#ˀ56iFGH=7߰@m.DAq耎Eb'on #"5S.n<\/Z_I4Oj`Gɇ2 FyP"j5@ @?rzחw)s|ŒϾSq#T47&MGu`WeEw6m%%B}~'hh;0iʾgŏhr+yaPJL,Wt>H)X8׳~4Sztd'"?wŒؙ'VQ^wwbsR|ۜ1a V0j]vN6_2V 98C5Gc-*;ؓ[+؄޵!a;_qHP ~|<'c`dJ>ośdzI?'m@iѢ*Y7-/;HJқxѭ&/4eP-?#sz@q%rfΏ/^T=ozeOr*LfҘ%V۫ B/^O77rHGk3-}E)Я(SNx%"ͼLJ#MA)hAfʖ(w̒JiFPrՑe]_8!FU> ^ye~rϵ A7Sdg3keM\o#Lp\$C,\?1!rcv";j˃W-9F_#|4LSHOQMP4C/հ-v$vC x"`}a媞 z4L?vO\|kn[q]p1uz~~!k.>lptFʰIӌ'ҙ7ۘ䟮tC8ޠ>aZ#'!W@u"VESa6Ù1X)y9zRdw=%+_0C_o‘Giyk@Xjeէ03ɗOa^ " mn~tb)(j|i^įdX=5/#q5^]?qyrNp<ID^,аٌ.M6'Y?`k zZjOCSާ5Ȇ^v}C|hd{@`nS*)aM+yQw{-l"Ff . !_;Y09RGZy_>(1P^,R}F;M +Ʃ^Cz;6& 8B4 󬥍z\csѢ'yG$̏;GZI'j: zk}C#]*CjA0\}<%/);ɘgw3 E g=5^ي,;S[N{90IJZVb|u>ko"š?I8qb66֗pj)M8\./H,Lb_PS1'zcw5o aWki_ҪX3?E^{%vh]LDטENHa%*}K >Pl5VIt c lڄ(-q%,"ZQ8Zy?IXA5h6qa. bSC{!m5+6'o 0ȩЎWJcqSTX>?,7bLu3dZmLLn\~s5mb`t9|Ъ$zj{rN{AU{ H5fN-W48Iv6"M#ГV+t $V<:׆MbEQDz4yZh{@/ |f $!b<5o86f*l19(uϑrplѥwz]I;ĸ@@9w3LÍ`#+*o#~aK$I-59b*V(1)lX>X /2eTώ+z{ǚE i?U: مMny0⼂yߝc&y4S'[)SEΫ U!# {a \߳9ud #©(9#5>9DW)ɦ .kԶ 5v zO&Ynj~:mZY&}"<32}(M !2 /,(Q/YT謕.vUz}_vl"$wY MM9!U8D/Z *Σљ{DV"Ϯ//oq1+X>=-&/oBp*4ePX\C"N*Rޓ,#$)uCѐgûc Q:xv@d#B !Q3&XP,4C֯?ܣ%ywpñw$Tc zI,dVnW6ӜL}D\ G3[l1݁EUYH5VӼvf{f^T Ӳh5S;y#ƸxT)/yоg14ThZ/JpJKa'/gtȓ}/G,*_7uYGqY9e )ifY~Z HKӚ,m6x+6DLS{#zv:ϹШ7S5M-Qn^ I bn.:Z;?38bW, NF!ߡ(շHûc<2c.:s&HZWV%BȽ* L+B@WZyt#14x,6xK^NkbOf-S! w̘z6t|=+fp[֭KRO~u@OT %rn~gGw]熔s`jf;k|"C^?4yoSbCTn;J՟~fIճ>~^z +{(&XĿ^ǭ1cM7Փ^TOVP Uu8JS*`gC$]CBpK=gH~ֽ K.Ĉ71F11y6w{vš,)B'ZRD⢾Vv86}9&vpŠB/XfCbۄ(d\b.xһR*hGNuc +cT{+_5pjj@W*$,e;QIc@wӑxݏ-ࢪxmK:13 zb!&ʁfqm?)lt -zl`ck ѡ01_zQFQWSHOe\:X{z]S?^QG|Vb-l)'Q?A: s\ID+wh|0ݱz\y64 >D@NB GU؂DlR <~Q{}QjZ|M?H z Ghүf##2z!݅q#bGv\V#Y]hf-)5CVtɥ^&Y*VH`]+ 7itœF<3}IJY^htHb X717W=x޻m!6hhb/GD]v{ٙ/ rL}/fݸUvydH`s97D ,H惟㫤/9Jjd}c|/MDq58gHԒh٤HA&JfmVuc0XLQlR K|kC6 "].~[E<2%Ë2\8lzj4}M=;ޓR&)Yx}K4sM|ȧ+[ ,€ˇ!P9MHz.t;='^nv~B00zNȈ@`[{P)zVLϵQPp? ΢GΥ(3qf'IsY =}_- Sb\ obt8 'yZ~XV Q'4=Inca=d<`Ӓ5p,ef쨡5 O{}mSqȏjK_ ؘ6u$tҔŨLzw bүؾ s44_i ^9tsh'j0B*Ʃ2eĿ$cB!Ts})i/aTA* bėV&0dzNX[AϷf怸Sw!Zb~c~N̻%   >JPִaEȽv;î2Q3Jځ`aɥ8ZHJV f{0"<5eE5ol"#O%WL[G%o >STCDkG;d\,b X `pH\iځ)vQqGW~kh Xp?Cl<Эl32=E5x67S9yRM{iϳ$$~dnUA wxRMn.˯$4X1e".47;Xwab>XuCY Mk?ml ؙU8jf@X2V#?T>^ÉJ \dlv' AYilz+;Kzz9j4cz_=21p#ь9rނAaBZP퉒q[7a[wY!1Ƣ8hX2\泗_!KJ]'] D -\y܍fe+WMYX5]%q\<t]Sǻ3f\O/bn 5s͓X3Ш3]B}0߫B ,$#\<Nt-*2;wݩL: >-O^ޤ`j+D3Ƣfc/0QnB[yk0u-%#Y"^S3N1>͚شx()qt=ŗ$)766YTؿ]A&rTcNwX؍Ehu=1| Xc)? 2INA'`Љo^t0d(0:D\z&c.j֞'k03GĘ-c0B'(5mIIߙJ")'~:3^?k'';;VCIHCrM!0?8'r)]Q E2A5UǺ6zZ~rWu`Ku.Pc7DB\TzQ޺^ȝk=ئT)jiьc!/x Pd\h.k0לnd&眃2V7Dbaxگwau[1|IskL-?AGݽ!k& II7M&i_g$ګO^'#@H J_B Ӂ[ʓ 1 VԘQ-a =uj (AiΣ*kaU'lhv_0"ix"'v *Mrᇃ778۷V]sBbYn}RnC0\7&%}vY V5ZQ Whᄃk0gCo.RpB0gqcg`FżPfƵ%l5}?+`_ħ7/m3p9BšSsv#A?Y$ګ+X#PxI v2Eua#@/ yf;gr Q!nl8 x0>)6/A뼙=1T?sekfv33x7&*Z=wbx]~sp{euJUùh4}"yg*[~eYZz O st ]/iu)wyb 2ݢU@ \>,\aVuO,%ÇTaK[G#?=. ?l1!Ԡ7D>I;rQG+Q{ Pxܧ6@*$R dr۩| 9<2_Gt<#`XN@7 ަRoډo)Dn,YjV\ď2IȦ_à 5{6h`ŧRkO6|ؔ"g*gb0J:iLvOV*]z/$vЙ ˰wC|ׇam3|~77ߵ~_]A'|F)]7q'JBN#;nɻ2P&r:Է &{ֲyՙdڐ`UUѹgwm ߤV̄-|sN.)XZ̢7l%]%F5I_eq%j}Puk3\x]JsЏ NtA?+5ji"L./gco헇8*E-a# 'L'|Pu7^&!PC6&"D -B^#-H*V18:F}eͤ8# bljo@,\ Rm`Ripd3=+*3XJ!:ě2F"%4&)[t~r9FG]⹶%MPGm4Xנ HK`/ `=7ݟsRfVr&$FJ"ժ̴ H{PͩC2Fra{!Jx߭͢LM|!B@u?rTB`N noAjbޒN#Y\#l8'FJ9Qonj2C}c!.0zMN8*U:*9gQ@%Z>;p$Tc;]vi/,yA:3~da]zBM܌BgJHlGjP.pX "XJe`'oޖ$6^ >7rvFqEJvp-'CO8h WdH:j7&HHJE,ct*, vSަHQv:Vۨ}u20LJhe0~r /xݢ NޢYWuhT .0_ *B>Mt0D5{6͵y ޏG6I-F:`ZNrL$օ]-?2(lSHZ)D/|[?;͸V~i]"r#vVUOV2=C^d G`x%|`k)D#LhV,sI^S`~u/F _HAЅLOFJ׸3"O%m9DՓ ո$)ۡLč#'{z^2X(]v[(ia ߇ڋ аyfAQ퓿E@o:4${XI|U K-Az5/7xˀcw{4 Gy8jTnR$:h *)+gۅqZQ(L3oGXw D[)j"n.9\f4:C NPu2M0ӻ'K/$KN ӄ~ pvNCzʐ !Jh`(64`,I$E-[@3>eæ9fsӣB՝=|=A}~Կ0p F>O-eb*PC osvbmSn#x.23 5q<d$IYBcLKb P7yU(5D>>|={V[>ØAs:uPҘla}A _8ACY`0@;hak hBg6IEj{0K,ZA&aGl%&P7 8}сoG&W}ZOW@4f~gkx`׺5.?[QT t2nv;G2-zѡ9 U9]d}w6V zUӕ ] |އHrLO(K:n$PY`|=@ &*{?VKk !wB+mokTrFh>C~XD gf4 Is`.Fv#gJc-Y0#lP<}a Βl2^^&3lQp!(uadc%Rb,9i d AVKF[˄K].ŋhwi 2xgFD^>ʣR*%PvY40<<*NPU۽H3yDF/D\6m /(TPcE /gSZjO󞙩|@%x=XO,o ll}F^JEeH $* %xJar,_`]n'@Pc9 S?P…5K:Ax|.l`T_`r,LIOǏrjҥ}rU"kX!SW(!e Gc#g[$A$LPL $iFo6ilB+vq@{t%Kst*0an;;+%~$!r)Ip{rdjd֭e6:J,(zDUJJz6el#D{D5\0"*ߏ%?j[zQn SKkѹd&G-0)%nw׊o.l:SNFBc7k~6P"q+YaQ'0M\sCEbU?hӓ1Zѓ:d_,]M[^jyYx"}*}zj=fAtO70]a_kVY6vl/pF=v9UFʀJv}nO n1p(U$mY 2fF0P)71`j]<"hB;7&0kk  1̋6ۨ@pm5팖Bl7L z?||k0с%+;H"&*FD3uQr_(i\i`dɨuievk)T|Hkבnz^െ:a_$SL0׶c (5(JU[tsZT = q(f5d:8ԻX쨬G&ڭZ&PhPQ?ǙEA拙 8Dڽs+/0KPQ|DɂNV6Ww|WZ@c|HtѷdW`IWJJe4F~ ^R(s\"<$,X/ /%?o>'˪#knmRi#c|d5?iȘGmc_QazfK{|YKY.Qm:hkZF8. V l}NDlC͐g xh !OZ֡(=ɔ @F"0aѡf*x zpzؤ(oks9^(ځ?wlOܢ榚qܿ97$ܩ?q~]))זrٌxftشҹ )RF-MSnqq^#lUgk2qGT,Fi^_-K]TK (WdGGgJ) p#"l40M'5RdAnjb;]Eˣ6P;X!wğպ Ƞ^ޱ2[3'Dމ`@*̬,>ZKB@6 D50ʈgo$ y"$;_c]{0:j7> I(Ўh fGlWb:'Y2;a^W:ഠe{;iQ 9N{,tz;M8˚:WNݥ4DvЧ̆RFР& cRb߉؞SG ig67 䎋Qx>?kDf-e.&ɶe( N,#jىMwt5pQْoE /R|L3@ 9V*p߷uǸ3;*U!VbQr7uX˕9Qw 6 @f!}D_+S0c\}AŨ4)dD;(Nn|$_%OќcQW KI|xjvA-#2I5Y|{$DAXMWHu0#VC>[aV/tXk?(A9md!伌7Rb T , |kH.t)k*\o*ls`uʚ )4wgΉ? Jq$ |H&82y0n-jE̊ԫ<D§kdߵC UAZtWl~g3\H֥G[p/:p\`niGf{e<Rܞz>^-?'3Pך)n&̛_RGh;l[e!3G<@X#LBLvBhLDeODeKP[ T_eJ$Si!ZiV; c*raz\=.PTZcL_1gSjGoe v y ZW([llAGOf&]|&gz); ÇTwTi0RXDgڟɴ-LqC?V'x5Y^QtD$K@ʡt @'=y/\y筳P\hFx7ft#vҕzeG?'a/x!hdu} FSg$#iNlii&_X`2c׍J@HeY'y&3@R5?ĸ9RΌGlFZ~0J`A*(W.Gz+8>,A1f|UVTS%',U@Z>7{##5#obgmGS27:K- LVI+lX]& ٭s-NF0sTg¥^+cFH`! -v\+f_ w Hr֎'>@ɝW :q|i]'ŕY?5/j}*_l`d$2~NJ)gӳ-v槳ܬTt7w-V=+q ħZAUar|Nfo+ix! Nl buBъ$@壒IKn/)Ys&ޟh n{VF'Di*qaܫK% xhp~&]9!:'rB>E:efRq]]WJMI,=lJ4f|+1No2ۃSz!WqZ7bC "zRK2]mgYO/TjǠ FU~yeMDKKW:-n\30=JG2Qsi]|):8)27 + J˘qo{|FZmh!쟿[uNq3z 5^fd)*REYy\tFV.T }CJ=f'q$_EˢGD'䨔k(K/IMb-8ϩ:o DbSWlScYJjrehUEM+#uL꘹qݛtmD^|ݥ"0\rԜhG>c&ŰIkXȪ&DMeX^qVÁnr>/;v}w MakijT.g.;DT]MXb7trKsYQ񃪞5G,7E~Q2}qXmNnšJ7L+6DCKo݊/n[2\-D{,֨XYvu7:Wmw(rn k.9m/8KF3 6j *am'!IHem9PЄQBsx񫦹)䢘]p],abO(QPFs 4cmvs r*@ՋfDON aWPT[CɑPT[1oc|{;8bSN,POZRDkpFȔX߂yAs# nDl݂ F+bFƇ9kA *.Lm/ K39SBߠ~+ւ$-#e#٢.]ꨅ8^që{Qer|J SLvH_ij:]ױI1(2NKW*ғ䩂aJpq^"NK[ۆ#Fφ]X)?f#^/1}'=6$YySE^ a{]  PVٞw ҥW4[[AmCHZ46Ccqϱ Cqkro"#}Pag!,G ɉ+-("Zʐ"gNnY}ZնLQ.CWQui.SM \9; ZQ  w?h%I$5$'TݯuL^k?=md96/ @d-`o*;#HMiS j*0͆v']lPQ>.qdnڽ~?W-PQ\fxIh] @.u3F Tʥ'D\=,qA#PIIʲ,۱m-40K(I۽ۃ(s KөGå%+OhWSgkѝ`wSDT R縩0_sai *D {":S !hOO&]~.7z1mZɴy&E>.'LLr`0^E#Gzໆ.A̰BC ,t͙:] T\tBI&;K?9~ZuNk^zO %RW]ag,ZKW4I<1OUtmb'yJU2{],j鮯s%5,*@tžK\f\ j2E%;;o`gPT !0 NW_ә٫0DP3^F O4P"ep]~ٓ&Y9(ds;J\0)uȄ:C; ;%P|cn;wc|HqBI'/YJvGk!̼\W(;Z1ӵ5h&ke=3S|x X>Vcԅ16\(+;6$Le6RTLHWq dϺX ,Ylp>..Dȵ|ԁ s%~u4b ~ ?pNZ1+uw:TQPB'_4ke-V[*v̄XC2y46Ϊ@b{ G 6ɇLV^K[.Z5ֆ@4 ugMoBAI7PW(qq9s桻O&eVlr9RWv;ni݇*;Yw6]i|VPUv'뛡ʈ@5](խ'/;M[:/i<4g1ޛpaٰxn|L9X=_?ZztT+z$ч{K٦&1@:fn> =s$N۰6v=}>O!mo:s6J«8n԰N@r=H}?wouCڅ٠Lv%1v1Jq4nC}5-~-7 ;UZI 0" Vmi;T+rDUH犨G+܈8RgnZsZ?YviCfpQ'`#HF5Wm)Jsρ Z /H&Y6ΦpF% x_ƞs+rw+;,='XYɧ;z'g烟 77ĸu+ S<36ryN77mʇ|N[ pIVkX [O!A9~&~6B#md'73ZAߌL$wav@Yj[̉`"Y6ЕwVŮZ?4)#/FZ-j㵅f w`W۪})>j|,gL(} mO i'DtN⮷ֵj;SkL6vոkUe9FOJV+ѯq,ȭ 1*8 &-@%M{S0@d]ŭ81&Z 7K }(,>FN쀳060q?ů ;%b* |E WH7ԁ},Ni_1_*Z~p $0>!{4o& K%wʟaɷoiq!?ؓ)c%D-Uy!“*UG, U08 (y]9MR1q\t 5}@ln,t=aH 9A\GW;ФWN.g?KV؋[٘m-dC|¹˥$F]fؖHGR,bZ.*k1uS{] JcMn،D,28Acc& Ţ r4Xü/mŵ֡\՛A2oxKOP%)PēojZK5-*MƩ3l~0E͗ ׆QK 2m5c tub#tO\چ%H%*R`xF;g±)9jڣ[K`џT8s|8wXGŎ1abċ~:&7zN̙&@2}c6mؘF$THK0A]Q8 4BfY3WhX `uD,Rںc@ KdU&rF8ES,tKRLU5z9?bpB.UofN̔= a^ߘtn*jK/St3kwe^7`<VwX/{d' Ddr~1`q-i(%Qg3kCSǟ]c4"8&׌\4r>HK\$c($.9*ۙlƆȤ =ϲLF*2)ո"ILBEGX2!_fh,Cb֧ٯS'-&$/1t /,л_bᙧE`s'x+N@yUtgR%ztmdЇ↥ǤZ#pw/"02ЕxH/d\}r77y=-Tl0^g"X)͗"S@mcT}0)^Vc~v?\$.b9'%b@Uci>oc:}=R֠M0񳀮|7F|k1p=bf'AuOcTϡAVY%UxrΎNoqX_+2,"_*P>mJg^W' dqzi:Q!_X?|thY#L3Met1|6RW;}ee甑$ٜv\Ll8`c3 *D 9̨3>?*<fo RHf=Nyw{XPU!;5l5a\;Հ/gD6?6zTD}8j1MNJ--=zqz/!n_^vPm{ m|g1M[M3q Ewnn$ Сytqb,+nAA$UG#|>6AS|GjθPOgo+WUWom?_N+,ƜDzfT0 uGⴢu&cdGo}a|gdR[|R%O!2 ЍT{Z`U?ody&$!|MJ{wRilsuGE,l[az倠4EK ~Ig6}@f-//#?!KJCSuvGdYm%y#`u $P-ƛ6Bfc#2AD<:|[|RrcSUTbL׎^[>w|jvNj!W©UًSX[,߆[q0vXltdW`u02Ӗ`ʔD#cq7D>(Z{NF mЈJ(p/U{}/دZD'l]=~#)qmM彎LUq1_>_p%`RBW5<szٺrDwu&_C] ay%{)aBRN ;YT.DJ"yوWF#ZlNE6>u nukĺ{]> £J; v&HfcV]i22|\ʸ ʁ/V;~egH& 5RW|heˍZ8g M/d2\wqHZ8/zZJ[¯P2jEEթɜցXr xKZ{%V^ifCXEp2hˀKld%P~ 8{ `m6ۭ_~( a֧-${z2ZZYpK!-?ȎXc=W3uM!s {Ph+OhaA`WWf1btC%%C z.W%eL_v:e䠐ozrbSC`Sj2e0gN0.wW}$ɽc5%ugUr"2-YOÛ4I[O=U,dVrHM),P-rֻ`1\93Sݗ٬nG)&Mޅ~UuԛHbm٬B"wus])VMc_?=Z#Ƨ AfA&*i)<Hj``1NYԨx\_-nEvOHP>`5R  k㘖?iO`|Tu(حV$Y>uxw\mC7g< Oh`gq!)- KB5Znnx4u؉( gӬx7`/txU_4 {TbòRX?smNwȌ}*@' S -+vj2 L9 lpQ6(&U:> e|A+hPnՒ0SG-+dL|m6y4՘FemmJtuR>`e:H}o^DYoZCI~*7^nY|i|F)惠9b&FkQ Ç!^bR,bevdM3yB;-64Mە([Tk `c0*l)d?BG 0 ɶ>ʏ̪\0O c1=Н/UB9c!(:'p]`WOG&  phHVe9)HwQHuCjYCH`/0 wBNs2`vҬ=6荿XHA&"}}lmFK$XHnڏG?φ Sz|!a됕`ojƻ}>%;[jSF6M F8U%MH&(_)h-f)4[ffd([P7sY(uNH8Zb61cjH~hPt;i52Ads֭U%{&Uc4y;zz%6܎n.p0b9x zpKιw$7jPRI6[?y씠yދJi3m/*L!TUH6m`{c_;rzǣ uVv]UU :Y^KSU5X5Gl ʩXw3]5d;qs"lsW5jG%|0$G# *$}cx`H: ^XIR4;ms8ۊR3o AVRS̈́Dje5B+pBCf,@J@vږTs2A?^}aH3V Up Ke&3Omwd'}K1R0b8YIH8tC DP!vl\;rfHN{-K;y#m_Ox{C4Ax=)=>֑.͟f |J)O_c_v#;T7:/u-i΁x\ 1'wq=s 쀩^Z.Qf ùպ.:glI?HaȈ޽vڄ59^$m>Jf>5>s~釆fYդ2?@6p[-&I\v ׼B^hD&S|<1Dܘ"I}Nbc_+ȫ6btH%n[ĊXd*%gwmAZXZ|{pE@vej֒[ĈrѱiU*]D#plE-KD"mn(j@3ze6{GDfY5ߕcI*m'*BƝ+A͗i/ƢY0 %v|覔: ;g;w,TM6j OQNeV ^'aH}kr}eLRjR@hRy}V̲*?M )Cnó|c.PN#f}믚,oV"d;P[g8.I=|E!Ex#3A!so@N=/V~EP:";'R~khyY;\;‹_13 zB簫1]6Dܕ~o642kek_S7sHvLZ$w@Z"HiY+wBG>&J۰R4iNrbFZgLeg"i$ړf^¢Ƽ %4 d"8ݔq:yAVsnde; @F16Aõёcrq,~ؑk*HQiX7vTe 4r¤n=N=RCǘVi5 2'qė:_x{y.7LJ7,3>6̨H~M34O&ߒAI2FSYj$P,@L40Hk9R\Im(1Y8c¿}ƻCO \+| ^E"HqohP_@:}TKW"ɿq f|q{]->e|$L6̽ DP>yZJ^ٸ  o%G_#Jg;eqC]re] :kI'ǹ1Pv6Wӑ:qc. ހһV֮Z-VW&m;8 FI ȺQ|Kw.>\cLED9U}2YC D'= 8 t2 `A}&14ôomh FBܾ8as<&) ?)6w*ېSŃB{w YuYE~7ߞtGVV0x CEmLk2zۢ$̽vST[kWrtL<6kϠQ7sZ9Q9JAN7‘v\b:;ӭDpw E)]F};ܒ6TA[KF7^|iKd-ViVuy^]?3 "B4M*3%fqS̞cg{yD8(b0l>l1:zbs]fOKR˘@O)BK9KMLW/!LX2#B;I>@RGYEgDsC{L=R J>S}%pu6E`#ETlęvT)sЬjMp< 0jqPeÔ9чKɪm < {lcȜ3/ơe9r10B#riudwf1h R5L MI pj|sW2|O$U$ =aϵvn#;*7 YTvHtu']SNT .RlNRI s^/Q 1i}u~j0\H7ҫa 2l3#Icz/lB_r8~>JEgkuJuE)+Y#H7O!ۀ:>X p?3x;|}loB>Mعɍi"w,9NNEY뿫hUua;"N@Cҡ4ۇ0co,M8X ৪ajF xh$> }0,"_S9M/A?Vs0 4WL+c[]SH1WP1yBQnl A`&{V(*MB(ndd«!Vi3tb t+&^:,i8CwN.ڒ54Yv(su-P)\b<#aaKbs}iJ6|T{ʊNټ]3(4ќc {-~ 1;Б%+kG˗|G3J=x}6fН4 UBQ֜̀?aghߎFzO^O88]*%Z{5m?w})ĵ+S;|kRy8`0:^&؝O%'4:oQԐ0d``kwl^o)4T-KߺCi EX (zQc 7Ӂi Bq#E.ߚmV6. 54u'VGxr A;8ڻ?.py J }þl66 ;Yɩ\cϾ _w<|f9XW屋]g8qgɄ&צk+#"@ A#F h;ʩI?mP~[32׷: AFODN7:V^I4 *г ELھH 0GڜOB2+;TVM0i\|}ΔCSlNIWdi:I76Hm/X jeT - 5˜M^=(%1 O)i$7)}l1=X=qp%9{N-LTg^{hrGX&0lӭ2z{Uq)KXa3yohP Pz_Z펃I/gY/Mg{ j0l r{u(g}|"ۡEQ솩%~<H9XuL]5񳈖ڵ7'4<8}82{{d8IRߛFQlDVPz PW꽗\ʸg~XDdP;b^I:() pg<+Vߧw?iDWkWzú&" յmk՘9n2~2|ae&VJL!'ԛ 'xY ,gWC.|;&DP,1 4{%X sWA5aQTIZdc" »62v@Ku @Օ1ݩϨLK^wl:`]ҥЁuZDo:,ɭ@6Ok#itiZ~^z!Yq!3ʦQb-l(+w6љ٘O jGCh[#w@szĩhq(N굁lP㣿ˢ .ʍ߃2'q8> = EJ3Z[OQMw4ĖQB\환IqCz"AG4 K~Z)H-V,jRB !y\hwz>Y|~ F6ek,նEqe-Ù0dP`x&tE1&&0BU5Līc:JGw`F|Ʋ FguM%Q,fZy'ɠl0"EYl: ."*RVVIV Wg{!$ . lHreƸ$-hy26@addk]X,mB fn-ݿ6Z~ioW7;%ɹa*[B]c /`0i ڄT8NH;2i:~S.1bՂ"8|3/e xoYs߲é$}i)C<ěm(kX4CC̪ !,%I'V4Xͳ+GEel%yCmOsV%RB$lCߙ5,YQ׶YVȺBsx >NM9$ٜ]jm(Y2Ȧ XUƹ+Yot*ډ׌Ibjկ¨1HCa d8 =Ki/*͡If[=+'Τ1S :w-yM3W#vw~@pIV*wIam!H\#3oեP ^L`LPt=5c' r WO|.mY4N+:^ f:~IQ{qF< t֦~0A M 谫D,2e9\{H 'lc,ʡQHrO2nY6OᰈcT+[yA*@{grb4,\g5"m?r]|IÄJFY^4_{nP/5{:w,kz`;G6!XYt_ ᛚ*XL-[WH'U(~d&M䏎qtچ 8Gy[v3:L3v*v8B]1E|d#|gPdʆIca$"f9z!+ܐ)3Ȯ ko%,xz<ypTM^r{8-14NowۻÔC4% O"=^jM10`Y6y8۬hհfG 9ĕ՗[Ņ:?zi" %kxwگ66lLt/QGERr'1V=wܣ.;1-w%Nh2nR;hsaU+curCBW{-̄6'~C>i'Ь[ksLvc}g.ّjU %W{"uboO%mQh감M*Ώ*ֲ\ƥd+Zٹ1[|8dra6_P\_;r-a,8XU Z\Eٰ :v$֬pa8 ThZ:c]@P" ?y -d&9S0m#ּ|Q(#d}fNm*`(k2Sb=Kjڣ}ɓ0箂C":zdIWG.0#-iw[a̤,L [S< ap`Cx9N:t[ 9 [ܯ7n.ǙdՀ06&0/^b=CTwzl*^gw:rB ' w h(Zkr:cR9`ɸsl+qE Db&wJ BLp{!ts]{1!wXjTg:`$ҧ*Ed(UgKYzxEې tw往/r@g5ԹgZ0V"jw9.$Ybt( /S1iAPw=p,Es ӒIaB5S2b N]Au X;)uO>֐֛laygVt-o2 kBkMD (o+ }qfS ,]n4{JjըԔI=}FzA0gVٽZx ȑEG\zAi.ǚʬA Cso/Ϻ&^뼀u*WF5Rw6& n.SK3wQt x_נG;uξSUAork "Z2CLDQ2+K0{Mute2JEgkk(f?@QN 2slflS㷘eLiDo0-ل=WWD$ /k܀"Z}WZp:\o!ҁ"?rB- 4Wz s3T9r_[I1|)KeQ­%97:Ժױ&IDYxP>Fq?4X3[c1#v-Ra &C;Fuu b}_5t9a/C9Ze7ԉTqz:f3 $c/MlZד2߳ &51@mn2hHHA0oXcp'T_822`E[Q5YxH4g-]߂9$G s-"`:s$KtrW8|˔? 0hXүt2vUn@1R ~.Zlz":yKGpWzhq݁:ȩblW7T0Ŀ*tSXn:q˓W {KF_`_ <7qߞI> ]JsD?z7'bM8pܫ{hbok7>`m8#}\ 8I rqLVSgpp8fN4|, 2>g~Nr%BȖH' >,|!R8o',z X":wj[^él[O!jrł=[p~D`-v$VsG)IqrT èfF;yjOȼMW3I\;"o\tMJMXqo9 hۏ-Arډ-u'je2Ƭbl~rqmqqIbiWACH[Wy>bC!EB)?x倘$$.l$ḌC7JGS71Xv[XXC4DHI*:J e?EN(Dbj>3>1!Q"sO(~uJMso^%@0Y_َÐdN ^g]G<;nLߪuchl阷d/AŸqftA3~ɭ. P%Iߴ[`{`6#˼ϓf2swrp^? ߬$@|Q݇M1P-ۊQR vvR WP3J RC3?"#H^9~Izg~H#2埏'9ݔ9Rg^1LD׎)=k&8`Ԛ5)i\L=4R~_$^mQSby 8*~P, KxPidk?OBIoP`t~x@XU[z׍!B"Mg_I!m%.M o k^&Sz5,HN8lPbʳ7uc_K.q0X7 ֺ|:N6|T7iW\X ["AGTڵ ihLJXhD 햵/kZ|wDeOPԜ,ˡ1}+GT>A?XMrUz/B~7>B)5/&﬇󹷃V2wXLcRC$c҅w0mKI'6 2 { |n`+,BU@,(|=[RBB7ᅯ싷ۖ) )BOnp!~Bs7w1d .Q18ooDŽ H;BK5jgdL?F`=Q}7w{6 &/w1DF65/XILvZ O6rMSʮE4d0C#قb"i&)RKU9i~0&+m}JV&&̑y[ĒeJin6a3?yW%'O(I{ǒn⫘I ns9s )]`5`V"FE\~Ą_$_@e:lRg*ffCn.p2Sh^|>x_5zΌ3B΋?jT'HBZjk'XF! BT%?mXVbs sL4 *6ΣyqwaWNl\ww!`Q":uvf /KG<_=^K}e>1u+%F"9ZP-k$};=;PpP'rG"AYka8V݇a#)q.3kb 7++s>("k- }msa^pa8IMxqz竫}6Ws,gZF7Qt N}oŚV`fA z{ :-bEnZk__Wl2M.8.fپ=I!V`)BcL;#j-y`7l|E'EB'/KEyHf 9cWb$&߿NXeB x1FGЮiN/#[a_ttt]~+|8%#=Ǣ,.'T?M"&UФ`ZgxTcКٳ+QmT|rn{|ŚչLӣW'Q䢸hbl "&z,WMd$S^ uD-~ *h.Ny23g/ C>b|Nx_ZRaV2<)6tʢ==o.&OIAbz ވHȕC F#` "$$b}}+іـAX I͸1CaDЙ8JG{?_IF)s5 3LiZJ a Ѷy:-^+±韻. \!էz.T ]< YŻHyL1wK9h.@ X@Afq7-t4H5{ܤy X9#NH؂OiLw2MXw|/{>7[mU3JfD55P7jF`$~o؜:f?,fI xbuCVrWu cGj]Zҗv/;4b+ƹ]j " c1 EK+`2XAзo-Z3]J a=U0s)zJOH;isn{3 5? bsy9mӮ&khQ):vnSu򛾯.jSK *4_oOȊ6y5j~HBʢԛM3p߲`Yp BW0BOHν.☝\*a "oN,<&$<&k뤳 YBw)l@u @m-~TSEo#TAbGf]^w--)(e"ˬ +6 :U)VΉ w OPY-yYAhvxC)p` AqH7IIEO;])|Y胘zq!qq4O`VC,Vg9<.fU %M$-|[sA$V=gѨxup7r.L$ ajM.HZ;0׋,asySq*"`IzyUB}1! h̥ `п#v:#TFYIp堮JwqFfB++ 4: tfE=k8@Lj΁cja8ꪎΓ'nzhp+2X~. l:»W FћUmm-6)-]G3 7F.1sFwo'8mjkc 0\b-V ~#7;EװvCø Į$}{jj@)K v~Gd泭m6 qB dlE: GN@["A ydCN rvr;{s2h:IVfS~O|޸=H "YбV-9<}o$nB}ࠤbl4e$-o3/TXmɝ[SE{ KE]/x#5)]ugB{|k_c +{rC@jv!-WVE=ޏHFx[jl|X؄IR$C;*Uk=:`u 0 V" f;ȔC* Hιbx-VY` $n+ܙU)d* lX .#!vho嚚=4uPjkļHQ@IcчY?%83$ f'ڌ"AWը03zhq(lѻϫl]ɭ>K|;MOtf-=K3X $0tکγ$)`T @X=#㻓9Y{-ְ Rj>0.famHN?b{@ vFc:}i5C&9\d93YHz@&(5Q3iq ;>xZ8g_gL˽ tҁU=hzjR\d[@=V_e o'r3wnP;D8Yn2ӬsT`,5}p FJ4><8wdC{K3TY @t(t쮫! Sr@A+@籭> BM|զˌ>b7_72R)Zkf/#-$\E6g)Rt}D8W2čR>!,iJtz<lnkpK)4%ox H>0a//sʶ_;&-#OtNh8Qt JbJ"?7G 5Ip BdIK*5P!q d.{LM[p'2lm쌱O..;{ȓͺN5GSZ=?c_z<ih76K07ӕWd*(&:^@Me:HCh_G+1|b[};gn9lUI)Q0b]'r(WƳ2`C>YK.,ln% Q (;JX¨됻VԆ܂?[bB9Y{R؏]jY{quJeK)KUqa35Cݎ0v "݇.n++z;߱}CDs6"|3cx9vF/:ݡ4<~B5ªMlDΓoN-dFș%e](H06_}L[Aǻsn{4d@E!fa"[1LoB ry"IG;&c#W3fqq~4`@a&GgI஢sE ֶɩa ^Qj#JEe 9X”3SnP#kM΂ <z/GUPUce5IF8mӤCrbIH*ۤK%K !l ם~7Rq277;]?E,4x pܠ. &^ִ+Pj(\ >뫑nbfU/ "-Zo0Dzs xDԎ]<zf-LOX'PFop) `xۘ+4!$ӳ uXZ:NpW,%yxδNYQ6)Uގ ˕ t~>]@N!fհ3o1}P 4sJFM[|{iBõ %Q]Ȱh6:-J݁m>Ծ'Eģu!=WazMz!8_ew u_AFr02XD.97cқ.pb:Qh1X;tSg6ˍ}KIw"}c{ݿ?$Ӳ,*Y:b#D}^&$[Z؉>H=[}K"oxI Q B &Ui5am˜-0h鰤mp IBjqtdƗOHkRêu4n1ӬKks/t noA: m^"A>K*_LH "/(׸CT0sFo\Tl V˱A5Eq1tL3z:iY; *eQgm CQnBE#5M_ Q1۲-#L;'L$;7m2ڭ{ Y4;Z mjZr>np/*02:U@F0qZчRAplD4ebC%F,@CUA]BYgvΜZRe-rqnf H7OC+E%QCP c TbP )u gv6e JW@vdqn(j܎CtU0WG sl35th(J7FE0 _OqېDM`'hl-%=BtSc`Jp ']P1L[`/kFҥ ڟEqNC-R\7j̴Dj?e>2sƁ5dZF 3T72mOA(TbUBdԲ)pX`QwObY,70+jkCE0PC Ew@J2 zZOݿR9W،A*e:52")mǭlxEŔ,ϒXۭC쨞$jg'}S5UuKz~Wol7!_gμCZSB^/Ui沔nMnmP4[6(?A ɚⅥ᷉7=_{4zDB5|mF2A}ps<W(ű|D| ORψe9Ѫ\gļPAƔ1 ?kEH>ռj yҊ n6UCV+h~) tuq=>N ^~s)B")?R}qlR^}&U~bfөl:%ma_32 \ցGq,X=%>y{8Hq3fa|aՍbи@NF|̜8) p@m8g;,JnM8'駘YTCsQ$nOvgE*)w I@H?x^9׏PbUIloڤߦi_.p &u謳yN\>KwEvI)EpkpE/Tʨ4#g׼*:Zc qO;YSi )v,љJo1dѷSTKpjr5;Dz;`ݣf)=Qacؾ=HyX'Ȗ pr'EwfJ[uk+Z5RLHF)FU;Π߅2jcWO 3PvM io&@z7$̤".4PjToLr G6}yMVf4l\vM_ E>A'v 3i7KlC~[*JCOҶj2#H?s{ YΛG8*.2ȈUG9`=}Nq.rX4k]OZp6CD3u;9q lKXm#L_isE3ac($|o.cE氩8kN W>פ!4.Ѳ]I@R.VX3=^C 8zk>[j$(&atڐeXqcڦZT Zvӵߺ(7&]ߚn`"(%Q߿)kRݾ?䯉u֫6%9[T I[5fSV:.O3&?|>s!3E(*Z='D-Q+|ӽ%/):@}O^UYw 5$} *Ǿ1AB(wr']+\ XxߘV/ma%Sv慠ĔyPLdFRqOGh9TR}]~/Jh;_dO-1جa!@A@}Ih*2*ī  r7h2H*rD67 SZY~(H1 P\)22)ڌahm=d#MƬ~ )k莖Lrs Mwg!÷;_86t[!d2W0rY#L77CKOapb^MG=[3) fn>6gh oS@ Od$Fmkh?p1b("?h"Q)>kG^,E+ԙI59PݽsJokЫ^?]PΣ; M^oіج1F1_mT?3g-9RZ.oR ^ 9 Vc4O~4 MBƖ^fJvXp1A'h-*X稔DսPоpw ״ lzf%TmhHAG:wE%ʼ2Qs]e"+( M3}Uxi@˫i<4) wz q9aᕶ&TX %Lxp'\0r,5<"[?^IY2fM?}w#'h'-5:P[5`>Rw?Ɉj(h/dtu2k\M)&!E-('D_zlwZވM]9.~9rdN*KӢçje AA}r·&ȟeJÆ`6'jzUE93-]pvrvNn4zGA&?Ӳ!f H̑vtn|;cT͂rӾOE)8؞R@XxvBӎ`jp4Ì *:+-  8ORu#]?nMj3%Sg+&f 2 jXNN '8)Y$iVRH{$ %{&=R#/> 8qFu6&u'f5ԫ`~5T3(vy|_#K;Wuqd)\β7= Q@F|ظ~oM:hn0yZ ZzU4oQxWh 6qh|47FgSJR)݆a\bƳU-AfZ"4{+hm8R^{HNA\lwp.ӻGMF2eav[>9cT{gוuVa;Q`V^dDd]1ecDNbBx;6-Nԕ9A*ć4oͣzJYߩ'[el_IV(7C0hG3 8{^„^TgNcڮܘ֥w6^>16ЯGvq7 tDckѵFKXq*nyS-?u,UnY|]RaÀ=9YW8.V8Z Cfan;t>py4ڔn4:cl3@z1Z|vz=_mEu&zK׫!i.5o5S^t4g<3CHQJeWd0?;kI.QQS/!Aԕr,;{T'aIfrkG-gV<ȃ^eunr t\))d6+<ёHMAByh!Y9a8cleOUN@gY>&`"#rj>|a7sDnXoT-ԲF?`L>9kuFU2ǘԳLdnm$S bYm3} VcBzLB5:oe TDΩkdoJ.tn-GgR鿍yFb۴(6:BdawX =q})P~"=@1ّEn拍N:Lc/ f%@,n_PjpGYM;jL8?:i-/; Qc<Qu y^hb}{%xP⪾2UV*)MY;ONgW(ImP}玡Uشw8|[9  {֥3g_.=qLFߊJXU 84/r;9.cǺ\1(iEae5d$]\ <"UnL-bDbqC, F.Rq߭*#1Yiyd-^6w~9֔ܠGCy uC OZ%@ oo ig'e&:1#f5zbqUMqlbE3S2xj`Sghc7 /8oThYe/kOʎ gA0*b0bcVpI,`'ڍ_g fI&Px0{J d/Àtٳ^5۲}:]Q5`I];{[]7Њ4Z$Ś+A##5V9K8/0Q }.Lu7. ,(k@0j(x%%YTH:WeF6 0 ^mps fȨ f)lydǝHnG&R>/q.~h,#n뜤`s&V~eb{%ETH407F yc̭5EtM?+R\ۮmPR`̨O׸-=5D3 K.g^3?6;Q)͒9e{̉/h?զiPSE0.)`vkZOK蘭=j"W=oA\xwWmKstȝX{X :3 Peڎ/D0 hsMx>-`tA= قcoG_h(KX=pcz/}hdwʁ fU6fIQY"zlK5mIagڂl"g!^G[F-]ŏVvRI^0g|N QeqDtދ$O Ǩ eIOE(ր RJ["|pR3PS unpUlyF3)!-H 1{2fs2AK-IƑ"U%.8.fL nd-<1F)'T~!C}OUyS:Z I3Ëo!z ellM7o( M(BKK 9ne[h^FOhcCŠ4 Uqn%I+wqY׹ }y. KB1$U3nwi %o]v3"KVngtr4*`:HTU64Ig$0d u̓6` ʁE*x.58P\8C^&;5-T>|TBhS( o`vBQtyml0>ƫdOnj{Y-Hor(#ˀ;M8S6ML ds`aJ=Hj=Qg!Wrh]̩h T69DiD.nhp1xwr2?),0|ID,E܀$K5xDkle?Nٱ>Jg}C*|zӈV 2.wQ7o$f͟$-`NS•3Mp`~ N֚pșG35w7jpsM$ksqܴȝF ʣ"<١/JMHl,`MM ?-r!_O1t|z蓽6Om;Ȟt*@1vK_'j0kJ`uG[Yt! 岝׽;' L̞' jBkȆ;PhA5Nbm<*xgQq4uH6d7n; D45 D34L`RF!>f <[yPB׶zJ9 M@^n^nwv?`(4WڿVgSxȰܱM(7G bjS+%~LhT.r@oTgTg^'>Kd}`ڮ_X/!(M0 Y+䃑{!t j4f҇#O( &-S (:o7f{sn%̇;mmr/-08zC/Mh5Ka[y2l&CK7 ?-$f_ W`9'<_\.%*]S .lxNcJZi/'fy-qdR`aŅH.4C_,1)&]2sPZ*rZ$`;4jt:z꩚y[m(% NTC"8e^d$E!AoKT5 _Xpw. DY'g;'*y|yU8l`RDz3>OzgSi6îETOB%s+4@0}$$udiJz-ES4d_JYO sK%vs^[^ۢIkZ-c[0Ey3%'>=m&?"1 yY#XyMOJsW'yxzp02X,;L@-Oܞs Ǭm.hKǦ8Hsw5m1E"c]4E0(@ټ65l}I` v4z5>HfdGpYCEƏXKtId{ ś\ ^YـRӉ%]f)/S #syBߞ5AdorxI[]Z&9@V(ʫko %0{N]|,co*7lGi&UU'{hv?(JuZjYCOW9<|Z#]0?VKE}WO\wPgAPEdAӕ9V099CJv(  ܛ^pV߯r[xV%呅ݢQ kaRPvvՉ,%zN)ulfe(y))_$Gf+S5 +5 B!}Ur0_y/PVYGl{S"I8. "ZTE-Zu-E VfcZJ![tiI}%Bl+=:R 'HքmS@t'Ui|@y10P1ߵBb9r0; o,E{9]Xb~-xf\S?_n>Ӝf6,BE(yۈ(M|9k<ξw'RcΙ27&TR;Hp (٧lik0siǫpgw#x>OѪL[X9bh![Cυ?Dekpf߄~ 3ru]Ӈ A{睊`α}HN58Jrt@.F| nώtId⒊>fؼBMl (JWW:>^5`MN<)PTerl؉$R"*ٸXWbG? M-F!Jm[|ףIF"*WĨ wm0 o_TZ;~6 H xBL00Kb~ʯﱢMVt7(ʎ<R2.QrF;eN lA"WǷ \1qlKp`*8J~&1ۭnVN|GMșޟ DE$![IR!H]H2S#;PƳ'MT;~7/j쓘!n,űky_Jtgv+V%X+&q'yA6)uQK>x f`LJ!rxPj8 v e) N2oq+FDDɣ,Z/㇔I/D`׎@z6 wص=3ܳ^<=0V^!|.[8 !P^M_']qdK+$RBOQ^xgJ9Mg+e|O*J{hsEN#X!}>*oAne3`3?fBM92wwE]ҖْyYHe (|nvd rO'Vy2"qTVy+xAZo; jq"ĥz@{a1gm( r-`*&kϗhGL~l9eT6+5J@,5ؠ_ ,[f3n$D4^ vE[ws%Rm0ZzRJƻE#]mIf\r- 9 Si}zjm{ZĠc23fkFoxOs[Mz{ 2lgǛRN6;t0_; 든o=39NO#"a5{>݇4^jxEiBL/c35>Fا+䥖>_Hנv9DD`3qQךi]OB*gTBN:Xtk?QDƂ}E2wy  / jتcRɹTҞ6}Upr@VK}jl׷ouH7Z-HIM>xe  g:LRL|/)a5~ !`t}/:_99y>`lS7Cl>q8KTSF'oiG+^ Uo稥 @\KiAɌI#mC\Xp:~I(4`1/ԕR$G2.)ο7V#pfZe&Ň7S펟 ~c#m$H}DVsPA]ZEf^NNkҊxR)- s:37QC7|"*-/²mp8n]!|dn8 e?K-~9UO[RX5iB$ɱ{֑<{Ďn=!NVk&%PjM굃FK\v_Qȡ} oBx$5CB ٷk0vU@3e7hqtyOy,$7y0hS .D˼)Q \ Y۫8aq;oU2\z$\xMA6q2?StHII3J" JJA_T&h8(0}btcwvc@uCZ+j*Rsnێ$T%_ N6HAt3ڈĦ۝?'|h=TΎ"mib wsnB 6xZ;EDc!xbH2, B(SKI6sAZÖJzֽ@%r)Dx"x~$GgzZ0OF Os/b#=7qv'PJG-VL}g(6e=bM5xԅvVi1Ʋ4(F}c]!@,K* &|]h: aw YN1T;R:I 3n4FMs]3A;@ 5 @zFMr?]AU\'|Àtx!̡$Ž}orz kNyjٌשNf#T/xJr; ,.g2D[`FY|&(TQ ASجm 9'eSTo.溗/_G˘ ǼFfނhXu)xj+_ץ@:kWnq&s2+ψ _4ݓ}Xm_nn (4&|gT4v%r6*%?R ON:sF ^P4@g4DF~oW<oi{HQH#hrlU2~ٲ S`k $Mۗ=ǐ5T>@G{Z J@ϵi7 SkK0Oi2ᩡ]C|q;ae2:?Vn& `/7gbeE>Çk V^;p352bσb?%p_ VS6n. ~5:zbx1_CUo. bDԃM3 d>4⦽5"sHkpu&g,0z.mY!/EX)K;` jx Qd^#$l퍗 ZY؋iDvzF ʧ*Ө֓I7XER{*y*o'+.qf1"h]bl}E<qts0Ċ4>5gëZԣBV%_*i"CF6]"xEekqd 3z$)FDbH/q`H8{פHÝ/pLJnL%6.DxLV/V'nPq^fu"WN5 (c!j#ȯ餒r%y(n*3?{A!"4 lGj8|#oTp X'S{h^&)2)8FZ:CDY_f+- {qYJ_w.}E}6u'̥ %'F3#whÁﰦfB@<ٯ:)R\A3G֒n%",n>]N8\*" 0T3,@$ wۊްZ>TFG'nrCb7ºCas)Ҟ8A>Z0N.y;W5OİpPC?}vJ+Dza@]/ !?wvT  U fЖc^@j{Hl=Vڝ藍ܮe'7Kڪ~{ }<;z|FL9rc⿖XZY MrK0)Oyv׵cQR*&^O 9}4Wu ¼é]ƌ),|Jxd#&, bBuSJuLA=Rxgʱz d?6֤=*~+x t(H Ϛ>EkxM,#^e"PIptOǷ__fx'M+i0A^~[ӎfT+nQ6fظ`.Xy7Qxx!Ycmm}ɯZJ:x PY6ASc[^9ʙٮʛDYBo Dȣ //7ρ`B$rU+XG= q;<+?Ҵ&ҳ,En_/'Ohvѕ5bU@0q$KGAR[$<uHQ  ' CI 5pzQjv_z]_у6dz^c81gC^4nabs;A<EI:ьD[`Ȕ밷VH0vq ƠUn2 6|<,J],άE}wK*fI2S&ӼCJ{yY)mpX'?ҡ?{T̤=ߵ~wFNՎe٢SS<"nHbe5x xCپoh2榆b$T5WWy>RGGo'd7(W\.kT'i kRHi8z:H4yL6B91%~nu O!@AP@7㻹B&@-ցWQ`6DĦCHX Bp%sR>ouB\t.1>\ofI,Uyy~6G,<;_xF_^uQM;o( J)rV.GTפu ߪKEƕ 2{AT:}7AcuW7V}"g e| GVLN/vrg5\tEȹKI$YbX8׊zS|Կ$X}ԔDi1BPB$RhhN&EeƔY!Up+;UCyj5N2*tdW_'i tl{q1c `䙴 &W@86'ٹOT#]x8l<؉SinKĢt@'/X.qj5s`U+$7BL `#sOqd("pÓHt\;uD a y{ v1!Ħ3d]?ŦW}"_tfLL:=ΝZf]~oOh20,/W?7;q i/"8^zl%򾬲K~iYZx;ƻ0쨒 PxAiQ rQihc7>:TXb{$?ZDBfCh=73-?Sg,b74 6̰K_t֟7{G3i.8t".l:(j+oe=b5ؿ3e5wg}x#tm]YthiƉ-V̶B.&¬UcQż0A}J!=@(ՋYʟ})Q0"vCB5aLr˖ {y#~x3M™b:pn.nxU#K=q|Q} wv|-孳OOvn3T<}]AbݧI@ëj:{ 4'zoA5 VLp7-5.V2v[r],!rT-q!\ܞ8P~g,4=`o0 B _= gvpcna`JXټ kd %7x0 #_di'Tt _M`Ɏ6zȸM{ ͹dlۺYJ= =4T ;$ j)T6r|\WLv} _<;I{5d3CݍI^jW 09IzweaDT|dV[Nӱ̄8+(Ǥh*)+Y3g~Sm<ś6'.)R;^B0xN2t< ~KOGê{KEBInp@&.i0); dzOh5z1YMoX, e(!&CJq=vS\[ YOgە6NLeoA䇤EXRg]^$sUg3(;+p 9c&QxI)j thVsY,Yd W(uwV*6O },JAlAG1_i"چjg\XGV|xĂZix,Oi:+N8Mi /B+6eQ=BIˮ5^ɇ쑁J^bw$9e477{ta1&TQg|qXM;뫵>iX!б lC5A7 R͟rX$\i3kU?߈H6ULm4KWۥ^An?3 _Syh[%3^,&&:\C&ꮕVk:X)qƑdXd57^N: sGW=:Xl~?ҺH/Fk48U?4Jn<~6V# r}}\?|c'rcj@;Q{.l?|*j&\iyVr^2mpuj-2]"tx] nH6͏J|-Z maŞ6/.7!CxJcUE`4z4'of@^߶OJоVn|ם*`;)2@ֻ܊K?#xQ渭s'r'˿;G5Ѷ8J,P@v-RRXjue-nief&;ꑡ ;-ѭ[-dWȌs. ^B_W ‚*3 Y^CX!ciŝؚ_Vw2"s.;/q`u9W5y\?ǚLJsVğ<2.\`sBweY$Q"4@{0Ί3US&-^O=ɑjo|K40]`3 S/Mrw̱Avm5ݤ-s7l/jbyaIc}v[>7~@?{u4`X6+.`en9=ptwoQ3s}5*t^iUF]?⛺JQ R2 Sv kȿ =Uء>W]ߦ2D@AG sCְ5k߽oJq3VhsJC,U%:Z{ MCRiXX2Z.YSʝd cv=5oJ 0nKT#LQkFuEҼJEϼ3f_1hF1FnD$O>9Rc :YrǖaϓBz&{m5s+UA!EVGi1U|wSP-`R0F}&~߉C@1`/;{۩ݻ4(TM0,l˷xl?1 нճ,ՄX"A C4|~ 'K/^RNq czٻYrCmr?1D+yAb.W8>kroxa>18|q|իE*d Q"Ey809<$pdDa9X]}fXhwt1>k#,I|׈'l^- g)qNANLrL΀vPtfԐ8M.5jA[1"=>%ίm6JWQ rk<ꈰ|8HFz 6ҎҋYqLq\I$%8l:XNmi<b09p9l&liWiYe^*Ax+_@[3 ˷)BRAEPaa.ƎeqF;7G\[(v]E sd/.7K`>Q^L wbu-#ǣ,+օvW osIK4Bi.UX-CpS&msFsL ~tNOn$uSv}2~;[3x$ ~muh_%Ju7Xջ(_s̚4vjƷ>e+k? '9#JKU4PT.pPSCR+WU˞;) /p"h "z0J'vKBOoaRM mTMx+'w2~x0xҡc~O|Nr޸Ɂ91MNј/:!(Bc|q!xn0H|L,gD fRQg::$m yV&N4'v*P Y^pBzERmļR-+TFR~'"Z" kd} FDWC&%pajҗ p/#8p)T[Ai:hxIIx"`T$ QK?6rIsS>\~"vg(Xtk "ۣduIH`adKQLE;v6&0͇/y, ux !ёuƂX/Q9H >WhkhO#_w\PaԯwPWpBLaO%C'bb㔘ͭj\hFn\qHCaIՐRv:7>0g簝MCo/M~"Jw|忏W(+!Y5^zM]U5j&l]3x/b_+}wdzM!7ݬvm|SipkJ x)Ȏ&eLv54<լ]F#")˻kžPmL=3^di`{6>*ëV)\|_pN/Nlwzu1 YQ'A/Y$};Nm+#>PMQVvp#IDR`.:w+6y܇5E̕bU0JU'G@eoX9gaZ$\Z}sm@S#(j(˕_IEZ X%ǤJP(EIr T0[e-]B/RNkP6ʁL/ڡqFm|@ugQoec6Z|nhS1^[yV'OPkjvj B&*V&0IpE鿞F#g83˳8ˣ94QM99 P9|Vu.l@('l Ms H>H񑃘!ؐT%ji@3}-'4 EK-U#bףYrUC0l+J G/3]5pjd7Šm [PWϸqk;Q5]5#W:`u|)ꛄ#p7:((&J1&!qמ$i v;Z%+\\OC~bKSu؅K5I}dXbe@4XLl:H8(7Z/ XB5J2t1hHRh!PFt]) 8mV=qԛ0ʒFëVWIQɮ]D.0سEDĤjӮsd~p3n?JdɯPʉ2#@^1KbٱyTA"hFE raJR0˹B{;ÔjW :2!73P@+$켑KYd*!KQz&* HgeI@ƥ&uk|2z%J,5J+KDng$xUrVwzDayfs!xZ/o˿ LcNLWjG&%Ͽ"g%6t[F6qR/At|4IG<00O%U:$Bwo]aG4A\&,Yb@fr3Ձ!{F(Xv>%J*v7 Ɓ`d ݫ᮱'2G-$3m+Cs& /{3 p~+~TJ¬^Qhpײ+Zo?)wcKK"~;|JҞfӒEQ1F 5Вx[ kX.#f`ض>CMvH~ ];_k ev1Lv/rDv6g !D[)}b}đ녹8J~/ <κkӿ6OUpBC% GWh "Ee66}ܰxQ_[B}]@rz q& (D-@$_Z-bn&8koY5]2^t7]wSuVj}g /?BXZZ `>qk;W= W({ވ}&oFKs!dYR^B5g+&!uVi#`v%P eZ73\d~/YFm@;60NLQQ|?چs-|F-al9ISCU:a$Qj( UP6=mxפA&VښK"3:D 6)?fʃ|uNYoFpP+,oGl'qMw!"rݵ/)ެmęiET m'h=\_a>de5:mEl=Hɥ)ךfQyUcEWS};58脆x'qM2TH#ź]߉(f *|u7sO*?쉐??!bMmi(P`=9idU *qo5}  tJzv+ kc Ub$Vq {+-8١.j`T[rnBٽ^g @ 5 zhIzηbrk{@FHm9Z:8 kqKQUkח0ߢC~84$ Qm{?\#<R2z0)'q =~ |Y- @b>C|4SN0đY3'3`HO7)؝p#qbj%DsPq!BEp5睫oD(Zۅ.ԓ&k?0_Ndsy47^Mjdr~sϦM2n[gFL@T?|&}'f MƁNR8clnkw.J ebq ڄm# POZJڍ`~}iǥ\9t C+)a COBF!K8mkM:jsnܵ{tM+[f7Oa+AbB=rR %eS'xa)lUlլ,s%VRԇNA;)[CN7b[ZNO*T#C|[zbp6G)"/e&JZscFr03YUr7؞UzBP\Tk7FDDa]TC+Fq@~,ܯ3eTeY7;=S@e [0l(UeSY!Sǎ\,f"%5K쾠RiڜʌK2ZHw}M$=CtpvD & 3"}5jPdp˲MFl{N.mV]6YՉf)4qJYNL3 YL8S[ծĻRx2r^ķSd)[PS#j$|hCeKXA ,}LR[(=' IVCһaÐu]#ʻ”K_m(j fFg6YO~QA괃?B#Fvee+D@y&.:0XλU=젉v W"l&1x֐2X| Je8?Zbs+xPC&%`\aeNj Mk =J9 n=NI֦ޢϠJ6onK7^Z!E [yޚQJTL {U<7P i`x_;O4)/Qx2F!VخjڭX@E*4@UB0/тRd_^R} ?CEƄymZnROf_V^MEg=3JOGʹO$bPGu "z~IvpB Dv FX[Ό sy ]"Sb k(;`<+`_BX3}I˸)6%ӺlF7.|HF5$@hamHw,R`M}Nczh!,jRPj~(aݟݻ+R_K@#oE z+獞2~aEg lve'z}8KLPz$: !^%ۂ0O\7u͚ J}Jrဧǘ:*W$ =LYr9~,b x%:! b&XI@sA &#|/oK8(x]cu[KDNT`%:A".ZARAJkU{\p'4R? 2ay6cQ6փ &Owp-h#J|v֝ g@Fl̥(g>g }WM& kfŒySZk/xS3Ų,b>Z?3ԇs<\]۾fuXufȧbhBQӢ#lR5s/I)Ih:&yhrd:v$j72d+7sk`TYPKKג[kH8LM 2˧DQI_"9[_2X -qA$zI ƿ\{&Bj-?7N _:ݜ5rȆ{NᴽfM^ࣟQ.Q7QANrN!)Ӓݑ52> Gè;t+_#d"c)% $eCZf\d $|ҫ<6c`dlB)V~ :“V]朆hʯw"ۯ|c" 9~ǐG "} ^˒70Qw%"HBfAIE wۈCˣ9ȫ.l3@iqZ;=ܞw5ȝicmUCI@Zvi]4(n'ڏ k-Q{6Z`~ D_cø)mPWs@\]p-o4ʊpI^}7.שSN [LNrRGڬ=_ƄyY[?!cm`buCq̑7O༛8BiuN eU].Qoj)b!>$:RbIzfh>i˿bFb;揵 Mǔ=EU`/예Hj<\Yaԋ ącIrJ ) ^t;K5>伍0Y뿬wok i1#' :{l,$-a,Q`D ~f\^F`'1JKt'ao~$yi׉z/d$$`y]g;Ԉ~"iL9aohMDD K[ WH#k#ŚmQιvIܖXz Eǔjp [H-DIneJ`IP_;VIFU);hk^mϜ5Yywrl'>ԳN[9=trjSM_oD?}El 4l(n;j4ˤz^8,ˉeJ,*LAEy N(.M\TCg̡g'_D"17lI+EjZf}K] ؕ28BDDQzǒjGMg٨Z7gŷ/Ci Ms_~ }s`u7lO /JдZ5njy_nE;ZGa)3Z ?QPiu&/vTU^3Йq V\ҸBn$]@67o3B:&0J@wp,$B+?՝qHMȐp}2SЀLzcbj֗Ým[-ӰFW5VL.#$%&c{*3F#~`mm-ǒ ë ExM3s:@N 5~|kIxCS Yu3u' $}XkMs8TszymL%`m41o-c̨YfeZ?!<?Qu\&p!C>oF%.#:@6˘9u\|Ufq:] 6E3* ۥoLpgm SSBU UT/ }ŷ;j,(PepLFz1g9INd \sڛfF-3/qAPND&eyŘkI7OLTfK3Iyp{;׊9) !IthUYQ<0 &Dk,ӟw@oh/ d ز}\JAbӉS~37i7~RiVȬw *qOk`0'{YcI0jѳ;l>UYDd9qBr餬]T!YwE,}zl  WYFcC!;g s9>H=8]mYCm[2P䑧 ղ!@ 3aX^#1L %f>qSo“6.YLݕK :nNizפ!}$HѬl&ⱩX$gkCFDVB0`_8 OıO]aJ]y!i@KC{9t۲7}{ 9LЎЃ`sYCQZHP-| u#l"<^8/QPl%5*좉v:WF%S-c(ի F!'x)'*}$2"-҇teGG:Pmr?!F9n@" Uw~t;; 4PЍHǐ1*XqJX(YmDӘT\摳H=ŀAEi)lJ BHS$q'筒l4E>4eYd~P[j.II/O7. xAFSt>m.Ψ, 44g F[)m w()>9e?r3Ltq8Y'iBs--7[a~odk {\~CH1b;Q$ؗeSܒVXЂ D'di.ä_2X\Ud`fCsjN@~д"Kov-ף6l%>p@e=Hzs.N=naȅHu\ K3PO$q$ǫĂ5nNR6rK4-o;:q$LO.q董/KG ,M = w9kV'{tI3JC 9ǀAEWy׃c_;m`GOcmH'tK NeEVG]HI bME$dB4mN㙽~vl\3+0QXRt%B* wӫ|K:B.^ pS 3~=Vdso3JP'gPaG8f׾|Y@X5~ Q۽[O׳G w|>7 P鯚 .5K;fOJ|989eDLF TtŞR BxTH6UZDQ,t)aoWMt%L6=}c`X15Lar_\NX>琚jpME!+I$<@yCtkXvɡ('2$ӓsקbͦuaNCӿzQ`~-1@ZH[ 6)=\T`*1H=FFև[$փn@d9K#pvT(͆.Uvʐ~C̃bҗ88w2]Kh'O$J|:h⪠' G1Zf{dڬhZ|^1J-)&m~\60~XD 3̀4:H'˼i׊R"[!$KWls\v§HȎ]kRs ԫlYp@i/t=dEG85tA0pt7|<>"(U}Ȉ/ N070{ɬɵATCLs"2o{/K" SS6(k\)1nn1(:sW'4]]I]~RGn;I1踐lRfM ȘXmms@TlUþh_%8A1b>~V 2v@ʈATXǹͲ)Œ*P[E XsHW.r󣋜t+;~i9ۏ_^xbWSt6ѸEӊYgٚ'_`6Z Uk%*YOOs|v߯^ш[ܪ@/Uo GƟ~}]OF$siZ^#lzVqʌnTl[Oy $' ^R^Se{i Fr#|UvZ~ 6Ŋ;J=q.hq!l3eJ튣~m3%w &lN@bY.ۨd_Lp;6`zQ,$3~Y)8Bn.ᛥAg'u9=:0R0|vy*ЃͬL/qI@񆇋d}~bژkm<17GT/ ̃š[^R1j5NH)фa.PkB'WN6;.r ȿX8 ͪY. zb?=mrjq L.,U7zf/h 8y8oa//WڈL:4KF,>'}-Hj\[<4B=- Cʹ?9zzTCtji!56~Y?$cZZ(k&J ks~ EEe)ƾ vIRӢϾdw"ɡзG%eAd]OFnx'Zp0M;i|"=w39 zODEzY$}v5fJ JjuIfZ`,o_l4%[ +_^^{TH(6E44 .[3|EJwNs[cCjZ@m{snؙFZ5AH1jXTb̗U.Oa7gM"+^)ݺ" ŋ -Pߤ P-qUW]J 'yv6\<.!#uS_+H$}|RldR u2!7J@$A  ʫ;r9DqѷF^F}p (` t\859s] lf~`ՖK_hd6H2Oz@9=5wlѪ AGyݧ.Oq3E1,Hzh=.β6U,=bjiK?ZM3q`f)+ʓ,,(O\aᴎxN cmwor/^!TТEOCN Q,e'R%dղnXbDB3nCꯨ'3owC[=1$Kp'!D2>g,Mt')]R 9QqYwl_(>AT8QRǯ`"g epG\K!2[:̐Z8~/FWd\rZhЬ^5ms%3m6 nawID::86A[HcBABۑ_@1=0e~̊Rb; `QYF}$t&#?}JeC2 lk5H; ]E74ɍ's GqHއtSCq~[b>OWp{AXX.!$W rY6P׋#%8U'&{>oԣwgt-yS;Jp1ly=ll(-*ÍL(sm2X  Y3DvI&eߐ aW@b#x2Ri%ejXoI.a/zcq鰜w/:g/Peq`>+&^w=>.H}>b _W`|ƨ }~XÄu-MkͤPI3~ eMD7룿0‡b-Axsȕsr}I>}4a~;yȇp6oj&^榃Dʕa3y|q>A(vuyG?MOZm}3]6'g% oh5EM«I/Cu}} d|MX{Uh5%;gXK^0hBך,'!2rljΧO{\1Sх/Y!uvˈEx#S&t9[WX㭩k>eT5Uso m<8o 1\ͦj8:âiuu׻v(FNpށ"f(46]kJvZG6z2h?6*I^WMxj3^bZj1X oG.aDM^nL 3}:D3t5D?9ƝI!Vr%$RAzpטlv 9Yl ̜dod#UłP-Si`cЯR %>^ж3}i^x\ 6[#8eLbBJZ>N 0|(PO\qF{.Ѐo{wg-~T[&+ڜٱ}x3/)f 1|o)[-Th>( rNbƈʙz~$cWFuڥxxf\\T5jbuE\D]ZOjr!O.~kN!?Ne%^ej87(![˨6zo PPϽj\U]/vm=2ov|C y{ ?+SDbX AA,u7%"dޛ\jYW>灶lj* ֮Et'T¤bKO q2b s(y=u3Tk/1, : !RQYt)%RP#nQ 5/ 틚0"ۻq ;"4 zlB,Cmezf 4ꨵN|Qbʀ0,4 /bypU,Adwq;VQ) ٭OomvR/ٿHr% ^ d^GR54Q/>xOFReģof.x=ppRʭ'sgюtԐ)sdƘ%, eIL *89QR*iTKu%6k[u:h\q`':\NbFx Zlwi;-If mLSs\b2XYdBң[W.V|{TJׅ<8!Ȁ]a/,Ɖ8P)*):wsݥ  [HqRjE̹[qxf`z̙̥ᄏS&>{A3KpeT'px>iCQ25yOdm[{H1QHwiNeAeb#YűNT(l)A {Zw#6PYik7aQṴu:xݕp;wHE!<7کF|qUn4CX;/,nfcҨU#bKHgeXQf37 k%2nBi;ӓS4$t7'Y:󸓻stHA[kgE¹"/V(w!`:'a~B4ȀDeJqQm۱H*tdاZz_KCfY ebԃPG[LoC;"I*u3| xm)+M}6*]RHJ% y 4L_y(pœzf'鵝 o7 3fEsB@]D3Xwj$L%=` 9}cuiuv Jk/cB}sM}cJ.icB ':SvXK(vMY&Uїx}bJ,3N=n-^q3mMs =- Iq%K8$G!!i"#M a0& aWwry jcO5Fhp6x& Sy%Cz6zmXYTJ!?oΝA9^<{/ؠ|TuIY(A ?2&Wt0`{J:+m ʇnQ 7AwՅRň'O߇ݮ |]qЦ''Y `igz9^S#ѽx!5KN#Jd'JU o>RߒO=W;k*>V6 IJ K. :eePNQ8% ?mΔ첈 &AFr ( s&#mEa V>s L"[M̜ ^ ]6s@)(&&_NNvȚnx.UǡWv=;'KZP1@c6]Ozx/C}@g(;tM,{"סîWحqp,K1lHM3,67Аkx:[񖡍tbl_^L6Ej-{Ɏۄz4 ȮomaFg稆PQ6"Ue |Cr5 ,=:npxs&X~PmJ.T-^6bY //UGQ ,5!?~]ڭRPA١b=VVoŹ! l 0eDm|jxHz%bb60G1yo{_T@5!}؍Օ{{O87>Ӳl "^Mj;0dl9[o3؀d++#0Tk `۽zS$>T INAWYe vFP;N$ǯJcRY1GYqOPcNKjeTnv.?tE~bԅEF\h ޤazŮ>^#erĊ|&ىhFNw:I;)YIOf\}Fΰ1w+}yZ@#4?W,+ yo[.a Ei?[knT,5ՈCbnXŘ_ ;$).- &9R$n՗qdUmq41%jR (u3#pC ;s=.t "JDarZDee뽉cIR Ӑl,TSf&BKUZDMu) %- (՘!MŹ.ǁ2g|Xg@v<>=?خW_hm#I&c q]PLe}vdZ:C R} >6a;e.׏-$esF`M_Yܮ]€@A&-nj'ka:r&3~'MJk93>4@k8`!7"b'"e3U[w;q"W|UrE(w6[k_K]}*TĮQ6 .^hPD Yx[BԘ (f)|n1]!A2zBX(Vi tyzmK4/@>=plG<ˮD):@uB>F5/]Q':OVǻhSy6c}[ ;H~ 0\I_,%h+(54֦O_EnT=;0]U=\R"![bΑ -:ć h>C-žheE} BvekA>}BKO{/LMf"(S6)<ȋ:RAĥhd"6|;F&-Q7{%$SH")FBtkQXH;5 6M;ixG '8?S[.!pfms3/(ZtAڧtAClaGtd wJmhῪۑ&gAr!puOHǀ:f9 tCz-m }a\g߭6s-IT,u\ԇLy6#4Ir/txl$WBSM eprk8̶nmџdoasp(hͳ=e;>ŜhZv9\C>rW(qW0Uϊm3Ɔ))%\۲t.DId|]dOn}Vϗ ` VvCxh-UB *mL[K{D_l)OȽ njK"gM;}\f's? bTz ڞXĬw<;vܙܤ0b&?\ *Hr~Rxqd.!294חdLXN4tԈi¿FiŞin59ӏƀċt%4(mcFY3֌KsrE,ǍJ+d!d3n DۢKQ[MwH Eb,gߌ"c9Ao' (%\𡉜T~dPB6~H7-KX;Dbf愝Ԇ:Zʘkwi٢u?MglAEүIn$5P3_YKwQ`#w  @DO:aw4JaoNf@ǰwshT" ۘ@Qj1mَ%r/׃0l)6d+).zWGE]ߧNYW84%T&w@疠E$.J1𜽓eBkUK Ppz0n1pe;NDj7 LY?xL-N!$yWi+u%Y{y1<KU:J0_;Z6Q|f|+ ۘ$@x{!sd*T6o('/|V ǍƠ53K0[l[S}&=}S+FrBRb8R!j}pܶW!Wc*ȏ鷮I vCHD{q!&gBRY^[+#1h=rO]Nu #mTDQs\v`}GӝR8[r?f췭TA s@0$ZAhM⒞Ad(X1yf= E6hrG QFaf.$-8XG_fywpl`?ٵ@]!a Pb+ 2om zITdN3` nt"5'6?J쀌{@k4LrV|}+0J̓Kv_oXJD_<4`<lUlT J:&42e,SݚHɀA[SGL@-sFY.v7]6GX&PPPP`cX(6dr<>QBBAyX*y$Σs.,e*+l˲Ġ- }iUx̓74e1c9Y*}lݴO0V"UJIvI@Q +d c]+b??<[,%v3MHEJ_V`eZeްw|SW9ȬĂ,4>J-_sTp=QE9}iDb]"9`2O$xQғX;_tF̊Ć7'Din9P<L(2RkFjQsDD|;N@If`n.aidizP*] >.>8FajaOu5bZAikh[x3R%1k ۛ05xEI%aAզ$|[Xd2\uiHY"Nٗ>ghoРʦNW  ݵ6 qy¬48leV%dz|4C^ynF4kW[)RL#,0^-Q3>TmKf{H#a~A`v-NR~6𥚭`(xk@JH\/vbB~.|Y(0Q ("Ek=ڝS}>zvu"sדDߦ#IoN) UyrHyVGjfx"# mz@tX }Kƣ'Ɗsh BR`\|HA_PuK0C+o/SX+F+/{ĥ8% sPsC !PXhF;E٘YӋfP@yqܯdLto9M8`>8׳o4k-w"HȆ5̹0gc$O|$ݺd}3ܬLi/E.*3n#ӋNb;07G܏f^ :EXҤv2rra'8oC _#ks5&͌u[Stto O5q-YPVm FT TUKJxc<Ǿ.&)EH8O%!^<T%z̶zeU)ޯّC=JÊC/)RَR&tp9~Y GfC3 f-iwP~W#ۍ![=hXUx^sE7Z>w43G#; fhj/A._.,G"U @!> ?΍&=_[Kv{lm@EX[۞L9[h3޴"w9v@R)郄ݖI!V7Ҕ|Ah& HadFS6 F_*fg=d9ln`(ʹ]d^}Uc@LCк$i;:NJM2U~}ţI^Lf?xD'H8"|i lD<wu` 7醫0p'e崻)0WN3Dnz5.K;m"-ȇ@JENxS 7k~{H 4`@0A'ZT45/@>dM$A~AiXkR(|R"8`⹢GŽ&c}CsŔ>ŝ}魉K,nNpp,%lc5|GP*l vc=x{>#PA]R v_0a;ζQ5*omCOñuGWWS(:,ޘ80~cN|ӷNA{?ev8=c['#TAcTڠs;"DSV@Py#mɫܲ-rk\ Tj fJpT^9'jHҝC\,?GzX+ujwX.|;no 9nY*UnZco m~-}l/n#X$#n!G pr"#.lS1+2N(wTha-SZ|~ik>~n7f :1Lcjc&+hh >DB(ʅVm7A ON'6ũNJA>Y#/[(S8ݾs!R[[ 6Bձ eqKhA[tlX];-ٍ>xkiÄ́f΀1y~ +V/7!}{~H0 !Y?|ZEMU G`Ԍ|g/$ett5eC uMJ\(,h+'Efۆ[_b/`=1q $@]t_ e11cX_,Hi#^"v3 RW"~*,';`!9ٰG LP`Dz\ 呯yhbM\6 bͳ{ٔ5E`BKtE?l]b^DiiIھhgmD#G\tϚLZ'7 {;7d;[sv< d+Ѵ#2`2A&LCx;iX۫^=\]֗jVķY5dq"9 V›APegs#*~ѢI!ܝg@ jj `&/-% a I7bpuL$b o@pE\?H^ ^JuHGq%w7is,i5兑FG4,c& ˇe3_5gb5KFPGF8;uhi] 6qR!d19I!ohFMLȱ.;(훜۾)K)zz:6 -B̒2yV3ddAl(߅ 79;CsA9jir;qg`ldJGDXILHaΚQvpjh,!DieUb@WwR_B=RJH).H 7w6 :8l̿F؊pfo'KD3Nks Kcm`9OʜGu<ثvqNi&.S⯁qm !&5juer7<_.#pZ%[XYgiek G)]yʝ Iw0w”/,݌0 0lBbL `H x#` m^: )6?%M&H#0W_J,:K^H,^5PϳH (+Mr4VgLqo5l:[ב44ʽ( 7/τ n` ِ%Q0/ݧ4Ml3 XfkqiS \|>ѴA :bN)ynx3~Έx7= 2 oNer:*^i£\0sƉu+캭~#PI%6ex5C'^I5GRyi1~<~h{n3:kJ\PV˘0c8#6zh/"3S Hގv9/֑ fsǬ)/sj1QfP $Er]r?őG{[Mѱ,(\wB0xQ?4;{~nO}..Ŧ5/&wאbwȔ(e_7R"^du:*H |Ie+Aw71)pK"|$HPfC)(/V? .ԄmomTB"pӸ>mzݣË' 4vIDkqe d#w1*Y~=^-g`$ҽbrF./^sUI%^[>u䧄Ax?8Y`#>rR¹đ>Zx]/?lp雇Uzp;%IRCd2+g(^X 뎑7}`{ȳ+2@W)oUNE_#!ѯmc B٤Un!O4P_$n9YWiy'ގĕm|FInڐzٱ8!P=CT'wōsDJ6  U;hHA"ELՈORoii}@x&j"8б ~/m=+{uy\z:4ycWlT(|_<~J昩[8*.Wߍ4o~pmZCFpf=3?- UQ3tLfc<˒h@^_)UU-@3 ؄E?+yV=eg/3^yhȆ Ȏ=O € 'TBfRsULAǺ5E* p='/:uuChc/F]GTUX?rZnpLu08X&dW(jEHz8/hĶQk_2WQr?v*!gs31g4!ԨNIacKj {zC~]b⊏%I7k\mhFX# o|6r,M`RZB>&4Z@@bvֽuhMX`OG/e'Z&O"{$Ot(. >L;qCTS5S1aSW=sa`(e \0@#Va^Ļ]8C,j: Wp>r5v{L6X(҇pg$a9&&lJ4GN֏}(غƐpjj+DmXCE_+~@V;|뎬1nmL;5X5[%rlwVw~0@F ܚ*:;Vx)ˊ|IjR-P 5I=ψ\hNL(2L (A4WSJ75g!/XwY2UL*r$-J1Ze/^00/By<7svxY1rȪA1Y.1:d(>i ё qh"oXk1`tUI ^ڸ=A1Y2Cyiv[2K(Hy[.3wFVҭzX#~t = ?Q"ND;7BUzR*$յnnTH)IHLsqU~F^'$N IRPݽ?~ј|A"L T8(n*«;̓F h),}/c L\l%i|j=zͷKBC#3 6Т+*Ko8>06 i/EDsQԄWcNl?¿댾ܖSKXZ@h=hc/ ԻXk'2C Ρuqk1t'>8C蔔ځwQt0h;:QI8RG[^8r7"^֍N/iA:ڃ7˖TXXCON{lCu5d1|q5rF.\6[#dhb洍8ACw䔈P%k[[Qk PlPDG;4o?.[9s]UMvFTb/;m2J tY0ԨwﻍnmQ@S91 (-|cС3KSR #i% {hX=*o7W.3ˤLކE{K-ϫT&p( ::o.N݌N0ˆJ4桏֫">% 6sH16N*gB׸a0ڟ&:%mZoI5 E" ,sMW>K:4wX{v-P~!UPz&҆!'P:oOյrvN~qsBIYdN=kp!;R٭oU䊷}Y;^Dfw>  ^7㑩ibۂj=&?K|| ĪG13[/*4GW!Yr] l~ g).~,zK toRn׵ѝM@ֳ1=r.}HmmϜ#ZT 1iQÛ 8.6uyEN)ģ 5 ezYش&_Z[{&n&@k&0ѨޯJʛ\zɇOF80N*=b ,|}Yi8evKNӯ. ʇ:Zhz97O$+CD\"8 XEgYFoz(`:-dWÒ|f$ lI8{lWQ6Fj]5D6fƉu9,xU4bi~0ZW7%tT6Us+~e]IE"3ã瞂ѵ4XdXU;1LAu`:06'Ґ*^WǏ.Sqբ@UcqMmq':I,/>1,l.XxV6 zFh}K#4[a݉(+ϲ;) k[hd U5]stNtHt pR A-J=ٻ=GuPc"yA <ֻ duh?h#\\ˌ3Bmj,&7YaTIxL(Rؽ :3vzRǡƴ!"/] N]0(_sbi#Xx;ʒ 11VvNeO'ǻĴ`AsE;FoKU+G!-\]g1>η1EG/ ul?>* {TK4qYмrEu4e1hhed*e@@ q*F&lTw;9 6جCRvΏ#^zXdcv/]dAGN:ew,=qaQۑL)U={2f^/T y)NTNi&CjG8ڨF %sx'9O\K\1@7ϴq<jzka}w'2yO:cV(ڎKXiYjK? }O(ReN7x[cmGmYzRDS24f꞊7<<ǤGFΐVV$GxwXg#R(М6`I[/N֌8w\0Jާ킌8}@|:8 Qc>x-DnYq ܝ_VH۲Lg*~#,m`PYV7zGK@d.rc2:[/}6%WPf |ZmFa !*H[gg5ݥ  &8|c4(oBB]w驜cX1-(R;.~\zjushاuOm!0һQiosT?W9i Ph7Iy2ƔfuS ?qCq!@c0ߡAYg=5`oҥ ;uMG(rnבģ1V*THVr}7ٹ;2A458J,)㶯2ހWiZNz'}P9H^I},!w;MhpU kx绀PSh41DUM#] a n8CEHyFeJ`${rC.'Y<*JQNfbE-`\v(`@!nƍZ柯Ckĥ5h!Rj di ;{q[ETJKZp^fV2mί%D/~2 j$9wsuضO?Ae8ikW`ViJUW fE=}*?.edtbxAngnd3yv(|[ZVTPE|E~&F֖M< ؘƕܾpԺEJZ50~ҦsVT14y ]i_F~a[ y՚!a γ<(%YfNpJIj=ϕ"hdɌ6t < 2dT@54(E) ~HO/U>fĺ4J`o~52Kk)cK 3!]mw*kG 0rەуb bg=Jc3y~ | ɦ%X[s#`l?$@&Ȫw*U̐N!A|XX}hj ):hYpMGy͝<+&Rh/ by@*mkG ԀםB>wPN l?S@Jb``H;*6t>"aX^g}I˥4,Ny1p'J-<ŗ.Oo_'98۪187ɓ1O%&db܏}@zPQa[g m~0c*K֗w=}Wn͂/];#[{r2o`+GS֜#jX u!:܀j>LDɭ pz[sWB;J,1œ@Z8W [Tj\7kF8̚5*eceG r7E%b*?HdJQ0LAUTׁ=FZmCעoǘtS(OT9؎>Z<IqU[R&8_y';KCVa!q=ThozCT0w%{X]E Ǐ  f0*$AmBSE{5 5.SE{nx2מ/+#5^; ̬}~~dxi!:P\߹|0HYY%,!g^r"i#Zq.R*n5&Mu.J16h" u8"'bO&~@ZmР}o//BӸ`OQpxMnnduD/.g憝x[qX7e"s`Rh?gLI6ܼ`궴O&;m^xDQÅEV2Iϥ eFa vD,z,\M®w.d<2ߥc})bMXy4iK2a!#v=A/{a7*Ԓ>n Lm%_*ob!!L~9:xMF OχPb=sn 4FmFtYSx<'6 $pZ0X4&yCm7.2 u9e^G51D}jOLdw- ~tP{Mx׼ x"90Hǁ~ M`R&@"dx˟CdjatTWؑ@SۗK]#{Ʃ^^£F̕~ &Ld䶜&Nu FUTMpɲ;KQqY19F%P?;#—xU7bUn8&zQP%ls5:./xǁ lQLp~b\ë 2ꃛCbjs$ *Yxw )FzFm9i+咫S8gqkGly7;⵮ljmx}ń;T,gvaX]NMxXv<Ɵ`9g9yV?!s~e R#5㒫>)eڑkY.(R٥!e1pJV9Ru qe@20/se Q^&+u[HY[ɌBRE]_VsEBזeR=YĈbMc 6$JOtW{9nd98$Z6k@ѐO>&+T;^lM#E1ԎS^Ta6yG>\Rڔ;ΘPnY'QƷC :GdGv"?dy2]cTF hgwvd+`)qyvq;Pzfi%Yr*#]rnmƐ=YyoGӖ떌-EQ%<]5GGx=G4Y"&ЪnKDžV|.5ZGi,ݢs3^ŎYJ!f1Xe~^)Y8pƊO ;q #A s9mgH)@~.)FFR}ڲ;A !e+1 %0{5[7|H,Q`)_|\DHº[ w+ z { ީ%uŧz<$tBf(9Ev$'pkRRv"FJhyamƷ#_tn*Nyo_N!ϮƢ8^Q~ zPR'OͶ"WpSɌsh_Ϡ|>uyρUT'<ۺL~=g^w7̉RZ[-vb`Nԫ6vül Mo7GkGQ =Ju m@)V䰹q7Ւz_Ķ~Q`nq|DTTbXt3YiυZڕ3ǗhܪY_M\F9{SπL B1?҆_?uN5F8Oyt='P:XBSğR,)cf3E*DU|+G Ew2f8eE>һ~ ]zyވzi2olA֓1g iDASơ8QT7%&ܜ{B'_$?,j-V;m#ռH.UwIx]^eMĤ nߞu5%U2Gͮmh3U?30`D&a׽Alzd@ʗ>" `&R<.5ҌK7df~戨)s`Gy5o'ҦnMnQ}qp>L7@-ƙj#gص)e:vYf L,Zx]v]lIk.SfLbH󗖶r ؝͵v:piuݶPBkV')φk_%#unҋ L() ]R \K!~Q\|9jޅ,5%`4a2ֱ\ק[XζBmՒ>c>E:F]-GM2FөANgRz-Q?-4wiՖ|aw8$nek YAJ^)\Ɓ*]Q;J(a˜ H̓ݨh/ R]i`$^ ϫc湓Eeȇf0hRݢ'~}.Pg'=UAd% u @.҂Y$;JF['SW]w6#i.Z#ħp<4'؀#61/Cp_>x2vUgkFfA~gDŽKG MRm};/q6Y)ݬ. fzq6F/:87麟?TLG5 Ѿ^lzp@? UE ׾{%XءIdʄP U݃HӺU@ܿ.]N0G]f4 kL?i5L:ѷ?7p8 #}k8 "( nkĨH"dF|ͲZDI)K-p#2wMkq0gTU 9~4fn:XoL#X2-cINBmbgq`NhOvRiՒ$xr \7$W ڥuA_RǠHi>~R1-y #PAk/a1h_7G҆ʻ)X.p𾅲~9wQ#Qp 8`Ѷc=Lf?µpZyc?svBF#6G=CGY0C!ݗlт 7+mne6'(F- X7Y0%op`L̕.V<"@> @' *JY:τ 0<+2'zܪ q%c=z<(z϶Vww܅9P9W@! u.M^]ZX3+Iv B:Ap .OC5 @hh_0RB w4a5ǑH5]Gg%=-_~f5oZ4,,BNBE*Vw iU!V)Ĩ}lMl$-_2"{mUObqӐފDOQk[ Dld3V%}tw~N| a>-֍^檛vϊ"/E"m.^_suOK{UOXNG(eSသ:It <e3a tzfK֒4ҹ7_ďKȪ*o#sCřiߋ{ @ҍ¬"Η$+_ׄl+H'P0&9a˼St s$R) Zq~m|=(kv5vaE 9@^%਴|0T?w!={v]3Uػ/9ԣˉ5Qp GG@`FQRϝ`bRy ÿWfG|tnx}a~x~;v.he!)VlzEñλj_+/aD* C!hNf] (*fŖ&;v.ʎ D>o"8T^WH' _cNIK/Q3 z؆̉j3m_=8~qDNK e٤jƈq[lK3 ѫ-ø. k}LGPj2zMG `}e.Zn0*rr%c?T:QM3U߶㴳53b ܚ..+'QX_Gl.14I(hvK=ּGR:# Eϛm-\ҫ n& ؿ|i@3'ei@D⩰}=$Vή2~߀BV&;mi^?!(^IK^"qi}IoSQ$kE#mxR1lNMTWYL9EKK ΋4_hl݀b9ox34`IFb-S;4#Yy=ևyX{U ^^b"i򎚖R,@=*C%b %S%Ew*R|fEC5Tcį{L5|;?¶: rgV)(]i9&$25YK)RoZrTՇmU1]/yхNKj PX%.`^٩ :Y6go,骥Jʮnz]^-m 8u]8#i\H- W З[iq-I'o<2w2QS'2r_zzRX0%RAmpW2Ix, Pα5̌=Wyqj-: XU6g3UT;^C#ơLBgY(ܖIqIE=X]zawg,q+y~gVgva%aY!pW+I 4@ZF եF1ߏ%P15i|Rz飍nE:(Pl6ֺQWH:"ٯ~ԏ~T,eGN Gc BbdMAdD6֓LC _-J@*X!Q%A:W lVw@cFEZs@3udJm13d\]TJ G%[$prw;MѐmG54ʂ=Vr@Z)M9lq'yEty!cvmj߁cԓwB&/K1nT/T"P֠o0#d=Xe|?DڞiAQ((p["̑E:qDf߲[zs@35W]IQ L-{<^u2N߅`$qeXjI4LGP !v\EbLt+/L9mJ~C Y Ь"$, '{@.M b=Xbea/6:.^[6#A;93䯑&$e7X/ C;}'f <}_,DP xP\C,:z[pt)'}8)UmI%z8;>hR`u#OlW7u[4_+4['ݪ[cIo% B?Rlw9ɐl6$FLtUw 'v@>Bbn򂄘h@nqag/"[*.TC|oHZ$(rŀ8I)O9Ƣ%c!PlS } @!p̩)9x3>2;APHzڽ”2Aic$D֚U|8l|<3b;B0=\q%]/|#)^x=^~Սót_u dڭtxk*{ar.T@Ĵy:ӏO;$z-KlME_s-3c8`N6hkъ"W 鯫f-imfuCJggKkH!TIhІ%2!?쌫Y lHOdUM J> ղ4zw6V_qiW^TނK4j w,g/-̦=ը"ݤ"ߐ0Gt;Jy(KC!! mKӢ6؄])m|QvYu 8*Q̨['o#jM6ĝA5:g4zΜ=E[+hfe0"{FDLک"HeGt]Ճ+Uɜ038V?h4^ T3#oz<^ѧ,Vf.i>C_pvG!2 Ha: 7 GksDe/&|WR:{ 3~niv ߬e2O..n&`H~n"u+s܏xmhA qt{<th~ޜ̧%WW+ x5(}kyRsn sJvn7&a+;0A*Uhc2*f:NY݀e $6U,xzx%ٟ}'G׃'' @-"2_z]J?.;Jt罋O7h`SQ$SY$ܳ\qC #~J> 0IzpWӷZBXiT $'hcIpo?Dlwnhۤީ xBCh),$H&)JkwL+sQb-|4(x!-tM/'Hr PnE~<\{%c'@LIVP~U޵"OklU8`Gx'P# H^Wg_Cv89 M- ̑s:X9&@T9ņ掏v>|ۓvTDc燐BJa,ߗK柟ͅc?U ({%W^ #%q6 5dIn{HSǯSK{,u Xv'ejc&U#K.Jc+*Ӵ3,^@rso=YY0a!9!r4 }1"~nZ$07m%7&N4B/{=a%% ]7 *u.ahiQ+?Ebz>QM\>2Ct~m$SMs:# R" 6͐3% z#SS!g+N O}9uXzpHR+%s:l}dFq_s pTSƹ]k`#|ۍE9!N0Vi4vymt#hHj0&؅)X+j 7R݉2|'|yݨ="l?$-n݃#t__nR6#u6z gȪg vQ,5\܄;c SǁcZ"&>^/WW %f誠^7k-m,q⚤ϭBn)|Z]VuO,2 ߗ FabtEnIvBLio[woo,TJ8?g@7zN'DTҖ[..ߢk4+^;0@+h&0XjGDsQDYi~plg]V,ey)8Sqw &pt$Jޗnk+%>IKd|a;35%$~ nR;`܆"*T H9f7U/aX8 "dV <;!@^,@`c-pOآ^R_`SRA6C]S"+dRoS^Gϼ/u2V:c-N4dnPH(.ZN'WEi,%PpԹr9ky9x0GD%O@57† Oi*vh?"5k$;=T߳^8.*[ .мl+gM+C]|gtCIuU_l]I;MW[ h1#OpE9ErYή<[$V 6Xڰy Jvw篝{Rs: :據j>Y\؄NYWiH/ 8k"{6Y':m3ưظ'7\Ev:Qs\AlV!a33GȔw]6"Ki0W!C%-S4ic(I\4 eLq7fkrsVkP}aA{k "w,LخŁt7_nEO*)h)eS mx9K[ɈzG~WOm Í<_s$-H=d37,6Y՚"k5ϙho=cvfhYDϝZ_04*+M^B )vzgorUR5'OH|c S!1u0I!X iYr),"J""U6 {XI |ixap\;g>z$&wh($;)؇znli=lM'+H7 xqeĸ@~:AgI(.mp(#ԨOZJNkQVQSew?ǍTD*'AHJ;ؐe9CvLh&Zf'oY+{Y4* ߯2/G +`V\yI Ƨ|u\Cl?F}<=%䶷9NzVU]G&e $(׵y]&||qj&"ҋ54@]4ܤb2Gkd,$l)ڱ=tM+\-}+[FUP֨9,Yd4p‘Ř̲{s D]뮔4 q =i'~#%9CES9L|2]y@}s ff X?f$ed@s$8X-B;ϒ[U&pߑ0$< 4[@{MȠ0Igj@%~.Xq ;LU[%? Bᅎ٨i -Ĭ_|rIP~ w P-x턋K;d` . a|ÉɰwQLʒ16o8}s]fӉdeI`|x0mo)ZETD'yDʫ41@s @nj.T &aS٣̑WpU9eMm{AٺF\#`4&:ïj_/O ڢ$ig,'Q5C{ /v$fۚi5.g5*ƚwYtgqKÛWmK\1*r[l:fOԚ nz7LEv0 bh7RX!/ߗI`S4+@jM-tn&o;tB *>λ)ĖG<ք'W'/f3ME]iF}{"z< @nY]k٠_ &X} ?a-Za.F]hmp@+̆aVE?O":9%mA aE6Wyr/k,=Eg'`%cB<F#1GSHNSzE3؀cR-ܟb6t,t#a&m `_Bp vd03sҟ8 `Ÿ8IKV]l#y ю[) l:5pCz7d6vy"I \AYrronCA6{KW5&o˰=+r,V 8bO!ZsE#wTD%NDhiw/f2†1L)mkV@B * 8ɝBAx\R2KnJ[.O8Hk;U=iVEUZT EfAc‽#_%'n%JB ^"ɝK,zA/c/coGFLs~7'Ƞ3s̕~/CgS\;GPD 8o#< &>h ޑg9b8<K7QvWtv02x'7>/VJ tb'uy,J_+t_p7ؿAL\ >.ZfxM)w-a\A8I ?-uKALQ%U7vL"̚eUԊߢl9b'._Yd{H炋k|{D*Ee6V ?3iHMm| Vѝ\v<&A(gR#[G^c`"Ā/g )ߪo" $eR1$`3L9D>.4m^]n1ԑ?4WԲ/^#w ^ʤo*y*{G%T Ɇ]cq3ujq+ϲQ_!Fr)RtZ̩3;ǒhPgpIK]*e+y/wJm? &vZvil 9yٶ .$ V\ś2#򰬳&`Ti*]B6xFǚ?Ì󕺉1c4'u/+0EݷQ KX?1pf_( rLz*]g4wQ) v"9$BڻWI BIB٥] w7 :q]0 c$|W!zmy =jA \~[$Md{0uk.tlxBwE3X!YoVc|>R> h251被ňlE?9 ˝uM u灐Mz&okQ\ VX˶x?U[Y3iwK诋dh,<1wB:,]sbx!dqs.۽ݤi4ڰ0M벇'+!^d+:+z=nݩN6KZB0g97I8Ԋh%qP-POQE]2,܄=̓!$_Q-ܢԍGJS0r"e)Y {L{ڪ8|n>I-]p+~ԌƺJnqiqq7xrpmnr`!=e*NuDeh+lCXi+`""6#nGM1QfFEYxX !!v!*Gv[u+!Оx^vbKT_D">O3q; Y8M3 MōɟQ})w1ǩBPU+;nQ*V, 0Z*9荵¼}}8mi!/ՇْvcQ[w)FF~ܙ%QFqIS? IWQCjI%_iidfu|FgЕB@8~bohW%m+@7/ڤa q HRM Տ5$~8:v;\-vݓwd;UޑL9&{U7HY$!yFܞٜu) r*vh7xQ|X?Br2Y~3`q e*CY;>: N93j'Lkz H6ţEkWV$s"W(SW gnLSAR~:Xs\ ݈qڔ6Օv%kl͞AyQX]Ly/D*Ky3c7X)yDŽ 3oc2xjP2G,ec9Au6PQ-Ro9A~d+ nڜT磊 e3*QSu{08oЄ1֤[4uR:@u HK]Fs>p}b\?z]1Rk|d[枢K)cn9:a*귢)A1o.iue}*=\O#fk5p+C`rIU'$=Afvзv'1cK d!˘<*38}]cw{'ht|@ hu[)P[k: <'kˍ$A#Y]24~B1\dJR 2gcd|B^(Եo tL<\xo:36jȂC-q]96H qQɣP@=_JDYNtmyC[Jήг!vK1&|JN'$ !/,z[C][ePNITm9~K#Rys5Φ8x] ,mܶLE[&.FM7~ IyCzp^Iy5ð[-3;*[Oʇu+GsPi4CRW{:.ʕ4l@MB_G_De~biHN!ʏص/!LY86O8g bg@cKY`O^RcظhzPV~ ,r%F*i|=L,=bv!Z:2^)un3I%oDD 6fU/x%C^"I'g-'Y8y0=5[J7j-j 0-J}TRJ!1ظ4v^k\2" "Rk iQ:1b>|,XЦ/)J|OYV*O82g}| Wԑ~?q Fm3.M$DW@2b\#>'ˡi681E{/?ܕH_϶:Vg!XJIx[\C$?vDr׸_csAela%fS7s>]&=׷q!|Q,0'F*d J# UZЭ1Ύ$əXMRGV8Z:rYẗ́m45TfɁJy 1_y?o"LEtϸ=b$+#Xn<1Ce6C5+3n`okmz4"G4)Ɓ "enGס` Clp7ZkR4~q=k_I5|b7 TJ{; @7c{`=hn ~K }Tw܈.8ȏd!aD7?&< \CĬQpM`~Qb^2oaN hZ$"m.5dII[VK=I+Uk>rdN1 уG3{27;b9&t/ɤҨ+y Y񳨲W۱Α@|լ@DXF:qN)v3<3~ M$@xFD)pC2LF]=z{Msw o|i>}qN, U=vW٤/D *] X ޑ lBlUbTšGDIORq=9 !ݔB.;8 nMH{`ih8s#`ҷ)-bBqNqӠ /JZ5ām$֓/7LRݛ$9uc[-P=`<{[P򝲛u/@6k-X8,$Ȫj^]]6ńx~4@Kʧ7B_}ou+ X\_2:DZ;EO6Ǯ;t#ZgWniN-C"nXA HPdcubc <Pm[cW/*]J ?3, E.D{0</0e2oh Ȃ%^ ׭;/e3zӔ]%7awg~S2L6RXUGi~mN/M˔;#ӓEV2Mх. f_)*Jڇe#hS_\Vw!F6{ $>\HRa=ar?]Lzκ="Of;}'+:@NR?]>K1>f3+tG~'4Y FewIet|Z XRE(D>XRcsV|WEGՓ$]Ygfai}L5]Yz<0]=׫mFȂ9$NK%) am}L!vm3oxhXhRK3֜Kc:Kf;5`grv ls#Ȗ}nuӨ7-+jg3%zXU늓 %*eeǓ1YMm=!HP >l#Q&r^T&fKTH[?~PK#(XN"YU~"̐K6 n$6_rj0M=|BN Y,lV}8x9tOnpCؓl::Vh8Onc]X"8ʊL[ɶ4?@n16i$wUD4%V6Ȁ[1Pg.ObnU:VFǙy=h 9+3Юr'4Zvߞm%Jveg%8R`xnn6:ǧn[+@*2bA m/HPSb|*{.[Ő̟u<_:p-,r?(*^XAa F\_n6 Tqaqbѵ{ O7#6 y9bLYYr79r=FKUz:&l\-6}'65M3<ώ t&xs6}![gU  zw-ƶ [>enC툂ڀiK cԑPW~a_tuG CREtf#@'ONnE'|zF%D\;}jv#UR_BW`qAvz3o!Fʤ67N>E!tVwPDOg{²^xDdWk! Xt&$q߈~"o:mTM|*X; z5XފqP*pH:F2{IrJ.PὛVe*vqQTƅgѱK9ukP2%,c|?Cd[.4+L}🔣~зtte:@!Sp Xv"z<, .RAށ8rcx?c6B23?&,a- qUHh[CAtYV)a6Z+k=P%nR>f4A|xaMm"DtHӥ-4S4=b>pd !*'UNбp7Hc_kyc#tc}\+c3;8' rsb'@Z<:AxO;ƾCbD}S21\S)$RD51g IM7'`ٷxbF=.Ƌ! Şy'w Hȱ٤2RMO[yTm(Cw{,q'tۙĈY'Ur$q48P2e1e̳9m0,36vH4x—€19ÖkX-R14r;ߍeGBZB<^&3V_؝t[UيqlkoSg"C{, $MS @Pˣ0瘰y∁?ØoXhu.[SoJiiX)J$ƩU<,?;c1Fa='79n=VEOf_“1>9Yue:7蝎RTع.qH[,eצ!,|z A%F1c|;>>j,ϙE@}(KF"2'k3.- )9X#?(X9̾u1pkQ%iwΆkkAcNq@Kc+XY$3v/ktwbэY4m]J,Oj5IhAAT]8i|7pjjscS +94n38uG֍rn0ۙER}*o ^+(T%8XHv8k %̕=^bxKoվV'|.]uIxb+QIh:MS~YNSԤ:{02f9EFSY(Evp{J;&ߨ/r\8-oꚂ ), _ȮX-߱~לy,LJ sIxdžܠ0OaagDqjRg{daJn/'2zI~;1eW<<Ғʸ#.цLϏjZK {?oLu{۳#qgZipҳIoDa(Z3(ke+E?}b.qÔ`̹"|Ȁ _۶m0KXv+${\K]"z3Hbezۤ8gN껣g 2yQcg9sXNc<6 tsBn7 ?#|rHx\W$4n'4' ]i[N{= >%@Ӊ҅rf"3?"hcMrj]ˡR2\I<Y#~;|Ab~r0c咓bp3MF 1DhOrA,(7(i6?v>\ aU8![`k8ȕM"kQK0y93Bw1·1Ј3Hu\;hm0g&s]z/" to!xO~[Aƃvj(Yϰbxn_?ꉁ} xgAl j-~efRE24`+jI24|\E{S&#mYHkz< 졾ߛW $W 1$˂gN8 Ĉ nnxQ?R[7"NJ$W 7WI.2YU7{"P$aW&Z&t?ii/Cԙ{rOݧ8^ (ȼl-G#L[3F;2k(V]6_q5ܝkX>Jxd(|UʦI̒r"98wp.~zøWXy.il/ f6*48&\IZO=m_BWfMΧtԅHmx VD^_8\0-JL|rqDӒDQKQq =m3hH(ct1Ց:ڹȗUsk?ɐBPH/aT~D::B-"HPhBp\w\Mkl_E_ZGɒak}{B 79وu`v;W@,OwGry; .}~ \Ho;иM[nPVo@v )sH(ͯ'a hf^V|,yq7blb]Ge,aB;Hw"] Ó4֖K=>ᡥ,]JFwTz(HUϯ7ӣ̙eH39B_j6BDϯtVe{S].Jl@"%[Q u vOVj+Q2-AJu hfEŘ<[sŌ# }ΓW.[Ue~AHss\:>{X~ڌkhLL*tk:u3f!nX0K>P˾~\9JG krYVVӳVo-D.Gv2Pe8?Y0(:S>;2 ά\^݌:lϺ4D-Y8z0dV-1E-N`߬f\6BMn_9e٨3g^s3Ú7Dt+_&^*ZRKzk@冩(O4j{v[<4FE|O{=e{u]jgNU<6Z7As[wC=ȭԫTo}}Ntfi.8f41uH!;Q 1(:Sfb {)&$ XLG"NsJɉ?pWZ#SشzqK[k״8i‡Lhp۝UF.l|}8}:K$ }V FJ0Ur4Y{):a3樍1Vť/gnP O󵵊|(SM̊w(bGl_n6\š peH\5-8k^c&&@T;kMxH*j88qM,VbqBb2Mȑ^n#B KQ.jN 1_nk| ٲ1KZ5j'!W/A ^qG+Sb:@]2{{$-lFvnzHv#>6##܎d/ ,tf?9zobW͵>[XYӋ޺5QMp' tԡu-{ ݖ''#§[RhtB:q@+e;3M#>#Թ pR.,_R[fIvE|prjڲ0{wUlATPm1Y>sɩBۘtH#"/"jJBFU¨(, y0P , C@Ikk-VoXEKZw5l?DmL)_>΀*O8K4UM#EQ6ݟB^O+:$|;oy.Op,gK)ҊN%;G $u3*]0  $)\I<@ \#=S2#>~nՋk/,c5ɹ GxѬ3 ݼk"yuoq·\0FPV~`΂nMgҁI ܈],yzJ(p`M9`E "ՌB7Q/ k ./߇ d_<'Qĵ&]9c8e Uwe*rKejVZ;ɉQ*r& ~0$Bxʓ`ϷXn%.:8׎ 8O ĊJY̊L!pfi GH^(;uITu&qȾ瑧3KϞ = {k2n,oѫn PN! k hF<p8<j GK<n!ٴN]rLu3τ7`,p+CM\v ()d RN$(ۨ0ЖALYX.f1mlNhI8+ ~4Ķ{)w;Al_#@}Muם=3B,atsMhm8{JTCܽ*銐}NL}~'U^Ә4bPwY*aiG@\S,TZVTp, +uki|x{[t<>N kIFm\h׭ sx^!\u O`-uq:Usk0)l T$;d)#ї+Idh=Z3vQ.P|Hԃ誑zS@ xs>RuF+67">t5x@ZsQ~;bS(?%.ohfNmgg~}^*/dc ;hګ$z߀V[*Ûo~ )GB'E%mh{=2bBs&T,DYYKTF1l,}|_$R{Ď&gsȤ֝X)Kn>h6o+^ަqB%__Jo9S jk:,XɈ}4M(E_'0i-ĤOhsM]/>K(#<,,;C5_)ۯDTZOa,IDKMay-q{W: +\BiNX!eSDF/xvdMYI c~8^6di?:: \@*'h!ۉlMAL[%XIdvkEZ$'pKMf!WV8boJڵRzxi Xz$LΝ+KUqG ZGβ U qW/g: $Pmnݜ my|u!8wjXta;&FN#D4,wؒESs4K1M}Ir"~fW,cie X0]B' )-Ә)'O}'`8j=TPVC{^xjͭ6t?JXŢW'CSéƣ`g&*^`z(*ɜyiʥ_,C3}lO8{fAY,1p\a#;ֆ٪0kVN&G+tHIWN?^hxrSkqv Ze*aw?*5r@"!VAEΖi%# ."V#Nh{HzΪ3ulY~XqÑXH+d`kkc eD?\GЁ2 ӧjYgִԌ\Q未,,YC /?D3SYכr_rY!Ÿ+XG9Ze^ub"i"v#ɔJȕ-@5Y=ꁇ77{~5яpfzb gЏ\awyłȵjARA[EMڊDs-!RJwv[+7 0-OG3CsP颗W**6 G~_͔yUy˯˧!L-IlXEQ2NJ>l@ngF* 2? A/-epז"ŎT Y\AW# l.K3ݝ#]F 5pYo(yuy" ~<^{>I$lzbj΂" "5VN?yWhA?%boh߳HM=-N#owr,'+6e>J8ۮ/ !׹Pb `'q!@<;B3#4\BO5B˓ #m$e4'5a ̌AZZ]RE.Ws]$8UpHkPHA\>;rƞ鋏.)FDɾQu$zlҫ> 1)8P=sLIYyO{-+ni3PTUфM;|A2ڛ346M7א[zM'CF|UX2`휼id=i 8+RՔeD~mf*u6faQ6{FFe ma[{79j.~3Nc(#BxVw[}-!A|9̤0ټɀs-D[CfR/ bk!=3(Hr@@Y˭o߈sXm,/Q}W+ %-hGq_V򬆢nr;&&/=ޘa>Y#1s ;y P7v_-9 ޮ)[=:Qr9%L-s#0K◘&갗oڎ1a7) ĝG bq&:&Sb]7X[!=A1ڿԆYWni\2#SEW1.PQ^b@@kL~!D1ᗧ9Ȓ5mF8("o ?)^X k;ŧW=I⣘}R7nj![t0 w=#٘<,>UQްP nDt%"04DԍG s?T#=hnw]MTǬGo~掑 붰y>WLYLe@"0Weyb8d1>]&?4v@(M# ccpnK2>wQdG}#4^8mJWJRH59[i.7{-S;0r ktv*vY8BRu8mtD[P|WMy-(_Hvl,h8kDKb =z(kN^/t~˓br~  xwuQ.j 9ICٓU dJ;[gM)wl\JB}*!U*OjD%'#jQ.Q+\Q7D]dspјWo>Pl5|l_TC݁m">7|HⵧMWkN;>tw߂%^Jo<.nuZgrmOaotк3 r@ez ]GlVMw "dU`Y \N`4;4/Gk"$ 6r ԎRm%> FkCuSkՎc ǹeXDd{^|&ǟJ oPU0ק&g‹OT;BE-9btM=(X:"EV8ϴf'bG\# 6!_*dvVn!SZ5x[U,p26`)?mo>P9l&=E!ni?Gz>,t-)\z1Nf' .\I4Y,Iثk-HV/i&dp}ZsN k?{A`/D] H8̳l!Fۚ29hHБ/Eo%bT`H9 O8@}%>K~u**(hC-!% @%FhLw|Dԭ 8bG~T !);FXe̮m0+H=';2'""z!G22:*֞V6:j+2ۆ5;hn7c3T δ?a3;J)ؘj. $ZR/a}!6*μ;Nk5LtaDpxG \Wk͏;޽SYfMܲҬ{>@|l&ZBC] 16!iX;75~V-ΦkIoWօ^=yuL픍uo 5zg[ ƺê4\E[sa(`cH/Ԍt=3_.GzzEM|eW`O3jĖ &(Yfw&VJ`ΜUA >rJADn]DE[,hApK ?y]h`"͡3֖j2*P1bx+Nʘ$ͽLjdFlz߶eW6O>&뇾ajPr7dT3 vu&.(#'NOQkܶb8JDyxPƴrz1q׾а :􆢰 ^'p׉OgNWa՞G\vso !ykr>jKsSg)/? b \2X<${8(pa`Q|\L][WhX<9mSeHj,Lѧ$#埠b74Aa8`J9>Nj!ltjj6u2:9h4m>Xd*k#{hW1m*ƱB|d%N3/gXToN['=uq)J}vNў,bS&ku hƧh+ZK|Qdf$'d[5X[s} (_uDkڪbs 218,>NE\)e"gn|gWY~x:Ր1CE~F)[ 3{;t@NN^ U| 3yAؿe('93Fӂ3 E˿YIj׀bv:צhzkvVbEWP32ӈe[佘:Gp#񳘋]o~Wp5ؿ_/Pi%x24]t,<'!To}V2ߘ> ]w.$y,SmHz[/ Z?\s'99%q vL й5:L1+(H4:}CrȊ~az@-d$@Vڥ=%hs3>I$גJLYIuRd/ZM 7ĠVlNᕔ=47&a{|<4c*\NwK2AgJoBL{m+t)!oo%a/oKMyvU)P0s%:/6O?ԅMȡk/Ap @G>T'z&jir) ra{g%Gz սC ARpȑb޼ٝ_h gz9.Zkҁk>M/ڲ@dzՖ)U^ TcAPD\7Eyܥ*ID!GE]1Qʚm&ߦWh9JuVw4_y QÿbPE@@Eb3*agB`dzqY.4e>ITel;w\t6##DP{C6S8֣Fh)%YeR~$C2`#/mcBvb LᤒVk!ʧPṊ҃y|~!^VRI[RZ'>H!%0$h2 { b¨1魁iV4<@[nJ\.|kؚl&Tr 굕eفzVݍ/"l.(Y/7ڐ%%fxcCu }SG2ubp͉T# ,}8r4H=,osP2 oor?rLO~XXyG';TjAHef/p Q_4N~އ(e.hQXA~w=]F6U$|w׏"\W="D7!qzv SEZ٤(DFKkЏ k} )md9H+>^ U85\N0O(ug:YvFk:&iazwNklد̞$P45 3h䢖rh$@{-OU)-]3D?w E{%CM6/RvId7R::#wprB n nT@_~ԓiHQ䠹I [IUjr}wf.p"8`~>Zخ;ri9$/k=w*'zOH4VKسyy1?wFA0]*c+@TV^B+ jT5di N*,eO)?}l±(;*2M\hvlY>Dc@$eq9ԃL4 = gnJr:xD0}E MRH{0+K35k" !sWН7%kġVɆ"ϏmH'L0TtV R-;H_](S̄Irҵn$h຅3-n= v;LPL[XBVs.e_A}DDnA R bĢSzQ@\d^L{ 7m+)D:ݤSbPKzI Ӽb`S}NrOgWIL$b\%#-MabXG ; ^-:j~V:ˏ|X@yw^MX*BGu%gs j`lXotD!UD`Q)M<֦Sbe3hN]8ii"H]}mMqrrV,$| [թC|0h)ךZX 2}ΔyxnRKw .O,H=& `4nwQ_'`;.i!q%MQqv̓V9Xi | C=sZvSDx fL E$#mZ}4s꟞. cASc22Œ:qߒ'AU N-I}%UD:0d>fRMVAKxF`d ̱HC.ls JR:l[L&뎥G9s×IJ|Gsi@DF3ELa+()^,mh4QK:y YDs_nA\3tc0T֕ؒRN(fZ{`4EDз שrf go)TYQ)C |}7V9 :1q6J)b=Goչ)Ub́gUu5i{qkÈwnԫ9DFR @4d[rş-e >}X,/#9BTG7GlV݃Ό{. mtl~"X@eh{y (*shMW2naJ캸º9rݿ6}|LTRdE.қ<0AYX,ZYǦ/ fa6~]7)LXӕUI-%ÜI;(]oFߙ\ܧM3rDH/P%ծL .i5Nm~R@l*>Moa}}= G Rus{Įόgg^VFQuxq/B:f\m)?DB0X$59UvWQ:8J }?(FqX>B43)_qk$Ah^`*/0fj[\@!It,HiAB ?=jRۮ oG{O"dTdo)[VEa2:SmzKT++2dmtafRh[r/ڴ2& b% _}ߓR^*19x>|NfWN38-\IgL-G ,1 Թ o47S([8󭗪٥$qFTej(*(\8 V' Vа7YGfBCEͶB|YHg'e. -)҆wRWa+tym hrK2yw#JҬ(F]a~ʮnRg@= FIaJ㕶!W ѣ Y:%8ř] D3Py.]7^ǷDY)U}D#K#56V+i 2i2KDY2';[8 X!> Y[V& @_۲K;%wXsCUvV1 a|[)sF^4M!pL L72D z.oAe#GM٨gsrz & ,Ԅ:5RzE ø6-#&\Xrjە0ˠ=.+ O)zkeh͕\%,Cח g%!>UxبM;M0̤xB"M) a֥ǜէPccGX/F۔AX(]D}r: }Ğyy36l;8oǬw4L6@hQNV59i&59sg&㒋c7!ݣczuw;Ķ9$W䭪܅%gIb卡?sRbJV1zbUب]H]XJ 3NqrWO0#5D lF![97}xtbLZ[3g?LaE_g]&?E| @%eFҡu=nvrpzQWaQ{&:A5ٝÕv;=oXl)N[3bƬh1> 1'sp\Ni4giBF%GlkY$ndhLXcHV q1pߓHz!\YJhL:OՕcu@ς:.._kT%+KB'  uy/__xuM)Cu@AS y@lFdb96<)*)uFU#:]8/ZbP`?<AOk[!/t@G&KZ>*G"x'"8:'m% %4J ?Vk _8z){9gzb"3ꆉg(Z_"#FIƽgM9 &U`6da&f,RѠړ &N{҂D/˖yOˍtz1]s$ps:Nf 1Kʙ #-y^$gNR0߂7}µHH-JJuF.$0c^APFf3\-πON)qi c>"_dIsNT'4u3V[Ⱦvʛz?׷WqynHf%:hpC6@gc(\r'^KX8D0x,;)<W9}3VD"\R8u[AP%yl&̔Ys#E^ #0s Aο\aߠPkKgd e[=\'VNhG\s4O}-=Uő$WbS:nli]JK/]%8gYޞm4I*Wn@3_{mP2jM˺c%ead1sR` ;k:2r/Bmdcş|TG,  i+B  as uT`Cn8Z_kG 6;\w e }+^;@e vc7$[;&=ÎIa}CCxW߿b-;GB >*'6mH5y+R@ZiHyr1 S=%p(g_"tlH~?QٚGx|ɣ&ߒlLo O:u5 iHT;<Nע&ʩY2k֤"ŢR+dCR^f;k}eT'Jmf5Sc(GKja U"0%_ zv} Ib7Y:nb;\GϨdEKQ4&0iO 2XmqHGqҹg17N0+ׁ4G  }ā_#}'qƤΐ*"9Kl _pHaK]aPv#=/YzKg d3((KTbySE5yl]4ΰzKo|Ms?V^Mi-Ie[i_}eի%w/_mWL?Q{`cڏ

r6Q5)dJ1&^gng pVBj&A<0- 8ջl;JG}nTr6mYB6; $ԱJO?!6NRɿ~Kͽ:ˊ moSCCpE|ví+ ͨ>7sSk` qx@\e8gz0|%11PӐ^~å73SRqzfΕA(aFU,{otD?\}y|ӯ4[/lHĨB7=yP:"'\;f/W8dƧ\gX!6NywdV&OێCJ$(i"%W81(Ʒw:PNnn[Ň ^Q$U$3g8bð\ - !;W5}: | Om0,sOhV&i!"zOj͟kZd|F24!D#Z8_Mb dsIrjwEZaOmMrVCGևnlWۗ+WF;2/څH #maє+f o#=^Yi;Yx^0 %J%]4vM)I*(V._tL Ng}z-r*7NI2_BRSK9}ϒPWY*L"aῧGW] ͌ \i"ª5*w-5FXCYԮa0wR s/M/WGѥj$?ȹCN08"y/X6dB@*E n*",wPɤ[.\56e439?V4)M57Zuݿqź{ M~.8}Iz`WLb߂piWpLH{Uk , ڇn@a_Cz50Tdɞ!NDthF*%/.#{kQ󽤽a-v}bGj w5j\W#Z@*"Ը@ TZ$ YoK'X5ҏ(R:!熟˕R07>k?D S"\սRg`:?̋3ի:C6a@T2XMlUIޒMm]T>F.;?^[ MpYQ>ThG! TGt-˷DBPsۗiYҨdH NNOqc?~o17kEf@MΨv{ *k|Jbx_d\R\7|yU\"鏓j7Nj0'L+.V30g5P)ĠOДx}. $苹с5s;1b4za։A{$~?I4hv[ {OM>#pS Iʋ]ݞ{q\q/6Udj|ӻˀ}x~'37VڇsiasvNYoeMn8*12Yo#e1uB1ěO :/kè%Ol Я"&ߧ[g~tra MLBh,n[j1z}ō=A, 6Ά'OD@}l%tbsUdNj}s79з@8+1Ls:Z8cS^h<۴ʶb.gGΉ9 q/l&IĐCݶKFH2} 83e$Is? B3>4Ȭρ)z4q) fW:^~B矊'vy0sBq0[iA&cq8Z|D q ew(/]j0+…17*3yu };vI]PuJRAݦT, ʝ& sn^sT3i~уߞT *). F;Ѝ^b>֊TR|&X/ ʧr|a1k^wv(^y`B, dZ l(c|%T~uB_,}sP1􃏇;:R}wbM  76 4@/ٷ2.ҦY0yr^͌e,P$ǀEh 4ΑOc0MA˗u돟CIF v0~mH3M^q`fO<ȐZš4s<3$=*UEN,C4EFPQzX2k:B콯܋8'He 3̻-__b Ŧm.̿ڛXNDPn/k]{ Xk-b8i|]7+]4rw1?$ȢVƯ- {|-LLPν۱LvFi´iL4}-j":bP 9 v3Arvd#;jRFڒa?E ~D6>zOijrG\+:0c 'B5[-5 U;jscC@L[?j]^Dn 4_(^x(M|)K6]_-XsM G 5fHL CM\jwh!taEoƏaל{&COs~ }4$G#-%Ez6Qi(Y잎Rr~?[U_?`̆vKÆ r{GJ:I(#CgaK-2O1[W$u`c{ S0j`誉kl0Ev]va7y6YU3Ьg& Ce] ؒsB BLRX~NcUboY`^J-i/xnEm5΃3ui&VG7L2#}LJ!|QFr"U[z_'] àg iީK |):O>0^TMGrr%lq&녶—-J tҴ@+8h<#Z:*%%‘ 5Orލ.Lc"}%/,2Y #h2ںS!v.6-LҰ oV-<ȳNWQ+nU8Rj-IөNY0P!X*M_cpx#GW\)C1ڝ5[!zG> q[T?8xGʵh+у"ݾvZ2SܟvJ,=(4 bQog{x_}.)j |ه qD&:ǙXmj.$复oma̎'5ռ_[Exhgf*)S ljw ͞wc>s:_YǸ8%tRL Z0*ȠAA4{F|?:~ȫ0_ E?ct`,N?#&ˌܫa n+#7tMySr uc*I>~buDPǺ+l;t֡hS#gǐdR=kw# 8rP`_ g3P%[*k -G_ƶr_bC#"KMj3R|3Tq@0LMy#'"1簟Ej0c7ʤ]V `l-PxK&K'?~u6N#W 6YâdMi2 myovkЅBGuxKS4 T΁ OCxc7awIC޴[)|Cl込W<ͤCe+d'{%1=ey;'{hs<ATNWsTw\SηCVyy&>p&.7 4@7rdz1?dW`rIYٌ H:K TܺET1p%IJ81&UpaK}$>+:pBM\c8ɹk'E7_T' l]ppτ)9ƧΞZbƟJϯ,7ںԓBVk bu$agWdU̐6MU9sJrlD7]$}O J+,x}ַTYv/.gO7ZF!/tAa4ʳq(t%I\4B{ YhGnע~ 6qÜ/_#8kB+;MC\Z_RvAo15vj$lEn:`DPpT9FlHŧmdǁ vdC^\Tzz@@ C\AFو è2fg첟1$yU[T/EX@oᇃ0#7&RklWwj,=̓NvuE_5LstօG O) lDDb7Z;2) (JRGk])H PeVI%dbk#&9 ,x rhu'&ֶ LtO԰eςVjẺ,4GO{ XfRhDEBIYNFmNXhrICW2<|x:jg?5d\&-8="8`PbFi} Qc熹uΓI:#C;THl~V[,@ۅG.9/ LӶ+㌡EKvgM qu<$+3eS$ 'Fۨc?McJFq:GS+x1Z'HyEuUهq#m9zscl$(&Renl-4~O14͍D+k!Jo@qb om)}+d4Mە?h8|wli)cΧ ~r ȉzS=4*0j;zQɢU8~oX YN$Is5kwq%]Xw~T!Z  7_mYb36" )T(H=eM(Ck "Ky㠷_c&*6ܛXfl9+CpRy0XwKs.N3mT}dp0/99D"igޣ`D)wP.ꄊ}mnkCUAf `%N+54#iDL+3jgS議+do?;mɇiԉpK(rNVohfl5nSѮ|Z0xnOڹ3+}YuhOUJ&qr1gN(pkTv⎌ !3P&PT[>_`Y{i{-%FN+h"0{SjKj&ǮuxRA=`.iZ7U9Wˆ5NMܻ1~*h^Y:X޹j4X>>Agn=u,ŢѨ`;*?Yo&sӜWmִHl$VŤ+/:Wn1q7qGB˼lf,&^ !|A1U]x6m&_p0ء1Y[o9U8*LQKBAwAU^lw6uZ? |lH4fv6G9M7hK֞3#$Psy pOش*O{FkQݕ 5zMՂ@1Ħ蓊~<@ыsuϑT9g'2tt*mSQ{qP1jTଥi|`hb}*2&0 d\%hk<?Z@  Ø`F5NJFkn_u#L Y^&I .? ~^/%xh+ Kp2|1L{? HZ`"RErD8$M?ڦ *_dȺ7s@M8h0S1[zQ9&Qxxu:?xB+.p# P#M&u˕;k$ .*5z GH?$ЎzŲ*?L{0pqo`@`B\.kMcߘ)^ ͮRRwV gT0ey[X^ p'պU y.=t]1z˥W"\CqH_o ?Gw2bᜀ(UUYjj~[ݍDf2 DnXH6${/+ ˻}ciKC7op laBN*濠2_J!?p{j`3)Eyn4k\ʭHbh黀wY" 8Wu4mՓ>051,G3HXRQ욙BGś&gMLT@O1 nbGFTP)([~و(jT#NMaj*dKxy(;vgfʹ:?d춳"P"į 8E5W9GmwBA^2k*kzPGk<[Zsfi;-㴌paZdpƘ1MӀ=xmSKu%XuE􆱌>_%3,ݽF/?L H)-+8:)/Ӏ%Az]=ˎ#-ω-昽A]؅TRGnaZɮ`J**t6¶rPQN lUj knp<#[ӒJ5B%yL|?lF'\j*)I>]Go&g'⛻/,?Pl,CY;GJ)a O D 6P5Mz#Pm<[tZrG$6}Vے]HFp;TbZK4ky'"\)H$Ν <:㥄f@=CE %ܞkgJd-\V\"ֳ:քg0GH A 4`KIe\ι{g~R'\DzH 9R dNڒc˒s7=mQΤr'Xt U{@M+ hBe xgVr@ܯHz1ѹ`֊]48U\Z[na\-M bl~5HtV_ }~YarU`63Zy {mJĽJ߇Ou%dkra,WV’pZ'a8xt;Y}8F_Us}T oF3 ΰ)n<ۀ{{LM^0v'>iW]@ ;_52sv4߆#]tf(u> j$Sp8n2}1%1`c-; Fs!TFzuuGMI#˘VYȚ⎡'vI h["1M b)' RIK2(o88cOp.bNN(TΘBΞEz(j c>[$)y%ذzrhVݟG\#V]oY4uؖuMt%ϫ!@%(̃S9Nas`V,AG;XR s$@U`DgVS*|kB_-ں@nW7(.Z찞BD5  pڬZ6S#0J`þ}\A@#UYxPEw|&&5@M:ګK9`x(xh<(>B h6*C+[]IGٛ;"⺌Pj^MUEV%񔚬V2ϯ"ĥӓ`EegeEU/ 5U"G.U`ё! ӳ4i:}~W^&꽃Lu8]~^ߺ{9SR!V]Yv,vm >0q~@(*u{;ɓ^i3*{ J3>!Äߣ8=rRM138Lt +]uөtwmzOU|Lab)\c.eb39˨gE}nes#A+H* 9zV~8'F ^rdԄqF6T,gLrT˜Dji,fސ7 oP'95L,@NMFM2b41ZcC]Tf=fpCX|*2?a(na@ݬejDGFi R zVcA&$Q6'~hSʕ'̛BZ=VD(•VŻ)]Z Ar.2J~zu]S--yQTk^NۤF^VZ#_3kdQ‹SYsLjq*)!y|dtæ|\/ȁgC`Aܣf}y!Z#/} Uze:>{XqS5^eo%qxeDBza4rҝM\@C|>qTi)qˆ1m$6 UJUMS.9Qw&1 YTAڱc#SA̽ vn)㟤DaT2,0n[5}Z;WfJvZ!Y7 |cX:/JP':OBǛ^CiQKO1czP _uX5N \ *d s&%%U Μ#&Qwmke`)=|;?X>ݦu2} D4 S NrY?5P-TgwPb{KkHᙿiḮ2Js+MB)W,?eǂw椿:l ʜ(\Za1aOnIQyG'3q LoRLZڑRAKdO8#{=BO'* @'.,v6fGMhCn^<9G;tT4d7?Cdl'{Ej>[;Fߤ.7fi +I@p]=a f^*;eV@{ՎA`f0W㞣x'ICR *&Ƨjq`◃N^pƎjpB ON;s6қ.✭ekhw|x\q 8:q9XhQLcSXY9X/t? _H, ,$n7 Z'.V)SGdžAyz(?FK9߽ƫsPD7 B}NHDL:ι}zg2 ! e4BavHkK\ #NO*La8BG IT?A rҮZ(ՄI5x9OYj_|dULVvk, O*PH&@7/56[qR֢?Ѷ%Jv MJk_^Sug M NIbrV-F,== "\L9*ja ˦x)Gry`UIåPeMR-oÞ é7 $J?5+ jA˓,&Kח舋 ]Ph8(S`~h#ܺXOjoHerqiyiba 0[Pb6}z y3`F09;o-Kw1~t'c6bքTǫ#G˱2G& 5Z!dK3VR 0=ͻY$LmykVo2{.?w(--D T19W'\k[d|Rm ܝ)xK2 \>s7 8j5jɕ[:-/4}-Z<{̌lbKa8g[a.Mji/8 4;3r!G"!V#AII|CNG!fE&Uh~h{ͤ| } oheQ*3֞Q ARrx[Ng) Pc\vUѽQ<.[3v4g!s(kF1ӽaei%.53M*r2=خ`D҈.VnfЎ䯯[aJoZpBܚ\B/^h"ozrFU=j) Vh/+!lp@ _]rM`*|_n)):9g hO, :&q:(`!+$H[i+Ȋ;!B֛v̭aP0.B60BQP$:MÓ$>ln 7JQ?/`DW>z,,UׄR2u 1KyeEgOQAwl8jbL ]XXz~,&=ӝ>=ٻ-_A|<@at6)%(V0nL(e,g2D`n{쌗ɶr]a.f>U,\URޖ!"K)|8]t?AtiLPKmټ-rLuCgiouc6)?xlTFS6T,)S2T5iEhOH-d%cY̫E+P+%kz%[[ef9bs5l %aWϼ@Eοk=29cRdil= ¸8d=&;+d+&BG<+(~KJ ʐypUBe ɟ=:.!(DN^]:m7Fl jgҜWH<' |Vă ŻpHbU!E>f@ I5ĕv4$f9nÌSp-;\&i)e78ՑxEBD{G %"½8Zw.ηxEkSG72BhqwrDn"t#5SN3eěU 9O`IHAc -oM5ZKYe.2cPd#k1l\=i廬ԭ4T)̺jƥU^9\)Yܹ Eul79./فccHI, 1)>qLX+4Ƥ^_213R&NnA3ƙ#)??)k5l ioF@G_oifcם B2I U$/V{ U&!b.OP}&J6+?* .z׾׃(BWis>l(xg73/c̓tvm`Mn"Ʈ T6 IQEeY\A; j*׭NI%"!YͦD!AuïNpNdXid6^6'ɗˣ~Tu$< 6M+?+cp8?mJ `y>WE:Y{;,'T:Ox؈疠jJR^K HN4ex+3&x\z}[_ԩk@nOrK_ 6g̸PmR^ofp,G]%VF5'@iCXeYI2@( 4z3,!k S/XfT բTr S|m_xBt :i`OŷIITC9$ſ `tl1sq^^lDQ |#bFuGZ#[(w@baw)3ÈfY)L ]^}cZ?L318Jd6lZʻQ/-~8րVqńKrg2gcJh˯ `/Y;V@GK(B+NC:_ aZBB_v؀Rb*f圈`ƊQbf0?LX /"skxJy+i#^)5׼i?6N%O,07FN7p/`FńLHGE9&ߺt##HɆ+7]|eCT_$A=9pBL.fJ΢y/Jc3R="!tYhm<_A}$uGqwқ  j& }=us&,#ޜ7YC8̢ꬷ!)i4ddΈIU[O#!Zb!;FVtLB% g9ڂ'6з%vpu6š[f/) ڜz>mi-~1mٞAK(zNIJj2ɝdmw$73ağ>Ji$x80KAiYz,Qfʣ\fbUcd#~~.4d>1?";%ZQO2=t!nyIIor28 fB1Ptrg@[$O`V:#1FKwu{\&cx}d;j;}ب155A@*C)^F|v bD2 fpN߷ӂ GKlނUBMqάzāөiw)eŋQ^d_Yf8k!.2XzE'Y|p$)Ȱ,*{cc$y(Rg: 9D4"tn!N;ӿ W% )ꀙC~3 L I34;qԴ(?Y<'`B9, ρ' ED',;A40|"=r^!Ғ(ӀPD#j%ό8m[f#GPPd;.H^+2N&ʸ0 =n'DψD:pā͒a*0EEOhaAΐ5;3c t>%^_S/:`&q `69C7`u kꎦt(?!D8n\3X bLAU3"߶Y"ۦPkLA9M,m4.#Jx/Wd[j׹(u|Ex6Pч#Pl9gUZNm ӫ.Kpߚrf.dH7`{mMP 1ߢ%?nn,.i0'?tL!sa& gK&]\U5ŬrpG!>R+A|03VXN ٰ|"ü*g `Tr K6i{D,a koHKD{4uc]yUXӣ&|,jB=@t[X23858U񉶽O8a`*KE6r4I25vwLjKdR\Nb?wjE ƣWV!׮؆Rr +Qݠ-23Zk[V\V-*{a&IN!&A Mi5IkiP ] 9;KLYqޤAei=+^1%(; m !:]Qqj)?SȜr%*^6l׹zA).}|~:ֿ _(eq8)XKO/<,U:q2ܕsO%scn=a7ӲFMjtz\OF^P_!cL(l,e^n)Ϧ6;?% E3 CrJi/HeZuܱ@:jLA@$vhI+CS:jn_hME!L\c;ӰoFeJjQan yȞjp*RoT}HVNc3)|A98]8uĔ rE\6CvQڥSd{B֒3{XltZHBV0Bt?Y(w>kag٠wo=^wT7&7P7HǠSv\=|NE :F}x*p}>[qt}2#@ܠ-{q|z!|SA/Ś=0*Ia_<ļ[;&JEz٪r b ǎ;pt +y+\Q2/Ǘ^CZxf"Xg2޼DBp5Pݳc"FJW*P9?Q& -&[E`+ЧSo&nᷡϐ"C'ÍT\ʡUgvph1XjBK@ƋfXnfAiH$(W@Ф$|+#v< N) lyRLrs~`up]B,0 tKkdrRoNe sˡ⽅j|Ar4N}钓DփwBk/0Bf.)GH7'HjXC~^A:$Gl1\+E\nsb$=W1Y&GKG#t&B?,䁒wl>⒕4aVkuz0}ܟO bmL݃{ d*=y#/|a )j58d@97CmlDžM8z@6<(=jxc'lnxQP{Y8>ds1]њmF@ ||4WKTbO-oE I hpֹZ%}<.vrJ=[tA7B+ S$Ԍ#LcLb$n9CKL;.[^Ek;6P؇11%<$ZB:;2rh* %'N!4f)-LGEѰ.5oszvb_!Sq~3-ٽM)Mp8b8xcvT: $(~0ꧭCK8+>Oo'[\yFkD0o*CU @E=e(Rt?`wh4dFcDSt#\$U^mx'_!i*(aޡ^\L# L(QxbM9?O3`D6S( oNC=Bl*'q,uődV[l{)qg-+M^nCihmR~̑/͆@q褡ۓ2XܯuJDMy_tgŰ4v_ MF 6g6,I?}>4𜰨~_)5nKJUAݶu:k甿T̂L g.8j8L~cW٦1[kup:za'OLH#^*EHc|; EQ->:Y݂ a ' $wCƴHc?c6ԝ.3Q+!|neP(ˤl31! ![c[$5<R73 1q|g\(!"`bQl5"v*.=~D$ պWYuvxԋ;)TyrWcHR9ڕBten:tz 9Szr ˞g0G)keisMࢾSnq*縰 <ut$n[-\o1`~Xg澸 N3U_?2rv5zCXr?5MqbV{_#pdA5wM4$! qkn^kw2ʡ{oB oeL[n.׺RݞR":K`3iIYR֗]4H~4AUmq\#`'Ʀq`=16̼W[û= B@+}S(3zEClK)** ˯(T*scz I`DOU@O-q.,yBC"H XkDx/+kX8~,w k()ke)K Og0Nu ᆽ[PT Y [Kn?AV+Q_J]JlW@O¨Qf(.,B6![-tUj3r<~AgL"vcsqTvͮ=v1~i9 G!P-lHOn2~- h<'[ˏoZ)2;ڎO.+frwKLX{2uc}עk#L.=M*r3@FdbL<"sJ*bi2;rdmXM ? 1,*=g U޶E2uB灋x^ pƹj+i13+tBJoޚIL gR=s^B\&7uwz?J8>IêCPRie,V S 8&7SzãM0n$41^qT [2NNK]8jaW4/*y݇ Ƙ2%C|Zk yV&Wd)>f=y׿sA[fU:L!Rl y^_%;T\nm4ɐ&hR|Tq ™Z,?v0H!ZfY[rQѝQؾR+=S_q 6JWL!%dz`@E*P 2rt?*fZ {g4'oTej}QNf]*'])-%ҕvPS-"]׮Pj@E.Ee!u`y ".NX5{̔ _/]2tbóvpe Y!}jWk?/+Iab&gL` Z IlG$ҳLT2YX\sUuX@hyѵYY&0R']BmsLDYOHMYsnL-iZt`%<_A7ޗBUGMdX .Wȥ m+\ulPI}\!F8֪GP ETq4 ҈ە$ioA<.*nW@ÜZGa/,F\% Nw?lNFXiD<'[|魚ܛw|d.:4w5nO_'CC]ޘʤmp\‚15,'Y{Op/:?Km UsKPni8,#w kZa㺝Fix)؃;@i_+f۵|VBt{xJQuG$٥|vJ0qw3"Szۅy-v*E|/ FF+I&W8=d'~2Bb`VL`-GRJ1+O 5@8̱jok/آ9jOIa'[d]61EыDr|>%.Juiz?Z2JT|8R[SʋOJs!b~͡,N Ok{-eb>=ri ÇQBHُ5"x9qTSǚtz3#n6ꭱ|QHSGE@4$jm,Y횜eq\hafM?&rF\$Hh}@fOo5mIB.j1 uuI;~)K3MUN߾4Z ~OȺ剆VdBP0O&0iyğX'HKjRθo^*ڙo F]5Ԗ0E:(0*RWXS3)UZh'{H )) g$݉kH_X`GgÁJXl XICTbO1uEPćZB*xUfu@w!hor&ڃ}Y1Y+KY5{]Qk)$,ƴX(߯4M]4 Z*6p!si篙iQk3%,9JS;Ɓ202VlI,65ah7BT),%tݞ:Cy&wQ0VA݌ U~f%諢 p 檅<b^Wh3X>~Ybk)$V:ws;רӀPC!GyxkRvXtV2g} <_Űs;V^GwFhc$Q,ag:H8f,o ĮB6i(Eߋ'Һb7e~ʰzF9bGgNyi@Mߏ@H_J0BḿH}+N_'ugՉ0)`kstYo׺8,kWp[)1߄+dةL@}#|r u >R9e={1 #c瘍NSEn(.Q+LA %_ A\ՊY!fCX&Qw9EFBXYƭuZ#;>'<( 昩񬽺7~k-3C暴8om{ ;*~xdܭ,7%/BA.6DGA@W_`HF^+q⪬I.&֡U8 }͜F5)O4TIp#]v^PC8[eKB5CP ;|+L]2`5%zzL;1z8[d}}FS^GP}fs3MڻrtGJb]r>|o`QUƟ(^+^1[DU@l(Z$aiȹ6l+o+vY92úZc!fm QtoJ$8ڻ kOldqoZO[)_YFp-S,FG^`ꦯsUDZ"p$[ 2FoFQeʂ1cH4BVbҭa|րqhd0pbNJbpzX].߀X"ソȿ$5jѰA9Mq eiZm˅MD9]--F1kXkSv(a0n=顚^8*Uʢw|4gOVbG='_Z"y?ukƎ31PfEa=Z%ݰޒ `r*E&VbTGZUZz%=(gB3%T5[כKw]3,+f/x:G\E'Pkn;[G $qd XH:yeOaVd8ko{ԝwoZ !~G iHb$di)4/U IADQ Qڃ"94wW"h?8>^!H)OjK.r!mXCWA4 :Y}~H*V,~[YK9yvl1ERGR6f [+TM;R_zh5کG%@?!ka8p/(J u]1'& zZxeEYj C*AL;˜+cvps"b#}NjB˙@݉ ?(ٶ\uk>)*P g+Z#&Y+1#g1:h=&tl'ջMQU\3\ KYbfDMT%qפ(p}>,Q4Lt]RSRQ>?{!/X/-20+`?۶vjK" vR$ҜCG+ͩWc23Q4Yeyj~ [?{}+e9YYh|;Ai066%ly#6<]anX[$ But6'jS (=tYEX4IM!cp^z^%:wf= !3f EmՁ6uLG!`O;Ug(;[bTT)oiˉ4UXp&TRpyVhDŽV'Yu> CFC9å\*G]\ #ȍA]`??Pȹ:{g">^Y'ێw4ܩi_K_ZKb^*s"\3Nᖙ ,W^[#7I#uGջSTC5 wnjzS0 r,$WDɤBĀFms̩[@}#R J$J8̗x#49p*{=m׸#$ ؂D_Ke=l3TgeQԚalGȂ1Hqs|\}#ڎ@P(y=URtZgԵx"jl*Ϭ!Q &QcfBw+. g^ g`WFO!,)2g1I2'˔S vy>;wY̸ޙj^ƸNOg-RX~mL%IF&vv๭ 4'*p,r6Wyx⹼_0J #]\՜K:- z6ܲԜn2VC$rùrA- K'5>$t.,. Bl8i>[%q W5*3ɭ5&F+|:dưƢ pSPN3I4\ tPP7W.PJCtd UfIqCIa3q_^>6s=֭L:fl?΁|1vWk_ Bk@1Ĝz`` MGI"׳YL &"Fu'U~=^ۢveAmz7FI.Q"c(d~*2 5Yo(|^J_ jW(TGoR{­@GЪ\qMhE*suăvKvlBw1 xC(!DlmzYH]V*A9#4NO,CB*ME@+T'֏G̾|Z3M\-tl7y\yTNKiV?Xj.Ȭ3,S3a Y$HN<ų\ L*EvN`ܨ4,9O`2dM lt@z'P[a^'›HyfvL <>S0%5Wv#Umvm&FAnbř/O(rm8;cxV3}L{A(H~ \:XY+&[dzr LZբs*rTGD*4CZO6T[ԲOd%͐K') 6rO6}}e ELkعv&nGDO07cEp,z|6Ƣ#bS=p)A!Θ*ٗ2&A0>{VkV5ZO*KOF +r|-7rZA#ݠcY(M'iP33}%_NlɢP:ޤ;^ ,>9. 6Qh""Z%CفFz݄9{E#fSllamkl|ZV A $)}ffk+g,Bu~bCHUf@ L`DS-B#=y'UVR7@$V< -!рҢb:48e"gf2n+Gfqqa9&qpG)] .@bnݯ 2!L#TC6XōgƯ$b_`MhGG'Cvf9$|A]\j%Y;,Wo('dMKiy[0MOg LҔ 0+B|v>@ɚ$)~&)eв36?g@ *FO`Jz$S&5%}\l3g#رK}}5闢F^i`cX"%XqK"&}.s~o0Pp.G|ՂDXj=UW2{IsЄ!guL$UHRB-"$jA,*\?>aMZLl5&X{$2Z\YoB{4xg$fgCXyu/R]ј(u".=on7.̹Ŧr]>}3hR0CZ*Hr'EQZnI\{1{?58YQ|~uqr#;D&%;r!F˾V4?^*S[ac E0:6|)3R\)e΍z&Ωmyo]ځ QWg|(#Dm:ayQq#Qe0{MpʞxRjڤ9o'y8=c0a18ڢbվ[݋wgCK}o1|-c(7,~bB{FV^d3i@ԥ I8Ls)1ΥBjΕE _VHvZ0Vwҽ{Iח=)U|QӍ( 2S%mԪ&6=,8s b)Vp$ &BZIZ@ :r,! |'>`9J>}'{O*>90jy>Su 죳[ƴL/6:<'Pyv-?cH͎Y).#qK'x=7GC$FD U'3{Yfpm 3Ok-Ҽ8YbW>E|k? SoV:qb2Tˇ?F~"=Dfzus02/rO{V"pUܱ˳9MNk?(?,cA`SIA4Re$Gmݣf~J;K35IZ/8k^l8p 6k|=oBw]ۚE)Nnƨ8(,? :eVPX@nခ:Cwmz lEBB`mmnj'zPr(GpأNhx5>S+d*iA@?`4_,UG6'9Dh#Œ`WS:_75I:j}3 8)lKfFw#4s)j !Aq~]TN]$ï^)v![yv*˩^QCf֠9t85#+xܛLek*IєгyblȱYK,``9HXk-Q2mS6iEĚ |CkweFA釖Y{."RC- fM^C*:ӓungՇ#SlPE~[rE//FŭoJy ɳ(<ވ .6u$Z2:վ ]tSl3h`L/OW[g스.ѱf1Uʈ%n bsʭxj sǨNn(ۂӴ#MHي`FCڣ˔:B\|w6 pnY￱(T)Xiɍ̋Ex R(!j ~l>6SjFYTs*¢7ǵ3)vMΎD\> 9\Tl4OR.NzM)H;fgү|wjZ#"<"e|;RR_o\P> M(M,*KDxv2ě rw>G+l2ugf7<C)B8Іf;H z(6Ƨ:>& \[oAr i}o a: ! ,9]cKwKbq.|~ce-*Ѓ% r#g]駖q**Ov`zHM,~&f Xj۷/G*Y֋'&Td\)\bǼ$I_'>J?:NpnYXg8#`R@D)DbUG^aܿ'"M6 U%JRt\l M.N̵'pF7+*H57ܼq)Gra.X"UkN¥P\lqjWhɉ%CI"%a`Ax3sxwE+10)F>ǁϵv w?t:pbj/90!cP26B89.pg$,U0s͐9'jN#FSI!?ّ8Wd`8ȕz.7_t >^ R'߭Zv<TQjmlCaŮa/82eTT9Ss~ΞVemY(u/9y?E,;J384HȔ-9\1srCzFLZS2=I&;\;O(ƱxtL*«'{Y\zc`Ԥ4挳4+{叝E>/kH8mWȓE8(%+WKJܠEeI5m~,QVvaږ}B{"߯'TDdVYU4-f`ؔ QȏˏDgeB1 l4EOwetLĬ@; qJqQll:RrKCS[҂23bOJ9ֶe$?X=%{Ec: #jsvA˸;#TcWe,@wQ6LxjnĞ0f vy||/B{.%Ay=iZ9mr 53A[[G9H/ sKh"TlUg$AĘ!nfJ܋[_*F|r𤁺2]_U7쁛pCrQ)i`y| Fs 0 DeJ5|ghp9wWUЂOu,->6(\]%m>LcչatƓ#%4uXiщE;}`1?*(DJbm,>36`t5 Q@?$@esS:<b4! ^#k@qNrd Oޡ3yerOkM&4{cѴEBD`.7 qc嗏Q7Y#PsW(P ܮN%B.XL5Lifw/GC@B7wGoriwE|HRn"6-L!vD6PbYp& q<ק!+^39od1"a>dmIs|;BfZd{{eXҞh@רy!i+YqfЖ0NI|D0\1BŌ0oЦe=8ENxB#rު?-kmwY$h evRP3y׼|J! #1}>}=oJ ^eġPVpZx4 iF6GB2'HHI褔fǽlWVF@[{b߃hS-JZXN.Ia8p?Ube6'"uʽ 8PJzvN`hQD|6q>\fh$`"t{!z'a mi' !{uݙxz;z69-L\JAav}5}Qr5\xs4j]^BG*bPB!rgNucq4|=vK_eV춋 xRp":H=&** IjQq'Va}};$m[CWF )2-].?A>%`π`:/uyީ8u~_!*aHЯ>5)~ Qy{6sn;"<^9Ju #Ds4=b³SŃ. YQgMM1k7$j]rcV,vjXpI±H~+8(mE|(>(<|-Gb]T*Tq:٢#pv7>A󄴉ѩļWg`[ޭ D wC}6E|xwMO?}1'UVCO$@Y]u"S-H7mh@Ɍ r9zhu JbtGO}9nP=XKক⍴K*_U;%"Ln[~{) O y#3Iq=I?-Fz7=쪭j#Dup]%cpԭ(Ծ`IowR5j&؅wq:ܳ`$3BjsduknE7)7;vK#~`4=b[MwbPXѨwg36 gKdyl  |mC@dz((tASZ_US)lf{ 0450 NwQJEHOSP\EVrL@>Ll3gObK6 P9,0F~1~WYJ}?9s\B2fMzJŜWC I?|oIWTVN, Zi\=*63j 1w dbzXlr/w|Lsa_v I/h OLpFg] $΄2EhM GXQMe(=H@gVPݝt~%8ú,$2&mʔpfaLn;KɸTSZ)Hyoxe6$L9WXSopzr1Cҿt&ֿHjB v._ eG藓؄>uk,> \3dkG![0J}tH#qwgu 7~.ĚD)="IH!EAD8|x V*#TvITjBv0?{,;*&hv8=Viev.Elr?#917;+$Kz(%FD {` qX]iX(wǏ@o;p?ABoanޕh#n딶+ݬ'+*pgPO/쏱N5L{~ꅡ[oWM$-\h1 eN"b@^;I-/: cä$uZDQ"aT▼Qfh(>^gL4xxup (hk('""JqwĿ.89~-cMV?,/sNJ x%}׋yK_0#١a7sP6B@R#<Ʉ]b͋u}|Ԑ.&*f:5n+J_Эk( N[j> Iy&ݚʗ_oDzP-\z<)/H}H)>eT )7U)MokT1~'W2~o:/=>c菱l/%Gnfڄu_F\◸Xp{lvfk.sN`WP}oUT.3{5uT5F|ֵOl WwFbSoTFtC^L̬}{U»BnEol=^ql{|Yy|5~QI2Z$f)^&{% ˳OUn&g!'`fw蔎_9(7i=f7]5Po'*_ ckn^tx~g0qu}n8d)ZikD`9Zt S8Ӿ1L|ؒn}'Lp-㲾Ѝe|B5@>~)K Qm3f`QJEcIgz?Eī3=M]0YZf`ڍZ(i`I-fy5$uS#ܛZY0P&wvIxKYj2_yPmHX{Peyr#NCedڎqEDd8G̾ήN!@"{IH FDp e7i!?a_=;odShvkY>4NsNO3u8L?Y|/џ"Xl@s0Hu )EHcxI}g/ws1qZ [$߶,'?wwhR@u_G4k̘ xڢ}nרš(%_;"k 2m!sc p fho<3;'a>lì!HqrEgYҠr_ 4exOG`ƒvRjѭB&Ce$knHK2Pxo& Ft*^=I.2@kf?o^@lhjH \!MDǸ['B}wxA;9scgʔwu,O+ y'=Gm˔!T.>o.gFO|)q0fLF{ih,栞 β"b wXz荝s r-ՙGB:uc#)8*nCT.l{lz:ZuS)\na3Dw#O[0|RꢶlɆf,};BrvER%wtSI~*AtA zvr@^-.UR4bY&?u,Pa[M޵ ex`7xFxY|q0ÒSi#+ʒ-kd%|8 _![{@HP%dKe4 {z)T܍-rZ>}s VrdBf:WMgسǑƜ8EkҪ\ SYz9"Ǘ22]TQV3 +rxA-;[mFy !}c^"8Hvy'aV7lĸd-f1]Pq.Fr/yPZ=vyKIUˁM¤[N۠Ȫg=k`H\~(P|WK鰷P oşYJA;8|yȑz}2ݥZ62NL|-&hmW,\\u Fcm74jq7 Ѣ:z&|a V>e$ѫZMȰ)-º[OpO>EPea\ҘJKeͫ#Q9SaRs U>.}LQBy׹|,xrL>5`1BGff pK;y[*\Qm$(N} sy0h; ǫ,(|/ j>f]0`>qAMۻ7`2YK0O͠otcX!5UV3tlQg_XYj@ꕝa\1;b 9/>r6J 0\2Z<>2>TRmUh%\g\Sl3S3,K}yq >RıGmcIFo *gԨ Bw%ȢNtSJHd:1+{ 2ie /2: !Ekjj Km?©c&:3]mQx98ky*&H @~l/eJ[#6:]wBG5Cpgj:4Qcu;3'1 17htԩm͑9ƭ KwΣe#|aշ{@m?D+'!72"׾/ ȲcoYNv!MUL|@(c ͭcr hgHsȎEiE- 'G)ԅT тn(FWĦO:4GQ w ޾X#n[O\n(U^3u癰 R+D'bZz[FIJnRsqRr2"}^œl~5f0^]\ IeۙҁٝOB.ys:&f:ITj@f̖o%U-JIƗIQy6;1jBЮJy#h5`b-}Y=7՜zQk>C߅p6*"5+Lm >&|ʆ$yB3:]2f:=Z\%INȞU,1b1J`.d,`8u(+B+r0 ~GW쇈bA1a? N%q,|LM%uy1єGwGPĩ0M+3?a2ն` "[mFnhH1W}z X2x«ȵ|Q7l7SR r~7p)ICӶA<,x_=k8P=_ Ɉ;B" [`$jyd=zyx`ͽe5acgteJ>QI@ -6h]qҞ(-1Y!&Dz.>Utsj$ZO yf-/.u(ìUZU6j€7#}B~0. 'х]a/ǹ Wm}ŏ =WDO-CabtAHrgAܚ1h9']2 ͛UnH}28%vwzU@C@HWaqv,F[ ȈQ-y!Iv-K) ;Wgf7uwTtQu6kqWv;)qRo^51gLO<5H\՛4q:'Px q՞),˨2SkeDJbNػ3<d#e8P])z+!~<#O#ZcX`F-MI|^*o4e%ApXM'sp֬gApm֕]\JpXgaNaT2lӑABd ?N}t3PW6QK%Rx@~3ƈ9:+)" ト^U ;+U/jc eo٧Ϊ#lFU ["& ):auL"5bW8?.3*;Qp6B]U$sH1 >R!>Ǻ⸳LA i1vঝ9*% )֐4m&"\׈CįǕP#G2[ZLa-3rA:sS#O4r$MN&>KcO6c?Z)")^5 2iU-LHӓ)pQд.!sd}5\Eo)v,V).B&:32M-?֌+qŚċ˞ YKX$Psh1c#:8AM( ?L E9>jZl1υ*+;} ']#HO爈u{Fѩ! h#pjdžm|Jl Y_9C[f@U'j32MbR.`Yy$cN[2c p׸&0l!Pr(=o.}[YVw;pfle|Ab75=^DZUyw=M}%T^`K0F/<v8&YU 2-?s޶ LٵNJu\߮<TsEd|};)/:ڝRƥ > Bn -{Z^ߛ%i2gͻFULŒO}CE 1t\o-3U?mWSxcYIckd+_a\Czy f"B !'_cԧM7>7ņ싼V<. m֑'&s,S-j-IS 6iyX*Gɽb$ l&jpD4j~M(O>n?<]eE[&FƲ_aMjqF'dc(,m6B$[<NSLQRǚR *{? ZE |㟜w9I<I5B po{RfC]DmN@b5bޔB%-JmР.rWX]-fm}jAعPS(])>Azi>bԂWs]Opd'^sT1qΚQu2nfu *y0O* AZgEUKeϢ2uGmQU KF,ut(C; 61). I}5٧<5@ Hm#Гm $NV.+_}2EV89na +^ݚ:TҹCoNJQFs'nVr+#%1k\8w 'uD4UQ395F$>G>Jhk% } ZD@N3&)RSj?j; x0p-rj_õu{4I⠜tua)w ,)peIvGa 6 >^ } 5k8!9&+O}6W֌+T.봠)6†[GNpxarhMUhAZDxR NjmU[_(6ꤛBB$}XpgZ^#ȇ2Oi>Uf8x&%5tp??v'7@6C6U^冀h#MncS㚙Ъyy*@njU.<^jW؝&RvFf+% 1Q\CI`JifIMoAW-z7 t8C1ylp)LɦSV6tѳHchyBEyG;ԵX\-: Ws@.N ~~VR)xCm6O>F\ҢTjju" 9?p$x$>a]6*LjigCuIM+N5sfRo/*-q:"9f lnyx.Ccك|O%+L׳@r"S3*rEAK&]gMo?h`C8.!m~<&Zv{J"R:}G=>BLWxlyb́C1$l35<:N [~TEIX^G)qIr)1{+)p+tHPG`~߽֯XZ kݶXoxƑlڤDۦH `; %bvLV8t r[ 4y:P{}Tf xYAf[?a,;| 8zLnsczA(Sy0§<ˎO8e뚌߱93'!yzMO*6a [A.ɳ`zD7^ݤ оV =,ZGϭJ(Ԍ_Fl΂$e7Qi"hW:nIu>ZݚΏ@1t%>W^l,oX+Nv!f{j"BUOW9xk,J:;g*ؤ k/p7Gm2LnP2JoUÎ"򒬽M;zτ].2 TI/KFs9)U!)C6Cg}~ e"=jj7m4q+Uy8 =K +뽖 `!gA !}4ǃʥ*|}-rP0 ( xTP OoIT h( 16PU9̛ob-GsH \;st/[.,eEq} ^%9K؛߅OP?0y"{I40 x^v{o ECcC;\ܮ[+uJ$t"yD<;]7sO}۪Uu^˫)]fcߗ&@K͍$S҈?n%p~Y{ VS⻤O -b0̍\ XI_%1?=p^a2Nd70kbl]`LƟ 6W>y RB6vf_+Rp&}W=L=5>W?kahvRazr~9rn~7gS 9n,_>32_Wt kՓNq -!|ckȪcŷ}.G 7>G^_T@8窑a˄| _?&O vs$x:#j+-'d8=QW9MΝ12"3mg [ ns$.>KzU9\㏌Y,Ԛ_{p[:WqKPV`~ fL,<_(J%}Iejrp1v߽%)-\؄Xr׾BG> 1!$cdB}{/Kn.660_舕06~3o[9u28NE{jm@Ǐt˓)w`_3ƔI& |`bMnE.˅v_Ö'9gĢwhr+>1?̦v?Bc'B DŽ41{3wh)y"ȵVݴ8o!SH!tOU$k{&UwZY](l4x5 )❄jMQԸ6.0fYD3ee +F~͢;2(|E@Xj8r2gsg&}muq_Ĝ%{Gǚy*L#jv""8`>[ޅ/QjFX|aQ%4:@9U[=M^. +VO^_rMKz/nHd2:CArսn<֋!m1p2{nIFeh{3kV0;W ̀Ct*Rp=@%hd-A`qh5]Q!"Βo/GB =tv&\rE1 L[KP8m q2l͓x͸ɇpmκA^O{JnmVԘ,Y=6Y8%PC$NjE:Xᯩ46 L5R^ut.c1܇~m752!} V<ϨУK?M`˪ugLեV!m~\}5%+&{!s6*W QMN d8y5p:ܲC:Z؁WAl?\BtՇ3BտLPMvҰȀĜ7&ԗ*Iƙ1_8iߔ䂇²e "_=sf9e =ԥ6MFNvIUJ1ӕ`L9Rj_hTin3`8̱ r2&+=Jb6P,͢H_QXfIwZr85h*Q*>NJaT6AVB;T , 1D 3D=jC2UmJNT!: ;'VEoJ H܏VClgẙE|ϓ 7EB[FPZ': @|/9B!iHr<+lzI C&1 /xN~ܽK@{=3 B_\Dsd0( fUQCJy>Kv[ٶ ~DQW3A*=1E6,MG(pgOghjb:>q[l>Yݚpl\nˤ1Au4(׍4^'*ɧFFX#I B$MItڡ9֥|tg:W\B|ܞ>a ;/.I;M|.-k6Q"'#hfQ~hR(؀t8HgY!Q[`?FtP~TZj2Aypa[Ś{Y66{$4bжQ`kE@A$n Xde+<:yۮ$J C6Xr;JkOœŸဂ֨1%膤sڲ {ܔ-[]ow;U ^WQ6z~#֛&)*-Jϑ%s<ήF­86R%fF:$ C#q+ pXIOu7g]*+HJv.YJVU6ymƶNAdm{JmvҸIf!}{(i~_&#VDr<[*g&45#O坳f_~[^ʩ־9O\]؟'`Bz.b~a58hDRTRB0*_E&;?E vkkNV5Oc_۞9,b4܈߁-`%U70ؘ 7:/;Fg /\?c`Vht]9 38ԮEY'ރwQhi/k&?I.ӕO%̽Xk&ܝߢ~'ڹB4~.nH"4ucREdkkw'ۣA_t]>a6[2> B:ަl8- 0 qپL;::宭-q""WcLp*&Ng[ffp>M*TzvFƤ|6ET0$[mpۀXW6ws[K1;T p?ǒnF>rbG,BYIƫꔦǦN:B3nt JŜL)}vdKQ!*> Rs_c`pa˖CR9M*&;E.H,r\kOw-rf+&Nuh$6JoYn=ABp7nW{^·_<&J&sM7B"!r CrO"}ĵnўN'ƌgknej2tK:IC(rM"!#^\;ZRaiM,hAV-ĿzꞚQ0NO@~~pk6uٗ!ENJ @6C`{;-8G$Q" 1{j k_ԫvQ ~.[dlK!|J:,×.l)$]c ~#J<vф5ۨCg/:@^y~RJ.u6.ެY0z5Q]膀=o(H݌UG"ք :w%Mp߮AoU[D*z _]嵔NϮb*>+ mg] 69fEKJN;=sDf\?>M(8Zh"\L4PgjZ7fhLMlͲ YL)Iǡ,)!s+ΟHV֞z_F{VҞDUBJQ^YlA9B H^?S)A CZ94Bt΢3Kd9u?k+!cw#@MRf3F 5T:(eL'/xS+SkJn9ydpz]8Chz[B]z"T!IBMnq#bX5JJ 4~J;f6ןs;Ԟ[Cg6Eh ʓA^5*LIr6[Y<T.ʀC`,^JO$Vqyσ.yN!S8>]\kKx,a3J[])OcdDZ;ٕ9)91 strT4gl*;wq Jҹ^H&Z@{ "X'{?.5RVL ׬0ؕ`սeV xda"tPcW ">qI*U0zA$J,W; BqO _z}ZciRSN( U@^4|;Kt$g0Čg9*k:͉t4+5pNW>]D&4`'aJItH7œ=QE_T~duݷ܂ꘙ`yX7FF݈nv35 |F#zXC]>ylw3z*o}^F`XԪt&/)(,~kNA֝rvt iv ̭HwA?J12Rv<}c=pwtq\Q$5eq4x*`iun8qNJN9]{ or$)ެ ]F Pq-VKnD)CD3%93"0"/scԊׯ{k|gұ78S-M>Kkc,z5Q:)a.$K,Zjo;4  % 0.LpZ\0W4? +`f!q&`y&tEHI.|nK'&x#!`*8þ?!w3uZQm iϡ=.bӲhr]a~gmqm| `: &SYک0 Pɛ]tZ_zE 92u< }oTpwDz%PHA İ;tH! AE 'Z ] c+>q} S- ;18 '-4?[t8X  @ I]no` qjÈ>6YG$S{ #!N$e3)YF\D.; {(V!\?JTKik-iJؐm6ߓ gN}!A} )jͥat<\A!c G*Y5Ovz[< @I}'C: 8|H 8ȱmYߘOS{lQqY<S5-_Ż(+=cVb 2u M!: ̢- $+^FPJF=-"`oxGO)ۂ'ͣ!31:iI5}y& Jaů+M4PSYJ15ϲ`;&)@ZFI'.mk7:1zi*nTv )l^0/[{HGوK)`kU07+Ux}sS#*H _bv7*kߍ948ɉa\9Py_p[`=;Hݾy8C"0l+E#$8(YUQUj3 (alLZY/l t7Go8Qar0tbo[uNYnAkDsx ֤U-rǼ@m|~ɝ fVy?Jq {8V?ۤdvi1j4zYS/%yʝ3lfζca䅡_༃m!cfNI=U D _m"aBz s|o2"De궴ϳg}YaRJ{19R8Cۅ%tշdRR3%ɧ\;7G}.;;<@WJTW;&~#@c_/Վ@HIrD|4ȼ>\nR5 RTT]gؤ-ӯQe>M>g "!@QLDAݾ&"`!Sm,QCJ+p]ё'OW e&,ҝ"TDg#aA=Rڴ >|ծB\cY:!Qkrsv|yՍ bU?/ vʊVX(ФBra:g^' QtGX {JօYAvÐ)a€&q6St5S;K^൙Ѐ~%fVޢG./D#=iοJD$) Cp c_ k&y7V9ji<,zDs'6gf{4*7EDp| ጢ LF7H֛Yl6l'-޳sv㯰V~Vg손K`"f"( UCUG}]~H$ۃ ¬o'!;ls=%F:0'87BVV갞 ( &wFȲ۩ULKoP[uq; R4#L!e9RaѤP7͍* ɽ|ЉdUJEМr1XNU}FqP7q)΂>)eI  ,:U]7g#xg$ /^1>^iwvJ⸉I.j;9cU13UQG Exćts* <(na}lljë{Fkr2[ 5'gQ vֈ׼0OM1aw w?BU-_}+Bg(#6ro ]vē}I[j2f!̪xLOP]U# (ȭe͟?{ bN4 #_|r^ȾT0R\8h{! `W^g[U:EA9_kM_m$$߂!|k5F"}%CO\[\R-M3~uCn7/,ZR1s/eEh !Q*N7SJĥ #DBkGCj׻(Ѡ $V{0K{ -1p#U?Ց2uO70dA;}j4WGQؑhߔ3 PKkᯤG"rUCb-4>I*C5pxH\N.)=` %,NY`f>J8ȔU)F$g_5IOǹmwp"[Lz2}+^:LtbyyIռhtmċYaM_<98a}!/[{EIny('c% YP =1czQ"̇m%хg/6%Tñ_l\󠣰^0ғ 7dn=>A{9ƒ7Կ ̞qXZPʬRa<PAD^F5K {J-bA̿3v`طrwWɪDj[uW6o8B.@ ͉je pJz;f&WGI86kVB^*%IznJ!y,CUIȞR~f7Jc+s%ka2zL2NQj%yYH㓎|,)l$a4}a3 ؽ6c#Cq7F#*']Y>_|y&)'X㾡%.8[ҺN_ejL6IIϜəd1K7vYvHUpIv/41گ }}BYWa(ILfw?7Hs>$i;3:=@hY )ۖq,3v -t oҤ3$GÜGbE{QD~æ@fCE&@Y8;, H6H75m;1:lt& 2G;R STGEdc"ٞLL\ӲO2<*" r߰ _ҽ3Z0$ʸfP vd]`vl,Lolz[̮x+ͳR#6,Pavc8Ehפs2"l/Ҫrcw؈_)pzN5cD}kީ˹/Ňfy^rp% Z zlq]/!j1,IVjo(|3 N`\ F tH~0s|^&(D+ p(3iiR ${Ej3 kE)bڳǑ Ug$wk&,$I* u1P^7>yE\+ z??ޥm5?/u)Tb&?P1mq*|WCL8pf"_<4hb{]5y v$djm4N #ӘatjIQ*Jr 2;*@( IA"W.?,2/}5/%~vl/b TWۭ}q_ԧ ߾6~/,?ଫ_Evf7JD f0|FSяL-.,nx80Th!G̫uPq%]dMqbT( ա}XRY* Bk" IΧh r&#T< r1P&2 W:@}A:.C6:#x {yG|4"T|⁁NO&݋yZN邴:;g!z".Cgqj#"$#bMG13_hCqi$e_LJ3dX{y?]3'7^1|{c<ֆ&]]*~Y ˵E"Ky=N 0 !l9e<5 I|\VVXqzΤm'E~|`2%R681*RUd]ZYi 8~RVE13}4I?_ieZ=#J6ʘb!;Os_81ϲg+l܉=̑4jZ@NN(x~w )-xFO5IRH{ :WcK@CVs, wG T %:8-+&pY΢^lE7u7jg^QnFڀL'')qe(kˋX֠H漤}np:[ ? 6P,VmU7;^h3en4K;4ZbïPsg!WcIoq(8ial@= zmE8XMqLp6bң5+襵gmg۽ ]Ofm(Cs9NTzʒ)d'")…Jp?*yEb6_\S o֭R8.cYT?kQ!kz\B`d9NRS@0"B#)4*t T)sxZV% SR 7nb13A|_ZqC2H-~M 71nDQb'Wp5j[} RuX+f׷Jszl~bGaTV3OKq'n]9U$: `VoCIa$'c\H1 ,D!}/vhmCSnY\H.C8keR3iBgk\W yRމzPb7IQƕlj%̥q? 0`+P29__hJ1C'I]ufEr, gN[3=NZRֳ-A] bamN\kzE^Qq[Re.RRƾY>-ϧdZy',X9Sb*`qՔt8yXR\S}<ݭ^E-fBAL ]%W0@+]=,^3~>t(k)0k%q8n㦠rߺ ?5K52|b!\dOV%-%_GG$ f~!F[cc.PI )Ӷ B@ ,}3ԗ4oc>&Юq .O4*&{1(/Hΐc$N+*.|CXH)ð,<%Lta_t(wſqLU7)H}L7|b:D70B,/&obnMcy>1,@"Qa~M`$,0pHwFd Mt8+z w7%PJQ\ ,-#ɥ1Aeok/yCB{yPi#:tO 0NńCߖɈ)nO},$9=<?l [Ӝ qմQF6%^QأL\(|ڵl%AR^'$HD&ёjQ&r5s/ ?\@Aq-u_DN|ڎ_+kN9:+uvs'S;Wy^ҚbB<_9ze=[*_nnGVwK&ޗz+ N{oߢN[Q>A}/حhzddK$#hN sb"mәsIZ'/bvc+$q Mެ`-HUB ICE\qӂ+HL#ȵTd%y@ ͑)huաnVFОtE$+̟o֞XtDuCFJRoX4苳(h=N r rFjV *9m] F1DD~.8&qFJIvnp1ФYƚ]vc05@nXHM .ޙ$maP N8LLdz2pF b;;A|ۓ ͺYQX6w{@nKxjm&P̕ "jXԔ2mvn;hGycNԺ0Z* ]-Ei&NŪAFAᦞT$rׄ s}s3%߲2YAJuy13}NV/V6;um aJFXu!-`B 2蹁r~5-J)3;u<_ݹbeܘ%7v`8DNmJ#d< 7S3 2^_x.Q*\aAb]Yb >s\L?F(҂Hˢab Kﭝz*W@6i>r;N,)y8&## !;Ŋw= شNއ0#wq#QC$U!|S޲IU,mG~s4TauvB1:0#{fcghIV0*'QN02@sa Z"f_sڇRL_uXGE#a#jMUvYU@O.N/%Xn`Y>rB9P2il? ]3u`EQ}iVe"Vds`"^"/J9*y$!׮+uZF-D+ Zr^ЇyhkhxTBY; <̄{nk {pbZ"n+$^Z &o$JUUyk  3$8 DwD~;py}#>hCF'/Rj\N$WQ.X)^v[bN}7ŐsopՋ~!WOHr?ž}7\\z>?}]Pt [h {|ө;AvU-9Ɲ9i 1[Xaӡʩ`]=>14]#з]xV/ILasZhi@(VbSIeV&V!Nl?T!$HO:Ո=q]a"9ƂuPsy߃?<ѻ\2\$I7א dh Fx O6D'yd/l~ѽ}\w jԗlB$'aƽ#ܺIƿ3sc) <EJ,~G@3Pk 8HE]NvBf ⅜4bMMs)&,42rL0w<:oꊮAye}ssB)\g:XnC+"& <iBguGDVQ'ghx| rq0T T/Ԉ=NE1Q}b+j`t`z,{k6RT2Ŗ4ȁa\HpJ7'}QyoCd>܈ˎ+7Z̒їj2q D`Xo)v!kUOȡa 7_Ře^`r8n~S@4z'ӳVY${X Cg2AvU%xr % ݱ߇QBI@6uul3@`Q*H{ȃk+*:F]_9FK궺 \\c^fC. ln*<`TͶ& D8ig,49 P;= jfRNL`lF/G>XF:( ҃B@±CѐԤ<)))G]!XA(rM_q"rU KR9ӷQP1o)~JFhڌTzƠPoRdTRA@>UҲ՞1@%Z9a 푂V(͇Z XO+߾Sf,ۛVK2wX0w`x~OHC^(~=Q~N@ ".UP`Bp9"m:  Wr Rygo#Ia|ɳ%@MKtGz!j&'ަδ`"~MR)VQ5@3(Fcɉ|]cVΩT]{fap/f.5:ao ZȚ!PiO /_FፐHv=ޠxJ ,^f|dp PW9vו/=ҩ͂TҀ0z -`X`1wykqmV$]EVЬg)~8yj"D%JYFL؈ (y쩼UJ{8^3h`[9 -}f j^"Pe f[L *gs[̀ޢms<_r]ZOR#~9|p&v!y }َ'Д_Nfpv>Aw&n Ʉ| ƅX ussQ(p*<Pv*3,wf{r)/xDndN7DZbuI O|~ԁeR_ŶMުCg< c#@P*t8wśL`k23!&]F* HxU5+?i=UB~~% l^I2ʅxkb(p^x Z9!bAUxUti$Tiu|8}WuuϳΎ y~WE CR=$tHx51LsPSZYXqPyUx B R-!؝_%#_L=|ҝ2fMka+cXHlJь] OB>q0T#y 蘟 < _=9iOAnb|g+Ta>-Z:?Pe=!fߠq t}D)!t]ur̾IT'8f#Ʀ;TRUq,Ei v w{׷ Rɯlޟ S] Aջ o`pNns,x;1J %p>6%SǞNr *z%=%{g}w}U_c֩9 <ߨz'?J A>S-XȪMx>2QP[S*N <HPx_FƎKzRmj!U_5Iano xŃ`p_GvisWՃNvmW+>d4>^4EsjKhw0)\tbcoB6zkn&2N5zwH\{7& P^᏶7FQ3$3!qZzLAi==8[_Q٪VxQ5Wz^k`><'kEZa)D@eodR0fB=Zq[?]jbQf#/y\K57g+aӔ{$ mA3=u2CVܵ-k <#}4)ϛ'zZ["[ X^ S@hst 4Eӎ%v*a P1Cu[9ux r2wRK䃪&o|r HQQ ]!'2(U~bDmmΖ0C%Mbٳ~2+>g^ʟ&}Pemm9A~XLx_"6Sd%o3q6;r>%WW Iر]`%:)BfŪ!DY*3U"i0]o! $Lyl4ۑrqe^>..R =#O ;1ePTB-$3t^>)S2-K|obWc@He]n?s(¼ɝN^bi-]=Jdl9ˑzGz4kkXgQbN|NUI!r8]mt7"a5׼LhfTc ׾C BktG\;jDJbNq/33ypA򻨵x|A[ 6@Q=Iq:N(|!c`'L*i1઴kGL#ud>O]l- ޕsM>m}{tOt+d<BLHif{_% gH]AC")i0_u@y?=Ծ[X %l@84\Q`pݭQ/#ˢܔX-i2GIܙqiO9t%^i7Jh W}楂9hbc+"u?i3M)5ū!]==;{.h\M a8^ #uGZmxޤ[Chu5ʱCȽE]5f)`t AIӲ:?| PWJ3xp ERC+gvg9kN@Oa+$ …Ww6`p&y$i_=j:ޘI_KU7uAPUJ+ 8OpΗWfJN(r4H|\u/h>|3;ٰ0@@ucZ-^|NJ|57 XRi]L]o'$|~͑<|b <re |/ *1OgS=lH&w-"}nb/m(]ؑK ?·qƺuEd^l^T8gquhζ$<Θ~nWJ`12"ZVH b$%SOk5<(St `IrៅާSM1 ? {L:ntrSEjA"VE%s{˔nko&3lDS_3b\Zͼn+SAwv-*ǐz/_W3 ڋ'Fg^kneSM0.i-`m XĚ.<-_ؗ^ېM Wo!r.DfnMKx^99©L)}=RLb>-tPoEN1}t gpn{A޲i H^'lm EP62*""-߽ -x/?\rxs8}D{uȬ fʌϢՕ00pFb^*7֠9c>w@p-/)f&Y |w>^^?wGT]^^>rx1,"40X"#(*%gOb ՙ ea4*/dz%:*Z-n붜XgQ+RC%R߷Q裖ZuEH,dE XW)a-qƯ .*g +t.udx7ᕜs#| QjIߚ:̨kIHXwMr/}d-˳>t7RbfFg2ջwc\hPX+mɌ?̽)* {| ;o9aaao9l*wJKE4nƓb#3*=d JEqšSj ΄)ϯw t ѩbGԄl Kӊvvǀ(Xt"h[~L8m?)5Y ]LMZbn4PܳH@kコ|^)xc[*GOb`~#yF:5;eȲcUL)ť 6C(6˴tg`"%h>_d|:W/Crn+麳PS\>n1E9S?qEəКdkÆOJ8z\D(}lt +م&=x7I9Dw.`E䜧rJ~ȴQWOu C3OA0}81RytRϳ],CEбZex" 4DQ"Fi;jߠ+EǾ疀o6PNztcdTHHA޵PiRju5b2vj$ nC^-(( `EͰ` Y+fO9gTޔ]lta@vTEf`H|V0Fs-ZT10CVy]640 |(Q8uمÊpNEo`]nEH=W=.Ƃ*Axɴ n",L}W8Vos 0gB/+8@ UMܳ魤èbXavKrd\Ɋs] =OcrwPЯ+(zTOӪrEހo}߫P\Ҙ*:`"o\ O Э۞E]MڴHCPxMj*>2Jۂ I򑇲u3l]1KYͫx՝{d@ѼG'0w>xm ]W3l~qy@#fnJ6e`+_n< )` 3~K]ys K>8=| oh& kjdbgya  tPbzfUi9HJ>#eI-Q Nҡnn-=|}2FIH^,?wT f"zCϘvH#jV(I|= ]#:O9FԎ, z\~#;\W+-tbƇ!ܲ|(KԱx4uJE(̋_3ڤ!{fEoiJȓ۪]/ٛT{nL,4=QtXd:B;hgD@ך-? l*. kh'v7xZ@?(1Nw>wI*Hރ 'Zv:=5l 6Gv-bѭ 㘽{i}}rL[Gw ]Y狅æ!~Zf\3hib wG'%Ѐ WB;ՙnq(6?S2 ~n1"ʄ.Һ5{Ws@ݞY 9g NKئݤ ˯F^k]خgyXr5Ly,􈷵%ȑ;vfv(U%0{K2 =G0Y^MI2t &< %b#[U (BwoHHдis;#ҜA#lDlWR n%]a!phɟO,AL\xu`I*&֚Uچw~~ڨ,bU}?s!kU~=1ufwG*! $4&SnLqS$|l͢Ia';U9,M#27VL!uš,HRgGpDc'q'Ի>=9uFN+E {-zE~#WyXVko;I(}cH*uAZQseS'fWW֝VB8hc F:,gjK@3wZHb2{HzvX% @kb܉ N8ݔgСI&#w!'%4c`Z3'FF.Bd0+@;@>m¹@hSig'%{Lm_0Xe (>0^ay0~رǛgv{ڀn[h#-<9y Aed<6la Q"K WEQM\+!5)AJF!^Tv< $W 0xd9"eH۪pFЅW! b{ur$*e<ў( 4rEa7B*NSIتځer4)=T"^袾ު#n+B5NWBi1Ϩ:j̕`gNB{l#VeS9/^)o>}\Bl7!p`Y@5uw(289+ޞjЛy7gfTb2pyƳ޻ϴ8jn0(Dp̸Lx 5F Baǫ60=vp"uE: Х҈o;oGA~+];e)iKϡ& Neu(U./ch ymYY} kH`LAv'k'u7u+~Psa:$"ۣZnf.\GF(]F3J4&!z`y3Z-;_|AuOkíd`UWn-衇+1M`_ Ht8}ir%suʚcIkkg[t[BIZ i\+)J]/Yq~ X)CepZ]WT2n)\2+Z:saRcOkn\ZVaeN9̨JhTKfr yoVQF5/=9?XzUm[RmvEv1hg{ Dr6Pz;,5mֵ#֧ytO$$A;C613cF[ZN{THfi?+t=w\2C6Ac̴M"nlSJ/5Օs!F+I2sV>R}<&So$Bkl_?&Prjm&aZ&˅LjvE 59yk[Bb_k }ڷUF& Jo!+ O_W)z}߃ :KN~[y xS"( `?$kquhn]$=VP8_.cK<~{,6-LBt%NH#ƳrIΨmqSꚯ*(cER(=dLy1mwC$*-g8b=TKL ύֳF J|h{3Y[5ؐZ_}S׷N" Y#t1tts&aNP42}6Ͻ)4t͙,NڣՇ4XmnHb"c@3REƯl%zPl=<ˆ"´#1D* <ԣ›$mç]JtiL.oD/Æ,6ݱ E f"mpQ ySbDz!K%#l 1!DgN2vn&u hǛ@2#2"~':_~u$ս\$\2XZv,w LaOhn(\Y\߭ ,<"q}2xk & $l(5 7ZA5  `w_5B cvrׁnOWb'@12+7>A}VǾ$UDp~VdWI9zøjr]P?- xvgf`ui5I<$K&Bc(7?D"BĿn/*\iOИ[%Q&3dN֢R|̈́d_xڟϧ!Zg]ejίm/^!Ϧ|͚'ѓ Cu&[+CT=D Ins_Y# qbJg\r[\ьVźE>rrA3ܳѷ c8E(ӹ[")> 1(M]PB-%{bU߬Ep* kF> NE̻ǐ8LO>4f m_ݰQ5NV;CåV < $]xN` *NOKH~m}#gcrr8u1'tJPYWt3̤e­*m54*5C;.m4B U oub2u3fesmϟXUQ 5`HҲKHU ~0QC>> w9 H4f^9#p۝">}zD39=~ݱ\٢TGϸ҈圚&F4yX /3va|Gvf.vV ۙB*ئB_ a(O DC3ԂԒM`in)q1/vmRDḼ$36] 㦡 m-vMyhϦ+.{T@(i9}?9+z"pGi6W,ww91.e?PYr};TrvOBKO3o=4nsU$ilfNSnfX^bEx D[(`.aStBBO9`i#23MiQ[F՝SP ӔjF5^&oBߨ>wjwo2 rU%,n3oqCd_V\T:b2gR-8%;5>Fn )aU O(~5rǿh܃ROw!@1&A/=ּ&f*Τ iRQk4_W_JfY7gQUz5u\RI:M Y'>C Q,E @+x8d(5n\к,'a#3JHe:,dtcD޿ͧ+ Ox怊)l! t9nn]|%:,ٞ{ܭ!?~Li8X<5(xCB.ΊsYi2,; ^wt#8 ,H_ ˜2<Y.np{ZSkx)9L-1|5|952Ur'9v&EO{ѣqAq bF$Ͼ*o}KZBu"Ĝ!V:cA+n)T`*alrW<'CrXKJ)|:>J }QR(n6U 9ij\ VS|p糶O H,5k$$41aNio&'|3++R3,^$z3 /MgjLNʄ:(kX N "YiF$qݓáެ>$,@Rujy~us`)B7 Wsdcg+{䭷E`gI22UvoA YU׬}=GcA,@l&Dz7k/xbwEYs]$a t~dך:wܒ0~f ]ױAۦ[-W_/NyB~<dHK@A4G8 $Ϳs׸.Xb_L{2&Hl aҔ 68O7&IJIKuZ1R {y ;. NS%1'iuOiv%/a؆ -b]"w3q6wC#1wwP^ 񱑵5sϊI690- CN +*`|?H5h(58=sQ&u'p6cg)&"嶶 :*b0<3GBv)z(. dBbaR,sj^ L/u%Vr=-N5K~j|#G/V9Ժ .)z2#!-(:Ͽ=CʦeW ϳgy͔,3΃qO'S |Ц:]XĘ3z{Dv'Z5Z&qKR#?y aY q]& [:>le'r-JR'WrՑxPwUf4K<ݥ=wxa)i:BG09AM ^硗HZ(ϲQt,,sna,Q=oz]-ʬ "S<; w%y4@-3Tq?oxV m-d۔:!Ү%KY"sX*YʡEv<8K peʭ!o8j쒀Z)`Ľ&v\MK)&$~PF( ?Z5SGdZgOT@Ѕӱ S9 o*n"qwu*6Ah T"8 )n-$J혆\2b;8 Ԝl{9Oo%(:<|K4B `8ku4X~Y]3m] <;:&\kV9!yA[aRc{&Hlix?hw#Y%z>ЂF{*$p*.weҾ;V8Q{4mr9͒1/ً zQ؟m(峹Vh!FܐK۰%>ːf1gbH *mg3\= -WpVYZK-툞(pi6:XE]VрDmKĢ?k:)Cߊ`Q^h[U+D0,;ёTMDm;w}\Cd.CD_گdKLUN)2 'GPJV $7A M ö;U o~yt#[Xl 2WE:,hRtɀN.&%I?v E;#Op;b1b!#0Pb)+懴kL_3LKrLXa^Lj"Mt/x%^UY ]?_yT01=ôF,77YUJDr:6Yx~dbr,}_~mڌqNY#Wyؼ/-7 %꽘֘ rppb5Ʃnl Β _\ $o\ 'p9\[Um2xW QWZcHHo t?} *vB->m w4R4"ryKK#ԶN Rf D`_n熝~cAv6ȓM6s IIg\Y.ص lơ/Hypi:.~Y|M }l[X&tw)`K`-[ wYY/I%9*@UB Z/Tq؍iON#UG*6"^4` RoV:@+2#'CUhگjJ\5 ,oV,Cli\LAh]V ~cRZzFܞOt؃o+E%[]+FnΆeКfJ`6h.) `uxݣRN#'6O)'M]hmwrTym'>C05G\6ʡS";:N棵DyrۑMjC^nt/c6yg\8 GzCu 3 ">ce0m6]ifݫy+PpN@uAZɋ^:̧T$rlLN"10(j˽Ӳ;!8?X=&ӨRwMR)l0G,&QSynof<ެN鶀F6]l7o/0)>mJ F_ے(u9'u˖7[Ci#\!Uif@aTx(' 5UrFtkCrt? :1]mZ>"O|'^;xmk-])L*'%Og] JbwIv=f' s,:Ͼ!Nu1V4V`9tQr`JQ:3ᶪYpڌUk'sŽu5j_:p0t+"OjƒBBe(GjnZ<߬SAnz4(ȍFf\TzweC}6J^ ZƋSͥ2a m;lT-((\{LEX 6k68Î` as(8nws=܁5Ǎ fM9xB>ߤ2l!wлlG"@Az~O~}i[EXS5.Eg`}Lf5K#2ʪ^Wo/mu|*ad[6t!W9˱zJ0d=^g r9zw~8sU#z+OӾ&>[$A C;dTXq*p to??%ASO .euB:دl߀ל|B~Z,a401S&ƈjunڦ2yU?[۝:/.v8G~.n@}n*ixc,Nv"}=j31cX-Hxt.? 2x9{y0rqLT7^!"|#9l_;FX5!OBvDݍ{! %{:FdjeT_8U01v^\ =UJ'ѡbr>G[߰j Gq" i嗭B c{Dqy04vn5$5o-֗ڱTjL6_({/oA}̥![sEwJ_}/ Nb Z/3/ dkK#FW.6Skh?ZͦB🞢r}WJuݠ<(#H;V:< KLF:u0'aޮ9d]%wX1:T VETHA&0zd)ZұOrb24IShdWogB4V̓y$ MUS;JB⸇i&NHt nJ0 , n{V9A>h}}F! *,NX~/FOs,V==9C3/Ɯ*M;":%B2Co:a0z0 ^XWnU rL U`ԯcEKѨ]QKj8Ul]l}0֏Ra Sh_cbrXF:6{6A【4@"B')p?ʓH* oAN_s7g >D/-"?SuQ_i8+65,x- be{3yhO˄ J*̸Ga ^ׇ4# x]9|JYro 3 mRxϐ5QiV|lI" XV <%͈V/2CUW:isyBd3^V7o T18*"_6]̳iM1| d1x'5)j=:/: S~>!/J*܇_U#INAR8dFYtI AM!19Gi 4B >\U$D*X *E"27CaiE8u_S HA_ 8C@ִLy6V!ґMB;j}\ B/--il;gR\reL1N)327n$VY6kwM27| ^ ɤ?SoR9'!Q#9ÙA'>% XA+p AuYKj$Ԝ DeZܠAvG&ȲV1 ~`ڇ! tC.iNTOxrݶEHz `f\4$V%E-93-"#>ỴE7i: #B"'@밸G5@9B2B*I;/ERJ~7E~lHó>1T4d S(87zdLFT2+ȾŒE>Ľ_@+kZ$:7g6%3LK 3UK:</v4|xϓb}C XXn}qiƶI&ʲ¡>pE37:NEa־)-Hӿb Dq}fe08Q:{{*.c$0]qAJ\g[ya<m,]T{,fA D8`~c<ZjR 18YEqe0~2H`D'ekDW kЗt1Len&:1mOrmCpj,+!(47m w *[l^k#ǭ/x2|1Mst@)LSv4 w03e 'DSPBc_:UvtW CQ ֥Pdut.y`e}'"C|pۙY#iA,"4WK%R9O 6*}@%ZM2U $Y8(E8]GG({ubϣ 5&\z.o7DԊD>Wwad)vb+枈Ng ^*wA!>Ŵ$GfUxXgҍR#grO&#t{.`$)wdpV(Ûf%P:vz5W~kO' |ҙ&5hNqE'ޛՈC$"~?8~h7KZ;;oկo^1?+[^]h Rį@-r ig+6`8Ɏ//%Oja21B?@H'N䕒GatUgs!J$0XXt 9H$=7 S9o@}\W H~T/^+`ˮ,E;UۆjVmCďO{8v;S|NtYZMKkqzL*55(l(&:*n aԎX6󒧊4":N L1dg R ] ,ax%ˁVC U84Z}͊p[4dA I%a-h5:Od (| ƿu"'ڊ@t3u%1ʓu2q;;{ VҘ vb&crƸ?pE67Vi~/'hn>ir]҅0NN9rL1~9n:?,X6ߑitàshœ~[o8$zN%,,!L\Dwْ+#yx8_eUyع-zCJɸM/mU-L c$H }@c; \x7۹*Y<>Y(Axn"2XbjN8F8* c]7C!i+\ P|k{[,x6KJQ`<gs\p>G>AF L> zQ1kP \^@tVT]7|C!>Qv{ ' rTVC&bk7rwjt*pXrP]b.q>ilPL 6ڊt = 8E1dݒHXEbFGK_8GPBu{";5r8\x*%b"]Ye3G9֞gdTX1 p|D'~M|a>( x}+,[f0ܒTPpYy/qɞbpWգ5~ Z"*pz?"̺ S!m[LA/>쒰>؇Ӥ^Uj{\I0cv$ K[Gy ,z1[FD'-ʧ\7jgQ໼k}n7nT XȲn`6ĥ=+-Tt]g|τ 5l. TF/5;qdu1Vji҂G4VaיWTFd`Hv>*DyԿa G:έxޣ RKAl졘;Ք6n2=5:M3 {~ ^ W qlQ7^Hybh͙PWeG,5FZd$FpPnh>'7Ky8`%슺&2=eA###hd<+-Smx~Ʀ>3Ӡ|_FC?{o \=k'U_\РՁj_FxԘO: C4,d`_]8MUs|IM[d/YYޅ1x]-d{28"0BEu n!"Pi!8K;*.G  kBh<ڪ: =)GsM<8d~˥eu~D^_9OZ> }R+MjOZc Ԇ.91d{w >4*W$@ ZiuB1M_z6}zhטA=fI=~7EqUٹ/?,Z?| Š'Zn|gd #[*)DV2gbWo6oY?AWf4`h9.Pq;cwS?l \:Ws+N3)ynsD8;_y\GQtklhW(|,Y'QW\jaOs\ 3Omg +dU"xĆ[ę'45wAL)6شa᜚o,_dpWOϲIT|b%GOJՂ?b$fq^be 5"0:9wk%\Vҩ,x3nZv@͐6-I.Iܡc>ҼXfSsQŀgjn0rIBjvz+ih|Yx!ep5"OI"jry;i_ǘ wY;Hy|*.im844$ K~1'V\ !Z,-()ewf-"t eZO xG9/-N̝;{ )Tg= ƐH&K[z= n%sl\]*ؤ&T"3S0bs!3ne[Jd/X}W^ϰ7ea2?^ -1[3"5Kg4@ uBaCe̯4&53?$ǐAEH0{^>ԍ:rgZSC۞o1F{4kK5ۜ*H,iWMs.sK) P60 񸾉N[crD'[isA51;pS'QmVjAC? c]Wrtghڍ;SA%j0؏:\c^ $Z1qpcAEg %>Jؓ5sd1U о{"@(Ͳ6! mA{jԖ"(`h3WYL R5KO j(R;twWSlE_P-XV\;GP٨1X;< !xac3*o~R1nfts!}fTY/3(9>pLu}uYԷ`I7E=.I:hф06*Ut`G|rSgW˧V& XѬK{elȧI`=GŖ |])nwv 1WL†$j z$bN`r!%r=ԎܵKk P"/TPʚő5aچ;m>%oZ j8leW_X$z?TL1bLl$IډtApGRPU"/lOcH P+4V^7NI;˝`* m\ KlϤu :X b}V}4]o'ߦ!ȬM#-0 wbJdcc tc͋ՂbtZ/fyO'+>e*Y/vn%} u5d4)aPֲqiAEpU߶Սvx|?0Lw'@jCyV-9<8{˔Ibug-ᰁI!ZT1U#'sg[36x F gr11[m=8mh⮁R6f"040(Qt B㟝xD맋 +OXBlDA$Rl-3%v$ iEGR:.F4jhUMS0R=h 8&~ \O&bu'" 罈446w)ض( OL#/Uc]0UܞcnvqL[ʓB?89Bnl@6c5& Ƽ `oh$ھ=ҥ_t=kȧw.mIN]r}:!Lai42TzzGݑc T̪3h=!`P̹2Plb6F)׺EIcm8ؔHڼO|A"_IT?`08,CWu3Mܺ\%l /G[mÙv K#޸լ|6^>P& b kn2 MZ.vȗ{R??@gCgJJXwͮAvбwKLP)IZtD8؂z_77bXλ[$r G&HÒǯWK}v7\Viu 2=b F܉ZS~1[ Q4D/,ꉢ6(ʧ jc#tnT_Q$n_t 'BԐh$ 8-V|͊T3?UhsHRѦ /a=ٌ1諮LLز I . .aX@tzXa&LVG\S`.I Ȩh3k1M+6t7xgFl]{5micޤ&%PGU+'8R9)E-9 z[*؈⩯_Z:1JGSsKnD4zskn0FcoO)10>uX*?VwtI÷Of)JF;-mlȅ6SBL"%JJ/6 }NS^@5%Ȇ@_ӌ:<*:{3K2j*rZ16ʍܢ^Z=kVBxuc 9/ׇ;w5I| wHoX]̽q5C:Φ'7`\EI3m/j-_/mXI0 )pLz[ˆ5Gϴ>j8R0{1jSgj4]1u߃R&QG'Zڸ&l@ͱ2l݋Dds|[uPWtkQn*ҪBJ_ odJM̐5?T|so e᪑aZiq( \~B.Zƒ6]k~3T}OL ކȠSCOa"&65[G^$Aqnf4uګF!}[mx=60R. ~ F͘$"LiMo^Oa.#3~A0k;+H/DV6"\E5ynV9!1HtnLͬnJ610c6ZÌ~3>1IW+/,ػ*n1.O7N.תdڳbD@[]]S iz,jS^R 54u_vvS[b-&^eNX_2JZҼBP3Lh89sMLjOE jVxG-bjH~'\TaLݶq#GWiN0?Vg>*_ʓ{xHJ cDtRsc{tH|NMH!v=5I Zz֫gsZa+ q{2CaP*^CD8Vl~Z` "~=K.|ROSrq‚sMI0ywZs8#CSvؤ2p3Yv]iH(k!/UҎԸCA@ɓa\R·sD|pÒQ2Q]ş_ZwW^k# \Ŕ7Xml k-S7bzMh<ʲ--׍hp2<*DA-+'_XOG 7V\s~ųϣOǾIt Nl+r H; Wd^=~)ܪcl5,X =e ,6_7\ /9Ix#?p٧Y-c8%Nk+ 6>u F @1-x(tII@@1vC*k O[Q;YX^@whV9w=N@>J78qFޣ}AELȉs fM ZH܋6Ze⤚f&bɃ3bƭ=tRL9Ɉv| 3:LUG"B l<-zq0o^/_8Щ";..PjyT aԯdО4a1iW^~>Ep*q6`L.ϥ,oD K='jL1\o(v=+n&hSu{_i[b+ ԻHtY2̆{M>@>}WˋY%,Êz`R{4U-x[3M՚q6&,=ˆJ0V,@y09"78~QU(>C@VREB ʁER9h5MhhaoJ+7rU A7cjkDq73Pqz[Shh+EoH~B0BYOӆ1ϴeuGEiAձ P[nr*\GC' 23n4G <)ܚNu*&@I/vp?CVl} qOk`tqx5+ڂ+ MC MGSvejûp vkNz4$A"P`SI@/nlts6@|Ycϋ̰ ?&J7O m s*s4pDKbdI@g()놐ޘiƬ? k ̾?p23PEء*>M %T,8gYB~8>O*åVYJճF#P(& L,Sirb5oHJdAאK~ uz^`5/ђCJ; YzOnp !NW.wQOd0&r ~*PZ*?K?_&* MsMoTM. ..,2TX#2з!6amR>"*&XCQ{oT;V()&/PPn)c|{ޘ dSH7- ;N8,ַH5{/ė @hqXzD 3;b\iWO1{*™d!.ŬM06=XR?y:oBZJ框0 iU¨L80y ?Hx鯰(aƷP)QgbsW9Wtfj: z{Ett:퐔1|Xp4CnX>AmϹX/.ްymxf0{1r]`4YxBNoNCHc雭' 1 d -VM `~Q6>nTO' tNXƇi3`XeM{s[] }7:Ux䠙,bwq;uHdZ?PZ&֙/! hir>O(XPe%?vd5s 56l`Yf㉓x}RYM<*}=@rPOQ׌$io p#]E190;F~}跾y$&e^:q~0tٮ/s Rwy {&}Li]Ȉ|yrX/gu cLoO??C+~@,Z-Û *3=6\?jJ`<$ahlED+@dsoX!#W7_+[EGڰv$]нوs|0Ql~o&{G7ɘ*t঍H*FK[`c8 e-&1Y;y(XaH%R]sKl  ,KZ#8wǬ)z=$bԚ t2Rxa]!Tt >d<Dw"ɢz!P/KcX|tHZPX<ŵyrOn1ZNk9fGV}cޖG{RáGPWBɘ!kT,J(=%zV܈>X,4~O,3~QZ&6B,_dMrSς!(58գ6qcDG A-݇u:6<-SxU]mPD`j65Y.I&73=2[b~=7yx;ؖ'lD;f5:JQ03pF-B\η=m٥3s<֜MÜ3<ݓWا!6%d`Z\!;uGs" A@5Adfd@VD8cEY`wB[&w2tֺ k?SmU7r s5v􇒈wQ3 u˫>ّÓG_2f+#MIB~pˀITK J|&CEZܺMYay[cnHz8$0dλ섹Vs~>1 8dIT"%aMnIfpULQC-1Z4e0'b BBbM ^*I95U{@ :exB˿oVZ&~()YO\~ɠW`X:v(ܞa]1 6M;bnw }$5&jR/П< pՑ$忘2+`3^?vOj]Ƌk4o f#Ɵ GNKҵ;6z2=&pAԹʠfP\x[jի&?!َysE6x%E'qV*[aZrгuMdҏ1j Zh3ۉ_o'q5϶|ȗ"ǷʛvD \gm`QZ X~לԹU8xWPD/*t? ey:C9> S3Ro P=J S(|cX@HAZƏ.ƝHRYYrrA9,lʊ~CPJ#S 7lV&,K\&&`gzƼ HPQU}b5e\Rڋylb<ɔr.PI/ uVe m6)Ofݪ]cj`}E)^)J7oW ;^׫72}ghsN/ bCi8[Lf{R゘{):{N\p4kpY앒Jj~U|QYi X\YUx(]x|:k _ߴ+3?> ޝ_:*BͦQ5T9Q2D *W\anbb* HSZ(ܶGs?D$A )fw)݆dj;bthM}*~:Wc Fگ󁀉$cQL5r: ZƦn?,J}_e_-Ȱ?|ct{9S>(!/ 0ٌÒݸ?s)8~2xb/qTGNMI95* Bjjֶ]sy,1&lƔ@0PEg,ރh2H; kMJϏ+G7"tƈ']dtN˝!٤z;%]\V#Nt8zjBg<TpKP̨x9 %d]rQu*#iosԭ>r*޵ -s>vpZb欋]KRց"8Q/Ђ\;5gVrȔhøvXޱ^e.0<9&[ScC3n>|()Ϋ5Bim܆=lV; w|x֡¬@nuGڎ]c"BCn2joh>Lo$x6\#KFR^C0;p˖~s7G"z=ݡC y*?hNy5ns#;̤fO'U-uȦ!Q c)OHuE/|Ⴑ{Wπϣ@OU@;?R|lR/~va F&;pb>{GH&P)7Ҵ>/Խn՛susy2# rfM*^$(>t 7(>'rlEFDn$%BE5Sd%^;KKSitndT9(+0'/*o-w`QShYmQF8-H,n=k ҅!D֥P)3۪_K "߸6mwc9Tʅ$m2m/УZ[12 QNYג i_۹YO.zh1pn*:ƠK:Ki>g^zVDvC`V>o5'AY{Ёw#a6HH>xNni?7@cU L7|^ ȩ0<2Ӳ>]?x8,I!S*M(wKX D-TI$ƮIP%D+Ԟ}DXEH]5?Pn,%ɔv8*E2Zm#@SO={yI ]laBxfg]l#79prk7@#Y{}S 0u8quR  d0_^YBJDS;R@la7,@?a BpM5SctK8r@M<5jÑ \P,ym=g>pmT \8;wlc ]9Ѱ!v{" 'u.4ue#z^qu?P?Snة3TDmfp:!#D+Wr 4eJD% A%_MV%˗ J|I8F2Hƹ!gL=0Q9z/W~jBTrt\藶J3BX =\bm? 7u86]5a39!@C]3yIe  <]iݏJ"OG`ge H { DOnTCvoy+N+YNdLy0S4k'o#*)i֖Le`Jc{! .#;FLTZ x6fHB1 V-!+/qEF,.X9'ÒC瞙asd#aM|i^ HI fO j&x [0An,I/0sYWipj]qp c'6.<~yjg@P: wԯ>jØJt `=GGr}n?#XAL$j6/U6B-tU%~ݽDgLD?4"4b~-۞pXNJgw@KUSKۿHV ZcKȚ[sऩ-E%G|QH${]OӅx~  ]'S;7'\rzJR7鍪|*b3NW]dU2cFw"Qd'+H VUT␭r Ģyfsk Uʐvh&Zzy~ݷT*>սq@cDo6;A&0%F( /q+lpTNL͡` Kx)?hB]uy,.OTi?"pkX1=PllX 70/- 񸶹9'c: ر8 rtui (ZOf I[XE݂yiz<:`qԉVݟ+}ߑ 7hswj*$Ldm@{ɭqQ$CH%ōZ-jĸ؄9=[.+3&OJScKDq;0'gXDUb58r0%te,XPiiRb}/z*JV[4]J0z5q./$ D&ʳx}$}Ѿ6ieRM=[a.x>D QakeK?^`>\T ~e*atΐ5V&٢Gjoj66]"E|z EBTJa }rFDGj vf7:3pǺ>A)T d TeKɕ1D~rs)i $Ceݿ8\2 $pӁHN'@2w7Gp .: ?yft %q?DIQ2bhO#O.Y}ډh!8OFrdP/sTkjЛ2ҪwLvثO`A -8Vxn+HIC u_=rIQ{]HLηEq|[Vr6\m#@gD[%ᗔ8,:Q 6bL[$%BmG-븚6^i9yȽf$`hwvI$i.bY̧*϶'n];-=hVPV-̑59ϳQU/T%DwZDcha¼;bQ {\S#TTTyMi"BJ)#rw@oWtDy36P'#>D`B^-i?#sՄK=w0Zhc@; Ȗ+Vcn@K0C\e62JLlOgTӘ>8̀0-ܺufY`MU/z6oɗ=Re+|J+O\GIZ"wu~|7Rrk<&y7 Bg{3t@wk#MߗZ^FR):h]Pͤߴ>glxx k"&"M->9;kJߋLʟ%!Ɯ)ft'9cL`2W.LG6<8*n!/Y•MuFleBGuN)Wd&Â@77DN|`l}6Ѷ(Qvܢ (1(neh#&wmh=^ցϩ!BmcJBէ<eK6| du< u/]=γtcA,ٳv|qq/MvW>!#[Xb.r| fk<2K%oZ> BcNHr*gCH+)]Jxʐ$Y[;s4px~ryu|Tv>t w0]Ζi*{R\$˿ibi& @,1녊c) k8d,oq%u欖6`?<6PNa vm;ZCn:M2GL!Fm"0pjJ_RWKqQ`lJ kG<$z aeSG3(ĭ^TX(7˶j۸<>O/,β"^"ǽJyleMٵ瘸ͫ9W2dΰ~s3׃mK~IZ7VW'_%c_ Kh>+RM]ޛjÉKY,f&b*P( Eq!XyJ.5`cP.w;딉9|<mj#/8av%V'0%'$&/`Yqi 2Md+Dit}Z!ݞ! ^ //^8E[BivZmĨ 8'eo8 M5O:sF*܎pǭ{|IlpmV .Նiխ4 iG-T?lL2`6LR:JSu -BNB_DD%pX`}q}'[~ݿ.gfN{:iCeJ@`d ѝ,fԶr|jɡ։SMS>썵W*aoou56w-!8ZeE̔Ȧ?ںDS[Ik ,,׉*ZH^I ].%=Ne*d3&^!8:{jA\Qc sqiВ%tY_%{a|>b3[ `'8W!>4|vINQ 01ok# %mGu,F $ O3YTmuH,J:yeᡏA6}i-^09s/5T,IӾI& Cv\G@2 F`WϨzsU(Y^>W LV=N|{Q*sȾur+m_?B+;y?yBzVjwAwC!s. |ȱgK42V`]`7"a7TĎ`'{'qGBC 2|(+hfSҲtI "bx42M̝uZ:h oAqcHucޝAiI( od,`KQOCWxN\<'89+?!RiٍqFwGArEBv:~ 3O6g]~\Oa)m4ڞTQKFHſL& ]` d(F:_F7~Etۂ. MK] inm'̡@Xrf'. \Wfpܗ5yoJbHIg[N,[ ,0t(=3`V5'pś*]!'`ŷrMhAv`rr>nrL?j1 QNg7܆)sfLQH%k%l͈4QKOcWdc골0fEvdN39E:AHFM#MsVL/8By ϏӃ_7.Q3->FnB <6$Lic8Z* ƌ,#[6R4H$/h %dTi)h]Feft?vɅ۵)l$IP]WY/qF^.% pHQ?v ߌ%=H챱iɭ\ߐĥj >卵(|_5o9Ѝ~NUscc$&@ZQۓ<ځMH1o.[&|D0ߦ {#5(}%>}9֘r܈2C`$- Iڭ6_3HAp@E, ?%eK"LK-]/1olmp*{ćtᮻ2퇋Awamr~zEMD*x,{>ColK͖ӫݎ COw̟_;8텴~R[mȟEA\/`*T9Y,D5A #N/"[Ɖ2ՙ=OK@D82GqObH%bw ;jnywS m쿚*N-횲Mөa fgG`wN 䊘:輿#́`3DP„bч+iy#a:u6J-RO2La~{FRklj9XzưjKan\޶BvdFl"gM ̹^3~qFt>75[7j 99le 6ڒ*S"KwRI; җ;)j"o&QDV6!#q W MyhzQO<'Ф{E5׎j:䋥qH/r64l›04 HK0{/8:u;̑ ߠ d0.A1ybg}f8Nnuӯ= (tr;-'yc/Z]bq]Vp m'($EO/.ϊHkf7jjSr}X3s 8jnRdt |_ uDg{y hXt/v8s\zOz9xߨs*+T6gRѓe.燡GHq#5vT6ִOO`|[b!fDFF,k-Ym7 Sx4C]."F|/̱-{5.fux+x*0"ll$ڿ  7ĩX{ƽ|Hc2j4SE0*YB=rLњV7|zf٫Uʌ:7:j˚jkGA[8{mCP 4ff55| 1Pz֩,zEr-BG-gJՂEK7h:nBۻeU.iJ8H1,"M>Ű\|Y^?a |CЈTtm*?kP:^, œNT$9œ{^C}<|=N<ɺX'yqzĜ6¤.RK`T~ί^֮OzW DHp:t2PQ׳UL@mDcY#7Pu06>] VM)U@P0Mk,\{ĵ:=VBgb/b5z0xu#Iꋾz!]U8NbqOaJ= uW uPCPLGT$$04!M|ƮPDV|Ւ=EGyta/j7@414;YR].x3Kf O/m-7ʛ>rGi nN)ש3T,HL~0Co#Q'fL8 vGgU GQ3N a ;9XMcR=C,_!ˌ'$eGbxv5u٦8K*=빺9(ekN,'}:2.S.SuWf'6<;4-ݘH&ۈU0M+1O5X $lYXgM@jp:1ؘ/jIKDD盪MӺ_dsi8ZRc0y B.!_$[\G<'D}dyl&lZ*'2|5L耥/-Mc{hhL 4 C*2>^4"E:B}:\ m5oCPlꈟ2L(+S -n/+%}kБ(]{:tojo;u> ;9n:qm+( 5zQ*_*w.Kz4J1:/8/))*+kF` L#"Z6.;dn`8Nn9c͸Kg9-ɷLL-|A ;.9ӶAܚEP3=-=GRRӹ#OUk^+KCY%XT>G_iP'ueUdxrILQ6=֫] SX8eSt&;C$5֥z{> _`pn].4am*Oob GJOI=PSmicV݂X7= BHlb=ctϟ[B[%:WLAA3ssꓵ,-Sg^Z */|ܩa謓!p0C 7Au L1sE\'>> rey}8҂π A%Řh(>S@4UI`\k"$wbp Xq 1^8b+XO]#yv銹im23F.k 86wOw]I/`˱QqGxof/gJS=M L,jmj臀ƭ^Z) I97yd-(<ߧ(q܁m4hL HQn!mFL#uڃdT4y#dóaqpd&$ϟgH$It=,2k F&R Q,Do`nL7QWSkWYJ/߳9'DX|-A@rr͑l ȋjG^S &(^pȘWmV)a "&l gd*<8´:sۅPUx6(?˅/Rw)`cXvl De(559":%D@M3MV^^} !>"ԣ!sH~50QF{$:5:8r)tMh,YmRE~ERxZ@UvS%; Ol3事TeHٻr"3k;|8GX7 ~Uj l`Az|҇uMޚwI !(U;_v2wEmdka#31(i/P쾦a9y nݲ^OVT6"Tl[p٭%hF(jf(N}@ijx&y}MqxQ֨G@[ E(Ah{TPA6#ĸkICUh5vpx&c"Խ#E'`].& C06+p3~ZE\}xo wby?bqDk/C?#/ѹ!* lxmYKH`#zo @`s#lF΃[S3Kݡe  d.qJJ?vINctֶ_9$uꃻܱ~@VqhgS Oz:FnhB:츊 ^3p&1)ӕ&^7l yGYV Ȗ doYB|2/k8s2#es#uݶ~l#\Ź q9ea3S mA)v&%y: dChAzղAN2ls 7T:8FVh  x#M7\W.7Yu+ X_\Fsx$+ MbJBN9㷧%>>~ tﰕ"zx-eF5}D\2`Nq6KQg*MKx/,qe loft5P)󍲳}.~j~n7.56/!*/$I_!7Šn{BFJ]}Uad83uTE"ջTvFS[5*B\Ϗ_7ǟΡWqb@ݵXbCkuo}>$~ABSNP0uWE-)J"m G „\+$4["8)q7:8d#."fPeLuzg%RAQу׏1f !qjiK۹e©͇&$̋(PLVg?Γ\KBob&ƹX:/&Մ2efsQWe #z$Jpxs9CF*"w%Nk@-lָ:X00EnY'nM;!3#t҆1c 1D#|㚷ņs6V,E49[v -o,4oM7/jR¥RSv;s~͔Eꏶ<2y3N.]N6=_BI{k0ޑ9HbJE4|- ԭ̞Vvp(aEGǫl y6[19eJ/_LNr.-1ՎvbE'FB҇;R(P8+1pF8Y%1xA/Q&iAn.B}BQY"4 Izˆ {-ˉRCіv,d+ɝ}'e:@v /UCZ`V2:lȮ_N撜Hw%JE@Xc4{,lް<{L5^H+<}<#4sHGlR= v~Pj:fvzqr~A>c'2cWri4Hs*tp P`MEWnC*QHMO8:͋=[? x&z#+9ژlG+ӚS36%pbkl!L W26ZV7j2)O δh2HF8Sҍ1U i!1EwZ=jRZ˲;MCPE±W͐uЉOHgEE#޺Au^XhDk{38/jN[R +.W1zV7CeK mm<`4NVutH,G>{au\hS/# Ft(tv5EyZv-A(;5 P5j`P2â.K℁;=L<ωa7BHc c//ldndOa]X'%SUGd8$$ո66IݘbGCI"exngf$t7Nq0KмxT1K@]NdVϟ{oA:f [}06C/|>gkLV) }'2ӧERMW@Z,PGTz!ws.ٖъƍ1 e9 `$FTRz麴$yϬEUSa5sGNdgT]otCIbfe2LҐCQ!ĺjƃwRN©̤\ \q,LQ([U[ MO}d %>Yfl7H>\'=P9`cHSk!d'cPWF'БnU7iÜOF$L1mcFx)^[F'̪4'n(.8p H!*GDGú 3>.^$Ȁۇ&ȡs/q3  t#{͔qWsiDmGU:*Kutִ9RQp1Or7M-`P >$o Z2?Q_Yn-,#o z[0 Fωa!0>--GYUI5R N)DchhJf`M@(8(~nBb,aeIȥYGfkV륎>i)1EgT=S ֐jErю;( 7(Es,ˈg "i}@MWߊ;*ܢ`zhHcBhڊ[LayQqIgnk;:(/-gJ‰OTqzKw:^rkT^ =7|eki- }-7B'!Pɳr?AƖkXV985ZQ}Ljj4C6-+bq)ϩp9ID_6ذw.} 5Д";etp-hM2ts)ƖaMÐ`T7Y*~R@u޻a.9O/36aWrݥ +Fq'X7CO2a#gt2BM_Q T2͈Eq#ohfrDžDu%B֚]>VHNFha(Lo `Cb7ŐN|(UٰLEg3jbROۖ%\GjX! -c1SG*cdڿ/O3ɻ?GmGaERQʤD3sk;D&Jd_Xu3xeSJX8%\z <#5>.&y)b$%|9%JzDr@U!(M{2[|"rsv ATUE4GG̒T2y.߂ 7?Ao寃H]Lr798+? G&;YH#ݡЌeq಴,7ypE tt崐vBJ*1<,ֳ\ *׳*d! N;*dxgg!<˽t{@#">g0~ː1־e2`DckXo:䫽GC\LCC ޛ}/dhfe"V5qJ0Au6srjaě9TH1]}Jw ?g{V\ZFo>.vĒ ]#Rw%ol`r_2:Z60|1d ɵ9Ź'j^LjFWp݋ 3b$<$'Ey3uT z gV7Xm`0 -FK7#y)䱦`4iVMyA|g;D1(bqtxc%0N[ϱ]e(-/t)9x͍b:˯˧ >Yn%/ӹ5^E&=́I+G bRF j,2 v-bٴ?QG|2z)WA|= Wc*j_ʙ {X\w(9-2D܂E _/ W پk\qI1nV-ZcJ!h\?huE$IF^Q*k='2wD{ DN` ?8?že{VBc^ IsU;SMov-p *99Dqs0'}sQ:L2D] 5 W?bVݭA\U3f~8{ ^TQ?*W´`$Y%HHݘ~Vtwt8Xh EН$ϗR '3Ì IToVOHL0Ћم'sLJ3 S 4{4Z 2zs8hC;|&fD*LtW! g}B= Z` PWq^S&ݍHZBgW"-]/7|}?Ƞߍ_t-LV ˒t\L,D g\n%njH$yqOu?u?5^>xL{Of6I0Q=k%Kۯs](kl삚"1;5H6#C |30zq@|;&9UjRSa6PጇӺ:;"8M[hy9c;'+DEϕ:)cfF!,Oh.eOKB|mPĆ[2H NarG9NLF0wHն*wT;`֔1?&сd^eCb x(Q5;M Q/!>l2" d? Y$JB19XeM-Nbm=(2䄄UoC~`ю-aIf_L \;#yz]Yqj2Xxnt딙%.$Gu5];Fћix{ Ѫʸc- Bg|]?y7҈gQ;R 6Z{8櫕)*,n/]5u^@ N"2|H)mbϪ:,4+&CvPft(εRk3F -ZKL(nEUϲS} 19@,s#> r`}x{@KPcXirLg dZZ4]AJ54ǮWJLY|^(-!ZAQ`K/=f:0q!FYo* fJH 34sX5Lb$!P\eUp ?hxɧ' P4[5>? *+߾!L*L aM=ۛȋk&m 3BPv*HoPcv9!n:I9yLJ-k\˻3ރe;dd0]&@.mգ>ߓcҔe}O?`s] GuVrs|J=Ru.Q #zd hk4tʿ}sTONВA',Bd= yr,-˥5H@}s/VD"{1@.੕4nԐDOn~%YX:prUz 'i^r_J 62rӣ% ?Eipn}jEҫѫbkoeN{-)w e|HpIL6Ab8<44%u]RbnS/7f=XuYO?  A4& L!H{u||L9 \Rhe\0Bt ` -:āMeEw6El4:,hUƞ4ftfW^vxvkj;%R\Y=m- Y Ijrl7217?}Q j)+iSvEU`V+tF~tIK挛 qj =Sz]8{OPTu?cƓeJt(D»{C ["o@# yS`14Z~/V?QњQum:NRRwNV606rN3t,1n3^G&.0ҟ+ca8I *RN_#+mBأ$SJ)JnHZM!}O j79]SxSXN'D?6p:{i O]rXVjlW|6Ie jpM1.]t3WX_ƣ}Ҙ6'zBLxަ z Q?qDYf0DRRm09>(A)J~VQ!I ܇|̱ur {&aha4!I}`uWnI}w/:Ea^Qs.YXQC&i-8$b+Jh&ف.vӦ%xLr^r!Rq715JY(F1Gc@RݢbcHvjyfKtZӬ]Gӏ_=HŸz/b%Ou[g7#h֞JF,‡w\Y7 pd%A\z1q[PMݧl.6gܲt0l3+=ϝ/x?Now^W<_-xD-_./9Bc];ջaW">, jU5~6ThWnQ,jtyE;~LuSe^*d%\CɢQtG,DX:ydTG!Qf>2C+8TSvEY3X`Q+;i?п3^;0Ͽ_EmN@^XP2+Tʗ$ex (^)uCٙ-%~gdYŦc[Ms"YqZi;Ɇ`eq;@Ҳy\)ؙrXgRDŽ{W)RROi <+Ѯ7z|Io~>$2Q`{gWd"(Ȑũ;=eF@{m]@\|NɠC1Sm`&]FjZfEHʳ?;1//x 6ȣ9s@@> __WQzz2,% K%"m/<$#e~nЪ>wUgyr3db @OަP}Mh/h 3?D_L N[vx3 o>˪ihf8hY`gQ< H\;D)N'qS'.YVٯ(EZ{N(\ȃ;?9&*WHF>v*<[<_՛@' Xb5DbTq Ꮦ~x/[i94w%S*#{F'M v)Dg.J?oyںn]Xp!.F#i=Ѝqh d5Ho_bpMFP{tАan%-\SAH ߰}H.uKћwq |- .p ({aU+) V]«lR}eIܖ^ߵ|/vg,T $K2 ]*1+pL&6eW efS*_T5nK%ыՃ'K{7&)8i8jvH$Q<6Tjjz@n<$ժ[[&6xC!1dCC!U{L~ &YsO:6N[{Yrڐ龂0WN/Q: Am?"w LTcwT+PwXOD EPbn㕹tǮ,'d?Ĺ>: zc6,?C_[u 9ֽe8 V@)36o1C6ς0e+ָ EP;Y-?&7ʰ!s?hEc~ 6W)G.J>نLwԙvGvxDxV?Q[KwoX`">8}:I;f:)Kq;GZ (Iw$b=K'idZ-Q! &P!|Z;r9<D/bwՌmsx<~Z,DgOR{@&^79$Ƈ8[Ya\ɉpݒ3O ڋ`hz/^?n>'XBU{'mm(%g@xB\{y]q9nl'v ,d$Ve=lOS1u~tIFK~W@$M䤗?(aCĨ$S!CmOZ_NAe_EJ4;f0a+dMR wPǏPzgTB9sz  gI XG4Yf&&8^2$!Y(ND(h[::&WZR `ug옹@f꾿:1D햀^7Z _O--#׶U?h=)\w(dLo8ܗ,pȲVDB6)/ )ybN`_.2Q.õn.Eu֎Wf#0OU|R(*/`Gt!^"`=*j"gWC? BwX.v1έ.yU/KMTy31+#_X Z j^ѮA"H׿'wU{Knh!7[/SKWar<7GeIj5\ jPqK7}?(cH`O,rQH'xM07dΎr)9Ci4 lph}4#|q}M<t]4Ɠɞ3QIs6`c# pV״_ ՛9'Ѫ'M51WjJ^q2K%E%Q,ou7 ]lESWTm4Q|M\ùDD3?iDv馛2Mj |!>g2]QS:kܮlQ=>BS̟>jfv/τ-84GD{Dd_q}8Z/l5FsN{MB̕KZ WIA^ޓ]dȉ TY\L}p P#3 q5}Mal K9@D",D㏮.t:GK(91--s^Lj)Z\^`Q5_ɝRߡW<$N_ ɺ5) N!MK0D ̆"kUsqag'PXU ~5\TLvLM(@&C]7_ϛiH׹>[&oҕlAE9Ɗi_M¬0zaOɹekG"1BB57X'S9JIs9k"7c!`ė Ï慞 ȼGpCpfƄQBԛ[FFJ2 NԄGc =w1._miZWz9'FADOh묏2fTN0XGy RR:COʁpp$V!2Oʬڷp^"W (8~0~:mVlSQE|Fg8@V?gYY@"5svڏm=~Q ,!9wVU-:s RWԽg!3-ltQn'Aq6uG9 o?0>;P-2=.-^Jxl}^~npmC"c-}w@5MϿ0s )m/ t‰!CgΑt|. O BSGV^ps5KoHTD]2r榟Sec1n8ϊ0B]6kgdGf %pIR9`)l=BUOXD Z,2C3a‘r a5TfK.Y#by@ʰذd(`?c|(fJ;#q^$yOr}gSN4?qq1]ڲI1+}?8ަu.D}5`řzN.zw9lK8Ʉ$q"}bOomgb0e%Y^ʰ£^zӕ\B_JfA,m*7K4;%¤߄E)":/rdp]%A7/X䋺G'b0+å~9k _F:JB њpHW@/fs\*$V#ω)i@,Z*Dzl&9#+\ou֕R> o)>/\xO"$+X¶g|MdQMʸ!+{zRJ 2v-BaH'a"/B[^1)XM EpN(X9e@`̈bFm~ql:Be6fpiSҼlUQ:P5-`bgBPv?+pۜi=v[hn զ,ȃ&-91oV34p>7+2-@oL5i`0p%diwɐ<o S2eB8$ ]#?nJ<`ý'XS%Hו3reNDVz(wN #a~*[Q=(t;d$r_X2E3N-Lx” R? F96lhVW2ٰdq DM՗wSZ+P@Z71O'- ^5tHYA#>*^!Bc714Eopҷ.xvs_Ψl<8Xk0-":GEg7r۷͈_ cu*N={TGT.k᤻,$Lab~xbws[V*ŽȳbO8%U3j~ yˬ31D(չS,G.]rU4ل)XD8XE/tr:*>y*})3QX;kXUEJG\^~ֵ (}C?I|*q|Oq2+򦫒n`]hBDKZ>ontqk)u}ECEדF0-`4ݐڣS}(kww*-h/R \ljIM?GQ0;W 'Gp6eJ*9X?O+]7܉eFr_mZ/C hic+R1\˺\QNCՁ* }lQoyOV'7d_3ھƲύPT*#|Xv0 =nWc'V_Q!~iS'wjoY~ _GޤEO΀0{D$cFǼM3ȊQd6WF6lއ7~8,J~fU:! N9zqdVp`0JE6菬)6ZK[;B3\_ڮDfҴa L?_.~X61Czڴ#6>jזU^,Uhϐu=qz@.FK۠F1| g79Z5aS:7O1K,B#'\"CTOI g L_DɌ|#>D:a;p, s82G4wysÉ"2{̕zQ9霠$PF{}bY9Bznǣ×x "L,(m\c}R@#gAޒNoOslhq303=d5oˇl|\_kŢxbXBv&F,;sY[3Ti4/0َCD&4$=Հ-ZQ'bն+:= as¸m(Gs$Q#&hVt'4jYP#;AvƎ/6*!ݛv pGDYmɞD-^t9dGT.rRڜʨ닦ڽ'm -izN\Ip WSgAX`q;`Q^~J5pӝ=C2L^U]fG 4UD!qDIS7Etl3HMx\hNt:E0ZeƟ t:Ңem߈^rnh#|FiVk'A"]̳;۰)ŏ7f/$3$azY,~kKL n}}[B#0 }:{7xu¿8 D$tMNA6)63P59A# 9tƸq{2.0?O%v]K!k/-?gS4F_zg;d2@;8lY?7U,FgG.\V 4t45z`mE5Yvu ȸϫ(Mt 7BO:0@I9ǡ0~_?}T) bYJ,) :(\N*Xa6IKӭDg:'ɹڿr|jjrP8n/? |6fiOh &d}FWni;\Rmd*M{y'(J MTK=fQoc/뜐Qt8:y@+FadnZQ>m=;> {}Qsb&I^Sk# XQ)[ٽDz8x12) ܻ&޵ag"@'z.цV-h ecr-b%-TO)G 3p5`]3!Sմ6=W2[6s|mӉ[;/ҍE#Gc*.*<9{DtbԲD(m6)1l/du4:0y_`l@ZD8x}{Y 7n$2cQfѡ|'cf؟v=d&}Ȼ"gq:qɿE{XLMS uG^6Pxha34zEF/JƠ,3e)H_WMi7bC/Ό=xj˥O`.T<jn`^5 )=%M-u7䅂eՖ8"/Ūr[D.qqt5 ):ar%9A3=4pHZ#1C_VאΪwR`?p5=)Fp ľ+Tb %ELRf,ݿ2Ncc!]3Yo?xPxѶH_ͫe8jvi1R|:uGֲ>3>Ӟ2iC\26DZȠ )WӾ}8WRY."xDxEOI׆_CSڲ Q1 E+ʇ{GVv/kN\I SLf*i!(ud.i5A [hD_d ]jUQ_bb5e UUF>A6x1A~JanrhC'MΙD 3xfj頣FDVISrHM;:⮕߱rD\ -1 k5Pye(PV!$ Rބ.'}ZK@*אhm(:0.kM(QSCeCe]"_YfTw ju+_B!}Gp*<3qe_Ꮖ5L|hd!B\J1AIzВ6=2U)Wx tAfWhOP,ikcJ R >[R;& r{~5N<3ws&q`Hx톇(_@kס2]%(2 m/olޤ]0,#2fnli3jl׹GV\Wzkd/&˃Fh 4/CYxf8;*`P'ʫpX2y~j˘af,k&4VV&_ߜ [d?qOUa =)W%*ޝWՏSkuԝl{5nx R!(eRg'vj%/i3G@$Me-F{|ti`Q^3EjXC j* |! ΨsLD?pc]TT ˷1a1[E\s)hܾc,Zz֥ |=cBT2F |?櫖aj"F;A|( ;F:q-)w{I8*goqm F7*CmJ+3%)k{lD1EuO+RM( MnJ\^瘇D)>'6 \$wTA}_f Z2w=)ݨoGb6KɎ 'MF*s`Nl C Cy=Aļ(…2y-<ȴcPgUʹe8 S>^*'{q  /1CSlrhd1YlFfD:ٴUu;Xd^4-d[:Wk(R@b{)B?u^l5>q{P3ܲ|V/0;[t4 o&;Ejwi7s0083A?#H ˂ɇ=+9 <)1v705cP6n<V~۩2q |UmΞn6xi\"fp)f (NW%"xb_re `s_EI6eS{> f i}*? Xvo{fN=ȩ"lZ~3$i=+Ljoa:3S9+gZUYLu,Ο"JLlcpE-d-ʌQ1i]lOP-x$#P=/JsX޻q"!Db̽-Pf/6ʬ5S1 -qz]CpAQA%$4.+ĺ}ي3nPPrmӅ wXp K-7vDr* C7b}nFvkdO#v @pZa BE7|D,7H"CBm</cv`TD~Rtj=# gmߕH2<=?F`Nޔ%̯O2ɲП n(֋76v0Pf)!؝r ‚h7Hج5/ ,EYa\ފ⾒Y4\<1Q!W8\G8/!9bip)بil=rb[2@XG r¥W3ȮG!`q" 5ʀ,)_5hϜ85PR@Mwr4wo0>UKLГBo .,OH+iI@_ehqwY|i*C_0֬jN|mc_5,-P!թgB1/̏ܘxZ:8-ɮ/2"pq[dߏe:Лyd}<ښr"r'p\싼0,_ خ4 WuZ"~FP"g5;a9G!q;U簓d%&Of\TP牁Qvy@:]SA|#Ml =:"vTG6&&?eQݿc`rrx_ίU$<QjWK=+VӮȽ҉zBNw&$5jLOv>$'"DJZS26H\+)6j{/*WLM/lUY3Em!< |"W2uR΅pM ץs}p *e^c jLR3[G1꼀JLv;m퀣nڀd|- ,Iö y'=lHFQ;s/588Fۭ@ؖEVZZ6`]fn8>D/EDVl51;n&\(t'B P92R&,:N繄V7OFzwl"P ZjCi MO*Ǎ~\F2WC8)kq9"j+O̼(bH4pP:BŻD>3c0Ƚy [Ԃ2Ƶ^vQ\lC6/az i#x>{#*u]~0T+AL|E fG8ưNhgG3j+8r8/JӞ#L'SP0fE pojB.Dwr,v#v7H)!m˥߰_>DV[? R&ai65kFK6_+v1tb`p '4h:8waO@힯y֭t: п ӥ*|=%#1 RY?K4nzR~ԛs]|AG4.ezE-|I#<4e4 J2LhIuw"#Yt11Ȑ:]Da0lOZZŠgo&xoFw놝7e'IHD·*h,pZYw$)[ q1JdWɾ[xC@(@2 Hl}Q%z[iby[4H∠ AmF%AĐǟD WEߴA]ꍳ~0r^Dsf>&Vs#6  6`Ӯ7-읅8ps|HRz2Cd aN5Gm6(%oYVXcPȝ&8;rL4|h YC| }6Ŷ ,iGG9ՊR'Eb4 ʽH4:یMfv/+1k ]B#j 2$e6 |M(LԄ %g19vU۟xq/hP0wmE!tzA|[C\SE{m0)ߗ4l#lcMVl-**nQN7 `q7)hZpyΰSsu&g| wnFwHu㝡hz(Zu/!>o4!\ƶҶLlP׌@P5F`_}sR/ ĝ(p mUM!jH~{DqS r2bHaDVl,()j v/7`'TbĂf6@쿕y]LYU?sZ \7CMlbxԎ'`\H@U}$sà`4斐҉BnA#.OWBBdS*0v }~=IC-қb#nIV],o;$H&%לZR&ThzDT3JPm$$$]4X6= }lobYpTAQPgk|`B%!AšPT F*m׎w ک>6|U$cS5+ݱtGfTHC޷L|}w:/Qug3%F|EWn"+bw܇.1{Up OUJl8MFѱ{,EYaKDKꌢl,Aĸ&Q7~`3yh$$J\%j^o?8h(r1#⛖~`M:Vp[PɷÔ).-0Z{^σ9H/3BښB Pnb;Mـ$oƞ.X֓8 a~߇xG X]|gjztYu.&)-qp<vd70^F8-jDБa5YQF$E' `!mD!_Y-CgK=RQ3;ĥ8)C B)nLrv%YIn!g*S$炞ڋp(z-A" K# =(* {aU{Y,E+f4Iih5շ127"=b066H~luO%<-yu mݳ e D UP К)i^У0,L1CӧBBX8b)wae*k'ML3fyt8Я;LpY\>V>K3'yҹ23~뙗+oUYw예R-AL׵_V|ETl!lSavm*Tۆ!wܡ0% &8|<AQjc.Ѳg=AU%o >}G Kn_͎`etr^YyL1S&鏘C]Lvf՗dH~|Xq1fDZ\SЏ=M|U+D%79гGaRX0^giGMJ->ʼuiC촱d].b>SB [GwtR6z6lFTT.?ɿ̙;칽SIH l@jvyG"lCRxX ھc̵H[4u$yJ4X.qp1 2ZW瓌ڂ/A+8›]] 4x?'nUI2g' .W9&t̙$ɞy֘80&q$K Y.?_(c Ѣh s}r:Qg҇HTo-T Fb4WLT)GN\q l.f_c!~)4btӕ׼yG4R:A3PK?dO7g *ODqQ r ~kB1KLɗY\j TCFDTjn+>fp@57ף~{8Ɯf*cϯ)gfs]^4|F5\h 4_ .ySq"K!YŕH!lB+iBV4P`B47/GG[_싽2e(0ki9=1Y7 *$q4Jlw#[p$L_zK`6WpU̻Mcr@(zM4sٴ䍑B]IKʛj+FԋXtZMRgCe2Kwz`77d4ov+4/-k/\Zc}ϮOjB#QOv_.YӚ8:eʙň+vy@<R+jOCHf 1-B',>ias^ΐ-E -H@ЩOt٭zŒ`'A,tlN̄?r 4(#4ɶ0c 8Vs!'gA͹) 5tJOsZوCEOXC ~NѨ}4&K)^c)kh@,gψwB&lꛖjbj3֕z('yTOb`޹s8|7hG8Հ1} ٞPyGhߚE+(,T\-g_}*Y.l8= <7 Ot#lͦcj?it%]+R| tix'͉O$Ês ǽ.4R61gD+'U08h G4R '%e{ΎIdس4z1'wM2Y]~ GFn Kz&_,{fy{bmDv[~lh`@JU bY< vs3"^4-ޟ 5%~֘|DW3AtAbA0%_6<ƒ:3tų5*>+BǑHTT;'*PeN's/ l2=2B(C-6p: V!F8h ?A䢠M+;QcGH1t*$߃ 0gƿ#U! pʕu0q Ms&Xo(|Z&]e[/P*A:qJGA -x}ggٛ>|8Pt N˓ wCȊߛ'*Ik"w]C_}w ~˴l]q_J);*Y%$2Vf8yWۛBI ǟp8%v^Hm+z6A>cKϰ㇯&Gm qmZ+)M]oq̪B 6z;kǿ йg7c4ټl((+̐+lG(ɏ#HXObRHY%{6JݞP&ԣ,RL&L-4rIr-͉6{=kޖu+JaNVq4ӛ 0֧׶.5OQak:%1yw1 H_tu$;.*oݡ2MK;嬩=4&'LeH2|/RP3%ցg`HU0K9I8_je3ҡ'CSu!\Qx8 2k8׵{!5PЯ/Gh^-~ e͡&[xpaIJ%]:*}+sJ>gk.~XlNH")HZUwd5WieHRPaLz A VQpGj3-ސyzЂ9چiT ďaсu]s^-gv0-I&SU2GkJTgSԭYo Qiz+|h ٟX_l"C+zIe]0:]6P 4X ukr&kPGdg %6Yq>qO&@+^#;4T;ua3G,k A!e?^'^@'Y{m5@w/ożyj V x_˻wP/gyP п$ᔆS ;ܯ{/.+t@G[&ڧMw=6k v/&?Bw,C Ik ENTVDw~4B / =Z049+_ +3>V_[]N ھ\R_'PpokĬn5(izE˨>Z%Z4lȥoUICjSfhch*Xj>2e"*UۤsB67E2}.O$))-3~^)-`hTB ԝ!}ˈ?LZ%fZam)1Ks7NI ^YŐxFV#EYyB$O]F_q x[9j+zkpPPt8R自0 )}մjK I'hO$ZJFiDh^L1D:3%cBz@k!,}3W L6WAh8PۈRQ)}( D]UT3t]IRM,y?v9J$bX÷sm~]vga]Io?H$흧gNb[ew!w>txB_~ZQ ʺSdfNוn2diP(>R;VyύuV)?hQ;6tt\:tq#ZT:!cEj>+n_]]~]N[QfټViգTeJ5U(cKВ^]YT\M+{j'"Q`P ߣ Ά:\r;}䀙b "?3+Jk;b-VX]rMNQg|3!Wp(iYhWe F 8mF";2FZ=YңɁ tuH:wvv@D,'H#xA.P5`8=: 0.4V})Rw$jH5)P9\ފjX:3 z}8qΒ oHY=Ik}kײ(\nۜMeGQD;%L[yZ &[-R쥯Dhq2T|J fktyxP%'d@Ku%k~oMdmHvHWMa"<.#EpRî݋|?ӌd WEz\}(sfIhR59SʌBe=.Dl߶е{A9KJ15עaJ`aHŻ"yϓ=T+[,O"@d)Ʊ[h241hyT[U9/-JLSRm''"GcSCA-z&; Gޘ\`<+0qV &8Ty1dL(ĝeq_,dds!ۺֻ0CYpEOprNVE@کBHjհŹzlGjc+ţ5GɢW{/; KW_ KX MG,8|Lk8/ Lfցc; Iy|)<fw<PC\޿C9ts)m!3ѝk;'b|NyuJ| 5}z.屚.cuĠ:jFlGZ9u2/C߅inb}ޣ'=.e+qpґq eh=n;59wUU DrSG6XXlӍQKjMԺF,ּ3AMDE )qgL^Mz_Ϫ;C?7(e8E b(lA)*0üj>}(+g`ЛTE.5G&1H&wp5 sm-:.ݚh:FNbQZsɋ<{XDWG|R.U>4O0ǟ{cΒkPZ)<9hE7$CX޷w/خ&y9)N&H[j % W`! qߣ"4+q=i>x &Z-]E3E#ȧ^}Hj!:q-V.i댈Nm7yE<+iXh%9c ;:<ڽ1s/"/4X/ǢAZtIG.w^l?.C|Ṃ|;?l8v\Rض?%̹{/G4. aM䘞(p)HNO5ህ4YfζQ)(3J;HtJ;4c`.H]] [g'9z u:Q\'/(rɗ.Ճ}|T#|7P(%69jf|"VwA^TO&oʟj_N؋ڝo)9 /JLS<@JhźK-:ǚql7" ifjrѰQϓ/9#.Mcgbgn=e5a^C| %0Az~q!hf-碕uN3WE WYr:&}cC1E}ʝاVlu|}ˋ ĝ^\-`Mb D"J 3|{;8/:c ʬ| #Szo ÒT\=(6ZsQ\cUYv6cfjלhZWs 4[ U qOP{O2s 'ZfPF+%dJ?uhTKztU ]| ĵa>t_PA)'`Y3^vO\P5 Q۟~HGVmw ٯ]4ӏ|Dh7JVLhg Ze"\W!/u5Kt s243эؚi*U' ,N>oó(j}~-Y5)q}kar *2ܮ^Jv7iud<(p-Zeh|j] ownKKWRU7tENER` Lߕy6ɲ9^fNF7PXlDÿC?K)r-  U1)ܨl|%?9;;j=&F5ip NMe(egRʥxe 1\Zk)?AqN;Tb`Wgmr7,tއZG)N:ҩnKm3!NPBu wYwSYqN­"v6Dཛྷ<w$OQܝ$)w1QmC#DB g|"%0uClIS+>۟lc;ۢR?3)Aj;dE4]pϮ`{qQ<(ʭś2?’~p 6U~<-a 8r*Nb NmR:6XVQԢb~AOϖclyLx{H%&>W3Ďss[ML/k/ᄲ9*S,EHPXW0Σo5/h&,&ݢAܓ#jC#NNm1N~-h umP:jmO)<)Ae1"'s8=j{?8˛$pA8qar,u}bz.y@ RBJ ?{Ç2wJOJ᪅Y+dEU0(h޻k t<6 6u8zvS\-w,Fb&xrJIluL{C jJ q3;a8dؘKUIf;B4peǗXB\[[ruEHʝ_t\e VnIkqj }V{vyН a;ɠh\ʐYC;"/B3ٯ$,B25A_,{pDP0 ܭC4Rj8a*RCM¹ugЯ:WPeTA+| (p*yH!&rN' r3el~Q.WQ3.;"6^+N}D֨p,TTX<0;] `s?|Qvܓx`FBm1JyztQ׃Vʶ}`luǺ%⽜d%K?cHu+ymSCVoi:rrX1X0Nx0)25JkM&3q\P}L`cJ% d(h|YRn (n 늾 eJ6>#6JҥNB )Np7}]r:LB7@| I直u7:9i*aߕx'jZy  :.)E Y^&v\ؚތØ伍I"v_b/P$rH:`{Lv U[y;0rd]uM C$5Nw5_ h@XŹ&$q֪m&;cSh!Kx5 W!_Q"u=@ɯ Wx%f !=^Ez/f:' f #t9[v׈ oCf_qO;_Hr-˺CGܲ?zbe`:cwБLe&u֒]Q@q[@L }Qn{s*[}&Eͨ$A.M.?]MYvnQ4jX%XPN*ZB;85yq} sg0iO^o"vU*odwNuUp{569s%>UrܯcLԼ.DLvj؅,2n~V61t(`aEÊEx:^-mضHȐi!K(ʙ\ 5l +}%o9IadѫsMꑊJzuedùq.u2`-+l`yyvQffoAkE88$]ZŌT[Ԍݹ>q IcwaB>{AؖfCxL0l!fj/əщd<<[?lD#8Oc#te+gϣ\y#^L ,YsEߋT3uHan쟿DEnd6U{m6\Ir L&9DGᣏ~`DtUS^UY4S~SԦ BlɻDG8wi ;묅>Il,{|6A5ib ֍b'|k(xgu2'Rtz)8I '5H4Kbʭ>cN 3NX!<.'QXKJ%@1G` :mP';NUDFg@^˲z جZw!YQi9]`apr.49\oof ~4HqNhJdr:bR9@8%PQ -z90_H mwͦZI#%f۳.CYTś;R,"@-"̰(sUmpuT).tf}4q2sFGJ 2ڞT]Os2LT + <~9;=[;֩=rd#/8+VS,Lw!0-T3,v\ 9@es۵az@]#+sMmiMjל ˭r7*afPîI"&'%J4.K@*΃ORP*MNf<="mVlsͽ9d ulxOR(*]~=QQBX96v$7+:sһf:h ب68<J:;rn!t=`Rz,3?\AK=f+A'M|ǟ'XzaaFI_a! R7Cw&Y2Bn^{5*seLPgX9{ n%:K|HqpSUR}FƠ*̰. f L>gۣd0-E_+0%rHMue?,t_ξz"޵QZ+'=˞cIO`,uDbSsotܰGgyMe{9"j \wԙmޚFɔnbm!45ͯ'6.,P̥%NStnbҎ[I5f'_,?jK3O Bi9SH8)ӤSָLF'WTQr_ә(e`72(jԯ##3/j2gk0{Y}ta@Ѽ65[9ZpXbb0hiљh$1\Oq+BfB.H UP7;t*XS#4h8 r\N_HZ Bi0߸#4l2vdr{W/⬑Gժ߶H:?ugb_/xh%#}^B~X9Ѳt3ANt%8,NZM`AA2M┠xIiI9wBhfmw81 #Fev4EpW>E)ǸI7]Br% #?[2Ŵc<>w'% "47OV:{|+fb*5&M4`JD:kp" /RTNMo xB9-Lu:p-t'ur&06 ,1-YӬtt{.wK_LћXQvQҬK4,]=ޥ}Xe_5S}qW1djm<)◅r";~u-؝rX F'ձI}V^z0]'4>q]^v/fC P٨nS,Zf'Ĵta8& :P oQ?Eޙ1 ^NqNP,h6ZR`/Ȣ1fXY2"&)p`>p '7b n@oGPĆ]}¡[TzSfsT۲;q(k\Xٵ&՞PNexbɂE=t}L| aEx6I7i DG^LE$.o}Sk-qx$ŋ1}ڴ.ߍdFmKf`~ibɥ^6q_Z=+J8W (94uSuie0wf]"HPZAݼ]̝K>Y|6^0RO)6z1ԾSiSD(Twn=aFݓ2͛74/ ˖[ϛ{P;3E$U(PJi6lL*H#rh3HNklѾ+#]?G'\ VB7ARģPL9?C-$Cȳqq"BiΙ@KGan$_=G͎l[ ^(5LىLkuAE+N+fzJ~e<cl[sRe^3N6W6BJhS5Rөi} Ў 0 Hn56z [FYR$ &^% PS1mlk8VG$qY!MdVEhȐn뒡u` l? !r#-s?aԴr K:@Ʉף7 %-$xXH<{:Vź0X_HftfF- V_~!zO oYh!6-ߚv "&?%  m‡($=,=HC)!lHf\ŝO^S0û#B>t6P-5@VfS4+GDY8yvLX6AG8 ",T~8T/_[ϱr;6OKb=̌._/2 :Sp.EL@͙@E!7$xE[A4Ll!\:`[LspbmXds)[*훇X'ufv`g84ι%XY\X12+گP\9s͏?[Gs]#T-P#-^Bɢ%gC4kY lݒsقka|+1wnOSMx\ |1y:c?RTCS#18S`ߤ:߭{@OZiQ-n_&_IR_G[o2SţI6,!ęg!O(/[TKsQGyVf/[-/YܙC#̥chm^G?/NjiZ7iUG!CY0ZCN`yI6#Нͩp}][Jocm`UnyMtŕx zdQp6wzaӘ blW:7ZÓ;ŕxMW#9՛ݽ-eN6Bx>E ZGE8@^3DɁtb-qŲ[ٜ`G}1\[!_"s4s 6X4$$ TbPRB"öwݮq<,#dnFEZ,T3I] L56بR@צJ% ~x=`UU]},P"#6~5 pEx0Qi 8JxS_7"K02ҹF[x/WQѐ5|G`/@^*nfk,+_M_S{Yb]=\8v͌)Qr9N.IhjŽ%ecq0ǚ1o[RnQ6,Y"0S3{ li4OD]jg#[di"}eRKȂZW ;T)ֳ_FkA|yOBDcl\x 0>1r5-fI[mB5 k{k?,Of #Xj@ '7@íbhej0EƠư=eg6 SL42V:Qwxߏ+ mWY]q@dҺ+n"NkTRwjU*r3뼔R^>0 52`P,B}|ٖtè= esk_*IKhr*'f24\k9|*5nƢx=e)!ٝ\yqH٨*eD ?MhHOP嵊i ~XÄ_?!sk` t ͋*Ngq<2wIejc[2e"`\~ %߂&<ȅut]ɽF@i׍K>p g7E澇up_9k'`V(F͒ClyæC43ܦ??b:W#>UὉ1׭\1'$" S ?3͈)8#0f)Es\ =T#62͹7E0`Qķq BBq#|w%/uRwpz+:%8`fqӣŷ%7GVL_#d9a-g%A:9bS2`h_]02CN'5l4KỶKcCӊHщ/Wxf-hǘ>{odHvs?c3JZ9&|>q|sLcI,Qtܘq /<^E44Ոth WRW_G5|-po׋o F+.v?p'jR32m=DIQlHЃA`* Tc,ء-K'{魙 N`hO37V {"z:Ɗ 8SR (D2 q+~xv="O.e~;gk@ӆhp_i-Aey r潞jy{ZVewXN& ?Գl2l Q;?R cR2T XT-wc< ;ZJSGy䀱KHE rlUNx(C$s2l{0IkO!]`,FͶ-Ǭ[Cg CF!lNfERA4CC_4y&E ~պ@`V%_ /&yMe) xBH-P u %Q;4"øp=f#j"* 9 |[ <GOkh2f9~}_pWbwlO {' qZĵGd~0 |"ou"Z٥Q+hfZeB3n٬ q9s-V=x!y-5. d۔4I~|G惇8$B4=}Ffݤ }UTfsq߬y&jnavΛ_A<9*RwPY1 ͑4FyUW!,4Ӵ3r/ $0MQ h͝Ee(pK ױ*Ҙ[NN/7Wca2}6lwPM?1ier!!cs}_ٜd͝n桛=|휇V4O/{TH aoh('a6\N>3Zi<6Uqx9Tɱ 7b@|q'J`*xhh5\x)_<|P*dcvS- mc a"3.̮ :|17ݱ0 ^fHd+gh~lJud~y)|>;hb4ɘ+RUCCP<8'Εp0fSEȟ4[5*lׄRN]6AB"gTUŇ R/AiUxNhpJAS 1_џɫk/7Ӣbs 牻~iCW5x]Hʝ;I84SlxDN|aоY$yoF XZ;p3)`Gu)bۊe"*abvW_fѳP 43HuЖ;?#IMOe G5[E{fWNd84pltor|G]#׵A%%\Kc=ϸ (!>. \e<:>RPKԟ|.ӗ-!Cwɞ:[4 ; Q1Ww61?лQHlUθ# ;5]pbZܻetPA1yh FA-jGIt =</C +¹JluVCfEoפcWGbᩉ|D4Ӭ#wi~֤p+uSN~)n JBR('{i_RrR11mr R;s߯b:o@L7U'Hi;tn1SX|! S Ż?:lN2Ǩ.>{:4a_a9@QlRjN,ŖqH^EPt0eތ-5ǛoԳ~{hokOvlC;Uh܎ CLV0.碍&4pVPrA~6+!%Ncn ĦD5^Ϗ[ Ԛ,E+.1i#΅*&֦F j7S ,I,P1E/h!M0zL7HB摔Hk\1XqAHjm_=R I? DQ(GFt`30B00uX(v xwU0, L-hsEbD*\F LEtfUBH1ΓgkAgQZQk 0wGW݈ICst*O"ԳeOL4Vr)W ȅb=wmffzV<{b@&K8{ כL"bn.h?`nDu!h:-"jP[r3wa_CJwSɰzQ~*>WtuǍg{G'lA ֺYhN/ʩ 8n]Q:5)Z՗Lr%zy5$8~/(waE5Ĭ$ƻvˈjꋧx밣_B2)Qlb8 \ӓCP{w{_cL#d\"=5qKG pYϵja.r_bBnVBS!\5O<ֆ)RJud+ba_%r c-%Մw?_T\DIqwD\mI:h ;\Nw̒7!) s SqbQoo46va7Ʀ^PlOchPx}ѐL@1jA'&? -q֔v ¡0>JjkH $ڴw 0٢3 w+OޞB(vuPXX2u避Cj&ٯ.-sLֽ;7QѾ0 ~^ֿ)EEc2XJ4;C;ltj*o蔅tb-+K (zHV$^Í.%Fdta0{Wi~aR!Fv1wg`Ҿl9Uq J|l->UD{9{4/tm0CO՗F5d݃?yM)уٞm?CWiī1nDj]9e\COKP&L} !zգI.VV z>qč4ao4옝NoLcy ۀhȦ/GC; YO%V @r^Mط19B!J"1V75՚<*yJ';{кrl(wAv)+-a;D5g "HÏԗ&rep(i`_O4a%?ǘxG02ɨ8Ss]\:Xn^WYmB< $9X2~dt1 E{ۊMbCPd.M/1 \\nZa{…qo`+Ny8W g DMBClY( n`6i哥Vbv* ﹲ>C5{§QRu4Eߗ$ rwN~JO$1BL:wx;t4e>(ք6P!i l8%ʎ|";8rln2QI dQ AtҾR1 L 05I0|X+ p˃t@wXy.AɁ= ` LD1<'fj3ގHEH]]FԞԉ~{uSVL Њ n5f F~6̾{wo](*Q*pS1pOjtg Wy "bhzR@Y)rHPR8դ}2P/TŒ_^}q?bRU3Q8(%sO#[T͟_4`8 inҫ";=skRUd iX =y8+j_Z¿&`0fs'Gփh8r;g›K>aEZ8F٠i`V\N|O?`0iE;& '߄N׶'&_wKZ)E*/)/R<1pdIe OxM9> tBϷ\xUWǠ.yB/dkU&bsetw󨞨@~(fa3IWߘ5u%8n*2m,>9vCJjVȋdzK9$ &Ǒ4oʺK8'O&k>QQIw u[h\W)n:׽R<ߛ#%l}l /C"oumyNn7w9xbE2yyu\X9J ݁ʁxOxxp)6ks~_NE֩#j:`$OgzT,V= rM4y\)m㊷t3ܶ@m&Cew*uY/ Mv!f_8!-~fgO GaDU1-0LcD"x1D^\E(U:ُKldC=ɯŬJa8b,_}FvwC\/qA`Z'ID¾S?` =Ζ!dGj30W 4uIғsI`NYg|Gu=*s'Ψ64u0/"_O,qQ,27Zj$JD9%goʠn)u_j;w{/1A2Z"("}`TZsA Ja؉sgct شai$y^*1Rqb(&dz(^4Ƚ'Y Ž[[5T1x)$B KbKm}E<$psE 5 Ni]Ǵ em>Y;ႬCS謊ʹ)ISŖǖ,p Is)q XX9O˰KIG_y: D#x@!,?"B~ X'~2A,xܙ,jʛ[B_rz MV7,ޞJ' cs,thRw؁zw S)9zZ]̓9j3cFtB6TX6Hr!%~?͠{\2Lc\UmY2ka)+?/-;zh:&Ye;g1f7?5#n$Z| `E"DfߙL#X2Y3?~eĜ 5u9fn?:Z0Nsǡ#HTiCk}={4T6e hc&$oǶdçgzsAND'5s 3,[]䵚;BU;#w9P?C[! |v⢪yzCxI*ܖ ^> ]x}wg6%7KG8,p-x]^^ w6. 8BH?rT-zoZ|ų2#vÝ;[ԃV 'QB>25'9ؒK׿z%(PO "/vjAfX3@NX|B;9v=w*0At@DQMwLN 1ZʂߚhĻ5`TjÏ@in 58%3#L`8L& a`x+fN{, iת)񊀌ZK{텨͝>ی[a r')dM!jıhX=DyۢE|F1F* m> .(rTr`@cЕ=k9lHP*σ:o0\7͇Pu}22@&}FjJ I`$ @̥Ĉг)WHO O2 a}IK}]۳Lhg5K<ҙEZ"G^migw1DX~%C5Gjݘ:A_f<ذretb Dp3kx&v:O %;V:PщsҊw1L(c,/ۨ)N91-&Pwpgcɸ '&VZ-.uJnFv:z*솢޿ c*= /Z!:mur%lG+=*q]*QZj8ʹI>~z'J ?돻l}z1Oc.!QBQZc@+&2KۣǺiTMS֯c#^s[[.kg0qyxJe43Cl !_Wu] s =]XJc5by |2sJ0~D8|RwDUXѤWKT \`d1t*t?Q6=ܴѢw((ȅ-Π-*o]otZ y@~8沈|_ DxL-5JI&j9 z,,hն􏦾'id^DFF?bP-קɨFGֶH- L2Xܠ_q)6c*PQILyX#.=hrTJsXrLڈH;+L)cH;wZkUM.zFBb5+| 9l!j;A*# Q"I7 sc4\~b6B‘uW/Cx.Iz`k0t9+])#1d"VYe{NKVǥun6cZ!^^ ʲMh4rS!uVgU)=ԃ}LB|>(8zH@µ*N0L눭*"7'WWX! _Ҙ\,, =~5#IL%lmxV}6TpM+dT d;xշAH 9'* WiS k5n^@R? ئP D7ݗg;}T@9}S)LoǞa"kZu_sH%\fx{t;n_+e@itH~Z/I0n=67 +Y0EfWfic,dPj5~v6珒GT,= ׿n-\ZE$č }SyAUK;7c0G&dB?KNv])a)ڭmC('G-<Ӓ] r /pFD~ax 6=TqY"L|9&:]9{_{[]cW:BIdr2@S >ԒdC.v>bcs8My!@ki3M2"AC3juƲ<U1]7y]x vV&,̜sm@*?15ZD߷yfIa $qFF=OhV#GW?&PX~5Ri^ G;Rgxe|Wa&ؽfW!J4Fs+vRyjL"}ϓk h X,]ZO|5<(ѰC8F_)ccz;E5}jxJK7QY9Ż"␞to@ w$ FR;6= [Hhu$xψ`| xȦãR˴1BU BPS%1jYXD?ؘٻd_.Ӻa=mx^Gg눴UTjpS%IqT{/%fj+,N\ 沅V̕s+8KuDD čƩe=R'i|ٽdfUt(Y5h\}+c6_+G}o0-6(W缥m3z_OI>frG-%)?-}!9s6{ᖯ#J}X;&, XK$IOyОVITmkd_S&pf:>Ę3Zvi[Y=+,7R4)}deEOcḚ>;ŚHU vlvY!qӦ+SQ7B-ԓꞺ7%V9='u&Y_4kc"0hjo*Ν{W Y̸%u|8*em}u0tFiOd = w5"vXHSwU=ҠФɼ8 YL 1ݪz^ҷwH%*v".2rQ1fɸ]ȱCK%mY!+xOFMט`>j p߼gfo9a>;ݑ|!QN۟tv)c0Cz22} t ,\e+0z^WRv3I<p C;o?fy0RX 쇴Sj!u_I]u&!Ҭ'D!* 0G;չӫɄd'9u)* &k/v{թgQm S@2s0PIY@NC;#ݢl2bCOqBX-5JE+O</R-, .i[uo\G&HSэ2P%F^k`0ie!DAG.WQ&}( |=fp92+(Wɲ]Qo6w6KO@wfK!K(O-pNd5fԄ:j"r]R8<,lFl=r6d:ptQarf-;Cq4r̯q60{u_Azףܼv>Bl-,j+lbӰN5A}AYxW"CbI$_WZOj95 dwsUZQ,ĹH.~ rLszBU2ƙHo96IKN:*`~~Ai쌿x@v0JzGwU/{lQT `>GWFj qk/B^MAx`M5tC:Ldw lU8)iiY:O+v}/I-fCgJ3f :1RM2DRֺD#P }Ҝ?լv SC`[%e'ɸ=2fy9:A4P|eXI[~X5]s}g1BU=>ֹ5򵵖OqEؚ җfZo Զ{7iRAx3 ~gv8.0LBs!/2iaM]qƴ{]Vnx} ;Ny vo%zmo|/zsyۓ)J ._қ.,KԦZڦ KWKPя<-\LS<_{O4?8՗L?~f7t A@Kj,zʷ%CchZeztJ>ik!ր䑈8xW!`y(j.8 u\ MdEw:hmcmR]E/-7 O:xe8a XM^<<}O(ڰbBMRepli;b쌒qW\%1նA R\"&p6,{( yɉޏ`:~T.=`P~Sps*?wX?y{:npXդ;Iĺ}3d=kSkË!AS0(RThuu#u xM<\Bz0{ o7/tc R=z 꽇&[HZ\Frzni#~S.p|P8-'0#|[E@ H/qay.N<+ ӲVoBhBh 7 Z }q p}n0#ĦOv%)4-0R\0փ,'@ii$L1̍׻Ϩ-RGu#D"!,i/@W#=OPe~:}SVoG[D@4Z]I:9@Te 'B-cqxI6{8j7Gr3%&R:̟=`:"6~EZO#89$"P`Dd`.$%$͍]nʷ4Deueod\譍YX[}",U76v7166+BI-Tw]o;l5?k dQMebKRJmt2C؈elif>=>g .!+LeG)̘-7cH)޷bD[1Q^\ H }WU7'X,\<1 ~O(نgҼ2X\ ЯD+УQg=bd&tyw 5*FD)NXeA"Xu,S\r/=p=L)Q=E\^8AE*Y5(c%"&?цmL6?CI634Cmh]Dg^i~bg΅uZyX;*N񞽫l$6 d+x nAf}43% N."BlWgoѕ~1 5>cӍ\3]35Ba;r,16y%'+UfnɲgMy]b3VMM=$ ySrl[uWkPN4% @L,:&|-2BB }#vd} [>lyO0#x4>t)҇aMB`N^r{2yj&Ϳئṿ~]oQ~fϐf#M[`Os} 8vQ0&ng&UL 3Rl%.Y-2Ele=>N=+fŒr8˕@MIMj%JG]aDc-[.ˇҭs-&\;K0JDU'ʈm2WxM 8/̎.") " 6;pUՁ4%9_:(!4x(iB0BKBCfL"!)EWEC%k|5;7A3h$pV b wz[ّ@ŔҀ;KGdž?X<āx?y&ShɥE(> bϻUWŃk6XeTQGS{7LKN WF~Gj'zd +#@櫾sE;JI$%CIQ&NulkYhq^Sg68YUbމ՝%A!a=@-`>,ܠ"0ڪjkR|&+xjFC,v^͍t*.i렬$.5X!vFr'u,Vۈax0x։Ք| 5{TvŠ57tA'{@nX;6"N E)- b.أ??hXDIQbM)՚-529ytiS՚aJpҲm0u=_<"-R!^&d'`ӏꁫ 쟃+|Sz<Рxkn8`9niq1H ~2ȯkb%/:e&T v_ d%h`RF"RBhGcMk@L}? PA;ֱb*$ KjfJt{CUK>H Y"Nu}V6@U+zzT@QMrE]y$`Ąػ"\!.MFc݆Lm|{@|$Qs(^>#+y\FkyWD$Bx%k'[4ҹpИ!}JaI D W[Mebr=t#ze-h 'bݥA0"/fXYqa #D is@o&bMIA>VFP|C5E͹cߗ l3N_@rf϶- )S+YVacKXuiΌPǡ֓ԧWLՒnh6!vhTbAr&Y+*rLL>Ws``(4L-BmCw&i+ܲDZ[́Cx\P8}ի.o̮[T2 |g3#%G'<&>f BN*`"ɐ lH3f`k5;_%he%6CeBjr8z>oLwR .5m[Vvlʮ~ P >'T+$b k?4P.kgl[+x:G=4jrʊ*F6sT`LZW j*MۖP%XT,V+ Lm_ -L:YVT;P9@%WijY,|sX̄\UHm3Ye2! "a+Ih5fDmheFLǟx ,[n[DIܮ(? & pfl2 ыH HM">(4)嘱qjL6-) ԎK͎&WZ /zƲAzx(8y=~ۖ %W#G2V~8 I s˒46XMȶ +"rxQ%{:dsGjZ̹' K1~Rù ZƖgU0KdZx4xep.+#iE wT=~*\qb6Y`τopWϒ.UQ$$xڟ}L!s6DIbM?Ԑ-@  >Jc{}ydFyA;CQ]|1YrI(b;1'Hg(5*-4njxߺVR5jO)AU~I޿䢜 Z%_AZt {ě~s|ױ(tln'dԫ[\_Pou~f:hƘYЫ)>ǵHal+]oJ}$rbowh)I . #vmZW#`<\_h}ւXaTjm9Ơh l)ݯ6j$%JF_`3 ]BE-T F3NH'0V͢cmgi- vCV0W \VKl?R7SauD,ߖGG}E|뒪y*Av*>$Ҭ\뵛 6~`z!(x|\i#&j1 pٵ8(ڐ_FeK9nTOYi#L; n{N SN7>L&91ϢBA v}LvŀYK-;d'Au矢GQsr@n;ccTu̩P}[:u{G+>A 5Pt=nf eC'1բ͓'lՓM h:̔2%?z["e'ufiL t0{g 47&ҺWiMղxzܺ<7=CsP,(@ uo|M/6( p뽌hT=laxgi`̄F$};q:a9$oKo*`Z BBK荸qe$!Ŋ||$!hH*M2Hؚ!f"}^?Usќ3Z1rq.㏈$FfDć-^Ԙ>mz1/'k1. -Yڞ +D}LLxWQoͥB"K1c4<_Y>@ j -h%Euꔣ~_CCP2i_Wd@g'q;P=^hR<9l3 p[yH Bn*JK w%ufېL+XN-DqHtK2(yxoW\!wtqĜfAJͤ{*rT܎i^A+XPI_Ar+zeo,KlBup o;̘,(j3+ )P%v1(+R>%*[BZte  k@s‹]݂LJ73nNwg8jV(hY}H=}n~tjW&Z9>W9!V 'x qpv:CsI=!y'IF~X%<4XnC#˄'o9$%݋Vx C\V7dI65X%Q"8ݞƥaS MO;jH2[L^)C=!ŝ. 9ICsi5bnP4)83f~=:'WbYJ2 Hޡ J В〽Y޾j5pKa/Jsb6;&MﺪS۱W*N?)iuf1?%c]p;U Pn0oSCߡ Ըo2jStM,/ŚWJ&}0 R<+Q4|ӛָFp_ Ш"5Q-2V,$$\ITָ$ؚCϵF'\"MɁEd LMV}xralk[)ϙVmed)^-S\ِ&0L$G/PzIG vRГV3-z IYDf㫴 k lӤG/ݳqC:fS-H4P' JQB8c",1QO! | N{Ł hwgWYAO3vFa  pnۍ`!۷˫^\U+\C+oVEkͺ`XP>)ij똹3c*^"#닔>1 d d9E/Z#'^| +CPO5?EknT1VHڡapzȍ}VсKқg',abI$*^&U~.6.F#@H*pm9OV  J%3\ꔓ|hD@];PQtS,K:;4ȑ&3g#[y-r#w7W qCkB:~.< ¿K/I=G|p RC#>kݣgl%@40~S:![I7VAqC?QR|=I,;1tZꪚwqS =pk'o){G ZKp8-XF}d 4L>}# o<TD,&h#ZDJ18-2}'؜].ӻR>$oœe%DOt}UKhb}J:"% z4.J&k HUoKK(uVxA6S2ygCFg r=2~ǿ}/]ECXPNF3v:7cP Z p$ 9S=%ԔP98 ЩTO b<ѫѬ Eh'zʷ Ɣ&)CI{< Caysn_mn0g@@,a.L6 /u90ݶx28 ΓMC)n~%rj14gt_gEC0e8Wˣݒ$_z,s| (jE`&a!&Nε{NL\.TF.pͭ9`=붭_fuUq;%9<K+I}YwCkނ廼 ^§DIygal$9ؿ>?r&P%#[-ytͨs. g#z7"aUS,!Iʽfj[Z  @sQM /k,߈TviwP vZRD=W3DB#l).[p]b>j3OQfHs[ti~R95>: qZ=`| n4{F !dϘaR)Br4]\g,FRk~8wq}8CM ELƒXN)Xd>qk/aR ;JwPbO@nd*+Җ{7mB7&9*綉Ს$F{+<] 0Elқ*—J=RˁWdgBb=>wvva(fFYuVc(L CIό?K׋ίB_=t26ߙoҬ~MGi;VvGrrozLtQz^X7HY$r53/ssO ~.K}"_YYi~Tbq踕6kiDp75NAAmϷx"xW{!7ysOIrO^;}p~L6ĠD]QjRH aIX-uјϟv8y̸DfUnB*qεt¬+*vKP=/x%^7YI`0OٿUK9 [vַ=g\X>ƧWn0˾Y%0Z(WSA޾pJs$ z|bEӺ2ZN9j:"W12% 8= Gn#؄3 ~+r;r8@BZ/"JB=U_V+X奃b9lAEר0 * iXNS_eq4Pك@XT<Ɍ8"3$V@-߉IcƸ)D_ڬ n5 HO6t+: =<+9>냍*(ĦL/|dت7mIu,%VMk)EAhT@:EF؍̻:-%&ChFS[Ay5HZkx-Ez k}&8}ix؍p| ς&|qiQ񲪗f,IXHUge޾+a]g `LaSy̮{j0!ϐUNf>6[Lf/dnGevS5`Ը[XڣZy;Qu;3@l;3E%$J%F۟}2\#Wj],XY*;;c'Y{ <;v-[:%Ջl~iǀ *x{hVqk)r t4ok6󄝂ofߋ o& &v`ZK0hJ zSW~BnY'I?^XdWFX¢k>{ 3kmKGՖr"(¤X8}WF+@B&EP6;CB.UBn0YoB6 }Ǭc;MPn;z/Z~!f$sx휃3;ڭb,7Fwgê0ĸ.3cSq& N) cZ]kjg}q{UNזrDvZ,b=_+ј#='7+ 2K rKb9֓;g$ h}g7QV]RjS0Sտɕ8߷loᴮN7H_@U&qFw؊hxUs BBU9c9G tM;lb"&ģK3g2Uw$6ӞXn_t+_nMx\ah&&i-?4{3[uSE !U8Q.nHa-lxFK {r5mT,P 0cojLjbQA,Vu UY\CyZfl2k]R1 ;Tba-W'+~r {*#˸?iłMV1Y+ PߧI=\ 4IU/DQc.r.}\ڍ@0'tEbajut`Y'ԷpeJS#gym?]RώxL랫%ɡsaJ'cSI\5$k!p$cvo/!|jK|ak/\%GP X&z^rv@+|sv:h{b ҈,PwAqܲnhzz= SJ4Led R7mH9mj<a߲m/w5"ߑzH\b ;WqmӇCy*@YI/#l3 {姂1blhNJU Q I[ז=N.Dž?0Y9;I5&q=%XHh/zjU&sȝW!Y3/I]8[1( ?FCVJ^xϐV%'!HiO96(/Aa6):nw ;'sOPZTA@ػFΙ*+q>;H=nvi7@٠|*k^$:OI$V(y*P=oaoJ22o, *NGb {C1a:Y,ýͿ?6'%:Wߞ/F! .8,̘/G"fgg_ٰDB|(ݬ-_1Ť 'cU(޸;{C{kMa3ے7Cna dcG(,(34b-u^+J( 蹥TU#K+L0Gє{JWϙ3[&Y S81R!Ƀ:2ymް~@)U,,NuzӈˤڍqnT "G[_c6H/ XӦ|pݐoנ#B[? O ^uXо2!9"P  x.+ tw2cFUҩpƋ = ~qFRV\-1n=e O0\,O/D/42Iu;y@/!%_{PkP+ʆ׫Pru}7pk,#-3Fw.eg5g"P\N&;Ǯ 7[eQ*}EnT1e*:[ D 1}x-Y_{.ذɩ.`Ū#-F.ZّF;pUrwO(ƫgKC.|RJ(KOh3 oK hŅYe{.;d29I+g職 !Hщ͛m~,"恨NŒ&kB-Y-ߕ2s tTOy [k_]]cֈWHi#ڼ7 Fb%I}L Wh;JP 46G$I y5 FhIG)D iX2#cuR7,;/5εg2=dN1zlNZ@ݝ偅-Uo,t =FEbvFDiuBDV$|6  4 `}w"]vWw>Igx TJ"יrN޴RD>X鉗l3ʜA?趓a]Cu^6lj>BO% KHcf607lK$9{!*(ܡ7@MعH1b7ę.〬 mM=1 EjOgRIuݭcs`n8(19dC6l6{$ zڕ$j4Tt @BX.Z3%2;\qKz_.焩7o_05qBJV(w76͉Vb5cr<:픯iIl5/}Fz,8 !$jBti{9" ؓ }vĈv.1JL,{Gp61f,s63M =Sp-|S&Y]6c}8/QN|QNKyE.MT=?xc1Zݍ<+3."'ZC=|L~Ud@nð/?Pa!\ ZżhPT?N!l$!J@_|5Bcm{ˮD*$>-'OUR΋,ӪMw9H6fvv2>):ϥP++$/ֵ.y?3XRi'\ʳC.fAgCqE&iT8Wk9_?DPЯޗ [K: ,TO::w,5cMQSVy }2{lp4+ɧGPc Ζ>_LS|0揮VK+煮F7Vcsv܊;Ot}taj]t5?ݗ^ТBAF4KWtmR/ *C,x ~z gN>PzFTVdsLY͛ jH 'q=k_X|\~^vg[bxNYױ ïJ,k2!&-ŏCG$&&/jw4q1YJU͸g's ySgu3wIq7Kz-`ak>׳3 HML;ѫgsE}0 Y18C[ YX ~" OLY&5<> rl)''ğ0pr}GLG±ʻ4gta[_貁Q{/R71ܘJ՟&.%ATZ^,䰄ZLkt:u )0$5& Ot|#5ꨓb- ֒Q))T`Vov%1Ҳ5By K fϝ8m^*d葇,$3AyB$9% rKd jHJP//JL- /`ڤr:G7 :/M_OYER&vGjKSL#1"{;L'~U&{[ᰐ8q l9M0è!5%iIBGk|RxYYœ/U}t"M\LRa{^n#.ޘeT S wI%kYd?|ƫ^k7?~o ֺ^a9|yA9=q>Ʉ`^THA\xJ\5S1v\m7i-PH^wR1E_mSêʭۯ}(R(raQY> SU&-/se0ۯOߙBmbIg%@Zivށ(IɋQEl 6p O0q"rWOD wJɍ^ FTtTǶP2p'}B0S A؎/JB:F0EF$n0>T9QtAV?+RАo:e0%룕`I/kKB^ϼ*o5F:BH͇G5cѱ4ҁh!]^O.S'O6G1/7{HrHlњ w@;:Z1+Ҟoح?FByxv3ڲo^PTc"g[7BaaE_ ˭&&Y5;6c~Z:Duid Ps&rFcт2r$*"0^VUׁm$|KA)bHEn@l9Fmt eL{MB[X6ҮdkvL-pXIۍ1-lEzg;!De{}U1lRU)Tn_9]؉f3wʥyj!A7I@TP*xE?L|Gۍ99gB2<{GOFz9uIUL*?!rd{˪T4?/k"K}_MrR0w^TeRA:\>I] 1,BsV\3cR@kKpNb$+Kt2[mk)V'8Q>.5 @ɠGW9ͯZH}0X3ⶕ\z_d&2=WrM)e2JRh7qa6(O.hz4|Y%!r_$|YPlAK$~I5w؏ҩ^{uQYpsIC8;' :)iT"j0p ہB ]N@IVE!,$># Ɲ-U@\َ?ۛ.}*Q`W,秳۸YWǫR|NvSLdńN8ĸ;' {R ØR*`8'DtG]9gP+NTohy~}HIr& ,M'͡ I{/gĨQj=~bNC*KyN[T3&MmYz%>#zЊtG#I a"aU_DRB_]uS1޸N@ ;Z.\uL^Aϟ1R3c# ?y6;%@刚?^s_:W:_ ,ه͹|t9tqP|X3 ͟^ obnL}Oi*A M~D2FN8WLA#%߷qf5^-bJ;0*+W&}f^TY:8,`,st5``p_CD!g3BZЬ .wߓa8hx:,d}/GIWqgo~_ ({ft=%8c47VEa֩9$WP ~Bg#YW{9#Fa_7"y:WJ&ELt$֤keс,YIbZ~>Z0"4ݫHkS0~?{f?ѹ0Mx-] Hz| z xP6c5&W=Q\T k"Kĸ-38vDqYv"!fXR@ƀXntafn^JCЌ?fUjU2X|>,2.9oj*%l$MrXU*_z?/`{^fDѥI30kyF) 29E_(O'g8órl"V;*p[dmC@$SqTmtc$ P-R l/"Q-\pk 4[*uv t ]XƧmgyM,&*:Km|`aƅ Pi " ɜIZJ)ܞ`5%Ihuto/MzJ[:] GVh_x2p[:~TɱxPxw7yF0䵰IY͜Ŵ~?e6B9N :4,rUrB4F[ԙ<¤iNQwr]j<`[ M|KaI9k%sF'2+D;H.7\VY!&vF7$nK!:F/ 3P; Xhn>k'$ ,.ɪuTbNeKkR9J6ZP߬%+;HҖq68*)C.ղsgx[W,}HOjR] L?~gOT?L]pN6g(͛,w-_f,t$P.!$#3}Nּ0_7 BYr6W3 mm6fBE2|>bR-זdxAF3nWW@,e,ەEȨG&IJ4\(tU@</WA.ApJB4Y9TW6X;H#UkF-Nq8])*  ԻZLV)|VKJ4zhνdxBJvvdBcbvaeQУq3'6&}{jiqB1A'+NAWUJQ(E| @oȆ/.?Ɓ͗O '.v̿ΆxӸifo=nybzK_tBVkpZAsbjn__D7fB onQע+re[I?ņ׿\;9K nٮ:V_Tu=f͕rv)dC5yk9["!Q/ ԍ37:7`XKx8¬CGX)7qNJh1UؒGqWtW3>&d`H9' ~F ^)Q4[c^\fdhZR9Tt(2Z_^Oޑ(y5Aٮ.݌~ݯ΂]Y澍> f"<1Z/5;=eL1`6dqՍXsY JATb:],}aV=? ?KһQbDEǑbxZ( 8̫A_AO^a%Np3BDY6ӄKHk`|\#]`$,ˈN`Ɔ6i^ ⾕s(o}[ވX trOU;YgaotйGBCK)y@e9x*c6k!4 V!#VЌpH~5 ҽc,Dvm^ 64`Ѐy;mcv6U Ê¥Rkv//zۓ'9q:R|QG ̹m Ȑ~ ewO3gX]e7084KH)8(/vLv'3~2ceW 7 (Id[lz`aWwS}m^  S9q6Oi,iM@Ts -qVeH\-IM)$e r*4=Z}Ej2:KᯐkDkxB\D6jn$ҕ;1U? wǕӞt=\$%|9s*bE{ܗ~^x>$5iDS;-€نfķs׫Pk^ot""((k'5 a@D0zZQky_Iº*Id`AOL,6 B`_#j]W;˖u6ɞX> 0H_ ֦Ht{^v^2 }\ #5%N =uEM/],S}sF*g_L>q+,Qs\ 969YF ʼ2Ep~(ULDgL+<}_DLE/Mi˵E ǍQ46&*=ʭ֚@FG݀ZF0"As̺őNz4678{ WoSw"= b`i['6U|[S,{/0.J2xWČC͚k 5eq>:7rSUǨԊB%aS rjF`'z%?vPN8KC]*Nj\}Xk-&m(H)nQo>t TuD&M=u P˸+L‹޳!ܢŮEnJSu\эӚa{!Mhft;W [0gML*hőY_}HKEDmp!Uf )3>54"fv5EU[I4 ­ZPW-6e}lSLDXu_W2vDsT$?lD$?;r*mf}ELce̤Z4siQ/7EzO;ҙVIe>9* (/e'׋cX7}#WGU 5AV\2_Z=Y H˘.{((8,[PF9脎?A}5F!g)TDѼCCo4~⯎ acD#?—ˑS$Y>Mo7l[Fʲ,1~F-) ?lQ6+>)\ zeuIr<Є ԝ؈U5%tSОڀ@UZ&.RщȤ~e ~Ǐ Pan$ Z%>&E.$4yR11/yg],wȾ)Zކ;\aV?wS? o wA݇EFP;!ym,C3@ x4u̜^Le529ބVe3M Fy]lB%j4ǻR[8!óDZ? j/Lơ@ TzxØ$U8.׍_L?lglV9%s;rDYM| h GT?\<b?y9Mɛ* sMXu3eMy<;;'H (6(+B&~y~L6+`PĦD`Yn00jn^Lg"V;xSNcEPKTlDĞO ~T\闭PjcrC23)uov2k$fN"KZA[`G4G)OFz ~(W)_:I8M8E_HB^3ЪKTXPmC ݑ4Ɏdΰ\R:=h3Q_4ʫRU2"YNwn|6Ϸ=`&Q_6lX{NOБ?ǁ`딲|RV/Ed875 e$^?l$T]wQG [<сcP \ wj&@&\O =䩚 %`&.;sX+p8c=Lxעg<@s0,[Ҹzہx@Z\>{m%#݂y#EXLACF*:ؓ!:9tBg$EAB$gבfb S  tKN7Z6{lljl>p5W[!dZ~*Uϵ.QO)kBSV( !]>bc1܁L\jo};b0Dt՗&8P2u"}$]?n`|4@p/dxMc!i3PhZ1jA"ε/H @渗 @_1~ʙS?JD_OXDܕKyVYI? ת`ز c~<1>Eh8ؖR-嗃lF~ %q 2 W~0g#GLyQHO`;ó7+HCҗoȄkRPq')#׮TwBZԬ|.s[ N燤&h~Pw޼fG}_V& ըˮ$Γ?W˦] Th #KPvA=3;t1(tam'+|'' E n ŮE9!rH#BI9e?ǐ ţu~2`ΪRܡ ^z2B8):*:3D[8p÷6C|A+:6ޭקmE¥>r6b@K6Apɷ8H{WC4;x`sP~lM@v9 J~NXKB< II`R_l.pr/сո"AE[5R"],fžHc&jV=au1wM!p[ Mᙆk؊ˡ`v63=տI1K|}G@%T|oA{$bE >1>AwD̸ʌ<* F(m=\9ahפuCXMmň<]ug-j\S*i'Pqen!<$nih62 !B/d79ru=|mPLXS0,l7) ɈV5kiy)URа,U1D̗)1+ &Y* y.} 8 3, 3PpP*ex1hˎ\[VAj8mӹ}Mkܠf G!U5N٤6YgP mz˧Qo?k mmڕ?]oq996Ьx07E'*%0:8ɲ&{0;zw09.;@_;_{vD@[ݐ,|NU88)}Oy& qt\S'gH3[iLW|`e(G"YnŜBJ;8wKSE%tl;V=7.VC0LJDٱush~`q4{YE\ԭ6oQ,E}(%fb/>G.T?,!@C-}}e$mh8jj߹`YiNZ wWQg"K1۫ZѽzڑԿHf%eN<@;hvIBܨ+_;O$ X -^ñC*Kt"/ _9>fi>9jvO(8 >YOQ[AZBH1m+Nj EuF(9iq|W5Z@eXʝ:LWyW]Ab ?tD@4;eU Oq7󌨆O}M;arFj8.U.pcI{]0qqK^Q1d =Yo8r2 S5sU0Kt=FZyD$ڲyyTm 4U6^"Na,ixEG,J!W~ d񷫄:;ϧS֜qA^t)mΏR<[0O))yrt Tv25<̮_D.n:v=%{*]k^Uda")g >@챫1 f<¿O@a7]BcM' K| !36`{cP>0cy dry,̷6ja1Gs;kP@ioy;1K[P̠q)M8S*^M":S3H4P\JϟNt8G$&3ha'v(AӋWuEU8Du^0^)'3!^\DCR+ܽF5y"K4{:iFu2D8O>^m6"32Oz,8V˞>$ŁY c04ū@%OT#JE:x lR+!h߳a0CUȍ1Q:׻SVIvUBX"4*M(x'VݶP|9'ѫӿg \X8uYӫbBj;?/'4[C4yQmF_s= SV:mrD׋)Tn0.'գQX{ ~?km}9Cَ[4νxP#ؾWuo2N1nf* |Կ&N^R`풐W5An˳hG :7qI4DT{.}T4)"eМh۾V9fP`T 7wyHd ](Ŀf /֚Ho&r$oR#ŭ#?β'{[1e89%F϶0+ wE$wFXK+MUVlPHk"T}JM>16X,bJAk.F|$r1=~f*Ј@NI1/u$N[oԉ!zxDߙN",T2D;xOK VipUοjKz<0&dpڮv0fpM)X8S;Q)QVL#Oݫ(AE(ly Rmetod?J̾spvu2#*?Av-`>_ YWtۍ^4I)&]pY6"|d$!삾lR'_΄C<ކa,׸a&d/.^np}+n(R0.pZ1\Z/Jp37jF$N0$9`v&Huwپ24VN: k†nϪB~S[!HPAD9[3\˔,?Das?RWY &O8sk+czG^<3vuRPѢ,4R/=d4?t{\um>4-o׬ }֥!@L-տ4wº&&3%/0\B)i7 {2%Z-GT[ )&ǩODt&HMdFzTYrձLNxf @[[j쑯p8"=)Jyس9Y Cx/ŇwZu=Bǰ}H'Pt%N O#wն+[NUim]jp':( %{pkR'i ;y1(c:&,m~ S/.[l@K1[zg56vx$ mceXB^.TcKn6ƅ?l|ȫCO2!wtP*F'X-Y7Sl ksa+DNF-'m}Xr1B ~*ZOsMp3 dBߕjUk<|=e51r`9D1w/%sx[͒t#m,y ѫ"C+)Ng=$9K59zY8qrBޠߢԨ[Ubr)*.&QҞU9kKf=>HQ/~랃Y Tk7Q\@ < Hzu&TtCy\&|6a.\*aph(nKʆT$G1dRh5)ԏO&{Rz@u#>SV$ch`E##.IlR/+lԈͩD/Rfzfנ;E Rf P7=KNuQAv gruPq0Lvh HoIx͔mEuʹKv Ֆa[71? Pޢa5~L2 𤊁O-鮄Cy̷@4b[kw-&=Kf fw.^G 7y Ǟ/"W{GfzX a9lZˎ0zG ^D!X`@IiW .B2q`p-o !!O1re,ViƗ"+SS;hx]6FJ@nQ,Py"֥/wЯɱL𿙢nְڜa)PMj2>Fn$wtY < l]TaKFuuם%WU`2aq2@>T(v{4o<=JogB+XF}Gg|^A,>OW[TJ&jM yEOrmUwhW $^C-?GK.^/8Nbæ{e)D %'hRC6۷;lϩ!&m2URX3(EU"4]\P68#݀D䁐<$Ff7$z(DK!#w V6WgF?8bVQG!X4zlnPɰ(Lnc&L-Y &/M &ߕԟVMIP-x_~73e2H9eRF]Kl^c x!;M>F#a0!pb8 fAYSCk*4N:&*yMK޿uo50* 0?LσS~&<8]l? ,eXN/kg<_vݪ2tbŁL Cz:$dcĻ nI 4mV[ sS[-bE Qu&kh@_7?']'ugF.lXCtQP=wv]تO+[ↆP/ 0x˾]{ %m[ۯ޹xf 3qlMK{y*>dULmH=&f@dhf;$[QpfA2)8ݳ'~mR륟 V|[8svC= lJF? LDWPCVg r:uI)G꣉V|!zĊHcN#V#&@}qk KeQPV4o2fwd''L&|`"#+z)*32Fd-s*ByzQuo8qS?ˁMqzE jQ@hA'6AҽGA韒CVo웒 RBA38ni c !AMfo@FgȾIladb\'({XUg:z l >۵MH@e&H}ZqN ^P%EцzΐT ײm2v_ނ-0~-^)ߠƒk >y AAcVίAqAZ$VHC­@Rc1{Y:m.m[ Q,L:IYG9#՛ 녤:y4GkͬpYGŹ-2fA(ǞS.84!gI0,p^³M>c}< I"ֶNv[kN+ڙlJ7Sz 􋐋|_r,]`?j KN0N%eY[KGG#^8k/4ʹ@ \}4 fx>MHl 擽K$+ۘjåʘ v(*&VO,2bD*7w "dm:*Ú0QDw*kYH/t^tikW 'm+С;Lݡh5F,*qri$GzS eLKp骢\?V$r;"ײs6OTB̹|wsgE>뼀q+nUbA0⮳@r J!6?UTǩ;E닗%:&Kk6tۗύť*L˻ۉ2?UÖ́F?ߐ4ˋzBȄwOABW͈m𾉙To CȌA0XC+m/9>0xf.'h*s9ьK(gvFO,7&{h}L j#A}S?MCD*n #{f]2jڧ}^2\5uΞ?OwB!Lcw4%9D:o_(nŖ#zҧ/mWdX-niNb2\v͏_c1 KkT:yݷq8%dىuI_՚ R=55KhǸG a w45TcBm!!uh̨$VE" YCCӬS/'֬SZWAJ}_: KyOC "Kԛi1ks7:2]铙t^S|w;/>e{y {23?oD(.%6P YIAЉ:64VN%km[w!FSKG^;.rsДHN$jFL ]\#sBzϣ^S[؈s (< ֘A2caGZLw h[ٸ6ed5* N#=)fah#JR3 Zaqgvʍ[%Lbw}Xخv2^SUhWoLL1 _ %o]OEU58.qa~S,Fν8(u*Dn6yMAژ/UȎtb8!9nI~Sǂ*E8hX%!]d LU UQ˃L7uS8X@`Jk7MT%G˅'iI&4R-/^"k=hCY 4?!H)0pExj7prg\- Q?;)k\M(DyL:7;= Gl64m:tt2N9j?@G覯.{WFuŅ:^i#t/.^A-FUBzۺux+@$ i]V8Dẁ2U~ұ,YyvVKz̅ 8T ¡=:]*9,S *3@` F0܀ZE@ͪ=+6ɭd9UP5$D(2O=(!z2G-ʱf $%D65x%‹G? cI Yl_D)2@';81 7߯V<;^f!0ܮ\.`:t)[*[kisf![&5z3fy7Zx|~']UG*6;Nz45}_>];:]],lAT:^Rs*ioP" dWɆF %G0?z#)dJĈ= z sŸjyU hcapf3sa< j0 nCq++Jv!;; Hg'nةBS@Ia8 l3,:RaM&D~`sK'k)ՎT-5,bf^O02mVi 7Zw} ;,FiV(,Y4HX=22r+$D"x#,yϠW1AE!1~Ztǵ1zbJHV^Q2yHº qv@LY}.8~ ; >D+TaUR45BGyJQѪ&O_cP2bd4ˑ iV|*?GfMĎn&J+ /l:~\x,BRA!gC윅Nޛx9)7wXэ&}x `j6Q;*&ٛh}b3 T%i^G<1GV:}(dIQ21_dptt9ssTTOJ7(18޻-"򃔓 (:(#PCܦS/+ iid*|ӘCFY"#,z ,VoE OW\n|  @+MRAu>O ɯJD Wz}+hr|To i~ Xֶ`ZU= CgNniZƱ ZY7p 9PZ4%ț&gʃjKe.!v[0`=D'C[ 8\>@:gt+y\|SEM!JF|iH`PiX3̛`Z7wW騑Pd0%&g!ӿsMPǐP $Bv2]mPΔqBL."]:emFDeOu2M J.oO3gs:MrMwa|?ݝGSKLF&]zcup_4iaGg qB*;o =W-$,8,ZwMA|LeIy<^eC\ݰ/TVቛ7I.ʲʟқFO_EAmjKVޭomnΎ{QeKQ({5ic^r pUbP3mav8[v)=F"rwT4R!0^|?qX'buީi+nkW_: mp_6wu «=|YRH: P@P^bUˍ+'1)/Yg2;Ĭ5$Ċ $Y @ TS핈F*pTN}WKmW 'CJ6q_) +(9nsH5ol+17Xp A;k.EJӊ 8{D4PLRfateQzK3k Je;@GņW*ً{F>䃾dK/C̝>^3zD wL:[4 <::z UMzcPS)[R7Cc$)~ܤrU,*De0u9&QS2V#hBfX`gGw5Pa(Oo'| #Y2򢴄ГqzBYMGxx^qQݾzzD,QR\ FNB/Y3ȜxR" X]9rkbvBޯdygՊ"W (3GC>=%!jt:J)kqȶ0.5V;bG7rƓL{U?Gpkw^ aWq߅.b-;rzrGbPkޤ1[6B4>fYr~2zT1e"ႊ4,PT'(px~vtYซݺnA4fH]ۓb<ۡbХP0Pxa@>eL Zr0/3RSܷ,R<:ja:@ՊKGs"Db{'FyEe|(mT "Fm)*>KC3KR~lnT4l?I։W.t)Wm 5sM&E=}cY˥:j3'n}?@!挗SN/*>60\]/`/@wgYl*G>q!+>m/-e{HUum_66hqҥ֧Ǻ=g1U7ORK^[eE6hn?ACIڛ\)6=01⨐ܮ 3:MB ؗM7v=My?rf y݅>jg 퓮'К0(qkoέ_9^uB>4Ufiպ<"8ϑdi|x>_f27Z <{󼞻?w+8SU7IJ(Əwټٺ/$ T&0ʌ1X`*+_ w,[P2C65*E@`YDɈ`:U9~d\eCsՌJJmO\׿}z /:x%G:P4ٴ,']ěY^A5̣6JS"*3gk'`6' +.bu؝ߑm@cPxY|WLogUq~CEB_R`\k(y]; ן}1Y"<@iRw -P' #%hyH5oLwn඲?޻,$e]˕MЯ}$k8z>¹T5-yЊd'nҾ7 ORzJAŨ#9M&]S +]>fJwCO8.i&\g<`N?yg:P%:Hc2u`0r^ 4 $x3D0> 3ÇCt k7Ӆxk+iQj[ 2%J!gU`yt.I ~{Uq vιߎjr{tdOH[ VVbK XͣѳmE3hZ4 ,-㟲.8X 0\,OcTrU_bDyyz34rۼ\ a7|uujk3j=k,\#u-e oYMC*q_""FduU/QTsu qQ*V/{+1 }x,]O P [{r1%)׮ L{?fڻYh(_zN2iQFj.IZe!E bvv\]C?%))utp|}{Ea orGi B^'foŭ)fij`'[n>2oЫV(Dnr bWFԕvn~[CBGUޣ$yW.isXgW~w`mN˔z)!emQA7Wj@/Iq:0'*!6DFMOSbJnFS st06kF_[RcE$4“Ɣߎכf-}f"˔wiE=QyQ.53Z=qehO{!ySbE:c"}8m!E^8&J^/uW1$).F9K|ƾjv1hQzKW: %IPH#\E+yR9'Q:1S,*ba9=j_x1-#ÔvR1혱;Bm.Jedww U0yѪ&z3(E?{Ԣ&MVyH-]RopRVA韓O/X7LD~էpj`&XVȊm|{!Еo?7`D2zldg_ ^rLJRTr=Avdt-IN?Y^2}q($"]V:(Ȝ|fT]WoW>p=\Հt;mh4ܔxy62eUe.5}qQKe,=hi8ʤkQܔKN`b9R?d([Li(2ɷ3)V:lڪ qB,G2,ꜚ߸Dl ^~ N}{W =&rʺ(y+^ &hsf sGk6En˞#MfH,x.J2)B $ZM)wh8RgŚӼ|p3"YrA<7y@#fJC'& )v$7Of$U NEO#^,Y8|й-{ڱGa'+GQv{E WjȠ!KM\2yna-ق̅crz`bUs50{[sWV)l@WW)eVg!#T*8~Љll̀>i+3kZT6WZ>l.Z |ll,9\O7QF1P[a!'XN\٭a^kNhFY.b>kO70uB`6CIHkuH*yBjtd Evߞ]$eCda9êBF!"SCZxn_lK}4'b?(.#m^qH1qܪVBFYim ڰD[Z&dz3+Q‹'G`G 4flhS%E-U+B4lJWNM):C"ƚ8-8&ߋŰ@ԫq6 D쟅U6B5кx6Ff#r *6,)m%D{i[brC=^,>۝ڎЁԑE+l䕤*ô_M\&'f8U0Ҹ]Y%tuZ"4=|aDokVWÐKq:L#ZbqA.·&9bgwڐqߙd3Y^PSׄ/\r)nKy4fJ66N諎w~\:SlK@!)ĭ#~>DbӴxcA(!N ] ֛h *fc ;姧@7x؝hj\G5Ny~QqOlG`aڿ\,&i%'Mk\1i⇋ J̭ h~)g=sHj qJ$aZ'nKi2 1L@1ց!"u}yԃ*-T @jyo:{\5 ||Wc@J4~CWR'B?GoO_tx&}¯zӂfLoE2ʢk4\}P]YqǦ:85YrrHf钼$ɔEio䂷w/uȡs4wn9FLGWmD203NS)zHr6,)3q x͖2|/9wV 3ԁ0;ST"be<[@SW }Y.{Bpxw9R68NÌXr.]Gr4j8D[)=)ݦf'{yPx*4[XWF^oVKh&2W|C +UhS*\^UېtMSOqW qo$"j G}>%(gzu,S@xwu P)j!v 1Zz}Y -6 J\ LMD5f77/O't{ֻu.k$Q)Ig'ߎ{'R2rFHԙC/Qy(f){ Qq| &K~ eVqИi;u1Bv#w.?ULھo AP-,tw;J1^4A[ ?\ޞT=K ~Ps]S/AЛdW3Vƶ+A$J(|˪Ndؕ&uhrAHG6T[ ƮNOX[xD֟'*$?\bݩ 56nk @G{t2:'dUxMmzrXIһ)xx+69P<YcjuA!ט¡$G=ط5ԈjLwz XI+`B)bZO"z( @t0 4ۧ l`uLK3Ysi-_L_]ʂUB]*t+qyAC0c('sd*Z_hޚ8 { J?WLSٺL+w(zrB\C7C}kTzNDx ۚ㛺,5/(>%9.߬P6 =zhjΚ3H;" XU3ߗȩ*]X i=pp -MHU7F~)ح-&d$ {I?]7>OF$j2L 6Tala 5tYHʅY iBzxږD~sqq]#mfVm%@=\uRT  !J4bL7afs'Osn߂Iz>^(^G={(dX1?ٵʞ/%5*VcuxYtr2Z%6EN0R1͹RΓm]֪OAdT[' CinM e{#'~@nB-NTsi%5 ;#k-+X]Vb:k>XWCK7 4OqWW (n_sR0}IOg(n,l6,IXVNrG84`TĬQ&T_3GnF\ҐȨ {}5$ xi/\G KuF삀'(h\/4% .LoESԞ76\r% Ʃ-~N!xr!3>M-@/Z !}=vԮ*! +β^ǛZ\?qck| 7O} |tk[rAr{'KboFt>oSHE&*nkxdc_tMz*WS97MI刮%?s5֣@Svol S8@DGjdwd{8Z[ea]w;)fe-ɹ(:|u)O5S( uzCЉMgJĉ V=%J*,E~8fU)?ɡoIi40+CZWC\@WSo~$/HK8Ќn Y/C*B&S-] _t%R`tbࣿ R~FpQaڬ,^Z⍀'!%Wl!c-K{xmftҢ˖cݪzǬoh܌7U#G'Oh wئUttqJy*P:b7X0Y$wNZL*nlB}`-S'l&6>s嘛<#CK,7Bpl=le?PE2P=:0'JA'q'90QS&-ym4V# $Ӽ̺A 5Qb#WPBƦQǗm"SMrN6>38,#Ӹ(lk_wsIO<=zpce#qT$~ڎ>bM"|2]__/2VL dK oh[aCBƾm,]CXV\=FcwK .Ml= >̜G˞G$_< !P(!Ņ[x gmvXsV5QV?l+'W3X]_(hX\׏_ &Rv̆ A3O!᷊T`p}LQٳ(;8 A 0:QE^"&e,sSF'peԺW4ubCF 2\}k3w;PGܣDҍ>5js} ݿ?5M$sq< l7 PP f<6z.Q|.;P6?1]97\ V@Fltu/ ?_.}.~6P3xXMi1飠.30r jab#tBL= F<wwQ7bMD%[30j!QS"<%!tb/"0Iijx `V$Kzdn0q}¢7 nZP^lHT4B~I {1 /cc8f5(՗.8$ITEnhwF@cT$'*_{DpGz(xri؁o :gpt4>>>ë°U`vjlb!)4 t횇e>x)?XN7<2Mj*ϩ& ~Y&%;r;^6NJEAtӋ,R Wv뎌 ah hyVFGGȽJ4EN2j{.*.Վ)6J)M;t΢Ji;Nx$R҈rJ I5K[Ut_:O40D ?] Rj;t5[bӎJy>4'V/$ʹK\uäDi+s =t),[vFGDhuduUuhafyzHTUP6ەMMʝ<7W_00~=v+@Tjҧ_5 nDDێ`KN%ͤ%UP"4&vXspMqZlV\É䨥\?H87VMqP) P ZԺy5'4F8,>C2`R+ʖ*c%*[кunU",鑩;.6Vg/au,/2K$g.]UG 9BAhyZpۉyB0iSÍv^ 9P!~;bt9NpMcA͖/+tZQ1GVɹ{lوx/POz-Z)`Wl$]o E"SZ;d6l_٨ւpFz,̝\k. i嚽4O'fNlJ-^ȶ!&תa>a{RoZj2x{FntAk[XmEHp{6*BWƹӅ6& @jMu,L9ucF('Iɔ_ N3k(1D>j@u߸iC`vTK69|!ϺtWb{Y>E!U[ZnY17UA”.@. .*Vd@cs,(>ߖ(D-h WG`|*K/C[:sns_U 7Yh?{4kjcޟI"Ž cGV0cX*ZbPɇ0 5Ef[<~XLU.t捽A@@" U(J_ű ƨ+Ҳnz%$ЅrͦZr yd;.!/$RUBpD$GRK^X'ha\^ZJd"Fb#׬$_Acd,LI+>bu7b }?[04_ lYpu7S7mVFB>_& R71fS\s 3@! Q?.ZeP ך@][#+`u<CM@j&/cOzT.G ۭ&f/cH:dLQطNR^e/FBG%P0l} zpIeo|/׾ϸ5b++IcJ O(),ߺ:9;VFeAv iԄP VE(iߊEҴV:z\'6lhZ4Ԋi/-iUS)'Bt7};'j0camL^>:Fu=XV߹$L)~y7=3Aݣ1l DM ?lx,˱Z/ pЬ8leꂈ B޴ -05^~Ynv} ÞQ_8T9H?¹$x%IW0bmJqhOϽ7IGׅ7Ε+i[>,֢߫q`ET6I9ʾ;w)L7?@Xh] Q v>νk avyP&(ƩPK 9!9)ώJ^j4劔M'e8˜WO"fRN>}$C[S`jG2fqoȡE&KO(eȺbvWc)۝yjsh#5\*`>MP tH'2RMHn+|> F?VM + rĐz !uf@- 欵sZs%"-Ttz;"@Po! K Q o$i3kUu<.Inj V)3Hz跏?N#Y0qVaAIpwRu9(Pe*A3|饺 wߘ6Sg -.qtXXgK])\A4iϦͻM?k+_V\Q4_jBcpbkZvu3'C{4bhUw/>2."QfRFEJߥp(LEHDwnxeq\6Y,; zˆDYsjkJ,=WHI~)ڨG]1 u֌{HKxNVÅ\SM2̜VZVl, &ˮ/I_z( |l$wWoBs1jؠ fp2,pNC]UEKTgd@U_OHdNlqeɅFz~V %%:Z|KdId!yXD2ڥ4yD5Wi dhg'LR^'r9Hjwq n?v7^8=d٠ V*c*\4W>xAĄ2HL"HweF\"Y 6.a%4)ѵőt֗&%(a`pٶUmK0~tFv!ABD7RFք^"Z_!P?%4bG|҅W5̎ u%VfͶuی ICb84)xW,& y/Mbɇ?DUv|%#AIUWy`f'A;+s }6 L->i} #F-g1 LW%VfE5x)0DkՁW9-F_x:.!bU?>t̏#!d8n4XJ0b ) Ӊ߸WHǡLƩ|=X^':ΛJ$q9&(udep#p"X|O~#KKRHԻ8VkjF,ܙ6vyIs 4Uk%~\_;/Eq)j*s,pF$[jrUjUg|A D1sFG6HJD7)fWZP>,ڨu _a;s[ĝoij>r4tǕ(ѭYlq4pR\a!uK×&R*VR^ODqD OۼP|:c}TM[Wm暖GP%p^fPwp5'xؾ3Mb y#9%ncVm 9[4W=M6cRo; MW[ 0weBeau0EH N0hs,KzS*ho?I\kJ;@dطbh.]^O[=KŎtfp2'!xEFGkl$))#֗ Ģ_Q'SY;Y 7 ]*vuU*'T|K`װȯ-w!k<s05n`Mof-|y{kШXh<9Q-q5բxpoE`E-CǼ'e18OemPʛ"W.TıuX>d; @}? IWlmß[,iL ~y17P>ҹ6U! or, L5ROp36qۘ{w̒#fh8fbU1q*( ѧS -zW=>4L!=uCb)sWe/LJJp m\V? jNn'Smzc,.flgݎ4eΤ;/MʡqUR퉉0  wDM31ȏElfa0g (j0va|Lo@9 +=sdV䆨:|AtȒWg C/n{@2vAX~Q]CL-L !b2oK5s@ן)T#4XDJ6o ܐ3b]'LxsɈi(T5"m)˂j+xkA5}Hº]p4O%uA4TA6iѧ.[)1pwcʹɰGsV,j!ܻ1JT^@Mi=ze.lV- 5CHZq (4L?WVpj:bWg.፟"NX*,29n=8:{"7 XVBKuJXׁkJO:u437VQ- FoRekךDԫܾѦgd!*3ݢe/fckV¬󝨧9[,#"*;JO ]z-e9f'ViB8Td!Lƻr2i?ݿ*~ {̛wIDRq5Q xGzT>j _3a2bVK6)x\ׂ TM+1 ?LOQh&µ,}N8Xn K NMk7LI\O:/n >r0/:g3洄{?IBt>z)OxrT,-r,pJ`_+ 6@T &I$?-~7%0 rBNKW %7l}ù(D5sZ0,:LM^f"da~鞘q^@GF{Ђ֮ 7B8'j @0emr"r!#5& m4߉QؼdI$3"0n˪!! &u:~ 2Y`P4 ^ҹb~I!٦T|2Y.4p iriw@Yم{"&ydpRվ5صׯyvvU@3n$Q0.́")(FC)-{O$?t}O=a雺CHJZOwJ`*D^l {(JҬyCL+4]U95[! C=`B!2ň&ᢢWQ$I$'YeE;J`3s p E3YBB77jd*p q9SRD L(T Ac<.@z,yZ޼)*_RQ+ŏߗYd2_]Y]cT^ns^Ą)엁[=z699"2tW>K\pNm`jS'ԈT[ ޑmMra@WkDDrC x_4W`ih_**ZvKNKyoKB*X!}B?8pw |H TdVRÚ/jhG2[~WBŇ"L"cvt`.~uF܍lvsZ \_MB8E<`?Cf3r ˝6#;_ pg 1J.NJirCaAR8g=5X\]{"lZBi*6dV/sjat&\CFSbij@^5lEH!g~pUa{;JP|vaT~[g̬8Y8 E,8UHL(D{ki:̰~Vkh!h+Zm=NZhJU+܍H g`]ѫa 6^Gv" [-ƽ}hbA[~C]yF^ve>:GyvSk!%0x-,ۮAiRS' lI-]w=$3)c1x󒭣7obӽUA""/OpDTM^'| ihB&`!Pfyχ{* ߽9o!CgɐSjY-Yn'dtG2Jaͻ3+ÊR:Qafm2:@D3,AIg| .iPÌxsqfF^`<4k)%@O}Wcox+ ` w0tוۉyO tZ< MNC%wN\Ȩn݋}c4!:fH/EgF lN_{UVt Nݦx[jD"߮Q/V-~ ;"AIՕD ƝK/FKgF!$CB5;l>l2D5|1 MܲnMv^X|y>fD2zvq& =2sFHd\MŜJUBjp:FZb@$%% B0lC\ Y iWQ٩I7% "Blq Z}Z{dcQ"r3ձ܁Mx Ym9)ښWV}ڰ@-,!lclW S}PI1[%\”y(6 q*H<cCuM/b;5K",Lq&1vA+zi}>!] `֙SgO.Zq^u[[TojEܱAp@괈6~ث]m{>:˅][O֍2s4[[(c>5Ws++ dx9=; [ζk!F7qܖU+|( aWXYg)Asv!j.y8NTP<'6=)tOUhQVa[ 1.9$ԧb# J/6:z|~r'zzqzׁP[ҙ.@T07tGK2CHQIt*`KRs#[ gaQC{s^ ͛JȘJgWrɀ8vq vJ!?؀;dWӄ!6fJ j᪜MuVd(`6mnfOk;`Qa~C9P-)mOKx܋EzC̷gWH."{+,^#rz ORpSςP:I?0xͻly mT7`jwdgrB ;-#dxC~>0;UmalF0z,rO| !]J3Dld(Xwe,bzggυZȩ#л6,tlvIG,VHOt.BjG8ci[?Qx;]M? 15CVRjݩn# =l6UEPN{Dh *UR3{;'&=m Ǩ|f:RӘlNV* +fZ/$>2 #ViT5TXQ lj׫P{H>M16Ea[qvEBuqX, )$T[Gd):6btIɲ=:ޅ@d?t.]SO=t4l͠ޱYnK ɠXH> BR]tG=9$@w&N‹7f<LfbcG ~>]y8$FU gys7ח@l](³2F\hZr}{*(0=KGklxuN4EQI&lN 2`U>/Ѱl (#-f x<"I#>f +^_Ӡ\N:'!zaz܄/ {lQ،Bl6v{kfH^^ZlϑO _n< h|Q)[ͩI SDnp g"}'fb^>tv\v[(|=Rd04'P X8MbݒS_q=Op !+z8 }{VqWSPƁPu`2M LȚFF :"lKgMߋH?-qn`VH:M;p8h%ܶ,mzl@7]%%?p䜝>;Y:CfVvo=FA8[7n\f&"{ШG:qP->j$3IwD<Πo:UBST\ˍIߨ?P}ƆPg^MHܴ&nhN1Ư ׾yɎN[\G7ٲ89ݦi8]#;5q2 j;u` 1"Be@ixy,4FcnA8 -G2X|ȦQtU GHĠ~#ԝK<Iw?^a낪#nZ a_nx9LoFѧ@z֍g1\諽RZ|F~ʅ"J4YBI}:f;F"01;*b6[z 3$^|W܍Ku Z9i7aۭbBT~!Iwnҋ+\.%݀)r1͊A:if#S{ A@yn| 0J Q .NPU_&m$2#s6w/%5m4nK0!+P@IeY+&(#7L;+9B]0]>͆9}ΏMK Hh~pe#}[3"@z$.Xfؤ-6Γ<'GRf>.2U #Snӟe8 b}po%C^Mw`VM̷sueow( d4E`H89AT8'fSU%V><*Ǧb:k/tyLLRJ_7q=X"a ݽD sslkXAv>5JCȵ)C\eR+@_Y=B*D|*\إ,";lnqu\8YQ Wύ8nm>)$:5 I-F}xRBgo`S5nEARM2A^hfzb(}'b+4 *6R"l@'N!M>Vl8(@E7lNvQU47ɏnl\`%k,Id;fU?%C: ]W/ dC]N+)~<;YCU3V^<=8ߦ -6-J} \T>@!k I{v@ٍt.8[Nnkee[Dh]&puc \K80@o,S+1ٵ瓟Kx|{׭CA D# $ϟ9dk.뒿n,̶rm8]XÖԘ/^i3I\#}GD`XBZI){cj^j ͥ龫{NRȠ:tuld@ktk+m$Ij~r5Kz|WG{"s.eh|a*:13f?ݕ4|dheGV/uP%UsFS`[vPvL(WJ ֧<rHӠrBs;,n@a)!uV-sXn;) z\fKZy٤*6~ͤg+A@Ǿ@ lPL i/o3jxA,fTt8|,]H/NjoƵl! DRFԐ﹧_V:a@>D֘ q2LТd9㜤6sR0Ŀ utP/?Bf2"ﻥrkQ𪿩ڽ ɟ?S񠬑 gjdl  k>*i z `) UAlM3A|hqVY7{!z 0aos szI W,QnFyN~UnQlDc25H}L˥u`>3S cE|G5qSkFn`S?*b$7_mGN]KyFA=k(095쭳xv9(Hl\cRgw͆XnG %]Z׏^lb߄?s>F|ky}_kdK0dFZDsxBs NX<8N}xmѷ22vD;&aN>Hkq\󆬱Y$=e6L z-X4nPNzFkɴ,!>+900҂ ,u[;>z(L)X x:# D¶MHUОcW0, UyaCnhjd~$ϊ@9!\ x)] A_AeF13^?4U3}seg2<L#BĦX=J-i{[}55'bt߆5-Rmv7F͋(3-BnO&=ۤn:zj1E4EL'c&GiH}OX3fī>{2gC* \D Rpҍ3:y܆;'9eRj3s<_d J =sƊYWI5[IYm$wRzBڃcQST43\YstePy3]J$79 }x3Q 9BxPaH9 2o}076uh(>l)UfҌԷAvC};ri c_)Rl72LOٻޥ,u5=ӼOwFk ^ȹ>Oz$@~?FR^9oX\jgFS4rPhc@GR. uLF>{F8<';Z3)^f3ϨBLT)df&bVmyytfyocROrr 8xV̸{_?+&k]Yϥy@-놯>%y6f#="Ppວ=eH"{p=iX_k#bO6\BFr7Ng%f=(P٥Ozy;/ p5>xwT(:݆/t\]֩}|ʜ;^+wMg2w|ez\ Nbj٠겘XBh/ep[]X>a' Q$+֬ل?M NFx# 8oLt 8c;;p0-7F6(rk+Y@rvݓA!9~mʼD_f MjmgH"z=jE^ob(spˀu,3w+e1eSxH6Of3!Wq ["5DRa?bcFAx /iXb8PޣGAU n!=go`PL쐅xJ>iQJ|ҎXfYԋĂC-2  o~^cHI[(gB*s@tiL撄+yMY%w~b1!(L Z,Y} `ɧyĂf=a4,8“qO/p@{j .sn- /Q7fa84[!Q{XhaB˄ߧvo 8 1[8/)ؖ\ިLj`|XVm.g rR H UVAr((p 2N1w'E!U֛!N.y O`c]9.hu3FԚ֯cp\M/ +5JGft-/r Y@%2uӓPhjM'߶Ii~߾?Cxb ^ՊN !9]J4TS\1c=l{LzYxB䆵6F_Ԏ"44knjzNRb:M^|ޙ:nvZHBG(q=cZ8aH{/w_mU%ɄdEQ@y}[7-Yͤҗm#ܿkd Fy޹djrQ2ܶUiS^Gk+k,QY/qW,vMHd߇{wqdvfh45u®ĠM-z+Ke}I &NV5Lj"C7yUBEnʬ a) .d9"'Z焤{XҘaRbC bB[6y]PАc_&֩P)t[ Q΋\"pӄG0@oh!MyC%?&Y΂ʦs`_[^˜4(+G:/׉QP8 xdv4(-I<ЍXK fE"Le2˷sSOoz7z|vH—ȭKS ,,mdpebq ܴs+7lu2T$4Ǜ >CyL?D/^8ay&d SUYY|-Vos+ԧ҈Vm<׺`#q`/wQcTLxcl5q!2#97Fnʡ4}pPQRU\>UdwETDl }1EDn5ȨD| vSi^OiD pSWA;yWԯff6EdHxJ5R2x+oCى XȽtb:|S HzRhoeܚk) 6] 4/6?2N<WcW1$4^ 1.|Rj1)+Zv΃/pyrȫ6j)-|N6U'w37Dk4ҩ_"Ň&#~ŊAws/_e8=u"n?ޕ0$eL"dF2I \M3$OWJvjPy.!p xƭ3Uþrm.,PوWAeUqW}"i)kپ {0W6ͩ4QɴʢIs7 N0 FwSr)RfnAU$fVetc r%Yh-ouq!m8r_VY*;vVͷ57Mfdns ׯK_ 4^ j Illk !fH h$77kŸ͚43QJmj]jQd wGKFS2-c1]3BN|@$=:A]># aLPM`XoDs8͎;0g#<&'$b$k?:խɾVîtj35i$C&tbi[N N<_xYӼ7y1.Wd QFFHÂEGBp'y<*'i ˷ÇUSuk'V@_X|R]m=J5vߠ}ͪl;(.Ѫh.8Dlz񚏻}:kagL fmZ_em[/$P0k NBA6~5U=d:uL/urAY-|uƤ`^kJŒU 9Ds$6G,RrԝtK_XO>rI\k%gAMR~Dn[yMOtB5iGMPFzwwW @`$Iǐk1OVl0XEgW{ =Mk Gx I@h kl,0;2wYm=h`WXe8{N.w5A,g7)'q1>Mks>J/YCѼC_CVĽÉT@y'Pf0CfN˵cIwGhlɍ,R8Iy-^{i_f{|Wʽ,tjOw|ly6?N08HpcsO4s")HvXG94ԙB $z@z <|ˌrB'ЎаE8o\Zj0`)g'*LgX% ;+5, I`Y]BbMK~yIgÞZGAšD_ViZ#''( kc[:O ?ΫAoKx/ftIOIʄ>#~N§V]C; d_- FP- hfKk+.L Е%{? UZYtZ>e;ըk^,EU |[b )dVF5(2q$9QY|]"1<<=&r R7h\iWُ΂O3y9\*:([αqܧ+;k3;~wQF`񶵸MdgH5->[DFF%).r I^(tTVګD\+atoMMVT@*_5YzaUH+ZcU wUMWo4u5PKB i=M~Ǯ파7;bg B\S33*e;nd>ʊV2ʨ}\qZ/U5~Au<Б7O?n'>yGWieeg-foHIp0p{ո$f wj“*@tHu:`8; 7O EzQ+-B-\z$U*{%!%OE2&[I;6&XE磽 '.qmh]N&d5~\[{RIߩt9N 5`PXֶ).=ZF{ԇ~.x$Hپt$KaӏH4~Ӄ8?d8僅63gW!p>h:@ d.Pu8{f]*%q(}k_l(ʹqf #PJIg>c\DG:QVj>7\AHq8st='ǂ3gA$BareIyA'0Bw0c!P.1l^}5L+Ә &ݭ[WuV2+e[Xv:CvG ͻh4{_G4Ţ?MĤoSr΀-?Z gDiA})lw@A:rLΓ%`L lwJ} JꇆtT]SPyQ ' >l}č,xw~K.턶X`N@r,w>+ *|*MP`i{ƪ2h}q'&[T]%%Q Ʉ ؽ2o#/A߮z2Wa]a AZV7Iv-F2.I%g|1FL3m*xhCyO$ ;HY%%aț~yX^ ?wuc4rFi"غ`^;>o|]%h.-◻HM#|& 0heWXCf^4,U*A%&HJ )(Dk7VLGw-)#`HSw[k3buȨ*djXYxyfr9}mY/qb=kPtĎbۏ„<}ZM^@['SsD"t#ݲ@U}5 ҪzzpV9k)Ðj]i`oISQ **+>Iv,-*5hrFⱍnC].yM/md򛅳L@D mg ]z=ZoE%B$@Ҙ{DFz=IY|݋ᆦ>%u̧U_2i4|?Jc<Ti;h&Sq2 Jx6~؂ÍkhU&t |a߻Gn|})|ӘZҍT\lu'woy#s7@-z˘ҽ UY"М2e@oOb*]+%AK"[)Mεxmv !ЅKj|I ZJS3hyܤ(N$`+&Dr&΄Уt.C=H82jW~S"3 ̮U|؅˘s5jxp+Z]v*{Y{X>2U?+=44nz`RX까;=vSM4Ϯ`pAB34&$%齯0H)?F+αr^FwRA3K*olM5+yRM>i d732S$GҼz=L {jl&tD"&CfLTG&8^FK9o i^> |Sc][005]KnyMSPdOΥ .I L3Yp5ӓ/GJ:%g:h0Ʀ__ZoPgL+F.Zpveh"B`)B09v7N Eʡ C=}oe[>o]cvw`0w=υ:>VB5Ou#w( .o0@n7Oe>f~wKŬH,UWmZ ҶFlFYuͭ#@sAQR[3d9H`T$8Ju0-:PeDztytVRtE  n`{8+4"X6EwVP1_6d'|5aޣ p<[N c,_W"Ş"fWPU 0s.r;=x4`fL$& ȆGmkC{;zt/Um#5Wr8.mVާDF= EtZ.FJv+I_:hݝ?8p `SZ;);B+F-|XX-ߑO~Z&]ུol<}^\-H'ƟE6f]cW?e0౥׊dVk[t mϨK:6-G VS7eZh3ЩO{Qx~A> 1um?.8"hB-qilX_…7 %?VfZ|킔 gM7SsL\ ;G1ЙjC}5/:U7g@۸ӊ=_6Gۚ]r]H./ΊŒzdEM 22Rp7] J0mM\ڪN o9.{%gW> X^+Gy֐^Vxod쥌\aț~ 8J.3"t˙Jö[>̚HI"Z1tyfCN;IboAqKck an}k,*3NJG$feїO=]ӂ:1A_Ŵ tϯq̪4ftk TKp\Wn4oq ؞d(R`%Dmټh;ؑV - (L+.;9WHQYuQKdGPPKCi.iĭhe*P!]u v[*OHeȯ7UG<.V0SĤ-46p`KX @~9~;e|i^lV(6/ͼג%K-@~ nXVfU]_t[ ZMu" 1izd"D1{Tb3iҁ`s(ݪ Ko/a&1.+lŽ Cxj!Rp7Ԇ%Gbښ]c8Z6/v._a@IW`#g%Bjl/Π&7t½g o4뭵&RbAhܕK!P1-8 ,jn}jcO&^@d*&.gBjy^D+McS@eqce[pXHɚE)g v6~BɽOHN/̇x_>L!Cy8ؖq9bQCe` w )38Y$_&}?1KHBJa'2:w3Ÿ}pQ\f|ל2 qDUa6YO&(TyʶI :,UFa*J̮ܬt4CUN{eP&GJC\ is^XRښ@F_i)zLu›]2 v՞SQOnk#43 <Y_ c8q@ \7i}{4T`|RTX EIp k(Y 9lg>Puz,V<62qBS:2jz)qOcj~wq 5̷w|##3J8ZTz1Y{9<2!"~UT " %7ťB#,*JC0\0"PX䀰Q_%k9,ߢ0ͧU]6wvJa)f G_t8*|bՏac!5j7 ~,oZbQ#Mx }0UUV"f*/n;l~$9ĿOܬWBeBYAkU64P> &Rb,- ҩy9+_eؠ9Oýr<y7gLG 7}~9#s-SW>Lpa6Wi~Pr2`WBt7mX #NZۡPjܔQQH#In&*[VË;d<+C=gfFUћ430fa< @V6&QDc<񆕟ubmdfg7En4;N$;b !#@oV䡛'+I-\^2킼-l I0;2"i-TPbHWƧۭvG^fhS 8$Yr+֠+%*nG`7}y&{PJ./T` Nؼu!系O@RdkkGzz\@bGۯ$m6+e~w;μ(*pj \]˒(r9JRS`iD03;$Uϼ(R,pԩ@W_.U`M)-t&&Lsƹ[YWRnCe+cmvI,}U&R.6}(}G+tx'$8#別ص;!(`I5oLƁNvӨ&W3x KN.3Z^%uMP>pDCk%`󼐦lKJ?{s…w$DMZ?>䐤Z:U9;+By؋htu1bFaOz@Lr9dUen٢ K߱>]Hw[.TLÖp8 dy=kqSyCV+'>N"Q.x,^u;i? AAQO6w˞QK%i~UEM@NEa0,=fݞ!qS/'N'ǚs}js摊ț~_=eDml5Y{aMd^[w/"{9_`rrER].(7GakAo< zѓ}h/XiF(-eP5SMnl M&|Ou>8X?A"@ͥRQ{YbG8SKTzVs^Xcxy&8G1 pm7Ov` SAFgTs۷: \dqL$Ϳd.0frb{\+)vY+Pp_`גGeC%];5t$U^wjYǡaӶZ*ccZƼ-#`5ǓPN O3_6ق@OyrzdB@m463Sz%0hI kʄ'X0Hr$}0 + 17]\f`&Y501 b}>R4xL?}A2֬iiv-Ϫ'~_#F"GGJfMRJ䢝Z<\Rƙ8r8.[*ʎļ%E Tw$GZiy5o:[Dr)5ߐՒMw6,qe67a6 9c]rZ1:.>v|5ZK$Q#ƆֺRbcLs_ { iFqwH+6+, 6ZrܜsPtxKUCyCk, s/xzMU_G^?.OTOH~AvQECƀl~sm:-)F^+$`Dͭ+ŠꞸ#bIJ!<: .#s'$`~͙BzAk (oCP؎Ĥ@ȺZݽo XdʯpJ嶺w̷G:pr%AGKKѓ2*4x /I Lc&G>KGEy!̐ؓn+[,ҝ*}=GqG]c/""0 lΐKWYϽ5i3Ax in~vҭC(T'; OH^Kq:N"cx[J.b fWYj=%tWNWnMBgqo.IgrrЭ\UU&1 = MC"ǂ^s:ˀe~^ש_`-Zyld}Cpt4$j\Rff )+rϐf;E rWFfP^T)0tM*bx $0Ԇq3Q^U]cק"乫7-f)ɮ=\o[onI! tC#JO28ᇷ!QUAwT"o",}76GPf.l[/2%hS8F|W1>Qz7P{/NlHW[wgCԈVv)2<)(NC5x#N~ޗ)娇 I2ޣ(-M^R !Kz3A CM.kDGx\ww7ளnh\.O427I5 vj+p628ky`[)0:6 VoP^S ԡ3̝ۻ)ߛUh~Kg?q*k^G R" IwJ]g+~µܞ]L poO~gWp"gmbΝJhV D ;_ O'n8RXjtg4|\\)_~k ~ loQv!V`NM"RpW-0ԟ cҟ?>|=k{T#aQu7IP=Ze|c5[O\rS e3_n|CVUf3Cdjms6x=a>k5=vEK6h5Ǿ@;`wfBi6 M|i&k!v9XUXqG()GC%?ĸz79 ,ePj {QQM p04`ᯥH5!, w1vC5DoOӗ"9Nw[~J!Ɏ`_KjW,ϕ4SLJ}Y7g^$=IFiCQ=bF'0м`/O8RB"kx$q N*RZ9H/uBnf[Ҳ#6{ *Wl^Uu3PK<J>wŕUC=*1,uA^-WIM+ 2dp-jP{ky7 %>d ,Y`Xkէ|aot>`WvCȥwg'fpfS v,  ]<}BͰ!.Rʣ/ &|ĐΖ/E{1bJd݇ѷuz@z┭(p_m3Њ5q+aiz `3*f<`dWMpذtkzUudiMr/PN<ҽ~3.aQH rt,*rl,_ݺ+6/t>A,mZhn,L:Ū h )A峂sJ\fr P׬ 80N&\~N1rjAdœu,F9>VY!2Ғʶ&wzv5]6\tUG@'0"apL8Oߛ9fFoMVΔ^~rW 4ߞg ?n1ǕN iQ4bж/i.D}(Eϥ_q|9mXW5`EEwB2"I:/r+ପ&eHqU&^Y& לC'/js\ק.nTE ҪޟN9}u6w;_(l=P5b-p!%iS^[bߦ`58)u\u`x1 ըL'0} Ơn# f9)뇦dSU%wP[X`3 &r}Poq^_sJr$D7C_fY9K?iL0y@9.IIf.4tr_M4=]oeϟY@Ԡ(V1ܘQC; ST & u^> f9$Q~VCjNpI AE;]pz|Hx~ bEkxtM I˛z%w^YrxQhHkS+03;ڼ0іpdU$;̽ΆeւxoaRRgjeVKZKfKotL'By{7FV0T`1~X-8K 7r8~ѓ{֙y!E{Dvl'Q, ,3VOd7r>dw.s49H'niт.!*#*m]_\/e x\{\paH7W^hj*1!P`IWu)+@uSY\Q9m3'4mb .2vi|$`yZCȔW,nt|gЀpԬ7S;SkP$oEpB%mYV4ByO-T6<6L}~&eg5=sq3K 2ll BiE+|.9dVZ UFL C)E{dk~n« WV;ϔ{~gPOLl}GU&A:V罏ek>uxqNdr{/Kpؽ|D]_sL(U /!υ{p 3Շ7jT?phw^("s$g2Tf-N@Lr {#PoDqkar];,Go;#BXI80a *̪N짘%P~;v.7˻\@ltBxnIk#EgcT녳 OJԬ'euZ [6Oɭ)I Q y@|~o/BXEqLEVI7U_,D6V H.Ċ1mi<pRNp4- n=e IHn`<+~7$N}\_'JsZ`7])hʸ;6?!mp,L;;p%ݞ8xL euO. 1l=yANbe!OzƊc5Qivg*,q7GPT' vdIHe :k 3+ L$tAz]^5݌#?H4ڙ>W#6g+K3􆍞Yx|t#B6Pĩ+L)wFPw H FI@u7I?EJоK/KGPX_u"!sWDؗӽ  ѝq}B&c"Z$8RkG Nj$>JQ$FP={K,>'i c_-Ѷ{q )_ NzJPe32݆0$*M&퓂%̿_з`GVP,jI/>*Ѣs@iylt aTSКyԚتjB6:#YbG ͊2!%Y< ^5PO_lN`AR\Eή.6QOxkclخ g=N)ڍ]׉ > ,sV91dt; &B 4ZY=J[hy7.r=)Y֖mP$YEW +43̞*>t;sIk#=x3Nn[YO`E~Y^d:9"r4b6e b@Q{LaJ T^#}ܸыJ[@ 4ܻ:ތiK!Ԟ2:~TxEa>kiE>]u!ڸRxuG,X` RO@ A_r^A/TY2 : Du9҈:& 5Üelk:򚐘=l'N+Z=?Wt[amĤ՚靯9rDtî5B,ti5.veKFP8xvۯ|3(2~\PCHBd4%^I7t:>(5 XAu9O2l%Tcgo280oʅ+`6~civyPcm*Sd!WZ|.a7(*iżZ,lt B,0ׇ%+gF3oHpve5IE2tE(HN@K#JO- lv`jή=- >܂`VO ]  #(lϦ2TD%Z^Axw֤5N.tt;) ڂD?@//4&ة(*&!=k}{ 20. x.RqX0jX=!TWb-'gqMb4pvŀ|xW][=Pr$l "¡9YhcTXcTZ[t}̈]Dꢮ(;184*CoH(y7`qLgοt)Ö/CV+ɰƂMh^tf}C vEb]0@ 75irmUoW*ibM͞ǬM}0[vSKOaA)=l`˘Y+644HF8ŵ#"B"={ %kXRQ'#]@{ȝdlkFdeUMe]^pB)M5pEZt\Fe{XL\G8@Z7İqJ3F.5^Lf0pW[kz.ZR%޳ӿƴڠ8zl`PC'K D烽K/4Zɞ6 ƃ#ZIŶ-x`Db {bpx.r$uB*JۂR(R~~P|Johi p ھ|$漟jR+*T|>|rZza@ )(ΪXN@CKo X,'/:0%g矪{QS+DRF~QSHRl[[eT]%!oo/-K*ޢWR7FU(݀;),kH=# mf;&AgS2So* Fg_S* B4"ԆC)ow:L'r|mdz!0z:M͋)^b}LCNzyfRn5"Gw^Av2*VΑM[]^y3GCkڟ"a될^z$TN>9pI?\nأRە-fBoKw4ģKQLynoy_q 0_c'Jp_usJV6u'Ԗ(Ӝ7T9< qj8݈C,> 9Ǽ[U*vŃtCL"%-oy ʅ&&O62 DfƟ^N`{L8 !qΥM!0PP>Pˏ .E/(whGl2wXOGU_H#M$<@]] wV?;wUUZo1#gI8"}bxx6(Fo$YH@x1xYY#D/WHY4hhh*D}hu\ow >kYni{ؠ/2ZNҜ]MM~B?aRi^obXK b/EpvᴺN!H?udWfM!HO9_R!ePh@$WZqQɷvSwӫo!ZĢ%?*Hl;<}Yʌ A$UJH%CX:6$a{ށ.֧_j_篂6.[_@Iy8tS( %4S b~4Fj=5Z-]:#ls2>A+: `1/= -$bZ1jp Kv2ȸ){Q~1rM0'h u[x7-v6ySy֧vxK B 缑wa%s\tZPz{5iM yPףq&QTCm=9Mr܀MmN7D72Ð2I*zBY&LL~t~ 4%8e2 %^Fd_-Se,wb*깓.NFad͂ :l2fEW-SiVʳG6;J.lPDfly5{LN}&Q[bOA> ,Ga*fgСm vγH9 $c;/B4V.*f#6ZE XjGax2Squ8Xݪ&/0]tֶ>H֪*wuJOs!A\>.w$qD]v>ev"8u/!S_'u z\]$-߶pm%Wd21(I2^nqZbJ] =Ju^Rq.`rPYgTG볁7 iG 㬀u?:)3&9#^Ä|hm0_3l,"q܌(.SK e|H%FUZA䁵+ފ)ny8pkcNe7VnX r [ߖ͸O;G\]cHk)Ed&m"|q=PZ0O;*+oy:%)4^^U|yøaݢnq?:x%?J7TZYoP״Mf^v>q{_ZhjvԪ|-5b1g~gzOn4V%K;"$RJϞ ,eVn@'WO,웅XdM!ƈSӠ/n00qX dv[Zy]i)Vc_6mǀ>uAfǯ9 X1G w DE6֕PlnQ}v4!yA7VNj+/%_wV?5\JCp[z/C. ~XsdHfvm k -9v1}N/rtNcͺ$m4g {W=QTPhl%~^D=k4J}YhvR'ݼ̀M5vt eKNTSH*:'hƙ_ ˕u8b?1W xf. v TM~-nye{''JV NdGp[fLS=*X2gf{,0貹15T9%ɄˍTZٙ:a◂[Np7Ylp*I/QHCdY2dwD#MˉlHtVOo)ZX!fJN%Rx1}SQ@y[9upDd@}g%faU®P7"ra~N_.#1[oNe-cxdZ ~I3OTiQr&':ԭ Eѵ|نy_0q/:˅Nw f8#6-acd c6Smm̥9w`8!'>߅5tQukB0PnR:ϙIelP.bo(ah| Q}!9JwO4Y.⨃+7~Dl_ːe@c8_x*EP<Ci?)U\Tu軻 R5bX5y)liTs%}K@Vjޱ n@]~ظ*PbH;Zdt\VmqIq?϶?HhBt y"C&yeTp);vA~Q>Y7 Tf_ CO}1XM)߹C$~;g@VZ^$6,D0O͗ *T#oKa/b(7֌?bmm[\lqaЀecm`Uze265m"1J~xGDǦ cFWn$e lbn r|&gn~KIXE:]~&s7\]Pp|(AR PA` T3D\"wȵj?H$khU+ez/:č^`ql8u$pXduQD΅y`R8T_зWYYK F=EWjK@*$m%,SR̔]村0FА5"ZmLW}fő #J!~komUz]60eW)PL?A1go*K; g۳^\lijnFEn9~qv1 dޭ{}@o҇,퟊(y Didy]JB##"Rvz.U>7ٶ#-hX#&kڐ{@P %uqIJ;; 46oL\\hsM ql[_4~fÀkݦ6[CS(!U G9NMwςV,؄O<֊n]61 ޕM`O(Κvy"n`*e^| Y)$eTǔ3|1c^BX#iӚ{IƢ}9T4H"b`r1̸Ȝĉl~W4q"iM`!:xfW;N צtMi~Q@y9JNF-)d6Y" 7\e0]QCrlȡ1iLLy O`JOѿ?i՚FAWŊ)z w+<'\ic}K^{!'X˝=}C? ɬ{݅߃fHGJ#=?.1Ro$>Q}bxe;!sEfȏcE$· $5)-2]kb5hIf$؍),)#|PUO?ԗcg{*[;_MR*ӳ}':E/`%ȝWvhf2 JSy/6 Q蘧ȩGh[+z|iq|Ƴ (h*bոF`"J3mv˛!G)|ՎyWїۏK8:"u&xy2d/>j;s5UeہjnƵM>?J8S)=px/i|J_qd& hD6fvs;4卸y(Uѫi\ՎŃlȺx6\[[dYv̤XQ4 S{^(;#sm _uŢ)VWL;惏/#+if\A*mmX=r-pHI6Mx" ӊ/ 7O c!wR x͈4=y t1]e} m| de$^'̯Ta߻齭@EG GQ4 t(B_V}ga_b[.DI A-[ZE|ջ|Lx㱓9ÈOpJ#N0W~\H%_=`Cw BånzV{;Hs@. Z9 >F4b:.}nO }byBfʹz-^e5vMAy!MPlZVe ïZ~Ul /(3,Vrw>1$8\u >2*ՐWH"8k o}t&/gUr [SY~" ɒ |AkZy.K(T&)V_ ԇX`MKʠtl7jL+q_Uu67(ղ^+K 60nUhĞXhPd"nx!H9iQhG۽iCa(b])?֞dK|6~,ՅV'H `Mi`@?YZ7Тtd} ^ar|7Ǖ4PNRw=Q!`_+HEB3FƆ.3%4ioౚAߋTC{Ä*}pSpCnEM;-\"_ _M^%Bq@qKyF-)-ȘH%2vPܸ0*hRڟ'!Q:..yrS-? Pz7Hyek'-SsER_U:ꭕA;I/ 0@3J>cv@ǫbxsGhӗˇf@G\{^yt *ba!GlB#mU2xLCS2ϖ^=Dkk bp$[^:4h|ע~ƣnڪ]eesv%"2n" =rW' 'A*W#ǹ c_ YBtG/,ܭFkyZ[ڮg\ Pyn\Ybx?!7\V_;idŚ`_ȟSt.;^d304!+\yf<{\5'uP-#.`Ɯڹn}US[7NhG+ PloKݑR]wf G=LfƑ1@Ԍl9?f/K0`"M;:~=j$7k'w9}SDa+)}5lXnP5`TGTvb"߃$!naA+G֮#01r]:Dt/m i}{OdܾӊπiȞU1FcPMݐZXӍ`&Зucl~ qӂ9}VxpDH "TXћD%" ms \]VMb d/f̑(d -dTt  53ݰzHN;gL:i2G!!Ml6i8} uA@,Ч2WT*] nMyɬĜJLQ#wrS~}0NVa,st{H{j˥WϦSYf   aGJ~?B+zi#)xE*DSW2<(.vLiksbkSEG%@] j͎v̚,hd#|`L HK+K3dfK9jc6|˜1Xk:Yo2svŕ*O[Ii.VXS9/kU>0HvZ eʵ2O$hϽ4X}iٔؗ"9{SIY:H:h(<Lj^ íJ_c+vlHPoc{pZG` mkc6Yiz3Op'QЪsz7UY:W] R vKS!9g)uoLKtA4v gqfv&^7&T%䥠H69-Zc_Ĥm7!n,19?*5 e]-!v>d\'IN䣢^1Q E N XYUC$7Mi\zyA72W_]b»(O-G/'pd!ƨ_K?t,CXQKZ_oژBw$ I/-hI#V4NS&x5hv-`ydjX᠔~Rh5Dw:qgP`/kJm:vC0dvQtg$i#}ko'\Ę@.wy`"%BT=)UNeM6. g Bv'VmehxlsŒ̔!lRvܩ|6r(XeKi|=6гPK^ :a},?7P/lN㒖7yCEOaC9uFV/% ɛf%潯5 Z.IvD^9| "יndun~07-sg7~)nd&}Fجz=›N bܥ@ jKtlBGaZ{X5n{\`iP;&%4'-@)y/z?\ӎ4Lb!S\ƂI6#|3wrRj;ξl/ŕj )dO/3 A M P0e2ߘZѫ%s^l~wWNo:@:~4c=P-"s%EH %8ׂ=rD ДCm3$0BTk,!-3b?&س0c!q|ʉq:s5%eK85Agj ,' GN2ʼnļCw[AiRPE;"% ]fvްÿ{Z`O}Hk|TNg]u[M}1$uU3<ДhBW ~u xPJGiĨZ VnK8Zk DuEWò{:cT_Vkd@7>2ZeT"%͹|$1YJ0 0ZBOqȔ<@3aaȍ-Df1GM} ?ܡR\,_^EB5ҌG ~>#'s`g}vZ;naiTFix`s8'`ѰAAa`r 3eEZ 1etrA3y0J6lGRiR,~x4os \!b+CZz9^,dp៧56$]rRji7lSlx2BDN8PKyGQY;h*7PˣgbTLN%g.@qqdxMe>u^%8tx~KxvIcP{kzwG]+׭(>qLʠ1Jac /r7r2U-~}Zv0 gUly,g|׫  *iBJ=TɎ΂/1-D#[!X9PL]{b7Z<%'Qi}%"uVjy(NȖtG3WrR{BbB>,+F32lrA9k.9Y(E{:4ӑ~Inܦ1)m)%¾hO- պ'כ,p.7<)7P 1NCѭ|/+֞ͪSTϖwvdE0^PTu-&J] [=LJuUqd‡=p̡B@&;Rm|ojŕS~Mkt\PQy{ocʶ=߅pZ 'Pnr^i NkQk=9$6-j4B=eJJ\V E;9 zs#%KԧN唣!b'b˷}Kd@ Yr,rxR2e_plȪ`i 6-$(i}'Wq_ϟR_Q,#B cr;Tj ĨV t<*Ď맿+(*2RƖ}-Z@erѠ;HCOE 4^7VA=/WjN: 9]Jl |U]r[O0t_MdC(VDVݳ&}]A(Zz?~»ӉIʤpYˉ1/%V76F;G>Hٍ.D!bS՞ "'~8#R1/֑%p;*8vdjƺپ 0LԽ9QJKՉ\ߧ6@HUQFv2LhWA)aqX('I{.jW\QNiں\oUMrSqK aQU ?{g|mhMFY ]EY=X,TqZvNq6~z>FT/~wP'6j#ct%Y:,gm3+ }VWw#;,4>'vyPYɘjo(!^yԩG5WCx_ e]m)u%SS_d]xX8Z1>,ȉrsYy2ᦪծʌȳĜHxqK}{G ِÅ˳ܻSuzۋ=A±hj> s+@CtW3+7k ۔o!C^πw0Ap@P[NS+N#3A9/Y ErOa ufB?O!4Mj ߙ5sQqҞ!=B8 OO=VߞD L 'n%NYaB/7%+ptEr-8V5H^`ȶ5$C]f ,#9;W-b,-'v`<\l\m Jj?DqvsE*BĶbQfFTNN]#LDpӄM7:x\[I wr Q,p`ݕ6n2 ]F ^{7Ē Ҙ[3X= ,e|!9D ؔ[vi St M'@#diЗOF,ʖ0۰ :NI|F;U0H~ =o ,dQ8td>A7T(W}16ME)! 4e)YcmUqc2ttmyha2@Je-}g i,-k?;7, ι$+R k?6n# %֒x5&J׺C7_ҽm ؝/uڑL qcI(ַ o9}#%yg8ϛVt_)/߭30 UǩM{48[4ΈaE2LiDqD 6a16Ϗzш$D|dBB,T呖 jn)L^陟zJKj*+(!^ݡHgCB4z]Mj VVc>H' A%>,{BIDSIcv ^&sWO (5SV;Ha 9G؇'GM!pqpِ*^KRur`'nXvT.ylh[xi~j"ykmp=xJ驝FґfCbݤKmOa,[s&iEJcŷJ~ c0kp5ا}gJ=tVY2`~yi54φyk^f`{aghLƇzzJtQ*u;m 4_ce4P{j$rcU9DN &L:bb-*npvkdo87hJ.%%:rY7$fbH)H|q+MFٶ%1BE)"B7vԗYR}-_V}WW/YѮq8n'5r;WrX(Uy.2\JZ^?k'YA_ Y̕K Xۣ9$ɝZEG*&1fg5, znlqvX|ꍡmƈ}*~O1gH:0oQOv#ToPܑ;I򛅺nːY 13]O,$#&je* 6ΩϹ5]>R#?/"I2b˙Ɂ8SfK,AaK)wv[ 0F,3j%KtHa'tmd"&L˞5>h^L9(gK+mfk&0ŇYyGnn9vt@crߍ{EMVy*wy%q}O]VqlQ4T4qoi蹦\ /ovZ7a)<@KfT3 y%{_%{Z6'HHmÍ*>@q~Y-[Gΰpp.E\b2/=f[>ڀ.ڎ$#{Z9[S}|KU.Ǝ0R3ow2=ucڅM U ,v75pqSwɗ .ku ћ)Z4 )9F9$B>%do52wh h,CU<w !Ac֬Alx'DCkqdcy‡.y<8ZBVͩ .*1(}h2Yx> -(y#/y$,( L<{0Z͊XGf09:e3q">#}%(=y[7#(382u^]T]s9/b(|lX>Ww9Eszyϯuvvq(؎tH`n[ s.Ȅc]NX\ʽzUTQ9$qvLeٮVz!^T}Թ(ojPYƚtC> uOoN?ʬ=2 @5(3IU0\G-VݻP%̆prŀ^ҳ Zo0RM6\&a)Æ0#S>OQVЊzv.h~,9iyӷ-o}i+(-kAMLYGQYhAMB͐lunBI"<pZ08+]Yd"b*N*n lA9jfҜhF16'h=JiڦFad +B<>Bj9 9$_/";wDܦĄ|HbQEFW0#aV1L +&7Sܛ*pHu[qKxC ZThEv.i%ᶥACMVL"oV 퓔7'#x}3jXKw0mhBq[ K{UXOOClX'>0q]: xXB~$Đu|'J&fdk݇zf<G_n`߬,{K) #h) 1TS._SK<$ \ :~%Hͫ5bcE[44RRcu@Quo TLS5r6hA-C~ ټJ)~RMM+AFk\pkODf &%!T_1F8 &#Jy h'Ja9~,({lb&HʛdM/ח mjEܵ1ԋp,p:<zvd^~m3oIW0wbwT(Cd*;eMM<'q6zكeSM 7]iK0& hiCTb:rLLU%\Gf"+pCO$ݣEu5. /o[YM3{"ՏɜzůZ՗, 1BKia.]+eR;PtF<9hb8ʄ>L}$TH=N/'唁 V0kͮW2K>ZdE}3ΕTYc9'`nqk rK`KL Y-B!wEQdR ,9 5(qJ~WN,[Dlr"%%_a\vQ%d4[~ܫ@}Z;NT-d*ֈPe'4L37D U E~H mj*ȀXy$ 70xDNa 7Z45!9 ]|Dp͊p(0 ֧vTiy zem'TơÊSqZ}fJ1?^mOgEO-H6,Qds{kkZ:-}h}b|QE?L(dHw{IcvlrǠ`t|kT.x<5o45C!10,Fmo}JLZ o.56 CG&ʲp'P^χ[&d"0X3F&G"}c37ur%lr 3[f::[]vt EXJzG%|8T9Pfyf4sE$b}i$܉lƙ`kzL&Rc%ixc.`T("~vgWth7i1 ;bg։@^(CY:G:ۙKPur|h3fkU-fvkv3^GnoPu L;NW|. йJJzǔ!(O"M"3.c[唶ϻ6tL:~)pyXdӑI@7vwٙ.`vth^DfЯ,D},^HsXѳ_XTJ`fU]p5$,q$K:SH>{րs 4&C#f<$P\J A/k$TQ!H\%s;`%vſb9bS^ܻ_bg.7b|eJ=yo/*-׼{6G۶*XK Ijv"D?Nf%Xlsa݉0%e=>a-&DBq(y-߳@f1~4$R4*SbY~'&FYf7뒃0Fʆwd'j.V8]u M}B&~A`z.ߦK 1U*&y S,{bNAT8>׻~#oSr=<݇.{3ͤP|,Bv$}L Wv݆rѲ_U{GpK{!``Z,&A9!bu3n+[[c5dhU0[w#>P“m _0PEYCl@HrFp泵Ϊ7p?sNA($o%,% CӺ:LCVsHM<m+\.~PYw$&ú!^+`|vFjhhY/nJ7?8=MgjC22ʔք;t&#m\:K@wGNbtl{.4o.͈my QrR)h:khlÒ+tCAY! }l2! W,߈8<W qPr`VK{_yɋ(ػa/OEK[ۅg2E}JQ.K$>{ADʯ"_X>Ɓ6$%=CQڶhT  ®(&هO6v[`cV ,|==!^VYo*`/qv| mP̦1A gjnxBϲqNaPJ7ZAb!%UXR} K N=lߒ ay_K0% Z ].}5=q*XIPd tZ:`N e.]]d1-ax.gj4A|16m?ֱ6t/5̗2*u֣7AA3Tg+ ϲZYrrCcsMg 2ȴ+P#z#j <~e13\LltoxNM-g AOb(NmVꊩD5vʝQj۝a,O)Cq*H+W>(N~ٯ]"w%E.CZU5V:V˺0Ӏɭ)^yP<%U )ܙoT+,Z+mPt$%˃)ob"Ȕgi іrz$ ua= c>C<Χ g] ɥSjBM՟,JN锈!dV4ЧfAv59+odS(nGW/P=323$蒌3P"q Wqg~quh2]D~֣(>{aV9WNr>9"-MI-ԻmAuocMKaroߐ5L8V#=wѷc _n24q3F0X12mvg56?C_i|: n=`zzʿCVsz7eY=v'|O!mrʆQxLIq==6#"|'IU|rhp,E)y(Jl=aO;X Bqw)ṲU0Y0}jڏf*YŒ%Dx|w8,a-thH6gÝPщ֗ەU;`_Ej"A?$>1Oص#Gpe9޷pB AM؇h#xk0/"F"qS?ҖquҸa%iE'ʱa Gò_{ ccAly7s}#ǓSI*Lvq(|A)\7*Iȩ#d/l-1K3ձJCѻRBPzJ\}بm"q!8{A9/r JtN{ e6v&VdɼN%xT) DƯJ1pR7xGܕGs>OI&:3j^&:+șKrI= .FkM-4 Trf#z/#Dǟ[B6f bvk*em*؄|sq!qJΕt'56K/Z<@^wR0 ym"{aL$hKw,èHÿ&sZ+cPc]T&w7ioskfaXfpX%+nʹ!/JXahW}dR_zlAsus(i fVN~GgU_A% x,dH e|@3юM?\_#ω6\֢Ŝ>iV+t[lت+9\& v-UI20Y['aONقQe4ܷf -CJQ'}هg'mgV-#VI<ԳS0VUsH1{Oe <*8tS񜋣+΢{YPJXa6[r K_-+TZ4f$)@TLBP0_1C i+.87!d=tZYLY4gp'P4/ARۼ]H{Θ>Q " PH{Z }n`z ˍfLn"|Wo %',~-1/U'rIzI( M6ƞ5qy=p " u˂JO e QGߏc{Ycj]-X"?'J-ZCd VE *k[9:bC"/@97HfmVe;>H V< " 瞂/&w(6"B .>|iQ$yRCy0j M>Sgv|5!|RܨWSFhF.^ ǹTvL!t)*?˴>-dn㕸ai9V8#8o / ߯Ee;H﫝6c'2OS)\;@J$X䬔o!.~Hnw64Rvϲ;cjnE!igPetB!R#ecއez%ReiD5狞,+nGžTx5EA)ʵj{f"<k@ݱ3Fd F? $y @^@LAE!!`ׄ--Q5>VFjUQ t5JNE"!E2tU@&7)FjhooTtN<uTSL~ hvjj*rs.GQ?!VgV"DNPLic: g OmŃXf (pu>?9 Xfusѕ/<$|Ӝp SU1|n#St5eƌA4}[bv*|31iu &͆sĤ"5 WzQZ-&^֮ҥ>3ܞ \;PZd yfXrHGJb1`]&"% Y9[q,4H5عYlu)XEK/#k6T@ʈu<0:2{s0'B0B(:^ m, ap p"qEjdY"7h}^Rʭc)ݡ?X@zYsLV-su&)Nf˞'_͕sd'qp&@S#J:J},Ai~!OT5e^uw"d DM1rWEmȓ3Z9- !bfrwX~ BY[)B?z~;Z/$b7lI&Mp }q~l'I(n~5"ǐ8(;)ӰE dA$wL'ʌ$yAG3.8Y/hk"ӝB+t: ^:1a7qi\8.?0t+<%EZowz{&Dvpwaü񕪚q!(ПXąאp(K;1԰=!dTcIgH}Jw u|čcVrn6/i-V(}Gaqv%bibk hw_pJl\>)!P,5ec3]s~^cxdn'za;;Ur C-X2", Q$p>/GYMH%q^h}+FOlʍES݋{Qe??b=2-B f9iGPmzLuBlIC&sjGP#l_*(e DBa8H͎=ȌMGThuh;8#B+x0=zJ TdAGca+e*Y^|639O]fKugNJe>R@@ňǿ{LM=;`Qu9E\.┾Wӛ4: C+VKY" xWK0E$7Y)'. }$. U.CmsN9Ky*⋸zfLu9뷝 Ɵu-؏!l)a1|oFjwuRH=θ׵sX>:&4姥&vr}߈2[؄c aMș`E/ Q e@e&\=Pd4IrDCkA{L*=}Iv~疍sfc9XHNvnݧ`Fٻٽq9*6ZuGx moazxluK5P6rJp/n;kմfbvcmɾ:|0&mф'R|7iqfWD:|:vڣ\h4['2g1-i2޹TTJNʃHJ^e k,e9ċQ<׺ =㈎?4;},)7FWs1`{3Lsڜrk6֢n)ۯG>6yTX+ʍ k Q0V>Xx_wYNF2 vl%1fjGpLK@yR,Z2>F<> wgcu=M!1(Yo V, oO*OɩYu˗\?=U 0qڠ%mMa9_5c Zh .3fr 5:ת&҇kZ)nǟEVLMB=3n2A$iܻB4Jq.ğ,< RjQݵ%{&+s1tWݝ*`.,r[Qm?M:]vB )Pef$0ߺ&,jՋ,id9u}o~Ur鎀[&Z2=I'/< ^ JzHq:@CKI jXJW~ϫ+ iu47ےbsHbLPz.:t[cƿ&|uܺ<ўJ"PA`lpjR=t)PK°Epx"H M_ZZ X,ktu2p9οϪpoxMȤ52Ec!܂ᨡ+f;&m¬4HNFmRz׷m?5]ZPۗ*i{ڹw\}?]2 ' zS+x)DW1J@ea-h"Zq]cW|㝦F T\roHա[+q[S젚LR6y `mқG}TX+h5yHiJY(L" Oa^aւdm[l )pley0kǺEIeNƦ3Jo‬2/AZq0f=O=rOD-h+`x,VgA tQRwAl8W;e7[6|Q~0<Оr끦|ԓ2-l>3=2|: shyehrm{ KF2mL0*fIy@^˰A^ '4T&f)a[$Jы:Ε.xDM#Ck|#ƻFSFME2>xjWar41pcB$Еr:ΛL_;rq`?Ohd=,$r~o|3o%KF[YCdLW-MxWs*Ma:gέfR8Z4e>kӦ3yAME_Z9tg8wFW񛐋plT/fl2P GZM׻? lovV~&iu>nPh`;/˪ZP賛Uyt"Bxصɶ-jr5BQ2:cAXIBz[)5g”Nhj.gkGLw9$ l?ڞ"'mB\|kKvT f8A09:9 :f&oY7/Ցu]cd@k Q;9-'?{-y9T'5-6s5LݓnptnRqwI=$?||-k* 42/о X"۴,)Z]Q!&u̳t[(Jp0K !=y۫:$)DǮP? -CGl JD^K95 csFOoSȗbR]=|`z"0r@,6#e/{07,TNB~=Lj s} YB-( #$P4a8 h+51]¢ ҴMPTA.%kV?/4ۡ@T1X.f628:vDnx \ =xpxՆno,oh|2d㕣y#nӈv1D')A E|0$mfܱÂ/@ԐjT`oO >&9QPrWݶ Qs>ڇo0JULTMMv -HKZ *NĜt^DbcKOs@鞭 iP 's2A2x@DȎrdWt}+k R#7 Ք%gҨ M#~` nV9pX6s9pNn#QVL?$xMQ,bGEaxbUugx{ʪ9JxQs.!rZ #^lj)zҚpFa ]#WC茨eӝ)6ݵ`"g qX1Óna>jPĜpꐘ^5wHQ"e_]w`f~宒ptz/ ϵ+՚?L&iQ K ]P>Qi NFet8 vylQa?gzac(]z'|F7(k͑P#e_$zJ$e[)Fy;PRyӾju2^W`Y9CF`ƚ5HpaY) i>?5+1a8Lqo1B$&":8S$3y)[9t=W^%)YCprCMĐ4:JCp{'|y ǭLaq[,I{ wޕ%"%Aqp^W&:8*L"w#wA@'{5c9[~{Ϛ Ԇ1t5]Hfq>1 Qt|mĀj<ή= !u/!50O=O JXHC9R9CfDq0&}l}N^0jD.p ŗW1i`M>T}# "?oyRjUާNLevoc-j8S,RiHObPwoℬ*qؼX!3(Jɵyn?w6nL7M`Veڍn轐̚tF둱! 4L `K:  N CSi_LXlVR&{T$VZZ%6F%Jne&,CHBߟqu 1I!v{G{|3Ȝp|BX90t$FiS$IQX+•B異Q,lV;JVn6H5b7 P21k(K v0 e9ډ^#VӛcˬzLb$?C$<5%y(ѡ 6ُڈ!![T.p$FE&@fӆ))v>7%xO+SCM,o+4{趉) M\;~!AS s2'ዝ"냶}hԺX[K3AY{{x@`gVjW`)īd/B.[(t6ƃY\8k'#6 V8jƀ*oTX#j%wS܋>%(P 9rc?ؾAP-QPejܣ?XDF)ҾzUܙ %==`gYGv ?[O=pyӱ]V4t,_{~G%p `:2W`'Be7P9{9R^&7$_5vJ{?ȤONNv)Ns硝T6$ ά$ҪiI/:1A%iQP**C?ANS"ٴƮ;[3Rkz8qi&7J?~fqc))lEuTIj?KBtQn]U5ad΀"町  jEMe !^? lϦ>'r"'R.&ھO~yE)<Q`7C3nw(۰ೂgd ܣW ]DO6i_wA߯ڿ;"mx{$\μ/z%7ݪS%R5NdT+~B6xijFY픽52XBˑ:IΊɗpe$#q:E$i|7 Ȫ 39ߢFX|Z"+=h]K)2C< $#@)1@U2߷0S\ܲ6G\O@'~Hn+Mp#xd]`Xu5.Ba)_pWU݅v h؉Q}~-RH Ì^>N$kE9W6yjU(j8LΈʽ( yڝs€;CtŞtgS~uh ES>m9MeV˜jj?Zlꋉly. _v3iL.ۨM'|QTXЏA2ouݣ 2Qs֞ӵxdQlP# AlEG`_BMLJ ~qjNA/^R$ۿoUQ_H*Jx>Ҡ 9K3WM]<;Y\.9@o2(~8\| \Ӊ[x~O5Adڤ@6iI sis$F]:M&|YD"/ws Tg2(:WXp G+a"\ x羭__LSAl`Z?cr| s{ 9VS T>F:,MS(vЦ܈ؐ5Ufǂ؈9}'פ կ De_|p^͐sO[%cdb+@3?|OK"UZůy05Fi&%XfT)LU"z mG.- @D:-+\Wk$smR-o |c6J Eg*Nh7Yc7)fފ&wd"|tt_)g<ّyʜp5D|vƪkW=`*AhK p:4>^% 0)eI6#&Z5u俓/di8_'tX=ߦ@hl!QusjzETZ@6\ǴK)ݵP=8 mģ@ 7$ePOZ"a;3)6b@3yF)3-{R?#oo|Z~tRM6v+1rD*‰3c6xtQW<=ݻKחn'~촮&8LllD%f#[3]|Z4\ hÕ>4C%i8{bu| BY0v) wqHvDgRJ@ 8*X.g`iW' q %:]DB@*R[ÊP\FCғ! {o/rvaJ I86uD71G hy}-15\:t)4 z Mo`6Ww'"QWlk 5CuE5A~bU$4} 4^ _haDIɊ EVWȐRa)J0A{dgD,ʉW@kWRӿ>x01R?ƵEH*F2r_6-ɋxYË75l8O[X M?>tV.MD _St_w6*L"foӚJk}ý8Ztb)E"|>!  |6A̼LARqʍ@I5R0&CT>.MU#GIX-i9_EwR#N@eWnL;t 9$,(УQQѵIr^Ы^%P3P1,5a HUX^5D՞^EN$8&غ?*xp Hs\Zś |Q k+jmvP pMk&c e0(Lhh5eZ D8lRB{Ps ܔs|᧪F6:t7rʮ7bP[+jV">e'" j*Г!~R<%.Ή.bi~3ēhk3HﶠI6`;f ʯ= Yo?]ϔ52@RpQ aQ.46ܻk᜔u7]q&MAxj.Gm|C04Tr<^݇~۩H&wu .pm<1.!9y/2#Ǔv8GXL%Υ}x|df.::MzCB(~$CbNUo5³ w[ -"qG{&=(D) N*vx͎K*<>&qZLȲ}DUޛr_f*DW)40' 誣>VA ِ]`]ꫤ7KzJO8 @y(4_=Hf`km) Vj o!EcoYalG1,_'ءz6;IH!ϗqfFVf midG. P=/3_rF -9RT0ּ^N 3Qhna|wAdH2a_[I}"ԽNkŷ."2Oa $OkCu}qsl~:^E^/TU@a+Sj[OU2ko&mrݒrr,$lj S03<U`?BJV ݢd~8c^+i2k ΠKzVNCR,;hsqptwƮ1A6G%0bTܶ^j^'iӤ2`?"t~5m1"%/96daLs6Q<TD р,xI{̶ ZG_]j $NP{A/Ж& 9-.bXӾ o%*p? +՘hy;XxMmiSL4IwQJhi{ꆶu -hlx6 2ӈuC.8Wuܡ{&adYcT;%6y*F0o/ÔrڗDSɤ@E䖠r4PY!1xM3ǎroal^pyDJWq ؂!0J+3_mr'Nd?| 8$4dtfssL?p؞wQP|0_ eo;_3y!%k!vgߘc:Q CBE1a3N\u0Jv¥jg)9?GJ6V%7 2(yI0>nfsji)2Q낈`O Ar`s7\&}V8?;$ƾ7.)L6ZnαZxk\kli]cy* I0tܱCiv1wfNJ*u)6)nmV$03ym?ځ`?]؄-/MwE%pQжuz N$vBO8 pQ&ܴCl.8i*'u^9ix.sQяd>4yBC6N?&Z60H$UQ%[Qh->^Fm(sBV3uC? F'46[{P>Sh*M&zS^B:ulƢ$ԙxM{V9}ĞiDWd}n tPKQDSU!U'K^fcv@C7]3Qs/s;7Ǟ?)%zQ=chkx~6BZLٟ <(Dna߲5FoQhD2U(cCQU jsmJw}cƄOK >rU >)ʒqqV/%ƖA(;ѹ$Ƙ"Wuh!|?=]r 3$+m-N$A',12$q ޟ]mADӹO< xԡjЃ{#u[T1$WPff=`|Lrq/RG#= >p;ѵ]7Գ`k*,Y֎MpR+| v7Fw4eKNܞf&=?tӒQ^tR7 DWeHr8;`n},/d<^6/ҕw $+nE-mdL*Bf+:&ts?0 uD92gJW]Ms(mǰ沢"@zU#|Bhs6 ?MoKA]O-UI˝4QZ >Yo$?ܦFw|g3sbnDe=:G(š&D܁`)NnPޥ~2mꗸ ȅ/浜K* +%`{_t=8^{Sx4)w%ŋt&N2 NX7شvG7!>×L9z2nx]LlTj=$0O=St/YY帐f}ŗrhUgκ L*!?DVu9!g"k@ń ~N'JOq۽sx#lΚC0 x%lQ]0q!p3->hB&C[ @p;^m`C&KDP&%HqlG=,:+=&pCef&O |9i>U$a9o8UѳeMX`NmER[<;Q/Tȹg[0Xewn@Ww_O1:LDĽ(Ш3twDaϽ7$7 ٩h2$5ڻ©oN|[4.%-j)DMm[:pH51]iEbqXՋYn;IER/Z4@#"9G@YP0h-~LC7Tx3Ƣ gΖJw$u9_7q^7GQL]mkgsZ@s'kt5vVkxyWrt %0RJΗWH}4\zPgpBԚ/wģv SESoÇ勤0ENR 0a@k Q >/hu/ǃPIy,zV!CO&$Q gO {E؛UNu>dn?ʊ6 e&dO4xԢ&2lib[YP$ܿ {?9?oV֏<⎍ i'H_[[Oܝ YEY%ߍgP&˙R5vv#=Br4'KaD"@ݝd:f,8G_`i ʿYwBv>KxgDs(kw,K0Ɛ|@l^D^LOԠ 0x|Do N) q6ŢЬX5TLPzS*fI$F[R%\ig;GVF; 8H ngJ37+$tɞ5ll۶|w3o|{;tAo}uNL a(1zLd%;ɔ V;`$9sS^@5 sbqkΛO#&aUcvmK_KMbDoWB\)5*lw{hK1jZѹ !p7ˆy30/e_֗qǥۤ)czOĒiUXE @.Y* WpKPk9oNDw=K@&u TCK* J!JBCsͣ|Lǂwsx[.9_f{"OHd>Ì"dVڈ3/6cXh!"4nƿ!=.kJV̰v*w'Jm&2 )be,}{ߞGRT;#"f9Ng}#vg c,dkAcG#rrvolΨȵ]tJ@45:łV7Y/̻:e^^3h ^WHј`6ki[ؖ^j5_tсկϣXMB,Wg ?ԋEN:L;bqagpuQvL9LjtywJK̖>uP=pʜ]%|ӻ:S+nO$*etDA>MNڅ7J-ӒELgH@T" ?¥^6!t{AyϪ8/~&Lmr>+[ ҊE{M3YԦPi%=j0ƻBQԒ)t{lɔ u*@22 =E敟m%* ҡYlZ6VCkE:#K&>ECo:,2xVS @a|pW4rz8j[ײMbދmйoEQRx-kҏ`hfÃr$.P^@\-IzbR>UҙYTg=ƩN ϊAdxCo?xC?CҺgf鍦G(016 AvI*+sr~ԦQE]AYł}3LxFCȶrA= Y<3}VǐAI^"L QZɕ֕.G"dlv~L LTa~dmwwC&ߎe3ke??,gFi̭-$ O.YJ8]8!<:BN[ X!Kס3_w^`[Dw5`:c/beTןRZkGwC`rbѥӵt< @te`뤽{J?c h3Mմ)zh~3Uzypџh_6m]o$7š!nq|Z\p?{.q 텕sR`YX"bq1;M !PZ$G%3 [Q< nE'ܓUFcoT/"BZd"FaYO]L&mwb#Ag퉩?Pmuڋnt<{K`ݺ/3ɕDG˪End֦;6SsRvpcrC+2PpةâfCnF{O3M8FVRv(ZD8  _6fkǘur}G@ Atta 5+NȂ騗R1Hj]AbM`EqswHsI\]_7Sگ>dPzk(>Vwr-gDKDsV.$8!.7ڜlHER d|Sƣ/Ԩ7a9\J~p k:tU)L"2{aP|\^=(}ty0!9'$X)YK1qJǎoCӇq^-Eޒ7s*M7[@˵PxϾy9^DnS(>9%'ȟl(Ј.~ǽag.AisŒ"o1ss5 f^M.Q,M8ߩ L/`yI!No6T+[%BM5K 7҇yKN5oȞe~[Kӟ9=j+脘Ln&.R8b86ş"═ݥ W[Z4P?M*+̅oϳBI%sN[53.X~WO}sua|1 fR;N tDE)sM&n]W }"x>+.FuYd@<H w#[ĩrVf8#9C5cDDwo c{Yvc$?E8b/c^wYkr^'[jNdȨe2X b2Cy΅O[&i"&`ECdž^܉Ō7!!5VEZ&ƟXð $l)OQ׹\Μx=R(D7=: umh9 H '!:z]JGR?6b]|8. <9S)a6uMf;v.=E0%djq'T/y&!}QSaՆBllV; =[[֊HAP=9(7pqĕa&q8 8pFrMLn͡2UѰiXb|}q!r>A2!hq ]8»޸=>FsҤv, /d b1+K<X.TRD+^̈ 3Ssfe7T!2FFbLYmkLjwj$_g٨ȥ'&A>Gy? 4y=9seˊ R,@(l8g/2P$ 9{Q,,};Qf!l1,vj*6/ñn;Tv Lko1Uyk78LC㣒FBPw-$!3_3;%i4r ^q2讣qpӐ8 jbnj,+0H==;NuF]fAё]dIdl gAuT*`LM/-Ǹ -]WcU"L^!sz8w2Qh8/_yb!.Py:8+bC oO*@9"pLjVLSWrh Dj/_{8gC,ӑ#Our\o#u0ms]6̫_qqϞwbMɼ|CSpU[d sDvXsA߹ik^"ĖM@oAIv,/Ia-h5B[s7 x4zRX@$h=Fc?<Sc[3.m\@S(rKH=//e2KqPMKw[Eg\߅X?v/ZPiKs"mhS{/vA@ b&O֍c jn@1<=\%Ju|}OњE)9BbgwbسnqH&\1z8\ˈIpqWRjzF\ 蝈$R4t/w^w[tBZ+UGejAUmט^(g[Q^y r\d÷8m1m>};E&"UbDkV5ҽXRs`%MIHʏ ut{dN$g3T@(6}5"%"c?.ƚ+ҵۢ+\9ﹻ`7Z Hu܈mg\# % "虘zΌP*WQW ?d8Qopޟ{'9MlýXM.sO"2@ ̲UxI4 "|65i1f 2Px[AVʢ4gQFciU. /=J%=@h44OD@LJR@ǎw-j+ϻ8cnuA&W߮zh¬B<9SQĒJ$zL,Z'^F~+^K38]ccJBGz!L=g  !-SzH .4cPTh[dHU%aRN%TOWZVdɷL^GL/NH^8Yh]BRG\fR@ QrSpA!+ u"Fk;J/R7䍔j&VqP9?1zRbHjV,Fr(z[n\ =.i⊢XP L1 Cne4S,o,$`96Dպ3҂C({bu ]C@=[nU[3Fc[xjauD\|.4$err(ԾHqeata&XAG ?B2ͫ0- ҫHe`|L^W!Pw(,lL$X*Ƴ?anl#|4O2w4DgX}0;h墿FIՕCLdd6Mk˺*VgIl%&!bJGžA?m{ZgƳlЀ"kVPUdE2gi⸷/!~Js& eBc;ݍ\ɾ\F1!Wvs)W }d-NU A?9Co9E1XAOےLm1 7ֿ4F xr@E*$\rmY G_ÚW&^YRF&+a5uHðWnoT]Y몢(#T p}߈NT}[^d6ܼ-soA~EdAЭퟌW^jY_l%QXԦf'6>Nj=VAc⣊m0 7j,_"sxAK֬+$C6ise;pMW2 P@ kDo￸i4Oi>5,ZU 8vl`i&H˜ m6*U׊g/t&d4B*AG [ML`Dn7ǽ<86/Q\|` iCo0ISXK' g{>VbSGw KS=l*QTWdzS" q~L3E=M-Dvc{6jKF;2*63%/9v$L|ݎ)x4I"%fAizku F>3~ Rᭊ9p>%EA/\ŴO:'VC` +2yo*!Av%;6fΫ;EN}unAZot>ȱP@KQݩbK\IBLC t+)A2baWG"؄y7;fLHB~-kc i!Vd} CgAw |qx|$yFP*KԒF*L"D+KVG fmߣs`vGu&S^)4<%bu2|pj(\SܵK[/mcA^T8~oL5djحAˆGou{" NE!|m"Xc1dy z4s_L. # ḴGg4L^L_.#qu.E ( ys.B=RIf#pGp7ޤX:S&w>Hԭ#Rf87~̏Yy5<@)8Jma"tD5$8LcT=B_c,D k7^faM!g3nC',G&XKF W A+#"\6aP:=XP4U Yf11~$A;gf_M q| 7ɞs{GTU=UU*`1kroW&Bs`~`]D;68Ts0?8߱ԫ,YdaVB+)s[ \lq9JR>Jd-[8W D(ǐVpت,LJMqg1ƒZ0{y0xߣH KƊtxp8kwGb>VQ7C/ $~L G: *h~ 4Oz5U&é#j37ou4\;'%$ĸzYC8^汬EVHT[w(H|{獷Y_^ܥ9׸> ;G1H#"&z, yTv3ET|,STS-ؒ>I%F`7 VXEf<\(rrLk&*{&gx~m($ L.Om=(gCT a[J4EtT^l+Z]R H'`Dv6FYSM{[%Ǔa6=2 >DKҾb@ȼ7LxZɢΫKCL?IYC/DxKI@k)@g/[w]7(>1[ڛe "LaB 1xX)Ka/6sbT[ [0!pK202۬M$eHx9杠]MP2rq yP/AE upi _N׽P?_ayL6eJ|H&/Y?(dc'eA(Ι%B'$wv2<9p)ɡmHo(Y@;9X9B4mӃ!y UM2UR9PJd} ܃a yԜp*DŽJDIw|?m@m&po`C\Q=>}~x3'/kj_ˏAČ;+'W'eJ<I 4N6:"΃'0 m^]:9w9Ң35:Q&55A;)eOYva/4OXI#ĎM.8Z^p  Ѩ.ʟ JZk*M'l9uߪ/*OǐJI-e2FSWNAM@ }$>%X#be׫>df͜D7 BWK}^6 _ K*BJCGH2EZၙOBtc"wסy: ^Ӳ+JT >qIqv"o] _Ɵ|Aih${ B]s4O) !W%0HqʉtYR@}&O #֠v4%~ǬITVM6b;Iv ƒלxMnm7F8)Y1!aD?Wfocu[vJ*%fG$"f%i,B_U I6_7vzb }~;3'shÁBcf2Elh9wi@>$9Ih2-Xad佧mvhN*+L!|a{yS]ZH9dv $,u7ڢm䜞,$L;F%k]z#G Q j] 3 9A"^Ze 9B-\CthXSb:kTyJ["M G,FTVpDY[9zoCe=}鞗 /9vٓTXLњm'2G!> "=sܬ)Ryl{bvM4II8D@ juEWVA_;x7]O~.+GI|!གuLJ0"]{;X얌8=r8,qh Tx~T՟g!<0C'NSxq4N'grSzq;Id΃(al:UڥFj w 5 ˹ eOpegdA0W  QaieQ8)*/_K}^6LP(cG ,6z\4TI|CmCs,(5tZ!G?>l4 g靻)@ Z'Ц Py!q!}6I Ju6kۤߙ3YBID}3Wt sr״5[Nl[ZעJ:.)x_nӭYX% T+Ã;h M ;\tQ6՞zo#ҾhZ18(5X?ڞ3}4` tک̐RNҐz}vjwu/+3:`,E_lYJ+VԒfxuE1~쬓Z:q^̵yf07z+)2'2l w (jʗIPTv($5e\l'$ mA\I1dXvgԔ݅އ Jѱs)ᮝrG 1ō$) ^;F"p^q:aH˅6[ۥӺR SVw..n4KRPZ@M1-gl՜Ͱ/3?x!U'SK^ÿp?ܷP=SLwk3LV͕e$T >hCP(o3>^mnEڲ o,M a= VYDcu4,.{hRָu6zdtKY2ýY`cw4rPs/|B[mW-$wkqʳhmVIRޘ-NW̖:(TkJbzR`5,b-T/=l'5#O=k9\g1+ˑ`!BLRcNQ^̰!ɫ/| $U2\ęyruEۑc< NWʺDu e*,%8L]O  -I?߳k"r׷Lt龏^ lDԓjY } R-ZUE*4@7[OB>/EH扠[2 qpYտ/:gXrqD h{8Qf $`;8:CeT/M Tn\k)OH]8ZNQQaJ|=i©DY SB5uf}p-ćfVX  aX,e 4SI.VG6!dG  T0Dz I3CY %4k[D~r_ 濬S|ˏchq˞ &ÖXk~>Sebd2=8#*S?g[=ʌDvtVr8SE,Ʌ(\, =PŁ 'u0/P!b7[z(15CF|+va3t,{vd{θuvֿ2n)[}/3ԏX+*|H=y. 0]ws`UC@ѝvp73>SjSpӽ>{FNWfS/#4NJH``dLRf43e/$$ְ%Zwﴥ3kcOQc5Q[\UH"e1KI[C6]3r#kU+r1lQ_^g_ 5*ta-CkL" Tpriڠ-g,@5j9mg臕X 1Y\s_~F<'Iϡ8匓r+KپH U*c|ط4ڦ w.G=7!2>4%y%Qg4'ꈾ0#GZoi~e\x9X]9d眂i],;XBrbb_`w J~ÞrFxp<vbM4>CBU T'VXi 򢃰QYM!V`QQ==R4{sx.[HuBH1(<ø=yHCU)WӰy?ϧ;l&47)iÎ8H- H!VuΓ/Q5,clڜy9Ha`Rywl'UtVclL}L 2Pu& >]Ϧ{zv`)(\e{i|^ð2][i\uc-S,peoQf$"3MOд* u3*EVQӓsE߶e(| hOCχ|P;[H% vK^eEN< 4=O/o3S':V0|E+ i,1@%K^ ˺`S 7 e'#~fOd75]O,zean~1ny^ʦdj<5ݥaGtPɿ?\|xPp,f4wz_zl7c;zԐgf=e{XX*H%7J^;Xݳ4sZ9p̨+cRɎiI T"zA |6_׸R/j7Tdet!;&H;[jrtO؈TIy~S/$X}%k,Ȩ|ʗtb}gyLrUѼQq@q[Y"m !&x 1kσ(g,luh3 D}Lh^Wn=bW SfeG 6" Kg*qĻ!~A>&.ŕ~xF6,66b6ZAE "?1x{LB4_J\J?pwt1^Q{6Qs8kEK } )BRcdFG?.oF8HSm`(9D 6YfsۺҀԺ}y8eKU753t _H6C4\+UR Lm3Kjdγ\ԂfR6aAo%tX4yl.E ^%wq )y%"E^MpI7pb-?N-χbdv͇VrBlTCVV6CJڗV Fق?` !Mk%S !.wF_w]xXMǛGc@B_0v(Gp6g;BQ,fO.aAVea*aVuϡF3)Ào_Py13dM$ttUu2OE#w?HIpvk`#n,lC$[ '3f0EހmM[ܢߕ Tx$z!^BILkG7*T.ypY.:`IP]oTjUӊ+i<臇z;!]^q#? ZJ/i㯝QϢ%7iG^~#WK3mTLoG; dpQ04*P*t|*"I˟oDD9ThlT{YE|C3_ʺ,Q1ZZ| 5ťVQn龘>EEתt׍9[q%D`܂8c/X\C PD\gp3JݐId[hd;"Am]ڄz\/MEٞ :mS@^F󙧭c`\ͦKn Ibɞ0vٸRFSw؎CX<*)S]SˡpRC3.6Zw]Hksl<~̔):M\ {,546;1wM_A, x_OUA#j'5 WOBJ>sEWhhg1"a$R۴3ʩg-D3]s䀤g9jRoR\TjK^ʃ"}: zg2y2%gm|hAjU#1 Mg=JPĝ # *S*:}>k\;"֪/$ˣ5(-1h\wnxЖ*+^Q '<(g)gYa<@%nZ r@ǀ)6 ܖMhWT]a3!ϋbÏ\us?5| 6, 3jrTg3S&r1'Jhܷ/]]A;lBW^Sn*q 4?q}RIT#]=D1`lKP!pQ08h ":'Xdq\J%s B\ƉeѕK{#1_?%/# ~R eiXGCȈx=Dza8wGC2fY k8xPLVulK@ g)xV] bȸa;O82HX}V` ZiV hO Ֆp!$.XG*n}^BXsjFLYd> nr5%?=q=DBP)#8Lч|Rx~23QW`\4my,_Y^sĄZ QeqxT|L0?|H%etrt zʡWGrb+ 㨳+gl5kv=r\;AvFc1vfQ$b47Vdz *Cک?)'|z6 B/]0vtEQ^ ][=ރ0[{ʶ/vKŝ.yI^kG{, "d$=$ĥ)ݖ3D} &em1Q.wU(fNvBRx q`IBl0-S.)V~dE>9u<}VJxt@>q'*LW AR|W&==#}@i+N(׬a?]eX(4v hcyQ }Ͷjv UFꨮdk&c7!v 7 |r#G+p1\hc6j*PV9 mhmx)7^#ڵ wXy[gRpu$4{ |fHMhq0x)+iV7h0vR] 3"º6ࡉY4>ANZ R?6J yvXyNol5TA0pE <b:ڔyo.#hZ=~q'`\ry\߂X߮'ݪYLJGVo!\ݸE Sx U?.e1Irb>#)hR$̇NJ`uTs5(=V>qMzry[ ~zdS6t2@75Զ5q@X!߫f<) T}P 8 5AXJtZ/9 SHh3nrT-A(fd'C߫LH 6U54}vi~Q&PFMvUM:xzS/Wq1x\AQZ5G-ز*f M,(_Op鿧Y\ 'F`5y}w%QQDboPqh\sR)T488yrW1I]Pl^cSƿnO6E !(o=sL l}4t%tISdBZ`Z9CudwX6K,1h :b/mtw7M<]6o^Ul>( ѹ/_ r-8z:{ JPEtVEƃaVޞ5l{\M( bZ1NdFQ?JX=[=Bsh"=@Ƒ;:D@a!M%%!&✅j>< JDT:ϰw4%Nh O~Bx<9?K1YÙ%6rzm < \u7(C#%ZpSXPL h\oʺM(0{|8D pfV%s?_$ƚ_}Xu_Rb 6_=-Ŧz&|m7"f mV&ъu@ ZJ3mYcdG;wM.s;:q-~k4qaߚZ~l\i)Kmm@)AP-g'lJ3ϿFNuC)Bh=럍%r-P|?Rд\H.rQnXp(Ϟ)W NZ'Rs‘>pʯ|Nka2d~~y s!V7ݳnq^te]"ŲD|#V 8W-b5-%mJp;R6>*4Q~n&zMXUvt|ks8vAGαN&ͪuw ,DoPtm1C8гܹ?QKQQr_,O3\&Tɀ9j]wu~m>x M1]r"m|E|8pPċ3= J HV6e8Wy\eXHD,F3C(.̳n,)0>y.%*2Uxb^hfGBG\iI6hdEQyi#TVy=Hq,̦ѡG4T4qѾ.@Oaא[g:۔Fw#gI~ u؈>s{Yrw9eXQB2U't*sjA^$GpQ2EPvׇ8uBpk}|b5&t6VCwHg>OGbGLeQPɶKO[?|CjZ /Ԅ)aѡFsgPb궃d/."ktޞٜi%4+;,Tu}߲>n^@ LrQaczRN'+%!]ОG`uGgZ iu3/#}RHYJE;&6܁9|̙66j $oHe6_9R*Ȫň^_lȶ{;_ltM j/7Chyt)^.gn7 ZFref ``]q3qmN@G̗aޯLSV3O^t ڡu eԁRЦP\ xU0We9VcYkN"~7!zLo`()7A @xVu] 66[oXFwvN怀\Qcs$0iYt1O(O`H|$Mjt8vwu@~Ơb\9lل؇FRx-'BP ^acۧ 3KwtjnhKpT.(m3 AK^Ǒ0<ᣝ 4a:_lIٟOzrě Up:\va/We9 J\SwLcɞOmRC{GE\]U廓ĻUS|#Xyg,v\u:oB"G.D=Ԥ'߅t"1 ѧu*P]1#fiqj\ܽ`2;jx!~p,67*5 ߕ.'' ^(tw}ѭ$L3TzC.6Kū9?[RbSԭtFQ K໔BPp 64Ԙu!W4$1߆ R W0U? Odž՟~̻U#ډ]A̱: ,1޿u#&d qEIX/wp1RVI§PvX\M7GYo)} @x$HN; #d淊#~zz %!$nOKD/80z`\,'m'J h "K/pD5U4izYe1 5Նʄ)"0}J.X݋atϢvY4#߃mʟS1#轌c6r7CCl$-a [#|28%ӳN?Ӯ$Hi !sG6^^417b]:y(Ƶ58q&@"@^W݆>O0c\U5k4i6"ǃ4sUD"M(\.aiަأS ?4QޛHDQuθ o웟Q یޏ~`▨059HSʰ',4-nde Rfu)٘|sW4ьUAjBrŋ$Ѥ A.[q(?VglѾ0?fTmW_CBOn YFA>l@}Q^ˬRssʲI}{6=6+MNvYg>d/$G℮ȹ'Qٻm|_>ʇ+ E/ ($mmεe0ĞcIs̿lf{zP1t1 ÛMh:GaGMDEmIȑYR'J%]"y4teș1@=/|({AF$QܒQcɼNrJK3iH& yv9ejPZHV4~iaW|“bpfKg޶-<y@&KioƵOQ'ِ #a]bYFgݲVM+wm!oL/7CW骃@X ˜r!=X.ΊMiS Ig)9{S&4GRΥ2lr(:vq)/zgjA[yz=/ڊwنnBPRy4~)pX=r-=phi3=ÌOʚ\ RБעF[rbl>ވ› utu+@jӆ\PI.gjߺ_ZK98k9Va]%=j-L P i)1y,>f+Kž:baߘiTBƟ#<{Qu"I>pfɒu]~+9Mb$ ToS"\X(! Þq5m[&v% ]!x0>09F7R5X4zޓ\YN_gy@ַ)F+ۈ&g6Q RQ\UCYIUG)ɽu νQHB9*EI!dMx`~: rffQKf SMW RER~ ^(gg+rO tc$Mf=}~R15ŬLhCZLdZRz K#3Ewj$N&^ $k5^d'=@_Vvl8Nׁ<*^Ş˩WgU ;tMϻxhY0R{ C $q+hTUnuFdDvW:XM-'Dq1Di;y  *Z}O3Hӥ7ȼ>~'cƥ gUQ| &(}j}-$̪͝vjRx4sѰX4x`JOU65 Gń2sX*i~C~ǂ,@+GMBw"?mQzA6:d0iu3*6v W(HEZ+B+\.8}mpˌhÈm nDdP?},&̂PΛ#Bx}jyD>5{%BD3 bK\nTm(U&%y80}Ӎ>`2tj9XAn4vpmX /0`k3{k` Xs+m;Bzٿo=& f:ZOJGq;?)-3+%*;ãIB Zb/M0Q\\Q|WfpA%I0>gNc,'0^h3P]7Rʔh3c/ UǍ!=RǑM>2b>l=5WVZ9Ƌ=r'ر'ib8궀o9yFDR3l5fOTf)ׅYo{1G2G(Kc?]?ZtR̐͡Fy-֠jaD搢\Nb9ߖDqDA3N%%A?!6i: )1Mw7<%fކ=B^"D'=@`#X?Gd aN:ȍb `MU Րq=}(m1"fj, |ň$W-I:qea[7WG_bn:g/r}fZ 5 hHAF ǯZ&^ܔBTPrzunl$J|k~n*\/ GS 93ǼS:*Yse8|fQ^I?fB:1֝9'S #R`8L ˈҭq#tM lxB*6$JuN+Tӂ [ ߵQo*:{|ȵ:ӵ`qeguPl܇Hʳf7R?tG^ "*a<\ƫU s߅92!Ukzq~8x:yptAY+"^"#mS+/Ƃqq+. Q`'mR Af'YAa 7,/JJ/eJ!M"5SbP7/Jk*J8DZkzhS<8\h(w. ue-_uǚưP%PՑQ|0KtZ9Z/4Ӥ*Q;C*N vnjj~etbnRM1ur} |-a ۈ]wIȻ~bĥ>Mkr\٨0zʻ~95mRȝ?`X#F)k>JcWU9#8 Rߛ`SWi%&r%˾+E%Mϖ|;gsۤZN%~Hog'+ nk]!~XƤ^e=@G<ɓ"zPI:S4<%)aPxUOTi<[~R(r̬%&Gv^*0uDmd]LnnSI2~ii[ ^s!&;(Dҝ4UzO@bx7)Up Jg̠L>A+ġ/ _'¨܁鍙; Ng%4 ㇈xn#KyD *ؽ, "8j#4UXGj/5gZBN-Rx㯧 E.8k~ ix?=Ӂ)_]3$bq7ݶw2D[D~ < һ8sW\b !rf-yU,pVխ'TLy1 g( 3z#fe @O:.]0S KMȪ脯t!XQ$K/ChznIuՊvbkbXΏ1@z6܉{Ztd4 餱.2D\REs^gk:].\zgiW,db,^$o@]7Ĉ H}1E^fk%kt x*mFyr!RǀOg$Zm%4; %C]0T4-fk:+[? iy)x uRuMt<6Fr1䬛:WDIJH[-'_T[P>K7 30+Rl>BKN9Eי"n=uE;ܵQKj-S,1#vKӍ {,K|'rc Ĉ4)e2#:xl@fw.Uj|ؗG8KE/siZõg6W,ֺȬWޥ YO Nޘgyx+f7ɳ}$.t??UE< ƞgfY\4Io#Cͺ}g4/Kg6!;!ak" ncA}1 bzђm~}1#,AZqjρ>ubbڎ?JxWcܟUbɳCB# \7ɻ8D43WHrgˮB= aI(8PkhRp bF#THسwG̮;w:&~׾)C)16u}<3 %k#SNmKVKʭ׺$938fMT6f.\q7 Pbf˰rcgl? ϱ*~-OZu'.cEç)^kU/ /]v5BE yaY9 ( 0 )^i#5e ȫݛ--yǟ,suYt/+s5S0Oal]Rq r`UTw |uE(Vߏ5ˢ&̙'7^$$lMwqx{~/$"5|-$7_ NJ@P IXP2T5D~.ZԢ'jy'/O}YNH6v9ce8h#$|?M(~~ "'Ɓm/+= _cY?J= |btnᔭoV&uX}TCЇp}xEEu^X~́2臆g[~\?g$c<ϗz6Na1H2 zn~Vp]9|g)O}k1Zm[]4B(2&x: S@ )G#Z%a[~lJ[ N2*Z\ L/=>l83` #u9nbL<$%¶g w_Wt&(:ConUUPAPeS?uBvV.RVmM3c{XvCFy#P. .Me; N,ҍʖ//eȪTqˁ2M-6u}$`S;/7 qsoe[uज_9a 9ڰ2k'`~tTڷ]aE|~c;1^EÏЎ6qre/ _ :O&h,l[_;Lv.~( sgꝊ/R0A<mR ơl+'*ޥ p 9+]3YBD^VmK+Q͑(B&ɖD)ȥg' 2ٚ|'n_yGW|.:5"W#Fߊؐb*Ze_[\zM2nzq@Dt>HIXaiQ-q];@Yة6eb cIPo+sBBk@;fMʍE *,6YaNb58M'fSBf|&Ma7R)D9`yx_c(mYeRƻaϖ}*%u룘1NSx$0 M0*ڡ^ $端D0Mtu&ىa ah߾T#7+SԜDsQc K$gj|$Q#wז(ŚՑe=kAMt ._WK@_KvJPzC?Cu ˘te঩Oi15|v*+zǤ%L%Z/` >Yȧ1]5B,0U8:S>JAm\iWȚ${Yn8bOڤmZrN R$+3ܖF-ng!jA  :`W!ZjW"fB` ,I~$3K9WT-R)-rK-_gWvrE N5,kFn!{/;Or_ryxb[J~C97^p 6QLREǽ,?GRՅЊ3]Q,5hجFwfFjv|75!h< 72l u٭c^M*ظf{DfF\čL+ב&m/Ij'd; m;mv"B-cε+ع~=V>fZbp`Iڢv|+ o1O#J"U:_ɗf~.v&"rIτ}fymXС`|hNy!$0Ddā:ݙ;C\$HS- }T)A!\;Th>G9+"©咑 ۴{u;Z){k>{^ ZZrϊUǝF$cHk%~7ZCTSIRDVosSCWvSuUD&`rP_)P8\}7X}\Kh!n>ҳNlxʮ oy۳m .'6Shx6@h.kr0W,ƥ:3Hhr/}.ng*m,eD{ wǯyV5,p?cwG@cvLBa ;{f1aC :t\7r6{WKz;qg5ut_Q@א5YڒnfnAY׉AX[GTfA!?þ7ka/Z+*aY<*$כ>71)˰ngx#кB'4M?T3"Z4D=Gƛ) ,X_'+>V.wER\zH7 }t8݆ھ,R#Ao3!<7ȏ|m36WHhq":U!8mʔGO\ PToyσ*SZhJ\qqX#eb-tH2:'581vvqwIy6?/6:/J72{͎f㲩!5=VaDo̤W A]7$ ~l \Å[D1$o*1ON1Px(r+PG8ԒAtS\LFv"&C'SّK='b wW8F.8*{'cwI6>`]d)zz'UjY[LtTKn"1H}U=v"UH`Sov% S~WAbԘrыs H)bhjgms(_6*e$N1x50הu2Ӷ3Z@^ pEEi䳌4@l ˡ&Hj^O:Fˏ[(OThQBebzRO g="Rws~эݫ#W +65aA7Cύmp;vj0vYn=QnMEp-r%[hyT<)J9u40&2b2-)+?):k"Tc m`o\N? jL;4=jtN IRJwW ?Tu!<&w.§JL-qܚue%+x"t[yOJXZ݄ -8>;]6ıCu0<Ʀ}{BTaUOU oEp$!2 GAS)$]ym+h;I&A#&*y79KL*lflȐ զ TSWS R? Q)MnS0F=SFVi:NQ 򀂪Q*L~GQ?-o{\K A5qƫ} Z(GY Ivm?5'2d#_Yyl<*D6h/kvH!jӶ$-3ӳ7 JJծPccqZC>^@߻qh| mW-[n|SnEs9ae蔨e4ߖ9\3 ?`n ?Hfw ٿ6%z`9sLy}Hr$K_߉5oURpGhPOh, rr$f@0.]NF%>]nB+)/pG7ą\(_mf"/vCr-7[ x`sJE.fͽXyb~A$6ѵ#hyz^^+ǀ+;>-ԫ*.q9LJch}N.N7M@0zKqd 𖖳 * NfΫKlNz>//ΚY 0oC۵*J%m1M/k߳ٲ=Q0% !f"y.lI*CoJz$^:Z)NWuwzFOIۯ$0Z|u "#Au%亻u/eB:R 0![3nD$6BOD0^2Γ[ RC4XgD|-cdضoURtUI(҉N&?sъ8Lڒbc` &멕8ы2)'v͹Zs?Ht2\J lM(srDSI^ɼC|t[H)o 9"~^R hViLjyc3XqvѧKQ(=삶} tIu[Z+b20/|j0=y-P83M֗M+= o#N5MMlBpvH:[6n:~٧$?6-+,1KrSd%͆Uʟ*7;^S[>Et3EOx̷G=RUp֜s"|GoEܪKpQYeS^.ϫ&|qd%D{m}Ga9-L'6hQ85qmy \RktQ5: ӧ>z_ t_+v%="d8D{qkf _uIb#͍FE-et߱.A|]Zkr_`ktuߐ8!`~#Ap$)"A܃]mBy,cu%r5 {"ۿG5˓tGp@go=7xPP-o*̀0QrwcVkW]@T/;@(;QZ++Zq*,H?E&oKƭ.ŭ?-.z:iN&䗋a>kCQ8m:vL6jɖKS`wr{?%pzf.v@nfGR@O8ٞfJ0%y"6^p|d4ZPl- B ]{AU NJBgZAE>IX)C=D†M,~ Hy:4x,KʴņZRvPwQ'E <;oBqMN<|(w\68:3ta?u<\,l+o'5+J,jy{.2< l2|4abLugd6R;"*ռ)a?"']HP*,ǵY~,M: uߤԞ>IyEj+ 䄦} )I&C3 XTw[+l(L.0c&+ stcs%. 4Bl\$Coޛu7}@ώjzL2v~\Dbu5.vvX9HkVbҒpÄX!esM 3/\aq|rMЄڮ_'W^$OUGoUT[NҊ/1:GȲېOn]i=&ZMBT&?Gm?40#XI (,KtyA,CJ0Tj(P)i5Dju>Bd)@$"#Vm|D3,^K{D/[Pj\L*u(-L!wGO?NHCQte.91dcV/DlDG0&*8qLDIUXjWrݛ@[.F_BIToX0+Fw| ~ngfGrкM?hzB/C=>;n抓)(2a7 2خ4in" OUY+ !e2VUxrz_G!qi ~ I<ꍥk/'Xz!6)oūKNɝPP,~H)6}/Z5_ b8sOZ%YAciub7+5#ChcQ: J0+Zyfa<0I/:CF*ҀSsVks !,n"Z+.(~RĤmimj*14P92~Yy}߁Bh;+;bQSa.)7sC Hˆaaێ͗V`]/FYX>DY~^(晢&lϐ}XȬ)6v撢(qб,YuSfjsh~!SU(: S޸+HCK%\&k1V<25mqqWdң @zuw  Ej )J 4g&8JZLo\[mOS\rg;q4R.nWMJ|P=ـ`}H9:8FjukV5LۏJBŵO -v0HIm O9v̙ F?tJz%O %z{^:nRLI"=9^kmк_d5.L܉#-E3߈ ~7>[T#.7v1n 6L9_fel^8E2 t S:@]0A 77o!Bk+됤a&4vfQK(8c >25-4^n~qFzx2CE 4zd2`߅H$\ {'jDkW# E: Zse5yy/o!#OJ5T(IwX?m@ 8F36׬Pұ 7jc#|ۡn?V0l#PwT) " y"3̠`ĸٶb:7=Z)UI9 FfTm<*ʂ  `T+ ;pF1IGo ڕf8oUݢZ΀{=>q_Hoth½xoy?{r!^kjo&0Z%.gMd[+I Ԏ-z@7"+g 0Me+ǸSEij\h)1 TO)^D!m^/b8B@;WZ5촃I5#YIhIƇW^O'5&V'ގ&bY6#C$XxSPW&Z'ףQ}/qU "ĉD-^@ǺD"‘lN_n]\Zgez0 0}A"Yk_=h臎c}'Ke8{ۦVΒK{y-q9"0@u`Y r0B%˕5CAZĊQqԣw8+^O,۔"+s:ʇ'NG P\>s$GXJs8*Ei\Z=XLJM&Q_*+1zp+y/,gEpفҝ8LeW@Ȫ4l3wAs9Px(ߖ*:fLAX%'.vX̴-'l.~r6&,!^\U4Х)XաBs8Z'R?'Gw=[b/52kJ!gGjĠ߸eKϾ߸82e=u@Zਢ$j;z6f 1VvFېq !q aG@3I!b8.w˂Ժe+ R#&QO29]h)bx{Io &PDf]2W/w'l"XA@$I.Ѥi\I.ڣ(y$O𕋼&i,e鯗6f7[exLyPu>U F p5Ll2hj/>#/>&c+PЏm5)w%/Fg c2v|H9Ҹ hNlf):Lx7^ݯ\*jXG]ms>0i$63o4aFkpJ@|H:F"7`j2ˁtا4bEɪ Gwa"d_+إ='󍪨C]]U &`tn޽̤:5 cz*|x[@PƁ4UROƏY2Aw.y 'Ķ޹}sR26LR \4_|/!•㡷&)wxo1審eσ$" 2 O*\bRJx;\J>ͪNhBԆmf[b4SC [g@jD閞2DԝjƦ #^,%? su'18/Fuxcc^7աgR\;I峿k%C8 ž|FmZvFleOp9+]Q= 1veǪedTڣѯi݇󓫍mmW/ʤ7m->6!z0I y 4Dv I)qFG*q`%9#%sᮜG6#.zg4!Et9t5мiѼu4BW__ц;Dw5˲ΒsHT/-H%:i^yb("m w͗+\ػvͫ܏%JԳk WF9kanep`H%7(AUw+? dh3:& /CvC;+4y_~ۍ4y^O=JSp1ճs q' IBs,,9Fz!3!WQ9D"x8B .%l:l4#IV2yYiFSQ[P.r[EovT;G:~FM5$j6{Şx1qϼK˫ o ѕ&|v.-ho{\voՙڳ%S߬m"_g#R鮍idj]Dec=ʁƯ84Q<^2C*§VA.R`9 x"%P1 eKnd 6ynvt:%Z+uP(O?D(^+ΫW<3)@̜6=:5%H3K{tfðIDv y[κ^"9 tj/^2qYյ0W6i%k 9 4"g*Irzs91Uz OQbS{6r:v!^H^a PA8s$*Xp4\coQ8sIy Ul^dv@!"|; tJo?2C,6AV0x,!@+?|Z* 4Z`jaaXg]GvUIxg7~Ԏnz V,a9*ґƚzkA DadT~`Y<NLOyߨw _Jec^W6u/.F4:7K)O>GػR#>1%A$%^vЇoXyA;qrq'JbvxzYký-MI=4Kpԟ;(+?ţ\S` gZ2\\V8mzB~Z@Ш` D3Xe0քl3BB*A5b MO]&{\:tiF-5ke쟛L!HybQq nI;_Rr tyHVa) 2vX K;$9F'(7J[!IA5uV#DR7}oE1;R64f/G@/yrNzSjJmX%YuJ?gTDKWwYj[Uf E3A1 ʀ~$h>($*9'Kld!{m*hQQ_oV)3Bnu͍k40H'(sV=X)a?YgH2wvep?q:˴Ԑc'$@ 1;e(|KeOG~rM(ؐ!Dٰ2"7"(\*?ar}d}R'Nz2R@,}+Lg3nbr$ǂAnOğ\0Q)-lI:B[-0K|[S7Kl`A6 w|;7 h&ez4뾂Wn LXou k34YnuK>)jË6Ÿڥ\dw -?qSj) (NoRr+"_8yRw˥Tȗ֕/6`|zRu ivf/nAs fB}`EX4qVdiw:[8% [(o|ZϽ=Ǧs%{"8ݠMNc 7/36z}&RVJv93Rx\]S>?;#vŁ+T{`JC W\&_MXZSݼgÌ\Z[`#|[+[p3dqR\m8 4_@n@+LFԝjeRivcT`}y `RA鞵e:[vע:m r ~}l+bIAX]ȑa/&2#-vb/=Β3@KHޔߑl=׎{Oho~<ZՑT!,ZEYBQnrð"աSe08$>}$m J+HUֵvg.#d8xZ\ZDŽ,P-t"uDSw/imC2qI.R\ Ex ajf U`#酊9Os pT z`W_U3>{VM i{+G{F+QەKV;D#tfÆn :2RY l;=AUXV /KcwHNt*d/a {\U[YZ8 ]H,(jؘpiW˙גO!|]1.U+!j i61'5+dlM.ZօR>,Sxp֚>뾆B+/2+R'+ Кr#9%XYL#H/GD+G2+P\!Cm~g}6[3t|`ccG_1ѩ}4'̈Nu6">iRΈD%*,eW/{Fz~^kH` 88EOupp}ߥpK?im~˃ j>eNz_]#v:nH9}!*3+`3\n8eK%8Rɀhy 0ߵA T#/ZE^h=D y 3IH-q}\9O\0[膢[it6!_g8[$F)imeuS B+D4岤:Ѽ;(X4+…*Zo ⒱3%I3bH4ִϗi_UOIQ_'m>CS&?>v:{2gjcԗv~伇ZP+6(svi)zZ;M"-4KIbAn"B+ݩZ:άq.[&`qtsu tf" ,y _ z#y$ZTj& N)I#v%/T ?S}}z3f, Ny>UiQ1JkpB17W]N( KVky7KZWaKТr49-G&0=@iWQUͤV5N^:75\f֚XnCRKˮ`LPclȗʲ&XXh#n2s#b9Ed8\ m܁FVnwet1pk 8eX JSawcFԪگ',-o$sD=OáxToypVZK՗Dt8!֗+c!ۛ׌C9JJ=9B̯A$%W4B&p]MwwM{"6 ]c(+߯>uS=ܓ~ k_X;1 m&NXk'Bz5Um[z ,] p"g?(xki Nwb#[H]9V|npG[[s2Bm |j&vdRs<GsU2YMt9_ S|E)oUk$v|jUf{æ؉]JhL7Rx :dU@ 9{?4qsb<49tfCIuWtm{!d ZO-I'׍B_8_UЂ}(PTs#t@B*.K/z,A:w7AkSZbɘ$4",syw %Y7$*gGxH\oi*(<Ӻv`Vh'^Nz,V:n Kvz Dpܤ|r.wBR&7ThoID5Ι6^0ݷSިNHiJo?@"UUB{FLr]'E1\*R#&TlC_hD/qU d yvcnޘ{^ZJ?0K $ǒk'_ t`! Ѳvr!sG}uPwc ctcE]C&'tOsxjxra)( #FTҠ!8ߕŬaJpmJpG1AzxŘ CٛƵ2qȂ'E}o^_>^H6fް:7ЅE2}/'+|?pgSNn0DC$Z2.;^!>3KI8ܳ2Ut'^-ނ"*$a6R|$}w9n$1jo$q&ϥ-(N9ez5tCnÖ퓒QMYƓ2 P* t$%q~\.:N{y| cő`v92I9ͬ5.gkoOy8ta$[-?k [xoCӗFJ0{>кrcQ@:I7`P;F$S$W}H E/ G}H"B Àҍ~&ݿW֌3_riMM%s83N2 3 lƔL E h9A{4gTJ"L-TV6 i?Oe0Z5yOmRh,~ishn*㮂Hu 1 |i!acs">lsZBw?V[EzT4(y?l71Bca8ͺu@cq/wv6<nsmfJgUNTd:cspDvzU(-fqm-~XU eUMp!_.߁}[sa8!EUzL#.-7Ƣ G^`B'TKHO*i\#dSR#'gu`&0TpVq $Vl{Iܦx9+|׃ =ِ"uo|G.n YN$꣺yήA@ӆ-[׵VNS6Z14& A)ʏD0 s)3͍&GJ+we%;5t.6N,8+V@\ClImj,0N6`@~Ն2߳0 %9jx@ q^$ KB9wb%",>9\FRt'4oxzfUMT:&sH#wi5@P.w2p[[1yۛS6bI@qX%?>-f{R\;j׋Q(ƼГza7aEf<"T:&rK͚R#]oVA4Rx",mYJwTOSH<eWD焂7rAsi/JC[TK LհKܔ#Ȱj?q^ҠTÌX{Qup]*ȍkn^X=r(YZ2d/5mޅۈ&FR,agE| :?&K0,1Xӫ3^x#wy ɬ.nfiull1sE_ Ng@-v-[D M WH;.ak(ɝGJFbKn˜D:]GNdn VY9 ݂= Cj)Qaz)\,sm˶=W?>JZ{mGOe,Ч7auN\̳Mzo~@/)m.FÉq{1Rqu=q+ʣYǿIGǻm,Bͬ*l=GN](@K+h؛>Ns)-8 ;o,lR#iEN{I ZGønÎh7Ù':8o>YYW;'Ge-8"%ޯ|I%eN5K*hj땓!Pv."M\ $yfseX=A>@YF6+bx wd֟@-ﳭ=@aCR)(󪨔0+)@t+EO%N,%#O6q4*EA^zX3 TZ╄|Ԛ6 T6u7&4 $ "47nIM#k0LcwL?O2 'cvk7WC%Rqah9Bp71Ӂ8GO&:GfbP7!V~)r|qR5l4!SF`^M܏a{+Z+MhϸU" W˼=t1{Pm2x V'c_'>% %IvcR!S9~XV]DG~^X`:ݬZ^S87Su@/͏x3fawgPrQD"t֠U>)" 2/2,7˸uq#9H12P%uK@9.agvŰ#Afogu(ύ-,oϏ.$|;b-#30$t9ͺ iC[x|49Y]6\.R<4&ߌFȜug5=@3=/;~]7ẻoa0 CviWGVub.W9ʸZr9]m ;s%`AXg&1] o߉=? h[#* Ϗi~^'Q I-a"$E#GwbC5`,t[q2d!+b}na _u&VGf`?I3A u}@WN[P_Q,\\pNnjgRP-/TM06N==[o^Y}z4O"=ѳEfcک>[&քnoLSyky.TXQér2 6ULjf"PpI 8#  [̽a{ы l:m-N MNAD#p*/r0NbһKsem!A2r u4MWϪ Ҩ5N aoX:y~.(R~@ֽɬFpGb_Ҵ^kzg0G I^E0r3^UU zhW}uُL`8#DO<Ϭ=>Xm{h`IL 2mfȮ `{f/f5-W\iy!o^< );} YcՖED MRj8ɿZd˷?ޢJG /ԺESבݐO]jRȆ17 L vO ;ckjN'ԚB 3)2֩BL'YubeUMWz2LI5f}oSvx ˢh of,RziTY }:,ra q) .z8Km{V Ql^o_Zc„F  hJ$#SKY񾁍MU%!>a'{~ռR΂2+:Zݭ3` =o6zF_PVKE/XOok6wYDbSYyZ8Xdse?ͼ^]i bpO^p{Qqhx9DBu[Ts 6^ҼI1Ug* /V) rNx5g 6j,nyÿoV9KU]\r># ^#_  ϷcZg#F-j =D2ZT&dM?r[a6J:nW cwI ]Ճ!e0 Y*)wHvЛ [$lT3VCG{eރdEo+N17\wFų{ZE(S }V.6/ 㸟Yk*#W# GY|X/zt'Ɯͽؿsf KӀriC!LTdzQ@7M(jI2W1~GDillS-OUc*"_m~oRYk^Y -5O Z-)uX-'.q~G鍪>WqxX2c %h*^29:e րgsjE?VMqUw2p qܣn`vX; cjj6Q#h,vV>ݱmBG臑f#$Eį㓜9/3y$Ϧ':<Xu ;؟QYM]E'jp|:)7gM-m1v'Vڽ׎ڔu]%F![7rd t)ղQƒ"i{H+dR6|wG0j?7pKZ"Ʋm·t?)KZh]^BVwvs׻ŗ8K*c<9қe2ǿ ݘ6=L63}r8̩V;=SC@2 ^`*0?oL"HTjKb"60;FYh/RDEِf',ϰee 3ĒFd6Ae0Xi+ݗa*0s6Ѿ4?>s7=1<9عk$h҇Dt^;o{%_H*-A"\8‰!ԣ)t7o-gxPB9܏Zj^?sl4/!]!Gܯ*H0׊*BߡWʙU'btr UPmFitSf~]vpMxLFЛ! !?m8Bp YE C| !H_.>l\#?NoLyGRL|?qȵdkwJt,ݐOӴm>hh I^z"=e @󧈬dbB?ԛ;GL.p15)<,%%. /~A]$66'`kXp.Tyr/iD,]3M`Ůx W4$ KgBHX!WX'2p Y#FKBqfqr|_Y|0n:|)π4Qy5(_29,,|XH[9`jv N42wXJ,a5z|Ve{1cvdMm[Cy1NR-+//׼ kxmNv|M ?v]vY e}@9hk$_'Ii1Yr&.5 7 r'9Fx[%ijVi REv0G~90:en[fn-@ZX̦aɑr_Tfo*ISXSw,1X$Hh2RˡZKc0'pe{+zjR~~=(3 Ds6%4& _I50T-YNL@.Ino2wZU|mwt $f ĕ$M#]vOU 1 Ĭ6|jgU 2 !|7FD8$㊠0[W.ervyQ&|M%ohN:n3 'yAeۄX8FG. $5 t{0/[O\Ugs: /TP)į0 zR*H0K#buo^ Eiyc2qϟciE0|jݻVPoOaKVS n ڌ-Lw=;F~(OIq kv 5uƾi V=W[çd;ZF܅ gⓛ5XKvp#odGv¨|D (")pB}\pRUMc1$[GA߱0 ߹@<}o>o˦]ҞQ󮧄fYyMs2~Sx> 0wsXʼ0Pri~BFt|rO z? :6أWRBfg^^DB^y" SƎHgFvg.Q46 V%ƿ5!!fDRX5L%醡\v`ǥQ%SlQ/>XXHWP~{tW0˶}}{\kF?'(&E.ʙf QhX_Vx9lw,#ʬ:gʓ:-_ܢ pVV:s=7gyNk"' }B(G[?ԥlE e5 eVh" [R3iy]E[.U?M}АаgYYΔHTʰG, e-{0|`&#GyJ5IXL -'Ft /H)򄔜u1 S,,kE-Fc!Q4j?xfKT}qX[ff;"h?؅76[jZpZcEvr?`!8;ꎌ2}s -iduMChR Ἔ'G1X!b9b8/4HM5^ 3g7궦; bUIsc}-; "4A&I`ZՖRoddKl ~:Ї.1a CX@4IO7ȶfAӱ_&_M+DkDubJq%8;=V͜aPM~'v);\#uIlڅr{#cC#)3秹R3E*bΌ{tO]DG#L-ٞĻ@@%t^&-yrS+nG 1ʧn7#vY!$pIPҍFe[rfBEϘUYqDG8XsζhĘ9 51S;-]=y?ZlU畈Ө)1 18 #bNXcR%pb[؃rmVH T@nn}&3x i;ԅᡋ~4X:J{:"ҩP/kD \d=^ "͕!M#.k"ҩ4S#arH)ZuBT(6_ERT?w8/郛DAb*\/4 JZOu) #/e [^y)$+~0Ƈ-'Ii^}KΔߖ#t(#w%\ 32x3Nl"ԏ[Mq/FQKQY"5U)N*ŋPNAN&?:>X.^S2&GO)N0TBlzKXQ&2% i!4zɫiVQEIDվQ4`K{,i&pf aS,oTh,^G(>V ߺ.KX3eIn|԰-ƪd= @8`|Bh[ӰSYcs$V|L\noH_ zxoHixC"l%-,u^D@EiUx?)Gm%=K 6Q%b!H#cQYit>CQRd0 6WbmK%Y:; nI{DzZ$1)G9}7%7+1LPrx"I˴8 Fa!۫rm)~qfpߺxՎ`&#a>R=G )!}p3\N]Xi L\ȿBjj\8[m9@)ѫ ;Q_~}l R"J-:t( z}OtuLXϗl鈤wc6yWv\;b񁈃5ˡ2篊ajm"vS㐂R-*;7yBGyE^ ,q~v)P`RVd(%` <Xs{ %FwZȀ%Pda q:F\E{Tf60M}(b;1PL}IU vE:5lb9ޞ]u ]=;LeNƀNگ/yA[`r/p\Q~WAK6(HwŏeRtY(Ԉ8]lN"$S;xGt]sA2Rgʾ=–+_8C&9eVBB?&ܝ̃(o8SYs6Nl-]hdҼsKɞh9C Y 38Xc0gŖ,s,)u'?QȎ+mA|0Tc B,4ER lǫj/6l+ıBfoz6,jKX.mZJGYf -I2yfĘS6Ts3w!5Iڱ?΁a1c}IؤI\o*&pSP]W&{>Zɇ)cKP!B!d}ȍȽ]/1& b=&rZVf#|/a|;9칆`md|M3M@B<A-KI: n@8s h,y1"8#ė(T,\"ȯhj4'{R@ٰ#̅[zu-@21u-@2%[664ޏe5TW̻)!"ӈoPsmV}.$Au=_#CYR*Rl}A&v9Qh"IG!B6D,@QQ МL#(Jp;Q̸"G7/YtWP8."WJ=~ =CP5𴬐 v DOe+#[̂*|yQ~OS@QHܬF5F5f8NK=;ik+QZˡN>"ůQH=z 'z01Q2v,Q*V3^t[VKkÄcVzZ.-->N``e g"6l}]/%?3wVfܻpMzts+k:43RL3({ieY!8%`Uc3{nO@y&>n#[BfɂGd|W8@KB`+l$okǢ| Ǹk{ N1 _'t`R|%)DtKV2O@$ZO؈1TPjǼ/M͓/o$(&|K'raM*oCY3 hs` þXbs W¥ښ' ??ZզB9@Fy6agV/Iuݓ~dBocQ)!TkDi ۂfGrLZ$uW>Jd=>`"`LD+p-%ȟf(ܢ^51_Oɹm:bTAtֆI!x}&4ZXɇlX,{)1rU\ϱz e%2 BG./Vzd: A E Rv@Z$,$U0Es_]l _]P K.)oL04d ~%jxmՌ&ٮitF&:)쳕C>"PY^QTK[X*>,4(r+?3t2 r N&JbEHRfO%0B.SEGi"`B\UG)8w!DP i_l(Y.VRhkbM,&OYxRVj5%P<֔`>WTkMƀn Lɣ8OHWVإ .;c,Kz,6,OԶk^KEW-"|]k,D_]H*ެ7QLʗ5]r| 7%ص ^=Su?~ʮe4W*T#'%?1 P#2e"jD@K~uѪw#79/;v,Vx}ݞ_ F,+s sB?kOATJ鍺4{J[lS ҺNz2[d_b#dkMs )Tpj̄`NgM ބcH~nb CQf_%hܢP!ñ枉tmլA^wquD +5Ҭe,0LT]jb:k iPxIqVx7k=:]Wo/#\dž7X>јzq5p.&qDlIgWxN{VP u+x6H,lOBLDeY\x֢HyZu+ Y6)4 ̒$į:ri8iWKy_B8[/BCњg~XyzF;A9sXvIE2"{7,q Nmp13 CdsY@<X(JApˍ>2}pKLbNS!v{a0F7{bǦr&=oy~*}&9|IAeKuRk+4n7NZ((4ս_šcJzj3': s!O$n^;l?tOMPϱgrD#ⱗ_ϸ7$q e>_]fCzE{0\?۞@&Z!-<=eyb7R|%s#jԷWyB/L=m6i>_9(|̀1R Z_)@l>?P%D!`ԆL:gr 1JvsX)ԥ8Mg@ we\0߳h%s Cd!SHe Q;`3(Y3t05Ocge1Fѵ?v:j`^΀6g_.XJC|pЋiH=h8?)$&ԨD{P~"W)Xn. b5`~y{!ჽ`0/mZ7@|)2r[fC~[Q%.n}^^ #ϗC>4ʌk?nj!֫3_4 Eh Q/K-qZ#3zДBv ɀSAL4tUQz'C|Buqꙑ& R^3L:V{@JmG-pM;J0`Ef{4 B#\_dq \)O${b f}FN5؁m!u@-;C!ݶB stBEbrŶn$T)7r)n=oLӉ0I1JeuJ\D/6ҙAS!N׌Mcǿ950Ilڏ4:hiBk2YԻPlI eF|yb^wnk<8KO54 b!+Tђ Fc/sb܊5L:|-BzXYg] f 4O`3 GL:Uj1"_%nz-h'$ G%/ B^_uc5ly_5^ K-wy2J6kM /jnWZ*{YD(#\)6t9x[1Jtں>"yt bi#"AQԥ\94cَZ>IV~]sujmͽm>j) ?~]$ÆF(T);gEw.\M1-DI L."uߓtca s 1)s>!u:/tV1j Y1}Rr]QXc*?@ rd9.{v嫝=DH#!]*G@TvXh5: k{n>C'`|q WyمF?+z*VZ=e%X._*Hhy"B7~Ki3f( {rfyzY ?[SU==w'b_6%IyI5uqy*;R ?f"%rBYc=Y u_o ZL^FiZ|hbI&/xGX$^0^[3>MvǑ}HNe"Z~1.X ]hrQũDaN8YK]yX?y5\Dɜh3ѣ(#<0vt%-NyLOa|B* t?GOroB|Pq ZW*"KGUm⤮Cdωtv̦iQv8+~F "_KF}J[6Ý)Kt6|.T'a{($89|^{w6]b9.c\5_fR0GLܵj!FA$;*ehx*]Qu#qtWٿp:AuQT wR'\8P\`J{ q21!\-3LFC :y~Lc1?iTRT;\.Lb!1W. g7;jQnW̳^e1k0:s7{#\CCG d;6DCtp,/ofzj-Nn0 Hqqzu=gnOp\"拡n*畟F͈ C.rL<>Ǐ+OBY7Hne:/'ËW̯'JOO # 4ulUF+W`mKUחJi|&w{ \=;!%\[~_qYgz?0 )jԐ\ଯ4MɗQW)ak uG=3h1:uP`ym,R:\mJh~'N\^M&FsE#!E3 \BIfl]ɚխj5̼44\f)h<\bf(K8D;d߫m@'\>ސn(j,Pl_^H*3+9`r" *(vl7 \K@ӭK]05`i)f [dBA \2)x3Occ' HWD+-$e}tԚ;&쏹*erkQ% $zV AyxE  _] FYPWqƣ?z\Q:@ " tv*r`L}:NY5TJk/&#ulflﯾO1ϫ7Ѕ)(>8P͋u?pΤ<%7&AAlVhs2~SOD}OB+0yD'S[~X,XLK[SLr/iP- ߈ ̖j=Zf]y^KRQF.#Z78|ar9SS\}L \2C>{N:ꔤVÖ'мTm Dʼ[xpnew;zgOf'O/"%$'RfAvp6NF.t/y% 33'a|HDQ~ZZi{{$]`صwO+{n,(s >~"Ӳд]2~{وBLFڪ2Ui|/5f"5W,$X=@ V ߈E3K ~T_ Y!W쭴mD ؙ:1Xue%j/iF+ _'J1HZz hΥʐAZ/_6*+j>ԼkiA<=#_ s*Leȯ|eDĢ4^J5(pnBQ(pRA"&MrU zFZmΥ=G)~敝&%E)~̮g= Etc~:7,6A*eP0ւYfigtMqkCZgzK'M.A^g8? tPSǍ %G) rߋ`])!^$[ /kϘ vK[Gymwq_3˒fL;Vdίrsd.UȐQ"=8kB.?쟐lwܹX_3,gǦl\4c`jeSI_ U_Le;2,"yS/uP6* >x^Ll]Zr8[k{Ta*ׯ*>d]'ch. h%|NTzzԏMDu<.XA&0_:1.'t3ymsơKʽ=eD{&Fc ^ݬ P*G0|vo!tUL#wE M(}^* z[mzY `b4pSXHNnvܪeFʧՀug*I5XOԁ % aQgF3ϹX<́kPN~خc/ ?r(o,>6a"~O|go5MYث G+L9=d5F8;wɳlzU䈍]X Й+w--錀<5o2d)$ + p)OҺe| x0QM _ErhBDsvw&6 SÉ5aSﭸWC賅=x[+U-gA$Cƌ-}6-+c3_F{Ej!<-L*r+Zq;%-cw[{ĺsEo NaP/d &6ެ+T/ ;L`0WmR+__!«u_`|״5c<, q鰓ä"PD*0pLbŻ>1EZY>%3].bF4Tb*xy/P'V75ww*ٿXl! uْ0b9bU$rMڟe/Tcʜ@gT`a s&~ej58(~qGc0^EuL}:rl5I<Ü;L[fÉr58- ޟX;$B;V{ɎEq&<&Mi}璵!(`t\uڲcv^Ǎ:ehE[VK~+G :g}Go-#4}),ڂM/ֱRTXPt*v4g*וKm) 5FuD%G4đ>ܟ+u<8_92o \p+qn0wIAd㊤>ڵ=1[ I (Dic T5RD^acdf,_@BzꄣH;k4w8V |w.BU1dQnczY" i(8A5ۖM0bˑ{d`w>N;{_)%Y)bA78^\.S|$QR@7E Lv^%!4Z _N.i$f $A50~$z=lZrfb{vl裏۽QkO?qw*et2o'Zmueyc|70lnbe9,:#Ⱦ$dm--g$"A6KבH0NU٭%# ai pXl QCޚ%=MD6^S߹+E@'Ҋ^>Y EC=r@yPL5oa{d| pav@,\9kz0 ڝʂuHxIKLE-{]zs%>~. ai'ߞH)eo,:V**GZ){u^NH#3c~'wS/;CvwA͘+2(ܳiRZq'hcC9lF4BZozFḲܦrVkϏ{$G1t)vxA-6;^ KV ZN) s{'ƤC- TTct#]?jQC M~L7}z 7@&#UK\5!p%m .)@'>Q_u"j,h3ӛ\<|Onj(HM?鉳zN|"C܅mxp>:r$wX~?n,3B)K`ih9a6 P`'*YF9FE3:>f Ai$m0KB+"|*G^%I̻/(n*Oh{InR֘991%KY LA5uApgiuQ3aNVgy,5Q%F]?J_չ+R1N3! 0<]R2|r ׃2d;>4A\aގcV"7Oepdy+.kSG-ʠ!l9QJͩ/U+%&ppOH@X;ЎtɘQI fhOM=0>6DbL;Mӥ<'<^d|YQF .%Sz2a\A͇N07;.5Yȣ~D(:Uk@M%ڎQMO"ji|ID"Jk2H.5Pdoq:[:=4R`ˉ_fCW{EȮ9d)tdCD:nuԴKMDT !+7&Ezrl*غQ#p^ Bh\ͭw'RuYXeFhLtm2zB38̋8wu (X~zx=vwZnK 3d+]<7cGDzx+Zw&Iވ9I}χ⌲k)iu]S~ n*5W_A(*F#Oj +WKLP59C?{X^OzY\/:gi'_~d0Y7w;^W$H<Zb rMT,bz]]J l}lnfD[Rm bG[4=&F`gHޘXY2Nv;_f]]^bCO_Əd MV_vV6u:̠h %&ϰR^#L^b-Sܤݚʹ3 cTkAaū\Ĝ-)?\j!U_jHVExt52&m,|y(^ '¸}R{KTY׌ʋF7Z Վ t Qj֊p~9?KMn30ױGIY045dc)II ߳],9#R 5f Fq/1^HFnp4CY-dWw>7 <<|\—vGS8R Bx[L oYFnjȂ8JdUk"#m)MSfX1zj]0X G(/iU")}ɂ2r"0y=ΟPzX^@z'& MQgI[iLd*UlZР+ՑJ'~:;xVc {=ǫLިF5Y7e.YN½;t|(h"Vq_ʲk ؊BYfM$AV4(5jɷ{ݠ kcLC}YLa]I aX Sʌ75!XwE*wоYE8OiWPKx84}9nWo17a/z^"@RY 03:ճd߉L `=؃ =blW˝<]$eu2DzY|cy>B}@npW4`a&fRn 0qw9+>B5PLKClCbP 21`V1oæO\|ץp[˳a \ް+!& K0?U#V޾#Vn5 wS{+jŀwvԛh׹^k*)m8ϲMl+!1kgZQM#[>QWH=M]"\SϽ /b} ܦ dP 6f_^@ْkkl\/ꦢOe3M;Y埿uWŭyBG;$Q^OÈ q$2{󣯮Zn̮";<"^'H}KYlo2SO-am`5AWХp:e!K2b9%*Y1l `פً)̳^g6g5 mi4/Xm9F$ш,+A 9~./_QxPU6ajnkR^RQ݁J ColmvFv̒=6ז}خWW(wxW7;~=FC*ŲQBm]!* eJOw4uS5d]7ZŔCR6erm̲ ^{0OOB>od;;8H=7_Tʋ9Pq.ݾGD2@\@pGJU_%O`}q#̲t;a<X@Ș5 .fE}\K*вKM8IYsG9}(J j @k_Ue|E1xg//|u慩Jp! m{Vmu kv:ups27XR奄pm?t&̻n(=BeW.- ˨eO, &ӑ-,*k~TY;iHmͷӕ=NM9gImA8Ӯ'̿&-i@ޏNFd1נpadOT!}^ IoTt%9XaL(Os8%6/h*XHz{Ah)d!#0r$vsڢvq}n?Sa-[~σ7] i]d+ռ.o_I#c җ`=̹%>G<_o]Dq'(OY,nXa$H׶=?Dž"zTV C_}@^ |8 f`@s$PoPjf*)dhQ }փ'bRn{/;zs +da-.B k>uGÎmڻ~q?6}D-؛qJZc72xeJI_ݷ,X-:7ޢfOY# S./,T3%VOwNq.a(u;{!tX3 |+?`yyV[~la nߵ+oN=vt3tnB m;^&8u 쁛2crS{*{-H}qV$;Z"<cԞFfRY}66ʔ'rV_~a 0f#LitT)$(lؿMWUu7]u;uY}Qi6d:Г{VMe.m%Y 7\P4Q ?}J{NWI+>[,%_s+N(Drb_C^[,8U̔ցRk@;\:=*ך v>{,cȭ2 tؘxWKWHBpE\ Qvh&Г=OzQ`Af#XyjulOk"p3%QW't=aT{cv®#Ӳ׊u}BS*VzB̀!Hef N3\ `)7&VBmNrR-1.Ku"K_;o9 XA O@0>AAKFp+wP3Eu 1˝ȁSW4Y bdB?D۝Z#/rk>.'K-oPU&EI pЕN}*`c~E@+u1ZS`jV)\+p)|AkجFg kO6a;5~9T |`_d#Ƈ2|%`Q;w{1njsH*KI7ncWVfe "]1UOF0fLk8̅b68 ty'VL[M#:>pQB8][-1Z;7ӥ3+]?qTȯe'wth׽<` }I:{ >`R%cThN 8UPi spGSUgDT{ŸX7)!v&Ny.sF:sfqBFѨg JҀghkgܷf+_'neLZ e`tNE G;}EnuS/3[}ߎއ)?տKElmsicQʝ|vGpJE:/j:4xcC_>HI }KW$yfQ$`u,p]#+{MdcD+9%Fi|VIfV#D$iy33XèV@Qxڒ Fݨ`oj$nq$Vg.}v+?e)@s]+'dNcէmXvI-Nx!G؟Ι q;L|e3;$+m+J}+5 v*,\|GoW~GߧpF@eoiߙAմ'֦Ca3qY`7ہJ^q|{EhU*Pg&6YUTy3UQFb1<¨0z25E[_Js3jQ ϡ14ݥ٭uѡ\עhF$o)iq0^uKu]~ {<Yvs& &@Ee-昫Tn:~xcŇ(9Xae#vcca>-(ѲɈ("~}H/:[(T .9v@-x1ytHk2p%d r9I( h-6MV^^PV+<8J>1M mp )燙c?ZW7CuH :zL9DSP omYш6[eDd( uLD1ol eu^*=/ٶ!֖[0. ,k놊Z)Ec*C.k'[ @_';W2_qE:hGs?^ZW;@?%놂Ўϋz95M=T"lY{ kz謦3~s aYjX7Rx /^}- gFBg#…:xn3 nQ eJK$BVLqG9,U'Z5c䯔')D O: \'*oa^uU@+5H=V eDv.1838HˊɕH"=(W0ԯMzVp:]\Xs?b#up*/l]PX`n:64$,|:.;2TmxK״-_KOBύb%8]-f(]ϸ F:OTӠpqrcCHh]sGH3?]y,`W܇;ѝFr8ebppyl)H|Ѷʫb Wb?8 uU' m>[WiaÏ+,m4B]1\kl\l ijzɂn|n.sf(?v1cMK,->KI7>`E@Oպi̬ƋqtG0ͽ8vQtLDSQqrNWLmvY{nscFuAojUOУr/q#rD,͂QoMBUY`ﺊpw),T]|G_c#HPF,AЈ$m+Э P7Xn_Pc% /f#<&ؕ$,I+[GMd`hԲqcT .)ԨuTDC>׫r;M'ڈ}2w^-x-8,bМLySN49Ϙev⤌ \޾3D祂`JKTHU-M1EJt-kHr&/yñZAƟ]D)D(ZDwd_s|{)3wp!Pkwd״Ztt Yt_ծXK5(-+F;=Nfeh͢cf3Cx(0{JyL|\HgA9Y{UtPPOw'_5)GbbdH]TIH}ݬZ Ӡ(Y.021P`|݌!wLm, f|i9Iftw䫲 -@0 oլ죟%jG0)ZIo~v;̉p|r cGϯs] SFEv)&)1S=eŸ¬a㉠d Q.r{5-"@WKqe9ݛii=7:O}tBׂ)'JUɌ dZZ֬/ͤrf;|[eKicʉR;vbROAQd'g.&fV$d_P QB 80j]b Fk5ʬ˜:rQ:" tr9 OPe68\U]`牀,lo=Z; HfGxwM8_tr?vM|Di]r9EJ2zXɆ# LYǺCNeǔy^)##zF^5Klï/Ge;,e*ƙgJkVU+TJb qңp}:, 6!뎕=P FiivnAV [1 lmlm"P]RtY35QTMlTSY?)`1ѮIJy 6 K?RIh 5?҅k :ߪ,}ƥQ[8ucKZ[nP[ɦ_=bĕI%y[Akbh2ҦZ6?Dyeҭ4ZbʞtiyYMx|&|4yӽ;Nx U((֣/8 ~{'t{Q*{QޓGB_Ȣ.+(:pްKPY .ݥ/r͖S.o }1D+`Wͪ2.IKthsԋ m5 BX_q\F:.8T38R'al[P ӋF!DAqRuDZw{9ҙ NɨS8܃bStmV?W᢮D_im2_u T%a/B o7~*J8/^n6 i2s Z@$qip'"p^ϙ6nyt(кAMnNetW;0+*^>C0Cۭ64U O f)bAJ`st- ƶf Ϧ"L @te?dڙb3XeQ5b,LyxOP5R3~6V7H7zJ !(KIAiH)ށӂ{\P^A%ng(=L4q,y +f!u!'`dRB9Hu&5K_]d!ć}Sb=JU\e- TVjq悗 7z/KOϫ\JA(n:|uw.T܃s!̹|8i/ n}9Zٶ7WF B$n5+ٿD%d}s^5vey16wK J.Pn߫(J;E: <ᚔJҬeJaAc͋M 3"9t2nƩ|BG |U"0 ˷ }3N]WP)7sƖ:?8B;L.6l1ZF%M٦Xe1,8TKI"N왈{zfJ󃍝I#[o$R27qPP ^Qyylx I]*I͈4Ƭ78rd-pocx&dX~}{Fr]!KF$O nw~2Il| zM;UđfWD@r(J !{gLp}Ҥ@u)牼qO aQT-ze.U4*gzM@GKoʒգ*VprxYuWOC\Ü8cX $Rq$rL,DޅOy>:Bܰw>.S3xEIX)O*Oau7{]@֧3&DW lNkc1'ȱYw[#Kݞ;X"VQ>mǘ~ [3 HȨR{M`Rf8 xNJר;m8vqRsj$!nkk}c3 Eu+1G3"&e/x1ו\*nЮ. 54k޳pσv0>%)TΖ|oڷr[A q`oH*By4EU~n!] H+!Yoۓ8[ GQO53 Kc RC{={*lԜ%v4(XGm V\Bvk5h&CyjmbUpv5^mi`';UOɭ*D5r{JDecuܷ@OjharTw^Ew PǏ jJRR-+HZGxiKOU ^t\EV/򒇐%m&(́~-V{| &XU~@yy0Y 7_G#B/@qRIc$BVy["nI[GaX=r~^9B4t^D%F"J ˯sf\0wo$DC,@3s'=& Sn8yaO)Ǯ`HÂA&P#D+o~/ԙZ]kt.dpt6"~`CH O2TxSLݑiX5r`H=JR=Hr`l?q;{gx7܏xsMF2WsJ`EIA2|}'z%fW{є< _r"BCa>1FW@ F԰r6gg1|(:I-^UTj >-@Nc=OHںVze8웨f_wٻllsDG%KlOy ‹~ j|HJP;{4ۡ9'7d 0KGu0>ۣ !q/Ҁ4}`+:) dX$Rr#CPz=@rK3BD N%X|0PB~Z7'@َQՇnp9^ߚC ŊRmpea#8@D.'%L}$tu{ __{0N5].0 eQ9etC%D>=_Qn646=|mtC#tVXT(\Ѱݎ7K0xY0w뮃^G^WXQ~w$ l%U)- .Y%LwgKq\HHƵɐyǕ_`L'rČ(tt7"޸6x͝Ʃvb2V)?ő!KLT6O([+&~wu~U)&cB./PC2 [hW ׌M2|c?OǼj{/p2Bh*}ZɀWC]S. tZOYfGHOIO]}M6-{LAy߲XŌU®K/0,)~'e ]Qjr 7b__6?]ݫNh7D%r78=n7gxf$]*)+ "MWxZWxZ0t_Ӥ5vW~q$ j!5-{͐r)wDF"TvUsP5qD'W*3~pqQȳP)K7" z|2PPnT WWj,NHb _R!rL3r7Ǣ6a-Bn{t2fd] ^Lɝb~YzΔQh nΝ\,"wdeXV:{FF9X{1K(ߔ*le+ ;$kh h%%I=JD˼-xjvM !&1tZ2GCRnʓNLמخMw'ic{jԗwIomͬ HҊ|&|Ys(I`ts#:IR V~V"suWa^j{`m NHjskUӊ_0Τ-+9RX8buqܷ(; ^wlKG6,#uغ [֔JY)y C/H@*ߘBaaOZY4cC,0a s*V&  b6cF&Ք%/G3 ]P0PT;z٣_ޔti̿@a49CuUU(Tnqhn >yOkqR:rS&nl v]Hr;jTe1 Zy{謇syYf(ђӁIsm|gj#sҚX=xՓ.sg\^6x%4f { <|3G'P#ĮC" %k`c992ҵNΘƔ m܉/>COW\mutU!<gclwm%!}g B!D/Q̡M(m^n"ϣŊv 'WR*D(H>U3H`T(* C[]m3+s1)s~ga7p;_Px&"49>/Ť45͉߃$Eémp]xQm Fd-Q"rG:2 /@3UkZL}Kv(MtcgR U?XLn31b#g :ʵDU,X5 02T.# &nvM.U}_t0CYk&P*#F7lx }feKݏ0؏S|R.h/[u #e@]d—~nBξpC#;QIH&ED(%>ĭaNKH_.;Qi_|kJQab|[6L9G :{bћ:.wGIoBvPזh巤굸zǓ / MԀKT@TBa|KW=?qP\ƒ-!NO`])TM<[$P68Z.Bޒ%l /tM&_5z ^-H`@:4VZ(0ljĄvS:jtxg2߱pٲc~^Uu'sP :`?BX <d%ǸJ' K֒&Y|p+Vl&ӄElX)quDz; \-KW0{t(*bVhKH˴!BG||Us&fUA3-e|4Eנy=ٵ.=ߩu]'Wm7KP}>L:1Ä% cT[ d+k'68L-GKW$RѷaB=צ 10%R6;QvD )ϱscuQT @gj@~~0m }EK݃Ϫ j3UDCE| Gt{J^+^* Mrk/{bDX,_8c(hdűX(A&8?OES#c9)I:z" *Tl(/Am߉TjOUws귅_a+{=:ܴtV>;tEeѲF}}| v-"MBc?~e crfxZ.LM;ՙpWQl}`{. qyXP1އO"@R t`ѪpZ*@e!3>ZEE`:%LLB;Zu&joqNlLp] f7{FZ#Xu^ ~-(M]Kו$ZH_\=њ<*6ٓpe jɁc1pɏK1ǚ̌ȹ<ώ*^=D(tt,Ӊ銨`"&-q;R:\Kj*hj&I(rYeb7ti$ěZ*^n{^KqgT9:@^{C%rۑf[1ܴ*7i92$EwGo, nJ:Y|{6}m<:s67{pRp3k\yIy:ٞNfj}K[Q #w/$bOsG2K"71OJ -7|^-!*V^BؿU\r+(ÑeZby rށ9l/8՟Ș:> kj肀7}Pݼ=sLy l ~` >&؈@+XE}Cog0GeL,iZ{9,Z3/k-CUڏ+ m/ \oռ_sg6" ׿]XBud%xԄؘW%U5{wOsRTf|{\gGԀhmw,-a-LoVY:"n9*xk}j$@FoK K3>us0zK49mOTD,)cFz2CEoLEW 7p*/ŵsw'56R ;+P4 Jnl|)oϥ!3)'o,FV=!s.+i+ hؘc+{}qN1rTiw;{J/.9N hs'^:'&~yVBʉB <`fdș֤`t{l4&rH8\V2[LXNk-/l2R&u.ȻIQTlGN;O#d,p3lh8vXܨ@fŝљ ]X,D5oh֝ɖX? Gьh)?yQ8ڋgU~i7̥ccZ3+qi GN @z(wlW-qӬ#k<}JC+)9&7HIFمVWy'jTAൽ'_\*N.sr5$׀)YďrZ类>)\V4WH+;xׯ 6<<&aC-{S*P:0!ow>8Uɗ^npMnd216K-AX$^+nӐ씛9!LV*SڡS-i~0>e*18W#㥸Ă Air0O\"Y\PqdX fwb;WSLmOq̟;>t缁9˜B}]@ jkH$6.hHMZ4 I &y܈ow_>`RKw.=F@K۵%ms">)Xn? SdvC.WR?++6Q VLZ/oU_R5LWNIL#7Y?&O&YG 򱜘{R―TF[aUT^z]bUQ#L_D iE=wp0Q+'J)q ~[0F93jρ +kLA4%WШְc,bg0I Wb1|3 $ 9W#fR2k^hR kVY$ 'fom.L|f9PzՊr#+ݚJOd|6: Nx AB0Fd V$[]rϹrc 3^G)>?$fU&Y! BZuzJ6NJ\Q=<['m@(Q(1ջ᲌gBz3U5 a.`$Ca&~Tp=F5ȹ7P(?af9ߐiΠ䟯H6tJ!|~+ J=:lVaUnf!-Ojěqi6"/yI$bm!jOAtg\ۨG;DֺU1A2@I3Cԕ^dNb!!gZ(NGQ*E`6r'cqXY>P"^rhyVD"ŝ(qn{ (KOh6mnصŰ{Kq[T6l'N$ps ~qʱiׯx$v:gܹ@_u͍@f5|Q29uh:E6a$B9_nuQ}lqyoʇP_hgF6٫ΰ2bP~#DM:jmA͐?>`'Qk6@K_b8= * %f} ߳t/7)ۣ48`/ŭ>yN^H)/ vč׺Sճo\.9oIɪD&j>sʑO4֏q(?%/ gXkn:O} ;bǢ!\",TD.~!wDgK,If69脵9ODg+gsTvl6p>B6(ߵ:1vڠVR!Y4k3VI2Ll=m"L8ПE8+yg_`RMԝq .z ZmE-áTڵ=j̑?+k-|' p0r%FQiXK߽MꞜ7j@"m 4$A?I>لJܴm A7g*ϯ.aEbag0 c!XuJfVO^jmY8\ۢRF],0jL 027lr!^#:XqjL33<- BG3%8" Oj!}bv:vV7Y8ߙ5#tXXvK:OٲcAlj]B:GW-`3~vSLhp\`xc+afҤx}=Q&9)W-Gfp'RiTnJ8X`n).\6ώ+?|JsƔϯ&^L$h#V/:h*%`jv ̸HĢ+{U2n0O gF~C@CfԶ1R uݯ*_Ew Yz h$ (&nhlt ;rͰ7c툺m 0e:lLsj'h :f&fF2;L6U1x179$ f !Յ'oҋDZ"c\˵^`#Pz /Վ:ͽ4~e\pypͦo1잳 N4<˟}e.sH(P趾Jo tM8~Ĭ@W?;3aLB)fLDŌ4|gg9]o3J㷀_XfՂ|-*QM}n1?efr9KP P=ns(ʊ26}D>{FACciMe{ds ,ztC ڀ*.9a=VbxYn%οkW2kvCG]ҷbKn:o^$ү ׊)鉆u2G&kr_ r][o5[ʝ{[l$&4^CqMǚg*3"8I"eP]l6+6e.Uyb89=*D-&ԻS1ǽ>GevKhps>oOwh)JŴ͍&)ObVr:۲( 8%̣.Iy/|iZ-5%fm1;=%86pKQT=@M+yt"՛ aQk<ԟ˳Ww(o aW=I)~ UD^e2C_4HAh2dX0f + #qAj$9'XAe7f35?zVtuHy;O3K$`|:_Y)&]8k$M_IR*i7|^!l Ӵ*pdd3Bf-/)twn68slQ-7J|k4:jZ}"mTaW L8к }E_٢f{aPzk7<|XP>}X0VȤWP20nhz+feȒ)VE>ȉ5HN y~2Na5MdvtfLw{`l"{L{W{]'m4"T_,uvr£_* ct 53ۢZzwkbt) ݜ]翼{Zh#r#v RBOMmե]c,({!W6 .׈U\q%#Rb]ZO* D3x302!Nԝ-aY6PoB`[&41B^qcAt"8x?}ȘO(ea0R\n$1O#siҸS{6nSsDH ܥxS5|D]@6!q-Ąwg í4>fUηYo i`%M&6hŎb3Z^ .c}:c|iaM+0}W>Z4°+8djTFhv Fv.;z;`@1iM&)DF!Ob̈́.xK\( Y'53^.+);S1' @zZ|+p@KضRl R`%7 ,(wYIu)>ZߊƆH[L>yMq-V<5 `+_ <n$&%: y| ,ۭK x:O6)%~ԁU鋨kj!{Y"uv18TU /U1,އeQ\,2h]=aQy"<(X YYW JE͋DrϮߘNHuy}Oeo[O뷵Uʶ="zv}S,GYߡY؟k9cCS v38:SΧXs{$ fA`톙UMRf_Y- L(o!1XPu5ӖTL \KqL7JSF t)&o @C,ėUo^.\n0rFTpi_$^ (n8;S0%)u g,RɟAx$?)8EWCϴeH_Jv4΄ ދ76~S,} !t XձڒЇ-jx6ye,U].ˀ>)` ]|B9v>vy0pa!X"NG2ϨyT~qa_xj)oگgV[p3YQ* 9.כּ|?fovLx ߎZHL|PgINxV^<{X3ExlH|eKar_Dy3m>~MuƳv3qcggyWYj X^g3~CD-X 4QLg$cC.X}UV%aW="`  % MHd£ 8P[`Fs g^4<{ 6* ,@p Rif׀5VQL3ZI\hebod(˅?tlú+ϒ.qb_Q1NOB]v~Rd9Ёp-)nj"7S䩓v~ergvc{}1lIȼLh=^5+^U.h|=kȇ kWlgv˜M(vh+M, ;p(o,\?IoWA+`& z }_h8b!&Wa3'7͒=)S$gb/t+ Jp.7{W$@zLkz\8^Ra6EDv 5Hh28))w =VeJa#.c0Ŷux`GN\_b WAJoQz:l!bQUP)àH\xkyFb&'b*KGӴ3R*U^ގՈRFsH\;.Cs/er8ڞE%V(l+'C>E:u骶rWTTcW圞fz^7B\7)Qv hjĉasDQ"KpSE=O!f*b'1؞舸96ÉF 0xeQnn~,w U-Ԑ$[ /l.΂j7GLT$BD馱s7\T|(@3tb2&?&G@aOgV䴕7Q.> uk}ܫU.ޮR;EO°UHB1g[pJd-g:fS K6'T`V[K_xtzť]&LAth,d$~N?I44+i[ЋC7J<;ZU.h8BD=HMd(j3[ ZK\1v3>MJd3r} MzqDI x"(ږ}7x-֤`)Q`׾TO%F`7}jx$mbN6>;$vR {uGt F%F]}O~Tï:J ##ߺ3iyi8AO\٭;5 um]jۇc{>/o壙 0#p>gh4UDnD~$Lw,zRaO zڡCBk-@Y.U,ԩTGxq+԰pS trjfc9r?U:)JC{K9wsrʂ*d(-BЅCJ* c0K(T oXP 4! pgШ!Daܓ›gFv9ƍ8;ҸWJ8QyATCRB&/!(R{rA67o@mLԤڞuLTbQ-֐.:KKeC9ld+%čU,S&qTŠR+Wr-4@|KDADXU?Fz<즸V`R-//^;zd6D v^iGycnQ4slr.~ǿF R8\#`Wd}[)1lI@;ƇsU,N9XW4Rq۸A 8DUUEQEM8Wu>d嘮t(%Y K:"pac slScMAPB^#G838z#Ww _s2/P(M+w>sL x;յe!L(l0-W/`q׷TaiJ+fx" H[E{ΚUUndC1#!|JD>1Z[_D%%=Bz@P¶| 6( bv37~[4`䆁ũpX]23{B-t*P'S9b5HG~`t`r{E>N%9΋8Jj~OXij/A"HY z)c7<:nT't Wf6s4a̭jS; 7CD|}n 5[<kL /n{f;oӓۧF3}~S*oFqW, dENp?$]ؘ@QOwke]\:MQ_ls!w}饕Ia Z2&UT,M9rlV 8-kx{+Ke[ET߿>_w KF;a-4{GF$u?yӱшƙSڐ{%^uN儸ײdXEvwjbBxS&>k86:j&Qy>b `A sTn =ቲ2. Թ1B)\Sd7uN:!m *BgZ:;y?+2Zn>DE\y U@(w#u狫tԮXkOn>g4$@sdď[nBW2-&O!6:9#Ȫ _o7fp1Nt39=0jJ}N9nv/y@b2 }BId76(ǻ_)}[wqA2eEZv_Njg'b=xHY4 )ʥLI 4%VKsj"14n.Ql(-laR&DJbNU -['9d)Li`Tjr&)xb/c[O=  k ?ogr}ݭE|f> ͌J韂GܷgO*k  &ŝ n\RNIox9J@?'l]WCi1XZ7S-,ו﹉4?CzEKͩ/_.<#^X-r\sEfM<;aJk' ac "gX{+ (7xy9Y0~4 { oD~4Z΁tl8R>s.|)v?Z5):i iW_ڧz-uI5_Nj}YAK'kh x. ~mLSD3K}t]N*D+&J1|- Sdujr00H ('0)/I7(R*Nv֬`*9~sн]'e|UCI׳XoȲzf͂}sGJ\?{MB=zg&׹tغYl:"]oB<;A+H*7c9uaaI+ݷ veA@> :c;T'_lzڹT22E NE^0 2b ^(:w:֋+|‡As8'%琪sU4 SM.s>Z41co~ߜ<28IyW|y0uG;hфx>vtČKaْ2F8pc\G-unX@W'݉ csE`nBk!̾ E4Hz U 0G-)%m>Aa ?rZ lRփözJ>;(r$]NUQ}Cwl{*:DIiiRKym)3TVS^%"Қ{E#6wO]$D&pT3xj^Z߹pT;tl򨗦8>%&jez{s7]$x3-30=H z(F6G;Դ^6ijqJXQ@[91"qEiTUȳckP!Lݯ:|*q#zytIw_hk?$9 o67`Wo\h*[N5P@,=/7|:HNy'DjklP!MrjAq]h=\!U%AɩJgL4OE~cz}m8g@jM//V$v+7!ȊЭFwu(@3=19x_(;NHENY%!wY/r眄O5;ñ2 jWBey J./za]$$'n2e!_Pyוsw vP؄e9l+#⸭iheUC/VoyNI}IƓXӪC~+b5zWcki}!b vCX cmZdV*)oF+'  Ά'{F'g\]&~_(doJ5(,gYCYn_:7h =@BF}#:I-p;P.qӪAcP9VmW8Ľْ2AWw=@$L[uAb1kPo7wKIBH̓]lzq֓E4_=`Q넼TT6W#A]cEcy1ɩGvyX5[^xw6hpީCveGt]Κ'q%WBXbf$V pwo[y)*v0""MܘӾHC"4y#?5Wl>PpB뎇.#_=W۩&pY)q[6|TI_`ZF"QW_he6l/YMO|1`o3Kt.H6hr/YqU~?d䄭ϞqIBmUV3՞zC{VoY# jB{?ᩩל2a<~N/e-wGJ[ߩnb+4g2p1'2% cgU PH .حD aG`_o%*jq:DjܸX0V86oh?CnsbVo+z4KrYv2 뜧'D-s%bCU- _FhM u91ipIYF14nR1 ww^G c~r z*ߌx(NjʮP8P뒥H CTOV)uE_ُSK.ˢ`1퍪_O,oU])KQa4wōDWHXI`-܈4 =qyUaA&%cOoLN[ɖ<\mاqz#$N\ʭL O\/{;K$xv+`Ƽv9'kLY(ژ}OԢ5-sw [\WF B9 5| L=73Eڢ%&t } JU3?lv Bb^!d"BuǹىM itg9\ZX\X}4Km V6ٟ:t6OeDg\hA&ocšUK֖羽}[dKՁLJΧW!$q~ $N-kGP+2o<<@:䳶Q;#r?)L@SYHŐG_^EL>XdRP}I%ZEZOܷvd^=U;\wgٗev ٽt?XAXvZ()zL*kU3#\=b>!ܠwhNX@>3G@wր{A,ctc'}SF O>&ef{)(,{4)g;8Ag2[5Mzkc,|i-E31O(ٽz1tnvhU^?n ,^gp`@S,!IeDQp.)FW͚OKyguL7Y|LZ U9A ,A-!Xq 69O%VǼnAh'Hl>o1ɿ-նG_}p0..>W %|bLT4bx/@ IZ e"}Q˸B2X/~6p'AH׵-r%D!5ZW&G:TRo+;i7<`mA|HGffru OmgVoۤ+ |L?9q5 QCI>;iE$Im' 0|/AR?Pa߳њ#$Hp>D/7}:'h%~2 `eYՋ#]-* wWlv4Ii6='f2=Ax磰fWF/8# |OՁ.ep4Ց ̽(cD)yN~l6 -1G W3N! PIbȸ8Qd>/ƾP_]mLSG-[E3`VSrTTƩ 9r5&*J.<:Xթ|cif,xZ\"(1qjsX %DX=RXnѥ8}Zu]F,>hbֳb5ÆA( ѥj%B(W 4:"Z~nւ/)!ep d#s7h@{L <ጢ|M+m-O/fT#8,1"w&9̏E?%b"a89?W| rN#8'oL̤$޸j91y]5q3H$%K+pBl'7slZu!4_8Z\!py$09B;oٶ Yu'{vYBDCOcE&R2Ŝ`hE$|ƕx~_6CtDԘږsBlzֹP/3N^=!W,fl1 MEH$Gc:.U{s:L@'yL\C5\l=3F1bw`naR̖"t_(cWC[HWfh\M^UNЃ!O#RV RAVtBk4N#jQP܃w*vjX%NSY$[S6}K;&?3 Wr8ë㹼U'0_Ϭ{<Ѕ["BQ!O|Y^D{C`ęVYlnwUSc>yzڮ;{@=L@qSDC%‹E G;1fzv^YGf}Zbsx E;_Yֳ" 7z.i"V|H={9rŴ!-(ɘ>hV V85P-d]NZ**,xMUEzUw^f/+bnmΈP!nUGi2(1NqK eےmqw[EJq֝7DG?*ݫA%vX%'\lS&mAveA!PuDH w-s1fq_^x19WFm0*F opn^TI7ZJTG9vyY0M /v3yupl[y-7tUNEm¼hUN# 'x-lZxF'皕^#P퀴#渂NE)&W`s9rr^3btUdor1'<kx 9lJØ7 8"@j<qQ#Y󺭒`Ɏ7O4M^Х>?S I_;Bgo, J5ƟzqlCHTwZKZ9Ovd.c79_@C.IJ^wJ,<8MA KJLȫ%DT`9.oRD4M#IѬN._>./jhr\SQ"i}v -&1FCAL X߫es;U1I!캰s,x)2W=V(qxRyl߯g جsidA,V3lq(pٯT+w~]5oٚNjzoC2/Ϲ@^?1NUˢpX|"cwhy\{>el!ֿ8] |=v_pC Qk60{ 1 =BE5n\/6.p,wzN<8'"v*c.j_w$>C;ڏ K:p^kFלwMd3 J gN`>+lޘ)C^kB)Uj$5vcϞ9Y&K$)5MO/$_%x7rBBDٚ6ez@Z]$j^O.( )Ex1aե] p5-gc*M`;CLmq9 U_8u= :-3FRm=®2y+d%Txw2tN.eH2ъfQ@ܹCdYf!i f,HL`q^iTřY?G=ФvC:=9)%@(xk'}aё(gF#N.y[#I7>2Ʊi}k;Ϫ{9s+Fxt= TLU9cnK#>ؙ93DGy˫ԁPX4)N9]'TrA){D/[ ,Om~dV̾5&qD4Z w)Ĥp^.nqF8`>-`ޯʿ+bE iطZ<yoXF! Pq0 2-#t3,'eA[D`ZՊĞ~s"drۢ UYG37$ӥzV(arR_KN@B3ٶ+*ʭ e2<+3wH i*\g1;Sv:OP6\i0'‘ &nUPRt E$43QVf?Ojb\zM{uvIꉈ.2ЃX%bD3Ɠ&Hց/Z( (})tLK)1hr:*fE!f^ybEE{7^ }X0k"urYkrI^F.Ǎ\HԊ^QX9pztdhW}d-vD;e Y^PN\A `*\3QR+ g] @QV'^2zBoN@&;G&E #;P 齦ԾaDYP~m-ӢL_{9o}e Iw&{і-#Kꗃ. e\ee@2JkեV-h Ms&e):z ;)r֣ 0g>"zYf~u cgqb}L령TljvYWNo&u\D4^?}s! 9p8P?bP_C& 0yߓ/͂rBPoyh&/+ǭ3Y{!6REٷ%w}ԧ(cchAoiQ]ݟ"2U SZAmLf;_ԟ"m>{/V0{ 0O:|g m, a *&$u^<.>CDZ:Qqv}^d/sq#;bQtoOi'$Ϗ" 5݌Aw-R:cVˊqDG?}USg$xx6J1qD$N_ˋLw컙W$dO hs\{`!ȗ{F/qix Y UjA}mk9Ѱ6'e f}X H#3#LVܚBiVpX\zYiXyjV[(dધ30HkO:v,93t"G͜$fB̺51]³7`Y8]%~qs@)^ y!"|hqO;Ź㜑Ω?B!Hm0 7Sٮd8h ݢB7t4"$S*T [q+W#oy-eȰYRh(D)Lvq4ϠLyZKGl. *R!Q8 tuU-Oɖ36 IMM٨fbM/Pf6\5>;$h*98<P.oل_^cE-A1]_h̚Kx[B}wUHZM`֐6g̞l=Z x%p7y3 ~v$f{)a%{EJݮ#lPK{7]/1|!]`MEzjluC_kb!Gf$'\Ӹ`!\jy,bXcV Q'=9X ! ,|A@݋ogT|fW7{9_0/n6S.)!T.hs|g=Gü~lJt _G宧*._;f~&Z$tGo酢Y^/Rӓ,fIжc1ȽﵣB/Ҥ)~ިl]{zP8t_[Vx>nGVjbOu<ܿ ,+0s\ kgSZnkreEGqn-wn)zRETNUi94vg~:zQ|/Iu_JD| -x{[AIaS,d($ŲpG^e)RiǾn()C;qH?! N¢-mxtbD`~g2\qߕTH$_ZaP";՟BՂB-,fzݕrsC緁s}v{(uD3;Oa*"ʚWR @h!@ۿgrj6"7G$s{e{9(A&xoĮ>xITCBhd5M9ހf1i᜽ a xyI<* `3!v鹦xħkjf&9Oךz3#AYHُBJv[-` fvvݶwJ6stQ-y|x H/婕z?=d).saJ $2]Z]]#ZC1su7KL&̙6hHXY\᥆| b#O(nAMOLio#{|_)E.Ȼoڪr~#>݃k{kjz769QFcgYK\\\JGv >Jd'3W|P)WHmE@' 21TSZ7Eg&+;!DGin^0Hu Ws7`[xYufL7Ⱦ&-sQ-4:%DNtX7p;HO {3}ՙ"a.,y^kDn49I (w`D*=2L ͠ I@cto98ݪ6^}N^sهn¦旑$Cc91 gMtܐLJ?rag*qg ,o砘|d f[>WjRSbu@=<ĊB3wʳ L]JZ/ѳcO]arzIq޵P*3N-QOn)2R#FQ"2oomP$![U2h㘍vZy7*M e ['duBʴbA9k%̢m0^◶%](AŻw8MOa0n`xTrAc.98S \0<@둡,UbFU I)*zMB Շ{T'2XX&} q4OU\{9!:Gac,ׄfœs;ɒ$m7*H2zC7fH<_y@(ecA؎ECX**v).&g0=2/Mw_WL=+> ̣H .N Dgax `K4҄3I"%Ow3vtK@Ivjm`8k'n)\$DLjQ}+ʃZ93x#Vq+(RʄeNObt2rrL^987u[PM( N"Pњ_.Vv2b7 g&";B@n$"$QbwS/ /flw5@b)Wb,?!d 4p6\2E&i0\Zl*`v#x4~i@k3>"wmBW^ !6 ĂUvOu!A]!_CP؀L`Y:VՈmXnw` 0 ,yzRIqS7z4Vapx,p1N{[c1&q e[ڷe6BܺK"ȦQwO1ܿfJ}8?ͪymF"'Fjg౒>'lST[]k 8ye֑JDBnC9rq-[T3J`A[zQ0PW`77J2huKQkܼX6VFO}~L1W!,:'YuG/hY78}~Ȫrʛg)"'PFgS;ԧ[č[J vob+' f!D& ۩D!f@P=8e?I' =UahlRb*uq ҉\IerP郓Z.F@|,JL0 ~~b[(O4U=j9VQv޲LX)CVXo e _ⶹ{xSs?"oxW_6 +P;KpҩvzӜT[R"r+VS_-7s7uf uH% Lou_ |6A0;~ȑ›LRU_yH̺E24SDd} Xo P%VGf-^FwUQ#[1<T?FxȽ8Q#VrdѕP(  y B==1~.jLˍWW|-5gb**lF#fqBҢPa&ĝŽ7[r0@hJնs뵈!.J8W$K8:h((i`'w3Te#pyZbn07h7Ӽe WHP e#gќmP5gOL@ 6W`]M+j{Fyϰ4S3fT=2+m<1Of~oџ8rX 7#D$~R u77(*z=!Vf1 vS,ė}lձ7nm9_ '0X vasB'5GB aahk ,]WA4IaBT>,(!<##Aâ_Q{#Ɂ2jf Ʉ잃6~wϸ)Xo`fv-©fllbкul;)YFE >2^4rw:|*$/V4w4I"¯8tAjY%^^ P`nW)o, xRa_K(!qrHuj:k/e_TȘ6G5C6 e:;g,sm 6 $pTP3PԪ0bkyT|Bǣ'׏ n"ll05(9)|Qˆx2ƃ2*ihAa')5 k+'fPtm>u W0Ի=MiscES8.j),> ,-Ԇnd64x NZ12$_.  qVnXtq[2"Ys&h ]1a ҴGߔ[JuH&tM.; TZ6&6*JTe4N9tGԘc֙x]{?)6#X#Y%LRs" @\.wz%+I[e g):7[pG)=[r=>;֎&*QCM KQH;F2>W 1(E|(@NDOw,\J|!x܎qoFD^"]q=KZ~|@diniD\վ RD׃)䢁`P_4p]rl#QΎJr7N37WΡM:GuT6roϜ;Iw9hIE: ATke`&*(1BG EG&5ʥ,@A,K5أUV9b69*)mXlSe۲@j*PۿYuX>>['蹸w{j,iևeKkG[XUSB$>.!љr64LÜWt=F(CzId3Ԯ,D=S^}pu2#{coHh~< >}Ŵo12aI.97Q0IV-izf_]Uık`& fd9=$bNS!s}ۡj#\ e@e fd\e/zU)H,٤_&E81elڍ)S`Iْp !tYH?DR:T=([ u20J#>ぶ`aܮ 'o_]no ,F Sް,if[wtbbΖ{^6GiwkN"f8a݋=âUu 6gNK/nciY~\'Ȥ> d=$Wec]& 吼(e/7v0wr i+uN1ji'|0C#֏ fT}E+cg~2؆`T4/Hίj.f`98P6 LQ[Թ+xz>',e SPâɼ½)M #W1lA8;! O/ BǍz ٬_c}m LiC%G9ث0`4ރ$WRbK83l"_=uCGjx"}cW[q~=HK'e 敏3;033J=@1"Lzd5|O{ GjQS\v)P@־dn 7rSWZtx& uK9ݟ'],M2g~_Op 1԰i2W17TNUΖ '9 TDeL Dy˞ͦϐҴ%Tfl+mƷwu4?7O?,{9+˳LIFs/f,O\#kN>dn4 +txIn2ܛ2}w&֬ViZۧM^tzWu@|E^VoA&k*ԚF/9j}:=S(G 0w ҕ_,5* g+s͑ V@?52w/ZEr|54߽ȘU" si; :{$hGSjW04LҺ兛d y5rcXceW|=X@E>Dx:5s'НYRlGsZX'  kjB7L'@^LIg`vZH+]Bo?P^}@mi,j֦V6+ۿu~+:_YwwA:#aף5gBXH +AM&)H@f&C2ޯ>֑<4t#.:0~{c|K;n<nzuj ƛ`aZ_Yuq B\ ''"whN޷zCHI":Dg)@ə^ͩo\#=8 >:2k@+ UxK+Y?2"U`?{+ѹbP8)t;.g>NqESyA~cZS\M ։]zD'kZ}"7j}cHDI9qh0D L藀Zqڈ8[B1!T}ߨDv\w6a>_,Na]'fJ$4p+dsZ£̄M]+.ق},g.=o)pENdP;"ȡn/Z\r%XyG|deˢ{ZQE qbd9ttiZ2?,"zs}p+a1UmTQ!t!wuT5θ#%*BLJ[I#@˜Fud1(鳻 (ABʻ558|';\9$2ʜl%xˊ\ Xy`I<QYˍ.Ʒ\+@gYMř, !&*ʅʞpTbGg^2 Mm$?g#x|f~`m.*3`YB,5I0fTj .mmUfRQb{HzL {!t5dRڶP>tȥdW_JG}#CDJC5<*`ӠAcch5h> "-Sq7f{߼u)]_lEvWG[z k28~SN,f@ߴвrvO*N;蝋%UlO{ܩ|e'ǧ!l}OH(J9ͯ@bi`A-fΧƝR,1 k׹g Iow$hmv)Zь3q&y5tt"C`HS> 1T%ն "}.tq5Lq&j`$+ܵeYX9v%c˻o00L9k*3%,@6;1 B`OūXo~Tqb~ɱ ݃$,k0Hs~ Ytq JgU3\$[-پQxT%(Oza*0|vh*<$,I`Ve~oh6b֑8_ /1G:nP2$.%}IA6k6g_E:s nۂaP*)&z qj0KcM%q 7}4Q䛩Wؓ~?6"A)Ty|x+Pf9ddP˯xRI\ÔD԰uS/8a}`IoӨN67g*C\`O_dng֬dje4k'[d3"Ftd6C B^@Ȇ9G( ǦS%*C#2'eΜy ꤳF{kVωxRy+4HC4gL^=oa4L~ɵwAyjR}\-DxH^:,. ~m+sgt׬bOo %LRL7#]dI'iRwR(pbJo`24-HԦ"@񡫋(rEu,(C;;]Mvlo"i0;^U R6gl0kh8ňF鿛ޝ I+UލY~nXR|FFs'ϻaAӅjM1o9r"( +=u[2{w^ABx+"cBvj ͏cKk"f@̪^-)H^t30X!+)4]B+{.*nF&epaB%dfOBD(h..Dӈ)ZB@7jA2ۭ|ty#0ߝÌWs**xa0 HS~r!ꅭex~ع؍D}-d_:X4Y#ct{B+UM5םG\Uza{x'ϬfǾ03V:<{1<S ?cU@yxs8M_aɦyP"`wcf\2޽ФPPys٭=*&L=mފxi&6٢BpH\80;D9 OQ q?}G~]]=&է̺aB,)_AKPulA|`k #7'p$EE]W?TZ.N#d״hE5,D9Qpvt=bw\z@ד/x4f7SRWRXgL.$8+N: `s:f^3%6DUb6q {{]k wqZD\l.7@sv.4\nȢghR;R\PyҴ@g^c#a8B 6u8`TsL{{įXc1<`<-V aW+_`GF_Tퟧb*lrP냚z@".ZNO.=ηM ]y$"k^ TP]uxˍXR}d\ΡC*J T۰._jԩ3 ?|%6(lpNWP!P1.O9-U7w%-]?*"/aAuͭIS3\,A,[!սr7[L֡/JEϑ- ?= G32$^~<Ю!,<>0 aR舘5#!s* 4xLI(ghXɀ:J a^8V8x)ȾvJF>FVM [W2]t}㼁I0.nZ4f+l'At qGO p**=2%B9ϚȔR^;< 21lKCZ YK[0_nY)t?P>2 ~*Y_ M̖2.*8[aٗxϢjm8@a,'B_߆ Tdr'j\:g59B:Y"ڈ0l?Ռ #8IA9\0"` 0a)M$Z xC > >5\t=x b߸Jb1*zԚgV,p)I.2+n,J鏑!"pK[|ʒQ;LO Z#|ҫүZ̺T'/bk[[^{w1"c嚛`%pc]ng>l/Tg:TN|wBc1'XXSH@rhKz7d$T*c䭟oNcx( ~Oۀxl@8~%`V֐o-Y}ܤˌӮdj<ۉpSsQ-ּ-cGket6U9% I-7.^9LB_sˉYzڬ]zdֹӫ X$MG+4 v^"a᠓ogX®w S:օhjy.NGW~?)b.΁P mDXu'd,a*$!=ns:m!AOɊyӯᣟ* :8>&;Ʊ*X{WvLF<@6CGY <1܇&6!h}Xc Nwq71 ǝ\KLax)0 wxD9 /<8&zT.5a\{>T+]>$W+ć5nJu{] 1(2ܿ59DJ(J[YW1?F# fh2oV6W)T؇ $̘;Y,h[Ua*O֥8kQc5 O|,YKuT7RPWr.'­]HI7?T. w4%hOfCa3w7g\&.O-F5غ_FfD֥"irZ@R賿i*uO 5]׽IK`ilC\ޒ8m."{8 7Z"%L؁e5jVUaGO1Pb3^dm3[MBkfa,A:E $,B>B -BD,|?xuԍ5f(+ ?T ?osPj0z  3v?,~ԑl'okڢLXKM{~Ŧ=6|\XOf{/+ A%7Fd~T6PQѵOCfmFweID^$L#MJ$К q{vfO4 =XH6B[ļ{e<5О_iibV,xsgw UfhF"S5N}0IdԿeJD  L DdyV>l3 C=*EPٔy X x*Zmv `}x0^dz.~[Ӊ Romr ?"'7W> rHY@vM&s_p {xXϦ&0zPmc0美}ϟ08\61l?58LX}a ^L @EY?r2פc.FMa.Fh][^ą,\:=~GdX^]K;T9}.}}yLM,9|ó% (&Ubv9jdtfddc^< MRP]5^H R}5?~QW#̘G:fpwǽf%`=ʊ)t?+i3"{lqs(XYڈ>}p9py;U mt^N?D=DrZ*)00 o j\Isyl|YFGM@d5Pk 'ohdiBwfoySZ#Mjbr:JWOBdC4Zo}3PG]qH!">,A3XD>kO4H ,֕&G}Zx%NQ=nl0tHwKWsAlP/hmm}S%m: /gY"Rp!xOYhT_#3s <0jJTѓDEU-؏ZjL*i.AgY6B;*-& _R!.L0<>:f 6H ~sq <T{8dmpC%vv͚TT!s^j:m[P/,lN*K¥Î\k"iD̺}B"y7舌j+|u52 mQHRڝJF8<juyfνzص1<66G0A/;:Q7׶VhlfFdٵM1J￁  zl~o<#+)u:5)H8UU5ItCYDQZ$L?N]q(}y4Vָ‘UN GD/*<0%ff讉#R3d+C .' )n5+p-~˞P?\s@%DžCGv3+?j'wD5Y(C>H8}&{YNJzH%?g=fnEthijm|KlJף{+؃&spXPgYf7]@zY_DJL^HCMi!D)ulW|=FĪshY?iVysʉF;fh!O@h݋w\E 70dNOq(^>>2C1Գ@~9y^Hc=:=☹-4_sp>ɎBh ?&96K<2%6,uDwMqϼb%ܶܩ&<9qo\ 8ʿ0u]~ S:{rnⰃd;q'U]xvet\\Ra2 Gޞ:g /8ECH";ZtVDe_&hd ;X5PD@| Y>''dHjh:{uޏ(ŦDN%*`$o$`~'D7.ʽF'[Z58ҐDLeKXizfEnq(;/˞u&.wнmo3#kCEġ0MޣNa3My4/(W1t65B"(mMr4kDϲo(#W$#:\ 0::,2kaRJ5ϙN[5Ud\Mj:o|Ǥ'qc ^%z?"MZKmsw} ЦG'6PB{SuZ۱T"_ٴFOg۵ JVWI4C\3g}F` v@ȤE+V.1\*i)jdai5sD^f&ghhg|Թ+` 0c=[J*'5l0ыs6 $ö+EqnSdTfɕfѕ =:CL2m]&%-+@ -YтxSb{7X5RziXD 7jbl?yݛL&;٥'Mi)بփygWkޔ֐/Mh?FI1uaN׻P9ÑS5f>wۭT vҾW?jC/PՒ \ߗx<3iEMT_ݫ,U&%Lu]9MEs$4,yX'm:P$ɱۿ '4w @Ìy{V ?T IYSdBh {pNuYui vvl0 l 6wSYk 47i*+.P{@3|K֍QZ0/H9.8 ~^͡- k&&%>WXN߸E'<%+ϠC}6͛*ZJ _!UeGL$%Q0C'˸HG>rI28YgI/0GBm]k.i?OKC" G%c25*_X[ۈN~M5 ̯^[gON~X} 5!Ki" Y-5,N #|"( }_^"/\Y3y2-"9_C`?+2*zڇ6s?ߤ0Vgg>v 7^}Xed+iSQUS N'c:xT&!a ݊Ԝ*]:(MI>rէRKL"IZIErv$25r-U?E m]H.e.;T()Ba̪>-eCDNAPE.l(d"]ePٗYpH5 *ju;/'kځ[uӾ qbf_>d-AbWF T/ܾeZ_>.yGG*6;er50KDxB4 %X_5ufPYRy-FxYUYIaS@Je {-E8*.nfZ%_rHAq ,HR`ת@+]8YcHcs4iW-Ydl7 q\ɸW̖nMIhn d1\EZ%kxkhPcqޅ (F`Kn)rEu&QD K*{ީFmh{k#muRBlkxZGnlȖۘ& H0#wy>x6QRY&^(1fT&vw4/9XkfW:xԨ_CIhNhf]&[){ j9xf : v1}Ȳ^YW;0h6!leM)GHөhӒzA GL|򷚒=z4:dgbOw>7)1e8cW@u6&b™R} ^.n3HEAn5C6 5\דVHmjUKG138K{@i$DСQUa:7(L?U,'cIQoSxqNlɫs &w]PwVbo%&Pr77{Q~+-ߊƧ'(CˊժH䭹3^ЎbjrL6BB^ _U[‡KB6l4g& IJJesm3@mu^x u(R-֎B}/ QQJt&^,zÚ_$Tu mc @L:q_ "zC̗)EsW'm9\{X?DRr~PcsF(…y`}`0y X9xqSR3qupfZ,ELU^$Ŧ^8t}Wɻ}Z K:?BܢATF`,f,"WpP!mG]lϿZ.y2:"[sCb`y B=[\<EDfWw$l U/e=Oe(r?É j5Q^co#ÐT{BE.Jy{au,*x]4W$b>[Dw̯=6 h_EVm3=32 \VqbkDAZbBt_ͳٟ)\$')ml*Byi`<%P +uXH'w"E3tJ~8HJ7_bN~k6)-b.B{[مukdLCH<P9|9FlRy?7Dxz_PgfxFGRzق#klPl`r;`=DXX@r-rֳ{|ۛ5z D->F}՚)XZ<&+qC֙HO>T÷gqmsNJT) & 5_  e+|ĠW2^Sm-FLb\'q̖,/Y=EDJmBsXxf8JmIֈnM젭K ɮ>[KY6]ܱA8H# %'ND k<U3k(jY돁ble2a?)xBu;ڧ>w8CIs$ _M17XCqǩYH}6nɆY% ~W[$x3ZZeizX )T@^o id0ݦ)}89  :7qtu"A֫o( 1*|@K7iEk!j +@)h76Q3>j+KhqOFq4Zwor$4[&䧺Q 0C+&Q,SxPNy꘧0*5ec. &֠tQ򶚤=xu')]։>cHbW}P!eA.K4\;c"Xx rG{22b<2h% 7Y tWGY4c"3Wc+s54`nB\?!oơOtq$*)7WubhK'*1'iK`n5<f:Neq[vMN3@`_lӰ=#AmlQˇL3 -OĆt6u+vX<#.CE= 끕D8ogVkf|}b0#')iMӈ0$i+y)!bAul>IgxZQ+Bo- wH dAz P$ ^-VX@Go.$aNp)lZ%[$xt,,|~7 Rț,kX7IŖGVtӊގѨkrAfϑCNU0*8ZI<{g/h[\ЅY Jj9IBB:IDI&;ݜ_ LneMOV˴C-<= ]gEj-Lx dbеԯimv +" d \7Mn>OQE$i:0pN9xA!n{B҆b6F40Bط޶,&Z"@sP|qTaW-| *~<ǁNT2OAuu8Y}0 V=:!ݧ1C~% E[{wOpj1c:[\RF ڴ☩Pz QdiY~0凫MAZ\y!̎ Q\l#иx.f!C+ZT[NlUX\!$,]6_H3`<3 #s9Qݷ,TT:~GKüD eP Gt˟='tIҢ{K9V?'}: ARɏ|[ˋ s}1 ZS#9<+iQ xE :\fG8ohW32Y*{GEL)sY t ۶7&? ctM0k:-+;_z0j_88em !뜬-D}2/zjC7f6zXjY3f#HZ^hLnp2_Nm|}nUGwǖbLR>rt+ҊTIˎalA#U w enM.~.gO7 Ǯ1q{a)0 | h+D {SUE s Z54rkbyzzmt{ agZ;-`TJ+IgC?a+# 5QRd9u9 !)5^qa3XW?!(1(qZJ%5_@x,I K!58M6:/>}|y=:u,Fm#Yz-*e3,,$>6{5F'Щg #oս YDdUvxQPOugFb"zYiڂjɗ2i3ֳ:`4VYdp= Mzho u'wCIQX+ãz|:^QH+LT&r-R8ftE6]B\{gxa<{4&z𭩇̓?[t>O%0}ڭks3]v)&g"im< * %Ss*5݊ 4U vV)WDXn{ I^Yu+ZLd@l^=o3ƴF*2fۨ:?(-P/;l`Eۺ"jl{ ^N=s+hﱪU j~{X/q Q0> ӔG̔qVTd\ ~=+b}#8P<dtŽyֻd~4fsV"].`dU乃̌-1r' ]VcmC&'W?L-J!Zsm2ķ!2Z۩p$J4t#X/)'sJO /Y4H!jR#ѿa}f7'|XAw}ZR d|f+q.SN>?Iѥ4R Tx+&D?7^5a=^7j6gYr,|2AEV58!=ӯ:7,7M 7wjc/),A[|(N (dn(vhiLØαU9%J*&C:ߝMEtk(Y[q M` >b-.hP KbjiUбUUwHe9Cnb p'd[l"zㅪ1.³|ZmWh$H}~|gwR'݈\- :(09/HM8W2q;'*zh2_jspqkFWp%PتvD8y|Y(xk^ v6^|y79Pvn#GuŤ-Ԛ>)Mˇ/+pcEaGrKsG’*FkVFҤ>Y>ip˩$8jp&gop!- >o^-XzKW}?nۗڦ6[f;. jM$b$[SC x+]XgwNwnE2>T ͯbĈ7cbʃn99Yq vبm%S%|BTJPv#UDkkR;#t$yp@_W9žC*)1GHl[kC32jѣeOR{~dR`E%3Ckġ!9e %X>LKprKp/מTQM\R2@;i4'} @ i[Dş,5ܻ{ңfሠCKMνAk=\{+JI{NV-`יb;z-t<Ӹmo5x3^ v|ȉ9an,י柡|e|V#NڱAIWЁl %Vz/?/( E/l7*Z])B"L6D)]qT;$|XN4s.2ډ? h|^%fT)~J rOf#ZdJdjћ;wGz`34үG]L􍖫 7>Tw W~ Њޖ i4 aidbϩ֞?mdF ;!at78]c$i pjpWxꉤbۣ K+u%?2d@<y@R~n* vR.Cud7QB#7Omoϛ .'&,`8ԂjE-=ɒʅ+uEwz綑܀^;u@w`:" HeBX?rwJqc`f(3f_v8[M mKH|y_`!q#Jy@RNZtT e`Ug1w$S:F{>SM8xO$l`#̩R^QuacN~м TI>[-d\L:GGFJAUIu7]R2?w3]2R$?߰`Oyc?H`G=A}J<{XE!Պ̀SJJIz :ydtmҎY񝽲+vDQbhX%(iVmĜSQثEսhHoLTDb X)2II+#~P MJ:FNeq;1?hbp{oc >Uz9&^x8X#_^V+Ka JQ#`0²tE7v L_CxZ1g}P423 NiQP)"nC i3=G3Wף* u "I&[R$ h`9n,xc+(ZgRk$w.i10S}l/Y9<@s"#n9$qn:bZADDv09TxǃAe++qFtFR_mnWW;!hhc?WQc ܨ0VwKp_}Mf~Z0ևp-rc}lx. czV{Ԍyv)_+ @- 5G`. >{?VC/-Ɗ/*JLP0vuۀtUNYy"4Fu|\n=9ULr2aRJ`҉V- |m@~x7|%*l]]O} G$BI+qF0ʐ?l4HEe ElxLb7EO&3vXvN40cSQU6a/ n3S6![1FZ}oe8 pCK' ahf-{T" t9 1НB82?C|Kj֒3*$9q&YXmM #Y Ӕ;Ŵ䥚):[dLٯyvo#:X+Q3"mK.3M}M~D '!MI?i]_ j},l;@1ePĦ)Fwe8AĮ&tR3Btn4_/4Vy#yU5`F;@eyQ*!vHVo=m8csA?"gpٯI%H,(,Rfo[5=AST:=۴G]fyB*_Òd Ha=@ܞ` @`\hd{(㒶Yg9 K+=%`dsm*Ѷf^#0 N} ڈn7jPɛH\[;tTQW˺2 nEC4k8ś56]WF'aPƥ7L=Qtd;;8Ťaf6iys?#4=f }@g>kVlrW<$rt[E&ۢH .{ zAcx(`ٛN& "HmRz6=o6Bpت*uFT< `@N;*.9% :C+c&(C,أc\>1ݩ]Û`,-'$,BZnZZ74! g3\TO?嵚9uF&C k@.ǁבPym/)(lr{βfYˑigܙ*MU^ Zm Ҿ((&w2mJ*R%>xX0ނ߹vǹ+$;>0r\ tR;5lmQ fA|?a 7RqQbɻ;TqK30<&#E Z5}5 "`9>vx{Iվ]s!@?Tɤ2h !ӚR?xǸM"NŠ6R0/O ny2*!o- 02dHc{w۴mdJ&ؿ|.Ԅ9c /qM {]#q\7gy9#.U2imQ:䛌@LPDCidlfxYC[\cX+Y ɌfG.yS*)Mu{GaX G[@V.(.tU@|:XCD3W7TŬOu(>?/@{ e 2ZVKp<ߖL@\d FȩV {yYz/\ݼYe= 8PoH6/58,ٮaN~<.c*)1dE=rkfuiF!Wa V._a0]CtbKkMr^G,RAUݚ,J2,ԶsɞI8{˺ES?| Æ& A{aW>9LS J7)/4hŎSFͭJ >υo_|uzݾje> !8zk| Z[. )2~ Q泋z\N#|+8cxmDez]&ϳJVI*G̡pHmYljvѥS?]u{0mJ1h-'{ I`|+3t( %\jLYՑn#h'ǘ DO U؁ݴ%OeA}fjz49L)hL)rgya6ntWpiUjl&Kk&m5!m,vFﱉC |z]ZHq<-ݡP;}x#QwpjٔV,fJm1po >FbB-(gOU\9;]%u*J. l&:fs1UhS20 !1*=?˱^wݴRY%jvy\ʜ>R +Ryip.bd`Ž vs[#OB<{ʊGfuPj%f\$yo&NbQFZ=RS-Z8 dJPF~0>LeO;^^G}{Nq^lgpg[ygO'/̞*ֻd>DJswO|YYSydi{ ;bEw]J*g7p(@. FYTg9 v'{DS=m?JPvr+)56"7eH61X*a.uZLEQW?j4Ltq#պ@Q+Zk [a Y* P`npd%0pFgbni4WvU5)h,o49).QY-Yd8-dmBΥ~1=3qpR<,@I;Zh#FcD>1ڿS'Gx7aJ1e/QpYd9 ,sV Z1r8샌K,5QFp69; kdbE{;rXQX5cWü0 `oL%" @fKmY^oH% 4`v1+pFZA9~ǩ8S#c j]evܙZkiΆHw->Gg`vڔ\v ƫ\&Af!SL jRݯwj #)*rpYPqx]@ Oj#hIl@"9ra9T≷6L-_”/d I*倂s+8!ptx) tC]O|2Ju1ka{vnpޣy*i*FZ-Ʈ2>Wb^Jt3vM##4n4u=B͂^P@Q?R QAC␭̶Mj:qg0T$f8Jѭ_T{5]r眹#*~`J ՌŇH/E?hP'P'+2[>1#$".H61l.Q !5h6(Ksj'C=<҇WyN9 _R$NnV7)h\@R IwvC3t{f,Ӊ.U5u6ilfX)ސzkMP5c^oTMƅFE׏,-٩D t ɦMaUuX#Fq'OPa1p \1#(1044SSJͤV$8 K *=q^-<9K8!VhgjJ(L[锛8Rʧi\"ᐗ" 7a ~+x<d1= Eh e Zc= D5.UyRCzBZ&ϧ/$ 7{e^?(k ͎=mf E]= uKAQZ#=;%28g:#7z)}֩`Q*;gT7$sJ 汝EW1@HiuA\qirǥ#'rj9ZC e܃_28ez L;ΈpaԅwOi &~j0NmrN$6菒nnB9 bekOYp:IP4 ?;EtȵP;̂@jR4_,#Q`(t ֎We y2KGjixy3TpVP"ċ]e%k>}vgY5EevX,e|Ҫ堨v+7*҂dvՈӓGVRԽXo,k'A*7]2'd&4zm#.,548X֟I}Cm a##H\Z$@jq0@C(rzWtIg JV hg UqTg8|8&e$Z ȳ&%-_V"p8V$YM `a(}KHTs,j-$~PwZ!G HK0:RJ?FQ{X,s8춅=%QJx=Kpz* wMdNP4"'ۃtKCH|l*|57̃ sO\kRt19%;]Uֿ,ϮD@2)Cet2`8 (˴bL3n4"?Z>;d'<5f3D9qǥw}"\:}%Ȧ7MUd@M mChlD wlxe !.䊟C geFA=5aKc;/WϫB!rzȜ-V1H?ý|l=3*s CŢ"m:|Oh"K7l1& jB0[dM-/a-#u׌XC6jvX<Y3zk@wh`F)6n%7,4S n`Z]OB|O?;RP bLXKs]b *l mhb_"s+th!YaQof?qomEx{Uc4 A L4i*WgF23EALkvuE  \tQ8e%sFM^+a<'\1_q0 ̩_OIpD NwHS{r& 1~?1SfSC@WNy?0;Yyofb4==i s&Tx@ZvܾbSN,Tweaثқ \?nc>U3kJqf6yN%no.5זauum슍a {h xl N0lqe3k=,4F-?k-D WЃD"%M3Z_RAN4vꋓƾR,TY4=g4Ƴ9 8j56P|[v Ğ%ϓ9ʅLJϚQDb+80XN.~ 9thF '{ 'Kv|ی?$UV}y@c[sqG]sFfmġ[{bk2%)z*q~fڲ4sT'UةKXpZ^ҍ_EENBxKV0L z(:bSFHEWDx(>[a#W}o\ZRPQw~5D-[ޑ<)I}1cT/U3`T6`l* iBS)|v^vclRiW֋?}/Y>4Qt&V̋׏Oaw 4e9!zwѹi$"9GxkkYL^ ea?C.I5В@LSE(?F 6B((H8QS=aB'5G؁@ / nŹȕGJgd/pyEs}R6/Mzw@矫bAP9{.%avVg0W@`Áp9bxvD 4 s{׻&GN4tDoA| ӷ6`{PKxQy찻o捛0hJ^gH>>esm ￱p4F~VP 8\Q&W\lI3H. %wc]_}>ɇ~~=m. tR ;|6׎pBT/#G(<\lɩar6?JP_+ˀf9nsI)aR/w6Ik .Tgj_2H'xť;ca\*c8_吮w>z=~GC9WqosǯQhs&mzSRfO*t'&+#ZU=?ɐ ḂC4vӐrrtT[8Go[I0G\:NA@ےwx˃`Z׷:W=a[#q4ܦ3GeGC0\|cc+_A*o)SܝufL$ҡI$G:H)vʇ{?])[У :v!VV­͉j]M˪51Ni:; rH=!PPxAAӉܙ>a|SsR$r*1C儷99jfzsbb.LNK9ĉy)iw+w#*v||drV:. |<6tOK &O'TP2+7 ; C}.H:nNE w:h7 F=P~I^Qhju%h<`z?_h}O g7dcIoTF6mu(po{g:H&A%0H pC`;qڒ<"GRǯF[XpzSP8^D2'X0߰Q-ƿQр܊^&!©)kLTrYDYs2~<^tmn--zuM{i!ũ4||ؐVq -7 a5* ?ӅZo@}˽foFlAކ_{ t({:o]^b)W0h{j8xl=D_g[ql5g+Lm(}"n@}6jg9~AP7MZe:?k0]\z6xBbSJ(62ņh6y);T<9U^QE9CUb1"#Nk g,d,SVog 'Rtwi>H#՝jҟ=8v7mfN3%S-:T`9D:Nl82}΢Kűk?.=Amט_5#X[#Rawdx{Za$l|wP+AƝ2_;{t@ĥnSW"yYz,o#q ]@g\A? ΝAkn0N3P3c#wBGB<:9$-&Ѻd4x>Ds> 3b$5 Q!a#>fvYaHLheJL,t7»ane~.Pwiˍ1P70P# y8?`䥲')Ω<y9ϕ^]ߣbOp{!6+YQp@U %M\ Ks,׭Zv_M42 T. cv5}aj`9[3G^d$;5yV6=8IC%Ay;~DƱ.ɠhr zi+WEdW-p4ځG~X hP'Z~>CV}"8*UUU|aR]$P!ck&/s]OeAx q._C4U^FvѾ>01;8qЩ[awꮻ6mӚ.8(7c(t&A[r1&o Khrܶd (Cs9B>Թ<;|6qex1QCӻ'8í|,Xi m 2ɬ@\Hu-K'hU)[n ^5){s<<>nF?*7& /YCLf_[%**=#Y3?oyu7L`F3x$L#|YUR'O J6۷+gmFԳ<k 鈰ʋጒ!]*`=@.=zû6eCClsb1li򳅕J, qB@or9 .nRleXXuVle->}ԍXG/ˋFC~DZO&4+S\BKOwݶц {1/tFۉEQf _ WO aWuQׅ(Rxp]@[~6ʙ~rAmn_g^Y^) ҙGB}.dLY.4x~Np}kj(ffb:  tsTDz]evؘ!sy^w.:i 0ic plDmo>al2/}D'Rg@1nqR'k_W.KPYAfW]&߫+UqIfGN5&|BcĪ@ZaEQny}~r)O*2f8җ=7<JRٌOB-s@t,:dR.|@o ,XI}<c Q I:GpQġ^+ca['Y+,Hǁ!d`9izI9h9Pr$=dǹALdh7S>< 3<=D[?Uư@DwnR֘l D ~E=,aD̶Y`';௴5:v`2$_=[;M ͬ-~jA[N|\~氕l{4]1&cñf{:)x[u 9{ fD Ɏp㛚Cz&`pY;\taDԥUh৲9!} HBDOpWDa>4/!Y&62 "'р9:4!i[_]2GѺۜÐ-ҩ$W*;h˛p#%%P?kݞupĵ:lDB ŸmY}~ N"ۇ/KTcjIOi >6,Գa T\ӣC|L1DFZXt?> %3Y%؜L[h:?әUd+T96%:߽j~}fk94~9;6\'O{*xVĩ'%PQBi#CÉ0GЊ7rrtzݼ\>j1Bo[J0Bv}흂L31Nm>kwz[<`y9_aRDFF=PfO3X"0gp{SdV폫aCJi^@N,uQ]/JiOWƱ'f h@<30݂iu g 7mb#es\}kS :3oZ=ֈOQG_ b| a<@5=v g{; K%>)۩'.f87yMEJ>+;%L{ ]^<T)=py*\7Va_&ʋU3R a q#&ofɓ 苚IRi0)\:!U(2Zhk䄐VZ9zG4J !$М0Vl0f@-+ڒOm 37w,lC~"=Gq<0\RƩw2n;:$m^6`_h^NNz(prx%n+[mGvkNx?)n8䄓næ:`/}.`FP1Γ.S+SXbuv! %u1ʎALQY/, €8iZeY+^b|jƩebbƀ3c#^32^ZSsIⱶoq".3spP?_晿Y;It{d0Z橧 V0C*z.0Z ϶RӒ3Ћi8Iucu/<5+9m>j>]KvF(CUZgn勧"Jn^9HxdNƛ2mV ¡ &jDn#׷3n;`ڪBa֋uްw#EJHo$o._V~țdA9 Zb61Z`1'p.d4z>tB|X_D짚 ]1ʯbST_q)n,1Lkk8ڂ|P}.АbItJ ٬>Kavvdc`dmGCI%0Ulx;+C%~d<[K鯩sYH,"u˅Aϱy<l,H}LsQ0*hBҿY3tӄV35XEu9`z0yN_?o:dwT>NAȘ -:i( CnoG0`DM%b:xU1ϭ^NKzHyҔ >Ss,tj듊R,?DZT#O2k^/+yڰ%NOV7ʤbYv~5D/{$] N%(3ȢЇw꠾x)fAZh6 K`ĠKGL0m 8 գxB)5>yM1'yN_ ' υ[ T %?-i9}[Lw?sZ [l|'.,5xlRT>eb L,$LrmT%"Ī;Yf23Sl޻qQc^QhRzM Ҽa}hDp~zl'wu@@;3 j=2fʸ~8uM6n"S3IL \w, B#GEDncЖ'@S-^l fImڏl$Ud[p9bkjƄo)3@jYhwwNG(f lt߾4u<b.]2OrJ/k6lA i#˻#jmnѣ'þnnd3ͨtX*67І$ E:xR2%Hz:[WzR>8CSjtj?pbN{k ,TJLP{/7V-r!),La%Slh`!OB4$;7P)Th Tт1* ˂fF5z c;%(S "X vKw{pӑ3Vd`T;u0Pr@T !`+rx`0p%Ơ$[mj T0|~{BB8Xذ͛{˘Q"9|򷋥;6]ˮN(Qά_Qlb̜VHCWga9c&Q֟G YQ@ { $MN: ^ s:b]2$)bZ"ӫP7C܉`ӪKelrЅ?uŪd[@2SopB]91="e3uL_~ ؚ(y!ns|9?9*l6`( 3pRKH\2y4Ukt[yo/Vw, UPR<6z9nhJJqh㔾bג+_3x{gsb$F&gj.L) nXԍerVF5>:&o 1o2yv c)@im, 71ʗCd@Y-iX0;;~fΝǢ]yf i2 X|<}) Q1s "} >: #vmZ"Y$2h\2Z0(Б{aʑ J1*pDc>J/=m,"x{t/)1ڛIa!JIDyd$X$fCD9 1b ,F`}V"QeU .|}?4֙G0vBn7Vq?NDrZQ] ajw|Pߠ}Å@'\K+i|PAyidfy*i Q1O@ak޾a9IrD"s8T>isrQZrǡ4POeќT& Mf' 2kiXqoI.Oi˷ClCS~|A i1c8F~!:\W.]TQqQvkʭMR?`^q{DJ0Upj| `_JtČЂ'/Qx"vdnZY `P/1P B٪Ye3d@TH@bET0sx?L# ՠ_eዻG@ 2FHUg9dԾE5>J2V }t:#lu$(줌b@QYE2a9}<2t,&~2I"l2sv +HXi_Ws2 v]wRud:@A3Z+72 QHGVH]&L 1{EK,Yu|K8o6Si%bsCL))4 OOVZCGC,+9~qR=\9"l! CN`Y[ĵ9̳Jz52ҨFi=KPw8W$v8!.{A vRB"ͬF0)¨{dA.JF/@9$Y}ZcҶUߝl d ymSR-hbflSʐOhlXy Ώ{{~V~"؍';7PD]*딱%a?X taš-R-îbTEfV& >vhA#*s#K]{co]b_7UɸYfp\"ނh;B%d9+aexȀSϰ4[+ 3=Y~gEH"^''|Kח.{jSnxZ!!:8j}waEɀ܋ԏ<N:ԋbv֥fn6yGIoUi/$8S3x*輢h퍵3g0- a22\>@+"xͶ1ڏT'}v P=bć:]K`0 ((Skx SD'xAG; 7Ss!\TA7lUk%4o3 `O\E`7M9L]Xta7)Kj[0_YR] oX6j >CV+&f Sz*rhûyM1uu"@=4q?ܹ `>tLW*%v>|$zgW1M-(s$f]N$*^k++|xψ;-el#&L ?܋,'+J\%xɋ4mx1Ƃ<0"K.IgDg8p5 R߹HDOBxU0eJ)yRr?( 4][a+(F<44BCW-\nrko*G3{t,;zR+`xF-,)oIo*tVP[rjáI/y*p+7sN=T{x9UBm*n>W# &Uh9p^_g '6{xPhFfp=uNQ#LjZ-4CHh U9έb4gբgc⒒}$p|ߞ`dʳXa`u1;W D-}JuI/D*֛$ӮtQ_/2J$Q #`Nd0ċ́J'Xz=6s;U/&K};׬[uEzgZT;ݭ45}%~lML |2݋-IIdxcbvh/DƷtFJ0 ߌ Xzt}dMZ2 Q 3퐚5rĻyti bHU׸+@|B #lA'`̄h:gI3CuE͡/d";4?~p(9BN) >C]J-S;m;.3,4q7wy><=q^Wܛ%9=`AvJG|R%fg^|>oAg7v hDTayh/CT2-*ΒR*&G3x!Fs) h{",JUE݊b*es<8$|U@3 GKchPAhEd,!\4RL2Ξg&@]AGQiP( H1 d#'t.'w(ܾ-]Wf! &<{+zE}_7 w]=繊t6,ta=޺=핌̄w+l %jO\ yk^v|;} WV }geGͳOvfXsll Dgh.dbIRꐜhn)ӞUq#SG Whr0TPlgabga 3f ­:*%WVaDH^/`wnYc\!@uG8+xS)^{Lk" {yAFHIRV37kNU6 <-I[~.'h*=ŃQZsA6$wݲaz+ܹ<,emԝTq\旼I ci%Q8x~p{@Eav̭݁?)?V% 9epdn > aYiBHj_<8;ð׹G+'N 1,lN#|n7%yi9D])[,;f/fw$ hܣLM&h`ߝy9{ FG#[؃22CE$IΧڤ2O+a7/p29o ҷ",Õ1٦X0?'iѭ1)$ଘ"?_ҦV[޷f 3H?2ϠGVƑtY/Hy۹b|-맵S+R(zz+_@[TD?.)Ex9E-ptVԴzSi -W@\s8A=m|EchV٦Ut_SR^[]jQ%u v4\z@(0Nw2&Ɏ%4\$y Z6Gك,~:|"Ru܇6H,?S[.1SF jS780!X KK8"uF֕>Q!/szV @* Wn( o+NV1AznSn}f!Z5wwaZ |-X˄]zBaH&_[JX!*ZL#Átp¾Є3_S_>(1o;Vx6sgRO^LE_ىlS)]tSR`d? &Ή$*%)) ?Av_hۤ ¬Ɩn[a@>eyREzgI# -@[K,5˖sj oAң!ZU 1X21Fy@?Q" s9;_8 ]h0*ˌω}=ײL"öw"\x_Wg0 D7TT]_)K5Ӓ2Xv2ޓqqp5pJCzRbZpx, .rಘyA?hmzwq,ϸN^"do( ?_jlůē5v/yr +)}EÃi(wͅPŐW0%qζ!V+$$(vz?6-tB_Vi.naJ?\|qq\q w=ͱtyZY KBBa~KO _N ^tԉk 5jd/P I}9"Jp}4Ȃ:Czu`%㴳*o6WS2qTӷDNwΟoCx&Mn%.]eZh =i1t+[lx5ݤ:@ß7X5!_YTuJo ՜QAyߕO#~ h*ʅġK6dpdW9G >Z!qF83] co܎و%\đsC頞y^"ڿ&;FGKdLRNYr򚖰~ԿwG\j ʞ# +wXJEZ}]W-/ܶz~eG  ΏlJV{v [` '*(^*> >nuk:/?nn޻⦒/ƣe϶X_Pk\aqQ >y8cK4i,0O5zEZ2f E:]R<[{+hECj["FRD,a@_W[* Ϣ_L!H.Zc0JP4%jxWa4+GP U7I9~mV_20^SUE$vH='as¡X" Ets6C$bb@~CDAƀP6WUSا~x7+SK(ch 7+|CCyk+yW"Qhkfi6={'=ʮ4Maqo\%l&Պ yĢ J?fD#Ձfh=l>W+/Җ5+%ld h]@%?AJ`EhPPW?4pw'3s߂9jE<.զ vz5~D|~1e Ǘg-GYonE3oz}%klԲW&~&W Z)I`(W 'DDѠd~D._SK,rYRKm\B^g4q n lpaܡaMϜď km.ZNƑM/+ +7St2~:NW?aW7uE张D$1|-C^ k:C5؜@QfhV2Cxd3$<ʇt+C2deH>QhlTt@|}ΪɑF kH oq/<0KqPmxZ|<Ȯ2hNAPyQ6-!5+ w2\YheC.3Qy\gŰ2,l֮H5q=?i*-j-7#/hl*p2@D,b~}딋g!+9FK;5c iF#<_cof_هQf0 CIC:l2DKvP(%e L8ܬL]wPLk>; ;QclOz)P}LMm4ߦmH(V(G;#Mߜʑ +SD-QgQ\)3 l(%<^kа!QkEM3_M}w8>ȹXw& F6[Bb4y( m˴OĞfvWF4A0Cprõg]1tok4Hd\lP᠂.hn)MYف;q'߸jovi==_Z: jSjà`OqܪlR ʶȨŜRgͰՕB%&!OhN~& $[+GH$Ǔԓm6@)j|=w*edgu:kʞ>p2k>7{.@ƃVxG$b+v[Փ%GxWYsV zƮnނϷߵ6jvQp}?$^m}TS&|h?"xK^ueMR u & "#D -AۥsHM } ~}Nҥb.Ņ}סx_bdCß'rdق{DS_ ߻zԲ6vgGg2lrW$)lj&F,j0IYzvzMI'ҵ?Cm~ӊߚܠQJeu]vkDkK]bY.J+_ͣXamŮu.ˠ-$S xuL;ptFإzm+-Bz<|aʲ_bç]%()fW{Ɉ6\9^drvSf%](o]GWO|8ۄ)L(N)2͓j`Bw}KsLUW_'djh򸋹F*[uI=V 8qr31Gl y2Qy1T+=mV)rY)yM&3LJju/ҩސTxt\&G3zUBG##&!/f+5gs?Jw(eUnU4=(D=$4 fR=Q+R]U$G1Q'I=€|3Wݫ ]I5>R;{JkF K  m#u6!9jgnn<%ik-iMxPړ7=Tb]p$H"c2f DT3E#lX?)![<9;BLTv?%TV̵.*Qhx~nK6NgFyP+P$~NG=]ؾwH^NF2R+׻Q d ,Ӓ $:4{=m/78';8LJ »(dtLvDnM"#9z-%lLnq̸nfl+:y23\=껪BE> LYȪ/!Lu7`psncuݥ1\y# 8sb{H筡dE,]q#㤷#ᇴWj[qrƭ)ɩ uht>,┧ƹ^dNb"HPtళ9 zȈ_r_ԱR/Y/5pΆ/O',Z&ʂF[)i[)=++܂Y2:>٤]*-eB.4Dۍi~hހW! 4P" w`5 U00 Y9AT=f03Ą=!`ULIal DJCۦ2Wyno:T5ϏxvQbV@6,A]`Sxn=ݢ Rx1&> lbE8ˀ,4]Ԭ7;`Po Ytwm&IE䪑5޺V ,{Mph&'q6aq Ǫӫj`EDQ7T˓F_R q*b^&ma-keeP.A@V W'M.af3/bV@sy\ pz t޼?_*uȊkY6l9j FzG+{у ,k?ѓTr*`)3:}53^}?*(k\R!:'pyY)e1&='}n.#2 Q<H $d,Ek 3[z}_Evm١U9(qtr2׫4f/!Z㞚Sx]s{,p^"!IfïJ<]AhzRvyƲ7=6;*k<=씝۳œ/bku(75&tvio^٣8lГ%J>R8vd*[6ze7&dV9[ e] :L9TW=Y l6|&tMZ5,8&7p]~{4U9FcW!乵Bu [c˺=mEe$!T]!@|z6WPq\ :74@ǿK4ý,$dM(:#f::f;wi }rNf嘮9 D[))N/eNE-eW AC}Ė@Sj$\Rs{zp-<\\3^-5⾗B4.O g(V;BAW"7r7ee pf+)zhWZ5WV8ˇvy R&|km;i-Y UԯgI2ѽl,9hnZKУ}fdz/'>+uÂ΢]'lQFq dl^(0[F+nۖ w;L16麴]e!|Oݿ-A{5Qh-`ӯԹNA $]M R k؄4%IMYˍƊ>#)q*LvVJ6<_VCO`$N$$^,,ٷGP _E?ޱ@$niͣ!>>NlI9h U N2|^7wn*cÜTeD6D̚7vV h3s&{By߯Thmc|&zRGٶ#[?yWBXUfrkР{ܳOOC7km7$T4syMUl5x /H,V{u`ߤ_;=a^ Z~޻1ݒB,xH1QƒDޑ'IR[>I\aןrE ZBV^~uP v)a~GpF4?^]cLlB6?%('2!. f8NbPt-z Q%}=M 8E6X}vg<ߑY@ݔ t)*)xr+z\ko ),CbNPk(Hbh6 ǂ8Eי&%o4WQ%׈J uVXX.h(ബX3 y> n^z_^n96庢.ɪӤ̫zV&W&LDTNߑ%aHy2Y K}ַDv2xK½= =+eqdv;岊h&KbgsUm xJ t *y6݇nΈd ,)@z ؉"aN)|Ƹh[]qcవIut& /Nޓ2H>pUr.;jb?O4qZ%EiъCw<0nr=ɽF+礘j~B6DI<灗,$aqAm9;z~"߳ᩈ]4 Dl1XGn"@Wo %rBz }OҲi.'߃?H>sLxlR8vW +Xi̓ߙm19AX&IKToP p1Owrg؈G}Yυ{TyVոWvm9J}\:‹DV&;TteT, Pn0k'gCg'i&xafN?f kC=һΑނ)O\jdE\Zt $<įzɯOQkᴭn]kn 1pG$R8 ITu~̈w9;t[h#>yx#3ݝ {kr7!)`4~sQ VƧNI* YЈF4[ </_M³Iwc ~k;ؒtCJFVdKqGFk&\)kLܺ՘^_-caµ|J9!}SQ(=Є}B0x9)Ǡm ZfI2N㉚C̙CiG\ ]^( Bgp?0|wVt(R LM|aLQɊWH'p<wP(_@!N`-^AiP睚[4"nD_g# }dXJJN}a%i-yKF:[^ PrZ' iXX?^­ȵhJcۀ57 z28/1Rʜ[|7`rqES:#YH[}.9票][w)5''*2+֗⮺NRzTlQkx3pZr\C*z ⛅Ѯo7!Xxx&xƕܗƶ@ -WOI4b5Sc0ry%SE)>j~A ӯg$hv.@5!}]mb#v3^<)(5}:EJc-( ^]`9؇ p%ɖW!σ@؇=xP^s#E4MO3@:"HO9Z"!GI@,Std]]@8홒3^T";:>Ź8cT6^/P]wPcI U3`0.y\E RMր}!8Lg,qdI@oQ>g/ Gُ|mPK0rl{[: ]BrkU{U]Cf1m赙ԫ^*\f|!6sq~no|*aR'8l=q)ʉ@RMk+au'#CK|`f.l a%8Bȓb)Vꭎe,}r2fGLM&Mle{< ӰFp@8L"!~Uj@&:a3aV2$R ~j0Uwꥈsߣ탼[^!vzCf1oMpggƤ!m &d*fCa*uxΑFdv/so[⌑?ZK7ŀb,Tw0'LQCA6nV"j 7wj;QZ`3Paٍ/ F|4C 6M' K7Dx1$;Uա1sQuq AN7-Jez \IE7 ']- ٷ>U@8,)K޹> _ctPuYrJڊ~@Iߣ_H$p7Yq?"L-P;zh˘hiϛEԾp OBI9-_] T t-u".A@I+.Kсf3JeBh2̚vd⎉C=L[̽To$݅af*9mt%k&I?` 4剛j%cO^ߟYMHK-WnBfW5f2*r8JAQγq0:`1ް&r$&SF ShV#Ow9~W耞 S9VMwd' e=0~ol18E?ّe ޾ņ?MKgGCg${5D#n=Wt~Tn(Q\_z}x(Zr-u9\s@ZDe -yy@I$/M%]ΐ7YaF99k=zP&uPĒ>X67P?ʙhkl;U0Sܱ f3Y0PFOZқ1?nz}b,}WɌD+_5>j8\GY2 Gs -ckװQ e%!,9q񁑯"֞%~;rEP]yCcQ-Ƙf/&s _VBg dl NZd-q.[Oky{ q,T#BC]=/\)1bS$VN_s!RK/Ūpulifjj*jD{XC_S9 HdGAVw:[8A[fgs4A8(TT6<o[.ǰQ*UFpAXs'Xf:ggǴ<(4Iy2DBOXj@@q6F"\uxcl~7<ܥ'{Oy~M.ҭ_Iן:;yωY)WE2j>pүdF:{yМZC ݴgM룪UrKo# JrHt>D/hӸk* " #hFP6%3BC5h\pXǡjMz#ִ0frLzRL@=w>b&=m$ exׅ(Hj%gM4^iX{xl$NhC϶$zMeS + NFGpˤϔՄ;O:ks!W4׬_pV i]jqT'~FڶmuWg/#Ӫ{PQkpg.K@6Iq)͉eۮ>m5;U 2<Ad rA'LjLF-A 0*S~Ì7=3a%}`rKDm¦AcmOq7~gUkku%ZW{&}MxA:}68 #='~iX4o@ * I&|nŊY!v*h)th/pRӸf}t ]"]@ B6=_O vZi5`0iWBV\˝Mk֙[Kϻ`+\,ѥu (,PRo>Ɂ3)Gs_ .^imi+Y O %x=,ft ђf9|m!٢QvZf\{D|f5( m$/j{[^C-]^4wRVK ߸<FH-3NvVwe0iddO[Fgt|Hƙ6E vu\5߀_tX}Q!{#(/%컽6w;q"{檒b/1)3)@~U{;?@$,`Srm}vo-h#ue(;c_݇$=(g^:iX<(08tg~JW/Va"H+ PKl@fx1Zk&AH"VcЈ[pq (j 'Qd/FsӠu hGux5 :i# Ɖ ˆO&Б) WrC#)bMoS9{걬T|[I7{u4m[KS1 /rTb3v̏nkLSa3ftɥהz! r4mlP|;1U \+ӿ55C6 )]Q!ї[3Q@7߁V~Oe M1^4% >Oճ[I3݊2jcIq!JL)v0tr~j"^1e_Ƀd 2:˝嶧|g]]7Mdڎg׷rD+ٻt@FU|k=P \7VN+@e~ʔy[=I'&)sn v|(CC Cl~U? í`AzQ kʾg GΠHBo]6OO%Mrdo1*z)VCgqH ! `Ǔ.inzfʊJ)MCHEO ![zQHǺ>Vyv2N~Xbiz֧83s<KOjTv}Ѭ|:͛=KNO7aqvv"{xF9pyKjfO6 :]3HC3փrKv#*` =%\X!'^T]L6I`T+J~<mC\ǪDʓ 63jeJ[(`YOҰX̸NŹr:ZQ*7'V1p3fn>oJ`#˭S9GٰG–_V拟8>0e1ZAbp5n{ip({pf]xBzOĻ5<7hQj&%&6􍖵 pL@F-tޡZVhwӫ pN:Ɋ6wTF|rq ~Mh 2skѵK.V~ ueUa7:9![5b a?Kp{:s-'y0D]!#sm{E帜>14Aҳ=c2ِkY4?,M-THO o'%".0޽-PۏA`:Wxx(lb k!V0J"\C{*\мmUwB̩q q9|  ec?BoK=[x]=%ϸ#/b,y:dQ R-DIIuvі \?ZL)k. ZôOUoR);R!övF(moOݼ.+m|5;M "WtҁP۪NtnYfuP9OΣ ?[a0hNc5uOgjx7<+{_C{T/T(6gf?qlig:rwh=}̈bk(P ue<դLLNū$*nr8@ '(xO1K~[-,Q2 ŹT] A:N{i8:x4N,]mc%ps胫GmC{oMz#-MB]/cvKF8'@:L.9Z"470AJclAJ+a DS2!1a.c$vqA]A5]bN%h?&wǥl4V b3h(]35d gJP!⌤!F%W /եI}DTnBH CU iͨUo7dv<]uOw"U@RՎ`T|3u f[Q7PyzSLg528߰z_x:6%'ջg+e?]v~"cօx1B$:@=Yx9'YvmDQ씬=3%!*rtO\kkM 4X'b_r =;sa(%oQ\eٹ1P5h^$oZqrSG>Bm&*GƵ6m:׋g)y, >9Q(vW4xz1D$ ^fg o]ZBmh-&(ΥqE7O2_Tp =*<,][&)*jzMS۽J=ܹ/PȄYdD^[&I_kJZ |3MB'Iw32D?NM)+!~A"L`aU cf(qNnK#ac$#<|cSMm}[d1F׶-֌h |1@+n0!M Ado,c{I~,˜H[ ֫n[Y/Q0V܅QHPtٚ y%womE&`%ozw?t0!3+hzb:.No\΁7S L 1Kkqp嗹J&b# ,jUb-qDCI8Lᨆ%q&]`A >uIy+! -dnħ*|3F,zoemT= oƭctVrC~odbrطq袴w}\>: )R/?νbOyP#ekJaE&wHFɐcVPagā nJMSs†;V&6&%ïF乥ܟ7Y.צl8d7(͹=7płN@T;LEW(5iU2!=*I =qO̒ ӰZY܏R$%P0m \ a 6>=9|]+S}DpxgC5D/^a̘n%}_nitUvD7:ͦWC7]KDL_%&x:gd|^׿3aC"=" :L,g֓DIwA ƃI:A\pT)Kt:3؋}2_{$X %vt_oK' ip =:mUʭΦ8S> LAd~Q尿Pi'2u+X'8Hv#34q &o%eU.?Hv@D>41q1!Ų O޾up4 []c {UazbH*w:oϘ>`Z2Q;CҕXW͢HS-QIw i!.Nt'J痪bV?d0 (3axپWu2j34 hN+ +^EԇflIp D8v`*4Hҵ2JP:dZޡT=2(PM~0XoUe~*teCG'&hݥI橏2mokʝ5ΘiN. 5(=0jlBvD2F |[łs)>g_(A KJoZ1x@b?G1"f̄z49a.N!O&3LדBŸK(XJUע\rR>'(. 2/<}B!;[>uxV`kA̛<=6m}P8f-0ٚ/y: ?w ;M֯H}L&i YhB@uÔc7v/יF V`I=`"gD;[+r`y;V{4lt>.g ^ߢ`E ',r<%8DnFi%5TCkWPSD9|Ju`*Ot$XuBEL{ ˝>drgOp 96 {jQdwӞ1p?#N)Y ;_=ߪ2kl, @Y*p,5-Ɂ9 fu{tO^0&z?]WWB섃xӼoEo`mWo5>+as$W`#Jy!fj6sb J:.mZppGyyn%Z)[rݜD>؅b | "')i*:u ?Rq=2!rmݺ47ӆ Z38+aLo<> BY/[Z %Hd#,9J8t/7 B){ ,ٸRɋ`dIlQ`D IR 5=XD%cQ:߂ rv-tgSJk QĕtlƱl#*v`hl;`XbXIΤ#Jڄ(D u[AJ{[IJ zv:NgHBJ 7mpaUe"b7͍PG Փsx9+(F 2pwVsYwuah LĄZo? d/ϓ@̌"v\E{T94COm jIAϼC>]UnHt]8A o  D^]LN8EG }{AuE_9#<16qt˞<6&x>l6;ߔ!w/\O~I4!:&g?]ąόï=!j9GNwRᔑwR-%16€C&9.JOf`[nVњt7ACK~!@ʴfȮ/Q 胬HV el8s#c.~;BAhCvEM禄qĚ^pi-Wڿ[9Uq)]] z% T :7=V׹}vld褭dxؚzwSv *oaD:*)Y]lBfRܴX.kO`n )|eTysZ'\]m#n:U*#b ~v%˽XC1v-:\ >sιF{3;@d0gy=_7Tsɍ;X`^ `tPt\[>Fui57 1s4)E4L R-Ɵ˴[qS atwr"t,FYfw1J͸ec0Iċ W@Sjc讠rQuVSO,-jDW *:ͥ. U<#-d6OZ.-\'Ų,8DM*̅T$_,WPd'^.708Al!<`˜W&XuB灧 27DxJ:#v"kyO˰{(N=S"D[_ eJj[PaNdPj nF8Vu%M9otJqqp.`t׉f~D8yΥDS3]!n[kI*M7ܺ"H+F|?<;C[k#mRWQ~6uKC0BLػ%jIW]m6mKôy_ydXPm7 Ԝr ~^u_f,o\a=JZk0T{&~)f|9,.zr-p-hUD|ˋ+,ڕh^rN,KVuȮV0*g p])]s?K& ^$ͨNēϋC eQ yqlnNG ?Qfa^X HYu(dVNRuF'qUS7g vF;Tf,`;VFkقvڇO6ěoV 5P. _0(}1d`2ZVJSk-?H;,;Uí9 !0"nwB2+[xfiO"@wPQ- ᯆ2s0I ΓEGi2,x:>{K4˫=3bn],%0%hƕS H0סwR릡Inoz7AJ1A@A=)t\S K׾)1VdwBb5E/w2s+#/e$ rHP@OX 0WǺ" &#P:*cyw9r`j"AEDwP+e[vWx?x5t̡xK_F"=d&>F9t#S>dKCwd,md\4 bJ*t<9LONXH0)r\8 D|gd:5jV<+/jDܾIMp^FyX]"gz?tL\U2a#V̽4\@b\UNf0o]U=p,HNvԠt @W>M< Qb<+Dčb;`T<򒹭c4Ya7"0UJQ+]mcrw,Ϝ)KvN{F@{mϊ~ n hA :\t +I!c?ץBˆ2M8$ f[B*6)5k O'MPBO)"3)0 u i|:X42yvs;&XƷP3XYIIx 6v&'LQMW E!AZ^Fa7;bgU]n`:_[PW|@Li8;y>\^Vl4:2!7%C BD^DO;[i}QHZl-&<GR?Z7ЎQNv208*QTqZ Q{|>!:m ߯nzxE} :ک 8!p@b>C>E0~`Cy˺wx&G笚 >2wU;kD·RoO3Xɰ"m R'^L#W&?)%_MQ]\C5*~VC.Vm2sf_~{,)/8V*݈cNK[ܞhC~UwY9;Hblev"/~0z a%"4iߍe{.M P`ӺcfKķ?t>U0߭@YM6;?~o7 9^!̏ƨɎanM S!-$4(f[ujLB2zg"ƁWG}:z;"w۔J.8iC5 ,,>b\{L(z;-?n3kmv1ʰAP铖7-  1Awb%$v2.K(åK1 K0m'bd 9I+ބ'TOJFAY@38 o%< EX+\@8ӝR'cEפ"4F5l-O!ݥDC*dfoTV<\RQ×bښ9M2"5aՁѫ/ i3-XsY:sG'C9 J{^bbʼ˥K䧟ײ.]yb6nac>~;vZZVFj>gAr:~z:2qGr,ZzrxP^g?+ 5O$,NkVҧ["1dϒ]H*|<ΫI֦êRX%U8~xVGp]SaqX `\Us嶡+0/CLvl zQ hWp_!T jv ;cyd~V.'I%u,U@Dz(62tRIu.9eJ iMqy  T]#R:2B̑< >;v+$")CtRmqֹF4mFUCr$F lo ZR,c(0eZO]$242dKxxDK5,i#2Un|R%xEc넔pq|z!b[,|?XѦM׽O슊SIjyGEEvq`6B;S'^zYh93WlQ` -5T.x+Dmu=W3]=/d*@+5D:>wHj~ BEF}7?. _[EN8 9+!bmI-dY] z+Fޯg߳GkBF˙~94ˤa ing^H"D͎OD9Gf,1~ "':b|*pG&x\z=?r#kJp3&5#=Z[5n7NOUm97Y :tOdHdqTKS=^Uz~q{<AKv((ǎɦ7Awӻ+Y+,&F_Il=kQY\,7p"+uJaX(te0Ho31 M$u7s6E_0%O ?jrkK2;Ӥ5uz"|T^)6bOQ89u(BBCú, G=$t<~hrT)RM]s}lƭ%Kuet$ IjD?1;]t;6^ne<."$\)kA+"BG퇿Bzef[%^@l# Џ֥:%+wp&OZËGdՑV31#N:kgbjf`H>pHx憚*6ž źLD,oy>}hER5j}.Ȗ`$Ֆ=^sogKM#\kF13DQ/.6yiύkn^inqsa | J@6T ve&Qc,iPgsZB+s]_'8 Kq5tB{7o-aYT*@ⲓ~< tﱍ!5Α:F=^ְ1ۚ Q r$ 'ʴzfrz|]=Jn~Vo}A8j [.X.HnM2|Jyݑ`xNOL* 1i^l| *@Py&ruSr uvdzܛ.M@ci?o[;zT-Lq@y|pwݻa\P :ƒVdUs@"M7}A 6o}aE0ؓRs  wnYxfug}v)w |8ё֌Cb -VǪ ~4Hv+ګz:5IS[ $%K0Ī4NB%Zkx;O;A u/`iBJ"=1%HǷ,W8l3zG Mt'0&Z^!1 ev^| "Q0ಾj!4rӌIʰ)޵k *װh P ]roqK'#$XE*,hؔ9rY{;&N}ˎxd4q\ʊ3;@LX!Q0@&UBmFWA v z$0ݳ=ϫ}!MX*D `˺-^;'`Ygd7 MsdNL|1kw]f21.t/S'5 gDxS7@RHyBd.1`:0D(lc&}K{ @Y4YȚ`#X%X6a1{d&uTv3|CT˗V]ђr(=́ʼVJssӡkւ_DhaFӰzU/8>2yAcè5t>\H_( ;y}RV[` L1uxy\a{$ED4ƢkєTFnuŎJwkPDZyTIm@dΜ@U|E4ĥ1Es[Ag@˩Y>J3 l2=3b<"$V3~dbzMQ]-ܝr?Ӷ|glm~ Dc d;uA/v`W/>1"=@Ƙlڀeg X TijK('̮c-R^i"v#0@L<4+k6_SNMtr\$mO B SvixScLJe^{۾ymf\rFkj>7Qؗ}[}N3аq9!\hUPD@HsKq! I)%2( HJ2f Y&:T {Vg{'W 'D3zXѢP-KW>gp̉^<#A fZmQȯ`ͱŐpG:> c:7եxc)،:觵mLhZSԟ%#>c#*_D'mPW[pJZX??>irE+W ǡm[i>~]8K :p / d8UjڎI# f!^Le/Q.`z)O\Ρt"_B>Y|N=ɫ)8i  BZ8x.FIFPvɊ_FvmEܚx$}pHbZExw#4VCW!I̮ rx,k 'U ԺHs;40y~XZE]kHk7SFU=|c^TxԔ3dɫ4#3?l}^v^DjSn Ͻ~GcҭR]zϙ'p~zRFv)#R2 ހK󎺓#%Ro'J*:R3:_&f"EӃ t4oQ7sp'<-ZXϳ) By#T991x.ZRۜ{xĜQ?Pj"zpdӃ܋MRd!pێ,>&GMt!k)kՅcQ?Ý|e\!օ,'7yUMWɯ&>%k~K0* c|UF^e`cܲSl+v2$ȯ7Tjޱd-?zX3^&& ٨r8+!BׇsBa.N8-Xٸ--}$T׻pOLxׄG4I Z /3!e nq8ļ1 џ:2HZת7mW%mJSԠ]65[R 5dR' Ih/@+\Ţ[X2\kTWr Gǡpeˢ)CTo=/Wh8h҃hML Dp*FK5=>F%7>wvm/=qGtVQQ#Str#tƥIT5(Q<rFNf[NNҲn2cPR5RS"7&_tujrC,B"-`eSPJ!drb:r,;2W{.˶Rb HGUA9Y|FguU,vD 4* u66g3V?ha/pT X(,%` Kz p  .TT!L]dzb m{sm%HyTzcm*D=njo57&oLT,͕ҟ;a u̺^wٗ{$^"rp7'Rz_j*{oĸ^E&ͬ(r ZO$v;q'A)v)ByyOƫbBr}:d&7]2O#ΒP-˚sŇv; fc6k"k~Aiuj"D+\[JfGkj0}XN,P"$^L*K$"/ ,}C9R ˑLd#>Q]*8M7:$Ggt_ve'EisZ"=_WK]<<1!A}ubnfl֣ȱjp t1&+)O1>4R*|9JE~ʰ=ptŪEt՚\uZ沵G]7Gpm?6jȆ ˾_ecD~Й> =WL1B G]d !#|ce,@./rɹ0F tm8գܚe1$'t]R1 Zhe$'bx[ҙ*Y]@Ark|@piWζ[TB.mQXb,zs@w|)ہY |/s}'tOϸ`D0]v-vn)ܶq' }uk $=r(yh6XëD, ^Pג}3N^.$c82wkĈnČGkU0  nr*aJNl⃿1a769Yk ]8)RTI?XPrZ:b5rGockPw,p=^Q׽M[ٴ'ځ5 _0A Ř GZqty~qL: iZy BW_f;J Rv@$:j8Y8<>8|{!^i>EQ YC-DjUYuX~ARm@UӹH7 ݪVճ S!ξvb>B#+҄.v#l5#!uzU ͢yE*'_y˞J~olf2L&b[xg|YiVKP=2,aO(WCg~ws?RGL|pێrmU*5*1RkUU1<޽•{k!l?y]0[T~JvJg2FS"˛5ܥq,GeM=Yvi2/Pu܇6%#5 FЬn5Wǘ+!n |@Ձ _9H9YW@N]%ӱJ+(Jd`6'/Hswr^ν\ze@: jtcb8r֠Hl ; ;%iO_KE"i~ّ #N+Y }݅]Vt)~O!xLxNl8<:rh渰KlH7A!iexj3I[_yC-[Dk-^V7ȕBa`S>,7@ۭts%+حnVy=.a{yǰH׸>I9)U\ 9.KAf9N1HKZs_D96OoshVCj]D.IU/^"FTݳa#ed\@7ʇУ</[;ͰR[chUoX&:;u#*. %vL5CgJ:hR[)|UYJx hLos!$(X\}Ym3ݭ<#x߇7x4k18w oט|,QvBF^c;|۶CR:׸T$Cha= (!?xV%þ?W8zڇqټL&l9=n maPMu.%2k,mgc 's,q q<'ȊqG{co8 ]A~e_O?=&~d <(#Uj8oPY pʝO'1WGbqy]u^}'Owi 꼔qSW,-62ƑHX9ρS)ʙFTܹ0aSF!U\Vs܁q~ئAϪ:wB[kE!yIЏ~}L|6»iduBLets띉 V ]-VVl}G]l;)%PS%riDGHj=3H_qCy89}Dk q$"h:ư`u} htuH=˜8չssUeed8F?rxg\ ꛙXk_ň|hk0hH)*Qr_ a:;˄-CmقhFHԆ'ooL[,QźD2VWIn)zfaq9u+'׀kE+;2LOv%k~ݛeNpzH¡B+V{zv 4D&:XmP*E2Iiq%A!t=Pg촐kh.6ujWILoPfZU؜2c}]6Cw<{;X'e<&؝QcȹR.ff fo)Q =Q^ʭ7M {_<ɠML}٤*,}g2'<`1FKtD8_y6u'5J^Ơ!~;mX,K;k[ֵdܗ;qG\R壹#P @_Ʈ7vMMrmqEΞ/l8dNU 8& =gKol%B/gŭgfKw7&(${sWrl-a2mj0g3ߢ;V$>s}x眇_9c. oN]L1fuͽݿův);3)-Ў_f]NKՖPǜv[Ex^bQBG I a:g+gNf!K7T5Dxy؄>䣇 5'uQmceN܉̯9_1w:1G|!Jz!DD7 n{|UVdͣ0nZ>XR%lxp1(Gvj$$G;S_*ֶw~X(4bYm= H]GF<*AC~nHt3BePY͟}FA%ɰlO/ b%N?,VP.3nӀ0O?LI \ ><^iaxJ^uQ\u۰z7|=C*3K•(sޢ1Vճ%Y4CX1aB?̩}M$07B&=~].'7)aK3Ҝ:jXGϭs,CzdZ߈SֽLxJ)kW4 ^ dD_hM[RGhí\—yM8Jy-ȶOͷr[GM-w}lrزi,V-bWQ{i*Fܓ3+Ng@n4j\wccŷ[pzF{+ʚ!Dn" c(c8EK4l .RBixVT݁H=fe :fO%mu&v  SmURL Η[7 +0ח6! ~KEGN(&[oءP+C~XQE-ӇZ䭷fwq-+a':tf=h --mfr,q=n}3IGQ$ );̹ Kɮ@ܩ(Dݑ#έHJF;/-֑AwIYW7oBO /o Gθ ؋^!I`w|_tqz:.I6gS DS^KFpjUHh+7W|qtB[Ä349'[8lkl CD}, z% ` 6MĞ\j $*Tf<]&f?\A7c7̤JWy_hpt驱L3s֭!EZ* (S&jw:#E7K=hI 7XV9ݧ0xlgL%3?;F+uoNsMצrK~9Afx^}(EY2w. BdBiLQ\!%'>YOw4 WzI ?q8YˌT<2½6dgƓ Oʭsi^BdyW=B9m8>*>>Nj2T ۙ1h;+9_W &* m\}]:G*M{HLF?_H etE 3[pW)0%9{u(׫vN."Y5W wr^h߉73 ΢U@ovpNW/ӛw$o M(+N:qԒ)+c*"XcM{zE %쀓q5b^'LnDE \j*< K\`-wQZIXoָJ]\H $~IĬK.6Mo1 uܣ{ dfjf{2(87O'ړsxJ\j`<v$Mqx4?zSK'MB]_:-X?$R-mqj%SYJcTC!7<цͽ2X;-,ݔ]\}>6(>:L3a||fq]h BfF83g2$y גs2@wXZS?o^)o2yyG{¨<rIae/\|( O]C6q%0vݺҔJ*9=j1u[Z[y!_B|E3I5h5nR)Y%)E7s8Gi!N4!{n(&@6 ";K=SPIժWCCS? H(s>gݓ 9 W.g: OW=kڏ-BeARR8Bw# dlR-T0aCd3Ebve5M9 #K. &.ְd4@ h>/gZlܐzR}ډMWH* LL.0}=\OzHׄ܆%/.ju4a]JQ|׌:NfiHUzraϛB_LK[3t0tҴ|ؠPGAi9 –ZuY I_鸅#Ϫ}j{wV&.\녲h?DZvΛ/>Q1>6-Xfb-s}l|~-Ck1ߏHZg|>|<_t^}nz?4jFhI;eЀYY#aLĩ؅VE^uWG8f6Xۙ.V#oRI>sBymU9)lЏ=?hyIU f 4#LX\.XJip7! Ѽ7 B@Z.^ȑnt%x_"Kko+("e=bwL^EXB`r(#(Kj3bܔnYQ)iZ 7mVZ jnJ6.!oj^m͹w`ݳuB#عI""Y`3T-A *F{9"0Ju[蠢[!$/M>.T[3E(.,|uG^CdDypm߫(@yQBlv~>|V;@!_0D*^GdK^8}p%k'dt&4\ /ohXhFn0oֿ ܝԬl''mZ3[o&lH]75E^9߹M1n8`rZ,>ClS/#)ڌ q(݉FmS0kqW348ޑDE8x>I-YK,GEyG෬/3_ K:rnG~u۸cZp9_pš; vpI!7@7XGN*b#a=>&Po67~i2%\7F(<3@MaRr1%ܥmqHQSt5t)ՒIqh8dBfuؿi~C5 @lP5T-Љ൩c fȝItxC`iK 1G <Hu$MJo1PKv!C+Z)/ V~;M~#B/LVC1`&K Ѹܩu'Jg߸Ο^1q]& T"D0Q:T1Si+"^.9w-Dfzն_Gʧ'=;v4liZ~źiS57"04m~w$D֒9X=|:3€M`  p a=^VHb[G?H &rHQh $͗A.6:9~ϟ(Lʁ}#Ήju~[Fx@TяAk@P/a}ì9r51ɶZRl5ǎ9 7-n"u /"*4`A~Ь(oߪ 6j_J35! {X4!78وJ~t -IJչ)+ulKƈ'rW꿒5:+O҂qb $s]U4wO%9^VջspVS Y`61^#GV5lxa8nR bUfuEf6R~B U7s|?xN} $ĩ5qb!9G^Moי!`Ű<+1q@Kk,o- {;RrQi]m͏Oߎ27Ҳw3˛+ j֊xHb='6">6Y5R]\:J.u~_ _}O@Gr%xy)nWqa;1oy4M#5_@AC:ޱɠjKGWĻ銦HtKɂ|Bflы/(X2bʛw B0((`8#%b?[v~֢lіA0zvZp{eZHHfISN})JB2<ƫP[yP$#lӡtODz]|.\3֪kWaa c$<6cW WAoƞ@)\؟Q2ajw2Nt(bJ൰ZuS9lݷ0n}q&9N[ky;%FFpo{YcST}(igM٦PM&QW({])Q-W pUbKGɼIb O6 9dpb`6Wzyo'hFbi%D J#|YdO'eMYZpWV։7L@ljȫ%0}UV|hk2_ c}Ō`Iox?+207{aľ[@*@klnIG^<ɱ{trâi~MԺPhLN,X; zb{?`U1ŇX6}m)M[% GcEg)h:83<D_>۬뤪(N}݀(]aHge=NMB;MYIIWC0H%3?:ڤ9E|ua>֒Uޮ?(Pjn54O@>csk׭ڢN"Dzcw3c;|3/iYAйnMkؙ1}b3ɉ2V&5Ȣ k sslXΑ( ɑbſYhWTq:3C'Ȳ%o̟ k^&spZ_nclfJ@fBR_B>}խd £%efwċ~%Ē07 /RE}rTXry+}|X_6ѣXԚ7L[7Qg5 W1]U1g䵮t9 80tR- ʺAA%v:ٷ^/YoO:kf;H!$/iY'xxGm&4/N/)u ~*P ݜ)̟WQW5h_Nc'B"L4+g/÷(87 /A>*[N|+0H* 3 ^ӋM"'1U x^;6mxZ6Hj +)DwnvG苧Æ,ۈjl7{r(NֺWlIs@i۠{(E0 .dTj5z 0M\?Oo;04yOԊLkVJq 83vbP|ʦ39?~>^%\U A˒U4g?!WpgVawpPL= gFSmm-!i:Uhݔ=q&150)x.;BY-Tb0zE ȟB%ѲD@j+.''Opϲ\o$"x ݯJ+\r=7[0t0p8*"`HLE-vMHxz7hkoK|U{2\M5).@p) }najorվ,;Y!WW ]" ; ~ui䌇!cIjw6|zn(on đlы&8#81f*˰M&􎼳z$cŀP~hxe{jќX- Z=zfQO{tqSmɻǺ1}Z뵗D%տP/d4*pVTiry~Oo-tEbj^$qޗJ0o*3&)@Z4ܲZHڣQ p1]2 ^ XU[T"507n!x~Zk=ZukS_cZ1H6[/@4ZF+ͺ"\vaڑP_*1Pr0XPd< CA QQ6=`T;ֻoIP_EMcG0EA dC% '&v|Tj1.Jv?}juKO6_ؼA5Їuo4(yewj-s4,cfF9^.wԪxf$9W(/&v@r6ELy`sg rSD={=hnqc.<$-^FB.ny,r=|[3X# 6`DԢ TVPPM1`z3lS^%//Zg4):̚[:W[*2Q\Iv_#P951MBZ)ˢ$j'2s MMЁ Hage~,b@K-uV7 ڕbI;[Y^@(RvGf3TW-~ (sŀ e,~u1QMY(#1T'C& Ij%ο*M ?8FҤ Mu5-!^s+t"C휱Ȃu_LS@>秭4"_ -A$j~/By@'9m{I.=] @P>I.Ԭ3+duA~Ў""ܓG2륒/6Hj)QȖbcHL |Zϫ&tetQYJP梔Ln #$>H ~gpdy G3l{d噦lW.3SzY::>mh\ͬ>(9@tk@m"N9dbVI;yx EU55V3s~7=C8/u!ӂ~ҀWCW*5(]sKVc-^ՒxMm3Wk^^f[J^DX\AErxocT4T)x 巻'¥`%߄7D2Q^/Mn'dZxX_ͥ:g q-@9Aq_ P⫬ϱ$gC^rDgۮ- Il8<B edʘ݉Y\ }̕icwܗA'v+űj)lܟl+^b5PgmfdrPht W}_aS>l]Qĺ?%8zo348IrWԢ! 1B`) pk@+@.Pbm[Z,xz0"4jDOP=9,e:qF&K=%()!]dN*%:O^*8KM H!<^y ('+~}&FKŪQ}!X)^Lbn^K۷ (L/j֒FviHcb2JkA ?UAmw;_ÄN)S=$V+Qj@=& uK穙>r< `ܘ*,@jh/f!øhGeu@7NF4ZdŅRx:,YI;GV_ X+jB(`rO]5|TwyNmXfRP3h7jYP3xI\<XievIwM4TefK"&^R#"v#-g_Y~*/IrwAqp qz{%([Dd˻{vo+wB_#hSS?kxQ4lbtNkD89 ~|V*J܈3@9eE>*ݬo_ 5 ?COa_'IGN-nx #47 .=U{x ҔF]}@Q$^\`o>E2,ȵCcPMtv0>ŕsKXC >BfkHw2~3׻Jǿe9)k+CvᢩyOM!*L-XCybqQ $Yնp,􏫸^^$Ukdֱ),B ͪT ,HOAzĭ?@aT0e3X=h`+&eɮ~qZBד`&6 Ⱦi ;Ex(Gp\ CJ3"/ˢN:EQ*dENK+y8"\[50ijߵI)eծ/ U4OD1@0c ?[>u-.+KT~Z :xWtLqߗϑ1ɫ֔ʚѰӍTKq݄ ' _)@EAF]EؼmRd]bcAX$GR=PS:M4n-|)#4kg96V~g@mq#5$Pp:_  A[ #w%Y?3 i)S۠Fu 9ak ǐ RG/u?'Oe bVnΝol\R)dZm!  )$$H6H9UOhiuiصztFu!S\GQߥA+%ޘ)lZ.:9-}T o#[-']F}DXxSWzA̋&{;$B69S>b<~ F&p ln "6@|N׽oD3pk/`,PO1O+Q 7ŎmƎB},э_ǖ3P c Kzl}\Ũb0'djU"QEl*#R Hn@ȩX<|֎?+WA-? !/bSGUap$,OƩH} ֵ1w˝mufR{+1t#N&ߖ9CBVIrG/ 7| ]0ZʄL$ZTvB!9!PS_[pvnH Q9[mw@E UThQTE/svRfŸk{Mg;얮Phiuj^t2ßG{|$-y}d26 d*7N)B#)㎊k]arA}@.6ŔػjvXKoۈ$UҔ\_,XBkt dTngY*`"YrL'l`6&mZc$f$Ґ.NmB? *p!]B5LaޣqNy͂ڽzM cdQ0L/\))oQ|)ZGJ5yMz+++ &l.`/22 $v&Q<7P/''0:0KVFaL"ʚ\|Hp87cCxpsx1& f nnhkD)QA񂣽-qlNOgnuaug|qBTwWBuD5:NY1IkI&-"C 0ƀ0LmN7KY}5Z0Ƒb,rk{c%_bZX 5NtU9;[ >[4Y+Oe F6?"JakQc^v >zR-D  & ,]mdՑ{̹t ui>jhWhs ܠڊ*LV<͝R-}v/A*\Y](\g[+wB^VMC Nj !/vxr$% ev=lI.^iB Dn14 o譤cek(|bݞ%qn,RhҜPI w`VrS^ 锴SZy^|kGXzҶ# t)V-T_%iuky7P-5)G &D8mW{CR@ͪ%P}pSsx7dKZ);s#AQ88RP7Mf PjZ"2m2ԦmN@fn_4 xKj k^o)ii|E-;qs-]K"J#s |.$tBݤөm,N^Q1eNc#o 1<㖟34u p_;^@D?}:ͫ$ϤPƙ8F3oM|1yT0dlַWIjZDoD>g :[G_{sx j0F&nG !(7-s< Fu,|LP4c'^ݸcc CAKMH%fZUȫs5qg0o-b/Ktn=C:#|Uz#%wzW*>9NS6EF<G.~`s*r&5w ,YJdO[1ED.=B 8K4dR1J? H@uYWL~^)Lܿ2q]Tɿ@D \ZUCT2m xZ[;=zg!fTۗR~X0: <Գ䕰܄XCL<%iA|6%JCnFi\v?֊hQuGV>J2pbO,F{J^(|ٸ|N/N73lpX #XQ*[i9~?՛iړ }}# ْ*ˎ?q*v!{)鸽9mpF֪џ#i@]:Ai*+{<=V]uY볫B.}0D?/XaF{ƌC=!pލ 66LmHQ + RX=l.!S 4̅ô-l4Bi)dy >j-vn&ބD NǧBqs9S⪳LoU@>'J᚟H=H5|HAVhpqI tXTje QQԡN+lio~OČb#9e u4nNp5|%ȯgWWOYMЙQgOFZ6c3GNƼ|uFcQgb%9' <ξ;f~CCƜ% .X_,s_Өz*\ss.8Tc 1+Ul)8}PKJMdgM5G?V_n[ 4;ۻU,hYƔ~?_,a((Xv_IL:N`ÙG*EڶjÜ|*aMq)D8>XFQ`ZPJng;wwwjPFHk1:2 6%+XvLӅvpE> &"95üs(пpj_"mũIm'P"adtV5 ~x/5l[UKRʿ@kv vq3qIo _ruLnbrH&rЏ~ ;֞amSe]@x*ť)I誀iGu]/w逛?` Dž鉩44xa/i|궮mlGtUZLBOnN H% i/B9ROh|!]=f#}Q܉yyƠ}.>k$WmԐyQIg9Mٕv׋;Ă%p>BqDNɥ;so Oh8AKMwF|-X^BwR+GlBY0xŒuGnf+` Iƺٌ^nfPWc" z8Z1cm̀_F)τs9S o.gh3x%Qc93Џە6Kcɧ{S ᒇs"5]. [^Q=.a0J7vK.uU|ҕEW$,,]XV7&TuL8lϪmdt- 2~¢f鷃TR)a #YE?vXg:DȀ\/||sՐ"0|4|8oJ{uk-"wn/V.9qUDpOs_=JʱPY@_~%;I 6cAxNZ}:_ZM494-H I(f@pW8v~X5=@ӒNJH=|u gCz?|z>欐sU"h[z= vOf)x&N]5 8 ÕocvħivVM ` >w^x21E,*b̀8J{]QitY.-|eLJP"ħϯC"/o-J׍㕩2sD[@ao„~/@Iȼύ`g|ܦȮ_sQρ],f?zs>Y 4qwjk!v_j}U*ő6zWهBѤu'9 ׸AԗXVO2DB/1jgso?ȷ֪v'c (Y+LfyWf垽zz峴~" VbJ6dn̐׼S4a ȺH ]apz]65~ΎN]_𰭖^ME:i>-sND2eR< O;TZ^ڹ|r'n4DÞEwb׹n IFw8J X9p#_y͗9ZߕC@{cԎ0={$u\K{ NQw }"]"8 :4gjDix\U_v:R)ZN "4eODS ?9Ŭe;/%c{SRaFo}b$A"K!OZ \'P Ja~!-3;ON[xsB?iX.xGT51pmZ|&/_:6g7f2S?j#qh-e.}v1MfnT{ԤX]bmM& KʀqRm ך5$M㵄2]gSo>)jMʉ2}(rvT&E/":urCCMjaZHXVbΤ2Hλxl;Yk!^KŅу2_~P@dLު/MS EUTU **>$N chKR {HJq3kt 3z@*Z]ve̅a^κ]ui :t@َPui*GCEM9$[gAà ?El]F[XNKC;|y0ko` !qn3r ȇO_LcV'lUW`H51)\$r^ u7tt4=!~T8\q5'E.Ȥg5evMm.vr&aqyBOA@쩓U4+6)=Z2=oZ֠YӺO B(aoy+QnBO<|'6fzCGt^CF4\#:(jṚEJ0zE?5 (+D#',xmxfpf\+ &l?p)|9- }+bfbGh0A1*3,|!$A=buZP&ys.5 Y)ZRUᦑJf,]ாʌQzwΏMd0ha3uU9v<*_=&R`8YV6 Y,0jFhN,Q*cEpӢʭ ddCxp@eڼ "$̨ X2G`g+KnÄGIWyS{뚇 # Vaԭ5Zb1LR/=c fOjgA87iqQc陇'FG(ݦKO՞-dT-NGHW6+zOV>5_a_,_G aLč <΁B9KoDٌ=q> =AoHٷ!UA#_E( w1rRv$]\3=0<]%"17/)zėR^3 Y#.ոOѼ.M6!i[e 3H ԙL ݛGYd8ʺQŁt I@C-E<'ӲGRPު !%0-$[izS1b*ҔR\SHx>F4 ]C'F^O-bJW};IVu]_O tkl} iQ{D1'CH @ΤNX: N2jqpeAņ 6 ;Ad\v~]dߤ[@^>\Ro*LF$P|4ZTyW]_O^ppJvUovGT Ҧ䟃Qn3gqnn:ovjN&!6gPgO,[)-T[Ω4 -jC.d fS[98BWL9ޑCitu7 ӇAi2,zJB9tW <{{5݃RM #P"ob2):O nr>}P̚Y;z^,i~AU.St'Q*(\8`! q%G^󿑀U:V M]z\nל,&a-y-lPbz[ fceF 5%>\л%̠n o>X|Gjw%7IrSI1 B8}Iӳ{A/ U^9͝O#ׄDA&,t(;Xn5ZtR;j;jnA{7, fC1=gɱG)&M>aH%k5|Ƣ% ѤcQ԰wvv Tnt@l$z"H|#1 ~kP1+~j.IT-a[{/yjQk/pAK0b=6i0) ;_|f{m E:*:|S~飼0*t>MH8ǛJ .U0_@X`hcoli@o2ܣDrъseW7zg#\sɕm a+p``{]t[ bqS_^M(}7c@-?TR/>XFMzGwZ~#1xK䕕y\P-Nm_ HOPSgi6Q6{-dh}+8JdV,Nsiܽ8SSgŔ:`NRH'BE`$yRӵ>Cdq3:/+;3|Za-O8I`˙MZ/ڲ;4>viRY/)sK;:*n@"[b#&<;zR16{6?sg/p T2ݟNe٥fof<X0agp4u7Uɇ1YWe7&2o8;BZE#}qgb?/jBF}߄ E%Qѐ4䡮J(Rss AVF\fUWAQPɴ@ \9u_}$YSds`]oAQI żpQp+52q'(pj{? ;^6ֲoè)$bQW' ;H ]_nv`1; F;ZN o'X|}CSHQ-C ;CgT|̤ Ik)"nn}Q/8t3;0c t lf5GžIJ4\O@m'?'@K$B>#W%aōȤI9ٮX$|[X &8rSQ .'XqBGwFF`3a6M3o傓syխun뚞u6!+^5FH,c L {8<JƉ[p$vƈO/xkV-Y\+qUA0:؅N xOTOqXP7췉wIL=k6#?6e9|?U+I "DfWLx/4 hE##d3 ׬?H:$Bol~~n^mpQ~xs:W-_aPZ>tmKB O~?# XE$KU8îPPcyWv_,u.iu+LjۜjahH7e) tx%h> )9u&іq>5T/s>U^[h/i$%:>Y-.#ǞV;C:i@G)m+)+'\OI1Rc>pUIk!iK[*i"euzkq)Q }1"h` }[cIǮBk!O8eeMZ`$+p ^EIz Itc^2%*O[ǥ[&_Qf*yCXVps7Y'IyZe.T==zә77sL+ow焀grIa ' p}Fu>$9 x'-+Ұ8UL# gҀ̟ʇ%u(U\[`1)E >=2>-?׊c^l9"R [:A\U_v6T:j!:⅌<(9`493p,b&r]dV6`Zm](2|2P`Vbr/{w)( 7J,&!r>YD]N=tRPќ5.3IAl$_SKMkj2,~[2(RĢB* +~LIkv8Wq7%Y V*I;dp )Fv?XAաi A +cEQ,QU@8te6wNv{0 T&x Kyܞe9 ql>_I񁪩xn''2G35H%5P: A:QxMc9۬(5>,x}jx~ݞ} ]tkB<^Sc"N}++KTqgx2H5)L"ݹt5'\r#\uQ5 H)/n85z W+ aW(+$)5ͽ!vɨRNmFXt>?rK.ʇ`wLz*br.ɐj20mxr%u# %M+<M GNDžo9Dž @k7H?_>qba%ڗ|X0Pk >ĔCjm፞囐O/)Gz/ESR:x.3sJ}[q޷^\ؒE݇!=[ɳ-P=*놷d$S1J"Pbo5B/?!OS( lKPyἾr?;.O}*.=ʩ ͻerY/7t" /x5<ʲ. mKLN\ Of>E"Gj)D'80QsQm-D.,;*Ӑ!krvA\˘Ff(S=TMW4$a%~|ֳtxL%aKBw|rn*l2zf^:Q/ްc t OwK遚t[_C<ɿ$]Y&=I-ف$'h2 oN2Sg/Ӱ*CLBS|&Yș+Ϛ@:Q+5bՔ+GSlw8^nVA|&RO5LT8ʼѪ* 0(@$8_TO6غ6)'E8 .9ƿDulog^ (~Weidfͮ{Ӌ@u }6"񡎄gqՂ(HЦ.7?p{|r3 RKu]߿w1[4jXfPZgTFy -YuGQqvwL .G5_?|0.dLa^`_ÓȁVIWGrᩒ5%5WǭC,#(wŷU;u?Z鞿W8J")>E;\ tA5_h hz=O׸flO&_q=MR⊙{*;bq԰N]jK ܚ歼A~=G\mŕSG ϔ@jHs~He Z"ʵ 4a{ .D Jc@BĜf`,&X؊bm j1iT*C1Og ljYh^@@{aR%xTlxѧ |G{n]GsJۧ$˽pd=h0b/X]UL2 jT45aϥ*pxQWYC&~KU%qQdl'#ZPZ<5&q[^O?09`nn 9j5ï$DC~@1) <ƹ ]] bBGuSB iwƈ+_=>#MKA_3]**yAʊj(^ސ+=dެ&!aơW4G* L>s@-2)vFxǻڣx,'C(gLDQN&;7?m$ɔ]1UhKlܿYBT7#pyr͵=xhT/X|VrQ$ԏ`12=?kBT\HcUBi$*K2R|F؀ZCsd:ܓNLJo̹яR2&tÒmV;s]/qK[3l34@.85+kM>U|rom;krz-eᆷ: >)6Q.S>L;*w] ⨛#wr' qV)x6{+;cȎ'< S.hyIj$J9k;?<;瞯 okUATCMl(B,|ݷg5PPe2vNB!e;0\JGN֣22W~;D=@3r}q+P]1B7gDhBP}UW.jLTii%Q՜ ԚֳjZb/ôJn>(Y_h-Uxyv `J?ύaې`샯/o,]5?$WF ?GXpZof)R(h)op+OPjqvZFB)[/!b8ق<]4qfwr7} `Ljz UA1Ed8JO,‡<P5p$$<\db`i\95->Fnu o 2W|DN!,P(mW߰;i%[1h|ֶV`T[uIe/2IFϏ Qn1``Y-_ Wx_jp@R9'& &yW4e!GsfU" qo  ; 6cz<8&7nN%A62V2#squa˲Ȉ: AQXq9t1 I+k {@TĚlCC2 +pFa%`@no֣C%WA,lPoz{^̂u۬`>hiJQPŻ$SUޗ>eC,f!po_ɶ]V"WzQ=(e0\ߤ^~vrK&%筰=>8߄BEqc躧 j2>D~&0cG0eCP|oOhȑO)iHuDb0. .KA {}}p4?tU|Fz^ُ)4qBy+*#f%ۈ0D O0͔KX9'DYLA"9j`+@FVak,PZv 3hg6u'3^lݑ>FB{;8ww͈;& Sx#0a(Su"E|RZXfU$Oo汳B:=уDxbL jz>=%%Thw9JEjh@Ci9'ǫ'ZG>i#İ ˆpz;LQk9R~J7drZrh|(/# w]9FsbD>ޖB? 뾆6d,}xͶdcru*C{b4`Ч&z\ndϖS 5՘^m=Hkk0Bp,(TϱdK[y¦߲)0m/%6dڵT.:ZWu*T`W5XxTHE[?z?z1.K>rSYu!xÅO@j/^f1sr{oy"A!Tx_Uu2@?j:KI9)HR C^KBl7`wpVu/C\YUv;ymz#VR<_< i CDd'#PtIV}J .pf҅ \UM~)HNKB ot[ܠ'"霴ՆSitm% a,9L9>Uu5FHSDŸu>퉊d/.lx}PE͸EqO6 ޡm*jԾ y$S>=K23oYU@Q'}l$'RE%BO yKK.Wd*n8ױHr%H o.*>^{\V5&1")0TS L=z*mTcId̀ op@ZTߎ"G!q l#fY=b-'"fBqfyMgN PlP9"䈋I]̉ZUÚ{zՀ֠r&)>Pë<)/R'k* ,W{ sn}V$7y,,)YXWA-@"OWsw#ER04kʹzD{Z 6~?/p7I Nf#{`6to{姿.SMX~AQ1~=wj4`R4ψDRB80N e9AJjcklP): pm1}U>Ƀ85!5!3 cɷ gq?|k IɥH2^g@zoٕ$Pk55~L vH\.S%wtO?ev3>NY9R* TS-ްinˌ ͶGD%DHj#OCSQss/la)3stQf \.-D,v8I61_djuP_;kсY2Z|{t`8.U %MWGrR1`Q"y1NL &R#٧&(Z%(8'9sLF{d7rŶpnGL~0ťU}N'-!Kyd|Wa|njf%#/{*XI2LH#Ei. Š19R 1V-(qׁ[Ư2꿽_A*Y5fǧl#LGXl1eܰ6K2 a?l|?EW~w+~d05@IM+_akEj;\wMF8ƽ3O3[غ-9u=N[@Vxk"ɯqܷSnS ~DSakg!+ x"Չ~f92S)C2_u@|(`I4Qf䫧Y^tߡ? ٤|/ÞPǯYRMSQ6!Quy6f.BRW"b}Dձ mQSX,'MH> RD<< ?AQGuy֊$xCتĿ/hMqoá,_^\@EWByFHVg,rMcu4FJ_zk\$)\usOoD{zMcıĽ"E1pF3BpB;Dn-p+}19^<˽ u8 nZ#IO* kVY\!J(q  e6uU$ 3Kyά͊Yz.) Ovk+C `D6s˃gv8m5!+,rؤq>W-U^|3 ' YR@mabmm(@@ -S93uceL$X.&]LIvN!@ G9#U;&ԟUؼ֛C^zH=}q\1kjג__T6HuJ\bRjeŸMФ[[#¢.Ns˜ nuLкU3M'2-мkLsٙw5*yٖW|ke1e/z?1y(^۾YQOA2-C9#BwghE"a-˵*t]߳9Oyh A׀{!hmIdrTP}?'=K*rjkUFl#j]~ ,Q=*`y̭KTdU*)ب[ q,^ˆlزj]]/%Nد[ͼ[TѝG6˲#2 [)Ւ>s0j|x?K:( .hW=;z"#1*F|[w7 Y Gí_LpQv 5u a\U+׭\.:rsaHu̦wvO\~*)4%`UT% +L۪MBڍT#c:GhBBQVi!V%0^C;KU6̈́KRt,ј& 4J 6# uܷ90Ӆw%3 %a,-: lWgwUC1Gg6dd:~qnfT8eFuVSMesO$o)dzM]zѵg'?07V|\X6QaB W(5K‡Ųyi}߷{ J+ 2γH~y# աfĄE<-QPsl8_hIB?6h$@51g %M 5@`?q`YQDHMb< ~Q9P,n7al^H%t +BX I3oICݗFf 4Av_|F ]59RZFqG yYexQN7&ƗĻDn 93)~|KZmZ.T7py`#U/>V,tP~j%`su~Vo{ЮP ds7=+,԰97N]\9I& ׆x^Yu2=7A$C-ZEΪ[OMݟpqh\pBFSKp?oyfHi~9inm5lzL̹F)e"P:pO= ]nT'߀D,D%/Wi|}4BӮImvڻu A^e0dp|%Y{/*DxpB5vƛ<+yIg냊GxtE2ؔ>b4M~UԚXBu Q?; {IbQ&wG [ Lvf*[ lt_+=ueӀMol2>荹{q hk\ N?DT`6Icħ( iUt:jn+;e~R1}`<αLZMY\y^Ptq)ެ+x]/2Ga$#bU%ܯ["Vjf`Dh3Z$^!-C3/ZUap8ؓQ':W&3~hAW[4Y30}7!l$^i0Lڂ1WC")'c$}!m$8\Q-ATj41HޫQxkJ+iML[%($e2b(&J_)z2" dZU 1\!H."7.$ ү#u%l 'e SȚffzmHs-k}>Xls3"24@4񴻣7(QHnJ f6^y|f^ !"hF nɬ J ;H?V>5=GZMѥ6^liU O^{*?@/za Ϗ"I牖ʨ(̜(jj&9֎*'93yl6dQCK/vCu2-k˛k.V <<FYƪR{=fN*pfTa4p;ӿ+j Iō]P*Eڽ}e*e~13TͰ}K?٨G}BW#KeQ66vIΧIMc WJkFiwKv ꊄ+xIYCF;>XK:aGp"t$({9D7IyŌxMώ?L~Q ' CgxaNܔR&#?ceiqBAb&q="w LR?$=11Zw]*Y-$uؚe~alZGSxhmv1W3![;څќ󵨗cM[%MѨ}^A<#h0L#F61PKOO:*P4k3Y*\pSםrU_T[O<jVn/ Y!$U}a}¥}BfK )aêOn;UfB)謁#itٖ ~[$jN)&*Ei矂 )R6??Är^2J=D^QE΅Y< Mkc{'%º77-Dw2N*3i21s$^MSrf(k0 +j]jSH8p5}*J BkJ8}V+t-=*)k಩ăs&y^x`DwRj4P 7n`zD';%_̃"π*ES%IIY\2nnV~{B*{a_)9R )y2go_+2hHZ 䚮𕫽57z7ui JiD]OI5E푶8/_=1؃ r |;B pOm}~Jk6&䧞I;`KR mssm֐K8d.;TnP|? w2jZu"|O>؉kG.f1 AU&ΠzŚ _6]cmlRҿUoP3)3g`4/pzݣXfj.e**mek"n{#'R<&"Q/fS(TiذSl db:̐1_e(qSK=CxsxhTGCЂpዞjF8\M7&elm(ds'=e.}5~vC+A'w&U\44LA-~4`C}k@^%+M|L_B;r]i_M&]/?:J|M#e x2_BDZJe;[4خM)v]ul.UwǙZ0"2c `)e$meO 0{|`lp+zi}$YJ/ E-c'uӌ?b/1Wήsr"T QyCJ]|MU.1M56+U )pN:ȠKY/*#pYo_Qr֟r>hcG;P"9G"reqU\;FJfτ́_5V,EvRog B_cVLĚ,{`X%K%zfNE .Cꃮb߫`E#:K=6U1k0M~ޜ-D[G$PRNA{!!="&/55/H DTpP%f1 nv0/ގULwZ5qؖU/NtSgN:I{Fj-xa[ؠ+*fG:P"8CL9n. qܗx}u^j-8IHZe00R4F'(0ސd_̉Dm qNH&~9$C.k9 v&.Q6BL칮HL.|YE  оK8R!M1*r)7I怿d 홢2-)ճQ5X5wajOEZO_*v_'I-(itlxP]u/u% 0 zVHeK'x:wP2#\X8 1M;$2@I/Vrk|P96,;*lU3u*\Dkц;w:3(RdƎ@lwJϯn%,=qz:k\D6 ;.6=sNfdݷ^-J\CqyeU`g -}l&1 >#$m3H[qbk3VQJ1]o ]pφQ>,U=mh&ގHpGV$QBl0-<K?vF(m%)ע5Bv8)~ PwB X\|8^Mfh [j_g.˳Z@^:ȰfJ"UG? ņ|*18.-@yu^mbޞ/ꧭ>9lA_x,M) <5 * oyzzC^hT +^7Ŗr.~; RpZQRUa'+Np#l<)$slBMжý>!)~ʘ^aSCBM2e=>R#'F,PNtFU%O82El16ɺߴA𥜯0TOB2AZ.Y1rYZU$AJ23vcJ,z|ں}ttylS0v$KP['َf*~ ɯ=C?QkQXZpuf7nU>wB' 2kK7>א&y?1ԁˇ{t&ޒUmqvqoym_h>$~Y] v7`*_#h*IIw}J_ηDn+XfK.aߛjBkFv%I3lXһ@ h <2VZ<[i2$hCR C4@ˬn dI3A+mCb" 7a[߉fLǬ'rJ>?誆נMԯ!`5ֻ jPb58k$(kB;JW97Gp^(*'k_hS!&^\;,}֢ I@hS@#Ov&G@N BZ uFxwg?'6u6sweH۹,K])9kfcʎcTg~S78n[7701WD%kCT9 :q"RvEr Fr!%b 3R+f,!Mebq2EkTI >p j+79YCЍ弴REG#OiBʳ ] 9l *ml@QrLU[vZiNIl & RZ641^|ͧ#8]| m`N+?)DVMzb\jߦ7[v |+M^E&aŎqϓ'[ Gd;6`/)2t0n,er,b'snG##0s7nvE&^7kʒdOJ`P' 7n9c w荗"1I>U= M[H;qПaY1V%7j a4x oMe 06闳3-Ϟ,IHFK޸! gf,vJM@8by[~d$s"`^%Lѕ!nW]Ӂ.%zf'jv!~lh dъJtI:-ڸz̧I%_ljE'j$5@48?^8!iҼmsh@j HD$0W"yw gWF`3y~~dLZB}$-l8juwP搳Sz2_l#5ހ %hij@(xyQ!=v9僦1B<@Kf;IB= ErQ%r3UGYdb*P]{h ,BO=kI̊zf.Jï5:d=`3&k+jd>/:m_NhP@![=t.Z.4[`Aٗb$I Ϥ*;ybx@! GPs 4 Պl xq)-ʣ6)/B4ZQ5R_3ݿ;4ྐྵ N(kwLUnP@aXo amIj~{pg]sy˛^R-'as+GT N sf(zcܿ@{+tj㯈q@Ry;-8c $! 35w;qsG; IBbD(Bx&|Ќjh J(zhcxmf(u֝+bÒ'/2 <ljm| HX1#A"} y>*kv dVתoTR :*ֶ Ku@K÷>yhY)!D'xÂT*z,x!g]۴ ;Vc ݂!Jgre@2WV]G. FU˘XD<tVMvgt ݮ2`DZ:;U~(Ԇ;_rRm|7`=DfkSac_r% 7mIwZqz/RK%$gD*,Ay SEZXH`>K_g0P7׾hs.icP:X5~v,^LFQPqs)tf-kz>-b덤nTY{Mk4Kf±ZkOWR7LHYya_&9|k`,tmB7wd ږpAT/+ ^+?OnY6[>XV%=Y(:0nrcz1 KmgL$ I}5u0Npa uSaENL@kS\@9=Wwѕ @si(-L%E](p3hcy><_D6d~1&;a À=HY[5#@ߠzSRn50%94F>&aj^@> n :SVL/H~St,?T  /͋Dhw}Y)psx؟w-h.ȋ5^>!5kC V@ Q/'>a=S {Ugp(pLlcu\+!m1*hT9Dv4il Ѫttz imm i!u6Bc@ HJL Dw(<©C1T}1a j91|fQTdBb/0[2dqKCҙ1Kt*8+@]:9o_NO•!P=YX {6]?YL*|Mӝ(zjlpY< 1Pi'RH{yye^hq7Wt$XҐ.oꥳ@kv=&@3^cl,}\[*b ^o ԄWoKHh uM?;(ߌ '~Р~WEd`}OQ΍[PT~8>[!ML?#&MGaȥZcpf3B9Sc* !7 ,kɄK#>q.b*\۵̱r V*7;Ǽ+4+OWJ)YJ?=Cܔx;edû{ec8j3Cs[MR )aXM ;hG4ފ,Ԃq˖iR -A(OCq U{{R<؋ݩ؉JpNvMJAo"eYCoԻSq:*_2bTɤ1.Zy m߯fCs؊N$gQHLWt,Xſ3Z#I[i dMdO;6S{Lx5;!J }_"9)2/My[(DI"%cxZ}C(<ޘriy~*$O%GS8#ت-w!;LYh d=IzWiIBx"%ʲ"$EݢuOD'MN  zcBe; 4/~f5tv'lˠɗr鰧Dž㻈v5M=bWQT)]NIG(H2mZCJX,~QE$ka(+.#&PaDqy XRsn5m-p #m0w쀋jtO;XNL4QC+kE CU40FwzvC2?ş1ie!M(0#]2q٭n B bs~S2+5Ő񲟹LVYd^/<``KPn➈d:Nn=‡ʹf3NŅ2MV5W}8/}1ס[k/ jA)1gn (yz|@VHZ]Fi=>ֈ]fj1p?쟋acO5𱰔Ba*$r"av,p2P˓T9lqHkV~M3jc&ـm&ƅϲT''8}.ahꞵ~Z+axޓ{w.!bh,r=%Cg#m8UY5Pen(b6r;G!Cpf$At`{0[|cĄ$oyO8+)kǕx-?&~Fڕn}sv$EB[˾h aEv<h-WS6hĪȸM) .'Ns!9߶N1ؗlEuHRX!#H,jd5+:#Ie$RQq/ou@g)!3ynR=8Y\q|bEZߖ}Dwp 4/ [N BǷJ$r*`,էh"Z=a>6ԐU?6*/ bNya Itцc=@u_ etM0ey5)36 Qj~d^ {rR=,S l u/߭wv@J t_vG~v*ι'$fSڍoD, _,&I{AC#(ݞ9!l}ݘw$[LZF;Cd~Λ7rngRQfQÄvUR6^c("旔)u""EICik#}c]BH8wa%\*xn5P7R V]<+?>?k># Qw[]+JXGfN\K>|!ً?ԇ~1w3kK?=>,eJ+Pc>YL ]);b#  yP'ٰW+>kd h"4.5k]UseKT@6/jJe+B_;􆋞EK@ďGQZ2J6$k8zEa+z duavV+9UDM*ap+ :rMA~μUR:1u0eu63{V!esA]ם̈73z-*)Q#="}oԅ-*8k  b9-yX1@dP`[C"cVjWDIq Yy8a Y7czLd4Qz\Q;7.P+mqՖ%àYWV~Sw>;>TI:U7;Y 4@J/Cn i$s(+gdzRi!x8 A%_ԙWw8~z$ZSrF&W$*sm.\{׏(2)>C?6gT[&b~*$n5J6Hd"aIA0 z;b4);s1=t*Ż|otG3=~Z\UbO:7NXNBǧqg u(Rw ^\p߾4*s$wz E-Ï92k>(T,'!bfXBp"P [Ak_%Ϫ-u !:.1 PBғ\) ,N_%B) \XQLK" JiR+OX;gbc'؍0{1݋I Yâ9^k"F6I#Lф;^%X=_"; ]2 _devKw,lՀ4CGʀNHY")8{3N3T C ;dITSO%˴,JX"kvgc,}p8Y0Ӎw^aIx$=Mˣ9Y7+5sCYjrۡ9ڧ =z]@fL<瘊&QnR fܗ^aͱ1XXUػhHD")睠v#eOln$D1:SI vk7CZSsNA*8dT-A&S덙 j +}c0 0jWr.T>+xh*M#O7ےY0g'kHKTZҼOgק.g0;ܼ\۱ _]Nnq#B#Ze^敖9ϯV")W&'vo!3HΕ*z [95 \!;YʓÁe@k)}4aT#WlGsapUMÓUw{Ȧ̅1Zwk~ħ :Ѧ#I<iAE&_GVd.! G!4@<ꪙʪԜ?ݲp !S zdasXdcXI&pwP'Z0SGIqT>OK-ZMӓt2f90}^- mDYHu5't4W\G LBcis@@EfQi>"%J 랂~?Ħ'" @LІ3&ɉ3 r!n4߅J躮OtӶVq2|n3 Ղ?$, x5\6LUuȒV 5RtqBMX&Έ6!_ﭱɽsX#~r6&.ro2\z҇)>ȟP:7kք5YA1}G2~@k[Kz:P!^vDPwQHiWqoo^_co,%|zǮ[qAsnPVjUFܔINY/#ylWAOEpb:&tbN_/trp}ܘ/ lGcHbǨA0IEkYåcTt^2eyF*# JW#ۖ֔ iewa,>nwn*6iLswfP %2 :1 (h@r[U W&M?,F҉9t?.Z&8n;(KL!6s[Õ.E(S 椿h݊|C~Fao'ŕU2q/7i~Z҄TfZg0<JaA:{Ov$cEl I󉂬m1IvȒR>)`RlC۔ GU{CLN֓dfhhגh;nFI(@qr ؉z:?ÿ&jѽ-Ht+H$Su5̥tO` _HKy RMfMq,{tpf{Ma*[0𵢩 Q_̥$o盂GmN( 7!ʪ#koΖ\Y>:0= ܟ%-3$o]H{]w`\2Nd`Ly#A#9$^r ֌jh;+/^2CH{hWb\}Tl-Ma{0^)~n =LQ̈́kժ&,6Dy2^sl\98tcL[?ދOd~87PIRLjɍcߧr1njźT8*\|Gw1_O'ż}qs55M mG]3c3%Tߤ=vFPy\Ckc$eQ+4g-jkAdW T/Ab3qѦ1m>oZ=zB"1K M4r-wX~ I @ump#u bm@n 3[4A 4.~hqF(EnP.Z†} lV|7A}Cm97=q(QN)a9>U49ĚhC~ %+)K;˯Xwc6Jk𾓥?ĜMoA8XRyOQXg[;9v)fRԄw|wRcy(<6HI 79m\黀l8뎷`1OjfǬi{&Af4Dэ-TVsk>~eh_IB9}]?%{M-,RԴX'S/a>Sz1ݣ jbalI4.O8I;[*.KOg(3$tM[y=6dU/b|2PmB=^ xG"] z]'M5+cF!o`Q*`,/fBN?ulj'VYǭr |s+Yaq٭٦sUYɻy4~8!0'ra E"83zu4A+ll rQwQ˒td_n&]ЪDwGjM))/ѭ `|m-`8RیؙŠ3r%K$B}kssB(X$M&E-%IR*o _/of尌F2#ɖCz*t{ѽ| c[גȘOu] }\0b o?/twW b,:>Q{`6j~4' p#=~ZWB_eQhU=ڰG:D|Aj O](hn&Ym&g'|0&{,BKN%r"-u';4ډ|iIϘ!C}#d:n]LIUU8a S6(h+?$ KjJ(2~65۩G=o,`ɕ ?%x4SW%oiM1XNJ` ,T'Cx4h~);FE;$mngoBx'SrDCU$@9w+o&З:OElfS}LK$$S#Ƭ9Nc`Dt'9U@~IU:e PܙÇ*ߞrv"_~@NX7S).yR W3 bP#⠒ԧ9+N<8;ʁWS0N5ha>[U~<2 |AS⒮F ؿ؂/{G6ĵ!WH4y&OvBUYdq]LկꋐSX KݜYxY='i{l"yPChO0.}"D(tUӎPn?xp^[TsDƇOHw:lq) EJrm.>3&F(<vܸ%H9Vo)J{{=W[yzŒ!ET%)>~5NUwRjsGg::4<1ӽN3O1Q npj tLo |Lc}ձ좶@)FXiSc#UaF3Gw[M:&.y{yQyq7V!n`V \sY/RW6=GHɜh}g>I~YD EF7Jk)Pn۰ ^+PGa@`5\K5$)Kǝyz@_WtR?=@Qvo?YjG(x(AUy ֠LX7۫,uYH5i Urff7A" ed&YdC8Jq P)J>7{ZgjVTZ 5Op4 Ahl+?BǦLSTJg.G O lEϗcS߭BAR?vN=4 0lO*zjdZ^3|׎I ֍=?e U`c] bmQɜrOd)*[$w'F$Ad ~wW(jC2%ӄ| ν4} U4:گ/$L@>kel¾9(ko`qm{{!+BocBҌBg2E(út>䢞UW-E<;\j y✼EA KݼogFl#e(;{4كմ!_ŎDu-reWt$FͰuӛןۙݣ-SR_Gtaцфp7 [z$]W齄%-Xq>!` E PovEY/D6֪l,営w>oZ+q$Xz6!'WdWIÅڢn(9lc ;i| lU'zZ+S8^٣f0^e6U;ϗIKYc]E#RßPjz6ȴB,l£X( RVgsbc D5O? DuN𩔹mEX.2Gv|nysx_e 6amj)Pz]VL`m]1gȴC:p)w}zmmb"etN٧v,군~9^RCu| obV"E*T5c{us/CDC]} =Gֱu%Sesz&cZxi nooSS1h"c"r%i<È;diL4/tI= c*9'@߰)L曣,m'%MN,G5 T':WdVzxw~5ju,_ ȡԼ3Y- .n@E'Avvڶ=y(n ^2M 71{[P|V˔PicqeEn.NLZ6= fU;btOPXϪbdg֑3M ^(Ko'N2^D<ېͺ]CYPNGq~Q壕( W"d"mLGE]%j:꼜psN(ߚF}o Z_%{%C,WWA1C'a9b_vR釣O45:>X[&ֳWgsOm_J#Bq<'y}7,NsQk^[GenlR-G oKJ{}T3U|HIWcmK7Z{!NGU1z3* &[cC3>S)2Kr@1clwOۉmw +2>wv@o;=o\Pr<+/m}o#2;cϲ^ CH:a2&SMC@ÍUw}BVB\2l;G}t=[JjNEU4Fd׭jm2+ 3pvg^mT7:]0qKe||' Sv_>+iS%Ν\Yb c|XK_7B1[+vǤ'#>[RIVł%<9xDq%M"A}Z${8:td uB *W  uZYH q2!bWq˒y>nkRdQRGXyIEӾgY 7Z߶2R`r֔Os53L Iw-k”|r-Q]朳֙l]h-+# ø]uI?6T,51閜*/3~htǩAURI"&J9cl%R e-0lKzr6?RY ̭; (P?8} HgoSNOtWS;8 ڭtJG2ݼG>$š[}AkT%9eS"gc}]: m2| ~`9p"n 2~_SU7B'7mB]z}`tUdX`PYT_x+TJ03=dݝkV{y/H5dSn kXmJ$7[Ϸ[:Qo}|uC-L<\y}?0l#,K)[S`dPiдmܤGD`wHZ23Fک5oksc1_wRO]U|QÓweJ Ggܵ(4HEI| F+O6F]Np0P YUs~#b7d62(cV\~U:=mMlQ`YlG<}=9D%T%!-7i捦ӬW-EnJ@ag CҌ]6nԨ-Yz+PlgmTWQ!qdQ :{D|K1 &,(,Ȣs+$ Q IW;V1i;ޅvlVgOKO y1| K6,"*:Ym XFv<:=(?_eJ>>4 s<s?qh9?m1y8,K\T+),iZ@wa)J>% ħs@y"OtWo!\-j4JQĨ*Ll3S"JT~_ ShY|ƕ)N O Ra|$ ]2r rlPk_{A13T΃XpKj긗Gʨ{"F mb[ѻ85q:1ZSBBzET;3Y}ʀgG~ &. \lW=[cʹ1f"zL@BjQE;Ńf8$$MYjݺu@qW 8FO+ =mWHJccK{NR.Ь̋Kҹly[O8Rc ;ͩ) :J"x 3Ҍ^ i$z\֢{ \KTLi>CyvNK6&|vc;}3c]YU%c`0> u^` z-jWi*ʦd7Au~S: ȒKh@?VۇzR7P;\=sY23"9|&ችY",EQ>(|DfQc/o%~>ċ඗/xrbxcG|dg0Gqwm?H)-S:c]73NvBBX>,Y{ߑ/%[x;*?ak hiY ȑ'S6/P5/6B=LGǓ.=.)[zV՝C3>ָZ}D"=sgr)1f-e[}H~,tBx,?J2rIqCJngMȫKĢm} J="P=z=q`B^y}TG$f1fn`߃%Cm$R OAqqO)x ܱjQvH3O+҃Gx14#n2+gy}FQk) } Swv1bgZ!d^L~No`ԥH3vv}ߕT̪ .gqE!Eפ){'*v`JE$/:rP Q,OAbqPԔ N|<!Hπcz|’4#&tR0b\uқ29_i2=+ܹ_c9UP3_ ]e D:yk5M=@&CWuȁ$? 8CEv8 c2ALig1ӧ8kPg WIDvTjkcHg߿Pa;",!J+H:r\^S(>YD,z$ ~+a 1Vr!Wmڻ eGQ@̗G =kϾq[? ;VO&ό{4oG@t8`Hn%&QuS"t>hij/lj10$=~<6txK[BńXn[O-&d;c3&s@k94?~%QΗ b2n @ AY삊]Y%d%5 ARC^i.,oU} t/6.yRqEb1{A_+`w(sdXB 'ѧŒ'r*x`( 3HƷρHtg_ګ(JC?Si5@bgHV +4 Q)DiA k&+x띙ɒxeTsPS/Aؓŏw] k-y%dh%q B;*! %#0TğޑS6,{-]*Y?^%.o1LM}M 3Y޹]jv1*#=Ys kI!0FM旳vjL"ٵ(6VZfz`;a4{:x8W aKX4| _Dn7/ H*+gi {tZm9DXK§$I-HίUra\Z>Rfn 1DKRӦߪVu--1eM{iAH ϸ}Ioz)KǠ~E)e=d ҿ5ZneJ/6!ӱmJ "g3I^ wFKNj ܣye^ZQ+-]}c&t͙sqPv@{yЅIC%jbEdौoz+oy-{堠hoLzS~tc@AVNO>[dZr =Hͤ<PD\hk NiyF$ ;ld%>HV "^wXƽ7k!ylZVaY^ o3րբќ*Oȱ~=bH)_e +WSvƽk6‰G!,QKJY(C|Gd S`i 88[8`N8<ӸоsCV Ne]91 rr>'Qk͉XewbڰMtq{ޫxo& ifٱRlצ3'ӛhT TZv*D:r0V'Q\6pnf{RP/.2A a,94+6#苕")Ba))=C?q( lx>+T0MgiшY=υZtgle笸U젭ؚq>a5I??"u:#"0a?T^PH1 +<2gA;='͡6,40\%l_Hvw'>=_x5u,{ы<<8ffYJp鯸f%k9>~`nǎvz`v钻LSR g>=ònA@ Rt b;%!8qWf,?N]]~5&1 bژglHtVTiC`oA C=ΏE.bk\\: JQA|<)YF ]sv8G=s͚|Jno}<4)&dر|oAľ3[čS٣YRK'8m2_h bVR;JvE# YDi6$Y nP #R|v;. :$GU9 Th4^3Z9SQY{<ؽ}TV<-9 j[wE!|q{&%ߙ6[t[D0`Emn;I_G^UvZ(BY^/7I9w|5nn( t)9Īf>)\Lh=W/zv M5>Dg@!.fD`JsӱGX:ܳz?l}V<>^3Zb 哥>"_vܻѦ+HuCc۷\'t富g).aG5uWEd>遛1peC]DMhrVSJ$U|tͰ Mj7/wF([uUJD4EcIL@sYPoh璀1éJlHTṱ 4d#35v49j=OxlXXS 05n`>09,ifX|.$׈!""Bn|E*e,iOԻ᮸ I93'mqm$Tz 7e`VmAs5v6#WKk3$ű"d@*]n<.?ӹ7IF6Z9|<-o|?9jtЬ{Nxؤ=4X(m(\M}.8401OO@s::KY# U@"ZV㾓(}l£ ڕL/#βǃXA`zHQvpCDf +*I*e92`+!r?2`>^=Ϝ.v [Sxtٗ4)o΢`劅Y BY(Y*U DqA̝.uƶ&tT&tm[[_pIUگZ2]IX4CvV$C1`nKԻ: CQhQXX=n~ mWv PXWD h/~w|c3np2*|t+,*P+w{F"~1ҘZTcFЇʊ(Ԉd֑Fm!Md\NﱇagcEd2^R#{ P-UtcPArU[LP#7^ Έb {}p @Ik1@{_ .벇S2ar9NPB9ّ1iH7,^ρ#d~5B_ek$vryϙ.8b#IaަD+Ė<*l{ft678v*Q}^9$*+0n_@zg9Yۙs33Pɣf" l#O ʨvlWs&iٍ$~>\xڡe[ 3>ج>5ԗƚU`UJruW H,NS̗7[U 9Tquȵ^ aXӟ21;"!Lwp`)(H1$و5V6p[r+ݠ'hGl9%c~QfCth3Ġ]hB\H1\(蹓&C"g/Mnt=Vd!iqAU7-4Fy#S;nKcyS"mR=1~|vx5T0ث`Pwu0tA8;XmMEEEg\p}oV֝K+٠P="&Ö${INOg? \V/b*.eyZ2yqq^h}׊'Xza^]>FɈ.ȟV~5'gfu0~ifgϢ~P ҭ[~k?<>#MtV1e*a17?eWZN 7FW L2!a *.Hă1ho> ώƯtH'3a+8}.#JQ 1lԁB|3Ლ]DJlưImMOFnr'!Ggkg%_@O!ՅTxf.eۓ>@'?P8ٟf* GaZX~7N Κ[ l R*I$)-?(ndʜ `s&/vTQ<|#WÔ;:"~O3O=W#ifLV܎P'#MLyJSuLe~( cW ? &6 _Aϒ%H52t EL@פT2%4!plK]\hXh{LnZUS?UbP]\@&*;cS&e s@F!Lvl1.wvGa@VN7En2v=r VH4/dԋm4r\)KXnRڛ84uGwS< w7Q٘DsT'a;Yϫ˳ mܻ6Aok+qUW7^4n{&*Ӷɾqzq!@:'-M N,9XRf**Lbȩ)$+*4oϤHuld:A"j>Bv bA +#?>_x7q=]_asq`{n!5&%kWKϡ >&.PP=pdOI,^)7!2o @MMSw0Rbw/Ԡy|gcTɇ'[(7n#yKx? @˩ŘU9o'|~lGʥe qM=#dA'糹gf2\V3e w"T_l{BHdw E^DV'/sa'PR3i TNe+_X?":7ziCcXR!(s*rn,:.gj>Z;s;aYb!ʭ>$ - =YvEXC'Mo1U> ![K|ۗZiW7Y> ׶`ڨN,O":RM/TrFԊUuM콐}3<&hdo_r˜b\}1qʝqDXj; '8鄳ƫb>20( Lo^_Qb%M Fcri"yyQm Sk"3fHpxeo2[_D)"4tHqoq?RИ6(Nc(qxPXQ{n I% -n2v8lkzg#,-huA;$C [99=+E5@I:8qgk 7,d/7ReWծren q{~dn'O 딲۬ Y?]w0\JUfrЫt{&* #EQ 0,gcazRd)QYk~Bq@ݞ;<8(w7PODԧG$2֣}/djʟs MUs 5N_Hj 3YNeCOi>ebCVωC+Jb;ȣB=;24T_֣ (Hܝ>#hhsTLX !>zonp/F_큌?@ɴ ',fR`@QO&s[Ju.A}$seK s*6NPq`&cHإE"Z$v *Rl>aV1 2.eCEbu=*Zw| ^v$=:vа_)>wt!Y=(rE Ǹ1:H؈z^!qK[+|$|>~gLȊƌ V ht]`m64Fϊ`&"v볒(o[s,Vm"Kxi6g%<з(+Q#Ay&#]K۵nø/>О?D!&);"gaDr@`/#×#ո{)PԔ, M5%4ܜQ2|ԇ ;o`YAd؏0)&nTU<Q- Nf=MY-Tʕ13.(?hjhnaa;N'26P!/ u:kxȲI4 B)Xlwd*f./N^O+g/g[nJZ;aBx :$~,єZ-٨ӬW|7E.7&u RsP1Qb݅ xs)3WOF3~)&ЅC!~N:i8cM8scl-(谒8T+Ȕ~D=;uu?zC_RG'J Dr'奮Tp޹c_ i(uaT[9z -I"1g9˝Թ1H0BG{6 n9دDC^q{M΄0no@扚+pS3O7qnW3&3ǫfdcsG SVǡ=SkgI{`[9<ۘZ1;S{tAt5&^-ϐkS\Dh-g@ a9;_ Q9hP׌\ PU Pҥ3SG^WRVseĈ܎q{Zoz7ۅgL%a\r>*)dű&6aIoxeUI'K1CFGoS貭$Tlmz^KxքS:sel9~'/Óyks &uqHg:Cӱ&0I )jD-3tݐ12A`߿5dʝٲtCvaCHԵѸj{ͦIItHg3GH VcCI i6MO P q,,[&dOm~C4-Pzfʆ!2-M>Pa72="Bz*Gd9yߪ54G]Uу!wp^ctßKrsTVqF_#*Λ8b)rFG8xvNM!ܴFh,aw1ƫ-gw0mw!?2~wMj wW:ٶ6TCRiס֞ i3[Ad<}p ÁTr|*;6$j$?"I<)\5lx*2o gNS_fɭ{l4tMMeg#elH@{H.).nw{_@$H;Ba^e ,b+7Wc&BS,mCh pa'%D̵fc`E9va Rux73xL=Vڄ0;/?!lwu ̰6iBa Juxq^t=s[˛1=~ه}ަqS+uɌXyo_?.8~>?%ϸ,Փff(C ][A/vzzɛBZDƸuD/V *Dn! Hu]jAs} 1n8-j2A;-:[.<)ji[2؛J`?1kG5uMf)4W4"M%btnn1_ %r=2a=K6NjJ 6. suj wm#|-ÞzW:^Ɨfw !rĀlM'J$ʚDq7BKD ?W5\Bﰋtt=Y@^#Be#c#= 71nƧ}/CVQłB!`yL ",m ' = sdMPsT{r&:B;['9 z:G^:}}/00|4;jR$:D QCEk3l㭙HS̉#U (z{|9vԸě*oQD"WJialDwy+/iW*.AGpPkGSp}|8<%MYlP!:3B9+k(`+*g]C]@g>O”v=M9#t-Ez-&J-~O5Jk#}׆l#Pa(/s53nE\tpFHɛ}[Pm%|jI5r|NVߛr# wIq;X?2([*w\L>}8nЭ(YV\ĬT9=/Ƚr6OC6rims46v]as =NPW;uǾH#*~ Ô.>_ZFq#[1,'q9wyf$t ew5sk5{uWwcmJՔ<(z99,>-@ُlî P:X~h iPj85$[a@ JA)IOWm`UC4U؉7גd:qC4jVM߶?Ѡ"~;WG?WIvj7߰U:Y+TNWs݈&& U6C[t8)Pm - $^'R Cv:w #wTdCq@J4\:<9IzW!wgMzPWgNOn#z;&XjO>"$JQ":WMylM<"ΏKc5/6t"h_77S[Z)@B1o m3l.=GaѐYowަrŇX6ĭo÷H*O|r)afp%on*nm7;aȅ9OMf6վ (Rn? K_y<*Z;7Cbrxsr?/ΜȢc ;ug@xpT|cސ45PZ2F2HF!pl'=n5>.PtXXpx}38!-!;iwދ&GHk0S۬* 34a!6No_D?u>pz< uZÕyjN1.>j !Tu;D*s`u+aE:ƱiC.^A]hFbκ> " sm[ܵE  aFl}ՃY l,"2ZYm@Kn.IQ*Ʀ>ij;KEsH×(i]c1adb]w $2zxފ[_|جzGGov6W"9Lv#g߼!96͏ӛG8#Mק6赣XO js]tH .{?ռ ^]S* y sQvâ]wRhrHf?}&' NIx%I*QH:| RԿҊ}MuONXj,';dO*YtXP[ZRCbϥ)uiφ!r\һ#b4q+*qժe)Tk idB2l1l]_z׵hlpDei]a[]0L5Z [XMVjGH&/[i,GpS~o"8L2=u`l|grRkW87πbf ~ n1(bjZ''mvʅ"X<RUĮ<"E1(vv@ASgQ.З,)2;_}"o>ޛs 'V~oHus֢@eAtBHH ve@uED$R5nƲ+*!g_Z~O##r9N-}(=/\NXf"FeB!٬ԭZnILWC-%EkKaV(a2_J!dYdžKFq6Ygj5II>wb5״(Pw' T;~ILWh&,!@y8¢x]M 1,LGfϽ94x.;RDtxR#q$u(z1-s6|3J>FxF>=1t;@j y-s9֮?6g.Olk?Hu^7e/b4Ѻ2v-`O:}Đ^Fd\Y.O/5{'~SwEgl  =c췱M }5,З72!jSZvOT7zdZLdZR:ӭSqpMN\7V|:m-6t{z BG> : BW ÎZ8/Qi1e1B~kQŪ ,:PXZգl,ړ$uZbDZduFxq;zU:JR֐npSM6'n!}BTj5Je&>#\$Z1LFYWAQ3>B2Q( g>omcK= t.j8gKzB^Ԋ5]EZpq #`ќ GEF㹷 #j9 2rX-,2n3Ns6.w)Zʯ(q&⁆pp :xٜ7`>W`11Xh*s:P=dNv= pj{L מ6RM6ZH@l(n86,j̼fZBysÜU 6%zlHcY[])f'!dĤ{# RVRяDj!ʷjӾ+V}|"D,cRBNu2?\pH g,Bll>Ur"5RiW͗-`ޛBgqq%Wfl ӔwF'ن>I lae&j#deSS_Z%fzƴ/d Y#qe]pD>\EnWBJYQeт]cwZ4."r$džUkb?](=˱8]Rj=ía QeM!6`r/t/G'&a?Mzdydq(jRMŹ ]] "vVWC+ؤpYP{Є+В*|al3I[gl}/r=ka:,i'c)37{ j,u$kZy#TA(6_Rq Gcsn[#E^q~@0VH/@u#Q݈+;HIr>41u;aI69Zí'UФg¨lQ<;>yyo/R>Ǹm R@"Hjq(tr!}I' OQ?$JNjnDEjz2-Ptā\vV?\ ^ d1 8QKW4u}*"VYseDmBdƘrM eδǦ]\Ge gF3^IrGHM ߱rClgo%0 $ێDwf/⨀ :jAn||pܨ( %=ᲾL{EF -dP|FCf}ߍp=_:I5CUsz9wCu4ÎvbFj>+uxw;]|% :5/Z6Rh|6 ;S'1fTy\Q݇񶨟 f+5KALi]g\v)҆a5[.P@rɳ`B(y1^"p7-:uTEoSE3Ж Ɍ߽"ׁ2s:vterexC +f{2na}w-  bJd9,띱0T[a˩Jƚ=2c g LjDai wH&ٙ@ 8x9KY"y-a,T1{Lcҋ^ƒL?6HSrA"_IìSL$#*.rd\ ҉ҝ ا*E }R62R%@D]a;gH4,R^ؔwumn.[ƇX=QC}B_ɩ=o}``c;jG ML/LĹ)H;*f*Q@qVAKUQI6^oB'f+j/<5fV\2 ?0"5feo.9 3b>?P9kvSbU^uE ^ JfOj qDJU,1DB7X:dWW-Xuh6(W!c*['5sxR^*XNeEwէQڽϡ [SIqugp18PzW{\ A/\ NM!8T+!8ㅒO*G;J}Ed =H&p~k" 1o{O/iCt jwY=))w(Fՙ_ vdj;Jsgko7\ k~D[eXeݶEEQq}\Л[u7}r=pu9g siNOVܐgB2LHK\oϋZ[I)N0I45,fϹ0𠘅WKퟃ-ym)lhF_ǭިj"&a-"|K2I ⸨)GN8\0ʾ ;{ANt]j ԙxiOV f!#ʥ =~g(QېDn>X3\Rq($Fr#I-9k%) LJnZK&cg|zGD@6Mxt4-==ީr0^ x|q;y76h^Cstek k_GHn^ ̶|w@LQK*r[_Ak8#d4ցa"J ZS $&#K xI$+~R6RyI^qxVjHz\%귾ARϛ Rv4z:^1J倗 ,gO7*_kը-:;g\ RҀhgxh)bP,U:=QB[)hHɗ^wu4[ZP;@\< 1Ppjv د: @,Rh5y.0Uӻt:Zʹ|axj,;gIg9â&ҕĤ}u}i:h!RͿ- \%GQX"`G_ңdXVxSD-exMC\'U{]wБV 6BCG.NVhZPRJi6D_Z&Fnclr`7q#@/[= ,܍Ho{v7D8"bӚ ;8wFw_ώc,R,rfUX4ŀB=F4" ?Pg(#|5@Mr"&:zu;luc 09!nͅ"XdrOn) _W {O5tDӫ*ȤP J[G%΅@.S|Wo1 7i0 MfZX4lm8qM 34 <밫qɛ7Y5j 9)ۓ@Q"gK=8bEi+_OHiYVrjkEryfQKUR+pOy 5 /[ܔCeN22Im8p+J>I(Y25E9N%;tkK c͡ڽ>})?NYS7[i_9o^ůoȥÛf7;ޠ<]PZEcNIǫ3$P,z4=kp3ⶔdž>&J5I8O5pLTuh~vW|Z:/7c<}!Wsk~َ@bMCⶾuw𼅷L c9m&2ϯ!0J;X#Dt>\IYt+)UNr87n̅}0@ǟ ք3.ahs(svD!i 9IMo Pfڷpѣ%(7VA<i\W)b-a.P6ON`},R 4^F<ώ1M(&}`[:B'*T 96PI<2}2?+qA:V$ZM?h۽fB@0sG!UO[TQOɩ6.Μmt,yo1 Gu=˃m?fϒujK1SE%/dhp_u)E/5LU@3 ]f&,SP_j{k3]`~)WTOwĒrz?as>X] -w4ٲF5e~ ^ 9O9Zӑy)NݜF3DXt7F Dn ڏ>3B|]*K6ӎLߣ$ *k:8OB4Vm&՟#^,:rmʐ%Ƌm.9*64Z YA ]ݘz,q1)wɹƅpSlFR=0~2ΕAW}/ShlӦA#o[^In"m" t;v pm+!UtDiPvyMv^,.".?aE4 3,mz C א},vCq7k);65[@k`8scc#^7-=4.AֲOwA޵%tQoBJk fMLMfӇ}*pԏUO_Q3])p83NNAVH;Dv1 *%ic/fݎ@\lB h(2#>]j]*-/+p'x6LGҲg'f[xÀ_EB^»+mz Z80A>xDc.-+ ޤC^$Em|3nZ"AV?CH;÷J7΀sG1&x6`&tKSYk=l`1*W c{ӨO-1u(d7ˀ;TeI|Zh{x\)ZcD*p=-Yb#ȟԊ5vx=ק`bB-zif5_ tAW%jjwORG:Ӽ0H`xI0=P`jH#Cq^ 3/؄Bl&Rcҽ?$~l6 R*|3 W3VXB!Eϭ%W7&?B9paq4q!}J S9Cch  'bA5^\p4+N1ۢ^B@[Ҏ)6&p/yڍtX0-7jUqGclukǞVvhW0] 4;5ԶAhy ;ZDyb]mF8$E|"+'1,:]{X͡sLI&_ 1J%_Tx> :"m<&$"X6wltց#ZLq1n!0Tc% P0(IKO&Hd岥H&ֽo mq9塜Xees _'ꥵ[ G"?YkՔJ\|0L'8T!%(}h{\&Q \5"1`wm3'ha?ۮaX{H4fqhH= LDjlWHq^oJ.(`K>5:Hz#H\9KհN<@\B"nMnY+y30[<r)L,eтhB( !҇GMIZkϩ"uOZ3̽ ?e2k-ʋv3=2Ӽ9ͦN'ܪmXV|~IΆ, t۰% \rx#4DvM#Hrb6W+KW\bQ\^] \IxÓf;È$fd'4kEG$zLA5![e4ńFJjdX"u z(0zy#2 uif.gJjR/wu|٬g<4>6} H`q}٪Exް,Z6!j= (?/ P1(r U8"(ِ0X/?ƽ6q4{a7I;g@C9vJ1`C\Lڦ/\3HZwa s~O2 -9qFgc-U? 3r\;}"oJIȕy{#IBnf&!7Rq"R)?]o>tol`'XsY'?vL2e>#"-Q0d呼l9: @]`R8q]e|z+8~)S&]tT]G)jhDX! Ϳ7f Pj W_[:QŐȭV*^do]X(ِݰZI[Qwe،] CC>RYgXYS,XMF \K,(<ÉvMAW%g1y(4N )7p,]vJ(SWIܓN}Sz$ 4 _7)CSqlhv2%*U";C>Q8^-̫ÊuVm{A?zo*)C>/r.glwHp[lf3+űA%#?BaǟChF0X7T> ᒘb; văbVGZWB#<(:#>0 GquJ6ɚǡ0dC9{1);- SDa:?'BU:0K/LN/I V }g|p\z+sUT?ocWq.|UvjfO7;;TC}Kv YI y̙I+@8"%ɓक़a젼@ą;x?2[p) n` pHҍ Na 1^I!d:EorW|jm}KCgxƿىvt/w"8 g.-SyQd#f}*/8P)[Geb᱇aw)Ǹͤpd/8UvхKܕ4Z}ҋ2ݽJ\lv|ʛC`fѣk+/@gp\Ѡ1&kV1ЩC9spJLuv7KpޫJX֧Tܙ3D4mrCBa,!T^^%OX!,ۗ{tjLO-M8? J'QX\Χ+xpNҳ1ksS=\ 0J.7A`+`1"6gԬBgP_zIM| )*6'g #c3qi5@.d iz}TvdlU}ܱ0q:Taz74:6QD3r9*_C!Mn5r;[= Fb;/Q90lҩV^+y1}>ov|tJ+Eջna?X%̢Uc[j/'F-GW%Q)1|OE C,*@Wxڛ7xn8n9-|mc`b|"M5}x$*O~]J Oo)7;swg~g jy]8:\n+vhӞK,<:ղ6뇝%4 R.oʅQ>:|R!'^q]hؼJk%D&tS/yo|:!Rt'kf|hP4 86) ;Thአׅ0r>&D3vo!`.QtQA<2 zy:S 'DM+T_ƣ*|I;N)ߊ8ÒidBI7%݊CIMZ#ڟ Лm UN|00UG{0HhTmh>L⢧ l~V'rT~xl<3K|{:wzcӭbq+<4 }ߴ%1QZt.4LEuq/#a@DGAVEWZsD')#+Mi t4+FwbS}z&U+u?O0.S+~-2G. l&wNS.u"O}X7(^Іx.ŎONWAbK9z00u*DF+FS٨! Zޝ>EZT&[H`^`'`Cw7y8 J-.l=;bI6w<[k E͉/ϊ9ߞ*b_(pS--PSv 8ҏ9 Xvmhp?K.i_o{?}Rban,UY3AM:G`Z`SU3F8%dh2a r$mRR\84&.ܺ/ޜRb @g#O_K}tolIOC{ץo<>tYTv~O ;]t!8gR?_xy4aK;̣hc`=46 y Lj[~ qZF=#422%)Ey~Wdgzt/_*PTn ;633H\g* ;҂p5sjbu["&/cZ'w p4zASc% ,8Z<$ah"w{Bٮ_=[a:)(~p(l :[W=jH'Np~/Ra Y~M T,!cE G^_)ʷ\?P *1;TP-x9 05 ُ͐ [gLE[Q ‰+>Sކ`U~˄rľֵ~c3Rcu8@YFyxܥS6dS;^)m^sDm9&6ViCb#nJp;nwb5*&q V7$;Y&Jٖ6M@\ʷ"0ԯᒧYLin-Y|h;'O[Ios6oM3U{K% D5MmˍS80L#uA260 ۭ*2f<ۗ*ָCe/vrފ"G!$I}Dà++~/{>"6awZ5MK.,}Q=yF#h]~56&ϫt9! `u!~Bhw=Zԩוif{dOЬ:+'G}~Kj`L^+^S3m`^;bAnU(WLf\ fLܦOczU ?^YW!r-y`s3Bx %?^?wQxe<030FG3ah YB2f\JnEݣ8Je݉-}nDufvN }={sQIۏ摹Ls0:t걯 ;/;FPY ԑߺLm|Xt׻sGuXrKLQkMȜ?yZ9mx3c_08`Ͱcse]zGPڍk\KICgA,죌y3&V8QV(3.f O# n[#u ҳ7 2 3M÷NiI('"h}AH qʃ.o11VS$=l,,F/Fo8#s?CGle/PQ!Ҥ5=z TE <@O\ ?PoP((reG 5M%s@z ڐ5_!`j'G9}S,L8]8d%xŒnh[ř2#E3خLdKd7-v>UZ/ w\bM (bء0ZHtն M)1\M/Ld(O,B$0|~j$_Eznt^c⇰ '<+j.5`KJTxUV9䨞FJP/ qK.;= 6&y#a;Gt҅"40$:ty9aog]C;!5&w_>>@\yq}7rDն8"JХO.6S'NU4-?g&: G/󧬕k>(QWߺ}T4%H2R%қBڮVc:;*c Gj`{ZlŃkt+g4I>( %G9C %8rqbUF7Uf(*y=m|쌾iqA ܭ4'}&k# =Xbj80tg;t1,±ٚ`CDFPTC /y ,m`jq@łwGQLDNoMWFY΄"z?2t{Z+#Hxkj{RZm;&YԺaq>leD_n>Idn LP66yhsu{;Qyݾd%U=ʗ3A`E5jN׍,s84mT*\lr]CJ"]@S(o{hB2-/I"PocЪ_E\ $G d4 "OaUŢ0&jKB_ǹs.Ӆ-AɺZROSv랆e@w s|-<*Zh1F4P)k-O̮eza} N46IsbK&onsVwR͞Pת0J=&k(N p((ԆWTܜ]?v vc+,鐠>Nh9,P~Z4"F`*> 28Gd J :c~Qd\!{J=/M3{pb`|ҌppV^T/'k=GFLܹ7ʦ#Θߝc&%Iy<+ׯR| p k'9`B|L®TmzizsW_5_ጼ)F$cZ>g'A_tceo`nQ" bР!;̇'  opNUhX*͕#$09p&'w O?͉?,@Zrn@-}NBQXC{g^^ꏎD_9Vwk~IDH㾀>;5.ٵ$ðw Jߵ2wb>7NcFkoɜ3CLXi3X "2MY> v"` ghL0n#ifMOvryJsQxF~016_ ;m[4qh8AceѫNTA+ ~HÙzTUf,g,G~>ՔWb  5Ob1}MA Rl?H&"uSx& f=Z+~O@ 1`嘳,omC8آ_P#?Ik`#X9ŚcDh͘#|:g_=ZLX{m'-Sω0puژmPY@dE{F+n.Kůr@p@M]"9 ᪾ GB2r>-\l{(1IJ?׽Yvx&@|m8N꿂|F9KmeI;G,F2_`Ut7}z{Pb {A^[ B4m EAW[MLA| 0RtHCТ`^~l%Alr#nLt#ߢH bM+{Njs:yb](j׺DLj``br W j&̑vbfQyi |gTJ\d(CgD /WlH6d:tfm򱖥D@Y6& su1aSN <_mv~7VHЌEP,YvNH qtD]Z*(]}AmcX6ӆ  |à4@}M#>&Ujx|\yED=8-}nPu/cKy u 7Vl AoiPў{\3 Z<xP+r\u\v =eUV6(j=8G}@ѮKV Eqwbj(cPքՅ |Q3a0i,)yiH2BO &1jKG+;ӗM~^Qʙzì ldĥ^M;bgy`ov/DD)D،# ]vôLݻ)U"qsbN؅pSXూaSehR9FY׵8!$sLa0"m+BeUnUޱ%G:MN5pU#+DRbe>POX6Dx0Yⴍg-~sXp#(׀ߛ-MSh  \Tvo:S-"lj2eLEh L) ~VMl LY D38 w@rTfޝuٳgĭ˦#(^Sgo#a$ic"b7"p ajo&90h1Mߍzk8&cWy]4"Zlk# d~ڻ;jESYg{{~v߫Lpb:9Nd*FѰ8PTNfbfiu3Xrx4u&˫̿ &"ܾkZd3"e=.n닾@F.Yvg(]2r Wy1iA  [}`LؖBЪyo͈ɣ$BGF7^- MN\qҋD1,4V84y/<)D.P\BCt7Ƚ0YɐSbqJDx Nq6:k#ʌT.-Stn8%,a% /budӬ*9 5(q3yi10zGb&߬rQqGHyByTö2`ff"aK 5h*sCM@BWʽy,L!"!]E 0{q4&CS3<\nSR~@M ^xE}?`Nwc2˓v[rry3)+)<ڇe^1 bڸI >i!Rkz % 톿U٣B縞KN~6 RQ.L'"uL7 ߦ,n.%Hԙ?x: oKhe}o=֟zY`8YF @幛hnHy?ûR{$뎈$]e ԡh]Юy:3D/NނlZ\|˴Mv,̚^nZq-U<-R~61oC&k*n va YF_)b}hhnA}.BvFZPR5yJ;F8i|wyLUH X2E9c3`l>-$p ö?:gSVӃ/)mc#jHO׈ Ybjƶ8 J7 I"Ds9\l]{Th;|/ o%Tr4sR?IRAꛞ:G@g5q\{EVZIgn]_OTq*,%"=\-֎|=9&W4s5GtӭkV]=R,j dK<ĿtPn 5h {M}l r%])XmE) Mo&b zMĦ_[ؐ{\B,m8_FfplS &74X BG}x|p܊V;oPISF5;Z5z~%>`S w%ͅce{0GXn+ry)d‡xoG.-\|C/JCߏ.YpӔ|" 椭gl̛৞ޝ/e&#]^c֟Cޟŗ0z3;z_|WJsls2а(8WѽktTJޏK ذa -;q ]=٨?\ M a1hml|XK{K/fr@ z+P/?1&wpspE3V'8dmL0DX=<6 ޻`ay,ޛхȡz / 3WuOVԥC4,m=7yrTM+%|xqlV7 {r\tRo$Tvǻ-8G`HQ60ϗ3>o*Faq̵.>@W*44݋-y"AE) 2 jT/JnN!xD6z==,1T?u Tjy>SP=op6#,ʆN0 `^{ٗ85xi xppF(ݺ&l qD4ʺ@1:fT5g9BѮRsA|Wd( A8yxCy6 i%N{@3kZ9rMf$DfcV^x|I,WM~C6l;-3kGhIqہڠ3);uB{4!xd2xXYoMp͘Ŗ0PHXrUG#$h`ûU1*}%MDi ,BկYK$s .ڜGr.aku0t=,ޑEb1\z"5W<"WPYJ [)6fU~nlP\a"vTł fuQfk(=DԄ6T,.EKpf j7 T,ȀQpI/◎ F@WDV矈3c0ͨiplC +`WNö !*- jV^@D ZQdQ|Î\1yesb!i߁*_F <KOGw<1g鼉obGe"}N>1pUcvP_< dύG"TmgC%x^^t5\$Xr H8'GoqqE6B=:olg0~Ht4 3>4ĵӲM*s۝BbsATiȏzԴjg{N$';$&;b$ͥMW4>ڞ\H˦E!f U6cJct݋aܙ&(qE*(/7H:0J>Ʉ? Gd ^lڶxW;>kEqFZ"ЇǒdL=d-V>xho܎.#Y``p1ZV!_C*IsR*C--sF4YtO %yJr'~`IXbϭ9uZF=tR!XJe*A~ i{7CRve,WW \dJHSFU1d.=6 Yxͳ-֐A'N/,Ŏm4tm5@Q?nHm݊ ۄ@<,.U.6阌vE} W̚* SH{#+7?]#Fv*?;COweو|%56f$:)k5VC#XGғ(@Wn80:UWBkXx2U #3e-mBӠMܓDc}M>w`e{Dpд@L:gXt(]_ϖ%UAdH-FwwWN,yQ}c RFcucO7!R$xŏAM?xE\ƿC*+Fk}T|; G8FD }54 L/Bd"ńqUOafKInb?MizLWA=)aȏLR )?_dF7r-XyJBo'oolRx AF'AgF@`1pBL2Q KG2k6eƒH9-XF;Ҍ,d2~NqG,^]v=R tvszj  ь,vdfE@;2W$LBӄc P?&"9x2D"7" ΎՄu/ &deSqwf|F3Z_JmԖ8'ejt7KF44177 = wy$YdEqOOE?Mf}%uBgCt\[䲝[O!8N9W8DFn#f,%|D3{X֥ܜ2vXa_Q,j:7 [ΐHe <'*p1Kѹه:̢'"iqS놢&l~r@5ߗ|FT1/ISE-nJ9qaa2 xԖ?xZ/d/X1]p+ Glc&Lϟ_wOƉ: b5U}\]DVy̱aO֠KZHavZRH ,!,oDV9է|Bܻ6I3}^8jb;]ZMՍDvuk"0{kM./KDJ Qa^ʏp" >8C_(mB O94'E^)@Z*4&BNt:ίϞ1CG;1ksUӺDt眧Cc#BXתdV8Rg82͋:_)[l;i<?* GT-Pm.4qYNԲX^ xيf}-B(lAqI}(8ĉFi:$EG3mUX8?yW2٥cܞ!GO'ZZئ"?wp.EYCE2N32ij Ժ*yW¥~H߶oW;-,릨GBlpAٝ"Ms*QUR⻠E!RQƽJYdž) 7mQSTTKL$$:B:ɤ~|vc_Rid_PJm.}hHѣ̥,]vu2`c$Ly'ݎQ+@V.%ʵ1#bGxI20 iE >X2w(,RtFpiyQNE?ץ0M"iQ}2a?dZ km~㏅|PE3ׄ[9aR/%eXsw}XA26.xGr1 ˎzD.mo3iA%F[#VŴRi_b@;x-TX]<3/WLf|CPH>q0cj8r*u&3{7?2ۧh];mٚ=4=`O7Z:?9»{%!FV5>!FP!²<) YF /o32NBސs Guߟ8o|PfG$К)kps'?~ɿ\-9J}^`HeTP*f#Lq-՝O hc,l3ŕ&iKfm{Xe_:NDKf3F. EIHB"e3uŽ+hLe\G>G*nF @J"f06>C?RKWϦU|s,%Nܑ¾/>ZvC M.SكoӒZ7` jI@Uca4O>[|Uī+"-QK{>-K5z1X;W;B%us&ړbH!Me-pлF:7_PNˋ՗ߨ< 6!)|`f) YjTYޥZcM628h!$.SQ1Jt5K@eɁz?FWZl\]FpUf{`!zF:B:jVPm5{g:g ǂ?=J`,āh]C!-_h/_hjSLCC3g7AD=LOɳY;cp⿴n>3=#Zd5~7/}@R?U+ojr|?}knEY+Ycq.zsŭ4O %: ^ސAzߝUCLQkt=٥?1Em0qZF{Әz讎.*63n#hZ ؓ({Wa--9*ߠJ?V MnޔcBbI6p{&s+ϣo~V|;VV %PY_sZG^YF.~Sz#-%4HiEI-Hc }:NJ"WLXO9;HS(aIYa!XN͛G" xOHZ [m C`G՝_@W4}mP¬b+'C^ԃ>,=7He:3jj )FL=I'9$ W0}/`쩽/D\nӻw5Id[(z""H)% >vIZelw҉ 5h-^qJ_{o 'd dUڵ46SmY!=ywpxfyp==1rgX\nRZN{c[cBtD;2YCS:," IЭ)o˞t /:1cץcʺ T^gQ7qֶ:P-Dc܁Җ 'g஭"W{BMҕ%{n&qaT y7]$T̍ekX[jsgmTc'Pro?ɚK&%M`-+=UM.ZI1_Aj&>J~BFTY@gs͌;g,|MӄHZT" o!rض9h74w3oO!ZgW2T]wm~΢A)UUyHx줊wbJm;X F7{Am[&GO:`3ɟv`M"Jթܬ,ͺ Co#l6'9-S %Fr%Q}?n i%o$׆tKvʃu9_SJGE͈'?]A4=&"m^C:`"\q%WK"ܑsS %4fat#C%dԐo*Y*^.æF(A313&eUI,Q@^d߽jKѫWy 9Lk Cs.a6(EQ+0{+B.DžhFL؝sog "e!aSſ0ԙ5_@~'ǫN0X74D'pW3np>at3ElƚJ@IH("P=U0XgnP3^?k'=XģXN.W^H36ݵA]Pmt\>tiљ\dP2K- 2,ٸh eB1c-4Ìg'RrL3TE Lq<%fn_|3"3oE,@A1CVb.?(`$ς&Ӹ*pL0F,9sI7<u81q#aXIx#;/GSbN[R5@[SOFVH5=*(c_jxk7@ة:VrrI;T?:K5%='Ǭ75>ZnjF|~6H'-.DUV:q7"CJAF|EӶHYgQ_8#tD+>!BFP:aQ\C/Pp /!ؗk-|% JdkS kqn(қ\T .`J)n7#σB]_+V$FVV.lUbOv;B(aa|jf|UMe oYnhri\T].+Jѿ|Hxlvy\7/@!t=nɹ7~xPo#.4 I5+ɪ|<ߜ&b14:q^wןSӷ)T͙EY8b2S>i7cc}[=fL!g(O.XF\77ke=W6z}5>e*'WR!p" # >xmY &FK|^!=ʵ'zE TfnGV{hv4oN"{yĜe6T&~KujhS ~!<7`P/&Tѱ]G: -^&~\#?FnK ['.gI4,\E/L0%p8!_ CnL#9$g>rj%|oK `LYsi@k iMz]I鐌rv.gV?K+8W/ZnCm3so"W*y\ 5~ܤ Ϫ Q)tYQ鞚FΜѠ[g -j1Iwc+9p^<$ܡ%@Y\tbU3;u#@Y-ҽ*j>}cQCsDhl5-_8 ?f>j{Bx:ϯ/4faвT6ֻpPb= /cb q~bx29T9n+J^bjv` ▦b;ю;qɢKW/ުke֬Yk"#Ɯn, UKsG) NۧR|0+SF ߿m:[=;kn+eԇzϺb(3que׏b헖V1:(g|qk*n:7=  [oƄ 1wqW] mzy+E|jXN^VE!+{~R!X<=7@/^A._S [ ̣S(yXoq^ {O"<]dc|GG{"%Pɍ8@ӎ&lݼS S2op\F@J#sy r{rR G_ZbT47ʈ>WDvYֆ+[|AQ +A2xQp')w>cV?PQ^Kŗg`I8y'^o;ɠo=F:_ҡA>9׽!ږ}G#KgPa Z!@DGGVC@,S_G>#B"=mz r+zPU_bb&xjeB̯+(PWHmAym&\MUBBXyoK?;? r4Vb ]P9WŃvn "bh0r9ߊ(/Jvv*_cyMA= &1/Nџr_B<^{Z$%PO<| tQ5S#m;iȹsDLZ@+,@I:Fb jP3Sx27&6tcF//u"DYQu$)a@2eѿbԁ)+oTuz e Ov׿3/Nmr+QU+@zy{>Hb{lfʋ6noNhbM麀U[XOV%%2mna'#3oOCD]d h_^;4H' OGTFz҄twXK7OtDn|0)-ڀ̕$Xt7q_ʳރrr"UOڵT+yʛG\﬉hss8,9t,J>ᖑMhh* 5q媅KH#ieH d;@C5hXcg]0Jt#'Y(-azo봉зǢ Z'?B1><}eIY4 zp걆űUܞs>| ,%&:+g.t1)1!+JA8?Qbz]6o|U(]^&'qkoNjl͏Q:PԻ+ VLψ j~:5sƸT'0{r?Hhk-J@e9:+ 2wk&wnehE(@nvy; {;TW,l%n@#051/(C?ChRˀ0վ_i. {0O#ݴIEQ&7Z.%׈9:{ MC(ˉ0~<D0OsOH!viniԤ'W)>b+&>m~JFR L䠶[ Qڢ^k)#9H =SRdt:CYDa/ضږ)I xQvRzP~tE[FkOoDABi7(dza!0/r}!G&Je\߳|`?L X \5&/kJMhaEϩk549Qao6-H߮Y~JeilD[fZq]iVBmiϗZ+,L'9r~^mЦ:IjCXR*k&3OO0 N-K>hR 3z *V.SZ1m>'GDF^RmNw`Al] @|$3v^^>{Gj9٬dMS)\[w*leKm!FE,JE ?"&?)G]> ήTv?R洵>QBM" &v@J5H 8*Lډ^"ps):(T. Gl)q}V ӥǭv](ˠ߃FJIYK*CR)ĴdnLTpXp#zX4.jaU˹;-HDZ6;x5PٌdM*ۄz_4B2y:l!KNH"Gn @I!>BwtiYqѯT(8tX#_]MơCfp`p&j-"֋LQ&afXO".QoUYx<8-8fwRIc .А5KM0ԩQ yʼxu@ a/X֍+أ]r98Z UGhX!ZU>D(TJoآh2[zf|vNQ;ܲzU(<=V.=S٠<:yZX =Tm { ch#&5C|gB[:7Y[u{^)+j۝PfXV*oO]ɇKd8<&L^Յ CH[~1[I 769{Dᡰ0jgCI@s/,Y*?r1;Q M#,4l(q7`o$7S@Dcp, l߉z_=QA/L_,_8)6[-*M SO$gip;v82@1ܘvzVpm@ 9~Lw1^`b[{W:e\} ?=v2L:1 % xϽ?esiS*1 Ulwm1Ůuj1uÞY4: N~aY&P⟆ѕV/kB3DŽڠ> -h=Dݡ0g4̙Ykb:ƞ$s@,Tam$-W}"Xۦ0sA)d[$ڑs`̚ڳ뮧{Ԇ#QT[yj42up~j[ YxWHcmqf+ .堜o=:fD y~[KN&YR֡nJs܈iNqU`:T,]G=B8Fn,2Va+ &l#>Qw8ʥ(̔&鸲d"ŻwKkр_+LO%hhx%uQmP:r)NTTI$u37QzOdm_6ؽMel@Nzw#ȴK j3#= NOa0V 2+Iz]^ ܰw=*8۪4ɛ BypY7+Y&G ;IbY;/CF󤫯$ %o𐎣PY;;WhA!'P0l]x*;"zWݬaFV=iUk -×zay[:OtBԬkbN/jMP>,:?M ؿ`͙uƢSÎ| rr'?t\oFA?8ؿv)Q }D+qhkNh1 ~.~C˜ne*=;FkR~Pie2 G3ϙd%>^wTB1owbjC !i d'M~oHUV6%aQ͠*m5<0m1l4aNځ׆1c9vk㠘AP;-'k q>$Zpl9뤾zx:bFϧ~YY>4Sypi{v.Տ,4@!$l,JHEf獵]Bh:O9]2"}\STtl?- 7E\#BR }65ֲ]q܉셭(+-64o-2/-hLQKk^$`cMH2>_\} tiK u,FIPz3'XwL4뮡/C8@ vs%fl2 d} z :bʴ(N%^1KթBqO:熔.8>]̕XZaxѤ3[)!g6z fZ]QR_[0\g(BtG~Dn^Sa?zN,9q<ĥt;zT7kK\9YivaɸnYyOJW&ThƆ}6`C^F\ju{0^AIۄY`VYCpZU I0\&cہ$.. k0p9M8{a5[PDWMUcߋhPUv$F2ly x;cAuX5O]7d 2C7dXiaCmnw p;2JG,v'8-먒= ʀQC #nAk30uQqiVR1놎qA̽G+G^@Y;' 2֌z:CKd X;y>NjB*gRŲ-Gë Va MݦkaOع @Ze>/)D\@hgB% Vh(eWΗMCs}it1+]̨Gc[RAі0_ym )+9|)U/1s4 V ^xt`,@dm R jM43꠷GqNٻʜoM(aFxMZh= BۅòyjI4-?c(VRvЯDimGNzYp5z2;N+.]Kzhux_ȏF" lY17$ (hMQakA†PcЮ,fDp ;!?}W VtLo:z&gZ+.4;Ρشjff#^LvFPY(:l $XqbTk%OMYa ? _oZwV~/o`wkfB! `)@>:cH =Rv*vV`;TaFE$،B,^`wKY."AjɬSP ג/  7vfH PV{MVzF8k w=-gMb#A24lRУ1aaP|x/cWR/>vNDKd_r;*wHb*>@a#!Ƀ;yv>xBټ\Ϡuq yF+bXB}(zLv݉oF>FM>,m2ɿGUCiK{^>ipeLCЌ&=;giAM5q{--2' '#9b,@L8l߰(҄fGט|ݒJ2*B\X&נW΍.v=H@H^O y_k7މ]=8dOĎm4 * Գvc-顏,)̻ u"5n+ TbȢtY&B-S$#%Ayy4km .|N4NBp?'B4iJa ˠD^l/z\H6NNX/psp7eDŽAA#BLA(q80&C~>Yq $(4q 6v(lnE/=gOL0WnO AK#u7idK Ufa?sՊ.m=O XVYd3uT0W%$ݺm|FHx*D늃یVs;P#4bgozf R˳Njvƃ",6.f[HĜLuw Ǥ\kERH.8*CNE.cZwO:^u-$]5bʔRQ_ݾ808,oQ>T71rm1"[jJ$gwfV1M#)=<`OKbpn3 %_Nt=25eR( ޘ7Kk8ia`7L)(W ۢpW[(+̾V'QTN^KU|94͖52% I =HzY箋Cˁ&/ym6DPuٽk/\CǞlH"/̧kPD¹5zU@leNkHzh(=B1(7V) *Zom ֋&ca!RM 'kኵv >_#33 VN8[>q̀ "Z&ⲭ#܎ؙ\gr1%}rxJQcTuW=M&W:]WHbLizǖ]0VΔH:qPQZ?Z.rw9hv 'N!JSNr#ɕ,$ T? Oݶ>mE9i,ADrc O`FɾNQd+e3D1? q=)'<:/+Z`N|| y]:A%զyY;QɃy\: er sy8}2<+A+lY+`¨e3,~ξ 0 )0[=ܞ$ an}],-Dt2X,CwPotca33I>$?PQH60O8ޓv\vs%| q ;vE^0bd#޹ ]^t|gE,3fiqd$ qg\94cѰ_&H<0ʤM| IלW8Zc_FXlXW0'L6-A3\ǘǎxh׼5.m5![Gh• A169umvHH2 \jY[arw+<| sfգoe7kN.TZAf۩m.L <ҳ:t`-*,'Uq9gZ&b²" FȣG}p=^]bg Y3% Qy\_ǰ@#Ӱ p%c-+V\7?? [{$Wk;kWPxkw ja.\C TX+P~}e=Kjy"y@jpYl<3 )6Mkk Q8+C&/쏆:4SCg{tApJب{HU0gHpN`s> Bbh99MLrdPef9y/ FBz: _A62[Qd(+@j㭣0uyl^fY  B'`k#u*~Bj3Nyu1ڧ*zFsVzQ7> !,eSʷE)bNрiWJޭN ^a!禉p#]RT>R)EYPq|6<Վ5E$W@#p l<Aܦ I`gw Ca~()OVD.g󌚀fq^ 0"Bu;Q3kJj߰ VV!i逜kQk" y܅}rohA﮶R|Lf_x*d޲z\HG KuU% u!jvt^ f&pWѨ Ce@kXH|4]m^'K$H҃\pw- xׅƵ<1F 6cU&4[}űoJ OXqīxA:D}e-O`4%DFuU׬OdMh՘Sӆ:ZV7wpѹӮ'T\k7:-Қj$l>6y^kQM9,x>G#U~z[T?su;G_ȳ?B,#F *\'{j-A@kf,ܳ-JSm$nVM5iIkZPAG"<!;_MD%AD0ϓ U0HN]RGzهz?<-j6% ;aS26Ll 0OM~Mp!{ k;M CG;R@z颺ȵ,զlmkJ+zLHS81$O5`[k*!+%6ʪ&f62enb) lN*fo\xW;>i,Dz?XesRGKq5bi~Qo&}qnζg%oUl|ѢB{Ⓢ'-"@! *,58v6+=̲)iנ{E73#S)#;WIщwD+n;jEWmr ץK(x( izI6n4bfڛ8?Ó~\Vm_|cIkȴ}ۋ]۹*wx[m4Bl: 9+O1ʼn&`94̊pjyh*ab]/GCge~SYS\^Pq=O԰=4&2PVY8UH4l1o>"+!-r2-:6ljM#[UDoZf)Bt@o.nݡIhBM嚝u4.;}ʹ{Vk;"0iKHQ]OW}Jf]ov2S OϢUq^FgTԫȂY|$M V&Bߣχ@uQM:B%yomQAXИ 壦ăV@=+ʴ!{=?]}m:OS NuvԪEԒË`HOش dv3NX9m2W/Aդ,fD9:jz vQt4-vʷN5W=;V i>Ҟ$(͕K&i/l@a$2tHM"\"?_9:q<~7Dbļ+\8gXka4NZѲ(QՀa ]ܳ^6O!԰' 6rfԲ!SADdܺq3)ݦ֓ 궜6Jl_1<"ݬz=b=(y&yS 'N,y>p]ve<7*~47L:0vt')c 5&|)YٹOnXiQӾ_9g.muP8vͩ61|BYd{hNvW*WL|K&Z;*m3Umj#b:n,/%fݳjCaO6b@%5zeĸcoJ SԅہN3)PG=h ]*e SnƋ]q4&tAOM47;?=_@1^]HHtŹ 13c#%vSg(晰} B v#3C XKq'kS913܇K A!Ĉ 9dH?gjg|$ϣW`G80^32knC&W$p|dYrg\U]d{ncgʸ?~TRK@pBXspk9<QrPG* yR5Vs2\~u;8S]3wPa4E#z Y\!Cm.G3Bl:-~+b7F W\/0Ԓ: c"HA62a, c y /PvZ3߻ x )ѱuEuxjh M'Sʣ#6rK5\Uh]_e9)N F3D&GjI2iiiK6>jfܹHe^Esf6|I_ǴC]' ƹ$Un y%%hq8 ǝ`ޡV<*eAHBWZc+wXǴW?{\!xF»VJl'b#.%xU{"Vr6-w%Mj s ;8(}"Uh#0֏RTIlq+.jI7I/~{dNڜtΉ+q.w ɒ QZ.~*vPޞJu]Uq}rY.w]O[*qa8)l\d_ltrnD|A;[{KbMvkZm'?dq,prB.N)K5v\y{0oJYRsN5cEWnEr8)5VSMCh̶~ 2E {YY><"1zƒ;jӸ8]SAm=`ϦUj WJqPeWOyM(@'x=/eP'A+È,cDAF?%aR_$ Sxv`?.1E&m%? &Ff!SC)E+r>ϏKAܳ3@_߆VBCL#֟{z?$u*ki#UܛBvdGtT{uC`]$B(W}z=5[ Mxv'Tn o7F$&٭aB3 MŽ!XB_ᣴn&_:+She|bnriiܪE=-u2!o#obNKk5ERk<'}E )Y0BlŇ`8C {DADvu}p&55hl!B!%Rۅ_B$rA[h%W<5"(s UYLDplr\K0YÑr.`/yY |+W+CKlyf? %@L3ɰZ1Uxopv`jo| ָ1TQ?ΝȸLUrI$ $rPf\edpӱT#eLZϯE<3=p#BĐ`)bn Q o4JOdac+zͶ%9,aՍ*f}8BВ P˽R֝ѱٲq!$[A;4ОiqE.n>Y)p<O`= ɝμX6:`VgIvh'k:Dɮk*KS"z@9qٟpqK: Y! X,KPX'vkX*3.r-suxY+FbNѬ̸|Q*"AV$ȴg_2>UҶbR\㽣Αe1~zՑ2G2"Y42pM<&  f9 #z[<TDP%1 9]0Vؕ4 Mn==s'Vd3EIΓ"~J6"^7Y;tX`gceץlP89d…4? <ѱe @lAþ%M3ɛ8ow,33m/DFMJ >!6hrAIqJ{Q08Q8;;:ALMPɾNS-XTr%ș~/k6y5D,k[ȕSCjG)z#  ]&<)¤4_BHv~[lxYxl5tcl\PvT<2b0sfBv{_%@WW8>`FxņP퍴ZUqT]nrn=ro7,ۜ}:@eS{ccTfx7FzBWTn CF<VA+fd $xտ}'w,/c?Kr?NUGFe2GP@ e(io·yj:*mscS#@|N`(7Ll1f1җ_ղ% .r(2}f2lm@fDfyH`\g.yC_Mty{?10" " jQ4> hDoMAfF3ya!=fw5Ꝉ.k6FQA͝zB~D | C.c-x6weYJaX ; |wi7m(tn}_Ǟ0Bh0YWsX(uU+ۺ ~~JF4厓U>xxI=)Lpd/Rhi4hlB{ '܄QXDi(' l5:~6*d`+<λM%Pw+YK: cHeVĽ+ jsUSŮ2p`ٔ[x 9:`4tz^:TtYކCe(ww-!/Yp5a;_YSXωO j]SC /ꆸ!ˈ\kIk|c.M;ԉ\ ;P-wLKz8PZ_p藴Uqݽ/ 㚗yw1`ǚD%/ʟ"+H0nJsWs9Dhu:mQMl)vNe&P䗯 |T'Ջl#Jb#']+k'ԡd :M\e#ric!ݥqU FPcQtIWi\C1vGηo֧>iUzY- G9@>> [/,pxr W >.&}b 7'MV*xyfX{>K2!3h8Drpox` 'q2PXCk^qߍ"V/:lggUSWih>|}&hf$2?SNz[*nǘ]9]-jĵqMnGf>do(Ej$A?ޕ#ƃKp 2%[+g_3fc?[{fDL&)]"/ u&NS+]ݢE9$dj19fi_T8 G4!."Y.uqX18*sPFa:/׃Oof_sow!X_]e"Y-}RFH7#VMfC-pk˥/ fZm>߶C'3iQwGdJF, m5)DIЋH,XԲ͘?k.iE&'yJȒ )J$CTݟoªE}DWܶB'+jaaLw_GQJNU*F v;#5IT}I"(‹*彾ऺ9k`H-u& [1ȀOImZ>ݔ_@)m KF >וJWXs^ij6zЇR-TKVG^^dDm0m=t\'IcVߧd@[B:tY,O$%U; $_Y8 |ʽ皩 U:;Igl |>!dLn\ZqnD-2 ~{3G賤\%NjVUgɗ2Vp&~J(]ǩfPͲ0`>wL2pBF̈́_!n(1d#˘#Ω#L̩$X-ǘO{پgIcLjdE>gVyXg%(b5[aU|׆f˴\9Ҷ ͡AY<ە{kcFezl0:N <ëGUȟ Hy)7ᓔJ+?O\8@=g`/v#OZn,r9tt oMђuj g;j.ü'uUq|_.Z y&\&01#]|^g]("",!"mGZA+ ,iɉ #9 c{Fq>H~ uMɆv q:i28v2l7afͶ0ɍ\VMԘׯsЅCuYy gF}ɡ(z!U17?<49o?m5NtW.}|DkE2ԪG? 4vާZtم~e +Uq`ib5uɎ62<:`h I˶R;Lu-0|vHgʳ;p̘at 4Q V*xQ88<2`GW$K= 밳r/N[F آywCi W↛ǃ%։w%6qT(Y,,[7#ZύO_v5Mu'QY–ƍQjut<#gp޶E=(Vt(xA \!Z5c<9#.1K\tp+t)d7?EnСYZ!dUbwZDA6#5+L@@T{/GuHc ~n,s܉\{[vBUkC@&V!,]oʼ8y}>kx67x7gqb<6dyeQ4>}9G>麏b W52"Cy&s%9J.a>wrkB]vtLW_*lt]%~~OOq#`OXm\iV6qrW|7GއV"i0;e FK \x&N?Jmqpp79QrWtø*]|?|cc%MQh-hzK4% 'd{bLhf=5'O1̮i: 㙹gv'jS&w"M.,1bЊٹSnU~sQ+ f!c)!ܫ%@S&j 2F:>yŋ 'ȉKK>̝QT QS]/RSFOS F,cx+s|Fk-z,X*Eط7>`0\Jj) x p@=jV> @}68MI ]i8؞|6%yH *UT5+,Rf1YyIqTӱfX_)=lFБ~ʧy?A^mdD# DS6e= \K~Ii_ϬMԣdF!qV%1*~QSXTQ<%rUh"*9-ud >~ Ě!ļ᲏2ȝYy3oyslJ}=zlϦdTL(5ۂgjAEA#=u } 962=)e0h8_nl/?b}Fp]jHbnIݲ?!(EQkI7c_4j{;^yp"N^9_r9k!˙ވ.m6au̲ԄHPK5ZP(V(d"rn626EwLv[F hʧ'fVk.Gpaq` D& "N#eEfPm%Wگc;6Jux9ȅ`fƒk:PNK`w,Dϓ1фҽۻprt? mDw2!x8vHKV>O>0wwBjtk tl ([hcfe'Ӡj6QyL#TOj Ai`A`Ta:J*AzNIU) ~WX؆%AŊr%!C*^ Ѥ5ZqVS!'jEDzW8r2 O|EмscI#sk 9K[P]Xʬ#;mzvs2K M;hv,5TX :F@8ZM ]].eRwCR3 +&]eMF{8.  6̮+zzjjSoVT>ڔ BKE\s.":2dẇjb"Lq{j鉧Ⱥ8vlO7_/M1 !! "^t8K豴:@]9(@ALC',)@+#t.9E;]U;]+9?.%;}b<ynnQkVjqCn\AK2%otS,wXHiC['L*DߦSXOijcW&yk-T%=ػ 1=dž?1C'?{c<:) 0%(!Lՠ UhOI7<})? n/Րw'[] \P|utw۳9_GHI-wVm`\m%DWzm%JqUQ}qrIqgOY>/(8~>$.{Y-Y<:9 Td׿5_+PpH787e2;=*wÓpM)F%JH+"F+qIYabl<-:0Mk ukQݩC#Qh?Po^(QYۙGo<#FB0q<ܣ?AM A Z5N[M$G*йw;3&k37Vn@(\ɾӛ嶬|2 D/>e|jG|I "]IL='b2WtNG$2z֩A<}# m=0\upxDp7ֽ<݀R Rzux3Wbw};Y\SqoE1RpVHyfF Mx慰`b%wSH>36f+ &o3B}tw 5 $_zbPM%7A'AZ*ن5PGkQ^9X+AK1װ2~LQtr|}T_3>L s5~JZ pgC3RBgo-Tg6=HID$ fɻvk?^ hGY{s,yˌܾ,=b/m'JQua ז?73zH Flx-2a;HhF>jB#э/O3gt>PIuhڑe?g/iCIV&|"N߻TPr' Y3~vT&&ВZjRUӾ-kY hHi"|ZN/ZOφaaiJ4MVbT<&](IIpL' ƃ4dPCCų RcdE 9fvMV;c2JO} \@ȨR7ĺIoSSvU|>NY0zm?{dPȽ=vaAWlE O^mn zFPN)*l7;@b^~7[L2WMb6UUiwtPn%9j2聾A֙5<59zF=8߻aR0Cf7_r2.qKMs] g2'xNs"Xlzىn/YJGͻů~  oz'ŽP{_k0(Hs3HH2f˰j;7=2Noyח!DQTa,)[{-;د}EfNߒQTeh %pWbX7zni˰s0$K4xDmdrZ 6RsN$F&o $^!#!`.M=ڏڴw2hl!C5cz)Es;K!w*ecZTqPǃpWZ3KI(4򳖂QAP(*X`Ɍ4s ^8\W9Sq,0$SL׻p)Ʈ3SôlY3ԇ5BSF0eԄ{Rr>.1jzJ#/OJ?`m*7P~jU H nqzڥT :20?:Dh(:YNXr&+dצxL`[EmO8g5 @(gA?U'IQG\qѱ  Hq(>dU<72@ =W\Ynv-#xj`/=)ϴEF{׌YlDwv`5c==:A<ù+!k7{&x6D\V7B/&j;nn{T!vs4 pxJS.kqC|J 4/)ܜHŗti$t h|jGcۂ]^/8̗C]1΅sw 1*=6E!YNJ#D5xdE&bSFk[/Db}NU#wO9*MgbƥkDW?;cuZќaב u xZϡJL~1;F/iB iB}tnX^&c$8+C<Luk&aY6'NVd#],>q(T͇)M%` E~'Z1GEZ{mOQPL n#ȼTh>8ű#";]RPuv* k~NT) +rIBK$;1yˢ}Bg%uimglhz6Z(ZiARrLD'Hijb<?gAIAJk=8\Grςk5 8MH6c}[pPM h=ou$++5t8:T9ȸ.k\~dL "ːw8ڃU;a#!et2H¹OI6 !}ې'̟T ƾttc@mjÉQ+`27( ϡZT\v@}  CEWqL::xƔ#1:Q9.NW.es/q 2lBi=6ll/+P 6]_3<95q:Qpxmd0[(sp:%‡/iǗ&=@ 8r>2Ru X'LO2w2ښUb.J?ջ #a^TR׊:rw D0;6|I6aVa91YZ!{OwI RO_[$vz(N0*\mƚ~шZxAeZOKFLG" VS˹'#rkߖMvT6ʫ2Bp#r4y0Bx>A7,T:H X_Jap^atN/<ꦂGm;$Yrdbu5^;)>™^1uDt_C*,wf;aHZ-ڀ!׈x0h#&ݩAL3 F. )CX5W&-<:o:iH|:ɀHSIhݭ~,`o3K[,%>rMό1T"؏#NHvmWf,)\(o&лN1JxǕok 0\`'q}R CGMqӫ/&Vk.@/]Ѻ)hy,2Eo~8\MBt#;Udr eE(;,$KHS㷟I됣ZB(.=,^4Jbs]̮F"to@_͂2nQֹɊv;+Hس]!ղ26kϲ߱5> )//.m6k.5lA[`udB1=4|V5?" ,DXW 9_; &`l ivGoCxc)9OeX5= "9$ѻH Lg8}"t~v5@yp;l8;>$xq%OyPҨ H-p  3H.j6ʇ( rˈܿc ^ra|zJϓnLw) z(өr3HVE>a( BGchPuM)<;"95Q[%(lC^*H 31 AP0ov"'e?r=ԬkLINq4 I -נ;l G%2ndwԻ*_S֎(MS=`~<8*c%؄ǥݠďw/6bnn&Yti{ wzh xC27ƓԳۓ@k>Of$ W !zut7nh`HBZo+X]Gc] [Fd*CZlBz^?$ t1?5`Uj-nS5fp{YƥLfgf97hzQ8uS72ϼrvizUuHL-OXcv,l>(ſ-nWEhM ߴ)gO,4*&CD:Y`[YBΊbf%/$1N=ԚCʉZO*P4//¯^0-+H|732ߘh7qO{.oyd7۸>γ钀$pM0E~*ʲC{w]m[jNg1|Sh{p7Kڇ^_48*dnAiDG2 ܀J^ۄLf~Px-VS\F3[YeGBvL3b@'uGNf%*(t_4-v8˛=S ym!LUsZ.rچH?ARñx_⥂;H]c gP{~Zn)ٰZ҆nT?uudF Tal=Ũʨ~<1Can!"X7VC-$=q']EReacEUT,NHpTO%$U߿23V4H]&_;| ~wHm^o]j*)ՉF7Tj{kql2Hв ##B&fs )mВ?=`ջ7zNl&ڟy!DRօ4~]Ely=,'5&zێĚ[=ޗ @GfJG~7W-*y*χ)+_X t~({ #W 3{hp}zar;^Hఝhf!e@v 41bp2*$5|1觽2_}>;=Lg#>D/z ~p-O:*UU9M;MmPa?}#y!(UݰGZ7Bbx.|Μ03.#xkX!vmV3Ֆiٷ%Mxbo;3$ 3&Wt'ƥ9 D(B0е]v2΄0.1įn U |S)PBN$mTM$\:~7ʧRP+˩5SQ`xȝh\rքOq6OD2'ݎPv8~L@:9O` .0̪٬7sa|&%O~ٴe.1}Ĉ ^e4C$RȄB] Sp6nOv=iGrr%5w;JFW\A== RS,N5SF!d~a;ۦT/6ExH5H#r.3- TR'Y"(3R鴈[K8Q4!eZHSý^hư CQyZ= $t4!?x 圏D)JF ^{ǵ rt̚'2ܷ ,sc| DGѹP[όS6C]FZQ,7_Y'7[I0=ICl]_oy(IK}æ\ = 銊) -hk'cŗ-S1\&V(G4_@JSzl@O<-\VYMy,1C=˻pgco'ƭHy2nQoǐL?l.-D]]끿bK_Ԫd>z{QHL&h37SSl'%1il Si6HuO+T"%׀)cF X8Odd-]z)^3F@C^.Pprͺ9+Ǧ͡":4һ#1+^+1 M֤8av*[= Xc8驈oגD v=AQGHJUzL>Y櫍2K֔Pp9NgOY[u>(F@DFxv3W̋o"ljJNEvƉޘRxS]Z!f(izlyH X88i_rn  9Vg\#(r>gAJsG<ƼvT̕Ь#[pN_Iy 8HaLXaxF9>54CP +bNUh/B<}ebӳH dnXﻏ„v+HT܍V9g:y28n4iL/溏Ysi/UL_6z(N :b7ĢڈGX`2a5nJ̫ZpX&GkѼԌv4>q?~D\T|)}cZJQ2@|Tye!c#I#N| /+13V xǣa5͛5Ȣ-z6 &nf/,JI7Z Ҫ(>-YpyK;7lN76o"Ό0լg +ܷ*FHʵ._4qӒ:uŦӚ} :);vKH,FKbL,;dnD۪gMӾJm$6FΝ2wOO7"h}v1׍l.4Z 3K8|ۻ`ceIYvN:mxWhҢT#~'BJ# źmiSlK~CnRqQ_+?3z/ȹ_YSpOrGp IwITJ`цo+\)DE ԌWJ\TD88~eof; qLm7qf}T1ٟo!?#|Pďip߅ =>`|^/ \oC0 u f#+ǭd筋z;\\ڜYj9TFNDmP@N;c˕PT[am%ӂ0#JTэtwFPkgTku8搷<.fL֏f`uW~npwMJțCpEYS,#Y?zFw/S!q.tJ1:S$͇8*dmR[D~o`HLI!Pp1W^KV?<.᳛3گʂ`F2]"=QԈl4]Na-PzW=]SaRepnd"LPq +/e~٣awP0KxvQ)X`M>m y++STim))\ud Y2_c;gv{ 0Υ̡"cWit߲'`)3P2|~ጞԌOEw"E?ŋJ/ql@r"ndzDr(.X,.,99Ĺ^e_`{hڃZi*q[) ѷ: c;D #blrNjm |(* FܷdaE&>|J‰JFz ^ {ޝ᪏^mzJOk`2bHB18$axV5,Q :-&#PL<:d1Cz^ Uޖ3NV,]nv1|4ȂRC;mt'jz;Y:w(5W~!AsHj$3GFxf=&j+%(jI NkQ02[/ {)(;E١+jaWU+ԤUy>ս7Ql9\k9*+͗|0qTyZ<<"3TJc|4 `3S :Tafm"4=+QTb#~n՘(wM9"4Yqwܷ8 !NI{ƃ6#0Ds%+jH9UݶLrGQHGa-)r"U\/K ֳ@t>C?KHky:4 s'I$RVu;;iva8l7CEXw$&2JB$&-}nT߈ݠ.~Fcߝ2C]Ъ#S6v Sc >{Jњ/ 9˥ $}`H8lꦻyd!DՓUҭkYOrPgYuӎZ5Fb [% ;kt%xg900i =(e=Sm Uu+GЄG7s zք7iHHٸ넌uc+zQl8ӷRƟFz}NRu9!L:}L6jJRf&yO{ 'K2Ȯ.W/c!F q$_է6'f <lhcu\#|HHV2x$<[KuN:Uܑߩ<{+r ϭiw\eW^"*j)m4d8G K8$+vWqOBH+4,}ihi.+X".~C d%Jdb@/J$\Tw,L:3tcao$'k|Y0By:-TGA\oW\ L0V@~7uNyH'EY$ 8UYꛦ1B4T n* akD&5Ɣ"C{A$'9̀+Q<)iFUe >֭]7`wJZB]7+sVDFr u#2Dy^ң.I/PSƾdaG% Lr?:C *{_-B@@??0{1pJu"O~`^>T<"MSRhzrP5$o4cI`#u.,En?ױdٱa nϗDHǨwxjۓL;0ͭbXLek"QRG6"r ޿A浡 cIð#ɒ` s &TP4+OM8>lS-bP pXbtnk((әKv)+ŷ. S&L$Onӓ:(zĺ{SaVB z" NOݡ1p7ωOe-P*ՒC- Ò5frLޱEF^^b2ybwZytNH= %XqrU2P )|G_y+QɴHi5F.,)Eki R`J5ZCpdXdYkiR/m}M|uOHn@vɍIvL\p7߾,APL%-}DҘи+r!Tizw߷Co3L+i6`!U@,f--нX̄R~Z!L&OTȑ jJ3bEd(ڥ3iRY.Mю3>dBG))vF{Q7@ܶo)"=-5sgik`B!&ڲCzOmxG]WlU4~4bk-? x>0~Rw*"MCXj.Ď㻣 q;5Ĭ 4qz~i ??i\ZJ~(BeD`/h{ %OU|,mg:*!`8%rV!JzB$l3~ Naܹq0 it;6Լ:U<3/qFYj0^NEDjLbֿ}s~ }e ;M)Y-`ygx )ҜJ)Z4ilu\y.B>Գ ʺe.c0젱Y6BZ²~L!/)12.FNvP|~{ Hdqd7o׻dmQ7^YUzSqw?N?A.Y+͡{ F<5: 3%=A=n'FQسf{kg{ <]#?'eF$ԓc;cOm_,D|F^0j%7Fv-/s8ʼrK,jU jўd[Jv=ܯd`~!TQ9O5͙$"EuJE1̈́Zəl(^5 r"[.KT+ǛV?w:eZ &B@!I&1CКj_}SWmk´! yJ$hVתl鉡iM|gF,1ο_pHGoBh/s10` 떞ZԎO47]|2@ٮC.]O}CSEu跬'Rlr)4Zż +`.p`6ɤT82*sRZˬTF:4j ə]gpkub -8uG-q[Vᤇo9Q*š &]6L6RQ0 V(wcfI_2kvQFKI6*d&Y@y#|wHŧAnaabׂ6mWSDy&(k@\7+HUOIPu#s OӐK1(̀'F@{Cu\'v D,ְŒT˺$9 ¢T*W?5' `xx(PHHW{ʃ垙OA;~SÒmV忉O)\}8}'=~t.UhPD .5B#jl!t86lbe5,/sd!2"O9/l7PAB E!ӰAX7~:CЮaڀsP c.k0֗Wa^+g ooAH9 ev>X@Hc饻LӺΉwS]}W$Tj@zSn_Έ0jjD+jlP4~[{Z]7Tu2ܾI7BGMd@e?bdlM.ȧR[1j0` x dY,,OZEiBّ*o[@-iU7Nȍ+}%H$L)^h9~ L`cYǁ{25#ˀBv ^#ÏutOl|L.EbUö֖Sل5 ~G5L7XqE]NG vtu=Nyi]" Ydl/O H2 w>1fL׻I;>q\-Zj]Ui|=UqУ槄\Z$%&@r[[poz–|DW|(OcL#jD=`/9h8]< e$q"nѾ>i.Ǜu5Ke{f)y`e#4C!|Z yWg4Y4Z~/rTIzvea潚& ֻFQdc|G&/Y`zsNbZ7<͡aHMR4=&Z\2E`YFfx!GC !iB0W*fDCyL`rlZffҁiF,&鄮jm8`RWPqq-Ϲnx (va{LQ^Bp}ob"0X*^ 6H!g_w)hrm{.:S8FSDc'^q&m_힀G2I)_Qɿ{PJd. ዸꦢj_vcu<+ *ґ~yb6kRTbvQ=׃f)kJ[Ȏ*6>bК~ K?c :Q64.Aeua^D SpFN[U`i  Ntd\LA z.ˆ|Q9n(U)dI[m}Ġ6hGW5+n*em ,\R!خq vH^5eȯᚢV7r0b W[E(K=_ns:==%F]v}3d4/aC hx*rH0\{r1b4FSc|z1`h&7K/ń>0;+67_#Hp 0tln-ZJ~"#kfUO5/0|)P+멛-$ se PW2].8r}j_ݿ%OK O\7a ۨA7qv3D5iUi'< :^Gij:]<Bjm$pn4=3RmFLN#&W#\뷡Ag/INq3J oy䩏^I pN{SB}(w>pnLdE,wu+7fK+qG{{lȗd; AwD &/LpiTLI C},:Xɭܽ Ηa.*W]Z{P:\XH s\k/hy<>d呾<7/H<.0 )rWX]m%DKli:=4"2 ?aAY;>Fyd">5kla=ǻ݆COlpPI uB_CH┆A`s*V!JB ) 8RWO鞱zMwIlZ$FITGfa! A4e=lW8:I{mY.4؜X(r$3p#wDcDPu>o) M `*DmؠB!-sDlu&Cn;Ϫ[̝|Ӣ|$ iBޚ$u@}>IY^`o*UN"PR9/h%V)UL0"j"/?2x* "zFМTPDx)mUS)q߾O뼞$,vℨNÃmWpާ-o%yIE+ЛAbrN uLed oؒBLi|w`1 %K예!uѽˠ:x9!/Ӽ`y*AJR.ta<զ -!NWΠi&`ڷqG/ HX}})c lv$`"+Z! gpJl x9mаҿ_ hX6ATnBN};d&_>sfU7dƕnLk3 "p.׋[1f]Ϸjs&F,$eo3FZ`9mn1~ӉnJHӷI1P!c|Ɩѕ+l6s&n©H!}M*J9]% $ ÷j3ʣyLӬBK7J'Y' 7ghAx腧ʊAoDy\8c`6*t)oXv\Źꐣ_tI x _Bk'Kֈz^h4zz̧}'_i>[lzE[G'3^B)aAB,|;n=OAx N5s@ٳ1{eچn;C6H'1D X>| vZl푒XfW!r( gef+\sQ3qC p*50@8ps`ӝ,Hr&U3jm(hӑuP_kuu)]?pnW?(^/ ɠ?ؕ2 l6_)gdE֓7TK[q+ iC?2:q])^+HvJw@H%H}5uLWHO_إD[H~g`u%ŞG"\ hrjB/vLd\ƥy|($^dE(vMC@bnBvUf{ŞEĂS,DVE$Ҭ('e2/*@v;P9.r WT}RKH[@9ATfeTAfm~ ވMK'N:É[C,Uz6tT=>N1,Y"$ܡ:O B͖ѶI[WߒT"e ##TYCۛ_KV ѩaKh򧗍Iךy\4 /`I3I7)ȮI Tnb,('(J c(1P":*ȅ* Fp^@Z^f"Ř>lK9uȑ^^M}8 h w-!~+oP]|xkMz\ZF FYu($bobqU2j;Qڊ^*wXr;'V!w!"=6U4 &ΐ/_>s$ϊ2tAz:F=g>yj,`[_!5*ATwCWcwCJ+ͳd;g<:VsTƌ@F\~YJ}7­-"(854š{k.KWn@P.pp)7$}>ERĶخDݷ告So-gMFb2TɁ1%u.*C._DhYOgd$urBj˺6YSVi;:d`Жq.A%;&߮fUPCŪc܁w4iuPDB|&뽄h_-9MC9ɣ+'LTqtU:|>{Y FegBurbEc>_ 4) UFHۤ+YKY鋉]jZsLw^9 YwϾO]$i#,{Yۯ'WmR}agÓXuFC{#: EgW+;M;6Фm>F/Nj-a!'Hc*i{;kxT .&$]4}<^a4МvUj#Voֵ`HT]%B) c3f<aS!j趴 T;om/rxŬߣEDp)ˏ*AgP#E",ab<6,`8 >F/i˜)\:æ(e^>j.Pp ej\7c|~m2\Owp;ε 8X36<"9Ye2f[gv:e lY5|f@LU@1®b E- W@T aʺ>").-622oP( -g-- dUaWh@pJGV4S('eWl-+[`Fc)бM7S6ak:)q ^LC `LhYa='G* wY͌@u > r.c9򴯛&JHm(;IIicJlE`p T a䙄3|uv˿E]8)w!M7_p^Ý~qFs-y5xȟ} 9$PKP_}Grh&$[zQ$qI*2q7@$!殕! Sӕ=êDrBå'?~D12ПX.yv-)h(}}/j^4hN;b犌 l V5˺`viHhe$zP'=i&Z28].0c㿐3lJk?vI@mevID̹~os}Wfvej]rnRE)YqLõ,ֽn݈"5i|eqq:\q;OC8f81HbjYrL}MϛUD|nϥz$3o#SOG㉕ZӴv@[pZ $ƥ/VaX0F50bid:syBSs+cS{um<޽ڗP&Tdk4Ѡa?nFwPxVk]#"CiDORB"co_:`_ 8"ph ۸hV`gxb3w2q#GPȻխHmXoN+*+_PDmrӟ~S*Wj/j&ނrVWmg$и?*NF[hcwQ8资ܯxKaH׿Izddz0)xcEłV=MhI4x|im<呒W}eT._lL_9zDوs7PHZ\Oj%5믆C\XZѷBwFpi,(P'K ju$jaS:!dlA1Zn75_Yxd4=CWÆ#q՚ԁN2dw4,%'7&L?bŃX2؅xegB=, 󼥌C?޿Zju5ߨSV KtgpNӦ*򡝭z)tͯϙYȿ`xf+Lpdl{LW? ̹#;1cNu_1T|xI-%j">s(ٍFvVKu u~%dJtCrL_e(xk~-*E? ~J{g.|:Lۥyo,ӪKAO\NJ$ۋy/˃:Y^2_omG{DnkῚY j TJY7dAȠW,%˳pU;}^T ,ݭ0 - 5kt-Z-O m Cm9k9~ݰ9Xg L(̪͘3na\"aEMR++rY10jnOՄy$E-Q=BVŦ={)M6,-(znDtR|G0\d#m*7w岵:ނ28v`6}cbC+@eAɘ]1F6ߣ,(I"Κ#xy^k<ΐ(Q=S|!e1 ;p2-Z ynr`Q(unv3lA {J ֓*ǯ_U:Vnü/s݈kLL yla6 R _Z?^f_BR<}}νKvV\7Cѯ7.%t)1Dj8q*TvmtdAnzNXNhS۸s",Mđr7gdT HT'&}#u@BH`.9]@êB- whaYO9οYX='{Ra(ј8|tsnEnX@0GO) 7hriF)FiRR-{{ <\d#uR g2E*_AKm yԠ/mCo@Y`y:8RٯxWr LQ|L]FxvH="`@Kr@@-c'Idv1L+ hn `YvVi"̄r#L`34,.}U e\c^BGY!;B6 )9"̘vlɫ ܨ }FO~!rĎJ]Bów^1V䘰mC#̈ݸFr)x}4" W_rդˋljHGKPaܾ t6!,Jh-L:e# |}xVIo"~#xt/T_/1.b- y{4/j%²^J ȥ&2]XBV.C=S`҃XG:l-~M*7^t{79U7o˛I]`:IxX1VJdd{8^gUK͔XXH Y$g]E쥒d_Ҭk<,#. i.E_'wӾ=]QwMmS_]`<_Cg<D -acw?n(V%Wϊɵ^[DM>4wtteRl+m8T'gڊg7?}\./6yZ?&ҊɌb,Sk3\u]un7E+ۑۗeP3v4ͳܼ+=+T!,L4b81۝C-@}2bx^P a{ρ#y_􇑆!`A:+ӎ]e,|e;ϷPtbmcxw Q[FGȡqbQ^d[E-AOuKX-@Y$Y,Q%π0sD-0if/6F>|f6u{7_ xB5C"4#K_䡞5GPpL bcB`kQUjDW\oroFWk%^W ʳ6Q*lo4C6WΊOG Y 9Z.QOyUjd6,G^'  *nYDH٭,Հ5Hsg<[ Vސ ;<_v ) v)rʧ8Bg[>a āDaӓދ̸OpxߕrKU9@E\ $cX~)sjqi7xlR7{f[}~d?Cv Ft~yv*Kxm>r@u4M9IkJ+DFǭ4GY*L7;CKD5Jz\%^ܐlzk}Swihb$r(`keJCNK6#da4-'kF m |Kv4 PkƁ~:aKEgsPsT\.i1Vu}B hJ@5:݋ȦHwKiV%UX@Cxeͯ8!t}Ie$Gv3 疤 th rB5V3lDPGn:oM~4}b s 1LWh!υky4%u3MBh8X#O̓b_P(~8c=ńE(#i@0u8!<_ /Pjq vph#a4Hl+98;O0Ћڇ9ذx&fojJ9i$I P #_زdLFEȗ+'uDxiп0S2J*3K뛍U!W\Ԇ!%Dmʬp6{XPz1˰I~)M*}V%w]RJk/E{Al\7#kKD T8 U'+lnpofMi>MQy;rx\";RB6,Vg'_E$'269d{KmbаanK,vs#ꍫ>$3SRjE@z1s7 @ԲLa J%sb㦧QfV1sݟDoGۿ\W;JB14)P[lg=s,m҆<`zw~b!:D vُ+Hk6]6׍AVGpIUB .8`- מ E:; 0za%*m'HX28s'3OQOrJJƩWoOOrb4ìnC"::wR7jh21/~EWb|搷PԡCTO*?i_;gQv! u-S-Y\{Ζj12_L匢mpH|vfqDU&Mmm`VxnC YϺb#<B-uP( J5Qu`}{X|faͻnEʵ]brG3@uk7"E_=gN^rު/0Wejl EC8n+P\vHer0i'HpLߢC EŨodpW),F/ .5j7+|/76(7+D998cJ~Ͷn˔" Rb}F ,kB ў+moK 1@Oc֋6wN(Syf+Rʔ !Hk9 L =b.^?Z_JHo'{>zpVx=lР0g}"3q]@zJwz,]pJOsj1iB$މ%0]iUΥMCYZ&`ͭ K .Py &sHCjaijv29LLaX6U)w LYT6 }58pB',`&ITb6n ).~{"PJ^fRӸv84JǴm,`UIE|TgUwXPt{HqM甔^ҵj*Gl& <>3?F܅jG mb6} "divR˫.xh\?3Ark:PP_\ZXT}CDy'cQIT~Mu"hpaf ]sSakTeݣRE1GKqg'*>:ʕZU5h+2ܢpK > t$tvR3( 0QlBr 4Cv#%k_,CJi^' C3?_YE?8 Tqai!HA I̓ Tl9-厜yk:LFkQϰ Eu]d'(Fip0_[}}[Hf1U쀜' - *4ܗi;M~@J̽\ׅ W\SSKh9;%Ɗ oq%Ҝ/?2IaOCI~იkнj]שu,>ӋQJV.U!VHZ|_ыz{WlyߛB>FZҖ 04_,S?ڠm# ]wĤw)W~+geİ@I,;abHo*CxP ɷWdR @"oynX}uj.F ȑ0aHu,iߣ*.MK=-_}]Hy4ul5#OחpU|zJ2`#oRnX%Js EH{6[_lR%*|P{(S*a8{cWfz-6nTE e΄^C:(Bxg!6N"e yġW(̴@&7Cڅp482`CA6EsR#@JT*X 42/su NX߄pG_JM R*X3eL!%JyR;_E5ǪؚQ[ּ^ڵ@T{!L2 Oje\LhyZh.?Js䔷(KoA`=]b8-2@ynuGH\7[81ΎO3"L<.&BBP?[_32YQWr!H;tpsP]T [Л6є̂N $yTrI{/ߵLnƞjzZPZ U(4b{Y%o[T*á0Zv;[wfgw'c soto=&.|,c=ed<$ yl\1`y Ea^5E" &yi@9f?kfܝf6IGi;8 KhL]1l[%Zb(3xhJyr,IkdjoaHߎ?1H%|S̀IT=k/6={39v7avĽM G{m}]pj&LF>N}M5 o}w!3][>/@sos E#拉H GNFer^7b?%V;˕0AH do+|.AUn2X)άa2fEy7/&+L׭g,wG`,hXWg{va5ڒN"CD$c9t/y[ɴEL!fw`,?PKs[Zyi>u)O_ WdYo%ik}kfty. $6skbd;A9CSM[&9B ?2,]ӧo8zhncP6==K@\oo@=rX-\럀.*WX X[۔H2~cMf>KB:WbѰ -( -c+ܸNT4Lj&N*w2ɃC;E԰Q-mXpY9g˵am $TdRκ^s&}Ā""L}29ׁ2x[/e"_糂)tyLm_dLJ=G=x4K50{ !ie^wuT>JS@!Q3hN(2 /[Z(X,/ɧv$ㆨ]mP,n 5\fϭO|}-o\Dj/*{GASRaU0W!b^CbrGx߫$YB2׀xzT/:@xX(%·5dߎycp8U.'nԂL<fQG+t]0g*iX)vtg)OdF;+xSβGpPP$ ! ,/yOGϮ)jaɷb]/~힑#1*\&8 rCpxug=AIfEޔYPO O)f@m*d#Qdko++V][\A Z-ojԄ,͡&KĜ),zĻ(ECܯ*LՋbY4U U}+$1FUl?( j-gLgA1~ܕcyh,3r)¦̉p%7H8Ί_K,_6P{#\,0EZy HJHNOlXXΑqEF _h,&YY\$k2Zf1rtdhNG𞿙 qƪkg&Smba.Mjҷ7Z>Î2H3~(|eɼ霙hK}ϏHfĴfřO׭W Lo(ƟE>XXgX$1cHS}$!>KmW:%|bqa =5J9>Q)>Xt"j7gn!_};"8h=h|F$_\$k%̎ÈV:YW?U9WNNAJpҬ6RE#=3Ms@1@,:/IaBrWD{'4$GI['EJnYrD+ SF&#XnPk.ꖮK÷!]CD>_ߙ28K?CKxTfu+O XuW)vã$@sXd%p ws\Ы3[4K(aB\S:`8qVψ5*y:8[ *%g.QEZ#ɕWZt4@fE B3%R>Z)Q=_I}p[_zGTb{߶\]/f[> :ښkz\QNg (3W_tI >hr˵fc3?M^p ˼cAUc ?!JU\; ?qHzݠ-Ĕ5$7㖃UzX rZ+']} @p3hʙ43+ Z(%ԎAbt գ{Ιy GK >cLm ʪlVG$~4<7897XqI9$r#27\RX[^)0y}:M.↨ }ObmްMj,}߯&4*=:P06h#OS7,DGpS8S'GZI?,;5&Qx6p`l}C e:6 шԕe-byCcԙ5R!7q3 72C)]gX ъiz*5V$I(13?t 4!\ڈ5Hv@ o%Ⅸ{a2uP?9 _! 1Bmh鿫0$GCo=G$XxQId5u׃ uo߁DkMPu[*We[ξ`u[ƝΥslh;HS`6~nL+grjVh9+iQˆ`20|')y4^2ΞIkSlZǪCaG6ZF7!-ڟS)N3 >aǵTVHg?Z crFn9Cc b9 ջD*-Q::S p=qv%-FFOÕ$oaM*t5v!f,]`R% l8UW{t؜h˺uy|^^i;|E!6‘‘?X^P aCv:>J&08͸?>^װK|.!u"+z.;W٬HETo "c;8.13Fܚ6Ho>2h>hҶyӬ/X UR#77h J|^:7UңHZ4J+N3p +w6?~Ёl ٿڨ 5xV%qVE+[E0o;VGKSJhn_(P&V 4pv#i3E44vG浗2bSPDݰ=1x oqMN(MA7e^bztWp啧8rfr>o?\˕4K}Ø7L z_2e/ݱdWf(*gq䇴TC L-_ )8 ?$Yf=-8Dct=,ʝ#cW-$S ߇wZg;cGJwzCFzaiF} ba =J {,#пVj>QmaeOipX(>  [ɷy+ rA yKS~vpJӗ_Q5+g$|XVIc GRܞ؂ƃ$M %V괸]wy~aiOb%Vkd..͔qϬ8[A&j1]e8z,ގ. e֝1i%)J _3lqYlQF>4{i%G5vc~r-:K$hШ.%G7h=S&ax9F/)K=ӢgE? *Rק*bw jzjRԝmV?9|Z#5_z%ԚHj^}ifץ?0MGO33<Ҕꥼb M T[OYCox{%83?a=Y |w6<9"UG7KQ MGU&׮wDq\w1C}yaҮt_!Bv-6ܫ<Ov9<9ç3#^f.-ikɾ%|++e e1p}ç!JdHHA{4|"/K㭋Ľet(^N2zs81*V&ge,˃4Ζ#Kt1̋QiŴvT)-I1;) oquOխ~`\j MH#ԖqlēHOEVZt~Ӝ%/2Ja\$ Q.vv11-pC8i*̴ʄB=:gOp>n@{羬 +f!Cn޲HzՆ0͌# VL#|D@Aa&{LrD*t@nwy4#UOC) Io+Yt-9y%++@& (2֢"Vnafؾq[:z ~52R\gd+\v«dF<@lMZz:k2ZK5 28>Jki#P_Sc'?E!u-u7G[RP3D02[fΘݫd?Bu|@ 01!wDc!ޡ!W12S/bċ)hEX=LӶ|aȔݷm免ZJAp 0'Ie?\)zj&k;ҬgvC(&0Ĩs {oSt9ׂĨzRxoR%5`0K q8b]}/;,L3E{Ա}Tr>Cb#(n9$姵j42p=LGkP;6 (@JG. o q|Xq$ېߔwB#&'oh餅 G3EEV빘4АD-W3(OGϊW }xځäg2QsQq}ey!@Ĩg@Yj0y傲rw9AE1TK䆣9;]"[ m_Bg\da}^,+A@^Xmpq?% ʬ~#~G0<{hl\ԾEKԭ6l^ B3N2fwwkH^(:9a!2`lX J|R݈BPU"N)E$5Ї|잤V]q>XWqX𜋴Fy?WV:aჄZ '8B׬܀:͘s5ː| Br gx(xPY .Zm'H7cw4k r q bdsPs9J˨L.:XHP?&L #ȼM7} n|@nLVn2r7L>_{pWlQEws?r{a^V9na-q^hb+( xjB%Cy|m=k,r7-I= y 7Z 3iB) u)Ƚ= ʿcd)/*r̮k,ڰ@30sr+;lOy4`#^vv~aStɌ+QB\FԆG@O/[/4IjI #o1)u%^jހF#~!d D͉MԄ{*`Lb R`,_9\Q}]9SLzLG6 30w6OF<žg6)H_XCQ8bBBRܢۧWwlB{]~ZNON`MdhZY.,^< ҝkR° 9mt,MSiߒCA n7 N>Co74!{p\&No.zG?% ȅڡĤ!g7!I\!`f|K-8"qX B])ў I`eJ0FJΚY.+%kEFsd Nu;Ջ& )kv$H<_f/wGcq܊8\>bA>۴W긤eI0HmiW0f!%#SGcVsUHmJ!~c]9J=EmR`_`QS(+^}\֍6v(b% uzHUv$jjR؃\ԐcuSo 0 -SO:IJR=>?ІcݚvPWw[-"`C` e3j$_g%0hI}f~xg:|Zgʻ h{g|n&PGL}" ?}--QQ%G15Nos`5)ޫ6=N ɨӯL(04s6%d8eJJYk 2fPweGM`suM]PX2F39]#J趰e>Esoy+RbwwU節3רҀz/N![eIͿ%MSqvn BO@H#ӐtܱA.4LK d&u 3/MMRd`hw3%Eo}^/tf9*%ױx4 c 6k&dѩ8͢me+\\2\e "_%Pwe%\[0m׶DfsM0*W !HԉFE ~z1I~jC ҵ]I܄U̒ɽni &"`qVꩀooT[km%mUђS#d1}怒򮬄їN7<*Br_(X R[Ӻ됷o& /%|u,X,p)Z@djU%#h9@. :Rp: v9ԐY{ eZjO药M~n_Vu'Ac!~fuvVT-[^P/rKpN5lyI^q}KFm#YP]q-UŌ vvUl-"gcBh2]ҋG!XzEplc!o{3E@ pNꔌQbDs3<&,-RYOgJp kaUCFfM~1W;(jX` K &"XAE^zkJ\H߼<_(%&W{5կiЦضlnԤ(Go._(.UDRT1/]GvZvUu^B.lY3]M EqrIG+͏zsv۰3Ӯ)aUBY \ɰA`b#矼Aoz獄?QfNhsɨ$Q9xۮ`Orש\){R"L"?C2y7X oF}irp vt}? x!4ȮO̐\;uOɖPli=qi6T)|gW}R(`@/wQbW5̮DȰ3mՈNڷ.Q{CtAixΒ ;&vUa)dő #b ߹y7xLf~3pߩ Fŏ={u;|IHG6Hm9_z>?(GMD,2oI9N3Y ;g&X\~H޾IGPdKQ}{Hrnj$<"'(#{VU3`s3Ɨ'NH Y1@iܬid۬2r{YC J$2AB6[ő(E2IAE@B\}a5:6ӟR]Hm˰I9gvNʶQ>{G44E2{1YFHTYOw!霐F@Z/E?Cne r赶̰L;RLôL[PݍH1)>ϋ8SzU$63 '[f&ʳxtQ:|v_0*Ԥ%xkl{=Sh(?z2_O& Y0A܀tKxuiOd"Ex쿅E4c]Yp.>#V~{޿w;T~<><7V wXaMD M"K^"57{]^ǍU,V"C׉SVuC $Gh o%EdAJ Ҡ9`\w*OX0PWc=~  ^+<~/yNN„7mwOoD"^u*<l(vU67e 5FN;ҵ8$. }t }Y}w]; aU <^V*zWn'!yچ<}wŏ VK9r 堂%@u"$/%~!V1tV}m3AtE / ?%)Wبmx{D:tF9yCzկ2?3zH4n#+q$ \q3ǣėԡ}E:g,(@R8j]o|I2Q[>~'e/?0kߚ,ڊ﹎"tyMrɑ2g%4:ewcN{W`P@U=B2fV=":f''SthY>cjeuޜ@ ua,X{e4Ν3M``r2Ocހ1K8erKD&(niՏ0"12@|tI݌4{lܚ y# njj=DH|װQgPb*y^^^GD:| rd5\Hﺹ "!GFIm/ ϗB+KݥСR^g1(\6!酨uolߘ1ނOqU H/^i1=5D놆U?|Dn>:$cñj [K` wr/B;KAo,ThD6 oh+OP~pm@V<>8rU*sm7i[y,t£R#AyĮދ ([ :^)j6Ffr/y`Qnp}YJWlb a5=CIqҘtS*ѕzSJ)Q@NhD0tlKײZIy*؏DidѪ~o}Te0ԝ#ln˯Qq[{]osUdqTB>"`Ptijp_e7Ty@?j xQTe!>ddPß-sݤq{}%uՆ[wx;E VQ](!|\}a+D9*פؐM8Ԡ(ptԴUhڿbxZn&bl@(112< #) M&h_*`7'Bt˼Ҁp7a9, :}L-b,jvv9Ctx 2ho oƟ65!y*8E5PqFc95.RA<S=ݙ 5yklN.*gT&g*`Ke/7[~&&ȍ<ЙeH!e@]/``0S1J>'SZ\ٯOZ:>J6K7}&~EfꠓJKş CwFnjYa=Z"^ Kwa͜i5=PbX?z Wx <[btd,ıy?ߺ>h7!p7%-{HF'YRѦnw tHߩi`yW Z;W/IxUzqn(9C:.RΦ7b@.ጼzh:[NaQeAZ `|E}=Je; 6WIiK O-%dg~nO~je W`6N񰄭"hɦ3B(*o¤ pqҐS.u\S<̉B6AZn< 8s~~Ń:O>ao GAbW/@w="9wUFfvәUAf#mF$V+؆=}!CIְTpׇΙ[ jsM$gw!&-vh۶0dMHqM>DT*C\全,/ g>P`=GڊN$å[k2i&!u5X"o(mvp+^LkYl5݌4 <̂c'E J=&AZmN0LjRS1(1}(bwS1z? -Q^2gh` L(5xa}F8uX_ޭy,^GY#E"t1:%pf9I_[˗- xZ+w(8z eWdvzhQ.{e0ѱSp_FMVݻ8u4ݹ^B.("Qo(L{Km0(`;H%ӟZnYqM`BUW*&dآkK>~V˼MKiI#be+S9n ]q \x@v ĠЯg7=ى9x5+e&x"IN!9N}_CWrLO(MaX3CGQF"]\ )Ϣ7+@4rNw#7Y]R{o%Jr1~^wV&P(D$悠N=#ۧ0u7"d]$pnZ5$FM1ZLwd@GEkCYR@FbYEn̅D|,E؊VPn'U/V-9؂ P3/8ͅ#ͭ}s_[- 7?Mz zN /^%2sǬLGUY]1;K!Fٙ/a1NDtЋߐ4dA+;"EjCt7ai.I|_!lR dyʛK & b}ICM|RELE}5*BIS^+ߦjwRs=Wm6By o"Tg 6R j`k/#0>vqL:0h3'+Vٯ0-ӟݡ|(@@YVS!`oc_UD`QwP34d Hհi^3ޖ!'+k>ǾA?B5;qJ [B όȨ9$)L?uO{jZKb+̆&'xBo=Biu#qu?]݇V-Vl&wџ0M1 UZZ|dykD\0QջS7)0+yST&N:%mC0]E#2 s:%a.&VS8jr8JPQgZ108I{g`ֺ#^x*B8qQ;.}Kr-$inqUYRZ܀mV'(ɧHGW>̦Mf#k'U Gn ﹩GWeM$qxi%6v(B|W$@a8Ո;7ܟXay~{ּ}&u =;4U΋HnnNEy;]V0M ^`3O,{}ҝ-H < C)ЕvC;R r``>}M 7s-'|u W=6fr+ wT`D U%}`1M:t'+zHNhC3X2Q%D׼lx`_ڤh4-t>CeYP ~jrE(qp6Gצw^+uJ.@Xlm BLP9~Voek,zU {>zd?:TC eb[j0hQgD ,x7bU[6~, m`j{1J4BmtZ: F"yAarv#pK;^}?vӗڥӑ( Tj9DʂPhdIoI?7 rSlNI^ tgGX,,Jv!,[ߖ-\ovN]޾hS fc4>Ni#+:R)!Rݞd+m_?h}Os/IaU&nQ \A5a0GRM48[}OgGJavqas}Dx^ddb#~a۬.;;FEMAMiD]g !Xn?K7ZJb(t *ɩ|"C;= /Ao>Ȓ1i"rEr*)"˓|h<3;xNe)+j!:GOYp|-ҌLV}Aʧ;kDQ~;g_^!yp0yi4PѠ=T<`T{$f"8oU5~ɥB1|]uր@r,Ue`4O%Łk]%[o5@gy,2JGWx\pڻ4.,nX~kZ)~+vCGMG[{EjvYS˭Y͟'ZA Cg|t8(Z;{m7J}\^u" ;uBzjN.O+HM9i-ktBw _=OR1`P[uf24քH-Җ?R_._Z&ȱ0[ +OE>G'W:O*M6D$O7B PJ)ޢF}1},3pβH*໗~ 7>]G)#XvYѓ &H@IhPY78:w}F4{?Uu Z/Cu}z,s߰O3[ӭ&NۛgN|Nm X4+D5T62D +}!i`9-7^yDD<7-~(8^#|%qT Ts|IvCqpچ*u`EiPݓn vxCG mSuOl]_ݣ "b6O%Dj v.$}9f*kL%Η!],HԀs+25I\ xI# `qStDn@w5fՇH2$ɧѳ!p"Q0zÀ6YkI?϶Z p4gHDVo9ftK81D fܓ#=ژbg[Y`g4'v+-$r]"}(aJyQ j7Q9GiU(\KRN pLfHNL2b?9#_OzrF#`O!;Ő01'JuњY;&/nv= 'i[al}$Vm(s}oσ)ǸX`  [d_F֘PA $ACwkNfi`i hXcڱJ39/eBbNm%Im]g:*M0ݣr.~b0` ײi5A˦yR^W0Zm3)lAq8󪯖:q|n,/-=&eyh~[wC'xǤ'oNL A:9^4J;Rxr&$ ʀzfL(] 崐.-X=@j{+ _nw%PR^wr1lK.HJr^X7#iҵHLaWM` %;, #X-v ZM"2%MV)PKQ+ 1d.%@VȜd5v^=Z*SshmOx hh}Hq%um+PQm@lٹ;5͑\T&y@5pJl(݃{pNW֘3,)ԠY*ɢTД*9[!:r@Qd,G@tt(GYo=' }ߖw'-mt1B͞0 =dΎBp /ŘՈ2<ó 9Vڂ 7npXh"ęV;{S̔iaUro/u ̸iK0ͺmz}y7/kJ?{63n7+YmַNWgjWoR2Ee@s?vBY+mmY>VfIE#]ti`r6K2~^ˮ-&۵iFx`vi6ቌmL'MDv+1*!SET#턥;;n~Ɵ.Ȩ!Xr\#pS0 > #@z8YwXrL;6}'M~~D5bZnasLDkД׻6TĬlDe̼}۸DU_I0Y~N\61&.`VD.Tb=:Zo䜋tQ~NcY)^ݢJ>UT^ ׄR}ZTVR1ѠzL{9emu~\h5i+@@~eMoJ+|o^^) !pv `<XO\Om!;\]1M#6Xn!/a!d _Fu؜`8c1TK[qr2{,GG= %Mdt0n~ckAʯVa<ZQo3%iG5ĀON5N #cg׉x{@ 3bc##Kɼi"$< R/J ` τ7(ZY >7^~0/3Q8)']H4)4#Ik~8z}{IsIppJqr$xʆ"OH,DԐ(Ē{#pWNP#*rc5"~#| `wE朅u+?v/xBcU]2|BRBcyutc a?b+Z15`@$Ue?*)Ҹw~ z4]f=Ĺ߅Jq.OIJ)fO@\-?"ҖI݁Bh>/YO< ŵS[@,ݯHX *oib8?&\2A/oaUHt'} 2>;[׬,\q#^ouۂl*eLj=L40 q,|QGx3a΃Tq-ÓSkx!OF@uܕ/ 4i8X(.4e.}}7Z r#L"L^c{ `HX,m~Hj3lSϚ )/m…ـs@9͑8"VjQW`fB ᥡ_G5+_ٚj& Pz@:8 "O\ZG: ja L- '81i:VxvF=Yh@Ao#.OZ>0\Co{HG% 4jzn*Yk@slZ=pκ*]YKD㽥<˭WBx6Şn<2[ 1tuE8@-PA4=mٯ۩֠n'sT{a̟hᯰ}aۄ#ƋNL.]:|}R-g׺ <7 @h2좘lyjCwK͂$f' 8X)S88󶷂f S04EKkK5<<9%CR1Do+D!M'/Rgvq)w|c3c/4g᫙@tR틒C"}尞3X(6B_YK$ɯeW(VMtWBq WDV݂nZnK?]ʢrpxI/ F!lܣA@341$C;(Q}aw0uD9"khs~SwߌR +Wml%쿫 ,"+PʮOGWo.̕ .XL/TPqLqGoGdmZF˷ +.<2H"8QdůҎr Qyi Y{b,0߁ֶס&-F/Ĭd3@(Eױj,w@_wpJz{9Z &z C^\JpfsJwKFS%RV_bFJ#]H~3k.PwR=(!c!7d}&% ߰<)υjIko;.pPq5iVhFPRD^Y1rCBT+R4@.J<6NQ|mDԠ޷8_"l[!@r< qme|.LF,F>d 4P(4@h!zcEeH;K-}Ci7 1h8lԇ+*oI%ψuK9;Mf5 RGHq(!.h;GxF"~}.E쪾mk0kl;)mZ"C.5/K@heL j',%Kkw'vR[9byc?K-^1> 7ko{i„LP~.߱`@ ?lYVV>k 론??FlN)NQ٨"wDٺ:(W' J4XWw+6vcN<\Z@W492*a X$ٯ*O <^`tb,~󊰑Zɾ ![I<+|<|؉I^>;Vm*P\MZ>]7XsnCx^3n*iWej wq3|[u`,{OE*~IV :#}n3N5+ʃ84ӶlNb HwBRwD7d8xgXRKu+] gz/QWTGY 뙂xa7&;q ,~D$XȋJ=i\Ů~-lÆƲIJf=?8m%Obr":aK%4\g؈%xL;)\ #vA#Qm tRͺg![ 7beq/dŤ k12oZxٜTc GNtlj/-yMPb4*JokJ>ZP-*DOӠ&N|9?6`KqxAby DDz)DZ m\0GK7w;pjRG7oBMZg, Оk()P ; bwG7`Q NP ^gF8x"6V|Irz|)1!zRwwq;e@(J_eEz}7ec `˧,Bm?,.6\ِClWr` e7A~kenPG;s 6ߍ3Њ0=p|x&j/ME2V%42jWE(bOUZK9REұC.ބʣv(!6%Ū*CXSWpՁrH՛O3o\؀i(?% Iْ0lmN<77φ[B]m3L дh.\f}OcBSτMP (#U%'7OLj6x@y%9f)—M-,0wE$ga=?7UDR݉ogb`c9vU/j d?%4:ߏbe+a٫/Pj 5}!7 )|( Fj.t_F+qnquB@th#ImcK'$ l{/ &Gdx PUD{I%bx<3QW_LWC'ҡ1ڙN%-HrEo$0Uil 簲Gx Η Nc {χɃq@GV6(# 4H$.~l|HX yCY: dz;w(OPآmKI Ou$VYxBzYr-VDJKwJg]+VG% y0ErxɅ*/'ԉ?a-vMb|7+YBʼOAIr9 nǧ'ob+SL(Y|<2d# " Xwkh4l 6 xĊA -W)4Ų d8$bkr=1EE >u6’ow^(WV+֘`){ T/~ 5, I2̫jF.d_vo|.0o{|OAS5<r*DloH -!;eI!}M@JG3#c^0Ԧ-CL#\YU wU:tj.ZcE0 fD½B~0joy1-E+/&39DۡU1.SѷU.?SJmT>K–u`syOeq.SCFh%Ol99;QTL|B{ sgQms398i5;})s8d՞s/勓-6f+N ho:kr$Qdd7OƦW}!}3ދ,UU]{y F4;(W2x%OXJwdR^}n2?A~Q c=E(RI D`WLb@h8Ken*8ͦa3=^خFIcvHLIAfNH|.K`8G'c Qp-",YZ_mJL _6t7v~AZdc,b2vƻ6`%DAlCohl yPo9E$ n$w,dAnRy(.^0xgAN!*N?UW7=rS/xƂ`o*WhIa}Y_u|*C*7JJiO_h2cD{D.01 ƱB 4wZX/5rB<~Up^Xo]#U44@zcLA\#2oX^! ‹U"g|)S #1\s\ϟ ZZgyGDHIdJؗm&*zQ b`BﶬsEhC2؃`1*OmAqPH\56hhV"=̘܉C:Yg}0M i_\ݎ집w+_ D v;PCl@j9;Bn7S,OQ:$!9E%o GZSFm`8@I#sG{%>Fx5^dS Y/nAr rfwKP5 =Fxsum:~mL%N5Ί4Oy4Gx%t6؏AjКb4&-LfkfX ZTw6]'G2AY"k✁4zd3znm*^ڗc\6N;ZwY0R-ar l<#WRz"۠o)JHBQmO똸ԛu<1eܠmۧC9ʲuva]Oƨs"Z*rZzes7#|GgZ[p5O73m%g2'gC^K̓r_jKZ !pՆx Ҧjz7M.>p(d%fX%,Evܨ*X]c55;Ry-5I<"bҨ .|cs/4$iCQKrajf^r;{r?>(Cp`YzB!j݃G/+?2Y=fA:Pz:``uu7եÉg"(!II(O&[np"33N,zʣ@<)iي2 ~ 6^&B^ĉmgۚ6,8CÉ-r fVzX2]'.ˎ͢Z-->H`=.cq\#qi`xw,r؈'S9,D>|<_ӱkic[^(|b&B*BOjpF9iĊFc{4BO!`+'eP7Ta`iLŦ=eV`⨕L!qDL}X;8ؼ\b+Ja~(`llblPpIfcF˕Iϳrny#EO7]F2tW_G74"' KO& ne4*10}\^Y[Šы M3jA3XsR+\(I[=nOkV-]{z?QUU_$N0ghpå^Vp+@Wod;"sŘܾC&erܦ_'JF Dx%{݈xH\WΫk۔8~<KӂU)Rٗ,UՓfb>=),dgӁ W:gxAjnfr ByZ+g|ӓgG6Hp~FP>v-ylw3UR^Crp9~3^Efov+[Fy~AVTf7f"h@0U_*7g[0 /N\(y-8`hnc}x$O ˬ dm'] OcLvEOH^.hT@0"j&1T:áUz!hS>O)ÄxQg.my~pr 9d ;q"B`jT$;JwD#!xr ͎5]rVP9nEYձL~9:*lPuhk>Y̓:ѶͷX>-كvL sctEΨGazh x-cUf.5[6Jf|{p~7HB$RBrWCdTnղGe cF؅α2A=M3@?Kёv>ExV=pFl5I(6~P.նtI񑃔dtm2CF*ʑ%Bl=I=T"c;/pii\8N&A6mZ5s\>)cAtJA+"/rm&ʴ} 1^d2 N9ݿ:~Vaa-ZRf!YT_/21  OwY?k9Ҵ&G($a8]D1g,E%3CsI0 <3<*/UPA9Ա8|-VK v(>io"VDF1;,!xV"Mo )n=,tVWV*uU/DR#+ux0zmݸ,=߾VdUR|Q\G&VC+k&wH6 iIsح;,x[0f,'7]?8i3dyϫ^W=^#Ai\vªr 1 >$q30R[3j <0rRz՚s8}2u<[&1u?cEʢtyX̚[07w*l ٗ"@U*:YGԠy?՝7ԋI3Ä4pIM4?AHϬ$#$Uoq+P3Tc npV6Dpncyܦr1&E¨^Y%/_Y&2MlӦʝkc`V[mY?WFz545K+-kTLF0Pjev Dtd~",т֙E.+yVF+A9 gBrى$aI,‹1o蚉(AX)Eܧ_c H8dCp&.\p"?2b\DE*aBMk^QN(춋&߹MV& RkfֈCO'MjaOGwܷyWJ@2帾zwz~#Ws心iIHi0=_qjP ${Kq\xAm;0dJE8Zu d%6dQe;R۝Qտ^7KsIJ,b&&6~o cH[~B;ߏlWٴ^d3XѺdX p,"K6kIrH>@ G»# 48=RQi&y$@3OKJf줳3l$7kyODSh|2:K6;HǺiE)VXoBZc[3pQk~dfĴ#75Ӓ$jێIG+3*$L(M4I)JJ6cTo e*s0-5jJHɸh2}JXB?c֌TOW<+3?ڍhKcnL`&sSj;'0gә7i]ӫŘߋpϥXޠ>v<ܟeL#.ϕ΀AZD{n\U2&759X<sz>r;uTaG1=DP'bEArժI_т5`t`7|D?;{c /eڦ /w7[S:\Qkh2䕛]C 7 AqBKU @〴FA/;]oF?U[NOv=G_\RO(}?GҭyE+(\eY|] 4 ~D'v|>Esp?CI޺ -(ft:{JT/ *}xa47ԭQhci`!RPhn#PB6ݸ(>ߘk3qGgVރb!QGLA dLع#/jŎịؐ5uMuv=VcaSS"H/̻]{kֈl`&6$*~]Uo@r+Jp9J`:x =䘻Б!kMjaD+thh;V@0/B)ܸLm#)*,ᔬF4z$',vb{G>_b4&19<__ ]nwYzuaݛ$iޅ)"e5chNYl?3WjllolFQPT 3wf;<`Lűgy upҺ?; [ĶR ؎и`"G|9_i?w(Ph0ƏRaY촺%Aa9{Gs>)^扯~C Kuhm(ߊ4QA`"($z(iNlx'"JwLWDccQ¢cn/i Cr:ҥsDM\ %H:n~f$7)M\Lb}yF0P"[r#6{r_@2CF? *CCu~_pf~#bb 8dz:L@P- |}*!H K}ӿv"`֣5L23Ȉ.vnTWa#*}8?蚣+?A8d dKAbH "oe82P`'Ј.6Q̷ Jq=Em7T3 g9i:H{< ͧpSG+Hn[ [q-4:5%~ev9^HAIr&4IE֛phpD |e]IMJrF/?s9/ ,S8ޚH0O6j`EM+>/@I6@yS uuV`[bŴ1uM$tsUOPBQpbD 97TNITNU>4NU ˾^$BXf$vxz|+/Gc;}BZ͑GN-C "̣yHdz"/yϢ41mG,ܹtzaw @:v(m.=F4.&[Ceܪ Z|mrɇ԰Ī=;gOu/{MINp3e+j\]0[hjQdWg3# OaDy3ŬxcyG<~\kɦ?Pbbku>tvMgnX5Zc-^^͇ =i )F&-"O&/Y+1'C(nLX`rmdeXS]xw ٿ4*(p̉ht`Z5~?5vff]|}S_ rWڃfC(V7e(HY@HZ|ʭ )srqΏ="<ˑ>71 y5ϐ|»%bY_#M*0b<ɵ0YZdFV9 jֺf<@ʑ09o ͑)`,MGdxASG142)n?3^.E[ e#M/k WL5-9aNgBuvz!27l.bۛmAZ$߽AZ,7$&\(n֌<.Vho ]@ġ62Kz?3R_wWE,n*spЛ[xm(;,ذI&h/ 3]!TnT9/^ΉaiTW֥(+M0;'Ub+#S-{u$JꍙWqE/g;n&'$j/" Vx](Mб, YZ #8^ / hāZd&j~=NJ`|^?yXOQ*7yGM3 }C@U+8)͎9nju|>mG蓀{yi"]CZ(KTOiˏ_+zamtktd9i.ۍ2FtI6#?dq MdRNò2]⣕j6_؂9rjk?Ř m#ہ/3P.fɇ8PsBc?f`ƊzTOF2ԜgVs5Qz~FO}TPҪt F"GnI kZS)V+/bsC{7U gչf0/i5S>ΫRkk+ZQPbE\u*@=^l+RVP=~oHKS4ObsQyy);N[jYnX'^b[~W5B8.Gnl'n iߴJR+#p/`:Y2Ե3G){nj]=1 cHȘ >}vtr,Z:㌝(|(!Www4ԑ\G}v[5 SamWAi\4 &?py4eށx%)@{^וAHq#EFqFL ;dyc5]Kt$ SKێC+eg*T_oRea.k]ΥeEj21XmIll Sӻsl+-~)5K׽"!@Awm :- G<008l;zSz9X8O_70\/bd8$\9Umɱ=u.+W)6 Hn ѿdE|k~W(SѾǓ?xgSK=pQ[APW:veyR 0~NyҤiku0=P%mYT/F{]|yl Q|yVrsj>͵Jc H(d @Ɗ1ڦ6K>G4ƒ*uOMg˔e iWjzQHȑW ?f\9z0RZZ`DA\T*\-o#=!ԗp [~#KۣJF-[M(d* &Cx7<}y6:MdXxہ5/h΍u1,i'0*\HR9/~u:F#sP7ND;PbڑS&e✺DP\.bY3^X½G!=VdF-Cv+E)Fz4?B3S"+?OT)?};!h0b ].&!mg-n]@Oi@CWGJT # ƹvdp& іCwf ȱ6m#cjtqj +mP;PB8aH,F4hV}:+*ߥ0*CZch.`Kro$*2cwq`3)8y 3+Ocxռb$oOv. iSDJb6CׯqȌ!sr<@Gu QCx}ZbY#R_2Oc` ma_㿾2nEC9a$'骁XA~i(8zҰ{GPT(񇙔ךNU3<>5l\p7 7 ti<7(SfGxR_, e@ $"AX\ьcF$EJhc>cj\`T)0䭌ۢN&5*c󐬏9YNB ɭ ; y: 0\_N qϸHWQv9=a) 򢠰KPhfk rA&aje)ϖ1 ->"})'%TPCWY15)၂3w BʑXA6{/t -ˣMUy2mi-4`3*60! O hpV&-*:P03`\^{49kyx$M=Fm ٚ2IK4~j G `C.=qq]˙A%n ؔO@c}1E-'*$~yKreso)ڔ~i] xUs55I,߁딱CIe2~]ȡ ¥;P&В(D>K\a,1=y2Gb}NKl1#&kEJ;O+XX:B&Yiߑ.:7 XEhX݂ۆ2WN͒VYO 1eqW|iTծ[$WuP q=X.PzNo2nHX,|A̙-S+2(lc5?,> J E. ]w1bݱOaC@##DZ)-j¹7_ո ?o$怂Ž*2`ʙ3| H$c:aUsɨ( `o6Jxw::`w_0>\YB 75:<<yU =`M6Khn*x͒ФPϽ3KS<ّVmRVʏ!)E?vOߊko ~JgYiJqbi9P7Qw;$40wSG`c?[&JZ$"'?S#Ң|oKYQoQhUE_@-*>p*ﲖjF=|aq4TCƚ@#ifټ/Xʣ Ҥb1=zwת!Mgю(_4lC!t RNW^ȕM&[nҊK_(!}٨JvYу{FGGحHF =hTqa70`z㲒tK^yQ8\)lti*x]Yv*a[{tfAܽ.Im?2G2~$PcYI.qh{>o7GҞl5pܓ/THx3LҵB D)8xS3N۴ǔ+S~jo roAVmIn;wV=E/96UU'[m>mRBWݷΆנ +@ ?M( 2K.ϓG]޸P E}{IuB}f-dJ¹q;^&뎅!;a0QL!铩.ԣ(fae1bЭy i@봕.Kc L3 E"Ug]n恢`]21-%kJ]YldXDOocy07}zQs3u~>ZRh8R-S눮mI԰3Kܔk "~xjTԫ=p1 jsmUO~?x-Pu)p?;X$Wȯ.Wzb jz(0c_pUeFV9;8߂nWBwwZ7ĈH#==g@3 0DLq@b,'{oҤ_63@z i)Y}`pk3.uN s6) lրXKz+"Xe=F>9,}N6'.i X@Ťj(*gp(}:Y݉dY ͜]Y l sMUsqf-ؑwjq̨EZ'D }nGZfZ{lC95i2iP N5Tk3נҫq 6Pt^ddR7z6]ȅnt9y %)כ,8#ʺj^oAKVC9r ۥxg!@ǴadϷ%$2\Ňʘ6 WF)☴ ,U$n_{Ŕ{"Tn6]mܩ@컣$~^+i܉1҅ŋ/w_2h,deMـI cJQV2=r.}?% |C4I/>!%;H1T LƬF}-pMOki2Ocy]<LC5>DY1wcA۷~R,p3~V9BVlGGòಸa/GGϮ|%%Y- a.*CywbUfG*z2K}wO3Lqd\C1uвoSݷnt4Ҏ]ܴ^pNqNf530 V E@ )keS07n:oRj$vܘ"q^1$ r_qRdЬeؿou an)WER1&zo5h^Lv4B;ʢuջA yij^Q}TbNZmD#r9ڢtyfP&:-Dd۲'s+iO h%ٸ[mwż +ȁ'pv#qW\#L;hp2qL5k#0/&5w h@!u&KTvV%t=gx-4!`hcvLeN*bZ*tH%PnNsg1zZ*v?CFf|ܿ-:k \2 ŵ ox$ZbL*X +oN#wsQ4gX).V6, 8KI/gReܧ6{Z!HyɹhDjY;L$_g܇Sah9^NZ0U>ǍiP|3JuuV%+qir $DST*2QLD)9m6 kO>k F=."w_ASs{fmYoYrg=tHvEygTRP3x 4[L-B،eTqþ\<'ͽgMFfMgzY49 T8M6 MLud|ԝI#9Va}[{AދiOCUf|% |=CzU |!7Έ^liz"M" Th>Yy>-괒6PvuLGTخY*o/ 7}#!]P#F, [Eu xYQ8kvs#5Y,^/i8!qܜkԑ=Yy8~!ٯ0yf2phWxPrjaG0XM1aO2ԫ$fs#XM`gSM㣡_Re%җecq!Ģl%u' 3at2xE;w͔bn"Vh":/Bo6C\J4p+c Ztp(RH-@3ݽ!A@zPWOwf:<`WY?o7.)؊Wd"H0G/Zc=rjMxnN9Kf7}ǿҠU׎—#)<Ϡ2a|K.]plSK$a%Kz`[B.Kav,67?_z50uCAzyɔכpUQG?-uLzD7L-&@nKO|K]nd@٘%!cRch\xƵgzmr4Nnƅ,uӅV$0m)gj6yv'w6<']Y\1uG{^@HmpAk5_3%IGT$T ~ӛ*$X$J'nhA~=!5r< N%D`4w4+pD÷~YqV AO@ OS=_zg)?Zkq[:.߀em2=B?4S+-'XyVu[{Be(z*iCa×5sek3G:.ZmnKkdaAA*pޒ \. %Zk4>]=f G‡>i?*D}>Dz! %V'7`bhTY@V)nQSڎVذM\QL%?^G lX\4D1LC7=|/ޔVYnU^u_\oT]3:!;nI&zw,tH^'?-SVJ)R=t^tX`yL7z֨I.#=ϼ̠%#VQӞNV>JOCl&orW)+piNкĩ)iZߢ0۵ E)L bI +5}}&Xu = `b_f鱂]7S/ħ`.Go)^]\YNy~eV/j{9a?qN/RU7H̀8(]. T/Ca"T,C}:̪Kȴl BoExC"!ihF|*jHDI(OJߌ.7ı6TspWJkH5u\S $$ׂmzޞȥ[R\XS_ <cLZaΌi_Ǵy*[ۨiܔv}G੹9bF캤A[7ȹX"A`f4}O.j v&A̰K ̩{nAl3+ʿdǾ '%ϛAX 7pV8 |R^= 0  a]#l5XE%Qg;(ewPNhL>p< ʼn56zk9k3;cKQpg"`ۦ:aB%#sNhk}^zUj["I3{IWMCWsȃ%#k+ K*əm<+i_zsYEuO^A/`̖hZdF'3P.vn9fCo^.]'a>QDdG;@y a2JTvm&I)i 6Jya$gˋ([h@kNu[ŅD@w}/7ƿ+L]CF/˽3E |(Bϧ((vJ]Ǖs0S=:eS (.yO)<X,o:)aRZ&9)g-H*$y 9hL.7hiF3GN+p_֕ҖR8ݓrߌQEC TOm3>hd= fg 0+l]WW$mھ)$ RШ.7ey=5}Dx: 6vzG%\XoLCt!SY:-4.ұs15̬6h;`)Vo|+](bBI6qmIhJnԎp SJYw,XߌNb$z:Hf6Fmk(PԗIK8|8yPۉо.Eͱ =6B왽dY og!N?f3Bc DbOPpwܩ ٩eJ?ehC+r- ڼrZf?At\+>VU^5iFňI)= KԍeS&_ HZ[PyOaӅ%Z'u'> ] Eܓ$zv$;ok|{4 U:=fBhҋgI-d #?L&;%ΤBj[PB3rWXSy,jdpU/No $ 9B2٬|j~NąAG4@7Ek*A@Ҡ1E m_Eu>FG36 Tq S&B|*`fqSkGr)/`B<{@+ߩS>5!y< ܏G䂾 HX?r)}P6$;n6q_dZqC єS"r?r+Vbz;2Yq#ǖOXǸ' PGxL冫=}\1^_L m3E6qѝdF,S] .9d|QlHgTLO'$dp2[%7sӏf+ 3&ڢQ~bsMFǁtD#O79<̍S*5R8+ Ģ';{(فmߵ7(̈́CWw*|j78۩ԀU'oEx'Yʝzuf*/ *fU̒3|o[O/ RD޸w?<\ aPD-,7'|N~trpk ZC!耋oeev!cِ@0S1IdhΙ7O )zy4Q:0 Cm%|'0?1$9J+?)HU[D;$>)žLiHYHhsJj;j =kR f)*xoO7l[&;I>!l%|;oS熭eo] B7T<pz Yf lX,$mֳo!G8iw%>k+~HAv:+(AE  Is!A\m5 T`mBeŇGwQf !=Z_`-q`m#vDTdXVWF`p9hwm^'Ip1x]ʰH%uE+*:0$HG7*x73׍JuJ~gaԗ`mE6:1{Tk43t8D}½Fzl7CW,yK|f5}lMD;~<=EiJmC"GOԼ0I#aX.-f-\?z,],X=sF\<0?GRteXbhό圜6'ɜT__?ez1nr |XܖFa0kRI{5[U.%y(;C AJ}yjX9%Z`\و8Lgv^D?X}Ѩ"NjGώzU''>KEs~KL|+ vjM_H|Q$ _'?z'1+gwu{H}v91xD{lg)Uڕ&r?) ^v]BYɅI*a'v&ƁhoG~;6 h"h~L-NGR&0dUr FdG'M{86 Tם$9k $.}Տ6Qrp_<{*5~Ue(5op⾰8JZ)!bK$DUYY#٢D ._S.1ɖ I^:oD8[ JVccO0Mc ̾=)ξ+-aF5>\(;3\U%2lSzmRiPy7b?+&cO`=o:t4"9NLs7-ʂH3@2,('XqPK bK|pT&b^UR,cBe Z?|vjm"#*`\!ĎH>ڿzyU-"NsndЌq6_^*i_CN79X j7^*BfGS,;qnx ϼ5d$D cSBӼ";Wp}H4o{df76E2*_+:ePri/͓֓D;_޿gX9v,ə("ӝ eP;0 7 jIAK.F5zAoʇ#䂖8<0nb)ߛ-opZQ$~Q++Vs|V'-s&qA.m8DJW-q,5Ήd}`j{-Z"(#bGn9 r^hHg匆383x36ElípUD`uiRs YEjh ߘl<1"';&x& 8KR̛?(z趰I~_dxi nNhP0bbL~N_cѫSM1_蝑r܃fa/?N0R&mL?JUC>M8]3, SE4ʫ@Ӳih,hm!"h#D0 ܠ1^@L(xl5%W[q) ]ס>Wm<})e u7e{ΪN5,ׇnK홀5oa_ e#ޢzC"Eov{/0g;SҺ:}c>OY{ϫnңΧ%r|Ee'ɂh?E87Q7}DhpgR] 4?F0A]ud8H!)-c2 R;O+Іd`N5THd3 mi8ix SOdzƠ/. *V^RX;g.g+*ѝE:JЗ-I[zMc:oH/IlmZs['N7"lS 2ôN#L'(%*7.B 8%gl6= cicw[(mXڇJOh͓mNg}Ie[& ,@S[n(΅vL"_@ZZ_j6䩨_0zmOC?=xW`ŝt=ܵG:`dT-Z}~zuWqsj,eBҴ$!-hFц$4Vڎ'F.F$ᔐ1@/`jKls4HʖQGvff2I g_^Go]N?QA̗X-g+a:Af6P sgDž>*la?G USk*;)rb:٘mZXTXQ\s<Mؿ_8ܢ=Hޤ5O 9bϡ.t#kRɊk*o;s]0%WlW{_k .}e^1Wmh3 9;s0dAFILN~FwFf9b 1Uwns"šNeR2W^{p sjF5'蔞2-5$;aˎ&Ǹx/$Sbźأ-@H][N1cSﰬf.fX_˜[[bΌ YՍX{NQ 0RvYɼ]%շl<}]\G9fdQWZ U!oJ|zOJr !AT"$;/fсKﻢ2!H}ݒЧYUM<iRtyӔVSp@ŔҮGXǗ1e d w>q22_tLgw=iF]&sIQRXZx1~luggVLSyLq.@g;O`՟3cmB(s#l,Kli7&)IԲjݐ^,}q8Go>3jt5M 3F3-k.дc8qD;HobB-=ߦCVb+Hpfm9N-ĭJ sTXFiNMD|6ϝ:ͷ-T>:b:0R1ƅ*~jgA'aTʠ),E![Xb/~6.~C=}4oɩ!w抗Ē+O(;5dK!|Er5/L(d>8q_ofwyOtd~::- #;7ٓ2JxP[2кbDkb;ʥGxt߁5X!^y#X~w6lq̧,HIS}^`dUp9)e(߹#4%O |pJc Ө4ậY4{|bWx^ *ۮIz 'bܥy񥁍xY][#Lb\e-dvģ0$gOfG7Z%-+l-./>h./EFs>=Pf&U7 <%ᨫ00n5Eyy[|u>as!ަ~:jC ?mT*|MweV/C MC$P$E@`,sn̼8 wC;2Z4]*ɯAj`A-T=F6L1FzƑ9荡{r_?e z8ku#kI禍'WAv&FjR$x 1@43_w eͤDK Xxk[ۻ1 .c7N8IM//Ms-ҫr:C bC[X^z @v P:hc×+ {IќȳjPxD4*'U~QZy`/΅:J4v fXmɂ&46:⸿"-'Yb&'ג&VN q1%Sk]ĩwH%OQGZV! S)~Q[¥3T#h5daXmC!;ː@7qz>EGSbk[:k&ݢdгނR5uM! 2JAA  U[Tu4Ҫ&:@AT4~p-Sdo:GWs]"Et;U,7pl"!>|يY#߂Cl?|Fsb[:f&7J0LL\l;RcjrݶȊωGo ‰[l0"Fr+a:@󵃎E }B]gS7n/۳M{ $poGeZNͥ5- h- g?ԠsbCoq7q(Xpoznz=P[W>&!EiyrOX-:SUs~{(nTßsP0-Z79x7~?j'٭7rMLb*U.OXJ!aIXbN<2~(ĕ.~ǯ$!Ǘ&3wCdKꕿ>PɗK 0Jb0wE/B 2@-IuMȧ6*[XyBd>+ dME`f>'=<]`+tXhTB#/9Y%ggFrnxi3O`}b.cx/@".Z.PFB;d Dֱ4V/L| FA>̃ׄLֿAQZu)' \3l##++lO9Ba/p4ԌCevetjFnCfN&2F (ʑTkT(л`TY۷/|$f&z_OImSjh~4u5\D =TGu2HN+Z/ x]$~r߹>xn`x!{]7t=]$ d=(fѢhxD(܎Sz4=s&=.]{l.uPO0SG w* rZ;v[%8hp7+2(ɯo+\\ NDK`$I(Ul~0nAĥ*VFҵ?3BRZo X7t.&{,-]$;qw8Hd` dX #änH"L`| ƢU 2")9>%_.d |VEGՍj&sjAw&37̴83 @TzESKF 9%߷X8ȑBC?-j?'m^nʄ/DrT-'e)d[ޠY./=\ Z`^;D^¥WIgb;o#P1C`@x]r},1 WѬ[LRrNr#\ OWNJn3iC}϶;ꦈUj*,؇MAqP*6\\ȿh.'q @u2 1G 7M]aLBlnp<1&BlvDNlTbw4Ӿ9Pm\ gR2WZ P>?J,ƕE*фُ]ZtO5bCb #X)D6}׍fp,*kgL=_hU[N8GPcQ0Aa2'r3-óYGaY1 j^ )Ŭ > ڧ0cIxJex{*5yK,q_.(=$Hz+9%f.CZv$֯0:6|Q_ɳkgNґ#GcfUF(Zv(*2Q2i;AHeh@W?kRaW fk(13Fwk= c#!pRX w(oV4ȁ"ſA pؙY^u˴7QS)SFHq;]_ &V3 >\ެaqm調)%ޏ~zeY6}dz< }bvhEqAsuup~Ciݻ 9븶$GnWdHz#`vo3R!Ci?㗰]]waUnùC#Q {(vZ}eC5^Wg>φOʱ|dy|;*>wd@?xǟ&ޢ--2dlg_0<2gTpy!m|,?$˜VѴFq͗[աV0hnGSee ~[CR'TAzL W7Ʀ^ b*P[r&# i\9]NCH mg~˩N(r :qJ/d0xqzs'Dy') +TIRԘ*F#w\jmӉmsChOd P}uչu$ ?X!QlaI`Z:c˓4":Y-a)Jl#Z`5zF1vBA&-j+P`"šIs]3~J.]:U;| f|k,-;eI 3'űc ZbV~Z#60)h H6F ^+Ci. fuZ1oYdRYT|:hgLWnEq]{0Js >@~dfwg;*:  젟QX ]Hcp+"=2ΚW:M x!gjO Vz3QSshS9,!I:Fi8e l/7I,.f'0MBuj X=+\G{bLjq>ctr',\}1k|uԧ]S%Jљ D)](Ř265XSґQ!i6BZ-L0Xp[2qN7S46NY[s2k" CDĔ-0|$VrU{hI[*=<*0yD=C~jy]ngZt=X#IZY«;dDM'<anۅU0]lOHo|c% ;4#TĠIeFNkAh9 'A3;d.%A$k1oy h?FQhO!bYU)sfՐ Ic })>V Gу #.wMgDJ%Fla[L,S?xP( ^LoV7XЖ &BmAz\|0S\Ƈ@o/|+w'1 F­3Y*E Fc5f:as8 k 7pHN8x7Mآ)ѕm9,~XR!AfGO0X+nd2V G?S),`} Py})t-KJ>$eBl.B Y9Ѱr\Z  VcbuŬp=@4L?]#y`=w2A[ƉhI}qe,Yycg6ƆVէ g\WeU|f5+|.)vdSIɒ␦2l!҃jt%) IUʸ% fmSw\͏i;cG,?lߙB~s-YzT^Ъ(R(н .%}]f<8l,"Pn[ڦq95 0 hvym64TPℾxؿ!aէ ྶLGeɷ(k@ݿ9+Sӯ&/OoVj[oڼUDvi~V7c~sFȴ+lv{*!q Rj&u͍{o=#3jCSc{ycToŲ@aMZwN vIZ#b!)s w[`C): JLX1 ೖځpQ߶;oWR~W͎V/`ST)9:,g7@⵼CnA8#@ZelbeDSFG e!NoLc/4TMp#@x;̸[ $jA)dq&[2 8C)‹aL`ߘMh4V;_(9?m$3Y0B߄u#[ kk s3g|bIsZ3O%\vH.}lC jԄY&S!;ڔ{}G~zJWə CL^c@Mv@\޿׻ƬL7ш| }/pWa%FCUW<QdMqft@u 2 #aƦ=#z9rM"9,쮪;sUf|ɠ 硱$] yôTȒ^PdB3qq:8i K qЇt$]!  Z"`]"nˮ{1.!Vܠc۫IXcE{ F"[]::-3GűFvi)>V6 L?yC?n !i*VfA9]D3_f8Jb3_ˠf:WN?a7vy9=?\rtcHKZ)3әٌi[겜[bc8* :(o_^T]Z)/۠cʆ;*QXɍg {y1өroB)Y-_-c`lFu#x&"-5n>Hv*9ݎuh`XۡE:;&CЁid.n]Cs 1*T=`0~Ei%{\ź-og"ٿeؗ/qтN/ȇxJ%t`4Vx!Ҙb4 +8`ir'Q-ĭB qls8 O@RjNAmkr tG?=/IJf]Q[teݺU5gI1ȈBآ SqAߨ]}M땂D[ &/Nטĵ ekS@S5kh//Ry2.ZMŲj.U1^ ;xf:8ρG":%}>|3i^OE8n]+flN_CBlwuT1q5_f4O%6V;JŰ%=mf7HMpHy @mKPȯ'˞< #0_U$#{a|M:bA!$}Q c`\qwԢ)9g:VΏIQ}DMs@1RZͳN3 Gܠ'9ȇѓ>;s9xW%SV{^Z-@ZT0_\pt~۰Yp k0*@@z:uH (Zymxs|YyF /QZ x9BU1g4ÎL=:v޿y'zi -d8qdぐF j Zڞz'?E9S(H 4-qZdPlz"Nqp'tʓiғ3)0|%2SC q"GُFϝ:Z_2z u,Aib)p'PK16"]~#M\X|{°]݈iȖunby^KDo{ڛqnlY>>D*A7$176!b$%>oi|JJS^3^z鮺>r?\YяE;t[چ\q(*R}&.iէPN@f"o!51k>hã\-gYi-Cq  R₯ZC!JG5L ]d_9*.1! 쮝ַQex2$$`4-Nuʪ^6$, S.k]Kʥ֙/x0:sIԹ\XM5p_@ .[+h/wSyם7g!tu4-@K)GkƵ0 W> /)x"~lV\<ݞf~XZ 9cDsMmIkin:q5-)p5^[x E٘Ƴ;[ڈroNK8B$ Ϊ]⿐rկr5)zZ *R.Xue%.(fc"].G-u |4bcD֞!IomoXQvAAC- )@~^ nUvLD{iPp5>/AaS@&^UeWLi&7Rۭo9 #6 &"ȺEy5Z:4CTzةs9Ûyٗ..K,e-#YnU.h{{'׸, cqei%סxOWˣ<5bfOz1ಧ tؓJP'Pʼn,j /EMv a-2rUL$g K--Yߧ#FQ_)֪ԫL#Zt*8Gܘ:T^I/jU2(34)76 nWvޜܯ[U*3>6znY~IHI@#7ɵURd(:FK^!!OځQ ޫr*7JDw|ه| >g +=Uh 2*e8T~ CuX{r`btr"W,g)*t  X6'B{@@ړ藌F{&uTJB?@B-鮁ŞXU..t&4lp{~u(E5uQG bI2|VKg93v k!ΌQb>uJs3_XPPI)Y)LF6Sx =~tfo]ŚmsKnMb| b7=՘g4eoψ'<Do#C/Ŧ@kܯVw98I=S ,VlOm-}-UP)Q^q=Uk]-W8M[ O0WĐoH!]..WC-RGhA"W.qt!`U >q̤fq D՜$[D #f"lm{=\fIeD!nߗEd2;ųPc ppP.i 2>/(p҄+='Gw"w+0 4Ry~ןLHccdfi{߮du#M c;q)q߽kz Zq<&~ViBdH `vlAxD{P#4 "2jO39NQH -&B)is4lg@Rcb®o`빏RT;Ϩ9^7I~s̸Z%ΨWX2A?1>iT ._ PGZJ`pL3oTݴh C*sﱐ04Xd@Pfi$9x@ʬ]4IW5 g0d^wйDQgS37V5',PFOĩ(IӚY+JPw8F "!0x zC:/duOSrq-kHaf14i1b@C2TM5d8&2 7׊:08EV-0>قx;( g|Z)||gjĊ\L)U؆Ԝ F>Gզŵ"HE$ -52 ,|J=*zBz7 8ç|ݞ?] <  >͊}!{Ei0Yد_2&ގE* Rrq15 h'+eC:jFeLMd+ٲtMSNGpn2Z'!.ZiP%n N*OȌF 4鉳=A0LW9QК.0]vx!Ԓ=y &5]c!@Rm'xh!ҙ4Sw&+.0B`3.(ksg0· M\]~9-8zdchELv7!#SԛQE & S\yX<_{IZa Ah1:ZƉzN?|"JIP/ qy3k{rRh?MZݻ/ >@y{qKDI[=x s>Xnt5lItƌxQʨKvζ`e .! !RwR3NϏ]t WsFۗ(SkyڻrCSp|zۇ@Xxxm#pjSG(u6Fu1^Vam K5$FU>Z`mNڏ62k801ɓ&N5K|@.μz2 MPF9gw,w|6x8%D xB/ֶey(uEJ;UO˾}]?)ѓWC"Z)$ SLᇭRh8,%CpH|DLGS8W1P69mӷXpf%)KZ=C(yIg${'!w Sk`P*½; ]nK_3&OT?-Mi_Xc1c׉#Zg~9 N6 WQi0l$liѲCJZgĔlbbkYŕEM* e> #ͯ؅bR`?` 7+Q8 6y/ghB랁37W H5w]"KJAR_* pmi0YYZ&.0gޭ 4y&j$)C"KMH~]ST3K^|'rF+vk%3[Ӑah.}81 XEՀO*$u?:3{(S@<$&5GY+ˈzJӡ[`qGIOڡQp٦ vAXƟ}<>9{0KױJB ^% tkRh]ŔpE<[Kd͗tlv&x0vtYGﮗ]9}g3J$dbî<йRh lVEYJ]P(CUnpc ph]NcS_- j'*-vRi}V4bgjƀю517!(AEѢ 6BVCS[# .vξ_lTʊL^^#L~*m^&I=%!\ίb] F NDiT#p0W;X5oYu,S ]maMp%~ZH~/QִZ|KA">`nh!̘ OiBt1,~ -GИ%fӪq-uuDHX6Pin6eЧ;O~u fۖ}J x] w!LAnٙݜk^Uo&͕ CqZ[Fgp+vR09הtz]ŀ*s$fPxb՟#>`Y$!˵Cz{uÜاK(u>4v7r d$9A̎x;DAYP`=5v7r Ɋ:=f5B^fc*dxkƐ1$|DzߜsCXxo8V* Eo*dbs؛V2eeBijWEF&چD+`M8yLڥزW Ě/YDʧm ,(8olj U.]I ~l,FmH" DgzV r~$mZloļ4;9pӐƕ06>kL5/GnxuXѸ{'UW)GԱVO'3<=<\I[=h߿_arVk$MM]<(ÛQ" yr]c7%H@EHG~-*Yʮйy[A^n "|7E+ZͶ]Kq>Wb;) ݀'Q߸!;twkbO3QAgӍ:hx}Mqtb+[x0*y(dh?Nd9B;>=4"1 b=L7rG _'}xx=OpE=WB~%P-$xݢke@XQXX^ʞʩ n{[X۲zMĤ<ĆY_P[JpG!N<0W)Q28r>{ [EN. 1 U;DIܥavbzK圗S [/lpa噹R)'-N|hDS܋j1?SDi#6.{&>7̫3e󥞉G7ׄ'?_ԅL > A~&E .r+CW[P~rU)`L4ab wp_ +:Ӵ;MR?&Pb;3A#poMwSgK56訬n=N{%{A(F}6l4Ji51˶:ROBΙ:j4t+S@|C-,[h^.=[LZ%;pt%"V[td}h1(U `gbHRh&YG p`VJ~ "$DB`΍ Dڅ{/)XVjE$tP5E(e(=˒vUL靑YUm^bF[C.WNTD^X Zk cC7.`cCNĒvm`i쾸KPE`H!M|$C6zW` 7B ^\t5`=C:{꺭J/EdK&>xHceηFX+cFP4oNrsp\UVFuWcPBBÈ'%X0e%$تeF$xp@~Hü,G<։H > vz ֎74i6dӚ(WW mU=-nUAS(kMWxI!)2QMk(^{2]+]͛G~^م@5&OU!2FFռ46qr]>s|Yl&0 Pkf((\ Ͱ p]V֐L4{Mb;o43# g?L7 {0%ZS%QQaXdɳz#fdž^m籪!JD>RH1A1kjFge&tG]Տt/-H` =(gEp#@t7B*jnLQ ot3d2a-J&ݎgB1'Y=-m*ϣ wGxLKA^*J`$ Ώқ~H3ww*79a ݮAݸ%qG+́Wi2pP͈2w4q elBPZ12f^;kd4鿼e~ 9IE 0s/e틆f橘,#Y< O: yZ) ä0&̀ ScciҳZW)=qb/Fv2O_ZX'm,SUxcU]/Mx"7*NB苍OꚘmSj[򟾔#Q g=x7H@MB{MzŌ"Y"M b/{wz:FC܌۪\73s?θ@:u+h| 8<)I#"uP8f2ޒ"L Zض6 (Qyj}$˅#4R)#ӯ)K4XRx],>،TWg1I-LYsQJ)COd~5= zkqV( RG0d"fcwr# tI԰7cK HzO .JUO7"B.nNc)Ʊ+*߄)?UKzjt(P3i2Z$nq0ZC[DM TC4FmF"b'lm!NDNR=@[jnA^ЏeNTj8oԞ?Mq3~3I2 ף~ 2FR85[*%*zd"dGhF17ymv vŇx%%c]Ll=]/9}ks:?#L<b͡]Mpu\HP-{=#>f _[\ _Q 3o7ӅhFo51/{q"Y8Z:D']IJe1w,f[?Ol_ s&Cs>T{4`;K3 ?3A?3j24q;&J|~GܭGXJFo z' %.h9Y9ZWyP1(EN^dW?ϩSߏ*>3P5R1K V=*cҁG CB@ԼփAƷjkAͮ^xF0Kw9UB2 oa9 z#iJ3'ܗowa͗BE>#۪>jD]tb(q9EoLN,gU|%ז13čK87[Tt хnv A6LMIe~iK!&Lڒ&euϿ[j 3ـ^G*c:À_G[ж+bivM3Qc't_+[rNg~򦖙Ztt1nqIJ7#!TآȨ)~o MH`Ng] ;"M1 Bкgկ=}s6{AteB9mG*ikK/Y J٩q!qmqIdQP .x 5y 038ߌ{j!zLߓ"=]3~;{&&}Q@mkAR=jwK 3WHL=2Q}3QS]6ΨDErWMZY]n ''C x9&ڋnp˴ig1TR5qONL'fzT\g &v*╘٣eb%2z+QpIRJTnT=:M!ÒڑA  _eX+ ޒq< 7c}?>cO*Vc,> xƅ30q\Ԅ;.%2 D,1MYC]kCW Ot~7P@C.{!O+- ɴԷx[UZ. Unq$ Ɨ5gMuNZ(Ldb6|DЋko3Z|05|@Tӹ.,l,{%stx5Ћp ҅DvbukQFqX~D*uWN} E 0yTPjX]xBQߓ $.5sLke:bJ8ֆI.눤,Jk@e=R^ؔYcL;<`4i_61a<ߓ M`\,dޑ6-xtϖE6aQ(áo$kgmx6|N@u8u+% rxt;c@?E>Qn̓f Dgq$Ax/5OY?:㢬DcVG  V.m{<%JǖsjGFDLMO̫z51tlT=vnNd[A~ ƱiTrK˶'҅2*\!ZG5 㦥+E8)<ܷdt.`P.WƠ s/,]_֊URwx# h^]6^N:0HMQxoV ,WZT?qh?~x oAmLνUReÙm,E-|"WH_ TȀB< xjFN. <ņgᝉ@xitU/eB i׍&%I;yj#WT.4.yw0Ŀ4@؞GO9th}mHc!}>rELQCў rH;X7oec)tvD g=;ƛl+@Ii.z#9=BR?`IvEl 1KI3hdXX)U_, UpLlTEJ]բS&Eqi({HY.V[NyLO];nː2 w!HbxۗSp5bH ㅮylIף#"Q60< y4LK@6{H5 Ɂ-eESYmsmDzD(V[4-14MA$bv41ڹv+>ՃU[M '!6p NVk'(R'ޖb/ωɺ~ ȶԃ\N|R g"( 9]sbO'%C"-Xԉ_E2*k%OPfhÁT-Ќeci\\znc>ʆŬc&gm_GF|F63yCdW76-sqP|-Yէ.I},4/):`9|޷sNGU-*ZUN {!É^-rSᷤmB6 'Z:} )9\w&uNz<,n啜y$o. 1OT}VSS ^ VHڝk{ ֋ҝ#pN+M?[c'C|c7v0 y{ןl]+]V"~#&3|43{ aڒwPUZ3M~3mjqX,YFHN sC'IЉ"H'yp/=YA誉ͩXB':}ŞpǘMdZXCu30\5]t]c=h]E2 QaSn| s|$i}9o*x8}1E}~"Dp9v@MBQ|``Mbo& w}0%1bM)h}1<+ 4K1gYX(OEN?/hgp*C3|ĕܹɩ4&xw5#U+=vY :,C9Zۼ fZD{Skf~ -.^(ѽdR*nru( pޱ祏Aޕ86zW-i@SU'k8Ya]A s$.FnGOMIkӞuۅX03ܤY3ॕ0A ]uq4sIB4`fƀ9 Κl˚X{EPȹŞ8~#h ŰI,ڶT=`j J1azҨ[P$/P`2@(u"-<;IqxaQmqш#n1>rx7p~ _`)2NyB xWk"1r+z5y̞zT 1!'C(Iɉ?f M ^+qDA J^I.tv]ߣZFmXukR343~^ץZ r? ZnSvF aO-ܓA%;mX1%oovCDebe'S9ND_0mZm'~ ҁ6P?"@K'?׻D X7hMSx*u0B. d AzAc.dנn8L>46 ^6{ D tN<$]|hާYz}KC俫螾%r%c@9uؒKՒF+,UϨ;E/=Cmp-eJkȋC q C(~ѸжҒs%X@.)[DԆLFd->y6Yg:ktmP*] HvdQP0aӰ3wm3h0w𷑑4T+&UF3gwh$' 3/xMNnOi*~ e ;ARQ ]1> ƮZah eIXvdBKP 9p~uGQf(p[!3DxdoR'+,prsyK*\\ 9?Mw&ڜ(_¿jg䂎,`~VtT1fIsMCKŦִOłܐ| S**s/uYxⵊuMsWt$'VsCςN@cS*'>pL6}#tM&|aMٔJ-RqOMQ7wc*֡9:€4:Rywm,.Z<׈j+|6%iC>p%  sG.eV Ep*Nvz z>d2z\rL͸+dwnGQW?p5?3X_βx;3N4v\2b`%n2G>MUM2=X/7ofЪt !x@ӤPl0ɠ ǨXI^mة汇1OgoMUOSV*T0?PyF&SD*T==\IG֋܉*xu=5N߄b0i"[5 º/47y-Mˮ1,ū䦚Lb~I3$`A=كJn Sy,VRE6(M[CE 闠A8;IKJ8a_n>X\~dj1!>:߲ìZCM3;eaj[dtD" Q `iՆ[η,R_'Rkh#!kMcbn]S̪6 c+7'yg1v,ă,̧?Q5V/N3aT;)KzqGEì=Y>h :ud?Ob3 fũzdwﶕP-[MFE{)-U漹 M<@U. c!8{JIVi hFs#qZ#'x(_y"O) ^Ь5%. WCɖCVW ;FG])aTEW9T1>WZoͅf|Du rǺ\fzo{7L4\Jb?œr &&GӰK;=Z7@)ݼs\Dxq#B+mFu-eZF|oXΈITҬ߉zkpAH( / "!%"1[Pq#DdmG.+BKOW9 9\xSu-ѣlZˊs2MDkjqwS%<8c! ݻq[!([d68D~xlJt5M}է!BTJQjىLf$_#O7Cd[SNB,!UP7>8ԢZ9DGy oVW1,Hk4͟3eL+sekד_[D Ezr.r%!ڿ WՋ/vN]Ex4C[Cv7 l =i, 'k-6MKg(VN.ohw|zYEPck[E.).%_[6H(YdRexW/3f%]XI_Sx,ï ̫DK1%썪*"I#I6S3U|Z*}l1uK{gC%5qWfVTd4,|Ǡmbf!P4y9,̃0MTޛ"80)%yd'Y\]Te.]P #'lA))'낹 F)]/↓7@tCS24^6͇zwAa'V&gbUw F5Sݙ1ߣG͔ۜ&lZl[yWc-/0(mlc!Ⱦ+<&.R\^Q2d{1GT!u~eUsRYUN>Lȸ6O.1ђcB ˖q1l|zkup|kΚ qͳZ2(hMu)czꡆ A~Pz\䔆Ш_Ы㦡-zHb3'pֱ1xH7mZ&;{{9Vp<@E/TIj Wq挆DDU#WEFbpf'ڤo-/%)0@8?4,l.smRUx`O*ƅ/*fՅ:ME]CY)[-7|$%S$ Eo]FZdcQ2A#%"ǧ.ȫ5CrHZ Qkku+j{{1,UW?d IBUY*hL>ޓ?| (պ10,o $خEih`El!u$ " -Jq|a~ˌt(3Lx†!Yi:`猤㻟Vww;^f|KhiwF7U.],V3kC5C2(o,  $W9Ut-V0k$SwbKIdsuXN5Bw\~7Ho>5U5g4Ot#h0kѡvIor#59ATwGX=S!N>RPPK9󦏝qyρwPdxN]0Sy6HUe`ih:(sc"i[1 0żf$J \xt [enx%My30d&" Gn[yq!eȹ+Y躙i/vk*omƆMz,MYR1h*Ce,`8HO`1l`2_5 _>pr7~ٲʁc38zՠj"{Sʽ`%sU* :u Y|+v%BJ ߤp;mw@y$0l{ G ]V׶`D/l%)@=t|W^dݝȋ(?"N,$+!W$ukljS`=Oy$&K3D@#3C&;`cDؾwk~DPr\ۜb/|@|~Nk+2s@bfx&eܴ\h0#O DU3&QD崱W6VA]}aȴ^<ӫ"{Xb ` b2\9HN2ta0 c_I[d21>p Ü?f _5!b_C*t.$AY]7oĖo;9*O]\ȣ".wrz?oor&o9 C q=AlnV U+ @%50#v2{s%>8˸ 8 cEDxx)"b/[p>7)eD&5M%]rieFb8 O>.v dE*Fx̸_@7b:.͉8Ծx#LTJu -Ro)RI^nwe<5M\6OO!"ą]O>pP9Kli1TAody,WT^`伳Xq)̈́#Cŭׄ,q_5g.d H*IPOs#%F\ZB_l ry-]r7V,cFo78 XZGǯغ(k9Te$])Pj֌0Kds k!7P+?#a`k"׊u'i3b a8h>.UhO)"J&CsSɲCLٞaʎTZ"D>by2!yuᬮ0̰,VRޛ#H_ӾF* 8#5c;aғ )i gu%ˋ8a 3V*]K.Ҽ`0cbח4N$ՌqEqspJrcR2&)D$g\.ヨ}CҴ-4H0m`C%i=)_g W ʔPcG 5wG}! 3ЩOZ/4;:>uq, lquS;OK'삝?HOIC` UC".12@+D6azŸ Lݳmn`D4pwMV(d}>3_Z =Zўj`/FM.P\WDQ8ˇց:{t$C`AL ׄ{5젚Q˝6 A+V9Q٢&|Xf:AL1%J5)x5s'_͏δRB$Eg_A̱A7+Vndgi^A-(fUgYގu\e!I~M jFΟ52;o9m7\g"yr38Ku8jCjۨYn`xI\ׄh'p'ȘMrɨِPMεzzW̲^qMAݒfB}@ \^Zg=P6~z(}$%23N_k3رB3Gow`[OxğzJڮ*u)i3+mVx;IX[h)urL{K~[*:g!PJ&[@5#HV(b@ FqdA2]dzm:@4mkg ,P > IzASn>l@#(0=qnk$®ɃQl(Cs;ԧi/1t pߦ<|Ҙ N>& {|s +u&$N%޻h2z}3 |9C@ x_h><{׎UQP8#^ @)Q ڎ"mK'*eb:Pѐ LƵ"o d;`,W,۩%**nbB'5ڀ)m}E#¯cp UķyHbCvÍ9g7d80I%K]`EvR>Li uyFs鉥;q;Q@.{h5@#.8ɢn~;YUD 5")ӷzO+1pUKHZ h$Q#tO!a0{ǨQ_xA l\=CVR9rc)߮zɂ(uIySI!Zh햢-~BM՜oյV 97λfxرӌ#|)qA]AyeyP~9]S:4oq|9hq^/dSϯWk^33oJ4B¼lPnqMNW}UR| ā=j]0 ~rG,+^#ŭu^}}42Zi -.2}WI&:rk'¶eb^uӚ[JO3~䙢.NezAQT1 ;(N# N$⛨K2z5y:cE,XQEOwim=ϚYQOo2ɘ?hGˡcġߓq: C X&7*6Tr^kn! Tt@$^%֯ Bڥ%i3: 'Ȱę{bh0u6{d<q)JEܷa !*Ϲ/Gܣ4wF-/'yBrN5p :.ܺ]Eթ^_gt%. XkCޓ=< o3شm{u$U&mIďPpDo@!+(ߎa+7 !s YqRҁ=o;>_n%ylTV'}~ )1 0Rh05$.'SPɁeɚt]ޏ[NnX~̗"t\0juz0q1j4Bp i{6|εr2RareqHC0ƪ\N+Kfǥ+O FbJWw"xwPoz(KPN)a*F3yYRm]~Z{ \62c+ /.q'K_ :PgJ."i۞6 9˥n,_|#0cyn^'zwU%>_g" >ZF8̶]XަT 0E\͘ì²Ǯ=wy6Vx D4gc`-=2o!D5w#u>iru;Dča:KrK:Av%Brs|q*s@v0!Cn0LLQaQ7}yDpfzgUI{\q>R.m#LzN'Ds.s^IBXYжRDƴ4:mTqA).]@Act$Z<sR/E55)ߗ_ Xk)Cߚp}b1z4gznXu7,d G**OErcVͳ4=5I&G'hthΗUSl9)1Ibf "?`ӋA ˜+im,ՕOk)ov٬4g >~MEӲjB^s߈`ϩ4a^w=oK좗-͐ e|{0]\X1 [pD{Larp+OҔ%P=t(Xḧg5]۹WL;| ?fdGve{6jF#z"0MC 4H %](x߇3Yi~h!ٍ0,WsiȫuO{=ny&FT1}w],pҿ5Au3#1RǧO,HMpzcB}OFM~ *p >P=(퇵Dn#>vHǪiw9 RDFh41=jҙIbٵfOtWs޲:7}/#b=.7]z8fӛ6K|K dA|D`;U.[QWgO c/"i'+op  w:Uca!T0x/k2nzSdX7,!Xf# tJEC_"&o- {MeU8_q.n wVQa'^7AdCJ#T0s(.LӵQ6 ;$"r41Ro@\GÉ/eMg9oJ~ Xg3$mRB7Qq_84[k`p\B;$㍂k4#*Elj5gc)*odi=5qm@UEanf5'o֑mLԶp)5Vq`kId[ iQC.`MΛKﲼD>ϸcΪCoqi[JE&2nb! Ϝ QݔM K fcs$s^-e(uA"yXs8u0%pIXS@&HU-@'nʶv+ܗEk ijQ_CTr no\E|o`Uf? h߭!tothC)SB Z<޻7ˣ=qfw+"ᙃmBQEHfD[c20 %5v Dbȕ?"SE.y !3`؝Oodɱ2I{~ / _@,]Rxe#e 6/`"]rGM$z%j;0.'6]K[3 x e 18[귌gNwF0} F簃{ݡK{ _ ,i_'v U ;}|/y͂X|C^܉VM|̀7PP7qT]60yO`ٖ/]2Z6LmmlsC'|[2> !9xqf>Ms[eJ)U!qH  G. 񎨄Z1rk55j9ހd ,VZ!a2͠qTEM=3jZ Bue t/\?w!@g:j Sf,GD1W1Zc}QTPhl&ì0`NLSnLz2{ٶUD]]:+3}~V@XP_fBk-6oKiKAV2;2Gw-x1^  h<m!YZؤ+Md(GM:ZЋFr0_ۍs.J}. 2|H?!!xa*AA7OOpLO5:l_({S7 4L\ҿP|b k)8#l*=~*Ⱦ1)Dmya9,DKB;:yh\(ֶ Q*[8 zD)ʡ`6Utc51l`VerMŎ_F-q 4 4r)/GϽql5d?{Fc;Rj(.r-Dt~3=oKŽlLp O[,*](+SMư|lm@*`w()'xxŽ'_㛈u *>RE:zjS*S`-to|LÜ`&9w ;oMLhP2G |p!a-fFr0Y [BbmJ4ƙ4AfT&-g=Jiz'HnCY|$3ً5͌z7AfN-_- ĩPZ<)$5GŽ$0LxŲ i~Şs1_ko·A0ޟxqj1p"V':2 RJtdE'F9Y' Y'T`/d@*שB0Ph9P50Ģ.ַ^D^;@;d1ZRk{Q0fe/ѕAW>:`h\?vv"nRYV0?bŰ~|?A4eoiaY y`=ENx6$GFE!)xm+=:EZ;Cr)>LJ#Tw]ꐯ^nk>ب xUrrHi8vtWi_7ut&wZ<]Eb>%O`Bĩ޳bJdO ĦfD+Qޔe] `vv;LdAӣKy'YC~hd Q`zzjZ-Qߑb qV ]ͮz?ORםgi$gҿeoƟӺb**"m Z 3DȎoG?]8< |\NI;e )Yj]6N]5:&_ik] 96YLioD v&1&856*HaQ!>"N3D{.̄mIr? Vy'FwZݧqf?2RE>f+:& m*Pe+lHmdpI&SKE_X=k{R9%besaF=2C;-*&QSu>.dсS uX/ǝCa.ۨiX;zR 3?Kc A:^bN[MʻC۵O妥&kb"fxƸLڸöy[\~0,VYV^Ļ(SKIQ@V|3SQD_+b2(,m뼂$bΈZߝS$&X ~3ep@4^蝆R&PT 9Yj$dU"YɭaNHXc֍&s|v<4 g>&/69 udLMK%jqQ gid= l8T~nsU`Ϳg/b/oI8{ ԓ(3V<j TWJȜx 02O*ekL$v+\ S+|E)1m'Zg1e=c0׽A9_il͂۟ūJMiCUJhh_[z5hk0֙!QFp]ȵ#J4V#7~ډ]"s5?RrcչJ=6[v#cf2X0`eA[' Q\TT9X]1F&C'j5JX?Qk2lDɢū1kַR'B0D! izfe/ %''´k* .}]` X(SmpAWH[5l@ -\RPR1UP|"5=IxG(%7ZO%S~2R|C6G.h1r7Ȕ3 [A6ar);m]Ay~bvL[F4'[nԬugeaUcV6:MU&_>Ld&zt~k1 -7݈+s*wߞهsz6֐68'j[T8s6cE?R&/'ŕSxWiJ)A2.h޴3HޛJ-ܑsNqD+BCZ\M荕ߞBkKg0HA%gu} Y Y˾hR]Y0i`Kj-@>ũԗ7Y\)eFMNӥzZ5,P8cNRE%zMոqpHCeHَs5(h?JT/⸿.ǥϨ*1X™ApV#ӗƆ"X_ݘ+KK`9L{8!u >lL ptwW㪹(ʠBbqsS _jɶ.Qg<xABM,/ mo;- ܑ hSdMQXDNGt{Bfz2NaY^QɇZXm@ϸs \o?UHPþBִ]wNPBv[~aIlMmzAl~|%0:1QxʍHܤ7^u#hF-(yp4MlF5jnZaRPWVLBB۵޺x%[l0zVLtr| ?BνB0@y.(r6#h@$1_ ldu?넕})ݭ&(_cBىc|*O;]yV30vIXX'9D}a ވ XM7}W)K :YI"$R9+=t,,.1\8]o+2x|cx2U(|Nkw͖8&d`WK8FLyZlwCo` $= n9u2|5#ީXgmgfLx™0RV,2̐ կ;3k9cZ֣ _ᙝG+YJuDV lsƹRTf*0SKA?PꮃROXw`(GC :Q@8_ȿ?ђRVIk;E*~}qttY9iۛ# \tfb\44Ō'u~l Dt ǗVk'Sep7O1f6gokW3ԿLS3Ъ'zyJ+pQY&Q1 5EӪ=o4hbFj悳F)`U),3x{P`vK%}.V4Rb<;^)F3-]j?껥"qcG xPS%1$ٝo񻼌GlU#ތ[1>ܡ&P4ha4zC`pUmD$l1.D{0%&s}%ZH~TeJ# hF4~05t ]78Obk{ rϗrx[@<[{]u@}[c0 O!sB\*S(Dw| YE5_>Np@3lUrt vjF(_o=G74eKlBUwumѾqJV~Hٜj^%|G(:sK!.Ee#q^$fF i= k.oi5OCHc9@w[ {Ef8PphxۙuT[V_0 ݞ} 95o}nKLkqviv &CLD&a6U Nw&.P$Iy! d3aQ Zb 1)JEmЁ:ϓi6iDq?=~q Ԭd٥(=Spa{"Y폄fVa^CJ);n-'3cd #IePʑ+7Eb൒)JԴzD RP_Qti# 7!rNUgs7AgMx qڭ6hͼ{O@(fIS8{NW-6ƛe)/xVmR›JRFܺeYǾʍd@")ו#ݣI}wO5V2<`se6C͗<(2'2b\γـ Ih%yʼnCTDSſ^V6|նNrmFfX\?uS+vE7Uk`"!8+,^ O'/5>%=^>1Sl5s_ 1HȚ (RKZ O\8p6v2SÎKWy,_iu^ }_@(`1i#9PثHo5=bYdϾbe3f7X]ep"]$>Ybu$N>'Uu+S;drOYfb)c)Psiu˒[k.8h,$bR5}v*N :GB=|h{T/pyL,)nɯ, *m䷏"Rw.ҍ6&0ぬHG!N7>:#Up^p%R6aWz#3]E[ {Ǵ)Eic/,_}^ǏhiAxC. ЩJLF]tFo;<蠦f Z99S۫x: ?Lul'"kt"&Fx<cWPgLH! oL$# 'k.fJ=]ƈ׏";J*#M5m0 J3t$LhpzX@Q&ןwod}f#W ^~4l-M!i">][ %uYd[j;ͳ~/f>b pׄй0K:{佉F).EԐTr,:w(kRooL"N YzF"ngm yirJZ5Oxӳ h6n"\g̒fdD3R'0_OP3;Sua{.*//:O>`E/vODe*"8$;hU%ukEg\;x*qǕtI] &bEgr&We5Rt&uF,@\Vd.-;IZ3Wg*C>ȯc,c7- :OPIrB/+='b OpEXS.aiVKkY>N3cy_aGsx<*jb]r9<ڃʞk(@DSeM{@J^="ھ WGF?n£=H~*l1c+Kz{/U9 ~PvvAۏ=Uu?VLig6,iGhhۂ+.2݊߇?|/[C:72ŸkY. DJdU5MUMCq}'2Q|l%BvGiʈV~ s (5JJ=ֵhgjا fPH6\uP{7 zu4paj]vVWتg&FƳ e:n?>LC pP+I G /}P[p٭roEѿ_cb@~1Qx۟*e+.B^hT^S#5 E.uM';b%ؓ iA/E {y6_|&ÏY O^`<)B{71h",$: ^;/TE`\{k^B \i!#TfĢ~ylU@+alAf֫K|I]\(Cf'lpt [Sqvx2U=Xq«!gD=jʤ6Q i.'c|I{ܳ:Z57NZez7(D0pLSw-yʻ߿^Qg#<9`"n$c;sa)ňx`^^`n6#7<7ڱD z Q/ Nآ=Jod"0fL GVUw c?hsHa}`+I[2 ̠iV9F≱dc ׶^HWE f˳˴0L?ߖ8R;ԓlK1KZA!RAF}RoN0g9ݒ$$f9)qv\{ Yy:|˵~pLI` kZA@͜ZIĩ>|C5nb þ+PZ@ar\B˵4dX\=_C\Ju pd0XtlEeOb9dIr:Uo &7r7UGODcwh+↌/;WjTgoUxK֑aeP{o vEU#bo&v44q:vxX4DZ)MO@Ḿ SNψG5IzRcJĜs=aL {)X1GF"65rR5ۊԉ9KYБG0"kI 2[ܷ&U f n'Pӓ+lNrMI-p7?_A TlОL,׭uK<5b!}+vmH—E~*LIFWM{D}K_E[(fH op(< #tbfV4BXc>~a̐ìnmmq;oPf uBӐLcNH**-ηOl+]sCq+5d+1NoJ*F t[4΁ݚ}־_#wpA/Wca(cu(֣"/AIF gcnas'=ˬkdDfHܞ  ipҟhe%ipQo[O6#-vM \ Y ?Q^s(hYVŪZ{7"Z17ӝa_3SA&Ǿ />d8Q~F7'X鐹h[$ҕ4^ $+JyX\` ;ATyldlխSs_"'\Jai*tәQ}dQjې F9D|k!nuc ޔ K7|f^:| #)Kf4˦&Y93%ڃᒕsS[5#ٔQ0W&}wdӲ^Ph+\5ʹu8cO:czw<8LtY@W[y鐸3Gф"$~3{UX2^0="CU8wL,JdI0ȏC]SLw%EԤ"KZf2F.kp6̜r]G >+TrSAhYGd`ޖBXaטW2I6Ĩ~F^&Cǎ57l$܅u7^'p^!9=S iwiK'p ܈th,1S#ӻ,k2MM9 3i jZT˵r..[T_q7oa~tP If_4u}nLV7Ϋ P1UObMpmqLkDŠ;cT$__PwYk׀b+Q5 ɱP$P[R`Sv6q}ն$+BN'c#OEjgDQjuuqB&$eR)i fQFdfZ@푼x$+cR Rk%\_,&)@mKfņʈW]Tg&EpW RgO9Uj]d)?XO4R@⧍;ɋDWƫPa[ET^S,]^ ~fw7xneQX;ۼO|_L-oa!6f5=8Ku]r-'=Z38 ^.A%峕 8E nk҆tڻ<0V G'/3hX GKqX5\V2+kyW{E&=wA*mg&:7E a|H.ߋ;D!FMGraBqMjF -#lލ妷PLmDO4?gݕ, $gwMaՋ ژبfK`P,zH 58dIGZ49ZB[>k`M̲=D a?nσO \7k4Fi9Dt'lSRb(CRHg_cjXpߜ)\adV~B1_%["xAN6`>Dvju3%YBXչ9Kq 3dcx*=}h!I'9_ovm֫%Va>CN] ,1[RI)E2潒"/W[ؘ+ME^y r??U3*C}kDkFݞM kDHXV,ӻ)rV{0u!Jx(H $.JL~r8[D)+( iKկ-',S4M*ca=OmM956g '}=O ]<ɛӒ!BNMH+,%쌧ށI ={ #:3-,Qt@H8 / &,-F)njGt+&0T 1e;~.)Mk/lVOUɌ!\<_ YKdcb] ?RHS@d,Ȩ'$<o"c"RމZ8AW1vݎ^j) (ן7uRڹƙB֗cns+TSqqQ?s__w0h,^fd/Ӛ{yx&LI/忙QUk;LοY"X"a(E LoO&wawܚ䰥Gj9wWl8p(Yڝ<Y,xRӣSe r*#;ҭI. eOŬBzHk,w.U[fIC,t[%!Τ$7eGɴt>So|r5ha\25|%8AdNiAi?Oj18O0v!ˢLәEsw/ RY[G-"qKpmV4 h1wIUeOee,p< ͸3ZF`뺢r•%{)+ lĘrZl,ļ s=vJيZ0 [tW)v֦c/rPrbph3Zk]ha^54()k׳7BD%P y6&ߦ;j4Vr ŏØP'Bl')ڙ.!{tG<y A; s϶0}_1UsclK#bP qc$CNGD:cؘNjjnm|Pa>u10arᴗ>NTb{d uuV gn)Hs*g6ڑO g&?UtfNܚMKFC1HDM;ɶ n ~\Mj`yxU7N6,{evo]~alr,lW&X dh`4Ⱥ~J++ֆ1< џ$sF3~.T)XZQֶ?B(65FϷʬH|sd!rY> /=j)MS{ʗl#xȜ\nR'm(Qް7hV7Ըx ~>snn5xpq,V鱎 ! tRx`1ӻ(כdVoRʀ t~ Aj ;p5l+{Mvk32)dWBRݴl}OYJbΡYۼJbrSlq_Vov7Wk#ab03." s$ 6klZ(u5J;Kp+:҃,zBpqhGg]Jر|8BDtOsM0^ӂ@Քg&ͩz+^Rc4pyo3,#s@E:xX {%ȶ/|| KhmUanO/VcCMd GJwT6'ЏPgq\6]]=ٕDq|37в=lg"iCr]km%z doGsEr xԔT~cP8>D<c}i^n>nu" ԐMɣ`ҲϧBm'ᗐv&3WLյ|  <#3ع(bu4w P CfSl=Vy;}jyU? YW2iX:@|7U2ԛ8khM9:ؼdqQyMƉuMW/3p4:J!2HaQ><%"aNY#a^/jee.xTu0ԥ=S WZ5G>[J?OUl0tBJnmhmĮ29ꊾdN$ʠ-bK *؀M>8iqa˲A.yu.#@=饿)珎ԕ41Ȉ 8w v%)r}QK8+(wW~j)Z=0˂6_+wّɯ95e-qPrQEblTpQ=&Y ƍ8=0CLNlNB?~E8[i`9v@iBIaeRbKlr|awV/M>W޵'$5it } T"l/( ~,{bSy591K8 =I7~.897KA7Osg'N)A3liOܙ*Cʛ(t`R>6T݊U!# # ],bWu(+šT]>Z`?479!ɨ% &9'<.nR6ސ|sZHNkyhViv%3. -+ jxW UԱD_dMbjg VZ_w:; 3=>mq^D;z;Pة9J J&m-̿eœ IбD$N^t/Tީ3@lE=#McXA-?b nDen -8{I@߿|ZM 7m:}V".2*صV/en J QqtVTs&kp>yOq1z.31[eP,UۈRdl+l~M u7e?H1/\j?6RCN~a^:Ӹ:A(ޭ|ftyltAceHicqC[>ϭ`!9*4/>75Sh:N+YxNg7GMKÝr\ Sq \;zY ܩd|B"Q(*%FSby8 0e?)Kᾚ4pkhd_FF -@iss^_b>Pf1-h2!,\b3)U$V_]N, .[DDOO~۞0P[h*fI1+*{HlXvL]~B4m5A`mеќn;15~ڸo~gDFqDAZP4Zڛ>&pFWA}sy7}^)i>f/S\Y霥2e輀`sk*%>hW- ,^ewX'/u؟g f;atڴKwj(MiWi>f1uԁgJRdlDQ8d-RpM8+ν i)5 ,N'm\T!v~@Y|=k|ki9d7|-L^0x<w:b ߀^`ƌP, *ߑYSt:ۂrVsW4|Ŋn !b6wkOvXt4$;w%eXIY D31- պO~/QicdQmmZ ٌ̈́0`V#f7Iʚ}Zͣ،RGv'L4˂Fa0 λꬎۤ , c!ZOGE":ҒQ[ #GR`C7Ȃ5{7Ɏ]f qT&.ǒt 8V[YCS$LCa ݡz:.O{=6*/DF&@"倚BmX<i(.?xܱ~ #@Nqgw)zWP<,si>Ed"Xvs]_s?I,")' 'tو\aRDKAG9}`mͧ\_w|=('˺~~}Wϋ.頑; X/FB1#Y)}bx":SCĩ2+ˡJຕBUF]4EUޠ)2t[4k;?z LF+'?m& Rݮ[/LY,iJA"ؙ,ϔZMGl q-vxlmҒP 4|:O:)iIέ=IN 2P`*2Z mm;|qKj(wDPpR{/ c8P*oޜ+'Lql PGiHlti hEA iƒNk E#A%$&xIHؗ 2Lİe"rwb'*0zj[*!.Y+9B< Q٣-C:&0TS74dƒ).m= 6soiʕՒgP?,4.2,R` sKᵄ}-fB_pBeogf1gEaf"jK |H}r6$3wkcp ~Sa]P*"/bUS/>56 .< mB— T34oG;w |v!T4ʄ=xRY54PLҹ 3O^h‰[Ko"k.!t g[hNρzY+qtЯe@>oJ u|^k/O>3\V3=MAm۝/nJnPz.&*F윜4$A'2lMO`zl2GQjO1^D'GừC;Mfl10pì gC.3u#Rgce G 8)2)%UM;Q~a|CIk1,`eL$l0j̦[ -IۼLL JyLJDwA\Q< Iy>݆2k٢'0]dUg=uk&W/qTa9Ymgb_Mg֊;)܆Eg+Wͨ}ON-z'w)t㏒R:wd "OZ~ثJR{''O]5Jg "Y*ry,&WK7G"c-ͤ_" )[N8d,lFkp1x٣35LD@0ql W+K[߲2r(mo F!>s N5yss&D>4UR0uM|Z8xeixAQ3i(ҹmF˅/ST%\*BDOI"Z3pq)Qw-\ ,)ݏ^cw: M[&>;a}1|/\P5 [8-]MԲ1#]¬&qt_:h8 5Y)Yqj*nL %$q `:%g{.Y,bݻ>}{P>=Y2!˓.] 0/;NklrD ɂZ~+O 26ٺ/}B *4㓲~~q\*D&; !dAǟ/fB*u7@M'''FڽO& O|RiHxSfhQ2ͶGt<@9ܘYjz"ȝ蟯 $1~]SƝd ܀j Pti0s1 Q4UOR65 u';V WlG<<Ϡ'OLVGgB̲%|z~:v{L&t>Rc*Ӫx g@1Wu<Ӝ~;zצ@*kva@+g;WSZI$,Z|^hteI«1j$G~15ҿUf98:Y5Š:@d9]ny!i:; 5jK`i#y\1;&YVh,a [|(fj[,wr kqJPŪƇRZ;w> #Иpև Y!"P˻ C|KCօIIC%xv-2g*t+e6!i$[EO>3;胹ޖu F~rss)ϤhB6&.Z+ˑ,{_gؑ5h *^gWCm*()6C5z}'浯\;V,w)S*VO !odZdv:cQ[hCyUY&^Pclzm?ƎK6mOuxΝwUp˺ɻ {Z)\B71*ϕZ$"~mf PO=y<6^(7v'>{= ?Uu XB rS{+ZB$#?e1+'; h[j$#{z^ ۇ[J洕^%_|2K[y7/8{*(S^@.A$N f]('.jndoc+=wH ͧD"+W븓jʊ~;>|aAb sG@onãW* F#&S06{{bCǝ6<z< 6y)NKm5۹9L9b*b]݂ieU 2DuMJc;zb4w; a\ŢǏY~y|e!7W{}4<=\ DE\ϑ p4ew6$n'7]Hzgtb:cM2pEG{$W!2WUrm)1i,b#Z빦 C( v *s32*H AC5dINp|w ɳSŢ優ƞ DGyڜɣqY l'`0V8ym 3(MSi\bu,-i1kA3(sNS[6`va%_đ[ŸQlP=P BIR \%{;4H֢8 bOo~yE J|e05,(6 5W&y/y0yxYCS.AQ:3xiu wK)#v y4u)sayTKbS2 m/֜ V+fꎜ>""c1`Hr cY2H KD-r)Z''5W0B]/4(xu07gɈ{kP!f67k}@3~Vp:\ZXA<18!P5ED,RZ%)ܳ3O!/v*)d{͚á{PIelASX8s*:0ek9 m) / =GQ]U+ZՐv*s4,'`g_Qk0O|Q}㶂旅P(F|x;b4-=)$L޲s`+(ル6А$m ]OI@\Gz(sy[:5gG?lM&'$&HW&i}j+t-m/ V6݂`i@s=lp6Z; >hCVzNԞt[Α̬۰4̮ f1 D/mG۫_moRC@O/>ౕX[_gmEU\ 6eĥz~x#ö1йbv!<ٜ:O_yyM Y Asp! P̘tRh[.umL-G,Y>wj<\ dtP˼)ai>6qiUnqJ%.K0l-#eCd_ <_Wă&wJesK 0 z.XMxRZOe&Ywf%'lNJr+gN Bw6Y\} NV;94㆞ǚѳvX{G}D1wUU$.PWOdg+qT jHn#g$4H)t-a0 >R~IVq,!'3AB.k&W<(tG링<v. OԒޜ-Zi)=-ڏQx2T#ly$vUI+vla`]o|*+Rc l?~i0''bmW9. i%A"C1+3S8z{n%I9V|Mwސj pFHƐxǷXU {T^'d>K\f1opB]1 7/?cJ!@vJST)TiY^hB՞)2] |]HɡNo9n.!X6X2FY$+Hօ Cpɉ@УH\j@l"LFO2/H9] Ֆ kfO;A2vEJ(N^)_?$\zdU:EIUg!t^CߔSC?4K8sGk)DW [vc@&ԧZ2+>5L.: _3&M{61#Q/D]H+& Y*iPʚ\d>Tў~zrwXgj^0Y jX.jn+a~VzXP\gRR?^* ƚxYt^i ! h_!6n%19Nf m6!t>_&׍-$kPniɿ-E7m 4ڶL A4*"څzm\p;w[R/ ^-SLFK?R)Cfʂk(pIf/5ͪ:ׯ9/% Ϣ*+8y_5]S4W/Se9B6+˄Rh?@w7˶!/Hm8^`~\SBOXnVc:DTInr9~ #vޗاo$N;R }oxL2!y47a3b\tO%Db!$Ý>[.z~u dW2sƠҿ=gӣ f&wOp+ hUT+?+ w\2$jASi,ke4\ 0'dz`C u ^5d0gH"BaefY"䦠G5)&m#YzsvL`LSK>u>>Rd[(跥F/-h˷3D^:[d.rCW=4plLLqqPVw"w@'fu`0JKKYL1%㈗0V~N; .QW7NGsz§(Ƨ)DhQmuE3vUr}VW[Ej6ȭ$I#S(8Տ!v^wCc'^tr͊z-LUrL`AxC"2d8pFC);q6P'RgH%gY¸b?6BrKcP0{ 2ڍ*NǗ9Uq=42I<-懦cFOWoCŢڝ 0FR[o]Єv[2"roa9& C{Pom׶RA<>18 gڑh@6& 3Yyca ق*[WGyb/m$&:N ŲIϗ歘EU: E&*= P9J%Li3͝YC87!!Ktm \_tM!bڤ^zpI|`~qՌ>BD1ie\!lbh!_|b(kgew߽jd'p 1SN-3oZjnz6o{T'r&Jf6[MJ9Vr[؃$ X5k NHbבPBoʞ}j#.2Qg c{(CRPju`YJ0YQڛ]G']9񋆭?visk`i6qTuyO{W`GIQtxX^ V]W 28E$(lx͜p PVde>kp{?Qnfq\g =Dh!IFc^R: !uz+TAΨIM8+$4jvNF(y|@g #k?+WPv7&IL _2vbZtb +*>(!( *p*-B\l1QL[y5E<>;Qz«a:8PXy')Dʆ)yy]aӟcשc9wj14я4؊FͬԑjPx$mYzG;q%;Uy/=-&& >*_qφziƫ`@b!qIԹB!2క;÷efԴ쫁AF%u/3rrID@k I,nΛ%ZF0X'ܫk1a7g)?y`U44߿ uSWgMd]zb \@ tYu  :^ H,IOQV&sAE[*ǥl0PP*:D냭?|KpTZA?@}2xE$r3BP4%k)%A5׮ӿYt>] t? һ% D-"B,?Еjos~NE%{N`diP|GJEn3g&5E z؝gáUl1HeJDS~Ư`($eK=Fs@hD搅nʕ>Fڏ?.c꽁`ξtw=/ۖ "q6Fa^ʢ+Gd5U`!nFuA/yNX޷A@I*‡X4&~[xhaw+@ cKLS\괳3.=܈Uz- aΠVG;n?̕5&$:>##V/o_+3CY' g|ם/HPJ(6NZCIGL/ 1@ sf~4a kEx{$t}~{/u(׻ļu9=IttQi^)͏GJ)(hWC42蛄,z6FT 4[$̴d5\wsБ25 s4S=aE/biһ 5m$J%'?N`!4^lTm{`~T]o24/#Xz;n]ia=M _ܦ++5դ$ؼGPkq!+bl#Dl\ȲaHͺM)B=ɡ2ZxFum杻Uy;Pio %4k>:/n:,-@mvĴa_hv\SS/}{~3V_Cy +4WjPUScdFcܹ|%o0S+!e1Q0.yxX (uuVNxl=ve{)BnA;M/n9- OTɡ_ņV&Lj*2cicMyêӢA3Z ڔ\C9I(K)3_87z5d'i~kqʙ=Ks@CvE,B۔iB c$uY࠳y׋)B8$0w5uY_jO 9H<~[) Gmw93e=@_cF[[1:',YYk9]Ɓ( nBPEE}1M->%FS)oxwцH 9vr ;}oLׁZ^UN#igiq2Vr+^+:ϟFG{_o`S#Td?~\=[0LF=,Dϡ)ӖD>\0_:l>rfw2 |~URjkynM![5t,Nb~nNmZep0T=@(,} Tgk\sGyמBz3@F3 qx Q**SJ-,RI[϶6Ql A5 8i*nn=_p ^ W`Nk.IÙ| AsTg P\eXgr;J[e`wm2|澲uR(aIH<0hw쉼 '5tYNV^wp $L EfÍ] {n Xudh>Q!H8eGCVhtNe$9է 4R"f[]AS I]&r^A>oŷ >Hq q8wE㺼%]q=G7~&OQ貈6Bs:( UC:fzxS; ︷?SSEqg{sB8jL<}$Y.^8BtDw]`X{@)> :ae@6V$e4PMAZ)ri\̅X&F2?\<}w6XJCUlb96H)qt:I %MO ݉R"H_Z3CBNO `Gz\orV?A+E1K/B=EV$ȁ JU\) Rr+I:{a:zisjAm>%xG V6͸ML 4ϧo@O.7,gzoClhQZ6ȂV3?zSMٸnz^(xQҠsu]\qSWa%/)+ Vߥ辅ml_~mpeJVPhuzH)F*p\Q'2I-}D~@NDz$#h_ȉ{EtG kn~KETԲeV靖rErOP>IpTd w]By`ebgAtW;h=ܒiK,Шk vYsDuоϡ\XÜ`$u؋۽q6xQ)ܜ-HYa8L-7 iś=ܠ6r |]!z}%HUpv:d<ٞ'd"O,T^k ZCA{ ۟0}]?#XO[:8y%1M̰QBfgpѪv10vP_@HuƘhӔǞ%y 58LƷ+N~jaL~9A'*{O^\j1. ^#\b'd>^^5|ʫ1V:K\B6DN z$PyYߔG=d[D3^W`<_R`!*Rvs*9IoVXKhU>o3Uy/+ZJ䍉DVoS`h(jBo Y' UPGMGveѾ,QJyҫ,f!o O䨲ӎe4 ~-}:s#;( ^ n zy΋mgz%,buotHTl?3r͹C]ɹ?κk AM@S-T4]LE8: ʬ*F@4;YVO!-0ɧDb`0+' Eitr7Ym1/0@)O0zG#-v@>^@"M5{IX*ь vFKPQC-*J ɐ4B.F[E\؅/W$6N7y~OCPf؜L$_nm."*o36ZwЩvֱ!Jɺ&[1|cI~Zn$ZOЗݩ\eZ`-! ,M8 }.,!'AekWNޛR6 zBMeG죱Ԇpu7j&*Q#@3̴- @2N̑q7M SĢDQdTn1QrEDG:쩧FD6}`ߡބ=,%::wG`qz&Vɵ@K?}@k/;L7- d3l+6&蚉gwb䐷ٮJVAgK_Y?K9 w}#y's@YKWDe'hwY~JG#5U ̸@ЪiswsV$@|\-.OsS&:4MftS,c0/V'of$@+πosUՁ![b{𳛘.?K4* A3Rؖ!9_̢LC :e@T G]'-X̚L끑ayկL4[23´7 X92f3\p{7DyɋuӜ<"J<>AS;_Ʈ",'_vPAt$YPc qA0ܒXko^vy.nܦJ.ֆ*sЪ4v*) 1Ufn̴S~Tx:܎S+ rJfuڰ[*TffmV3~J&"3HsL%;YjҗvOWpII3qsw LP\yST!naM암;Q{}D**@߅Ӥ7I] U*k",&ƈ`H^] įDѣS2Zh,R870? {,)L1ˇxB`bbFz}J +ٟTV6^2.զzx }tOKSoeO?ZLR3\@֩3g7-HD8C7 ? n]5havVc%[Hv+v!eLZY }myHCɝx",e83)l}mz_<zQyh*Kwp0n\2AZ Jl4W9UAbqL_Na^pfsHZ!a"%"tȰlflu%GgP?sG)fRT"]k.Oc5b0,=}+,QL~<r=e/%q2g?as<1M {X1oدq3քd ="2F2Np _hBȰɖ TOP-Ppŋ=99yJT[9ʙ[Bo#Pf@CQb.-M^`B]"qmDfT8 QA{j(=;iNӶzk.urya дD;͹# OER2o$YQ WpIm<.@vվ+N"n/j\4_[o@_v%"=@F`@\-&rfebz'YhC58y]Z;+զODMBffͱCHџ,S_#_ 2;=f65Ԏ ,p$/,NuLX#tv_z iit3zVTuhfӈL-0z7+.xe?y%vJP,isipA!$A`1"*5; ڗL ߰/#5$)^*۔K?0SVvWF8WҪF3 \mȆh Jr{hz=9PRo91DhaZ|.P @JrHK{@%ƋP F=ΑԺA>Ed/b QZ(0*V+`o$PydP%Dk,%K&iԡW(l Qy>D?-2XRo|C& Lyj(}'mF/5lQV\3/zqo.IQ R& Zh'3 /]%TһyNAsj"z*D́JCԎ?'yԺz3!#w"bylͧ0%|EwСXSUo;/1i=pgН$[s7S̅`Ɛ yBkŧQ,FUeʆ_ӯsIyK Yʃ仮ރNC(V]F, Wlaƃ]r&ez<G#I*n,vedu~RPO!9Ey^,fAF7SЂ84a MsE˙|Z}cL+j56 Q5XFs ;uoٔxw#CbsA|5'˽I~(jڣHC(t {ezf^TxҺc|&r.b3"!݌~[FDCM>FibFϖSӡE u04tX\uHx+Ux"&ڽCW #c#-i3wtrkړJ{ ͒U93~T2K:7ˢv}69 PO+QS@'$< &^I%`(SdQD.SNelfu1U4/=C1s!Db/ƖlK(dq/ؑ+ 4ҔU6w))v;beR?nBUEC`GDNZH BtHB#~p+3b )FSE|QI xx'Zf<t|p$y,F]nTj|p0T"4a Yv.URL8t$\vse>^P=-shq'RRr:Fr3 yBOm(j= @fr-WSJ_ _˝wlx> ؋8n/ [u~OcM3 `O!1Xmmq;g}ÛxLaAT5<aY5 WkɈ@"_GjMi(}Iw3"9ᣣhʍ=(xTLZj.!BMQT^{^Խ}wlLS)MԋvrXܹpCwK U7䴟D:nL/ gfʱļҤ$-UtfΈZx<* ھ5V0:c_)m ;!E=h&[7cd4|R*DF̻r{>Ӭ^(ؖ Je&o,?C$S$@;3%#eK_*.}?Y_rW3TF*HY~='KH꧙:m~jP +! xXGY9 &ø2ƴ1Agy{m<@G56so54G/O&!(eSH"ihal.iD-CǤ՚6?6 Y²Cy1̚=AO |neI[ Sh;~ԭ4e$u_w= 7.}[3cAZq/L|ј[+5VS~YUiC\VS:Qgg!I9o*(E6w!BE2Cx9$|Ϟ/Gw+e ,"h?bNՋhLN͝r4|6͓{3]iA^[qX~4RntM:h?K(yh@FY 1I':m"/:(ՖJ^Al?Amq߻қ)7!;O@] "W78h:ҙq:\?tY@6òx4ֈs.Uv֤a_q+7.^]]?jOD fPi31GQǣࣉŏ4u zOIO]{RH=d` ec} cTwW`wjjk7AΠ,\0{w8"/X ){Ѫt '.)&[f֘UHl8`%v}Ht9, gA&} :H&@OYc]վ/UO,/g\VȬU 9/5Xiy%p)RܱpCZ:4O%tNv; ܿQ@e~ m. v08jS#6XƞK0llE"l;2SH 7T26`ʣ̹f{Xal1VZ!pЦg@q ~B}ȲlЦKMQB޿7_E! 茴3P8*&~1-.-t)!#3J ZxeGqTȾWTk)8T.t${NTB9B˲D`|Ra`[/GN9 bk{*r->;؃*&424YQ$ mꣳ|՝7;6.SdqeԊBNYYgqǩuXi{ u 7 zی 6XA͢ pdڌZU} "FVO[ Hajq2`4=Fޓl 4; 2*+pp#!Rq]tYB:=ş-A*uMqT⹀Ώ'n03-EFK4d@IW|)R sc(>nsdgvnvqnľ0D%.F2tv!$7d+yyKD#oJnFÍV0w4nqrU@#ꤨ/M$WOQ^k{fHSP%gT[,sق}in8NkԿ~#fD+=\ܕ4(4KTfVJŝHZ_F+EǮz1b:o@;@1vW}qYyzy^RDވ?0-Zy CZJF9|]GX8q;AP98&4܅ݞ{:W7D<G  Ť56:ؤ,d'P@kھr~eADI n8J2k~~B/_'&U(KG >> >IU\ E>:^;6z,A  #_Lj(TR&I$$/! uRE$K77\1{u4pZ1Օ7n67yjTƫ;hz9ػ:lتHA虵A1հDVp_iOWdQzw6=ӲL ~"UJzOٟVuul143RO3 <G 7]y4x04,)~Y(+ѯn # 4ԚXMז7prf}opOճ"ů^'R"Xu>>\:aA*sS\--3Snûf^fX>Pȝ7<[I>zRo;T k,]y Jx0p8NC<;$(EvJePu7iG{-AiAya+ WQh6y*r%*k+PQaCƬY_bwaz|i՝{$?c+ 2JqpqSLPAa1<͡AŷJ2&9I(|܈4iYںِ(̴  y8Z+4Bb,?̉>}g;r9Rϱ{CH \r#g\ԄQ7 C= V#JjeB&a@ J{dY4hXӖ@CUcKM>\96o,80O񴱦 >D>ihN7>y#;7(ɂI%4i k;@Wª0SSC;P=Wڜ%ٜCݫo\чOVc7t؝hEoOveY 7^Ȯґ"X֭1ٛѡQZQno3WbF*5NI+mZոQ$MN}K=յ;e !p]VJˬNL쪜 i@>,FaS oȈiQn -򬰹}iCQ8BN:#` .60Y{u>`h&zeBXmvЌ"vT EF! nWҵ%nY=p"G🶳&q6 ׬ ۀ2$9Q֔iE!'|Pr f+#D}&R"ham}B۱1/b-"M,SKӇٍy$Svg@ w1+ хRN?>;}Zϻ C:hk#[⭑`~T D$ SfU~+qaKP1"#%RTHX,e 4-z)i{b0xx~@s2\Uϓ'4if*jE!_o:K@OÉ@g2'Ze'mcaxDzyeo,y1pKg(d`3X!CHE5< Cd6!ʥI (Pk'iLFv'\qWf\P'K`eF֮6'F ߆t L#MWΣ[ӛ4oACB櫬Ia'er2>)lJ} a.F.#p2=5Qm{'8{ViwG%t1~Ly(~|6{U>SzJUߎq/^+*#/D\)[:`uh͌ AKTV9 %.,`$X.]QHЀANOHgu~U"@0;).UOQ (6Ў~Z9j<:k7|SeO3І!ʖ #!ERm?zT⓰TDW93"lG)Lp{j9nmtB:'b*^E0+5oM *6T:Z [AcXի v69z`?5Y?HԚy$ lK>efrxw/TO3<Nfgucb|D)Xb|*IT~p ~|~7XEGsL+9`+#f;r0M͹tiSBNv-Uw N v L8foluص`T@΁Ln%X%U?m ΛgҔP/{]GgsL%z][RN[%Qb]Q `ۨgATLXZs7}.]ipD6;ΟeYC  ߧgt$|rglJ%+vi6Tڂ{j/nFE/&Kۏl;9 mYpqn HZY<–>wn bX3?  H{U.R&\`LɱQ;I/|HbsNB fF*iνx2&luTP?!Ť3 @NfLW*햕  AmL%{yW.J6PU]S>+p q?rgC-(6X͍9/ʑc%l ʁ0kc9XsH٧OxY#H]5j;w=R↯) bͦ[gֺVhypʚ^ҷëD@"_51wk/8 6'z| բ=<9fO)>|DNy%,k9ao7+[%7{/ŠvpsmKvZ,.lE܈Z߃z,K-9>r$^,{C-$ &*ڄjvpW=~0Q8=x/ט4+)n/#"~%t8]v DN䀜<C|;m8Mc5`ĮSW竒5674FxYbYFj))#f'|JG+0pڞ6C<M[uޔ7D0 |W5WKmX7X37B6[rںmFg;,4RCoF~Ӗޕ ddT鑍b]zf]2ߋfi^?SƇ$?T3-*uڤonx~?\|镀]E`&ζIؐA!x[)R5HݝSѣ:\c0$.eqV+͖yV{30VA%=>r%B[ss\xV@ӓv3`_~m:"YLY>O۠8o׉Ai߯j@_ՔgJwp&'Nign%gFɯ>GMq6z68|gTt|d^O$y;4Bݣj>G,-@/,Q&E^cɨV/l`l30.jP '? j(?Lj؈xrJT0G0'k^U!y&a# # IR #!.N4lGp[KL?k7 $OSMB?mW٫)PYϐS0cA~BRDtwfhp]c$zDAJX:N"8eE &7`¥e8ރ܏w7.) U.?uj3S]\Aկ6zrJ)tx3vڸ!4 dQ[H8-LR5<1-E2+] f?]# 'O~!1s 0ڧii,En}]UHT,b!]܄΋EФT<)E lCS%urմ3B@rUf7iޯhsp_TA<+L.fawL0ud+J0کso gd}0(T<>:OO3+ ql<;f!GcۛAF(ל;K[ Bd][׎3rl-I,nG$ X/ŕ06_oX f"Ki|^WXLR+`6Yx0)V>G p%YG&wU\[o0 ؄J PQsmNImWdz{xFǫeWYϮn}܁͔뼣6/UC^Z;UkDԕhU]^1ܛޱ8'ڟNl~&OZ^:~o^?8oGm|!/>%fX+kߝ1^eifh|%lLXb'ÊF|{WY; q%(1:w$DŽ!) ^55Ȫs&bD wPE(6`gl{9DžȏH23j$;1l=h廉b+8{%a?$TDR:]s] dK;-'K1uc,bH*+֙Ľ'CL'bFLy<&xQO;G[ǔX#ҟ~ Di#ȇMryWJw;yV9Srj"{pCOb rr~\,(;pd+Alj^zIÞO4p֡޵k̜m2f'Ǟgcom,vy^p3˷{k BDK8O`DxTЍqRe2;OkUƳ]I Hfj  >,;nl-3eި@<4פʬs) Xz}3io7dhn[ȓKT7GE"5f~x"$~ê{]G]cwJohfkgӘyq0 Ԯ( ,.krw/74x$tIȯK,"2']() Vb%@ep ٰ}/j:pց$ͿMN)Y )RLDA%GsSze_F&o;x/j?(oԌ }c ~& OkkYp̈́h+[C`sD} Dm9:o SYuIt񶝝2+D 4g-Oczd+>~<'ؗ4H&4o )LY Xﬖ46 p01kZbV#&V3Pm{B{^IJVfV+]vc_8)kĝ-xSH4P@D;A^/RU;z1մ r% qU ^f ojk੒bQ҃P~Zz:AsY HzsR~O[n0`$Oz~TEa ٳNBca-:]b gnvT=Wb.m!$&d?}̓uȐIQCk Xea\sXy&or AmiFx3{9ۖ]mQ5 dL"i6)7AYZ QNUQ1?0CC= uv=}z_WxS޿zxlJoS3qٟ&Mv\%昔|pGwޒ;K ڂC(~Ϳ[*<[tW^JtPk$lcNXo(Jo1 5 ߋD 4B>ğLc0R(f}_"V\@(Z}4YT#y"3 D(V,L# Cj&:/'-Kcc"_W*z7@%l~]ۘ~rKpcBIV峍T@ 8?5ķL9γvcXZ[fBs:5u1bI!!hoAqL@39wљ͘_@sXƻ ߲r&)qEr5B![!ƐM@}D@l5y7:ѬK8 E#єݹ@8}qu NvCjgty+yRƜp$"/h"7Op{`9oؒ5zifRؚʌk0Am %68w o.7-UsVlFrx%ׅ&ȵf(Ͻ[k)B`gAoHdgh_6NH[m>v5kR)|҆a5jp hҼ=$kAl1/X^3zʥI֯4].dUө?x&T<aRQ3:nu!p gdS:f-%ɞILV!ݥWkT#u׹Z7(o~_ Pc#MK]9'syM1-ј%psؒbS&'$G51C'Oa .bn1؅@Y`b/3E$O]h_'x׶[~G+Q75b#QIY~K Lwp6tz%CPPBnwlE8/SjF,4{T0}yߞCAki 9O8\Iq^0Ї"p$©mdn=4F iϟ~ϨBiSб [HȖ50;їwa lYl]0ՌF&u ֱ l/ mSWYo3G&TF")}!A`:TYv/H%mqV*mD 9zj95Mi-@O7|'60Esb|:pYo3oU= M% &x}2|W&uy,I@uZp B=ǀ>2簫"FO޽v5>x[;[#QvQ#P8ƪYU44D܇kΥIێ#},7PyT/H XfE+3)/gqQH8Pf7`\U@504b!zM5d5UX&)yq |ӠeRLt SLj|CBH)=AqQPz? $ӺJ$4%hSxj=`č`cM /k"s}5ONץV lO+XsvYh[$2&X F|9\ Wq(madxJ_ArLGz)qAoS+F3rRm. m ϣ&1?ˡFeWE0{/ ҡlhN>X_SԆ.}<:@<ܛ`;ETկ0Zq-Jbga9$o^ ׋d짮-X5\NXzuy٢Ho;sNo-'vhw.քu90:;{w{V5bJH4"ޚlݺo'SwsêUU2jrcXlAdu;mn-^qR}>]kBe.FeS7qT(Լ{HVAx7K}bW<(LDVk.W1?o wquh]|?Ư#-JϽ5X(m[f9ӧ)p1%ōVoFsEMʜuSG`qƳtqϯL0̐}U<֌d{^I't.]DW ~v<ϲMXȅyoT?C1xK.}?bI] Du?gX\:G8K-^(rۡEcZ[ʚB:2wEwY3Pas!Ox8+{=J17+4ˢҥ @օFhBє!ʴ'5]OxJ<  k7j"WBSYp|lg̏rBpq o2pYxi r# `E9K0D<:pjpSD;l ֺ{W!{{W{ | xXɹAh\~viNx31vG.|,*l& K/|ed;hR.G:<%9$X⡉:dSߌ[_ip'~}TAR0̺h͎m~mXkD_ܸ̓E8ObUwڇ+I'ceO\1M*~ |DfB{P+ 1wpsлU'Z>7EHXЏNc((J$ N7Wg;z6(gE' >Z[~LkJP) b_ ;UmH$L\|QHddg}=D$\LWQC#T8\_9AgԋH5A~3qoUL(.Iμ^fqvoKXo\B3di"žP~mٴӪUbp|SV)eCnSd7d1'Tɖ B A(OfiE9}`׀QΦt; yi~h_XElt\?% `v%<"Z_h㴜ߔl(k^Lw$R,:FN6$I~_yyɘ>!zU?*@tqz ojeZ޸հ%d"Ϗ}.F r;ut8d:Ts@Ei!? AK XOLV?ö h+G[ȴfJni_K?1Y[| wFMkppG#6?O]2ͩK%޳b")sB?-3ߠ/%|`xP5H@o\.q|ot$ystuM*U KOݕ+sF;YQtǫμ @RMU~F?_WG~bEOm.B{quErg4LAIi !{2|i!>(!4t<i|4wB?+P\n|{64F9|> Q=A5EVeWF+oz5_U9 &V;g"Qs{jlN;܍ `6.ލ*Uq~;dc;rq2`eCO۬u|_aȘiܮ}ݞ毤i#d# ݠoeKĤډ_Жe:P"vIupz4' RW=HD{8=48+Y6A0Cvpmm~_HoXI! MHB$#C~ Y݁wSAhM<L045Rdn4s7E3eG[{ vn0d3 b)^Pt@K-b]ȡ>k TR=Hu"P.AIQEYFmjj L_]o3R}U=M.+!*Jr<N(KKra:c=b=} 'f X]{?ꥬHf‘P`F8\ Ȩڃӟt?>aG ;v':14PC$8p [_?,N =ʚc, t*x2ؑfFʍm$"Ϳ){e:nIi*x|AaS8F23Ԉ%dCG+(jq1lX|Ĝwhsɑrډ!lbd-h@pp*LzuJQcbLȠuB'G jΥ:BuJe}#6O2Oiap%zqB]+EZLм$j1\x񓳜;'X'RݞDtTkK`( <®_Ɗزԧ{!%[i`~?"_IVDJLbs2=Z]*]a39Vڍ?Ƕ|E^NP²Bb碣?h41D?yf_Nf\QF`yI&G=ឱ:jU"H?hCӨS#8 <[D5ieCHF5I"O.0a|\]ȥ|v+@5l_\)KeqӾT%,3SC27ԳU _54[:ӊ5JS/vXɵW\)i$o&aڽζZ2;N9ST)1$(;oRvɥyg>ȟvdW(Ą5uݰsҎERn;HV_R^jBq-K\ise3tmRρ'3˟hMm7JJl" yѓ8Ȍz$K1*de片tPvD@V00e'iJyҠK5ʒ+&GYdlATnX̓@$#,υ% x~i:UMeeBGٖ-i<$LTT&Ȩ67k6o]puӔB]Q<ԋ5ncB(/aqd.KyY]ddEg,u:G,/€ Xe⺄Ïf>w!-{t=cҕt~:yNYkㄥ͜QM>JAsbH!@Ь1<,&_1S4MzwWSV5XPPUIiomduJFYۆy,P2Q+9єUh :7>; 0Qr0ƅb}hB⦨^OHZ+76BյΡЙl; 2(X+J!oza4):=>p:# @pGħ=? Kȗ!W~dE~oNd/Cj̹kjڣcO3g~}bGzf8T\>SK>&n`^HkSjB/Ҹd8!+{Cܵ\⯙xsFo^W+!7#xjlks筎[3+:'5^QY؛# *cy3X0{l3^ͣt0W$Ւ8,Jp- k]iɕii椣l?8L ?mx5L@SArA 0#6͂M#{rF26.ɧ0sYo~{- (@aHf.7ɇrQd_Z1o)]@K,Afu ?Yol'Q#T&۶4@55_X7o-CL2K)=JmkX)%cRNޏq(F9 Ir,^L5SRp{Ji3CDtE^sɡM ]Ƕɥ$]߂&THl"pޘVnOLWqs+ !YR]j!+t6Aj#'a:c$O5pShC/@dLd| ( q\{̓3̊D ~%pT~;ms^;҈yU>gkdmT'woQJH~H6A#KtႥ L/Bd]צf`V#O]FԜf'3 WeBb`4x6 CզdfH`Ab:uXX#dbAv~WS@WI` e>/-Ih^6oއRjmلPţꍆ'RrJZ5K=>ˑ_ef?]x~}J7R hW L+i)4X:矄V"̰E_Y ?@k`d %3֣ZzLY*K)thTA?@\8RY9~DBmX^6fkpJP'\%B墄kI2X$Z%F[CIpturqRiyŝg & UMN4zDn m9HWD}tזw >CqA㡸> &9,[3a]l3+, T߆6(8.a-B}lc9@ ܦ,Mnz ֝UTTR_T@(&62 ^YR*3&&J ei1"}YxBhF$jtx&@KmnaM !tˆoGmE&Ō2;Vh{5`aWzKZ!;`Bl17v.% {բ)Pv"3T؋'^Y&#BT ,k0C1hȶLG箏Ov1p_c԰iROuòGd*'[ىeܥ,cXi+'n!^>R%W s4gVɸo|6#.v282Rx ā2xa΍p&8#tKI4y2G % * E}+XjH[o.`,1|itJY(7I~f{on ;c)OO?w8() +`ׯDi HAhix+c"Sjka1J抙=muGc9n`il N;q<6zƜ4Hxf߉yRlr"4ęL1I/m.]v XU~ 6]W::n'1;NH{%YL2UԐ3nB }"3sZAzt̖0pyڛ3WvR|2AH6nRߪ$HKD$_i@P1$X-ܝk"z?/1|wY&o!{2@́UFHt n>0w!07Z e LAMB.X"TBᴳ+&LV싩Ec[ػԾ[=QOM˰ n#}_;BoTNzB}nZGvtCဋo?C(UvA|W:"&~S}/Xɂ}:H7E6u4!X+Z- ̏BQ@4-Wx <2e1@cU@Ec*`ge+Uw8.7y3?- VĵFoJvS]4҅#7+.je@0[irݗƬ-[qJB5-q-Ⱦ-6,ċNC!5]p7Fv@,Ԯ!K135LY cKV"B^W*<(=r÷Fn~4yM\Lg;' WB=~#d LJ4L;M\ *< 86+7('*topw&Ϣ1|^PHj +s FpI #k*X+S W+6ŪRm.P|*u$ su,\,&G7k@APƜ>=HuSUpJc}3 _n'(86]ԙO\1ۭ3߄^ȠL~EIqt#T8/{N-^4Ƅ "ZgfFb'h**4&q:RvfBHs;&S=+F4$ }7K`PɰqrWHb 2̬qXO^u6w_ɢanćꉟX:boH :ݦ"ZM2q3{S? (`,qi( $O=e5g G@E)CsXknC~4N][ⓌrfXeapLPʖ'e9V=*LOR/p-BW;[B|' m4̟SR߿-׼E'Ϧ~a/p ]EUz/ߔQ1a}i܂ #*tNsPBe/ &Eoi.()ڳ Dr3glښ칆\i!}_xGJu> h{zZ(=~.(&x|ucXy^ :q$ޓE;EZn݅kw2!`GqWZܱ :5_g]ċH4 j7:cqx` 4o1fi(>>pYeS:a @bkBk2hK \+l2|މrj4 B}v^kۄ eL^a騬\d5!g]dyPCzio&t+kewKDαJE :Zeqn|Jm7 5mDqahS.c@,(/2s8Rm\f$eGwNO$2xi`De O$.a9FmfqXb|ӣ"R/ jV*xWyz^3c:'c/Ě~遾@ha{tȐ'Rq>tgrTKw_X7Gֵ X;Ldұи(6͗6C&o̐AH_LWcLS\r@֓Ui[fו)ѦTΩvH]Jf ۠gwy`^̋J*,E7W-#I*-7mIXd4"$6{ Dv&T>Esy%Qo9ރSۤ |;4IWf23LEkF 1Ć+H':r&wxP] CqqRizA]iy|k n<^cy*U~u˩zIv`Pv J`Ar3o0#&aR G38{h^dc3 g\ea r%{1Rಪ䡘?K`]Oadeh2 x]@K0]"!$ԋr[oA͈/P*;/?{oT lC_$ya !&D;(: Xd5En ̬螶&w c Ḛ/0F$+O-b' Q,Nɾ3"v]nNNϹ}-&|d* ~۷EW ])Jj&%ĜXE6hzx>Qj6 vyD-z1z&F mˈ4h7E1US󮨑*>K3Ywny&2;:xejCRfl!`Lj$xrÒ}h4s6-;o&*ΟPҗBo@)Ӯ`u5It/ 0]cr]a$Pl-.Eb\UJ @z+&@yȃzD{=<+XHߝ]ǻҤ)S-w\8" )g"}+}g ~0PSc`:GvҥvvƋ`˚BzRd/OۮT9=+]BB;X^>Y\LiI 22?# X` jlOc fn#PqυT ѕ]toB=M,ƴ԰$If m\f$2K|#]hcQ1L1`nU ʂ7 v,풗MaMigns&`2 ڏD"d!퓘0M /;U c\6&ȥPVV!2E^ d޺/08 &zG6L9*Je=0߃*Dzo%Pƿ/Ih(.#IC!w˨x/ AbXCjq\ׯ4s.jYmԬRePPZοM zW;<} 5P E]V\ڼoCjN }~}H{UY?0 >43v= # `]1W*+[T Eg# BD,SKC$P#sEozhz?Jx"|*n.JVkˮ;JΑ$)J?U!fdsfUc_} xT́7׋W3عy \Eu:ں8@*Kރ>Nd 38L65ۘ𰾡e ^@:j<,jOy694cdDl}}4̙x>/*ur :sǝ8qP\dtP ,դARVrdBZ!T?661y0ߐȰBwp޽W0 **WBUpy4xw%ѻu6AI{mn6'VmgFQV,>ȬXNQO3T7:EZ'F=Hπ¾é8ܜ-;X=&/(bأ,D^վGbQwr@\p[g@?E3y-&8qنe}w oF_fM0TL#0ȸ>F_;6:kq)؁m щݙ?+1Fte2pn6Lƺ ͜ĂD[gt%͛֫TT[|`@ȇ׷:=.skjGwh=@1L7nnEȀ fqp]&Ɨ<'㪭ye8GλZ#wClxwK}8kވ(6fVT3HRAc^hrDK{1Opn)'luPsng&ZNdquQ˂C2Qf9n/RŰ2d gXCy^fSWBg8|+p>GLO ~\qpnNrS?֎\Q t4'(79hxMo?GS ih,bQ9>$}v͛͟;NJ*)? ['cH*ͱRqZȒQ#lVs):K =AsSڲ_GM<~qHq0)6p^) OW:b߷9őf}Ho}vkUA9ZY&x'.Y0lM&(yZl :`rŏ0u5:y+}d^QJAChR;WYo9r|ԤB^dޕ3Wu1{ä$9{JtG)~BC}^o/$B,8G:v-]7C1򸒓iߠD2hB7#pNǂ:U )0ˊ i;h],60ƕRQ;HpeB7Vp7)x_m'AJɲGpG"9˳w/PĦ'['xD_3˦|KD26 )+pŠBn\ T~OD3K{UGL%x_|{^܏P~q+3# Vы 5tG%ӨLq17*wonW" C h5N]j YE}y^-`n'Ngee1||%_=-W#'o8%ȉ4,pBi,Gŧox \lAi%.r</6C AI.SF ֖Mcs"%&"T560(DpEA#'ڌ2~dFFb$Z,K:F]]P\wap@F XA"7!}&w3N xW~E÷W/zyh7gm6M/~_kn/7ިy-a[ v`imRڔ"# n!K?ݕհP߮=1 3`绸 4%i/±ة9O"c ʫZn^1X; 0:l 5-IO_ք=2|̍6ȡDׄaЍ)hdns`㦧?@'rUl@l#.R^z"8P=̲a+&'*I"uYuƯR?g0ֹ cwGL$r~cTJ>:w_g2-5 Qi 4F-\ ɩ7"ׅprȵjp˗˗`"4_m\Zir5Y$;B[ȋvƂM볍P!4~8HjLRhB:}LK}'k[ȚMYk%lr6ʔ r>{lyuW܀?@S p󦭭VMGC)<c :J:{h{Zp&X<ժcD8xeM}Ҵ)$z.Y=+\gm}D۰~voёkIk# C{~6aTvvBtq;+P2 }/8ʹ>_]2LP| պflV>5S.w:|@\j'u -C4K.  ;uI!{] 1ha ŧl!QKq,#-=IK%dͩ8F=X(ӈs/C0"0lݔg* k!H!ì\d+ [rF |! &f9*HJ^2tZ@?vDVaǶa^롂a^;uZ6ir[B8q$ ^an:A9FUGՉ70# C`rO`.#hyfʁxo{z,Ye}~6]E'!z6IdkLAe7X ٪u>9j `nZݓ.eʃYHD6@n%Fd8Nߥ Br ֔;lBs%($"}"D1kN0#\e,,t$0=}0v"z3ݑM>ͧjh9FT`i7G0@&o %8t<*|`zb-<*հ.3I"+;m,0r3yHLXEGށ}uG`ɗ`!,zXe7&nnvd*Dӥ墏IǺ D4 ŭnܨJH ~{N@SFHѧ#"n @]'O T _z>ŤQb*ع/i{A46lE֗^Nh2t)eW(P(VCC'AKN^Li,)@j\,  ;@C^*2e/d;>I kK`Lco?5feQi#DveFLٟawŸ'I)|^Zbrrݭ-[ l#LgH́ qٞs%%FMGiG%d#|WץKvىn/ĸ"L #ȻGjR83uqۀ#PZmߊM!gi?bsC"⺝"VYґC4I 9k~Uj0>vIBK=0u/TImwx.Bl#+x}jx kʍH@E 4X%sm\.hX SA㸚yp/2\^SZsjl[#@e1Сӭ:$ۉ{˕ Ҝb)Kg|6ovΏd0W K )?H*ƃMoNȑQI^e\&As$j*f.R!+FB!4kI[ݚ88dSbu>@2e*҃qSR|GNǫ<ܐLj5A8c+Im:Re7N9 [ 7Ӑpy}kLR  ~L(m'"$Z[~sL|5 ܐignJܙOe ](q?4 yi7CpA$MŶf.oMDvOGHhMyrT6װY=AT<=mxaH: v<1@ ˸WFN#.#|ԛ8/XSah:tҶ)IQ_.рHPaQ$`G9dtue߂kg;8{bhdC7)msJ@Lp[![Z=O!s8U)C,QA+ga<PU<JqTUX;|5NTn-lF,MIE%y @s($L}n9:tH8ot uhT{>* 3.3kroWR΃\I[d5e4"[p)ed|RTU=z2tI{FF{ݯCW{`㼹yaeRi_A\s2w@TWattSIvԘwUyO]]#U3L(ZΙQlMu^mǦWGדbሦ\XKVp9Gbt dxJZsa8+z'񣘊™e=[Ȉr^ 5ܜlT uX iK4\z~m@p : Z0u'0_I,ݽNdn_+x%29ş:WQEkpaS,rE'/o)(0~n8\F.;xC߬4Fo?0Du`bda1=s`2oCϡu֤LyWqx01tpg9jNHg=^vp J#K]6 kziFKIl%yL//>/K$R[IčT򖬢үJDقT7/ַ9]iq2ic/˝H5汔phaK} N ;2yI!#Q oB&wEty =\sG,BdvThB~ۺ8Ym'td&j)dG21vё<--imJ@NE87$zz D|vE]#/=aŠka*rdڤl^@t}~v@ܒ6$d7˫v/dAhz&_~=N.;k{n0$J 8*γlSo~ nNru[X9\;DJA,4 V5 ;BW<)KV9Y0d_D8T#@):(s#,pPy|Oeѡ6qdsKֱp/HQݔ -A}b]Ndî\S?`\dhX?igztw'r4A,O"a\Xd1nԑ!(@|Xm6a)^2\{'V(3Mޒ1ƈ[u=1PCt~gŭ{ZP$hTnV& y?-Q?9["~|>9ߐ%g2rHt̒C#_j':1+PC<./-rFo!#y1oro`am4 2!t/vXrg0qjT/~qx/q2$jtWd(ܟVUh?ͣu7(bǑIT>I6ԓj9_S2ięxBC_17>\fK7xo 80k{uYn̻RNSX*As%wpׅDQO9 ?DN =ihGZG,RzsMz/ IY;\L"m?30XldmJ&*>`7mzqXJ6<5Fv9WiVW=I'yУ@@HzdΏ9ൠHj  veUfjutC!_;3.b{?-uxk-2&ptG: ]&N^W=5r;[keiPm#"-3JyAz:U$B" 6\xi,+-\8UHv'+ռ@;{Nngq6|-%Q>j(XoXelKj7)f X/ۮŅCqОgZ- D ߚ%!lg/'+TSj\+i2j[C/JJk 48-mΒQr,b&d;RoB v?iK4I4n|?SX oN,~s @?0 H[}ZHkd$]=f?:W:}pMػ=C:a%Q;eAQ\fw< yΗ@|$C>L 'Q%+8'VOpJ\,NGSUuء@mxǨm6PC:9i<6)f@uleZGFBlV}$%*'ݗb 0n΢ؠU>⣘%Lst.Qm Fc5 `m'!,QJUq*b?}|,H󀫝'^)7PG\NwKbSFsg m<1ƦO?T}Y nv26(ϧ_ ?PUyhQL1T(טb?I„UE]uSbzK^p&娠>p1'%=s҉&63Gd"Q>UlBP՞7rDE)tG=PCzL_/GM+Gfj&=4@ңsI~{cMFљV+|w/le)9R٧8V̒]BU*8˙|`\oy;x$0g8UsDʊ1tZ <DFhÙ,K͢O=|d:֖`tWnA&ZE[,Œ4 쨥͈{LNKaQ-<}&u|ħnePו(Ƴ~ǝ~;c4kh,/`3/76B_]8έ=B(#+Ǹ4#]@۵;bc_1v=d=Fz&ѫACo_b|-QN~*_LHKDNM K~c!Upove*,m+-'bdM! r;~-6AmG%7bOH4)e> ZYa F,lA HRv#Ja(>\Zk:['v q1%i L_{J/dFDž%`, ˶n9K L]mKOwUM5!ٿ 9岏2"mtr"ܯ#JtCPwA!R6hL,!gѵ.ukfc\XPcOf߰w #Zo0<Ωv|W[6Qs:w5a\"X;ZV 9j >C9¸q=&F̈́mD>;w;X)H\٪!4Y#롦 0œ] wP5nLlYZ|wMzd #".!<B[rF:>y 4uvȐZ6MLiazAQ)Y}P2dT vԄ*5JE[W7:&wa\ӮxF`$peVw3HiJRd= ;FZU@I7ps\mⰣWv;Os9d[SM*I8 3Мjm߻̢m^R HǍ6c[U tYa/g|0)F$7ϼICmGt`؆kGbtYzD4bZӭx

⻬o+s6LEE guVh\!4thH'^NXWIOa! 19 )oM *US &PR&HZ)k_#KaJO;^Q/`z,3}SE5-3C̍~t^=?{v[oK4=)q#Z&m9k9ޯhV;d>?)Sl, J+xi4Xx .(eC&xyk,\i@ZsA{Ц/'݂9RP[SMI'^jpOFhYt+_hq_^TF)8stwO괗\jiT4r7| =Y;Q&Y\gW[ O@zxw;8 Qx׬fs[M1QOt9"2.h7hF)YKw2y܅6KGr:tr#tj 9S! iw0V:zgW\5Htϑti=7m2%X??nW^XmJODgHbϢñ)4 oƽ\A= Z{urNk.>&{3Û >!Z z5@^ |ayhL/<!LN*,Z0pm'0 n^#(꺱oΙבA :3ߦJQ&OIّ ?+/Kېa}巧5hѨxpFljY# Q0R,FO9Z_7h=`PEOaM!$lPxо4ڴ3J]NAϱG[O2Ӽ}h\-bO]?}+n<,~R'AoT (b9x 镮<.1VqU;Jl:B=85Z%T@:`?Iv4v>^zvI&l,Q~-h<
Adj5e%W7'hk%ߺ,r~/F8-H*2M.ʤTq v?óIەǙjA@0^h./m -MDW:[~E!y4d/t4`Kܞ(]E r(Al,3@bGxoFkw';[иfrL)R"] Q[>NbE̚z3 hSn3=s!j I@z}B"&.:8nmıa_-m2 I-Z|eH}G%>=0t)$fx1lxM36^J42m4WpӲ NMSnE\|wBtZ|<:TVCjG+S;5Y{r'>ݦ]Luë8 o{ 5ŒF$H _oikQIR6:Ș2-ϖj:Z(ZrFR^eƍDN!E=З{Wdhh ޔbuAȲ V>Tlw:=d2 &ln"LHDٮ-䷶NN7e7tj"9jl3缾X멓:0lCB4*aVx~M>-n !Na;MLM =`ti%[fJ'o-v qܼb+f&Hy$ $Շ6HɢZ-Z|2YDONI~*8CUs̍x, V][r@pۋBS -Ά+cCI`](\ֿﰦ[9ǽDz_jYD5'͋1f?*H.oۜ;C~(O~tSi&IW+ވ1 :zL3WWO3:u*$=AkXD_уcCF-F#mrk:=4")֘y2vrQ_ҁT-uQyVovg% O>򅒫)JȏDbKXw:4`l%ypO= ʘ$֍=\`!aÓV@ViZj%: ]Gğn3-P#A$Vd ~a.*5V8ts݅b<8u} lEq?'@=1Q 6Rv1]Vbs' o_2a[L˃VM7HNO2jU㎛tuy^hn.>>Sr6$IUBt"rUzp|: 뻎ءz'Лi(iL>(+wX l+ !|ZӗiGŕX8VvaLT&Ô$pވA@;/&hS#ߗ,l+SBKL'?+5l/u 3 ?LPsx on fv}Iz=j%H|7;#A C~6+o1,l) ! +ˇ=ҽqS7]՞9mks< nB|x* *Ulr}8CisDMEbSIOq[҅9nIcRn`yG{6! ~oJ><~%ҞQzm5ĵcp Ա $4k 2DæƁ喊ʘ)#vS)0ГA5-&b;Fl)˳ȭzB[ fWdC0m)Gne kOT K,>t0앵lItsq^ӽ6UO`?Ef>J=Q]q/P&:#쵽5%ڐ;T DB-ŐD]Fw1+۾iYmtbC|b('QD:X*Jd ^;e %/jᘗUƆ!LT7sd,ekdW2+|,Զk: '륋v6 ӰĢE8U {_J^p"gjl9KK#;I$xM2d Ɗ"*"@% CKߟ>#v:&cE֨2 ! wW1z$oU;\tV4lrS b։kȍA9WX"̈́;&ךmiQq ǍϾh>P)LO \ֽ2at+ehvSۅo ԯ"*]{k|!_1ų UOL&f=dԦ&lʋ QƠś\r(<#+ m=/,a\%> o<necY_K?3{apl#t"d5[o$2x\!<B՞p5̭JSABY|KV1v"ru)y2ޢ2 V |Y.WaJI:@2PdySZ Ȣqmh-t"G1j@M*t2݀QIny~g3Lc{TAOzxou"Ɩ44ͪ R>x;nķs(fYHت&j'Pb݇TW (9IuߛOhȖ93T>bE#hr\ʪKLD`ngP"J\ ~Qi8<,[~ / GAJ7ԍ@$|K{KU_CddϞ~$˙4h2!`$ &`&,/p~S=XMxVY2,Li|y+`^BJ'_0;yN&7p*!xʇ_B 7#C䂛nabd <<_ZA?ّutlRi\˱1 [0SVF/DS)j[rP;1AW3EPgKt^1;bVlt<ݛl]Ro !)F.;NCp:kO´J zZ@O&x>H]K f|nz.(%4 zsĽH'rM&q\/oZB' ,POxBr[B̏`4I]VlG6pDZ_mWkc1hDDh`pp|wc}t@g2z;N]yq |wj(mT'[)s>bo PSpZUXJU$G<Y G~ z) 1w3HWVN{$ph?'|-8<s8݆WF@x4p25#5G|tm)u6Th!>dӡMfP;)yfѤa#[,b#zuEA;7:c!m)ʄ>`Bu8gtzV/BLǽZށyӞ<#'ubi$OwXq- iA%CW#YQaT4R~s>63I}y9ׯ'csDKΖcE $Fl ƶAC&@ϝ#MebtN)HOn?"6H+L0.:$B؉=kMDHf$}Utg)i]{A8-wwx#T,y 6L](q(DRE1j$h%&<3VVStu[m͆ɢ,4 ZuL@Ld7 1澃`GwkX@ zLJ*msM[yS%86춺eே7rF@/^`)9'1YBR/m3w 6R }C[{cM܊%wZS{+`@=)F61㒠'挨'߬Qp>ֱ_xVҟ e.A|߉,h\]9'=QC= ~c1)&Ps宫D[= 2?MUM~Y=)G oYtg v{9c:ԌFb gAh75ҰSG]!vH3Pv 텦`d=;30kAN"׻E@gY@wqqh' q]t֎9#_ ^ g XLTs\ʄ`,a|r팓hLZ 9+lw CJ4o@jg;JUë|Rhb@5*==N:\qm}gYv8I{U?4pĥ#KкQ;)^?'3D@f|8+o) NЗ/ɢnm=KbR?"xkRot*5w!i)QKݣ36i& 5ӊSSyǞ4\nFס.+ٮxz?;w=m V@qb 7r͛G&eΧ*\Sj+L$p%=FDҨ )mT{PKT!0YB嚨 JPc‰x|Бv0-4W1}CE뺠k-SJF雿^Dhm"\c礔] % 孞M<\@{-b+-|o#], re)Wz]"58Xe] %(lz(Z_%{ו8QVtIaMK`xL+ͅnQB2;nAJv|ZO))>>l8VY#9ATͻQwg E`;NfQ"pIEp 9@ו,p "  ZSp`jƑ\ 1LLG;Tgm1#PG(ͽ+Eͅɑ\A?}{zƍt;jZ&kRn]۩ h<&2+KYy % k:FE"v'9Wv7ŵIKwf?$U)<_v/ uq\(0 B'}?7)d x}WXJaGSňܡ,XޚOm;39cM1H'6۞O%}j`'ܻC뮖% zf11lC'Y8認<>xD # FB;p#&1DQ0ݽWv' s6+. U3Gm}:#* K 3=NǗSkD:vx\Kӆ&> DŽ) K:E:~ݼXrZo+ q^,RYف8FwAU&r$>/y7mGjhK])Կ.]u}Eb[{MQHŶxxe9'hH&-Q ^o'񚑎f]g>Q.Ͽ`zj{aZtBœ蛷dzA KF$BnDx$1 봝h.pZxJp-\N?87epEcig8joef-.W ;|#Ө*ahKoPFhN8I99FG,/ 953Q>gn?E;DϦT bϨ@0yErpv"ͨ=Ϝ,)n(%^`s!j*] eȒjINBC_jcou } wP{z0ةoo4_{|l`Y݊X$мHW6߳8M7Q_k|/WAP{~Kx&2"d`g㦔UA"wȚ]a6޽'x$kߠa#ĝRÅe72Gk ̘n%yGrB56&,/"F=0Е7zF1++8:} ,N X9Z T'5:2svH(U&ͮM'p 9-ЗG UV8TEsvvlUl~F%5] 1Nn됌#z%˂k1D)8aQB-<߉ؿewo A5۱Muݼʁ?oK@￟j!Ty `PY.+/[?ì7"x Lxʾgm|9E AJ-# l''¢;b[Ȓ,bRaGQ.z36(-#!OZx); )g=y᫲J|dU/QΩGD$cz$ Z+|w"d.KEz BdOaE'e${=0TvM<*(ǡ)!1j1ZK]z[oȢ-@8E+hjn4(5mpg㭸/A`ƔC_Bo@Zq5Xks}J2TJ0.e}2c_BJ"RAl+TmqEUzhXCzyY^}`&{ d>9ދѢ_=*wWD⛒CSRMe1{\⯬űfw&n  >V2ΐ?}//N"/]{}){vUUH?pciSؕ{S@h_v[y% O^q0ˀ6#BEQEr\*o. uc'/N=_g-wL-Pe-B ߕt'vEe^="4uAxwܹz‹ȇc6AV~\TYݥh D?3QVj cG W1 BMN.n<{ ㄳ2Gͬ DFW($&܊M:- =Ƿm=4 \$ϭ,t@, :cFhn.dF[;o*>) 4hT* 2$^PQsA9-9 YQ \Nnc6Yۗ|}Jh\ /P{@lEO%;$k*W'X=[̥Y_fqCQ!l!V2d33vr:q&H6= s/,erI 2e-_ @z_淆} OUiCV9??:{@aI1 &=pҤ,|^uȰ+Lx&w[)EKDnP0=at$4,럢OtΖKISPhpN?NVmLbx2?ywvx BnIq+f,\oFf( Kd9Uj꣇M}ݗ|M'㷯Db(|Շp n,6#6|ph60^s[z tb# ^W3wGbC7roqDr0eELL=h(eMڏ/ăhxbPW3 20{J(eNBIR4gNR+3qHާv\WbHqA*7Pki!5֮mOh \*f!rr֍q;繍!P*+lǎΖtlK*nJ>yX!3C9x%~47@&> Z< l69tw#ͪά>n` w3$8݂Fkn !Sy"X%4)x\rodJ2kt%vPBX4E2+eޑ=n>Z^BcFS]iF/K1wH,<Jp0>$"::tQO+<3#~%r$p9,R?"}'^Iᅜþ3okUwM\Ɠ.0`)'2q\%oM~yDǥ.Ep@R< (Yy3g7 K?%͓> ;Få<˴֭"+ =ǥIIA)UNPAw{Y^mpa$T^y2ty4kO;E]/SGVpo-ՈGV>nc,YeH)8]~%S5W24hF6~ mk pgG[6RTk9Wgſ3EǁۣnҫJ8H mT NЖ5鱅 ̈́ Zh P؍@lB$yҷg5v 0[l JI~Fi#:2da@UD+Y -j[!nm0+cs_-?) ~G@%CT˃R➀"[jo~IUjrЇ3%.OnP3, _}u;=7.Ga3TS[f/wN,я0RRZBBxX f*rKmĆ3/1!ҋ!GEe[\+n;v(bsJ/_:AĠߝ9@S)=K=.uiƓZn:7@O%!&wt0F ޹L;(NRU/a%Bgڿثt8aҋК%`( GlkuLʐTDv$?0,g[(hkJs2!M>nO le`].BA? ښloL4Eċr RDX@jI5۱$P_lWI !jf.Œ6pMi^hi_"V' B饳\hkL+ }@X .4JDM'4(4 i$wjէ+^%;)p<^ pΝ 'A2%xI兲qK%kQxsڧn h `dᤷ߰ڳeepO/cݖ"r*|]җw$cbQ:S1AY^Ўb=zIƀ}R'lt[agIT@PAZ#@hph,JxZ*5F8{XNs7džI{`ͻKuIiئz:م9#¿y'EۣϖN$U} [`t@ B~J%P'WѰ`ĺ/iykk4ⓦmTTf9-Pl N"|73r<7;)s^_N bH܀!Vǁd _T7xC!zl랮e{ @vȔCHZtΚLZ.hk}oVrֳJƧNS"kKjZ|+yCڵwpi#h<"B V/8p3:0 SN ̘9 ً TUW'l=5R? A K עZnԇix@x6z?<"'xiT"w adQG̺eRэgX[ d&xF~'ΒXOI*p_euFp,YWjzI&_? OA<#hUDn*ܨW8X֬H#Z= #ӯ,RDd~Pk:mOܦcZ2 -LU ;~H:T%NAp?%HzHq#R% ]%nT8x$Ou.>LkA zL2sW $O)\+qZoH/a#g` gx94K3$.s 7n{KRFoC] 8:b-HQJL#ZJY6P]0]2zeTq~ qeG?Ogȸ2, eu֍u>w3Sv|[m}$T:l..h/ /@릺Ļrs BB@TlaԎ݃ݻ)t'qKm+{_dF],ՑŔc̷^ubCH@2D"b3p ۤ]FObVmY TlzYUu\h2PiM#j,UxF~\ḩ)Ÿ?}IDF3^ۙ96Nw6O;*t7[cX6JCU'TJ0 S\n.L)F?3G@sf^B2L/ 4|G9o4(LW:~pTw1l.6PTBG[VOrF3R-U¦q$ #r'7Ή` W:7P.[KKyu)u 2̛Z 5 .bD7~X}CAI=JntAkrụ}ߣU=fAH8\ A/bڲLrl,Qy m;@o7M[C^DTRzΝ []KGF2O(jqhNR_7 !:+jiƫG"@oY1fErh=4ePF?"EKE >]l4 Kv& F䓙2T82DrKW?@l Tӯ~|#ԇgD㩠^ ;-VRJ\'Ro@'֛ev;zjM"ۄ0*E?́Yv*ֽͲZM#f{~ZpX4pc*}$_Au#.b7^},*4Abrlt\ + {q`Eh_+4QP蓯P58qa@$VnХykGE1QQ"b&n<{*OKuyu0hUk\Q9߼3Qys^҄^s|̈j i>$G%pTi IY 1/}Hd`>MJpMՄ9<_̔=πz eؕ(WJin>@ w4Q8iK]iւ+$37Zd%JbwgxKDq,rgE2]#5®چ5gx.l+//^F~cRyQbߧVY7 u/j! v?n}~5r=NFulZfz/u%Ra$/u#o%>Fџy)MdV7׸<_1 _3F5^`hy!2ZHspG2jd!S)+r_ Oks!^JY{m`I.ZUHG V{`%v%(Fio_urJpf]5uX.i[PN*iSe !Tح>r21̕]'n2" B+jciaj2m܌ j$9yi_o '7 lԈ' ~ǦݢJ :A@B*Ni$4L1 hMVƋޢǒ\`fԁn mt>J%!ƀܔwCR :qv%s7`9kֻr^s <\"!D5dqحЅwz!)'NDX̃BT0)?"W1w\ipRT>`?db~0՝fTStԈĺ1s-]v`BpN>8g;71W憵 !s2?)h5$pߎ!+"B̠ }dtTjw&Ww\V9bA;NkYqSFh:vq=ٵcUUBH^Q0C2lQQ߳Bqy)Pl`$slbfOB?N*}18儍2# Pu)*7V d+fkRg"N,Us%,:gOZL$vy͘эs"*&+FyxG` E+4dFm-@;)qÖ%;YjIAU(hs $1?sYP=CG%J_Fu "@cz~CDq[g/Kz  )cWbM)@XTY A+*c tTp kbWm3E>d fFٚ%57" M[͓g!OBU KӠ!M'9Od nUmf2A7#1Mr#4|:F()<*_*zX'h6(Q^la $eJ曰%>#h.DH''!\)cS@(a1}Wqŧ~_G$>h*sEBD$6ϓ=K&_46GӦ/gu%k¿>oJwG,xEhx$BC68C`D$jc; C#c$Ȍa,B(S! 5H̊!jkXP4Jy>#$[ȹG Tf29A/κ Ch ez,uqWlc uWTSԜS {m q`r(ӥl.fKQ|tqNiv5}䑳H4wn9  Vv/ơI)|R68 DBOu{C5k{MZEmw ?(7b1C6%1,jA9Ih-Z-,; Ho}St2*PǍ͐n:U:׍b3Wj }MQ RWL/R -sbi6 hIMٶ_ʡI/wNQѥseޔI)'PqԢ&Fb\G\2%!+卯ź{5.:{^s IK;aͲJ$ d?%)[\CMOnʙ4ȢH#/ ԝM.=%zv1[]>{s>^GݮVr8Jݢ=ۆIi]]-=; Nz[u%wRFcс?GA&GJ=OWH,dw܄h#L^zXK01܏Z G%$'=ѹ}8wTo[]ڃnQuGzIU{HWU4`ֻ䩆I+T:%̒U{}Wt]ʟas6l'A^>=J&*do&_*OBJa'(1"r Y3)GGG.k ;dwSR5Cr=>U4kPD YМ 7yKDnQ9g7,5yBO뇘B>a? Pk2|Z]u˩OzU[Qs4ĥ(qJ29VjHM.E7JO$sӁ~%E)؜b+iݾN_ N(_5UI6!q.drRp$.ox\+z/uJդE`.=o |(zD<R^|Rb4rm[o#;R K#EN~Q` *B~.oλ~LEYۼ3j[8&T_V;VW!c`ib;x+ -lݽ_Y/Ңt['D"=Zb gt@OLzv~eͮKb\+4Cl|"O#_13 H$+pެPUnWGkǎKvH\:3o r,3$!neO\3z9=Ge{2&j;sdݝpk EOꅑE=w73l"6Al֧Pcg4qaņFIdAՄ$!:S XAb9'iOɔ LFsB98+&i!ڃЬ<4 Ӳu$JH lk>bI2O pν&!l0];z R1䒍Wt;:}*i#hSp}.JIˬ*L#OLCL8  d;k!i/z4G8 ,DGUīov0LXt 1?w'z~M_ NQUɈ[A.`ɻ;Ɛ8];<klqCu6#.'[yD IQ@ 0+1b61|oj{bGer 'xf;lAAcQ@0pA21$y}ъ&9~ }nZ"F2MCh=o< ܛҎ`o ͇<=ԓF1%3y|KuԫϠn[|ʭY}.Y{ #nrTýW򝌀.oK7}XD@nړl˓Ɛ!|ިX_-M]{ hP*g0׶3i D[p@_0JZyC :mE&n/!J-^4t̒+:CqԚf_N1Kc㛦HAcp1DhyB- %y%7C9mQ蠣[ʼ w0*GxU3UOCeVEMl lSGͻX1va8B:@#UΦDЎUޒ9KC5~>1d4=}GXlTjR2 !ʣynjUgJd5M]d 6P.bZLNiNV _=\$VL"E#Ħ2+"J[av ǵ#*eFA,)"u CR?#&Jj|v4L+%좺MWMS)eZv 7tb e;u ?ι4`I߻-̊UnO*_,'M23U e++MəSj[NVdHh߶ecK%f&M'Ϥ(vTݱu%Oar6jnn,0HpϪ# 1h]TۆOy9G8ɚMɒgZ" 1w.Cv-5[]awE9tLa}%b @q1*EC~|U0TR 4*TW$Lwˈ出o/|E!@; Uzo@Ð kՀَ;H|'@;cUqPaCȵJ}!gKB糅w|QF5;^=≴J5;`Y8Q$< Eo'Z_oҡ? Kij;I(2O3|V2sADS"$cIւ|!#)t3 Tذʶͪ'=`rw)?m)ފ:,hC2UbEY3./м=Z/W@=/G\["?s?:@[R0Sp)I Rr]a]OB;/Xt'E#εf7Fs3:Dx*P09_i4GƁ; [JZQǞ*\iu磀TB_05*!J"a_0 kI'G9̄[z9A;nu-oXBD#h\/^Nѐ&Nu!o8nM-<ԂfN5&ih;x f7Ч$a0SYU`\ !o}7 wWC=G(YLVcsgk}]&z ;r,=ؙ^V^@\]?+z|+&u.gML^Yn:?$ڀw $4Qjh®< ;'at'z*=l:v ~9\.I2h3a +RqDLR&9"޼k7O\*!~ƠAqz9Y$|I+4X[Cz>%\NDd&Ækبe F [//I̭/ QꪵE9~qmsŋHLWdnV*n4ۨyyGZp{`Ȣ#;jH=IGMqyd~HS;UBCEOu耙u{ Sz K}#1Nv"tV4ef*s%Ii|c@ rqb8V9{å0XGZFZ޴b%XnV~yշ6dο/e[]wTrpک|D;SU#,aA< ';?jO RR G~A9Gh6 &imLʥ5v<75}L(<9 ;3&~m?ʏgfM97Ӥ('7n+dQ1taZw$&}v#oY۲^C9si=vmZX!_ \y,6l)y7eԆǔds"?GՌ'p? q5){O)i=xRi?*1,INI}*Nvk+t98٫i*^t-`tt]-_o:QЌ:)."@ ;D+bQ7\#_]vr+$ψVIYCfL-=" (n͝r%&<$s{i>6CLSpӅ~˗\ Mp3<)C& _(>-טk61L>ATk*0qww^F3`v ![0\fi=2=acr4!!N'F:-KT'u`I7Q/=*X0m3눗7E t/zwԿ֥̱^Eu<BNb(A]' 5"Ͼ##:|E@.F[Z?v$˄FG:v%ViⰥj@u<5+ 7}my<ıʵP1>C& ࠁb> ~n)`\_~m"*tXmUj=^J|KK[/2(2Q܁Ԍm<W3Mɧq׹Zx8:u"gr%At2`P@p"C ձh*;di_쓶*ir1|. ]ˣOϕg.l~:JRA1b4lD9;4}& EuW.w9Rs/Ѽ|K޴|,jp!CT0Ï웑vv1k;¬8vITjӲxnn/]Cwbkx<}0Ɍgav'\݁c䅨4Ӽ"bG>|>%ܐd ØgV;!b%ôտ{'nF m%r"X'҈@GG~F6UMpp54Hoe>?'D+e CȖ k&H)n .WoZ,2} k2wS &)}0y A˜<]jxfY%0dkϰ҇q)+WZ?yeF$1Vt{zI%Lp0,雠Ui}:̮on\ѢY ~,,5w$48#"i^#uj+6-Za)jWcVϐc Gۆ({2h?Te&O`RϢaFH'n\HPLr]`?:nF+OIsҰH8fu|xDyS*QS3`1x urr>٢NmoU{OrmC!.I_-m3"8D^83]i2YǕd}YtR5EbֆY#Dɉ R1k`Eyglq#eXo$gOoE0S 귣$y!uwn<{ qN7LM-kO-JJcLt&ֵ~9$ "hz^0A ,|*d(^W9^m$Hw X9n_}vNor<'k;|Jw0qz;.rKffK Ͳ }(7˚2Is\CyF2dY uOCfЂ.^E=fmT?jL*qHl4vuy䥈"G;UQֻF_YbFJAޱVl=u鴰,e+H7hL0fRr50]E}҅wJ\ "HDG %8@9IbHI}!v^v?Rޟ <~\+Dyrzw:vi>hW]Я80Hc|XCt6wE%Đh`]oi[ea`Ϲ9 J%V$wrb/eX5e.Bb c!y18گ*T*gj<4f+mb8VIgOXTgm`TmӵD)#{؜ # DBMĐ"LSx1RˉDa H*&srЃ2+M/>k]xp@nH=3.d9;.Hz)iѪM$HSwgM_`Yǡ;$3ܼ(>eW.|#;yԚs{-5rKOiwBLz ѭ+$c`d[23\޻WH/lq2|!$9ǘ9*e|-b8pyXrLJoRbԊvBʒS ?^BWYͦn*h r<гnųڥf~ǚ?Q VgMELS]gqxcدvHʏؾC)uǰ{鐦K//Z 0?\DMDR W%,jy(EE꒬j %bH A=~:{A+}VbfҫB$7pHa;blDQy$<+,bb\PԌ,rhn"碿ML221A]ܬ)}L*`xĜnyX#͔ҟٿt,Z[ y}+=q4!P^~m ZRES\ 4^YI Q2ىOL*bng!.Rtq2j1W,7M27H(V -̝v{ԏ"H2˩y &-~ȱؙ|1_OQN]m]"N҃1ɇZB;6JI_'HMsM'>{#2#j.C#\VDM*kgÏ$ݎr"Y`}b!\%1fnHdU؉Pl ջcr}>R'O\~2y,EtUqJ$Ibk3*qtõHէk`y>>9mgzɋi`גy$-ޝO:z{$*u]e܂X\r*, S),?GGjW^ryGp)wH6&nHNNZ+'O69C^adc8VBUBQ@FM>v~*Mpn{T)*bkVe tR"[B, RÉ*:G)n- ƤLnU2% J%y:("^t1w"WLf_SF^e{ܭh95 Gza,/q{ӚwE_;@T.[zacJg!Ω H^nzt_PE; ެk3U_WG7G$W+X̜ >p rESnףo{0Oh$}~ZD%9O6 K\PZ{y u Ѵ- cҍ EP4I?-պW`7'rKBaYˑ,d_t_ܵl=6Bڛbq +5iiQ&DV5TT:ުKS uQ/$N4#)\!HX˚%R;D(/Paz<y힣zt冹Y 5@Sa[m?VT&bhuG ф{!l÷YpZiYswzDw_YU"(/B.nEwiJ:bqRA? ʯhIȻN #r'ٗ|]T9zWb[:͌i/WՖo낍 tE ?e9:z0AL7JF"'9_kVh 5ɭU[h4$}bUNɗu,ͻhDeTOfW*J ^W4 a1?hCaItGnTrF)r(PW,(W)OaI'!j.9SxH\ZbJ^kؠSV# x~z8p c3A rn.vz Io<,tcQ}ßĊK>6|lX@~f|il R]a$vU7JUR]3g/-;j<b{2b&tT7 fǟXWl>&8-FMPC!O)C=2WViΙal;^&>LV-.T\:7g`Jʵyui:I>zR?u!yerb)bE)[s֭|A9#\!ux)>QJy߳a.~c?5d /F %6e>#h;ax< TvCUߓVQ' nyn@Z'Yxf?̩iC<"-ߌZ0QV%¾rLLnXLS6vA e]7jTGw kɤQP4̫"QeO9z-n~G]?v> 0tmZX2fC)r܊czJi>$}zY TW-iG‚caMd/= uQ c5/ZThH{* JP:ouJ";, m:iGt=.]4n3Q_Q*QŎ(t5FTiS\{s%}sჟ+Uv rF9u@X|Sa ǙeS TdM ~-l֦5r$bJd7伷cH6x%Z^F:rLh${LsL:rY32R2ynOdySL51vV p1Wh\ZMZ.@9\NfN..CMGFCɐR%gf^gr7yqm/S2?8\8j(] x*[[ySyےHTrvT.ʸUh68Tk9 72.0Gȋtkc;tނ~ Q`_"VK:^/53 n#?s6bf38<10Zp^ 2 5l08 zN,?<"Φal@VنR3f_]Ntow({%k]n{h24huS#Vi#3OB*fu\nA fS̆Z)Avj^Z62t*T߯$7՛=$}7'-|@1!N Rxa~>5@}v:\dHYx/ 4k4`ٕGy0ۘ>vdGdViZHWP !|->9iS\ 4O-ť-NSYqخFxdCReb5zkD֘9I, ><!|"nz&ҳ/|HX8|b_LF]!AgYgITW>֎ϓ{!.Xb%%N,!:aTǣ/8X˱3.iV/\jiq"> (+:jQKʠP:s?\ߗ#۫R<lw1vCH1Gb=-Xox\N ^1!t>n.Pv:(xhN貍6"s^?bec~&-(=cřVwI :``z:T8G7u0€9'b8{,HcGџ$hE(A@UhZXSћa[G(j=]! fUt8"w4Ҡy-$|<] jeT,IƼf\\~(U #ݍً%ko>&HN _on ޒI+P7*Gl<*?GKEt2ktYLٜ>qͱ[#*5IT;ᗫ*!}= yh0L2%#ʹo!&ӽ,k>XLL.3Y.X`I `;xNsVuYN Gd 03ϒfB׍}5B r;_p꒵'Y4Z dp;4/859$(cMH,*C4G'Fi.' jJnvr*ntX:W&Hϐ U^ <;\wSyrU3B.dak;$5#bek% 4n2bnx[ڶ[佰"ɇ4GX죒E"zFK$KJCXP~P,pkͰ5z(Dr\LEXL}}P8*9x`d|@=[AgLc4|p{~\ofL0< 8:g=A `Gc@)3Z` $[Ɛ_s~bAP MۥzOŭhSWZ+BP{eNA ko;eѧn3d\{bژ~PGwBD-{!]4 ]bO.!}-jra-)[ENX9 Dv?>)`fW k)>\Bj#Rgw׭>OıFM"Mt!o֟8-+žC/?i $/!ٷ$pd{HBs$40mr Xp!ʂ#w(h+lQ('Z&7c7ˬY4jJ/rA'gOQX8&laj_,r{gx?=z\aN #+߄N'-YӭjXKPؤOP5݇[wrUnMĞ\UeMFrsL_|40Ө6mJ֎bIǝ$LQ`+CJsLTjnAsxy[p*9D7'NWuT;}pWMqFc7{g% =h)w"iV)jI~7'Ӑ.p o }!4;)Gj \#~OaNb靤[-y!23@Zmg8<\۫O6&JFW0ױ1`J+7Ƴ;7=w _t1}\7n(r f,o 2AT4U΂RG=1S I(j.E@, `')4.C%Ul_&DGP+eqR&&W EB֜ dˣÄ<_5rٖ=QGg pbg^)9H[woSـ[t1>  +/eW9Ѯ*pQ>=/shmJJ4S+[0>!з7aoY0wwXĒbcXX5\ ҏ&Rʤe 絒z6P?oVM?XyDjp\(P\LP:8և'y-@ f1J1c|qeĦJ>,/6 T+5 F\?bˣ+}*yOۃն$Zl-w?~7ѭ-X }I*H*H`iٖS|sl7"}TKr" ۼ1WY "P b_}0k^bsT^8,4ɛ.^ qlweCrshx瀐D"~iu},f(%4 {IyB:׾BS2 ' t PMN{p3ftJ$͡1\jsXkOrfNrʬiEjM16y6 edv\a;Ǣw/ޑs |"NW ՗l{;;:`k6"1vB}@WWDY^Vڔ[%[=uJ_4vhE? Zm@U*gK'%FpJ\wMW 2@{u\hKL%puN2:;U۲bhJSА4ALP_+R$44D*ʠC4˽pƼ5V Х^Z(*[V_SQ%=cjW Ʈ"ytϠ9c*pE//G&x f(J7yfV>v>*Ud^XcTOaūc2h?%R-|jC,na:3t,U{֛yY{PA8'uֻA ϜUɠ˨aB@sSm8 ~Z:,nX >SпrX8k/)D^n.^ު~&Y>$>,%Ldҽ{aZ1eV"^*Sıg;:Q}S{nU 4NܿkMp\n6l%2uF2%jN@[d "˞mAUi<Pjs(r>{\ ,:RVwhɊRjE3Q㍡rn+H+ϟ̘-j &z]]3z]i:Vֵ8!r|Yrd13_zZ{Zvf茇rd6FἄQ\]! N u.uDݯlg W- c ph29x6\R(+>aXXĐ .xV`/ӥ *fCV?LARAu"4E#1[PӇ)$Bi2~;3c$z./e.-]`M+ n4u1dpcNÎ`gLqMr,;|mⲅL`?;hUQtRoEqs; 8iOs6Oר` 㸘p׊E5K9̐a?VV@TYWŰ#~`7kKA6]69͔ olڥeY2f̮Tԛ 35!U69+ϝ{ ыLЯMV## ; #ƹ3 o/8o,de-ޛFDctjlsN9b[XJKTړC ;9 B݀c>b&JT"Ʊh޷4M`\k Gn!Vm*`&}чWu}ήcp?l; v zU(^ k:῭˵~q=m*n;LU&""0-Nx4!UƓ؊IV&L7`I]}S*̞FR\cdۖwF삝Q!?=|:ځCJxEޚAAui\7J6eF'YdZb/;yJ_o\P0u2k'/ 2(;yAY-λVI \:~F}ƥ Ptha vJbjI: 0ԆD˶7f^NJy@W1~hЙfvcl LJ (2T|y#g|soIOP}h m,5%AKq3OkՐ1?T @"ڠʱZ͟~w1_3a=Fe7up#C`ItFI?WlQ bDuq?jG#@ {o \8/S;X{,RFs?` %L T4`&l} wdzCfz&3\13d?{я()y{T1 ("vbi&z};P,$M"W0./kۮ'ߪ bR԰fAsqtD m(HS ATuJ..~c!A'>6Fuοg,500EI^N`iPjmRe'2Ӧku%U/qa,t(L #%y*Sy[Dz:."g1zjD{;Y6 "_.+9Y`>lY\#qt ثɐ=O6D-<]mUHzJx>J<)|'W <زe>-2m;sun@H2-]$ "^8RGh7T~=a+llsZ}\ݩT͆b0z!ZHCiZ;Mϋ Lv\hk & L R.6, tp7пTeIJ"w.WG& ^,Lo'}1:;p ܯ2@1Dr h,8V35f -g$&:cRD]߿ FUr}ꮑ[qO׫!H+N3Il}܇*k au_IN #6堳W/㰳$ֲDJ'5 tyRko8'*h'UNy"t" 1O~VFw&] ahJ`43fu%ie_俜l]?{윍`)Ү^4U_1XMz%ڄT`zk1c +Y|pHYz@!ޢ΅J](+aF9af1QOb.,e S.şGTn~Aָ!XMr_Zw훮>cJp9GxTXRyħL3COC#b Yeua; rdcv5]N~0gK#E=\n jO |!ᚒ!p?$>hMVlS(qJ }OyGg:U>Et QeNnd"5 )"k'&:SNC}6H m+jΈWI =8*\M,^Zp=s)&e2^,7 !܇9sp̆96O>/QPbEE)_{^f}g#0e2@.8*̝+ hHJE~5.f@n*` |j59Ng~'Ҽc[ n F؉c%kOćiiW7IxPh &ʎ6'!HMDO{xT\Lu*hgیq Yfow<l:(+ &AI$F!j֠K[3kY[<|WRE6{[ιA9|ì _~r0Wm'y4pVz ]F&,QuD.^̌iVJw)0s>EֺhI L~":`Ő  I'Exj lؕ k HP&W+rVs &}7mN %ȉ Ƥ1"t>n@Z`5.wXym"l^[thN^xDQ >4P;~Jɯ.X2nyrr}+ǡh?;{L<`b'e͊{#Am_?u&[sʥcj/i4[s PHyΗKT淋hOU&gryiPN?*J51/ 5\8L'G">}s4;f8 qk?yu6..NW!( d6HQ#˅Z*MzqxѻJp}d>65<_{]lȐ9cjq'TmqtꔞQy ZJ,BҌsψ 0w<SeNaz#n-y;$@ ԟR #P{**gj9 7P}ɔ0/J: rD۴'W)O-cl)aGtV4 ,-VoN I.Fk|S<\Ы[pcYږKC nPt5)\5&߶ϩ!lvf<pfW/,Thzj|MMTȯnZLVԳڢ)'zZLhs"ztyhTc_9.#@q }ґqYIʩWȫ^.=I. CR,w<[,BKGx 'Rԟn@eQQv3&y:An>c q(H3-WT X!Y**cn7>ǀX:7ҥ6G>dA:}/ӫюݣT"rOvB_XW%&X<@٤*I86N*0$#ºh77xAVT=hpAs*iN iw wjyGe E@R< ɢ.'_JiMl7u @cn\B.{r5 M~, #*3 yLQX%QB3ttA iXJ0{U! *N5^gf.vy][3 Y trbj,T.4<uV$v"EUq)P`9Fl)=[ ;ڌbC?6'Cu>_ dׄN?]-UnfkY/C,!e/_QG4r+?-BWOayU jښMnQ·aGCrSx/(S8ƽM5l#-:PwZ-ofyXRSWY_`~n+6ו[a"tEs |ѴN¼=܄wF<\%ul\XQ2Wx65G."m&b'EfTx\[] @y.8S H WͰ(=nQbETTKB1Ɠ jo"]ozi#ppT#W>CK1];ww`e9k/y(fAXuyW,L d:ޕ ]m2ӉCkƩ2y 8IׇXfڢW OZV= 7? B8%*#Ћ`ToH0t ت 1MSo$%*mգド?utf{P0A ȫG ѾL#phP80onzt7"N VQ)PȬ#"Q-7S@ ;Gu哞yjZ?=g3]5¬Tŀ>QNyc<:P6f.vdMJ gVlٵĺu4fCu:g4*/6OpS7a00:3t"=|t91C?a0a;|cjl9Ȳ(mU??ci¯gG; &Kw|C&ldgD$`DߡHՎXMnM\?fJU b9o9Ԗ_cx7~m,e]eRX^- bmlWXl  ݭ# #ӯ& {ebn}MCջh"j%eL!NL.E|"%]V[nho&ΠibXlIz`=%VMD@JWzCoުL]-2v%GG\uٍR AI:`CL"^ӭd=T5KV#ٱF6r61Ż},b$c_:لFڛ{(r&R]\ZIMLt@ `,} [ݘ,FQK}PUƁx<G }P6G޴;gV:FEj9ǤN^BAPp[lZV tW්/RNL+4~@PE:٬TMEz2>u\^.x{Mߏtڕ"rybjT H]S9[Tq"D1w :5ۖmNZ'zlȋHCvz3^T3ddLɎ=2Ay\-T_)bbzsW 7D@n݈t9sZFk몸?g)"~ e:v\3rZn00"TL(E" P @{-.}?_K q}\V֣ 90OY-etMvzcG}$}zT7hG4]X[s?c>+HVzC)iE'hDPχml iohw|Q/pSڂb$m|SPPUSdr<1Xk cqkKGh''lHwh`HH3:^lc+QAN e]ՄsL!b}Qk!wB ㇌FVsaGkM۝Llw NI :-JEzXgтU|LՖ(%?eg>xr5(ճ׎:{WY-;b}aP׺'(*ԏR=?$sB>րzVqe .6td ❍LUju޼dZiCz?~>Wlh1ҒrM9Vԑvr=5uC2SK/2hAnB D=W!IB>ez}5t I^Oy4=Zӭ]v/:|m`>)<4N~Z- la,/,^J f_JYsɋ0og02h͈AU/7H"7װ!j[OX fr\x >*:I*ob/\d8eW׈5qt/fͭ,{:ᚸ0N7;nc+cw+h5jpM3?Ѻ|BC4YYe=]hbj_~u)|kU~"'ah> tgK T7\]CG{PzCsN( jk46h5 ].@fe;R8l@`| pYnNWUy'dد d "7|oӸXk'gF:g9&6&KԞjëRͥ[lp/„GlSt91ާ/$ dK0GcXItz S14E0*2KsCq G"6hM&f6/`jXޕ~(: TagFɍH4)8qŲe܁^n"z#ilY]duNhM>J4tUzuՌ xƑb/E~(LGTRռho󜩚Ov, %$o:s뼙wOeMkʍR.P'je2 xs|4?"p NPtr<' x\$貵OyBLXU[6o֩ P'a62O¨Z7j{PMxm"4Ze f2Eyel?{DDZ0~ !z7`8a yO{y=SnTxCirx[. oDi<Խ XQH3t94]t`c#z]JWh9X)3 q] tEB$f@Tŝux&:]+F1U#({4-41+Ё5`@X"&Nt2cu9DC EUb]7j%qXJFc|ϵ亚,*bu\y!z1ozSʦ*S 䠗x" I%;I vT1GEZ"1Y#f 7H% } Ʊx~(1ͺ*CD@!H.*kP 8P< u%}kct 20Sپ>g38{oQ,˽ QqwZEبdr<3p-/`K$C+zt0_O<"7tQDڡ6>=ǤN^ˎ" _K]d% 0bkd9'g<FHfI LU|v;wཛྷY$|xbt~}t6W!ah}F<I6pP:Jr/43Oy*~gUD:b ԋ?˖\o1a;(0%>~fC1н æa(qz+X;z 4䙫eI2\Wx5G/(B%r{ 3JL3VkYz`i>fLO<(\M8XXo/5,aFʭ}@t2M]cvn55Kk9,3_sC@{;Qf[ƭB/FwNEzScnQ$G@7!3Oaet#>´&& SЦL&\/6to{uOVaK.aht{E3Â6vXrE6,,IGm 6r36ZvEQ$OM969U^S!EnmG=n7gm7Ӧp|/aOe1M~n(YJy1jx2Uh<%Y\AS?sK߆~_EAcb\VyOjd st4!!;_77"UʞOx]1# . .y 埆q/l-M͌u7i4a+? vyr]eG=o^kyA^jzToƧ+>~uIE<6:\clM}~f :a]SZtbΔr&9>Ef|,H'c,ꃅÇ2xK"5h (|hhNw[H?}U6}WE`\891E@zȟ *F:z,ޠ^Xk'|OL#=/Ƈ`El>=h4JZ=Rt r< tԛ7;L1;2ln>kmky^ g[!YaίxV?t~W*raÔ3Gy4ڒ{ޖA[IUk1ҕ#sZet bb'&#ldf"=z wok͍޸po%Z}S -nbwp#1x'{9LbYp`&.%3^!!؎c$M (6E/db%Yw=f0&/&9jSDUGTvQ0Hv$6` wKpÙEO^^#͊SAlWlFG˖̓DQl ) ʪ(ow<>˖VdS2ȬtZ}sn+\%`Yn+e2ND(Aͫ.4{uca]KapSC$WiBBDtۏO_W\ϔi*L~>JA2z- ,F>?ZO= rTx|bo3@47WD̀)`X Kif#8~l4ҝhfjyVOw"bؑڙ%XH2G U$p5[ ?%7"^ݹԅѵe iV Cenwc}}wGj 7@0ƻ~(Ijz֩^q}V wpZ:VEiu 3F _AvxR?f[ŏ.[Pv؇Y$k=iSHΥ 㷧9T3Dd.mnoԏ@.1=ˆ[ѧx7g ̆ÊJ:>y# <'Rs|HjU.3߯^)Je$^,<=D܀1>F{#Ejk vY8'1`S"kK`1b{ >˙=[6;#b.}i?yO xx}Ӟeh)4j: 3 HntL#$EELV&tqR .kTqU6 hq |9 yeRzt>ޑs,FF#.+] yz[4EG]vtZr#I鞯jч+!IEez fkr\8_ru`^Ͽe-n0qaV1LFwѬ?v,M6h(fCtZtGlXB^R wJ1?oJSX;b:k_^b)hc54ۭ^us1,jLOO8z:g{(R7>6q '5ɣa }4#Br" )вnLŸ:TeL $}h]t9coF_iStԡuMMX۳㳪 XA/Ls Q󌏄Ѷw{30Y,KΧrHp|ձG/ٖ/%t蝤.r-U74~|I?(й0V45ve6ț48+R-/MKnr+,)X  'D7Uf8Ǣm#~15،^鵶Q,1Wkc /כ ;G~߷N 3QnMҪ Ja&BjR4g+5XsLn& n9;ʦT`}wHBof&~g+BxV~̪V^x߱! |]ϙJ͢_a^S Y 9+e{O0:NLvjFQcxzgړǠtf^j !jyJ=?VT*"WO&_5wAl\\ aϽ tĩMoIŒp.b/!$J6 0A~p+1rYNk||{?'kw%P.|œ+k%L7Olj"ȏP0$%Vw_{y)(EN[{:␹14Y<69w~ir  zEJ`Yo%-K?B';l2pK"^.~ ܊b/PƙvD^5CZu;"36=0N9"dv;\8R*|U-@b-XӘ abzWRTfYӶg?ØYH+(,SUe_|vǿ1Ef`a#@OTVOFsp}Ac Wx_2ZK4E %2A0!ǫcODQ_ggb$0秚 :3& 0{VeH-z:f.21QI_ѱvB%g#T8f)DB5,Wdx-1$yRD*ަJZVz bj76);#;݁uGbZ #GaO7R{>"gelnJw`1:`ܯDx% .Cʲ'&ooKwsO&VV\EW~ʥs"'`[}JN;G~ۚݲ/>iA*n>-#8*gC;h[aLbwA[ܵA;_8k{nJ]V}z)0'/WJՋ0w*`>Wd8 WyD5a?IÐZ،4P&m\cAשd!;@O^ XucYU{q"H1QfZ,e$T *YR?rNJiY@+XU ވH?eo(?IÑC9׼<Q{)E &(A]9 dxZw1*)dਜ਼>+ |ānARM)(b>jE+=n MyMH6bO !O),E1CAH$r۬m23Հ 2_$u^TѯPw H  $r^rPUʻ8) xi7g fCMg֩ j/?&Qƺ(c޳_H׌Dqt~~fŇBh(NfҽB޾ً?l7 ]%`*(Qy7*l17JEf"dq*ou~eo~>2wI^Fs8hMЎ[ d^I:8tȍJ(U7Sl)~H۬`rir (9cM?M4mZ(F؄]kIM.CʂS+C~$5OT(N8m&P(+iD)WDyuJ_9%[.Yg6Cp#胙D}wF{4]u W( YF{XA,,"6G0o/4m_ѡ[s |0P12NhUgM0MyD<)XqRVSqp+g i?Oy7&Xl|{vTȲѼY侤U۰d뗊N6̝Rb\DdR@-)ӳlcjbE'Uȯi 2cIp?ƆeXM|1 }W/{rUt C#4K,IcD]g.;PTls^3L751һ Io7r(z]) c5.4bMt,ѬS RHq!H _Ļ+ijB8W~}uF2rK0HnİjJ- #yGUdGaaS| T ~cՓtU,XTu2}-\y4)GrTT<oWֈmSwLZNm#=,x@ Οx?IiQ2 l3Dyjuh[k>MQ(l#GXe4EBtmZLu% 2%{x4~ O8cPn<6E|57K3*$'qM@Λ0lIZxn K8ٕttzh4fS0.H-e'd7ZSqal{䋄yg}'x*Ӂl{l\)=a/ȩvZe~Co[bC lb)2*Xlժ `tDџvVE[gP]t 0T140뫬Oq{3n"5C:邏=C+rϩZC5:u}&'Cj5ݷw4`ōf5ƛ-d/Z^dVO@뮅99( ڊ00^-(1LdEAпSox%oKg]\I.jJo0آE?X`唰&Ug_*M\ aEy`MuSO/~(`}ʹMD軓 AhYaDY,SShegڋgwn7HfX;w\ j3 $jԚuA(h-:9}"; $֘LqnkV˴ap,U֍)eñ -܉k9e Ngx"|SnrbѴB"uBmn'ڈBPU%OܻfZ%s3 Un~|TOZ<;Qb:Վ8iMʂP&=PjY2 0:/I/- >5XQخ33x5#_ſ0iSoQ{hdN i}ׂ!z'g"+F39;P@KhkMrZO_Y+"谾q^+ {y=]E(:!T3F"+vB/dgF@$2/FDa~2.ZX3AU~:h CD҇Q ?H <@"*% D. O#=Ꮹt`6n r#D#CwlkeQn|+LbFH_Qǣ44~{UŸd rrkk)6H/t@Ј,51L4}G{>6rhh6EcvgH6 & Z=uRKM"֬j_ 8<$O8uZNھR@By(v,a{+3U&{>R\+K3Xm@MA"  %jP 66 m$WVL0,9ؠ'WLh_ς4ꘫ |uٜVCVrM;kn=^F%SaGwk~j)-.HA`ѳ`tUӢ4N:у.͖XϯObOü(y]j6%HKUB~bCX;ވ.{xp %0 }78pnxigyQ3 ??3|C>}%j-7+?ѩ`]cӑht'8|zUYIj)~S%^B#nב`/6%> P=$[|IHuKY@jj7ι #Žz6XހjoqrźhX6Wq1,pIҍ.>܆~j.n<(RRL/3>tbg?IB;+g nc=m2C~!N'#ci-n&4l]2m0bep$Hci鑴p1hNFxBYgEa.? ~m=m[KnZlk祢/&̴Wv3K7`dH̲W`SjkN#(җ%kkA_D1+W.qa2:ZXo^uU ;S?Q-ِmcbK[ՁY5lm,ǶoJi:`S좹Z\\0F5?q<=YwQ~Q $@$`J`pf׌NC{;2FJʴ6\&o0O{4 ~.жve_. Ǣ6+I!Hx(ߝJn)IHm͐ թ0E*O+Y)JZ/a&] Vbj#0p$owM FzKlsk cO'DPBW"dTGg6Ϫc\(.w <حJZgO9G)0@ @# 9H0;`D 3+ !U`'INs_`TL4}`g,tuG^4>o\yV%,rĪv]ͷJ$zFLK2_{|UR@9\ė}Љ1dDpoՌ~)* & [y#1^o6"G}ߓAnH]LOvnְhI\2x VWٛ&F@ܳV@Zպ2F 0aF9GK͑E;kCыBL4G,11TQϳhWc]²BI - &27[Wb:GMuK6Wd/E&_O`XUGœ*;EKb%@֐D!*hQ>{_Cx#owOHa2ơw<'  ,R.^nk"2_ʺ/`_25Ս":ĸL砼R6Kiw䟤/a/\j+U ڮh?x : [SwY4U@Љ^wi_CKx\$iVMe__YT$-Y1ǑFl+ʱE9c/LpĖ(WY5a}laa (4 zun=+FqjoN'"k%(}R2cOpۈtQƃ=vGC3#2u M# OӰ-609 :cjlɋCލ*3ѷl]EAL,KI.:BA|WefyZjJF 20dd]JZdCR֜ܧF!oK/H`tZMF`lR:ycmn>(rѱ4,&︳SZEYt؋>bױa0@«)~2rfgWD~m4x? ?۽i}my|)E樵H&4Y=İJBGhA/"IЋ$UKW)ăkz=myESG",~ 2u]`ph͒%ܚ?iCQf0E&#udMVS骼5F#:X5@fGsHٌZM!:^[]Ô Ez'ƥSH`d:pCyuk]`q?h487XpifGlWd$x"wP0k1L]/ٌ6ٚp}KՀۏkt7rB]-gi3(>,2sՍcvB)9CYs 002{6\bkp>=D΢ f$=:~RZ~Bj4{\mSTVYyIn~.shc)NtoLsFdLٚ(tË eI |sjRIŮ {+LJŔ#~x^ G_dN7xLq sFWg 1 vlkr瑑nSGMΉ{1E^A;׫˷yP!Tt4T|kg# ,c 8P&l[{[8! 8 A-wR5 TJ<\D 7T*4ld7Bբ(vnɳMlFw4/25E?|xi&y"'kUD!ƹ|-'Ӈijǧ њ+~uC2lP1fpHXT\[-G54 ]U?W9E)j`i!K.fz}䠮ұX_j#njCi.B:K[lw6pE*n, a Q,YϬ/'R\"ZǍYٿ9i%fR݇ ~>駚0{bt:n $j7NGfqpJ>4L< iCIݽ?F? 3/etwQp}|؍,p7Cz)7Mz,(u>H M wwn LH9uOϬ2u0Nu:RNDURX'V ` A,R>A DzZG0#-Ox-!jIT9zVsf0t*;?Zuk]-辫FDPH[\,lnPNZ!7Sh|n'zJ5k.r:pKO*$mll Vv˜Nd0Hܞ݅jklIxXm4|Oti k AZ{_լ)32cy*x.{ ދǝhʎL@+"JV8N:9,"A'd^嬄2@͸r('J0񊉩UZ~:AGO! f+n-t}D,eYTeʽ+@=6B< 붻8Ȳl|A=coS20JVFU/~"!T^Ar1qcZ;&;#ni0;@zƀxȈK>yer[-\.:=) w0A_ߗ.nhwڿGHDQAn I"N)RJE`P738o?`^PO' WkS@j,rE߈ ZYK'/??Z CEC_ۃO;al">hP~EZ)R1YmݒiEZQ$<}xC?ifgwom,.ơdf/_䭴+q%xRߡvV^ުPI/8Qt,jcIh F_i's!5>d N*Oa);fqD֚U-i~e>t07~QdžXp;b`QbgKKc )CuG/変f*kfg9&N5|嘇;-R9DŽh"6RqFZ%fջ@yHlr*ٴQTvd dr[lԩ{ Ǯ 9 Sm Tai .}Z}Χ k uEx/T۸A[ק05Pd`p,uC9x$,Z߰[6 0\ƒf5ye~abϭ"{-: FPK4tAZM,kG\ޓDe/Cft9I  l(E}|DO]G/5V }$԰=*y᭎ _"̷γy>ÎwX63|( "vC kʸso] }h=cxxvjn*+\=ώU :;"*u/)=K*QB~ }K$j k=bhߺ鯦LxεHETǴ8-GtK..ݑOfXO>"?Jג3\mRe HZ/YoȆQh._8% Zc>' %) ,-TjhCM0A*H^>bH~J_ eFf=B{5$@SgV%3E3Y5>86bʢoDDl,k\POG/[.+l$go W9,E VVqJ-H6VXOEG;\~ !gaȱp;j"}KmփL QLg8&*cxdqJHDCذXtS=)ۡs?r:+EԴB ^ȭ㿎ֳaYٶԐ X̫:Z6x=EiOmGH [9x~vjmSE,Q"FƜ2M=}[B5Aj>g1`pGZTJrswew7cfs;ЂO'V=5yBpA\rdOfB)>q^d5Z?Jd)w? ?L)Y= 2qQiV+@| lj UO Q Ot2z(T|h`( Y#y:9|om/>c[Θ̟(6Snފ! ﬚%3 d/ܸ=@jtq4aVgdg3f4O 3qZnŇ5Ǥ2#ŪUg:ʣʀ>OH TϽF uu[w<*gF=r4-%MDzMB2Oc//Ym,2|.*Y~$Ե͘o XགǡO𙳥R=B=qu/!e;]Z:AeMp7AwITVbÞyM jKr=+HcN[kG];wFXAOv{{ȂW\aQ|)`#uV?U|X+7% p#] cI Z9/'W 6YM U#JVʞXf^BUzC2ZTܣ])!Àf:v}" -1IeS{RW*ܰkwo=C燷 LS**F~N[(2WW2|SR)6@F&@)g%OpY#臖2 ƜZe3oÁ3 I7.ݕLЪTP_IU|uɥ4*sɂWD|eY\u9kV݃@2ZtPSYLp d66Lٖ7 4Tgҹu*(^ogSfg&5 BpwU&}%XዼCPe#Yz?t0,j[ʪ ;xڦVK-N9P2U,Ie쬌Eƕ*r ?vق2Ǖa^ TޗgA Gf%?NgūJ%yUڞd |[d{ZUs &l|U0JK Z"á/F66;ZuٔBrSuU|7 ;U|h2*"c)I$#UCŰ!#dXڗak8;0wxi=gShR5c%uwK ghw5 :t |ӒGpu1 Q " Z[ۧfBܓpHRè濁b(,(581߫N kC7y":߂G,_ӪƗAu[#L52 LϕC ȋGE_sCc%5+bȼKE?K@RlSՇ!blc| `Ȕ/+yaQM/3y3 q5-k9VtvGUFJmH=I Nhw}ahDDohur.3Cs k9ruEzXpD[7zeDj?wk\C)?F x?lC'k$gL/d^ΎH/f,hU<=́Y@ MVUj}R.\y{O=Hi77ţo㨇!=a#ďKQurD+\,9AבC-VRYZaIٞжj!lIT" _E?pe$?#|VdYJԵҔ:NvU5jBj͑fHXmM#&ذ3ZGӵet620Sѓ=ѷ_ ݕ"znDYDV1—[wUOJXki˾%soX\eh@VqMU ve[_'Ga[ܢfy?0t”+=,H@~V2[m<Sw6fVgQˀdbyXcPw-kV^t_ڡ{lx` xiDm5zsv!崙nX1֔1X-`{` "* Tid@73%%72(`@ [|Izx}Z]'B`dTj Rr̭i[sM ű%h(+h`e&PKІ:(iC!sdpPIauF;oPv+8&'B<^.%"oag!Mk>QWݺD%#tpwY }[0[Z|SvTv1SKR#恍>ɮ# ƚz9d^LpG1hd~tx'6gpoq@wC ::h)8m 8Bg{v$U1ٙ+Xu>\8.b~mL R9ϊV[Sycyen7GlRMUlFh-l0{pM0i,މyFC);xXؚzmRXk |k4'⬹JEM;-91`C[0.E >FVsvCShBql0Zry:e $bI!~D~!/8pȼava" sxq{7yНaV9|t I neӓx`1!wB,eroo:0adea2޾7PSԖWRf6 S6`l3S|x+zcCv Sݬ}{B=`,"cƂ%TU [qw ;Dn삕y{Z0Hlu( cݪE\84@8;V&[g y-n ? E9&$vUi:Q$GDxeRm7挆JOĹar1`;EwOE/hL蜫tjtv4T0Ǽmj.퇳ַDjTfGP cOrv pO .QV>r$1^Нvh3'!nQi0c&ޯW~|Ի Ƙ57h$natR cu`pjrsX?݋z߷EA\sgBWzh<Ab '(ǎA&_H͚Aq"8~3)]5m #8עE"֛utUJMbs ˛Z+P9)$4_>]39zz_Nrzk0$$gTAbV҇ѢG<z˰ΝeEoLŤ'Lq+GO*]79_bLij6]~]cS_F^^É4u5x i,D!Kr?D yMga *ڇ" Rgr˯V:$wDfgbwq]|%%r N-@C M~c ΐ=/0IlGÐǤ`QS36kNWi6;qR҄tϲK#:X)Wnyٮ 'KU(Ys92?<1m: 9vrS F#ިTQ1[J[RVpqMmjOuŠ Ȥ/1uv9 |G҂^,ϻYv K%/@)` n5E(KI%_ePc6IúxvxZ㧕q5N^:ixu>eOpӴs5ytq’aXt>RxwmW@>׸%9 xB埍dhЭks 5ssQ2\^q)$F#!.Db@#DI$C% hU],<*-ɸEy 緽!"JۼmWaZ6b?5OMrG%˂';aN2 g7cٮ܁I|Og UbAeXkZWi=:{ѦX2?Aͣ.+l,y'L< J7gjEz-O':z4`8XYz7:g*$t?lcR6/=telh0S&ü X~R +Y:Q^ Φi°ܵ6JapHʨ+s'`{3pl jA4pcT OO:Pt(CyN3p\(S5䫿S]5Ѥ?:0rq_4`lb>A~Btpw>툛U.jM ~.xQG黈 ބu-U @V(5$}vB_{X&R#V<|+GG/xn(pr='KpW&1N{KFK!6JY9Mk k 4 "v_r^i*F4gR̢cM ,İ:h=R @f)]l*8~XZjrm}HR%H^ѻ4@òQ-^GʃQx>r8I*EMPFg_W1݅FZNpŁ(qf4fP6nhioR!292+a[ۇF Td+T ,nbjH.~Y6xc㯲':fƏu(ƻ׫Ls8;' _Mk=7nEK׀TU IP-^e9W$r[`bjTi{7֞o<7^+ҹ*B`b@P2X fkJǑjQM{C9lO-VBBE#2^"BZfIx($=kJF6%ԯ-d0 MXƦ*1V;C&-Lr0ddpʪ Ҥ90$]ڇj9TeEsF`)#Ⱦ7h&1z$ X}^4Ԅuægg,Dĺm{䵕+ ()BG܊-#6 Yp{+!ߠ#R$9VA--,IR$WMXw:HA\>ע; S |pƵ福 )\mi̇|J-m js5`vB/ 3ZQve.p9ؘ@ w#hM}e9^4|Z":ŶO$P;v+a?nә=k^//H\ gjI%) x~ZʜײB"u"3+dm3bԯ2uJ/ĎedC %f1=D!O_!# 洝0P,0B.g~p#aF}nq>`F\f 9,?^SoǢJCRaNK:_!AQ@lv!~6!Jj}Ĭ"$bY N屰gl b;"&G}cq= ֗#r"[aE|U:}gJ䏧goꝄèa6·EI!k]Ly%4T9b(HuRN_\HM"ARڥIؓSٯL`c%YBZ|P'.CJuyhRu[w%MO8~-\XLڣVg.뚡RG^߳:WĪ ɽkktEN. KZU=uM\j.~0LC3~,=@nH ޑ[!G5eS΄=3½}5q X{<:Ʈ? ~Ԟ.ToNW49iZ5cb)sGw)P*|NN7Ѹ`Ѫƍ=0B]ӭ-@-&0o%jyY&^Zp>T*`}]7Z_cpWV%|3ZKapkx,b;e%$AR>tSl% jݲol' u hDaVoɨb4bXNb4q9ޕ xn6c1D-V#ON )ps\UԃGVFq Rpj`w)b*R %vM% D0G赟Go(W:0tCՍc3+ Sڽ61Ae)'QF9$ip[сC;JBE=ϧoKgX /" EeΘεxXWRwG*G^$uF:nPF_ӹ`>sNxqc0ƞ Ԙ|UB$oty {puBOK9"XCdż5GCd ާr}bznFϮߐzH:9=794(TTͯAEhij\WTB})ۀ#A>vkA]4EHKe`Jl'9={*.?ǶO_aZߝRP(j`JɡPm'lZ]_C<>s/kuY럥̺ EvN7(Ue9oEc)O^+1y+Q#ܖ^E^n'V;GsR@olmm'kS5@e |-URF BHiK\($δFᯭE:D,N9 `S"aȺNR ѳo˄i),Q4J*乩+ۦ"eO~ME:&vgAjbU: DJZ0Ƽ=HУ%hjé%bPLI<% ~bS4aFN`]+ȅ!iD7yǸ`jP;Z;ܤyOeG;.<{SH}y2C@YJxMyC/_PM TBy;Fz UGj5F;v\^yIQ1LkNŧؓ:N'm.8&+8i+ʯZsѰA"ZC 0֗,(6^L#&G$F1\WpRNmueCn'^E4؛*y"验|FEt;RHm܄hW~߽F*` 0j4*\^QK0ceW(am[ʋ s/*LѺ&fXoDe]Gq #';15Ha+X> cb;3MZhn^I(a:)]l3ז9w`Uь gfh45-O6QW ״ -FD[G5%XFgpoWW?R ~8\[JJm8a+1eZK&_`8,>HY>Fǭm#;C3N 6?.Z H_ӯWfȃ7gAY p׃Z+ cv,;B [;x `/W%Y;9tʋ.ʡ:,EQbDL*uoI)\q`hsxX;1N$8%BXǜ{b cu30uTHadϛM;JvelG 0PJYYM1߅3JTE>a򵓵KTԣl1.{-f%M@ }'06/ʬv)LKۗ8GzɣdDQVc=tdΥ\lDM-qf8WFv4/ƋCNN8Bv<ŚO,NAw!ur˧H#$vr ]JS՛Ad,>1gךńv"YYh`A@xun& 59չޞ瘄$7pٟFsPpgQ>[3խK%W%*M"s&5h̤A+bZQd]g&l_ Dгge@޺G[JN(y:!pDiL$_FhQ)Vh߲$pkF8b_e76q.=KKizYB X=h ì A!=-)KcW)=9$`y$5L7L~OkpP7Rt`?W QHVT_R܇AO]D%DY GsUn*ؠZ>O 7C4?4~>0g*׈łCS;ݴFUA]C:,^:)$rv6ro6.Mn)#i^\u9O &1qͷ$"ƍhS枽\|S0̠EQW2CI{ dH" +2Nm@ui-Ni[PSxssn.?x6cDi[q;H;u]Prvx Bcӈx U5y/@^6۲*5Ugt&mߛ_JVҷy8r:.=GrmJCxJ)Gz C袥uF*s½B1p9(X,JS8<1X p%aR1׋VDH\t۷ꔨFWsM4s5сEeXR O|1X!27 WԆ/0$EGN*g$|MCv;`[āO6C X0lİLyZuQAQ +pAB YӟO Z 8SX;'G1E%Y.83!Y:n:!#_,Gx^ x< ˁj>$Y%:f&V6C@N>'381Ŏltϥ =5Bk]6.lyИI6J+YB{>(TɅV,VUx9nC>{ QLmX;5dǥ`CCD:5Iz$+O[ v^2V^ fDzOoL$zuٟR% ps {sgki0j>rk:BGB]_"d} HV1P,ۺB kԈU9Tn#  sѺ`3 }6OR'C%GY{n:V8Ϲ |M&ǜ#l~<@𗱷jd%ZDqOdFLYnK&UI0Ga2ŲHE. &s!?{I].XOMf vUUU0j}DgU[[w:{-?n+M a94\)cxB J<^֖'ZS)-2n%A)qH9Hu;$2gQr@ ]ܨwnp>"ePjm6[|ѱ7͐qjK-][)!fVG9E<>Ph Qԝ[8QUp@-OștC#z&}9y9]زԅP}ͪ6+Yc-Ձ3mhwЦD[#xr죠 O Ԉ2Rk/OPR|vcE8JG;vz&IMRO4˙ef{7Xt0Y>"l"==XEnǠo8P}ǚ+$_ NwrK1NneY*EdV[6YCe΢h "ɰ,TUD2/*Vy6u8ˑ^‰҉и['e#n/ib[v7H/L]ECoY@d/Cy5#*oMkT wIa# 6 Lc茣;*oJvY'2.x |DFlYG㊬T MF7 ՠrnO-"5%P{ 6{8EBd3 2 n<:([xW#J7*!h9!lxI_4ȂG$ޮ($k*<d6{}^,̊7 0AO˦ib mpcVJBv jim%*,{6f6(hV{Ͽ _"Ub7`=v(YoȽ# %ι[EɦB/X^J\qz7gNZprT(-oq\*6[\0dB1 3m3ǒ+%Ol֋Ve~}DVN e,J vCҞ{x՗~Fm =~l'o37/&^Yl~&,[?b˷_ZǓJ'"@[tqƶ1cΆIl{;jS]7\05JHJQ_k{@4_i͉_*kT+ij^$uٗ@C;Isr'2#X3K&FUEK7;?w}mi YgЋUe*ǥZX\ ʄdMe o :F Gg(\_¢}z䥣H ?$ʗ;[ʴ:.y|1g H3iPGV𣚫֩Du_:J-CN iˆ+8:6^o/+ul>FwA#ʳ;?dS%O&b1LWJkUsƠ)Q?FLcBVރ9?zqKU \{vhVht`nd`lHVGs*?c& 2+;@{v<ՆQ\Ik0k彄N]6gJ쏬4 |鯽qR  \nKnA0zUNvL)`Yr{b!{ 5X2Eb.$ q#dvo3ĖO"LMCy}書ӪixM8v$eҩuL#OZ /Y7BRػ'&">:%W1]bW@-m&4e\oW 3Be=WߤvL[Qo Fb$N#-ύ{ (*Î81~abL>V,ڨ6@˟6iLuFZ!QQ9V'$Ctdc̞+D"g|ko-Qc:#JMʞ¸s-3:bct[`o(*3N2X zb%[[G[pQ| yR:?Ⱥ+: Ɨ6gD]A-y-! {@xvtk+2=q%#բs-qӷ XA mFGAmBA'yM].qtN`i+EZI= T_ ZQFQU#7D- rFhăsq*7, aa<4-}BE2O 1y8RUp#닃0 |:slM׎9Q଼Vcokz [NCaI(d~ MG"›qJLM*[ٳ<`8|1;isY&nR׈ܚ+G2G}!n^ʃdjm•" )bTFg(Zp[vV,G^r@v!MW::qÐNq>Hy~(yCVTtmIrpfRKr깧V ܡ+qiX0n e1na酬sdA; ȳ2?Ce;9i 7F1~|0 =a2ڔsPP>.1%2!qk*gJdЈ5Y:0 [b :d*0$S>动*`#0NhePՠf%p [@4 '(Oc[M iXy<(ATKLm)J̭'|1!l/  wju!D48LљGKuz_׺L™+Xbx(0݊FY,рuPxՠ?J7!w 1llvܑD\}k^Xa(Se>dHR\ 'X: m`Yq،NT5WMfV&ү_(UO,dc?=E ᲽPʖL~vߞTDǡ|ec!/ T|XL;h幊J)s=n=h3grn ?Pxm+8Ah(IjZe~ev:^R̵Jp~~|4#Ȥv<9̟(+.#(WI=Ie8J 1|Lg\{C7)@bљ0%YZ.D2bc N-hwoN>{ qZuGR/`ˬ׃) eyYWSC "pk_f3-\eŒIL=N$Ju2!Tqv_M㭮3E_גj3nAR~$I?lܳ`!PqO$Xmw1*%^!rWh(N RG1 h{Uۆ:]o*7yQn/k"uEVfY{"Q.C!vXwn`.F*+婶*m72bQϸ.]HIŧBRtHL =(FjqC)oiPU }`mm9뺎&L[%}BXh.Hv!1$c1/솠ru+EyAׇ$^9^f5G:#/V-S=dI{%)pi]LIVdk13Xt:0Uylwx]4 %gXyN?1 (a4X9$>EKT?+XǏ=@~SQ_-HDZpAbiGeYun+Kա 83z ޣ4?-Y\&}^ f^A>Yu"ΪXc? km}Y?Rr%u☩ ˽%ݮ#Wބ .S1_)Gjeaf]R WsJ=Va;7~?o۵RMj[4ȃ-nPZ]% o&nf &1U0hGGq0?~`_!wдZ0 HAU~` r9jJa? Et*Yh {:;YhH HVrFxY2;-sп sF>k=T8N~v _:'dT^ؑ[ؖ w5X (V}$@^ BeoJ^J?<8nb B)4,Kj"p3:̒̎k;ag/Dgu$9̥L9 6ܡހ,ΎjH*TQ5rd ~?a.w-,C >}RU`G@8ғb#Iaf kX.~3í"APJ7(P؎ 3/ #_STchsġ3Ncs>NΫs* HaoXn/T)U7(Kp6L`{7ʇb ][_uS?n?Rag?mhS5KZgHc 1\6HGEQÞ_rӐa{9c'IO<J 񄭊0ϖÇDev;d=3KGB$q*0_t/Zi>q@pj"ש]-L;^japD%9m!Qϟ-l'S^XMʮ4,} r6cn= %s샯(h=ͤ~")hS7 k*Ηc23`軇ְT!ft:LAwm4jOX3Ik*($U vpdC&eo!eC>=S) ģ{!LPq k 9',3b˞($i;=3M R0jCɑ"y{J*Wq/,JLn}!^8 A\r[.V$ת"Wy8V1.Z񈝆a^̴>K&Q寔]+14DI,VLPb3۾:_ҟmn I5`qoS+$״u(5p0g@o#g- )hE&o#>U7$R V«J ߵzпb-CTMNgL!c ΃;̵k824L(?O.J_*,ELJ.6eNWj'G娐gSy+Sۍ]d1Jޛٷ oPmm<6 =eSwHQ% 4y/ ɻi"=aֵDc##(޿U^|`؎dJNj ߀2esLk=gQU5 '>5pcWr^v7.묊Pf3L$S!]=֖4\wgR*#8%)7WͮrVbp] LjQ(lry,Ore)O']["Űo6$uR1;'Q+|%c,շ2Et$uʈ4,JTPDw޴t8Bu!=V8J(Ҳ#%̋GP6.i]>Q硜UxOHÚ+ݪvZ b L?9PVtфP[cj?C$cKRn𨔺65/xiWn*< XVv9!n]2=0 #-FT_H9\/.i!' R+Y0ψc?۬QUuL2MO0E6 X3mm5-`߱H- 'W o[fm,L|Q2H[nߧ:`/j?LݰYK5>??rmB[dqmR)&jX1p3cw}4\-MB`K/^Gt;8_fxECԢ ;Jza1~cA)TD98!<9G#V*e$p'wUYeЭ\tZ1 t?)s٦&S }rB8􍿽{TBw<ʋU\DTy"38t̘͋~Ȃ{Ԩ O+Ovcj Џ(cÈ ;> C_آe<;J~M7އ4vyÙV jlW{`aUlPV^PYu;c$MLH)UPk՗d֬ U`$+Yo(^R"G=Rhapk7`uߥADb铗ivAdD*3iM L//Mb`jaě`3l sJM@@QXkF8Y̻ƞS綸;uWdMXA 7~$ $FX W}tɼ8@Qٮ׀ Y:qw:2dSI%˜Gf֒P&o/H@.WOCqȃFT1,Q/P!F+:6Sk\K;_nG||x1s'šxN)֤Ͻ$սÄh 57jUN;lO㮱ވJGu8Ƣ ϲ8S䬔f/Cp Ee?< gH)%]Z$!Rd@B 1@{mU˂"!曉V$u> 32UDånKMhjprI_kc S46Tw6}[5Nf$7nqef7~ngMo v ǝ>-L+Cl9obþ`>O9"*S"821@:ڃZwG`R65\4۴1|5\ >u_C}2m U-;mB/mzJeֽO&A)4:3u. '?i#3N1l^l^I p?B۞ qSJ,mPn(qBtf}䞧"db'ؽ;HKm~v9qꥍ?BSm3e/m,~p*m;ive欕ލ-bp7K+ܲa4[)bOS9>'z~%3|44/7 vk_{Ҩ{\Vnx؉`ڕcs. gw *@`X2-΅K{,TR]VD5TA>HC1X5`5f128u ^z4A@6sWjEQNYp(CB[6̅@4WPqe1\gzB3ҮiӾS`N躇ޖzPn<%}BVcxU86S2SBOǚ),9?JW6͑i-܈cֿ+ͷNuTMcSVMv[C? X]K\SzXsOS֙3N Ԧg-1UD=>Irz9ŧ$r_hQޖI1EN]'I2-o?~ʩ Xݳ u@I,?2|n<, L5LaV".Tf)kIPzjc7t{Mdy/‡ΗHRE?tEҲL|A6z˙o`s8<IgV+'^O@% `e! "`:$(ڭPcwJli™ͦ>Ȥ{%MX1>QMCqKj D b2:#WҹRaT:Qa[KPUEΎlqfRk]FC|j+Fxm(+QIt'W٩g€Y{֮b4Y}@㊛-V&1^Ã: g]8_.0Pvb/WѺL瓙3<Щ չj9m`HŽ.Bs!ڞMO8oh:)dhySss-ٯ{I;ƽ/z6kHb(د\I0ٌ;P7UZ ]K$:u(;}1~>GC-?#mytsD&U=z[>DXj^!1j:oTq qDdݝD[r,ϓǻؙ*B_l1$}z4s}"&$ ۃUW:I)Ew¿S^B? |S`FT=*8/BzXBI+)\$[dr DD*})sAΆ*l/yCE#%60R< aVc  t4aTNmO&{4כ8F$'_ޙOz!'%M,9Mnк&LGKr_W .CgMȲ_^ӢT^~}@Y X{FYT z75W!QImi 4tM2(394y!҈qS@??$¬վܩ?Ta9iu cR!`JS9VL98l뭵NUT,IX |lZCB`|^f73t6NPC|a*!͓8 v%9ONݫZݞ4o9PM6TwkY"(pB"~Y V2r#C<5FP3՟bw),O|RfO5.tzskL,UgV{xEkY'4~aLnF]LOKglкqR mdp=8w%S/m6 STx/O2=nm-Il/W|%IIQ{3}ΫGpHyZ75 J=RQV4EmDtJ~M&m?Kz%;%۱b5+<4b݂; Ju Vh}#@OW( b«y-xzvȖLOVzp=SQĠ~dLᩇh~7WxBWJ0S3k#҉@T8K 4ϐ4Vp ,&{jf+'VL94tS۩jk 7:cW?]-DKoj3h\-*[r}KU'T /0 {[/pKRHt#q)K*{@uM ߶D!SJYpK 7ku.2./Fl_u!m ➂piIad)THm6=ūzri3S[5TusX s\.M*?д4G\CWɛb U10{v `nFt18y nMp.\ /QCxO2u1q `8}2ͩ_nTJ֟ux8ٙikZV-w_FMz_)|H@C@F|y+],80/qՆDB@G&^+7ш?-?%`6T{uB>1%#݆0+=`Zsې:U)}-XjGf^t_#0ͭ<[ d]P_R߼4]ؚ5-'}NxTOk4"[8ص@GI[ցL{Di]Ͽ)1@d ܜVG. Nt ' 5 @̒d <'pTHa t;Vݾ瘴S{na~%)Ilz䱛MEAR_Džk/9NcyhpEEBDڇuXJr*}I,qtw0/ڔ«h/ەƻZ@|Co 1J:Ӑ#k6dE@["r]}E.rثpgzLLACD]_fw":غhA<nS&|}:9CKB.h|;V&β/ҿ(971ךQyvB+v.z[߻GB:Q!^K{bHqT폼`L"U7F!UjFD޳~5qhQ.H2o]'ix>&FǁM'o{]@$v)ص,v |@C#L(B]jdwUD732[j'b\~8  Hzn&)RFx$򌧁fE*3%N-f+m g հBbw%fJp~oJ fMFvbW>Wx˽PT ::OA4p7P%-,=czvl[pTIqN@iDrk< FyXx;rߐ" jMO6K IE[Wc\s/Bzf`EFI$=hV<ln?1MB~[ttJ|`:X:6^C28&xEY;긻L&^p= gUn0շ^˞sCaplJBoeŒתX)3S~N+c!d([Jm)̗i-ˋlL>9t-8I:#GX3cwfX?Uv>Ox%ڸtUONqDkf KB mշgfݕM$_˜+Ч 2dg}5G؄ަ}i&j߬먱12A6! j\L^"zXځ(:aGWd:0+mOs* #=b|ZDcUz!&HdYktuṭ6Xac9:TEŗcd<; >&`&'>qx|Cв ubێ~Tuz qac 5YbӛF442|}ۄѭ@O0'_Ly֜>a2s&mnthT 2^X-O "}ghC-tZ=lWVj`?]VkKHJs/8ͽtmhƈQ:ދEZMfS؂5 ƕ͚M'xxDp dפu;?8qS54y VbM2,|;pV^-/@=:xS5{T)j Sdo)F56Xΰ#t>2HK#iݵOQO޲^|†]a0\O I,}j/P*( px.޺E~[,3"9$|LqcL)|R˥δZ 5BQkrr1Ő'xS{$^v x#xAydZPl|ȋ2&LFZ$C_N7_8V9`͏|B&mXhfd1'T73k1X[-tar}ݧC4Kp@wV&RRd,%y~d_IL733@3u,3_Bd/7u$LTb[LL 푅ӶEN[u,//CF1p TyK%d5H'ihӢ̚^,CqDU3v>;OUͻՃփ\"&o8N0%;e6?V8! !CR:A3X-}H){];n\) }.Sȧ0IXZ2H9h$/nʌ_:bVz gw*T3)ݸf:?y &;2Xǽ!ttF6}V'Џ".E9U"ݤx5y+bE7CuZMIU܊DSme eZ*7TY栟%dۤk[.gF0*5Vl=.pI @ue3o @Za [m6r&^}mi73kWc]fxc@c^5@ "Z?4 VC6,5v㸠VY\}ו=j w̿+,v{TN]'claZQtv m:#{9U 9>]2P!v$'h0{# v#yYDm`m~%E0߮-^Cnȓqnp -5?޻VE& "Gr VIla:nKԅXHHH2:k8q$4{ib%lq^ J@ ǰZW%M( s wh'r?SY,Z{5 R*{ g"*7=@&7ݱ:<1-C. Z!\*{ mSP[EV~V~kH"y@sn##@z͕^lqp goןbf$`To=HD <0J|{\eȉB,N (`%rm~$;9N;6`jN\r,ڒ@oqİ6 !‴.?S -L5`0zzu?H)g[$ĽOԔNٔE2!5Xk,b~~$.(x.QIxɔ WPX< Ik r9lc N^ȺL$@xpE=UPG*PpD6v$2tWyp&'XV ╏dëd&|.JWbγd퐐[<pI8Uwۅ9 O+ di_rǶ:s+(gQktBJb{$}n%؂VV3|Rd*γ #i?^ZT!j0 @ŤidsS¨Jȿ?4+YCdXME2HʱLFȱPBRe%WS8"q)uh٤]$b췚c}!KUNsɤ &DE9,\!Lt ^֗qjnQHްcb$o~T7[1jWCP"yR4L<jƊi9]`:*,GIS-h\E{'*겲F$d "]d]:awT#K8<ʲӫCZe/J^}[W~AĴtbbEӷʙ*H`24*E8 e]_Cs>CgX t:&ԩ[ߔn8Xksq*:C p$Yîe oO  7]EqkGRllGEJRI2%TO|oX C nQ q ¤&$dbIKu"[<98_痆]'eÅL.pWgzP9"68'O;I],qMn:+!h\A.2 ꆳɆ?4L{B@8 EeU (k IJ%ÔN),r`vYۧd] EmW%4' ^pcs3p+y<=!Ik<^IK6e>{[c4Y!Ϲ"DmݷWV24#noOK+2qKAm*|oƶBBqxa J#{  J 4ŗ0)'wvcfrvM̔ CK$RޣxqsD)>"ɠKo Hb+2ߦinC0R}C kp%͜l΀V]}U@Wk˻ ]pXF$u dh)4-턔r1M:B *_)@8OS#cDSwQxZN_7jt9j 8Ɖ7 3ΎX@rT#hoH]Y&3d~&Y֛_ À]LO|C*`;D=LdG>X)N|?"*r F!QHPפai qAb0|jufBftW5cO| O7F/jkvӸn3xQX?YO$DUcT^b^Ԙi=*Jx$itۑV.>UWfELxs^qdK!'2|ZPȉ6CBb`3't~W~B뭱GT|fYu3?9v@LH 5XH T\<LfrϾ~0C?KDm6~ՁalP7?;O|ptKSU a1f"YA;zTJbA ߟK}W$h/ d'76ئG,l䳏 4&ĉ&< =SHcrS,Jp^z"wV2b.O F~ڏ,=2=l2;Y i 2Cv.e!!IrX#T K͟עxV1J6ceQn |^M.sk?_ &BUx&٘=[è.8S,SG*ٴw7 I[5RV)U."x[M穌ZgȺERR8_ qm&K4 ԆTdT)֍1`-yxWQzfUW_LJ8KP3fA \J3QIODŽ̭r#ZxAF[Gj@,~]& }K@x* ^l 2TӳGiw&$@W?E4:RѺ#q&fs;1++kɳ&_QI Axd@Qw7Իr,@^`X憯{{c]T2J0 ܱ<e7Ȅn{##ݒ*h*f[@|e WIHY$\@=ȕ^G!>L"2g"kŸu )n汾cW82 t䙡xH75wM1]eL> V;H ts_%ॲ N#£nszeQK-UT= 1T_-";vP5V/t^@vD_O/i $"͗В( \ܭN;BS#ׅko E'Ca=h&Ԩ*F"vQ?"o, C@9JQ,tߥb-rˇٿq$ӆq;Y@}WfD^*~W7 ЎP$qY2 -Xۨ @g$[}t?ЦbfOa;.K4!+.>F3ًyT.i.O"0g@cxw6s9zGH½)#B3i͓YxEZлx>jQ4r ,>~1^:$+SXJ?J8WK|ͭw|מ/U^zn F$i06Ra̅)x/|ԇҪRRYs]o|NrGz-e/3S~!4h ;E5 0C==sjy8.(%}}+W`ҳ8O^0jbʎO)W(I1}$8 bJKf 6>bFשּnFT^CLv}g2 ^oZϋ^+`8fo4.F3XL!y3+SX-fzI Js[9U!b*z5`& ‰ؙD}=gۜ35?bX&;vRA*JujVcH+GmfD8[E 7*yXE {$.SPRNW9˦3:pP dԜ# 4xv;ҫX_ -ojmϊf-LhF$%!Pӊ*d:J,"jltR.xke]|D}3kEUGnPeR#O)Pˑ./Mt'Lv$'pۺӛgCY=?fR.f $8"<0G`z&kΞh9 @@MƐS4$M4?aRWv:4^qd1CU(i?LYD t=z|&]@ӎLǛݛ]GAXʗѼV"|] xwR$,+l]ܠM0!FC>kg@V+%+I5sBך+ /($KO.ylEhJ8e}v ga" ܮrF.i3vwM%|0qՉ\Q;n5 ݪF-IۖV5 l[v% 밆5,W;DTΠyNgOuz@.OZpеZI8_Qd3 'Sqr|ρ 2΅v*y]P,|Vg`Ӕ.SBk8Fs5e3-`&ʼn&9bġ&FH@@c Š~ nz}Tt<[ -q՞3mxSJ6jC@aR7՛Pl@~+`=" 4|BJtmSts#|JֻL9@|A-Vb$3i&G$1@wvVEڻߑr\fMj܋r j K,!^HԨ򫓇)4^yFX(}zD1f&'sKr j/{^1YᡤuwI ƛCf]߻oK]RfRժpY%D]?¼7ӓGhxJo#-5 5c{a8,kv%>=B 6IPH-;>RoD/WuV6{ etΛ'oS3l14`#z|]u13^FqkFh_$+/BJpv,ڧSjRYtʃ*|Uۑh#pUK)ؕS>Ǥ&"K'QdBh .! }DґI%[9A%S:û^EI&'F٪ #.d$yW5,Tnj"4E} BAFHuJ?ucP%*j2 V΃| 0KN!syD0caiK1Cא.W = XVlL_` PDm 0yR~W >)P/[R_VLYd2`8 ;OD yn0 W(qƇf5趆"er]ќ3hMgt{k[#ƨ%Br?xq'U_u`bkv75Mn[j$i+|A2m5QRJtTp9BhY?TfRg7DνYD)Q!W3sX;5pMY:MJ)Y`` tJ:ҰQN d6k5 Zy Cu J@,L:ʇc f#]$`fjoU5NoiL!@; -t,97 y^J .| n40 [HxgZ`]-&}`jܙRHjmh7r_q7X1K']kH :Q63IiOo׽$`YM\6kFtd,X(7 b!HKj"`08O\rJB0'@pߦg_ä`ꎀܤkkZȵI G 禥Aa> riumF;]Ja>&ټ6drPN4>aYOo1Pthո8*Dk}0K UB^6CMR PO )BO)IٜBѰ0[Ycgv;qS Zy71Ӽ<=7@A=V[=2U(w, W9CЗ=`S-HPqZ-m~\X8㽻)lGX2Ɖ6!ٍ?#@]aKfTr`,1)jP_}yH4ňU#{ xC4;D%iFRW/2]it;z΅[9k ULaMҠEX jf&@2>u%Ka]#~na%v:D_()z[ciC6:S7T@;,?}]J ~Ԏbai$Qԑ9hE־צ"W5{߂(kQĤ-mit$ViÑei2VsjύP8e.qgGi|ZP rH+C\[gR&{o=5U )?#qi[[Po.illԨkөAb( htj c9ud Xxd5T@ ]Rвlu<*,&t~5j[!BdM.A#jO,\BVC6o᱗eZg3/t6)ǵg}i!h6@}-.e0k_:g A] GbG ,L++ʩ@Qm'qGx-ۦ7c#c5+_M]YLz˹ӣD!D^lb6\[CX"Eb&)?F{T]g0@8]O9Eq<ҍ #) #\|ǿ'}*}nj1s3 NOfN(@5-FB*clwS$HkkAKU;3vȟW1)yM aMǑ '@L8?y.ĊU"ox&% S^ j  zO=]$}kFyt lċt[D&"Sr79#0v D٠շ|W>͜IooWm%[K\3;1fyjeo_ "bM&`UPJRZbLvC>m0FXS?cWC/9#g@:ǃMQ|=0&EU.dŜtYcHo)?h(ĉfCbP7 G dƌSǖ1O_riH@;x5 wHt]~7ZlCd"}Gd?L**!"4IVn^O:|: PּzOhR}Uz=Ç݇HV6S0a;}rQ.>H;"\N!K<6_TaX3#n%Ș fp GXH~M32BaL 7w"TrU2B-?v(#p^g^)J52WBQY7`F` P쒵s,< BȕcU֏?/ŽVK'#X4:u{c+uv"66]Ii F$<)Sǝiόhu\J4mԚUELvŒ}%|9iZuxHH0Q3m7p,{FE1 6CL蹨HLFA[?RNዖv IkIXǚsP9!4zr04Y4Qԣʽ.-y"8 ҍ.ʯ}Va$lmbgkiZ(]1ks*]ו <T#pQ">cٹ[e幚\wyH_4A`Pv`G4+shKCN\HH/TMx u7*ĊA^JrU% $#͒x=pȞJ-C%*1\V]G;qMUU^6U sAgk&#<ա~ |jM%G&"z/iڦ4Wr,lqUJlqtc;ݫ_DŤmr;Q1`vH]Rr WTo T fImtbp'){m~Z$H^3THFjHҹ^0"ƼٿMj]Um҆sǏtQ1<~+Q8xQա=lsm.Gx *Z܂1,.\tHPзoiH4Dgqv`pasYt\ޫsW ME>g۵;Qo/]:g3Qv3x~mt'v#<\}Iڕ=Pbk.K ٝ:.M+i]:ndV+/Roη?eG0sE;){>ff3Ɖ=W7 MyE̶v`tܘy̐kf6 WH䉛:Y9(We13aQVab!=zفC\sD4zg߹|L[Ts'ۿ|^ڈN\G-+ %K/( nӺԫu/4+vXȢ9VFvZrwwLG|i-VXQ>,[_%Op^O?hKXZJ۠t4.,=pK3Mv }E-[:27~b35;]_{XX,C?gÅ,䐠sG*aJ R]`VHkuxr/ٮzל/m&vy\^VQ9tja- zċ{TmɎ-wYHVyc/rH>J?쥛Kȍu&Y' ٙdWx̭[E@j㪊kLSJKӺ?z&יw )W]lӢMk&en͉߉i|Y!(HRn*-0/Th{[WO&m}'ťs{V y藢~QR0$u ! a e]@Ӟ6|Z@o\م%r@Ҿ,~h?X$liR j:]R$8sm'BC2LnƵ-MI5k\1k1?0AYx;pIr@.]w \f\p%a<1kd!WV)YT!װ.&kBH5JbKDUcڸM{#.4TLc ה`JE>se9HyǢL~n6=%FDF#i'wDZiQ=x-f+VP_<_-e{v " X%QHp΃P; QX!!l]peTkdonSFS#iC~(Ni0zIG)C2i©UXNf@(zUp?m#%6Bo59_8<ԬJd}fs.pBb#/>$%;̙(P.R:[[{(?lBE ׁ>Y[EE-KU]`O_٢BV 2 o=?Wr+cޙ_7V'c\Ŏ< Ro⌧}Rkt ZDFiV~D;Mil*x)6]lē{kɬ7ӃMfErw.?TP@6W/#qu}-{N&5ߒ, g겎=TWհ>-AF9JЊa} ?^/ԃfi3bKQo3S%l4TmG(U oOgl32gQd$<7OۮT\¨&Q#3ό5;;wêaff!1LE^:B:rjp[T[Fm=H{zU\=CMRij`R*<=n 3ڔ? f]]4Wl\ক 4ezE,`鳤_Rn*Z/G0Wڽ)R@̳2 MlX5fn4ыUD%QY(K%%d90oEcv$nhC~3)TCHI CC*nHG*T!>iK[%{5ߥP8X.5b/4`8-n|R>y< uU= 1dr3> _-On-%d[on<N,9{trǙW'#fMD?|4qR̽=lZpTu.6!`5k3 iWs^(,-ƒ H'S\`EAgˀsF| ح BlLrmϧeMs"3uNxjخ\&#]O9Zc ]4jn'8&KگYj=/oh$5yd\w[W[cyՅoS&38%q[k 5~Kclz\qv'ZM ,l 2e2!&QFZoƕqCY2B%fXw0%u3e3MENQc6ۯܭ֟:/Ǘ2s|jj[ ڽ=\Dzh+MةS*9>Y߄{ŴLZ_ǙF#sdrx H䳅(t)5;ԎLئ2/X'{?ɮ;, a&5Lyd R05MһdGu?TmnG>cQ.3]0&NHbv001De8FenWbGgB;Mw fO˚1X 1U~Slp@A"X1ѽDla z` {QD뀩x֤R1Ȍ.|J jh, p%^Xj =Ikp~J D;e~A[z|\29cp~L{-$}=暐zt^7{vR`y5[`>HBk=ճaȦqFR7,7q˟\ ?2=K老x,;Ym!,yyl[{S!oM!f'!6l6r=EҠ ȇRg"7qkwƕ_u@z$zywUK3z㙧yK,r̈́=AqWs}5K7u^'b7Brꯦxֶe6q]@I'kR`~֮}po;i:T7p!|>_M_oD=%˴dA8m4N6a\x.UU38HQ#UХ? *!0 u=ta P™ϝQ,>^yWm3^Po>ð^bm_T@mzٴkBT«JOhL0d{ ٙ&ۂڪ5 e6̍ZLʓup{j0(MO:z'PQ3dڡ${CFMF}/TpU匽\%oK}wtsKf/3O~;3ڻK`9ڪ3Cˆ'_wt{Ոy"bW0V R@!;2! YQj?6&ŌV+H73"Z9ZspNB6t!o0d-he_(1ՙBZ=<+3z V ", TdQ%|'~.2eElpÔq_449 Zd."yj,B6զuy_I)X(G63}>ZYkf״ϧOtm{|HHڶ4ac}iEvܳ` &ϽlQGw !: `xQ7Z>ږH<ƙRj;=3Ἅ%55ʺjm+P4<Ԉܞ8>\Gf+0{ь%[]P!y2 #s2!No$}x+{t 1P5tP`9iM5h48,#Wi hl@t`ǥ x2AhB-0ʼͤT VbC3h"',ykC{ ]FdWsC/ጽreϵ/JDv9h1*UU.+vKzܾ8(IU2jmXjOVзەR`\O`j<9>eiNvP _8B8OƷ²?ILD#@'j\Tr=$=|w>BtLymsFpszw\L[e:FUjPxLc^.'}gceƕJ`S#2N7;glt%5DJa \J6d>L-k$h٥@n&Rfݠ04}bbsz@z9;[9t/$U?mQo7[iwOk ke5õГHV*]=tF환Rsk.r֏ =d‰VdmI>R:NJV;oeA5vvy=d$@[N6,5A_<.)TܧXRD3[+A&UJoLQ Q&Z}ciP۬lx1p+W1׿vyEe#oǩ>/Q!UXG5Z2K1SJj79cenKHF?G]Gv ǙGoؘ#tsdm4h*NC*0*g*YoS2.F[]yaoNH 5 8ݣtLdY᱘#1ۣ \# 梯G/!Z5䛓3u*DKdĤLʄ5&wC[uWugzWj$} .ހmH|'@űnN6/pR> Э# Rpu $Mt"a^mAIWgo5غWXQb2Th.Ɇoqг îھ),r&rHS0ВdXľ^ԝޕN^5cjkͧQ&D0w1I5?H\/ @j : w4fV]hbٝhJLTY0|n_J!Z^^$B6tJPafbx\AQ*pF.n\U*Ҿ&XdG"9X&0.ךE_KOpS')-OK[5PP~4vӸ^/u8*CPf|PQVÂ0\ x!9}a1is4Cx:3q*a!{Ԑ+ZU#G E?3flLf2@1db/*+\q˕qhp3B@ h7m8r{uVb*&ƵlV_Q%I y )n7Bh'e=2B| h&Di5z?3ZN N{ ٬$Kn ۠o[P}J(++X[F$2RJ Wkɡ},- k]KsWXuPoxAW4Kh``t@WVEӺ,R7`[- b =FRl 8#lK+G`nL8G~DVVAƣB[hhx_6Ĉȵ1J4nv2\ItåC}-h6YD؛omQ^@lUFf܁戯 ]` abyx&wn*TWW8,Z߁s%\%Tۃm4dsM^~5a!Y7Xd웞mF0JI&9 ݴ~]ĠRp\e(in9ϽǓv^Mק,לW LZxS!] $.xn[l!R.n;{ZW4x(m{/3Pv>;hbL}U: X%: nZgDqGupCa 3J⪘+}@a{dj/ڌCϧArY+#YjM'EtD(C>fW5yS`eEF JK/SH=kbUTp5*puKKKԋb^qj"c3>܈N?u5,iAcĂ诀]E5|:2rΖ T@ kjsw ϻZa-cl&D*" _@huYfw~ Ѱ`M):_!~v*)ڥ>O#uO@-?$)GwDH@7k C⿆R2At| gˣ%x]W.:lj?=|JeȗR{E}^nٖ \0Y(ynӛzSafcw7vlQ4w*$+AxMl3{)oka0GʟZ j@%>0 'wq8׭.]>G[}L4"("րI:^ ֣_"hIU:\|&& _Z@BդU(@Z'Gf7Fv8]B>0MpDMG@W8\n{ |lyeRzHR;Znhyq?ڱӐTwh6 @D#㰟rGe +$|nsCr3{qM9K$='ݤҐn<?i=i +NhFW go7#ʅ1QIէ8`^,|=BrL=+@xg\֍Ub@R#Hj72ljBD2Ƈ"6 j=I$T0bjַ!&_/TxŸ6?]ێeEĉZ0sUk(o[Ip)1d(:9܊򤭫 .Yi-v ڃz]UJ>y\z%ܐX R\`'Y"!;5 U쎛+PC9B 0dbbQlC'/>3[#?*1_ ЖL Κ~T&$ |e5w(Ec<;@p.v:Wf {~([7dDFC /cY(̨V9a-L-&|h{OmtA,3BmV1nX L|=ٮ9jH?gׁl,`oAwCT 'J_ÛR!] Gq{KK ep(%-yYTk<(ꟛj#n||TdO}LϖgB(¾'[8+c[TbmЮRoaZ٪&ަDi듀?#3콽k9%+TtO~eA+05q ŠV47vwQd]ڬJW϶tNJk{4Jz5uׯ|EBJr!ˡ("˥T̥Ui=ut  -*oOAE*+c괗o?ぐGO) 5ȝ3eLx E, l0mѢ3!k&~tkuqyBjBG2C뱪 ̬8cqz|83 ,xh曵o⽫ZLMC9}F_j,Pi~em'U$2q׃(BkR_؅= ƅvDw^N=5qڙotm }g1řz.@N᮰+qIBG]4 Qq0BƏ:e+v +t! a'#n*`4/i n)e+V7qOe#ţ:*[edR % wF O>3HU<,+2r(727ԋ!]֍*Iәvx>6>P)@oZWGQepn@Wxb< "cLN-<24Hs o.N#SS-zӨ~P ;҅z/woW!AƟ4V4p3Xe[?S^ˆKY'fƵ;5GyF#$W 34aUxV*- Х[,EO03,e(Y rt&~* {)Y^o:GS~:\}V>#*e$&HօfWm*'LPѦ캶@#4~0G^EHIO-ަYݺ%Ff|T>73'u w-5w\Ki"|ܺ L2 ֳ@j1xvr0XtZg- T14(ye-1uz]_7t\T_lX;W;`1!S a_d}L%`]|3?,5~`廿Yvo 601;)*:BU:Be#"4 Ax7a~G}<1wvPz,+)vMcIL"@t;.=Mq>rE/{Xrzb!?2WaZl#i:EL@>8L-Ec C[ֲ=?!W^Zvq ~˓ EEĕUƑ[RȀu"*NJCJVcC n܈Ӌ7vZR㬡kEiVeVv+922Ŝ<)lk*U7#t^)5_W6u牪σؓZfX֮rǶ 8R_džXnLq( D%j&Plj0s#iK Y w6&<[CފIpM\j?`1V'(f\"D&ߣd}K}3TB2(rw=*bf3<6 MrGe{B끀`LqiPqw;>hs!'ÔR­)eZ@qs@|dHml=ћ9FnW^+Sy;{,%󋙎\Ǵ X8OBB(8!zy.͋﮸!Ci%qP7*9!Uh| ^RɤUEY)J"fYue_~h8)K,; |>+|太˱qcK51Y]үYK r?3O4 ěd@";e2qkNDl/˘ik>;P*{s O+Q5S*; .gEr1Q\*"U0y,>O=.9*1{ƔQ*ϛj.1δh#7QA(]0musI{D3&79}Agm$[9-hhtUiy9PĚGȧ:ؑgH[Eh\bAX91~ z]蘗ȭ qi/""&6:Z"1[4\Vub%r'mNȔ0 ;}O tLm2B =|$pA/z<Ĩ(%Iw[t@$Tδ &} ۥCՈ`֭ w9*J7DG>~7(9yYܖ[sZw=k.VR Ga7f $Pnّ)t֘Ay7fD.I/LoFnjw5UWɮOi*x#W7Ό 4}ט=c} 9;Б9KN$bq캧T>/ xneYpd~V.".z|@lwaR!ma\Ka՛BLCR/3".SEe@iΆ9\/hfHݽP"詟 >!}1nb{Hg,ĕYj'n7X p>5yOJ(uv:U5(EHϙbVDZ0-OaսԖ)#{q hFo^$_b3aC"ak(Hl/=;jL=XH=QTyN(wd΁V[])CpBΕ~pq[Է󁆚9V](\%7|8;hNm{k<$?Ȥw_$^ jv{ܝ@V~9Ō9{M)8vQk $gY3GR\\Fr7hW,&DL 'hcK !VLGd7aS U`?uoP4[YBķTɜFz1:\jq ziB;C T4Jˉnk瞜u+" Jg ʱ̚՝\͑^#t)PCq[g6G Db]c\iȒCP>= 7&kNO_!v660E6T%e˼N#TV.ʂ`| Nf Ujkb=`׍)asK}('Mřr{C5t{pGS=bRq& ec`)B. 14mʾUJ; 2wӦ1c/RB-m*1RKbҺÖ8쭁Yq;$ `8D : ob iF C-%eAlgIvTw6@;|,s/Ρ_[RxLPD}ҍqd=^@ݙ$p:rG~]vH.ɽ1nF ~- -jR4kT,wza2cce- |e:wH/up-n=';Ĵ[rEOLC-E^K&CtX[>֯ɠzgdagDP!Xu=n`1AvXtX؁3OMwB`c+W4+5: 7CSrLHPeqj3O̕uDgD~O/tT1]b~+@VlJPi.?vlvg⌬[SDA]\e0X#[9g)[bheПKɢtl3 $$#1-_p93 ՜h&GR69^gf"k,_C,qUWbwyhٷm3;4.:\"1c*#133o:a]L»䉾'va5 5Lƃ1i ᥶l*z0N4^nX-aS;YBL H R ү6>WkA+C~TVMc QڊK3A[epaVܬV콽˚6ŝlֳlSU FAgld(қȡO5iF7iML[ْF%-Yf}1P>v9pYhrO4j(0č'7n"a1!O.'%.Ѳ3>^U"Xrwz}""1J`L`>2?+&{z`ͩj ʀ:Of7`E . _΀{U~E/^4O^)Gp€ڞ6Afk~loܭf-G(MHnAy[r!'-\퍙_l+b y ^4@ uWamFq(zX^;1Yjry%aQ[$eB5)Oط[ nZ}m{2'>ǎPIHlF| &]UN7 [X. 'k1l:\tv#ӝAMWݔ>ɔ@v!wx8H:ﮜ3Fa1_]`yiqmմ2>ު@Z|GJtg/ŊJpD<;} `2/AWW8KvA.ЛQ¸4WR1{6?R2^_h/2_-SNF(D |(\l{W5a{g5_*E:rQN"0ΌFԐ ^~L+sd qPz3,uS U1k&.iʄʑG%-Ӻ"L\&rk*E}s¨&h<%O|,A ]ֱW e/ uU6(odցkѽ*BJ =T8c{7Q{<0fwJf2?$/{{KU%'2h%9v׹0>Xq.@apV%Սηy^|r3}Fb۾$r:&GP;uKQ.< xޝviWR7`vE߳jE;-oN!z>ؿY^16A0y.R7'l/^P]J{hYMmTPlJGd[) V7__$O[%:E7Ss 4| @<\úFau31p&A^={ p"8Ҵ?XY\I@qFF0ΓW &.J1Zl0]"8et)UqB}IIigߛ Ԕ"]2tGsqۡj,dW|OV s9g{(BMc@w?k.>W_U NU!(yʐpiRkU& qo)4*#5aND3 &]E>1,d?A-`r|VoȹHzMܐmf&̈z8F& !Op0z ;-ֺxu (hq:y ~B?c,)(I=Uފ7#C<X,y?%iPj N{}*Ya*@Wy(9iJ3﷫-ZWa'ө݃iבoVb=pj@$٩u {Ws%ˉ{NTv `}Mc%V7|rIШXcu=nBӫpiWdžK4xSu1b~<3;sl\ɼw!xDeMHoV~8ѵz Xa.4Iѹ^KD+< [ȏ[!}2_3KzXؒ*εwb4&7P R00};LH [rfߘ<؆S-X@\VJl/kI&⭧^[ұ`4˯J2 O3$QSɏwF_֊fd1;h91wE~H.MSZhXg+* TQO<I'ÎJ{g7w{omrwGmX]ƞxxGy!IǻLW'6kܹn U_FTQmۻpu<c)6ah< Wo{Ơ@1,GG*]$164iD$.PI}U}uJdū%)~}ba42QGګ0GZ;gV9LThTAfSʷfE\ioykxc Msfd#ږh4TVkFQ'aysnsV&Eh-CCdvs̪i3U?N.]+I>׈dqE͐h3'wtaO@BC=l;LM`U#cp iaT֊5v׉hc~oZKn'OMEFTwe-+9[֬9E2td( $E<юYyگ8UdeT ֎d{b /"8#dݼ_TֵSJl ^Ap ]0 tWGP:U\퀐1xB?yEhݽR;"  TA3ѷNKa^cii2Qrܷe>RlSJO H sPzyQV|d~|x8|m"յsf,TWKLӄ^UDbB,PL>@"Q,~%HNmǪZ74Z k.o'.Sd}Q͏%6[< m2v$Rή[8 DT}adH3S]u׳<j xR`%a c|3KMm|ɖ2+~0EgCQӸ1 SV169XeUimuBVZyD1w'Q6t[倄n/ō'Wi.U aFQNHt*|CUTM[c*t.uͦF۬v̕UH'U:4cPi"F3ܳf@,dm` G*?UI^k@SA-^K_p]5E93aՕLl]Ka! A9|j`UБyD_zr1Q +hA %HnhD 4zoQ o(z-vO/t9PNI0ތ/l F CXGkG+$q3 r8(ւ3<+WS#7 ALK]1)ᛗצ1%o&cЧWBCfH<@K@9i>#:E憍s?3KEFy#F #I}6LbmS6e`ť;74 \:p?_opfl+I$˓k2[;%ξӈ/ lۖm +;}qf]JJ^aWy̼eM:S"Q v",%+:kj]7,=o H3/̎2+ b.zH,H&tZRqFp1QAb4nmM1d4TH72\1Uɟ4: v^j. ;UZPGIHژ&`r3%Nz;P(hǴf1ga|:NCľ%fB+5de¨+°û)%b ?tmWnt8kߛTȗ{NE}%ؘ|5)V{=5*LC^x[9zGVC@h8>$i9La2 kƛl3 ۍxxjT:VefX0*0}5Wn1\7!D,-9qSϞ!#D)_ lޮ؎1jHYuE'1~y#/]+b_4ܠ< ْUgN\ Go3괄6a/;I|yI[x;!,^!jU :3st[]c9;GVw/:vIzX 2IhG=Ƹ#TG,w㩝ڳ;Ĭ- 9SzFjp5E ,aipz2D>rrrdb?(1Mv>dL32*%8,/hCq謠&o o (MS;% =eGDܽt'QQpgm9cإM$撿A&7Bs,䷲!wZ930_ ˨nмݦZՠ* %iKԌt4J01,1G"*R4 8#}ȸe@dz{OȭԲ9xRxHQ~ nm@Jg(:jI,ko 2\(1˹Cw<\I0}hh brxc@|PU ;NtUVWe(ʸ387i]\>tUwJQ%.' Օ|SXB)۪fS_2'H-Ib])`}@seestw E`Sٶa,X ㆨ[QqX(oxsM'N ?3NۅRT 05~Tt v[z \ҿ֒^I6z2eͶo3>}ҟV?k-k4x{[,L܄R-Uq^I9'+MBGDLA0Mmm@z('Ů<)/`n2UĄP?F8ç5S:hAOsʮ\S dqj+1wV;MU<μ*AdATus SgϵB|;pP1ȧ) i# wIhIY4(sKA͠GQ_/DPxZ斲.!,] :^@Ý݄؂&*m`9p4{?6Ew<%<;@=0oڒo[\D݃c@t{uo6]Ck7ݴCqLƊ leÙjn; qj#JeϾ,}ł^VX%d:F#{j>kPu8l~IGj'cP94gQƕoO Xސ,˅ -uygSȁ8Z0Ɔ5q<$Y%i,؊NzKޣYU?^D<%3yoa{w,E'x׌0zZ9@.Gb DA) v[ÊZDRD1Ř!-Uv6nZ?$=d|C["׽'s efCNN4(EOj4)}S ?'uø:8IiIS/w JpqMa5\T|(T@VT l](߁I}hu.l )FWw;:aVwJate$mXhg{+ٞ@c.yJ5ldUVFJ"c qޗ$gsC5R.Sg;Pb$NxTްF|)ODoǢYamV`7|1y֭\}P興O[S 2w͜g.Rv=7SYpoq!v9%Z3F܇JaЬJ-qS]pH'Q¶OJ-82ܟJ"-M];t4?F鹸O y(WUfDtrW@#JXqܻ@ Hywg@qis+7z9'bN*5cȧꝚ&C"Ʉ+Td- sS:PÞv/x& d(M1%(Pe7)yû`hL+rO$flܖ8DҡɀD/G|w*8=ڱ&3r^ߞh䞓6ʎD@BK2||"_dI]:ēBjPI~Y+/Pʴ6qЎ>%%{j Zh þ.c.B+I)Z9bb3vpKm7 # ՝8FU,㉊JLSU@,NosĘV?m=w6.wX> *9m]?GMewLQʚyF|0zЇ&]yDy;A`)D97#Bj+p;GxgVP傝@9[;/q~f1bR3܇5y?G^26`Dc㝙>¡Ff4)r`k9 $&]r¨fT'޴NQ8l]˝ R۟J_V@.$̖02W߈fSk V\` %* [Fu)z8d#雪U1bKv {6|V_4tK#0ۍԷW67L(hXz)K>=G7*0KZ;Vј\d$QJ=Rr4C!H_)]!oLjvOC0C(zFGMMCFyk Wa2\2[~.$Bw(*ǖćM|}h{F|_)dR@#XEa^UU^lVūzl 8 `R[NK]9~BD[ y+ C7}} 71ؕI7-1t-ow>[.21bZCE'rz/1%7;scQw lS .͠ӖX1F߽90bL zK 0vr02þ"RzPBl='<2'؊ָ7{RG"|lr E]c#aJ9%O Ly&ӜxS`"5$ (RLJ9?)3֠2Q& `- ݊MνٛaUC2Rğ}n,GH*'N7E,D?SInߍ$,"V KK*灉1_ X[9( cKAɚ*'lWoIN4|Я'޺-M\ '-OVV(gh?O·o%z y5(Ei)P(CѸ 1'@7Dy8F@#mF.XB~Tne/;u> "hCΑD:5Q'䌾Bdƀ5.]cwRj6Q6\#L/RE֭|i4!'=D+=D $|6A c_&ywuz'"|Nj.&(kymSRSZ|u/ͪd]^xtC?&+d^sXbZ{u$"CcSJ TrցϭS=o@lv#|)3ʳ9/v8P\4a׊u!)@H3 0ތ6:TAosmS)yP#?>XA+.󐱈((C"Iq#m{fp,`:\:]qZ!gYgmA1#VAKG5,븬w73 nP;tT'sq,[Ji6erHlaHW^m) d~m| rx5Ar ź|"},G9O\sS4n"A;nƟm!q|:c`$=AcaD V9cz\0egm</EqGUhuܲh˾> &]}( `<_i7W!v'F_ȝ^>s!V`mN D9~a,R:$,i4Ch>ཧd6Ή>H|8sv *ZY;W/ vżIRgUnJYUUyXcJeRG˔"QtV%NGr!M<}I4oG,jeWErUaL39 OJ*#|>bO2Fy?\٦b]F 5#W,{у0dE`*u5d#"$? 0҄= Iƞ ZGY[) )g1,yZ OtA{)k\0g Z馮t N\muklx@u"yG|M5"D{L`eA~~vo6VgHH{]m='W^dǹVH#BC53d ӄߨ f{5hCRsIjҧN 0aZER65Sg^OܶIa >F?yxt1m:^?LfiCHVI/Iodq??ʻUJ4lknu@ PVDj+Kܫ95($eNb:aMSWy [ 8nbV}?3Zr^l؆B%"uP~Nӑ i;f_ϖ~d6i8<.` +eZ{^!g1U_Ի"tcXtIJڟdF;A=,@Tt̚be@(e1{{CזJ4 C^@1C7: }MRC7N(Zu :SD)yiaM  Ӈ7{*Q07o2Uh'(a_:-p+2Rm S<gˣ"VT~6JFߪ \ZZ~vY@ʹ ʃr>Zfsfg-ч?4Wim?WXPpZ8C yH=8W&~wG 438?<r*)>4m늄aE? :;)ed 5bXFZ.,k"xE׭HP2̨pP6F.mQ}U`c ]q\M5rX6d^KUG}2VGB̦y+6PSoPknH2/B%_m#^~(^6,aZW:kJp&f8#*N`qn `q)ȸ3 ԭ`/@|b͎b8yU6H> +`x$]a D9̤M%I|FY}2OS~[}j CtrTY*~6ȨLcIS oN\ZGJ%&Omq1HP. }/" nw7b9]d>\PNNͻF݄ t~DCSnbG;0~@pew%nc#3.jP|Ԩ<q(t~Dh1a(>6`.VEjl8QVTG7mq}h<ԢĵA䕷y2}z+OQ]Ź{Yg)}ib&ڤuoyǾ'V MP=*Z+OB (l<܁Mm_A3PQ@ϧ]xJHDž)}NX}]* |`x3&wD^"}=\f ji#o%-rҲsw\xET]`&ޓb1ڭKxN/>'|`nJyU7,`9҆KxR@h]饑|??WZx*j7fmGsעv].KzII=`q5c!Ev{⽢*tMnyw6KK>M 3LfxknҎ Ua+յVfJ#TJnEv <6E ]{UzADoU "z K(e v'A5r;eF$7^=LuQfG ߱4fXQ@BwҞgdQ-x+?MpFV}r>ڴ8(*Kˡh?球& LIl 8gZG~nܔlWA6T# -X7Ԇ8[y{L8+AքP$c+aB?h{;f'Z’B3Q=Y$uܫ=!EZ{,Ěprb瞑@nx1* X@s:n1r` [y6?@55mUec!\B;321dž|ȑ=qK?!)gL#ͮ* \ MҠQpn pWtmr^E@)o$֒c5y-c>'#C|RIHp*qͷJHحֶ._V;_Rvn |oȍX~%r=UŦ?yI9ÓE֨RH ;u1m)j{wRHdfuܝʚ,7_Xm()="yՎ{ x}){ژFcO?r)0<?xU"'0:l17GQqUrX77φ-Z\:Udr: kF^Z֮Fj1#w"P \u9i{r}X=FE@͙p NHSf.?  5vXFE(ȟ^?yjr;ZY_F95gk*o:'9;ǨKKbfL1M] 6.L8G?Ew+Ι1 t}3m6gUZdE hJ+2*VoI{O3IP1ݸaRG(Hקob0uo$LpwC+H `"q{${^K2&`8D 52@_g"</d_I Y]ZihI3aBUSƨ؈e>.m 8s¾[h|P5ye(KF0RV!^7V] ֪l1!q 8w{l&SrtAFNVRmU8., T XCK|/$vkK<9h4ˋzDG ;go4*AN֔1h >V¶-[1B+}d;ZX*]ŷJ$A2ꝇ+n6((d9_X##zc.6 (;t|V"hvS^\e/zcl|~/V [8=[l3p'Bߟ/І 0p܈ ݭZ AM,\_iudoܩcy_:^uLC^E|Fhh Tn~.cџ `MԂ1-ĨMGo,H|NY.EZ)oYq:/` Tia# .ں|6[BqC0&p4qЋI8E %|IO詢v܇(W Ņqffr %gY~( :u6@c0NJo`7ư}m?P?0s˵&(Q:LPt.ia>ݦZQ@A3i=2p]O:]]<瞐: (`Oư-3rnxƚ8 yjJ6[Q2&G^:)O4]6e^)QF&#cG@`فeꔑ{ыx1I~iM`w'GM9H7 y4J:dNhw=rJ<%;h7ICQ39ZC{BW vªt '[%%TW5LQX, 窎|f;3йǃO&̷]%Eڀj'\<h)Vo-ntv vquPۻ,Q DV[._99 Q׏.kՑFz<䶏ID7 LZMDuo@2Sw4XKQq2q`4 8pVz^hGse~xvd!ĜXXyWhnR"^oPX3>VFᄨ!q^5yŽ^ZԸ2 qM=:gH<"B5S^Q#QVvӁ ܧ$0M{N=ɦddgMrhedtVGqȠ x!ߺ!(V8ZEao:&|rVh[B `~8hچ3T+8XBb75X{?2w ՠ]w.8Y_-u*0Ot V$?ͻ&:l#+cP,\&V#NZ rP /-M&k#NĊx+L%5Px# U  v,'P 0.V}#ZvNbF dUٲL̹I7f$ s |q1^F1)%KUGOOQ NƂC_T yU%au8r|Mz4Xpq2 h(ؠ p;8XY=T| c$߃^A>*;?#'ɏζd8XWؚcוkMۡSoqjt8tri_"9K} 6|p:^HDph"WKZ cbKmPoz8qkJg90C]}YN<[ *IEF<~cbڜ`gX/ " oxGnM =E/啕iSŊmτr{eɅo[xfO}ʫ/LYx7Y/lZA'%fJթL)7K`Clј>h 쳥{2gPgDC3C hsF)$ ))t/U1Дʹdm. s%߽vp(ci .G0!ߔZEe†&L"x9|a4ƺF@KًνT>w¤/g m6դ`0#YЙyӓ c1J6,<[a~s"^gDm7O۳3_0EBnžsx=lY/-!4O^[̞f$OPy6jM=NTM 0Z%%JGY gxà/o3 ]L/D/+- fqjQ|fP)| ~-mB۴vh' ̪hO?r\gYX\80!n~O;9 K#Jᯍ?wCv[o,ByxuaXx==B1baX>dފ!wehWIf:kWI~ q[5Pd:g*GL'O0aYѡs~l0uAc&wjs(3ZDz~+o\4@#\}O ZB7zsj` ~aLӭ@}l0$^-[,CaM隦V0\OtjD:Ϡ%ĺ:k2%G"^SJ0Q5(J@dB"l7?Q^-u`d,8zAm386-26h>0R аǧ>(*ȴGJ§ks5X 1s#% M`&Llme.i& 3.+Wo`2^PBent>&u1.P1B|"j=|˺MRBB2k8d:X,3l mM9tҾ,wKYF#*xd|8!$>fuM8 롏<2s)~XK;΢Gfu?VycU{CuylT1^'s6iVlAeD3Ŧ ShYBj'kAVDQ| ~g"7_9 H|"8d7T>'nXsdv6VL>ðP/$6ұĞ%̺e 7 xPwr9@DggICgX'jhUjb{n g-_zޚqBX%J X:; 5{.m|j7% SJ&mH|y콵"WE=*B}s-7GТ"в=Tr qieʌnտNm8´g}ʝ ׁLhCy\_EpsM6yroE \#CkM" +>VprZ(ÂINT`vl;.LpR+بlMs 쌵>Z9+t߉\BQ3>Rͥ w=ذD$ *smodZͭsBB'*M&Ʀj^GRݡ0s82JHbF5(XK;g]ArCmi?Wuz~cM]VU7!삻I0{s>sI5`CLgkmpL5vp ii-& EӠ}˳d_YFNy9-ޢ~qѾw$@a\]<94t;;ROO[ۥ9ZB.,a!r XǭFp&ipg~, Bg)7 j9Vx ]<\ 7hpc^/br\fQz~ )aՎ]+Wu lL4C>\f8U^t] ov bҋ28'JIh.r@|N# _Yco&L}j)#wk؛&`@qV nB 4&S]7& _jsrZ2li¤u?-=N&O5Ʃ PP=ax>7%H`zz, ͋ޠ_^醒3ڏFҠAcrz>f򘜰<0E??$Lr="_ߑFdAmO LKF!Ԝ騡Ăg.4ŴgkzS7~{:Gi^L ik?+!\)r3+,LVzXh- ׾V|"V4tUf ehܸf} \dL ̈́$Mj{֘N(8Re}N"NVscvel$ yZV~֚} -7$.^}faϠ杭;X5_\dºv}5)!iI8};ͅOWڐFa<ƭ%%a}N%c@l尣Mg] E/I ۈ+ɐte@&-,17h)^ޠnGnưζ[ 􎅒X|ttV u+a8&DJF@vQ~ snK>%⹦\4x'ңCCe]-#O*^v]]V x-Se]rGvz&$[]̝Ke5F@G4U#Pk\r%u<0CaYD<<* RVQ\6:7xXu/|> ]d (:!twI !`LdXEOWe } B;< F{CD<FQ=ꀣAѐt;Qך؍Zejg9Q :zx 3t]KP|z1CY`֋$/5  |I#]̒ɍFť12wς  LY[LZ=Ӌ) ;7gd8+E؇BWI3kBuKC(iҨ&zwQ `)z]+A$F ?t|g$Me'$L~ @םmfE_dL<>Ǚx0E^7`Z٠ݞt{i>jIZ!!d2%Ɖb tXJ]6ip|뗶=i2?0DMW k]܁ZXRvy5:.K8ܛj2p4SZ4ׂVB>4A-f|I;)h& `"Q(ѺD۵3i_%E% s1jz{,d&ԥx?r͜r%p[ReԩY Ven8y-$p *5G1sp gwJt5AucYm%,I|כZ{8hnS4j`3t"s"]^K j^*Y^ШJxw+'IISX͊YtMv @#P庬̖ГE5nxJ0Bco7, XU[ZYMV0(6.O(Mװɹm'(3eh'3H)pSZG^38nYXw?-#')Xm$^ݒ}#h^`GjHj_r:cXߑ tIK&gwN-8Pދm^4ڣ iBfuL`hGum>VQ= jlWc<{лefa撿=1^ s h`gSթlGT?,3_f*+>k7nm?pOLTf!wUF)bMbysFc#[ޞV_Jq[5IaOv7axŬPθU^昐7Q6tF%"e\k{,b(縜KqNeqq|p$px' ԵޕRm&]qd| .^{wE[fײM993@VE LZM> }7x}jNL&*dv^yn[gGAF.~;,Jf!P} iJrsEQ ddTmrW@hl0c=y^n[!ԠS3d̮$'|oe+(Wm$=Ka" L5 D[ž,Iht8'^55= E%7|1&Ag<5Gψ, XkVڠ&`` E$AӲDJm!`m½^=gH'?jf\ pqdPPڧ 8cV0l;-=!ga{X@FW3\64mq9)jc`ϗ6S%P A܅Pv6B\ݍB~G[D0ަ0g),30d{1`&yQ>2 ؏3CņJ3nF:D7:&Ƅ$(gM>x:'ij(qvÆi!WGu?:;r^\췉E<'=Q`J,u'8ˁvGL$#\[;d)#T;^.oY'fwF-I^| 2?x|^Uw}{C5j]L@\0/߱-߅Hs~DhsPAY}(ӎ{jCLj0:VG٣s[?OƼP`ؙdKC,8jPSNz39Eyw{ȕ \tsn.u AQKD|Wm4.B= `V+c\-ṵ̃\Yp"Y^(ǽmPEZdu eC;à;^I3>}7ʝ ZC}I2aˣ+:VeClzVKb3-UKULs#$f{dxpNA#P=]b&QDgϡl̺"%S>7%܈;-\D% ,mW0(ca;RXTfoИ?dkYځ䬶lLNdXؿ],P;}4n*)niT3B%B^;W;)ZswƢ ^29xTLIQ,FW-b}$7,Txg+ڗDh󟢎(%:W>L? 77v4߃H`ߴÔt@T;o ^ǤDMEYӫOMHqdD[ LB|3օb?dէ̥Uuz;!܋( ]l)TfP0yr>:YAbE7GJVbĞ}Oq4C!~AwA.o|rJaZ2iZCrhd`kHث~]V(^jGko-@V:c!4BO&AIAz~uHOP\05D)-|BNZ$P@KG|t 1 Ŭ9)2 ,Wh҇!z׌s:p7UtOJa01dJ>WXr")@&U>THkb:ۮ_c kon 4W!(&K*XyTx Sl^^t~)}tW8N":Z*.qГ5.OhjgZm l|mUu?\/R~L~TMNG\rgg>QF_܆X]/><.xɓ1>2SIixLp? ȡ\ 28:n=9rҾA9B}d%ϻj9=Q~kbVҧ[ld(MF뻂ؒIǰ9L ؂>_(4;`$vWa2Hl24s8^@ͷKpY[VCOh_x=–ejQYLfz@ڴo~Zӻוx,n()M4BHl+|c+Cn hK73>N>ƂJxXgmP;C ƳZ [=Mza0 h.PwE1sయ[OpxGFzXݍ8xֳcl8-6zd%DpP@un0^)m-zbgp>!Tmt5xQ䯏2PBv[\*>Q{N-)fE+ ]G:{1J0EAp(Λ1ekHl™y_|}byuOw(A4&/ T ! N5D.6}"!6+:wo:Jh"{&/x$J@fXSWlR =к yij%SR:۩b 2BA*V1ڪ墙+N0/e$BXS%. rQ4)n ПЛo?Ɉ7 dܩv8T_k Fmj7G|3: |;k!Y g3k"‚.(n8f"zz9'/"dvyi #|i顠j^ϵ6;cNzxGPSB>]cb-JrxҾ YʀʼnV*4nSeE`e Dx Ӏxe 1d :1N"bCc>_MׄrИb-u߮b*0RZϡ+[WwdK|p3HJЭ4]$r 9ee[z8枍a0{TzIw# Mޞ]/>h')ZZbv#.ݍ;Q՜<w{vᨅ+k6-E)YH}H}tA`*ti.#~ pL^0 G;qIB?xs6hބɞdH Zfa& C n"o4_.9N}l<0-b1 >.6L`D1d|%Cl"#'ޜi&ʳ)PbםGE"nN{ $G  d[=ш4J=HF٪u 3dbA5jLlF3ujୄCᔖKvJ˅qf5:*$/7.57|82c2/Ψzn;[9`]/s8Og:N00)+BlWfx3fv{G+_o)PCU%}dXU͉bx as ;ƍ$HZCGgU >7)z>j$u ?n{ p=um S1AkM/jA/ 0rlLE3W:^ϤiFn9uH^ȎQB=ӎ2Uj'/ d!A*XS -7*yN]%?=de1{Fbjϔ8f/3s $1\mtqFgjddW$[aZݕҔɰqa6*8s7cuՏ^ Fgg2$E^}[49!1 )m%{z&K=}`1f,ODL`iJHroTAi98X lG7O4:BBmwD O7Fk_q\(˚]NG[HlM^At! QQu{ #0lX_m[4n`OBE=&ڀ#TcfRǏ!+ uhBb4^y=pXi<`MNz2lZe7!̕-UW%3aJWMMwiGY^Љ*Byǥ&-̣ӀƔXeJ{[!o&bP LJ 1IJn+)}⇿Ã\5JL#}!u ufzQ \7hy4H丵oGHOnxST봕Ũ٦q`}=r]7vq4,I Οa  ﵙ,䛭MiU" ϱ#pv22ȒPJf$G| ZU!R!d[%@!*ZA}Yz(0VY;"=/qUjuTdS]e^f7sy$OkPr)Nh8Q9upsL '$=lۭ 9H sW#Fx'б.̢@H|#ʘߤmΙi'>)º}K/W>?Z)={Έ&Y\tXmp˄d>ws 0L^h 4-#{oT1 =Yih>/~ʐM}FcX y1ZoQ-K 5RL ctSRkKRsk26mgS\0Luxbg g823ωf²VߚYϯԇfm;%&ÌTl~-Xk5f9Խ),pf.'bLjy[dm(tL.3"E|64D@/s?Z U^F6DRI/h R4rBj Jx{^]=l*.{D$Np^Wx+E->嶬KYZZaA`(OV|68}~i"wzPݧB:RכgA*n'u%9!]H"QX$u[%BiGaG͖:@Y(s-[Sʙ4ٷTYw /;#>̦v לĉfFeSn> ̛xp~q 1WLy-*%?8I3.2&x-,{mStUjvbBi,F}w%iعyf1|'b7_.b'`X$ f)ŏ+gڮ:^PZ=@Mɼo@F;d.pR.Q  לw1Y{!2:s},'ަ(<)`Tv ~3]x֝u(Iw 5;GS+zX`DTJ4I(r3_kbR 37P}m;غ#v*Ȕ24EZF!q3ا\H4%aʶr.Ӽ]PnW$A+PZB&rˈH˲9:R,%.,0]D[m Sz?ѷbH A0^A'#5+ fJ/*ۦ9EH'T|&oVqp/pVP⦻1 +pn!0#ZG˄!rȭlvנk uD*,*TRp20Rѐ!p.C &a#EQ@`N}!t;Yt;y8R5ݷ[ٮ.FK*8/9k 2ݤ* Iz4ȹ+q"t;J ^/U'ʌ6߇%_Ԁt Ziֵ2e !OPwgͳAm:bthaҢwF:oh E5\&]nni}XdCFbn&˃ ' mzk8[Ufk= $ F3>SG&Ώ)>4@ :KLe3/ӗ tj8I*xKf>#PM=$s=đdYn)2뛘fG[O罤F~HeIPšN6-}|֢Xۍw]PO>Ȱf$ÊX|D/3㓾4zN0>d0S)Nd<7k"nHM~:,qSɾu)] Q4,4a&VgME *CúMa:WS]t,3^{6 \L jc%m(K{3b;p3SsJ< paci^,}) !sWhz| 'ZtD3x!xyB#\jTYNMEd4;t^!ey$sG,!G;h3 wJnck  -UosLHUw"i*an]?(Geo3At&OӑAҞ*IZ?0ٗW3w:R!$ 0?2%$,e\-}>cYA|;Zw|k'|W.t<*s%퐯$ҕQA,F:<z| z޹T. i0WB%O$,gxܒy CҢvi`r)-~2襍oz",5{>oũ6JBNnR+ q>RwSsJp R!SMOߓN1*F%EhK+%kDNGz]eȔ' AK$=r X%7)]zI՛OVx2 .6PU(/+3'AK~Olhy=˥)ZNa ك|='LvzR Q*F 3{yrDm e;HCNgǀE[@jJD/7h55N(~)6 b߽xS%ΏH[RL7S'/cdsC  [)j$Գ w$oDېpO":O r ãB~Z^̥eP{mXn}xUNUƒg؃~js6a<ť_:"UD3hHE<՚ո*4bR+TV jeY# [5W:]`+˭CdK1DLT & xt/C 5QA95{j/f0 a^8\ 'I\op8kw:?g)𷃱5f$"R@Dуu\rt D rYV`^TP3y84wN*T6^˵v*FXDzrIZ+ M〧-7LL-ѤɰF;9TݏJөk(Լ-vAp3yS{ *NQXZpSje>1#p+G#O:/TdKex=Obt/{S@}.?cY Y\% Z`nW PC,;P$GidlTNi,WW ߭gjxQI,|RK>zVG?90c0b5H޴2[Q]|E=YNugc#ihb,t7L؟`_SΨIDθKø4"v0tV뭪3s4+h]&M?ꄜiq8fNˊھ_?1u9=d6IU9UIv0"C')y])U{}2b؟/Y:Xİ6ou`]4s;T v YEguC2:<^"]^1MkCXwZ6ͪ&`z<-J2l\T]k}G7^KD~l~a4BRx4Hj2H {QqW"SIT IxڦG:m&fu>Uj|5D Q=~j:R(s/ ׆e$<$8fTú_Kބ{#SCZ]"=%UK՘(ѡ y*~`߉ -r4#%__mluJN4Qk:,T`-) (qc%/$}l^W$/2:С-)dܸp} Gf& < "!`sx+wL4H|}3Vitc9Ú?q7b!ibĐqJ6|CA ;>6@3fdmY䃒mB[θJэ-:y@{.|{i\r_?'a6Y4oԌ GJW{떇5Պ jzVg]Wv wW1sٚëo>||* !7PZ[P 6q;x1A>PA64!|3$2iBwM؋# L#AaeNM,\f?YI-<|Z3__|R6> ~BKha~pLif!vP2G9P@3ة*wXmL0mtZB\ Z>̱4RAѼ+sc;VIcI1?wPȢýeKʘ/t~4G۰_*^3Wx4vCfC,/](14SK `tպS~|k`AnH8@7;BaAsކxc^6O`iͰKgɝ21=UU&3e|.vƶPV~7gbu|ƛkL&9uph&DZYk/ċC u SYrUbl _HTπ{\VKSM'{<-{#^ z.%_{-*Qs =.c^mj.E9tu/ [z6< ;J:@&Z(q* ],PHi842WkA[ˣ=9,zo8Ȏz~5.X5wVbSpl2d%/(oIO̷~l%Ԫ12DImHt(G)~@sƦNenf ~OwɎWn^N){J3p┣Ԟg*pEH&D5*=DPG߱ޓV W\J[Cc {Ղ죕Nk3#i|V.Gr Qk&LGHWY0Y؂OuhK][ v)I ]54[= wdj-Ej;v}[;ǒfw  KVOMh-Z /|d{D>Syy#^[g/D~ g|}pY9~Q!]R$&GǏܲE{Wz QRۙ)@_<2ٙ* Z1s; ( GI/NJz6-ފLu금l0o4jƊ( O zRZf̣aeh3F$;@'i#V@D  ؍6@ChZ=1g>4 vOL1,kR,q*}9̩97fiĮ&A'_,B#ֵmxs:UZgV=,[/G]Ѣ>pl,ΚqPkihGEyWP3-=`GˣrQz"a8`8'Ьxl#?.z׎ҦqҁA]SD:/zc3Dڢҵ.~G7ؓl7W򈬳p M)[?eGhkHRߑ&= D=gVLOV&>D2`ݗ!ȝH_h =hL`%o y;E`cM4e.] Vk/}HMnG#ٍs)1VJ4xcU1GY;pX@_u9h#VMT R ^ۦfO },˖S[o=3-Ҷ;,KVBZ~sTTqisFN,Gy[`71u pM4m%vܕ^ `|{rYg!PuKRLK|qIڿGDJc[J/ijtHjΌsoʼnhB֫ NsW{IIg^5rgqцvArZeWbWEݻPCJUS*>K%e-NFFb'9mP*ߠg1Ɣ-( a͛MA@Y`0nX1B7SR/V6Kvs+(LŜz1 6i6O#kYtjB+=-F8RId~'jh8l]YZ:L( *t_2, B=4e}(4>"}p}EID~g-Sf?^>>)%eݥzm2XʷL|̐g3o&؆C{b}+%=auz u)aW4{OpW0ϳ%;{R)7NsTIuOq1$j2jpNPyrh4٪Fg=zhIA{R*guhM!g(3%bZ*wW?t"9RW7in_9q+% 3ۤJ|Jiw&sfv<,YWVNxuO9V)5qJ=\(_ቛ)/ȷ縓res*ZAW]K]BJamCӛ +9RID湳z=&𡗉A:Wi B@[[ ~AZ@OL?Y&8 3&/ S]'7~\jHr!#* 8,!VHL+fdZ9⪾sژ )2zʕ Zy7SKvЙ:~I4n"[x;Kp\PD?l k-åZ]7Uƫ#dmlqId673K jQj"pQrd0;0}c[/awEN }Hö_V t$&LOck~:"'>dbIC +‹k5# H"m QŬfƶ8s'Vp**^m!C)6@`n ߋybG' 웨_|k{Q3;:e$h{=g7+P"*ſ+ZzP>fOˈ_;>Lvp]f #u;/۲ a՜'a@ = K-K+0޸=Nt!IJgץR4D6-U<ߐ:; X/O{Hr\VmEר> F(Vͭu&HhѓrkX}vE6+;Z5 [NR&x 7HMrOh4ߊsoinhmb^2[iG^.h's,¤v^mY9f9Uz܀[ -Kmڞ.ئ!J+5jlF6~ma4D A99@5Ǹ7` OU=ij+~%.b4ZY4]G 9Bq@1%|s `k!,K^1u򯭹V &kP+#:~$P^.L'W/?Qt(K[쎟<$H^i d[m )l77PRuAg5pCSi0hFU]$WNgqkѰ,7ãgF*;kQEAiffS5A|EGs%u,:9 q@ 5mI+]o-:J[qC=H`:o|4gєäsi5N.a&!ޝ(3v܂p!܁j)"J@ڍQ&|X0{؍(m{(hauJb˖TRdA ƣ6f0>K8J\hagȪ=4Sh$%Ua - ["t5 _L ""Q<9aUi,q-VCZ+E^TݪviR6y1!. Q+|wTzVMt%n =U0!ב#R 4n+8{V{T{7 r~˔(2=f?'ݖiKHno(\mȼ,Eub8RQLC&1mX hi$I%J [;.mF$%=vF{t)N+< =R{l#ypiv$ӱv.?ؿY1-qTx4@*5?f(8By Gd|Sޑ8&|A-a:i Uugw5;p쵋?~^f t\!2>FxZ)#F4'B浴9z"Yӹv4_鈎3vjJGQ6)qiJJNhmBoT$T KLE>5!5 /[=\"(E"}_ՠ> IڮP9CU̐+T'6Z[|?؞1Vi: $Dlō(WF "TBSW Oυe"; hc&> tM0|B*Pzyql..9Dmzӫ "b>䊴ډ䵬edVǚs^H(N܈j  F}stvt!:]Vs̨ٵafϼN ̟чZ@Ȯ05#Rѐ2Y[2<̣}V6*C߮H"Ð8S qLAyܷ)A OK2wjYs; 2rl ;u @0R QX;l"xFejrkB3bRՃ,0^kN[>nwMRJ~=K3*Evb@[։̮Gco{*yl{1PNiHXMO։\oA: Yb*msp 뙡dWeb$/#~FlQO: ŘbQS~{ i6Ҵx]tg'`>pߌFɿ_QxPLbۋ20S6u5C$p'TTV^jy% Td(:7[• c?D9=w8~m_iS@إy7g}v },H0 c]f\eW&"0T2K ڴ<kx\6ޗy u1$Fߌo1 ~'GExY;q[V-ٗkq4'<5PDbU[ieSEZrPУOT+ (-Pl9TC$js籜 tz%,&hˇ-1{O i"4D(-.+eq ֻ+9&$ q;x4|xES{3UZ\ʮPQF0pROb{Wܖ'EǛ))*WD~0y.3Qe'a C,ƭ8\il# 2.&i8 !-傿?,\9u f'j\Iͼt{uP󼀇OawAE KgAl:}`z^5`ףhV OnMUȘ/qOd >̂|kkQ#GB@nl$°MP ٯ.n n%&K@z@ TM@y`)Xn012/Tօ}6x<̬\Ft l u9Ɵ9Pei{hrOu"x.Bŀ]FjfeUf'6J~AO{t*=GK͒AL_Q[yƜ{Np6w <*6(AT<'qÕ^hQr5Qmo0 i-X;NZ!O3v, j\y K%Z#6j[i+"d0l OmS1bٸ7/G~.yu&mWݦX SQ냭@ɣi:L>߻2Pe{5Z3l)~V|jp&BU[vԼb>t_qmap_I;m9;i9\'Zu'I@C>??o t94u(j|m·}.}tWQGhMb .9?)(険?|ZNoJ>N[$a&MWmrT}2 i7\Pot8EU "͋iohִXJ fP9'huFtR;l ۠8:" N(GE9}LPz>Q2sM5mQp{9f'8:r=M8Z^2.^AU8.0PG똵k/L O6ªV  1x7J Ã-վҪ`Cq$$2A9b/5:I:? PNl?M}n^y38? 1eL_$u+&i qٜ'Z&"yXΟ->>"$E#}p}m=V\(*/)j.ZժʄF0 T OeZZH|By}D $}׽cʻt yB#VW߿gEBf&,C%(PVO~u,j!BaSQDZR*93'̪"tvJ8b?j 9%+gaSx-/5|ğX)kF%'(݀\wJ|=ͧE??P~U1mGj@";)=_DVY7`-1C/AywL ݖnQn4p%N < ZrlB]e;[ * {m(2%6sy+qbf\D)LȜؑJ~ 9EZ=Dʎ?%BFKCD0M,7f+W}&A~o#LsX2uȪ +Lly\)4no9BGfll"DpFM6y<#=S u9!,`kg'a4i;>#|մ Bx>8%I7qa8wʎGJb,kPX_t4!eo̻1.Ms5 DNpI٣ ظـ1ה=.g {<"!2ǧi7dþ d4 c l3\$/6W2%\fiHE*d{#߶!."Yt2rD' 'Z C0O&wA4Hi% HwҪm%]ӎ^ X_,L)c+_`aZHtܵ6)Yr~UK3@aZgIc|gq n[󦤼UvְY;)g.tN͛1&eE9 XT%M8[$A@4VN؜3z M&CZ]0oN-?Tv=uIɱF7-Rʓ'V@O$|"sZ-4(֡P044Wq!H>yW=(KY\\>޽þ *ܲ$Hn}u85-?T> S]#2S2}Dau(vB7IM=kO2HLkt!ki,*ӫ_xbʼnSXb%t(4l˘e,vqI^"2+qb5aiy Y3lFC"ܤ/靡Xh<[1Ju*|Z :g2ײT+O@*Ac|M"-52igRO{0~}ɲk&~H™BZgmcpx֝Q8a|n~dM= dtTvyBLs&!;` @d9&x~'Z@|QȜT aMzVPG7-2BAlLg s_1frdo@oXSfJV *WhyƑ8yWԺؤsJiM2ˑʽ&Η}VzKWV"xwt`Jh- 6ݲp2A׺{\})ݴPL~$A[gYӭö'{3U^$#2?Pv0N9QT4wT>^ͫ_]qd c?e23; ƹ60vMB|Ԍ*䆑oZIFM?J*$\| ' } U IJ<'Gٌٜq(~% a "۳MBXITƌ\/x*}1'-,G$AEDjk 5_> ^#$s}\$xߤ>4#t^b3*}2 &36F7*@Lr ězHF+-,TzhILCb.c ݲ(((IWf4rQZB|7 ڃDꬷbCu&"fCaɏ_b [`CSQ JA냌sx׃h;&KPx- B n"UO6g҇DJ0?Ԏ^(3f3H'k o@x9w8%67deسA4VN;R[NК0c9 E5 vi5ݞV >9CeM2( 5Vn_T=Ft40֬-FХϤ1>L֕U:lDNT`i?^t3Q  Dڰ-}0+E]KlK:;/N]\7Lg1AB%:S%羞_F f LdJPĪMċJ?䜃[lug*΂N[HgP%K- JpnQWt;mZ&i%\׈]rR2&B~>sLo(R>Ad54p}j}_dXe ##hX8{x@PHwؼ{Y\;d؛:y964]v< "u a}{^5IcvdFh(v5HմKs=5@`Iރ[)!j˭YXiC2)ˌ!"Ņ@,GㄮHeE%un6a-m^xf8z4]* !5xϒLY~;6M㕯y,ޑY(Y9ɯC8ڿ`T3sPw[1'D[zdɩc[`?JᏮf5?Lc'Ll)+<$Ƃ9zHzHdGK);x;uo1sNw!6Xy\V}%%%)ltI8cU"P;`^Ao Kr)#_9H[bXca:gaY-b;i I=H,YM5mh)ذpD$\z;ӠNwx=U_aO*O>D,*m*gB@L Ki~e Q=G=n!WyS(P WE!4Ԇ4҆[YTe2!:[DVl*,jge 2%K ~}*vXQ]['~KbdJ VZ3S^23^Xޒ9Z)cLZ͢q4*0֕Ҫ3٠A.E @;%B`C,՚2"[5i?O _x*:=(9uPj:PSxvog_QHGW@{/G Go^“^=-34׍E>p\j]dk x|k;zbATAVxGcTc$28cwtw7ޞj 68}h!&߯`}*K *)ӽX:<װ,2Mc"y:`0`P%8sβЈzc =ęg*A}lKmh+-J_ ӣu5/| EaNcv BEz_$gK˥ }v} _ݢeU2_ca"Լsp(I!æZImHpU8UVϛtcEgrxGҮgЄ{:0diW0Y|g?7HNjNpV=Vhux: RhTi;J"vLC#tdorÁ9gD򬔏6IXnA9JD)PyPH7}w)Y'N\sz z̕Lx=)WZ9M{ NDScp!o~wE~A)Ofy~+֬sbKRL~U(S OCv\ mwkmf(5s>̦Mzr8Mr9 v 7D3öKFJDKyKc5-ƾ#cE1ksVw=eF҈c0z [?(5c1PXhc(mH3 A'?wW vAIG|D& ~l: f*Dp*,:=[zػ"3JF|:)C\">P^CW@[%Ow±xʈ XRnH:1b")m _DHzbE-'i<NMx-}'`MQ vM p&HOt4dlFiDNQx2 )`͑l8^#Q[>h-CaĮ[61FnW}.x 5 | 7Bb?3jeFZm .z:O,B $sߵLSw%I%ihu^9fwM'I8a-@nxpr$@tɤSW`?OEՕ]ZLJ6< iDLڄs&y='wB%XQHvA'eeŻoSo@(P6;-_N2HyG }PIq0@?t$!G&¼rUGp$_;TƗjy@@E:}_0ԚDKת\uLse@)-]X9ҧ +r9Kf'+}f(d 6 ~38Ms^ƙ6oוCb3?W%h &\'=dsx菷eQ>(y9BƋd M 9>v^n]xCG5ܬbӨQ#pM/CO?;Ff_bHHXjM2Q1 6Kl*C#]`=<-Q?JXzv%J7s\s sXwct>^a^.bS&EtdX<oh^'`g͎i`:%$kq;6IO~Uo y?$,M]t*8&]G.-JwkXRE]R:=R|/H 4V UY,:4z+oċS]Ǡ蓗2XL"%J4Jq9q=,}99NIݩQ:S T$]ʼrf~@WdW*) ,_H>)dCC{7l.t:'WEFoeHZ$G}B6w+s^0VbÌY{;B:6̛ylL3!/YWfFA G~%"R{DA4C,_V w9ۉvO!j[Ka"c}hzg1ev:_(x'-əR=M&$e g67frX j)6(42veH?OIBt'푿w$0]h \0tZsLWyf*A>xGn4Te&02kjII -E(VќL7(rMI|t}:ıJ)(tdT8j `ަT@»H9NNg p_1|gC>p(W& R0ۑ4(4f{(鳔e8 dEmxh|D!RZ՘.XZZAxv !| 8)CsqD"`ցOZpAO%ay^.l=z"32 J{dWfr5@j]#^Q", ҅@ N!vJo=H2ߕ£m[ƺbb?4Xzt1cGqI#DYbs<8*f? p5`ȝ WO~AD0@Cl]0a _~O}sq۲0yh$bPݰQ,iAgGHZ*}^coh袰Ǐk^Xd=e_ZU7ef=wn ˼# "WSIERj6x=f_.1Հ)]OEƎ㟽'komMKV4EY ɜsڦۑϚoH hx!!G#DžgPU3~{O{$XqM,)tF_*!QٳӉau82Čpቄvgzdm MzŋЇl{g9_攃*u2V3F|ݱJE7 P-5õSO'[41ǿ C R:̨!UW ̂Vr]A4kآ^NC%`P&RG&RzI]Fwff-k$=`  ep?qW1>dTg]z %"CѲ>_?}1Vkz3K>f"+me&&=qtPX7KFTz[37+ V=VNEW K͏ySR-7ގ6"u,uDY(| 8+/[)Ljџ"Jm *L~oW8 _ƸõpQb_{2ibhl/yj=ߚgAa#pF p⩿v#j+, [zmPLI-rqZ6(%/tM' .{lU*9h4bLUfcc,-E!d}_[RK׳_7AeFN7֧'5 +]zրm(\9 qlMΒ#VBHAɭj('3%>o; oHH]8تk3 '%Eڿz[+$qbB:TFTG7aR.&]r|H4O_BS*N@I7<5r55n0KuzkQ${TaR4rN~ɠxD0Ϋ40e`*'Ipʹtr-DL(Mah1;fWOn!P NmZL=>./C*~xRUݎצjE8 Ȃ-+`3i}!e1~9IqHmp3?s}3t\: D哦LX]Ex&K[ޞӏRx†&EETulk5Hxr[#z29L9C:NT}d|7}'KroXފ\E*aEZՠNAD" \/@#\k ̞74B$As"GIõEH'!PX]{n,*Y&?6P =4;~ZC &'f<{k ,rt]V8LYDuȂS[jbG{20qŸI&`j*ҚjV*=sq敱Jg|sjFQLOys ^Y4$#3c4QLjqۋbqv{3uBQ,H6k`A3"b,x!B9cGn˶{Q0 )F~b5'/M*]왋@N֢2ƶDw3Wci.6mg祤 ^xĚJ,`3i(@bǓ0+3k,m <5M"~ ~EA -DCC .*O[mtv %evŪ"mh ReU*v!3S2_AmP NdJt 7꛸V_% okv0{g=-`Pye+]bB䫤Y&'IJ0Xk GÐF IީLдQ=9&Nӛ.`݅@NJbXXpl?HSAE@+._@tiL :#n#MOxiM׻9kV-ZQjƔXEC$ejR0 P5HB%OC,_ @ߥ}B9zPA]}Hc9و#8e5Y]*dmfmgiؚ9a VT7fa#wV\S@Ŗ?n*]Y݉3gd2hwG3å{KowmۑWXt@WC.BE/C|z Ң=>J(Xlbs .pjrV@Y4d<$v/oB8>4˩EΩة rWq&jQ*B[绒M[؄ja9$1t Ǿ |o w*0Ybb}lDlvB$\G ŶP k@PIj]FRgJ-~ۢx a1:lj*Mг;Y_Lj$/=Cc7:[ | s- 2!n8H (Q* YFgB$\,yϐCnsrq]!n9?9:RMz(W0LRtT%ǥYRP!Gl~lL~WE p&$Z:S{nˣgmlA^ټ  6F+y-UvX?8gxB0ΟDž|=/Kwcr}z\3< }OPӱ:5  NAJ6yKnڙ0@ud6fd lܡ'_,wV gۡ @ ڬK 1aCTw`;YS8릶QWi -ODR,^!Л4$ @fpk!<]ܭ]Z;'M^I%]|QӃ,r =9 .QÅu^Ekfw`q$IypDm;k[`8鵜S|knFsck5 sRtE:v`JoIUD @>}`yΩCat}_:_ugc8f[tVDAK蘒nqL<%v(a(~qUJ5ٲ<א3˾iekz4Cq]G =Gu fr4wܛ{8+¤>crϿrE7 U0=w >@-ZyQ )JP38>i/8wHumeDI3{!5_m_w*O ^igM6,r}_f/!_}YuBionLњ+X)O0ʠ1*H8d}،ݰ% &#R-s%w."^,xd,~ DȢrqNJ a,5Q};'u8vXJ>T=4 $S6FWR/g l¿BSlY,\ S(DS=˗ ;z|iO+[R^˝Дsp(, +CI>+1%:`bw3Om =zy|f{\f~|,xԌaǢe$Eŋ[oْ;5e_8"=N_{07S_x_66|Iq krѩ^~Mgb |BȾ.boLbvob,yzdcIHo}X9IoP^\y"騖c}#1u;zm{<7̥5 ŁA ɯ>@ό:ߔ)Pp48%U~u%NiP=G| @ͬܟɵiH}2 >SA-iM8ˊhZ/yE $H1OL/ |ò> 9s߼a@%2KIv]%=1Ln")Oӱ}:]4b}6JD|20ΫwTB6CKo^Mi4jPBgJJW~sV!nz$mݹT^'UNZ˺F囲u|La\#kbIIvn$$"dH!V UXPrvOٝ Q2QJ\#{G~6h oC+LaꙂe,?~IZ/ӂ38uZgfpuga[N|4KB'7;@ eevBv_ PN5CYj=ͱ 3_}g>mXGg={l߳=\r1WǭJQb~E-X~Lmi!}vY /imoT1~`k}F`n⁖-O^e5<$חr*<9N6UW3 |! <9hѤIȫ*exɂ%6=C TԪӸt\:RHb+JdAW%\1ai75#ku+ s*.z)K!)=&d C{p'wXlfT6kٺK~xY fb kAṳg@ 7v%}H"p{AMfE]|I)֪fkܿf(K_7)J~td42,rӵFј3'  GwHO}\WAZjB\t(pA6nW%OozKk:I8Y"\:R$SyR=Z{ U2'YlAب=|T# ]/P*FD%ucBa~6b>:vFNN=u\ގ[@Ci~Xj%Tt@#;7eSP< 1v>dåoSZ,*/u.K*\  TGgYzQBbQe2,+a%혲* frV$ D>-#.5J@юq?V_TPlAbN}"$Y K>;O{;@V#px۬hN:ڶ b"72L~ ⿻>MtJDn [2^RJ⟈T3 `$;떳z]2ePY54杶 Bm z6V(?Es>ԩÔJto#8vKKr.}>G@ge&B,sTN., ͊d=٨%qJJORsQYI|5x*Mʎנ}ESgޣ[W+.o? br2pͅEĹ:ք'Nޚѐ=^x`7.$Γc%%OT>LKrHGz ܧ"?]BFC9e߆I`Jh3SGӯ'-z,;$>R_r}c`8"/g>.ކkN~\T9kUu mH'`&;ˊ4 o c>)Yt~Ҁ  3;ndKQTN-& uIh(ϐň%%tӋ܋_ݗU\g>VJKevx]c鑼<յ (!#^":(nٹD `k*xR1\ -$M| H.By6 VzUpibBΘ$ IBNJKQSatkl" bBnHC!w{'QgRN ?|avS;|ڂ5ʳe$ ᥷%Aq-Ńa.;H+*pm h`6IJK8_D _=.(c+ߴa6)Lae:ϣ7h"+f҃78\o>3W/(dZ̍ry_оަvh&e牚jבhb/K ,@xD;8Tr<{oPg-fIImdW/Q L Շe$:>zZLeW3M/8P29VYQ4 A]!}mPdqk Kmgk,/M:};H2!-r {BQU:=qNm8'k5X y0}T::AV@~ 򸛶Q&&ME:Srv%!{Ipo0,'g_2K"s52:<,fHEw|\Ht`MQ3o9R֐09ȶ^VIE8UxKd7Nif""-WYv|*P\O{F[)M?5|c%T-N9/v#Rk~;Oe[CK~I)kʻs`4M * dX戓Zkod'%lG|uT~f[Wsٞ!e>YQdIwqS?#5it@'O+b̆ɚg굍M!H1\0⡳RW\dOZ~49yĆ46T7~hX:Ø{HM5%(丟k&<?qH/2ˁ oiRaxCӃբ\׽Ǻ* 3ΐd=OOP\k]#Q-z{*bNs('6Jt2"ަ b!4͈8tx U@<(q>֚/_}׶%- ,D.c[Vw_bpEHqTIJnbm3e|9uFkHwHCZ洡bqm(ǒj9!wdQ7`{V]_SI AaL2aY&)M Eot['XB:Sw*1V[k|oAs{ՠսR/0j< h񏥛Ӂ5\N͉՝F 7b) V"jθʡl 0ݮKB:`(s:)N6d7atxv's,@XؔTNޮ/Wz4k/Gсr ,e27tچ܏,({CAVyMtG~,b֛Z1ǂEgq\ju KL_ rʱԐ@.]/iPimg{/s-5RF}WH. $%Ұ {}.t9Y]kױ+10,JΉf`[E)3u.C\=+Y{ * 4m4hN N&N, [~4whOqg[>.k]A5 ѤƥcB+ & EM~ĖmH~ca)L㫧ߣIc=Df]ZK,!oB7.Ogm78H̑]~AZEɂqye&{N/H!/w#Б{%7JJs60 GY} 26!55ԇzfN"i 2Pb%e.Y6O_Tb }c*'[3 [cKI[S2QjcwqûI1MF#f > ׶YL:{z zAÊ׽%.]VawuJV%{:xRB!jhWꤕ G=|e'*=/,Sܾ8ILYKDU$[!koIj$ڿ!8^ hM">M+ц]VϸzءPT J b<ڞq)?bSC{0>{y-C䤾k>6^;6Պ0P S(=sDz"Z65p6Xi4 '~|WĿX,neU^TeʜyT#evP%hYaȕħjU;՝ fms+F8;ыkfzE9a I5~Y>6*D)z@@ߘK+@c!7I聩KNkGz!N ֐֦}byWXcC # 2j *J(Wug#?zXT\`#%%`a{8"ʇDRCve7wG3S@Ҍ$&tT$0Wſ`ȖR7 S(&+/f^U`5-嗀Θ9$_Ѓ_㒡WX?X7P[ב"``NSZJMrlzt^a^VѶUKq<]VA?--}Zy`-3~x-.I!Sbd +7f73 ӃXZ7aђ **CbDC`&6Vs,zrEbW\{U,j"$ D~cuy3i;a:Y80/SX*ի)@{q$;6u%+ `KGP=/aIS (r2=O ERb=T0+L'ΘWޘKu {s}ibeez?U-G!fcz[[M3bLFº1@Jʁgu+ l3iEVA7 %RD =+&,Rv3[o[tM8+ ,}kEX6kmsE=բY`+wȷ|q E4>4[1=lWְP'FӠG\5@J&}k-NaKzJ+,2v37<<|{`,IB|M q,sdq@F!48MZ`$4MtӪSTO¼-Pam]'bE0x1X-e>]2.}:+^Xk zŕ!٘%-!74.~ QhNUq[L7ka} QLs0ѠQ/<[)ne^M,G̩ lkFN,{< 0ӏɉs5C/J\C)ԓ' f0j$9=%w\7Ǭ)h=pܒڴ?Nmk!ڒo%VUJRm(3ݬ1OUDXNJˤ`0 Çw-5^QG0핶H;h^[RNyUq„ц!?F( -?M\JQZGiI! >4buy^F3\u+ɗ*4(,]=n!oѡt] kVOV@tY᲎8' [SRݾ57R^'@F20O\[qJfJbgMΠb)\v6PtlU'/zLG2ڂ3]:XF}nS,ւ':!h-O*%n6s<:`[RioudXҊ5iqT&ņ]KՄ$ B>^/2Ԋ1*'s(2D1]TҦJrPHGǗխkBqT*fSu7ݎ=^8j"q.s1Jҕ+9j8SH{0=WP uw}Zqt©Mn_M}~r6 {B9#r=+lVss8-Y_+SdBgRti)j3iB2r.u`="q uw>AqIBJ x-֏r[VTA1uuxŚwT18U{}YU'E dIh|yrHsLM*G6ՎLX eXE3´Ar~Jԝn?A_}#bJaI8uGk"؀E@ 0 ioIP]ۈ&Jo\YWGGL;7fTi~jl:̙Z~-7RQ:"q5M'ho#2bkim0(>< ofҽI/Ҏ G|ce(>+4H5I,!F/2J -mFd:`*J5i&Io}"eGѮIU鮿h'O`eSqٳ1?xq5Sm֨/z HGH2i2L0=`fx A*B)(snSKfQA#xB~9"چJ4#t-rœU.K|I t0X)8F8V3ީvPs }$UnvM0a?C@6Eη*rn\133tsGW$]ZGf[ .$ŹB/7 x.(OUme@ZAakn@CgŠP*b6UUqZ\q|p.z*\Jb3Wx٢ew7@pG?4CҲy`N)e+xKbwS@?ҿPhzS$mZfpX7, %4Z<2\8=vhyhn5WH{hs^x1@6:TVD\w~G'oGcHEUOڠYC!:8ك޻đGedڋP7[Mt[:"ӏ^nj6Xx&k1`l/!1kߝ23nUn6╺1ПEfxO;~QCՖZngfߤD&@!יcCO#܏vl_KC֍P2.ЄݻwO3&@R, +?Ch *_>C00!uuzOL\?8yX?Ru=dkoGEH0_/1 Ȯ@~K#- |vòx HuhuDYEٶgEG39«l}wWHʹٕyl7p$Υgf}]0ڃxl0QHU\lHh_.*@܋u{h9eRCw|`ا>W=e)'@o[j?* d=i#-O#52a"Mx/g9: !hⰪ =`!gBQsfz0@}VEd}CUrʵt#Uϭ0^>"K'P Aeu> uSGU"oSx?]ku,S, X,^; N.J5'p)(J65U$3:z:_<Ӆ,Y8ߝr \hSǎ| !Y.-jkG FA5a^ed{2bnK^p?O(7]{߼Aplt OW1Rqv cfm)'Un_ E@#=D$:\ו+7Eîb- f,"?:M=EBND LP3BH鍻x!T6*:2^XDLmW'x|WSpճE+r?ވƀ= D#6  y, üX:뱓&Z[EH2!"<<@޸xCrۧGK)c$)a6`WPl0i>~NcHU! rc9I,s` 2$vnL1KH;HZi )nTHMTO Ѐ Vk q~+fӲIϔj0*j-O3zb5c[:Of-з5Xy}͘?a2'~qmaah@ GAeyC= \$`3Q7z @kZY FɷPD.@plmZPV@6}80vI7t8 O2e͆z v(1u;]:&RHȌD qyypf/(/lU]hyjx -#YDF1̳i']1n0UV`i hJ%Dȶ|ɗ-o ^iKﻩdS BfQX(&،~$;&Wqӳ@o2kaX}OSS_B8Bj(܆4#.Ξѐ 8prٶ)#~ٜfq_PZ$m.yĕkَ0mg0JS]^/}o%HOg;W7? 8{usR[?K.OF6̇5- &DG˔G\R$i7Nks:>&p{Ьl7r dcOZAn0==@w&s >hKLHg vw_7 ¡_9'6X߈i 7Y76%o!LPNeiWOd"\l[#i6(_t.]&BG ־t8,Ɯ C[asg2zGH,We,'xO#و ~Hch|[In #ezyF2(.HǕ2G[^Mv" .K CNMߴ7Uk =txag%{-P$2c[T{f' J=( ao&?5RebcPtNn!3'.f&⎞Uާ?iie1evnI ruY61(VH-|̰+E}˞j])rw5Ӭὔ1y ͓oŀya.AM8o0Yt٢_p&Jt:5BjfQĹ5|uǁ}a+u}<܅;PْV^U*tJּo-MiQoIit!|Wq)xj-|,zJ cPnڴuP\&Tdˉ4{ '+QJ̈́kcDor~p2:-~֙ULNԻ!xwJ,CƯIak/ƟO VAswOUǀQ8ȲM- 5<ހgd+iw#m4QF?ic_\ *5Дh0A:v ݐbh@M!e箝e8Poci< T.Tf& Z͝0, G_V&euڑsLƈr b9_l =?o⿾2gYPx} Ol92GI-,B{Q JQmC=xnc}3@C%z>> hwvmyayP{LNϮ4[J'b@G2}l$YuW~g)7PKh^(4 @w8\Ť|4A6 ʖj| W)O{GY;؎Z`@-?.{ n5P,1l92|?" *>ɸ G耛Y Qur9 IE,tNua0\M# 3 Yp=nj_[bUkݦ`H+0{_hoFIP\w7zv:0y]Ԝg3K"';:t2ܭr=<%lx75Qر~+KzQ;:VXpJm &u3f\ s ^xmկ`yyz8غ3J&8(՟#\EGpVU'fgߙȎ#>Q;/-AEOltWKt f-u|@n.>,-NOB^p}nu۱ lg [yBQc.>UͲ4#f:!gҥJ@I _]mDul<$O0ɫ~@K0v(ubP5om|OXP}8Fjiz ~J29t,TgC{2* P=nzP!U^T™ JL1?ZS VxRI4 WQ>E+doRSGA]fd'YؿO3Nܽ-GWM#J<L CijU;e+0!y4 zg՗EQjQaKv‰~=:}BFշWj`5n \_갈L4km';hwu;՚ #9RR$ ktw۰3S$3]7lroMA#^/OGpUӄ u ÌK`X qct9 ;uOewݦph;u=:[HjN'k Xk@;2\_hDx0Yx_f~~d># ͮxU| $HMÇ>k6L` wZ'XYV˅t,srG$z2uOj:GƛfӖ:@yKeɨAePsA5o,-ܞ,Tqa,9Ե'EVl Rr]y]A4-*|9K&$_Jϥ˜x 깙65C\_U2Y,:h!~$)芤^k5+ |a?4jna3`LҤ%.]x kc2B|؊yx2 <<0Ӵ)`k$qWPMv|p@c WAt纃YԥxIzNE$ M}/eDp1{4&"gVZ&owcA 'ňڊ J3*` \G V3qW(i+[~)nO| s8r Pp_ WӠ-[,!MfURݐRj> 5Z~*jdyQ z7=t?I<Я7hN!z{2.()2}\KȑfC1`e*A{0!nϳ&xpx(&Ei4a1fLkN;,FԘc֢55hp'y0G;x&AAɴ15٬ 0;2F"D:?Ppn xmjFۗA?܌qIs'TK=1sȒ{O9JW7`IP~y%Mr|_/Bzt΄]r)ύaKȐّ]N']`N>;'V dWf÷!$qޜ.^9wy+?.gh-MO$}@1ȯM7AΡ9N?YNJnj\ګ H1+ R6ma?D 5et!E'Nǽ[R4O$5ggt&w Pt@ӸWTLd -EyrѻZqSʁ_ydXMcJAMi~&3FUL 4@ ,y,jFF ^(F=36>J xS[ rw haʊtC!"A/'~ţqqsvo(^P꘿%lfz0ErُXP@})O|3Zy6& ɎEkAR^@Yo?9>E8ėoL\Ι8;+[ow:!`_Ct?Q @+I?w/\xTR?}W5EhD)0C?S`~miAů $[58^pKhM0 S|{.~<Om> h:~PSWd]6}m,F@)9 P.O*N_T =ąb|֢`sWD*h]ڡD`S4 "%t< 5)T9TYyX,udTÄsdž=HȂ@.k1lFZ-F!,-zL];Ti5+{'n43E+_oFH-]77 S26(-#8oQS>p2kW(Xħ%Dٙ:X/}r۵O,T>B%wHSB7ټXi TN=eψ;g?,QXn0uErв-:$y:,pf#v!=m;;OHGH5{䓫o:"<@MyGp8E‰!BFC(?'J Kc Dk&x=ITbt.#˳vG@nTUs !bx͏E |[~%m$U{K!"f8}2>%$,"1UQ#Ή^.ϙuҷVm vxI6BCJŢFsZ*VL#ˣtnh !Y, E_ǘTV6T Wٹg|G`$3愓ѐ$X|RT:ׂ% 팸r~0(:ᤇ0ObLPdLɜ˞oBV?-jRv) $bQYCWdR6e1J7ݿ)OoTҙ1g^ OBkMR%%) 8GCsLiu'U%@ۧ֒/Z SRkE pD<՞Sp){3{}1;\B )]e.rrkr_,s&zn?jƆ-C_ِlY:FLo6˯Xv,ps ~Tcg]$u?y,+3a1S ŋP#)4!͊r|wٛo 5@ 5QjdG6_c=D瞢jEǹ鿌)R*}-Xvr'c;RT|Aơ{g :AkaAK  %Sϩa.`z5U(]Np]LIB:dX,T0q) yt%sy "=͟~qaou6'E-3Rf|:2+̛@YKl"&#@VnHPX oAFqqD&vڋ0nIT=R˳5eg&\$8/`VgLFW>5@?=>w}k:wPyH_SѴ(XI/DžxR$rª%PHi2jG +Ɋ( 㔻~:wXf{؜Q²N,6h?#7owJOՌQ5-@{7o ػXJ" x0';'#p¨;]NkLm=8:tXҨV>H 8[px'o]YjuM/N9*&>SN+<nda1WDau`4EV~1tک ~I|k{uXb21u7 QGݔSǬzǟW@VVή)dޭVnX'н.)R ڂXW-uopL=c Zy${қ׫}n[nп.*6 <բT5o(wҮw$8t'@۷xҴ9`dOg#mmpr Qoo4YGɕ4`>_XX{P'au\qnp~KJ`j :aHKA h]zD@=Υۂ-`Dl$HI_tx_jO8 @{|59A6ӰZ\IL4vim/3mZ7'rEoCDT566 >Kd$^P4M*%X9yTTve8fs(>!J"N`מp2xE̡Z ,0?^R(XځR;ĝ Dګ:u7 9qяA5oX7{/id(9Ѳ͆E zIkt7 p{6wK&3[oFA2Bհ &1OemZaE2naܘi'!MPIc,Ko[w _ds\Afp90ovn"PV!)ˢ "za~ȡg+[l.d$g~@Cx`g5㟘"Vx"{}JbʵC 2m0yVBȔdZ-G WdT1jJUHc[ L !EHWjSDzK?c":2K˞C(nyil"{yvo)z\nJ:c` YUѡi6[zK ,8E&#$) 1w:mz;I⡘]=ݤWpHQe ,dBP0`-:Kjij*/$!de{fC75n+ƛJk>Cn:g^c:g୅`)}|=AQmXiQXuK9o]XOMs"74;8J*!t\%EфbXs:e >*s@z=Oٺ^k/eGUH/r)DPG>;cO1sMYҾ{%Vt&'2KݎqkWd3ύr^OU_\ZjNV@DQRn,U9Кh!q>%I6+{w)qe$fY{ȱq@&6o9C{%F8f[ WXl-e #0o ;":hE(<"JBH F(7䶭6F+ B2+^ PeLiM3nӽA7ʓ@s=(π~ 'hYg3WY{XFg"*7О,H ,92@E^s{Svܴqzp„AcӘ@N~Vnm{k#UC #܈^9L5?7n UZ)ZgƦEeVEMd[Ym*BkAP:Hqkl[} FP8ѓ]˽?+o栌}:.b%* I4# QȒԃN6MܟT"BcGev$ڈ~.[qr,,SIXz*{BB6 ^id94*?jo;bUN[ 8yOO߁ XEJI̾:.}4 VbTx' d5N"$LMѣsh1Eop'+"2,o~mO'-IhCW 'GZy.-^q9҈{JO`8c[aH{ -_M&׻K{f]Y2=%u%?cpi|3ys&wcikU]]A8R(X2Uc筑TXZ=N?/C MS] vN@TGΚv*֊uU_QLs.($WKJbg0o.܊́ kL*&:ֲҙ-)85 2씀t*2,X 1t@+ ew(~ګ %MHu~lEӚ%HT6E 4J3@YNj,B}̳tԄ-,vq3KłA/Y0ki6"U B:OG`[X?&[.;5CDļ57'f)q˾*_w[@Ib[~*ߠ5)dvwN2fjK lpԄmr.#N _@YiϪ_qIc}z NwIL`?kB|-QE9@,̚/wۂm@@p z-@YY0ydcJ [Qxѡ?Q!X36]؅|5|Qr3c@ 2ԏN8qFZ~5\5m8H{cGl{* AH Gy'bv4r"~){ Hw9,B+\BKa;~5 jtj2ƸD^eoufi2p/յ컺yh 7EZ!XuZcпvn~Lި%æaJpr*)닡8 6/>0&~lEߋ;UZ6{}˚/qK g8⿯_B"qBa k6vOj"*zYG>k-]i#^⧴P8]GcR({z1m Rup6/g@o-+>EeAZ"XD+ d5b$/FSTl"7ߗ;KoAߵ$fPo߽h wŚPwέCU{c 7 ^9v􅸁\) ѸV|WD duޡ̋.ZŬxGʹ3qz{y6rF~!fDMnR6-j;M'P"]ڡBQ,b۸m_>sXVdJ+[87E Ѽ2`8vYzO- OѰLNd3WWi2-3"{/:ذP?+qoFT#dudLZMLVTO=H#HKEp{/`tȩNJ|/7rw9`Go*67!J+ㄝtE14 [QV̽0%7my}o$)T&HX暕H8b<))ӌX/~;GnsڹeM@iaHw,]p(d R5*#p-(=Zzɳf{$JSM瀾+mCtJ;>FRl,R! 1}`_Է'<)W|S7Ɔ9e1e7lfް0:HdC*d{7f2lkbswޞ(WĞ|wxZAG+^2RQ l *uV+9iDgX3}cXNί<GɯMV@c ! ?Pe߁3#kGW/#Ty>rF eV>;&8y|=2mņW"Hg_^5_D=*U0@E4[v6D4b)I'UXoM6!@},ج,21ԚͷKǀn2 g ՜P#:o3~>YN=%SI :4j8-LI~koرoCKy +9AwI6pXefȼ|TÆN_v@d٣Ju3JЄ*A*pALi6¬MÃ2S2j`wj h2}$sh7X߸'ߘ'dh!hWw(7ZJUaLǼlZu%qe)#FuO[e^c.vbS 3kY ٩A/c-OH;4v:`avd ;(W釪6rv*k * eCrbQ+fȲqj)H7sPLLm'&o Q媐l~iM?GT5nf' Z?#uj}\Nh#o0r+3-?EqQ.dth/Jԡ?X(7upt&9fS0Zv.XU #v x= +lzF}.l6F  av,\ rܕR u}hVtcMؾ)":Š 70+J֗ Gpt'5b0 p=ua>ghP'^Ϋ&\dO{\4]),i;n\(eo\fa*lE(g5c|JPU t X%hŗƼucm6y˳'oJJ[dY"N# %)EkvCp}; %W$f6LE IXVoGn^͇ޑFH ee|5#~쏁x'*QxoYU<`߅g}F-ܛT%GryQro)xL!;a}SVu : }Vs( =P) IhK6Cl @,J r2`m`ƾStBנꨗ'ʃLl~׳G)hlZCdXQ,k%I_3X`5elE(PGk X Ghx ),P" ͯRw#1ޘ,mkhycx_8Hߞ]$ h 7O`0X v8(=|(5."KȹȄ"X7vq㍟RhuQPGi'c9y1Bt9]e <[Vp<{_Q5;e]̨0^r4 x%HW dteϔF0yS&h7:L |h=pQ7'j񜽃j6w]?b?".u IIzޣJ޷p.u GĪ3q8\xP:wkήpqoKy_WZ7>h @OqRioo.=% 8⿻"$zS;83B:9cիq[~QKK;J? SxSu/2kR =,vp.rW[=[H}Hge~@LեN"rbA>ݲ 8m qLF`|rK똔XO*yBgI0c0{yM k) D "cUu¨qμ.J8󬲓 t+Vpl-fIYdϕ\+P~G޽2,5q2G3ח?ѫ1ünT?k N<䔟cS8gǙxӧvj舽=y Ę(k+aCyg3 EbcQE>ȀˆϱSXr1apFV䯕EۭwҨu(-2Doo2A}Smd.p((XZ?@9as#jAyKu@rEa~GQdٱqZP")`ѕNI82/?r YM@"rj9mԳV\_pu\A5`@)Ui8D~\N嵖GR^}NL( csN7ky ;"HzJw!9Ee I.o8+q/ws;ۚS§!J z8Um d,'ʶvQOqށS$Y@f1c>[~C}UߵgIy08] O7(vBZ3@'>PPٔPHpHDr6>ɣXyG͜)bȕ?qF)̯+MY^~veXNK-5 tS0z|*ܰW)'[123֨2NuQ%%m-W!$="^fY c.Oe_$K vZNj%l([^Sʱn&7¨f1&9|{%#Ĺ~fy7S caw=yYS^4{ǫF@ĺp RC+3wZo5Ȧ)UJ*Mϣr%m1'(o|"5!!ɗCCga>0.u,[,ĄXO߱ XST)Ң1M;uɠ.mJ0!BSB`YE Œ#€_#ܞia`LF\: QDL'Y;x죡Cq&ߡlE`-b+֎sn3+n (+\Y/`JB[h=wA"lb4GXsڗ<+eECx*!桭'$m$WL8O2VfH:j,  Z#+S" sȞ?Rloi(JU4]J}lN]{nhʼ"͡ C ,rQ~pOMǕ\Q .Ʊf5; ?u :gR !e>/L8piw d=We$xҗ`L5^塖R7p&ylO94Akq+ǤY}![(Vу IT10T`Զ{uJQc4ߏfhV4< 7rrJ#t@*$8eX!I^q/utD^* \áﰩ!r j-h/Bޟe1#^ n+Pɐ%4;QnbϥOJ90ȣxUyd I6 "-߇f$j7Ȋ꫿)D6ᙣq\;q7[K W]-B:5vep~)2y2e CdLZа#6_%f )' ;G.RjWODu\lo39,ul=}{+X㑷vkӼ*9% ɶyQX0B. ZVRB ?mi_pQî|ſ:h65Eڗ[ŰvF\v~ςrQ定7Skl}xєC+/""nf$1"%c(*Bݕҳ zy`1Oy+^X+: JK |F3؀f44!0;htnsCtf9}-aaɪ2 Z&{'ZÄ&ՖP>WsOUOA{Ɲa]?3QGE\Tׅ& XSי26!nTOE+7ARg,1.5(^J0>a{4&,j~B 7D嫴@ ?ybϠOBƖ:ڿ Q!pɝZq9C$:":.tjM1I9zIf;bFeudphDtM! g(|C+PNj{!ʣ= fT4@!ϽeXWy׎D_5׋=O[@2o{UPGңDOk3DDӏ:q %ib٠0A_4xi>IT3^*lݹMG 0c4OOX=lLV0l+])J 43y_~лcHAXwfC%a+;2oݳ6%Ug1E.^\P缱j^#o --! K~XCjP:3-&tok&[p)~˼~Xݴw{HNe˅Xl׳ctqFL\G¡Hg^0O㹽~'$A%Ul-CHf,|8 S5$>[=Y9;@3XbZ D6 |)jy2ƶ Tw:t'#AF>>DL}oN$bWӺ܅8vˠEiv,+LM$h ~28hL%7%~tyBIq&~&E֏s &aD V*'ϴhtkN!Dr'` ' ^(fPI\#$۹5hXj}eN *} ԟC Ǯ+'ĕ[dt̜dذ)^bWTее?Gc/ ]0֝&1pwjG<tײC?4RN'ewej7+u܁鐳@q1~O;Ok%+)h 4afNLA(Qe #iUh՜ \#/zJX9NVVd#}s'}/`y8#\9 "֛Z¢ayBŐ"TD͗HЀY'GnO*%t0Yv99 7xC^YAOA'{ ]lsլ<c:4]86kkg.=NwBXS82 T|0VU Ӱ!bV͂hm 4=)KVu,_t1 oѕ^N dA2W2<5x,#0X :i`$ gۏoerU-4'b#6^aEA۝> f_:f/LoOj#d !eD%l^PHZ[9S¥/$OܭӦ,~$U׍Q oKIොֹc}@~lJO \ @ϱV-BK͚͋,. '7<;i7cd ,h 5x3!־VA((ϬO7Vw18'wńΚzK`jXqcT_~VvBĿqcmϷV@#Gܖ2F@X8x)WGL(: pRiP.Tm2] q߽RcLԥa{~߷O/ӡ%<=9NfQl qAjߢ+ fh$; k:r0oQ$Actؕr7O 846))tecW7lsךNc55AG#.g@ry^8I!!;a @ͥ˪ďTic7dQ?u+52u~TVu^>KBfZ`SR0\1v#Hd"yvL G)! JeC}9X8Dt٢_qiqY+?~-'5*jc[t5+1 asF)q3 bmM|Ds¶f~afid3 - <&2M_gR_j|7x0J8ɁyxCskXq`ǣ_Vp鑢AŊSL'7"hR<`A9^Q1*%2֟4I+ UUJI7LiƧ$ͦjLt6E& jm>d 45">.s9(†/yJ3]Dycf>Ndlu*j e KxSE'㋭%WGOS >0پ$9F9rӧ}Fd(ڥU}Ł?1*Ge}YܾkA`QsV[")Erp!g9E(Ȯ1*٨hI5B-o+/)Qvk9&*a<>ûB 5FrcMO/O)x?*S@nr4懢əNdQ:У1mDVZPoKgcuR)+q_v )Xz[lT :f Y޸h+WFCXeŻ%*2GY> " Htk=r5y֢33w)V&*`"(SjUYÍԇEF^wUfd}e -TI O-3J `Nz*ҁsuJf.C(v" u$i;ݡN a-+,Fcqtz2nLK&m,ؙÜp{̂2DKy𪚲{捄WVhzgCA>]g:oZ7}<z"y (Z6EPz"rq!@7=~6ϝa.PQ:\OP;>ʬp*wZ]FNHy?J6D[7;2h# q\:  G{Zk >>zӆ#gGv[eɡF.u ܥJ{ ʯyNC>7NgMnڑc q47ow,VL4g>ĂDN0z!0|J7*˩έǧhHLFS@7sv#b SIENרUf"/sӤU'U 1}ZM7CM1?Egz.y3+px;=k12ڬ^OR%Hi3ru>d){5Sa! Yg +.\Y*Uoa_tl2PMVP;8Hmd1D!l"haim:![H_%RJӉX4Qڋ.l ~kзbmRdǿWݪjhO+McAsLW;'iE]M!%rĉVSaiCZD¼\ eG3[u|=xD ip;21"јV b:8JS(S3%Y~vy.XBVe$#M7 E %߉H |f ֩l$1V8E>~XPXc_=bSrn, y;1pղ‰/dGc7 n'>¢聆<"\@oT MC.E 8SU]hć2l.Ϟ}WrpV.U,HiP&Gて46tߜ:K.uVlr tߞI.vҥ[E Bvt:]~Uqa;t#e/%2aU~6U e˧F8}]cMr _Q]tx% ܗ[̽X P+ĸb&޶/|4B%_@%.s@^Y'lT(0³@!׌ <7[]Z^z4lyhE CN!{Ù-VWP h#S!ƧŶLK[OQ LYFΒ ѯ9/-[xǤت-cU8)nPTN˜W.~؟*~/UjRU$ Mj\JfJEQƭ <ep>3k7Χʲ#sv7:k0{ӯY_bK$YXnGZtܥ}ֳAs5r٥Ztx+_ê˷YCЖGb`W㯙_*h,RIvDk{%o dV[@iU\G'ui]0EƔ2"sSQ "B>2"e$<`^}8s[`ZL 'Qdž\ t R=Sb@r+3)C_n#_hl"Ian{c#]i0ב+5}IyLMzl$2ֹ\:&f<,_ef2}@SP29*z`٩6MlPw+p`5BhoeBeq֠̊/Q`8^!,GJq{ŗG<=)Upr:=O3ۗ-W; ?'X21e6ke:^~ѝyx=Ɔ}^@l%n7RcY`kv!D\436jF&^5 Dph]1Hq &H3MH^?rA6)_!Llj y`]!=lZz@ےB9a~WC#I84jwŽ >Dビ?S K)W["%Bxtsgo_ D,T%榀c_ֹ{NǷ BɓaPq }?vdI :FC)I]_ i`OypyL^`c|^@9$f|GDz5nlv)VQzS>']b"G4)0'7^^1PM 2\ѐ'9:ľxyҜ:aWRd_Mꐂ( 7$SXv 2 gsJyV!`>ZRsQ;mI ``h8mXzwK;X29J$\:M+}󪾖&梁pM/`Sچ| Pv[Kk~`*i&RӨt g uD2FSR!L eԚ h0~,otG􊓕5]g<1(}-zIVA8$.i.wjw1&Neš-DdMP>/nMZ%~6rL^j)hd Uҭ]Z͏_ 97AodSB- M &݉ ::4muMMv ħmG|<%k@.ho%kס[8+ܘ6I/4{.y1p惞/o"׷ Z0"S  &&]\BϓkwХ5j`sc@0 ơC!65zu80D]5OW)@@INp?ropIZr;7VQ|<9 0rRy<8rn?E _&I#KgbUAs[޶H.q?J îZ&̀FGμ*wR?2{'Zt}+UZ]Crn :;nZ΅)8\RW/ q^@%BI v]%xD1@L>a[\y;Vq&|ue1 NZŔ`4+ںaT6dbSQu" ĖK]wmLƑCfx+ bg#t@oj\hq? }Wa:N|* t> Dg\.a.EǙѓ?RDT˥.0aGe:sSF3SEԩ4W'ˣJeA <|h\= LeUH;S%sjs* [2Yf1k/8m_Pk#Ac U->/8}k?RUr7@YN2mǛΔE2^/W.H馫h"PLV /2cIfZQnam7 Wyr-V 6=tǏ/(WaB0X'} ]|efo4vt%T ``{amf[T 6.:o^օHCߙb.XEmq4/*!lǸ ijqD_(4eYxWE,k2E4֛.nSqoIQGN):, :Yɡ9PtLaEl!_K#BlF6[W (HDjE?J@u8 (zDPWmΔW)oxPt;|iAIծs|Ɣ \VI^H}cMM%'U&̭+ܩƦuSvMGH4X澂!r#_Ҍ`4X)NNh<[FxcFͣVs#%l7sXf%glQu MeIF.@'1#k deٓrºVw[F籦鳻jS-' şx$X6% }*daQE bQߙos/©ʹ,4gVr%ۓo,053l|U`GgܓYSu馂&L+JWWadΒVҏD͕7A 8A.&U+<;=[U7@l;ǏYMiK~\u7h?\_t65~=-{QQb.y~%+mQ^; R9*ݲT] ""߹+P!HEmgU.).ed\ya}NBI[`ReK>Sk  dOH-fǍYN,Zn֋j;2D_tAO10*UDK;D7567r0)"]~j7A8Wc͹9US2! SQ`*.?vidDuYrh1G G :u,Ũd_oy6+;omyr \Xe}ZݪcB){>2g W ]$En*b#FaKȏ^J/&i4 7Hw8[ 8r BH!%xC̜FG&.J7V.4#|zWq?Ҏg:%ž̓9(O o%N]9x3X#!-id9u,!"vf?ZFi{+6LA sn@6矾-!-Tk:w;`)kB׍= 3JaH Js.qHП>l(Kd} cF9DQW0ćА^'];y pb\Ֆe&)$.ǂ&vK?Vcw~.Yn&\*W Vvn":y+jq.pCU5q"mv:2Zp8QBLZk'$2QB;k{@utna-w6cO;~}XBЃhECIx }Unڔfۦ;mYL0J<<饓C$o +V*O A/:,KƯ?ol M ȏhMݸ»t"eS%r: cRo?2'e3UW癈q<\q%HI djfN )b{>o\ͅ V&vWO YkmA킫LJ=ՒW ۳V%!O%,UK"l4<`]uuSR3 8hߏwΖ@Uq PI咀J,Y[^V4Z/8 Hf^<􅾳|fK9tu#дxMb|W3ˊ.d/#L߫C*F-\t؃GsقZ(J!|ŐӒr}{5ER>YU˯~4fZk%`T9#ܲ d(l1_7րreSIJ)EG_E-%Ue*`m VMKF_ h4 jsҚ cGҜ?~i83RV8?lrREeFS[^ :mn)#tޏ؝ Gm>)B c#DGC9hWt{:yֈ\lW;q4M0N@R_xa?sGiN #*] (IqLؿH5PEv`'(p}PkcomI1 %tAޥaV8.'z Kj9C~ج~ 5 ^Vh07Mϙ n 'տۍϠH7f.G|̺MncЀ^m>j,j ]In^)?%neWF_Ƹ^*+ty!1Cv(MP´+2nLl$~Q2ɏ!x«7Šp /&hoAP{6#{04c^rOz?IᏦQdJ4eKg;r)AA#CGC- ]v.)zͭ~޴+ޙ-_}۵2(By*DiU,=<{_I mFMcC_hpnwXτ]j'\BMZTeZk=JjM6u%5^"= Cf8D/EE͠veHyMK6U= m 9\م(GK牸qn%'Zj|`pj:\1v(ww9csAɽWף/jܛS d[jB~\*8^Z߁\u2TS8̗eo#`M]#~чKh"ں 㢰>ɉ-^3]hXwT.Qj0.&9֕\;'e'@ckUih.J?B(Oy{t !k &b( *m]!j0GJm5Ql!Cn9ժ&{lNS^ip7- PA8Oz`[HL>ȟ[RUewVd 4Qgm;.%91<} 8!`,a#R]/tS%dN'!DDILCO6GNRrMxSjuM V.|U`W,G\BT^+j|$S J{6­g.O 3!Q`-,m# !]+88!V WrWz },2yI9ŭn a8xF[%R&Y~-~b:F-}/v㠟L.HeտXal;397bTݒ/wX5ģE iuрI<nc/5Eg5a{:̝-y|TL l-c6$i# -=TSsl794>!dRE,]@D\ha(*eF[a])ͱ.GS9*H8M`_Ԡū[$`yWD+(OiRL j׻ o$;J;h᭳TԱELFV")x`MI< GV!nҳP#Mi%dh&YB F6D8lt 9 wsI1tZV(% ~^3k؜g_`w$1!on p"5,_LW 4x#Xcޮ,4C5O`d04Chcr:Vpp'Go09(9)sH.4 eć@_^f{jG ]ŕVM %fڊJtXʀf\ȫa8.oeX?G?i9e WV;ht]=%XC8n*פqNmt&UW 6'"4#1]reY'tWJY:@VgDvp&l˼3vZvx( ЎT [t} zL yW1iڑ=M< ASUQtUK^9mXj `7(2_ܿA:4 H5+}C3mjJtتV>[ ai涞4-N}_HU]߼UD!C[S`PojsM-Ann!jv2{i3S gg{($Bs2ȱ$3 Y/fW{TS6pL/Z]A Zv_)*Y*Y B Ε:Do&U-^\: Dl, Nqtrמi:K侷 mJQ7}1쳫NBGFkjh^ ƥ(Lcz `_&'1c+KDtMXnV>7^ m'Mډv$ept 1H~pS3! |1#kAlxǺe;8la nGTxiGxt.#@RzdcfX%rΜ]}d >v^wwqoQ5t^9HW(F4QzMi-礔}U߱py};N©J{U0[jٔZQ@~WL^_Sc82<ϐױ4//͢m sa%[B[W#i:_7MF}?[vŬ_wwp<\@GmDKN{` 1֟?{MC l6KF֤Ӱ;Q}}`xU-a/dSep'TtAs`?suQwkWc;O2 i{>e' ]KOfAGI\huR\TǼ0q7Z(!8t@|"v ]p-P t=l! ƤJ,&AD Uj_nK;wهL^"t9p%%'ۨG1(Û'Oۮl@Jat6KۙZ2}?ۥ{Y[EqSUuxsLв qQK 6[$:Š% OښzX#[h&> qV 'y2{KCX~Bcwdٮx;?V3UÄH_)4 q!ÃhT#;-QSd'pQu^JpgT bB]z!fO q$е=TWg6)jRˠAS"U芵%KMdRwe׀xI-`D"y0N]k T*שj3১+t!/Bp[ߐ"Tvdˍ\2yh6;|q{|ieN Ǘe2 H5X1?yZN0:O$%a {XV| 4Ò0VgQ%-{6{!$IojEɴp݂`8:2-+7(PbsU)a TvҹҺ,F4bZw.5@8*Bkߓj~V{u`$d].D7Ji!ݗ$BJGCTe*9P㯤ATMU窆-Yu\AB^ fZH#Eev= |!Rly/,FDT$H,6bLj۽i__#9I!-{O X2 )mtOR?&(֯Bςɐt{2"so iv@_١ؑz~p@m3{81p|X:+2U &l(Ձa3P]pOi(F[)V+'ͣ0am*h׏N{>NTb]8 w]G>R)FFָX弥-\J_U;#2Zp `'A2+u!Mt2kfVWpJ-ԋI$E  'xNd(A-$q';!>3O2!nWηv5K]z縔Mw'L[a"-1S$RC%M>:ehl"b]5N ؒ$B\S@FBDk5돽i2v9dAͶss wH1w2rtױ6 'OH=5L_F^MRa_4w "GY)@߯Ytys*^|vq JEZS!Y4ΊE1g^m5-~2.]h(ɥw`K~7/ӕ v-2y%B.AuF]{j|j'zQ`!ld޴.3A&}b(L!tmy.vUX9= "u;E*5sԤ;~x(Q\Ow)3Eҟ4q=%nawt?q[cu'Txd=&FnC@nd9"CD:ߖG0'ӣY" >{"$U׮]x]|˾_7};@C{ia A5x~nC?HZsc:: ]L1&u+x`Y-e eoз~l珢 ;f*S/@=he{$N$vJzj#; rO¿ۓ0]r3t sW- TSs[C,UGb&5b~9Wۇ`̍4Ծg 0Z+)FM.-}dVcS|3 !ŤZt큀>q|9{m'F򉘕UqCDl3ek}"T<G?XX)?ﵘz=MD`LW) l @H50[tT8wpbCm>s2Y862;g+}~+g4`J/8OL ;q8rkͬ;x$ + ._\?@7IϧE "^ֺSw%ˎxԡǬWL!\2P/ݸ^n Xq=3щXUZfy,=2':gb U1uyzy@{ITR^ o{mBR^T33h^u'+icަ(sv(dKx  ;sӡLQ' >Ѥڊc S e&~X[?.W RW3 5.3q,DF;-ΌmȖM~iJ`j)a1'n>K4V\vPbH;h4,pLdz X|+j2Y<{ V$^6ޯ.(w;X?,,6f-͛h`tXIWtSa l~.=К7\Gx؊ҔYk)ͩ u2N+c׺xs'XГvHm[aH3D:% )KfvcGA7_ì4b?|u(rM|!%|j vC_70;ɍuǿ$'8vp/u˰D *eeA쁼jKwqy0ܨθ:SHC%S7+ .vJİ(>#h֝7&h'o%c0 Jn,XKyˏ]zpTEʙ+Z )By8g}0n4C֒XMdllnT2kl(dG$_iɦ+"I?| 3@O L%xR-)KCEHsX(- tҵ{JofM)%dId܊ILf2s pPc7*.%FbwSu3EN4eόA)q+>Si(dg 7$( jz}[KvȨ91Xet,G*R2qx}%k;A oŽ`|$'A V KtTu:5H η6edsz[ԀdvjAYՋe7 ~pub"=ggf͠LGW5Qm1D g0g C5ӹA܍N6GR[}i~!`t&*hxY ړ ,U^lxZVsk̡A +aNB3 >KZKKIRm$m!f x!m6ڟfGqb%jE*B(箲O:ENF=L16X) JEԤ0I O iإ?Xw̸GPg]&|ʩyqAhf^h\+`9 zl7fH9Z6j?@%aONs+L5HQEf QN+JX r$]0&~?jJkR&};F:H=9LQ ~0%̍qH,̀vý3 ˄ʨShJ~oo $E.)55;N,&\6TƩL1 yeTL6bxg yۑBcJi#'s87 }\Ӌ.:X}24͌D䃩5c.Ti'/PEf^XQa)tj_GPf{GoQJ?²ۓ>홋 #{@HyA{}x#uDN{GߦhtjJ?_!66)-l+GQvq&H%] 1p*@n`N y!ލ)n3dz9B8Q(dx-.Q+y3bTiZ3PYȊ IثU7V䉙"'M|vp>n*2t-";P==w77CÈK6&DFoڸ]K1牢plp^xd&S\@1V*FޗE,mep}yބ巾"ǀMVy5^pK&thn",n໺݉.SRh-}-3űM!?u"Ӕkp`}G>⻌Wn/{1z.v,]49J+\Wfžϗc)ʝp]/f-!ؘ%uˏۋn 4щķEiIl'dH/ JHI0lr?OnDp+uHNd^n' y rN^t 4zM?/.SlͿ,H x?T(lRk <2~̄pA qw<RFalfQڛ,nd􍚟QpDnVqh]iT) (9+ui0!";尀yn-siDtH 7mLz/@ ԥӱJ߆X[cXNf/c춅hlXƄͶ55g?ną 3 z+Mzޞw1*FƅU":mGˊ|Y׏]:s_I;?5w2 U "*!ZZu{V4Ԭ|!ߚHc|(7semu:.gDWN \C9cy7X ~:˚5˲"aa!9t.JljW~@YE٣@` ioQU"hш}xr~Ӹ9Vi3PwYq=q~38_%! , v Ԯ1 7aq.WaNۓ/$>,ƕ FII&@T8Ǎ1'"]i}Z AVHg%ÒK;0M8mہga :za[zaX^ɞKYeZbѝw+,= &b;Vpρ> W>]([b0s};.NU 2Hu̐UQvsĐ@_4`)9缾xHR4zQ}\0*yRl>sH461,:DG@a&.4K3Mm)$g 6-yNJ9^d,ppӇpNzs@e@66+pxu}r @„"h<@kdhKST(Djg4z0y@%%+Riq8 ӀYGo'6A*t4Ŧ 3i'ާ(Bm<;ZmFq@+IHUy-u9?u]1MBYR{1sN;F%2ޢ> z!9z_47Uz? 33ީlHz-3w]WV Z$N57;D:+p? czGgVF["9o49 MsTSWY``;P{ﳐ9B |(UB_*^5rیFVՏBGS[jg_Rj !h3"t&_{ՖWf݌S}RyW2x*7 \E_"oV3Z@ bDz.eA5 cb ABƪɐ83JEN>YP dVvZz Tz9kPLVqRɖH6;{ Tu_H9sԯ z> _NjgM}_QHEL( OP1r|u"M%=eDRذ& G㼐}=#P:&d:&nfY2|/{!H0>2N}e`ݡ:zE29eDĽ:vN]eXsP`?bcMwD _}_ ףx ;8rv2>~%P%}' AD趌PuٖJ66B8F2PڷhYgo֊0-֡^!", bNդ)3K;d؎XX}Uqaf )Ycl-Ǻpw˰E(G*zӫEW9LA[?dB6ȒCvrYyt  df?RYߑ Hڇ̺| \?1/_+ gz:06\aE%(cv{ $Us%J/N碞&"$|-Uٍ'Y'n-SwKRR _;H0}cX+ԏOGN0#\ܳ;1d5G ?8 ` O|O:E %7zD%AU'iaOs:.ʟ:~ph'p:nP%ꦯ։طKVό},܇M%+))[tNڤo󇣂Il19u7񡪅z_KX/]cJWMdV9aZeܯYE4K'#.ªVe8v+NIf6cn]q/é<OH(_U(\E~Af uU< g<]IQMpl3_RBu[Й>PxsNcYgL6&^ԏH*KG`h>%ڜxpX3\^)hv?/+s&\XyTf+ Pk~-iP9eJ(8X.:bOgK %COr]jVP čxgݢ-rvhISO'&y4*w? IK&mh3{%\pb:x*w{[Tz_U,[? %]Fz+np78O1DS#Q*~;jȼix$`^irQ 0iE&sէY |Z|C'ֹN>ܗj0kPo3ϲLC~ZKO.]:ՆЖ2ȪRFHɳi/[|f0F)ۓNV%IB#JGi]ZXT'\Ů{H&Yo3z# AZ@̻s[G+8_v(YsMבYVNz,KT:r U0fq~ 4ٶ"N@NU .#K.IJr[Fo8Qu:*8`ylR_.Xfuhwh(q_5YCbR^=uNaJ.UD<1@E!Cg+yw!,BLEu+,=H[ll6C 3 "3\n{Mixt/Ed zV*/mCӽoךǚfđ< |hARNi:p t3H0"y".2Q#wJGܰ'c:ʻt|?ekż1g~G )*˾2@^/1dm>,~P ['%`Ť,u PFJ OpetS |4tC 'LaC. oJ[zzncFA- X;P>C/#*`崍*%WFrC7; 4c!Ӷ*}Ο.u 0rHrLPFX\rhQ]O.u_“ /{$O2.Å:K; I\;8M@SH~k`s4ȶd~fB=%MBai#}N"M Ž[L3J#ڱZ"^+^{̅p(q&oF|_[gjAX{yA ]6س6t42ʭT S_ǎ CC$\}qpa tL>dhGmtw0 61xbNo[+ -wzR V-8/Sv2y(.;~)k(EeYғS[r ڛ<R0R8_bL\I/ ʤ.*HtB(\gfs"gMcϪ Cpf)V3(%? =y7<%vrԣL!}Ǎɺ 'jl1{+ ~p\P,gЂmB *R*GD;Ch[6ph}/d<-dᅉ tc x`CHھ[< 6ET$6٫n!,++|bYw"V"DY!C>?X䪆S~X?4)06Qz {:|{L[&[,M2 5ДaI:rޡ9N5SawWjYվdLS; 錖dSt,).Bm2pNNUm VyE uJ M {y'~/[R~2E|?ZSgԾ 3#UV_ NS&% [dP]EjU9u&3y2W +SHJ8Bfl&:|ESv|t?CCұc==>da2m II6E\ xpv5P^J3Sg p>$  6,l}Z 1Yl% GiWHtezB=Kt\QR֦-9UBYH9 g62f-#@M$GŚ(Ր vc/̀O{7jw`뒈e^]Ye 7QYՌTX"a9Tʃ"PH[^/(T6D=Vu[siT7!&!KBa,4(s8@rkh% q(P07h+nKr<ؓPQoի:&'RE~^D9ɭULӳ~ժ `/m/S>"1| Ȟg|hw7Vgh:ebmŒI9i]KC0hdejVY~J3Wn:GaVʖ7&czN'?3Yguh~*NI6)R1rVԁ'KY_=k^JCɜ NO*.VIk?ͼsB*a[^D{=(Yto Pn4nݔ\Aۯ=#9xn0yrXϤǏѐ ty0Vg戠x~UTc=߁tdIcZ|-V.C]>kl[8oT݃omAob!3U LDž$,6?}[ze~YV).$ycHKԻ+,Qvb#O͌9[ Zɉ9: Gz:l\'ep0D(ۏzm953g}n2wVx0׻WП10bRv|#$n7#:%`1{`d&8}zps!gU9 OK:&ΖٟZč$iqy喆\]:ܼpX,qL<ȯ5ynDԁe^ d6 Qn'HغV+91Hap|3-{ʓ_R/8 k&`=_4̚loLު1^ Rd&Mkbokjr[o0A'f{>cwQ|M 7=]tΜE(qX@RR[9ވ<'MIlJ5k\;PV"8X96&gsXʩ6#OjxA" ~v&)ًPmr\#I'TAnÐK8#c=bu@O|ݚΣB+[ȏ^1 ]1 L?#@:Dwv^ۂ>sh'Ggm{ۤ[kS%S^FtiX"(m)'J@n7:E]#G~]o0g:Wb>i:viy.M%兢G ž~sdiVVЎ[)5Z &jPK&i)2Y#hT:p\.ʔ2A>oa)گؚkke-'$6S4@V #(ltƙ՝a4 t #By~񖪠3Squy)ysV-KHZĻ뢗2G.fAq 8tlSAkbOYq }*ٯ9#L5GED4~UtO&XwGkpcr+xX0z@ޓ:mwsMⲟUG*wT9TKVNKmxg,n>@v8 cg_R^3_(_FL3<8cI+JtV9ʸLPDr)M'a9afSM̻!Gge7n0լ@ʾ뒮[4.c}k=)W>]%$͎>1j";Q1Vq m໔lȍmBcp ̹\kĹ Eve}~G g9"2C˙@&h4$sQyRzϐ0|S(= Ludz8~:xUH꒔6]Xәxʰy;' lhT Up,nM-ތЫs{T /,i&{y[0n!bDޝJ0!noy >eAٯwJTu~p/q0ױaOZH;_`vZQYLO&KlϠߓd/ٟ QɣM0]<%;]JP䉎1P+ uR FWt\Myoc4ǰ6aAM7?F!wE̢N2xbA²kx8矀A 0VB" l72{||}PX6\>?RN1qsqt=W<}L< Ur5]Q̖w8z?[=nJlBÌψ}rM%Ϋŷ1tM}Ϊ,8_0/XK&SMdFWJ _W @u `&*p ֆn ga:xm PEŇLEgLqG-)djFdx q??6@8~Lv'[? da/ ҳsn> 46y<9GIi#~wVh0.TKxwfg`Ͼr#Wǵnu{7F kA#4;R4SR|}Af6%QnʦU&&yq?ĨQ|zُXd}:[ \ޙ[ݾUe^7~hwj~B"3l[ع hy lI=x_卢hNAp#]lwZOv‰v#D~Y[AP pI@h?&P9fڹt)f ud8\! )*v~ZҖyG}k3vL%D醙IAh{ j&.S 7t{?P8F)腄{o wBVPlRȲ ?S64i# ԢiMd2mB[aJJR"\Ɉc6S % 냲zq2j.eڿc/o{He}cscNAI.Jѫ7ݬL`N]40 =ϼbP&j}~dTjǜ$KZ:Z/wfO? 07-"4$gF 2:ڲO jc9GZhi5P[)( 愲eRA7 BO xȣ(){a2Zfld+3ska5`BJSJ\Yo+6] u/1 ^vx比"=WXIEf @=G:lk?ܘ/< >6Inn!xVz5<q!_gr 0K:CYL:M,oï""ql%GB"Vjŀo^mn5liHXa˯`VFާ~2Mĩ=ɽ5GS~qxJ3FRpC2'kLۨKB,?@ vU=Sgc'lbomϓ^|,. GleUAIVg4HqGr1;ol-0 Hio=|rQ%8slȡBcP>fHbpJٕҥXfSBgdZiIG:ڂ)cKL!.Uu\.`Ogm EЩ W )Ŷ{a=o/D`u1\o%Quk$ ɞ}ͳwD]EwGd-J yL0b- |/=- 5%{fBy2ŝ5oc"[^0x, Y5wF@>vs)N-? ݢ~n`N!ӟ@1Y7$1C+ޡt%~ ;ݴ:.ֻ[byuY_^Ɇ9\gkS)?ծ_/NOyb5]Q[́U]XqfZ,|]6 }UkYaع{H䭏*Y*L,:#֭ A0+E5I@E$ 'Yfw<:aGC=q 3-4 ?,r)|ނ0Ě@amƋ Q}/'DNV!kDbÀ9`"?~cX)pxG ](> U q,kڙ(4"8xOvLvo\<6ift=Wr997" 3t ]05C)hH?JiIƺ W/]aJ=i x) a,m*vJ3؜#d7PLb&F3AXK_+FSLHE$Xxߑ?CP w7X㿎v΁nf8z2:h/`)'V#DXv 7OLBٳ}[#IJ66TlGwmL[3\0IdXECnFl;GϪ&TmIëz -Sp!:cVnYZס* vHhn|?\>;x>B B'F4V|{o a>wy/ m5e qpw eQbh21G{Ȏ xIHiQ^ᑒ 5cF׀ 2d!(KG@ؚK -eϬ 2yby_(p{)_;/Q&q)@4{<tc 8>C/g-AY&q܋/@wG'Wf; 7$X&Iach ]8X/p'"E(L$1Pm~e.%ϻ!V@M5@<-ȨP}!{9|LXDbZ^9xEDC7t{‹2o[fpX*q!BCK :ACް(㱢|u"$aaG;61 %baw3)ȭGK-dXHgNJӺ8ƫjT<0a}x u2y{AO"j'^Z]2N &pttiE*>|՛EW@ Sҷ~|bZevhSS .YakB'Չv$UA* bgstS+ƐTD75军;/K_uu:TB?@Z"m&=^ eppPC0ILkPq#5Wm[4ƪv|^=ػi@qPa7%?sKX*jH\=>bagp嗪MT Y+';F-HwӣW?*Qӽ @ Kw` (s=RNeVĶ|RvwX¦ͣԦ/ ~S7֧fVKF31*%^?2C#d4'~ }a.,4r 6/Q L?w4܆U#2i^0k Z_x! v0a$2Un`ˋÑ3|k(xRwiZ(ثUfj\hm9/L+Cd-3="< =25N\)į*Jr{<%|Ba>l~e:o {0~hK(rno:1G6ub!KGntu|+?|W_PqnGw_=X(π=̷U!h֥@M~W`ORu'sg +|۰wUal9_dE0PߖL8_PNO9ϱU#wTΝxun:&b Zx$3k8F#QAZHۢEV`g_K6E,R(i RY_i@%o5tewN)^M|iz 16!Slh/U0+F#zْ'&f_YsuY6L59׺A,{7Mbv+YW UYX}2U81MZŇA:?D*&䊤Tgy+i&B#_Pt#Ii]8-LB)|y Rns0V3?m/ʡzR܋|6J-޲bܧޚ p~/Xx66/j PM*o#cxsrϡup_BM5J}I(nc !EJeZ VH0ǥzeti0-4k>Hk  M;Ѱ~=*ݘEZ^*-9^kWr_$׏G]_4#bc3]:; G YzL@3RUx͕+PQDݫ3dnmA{9uĉfiznZ# ܴ꿼P$g+x-]oibԟr4JvUrC(մAM9XR (>zeZERߪQ8L<`3*lvgf-9<ҺRy $2VĞUbZ61a䶸( Iya1 Yk(:O&e%SX t" ?P)Q?UmKj0FU\%bH',ė=n-m$XJ(j* m ŵcFK# ڊNҸe=ŭ_['bѱʼqƝk=˲J'6&ȳOv,zb=TJqm4q`^gt~ cN-powm6.%iʷPjBԏ-R&hF|ԭ},f 5k($PVks(ūx]K~Q"h}$Nr%(0Xn!o9x 9$ғݺZ]O&G_v#;Ӳ|(mC;Zq'a룓j%W0f#`o֧HWty|2x܂OY8uژ}BB+;2;t]% yH]tZ>ۓB a 錳8bE2]^`6}1w՘JGatGIG7KB7Ӯ1Q԰15CL7DUk DbJru4&Ǿ`{~ :uYFGuc-]۠>џ]*R^^+P'jG)ȱT{KKBh)2,l2ґ-iT?Yluښ?;r$^U~+\9ZZP.+iӯKg?5S2jib@NJa)9鳈^9/`b,_5@` &dY ,10VN]t"1*rUA+Dh9iIņI`3_/c^"pXMC')~ }& tX-PK>WV fg #T>rϹ !S]jjr9hJq# `{ \MJ߀ uʦ?e)q[4@[\ϥ+oMDN['e)2ܷ5-j'>o)볹^9DM tb;%&ʧW-] |u5܇vIėM+!2MU: f QɚwFL_3x`9n^}5?z(j*!QֽW:mHf8U}W10P]:VAr9;kK/&/[B!) Ń+1i͚wZ2 6kIkoetLq nV\lsjTOCaTܱb gf6koR6BCykBG8q|]Իej@oŇ?Hfa^imT!={6(Ƞ2i͒>Kk.ۥHp?[ֵ̃@׵Q=/W(x-8EpEd!Twcm @[k[:$S.+/ O`a]rJ;f@iL =sD.d5|Nv@ˬ~+ ;PXp*Ok6K -Nδ>ͦwM,ūu4o uKT5임I,sDbzӏ#Jwajl-}B˘ Y}z~丐:I>k .zbKXzn]걆hh6" .M/H Iاo#eiG%Md(kĺh%yVMOf#\KVs0Zqۉgir:D2 ]T o)I6:8OW[=gESQq݀:lA|W]*& v/s~Ӄbs@S -XUhY #"WT,JE}:W$"7{4X093V]sxNu:8F O^_}2H칔-S@i5q$Ut)ӓR4+C(;hS7Wk,xLxͬblHPAl"mLϟaEs;78հc,[ y(zУuޢ;嚧>*dO'KəJ6c(Ls03i0PJ?\'$W<>ަ%` `M+Wؕ Ai*E}-fA|]._I@{LB?~_}X6BTV71f0MA:vIڠhu=XxnO ^{jW'ʺqe|,傁ncϸo&s=:y|ĉ1PU&,H J/@}_ƾ5%NfZCrYToZO|Fh){Tu4)-AT#/X3i\`>Ҍpq+K\#mgK{*qS5%~[:˱*G'lt *Lu-朗~vW D #a<^ /VjFp,:7u;/ %WoT&/wu߉yU7rխۚ2X7i;sAÙ8P-`m6r_i4]gm(>}IS8$UcLWt"p |l8Jw8О?k0H2.;7t]XTt~P X֞?(>ꍑط"glp Q5F ř _@)܉O;J?'e鑮qGPD&yyjٷIϨe]*КCqHvǑPC)KJZNEnUzwmݥGBVndq>I >S>x {[S=HII3EZ6o~}blU5Zր^(> OΉFvz_[:X"cQZʻ%VJVy焾~8@ArYHpjQ3`" ~2;X:c6)}|8  75?7(4U)It'Xb4>'z6̧ޅ݊"c eؓcbaW~noPX[W&TMW'rx #PUcI 5PYn"ρ($&Tq7IKSq(Fe"?zQ4VgNYBTIS\l?wA3Fw?}ITre5d&+^-qg`TiKV7,En sTK^:IOKQj9gjsխp*Ug 6j Q$bE?SQ;\n)k 7G瑚p';qfeD*#ǰ;c~45 mJ?@ ZV0Ir*h!s8ha]C.}I`#-EMeF!oap惯SڌhW&r[ózhV$&f͞)dHmc9 qkk̳*2]6ۺߌ'P;dXp`}y^wArl8&F|"Mr]R2ޭI(I)/rM T4}?, (#-b*MH7ci7痻 k Tf X ~?bTdd.cQ}W|.A Y[a jpjUh,v B:%PIңEV4F{#O3s~ }̟38;lBY$K/rV ;E0}/0N;=X'`,bgj_{wsr9=`}.&䄞4}i"mA7tyHxozd Fv1./Du)jq#T1,oSʍ'Io< ۸z;#~aa&Z2;\;&E1ֿ޶.f}{:sTF`75(8ky8IE?hZBHFULey6F P-ZV|7Ã]J~ۤ瓦c`? 7t! dSph!z2+'*Vwr{~qJ=-U'TInOXe φbF2nA3 }X32;cNrR(ђ4ʺpW7a=ǿlfr8#ī6x~,#u;6׀bN0LMÉ7C+C沨Yt2[ZK&0Za 8 ޮyaͅGdc]ܷ}[GƂ~( D-v1ZHX&"Wѐ .f`,iE5V/q,qJ>߲ӷ"9x|BSnNnv+r%TMƷ0RhW6xG[fI#F̾$X-{~z!˪P4-Vqqq;}nptäVy8z@"2fp#A ~w|{ۛ`7lAZ|)2(u B/8`9/uː ^Z D 5kf/Y`f~\:#~|q_Xo9ȘgR]CBmGVg$sZͲż>.Ѩ:KhftYpRm96dnzE4u5fv5rCq~H6C%Y!aI)YxW'`{ՁSlrCSM(<@~P( C kYv0 H!BB%x'wթ%liMhsҠ.`mF!npE۾xSNcx+:{6EJp&B崬 *9}\L#fΖvMy+ Yt( z !wRZ|x^8S/߶p Pb:q#tӍJœM-&&;{QǶful!GZ@ њǙȇ(#wޝ(N΃Iq8ON{1I$t2|0GnF o$ޗp5TM /7d9M&zj H&Ř.*L L-t)C2Pll$- [(G~l%՛C;v:[ѷǨ|#]!3.m*Ztz8>İ/*gIv.jQxlo(߉`E ᱧ'i̹Zm_h NMߏ'i3^WmAPH.:RUb7v̏hv]K8GLg|t+S1៊V\j2(g+;FWp׵^Ӽv.NaoD'Na挪 &{% 7HPe`橋+7Z~T^a+܇Siw ^?/swCwø86O|(~YH{e,G;/W2lR]ͦLn19GV.=7 3^|~Ad8}o)2Y|o P]XEKĕY9ݞ 1 jyt r(:`^1 <|= =f[$bv-9&sBrl E>nj=*C0K-=̪UHQ9hpl 6( G0W&Z?i[Dp`q`^f OERum> 6G̝%)cd.QHz_l9|-#,򡢢,Vm*E\V*j LQA1xEoS1_=EN-mƠ/My7&Li`jk!R % C| .jܟ,@.Xe)SC3u`*!]Çj!}4PeM pH/jƣL\SsL7L(TA{ gȞݲ}KrAwYA =.CAf@lBy )l$Qn]>kA]:1'"1E_zKz |S#l?t$=/JC3~?o,Nkg':OtԯE.w=pHrm 92TAċ!e [*hr䆐8T|>maxB':J6;/YŖ#4˺-e]O/fgO3C0-(Į =zosH)=J^G4]pǯms ebdh6t\ +TRkz9gu$ɶ@'L^>:^^cpm^- M4tk~kCv@;>ޗM3nAzvfM @Ѣ Y£jmɉL.3n~^zsּ*Rfwؙ;Ql19yHuh\ &S-nm0z,8eD>?]XΆӖ!I]N aS$HKWDʫŏ9y:bĶ<;żS )HߍL= V`262C9$|½Hl骇l дqedŽ)29x v) T裊ݡ0Ɋ iOEy1+___-1\g[o +] IubNws)Fe_[f`U!+ 5=vUp7NJtg 4GBJ`Hb8Ƃ-4oaͯ' 5vVN<>Բb𙨉uBoBjJ<_1o֜F`䱇H{R_#IE:.֔cp(d )M827sEz}{[@`*8"} S؉(CUm@[o\JlOuiAss1*))r @X`-|[AJ4B"͏2pD44=gy3敷@ErwB6DUl$%i͗W`ƨ^5MaD>@/AvPNG?Ņ :ưAJʩ[~&P0-cMG 1HϩbQcI:zI%;y{km[24Pϑ^,%-N5zir[>s@P"-& &,@m+wLO5֮.]#pݵxR  ,E;"b9p̮յS\ b­U4( A7U/ְlT6O#924cnTʐ(i,l#d~DcN5u1+\fa™m*ui&R#f6>>*%O-goՀl4%X~ƽQM? I !]qFC5ZQ5u$e ׆q#̊҉ uRY$zϵDWn7xDڧ\kЃ^D{(eg-VoN?ϭ=VG^AtZȫ!9NB _ 3i kshE'أh]9q= girejєu؆^ZRo b<;mA繈~)&iZʚZgqK4]M'Re=T\ڐMKÚcɾE5w5w 󎹚ʹ)-+$7VI}if2~4IGaSTB \n]K&A*ZP{Zp3LKjGH TL GmS"S0R,juUa2LUNUMr Q4 㗦/z_/Iq>eUyhLO3g9*^}`=9=CtUPnp"J LsfYB[i.LuN;A'Xstdf `=0ᔾ-bs[pM96״+Sj$N ю[|HjmvkӞ/Ts~̏AS o+S0Tc|#?{j;m.ڙ2$P jFc?ݷ ؊r77i{CNaַM xq X`PO:*sv|Oδ\ή!scŢIĩ%ѠtQ^1kk5Q|!2I^86 Vq}'zw~ s) x`]:﷩b=qlP-K GiW[B n GBe7IVA?;J{ziޡ͓%ÝP`fwKz?;BތsM\3K-:T^ I>@gVFu/(.Mig0m²CQ3b\ .IEf*5Qڷwʟc6E4Y791bS@.v`Bj/GW' * ʈ )lB;q$tIF@/<) 3}ELh]zxI+[.qnj=PjsnkЄ'O 37hCcp @cqizN[%Fx0_,'SJgZbLy(u]ؓ5akj˔]Rmrljݼv~.+ ai R(}:>T=iXbZ-eU`; ]Id?^p(3@ӏX9XQ."aIA$EkI{Dg *=0;cv&&(xZgzuF=X̟;(MdG3Աm*j.tPjȮ-b-}r<X-c;1 @g'ߗ!F/Ӭ ?ç] Y. Wkls׈^,j946ӥ IwGyKiO9n_Sc?]~̒`T`R%,Cdv|h_:J"|.Bd :zE\ܩ5w>Ki3:G,rΆ#} BV(:/ 6fy $5r\P){lؤЄE.y'j4μ:a:$piTS( `GNwq!Z]3L-_FĹ$wht'c0Հx~Vü^h9oaO,paMjjiED *NL7d߉P=g2\㨫g0o%Ez<(W ՐL@|^ae n{$OOs?eiDo!B@~VP#OTieb~JgbJbgd #33xFSfg#aZAoCe7fe6mU>is[v\1\HڟP Q2S e]IQRD+d׍Q$D(;*u#@wܯe2eyw7 =HV\C.ċz*:s ѓ+<CaUD\'aq8Tf[" aF;ZSȳ%QuKe}wx@SVhY:["2ґ}}QUoP9f`nn W'_AL^DE{s#ϧ CKW1E6ra Xb6y+EmI/MA,RGq5'rXĽ^' (v9WɣEKZY}m-.S*$RNIP?A1[xFOI i\-6,3/]oDtf"Ѳa/F J<# FbuNwעPHRͽ=>i3]ayDF׊M~J#_ W n(!?ͪC_3*ž1]\snfyggk7y[-f\ʳ&/ L l߰ѱptWk7Os`# h#zyUmٙ@^˘GƭƂX3%|4dh$=icZIgJOtgϬS8&8MLȓA_u ?bgp|bk {[ !z"8l*f8(%96yjlH 4Hjl΅W2.$()+/A?_z`b UKƖ`45m:Tr`|3a2䘚xw=AӸ:_D >i- &R?9`1}HF=Hk&&7*3~#ψd#.`+sFi?}^V槭h$8Z1!ϛ&ed3y7Q -D~ ̟H@8 %l?Yd6L\z?m" 8 y&4lШLEH) V,:.Gdt5JlVIe3B̹$s5:F.IIVgA3SKͲ ]Gvef׻n< 5O&Ur,fYS 3^ן\c9 '܏{v]GD B_vcŕɯTmf0͕0]^JOrFDP5i14^6vzmOW'[ՃHO߿[47I ;YcGa$> 1X ̐d 4-^¸qOɏ1nCƥb.]vJWe- "/}z+luD+8]:Jɝ1?y!+/yFb/˵gO4#C)ĶPS-<7]1@hİ :)cTv a֨jّ'a&{5@Qu_,Q hH]T\* = .'zf  Fh:^RUv'5ggCHNo)G`nQT*y| c\Z}&I9 j`\r15vFNqY >=z1<ĘBi`'g(`6fԃ=".ז& ? {< 2|f /, XSP;#sljqh²?_~pV1 궼 Dud+6%>`jlb-2XI9f׺]H^ej0HT8q!DA댽vf˪D`Y avXAA CM~aJDQb":8i+HH{o_?wmuд^UP1W̉6 z\p~V)'OA2̖c(L[o9 #!sbm,.yj^ xB`Y٣5 ڒԞֽ{]p}ʣ*{7 QyVU`3'4S-$`aٚMk F$aܮ$``%$>#ߋW\W6{`+o$E)KyK&@6YNx2c <2xV I>pU2ҝ#cD܃hr",q_rl Bd{C. &pwn1A`gyM ?DˌE$ O͟yyk՞erߚQ26TK<^:UB.weQ[-^|N\#wQnlVY!! #!ă>lzCaE9د٥>.VkFb&ۮIl!]]vv=F!8zJmES7vF۳9CiHIl (N.xөvUp|儭Mk,1Q3=H@ ̆I[TH齶$ =id@!ߒN}7g&wc;)[h&E~)֔߰T]aT5e8zH9{])>:=2[^4OTq4Dd!baYdžH wⰜj2;Z!dRB5%jRZ= qS"֛2cN5/$!u7 t:vg{{2#i.C~zugY J8CMg^ݹf1 s(JRV[Y0[}5t˓!c`99.F[ϩP^!!~o쭩 R!XQLiɜx7Zpҵ&[O;v,sq Wgy@$3ʡcPy"TxH_ w=ib΂".rF90>|u0B#וj%(hai1wZit LUڄ H+:72g M4lӷؒa0^V!Ǫ=8b,S6y#eqPFPd-(ʃA/ x %DNgḋF{8Ƶ ؏ieUꚐw׈uE7 ^baJ$cqeO< XfYό5(>k,nJL7]<`8SIoY;B )f02ald`f.i |^ȉDYҳa@ kH$V{KeɴՕXZ QآyS@FFU36ש.3$Q#6H5VH:,)n.iX{(ﱡœʅnb%[H_;5Qn*D•]`& [Sڠɖ& mlgnƧ'~Qad(#l.z{R~YW$/MxTYsFb>d@?VcZ8nf>ԏ׸>8ř`I$Z{tK(~|즫aAL~w&1$~Җ&Me["ҩ5}hXqbK tE? AOwlf}@ٮWt+j %׳JLUZ岔" 'MVm k Y$BnѡAlq?{ĎjǍx=o+ ~۸{Pgj+[y-`5i͞p`4J;c$gA,9e$CHQi $T*1&vɃoĺYDUfޮOX& _hqSrT7u`Q)J3ff; +K*5SNi&P tPSG%wc>;<ظ=8Lj%0~ǾApK w!8NKJ!KԮlΟb &itI=Z޻#?}~ 8j-vNrxWI<V}>b)jӏbDA+ɉMUGnșX?RϙPFHTOӏ][moG_ȁIXiVR޳[.D.[lC.]]p-" 7vAclJa%F)H7ekdBK R,HRl;piqWX}5%BXA}ICl:U@oBzlH/- w  G H\urYM[$es?vh~%ٳNQAd^yWy^x jD* K]y^2f<4_v%e ^dxHj*#\'i|.r-mxFs\r02xIRVM} /7˚[:p8B`]?"ӤƺQBa{g$zA7s)I[wmH\|Fd{LK<8uOv jilds-!6n/sqMzڵ &;Ӎ)t·.Y"4Ȑ dr2lv/TQה n4KF{Na0$L ևbO%_VmcK7_t dN\d tkAZmIPOQ Ǟ/Ũe`},o{SGc$M9R|W&9"Ǻ+D:h/T飯VMss՜ů0BM^n?WkfS)7Tw3 gV@_%] f;\lF(s+2*BpSފq&wOYR ["*CDuݖ* XD^*|,P**guo)]/ɵ1O8^51s"Sԅ< G*йvC:gn Z|ۼ%Dq珗PY :EH--Cx{¬ޒ 2 K\=4@* WIYJv;V'm*ȧNPu0G+l xY * 5S>U sRF@g-S'C_&qw+y :]['3DKgR $?_3$pb߬"DڪFt7TM #rTKlA”YTf޷$4~QB1QՆݰ;]F:Q$vV(E@r>v@W={"bsiHp jy&{ܽa0NQ,2O Tử2^mK8T'"!Mqy[ ;[ &m??q՗3i=QT3Mos j6ь}CS<&yO:8s#c]rӥN(I@$5!?䢊Yz& F;btĵ+LC'X|܊#He2>lc*t|cZOTrwsjTp [?[Fv3~Ksŏ? !{z*xtzh^ŽLVgIGD YQ?BsĜnOa\i7O<=@;ˣ3syj7{䛚S&U˹)ݾӏiKC~}=F,%~fy[]O*,{;b9Kx8~t҃qy U9A (Yw&e2 ,SY=E YǣIH B,VÁGb(I/ %Y#A@qb{ɔB'`cN|ԁӋg)!eQk^,sNv 8 nX4ՀzWe^,Ͱ)Ct役7wuPTe3b`b!<"vxr"ҝmCB 1xj+Eea'F M_X=Oȩh $ m|ηZ~"tKjz\`$hۧ! YQπs 潞ct:L :abMt;lYd7rE\mSW7!#śSםWF(,ʫ`bmoȹ5ƴ" T.bgRY-l`IX+JYzUUc2ab;`Ӥ@~y%)!*ABdⅢw\ԀV8\8XXG8JȪqB<1zCܣhpVoCA~IzJ}olk,?SY-۩KIɩ4 g~.I6e708fޱDɜ OXq't~gqiKA{d߯㌂A(A&>*$ݪOb.}aa)aC-F|qwG z,_-7s ݛ{Oa\n%6?<5%902/.߆(֍P{0T ߻ImZ_75S~MD 7I|n<łוDvF\qpwV/$h.j3 .&/۪=URGijEтzN XrH|0 ʸ듏 + Y{&L216 8׽"oG;Ԫ7ܢgjR#u7JmsjtHaw}?mB,UyVgg6td MϭHup_$%szέPex+=:GoJS>mnjMcpD{{ݮ|`ӬIt͠Yv\ܶiDlnXr}[<;R?qÆ%I& sNЮACcPǹWʼ>2nfSybD&"Qic c6 di2ECBԢ{F[M]IRAT`$ YMBX-q,S3H^Z{.S6ч jW}›0αŭY P`D#יm` `"TTҌCe )ǟIHTݝ~@61SyfwĔ*IUϖC\E.ͿO4?+=#A Q`E&'628b@d2ib7_ΤT޲<%{9J8:e 'ja{nÓDpГ)NB0r+T0B6}B;f;Rڎ-B$j~:qK %nRR  sU%UfzWq0QQ"Q#;]*zSUxW#2*(uU jUL?=łw;4,?`F1 Bey7va>d֭0ع<0O=CTG-z:KwA\\þeے3oaxZIq~l$FCxB$SLPi.j:ho /!Ro76yC5Nвcs;țB;0<:R<(u狍4EҒTVDD TMBDKPك*!^m;M@p|3*E4w]*#?"CIP}CD0;UE!Ugٍ]si%D\4\ph# R$y1fO=[ebjwb_q/#`q2i{Dv 6o!F YKӔ8_x+XHC3@cK:PEU1'U⾽QA270**nkx>Ļ9xT|! s4 {NSI='h@ăZ+ Ip`{;bcȤ{~.x$[B:%?$E^&שVsM*Mer5$D蛬1l'v?.g=biyuNfzugKeRDmȭs)]D0=8=v8BtUz$WӔ|)UjL ,*?B'-BY.ISZa%)%ppt#6'ʌQP ̇6;qETyV}s rK5bOݖȂ!4$Fdǃ@%mmd53IK  yNYB-)ZWw"10ĂM?x÷]#`L^ۼkZx!NlZ@Ebez*6K̋k4?>$u*6m)*75T lj7'cgdG?!YBQk2ң[ZSR\w_ˉQ2s#0Β?+^^XR KKh*|n%ܺ =POFFg0SwWc4lTIGC؆h`7ŢR}&aY/dx#/,;gΠ+5.©75TŃ90dMgq-Gd9pe4q>'p[qI\T 8XvJnSµs<`߾Dk,WS{0h&+s5;䘹5"k+{$4ɪıWlD`Vr1m=F+}ʘsw…D@ly8-써qQVߊwȶ1Oosy읷5$6{aѥ+mf+FnuY%*qv @mx޹wu3rXWBFb(ͷm좧%qG:~O 4ܥa{#Q`Dyftv P|"%hF\Gk+%pƢWw,k`S;_0M#3|֕ ߵk`A1H0/=?>Vޒ7ь( 8S0)>l/ i]3.j=:'6{MfX{YGbk+< 9_;"v<>lt&[@mщn)g莟8R}!{\'b$_} 8$ZJ{E |R'.n.ЖهR-UPKxaW,e2C_L1swԓqi @}u*k]awWJh|qEfT)͎_0mEr ħ$e*\z}ضcfRh$+)\, XA_C1DE7qoBډ+վ;V; #-M˱)i*' :$Sљ7\cTYKٖ{YKɪ7^Q#COd$N"]UV 3oQ{;8*oJ{>8~Y=A__,nuKٛ^l^%V: 7EbXDPa %l~ctidy$5)']D|ӬrHbwVOLo"`Um$ti4A|]s2+˂+R2gUZ'%- ;3;_1. F?>|xl{l?_-ΩboD(39 ( js@NhA U :DMΏF9'lתj?el1u hyQ؞Dv|L_%yxX|YꞲlL-QlSJ!SrGRU ythÎ ,rBt gԀL%Gvً7X*K2JchT'TAUڽSr ڹ¡|AXقg .{/(&OYap,2 Eym6Qc\8\/Susf-Uư?fV)ߋ|fpFd̨b#{ur's:~J`vg~ W6oi:"-t1 vKkzc8‡C#ߒb5Ukb^3FWQAk`A|XZiD,'pU <6Oxt/J;'evм+4=PUNFۑ"D;ѽ}spž)ɷWib+K2 p+ƮP˹8~{sMAy>!iЅu >aUfv#mCyswks՛)f}.wKB-) D/{Eǁ%4C&a9J g]Eq]DG DϬ6{ժF)e5w8w{¯618fJo=MTin an ^S$l|wvz@숔H /oc٫v6 %NVU3wt0Ja}ဨme;8O(+"G_qo䙁"/l?/C@N@~=! 뗴sp p~=^%9-$wUBf㧪\(n[VEJ79g3·9}]mAn/74Mgsg N ځ;GvTOoo cRIZ.M4ހ~F=k)q6Bfȁ>IrY.D>hwR IF #:ų }{^A3#쪁Q+pЊ(7(QUPcq* g,),p4 4FgҴO$\  QJNPfE gq.;J=K (KYӋDr]H0ʔ MB-=jfxr 嫿W %5k"{wS- HEE}l;2N#]?hRA~[̸_Vs3}Ggc[|s M@gzIan v`yN&#wMVs@1%E!_ -VD'2i(b2br0lɕ&N]( {iP2T 9+^ަJY]O% jsgIL%$ս*m^i<0Qo_gdѰMHUD ;l6_gT+L;IV_Zr#`jJ,DZ=)SD*%O@k ~Y9䐱x0~r&;c m{-使%Z~22\*{ҿN:;Bra'E&twJYwM-b`ԍK)E흗a %{2uX;qiMcJ"GIB<{ Iy&*('8li ޖO@B(H0@GAQ1tIpd!.$lުYNPՇS\xI؆MPGI]+t c"s42L:v"2\E9d B 崠?َ<*j?[%jP|m'7}9^lSZ6M()WgC"s=CW(",!後!X'̙3DRR(>k>{oΏZ2#gu\ Fvx:T"M@O(Gp*!'tahBX,ٺTX//5,T`kM0 lg]NeZY٤F{X*ɍmz!/=~^@=Хi<8EɳZp=v660+Pj]qk~D3=8aNWü>XuP[$6;d"6ቶʭplv^YKzwDTM`0_Hc)l{Lga/֧%'r88 $tSlLJ, s+ݽ;"4#Y{&d oFZ- }t7;%gm:.,|0pqM! c lb.8`5`c+`i Q'G.9u`_`ekh hLt^2JS >r]\ywu5]-p"GrM|eA (?Aj+c3\KŃbvivng׵FNM6$=a B e;3h7ףM07|H0x{5@2pepӤ&Y<%ߌ(*k*'4@ ΊhoV7lLs s {HaEZ 7urW Alm3vOMFT ș'$?yݪEXI,^1rMc'ov휶7.;䔤8^Hr³sqȅApڶ@< Bh1oe3Ak|V+(Ɋ@{ڽ~0li"g+f[ C :_.JKvTM"qh  gD 4A9縰"[ 2?jo=p6EDFb5\"?NB+?@tϱz)z&(MT7W6PcH\**Yä^O5γ8]X`F|.}L'G9 2$!#*j܇k)޻(>irvЬLWNE7,gTѠ/$%_E1Aދj2,WA򫝷{12[ay`dFFN%4HިIv qIJcR0wm+<6ۃ:$/I"6=;^e"-!M")7\{&'npAmKB $B ̠ȥg,RdE=Z9;9.) gGɀwԐ`32܈W+)I X,p]Fum-F !M!]OxdoR ~0[d4/Lulش3Zpơ4QHEChքrfuFy*.k\C-+d,緃{h%6mX#Tc< 6^R"P-^k?5$ S,@:~>t㽼_wgΝI[ah|IQ>mrA4`o}itb7sk閶mN3;qtuq2-*@MgS T$v |5b֙uQe,6~P\,7 ؝ǧlmks4/M |Xnj_/EvVd[ ͙uZRؑյV)]2+/(%ͥj($)N1EAù})}~Нtjk_U+,( @K80TU2JW.$Ƥt]ް/r|o3iz׉!HNĜ]C1`$/vh[W oR:)rDAO TOu5p_%K9)7J_yQrժ?Gխ!2avJb房]/̷5kWU'mưQS4zt=Hѧo6*{IZb9rY~r> * #Jċ(.ۻ#J\aԟ"K_4p%ٟ%[Hu})EK.E3Ay{!ү6=X&EVtfª)>*Yҝw<#sJ(5@>R`K+pÀ4qe\X. $IMѧ;Wݡ:&}6T>kBut]0嚙@R \\kQ V3dA83-WBpiQcñةH}9Mƴ@ B2Q2x@!$R(GyYȡM TscBDɝmoK1^&|4D]rT)4<ߤ]@%+v5ka#;7,X2Qm7h!Tn}j:ay:t. $r> ͜2QIn߻ q=j]Z7@ڨ+ ;3lsNgY#_[U>Whfׇ!8 !8ui\${ ũo 0w/Uxͯ.HuFioY,փc>gd4*.%#"t<"H2!P[5k3gȁa YY5bQ:qT# &FyBhHf,wuv`lbJwx0 8z '! ]~ErW^@L9hz8ĴlǺ&!ّ5 c3kݘ# c`zLU^i# GgᓑJ4o{cv Aqn˵1x㻙S@J@b ŢѷȕGiñᗪZ>Z4{i%@қ ~ rt/:uTur wDTߧYόpņ_C5Q% u\-͸)3gOW4;]g]Ƴ!ɏ Cu4x]q+<aIУt.k$M߽9YuYac֎XߏdV)+C<#zQw2pVkHߔ6~J~O$۠J}WmA{4tp4L^TZ'/S/lqf cJ1G34lY–c *-d*)O_{Օ`SՏ`2ieJ1KZ~(!%Ҁ(6Wŷk۴1psigEi^m\ *"j$Y"qi&=zZؓsv'('JUU=&ԓZIbie.3O: ;Gk e>.ps]\3_ Y KUIp *Cz3PFdm;{Y}©"yYy!>Hq ,R͢B=TmKL/zɞnfWa6E# )&$ъ`Zv.}Oj]ܨ{(ӎyF$+AC4]K`%YlC50sZ-: :6D(/8D~Zh

1ХmVkih OJy&|=NCu8% ޗ"%(gvˍ^|db&v̰YGF4\r1ֱD9d0 1كViz"[YRC]{e9kD }|NP!opT8UDLS^1rR 􆞔u-C d Z|kJP=$Pc#3|g7"MDEU y }J + 'x Qᦒ|*~w5zWw֞]^F:?X:mh&OX1og@#p=55ᖊ j,ё!5&fcS˺PsӊKrIuVU͜ zF@/dHL?1D޷[P89w2Q;n M]{+-N1`t^Q}lUa[N 'W DmH\v:(.ĵ:G˰@Dt`2Z#C:mWdk%{Ɵ}(s+_:t4Tb:]ٛTZ9`̮{ bfeXrh/Ttm?Hef\BS;n (ӂ|}x{_!'}e!yh5ϣܯ10|4y~r.2cfmFLb,I `VkSVaQDe)ͩPTcC6L94}L|qIV7Cf(4-\yTP'T2,TExƧY@Kg[ixA>`'77զ $0~fǗ -7wUtڠut&ycKh eg_9G=#:'0\7V@3Yu}fx',{jfpcB;4Y/Z{gM5lt~'yTLPVp|[l?Iky N|ۈXf`шBWWEoy[c&(6'H4,4 O7{0ns3ڸen; ]pGJT.dЍr mb(x~+ _~D=_mu)*d$YCnwiQwKm$k6xjm~2 77PjKQkU}" =#w G酕!7^;Ql"fPa^H WA4*\%"#ӆU9T%r܄_?e+FSQIDN+zu/Ĝ83eVguj5d|m4D"M%z*߮U_ p7#F^2!@<@u0a5 !QftҥZd.p+5%bӿ3!bvoҏ Йޑe- j7^,ul6=BTb7!wyC 11YAj[u` ̏VVO0Ӑ޽@{xzk#ר;P҅{vaƄ R&UTY:͘خhHE^nҏBၸ`ERWƟZH/.`4ik5},x8WXht=@.UeÅB3^pn2ऐ!̛8/ ^I\r?}JaK 9<D'BTKg(i9G,Nkosռ&e^mi.pf o74A>&k{ܧS(@εIDcLS?|O'P/PSM|`m#%RzId< T\4h}48$Km*C!.jGV6QbUd/.0r)f x{O}!oh> Ai-V~Sǿ4N8IXK7>jx9Mpr>yɬ6\Uʟp<έܟ{f3-Oyv#XE3̵ew6^~۳])6f7H ޢ{Qt`e¥rWKwo~I*Yptbn [G)( :,xS0 9סr1iIM+yFg;8@J}Wn~#ށ]m(yeI[|=t(, ? fB`Ǿ?X۸R-ߌ, 7l+blca :ߑOwzSE8߼mYx.kp+ 9Kn{MmKa&[6v!`\D1R@r(!VIXuIRG&WyDWm{V?C]r6ojhOn蘦Z㰬I< = ,go)f/X qko{O2RLYw7UNL[EYhÉ_,o9t&& E@\/uacp&f|SO,Y*\ [:,akĢ2&r5Wc3 6a"@Bۺ KȽMA"2QkO80\Ӿ1_c|V9뚉 M_es"(ga}# ?ai(y>GH~[Qն< _l򃕒',bLZ;2mIξc4d "Z7A?+%M7xAYnYF(z. ^BVYDaMbB8KY+S#H׎2,NSB:勱vODbVC 1D5k;[>-_6*7q|ʼ h0ϵb4#oV/Z )39KXPǓ!ޅ@40@%G8p*pv;a&O}ѯI ],ޙZen'h؏-%ޒ[)JSfS5A!'5r_%+41L04Atbb^iIw!%';b h&ݡ.S)+AmLy'M[?=lrp$ɢ:t^VXh  ̸ar:p9n9jJ1Ҩ7Pbm17#W3l [ERHjmcűW2`+exŖ?_8@* Y"͘Z7E8WNpQ~)=>J;cAGiEbىrooN}z@~h@Lr(Mwtױ֖tqJ4% "@I@{1LD1e r{Ec);b`):+(E7L]s`iBLX`9- G O1@pqL3uA dtRMx p (T5q@7(& *ƎredD[*ГdFؠ|'[jVB/ZرoZ,0Ö%AT6aO{A$T8ܤ5{_hͬ(vUC?լ@XnGrUY_r-6^37`Ak+_Flְr%@}UۏV |P 30q >NOv:4`P&.\n.EkWhj]"nJ͊^~R/XG&7 [Ç#9("#p>MeYMOQ},wSmiC"J΍ gIĊx%w6- jG -IWE[b6]B|^~f),s;20~mh#JY&JBNE>y~A!ʝnH_OXjn^EyoU8]7da\D? 9#յ߫ $~p$Pdz[0vC =ϭUA r V!*8RS5C])"EDQ:Ԯňhs|ڈsy-_@\> I(g[OŸoKEO\Jb.k);q$TWq*ȍLX@?>fάeysʏWuS\85{˜NiJifX U42"LL pqR9G:'h"B~RJB<9ƕYWǫh8:q2s ‡2yJ̗egQ䀍Kا=<1pͱ Dm̡| ~ggԭ[ݡAفOr,3HܰiK*n+@:>SsMFNm#n}A_? N9,؍,tQޥj6TGv}Yt3|mAnEMlxKJ[| lSAl6@DQyG)_*s{~4΀L`O@C[6Q鰞+q}SGVȚ桚<Um~jf63D8Wz|SÎ\yĉ t>%'4ḦC-V3/iҸQw&'V `ؿp0.Q6צ>LԿFhGTL+ۆAXo4%] CHb~;nkۿ9NP"yCSZ}S;Iroh?$ M(+{42/\C8@_Kw:6j M ׃F_\[}; jz3't/xoGtFW馩ŐhĶ̷c=Y+Yfr Ayi;̂`mpAv0{ٲЍ+LFyꉚW_Wa i'lKޫ/P:luܛZj@Ac7MMX\Œւfa7;w!mʍ 8נNvsQfc}E'&pcãA]sL33 #q<N&\yK+q+L ^x|Qv^h?qZp9ظ! 磊R:AfyIiF pѭk PÓU05 g,NR֢2QjLMIe.PY\l= Տ Asy1*<<:c}{ja2y#qթ^xpDuh)6|"n6vLI+f':$;aj*OQ큾1%dGU]8˗dרkduJ C| $OKZ߷nId04XwD' ߅|*0 DR9j &/MPdi1M,qe[ t x33pEL$Mh7EـQeJnM$pѽoI]j!P"d*swqO _HPu9YaX_ZIdc>+T\bl9mRH ȥ+kcKqp[H6&F(}9 ,Ȟpק_lf֫W!QLF&FBH+yXL2y9oTxRU#U> QIr\]X}; ͝ z>v 3,J1;U72 ]ح25tTXn;%eYZz\dCzcYɊ͖4x> 3=΃^ $`.k?EgTF&صGjSzT7q۬S=P+Brlt83N'Y<>%)ZbVbNjOX8Mc<]j98vm_@GNEʳg1K`G:uIg|:12fy]SzV5h18O$T dD'T/z~#x{`f=d@7tE~:In#FWh"]]f'LƅU4\̹kKH3H2CcӉ'2˷zmIr CNtBB*[,D6m;DU} &.[!?Նib=ʐ1%U}|۫"Btm3hQ9]E*wp u'v% A mktyCf,ߊ@O:/p}({I*88 Mitjqok "&JTtMQK6?H6Ã3ظ-&&z+;H]Qin,+9uY0 0? blgrޮۈUrs%N3v\m pг}c`OBޙo:j#v.I>MiCzB1y:Wm)kT"@AH8=mU 8H;OsLJc/Mm.a w^ 7nVEЊ z׊&._1xF@L[S8Vl8 {}I籫[?h**4 urz{ {IK\wCkOǪ6RȮ C UdN +,6N#UhpdԎ3D@+U"liRHeVpVX@<@b:_|9_pS4= ??1 Vb$WU_*~u_T΅-%W3Ҿ7_'D+eη3?<"6~#A]:ꆟf-4UԾ:\G͹DCcZ39ؙ{)&<(A*6J5Gq3nOwJM1WZ!à+Ye[.^HNJMr8{ڨn &eٝ*S!BBkSRVڔYXWd:Ks\Lpv qvj2R &AGZ:aHC[cPaA(?'Y(⫾0>}^1ic2$dj} G{01Tidž|hHPmfG(*(ѤFq`_"IBa ‹z(Ѕ'xgQR-3vKf/%@p(zXo>*=։T6 }sw,ў-h#gD2>Q,gU(LD]2ߴUW,1Q3̝,ѫ;};jb,w' ZQ4 MF#գ12mQ\=5 +=㮦NY_\6wB1Gc /;лo3 b/{<*mCBO:c 6PMnMưP5A9>Rʦz2HSL eP6)*dv8z3$U4$6owPB{S6u>3q3ͧ#l=cOh\mǟGaIA̘ʥ WD3X+y/0O#MuҬ6cq(-"ki w6 G@ޙ ?1kL|0Mv`wN#k y9gJLwޞ hHcW(twO&ٮx4K =s,w5 ġh#'l_Ll[nI@pHnJh^`_ShwI.S.|f|14(apW;b(b#vHo:<Tv-٣FN-,eUN] '~ǐ̙ٖIz8ۄDŽ{Z0AuAW? b -u/G&6rA#`9M?{l) P[rܳiMg3Og'`uf'f(P%vk?m#!ɁS '!'1sR[g Ę]R:jyw‰K/_#あМY\RG6_OވwۋqtҐ.;*?f-Ctn Wז+qIBH8b ٍjqqe.x?ijBD2wJLAvW5*> sW꤫`'UX)k '^A[xHfvY(&@(U`k.`gUy|F9v%p <6[J:?-?b(`[0㘦S[I676΃VPsȌ_,"vbAXoNu0XJFgq ~8h@.FL:p] wRE*mؒ WEk0i'$7vӪҜ"} ofV06X^n~o3ͦ_{ c+/; ǒ^a?LٳNq,) 1# dsp7|kn‚!GA+c1DŽd8zhqMQ<fm`b5ïs)]?C9rQW~y"fIhPb{c*PD+-D1S icH݇WJ#QF"0WUj? dаXoJ2&g@k鈝%ao/ou؃'D03Ny.c9@b&"G#*0~ϯ?N$ib)w9Ï~^B@4F,.w`d33NgqYs HkCA~:d@,iɄ߆ i~.o PLd!f> UMʌ67k$t0wXh?|H!j#;!wҟ RjAKeI 5FقWr}þQ>F],L5"E jِhSlXsN%h+sr`;ő RDdܧ4aȿ?u-0ir잱+%DK67Q=[ )shDM@v1~XPD[/o K_JSIZ}BF w֐av-)jCEUvVH iYj~?XlPeV#_QG8t.jkz@gah*!Cp.ps|E]B"v=ṍ9F_s2ĺ;7]0z `Ցw*Q°uR{\QÜ񘨆ta2DmN642QzH#Y@,6-Pl܇Z9Wa{BD]o &-⊊|]QɈѥ !>K8BNQJw'r~mlkIP hN' K:رo_u ci_=s;zcX8R!zRC+-ǏqYkʷ!oj' /B,_"l2>MbIa@:v,{AsrBt2bjtӤ-amUzU(rI]בlV%՗+=2h\*C*jtp ?@܃1>$KqCMD&igAt[ex#$s-;Z5qmP9b< ð|fbdOzÿ6Yz'RYzRa*=hѲq@:s[BEa ύz7I(@2$D5)~1q嵼n}c  l`l t <(-`Y+r*#pSvffAXI&T&oFq=`B&7!DՄ/bjIlTJuSxEMfrh4h$i?+bKAw[q追>ȽnlgcMc)&91!A pO|eFT ]Նfڊle^pMOVdZc/M6,ehC>QK~-̤%9xyFdVtrbƠi~Cz-p)L3FR=ډ #棋B{K6?Im Ӂg'g82 \Vk.u/|r}%0yU0||gxy4T q>q]nٓvs.0W1&{@c%A+ ,*<ëv.G~.R^H=_4jNneBz lVߥl/!T,cZsM|LK?s-t~D!hdʠ,dH#JR;^P{V VfӸa@GfRTP#lNRt#Gb8K~K"=Qx\Uˇ a/x^Bb| 4Wp[6s\3=~ _L 4@2{ވbvtc6a=?7CW8hqnqP)ӹ1mP r!T 0 f_C-_hȖF $Ƌ՝AH0.{;:>01^o. ?2.2|e(/Na xuX>\J3.Ӑ*26 V_Ǣ%|ɨwFTS48>ivM;Wq51 OʏF-qD=U"OM<YRzx%`u V^ ^QԢt. N<k_UX[i/|Xjup;P_uxۍMaOb&s=c6/bFX F'q8p-:KՃrҢrmb J c?{T1S@I]B7@;04;a KAޗ-6ku(k;`63?'PƶNI~ɇ)Rv:ފ4PV!&Ŋ=1ܰ_N9ɡtjPy pHwUmk!h5C s$GAWI_!QK=[zn9&'Bmr6׮Ɂ֧rYY8Ɍ`ȗUGv[sҹXuιp֐(Tjc|U[wxXbh5`(+_Y{˚0zYtsiOqK40T5 ł)Oz ;f-y 2+-z/@K>3i2wD Q\-7ǜGBj8v^PH6u]%5#q;w.ralwןXQK]7}h8vu :wlpNNZwւG iK@y$xpYnvG]| Zɺ0əVw4佁,肀,?DyZ"ϧȃ[z-}ol\374uewQ"58l-aCyA^i:N#wDhV U]hxk[=f+$ JIuiecg)rwEvНƲ`CLqѝ6#. WԄ˹K.Ѩ**TLFd_(l 1Y V覠#}}j~$8Yz(خx Z.sc,!Ciǯn+ qS;tŁ~3Z.IWHf mH!jtz]hʩ+ͳ;B)7iO{#Y;H,Bj7xm4,Jvң1@2F <5t8* gLˮ`2LP,R~ Dsw2C*"orfjX<0L*vMJ$ ه RdRK7Wkgy|CV1rO;ltL*]c(|~,Q ,!ׄߧ 0YKۮs~LWx4M#8=̓opKЯ 4;v2vkD(Cc:p{^F&yp+Ș,ا$݋0iXXѲ2kwE >U19{DPAex8<6vm^s䎮Cޣpe Xs}Zo8s٢+}RQ|hS‡~ϭ42#~h5?<Udm[( =+]?*T9n[\DOF,?h 4G>o~9O*}]>;׷W'ٲhL$qp}omʔ_TM+˽r$5>y F@-l81㜟wأP};vNƗ8:tZ%p OjE9K~uҎ֜G|0 ;?!{WG:fȌU3=BZO<]Ç.2XSw!/a)O8sT룶TH-" $xۖl#M}1[<{NUGRa=XVB-_Z][+I'_iKZ@d鴦j4"[22.ؕoKD@D9/b1:z9e"RX ed "n\(T1Ձ":#GsS"7SHT# 74?:ҋPKSxq~&4vl}<͸G'ß%ltarIx-M{2nTgM{WsaFR],[h;.sONzsqosc| umNnu$9@N^/ŢSu[㨾)"eح{uPQ;y6uԆ6%T>0XmT'G珁VD1+H/9IRPRx`AMxXM%>[v)PBcNED%@ޫ[/PIf|rcW'ŭv|'l : X^jo ʷ[ke^Փ, 2_6K_yEU]pS=8ƗdSIQﭩ >A0q,= V`Btg0R`_"e@plvb\%+ԕtiS\rPv̛`hr2F5mKm<38J@rIC24EM_ Loy/xyZI#\,^e+{4j6ٞ2| pOᾦ+M `_|i(2o9=;Uŗ֠ebf//R@ A.I͏ zz&# @t`zs-kNjx"ίxt?(Ej 4v:Mz!8TZVq_ wsQmxUs +6g@88,/LIy,(<O PYWq/)ic{x>/f+ߏ3y65~[@5XͻKv:{}5"Ge/o]'Z]k(PZRuݲ@jF!A$2P2cϻ *P_,kmW0g]pڢ#8%Syt"6=$l]J"CiHcJ_GTU;CSVc_G߲}bc4;oMSԅ5.:`.ceƝǐJUmm l J9} W˖=5 7*7qnֈTdIaRu`akauL&DMNPT M$zK[X~t¦rV&5؍W/9leZʝS8df|wcIweiAs;Ss~X:NI(v\fVM^4Ҋ0oP2*G ؿj ]i3H)e覿|D\`}֍Bf }5/xx(Uek[l.O{W4imom\D&?p 8*l=9p7  ߪ ZN~Ѕ1>$&, *V.eԐy@΂朕ٙ#qUg3L˿aCrb Lv*@@ %5I!t@#FJ@׊AWM4(/% fhŎ "X) }I㖉)`gI2Rj,0hw$֨^3-%[NUɂ"+DRw֨!OjU:ߏl)'>EFX{'sŀfA^xAgx^]sr,/9@B.A>1fFv|ICea1}ZY18*c]~,>IT8H33AڇFTg/BtW࡫#Gk$ Okd}vTyFlTY9KPK8aT彆lާCF`Ey*U,u3WX7m̿KxUltiS:jV~+)FӰ֍C.퀤=){֚DCI:6*WQ?wscn=PR֪b^J %A _WQurs1Zg.Mz(M?:%pNF3h}DZl!wtׇ _Ty¹ T*htƕCsL)yd1SVI`ӄF>CҴ\vᔣ$b>}gr[˷.HJgVfq!L! s jJ'[릶30#6>ֲbCپ Ua/MCC3qWroʤ{c̀D~(!6,C2:Awqe(;6~iH).ՈhO uhdNNxH{C1m ^נvI\OmvNUʾ۶Q(:`ҀUJzM+ "5rgJ+"J$$ER%%*R8D( +-|ޑ Ng`-!z+I`~Cz>ıux#Nؠ^ΰ?^R俴l~r M9, OTw[^rP_5 HS_U26b^~nR";TîK3DaWoh"OӴj0=jbKj:̅S%?vk[m d/X7l=J"Eh+M`pBnJ_fn2zO#lU7պg38 g4zbTwZXE~>+/nМfVod(LiԤ%aLA ٲR}Imnt0j}ys؍p+g.2^EX=MN< [^4PQݡL+E``r6>e ĸϺMXZD7t?]Uy/}VJEz9_sPgBR>woY b+LJ-P2?6u3^9EFѣj}+ϰMw݈YשkT&7͡Le\ , TQr1<'tiNK7Ov>ȝ'%2EN8cg<^}4X|!1HT߶@(s O-]T]d* 3{a*] O]*/J2]gÁI!1U DL{ŵOdvQ\a&8K|tٕ]0>4e 8PLflLSoޯ|ak *3q+j33r ރ֍LQ3äϬs 5)t:j&=Eo F=+mVΌp1pClХ.|UXH\~ћuO.QCoXJzy'#6C* @m/'%`IW|jTŝ{|dѶA?CSFR綈QfaܻE pgGa%v7_вwt 8$ nR4y8 _CB dw|gʥ2$u1CVIRiF/^aw:י"˾*ir峓߼"6;ANVMLJN捵I2P0zD}Y=ܦeWu d6d,-|n&SR/8'ĤA#lη(S >J8+Vƹ 4v>.i yT`n;t t ,PӮ r]x' ;Q{ -2!^tS(`G4d?|1"t~{aQ [=P\ű;i~[-;۫RWSX8Ifx5x F}KP >r _FS(])G9GXqlPBh-_]2 0,?Nvs.ug Tˡdi䴹;tdM7)︊Xc v qxB$K߷:`ӖTjkvچ:r$ 6Q؃@:]s&y  tzE9?D'RJ}s*)CM5<.`IVW>:GR7*8\HG~ED 8" uZZTz}6fboۦN*˺(EAbKN!c-Ճ.-G)p{$x}17a7fK(k^\j)pxfCƻsQ {XhBt鹏V?" -=6yLcB] XV|~>=LD8NmCR0-Pkd!b_ܭ#:".E>/zUEb6ՔcImƲW>KJմ>1`sjDӭB6'U^!7cFҊ 0t_y93o!Xud`gp}ϚkV2AObbLmjVѿˌ +MLl 5-_ͱnY.9E6E6ca`)<YeVB?> 4*}okTA3y]%LpQ'5rXEf(ʲA7F 2sOFըbKG;pd,2bg NrW%,Tmۍy xwWok 89z.jUv7oE#ySc\\4N-!19jC~6˘ā62vig?-aɘu% 6wC $.Yd'i,"7Hp~0y|ЌO}$Ss=?^'G`}D}8|.Y5n8:3,j:qp~ӒI;$rtbf!!'cP%36n=\qUbD*hGnQV]D79Rc-D FΡyJ63 l E̓a؋N`_31#yN'I3ur Sq=Ig,$Ьn=ɡtiڻ$xDQgb =0 y8/17)6QvvR&ryEC"UENKV?ND'N%A Kę0B! J C]f i,$2Qzn qfϪ$ ͱ I%71zYD%HٜXS\6x *.6Z-ҐPbiqYV*hmzCI n.~_?$Qo뚚rͨ64;ߤ %g~[8r'3OTYflsjٚ6f1mkRnGYD{6 ;/4Zļiޟeqb^JYZQ_tnZCfo,vfjZ^[4C=4{iu/.C?[lakJwнg'IWu s FQAvxaB"",ڿwy oѯaz$ئ9zaw0yܡż>m Iݨxn/OIUP!ȈyWC[(k/AHAY 2B6j}$޴0lxh_Wr"890~S˫l9l .G2|n"5f&,'RkQoRo"Lߞ 分Є\xF4 ;zn%^:ZL@7OF{ ɕ"}#kdʡh7e:7 iʹndI*#4WТ]TA7cQJj^1IEc,DG4K\ ޮ)2tbbnk;S)qq$U<05KpOY3jHb!o/H/!?Y.k XTuvq`d{>ǞҐvyh{ǓjoM-;7:^f!C(7d7_T_=eXPIw:p.d'}3oa,Ɲ'rGvlhn f?Uzr#+e lQȄ8kK/"H&@9`Z<$SffWzH[gCh_F$2 _7y~b?NqA쎢NZ0*@j ^d_^@iD )P%u^X[gPwTZD1 _E&YD&$~D#/D l"0'V-fk%h-qB_3 U@U<3ӥrT\YޒzWC,c? Gҟ׃mEyѧP!ARG\0(r+7͂҅D-`ڱӖD "rQ~,Nd(81brOpMr 7?BDP2q^ "K%R/ h4)Nѩ^G/`Qz `;֪P̟#N x6SDU8kp|vpfpS1DGQ^. :t5PC(ٟ1vfGʹi$_}x.8;OIP¿q{S sN>1l@y E-7:&nY!x~UwB$D3ti.dE'k6ox,ͭJҠᨳj2 ƜqX\K kp`:n9\SΧӮ$ W 6 H'Sm  z+x8r q5dnE*NZrʨ<Ƙa0 ;hR^Zƻ$֨ h%N0 WʌQi^;s/3yN^- w>Igle*ԴM#jpF>bϢ  >At9Fu,32 mғ֢Ƿ*GO]w}8ѱ~}:FxV7\w}Ho08|iI4}mGp.U#(Qw 46žT_M):AֲX v,6ouu`z u8Wّ΀}*2L;dk+1*KSX/RkIy KWˬ9Y)y]AU$ؽd}(8YlSuJ<|ږ%Nk&'224wbY?2_d)xl]F}zQ'oQt 8\kzOJm\h9 S 7{Z=DE,Wx9W Evu#z]d޾=sT6d*Yo1*:jVs9ݑ&`_G$QqN:|ǥL?łgk~UEUPvpA]>0W"{yzlQk-0inC]l+M R .*[Ih~hmen,!PJ.͇O4:0 2P`l5$VR[em^b] y~(;y^wM֢*i7gM{CMV*y~7OP:',A 32j22]>yk%1s6&[(r5K_{_(b Bq}`?>^W*ѵR g'ºHv*Ĵ8eLw VZy)6ͽ9^!5.|$k:V%9!9x21CFW.5JإA1o8gk݈VTԵ~6|CE">]T=;>Edw>>VyB墰[GQǁDvz%iob_ZqI0WI#GQn!m2@ŽJA|KҜY{w]H g[M`tΌg4@jwD9% ' h' rnS)W-`ڬB>M|;HJ/B&YGD\ܨՠ¿+պI&3~F heR0PTfžo"do~g F™j5Gc[Q =.z*Bk /I]2B *P7L*(٠Mz&u>iW| b'~Ztԏv~xd(:ߚnz5kLcl$dpBхtLe/",7!CO5#$I QxMLp)=.@}oaN?$7I6RGZʤVx(0mO^&!2Y3% zB0{3P(6lEE8ֶCG PA>'D]0F7s̪oޡ`Ar"DiK`:3;}Z.݊UutR0q]lSFk0)y0c bޘӪ-DIsm*+ڧ#WJhA` Dɱй3+!0ЈE^k.fўёa,Y(Ś5E4gu:ё4 `VM'U  u]*ܯZTT6B^r汉¤Mjw暵;H '}ʹ%t|R@89ϡN׊X*z%Yҧ%fUI+W.}jnO<;]CiSmRٽg[7*kI܇s׾AWD-e1KLC{#2c0kqsT[Zz*m_3oZ>qWN | r࿇Gj%'L$뗺L9rG4*4mH TR PP7Z8e$iVU z:ŗ&lF/.V38:>11shTi5ʾVwʣ<äx b4U^H] E zQF3 'vlwcC/QiBXV8~*_߶eY['uǘlAۇ'r姭}0T,9&~g9B=AXu$o2#gzQϧ}/@#rh#?@-I@ԍ3)pd-I0SM9; _]7uN&?arט&>׹(Gov'eN:>(v-.d)9XT}Yig_&#MIciVs@!(C&[R&GdP3GttluTrV~|_;9a1=!KV=BV\u 6[@38r9S'#c۝^^BHqU13yg}RG M7.`Oy?8&2wWJ䲄K?Et~Kۉ.r EM*8V61a vC(Z(e@ ltJiثy2Hybe ix;5~/Ms(Ldc0R[\ZkC#^|AYi>2eǷ'jĤS"7|bLhn9t`pW {ix'Zަ-y\0C,.,dעd)p9A@WcnZס1M7N_RK_t+MB{T^ovG2p+B HCwmDxEn姌6[HhT]eVÝ-]t{r ]鱾@i@8Qכ̚Mw>eWNhUsuڙjz*ػa:_!"$ Pƾk,fpm7HGyu/ =SSS{I?{R3s@GMSRa!bsVVp&@xW·Φ^uz! ޔ!pB+_ogQãŲNaBat?jhxOCqv>y}{g\=U]Ơa}I| ekX m/tY_tݞH+`)Ǵ˜{Me&D5>=;ߔs}iSنGH|HД(h[ Ib̑}P c{ږ~CAӺ`6}=>py,"ݔM92J{OiK8op& )K+W>{~'lWwҼԒP-H8 -pf׾ ɸ۬ĩ%ƃcycP7_0HQU { +]l"NfEU{,3[]')CC427H0p~YUBxHTzF]rݦ6#^f0D T8KY %/>C3/cSI+[vHWϣZY ">nY׶mfƼlk N#Y~O繪?qUNÕEhEj}3ċY:Aٖr1ioG^]R-{j(Maȶ8xV=~ ƗJNvb'ck/}oNP 0E1)jBM(o=#׬҈Byinݦ%c{<ڡ"w. bXe?vE7^&H+W(߯Đ =YG f^t%1: {K@!))aZ{J+vsK/8::͌ $"LV^ϥgh\aPɅm()탠´ˬ-B\jc?`t)Sz`%GJ|oyVv?jXG䓁[5oNe7uh@!k쬭sJO;`)슭җ/f p2:!;h[*.Mi|^wgE~NPH $qC&3(fuzr>PJMgTJ枔@;Ha칽ySQAʊ&":d18G~y=fS,V $Tdm_JrW"ȲG? q3(m.1t`hۤK\R* z/[b;cw+#ДVuv; N\_54%ǘa%x2CI:5:5\1+EEL~q-$hz.hN_̾j`ٳ>e~UM.%"/W8ghew*[iS n3Q>z^N+Nw `!ޥn & zrgGoL"49dY۠7fðZ07AJM$VMĭE [vЇ;JUrK9s+GO!-+~@Ӟ{>;BID2P UYBzx.Y_zN1^#ERx̡sP`K_1ut5t'k??蚎X >;ꎬ,`Mt%BE?fܩ bq?$}anzf{W;`x;Y 0nfacofGP3K{6qgtiO.kZޡK֣z]tnx"~e\߸;C`ZBzTi:X̄ asO%=bz=4(jm}T#hOFRa$ 9C*lxU~Og'@/!3tK,ViV8 :ސF9c{0th &և<r[vKle[]%zt_Yp&iY`}>BMfY:]jN` .JzFwqCIҖ ۏ$[5cVj1%Srrȭx5cywca;r:b{R%Qq˖d1wHZ83_c㈆mlooQ{Zdc^H粑Nj,Zo˼)VI̕.IO}V@ ?~=>>zAN,wmOΥ-)isDBဗ5!`y lgm} T139+!La%L·H] dB2]X~\(蝑1zA#kk&H@ N<.@  '+Und.^0pa_ydC4GY4Q$BLn Ԥm0kolJʎ*M8 -dbU:C⪗7rg:1*}A`BEǞ=2p=48&J0KbySoF(8yU%C}27g'ɭ 5)5_Oa2MPF2qb_Ə\F0׃<d^]e A!tRB>i۫Cml< dg8W!QffP>5$[ќ|Mfg07E#hJZ+BW2p[m}0Ɨf)c]X{[9mX5a26?`JFZ'GFkw~TvK?D8PSm?ݬhB2:V$ՕQPQo[WD{-R:-E][1EQ)~d\xvfg*UJV{\/>onrʕ?@-qS $p1Alvv-N *M1 " /*""j5s'iGDry|} 6UגwD]!PGy^Kg7Oh(dy?[CZKv04[yq-^3,n"JeNm&.%(X'ax0Xǧ8NT)s:Y`K?.ivrj,0L{נPJ2>fM>H ~Az:m7J|ɬPqO9* Xd5ag26C Y{$aV3olW6e aMЪ|\"FuivBTR ^3R&7>\.@tbZUjʄ˽)vgfi`'T>DC&.kND)UI~LJp!0IU38CpDUEڮ0Xˣ`1 -pIn\kםf' 2&c&I"cPwq0ΰ9|ʌ1qC̪(lJ n7찶\2'T2ÙT򕗗#0 )wN[ƪmX>E6ne4`i־grꋨ|)LF*["o< 6=KETʃ1j}{ .EQ2UD4a`;Pبer\rh#`aAd*c7vO8K\-8,h2L­tپAub/+1q}n`:0_ذyQAVr0xg"o50"RC~یCpDqJ[h,fZs#濄CL:R\+‡_"e^H"#fwja|/7ke ;bN/]|F\ߤL鉟O! `HFlddU.>Sl--@6Vi{u ʝj/P͸Gh^Y7up/(SqN/ݲB,K^k'- +M#h)m Y :MFeHzUDNR.Ѳr*j謗AA3UtVa=0|]-$ttZ?,@ϖIE*2+z%,r #bEjʺJUn| VQyUVL/?^|WA u 0},0n;=>{۴VsMEjVkzL^i&+Ui*̃/.lqEkч(]xun1lE,EYP 8;hUS.rHc1RB]ёD dӒs'jW2uWȗ Oy0%0#,ݻ夘,B#6L6A̔mEv7]]=9\ :l@^Q糚NJͷXt {⟷Ȭ0|5g=gS;iRC\6l$vcӉf7;P9> GOmI~>f8}*2y},lcl:Ɏ,w V/P$1J#`H"+#/T-eGZ-!Xώ<AAG<,Q/Zf*1k-5RqoGp?O!Pi S` eZLJm{zN|1gT*=J5w~\*?-j|Ò37X`P:M* Rl ͖{xK#2#_7HA"hiMgtH"v>*xf:^ aXN,J(@ [Ĺç[ZH RS{TS[˒ C'S8gS PC.]` pNũؕBr1Z]#IJk H?$2)c׊OK]z 0!,d\<|#pҲO.$ El_s!N.,9ZȤUBLrϖk@4Qp(qAnQU^4Fq8#T?"]ZGky:XvB skrۧVnbccTT ֵkݞV/K1N2E TDcF֝ۍu?釶1[+#Tϩ,C5ce!s9J]#'L%ho׾tW^G~}.>@?6QyEZeOz(ǹ]Dfpb{wՇ&Lh4Gjc5m8W3JE5U>Ǵy3zvyr<5q0c@>jmO\L{ݩD)9p~o2 K摸vezFp:_8qMG{HqfRRN7Z'&{׀ʴ-;ja<_S3 [ߠG~g.}]v,ߢ=?`lC3xq06isNWd66!b'>ɵ> HFWUnuц\ŀǖU fIg"\ə)%N&^*|)r',v25 $Q^UE)i/|t=Jjb NC|D̿:r0maU"rMWN ׇaKj peAzrkUa`1 &u.ͩ7_̢mi[Օ$vh:lj67aKxW좦gώΎ|}M}24NY؛ҭvipu,F_/{yeznKbB~ñ]?*w t]G}d4-}@<!Zj{m[,-e? r8ĔQe?r[Ōr 5ѼK@īۛoky-ӍKIf,;S4aA;UO;!4L*%\ pE clE "uL1'ӄs ]5ܶNqևr䀘V0tn@50%e wewˠZ2POΆEj6vXFUV7Nܡv{sTwkv3"S*Tu̜wQDԒ]{Uc ]B56\u!!UG׎Wô F}jo>xl:! lJJᢇk!ZۜSmbB)JL#`4BJQE&mfV~-u" iީ>||CD,^ܳ@2SxOtXK bͷ槮SSGphsj6 z_~`#tĠic˃]|Cn6X$61NJ, #m< rEHܕtikeZ6ƾ&q T*`hIkK, &@QEFUW'h飤>8Z~-9+ޞ\CQr$?gf_DZ41l0WQ<;$"C^+g`z FTsݼxGGYZb7PJ0f0+߈1zjS^VBS@7&x0L^: OrhI-kWP)FfkM2:/XY U:Gכә][ rhW 0t߭p%iCw7nYkw+R`(F^ġ'=[$=%`@/*ZJ Íը+Zv\4Oe/WQh.y(3"–?  mKzv*j}JZG#(#0^ 48*|I0D7u;{,NR̺)@]|YeAdJ8Q~5qvaR} Q_g1_SKO0H `PmlrVz%}8 ,zj:DTjB{BtGfPG Hk4WØ[Pn9:)L1,Klku1 ^ K=T*j{T-7R~n s䴟(wDq椑gtZlf?|E Y 囫kkkY>l{6ͬ!yöJ4<w/aMn>2h9K4j6}xsHId9GM 8"f1yg QLvj&qWңEFy<6"X3bDHwq5o`FD\o:}M,'h}TE v]Q06V.0Ps!_ Y^vdE i{8r:NZB/? c0'ByT;uvj^|p!.iFCA\Ool1Kr.5~EF $Co1sO!H}0غsKa3.sxNB=AFSh3K.Q4W;s#Ot;<}vw"ߪN)zdSAo$,kV~̳OIr7q`Bu-Xpo႞sFt/g>na-foZ I{g>(uuqPpRJ zB2kb7&˗ꋳv7 Cʢ`/Bֿw@sǛsq'2mk)!~PH }G+͡db?"wU:)ꭶ$Tpm#Ҫo͑K7Ñ6"\^4`"6~SUs"Sۂ a58=8^q`!v]Ly9s\/Y%!8BehuC3AP'鱩 6fze@R;F rK-DǓ{߅.݄HJZ.\܆ igO.;qߢbsrVHo| Atڑ#YPF]#%g>Ԅ/[WHmb {}xTnٝ=0i+\%Y7GBβ,+E`3P*}b2HJ#io 9]N5:ecA:A0}kB[od94RفE\幐 g7υQ5 .@aklagF/4=ye0t$C:b UJ(+7Az/R$MUXRFEET>N@U38R u|o%4TIKpAT=)u f:upx%%}è)5c0(䭶kUf(9RpjGUb%>|"Z$4^R26;xcB/fh"^gn9{iA<𚯽#EG;w=-ޡ[:mV@U[ރMwIn#F0:ML_A;߭`ڋ& 3A{8=ӘMmO;l NZ 9*ɒ% 2BE4M/Un{\g;LOB+Г߳܃GoJ-Ċ(E7M<[bUf$n8֟ _+װjkkl.Li-I` rx[=iFu sfڨf ';]* ~Q 9[N9tRd40:H.)Ab&Z Ja{72+7L?7C.S,Us" w#7T6v{dFZh8]4/vi5 E@|S0RИ|a2[++#jS ܺ .jS~ 1 `;6fs d=uY.J}i˜8֩[v`Զ2@sU9DMxT!( W#%] ŖF kBb.MyNǻ[Yy*kJ7r3)S ֚pw5W|G3 YH~)$/m裲PO@N(V-+b/H)ܒo"%M%qtRgì3tbPw!-6Ñ0Gd<-V.DBB@^jFƼ_o8;ܟ $hX{Z[ϩ:T9*Y5@*{ =PfWoAk;^S0U1 |dx{ `B 20o$75S'>0WG 1}PEᨽƻP VzC#bLjw'|N6AnK(C[cL֊f$BN׫ſ$GA9t^8r dd ,*i$??4(Pmr~ZRS5'`m rRAF[63 +ġ[G m<VA{1W`\yֺnmaΒ*SLg:He&1ׇw4;8 7\i˽ 93oE_^^7p%0X+x7&!CH ʴdAsKbtSO/)ҹLFѣUkVoqޛY,Bwt?0y 7 G3ZT/Xb1]0Xw 9Z"P-xLU\2 ۨ `r iƛݓLc4Rc! Xՙ+&ӫ% HL-=O =L<@񖈶Ձ.KAEn{3:q*u*˓51Um7# { F*(."'b%N~(f՛ B7j,JR~E1o٩-h #`KY 'O/sƺ:6liD`Db^$z H ;̻H[q.ӢN[<(kKnB͢6$ʩTd9g+X',u'0 (DuzPLs``@( O^^FG nc{'fg?4h SU|>|ң!Ȏ0.G(SS7> CYa s(}TplMQ$6nt1jb ^8.ga άjo?UV.=ƻP칏74T-͔B۶] /]IӰ{><40"vD&s_ Qdyp [ڊad5 +A4Yx;, KCy|Lnj>PL┛N*+bTy`瞸AGYBE39Vje&9Ӗjf }e9 `L6Zڸ%ЂhdC'_#~Gd,EsPex$Ailޥ7.W& \%w5/z#~LQL>6Ur< 6ߩG/^c^׈oZ"7oe VoXxt[:@UG91+3`2{Y~A;'6YQSh[9n,iiģ؁'0\ ūen6䎙4AҎ렾ĞBٛ0~7x p ˴D(^7|5T>xG\El2jTHۤZl.[e"0Q(ⓣi`JRSjBEgB 'Z?H*03z<7dt>aPKHHt5C虝<{$IMJW{ֻ2zĀe+ HБ al)̇͑C)/Lp,'jsZ4냖eW}kc^7oaȣn),f+{ mNԮ M~Abη׺VOYK͋ 6+eFpy[?x(Əy3!{WjSʩbls4TJSq5=BaqiHV/3Fu- Yν1$6Al{ H/?vn:m]R A7 {3_չ(z?p=BӄL0Ι(w/.xP#ӂCgr!s;nqڱ[aX( oNIQAGbr̙ŝqPzx|RA %l#.!ub$NQ]YFiw ,r^q A>5ap>ߩ/Q@fN^; -"[;TflXXwNttt5,[;-B7VG˓ۉԚB@ј{Lx>i NNV yٝ-Y# ZvjH7P-bL/}Rf cGR*ȁKk^Iu֊=ĴT^ҳ; cs $i"π.gb..i]7+?|R |6M;jMNlP{I^0$I<9,$ǺgKO0M*hDM?3 %Dr ^ԸwF%POU_zqtB]l]<B?bCۻ 2\M_/s1?}8 E$tGq#2SYH~}:@G} =h[O_<`IWѾ E􌕰qs=ݮ#_e\I$^fxx ?Uqr9{Y4:.>sUe{4A ug<4ó 7j=Ijx^&%./swUX>#51]K8P956#¾r/lju Ғ2Š4j\(pzY}t9+ZMfH824T$9Ka - *G{Cy_5DӃQt?:,Eqn[ٓI&DN{G}'OJ ]p5Z.|@?ԼGnoW턊\n5_ zHH{i}Ir-:$='#C z!lh7nSN2&,-,JF1G>Y5xkFiHeלz =`Y;D81t'(75d7~Y1I!{CۜTFDv;gM~ݽ{ PF7R:FM-DO]$ Yt2ׇrp  [ 0 ƒx38Jo)̟*|YA&uiքc1;;`g]±\D/֍ʣ8 MO K_/_1 4~ lv|څxx09V~7YM вx [l4Vҷ`(HV%vd^'onߖS739R]>3tbE .BRwb#~;f%G`kǚ]>"j8'޻!W1H/DbYZf)5񁕚GȜv81Ȉ}J琐/wxtR!16iް8WP?@? Nc2lYHX"Ptzo'5Gfmx*-/1fa}JMѰx4<8c]0HDI2fgbo\EٞW=5$*opH.FmLk v䳼/^Mi}]Jxt-˒3_se>2mTBhk/}6>{≱~dr>OBߐLW]q2RmƓShEUWuov9F}" %&KW0pO]0WhljE 1<0ؑz'z;U[g%X;peqQٌ ?4sVK)/ӆx%zcZ/w і㝛xR01δe\Vo ?lťڷ }q}3Y}3-z+؝€nQx4{VN-!K/'j;}mkyb슻 )M}92C7F ?Ou$FlZjE爮54ƅ0IreDB7g;:O߆ Qrv@ͽ^.AtMoZ( zCK=2ŐJ%ZW㙹8l8ҕrD+w0 5ys`yTa׆ꥹm;X##p1t7V->i? ۅf4Mzچa:nF4pK$E0 JW{k\҉tX3LU4 PgGy eMhɭNOG85~N?GG0ie0ؙqiI=u ELJH|ɔ+#gTwea*9hUU%Was!Y|gW ,)xt;<{)3M.sZX"6&l>76^ tmiϼ$go#v.4fI }T +fB}C?(rgSٓ7ݳo}akƟZg V4Ʋk_'ⅸ`5/0el]4ߧDTM<]:NC'NݔpshSJRT?DQreT&: #{/hVk(RU!§YX6^ }.*n%Nk^q-;:>I H l߇`zǒfƀ Gؕ`%%)Ũ\Vء~0UI: Ӻe|jy(r~ ܑ֗tzUuh+ fӒ|Zܸf(R3Er2vԽ@P{ @rq. YA,\l̑2 a5[`FkA BOSYp>!\|"CD{*ySKpz&ۿ6 Q 2 šKC]5Md; E`l/D^~XPСu(e,mLӥE)Xz7B4"-@k7ʷ(qš70ri6?s(X*ЙM}R&ԅ[gNJS%l) 7m5@kmرv!vhR'v]ԾQw'3:~&$w@w^x9*M;ƾ߬HDg09DCxG'L%5#Uʱ!П&~R?@S;L10EV>?7Atcy2d7P4H Tal+vDj茐5: #NJSӴ'Y1r]f|5 y>@~4ⰝNщEU2 643 TuYׯZ3.N쩔f8 cؔm2`uّj3p ;+>(2 x>Zb.Il7kr!ULfj XR=X+;3Gg˂'i$f 'kmޤѭ` mk;1ntS~jUdk_Upj^LIck E>3揖.6^߄*#cJSQ wTYzKB)IaGsv{95 (:-tO`j߭h16S&{QUS#]?Ű%zs@4y&s:§]RM pnP^l*kͨbX$̤) ڵ ,h1UA)x*7ܾ-oτYc&0葉KGl)h UOcǘZ2o'a2%.+߄.aScToV@Rݧbjq(WT"?qzԒ3Cz_@/HYh U4zpՌYg[ w<&kx+(%y?x`,6|NX٭,'d6GR&Y^ӰAӯLR,ŚP̽R$L;Ҟԍo.y60ťk MjdOG)Oh|rHUKsrV*9 B8[?-/\&b'IkK;~suM+K髼n$yu@KEq >ol\q95?թF9,q(&x@O2>Yx1$tA4O|ꛠFP;mu0N]@(o>߀ AGc]|IO&ʛr10=՝W"uw3]T'[JÎ7F'tb}ohhYm ؔ9m#[Nv5z0ޔ` d*w%{ D~oSgЮxl׮[wO_N%x"FQ>0il!ҜW.\,1CلB#)Ҩ&اXCn}{*q'[h2 EAz+GE@ 4Wɽ4x"LbtUpyd7|7!G#7|l`-e ,4]o(We5ڿ} WGIS& ^O݃?t7%m}(YL̰l+h}YG Jae?NW/_YlζfX Pǟ1aW((ujaJzu2װ q"]}5ɼ(VD:98,ZؐdU'@QHP:y 4i[I; B{uGfŷOeT3M?T,oA{5|x[P"a;9D; ca-[45u!<ȱ|/NHHt`IT>+~}mM15)jؿs)uČށWe4(#>g3iz!n3bYzk9!_J-,AuS r^3cyX%-ZG'#ϻ|tyO%*$pǣ |xcL9+ -j^\E8SrqY>7 \d1(̲OT/K۾^}:**ז(Aoʯ'U5Ya `/a9̌67hNᅝ׽TYTH7)ǘ 4Q69&骡BgW~ - eҗFsPVКrrAQ<* ! fHm$ƹ vii-p n>JvaDWnW7lF6[{〱kK`>5iAϓ@@Y:&]O-H+lv ~C{<79OJG3߭s[\Ow ҭ{BTk7)/إԜ1 KѥJo"fga}Ws"%䚐pD@`VVa ʣ<#?_M{ <+Э.ʂg O[vpM$D\(cY4m3m`񷏞 ҊIF1[,hA Ye9_u>hZg"'gXbZ$eʧg{'W*~6OӁ:"5ZD #]QE qmb1 Y-"Untт8džE&a8G䂆BBK-UZ(rM6C{`Vpj䯔BZ B+>A(}~q9`߫}LL?\M3dZѝ{-Z|5=F `\m8ޱ6F^,(ֽl1>mabѶ}j;ߪ\:'BSqXeC$I GZ0cjajēELd|G,'7^b/2r;K:8HwЎ+@@fRomjiB[UgKc̚z*A<>:+S6!ߘy'RjQHWne+N.;:TOʜ86;y*$Hێzˋa2~)Eb=hp=ks쬡 /K65RgלoP/yd+A_== sq/ PF5l9` ԏAF֣g8+mBt,*uEس OMS~ 6 =W=ͪH^}Gyyyx}Mhu/_?Ib^.ȳ2VpPϑN <g/}4~'YΰND45YLM|g [̬Y1b-ܓ'~r"pAOum> "jga0% h3Pں;gRmoZɧeGǰ6w( %5JW`JIѹ 䓟P~Dyb%(l'&5T~@{E6Nc>4)A6rjT 5`aB{-k+Ϫl#4q{Yu@a87L=J4PóIMvSN{ȴMk3ha)LY%d]kedoSìWCx>m0_U f\FC4%cZc&NxY\T|<<mHn`{yo ub2SWjl/c#$aVq[P8x1"y挡i_BBbޓtG}.91d?N Ou!5*b SeE($yLT0K !-0ܥ=ΣvXm7 .DjtO2N$'``I=9~II1ORb䀘 ɀD]4a|ꚽDHzY6]/ S~tjw G`ntEQ}y0>FH9+A)wN<7=ļ(h j 4W SD0X,j렘f8{=L5Y,nW$xFvaLkvPҼ/2[9"C+p/G_$a~\Q<@|`D:32I /v"_rXUblm*%44u49E~va~[*vL@Җ)z+gBikG7`*ћ.DuM-.SkeX*b#6. )Og@0xKlVB{e8ִF2okS[zH'ɐ, yiC5tv*VWDN}bڴLk_xG. |.\x16?((_.iwΠr۬4U[!kIOWh.mOZI=lû'N^jJO|h;#tt(AInh}׵-\**Id 0-]ww=rN;yJP?[k7%H^&mnEXpmlXrqx~ȐýL ztunf$`VdImv= (C +%.Pa?Ga&GIv\&k#lsŽX?%pK|P6Did2mHb %b6/Z{?7l&E堏a#[)u m3Pd^@ݳ'vcD-q0ШR *J5kä}./P^f2ߊ^2 ::\2NTH1"0l(^)Ξax=sXCs!mr1+hB"ʑhȡ]8YjAMl7k|7IPC}C}k S\Y#c?(dznH+o#N`"}]5ť"ût)STEwC yTd"ޟ㞤mObdžr`2=V3:ag(˰n6., YqBAs sβ~bCq \NETtcNNgt0e2͎9zU~rfA ^]mmw~Ș-M$84򙖰;?(;_q%:% e!D2l%K]F'Xkq3"MrkOR<]!]^h:>h zY{i聂+oo*\)q`6H?x."SQFTzqh,b"}3^kN):j3N2Y( [_HAͰ R$+9WgR6x_a1FW7?Hx. AڰESS*g,N%^0eԂ(Pc4H[Jy Q8Ty zhxPoD p'@8̓# VOz +g c5D frcg =A,j)GLb857(>Xm n5a,rBr͔7*i1|Pr  6>35k2]зwC,a.\=Ȓ$l]rny~l56Í> z;*5-~96~t+ W6kWlFstod' [R߫QsǍgtFC̮iS v* ~#`"OHm Gfl8GCz3d}0ˬc ViJܪ J`g]3`dMSvo!,F?]^Nbi Q 3T/7yg GiRct&.s&WmhU{'I's10GqQ6~G?ͣ!+L2}'yBqNMG?a*cv`I;V7E? '!(OaEnj#AO,l]os'r{/o]ޣUkGm%~`fy˭ZۜG}xe2Pi@%iωW|e?շ~q钘Mvk\hU˜.QWpi|t'`XB0CE~6e>Vbg}Qǃr0Ω5%P8Eԇ]v2/`*eI "4EīԡBFb?{%gr[@z9M!u .]pGhՠ F\K,_|n^XvRQd_B5<lJՄ+%OъG{1 }1Tr+N"=V:c|n Pߡ!>N>{HeƷ8+xnCo +342$cm(Bgػ_o=XO8M df/^4,WW-Jr|H񞆂rRpfaQN^^32Y "*K@(>۩0WG>_77 ai\q(w}q `٭O jhlU"#=MR? Ku-g*AkUj!kT Vup ґ-Yl|0P /C^{ZU8P(LXЍχ>/%S!UKnjlY.V#SgTNAIl 1]J췏5tQ1m&w3N`zܽ*66Nas9p39lC_c! _"d SkrA,s8ZQrC *}7_Jak+Oz;[D5.P mL%x!Bun[a>$<ާ) ((өho@]NkDBU[]Q].۰i{r 6%ar!vc>$,{l|d: by|}Qi`e¶f]_*gKf0B#̩J.ŷBɯ`'hژ=I:(O0_lWD!3 i:|!~r0 ҄ -#/IOr/pNX0{ fj<:XOWr8@|ljDR9ђ#W.Nb5)Ds쨼|4Q6pD\ork~fvM&Ȥao&jO)Zs;@gEl5YU`x .mw$LC}pd Po5nɇI3o$ܳBGJ x1+K0!q8L]$nlLwWr#9 {& o3 u8%x9N|$8bLeS,qjymdA6aA{&O?+$j'jJG/0cd;ݡ^?l!goMg!=>O[RԼ>ޞp:5M;ZBlR{KCpEW0erʥ. Ascݜ`8uJ;]N/ep_ i:!/-e >sA!sS(2Z,[!, S  gmb34! .߬5oj|hҮ%*2vJ (mUfZN4D*jmY ÷lӐr: Q8XKCq]ˍzT= '#c, 8Ŋ8Ȅ2 on=asW rlXM+oXn5N8ٮ-RvgD`}j $Ր@$KZ:gxz" QjNۗ?e_Ʊe{m8q)]PTځٻ h}of+{}vǥC2.gv3s| aCz$CwͿWHom\t kE"bW8DKǿ6c'3k-4soׁ6LuίiI=Ldt/|TM6bG%cK:nӾ-KZFT&giώɮ?aU sm\Nm̓3%(x Pcgr*Ȗ(ST8\r+_\{G+j=.dr X*QC+ oZs`UbF9W;OdLڑWUvʟ$[,COfyhW aHR|-Ïb'QDk聳UHyeos[aYy _^ئEqӣFy dpd5)HQ7R8@<aߔTj=Nۡ}tORcA M=Ëvg_4p5 PhX2 3[i_U43_XD:\f}A H K.%;M΢20ԭ_u`T.{M=*332}#eQ764ơݒn/@U|$e-5'[7q ө?ynS!q}tOxPX{A0ǂ+w'Llw1p)Y~Xszg8蛔o=QeX=J YŚaVeC&uojaRTLi͗-ѕ3YN.1(xg93 "|1vu@R[xf; ҽNotx\fIC&9yOj6+eQ@KY,8`oErJ|%!*kvCGEQݗ<Ha@Fؐ5_=W:jrmn'QOGjFYJuS %44p.9zT0]WB95>ͅ&}{pB s%ZoGbwҕҫm _*m)LG3 cGӾ05˄`'zhC+jbN]m #U&S |"@7G@Cm=]0j⩜^/^V M /}~hnǣ}"f6Es//S5蘙7Y@Ҫ-_JCO fTRC2.IJ?Nc'o.E҅Ҽ0MZ!$^3Ɠo]m}!k:KU#/󼰌kwFϑrjWuF>Zmo>@#Hr*-j@D";BwWFgtX1 q~q8?%e{@umuRa@}LP,;R[N<ѪkU~(oh\ ?q@:ܘ8?sy1&D;xK7p#'nNDӘ*r*"H^SL*xT٫en͆TYAr=>! & 4AN{wCn#n·ϠH.RP봋N忖%0DE*fȤ0#A8bnmUP@"MjĈ+Mk|jƞ^bO"='rN Au"]rܵɡ|GyO=ا5b,ם ۚW `&1MbLRvmxL4f+f!0Z|^;UuYdLoj;;`^ ^r"NNwYt u A+ N@woV{t27Ӳ#)?/uJ&+GSx] 兺_g &i^S`6%O7[!|xrq0-iXIb|ejy;ۋ.8ߗ›lK[^埍Fd bfw2=p_z]j^fgn*XQz(_8N?]Z P7ဍEHv@԰QYf236As5U:XѲ*,ّVMB|恅[^ʨe,~,Ef- ܶq!>\q`>6@5<0|E~`liso é;v}Ч+kuچ.$pY2yF^/өGwGDav)8c$Ɂ iM/ _]9[$N+Ţ>j׹og9'Omhmj?ƒ@Ufrd#9WK\zR{bvs=1ǧa~`hXA^.xr8rUgZ(@4..5G \ 5cߟaN m<+3{'~Hf79gjPN7Lf㺻m *sj?g& =z@ ><͌V WGR Ǥ1Hl-C6Pj}مԟnWɭ#]'+2 U}qrxh!w,~VưQÃoΖOXY>"D1^LccSj?kp""֏ٲú*V70AV%k$j5 k6T޳9] CjqhrgLm;ZBOo ooŠleAP0DԳc\ [3c1FtsE.JZ]@k뷫]XUN.4B(rL>dgQ"N()CÞL6oN_o//̹Ng`33N#bЕ߽9ڛ n8Y gp"#;EFEa.OQ80 bXGmݳ]I瀐zP_XAGĦƹ:aCv4e:PE_gm^sJ~Z1ڋ=JpQzɄz3פl0A;d>UɺXPٻ6Ȣ9X^N@Ԝl+^({ -&Ĉ Lő;~\(9.6Mo.'3`+6Џ|VL/FT6c3UPjeTֆqlƢ7򹮧:f2 ѯL6wtv̤NN^4Ѯ{F󩴻ȆhgsX=qtPP7t7ӟ.JXu^Ed.bė$gmT盏Rvwvaz318V͔V"}1D#z͌p6=E':|&/? tVL*ۯDxle8eRMG}XLd`ye!=#8E)f%eY!J4| {Caymou!||&, bp$j37(UԂ,#z'x}p7}wNh^Ќ|d {Z^ *|f\ve~KnΖ;3CP͌) yw59dNb\Bǔ̲̦q݁)O)_ 0$B:7;:L0ƗJ)Hl!ҋg n=clħ\R?_4`%̹5U谪@D!IC̚|{4ʝszW#A3ڦvv0=/{EIf+_FG?DcnA…~_eCdڲs6TƱAG=ZmxSXUIN u*zrxTҏMNC3#1S ˆh/]RMj>W=>*7Mۄzz k9y1ϔ+‹D5-EXaeoU6 I_f?ì2 421oϣ0NM& AӄV#ZsoyxZǶ`Jb(qV]e\E\1m?-'x;jסŰ9ўMǢm`6 rWei*g 4')FzM7 25v釩;u k5FLxS5ZkkY'$zU0B О69/;^cN&R{ɳN$(ekԌpzu>G}3%% u!`dǮ^8K?/GR!CNVCy,ꦅ9rh 9K͍5.c}BgvGqMgR* ٨RH,ҳ1ubMN1t''B>c3Sk-[{C`'H펼N)h1Io|,o7z3G^p2A,yW^7\BRT >sëDlf3^dr1!ΧZ MI4ee.?6*USՍ/onp%7uTz ֎`0EeŐ,l]bA+rCچRnCf ;IX;l&𩥋h϶:b8p!쁧Cs?!D>&]1FQ4!ۍE9~?xb?4ff~eS8Ҝ"W6"FrmQ;Td&9Ua?DEM O-{9BZ4ע߫cFZ 3$%yn,LMV-X/eB5~`b9zPJ_̈LI7\_ĵQ P뮕׊ o7xеT\g.Ls33i-%*/U~~)fId'غݗzj#$I8L}iVwߛELA-['Ws $**9=&W9m9VN: ѫG[8UL;>|"eΜ3%)HE!'K|-7cdDa]c-]8\P&6D!sL*Uj?Fܖ$$OTI3.R;sywv@ Jb=8H\|BVuo=7!8BFJ]"zP8׉ U `+Z|a{,LŊ_MxWQ,sI@Log…LU[l*+E \U@d51n#C&@Brs~w` Ѡ8KIf?:%3FCj)SDI];e mIۙ@S\/N^j)dA[ _V51Se,go| ץu[nm,f];v18Qݼi(Z|.y1bY BrtȇǬ`X }e42p"t6LOK GJ6kW̒j?1Amh%JY3~7p``,UfW&h-vhI-lDy~fK| l݊MjOT(bdKkKϸW1Hh,dӨN% ,9S",ʴ/Yr[aHOP`&2H&X%YWnнˣi Gw.7vD^}պȥR+er_u,OGR9w17zbWEVw oE;doOZJٍ~:Sn=LYkI%(qm0Aq>a=q OzZBPu*ݦK3*4[Oٔo\ QG:5FE D=}kk"F KI3kUR/fS6j2=+n-؂43aaIl0%ak"> 1@&P30[↖>$_7Ut>y?&' M;Կ}fĖM!W5`H,J2PM4g*bF$F5!` *[ O|!1wڧ[:-)%RQΊ7=&A,IS~W@uO5C 3 ^z]¥-|Zf{!۱:2EX4zdjQg[ 9Ccw,bcuJܟJ\`S P*kd+ 4_MLa<::7ONrzn~s+'붣F}Oܽ*UmhΨaf;ݓ;fHNK'dpK@4ЧJcR'ձ穧k֊FOQSW xs>h{UrB$V'#|3AlE=vtۥ>cV$NsAL׹fFǦ$EQ~%J+ A[{Z=~{Lj$mӳi 1MuGF™Ľ> zʒ1mEk D_[|9lJ#>%zL5͛P>}4օIҥ ?xWeS{rAs@3 Wm}baalYȑ7qk0pJ"GW]^VR"zn\-r`uSR޲Q)эkg8%'ݨ*eұ |5E7%y0an?hE 0hKFX#x ExL @FGIWfl"oT)x!n.gHKb K‘[HY>lT/n: Dv Aw|9j- |s`#CvHVs@%:hFĊyirĮ~oK6[T۾4s,6_v{@ 7M9&e?w{9AmO:$鉊xYh+jc:^VbN1Kxv{(sfnGo$(|JQvpYWoV;yBԽ!0 P/orqAV||=+@]m++'e^OѴ9֐4{A $tĈC̩ynr+ɷQ5GZDU75;FQ{:φ \tT3Ni;5[̨jJeZxԂ~ .nV+1KfDgkEet9yٸ7di]48QD ɱ'5!QCx4$u85_IBh.CRpT3Pqwl7q`}NrO*s:ڇHDB#D};`(NbAw*㼼\ٝR/IaHt1h:[f8\SA1["*l؁ F_b :|*d <)?ԿkߜO4w{iNNJ{G==3DN/Y TaFp!&xWovdÝ͝5$B.l/&e`3<'Dm0lXf#,Mi)w\tGPPxdHuhl ̈́_lćkQŽ[ @j'# [1֠h?V< ?$- AfimvWPnZ eA]Kdֵ :+~(MFbnwqz2{6g7*.(Yf%)2]a:a)/4: Ѿ-럱 G>_Tb/vz4ΣᷬkmxPO}W^*U٬ )?G0'p-f2wCҞq-q0cZ}Ykl`:&L雬rQ%U%2zp++ [FN+\f'@!N|iԛwΪK 6i9&/= ;\=8ٵĩ·ӆWRFTkJ~tz@j'27נJά_BK>/1 slY{V#VEw*o}^Sچ]LÞOvKCՙ<.%bZgO:B+":ڷMG /)wZr'5B;Mw8`]1PP> "uU\v=˵A yQ>rfRD_(\5uO4;~6^dJZ2QL'.Q`kׁx^D5tPɫ~P:eíڟɳ~@ wNO{K Z25k;~t'A؎,YUQJoI r^0W9:}q7X4Ƌ<|psi3{ NuiH8hp׉>.Fm-{ҏ`W'~?KIvon8a ^b3e{뒦$L(k:Z13cj3i'dK冚zI@wؒaaՐIC֚q芄5 Aכ5(f-?Cs4 b ٩I&s6+-pB4~/nX˗'vCU'"г@($XNǩ_N[SBpe,5^;.99"ql6`q'|otyL'" v?%K/}Q9_%mn $Mn7F믟49aiʽhA|ͶR<%efbW&WJݘ<{We-|ќ8f)qqUv*8kNoffXFdLfC!8br ;%.]ۃff@PAv6ʖ8.>}WfGr1gČ8tC1]f4<є^l |1GA\2' Ip݊$ -/+N(BpߎrutGz2l9OxxRҐ1IV> =$<-$M aوxg[DV*kHZtRPiv)[;*AbziC^:&M{~ z5&ע<2~9& Y鞮Tyw*Ȩ"b,4Ȍ\&~ }Wp{׋ύ3Y&xx<_,¿m.[v>+Iy.4LU[.0|åFB6%oW ŧFw')g~ \^c J?*n^6Ϭݣ8U솖}>`4ݭ\ ;ۈ:?@Lm OibOFFZL%-RX\܇F+ߚzoGXe PA,C_F(&OK Xci"s]`NɃGnHKJٓǠ 6#Kɶ[  ;jl0$52ET:L6vAw( |TM,0u+H&yI (MBρ}tBذN C@lA4m aZFRU[UeP{;r! [{k n@>9cږ1*}o8%ٱ0#;IoUpoƓ6MAԻH gdƚ?ݥ@֜l^uyƄ}!GہӀ}ъۧ}M9HARUd}Ա]o ]n4 @SPJeMAvҟ ;bA gB9?jsx8BCdB! qˁJr9ڞ `vȆދ _vUMY\}[Q"I"/`&+Vs]봭qiS}O32qdz%M<رQAf##wt8y!Ħr[]m"`sqb"y(-޵W";^։!w }J1L01*iqru'sDS™:)WTwI0صpmOؙO3v;nU$4JP&E.Mx֒c!U) w@91Q%J`W w.HRE2tX=81Pw%,ZW|{奓P}ԯ !떐ffbL<#%6u>MCA_LkFcZU+tU*bHCwAe@ LƲ NcebrKMwd|+33*i(3l_bG?YS:Fq]C[r)MgC3FyA_eV9BDNRpAmοu Bx1 ,&fQɕ.d뚟vx@`.}GXmY(;me.! '-<'Jn~Z0z~M? qpaH( 'PL WxvߢpdAUG2jKiQ˜Ş:T>}8]|1i椬i r3e 0 IJJjK̀> 2fݩ&Bmy6YZ\Z(h)a6N\u럅 g{1SA!CzbjNIUR=M]ؾ"$d*!\mʉ2;Sc֠t9:z). JA>nf׃N 2W=Yd(Rׁ1Lfv3ޝ{ VC\鼲d`è)?n4e6Vò%HܗJZ"i=CĬ U]a/ &^5L E?j|zۣ"8<42nw6OD49]ƞXw@yk&h9,s.ǔ"7g٬Ic}:'G;wϟ `!1E;KS!կݦ&L5HcP݈A!ӻ'5("Y,9. b%V$Oh{W\,<$v=y;/`r &'']|(T*^$qHvlv8N8޻]ɂSk]!4þg蹊i"Gw]AP qO44,vzvۑ,Pb{i p9ԺS4#{2Yj[jd ]s|n f:i'b#d"TDi*b"Rd!ٞ1Ҙ9˰8282⢑.}N]J<,/f|R3Jr Nz+8!'d^Lrn^fg+8h]ǖ8,fQUAYG&6Cť?VpK u*t@Pt;VQTבSK}%D;=ndPLK(Q/bG(3dXɈ5@[g<B Y:'8)Kftb\]8o;(wGM!p %R.m 0(@p5u7:Yll22C\$mtR.ġ~<,/O|mt>a\v䑧$plX^M`v|}2#f>! h=gZTиE%N9۳U@𬏷hw<$DIO"-L|Ĉp\NK6_>a@aA~¥83Ch5BŻ>'V%|$M!sbݤ(nۄ95ޡv;8>Msq0tXV)mVSƍ#:892m]Չ0D}5i4A5FZƘ1ǀ$,V Jaxd /;WwKf%=Ƚ7=q##_5r7͎0]Lj MK%`7I$6\]AGƔCH!(B5T|\]T(?wUqhO ' 9-\B Zi8/imP.qW$u6$U0&2ޕ  ;ǒrr} 90fYcX )Luf^h/G2xLͣ&kZ.m ynj_" aYœxieCyzZd |Uͧ>:aIߟa$ˀGDxG]'?]`W0@=4sp.N+rvPpS&){੻ꋉ kLޛ]&ܫ%yN⋅\E V្o|̋ =cD2 "Lyp$Rg$dRfg]ܓ$Dz :檷8 ]rTkw~IMZ7G6 Yifm:VGǎd70[ӎ@ Ԋ;:˃`l޽*'P^L6{ɐ:JD~鑒VxqdkzL-7WHwk^CtMd.8~SP*DY# oX!5 &zev"T'E|f /eP/3)l/%Qóh1e=A1`HCIrE IhI\K PYg@G[-W ~EVgp}+b \~F}ہb=^Mk+ef=48 ޹S=喦6r:lXk^ &5Δ~fU*HyDמqerPhj$i*[`gSԅ"ASi~]>悦bReWweP0 CPEcuNe3΅QS%LYW7r+@Ւ;(=6yy2+10Io/Kig޶\UR^Aڣ_`H#s/a {rALDUBt0xp)xݎ ]шk"_l]P%LܾjUmHB%ep΄ K#Do*N5'%].T݄[2BʙU]/?p[ ~?EDzIuU,Yrt7t=h*ኣ2u'hnMvvRAcի`f+~y0cNqx! /rAA2{dnwm\C$ۏQT\|gA:Cc Ք2EZ(-6'R9jZ(&!Af+A{3̅z?[pz^BI,;0|gQ`h`/]g!O[}6cCz+HBզ[_0QdTg0DF0e$(*F (ެ KD8A)fZ=~r\R) pj=F?}L>;6eFN1LGG3hgp %*t]V0Fu.f\0p5'θ.1lvAT--J vH@։5L?nv AMH r*'a`-BoǺ ?\Ukɗ)FnnM,#/.pl ~{bg<lxRNmn 7?P8cU+z#œ;x|t`d{m-}`vP䛡J7yUP<-Tʵ::6.'G:Rd'9ͥ;`+]%X *HZ`Bg\Ӱ>: S/p˅cWֱn ROzdkWXۄ@‚z} e]dž:B hT|<9Jc3uR(҅ 0:k)3(?/v6=]V!r'o۵_fOD0&dO O-slfڛ忬6Ų6Rcf`joIi?_ĀRT6b (L %"Lz b0t[ ulAi;=J'/Zŝ&Qݎ%!~V(D„N(XN?Yi>DťKaMR;E}&α6~".u.˶l+l+Z U?;{um:8HU^Gdb5w=9LS2VnEsHTEL>^wi8PVM+mh}Ux4ʼn#&'L_;ʜ0pr- ك?NZ]51G$)iccPpdkNKgAU Y'hlo#c䶔po?=cU5 5]y\PT︒AGMP)㖽PH Ր?hdnW{ތ 0Ʌ`ǽv>K"]VE]\`ũ(j獟;z?e.enpmF3_{?-`C;Om<Zl)<+2l_(;۬A!}Kg}GX4LnS2/r\20ѧem͗HjXDi>.o:te)C 6Y%+ .ʼs68pVqCﶓ#' +Meb̗F%7q8LϧEV;s^J<|.EP8nR;l2˗bLr!] rYB}FؑoWTqX4ӑ]׸X̑ru~QʳH!Td^z-,ZMbb҅qy!=R!V4N꘬Q>eG8\sOӡXޤ7]Ғ\ 8c6f36#HEӅbK=053sU$~Q<|1x?z^,-LkJ/uV?XL#q2'62=*j:÷|HdiϠ(k3J ?cSO͟P9 suTp{0(柷ɺ߻4PX\h{^i]lw/@Dok%xiBՂ+YeKcEW/&+SN`Ś[XLRC$LjλZIa1&'((޶[\mii)c!;~o.qO;An;L#|\7ٹ|^Z]K+i nB~ J+%O/}^]B UTZ ScZahM}S'ee-;Fޠ:sz:XuԤ`%7b#M\կX˂a3\3gF܎Sr^@UTnӪs=)8E˥"8/ K ޟ4Uzyt4TEuoJN/ 8RDI9cGK|;a-dq{?.eoiI^K[ښ<5fm Qwc:cJ5V`+w7f(_r (GezS2!KJ j&s󴑑e\{=*״'0ܬR\!PL]5Ca_wQmuMd]2:=}zcunVQ.zGuz~ 2zՈ;Eˈk#- VÈ2"]e_N;Z <8oᓰ1<0qXot䘐KIH6i%ÿ+R>~nȐ ]:rCnN "6cgk:&m*; n"1X9kgNn0SomOBdrM рؑļPEſ?1>zM'ɮ0X#s,b>㢯c ]xQ0YQC"䛦oZ^ 0`>D7КG .JI0cF^0MZWJ3mV<>Œe2=F2\X0PXKHzjxff x-]Jj5nM3 _^'uUXpĪ}TPڽ*5T_'-̯Î"rp#j3=`/B{H5e0rʍ9PAT])ȲQx(߸ j6*2ОDxC!muYsyǎO7/ DutFe&0P${_g* ׷r`5 f` #LySx{JͪٯTc<>B~r;iypE0زz KD@W(6lv(^m5g"Ҡv٠t08ޡ-(0 xϔF]qn5'mԤp_ByHd:pGsЬHtiܾ<YmY iN;Gʜ 2u۫Oy\ ]\ƛ4h*~$&ڍ#SDtyІ'1@V02R=+ I|䩔я1B)$M %o. v<8=9d _@Uyfb6#`ӯ24nB+az ڗ[ͺjy-Ӯ0Ĺ!盧/P^SY*}=o=MTԸ |xY>p@$"묹|@6)IռZ竑уh*kQI7{;+z,qDDY.*=}5ƆRT ¡ڰsĹ'9*Y0BmM 3nެW@5C|o4rf)1|$ >P>tU6Wߺs`ԸN5$=Ftd@Y<7\lR&U.Z Z9yF7^kFen zQ]#'elS|PRLH|쬨(ad;/ "5,[gc7U4z"gܾʴgyCcZSbuWG}y]W>Sdf4uΆUsQ1`r>6hpsQopf߱G?(HCs`jV+趫rp}6SQu+٤_.ft[]Ӱi2rmYmԷ +Nd2L?PkAWI>z<osǎ껬 M'.Q%㯗$E 2?y9Y՗FvMՒ39aҖk~cN +笵0pƯZ` y/1ULJH$i°F)Z8[w@S=˙1Ҫ~ jCVsg)[5"ݘ85& nTW=JabMR"z[ӗ?:%[xSI4 IkVmt8'%6GwGSz^JX߭7C 4'z-zHj85F EنUU7C?ɸ_ұl56=KJҳz(:IS;P)DS0-X+{[3OVm)0Vct\ |J®AaxNuls[$𒑅 -M/'چdu![5;}flkj,qgPK xMh ʓ.gIH,%Aq+la_NwDTX5xCi9(J Nh9 =! I\s݂XS:!nuȷM!)荎M<Ȑ6p@ƒ?ZjI^|r SAQO(NBN-'|w_6s7"UpX6lܴ,oKaHO#vPO=jCx_!k|ˎ-9spoT8o_,Bŏ_uslm g[Ӿ?Z(A%L/w\Ux z&,k5U8xK@6˛n`C@K)?[yQyG 57ғ;8O^]\0pfd)0!ab>(jM!I.22mæb5}'mjc/X}ch[@]؜džC^NC2F-9V"9U\Z%X5+VaF\FR«)/Z'q_$ HNa{VM [#g+E7 ĥ+~؜ *zJIQ˥OYbPLJ$H+3tv:bL5[ ^I2{gIMU 6,k }o/άL'P } є^r66?[Dw7%MPO}X|7}qգ< >zgWN F-)t+,;{&;w,ciU`u,/w ~^7ߤz8S1a2pCp]o`ێ4H:3lEuwI.=btMD)b<[!s`IeS' |!*1YrD-zvEI+< x֗ WF^8AP,!qvtg J:VXOgjFGxUEsz']}j4ܤ4v^UJZv1U/mB!-? &C9Iu(':ItJr\d[˿59!dF ,qYxJяv Iʣ47Qo,qǐZ#=Ђq^q}N*/u8/$' F>N;`v&@4g 0Mv7{8l1um΋vuFSZ0CF6Yo|qKw*Huw`T"T= GK<ּU#^G%a+eiXUh !UNzV~)"8fCl#ÏRC"zoaU+s!wC+(_TaS"*k71=LVEK |v2S ċ!8"moޜ,ǂix`:Ph)1G;5+W{rbvQmNkfuHie>ґ$,PAcϢ{gQJ p4I\c%قtKSGi80H(w!M,7[VkvdKBr9X@=ݝᡅJ^PBP"K‡mIAw=u XRz7\3#5)bHoet,-ijy"3 "41ɚK ?Vqz1WzKkogC L?--!Cy픇K76z%pe;艽㬽Ry^h2 &':%m|2G1{=ע/]nx9Wd|ʮ?ӋZ{!*M>J~ |L fv|2+QPq֊Zo?hU ]n[*6#Lq)^'f%w.%H uAOM4HD'bWKM8,QXogcTOyb gVzE1l`߿C}k>PNZ\C>R}ՉIjioEnwT#Yޠvul^ Ek¤4'tI,} (TU 1FK=*R"=Vu|]^H" 1ź.cGye16\57 @&UFcx"ս?온8D<:o綑_[銉\#cALA(%|2!ci/GenլZDT>^C==aڗIT?=abY1Ļ17'O*m73!-R_0{<_90ދ:@ct؜a]Y$M93:j t6psXrUd)shy\Č2q0n.a-׫FsPK?R wBbaFV:HMqw۱nBkў;+Hﰻā`4+мOOW0u|kCHrpql#d[ 92*"}79y6q(= Jh!?P8e6E\Mnhq #ӌh GZUϘi9$  ZXl%-ݧZ5# v.̸1#ڠNbD2-"ÔUi԰{4-kdgk]qw_mFy]>n}f^Յjґ`J~2Z4HϳN\HN~JKgZw4FA) {s|&7.@l~ U׭ Ns`DUf~ Q[HhBvu@^AC_Z,vv4@T'eޜ6hw=QO-=8Sad\/(D觛X*W@ xؔͱ[Z?$>Î8CPi5_;iBLcz!sMhjkqV0c/i_z‘d{h)RRx@PUy ;(G 5+3QuԄ5:I~o=D=''}N1#7o1pq9;jPb}%-5OlZ~jr l=bTЮζ"!Xdž. Sj0z8dL+OT!c!搦mXO&ffP]0[|{D,e~ϋ_ / "WS2ٙ 0r ywU8*4v^߄. ?.82n`9]SbGJʒ}n&:+*I_?@4CbC)-j…y‚T6'݅Pj@k:*+i-?VԺIq%}D~N t&ҧalq¯m⾚Zj] [}My--hn 8&go{ rDr'(@ o#Jwؙ L]<[i< S 7\څ4e/m7j3f'Qᮭhs2T3ɶaG )v3"QEeyms?/VG!z$J_'/)jSita`޾y'eh Cה%艸WW+W`a$@WFA ci eI2_L&Mڙ05UVɦw-S8F.bϻ~vohi2h5NrCvoRR.`7hFèlI,W=z: g "ƘV`o&(.]a[/dhXF{jQA'( 8 ]/Ek98k#E9\ +InfDx++<-ٍ`B52fr:Mk&ϻ2p[8>˙S#X輐MȪ6%x_>ˬ]|YYZ:Ghy$<(ePDͰ2xtΝ[ -+\TɄkKKUdcM,U8% }XwlFL2T"x߰GdduxRA 0)>м*)$yAI)PPa];awMGQ ^رA}9QNnH:lu> z͜XM @σHs 5C3 -UJN=>lSn ]P.\sFѹ}QYG3;| :Ԥ=P҄2S]Ira;V,S}j-M)8G3i IG #!/.A})F bWHa{GI@}+Q S SD`l-Ql> 5!$ ^y!L7̝L0!g;ctOq/_[D7)<*FMuب1UJECsʫxWʦV&̫+v^t4>4}hϽUňa C:)dJ:~K Cp孊Vg٘I0(38AF.' c"=Bv`)<k‚]vCc8' 81[>Ru״0tj>L k," 8H> +$a+L?AY<v I&HQ4 $=YOaComg†)51;tզ"N͕>+8wާp:n~B5 j,4ĘҮp׀Q= *"^!Z͘ ר? |g1T,K$$A(1&s/0Ĝj\YOW3!q~&=nY<9 {MoH;aӔ|DPsB[1U+w-Qw3D5*8ofBU5V5T.%TyhOE޺"c"xf }(!uM[B2NmjRHyu#Fw]8]jn75_RUx>K^Wx%!I9t\M*嚒$0o`)&|C0$CG@ _8nM)=/<.kKUzM6VݞXCD6=Wե.-`{5Ysi#XZypvDdC^vLr`!0.| 9v!|wdI1g2g;+"3_|$ʹw{7|*'gd}85Cε "(3Ahϵ0ёRJ>iJSoZR8^A>)Ήk;:B%\Ӭf 7cm"qpuȢaΗQ Q88u]sQgg$ gwəJXIuwB4f*5VKf>#? +&Wl-X]Zq/{ 2dΓUoR!Ÿ,C.XzhdUuq6=e^~`t+:<`@:8̈H3ƀ*̛H 7SjjfGL}{v: +VEhomL"ehNjP܍í++ I8'^OE6&*.T[gHCj6! t kU֦xOSLt) ؜Y~z}6/ Dc58q̕qnܥCeaD19m@] rZrfWO} ^W/#/:0Ɇg=K*GoY- 2f὞"H[!*|B\3';BbT1!UǗw׾u$^θ\/ r7cJ4*M  c6됊$ʗ~c-Z|R2ՠn:J1E1.DfW%$[wboHsvq2/e~QF ʁ}0&L\ҋOSlGXF\FzBQmS!l7y8F1 U쭿os[[8, ?v3*9GgjZz:5]7 gknŕT ՗%귿ygFɻ .z<16KǰǰS d)wϝb0.W8g^2x ~'u:dZ&HиvhLsV6+V1Zfzi->HQNAL2і nZpkr~8omEˆ p9n#g&:?= y'4-n9 _vs qbZbQIaX^{7̗w- u8PbEɓM,}Dkm e0*9>ڴ3E'ø8 k3 Ɛ&;1jKOwKBGDüt6SEױJ>%Rg` _MC56R(آ BSSC~=?㨛{Wa1-:!񡸁İl,V.8H=̚F2r)\LRʤxn筲P2苀3mz _̺P36԰Z%>ִn;"_Hƺq ibo*>vU9xuPKj2ezh#(#ݠr4̓_d~ؔMnrPk˼m$^"[)jG#~-\A"QEҙ}d0\I)<\!*gLZO'[GYA6/BU}yCsLh'@YBUxtc)['UV߬ľSCZ+=Y~yaɍc&.zsN[u,vuX܉81.4'NؾT㷼 h}L/7AIُR_mRp>C}> 2?:Q")t:G2?ԯ0b2Lr1l(E$'Aw6z$d1x{Q6xJ?DB؅*HT;EƹZM^ -e.Cq-i<7?;oTFbsN$33:+KigϰyzpysC9ճw\p. E-KsM'AV>,q }Eܠۂz5c}Z7}( o-hc,p^"TQYf81sq(Ew .j]2ߥ]b҈1Bm? MJ't_F[j o,ź DEZE" n8bxef(!F6|*kžs/FUսƭm`$Lyvz$Ħ'u`eVPV}N,C0{Jb򁿀G? 'lj KeS?NC?Ζ#jn[ەǰt_R*u*KƖX51u 5b{cQ H;h(q\%\{qO _nI=Դ[j#()z}*CάH{*GmQ@惽=Z7g|1ϚHE#M!r!Qg{ȮC#t-5YJQA7pP6~ٮ]+"&)F_ 0ʨssub?cp&PyX=Ue gS̷j?(O?8uo\7ģ~ ?Z0biKMӵk;Z#B>t(U hd +bBWJ ?8 ljhLS4][JKO!r{1aF>+#+ P֭a$+Y^Ld}rS6ĀKؚ .X2搧Ү⳾߿bkDs\dϣT*s(.Lx#]L`OU#^Gyr1OCѐ.ѻ]q桍ucBA=64/p5_{p^n:>{7p7VL8joWȍ. o}5mO:9{lf`-s}wlಢ!$BNx\+ql8Ǧ55. t#6ʠ3$~GutF:I d6ZYxχZū}HL<%rUC ,֐>O5*/?[;ě |K"_&F s6{RM$o&d=jq=֤3]$7 5P>DS8KQORЭۀ4&q"Z{˶&9_tnO=a &XyA+M2M1'_֭9]RwáȾp8DFdʛ)5nzˠEǞdF& Hů VB\}>h36P/8 7aJ-z]]J%0M\]ޣ* ggx)b9Y$s@iT\6'EYpyXS㥱IP"/fOc1dBԪ8䂽gTtj'(gu2Ehݸ1$@aRI&'N٧` ϖq{z%'`Cٞ O2vC[bd߄JΕ!nVf-!`f}Xڽ!}/Ē0J>*VFx<h˚JaVV1;Do J-!gA;/ehJmftϔ/dЫ48i{ uo֎ fh+qcpB{*$}X 5]i:? QD+Þq"Xse5gTRy!rDA5ʍp3 X 3=X3ڡ颂fT XeE|~E9ؔ=Z@Џ/r{ʆtUM7cӚjap?SzG].x޵^gly [cv‰CKv"P۸yPa'dח eA.AGR"#(B5=(QAuL` pP򇴲+н&V`O06!'pgk|C"Z vک-}P%&N)] %i3(g`s],=Ԇ~_ eci(xPyj~'l.|Qqu>٩t=@ӣ^!4 (!TzF|*;jΊD[!jq.$gg [DJJ߷k[lIt{Jt 6J3(G.sٝMW5c--9Gjy]($ж يy%i6,4{;)C0ȆriۤG<թ ΠC7UկJ]Z]eVeD*BuLb4)$o`s@WxCiQ~ʍl 4c@Of0=Sϡ AYM3|6?ͻ*?Au'Z9%c IЬI3 dzxOM"v Y/p+gunl%fdjKk *kPqr"(G:,ŽlQ I@Crg`;hE|D?uk>*}hn VF矎E r=|<:b,2Z&cأ=V@\P1UY"WTC3'݂Lb!VW.U鷒A]u#7*xuH?E`NM.2k{vazf=w/h4M40 _dNʼN>P+64µ?\YU DF ~;n,ʘT<3]J€te:;(H.~tն.تC2y9'ɬEC/lC_ V, {ɘqݲG:~چvcr\Jcl}aCo+oϤܟgG/<(Umo۰WQqC·T)gBƿUv>5eEϭeR>]S Y\zvrG)o\20Q J:^od,]Ev.__'+H?=}Ĉwc͕/-H@Էrr*HnaϋҘ*>VP@E1dҹ&^LnMdQH 6SnLx1FX9?x~~/@rTF1W 3e""W $bEP,/$Uw ¨3\zr+=me+'1l^}9<.!Snż&_tb}^;m4u'Gs$|KpclU)D[L-W NM 6V՚ԩd__>H!xg-%J;^^jf+bo칬kAZNƷ7u ĩ=k*N#SC=}!M=D,]3cN)tb'l6 x6B.u#hH֤}$YAz|:C p/wxGӜ{r~U4)y#Dۋ{,iN?B{q<TqAc}eׅ艹.˃) ߞ)CL2#>0q7t. o-.\/|3+ "[8p+ST}K5/@/b*ܝB^W le/:%%#FYZqQ/cCrG&PO͛-[uufH!Q7"l'VXxf  s=qXܟ ]@0-?;i ;84e2u QPWhaE06xM51}tz2Sw1>YeƂR5ֆ'շ 畢*5h,H4G3\=F6&+Ryw($ͣ=wqx9>Rf!خiQ{PQ!$߹JY,0Q~mK?Şj3^< $F j-{MjRca OW(G>*k@qXʥTCE5̵ ?4$÷QԈ|%&@xb=!b)^4fԪqyLlQ/=S@n? q N6]΍oS_XwnM"\VPg(Yr2Yf7B> Z%L6oB?^ w깬J)S^PR"5o$wz'+C#o.ͭ7}7G`Kv46/gm> ^TS!!$ۂ5EZb}aa\rJ@Ep_,q5:>-z}mI\?YȰ#*6 퇄: OsOOӫ|tMALYlrT5yQA8MT[+{Qe8t%bV-0UxqzA@oA#12[z.O:qWD9G#2J>Oʩ`?PmdKN+>>oXsaGx noДuȳ  f%//3$P3*i+ZomLNe|AȇNu(&qc=??uʈ Ƭ[sܧC H~.|-VZj%+sRo.y+T,}Ad[Ρ*h2=) ]itӊWx/X`;tHGFŻ.ANNx=ȠC`,pz6,$~R9t9'DoхՍ=+ϛz [ֵIX[q/k4oXR,L`'${q"!k+ʌ3W&Jr"Tˈ, '0Rt=lz@y) L9oL~"ԪǃbVM2 #T|b$2"4 S~K* KS HPBe5.[] lH`5I 8W XT%)4VsmH^aSs.'!O|UC1.JnEa@en'i3?;D^>=zdnؘ|@<#8eiX(NAa !``~s]E,twg$}t 9t^Q@Cq֗)/G:>0GH~Kݻkr_ycߥ:W dNA&Rsj̊@q8.*qYkՒ鑇8,;|7L%9'&ap\ص泳,/WH J4jl#r/J|A=glu5mQؒW WJj"ƋNXx4 y )>DLu*jeP ȾFfYYǷ v\as΂ eiey gy+ N TQIDe!WiQW԰J{ƗTAӏ$"w3}m=t[kusgP봯nqp?!~P܏,oGPD@f|rzV/ܳI pi )92zTK1@]]u^u-JZc%[KڼH-\q]ϳ +<<=m \S&l~6̶,Y-^_yC7i[֙gd 7o%xAXMP¤U j>ܕ@d*hd>tWRVk.P@=H 02Ͷ킈pgH*ٕJVybz0+{wC^ n#!jT/c;d`+pgxب?%ʈNn}iavGCנMZSDMF*ms^.}FH3B߭[;p+}QƾgxutA+Te gώ-*<٨<\:tR@)SsG2s+G &/F@*ct/_'jM.\ʽi^1F_ou6}n^zݺS0x;M1?mbfB&i=`~B]a|A~rIB@*= 1| +HнeN$q?؛dsu=fح%>SNx(zeq4]C`)mlx󈛒Z+DVIˈG6[PlME7UM `:Sn[H#CW]zG4:eWʶ횼vO/f=$6uocw~"%y-ֽb.#I =&m=gv6oDp?;%,,`tSφ|'19^%<0S>*$uQzQSYo#] -,!EB3UU "Hbqm?q"8[+1/^~PfМ%&4瞾%a]0Oo:<)~nv.d\~r@P W5Nퟆc&)wl 6 ˜:M)s-z w ] e {LsI=ÈA(:DiS'H5[ obLD.L&gLv-=i5n8SI9kZ9/HCi])e͊^LoҳOzK˽b ~wC=2ZİzsHSQ݌xW:!YRJ4CJ>n<9DQnz (fPV0#; c%+uppyȽSMOSO8]Q*q.t,RfAc~wK\6 DH-U~6*=iqӧOYȕ @ iZgͿ|zt&}@6#MvC4&nUL!,]E)).MJ[:aGȳJ)h`΅ڡ|ӲR9j$:QYX#_(jUph#wڂ6=ӹv}w _GK>Q9Gf V]׏4/딪7"]ʃz}D.Ibaq\&_;tQ 9@HgAeRy~M=+TXv5!hPx@f炘|fAMC. bSHKB˅u,YOKa~Kb|Lte=R?^,NL:Va{FI ӖMzkKG8ӡa6"xLwƺ{4k.nh0 jSfEʙ9\26Vv "5:S"x2R@r o+G& rV50ܯc*5#*^&KFK_ɌHUv/>PWd0)C[!x[dS#UkKQXڒ1R;Ta!pYbAS»;nS[#ɒt=:zcRCU_V{iZlz*@cc:#~92dfb/onL"*]w`?3q dW{a&$́qY[2x_uFs q;f*UNUzHR*f(+yۢ드}(W1ڕ zjv\+#/ ,b1fJ@ޥM xɪ &p߳n&b%c:r"ƞ„b\GN )@+ָg|VW`a>F_ֈc$.nc7I|Ÿ.i'o ]\t^k. T3NFY'0J;ϤBsBU}ѐ͢U_.K%kpqx|}sRK!B z.$p&/QEtWCϽ=-Δ.t 1Ǡ{3`4P4~ezB}Pm;_LX F3czv32Ė㙾a3 74:sY[n vbijOB^f'~LJ9KRZs2r llŪ H:,q±f9hǠrWp7x1/_Ceg6x#wVw菉˜Sdk§VW<-QrwK[fk(үMq c #. WvFgF衡]+LnW9**G堣z3O̅G׉G\UN/3(ׁs cl`P_V"+!aB蕲H`0Veu.?N^I6uSm.[c-Җ,5aȶԢ9Dׯ'2Wbq|^ [jU7hc㖯ؿ(^LU;hl][l7tG_$i^_C$x4R3 PA:S[*޿ 3Nr}dj8WCę_)ITr0?& \ .fieK*l!4\HAX'I2ñPH >L"q`q^]jJR6ø^N\V,+ g͑3:mEwh De=~^/,w2<$Im$'%`[>S:V\7RA'^ I4 e׻l_NO0sάV;zf !w V9k쫦_?1  ^},xY eNx9Tn?<[AJw܆h)4,Bg/;Ў=1o?ǘJ:ް.ѕdsUpA,!dU$Ut ꃞQFI3o ~/1zlMy G :RuiExh[ì.V2#(h+J<4PrQub+D+I HWNJWI52,ƟZ.9"ί~sFbg>=}@ /K Y73靸Eڜu#KonJPMc !|>f?|q*!y@UsHv2(,JfM9dPG+0݅ƀeoZ_`kc~DNJBvj ї*,,{u!BۦΦ@2bxӛ-&Q>9Ga ^F@ln[a/7#d;r|&xUe,|]"y0#jAUB)q_*~pG8@Qa.fmˆTϐ9qL(b._e O,*ypȗ oF,Lc(fc塨d9?. }ߎ05r(ፎ+ҲD&eё<,xHwXPu /aIMd a \[D6 hu#bqr,qysl^YLo߆1ukinBkhDuMR5̀y?"86X>6s ^-_VQ#EdD!msnx9W!Q/6;+)בQDN֤9?U!rϜ].F,$myͤ?]{İ/K+U$=@^ǜm$͙R 9!C`fY( 9}&zcSAf.dWrDSbMߏDf+ÏOP{ۙW4'-n&`hS-]vT?u62D?:& f*Λi XŜ)Q_sۚ5,25;ҌOlxwT( d Z AxUUxۡ%z$>ğNy#lݎ<y89$wpMw\Sgohׅ,(ܑA:0ڐIbU03ȭMYx cZ?l"dNꮞ~yy ى0uֲo'z}ULvai;sXq@04dz;1ZAq͕_qUufvg|-p+GziZR4B  kbX`q$J2X -J\0E4^HVsO}ՙK Gh-b!m `A%A[Nvig=څ#П:/÷Ɋ^?`Xx e= )iF yCG͕`W?z.ϘƋ;&ɑzU/\c=E+; KŐ6x?d(kK'T,{w;6PV.v齋벞JC=heF%i>P&$ Hw~ 1 )p&!?X< |xX)MeJVsBrt}~)r,Sd߸%:a|3-x_EW42ߦq WNJL #OhK3m8U\q"4l_>fD A9 AS?@n{#cдpӗfşKa~:m,"0ԓHsdHp`wigs V c.3u;5'LI`ʓ+l~`Y$a{Z_Ozp6RqiitXs6i޾ 7N΄KժS2+X@yaǐg޺DI=^$ssPSv)~G$[_3 |jh'ˣdfE~y-@-2U&Kc4{J]9^gm~?H6,P*#0ӘW|84 ƓHf̓.1SXK&O;v5H>2{bX)#A!Dq!K| ZmjvC7|~r M*]:c˘Z^%? :UI/57ö<:pl^s17t#~!9{3=,zz^ ں94%FR*Ր򎰧, XW9t n]J?kOדw!aHԍP"8*Ra%c$GD8=VybL:jڦ Ru1+sЉ^c#c5{$\;g 0hXVf.0T131r2DbIPF'q ai{kmLʭ8V+F.8pxX2~4Nko6=aI. 3)ҽȪie?@FLKګe2-mCrAiq6Jf,dʨ0dy<5:z*lK$m-%XYW /ʃbF2;r cSꝮw9w(D)ns“E7X&t> }aX0m˹k#ۦ cFʇ0%l՞ Wi!{~l!p S'nLRZv$(ٛL8e Ђ()m͎7:sҢsD.̥)X-I1b;^'Vf^@?bݽÇpF $uyR,:hН\E bIBNϚ ǀB>Js3?6{M7.w-g'8ni/_슼Q'aSe bH&A9vn"Ys;,No 1rEg:I>[gSD e|zl )ğo][@|rݿ0)J8Ӕ YPkOxgtQD9&GPyY.N1N'//=]9戽 /2j)wC(hn Gp6f,9Q|t2/ᡶSTKY%djũ_̇i΃GAS \POnUC#7篊91+Dn8I4#4xt@{Z},ȗ\p1 !RWӏ?$ Li#1+}[q_x0/Cz%RJ|)䍑s.-rucpku5L#'gɥX5V̱L'\="tն(V#2i'Dq |农wa2ꧼ8j*3"-%O zf69sjhGn;CNezds I͸8߄ (!U$+.k?3ZR>SuZ`,8_:D '^ej 5F?_pLnæ.^o3K d?n!@Y}Z8}qv9K`);bhi׌B8J.Io们]Dž`텺\Y5ω%KlYNc^1s>TlKvn8\k/[V"¿qa3w #]fnYeCy<(a1I1AgN%չup$Q q̬; 3W΁hFe.[8RAdiGcRD"Dy԰$.d$D a s1ZmbH%Xqς' IuG膛[yu JcGؓƝZ0׫ib"rۓɫliqɷv\t7/rhтh9nQjRg*=⣟I9^c=;lQI/IYFG /X oi~b_V EԄ1nl uB2CTA-aRಶPʲM_0#CȜ3)I1홉t&=ٸKU2vO2eeJ@(ΐV04ޥn̴U6J/Sg25lGgx{˧84<)I"JNQ5꺒&E}xqB~"9ԟzPqy[X>_fܔK &{ OA)/`꺾cm7I-e-g'gYs.ۚ-M 2mZNU8-ZXH۞yd*0{ ̲oPf&Yu/h@PBX:hCsA!ez+-RͰ?3 ;!V^bPLs*%vObkaN S.>! Qu5vO?aXI՘skipz 1u_lPqB7Gd&rĞ5WҲՇ AR3y+3\'uhSqQԞK0i`;9+!(q="ԬuDq@jVRQS2'eKj˵fd q-cj&_ ,n5i4E4L:E R E*hYgpR37t*2{RM/D~(8Cyzȹ* EK*q; iҔ"+ZY d1|qOaf@en9Kλs~ە88H[zDJg#2&F\_vBѰ3\ycgKqZOvjXO3\l+bY_6mb| CU(HtRԩ-YP4]) nXMߞ hFfJ}eP7F'īD7뗛ۮ ǃmύdA< ffFE=Inbg v~5Y]k^Q Jc?r8 pZN;tM75?(QJ@|)VY̳gl-b^SI&BC [s~̛rk(#MQ+<v]>d] 3Pn'vN9{ٶƴ&A]r6k<7˗Z2%no(cb@kuxs`d#= >  !> )p[OCFTb!5hfqeZ?،E p9#>%Ik= l>k'B)COi9-NsaOb\'<Ђ6 z>y ],2a~CX&tXa\'P#!uA(gO_+dmrG.ƒ:%H7SGY9I:CU"|Y!E`&~~v3.0K"\s.Tl6n?o\:EOL7bmѢ W8$y@R$t>*e)|?R a^Zag#әD- jKb7n5tm`uyfs3(A`|" LWpUU|"WXqp Pon,Xo:XUm  05(뉩9åLfc/m U4XF΀Qܟ*>dL瀑QY *hؖ`x |KIƷ8-uZu FW,tmu$yYS3謵:Tx²] YC=`MڝT)xn_eaK3f 0qv7f8hA %z:Yi[t5-rz,tZn' HQ=Y[)!Zq V~M";!d(]v@(3u bT_V B=##\yZI%O[T`~fj`9B|pe:hLV1TIZ߯ WAei.iĦJ r0d-9  }7GX+byeqSs*KhRq$@^j7nRK(FJB--6 ˆW >8t2u\ہG@p={ 'Ptu쏑3',FPY; ic?u4tȨD,9 Mpq2JDFEyk64I-Kΰ23j`\F:ߒlS.[-C# x7z>ok+ZHY4D} 5o4^XRo#X=͹I<䡕L$Ԇ *N^Xm-E(T ]` %f<(=ia$ io aWaDHV߳s]fK9)gs|Zq>D׸Sezewj3}J7DӸSPguus\V, 膏D)Q!lωe2y`!󘨓.L^ q ..q9C3GW?&$ pEM P4ȶRd8!KDl.+oמg fes+wu<˱܏i0`%M] ڲx%aũ6X!am+2 @Y._sY&31Ttdlu_JE  뗦}VIA1DE*>%xfv"ѵNL~Aovc tϦC"/bM>wLřU,|aoWcҺr5xeP^MoC٥B|''EqU$aB4r軋}±,ѓl ;G"]d]bVYBNl5."Z@i,s +"Ƌ(']|h_j 6&+d7R2AUe0cRa`]Ukduۂ*(/ n"А%APh{k|M/q<˽ FFW,;`4F(;?7Z+c=vT=)B?o><>cWVg=5LFӢD[pnwyl\ ”רMbN1 ]Z%Q5YG*O_zzFyyЀFGx``by4dOaR@4n V;.Owg-R搣0wMX茿wB)49_n`;eEl]ܷH_dA>L;,qg4N-!Qaf҅2ism n٣ZMхW`_iz> vK(SJEn>''@E*-(l(K ^;#k5\dd5zX I1RVvw(gاXϋ*l{qJ&J\^(ISx$ |CJ-,/zp'mG#)8{B|k+LtKEFᵨ?~X<zra%)D.o@Po^0ĞɗM 4+1ۧf ~3 5jv3B2IUO gؠ|+Ô>n^'="o(EJ@!]0AtāRNS[ĸӷ!RKOt Ngq/{v3Ak(™UӜ%b z+RTa4(5[nh$4敢ƻR#ia [)a;OIx!hW@ Rnxw-CQäT<`vHH-Y`ᎨuE5{)TmfU#AQ: Wa ^eiʈ<:\+ vS5]fEG/&@i\Es*,LdA7#I+1%n]aIİ݄ÅEaHEsBIMeXԀy,oCĜ;rҐAvx?It^cH'0?w,X'ƒ *U ^8ؗ 3dQ-8Zg~p "4 hߩѩrh['YӸ@O$-uHUOG- ԱLD66ga\NPوDifQ'ѣꁱ, m : $#!أ!0ɅOԇSE,OħBd21Hh~~N3k:kY~>eAX'̱- jw8hR-"M~FuneI5i@Z_mVlW_p`E/fyN1Nk26FqA,kbrb+(oF g]-& M\[;M:Jdk>)!^#4+J;1(1ŋ105&;d}P ؞u_|Qrh6iphj~#x^Ba /58QMb[:[닪 ;K@QxmdPk)!{'K]gz=m-<: #@5L`C5ȔIK)JܟGu\/CyC=>HLX {}1pZDfMz"C^uA'e > $Lv蹃y?P${Q0Ԙ d@Ԙ)UNrKZHӁeOTzY!oTgQ@Mș?O˟땘E ˤGmc2!N8~#eUZ6i>_*i [Ie:wfj >b$k+c&%~llgm/z튔#^ПhX9KŸO;t\M{3"{#ͨA=J[}/:=-{W = 0554X+T[ CrIΒItQwKz<'ơX .ƨ@`J7[;%\mn]\ӏtuE|Ӥ{KV_eך2 ]֯qM*Ij"> *2 0$ I񻅡3$hsG^љ}.] B3/o_fRv@'WLN/>~ޠh+`er0dz⥲[hD]oK'2G_)#X[FG/hv[Z$=HP ]9KhKUff0F&[pyWihii/zK=ZIW]=T4Y]fJ>j҇dPectitDm5sm/eQ4mx3kڪ+jYs}i8];K%GG~vXuz?da #$mP= Wg7a}c1 E$:V$^̂{ΗXL>(If3E V^*6@U,3T5o@8ڣ9٨S&{QOUt .- {j2>=|Q>]@aIZȐɲtV54U⺩d^oo׬9yaY˺nJ6J@Ɂ+!U[BZao/4;YT9"K* Ѡ=/PRvs@ߌCdkfȼ0 }VXryMU`ݠl\lS>`-I!N(865o9镘"1?-JJ)U iE0KOg҈JW$Ds}~̼]'kƿ=ͩU9j9GȾRc7@̟$ (q 3"sP ;>ɺ6+Pֵ :-ڣRͅέJq~l/RlRT#s}hP-wtoU1J]3w85棇?-R}4U:BOi@{9wIȝ{PF9$*YA^tsP?y)0c0>[))))紻p$pH|`.J8C#;m=)tv|Yk*ЋŇevjIpUz\'bʪLJ Z\| nIr{jΜ\Gianj7ռe 8!jN@y"b$Uy꽤ر1tԏ-k 'mmh;yî_)˗Σ7J~|=gC@8b͔`^x{Iѧ%3Sw-AOMWLF*wI) Ʉ]voc&MB14ѐ7D D87&R7dـ}-$ |wwu-=_0 $8[z-#biOEx\j#',,-SY'ڼ-,?fCqQK?Wx JUFÅB\N[&4:HxOmXjXh*;v\_{b9߳K>I=ZɊl|0h:pU`*@QQt0ꢃDG`zAߡ@?C?Y3cSjX?0LNc/@0KPƂeZm"ʭ̅QS-,?ʵ2fUg,J=qC{Ō%+ cij ;ʡ_PJB\jln}7<`D?2&Z^Fjӎ[$%{j+š)?m +;5IiK]pm2n,$w^5kkf AaE}> g*7MȐM`k`_+ 9Cʤ,+iٖU!WܡpK) ',{9P#Ok鏖BqN2xӸ ҈jvcBIf)*}XV4m.};rd%]A$lw`Zc cᘻℋ4m(]ϟW+_ 9LoL1dI@g϶="={rT+ w \aTѺNgzO8Qvxt.jqO#N',Ƌ1.2#ݛ BIJ*WsMAAZz }:A*3/P(~k-fOIooQEY).0W`sv5` &ٜ7dro2cHKi2%#kb4GFc0:%E&,Ȓ#5ϡ`K@\Tj}M^GWnJ[s➳/knCUKy=NNz :,pK19` |8-{n\s5ipb=.& 24*ƙp`M^Q-TQ’l { 㧖ub{`|cDhRL]H 64' Ao}33ՒXrY߹}v)v2 D/)]l>աfYLWsEm:Rd͒,Xiy*8{jsCWV<:})rVrX~75ݫ^MBWt@8~,7JFJ_IAE>" *jww`1Ev8ћ{}Cl6&c'e5 IL꫖V4#1엋<Fy{1%ď4Ap>eA`xsx*uC-qn [BCkԲ~B hMHϹ'BJUjj'2qxv͙TÝ~pyeuШrq>&uFZ' y Wsp`rp4qCV(Z֨0'-_J!cfު| gI̔xmJwPツwA',?@@i,\)jNwnÙ*?" =wkUGԾ{{%]1 &վ]ÿZb#VBmA Od+. n$UTL!)kX6Q)?|H$P뷔-2H4 ڹjnF_dp²H RסcP#*}`s߁'.;DގK7/Pj(3M&yu,O)t[<;E圗~Kx\okX6R!0V6*}G4lQclے䵁jw( Ӷפ7=,HO5-$04%I Nᜭp}ݓd:2b/ &\+]R8! y"f=woMRXX\u8^74ZMMkDzat_{;M|/ HD;vOO'"B] xs6W7 G/ØA+q9U~5sw!3Rm&wTڧZ(8.iskzuڃҗۤ %9|΋ N`gif>JRJ*%ꛒ!E@J[sqjb_PyҨ? ([0_̲\i FgM#-pPUOw#9fT_SC+? "EӴo=8?UԙZ3X;/3<CL^` f쓬!8pٗX[n`[x4L_a $ *@} frT]qE2j=A6,OWJFn8~n3B'\.=DI wmnh]T69HIG%̋:R" C^ɂgư<qQV( rX7DP1<`ט)ZIk$?3l<@nY'嵥";5(iq4N@4{Z_F݌Yҝf`DtǏ3U__\ Zb0N fٍO[ C*04߾yvtb}t`w˟'[adQ*0{*VmFxgGޕR" 'ʲ/=&f=> gN_ߋ`]sF{^( g2S[aҴ[߯Lk.&n(rL =%ۨInk=_qd>N͙PB)rq=A,m^G6t qDDzx. }G&~]|E.TEӯKwMf}(:()!/ YhFƐy o |M!wnfCGy=dבQź2iZ8:e}_DC LU_*~{z->!0 p aYe7q4x:ߘÁ{OY+~"Em'd$k6qRXiutcO^j6妍ݨrr·~`BP9tHptNMr#}sn#] m:#qÞZk$F?qenW,szAYf5j^jcOEquO~x䯫@|q.[G`g͎OYťs|?# Jek0ֆ2y11+> SkMqIϗ066 Ǝ~3 xsq /r"IVO$ĽPR)ǯ_f)dAɶ@8BKRhx-GҹTq{I~UՕ5g?kOdnVuxo:Ўg'xcݿmY{=Z>3~&gMI' \e3mtϏU$pWO cRkn8FKL/rSO^e5+5qeоc7Q90֫q+c\U6 Ȫc3hh1UE* Jmt5/l ght(C-♷iHlհiD'~B4X~<}26׀槂ڄZ=Y;rlwN.4:@p/s;դh^wb,Ǟ;vLrDE mmn`C˂8YG՟̭."ELѸ| c>?)4aqBOTѴ]3Ƽer'cq-sHiD ̈́UVBpƽ% 5@ňj7?ؐIS!R)KVLҝNaqȩل uX|gE{K=Qh8y "DTR^? * lqCwzah3pOkeraNK*M L.ݲh#.o> !N5sWD0}!=\Թmw°vĩܢ,}R5-R{_qTܴO*YYwM9n1ȕ<^}guOb9XOx5~m";ܮw FIn\u]n^f\xkGJZ6=Tc{*{y~hiyȧ5%:7 g)JA[]`nG[Сlh{LM2s߻bZr *Lg̦aދ?%'=u t8L˴y[+`| v.AYIU6Cn~Mz7*Bvu<AQpM.2LI*/UU&vblM0P4k(K\ o+K9/ZFJ?+$K)CRc}B]gB|~cuwVhgN (<&O1gp֒S¸ 6iڜ0#qQwL3_n:CwG <0-> UsIP1AP0%߁i|)SC1KArmM2϶QP>$)Q˭Fk"ھL/+}`P<'Myty ?{W&Uw1ؐEdk;{sXBe~/uJTR?JЦ]& d@σ |T> +'3;EJIG{#7xm!ljؐZiNXE퓰4,ԋx%ehgv%މU+%ATj~F:3z|*ZR{fTA4S.7M ?bRGr6#M8?~O$Y{h-0k|fWrlrE!FNŏcߪZPW?ش;ͨrS5^g]GSP9H9ؖP}bѹ bDI@ePqGOP]-ӣ;ܠ?Yxr_y.%qGVP7x X51"o 覾'7TC轺d*ә(6Sĭ&f[ToζDLO1i`2}q0r`< *) fE!Iq өvlUubJh$/=tŲ&H3W}-Қ }v" unM a3oG3l~N OE_nvux}0%(s:GfPdhi*5*~\HiҀg)\Ev/)(\36e!dyo3oi7V@6 Tmr;[]jQjaKd6g ̦?kTQW 𕞠87VğE1J(7{s8+$Z}UZ6腅v܌1r䯢 Bi%fҲɜi[Ge]%23zD1( okk@PB+ɭ!rj%mW0S 7AV~j]VVjHQHs#U_;5+:d :vX1o-ԋ 8-it5=g *-,y|+ҙm/Kd?2IlIF/Wƭ*EQûJyPJ{FzR~u8ޖف)vm@vlNXkJ]Uvc"G!ufY^ʠ1w $U_WtPٶl~[f6v,G&z(@ 5Z7Q`Tr#ۛҧ<KTA7ǗU0pOfǤ- -]JpyFNj zvDYH]w{_6/4r^hȽ#?ᢀR2\/[ޠÖjEPOwg0 ¸D >Se^Q<>]WzNMCsEN'K47uGd^h.ܵYAr"pE}O5'$h.vk/go /ݼU/^M/*a\iFκB{Wa/=)Q'_H/7TZSG帚P^K;L.y9xb=Q(q 3bpM(v XZ7Zl頉gB|í].u raFF/^ ӠH Y \Sud @GΔϡVVx@㴞Usw6_$oHCEl̬)t;VUeuIr*?U1z5ځkfB(pA$Zozɝ&#&sv}u*S}2y206ǿKGP)d2߲ܢ \wH]hs5} 5%*itWi٪cz>oebU ,hӭD!>tk2oIR ~E)!;T&ct;ghW5}Jzu@t/b]l-LLt߰LvDlm$6Ze^0*[*:!i%x])W h,5i>.t|11Bmd&Oo_<ȶz܂-t&ClP82f=t}\a]-[Ï_t1` {#GhF՘lH͕[~PDClZEQlTZ$:Gb]NPsysBZ+)#?&՘*Moߐ-Jw8 @Z3{OG%?!uuv8kTX O~koZ .:.dדJUʇIGzZ`W&-۸~:"j#xkfθsLW'+i([?uݙJ_,<@W6=E^:^a+kF] T^L'ue' Z O"U'1ÞF/39eMV7zSa 3Ȩ%OTy= =h~a~uԪۑ~WK៽5\@?L95>yԚ}4BdPgzgo˜:%QวC"WDYK xuB ;O_XԮT>vBF%A5Ak3gV5$ߞysxx3>>k\Gd\﷎2 =,oSPZPݤ`ֽb0X Yn:X``^K6#4i{@膶a S6)#U #ߠc)0HOh3E1+KEՇn|tRILy!:F_tpxjn@L2Z$d'.hc N#&Egpy`цU,%Q ]+DsiCiJYS\m$W513fxP90@I%mBE8*7{!]Sayqi2G<>Uw}T 81}o""qH ұurƐyquX*4Z8|n$ȜҰvyb׮'w=U?0\K?FUl1f!^TEUj(CY  NNA 'Ȥ a)2eL㨎 6Ѐ- @m<2wSʭ؍kJj|l2) SEYC%M8NTj_ڣ'Oe pT dVJeKlzN^8[[0ċNڼ* ]SY_n -,!I跋"B У ,[P?l biA.S"|Y?BEM8_쯸Al(q}cCcwX*xY~Ӗ|+6&1 # ^4یBny_C2X:u!κn!*]N4JE}KP1L02j刪0">eoܺDNhXymCRzHj\`/<E0nY|D,NyB9*1m)S Vǻ}i56J,{; AHhggrN+EӮ:uX+ c+w5aT #M0vy/R`cwzCig lPp7 Lnihtc:c8Xm<ԟp ;F#9Q([0g&qޢlk(]WyFP^4.#, LL*'6dθ88Uw1 tn.[XM/H\&8OƆ/?gE9<``Oo-6ǏLX@Q+;]-րs6kR"VZ @Nܡȁ9CasbR*,%Uhf15g@:APHWSĢӉ| ])'Qa;ʡZB@-!*Ŋ7ܡ(3SC2DLEt ZxvY${Bfg ɽaӡ\ʙ_,^-Hvoufx[J qdh}iWZ8:$?h(Jaڣ: ,hlz-iBV!R$hj[Ǿ / $CZedBBXdO:u\Ϥ Vę o He.cVYZ&y7") {jfΗwA&'%E;ڠE_!S8(p`> q2{nJTT5 ErCKj1ib飳? ܕؼ}^% +!dr?ELRCʥڳv ѧwpF?zo[=|X?< *PIŃytF%]|{4znmcPz*%}81)ΘD a8<9/pWGj2 4)_teqƕ\@ q2J"?Ɠ(oHpDjX] &}6i;_[1M ua|Id/.0kpk:Uw14뮷H@%^n!"&]pNa=N%m[ 5N)N~0HgW˔ࢹ| j zJ gUS`Tl^zЫ읎!7>3p_-] \Qw`>ϖ0 Y{OׁxUVXn%~WÂ:X~fsGwy)vGL%+*(ʠI=rAli͔KXP%WnGoƒ޴`3BIWC؆2ڂ$7 ŤƋi3|>.#JI1,Yrt%T \dfy4mQںk^lR8O"+PߞcWu_v ~[#/= ,'#"Z\nrƂ?87ɱF`+dztn͓I/agZq5R)!?@oJ wbp!bT fti|_K9P ܩɏ҂K|ki<#GXV-IDZ.{tê wA)0XЍ [z TB=yn Nai|A* j( \H5jJ] ;Ƈ%2~AgqZ}A 5a>;a{8yA솲7$F׸yj,ҷVI2)Gs.11##\_EXHӲ`)y[1nE|M3#^G(ΐպp*?v{vHR*1#-ȇCVt"W[=]#?$)q9>U ID_h|b1UƠមi}*`b {CAf2ApϢis={4gܜ6D]3}ao{)\Mp7JNW374L 42QlCx%CC8?c0\Ώ6 kpU"u9#x;oh{?(BT,-T,QOS% >HwH "qp@, #nodUA6 KISMfJLʴI_Ey$r ,vnm&OfynDq`SH?>FfR|-9<ԿR12q2a+EZMN˦-80+'`Q#S䔧ý,2j!ܫ`h#~WFFsn 5$2':S|-/ײLkZ@qc}n?g/@{#7(/=nY=[L ua5P@cSz3j1 gέtt oQJD]6a]`c7{pݾysZ{$0.P\VSҞñfk{p?<êi|074tO%heQ>u3jHԶ2Q+ mD {fd>\穵5ZoGΛ4-_\;X@OqGfi#KF=@ȅn^rfJ˕5nK3>eRo WO.X֖8C޲gq7æ]g\ W1$`PJ%C]-C ϯ_RYzVT,R2K;b&c>0rx;hgOƢ—6s3V2^}Tᡃ :S"1fk["JR v`ֆRLhks9o|UE 8ۭ2ɇT0m!h>637[G8«X+wOS5Tcut"lQ ih6 `z Yz\%^C#[TW&-~*T0uYJNRjcR :H?֕  <15T$ m~?41o9.|7"eb* ײcܡ׌֭]1v־RDlxY2w89E0%%JV5id~?(n%cӬtWG?8- _ ; itP  2놛7qd i]b֗^8%n߬,0 ( ni<W[\aglQ`09f)D%DLi"!m "$+m'W^/o\TIx}ctzSw/8pN*W.,&'Djf)HXI*CV') +ۦi;:0v<s)-鷅癟t*:46-V6>kB%e@ZChj?yss6cWɛcfk1M._ק/u[{1P|4̵kXfҨ23G7H6+ ŒW`g}KbUe_9u%aCTh0<{1~vk3e/rB4R*+Z&(s ]i"?_҅ ˦GnW.Sgmj{T:!&7GVNT0Ђ{r u}bhPC(PK!g;S)Y8eZNc9?m&wܚ]hfjZU#~ȡwA&"^!>l:&jL|pjK<yM]vG=._kH`/ ћ겍[Ym-+AZ6?Dz:PZ Y+u wlo!$e2q{4̧4 {IJ5`߾>3>;" v豂5_S  QMaN UR;4YLʝCDL$f- <2kYK6QmHf tW銏%y1ۅmO2*6E; XczɞwZ#T1UNj+]B"{aH̃."`P;WUґS(::KmݻA04Y) $GJ xX?& :+u+D ;{L&! 'uٵ.P r72z9⍺Ќ ġo;bQ)'yU1؆[\N[p@ J{OSby=o8:6g1H,;hV\dkOTߜ O'/{p kL7%/B%0X^iD@XYJ6>LqRf]"9pxq2ƿxXg>7|2GFy+OF$C#+WSnzBWbcQe~wPKL~ RMHD܉0$QA1U4P ab}b^t >^/0>_mߦ:k(6NVBb#% QT4B] ) ^>ȑ;]n:f9( D,$O BbȦ>dToqu>D_Ly'y*|"Ҝ b WYj06~R,O.rmz@wz8Ķ BG tSc:=І3SAV4&O<>5hB 7o X`f뒤?з #&p*D6‡VA|rw5PcÃӜp=Elu!Г?Ud+VpUZgP dcwV ;Yz֔71L!2Nc9tNCܕYh 2Ct%~Q"@4oE>^Bh`[Ŵͮ Nier'!I-M=ģEMbj4CnUo^{}ϯQ~ ׀x8o^?p(/Dq3$RCRXvnAVF`TGSpݽV{ NZouxe%Yz~y#3Mkt؇︷X 丒NuF W\Sw% a1YbS,tΜ[1p.:.2N^m9gZ︰FF μ%!n~^a NܭpqۯM-[Ud*Ledp>KJ{ ;0M_$:-my;sӴ2Ԧ륨i262 E"FfBWehQ|V6 4EevkDM}Anүhc/Nٖ% fF};ИhR4RwU[q9w/y1-hl9ƺ+?#S `%d{esߥi9,$1?3yT EzCFh𾊧 %I2l=#ljFqs՜w@GG[xc;EdɅgmӂ*_j*DCoy.7*GnLB!ek|cJbe~h~F{Ό_^䢵6]AiZ`H=;삲1%\ꏊ1iB8Pi\QQ)2|=@fv {"RNJZ!u[XFi}@"zkQJ88mn6&pPMJ5N,qh֋WqdȦPeP'`q%oÐk#]d?1?*wV@BTeeuO%@cD-a~o5ڗ9PE.SYFE(u a9-Ҷt4 מH/s6Gy2GB "2fYi4uڮ|!J`n.כ-uqkkt7ņՠ,GBرN'~F`, `"=ګ<YtnDڼ 5ޚҀnd%O m Wi>Z9yR/k Tвu,Xj͗^ XR}~l-C k M_0RZBc.A3JϷEps~'அ/AaZAB:?J]uLd'k{PJ;[l*^K}|݄}/7ߦJ_ع3[»$S8o~=@&Y+-.ٕcN BwHu@+J?x fyf\BǥJrnlbڦ: "7k0ase✻%W#X 1m8+U"+] 8 !rK[wЈ/bFm'Vvž=Q/1@NPB4K5x`d[15% #D|V_onPJYe gJAQWIqQ7l >B5ԯu+7 <)E\6[yƎ|#++5 +h5_c _KQa 05h8ܭ@V<]n?.e9cRTw _\\,?`Hh&V@ӑ짨4. A8nX6,bs&>ыk_Xŏ7+?zϟ,Nrm-|9V8L^;8-m:a!F.]cǐCldp .jE1qi U9)2sdtefO`NqJ`FKE*CC_W`'1xf>,M[3ޜ0f חh^B;߇;üYcMG:jCFRVl <`}5\-T&nb+!0Sc+I%eN[fFMx ൠeljRAdk d/eJnMI\c"e^aWxr[$BO8{Nb-x_[dܚNZeO;6Cyrc*o*m\Iwi9C8 HA3(7T`ct );"?%JV\4wg>.KcFCX+UR*kJsT/7PIUY}Wnh%[(wn쨭+Φ, _q\jF2:mThAe kOK18YTK"X`鸇!xL1Qe6 o̎u9s==/ь΄|`+R}`-n? v H XFjBY\ T]̈́yt!U/坻,1,dSƎ`a#}N :=șE3_2Qh;@Jc  W_@5>'jhh^\3nxqN8@ۇcRs=}g‡0iQʞlƙ:K@S-e@$pwR49Mp~9ٶ38|иS JK\p~YZM$^(g:뜯D+~GX^n\t bF BF̬O]oa)@9bvs3 ł/o)]~uer<5|6"sI'kHjYuETMNY {ڴKg骯(K9s yK\@&;0N)FK \Vi)Ү8 xf tsA7cQ=o%eĨ6΅FFmQXu]2##pd AG VMH~tQx+^Q S)>_pZC!JMjr!p35$TcdAy׺I[)K&?FuĂXC !'"AoWb%:e-Q,u3R/ժLiT$=ao03 ٨i/ #{#1$;dm9Bci1}U6ݛr'H%ï9alxG!^=Ф Қ]c FGϬ +򐐿zJ*bު}Ki#p9}%=kT28^jް$djqV=d;kTZ[()*M¿=0HB=>OyU SՊu#5452Hs(\3% TZ`ΓYe > wLzF)~+6:̀ rQ֨6'k$guHG5~ZOӬtt7F}6Ty=*aa"ue5+ߵ&IؗdqH.V^Lk L$NX'{{Zzą&L @%!_"2Rޅنg $yncfy9 S\0;rnBv=iXɺ(rVi5?B.5Gӟe xM=T.w]a;R׮ '7xPޗ6cr]v5G6AٷCH>璌IZC{i|lA;ܬKֈ^kWz:4 oxr^[Ƨ`Y ޸' E,Kr><(m1 k 0'~gz}x^Fs?a>kP1o/y ħ(#hjJx3?;jj7VSxYb5DEe-vHrg#y9J>mh)>rGXU $^|3afJW3AB]f`7X4 O^4VA{tKUqSZežX(EUyu:ǖB $3V%(k`$ n"p!{omhn> T 5%EC]\') % nzK&h}R7O&vbKR0]ӱR'TFoSha%VP"0 9B+lf@(UoVFI "zP;rp ua"}ҋGm )C&%֠#:Р5{.?W=6 ~ HNoP@B/4E2k?Ƈ llgU,}e7Pbv^pd\֢\hƛcNe8&94{?d|czU>Pg k'GML t`EFl ,x6^9%p`?iS}y7}Z#qf;^D# ՋTq baa~*O[>06BoPqų44$b³oP-)hsq^ϵPE ^@32gGrID!Y詁R>=@8|%L[|IMC3_Vu6!wwO3"Z'ue᳴dAGTP)஡O,+8g 4iucGC0VD}==j}qE3>=63,bOVY;kظ5Ρ*&/X$%'}8gzU>*/JUi `1ܫ|8O\{jywXZ¤HfF90>4Z}v3"H~6RxnB+$8|5S(/dt-G^D$PkU"ѝ`Ao]|bV͟/[ .1[, @W ă]h*f/L57nTc~]tW O_;o7"`^2-h ˭9M+./Tyڄ\ UU}_KLɹ@ ,>+%oZPآugvs.${KN+7kٻ.Ѡ!M}.ntGKi>Jp=||ʤxWcT)1gg?y9kc$]}ߙɎ;=|V) ݕ!9b(N'3G|D_ {HmhijRgY"\D<Bv밍x/5R5iX9%ٕXNKO?of@_oӺKN)f҆7(LQU\L _l"=@ &퐭0e7cY).N+t!>VM34 '>گNJ7+%ƲڷtV-@\jۣjXh^pI琹b>Q X"ᨈ~ޢ69x#@E}_ {a* c^bLjŊwp0zx,&@h/3EY'aO3'>wgW{EvIޤpVٍpׯ&nʧ اQlZNyu DSP|ON󊃅a3`<.̳5LA\S'gǸl4|֒\p݅rC+eLQl:NG $<ͥqFAH6m5z/4XMgNv ׸ebV8l;v+pǚcw{"هV$4jVm4u]Q?$~%f@3Pl C&WJ;nNߌ69:rA4w$%숼!mevth+d"N`XSK{!0la8d!:N'Mt uٮg v)4/#aw(;ڻJl(ñx6eo/" .3̊kO{=ʣ Njo=^ GOgΔa(81zJgU&{p %$d`@WU2ɰX XЌX>Q_:X漡=x D!5w{wI',Pa5f~5Yס7LpdT%i"KrLCOg B'0Ž3eCH&P Dc n -2V-i~t/35\,(\Z7^;:d# KPp0xer%܈Z(Ə)nqIW'@KWWN#q1)rFֿe5B5ǝP=lVcd;s %sZ{pg!z%9*+lrX5;VNQ[]MC.I0k78С qWg w7kG<3N?rn$Կ<5343Phj]4~`X᪩PV`5TT.\l|]dp7. 61z<++k24\>K!U%:*gDUqx, ]H_h[|!:ES-`;cPwm& ~ |pvx(gm np&_ys٤ j&Vg+fTkAXe sL8bP& gl2iu+hTv%'3BNbbXW<­yLMz#GWỹ4=yBI;'6àMQ75b,%/es{h VgNhПˈv-Zoc;_@~y^KXɾ^]L̶ʩҰkI.Q6I%zfsq@#_jau 3x qڧԡsL&Hb!n 1TDשWJy^D)PG-* L9CQOľ*ŬsUAPLD=PlutqCzf5M٨ Nsˮл [gOf??qzvxN"7\,!Ȱ/H\\u]M ^YNDyq`UGC Jm"jZaNu[@ޝӰvyVyE' v$8@D󍮝N["i).Jۻ&]*-4j0淛(&|=}h4=Udj#%eƜޝnB8o8_oq4gO u[ N6#uL<"HjtmgXT#߲bZUtݾMfMz$YH#>S ?$/4&Av%!. LZ!(p5_j$ ug=vGi Z$nmnkCy&Zu]/ˋXQ( xXɾ1Maܲʡ]pNP%)C;HڷhaޫHZm7$&Mej,>|CϹc{H ^c-#0JM*ʘ2vہO ulB2*RKM|<~2K-ȰhZSsmT _UX-0@( \PMc[\(\&E  , FtzXRhs"`b}NSAwʀBo6CÞ;4b̰n5%V*:&A'Yr|mSY~XDDcDz=hO(q57\@s pPdy+9{Bݒħss{֜賎W\s@.scҌ[mF#Fj7̅S-MsP|` TځqMۅvbH:{Uw:S'2v`:}66i D\l|˚‘YCz> 3w05 -Z\ZN,+dFFժ RI(G `^ݒz8v6آq6Umщ\hMv03r.? ]4ՙJT`!uȯ` 9:|(ʏc\IuNerr5a7 !1&qsaK@fɢRȤEe?~8A;)NJD=|꿰F:V[`Ow?`sWuiH8PmE_/LNZ C&@n{jPwUU? ӟbLLMV%D\w2Ĭ0K+{[%e+inK[7À5cuyI;/sg~EASA0 ef?ry,o[yGdqcr"{+3P-{Q6g67a\)SfnE`bTO }f% Ѽupv`Ѵ4F:&-~F{)ގ+Y‘@6_HEtH'Hm5S۰S\EzͅКoHǝj&Dt χ*CښU؅ߺNn<*Xjݦty8u> 3ñy t=%/Ra.Ӝ^F& o C961ha`J 4p3Ny. 0~Dud\rG©Y|DYgKwjɍӱ]@ƅ&52w!ä3jM2M_pTX Jz:20p%a{E&\b}bP$x+poq:|5*/59G"S)wZ(Ri33:\ft}=U+/+fL*˙PJhPEEft,6ޘ|o{k[D'|혂{ w vӯ.* #̞ߌΒRNl_PF$UcTŋ:U mTQe}>xQ޲d+3=ˎj p PS\o 6u/z-51P f[фcE7Qrq2P'Hs'$31郃ql00֍`M~U*NC1KVT7! ҥl#OҚD\ۨ\/r9U, JydVmҭ 4+/oZXUI@c%2{#jP M/B*Z*Nyc:v4_ <`fD8VOkl/9]I疀.Rҿ5B F -t3/>M Pfz^`.Kxno Ro5Tr絖H:^s<%{Z5Ɖ+B Z9(31'r}뱙WՇ%lOdGt~{%3Of1%?ȴM8`wp4ٵC#힟u˛MRkc9/I6=.mu%lGc)r bf;jSVc,Uy%$|1`HJʐLK)Qq`Jz:U-~; _PkBdz2=IL'oW"^K^ ~.8!gs~Fn#¨U_A|cwo٨|u@e=G"NޚhhV&rOE?XKI5/kam" v5|wU19w$󎦱 #aIoOFl'a\R+YIXHK͞]VbdaRIML)7Qe 'H 7y2|SibOQ`/]$}*G3b\e@.5I9fU)&WM+?Bf,9zׂ "W+*6dܝH"C kҔ58s _֕`tf32id]Ghf՝TNO7jTTntJ|S/2EvY@kj1:T:U_ms~Ȧ5kh3QR}<ݢ̴ wA9!C*ՒUGppY:kqHB9 ŜWo'햹4ƈ;!o"aY38<~JК-Lv>|f "1wh|I>\Ặl~~ɔ{Y!}R$bjzrYs3.JS&xpfOs@t F+{/+nچt@Q!9 %m:yxT:b&"T6έ_jBK'b5S:EBU*Ϩ1h *? %݇}3x (&TI/n#mOm{:&}-y[)x^OE M=QtkbR b6AIj /HJ&:*isD EGn+Ek %Ӯ2~] W%2\exܤdQ_zxuj}j9:0sdlM')UNv&N+]1L6[ҨRqo ) XL)*mg0!ЉRb,]boȇUotcFxJ5]gǡ;2ZD-?GQ0- d81Rm46vҫ1˰qJwb 0GE{YNgfOlm]݌,@*K l.)'A%x8@=o*퐏 q'؏%|̐+^4EϢFEt{ĄӆdK'k;˘>8L7)zצɇ=I;_=5;]rha°5ȟ(za?;nѬ]Po`HH} ]_/Rc O`DtTKԜ0{iJrޛQIfy _Dktrs.^g}Pmѵ9HGXI'cvW\)2xnXd)dr ;nۀQ.jj?$-nB_3 _om1t>nwm8Z)pV!:r9akt4*e읜A$U6r/jH{j :"vć7Pi QAxZ C28 tJ}9l3`Q")'*XIL.j&ZpHQSw8cԬ_}r8gt9.%*A asPr3R k}Oy9a–Gkp_8q% E b0iLbkq2>ZEARڟD3;(`aCmsn0TEF{7ZHb*| ylMN뤶c(]EEz-mG%{/H~htW].'蘾 PM#QFQU}Ka#J|ο)9W_29pp{ B04ҪE (`S/G ֮X"':GoY,=kEϡ]kXSaE޿~F6R!vZ`q9`>X_l WݾgfN+E[f] Q?˽p#9'C׀~dZr9O_dѕ1!<0cB @UJ7hOxFB;U0Ӹ#=NP"3\8hk2^Wӭ3IgBj4>BicXQ^G{2R׿?!:d!xG^~ݲa|O)#8{|`_kVi]hYlp;yD|D9:cA|g\c`|Q`RĜ8ظ" TLQ Ld6#C;?: V1N@bg*KZTJ,bS(yfF@H6gIFL'"YLb/;4LSTQ BJUM؊31$vdiO`ݥ[R&V n؛ ƩS 2#)!2^k)ȧX%fEMhAdm11Ӕ'SV昶tRhGvo}N)+s|4#r_G]#$w9Ny7D)ӝUGa E)C*H?3BK$" rvs{kX0?wnzA_EL܏ l~H1Iw!r t5FW9)T3JeT?p_@uWˉ^39GS?V/A`X 9Ӄm@S{8Zgz`8sʰOguW#]Aۦ׾Rڡ'6)&[-^x''5I_ O֌nŴv@oxxS/ɗUN& VaM1zCpj*KΠ~y h`̖(b,O~rۏ{40G0°*fn6O/F&S~ (&-?@:m/_ ([ ci}SVn'}%ox%~UW`ﴟ'i;"B_)+"j嵇?9F*/]eBьzRt\Fn R' ô^cN1%2 +g?J){N8FruݗtA7lԯuy]o -I i=p17{-XQ1  h` >L2v+^,FTH穾3DMZ]d2_1N--$ލrv4QMU7ȶ#|±u.4UGwWYC1o 3pDQO;7+[4Y9. .Wi<8)xE u[5]ZTtBH"QS3c쓿N |M٨n-.q,K(/!FVȌ9ꐒ4xr6 -#5jd,@PEР]"<qٖV|9Pv`XJ6 =H/ |ϒ%WB?1QR ^tREG#z8(ln5ĆF-տA$|Ŏѐ=Z"蹝+erКE[1hދI<#&n84VǦ*DGgY>) /f]#[3 *4'F81Zj οFU˽R*D)yK󀶦9Dͧsq)5|`*Q›,2wo;~}K* IFOL={]`H]kDž<]KcBaXSϕ-Y6l_B<{|*aPMM<pj7hq#Gx(CJ6jR8hco`96b6ZjGlL&+Jp1>V%*^SȈdu`1z|z`i:K}po`XP[61(M֙J9_DڥԋF~o]r˰ >*0eϕE\'O]An 9~+ jRKSe6^M{Lq0ȴ¦ 8POȖs kʅM]r(_f8%BndC g߶)gBytUXDW*I> s?s@vx,PG㮔;dB'Cp]kkEpyQ:U嵡rwH!m&3umg |)jT|e6Nl5cv'.V4iFŅ5lm`v³ET6n7}N)DX=0'(nqc1 vЙ "W_D@ezKExuVWU ns+],t%^jpTN  @J"J*4#lL#8Je@.x٥.-Ut0> "Vvug$L˴/DyS4rK Mz'- p9X5 IK,s k/9q:釚~ b\lD@..x!>$-fة{R Ty4_≤/1;EKF' K#I }h_B3_vOcHx/y喔giy4V[b3vxvU*Q^/oR҆Φ.a~;KYWy_p 4Bpxء)x2H:zEC iZZ-IaP9 fQG/?F91-gH>'s oX @ E )8S*2q$e(_yM(Dl E;af.yJ0b?Ymlo \U|Ȩ +"Ma0=dC6o!3 QaXD!H|nb(W~T}c_+5ETe!x?CNv#  GE/s/B>aM@|@:LLQ-7PpeCI)f!QnGGOVg$)PtWf;2A>] 4p5GA wm\q{j}3}x4Qy?}GOʳ `KN# Nu3Po2L7%k%WgvYBIW|gpĤҝmP9 jG璇eAq"` u~5Za1{"G]k~S1T+Bl Е#!穒7Xjo޹$[䀌µ5%ϵ_$!j ,`JZ gdb=iu4qs9s/yp4#{1.S^Zx?h]OGdzqs "*S!% ߤh^FY훓أK+h\2w̼v- sP.>=p&:f-*5ͤG $T[<6Ÿ?POS@|A\6•Hr"*,f`p.)%Dѭ٦% 3% ` ^Q#PX:\Jw]BR\8Rj/.HxAe˘>?e( xBA} YKJFHOk|@&>4fJK j4cY?ݵiݪ8~jҫ<j:O<8l6}Po)bQOifswX7P+M}!yVLƓO;+hF'tJB+1zt8;y@Aia.  2E}Y, Nkfj):\=5`~IªN @'fjY{ht..? ND'=8POya o?!sbwL5jɒ] O&81>m ⛊2`c}!0?>b|`S(ld};FtF"4xIPMC}ealنGHC56:y9rөi?B8iXhnOhcebF݉B@9ZdHl0bwӟ@3cU20Mn H4ʬEnd:gNM2hT=0wŤRbYHͶ> ;/ /t=Y>^<0y Ior>>,)nM3+aNeS>929ey?S\gB}WDmہsl%D%Ϛ$ } jп*J S\ 8ՅDL~f޺q 8{ioqijdq#kF~\H&3jN gy{bW't|N򦌛x8=՚ݽ!Ɋy%tׂ0< ϞI3ma?ʅd]oD]o \ QOMe)uUӠ4NT P} |D%npv& >B(]ӽ !SيС{Zs{,sgԍ6Pssܓ:i_D1ȲQM^X&M'WHu-FO?F_-0ō$Bn}4I Gݠ(m * fG$kqg5f-gLYiJڸ?m@ܰ%^ xT74qG Զ1Vmެcf(g&Q{[҄$ʲV?/m4j5m[ IJ 0g(/:x6p{Gr 0q~xA 90ce̲LtU2aYK 2RhNh$x샼==5JKj[Ktqątn\homb3fOP) Wβ-#Aeh [U EW26T #펃3^hp(ָғp=(qT` Z8y'x_(XiO\;$HmDQy 'qE#^RQ7Ӧ`e&;8GV__ͶڜSg ʗ$#!/FPH4W;p,M[=orj+kg$JNAlR@SOn=K $ @H8B1ldx}0nDB_VmHZ9DG­)adCNCO`\'h%7(rE6K!ѳ{iaxu;m=losIS '|'>Q=Z};m%Xq|gdN}H1ywTgPC}%#TN%mֵ(l/txDym\kHTlZߚ{2.fpU: /UwJho595K?xr2+C[L0@*=hpP|V3<Ɛo>_VP{;8*&Nv,E[ZD6drmWݦqә#r ~GZhk&;@ie C\L2}_h_;0P^T[F<~!*uSXR$rU`PqxU:!L3)#lO?} HG3U/pDkCr뭂Ni~6%!Φ-6%5]Y0<]O:AlۤvK#0u4XJl`DbOu92iF?f)RB$I 8s]U }9+¦R@lrjh:%׷-)XGypV]>mRL1JXn'h|9# w?jHEפztѵz+N*L(OٍFUU3d)U4*馨kՇݧ6ʦɟ3y:^㵶'"ϵ7 mK̯:WALMFW+8@kxWd Ϋw)8 qדM[xTyl;CԵXgn )Z_9)+MlU 3tGtI|k~#S4-Ve G!&p_MY Иa%?5h@QZ0MVfXwiN֮<;S;Q),ąԖD'8d6ۆ4hFА3'|\ї#9泐=ȶp.%_E)ݺf9$ "@ܟ߶ypeXްxB #gXk_'9D k;}{V[eNU4<=9Yذ YU%~kx.zvd{b>fӇ?a,ew6C@57+~ J ZA7ũ|^fY.cpZgXJ$oJX1.K'(NS?7C-ijV~jv%oyͽ w˻hA,#_4բ9d+O)O..6HG c@s&KYfWٓyCV T+Gܵ>\!9x =Ϗdܭ j\1XH!,/Mw1Ğ4;^EpWvKw'I`+|kAm;3/gaNnmKdJSڇkewZ2.bRNp:''66ts㉴2c{Ԃ;5sf"KS;x%u|XFXz$jҁ^̢y 8}|pOrQ˵l?r^+*PF;Dľ#D Q's46`>knV0&N"'`-u_yrz}W;o> iڇ=8B PWҾ#C7x& ><+w~co& P̼nQ*1w El=W˒ ,J%qUj o$ f>x00tރ!wǹה+YkIdgA/ zY5]9s('O潟Xdq>pH!5dl "omb)gd_mz}%) 4)2b侃 ނ ^0va='4@m!r  ~cv׉>IgūY6տ_`q66LC\IU5O̥EۖK1Pb =+4 faIqzD^ZF r2ÊJ _l 5C9v4 <]SW}SxpXճȗ uhܥ{[,cK,O,kݢmTn32%3SSON;FbfN襮K‚68j1MGi IEQ?<-s,1UpTE,mYc3HڳB5x&.O]H"D+ovousaX=N1,~|H%0,nfECu dm[:U;3i*CG"fc lh/fl.y H5o]/&I-hZҕ!+Mg""I ꫁ F_B Sq*-)/9b"[ #/ 6n4 ʆs|Fϱ2L8y`:@b546:1E(+SiK@8l6rDcfÔ((&):(\ўq8(B%k&g䟯S78諴VNqYs箥K17ay57^;D.ؤG5V`S:M{ ۙfVQڷorFx жY<\fu4.B!r<Em"w**x u lx..߽_7!@(JX3%IQ`Aܚ^|P`( 2w}=PO-ܿUw%W2R 0+ gy7 Q)#ZI@^&-"vy&ƌȕ7*_4Y7.kz 3d$ڃ~i\|R<Y #"dc )[ `Lg̃#lܴ:)DjWuxNMo!k"➽>W$"C^Jq-\Id>n0梿%x%K87OY̦>OyJ9qCI׏ɘb*e,_>>(TJ;Yb}`44#9c$lUi 5#g_AبTQ QT2#7D^^ۺ5풄qlN c[)(D׀h7V%Cc$_~#4NE>vȽ M_iNofaa>s+#} WSp ,fEx[$0miEj6 9`pSH?x߃X7;dNB~i |S.m m43(:K՚G5yL5:s;~B rov+6]W{@N\+ J%!Q7̉{ \O:,j+a q11N_-ba>VZ;a4Ncjrw?Ggc2dl"WL']Dm}keq[Z1oNl\*DPQɮSξhأDD?2>;|`NS15bWp S%j?'%)o@+HaD!h3{!@S9U[-Eeht׵4>~SR |rèz7JվPMy.UѠ/h$LkU \-R,!$NnTx`=65zDbС a.>28*ʨu$ԉK>Nr}(u~|Νw.ո1ӫ܋'oW$=1ʸLc[6s5EŻ.2#ȧE 8@$7@shwf^ʏ6"_*=]RaP Λ0a15D4P˓vEֶv׸ԽoZķ HfI9^晕2$2[`0"ͽzĤۏ&ajrz?FEmlm ]=}/+Iz^aw%Mqc{yhV@פD%ne5SGN~~#cr_UF׮5`` 2I# Fc-UpcNĒ|څH*NeFSy47W݆ш/ Fw}<q_8 v|gG~GDtP*$Am+F]夕`%}\ڰǩHLdڔ0wh~"`4hjM'Rc"ȿf#RiV <)>U&T ߔHU.ّaՒ<$56UUU5ަ%&U"^5ZZ]$ď֐aV_:G⚊먫|pφt봴)]$٥5]ܗomCBO$VNŶmԜ[_&SJBR:2_*}[R bG͏%G>TNZm )8m 'I`펼؊gF?@P!ƤHDN@tx2$E0q}}N9<[q'@--]77:h&;69VFUd}ّxM*ӷmM5K#5HlX<2H" WwA!vUJ,͠z{W^Vs~~]+Z9wv295c/SEȁCa1॰VwU)Wyh i`xY7@Zf8!l6| *#F<[41X䁏\hI?$0FHb÷~rlziu.9Ww$`5 u\Ȩt پdzb1B|caD2U Tpj˜&j*0n?l>b6 @Db jx @n f=w&@d_N+9]=܏W*ϸNc||Xk{#K< c'1xe!M15x&cS$D3&>GyKbKxvLlB]!:5,a3W핗/Z`)>eH/9ᗟbrsQ,ŷ6j/~$<)7 3DK:Ӹ뗵XX vLFq[ᴘRqz:1xL(?fEˡ+!]uz?Vhh: Y xfCtKB$qZ"!̱#C>o]ï ~e{2!T0I0~ rMd:!HZx$6dΡv*W~gF0_$U"4O'}!m-i=IнtOiHJV;ա*B-o,v]yhE? k//ahiN~n(1P74(_ 3BV΀>'ini~tL.? Ƴ2`W@^>x=#R=NecTej׃-dfH?o_o?_Iº3ŽԞϸ cJ 9>^GdH@5S4]@-cXe"Fc1J2DUm.LQ?J(Vy4u[kKAWkIX"l& .WͅW|YagZ^пn{X>|%;\K F˻+6{kKyxe} D e:5N)&Tjgn*r]^ܔ2a_{N)5Z@̫p ^ɥ<6>,F oBvǵ8]?a)w`Vuk&j(b8(p uN+F4tfp/fқJ u(l4S9QF'iONDd jd3\{heR9x\&E3fKWB\?SЉ1:P;#i-pl%(#AA#u(0PJ>f fOƬͼ<0>׏XGE(qJk$%A;.YJȳq0W!:l}h8 HeV%eʱ&9RG+ܥ!,koyrvWT_u2h>1*Lh`Z#кoZ@̶ È: *LHKN +I DXd¥z"Q,15>Rh]øMZyZ=Up[=ZE #Zs䑹I"֤ ]$&ϛ de2hI}ĞMSJ6jYɲ^竽'^o?4/2!&2.* /Bu,hw/gRSoebp 6T8#aAw,JڽHWx]>%^ÊNXX70^q'6<-by Zrvs}vj&4ש@o۠K­dYk֜fg/m5:rξOk[^>n)k?ǗͿ!ZTANnK~DϏ.O˅<̀CBL qF ^[bYI_;!"D6,)xC_)(4ˆO{Oם~GfA+ckYһ^ ='h3v2Y_D j=]FDX =wGC50$!&9^k]>W a7.avV pQIFgG+T&vUdkP)`ưw>t5B4?ؠP̵"? k#׭Pœ(o@ [#ވVMlx 8jlBGZ> cmdbx]-9Ec@4G`æ;,b2mDm5bߙ_E2VDıvՖ#[0]} ?v8ZPûk%' Ia`-J[oL>X"cnO>HA}y/ltD^M$MG9d:{gOr_B:*kTńmIJHz=|^P7>@37"#s{WX(01D֨S>G\(Bn!ȦA,\Yz20><ue(Hn ,qJtlMյypEz%E*!n> r73N,oy r0K򱽃ȃG-U"/դNqQٶrr's]bWi?BDB:;,S(7!2dH:< ;NUw5 [:jc8wٚ;@ʶҺPTPnpKWp]50b xue/2i2.1R/I^|ԼذtvoF.߈G $1qoo"ռ$zCtJd9=jo97VG +,֚GW?US k: nϡ?H:@cِH8pMi`@l42N}LvlYgwVǀKfA $xGO~n^'-̶'?&(Ka3. ݊HWMO-M?$=mIT ?w.TJ,O۔5Oi\c$ϐlE(lɁ3dM1sE\}vQ(Zm+CiU蟦8 ͭ9'|CYB,} HiyUL*?}21T3yNT28QNsMd1'ulI}'{Ĵn:^g8ΟH=z۬@@;D)&߸^˶(]/t. bgTҢ} r}ͨ(+fn^fڀ>+C&zAnhȭywN(e@3Qʚz_6lE_(\UѰtiz*?[.33#_'9 :Q' %h1>94>d{p4bOAxvA#"?W8'u$g5ėu$׆j.1d0uN^%0zé "1sl,+ozR4ܫN xTF !]jbDvxF_)([YX#nR Jl=(_| VO$2ҎS(нOt+?@lCRߚ!Ba?9NNwՆMBVͶ]A:n8։T}¤G]Y_W-JaIIr,AgLÜ?F agn<;IN['S 7Ѭ-8W.d-|b`ⷐNpZː _N\)&Nl*'t6Oȉ<]!IX:mG=#>e_6*eQV]ξIM l h9rB%.pS*/qU Ց#z?s * 愸?θDoEl掮`٩,+^8RifM;Ch?y+ yA-솅-S'ʍ&ؐ%KVQ:?DǶO#q#iDK7>,_ ƶZ7s#G"Ub^M.X#uD-<4(eNY5`jٖ3xP3}[VSBJMJ t)E10;W*&'qAibSuW_CTbWgq>]6I/Ȗ.5 A}=aӋ<أh{/ bh@Ӹ@'K2hKb>kIAa]Χ ] GcC ]iYl7N2"DQ[.ͲUo{2˅.^P킆q^;`pIkôو_gz}sNkUc0@&yڢZqeaꟺꍿ}'Wd}{ḕRq&C׬WV Qݴsx-ۜ,_zaT^|mk, D˺Lӱb=M󒀦o9&6=vjt)FoˀɤfÚ_Ne-X4(Glr_S0iUL{cWPa~i: 4Cr,"gnƞxf%**;ؘ06 # J(NrҥJrDyAUIC?Q"',O@ĉ+'(xL0=u ;uAlPv3f>%1hoL*wn^4kM=-|mo+'pDM YK<,"YEX@L)ƣ ԻϘ,=Zp$|cXw0F&3^/Q0*yWpiF;ӪHIa<AiP#We ˲ 82DO.3E{;Lxc9S#Ym6$uC4jg'dL.~=N#pK6ʒ%q@Eg&}w|ÏFEc?zV(ǫ>CJ! H:]eDPʢYz5,PI8Y G`K%@j CB\KҵOט-嵽3nsc?O*H s"΁ɪԻ#k6{~5oVo k^\֟CVfl| Ri n\E=7| ;<|5F) 2B/~?wR 86@9WMB1%NYlr[l6W.TZ+N4 kľ8jYgm§^#~ ˨(_=+ bH)M&dp(bp!M7[@=o}[CbG) uzs* ;䎬W*cu35C߭;v*O#KmG>>~Ӄ^T/9SRIYq_rfGofw2K<*l!lo *ȇ2omg1Ջn2UbS|ϩ'Eˉl|Lpud db $ \Q9vz"Cyl*IҧHTKӔ;EcݠcN>dhW-{n Չ@Du6rC郤T.ljVsq+k8nA5m󃕩[c2C΀_oܵ7qE B%Y쎙uZfViOODghx%LֹT*'?r^oף <һ>Rno fYܷ"=m[@a:{~[bׇl"r"D)/@ZB{@*xr&ʚ'`s.iI ߃jlZT#cǩ ߧ!Բ+K 0ɠ2N h0 jP(ҟOٞ鐐!gZp)">-g[SgtFdЀ(ۛ_1`W?JnN~aSL}jKBe9JXD O>INH#p]m/\c)=as(dNQ Gbű[4d5j':GxsHi1%7p?;&mdKB;ϖ4$3wGDQ++{_<1T?efnZ-i/_K"|HIsѝr!ϊ'jBVT;t2 ˭@M5s3 lLcm#.RTIPR| )JGa1%cCKa۹d p@:P,т.SbVA>tswZ)ߦe].iP G_b}{y?pH6M >)s)W幁;UXF"k-"cJ2T0r'W0L2u=l\$bȡ/-.pajQC4p3uS-fg=`~ST!Ǘbaav>P۷)dfxe_@Tjޒ9 {=6,:z5~s-P`;A 9}8ۋzC[؞mёYvven9,z$q4%(uBB;ÎNO,!#aM <`1~zmЭ4K]z48` b4}Æ{mH\ m OiY;>_PUn#x0`h&!S+!Mw,:!}*@X5RH1VWXYxLwpX{CCF}~WsGs@厙K ;scdZghFt`D/YZOg~!ʱ{` J%ifU|+0\lȺ"GϬ5LBhwoK+A hwý 2:bDNLHu&|\-HW3G!mwiNWZfCNIz?l^,ޓ:˜|bhw#`ˎ[Yb^eeʪ $Xu񟑆Nꨤ(2 RĭJ¦ bS*>}v:'RG!C'uYiJZDw["x A=^vXs=#NjkFL\Mo=>?>N̾P:3(_\j{@M?ns.yHFʓMGWe+8 >X QǢTHJ Av|;&][?8ߙ]8_nu,:FQ|'H-~X#qeWln7`{Va#R %Q>XX`O.tfxU-R}oLG$ 1} V K!鷸/_xG.኉ (c/Frz[BFb Bݤ ݗPi7vmzFDu.>g1RⷄG>IUQ+qԫ;=inC!⓭0P˩&J'{XA+8.մ څR:/FKw!ձ"eo#6/?G#ybhYyP=[;ݡ>^j-y3oY sFa@t荚㳖^@J`z% <U+$r(icckDσ`LBJ?Z{JmjHS[#yGOpzgeNȶ~MN.gmi#Ӈ*B aJҙLKE>1WY/B%Ur /-'MtlNCաL ^^3_!eDy!,!; !CS]Y~={`9 ͵ o&BS<&ȩ9 OzqnCZa[ ++5'p^cMnKKNWM'(JTk4p5;_VBBhhI-le9+ӌ=vòV#wvlMa4%FZcE`S_dL+gfMB]/+`dI` ,EόQN?PMo[R'ZBҭn%LQzJQc_d־KD[.} \;$.ڐ<͘6=z9V5Vb`l=8RcMJ9Cz2Xq ٙnJOr*o9>e~7- J#T6;# M}"NZڳ{FmӷZ?ŏvfD^`s!ѳĐ\ԑKpqAXVrG ?e-G<;kt3; $NUv}Ce/rc )m=- 꼿g^>k5W)`B쳸`nSVp,Ӻ?!q=8l;Q^)|%OG@ &QRϏHK -bJѷQy5{6ke(>dԱ@dC~03B,5] vA?_nCS9g=ڑWUD7l nB:0݄T\8uc_ A9cBgia+F`LGh&o&*Ryam3s nd(Crj*Ǻm z*ja A4 0F8"#b]=(_( 6'H_L5 搋v£{*@\hʜFObkALw,f< ZRu8ߊVnI-{z_$3PS (]M"=&qkhbu{T,Gj0dn )2j#F-ɛFXC~^s(oo?8PbMj`9dyPmO+OlRYqUBa'2K0t\).Sw;gOꥩ`"O{Q. %eb ֵO ,:qg8̎#ny}L:_%`Ik.a(1ۅNjV5ޏմF*=PhjW| Awd.% Jݝ" R7Y(B!8 {xrh\ UxEvLLibkA6K&/% )wtܫLE]TȝE)}FUq`#1[-& 7\)ȯf*.>y 2e]HBy{Yqq2`R틲خ?)@+:, gqvAA^be=J1 l ]R0_ 2::'uc4N299/S@<;x_0z1L/N2UKX@'|R(S{X+ hoyEJ5=+_x ΙEjD2JNl p+WaPoZY[#^Ok:׏n*J_Πױ1|0-3;jj&XAbzbgC$CbɃKUPx|JJ؅0e1 #M\Sb)[ GL^$zL'<{a(gJU̇?営 Ű}k<T$H}Ƞ֥Rg m3˕o{C2bhݙZRݣG흏qܘK[*D@|Y1z;E!}~em _'~1RtA6Kn+ϩG~SaN'~zIJ|!1g39vO<.i/I;EOɪƓJnԖz+53aï}RlP@}jyۧ)%l0Bee<Xci&>ago9 D[T͕K\]ϝI*&>9jvHG3?oˡ"uI_KOҚ_T"ϕZMgaՙhG[~to)t|SrbH5/qS[ρWH_Ŵ N)zVj^jDsNWbs)oF+}ܞYa{씓E̼ do4Tպ6l7myl(C Z]5ŭ/f&YP++9Ss g/As2W(dnV{Yݳ|-QhZEkR 3u %)(_\:m^S'4q3GONBg~LL-MF=lR#Nw +{5qs2}HP_(ja MGZj^J+}Go-?`TfVy]:YPF"UlQ~f;k01MɜPaZwz1_g#C'F_+"@ke߇V08MXR%R| y5hGPW76HІ\]5a}jh棫;1m #"u퉕Z?&ޟ 5}@H}C^}sԧ:o{55|C!<\,@W6q5yotbS $0D@>Dƕ@)6ؼ۩ֆ$-TׅewNɯll|D[P>߂)TV樦I,Kmy nCJbx]D2m(x9!h)% /ٹlh`ɳ07E>= wrP f,Vx6)U1WwJi[ϧ:-nؚ{V Nms(U0OTfwEOi|-^z 1`ReWB{(L 2Zƴ1A"9˜W8)>_iZS1rJȳ́IܞY[$^eHeLs JK. rIi~+< ~8ܳ O4PXeYjZfFm<ˋ2^<-#TTΐ+zֶm߻prNLJmBXvСJ`ZeE<)ҼnM3kurT ]ܫ"N.QPOEM|MU#)a[bUк2ۧߠ۬n g7E6C.mH-`?0+mX`srM 3zͳK@Lo?h#05E( =9"A3$qs1 Nj^vwv#T|JA$PBty q]Tp9+Ei`L.fUOXdܓ.ݠ߸hZ7m%᠘Pl/ۓ~I'(3??E*? !kCBuL%65b}lM?uTk5}. H x'nmC2h(j*`}Dˎӫk?uEUR, ߠToo-yϴ#ٹ?(rį~^;.i:u DŽ{^j4w-5_ӣ-%eY3#/܊j[ֿ*AԫK8CGGH9J[b&@5^|Z#fy4*#o!vU )zH P3pj f$l&dN-xy',K]8r1]9d XDIoO:SvB&) yᲣE)m[MuzR2C ]gi3S'pmw1bEЄV֖>GӐzF@U63?EY+Z4(-T]nI`phM}@Od[s[ F*ύ|b -+C-+Z{saZ-1Hq+I">_,-ERZ,l+vov:Hk:r&ȆPiFb.:q]a&Lŕšaieٛ;6D{*· X@Y Ƕ ~/pPvOv*<@5M̥8ۮ{#]6ܨ W|S>1Ku *=}ά7`=$ NҲq!mb o5DR$V(hج1Aj[{(/1YܹT5YE˶BT]~pJ+O&}@LWC tI~n$[>6@,R=`Qu$zL3ۺ+{mƽ,"]HLk%nP5ZbANLy?톇{=^X+lKn$4+e5ߏs 52tsXZ|˜^f;,Ф: pit$?+孄&#^Ph.ͨJ6詪jz$iQ?"G ޛć7.Pl|:6RQ(+xi_eF]>V+ 6 fAնrE5v(t Q I O[DX#3tE|^*xTȾX$/Ul4)=\''"1Ѱb$l)b%ӹ_QSd''NͦPd odړ?:h/F%Lw8k1CIx5%|6m 0cj:D5 ޳|Fqƒc5:ԕO^f%FӶ&L-CX= D)WJ*zq\V0ctR}k~Lq$\C)y"ײ=n.V%XST;L+#VBc^m ^M@7aaC?-H =1c}#A?4X5SN_gY[+oqM'8 4FLb1鉦aupNx2T эoX: <^*[؛ʫYsC?Cg1+7ni.N )~>nQ nO|u2&sah-\ilJcŤp ȏsI@Rヾ|9/bkt;&T=-J ,nUNO&oov1كy&0 QG´1}oe] hȥJ+KCr;-^I;(QR1Q%i1* ȹ5y;jQ`HP-I3tfo{GQ_b nڙM!1k#u)=t8p35c57A rpVRH66{(H7I-sg/+}u׬Ӿ֠`J1ߔƒ7v?wβ 7D]QϜik-206S=xRA|_hߓd^`m?kVX^q煎,1Ŋ7fC)Q /W;wZ|=kԖBեuܟCZdOaf=+9қB>Иy`Dlѷ '֒_s-#=glފչ#0 81 Lo(traj> %ɝ0<YFz7o ժRҁT}D&=c#fH5lb6DhAWMRь`nW3ZͶ8ɂ޶DKralx@HSGWf,n {lZgѨH`Ο0cϛ  zyøk0}UQս1٦*tf{O+[y85Љ=MH7tx5@˄oR:ʘ~<njhD>AҀ)y iF Y蝄KZRMQ!zn?nD5쓷.Rvꎹvy`{@YXU{7 aA5nS NLћޕ$w!)KTg]>PJGߟ܈ȢLPܝ;sj8Y@]<9&pYLjf*Ϟ(?s-m@z{XKwB⿑=$ L| />XO / -iE?%bUGD\)Ay.hAjjy Q0 ߶ǂ?a\25N /\^]]$oPOje4@ tcba첺=dK!F2u'jO !sJZ"z| a65v]zPnZDPPi}@:)`OE\Ui%5$.-(Ȇs/8U@ahyz)Ίl F<YUp!Q|pQ&]nj%=jH" D&{F#P/-*er"MyApVk9y*о E=? P1z*M;duH@,@gcqNy`Uʮ~2sBJhK>"E!HsUOXǽg,sS 2x(y⻣r0瓙?VgW%X3C{KK o$- 10$ss/_ᰑ( sH6.hؿW\P,jp1OG$c,Q,{ W&QgdLwfTXjQzgldA1~F(d1–j$ jTП΃u\ERF|~ywƐ _E{ܥDXH$@{9 FkoYE $㺬&\ XZ{&.. /HZ$YފgY/41b:nX o',\VhTc 0?e5;*X> zV|4Baqu1LeJ3R <:;9RPL[ӧ>ݢ >mwlDM2tƶ:|o)U+>6sN,kUF6p~UygvRz/lN?@8LQ|8Ng|uڔb/j 4Pθ)tqm/ 0o@Y!0 hu8;=+#fx[J#sl%x]tK_1y\)EZB֟ɦg`DXv6TVl><lKeb^eW #h E~D6?gyT$3!DrnkaաVtjҚ%'[ރDZǒ킨u%w=I]|7MͳYo}/Л藆vG.c&Te8{в~pdzio}F!xeKA`3C?6^Ze5k4YUE;|6kO?dZB]UOfvj^$if}'^N>ⲹa>6/PCO@磺C)*k\`$,c(C\Vٛ%=n}ӎ =g -glcXϭfp=C瞾"s D(=EU>[=f2inCmRu4k7-NyK'YЪn  ^PF+0fO\-oCn2vh.!m{0H1 $$xoZĐ&إth\<|U0Y*` =@sM(H,_ Vo^{hd}Wu#p?3m&}Tޏ͝q0Ky)x[Pq/C=0zv# !jyĊS 8ʥ%Qnc*lUYu_"NŭҊ]m'6)o4#iq[[RUs\"H,hNLC 6KXBt?'s3v渑C-z"^0 ˜: pi}{߽eerR*jBr!dwIllWӘF̂!^aQ0f <eݝWa!wg:aoO}QrgJ EwחjS+%/P A Db iR9b%/շ@6פq1mSX4~Vz Z3+e8{ha"c{Ygq%9NWf-[K{P䎷@*%=)7<㨑kl, eAwm$PT&Cdk[;^{G0ʨ)17Zp6ҥ^e:4?@(Sddal&.D dd{>AX?<qo.; r% /u}Z w!~Ɓczjcf޸h$BjL+}q+/Wə)K4mWUf|`F[ԞNbUĕ  eU&Ёh٧k2!Q=)4CZ%t3!WX3vSvhsTܝQA :7b^:hIxCx[ȧszTVLTgѰ-8ܓIveQNc̱e o_ A,;anˋst(bVYh[j\X]71p7~\ag=پl_'FfQ9ttht+fd}G̴]+zJ(| R+^NS]/#}uÙ`䥂XeEvtr-HKu#Pdb2K \TTgmIȸ@X"ѱ@@bcW+|r!%&&cbU`u`Gtkz<h}&JXE40`sR~< KL1@Bq)! *e#[-,t:t2^U^Ug"X.c,홼?Jj k.ahMq86흚R]V"7+ռXzRj[7Unzsͼ$r c!.Ŝ,ӿiAgIet:ߺ6E|UR3H7:~ySc{" à YŎ֒<_)#Qb=XD`LѬM;&gg~@8ĽDRZ4hcڗo=}X#[A,Ot[aj-·~z. P?glApGLQGH2>=ʮ!p z6M9 ןu 49Hkd2Cc~ @,V. ?Q[4"˚dS5^;$W#^6V[v(Q|e@g^4*lV›CU1%o9$Ӕfۥ֎1?b>֧+1ޯbagk? gٻbQjk+|Y[|ҪceȆ KhؚxMPd"O3WK WY"N hv\% WDjoU9PQE&x\YխUNjf3ݩ$~ri~'6ҍƏ{JYsG_+}4:@m)T+P[v.ptΰ`fرbpLx|d U_ze j^[JBN䧾2sJ-"2A)II;]Kߪ׳DQ -Vw(wP5'.LyWjs]|v] sV]'BKvA|Yؤd[ZyPϨHMXrcȞ?w5ǟ/ A:(:cc![?'5*i䗭gpYn4[fDC6K\-f#L1e%էH Z$ Ԏ8pP$5K#ӎ) T{:to̟m2a z{l3:{M-'@ p,0>?{69pҧo<<DEFi#*yI yoF[zNDuLʡU^y3"U^C qO976pW:sy ۜK$;rt!_[º`5)IdYfR*$jqd9G o_Ĺ!1CF\# HB%v a< =b&1#Xu%BGH'堜,۸\:i9?{JAaA8*{=8tP yid*$ 5 v<q%f)-p|7!`ۓbÜiUӲW^lk,?q67p B,%RGt"OEz3OD:acXM|*sJMF6|zbX/r.qlgŷO̮cQCyu#s4K'c9%c}圄'1wiwV&UgYH(Ȇ oBZ͑>kv -E54@z6>@FOA'Y .}zoevM1͘ȄM҉;s:Q`)j$F`ehӃ}v'V~"NG āHK1,1q)ⶸ-eܗ~)|pEC\Fxhc>7GOD" A"hKIbTM"OCtJ!BSBJ#nQI*.Rx=f?4㗲6!"X"5hPd|E`->aCIqPW.}8^3_H-(3?Jy,iǴBJPõCC @nhסM?v~橗AѧޕMf3sX=G_4X xd7_B1hI/fTI#׽ψ(P. DR(vxlˈ<X'3.j]rbcp0tQ(u)+,2VQL% *i01݈j9&Y~N3.p/Bv-Jc!(N x+HX⍶fr4 FJpT9PBcMq0 8@[-Eqمfȡd\=N7n2-n˪Bw 52^(/6:(zŤ L:ԣP#6sU27 /6=p&nnИϱ\d^ѣ썶h<`~8>]@0!40DP&@ҥ "`6cظW!gk-N<`1? "ß _߶ǴՑdO (+K+%0=ZXQ=VͮclrmP# ؐ@P)M4|!g (qQn0km^JKLy5B-YƦCMxH[9VPđ֓z f>Hy7?U\eNbőu9JF Zo4&H .l~7^UA!- gn1MFG]#۠ӑz&YF)_=I.j 0jT|It;OU^1wfK{;'ɏd層iS^o!Y0FE-a5&Xong(%sPx7sҋcqHZ  Tڏ;O)s.XeñJœRI>y.^qd= zI R"qyJp"`qgseMC1P=R-7hXtu =JVtGڍy5M MM@0<FMd5"#ʳ?MB}\ͮ39L\}k/[O@u=( 96l]h`5ʉa@=Z% [Џ>&gyc~vw `kʱ}!#yߞngRYjʟм5acD.:ItٴPwEωv=.bR&T%d(-,Ek]nSXS^jghnڪh>Kġf9 O4hàҵxȆ1#Q{ m,C[G!ڌģE_j$$T`ӽBE BB~>q<朰N#_zQ>m^M=Џ AA/7v&igrT.K}@T]vܲ]SkڦmSK$;s{{HKm+j;+?W%%\OXG%\P5vTgN\!J`NT#E.v/3&ώ9qS1*C2M]F 5H(* zCkenWIh?Oa N`DMՏ?8>lǪh.x.%?PINJ/ՙW?Oש m~`P*]>3چlCD 835̰CyZJ+m˩**18c H}/z ,Y_6E>UVmyjqDF@mzn΁1 |*NS5ZGVnVnru]|r y÷$AT(zv!S K ~1GI>]$"8@[6 i^|HܸUͶm1b\b^ ZLH: _q'igGpxuD{367q`, OFpr1HW|5܏~=0ǧ$'0 ֒?ڝfV߂dK )! ٘2SZ 468{{/4v:,,NE`%},]uTAqQ5z@=>A'u]µ4<9n!s/I(]|=vղ[i.c4pÕ Z O5( w2q,D{.u;vLX"Oßo6S#MX2U<.\/mXU$Vo6ksU:Fw/t5|9I=%]:d=tW߾hL13滱֣ĻllxҩMLAzT~||xS&J̖;Y !UZT'm;@]ٛ _./QA/_pVwс@D=}q[RSj1آZ5FDZ-KC^hD_MbɅ!*~ӝhߝ}p.z`M.Ÿc(BEnekd4}|GaŔqmjkrCZ b1JOHm1HDC/nQN3ZIʼnu46PX:K`Qa(T w|VncCvNJowJ>7y4ƞ2ZF.츫_[_5:]D}u\se_OzXz^KViJ“8iyf(<ykъCl;$W_5 sL=aZ@#']@(X&,?QKtJ F2x%.e{V_?sh<ӏmSNj8vĊq<ϰp:ՏU]!z!Vm ĺ3FyKF# giA!GD~RS{5CWΕd' ') D2'6vF>ԎlvgC8d'\8SAp͑;K;&*Y6vxȜL+}hwfl -GIܟZ!]4ڰĊOk,&]~- K`ǘĠp3)GD8%KJCl%W2C(F1 0a viJ=U#D!:$R3ᔦsóN#6c]\=0І_Xi8EEvݠVUi IƩ*1y6^[F/X IR#h3Y㜪xL;w'9- `8n$ACZC1+.\o8-u ` eɃźr~Q+r$۵@!,b+Gµ.:Hi61N!͌>1BM;B $e^&;͟ţÅצ;ozܼV6k|6+ҁܙ"DkDAuf/|i[qJXZ"[)+TfDdzYEfwpݝN쎠ɜܾPqla:|ckF9"!kgj\Yn标Uu :`ЍW7P[I|:OrǨ /TUgFt'^ųH ?ɞ*-yŮ L#\g^ dZ /"{5VRBC.C3NbpQN)[1:,l>MiAuG7:6!̦&%?NlvBs饩\b=gfgJrFWqV<{nmTyt5vVb|osdB0~  ~*KYW:X23ity p@-z.̊Vd}ŶhҤ"U뵺()1L>X.-vxC {e7 gY99񓽵$9VOiyԈԊ BF+fEQUR%cֆ'5XǨ.z5VL͉oENEG1tӣꦡ9gzi8 hNˬE\,ޫ _6 t_qkʨp{|kFeU$״_~[Ggk~q#)nEM A1-촞so Wb$PRcZk9 鳎'e`D|#qJ\J1! `2i3v%W(6F:2+J^?@{ɧ xLHVo:c,~0i^mLb.]d^Ո |dlqݕ@ 817bs31$ȵ q:?GXxnӉW^ˍc{s%f&rPFGmoAf}}WMniۢިntzXm>I _ؒOaum$N!{}S*~2mbv8HNNOPi[,mjP? [e|A G:Be-zpּY%=eC$:⾃7<ͽ %zX/ÎzL?%@kK LߺKWmQITOrWӒsh3[jd/EqS0udyO0'}0m&vV!1ʙHTyxUN^;U؁H =@/HqDyA=,AqVӝot*dV <|n*թWͨډ~~ec!X" C .֫N/MLYYFVj1YeFBgC0ӁzV >@,͍w}MGfV+?=c2ӦCm ^JEk6ѥ` o9Hxn؄=::sߨ%16DY \Y  /Qsw\%dP&*Qi:QKG/~NgK<ԓdk&5!L)T ?#m(:Э##S+Ly@H^XI@.]& ļ?]uKor)cJip"A"\ݫ0031?d6?RF)iQK@&"yhS24&za`h钨ę`s0!:O_0O*e0lAw ?Yaͫ#n?]ғzS$iI5I]=6}" lѳ,8w;՗K9*߱f"gAHĥ3`{ 7)QL,5ğ#FኚfEyf[vaR߄ {W.BV. Di\e$~:"Tt1+xpP/eœI0-6+:)15;Y iJ>6qxr  VB12ҴZjX05jK%ۣG{K\EI.YKW",cb>J.c]MJMj#hX O 0߿ajQ՜"jګV[Do5u-Ե ޭzeiXΑ&nK eܚx~oKs bm YNV>$?AѦ-,29<_sy+do\ $Iu.U%2?k_{ 0H yvԾ lb|WYQIrDB*PomC1 Jv`Ȫ?zYi֎YؕŒpniOO:S(ޘGݳ #o\0_ ~Y创< s r@D=؂R}:V_$AG,|)|ű`F h3G7E|,'|kOUW`.'&QýQ=>pbAPY {V 3)D0-{Q -++=R~8:*ylR-vn9 ̎ڴSKr_[ܱ\pX_U&ʆ lq6%OY=fչxbc7C]!ӬE_oWz %Ԛ҇I'J8]|e~'EV<5oUw_ >t0"d! lhp+:iw4(ClI 'Q^䎪80$W\G֠$gs fr8d_dyoq%C!\>iȇ~=.j @m z\U㡩 \` 5wIGis[щϦ ;{QB[p9PGaC14mԠNK/fPvab~8Z[߽הVuz~Cb]|^YMg4Y;Iyl"y)8ոb3z.8=`2v2Q&"hPbjt6Izڛd '1 sSϷe sP$Kk[!Nd".Qf3BQbq\@^x{ uZXSe`?ٞYFXsYs>|YcřTj;%bV5=E QsZ68YSD[(2f@#Fv8/ǀSe5rإ>]+/P@^z(=@΢mהV>ٺ)`8iig)5ݟNY#)b0z_u)Er@]W8Z-!&O|B`5x7EGz:EC6PZ+-.ԽKV:a,bxȢmpFq4Izv:wHJD:e/U^@A\ G*UnH?2x=*S&KMkF Ҁe͓L #1!«w7G0~ŖZkVC4+RG0<ڷByBg6x!$}f]-̘!b֕ "&?B8B odzsI])kHM%5YM53K!+̔)7+џaFGHK~eØnk(*i|D4i4P*`FWku?[ %ť%VOg%e(=nlqUlzNt1˵p~t6 NZqEKMa%>~,Oՙ`ԏ Hkո278 ڦTG&O4}[7_ 2e, d0WBk%Yլjaioΐ%%5u!NPޯTPE!/n |N.G=R ;U}<$|-k5#I'npL>OQ^ՔG'?+4D'qc4Tn T,30|[<;ި vTe+N/N.EzJMo*<  nrYEwM=| Nl~jtp.5C|O~玁˚waM֥&)tUˊ ץ_1(bt]g>;1E7`-"nF^pR}^`ON-wAӪyɜt?l드PsW?Ld,8D < Qs=&"/TWsi(j`S0Rų5noNMc3y=NM &M޺bKtdT8̅{2hϝ[bLy2[W@O &y]cϾK.?KCUP%J4%k"4) hoo^.Dy+ft_1bJac .eyiXEw>=C-֗ G4"ecKIl'Q4\fKwD¿kQ(8 cdն07IlKI}/sۏ^ܓs -w]ف,R#jǫe gxፎ!voa&uX򞫉V5`lnA;f?p tg=i4/߾TҶ-1ʇh/Hx1UX2G;Kٝ'^,>I,Gk}"3l_; ^I߉QT@T}D'+gp-@gA :ߵ ˮ?lSԲɇ YM_tFqY%OUhC>5Ԏ9ӆRNBĐ 1G|G7FT ߣ=ۖԓM0@1ܶz:c{WmגRV"C6uf(mJ$Iz8q JEHWK fa@dWnTVL'E2P2+Tz4FdjhE2(E-fO T yQ@8d+vg5 3d^0y]˯*iW# 7T)qw^ye)f<149\%9(]}xPKfEzj7EmS|te.*!7F! (4}vdp*@4sX`k;YzH/tDVL=x$݄m݀|ZƅfD1?p_d#*3]D2d +LiHQO<Zj,tln#C3d\Zj0epی54+g:&-ahjó(,MVINr!w; еIp>л =9oVuUu:6Ѱt 85?)Zl -iGMU||m@2s!0١*!nCzѧ+sa}q~}/<;%ے{ L`#Uwa[sQolαD*#ka)>6_'gcf* ):mVY{ѯܞ_s%`H*gnĔrEgbڮ8tXB,.!l!.tv=~Fq6 4&ʺ*QuԈ=<@J[q~BaĜ׽qK;q!_>B}Z}%jO٣?cdnWyS#Ί/PE! $SfpH·#^dKs0Rm,?l锸!j. 4~0O^ӡk%<#W/{H]]evlv\kusS@l8@Zk\[&ƒM;A`cvDXT;YE!|-8!_qmy~ªd^#Uu͋\f>ȝm֟O;"43-qct簒jQ 9m 9-:ѸϬnMö*wxSxW?dZPtԷ0qNȧfDY_^J5W4у2WY1OA5y W?A!0hy;N6 cSQN<Wt=Ϭb5+2jBݧ2EԕpNQ$XO -S.iƕKt^oPiy+ہa9k%'_GTĦ-Mx3PAM{BM FB3G;\d/]~I_*U3z [U)mx4xZo4$VSkh].DÑ+L7)j!:Mn(1ޘ9PR.soA>er6PLѹ"5vT?Omߖ13YYlhAx@L'۴Uu:zoBL[@uO˒xS@ȯ4vb<\i`f_mY,E:No*pûh_CeQMo?fv/Fhd $_@T%kA•Yu\e8lFɇ.bY\Q.~&uM$ Q脎9Kboa9Ct ag@g@Hn*q]PwCkPܤgZ%,mXVT/)Do,qYi[(xUvJg򿎬pl&mYe KqGx̲\u9I~m'Z| &MSf5Vp=x?6&<]ese 3 @cSO=(<82 |NJAb3~LC'w7 n[bԲwqwn# :j|Y,t/٭kт2 8/Kx4qw2B~{#I>OVuʕ!ةO&_dk=P>F̓J]} gIv=g/CTک$639i7:gIJ&yz^+ 0Q5YX깇׼}cBdEt Uq/X+CA?f6c~^pmxQ[S34 ( x9Oh>3m!W6yאַН2*ope=ڥjDlh2E( NYK2Iw#g6\z?هrch0˥QYWSGD3$fVz˦K^Hbq\8 EekYHÇL&;Xuf·Z܈1?z7[V."h֮%e|_xHm0mJŖ7MX\hnDد=4S$9M:XS mXCh4_1c&He!AEĤ-”gfٜ,o)RtI dUH\ͦ&<4`9d9uWON3ɇK2[G*[fňPz$/tb4D@/1.e|Tli U59JR}?So5g7䍅Xb mgYB k;,O*%ur@ uRuQ48yF̡Q#u?p)sWa@88$*[7ĺ𞸊MMOd%CJ{ 1 WۚZ,CᰵP}Yi u7]U242P4Pt5}AmZgf{ ;qԃ}[NٷkWkLɕds2z)0}_;=\LϕlCK(ܻ>?k@XYB8FV5κjIY+AVR.}>3 A op]@҃d]wtJX~z\aא6rj(6.nt0c a=<{t]A#'{ݦk:z ˊŚ {5`{P^( wUlἬCָ0p+J0n |;j|\6>gP8Ę($ 1׀ Do-=O*)b"(5b$ haKNG;($~ETv+CɅ^z5~M(]1 7XF{jNJ̄Mqe&S4!<D}ˍ$v ̍¢^F3v-%#2щ4~*UԛJ{+s| H%k;X k8^9hOԬ|Bbގ.!Ø:[OOUhG`0Sy=U=zp5Z̧K18ksqx=,x/3zO% Id){V]9ْia쳮D2Y7A /%kЪb޽lU?*} %P¤ۥ)% sJڝ&s '])Wb1s5ud:h:EX-;8)/Dq>*DzaIS|*9a{5ƫRZubȯ :P1;->p8Z^w) m9$+$]nXT嗗izZ&2&}~(;<+:X ?q 3ԐJ}_8OW(leiz.(g;|{Q&-䰭h ɒ7.x`J7" ^I?Ps0s0C6M; UQb2Uk3 3A&<%T hJ':)fьu، Bzk3s4R޹ m b]_ m^V)վK&M,m/P쵻J%di^f&AΔFQPldåbbGw8oXbA;z΢+_w>BJPpGxQ8 l@kZHuùm켡x&t8S,-Q#L 1 F&A4[q|!ATil\dDeGLTgǶmDs6z86(яק잤yNnȱ@4Cx&%;̀0"eH=n LoUŢZU5{փRU-9 Lxw6+ozY875C0c*Zp-r7 MGVu{^1!Z`YBszqA.r3XHz\҈knC-.rT ^7躔2KUEP zv,#ʷаy~B[0?wR6vAnPt'o} zG!a VZsd4ͨpSvBV lt"RZC 9edMt]*YXK*dv\Pkm0DDRTՎKNWH7HEuz " aW;3'B瑴!pY̏H:]-V[X5OVMx`u# x8cw, b0:X&d E%|+ɨ{ȖJ[~b)tndǗ`Kw O1ɫcH*#Mg)/= ]NM%(}K%0+ZJHU8CL3ЏMro1XB7P8xkwWFy/ ֭:u'?i2f$mJ KmAaUw"8jd9aY}&hx2‹+\!x"|>ih,iK!4 &(R7}*Ø6K~k~E%f߿Дʁ? XJAW|3SsNǩ /T-.taVs,Zc$]ο^{K`)Vt]˲+H!VF|]&Fbr}|#֜_Zxv Е_w51V6#kXxpvB5K#ePIʋ:-FDjڳ};%-i`U+ N?=ZܘKis4 R{а=SVAJh[]`պH oBVq E<̀y8Ԁj7$*hujȧ#` HBXfZ%,` ,Oψ0 $&FpS@K"n$U7MR->!+i lֳ>!N` 'W %y[K|;*ިm #:Z!d/%) jܩQGp@#`\٭C\A!!!'p4vm؞l[7)LZl}Jm283 WY^V5]=b]~FɨSmom@Eo=:SOBpe?e3fnxPL7=g*f\ Qu!ctjbKzsm`(ci Fe¨{E|Jh=B%uڎ&&H[dyڏZEK|*ؑ;jYy*3#nb%N>¨HnN?g2pWTrs[M*j" S=GĽ\mYwL4v@ܪW~ǀQȅ'GK _y J`xJ w/oMcse@Rye,ͬmdTW=P_@sAF#j<8B%a0(pr{{puDGE?e9\(Qp`qD~ڿ3

0YiAJΆO{IxIuҕbD>¤<dž݉Xbowåhb{Jʾ )jW9?-QuR;/g<5C=A6<v@vtRpJu\{ mrl,i'2|ٿm" bk\86]kl=Y,#٩ ~>vh/c}GߓHBBK p3KG7G{B0+Ef `zX¦işMMgneh}^w$t!GoJf9ôevSm_Y9e!b U]=5:2J]B„jsNUY/UWp';Xn^KR#$@,֫_p-@h󣱸`fB+D/ډѧ]Mf!̔oǼz]mE0B5UʺmD,آ؝]g{Z;`>uR&:c+mU=((ǰZK24qܞma]'H0vk6vp?7=bʝcqw`.Dٷ߻$5QDқ&<]V*\_/Iv!fzvGN\(eRO8#ɕ7 rvQ(h>=hK'Qz鄾e!fXK[ EwMmjd%l /:LHyaf7ׂWL!m!8O׻txk=tq|yAi,뚿I ڮ0+ 4 ˩$22di(W2YɪL!!@[S<%ϴu{iwòc׃n-+~"\ F>pV@C3?w)4ؠ=ˮ* l׈$¶Y`fM;#Q aBÇty>l=GM~[jv#T@DlDB! &.H$F ]37AT_&?7zj̤b,Z2%jozoρ=M0[Drh ̀LyS %Dڏ&["@cO:OO(3gWAfzU .n'V\ @1JTYK ؼKRX|%gA+֑nl35EB N -R-9⛢xǣ+2)qfr1g62#j2Vw,vK}m,@d_cÒ cP=mB0,OQ\}XPc(4c_u]#l)z W,lX؞8먘򿏓%~(ҪZIGxu SЖ :T fK1xd@ͻ&X;äDT "T+/ u\}rY)U1"4=z2@Z:[ naB80Fz93%?j/O@+ݬmAa2m_p3~4ëD\D/$[! ޒ[or7ʚ(x3Ehv|(f撰T/-T$OYEHyd:B@YG:+%ѠSfDO>G@N6 CF/`sr1G }|5-]bwyt֍=W2rm0&wv,0ȓL|Xn{W˭B2_K(쉑qV~cxT2?#WO;koEoyDmj\JO9bU޵lų%UDjwGTDktp͋ޖ>90u/!1oTbec<||Rk\ӝWAOory715cW&R:|̫ I'!L;ei-y&sOkB'i|þcf7KeQ*ȅ/"3" QLgzbX;X:^-]3XUټ ʈuuj8`a.nB9Ax£3d^9Y.HT] '^|W&ObcAvD MHO5j.23 k ¼9 ngwhs$Tel Ix]"eR_fuEܪe2ȸ2uD!q?~|wN 3ΚZ?o ?`9"+f@Z`1<伶I}ftѷJ5tޫ̔O_Ty KQ}IvCJtnzNTlt9s#pqߧb}*{IL-ٚ:6ss`9WVMd Δ:+HGZөc]yIƈU5 % GUl Ai:z^߲`4,DDh"!;Tjo6ꘁm!P}5-PFZlpٕ` )9>Ôi%:2ՁA^(0tX>"֎p*!S!W8=Ul-5_[0 )ᥑ,δڭ# 7&NK)~={әW7ŅI9/HS*GnPߡ[ߵ =A9mh^/[ 7=HPq2ÞA95%RAτȚXZ6CcuKmSEv/UR"` n\4/ןR>%wS\];`¸QST7N{EؘLkF~֕_40pCiU#iтOdDzPg>'lK?$Ostxe}%dƹWG6Z\j zzǨle}֌pCJ},~ [e`KQzJ[&xMiI#rju&jc<ߓ4 %Zi,`~̵T7G_YwFIqC dіhYB2c ώeKWf[+|x ]jH `X5oRg6]=+X$b=[7 Amѹx(1y^OT)) ß8d)ao>d_CP7d7QMg*jWr a酚׋|q.N9N 5V]eloeO? Z+fnG7VX&j>Zja([Wi|~?`l J,fe"KjO)2Ј  ΧL=c;N(p< ́<Kr}29#z(k @qYZ^86d9"_,BA-dNs;VfqOL3[]yql/KS˾Iв@4@Aq[t~J K[HifzR7H9Oߏw^DA;J1Z{2gyL҂kKdg)[[ :͒ϖe*د}.XX)d׾ME99;5E) _۝f|ʙmQbmtͿ, .lʼncGsU`9|2<+ `} 4X˪eЌ14o#8yEE# y,Oi.٦^:\헲Tp/)A^ENLCMHch4IaLjn9L јyҰ[d*BL(F&W <QIt:`9i?tnFx+xj Z6PG'@JO&JA sĤ=T`Uۮ M2/Y%Jyη;ٟh$[PFVNԗxC, Qfۣ-&Hʳÿ pD;)7`C*BeM57H+(H78Ƈ"ca>zK9j0.4QPNpGZI%\~褤< 1ko̡a-/j.gV4(%mcҿ+m -̶V7vMX|0de?_5d^ go^Li5mi9Eow8KewRH#kKSYybI,iUgn6rZCˈ~,` ~ _m2RL!kAt\='z7uzu0dkpͩ 1Sx(`yC[6͚7mC0IKBXKO݂SYF+`E= pO͞& :}vO.ohq6n1-0wbWf<]gG6%YI7W$ &g>1nHFeE/juA!lB^<7HbBmk25ȷθT"y=λQ;8I¹ͳ vXg@ 9E`DF{o:K 泌5A G)gisYmz{!+aYm$f[bgƍ}+\l2n3=}ҫr)䓺6p'ܥ# Eш|[g8<5랼ƇOuDhn }Pc#EZ,9r`{۸K =MjSkskyMu=V i st7A7?LO~7C&G*g w38J;ɚ/mu3|J[^~L*$w3D'CYVՖcp"q*!\ud8.{FKɇ$ sxXQ8dn2o#*1<#I8ˡf'Ե7o{Ǯn5 ig 0Qfn%p%/] xGүƳEG 6;“B z!YqfEN@ ^+U[ f*U&x 90rAˡ6;xWq%b&٥0V!i rt63tJcN~~B96,0 ɻ Ӗ$@>fBtm|ŠW*=n7)qwltym(iĘr$=>::ِ'_G"~n&&fZTnqʨDv}$'s ဢsB(ٱ%ORkuVOv V1$eux{^}(ľ g "ps=-0 PBn#Zh7Һ<ߏ ʰL|st~DE$ز:$&ET֝ EP!(9p-2$M.M éd$X|mZk`[g >kjLfb'y`"@zԯʎYy^Ұ!؉6ԡf#SL|t3Xo$y)LCW%ꄸ#|h)Ϛ,-xnR,+}V #yuY%e# =ȕ$(wfg x?q| |Z7goKp Y-H,,eA4/scR1݇G4[$}:Ҁ@VZOT3cD-@Nku#Du 8d%D.j4"<7vIOP,7ryg=\-j P)8hתJnXI:-H \#"tmt[7򗀟H5E3I#" \}CW ta5<jʕ}CiF+ \SQT8K1fW-`Pk}fHM7zdQenT'W{޺(ǠH|1 X)nJÜbena;w0.5OL^* / 2#mqG`PLKaA=[&pS֋^t]p>?n*W$a `'ժ>0@k\o`IW0q@[/ze,e?<ڢ,Ƴ-d'j++<;mtSxBL3Î0ȇ˰j#X#wKF(:7[&#uf7`gJ pg5T<?$)~Q#]=iTVQϪ5ńNHMYtH9C+}hRWͼi_i+-CE@B w6ED_ͩ X=`OXO4,Um5y4C3mՆz,#?G ,D#oc/m祓k}lcR_Fl ZE5} "43/nN|G_!j/tnGB>UOL<3Mv ; J}{=-}1`<"AIʠƈ|ș`R)z.&Cܻ[:{?X#1Ty O!?P^Inܒ$1x2x5ܤտ<|VS8i8{LmvCW ?HxƔZǚ /K^|7ƦgJG: |E ,Kw֌3tz_ۮ7 e 3|b˪{s&DY?4%~^lmZUǨər-W7*n~xsoaNεplڑy;@wamR Nt[͜##:*]AIS֖7prԱzwvW2t;XJ2 tŏHyQZGL\|n|Qs;lg^*i+%cgh:wM9pwr#t Y0SHZ9C|Heԥ2Ionԭ9o,f4.֭evsqFT<O6yed|尠~[dHh)PJ=ceLӚHpwNDWҰ5FV+wn?\{_~os'aaq My"ȋ2D<إйV[:,nAR.54[}0X$s\*HdzS24ܑ vxxWmn`7  IAlXjg$T}vi$Ө(8 515ᢨ|Yu W* aƼs9{2nIUѶ! TE0slTΜ.YUG׵>'٪ƳpQn^y͚Q!B%7`ZX$[ea(oRV}jfрAaeED9o.Lgf%ѐ,LZX |` tC7T'k::Ӂ=bNl5-RJ'ٿBvڤ\&f?_=xХY׽j]~"RJ C''Cn,u) jw\e DO]} ..jdBuF[3rǁf$*k j-T`xUU܍A?#YFzp%Hkxc𫨕G770wQ|J2hK: oV~uP8dă"7!ޭ:ўd%=/*@PPٙ&81n^y\ħM꫙ )wSA׽#ӆMSey/\EpK&rʦ|G{np:i{h<9bwӉŌ?N?#cB%BfР'ߖ9h>(k+ ФD>eج1)A%J+PjP$ *XJ=@81KZ6zWIƃ{NC.иѿ[e}PnTX*xq-`f$'JP]fu&wP~ i\ƁۙP =4\|LLTh|jλ*fU J e>AX5"2bx1ʸeGOzByS gX<>v($/giv`zZ$oq<%KmFq.]w7uԉ7TdU?*VXs܏D #Fx̣a!OS)iwE㒈dr:NEre! zʞBVh<>}TU5}tD;Sm|TŘI)SO~ F̷:).g=PV Yma%yQr8k)3.od9`dr/HtiJYN;tH*Dij?Vn/۪}vcݕr5ɴ痘N^aL2Jvo}ǰ*$@ސC]$=߫϶%o;ucۈ=@#㐅\iu'i:O"iv5FMX z'kfGGXs鈠OK- ~w&vYpUeB$sV]]|g%MQPdh9rJ\w PMR?'~'ka 6ĊO 8 KZeP(-HvCv^Ss%dvܓ{rI (J@qKp*hz %br<LX==lVgdSrmY^kFT>@<cF*oZWYRJ{ ߛV?{K].=xIE_<= 2#D*4_ ;I\QXj(Wڔu`n~.# P\‘r|w3fj= =)H>` Yw3?cѼ?9Y\ h͛҂az/x|qDƏ fCvll?2J֙(ވtnBr"w 69pdSxgyV[hiZh,| n劐$OY}C=u]ͿK0=$&_B0擉`4I2v_cfo羢|rNs)v-MTvvQy͙FB(’Ds;<)AS|# BOIc6ChxU**KyFr:y7I;DeJZ/ӊMN}!F(/C8Ln q y.U iu IE:7֭ۀ̦tK= cgiC յz cdflr/qݩ̽R&n DZ?@{ٿ~MϷn]b]-ҽ5 ~H~ȗc9X YmK;t[҆~6neYQ*VjsVP^~Y*F2aٜ0ZSz}$a4W^4zN9_7ƘNlg=.v5`_`BqmZ`U'QRVNx,{+xR0.O/@Ʒ[]ş7TmB qIQ?r\euz~Q4FG=XRib}49:Ŗ"AJ䐓dW * zFm7mVXXE)+X+bAG^;V3O Hkf%Hd&'FTEǯU|  W~8RVvYPms$z@FM[e7gs\bU$8cvc51Rn:{$ q;\, /4~"#],xt:a~v[>`K1:>k g9אwJz^rz"^zFh|jb,{뵔#VPj!ጀP # *-u8>fNtC4]-pTD1dzࠃ6}4q,^s۰ʇp+YŹ3Z|M%e*QB3N+Yn_6FѣQtN%"g &:3+*~}mA}]z3sݲdĤ:@ @"r+Eʕ;@gҦ|} l=gTͪ) oN<3! N#Jw. L oQ7>ɾ6翊B)bԱ',vq^xU3nŦ2dJsMgլRr&3@V9[ wguqC &L/eBAm=>|{ߵ[Dub3c(X` ^ZNR*x WRT9b O‘r/!{Ld$T=^\xAm X\ ׌ϳ\ ݿ&O#t@bX&qKy}K%CD^HC~"aΖ,qGcD6zNO܍E=_P rz؀FY: X1q!+_?e) %O3]5;Tj'LV^< 3i䡩(z<#DY<4k|_2(~ԔR'La_`$W,y0Y$}P?pԞlݬRhQʓHC,.x aB%SRN@i_Xk!'vެB^kKWk\G.f_:UXwqs{ H6] UƙߨփﺸyeyS'yKa".QcqoV|ݢLz l1+ϧB\5ToKAQU?RIQiq=qLi4 gЦĸH}B%yE12 W~M2)j~w27cȽEўH~--$S͉%dY?h1OBK~}?c8lȱc UN⹆.}KxP?GJDobiqzdb|` Z^S}#1]DΓaK F>GO$ѲJbLߓQ/rzgI@`‹UeLVԩ~ PO`U i{Q义%>(a PC1MVٯU~1&YUПԬD(d:^zhv'*.cٚ5tI?AE979O]` |-)`DhT ~AfwN;Ky\w|ez&͇Ϡ})X3IH*",KĬ{A"<}~Ei'ϔގXB;lbfZzRs³/CݢDbb;Y]T8.Y:C2,%]]mԉ饝w#h?24u>֮Rф #ނ&X`k*e̮1wπ0SQgSVhP並︇1 Tx_R.!¿{n: 8k^?q[c-#PIk:ɄRёiy) O83"7oD:]Q -7Ibu<-,Ha4zd6$LAk&n"\DcP)y`98(+)hq*wK<;*j2X콒{LVuZ> C,V@@?~|B~ԳEX\b)uR1є k"ӑɔ ZI+)Xf\SPΒ53D7 Ȯ #9aF耘+P/\ )U,>zrȩ,dOIO_9u_df ^1,+ Q?Ev]ąePX?EOCI+*JB% *vM^#&g;rI! O,E*v2WQ7:(4roXCgBH9SK=PNlai Kqѹ2xm9L2|ܬ&}¯egPۖR 3p<5HtSí,=|J;\CG}3W$` J9stf_-a$c9esZmS؆{'fdS[[=`|7X܉ONɄf' PMxy ! K*ٱ*pҏڠI6%"ybОth'Q YwOg\ڀ#y WpX9FɎſ6i:\7;kċ5G*".BRJn\=1O>]W_6kBp^jy'8Ur*kc} 16%}#淋y" ^5Pa*sA̍:/&U\b4A$&CSՐF-[ķ Mu]uqӅ w Ikq%ԃ~Z[XA!p/c"2-j3Z*hD;?iFGy_|@v9ѐ/os7 !ΰskyeHx~D^e3U0TsJԡ󴝗$sA3`F"3A0&0jAH'qrjäXk?VhYQhNck  B߹(b8 *moDh+,?9`a3 ~2N߳@Soq,*QXB'fA:̇g^=]k~xL@Y64ToC:X"v4Kr*[q WΘ]Has/5naDҀzoPY<9u" F Я@!g˄&m*LjV5#:mLή;NGW9M_mҤHo-Gϐ0'kygF{X2inPGD:) wzzAlx'.~S:bƇG-L#P,{9mVgmҵ&-@Yh$o7oxGVw ms$ UOV *kgU* /VŪҝ,:~u7ش~\8L=bI[$F%[2 n󨂑?x`BK՞!לAOQa"P `h yvDR.+w:Wk(OW9[XC 1TW<4_}\V uu|:I~tUY:qW !Ɨ§i \`DMZ5*ώo++2X|i]pX⼹w. G&7애 &9Jvo,4CLU5|lm,= Owjv>*drL I9Lg(7# aOL|tþq:NB1+N% ,k„zZ02K,DcOC^8˜TcIsYu.]#}N MqV-3 :27o,ۨ/t`SܽJ&|a2^_#1t=a[xH>8E\JYLu 7 $>Ȗd{Ux\`Q~s5vhB?vbPI}Imr~]ꧪs}#U}aYfcT*ގM~aȦ.jܙja\''V:%kCzQBk Y"WO+ aQ\%oIW<*8WA4dC &eAHݟ20 y9:8i7VEPK(:1#t3ՄR'AU4otffje*o4qa䭢)oMIz!WLmCxAX_?1 ԀMCd BvghKQxrs?^KХ|%Iq×Dnu!'c$u)NdPqM"l J.OlL t[܏F{~ ¬P8 ~$Wqֹd>(n73IXc܊ Mu*xA)s(Ό~$Hh_ߖ!2Ct,XJ#{~anq![u{,&h~hGW;4w-ތ?_Ӆ@DB֠: N Uޔ{ ky^I: {ÖE6"joㆺ @T+k,:4*Z'k+*dc8.ENď?^}p.kG}U~ڪC\D\8"c릗 7}+ ܲ(>鈂#ƹ А M ..)@,x ͂>ciiK2;L%v99E 'b@st97M~UzayOaH"ϑ) Qz.@QjR'l"㙖ηP6=#WG i>=y,֟vjKm3l-F[-(8iij/`wc(d͝%l+V -eE3 .1UysmNNG'-Ι!~BK@q8،[`o(D͙gWhR1SO غIud (Mmv+ʂ,CH@6g L57] (nv@F_ۙM/LNmPZ~F+1A!cۮ#&BNn@e5"Dld<$dq"$P!l8 Tt: i$]{3L;Cབྷe=8 R$ټ u%1O*ЍWРg365$ 5C~eW;' N`ʪʩT9~rFUFaF@!fI ;l# ~-?ڠbrrDU)JjrhDzw犭+Dv`Jtm]6'da9Ǹ]Ug4dÐRD/w [L|l U.uTʉZ,z=)ek2<#:26|T'5*|޸ _></f,kÌ-Q4fSt ;Iٻyψ8.̄3$`P4kDq@Dtc_aM\9@ɭqKj?UѪ(5NwvݖY%eY.G+Z٪l9zGZ;o);Ov茑;y~wo1mJ:i:GQ i _X\d+:hG|ׂ}:㋐_|ԚI5۟ehaIfdm TqEڏ(ddtVe<$yiM*X#o/\4"8pn1avb9σ\K&]uT ŸE&\>WǛ>'b'0֓bqIBAza[w'/>;kwvD72g?L30;c 8Ffp^C^{M! !l,VEy+Gvf+\GO7""^F N6'/a7jx/Uנـe.Z./k;-d.X|sҚʘ H[)*ˊڱ -Tm*tKڢ7" (^(E=*%\+)484W)don ȭU>5jU][oA!F 'CH[C$WBlyq*RM}%p` B,_(-n}bfss|o [pqV=9ۀTu߭${*?[SMM@4#԰?c1F3ҬKU(qLZTalyT]V[f]C3bbXU8p!BiP |yă%Fƅ5?BEB3X@E>̕ysYb;.09(DyST-'ho 7fN**d9 "rEHU6^,0JŸ% :!G)$v6gK/LX.5O3&s΁I4)+~1h.^Ƀhv::r{ tح rku*f>;QCpi9ntdvM>{})76ݾ՝@CZ6r,)XM 8o!1X;Hax**` kځ3hT8or;N1J׈4^rl|]Se}AU/"Z'K9D1R!Ҝd 6N@K*=pZD }ɘ55t0UAQ_BtGi D+g2둼^>=Z%usA2a@)Du͡&UݸNuh9ma|Qݭ7[7)5KInRSOT+ay,F`ݿ7%PڅºT%ωˠ 5xB{\zɡm j :jgtQA-*mT$;?i`F ظƛYDw՜o E', qWv HR-4^dGl|Zq7kR*za3i@Y*d⬃N)6OV,ӦlF5 ڬq4.vʜ!g_e.aWƾʫar{?lsz"R7^Pv-JBµ)0lG7}3OMqCaθEi H26/L-@vڑlFse"{ɴk#\\ Mm?MAJ" rj44a$7O ҼޕSe4v}2B Tn{MKA2ͰeC`3%5ΕӅi iLZo#ZH&顀$ F44c#(ЬyA…:66"ٛsm!mNalc~A8Bj^4.;KPrhn OV,"%"3PFRx~њ.ƈMgi~h >3'ĸG. lyRJDcƯ9 #59-.SߎJ8I*׹Yek7YjNV7oByN^@xmz!PHn(c47~&p+̂`SM×ϚEž(kˆ NunK>|NV ]o43OyG>( '()g$[\Z~lߎ4e '{>Gr&"¹vY<^"78iIresY HdoӸpa\*`)Y9sHTWʜʢ>^dJW.۷q۰睰V PwySFnڧ e7z)NȔ⇑|f;PĦH |v law\Gsaui#8˚$Z ,`H tEȽyH;l-gaS썋Oyv3%FW\ 9wT_)-g=~c)y[iR1F+5[ۺikLH/d$7Bϐ5WA)1JC\ZǨ.Yڔdƛ@I?֕q$\òrڂ^k-CSڮΠ:^;YA 5zDQF:ܿ5 Epہl?VΫ">{[x~, T FGld2٢͉N \fɳ @}ak3 ޳Pϴhu$f`s ;}~`5NBz[J|t)LIu e/_ CmwpxJg,w)Eb4_Ϩǚt"}=9cF!ifN~Au~RV=\86P2?mF˳)BB=!@P /9 /* ΅>e PF%+uy P\e1d *]<=S_s!sam9?#CB4$1+\y``iA8f!Yo |Zԉ.Q?|-_{qyr1%1~G6Q8k,_HJ+bx}*O/#^l&g}9@|j\6"[aYOGf4YԴ(Bs9Z^:ȱEgf=a{!&<}pѿGMn,P=`FDc@G?rl |􉱭5i`0ԣFQt$*mO.&]y8SJh !TC13u3_ؔx8u[gyLBA ڻ[f@Eer^:Vo|Z_C%&vK~,4)~,O @w8Fj }U@>v wf䟄 sihi)S/}_>^'Ym1b á]2L_L*Br".\\IƮYiNx*HȊB\?l}]1`@:-fhD:|HB(A[ J p"VfNܽ +oue FKfPS>V6t % Y}Ns~Y &Y>сJ*!n&0,)iF p7 \fZ/I7x7Μ>O_i+OLqb r}+"6.؀V]QqWFM!(BÔ\qZ p`5oKM?Zc;G 2}0)=R9x܃!fs *mݍ+k#*I-Wj;ݹm ɢ GCHmZL؟}٨NF%9ŵC$#y!SԻ{+Lc;7oL'+Ͷf5utC*FfG:z3Rͱ)nAu $^gVEm=/,+_ HXroSuNL&0SD-H3,*wvnE-.-MBɯo/G(Եc$m41X*N^Ya]1~&غJӜ+K)7&ט>Ur #kL 2D/T2乧kɔRۥh$0گ U ur'y @vy v ڭS:/jtv>Jaf)e-'OטR3xV@hSJ wMs8JCϱ`WF LBB[]F|ndžuhB@5'al`hGN1@^<+D^)Z*8E9l@r 6@'m9Fd ʥJ6ǢMmUM h"DXUZ4]*<^[Lon$YdG|G0@&Œ2 LR_;녻u% \'U 29 +& Ptr_Gd&e)Kt$y:}GN#܀{8^&e% QMır 56j;F, KV}e\! 洪!'G|8>¯k!/<S۷'.L/٫Pp+}7'ɷ"=wߣx jfŲ~UdVذ7Nҳv@DQ{IE#PL:G 4H"TI\E^U4k S%ͭaݑzIZtrɖ*H]$XƼ泶Wf sr{6 MXjG[;kkp)vl v. ɜnּ ӱ^o(i.vܿ®&| }sA3;rr/LSlj`0l* $x"tUgym tLW[\U=@>-f;c )k!G{ &G=[r"dn{pWc9w!.#x\WSRzyYS>5,ߎꫩ$4oSKCxB ٻ* + B:_ա4v .ǜc*ؽ)7TƈlNͿ5u ^=y 5Q+%yP(U'E1› tQR}U@닼4jg,/!\~ šR;<혥]&ͤɽf>%d[.)y r4xjwe ;Iv]4Jv.YqK r576»'d+TI]#)&S2嫏Snڈ>1鉛#@{^Ve_xٟ[y=UeۤL+&+am!hV]V1a'܂k qH[_?pHA=;bۧ*o3^mR̡%Q3@p8i 0qa˶Z&5,u^,\,C:1^Mp&PC%~wy +ăPl9,jlEt8YUm퐧Xsh Am˭'D_^?uzx0K0yZ!u7~iy )J:>tu{cϛm*ؼov$f}kB2[@ZKLE.6&N"ٌX f47*(1S+٢rGs5$Au:YudMVpG<|~\[^Cs]qJ2]Sq]…+Qs:{oG9]+FZ)"*a$L98-$ cCpj_8RC"0@*7\J of@zB=DB ,۸.hK\ooXwY hFiN鍠*8u`)E3;tW/-ܤD'=̆U/;]Qݐ5_R^/a+dG''>iYvs_w<%9h|i?LNRV> mw~"לz|b~P)p $Ja(b';-4>4\2p]#np"uQ"a|ReU!qghw' ڕP 2/sxuu[T^K3Ua$H\fܿ^$G_aDVcǟ*s܋>: [`]qQm83G׭׸,UX6Ƿ71jYzyz?#'ϞJ(ZU)6_eék'c~cjj5.FCp^,(iV(8(Ht hORteq5 bgS>?oIƐ_jܰ#r)8CJ3>G,zv?oBTq?VS~x 2=Hn_* 6QrlkA.nrG1}mH{S]}aOpU[IknWzpbuDTt_Y`E27<|C*u0Nw|^l*B$?I!Gc8/7c$W{Ap [rZ5ӡAL^| BIq}lx G1D qt2xhdąX,Sl?T5'%:"w)jˮZhA<;f\1ys{:a95kͨ66=k>P:~pJm'O;1-&bDŚUpˆGzDj|kx?&hi* FJXBl,ӞX{Cқ, 9Hx>vaažR(˶M AR|27O\Xe"H$k?`)c4a7 oC,;+,V&% aAfWT1];Ibb{"46(xhvcH*Q^]Ġl IEM.gE X.۴tf ?[GQ`+ˇ3 g)o RlIV[~.uW'vBW@9A +e|d<5ߴ{pUBY޳Ě{z~hXx<*խRVq] WT:[7hYeJG;MkڪUsaḰ2&%-r8H_UH 3}w芳> Bb8gsb)b*fء`DeΦ;tww++4˵/'?FM)3Y^/wUa-.fΏʨ J#!,ԂB!ճ <+MmImfͳu0 aB gơfMB OR4haoڀ8pqaw)9cN?⏥ BEP0vt[t54xYQ5}crG;ǒYB m_>/nRc%"/Ku:h8.S| hAJ-hG> qa'$>QnD~p;#fGJkӔYG\E{`YFQ)7fdDF-PڷL݋ 2Tw{JP -VC(.kzjYV׳\F=6eP G%R4ɠY/rABIA(H/J#&gT&qU'b6i7K@d&+f4Yb7&.nU+pgY룝3* ^h&/ClCSɨ̲xsŕ-tĊēn gj/9H˴GE? YpmYg&5{ʋFA/gs5)6 MSӧ2.j+8&#kwv< _b5ry=`Q*L~Pm @f2jyBVIӁRvЉ)ԗ[FD+kMp{*GBRǂ;0 w۶!*C޲2\9/VI}T ,=F7*Ӌuu~>ZuƝE]ƻ?"t}slY09'z-d1TJ 3)SE>6.⿂aNAτf+"' ^?fsz>X .B'1qT3C2.N\&EELJ̠LE\CyMp3uL`_ɬ/hHoUb 5˷ꈃ1u7ڠ)=f) Œyn# eX@>CÖ_g@a8PDc0 :i'Wşqac!>8Tw6}x#U4 LPCƴxile8`EҭAK? :|rΪfrgҤ(`[W=w݌K/G{O#tO]С dtXZ1;]y!t#H?W+* 1=r% tYSm1| w!poyi+o8SLs(B: tXӯB>'F9vqUNСhUk|@[Z+n@8ڑR*q߫Cjۜ#b)ae}qU ݄izdWR OЇIqZH+:r|J!y! g2ŨoQ ,/wo)6Hu\buس}?4?( M&~Νw¾%I/dBq&K߶SO8ah+ijcUa6NC\"qâ9 SyT2ђ);?SK gO'%dK C}4SLOƷݢ*|?phv:⫺T5d27%-$K#1&,89K؉vmӴ/i(v˫W#2~Ћ1=2 *25@{|ȎjW,cǹ:iHmTLpHt{48g *;SkMhqqI`" F(_m|ڷE+PkW UY6Rq$cʺG"D@jp|'M' Sb۞r ,L,њYK/Z;;r4n.ɑj9BtpAJPY!oN%mنƼbX  J"Wq!#}qtJ؇P(v| ƻՆl߸`ٜAE'*GAh'r{}HhMBxsz,AM:\'U.SF}Vq[ 3LVDRhAv$AR{p8662@iIHvl O?xB@:aOEߔ=ƢSO򪕓C٧‹V(fY2kkY̢PM*ltZpvP5 cˤ~|O tS`}1]>recr1zX\K]nύ5zj4AkNF\{s7S{7~j;.<6#0C񆊽-ӌ=B ^^ vI-^1lgId _ݳL_Ԍ.ܫ+[Su_U Q m{W3;.8j.( r{`d>NKTFXAߴ&ˆ` i 3>wB)ld 7[T;#UO+L>/VCR4'GcZ'0j7M2VN/SmǟfE=M;jdJD bnص]9&ިB+8^=8 GB bë-#g\G %'@u}rVD/ x͈.hM: 6>? jI^ I{g`z"9FM| z!D>Uļ;ϻ^E8.[;+oA!ғ {Jk}BL)tA6} &'.X}r' W:o3%  7K"eJ16@ }:OVc{ P`<7[fTRNq8>#k< ǾpE4#@ٓL{QĘ.]Y*~ժq]pGT_C$sٹىny6D +K ωYSeZ^2C _ws&kwigc-$6}: aNPCi2դo:*¥:YZsj46Qm |qٲ#j0H^;}D{d5;D\5M(<+~{Xxy8Kb0hvS[%&[}7qy>]5[ v+HtFA҂NBlx< L1_&7 =j>A\;Gy|82%0 }jpȵ SPyi=^:`[( {¹bZШ4.I¿qPiKDUxf]ΰgH C.ʑa) n>W-2 tH"( ˮ܁{R,E;ѫG7[5\ '<&ҀC'=o*e짋ٲ1kO_݉vsv2۾!uFcroB~'.bD7UXo/NTOP*C| WW ~AzIq D( ϪPBuZgNsV0nXj|}HE7 ~[aCd/BB3rL"_PY d1M9 H&7\29, l)n*[E*-Y{*)HkI%&=B'o$OQfX:/)vD̈YI pao% _kiWn8v\M{FĹOu<bjsuI~bqhR]3-,#h>Jr!{xV s3 Hb#R niS:1Řdq9?tĘa(TW1_&#kWNRueߘLSixLFr~% Ç/x LB2 @$4jЌo[<Կ3u>Z܊] ܂h< nO4?-T5>mo(Q]oJlkw!S4'=h3rCX] } vGyaOڤ`{l:l'yL@IwNbbڤՆ2Mj%|=I X^ÐgCξ( YnlH#"WiF^ԨVGF-vf==X8%+4O.I}- ҆k5$ |ܑIh>`r%hm' pR+H6r->p[@J>D%)w'kcyW0xAqO~f΄Mkt> _x㞆3;O^rZ[bd,Rog1y )lm mEX/?WZWԻ+ɦB? DB д4aeDp%[e@+"{&W.UN)dWg8ǣ#b yξ_4 .Oݼ9:~Y,+)@?hIh~)O]'& lCЅq z/ liZsC-D# +Yu q(ÿ9Xj@_2} "& Nܾ/81-j"Uhpj]y 'ھi .3JbۂH҄lKGQI0V…˭/ޥXﯔ\;ޱ|A!0ج̼ \\!8 ߢK'/R0v샧: |QQ=)/FGb[I 06> hhNu7gq$}U>&;HdB>Zͼ/1NQ]Cy {\e PDh+3}n-(7܂޼P AzITqHHǙ>Hּ@JbS@`c~i)|g+yUF>*#5O dΟ))^gGtHݎÀa5#> gPWXIJaT,}s'+0f+#;h>08G/rR|q;Ɯ}Nϩ`a R\#꓈\o`sqʑeYlK1r_ 찃!ǡGG/$uo akfH6/R7BȆ8;m'w >f2_5Cg4wCSvt9B?8p=(dO8hr~3V\ (ˠJn!/NI1ٕ@LBG]|%aՄ~/~<0(0TRyVX?)/ r|d"M]mX Nd S6gg2'@g4l/ f;`RVR85PZ?py&TQ^ T4l#-|Cl G]hg އQzk r#wfR@"dZ(y] d\zW.Mqb`: kDD$XO73R{vB;׻7ggh>t9?W9&)™+5΢A'P{z֯vjWtwS)mWα}}euwvUU!g/F+ jڥFq_ ^=ۮ_Z>F(S %(@d`Ng2Vq3qF)/#t5FG 8k*T?D<<&`&͠ 7ծ+ 02J 6F㢆'"*33_ku,G`8'Cg?.ĵaۖ %O2xWӬ|PӬkv:yB/F|hqXziMZؖZ)T:8\m3&xx8dA i#Қ#6Lu)!݁7G2Z]077za1L\g%/ aexi*߻ ES}yUE5P/oVjIih3b'șAfݼb9)ĸCgvE=QZf]fڕ01%J y&"z$'usJRQi8.\};8F(=ӖEW;LlTDLߵ,6rC>y5uu󁇩q&"RDI Z6C̫֣-Xt?Zz%EjXz(w0{v:iIsC/':wo>\.G+dLa _K8r!rk\*yҢS"Ma aƨ8&/Y.hJF(+B_NMZcÈ*Meq*EcfM, 7MXԧd/R\CL*\|+IJ {ӚSe&wB&B+LU@-L~Z37@%ˤ'e,)_`͕7Qt辴zgoPuvٮy[QqJITVyĞ wiZ `y{0 @[̠^Q.8J zfc[`<ʌD$HߩrKxw-f~ \E[̔^ Ay|G',Orʶ4g~r|Elc_$= Xn1o.y3 #kzȌ`rV/G~4(5I5nІ~JO+^O . N &qDTC+ Ǣq5oBI_ OZ\zD`oQL n<%d. =+4ϳ LlFf t?rkP xVn0N)%Ңڜ6xZ;=:O:I.Ɉ*5:6xfSJ7oWATX2[(aki9Y} {qrF;c'ӯeԦXަNHiDԵ.`F`,z##1FGg*b>IbJ/wf>C8%suOK*XkX3{f6UjtxV_yBPUɬ{ʌ![G 0r&+}( #5FF ^ЂFQ ן&=H5ڙ+#&.Wr,f'Gabњo4haz<-DV&ƻE=^߃ wF4NC.c+Gru#%?)N-$yo91Qd1l Y༏+~9:f@SE3[$C?"MDl4' n^_St+~- $(Vpf\5?l7˿N%zjMQw k ,㗓y jps~xH|d-nZ=n\saTVEjծw2%;M)A7@.|j/\L"_Riw?8p=HhH^cU7OLDshzmRKilBV%61cj ~>>&Mtn]cɁɚӹ_i pYQrP*n4\dzjh` Tf4+/2'P҅813{Ǵ!p30|^f}Oz7so|5a̱0,1ǿ\G\'k>;55 !rJmnva89m7og_Pnp"ݹ$LeV7bܠ3,3e2$)y8_ >g/%h1H皒ɔ7Ϊ@+4,Pj@!)4d?-]UF.3~Q$(H#-Ce,)ݺU4mh衎/P;"ߩz%! D+B _8fRiRxq޴ /8bh[ ݞMeˣ|4--|i9Hx]"0T<4?(F>N 5^Ia;#Zv͟!W4MVvOUxGʌv_\Fۆܕ(Y8ofJili#WGʙ^σ['>%`~+CJT\TG!Ч@'h;ktoG`]RA\lgc&,atچE$& o4[ƽo_Q NИ gT[2K>}!2r(⯨bʄP__ %k\E:Ʀ6zm[;{=Ф;N9[l{ۀw7W/cσӵ "Eo ncY"=Io$MU.W`n {KZ 7:<$Dי;tfz2@'aڀœ&m&n`J-7ΐSNP.Wni`ddfBSxKd8}tø4#RA7 ha݉JW(Vp @pB`.c c:*«439j!GpuuNT$T~O%9u# wS eO( ^/0Ğ2j(lnkEK Fd^CJnմ/4sRd dڴ}^4P>+1#+JGJ]RƧ/Wd9ƟzjS[gYXk0 Gf'lL%$+L#SuC&L[>q5b(Bָ;T3D\ Ho??!ߘ !n~^o &cekJ{,{ߚY"7gv_smd׎Y6)|X9xWaz#io~z \Jq\A^÷Xi:q 23N׀r[-,ftB}ƶ,bpOYMz2RO<-*+(T?Jq>V<^9҇*Y|3vc;Ts t0b*V6V$[Ał M̭1eS_9Fs㞩SBЁ!N')+0y ԏFXD}rl @f過T4ƞ(tUp뷁Ut)̱eKG\g/iX.GcV݈xB^U qЎKe=-s&392:H-eUhlݯc'[ڲ(>eI>QP O2ȵWuB<Xڗvo%}/'RU_5c9.;6g>0n;ghWh^rlt;- % 6B1ׅ \|B Z]/[>e]nCO,ӹvҦI "_^:e.7@%\A=j'eo>ƅX_5HOvKcsRR3}*I*#ͼ؎FS<9KHY$bp i ۞71J|3l'[,@"FԵ808-;AajtT5 f1E==kY9&~Kw`èZ+ѭ.}4B=)SNZi l/j*áo)XST)z%vY| 㿷Z1)%c9(Yijx GJ~^eh oGyhz}{t(|u6aoR# S9-+,Y|@Q3HsEng t 7*qO(Մ3o:d|5`p=eo¼8ɖ,=xZ1C#d5HjiEnBmė Ge.ovI*X@lsMZ`f2ZY.D>ϔ+=`F~~;4֢RC.vpVU )Ce2M W%jp+<ĘJ )+6jŻ;Lu3CnZ4~1\.T #ߛ.H(.CU)U\"6\tq+(г4ocsyGH\Z&E֕:h0|E*|Mބ6Ujz@%UPvғ8I{n΁X2fp ¢iǸ=?ImjXPd/*MښI= =?j'"*50߿߉w$ "=\cl46}we rRliy: 3ϥBj*&M>a?s:Ԕs]ԉ$9Y)Z7UaʻXH`sn1>u4R7Y57L!Mp:]}K q5/},kN!S'vf}qm/ w={~yB< ~ʺ v(92ERE`^qY; +czBbQxxe%B(?c u1^ٜBR-\X?Dعeuzio: v9Ǟq"$31Y4# 5؁CVE'Vn@ZA({bkǴhWG/NDNd ^ILt> ii[2N,F * mCASɷTsQRo;'6*;q4;-gmNI#.$)F8au宰ztq{*V0OsG {vLA:<33bZZ~agsdz@z8D1MALoD^ x&n>]Y08EN~#GfǚJl2i[񠭾h[;Njß=1^>@4H3f7!ؑu HςWKu4 X +ҍ1!:t32\51= :s/iJGD2`+ /n'* _^JS{sdI1R=ZM7sfal}غ.RUcO-nZ#[(3]ⱳ_h3\7Q ge9j^yFFɝ!$R2j]o/HMuؽTڛ 9L] wBt>}-`4vwjJiد"Gu#b5C 9n:q!6 㩤90H/NYxj^8w"uɫ]/GG}:L(KP)̉1kQoΟp+dU1=wԞ%QQq<]i5F, c'mLwȿxŨ_6<+𚡮{m{I.vD?Q?=|~*2ўSa>E͹`c4捆m+r6ҟ=b} -%PK Ja"$.͠߈8h3_Nտin(̸={1 \)>k_5~g(z#dİlb&>^{28Df +Bc?C7d ['0O~, &1KċKv,Y (iZW62X:Թ9u\Nӻ:Vvޖ AH|`G}! a HT293t Y.2;4ZE2KQR1WjQ'w -KA=ƒK8z>7,R*~yO$<"hqʽ֊lO },K[xjiد>N^z&p }|8W}X׼au',POEUȃ .NPPQ:xQܰ~L8_hl@$̸ljs(OWIqF&9T+~6<(\IŠWfio?w֟~>V>\] /T -Q]& hJ|$TjM~3L"Ѽ%E/7ϕ" ŀPiYjaYW61oQtF*Hn,~M* ~o^Dǵ5R(IB8=wqh>:dY!Cgb%,h Y/ӬA\Zy13 7+RŁgPW\~JbY2;(VqoN0Rg']Jڼ ;]UtKOXG\$O0OT2+:`%:Zk@_>sqi>\{Cױ=3FR bE)c$;?˓%Kߋe:3#)pK0#\{18-Z!C# IɕqHVAfnfmTG@2J"c5 OtZV"܍Bxu} 9dPťni_7/B(>zϤqLΊMkFQo`]X{FҤgxM}+.lM(:fh_6/~×/zUzZ*Vn&L a=L|$-ѭ*$n (~8l%@W,[R򬶄$۝.%*vŌ+Ƣ, 9>;lm**SFf^D5!y\rgI諠]FY̹P;{Ňu,Ủ!Q7/އl AOCd4~Ȍ1wǽ! `\ qfqU,3sI,jH*:A-}* A= J%`c")wUcͧfj6T"JaR5Z%;fb>t=/Rr/I-tNs؋"l@.=@ yٜCyY18KMIbbyE\wJaW }%ļZ$D080WjޕLa]z2r}O 1 .ӻ<9S6H|WgI+CRQ 'w 蓅IԹO/T5'_5R rH&+L؛fs>}:e~,, k哂'§N).ҮX[Ώ=Ƌɟb,|.e7H>ݩ\GADqtfl00 lDDqi+H)WG;zį1t{ 3(GpD1ح+[靔3)z" ` 23Ծf:Pk1n0] J _\O+_]v4ȪsGi(%MJmG;`6J%wk)+ r`NG̛kٯEX =8Bʋ>4/mrbVYNKGO/|d.}\ۚRZҪG٠o/Z\/Y%`g|e]gd] Ŷw$^U合&)S u~07+>v&6g[ruwL/KnT8b7v f*D;MeD S׳un^PkmٙkIl؍J>O0̜W#U(-|V"dR5٩S74<:Uq * f&eLH'RJ5%Ԕ T6]`W:B|X$QSP< u^zGN͑= Bzo'O}4aK iI< @*v=rv:EkIfH0[<8XWDR/Afq xy!ؤ4PReTiMEx8m{1_.{>J! bp">*rԒ330qZn7sU%‰nCu&mM M;"Jޙ*|H$NRfXT=ofD֠BE &/ CO/k7k%:ۿWU(MyGz}:GTZ+50gh"'6k̍;ufr k˞k 9x3,?O|ի[J|ehT$\9W_<ۥlչ\B5?"aE#Co|ƁQ#|^?_9pOl'_hGR:68mn0jA*Sb@!>F%k`D> eU[գXɎ$c.="(Y8o~@(:={=j7daA/sl||1<&xނڴX{η]<J)ЌZX[i2cDčs>+F=SHq> UC=U#QMɟ;TʀbƸ'yӔe6Z0%FZ~$LtpyL{>_Sjn+QՄ zyZʧ{{yix7^?Gw/Rk>r׆["Ildj-/91Dkik])rY:C:Z` ,3ea:dfT*sE&U"'ةS՝<lqS$o$^:*ä?* HzaAd/YT~ӽҼ?'8("8=ghqXJZdS:|5T#`,zzT)3]uFE뼗݀A>FɪYG4tH L|ڟ6"ߦyS^;h6RNA%sYͱ+% oEz h>Hѻȁ :Ppu[{& Ha`5wv߲M8}[8HXprL̉[ ` /|?#LΘ΋/d(J2kS1Sj8h:U`NІTAEUG. ?TUeCb fXܴX6E/}%oLEHDFp':@'g_6:{7V1S؀'g)fV/kRE K0zLYMϛ ůnՂ F+,O+wQZᎧ&KN|ON \`~0~k,z }9^ѧFB4jD٤)VDn%,WҿT$]þb?)ڧ:7&!1Td qW, uYϮh\x"`3ގ`wsTU2(NڞnPX8Bd2&RaJ6/=Aؗ~r9 ?xv^7/\51[-߇_&-WXȲ˫ S<5\.% dӑa(,n-[Wxlmѐq dCO;q>ZA&Ǟ2&>l.Wb(ksgHI5[2KsK<6P/HymULpUQh_fR>?۟M?h϶(U3$cL%(ŵ*|E}3J{:! fQrTPBۇ0(\wѭ+]@4uP#*6$Z=oLRk>úҠO&֘QM.NK`(O^;>fmWhovb2$$y)Յ2*&<'۹kԟcY iV⭀3:5x9KC9l:5Qi!mH#9r;WTa3 5 f$. o1 Y{WD|Z.,U0A?.w34/fnΉ1w&.(?E(joߗ"Mpu|CJB[ZW{mТ osC [Ի|LZ/EK: ?CI-e@,i (68g? kMvV:uFQ|Qs)̥4*r YZ1XBZ#Q3qWǷ76sd@Vh &߉PNO}A5<7QX' cZ~)Nq fs쑬2'気Y#R_C n Ja0Y׸xR+ѓp4- [>Y[r+Z,E~ৡ{-WV$J_ i:w!m/4#߾r+޾6<{Ս<ѵQgIs߀U.F"0OR w*e19Զe,^rɠ֪(;" Gm/~* Rn,7N  Kٰ]|%{v1_/ZzzV*!4eRyن)U%wHBTߋ&z[wj h/vMHwd67l^>Q1kM{l.!bg>'H;|KVNM)m"Ȗ `8jRدbF1Q (|Ou"Is-YE#3W:jd} # >\B4A^^_-^z$RLŷ8%Aú9Y|KF>kBWŲ;P@JNfܪ Ky-q/ p6:MYz5ݟMHXd`}G ͽ iȰ<(󢿲3m)*d$EU< 02zH щ 86boO Twb*,fwյ9'h%&:7iD뗞j)^} Cr(#Ѣ~Ÿn6# -&_NVr 7b# OR):ԑ#S z 3 1us-nxb{qyVOut( CAw`ܓ4ϙf^SґK}IPlBr㶛u'`3T&usOw/bҒ1 1[p$*2or Cru\|}3. wn*3/ aKeX뚺OtH?IPL{;2MPYxM?jL 9>D30:}0dROfzpkUvְwN:ς3npt|k-u) x`۔S" R჏ƙoViJIKdڸG1,c"a*+ˉ'V6fm{ nMX 2A\33|n`&4Rŭ"(9kad)6s%:cKqMr(iԑea qj.~e}dR姌eҡ̫J WAJ-]$YnD5p^}7Bs6cPs:d ?9dZ ݉ pI2tTDžv5z9K|8 Gu*rs+;r=r3q zKP:D:K0k3s)X Mz+.ƹw,T@PhwggY([ nI^ea^vܜ(VQkLq(1^qN_C+*+U|uf92OWׂF5^I׉y_WClbK#rT{ _;ԷPBt<2Z*BOB7#ڷ>9`[EVK #n6Q\H֏z=ʲ uaZN=] [ONb{h^*\sUUIJ-P.ma\ΎR$_ɿ(O;oF{]JW-F`s',9dFumg*]Y Vq|n[}cWDѼOCd?B-ވF)ρH-f?Chz%^ vK};djui|J/:#A6W zj/)kw%4UY" ^ Ei M (Q~=1iD+Z̏B.;[& :gȺnq佢⣂ZM l-Fse$,Ws7Lש=X,Q f R\7\Gm}'_x),2ژNɀQ] O2>=ODSIJƹxH8:xVFPJ~O/>GkF֤WxJ'waxԕY@W;eceꪟMJcs~!t΂x%=F\M,MnEI>`Lq]+z :&jfhNqAfKLRFVUy5ΨF\_JPg)Ev |d}LN"~P7!MQҰ QRʌ67>fÇW W`:iQMގ6eHkF+ 񅛵~ &`ZFsj頥ۅo֎9wN- ;!tzxZQT{lB:ZϼDtY-Ҩܦ۾Q$>i3$)O'Ϊ}z$ppU\zVykRk:H[gAg|i"d> `?`53-+Qb ܞnr 냷[r8zTCJ\,ލ7J0>eF+6 =V{ b9Z0Lr%g~o)@wn5 d mlQ lhU9^e񞚬ht_+HO;`.|N>Al-z&+W<ǯדDv$hrd@@q(Vd2iLM^KxN>L'`YnlثS"Qu: PP[yݱ9\A'0h0D;/3˥4S2L2zQVЩmzAzri-`W~f#6q1+{JS$[7uIZpoepļ_jH2Mʫv&'&V 1)O.3vKk zr{E{b*-k?vY8$3?ߞ"F5cJ8`v?1m^B%KP |WpQ7_b*(Kg]3Lyj̄``Np$2-?)+!\ cc6g/ƽ9nYGi>R-x8<ppu$B tP/ɶZY8}kA6mj$m~Uq5U헞t#B9։Ar}z5ؐ{?1dRKgQuJ| lPƩuȄh֏0Jj$zmq4K\s?8E>(o;?Ti۳I t?q*p  A] d aZ%*i*REz(NF7;M_H\^MW50W DuT⭦;tz1M"kk[A06[7ŜC% H3q("eSGއb@5-ِm[-h;k-- JX/-~^/R8v3n7Mio$0DֆrG_ Qef2lLؼF5&;|/ ͸hj4}ᨼg'݃a?p#m| A]Q͢„H7Ci?ݯv4ì Q7FBfx~<)& 1lZ?)9.n`/Va';@='4H5r@g[:R&gS%N6f6+ mm>5>cĿsk(ZPFi 6#tV \=9vXM)o}ZgO*{#)||fie̤m6}dbߠvgێOVCM;r`/8ڑ(#tqjڡ.1o^4 _υLمODu^ GTZ &#Q oshW?(3]F}TuI;vmtUN`q`,p1) Cz{|;r ֽ`<&H^BW=;*v!U 3|G!-_RnqlvCKgtȀBP%hJdn[fЁ fͿkIQv| RQȓ 2ǒ3_9y&Vg/b >5%#Ӓ L' h'SBB4J8 ]n:28oB{q{TAOvB$ U[}Ҧ;r >TDP'i1]Df]MN"/dwV z>:t.*#*ÿÌS\ q~<@Gg.&\G@$e3E گd zwYbW`QiƗA@$UV{Kn_qp*Fg͔KCuC"N8(_Q'nK\oUc{Rԗ -_"`Yq9ֺJE*= Zq uNQn1:Jq`&Nd>EBŽϖd>guDeO& t,0ۮ2-_|xlh3XJʧ*iDS`PM(vXs޳-B<*:*zar% >}68z\.%*&Qbk*vk4hf-Q1PM zPdsqڦE_%9 4rF9N)glm{s>h#=jվ8: RDZK*x(B( {Ӏu +YB\H7 ; ig& CPQ;Vh@O"c/Kvng*uR'r}Иܔu!Bk\H~w^hPn,_y 76›T佢sGSM)_Ng%ݞ1z~ϨlCIDeܿ)Nyۯ31mfwqL)=BmZ=vami8>h޺_Sr~5}K$B&Bo7| 2v| 2Œ:+(eU5_r}`9wv$b.:qb{ꃻqN<.AD7{ٕWSr=wCC#CMKNINIâ4}jf́LNWrhC|¦AS֍Z 2n{|C} 5Drx|umpd^ ׷O)gQ /r*'yފtI@LFu 3y*(l I:B4a,f{=&:Zӝ֝T9*>Z鱚Iѻh}~_cݺ󮕠fZտB%U.sjS {F7ްOj2ؕf@q=Sd.pHP1w#XUÜ_`iߖ]ZE(~v=̓/y+tۋ'g>6\~hXf+^R t f(-YoZ=_岝l.+# \*O\;~ K UN.5\ͻ$Zip=H7x1Y<#QNtiWhF W},AZ6=@y5]emL[͢˟%.ÕR|vBy6JPM@T>\~KB>2_5T"d6rrD3ok̓fP0xM W, lJq3!cʃ=`RvC72_so N{b8՚qHkZ UNG`yCiX܍JvB r6(N Neku!k}פbPG(cֆӡ\)e1g8<:~_JW u^ XHe\t`J@GgukSΫQl)Y y9-~TP(VWl3Z kx-3衆9muXI2Is/'Ov)H0] bv%U `&͗ί9-`]'ӝ 1 _2LKmT):E~h[`0[ 7nt(df/ *,,|쟼1ݭP^g"|R}! Y `0RYc?0fO[ #GgNհ9>%YJ'a h8K"nM>Qx]=߃@I@ۛ<4 >Z 6Tjetikʕ[+%/ S3H;LB=^aMM{D!yVkUZ jxeiˣ[#Ms7 @۠+ ru/u&]OGOLem )%e9#GX9 m8%xkvKspww W8+o m GA3tɐwvaet_IuT!h$?^Y6hX˄Ar{L[KukbJ5cul$% \ wx `2𶙬4ԮB6SqgBk;Ko._oErvrANPB.Iz}lBX _Z.^}J} @ bȁvn݉}1몖) < tz^ʋ{ c)FT4#Y,dbt ^g@6 bBZīRHDO4ZҘkEs+*  :ѫ?܎lM, "|_f.g`)͐jwؑ[A EVR9IЇc~HφpEXWpb}jCl`iw͝Ǝ-{h&yh$Chz?Yfzsnez* ڶ٫bdu:uN?}Iʹ*4941Xx29*ӧ {~gW9 s| }=p/r.%ڮOů";ߍnwd y6l8W;"u󛖥V%!_xU [Hm*/MmRc6l>ETۅYv! G.EpRy!S:ކYY+'; u.j=Cʇ\Q6=ei3Ex3ǺNu˪6aYEFC!%t wa2GB&514=q{ IWg#*F/ɂS==*$ZjrDdSp6&kLQ\az"M*iZWuIs̸^#{Qt68a&m$jEW1`iht:֎ Oj ƻN<$͜Ŝ|N>M"fiu^EAit''/|)m"9mQxn]_pI+t眝ᓴWN+N *a +*! R&($DTܘ=RS†u;» RMpƱ̺`\cl-@u,ߎ@[X뾜KKW;DB,UvZfYa sgGyk7b/KirqJQx_ͽP5EcӮŻG,ދW/q=Yf"U:%"Vc=¤Fxhl'p "z}hҐߏH$z_A(L&t'UoNϹ {rvpAսPY*X(d )PXUk!mpǮ-MyVXlٓ*ya5YO=K!l' PD Bnq!a!--SV*ic-(rM.@mN;Y͋7ƒ 7|_(Twl$ho(5G`GGHX{seUV@6,D~ ;Ц}n8tF2u?sؼD"&!lDs=Vv (sI\2@C])=V񏥷^$Z%ZAQ!Ip‚?/Lr2 qG1a0}U}Si8e遥kѡѻ5]\JY40"LZ5Fq?MȸX CXr *9`uq%jun%Ýa{6ޤ)ځC62ǤK+-&Zgp=]eK iWChl75&_"! DwZF]7h3pXk?1\Lj 4SA3IKV >Q[ %1TqZ95:nXmqιb'WFE+ IR ]! :|͎lķSiwGlQ,F,x 7d0=XHcrBJEWߟwTk_CN}b^c#@c '5Iĝe bƗJj'#S נC…O\ ?Qf'm3Z/<4o7Aע#YYwYԿN=7tR=%tk *Y%I&2jFi[2 ,;M|d2K4ludOS?xYr+ fPknY?Q^/5s:*K@OS]T3dWl;Ѝ}GO ZA 6#rT:/7ʲhQCV d#nPhX]ͼehވL.9.qiL" 4d@@ٚt(ZhӨklV`M1Gy^aBZvoVWeD١!9%CvT9vC"N?  C2tFMo(XqTn&s ~B<ҾX\*:GpJy~BR g FBtyE~IP`'o [JS&@j-eϏ67YͺSgв1 h/[lqKQnGv\Vh+dak|n%'a Cnk:M3(d"[-`m(3ъiuTC,ȃU-oRSdQX ArĔ| m_)!mԫ&ۚ(ANwupX([ PoD((q e<@Ϫ %Vw )k[f|>00ɮcvbnN/Y=YXqk~ߔ|)Ý asjC1(\}f!ŰQ'@n0fQ&h'D+N֏,bqB惙I& ˎO=4C4q\SG6 9OD{'4#+uMPf;^Ĵ{-Q/,\ @?q-둂>1iISޒ8uȏ\ƐM*`(bO>];BaWN>oE&#aPXDP@u"5P-pǔa6OC@(˯)ڦs xr$`1ֻ43dsMCP 27jX\/x&:iuؔ@6YdkBx8}#LtX^\U=1e!ӔYxُ,gUj)} |kd%*;Z0'}0̟6RqO57spJ_IX'< '!x  w~<kיH93#)A-a=MөSZ&}3Z3Dq듡jfLCe iNɰXuF<-l$ ;Ah2[L諈sE\5JDQmFK*YbY_J_LSJX#IKB$]}Q\q#ɂG|6]i[d|C`Χ =8[ȥ NjnfW݆ bf2$$lxX ^6 n36@\P!~{rWt\z*]$̚-rUjvKNT(5irCjXCbawL|'weY`[2[UbV]za2<,}vj3«C/AޣhNjOEd]3sF;m$3je ϶j= Vݞ\3d:OAlPjǾ0b)V{G9OEG>K-Pq}L3>Z>>bfӅ¨wnnLpU=f2%ޔs|{7'&IXS+baVP]eEg[(,G01HbO Z=}m?Ne+[ oY _AEH lTy\Y8Gߒ: %!cQ$p<1E@5=}AÊ |pߌ*g d!5{tCߘ݈ٯ2 gG̯G1M>J4N.?3e5d!p̫OTMI6VŎ&nI X:jm \0hѐ);<:,gfGH eUxF&̈,"ۊmƒ.)c-):a<;+r+K-aۀ)}TO<^`OWBDgW#zy>=GS)E]DA N':c'.̶KLJnҳqr5 vl XjHe?݃vSTzv[jn(Ho<4m<V`-AׂaVL&f$[koZh՜G w,PA@n732o45Z#_0E _\@ xPɠO3+Ni8N]^;cDElx5sC3NNQ̷NIN: ϳU5:)ʼ5lA0LWױtT.v'`Pzmz'`d_pt.40A] beyYVW(F_]]Y0`[사 VԷ܁S5bsUQǛO|:VG92GDCA^sW9o\iv`NMY ޳6) hoRԡىHRLaicV.iB+)kے:کn2.62K(10S1"rfY瀓WUn*ԗ1tf8pwPp!+{ycB"Wc0Sn{7;Fk ҕIkCfUfB WlKulMV̒T$Ks癘{&H uKev4M+|Q7y C1~W ^ƋzNJM&Z`$zԈ rM#*빓uE}Ildayۼ:m U?B )-L⹍!~}\?H?U<.v9,?iQߴNNnTH (wvtF&QMkzsyKSEp~|(5h/GИ u?c~FQ y-l.5qI }n!3[-a/+Nb^RmW*Ӭ-wlxȱM}gȳ05S jl̙u]=L} VGkoe("C8Go"ʈ9 whWwEZ)RJbP$:[t`Ia|WMyGvBDT9_M8$`Y6t3L@ɠ /w YGrʂ=qm*Ԃ ״`czu+Wշi|N1: E$Q`s}6뵷r 6b~, U=Y ^j0XqqR}]]@ȤFZli`юUΞ?1n.C59 pEG;/6 h>58TSSTÕzPO-;$)Mi4<( =szCǷR50Þ@'x`ڝ}덝`GyTIaϖom:IWIhH #~H1ԇ^jLZ1@޻) gV/A9"^JDR=ʹ;6;\b{Ծ>Lߪ\4.al^` )Gjd 1RGYˠW }^$.$Ji}ϳb4r10l= W:C*0c ] O *(MrзP5B|% >;L|`UekW2Y^v]vg'9b}$|o;ύt"^[{x)~i>%Pj*oL68WkFcs:"X:P|MghQ@~fc57_7[Ix2ͯ,^VJڼgI?h;fdnGG#7B?2G |995Ey*/x Y5/(|"-Q;t!Ze@IKJ(d5Vۛ(}PZʨ ;i^uErd^헻Ж\@q@3vI|7駧 %d=M:TO]t*ZX ~jYubHZI3*,̱"*)84{m"ѿ.W)>(L3 e b1YdTM1Georݩ(r-ms@ٶ;(?Mqzc{2E sZ#3xV0QʌBy8jš˝b*0yqg@fK[ U@| ~ [n)dDG<Y0̪d<,z8cWԓ)0c2,="-l'(VRֆ&( xPﯚ΍i)X~ՋK L&Ûc~D_HMG}%0 rZ’3wB/|t[ȸOY 0!, >V%|#mxf)9jX=ޓ/Hn]pEk9jkZ7s)茬 <`ʍ3 a\UdvqX/IG!~هG=:So`>UP/uar#` m39MRY v7<~QHˈcp tċ"kyeEj{x*J rzqNȓ03-*}*[6u(I>b]H#FKquqXB6es,+ +3;!5Gh;eJhqy-"v$ #n8d)5,Yoζ(k%6Gi.(*"ytaD<b1^H-7wVa9 UP[ijUU'7SHSG؛ߨ[މG>;aw̪1k&]wHkUq. U؂"4,.[{8jΌ8Wp9SbݼFGT0ݝ#L#ҐgMѴ6FYusעQR!R~/UݱSx: Nu_ FKj./{8YH]#-eXal_E;J) Hm}{ny 4'"[2}bŤ+,nhyOY8ǐfgΦUayIvTC+ֈ̟.Tz-SbOoG`֑ /Ԡ@+AcA zsK=%P@󹂌d ӛckg{@1ԔlDŽU-~y|'?n8/y+hy7m? y~gnFG?gO(s%okco$}e%Wͻ^,[pN1W3ИLk: Y\zhU_(鈑R2 Φ^VE|l.OB <0]sq޴ 1g_cUσxy OX7t3uYA^$`b-?YA TER|U_ T) @ L%pc;nl}GQxױZ+ow!F+t*(„ŧ1vq6zDx]f+{^;7lŲVWGCY r|鍊z6n!~1n`5iN ħGJ'|bL%R$4 %R TU߳}UcH @c38e-a2: ah&B;7:8zgɞ3{*".8"~)¨$)VhcF"`ͥQztr^S>v^ Y*49Y:e<^",vNm. KNv( 57 l{hyՓ1ɊZse/!b2jW,Oh:(>iWUQUhp&;] IlTuCA{< D@/]1\{M}%˃@ +]M/woPge1˲x^3y 5Y&;נ<Ӳ?و\l s;Q]t/ד)!^9ݒlXa0B![L!E}5ʛI!DiwB_1s4/L"^wm~=k;+MYTcOKhu 4K`T5 dL{Ne2$\aC̵~NX[&^jjguE,VÖkra0/o 6 tL/#`8xTFHAqHp,hEdxB7ܛ6ʗ_C};?KXVȦF14)O6R4r)/FY|8/c} ,r0H(#uGnyߏIs4hn,VХI n=>b cnN%׹ }yeBd=ך|\ۚ|)6=&%ϙi\8qh2Kh,Iql$N=ƒOiIc']P"z*즗(ĀH;~.cڤ5HX8]dҮRe$+ [3IQ*bf'1!@ h+͸mC}*| cvxBf $|$}f*X9kVJ>HkdU`)i^ ˧o?tu+";{@b8%X&XM_̥rHB:)zs ^e//p7M 9avizjPf|aiM|EQk.YGzYu:=dg;[ƀKE(gP Jps ,LyR,U ]p.?xdo׈7f FTTt]'AȔBpu' ƍpۃrG*x69iY]` ;O*k jWܵ{(?.; gIUW$i嵦Sc((/ƱZ&D8nmL,ʓ~-zIicmˇ^}^MZX̹Uͥʐ{cx|@ St`S%/yNC?ZC5PQ䋝wf tTi!#@oأ_WB#lr OwjmssE'_0A為4cS~Ov.ou(с2E TM^EY"Ƙjɼ&5(;0 ]MboD};`טI0!8,Be6+rx /'MjR][V'{_CڡrH{}ye44^d(=1ift=( xZ-XߞuÜ=r qs/OmvgJS㰍-8ʦ%8vY1kbVL^eԠTlgB^5&lఌ^ڋ YE;=Ŀ*\Y>늅հa)U]֊\p)poPoy06RZg4;"h+k|— ͞G[$yD Hw@-PQ)J ǮJp䋚<|쩹0e2Bi*>]ptyߔ1$[% w[ N!k zo 0#I-bl,sbx˅e/JJJ65|)=4pPfKi=Ce]f57NNpݝQA!KJ?s,7I}_@t2U m)wbeyG{' ɒTvR։6N0N&AW7=3o憿Zɦqr >@@j(>L'rR/{B7bezg_֑9D&WOәτ918L q5ݞT< CFg8Ey ϭ3e0Oou`j>ؤT5(o)Q)>v3 6t.x@0B!ߎޟ 4E D 17ufbpa}]FeʎNiܱt0zo$x.Ue-ؤ &ɧ8ڹ0w $=䱕M,Rc)~ vv~gPQmR }L hZAP? (?h7Ke~[.5?d0sҬTx o7 8|)vR<+X}R/:w܃# Hw&;>-ֳg]3_q)_іr-JE}k@Ül Z g0aj ^Q]Uaj2|V<0cz uIv6{eRK<#@<Rt.y0vjϠw%i_reLOedsl^g#Jep؈ 0y4?-jrWX~HFűqTam2DsvwX(9 Ʋ݃^9P$tR臆tq7Ԇ@359\9i+RFpHK1YωN_ $^oW/qF!4=. u1'Hۃlp7c[F}Wj;l! /q>mBҭK| 40b+aF*!z7dϚYPD4tV &++EYp>[h67Ǻ!c#dOUpr +^|%i`0j Ճ La\Yճ׉ A$enWQ POj$wV|J~3RƎѢ'?}"jaA9(܃l{,+#=iNӔpwed]}B~wsm썆ltczrzwz"~SW-A(B}ӝkhaν`ݩ^VD[Ugt T/m]F/#-$r=$:!B$J-;c@|>a e0DM1F|/@4 ZQUg J+ [D._JԛR,p<Yr88պ#`hC7? ںnrdky̛0$@TXJ1UcXֶL1B&RbD׻%}cIX`11nT*}&y\ \vrC"'܃F*.Rc=j[c[+4`\T!{b@{4$ꮉ]K[y"2SyxcoRC}9+1(kWy#72 vTl C՟@#%73ǚ[Jm&MTيEq3-u9hi V3YõMU8#F)?_5=uxw.U'6b X=5OjjM`m^f!oh ȅ$B3E"5vpN ?=ԫXYhSO)sRr@nBԢoE}rHiNgyrVjJn 53 ]EUUwG $YxK$ pS 9y[=T΂Eɓ )tRhA;#IƪwD;~ 3ci0&M"q)Q4;BI,U(GPGĘU|{ l&Fq mppgf랜tUFx~jrb*eq Un 9Xg\^!g2@xY\ƣ%Tfept``TMB0B(”R $u8y)y#B<&O?YE0nI" OeR=0rNN',h`W3ϕ%m7[ncLS:!@u`aDkC! qt#G9 Nli Id[qN ^8}f)ա WCgyBNS,F %.G8P'[+@OA 1>q"ũsD-YJrnKz HVWH⡘9T^d1Fw{'-S؆.ë. kzL.;@[ j%trIȬWi0~w $Z:@ HUC |ft.hn %o-WNPp P9}1Ci'6w>Jk^b%4'1@N=nB#ѽ3!{qثǿ<8ӌ;'kmka:xIhi K[xnd ݞNgO'd0L(xI(5Y\*aɷk\`GH:B9kf{"ߠe\4TQ`;{nr0&`HLIF&ݺOdN!ˌ&xߩ:L/K?üos aYbwrƃ{=- 5*Р^hBTql,xqq`PVfA+v)L$ۊ <# ([-+(~]n[^&0>JBJGu0ʍPz}?$?ʳ}U}CbGaȁ}nt42v}.ZQK9"/%i QPYb|8 ~.v*es0벁ۙϨSb{[RˍLjWBuՌ.P}wV,]ۃB֧4NGyOID GE-o\dS¸27;sp: nfx9>1u rПRM]uy>~1te٦:.%`, \ MMO춚6nŴ_~}Y47W+MLCEY66% wɕ: vsH.CPXUJrmu :mYRfʒ&nc$P8k4](kᙞ4=fgnsr{eƏN yzJ?ZӋ-!2;?W?џD,xa~]MQ[࣌s$lL8lWIGk=EHʳ1P;Zj[23I+3vJkx_2h iU 쮅MFmS:0qFWoY%iaq'}%҉1S6Y [vJXNON4Lʦ6FO;AJJ6`" ȣip1#GqA w<$(ؙzR6~qA!xg)1БK[81bE$yH R)jwM{R۸O_蝿+GR_NÃenTva' W8`G<ɍ%Gڇ=r {ŗYEz9 (i2A\Ek wdn8D ~z<2Jg&ƃeypպSJ&U|Yx·/c`4jdc`6f P¢q*%~ dr\)ŗxt^z A؁Řc7\G%]2VJZ[,&G׊>%I%upaIz.5SI&d-9:GeN2ཝ\^)<FC@SJ8,j 8j "vށ؛XcFFLodiq-E"X =hW (?T.V &l ͡h`އJ w_gvkWLE~&/贛cåW'ZJ:¡"C{2vJQ&,e'09I_BID9kAO+pHuWkuѵ_ɱ L46"þRAsЮ 0\.Mg cǕnJ+=gD]!!gO/ tŒSt=sTPڮg1*!.:κ\EiX7XY>Uߑ@QZYǤU%FxGd鵿aFQZfL|| 1]-L;@ĕeLj(#0CO3Wi fmLuC$+ q ѮƖEk8,_]Ѓ ދվ/m$-KV9(Kt)ef#6TK) #lqܓ@T $ֽQo1M"0) pK֩9Üo2S_Դt4y3iR .Kt9$#n 8oٯ;t"cS*Ӱ)cXE.R5&f5iʶ[V~ %g5]9I\yv#,.MAB#~hiT),cKQunH7کbwwߨAw5M ;I ;кwbd@W_  ݵ&p1e\8`Vhi hRXF/Pg ǂusaQWA=g |j5qjg0=xp:s|>6w)w$@V6ӷs3X7І}7,:?W]m&) qoZq'5m^tWeF>a6&]pwQA8L)7.MyvE&-MD][@QB*fVvX˜R7o}_6d>=n;@js5A\ [G*͚lɳ3tU"O9ssާڳY^B]-l=;|2^nZC.\<m|ٯ:`nxp!X*]Fr*j*@!zEhP;?Qxs%axe?Ҡ ovheXmkbi,-{h[ X.P$:5~7 dkP'2Yh

+vg)UU#9l ꞜZ`]&T~W4gZ8ܳ0ZN8:Y1$0㷽O ^m#j[UfO_py֟.NRʉz\ǣB8Y]Fo}}ywͩm]l/C>#X3Ԧ2J`++&/h\{!}Dς'\ ],| ;؜s֖"̍q gOn~Zs}+5ueOǀ~8o߅,^+J3j{Ӝ'OѐДZ THc@o`[Rstp1|Wâ^ڹω0^fCի!}Zv{> OKj.ǧcݭͭo-ggԊ.Iϻ4tўݟF% a9p_ˮ S]% wf !0\,߾88D۷.`\ը;"E3]ܬ6<PE ]MJ"0|#XE ^aU=wrmxD CPJm% )ՠw;. njml!@I|xo%±?$ख़(TpR<'Y tׄiȰ!g97)E~oB`v'BO9FB]i!Hsm (u@gshf'#T WZ:rq\ 'tƾO 1a&%ӥ#VD̡j֢JP (JrܕaB:ueQ|\/NUJ(IsH`)z٭I.!1un++ y7-W*#ؓdHMZK(]v1b LIBd9qA `#~uФ*@-{ 씱ޅ73a?gToEh/'@Mg3HdeœT[ 2݁[Ȧ2\b_#H7?mDˏ9){S.Զ(%,jWsdGdsu2C?ZG z=_f!VTie|)elͨhRHrto1ByOY9vJmQ*^l5~|sUc ~}JŗjqFKdMU-=!"(!q}%+`^;)Mc4{VD.: ospHrR%9W%o)r=@'8RG#Zb)ET߆Hs (,t\;͟|q#@CX 7`D?1#)cxQ !=*MCTOVʙ0ya>?m+J#.J4nAS^l!?AgFG"`%F; @ct0&]xCTX(yb}jk( jbϭKO"ĝ8)88$(^U TAΪ~*nI:]3ԅo1RRʡO%"JBUV%N͝s|4).* 5a/gQ22f; ٿWLpE{XkŻn {wlb/RɱxHmT=Sa"qR HkL_ sR4u+KL4rν wmqK[X){~cn JD1 1T*EKJ݆jri ?F0(MϞ;;Ζ=ŐRyfLʖǸWƣ/b2ιڍ'#[8>w$l4 &_sy5k`^ ͋pIv끣BɨP4;xpaϝ0vm>ӹ Օp''&߸Ǧe#S}PR/cXP\p+7vh2pL}w] U:St[cn#r{.v8\/ CUI+# t^7})U_ݾ, ĚoP d)wcv 35ΉV,&аTh3Fq-8zD*-=25?gJU*ً9,_<ΏAK\^Ni4=CizQ  Ҩ (b& 5H>޺x@<kZK?/5 a^ߚcXt:V t,EK5\ژ@`pC22#NrQ06r4Wcm#'욃?U'.a1Hl&rz$imgc)k;4'-Osf@ȗЎGNHǦ V|nPY0rVڟ7R3'ΰ1v( @=ݛoh +̓wEjz6+ kuh0Pl fQC)px?jrە@ȱ7x[OӪǣB(ķk:s%ݛ9SR/(^Ti~|!s(<ξC=৽v>C4j>G+8F?Cj1 ABXԋkBHאRWijqXv\If VGh(o'tAF8mx*>K+ΰm^"MSWNɴ_W|'uA R\r4 ɉJ2Ny B8-84u& g?`ęDkVepqֿj<00|%I1#\Cm^0|K/[fއ~r gu~linզcQCj#z *! nkԮ&zD,5~E H*2ge13Ũ>ztu؉MCܢ=ϻuIl9+0NmݜϤW2^M ]k#' ֓~fob /~׾ v zHJnh2ӑ{/RRף~ 8gئ~i_̙HnbW HHh[o﵌Q7RqB)Z130Å g?o¤%#CA;IM~w ay|yBkFR4/]['i.]dP5G-A:rzy~L oKuȌ%x2ϔ*$; V!5qM&vj9fgJNZCnt 2?T-Nfɦk].90xmBԦu1~ ,`Sx$x.G(;bl(Bq|1gr@5rd@ؒ^: -EF~Vj.[‚ N7a1œȓa8ir_3Pw߷Vߦ] L>lFTΐ;7s@ zo3}tfLw\%rWwt  jǛsDG!FR򤪓v@0/S; q-ρ!8-Kń0 xpx^2 i-ͅٮ ]"ྡ F۳>>`+xB-bO"d vXO֢Y~TjÊ'qN t*^L|D[:s;gm $3J[y1[dӍxIX7!^yo%~vD%7xAh換UaI+e[%=T}nfhɭĉPԒZMzV@-z@7Pd?-RΘ〉\!^0KKF25-B{*%9;W )8h1A㠷AgLIՍYr4L_<=čZR҅ L" 9n8V6$&A?|u7fi6a{}6nNˢKБ@du\gIU`ܕR=<|NPj߃|ZgGGlcNgQMQR>4" ‡B换lj:ږ^$4r'X[J>8M@_xؿlZ~/_"Yz)+19< Ss"kSj̢ 5YKۢA(zrRNf׸_ԃ!cGxXx{fy խjMPvI*Ǵo{^nwވX6I߫_(|bmZЖ>Ub`$4Ÿ̠C)wl[?s.V:xrZrg9Lͽ]&W$C{10F pJ|S$N)A|7?)XރKtP7ޅم$:4yl}|U[==e* mMɋ~2"!6Apt,!7 [ޠֻȘE9Va$5vD,7-zdOFN073[n1P:Gt^\RK׹n: /))tȔ .J`;ŹD;VouNhTj,Q-bÇN 5'X;[=Ʈo 'vf栻^2,DqŔLGn6]^ <s+8p7ℸ HmmrSw-18u%F9#5 }C6G\c!FoŨ1j\w*TvjZň K[aЇ*2v"G&#G_<,Y*_W0Ϣ_j%dg&4l{LriY?W!SbE.zq\+AlcSRZMG;JsiKp6uvEڳbGNU]M"܊A:Y7絟Ў%sgp7e? ^x1򸙾MXrN.iۮb[?S? Fngg强}SXNötSN1T5mQa^b $oI%V*>6ǀГXhaWgSNq;lxoͫuEx?Kr%2yM֢.wl{04]x}e&HjĈۑ,uT\ 2Cr6@&DZœzw euˤ>1û/=:zImAv1ipffč㌋O 2(&hz  lW~`Dnt Q_;Fr[k%qхM!D؈MzO>dYii⌈_H+]ΫC9% ೩tx?u/&//x;Rtg9%D 5ȀC KMf2~`HXGA34=gM~4FŁ^t뇺HXjDb"ŔbA )\Cllcd,Qx$ i.vUJ232qyۂo!׋Lejg{_- G3 6 eB% [DA3njn-ꚱN~4h##l\I OEͰ[р'2Pd;n]i_CDP'z0yLHkk̦?'Co%yJ0 XL"ӻFړ8IT"EV *0ޠӮZ<;o?VܟX'Rݵ.t} d<[2]8YT Ḍvm]PtK48&/[,`p(vc E'Up~sQSgcFJA`<Ն:;4% ʾVe)G: W`] EbnUron JkU$cEw+5q<<.x6#p@ lAyu^Ö0h4^*Q >OêqBH ,+e(p"й%);/FC;2qC/z>JwVŠiD=#gl1o"Qܡe|(k(ߵ*D1zqE\̽shhC&>&sS8F'k CDb̙mꔑGJLW O%u6A=zɌy6E+^@pkϳ5`)?ذk  γ-$Uu%VKզw2y[Уl"ƃ:R"mv!ۜW+8ٵ1`dHy 0M% J:;6bh1?_E,0չmp$K+buQYޮϕݸ]oP K_ƌ'v=ռhh;#1 D 1°u54ص.wg(IM*`Z٥zi4![1[AtP:H"?JyӯZE:ʏw&|L$;2׈w 10G )H_ F#2K̚"6:\LW",ffs{iþ#EZoǰ%#K"'sA!. n( L~OV2.J Y }{ÕzB:qrc0(BsrC (9 Js-Ԑ"XXtcElJ1(]4^C"FsSγ8c@[0۬GWGS]u gq3Ӹ؛hK-Wes0Q[)IsB.``i=͖t\ґI ᤖ~ہ9j$uCF`91 ̄D[&iy-b9C[.3Yn3縼-ǔ/mSye~概:u,lAW/mLL hf׵dPެqO>*mB\aY5L08gINKYCT?@a|SH;R2聱J^qD"'mă'HuQ$م4;Y|],+Kd0&fwpƅq_β2&,&& JɆqd!nvĜIe宜n=e~2qdEXD/4owV&o^5P3aC~;7iO~eHY |XM e$>f #cpM %T"CÉʹvj2d"N Ro*&dVЏ7N򄽦oϦ˺?rk)qٿc '^3O"~e 6ڎOƴl{z y ]j;Ф\!XԏY9]}^ +$NlMp䣱?}^_wЮ64U:B`8*zZB[Yz>}C{v@DӀ%h7MUzO^Q쥝@ӃX !bqbP5z;LC}$Zt;,_7}́fJ 4=VN;(,t(tBRd`O@u=01'Jk[#7>%DB]Hp6{ ٻ?_Mq>0y7n4se{kUb?e̼Lv@&,⿊R;$9~&,jYU6Hn۞s&-2[Q BrR!?.]g(b Cg-$0.+{ͩ&ъp2Zl*.=82kn]{r%_m6d08H>=!LW(,87*}f.iW=gWǦ剰X[T؜[#Pl쵢͖hZ5D+qpK"CdG°_E9PF f*$q٩'b)׹E Mј'K[$5OϿ hۜ- \s l' ;rU+հAh rAݥY!ȻEAF}NQu#z֦r}D{pp뼖[2U`$ɥ=gV`2HXo0K8(µN,%nWZGi X>[jF3`3.$I3Q()6$qX>< WDwXq S ڣ5qBT9J8 P)dj\̊3ӊ!`?>~wnKI5KdYm /lk]c) _3&3#`1Mm1 svZ:ٔ[ D=1O\- ai&ۛN 2do59kEM=yX=!4Վs?(`xbߦS0RڔM Bäw^&W7!8eMy,WB-: Z%\,Rt2@ ʬS6=T86l~)PowlCo]È`;ݐ1+s.x:C՗Ru a.D6 ޅ%$N5y}1qb٨ t2#{tZDg'4H5 9u 6"NRbPo@6 e#L 94>S A !JcK;;̌[P6dK{O$sqJ$@ = eCR&l3cǂKmՕ1xo ߋo686{7 XoLj7Py'Wa3}Q>}M,CWiQ|/d;uW37LG?ISY7RzF+쬆s$!Sgeje҈Y+R#0f*I:kx-I/y.ՌFn)Lc~&3[ĜypjqiY"t?}KxwR ô$Rs_{sB]wĥj,S.>pWِYS_Ȯ E=-$~SV`?gES ~YiP\Xhi֤ƈttn{o NDUrwu=ɤ&#&98qV+XʢAD;EETKjQ¸F-5 2d/$bQƌ1qkNk{%X[X 2jyoiXk`R5`Z Cgp0eE[}0Gj$>'K!x&GNsyr<_}20f̔myQq.5ֱ_Va˭79ϭ$!D_/תG~ܲ@4Ìcb_Vzr{{*T ڊV@;?|LN(>҂Aݶ&Zq'2 }>y3 3KVkv14y@ VcHd4`2.#;׈Ld˲yxcNڗIL,i.$;GՀVzl_sO0:/Bzb}յ%yCk,U7/*558sBaNPI5/"p$)g7W2Hy} OG/ ΊL"i&:)~'ݬ !ZZo$!m^X>}%KȊ͔^D(Qdc VT`}(?"J5` WN ЕȈdm E!uJl wSlkIO>.殆w ٜa#/55ǘ=)tIYN V3Wn3iuaDž,5CU˳\d!4:N 7V"[]ϟё4WCY$mxYV܌Bjv#f0T1Odv8*NSSSˆz\zHڹ9j&Jxa a嵡,|:@mWzS0پGm B0Q!8PNfvACt݂{9)MBhXIDx.v_Ja#{Yp|V#Tع#W`D@7(h򸠺guInZ+u^`=4!k6\['tqr2ΣAi#:}'Qˀ\H1VVPj(+-`+e<+7wKl\H0II9``lkYOXRi=>sꅫPG݈kK[1g:SgG+5vVϡv,_qW.dmV3`x=Iq{d,~1XOs#DdQ!d'qmӥ-cCrP.DT[e8-(g`QM`q ;Ur7z*v:Ja-G(0Өs C5 5>i(FѺ]B֡)OXn%)->]<@[T,hhqWPLtg,>F\H_#/Ze6Gάk/^iٽ=(TWm*Jr'„*x~ Sl86wMY;tJ=Ej,Clnک kH>ZF{OG?ҁľ {MĊ@%qeM,P1OwPk37ՍkJWY M<-K'cɗp@~9v@g?;bI֝]ߠ%%MT/9C\ɕ&"i=55l2Z[fϜy:`} 9ewdS9@ ':$r[s? =O|QϨB>=Q1!H&ةcvٓ) LDq$Xx0gyA)ɍw9~ms\LA.y niE:t4Hc~oQf'cpI9W֓'@@<@WDp , \ c2@-;k{(sz }1tRY1VA,ᰍ9$�FȜ6|294O-r).gRJ- YwѪ?(1*1dD!gƨON 1N^1YVhT$PTd7$u]͘M\SK/\Avwtm\rP8_>rG XL&jBOj 9)U|%,u"UN(J` WL36WwOHsbU1˜l\oXf @Rg(_ԠhpjZm8FocN'vr`NV73)"boo }cCz$gl20o23K6&0[J ;Tcv" {6-"EoXl7KeYy+oIxc )q! yJ|'lQsr ֝M5s`<gߣ_WjNwhXth:#@:̟*] էo0EJ!.G[ؙu#eeGhO;_<ȉYQKoCqlZ%g_2/h@r5fl.4Ndfy|q24u 6`岢ȻĈY(aV>.|p'Yk S\+>wXïyE#YYԞ}1PW(Q^cm}ζѸ?zWbE$Հ&A3'B7?훪 ѱQ! +Sjs(e[kGaL_4,XXvh5" UvX؈ʳKͧ4Lo*Çp+"N@pW]|FKwk$J '鶃g17VB L6 gfec D׿"ݪ"&Cr)M+]o|p C_бFXbyS {V85@eaqēTp!!<WIg 6_*=^kvLOղ=LyU-_p <%[ ?PӋ]_5}PbJj42.УC"6_)75pA?C MJߧ-#FF *6O,nGD77"0j\d9<9gXUFT#n2[6ziJRg@ZA {಼+dBV>e}ahz؈zz H*%-k4n$1 Ӎ- )k*n{sO(@3_%,y+>h~냟.V\r՗>:6M ;HgV-̧|ljGÔ%*o ^E0\ !^t+}Z7n,ZPS B%oSvIжnb 5̈́ۦpoF^ VbHJ!O&Иjd/qёzv?brϣ%na'=#(|QJmUZz~ʩ[[T7P/KsitTS 6U뀣)dEIU?\QZNNT{jVX$@|s4Er,`*+9@( tO$Zq7 veEI=5GYMK8ss יVg9@lwݐ~,Pao$!N&(=q7vY7%`m?1MxڒaDtq5@ j6P1>ziŔnɖL ?T c T8MDv̕4:R5O]H}w9 )۲nן*21K"}b^iXIs;ĄD l|}Kڅڐbk2K Lx9: bg%dXxօfs#~ naEZ(lMh*Q؅K^c~ pm)94mgI-U:\\0 8V%%r3JF&M1wW墪wKV:(559~7sPFGjS'W^| lϩM<ߖ< m"v,d-=@uUJ. I1ZQtQ dU VCxB-^^*D2lt}8\cgY(1* d [>NtzKbBSqRܯ2UFd'Bd%rCq :׽E'˯:8hX~WAk4wGdph;p/q#UͱW8ws|*ǀsS -,SãQ|&VpiWSe! (Ym4ةV5,‹[H1n2%PLS,SS]~YG!7e2#媙Bs>ƚ{1ēH?dGԃKqW)tQ:?~+ xd yՄ,6͗g2GfaԱg ?}U~9cO3K ގ\\½-ڢx5ݚK< mBϓ%[e_QOM,ȫi } y7Ò= ~23'ǐMԄ 0EMѷ阣Χxܧw W_jSQ8kH&F*,h4PSĪKODLd&ԶM6 8FD\_-yWoux)w`~.,ñgJAtkN6֊)Tw@n/sMf9xdW۪S4F WV@Op ҷ>2ه`;XqgAI&)i;QW6D~湋"Q ě}WQHj;eؽUco37 !KG'Lf hj kWݏ29P_#pw|%S_~( !oJ; R Y{a`oi9U<}TAG3cb4ӍQY&j,wRezbr%i41WiA׷k~o^ NKqxK!QP{"}J^c=zg+V[4f~KݻǻD369ULgbL`z¤13؄gvY $ԲZ|qF(V-QM'VЭ<VQ+ Dt"_ǩB> gشڰ/ķPBHL; &kB̊> "`3fbAϖ|難] Z;ٮ75R3o8*`^S H ~[<3qGPG1QѮYy*FCŕ#x")p-6*#k8W ۆqNoӱ 7.5'cނ\QViOXW~Y}IcansFp/^pO'ؗCZb@N6=ΰ /v̚dÿRɛla)Tط @!#5_su@ "@3ux#.ڱqT" Jl1Y9}{:wI[J^N6 λH5@8waAp\JOveC"q, 6$Lrs>8U翼`S q;{i/GlDNQ  <4 q`p|l:2N6|qH߶D{S( <]*|.(ۣb)E^|zzmq1n\ c. ʑ'*Z;h&@2&WIBpS$%69r}x&m *A`y;"y?%.B:_nHݒOqWx27귦GCM3)kQd<iB^YoLg>o$L$ˋ[EW6P;r0D}m v1MvI3G'/cJ#cf_lO tY~knVOYB3 48~K(& #ϡ0Q90T]'jżGy%Z xZٙjsiϱH4ϲMF2 mϺ,C~Ms*jְ$<}' DMxOml(nkZ"ހZq~O?SHIG.fג/Q_(r8Z vVo~ŭi )2m¥P}/N~ h(Қ9uTp4wR ۣ X%Էܨ{ *WXw7VB㊵WJ&0+;2ܿMbJ8>m>?]49zOx-{c{ذQ5iR;? 5[ |d&5ô7QCmCשF]+dè9wL-oLv"/J`"Fq[yV-+odvl' [9U{|%BG{>c+M8R/掰 hXG'd_ `)!gYKoy]S3/zk UUW@Q) cYq Ću"Ѡ8#ӗðHܲU+M򦤦5Ja)QjScchvQ ;7fIJA~pEFA! 4 B势x44U7ɆP8N10kYrR2T@ZYl6=ۻX3akM^|$ P>8!)uM]k}-s.ܓ%38=^SQGNRWOn2#Gucv}tOE69-@&*PNS '7:u3LߣSBȱF5qcV>)e D.B[q1>謐-ۼ!WۍUi}#YyGȉmm|;y8}!MbS9-mQ䴫_Ŕ+WВnJ=,ǀۃ \N § 0z+Sƥg~ӈZR#z)mdiȊ}(.궦vP.i鄼fI̞ۘ4.4ob*֪,e5 7ih6jD\RYKao)WJ3cCk%U^[ uSiU"]S_QAw> ;ͳ(Nl~2WxXJ ͊&@(%LFF u,lND]n~LQ͚2ޮiZ)l+ΧJdꬽ͊r99*M&g4RdͶHs r,z gK8d21 VXa|ɉS ѩu=XgVenbTUNm0p%~aePLJDܯg&q&6}sc5KxF#D}uEr?zgpv* Ϩ<.4Pt+y Ƞ9id2r,.yNZAu@ ~n31͍w ;6 q IWB.OKu‡jkw6Y[%1@ >(RNRr/Fep4HJ,E&i_dCPh;Z+pz]YG>`TP)V \32,B`ʺ;">K>M"M+d. MlEñamWb!2\'ZB" Mq`c57Kt WFnZ,Il< EǕ:%}uV`M`Wm.T aadsDXЋ7ƒJoė8(YpwlQԘ$9!ZaZ<(+EZretK0=%%Bm_RV 0ag͟=mdyIUF/|-B@%~u+9?Cz"$Ŷ];U֐uf "jB2B:|*řeRP CI︡(ٸr0'$0'-=|=@olF|U$#Y_ o{3q&BVsEE" @22l,Pn>U@ol?l0j6%/OE>fCHcϴndGXhH IL@l˥%Mq9zCyE`BY!gkvphdp}R $: <ǜ,:A=8-`T+%?Sv BxOidn}> R.X+O ĮxԚ%̪R/ouaV~')nDynHb4QP -tKvwa1 dp9LxsQ "X: 'bzM[Bl_ l Yj,1[ҳƟ&Is Jɼm/斴ejg%T8[X1:z柊ԃLYg6 {`0:kZm7_un44>ulSA}đ>ծ|^P/m$尧RtTb*IBXuʖfۼ(2 5mb.!uM5BҖQvIBOߎ;V@_h=OFuY b ޸xcz!?fAڎƅېM|>!k?2R%6(8CmKˆ_v%g08G$~ )o>.*[ M˃K5j=:Q ~w^=[Ο܍ʠ텔dL5``{C2O!`V2ʹ_#"fqǛ ;kK#52X[1ʯٺG-x!' .s*+yC9`>]g4EeAu,\Ws'hy'yu6)3SVC_0ېQNHur-t;d|.7U>թ T򀳝Q5mm\-Պkw@!ko+oZ!$|JPdR]XE(U$$4)[)|S0-ɁT/B!D|V-k)gytkło0ih۪RECLW6 `(vrN۾VA͢5P;}KksG a;$w fcOxTI/ 1)Y_Opf-օgRdNvϟ[L'a)G ڰe)GRAW]Х>lO-&Hu?YY~I0ӇtK^_տzU=X$bKTMҵ7ޙ`aNNY0:+cZ!]\B#F&uኢ*!&qFj2ivdFZ(`ÿ@l|])@r^^9?=ipBd5ǭ˿6Ыho&Qw]*co\=~!ff (Cvh9@3lhr_bB%4FhIye1?PG[>W닥Vu;HY5ڎ.gH") BB?-],f1Tz|йHPrP:+̮!ʹ7=pRG֯3&V68e-vZIdǞ=Ic)&l-K:r(ś<1~:3# 6qe洳{dꉙ4~M1˱¾W:EO GWi8L{E`[8t2Gg^j)xn[~$QeͰ9;AYvI_684E^9~U3YRv@%*us>IPB!*2a΁pq7\T n+$TQT>G(EWR:XUTCCIE}4YjKTk}s~Nj3W*Zh>93(:U+ݝ+#]I\d+qq˰ޭB?/!oDs85UYi{ O;1-&΀ȣ[WYODiO5 vXSSvo$r$ bՒ!^g^f߂ۗ܈"nY=YEq)yS0AuB_o`(%Lړ3㞻i6tNhHg*h͋r)YFDKkjڽ!ɐ&wtă ?UhJ8h<Ǫ pc$c{ߞ\z%r7ݸ=I6k= 6 OJ_L߹+pR./MdwӖ6v]= uo=A#0)式y7#8Xf߃430.?hgCXB$mJK+3;[#%M->+0SC&#Ar}} {Hm b8'ڤV 0@@MLUx6BG{hM׈yPp g}hTԪ(@<}=Lf"qS&u}_10T3 רO xN4Dev]Mɧ`a)>S4֮}\&%Kp.Wfc!guZ'cLtdra lyK&&- $ȅ?Yo26Cy`kW v5YL4ʢ`UvK E>^HU#OĴ O3"TȢ c6qdݣ!.{ct͌ÒѠZۖb.a aS-3s@g/~N۲Ū˟-6WPe( [8/myNݰzn1p̩Ňz¹3ug .>)`Ą;}-QqWF+-RCY[vm$+kBR1{:ZԍH1vP4W۷aN:o-g9&2*2A0-o׶P+y&U7av7E@,^Ȫ܃ 2^o&rMTXEsi1zg,{F0rjRP ;= yCYv@ F*7My$o']kYI`/,KqxP+;&܂ԩBp]ʀZP3sOb$wqkLJ7ɒLSˤ)i\YքX'T(-T]= Z]0O:#xJC,2Ʃ!aOtKǑ/i6fY↘#2vQʆ_9mh.N.vpw_#OrW,4Ց=^D4dMڥ'|Nsy7870i mO[*j/nn],*6 \I^?>: .:Abؔ$S?NGܼK%%=E'Zf ޘ<\J ]m"i6VIƪt! %N%çЀG>9$tA$x>KKȤجR1P|^遆>M Ĕ|>ߝ=?% ԑ߉ WwZo1~h$z$g~Q&~rQhmϹR: ?TL1AJSzHwks969ʪݭ v{?ԋ$P_cȵo1[n"ƻp Ro pm=a;=ׁiG=},X [PjCrWwF@JMC5+tpwrˊy^ w٬h$Ҏ6i&#,K t8+!l7~I+WqzSzm.]وG$agYcl]R1{iĀobbc&+~;/Y'U\ER,?!րώj|A %qlw5Z^A.+QQ_72<%[GBT9=L5&ᰜ˟):0"ZljXlmINGѹX!In7 ։0AgKQ[I)&< H) j#kv:Kl~]D6%$50"ܞvV-ɭ:CzqKm".rnvA`MޑQ57]nYAzɹ/?d͡II?ٰk 2p^@DJ&7z)RQZӈ?j"O@rwO*2L OEfdMw3I"!8`yZ^@P~d0R"fZ ox%zz7/xG5-,t>坛N̲E(؏EOړгȰț;\wi?]ʛVםa)!fO"VE³$w5N7dݫā}~G%}uϮZ馩gy%\p*)/8+vtyX(rv^S|NݸA@ȟaG&hj MCXR j<[&I¿ŶQӋ%܄U՟ex}LO5hEC;J7 TtbݑS Z$ờ<ba{[^m%0o4ñB;#e>m:EИ F$wgc 5p@.H>7R 78}Ȑ:X;O73gTQ /cET؊̈́ػ SqPI'Q ZwT&`t$$I,P\)%l= aE~^{@7*Wa!T+:!*Bx2oPGf׋6Qye M#hZqZ/ =^٪sg풗s,耈&.KތC~Ѥ QH縫 G6XZ_zY+oԙ\zӃvwkN6e)Fm$AǔY{+鍈f Ksnx8Ps Y;!8U&Xp>ցqj7a{$O G+ f[lDn?@?iD?~X଻:fI@`۠gƘ>G[Xz{&Xv; ^N?n튕>t#U|vgy݇\95t{{gǡtZQ'uwuʬ5-&XvJ6#10Gyu^.+!܍v M]FU75U~&dRZ)]WnD|{;fLi!T3 U'5e}_S$ф lvJ[/0jiuN`'ͬKNC(FHDkɄ?0Vd\ XIš&曰Bq}_ U%&,g>guW;VrxIS@TgdV%!t/b]s JH!#; VؙEHJb,0!VS Ӷ{0:f9aEJle6ixӠ|VrKx0;yEY,yW*QR/\1I W1H/? WqtPja8z!CX/KL( EjQ 0%}8TcZC^ &[kB 6]4GadM+JWtYZM]c Щ됇U]BoGcL1NM'~6\~x&iYCdWIx/Tta0 ^fVц@i8n)Lqo-NB4$l%E<&eͰʾMeE h,Rw?8~NU8e 6]vQWUF6&C-ԎEp/l%p+C@Ί7(PΓîtM,8ebo*-ϥ ~b g":@ ۠{+trn(72ȇrUR;Mqc+̧)̎fvpHtv/wFp)xQ1~ZPm9쨕f''uQIF Eߊcp}՘%*iظDN%CxZ΀;,О[q3zal_wH[8y<Werv~t,cs|2H8uGmil"p6r1$SkhLXl+2]c} $7(\Z^C:5AL ZW?M}o2O ꁃRmQEBfFǧێM^0Ѱ>9m18g<*N`E eC< MҼCWQj"+s}m˕-^@͏C!K *Ђ2 KTA ]Eo؞G0\F䯨 s>Zڸx Y5*^ }{ # ύUWA~۾s{t5Zs1/j> P;YNx?bGEn^, 1}ڻ@5=Fţ:97?s1=.=t$ϛ\P`C=a$=9kN\or;9p6{a78F d=v CR(ТUYGrWC;(X`_(pm>p(hB[o8h Bg7(!ATae;Otc^󇌉keI s/b퍵Mp%c)Gիd^iM2Hcb 4x θdir楣5^^0{Y 2%JgyA?'=el;TRTdL3iw<. Yxa4o_]Q+*wj\ YH77] ΗIJBΧ|KG;QduX!P\xWtg䋹1ŊgR,{|W,I5֋>O>sf0 Ju#eޯ89}%v\FڷcϙP' SJkz'lbP U`!:-݋`7zs|7`\L6{ԂԪ1AC`%9` /_ȞAyg$AY6zR3X(soF·FSw(Lu쇣Z&]) NtR|갵țqqLηTqy$+a?C6Y5+m2+` 4ۓSjwX%4کcJQb}С{ۈo6Y5Bͮ0&הT{䜻cMc%kf`E;d-)& V>3/"H:`[^<6]W/\pxgV~I{HojS~ zҼظTPBSn4Z,8bIv 09NڴT7̗Pp3M6^*o=TOԤ:!pU,*eQ.﷞u+}7G $/?үRk=Fva%cgٖtH$8 *L-L1`m[CRm_6FOWIM4W E&-+VzWJΰ!%3dH4Q EU- N_*|hZu c3?auy )Hy-jB-5fm>~Fuo9wjKN]1I7p4.m[fc}|X&s8#u:#FS [ <) '` }/Ȃ]xWvۚ} eE~\Om֛;ǎőG5|'obuBp'w})謁xreFҲ,E3SVg H }EӲLͲ\UZ+&Ҁ>=vMq)F^w" ,TtK; FT|Շjsk"i37tBAjV0RN(~.4L ƅ9B`pDCg`)G!4myٗќ` e%/G.U͜,œ"GL[P^o b( %~p͡C5Rڢ!9"W=a,0v.lseg6+"%9a1胗M4-Dĝ s픦eQ*Q.\_k/v3rYi@$ћ1#wԿL0o ' cUaiAi븁5|W;3E n΋WA!.Fa ¼^{#n` =Ѻ0+ivrԕCv~&eIoEuי,P J o<[uwks.ecw'1"wgÝLXb hbgAZT !|x:5犆qX^&s [S ɵ(͟^4LM2C!L0uW`ti?RʞWtjd:IU42C+F8ܚJWx͔gM2F6TY([vnZQ_Иow8h<Ep+O{5la9o% qsK9EJerRƠK>[R/q*=u I`2>k}= )I@ y܃B(6(OnC&x1Xr+,F?kIчNǢ1 MozUӡfarDÆ#&'Y&meRu!VnrfCVSmvM8#ո¡D0QYnpX$*agS6TӸ=MϺ=(> 1C ySxfy,l1 40VC"A4!@&IJ ̌\ŨA+hW"ÖQ3 t>LOMƷ >=qz. }@ ҄)?xFZdkfwoת Éx NIzThKM=S<RɶSE x7''s;-ĸ;!U|+>xràJ<|!=(ғ |PJDXH8:X$eQoTآt䯚6(xNk6K-̶_+?J;9\l('epiq#Q,d }rJ!YH-!y`%_` .p_%Oa U$VU.i<sʃUŅ!a_6v]?,_hcka3 a&S;Yͬ^-1L-0!YͅS.Z'YԢ67ioIΙS'C0(~maA`+/] mͷUuY (wR.=g~27̡˟^:Kn}5g 9_}8Q{)u~vشb"g JMį'hW4su2Wp7ke&_?V;^a&5b㭯$fΖ a'*߻LբoU(b,l>O zZσ >}px꧀2z6eM ꯣpjaFdP<2td] _INxUZ4/spkd.2ԨIUt.]jIW\md?B ȡR.1d"PuӁ-Hp"k e-ќ^nbUWKנXQjϙ?[;Q :@ [ ;CQ>UL6KӖ zX`'`lqЍۭYD8 TKԫg=%2~0j~y.лL,#mOTfN#oNXǦdg|K$DeU3 i Ģ ~3n5O_@=ĻsS@i2l|m"Y=A O1ɶM *v',vDqjGK~4JBYy]LfTh|[k5.^`bh Y_g2€'%I97hph9ŏI/=肪.(5¢q =FƝfRۍ0쪃not6 9s8RO!T9&e{yW&,c&%ᵞB?o4ouiu% VMÄćM6m+ίMbD"&i~+c?PtegK%(b5^w^V9js(ݔm19` K;ᐚ?vl)krJb$ [kBWexIIǙ<Y]l iB! $M"ׁJ ASœHU1)5=)Y+ә5 S=%3x%aJއ 4%2*7|l [{i'7!95Z+* j]K3v4mtng6䒥k;Zd0gY0M8Io O[<ۆ8*Dq0KO4 da!d|א*[tmܛǍ({dW5#PPNIl$wwR؊x<1l"ܹYl d4{ ,1:)/M-]p}aU['H[Mr 9w뺼_ 3*C[uū쒸G²MWJFYĤh_tk,s@6_15ni>QDL>iemh9hY1l_3ȎX~BvXJ&ʀNc9]p/ AOK{vQCCZdDkׇa٦|7&r,#,3;{9 CeJ-Os!PPS,S ;hCJ#%]NHZ<},V| 6SuZm= p"bEE)r3CESl-tC8c^r Tظo,8hJ2?!cú )JKM` ?^D|Ϩ7*ӂp=lY`eH3KC L:x%FAA!>C Nya,O "s6\ɥ]U}^qQ:K(z T7 Gn AeKR^~.m$"L#3qw[ RB˟^z~}*4SO!=#%deaRnۧ .KL gsZvQ߆?CH;Wș[ цP(ؿ ϲt Xkg2BaW-D?B}u= GpN cPZ)RmEADS. ҁouHd@ g kEƸ.[~\NĿ5: @KsGYWrj,!-*sPCcrp4I2ۨ!wm$Z717N [,2*B>Ұ LegWClo楉Nhסy\ (rr<: \&|p(WnjЅ;50ݏ%EbD KIq;@]ob"+wL5C\|H-v͈udDїo):m]3уxA3Y7v4{<_^ 18fjå 79݅R_9nM,EW%M~af2j mٖUr*G v(iۣNqVuZ p KPӆ!#ޤi&‹Ԗ?&־5׳r/7:[Z G78il!b@؅q\j"„"ڦƝz}hMJB%iVkHJ0;^_UGN2CՐ3oӀ2g&u3?7!ک/Y>4٩6Y A-'zo2D qx{ܫ+-i#4OOwF'gzx9t`)!y `U~a!bb4*4`S' 4;2e$<4H]B ;=lB=.6 9l|M Db7J p=Ok¹79& t'(.x@+b"Z: /<;Nx5~Q 3ҁ%c5YL{2+s?烾KH4fk{tu+i7ܱGA9%_,'*;{c)Scgrvk"|~ -j~JoѰ_ZB ]qE<W4-^vNO>_@xC; W`POI'g՘4{`mzg3ƱXv/PZr[Hʽ)0Թ28sqȩBd8FZoP9hn*C+ ّE-Qp{>Բ+i7l58&wez$zZ1p>v; _ M^nVi9oC75AC/(KOZa5Ұϴy `,by{Q#~Q`Qt5ҼSDlab9䃮mv?RAաg,>_Lᐜɽf1!&Y"O(=0cÔQ'u`C{d5c!H#d3Z2w,qQuDɿY:ZCN^")Yc,J{V~2Ks"/ bExOy=T;%& pWvzu )}-$l.U.>@-~[ bYÎ|pn8vhb jSfk s|Mn(@RcY=߀*0c h4W=ܔz?O%lu‡ஃ2?XPӣ5% ҳx1x%<UA0n=]e^]%nr(YY\nZ3Gf1/pBLVO=.MQm7!l-̤v?vPDf9zGNT^NYtJ?.+}O5zyL_=YQ^h[5JWrnۧ M/nX0ss-B  , ~|?_].Nl#42iXPe+5$xm|yNL.^ P`G#H#ϢX% CWcA'dHQ2$>@v%)d`GzJ Ո^῱11pxn%7atϙ;` jt}mЛ0C\pv"ocDqE嚈hLH#BlPZbXS~k[ ;jWLTnۑ B.Nt-|jRT0z8 ~J)mLFح^*E#$`/dmF]IJ$~%S]q\ 73Q%< fŵO{jl1d;0Iz +ܐP b8c9Z_TA%GͶ $v*B|"Afl)Qbc/&J:~=)Pjc ;"Xg3^gd6<%x)>ɲIk /0 Ga?,>j #6p!B܇=L ( { ^,NL/Aark1|Ȟ$;2|v>=ā˜ |g ,k"w,woޟ_yHn01Ӣ¤&4xm-o'M9叡i! !~Q9dZvͫk~u쟔67NEGz\$kiM>a; ߏc?L7G!*͸v<\giAz eΞ^.(jF^2~CRQ߾Sd6t=*fBQ3 L}i?x13 EyZݠa05YC0&Ȟt8eDr ׼?\W-^ 7}Zg1+LR @TJ{=A"YĔRJW{Xcr:rj ko4K6k!j^τ َ͝3td@%^/dr^|Mh-Sћ{[FW.gB[EhEQW7O| :h5pm:s?K^\Hm6RPAj0j_?7E1TJOXJڛ/a+Y!)@ 1SţŐ?"y,veS7?TS6LVQ_ihAG]7i7yt]יݫ!qݚK؝ 6xX;t@D|yZVC}=Y3%nVBl50+ΆP" -2k5ztnR)"{i9$/ޗ}[<6r-hB ٬-]/jIuSzؖ:'&zG[Y YyI&@2fZQxrA;!.Kh7ntrKFŃPxi1r]mk\Ɨʨ$56TYFe x}xʚV2ޒ +}Pj.S#i_*K_bHA',Bx'ܢ|BvGYH >߮J93`#O)\w'}mk8~͝(D=KV6Hm[S}u|;{Ax\s]m8:t0?]\E>roSxpk!J1q8z~M'Tk2^2'` 8fScKLJ 36rQRl7c3i+/@rӃO.-pWJC=~f.Kvdp3uxLz(b$\[B3LuIxXpb\zmYEuշߦH߹XK{T4N`CkU_k| x\Fe- okζdjы.Ta"!\ ^n/qlRs^j3tEǢ`?mo^L^n)J*oR*$uN76a49zqEJ@grmf"D {:Gkw'‘ռ BBskAaoL:cK.aUȱeBeuy+Pu'(ܳ++wv ;kn!l򐬪zAVKutT+nyA6_IES<8#yiծNN_G!TtYU,qww͜Ǎ7?ݎ̺s_yoE(Eb*OIW ~63"iq-0$vz.#rj~MvݓP@P P`W0^%3N}/( =:ufRm䓡ibRor2.̈́YbEpxpJGZ[tz!a|IPxHV51yZ3RE̪нqD룢I|KV%20Q[lj3*+BV"9NbZa+/Y\燱ƺ"neq7M0?CД <=ߎ@VMEEԮO8Y]׻FE,ߪ s$sbS!I4H/% vVc]:.=B , Meo!>oGPMDJӪNŞ` J5$CZNŐ{+w3]6j@U Z(Zɿl$%p`x1<=~g)$6F#O6Oll%W,oIVTU4]&:+9j.V$g JFj•*"yy厏\L>7%6| xgSd/?M#޳Oՠ bC_)vŃ"!_-"peMw?hk~}QO]= _ xvWM-t'j+z‘hI& GU|HK-. ٔ~?Njr{狘v1`a7uϯ*ͧqu܁cL@It8 QFJ[sxܽSybA~#^^f_n| @ǕJ x;$?$7>^*ۑ($ k弑!)9=yQ8/crPAzs .սHmׇ;莶 ;Go2LmKT~o7kOɺ_^mgxp\pDS>3&B*Z`^XS01xr'Gu^&4-m7V*\5ŧUf~HFz3u-zgM7 7W-ӊe\&fe7 EpHsM`lk Lbm#rQBCTXv.LGԿ50U!i{ҷ-4[ҰWJYvAy8Ll(6⣞ Ay0-6&+(햌Den(IE'w ΋[iED|2u;C2h(Za¤td`3lqzc; NL+ uth9σT[=֦` D޸Wk-t\<띹3  z4䬘b+&n Bp`$ ʿ/9[ I!J{"bFX '9ݴZB/VrG)MMkyQ[X+ٛ q¬8abpݪr#?\pIfk's1i}g@8q .=2.`۸l_~-4Dy,7wqhVOjfϑUa]8”BИph: 0Wݔ@0eJrt%9RDeRN< EFQ2$pճ `sZ_̬X! 0v;KxqbI"D|YNwJhtje g e+OJE|[*^: &sFY M2|gaVR9[j^ܔ@{Yt1vh*^iG߉´z)u"mk Y34SPl1iRTdMSi :T)~J!C9Ěsae'`PU^r@PtY8\C{hAcT} ҀK1Ia]LdAE;%ו Clʜ"VS*÷Rfrto,D#6 N^=|,eF+;6&GU(YE~Xv{{r0zNM NeK '^äyKu!ڇ{ yG 4j[v9O)YABQ)}KhhWz((~XVKT >%Ehi3'J6bd*x% bt-6"[er" nҗn~2#<mN*T&$\4sũ)$LHLD’5@e5K0 [⠖cnlGQ1]bج/@fhĺVܦe7͗[^w 4fOmAE^ʣ +}d!Ckه\XeiCG䩇^7Zzg09POeR@p :i,܎p4n.( Lmvus&ҧwaj-z(U$EyWmCOXאOKf Ӂq,Ghu@ e:J)HI%C"GmXG =Q˨ƞC4 *LxgBXZ뇄{7+mF] 'I$^0 "]fo6Ҩteb FiJjqkt'ԈDk ;HM/3GSh_L({o^`+Ɠ)+Z \IcM-Ԉei} &{.F?բTJM(S h \~jN| 'iPzW20.!2E}i&ឣ%}XQ) M|h2%9ԃ'q䥟$uwF3gt:@gz@%>;.5!\cQh:@^=M 4Fk漴́e)MOlvaţ61s\_| ֯!?߱[YHX4G9OGDv#eɞ͌g{ Җ700sH5O"0 u OE:MxZMuXhPuĜ\EZIrpNc )pFu|kܷ~[bQg <Hb[@8J8ld.|:nq0n;e;BɘaD0R踐dֶǙVJU*v7bJ1:nvL *a6;|3asԡ' 46bJ ?i6`O ^ܹ ~$M1t 0KԭV嘸94 T*C}ȟuo?L9.V 0ALÿ2B:MRCsaI{UX xn׉BU_ek#Y>6g!!-.?]>@R Dz*ԥU4?Q? %@}B@ܕzSTBdg{܅HEe+dhܕ+z٠߂(-U7GsFAx?s+L޷>4xL񊛥lab1ZYl{)/e$(>?}޲q0(%5¸ *&{Hmگ3fJU 2#%4եE;U  (&?WX6>|<ϟ6{3ďpS`kg{V85}d vE6y,!OS#IC xg)滫V1o;iQkYBdL[ Q,CMU mˣ;hV%*U~t2HqJBB^fW@鍤6v%JnOKvb[LaPhGQpYn\dkH<$ו WG2pX"K#2<:x怔a#)Qyt>ҾѠ\&^)40r^=LP+W|Ŵ^rqF4ν¼7#fݜE"6>NA( ]F5\(s7n-><{ƔJ| ٜS!~yeӮE @hjZ} a<4,&8"Bt!]@X-^ӬA.I^Nm1Nx`dZ%21 QA:2w:\MH-[5!㺳@SGWBP?m͈fNH i'ķ18 ȦjvMh(t?뙋No}Yl'U&w㯯<YF>^jKR9[$'ӭU=şi79f#d4õŭ5끆+ |ᷫ'HpB^]A>c*ܗVQGT= *2Baи6GIpm^QCf-b`?O\CYyvE ^>,i`UuT[EO}PvSP,Ԓ: Xѻ^.?V3H28.W EHQí2.;ev8]~Q#$gŜHU٣U<6qJ^=lGj8zk2~lgb-~b23IDcHs>2";VSmFP_P_Q0-E?k#.( ljKu'/.GeBQJ(t{6'G0^ @C/ f]SOQwdselJof*}W_^h_{Lxrp\x J%#"K ]K-7/4xO3?Uc)'9vo` pm<)>e.땻_ :z=a7ڐk$EV:EU#82bˁj-CNk,̅"QW*w8^,Àzߴ%hق2OVVS(/:sC):tހ*.k<թ&'˴mZv I_?+16P[,MHPiĚ<%ʡw <ĺ F$qZ3Є5Nl <$g.#oZL=nerhM{H%&`yaE@ nvdP(Nm$3fV$ bf:e7xSǥ<1w:`!d2, Rv&`°9-|eQ8 JG4S;S/i]qFG\]o)Gm"{DAc>EҊkZf6F5CM$u>Knv Dŵ,eY[Ӣ \Uˠ_;/ƪK^~Su<o/yszO92f(ZYM%2E=N*m{, F|7{$زTal. W n0fQқN)Qx>x~wePCŏ_Y"ȉ(qwF~=WIOKIog KZ`slY0zp?,lw=EaƐFu-XӘ?<_;du!-ZVgfPŮM^K6y: ̯7b/C&OdpzaQ%ͯ2p8Px2*o`BV ՔwË2!kSx8{r݊s_|K1 2?ʌ;ş65m{As9\_X՟4 :W Q3u7) ҫM lZTe-[S҄[yNC1<b:aC!gJ~z4V727pynB5mpo,{YFAp`7hHŔD.|P-M{Ć`?@m7B\WfS͵ Co\D;i/L3i~P!ur/Ézw\pp# -ʊ8Jïswm%ft3bn>TX_(3=l7H'^=kl:ڋnXpGv"KV[!qqGbb?j',0h?x 3PP<#I9zD&1ղb YX3* Y/|}X72MC8@*oc΂ .p8~x_Sk(Js" QLrӧSŕ-3BQ̸"m盉P{H]P(` Kg9r]we5, 7J> \d*e^)eE;Z 9_wmpyPlxSB]A|Y.s@)>ت`{;%pfX]Q }RFnv'‰,@7 53, .l| o}xPvY7z}E(h뵗_ fϊ O@mcMπ?u_Cj$%qtZp?d`n./4đf5lX۾OŌZ&s;k_φ}[3(<=[WB@y^|^W/@x.tצ#cLۛ\.>6 FE_-Rޯ: g23bI_+;6LͶW &UGy6OqB#GvPvX#Ns$k/AmapJk%*lXW<8ݓJP&.δ=`$F ,`ocKI~S&9_Ep&XPDC^|cCn *l::`/ԣ'6asO{8e'8n$#18@bAn.;D8OwrfYN/-,΂yl6lR2mKx vw$ƕE]NgErJ]~1Ugoi}w%/RܤنZׄ櫙MO%(hݓ *i 0YEzʺs#A`Iѱ $<mF/ nqBb%oWP|sN%6w؇NSF-גlh*=Q _{t>ɈIH_vTd:VZ`H=.}d>[3(䓍]0Tp']_.^}c^e#Ц[QNvwi? A OK𳮰ݢ}^woD؁IQ+e_Bb=+Ml❗in&%,2F\dtLNam7Y~DgaVy$~f1Lfyi$"t"Ey`#fJb7s"(CG4HJ2NoϬ*iwTA 4kz_ƨh+NL )٤%]5G'v,tbaa>䡼U @`?-rrY9r͑i%Ie[_QN;Vf/:1_aGY\&̐MKAfGLdr?;9 )!=zx-_Ëd!5-/fMHD2o3RSfOr#jEKx00Υ:6ZBBsR33rvE)&5XT1*檬tL8^il$u4u>qA >&RwX G?`}C X!#2SR+G|!-8?۩{qd\R@My&5=&jA%ɨfB=cj?ܗ {QL&iB`3,]" Qn>qd`xD}z{.yY搫v-Y*?Jk_f <À))^2tQ|\Y"U=j +莎%fXbod$U C.mr7!j7]0.\uDl%hEuh INrHlwSy@X-"fH)Y0*5r=w 9Q5D}GKakn9{(9.?pU׋\r߬q'>~֘Av2NĻա=q&O`Ph 954:*AYw ~lp'22yXC XI[x|5 3Ӯ[ ԀfP"Ɂz߶*Xjg27 Rڐ ަ@0_kUz}XiæhoR+ymDKN3+"K @K] оQC8ͫGа /b5lI]>?&TҐ1-2eRa!c`GΥ-5%2D>C5; k[4׎mSL*w/,h=?Wa;T,5"1}vnХ B`GI1\3ਖ਼Pa,#SRg Df u&6S1*Fv!Ru -m&⠽t iLP[M \(š2Nm',8}8%^ZY j*M>$:=㌺Cƀ>eb_؜y/{+,L UIҴBZd4^&ЧoYaek:ȖFW肇t{9śK$*kX7:# f¸ BR0jA}O)Ђk+]/tVo 1EvO۝]Y;mHiec7u =M8x/G:Ja.4w\;fؓeZ<#߄9r145 x 쭟 ܈b0}\X]2X-{^fD[uMh9Z 3lVʐp_p7Y\l՘e̔~ڞz@b ѯVx$f{R0I*&DxRN;׍UՉK7{;p-z(7L|g{EpG7~Q0(E%H2j`iq܃[:DՐF¯_{U "n,Vq2/#A6 4v^CiĀ$IcscQSu.k9 tUqR@ۭ ;,TFM62CjE%{S/|-.|^UIia Qc#Y! bzMD6|dHSsj"4梧mqr%8u =Qv$, 031GRLBz!ʆ!HgK$.;:CX &rL>8Yْ#6{4f#yxeC$͊+1 @ʆJ15M2}6N{Xfp0MgUfi+Cr<զ|2znjN/̍`v(LUr2 5<,IFm7(/]Zݜ0g\BjI{&r7`=m~fMv5́f׿ήKHS@(+bu^ZN!2fkPTH:h0Q܂_cq:u1¡PQ}΅/ RLYye?^&pb K)0z`iѩ1%X4)ûU+Ђ~ꗑ ,an&H,6^^b :(e [H90i9S5_}Oah>n 4Ylܘg43~ /~L4^pxZ ~d/Ç'aeiߘv&@@1V*k?h~o42;NWaoAswUb~)LM4#ÜFeyqOah:3gM׹ֽw(ACE7 P!l^4[ 'Ar$Qc~B7eg9iÐ9nÑŌv4:h}錽L!Ui$19t QOY%^]8Sh6"13׭5׈&b(!{2Q\Jp j9 QW܃AA*)4܋RAD" 0c (yLp[l{39{. sJb:Tpur;ޜ:ES'KsCQc8AUK-"j?y !6Bp*+v6yֻB`Y\\dBnՖ(  [?㌩H&;wQ,! v)(r;^v@~H+ezdˇve?P1!cI>bħ`+ vUysWPsiTGi㇣brk8dNhCn-ã^~)_%.C!g@7^A??| U]-;mȄH40IͷhA}.3߁'o?HkOEբ'|N "G\G݅cJ{<{Q6p ~хCp-|S[qyJBN^ Qbf>GGkc i!Τ?Vou 8C)3J3{IW[~DUiK鶩[ܜhV}岁c#:%0TCK?Ф/Tm;~g$e&`kk{ U%Ʒb;bVYE9B|12vCfF)elX2hGۧWsFf;kq/GkJH'"B}M(睈!S9#ƁYkRjHlj)U MuGerj \&ŠnF9.hEK^{)J1dL+֗J۷.mɓ{Tf,TW,t0ClWp 2R9<\ٮ[E=h:r}A$|\G +$\,'j/Pt6{oUŲ/t4A&^e^+(I$I(ɑc|D2j7Cw1Y?^@O) u,M_`fט6ғvewI gyHsՉ03L\6HTZHUSC}aiw8ܞ(/I 2I䥌.ÑI%ĠQXwon;Nvl@/E %R8RIoXh-B8\N*/Qǝo|jmEP$h'Ŀ';yE;[;O\0a`ܝţv&int ?|`5^(E V+lq[=txP0wŋR#Y]Cǭ&QF,+(EHMBt_-r!ΆSM"ؕ#'x!Xé _7ha&@Vs A9[bq[a<̨vo]/.<䞷0Z{Ru\EDI ^jK;.7˕DBڗX{@fcѶH9'tKc^:ɺbZ8LOPz l]}c3 Wz<:w޸ e8SO똦Hϩsms#;:Wr&+QdYr* Sy݄S1?~{xjH*u'0\h7f9^ѿ_g%*drƘE.r T"r`(-QH`--j`'o _='-Ḫٔ:;EdVI| W9CC*T܊ K?h~oLKzbG"bfL (_?Xl[fuYo=n~'Y5Aj+mʾIh` ,u9E!q=7Ni-wdžw(̨2vˋ S h8ؠW($%oTp6F*8.HQkSjΒ R6xq7t\b\ 5Y0fVǨikvYnf]uqxuRNt}(3 b"[7! oPBOdžľz T&EU?O {,ȢTvnt1h!lc=C8ERN8'>!D$|g =, 0Y0B\`e(]ĦVgs2עF,AYQktkao(yon K EFK mQq p7Q&XE]pq]+*;\e&XqA9ޖ;bmN.{U H+SEIOɝ4ʘDrT&Orُlʗ[q{atd;].*f24>ipFq/ZfCb Tc:rqw48cd,G0w0Q̸ ef4LC@rS; ^rbobΩJ*I ]Êw9dY]e8j+:ce>~v.\Ӣv߸m*/9lt]@KKS6 kasɕ+0QfK(:NZ>Q/*)0쬲pE v /`5}yM/>w YT'უa*8閣cǨ a>$_9-OnE]dԹ|Z~ Z-^9\]TWúA_tMΗ]5 rk^iJ pXnpX3_FWCU. UV'Hzz6f`+WoBÃEȉ3e턌G,fw\v6*;}e5@Ji~ȼB m+cp[bkF>t?VgG_D;SiCo뿸‚Ra?OS`srioHu/7edwZL2ǹu5Ww6&v,Kk O49t*_ |q]#}g]dNߜӉR䌑0||vMD|ܟ&We1Ŷ9~6aC4ĤRV% .P-F5>d^]qFL@Jk5NtGDg%4ŒO^5`G|ҦF`BR 4HuŦyevXtqY%`"PI6B9`utjl%"!zRf>V3Y84)5VqcqԧܜYʑHͣIH#JRPk,,XN͞T*yfbOMGI3vدUk >h BCW0P!eo1 bb?F^_&B]$vGFnVj}%FB eTx?7#Mބ567dyU]ͤs3"꬐PfB`vLb-:64jLx`=I ߿)QnsгH|SQ! vV1P;-ZzcY2J''5G #"V^.wZ6ukjȰOfSvKX^wyoG_8eqxX%"ndhME;58s!զIGl8J. "?hN}.RbS?#0_ KIc}׊-'#=yoHL%4#Y-S:rnPhjȫ>Ds$)"+w"ii1 wBhv_zdW͗andDckK;|Ō#?"Q`v/q`!VAe:J7 Oho7U鴠1g"5#Pv1."Y@ri`=+ ~>YV<6#4#FygD>w{o@ÙH؈aY1q}x"nM8(OZ`&l=#sj=.3T %wLt.z!OKZt.A;%N:Ƿ F00*izeiVEn[%3 DtVYn5ށQnkf P\=nHnX'W ԍ"w<3Do%{ք]*z EP 2쿫B^ 1:▲g:=*dOlFIhjlYF>N :A|emY@d;3e(#hzR= -J[:I_ *xmNä+7,bEa+o鿾^4$>Јagm&åIm*I;+5 &) >¡rI;2b OH؍>~;WLga#57,6vO@q\4%q8wIzi_n*NWT9TZt{ҖMf(]ܧ95-!ciIDҷYv4=[w?9z6 z7Xt]Hߐr4ϩ #)XA|Qd12eODy4+%e}'¼#ު}Mod!84f+(X=-w$kl{jO2Bz`B){[f=[5Eʯkϛe|mN8VQiBfR ,"ﻔ; Fv<o} 2s&cEKA5vF+" -, 04n{-<T:n;i+:x'8fÿ>E_'xi;!DĞK@(4ǏVĹD{º&'豱Kq ԦnXn̈́,kgHceieVN )?šlod%^n>F&[ ZRr&j: 1sRu^!$3{_L4ކ 󥰡Qd< mp9M)߄NDžpJۢ#+p{uvd)鉂c[ e"#|پ-4ixk`<$>V5Rؿ~0yݼd(F™b: Wq{RϜS|Ǭ xв _YwP}kZ*P]lL ;J=p$v 4&-. W_jۻn*[K+}e&қQIw~nA kYhmdܗ3W D*Brl~K{ W-_ffa[<8/ĻCh,$KڱhZX\;;xD7⺉zpD:P6mT6s>`=pyֈ/\2X(m/tM%GlU#y~qRӽ ݌#mt&$۔gP&2K8TV:Y^Sq_8TnV<6E`׽c?J:j=`hRv \P$|mI !tv*4#f>E+mnZ˽5s!0T4hdubp~::[-.=?h[20t,}ıfW?76-[*K_|Ew2CT ɴk`<̈)v@A$'zopUK0$A й*bN};NČ=Y;Puzt.M; w9Yی(L$4VхaZ rQ׹bvm?Y8c{Pedgo{\G|?w w )_Ie;tKTjG}ZǺ g͜%fP`"LY;ڨ gלr0MU?bJ]}I۶;4G i9*dŀbcӃbFr-PT&ta> k X} 5݅5YP|ֵòwxA狣1C=Ɣgx!.1"fL߮jO:1yhYL+ad~&b@@:BY[4IqZĊUs9$44aPβo`RȔ (豉poY9UISB쨡Ҡ"0eE磝)2w׳J_/"rpJM׌*Pe a×F xm#8]W[pFF|M̨D+rhiP`}MkzU7gXffVt'u:YP3{M[ r4q§}'~ۧ{T#Ebm`hbURIףR Z1n5w#ņ %y), JZo' 1#DE}K }P\ʷm%*K-tWQ>:g #LhI[祳\!:"7gJ 08lPjz˚^V ?i"=Mm+?IOEU*2)l$0ID{j,8-""-)hO 8z "*.J샙Lw'q밞巨`"ڇh-8..+E X0S%SA<J$`3'K`mqaBQȽHE(`\t#huk"XQ17ٺH=m`"්Q:rN9hty}ѻq2 eEMnq$S;KÑ[6lT,#oI;Ӵ8~U"زƂ5"fX?0 jf_p V.+l{H!)Dt4wPGT"yOL K>9 $|s8 `|)J C3k= ^!f>/TЫ-rMU"fm=O7 ^o36ע M/$,׳PX,xl0=+U'bpJMYI^;Tz sMc^'۴q%yעK*`}GP\>o),nً:O ^vE ;C1hƐh91.{ dxOQ!JՄ&9 '}*\Gv)|GR:,p]&f关Rl.p, Fq m)H}7$(2\:ebj{+3Q Wnܳq|y.Pŀ$89e^~(r ZI?йhGst.Mc5?{y-zW&O}s0$hEad(& `CE*Ex /)gؾUgUvtGjȉksbi&:G螹a_x 23N=yªw͔ ُ7'JEFS>+2 qCgr|Sq/[76Aq ny-rhtť>|2X>` 6}ӣ՟ve  64u >c/6=1A)N$ʣbipEÆp2kl{bMZ?uR8uѬ$ɬZN%kפS4i?~*$ue=  pO+zIϲun w>xAG`MhNa.&(( hL ^v'4g>\84Э {$ J˻!q%puz ~5+No)E E;4@9mȘnC߷t|ވ>cϳLȆy[T6#. !fEL\ Cj-< zcL C{+31 Bepˠ1hA 8wM˗TuT/DASf׽,AknP70>Н>ߖgvMAg4ڪ4>#3ꁕfTdrMj^h_XϪEgys~#NϢ1[*GGϚՂT _5xmZrxu_{4 zu_|7TkRVP]Rl.l,)ß:('t)A3##Qbֺ!ObO^}8MaRJ pݍhc1ˠh,$^cఄ--"-eT<]N?Y!:g/ TulV Z _EA7΍!gP#dVH8m W$3Iwic&e? w,SLIoѶCLSb\(ETo+E4 G_,S e1ܓW]#XJӒ~x9A < 3_ .WYs#X&@N _s.&zH0۟'/PHI% FOc $=CJvcnIC3n @AhipLIu dKWTעy6nj2e=O 2TǸ^[i(ȯ/{&> o-Ou(ϯ84z ~f?+]iֻcރ*}fj7Wa(} \3KdވX@!ÑEU>vf1GtKo_XBOK?hgzZޛ? $47V2du61{0%,d5N_LݱxqgG 2B&PD7?AD {&e`ኋm b㿩=jBO&oҮSvR Ll+pdNC9Vy'!In]6 Ep L:I 1,MUI\\z:1,1V 'f䜾MEV5;M4Zsu@ƢKa܁Xٶ͐5Eb3NfzV#&ޤ@#J @Ǫ׉vX [܂rm%HEĮ}9Y Nq.n9bJ6I0o7,-iV"@GTO3ߝ r7s*j#G25Ciܭ(.}YB!m_io!$nx5qT!R#[`R௪~fOX=sX$ETQR v~XvT;W?3mSd9smiFh'&U&* 322LPw*5˲P=f٨m%RnURUdeUd5RHMA}Z 6{ VQ~`.MBGq!~ >P6˿$Hb3)mhR7;B@2rDh"vLg4)͍vl^SeҶAG:an m'Ԑ^2]%q% bV|"CŒ :I^6D)t7uHvcbLm' &}0z3ۋO6DPjdgxj 7 4Y$_i#s+Js~> ?k5s\xXm-S?VhvyqnK5[O߆2snSTbگ99 *}O_T+Fow/=`T?'y͔k.l$DWHm0jK-醊6WLlJ7=)o8U[u3XLN% ?5tMTe֝jRP *yb\C\[-]b6B& QV)c#C&a.w`^:=(Jb6[(J{!tnK'_R1ÅS&ބč3$W (iL5C.?_UqL6B>5E^Ty6z<$SUFw/c`=5:؄›Rlh(N0fU{ بJoT8έv|tA=4d^lzWj>LWaKG ]=&VG+Ų̼%}y3 Q<5k[8%E|_TEQlpy 1iǝ gm9OYot+KdWj'Q}VsB"ThjmPxYv(͒jHz *+ZBj??8Ol!A>]Xfӥy++?@+gp]Mϧ,C*<ZwV2g8H[e[虡Hpk6.:_`S򊑑xc59s0 \ZW `1yˏ$EzVpF6Ln{ 5.]6.Ӛ&$V$"e_v G#M"ŕ SUvNF ؄ mQy|lއgbM!;HBrm7۽.|H>5^p$;QPeo'Fb -?+Trֶl@$rŎ*_mTL0oWsx~VG+iz\u6.XZܲG2qx]x#,Oi9c=/KO };(p_ _h rZ]GpY5 L&6Wmd؃` &64V`<] ~\ !(.|Wփ~,7Wۑb<$N:`/:a1wҋAǪ~'~EL6fdž*ZWcLY6'^%AZ-wyk(~֬a,m$)4WۮS[i%'|- *S(뚱fEmKj (#*22{QXOCwߛU/+ [Rh`H/DNtix3'A>n +Ь}n惿^twM7Fֳ oL}o1Pz~lO S&{ hR8=C7MfB;t4IH=.bOj܅@Y^<ոd)E7Uz#EZH!zd+٫.lCs9#zgsSj:UJ7>DЧ4GkL'v(Nn*j@5b9k[Y& C :5dsH/LF3[EܿC04ۿy2iAk`'FZccO>.g-a~$ICh# l`7DJ0`EJ l1۩c`w?Pߘughl}SCP۽o XкK;^H0 U;ֻMvU,u/-~6+vdm=&NDfQ/@SbUp H^nVctj5s76S.1d(1h#kv7>aR15$6]hy¥~_(<#mB=noIł% 5"M(XdBK@)3|ZW&S"k9GHY})n2alg˘@ǽ,ɭj.E' 6Tl<ɥ1lu4[OKd59ٚBAeԟ\ w!`r pZ;v${oddF}ЅAvu=8f%cUcȇzb *͗!& TDaJsoy9i2 |Zf\{%س>Ks%)[*&&$ԭ/yvX)>CRAª)uБɫ2/ K&5 I5HR?tQ=@*W]ֵsD:MXKnX7i|jWJH5ZM(YhDsЛY!_3#~>[}`AqL*_8oHxz5W,#(w4+$jv8sy#m U[N)-ahzS*f@G|}P1⣺RgWc@[)4_`xA53TR&k*nHviG"c^.eiBIkSET))Tș' P6E>M7ZzM fmPegVIh?z[cۃ2snRh3>\51{-ZP31f;]XqWIΎ9(eJ؀091} n(p!J [^̇dțeo=n RrOؕamMw;Z/ {@(^:\6LD؛־jจs|}x`t= P ˢ߁c,A-1"n;3- #b PY7,у3'cf! 3xlT,Uɘ0x1<^xcS]V_*pAxc"`[z.KCZApޱt., 8:m"'GQrØǞ/kD4~7A_`/Lf-\R(g5jg}֋D3oV.+ 5#4KuVv|QgI t 7\ ;,f9]ܨat=\AK D6|pGHRN\ =mOB$Yg6_ZsYV!`2zVJ z=kfY !,W#T*Mgw0ۘ_Hn`0h_CWUz$c06z/K"i[q:)fEߟ܂Ӊv5-{f:ݚ}$WwDJaM7i^d,`=!wL>TPU(T%xQvtV8 V NZIXQ+t[ /]ƓP ]b eƣ7&vXN a4?ӦԹΠ Ox06<Ԯw[Lz6PX9ީR7ZVq'iZͱUy͉@ZQWxY!fG{J0q*,4CD2|\Eii-M͉M M#3 (si\j/5Lw\SIǶ;\@/)caR=%2L:~,{yֶEkʶ ,r*گd;5`c gmyfgf oeI3^yeYHGJŸ[Nӫ0;Iݖ fQ̌&l4[p7ȬhiFߙ~4KEsq !bPvΠr̒N:'~VN=6h,ˢΌ}@\gδfaM~ L!t6ԗAcI%ʃAM1쉉r6QؗQxitiH(iu12I(%| uysWZ lp6,c]6߿JL90q"4J Ă/X,N ΐr7zB 2W\ LĎwQ;v}5 vP9Kw#4ZHZjnLܽbj7//c9B֒r/6-];TV\MNt}RIى)#Ջ.du{Bfo:ٕ-ffxfo?`e2y8-9{';ʀfgT(^3![_ׅ&M]oY$K!quI*pf̴3[{է,f$X6)t1<د .%x٪0|ZpXY⁍cVގY\I'9p Cj0嘰fxPUȐR 0RBöʺvX>@蛯i4MS= jÑm SvKhl U" b0^Ǻ`)H2d,^hڪo\ihŚy$ 'e6kLcc.kY<5pTT 72z-ď'-&% dQފЫBP<>eNI%RսlחOaDlq8@֎ڂeSt$9hΘ(zoJ(*H" ȓda[Вm|fW¶(6IHmSw^VbTZG+5wdK;P-wόUAiZP_?BƖJ_I7ő^u jXzS3 ݈og!7d1!Ū3[r6hU}Bj>]P0(0<ž{}yD9}H,o B5W.0%yAΠv~erV(d=LwC/i6oksO_؎R1.gzڝ4&JJecЗ#k 0OT )ޕ ^Dp "&Pʮș RQbzlPF[$W6<7նL4cEh<~hn V'( %"ɤ2H 8@J&{BIh|I?pB!xJ|ΰ%󥿃Iҳ66 sU0V(gll3,{t˲D*ZwvƄA89 | 54ܼ6HH=npwavBK"Ģ4٠d w&}ZX]H`iēdk 4@rQUwLX|T3dVTŴ:z%9xB[[5hL}$ ɸi 1( "H 9߰8 9܃x1s-cI-Ge.pT>[>Lo !;HQ0K1tiSX=Sg3j#ږ>T _YC=9_AdΑo%P&29@yYD*dV.9OW7w6ֲ·q@v(~By?&oNEzۖ3\ѳ!lƝZx#9~?^^r{r#sKO90tV-rO6!KDRRnOuErrxto8 N :)Oמlg; aAtT=ķ<VB:X832īTQUר>vLy#.R*ȑ}P,N<9ưf쎍2Gϩ؍ݴcQݽEĘ[oJkI{ޅ`MG؃XrY>XB?ӳƉl5`C`0͉p91(Cğ@;&qQ,8 ,-g~js+Fp֛k P~u}ucI 2ckMRtvnxYkʄo9-?!V>cD U6W-#=5d_B4ɼP`yV=ι}ǽurPfG(Z4L;q YXCB M!\]CJ|_V;p.ײ 9{OP~PͨS37Rp^j?G箎{_f{Ci,*\'_tT{8d=A?2g$K0 #"G_A|XYf~(E6%v03M=!% 'ְ.__녥19x짲@iQRlY xcdj,q~.`}|7GM~ Q&'྾/rEkK:lZNw}&"[D'UcV}3U  sSg&7naq7|6SvXhO$*! lrQrr"Y~+)DtkCākbA"mC+[>2gS&W5$.:D }[Wb:I8K[w߂ԛ@Zz SȸVolZe;>1rd\r'b"iLzVHq)YxjuJ*eGk\']J5ý!Vw6}@Nytߊҁmt^J7j(òmMEJN +SA4, JwWFԯZ?Cim魸]f0]X^2{ p7'9L *͏G8AŽ 5i֕6 O$YP4vWEOU͘#XlNBm xF53bY*6(u(3 G9m=i+~En%knfWFyE[i`# (-ZkNoHkFÏw bKv59QtO+Ku<[YXE  J <~? .b nh?mpQ哣1>>:)°_}wܹu.Ev,)K{Fw ytڧ-x23'؝f)54oTqLSbrI*:Kݶ*-ቤ5 `qjY[NR&aȆ4|lٴ(=^fTCkOǨDRy  S0`/H VΡ4~K3@䘼Fk3l|NZׯ{sZKm_W ~ߐzv+Z|f8]~ìYYz)g2qYz;:ƒ22 ҬSHi((YGL: SQsyE*Q2¸{d _m 4os[Rh sJɉ6};%Nn~^P2^E6fcMqB 7BCm]#֞m$G@vǥp)mn( T4E@x:SLMO65 }E呄Ikɫ4ˣi8[O*ѩGBC`?>0[~Ho!^ KǸb:I8 L|huw8c c_K=QE{ʡb6*5I&QÆWIv0\+pt#oS7YW_^ j RPgձ?UĨbh^!2֬+yMa%R-\De A{B낂_^ DW2#?,lDTPw7Ŵsa-8nF?)̲%p,I7'E/>)YsAP%~Frb!sʓc^m[xqaxtO C&Kv(ysVK&CQz;wqy >M2@H$ V)G=t]`e?xk@D""܎e>|ʆ!%h~/ 3E 3LݫERݜcdȇ/hj\*:x5/+נTgso`_fTT_H@|V!u<#lW/OTd'ᗋӽGϚ[⧮:c5']UhO \\r$HYSUKӱfT ~;?iw<w{=2 Y=><5,l"#,Fۢ׷yǤ[!nx=3Ԕffy|q "Oo0=CR:Rp1-@pQdM)j6E~L _(䟳s q gjηì'{z1F;w}9D)| eMfҴ$0KnIcSo# =faI?A|W9M}nd)'M&! >$rZn(K{u5kϺ/U{]1*4Y(!oSa "D$kZP)F۸Y({3xL!|Wךe1 >_4 g pusyA.ľ:0z2VD. ܮMo;cJ][Nt7|]FOZ⺝J07; nq'))(|.d&`/\r*!4wHnzT+y%Hm4dϟ b9jaݭVX!*aY)4boG_U"h~Kd2'1(z0JXĐnCRol+ӮYGy[]`CRg"ia*ei, ҏ*DyJ'3qJW*ca^@9az.]&1\XEqV2BRX$pIi^W!EZ܊妒:oc7DE"!v\A ҊSm9 *R%:O/GQî-ZPp"\j GoӫOr)f'mKl FuEщ%Tk})ܔ C8WuS7(/O`kvGR} p`L<Ίq2"!_+6֊V$.Y 'G3rE!ZSU7AAmG66-R,\mCyf;j XPS ~}^ӧ#˪2 TBfhr9.ıUjrai&qu5N.38_Ol$,‹"ʠߵjIfs^> p7t$쪩2Y똯%G*>J LMKE^.'&wnlZRDɼl@qBԜwĖ\CjljW%&?_۷At[C8`zkV-l ~TBRއgC:D+˭r#`Gi5Y.* cg$?L1=j(8W#<ᢁh " zQ+w 9v2fmZN}s{c=B*$9VBĢ8R@}{kvO)~6ʩPv(\nӢR]C~tM^j"썶sk4KφK:g۔#z> 9?6PwD#zSgwDYF\[cؐ,˰xqǩL)5P,`h+JEDyDZ`GęyFc7LF Вn_) D3k:,SO0Edθ֒p'9t\Mp*z, U<ޓXw/ (5$NAfE{1vO4ʲ0i0a}&0rF=`֮NDȇ^6P'}aR'r#)6ތ i2MsCfV{R $LFbէ.'[ru94tUOaY ӧyKM)uHw0 V 8Ϥ~pT_5+(5Y)PkDVc,c[")=nH =c|:hn͜R.?(?LkJLKR;R)jnzj2ȇ CcZ E%!p``7fE/{peA MM5,XU OhۅPuEv2z=Y쨸A2n4a˺ ¡_ҡ|Qt* N;ElM΂ } ӎ%3 $B,DRr=ek@.OTHJ& ~)`pNWU.?rX ]kH#]m*^S+ ⱏ FjĂԢG"= ׈J@m0`T"(C`InJ8W,ڿ8G{rd2kYw<%tcQa8ybQ9ImBW@A3|W.yRDIRh/Byb+!EKa0޶%aACuCm+0`?98t |ث M[nUfzHd wT?1}G޴AUr\39C Bl/2 q['7"L8n;"RJ[U….~!?8m?N~R=5tl4[ɏv0$x7 Wͭ^>xf _$_@%"st"R|KL=%%*YDu<#Qg$D-B.VlEO*cڹwH>bRߓN^dr_i=^wrj )džM4frߝ]$Lѥ]+:yƺ*m( Nm'Wq(DtUiSbӦ9~vND~yl-c!iPwJkFUByبUvm1ߕ >Ss~G2uI6b&_,ԍTf")v*"nڹS>(yEA Olz1J{yg@v%]닪]+(!fGـ7]/26ai7gqzݼ0iyPշ6)h ږ!]bo70)@5cEq hOdX :(Y$3B!$f$էe]u3a<`CA%uC- Ls e?Gv_/j ywHߕɥXRReiaJ zwB-D\74k-rt%wPUj)xX* `UVD]RxVJݙ-Eq(g͎iW{:ID[vdX79 3…%T: \Mˈ+!~𠉨Ƣ¡KUX銪cLqTT=6=drd+c`FimZq1WM#-vXN붡쯁ѨwcSCyl`F]N( <; %wez]< ?ߵ>Wάå SrA'" <#tz{XӜ]Wi!0$VahlUc9[y)'1L͗n,l׷N{^AU?f`TQly=t{=qŽ ]'{U2ړoIz: ,s˧ެFFQ9F^(fѨ* ՁS+零@vZuMM 5Cs!i)ŠU;MC%Y͑kOj8EVI!3|a1ͯ!IMIOwj:KdQ`5#_:o"moݛK0,MQ@@ճ; 7PmQDb\BϯUe{,94?//9p/vdy6+eyA\e%|0R=JߊX<l7l}GLkSYXPp6*;ID|Jf4 @?Uh,}ȓa90 ֮hX#e 8$elEP:.7ҌI'@JVu*E)csKY,\ jJ-mo:x|";yUJ.2j f" i^f2@~7Q陗z!"><55[_S_*Gu֒wC-G$8fW P!_uΆUF_:WS(:{E-B]hQ0*R^qA{qbPʖ)TwQ`"UU,"hk$G*&64<;|=M.u{iW [eK̵űfZQva?kFJj"G4e-!) 'LtIT@)*hlf-9<;3ǫ$F>6AV(M5 r2mH3#]X!I%Nd3+v 7nmJMTp5_U;p +e1Ka._ٻrW$M.b$M @İͿ;hzu@$n/y)/af\p`Y^OpȬ$[_mRPAܶ Uf(;d"} +}QmߧX f H ]8)$cz9#8PVhn>ߜQ{8y[`W#>&5ClO|ڦ ~'xoGv-`2^07"{%K|M qY>#1\6\4Aabn{n$"kf&F?ہZG L94Pب6oqω.  $0}n! -ȸ]9q0G9^IL1ugCU(Q?D+:IMJ)ڔ #U pZ %Z ߯Bd&^zIqƗFq}Ōp,`<\`ֶCe8D#OŎQ1t2$)^,JS&6blC~5&AgrsO[a}qWV߀'I4Ϣ - _9R蒌H#@d)hW*4.4< _]]iF@E;nC՝pI_zsȆKb{5SU| _2Ђǜ\vd싩+8cwx1le+HALy TcxtH"^?%9_w{b-_=51d.ҋ'i9 ,MPm^ŃNӹ[BI# __Ti)4Ks#fJg}K TI\p֨?tT|IJw&>}-'}2C`j::_zf$Nz$@0ʅ}nkE-X$V2L&TYzkvmg_19~!y_3!N 87O\T1DDнdּZo xZl?q>[÷Bn@ q=3qvlSYuT[J [|lV؉nR#vM P.oș\ WCKt]M.V7y8܀2'}w+W5!m2!A;v&;#h(zd#_>'5q;gN9163 P%zȐ7ӟJ dwxXB[tjz"a/C, `sWF-qԝnqnd`c3vO$L_*յYѽǎV~CWX1)fb$U%;x[REC=_.'zzJ)_aװ0 /tW,KY>`BӭZ_ګH'惕P& p)̓6L_ \;f+<+{Ӏ3OWnO{gDYk{fqםQI?SbVCli`"q pk:UMO/+`} y&b4ݺZA&S;|mH|S+Ӈs$CջsAg~) 6(QKaEqFO>w1@=v)CP}=2:]ʞo{c"Z6B&a FҌ_<2+ѹv]&A>qZIj!pϾpq3fd1VE)>&QUeQY%<}=e = :@ +hu)4gy1@cOAW'qf՚&6wj D)|1x+yvRpa$+m/? -SZͤH mg}>]67@Gdd)I(=n\^nWYprsܨ˭=eڙUFFL&,Ee=3P.Qbbh]JɳB¶ "Y_kMd9)FfM;(:>6K4Oذ%XD#d˕q앚cfVr%n% y[94hzun^5a! Ȫ<(RԇYVQݡ'T:R 4VlE`|5G-uD.g_j}hC0ۆa~3juDH0h6$x #٨&Rj$_U##jF-?"x{vBQ\"0T= B.=~9+k`/)YOErqLa3#ȁHZ2#4bϩٟ^3qҋP2N_ln W dhYy2QDߒGIOv|E!BeUm[́ALͦ9|D5^p;mP3y*!EOfr&9[)`LV9$;r3bC7vWQF?]/s9D2^7ڀ~Rqĸ>Ӽշ%:u281(jD5dDʼRϒ:|7 ܋ƶރrXp3t&:l T!Ǩ2.iC&0 /uwZ/|:$-.Ig0΅]ڿAI҄pn<\/ fu`>pw{VdFWL'AI+F}')#*)~ߎ3$Nw^MŐ6T{Szlm=:`ΚѦRv^@xtﳟMV*g 4Ҫ.ӈ{; ea%$%y )r2A,rb ,5ؚ RTDgLR5+H4dW5ͽ'$z&4'EW麵)2lTn]YMQ7s.N&H58̠^Wgq`o2t/m\+w=}ô5`IY39„&8Moto^^ϗ>b3 x>n l30`Ss>+0>H\ ?@ingo XX(dBak~ɫ pg!,AbꨛDC[0TƠ/7[|Genߍ֜j[+i ͼ@p" "lG/'Mm9/8rAI%e1O}sEؖh ^s/"RUjJU)prsrU(}}ڂjfTN1$j&t;PB~ $n)uKs;j5H@]A+a xLTFuu^H^/UE4sE7%:_o wG]oڞ-#YH%*ӪD#z_ ;a!wHgyݬvXtXr$\|Hrl&e]u ] 'FX|ѫ~n~@g:rQ5a%sS,_;eu:hֹ4`Vݙ;Mޯ0kAJJL ; k' E#~g~C}1fS O! V:םX=&ᣋSrWmPOZł78.RZv*.dž NO'*m`7VHfn6dP I`')"c:,JR_a=Me땐COgāNaS`o Ne!7iI3 V\U]cUeUڌԮHd;c 9sH`Z$.*8oͯj3`.XMrSWD777(ι!UPzH7:f"f}7/& }{@ou#pVN2UQ_48UƌԦuԱc4ήh{ʈ+K?A~cC6&[[H"dAc-WǾ*V}B䐊h!=ō ʋk̾pD~,@ѫ=-Y8Яs }&i$c!l(.y0ЁZTVSjGH=s"ULTj۵pJTOӊVP+uuRm* ?Zn,>bkDjocO{GN(bHZ< ;.M.tȠn=I cmA 1ۮ;ZfFɐӒ/၎7%Ybh pKװ_T[VŘ-CCd·v-A^@%ϊ#ȹ5jꥊ d sJ5_Ew;&?l٩4bYH_Ve M]>%-λt׍ ̵)\2Dr V$+GZh!Ŭ^ݾ 򊂐xڋOSˬ(jz3FmAc%xFg6fDc~Qt$V.0NI!! !\Īu4Ux%h#M\Cݫ";itd7GZl1D| B8G(IF@kKH+4>H{f7~ݣ_tAU-v01QHpwנ<4PїuH(ԉqMOoRkfpAhܠHR+S~L"%L9OVT[jT)&7s_]l{[\N8a/ 7ȝC`d3!.z<{7cQ0wWK0+/Zݾ hc"]"}a;6Fh9--T9{|gCkE\$XxB"W}J d<:5&ldɁ2gE@buw&q7mdltT:XsO>e^x2y {[ +'[*cQ Rǡ!Nkc:.Hm'6#)@ *߄oM\/UbhW rWX&]ko'Do<ZpO`_Zb)hylͫ/euf &V>˿K-~/j=1AR412`X% bf"n5=nԊ/zx!Ɗ'mTe0_ḘK'H ӎ@rc4/KU%fqhS1sZEՍY/ f-*vx:+2e7Xo[@dT}u%6r[ ݽ ZzNvȌJBqh\Khë m̻r`'W0:C$5_]Nk[f}%7 =Y+6~AЪ?;jX{^yh7Glp'n/”>*R\9ێfmjSW#"|t9 wsXP4nZf8Q]pm4"QQHY fe0538ި 5N̠) '[`5{ysKC<jf!R&󬡩ld/b&O"m{jpy#W{q`۶ Is#wλVtqþg' v/af9RvڨΊ0]Ds9 &BRDH #-M|rtU?ǂ_:rXM+:m-mkj+WIGew`9^urMB~ڳϲ:=`l,w`f>3L7dERK'~ i‰`"઴=\M,.Dei9 Kk=kn+Yc_LHs4ܣu, qrY@^/7+/o %oIZld/kY 9I'mOy,n3Aa]Iw"rirgxքWm ĢŦVz$د)0*KQ&Xp> O8-e^dO'{Cۘnы`]Qꎀ34hQ]hU?oq25rES׭[ˈjN* ]eƍB}EX0t2o;?cVlZN{V1$n٣;#8V*s_-JUMvAP',2yOgKi+j#k†䪚G;i>q*`4$$CW8֩0g߲~. lp"]lj~ y98NPQUdT\Q{eeS?qGq蒁;GQbvȰʭ5K@T|n5 3uUJBlM;EPܫHM`Lނ")߈[y%A@y5Dnj=81EWg=Wox!{Bzp(J  դώ(v\ yi\hJTܤh 8eyQ2P|ݕ8jA[O䬘_3 үzJQ~q8p趜H_)Ѥt0q@=t|Y񖒵)k·0D`mXvJ(ՒSk0kywQpqhU셠ё!l*>K: >R:kk@6Y&1t-BRS?ǜlX !߅t:JYbsYfM=!4+YRCAlj8*ߞgEXЃ}d ؖ9*V$0 V(QLڝ8v˨$Y:j1)_h:77QЭ3 OUovzʖcutiy;azDI,kCCOȉdjt@%#(5uл_ .QKמD`n\/n#A,#is"MA#Nݬ=-J -I|Z؆ aJn'id<ĉ1όGEEcjQ^t_e8 *Zz*$Eu+shXz.v2\(:g3~طp|6Ylj&Co{o7r z0p<4CM_{{7QK ȭvA =tyj3n=K&x!7$:gf`[Sl:,*'_ մ58 Rɡ6l~ p-<ڍے\KQ6M:5eC2*Ft5a& I6pe9=xňt^eh?>5/5U-'uĝ )RFF ߼Ý}F;`A (zy4Wϲ2Pn=đMDܶcDFZ}|dK;Wx2펤+F_)D݂z{ݟWG&4lI\% D4 X]Qdg'*̎] ؋t MK\/2pjGC"'n.y;+=caA[4*pv1tӳVouR-ziE? KXr,aG䢼;^ rB =Y.0nfoJ&Vg*J C1v8#(wiӜг x,GY#bs-Ni>UQt S]1{Aת(\Lsp_)*G gxT~Kb.ڳ=0rNRmF 'Sk|tf>J'a4'sZ gT—tuLBBT ~WǢ5- YUK#oj H ;*:wWŽ"*º۬k T^N&J}nHx_v Ͱg =QPA0䐩a3dt@ ^2$Cr<7xߒd3HĨǽ gY@cRX8ssUN5ku)[~`Eݿ?m!uлWr ĆeI#-J"U$கkSk{4x:- ұYd~ϓF÷`%Hw #+Z#D}Ie2x)C~޿נ# cm~h,|y;g·>/J^{0"W Lqw;Ju Rţ$ -8G_ʊVuJb]oM ͡h 9n u-=]CXnfFǯ,·HvJhtqR}FqOJEzuoY '^m3by*G0IL{BGKiηtg@:-ڎ_0 -՘HmdOΉUVKyKt(2Yl+*;I;Կv|nU%n~?\bUW7yu5lw(QUG4aH[;_|_pgx "ڱR_ Q>8}<+rْFjAq[Ž p|ۀՆ]-,$G7tcޕY_@Y'm -So[_=VD9I4|_i]+(z]'3\W4\a[8}WMO)xC A"UYLbM8샥 w)n)$X)?D-ɿbEQu FVbݵ$;htGB!{Ӗӱuss[z]yҜzI?X~/TvKȩsbl}Ӌ~gʎ ZGծQZ1 bIw[@X-KQY[c3HWr.& !Ce/BT񧇷3$RA)N5nFZ\1f#CeԊunW R-RҚ8JҜثM_t/D;v\:4$ZօmP&dOJsȄ ;+ŪIev漊)$,KWx8&TmɹWw):Iuԙ`|BڀfmV$棻y#._nz|ڐ9`U<x$N6Y,MAY<^>$aէ' bP.&@L 񽒪lG)j\R9 3$]W 3lT n^5}ƺƼSßo!0J6·U_{fL"0jm?REB5)*A19Iw{xeןr7"гCb4 6~ݗWs%}!0< l^h̛h>R ),Ck͙W5oҷ0y'Oȵzh}ӰuIpcgA0nPcvD\WMɸrtlN5"HE>po/̧`T$U QfƇ߿ܒrb5 :}iXt"f̆(ZfWaځ,p5 8 AGUIX̸Y8H \~Gp_ƖU(`jXg]y^ ^;ehg ]\z_Ez&e\ߑ7-e]D98!4Â=Wme.^.þOShk>ǖUTAaP ?ANuBtK[ӻ~GZ8ċU@cJa,qbymdd+R0KAO >GhbMRZGJݲr8F[B )+_KU1 {+/ A$KB Gx"w$qGiݹ+厗HeX hDbbc8[^mh0jf!T誉Їdz\n)*aZܺh^m8'jdܙd9K03uEnvwFԺնcP/!_lq]x̹+n ~RA-=L "i:n.ܬj(2|QrHaQ)R(_CYĎϸkr-v}KĊ$ %4AC WmW>!`r#yv-Buc3ugj{~_AFwJYO'_,+ ѻoUm{S9!ڷX/CvNx1QoR(] 8.O5tfߙCz.˶X񭆯0TՃF{ kul5H˭|(s*jϝjK }7e>?(#IQ0uS;|P:'%pO`YP%d¢G"^  Jp15CFn9agVv A=;Fc:ons'!O$V"O8~~U5mRU+I@,-7`58*ag"ܬc 0]xϰ$Jlxdp1g}6Nsm+@]ՙCUױUV!>M̺F*ͽfm_+z;nEז[U\kY39TvW2\;{09IOނ2? )9C3cw)"x$JG1ѶN1b%n ,Z4ޓHrv_ 'dw6Nd uzH"2? h0~G˝ Iei:ɺPYMJ=agH1*1=m0W#С;Lpxlt4vmѥC?}mfY:u(R"N"*,8Vh?ĺjJsP]aUb2^Ho mguHb,5SiHH8##9Y:[6b &-?ƓSaflsi[ĒK2e[WA>*W'jÚ6dG] ) 30t )"0  ̷C9 ,5u":;6↗ + F~,5$n=~qYpH"ٸM,+D8Yc(~Ítx4Tumx't,}5-E,B7ZCT^,Je^,l!* tvW$|DN[a\0zRQ6G84=V|.ex`]mi}XGԞ"JsPyKrx=gͥk7ۥ0&tO<u8 rLEΟ<?s9l:UK.W +g$iE}bxy /O]o/b:/'捩fnBƱ@XcD#)hu ƍ C!3%6Ө i9<4OAk^LH|9b~2.0)|-ԧ548Dk;&lA۝E0{zݛ ~L)~{[LKBQKyQ.Ou.PrlvJs\_cӆK`O?Ш8("{eGsYpx}} ct5MLdce0"nV~g["x o^$3:x͐wE? b:~"0àV`XH.RMt<]z˰lڵyӣi׫}xJ=lcv ,78k*ñF۱iNEn0_IA-RW8^'ᣳUv'"h Pr/ "e@SF!@=g^(4IFzAZU*@k0lӏM yS+ +Ii\į՟*cU e4gSMr\ HQ\y9DEvVx Gtjެ2{8[r(E27l_@eWQCf"ѮYqxgN\;TGû݄B@vڝ,  풛[pB~ETD{,bO݅?v%3)mt 2n{𒍃H T( _l b!r̻R@aO--˘\̫|`&*lVK:,;.k1eeS0+A'_u!Cca&\9׮7_ ~i> !r !g~fi{>w0FyqHඌ=)J;KP[죑Ks4 ]/"=1`!|)qj_Nl[|fD2(tR*caHLST"/^눧PGA ZDE8tGQжݗ:ڎH!padZbg䂗AC~˪Hgj Ym]RƊH5Lߪmx82W8QSUy|B\\NR}'m|{M A@3 x ۃ$v.0Ń L@6/h\? =kۺg+ 9m2/ .c|IAa븏ABkuR: O*oAzI~Zb(rm2z;U8VQ43Ӊ2J-jm`NNH~Tgr+Jdׄĥ\t:4aEO2 ]Q&}.ߵO-_nyMXsM3b8< 7Ӹ"Pީ|#o?st,Y,< ]xޛWKt9CFլ_u0 W*/@5xҒ봿 ̔?y~4-ǡptW҆F aEB lROuȑ Wk5xbT hOHC] -Mq?7:S8wuTf/]cF1`o(3Tv WqTE%Ś\!A4..kun 2E곉<U{2^X&"_;5ڡlT P&zC:bKP9v33 g\dʽl8خ B4l>6gGrWb35lVZ,mks0 qK ħFxY|eXG<+G-3X:E|NFS*A7FEh**PH6>X. XV|/ :1 xVȏ*.E9vZ"q6WmQ8iux7NzmA_j/g=-r8-cyer#o.vzNغpfY-v0Ӌ}MwIouLgQgոgrXy&w}[c3#օ;{t)nF!t5tQ/#kvfuEI&ʂB/n[4 y+ϯu './aqۥ;wʤ:GsQF8d6/d*v^7|+O$<]6(!f{$a8Isd3ay T{kw Tc)O HG@t(`ܧӬPUPW8IװEZ69G5C/T ;Omװ (N䚰fQQ٪KasNU[QmTJ*Y ]W/ܽ^V|)N/d]Pa00@s { !V}>]ag!!p4)^?iLl"~jgρ})I!!ؙF!ÿk7T.;Lv3Ç)5݉_ Y0}8b*v*]͝Ǝ^lcy"mf$ 遀 ~)zA544E, p7>Un IZ/lh]k`bǤV`}MHCN/kY6(qbTlf,}E'뽎|ZLq:CIpah]R./Sz/n#;{($bRƦSł\g5grPpSpvE:cN Pxʇn\`X~bI/RS~)*%W{8cڽ8h=4؉5KDZa Sm2oWD@(Ul{5 ] 5ItApqF23a*C 8 GEr֯|b])"E'-ZyXH} ,[t5,] [fްWXUr.?i`U`xei42C6/ضZ,R)#7'giׇfʇ=yghM4tY?yd[3kc52Ä \yȸ?.g?Rq=Eb^M-hQ8iZ$:ڪH%տQXc{F6]k(Z v~Z-(Nʧ@4WM&:+qb\'~lB_2ͱbPKX=.bzj>Xقcw oYi{Qlj]o% %&M\QpIj9x;|8\.6j[]ݰӤg%`|9' :FLƎyU2'S].xǍ?ǓV_)4|u=-{#֛ҨD„lxD :5bGa!WF[wni*R~m (|豰n885Fy{~II"(&1eO\wEY -*IF0hq[R&|s\j BCMp/:'{F y_ 4*c6 :LB1;C9LMVJ)270"Y(I8pעIq}IFf˳, ;`U)DL:J1yz:+e$'BHԚ^;*ۧxM+؊*r•ŅQF(CQ¾9<‘"fuO*v)7(߶ deA;~46 ArLԔ-cFm;sNݪsbQ@J!"qRp{Ww?A+*;QkcE2"ř @馞F 5b"޷nA< O-08D.z{%K6-o0udMn4b{hw=UF1UHqel"N aA-y>bLva u)81H6Wk!j2JvkFh"Kge{ */ˁI5Ɯn<ە=5bC1m̒TTE8$(\YI<7 9#] w*c "bq\ IcK1Nh„y6ǂ p[%7k["cśũ:AHMa(YLxir"PH\u8;C9HyT5WXK~Rif@4Բ $oXx!Pbh\UB6]Cao}U+^]Лwmd5((b曖CX~I 1ߛ{$?6:Kl^ c3.SE{JOյ[{ Xň(yX}DdEўS0y $'cѵhYJٺB`֏ݶJ9|SW#G<OoÏ@9& ;ʬ=-{0-5HjX@Yu;EمL,oJu emdz@=L 5SH2쨻݀vuݒ!T]A_%čsk*QNc.3$9}Q,/??Wr&sYie`Uϑ8j$MAPFȥJ{{hُߣ5?<&il`*S'Ť]ۆG|l]mM'чTBYad*Oį0-y6P#0YC-mNЊTt#3qs/ 5s-|!mpdf!џT~ex=h?2}D)&a_Jsf6*/ FCq sJ6%H|FYv aڥ%GF4aZJ#M _]`/(.˞ Lrҫ8 saK#LןZ=(j4j23Ĕ(4vL7NmeXR` i-!? OFeDzfy~t' i#ccvT|658GI/ a3;eku0Ͱ85g@LSW1Wuˈ'֝iɃ23/WOL9`+ \e{ [ K;UChy#KydJQYC]?[YjN]t*L y[q+rMe`j8W q-5UZh/-R;)vCyuKjgS{_*{I0FA. \EZ]J(om-IOHIdbQu^w@`N36Mov\Xl-DۇﲋQu)f|(,/~DFc߭dzt; N~b8)] %*g~@.$ )FQ3I\ k~ugA&ˢ"=hg23*?=HqD D* t-c^SOF-=(>CWY.9!&./\)įhmoE!D%*~EeRAϼx'cUel l^\gǑE8NS7ʁ\Y6d8 Yqu_sP{KI`GMؾLgȊ RT$Pj3{ *ήi,1V+x=EO@n:-2#tHTh 2d>GO*Sl l~N4 XG̩{'Xq!C3N 1ћwՉ9#6̙ePuL(⁋=n&5ⷱhyGYvsNě񣷺WE;pFP{Ļf~ܘw=!:KQ![u{7oLpG˰H0w"|ƨ??K勆STK\R(sK{pLSeSMGjnnX>xQ~S:p@aqצ_Q[DOfZ-t{ dD|:_άwm/kXd xYʪei0 ̜?Ci_3ђȜVd=B o/ j'dO8$~3-kH!lf) p]uFӽiWTތS҃VwBZ( U#fu^uRàCZ3Y3?[.rB0(t8Ԕpr$D.lGB7HR&=x`*:A5] ``kO!k IJm$^N_"okoK%7{X-`oѲ![`뷶H̎WSe)t%2Υ |_ qv3j{j59* R- rjAe2:ݍKG6߁d  f7" 3dfU6=|G5Ng$wRW>4KXBx`M6=LB`2D*;M, rS}hVs y  nTFƉz;׾`]}+_+D&6P\/玹}A3uBE[jawI~6 _=x >BT[75~` x'dؿV[1J(;K7 ;2f_A66he•K3?Ϧfk~i[dqYb2&BAb= Ϥ.  u}x!f| l:!X`Y yojĔ<&,WCs_:<5&b^ W/+od؏Q%ScHdﳕ-C%CS:XǞz]ZMT}!L{E)l`L\5WrzLSFV|9~:Ōi±'Of"Ž͵쐄U0 ;hl{/]!P.eAkdZ.3K:Oγvb `N:z Z&`.yGUG?K-t%#X20x]c͵'%=X&{jvDғ{bpGx?k"kgϯBDkݒƞbd#vQfSu0/tLdQp`/}6AڑH"Ț_UFdmFc0 ֬W%3.4Aֵ/]r.#˚736L47şDmw"yN4%X&fݏWd:׽ut,^5_7?GѾ"tī"ɱCڟy:Z/-nt^c++^N`w;&K'iyVd-kqG}^R@Tmے/ v%hEIzy^mKm<`AIF+qoah5"\;SsVei&cdHsQiK k~1|ΝY6ҠB+-8n9fIAlN (D(a4"΁elGoae{v*Ks /iG̡8a:;ǫ%?n4a5O8o]A/E9`5Nh7d(cѕxZRDx/Mzz>n*2Ih*9[B[9aAlE{EW[Vѫѡb~9c"_!\^$́ZGR) 3 ޫ<);c)l,<0oKM>*~U \e4)LrD8qe\/C !^J0DieQ6'ݙA4عr5E5Ue(z7Ojn<]l<ӕ#A…r'杹 UP3j(\V/Ͳ>e+yṱN%ẉVb6KjsA+}/6Q4ZtԨ-O#BQ<̈́*[~ RT10n~}b%g{ԎuPºGncK1S܅kG%R񁣛T?M(iLY>>gVU ƾE*3R}M .A;ۧ ݮi dEwŬPkDU-ΥWo닖Gˎnv0kI2ZwwmQ?V Fo5.2nGѴH.r+~j^n6E x ^gl9T]S ~SMw#`FWv kCPe8;Tυ/L3wˍmvZG@J:Ɇ3!>YĜ6>r8erOjS| Gw:`G >@\γ:Mw黩XQB8jóìV{/T+^M߰y"#e \ﰴY iχ޽|i_G]apFMJx9L+ xQ[W #؉WᄬjX[_I@U(K 0nZVZ@Զ&ooE?QfH̍V};,D7Aj G{3zo/UnP A,< %A1Ay,CkVq]$GxoI* fLr3;m sBcڏbj@jy N; 5x '[4$B ,>&`tk`}b!v:(*+E:2R¢Wd ,}VgKD1|5LwK%{(aAsUB %_uzi2Ђ:`)-.-)K *~A3HWdX0dϱPnӶ#1;f-U9&X#J9?|uLa !pQ1^I's -ltNb9jYKA+^9GkefI q"ϼ$uȠ"B_lZ<&b 7{rو!"b8%QxRgza"`움8z]yXe> /c.k4-2ʨ)?>}v & 1~mS:L+ E'ӀUHU::}j8V;!~O@x, ǺۦR{7@y@!T]lB19ԮNV:e Z=,Dy1XA, bX]Ul~ʿ0"5dn'p'Wy"`_<&_sum `t.B3ydbv=ap46q*lf"#-;ZɆzPv捲-?y'J(M)b~> xT_!\ ?݅$bZ| 3|-ႆ?RpJ xɠ)od@p?3ܴ *w.1#>Ć"gW;8?#8s`r]ocX7QL"Ӳւln3RZJW֘ Lkj[eH KN*n/lŋz`P/ڛMƙbY;l=bC\\Hs/0GU:Ic,hޓ*NodzM!1ђkDqDնX~n&]M 0])d [[dF=#/]J~X_XˤX7 /L.BEsͷ?yΌȢo/oh0Ў8 8 f>F{xޕdS֮@~Jbzd(e ZkU|!!א/\mbjrvJٽ C#Փ0}V@wNGXWG9 4gJtmE 2osnr%@>mz d/LVGj}u~qƽ/l}@N7H(|a5vh7MrUaLJ)Ӧ`~"aaƃ %Ė.=/&g@xǀb?Ż︙S!y~\}4S )b7tSp%׷!I&$b׵^(ߤC-0;pN Ak>*!ۥhy8]'+a! d]~OΦ3 _g!k;w;3%0V&C T=f?xGl77huM (=|K&*Z$uM8E?1[j%;t~9dtY֣ .@>^HZX bDFg/ABn6t9M=6)O)67K-eKc_űʯ|]E۸$o2qK~]S]B&5ɤyHw4Mixv5R&qػlւ ,1ӸQti-ZpR9|HqsIK=i? _$zP=RaKk>$7l _M[*UҠQ4u#,z3N۩Ywm%]Sk\'/׉G% OžeR8I&)jZDy0,\3ӡF҉nCJtŀ(;u$K1$.*:WAzEĺ)#xN kL4n Afrpb.+6:SŐC~ciA"i"S_.M U84(Hl|i` UnL⩦FQ8g#\3č=><9$(0DzR,3d˔Hq-`$mf;o{hFp`dl(-j?`AiO>y$ZwS|N5p K^EI;6!9eT@J- ']Nj3 @Ҧ(Gǁ^F+gH2YLWU@d,&T}OIX345匫eH '&W㓃iH~ s}[Rlg]4O^>' ڸ[ߞ5O6olKUО]5Ga}% Ӈ@ІȔRUg1?,^ ({aFT/LՆkA_G\`A,r=;k.R;^ |Zu`{zY-9+bm;b9^G8a>2E#O\d/ s|I'xqMEOaSxK^8nm%R[IOx]:h7?T/陎:w늕;}Fp>0}5'dEGV ,Xr*( Kd3 cQ'JսvQz9cZ*21%^Z ~EEǢV?9f*_URJ ţW17hEtޠƋo~hJ[_Y%KO[bv+G-0GoH,P2=[96Ȉ"%.M=}E=Zܜ^/H+[HWLsD9Wa saF%qpPw5TZ3 -uo ɳ>:L .Kcjhl'4+ ia)Oݖ:n̹U6[S}9NkU,^}'n7睐q* ȒcUmf]ռg8Sѿwt6@_]vCʁhUS4ªFÎZ8WF"Nn5{3b0~ gvig*qM'3-҉( tK\/H7Ms֍#\-H,ڬKhX \Ķ3 L}pYĺB"ɳjtI>t; gDr" "nEpRdW=xmoYpՉ :b >BEQУJg'kbiwP ppr>>XJڇ԰3tCFswЖ&wTJ1rH`:9U8 N;iHd - Ύ3u: Br|p5FiJt+߸%.́UJ{.ȉmUiܸ:CRe(%x:S㈯X8m6^̮Ol%|;4W d>PԙVfiΕ0Eg^:ul0rLXY3;DӯHmBbb6Vu&mZdS\>@'h8'd R)# .֜B;wm/VyC:j$ծrˀD`_f/*IPL_;5xzp⭭^:0˶YU/ u(&b#jr]ɯ$ 2x9K1t\qet)gM~I7Xd1?!*w\xuN`Zb-S/+D{ۋW d:qU11: ц* sVGH #t $:na6l`R>s$nAP: 4P"zY[CTK]e ;]`!gtfzKM'Fg~*.sW^|Iy@T͠}s#w4TKGO{Un Vd z(<̦x=}Y ֑ qP'|BH1`#Bjrii~D.3>+>+9x bO]k/|̕2eM05j $]`/-J%כ3wcUǓUZuNaT8e<0X(u'nm"(gNtA_& 37f[pއ8͌dYb`໮mÕ!'[ȿl1$q"t'te(3DQ0&nf)7# vv'W|U.PtKO8GٟͤKcK] b CQ벺)Mɽf9I(KESN0fO.IjzG-jȖKF-ҳbo3#Bh:&D:k*G0Q֯G8UmO~.e=޽æmB0ül߳QķY)єb[DVw=Em?t9)J"wsaRzcat &Jo윸ZϻşHA#RI3#D|V;Tmƃմ$rrôF}>ljl\~"1 R3V>yǞ.:MTV LwI@x=?(Z~rXR.F_l}(r)[Ih ?W:֥StӹUQl 6vfm_&W: YoRh8FrJVhD4 *">r 39 ۃHqmbukGUfp lSp֧(k\’An]QR 7?barʮc7VόmyyI{Qɬ߮f tќDf/35 -DVf_&bi_-;oEK[7?DśmW['2]&=n;nj@fP)oxhN/o˧V)bo6^)[f;]aAt>-z`=0 .˜`Oح* _97Qmtw//B6B?n"2;gHW#RR ICɵrNdF nfWTʐ2LHf?RP d8 ˮm{%|0KV0&\'9uZy5n䰵E&wdH&g6F('Z5-Z32J l*ػNDj0o1[a+Jε)RրbkFująw1T0N5DPۜ$'?P$ $W|@`2_#%űro2Nif03aT=;lQJx{5&Œ0V˲g>oMxkQ2^60XƗSij۶|M&iEF2Ve[zpa&G|#D 'Ky ovo؈M|UGQBwR۪h,ܣIp<ݨѕRI Ψy4T9?ߓS=Igdd!9TEhm樑l\dץ,T2qRo6vb+w:Y\FRQaV++R} *z\V]n}zCv˶'6.G˨zuBP3`Qr =W$rOL]1@f]1_ܩ@}Y+KJ⧬SI$Pf)!VIA0\F<\Q{CYލ&ȴֿ9X 皞m29d<J#WPZ2)+ ToQ/l7_S0W;.ovے|G.)Ij]rUM֬6S"c:mrrV9{@Qac_}6</GUFFlk5]{g[F[BZTa.<; Nma=%ҕMGI-ai_V.X>yf@ | @A,X}7A iqr#L '[/sTyJsr~6wPP $"| o'?㵟)`0}>{  R(#S~1o ѵ+}tz>N?J8S1Q޹"di#śeu4<]~-$nՓ L[ ""إGi21Mi :;|\NfK¯ySDb0"j{gE4؃Ojlp>{ʱj QՌ<բD!XK!N-ġǝwaБoWnw)xڽ%7~@ѵɕ8SvJ\" cǮFZ!Z#Œ}:Ϫ/tZ3z6P􃙙7,ݳk ɎHMrlug O? ǡ%kՙRX<]GY((6P1ggM9e ^ &k#Kٟι2?r)I4g]w,P/ }#W#9w^iz %M{~eՎC&6E.CbK{Q"5Z]4I싣 =sz~^zbo2W^|؄Pˈ1V4tk-bO>`' [O h9fs&/=#,mF`r`)WX߼mK ȁŨ 7ZR(dkx7b)7M]Nv"unkQX=i@ 5uT<k!ԍD'l=ʁʇ'3М0nYZ|#Kkgȟ` /BЬ5E좊6d,nW-G:NURd6e>AiC!Nw"1ι_持6-%F^"S3QJz3}J&up11&c4k!|~so9hQ ثu2& sT>Ѯ8l:kv f}e{S?<~X.5tspwt+3Yq³ Ud#;- HS@WA=UmxdW!@+ Uu8Ox$٫266wюz'qW5NCv{WfFU[!׭esm=!t(cˍc^rz7?G+UdB$S?e56W"mV@6QA_"ha>fu$+7r{ֵ& _ Euvp*F_.ֶ vIR Ůq<ԠkK.RXZlqT?ơOH0Q X'U@M// _cEմ;A (_̝piҰX2 .gYԽX7{ bƕ=j)|/5G`U762ͮ3j o#6 EpVC9?HҪvJlƱ׼DHx!ϦFKXsv,Rmd+Z⢃9ccՒM]AD vF1v>vps ! ~ Z%HOrl}#sט1ky) eڐ/@TiIW9"7h$.\3zF=9Ȇ??W)Jw´hWk%35̅>2CR]JrQnczt (*imsXރ5h bB̍J2:W>ԄLN_s=Cp 7IBv%E/$26v݋.E d{WR@Γ5Ӱ#sLU/lp 5څ*4E8?Yp 6?8%j^T aϬ sΛl4p_zþ T;-_^9Di#<yG:;(<[ cyʢ?1peiwJD|2 2pDaJpj%0WQ{ D! h gz&\A))݆k!mjM kdEU(BO=)4ijQ"78:<$ؽ@eE!u2Tsu˲78+į<>}H@cɪJ_d[ȝjC&|:Ztſ9FAنo=̦W&gyYd!/{@h3R q!O ꝡ#qd䧳AIٛ6V~bƜO`I2i.zP]y\X$ !lƤUT&)$2(\Ղ+C$M =4͊֕yLt31T>; 9̰-}oyA;vO#U?ܚڧb]y[G#0 gd;YNS%24a漥Ss?dY!FfUY.S$U:72&l=UTam$fי`YcMuvګȹy,x]I~/2P+T钘o+t-~Ѭ.U8 ub_GN|(%#lXeO3{3< ;4~4 "x3H ,AzAq񢯎b^aTZID6NdbALDK=+#wS}V11%8Mu`e8fM#tEymA󡃗14;\J3b%Xb+1}^=wڴ .$m$;=ⴽiLPl8C)L&/?sL$aF`:we]['H'$UVkk60̕}{2/ A@hT0aUKKP lQM/3^ xmqMhSV Z n0Uw9R.n_mqm<y3Qಐ*Vrwvoؠ~PB U{Dl jO 1eK4@pVj!wz1ֿ.>& H,&ĄR6Ϯwȗ;`L}LLCft@ҰFL / ;wL&%hfA| ?!Օso@]nhL< !#SJ6iX٢1I~]ѻEnyb=ܠ <#Hp/ u5ewe@os,;=U-3jmB7tƾ^DzU$.UFdX|D*su]ip2 .tEo;u6vEdy(hYx&e V↞qpB(j ]A-"ͺɖx~ SXN#Rॼm}zhHIص9^ v$X^Z֍T)Ot[_޴8䆷jMyn͸f4:F\`dcGc(?4#鱄K >cĩ[9^&5Us%Q υGep7;KN5Ajh'rX`]KT# ^ꉹV}iNXŖvֵTҥٰdta2Dc}2]*bPl὎5~u,e5|_n>q_oavwuLN#! (9nqЙjV_νjjloc5(gvS@2XbK74"/*ʎfB1)hѮ0xNU豀#mqӼ[,ƱF ^a< dHQ,j7 jh4]v<UJx"S " ?,q*hj8$8Tvb9H"= 0OeH.Dp9mg|OSi(K%%c$%H{ZqM JE'؃5>0Wq<[TrUy6RE!-W@1܌s"4 )tq]%ǒb6ZKqD(:N?1TP,;u%`w _8(4^?=-J/X|*2,A(L:Xf'h. @ˎRsKUqO-a7T@x&z])-[lQH . ^0t/K&*ꌉ`xu[*LD#Nf֙Xk`羘Q )1h77\B>'RKHEjfyP'}ԟb^iUL iȝGh\7*pO\p/5;_!(n6 Jwbp\ #z~X^g:>N1ӌc,PW d~oCd_ѭpf̓l+܈KK߫Zo@tW%}#Hux̧,*oʫ/Hk<t@ߕe8*+{*.Qirl`&7o 9~⡞.>mwد03Ru3bְHUn!]Y!ة :Fz^V%憩%L$I=2fp䌼+_; SvOHo!kynWQ\ l_/*v9aBs[W eI~[Ry8. DѢ?uViBo;}0OW}~RǐCj7ѡn'(2 /?6wς2Hm[G*";Q!'[j̑8ߜ^9G O?*s'baeךYH80u|qɬN!3 GWM\0DNRHpxiw7<4 \s |8y(#d};Co*dg-Lgy'9UHt*6,|_R41׸ψ{""JTG37}V@7k2V0ˁ}ݒdI$xSj ^Or#]1RÌTl=WhYKZonI9ur>&¥a2#0tn`r' vcB |sE&yHVqڊ=X>v+`]eMPksfZL3WK?O1GJH||_= 0埧5v22ևrZFx>[FuO9dڻp61vϵ-p6Fڤ_TPT c7u5dZWkq@8u6gZ8<<ԏ~ƪZD >]Q@cs!醬oT.k[ +YjDC92?{]@R>[B Re;/[FJ ˯F@Ρ䝰28 l[P5 9 OktV-N %9ct c c6HӘ~almD)JJ䄽C6PG/R_:Rׅue!0wAꕩ`8_Da]Cs=8Rې<%,%5 9?BHMuSnR^'I摔n_b"pن#/D9k[9$Ń& .,`L25&iF -Q.F睧ƧtgY?\7ᔎ+U Md[$"fڑ_h[dQ%Dgf攱fY+Jg_)1\p 7>o>X8lI/RYo&*/QmD$p6dO'/O]1jʟN Ŀ 8k.w+rEcun?'_w LvfEuɅek-0&#O#Or1ſ:ք.3,4qqWIߢ՛~bHs۰ڄK[s:mr*6E~P|X}˒,CcP?Q_}%Um Vu"ٹ䢿Շ;fƂO:. b@\~F'u*-UG|("DٕHJÆxWiJbʧcRiy 1\YS8i˅AkzBۛ]3Ucx45YE (VNgO;!f7oS[2B2aӳ"T]WiM"SuW9d̼<7IWM$s VFsC}|^^ZhX*Վpl2G,~h~x,5Iw ꮵP.\FJ-XZ W4-?'F&>n1&`x%8N>bO?+mzi4UȦ?M@ *IW r qH YSE-Fv2-_X֤뎣n@ ȜUi2ʊKz!݄[Q9`.S+S pkYo{̣LKp+9@GȓGߊ z ݵ C 3{ QuhDZx'8k|P^5)iOm gv.~LJ$g]L1F_d;b齖IJX+ kK>,b2n~8g$ґB,D3iI׼r]W!xwBrM$\!oO8OH!R'ˠ;JzjU`Л?"RcSL~Y 5Xod t@aegt-Y5m<3W2|f^ h=R}?)Ӵ徐.Ko ZN}sBSNE)(ꔇ6b Ɇ::oVya&ʆl Յs\'pFyb.srSQ_i:pzf1+e! 9x65Ԛ?nP2B)u$.Nâe>8xPټwwx>vȇp좾+y̰8DRΰsJ$[bt/s؊WnPˆx'qܪDM]rUX!Wnv'A7vvtzMc)wU۬a>G"*vR;l8? 3ؾ7`Y֑Q]`pԆ܂/'X5tnAЃL#Z2fvpX//KaNst\R[vRۃaR1qx$. itC1HEL9tp~`-7 uy5l8XmU&8lߘՑ 7)HCOg`KdyK\u-70 ]o2s%(NбEzua ͊f!_{S?ݑTldPE12݄lHc5*RRh_v̗Y|-> žd|I][=7&J43zϚlkdFdYc6ᶸVh?EJu܇ZN/"fzeαujC -{@K$ݮu<Ю̔>#i3HnH)'狔'-|=+Co5=CN!StEHf,h@}HzcDwU9=5&ff47WZkv3^ao^0:U+|h ``?DPUa mWh^t/-n"m)XM &>igʑtp)=]ǢVq]=ԙ:>y[aպq\MmQeձS^FzgotV+|XW)ͧC>&% i._} ž%'\7ў~qk0't?7=>F8e2?Sh\*9QC*vҽhҜH1j1|O$3 G㨬ןs-qC0}#M1{X3L)eS2 ˉ3l JLKOJ@ӕȯf[ 0M#VgRzSŸؤMQ L],jC 19ayJ27d%Ӗ@’A\rgG1PP;GC_bnʌ2֛@)ē,ut! 1@ >qPL<melH&8F"tGU=O2ʹS)FG%iY4c$QOM/5dJ4d6LOw>鋲}l]|N,R lA͚D'Wp|=>M{hw:p^UmK nat ~UEx }^V4Ya8,xw  оFdt9Z;>ZlLDz :~ܰ^jkUgTҀ @m6Vq[#)x=^ZCYz ݏgiIs&! #Lzp2 7F4e\xLySFPjrOoEE7ewcSո]uYՃK.ew`'A¸7,|-,ϑon߯␱"sߚ8Ncbش%iۖ9Ճ;ZtSCIzkpx“ΒV Z ]lRorH"A7.ZKW|m4 Yn ^WuKF8:ֈbl6@3zy~?uf N襆Q'lxJavidJ$[VWk.{i̜ ̃`,fШ$l)A>k+Bj(?,Lq;~L"+u*6#@n*X J6t J:CYjcp8PܴF6^B^iIw|\L]cb쿜})s2k2!yM,m]@dyWJ%aXn-ﶷCm٩gV35R @QϺְy9ӈE~ɱ@%4Rxʆan[dUV㓅lII o$Hl'SLn'{ۤE= Ԥa lñp|/Nw{4!eU,}]H,asj3Ng%~l*NSN}pu0pmpy/Uޚ pT^W_5FJ p , "pw9uAw6 j*˸Bt}?äGQO w7cb>y+\yp JM٪F&ЭP_j30Ͳ᪜3~~R~&6> /%FIbN /I55X&׭z6swfŢ/1urǴ\ e~Ϧ%:Tݪ>@lbbT@"f)2G҆ ̢ Ŀkv|$ >!H¾4ދ[L\}wxQj l.i#.d۽drV=~ʘmU/EDž#ϳL^x}B H~#Q u>"TC+k2$UKLco gx*:5 `,dϡ45ݪmq (.ZC :1Ek%Д/ǭF5[G ^6Y8u/`t\¿S?WRT`Q$I #tg6W9Ⱥgj=d]'B+`<IR}`Ͻ}8X!iX DE\"^LP&撔H*D_E{o2t3R[LՅ9KX +}3WදZWU8#|Y[. ;t{YUmDQO(wˤ {a 톎<{aW4լQ8z_؂#xV탕%np{E+A!g0 {)"]wI_wfavp76aԝ]} Q.c葥{贴Fd`.,: ot9^r'kt#@gV )Qv>`SéJ gŧ Dl0 D/Ϊ*Biӭzb"de3Lc 0'Gcj1p>S%11B P9* fVt>K=kK9s|!_ЏiS)^#]; !_OqX>u >VHt#5>:7dPj!ZU{KQ30C;G'\/ɗ]Rg9;b%vª`=)ʨF?M1gwx|l ƅGg6}S:c0G G6Z3?l!Cy\wjavh,D`Se8>c2sC\ CWT,RiI@Gsw|IYAQ|%!qv {++#+pÈs#?>Z#qÚ gb2 OpNN quqS4,#iI Fz8[_DohA?/Y=P4ly-N.8'}f2@AOh__O,)8w"~/JedPY%m(^ G$*=b|]:b}nf N?^W0Fq`oE"J50dj~G\?ۖM4&5xOwuT9^^~HD~b>~N݀z..lK=MHŦ폁dE73]@WqrqfM!co2[M_\/+3gA#vv4,VX8p9rCJ˳2ZE*]ϺPûz*ho!>:5sn"fK9)y&gV]licchReLJa(Uۄ. ·Qyʡf}<5IkF%=c,ks<I+є< T4A{8Sa(tpךJ?.L^qI?oWh)e7D8xfL>қ A$C0F] %fSvHoμ&fj+ØncΙIuTL l<;eujiǴ[.i .Hb-g=Li4H,#yTJEj۬:,.c ^dEa8jUgP,:aDxYGd낿9{@q+r1J6uiȘ`I&F cp9vW}) y;[Bo)={bFBDޤHW= oB"uU~?Hk9 -\L#jN uݻ ,wZՆgP *iB3$iɩT{qwg Lm]=1tLnW:Tmot&  EAsQر׍oēM5&- wXgݿ㈿7EvsEKwƦ#kPaD1<"l3woFm?ΣJp6,;EO{DuYb,S"%9 ~HMUao'% D\t'(x}y1C|imd|SK LFrHhE-0h?s=< rإW(^[S ˛( `IeAv]>P=#<9ΰK6zt`dzn ΒНXAX ?ﬦ:@yZI| P+Fl;d2\,cK 6tbY.Ob?gT܇&^NԤtd(1vHNwrr נ/7;bt+iń/k띻/|tU>0rߟz"8Vwd3Ib>g;hP*R0Sa[ (U{XGOn;y^2#?(!H]]5a%g-r,kTwM.Ajz p#f[8ʚҔg 6Ճ9iHG=(ȷ?RfqWkma)-d crzWc%Lg @ [\}>֬ɜ汸Ɂ flv"m:`,;A]!mkSVϹzs.b!\,c\&+v 0cIda:ݔ8`K\X$7@-Ca)H_?"U;XtZw*3kz.>]GSBR^6!Җ#ܿ<=i̘NLU%|V}vH3N$Iww2r=);D"TF_W,2돖@9iۀ :0OY+ůV_2eG<aBzluPi/3假VٛHn+*JG iw(+j1KZF ;S^PQfdneKT'Uh %3rk7>5W AQ `<a. 79H44Fv2;HP'!q:3ݜ ő9cW.r "6.rm8+1aw}L‹\IQlџ&@ G 74{>eM>CRvevt@ >Z DmOkUԥ,bhGRJu_|rI\ _C^0dEf}歓@mfB܁m0=rj2j4mˏ"A)r[-o[_|-dbwiz t+3.jrohG5UQ,ZL`'E$>Lw_vV+-:<7~קyFob,&$kr4OGVlak!/7qIߣkqw.cK-FsPhSQȁ#^ܶG=UvDxl.CGuYQPm 1"'1&dc g#PHh{3:}ZG[k9c#2uںƚuDwx[bzGL&87Yt6!6Le=L1$3G%2k`[xsmq ,+0o`՝jd-Cߔ Sd5MIoXz:rlUTxn%$)"ɹ1UP?[/W4ԝe+ fk`Źw>?ZB7ٷXr`qX~CB@j^l`{# LXX)5ooѷjhy%܇hG/yƒF+SpbQ^;1Ji1@O5Ўd+oU UD7#M| )}. xsr4Q,-(=,Yهo/06%!1Qz9'xpik_!囼f'4 &8jsy\p,gMxOx#W걆Ά=+H s0m'IOmR /5j4MVEXS̤B =IKvh g-)$RiH4`C#NjxYW{LPфt@^wlh1ՙ Gʏ3>D.Ŝe']rc0+$^'~.|/(wW^UlRrm-X]*UU(*ʧilEPZ%`³OsdvQ\4+k~f>^XqT5&:Pjxbܱʬ&-A0& [ ΋yl-=-aȝBJg5TV ڏ`D^OScYAClR.a/hQbep0_Q?ˑzjcƓ^_]-%mAe הKsc} YQ.یn_>x=ʏPoJ/[.\h򤧧6Km+gl/`{KG8O8,`̼LPE)'%;mxD\/-tRN^ W* >G 34dMGn9/ޙ*i٠}(\Uۿj + 4}~#b\-0$?ӱ_B6ata,貌*OSH+ˡrmezŢ {tscn-DƞUvY-PG{//GjHU~iz({㰠x<١p"mm]<B_X6΋q&/TaQ/rlVdV*9HmG]'z8^6SyznWNczA>uƈ֛"=ba񕘹؞lޑ!娹"Qp0Ө^l8 7ƠhTV'5;v2èf/}{Z{zrKP oat+q⪝}VcDv:\ \ IGHVʗI)p8;0s{9f$Y|eWWZW '푸N`^c5/Dk{%+LC^I3uO7j+l57j!"PyD)tɀ~gu* m3Datc5%ҐVgW r ؚ՗Yy3gE.-ѾwC"KQQ%TC_)6@Z]N1@gz(m&ӥj]el{ g2`íi,OX(s&F!>[dL?Z%0}:|B ^JڳvY˺ 71Iz̒RP}ƝJ3Ԗ@3j%уnɜ}ss)Y¬E_*SaQbFyPee?g< kLޠ4ۗ29vg8vY>4+U|nz9DGֲL?oΌ?W|=[͉\2hI~S$OOg聾hkЫeƶə+3 ;i$E{l:/%jÿjAI,-$ۃ ǝ[ 3hOA$A2XUڟEtj  dBN|f3%Ʊz fFlXuvOdN/3sOElyU^R }cӽC,. omǪglٹ.a f[[gR5p+lkmfοe1fS9@ز:0x֋#gWPȷa8`iamQ\v_͝鴓;RːQ\W/F|;6цj2U\ZQv7@2BjB/9MHO@!_Gxa,]o%SC`%*4%|wsс.&+r%UHU vZFKmq`'BavEzwdE7LMaBkn\IVC?/ikrIpEDEwqU^GE~u> G]`kgGua!ٖk(uum%U5^mv`ȴ- ܚD i.C+wT_mH7r aqQ'/Iq  -s{j0\5?qjSc"=G|3ܤ`5R$g;le&*@yt} pb g-_\ 6p_8y7ka33VqRJ5[GZWj0}8h \`u\$kC*?3MK\جgzc:h6(hFۇ~.e7tNFp5KkC3dZݮÍ.nFB3'=),čح6՞iTEX,j5uND3Sd9ŖW"ﰢAh? i*ga'-EJ(Voq$\7J{ÌsLnwk&Wd5ULGZMy[;2< fUuŚp~qk%H o25hYZS.d?TR0PyH*- c?҉ܸR#R L1`;M<伽8b[$LII@%ba1(;L>Aפ1]~o8J,x_Ȭx5% emm,Z4(Idzg^gv{?Ń۞>f>԰hվ)`"RsZ)⾹3`}=>]@X2r|?qʞ-vj6_/m̝qסT3ac-nVV[tɝTvh|u)҂MGr}j*ȱ/Ϥ%j~0X芮WN=GvkAf _JRHb!5PK揕=K5O!F+nOڔ(i6n5L91Y-." ) Q _˧%ǮK8H4\)4hA aA('>!o A6/ٰN 39D8,f,QKY$K;)C$koC|ȀAwSjyp}'šFn!OϩwCsfj09jU&f3\ܔ`\v E\7^4-xWIzkPLMoei+$Vo$hs iuZqr8%/"Z5H*|n -E_4H/ {b^dBf{?!cZ~5<)&F/d^fE# ]Tq*edHKRGiI]@20>b_vFQE+s-B hS#̆]UIMBEl έ.Lْ %--(=iQ.:f.]*l?cL`wחMX0|yG`,,W(6Kb9`OVyYb{; weZutC{{贋6 " }eL%3!q#sk5Oܿp vAVbr 5s/+/N"jrV 0ø;.[]B býB-ahhu;)24+xM$)&#b#}-^LSS՟)1yQI6hgm5(A/3檜Yv*W_ռ׀)O(~`@g_|SVsBD+Wjou[X~T2A\V#&]J1({%dϼ6cHϬ4RlGV} grC7eCSn"Wȉbɻ{Q6{ދvG>` a?š\m R&mci?2G̡ɞ~++cP!TMYjHe[Eb6E; gB~S_$q/ea($YգbHG7;-0jDKߗmS':{L0O`eD;?y^:7Sy z)>:I?f]D1ͤyS;}^F :0S{;ő14ϳ~P>U04-FPfJqaUNL 7 7& -f,݋s;gAq՞V$Wm5'WƤ~d>$9)wף񭰬r߀OE 89!aj-k%^mM螸bM&h(⺘U%-]*rTֶfЕ0f~5|V-UP&mݷ)BmOY1GA |)΢O @;ye\j >}p2'R'{CvEeJ }1&tG]=Y%ݜ/qKj/&h0C+qphVu>rLFIB@~{σ"- Y/c] )fB=ɮdŨ;CT_ܺ#'j^ONFP_XX2PWoju`l+H;i$"ٶMi.xe] ^9rQKT_mv#fzKњܮ!ACOq"67EuخrZGm=|B 쒢# ;L8Ҷ g ( g) -xVrm9 < BS@Z=+}X){:_nõo:T LӲh֫[gSÉ.׬Ԗ <4Bh'7J5'tv4I޻yF"AѦ:XN25&yvQCV*|C 9z`}1Ǻ5xj%m]R 0GqH%cl' 㠂wfbZ.JC탄 [h:_D{hBD״L-a!@{qb)~V2ƣ[#}|7\p/¬cM/"`fQIրV 9x(3JD2ݐ/0C&[MIv}Mfz?VdW+Z]x@aCTI%ٵ91n+a%A9HQJ9'L sKo KʬB+Ve?l6=ze`nm~_z<6f.+?v.,V,M!rAKVopкB9Ӽ2A/z{ޡD(&@zR(gܚ<#\H:`Fwa#]w=68KE`e1f 1%]k48_Ah(lmnXw w-',vmb䟟ܨ\`) \(D'Go=8/[DTËwrtgph]-Uɐ׆9iwvԢ%|^0 8L@ʘ ՛.?[ߙ9  Λͦ ۭn"R  fw~/'nv-"+gN`] cUV*V""zؤ(>=PEg2B\m VTC魕O~ aU lKY%yhGUsb/vPi::,?fBooaPP#/d:dO9gB}@; Uzҋ.(H^0zόj͉uyJ,X֛UVWPZe~ᐂRC7Jt5´H͌vl _2VqJ!"p|  :)F%tgfN{3y/oťfu:DjrVe T|+X [~3@>>K/ 4u:|ycN&vakng9je*KGRF- *sؚx\#!.Ĺ3 &AFq!4ƫ3:j{T{cӏ׸sb생=<34&K|{jrojѰB1{yeyXOqɒzQt)]$ sI-L#jÔ~TyYk}0:x0xp{> Qw^3ڽ  Oo 4e uC&ѿŌ]Rw&g?[V_~s=B ;BIx.4Ҡ sSyQoAfO=+[< zLrI]ZEREMsQT4fSiK>_y]|ˣIH/\Nlv ZHFreM\- P'Hoұܹ ~Kh1IOZ8l9fgz&Go7`:E#ufwc@8JMggOsU^z lo5)YM[;+<&L,7+`7d׸ 4_Ɛl~L9_Q|pXdXVtXTmjPi|}6_x#ENmaq,_%_LY&ˈ9笟AkvࣆVKn!bMQ5,iM!6@5J>oS CO mWn`"4}S׳5[lj#=08wy9o2pF{gtXV~^Q[89ECdhނS]FI]jxyQl &am7RDV0 ZH$e?iP u qdY;q T wkʕm+Dn( z LLbJs1  ٿ ?܈EY̜22o:8a ԁӤ0w;'Z6;vhNT ZF׵v` iU dÅ%T]d,vb3OhZS%[Z?ݲ m/TμMFuš \}_YHkoa"eoQlNA8V7}Wt`{RQgsf)n.`ݒw#!Nl!:BSF渘1wL{kdוt*c iW˟  VŪNql%zK9ܭkhɪO$ƶYbWPnMkFHҠ'dz. K-j/3mTD@sXM&C,pTs@{ LԘCzPNn b F9O|@R ӁΜ{m?bJr#KuI~vpZz[r w%+I #ҪL԰loS+*gX4hcAkxF~k)FllPy8LuUÚ5H8Bҳi1= 365AI;O ڕLz0٦,9KV8۩4e ]]Qu[8 ,ᝍpڦ:Hm,2<oá|5*W}Q] x8Bm-Ҧ=u"7It;'}ԣFFҚK  HQRi0k]$,-J:̌}M#a5j D6S!klj8'sEwHv JI,;qJ,ƶ}fvoMHV7!g~5SU'΢Cy}+38k-邚JDRb"Wsz]fj{0^J"v0D~|@;Ƶ`g>z,\ua'_ ?(M{^%fIe%y]RBye-H6SP tW'i#bJAzgW7 E',NooX'ClVk^] ' ,[cX V,mϥc9V׵9Q_<0lr{Zh.-Di&axoQs/x ^~ŷ쾥z>rbyd -5#Pcmu@|Z=\gkH#RlnM uH dO>8 uAfv,ЋHHE;`0Ho6ZD5Y-1ӌ_Iou2# HK>[SX:TNߣ]bvޘvVT2+kkj)-&DKЬq`a?*}g)~G}7 +5\N]ɴ, 8/V\$Skб>F; I6 $<]f T0q*aB3tSO_5֟-eX+Nr!K ]fYmhp9,2Wx)X N,"R Cg_"Q-݇m$`Ƥ>3~UU'.n g1kKA?b@2ML6JgY7ܧfWFW9B`gg捶A RaAUԞ^ml xx)SlğrwaھX?*QS %6J%D%P R;F.1FvY #G?=^1}Z5V%""oY.mܒMw6`I =pV8[rN===; Z m(Q[N6M7Ei0=s,k|Zq嘺/W`P #{p\|$"&:4jv~齟99WDf6tE:+yB«# ˰+{vgp#pdYU ϪL?z=`WF$Cxgp&-b/nP~l}>e|Qk$DA *]ؠM C/iqƞn0FH]쉾 /y9"GP#숂Jm?8"4w@|RI(Hlj(:?-Cp ,|;;[ G9˘bJe@pwpfblv"`F4X-MܻJz0c8qu]f@ wzt&jVi0gK.0˔'_aO}Q&^|7) >CGVnɡI4kyDٲZc+ w֩9ؼ Ğ^/Lp9Y"L#:i*a;BVZcjZ84tEd[Su*`Ƿ\)Gjl>`֨< ! R@z1:BOC(a,!JW]$upP߻ T: V ,ˊX"gl9"G`>IK͈+07՚wYw37n. Er2 .LFg~SsHIe] D'#Z1]cVDN<סT:ýN{]Dsd:'>(٠Wj#\iAL nH0D)Hc/,x+ xz 'Ѳ"M2gY[Xn# 8W*4N+w,@{(TYȆpUlCv*MT ˑ~$8 X˚8LC[A ?4!*/B=VwySpg2C=y຦sRay!D㗶&$t3sz*G!&eyv1(Bf71`6b +kB]q*_7OW2{gRh5~ʝ 2CP Tl.A2kA/pLNRfaRa-fB?(zƙlzwN ĸ,Td9!YPؽ䛉=gbUՆR 'nƘ,%UXy>}[=s碎Λx|*ìҁ! ||w,|hHy~dž}N~@0jq;B<$}m `FS,^ǒA\֪j ߿qiP(ƙ`=U8'G\SCPլF P̖ȋFihf,)3.Fc6:Kw4,@㳏!\#L|Z3z&L'$.uOPWC 'kZp,znW8F1 H(BsL{l`-! hǏT_ O]=0}z!ݣZ%-pI^tkl; E;?l~i?LJ-3ןsd2z̻:f('H#.RL`dwx4 ]3HMf,JRf =Y`zc;jCZOчD$'w#"w e9 ThJ ±pp9Yڪ)RMLn5YAdY21Xo{H6@ج> |2F|(ʋ n14 wŧ:6ijFEncM | c~+e,r_8!pϦz*MTa&(vh;uG=Rvfs(JPN ux BwÖV@Ҿ&K*bJHS\j[)e䪞#ƃ2E~bu/CM3 v*9$y <3*]6,-4kaf)SU躰|CUcYQr`b﹄JxD8+#pu'3χ(F.[= XWZ{,eZەO3b6ܮzO3‰T~(z9j<2\g|֥, ⤨Y[6$RعhӥSDR!;wWnI%[2Auܝ A +L2?ӤMfonHKlvYXu·"+ЬÆP-"n>o*-RѯjhmF43)T "aV7'_pgb"]u<qQ~LiVD.q unU]=Q6?%QW_q'Ӕ#ktզh=VΨ &M3SaعSuš|ec?r:}BDg/`'xqM23s\Mtx=Rد0qXoYV_hG8 x+C;E0p@D hJAerN\jm:˂pW/Ńk*e Od/OrO-zB-3R9})oKsl @V6*? [$ַ_+&&c~mU@IRyP 3/$Y/4zt1$G~F$wlտ]D_3a^ƗDb =\Jw 07N҄2 קDs]:|XI7fÍ.^>B_i z 'œTYk_DU!;_ VʻZwY'LGm(m\vwN|YáDy|߻.ǃڥm`%ެȽjt! g*$s徝')8}un%iugD+QTԑ<=r%)Ggnvrjy~p$u\29V5Ҙ戝g8* #kbl+|.r^ޯ,-5WY{'1Xn ΋+T-#uRՎ" i twT&WK2?`9Q'R; ݒИ={ ,yz8m< u8O)) +΢lV5qM;;f %]DB6G_m@HVx\K0FESqphr  Tl&ȫ@@6U!G*p2zhH.o>$B3t-+-MsrN,KQg(}i< FZvuimL]gn,KWx[ꋓadfĐ{$XЫPߍUQ(Edzi2חx(ȶ7YJq1LIӎKtka`7BLq/<\癥2HZ+vЛ+(jKݖe6Ou+2JN !eeq%U7!8u!On ${DxI#3iZl0^}Gs=!mL*0Y3O#{uwOx4eʐ߇لb zȴěS׶Nrr=|#itQ֖[%yn%xaZkyIM]3ʾs׶6|wz"ymh}6 FCrU7me^՟dパC쿽iل~bsmvU^;Զ~(ʵ@Wx}sL' ޗ+TS0ލ+Ei9SP`)T%_HFl\\9H<,.KԸp) ! 5@$!\xFݯH7 :%ǃom6YUVX(jr f૤ES+%HK1`-C>aNt1' R1CgJHۨwfrӱEvX|rp,Q'9_ܗi YJ$GPGڐ?8TxlbctSƪF,lҴH}1 S\k#TphKȭx;9,cF# b0ڿcn.v + ëaC8ue'֌O| #p7KT|pjQ^PG$AJ0lpak;GE'5g?KjzHj.hcE5Zy5E2H$@MАUH;+x:'98Iw] M2gfl C4 ^J]\X/qVu$D#p&sEP:7 )Hy뎌n zʍ2E PoKϵ ]ڋJS&=nܓ@WM%s44 AARvdS1"Z%8Svta`DAݳu,C[b둴 -!ȉ 'I9M&[šk|.D1{"vJBFWc([qyBz0^h8QjA\lgDtjNw+i Ht˴ T5XYfI?K#)X]k^߲ﲢ騳2>2FOy%>H&ŕS<8`qϸT7"@r| (c_O`}(&}Z&CF~rs~b7+Y2{xUMmW"C^ d^-UUn:<chs"M38 ]=M634*t4-|)ܽX AIjw+I!!!hIZdJDH{ɟrt'DZ{7D݂报X) oo>aZOo4az#xCry_Sce8v/l 9@WX$=K&.=9QM <=ZrD񇼁k2a8G7A4"! +.g1}$T=? @Aв7IUbFȋ)a]&]=ot>'kyp3g?rp=ŦS eY~#h/R$qK[GOֿkY[;"ˊg[ٞ)O&#ێi[cAcuHcWM'۾L2]ID=퉔#y0hroʈeϴuk|YX-hB@V>wWq\?= !珚A`sd-GSxt_8;}@ܘ.MxI:aJgAE>a\ 2sӢijQk}xy e5:s#D V7J_b3Z j)` %ԧE=GOeoe~@2x=^sH&=DGmSذ9_K_d0Ti3Pr-;AAi(k:=[vYgplբ4cM:gbEf?]G꟟G DjT ѫއeǚyR\pݣc mnNؔL̔~6`BூF1 ï:M8pX]GorzNNff9IoL~䷎֗Sm9[?((vx2ʹ5u$)ҽVHyJ1hBpZUbЙ6&@f{8] vI`oW7)hSLF稕$0SlV5Y!.{,%Fhy_O8>kW,c?䪛 W` I>/pR*ioh>̾E94efiЀX`ٰ7 s,#y:I _?r pWPv.w|y]*~(K7|-|U&4Ak<:OCZwyaг!GG`4lNPf\[YE$MU<{`(; o@ "Gf& Z'^6Jnc0O weW -3jW`Hğ`Goڛ;e_ w%|y#+|2}A/uDIgǰ0DԊ36]\69bz3pެ 6(,ypCo\g+U7@cQ-(r?0-:F[Q);MfW&%{|lkEטܔGN /!R;\ʈ)i & 3h6e~^!;eA5Dff>H8:豅Cy)E=b&V> 1>7 /Bf/R{;ep7ֱ|;]/|UX.RlE1u}\ӄbnCNNOqpytW_e[x*~"*zL}/#tQGաL6"_˦/$o񈂝D$NIzt6 P%zjlVMFɣR6ʚTE&1TUL+͂Ql_Stf-L"*˝<QC N|j%@6#m5H k?Л}.< 1\0﷡ns#o\Sy2O,,˪'ZO8t\@Ƹdzu`%a4""(e BaJoG=6 *?˸1rZ|4"ER2NPRCu:Wn$vޓ` e74d'cʒvTd-r\fxg_[ [A%gܪgF&`5'2xDU LG=fվc=@/]uWy Qی(vV#XN*/'kYx _hr޻@GDžQ%QEu9\&+y,v'7vt)1l j{cj+y-%*Մ7ޚ_ζR~k~Alٰ߃iHI| dY +\I?c,,XFl}^_\﫴;- UӂZ 3p@.;a`3A uDVaNF]@D[ 춺U0k񬛩qfm.3Lu/T7Ez^;(wN2bZ O1 Լ;+V0 ˀȊ8G^J'.GEKm6[x?hqۓ޽i')ubـWEi#3Pw|Rax>+dZ ;~L^W#~b!-З ~>=&TԤ`5M:o])ܧYM$Ϟu*عCr[#EdR6O!`b}A.ꪀBr3iiu>8GtRY:>JQɧJyD8QC*nmjhcfF IRn}g̙X;RD~7E:c6')ܤs۬Cj5RtXR"}H f0(*jpY+_ʳw Vx |lLM]L'g|vu$eN:q[j'raN@f) ?Hrf4fy4Nr\64)VTKjzr #h\tؼV("}l;VPMUݵq{gTfTl^JǙ&QP#)Eb槟TL]kszɺ7MM>Wey}\db9swy(Vb <{!fWçK(̓ :ExfW9P.{e=< 18]΍huPs5wop9>bt\ -+ J-E0a^7&wI \ l֭-T%U\.20|W>Ń>ǕQu3V?nF!#7лBf^W_BV4Mݰ.DT+R6Go֒g/0'wA_|6ʃW;eA  ʕ2cWⒺRGUB ]wuAN&JK:G$Фuْn Uxˀt(ҟ|JK;SDd3aD|Bτ{[' wIi6TLCy/[Jt;XN%K#Ny0x}`4m ޟxjSĺօBOɾ%D&uuzvm;F @ZBk;Qy<=>27ۜ0}2!P,?$?17BRj$5+61 m)AH{7CyT".d~gD̅m"}j.H]!ؔ*oS0;ڦB'eC{9>Y0FjLJsy"E[o~ͼD}5l2΋z׻ _bͮ3<͏o8&~#>scS1Fx61GBu'מSAiHΔi Y`f旮]qZTX.ƾ0O9V6Z'50=~iT+5MUq`;3XΔ!]fJeKD $*5nXdRo9\v? 7 ;7ktKg!|oQ@vSQ4;$ΚsJA7z+ð^*U'<?U.C_6z:CGDm_1Jt-w ylyK?O" ,t?a Ο9D\<-?ɬb0j:D])ZZL$83Ge?6oIks-i(a3h[id̂6>…wR֠Iy5JX)|mc-G?p¯yH}/^?a~D_MI[jSvYojL6<3 Bcmg +bUw V |!b$"Km8J9O ($*>PKRԳ_]D[\:VhE` /uZ̙tM|INu+7ކ! ( G_/-jyk+]2 T 8Me9 ZFzwWVS~|K^CF7 <\%ǸB"M3_66J{e,-M@t8?mu5$Zֈ9YQV囔CiLuaN.Y²2N½;@eY:rbb`R(u͛2I^^j޷%€Xѩf* tT;бS[ZOH+jK P[=k+$/e9%MP`>C?Nnʵaz_L䅽<܂0jQdT0i;^9 wzd7'' ׽ #)m0( bd۪n%xu!>9UGdؾ\:=d!n<u\]2rV?sxGnʒx,MA(Q=o?2},I\M M/28 BT i0q(la~u7q$7KZdѲT詀YOd! J6M!UzSA ۰ d03*A^@fN=C g>.s ה'@?N = #ƍ$۫^߼(ˢX3pQB+Rٙ !4u1PjMK{.&y lݒPӰM+ӱ2;m2s!r+SY(2m[_H@&80bJcnM=lS8N# `5ô,9Cm3"<@-ix́!E/}\2 }f'p;mt4Jވ:CBN-r_0ȈA ~F-&|dj.Qfs*eu tBA|(QuP!5>Ø.3FSSPq\`ZJ|Wz.~ӵ K'iBBӰ^1N); Rܛܪ?#Žų[J\>%[$tni~rɥgEХApJ!r#A۱egΐ%LYMJ^z;pQl.ޗ$բ*=|eVWlW>tX;ᘥޜ_.\8㩯ad"(5(:7~ 5ci.Qi#Yu$Sš/D2Av*?-Awp]EmΚYI2ڵF5 d,wNzv Hry%a Et R_^ax qckVH2 ڢN)3)۟db@` ,#ƽ_CPc>*~hQLY.:+'X`" c+0/ V-a΋v2;:Myks ܷf0q /Đe-|0Ƒ+  _=eb}I i!=Lc!r%%-Z\% ʘC7Ry%N{L'3>Z5@˓5ցP-DN5q9~{5Ѵ/qZ;Cc]D/dI0B¡PQ'pzr ^617 ̧FI4tf]2n1"y|/wfxl;B ҷ>3MܴCXW~6d? G݂MzfrxG{V8U6[AOf8~;O@5EXoǮZKفf}zwU)r;L3#,Kb;_xLZ#x_(n)I hS|)4_{J91eifDGy6hi4edF:, ( ,.8Bkմ8&ޞ'e[pFOQ15|V p&NaMuA\01SlQF1&U<4 M ּUJB, 3E0gYK"]Ip JǠSk?(T^PJ51[ݩUlJ=Iz݁s湎!J]G C¿48GQ/|g:'#Rc~䛓es$;z됾0 )UN^y0Y3f01Hv-szC0,t[y4ĩu;g.1~cnj~P 1U[ޞABE|7U ejXǖPCYZ (=&)2;^䈰۝9x[X) a+:5siۮj{MR?ڈ`U,jh5Ad@)Ӗ'c []=ķBdλ2!I\a[::"qXn䆙6t٥|]erfgΥ8 p$ ʒ/$ᒾ>/7BpLPiQKϻH{&RQ!s.[DL`5Hxb2nQjԀ/"o깇|+9=`@#UfP<VBcM$ :'eTnMx78")\q2̻ mb{Tc%Zu^P/ʠ4a>_gMOmհT<=%GL i<8rf6+9M2ݸ&Hx– @PQy x(Q*o[yG-qX{oLGBF]ɉ[+wWpisK!x.-Uqm":ק(*TG*$WrJK2򶺻v^{{+;ʆ\ \I6%ܹ:8Yf\rVIRfwi'` !/PE)WnԟwNwYprtyšsꊙ??9;D8ѹnJylfPL=}aZ,Q;D2s&| _]CMąǗ1#I)B6rfXʥRCܹҠ 9M.ֲ-tifT]xۦ8tfY8H{<GxNc52/bݙ=w Uz:: }x}cƠ'.wol,SsO1YV =æ_g$$/3ä)bQIZ9FHdZ8bKps{Vf7ة!}OGvP G2:TjHnHO>t}4^rHM8]ڲ=PS'oW߷ǛCs)Sv?m3[Ž?_j'* ) ]Q K5 F^SŧR3=.Mn є;O 93R•~Gř_DЩDӤl6AzΖ{%:꯿W[۔7!mmYKU@Cko(YHmf$eԗ.ɦ5k쉎7=crF` "sАxq3# E Sb|ۣr#UX&'|FL'b:0J,nQ̠.&r'ɛ`JY9򞝆"Ao Ď!!mS&e se 2d|.}-H,ULt 4Vr QXq,GFh[%;gJtб%^Pv88sr@WAen3ΥDM*unk(GqاK^ŪUx4VBwOvAhe+ ;qb{yhEK=9u4Iˉ""HqGZ,(,+Z{tUZ620-hTbD~VvmwKȜ隸"S3jjvV(>[Z/I;tqgﴼZy}P5wv 5Y H6wp'pPsh6P#oR@_Q; ]#RĮ򡲇M)qo,^/9ɕyxeM)/;A3 ₜ|cKi^g"m/&_Eu2$l.R:KOx<"fl(%Ӎ_k)Oc65YiA2:q90ܸ1I*.D}2!Ba>2 L ܠ)7@ooe$uP`/&J9Erght8 > nRޓٹ<8p|~/R:gؽm:R:y]t2iuha97~{%A#|l}!9* A"YW/{V˶R#|n3<:o8t\F4q;| #҇r*v8i,zk W/صIc/6UC3]X/4v̹d%.97SKPUCCs$DlphRqmr]ERen$"9W{Í|XmP#tID4}j溉62'T2Z" @gM-uMGGgSgj-(9M9pTCn#_66gcW 9Jz_-@[h{ @s9rxU7Ci^Z S껀\u8mgUƚLĢ{pba3Cۿ{_ex(a,< M.Db]nQ+q7t^K{jJ&xdoHE톙`L\oQ :^IR; yH 5кI};VzѯlĴczW?7}Ϡе6ΤSՇ!!z5ac?gE[R&mg7'>+ǖ ʎwGǵ4%?^/eXR vBНPEaT6nRűzM)9hh~躺 /^MrMahQ-^ϑl 0frptVK<(N=_lZ|}FWvBE ѡ-K1B?cͷ& AY%e1 ۼmL>]%('OfR#]o0.eMs[_E"n <9'3HVqP }UaZ9IU:끕7%@ls,W{,Sm1V1K38+\H9GPF]T[#ȓm~A'{=^Z膶g6cr_x2N W=Ad vU̚Mk'u{C9]H|^Xho'%He@xˆ>%#`ygci؍|Ps$3DFyX6Zra(X 3CsdNwCm)M!<・An E֓pAI,ŮҲX}?H> 2/fq4K >Rj3- ;qBVz3*s&5fǠhQ%3-rleTcγ[yӷUâ~!LIci{\ lH@/ clriFP;6 Bm&LR<\l-D-qs@*Я3er'84^U=_ G4Z:bv2͂?~[fUyU6^2:d$| f7p@1hyR(xuMqȎjm>CW3(<7yƫVoT {MP%+R%g3$b>˼;a$uk!/NyLO@uEuE%*BI;c5 {6t,ZMtP kgi 䏓.a%sF~KjwG ̆y"7MqC׉jbl3*Kj Iߕ> 5^F38BUmyalvgI櫔6 ('.&MXBn[D0#ߜUl8$c.^A/w WYdFT'_~fP3; 6 &bˢk9{woy!\bl،Xomx3^XeQGNhw-f^RK8XAb,xkSxz0y*iӸgMѶ,2OH~%!ND83F004+y."({{D&D" #2l@EuM}v7`,Zu]rżǓ)K*wT^~:14'.sT:r(_0RFHOz>.rBR W U'%#A*52C4kW2cuxUt\3NabE_W BۖvA2{y@g;9P-wlkE)@/o 45Ya+^EL5%RG mV@P"SԅajT %nnFQ'm[9K֎oNإ0$T'XPaV$bע"Z]|"J$!:{t0Z SEy7-VWFrԘhwEkM&mSC{RVr6 ~P-CeWz8lj-ʑ45ʚiCpPK$Vg"qtsr !_DsS]$B]*2$$dL"^ạ@[u2}6 (.b9 ^RFkS_-t[R,=or_No^PyqN}Gyw|p\ظ6D跷 N[<R2`ΉN|G. |Ԥ@d0uLD8N0;U4$@}x lxU?K;eMLf<`.Bd6a|¯ah|,@*6n{_zҫLs8r PC@$7jͅ1ǝNm';QF0P٩%U0߈*B%yx$ahJ~vp :lk Uq`BGF/P[k F fd[PMR7uLɍl2~MoBtEBbҟ2LeEѳ&٥s9el8S2 "tGnU*sFkg*'$7-'$VwOD>(ڿѦq#M.kA(ebf>Ơo`hz;jAƫ{#@Qn0‚87.o'6R:Ne UTwϨ׺hOA=X86/&a*p#Wי m|w/)94Cw@8:6%.QRui4Qle=Bޮ j/goc_"Y9ΊbUf>jxedH3Birљ>B:bzqV8GEHǔJq{L)PN_>i=>w) ? si%<4')G<s5Sm܍07^M_6M.Ϲ|IuPt7Q[/$ԡ7D"ib:;(HVUr(E ـ"gP\r4;XkE w+=(|@YH󼴮2ɐPl6}<1:1u/ej`ca&7ovx"j1 %ԛxsp:'#'غ@s۵"v>[,0^5>"Sα (6^SjK'@Vlŀt'`|bKjy{(m#ةGtHok+i.t<w+4a. \G}HA;_ }[ժ&L);x@HtD;h&n x%s"J f"曬>&7:g(!d@NT^jZ~HQ,`|=%\ H UD54)]Tpr=/u^>ݜMj$tkFz OV)qg~p.! E NUiǶ x}^$H)/_z3fInJ[LS ӛo K$ A@/KCFENUꪅg]AHϼ(}CwWXŮRlʒ A߂n[AFaf(Ǻ2|<܇">P`)nSˮ3QWgX2b8PlB a_C#sxi)}儲+:P4~c+M5Php)RN,ٮWKΝURtp[!rfA% CsX=!:RNM~/ct>Ak;-&%ڈDF^a8 0Ttvᇷл#p*a$;&y' k& TK>AT5=da9J 5 } z5C趖[νGcv>+{F/KLZ LȤ(Hw5Oc?NPI }dBmT,׻P`mDcϜho}GC Z?r/&J,B7JYoj}#!C)~``&Y|02/Mj!RQZϾײ.j-} ?oV$n8z6HS5rƴ4- <+Ҷ؉3ٱc-L" ~~dcW'|371(*}:ZMƍq"k͑t!l0+3Sb|;n~߫s ]*9v߱p4x52ucf,cձXR+sq>7RNҚijVP1K*Zܟ9iaAc(k%ml`A\Xpf4J N)TsPH6&Y4Xd!q{S:*@P$m&$=-vmxҳ/ ,.SԟN3@),Y&Mbm8)Lv_vt[]r׃% ՍPngR f[vܽWGD4?Ζ&ڨI")-KaεftjU\&LA5WDa)]m2oLc_۱[eiW;C U׳`B*NЇG;5.%.\Ŕ@ Mrs\_]nGPp_:UI=XlQn@+襑f5Zl1Y\Cm򂖈{l!L߬uB3滶<RO ?/kˡ6aH0U4Uh T-/c d3GjNU75^'ۺ4.?(5U,&>X!}*u;\txhlu]b^^E5+_? Я!f d:>,KI9kιWL:9mlB ˄ŋOVx:6Zj62ڭFhvRR7tVxfNA.j_h9KjTLe^i3J&Q^OjOSA-}'>fb\{J:!jYVT8,tPQ=iJobYGݴsTڅAtuG BnΊM~&^]]3I-$&)# \`?q6Lnu\-(\ޮ,VpJ#0:#j).Zh("s04gÍ6hڄY8%Yů_4 o3kX4jG c>'m<BnuEN[at LC/&|9`9|I~hpd4MLVa2eʜ/ʡEQ- R?+K55P^etb2_,1׷N]8bL[G$NE/1 /0!5mE<)aDABnV(~##rшsRkoe1jegzp`?JW7mh( Gb6}ё\E=q% JE_ kO z4Tsc*`*Ьg{Ub;vⳭ4# h lwE' &|9qKe젍z\}H+u-ά_?k̞>=)ӒNb ],ng <=|: /}}ň6oۉwf~|xɮbrۺxWE)L"]nxi.80m'{اvʈYb[Y+{9CS3YslQ߬rO'jZgXWvځ!!țv6,{j /pF#F+][T-n1)z\Y"6g_Jo\\=oTY),FTldfp؉O' &ӴmN S'Ws:072ɛ^恌19%p3qtKʬY3n8̔VBT`oQ=ÁQH,oZs_кL7|$(K/FzR:mff.>&r4dbh =N$+09ty{M>2Beڤ5u7u4]v*u{inP ^ZEzȟl][(V'a?r*R~=#ޤ`~$NZʟ ګ`mZ?}55A?:-b4h˻ќ!i;9"H&@n*V[cn@A_`OV)6bvr5nH Mǜzx*;o'BpHƾ8GxUlkܙcںvWAyo(r Z= ggBf{0E@ux%t4)uE:L/1Q܆nyIũ XKx*IÃi|lb4#D {ۍgRI,Mg&唉Ka*ю=ȃl3MkD~\mfeJ?d)%_bL>lJ@w >vM]n&%;䥼,q{SJMSB7`DBDٍMNt[,噥7Pyce\=7֓ƾN'}4v(o lJ"VDe'.fiİﱐİE^s_C|G$C)CEkTe kcԳŮ#\bc41(rM^ZO|sL X!PzW[&Tv8ant/~vFqʲ5U~Sb {%OhMOkA['=vnm f [ʟ@̶7&T峿M>9Td6ǧ|[ab\?:IZ65#T[*կ۠QC*Oxj0~aAWnelMvCVB_;IpVodXQUTL`ünsQP|X 7DŽ`rsv4E'.BqRVX޵'w:&Xasmlĕ`$C{Ĝ _rݬeZHڀFU Fy D1FGJʦb+lOLM>{Bzgp{m=}]~v3Bo!3lvZ(1"'_Gn.MdcCGIvŬ3Ehfz? f7SўE=)u~*ŔKyɣ}^˓d,hA<4x_˵sg9*2d͖WK줆:2_\\M9?: 8X' p GcɎF6:/--C6,$v^u h5.TC܌~3 snjHâ[xml`QhB}Iٱ[w!9H=upO2g>8̯$]cف8e>o s Wa ͿcP s^lrRxqG}$p5CmQF6} 3S/ye9NYIwf5 hn&l= Æ "+rEyzCP:܇6N ei Ɇ#g8=WpBr=C@fp&~2bt&R_1i`){X{pCg#zt#?)@(~O,]OFdZ2YNz$m i/{jH <8 ?ĥ:%g"LeT$HeBX#x.iOe\0EiD4䚬DrqYJ#9JdG9:j- ΩmCAJA%K=X2p&JmiaTQw4K~_8d+{sjWI_:kvjg'dxɀEZOsϬwc\\׈<\6C;A[Y4Lap穢Av i H<2gwʷq:2!1\6 G3PB`[j- aa?Oai* PwAƭ15 NGh ,mwZ0_k/Ktݭ: B`,wd6~BҰ漤iޟP㾍I2v ^kCT(VSR2xiw_~cb$.y;B: +oXOAv$?n.cL{H0$ d6|'ozDU;il r )R$[2CnbkaN)7ᨣ3AΜ8JsX  6g"'ggn4mdfaOz~-3kG= r@dS׾1܏/qaL3p$X*NŒ>e^4o(~ϻff^ y*e$vig,2{g? T +#ëfX$3v0)BNl }>딩ߥD4)LtsdVf2\n U{\‘b@\26 Eh BgGsϺ^2q(-}x6)MT6ϟHsϻ|Q28i[.w]_}@5b$tG0A#w럅s8)"z(¢8ޕq$1u_˪+AL6kceSIݥ|d}i<8"نgyAf `-VgoFtIO40'(Q)?igevp˕Rc%|T ̂t9e>A,]Vj }"F"IzfY#n%ӕ 1>A$`hbwLgZKݝ,e]3kN-.9ngpw b7D#Cv/n ~!]iO[j|x[58,YQϴ͢Qxe1l W#=|oDða@p=xEĿщ!fD{"p PY+yOұdw(ƹ8mحeZ&{T(mcDYđQIr*d삕 [r% v?ܚuD`ry W7tm*2g (K^%h~`|N1s/Izֻo~^?Π:{m IZdRW, /YzFQXdJgOL< FVj>uok#?l=HTDl,fnz}nw&Rj K&׎i Y3V钲,7Y#쾊E\0% _: rY˦gqnU tn&$aR ix><\1?nN!fuNTmr4v |$S}ZgGR*-Y)A1=gq`ȣugiERrڇ9B$Y(|7+{`3@|1{y%'׏=M 4~rAڷo)u[r1v_ү['U e. vdx6`4$ݱ|eVaK UQCanȰ.ܝȮ-Ѣ=`DܡDT n =iݵ#Ih2.%wH [VS1P"әD%[{~ljo2p6^3yb : F&:qA&u'6Npy2KW[+stEr+JIj uΖ4'3U|U}߳}et)X~vr2m#,#Kx'e}ފC+-4F_s A}g^@V60b:H,kNG>"B0OrvyGBgdwI^,.nOއa(@` 2BC@%3EBS&M9M5M4PjK_`g+Kɂn/iGi>ǫnGU,FSјaفREwB jzdk6D ,i l.Ó9yIl}ty2u0LnN`@HQ_94f{,sJPD:О&Rceʾ¤3DɇDkK#l PCq2!JC126a0f$P&ۏoxM'q0ӻ ɇ#S2i_c״ 3k&Ϯf,Wʉyp7"$41n43Z.Nn'F. 辆ʒI;ixl< !=#h,1d\b۔{ȕ皓 UsXvvP%\]½ Fpe<7i 1cN~nGYB/= 2UEˋmCU(_VON~HZˆldаsf!H^~z[crˊc}6A5@2,WCoF=%֜ {(KtiR ׳ EH'.[. [+y r K]dja~{; |zI7jDtOr-mzYt ̝\0i+Vx"3V,K.iR˱c4q _ qn]]sQ UG~#,`Z\A!Ol!s Z1-:2"Hܫ1-vt !*.wί;q/j;h dGήJW 7x1F܏b`Xy'T|oԪU*|hT]C _!=9,j|0onz%$㣟!̈́?Opg:Kt+˥ICz)Lty*B=!MFD͹5m2钿흢ufvl<*nj$?2QKc/ݡ9E%nÕ=}GKĭF1 E 뷢wu.[4bu F0Yj6>zz"qS$hV~$m F߆ܼ 0vbr5Н )P8 ^&líA.yxϦܩPO:J~^ >G==7qhvl(GTlKVSNwJH4LƯ^swo8ʣPA')ryDVR7نAWk NC9Gv$7H+󒒶V׬HtHܷGp9T@ !8ŧAl45D•; B~+*lyj&4=ULNbEav^4FбG%SJI_cX&?Ko+>OUgg\6{[^CwkZhu"tsGZO6 R'ߝ88{{/&e@<@!^Zym64|SM[gXuc@Lq*bG05K)LғY$&As)?+ Q'ѿ%3󿚘M]pЇvJ=8-էf(Pʷقh5%E,}q[ϰ,M)|<"c% A~Cnkǝ햪"MnvxrYMo̥=hSx&A]!N0NY{t1F4Y}M~}> s)g22||0QWY `jT$!՛n7SḚSwC><3phU8:+04llg+R)/ x =F5e\]oc勾bub"u:)Ll%&5cA$/qm}WtVç?Ko>ctzs@ `Z@ūjY3rWgIFW. IaWsT K` wZ;,=ji0DҾZ25 ^W8& ~3L^`6#K O﮽K}P5E2jNڠ% e$ w| \,JC1W/?;PU py&1ЈB/)qHĸ1EruGZIR/rh`-_WN\Xy)X _r)sͱWoH@|m~Gd6fXxZ5ւ8>,I&qXA2}phc.%R.|1)jĤ3,Ξs&uVgv%s?:k oGQ>\ȸg9 h$Pdn80_< Cq}Z^xK$y󋑸L .Vʥʤ ;_V P Gv&.>+ ]:XB0{t*BHIy'Z'u8nlI(0WyɸUx?W +ϲ1yr UO[XnD $Z@F^:aVsi I \ ca+:~Yg Y~pW@nQa(A&}[P<_wdU6  \Gx)i|\;a$L5XX/ri":[Tx9&)F]еC?.]>orT3n$"®讕 [,Չ0a z{sY;"KT1/p澴HUiEeZ NEl8̾0O7T=pww}(BPud3po4DO|j葿R>G vҖ`]J=6R\RYma;נ !n=9=xW 4-s68v@;0 !V:[W)Qg~} b\ӪpLAl4 $/oq( {*VJpj'7\z:  wP-d95T7E fdWēÂR{Т\Wm09{6 P=&0{\3ALgR t돁\O vQ[Ŀ $MڠHu++ֳYQ=9L|?v¨'Czi#Veծn&ju}|ZeWƧ{c Bd1)'@PF/73=<=&@ =q! OK<0 "~FtG[D9%eEqVfڀlYZa GejgR4rR1Է*G%?E ?͈ 3I8piM`gY% -DSXM!&1{4;4 CoǬxB׷Khn۔Ykoqa6(Ѓg{\]Ɩɖ+ݑ#o\9DL-nzTٌcԴEM? HCmܱ&VݛEn}*/{luiLxp_p κL.~Su;B|?˶'.'.*$j7 YBN ׅefl~dn$4sḳ3%yN,. HN>6GV煻3 N*[yP+gbeVM}V 49^5NQa6~2uҗI@:ϬkQ{Oi{k0;d=39u'x"=Xfڮay Smfuj P,O;t8ĄE 2[F $Vy+lqnh^.( X5`Hy|[f&|Ro (h4iLv了*h@H~"p@L&Uy<ݞRF!Ҩfr!+-@NwH0K+tVS\{t1,^x7/jv[`HY:9x]<襁7~A#}Z[ΗYN"W7 J~QxN}V< / NzH; VQ]jy-kl"ٵǻIb:>1cCi|/o>Rb:ZK 紣[_NW1\ל&/Pg>^2g5lW\8N5z[ג=t$®  dU|ío9{wCh=(*9gyI͢4L//f\[=`PJO{9o5!`٦ r 1U2t]nr?ðOJȉ;hbuF&M4%apI- _ aHYr*jphS#`x [sbNCz/N00% > BK}v' O{f's+-_69;/Qvo2e6g}:3K: #j6AbC1c6񪬨t\m4TsX3NuYb!W|dC\,{Daf2n#żT3쮚{JYnާq^N\Xt) /{v52ә(*e Y\LAeFk=ahFX4 ȱLN%?Yf= .%qa",؍˟an B{|:].HU Cdv;s#wye]U1yItIա*d849f>ߩM* ڰk:p޾5G>xOl)}/;\Nvp"I.{y89!p4Tv~%Q@'LUt|lYan#-P%|3e0!h@zD+` 䧐[gZB%1T9Yav)wnۡ s_%b'}9Jj-G0 LgZB4Q>%] Gߎ1G TM1'7egFNn DH0>@3>؋z>b('|;DUp#ٚzB@)$=qN,)kҽBb92Kdt,F0̀?β-CYb־ΘLZqsd)R!IȌح( ʳ{QY?FUjoo'#)#ٹKz+gRRt 8TEXEz96'ŭ|F ēc{?CM3Sd|La={ԻgRDsi-4HMQJU83T!";C"L_r 8TN~DZVQQTd>5C2!bHz9(UTSd2FJ_*:iݒ)Q9`W2dD”2(J#߅g*䗢 tۢ)$h|9ݴIr|g/mRDg ^z7yesۣTm8:ndSh1I'kC_җl!Ix /ď>j$EE!+diz'ׅ+@inRԚePT|b5Lct,Fr0@ԶgYќ5d9(X:;-,^{sD(.yz2z1JŪ̆I4dԵ,F9oJ7l-h0cHoZݛ;QPE\ յaĮ[t/Ov1W<b *6MG}ЀWs?s)YҺ^lhR $@mJg61!^ J* zY1SJ|1pOg cǴIG}i#q-[YV@: \yĘY%/SKUp}#wo@ Ksta e﵅q+洬 s.*xmb#|eA$JD+gēUi:IjJc" IvvH l_~8A=N{hlIB)K4 w!9& ZXׯ68sO5%ܪ=-O㻽A_}{EvgwgetsCUJ2w<+Dўi5d{,q&5,;Ob[C( @q0m#x.#Y?Yk9by?[>`y%sI{}a69nxc!E`]vH 3JƂ?D C}:xҿ^aQ ؓG$Ui4Sп Vgʖ^U澵9%^6ĿqGŚKG͸)מN 0x ;V8)YtQˢX$jl"߷{cr.r997=9U?ɂ nkc_fTE"J~JL%dBHBnB)B%1 R ʵ9t%L~ZNG0#&+Z CjYdu-K]nY(3rSj4wlT yF4vHO{\?=XE?}xQN Vqg`nL{lemdJaZ[F--hд*7r tx eO(p;9E6Ue(X;+k\>v;ȾEUf9HE_`tk|; ~?JKљP^O۳dXÉh>)%Ww&yV(b\kFļܘ;xSx etYMuu]JٳNF_{X%"vF2\Vptq6\+]*>SN^w~ =}+ߦ9k N80;59Tx;a*95BQkblOX ?]-^~Z a^Y y[Hd<ܮpF.DEi5|nt*m=W}w vtzf)ﱸ?Qc+O.La?-Le4]Y+*n1b,q̢!Ҋ !S q|wf$~8ɱ>%aZD-U׋kZ].s5d”؊)ĝC7@* SW3.fs8N/d H4l7͸ea*_TQczٜ0A;4F[LL<ڝ"-p'BU9y^._ySg%->J99'E 6@rܿ.Cݮc*LV1bvA?υ5pST eU2p,>>L ?}N`4}ޥs51l{(ZpY0A݆GR%FFexDٜKlkX;lʙ.#G)N w ApO@>f(F.CDۥ}"`E =kE-x͆0HNpFG vq@fE)?6K16XR΄0O?b[KWuavU\+56X<-迻 pr鶬*"b!(Z X 1\tU\|gm1ʼBH7X?j{d{>x0j@OYKX!(]`cS-U^ֳ P[DX HѮ,V,& aKH.uoV6}_BhEaz}Ցy>%vgQ)~5#`;0Դwcp#ڳ|iJ*y) aqu&cJ*Mcܫg pTqո8d ^ax-;9\Y&0ձTf8Ư'+) )qPN?YN ϟ]9H:nL20ҝE*)| ^]F e[\% %onjr ϑ{>"]R9J0<ř4BO_htU&=ҝ SkH@vPg՝tkPz O׵nO2*ge$QM_;b$ciAVQ%hSaI"%!2pvDyRϷRj85ӕ(՛ucrU=wTWe'>xzzIv P{bV5j]g7,`:VcQIaHQ}; W>ue#@< 줼!ړyߓ1UN qg"& 4 K jtvNя0{y:v|/+o)!dCn:xfdd r'v D^H>lҺ ĩjy;xD$N |2(CL "`ʝB:}7/_8V}Nf(cI_ X1&ީ5= AFlM2#sCvoՎBR?WQ$`< d4*R'G٩g E5ݫ3цoQ .VVZc(d w3TX氫_89"Ey~MiW<88 qevt:[4ܱBV,j$yЗ-#D?].yt|X>lĞR*WƎJ1x Q+pȜAa=^SʪLA,k=!\ѷ@v- waZFW޴\+bNm*yvʠWyȶ`Vf3f4Z : m{ @pE4n)a6U=~Օ60=ȺGGĹMX%^] `,nVwe6H'~Zl23/Wr/t<'M ZRR-k49:lx:)dw1{`= ҙ|RYH0ld{mwOH~ж0H߳/˵;vRl^`kkĠ BVBF:E%w" eBtJЧ_Fep*H4g%(:OAN+<9Ms\)H^˹'\J1`d*WcxF܃Khn{p$K&l~όe2Ȕ>W31M@QkZd!F!ea"zjO A T^o_ S݉t ͪ8׊JodRej,b=X {<3wA>es%xr@VE [慩vϚ;eu.p5N1 dloPTN3u/C/M#{[ Χ2x],tD}C.rM;8KUwF$!.7l&Dɞi(}?4z[ҝȼuPY/b]9rf;12nRWUp,[b\/z>Gu#!ᆁfc r9O掺{Y?x2\*} =&!+]uN|lp*u WY'ӄ%7ȁتD} 9 VVB3n@f3LVG.IGra?$vѬ݀r)P.L^̮ZKōu.8> a%E:mMC_ƱH!fnWd[iV%oM,&^8{\5`jG[ O+y{=,+>SۼpNR/F`dAEq#QKv*w1"0~ G*5bg9TӤ;8ͻ- 3+Xόt!q:s`͟Y٢A¬}|w@~ʾVSڅ2a0ĴӏDԾb4)Ptv%߉F)!MU128 _G[M AkIB؂>4Ϸo7-Oء KÃq#XJ g<Q䏀2/pI›T5)p/<9̭ZbQO!3bwg;-emd},G!RdEq(_x4N)ԏRY6 %R#n~'RUT7~"CmYOK܍i'*2z+~.x;A| M!lӧ+! OL esU"qZA/+ {Ce}K;m֘ꤾQlLkHs[+FY'zv'ZJO]bWG(=\~tuvNv:ŤI[#[ςlHM,$ á?lR.<|շJ>.ƽw@?)*yC x@$l>E\HnX!Eʷf%˒:8ji>:nAF ʰN:Djձ%EAm'VMY*EfDÏGXKuε )a߀% })AAHo][qWmENE*`D?+ܼ,*/alMcUb,9[\ko>kTA{Ҏa2r5M%~kAt/>5 *䂭xa=Ω@ Fip7E@t->?}4iϖҦC۪ODY}5E D'ueBn OPD8?"J[ -buFCX'׹4vRzD{}}"z ?5x E׉ksϿ,/2-PS/OI'^JG%E3[z9R&Q.ϹC8Ѣ08nΡ S0QNn{a\G V!@~V13. pZk>љW! /aޱY}gBk> eF,1=J1g;Fc`Q/O4*vB螓d$҈k `_/5.^ǁ Ea<_`w" @C[# 2@)hYM edC(#pf>nLEl6"}.OFϔXWRda#o*#JT/gUNE0ȏ7Đ!)"Zٲh"^0R$[PW⟳h4 l푵|Rs6ó0BeKcC['֧h*qsPBA+B,ϧ)P"3 l%;}{AJ\<_Ds tz(.JB~{9MU7PA`O\|;dʨ|#]BO>[\Y, _@+%VLfg_f9[+cv{0:C@g1_駣s3JL'UxtI7L/J03O0lu:>d'/ӎؘ XP>1l03/W6Îj]=m:sYQn2Up^u*ZcjF& -6Ŝ].IQhٸ>ƾ- UCw A'tܪN'>S~P$.}[:q{}.gW卵)yp]@O%5fǀopjExN4 x)*'@NR2*Ww1-hևwMe]Q4x˚PFxB+m{A^J 'Uo\tcYğg*8/-ݴZ&ivگP\N~΃fFb U"qZJY><)l~ m];y`v^Sf9rhDGђF 9w?FK-Sjyo.=5o YpQyISPK m}T4(")ZJ뭝L$ A5s(KWB',ww`VV`9U }FR,sOO~a\W6㐇r6u0Xl5&-qLHc odGXU-83sL)h`e A?)G)O#mv:> JQ&T}'S!R'vͪz5!;ͽPX*u`-]do CDHt >- [I3Cg VL¯k<~3$RX]6⺻i#Ȓء$tOKyx}~+v?[e&D#td_S̀lW$o=S6y.SUa;ë65=3f~àoqniOcs0!uǤTsbsF^:CgG|_F18% #蜅%$Y8,PBΕ5#!BՃB_5uD#=N>t]FT$z9=+Z[?ӊHbL4YGhc7cb㈋E<Xc E9V1>xXXMʟ#2*!I]ʁk>uɈc'S^6![ny.508@;u,p?.N/GnKh)?@O_pF %ЋSP% %;pupdYOZYB!eBr렰BDɘ4Uw/9V/[v[TC'GAkq9kWoO|x Y@TVD @'dz(B9}waݐ`yPg"τ#o,6<In=jj͖<»K}s7VEa6[_ NSOadTC.G`+ %E)JS#'FR&!W}Ti*WTW:/ڦae2XկfiLN+`\bUxϹ`V'Pns{ڎZMVK1 hDǠbgu0<^64\ !KߏW98[%}K|Jc-SFcd8QFuylEW М/( @+ibX~\|t%#0b־Rjޓ0i1=}=G2% {u8^IoqIV )mi*$(g[:S<>IP`371{znFJ8jI,yrJ}/ &y`WG)\"sz(r yJD ½g<ƃrd@RZxުaM6Gt&Y,\Z}wNdؤHsUV ?A>J83a&Џsq/Yk07ߦ@8/Uaz*&FN˝\ oSۜ>՞Ym.`k}7f **t*9,*i^T@Ct+N`q֥ IvO5'mZ@NPj@OX NO㷳lW@5p +Fo5z!⒤!;@/O`G%YVֽB䫬Sy.LB߶`K*Ѝ1I𫫅AekTU-u D>d5fhm@Pﻅ|/Vrޞ;s,oMnVoV]L .>`5Fk1k NJ+E1<']o?"B5*<)D@kS/́Rכx>Qo}Kq'/IDCɝ2ҿ2`ԃ߻ Ht4Vȸ]KmwV(LV}sxE->?UMcӁCi`8m.[oXJdu2Y]O[3{JR(ڱ;b-zH%>HyWU|㡢2YR<ᷮ'l10 8QYR=(C::ȗ etTJ2jhprqHZ|$eQGt5TO5B "}rEX<̫KW"QY'ɭyˬsd)BM#\GxZ`sH:OV4B[do5'yYZut wN <ЭY(*P HP%6MMv:s+x ׸Q )oB~vlp`F-@ʅ|z篦a7>߆))d)(j9?>>(Ą  yMwmJPn11h?8!st! 鞎=&לf x-P֚S_`{v4$B`eojpŬRmQ8Skk?ݵmp*z}@WylEu l &iARL|ܟn '1,Β5 ۣ JT$D* d"rEĎu)T+g(ÏPD7ĺELܴ!0H"v5< vT@ɞw :ݧJx4}3XLl4mףڛ]=kXP[PY1&v R Y!OHwQlt[F{u.QT-Hb p:yȲF,EFwTLa2rP^$^fG*^l~ ndG?R(Yp2jy?]E̾5p{yb[&Zdp, *']ɡ>€I yNK~㠼gYe u!s흪kK>-Zl=)Z;70hjJ4`̷=؊\J6H@&'UA5<}[$I qv?ɃY :JweL] !5VnOdJ)PoLՑ:p.%2[ދ\NZA[ /K鯡?Oy>-luW,#SJ/ڳDcog|hu>{QE Ҥ{5i{L("Y'jf[RȮ1֢Fk'|son䞂 o~s]n&8'u? 8Lvx |7.3ԋgF a}6ctt B-|#Vf-Waw)z)5rwq.\>kʠ wN d"iv|&,l>kW "z_mOţ[H}rk@!uS KOBJin9J 䚆a{A-Ob{iv:sҰpF;gnзέ[uW6aŶ>Y&' 6zw0ZLFs2lZr4 j[e (}a;fh *շ 3j')+ sj*ԣ쓓;j;bؚ; 3Z߲U[a&tm4o3V(\T:7zpRyhH[kyMrzEbTrP'kY 8l <5ԓsЃ~^υ-øXBar[P3bCϩ}p: (9ځ>8! t#*XbJ"?!!aǰ{1PoP" |c6 RDr|q i*+E(wyId4ƭj;7{ /يib0F'(\tj\jB+Vމԭ:f!PP=b y<_u\ ' j-^̤dx?o:wƽVd"p"o:%Rǘ1c ,ͩZsE{΃kROV_@uj4}"2H -@oDlRD]7`cW9_t4$GzK^Yˠm95x@oT;ܾ۫5aV9am @m,[)+bX͝y40enU!}IY!<@lsz3{G)1fH~a<(_Kx8F7h pC ; lprS"(} ;R )l8F+~d/:AqөTg/߂a^T&QMR|`$CD:"HL cO?8 A %ٚ@/",OQ_C$$~D hJ\'2rrJkƦ /Ix>{4!k[VNA٢#WŽLlBȅܮI%ڃ.^NmY3Zg(d2[K;VctAZ溚>-#Nb>pbEwxw:ƗfhY1ϯQ'JdVts$#,j"AZ7>-إ[d-@8ծI{,dv_.7g~GaNmv=֭1DR\L:<O7%7%o!ؽY]BUKdbRh1rT`$׫GGіf?-:~l4 8>21|Rs>LTH@ivQLΝw&Zз`0%MGKbr^N%p>pΐ}y^8,¦^%e|Bh=~ }3)8|U?d< y`wVj?A pg[JE~Q:T~{}Klb)˖cT$>˜,NF b#Ҳ~-<+ewb8Le81, Eŗi_+ B}Řr05:@O; liFu2p17j>޿ VqyLo}22/}2S~PsPoBCF:W#1`D1j '|jw|J3%_{@Q+gc;MlAP u<<|UI+fT/YM71ĕj$[q/9CVN\sΈSq|P{R^[v̀W2E J@ cyzj뢘^Zku}*y|'uWKU-/K"-L/c/ͦVMuԊ\^c17ڞրRδJ8nF #4x'{2TE+:DD[iS00⾏̺ 7bXG*$~Ag /|Fd+oL^]`dD̬9!8!k:K|8Ӟxh?9;苸F6܀-6K䍇(_!V$1t?!եr1?l2jr]wSshuq~bb~ _?λ̲**( u(o;]ӭ:!,\*>eL{%|S0nlDžT~CkI#,?X`;Uq㩛*`|yyqL娛灳3J[2/Arnȯuab.5:jLj>Sg首 "ac6^]WO t55䝳yocƂr}z֚+qP;՞\>-w=GM ,v[ Wnjw/ɔfN"H?*RI@GѓPNХ j\AZYTϠ!h`\:V`/F1B&hjy^Tg0][ckIfG/u)egٮqI>$\_>+6 Ao>O"qe(7pU ~C/x'^LHR0pV,7Ye&nv&LWnYN&S-eۯ-dV7th$gjh~0yN^'vsiFibVP/b@vWc0D^ߗfOvz0>KnV%`5OhMOL]!uʧ``rM \b4qxܺ ^t]az FoeP`|a+|`-.HR-;DlGa[*߲A3M aN|'G,weluHfȋHmvKq"䷫~p=Q]U((Ml~jvS'7aX"= mA 㹳 _xL*~/e %Y:&}zKGIK]7lXYԉ[yz$ R=ą%%mQ+KwTG9  63/JGAv׏p['] H:8dB2pCl>V3Oh@vNt,g0! ҙatG?W1^l]1$L d_ g۔-A&ڞ6F4Q݂dަP_ ? ƲU^`8/]&0^S~kEllo[Fѯ)bmi_VY'q,0XSWfH#6.6>S+ᎌ|UJ`Q(!?#ꏯ6fJR jo{u \<gټ3<%Zj=Rs+ƿ30(&K#23Š~:=\ɤms4]|7$8T6W_c-9$YruVN9lsQ9'>GZ盡E^> ޘ¯H_&>uCh- \cxKP4 YͧΣ{Fjw eaR%M_#HvL$;є7IIDؑOxPown, ٓqb'{+6e |~&EbPxQ";Eqe`du AM%l|ȸg*3tIJTJɶpڀ4EsW[ullrTV 7=(WsV6 Owh1b$S ?%P&n"+v(>֪K?) #)blluyLc_O< c#V.B4lJDڨȔ 7Z>RQ1 vYGKw7Y:"4'HgM{ПP$D5?C 5G0@_Jm:p<5\-.Q_߉.$TM5ƤWFR ]×-MH c Q`87ZTwV6yD;ۿ$ђxmuywv]21xePg:Kcgri˙zYzSy׶J$ e+<8HSUkgWïs{9 .;*=ҌS"1$L_O՘HaZu ꤑ_U͖`z\aA?-9DPԩ6gt4 !r*, ʸ?_U(ʍ"oWYީYp}C&VK[ZDkxf2Dׯa{ޤY¥8$c(OmC~>5:@vi׵a?awD.Dׇ$ȫaR0Tc)Iyb[L/3S[+U$l"Xi0'{:GpNаTOIo3lnIw3BY_g޼:/nPb 7J[oIG>ua~]7ܤUW&c5z I˫Ɍ =MLgtߦ(rqAkڳ59Q7A#64?^ $xnW 6UO7qC27UYУJ29PgtDߥmYlh6+Jȴ]Baǁ4>8Q3OW`6hdZb$.8crZ,|Aű'Yy"^|udjZMkP7AJr与5.~=)~9]|эLZ< cH-um֠3w+lpbw]~ teHo= {|{<;Yvpc0]YR]w}lI-僬.bɟ9НxC>1qĨJ|U{ߓOfNZK:ŭ@dԛ |=ij\ȸ-tII "p6z!60S: #H8_&d}yLf50mz}qU'zfB|}Н )aٔa>`uW!XX\Xq͙u4ii<hWqy2xaFn u42.cO{Z.a΀ }9)2bڟL*ԙtsHj:{V^w@`''Tp9 d<Ԑj$]!+ c ^ifI$P 'zh^]5cIsk^kXI>oxH5RaA(4c,gL:ĠךAc]o: xRR%o$AsScf݇ HsӤmxWQN: 69EIIe{Lh'-rF2l AlKOENoezf-~i^!mi2|p}XdZMPտ@΢ҵ~\a Cqi MMzeGme朧zqg$nC`_gV1$?)Qk'R*ŒAmQ)2B@E)R<v^kz̪_挎5C]Iuh."D XjSƳ(4 M8Mi=mtS~Z,^)6I@E~@c5K7fsCuJf-) t+M>B,86v4,.mÒ 3 o.ĒZ(VaZBDD;ìwjTn}|g8dXQ2l4XEBj t,(X*ER%p&E7#/VÇũ#>%43tg@Z+4X*,x]7K}T5UP DXX|~∖?nקuͅGejm/F-m.V:k55lll2dS*5FnP0̀^Ni%sM?T^ Y,mQrd=iH'a :Dڅi3j3['օ.+f=>ZWxQgwUCM!H5f1Tw@kor6t1NQvM2RG׮gZ뢹_aCcjVkːx=I=*yV'!"&8ͩp}%,^SPBLu|!Z, X*)y:~)G_ž1!+Bvcz@o®,g֓*j|l1J0 a1~T֊޵/}JCV΄V@U2m]iˇpyQ+F A)h~CbM@y4/ dsS]sp:Qg&lN!:)L!FX bؓ6-kTy6 /&0S,*oi^/p}QSh^aٚfԆg^{UjS"9VYy|,S nq?DląmI%D2[$bsAK}r5܏9jCl6 )Cg xu}7z uJq1we  ѯii!9q'm(ln ui eַ`ްoʶüuE%K9T]_A>/$λlVTNg_ p~N)7Sg;+hl:}՞9OrZ:7E&|t:^*9f@¥ *;Ю {-؂IlŢ ې[ SKG#lt ݱ>rRphRWx`. ]#V2~LEbM6E@5fO(F1 sJ~"_7vy7r$GRjmm$9H tlٚKKa:`$]8pL:D?ZY0K[{l+ÂN=W>wy^KM}e̵2=S}VX,{Zmǰ<<XMOnO8`pIXpf,1Um=ltɠM=xÕAR觜YMDUAA<0'Zr.dDkT*kIBX1%N3!di!CƑ+b7>)h=)T2l2fe AD3U)`AZYpL vKñutW&0勳٠3R!ô_S/*r̠93v'v8 }{p*1-I5iFS~>XlWy} ͎A$Hby\ ` -. 65){@N2ښPeIץ $W=H&Uʽ}`y@"gV6leniw|f3uT/hP9r5=0 e0lK7f词 K|ԢQ\;iH;7ʿUMG4CGn #]B8f1LウĞͦ/G^Vg[QP8FzvAכIdQM8lO3fA_VƝy=3b9؄(i&*>OcƬQԚAEؘhCyXDx_C]ڹKIG X&h"Qo2yP2Cq@Б<>[wK4W.'V꺇=lCBU=9niD&_度Ձ4|V2`bM uMC}4%P7mdzM*v`]1T%>+aO*,#jC&Bea<1{g?q[݋u5Vu%.1АWCL k7w*vs6{.ԋ;4?Fh ЌJv\Ѡ T4/4ĴQc\=].lǫ=h Vt_]u.u|R܈^MYs߆xuC)o,׏w0zLj鰡G81'CH;k_`ܒ,{Ũ7K>yV WF}t/3Pφ[%C43ՊF>|l#VtVP.=rb&kjq-cg:˖ h„Lu:jPu&B97 6{ K1GSƮ HR{/!t|i&3 f~,)Lt 4Pbq.DѴ9Ny"u`veî1L6pHHQL%v\63|뫘zC|Igȭ_+o۟l$l 藲|SAhพ㶉 cny<ޠa9:L\ tD)m9}V{WD:t!'f>2JĀ/~K8 R!aÎHmH.[>@ 꾼Z!m&{HCRE/c [VO ~ -<H5wƬA.\bF:cȓ݋GUVTg1Ò6tVڏQgP}9a{hU|:s^lZb/#:aya:9dF}gqSj)7ڞ?~b/gԌBPPB!Y3c6JQ{c>[׏4!2'87Nkmܑ8a T<1@ :ba`7 iVTauL7l>V~ǮHX&#(6,?DT}V1i'(14)-T'{.f]^D v%ɫgۏa8dS/)MonWy}x9ٳILR]ăBiiK$`g䁙 D(TWȨݽ#H Y3>V :CZ;gD r%*BR]_D:e/p-K/DL$°CxE|@̜A8.np!m[&E2 7X },Lce){l}xYr,*:5 LZ)5iS :>O9a^~C YU5I;/רh@Z v}'&n9QrDa:Oh IfDg*9\0xHT /;(jy-"-?QjՈSlGy[ʵ?b.u6儲E+j>Zt$%ǰpG.c7 D>!=@6\USxklFMbĂɒ gw jdPV#9%5o$mƚ _ 餺:L`o3މ8S>Kc+Z Ums1Yc[B 9)Ml5!_\M[]Ry ɪ!˝v;ǽ3 r.[vjW99(#~Tbr"+olb}wVzH^ӽ `]|#LΏ^Dr0PWQ#杢ONmN|7b2*X7x.cwiD=2/MAcJVO+_]tڌE{v1h~ĘD8[CiX9G$F]?\fP0^tAI+PklTμ:Wȣ*( 4NԒH> }wj_ϴ<Ւ#DڅJQ)( 2Rǂh '(Uq~)pOR}gGeR5g_:Bxp@y9›`9njY:gЁ Qx܂|f`A^1Eģ!\1Yb)s"Ʃ T:n ހKMOR] B0N[NK\_8&,ʧ--0(q6l9L±S%cB[n$`(le@T_ouUf+qTy0vqFJ/:'p.4m7Zו9"ʜmd0_s3#R2EaC^qtj||0I劇mioPHǻ< cMǧ]AJ0 svYcQXl]Q3*%EOޓĀ&.TS@΀KDH:q2>=A;A uVbb.%lQ 0RW PZ nJ@Rg6b/0tVНbvhނTXjzq+ r/ng,K"Z݌*`Nj)]AZ\|4OVZx㮬!:CItCkl :!HGKdd;I٘ -voA #'/ O+8CXԙXL,DlX W_ $*̎)", vL0OX]-MB4 @^29iٱ7p4r cBP--s>BEZoNbŋ$:?B"ȗ@KZ0r lɃ w ~^7ױc˙ *O vٮ$0"d*tri0lA(9kM1Zg Q ;1')H\$-/A  3Kb/V 2MH@SFOHRm $T*y$wEt>u8fn%c*Ü6PՅH|n=bT,Z./(Jߤ*#o3#%AvGWRaJku?ǎ i|jM1djXmai"p44N6W.4|Ap\ yDISH@XAD_G: ,fs~cqf+|(kP5y$pyx~jzjNYO0BB͂Z"9VM\~肺34iW?yC MswVUG2Bup`9c hx,F𬅡9O\ {zRR%ov.EMuH7!]~{KW rX6΃#AIK DC >?i(W!;c+rAq Y7]Eu7 }<4hsd YGT$]MwdCd۴ʿ4u%oڇ>'1}{x-J_'Xʞyz%fFآv43[sxB7 x@{UhT"iaL3nb:m`(7z?Sˀ au>Shtm";y5o<6=ߧw *I|ș!JN  <+ ΠTQ6!X_p#6\/E,̓_qBIIs6_쉻+L{%B2q*xr*L%ү,F2aig3䘃$ʓ 8FF3i+[G:j@s ܑ<(QΪ1I&U<fe>IPw'F8 G0 fr\AEUqrYadc/#Ճ&6<&yUaH nQޫhuYJu蘍p/1$6.c#?Jk@Q6cjCfļ&D6#b_}9 2vDۣtqOM>P ޢ)hp*,kS](r_9/i"ȊOv N pp{&5DohԋFRethZMM RaG6I])dQVy?N$ K >N^Xlf3# 0L! Wۊk>tgxu~)Cd-aUO=\!dhU*A,?Yd.1}^vaEtVo,wy69 ӆ aKU 'S| #Y邒1M;,N==S?1%( {& c5 puFlnlԨ<(`\d#`Q6h/l+>Z)=`-Fh" H%vfKVW@O2DփT$z;JMx&c*P9PNKl0xR1h 4NOd BeԛMlB!?&r t٫a%(ɰ}۩#io%@e?ߥLR% pm(WZQ KwaX̷KEQ6v^3SRd#. {BlpiYU5_u:;&8顫. N.X. lK|4T G\ɠLYaޟn432H/6f2ڐIo}ǥ BXT߄8MQy ჍҮ % N# m:}{F48z'=QA%~D o $"%˹}pt% ekH=l!:@Tߴ,Ea m pPH| ׄq*mMasBr\My2bnhb\0q4^ ,W'^cm@k4F&w͌;Q?+6Q++AytьxBGyV!wK#w3&<Q Y/v#Ry[P7W'rqzɣGI\d7R˻2x#ڠU ,MUgMAQ}}:'Ұ`OJANMy+ߋrW'`h0E% |m~*c6|.3 1 26d& K2f F553lS9%G>{ݨ*%w>m j>~at0SB} ߪ\P{R W2M`&iJf ޼a2 .OW:PI< ?Eq3QMKjctd>^CR/cױk@BK_`bևYvn\qGO;ه7Y> :ˁ֪ Fl=h0z ׍۵cߓNS6~6O+SE pwYMfD`F8vK!_ܔGkm4G,k}6d_w$2YZtkU{ OWǥVLWKA ߍ+k!3Q.7a ?_E`0JiS4nUO>OV\O+Q> OsAa|W 8wSGFNV;d5N)ôaҫ'̇vz̑|ZEo@31ţ~{z#ߔ$\#oȞ3_luYte%x>ojH?IMu+3U;:OM$:#:oşp‹1p܁ 3#I.ĸ~0* o[~MeD-ogOD42z]XqageY/ZMcdi"yM;xA +S";}v3L{Ex!AQZˤCnzwjv5rL4Ҟ< hLrc\ylSS S椢%IR"/Ȓc5\͒&ާXXl Ӹpqeq;Y:]8\=C@}`ݑp2]eЖ`hxrt]re)f6EhԶjiܾ^4lw2+*~{ThoHa94M|o#dd,Qڂ}2#m2?]dq([+[USj"ڮ>J_kՙ 0KðҗLs!fZ X( Z@!,j/!)L @Hml-֌Fnj12Iw[..[;ՅaoN I>-j>jzBWo!MD8ˆVv{0J9VnnjG;=$&ɢ>>A}ޟ~|)r;XVC4BCɓG1xHr7BB 纡MA)!Dzbف)m\ueo"]?M70t!Dȍwn*^yfV4LaJN'yJՂX=[%~v|Ǽ1lh#B!o$Pl36rNBzbW-]b2KO@׆✁ޗ!vA~ yj5_+ $H۴aϼ.AlFGQ"b򔱺&qNK'#| gcr#`{:𢾩\xw;/ܖT6~-Fj~-o PmTeSs\ `AEUV|= T/=:H#J@kdbM%P$E1'ص@=3e2cr7Od2#;8ztz/E?ti5pkE8?BSnEulS W%z_A Y)l®w]^`ִ§"yhIIdHg\vP7iZ%S8:T~B45>-j NIDq~s o Б7!0)m*۰9TܖIs(%޶Q B8bw曙\LԞ6"*HԏS̐9E)cw+*6eU8 g(( NVh;er+ǫB9‹_q!z#A+>OA#tgq\ w/݃8DC CRU>A"sw7vg>YfC2rq r|/7LXa:v flx I ?F_Ȃ&S`2R&2_P ts?S~꺑Kݥw@ u֚jPyՙ+_o^1㻌,#2RG$#x\ ʈ@7$BȐc:t!QjFUr}(/eG7)4FC [˹T+Y"~u17Bk?v7$o7+#º/&= V»RwRBJQ*'͎Qg`nlK<ɷNwwa%s̿ѐI:vMN1Zgp*VjSrCW<'qƒ9?iVf} kPUl.+)|E651 BR! `w{C'}e7{'h>hxj)+‰W|H-'|g o,c4uM;&Ro f/,E=a:|3[(_Z/\j'$xU96ǞaZHMy! ;Mu2$w&.U~,2"qUgގ̭ޯEV~'IzY~}f+tO'Vl@3 W~tHVe}>2vIwyyO{ N{pDwy{=W/ 4+*UL @Xd~&>aVlA(Nl"S~ُlyuy*bO+`G; 2(} m0y $asih\FGi{ɷ$jh @v [ sCUvd5c5׉AU: ߓI/r>7X*.=j bGO M-GetXzT܏C H+wOLhݥs&BT3޼ ys~(ft3l1|$광:kKo|Ls4,"@:!Ԡn&_qHWG~sǑg*njQ "Cw6W\;ܯ,/fnV`_\/Фp x:#xL1+|& _sޢQ O QQՌJǮm@ 76;5/8bGu1Q;Ѧ =Eǖݸ=͚J:&|caKz+뜇 ".t0=\Agsa=PB$5Fuu[RQ+,b7;('ZK5dw>fF3yJ$xi!Gj2#/Л*=xUĦuX `N"?;Bzs4k(K):TJ b@)_6%`D;*e򋅀i_Kʾh~=~yLzk2šIH3/3Ai^, HVO_5$P=l.lZL ;TZ#ꯄ&1y~}BATO$Kߞ+ Ϩkłϥ}uj}2`'ϙR96 hrUL̋# $Mϱ#i@ٙh}ΊH!#3rp' V<'v_I |3VA7Eg`vf ZڿKҌB-5pdvNU2}Mi~\3Q̾WnIh)AY-Cצ<­ֿawj'#w;9husqGٮ҂C =2Њ{Y4P-3ǜ,,S+,w@;hđ ԙT﫳3!bHޕԫ\' ӤY)ܷXyK윂v-LӔ031B-('~lGt`:` >e& ~RY,Vѓe(]/m~x3^jg7Gruu${ujB~^/NN^ 9 yݧfWٷe cRϹHun%{7Z;f1!G$M!|yiNTmEw+:O.Fbx"Z>XC 3(23ޜĢ]}7e'Q1,#6ߒK-xF.Y;wD_pK 5#S<şc jV-;2<2*g0P@ٰ~zh<1^t!H{G K+$i5W#SQe,솭䕷BY\˶S⿠>vV H05 Ӽr38Q׮T/b-'} 9ѣX⯌Xߒe Tm`#՟ nok;߀aubٜʅǍ?1?Tغ܏XV;}zfJ OƄRvRur%o6M,!Pf@s&S!5^V`:jҠ4:\', Da$^}&fw]ze"4Fce̞UH͎T<"=7q잆xsW;?bԭ=+ӫǯ$WDY{=mݽݮI)4TP" JbM!״'~FQ8Bn)Fd ,{*617p{TH/nE*:zV`~~Ikܡ@hCF*)s{Ǝ949M㙽 -1ptwȧIj}?PD P>@?%ݕTsW_Vh %ǂ0 :տR;FȽbj1ۯo(h y摄xzvM?DNX`wK%.;e~qo]V629zu: ϒ:KB9Djkes6,oGd^./fe UĔ(Uhs*H7x !m*Nl Esp8cQ6-bi{ZqVL=ShZ? a@S;l%TVދ?y>wۉg-6]Ҋr-aBc#v% 0qBuKI;=64%Qz7=#x6juuKszCXLG HQ4:!9k=m1"̣T >\eL!˺[X8$j%^N/,<rǩ_Mԫ}sCـ\8Ar׶K*%\mh0 tK[-}\V Ut?IҜGyi#cWPMYP*O\dd?dҸ*?J - ?C2RA\Nٛdt>RUsץ@<3)W8a͗xχZEܥ@Dn򿫡Dy /ѭ SGFB[&ޞbqu WQN*tݚMZKȆ fXS{GE/ܱw( !UNozIcbvF/.mU?qpAg iG"{T;S#c٘GTSOe`f{)wfSc&åsuL"ӺE])ܐw \bVrFHLGVWO'FA*O<8ݴ$s[.MN>\;!C+TݕA"ɏ{"tqHI=8&!Yn ó?HU@f{2?F#ZOIv]sBhwl`c_'sLo.al 뒲W$cAS=K`?O[zr$1[yZ)S-Fٵ9.a QB.딩RnCxX z4˓խʛ2r_H xmWsYwguϸͻC C ڐ&Vl&>Dˎ:q&2E !fȿ"~1l k|0PCU")W.~{͵%YYmܞpvb۹'!6&qs̀āIUa4m CC'!`+\>AE8T8s@3L_ ^G⸛8W%e*Mt\Z8}do#pʖĄasGOrِ(VK=gP*OB ˩KED3Hmt( k{`JII]w$t27=X]4+qﴏ8騃4 \ȃ b%ʻxYAH^ Fw,h ΈPl7b8RfhAx QjdqPצc||7wrC :`ox:xltվ ֻv *W9ntai/GP<ZZ*j6]~VhIQyA7kivn.BooYU =+yzs>0nPsS%e)Dwi6chƭ>0 ùa^cPNc[]ێ¢p/ܞ$qPНMSNhvz@HmW@ 滪kxB,QϋnUE'@1ɭk1v Wq8lX/AY@bz\2p?~NIVTp݌ڳN(`zќ. Ǡ'kSrT.s/f ޯ.pD+%JFh,Բ1d0kAdͻ~ e- O*^Y ( U~E ~yo ,D {Sڬӄ%rvN( KB>)v vbdMrֺ'.&Tw̳Qm><`l*ӡX49]^LօHF0zsS VUBiC2 yw'"qM'0[N&xe&zրА%gM ;;f0 LZg)[4Bh"yHB$#Y@$4=B5zn6MD_HFZ#m GfVTG(7GSc^Od8Ա  @ZuuD3yf; C6) r^wh֜YDDH41Eds)t_e@Vv<)eu!dvn^ߊ epAymTR2u=*HeO5<ՓP PNj)6>PsF1(yNCU2`W>vRdo )p6Uof7ѕ[uw"}T"5V?m>κ! HM"Rp Z{;bQSkGV/S7d.BbP[dc%uZ$bh`ݸCM>ޛD:Ӷ[ӥp}5idžOo7eh0ECr;8Yc伡UԖT{J27.ݦTǿy`%u7 !eŏ="V|ڟo,nTfL>jߙfR<pedV;Q\TK#6 #+$+X^(˥2q'f.:qIF+ͥED*KD<澸>WPdHNÿ7bMҠ[SqXi= 0eyzVŴ(APVt*UNWz+M+.#m1A+zUNßԼ -S_VGBԏiBn%.0$տ|fhL[b,O)f88U/"RW 2~j b=F>>{ϕZYm 񏬝"9͊Hxt<:6I [ 7] Uq 7ЍI$MJY٭ ! Qi2$MBdyݍQ|r\G< \˘w g坢ξr;CSev[Vʜj++kߍoS"o\-b9x RO.&d;k} ԾWyLms wa1,iIV/ yRVKU;eA_rˈ[חA'{.>bkQmp[Ud-'Lss]U` gHn'jL6tWh2t9Ii-U,RNOp%rU xzHȊ2gO}E8V*%@) #_ƕհp.i>?o[$ҳ4$Ib$碈 uN0tn{ͽ<5z1:<=@!9uiA ϮMƎcqyRjRFx+[RqG@:v_0zZL,&x#.#}CtE, ghIZ{FsDhp uTz5+b+˄j% 'S:6G̺<JJ{¾"s=Gx21Un%8T8|qsx'9òQOȬ[?2 [̱ۘ tpwCɠmp]DGPhKXd@kjTsbK(*:WK-nYX+gONOqܙ()*Љf"1rErq$ZͶ'#ߎ"r Y0A4hN|P(Y0\OрDH;~'!b&CE|Hb:CJ7S<\mmNK,^[ OB)uD=6εH,'Gk#/&l5c] ʉLᡏ+Df¶kDڋ#.zSz^xad vՏ܎F#f([ FakϛD\>^*K󧨔}nl,:r<6:&F*y鳠eq j9F!|}q馝motۛQ ʠJmi^5O+>q:ű2 2:LƭJTF6f _E L~z DRϥpd( e~a_O ~/+OP*?1˘K R6a橎ne1ҵ"䗱5h[<9EP,@KڒXKl~HA< a M[dhn.(`]"d.w πWc,8)?`f.N7`+sNʁo# =vb[?RxgcϹ۞M:SK2m i?FkYx5Kz&vg8'#sDn8w௱Ȧ`A3Rp)=Czʔr8`e _U6sD ӭRbx1ksyihe,9ؾXed4nP S0V7Y;P PE${ǯ ܦzn7uj)`&tfhJIz lL(XV|&)I^"7[q$Hוi|[|%C`JeLbn>ױY';=iax> -N}ޑz.ܶ,xox^ke'}H0kosŀuBh?]r_]p w@иs4~c)`2lҒvIaF{"Lü0*vgV*bSyX>-4̕4qR/'T3.f@s ,Dp؄*Se k\6-O0⦤o,J`&Wgd +]^?CH%Z>:VHB.Lihz xJE!蠸x2W&/HIn2j2zQpIV@/k\;W80&K{@wJXjreY+ ąj!}f N ;h롫IKGYotv"{̀V 6*؄ELGm*L@y[/ ͸`` ET)|8Gf9?K"%/M C\i$YWs`sd-ޑygof"'Q)ֈyAVg +="t3kHutg7mvC7F 6ueW~}/LɪT)S^O(0iQg:E٬ ;_lA)  m`HYǒ!Be1RH(C/yt *|.a-AÈtZy#ʼWOn¡sEYsRB8}C@>Ӎow`%P4]։'*&;Cܭ~SHx1svBFnt5S]?ϽF-從0`±֭ysF &IM!ƾ)x&DXbj)EHz%cZ^ RqUKZk:p/Tk $>pS9Z$!p3FUثč!ʿr6"a@RθuM21+}pv49 >#EZ<_UIm9%Tci4?`X*غpd3{RSL/4Sٍ#+IS43] B$\  nP;3_vȵ_;#AVEBM6PTir^*!<5\͚w^.SO51l֠pëN dPI/viiB`+] :+1u w.DYBn.=:&nb; ξ;2߱/H!er 򇆚BBӺ~Oɰ;M;Oѿ6),R4P7xhF9^~o\f^Pa~g˃#2~|R-Ce܁Zy+>ŜV2ϕURAHՏY+fxN0m6RX@@G h%p%b*ھ9B7cX]B*VdHZEv#ǚH" tt ڴCk3K̥&v5Kc9GR}/o|WLy|fE&``Ir FL/#l _^PMϿ#K8)u>oGC4!'WG jlgVGqtO4 C O`}ŢhAJ?6[-3ws  ~pF2]$)8ءOŨ_ȃh8UhjE*x5X"GQ6Dq"N8ov}`B鄄`p>+N+#ZdI:$y@CB|4MYnBSz啪`OfV @ >GRVŻ~nm z}Pc$W-KA?  ݵLo)^R6`Z{@"PΌ0dZ~'bLRfY}^n6}Ѥ4)aoW&Nw ) 8mPhд, v r-^4i@WJ}J pr[}%QYN2P Vrj Lh9> #!Ě%-Ub*Uw~fKRo9'ߊgYDGxq| ۫s ?pO=R HxE`='+ }0h^ u~_ح b :B? 2./4bo>Veq#l!JP@[\ׄl/J^{1N3DṵA{k+j~s8 nfh2hZ4ntn* eA?ڡ M/3 z?5<Ayg"@&J"Z/5[35w^IKo,>3j]1%G2|,#9S69]"_>mzf캤C^j_0uq0O@RO6U=`.s=I d T42 h? !q6>5>7`7`GRpat|JW/cY4ֆqæwJwNDEF0M$xJl e**tW 6[~^u^fAԠ33YOPٺ&C$lQ=$k`s;by@4q+闙f* aݛm0A-,B<`Vr1'%҃ { ջ9.ooꄒhHuєD?)_%x yh LP)G b4Py瘴WX]f1`TէV'I_4nTK¬8b z@ CqMfSYjiVš:WhZRsL6 k& ,NwKH9vZiiC2A߁TgoYH *yw`qV|e6Km}Ubv4 czw[anw*! }x^|51AU"8 cF)t@?5u=*h- K:K%k0E|\$E#U-aJ0ˌ ?'@vѨk jiYd}SlsY!PJ8hIȡ>Kly/Fc^ǪIc2z,ʮcLup&ⴼ;c!BCUL>q O"B a ib*uD?dC ~yl@&s_`ZFV2\@~cxpfbIkw'NniRZql t,?YcpGJF.[u0[(,A?cN4Boа 'H'ΫL:8V,ihJE ܁=emsM HύRRU@87q}w&kuGן5HR2Ҕ.TŏFǦviB3[ɔWܨY  3Bj-d2PuTU?jG?rQxq#~{.b>7s(K$䥔k BrgR.Hp;\n_c2l,Tf0^W-\pOk}=>Dx)k)  r#˃S Cek(eƇ#ygl5`\ax}z0`D:^RjAWP ܕs6G?Ȩ Ӫ7EʄTƄKm$.\"x{GZژMz@ ;$B *ah< OեIIz KIVZWJJ$`|N ao'^XYXxַ;MlH{y\. 4~Ҧ>S@"5y᜞@K {`3~ڏ1 KhlnX+87,|~' %rS7[xܘJZsȥc2Z eX[w|KΤu w]Qw[f?Iui"6˯q+uD-{8R=YB֗&鑄\Ѷ^]1G9qL R!ۏgv׾jG٤[ w3FDP[>I?g Ԝ5xj4]QFAGYzsVb$D=1/(&@h ]XkgKO Vn.Iw ˰XKd) B ڌzgq8실T )Ww2"-pIܰ Vy6dsH8Sx)ai[q8x,VبkZtF` C;ɰn%|_G{?=-F.*zc5PaGn}#LmKҺ`bLG6%0Cd T035/חÉTRԦwN'Br9sSB8 L>n>V4 @6EE2 eu<^,9N+N:2𠅰$!|R7쐡Hl9+aI9l{V(06tǥePn{7&LN/7 ѸNt{s+_ܭY"64*}JC5XS+%r MXfnsdIܪ<-^'3'6| WyP8^Vһ VKb=v唸xq7c![:6nk|UWkAK4?֍7YF,jt_(68W g> g+#5nܝ6}!1+j aj3YzQkIu}ʒZbnWYOhRvGQu>p޵ej1/)x1Y= h05} &<׸ ƬzcN[f84 ȱ}iȷZUf LXN^|T|#V̊s3ߪvpYtAkxT+ 8X)[ 6  826z'(\@,g㫔=t/gMnbǡbت:s.w8u[,w 1,}BKJm{[,DcOԬDXaz(B/^]^z|hDmQ/Q$lq5NxOs8lvR8XaGT!ńSOY.e}t<kmmOec7 cuME8S]F.AfgGJ&y{Ia8^Ě2#(CN2-̙Ai|[&^ƹFSv'кQ> \Ͳ)dO!A0LCXj)2s6jJbT,qɲheO88 ^ %s! دjMO^4ɩm•(EV=j X U4h'oBmٳK*/KJ<tB;A{[488B qQ`TFi ,=D0lGU {I&;]s+%q?I_r( ҂">-BѩB^n](=е]X{͟6K4䷲`.olU8n U;A FtOp˦Nw;kңY-#G7Yl sU,C8uJ$AY~5b\٫_ m8uc|0m"ϲ2e$TS4nR(el)Uk$1TD࠾h[Ib42t-С 5OE1}T9`"8L!!{%( OęThTT}h CþTxla2X34޲VŲ[c)Up3x^K"Iz(Ee02BЖ| ).nIù=W"c3ӑ!n~LVƝ"D?Z6Ym[*D!t Q$l7 9n`V!A_ȢbC7ZM|XlK&BL=8hx{;2'D{YF? A͸UX1̨,=NCH* -3c3ԌU+, 7a{ج͝W&x(UԔa`j[Ǡ!a7yh15V19X(w*W=̜ލk+4LFbB"hC$n,{2p?=`}~ï r -i?)W3}Ƞ׉U'd|LMo~Q==},-p9:UPD1—O󣌱*i.mBzaVt|v)S!4-P#ƨ*KEa,7%0솜< >]=DNq/8}>fU<'xG-Ei-?N丗\80Kj+"l3]Ù(mWn K mx)iբ͞`s,Տ#e`Ѽ)yus<l$?zۄtqcu(rAע*`P]5!yLx0RtI-=xQGy$~^p4Ŀ19}/ ^4V @aP כּCP cR4BYo"Oc\>ly@!g:2P;-PML ei :|m˜ġ2Ek~T!"m^nR bO 5=ㅐ#^-ߝһAk*=9Z`N]BభnBRLhpnj; vA}0 /l'U2HbM@˵*)HlEdL75<0 +8mDeCZS_͒dK #c&˔pd8BAjza"Ѻ&eRhZX xl[A/Α`A6ɍ`LBr8RKp =&ywI=[t! Ԗ# H,ys h̯5 :ہmw(>K]D,=V/#8xiX:<~[čDSj>d\« I-?ZG(ejƣ®*";@8y#0?$3T[|Gvl& !~H7ƕv}"{aj,Z[Jۣ(0,B=!{勉zu8$[ОnH'QSCz8)ul-I}|pVf˼OEʃ&*yR4ViKixQi?Z(qNht⋞$BP_Ml#8$q(*[]3eĎ;=o\`V=^ A Nwׂ$ 0F Ttt,BȺA+h Rrv;}a7 r%m9R'X^˫N,ǻӢu-wc/mH~Uik1"C'u} ?1b۸iw08T&zN+ <1>U6D\qKnn56,uyY9׽BdtPPADI2ظJne a |? 2~Ac117xthKgMvjkM%ڍ(*M: cg|%ƆqkBzzI#sh@14˭3Ȟek 쫾9TsCJ1ݵ>Fɨ$H9LvOBvXUiTP]|tgrZ%[Gd /OwU3Gǂm Q<hac/Ҙ$JE([N{g`BTaӚMsofxmJd4D.8mwdY3m4$e,v8Wy\ fpѿmL"UOW[b8guBB5$x}>QV =kq4[~: ܋rӭ2FOXikDI?'Hg8n=s(2N:nXچ!"c FQ7&)H}6\FWfiI8k5/4m%,t>iEm*&?suOObfɁ$)B߬t 84D4hidT' =$ʄrAk#$w@ux26 ftb)"in׸|o*t& K t`9 %/YV^iy<)Js|3UtZl83pApG'bX.z2wB8p+S߽$0Nw:O 8?ƾ>/H5"Cxm)GrkWA+ H\rxՖ.:LA}oߝ=k(/LH"]N>`F#%cR6(es OOw%mݍ̧XO7, '&hk[~\Ph+lyt7fiG`y$ۉV첀nM Ւ`ri9 1no囩+jK;-hi`97&iS5wXIQ\$* 8~ owJˏQrIn8qעL B :}N|˥ߓ9e~֛#;b٘I*b"w ?| wδqp.{HmM;,IzXnquPk˕B3n`5Rjgh9AfFqN~:9\q1 G_wp p@z[σtвc5eѫ"KDݨ i;/25'l2=l’dLMDzow+ԋDXWIQތLTtD⟡Eq{UtaT㉑tO=2w+Ҿ]a:< oFk~aDDj:F1Re3u蒏9pw#Q@` vuIIHhX$ ߼߼w{X &AoNP`!ChvSؼHU>Fl&/4OP8WZK3)W&S>-r GVJK2LySE1eIfȖx!g rWgyyY̫1sD( V7a%RZ=^=v#uPʴYX`9c=Pw{WN^j krϹF*@=3i:ywΡ `1DCLl%*7sMm5ꪷ.Hc(;~pTI< +PpΘfC}-bd&A;DuF +=iђzLhtodF bqU~Wí*&Hl"g$ceTM=f1bn9mʛfi/<#M@82#O<gR.ҺA4Reua*i}OJ9霉XaQ>2 ˋsmV7Y0D3x<v1u$9XPp?tצ9ȩD.4Z%pst!x@fsI@ @2[͍e—Ӷ؎+\2G5$f|.qt-}a!Zf^mKY w@y2do:%ˉ`XB-܌#@ڮ%)@C}JA/`pѣИ= l`o&Iu+} ӂ/nXxNps?&v}Th)ND_f0DIo64p"jG4 ۰r%\stʀ%dTE& -"} <9Co@υa"OJZRw%4SOVOdDf M_m c*pnsTrJz UT.?j[i_B ; z݇-bаZ&)&h29˂rP]L{M&' ?>tBMD- &7_Esz Zȑ#R>gM]6&2o#SufauAFk'̣[7CH3tn97\">0b`t9/ڲa(7Z|tĎ{/earwH}A3F FT{ *-cǤx+c)2>7~`g ORo%uO2&B 3\J 9 %LMvS@ M~Tr;[Y? 2΋#hk=lA dC#A$zVڱR 6({.Jm\csjG ћarIOn|OD_]Vtm9D=:PipQ3S0-V2' zbSX$ì|/VVZ`-sjΧ9nG\ Bk湙c1|lz I%fsc &@D|5v( <ơ%Ҽ9zczG$%8Ni`jf(y kz {[7'5>^`LҝEeO׾}H}j3Dbtoh| q4r'G>?! \.]@Seq$ C"#j=FVŊ)14;2CѴh4 Fi)4N(X?*>i۴WpFZ/&qzdz )ݾ鯈4!$>@bcN eMb19ƶsUA $KVZŇ)9 zIk y=em3Dm1sq|g'\ی?ؗ"fx~lU|AE9*tY ajBhX6sYUSMUDh92E `K?C0=| ٮϒ3JJ6;?vRd]%Vy³p9BѓC¢SG  z)4DLCi8 (M8؛q<j1GIN4gvIm{=9~ %~̧G7cJE3ݽlU>}m)g2/\i}h߿J%֯%.$ĊoaQ9 0_+`7c9s,o6Fm;:Rn~[Ka Z{)jԱ7⌌TWE'Ck4Nc@ȑ}'+6~P;oW bu<8bl^F 7(yN 4?'u]FїjvTlY(Ӈx/hD2{.}q 1 =f)q3~ɢyYh]<8Oyd&kn5?j"d2/vc ”VI]]~'o{.;.v6Kj`*%dװkỈDl!9jzXR`mNYyVtb[{y5wAK_a8NN`0t9c,mӆkd"#%?#e0wAI&*WޒNޣrJFXS& {u8]w)1*T::sk7ކ:E{Ǹ_"[z}PJ]yo`u%<Ѐ縴nBt1$!6浜hrm 뱇\^L: ]4W#y>J-vZ- 6(;ԛ?PB u-=bny@1rr^4Ħ'^n5/JF+ۂƖ!NFjxZM&`5z!URhZ9̼q9Q?xCY?ư@|1c(zAF4a7Nz@zQ037ǝ,j L~,ՃSeU!W،AϠ֠RnhkiEwfL18__5|]QPCf2\'T\X>RpUU%1R=|E.LP,Y㤆\c [Ò*꾇.!/3 \\R,N7) CBdqS/ {d<+SeD3 {#73zk `;qI@ND~W}eb(\aRSZ$a~ȱYr:L8֝`LW&QUV®;VSөi/E=DxF=)j極lr,-Wi.ܸs0x`Tm;@aXXe&q6{' J-74GRJq*.E~rK SPv2ARTߥnMtR} Ob")>q `G '[6=QnCjLڎ\Qxo{THw{BZVu;S!_Ik,اSt37R0.~ J;5'p)XU 儭jTιKlҵ%/`/xOз4}rSU[LZ,5[_0E$;һ& o&|DȝAt{Qy07D_[g.nn|p.ʆJ$i <)q&joE}k ͘ĂS&:f!yJ|LJ_b<͢w$ɔU9Gi#yQ?-N߅uv?Qhpɬ~e/9pgjQwƂĊ+D"@7W_"Gmo_ B2OY 2Ƕ+3ߐc^6$ t?|BM %NtEك77*9"<NJ;~S,8BQy!9~GT{#x`b">KoC4#gqYȉ3~%KfEs(AYJƱ`Qv%r%rj--qX+$U8Yt;&m/2#ԬiPQp{o$gcXimcIG;ػ,mbBaҹ?$[/J8Q!'-[J&R0qj'I M*z΅oNFݕ0m*+k tkW:/a#Յ~yB~Q*hR1}`0AN,=w3 R!X ֕9O՟\1z|ʧ~jr,r:'&m:l;4|mI-+6vP㏠qRSY])RRKQ>(f+x'lJbW7b>g5w^ܾ~(xYmGy<}@L]D:q* TIk99rI&tRDLW OM~Mk~Ag.GTaHrK.ENJń`qez޻-As 4=e<P?Cq+ZEm Mi2F^5H3slY9 zK-aLŐAuymeo2|LΙ6?8̆aUK%Mbdg cJ®RBU}R:D}< ̓܉F` ں6+B'R33Bx+_NI&n;*7:jD,t'v[dKCe$A$EӪj[ܚc>j+yvDH#ˍ 6"{`0aPN C6,DKf#A|׆P|俪܍MQGi !K+;fWKUòФAӇO`lH~ϝb82[@_kV'*[b$ "L{;+3P'*hg90<I r6[VGѴf>1bq_h gBtur!/K>O˻ e^Xf:SmWh|%C7s3p 2x9R猣=ux̐$WQlx6m2'`L$kuLoti^i5y n J/Jݩ܈g OiOS;@R@wHyZLlz!gf}ŤgÂBpPP ; uWYݣ4]װd8X:8%qtU>YwɛZb.OS3bkYDJ 1mJxXjF"`=mji2V!-!+]FN9 ;jH̥;-g{{OI|1m_83Wh9{v.)-AT 0'<:sv5S4w@٘3@U */e{D*@վ3+ X x3Z(UZ)S ^ihtgD1L_cWn{7\$:kaB~Ů( P4K ]MmϭOsˢ7"6鬔lA&CШbL#elΑl!& 2nX% "NCz 1".к#Yp!!  =ӂu Be]ņuԂqltQ6U:oX}[|`sUPkinr;L_}r0ᾠ$ON@]? F9Q)JgYv`sp~8iU]a2e|s|%dt#zOCS5=cWrQ }߮X tt} N.vaMJ+Nߣlɾ?>;McCCMMedBlv9_-Sp҅dgF^k+AԴtڻ ^- 'FqX> Nf:rkD-fyEn#Utfrұx$WµxeL fj 290~'y=g˗q%dJSp 5#> h1ٰq". lT=ypm HIJkm -gy-jc`gزrUQv~]\d $M" .!s%Tt28Xz?gaxP Rx.54xs ?ׅiB[#bu$n A %h=~q;y\(\N׮F86CM-t:o I9௏z_(+ ZɶЬ!͐`EOfxWT %9{+?&^Ԃ鐺5No XER(~z m 5µrikeJ 6)waF -&`6Ƒ}r~^9"PPHQVnF#n9>q_77mN90z- tm9d84+'kF'e*dU0d@Myn <E+0' }fv2Ϛ 7C`?jJ^TE!a!Ccɢ#/5Khv%!h94w_*We[ ]Q.Vޡ@C @% 볿:[wuq6MJI.1sQ2n"=r8nI((2ƴ|Qw/ފeժ(ERg_=p]&bS A2_L/}P&:,"ʿX1K(3&3&㼞urB5ȾSը<ulxeHзH<092!Ϫ$FkjWҬv"^K6_`[91!p9O͡F""tCb X7~Ѷ*B[weɬ)ہ1 [!8BXJ6Yb3ܻ{P)3R Ů]7 ʲ/Yf-AS .,h|%s>K/Tc_w. !Hf, -.VELr'd. vGQa%rVoSxbcsk9d&?퀹5_@ 93`j3i]i=#B[IghҴE_~5+sʊXPMAHPwTjՁ1;wrKf!҆F=b{ֳMiӱEfu9ΗnCv՗$G@'8~E:m"8`F }HPM}KЧ]jVBmN𞰡==0! ~/"\N%ZHb_?Zxڛ!D*j5L& Ee|SAcϥ_w2PKRY`Qr9ZD~-=)#pRxa>8S>`|<0"2\=16J(]y&ް" Hm|viJ}ȚlOzeҩ$]oi!kA"/GzAq#c+Rv sׯr]=FMNA&g$+a1s'yO*[H؁m쓅Fd9^=G|+HG"=c1Vʪ#ׇ y@ՖY^ tQVͣ:Q ERC'I\tJdLL) <a5NfdavOr^+EYHs!O^ ɞ 0tޒT{ "Yf ~FRXpYྶLdd[brkRݪ DVC_Bs+ʱ*YDTs,tPa sX͋xxx8-fǧK㙠#@|.r|ǚpKP'#={Hϒ]х䅟pR.%l *2{b3F;-vP6Y4e5Ƙ2潇2\K<ET3OgN5+d7@a-DA{Wo,1Y@r{IsvL.2σeO3w@bՓb4Hm4Y?䁣BsscV^xPAVSs<;Wrho2m-ܯ{%b'r,A7[#m7EN=C/|l>5(˓ê9^_j.rl!V3QLdxp@Pq=,>bٹ!6\Gd gvxƚ&_1ױlRqaBڒt 3Bf~u+chdhu91)JȅAU7:OGCsd7,RVl(8iO47oؗTNνu=RUce6)7xl۸#N3F84xN3zrlu݊Tu<;Y+!=@]8CMۛDRF.hBXkKe(1|g͙5KC[JCD`άj'Z o/S # =5Jہ"#~V;4CR^- M/۪d\W % pۯ)4]KR4Ddkp:2\hGHJQ#8$,qTAĆ9FΎede'K;Z&@6Pَnڰ}c3^iObe'~A"+!TQq5wTgRI-l-}ώ8.u-h{Wb'~o6fJOMHAMm )Kw;kOA`Mڱ K+d-7:t;!!0//֫3U4Q hyG"_%m&#`[ޛɲ01>/=۝vJ̽J+E\u. -6ߋz G+=dǖB 0zHR;;Z"[}p7#>"OjLjGs'4ŠLFkFk0Än8s .c|]|z_aõYߡXJT\d]8y$EeKM'ҙMt-:6JHp:.N{Zo4cR!@1\1$umVB'L|&ɏH'Ӹ.^b\?ÎOC[Аn!sփi~PEuxd AF?R4i!c@)Vp}2pZ٪>=yC߱1*+UR5T:ڜ ߦ@:Z׮!&?z~_捦sȮ{.iRyikkC^2N8 Ps>ޙ6۬٢"'R)IJ.Z:|&wQ!6Eqbb+FB0.[ d- #We^L2xZN#NU;% @|U߽|lr'2olpb @ٴ]a`*c>0n, -߬(G ߅mlm$`]~-s:f뼳+#*xv@V!f]49xǦe܇jQDQAlG۟}Fʮ+n!~pFMd^twܫ5ளt XXpu춵ɖɾhaby!v|SS+KRM_/.Á *l'-{SB_h{1Ҷ6-bg_O\)4D3=S,{SH&"{Ssam?}0G}h~hd%Thϒjݰ]Yte_FH[ H6ʹ-8u>rɓvf|KiJA)zmi]xՐUqs'  bl'WTJy{1 s.mx֤ 2j?aqef1v6\i>Tƙn5vmUEϫs#P Z>"&0*[0p(WTfCs&RX[OuaĜ`'os<Ń XC%ZL]<υ\mNjk첼P7@~Bmk}g{ڲ_ke夳4 Zx:)7:;y1:#Q0^{0`1d.EgY42!lUU_ls\1]9b~RP/:{=U sKmgvfOo+swnT h"f]nb)s3wϯ5(^K(!dESm3s5 kBF> bށYxuv3^ ^{J9Sd2nID0Z𗫁mnBIV&OZ9'/s~X衅, +uoT_YG희kN K6E#4 S뙆(hPai.%P}W1?;tT{(NT_vYW=MwT*B3-̔tj آӦܾYn%#O2U!!NfS1N{1l`_N(mb{RU6ï7] Ej1Յ|O:XgJRW[i'|J>G>L8N>wx 06"!L}c? .͇8IA*~ ( E&0J鵖$oշOġF2(ox DuNv]%v>&mоo~$j8 @"}8Rg^twvW|0dw;ZE}5M n(*iT0%i"ٖW7Rj Y-(xڼ9- Ʃ%8ҕV,G7ُ 1lÊb4oB+5\;fɬ E @H ?)L ;gusl 99T:w9 A |Eg~ kը>aƏX~(1 2%\Bq> w:P+e3su'Kq858H)xl+k?k4 m6G\zKapK>SқurD7Ayd[ M22 40bQf"sqSH|5jg`?ssݱԆ-&*1d [W,@@hhfX926ժ*zFRXcd?q~$dNevMʉKͬgW% KD:Q Z[xrsvxnz)<)ғGx6ٮf-vhYe o+TsP9Roֶ-1oJ 3d%HQ5d\Ɲ $MRpb9Y?eHf> s|;|Ϳ02qЗ,/B2{C e jw4ws)RhovÌ=~gQ#:Culhjl^9Dpwf ]mZSB$~kE+nP? o՘W>US1U*tBMZ"y"UF=CzMjW@Ӏz>T hrz/yoUu3Bś3`h7աjɗ o-uEu6sw`lx;EDlH%h3e2_CqS{PN%?Y\"mHsw@4'Z27{~TM"JPƑ0k[IiqgjIYZώt[A5+9JLz ZV_il䬯|(`JNY#];BW]>#{؀怆X 5pAfO!uRo<䑫{Y]m_B( ד.SWv&naddɭq@Bdx;A8i\7TCR,7>~@0q9ᅨB5Wz}Ԯ #f}LAD毂56-OE~nu\.jVb#|ۇ9)hh!\mMhB2ʂPP}5 uu6\\J`)$sDIGukx!OҩeV]&bJb'A 0 cHwk/.MymdžW*K Xx93N}U>x\z:T?}Ԅ͆v x pe3;ȽzQVsyo?11{ChGH7 zZOA5A'Gwcb(߁CuJ>j_YSbF&:FShɚ7 <#Дwtf s]m{",uD{6KHDojE\by2uGgڢ)Xy5~{W.^0Kbkpl+tz;FO2A)$ joA;{ot}NDJ;RՆy2_bxr}"4LJ&*iu^?9?s/"PCmc;ڑ&3d/ (0'){h MEpSҾ_=v[ŠIA*Ib)+ZVz!NHCnh90:H<E6v10T1٦-#S)^${8YD>'F%;u96Cȸ9COV"sY# HdFc00F(S#})~ @+?P&{3me9,Rm4372q\׸K/n%W WK{+j` e{Nz-vO;hs{۞Ol~T1%3N{rV(p3Uk)'1cI.:)FpIex\$SkT3r% 2U5Fz܀ʶDZl$K]?.fnר)t{TAN*] .G/9m@`⬮+ cGK :T$'6 @hXmF.&eszR3fO{e:I kL?%}pA  /Zۂ!q_/Ġzͻ}Ύ{MfN=տ>=-*c pWPYR=lΘ6@M6 SVk8rѩziWNO3/Sx%w m9 [md!t+iKW>&\z#LCn q|Gڙ0Bޖ4׷&3c֐5rAlϺ-.lBӢn?Y  WT/meV G ,4fN[rsìh^ zp WMs]$PnQ:b};LRH8M`y/&+w\NPv4_ dl3k+Z/5T?ֱМkЛ_cV}IQ:!W9I."X ||¹%1PYy*4bÇ`L}er7 m wUs5Ơ{F!b@! vqc8c=J Fi{shkqFR J/D!E#Uk D3aNZEKe@FvD/)ƎǜBz$T#h=(l.Et1?&15e0@edoyNW<;2L 2 =ܛق0?)>ZQH C)\ސFSe?Q5q9Æ Xr ,uwkX~5"`\sQij&Pg'u!-փa67*57m<|PLBli'g3 iAP6 %r9@:qmPɌzV^k-F:DMZ$`݆6RҹA[PҤMI^б[*a'N-.sA֕{c|  B{4 g|̝} P^`Pv_aOQꟲ=]R-Ԇ@ځ9̕%ѹȼLbn+6U2PDEb- E>Acw4Jbjl6&&҅PeE%v<˜U*8d*30q'־D1?\5]w5P!\H+'A٢tCM-?G Ytr  r:ɡ(W%n[UTo ƽaX9T~&3_) ywwh>`D_IhrʭާE,0m<"X\`8b|7@yL9=? %B`Ӎ˗qMr25byu6v`NJ2md)ثM5H$0 $%Ӄ&}l@H($xE(k= RFUcYd6}yP$]*no-\c40_;.lid}/Jۧz CmR;v9=dO^k̤zswS$:{/ |<'p0)K"H\;)U %PmS<ƵCS48] %<n{`|qn}8kJJy\ ѲJqz!W^@yM\bW~/cbmXlHQ2J9L_j$˚*q|>H[ Q X_te'EA^tot-\C[D\[k83vZUt d}ѝL]4tϏ !0E£(޵4ʐn/.w!`}G[T vg.:?lES|ߦS9јTpq_7nSߎ7"ߒhF5^ݕ&H]t;)~?p)!KC+5A$9v}c\d6Ɋ.GW"sd$D VmD-,mi Ne%T 븞2ќ M]d/t'Cs,E,ā`րP%骶Sk:B͌M)]tG;ySnŸȴ~ lkD {)fߍXUvS,{c2>չLG &c}_3'"s!|-ش-r2ߴtu\U(됿0) }61ijUj(˒R/*{kQٽcZ\ Ԩp&#)wߖs+8h \r"8:ɋ*es-DNngU4#>2$Nө*NާS⫪hӋA6:k.bޓ}$TI kf2a+@|.c_2 }q,c^e:~eZW!8Slhf=<i'a< &prz$t Hf“۟&8fŐ9sTIu]ܕIyI޲v̆}C:od:3@GMu}hH]f~RYu @Y)ש+QnP "79R?n w{f|cΈ JOyJb4ߣK!ځuOfyW6$Wl`O>UΌiL;6PЃDӿUE8*oW, O|;Q\Be-k~T5el]AT3j0W(;j=f̮wGm(7F$s +W͡q7&;V;W\PgunRGpfv鎁,޶%ο&3J?BeQyU.xNI$kkV?zgNu1LqfvEv;0oRɰ%&sȋ^s%~Ԉ辱{_˕ɕYfPjzI[~'>` rPі%J+Є64ׄ5&@?jNfxFʈb8i2 !j^BƞY6Z6'pOQ;m8>dJaڠrsF -yc[.m&"XH NPNb遑}̛Y5c%лXverI 'ۗ*e0%_T^)\~Bz>ڲc|uA~,Q' 6ZP0_WLd # H B#wSii0韣JŲtZ]_,PWӢx0?;,[ DȪ vZGyfȼkjy7K tdrWK˦iS.~(|V`ӼQ@fcŵVNOlm!Ŝqt(qXjZ]ToTK~'KJjmvaC(Gcߋ˟0VrZՂ^X$iewe/YQ7uaZȓ4Dڅg9HʳUodVw#'Y B;䇐0jDT_ T>f F+Tc2b)Ep S룏zh}E+Ijq@.$U{m bnzh~}kiFf&@umlhSw"z0YB ) .0Mj8tݵ`ק Pc8u_,SxZ'k1 Q)q"Ȯ83 `|ٸ#N!oQ6T'R #vLN0x2Z߅j]xc^Q{OE#,X ћ*ѭ[Xӽ`Խ-bU ]+Mh.0Xq+Y#>ssC]"r)9=sVQƎT& ܓC~N%?__`-RNYg|X΄43 `nl QH<1绍[~bOK-efޙ2o 3d@ 6$e7aGYjy* f8h'%^USmKa^0oI5^{䫯 ]2|o٭AK\y9W|dEK!'c$4}RmQKyFW {̬G5ܽ\5E Mblj֤f՝#]\ k[׿ A6lZ$Fl:۲AXhv1f|y'(ij)8 } Fu$0B IJIށ\c[zq =K[]k,]f'dXVMJ$@d`CX?gpr'vQp,X]ޫEZ`oϵ(Ypû>j7>{ERpsW$QM;[1$-eP9yyg&֫)Zq4,՜g~_Kbq?*mXĚ#m p  r+@VlTl'$f[bҡIeVkQB9s/ϱ X|9ѪxKiʣ. W&%+ۥl7Kd2e(F4?0d>`nV辐h6)]>S {n#ӶdV[)SPZ=V]Iaea #2*aBZD0q rbOlUϸAt`ݦGO 0*c8ۻU,o=td @~rږ$] {K8ߛJy +Y0킛3aL&>~3W.|yDύBqErЦN\w/;k ~U3򑾄`r c$XkE¨$~FU{W2k%̋\cJM 4ɚw4]hhǓO8uȵ'I58WБ[`6#w:6SFɹ.Uԩ^3 7Hh{uD9@  ,Y ( d֠96"> b?Z)j^$QJ<:; _iVbۋzk)%Q8rJqͰZOly2rG 7,6Ա :3mNO||grXMnS,*'W':sGb?]@\]u~kpHlZNyqLa鬑{/w;eΐM;;ftƟ5@ w[|bFڿ3-*.@"2[O8;FA"]SF=BAVfS/lg[TA!WkH ;S} z0[L'!ܼԶ'aE\od4 {ފ%53& WζL(ҩm.ة7yB,y!gif-B!.P\M$nhິ=>ۭ5(_i"#+dB9aFw FJ:O mWlAHy-joK-5pӗ*/JɞQݕM=7zE\LR=Qnq\+f$8Wޞ^y#(LF!79lU|e?4+E7eX){* D,@aM]A1xwnaqƟ'L62_+$#/YАC .()[U+-b+G[&dѕ>[.?l@w cc6a(qmz߰~Rk'IȻ% `KmHT䫿" N 2C̻qiM QNjl|;CNҩ١<9wVSj$м S!EΦ ";6C>P*]5nrF_:$p _:ς(edL~IU`aV@(Iζr@~ p/Yaa\Y\I jGT曌(C62S?]s]BYtkpb`W. ef1f58F=-. Q%(I!T8eRcwBkJ. `{,E&5Т*͑淠D˴K]t%j a9mUBnr o=;]LoMA75EmkEGp[d-i=l\Ty:v^-h5HyPUW.[_9VlkyHzf8! 4*htX8r/Riyo."6<)?rG5L#uJ{g;;OROlNv`F0N&"P%lD+oS/5<}&(R dǎ{JTnʫiz?*sTC>'5 h1B/XA]QF`7CGiuK0l,g!??u2fa y2C8T$V;FƬ~*U&\$)p"F/mFW!}$by)*.wZr,EDְ|;6~Y*:`Jˠ>U-o;Yf8>fݮǰy #'8kM$4_hpاqK׾SP#[x ltD cA.D.t K?F7lA2.Y}FmAUѠDl1>jWi絿t:hL/fEc{ +4cvo#SHlz9x}El`b& EeB"%IrɴyD}Ngkʌ; JW֑:Vу3! ԅlp'௝=f:ChϺZoŽs?R'I G|P-Qk 4ׄkM\3G8`ޙKk[*p޸˩\=a$W~#n>Ԝ",$='7>p1>ѝ~R®=of_mRoe~ 7=\4=X>C['uO ^ІZ04[Q[|8)0[/z -edfg_Poީ5.fMQ=%*x4w$Aw[A4(W.'֠Z,&K"}u5zfqù$ <)tr8z͒t Fֳ$;~`g +_j t @}L5k;B;R]o1\_&R3 `4i+`tl=D._1B]F,P30)ރ9n(~ґژ3E:g8 :rg+z5h襵V*հú+{D6W$EegIa8+Ǽ~cʋW) _gTWɒ)#z,Yhz* - >y`tv\&S~o?j-K[ѓJ'= İlU|xIQ}> 5\s7F>CR#*/@̝ґ/EhU/ [vBo}@,@Uya9^;`鶪"~!OX~%$=M p<գ FI:w45K` } icm̧] =}MKnl)!g{(3YP?E Mqb'Wߴ7 dC nLkNƴ|9']v{yF3b4=\Y~{.:W"dIN'JYXAX@2oRoFUk^ΒʿaI3,+c3qtpLK`SW31DǤ#e΅,a*Ae7nlDNۇxgDeA3{pq(> 61, &G.,;۷n^;!Q$[#SVh^G}$apb= 3kh k~jufEn$5.ǔBf1UAO [Q/|NdKDEK?8%:4~!b_jXu黗k?af]KIVm Y91%zgj->bu\+fAU7n]/w& #cլ"0Mz yM~lPz>fGӌeNԣg @4P;":=_jG{s>^fs "'b+lvky#gJKf ?'[^Nwལ!+܌HV/yhۨm @uL*@7dw79^ 9D\/k[< csQ*MѪkB08 H}pV}9N@BaSs$rRxCkh{e59Nݑc> g)ꎃ}+ү`4HM2:>A!;I}Ң|aP(hjR].\vnϏKe!*MmyXLsQ<`KlbFz0BPWr N B]3,Ijۛj*rln=e/:^/b ԕyy5rټsf,qXG̻V׬M=on̒D{ Srf=?n6l;_ >VO!$ ?[eb,|_}G; 0#;tծ0e+n7Gh(]#`:75Oˮ%mu'ҨT[?ƒ#h+nGOEA nUD~PF9̺d&gE7zTSIޛ4rs$"vYj4 b 8RL[qv9f\ }ٸ9I(Ǡ8qƲَ_@L&ț!KT7QdR`Yl ʢl!٬Ƨ,JzagmOr 萚cu.Շc_hQ'Έ2nMW%䘄#bV !5>?V*0Ľ)hq|H\đ [+V$)3%@(a҆"R?;'rBIiة+5D:j4 W1FO%a,|"8--zd35n,5ѻ(rolkEs&2 I/ؔ+NuR)E!K/F)NYiCP/N9H¿RLץ|+1 Ep6oW! A  84 ]0i?'A'H'7p'K'_O]y~ޯL_YoӠ+evi~QgaiAF'k og&콿\ ppųZ}xWP:m)˶ˊ)0dd_U{r5=q_S$R{Jj5gܽ^4jjB&|5]F ͬxɸhGOHQ]*LUӐҪ,ζصU&4qK{M ϶ukÝ!|-umgh$ˏzDr<窘m.E254X5-sL*-Kx'bcg}RE&1)uI8jps˹|o-B`2U"alJ&o*{1\ O:(  @;-͕-HٞO52SGY n"p,WD+<(I/'YBy-9PG%c CxѠHpSRD[S} @>M6 LJ@Ӈu6^ 7TZb/(ibAdlL-F+*UǮJ0:45J2\l3dca #x07D-d>҃rM)Eb.g7!fӎoY_J fMⳄ|ǯ0!9YRwOڠF,fN_}_y/gxlNfdLhq` e5 (or$cg|p ' -MOuk+?}6 xwF}AH#}ylbRY>l5|ٟDM,m1hyB*~ǟK [6q5K@K6j$Υxc;kzY;q1Tnd8]; X(:D=љryv/Up z׮0ZE#R$6ӻu S4ף^.2*21L do4 KO+[Fut.G;!B,5|ȟږtN$E(* gk#۽ezzĤd2v^ȱDu>-o%T@Ȳ /7.4"iSެix2q3!8})0`D@CBK\$]Ό7 k 0 Sz`.Ey9[bҺ|.Ho\逰"jU.5 ң+jm2ܲ/:#bJX>݄;9|'d܂><SafW3!V2X!Un@'k&,#O^w&%Et-X/\&CKSZt䍍_9{+ $^ZSg_F>s9-p{gIN %=\"3jo*~ɽ50HyLmC]YO_ÌG=J@'K&MBSϹNfwϑ(l F2Tyib˕U>GP)!`J<]1. 0×AYG(Al$4AĐ{@Ee#aƙ`lPn2 `N=Zs߉oWKh]a%!rO?2!$ jwp|r6\:N_:*v7oKA$ {H?ޯRiz-`lG:pbJӿE ZU{}Pt2n'CԪΣI;?)q*^*'-bdTa<vфil_~8YgOA$98OH^ >W~~+3/Vsd,!/$zF`g~5b<<h@ n<Ul 91FRrx}hJ%bτ[kA]S9yk%Ҙp# cPJiVϑ@:$ TDȤFk F .\3)̸81pRt4i,^om/لƑ1G] ޑuZ !z:ś%ߕI]6I$kDmW6=/Dq \3 %r gC]Pum,K dKs[A1)`eYKcyi l^jJ`g~W ]"Ey(=|ׇխSPfvG3yv9Sa # #f0-~KOS Ih9f7ؓX 0 A7f~FzS圞[퐔D0FLt#_ EPRt-R"N.hz.]^.MX"I=oMc5 /wтUhZzw7ZJ5hO3bM߁wmS [q)ғʎI`hk:U5˞ \TLH*3 Iug^ڽ7LtMѺKj@T^:"(eWmƀه_ Q{0L06=l)/d}IN2S/;GV3!`3> !G.qB(o= t8FA8?ڦ>/RKJ P }[xaZ0 uv:_8Ul;@~vK^Zؽ3ǐ{]<hc͊]#F8-@[ (0̥׽ltי,\G@j\S_2RYvIQy쫟 qJK|IJgұy[)pheEfv[ZᳫOʒä#OLH%azJ(#L$ll+^d7w A証xVlJ\$P]#>CIAs ~ߕ&$x]1;o7~v{@%5#Ŝm_&PtYIDޑjV) +(;O'ּvP cTK9NʧYY+/bqaf-&70d+fvtDw~+-3{[dop\dtN>}TInr@eQ-^О#`T 3"so~P9CyD@pD"Oy,-MW5F8ELbm.]OEIY@K DIWNd*%`֔cۨy9FDBSΎTPɊ^Q t~ϊV1s^A! r/[v^@4RAUC`^7sT _`; ƨo=x]O$>v!tT٘NckyK5d&B^ C4|SX?ČxIcWaˎiA*l~dʱ9)6H@TLV/ eh{-VѢpsF&y暫^"DX!"\@ `.6K?.g)y%Kk{g` #u2ڄeH83_,r&`.c +MA rNLJ^j Y=335mbz)Bt'ٵ^~xiյ.&e@gެO;>dMző&CͅvY:q0-0l;*L?7> hjur}DޏGB} F $)ǯVViD~S:6R7Y|3e t#a|) T^LKΦ!w*_}p6i?&Crxw 3͖Y !qB2щ@5d26V+iV+(o<7|N(2|&fV s_2DR;yT`Dwjx˪2)]yQXtƞi3}XKVv dP {~CKyWI/j[7܋uNl3e3]נؤxoKh丩["]?MNK>R*WqI 039QpsO 5 0HxͶ,N7hIH'̎%ӄ?hD .T5,/׆I[z=yutJks=jrM1u@H#]*ƹ+rVV+ wyUըEeVZI5`c+'Ǭydg((ͅyvZFN7!Q]Fk0vfM6]v5V'#_[VԼ y\e.t|#<=Qgƪ9:8Pj**1 "GQ9SMsZ "m㾽dx%=qL#猲lGil Ph|ZO1zjo_ǚaȑO'_`?LJl8j+տ"y=էKw1 !xns(\Ƃ%?TIaojr:c\ ANՉ'j}^0Eb!?b`.(#R9(9,zڠ>6]il;'Zc9qȻ0Vjhz!ŷ`i==yo޺aNv9P fwZ׫/GS#S9$Fe&ҽq>LLbqy\x9>, ϱ7~}6FrK ߀?֩E 4Zj94M{dL3=m' .& ? h!#;-QҼ0-sY\?b?Qgٓ,jeb +d?*Nuې(ھwSh40&숮7 Cc)r/DɭL4úb3}Lܑ[EIcd źɾZh5%_7,TΝ#٨5\f^8u P (?J%I=C\{v>(s|A#P^&i>1˭$h { {e# [kC<*Kߣ]vFpI TNU.`S-VM @0\x4ӲҮG>HpHJ+q1Xif*LL$c gPpdG=?.zڨbǗ9aikcG7k0NM36Twp)cRoź8CayLɼD}U3wj zmoRc\Dݢno(2w(tBwZ.Q@9a-\ CPJ z,aj7>6\ϐr!YR-QpY_|SI}/i?s:OXZ1]0N3ު(D\ WDŖKMC/z:`lk xm N Hw6l'=u*HgB0;ft_:~oBza*)U/)lб;ڴ꧑:CB˯5ZE$C3̝ O+QA:,#sVQ ,e-,f]r|cnkn vp/*ɿ=AM "VۡQ0Lz%|.[hcU=*5Ǫ.Gڭ[#S:e)-Jgs'AX֪)UCbw9 zd_/A[0.Ct rԒ RJH%~:8Ú$ 3I袚߹|==!NT'_B b;C DmQMt FԎ Ø=x-Ε84WOtxn7pi[D ުUhl#I45*T?~zDy+m$P1J>bw2}A(T&&m8ؓX:ۛAxnS=]!Ոl;m@ݿQ??xZ*%g\%N|NѲ2xjؘ^qggͦj$)TN|\uOj1ƿZa]Щܸ43:Ѝ-ٓd;d`V7s:(%2SRŜf$YdD[\fGF;6xcC˘޴zվ̊yWgu? ,c.+靴46k~b~Y?rXL{Tv˫y p'Xiv LHԨHص;Ҫ4}YCq'vq-iWEB0{!͖w^샮ƋֻK1!}|2j'F)L=Ëh@&Q}X^'C3Nx7Uك].9n}zY-z-ҁl.6@\`4-}d,ėZ_*78xۅ%I~/a$zq8#mg}=NU(5 C!~.Y*,xh pd[ x$M&Gmnm@ ;E?T)T˞u|í}^TzZfK?b-W.cs)MdvUI?6t3r9g&qlءPCNF3ҏd@DA͸Xn,w_ Ӥ4\֘gS4% 6k\l1Á70'/7J$\R֑5}=!;"ƱNd3Nu5-^|@ٸ& srQ],AI^06ɃԦ4JڱL{O[+aїYp3WI;Cʳ[iJ$xPQ5(^S)(2VUa AɀH~O0ƻrfKZI;u)(}2=p(cjM}~ o^LOxnL1TtS4<]*UjǴCovŷ18nUqy7 ׬uFaǩOj?_x-ff&d7s}{HI;49[@pAX~n?܍"ksm+v)|ʭ'6jCC5…Z+@S֍?<t`4QFI+3. (p&I&"=4X3ixY5`XW%UAu"TOQ- Iu1&[y%9/FÖz`e=+m:-Rُ#bձ_!Qk -LiBR8! C0 n /ok.`ǠU ]%#U djXڪ%)KxG4q3 ~w .qfC2z(4'{~vBV|P} z @/xgnl$`3 оiW/I,΃ E PS>ouSg5a.|8c}v=Edsb+5RpUǩ=xLCKd3޻z _ v>O0Eӌ **t hfJ]~d/rB+W~;#=4W0 m%8b SR}xᒡ%|4PU܆p F/Blv"T@_34Iښ\V%k}:J† &qZyुYe:53xC~DɧT/VW8k[m+a͠gFWnL+S亓ҷ\/EvdvLv}iU$AMtF;JnEF঑-Z^S"#@;fzrzVut\~¾my˨ءW?xv_ԅ5);6g*tO} wA9{ `lR gO. D7:5{Q= nIwR,blXtTJ3-%2sL1_ZJbx'"cEI+D|2t%k6ěaؕl]A SL/v,!*__8? F(+{ 84\Mw' oI/x *Eѩ˽s=<)g%=I`VZq13EPs4t{NݚlONskuxZ]LɞȬ5v-Cas 0q"䷰Z~@ DTإ_m$<}bC?n1ŧQi{i ;5!J WgXEsWF6J|.R]p+IPln1fG_C"[˞t{aV3gT֑:[&Y7&tgA]T<]|&Yyj)AaOj+UK)sƒx^s(3_abPܹ{'oOg<~  1$ ^Vl[܀W6\>TD7ɧ{UDŽ{n*hhH>EX̾2RÐ;_O-F*=^%XACc% zYB,[^洆Qd߫,HPЮ⍞_OM*d,I-Bw`V%"l P?25/Bd7ĉWͽӜޗU"ύ:Ξ=8JC1g:nL?G[a|ۅ?[|(EVyUk Bm^P_h9C Q*8ಧ'+$r )g8cMsSȸyc* ZhՌw3 O믾${3򒦩R^˺% cGm+ 9e"f'[lM]n2'n$zm۵_ |ׁͭZDdx$SSYC[C3@i&.` S:ҋ(Qf 0%,E*%Ƙ[Ta`ꎑpIH#>thÎotVIy[M:~3ڂSV?|%1Ѕ9D 3d:s)Hq#'ƻs/mV1kn6]ɶ0`)z ɺQ}&܋ xa 0eGiA٘P|b&D#Z{%ֺ\x%a/;$U},3V]OْZb<-{ib'u5IN_i ]O)(GR}+oH'-\'VU7?xInPau>,=;@t:yq:TzH"&pf %\ 9>U?[>J]ed,K3ClO8q"1Y )_r-8[L*[΅xex8e.giDv/o9<DzWpvNK@oOCMdࢉM|BVXJl^%T@iU]Ol5 sZ9-lWH$UC;E{N-jF=p~?l%!TJS;~3uͥ {kOH4{ D?g56^}(y!"/M$!а{2/lV9 k=k qfbT;Xԗs. )45`2 jE ~f= S6d+Yo,`OzlIIO3-1 RRҀwC?ex5L}ک3M íc4縕RˆG5o H2W{6 rhGo'4 ¿{ldڈ$,/s4sw0w4C)2`4MxHȱ_JrT1ؔ`"~Wῴ0Y,"ڡBTEۼ˕/w] V ̏ޏe H5v{Dx:"$僙ٔ];\ x]K`CĮXh+9C@Z7~i+IF9*|%p$__ˮd49Rdj D(Zs~"Ow?"B.T|FKyDLV Ϳ>s}.Z;DAڜt;'_SC}OWna (6αVzipmÛ?=/dhleytH}xuT!PZ_iw:t4E9l@t"Jyߨi<ѐх6GfJ*B+¦-Tm\bT5*'PPdѮxf/_t[\xxe(PKo{CO  cB=eFDU?ú4 sA:sO gX͊D0/LcP=w|Ktx"(ً;\ĊY52z-t ww+Swã-7G"TR= !Y_j5oL%+,tl 5Wu_Ib]T&kAShs8(% ʐapR7>˝p>"łd|+J-Tp,0Td;Q21֔P.Fӫm r_ȁ-Ԝk/)-7s9M٪SQSw[d,f9HZ7 `L &Θ^)V+uTTЖFOh_ZU+b) j9'+!CRq]a{^Uh25D!;YhY"6ldhhAmECYZŢb҅tekP; pIfMV[)lVu] y'|%n(-|]7W^:㐦bupBتNmhH1dnH5Del^Ns6$|ؼvQ"ICUPwj@.>-U@W]0 ;={ΦȖn5w[{ബVSM1?"rl@@:YTYXK\ v(esWڟO1 h`6D#nz~jQ~O2 ˚g@ C"v[2# ~ɋ҃0l^f_#C!T>1[\NpC;ڔog8#A#LR?lTŨ]Ё` U3@!+{t BepS\vHK@0 mhAs:5K<Є}J#>J9A,փ9|K:$`d DŽ"m^]V<ĺ.Ijd M 3Rxq۩YIKVA ! WT9w%l#(4 M#s-C-B L bѬJ AbԌbͳmߚA jfF1 :M.(!{>Ӣ^ Ї(wɌgږrzT נą_ni|rf_L5_X>@dx\ CLVbc$v-% K G~ &`MT' 9HCvUN|qR.]B. VU+&؄gN} AfH)z;U瘝K[MFv hS- M}^OXcяF6GUű8W> 7Ǝnguѫtm Pޡ*PDC~90nsmᇄި?[cG4 9tJ$ݙµcɖy<8u׺m,ec-X<_ 4lkl@Dܕ`jxU8(Y:H?Q?Cd{u;˶zm:5験:KMNI#}XUI"W^:SV'GV`o0^gΡ*daM;f}Fˋ>r;M=0h O cfH+h3ƾLcVd' j | 2؛s瑡C Ml|3tJ? <TD ƛjLMz~S[3( TZ`[0RQ9_p'S=I֝aH&f yxZw* Vώdt3f]vâꅠ-i=ubs)s=.PWͳ.Dbl/  Z/PTؤR%XoE|.(fxC9Ž+$f=چ x&&@ _iK]Pص{-x۲ojF6/ |ߧ!R۲+ƌ$ 8i} @IAG(k~ٌE(Kz|ɬ Ba{O9vh:r X[^LPcB5EB`  J}tRkuȤCk1KQǃ*U%9-W\ǖ]YnYvnV|OۊŬ{۳D .nޓ3QYr9a htIajN}V -HQ L2_Qp.}İnM7~IR5gkPxxLj ߫5{Bs4(XKLPÄU9ߡK} ,J%A!L{v:ώ?$k9]e~YY7JZəB>-F5$ Mp"$[Gt礅1KRm_l ?*3D(t|N.%oP{ҵb3 Fv"H~`LCpVM'G\pCL+gR[.O<靦iW% a?rX. 2p= r7&}~wX}i+fIԖ+yN2=3uEXVh,8[2Yٽ s]wY{W-ճAEDnϜex|IތHFOaA Iv[u +CTQ|叟Q&|&hFq üWN~̅QmfT hӦCUPhD,_mq07^1]\^W/5EC##>B$whK\Bձ\Ü] M\Ǐ`mˍ [ '@ ~6bxp^▾2([E 2f䛔 y(HcJ# ~qoBDzǂq!2I|[ʛ|` yQwg&O#V;LYWg|@gd=UBZKFORERyjCuۦ鷈&ag]}3Ti!>M#7XKx0Ý${(CDz20τмE8Y즵@ow.|!zv~j}v{@\~ V쏢51@VUxnndoh]w[aa K06@ p"EPyǴOI/vK E1dΙi%U'w ԰u1y Lkyl"LS|'ANЎ7ûzN't =DzVjN?`21Fd(Q4\%F,Zv;T-h!r_~DƉ h3⏞C>ɿ'^R,U5יbVޟLT}r(̀7>>B4^m$m?4.퀎zq|^ 6%I+k{G 9iK*$?Ut䔢g HSUh c |z߿V}vd7NJ&0P X|VtݎqSl{)S1EWsT 񚺽}ÏE5RP칄(]%]MUjo6I~4|2<_֩̉rqf.Ăc-kA]ZJП1rwRby1K(Eʘ;[QZBǤ"‡$TmEj{L!^#oD& D R{ 8ȴ)Bh*  EY7,YAybUN&5l^owbI,Ԃ+yY8k-{y( _CZG0~ݣz'D18% H~A,Ѣzld wR{9%~befq:f&6d~? 4j^>(ghVbT"_6p#툃1tD%ʽMK^s w ݼP2"O޻@mtu/A@}CcbBG4JT=Ʒx0u N?xݳ}?HJ= Z#tyP=zєӒe+Q.;y H9#z|~յwl>~;l}/0 _|.Rg;#V5U-й.Ѳ,D(; y 6rq- iz5':+uiJ6(sh/We0% vtV$)L-WëO6!!8ke9(x@ <ȎVO^Z(oPa ]dih>FS/>a2K}JF=EsQҹNB6MTk[\D{9<+-/HQXлGS< *Mbb|Qlu?U:fVgXGQNr9C&IuԼGYCǠ'^ d;lbk[I:f8K9fF0,ʂ:wIŹHnDEXյϐP ?_K-φЇH3eZ?hZiukxHk{Y?T)a w$Ǧ&A woF)Mvd2ӡ:屘Cx :k׍V.b]0A H8YiR ST{` T8'coi taBݾ/C`{Ԑ5]W(^tn˂&Dg&@]v\gENߢ! 4,22Ǖn| O>@ L}\Pw6KuXT']y5hev;l6n,m~WIle+hMzj}g#فq`{7o~{bKzڈ3KlgbBkX(Y=#7 04&a{+}rHLIlFWhvPp{Oebc"*ϰ+1 t&gi=q,!0,f=+G37rf!;R83++ۗA|Qc6]UTrbZ9fJ 5-g =eіʦcD#tڰEgp̪G(}NW .5/ p˔p\2ENij*e.ϥ3p|!CLϑ ̥j|:o'v^@ ee 9e !m+Z0<x}Rlp'ȃ":;_`mbSjP@ zW7,.E q5 tY*e9(j`]G-z“jY/cyk~1ьWL?\nIMӊ}w:Sg`~Ҟ/|#E27>D⠺, oG11uJpѳ̰睊.&pO|m2?yj!pCOiy->uuFED˛͇gsȟL1AN@,[3M!; N ǗK! ޙ8SHDhv|/Fb K`KӛꄵE#%AKkt1V n)j3[B UC=uu BoۃfA6'Wv>sURH[V5ӝtr;ݦxW{2jNq/>C(S?ϹCctT j.0WѦۇtV'K5,ihYhm' nN~ ,9VWa<8os-ߎ.234Z #-xxPaeZ(uMr7n[?ӌf0Q FD ʷwQFuV:.Ns{ N*fCZ׹@trئٛ?7f)c_Q՜tΛV엛n`;hv׉+-Ix]~\Gr"JTX %;R-ĆtD]-mgw_S S%}ʷ a}^0uZqvKNM& Xڤ3{ 0J</q ~@,zʒRhj?[k8{Sj'x!klt' FB[}NqetlŽVy_0v=fua_W]$~/i^664inW{Ƹ#fC 05%6q{9R‡v˻7-Cu6g,\ ~>YG 2Bˎ$V>G4+Z  " `M(f([j1|uHQ. ?務[I"f<^u}x4oRjXiNj#.9p**ڞ:Ys2vh>/9N)$YG3'K ^ɍ6 Q^F X o`I hF~˪{b!8ΔST,dEg7$5rjN92>~ȉ7<ޜW{q%ɣ\?=GJd3 cT{^Vmw\<Ar8ZT@M.4ʅJ-AT1!ʢo3n_^rlkǓj-h;uroDFA8eɦI}K݃:F 5= 'A8,S,Ke㔸9#\)ptm=$3>ά5.[hql=bS=Tm/|`9΋=Le${Em^04=jYY7)XAv'ULJϳS)#k'{eA**{D<"!6}#_}^Znw;u|9lv/ty>[4Y_&ilo_[ߺ#[ ̮Hݭ|pnqs@zoF6fQ=z>M=v t@o4\_r=DSԜy)f{lv'So%Y9RL*85?Lwk=zʲR|ʼ͸BɥSrMx蚿h E]ӔcS@?Re-Xoc;d^0ԙcu kƦ:ZxtSկ1Uw3_/Bfo׹AgZ|sM_/E({tb'*sUmp_6GcNJ}Cl^'m6HaJ.a,dꂿHRuh?mΛȂoi5 o\K^{`=ktzs%+>ez#cs^%#x+t>{[\Ce1|b>7ɷ!X@1h[nHP)q.`^g"2\=`Y6uz֨O2 fHxUJhsʋlIWʼnzZ`F:3~t” Ί%/h˝I1,)ayYSh/C&;K%4֮mEdZUjç`8 :[N^ 4TJK/ 6g)7E葸V]iOy)AMa z`F˚nJWvhN;Kh ?@xsLGhdѬhŵ^Lc9µ.&kGbqBQ<}8/0qS,A0Y`+ZX_hUeB|"D\ Vl..$h@'cU 0NzCǓ2Ϯh4oY%EŽ}lfvH| 8vįm.'Exal-77'L` PE9tNG~0]^GYGU 9Lweb~ b4Hv' S{KQp LOn%;F!|)cU+8GX L tEg?@dgtVC,$g1|n2Q$~X3݀|t܀ U!޶: DN{N gX~Hr#jQ*s8wG6 `6\I Tb ZqDQ.E!*[@2@!ɬ_i[bءWFzix-$΁ѯ&݄7P;L fz҆ +BWg#VFݰLP'&lO:%Y&,7^f*"LVp{Xdz<]Wmfsîx[Vxvdg,ì֠3o_z/1Yb)H"KOKߵa?s~/}|)cjRGe+0CZu pZu c.%ůt}rg.Nc>n"p ƀj2W}=:ǖB^a!$wkM7ȱK/S:1,x4 (_P.7C{ig/s̩1T2z_B8ly$FNĜ[?FR/eH9B/Z&fSo! ^FvRR6D=?v+usSM .t0I຺ʹLOt1%"Hu&k!'ഘJRdvts۞JI,!S9}3ٸրWg>ϕHgt,j(LR tM ~kԦ|BJ"vOOeL`_E]̊/3ŃDPE+GV$q;R >w{=[bu8 ZOJE\I+TSM湯y ސt~'Zw$`Bd",vgGocsXX\jqrW@'k> jp^b:ƎULIIKJ `9 Dkh-Kd]\`y ⇳c-@X3G `EDHIJ.rEkiRTE)2=⢘yڤ?y+X^}/ _+ۙ ] 2-/ᣯiMG,0qO+ӛK^e@jCO&wxی2ȵ!MҺ<Ë,i_n3V ~Ihβ=l{ʥ1R2v#"= ]2R> ȋٳuSt՚>C1:q١O@laVw$SMlߣ;rՉ(~\k-alvr4Mx(mSڕ`Wui:#ե'f>#* ᵯ;C-ˍ QܐHjXpBC*X! y+݉ɵ3an]M9۠sT3ܽk:bX>E=Kڴs.LbNRbKrǂ6y梫:ФRa:W˧T8<8ΉqpwGF[vY܀nn@}v'De*nҠ9NHTPͩ(,qj-+An bFY9,?_Qǖœ20-Le dip:Mp҂MfBWI6-7۟BA1λ*-cಬ^?q)፭q}1FF^W|RP3jwTke%x ,xZ&nn!4QxŕQ#&^))Z)R:ƂMx6Sgo@\ǦJ BR̭H*]J3L1, C)nfYG 2Tp@̈́F4ux. יI=C&R a;HH+fBqYDabG!V٠+yVyӦOtHjD#VNz831c:r7@%2|Č P'חpl ~;.rR{;MlΣxjNc+eZӑ-I|™=_)J%rJmIӣ߲!\]S53u]@}d8ME"uEBCWd|EzMobq䴁5iƿC,Y;QvoDW(#z6~Em9fC< X֝,j!{pu^姅IdJYof #2G ť L$0@6\*rʃ\͒OA0Mxnd_L[ND@&0&0KBa-Ш`0%딳Ѧ O'NA%ѰI|6 &P86Oioky\׼E6Mp##PS zعɩ\pN͉3t&ۨ^ ?b-Nݚ# lu\%O͏EnB;YHFɳoVBǘ\vDՂ=J 4[q59#1["]U|vFEOe5_^4f(Ia>Ws}Md1|n|Ff8lQo'O]~xWeP+cv'[mƝO${giV0֠0>R7m(}ѬK$ea5e o JS)p)@;rŐ.\bǀGi8Z#aj_AgfK83ÇɿpNE_kܣ5ֆ:{BЖWba v[/w/C#1|2uDԳt(scd#$WBQ/A뀩.RԳ8ԔG"~e盼l_FVuPzܶ!&8 2/ݘŽk(2Y#bmAM+&WF I|а7d<`8&}dw4Κ4s=`ĎD ܃N14A?柟@$;dk8QaKtH[W,0l+f džR6K0B%ܑ>i%-C`_B3omuD =8^lV;$ .x&6{^&92 '}7v/fzԭ.oUPAHB` 6WsBFu;N)u3XfoXou{gi o:O-@4lfJQ`[?'|70_yߍ-5њ!a +PڛI:@L,5ܜn~Z $BڛUd>;fg"co2 'x]j2 i{+ Y N~?#5lL0>և * F0"obxB՘҈Mܡ˩ÈQ+\]FĬv!S8G=XWp*ԥ&ʚ];ʫ6xGi'9=*6Qvw ㄬ>D >VE7۹/M~*Q6fvrՉ'/JiQjo@Ql!-: *?OPc)"(xB2+}سF w3E<\7=Yt5ğ[Ɗ!z!ӨO̪<2|[}^ zⓇm2 T$˃UjΈMo;SEba61LR4nɤY3caD:e۪ZWx?R5o &bEEh?7@*X}.{y^ tU%]ojXf_j?/M'UwXaEBc}xcCk|~x&tauuZ࠲:`>='2B3eنe\=HU>*Z.y䜜2$!p.1*ڣ.+^g:h%)4KpkFֽ!KqpY:Cd.oVl]% -UiA{)l5f ߡƎ|'X2(vW_,jUa+|TMa_JNl Zb iVxY/QvW >35a{˨`0'KH:U5> 4f݌*10  QW=(S~xrz2s9I V+ xX)T۠XU![oy=i%=?ّAms$i"eܐɘUGNݴ> ٲyXqp~/CceNstz;FM{aIx61=yXE?0hמS|oCyǔvܟ3UI0ƖCf$ !3NArܪO[ehm"tH¢68=Kf/jqTBzQg㙱>\BhQ)d[~ ^ #s='; ^*< MS͟c$4\f@hwYTK7(TowSCf[/}C<ԝ6uQ$k>G~DL:d  }L 1_hCJjPDlވH.e|F`ϟb` EvZQ1XS23=1Ԍ=^$G֕1oWt3A~;rtE<>1iܸ]ػ2O QKjU8K^FS` $9L͵{0D4q֒$u:hV)ZmpUc2 dZ$k_UB1X;*h|G>}-lQFȴ>ʐCIdDZ$bY5.8 (%Dkbmxv ̗}BS ,Pxhũ*-jcy:w}zdfZ6mejv43YM胱[\6DA͆fD9=It8WK}P ӥzo3Ya;\$ٻڊ"8ȣ%0KI~v<[{;Wh^s$vQ8bk~z83a()T矚ڿu^_sBۓŎuUw݊8*,1<. o7B$m7ƚ7Ry}@0E.-O@: mׁ& N #:$<^%`G`o- Gky=u2{ 0F|YaYOa(7,+̔O_/ȇ<_Ks[ڧs v 9TRj;7SXBpkG홰p5g okIT꿨2%s:0 TTQ~RfNccioA;1Xʫ(yp>uߐQlh:[@?Њ|p'I{ΌI҂}՘NɊŭqS9e+$@|Yʓaڧߘb.m:IR]}J"b^Hf sDܞg8֦lŧim_]R%bhf\m~-Q#C.N9bVgS :q棆;4jݬk+#E'N 6r;_//EŰPl |Y0%_'1\0`er9|j7HOawUxw]XH|_awEh*WS  +4iBČciFm7%8~?hD$C zUSpA&\%\I7Q ò Q@%Q\zo]{q<Rڲة^yFa$pS`2بђkB,L`Ax4\BYs#J6,@U|l=U<;x|?\0_DyW.uQ&CbUNQzێEOWv9bt.\lgHsB$g3-lyx? ,9A9~_f)qv[z7kK`%_!:6刌|c+Ck4\*P٭W.,+[pM=.Rv^c_S%<:{ޡ2NY{AiV%#]C^RZkR-$E?#ƤDA1Y;f}ph6z*z!7![NqRdR"K+%c#h\*.v̿Q] 0Y0B*˘:BQKc/ Ge4]5B?,KW6w\>@+ kB1Ua@Tu]( ]ZFDy AhM+z?GR[E81I((,oz+0Ljo*! B DrI@>E#ϫv\nqRP-X>Ĺ1a`L-xʅ3Pj94e*_oJDuogj~i̱Ԉ' Jkb$o2# 3+,Gʤ;zq1igPilǿQ񜤂+8tr/U53MfhL$w?ĆѢoEc-ToE3[3~GgTk*(m&fh lo gAB=S5ښWRNW!#oMNv^e]fT+BϢD_3룽f,2 *3 ?7rñkҜ}Pz"4}֟{)"A꒡Dj\=B: PׄL9߈gHws{ϨfU : ,iU^_"J3;FܦVC%OYTx/>%hAQ cn"Gbhog7) /Nk R-͢V*-Pntcp)8ƕC)F 1ٺa';Hӑ\Kr$tvenD4q8E ?؈q)Yw͂|ps=lJߋS Q=!Í ȅ>m%spqTKaaU Ɛ /5)Zd¸:GMߚ{P:CRO-xJ/BՎCD$kFCyCƥ]`z3VUsH%Szg})jZlkl˷]Nډ'*Rq#LwU]ZszO 8&NQ_`+&l:ryr6;YIׂML2%YGvp &8Osl&4[^#C xH"(*!tWT!es{Lc6 [qv~_B޿tR>D\s{ԀQ׻0Gh!t-(A]磪TGr|c*͓|X.FUP cf_LqZ޷֞<]*0uJ=mU8rܔ;xnWh#]\-O3öBX}0ߜ2?۝H!\/IS|8[[e  ʦ4 37/<=$ܜ `Vzœoɡ #l e×NPcq?S˅s7$n52}bskS9*qHN(U9H(u-u E:d(Z-a!Ō]@Wew%eqo>̈w0PxET 't=}iSLv]G=:^ so <oDC#{k`ilM?yJ{m+ٳ:u-xas[%y}Wި_+]8g2q!lx.)*`wA_<$^'3_+-lVx66 oG |}tO&L.aP/ "L%?,݅` 2jj} g/@"0&hj%8oWn ǡb0p}MD߅UjgڂdՑc_4U?=Jw`^0(hh7`ǀN` %̎'c $hd83BB hWZm-g 3h#)w7soB.o;UG/ cRBSEmJp_)Z%a_&0{am]2@t3\Pj'֤TN?f(!$ݯ䇙\@3Q k#v5zcWۡӂgl<} HyK(t%,Q…퇠TXCAU9+Qn&UR0|GZG phja=}<ߤY X:9TWv5ʁc #A,"x!&{n pcIgd씻&E5'ЮVA;x9-14ݬ[G$/m1V8W\#;}DvJ-4ْBW04nwݤ^6 "}:w 01G|5DEo;W3G=*D]cd.s 2阫z4p^尿F}}Xs[82oOkվH|0fY0^43mOxw*c|?}F:7!qNRC@*`iLL 8nKІ[}G:! N0O:O;Z#Jahy{ܳuGixy^aT]2!sSFIEmNV<6K+uDbut[]x!xJ-))] 628MO0gοh尗 o3;˱ ӷժ>}.9/l y-7jӝ`}VbQ0Ķ~`O#&rAb}eKT ]M- ɨy/t ɵs5]{d􎝝?e["]p\J`~g9aTR=RĬV {: +N]pj̹3]5Q%jbNɎIs/[f)\4F|xdqaqD{8MEpE5~%c+MC%PO0lI +0֤ak %dN> ](41\d^lm˜w;`,5U*,dB$MItU9.w'x <:G *2jJ\4usGvabF8eUCPB!:7ZN$yVCH1,_:@TɑtS٪pU:b=wJ迠K@d C @=J"%`hi*;p ЋWI p7"A3E"8s%,7RuH̲VHqghU%%'ԑmӮ*e aD򿏓6 )5&ly;]~pEe8bیzƼzPىaqV$5I7Mf )KJؑjcΚnKaE~0V>KV1&+4 K\w~s򇽭=9KOv)VZ sB< D${Y˿FƔE:hRm'LG,)ڥ=McSK_SQW;vm<1NCdք>Qpϸ,jZ ݯ S"M{`%Ox̕ )I1]M2Q8<Ir+2鸁Xp%nI IUYUJaY,,5,q[>DUPpċ@s[(pRچwl!8e(Nt${aq;[9{b\qAGiY,~Pt=lnq:'&e[SU{+ 7 ]V*4`yc,5|~S*JwB$H7r<6bt4rSQss5hZ:nfm?/ZiR^Z9 =Y#Mt Q^2 %3R3ra34L] BY ǥ-WB>x>M.MH(E{tMv-|wCXWEŚPJA!Fvmq{98X6_Ț=4͈"'!]$uJ{a5CT=B?d]f'ۡN2a8afLEg f֟CkB: uOSKzxU!F--tC/T쬋,Y;]x2Zeh1~*hL+biMdc ɟj 8kN8ƒaI|!p7d#Ά}:WgS4w%0Ѷmq~Œ@ C9>Χ U'5[{s";al&Ҩ׷_P,cģ"K  QR΂E*ͩbQ +)a(F0  dTśiF V~gb(Lp%s>Y'ǫyZRףt{26J3*φaw*S4DDQU⯄TrG =:n{Y4ȰU\GDpu?d'Ps%ۈ%*<$S8[++tvґ 6`rlI{?SQ$.}G%M5xNIuM"av{KI%8WgW(^ZH7tf8ЃF)6RpScjh&"%>JwA3@Q$1 x^RTE-wŶˤ՘78TټU?R$~dYWu >pŝOR9S6Zf$& t],ƌS17j0e,uz.7ZY|&3xzt<% ,D`;0?Fmӌ:!')*2]5lii.$@oWFB?%X3Hv.Yա@5brQhj[K6S2FpmuQehwEtR s+]a5;:Cm6tAW󉟟Br/¤"=b&ߤIP8lvlkA.jpR'HR zlD5"ҷrQSc+L<_^*$ʲO,&s8u{b_P˻4JGyJs1H>YT;zJۅr>mQ|JЎ띱=ԼJBS~:cR,YjR+Qe2Š)J\Ϳ')*3M?SC\v>ȝqr#]1!Eq'7XUIOPg@Sޮ I ]_FdoZ *H@Y+ kV^1cphճ3&#b܁#Ab'sӼ0 LP]Bx2S"|D[s̷}|9̧6;yBW' Kix-J$ H_K*!7D,L`4/FL){rj]#|kj%_ok>i=A嗸83ƁG:W.AqX?=\j%È`'8ɲ"$a%XO+ˎ&Ez۫pQɠc8Z37[zHRiށRRX|Bqz>~IFA%=xۄ2 6'r __L3X'DG>%8YJ}~t[gE^d$6A|.-}V)+Ԟ 'BSF&\5֯'-.Zt4dK9{3 wLi>ހQNRn8yf*̞]y3O! ^,Q_P%").{b B[5}XyCc 2E&:=}>x0<;WKy U%ՍX'אgU|<@bdʥ=EOc{X-ec j3c%<50i_qN^E_$DyW\,,dm63kG ĉG)&oi|"5`4V;5 ,%|VzWd2wl\A # @a8a]|V- )k>Qbg?HVq{!rze2O zWqIXτp%ۏ:Y/Θ/igyT;K"nrd՚oa 8hg[<td1l|ؗ@8)MRcR /aSVV6GlMM%YB[mÌMկKBt.nZ5l˺i{T8q'\091g"sA8*ΈQ|\37Am3O%W[}\vGK'bP_v!lTߎ ] :ԝ1xwɞpӻɒU` x01ؼX-/gK5) 0okG[Y亾%>-Fis-d%I 3ǃx*m ώcH6 6n 16b/\{75_J[4!La(gc~yR~S# 8}'7ЌD6҄0J:{-9$crY8 dy}nfeqXl.d-utHvU'N<2s%ФPgJ5ѡ6=SUPb*`*PƝ5 y2q)vDZ F X|~,m6hȰ>1ZdL% ? ϸ DJNv8}S1-j9V\ [VW'UFQQ RɜS'CtxR1 UU+;<72ܧD{)-cDDߞ C[C "(/T4YSY|J-kunjզL5*IrgX')V*TA.)xE/0G/_3ݲP;4pgAƒJeB5D4/|zs-#9 M9GHt7Ic"2Z@qRLj51-NEԋjGVG 0[^\_onG,\\ÒU~73 $ x,60B7+kw3Y ną8J ]X ř)pTZ]8Mw 𳲈P X:M8l4GpH R&WFT$7)_:6'C3gتǒM0En;KESk1Bz 'Ufέvpбsgcw%ߒnFV:RǠC`2g`j`zPVj 3$p:"[]2 q;5\LTdtgH#ܛKh-j}|\/ e%C>pqGJM3\á9xQ)}IcF/6&/!3`cPVƄ|H?k?9P1ty5XyHEɍkCre:C̱&'`ڷ0@#9RK]:LSz+j7gε&9Ct>5DeM4!8dK e*6ZZ#Aםxȩw&H)`$rvsŸ4ٵ]F_:$G6-.kj>x('!'Fz =,}b-]q$ Y{jQR.'pH/:$Io|}t&,S' _}uuqU14qf)b(v=ֹ/92Y%!:=|5/0Q#k:O=G9X+XBD 4 j<8RK2CY ɯDڄ ~Ng~C7m"ӤЪ[ 5gHD]^٤͇$~7Ys^,jy,!tvcr{yN'ܛ&;X+"b1Ub4/mpIhvQ0mb@KFF#ր7`ynT'!B;oD z|'D"~WZU\b&lp4l, LoD*fM/J+Hs}3;cNYT.\WI"3ѢOZ{OCZʂr ]'.| E?%)gz)LTrfQ ן#vCtWOxfAB|T@gLcҮH8*Z%E"}{б\`mr^f8,l)Ĕ2 mpI+Ɂ7Sb<7]y֊k)e4ȵ߯ƛ /s/tQTa5:y -2 io'uT, , קa5KSڷI[G1~栏˲J=jhχ$Օ[ڜK8(#ے!N3ne1Knx\PUԑ9KǢ?!U/cM+Dy_>,G[^2ȶҐ 3?X8{ǰsF /,e_iy iH~K"VEF3E9ƌTd\M\2y.2Š׺.N77;X${+FbvTPD>S z2H4g.tCl`gk6sP>CM~Y&P N򛫎PQ{̟1DǙZy?N&z&,}-7Ppڤ{7c$˯i(֨OtM@7 MMeR/MsnYH`Ͷk#Mr? O&Y328AXQ-ɹ@ aYx0x~<97&Y_FdxF}`Kؕx( _o,KN}n)t![{yYRApBWnSrc\xMq=}g!ze-.hd&PB1uXG [\UW?k1tj-&Ug|yLZrx`W`얹 a3-.A߭DP}B趜+z%2>݀ oQ\L#y3/P;v 5ly\*O c )U[Fn+*W]k٣iC=e,*勸$j][ wLr6Ju6ʈ06c@ n"#vOƛ$)1o>:qeN&KQ2]RknVX9%c/NIO1h @Qy XSP+-a!i g棆i 9k55Uow 808)fJ\Q !\h*᳠FuL0{~b?p+0T!۞GGp/$JXZ擳pzĐt|`+2Qćn=M#@5R(&f!0$I\S^+#?.P@߾Gd95U)yBya]?c7"ubR "Kֶ Xil>[ĕ8N􀅞l'$")lb/mkB))V0+(,O{nkӑCymD.]6X >Ҹy$£A?%AӔg@̘v J܌T5!<ҘWoӤ+̶CIR x~Ǖ%~̔ TN*?J F@΍RLQ=εV٦aaJ;9_hٽX,hazdD׷ PƢ4ֆny_#jSjӼ&PDy[;wv( |_G7>|":u_Sݱpʶ@oG%}qtb?XsjKf&h+bO,za%~DoH9MHٲnzl**H4oBR@| Vl#FH*c^NV鋉1y}k\e,F"FLwU-cǬʔ 2# J9{]Aa%V;yxd2V#;}7eiG0X9fAGwM#i<8-(Ƨ#yݢnzD`砦fyT1մU ipj1^P37r ?cJr% ѬhtdZTu$I W q^Ufw)Ʃ e3s夂 k~[]ʆտ8W$axa+a1GNUھb}mRCٲe2X -@\G2a)z4MTwЉiT5i!\Vy3QnzdћFlVA_xE+Ma'=i1> !X7) bn*pxeяXnCC @zjxJ`Zy8bBL*CW2S_虡H%P7=(VNa+ u+؛Z:iұ&A 698hs?&(2[ L-xl2{' SĄlQ1'On32SD˴ hMfk$T`傈msKL N0R 8shiogK> `L~7XKb@PHX1V dY{belcقY2T_wz{T;/0`Ϛmct v`x CϙS|Re]oYWِ ٙ\X-CJ.{7zLy;DgSt>s56ױQ9gMJ)M;lzp&xȡk]ubb8w~uڇnC0M[" *YEPԱb$?7~ifE㘛Hok//{ ;M<#qYƢ\6 ዼ]6m(٢3Pf#" zj]fIɷ {֊ W*-G9dzj"'n-2--kT̬n*_^.&~O~X7mL Oԕ^Q((s~FdlQ_Sq^P2 PHcڊwO7rhI1xM_2}q(7"ڀ* ϡ{ DׂlpkǭO EB:\-i+䀷?q-C7' ,rO^w{\4P?|bR~(@cKyؾ}Y@trk;qzpZţ-DkŪEqniG Ilq[MOOfgɜvX]s͏}-?fLM}h,^3K8f7SYϗC 45"a{-r.4%ΡH-ӁIlb8)!U;M+}^W9 ]m',=\!"}9Q!4k-).A؍IYɼSByq[%Kp5^4f(MJ]*QTHV]KhhXHCYD rPߌve\[=tOãh ۛUϽO͑Fn~cn93/,M<|f+l6y'y{]n*%5~} (Afi`0.+&աv$![(}J]ӿ/lƨZjZw='wPz|h ߏTT| ڗue 8_;cDs9xhY-:B-,;Ђ͉|3- ^5ׂ=Y.lת+&@L]dIY1r\?3?(sc8~՗/)rSCOx c"11$TA.B΁VͪE5C('{B ǤZ-ėsC{FiD_:+~:9Z#"_jy^SQ0q$h͒If u0{EIn4if z;|>IrTt;|]`=Wwt@hˋ6+)[\Q}F^_s?֦86AJ#go2MuFY*v.fǏi%: mT8 ?a 8r/P3Qš${٘T<-x[%J jhݍN1*BlI4^݋h/Co0kCsgnH5kt~djs"E$鞋21RJk{ T}=e~1{©czPAI?sP=Bknn,`D\֠nX? հk@5VNk:c%ӪDP2O&%/u,|!yC1_jMwt;e}"J60a4/rs|9벑P G.H:4 \4/`X£"43.-)0FP o ΖB'K li>\_H M'~Eci K _v*w,GTtuE.J^a^gZgwMwuvP{#,},FxyE7'O #[m~rEkIį_Ԣs;upu, '2nF. <EwALurɄHg?䅴9 SZHkFN*g-]j`p8*'^8H.&BGT!>J"#bDǞeLWcqCW{cJM]+ə H0'򊌋Dh苸Bް' -Q<*=Rn4kV J_9'ˌnbZ8H;p.zr΋x =oQ7cd:Ӽu+qC^h7Yv"9Du&=qR[)9D $ܜ(q;Kr`ؠ`7Ch6~X_rò/ /'eN)'xe?Vmz: T{P?+0q 84)Mx.wL.;z=eH6 (YoVI>1»3;\;ykAygP nNr=[K%S0B*-&t/DrgukmIb7d!Zso}S)_y;z5o!539a$kǑQx-WzoKWц>0ԂK!NƵ*$%͔AEg%FƖa!RF:Rn1</&ت3#A#̿)xvy Iy(;5t$gU7c!5%I6\x 0GÓ3U}N#Dz󅀦뀡T9+bURȊnr09oqÖzHrRz+etc|Yՠ*(70Kf)2GMEIWwӃ½UR1H~-Cu;Ն 7H;Fp|bK)J^q)n 0T5ְ`yej_9g_H ĆcZ oUJSJ$r~jj);{U&Sݳۯ &(if7`!: PGkYz$p̈ e#jPˤ\P@Ϗ[-}[nzkf/v"_v0 lE|o-*^kA7KοYC)Q=-pv3ƧEPζŇ\ h/nU?vR&ϼ Ht2^l%&(qG]X9} c #KCfrs@p@AQJQsy3Ga^ j9qGϮ㴽0` Y*`k~¡'r R1%~{ec+W;OxY 0iy]&lyvez}_ UWzj硌5 FIV.zYq9nm-?lvTgc-kp3ͯY 3\ȿ G7̮wmڣ1詉mNK0 Wir-ܹ w8(lp@j8Fֱ?1'-?'bxSr3GĝRWm.9 ?7Pa"d+_Muq 8a\8@rpl:V[9әzΦ`r2$+ FʺL 5|i /~rQ;>1D@3R l h{l 7J:i.hߕb9*؏ob\3* oRLE֫ڴ@]fviGF%e$\#eaTRh@ĬDDa$^#jrϸו!Si/B vVL4|u+ լ?LmXV664ɫ Ym[\d\lDz=?I5`@5p h|;.>'éqJN;ݓ9cέ5A~#ph1(X~-[)ԁ&XqfgRO: E̩\Ntw= ܘWj`[a mh^V_kw-h L銥C{j4Z>7s!E/yp2N"u Ҍ&qYKEę退 =YeMf1KMT4ShEPp(εO _ƉdFe2M*3O3{;)'mo! [HnӅ`GKWɐ!nFkRU VD%g6.[ipf.́>^n-"bC@ QžhY`3NϊuJJtOг{3dRnIh9A;mFT=Ilr O & R{4^(#ϲ6 P1ԂO'vv"JoG>qIKK uwpq/0΍y8[Op ;`h> ;I]|O՚"ijlC'WFSGEIW^CIÎ0J5@!~]%~|*?4- 6ج#5M-Bcd@Bm>zK}+@&.xM&y_P#E?ɢZSXyx!xP8 BxS٪6d(jgg; c HMGr@XЏ"}ʊqSj.zgQ4v~/-9C:` X ,@t Ͷe XnꄳqgG!][z{v!5JM Ox9B{ߛtQ v;ф<3 uޕ-KGO7U61dZ֙wI@J\UpgذQ55L$+)f ph*Cx=7/ݾ2:BH+\=`ьh(;8qUw-OZU~q0¯.3sNo(ƽ-x6UàB957MaЎ=OW N6|&N)xx㙝[YwNh/xaU;k l4pH?lE|ij2_"ꦌھb&$^n6 )͵fr_7»d7P6R>萚W!z"熯IM? )ykA{˂pE&|vE5^Y ]]'JhR@@s\Qg{I!X4uN$@[·"h yBA [uqTeHrǎwM2fdK=-0=αBOqE:h נ [:/ZDݒOhD9",.ͦ,ο. j:_uT1]!MdcZ{hV3WSeQ{IdV.WQ,ycJ!wGW}q8A`%w)kZ751:O=~єV& գߨg6>wDURrSGGEot2.ɣR Aa){Y\)mYeZk+܀8o+լ<] ʒdPDDTqWd2mdB-)җ/ӏj< J4@4@ O+_8}խDHD>O^ڑ$)`:.[93uhCA '*Fp@Ƞ$ 'H%zrY*oiaT,Ewt:[|XI)Heי6bCϿj6gIh8oJ鵟zg96Wz/jZ*k["7@vNuv2rD%V׻~@ܰ* [J%m+-)cSW{q&Pr¿{!k¥mI% LW9Rb?1o2Շ¾m3AҲPc6 %,Jp4 Y!M,X_3+cZ;R\fXWD6牽m"C*8sXAif27. =LDʡ`2F ĶBB_EVX4eb}k>TT/g40>ܰoʏ]GX*1UJ5񚲾νx0fsJEOEtzNRqIv̀af*4 y$)8(n1ÓQ~ 6yjeK=![𸿇s,c0YN0> qu <^mPjhCmArVdM=0Rcy%"#5«T s bDsZ|qD n1ڛۘ0Ui@<(V5C;j t?N{# V&%+Vyȿ/c2Tʦ'}s.8ѮRs224YqIM H!2yI ̖=7YR {b}aJh[J5~a1o(`j[3}(c+P" \"cHVX) e8$-'u,x92LO Yf։;+hvU hobD)VS} 3Ϯysudfp[O]İPQi,Cuv>G<'/;éhհYc*`)ge4OVyO1QNJ9})!~ &,ꩡT>c%93iCڕ2\]M(1Y$;2-36[oY >u%bO2JD ^ ] _\+ly3s3Vaւcݏ mWT,8èF|kF~^ǞMǦbvqbɿY0tvW03nuxQGs/M&$ !HG*e'_͈ca2,**AP@Ze1ץ> 4 ,ΨBI {K0R$B|[*fc͍bRʬKY%O. U@꯱tΫw j]]191XJXQ,[иՅ1 hlB9JYz9eB Ogh?!6P._Z%r T,"8m!G&XI.%+(<>BfI4'ٚlQܮoו fʱH IFCZ#& )Ny1r+w.jA|C6{r*B*9bBi r`Q2H%K,X|"ʮ'IGyE;0 `# ;쎄+ }Pv<*k!/XN%gI^z2?7y4};LUqIFj +!65!{.vkTnYLSfƎ. #/nԷ[{4T ^zh+jS[*89Wt#[8nH$71>uQ-}o kW!Ĺ$ѿnrdrg]0iOVqɷyI C+Djyãf 8roe7NU:Ln1)>im}2%CO.cpe};[a EWV:5wX'ؘQi"yX$_6e1s5~ɞ\~H LNw-E MC>,J1]r ڙ\6%T{3/S(X-t¥ u/̍>@z1oL>i1?)Q0SɔC3gUs&tC۬IO|(a=aww42Y+ ?11s]V~R6;Up6s-Bgź- ^ʋ}Y:`dj }ғӅ'%Hy i*bC;rO2IJcGgOF "?}vV_z&PQ *lKQyf<;B`]r:K?Bʽt%T׏jχK)|S)s!b@ۛyv'HTD#,5!+(e"dbeROZk{^%TdyG(JgSݶhZ2X{2dkΩ#/x&r%EkE!3ٷ:M{`2S:"ꑬ}YaG S\&<#먯$84]kK2>-K$Jk1m:f!p nuxr!V>>":JT[-L:6%Er(y٘-"(&b $4̃iL.p^0h OXOX7QNVtbGL0C Zԝ^G_kd(VY[OX}bI4@"R(XgV3;!^Qi+5AZJS߬)">IrZmj>Į,Xq{!!A[VuB#{8K72 ňpaShhG "NC:3\pI]x7N,D`teNu7r^Ljx#Q*)xRߜltdoG5UmCHGk VP3;b8cdNg{X긌$Y6˄) ]d|s][hGy{5  [@u 0{y՗tŋ䜃VT7m&^XORX^ѢԦCz$CC0Bp :/QN3YVL}ly7!Q('+(>JBPDd &˜_tZ#y.Xt?;S]@I38?ePRDb4r8-X?lkX? {[/1dC~Nf }>gB4R/;]ʶΛ >Xb&k'{ CeYTlMQ#| Zq7QmJ*_ˠ&5XS.U?54i)P紣4=ð'BRεޞTf燩l6L;QRSHT)%ynpr]+u$H˘oRJ6C&iG0}"iը+ ̊PVnHq|}:T!O4>6dŨкs`y3oVqG1ۯ1AYruhɆQzkL?ty'qT h&[E{;v08xk4bzǖ[lt6E[I ]R꜐2ѷԱ;~jdNī-cߓVwOD}\ƥ ӿ6Tt2F*G@O,'Z#Z ~Fr$M,dSnm$<ԦhX<+k-W }uW~T&\oEdTa҉TY46 C9^1CUt ҦIyr\lDamU}U SH {dYAZ8L%O%Ey&"fn4gf3ppK{18R5 PxEPfQ2BA"Dr 'd@)RĕM-ZP/ͥ#z@!Z#Y>B*tXY SY^;0d߶"ILouD9lA9m4BIA}n lfɧٞG׾ָ( Wb B!vF# "uӬ0oh=.AA&XeĊOh*yɵT~DŽU6h}ƫ=OE5e Z4}(R>b ĎlR5>Ju)}Nێ$dz@C~ IGcv vCԆ__a\ 2VBѿ6 o0Lu}G/B"&AZ;?v5 sI^erK q+smy1{z=w ̬0|mP|N.`#VxjJ !z;D"HTV+ b7w?F3U4JαcZa Q`9ms/71~:&Aj#x2U0wu0a? xЏܸJX`Ɛݯ%bt9M)$Mez0NXNlBrNTy\'ު//25qIb;'wB8鎼x B6T?X'dGuZ*j~b Ωz8@G.FԽrMŐрRciM "]Rmh{_#M Gd&lW wߺ5>. Z2?J0+6m!/b ifiqgR-a=dBq͌=#&X`a]&,:3{wE@&Du@s{ڤbgV# b+0bÊS %q v y& $V@\X%MVXVs2 ڲByZ3*}Fmς:( k$t l_[eNHZ_z6 s(s>"__Ju]1Ms!CTt `'S+ȧ D8m(Ez@iJ ;tmŘ$eyɧ5<{tNouf(S͛`݆H=RhCr-S5ƍp::J-Qg~Q !_6KvШζK8I,1l.Z]҄to!Mܢ٢rؚH`\+ws8t IWE%2-+ɝj2]&\ E7#WOthH(#tHc{/Z`^\Z!b4aw΅^qāoͳS,|ȁX?jus!qa*1N6܅H.*9튃D!U:OA.Ϟb}*%"AD$Z&(\N짔`d1ӄOS8PNQO";%屩p)IdעJsRC}3Pk$Yv]cm6)MgY8K՟ 0$`PEɻeiN}kuY؇LbY3[5}UY{xLf)X%?LV z7nG3Vly*\,_G 9@,iNDK~^PDq:!qL}P)D@1ln`n2X6dY0&>+4/l^{<~$n|i['ƨ.rUoٖ m80&fl9uRH- [+ Kp$9,/:XΫ)P(g Et=;w֔N cmb }4۷(lI}r_- D쨒=)ETkO@ǽ=k TwZѮ?@=.mk~CuH&\ t3*:E$>q!C5>o~ VAB dξ+|b`HH=ö ^ùrbl,̉T=װh$ǰסz^aWZSzLZ?qԚX=Ѱ =~<"3s7 =bDl_H-| rٟAq ]!N_yZ8QJXZ`~V-;C/d}*4K-ܛ^i*4J3Tۊ%bpLuTO|S_ի]vn8Э =Tn}mFfxa;x pOIaNp*1xTQih;QNY{2kZ(Fx?2rI{kŸ[l  gGMxҿd┤ D*XHRs浣si$|5G_.htR߈\LMŨXgO؃:x'vdLҹ'ݭB;]kgA3(R xԎOPbF:ט {=Ip\BWf !P5:q0fSx̓d̚;c#zF'kfa?tV '%u lϸ׼nt0٪Jy-ν>%e%q.=nHzԕ_Ž㝙< J'DH' 6B݈2N@8:|jcĒ+5ФK$\mH`yГB \ݼ!IB`j@ʧ󋨰B*ˎ0h%3]!bg#gЅNNny/C5.",yWtaDgC|E- = !׭M%9.Qa6.*_|L6Y&eMW4SAC29޽WCh^?W^}I<*>O&L ʶ?sL"AݭP?X\yH0N3JqCb" { X-äT`CP>:;@[nǝ]RJMd\TJxoR׻]Fhh'hN7DjG_Z^1}0OHΑˍ H  D˼:"~yC_D8)*!2e@ 1:6?w stϺ ,qgAVWZt?\bhU 5 oQ9sH +|t-_FhQ%<*Cy#pcD.aqDr@(bZ*|Կ/UMOw'-Е_j5Yk-`O>viGʿ.rt{>C`>rVs2=DuWߴ̔v&} O@=b˚ZV1NB1gwPL$v+16FF:< ;ĝM|.r(P9cHƇy fX܆c3"mh߯xϓC< mIVu icTp xE* 6F,iM'kъAX3GX(/CvOrIӿn/+5QePH9+CMǨ큇rqn xM(vo<ڱLZ(\Wme]\T)Jw-J$o3ɯ,>X4 YCka ^GnukѰH:2 HI99Z,v3H}ZoPر)sdßf[3ݽ BRZ,RE,LUɏAm7m׊ OS a>MSu2K̢&"ޯw%dsO׸bBRQBߊu_2 Vzz{(C3Jح4my0s½1%- 6xdSZz55] b]2H"JGY2QlaRprb<^/ =+-1_'sZ 4TfKCVT!ZW^ndӼcd!!֍%έHHDE2;Dx#)> QI[9Ps4rdu(e"M\nzX%+ot[?v,zKt5o70|evr~-4edΐG=rڳfpݽ2Ţp l6~^P)ۆ(l zp{$oBj$y!`rd>=d)yBkv 0Z8Y1Pԍl|8:vV\%#[m>b; qWG^C]39N^hq͠W -ywsD ٍNHZ%ަrq;mQ vlZzhT3*ok :bOR x^v-N?^苹BbT8njkJIISW(gifRI⍊Ɩ$jez@ qR[8ų5,qZ܍@`^vqwq(D+Uo(''x=77!2;gGt'TSwj}ǬЙm0% Bn]_Q0= >"fh_I5-zA^1+7Ѫά,W`NnbO1-ĄQⰊ_pO5"ʭʮoɄP {6&:pk KhȖχ-SHoqH#Q鱗f$X9 IӇTBJR1dg?|  LyĎ>Mt}Hn4T{v`y:4'[d7H/у1!) Կ+lǀɋ reMn>e{jBO(bb܆7CwW3NV;f鿹ȁ藅k/qƽ31vn㌍ - \Wh-LJO&}Bf`ͽcJAe86^cY&e*Z,-[̾ Ѩ35j֋= x,t5%X]m H?B9&RssFIzK9y%[; #F&x3F9q6  C%S3x9)PV->ZP6=\j x<ԶT|_ ٛP<6-]oۧQ: JV$ET;vqb&@W V>Vzz 69;$$2]`](DIFQ EჅ9 q|e @]=L7J{İ HpkokW ъ0"7͜cz?R+ŬՠIIC4 &TcsVF1!^!vnx!I"I5zPӆ`Ծ6K۳E?mW$Kq٦(&'[ߥ6/sT>9%a8Q8't9g"/? $&E1|z;Ҽv2NiK+wlBmPR|lzp&oF#b 8c=[c%z.o nQ&泌ZWB҃6 *wۚ԰~=!2mU<{3t,(=3 l&{ "Mֿ 3:2e| (C Q@ mM# (n{&iEC)<{!Ґ*Qm4.ev.bcqQEs *gmQV[ Qy.#zB[*!}nA/:ܟH Cw3Ֆ@g#I q0[?d:e%2N'>gJY^;Lφm.POib~tQLk9@ݮ8蹍5_톜 y%{^!"E5EcbXO=J9DLV(7qjȉ>UHk+wЧi{!*h4,h哹* `S醞VQ>מ0|%4W/GJR+;çsi1g 8߉Tsx_&ӸkWJq#apΟH_)m&;[&~l<Ս^~;3 JypnjL_z{vcN?'MNZss`z̛ltA!ĥC?t`=fq@"{:Pvj]eL L:f&97k0CHH5;n'(Zi@t1wtQJuЏuRk:cKuC< WQ3ǵ؝iD),o/K&6%2*[T(3p‘{/d=m [!yN=/x]o-F{x)%Obb 9$fee =]/.&I_OVd~aC8U(H"j ;]j-?]q:aKM8+`̻ )*2偀+ @  [lAY9TScG^wG|HiyXoldmR6{s&v|yx3BɀdQ~o´hlTu6C'{[!M=ec1v5;?es={8$'%GE{1GV E0Ӑ4,m6١,c g{#t CnC?mnQ 6&}['f.r6 aO GR8'=鳻(zK#Ē$uߙ6o"fݐ̊=nUh(Rr]fL9ش`ͩ&},^my9OS4׶8ůNF)5ܥX iP"Z7$x1j+]S5rS9KoL.JWv6F@G:nňԔ!NL]MÀv78"@<'Zjd5/bwދށW[w-A 9e^6cC`ZMЗ*e7FTi V|s%%̞eh q$ƣ[t.tWI^q`ہ.YJ($gseLfpl!0ͼIJPʊkl_$n8/'PPp7Ewl8ܱy(]1]ȋ >͒'{A6"7͓G?yUիg!jw>CŝD":f@J5\V )U0Ff%q]y̭{au5^׳4La"7 ך_V+b5xR-xj;B1e"4;H3C _ /J}NNI;$ */sE ݊!Wq6q/d.'&mpvR)t(ƺ !mdJx3[IˆwY]4aV9q` +bTSY(0ի@j>x'5|/ 1/xf6 aW?ܨ.y6>+cXl ޟ߸gwݞ_qc熜kϩ_UESU(cl{P+.L_^(bTѠHC_Fv ̆ްr!H7<--ٌ&.QHB;Uލ.,a !lkmm l) &MW)/kִz竰Wbx{}z'DCK#j @>R߆X8^)ʤ2MY{S딎Zb6fL!\ǃX4񳂭~ DR3KH&)luRp%Ǘq A{IA68֣'$I/lDDTU$xwq̀{34]3Q$Ȗ=k;!w\WT{BDUz)Hd*ཛྷ~Sߛq&)KK "0le{Şl|N ޡ-vp>QxNY o NƆy䤔͟&^Y4A?+u2n6% Q~38$=Zؗ^T tK G݇q*RPlI:ibbduK1%CS\|;\lmbmpڹ A Z(3ͥ*8G1`>^<c@Wd)]첢}1Lίi|gI?VDey;;u#yTu/f'jѐ:g1Dgupr5k.b mqʅ.ٸ2&seS.Z%7Q̍!\zrnB9sB1N~4{WW䌉TÊD7c9CѤ*Ȑr0Ui eKStrnKWn"M#Vw Pn^+3-,Qþ(iL8~ȤWD犿CYُ GqЮc;7ؑ3R!Bᩇ5@ t_M1;5{*W/A`QЎwKq=J9z$bXC|[q_CA Q9UFhf]kYs[pc 斍bу獆>YsS`n%K nS1!}%k;ޠOm8ZhL2Yy P*pd{f ?%V)Pj"iڵ]PDso@4S]4e~qZeL\V(q@L=aJ,D$mr9df #r CnypHC@/dl.)uH2+- >`Cpd&`o&5oJJ _A’ s/@`Z p€qǚ-bw?ҼI_F63AFPsBRT=-Cԥ6Wī_GI[׆P{\Q+U͙jp.{cBIb\t潷Wd"f (Mfa ue*0jL HԶ#x›3{6/'+Qo>kBtأDG|տq_\R8@Q43N~| 0y y8 q۴8w`HLŐ[kvIJpB:[!;ƣ-1{5VkǰxB/İbgVs8Y$>1W3/(x(L,WS-9-ף^󖜼) ьD_K,`. 6eUB 1֞rVxdYX .XGC1_OEؑ63װ6˾>r\,ɨW l\_cH.=JЌf?X1`y:lecCfKqMP6 }}g0uo㽔,C[0t̩8D"<1ߧA .0,!Hm{/&~IQF!X 9x?@)0gi%֚)ƪB4z{'mAgwb"z:KIqݭFе~'0k[PNc,e#5i&k 9\mcswlNyGԄb #uI25zo=6XCNj SЎ E] R o)t c|4dZ70bSNhϗ*4\_e}4Ɂҙcv3PC:j6r<whj(YwײRX70dc`qAW~]'"1ruS-˴V(CK02!eDe/":S&f\<J. l{0+%] 25=*t<1;ID=5 aguswu1e#J^ЮImD73#qKPo)%ؘs, Rz䤊媳=Tm/&zH<Շu:S=&|LKLd A7w_"2&J/<C(8 eZ* GJ5es'Tԅ Ң`z(||;gH=J ueZ؀@hd7ԎO'8Ac==:@5sbxQ~0w^vy }6=m*On Bl:7y<ߤ]o섙ZʨC>we"DaTfݐ)XN|{,ѱձ&m;LݠG (g *\[ qr6hBVCkTk/+">j=Je i!]?{*n@H)|}{[WѶP~3ɮp\[:CHwm`O`##qh[?vP+$g5ɳ@Tb&A*0Xٜ%ΨWkAGKՕl^7݀(>ŷJuTvkKԊ1RvtC% ft$UruT2mCi&2Ñj dpN4B/V#"aE2R( VuDɨf6-V /Wű-=60HyMww%'sw^׉U- 8ĵ8y%وjTH~:a3_@K=%ƝqgȈ!QIr6dsO|{ GD# "tEY@Ң((U)f`6 ㋯z*;jW)&-r4 #HTsQϮF0_7ߒOBq>w6PZG&Q^l#G̸>k;/e!yه<,A;rBZ$Egu/v]߲h|q}.T˜a@T~|AugՇ̤"%d 6G茼}boT y5cmnM.}4d^5^Rׅ;v/AnzcJ@vbzD%&T䛇,ZX8ӞZsI7r@0F p^.z0 Џgd}@ٝS5|dNQ„q~K^nkC)m/傕cJR_qx[ '/d҄|t)3~J ~KVi&U ][<=dhFiXpwms g`1V0m'2ET[,éڪOȡ2{!̙o'-զǽS_2☿Er-M&H$ -*D\X~p7ĽVS-eMqvY`Rl{d|]:8i+iWпmt>M[JD95FYQu;CrvFͣgnԦ{A|:%g:%;=.3d8~o/ljPw]% ?mVEh.+H>7q*فZj*+ȅd@ -NX_9snʁfa!:41rQPnA\zgJ9O 0+yT#{ &:iռc>L9KttWCѳMt||ʎ;@X{T0Ng.l4tI:n`K-\$>6sV/Ұy7uiFu1A曘 -ts15&@9NVSʂŧa?Y֣%w(_#; bLW8`5f.~CA &f! d2$ -m2Ug(GAoe` cvo#-`,WVupȭ{G}CީQmW3[|N&-kLLqv_i,-θoa$/G&D}* FwR@8grsU=*&ps ;zVXVl_jPHQ`wZeֲÏ+,ߝZ3!Fvez"{w{=}lOb&,sqAǶ;Sژ1KOEcJ^¶^Rnڡ7W32*ԍ e3kHG5C֖gZCv< SՒ1*|"g=-@C4v3YBQjTOygT4*QZӠ앤Yo]{0Utwm198W8YED ĈqL{EVtPM$r3k'Kps6~CNsIi>NtVR~GV|y.</oeny ΅+XVw&f_(GY az(㋗o.*t`LEvtfNQ(/ }.MIC|ۼ%ձr$Er ZS/cGfaq׎p/xzG­t?OǟH JY\ͤtXinƆR8o;Hvpօ-@t]ԖO{./"[tT8pkP5[> "6,P!LʎFQ^/0 AKfVtd O4&n< eEf߻n]}\vP~bthi>:ma tmg^)~R@+KD;N&λ/m@X$wſWH+Z܂4 dqiqZd2 խߕJty |=@FZ崘<~[~gObcj[_JK(m!lvk##†x넏.ܗU0™sIE~D%zlhl -0azܭql-#yړKOl e3lǽ0V~Wz8DƐ0dTc#F8sܷ8XHʭ_6V,( ĺ[$G.XC%Rl7:mV1%"u,_5I'~dn#O_!j;7zVLk]S`NZ3=sW.؝:@)r'-)ָYXAJ]Zwml-}m!# @S]Soʪ]T^" pPͪ2 h(eu0rZ}5j]qU6QKP%mPAm~1Tyh+va;pAML YNQ .ߑfU/RM hQp/E|‡FsVYUo>53b~U@ }{xV=$(? F*^qvĻ/f3eO읋_lkk/H YUT3%Fj}uSY(|wZ\P/.s3SK: K ;%K?cK&J'j@Ցe1:WޯvUߗ+ʷŔk]*4PpOvzW08 03yy-sI>ԩ/84ƉES iłVAogqbHs>Sbyj,hyb/ySps%h"PocI~ɰA ᅂ? V8Qm=(h/hSGXjh(EU(㏕L~9XUHND=Zôs̯fJx׈]U:P^,7M]cQ" w)sڲD{;|cfKeSȢ_>q6GG^ڦx[3<^;0h4@{"BzܕݫyqtVqAnt|mAst;gwo3H6 *vz[^kDH4:{uQ홚fp'iBMOSRO0Wz=!ևoton~_xYNүYpKP/"DROH6 1?eaQo aʏavj[7)s\3†_t~Q<_zLejcmj,)KVQDӅ` .ZQMlt~wx6+QR¢eHSDf9PM5tbg EbG_Y^g4?J,o'} Z(Iٹ/[ϵPЏ@@1~ z}FiU)c/&V[Foלʗ\b!n%8tΒcR"f{pqTĤ|{1 aG  pPT.|[`t|beOΌ Nk~UP })g9p`qb9G;PݣBTP]`NӒ$mɨs,$ZȬұ"LfLX5 U s](XMѥEC0+%YO^/;6mLC_9v 1ttWp{:m[X@ϰ% FWo!a˟Z@b|eRDDR -]]%c-QTfJVkh7>MϥV1mc3?Z-@x'^ J)_kXTOd J_RRi\>WX n?탞'{:!)F3k:bk:S:wΡS@/ ZO6]lB­?O>STPp̈ڽ/ːe@lC[ lyhwdfV#llGaPb9Utc_#i_E8zOBg =[ X l/7"BŜa3;E>!RΖkܖT7^C`k6,ZoAp׿~[ &e~eS jR֐ty95q0e/-K#Jl\\wI@?; 7~du~4]L-u' hC bCgNφ.91={hd7H2!_%:c>TKEPČ4WF퍧Uc̺V#Q Uw[?5U1n gm\)_/1 mc3-Ӊ>7m)I!9pnzd7a!Fkp["f+b=8JQd C kJso((o _g:^v}9+I*"T8f FTA A5iZOaj0.'@6 ;Bۺ6C&WezZ8`EdRorm{n A[*0O ;PχM9jOJ) &;&.;flc@O A4;  fB$#WmeɁ~}aZuF{c\]K )'=5F1mlݭdacRWFo>EM|cnesDh[w(`Z-IgbS t ti JT:(q!>;JZ3;=PEGR4&$"({PDN0@0to|] o2ɗ G9/IܮnfknM-(LX!9)N0bҌJ[fJن| 1lJs4@_ YEycz=)\W69FLue͵ Gy`TܱJN/ ٨Lq"׺֗*˻wQRu@H\b !a\ \z_V?t-˝{_:yao`ݯz~Q9'b_25K{[ibfu˹eȇdVWJodX Ьsy։cM(vPXٌm Xnه}UŜ^VcWl-Un0$*'O|\z|0="\`)ў-DD-4=+(>%:jfpqč3s{fc\-+}Wf2imR>>NC4z =wpZ} }QM+Wًvd^fX-ʍEoHQR~l%o $tx_]ㆿ|ڽO&XzN3KK CM'J ʕuL & M^JTWkf̉^qV)*)[`x<Bp{ 3k4,zKB>b~.ELM-eڂWڍ vzT"W ).D9QF81W)rɘE+9e$ $ Qx4V$;ՖmL$܇J\vJg=T̜"?L'|vW+KSX:1H`k rS.$~ ?I$Ĝ@RByh͞D̽r4Tg79:WD'8`Ҁ}ֳb߭m>ZeDKDYrN09'DL^:tMgqtM.n@"'5Rf_Ln$kun>$/6JF(Sc-s+UUX0rw@{tͨnx <=]'tDlA O{I&<&|@SZh?i@v*)+uƈzT ZdυoZhUKiۃ3`ңE~,$#-Lf;FF@8,EMY|:{˺:EkX~TPG7*'#q p} G\\B Tu \qJK]T Y*A[ϖ (8c8h+[qϼ߳d<h!ЖB9`-O}E$ddCXǸQtj놋S`wFf+Q8p_+d= G١;4[Ͷc*XD# :[ա%lj@ d4MAWKx_YOk:9kxYM_<|,keXS9NQɰn"1-92,(V70f9<;L#1 JUr\oTGK QZ&<'%V [¦?9ژE拘"l.IOY)Nm6B2>Vn`-xph穌W"ߨq6s^k 0py.>0Y>H9#MXf]Tu3`9LA۠JVf9ɠ Z>?M&rCMM6d%|iD1SM}FePrcfqA0U4 GEUݽyF$yJW*w bۺt4/?шi2ȓmZsHE=\pVzp6.y =vn?sUxb3}BU0[˲jJGA0cĘ]e`Y8vV} +qqMk~Wb&12Kgw&m*]͗l2[Wn@R{T [%6..8 { W-X3Ҏ2\^`;3okB"ԏ&"& _v#;;ZKIW>z Dc㖗,cq.znd%Hc"SDB.8}漮hr@o};#*F jmi ) jTpNA4X&; 3>xN%CoV陕= vxu6w;VJk>pva0gu̓}M/FsE3m]ETzw-44Z*4 UxxI?ss3ExX?pOR!Y>yǏgei| {o0y`2Vۯ:r"Jyx.`<ˆr[UG:cpyҁ\*Ŵr[@ɂo.8JU6_RN@`* w_ui‹qѾ7y=,Rtٽ}We_/CB<8"=BG<s e_<6{]jj G8)LɆjSSkXtColsTbb+ւ@2s`~qj'K )+*-:YYU:[GO m [1"Am/(mGtrR~}uUܸ&Gւ Z@4r˅?3#H\y'g8<"C}3xςsW86cy)u: P5m">KTFw M-cA\;]Uy||8.46z GJal`2v3Ho7qZUT\sJy8I; D2S'R94Tn]s#sX1Uq5P׷q;D]sRyc3 DA{g%,00 >9hu˯-Cv1!v gTߜXJLLgwTzd^zj[δM=tw˜>Gfj/X18-J()V/c,ӭm4bh\p )B\_ߋd~{vBgS7CQPzz4v-YKw$R}%k6.pnRK"U%ΰXcS;j< .B&qvR\ pZD6Cٻ({WA 7+STGԢ'@&|@漃b%QM ʢ&Cj-F!֟b@4*bm ųJ S"tAhEȺRȑ[jNv{E& JPFoM#iH6y";6-V1Sp4ʺ1֤,(Of!fMJ_"i@ƚhv0,1L8s{*3u)W340Y D NĦ埳dNycX^c8$Z't&ex2@eNM9eʒҝH紑SFoKkʼn۩%x~ٽ5y &I\6t`T 7gQ,_3Zk'oG;2c}?gSH PLۂ9%OUѹWi{*_H^rz8h$h]4+Yyվe.qFBbkx_P L8tM׮ 4Rl̊LK.M.-ɅFh`8)ˡVGBrxWe#=b̰9i9[.J ~ފk+/#֪3ɉċMD4} :*g-tc,omN_|:ΤGCYbP_dKϻw{#dyCe tmW3DzUd  ^q;#!GIHQ;hYrކObVvB|94#"aՂ gf61( Y+O ]ցZ ,@s װ|1==!EBU"½ ơpxPNtC88W 2L3x-r*g12MmYAbu:^"p ˁG%-,/Az.DB\?G|`zg$#^9 Xkxc: DVcF+~kV , -gy2z} X%_WCٟ?W 3e( pd.`B@MB4}QejumՍ= Q\&(ny1+RLD 0&/TʬiԤXȿdSݘ}y+W aL8A1t-! u׈@}Ds0`3 4zNJE,oϼDtUvЏ1#GHpNp9ϡ(9MgCΈ*BЉ5^A@Lҹq2$c(GqǔٜI{LOllzbcAupB|NP/#+nɒ1TiE;^-Jo[ yT=B+d572w6!􈐥y YS}dIձ9މ8at.(c%!zblML}US5v- 0<0}w |da7;!m< 71[sɇB#{pL~ v@p<;Wz#Y{ּ'=W frj@&hsSVdCgP PK~ǞxX?tLu926޶+ QAK*}$cc&p;rD]6N?*(FzPpע,#$ׄ/,MlbSJ#Sbu+ Q\<`VM!:O[g.)KFE=\DCDr1d@kfWRPv}ѹ~A[<>-FIĶtbj3pʌ qzX բzfc7ĝt@0/MqPܵ7Au4 ՐZW 4LX&3f}/=˾rF |x A6"mK(5I.m1x/u.o1;r:##WVL:,+Fhv[鯜F}bdlպD^fYsߋeCZv?LϪ3\_λvD (ҳ>!n;cVd1\׵YA?FԗݹhQU].H &50ڜpx>@)YI6bda41M04s(|A 0o<9ɉ0nƚhؠ~1 q=B .Q j_\͗5C?VwrK!gsV`b0) Gp ]ltԱ8MI}}T6)2`Ja'ߴWykFi%NF922ӟڔ,g`&ǻQkuSg3Ykx $]8'D f|.dfX߿cB^!Y2p$w#ʨ;&˵&&p_\23%,.+1#oHCqrIBxYz]NϽjh? Meg^֓<7@fnwz9Xxtm`;5"T=h C\>P8c浨{rk`Ͽe#awDr`es0gU\qpDԕd4FUbrRLr (q~!+'uVbȏ1X|.,0¥G8`ˎܖ};PT9Hn9-799%bk8(K՞E/''8R,-%G;Vs1sTeU",HihP.9 ,=C·7 е%;Ć,2]4g7o'OT5["Բ󟆸JW1{TyOH)<'h&˪r3|88l2@eՃKxL=ucB@#pD}b[G؆~\Ҥv܈vR<[-3iXCDQӣ&q۸Sh:!G n+h$Un[\hǑoeYcЊhj@Z}[p4iD(rnn 곹Ů ՙR(2qF|PX/̂Z$'p6J\BV X5pxmϴьk:m}OTU[6=uC. m@4ڏ&&D.a{vk BAxwfk.2&)@X5o&o}scyVL&A;A e;Ħ 4?K'8bdarm`(v} z0 6>rM{Kh.sQ\ ԲWWEË@x5׃Tx}xiC@B>BRկh,a?O}(^ >wմծ=_S,`L- 2O/ė`9qZU *CkEJؠ!ޥsJ8 hWy/Mu y.TdzzHܦE$ 9A α:hHL`%y'f= 9|D-izݫz @FO9vBq$4GĔ=t.7įZR8 ('/a}[sCSX-u󴗒{xݐ( 1a kf4T7duypx?&cq?7w+v(ۦ6u\tei}9`e}SG骙&CmcڼxLubG $p_6 $'"` R' $/$ֻ5ŕLL_DTZN!_7\r<.5RJ.Oɧ buIl􁔘E_٘> |>} 7 `Di4Si/Lm,mq7}m+ xR)A)N*fX5ŵgYp S2{$ s1(^]a1u8sWɴL*VVqA_Ozi9&^*i_3喙CmC)K]Ưkvk %}$vu p${,!in#$w2ZVRsFPlOZp$ 14:r\ob%e!?kg)!_8$ʱfK=7 (nX`}[`@!Cf6kIĭx,U1q%'.$;$'cOc^c4 &כQϑ,g;X y  .%E9TCasEڑ,E;2;K͒H1Sy==DlQ_ӶiKA>9tm"[l=:Zxj{ka;]xEx@BRwf$Ɔ3E!W#?SxP BVdiߠ=_bDALh.d, z@jΉ4lx6lEKSH:"~geFo 6V`I!$%Sa]W/42C$5erRs]2J]a~4]YLK 9Ղ'Or8Gh+d$2"RQO[sqȜ0;G)SDYa5zJJu)ަU- EBfpp[C$"ˤhJZ̳4`{X*i "k99 \/P^5}8^(bߟ56`ew7xD+ ӁB14(().䉩W@bS=fgoGMtߛ fiy䓼 O{6 DY|<"yzoS)odV \-'F8PAS`UVLc}"4#Z_:t+DuAQN2VS+Lf ))D-8 tr -U5J|cHr EW&&v'J6c2.:sl;''ko{j'"B,AYF)_L9Hƛ { l#8"Dy_CuB@Pmf]4w>؜y[ xanwy/i7K>78>2R;:"B)JеJl5IYo,K@ϕsVj#hޖ,%+/^p@ܳOfjg %9L#brFڛ c 3fb4!`{:d74rڡtѹVM}|nؿʏ_I\G D`(/46%cڣƟ"QiVGrQ3]~6ߌN44F4%"&=P/ZO"h<銄8PӶYiiw7Txv~S[NRɨYAE4Rxޚɹ>4@Vu,Jbex4U4☑#TO$ڞu^M.:׷$Ї~{߾<>xڬ!x¯ RdLU1BbdeEr`Ǥ(o;㑝6V>CmPqy`>meXz'L̻ *Yxu5E '[Wi6hiqTVҍn-z+w-{+D9Ej9( -W 7w+ 0$ߟjvJq'4 } GOC0OwcQb]?Azyr~Oגy n>\+ ύ=׋ nUJq ^w2f=3Xr3<.عaAyPpsύskT2qVn@ jrIҭJ KXH%H`\)GP`N,hN@t_e(B9"|kT:֟юkR'Ek0]7UYom7+_S@Wx, 2f>l 8-w/!VJXhp'W2ay H;*R&ggպ T*][ "$H0<(Si6C%F¿b츕τ0*0)P~>^\L{eD05+nj!N}Da$;M(/ʡN6D%3t@kg -"$B=ra^)#NLY4=\—]u'Io.S='ME$*^ygQ0fKo^H 2_ACߧƝrf/CCX.7j Q4FLnq[xv wyD%H;{uSݯH3h'46?<<xsٹlo{/kz;z~8ruPG"O 尩U:ֿ۟j{Z蛳 Q28>?pS%w`Yd]ul4YVOU.RCxݹ=*!uѷutY~`e[/ 1桚r +"XSZQT/3LؐS0c"dE9E,UN,߹9-KU1pѝ vLPG$xmyӢVЏ zk5\FGas,}C-R" =Z/B\R[B^Wcg ϡpQK=',DųY6m!\\&v~dIv}4&P2Sf%Mv)=q~!U~8ȰRj OySF3zSLu ߳4h%?9Vq;l# 2kwb/F)Bc_uI7&);a\Б˦R@bRrN |IDVĉjV%QPm$Jʿ:ɔ: C42+C0P,zvތ cJ꟔R$ xmBpʅpPX+3s8.ؼpj&-Zr*RߍA#sv+)쥋bgu\wOwsBz# {p!^0$R:~G30̙C1 7)z/iqs wc~h(huA;LǕe y+W)*}`6#Om@C;^lӍQh50%5yZZdB6 ߨfV`^yK&R\;w%Uv8DSlFaeܰ<;$a6hi1JF_xiܓzdBȠ\~oEc 39-b𚊗q֭ާbVQk<@/A@A8Jf]iaS%MF#N6sa`+NI×P~8#ڨ?/7,^;ĪW=?V9e#zs,R0+WM11E;6 K7)$߆6bRخ;x Py]@8݄ A(4g?kcHև5Df##]);>wO&*A7R=rWʟKem/RI%YIgȕ0q7*"~K Q zLaPBMt m/lb4G9'lmǶqzmtdҦU6up']("TB'6u~02&{X$CL`VBav+6nؖ),*19!,;MkeueI^qr7G,\ueabd\{뼅mHzP gc N X=r<3!N%7aΡ]rߒDWe#7ooA]B0D=A\A:eOk,E,! &ad -Zj^aR&eg_ A|k7PPD;@jW~4BZh~'*5'%0cwV$2//NMi;uMYSϝU%GM| l[B &4 E,OI/QZd_~ T9Ts a}F5fJ#b/miaNOB 'ob9xĆNn@)2_AnA߉ EDn*ړg+ӏuB$*vOdwh%o|`  8,#(Txcr xP}:A\b,}zaYn5Ed .;Wozuvn-zZOt̾ݭ$ ; 7ciiu (Γ@~{a<R[EI;xzj(?q; w>ϑz ry]깵52XDG赾AE/ MyV`{O`"M>ǻGYfgoԠh#&UךuyHG+ 0ff}͆R1ǂ7vοxXb(p@\]H=9oJ)R("IHؤy @ x>-Pk j7wΰ3>1rQDJD'L@I?VLBnD8=(J2>$Gp{]A qeԓ;=qvM? 1n1}{B%s$׽]V%e%>0 wKa;&մa(kmG-Hh聑$H9lwzYI݁Gc@>/08넖d/aIХWB,?6gJxF+`b6?y7>ؕ}6ݵ06B̳ ʆ<Ȅq[L9Xp$/zx'0 ߧKl5ϴ`H6ZƞՍ^ysŨs7f)@O bxs;Zr_Qlf 'l͊78g]$K*ŕ+5zHRb\ڤ9@6=)3EaJۇV6Yj`\bmB7PYho7z x8P3jᠩ̎s.I'LP>rt*o{bJ{g[RUgJ"bE;DACq*Vda=@_ _UIa/=VyqbnB`L:1w]iq hRkSOEn-:P1W}MWEZ?xL! ].O({#jUQ3Y.ĊDǘd}sAj<aWق}7Qteg\mFGL@rQ+\UY6z1nw8ۑjɬ3 Dasu/!}zeuO)ӊNݯHn*}|GIڕ6-V0|qPI?M98u h4PGu)A]Jl';rf74FrKr]=`0~܈O/p"%CY <(X %Gƃ*e~˧[]4iajU1OЌ~n=S\C18"J(q\2}l'/be#<YZ'7$DLsrb`aӶ`mI;t m|:4&l7@MaeL/M~>/ՈYǣ : !py?ehB±@"ҭC8iA -ɕ- z01'88~VJ!ɕgZH~= )@Xg>':_a@CKnytmP!A1gCBHyk\8)s.u|t +5h|`$3G)c][}$"j-/A݃`QdO`3Y |@tz([,2W+Fj n *EoHxwZ̧eDH7;nkC[a0V j+4D ϳEjvJsKƭAIF+Mau+ߪM;JM4iLUs'j,رx`xLڣz`u V~Ka ?vLhOh;Mi<]X +8R@=t +LAvq0@MǸ_bt_Wݦp)f:m{^!)uaZ%CD<T %x+ٯ[nXg.b,Ҥ%[@P \Lჷ4UiE肏>BVq%oaE},%w-^׌>MLЖhZY*${w|P^oL(Ae& ՋNą#\U߿k7@-z\Y#!_oTRt #\ilۀ6wlE"IZU+7ƒ:}O9^f{ FGj9IRUs;ނ9@%np{цzPInԠf\䃌 n2q\ƁCjEX% [WeΙtX:LP=YsnhK(y^;ﱚX]'Ϝu̢Mcwg¦x s&ٕ;sFfmE="Gڮ(NDOkB%xFPIs}fJ|atv:H/h3djbQuoL&f_4dJX BIq94U*ZY]wK 7h zb =s+,*ڵ92?b $ mݪfV*_'4r„&W$*Jۧym H2ˎ:BC<d"v˹~L֤*%ڋc94`|O5?Jjy O /幗+//iͱ.51=,B EuKʆT(Gd"]7N%9="շsbJP -↙UY}cLpeODG`ݙ*!Qս M-~#!rͧo% 7u5L#Z۱;|0c1p{'[Ps5ADĺ%d!C;Sui$8[^~pSK12Kkh[=\`FLɠ Ry,S'J}&ђY" Mey#dRڡ=E?+F虎4XegpWq #Sܿ粒ĥ$/H#xf{|p]S[ImV-õɎs ru~Q$fy߹h14ꍷT)?ES ʎgݪ0mîk z[ĸ(.Jp<Մf9Q>-DN9E'B)U5KEĚ|*c|z3,n<76ӽřc[R}tM"FĢ <{GC% $`FiXSsRGY(Sz"ϷG 2H&Α^~N 21Vv T]\Mb^&OFʑݍHm介>D>Qgͫ?O<}XRӓxR3~ 0pUMvf?ϒH: T q,0uGJ}4^ ﵻ1|M, wi[9Ak)@)y_#>j4>u̕Ⱥ%AieD}MS!QBFXW  =SySC咚vÍM-oxGkͷ4_;)\,6i; 3!Pxxs+m(Aoa}b?mmy@93(6`mK@]Dj=XoB2SK1=B&>@(g&W*$vQ-GK6DkcoM-ϝ|2Ѷ4F} v[LP1|KښxQ#3^ JN SR(Aԓ[]u5{?(Ô[&UpC!P lg+O̬ٱcHh_^ƟVRE90u×ƈ bt^O m!7؊bOQNvr(Xc=J@ֲ̟HCDIM|y<֏ǰzMf5@Qv`|pA<#ꎏ`ޱ5 }=?],"!HhKY%ʐc. >[iRKA惞 VB,qyxm8HWzumtZ(C||[JPh}YoȓXބ8S" {QYoj+vL`(2a %0eCA^D!t'{Sm 8/jAگ4r*!QKk vD'hǩ$Ep S}& e(%!F}rjeο47o@o; Qg-| |*mM@~sf^kQLXԅSi zY3'Nʝ.DcQ ZHo2+G3-P[?Hqa[ Ļ݀ K; `4z:?esӴFrט&cNp%"n"b&}M=EOQՐU=؞˝3(.H*F3&)FT9ag'{f3C9Hy>Jfk X^bU<9mV!?k* O %Im:%MjT Go,WU n.;WSv|s\$Q|֧Ni:`xq hNd0wh6vw  H_"AsRC8]sZ.*bw?C\0Otrξ ?k@ݦ.F(r`B ҋ+8e.in?u} xBer#|>E0㩜-gUey77\l,$9~_iZ bl Qs'jx>܅v=f8dc6-Sufhb2hf,k#bO͐6dg\3O.#|aBW[}>Qt_fJ&iڒ]EmM!UK1:CVF}eRpaoV.Vu߸8;*}ϗNn L~S.=7nj~Ip3"F%5ofn>sbF]o;G"n++]pӓ Y?Qku%iCJnJR<~NWV:d|=*kl-+/tL PxѲ<5fA=2BȊ,mToPE'́к?4aHJ&u:]рmftx˴DRwߨ2 Ehxdi19r*AM 8]N9@l ۅ%ۼS2m닚%K8JCVOUXu4$ʝj''!|0@p2w8(ڃ 依-B ESw$R._h3(63}V-|Tr늁6NO^ r0>MNOnk.*ّ0YmF+08Y*c(nÑfx*HGk:\uH[?U s u*q K3" u~41$3 ,_eP>:oh7W}Pb+-UN>H{A0L'Ƣym͙ F^n=5|"2J0,fqކD?@|eIk" tD(y]|yͼl J>PgP_UQf5wxVUɆE{w:T! ʷ"1/xaB6r8إQ8Mg$#S=Ie+|?sLΗb]_w~݀ğ!@qoTbDA7 TwV@";4 S)J;Hb1"3R a,l" *nX;/cr_7'EPfA D^a"fks7H`ʴ+^/Ɵ'Sߺ[@qN B COKSҰ{P?.kւ3ˣjf0noIrm 2$!ovl.UOFדq3CAo -XM5nGZgŀW 305+ YNR]a5H)}@]?͈7 fKAƤI g#in>G9mפN"ԠƍB0&Ӎx^AhGk1PƊӠy c.ay5*,L"\U=Bw>)i`QǴ5 Aħu Ǭ 3NpC@9єJΉQ]^LKAsTڭZ$3l\ڼys@4 JY)V{D+$ t7~syIsc  +WƘyƍhHәt6Ó$' 2?!Om%3l־1^*Eގ qt;tjAh/H.olԵU]wvˋTcQ/PьHڝ9ºA@ /_yD+ /bMIVDFֽQ#N+ }DZ:7hzr4 1]V DgGxb)8tQWۭ9{4A<2\Dck<IjÕW"ߝW|qRn R;2}\D+&F_ S+y|i{o/D" o ߦf86 t7.c]`Zi"7Lo =k9S_cƿ3M1縗qY~(:z@HW׽o/Ѧh̓gq(`BIsTc1_AȜ Z` 2~qjK|xͿtp`d31IZe$zeF&}GR+|4f)fК*^P)ȅ[>uФzC5oE?5=ek,佀$ L kDCB)]?V8wCiR0w#pB=$,MŹ W(>/&6j]rA;V*N*D֓r'% olG72_zFWwGh-0t!TGZNk MFEh-(6P$:&{Z@/ $rF9K}fV'HZ5z($Oܽ?k@*GS^%Xx,Z(A쥦/yV_wcgaԚhTܩH/oNu9Tʬ7F!(pכp ,JN8Od_dA4L4+M[ֿLm!;"JS~\~]6uSmr W2a[.ӛT15$gb۽aVDR\<#ȀN~` T}ML3 ß[` :E fj:x[@wd6oߒk`d[dh&b YVk\vi!umq"o0 _At;Be.ks5eϘmD@'I_Ƨ?B6j˟8u!L_zBi|L| _D"mHY1Aˑ8IŶ;5K;I*Yt] <$&ҝsh$&`rS)R_% ̲m`X$kV?䲄̂Ps3"ܓ1S$Z# 6T/*t 7qYd Ђ'|xy:Q+ޠ>32w",jF$ aL cAn̾"}Ҍpe؄z+PCK Qy.nU|A`ιaR)⯗.';\1pؽh8a< p7Еp*alDE3jE# Qzj͟3aWOђNUJdzUCsiG9Wt<u^2*L[WEwzw}q~}ThH 2KeuXRoKxz2,0~%@O(e$?VykˁYdJ ozzjRQ1os]\9)s3Z_)8+-wJ;c$[r?Mmi'#bU8ث8,1tIqί3*;lLHWPxN8?>F/ #3hoEԍHzu1{3} +(ѣ䯑4:cUۨ84v't]/&R^'Y4(&U~/lXnT-SJ1R%$D|9jY!W19S9 a74aCd/y*`S)ŝ]&=U@8Ifʗ 8;as.cc Gu{U6ags'W /M +EV RY)R0qؖN <ȃYeR q}` rjb/R:?Ehl1'I7]X0e%hAe _uE@)슬}`ۓ2ymcTMI !A;=K zFou&[uqWM}݊8VM `e9g>J*Uat-)_q#lg5 &K7wPDtm :v$.q^Beejn^S=e5ok* l % F ؀NZB HgVV6i8GHߴS8ss9Ac髶Aqx)H5$budtKw|_$q?BWeBѿ NddξIDj|aljE6" !9ܰ2vfQEQMCgxeM%LBA"ؗ?YϷ6;?=U Txg*sWek{ lU [k墧2ɇ8Elv]#EGCl!t𳚩c6[vPl5@92{LO$ie0'. vmi3+bۤH·_3;8aܨ&%d*},6Iyf+% _^Cփ"-9懄W[m\L?͗2mhŵ N20ZE̪\'AnHQ%gR;RaV> $Rhs޷qL|зa5٬?oP7v %!k<}evT?`koHV,/0үad. ȹ]ax¡tpZE[I_G1(&r B;æ̒0ZdVod"|{{4IH A I6ҨaʮƍYۂydWhqli.g;$D3Aq0LŞET2>* I# +/"t[ʵ7Kq:h鳔OQ,ad%Juu*9Xy+Zc |m Y.׷WX ]0AWaBܱv;ҸxW]'i 84ںc9~]=lV#8!>eCඈ1~d'Q՟//4l*U-T-e f7Wm%df$T׋NKI-g`lkV379Bq'6+2KROcùeF\?(z3-;-N49ko3&Axf!i(P{1z98t;j[ᄸǬ7egp,.h YY\ 4ERșt ן,Eܝxͼey _(YW`|Rh _N~dI <3%͝>1ӟ_E60PJ\׊*߭` sm'jY48P%i^݌'1]9prToQo ~;{rP!2p#,%uteJlJ •)2Lv֞Q+H.k Np  6gP:)-Ю'?PN%$3ד&4WDe=@2;SV½E7}L牤:n8.fIDYG|I q83>ok}Mt&'iDo`(xYXfft+Fk W!א$Ape n ]s% rq)}#m9`s^n6j=V{:Rp׹yF3G) q\h7hUMUmsl}FUг8Ħl{Xո8rqi "l9)שHtSM\ZedsPr.ފv|Wk9m_'MxIW[[aYM o8ےu9gɪ GS}%E @Cu'Sd'2PY R` o^ݯ#^˂hn 1"ͯ?Zʾ3Ӄ֮E3rS2z) gn w:|[1w0y݅]-j3VG](qyjL+%|i<>7ݙRaW|";f4M} ߛdzD,?/--TDQLKp{ Z^mSHER,XOrC!a ݵ=nU٭|z+}t4\K %("~E!v>ZoP DGď1͍ᣐZWgozKFӑqUO۶C: |^XU#s$QUX_~q=Ù$1ݐ! f YuW;B.d'كB \C6@pF* '>]W;{RrZ8a;Yx1ӹ XdJhmmgp B?)6+':Pp ^"hG}K [12Igi 7tV?"a>(*Yl ь{n&k$ kRK hd;-u2zz/[%чm]LJbWh k0 T#ȁnץ35>i8 헣.Ÿq rFX"2íeuc1Uoì\4n>=3Vann"ǒO\-t2-{'}smOnESm9 *K+ AnSƥIn.3g>㞣 A VjŬ~#8Aק&ň=3nC~}_y=8+J);7|Ȼʜz0⥛;1L5ecp}fD |X96kE <2Qѝ`&y\ȊˢU ,?i$Ypڏt@m/\΁rf@+DA76\k IKvv1s6$9CQMNmqfi‘^.c:uۈBm60 hC+BcOb,A?m ?g yƗ>B7(}V<@(- wHO=q PY8 *h {e#,=M4n1N rG(+{Wק06藹 )G{y;Ae7E-8Q#̶ `_i1Rڒ!{x>ET.ten- I4, 7 ' tECg9JXfvooǵiW&Ay?J;+z/߯s*n?q+TPaΣ"VUcKJ"ȿckkwk6/MyO)}ZPNmNBs+EA$VjTY_0LH!] Gwy5zv8j:ars@och1w6",}򠁄!ys⣖͏h 6|m!b |-CdQB(afB=CٝeptIN p^й oIqvFIt'~REm29@y쒵k~Glqu1X]Iݕ(GaUyE4#  ~V4zF%ʄ #pU5=Dj92?f}[>lGsAS#,F²rCp$?;-‹o &n9]$ehuQ>ǡ՛ѢnVFΊ,zu`> %BC! FfdbjF6UKW'(hre=b)+^kMؕŧ;V20e h$5;Хo _'-PԐo8ߡDsFElEp F(IKPWyԢtT6GIJzUDC/P$b!$\fzk)bR)GC5y8i.<|1"Њ",?ՠ嶢rF'A}P7E9t*Lg$ g"_rt}zn#!cbY`0#.'aqtZڦlw)}.l|A=iC%ՓSS5f0f!btCt,ʦ%\3rHm[0^.\JΌշt>2:(+Lu܍`ٵM C[}T.Ɛv2:XG -pl;6X0+2t[c:A?',+iDb5 ׆H<ވzn1.$M'"ϒx1) G5EF.(gC/_ɺ9iTGTQ4!r^PA&JZaTGh$dUr@_;^q YkSA޾DX϶,C0 miMF)8 rM"l Oi{`ϿmW%d#dW̲]Y\na yIا66[Dl䖣T(L{_LmAV[rk8ZYb\>bkoY )籬B}V-{+P6yR`RҊ['3tHƠj%@WM_eْwxRjp>b\@$ a_3c_&'7i5*7&,eU nlC#y~jy+ھ_lŅ,T7q.Q1'D`Wi~vgOod V;ue)l P%43#NJc %k-REi/0ɜI@9hKq&@ ;ҙnڌY}7Cw0)[]#@]ea7@R3ɍw]Ia#|Q~\Nv\kͤߵ&䅪cFR)nB-۸Yv ;  /0疩ATLcgV۩Л!}4K}l OiҍaԕGZMi_T I8^5e7~Ig4G:Lw+28:;@np!RwnyKbq:T,55M"aշiֈ*ceIh4Xy[(cYΜWn{9LXESp}+}DP'UGDY!`؇Cik?pڲw<*D"v<6 hM,z/U'zsV N[ҏ3NYNnv]kǝLl:^7`w$պeNa ԕlܾu+avgjao1'2,3(kD e}F_5qfY( ܈s׃dqQߞ>H h|щ"ӗ380V/cO_&z\$F`>&䘒9)gG:Ï==s9E͉W1oc Vr Kҹ N*{|p'^~9#f@Xn7v|hk])@j'|ӯˌ f5Aq3 sȯ'+ߌ*pܷ*#EL7bm҆_\c99k~#)^w(,5 )_V,o`^[|t|,kȒ_g*_ў6uO$:q߄v*$Ox->ėTBF^%+ u<7FR Z LrL"Too<(lXu}v R=TJ/}&$_]X|Sc:yV=qylgnlzS!>}}鹣w4@xqC1IAn߭bO/3<>DeD]~clLЎR}p,*`:h_U6zMYD<lDM9MK@$1q;QMipqy9!(\WԚX⾐[k?9XQ}&Abmi%9v'jXa\,_jBǓU1 @Eldd%h)U.-OY>Vgx#)\M3)`pZ{D-2ZNP\̳x؀H\0Fd-?&taER)׻q.nUNt}"xj*$r^#rGFHn2yN\@(j2G\jK&0|ϫaH]i,|sK.0,LvCbIMܢMըAAm̅7M~dh4mT騰X}X]ޘ:͝%\؄Z7?DU,e@WJJe9[m@TZ3K8?IG8GwDys+lI%XC;%;-c] zpF }> vQJޘge.֚殐rBSmxqZuo̘z-xszFA = U-jzn,_VY^֙|U{pvuzuGB'Л8PPd᪹̀D}X@ RaM"u3DDX6)gݫv yI.CV{ ;BMc o[LG7$17'ATKJz#J9ѡ>cfșM'HXDE pFbLn_ h7DF[V TOy/#>h7 VXoWGˮftJUk<,C; P9iRpa]Lq9dSߢfkz"}.,+F7"dK.۴ Y >,b[ Uf$9 o5 }#rx`#DN8b25~2U .Tnu ̏S!\T)@RztiBƑD'Pͺq! Vo+ہZ_ozV Lk걮O0怲fe;ps᱆'v kZ~-4b,;V`5s[l˸D`ds1 P9eZ/khW]ԛG{mM*Z$o'PZ:qsޖJPaZݠbĆHn*Fz]{Yb EڠԞ8xYka.eEݻbڊBEE< : M;=D42cńt ^7Jkevt} mA\wr'hR\xfH2 5qf8=<&`M ɹik%^n̿~ iovؙ@d3@s#fq6 &%5ȋV?P8b"c Ŭj\kdN@4ӞBVZPQL)qN'nSK2w^\`\M T|+! # h3U+MqG-J>"wMG=:To 01cOhG6AWpӀOj|(TzOAb6Y)h"lيy6mRN%C0gx|R& +A)Ѕ1}cر ж7:ZבZr<F7-T+TW2yj¦n;YJIFANtvKvH,w[z\7G@5gl6°Ny< AY6v)7ӡpn-<!ɰvOj?Zf]p[DZ^m~FI(hjb1ې*Zh֞mn(x? ÿ^ڢ9lhd;^#)e&}O']9@cjŔvՓ!8J￈0 A[:Zr ^TMf+il ~~ϙᬩ63A0̬ Dއ#D]" ̀tc7+dyup,VG Q!J:x u9r S\<uQ ^k;tw`;xh>AkW*eQW%j#z3'ݶ4݁H TԨMԉVW s."HkR]m2^+neBA%#` X $ rwm}p@"!F]4^6S iR7{R2h_{䩯SJLF2㛻{XUQ_šQSUJH4mGz<;Cr%:,j[A.HzRBkL[,Lƞr* `7cSHH4TarcBQ%g;*t{Oq`NdR+1ks Rd/;߇˹cw<JQA;t) 7ٜ7C_5ZY\38@*d!sw_v֖;?|7`0z~ U㉯b0L4z婇;5+-8}3ni;$Z\a9R_/3?"C[t=l!,Zڢׅtu}w*ݷ6ϛ R2 +jV|"C!{:`yMZ`:i=^M &8(yزCX:hդcxQ^oS&ѠS/?o_Ҝ4;2%Rk'P5ڒ ĸr5)aB>|7nE5Ev" =@<ky pANLl  [?Tqņ TTYkݿurbMڿW"~<"v kCBk7ZHcT1 O5 B}+quC]gZ)biMVq268!G7žA| (W\-9[pAFRjԴf#KwX?lƺsSQQ8if01|(z^w-QpNY{<<%ebY"YL >@=`SWb&&n;UR :;HixM4 Vɒr>Ԭ48a(k#ݴ\/_^`ш9? q\Zَ 𝟜MM^ISI@-ꔘõG~P;X}6-g]9.te:^^P > \#<dWb8W6B:vf z&jl8ՠf6G/ٹ%=bOzS衴:STstÈ}F|Ax-ICjMB+% n!w#TBIp_y7#"f?18]o N5Qfظ.ʈU9!),J៓~-{AkuD>hAy `IZ4|'ޗz,_ :!WaIp-IqN!JEf71BaO9E#Pj1e3b@W4{$iuơyRpR%'r"!ՙlͮfNV6Jbc 6hTh!+upR@RE 4nD{Vav8zKx!ByٴJsBo?SޒY 5hP5pUɨ7Ⱥ{:\Lr`Lމt:( b"_d?lg숯Fj%jS Q¡Q>&/Ջؒ/jDL[Fؔ8y"`eGw:,A`7l;F䴅Sy9:FctsK[,cWD2%%nLd4in9"fM(A''| *A.^g"HR5/7zKm\:,D]Ǝ ~ވ-xo󥈁CMw.cYKΝyO ,[艄xk[ t]9fݮC&̺Bw2}猵@I00gTrX( FCx-anYW,!8#,dܖB2P{ww9S+`H 7L}YkDlRVtO4(bmR"Y_[)a$ $t4+E*3V3"uv<*֍ 1d!*٧Ld`~LAcZ y+S ⳇi'BYƗ.#wXNbfzus$Q@ 1!#%Agn9&^ȨLGQ=pj2~;Ai-n3~OjI?i}#nV쫯-b+˿nT(EיZa^eC]O^o Z:@Z.f&}ig2 scy|=͙LuCn8M`ͅEl]t0+g]J֡MBJ-GvřM 3Kb!oS]0񦂋(ā@%NU,NT t o*7LL|M}H@Jjb 0ԧ$02Qrkxblŗkt &}E3Xu !ل$Ve W;6#ILeyp0p]O:Ll7rB!f< |Rɨw?d^Y˵ I[ DHV5;qY(q$/ o삽(|4, u=m.|VjԘʬ =Z/)=#ʴA ϲ}9FhտJhU3Y.0v\{7!8v^>D.Q>d"zs<{qW"d')% 8>MW(nRӄN/\#jUVoKN^Vy'l%K 5\\P.j?^LYCuN>/Y@@{SD^dI-|?|:g rN̯{1BI0a@.f5?䔓Yx);U1D}O=/u2BOPsĶ>SeDtA+ow|{d&"p7 s8R0B"9@go5ɷ_EێET\IeК>Y]9 %=ާ`z^EZ0?[8<2U|ugs9oeQ{/'z̧‡3wDc~oܞ-;Э Ifѵqt#>M8Y'&R0n{VOÃH!)j!wDR2 OޛwheF"L>bΊ 2 xGrWxd}aBA[ jawaʟ4o 2gX0?yVaL3]o\qC[Ëy2tj<5"îKJ4xeUZb"$ƒC,H J༲*Z9My@r7v[x5JEG"'W="{NQ(gUd,'G5G)]p3]= Kz5JR+Ȳ9 9IH=o ZW)|[U 5T0H(43 q ~vf1˹q7ꑁ_@ײh5@0,Sb1>YഝAio}Lh譾EtA?:Av얻ҡ' sq6YcZgGuG!MY{Ֆm]?)dld32IcjoPFR1+NHz`G=5@!h\Q{*qV a,^ڢC]Ell)OO~rmYbq(U?'ET|SK-lC N:,j&?l)̛!ؕ5ZՒ> [)Vݒt"3^#,9MSMY[ |gɰxb No_L3n2a:B"&>P{/~鵝)w%s캚,v1_\z]^G߽2V ۲/{2|)TT6\'>A^xuXMA Sj:(b݅ y5H[umx*GZ,jiM=YNL/\9i6EE㹏VV?"'Gj2XBv l o83tyJޖu[$GY#.҆qU ׇQ, GTY˫o.`x"-P(n][-Y O=$ٱzҷ])7An-D etxj'99ߑdWQ!K7ua}.ޯ{ T tpDTl'sO8@idlF7y,ߜ$gz۽ {0r}=5@nT[zt.𛞭e]ȯCFhKA3~waVOO "Uw-sPBoRaՄH&`ސi"\$ _2mJۈ=:-.F"Z] pRHձۂKVw4=ߍWǕdc;ԇN+,(, QKR j?=)ˣȩΙ~O<8_^Qs]YЈqH7 XS3፧D[]i2i qQ$uW{a*NVud?+R16$r7Q:*OkAf!+5Jgdp mmJkhج ɎRY=_thWۯ$zƼ6Gn̚)Md /4*r+jqZ ]Z `HI. Y ~3NX$Yu|`ƛˑ8̹屄beoC őmKkвW]"/2b)iCa}(Kfa ^pGoB!,[z@!蘰_RdHmeNYcdSiEmٮ1:~;ucc—v`an mvӅ"*+rҀF K֤=Le;/VrnS@d5C_7N[i-CPr,b*6THSӍͱކI5@v0餓sw,wl* wS'W5D4!AGt1pR(^kηYyz> vs`Zk8*;ѨF4,Z{gm z!ߘOu@ri'=1 2"͆\E'0ew`Ш$h13hEEdwG 6ބhM뱁^.6=Dm#0"T"+`XVm2 ^R?2}Ϥayi/L^ƖWxܡi+7+PI@|' 9ߐk-=d5+ {̹c PRp% mBp;wJxNRIHcsDx]e[ h _DPҚ_ɰ8T3VPv6My{5RH/,:O%P"n߃v(/C\?>jWcK63LhMN探ٽilUp?%>QocaXIw&L˜ hxHSF?G[u#;1U(EXyh6 ԣ&=TV)+4uo3Kv2@ê)uԉˡ5/%fuo*\zHc(M2,᩼H3^^y uKVeiRAOrE! ?(ެ?'=&QJmTph9ow*4%*0N+ aJ<Am+kw5 T~ZDf!ZA=IqM$E6J,Qz2ubeq>꧇+DV!=c0=2;bIJV ZS Vœ{bX="x#s EOϺ#֙wI:R8}:PR`?J{6䚒DL!Tc Y+$c\/l.?pӨ8|(==< CPCN$!7jQX3#;3`Wґн4 zL k˾ l pn0ü8]~E4qt&D~cy8(gOsB<p|v1ғnjUdfvQ=P8B̔K,›w|0+Kpw&Їjg{nߵR8}NXshuobN>7)% ѦPg~񯦵R3d}Eބ #Ї] G&((?hmڤMk~PT79 AiVKԏ5Q3al]8Ӆ,i^yf +(d>;q(:YՐtlY??zr 6U[\zhq 27b}u@RF yCnbev&Q ?vX[k{PTW H 1ED!Ue§n8I ;zҫ@  hm[9.$!sΚ];=Ua;OO J9 o+2?zjQ=a /'˵J"L7$^cьiV1F1 sjGצUmTN.DcЌj-zZva\s{"3X¾Z}r^6DZ +pkT~7 'Cmߜ<h7FF=ڛјrdϺ!?tVzbdt|ʿ_[-&/x*D5V$_+bzc(iz.072̐!hEON%Pd$ߌ.?#2T&_׃^w$Siٙj>%ѻqBZI,c3= =Goʒ'1ELҾ!8T'YL[%fɯ vx8+1]"*)˂ l92T!ڷރ[Kfn<}fO%qh6ɺ4Q^L!!q?t :3PØiVm{rhWjv[W7VH+vsPߎZ & qlT)PZpkp1oFRq ,C&vԏ,yS #sWrfS:VxrN"3.e'#3;TDMF|կJɟ\~u4*5:V:k!$YVQA#i4m,49(q%P˹-5+A$'MĄ2;]mme<Bo d@QeH?=.jKqXNv㺤%MUF1J`_D g H}SuPQ"S8(TO8lXe<$()2푽4w D棘8޳ FzC f ]9Zp1 2И}dk aq|eo <.Xԙu/{,)Ԟ_e;S:]}-A4߀aR75U@5Fvk>4[͢stƇ`/b?窣ٱ6CjjF-'h;UnZ]I Jtd{!h4 nLmc$!@@*[GN#YBggr֚zT[@7eʲl mm&8OkhΛ7r뺆xl! mě8 :'ƜD;Eˈ]T%Y㗅#(NSr(>9- RGAق ){i8`8 N &oҴ|5lӣ)@[0M> `߻ʋ%+y!e @ Ne@̙Z*~f߀-L12d.9?D~b'nC7#fkOe[zc6vRqK>-`LTIf,q{ 8 cg0:$kRY{DB~ y]#m@~,s玠Hx*a6)[2=EⓚEOСQ4->MYHHc5x:r,?iy614o|꫈EI̜k@M6 98.lI!܅[ 3OFhm^۳RU!1TB |?,]ٕ]a2lߓx&ʨZRU7~ь^dn-ל`Uu7cw:aOPZ o|HqD p`Apy ׷/1)\ ys;1K4g#+Xm`c.^g4`S1Iǂ:+}؁w RԐf̿qru'9u,R ($+v`4^*k2ꜳnA4euIG%f軕T+}uŅFnEUiƟ?<:ȯ4{`i$c/aԭd aі 9A{Ta2tC&fߏFe{Վ4fI(D2)$A|N+H H1@,P3/ .ow s,Dz}`w5zig$*wpU]Pt!ztJ"^ɨ4iʎ5?;ضNs%~_K KiU{P<ݑzst MԕbLWOaBA\L!0\l) 1WmӰ?B.tSGr) MԶxZx,^b[-j{ٛN+rFx]8JʆmK)7Qbiqe̹͞Qը6 H18JOJmdZhOnNXWûk__O_C-b|#Eѿ`r&HuQ ķAo< 'p f,r߶㜳soTiANo"Z[(LxOX-Q'W ^`)>%ݷB`NdXؤA4AA 2/PnְWZ 7tkdd%*\ Pl @z݁:;x qM-H_,d|90T J "m:XiFLވI[:d+K\0lӈS(tP@hDaT)rw}So/Ve+CN I%,&IU L#L|oGj,Xr,f^gu7H/&mz߈bmWVT߭Zʙ`tyuCՉ 1,$R?u")_ /HU$^ >~myRSr[M^RH"!S(VA~qJCMj`3|X-F32hT3$nٴ -EF%xʥ3Uxk9"gJkѷX:yz Nʙ+R[,.Ɉv^I1qB5|n6}kTq k7F1aĞFVoiZH'iʬfF [|&> ;qkCstOclǘDL9٘4XI:EAX1@ryۍ#)/?ZJNڜDg֖$FG;xUl#-z0/zeO:ϣGI |ºSh1o?,E~:d킏 o;| 㔉)[Lpq]p=5]q[2ɀ/B; I=r)T !:?,1{)/QEn gzkľtUQEϼ$bG҂i.$}XEdQZt.w9Wa /z; 9*3q5%f}$VO\ggiti+5cz3GIRg UETn2xMl\D{A`vT$N.?@N1ޯ1U.?9-GC'-bEO0#VQF~}ԑW̴l = 3(`e-lB 5&׽jM3u6ᾐi8ᚕ1l(KWx3w0M] )OGZ#+fش-zxYD.yRࢶA9v^k|m(w/qEŠ5؈qiD܌K,cƛC>g?p5VaQtf.FE 9Hd| Q*pZ# DíǃĒ/EnwX[} XWiPE~a|BY}ȫn*S0 (Kw|86:r[>G q,;^w-zM /abC UBX7#k $zJq2_9dww s,Mc11 rs/W";!00C ]ԾQK")~#g! IS5M$F(w{F=bp( GeF W Li>_<bߞ8]I[ag?(~?ંOˊ5u,qBzJTP6+ޜ[~`R- ^j̷B 5^jaFOyhv]0JOŪU1lIMmm\X+D hXzG\5SEpХE,-f Οr@Nq'Ng̼0x*,"9k^1Qui0`L7Au Ǒs7qǙտ'P85ȼl*9=NbS@ָ4 ?ĺQbDq'A7;ټ5TL.嬘pp]YA뻓~}Y LC|? &#sSo ٠5"O Hi6 d6\a&"]:_Zr&LorJ/o/OQ[`dY 2Ủ "@B"1YwSOښa.mz^pxd\+ i򓤛8dRD>LvMЏ80U~s{,E[b-Up()+[,VޟT-?Fs0_/Ob'CgO mw &*5 s4Q[G~P%D3$?i jn=iAS͇m-2u7m*f^yJ]:0)ɜn>%3A^G Ym i; _0l ~184Mt" -ž#um ,ݬTr~O(e@?0lcF2<h <#StQ61C)Vz2d gJG .b{ , ~p%O >\HOVHDdUf*p삻);(Fel4?Ȇ|[ʁ bG|;_Z7Őђ#)eT./8r 3G,+fH9jkF@90]|v6OظexpE@h^j. GpBU3Ry壖\N*4ZNۀmƳ?ڇ$~mD6]Z kJjMs: [shO-[Zs}&b!#AVDA  Nsr7%N ÚK#ek׵L,Ui آ0ƾvM[2PI{`Mzl0MG-oW&)B7O2\h.ji1+Ea2H8sljmHu,[0hdEGyY^q<;jy}riȟ-#S0KW1%Aq?QK&לQB<1I숫#Ѿ+:"\!OK882uG# WDE& ZGJmqX$Ų!m0~a-ed0jiqJGMAH]m':aA7 0@ʇ67ƞA.3%r]J!Wd˙޲g(?HjIRg#s=RзSN" Ϩ 䲓 oqL1Q"dC%jRDA Y LO쫌tvL ی} eE9q 4H‡LF\6;rHf$}h"ab_|ܣ`H&>WDVce)C,,d4.8f*nK;%inegh/ST GxX#oXx"`OB,V;diVb0}#HQ}HF$b{y^E+[] Ώ@^o.qAɡ x@>ߦ'yBυvaS-YmkV: EE {Ս aȦfsk:Խ&mnuFחoɦaH՛}mY+^ZJ,oW[ k=@?$e }1/Vr;av& ,܋jw.ќwz3f[TL^4G\%9]c`>B/#(sh‹pp,w}5ʰv 5qCY lj$ ϼhňxDsb?_+B-?YD`اTX!08,7'L*o \ ޒm qО..OÆ:¡.qg$8  NPo#aSjdg / kZyd6"NQ)Уecˋ[ee8S:rӪQL%`4A\`#=\lUC,.6,L+ᄮ^כ[-)jjV pV&oY\g3{kCLhw: W7}L 9%<ab[V¶UepowwH' (iȟ꺢]y05]NY`aYK`;P2F5IbY52lD=wXQ, H#1[zAc︕yȬ ݬ,(( ;٦>8lM%RRpNp]0 i'B\Z-I_gSYl5!{Z _ӲmCMTD'! HR.iŧz.Qzk3HH9V0 3߮VjN0ȩSo]2ˑ *ɨ)U<'r38YS' ]J]LZȏp&؏^,?/(#/XaRyF30Ѧ䷝0x5J6f`pNq<49}!T8edG#͈jTt'aJ2gUôW|!`2ω@CI+3Ƌ+gP<@1'c/ہ%Ҥ2?&`:L!'?\-'b2 Ce/F @`'!MaF$JXl#<ҡDU)0BA}rR!{d0Bh.b {.RIQgYp\VYp&( (bgYA!^^(X|-i%o=kodiS-\r,M\CM8'ftY[i&)ޒbavl-]d຅ uff!Mwׇ~[R]4x6.hI)ʘ)Dw2|ojPn߈eX*ɾZF̪z S[_\ڣ ʄ}tCsANg^5-ki. fev'@ՋI01=g+pWLIK!l|j3ط(_5dEasCX]xN7~;`S󏠭$xi6m 8eg,lcH6'`hx]zvImpKʂ͉D6ڻTMJX\.p,m. X Fh*4;N[pɞ1&#8™3 !Og&;e!^ڬ9턝JJf l93\b*"ٯ"mgv &FѼiԆ#!.qY&J .>PwT.ff? a54[x[7˼KuVW~'U[j׬,@c^@:"qF ZNY9*,' e(I. AesНz$D#do2^(EM`ě9#+<$CkGfV?(]CƩYM ;By.K[iv_,x$e/ϤapZŞ=JG/gviwOO086/?OfmH(cxGuiL xWoCM\'\y1; $(q&gOHYe{2l* EXtvLK`ē.) +АgyGvT [o[PU{a+2sHZ豜 duuS!3 Aȳ-peTv[lme&Ыa:YMQb0BME<6'6 IX[8,gzҟ'Vo%M'y1 ~K%0̊ ml}tΎPHq#w4m~aYxZ%GP1y]X; = +8f-C[j)6&]&50n$TJ<%\^, )}|A<+\ʳP׋hP2NA¤q 0vJu""Iȧἱn&a)#v棊aj8a.CE|Eto _ 5XTW3ZPw4f`W|0Fx&Pl c} -u$LP=bLTh3l.s)>y8E5EBcrpE<#u_1u-ȕ«IHU8c%DkPDBl03h^-;?ې7`=6$BU5_Jϭ}:@և:f3Cepɘo;Aa ҘČt>jB9Zk򙍤'kJ?Lw[.`,%dmM9/ Pmsѧ qtAo/7 Cs%hXl?˓IH.{fQIz*{CLwtv&4&ӷ[[nBk4j>-#(i 5tsn{JTm$7lr"pxHzrJ})lF)r㙸;پYE;rG+S爈`a}!=ʴ6WŸ(h޿G,$GC/>_|jHzY yGu':o"澫i^GAS`zONȳ6R=Pay;JIrHA}|F,z{c-9oO~PYskvCf0u/?8C餺`G?V ͷ:-S!`%P6 :jrBo[&>eٷs!+ ~R\/> l {M{K8i0@0lM&{.Tne_Ls EK{G3*`4!Lfn?hFq$.1b.@1(^ _&^(zL;HW;/z}cewȩPV{ sqs^4:(Y/Й`ONi]%]5WR6/sؿnfG7NjǶ2XГ kV)('8Mx1~,ZO#¹ˆA'%l+ @.QDLګɈ5eYƌjBo/& ~- p%œtEkj{g׬m*ec3vhoL#skNS o} TeQ^0Y>f.ùmhM` §4Ȋ p'RD5l E]c[KW/uGG9(vAU m4EMـ[`T-lZj #K$]Dtj)^JǏk/RFDmu^FrQӟm40IJa8h"0 ?9$Q7eMB3AX@O&$Sk;lHtXc!فTvU>=!fmZ~ߑϟ*FϋN&=8,'زOM|1;j CnB;4(3[/:R7VXtDjQ:e`/7#(1&9t 1}x ȍ!4CT jl%w6+{gēly,o4xXQv}>׋ X/-*oAnj+c?ջ8X]tqx9L9)5/Ey䤣[z_wO1T(&/kJsp?W5`J.~r %wsQ@w==_ *-+^.dvƊኂ1.d9 N@24͍&+yEꯓyDm(凁 B3UfBN]#6vD2Po_KȢFfomI;U.j!L**2 @c`uMU?8xv1} pOc; U;>'Tknڨi~$+LDRJBX9V7;֗4^y|؋ ~bP ra{|s)(=^ aT.܊W) 1ʘԭW QEYx)[o!׎#:7X@:s`x)YTtO|Y@<0T0W?!h{ǞTr/2C51Ub{rcy5f4_}/uM Bh&(cJ36.k7^ R>${;$QwCtu/+9q: ~ 2lV zghB2d{Ӊ"ߏ[UjT 䐀H3upF1ܴ?j>ئ3}8O S5t4I_Ƶ |↼3RSXN+սD" 179ruoY MSעMTcnF0Tpы3  m UQ U :aIqfqeN>lԨײ\XOqtg=6SHG /.=>s~C ("1G&Cƫk-ǚFkPC';L)אHgG|xfImF3]FnNS !Suz$uj'mcJbV@pW ԫs 2"~ %wE2_c|"u,>dB-h6xJElMn<먻T{-` O1wcDbq1}'CiSJ.r9+"@U)Q_ۦS;p¬hZFcި% p k_U<౵KZgi[J`؏ j,#'R8Bڜ]޺ioZ89 s "e51iZm6g;h&l{x@7FC]E%Bal\{J;i8bč_ߛ SƏ&)͉C} !a-^6 G=@nb9P ֖]%JY;G\<4#;j͟_л~ނ9PJuj>ugx]\ #sw&!~;KCԿżZ1T7ST&PmqVK>d{kn4k/0 J|7~ss<F<0쿒Iw>屹G_|W5jtv)QOF+@N!$81}H4|²|NTvE:G&h-6fኄVVxX0Lі cnmp˜lR˰j?1l!=)=FP兹iǜɟMB=҄{m xhY3 “5- hjw0.nٶlOAtJwT}Qj%PULr#xEJܑKIOCi|,r D'Jg{FY!^dIsÙ膥Ry8"%4spGK)J Afm6^(* >QՁT+)Z4t߭įIBo(+(8=9>_y E U_}@^2Oa.8Vl~T&ポYN-ZI ^5 GA,KZIRɂ?YC!M.ll/gRXY>RjI,+Ok񵘔~9XVaqy6_ ;RIܔ?a~ޟelJN쩽XO;XzB0:݋}A#"~I*Yg4gY~uVTsBHB&@lÌxģXa#ְs Q~6=DٳQJI 'ݛW GUTʛIBtuqaK02Z4&Ob{pdXvyBİupf NCQ4Cc[רExiۙj^"7vohJ _,<ȦFH19ܰMwNj?W87WixZ2! Z W 2)Vj5'66&`Ob5gd\"5/koW#$@J~5԰(ި<Z;jg\AYZl p*LFhx6: WMwo6oHa䮔\Gf-*ZJ2['|DtoA y۵4$cg4#Tpؼ>Hc=Xjaj*-7;-n!Ѻ #;Vm>bG/q0:( z 2W^TͤCH%Wʚ@z_W<- i|LTR wUhUC^'=aV|@Ӟ+@^(U97v$B? JeL{;[3!O7b`sZB `vRvu$0&L@\WnEκOpJY]m*(hBAxj}M| X:(Zػk-!a˽Lp oڢ2&ٍnW@ [s?,.O]gs>ث+ L.gFMlMss&A}$/B{IسdtP5m|Ƞ(\~:IpԱTdƉҺ̀r(;}FW$dch?z9 aPlp%*z9ͷT(pj-[x3, M{yHߚQF-AjB^q@*,)a$K< . e.?1'oTJp^C^cu">at5c]?^KA* Ǵ7m Bfr`ur=l&,Ѽ^vƫy)FUhIA0!85?xGX SBXcVm=Wت(w %g()A'Eg78KZRwP[#vj82A,*~W"p|RCSHi٫yt}X35N&D)gb=*I9Odcu/juh)m9a;s:͸ͼՔ n"HƘKN3Hw=qVT:"l ]gq ~FXO@5JnuJ\Hj.9w>3VE*1plK |y%.!sŽ$X[h1⦎; 'ۜg/jt  W]s7)Sm9b*}66dAmՒKF9(j˜[e7roIfիGMsM郙"8z ?T]& daݴ^sҮyBEqnҩMMV, eӾ *HDASQ\p1x[ }_H+K?Ci([<'FW >ԘZ'jtRuش1?t3"f{<ڰ{ldil$F_?7BX %0}X#ݜUoGУ1G;Z@iW` SD;-~I|=і>10’/Yt(bk$ J\OFVÂ@z:~3B|W<; w"Fxkƽ00:5WLDȔPq 8hzu[6Sfgz;r%ŵ}AAѿ>Dnb<[[pUiMVY ?d|l2*v9$HGX/Ir5yNFzS5SLkLEJ*ꋶ{+`YWTݖB8ZS7J?QͧiQvNJ[qM)mmHD <OZsr-*8'RKRpJձ;sT`@Ѵ'lt"hD-B1 zA,dc{W kf!B!:3.Y5/7eסL94$?IV ,a}c: T/@KBh1RIx#O}@{, ё 6+N)W姅E;"*co}5O5fU0|ⓡz c`ʡOcc&hy7}CPSxpE~/}uJ&VEc{[(k]{*$A^M[OE8ʏD.Z B*&H'PMЬIhSB}],P»p0e'M\H͹.1E pG c+|Pk|6Oiz\+YAdOlYJQ P." OB-u71|82=h4ߖ÷z'u|a!y:=*.qmoGzUE4Aa"5bFB,)ԝC^_.׈XlQ!)!+dS#Ԡ #b8:^r ߅T-V<(IˤK-. pء| (݌\ңU g+0!XjV( o ̰wH4c`C>Qia|B3ImV:cLa϶RH?hZRSxbI 7ha& G6!l l {.AnA8`qrKgTslζD Rhj9cLGK;"K|b~x"M}LZR4If@뒿Vӷq2O{GV:1@_o#L~۵fe+T䘄|m7,m8kTͯڋmGa5f JTHD[M݁ݥL##;Mm_LK6F)^(Fʼn_Td'b4Fu{. h"lI㷆ܘ҈YZU0VN=MPF/rz?n&[%jJwfԵF>zkj>1m F90~4I73+/@R(Ѷ<=๔7ʯL<={VV .Ի@rpJb!7r'5Yb/&~mrЧU)6AgJ3EP^5#VuF\/#˜ټ;NH/TY_cK^'#B);< oL i+yBGw x^T}cѧ渑Ӫ}Kz":H։O gæ~U 9o/ay0۰š(GmH@2nFjeBvCWBI Ͷo].|n^2O!oYoey5%gwmNSlp3>3C>8|J  7"Ls-.sfyp2WyĺcƱjn8b"Gf^`jv}/fWRa &nT3ȫyAIN(+$RRPhRES3G3x6:q;Jn}O!;tvT?7/SyZZs`yg[rC9Oj#^4Z Lx /dOya^I^>Xf|)'nx |HNG.;!ɖWD?ȭ#p0V( f!wzh)A[,}yo)s [΃op9Vp˹ AitRt_TPt{5±`5aw5z| eF 'CO!_/׆X4aHBhViKJ¬&ߧV%uJ|uoh* s",!DCtep1ݹRt/0T';?;;CKai4U SMw=w|5ͧSnxbjRS0QV l9]>>5f[s D `'3l| z,ݾgy?sQ vMh0vLBx(|(w륢Sqfc3\* K$JJH}msūgxhzTKu=ҐDQB\(}oOThy.JcƛdnCBZ~Tm6[/1k9)("/USDg~ӹ5QxQnZyTB#/KM cZ}y "o;u~H.l?R1  0kZ H'SpTcb6 ]k֎pl4ySi3\7S|V\Xnp2H58Vû7?uxdxN?ԄB}RaA7|~V TYԡIKffqYd.BO}:5dO !G._i[_*<[8jrFJoD!w:'^:dz}fH]h/tt\ێ8P?)&2ܔT(S;C}o'6ĺH\wX_Ou6X3 ܠ9;mo# P*|g'ۄIv3d4$?%<-@-k>XUs!}ٚ|Dj2(yԈLK/<`~r=`Ϣ} \.%]),-S'_#W=~DιOa[v+1HMu_RUS{/.j=Yq4ˈ|\AK0M-6iqb0b8D/yw7y,V\~I/9RAꙴ'SWk| 6\޲qHa p# Pa]l+CK4Ll$|s4~FQ]#BQZM8QiH" 䵟;Qpp  5Bo,5 <`vu&VQP2,dAs՟HDIّ]*w0>@вB:=C+`MS%z9 }Ov?&}0p ̍:A 4:eG`JMݭ[q^+G_Uim w_&l+W<Qg,}@B?o-Am`z4NcȐ@fd)K:6""$"=% MiDzU|jq8%Ϥ JsB7OX 3ٝ08](ǙBIY)ETPْ;Tl WAj&6LESyXx 3z~QK8Tvjp涜6J|Yֆ t8)>XU؋ͯBCEt!Q1~tIAe nىd[CBm"Bn|m*|*%hU=5HHx4kT;>>dRg|*'5>Qmӡ)z Yn(喩Z[WiU}NCIzoLjYgo  hX (yvX{|Yqd()yrNɻKXXh—ߺ+]M,%M$+c8>+y_/qՇj9+|*X7lMԻ$ס[ L'mgxh0nE38|yY>$/,aO;Vn6dve'Aϲ2lO`W9ƹWPiH|;LO+D:03xmvNRͮ%(сe (&Ljm2|}W55^sM7Wr_7>aїgb6SodM)3l̼63wxGU fVy qK)%N a46GplaGm6tEvkL7&,!?p@G}ɠ`R#lAi.S9`lq}Ev?yFln.3P@sd  ˱l&aa3b zR/Irn[0n`ҩi,4*¤e~uϩnD?ofga{"x$1yAN=1|Ǚ)'Ҝ[/ d6W)U"G\(1CWyz9}WDL0Z(iл*]y%DKF-Ni“ UJ~CH8WF$$G@6=i#!cvE~&J:H{zA b ?쟋 ?3І Y+L}gSst\ ]b͝TPFpJAL0ɡ g2ʧ8Hϛbg5uDSH<\x^*RiAup D?*)4\L٘k2Ճ[g2(xPSaJO_9y͔6yiF ]R]6< $8$$! _*HYi.la[x6%R,$u~0 1Nw1ے4ܑ5Wq\U"] 2,$ k@ݩl`:_&BxИGvjUƠ- B0̧&^šD=Ղb@ `+F}J>X֗)%OVe !nSM&~t`s3{KлP~ǠLȊ*dl+io2 )oۊCEp0r(;63g8{ T6멁;&3Q1?A$a +`9ZΚ1q}Ǭ/lK|d6-gU [/ ֣_`%llDfI_ZuMhӾB hG &}5S9ɓĨ7ԙ:L;#D)URzɀcx#cQaQv.Ea`X`k?1iN'gLڅ_]'>PI7\SL0ӕaIK@qTJ܆*Fd_Rt?=q"|S@J* <&`jeKH$f m~]=^|.&_LV놽v~Ї>ȿ0AYW pIa"ԱHqh|Kp&E "lW ur,}EE6rq'I}+3[$Ggj?p;w'5@d"\.>Ļ~tބmYp"0I9Uh vN3@TG'_zQq쬿NR"}^B d E4+z+GTɪ2{S~0gNmjc+se^r of@P8 87u9t;KV'5%p,1w!cSwULZw f0 Z}q{"|]{pEn n3SNp=4t5ZQYJ3slJin)*OT$(&'; .8d'>d.V-n<|1f S(. hmbKOZϮM ;̤,PB_U̞}<".jűXhM{Y](v U!I7M^ IHүB [aR?ZW<@Y;LFWPwj?ɁKJo;Rs]:j]#aߙuF3k |A˨Rÿg@Jv]wLCN, %" a,wn U54L+)}bE'E0ǷTBqBgQo,`S %7cA_Wlw!cbL8vfJ a'* H8w\IXZ)fS78~hnұZ/29hfYQl)cs(5P[҆ xy3m- K*q$s6mUw)ff) x5OKy,@~ykV`[ӕ82|[xZkx# KVUvGRVE5+,B ;Um zD+ ^p-IB%ŦLP1u-/,D5G`Y 39&xS&3ـ΅_A5AlF$YXaThR"@^(^E#%/wA&8LZPN{KQh+e:7.3,Hm6,8_3( >O|S@BL᩸snw?L)gjժ*WkwcQ$y4V5P:٫;GN#,zFclh֑$Ε~ XT$(5^8'49 ƁUY}H2g=7\hrZآY`h iz)52f2]D4@_'v5[B|  Mm)~g/q#꧆yv-_! HQ+bke =p5 9y"q:{^$RguKRfpLokwJ<$ӽh~DӃU#֙-C=pV@y"?kBOa#؜`f c1Z,}(\q-XQ2f cj!˒IGGéPQܵo@䱻~\j)٨^樷rn A_E殛ܫjW>w'f2< ]$;Y>m(2lbTf\p[e/tFWaRfH2=nkC9Dا*'_F =Ub&¬X<[]z]=Y&I?׏ ŷ/f„K7Hzljoa N'dؓfs; Bc[1"XnT hL|  [sB׾~N{mܜ$@9`1:lpCݘgƆ6D.$U&:e !5Qœ}F'7Vr-1n(6z8UEM@H}qt DP5s:jX1jzW_upL ]&-i'z鿭i궖f /asYTG޴Io:M6*giOy*f_JZt/0: XVr6a7-ߥrDîS ;V3qE-Mq[y-*>T)n;;*cd˳ M*nH?UΊwz&ztt/P$|[o  Ni&Dr')☮0 &"{ALr vb2׆? &p$== OqN69s7C{h?KV 5Zoc:]y Qi`-3E>aBWC :?j{U?'m=5>BeT{}I| M]*͛DqbdܼCbt[Fv./XNգWͤ -G-=ڟcVhfᷴ%TB/ Y82uf~׺mQ8E,J#q 5m/XP}ɐ9NŘ?Llc6t]$qR&T2>\I- >@#7dAi&i3lh.c!5H(vYf7ؕE,4=" i eVׇsq*m"l\(U`zoґk֑)\w@4tĞ-QjѡBzãf*ہPhF*Jg\F@Y}?~acR g>߭>GpChHj1(?^F]Vi9U9fηkYZ\g9yYF(\&(ˠ.]y[n[Ԑfs.1ftxiHA#boC/cǬ%rkPDt_q0઺>;_.D7|> i NɌ&{ixwSGaTy)+Xb4Y#/AZ 0H**&ZtoK :BVΛՒ%^!%ԛ|L|!-M;~Ƿ.,xc[$.JxvJϰ=vdɂ |4f,\WfW^N,( (etzB 6-8aom>ُp1F+`}ÇJ,>QlRO_؏,G5tMe7  }-2Þ/rwЯ@0d,a12dWf5Qu;2u4,&5וD)M{ɢپwM XG]4Mly$R3F^D︀F$t|y|:n*kMrs$J&'V,dDEin.PZ_s[Mspzm," 澵(OB, ۺMXs8NE{|AkBl(yZ2.Uԙ@t$gJUH*Z gr 2qQ=5,~ (! QTr>lGDL;;iU*@6Utų˓=]i!,$%,+^JF3Cx)!+yŲYEoBc;И\N{ȿPH om,Tj-|K} %kKq4ֳ!%z{y6𩭏RGe@$ԔJM= 9\I}IQEd:9FF5z+E$WwҐG7P򣞺eL.?qeI즭N|. f}l~[# 6JP XƊA9@kmLچ1AB AF;E~1W }յF|G"]7V6LKM3Ps݃2anPYBd?#U7YNevu'/ [7 rxEK"{˅:5>%d+{:ozpFiw V]D?3$o r#0`J.˟099g\/;`!*ѝ/,?vi4Y3vd( ,)+IkQVvIE 5tkvIJFKqBɴdp~`}R%-Ύ$i]ީ}偊I*ڈ>P3UbIE ym5k+]tnXh$c}&:In kzXq'ܓvqԉ{6ET.E@LY[0a3R9" "g̥Rh)|di[1awAstt *!*aˀx'zKy eBCA@cA4O%P.c;4QW\`K??%R:,u{I2cP},-vEe}8nz6 C&xCK^UODUKf2FʶWARLzo4*UO(h{5i' D㣴:xs{GafGV!=g[Ҁ .u>dQ֢0:{:ĒH8'uR\q[q&`*bWS[\xNM ?M(ݧEO =Y)-3w4cX~3Tr>/D0|'t_<g.G} Y/Hv)?JNq¶ MZ5FTޟUOy!DF٦wDxFir10_O&АE&5y8rDV9P(F&k fKkӪ6Z I08"~ Tǔ4Nwbf]2Zi 1=BϚ+@'I>u=.~J~.g!ĥxNV0v!#ĈHYw y$#$'un=&Yׂr֤hM 'u ,=iGƖ;͘'f}c6997g<!I. ЋI.8y8<@/d~O}[!P*8 RB늗INڔiq@ր!d*'I6a.8E 0_Py/ڔ݊A~EE^loT?z"hlI/_I_J~)bMg>ap'MD<%PXkRihj :35C*t,I_ʈGFz`x<,hJ [̍IjGŝgAR uJB`"YbPd:>bGW1V5,p;~* 2s=xK, ݠW͢`z 7D;8yOܢg#ʑ (:S}60qFgUo61 \*8<;ҩ<6k#M'chrMrߐ.,~HcV&DMA}78 .D=op ] hhoB_-<׋y[eRӈJryGvT>ui#q_R0e;lM`Jå%j&ԍknbyxx؍KL\>N8l& z}wMP:GtuО0& b fwD8@xͺ{s]LD)mC/թ%:> =R]hp˶cse*6 |RMS;+c%[)3CfEoSA@H6MВ12\h: eb( FZjT7H9c)y5deZXՄ'Rh@C1GMfB]uF&MaN;Oۈnv,puq (V+r#RC1IĐqDۮ1 +D?U?YB_ȴnBp7VbGcvO:l>g])$]L)`7a$X0σP6JJIkJ 1Τ-6AUcLv^?ҳio/@Kt=5eɊ*IԾ1uG:h=7]-%")Ue%}_uo^:9|uTIxg{}0HYʞ Г.F7=qGص H'A)8W"߱0ތtOX#w?ЎE/]TUv|BeʠZן!BPREYra7rxbGbL.jz3&H2Ω~'l%Hopx}}CkOc\J;Zb-Z|* Nu ãfpd҃ds|}֓n)U_rաa?5ͽ8= )Յ&RߗPXQXD~/F?.&VLnwp67T:;03 Қ*k,LFڔ'2k^+wN q]R~y4 α˟Q,G4NqC7}t@ H$ }y̠hʲS }!_g{xՐ,DqSR\R}K||#$i=t:F&}v2`4Ҁ';Z]e@p_d K>i3ayF6붹' % hڼa~YD>9,l"m1|YfDtmEp+u-iюQ Q,Ő.nAaVY4nk/sJa;?K}㱁ۮo'4ROygki,0%9 ;v-oocҧV<䜒%Z2 "}~;<#XI4Q`G%=Vf%܎`HgQ8;2;$\ZHc">+aZSvyQwgQ,\ϵu#-dބtσ1pyv_o` LJ;ʲ`NWl*7FKЁRA=LM瑝tOG-ަW5SuO`wQMKH^GnnMm ru,TN{A &D ^ǒQ+][3%1v١^QB)ɯڛ7LZ K7R9&@i<0q*[ 1able: ۸q?v^0 Kz١ep JcSh/=p /,\xs%ACeMݩ]m!njHjK:eKҾ\{EoHμ,d&# #&i9p?veoK 9ZU@ `ρzSU ]3z"ce[r}˗ WNR L˸jM2#(s;*W+=Բ4%r9\|h hti T&"~CHă> kw6 v,yϲ-f*l1R6 !5r' ɿI2Imbost0'r7p,r-M>,_O@)%DL1eOoMOHxfA2xtE`y;`\b?TdZI`L]F -8xU}g6HN<};[v#mE,$Tt~Ee*9|eRO"%03VmKo(iTݿb-^E2:^6㈼ç=Jqx =}C]sq}ݰ. ݇U#5n+ %g _:,>wy|H» :!YGg,AZ=*AR7ٜl}dۍpKw[:G5uGfDaWKZ!-6)Ƥtu:W1_*ykM2 #,}9*0 tû7 qr|$(P~jx߂řĽªY')oEC ݬ 4wO3/ ss6Cq4 .(DZ!CCMA!)]qOuc;++ H`{}p+;M᫸b6>BG4vS?[n)ՕlIS5Ȗ"?Yy5O|pUnHyҲ\1)B|4|Y+>E Ȃ'^).A}$x V̑Zw+Pe|Q^X%lasv@CK<';,`魑;y^=SZcgܘ_ĥYחuQbskbPS Kd-TooGP9WF:=$u96%ZZ^qQLFXdGKy %"$"$зҧ*k"Ӽ-<[G5+X@4nSlָf Z,k9)qXfQ;<]0l|PxTE{&^-zluSv,?MtRm/C"! \U✐H$sQ÷a6}T,A] qInH*`lc(yxâ𚷬Wl 6a b8#+@Tm>?ǘ5CC|=e\Eq4"O $$k,n $OsCQUP9x E" A6鸁_}-p`7$xNhBjnƫbඍn4> N>\Q{*/vpRżlb$jP=ѾUTq5/̗3UE*Vrv{bJ֘Vkx#dV ֏rň=\q/4z71%S,k7gt`Z^K }|©!  3c|kB+İ_rc/*Z (B\Ja䴉wZ-ّ ^:B%vuTI!FԪN6ւC] >bx  SWoJKyWe\ޮ ײcA޺^Nw!'B|Ta@>&cq{G;cW:NJL$a'XSlX[t7}n}wDȲ߻r cyP>D=1&I׎x㇞30ex~/ԩ]ti~)΢cl߅PQ\m76I1 ܎0~AWډ|mU`#`$H@#_.-XWI N`[bԍl\,5bbº07!s9v7Α?#I8!Oؓd鋇8);+Q~1"!򺲱[OƕHǂoЖY8(Zps &#JcI4F5L*^jj$qX_t;T%ⓘ5vگ(- Vp]8rdHc[N%AFn0>0/7LW%L"S)Vvov|P')uRS ii8a2|5i JObSZ|s^k/ljռuOAjփ# /odUK9eQ־rTsEb000${0`Cd#(1 Jdd %w ?yYd٣"-rڞ`yAczMYH-5yAljD35%ϟV;6ǍX-rK^>*"b|3c|Gca;@@q diBNJPyuݴ-z՗>itA.=q$̽ b1Hvg{K{7ChR~`tq 65׵w2?lɜXE*TX Ҏ[EL`wiE8L T\?Kc$cdf]fЮ=Ru3i^QUqӼr8%u (7惠:^;'J׃v]u=ySkӂW-PXQvNF=1GiY}V(قZ'ٝB=;)۴ºy*$~EC|խ^ 0%چq ܂`C: 304R!gݕ/_3 ܚ=M(ab~ PyH=XbɠpjӜ)6zV {#6sNc:A=NK w <5\TT84IIMe[5n ]o6hI9dM?rPb;!c;]5LR R.MNos-o?HEy挒XUJi˘8.c XZzbWJ$o2 C }UR\^*jEy2|{SCtwu垣Xe֋'oeX86TpjG#LC`FeIهk?4+ġ, ;%@U(`c^+9ӣHmh ZCqYw?UnVd~ѓv=K1͹0V׊2BFJoN?)QjQ* A4?D@y!RM \K`@}r6Y.b&.z߰f{'N?k&{e'w ~- {7 C^.@rJݠ v#K;kSkțJ%F>4X1'P2fMѭ֭Ȕekp# ( <1^DR~hg5Km}M'(9.6F#.,u)*mr mףwv\UI`5 uLNFF외\5 6)92hHgx "!Aw Sn'+yP_.9zbuKg3|`#lh/(֭NA[>K60)1|ߗ聳ƵX A|:!~d9#`'#عv52hb1{jYoӜA] g1s $W+N/N6 k܃zk)Q8%{3!HA,ꑷA]%fO %*1G?,*;'>yuLRp"ʔeY,V sg^x(g@wH)08*TAcJ쌎SW@2@='$?׆1:0jOr>S5E>jpP mO@U **;Nv7oW ?%{fz,dg0]rx[E29MC_y6dkw+Dn"Q $xNC E6A,ڄ&k?QB-8mYCQH+,Z\)$"//]"ؕIt;v{S¼=1ÛOy=eAԛTDYmD{蘑5>Me<nw<{= ژ]LLΚ]q1erƧjeQ)eAʳ館ɔq!DŽ;/MNPYqV u$\@c9  L$]I C%bLLq5uZVb eSa X2"ˤL 8p1}bM<]? UfyHkYm!yN^_o_Y$?BD~>+ < kE4Ǘߗrj2cН#Dj%?JxM[J*j|>--!Bӏ锅MT9ߊZYJYLX e4x/nxN~sʒd_8 ;_]tZi7^ެ9sݱ2%N#u3l6EOxnS1_3Nl((#W h6)Hie.7D 0icҤ5r<|fAǣ;CG,Ӹ2"nc-)};qnkǺiZrFk\' yj 2wJ jӵn^pQj :*墢@Wgձɘxyr7`A4e/Txl(S7/eсC^NOX1^U-g7ަӪ [\=3;BnΟ_@m4$JH@mC'[r2 J%@\Q\lt>ӼTLf2{xZ/m6SI }'!xךC3Q"=? F +},ݗa<}${YYdY^CJ09|kV[J)B\hH"kYJV]PSNY U}Uk$3)+ Zc0_H=FaG 0Z<] Zk/'w5$IGl0vr^cڊb'i:MDŽ܂We\E(w!8s@jo`+!בX ߉"Nx[BUx"2??e Mqw#ԏ2W7 Ug- Ny ]$ }73+̄o}kNV~/.ŪR7G举<^E" mZ'hF(ay}DBScmG>WcCܟ*9] ^ u,hafC+ 1oAVt%ކ.6p_grkFX\bԩy8ڴĹOiP`G! 3Sˊp%M9K-fj{J:~BNus!lv+X &hR6u>WPXّ#[mHV\y*ڇCg=VN=8+}H hx~l7n~* zB LL*9Re'!8:;w~D F8}9X2 Au-8g`Un*ldh>te;+>7V 96TYJԊa(T0Y6./73ʹ-T`rE]t2qvɛ@K,38 hQB',Vnp)y}iOivYS5Z+uPLimg@$?Tu1045O>y׶?t;q$@2rS,3'܀` tf_+ȜaKP;"8LD5ΙFS'(\ݦBߜI`ۖ) 2qjtlo{*/226g0Kalsa(*N;< D+H/^grNonvUņʃ5H,1pҨ(vVksec zS,>}g`A^ v/g?i7Ar5-C% ވ6cPN/cfM-:NFѓ`-V5/hs$Oɣ`T)~.Y4:N$,Z5o! @ΞVd_zT1QM<v;] l`A"S.j~[I(6<ȾOu{}+#bIмznA=RCYte} r#[-rտj{JӹHAKBg'5s8=D`dj6Jy购dF+'e[WY%!~u5 CY?ss(3SR6ջrod=[$3yy+F]Ň3EqUBp6)+SP 3ܱ' oMa{c70]; \a]} {KѴS"]K:^~% 9)<"%2>?Q`PA/g=>2M8"=ohLPܟajhJݖl`4]2d }v!6O1pw)3Dׄ}Hiӗ#E@j*M۠rR\6*Z.RR::ϳj8`Ɏ7vBcGbAQwY„h%Fxp?) N" ʘ}@o=d.&@T86. x~>2|xXbPSQ[i.ŰRz{m+a*?nz6WzOB~i!m:KUQn+UwPJ'1^&(Ib`y-L8m$K۷3~H{~o+%IA5GI_JW]t|v$t' )@Dcf)ZM[|NԠpaLt줉{.H0BOXjDb ~3# ɽ?.ih/vOf5COvz Fs^ZMUOU.Z%qmm"\LsH3 RU_5$!49fߪ DEE4ua&+uhnQtsV26ڗ.l}6}`GX/7ڶ7e\MN LNKww>," S$Am0]E)s4M uYq}A\4z~$?dkVL < v3ׄ0S!Aw݆ $FA-K}Ӹ}C̀W"e̋VW;F<w/gFao\Ӈ$DMz.)~?6kTe'Rp93k$վ+A2 aαJlf.rso5{4ck6OG=`Bp/97b@R:'Rk^câS(%_WMi/Gtepv =,:6uM6/zoG!xʔߌρ.GL;seC#PxJL MUFVue+W}Qwe#&,)/~502e+@Z;@, Q3ewn" FB*vnG ;Ib\^{u3IɶЖZ-Axx Ud}m14"a͝lSIJ?!²t{ԃE NPkԻfR@ķlїC~jFT&BabzZuP*nxe?JC!_Kϣ\k0 RVrhw&k :=M:y:߉crg z5$x8 "^>FgK=zTUT4F,=t0-<&pI1"7qo#cx^*6;M֪r[<2ߍ !m'eh38O7k07%q+0"AlQQ\ ]!V!>|]2- (̠&8JPI~z䜟lIMue`K UTZ4tjk럷/qJ{3'LbN$vTNCoLh$Ij7xb fr*ק#GvC"cXp&#d&CN`a ŋ'Y5|bYJb}mH3,qjԈ,:41g%V13G0TeXۀ|+m۵TfRAbGY| $> I[+nP]|L=> ́vpx%T5G8-! :h/{3K I]8KdVHJsQJaIDY"T{{F%HБoOU5 1\*_͖O"w/<_l<րSeĉt?NK޴̛ /f:Guj?- {/.|-M4Ţ &\Bs$1|{9ner69[kg.X\u$ Qjh4(MP4q@p3UvHr{+ `]vM(T-Km6M=29bKQu+.34R0giL!{RB+n+b#q0I2=OK )EL됳T`UɇTqۨ*΍=F8y'x~a&KV1 -o3L k6hB2U [Mr1"dNXfvdx?!Y騮dbG#Vqս)3FP',WBJ:IQ@ɟw i{+)Z&;R@OZa mz&uk0Mbt w%0pÝf: l x8Z|Ct<,eՐĢ\lo!Q} }@K1qM=kD˫$e{v >]j.ua G6yƏ񪻛?' p2yaeJvE$=Nve8!cS6rYұ&@$`;n% jNÝ5,th9g]\Z[͡ߔa駥 >ΥS,9*sf-m/pY~ o!0P9|1nkP;e` 7")cy$+`E(4l|ŮINk0f7|y tFXNJ*"<ВRTJ9MBd6\1؄5htƁ)w6ڨ-?[Գ'˜O@@x2A炔ګk&n(Q|e'QZJ@#dp.QO!Yw~}XًuA WnKzCoj)/pߋ}.NX$k4'kکaMb^ͱURW~CIżTbWcF@9T~vmac ;j0 0 `= EmuU#T1Hkb;="_grAqQK(.IH*GQSW 1$ZRam vǯx)ݍM~!;j08^*A@8x9H:$`fa7\3ɦ+̓wT4EN`rχm?xC. Ҳ"Lm :zH%gH-15ǣ/{ؖ-r+}K_w!ddY$8.`˻ ')@ޱl=̵^._b?Q ]s8j*J(h+UvxBvs%?[[7|/5G i(Tرdx$UeN P>pr 4`Bg{͠ޡ~hҩ?`Żk%M%Αr|ঢ় *cUK2+W i95F&h+x 7{E+rI-DS} Βuz (3/د3s.VM9dP X=^o,+*ȧ6K "5TG']l#kj"s3TVQLGoc% D˺Z)߄(5כO~4wN "8PX/g+8@zr-vHhJur'4X'VV; 0wEQ=e߅ hw)#epf̥j#1$Z|ʐ[Ml^mH; ]&HCp>da? QzoVSD] ynwlƦCFHRO ii-6q ./e3QL"IO;fX"-g1Ӡxn%;}9bMIY0't>L*hMe6^=!ȖՑH*m:""owQ 0lêzWypVU3RSe  X6e y ].(;|TUFzjg3-CrT6ҝAs$I@3&2 tfv[-=m% <*kjdxq.]q "{vб'ŧ>ZCro<(Eԍ:2ъ*tQAN*){hg ,FXRຳ8 ~^]լ(['H[Y]_jǔ*<^)~mo4&VIȷȀltIM BɠfP6Pnp>yUj D #̆bIn&0 IU{J@lKgqרbF1El[zb-#?=}uIYIfLC:GZc}u:k)ƶp>y擡 p9UT=U$s"9'?7,E#e!]p8__\/p`Ed,\kD_&lc=U>OYe!G:bcm0M`1jLځ, ndmImU5Ҥ.|t6G+sCjkhR6?6Ke%2o-Q{'YkNfw@.8}R;]f ɰ*jc}`-R[0-)):MzU+_U]HЉ𿼾<*6hS߉ dvyL+f#r80JAHZi]jagzDeC=R '_^9YЁfKȊY~%^IcaP4d(qIXl ݍBV>wX-)m6fkk+{B8NBJt:idvK5SYl)#zqYUWQNs,_޶ (jW1=ܰC mUWJow.W. 1#,v\y]w9H]DKScgĿ)} YR) ( 3qGA+=xiI#/JQ~zt8H."cUFqGp@u$s_M:hwHʌ_u_G8D=' 2 7]7XJklsP2'`M|oPXdBԘ4acfJzk 0i`;1v$;c 0+xHА;6K# ecXOy*29;hH9h2e%.&&WmuqG8%ݓt ]4ku"ْܞy<j3!'g_}soeȀL)F&y 9Z7% }"X(j糇¨C^zU)Zv3udQlܘLՏ76(L7K:Bc/IO,iR_0NaINCrc P [vpWu >2z6_i47X_Dݛp5Sqΐ+>[єk2jj(=i9*rv`2e1t3[^vRԚȻkg`/Џ!0i8w{Ō#+ʆco20*v<~gp;{ϡ' ʫ nc7-~6/ô]T-/` 3'Z_ww@g9ZsRK9ͱ]"]&22؃9S"CaGO(xЎ)Sd8̃+b@ kDI!"- 7GYW]= $G[_z:l-Jϸ{r 5ޭJa?#MY&Sݎ%<)`cey֙Q71H"Yh<<1{׮Rs#)s`D*&|9lcN1f;j rHXNc)Wޕ 8{?9Oۓy1j+2rdY'-3O>&IҺYn&:ΖCxPS5O8m隍/vS@!UiEpFK{]rE3ůSs]-GRs>y œoVR4J1j =np\^3xy.% A \t )Q1AWhJȸjugFtn9]W5\^de@O FyԢ-PRS"7VFk4 (GGy p1B-0[SpZbN%|Wj>Y=Ļt4|rx<^}ߍqM_tc<=|PbFEoC~@kꈤ =U*-3VAE3>[f  O7qb E?M{"y:R L~,ۏң "mr#hfw׆@Z#ʹ@XR_XbلQ ?P%\:1K,UEEPh(8huvLz06gsZF]kIݵ[idpiE q uv@U4j1AUUڼyNN*7MMP6Fg\& i=(EFaD\|M1@HxrLC'Rﰬ%}4# ٥7M `} ]K!K`~m"⿹\̩Cə;W,ݬvUݍRB?#|d Lxn؃ë/H6Y'z,:Ts K'aP_Lk@/*1&b z[[!q3dϕ?&Jo\?q nlg]:mG :sFe@DxҘB8 Y o1~9TmSlWl h )i!ӮFB 8+ | aj,cQ3y9iAעDDL u%<đ[Z4y v~0OzChXSDx+μH9#VN^!~ل~u ]nQF?vhz 9CO9)C`~Y0\!n5CU`S w?GZʱ:s'?bq6 Ufq|ap!P-&{`^ HjC.gzp.x.7۹\ eT#qG$cIG],Wz^㻮jbLfc*~ܵnXS\x-v*jPldKʍ{>/m1W RSaQbh\u5TE4)e CX)#@]Epr$٧"X1թ+>P{Qlרg. IWjyEOiU&m<,qĊG>{LVZը$Mͤڧ5h~݋B33,aeBAIq(TqONVћ5d|B\\ȅ4ݿ|)0i,TD]GWuK=Z 2\f%܉j[f.3Ɨ Б2Y'W{ٰx۾ rSKK&| 4`W 'ITI+Xҹ.ńQKuN;^Xm']-+t l^ءBOhȅ5p[@D,,>n $tIVS] JAecxP4PDQwDmqWjT [2yoT"“|3 L":^8YF 3e(Cb R.)Zݘ'aNj5l?|n=^F+µv`shɐe uϗRr1}{KIO;߻n@q,K(*Ncwmay1Rkw.{6D1-arF;# Olup'-@a^7 8o(n; Y0 2XcV+a˜Mel=̫Uw(/e[>q%tyM+⼨TXJճ#|k!tBwC\ 0#]"q2E#ݨ`-.'(iWJ,})Yv[H{>Wdn]? y;QUIߡ)BF4uGq3=[ }k=1&&?s[dԅnM=hì1#羈W(g0?.X$Y{on:W_>$LJSF^ , j'ұ?ױ0*\Ls, fѬ<Cd, m]hi?O&q̈́h!l3Cu,3il4Kٌ:0tO+  [B@Nm!9-5<P5cehc! # sFk*2a2z\Rru0;^[dc;il 5F|Q!43T~"1AOoKd\ _ٕ.oXr0kMc're a%= Ac6_bM >0:zhL(Dْ۝H K ϓgTߐR~k]:E0zzs{#P{7w'x޽ [dE7P5ԟ{7NL% EtUYwQ{Qд3A k\ԡKh-\Fs?>Ujq= 8qoI 8aB}Jq|$/Pf]W:]'P`dkuaD1Y%Oo)jV×2mʰ@8`XOBw{ƹ<ъ Cw2̓4nT{¶Zi<ýVyڜʧ'UDol?E pi9Z#;r>h+nÖUL][hx@BWNƎ-{*X iC&:zBGM"͹Ga& J"݆uٞbrMjmWHs/2-!Fe8Up @ew ^{x%+wׯ:4NKQθoGnj?HS-qoHG[? x:x$<8!|Aȱ ,jw,.0xh݃A#e#MS2B.<ćm~H+ j)L󐧧+M HHyѿϙ {-ݪ5^՟lE`9QOz  Q!fr6wdL8&^9|T!F !+2KD,W!d煑k$erGD?*<r;4ZTꐺZ.\{eoKW L+#aF|QHá{2FRO>PYqD"$pc,䟂ؗw<\E5" &fL ̺P:}&wheѝJhB')7hDm>R\hqy;[*a[s׺ň"OZufYYNE:X2&$>ugY-9Y>3jC4[lHRzuJ/7kw/#KP=~آcV%+ ]}J%CEOH`N{!XG7yza;T03ZX"s|s /]فD E%֩r}*1 }>k% ˂)>vλs(*c ×!1٫Q C=WEVo*.}Tn;T]L}9%>3 \mBj)'Sb-_7.avs.Lωp&vՑl|Sl_D=M>A&3N0j\I-BRF#3WG`v`˵vy]'}3ע0ToPh~|Etwp]$zrDuܯ $}}z?wymC76Tm(NV鷽F_1"{V_gQģ(ĎuDS7"fqbmN~\ZUKZȃ3|xc ̋Ydts*" 3 C\]y [+`6S8,/gΓ[-Y6)[Κw9HAҰǧyn7fuk J-6B٠*@ :fnwȮ\v3S*&ߣ K^:Q :xxkѯ: zi5-Te_ }Ʀߏp~y᳈C^u8ٓ̏Pxn) QrQX|_WeJs*{w'ЪѺ{%~5oTt;;^ٶ[[˯D-y2gIsMhZ$H8kzISSG&` T.@aKȢqKSABO D0-:f vd&b U8m~3A#JN{;r-7y饓ŀBmI?h:6 wEnhEP7D0S5Ke6 We%VwvkIqa\$#xn莃*y` l i-8YJYW^EhY`g܀ɷdZL0Ֆ?xȰn_r`?BEsG}K8s}]{i8_at4n!ሴ >?v7Ꚙ¤@4du1.%c>- F>oYYoN07 V` fj@4س{V'倷_,eT #SUvӎr$U+0!Ua"\'"?*K ) N<|(h6tUk6)ϗQTT(fO(`>B˩:+0:+;&aIz@b/\$pPɿ-O-]k,ʠPUIҘJg.ޱ#$Q뫺p9ɠ\KoLSXUgbqfU Ru& V),02<ݥ7X#Q u\28-JlC pUAY{d98s=VEx.ДLF v af]Y@eWXyUaB\Z}  N:4Ų񣰁<uispxc0~P9#{/Yyvr$G0o&XͅpX(b8/mǬ ɜQ+R&7Lr,ӗ:|d {Tg:n)jX7ddӧ:݊s9fҼBoU(y=pMIY7؉[ac]ZH{taTu&nGJG @+ZLɟQM^|%,m^i`jlt@xYJj&6 ffb~ >?9(0Y0Q—)mC%j9ѵ@%U-T7ٲ⠃YS`F\Q"S8Iu(0SqቒR妒MŒHPـN[4*2@Rox՗^ {3m7iLvHyNqV$G]" \{3/#u"PQ:E[=DԹ8mkȁt2R1*i.GyIO6)5qxqt fՎ;Ǐ RCYK7Eϡ~*3Ec&qݙh&W4zAYq/OqM–7'ҋfj}$<7Kk}@DK2TX* \'kUzz jdlQ\a,HD2:P6ig7vr( & .?=,!〖`<[`ϟx’c3$(K - O$NYG+Rlҫ+[4u=CsC#hSJ`Ir5TRx 1'=v+́8I$?K*ɪ|D#{"{'U#x}G6BLyY J=ʉeNjGv 'ׂ Ɓ( j +6qf1L~šH]c9.x``&H@T5ߐ-NY X¼U,S6s!Ar+6Kɝ?A=CvK-wK't ttЎn^An Uo$$Ǭ|B$Uv $6"_4[-a-~(A,H oXE<%Xb7[@h%B5)Qi߃djZy{(Hiα&1Nn)*l4\llmÇЖK{/&Nh AZ=պwo&J8Vo:  d}EzzKڙ' P.<ޱ\b6=fľfF.!&U@ X- FE?ԋB"{~Θ_UYAϭ}N<=*1Q50?;$=i6NWD­:KhBD=\9))sc nY0]Qnay#--#mlmC|(ɶMx Ğ?# QLI505K" ~' LqLLx yEz1e䑫v%@s,gw}A܋o2uwX-cAjlqvH+S$4K?8u`A[f,V>?kKV B*HtjT:z69d- X.LƩCcvky3V88r$MF\$yY`Rp8QP;P6ꇎ1bj(d$&=PDPYr\^{p7a>/Q*c'#гZ?$+=  6|"Wy?ϛaj &?b3tW*}ӡ';ʐiʈST_EZ8=<'@ $??X$nᒉ$s;$x 9>Ӱ7`bzEYz30B4Y1@Z#WIt>ov/yE'puۇ>\1@LK)$aDbl7[]x~J&{0uBwA0ɶ, <.}>~ .5nAF{aS2;1 ~r: c?45ư"-' ?)nJ˴8Rp4}d*qm'9tή򥍦x r|3< édXn>oqeO^;TE"GO!712OB)Q_|F>apwyomYA = lq-k[sx#r<Ċc#;@o/Hh]Zu _ueE42ڗۯ;Rz[zZ;l3 | yQb `&gh4|ׇ7ixb€:PB/l:V5R 86A^O%axNm;bU oaJy7`0GY$(F{/n!ԘP OEŗubHB$DDT-g`P@?g e|bYLmE8?-@7CR X w"Ƅ&Бg&]nHg^5||$M p3q1jWޖ|OZy˗T.=/'T InK{.ٹ'%bC~6WF5g~Ϟ~@iʀ[Ƥ\z"M}8*t@ gCH}'ÖVLǛ§-bԔppM 򈗊P0.I7~?[6i-a=̑*v4MF<3[ E2H tT4z1#Fgy0j 8 a!νOY;W\]3Z09mt|x%Nj[ -ku-GlcNЉwPer' B %|* )l-[7Wڧ]A'53kcVgMbu ;Rn6:tQŃjT{#LܚgⰂ$x>UQхaxhUDU36v2Kɖ5dUǂ߭\(d'-Wߛ\]tc}i}J i9Ulwg ?%Kʹ.G0j,rldF9"q/*TFA*6iJ]thlb+tktk՝Է*$<&M`R~gAg9"15D{v~(7i ׎L{_A6a!]o|O R \dAC/5R.0:Zݤ-lkWSͮ1JY-O?{sͻ xrsrbS|X-p{>"w_\M_-7o-:Dm8tʪH2jJke"K )f^6s`JuNUXF/̾_bCvk{:eϢ%/_U~EADȔ>"v*E.#XPqo'6+կ@g0V B XhψumO/s83ƽ&5}4v:ɸ)/Y*W,ZP Jin:<݋ M=jzR)I~keb…~x XG59Y+ѣH'W.99;7r,W5a@,CQR MiZYWi/-n鞂jTDue>V _\H)},+vqZbl>0G"iW:oY,7nY% ,Q PoҬI ߸lq \"Am6Bf#y6iR3#V V ?{ 8_uM^v;12оTҀcgBiM 8=&.nbd`3)"pw$gV4L:ۉ+ֵe UJtTOwa9m@g UeJA537gDXF٭!Jտ|#Y:+윏V>w^GƋ *iFV;u1^ 'b Y,}DZRnYΨG s>E^!, j M£d"E+f#BVor<)7ezrw/֛+;!tGzfɋ8٨4Ⱦo {NcG;ٺbVҁ璊<{LX[A.TE,WGuiT<\Zs4g?5VG P!\&1tȝ)LYgԯC7E [t/I{7E9+r0`IHk_q,h'#:Jh;18fz^UȜv.TC]B}9W}SLdM[L).^Rtb8 GFZs&-Kf=ѳ!DxgZz΀A8S qc_iָnF"*rRv/H{,}Zˇ68blW cs==^ƺjk|f5 Bڃ p WgP6H%|X1*OO+j5<3[qa-# RL/9~ kTlW)B{CGᖦT-_j0ŵQƲ7{j1o|#sN(+ꦙ.gpg xڳ_fg@d-,bx*\5qJ2>KץxKUZ9-{0c$3P n hQ9vRO83E,UNs,{_W H{߹Q#R2\e[SC*k;oLto QFOh!Ob~ge7piV1 &zݴ1# 9P4 g C'Cr ʬ[oLsMޭ?A rs#%g1uL}(49iDzW )Vb4we@ .N #*;4އhcQ uTg^4n =Rk3Ƒ-JkAK2dWe2%j_!=?=0-l,0}F;=Cԥ} iH2 w' " bNƊDN5\ #G~PUU9^jYL< ..w G,ڛְn2 g=چPncS)5hvla<׭ 0gpCHD潝( \FH'QBv!1g*IH0e𵫔= Ʃg]C.Yƿn.5ݰ WW:{ mfQVe,`{b47TKfNJ9-QxlSM5?87[e}dan"?ZU$yT5^){L!!2~$D D GKxzX55T֮ mfTU7Ux~U=)%_$m' B5'(יFI,ζ6 c#(`{?q^EcjI-}5ٺˇhrh"WP>H Pjz ,GI *Ci2Cb"@Dq64yL{5F@%$E$tU/e~u^Ql 9 m.1i9~V .́Ζ}Yr0K E7U e{)iAOADf-Gh;.Y\_f1(?F ]>6 GU0;~tUL/ y}' /~ +p*!Z |W>Z ,pM -Y bP nF .'*[żV!7VIFѽ:RN֧Oa˴>ORML,z4AO5_{&̿- rMkT~U[΃T-aUe~2jxXԶ`yD9N*3c%pօM5@(#ޘ֪:ֻy,-skXЗ*?͂1uCxq$q+EqyʊkKֽBQ-GSkg;JȲ#~2h@`WFZgy|e[?7i)E_W*+#ǠCĿ$ uyC,|3HW?Rrt? CUԢkHۀA7v9M|fX}/,KD@Uek5RH4B)/Remy|^*KQCuMwAўp3<9Ε{): wVő_-V3S{6Z _O&"맭hSN>WL2{d=)Jtv@HysR&Wu)y(QPfX F[Gz6Z8 *s;ևՔh7<ӷw1ꖸvTeHPBk% wMDTR͝Tf: &\#NmN9i[ q#mI.GJTj-eQ*;phhK=3s6047αtEⳍiG5K¨V\pG;K|5xpRl(UIٵedRp~UO%r /Ɓt/aZӛ`5 F)u7BLePʘt1$ptn]XŌG]ˈוA<֍ܢ$% ߗɦ!OUZ?ꜰ^M@F\2Ivx_lU0hŰ cBiȟǦ^Cg4 =3L/.h,fOËI f폳ϙI{&aR^QԾ+[#CmK)ƱG^b6iTv#Qo]ݓ?_gdFWRV T,;ai9"x9J-F $@Lx1@*1I )?kXXP],?;pե14eP#mWcg l9$]?Ɨ$w?ɻ)NNI+JRG1vIHO$L` rd%Z-h{ݤ#R P|Sp<WMc.~[uUfIx}X{ɥ(. 獻DplJãQ:ztJJTАc/gxMCXV"BIڤ1DB_YWbpl)CCjt ;΍/WLAejS@3أFUL)K@^TOM*P-sj~b'Z<+&MBa66|nGZ\ԢF Y 8<~[|b㊄Q5_x>vsA;3 ؠܐrHZ'ǘij8O'bcNڱvcT#M*, iqEV&e-]8ccx wtaoDMb9kt=`9*ȣ{kW]l=1`oKmk4e 7G%4ا80@gjf2Lv!n"9?W|ӭy HOvt0ukLK:mtiޑY k(õLB"t̳tIkٴ7)x̚ |M̹B?Xv 5@M~L9 h6B98M }ˇv4m2;PHΗewwR$(pS.>M}jdq5F|I<*N6}) ܲe)v(榇H!Ww6,)P eO$#}9;C)([:ʑN`/ȗff^;Iym2,EL@h-e'Hk \C@A,XWTH怘yHD@l_Nw>,aHnsT*}r/Bm9$Ұua~@s&xs %s ߖ.A[NNTZjw'_L~Α|aqS?cѢ.v|+AZ\gpˏvQ,2r!ɮ}5}y'Et1LT(9͹ScP6]w*{([cpCIbH}M'S02sL"*ZD>ȷɆCIԮ11?=a3.m]W;=;뉕HqV.V G!S-, ƘgVU_Z4̦w4#`-|#=NH$7*2씌th'^ 6?<_naYa4#Bw`[a5@`sr*-Mȷp۪7ԕx l̓+Ӏd'1e)G>~]+)m ®Rz zFDjtQd=F07M}C:5SH*̕m+@;m0Ne^4ջK|3+n ?9fDȼ0G̡LppАKȘ $[O[(Zn.i LL{a]+&pi!2Ls㷕r!¾q>֤n7!%kZkc\!M>C׬o,#nDWxbE֏}Nu>;pk,C]m3,Bޖ~:.`j:4@0LS߈lpHuE }팂ǻ* zmxuj-kz\J.}4$=!pN&/A𶏝\0_:)Ғ<ݺ-ﰭ| Ʈ`~*E*R0/0xoT)k =ٽyD%Ê3܃W"qnbR6s9($qb\_2EJ.4 x&FUi{1-K9h~0mL,0Nk6{) QY`-*ws FLrWmrbƕ +0@ONAJ,bɕ<_E4)*dTe1JjcXFɧGh`qzޠ?^1+cswuO;m2RqI99e&cYiW-#t6p&Bb`Z#..^p s8hv|h׍kZϞ^Q snw?*z]a<,7}YS0[CDOcJz@ji T0܀y\[)u0rRK:q8[ .XPڳ>KQA.f٨p"{tebaHq,NY ?1XSysŒ ĪQ_kI "^qcTJ"ğFt<4~Y\RHBOyy Moe:8=Ԍ#k'_=2 B}2k8r/O$0H ZNV#ݱsB:6PD^fqKu$8\"4;[f;a3y˂m-/k;p eѴ/qK"ՙrEFhoRM+t|vf݂h}P#ﳏt!z3Am8y+!vTjTv@Sݠzt|@> A~FDB*_qSQaQJlڑYjl4f!XT>O74w^wHNqfz6DAtݿ36[aFyMͫ*4WإOkd0 nzKzqYkO';i/Am+^88=jv E\=ڍKЈq[xHCg Cq;Dsq~L(D_I\(ِÌI˰Vn+0D"\C(xׯH /닫29wX>EME("+`k-:Q7,9>2pj WN8\;髟K҄!p~ۥ+K$BcOAc 3H[KereX@XRHW)n~=Y塔)qX@,˘d_u]Uikʸ%#Vk/HUۤAlQ14MK' GtP酞G\āc\:p VS/{F!*⚡ۂM+[-Dmڤ̣Cނ96ϣ6TVچ"'CHhz(1J%0';x:(ཋC2uf9ekIJa$#*P/DwG==a9+s v񾀯\ND8McFzTz^k3<ѝi.1$S}x"aq EQ:y'¹^f]ܔq C ăW$('DV5 (gu!#aLW٬65ѯ)柝]ׅJboG@QX~Sow6~ º9Fz!הd~Vh0^w2b"p0ИWaCYj,HKU.sT]Y[9ZPs1KA?S*4<9;pbv({x(O!ڂj DBT\hbq-%ݒ\[" %4ZyvB3Hۍ\tOl1{{{kd6W8AB33p[BSL a^Ԏv0) GV_kl(C@W<Ć$Svu$k.~]Pf-+X4& fOevJ69 yXEkDh%T2-dL@\]kA͊x%JO,6Kp93#E n{R@=q5;a\:S>z4jR+x./1ٺ,%qhK3 do蠸6r .#[ UKInmhnllBI4u$ZxHmAkbG~%fYW-O\lq[]O6K [F/KVt!_%'%TA3Htǧ_ `# ãP·sO):JV50*|"X$rX_.ԩ{/cRPoփҦ3%ư>kPB6 Wǃ3lZ',!g+@3R$6_!1ko S ][omkG|iY(x<X6*%9Zw~ kqkuoxܹ;># %m}_ѫyt?/Gx)*2"` x+ML 2n쪷 { ieX#Xʀ667CQwFSv4.xSLrF:4肨0G֍U~1\#􇠆,u ԮZz?`d ߞ%O7"$v/NqXn[@N+R%gOf +ii_,{I%G0ڕaW^E`K<0ȗcX'4):[jW ';GgkEẲH k'6ĒrP ڐ!P%j6G=Dd墶2=P:nKbp}e5@<9V H WzSݧt&TnqڧzA}m}eU-tfM3L0I]\ xo!yz1u-έF~RyqP?8jrk<$:M^&O6[QXv%w@MB)wUɠ omwXlqp7C{͸^l-޳Υ>ΠAȀg_ѴHbB;_BwCüQ@Otp1V TЀ >qeO.}wYbwVTe"fȼo-E,}vep]xaI ccJGsOQˣP;:r]vMz,^2VBc|9dL(`6ب̝C<]>p |I"#5RAA$;)*w@G%K+Mf I{`^6M?GBx7GIā `E.Y 9OI QANT$+Gz%@^2т)DsKkAEQNR ^c b(;س'g]*tW-Etueh[@ލ%T{(Q2t_{gѩ+^(b{!}7nI\ot5k>Y e`:㇎md)vXxz r,%ȕ#oh*KjGDMZu 6[ctkmtc9V4*y :qQFEDsG*jT/vknY j-fdd~_b}[׉MJzlJŁ2W쭊^Wkʥ~V\D! !CJ`hlLܠ#ss :hdWrd]фH`{ϒ,%ڗ5Qޜ}ttɳH[:֖=OLjgS#$i0tswMIaq{16~7|7\:qe kȚG3b<8gZjaӱ1QSE'섢Nm"/3.! Be]yi ŬtV󈿇_ Y\RjQ7>^s|aAerga{y?D<[K QewOdjJjjXIWd:r6?̊"I)$;=WE'z8۰1د%ujJt.@MZj+J8":O^Uo [쩐P"4D:deubo7r 35+R`kc΍&qL:4Mv-TwkOHLv$ {PߎRGX,u [u c`(ߨ"@#׸l͎!$BRFZvpGҸpM)smeQQ :q##SmXS $β끼41n׾ ,)VB#jc6aAaߖ' !"B4Dx&Bgy7uAJca60Ů8|j 3ko+FxM-CѠcL,r$.EyՅCFޠ{m50W2r!~Icj([AS\x>`ڒJ8i,!KSxM~3Px&>AI};S+[MkcFa+jg%Ja(P3 г$b3ꤙO7>u.#cl !tL9 rY4o}!@M[3PʽYHHHai Qtl~=[@)3@ǗER[)PCIgym%.p$"+"o ֜6=nF|h'X(IJ2N0Pdk( z]i61 4b &}(:2W|L 5dԸoIuKXt=" aJg7 .9| ـv gul%z`kքMg'~B D.3ҧhCB6K;Kܟf/b)lc/j!9! Fp[)jԶu)3)ܱ>6Xts$8 jCL5GvN<gq@]}Z#%4%qãA)Bnj\lg_qR&7)ML3G|.T!N̮竳ec02'ZUO!V?)bTpϻ[Xыu64gϏyhk 8Y‰oFhJ͇:~FBԔ|W-0Q*ue]ck,-goI.QG4$dEJ23] uzDYQ#/Z؋R]wYbuɜR)gbfXRDARY6aTv+ 搌b ? ̬W:%>b.H^5T/ǕS7ڂUUA>qPo~K2KzCc9A6KFM4-i~ D!K?3ϳ! zc?S=ɠ0."Ow&$4D<-Ϩ.<wN3b8BLHx,։믪UR  9_YD_;Fzz@ |T 4Ww=W@Iv `e+M1= K)@-+\Z}FaMʂ.*ݘ 10 B's;x;P{g?VĽHe{;[]7MJbNt<VU p_WlNt361?QE)%{2k-륎h|0oB#N! V)uZBx1+Ņc%~"4eG A/c⌫fsa|dT%D0kW 8[!J)YCtQiaNyUp±b;Q{o~-4bRm'Y05YVXs P_zs^ry2]qZi[IͶvټ/}#͓<$Wz>uж9䋔o\cCzk!ո#$9[o'.'o \p?$k+`֟?PfW^ (iNc|b!|Aa‘7m^cu&ƨdogc wP*,J Ce}t3K-ܥW^E@Ko R/3.A!x]'DMwKeG EW0YH.e&жwrQc"Pi9Pg!f3MCze|6Ր:M'( 1׶yjYɊTS猪 *mZ5 w:~B{.sBş =|:;#vWn k}h!`*<mN e?'c̑O%Sǧ0Ԡ!K 3o\*Be`[NE"&G*KۼI$:FIlP>r[E qLӖzh͚/DwrIrl5N0oŰEm& !j}==IX_=,lR R|C*Y4"zV%v}g nM} /ڻ+E/j÷ݤYM.CnoXuq岊eoD,yGwTdt@ҩ^?6r8 Q~Q:$z^80nԚkڋ)X&,ny0I Ord  tWy:$^XjW`j/P`^˙'7';2Gf z i B1n( <Bc˒>"0RBVsZ2flWi hN[|6rE/ D-@K7oJZ?QNl(  eۂPpGw˹)z5uCnߩ<@6{@9D!iJ˨ ֑zd%}^AdIl}aiXd7 fY{Tm%fv_E!IAt;~t68eS7ģР^n:0LOF2a#}f3Cv ^WoZ\,̙3oE#瑐&>+C ܾ&KކwaMX&-(IJb7%21)h`hYp#ˬڰAHWg,@s/՗+qUyAC3^զlZ"i%FBT ,.B N\ {Jv $ jlc7 kj>R2<%wK&*VhL/qSKaP7V0${O&8 4P/vZyb'Z!ZrBFfu,̿-t_ԃenL`1+ Lxr?qن^+(٨7,IJ"0 uuo-N,٦e vm1"9V=/,]&&ۅO'6Á =zП,ق8wW etb (@!p{i/َä#lG/aF~[wIn3NSSn`ڤᛞL7 ?– . >ϠCNH7DK6d|ښC"]#a8sr$:!ʉv#ܼ'IYŖ/T^BM #=*wzLDk_lg Wh6:8ze"WX'moHy̝ަ%PH7u@rJֽowyY7 T9=ӲRL5({ %!7מWs nGvT_Ѓf^{ 83 24sz&2h?E@j/q;yUF!B gXVNNտ_#iL굼R-j{$Jǵ*;_LDHJ͜2 d-V^Jgv"l0$>vbR% uѧv,xUleO"#oW3rH{̘ 7@;YVq_D<2*gfކI'TFOǛz@hT2<"EvQʈVʬ"H '.&д'-.ۧy 78d.w/* z9Xnα>Cɫ:*UiuEŜg9WL74C:2|PacnWЍKG >;Č UiH)󗿪5~§BCeֽjm$tMbVz'mfkǝ۳ԠϠE%++Or"wi2LM |1!C-0SBW5qJHlմGߣJO#* [ջnig1c& YvC"NK:bha^7(1_@tpӞl2t?s:+NKPPCacPK&.ޜ1zSX5A5_ӹgtEwL Y֟A_2=ˤ8fw i֨||F3+ <5NBR+8ۡ,1pNVZjU yMe|Cйu F^ߨwhf:i亂hȔ|ߤO] }S Ӡ,0rVd+'q/maItmQXx;8F4yS*/K6uQ0 DPbjJCd}ŠC6!wӖQI H!^lt{DwQ`0ڂ+69TzÔD>۲s)7Q#̊='/#M_l8bGJ Ee,VJiKR?vm(v~Ā{s<o223PX Ef)2uz=B WV 6e" zjl$H z1v㷦/dΡ;HsVIn~r_|v 5tT6,U= P Uv|Oa @x =:-jY"5eNLF׈,=)+eM8\כ^{ onT$ɴ13r (Ou/e߭WD!Vm=D$-Hov/T gYJ,sPD?`:(À\(eRkvN着H-O5/%0L3?#ޤCb0ٹHhNbtV#pjk-D*PߐK.k>/p/d@cVD"ð2m<[`wkWx;w{,0+:bzTZpz& ` JUxԃv$yZYY7W`K%JޅV*&Ul>T˥ 7g`b qwW[tU 5˖QGˎl0t ?FH2yޱJ,;aIeWUL +vߟZ:$ơY5>e<'%?W{cj6 * 108GA_(: H*1W)bɲcf_ ThKž!w.?"o(΄S׶3ighz&EpvSO `x+TsoBC{,=U`vae_:[ֶ 4+rC&R/-hkRL\f!g .S}|#msoC%D jfSz|,=@.ZrF&–K&[썟 DWFBIDfޒ5z%v435Dt.VTj'%ت*Ȃ kz#Dfצ@] vdiɳk9U*(fycit}x$vLP7a6Oa3Qg1dh^C+x INq={[(˵2묥6z62 &352bhȶ4dZEEI>+䃏pwXvwOudE#Zϝ_2Ķz|SlyH>`9f9߾ԮSVrywt,A2wMgD񼞡 /v1A 7:ld qBp!oekB6?0 oς=&QߖzFkzyo δM. *}Oh{jz][œA.F%wZS%oe6lExʪϛu6}-rS^_g!4 `dL6eI`RO z(`٪Ů28cFVYvo O/EH'eQӣ]98p8>*V(X0't. U2ƃo[{pGf0XM.~lH׺< Ԉ4 aޅ E8@y0ӊ O(5Dg_!ƌĢxH[_"2'*B 002ChO;]a}͹5jO9[ϡj'%~s}۴VpLu4,ʆpyU9io 6Z`\*d\^*܅3*\ "ƇVxZ5=w^G ld6|(3f)8`HtsALv('1v!>= |léG6vtus%V $PQwP+.7ݻlF/)ZGF}8mTx(l dW4w s(wĴ8Y5ZME*CaduP-Y%Dx[ڞи3YPjMd&Qm/lz g7 RX}Bd)ز1KMw9,8o RI1  گ3T)*[f Y%W+w#Z2~.~<2dk1+_dL[Mz sRR<4y]8YkkH>=GR|QcA+Z ^T-A·qygj>x33ܯ?Ȕ.j:c0P7sǿ=!P=;[+9u}%U.7NfJ4TprXޯ]#yKW쳧QHb-lC:X~͜ C<)YM=$Ḓ}"_]Jе]7Z~Lژ S0*nX㹆A8,q(FAJO0]ḣqRxH~Ke(Y@?C7ZCQ"໹?떇ayF=xc q=rC-A/8$5̸6ssH|-5~>2~bCT=\>%BX9;1A2w$FWYp.<%͹@#4jGƳCsvGމ,?VԆkݸUOj˄gz HffXga7!3%LhpC}8gwYx,~q-s~ (Q]ˎ E"Jߩ=1':P㫄foBWѺ/ L[0dp9cق'˳pU)QfM|L_(QbHX>:7`yjuC] X,zHq^u2it 5Ija4]dԳMp<2{OSpP|ݺTyr@"Wp6$U$ZܯB3o@Θ 6V,ϨoXG]% lh]/H䈈L4kJd%z/+ސ?6d{ǀ"ezϦ\گ>sWE}J/QIR-cg􆪫X<*$KR:&B;ȁtкYULݮvɰ[Hq 'j:Րt,aLWϫ e@z^K7ސW"fpX &5]/G 9%0BH|iWvئ nsS: /rK:"-$,z,%_ɏt PbxJN)x9YZBh%eXi&HQ j#bXܤ9Nz_6[(ER:[ήӢ8#|e J}WHHCuNp %#2: W59)HVޱL;#rb6S/z!+ Nqz|aDr! [L;\ҵ &xuSbi*} nqG Uz|F4vC9#"UnY$v 7/1n(~!5dHcC-jv%C[]xp[T@/&:r!e% ܵw {J588gԳO)ʒYx!~**9"NUӁEchҩ h0`=ucb1_l2ݢ-6˃ZcW,6o,JWEY'}Κz|bvn-v'_ C tq&ӆCQ~zWfƘcefsLqp!,EuSe RNzmjwjx2) v|sCO؈iy+=J296¯YWJzi7~xI`t8r trQ?ML;K૆\!hs7f}[Idan94aeJCx]O9S6=fy8S{xK>[pu]ciN, 8pKs䉸F۬?$O9h'aսx5C&15'rQ%_"7~| ˎ>~.ilK=Mz}dB_px\F6Iuoұ˜k^HVi +II/u5}F7mNrD({ REZ- ,QQƩ.z\o[wqLM£}kވ=)ׂM6̫C7o='MJb@19H{ \6H? i 9f[N E\}M}. 3Rf1cHI]^s[o]~64EohhuG&ٖ@q 3 ݿ1N t~P""z&mM/js@V_Y_ۏ*Dk4a_H O70@b%H`xlX[Kqv4c_jbkJ=ׂQ517dYÊ_d\\L 5j6]O z;3<%[3.?%]k/<7C*CP|ELpF;^wd@dgiehMr9N3S=FLtl%9BJL$5eVAr*k$\i5.9XH7;fr>|2q;l]f?_Ee<, 9T(d ~Xkt]gG7Hʟjca{|ҒEs*r6L!]oNNO(d1e`%ϯ.ZǼXp\%]= zwU?\}d5>⸨5m !Wg.ɴ"QN|eaǣČ~*4S7G=u8CE'R2Wrlkh\ v|q[Tyrr/ e:]ISX՚[\GNo5/k[ISo|)q<8U1U%=:^7LΌqp z ? v.JcUm+TݯaC/|x+1}(uW[= C h@RUÙ56~vƪA)ꌦzy\҈I8^|6Dp >hR2_6hMbW@iZeDT{9Tiɕ q{v=')[avŗ1Ԑ:0FZp|`%xӺZmq*8o~+5IvSp#|v(G[+(#I_BfT<NȒ?'=\2\C$/p"m /,3??Fv_$wWg3n=ᾜ/%Ka|}41Rp|<@i nˆ/P@ #0v69;Q k߉˫LdNOvy(A=C-ш背?EA8R-j9PHp{IYh4 *Bti8';zqp05%D\S#cǙXaq̩:* } m\2rr{Np\h˵JfDSvv7s#t۸Em_W]TZ.3Mvꀈ+bk{-w^ʌ{$Î&3qa~%IfQMUg|@(B``~on(#bkTD]@ƍ=(w! V@Nf|/ S5ԂٴggHByo:簾h5Slֵm2r.;(`#"7N)iթj)& W`Pj *tJ€0FãnQD`f?t'w”Vj 6YPL-Jlu'I;*Yn;p<$z)yj[ZBPIyG;Ցy'zɅ⎫ۨ"(J|̓Dj`6`Q+&,yx8/my}? FU7c |s+GuwJr[^:w-\P.+ @a? +DlT]uO Hah.OLzx*z!1\f3]q7'5 6txj<=tO,SP/!,ByD%s}},T~D Rc4 /[^'b+\0Π;+v 7JzD跥VըMЕUъa Dis_DYܳ< &I|Y^NG0ɔu Ra@Tꅭ0jC.n:S7,.孋BD&AXw-vMkuXy/h(LH08;3e M*W1$M2jwsO><\Ar*|du=IVyZ "<ЀB[QAAkGh-}7FO8~{tfɦioml^IchBlPݸN )ibBY7}CSjM ҡ0BisGLԕ`*VVQBkm&Rumg ־)XR.}F7PB~RcY6^Blw̏Ѭܖ"+K^kg޳6:a 󟒬t16gZvQj6E*-FP5Z(mR=;^t%s0iy7 :eרrCsT2T-@O>m GSVȞf+ KVjlbw=PS Z|s C?.~f S("$,I2 3s zG[+M)<$AG{ōZ[U5wo8W~ 0o;gȷR\6:HN|*MA991 c'Q25$zH`k/Fr1손>D [ɘ;KwG"Uk]f>953M1c ,zy2P٤5dΜiLy0~PYF "|M#jo:C|mLyɁCIɏ9c kƛDo*kuE`qSk9ETG)tеUȐ;|Weh\zW7n-&u -u–$fwQN;Q29f'j|lT/t̼tTw21%~LJrQRܑWѲ푠%1VlSI&OU4a\_7DZmy4 uc bQݴ{je(=1ҵ@X@־ iXw}-sǟO@؃LnJ]>E0ANdFمl7UIlRc;1^Z.^`CQ h%+D&^!}İ֍_1"p41МvkQ4Whq9dO=j* o d2)1rb|:iB2_I U~N_! eQ[˳cme01BD |){}H7.SovEg5DSPd-T-Ä^/eV7<@Q~6!S3TLOnb/Bx" zwRD/ {i*uRJq/CA_Z=!jY!` "Hy zuHC{q$Դ!*Atw5ϓ`Ay34.%FzÕd_" K5QcpQ+ :X;29CI{ fZZz#4"흥eP9|c[-ġCOfPݿtVG0{\P5k 5,Z:My57^)R50'V4 *r/='>s5zKZb:4 GnP V;oRJz18{VH#}r*BOܖDŽ)7cYb g#~|2sj>(f6{D>׭q& N+fo# ˜To5 K^:ًL1_m}Ye<*_Tb# t_4SCaf3 pnڇZgY_ y5ޅt8= GZ[A!3-Y%J:m[: Ka7ܳi| kԕ13Z|Ͻ_MXE~.Ԝ. s7GI[=#H/%Eqց~N6O"0P^$yIhaĉ^Qj1=́T Bn+/MH^>$5'BڎUIhQKjG=hAAojQAP0{0Ke^DbZM4#N [:5/ sg>t1nރs^G~ϛ_GP2&?CU麣]wlƓٗ'6!L2vA h(0|=q=CqqR@/A(2B~HaB4;G>J%QeO ?yɔdMirH93F"+:Q~f$'j#&X"k8O5Ö-gu+[&nt kr*qiϋ>Yy\ryjUp !TK לv2:Xj:j4IbՅL57!Q >1ɂWdz @r؜ \-3xVp0uO׬B7&q7լd/C9 uK릘j`Wr8cʶ) E) yT/l'ա7hq0g tw7 Dp&NW8B>V!;rˆM`ISEk:ҧRǏKЃAZH}bg~U'P;aWq[rɂ$HU M՝nW\ksb=W?_dɌ^D#aL, I&AtxBaC(iѮRh;E M ;O FD3E[Uk[X}26K?Fz_7 pa Bv7N= C|n}ȘM+o4Z  nT,~])ק:/l(,s?{pqu׬|F>@5œ(c팈g0haH0IDgnHsN75>y519$0zc^F7 y";983_L(?'%}0t5 xیDdD&{xWVc]@=\~mR xw]Ց E9G0l qpk&짊rH KD;YC5 O ϩ$#ǥ +=Ƚ.cApIi4HS"cs'6WXo|i%h6OJ=$0z# %}ef䵂?14Au`j4!q2fr||K>!Ak<< .H&"?5Ma5z r3ޕwBbWQi F>˫rWg =czZ,hX2߹RR ȥ FCӞj.2l+*D,r8;t'cڙ8d6jb 2N5M06bG/m:CHBs: rOvwnS%8ܠ%}]|aMqu.wx 5] Zw"3zr#hDysXcC;gĞP*ˏe6 m+,cBh=E_IdRp!)r)xjB=&{<8`+( ͎XKG͊sC]@a[DJb$Qf%gq(mV sKf (U? 1ڶa!.9Ȳ%AgdB ^ `SH&MșeFЙ SaU{dAǴ+8!S gYWt &|L`6)p_hQ"l)*6PԺ4{6IuΖ7U@`$"4c>"Hr +Ehx=A&d'xɴ8J340!VwD UGԺdu487ܭg bDk ,7so] xߥracAcmE0(ck*_" .;j)?;v_VYt b>Fc{~.E\?\>3 sH]hYŗK;#_*NDZ??}˺H5蜞',%D%ic4_W29wbweBJA0=Y[j ԜEUQ W=נOm;YHd-oc18dc) yݮw[j]C=&l=%4qQf&JkaRJBGCR}S\IS@%m-@W x :ݹܨuIC(Zد7W ,ɯN0Ӡh\. KQd.cii 384?5t4mphJʤO`wH2!+[؉뽳<3BgjA>J3@GE|Ls~8Yyᱱ+˟'z4Rwפٷx?A{q+Z[W"I!Fg<$X%:)$:sH&T t. t ҩ^ 't7kf>ElCSa}hQDc,zDb_ffn3Z{oEmdebty '}ajFGuxlЎr}~Ǿ::w~d׺`*&^ vXlI,Y3s8wm;xy!dƁ"u[w32I[bly&=*ۍ=!ieIJ#JAvyޱz6YA^D v9Uږ*jR-^&m `q%h4 )u1jI3R@;@sH7Zjr,HH ~9'ki[ z hYwn jٓAQ΢^HlCo߃<#Y؏9nBi ']Ca4eI| [l;?T#|hWawΓeW hXs5 rYmHѾ%7(} fƃ@}u^C徂p2.W9;`P ĽpS}2͕%iQUT0 p`v%OX6;5F SnbdKbkజ`\ vBub}љ^XSF3F]لsdjf^ixa"tCM MAfneI1v<e{ Q[VhbkRF,X@ԿPhRxWlNaPrɔvQ;swc~SõF,VM(M5z1*ˤc`+Dw ^ k{Wb9*+ ,b}P9Wl/>kiA^9O3]{>9 C?T~J  ?%bؗvqȤz2RD4 %FRZ@~#n}J`c/FT1$oDZ&srYP# R> 1?ڷ\!6$^rJLe#֍K?!O7i@ cȑXf-V Ts}.52ǩwᥧȉptd% b?%\t4`ZJ~kf^8 %%Xص_nf.nnó?׾Ŕ>31ȪXMD>-Ѿ6M(+ \KfI|?u_Ξ[]%"qMw֥ Hko=t(IC3װգF/o|dPaTF!a|q 75Zjk%݈r0u\hJ:D؁cی9>DUZv4:s9M%&ro>'% ywF]#n~MKZ-B;֎YfljR8V䐈@\_ظ>QW2,?0L '٬SMvB\9xFsGXG9=nT`Slw}AJ9V@4ni&G3ΐQ)\EQfjn;^L/'/נKM٦ٹc> l9L(مo%` XļCY?}x>DdeSy87fX@V2~ t54bCf#8-SJW7.3o'M͵hGZˇ֢db/C7HrK*09BE휙Z؏CHggZJUvT#i=…S\ wC&qdrR:0De'5~,u~gZT\lV-<3pjqLanVTჳ]CPiy4#ZX2SROTܔO%?!VdWBTJsEP^GEM5eJz/lnm i)YxǕW;t(̀aɎ~[(0Y*KIFYdb"2^|ອ=D"`V'.wL)}5Ȩ5Cp[}.R-e+?3F 0I"TN 6klOfp7OT,wCr ?Qbh_ ђSua/o~%PvNoGjtES+{II/%[[`i^۽5qUQB!Fak~6[m4~K* G j`M*}kfŧe2~ Cf&:o,n~?Ime ߟx/HMܝFDti>hd𰔎B +cM j ђŢ/o?CpFɎGyqIߑF<ޓ8?|%gj<$!-]8,SSb"e5L]A}~l~赙bEls2@cw$:*k K \-Vn͋? h -SjZ8.;Vc[`6Ojv#dJ.  !kĩNGD8YPjd  2(G FS`F/3Lx3tVhcߖqU aQXX !b|1{!ؒbv{^PHNX&x]DŽԃk+z/05$ eN&쌁7u}(Кeȅ֑^9),VaY]23w]o˅3oȌg* ¿*In> Pu>~w^@.d 3 7 IT2X@))>&QHj<¦$z * VH Nev3 %L'̥A}#kj?w4;L~UoVo`<ՙq.h&i[}H@AsdiV>¥t&#:b ]YEd0&2KmӮC(HsTdrl{^3c7+ռw2|`=`@e@ܻ+=> ,HM.\XjJ$̆_(!E z*j.av/)ݕA%lM&;Yb\|sxN!(]"cUv"i93JIӒC4}I aHyq8a i= Ajma#6?uEvf+W*X2%ʊZ]5{PZI,YEv+Jqd`_K 2ئYZIЪtf ok q&-\jDR T]kx[ĭK a^iL5lurqOh._ձw4݀(OՓG"vY;}VMuVz|,Cj>#/D1hl4⾤LnIZI 1/|*Z]2`ag\^_ D35lX^`iFrH=Y"\Un)0l ,uM:uZK3DL12 8ʲ ֐6m`(wS>CE%C55+c4oT8u/Vmغ=}}E((Ds%/WʅO=FVN7ls7N*~aʎ1s 1rEJO<oV~ySLXуlݡbMw?+vïNs2Eu2$F%_SOKloЀ"IUyVIk;N?n0]kS(0#|_.]A^mcCB^;ۋF=]k;~Ɋ%xd>$0s.qkcCx<"-\RM[᱁ Q 0Q4#L,H@W'k}k 4h& bxv?> @{iMgY3ʱ;}BHRT'6OL,xHTY jC "_` ,4?9S{FvFD^Y Bh ?~*d,2>l|-9s#!ȯ H;V;HHlþCF$Zblg)(PV?ulA/ÔaVTZ]d s32G"wa`VDJdbD6zt.E \d2!23hT{- ^)k\?=Ol-\i[l/OP7c}y,]v$Շzؕڷ ez΄ޡ\kMhEǕB`R8@[6Z.Qy>-rkPiky_sY WJ2T-=e?܋V)XɼT.Dt3k̨a|Ab@ Fu k;0j _Uo8Ƕ(idKV#wc$\_'-{\n^no\&+v~a (|cb2_@za>E?l=LFު H(+wj\u;D&.mx 2!dh e{hZy I[uݿ<ek[k<>ypf[wj`zk< =Oϛm(LS\[|vmZ!yza;"zֿoj1iPc wIeemfZlPJj$G:aoO3psML]YEbQJlƆ `S+:/ 'CeMO6 7F&7P~U E@'\NZ^+/Iؚ՗b]G'(4 52+IiΊ`y :EڗW%`h_NZ3ㄟ91\10=|JA%%]1hOڒlg)k}--.VUS >T?&9R\sm+t[K~330ݘoxfTGg: [//QON9>&8!;XX ItfgՊDIo\*j3VaWA1x~dWjܒ׭QceIO0SCt!dbn?.vZn SݗxYx5M Ǡӥ֊@I鿏7B9kL=[a\3EGƓ<?sq/'ʖLD[~+Cdb,Th#8cܔvm)3h_UƲPſ\}HM\t@ha;ޱwֿ-Sb/PJĶ t~AƵn2PTLx̿}:%] i3_ 袊菞,Q}('L5/jKY(," 3PG,MGiOCSaU͎Pů։[^ ˚FY.xbbG=c  ZScQcƟN@C]Oa [Z]Rj=h6#AqnU4,ݹ5%cENe4bDZm˴I'pJv*cѝ/!9Ig=%_2O!e}ڛnFs+ר{T@N,v΅0A!s(EreB]@(KB]75p*pȵA *#'LctYEyv&1=% A0\I-f,1(ʠbku9̠I{(lhe>~SrL ᘣ]qJ%qzPil{rܟcLKeaDOUNgG3741 9c[.j~*:HP@j3 `xG1Cmo"*F&Z쵢oByJy _Ev.^g7R{ZB/ܭه7} gw99Qd!`,Y͢ⱺ`I(.C;Tc1ML7 ;oZyRj.U *9xG).p ǵ(LnZqH`4]Xf{j%ʾӊ{͘+8 B5fn5 T [IHys^9ς F:\A(E6BكrԞF/c€T4xB&Sňqܪ3 s-(tA2JRɜ t0,$*;xz?Qsod9Vxk߰2b>4ziOݵl-Ɇ rf6;+TLs7p)+d%z0$ᅒue $j*ՆJ;Ly[ 43=\ $Ț6~0O\dyn\P*%GܲNp}I 3f;f,ѼEЈuǮ<4MU~;l9IiCVV9ˬ/c.HY:ǫYmԼk $>Cfb<%_05XHi+o,#S JԹ6 頭֏&4Zq) yU:]A3-o6 3YݓQ5QȼkKX($[YWoxP ~Idʊup{]gd4%HɋD.EƄ={ XJW=0$8Z3dd`#RR7TA+F PHy _ 5v-|!a;%rd_e`Q`Ck7ѭKq^3Mb?DY'@/!Kg3P(4>WyOc`@n{LWrj>v,e5׿o34*Ե.$e^Wʇ KaдMla;N *u&aͨI*ӹn \lV=6貴!Hr#pR41e8QhR)w#C 2u2Dk^۬1YPb\Y n%ɛ1?ad" 3kzUSx^5a7Gx2"2/t _[;s|af<72n7.V'Z[8yD{+j ~M3 QUrk T9LX#KUXtNas2GErN+Mu]xcH/S> F@ ^mEԟ75bj{DgS &@X[ Uy>!]>*AGZe5/!2[my:{uyR-uW187OkT`Aa2~8% hYRM#19{? ywoV ;٢袻azZ\waD)jFӰi?+)Ljeaňybnj)R,` 5,t]oȎ*-M$|Ήxݿ'>?iaÓIHb`^ ~|*gZ8fȏYՈX<K1\X+M| C`yk*$+81c%dʞ LrP U2ki-pqv-ə.,.VסhNԆ M^ZohnQdW0*i<.]Np ִ6dq&(f:/|zyGn1dݓN7h*3].*fl}-Ȁ(Ѥb>hOVCd0|5KҲW%aJoi2, 6`oa7'íX(ygʽ.13P"4B+G7rRE+15!H0ۤnK~]ahM"ҁu`<ddHnPz$COԍ.PBܿ· 9ǭ&ܺ0{kMqNk,20cN@s\.;}fFܪY_iEl*w-$*h&"m!ƧDWXoIC`6CbJ;?OδNqq!6Ǩzvv'CEmpnѕ}HJc>co1y8bH21X<X.;?}EzfNМR ]3n􃻽~|&=L%;74ʱ4zM&U1z.K1BEK%ކ\ֆxΉp? \؉%t{Jѿ&x()oK g(:njr՜(Ϲ٤۰I;vV 'F=!`c)0y VEk88X& 2?m>36x%ޛMcHj#5(, Ɩ,?3FVHHj]3%MN>)hv+cvޚ~IB|z]dXam'GM``-|ܞ6j% h󴮭5x0| Q;E6͇~fEOI1bK(ؔwᆺ0!vӡHQ:Ke0AQݭEK/Y fkQR,[$]PQR;n{3mdv҄}(@_| vuǢmåan/9"3ZגQD`߬+rϮQۆyo+gzUL=ú78d ti(?Oy`?b]qzasRïȟ0Q4;#+4>{ k]{l_2MKnAߢ $Z6VC~G!ѭVzE|=۝YC V-gi;o0DJx;6m3^٨F ?{CQomfIU$q.@kPեS&_y}#Jy.Szu~-d6|˼(p@3֗g(xyS[n&fdA/T5IlPV^HD<9Wc,T6f~bdɢSݨ?kH$64wR޾]J[ ͷfz aBF(M⬼PKNw$˩)8ͫ@xL6cBXe*Di[<gð%*%hYdGJN$@xf6;7G P\ק#w r0AwC>KȚ@pJRm21h3m]f,{KC"zT4~Xi۳?;=]~pJ-tI'Q3MƵ?QD݆r v5Id8sgWjK< '>־؈ af5eqRw5:Dwyun7!Q!J(݀u<\^0, =(K.uA|*d7߼8s _ p۔3Cņi$4(uV +T5<&m],;q7{hвaPrM;@7b3(2mzd>/ r7^%z]1Q[أ"C(3)4a\?F8 \]3Ki]RB9qDZ׿L%ߟGSݪ_e`~&U)S.N`0pRPYo̰z7£P!B\\O@@C~t[g6q&5'Ό|cG@qlj(FaCd-$ِYHexiCW~;\&19%AhcڠI1QbJdT/x_b.q?5g'@wmVjW<6`~tWgwHI0<_f Ƕ?4;GP7_1H%6|k"|!P4 ZL9tEN&=*7*YbtĦWSH =Yy5hOO2llCsրQnNnШ,`U85檴wel*F3K&E)c--.ۇc bZcDgґ"13O?if&gVw!gP4[; >Πf~\AnTXgr@`C ^wh^.+h2xH8 |o_y*N|vMh~FEwϯW΁.8%?B~} Ygb$.hEq^9pG '!?g*Gh@M?ڗ~ό udA/X .1icS˺ |!Oi1֙O՟ibzW6>v^?$wt.nBt-Q} R_!jN Y1YQKKdZ5MS~R`K7 к{=" ^ GqY5TR'*7dS<}jx.S. dUl@K^ ks% 3@HLI7Z}?ڈ;x4J=^ | Ѣ:#<g&JZ?4iQ%sv˜Bd-b$cJU'^e漙 y55!ɗ |AeY0\4_Vqu*Ns3*HozWtʾqz'R|feQ8%o++{*/PnҤfuзݐYZWIjݵPdZS#$FM1z&ts(B,)V@=EúF kZ %gIi9 ՗0xf 7ΛGqa_&RvgGm FL7d=Rr3!/ZbFf`k(Ou;MG >g)ă뷀31&MqR^|`ԙ@G*l5wOrnFIxzXә3 "& f̶X2X9kOjZ:n֠1[ch,qml{o?}\wR T 2SQepQ}4YUjLI3 L8w$9tKvR|#/MR1ȁxD(sR<䍌p#Zyf4>.KڒZ B,!-maR M˥ctr}"Wvwd'c:@KuL03YxDI#t-˟y7ue؅4-@!2O-Oc?15v'=J;cpЇi2Zowq%3EA K#2pWyoYr:Z!C wv`>Ihkp;3kGL_mk"ڏ7bX48Ɲ7MJb_6wK3z)՝#钦[:`F#碩ؓ2k sR.+B/ļ0GVRDh4x+@~bvEVIUll5v Oҫ1Вbr=z@ao %!W+r%}rn@ό  |~YCL tE_NZ CunZl`8^k {7N !Ҭ`,4ٔՌ&HkܹK,g)hA]<*%VϪXe,YCQ&2ֿ W8İWMޗ9b|H]r]>Iksgʟ%K`ŭ1iV u0dWFX㲂#wzL` ytl2~&t)Ѥ1{z/,/KʍW o8/HQú5si) l&q-rLr=jsNIf.j{iDR.kO~ī轳n@}`\žoXfXN Uɷv[K{w'ٳ@!p!8e5852h^bOj`rj-5f-,+AL5Ic2Q0|RLKډ%0LkC*wW[+On#WlxG5k[@Tlt>$ lGm fެguF[-/L2Y[#Kicp.&   0\ 6C|{nmR!o~"~u(cqu$7rXحbKx<tQ%k#ļZ'j`+ jUH߈hރ*ʱ Kxj QQ h3v]뾻> Ȭ0cvrk}gb;CǾi8]xګ gQE9kq"56Gg uڼY TXO=8އ݅-6cdGGis޿ Bn$8=MgJXu}O)=JB{.v^6 TN2ᳶZ5sLSԟȚ)BqE NK~=:^_s _^͓j)N1Cl!}B L ! 719zS#+tҮ2cQ矧 mK<~W?n4Lta*u Y@RY-.#(%滕j} IDZB<.{z  쪤2O~U`xk^|}7te}qX춇<'W<9?{U.8|bbX'̆vnH1nT |.ɐNeMh_ўb-&]wi R_b-7 ,T:8"ǖiV-}%ٳ73G@Z[tm;aY?Yz {"jSbUuM7,v\+3eM@aܺQZL ջ:O(jZ`.!6ӆs0Mtkdm0{QIb|˴h*U $%qxKzNE@rXdn!}f _P*ad!X=VpB#Is`[rףih2a`c1b:H{YXNz}x5 r!gH ?E(|thn؇_3B3JZ[ܧ{'O 8 JH1SdȊÅתL7u*zwHx:G. Q YtjOo)Hm~_o(A&1v-P>kq/-g+}Ǩ2%ˌEd\]z$1`8 ؗZ*e5Dt[@,}֢ҧJ7/B6X`Gܷʰ+/e=>`?8:i7Q8=VkPYb%s[.fM-D@յ[*zذk ] cos4ZB~]:ra3.7?mq0q5?Kx_*8rZoQBGN:Z:<.D.>7QV{g#$pږ /6F'zB KlxM< ?3xGUǓ^1Iă1nx:{]渰|N'}3Zmjxg2~$|^v f.3wrJsT$Joz\gH/ɌtOcAHIPg?!!i| Q`?f018x1e6pJ#oԋ*?!S1mTy'&i8;}Q ;_@)J3G0IǶZ̽yt A3(veH#\g-pGe=Ka dx"?/s.S juBk\՚FN:Ē٠UѠ-W~w)0ڞ>Mz;jfWx8ɽ⟛Tp`}n8EP^5zC߳/S'(y[Ov~ui>3R_8JݑJ&vJT8h"ް^(i)*@ɐr5Cp~@xcGx/8k._A)lig )޹ 0ֻK]s7i#u/2Z\S&8&N ]0vw`jWBQk.tPLVh0e%8 蔰ԫ[_V714ov0>\!;^}LCb.n ])Y*CmjL}ܑ%@޻ 2 )Qf="&Uq|q{u>-W[3d9~(-j/63.H=A6\ȂgG@&*r.KШjQeLy9yOD*:5:iA(Y+BA-S)dbXb(u^Ps~ &>Y9Zh2iNNJ(vn.E9Mg$La]p_@3~˴xc}Br$>\bZa轗",.[-&d8OpBs̈LF b!;QsskwWB[0~C_jpO6w:S~$] s;9pdEuQ矮W 6ꃟ;+ڪJm#,@|cn\5dŮ͙|BQF>w=']ͦIND_hG,o/9[2߉amZ\#{vqG_K>Bq(J@Fȁ]+0m)Za[aO]J8O=Qs+35;5FhPPYG)/|nοCU>8Fpܗ昗{slg`2;ک]l35t9ɰhdi1.wQ6qNڟ{0,ObBEinL:s bp| I~EPk*>1Hy PF}b~CjAt59Am>2EJգ)o.E-R{O>e%Gi|# c,>mDV jh=ޚh_٠؂f3d zӌj#̺= ̞ ТYULΏTFj^|l]8~\/\}72k4R%kU'滺E-՟N`!VG>7EJ,aTn#SK_m49|$%de5/QM^AlqRVWqPyyN Wq@ ! )E&A< Gj(3^8>>ag2y:rar&ܗ8vo%sUXʑpg}"C.=ZB} ^kDeۮj '6W Sn .eN=V~!gg[7BvoεF Z Z#6ݪãS8X*V|TᠥѴsX~`ojQ̷CYrhXy`n#nc+&OOBƆ¶- +H_Ґst9B䧚k/dٿV[(Jޥ<*Uwڜ~ htd uNx~(1?5x>3OI@oew!nhd :F+,ofno[}{7(8N|,.w p; s@t>yhhy18ǖ 4/4vt]rH!?MfM[!dqf ͋TY ]zB(\c\k.AES=LW3,@jXS~ ]*7N>MMGX 8$֏?;8pmelz W9r^, >s51yPX+TTrYNY8b-;H~'TKdA #,c6Vgw2U'桁e)UY;{!ˉoƶ֠, (-h*fe5JHǷNTuRDHKDP<.e}y>E<џ}J=X AN;ȵSFWkVTԸ*c "Exz$S jJȾ-o-!M6._U$sںݭg=4Ư>Ҙ^^\30!M>Y0$?8 7>؇u2sT+/3WX:y%L6?rv(ʥ Eoj36Qn_^Ag0gVs_ʖ1=i̋4-U(hXvD F9 Dښ gw/(>mf[+V屩<Hw28|5YEKEtRc0Ғjh NܟX^~Dvw?(1\׏v#r\V U:,+fȴTl^0YP!k%^&=@=-X$-wyb2r-F?҅&p7Ul$D5~tS7 !FXkiG'?bS~P̏RwTP+j2ҜYD]aiAmFXpњJ$ $U~c6-Χ+VR"Itnv!s!>HH^ПpÍa\ygS9,⦷l'8#韞 Ol 0Gr~Z~dy*9o{"7hW,8< )3cĦÕ$&c3R4bJx֫,0'0v SEWXAlJQvK` {C!i!B҈aMWbTyS `xj&N_ƾV6_;u 0ZA8xh^w#vb'.QQO`8l-\Tt]~\=*j]>r >U%ؼ?SB"cJoB5sWW2 .wv هr}+c4T:5Q*l::Eq{Ly9Xn9ժ-}`x5&8(^U>7},`U6gI2SX@9W[⍡",0D΢6G^4Bʆ!Oc >M?cJބv]g`}! U3vڙ=EY`QDJ>hy}:ѣ8:"}}^pN51E b 24+L^hP}'ďoƱ RW/x `Uݬztn פu%TjO сoq6'2ճJ I|KEsYaT2>搂{"M,jʋVqZp>So8((\(0zbP=_SYN% ,")Y& HW7׸j}U13{ ڠT_e7z%L c}%L2HS1(khFa>aVdWv/S7d Kס+D~ZKK4Ǽ5H-V DڂQƳ?aFc&K@Mv8a 붾^iA G0J/ۙRi9 U0Y:GFH&_?l*T/bfPr&EA(bFfF3jAW9@e3ElH7E[..m &LQ# c/?dP{߲*H+>' ʾIQZO]pb.t_v5hm(~Gqܹ˰qqrljHC U]H#͌bCCN_3>;. $K|?x~d+5F=H5`p-oMLᫍfj)XfP_Н KA@/85;eo\ @g!%YHJ08ʵ-` 0ٍP"(o f*m!U3P lG";USH$Yby" T{5T)Ί4NԮ M0WNȂR ?$.N2"mYwnپseo{d}cF`"k!4ī`.B%˘ZCaK  ,WHnGi)sg+wtX$Mu2*'=Am2XekHCTZ>, D,^K3ɫe,A~K|BoEd ܾwG%El5s/F$`!(ъ hgR2{K/ !b+HyV`rӗwk6z&|2ö k?8Ϣ%l)WAl),LgT?ƋYFDcH5!X7Pw ƣN?d"18vKNd0xΪ[y`Ä$<~b4KHzMp R~`@]rrdC|R[O.;kd.9|Z#bV,ۣ7=GK/h8O1K#ִz[g08o C,&FtGߠVg`i1hAIR!q ו B`*V,%yDY~"sPj;8!K">lJ79پ)~Jcх9Sh8 Y3;uzV>WfC8?7n2庳Q{b!ګT 7Wz"+1#Cpm  f݉d0R/s6O_2!vxz&qf zIAF|ww3Pe HT~$sQ"[vv`M kN_DBk?ߧ m*է d*.HʩӅ[LU"|:l9ۼ&+S2 P j &!YK.2^y/{>13)|)?Gϳ#~J[+#QBYSHP@%XTZѸ? {ג(quV];Ӊ`94,q^j_DAn20A!5mwM1ɱ,kFUvu|l?ZhP+Q1wwX}JEW)5vMmBʿ~Za~34:o#0Չ>m+ɟ`5]L"rytWK wv|5^M&<K; :IxnDB/"UXr-̶ LscΑEx{|"@b8-OPW)eQm[")Z"fqrO*g/lXqԶ-»Ω7Al#@LY&^7^ڱ)AB(>231d{GŠގ[!ZP"/;[ez5WH<1ɭ"a2`hCa ¬Vñ=&Vk+ږzz+!uv1cami Xa$SpoI^Ф'IǪorOPXXb*QLŭnVsk+.:ԯEI\qWщ&opzhWGf SxCc]2ЄJ ?zf$Y%7d1xDj͎~np1d> t\x_J\8)\NSLcR5TT=ir0L+'] Җ\̡G~T2zX*MhÐYӟ‘p%~.8`n \,at@u< DGs_;qƾטy߲11vZ fkf*q݁fHF. 8&Ou{c,Pܵ A̟IoՏys_%4œ?2=W<` R>^w#BB~?b\Xqw:ߨ0hƢnc\m) KBzfocqesY hd~1gRM!eY_[fP >E7v[MI;.ltAaVWiDȩJe'4Wd훅2E"vq/GenXuuZo߆Zc{U-~ܰi0 (=92 |9#iCb?'TEBd V3!ƀ5\5%we-4hw`(cib֞ў )R-|( 2SSoش慸c_YAMё^6o:Ќ@0xz nxQT|] V'O?Ywr[)J6oBNe+1[MGv7>bM'^Dzjoj^GΣɉYty nzNj#I]X %9̳Hji!p~UdPpCRc<\eX E vb43BUʻкw TؠuPHwR2~` 55 hL)(kM/Y W]&vS1O ~΀@.l3dEDc ?aE-(6Wq'YYn NlYCXkK|:wbg8RoH5l@uocɤa*Wm?ɪ~!"刺alk8W~]m&fv#A~n@Wzhd7 "mE6ώB آJJ¢'c>R"a߰c2tw'.L<wrQ@a)M ojqaWRFX<;_C%aIl<{(v+%Gm ¸b#pk5,xѥ?`Eb\JA>UB yAd !sͫZԟNQ(H]+W#"lFgʹN!P _q4NK#)`G2p3 ^+;'WucњʜXcjY:IMad"~H?aLh5&F=y[:O;2]3E(dDq şOOKNYիAo+qpMԅrRDE[OZQ*%ӆس4$|QV#@Tfw(( G1C+Ct}4-ÐE0\B^c:]uP#E-J" zt:HV}XRQQJCZ ,'XASM>8z@@YE%~.iIeD5Қ٤qՓG@J8gꔽ8Bgxa ~>G78ySGԼR~-@'58}^Ƞ{hz̲ {zMf4WR3VYj%("xn ^x>nAse5G06! n˅T\>j`!R5x:Q$VrC:)}8z=xvEF:/ ;61[cBE8cq n\ cM bE<ՅxXMt-jyd|J 4 2j=iCCY„6'א,n:UP8.y<=Y\0fvݤWAwx'B\Y"̢0vw¿5'P񠾭ݼPͷc>p~ZwW!D K6M/6Э :n;j=?{^rRɖx!FSE3NMɴ!Ɩ R^W$ZZeyclU JaA60pY)K~-X p6CZ %BGl.F9) 6.fEw?2`z l&%wCحMCx$9Дqj)k!!:7*yNn t#̛̄Hܹ TZfo@oSHCtif* l/Rݞ;f*}P? /цGDٶ@xyH :?Ș{-TeȲpG>@E4uEYvɊc$CH2̗Iy^F3 BnsEI> &SZ]Tfq_Q^,IHbJ9pٰ8., p#Wx`eRtpk!2? <È>C%v|KοtVyzrg#MF0Nq' kI8#? ׵( gfFV#C+g˃*܎65?&lD; %ӨkGV`/Cex8鳟 y R/5Q (' f瀐-w/}w&?70G]bQpb0]bTec? j`\Y5s. #Ef`9V Aݶ-ft򤏓c bpwcM"=<[ uGqKH'fz :[_ {b*>y6KTҟpSgՁzcsYۮm=Scs E߮*uNFFt8b봋Ţ\'OLF t')BȰxQui>5WgSiPN|9$LhrB7-OM3s5N2~fg LeƟںao[1gFd~+Չ&lx߳ l)+k깄]Rzm)o鍧> \ǬTO[|Fc"U0zg-u<՞A>'ͿӸ2HX$(;ف' L;Ώ9^@hLF|t<`]ⴻU<M]gTН'[ô+cGWh+zOU1Mv((\7z\m+7Gد}d{clE۽_"tpMpkUhLi'@|TX7Z/aNv g^jU2$8I@U`\e@!9B-F~xY@2%~.?B6vwal*률b%dL~&]QE*S}cVo)=ubwg[̷ŭ~\>Gk!%2l,af p,uLK撽q LBi5rFG#UQ.0Cl pwE.D:yHI GAX`,P]B-J7A%s̝oXݭ|hPWdLDEF˷u>Z]3)@...\o* C\[t6YuJw:A*0̩ w(aE- 6xy=WJJ?gf73m@`XhFT@e3wz2`{Ԉ1,L愠b8翷?pf!*oO2R'MP'Pu =Q0C@~ږNs?}(éSϮyPioBnоL`bIe.#x(ȪNV8+j]wh ZO8hNTߤ,y <;qCt/u]>8Qҗp!"UvYD-2't8KvKA$գX{a&zbKf28cWMmS~%;ALrr{/5 ?G L%lLSp"tp-[c!g] %6FT9&:B)ǪꔯN=> :&ƚPx|];/-pn(;:+5b.M?%b$Y0YGF%;ڌdnmx_`J]&%7Aۤ {4 {B$4!GЌC KoUۊ`ΜE(K]d㢡l>Z鶸|u~nIj6 4#9TͰ"0~xp<:w]cUU7{˕d8E2&/ѹ_L;Y @vϺ¤(;Ӿt'}`5z'#[NW;XxjNE^Na tXm3O!0F?yJ8uZO1!k%HvAm_lw:F,1uPBRO.0" *.4Id b-<xaĉp5݋Ω0Ҋ@ViBT+#hQ\l#[91Avxj_,i4.#Gԓ,h˭u}9^'B=Ԃޜ;Pw!jAM`T`IWVzG?rΏ@~a'W["*K^nP\ g/sWeiav%nE}'ϝS@Pu3ӒUr P/hХSw/9 z?_w -9=#T$SLRBR=D0kT2ÀE*5QWs1 [5S,mۏ05+&^+BSMo3bg Jz1!t)L%8\A7J!çݰ4kxT{"VL7ğ jT҅U(X!j`olįgnV(.()0=Ƹ@ _w }Rj|o_Mu_)[a.^"[xS(h(KG{|ȍxrY0ߥ*Wit]ٍgY(rE/%zK#aO7ΰK\"WEY1g{飜WUdmixA9Z;*+3-l^.XZԶMxNh7뉪q9$?]gijo.Mg)\ ,KOn! X/h~ =<Gβ=6L>c= `vMJ<]/I"Ibv`V(d PNIR(+;l#˵P[W7"GawިN Y~C#)Fܻs=~.1MB XVx3v#) Od:{zȥɆ@&i͖~k^G{v9`g~e4'%Sܷ +9p vfJـ ߯uWU1wnxXD`)7A͸e"I$(!Zqm ʇ3AMm<Ώ{ T%<KE6W;Uy_Pu bS@ H5ߠ3e*ܰӕmNcTX0C8!:K=9)Y ju6zیa鹓TaCwE?a^lO.!D:P]TcH( ݡM%Xi̪1!_R%ғ2ѱ7JgyDol q9*S9JtHn^$;Evjyoz%9ד˭V + +%`2=A5|6[e\XgH)lZ\l8Mn_C`_ɅPۆb̷Fu\;cS?:֖sq^bV6KSٓo)/yU¾1iEj6̑ŧ]pՕ]Oh|j;Q`A$7e i(fF_0Epݾ7%&GRTd|kvx}@ƆUx#0O)pLM9@#W]ܼKeM*MP[bOUY- |5gLI>py u]"(sڞ4 W &ERᜆpH5EZ|Oos=]"A:Q[h"OA߬jA pca!ۘЖDJR4|& DթDzN0*Q?i?.L{6&t0cˆeP_d6|H{*؆ӜW575"AUb8JB6Є %¡lb~]SJ>nFw胓5H6խR!ZCD v( (L:_VXeAY_LC㖆 84?-BB_2i;-A%v 71m\R8ygsB Kݠ!$FpI$lUy};O;m64vѳFҫVQP;u(VS'$C8RUFeqGLdM͛9P"u M}eRYw?g2Ffu2g;⡗50m)\6AwPً';zl O`*\'XH'-t W{B#BlA&%9AZ[4s'91O=B|vMp"7-T𽬭[mDj}K^sjX/O_a M-ZWqub%_э~څ z!AE4ȺGv ]"ͥgF~{S%ʒaMe@'9τu2\k4mS1C ֳ׀jd68}UPj3QF_u Wk|g?7Kߏr.R^u Ri]عeCaղߺ~ʃ.SGN,E[M5r[K>ˎ2@鰳.B'amlx"gq,*ue $v+?`g`1_3k%\G?_VJe{TS# `2V|BF|:*U#Tq-bx)#Z9dMK]nQ S[}w [{Ǽנ(PxdR'S_s 8^z>K9Ajcv-FkC,vZ7Ã窩gfHm1GS2=<ۏXMouE@OJ H13E(̙88?K?P5R~f`A8fuy %u8ZD!b3~o\GHL? $ډdj$~qbW' Gr g]e|kZ\ rnJgƧcLlFV+,y@P"NH=X'_&o%Bx\NH*14[9@ 0qh#~y&曧ѺqT;#{vvN ?gT_iELҔo/n!N.Qa1R,OwB>b%r_lZu>Fԡʈw6?;/_g"I֢b,F=v֊/]" &bzHod7 Vڨ*Y;n{`CFP5dz4KQ*tQn/9ro9pL^/Up'L+nQ!@>xd+K{&BlJjixfo|̾-Bli<:b"{NZ`Zct3(lC(eFw{ "$ý Cjq|D# V2x'ˁP-Uj/w]XSSRq|՘W:ېP; ɚ2B^%e E$$8p VH}&\~,j7:i ˕|Ym07@h#wR=/>26w>Q<>|YG5[qFĈD fKq|'nǃqtZV:$ĸh=?n7y&H, QsHlq$Uh(* N~q#NN-RN|S:rt`VlHn.{)|a2|Ң+K Ej)腡uF/2ȬVI qEA#}W74Y[WJkGhxS_}n# s,OĠ@imD:yPPtsL 3H}ZEȮ,u_khٛcYFW)jb)> XlFQЦSSKo@l˟ܮ+E+1Ce @IDJʰl21ARmO5x "{򱂍#\uշh_),RAG5o-j7 (tbС2ux;ggkM,宲㯩Ƭ.íuMhc9:@@Awq DD27[EdI'SKї5v麜㈎FčIl}7=ܙ5K.;@{x{?g)kLrLvc[1 ©:*EN]fGoR%:+!d6(ƀn)a"eNH5 -FOҼ{ AI9Pac]~+L=I[t`,]&eH&%8UPʤ[Ƽ+^4Lwty44DQmP~u)S()EHB *(6xzAI eiʿDon)V\FVʇEX;|4ӑׅ'4"L:o.2٤S-b.xu`29yFV# <ʢ`Q.dCXl^'x D#nCzh; w:͓Wؒ(/% w_wQ޷"!к7@r\`y|wrjCgm\yH*PogY).(ڈכ!m-TЁ[SWNU|WB(=_r|Լ~QChʝIR4\ rmRzBt}2dWu 4 8 FdZ2J9]feɯ 2KdWXy5Arbtt#1p@[jy^Khbn( nb垥S/m4-sM8me o I\h\+%Çpbˢs .5# TYJs3K@-@(&.&-_M~S\噼&gj o" @E!Rȋ3eowܽA^&^,~Q_kO"qC "IS8Q"^yO4?;FfiEXq{%R~#Q&eh6L-ӵ)45u3;^0rWݜk.6hBu$< ˉy葵s[֎/K־ ^ Qfy_^EBCSiyIWPMgiǗ3.2ӲV^Ι:!Kf:Nx>2|Ne[a/plTEq83ԝT3d`(Ol uB\ֆK" qϐ/-49ob~5ۛTlD]ZbWҒg6N~Tfr?quYZWLYyѽo%s4\#q@PcO9?&ƚ%s :CGr+V[n!, d+O?>b{GZםc-Uc]2u,eQR2qk"1byVdm)qvҞSwҋWvDq8wMIo<]nOjA 5#TvyPJ>] ^?6zTaeb06vMDb{5vw%4Ϫ Vo5+=! ׉y"#,9"z(cXbBicJXa} \~A6^_0O7~jQCp(d xq8} ;9b̘ɠKFg\dЎU%&:Pv$m, J /y KL Dx{ K_①ͩ/+ t*KN{4:B0 L*o$"lC[\mgnrO(nXpB`$EoߕQ"RCyj4p]g>2urMɘoܽJaЮ`Nɬb\ak[tǖcWm%Q:fϋÉF W b2|Q,FΒC۲uvta3&|Po}l.S_ x"TE4vG\KqBo6L >T#Thqum6$zk;94&/Yج ~,=s[x̟ vKyJ 5?Ϥ ^/ٯ',ӓѤX+LK tF߭GZ|h[ V*Bz'!"ɯvUZœm ~ɼw{m`QM3ʞk?4ObXo^*0nډ#I2X lj*f|&sdNC |k$7)Ь1C vœ~!žIݿ{`o0s3*U8yH7rY}gA =B|pHig1;u_?hrw"t[A-x) ;PjEgGAk%[Asm-=.4c!`n4W5-Jhy"f}Jt[xKHzz q7ImY6剱aH_e W@Bh%7<14} OЁCDCo*5<Eq8 R|Cvمe҅yN7JМI jHN|ltj(ϗ"*[* ^t5-ft^Ȭקn_0>Q0c4(;G3# 8PEA2`",8%qNvneX`eTjRA+ǖL} hμ i>A+^AX9(.7$Eh1 fUo":FRn~(R7wV G"gxɽh>|쬙pSp:  e/??z*(aЀ B4SnIӺ[mR6ۢ|חJ,,Je(NwPkoWek 3,o9;׼ _!H7^Eu7:j4Bi/20zE]=IlMS|AM8q&5\M2ö"L"v7BT$-٭ /WJ"X\BhV1teɋrk&۱:0 y}D673P׎^'TEi GOW룗unW|ǔWţ*OrI‚|G9'bC~;Ezd /\XyTڷn.Zνɖd1qH[Mj2A/''~Οa%d֝Tl]߉Ŵ; a[n|xsoi6M(09'UUnQHywTU/lj(|)ϫqkKLZSamHAѫhdx:D*P){6ِӴ[OfDe+3[P(4XɇC~]z#E$o^:+Bib H*m v䢽Y߉coW7þ+XlF17`5 {~t.Ay,7?Da$M+SxH1;lM3R;vLڽi2?%Wy15")+VZRskAs/`P6s*'LZlVb^DF2k6D 78Mux.ߚ,mvb{fZn`1[\W‘MB76/:538n\JR#ğcGZ+V  grb!}iu$q[ނc-㥸+{Nqt0}O:h$ &K/ynwAj([laF9廈(wA‡VCuTU*Y<;چ?m8ZakTV,W<*E ej[b@vp^/v.hԡR5w͋]A{<%6X֙ 8v!eʍ]kiL"ޣ:s0 6_I!Ѷucz+0RXX~X+>{+KbȈoq_`M:1?(Ij/ĖjjдgB \t]sV}"aWr&] {cyo&ut+PW*ɫ ~)(曎CP⡐8ԮT̓ ވʖƲcJc:a@գVH:P⤚opyCF5C;؜JQg#qNgf Tٙ%FEdجNZmS{pڰ߁m`ӺnÂ⸓onrYDDU9`IB%@,튔ZPՓR ޱ&+O獜rs}ٛSH2=  z@K.'3:+Mx(–@]\bmٳu%#ykQ?fxfR #\X]hAH}⬞[tQhb:߹V-7z6V>$X͔FHQXBMg4aGJ^˚ /\lݿ41Iez'oA?vx̂1b?(WkKyX}}S2=x(,ƏHɱ<:NxKvT(iC_Пw4vQ[yFg |.ZRhX[Kag{~&CcbW<,6G\m3ci]M4UMh&K_/$AB͍C2R̍yTV`W7F%-L:-F a dwu:`9@P ͵Loe)m7]p( Pܑ̭at[(*7gD\/SJv hQ+΄bq0;"Td a,YnE!nX$S Cyx}`@7! *$rڍN[|n7IssD]_PV*[7jq&ÀdkWt_UԕnI$;c">cwNP 9d:5MRy̐bbє@ƶ/ȸ#[2 5[{U9o3d@*h9y.\Ds|;1?~#o, `(nR-=*rCsyMJI vI+A .(CĈ0nxp?lj` Xx2ݯ*j,&*%!óvJ#SdCdK _6m5n#(r@e1S@kcKAT Az 6yQխP~۬ج\Xn/٭m1%3gQ#,ɽxpf|h@|/L2Ks':|f Gk;֘y[ܔ%+c!u O.nMXC}`څ>bCTL pE3·@YmFiag ^*z\+S+iU@z2 7M N\_ Zq-ТT=aG*TN] V ,n:@sIdwR#|Le_xR\¾zO_Fz}?xHh8]Я YaI[!BՋWY^o녵ΪeRzq&3mSB =@r.X>;j9^9U`!45"`[c뚠/pwд; YW02;v@bGu83$y@lV+Lڣb8[ޙE(Mў\ OJvqcδGsQh}2ǣ}!FliHT.ى;=Bp oz]&y |F4rew-\?~`gVrmn d,rzY5ć* amYB^87%m |2Vb¦_#֌q10EI<ЩlP1/p Z=@#0rŴ?P*KC'7nN`pb.J2xi#ܚ;g! |K6Epxj:xv Y/Rn&ת 煰aC<[&9PC~sK7SN3 yi -c1e NW#jۖD}BDu5˰X55ψV`gU_Wڤu$X2r 0c+9V]]i=Kq=\V"%2]>[?9.nVBo톈(m@GE?ȥ,^`mJa@ tevA#3~}6ֻ u5]TȵVr`8쀠t맅WWs&Sq%Fy~I% ma;i>}De\tFM< 9`7\NF1*G矲em蒼b8DH Q1e_Xz1SYUCwf5UUٺ=59pnp|S.WJ5~굵 #dun>eS̀pM1"!t"zD+; MP]h&$8|ҷ5s1 Y2Uu[Qm3/2m6[~*[dfηWZn,Qc.|aT H( w+ ,[n[m|L;_/YuZЦP`ȥL͘>quX.lu47CC,G52'Ke?@sO&ۛz4lWW9ׂ9A(m$ `Ab6]7iVT=Y ^ꬄ~s0,;osp?e빾@#A"& 2ńϥh{Ӌ[1ˌ,;~Ԩ61߁Ȭ2K18U68.038?xFAEt6&xw.7iX]A=:6f&$ӗaB8b7eӵZJ෹OH aS(:Tlz >ΦޫlB#נQrrE4$ .3Lq f^ԉIGHǭP^Rtpn1 ҁkd4m D7.lzVצsC;c.X~9 wjdo7ܴ]mK;G=zzmR1Q'|ʦAr2k{D dTt~fepe5)~#˾Ho35ZUA,YA] WYme(GN7 #}iz7jc %lӓ Өmv+rJDMV4y86ʒIQ5 dhϛ' d8oL59Q2V8&Eק-yx6=yJG-r)jR3*5*}Bʱ9l::ۤ~&.Pkso+6.!tO R=Y*?Dhro W͕R@5Ju˻hPJIoNJ8lpLkmS X [W}W?Bw#}ksDZP:42ʇ!7 {Vϝ_(fAl?oGWjjbJб@Nq[NHGXO~J8]i(S;)xg:B \kb j12Tn#9nw+fToNry&Še_/ 5첐)<r34;OA+y6-=ZR=i8ܚ^+xD5F2:XM4{hnpO.iJ/(yKϜ=m_;oT";qGU a*QCV(T%TT>ތ8獘4Nm)GT'*]dea8,6%+fc0]Q<~=a'Ye'8LԒr"nP 9U6fnQ(dl3}.?Y@@\'_5`!FU ~&prl3Op, o1Bb8(>l=Q~t>2sVhTd,pv1F]^O1N@VϷzq3u{1Y#s #8}GF~Otwί5bvkn"HQcDEwZO-1c/֙R'uK-ց,  4B.h,I2>0ED+ ro6$C{(:x dk Gȼ3 >}v¢GyR\([|+VAf xֵK>a?XZs{e}){Е)MHvcSuPT<@a)զ)=IK~~ m/igb#gI)WprEUݿJdoTpRҷ/$jW7PXtVs?_W@S2O' m/;!ss(Qh]a}=E?ԣ4p׌k2~J.S`dcIf/F5 \s(b5vw7nUҖ݁³`&d%SR.vA{>F.#ωw^9w6O;-e\t^/<=cƕ~EԧT@]xTٯg7"]+:n66PU~A\0 - `40tK)FjMV ,nmN$/q%SmnV;\B!";V't!P'zA9b0 @W,",/=խیZuΎ -edZ$r=ߝ'vzSmV6 ?WCt ,ҪWh%8u/s/IUA^5k*jdAhSyP\ZKOW2+V3Ĩ?0l *m/Mi-?Z! T%dyh.BkBf.cq;a^C0aNunZ;:8Ž))[4[I.@~l b-~H\U)m̚\L_c*+-@Ool 6${L1 t$}58iFߔ`VHۯ :9a]I@2fr[Aq/_ 4?(KFߦ7 '`ta rDy*.=K0xV z,M5^CtID^Em2V9oA˦ÒHV{!0e>%@kbզ@ O ŅU,'0O ] /Æ~nbaD $yTpD(ykY}p zⰘ/sLRKÈj'n{ڭ;F}WzmMN-5<Ű4ʲr 7VSuȇԚ I_5:Tf5A멀@A}QA?CO "7`d[Ρ0SpWc !jIhN\*k"=r/ýu٘/R75Ԛ0'V2/뵭z+yApca3 p58-(xXQNő C`9\Jl@.g%\x,U elf랾'w҉M-C]o@78w0õH|mHu2rm K뷃do3.*Ocm^_h q\{AC8\Pu>uPaVo6@LdDzg 4su[!u V~ox=N>( "SkbN7IPcv|88H!@blvCQҎԞޚlQAÂ}ۥϖ.QK?݁Uy&Apr?\"rm>z(PUy"_X@5o /IDXF8W1 Zmhxo %BVKvl`S~tuUrZ6N}7jwgMpN#賀Sl/#.ORѠ8!!J+N՚1PEJMt:UHU\P@;JzQqN~+"Q%(`&SuugsHZ3ǏiVkUׄfԘ Śu"z6"9×RЏNru8rpI>!/ mO{sR ˄}_9+jϭIxE #k~?s+2' fO.FU%]7&뜋\Hܫ@ \ 4C֥v Ϋ:llx52xP^Oelf=^"v%@8 '(!*l.ħ-0 eidx|vq̒ 6[^@$ݵ6 V&5_e{ykij8_DMH˗z-;N 1tk-V*9BaFyIdf 9!iٸM#߭H1>37rk;U٫\1DǺj!r=W_̗H"Lie+{bcT<½+vk}D1g?+Z Nv=zId՛tWSr~LKa.B¹O:ɿ< X5G?5`)Y*/56D*!(leYvv'1 L/wD FHٙ3NbQ?mSo 0B,Gks`BdBDcPʏ6@<4|H9Bdz#}x%@[WXD,BnS7te h\Q+2eh_.Dn5EhImNSѡ0]EP2cULf(ƙY󾴥ء\}'Bʬ oU#z.^יa׋x鸝^–K3N.aDH <>gl֠X%lSXȯhLCF:0*Z 73F >;◔󹮾Җ;fYSiF*1}6 qN[hUW8d!xRPv|%v` zXJ;fPH.Y?,!2ILޫI:'J]z/ x߱NR1 v/EdS[.(TKRU}\>crM HHں!jU!2;wS`/i 6X-uLzQ $j9$V%IJ:ަЛ۟;2@覌w]rSŤpM#4Igޱ>kw6KuGh} ȝQ4Aÿ[׶d%gx\$X4#HW;BۛJ3o(QVc8&TS &RRO6/Ɛ4ChQI.ʶ`jԻj[z*D 58%EAQ[8Er]@O.$g&NĔAH@Ft: BKa5$^=u]QNlys f^$7iAr7a'ZDm4UsJ]+ЬG4YDT_s {My?՟R#?*xuOHmg7hE-BtbǮ31[ҁa]nRҸ$*]GɅEBÃs񶦥\/(VA9;4ʴ?HgP̍0c |~m?ipjn9@Y=| ~Vun;Q)fPaM /JT{fp ns+l4{wJ-'YXXUk'¢ORO`K4I:8U`#%7Y`czkӚ|*95`:@ jFcP_IMS`ʟ "Z?EL(& W6v(?8ۭ"GZ6Iݘ[ PoWhlw|7F+~WTL,ܻ;sƫN^0 KO-)qu=&wʙ)o5LtaB,-p<^3vG,Kh l*J"vFNr9G\:ZlnbC(xbݜ[s(uʋAɵlWB5aFb;fU'H6aD輯\."*]=Њ#Guj i,_.UQ;A;3fv[[Mm6=m"ݒdm.i3ڜR@Ԡ$D \ha[Ia"%IY.jZLIIRY`FªʆRpp .{jM"hN>&%h1ݹPe,oFDWj<1p)u|E3c{Tl|mx̙Y.A~M6 S L3' fCu#"5%/s$UX$R=̞P|lTΨso(y$B1W,j/= FM~@neA ~Ey7ˁϚ Fء4c/[_F͔7Ij;;ހ"t$ A.ߣpJ{jB0F y~U.u/Șīa(*%[ɽ~Z *p. k$/("[^'DDK3k14Q4QUIɺEPqc8F#p.wDc%keuac2Fv)lq_5>-t/ OfroS#!TM`"3]É7vP{\8+L7*,Osf~[zsJ"(aǽ< l ٞ+h>ֈs5 ?*b<`(\=%}@݊ ~%+%`+B8Vx&|5y+V@J{֙n*a<JU 4QPCE>GgLP" ^_6eGGFDܢ 1P?.Ը_jOe9^SVԐqmFe[fuQ]dN ٘ G ny ㎡b;"pءKAx-+2ޘI\Zeo,&5.Ďb7(}C}18C(wNJ(꧇ \mx˅`(s}ch6b忬!>_&R~O<0HTܣ6SAWZ-!.{ ;~m<[-C^2ލ1r5Zvq`eo"wƴ_|OQ9Wf<D6= >ĈbA|[-|KrF23~5M}1vF0+#)˱feÌKvmdJTFڙsd/fwǫ -rU+a,FHFo-'La/o~]ሼֳz{xaO־p4;^t0aܦMBUqBmyo\"˻vdGiqĺQd 8y ·vnZ~E| "^ם^3;Mq^1<aFDēHINx==SBA3@5R@.m>2&yBۢДhRj+<@??Đ 6yH\ΦH'eYM䂅n{xz_m<"о"x#VEA5s[f@KS1bY3HaRKz1~, rhL2m }n(PyJp9` jzw0dh9ŏwl 9.oLwݮ>~[|'P44mV+4m>؊7%4FI-d\5UճA 9wKk{ќH yaWLhɐ՝i<b.k&o]f?eU(D"Uivhkk*7AQ4#W=#`8*qIDlE)RF[R[,HӾo@X&G>sLS#:_?Na_<܎,%'R[h };nwr ";L\q*Nm_m%ԝIӼO*hc=ڍٓNCDZO}f->VCf"G@NEnL@\{e2QGvnė1}BK3]xI~8vlMO @ŎUFY KR}b"f@J[+fPfQ[JJξ-_ T{46re=$,fnMz?RUX+8#SlzphcƴVxEZyˊӦw.v0m:yxpU0ESMbD BG5P(v&Jrs Pnv"y7:)KT [wԷ^Zt;1w ',!-/> P=F#r#q󎐄lR|=Y(3]YCa!EvAxܴ>s4.0ǒaaFO0ĸDw\AJ.UPhdL_duq!Kdź!ԟOjMAv2 JBa8ELRj%ܘN|`sU[|X_[g='= d (T40Y|1G4I+5:LǕ^~Yk҅+dB3/FZ5y^_9#_֞&SV7^:s řSOfM-֌0)4. 8\ڪ:C|^U^f鮺mC? I9# J' ?'䝞fw;C ^twP:r4usBd}gO,d"ݶu(! r '`Gִ-] m(;HDx⊙{X)cЖCx[T())Z.6})˕YU~WWײ& U }@W w? QXwk7}HU Q'Dl]aQ&i<ްKJ( 9N,67Ӱ={Տ|65z~*._u j3q9H`LNnOW߭&ϽxNi{3{ PJ:$ɋ?lۺeٶ'ĸnQ'ckk}vxUM֑cxȿ$Œ/ N.?/O퓖u8̦ns6 DQprvj KC3.MF>*{Yo4_!BN+T?y '0/f:A8ج< ;w:6w~;l6;;-^7o;si29]~I!o%AeMlY@PτEaF%nb0ΘP2p=[R[RPmDEq/yHQNpNUNslh|[yL9;Q\,Tvּ; Du|ЁeaQ3 =ڶ<ɀ:`ܼFq5D;nMloB*دk2$K)sY {u0\dOS.hF+-"Q̀`:`>WК^&*r{VU=.a-9]VȔDIa$5>K\pݲ/D~۱˚zf /\e^jm>,d8nn#΢6E e+BvYvmAGviey!(!%p"Mv{:40tZAvBVN^9ivg %/P&10' RO}u 4+ijmjM_Km+h\.H0KVq @I \ktlvE4Dvv hgEqI F0lUL駃B27p(C,`_H-|(q*r'59U{Z%8BZ+;j{OZGZ9QkP9 麸!YcTK-~k$cT՘KKqdʎ5ٛ+z pb?|kL<&w%gx}bN M$=3݀SQd;.Nμo!\CF`umEx"-U+b$4ReW(!)>Wp󄑸ɕH[)嗉7wVG3~χT4m ޢ:y8xc6V? 1G9I9G{п rfYB,`LL kz-<#/!wj/}p*MyzEQgRXFoܰi[+*Tֽ RB2Bʯ*B֯74^z.A6 vt&2GZz06/  2⽋B  ?MG[_ ;%~8؃u1V2%Q=wTL7_Nɧj9AqTtot񫫴~,UtS0[]p)f AZyNQ ~X:c9M&'v?9S+j=sMK F+?qU0ƫ ";K`r?y@ߎC ۘs;jMANJԻED߻'>pbBYt 3rh8AKAm,- oD{G'P̈́WdV*'LI5NaA_f FMPz_.YUdFUI@rVS;fˣ\.Dڊ0 %r]|;}x`D.Hug *Z6!9MSmZsN 5T5[{R{m~1[d'h@qׇ3) rܝ V/ .D'-JWoZDzaM'",@; FK)XcuzNjM,5ƻpqZ^@ Y-OO>־$z: X+v9%E/hj(Hhս;1qKۓA)8^L+J w_-WV3O[4[bWNJ>TJ;/rOItK6SwRU3$΅m%[‰a]!I?]1'|o50ʠǯl_@ su]1 yu:t .ח(]p#A>>2']ZYEQҥkw}Cȿ߮c4aU|0l%pM"ϣp\[C*v+/ygO{:Ɓ by s_g}̼ci_ -;8Y$A7 ;pYV'Of- EϸTN rt?z$;svx9'IR .(NJxN*Նs6Va] ԧUr|rNBĄWoħ P;丫ҋ= /ːe$EU&?^fp>`n)%zec~lx-[ŵ1!ǍE*6a4dȟC3qB=%ftBo.#t3 =zruEkIa%_05ͿxYke媛^m־'me٨-נݮGQg`_E#4IeRa}n*A*fq7Ŕv 5*Y8 0k8{6Wu6r;*ώG\)W',: Gm+3rYh ǯY6&up=qk-Ƶ{SL(RSD#xv`K :gH1`}[ {RZ[īP7gN%M(3f*ϛ!o:ANR^/:R;ΆMb֙r% {_г"zم޵ŬDbQ)91YCPe .RYQHxV dIfD\q.0}:tprk6" 1n$yֹ/T[N&.z]GIsaRR>{e* tǿxY>x7*ma! S+/kKnb͜ +IL:&&du=PyuEgxpj-/H7N .l /@}hjع19#cSOб& Rmŷ%YUcGߢ(G_;)t ?eo=w0yZ_sh4 ff ʍvq34Kw+4-M΋1ۙ*)ErRâ]I̒[#אnillQ VfY4•\H o_%+RQ"+.vu[U9ޚzQ#dw:n8k"vmm (. Naڷ$3d-Kw˛79tg;Zb.؈z [M_=GO.4+&DѲ`4;ŰүE˫Y䴧]?*nxDvAl- IOzQ疝1*ꚜ2j, 3tRR*wj]Z$~x޻|Wj!g L#aEm"1SJJR!vߏ3s'hMv|m曈*;tƌ \/%HU-kv5*?GŽhXjsw.'I2Ks0Sc#n:x0CC-AA&]{"^ʧ“x+#qrcrkaH Ԥ`k 2ThIU);Nk0lX|MӺq^F^jףvMA.v(urM?w 4J 0:H5baeHS`pҋ8_Hr;&`H`!F?:elDΟk#|B#+-M?R[_i]F u4'ϳbn+T̔$*V\ktOUlj "$VS$^Џ02M,y*mjtnP;8)KI %)y6"Z1!`n}%ᆴrQj߃ٹ8)ur HLhFL׋gb!1)2@dk穪*yim,Q_ԅItV0N7v_)zN5H"wyo׵atQH$\/^Wa;zD@DzhUVool4Ơ 9 ;뷄wv_YnF't(x)Qk^f0uPe^2abS7djЊ߃d`I*y'׹ҔD/P ܽ&$= 9]Hq`wLu-}cB{fy'kٷ2R=kF3#_ԗJ -I+d wK*rdoJN0=4,5Ut& &"8.t^jvaB] TKQQ:ᵼz y*WTG>^-e&O,t7l5^e r%I& Z\EoIjsl9ǥFDl鍃#<}c6xCeI"Q5e\~Dۤ"ϫv˝ZW|fddgizingHs<YeHZ,yX ྷg;)z f$;kx=WZ,PLQ?Ƨme|Җ0,XO:}L֐TMʮ9oQZ`]*eFuG{:wsdBz=\IA1ٽ_*5,$`l3=Y,X9 v~k}9sqB=,, l JsS'Xb'7[lހ"94'y] ԃx6`G# l[v, '+x=cs97?`OA{eCR10S)װefWw2!]r0p@z{F7l|3EL({ޫl,]!CAZyDd6~DN4, 6akMs|Js} i+lIJ/#&9K+{$,íY\RF#Á%+1x&jnHbNH; hJCG6N:#62w׋Jձ5ރa~4ϭiyb+a챼7(-}2Ug&=s} M`W`(mRMbcb?U(M1z F/4^'S[G=HЪ1WY+Qotv'%F ^guv'PyODhKoN"uZ2bm*Z.!XZkzXiY7X+PŲ EbAaB{:|S;S!7;6L*[eݨĆCA=]Y7EG R">Ώl$LE W3c7>Ksɑ ~tP#ܠc)H- Yx%ma~&IORԷUk0Y̽>рk44!D 0l%^)QsC @GHir^]L7:ĻMkPM} #u :#s 9Y8 C֑!U]ΎԠD!QU&-ɭד3ɵ>Fe ҢE2R 8۠.QvGZS@YQQ qĔ!-bi]AӌԋZ@kO428Q눊TۻˑZ]j=D]1YRK"Ӑ \Hg w'd[˪Y5;5;)IoPO4Au%7mE0Ϋ`8 ʥn}~4E[43V㘟D9/]ܰUC ~j)@ty0UZ0QBק *_Ӯ }}@l*pq2Vm> ]/6Ad6-DLX{I_<+f|6>/B-xS=T/xڅc=X^/Q#!)uڃPV߃qqժ<:(7xnBdM(x+ Om[S6,,Z;ћThX9ݍAʼ;e+o^cR_ 7$RL8&h_Nʱ |E0K(b>Ӄ/i: ]TMH][lKkh G}t_YRb‘>3 IkxWlB.I: %+VY{02i,ظw3!R.ID./N4K9H\&x4 #-KlNKȔKFQuD>Dⅈ.4D9xFDӁNyv3.ac~t ~l/u9 Cq#*x4: e|i>.mpyB{ף-]" GlB#Dւ9}N[9/zXh5aj$3K pU 8[{*@\ځ.Ji?:H 7~'Hki$JF&tX%*lIv 1t6ZI I |Cq1&` N3,w3ҍ /!}{>90JTU:2. Ƕo ^lú-D0ѱJ=J釵΅V~0 6W981]`zr;Q%rX"P*}Wܟ[AL0D{qA5ZMB9<.'6L4QFY7ۨڍd|;a 0-XE ,,@>/2RG&b& 9Ls}=!']Plx"|񽘼p'A+v$$4ط:t%ϱv[pOo '> Ri]ùɇy' ¨?̑FAy&}d%+_;+3b5T>J*uwXz ,jtN}Q; Z%KKFڵSCA,L7h}O1,FbD 3ІB/խ󁋡1@8F@Wf\t <Ԁq͑/Fݜ5yqGʮ#@MӾ=mFqt.&𔏄 ,*]NMdׁ8&t*6_4?bg!^#'tkYeb#} t2KAl7!K/o.g|;* @vLẕ?%`=e~cft[Δf+R@!9cKbJ@m{N#%Y7-iQp̳ݯU:cNY9eSy K4RTd:3BI\L ska&No03qoNqLMvpd8)Ki'H|)G]gK=t1k:xq2a;UHUV%6Jg|Ρ$e~&V}׆ ':U:ʨCT>oVf?} !3cXwsY"0`]sOR}R |=c c+Vٮ6r6%6HϪ&+,ۅ4W"thƒV;l鍾rj_&6K4GjLbUC2Ym2e ×].XV> zQIssz|"̽"9M6wB S'N+xTM4/Biܭ^]R=E%w%β'=?31nB#/Iv'^[D^Fyf+9؝h(oD}Nn4VPp ,jWr'E۵ -_!:)æ,T6t&696H%B_%jYC)F ;1SJʠmN7آ7ͦ0HZ-_ĽGnֹ٥,Xʩ_eE" N7nnR+v\E1zj4:硆-Ul*ǛKDd'-"o]! H#b4n5{Xq_KtdB \>%`>Β#*#LTQәU?(z,/1@4AIƒrRoygXVxRX^4T%Dž8R V:ޗFט͉]iy}1h$еnh<XK4GR idQ6e"ըˁ:֖4ť8jtj15o˩#+V0'4N 5\sOP']xEa`Sф[d#w Hwꢝ#DF.E4V]@}2{^yޥ WU,r"<\9t҄ ^R5 ZlڈL lUh# \/T4WoZ8fKq+MqFL:;) dŢ΋*]l[6+q\)HR['EN381)MT1.j2vGuS_5u*b*cN= FtgF]@RadEo]ohVܡr7W+l-c- `[Lyr#7Do,1U>~!k'B, Ï\Qm)ۃ!d+SC2 8k"@HTR +i]K,7pŧ^u1`E:8|69t5AbI?;F5qlAS=o~r ak=:'CX=aj@/ul,n '_v33be1 륡.'bX?g x?Ȝ1,\#V!2­z#^Ƹݩ].s:j{0]DՐRÌT{F.!5B‡y01xA5!9Cj`o7UY,No- lT:^Tv!&"F?`8xY A3ߑ;f"'!L1/_8߉a@K1&5OCF#5q|UkPvℏ~VMvM0#y^+~ps2„Uid[exmϯM 7R;=V Y F2.ásK=_4<ï-uTa>q"u4",CrR=v4`, $::K2_:.!|> #md>j*vg0hg׺`FeU:uRryS'X  /mkvWcQZu]% QKaI!1`!tw:<嶈*4zECǑdrΞS|SX1x̃[zfr)]_O -X?3eRU*X,16E;KCžј֬3?l/Rxi\9Ӣ;xגe]sH6ڎqRr2yDĊ7t#<˲vA$@Q.*d5, 0.@]ޅ.ƒ/F{(ȬZpcV^y[+0t9E{ kMal be\+٬cX)oyĤ$~?;)R*MqXRp\s_,}Aʊt5Qlcߞ8sVsI73oҺ ɟ㜭24Qq 4$H h5(j>Q+ȣ} $Br)ste?eK8s˲Ii.c2`C?2^A&Vg˰gbK:ꧮ0 >E唩1SȨ"s>LzgN3y#B<*٪vO[d0'BVV5Wʰ( DRruF-4fPTF#l(?8[\>4LQAdW{]CdMDы(XL y|!to8r끒nRSZCjĹE>aX+H<%ܷ%Tu1b%zVq"'^yc?.Q9,j-zB ՆS#QhN5_ G`&wadB؋d~KAE$#aoC'cLRbl,֘ 9>@CPYCVo(+WW "=CC .i:NUR[n2L+PCksl=hgIG5,Hdw~$h0ц_X{ zAL"oK- sbՌ_yyX%x[]] vj8Z·q#836h 5~hl'a༽x@6j@?_49sűy`D3+h0Fov:FL"Mp.& VTnV{Oz~M! ie'2qt`SZ\wvsrͫ$Xo0f®r81\Yt%J֛&s}X pz)l t_06ZX EOy&!l:.0]Zz-ԑGRvB NJꕎdBRMb`b.Hloz|,!]_874N>_4ʑ[zû_G(yu;Яq#bҡ AsQ Zn|==8΋)EZ2:-1ъ?z}\Rr^QoR:*S`է4X-ށ~c6@!*xfQ\c2,fEND4dNo%sեf#Irj Iej.&߁kؽ/>9XƬfJI 6w 6@|L낥EnT+VΦeS}&Ƨ/06L2(PQL=_+IQC3i1`AL aW4j sdu hZüdwD0̔CT@D ڝXqT*6'Ζr8%SLWrn˙OFd]-MH1⢫e;PZN5m Du`.tGOpR&!g&BP5Q`9HN XJ1fSZS!]wAY\rǟ،# ,;`(Tm'̨d\6@-oY V8E$A$kR|Arf6XmY~5 3dԉ-Ep?Ԫ~[=k8&!e<'̜i<1_| "H1U,oM_8_=gDDS`jH+BCD/q rkY gw*4Lu׿߫s( ІZQkCcdɥ,h'm>b7ibN^Jw j ¾GL^)߀L͜}z'yB$("`H&ڡ_M!8!i'ڡ oG>:^@ ݥ=`+#)aB9~ PM/tO 8^a82%ϳDXWD͖pD䎋-{kTnjd2텫S`ƟTK+/IyEOY.]uL2FF̣p{,PP>M Kpt35a8, <#1 1tڗ'zYq<}2VbLXӔLG&fmKW2b;ٞn힯+{%w^j&\QZzRxe,'@TNF ",4^lYwS~a&e)Ag~2G*XpZWu 3+wk>{'!6+Qr]Q& AY;7Ut;yN y}o(ﲒdyi併? /I%wl+$~VmW"OʴEӦkPm34jpU%TLrJ1LSٺ6Ddq68~%dQ0.7ÝzKZQ߱PN2dICVl=rkf8 *5Xv|*!+T.^0)?`7 YP:AfTý;nW?C.*r6pnWdx61=PV \ɹP'on+™L;b ;K{pSt1x|0E4 /[ ڷ=ĴB8΂:ZܗW(`es݃w5 Je0goՀ5)4 a;{<5m)^!#yl0R (WIM N{b9ػ䒶ĞQ!0Zr{Y}XQI  v <`N1``vnAKf%#Lg\MqR{[& WghcڲRY}V\CyX&͗kH4Gx217!ԂNq׌Xy޻0SΦp$RҔ3Br0Sӧ@UmFk!݌=N+DHI*.͓\GHn 7wTQg+Se}r#vz7<wф LiE2 \\xc+gUY͡=<Ҵ_tfG)\K:}21FYr5RSZۡK Yn5bL-Q4#(2x\ψ p#od4 _)ʀ{}8tuWX#];VD$-ZL@olj^Mw5tH t}~D׻gj^$F[R| 'T+tNbxcz0ݼ+,t@~&WNrMC=:*fR1QEm6zOoV!Ju{#x`N2')q C>`(a򪩧in{vm$ol8yK@S< Dx) ֔?%? +i 1/azպ{A4e܉h4ae\֯Dl-g 7]L pcp'<3kީ t3:>~65| =Uoވw>K|>bH>Ou!eu$0t%AQn6C$-+<Γ@x͛I»pk%yX&Qm:Idmr6T4폺|G-eM>RU0&a+جZDIA^DrO?ɓ~vUԕ!o2*F(k/Rq!yJ(%]~~ǫmC?x uĔ:m+UՂnܠ`{΀~8`1-uS. yV W?B Y{A(VQULr'R R OFUB+"<:0aS- bGvpdZo\gEuS'/{X#(p[ Q/ymavQPOr sG|erk*e's~f9!7W^¤b-Ǿ?4єʠ O_W1c"|Y=*F[W^qV)S+ 2c8^츈Cu>J{DNϓ-Ck[b쭖U9RDװIuw(=5C,i(ZD}̎Wht1GfRODvoWtOzse> gDpPn0fӖ<݅Obp7no'j Dӛ/:vN[.BZSEI|i ϒsdBjթLzmpoLݺiU 9ue#^jt:?P6\/C]Q4ߪEԯ TY]/KҠܪ,wh0PdN8sBeCε@ZH(` D%CY1Ě2`Ox1i@-*\e܇]M5P`26yn|5-ZZaW! nxlP(OA3.?ubDCx{G@xjSPHưm´&$:k@qCܨrf`ٸ$* MS\p\Kv DKElQG2m"f N, ?5ɩ~'cIhG5x 0p%GSr55bd$ŁԍOr gBqaLMV*S4׎]SKٹŃ[jl̑WO\ZQzTlU*[$~Nʠ7ӊI n@>m0WQtKAZ:g.όYcSa7G a8-:Q<sU8 ȳP5l '<< z E΅ Y}alALd3aAP%2>Lʹ.XkYjk=Z1_Ls};^LU2`G=)M5&v&'m[QuBmb"=j$QO] c87 *inXoQ*R# 3ܦa"wPu!'%ARaAjE*11}:)ESpi^֚oj|S0GPD;۽$JX#17CEgXbz*"J~k /%pOZpJ= ۨ+%9養&Wyyze\~P,y}Ơ".ܯPc1-+NӁ3(5fIOdwΰ* sM+'y׮yjb2We ϔ(ڌ:!@#FFd0\^!]j^-kyǐ)_lȬLJ5 >EP\q}ՔRJIQ(MiYu@su^E/nmއ6bwT2!^W&'+"k%| c9K|>#j'jcGSȋq q=9 rײ4L֟+%⒈ęWnw5`h,S0%%CE%=HҊ^|]`xƱcV{!/ "#9M$v~>?R'2r9meupbE]y*ﴡ۪q2jAʘ8M qч`^o,MjfEDR`,d]Lݮn"ozMFlniom($K13oHpjCR IPO :{g?@}"%4TL^s\#ʨLC.ae54 S*ֺeV |&gN,1wjt'#m+v ~X'ɪoXGó>{Y#)a;QV?vtؔ/L_6]|`&4LrdK͚BhtJ qߔ̬|2aq{Er<4A^ c}}rEe'(W 6ĕ%7V qO1FI0ZM-wDZLv ,Mϸ*@sʪ&iխS @>BiX{2 4M( oh.Nc9stE WRLd,eä* MA,߽gϻ |=m./!O X{j16u}ĥ5GVNP]]'cJk6뻐8Nޕ, آ,"o|#T#pƐ|NT:˟8Ngx#nh?%x4Xlm*eSe CMqJm?1idIFn rtY72h4dIHS0vJ^,tcEҖ*`Kܟe[!tkw`{tjLni5fv)6h鄎ٿ(aL}App{;>uA!gY-Oܨ1qt Y)̎o;^+@֭}EH(]YbcmrwH~CgP.#3vr[n=06;}J%i!Kwp 17~?FnAv q;#c{p!]p=u |_~YQw{TK%[!I9|:5Mm[8BÎZEPR̒&pܫ+q~SȕQ/J!Ӊ#MYIr7+ݼ¤kr3=Ze(cR;𷫧S#ܘ5\$p)NӋz?F&Frc1B-R]8 oz/m}^J}Qe+sH1?_ kU AZ,5Y ]vϥɽ-ie) B8j"G-a MkF9_6f)`S揊 {4wQR,Nj6_XP 9~x& 9W-1>$N<>ZT O:QҢf`/BbsCJ"qhwM7ytk(L ۡ* A o3;G; Bf"Aށ j<0s~ am'ɭgo{ّmꋶmT]\UWrN3c/M/1o9OWd,Jaud-.G>@VO֚~)1%$syۮ}cA~@R~1FppT9 v|.6ۦ,`Bz-XCip'4%-`9 o54GV%4,D"A#eGeu<Xvo1e8f"q"0 A9H *^ >e>*539BE96k-_Hcs=cE3 Xf|Mؗ LD](# P# VΖmA[P1.Y5cjm/hOT;7Q lA}ڮ!ՕʠCMdAoffZsy[ INZv ekuK|[HF?P[֭VRC{;d>y7bt7n#]aKrҝ.2\]2<7k6 $z}vjw30]aWJ@.V-kR dyQL_gZ[Dl᾵ݐ/A=]z(1kg}x2"zvMR7T!u/e3y_V.YX'\=9Yǿ#|ʎ߉-@p)k >^#r9@W/KT~ng#6Bb1ädHPQsQ S.4iɛ6-}Ӑ ջyR)} R\B3%л2OFȘO^(Eҿ@ٱ{|.zK@$q5h;nw78Nr: aG$~aaݳkP%sѐC~U؛•qŭuL谺 *L@EY\fZISʢ7x)Ȥaٿkt9DX$Ǵ.bIOJʧZy;Yૼ=3v\xېK_zrRe,.%oOi'Ze0Y0bij̡PEZ%~ Vvң}_~\ |xΠ E5ԥ#7P5!Z}[wfPeM=^CCF>~R>c݌[Bu%cI nxg؝iLUTs#[@LW.n=e4b)i C\~$ 0kG7 5=c9%weOMdQϾ 4z 4V y.ɱq;?eb#¶yc*B=[Z_d j>]̞4(ȱmVS#R A*kɈ9  &![TQCώRPd^<9ǵ?xNHJ4JwޔRXZ|U1_=ֽHfde`. i_^iwš~ *ܩ3Dw>-;sM-NҧcSB^ ׭_ĹxT) |OzkG(<1l7 "W: 1hNÞD{D)0| 2x[tE 4 N&\RBހ`䨪 s1J=Q݌G؃yxE)vJZQoX|[co8*?jn lz& V[cVR`"V9|}W 4L xFͨleȑ.^5BQ`Ʉ6,O'$|,8i#hE|BX~7i˅w( \T\rY!D N SVEv⃵P36Cm`#̓,`5=a:8 Jǽ}\,Fq;PTWkڻK73uu$Mf/ZI3y9:BrtPT?-l]VXb.. @@D a&`vŤL*{Ƙֿl0Ԣ>)3@S=˚G/!IgU9m@3e UNJCorJ?rqX2EkdUK6ڎ'DDM*12ZTÊ,:!5dI=_"tƣfbi}+{ ݂M- 5+ V\U7-A9d2 v-uV^EҸ,A`O+÷]MiՍ#i>]l3i%(K Q<5*ّ,#`$~zz̪% ⴢhN"w|:!*FNjd` 3(* ->I(:_F< ZWy+f~5aM~V!64"+r* fpQDw'sV~&z1M[a ]iq8&53Ad/^fw5$(N P].7EH3ZWXwS|:XqKx I^`\onLTV n,Qn ,Li1TY)쯈Kƿ\ݾݻs-rH93}v[ iו̑r(0G3$=ks=E-{&3Kgd\ie9N)Grb)Pц^3xzFZ@B$obM߉$!cL3sUhF ۪ь-O\րKx8Usȸ߸SuG>@#@=bTOb/`BװT| 0HE=G(%ryìoA3;aS_6WaǥHL]#˴lǀGpY{ܘ;NZ.5j#H$i{Ŧ$5y ҂FlCA~<)mDȫËҁ/1*1!uQ<Ãm jYuݼW<-B \RDx1ZΤ\NnɽKf7xIYy{V`Kv]\TXtO2w`uflK>kfB!Ib)?h4c.3?GR`$eLhn]VkŽR%i/YT缊p9ñ٘ҿ;\a®6N`RC5֠>}gBGķfA ,z5rXiZ%Fl_92uML kPƽJFO ƥG 9։Km]j0r&IdL./-)2z%ĺeeM4rY؎Z}aV42>mXZJпC_T!iƃph43Iގw S+H@.0'fӿwSv;:@u[C$ Wgm l׃=v<+U! \ޏiJ {ΥALV{v_eׁo?T$*-uC9U@-~(a<)5<â1n$Uh@V;S%i~ycf ct xR1>c8z85t ls@SԧJPEDHOi[>@zU-P&sS%PSqNwHUNYq"~骤_ $kT|ڛh?v%"WOfS~AdD%6VQFIMVi䣙9asa`Y,|xh*`RC]Z]q1PH|~SCxgփaU̙FDV^B9P륮pB- A)iOOnaA3g9#!ɴhX1 .*З1m1&: VH[ݶ0_/}|/cX֫zTBjrY9)#||'@2vzDʒMLWҔ^AG;:[5-{u HK/3q- `/qӛ_Ih؂o Δy'~lppf:G^,uhMԣ֭0[¨3Y DTZܚ;ڛ8XG*'O]@xtn9.\VD5[5S$;OxM0 M޿ۏSI| 31ɨ\YK1fwM< u=Js'p39 h]!c>DKyMp`uwbjd9pOg4“^q RHbsc8lKҘWҷfV1Iخ ؞d#3[E!'@oq4bk!G54ׁ=Cc/ccdHb옩WZyL⧑T;9oKe:f`wuިx`ݡ1/)*IO X;MqLxFn*s"ei1 FFߩl=]ȲgDw2ur^x-ZkciR[Uv(ЇYqJǹbn&4EkL>򙀑TkF.KUs:tK2FI )5wa# W:ȍI.遪[8,D * \ ] aN0 >3&="U;p@`Ha/6`wԬ|M$A]LnL޽Ⅸҋƅ:}' we6D5C"{yRY&cgzMP yQ65.Dwˠo )Ѣ!zxƃW6"I½{8 y}}Iv.—ֵ`]ׅZ>͖JP~bȿC.VZTx=bthxla16TRa[6̑1}k+yDzIUmQC*=eo|F1I E]4*y[YoͤJbI(ԟd+Aݜ_#uqՎ} Hw k*)vpgޛKO%Nml^څ`2b bKeKJ#Άqhega8GU&=j8G&nK\-_ɔ&c>o=; i ɍ̎ǎEMgT`P.RM.Vsn^I3J -e0.if tBA.ǀaZ_Z-<hGa ?ڸ ,~>zj=w-9p2Vn5p-vX[a|١&YBx/5*fn*r4g1~|"a9.G}iso+ŪG;n@_T -j];k+#ӳGȡcא2MP229,I`S d3bi.*EPҼq0t݋\>#%T/j9+G$kB-TY ˞m)vj}FɿD^D5+Kiŧ]|*-D% L D*u׿ɺWR yW#2W @ݰJ[T± >8V[㯬+R?7{82 pޓ/ܨc325<)霿ΐ: ?!Gr)PJ!Mtmt}s3͵_R;W{b(iޙI/b3kL_h? .%=@-lŗo48ьS3+>gg!߈23Wʻ %G7V\495v &ro;zEp+M` ;8[6wga rw-4- ?J?kU,po^ON` DևB)%`Y{ɊE_Y>_Ȱ;,gDب'%s¥ЈY!~N|cVcj0qƾhS0QO']{te77no)i0aG /|p_K+| L;Dح*7: a:<GRc5"t-pUTSfklq2h_v.l Բ鰖.%~OOUki-ܞ_RV6,LIπXASG?Nz">~Z '2WGa(A߈w/Ʀ6!q]׬NJi{&.ƛmDhKasܦ=)D0Y9_#Fu/e ɂ@OzmM9ވzW\rv+;m;S}011@pʇ~E=}EiJQ*u(z~٧z6t~k+ F}j՜d*'AoV2F:}Jrg R䒔7eZ(m(oJI2WF7Rd э-yʓe6Thlw.[DH/}pS/ I|'&h뼎`!{Xah4P/!|fj<1^jcT!zܡOn[M?'Q[^";M-#g_aĖ関㫬K>˟ֆx&}jY8"-O ʛߗ(GSp@n{ <)*My_(wdT1{w`gyNvHSy7>:8ͻos?gB!F-H'I]qCkO m/rv+N@7=neIvFG%6B͞S0ǵmgTfKiMe՘:ͣjbŪz3 8=A"e贑 V^h?>;rOƞ3~sXT1=Ҍ&xd{?aPqqٍi(=_\8iG4]H9{c4[w =(7&ʋ=6ѻL1j^~|Ms}2HHr[# ?mxG9ѭ ~CIwCe9y畬|/&V5r. ?J;RjdG]P4_L:6uEA4!XԹ1F謗m~?vj oyU2w"*=pbc6:0Dƌ@!)}Hp L\@-gtVy4/3S=Fi|U 󓝼s&3Ѹ":ڸ˝;X6ZѪNJy+}rGAk$!-廹Z^%?!dFG{m/Qm Bj}A;i⾬J{ <{'u㭿3-]v`W}[]^<(u5aj S_+n^SfGRrrGӆYÅppKڡDq@KJZv%(|K]=&g/4}[֓EdziGmIюy#(b`z(Ƚ^X>_W!~)|uH/4T m}W=A]ǦIfa\Qnʍ|F:ˍsOZ7arI1JXuA>Y*Cd .'DPDEse,}wnUv#NU603}> ^K)Da*VK./iyo־W޳X<Ɂ=],Mci' f֭7GC"^XDz@o{"3f|Tk+-r`hNs=z{!Ơl.c' ٬}]Bܐ,.GQ )4Qn0̀ōSMvT9ڋ.n AxI;=թanSMR 6>S8K\:h>%-c҃l Ž8Q{/U}W!vϰ"c 04{ҋjԋiʥXg~0U(;#~$:ͳ_ BoO'`+Ys PCJ+0DAؕF:k,ʕ!g }-%! Jf8рh2gU jqDk ٨KB/C7E|3<&ϲP~ĥ.Bj Q+!x"׀>MozÎ^m7f09 eop~N*~L&WG\-V;gry4#,`o=;l'X-@^-joAr nܘ31Y3c',]F$- ;CUe}p-1Su}"_ĺwǃ+_ANCX{Ղ@&0e˪j]U ӵ Z\e6'l9i@)pxRLIɿzjAȘvIp*ؘnGys=W!qrgK^Xįs@։@2=eʺKЖ E,ۉF.bFF|:(02 @4bA띸'=EPGԗ:*@2՞8E jy(*%u P61|XY]e yz0I2}r6q1lag$ʫx,P$1!,yH={cyltuW4곹d:L4:x|y Wg#na p5d0MTSLTO<[OMt{X2_Ej @X$4W{_?,8h°Mh~A?plfY'8y>EgZ60|(}ȯg_9jW}r5-%GN=ȠsX2]4.#_aGm,Y.KFq@gMwr}>2{ZX1ٿ?Kb #e3u4.Ԕӄ9[/QSg<Z?2e<ƹ9jx: y.c"E8Ƅ6 S֤ _*}>/ KVD& ^~RY]ړv ەp. tuZV=FݛWb%Yq9[.:ybKLN0_M6. 8=R׷6{NF װVqf/oB*}nY)*S9"'HuEYJ#Bfe _m/t'cxz)mM¥O>.xS'¨ VS#8&\װ6]ƈ\'W5< B5],m%SZp8^9,tZ9(WCMVlQ1{,Z]D(EI>'qTP ^%O K9| T)B\UH g1qJvַYu`PtY-ŕCK%' g\lEL\pl ~$G AG ur P%aEѺQ_^>߿1O8sYFZ*(-npphƫ|_C nNirf;<3ϥpY"ˆcCsŗFJ<=HH^RȲ2т"mKP :!SaYt1(S}݉I)=2Pw2>+dgl7t^o@y^ʉz2zq ΚX& u8H>BBY6όCYrKZ_9%aOChrfAtեK^-VFNc-z)X|4_j.4͖P!n k3䒼h㽀8і!ŧ/ ѿqX`\(yP.b3m1@u]/4㈕M(!p[vb0-{6@p.r>hլ,/EO[,W.AZVZz俹 +"qO&# >ܾeϤ%A!yz)P]XGvx[mmgL9,X-JN08ķ guDZHMQ+{~eA.8aa+o vp!dXW 8%VvC$Q;Ccr B@7"5㹺S;Sdz=)"meֵ7TZTfP6Uj Ebuu"8@#-ºKPJvXD>ߕA$[E}4^G!%_X3Yc3#γ9]@?{+Gl! 7"A ה P\Z2uܥk'5^crAQՋ&58Z{ MC/t0 %aZ'Iݽ/?*cYڎfI7W?"7'/?BM܏SP$fz-V@qN©A p El'7$M $_ 膏gigMO$aFtѐV3|W47ɭyP\wCa$Ӈ-QɗU[I x9,lgW4IbSBs$){e I4ЀRysϫ6Zl%w؛VS+)YGuk/랩GIJ4[%a#h?\jfyb~k }g`C{jd&C7-̓a=GM]1VȾg2z>n$|{:0*EDcWɀfj $ճ ]}LLRGPodLù~ FZzfYV P5±הȣO]^S1d􈊺9`AU WLmIvK=$Y..㤧мfͿY\N z_-B?a$Uy>OW/[ɑB-D}Knm(U| WEh4J27ЂAX3 ~LEg AŮ wR8)^Gu4<-6s"|)i1$aIb9 c$ rIV#Ud(@TkWah Uqjc0.jDV$d+a<1C= ]-&k9AݜV* AݝzzٍP~7v8bq3v4g$<ݙ2w]Q]YE.OѮ 1~e.Έww_㍐zupE˂_)V_+3{Y6op ;)IbՅ}f.x]1,k$}߭nyՏe<+*MfQ`:P5'3v 1QL Gņq6`4QГsU.6!P)~`9 Zb|hR7ΰ^QkR7pa7"/Q#B8'ؙs E<[GApx?%~)X9PG(/-mok/CH/VdJ{h|Y@V75tGP IQP'JwPt>I5uoeJz4G߻T"7 Cw5zzjSRv47˶Mpj?G ߁ްhZ'.!jD;{wfC9`is_V!w(Ol]Y3 x"H^yU=z<cV@cF`G2RIw4YPi~%O^6m {/ UP`f /P hj~@I1.IWT)2& O6f ?ʓ')I} .=̑:0O>Ln_d굁6>G҂C*"Z^2aRI},ch1q),5Wr2Bi.Jo}YMʞ@go/gј2QS ꕄ@\QAok0m ߭䱥lO6gJ2x@YA?lt88_3ސ_Uʉ t^`dcJ@Cu%/ l Hڨ[ӪaEQF ~a^cAH| 3; &Z9K'5lFveikiʏ8B`eY[,bdw.WBk XEo!18IF OCi5q RA4a ?jƊ$OlNnH`D⚬1/xz1L>Ũ}zu+.8;DDx*[taVz~!7/QK"YU fn㹥TDXg!,7ц2|3#N.4ofnt> 6s0$^"rE%F0Vo#df %:Gڲe u~[t]0)0",AC֩%2+= pQW`泞 ߫yqR#i(xG_-2c ^8UpNyА$m-$}%oPm'sC"-]lvճB w- Z_zpmE_7Kn)d,{g&ǒέ7Qr沽7;Yo6y0gx8`FM;8v%F?'j6=oχv5oh`UYy4Hp+܉ҔS9.\l 3ںAr2ţՔ@L_/pQv ^_IT*ۺw( C)͒?".^!n\/d_:ט2Ãt)O]N ,<0L]2tr$4s.}'LdgiPwTl JCIgpiѴ <:Zd. z㴎X0K%u*r-0ql'[i%j.$Dc ϠA쇰7j% A>}\wE O4\٘91%g^ȾZ9G@0ahT}.$S5)wRsA!3ȞjZxa SO4 `>x >\҂[2{(מaߑ{ibwjʐ`Ҹ_^U0+ YWp[} Mee/Pv:Nѭng)y*>nîԭ>m/u uxIOl&[t,zO'2T͚Қe d#ſw48m?d{>BbtЄ;$ۓI6 4;B䓪.$YtbTHI,p QZ*7p{=`J+c`@ 9"Ӽ ^Cy*CH|XdVeu(^1hvdF>"f0L?zuⰄR8vd"A4xFED!M$I/eJzen8bfQ+!EݚLmEdA޼ܪ\ ѢCT2ZbO0:iή5o]!=)a{i =ᩎ^pj%rS@EGo(XMWAr*J޺Yx"a ?-j3nګdxNП&PQ誸^O΢ BtMT"!Dˣ\vs2g^:2xu C8"`^PB#i}T0?Yڼxz7y+:_Tϵb綣VS*B׋ʃ"P{CͬӤgњa@ut\_"ytc3cnNVʂ*|7cϗ2<u[$#ߍqq#Ly;+ⱅUuWj? 7BYK^>xfܝtUG;v.#~鿻}~e?QVQ}Tяf;ɰ?v܆)_1 ' G!ۂ%' åmH]zBV8c+ړT8ɔt3RHO=OnQBgVxLы 0} o}d,{1g=NT\4XÚ˷cSUˌɘTM\rKvfA>!l'WZ6,=wG*#WLY;i'} hL7袴નQ&\˓XZKҐB"T]n$#IVt_|*Ż쬸(CR qA$ &AQ{\aGDUBb z ¢zi9&)ZK_"&M?=ޟƘ d7v+y7A@Us$oV^\'Y .y }fqHzBu\FA]3u #}k|0)x_̎vUpȓejc]O`6(D4ykrD NxD'3HZ,χغP(G6>Z"Wt]ud(MS"vC[*le{- :8PP2 dނaZdo~_ HmzjO&zd E;kD:\d+kȕ2!Jqmw9J|z=T0 ^SX!Z)BYŢ ˅UzR~c4/[J `VW`;TÛvz>bc #^k~49<Οe<&mt&c]X8½kߠ?/Nx;@t>'KFFX,(+>Et4]cS3p^p6}cb@*kӒNA2ODއ.jw2D]<+u ^>ZVg2IUx(6F58 \ A~ q>:x/ WZDY}a,iu$hj1V^(״b9!}'} 0 ,aM Rֲ>wQΰf#o*K6Iq}xFGCZ5\#~N{lV[}x_CX^EbJgPz3%pɪlceE NgU%:Nqĉқ3S P%*2YӀ9}RZ n%!H~{X6S3Pɖ07; Dʵ1х'+ Ğ#.w2:TrVq{У=ޜ r|d Pƾly&%=<+3LeՇL3p|9muGկr; -mރ:dr.XDӠ"Bqo)5YYȨ_"?sC:!dxhUswCHj(D\E J F6jwkQ͝;?$鐶[1m[N۽` ]ǣ u!G3рG..xPiƃ{w=$RWH/frALQ|IE) B8V97-Te}AݟЩu_xiZX<\ XZL]ˊEᬤGLr K=6Iu6(glmDĉ!u= uWǿE[Γ;m\C,[L5ږk(@>?(o8j,(gsC%qZ WC{^B!~zyF] W&SVfJU}$OF3JXIְC^4ONq` V 4֧YG :۸v0ޒGGL(mk|$|%{trH8f6$/ܲ$1%}4~ih 'eYvtpq.gh 4^8)pOj]CDfwaDbA5pE+QsWvrEi6*ZJ&EJ&a'dE1vhɢRjgh<CD1)0G0zI*I͌m dzU^3d" \{kSPC \Rv¢ħ-X'>β(~Z)iXUC{,qubMDF gT>FXdtz_ F~)gh4Ps^a2mzO`Gّ/]ԙTp'*u SyLܦ#Fm䵯z[?=.OJY6 ( /h1W#@vR>eԋ{4Axa+=1S/ڬB}ó-N+~jbyN?1nQWHw# Z+ڤidšP #RCq DBoظԑ;3P9.=p#kxrzf~ӗ9I&OBbtY%?YV*mth|, 41XU烼44 m@a'O2x~l;#Ѫ`I40[^H؃_CˠaeWI,LPIIH#hXBن9D`B5_@ l~8mb"Pyfqq*FFRn[>"F@!?!G/iRͭrjZQOinr|Ju""WG9AT\(!n]PyPRV9{)$QpLCÄ#бh/0 'C?I5Ä+B2z`&Xze%XO$DN4YH4=Gn'd7ĂD?\Bdz;1omJŭr%+cd%Y|J@jѕl`@ 6vv1+|7k=.,09I&> XO28[ G 4!Sbt苔o]˝M Inao^p.m2h@4sWܚt_q;%{/^J@U1k\|xyLy ؤŋBy'hjCz!Ğr(? *g!8G؃ ;e6%8<^m@*p;3_,5VǽoMsK~`Jt([ՂkrF'z&bti2A 0ͤm E[H\faN檗8ҹٷ'^Xp Mh6f9uяQ4Mئ!WKk5LUzu FljKZH#)R[G2 .Urɽ0YZEt{L( 16H s}">[fu+ 邪a|$BFMj¦ 9]*[w%b[$$ܓFb;G/5B"O[1iD>Ty0b~lJ'h"~>+W ( iW*pph-<ه 1LRkA3b 닷t %I6zpH\nOR'U^VUQ\c\5eCG9MXNw *qM{:j7-Ⱦ~}qɄ V<i 䊕TY3sQ:.2q1a4'3K@`Q}ocWI߭3P*yc$@l)ZYƸw.1)6mwpuݦEvbeSRkXx>Q/ɒ]t w3G;&Et`P)+L?ln3E9 *E]-^QlMQJ&rriyWwيGSW\Yd4uRU!!1\ pg@OeBTݻNFK't^#8oc0%*E@5{-sZ[!*&=r5LK_Uq8.WD;#GzیRd>JXwj*|(\QD(2'h=r+x`^SYyQ$%F'9G[\吚u_$ONtoV}`9#sHs6<^p (VHh֘/nƥwY)!P RJd QOjy_@>όpR71{%l;O7ͳ@+@Mvftsznv!~5ڒhvsz__`c6unבׄƏg)"9ǂտ&>*}J~@Ւk(}U&3 g oF**QcH~䏨ɲl!7}p$9՞FG`$ DlLPd l/+1Y s)ep<O[ X Q 9Y s4D z|>L a>q xWf\,XCėEo{g<5b5G6y{,w+`# ҆9 tf52oi^#ߋњQ /0r-'7e`0NԘyexeeJ sɔ2֣j0̟P&I+94$3ӽY5"fv9QAV h ޔ>3JMgξeJ֟L-~RrzG7NQl,o #!E۱"Ui@wx E+H*ì+saM,JFQ(jSf:~[0U>;r -JlՈJY_ 2$5?y-d}e},8%Es-xIj,b7]cd֊h"df=1/h(T}!w&UIW1d˜R R?.Eב>xDnT1JH?hT>YsqE޻҄C':`vވظ sc1,UUT0O :/;vN.k'HfRX AVsYKV`.ʻp/NqicrBw JuVs_Pg1YB fLù/X\JcXg6J911đŔ0sC 6ג*9j&FHk"&~/7./9($I=]C(W/+&t?cPN47v83;-3JOM F\w&m2km=rUQ֪h;ϓGVfDlҌ!R>DD%ǘɱ-'5!FSgܥ/D>9}ĞhyRj\$ PiRLm_=8GƼ`- Bd$d=SD gQ;';?ITSE+%㘐 2zRۚ{“.~!Xզ(ݬyqKvʈΙCΚ :1CEyY} 钀"/8?~!}k!,OLf͋|{MєYJ̊/͊' l|Fu˞#sK +;aI }:½挆v5|Ŝajigře ~JPGUUV`oT$Ej\oHJIhӑ%zס6n+a8oi#41,[e\ʔ[} 4w8n۽ AGEҺ/"Gh"`e+ےPLK%g~_/]hXn)s`?HYa {9p9:>4+(Tw<(W"EAn2|& @Qf9!|]M0?]3q<'½znP:<&g`Q[ƩHTPzr1oaNVrl `u7qE:japh Vl}82ה~W1Q)kπ @ k0^ۢpMpѤ C(2Li;:|^-񔴂2y_N)>3Ѥޚsձb\`4dUb :?9ϭZcޯQ5^J%ovwR#1@Ak^ tʷ8zVk;FP+ JU"A\{%:F}Wkn x<}o;ҁ %~}h5IT~ 2'<+{C˾o7lQ?{ficJCk8Zݨ5ͻ]xAO;ťij=J>.LsΩc۪7D'IнAGGQxfxčP* Ȧ?]c(C­dB0MJn'~Sݍ]m hNE()XCx:vw%/YuŌ'{  /a,[bUyNEI$fc70f"}4wTEwdAXpW9lUP$W܃Ʊ4Tџs[AVs-`ߠѤ+-B';/4:HzqES1,AnasNmZox o"= +2&n1q|K1nLN+9{7j%^r_nN2ɨKl΁8[FwIkCi5F)~H!Iqn<=;6jy lj33ãIw v=S9AW܉PYGDTx}olmj-iaQENs QG5Ďw˧_قaqNDT$AzsM?0[~Ο:;M2zaG 'nB\Jq nfMGYpXGF-~L]7q3 >7lAY|ҠA%PT,}Xԗ[dE1@;r3%q1R;7l!qËL Ax77d>"*9>w ocPxaojy=sY/%S$ _^?:63[>-<t'^LG4 ΂DN3H"`"O+e كwMF̳JIb=챼 ,$=b#>6Kp{Xgyt/ K6,n$'F% jGXzÇH v'Ǯpוk_qlAi!X2#T-Qtx' Tcioo0ފI1)H4&8ʆ) Mi *F9ߥc VEtK ͫZ1$,pyDN=y*(+g'IQ4ݝ;amy堚rd r-8aT:n6 ;W*nZ\0~"JC#£ĪdH'䚕J:0(&=3*659#[!l~^ ZgWK8rh cg&Z<ғJ^+W|Qai`CB9(4jח ]ONwg@?z̹^4$<:i+3 ½J 9mZE>%z˵xoeŮz:y<6o߶?>g;73IRa@'h:JFxA9|Ȝ$V TO3ǒI6- OAN=:~+p^#$f sNx{xpe0f8_6@].4A,a$0_m .9{˖F0x·ʹqy .Ji B)ng#ޜ.q?~v+iE+/Awk:JDFuTY[es0~x Za]AtI[i#7׋3F('j$<\7 K,0Jc-,r>R)Id?-~` U!v` ȼsZgQ ZxsfRBtN3#4T} IEbb׋"ڮxnpZCvkM[x_=1TUk醅(L5Wv HT_BHs&PTY4fZݮ>=7(B%̘7 !>fdl g NyI\wu{#.+7N58ad&uNį -aǹ:SoS꥞"C 0dlV7ӏς |Y{6 /ZFBdnfbp$3|mW<(fw|EROfJ!dz,zrkKl׸@)epZ@4fcsW-0G}VD E]n숊\^4]@3xagBvmce? 5ԈV[MB\] rjY`Q蔲GC$dA/z/n(eRv"uݱ:ocQYg*#r`g _; 4ͽ&JH4Q :{cJFN9bV$:P(q= ώM~=E-g+o-1kKu4&GC2:Sqb:X:o\Nq:\2ۚlKNm甇=0"x Cޡhڑ-sG_Y\Eɳ.^Cr.lO !q$o&2˪i pԟ \> Ior-qCa72usTw[Gj{VK30c$J`Lk)=$94Yno VLB@ˆ eP p"~DDC$}`MF&"P=` µ"wEJD=!^,yA/[%ʖT+az؟ݻyZ&+R_or-&eYƏZ$PNn!$#l A!HU2KSxW} קgŨ \0No"m$*1El3I\9M˥ 8p=!ajU *`X bbSIPL 2E`؋BuhrZ.z}VK}*Kw0Z<̀g0qV/Q֙@iigA}`x[˒Dt4vdg'#4@ƞby2]J|/K Nmǭ;HaI׻[siT*>#OPjKA:bǯiՂ ZvЊ6'&w9lNfޢٴмŚ峟%"「 9; +_W)KSi(ʂVqr|Y"=D'v-7 Ñ ع<}O<R)+]x~ $\No`z,? edFB3zb$Gf7b?D`gtGv7h 7CաM<>}d-5mY{D+:_d2d>4C4 r,,AqVm%n'"]½12ŏoV4@w4;<멼*KWg%v&,^na8NC #ٙ%5`(-]o [SIRV,b\Ooۘ,p=SpA8 G/QעDe+ KBBu4bz]㉀?Gtxh"髤Ȅ~Iug.YqYj&&k}@5"ڄż<6#o ϺS.?40}dʈ)1R ljσ c*c,}ѝÞ%\#AV/nF .Ǵhg:6)];e h"%SUႳ%I&GTFWn55Ke!i eZLog?ۻ9̀1Os<=SQjTR$[EuJl[qR20d id} %AL7o9HK\b񱦒JP"S,nrfp91I/9i4sb&DdXZAcJ$m-tY %m@Y$s&pQ΂^*xe§RP>ުm1UdŸUFإ W{MӉI;Q_n7|]\E[ֲΑմ tjHAְ%Cv+u; Bm,;IllTY3 nsrJpRrˑJ΁ȗ1tCrB%=/C˲I|Ձ=JؙNgit} l׭PtR{$SJ> j~ƁBi?xIf^Ր mgbPnnxeWd`W_?&W@25FLM1W+LZYxn}0ZDʺ}" &( &lT]}robA zOvizB`XB77Zae3utax47.e}k/DhlQm!ɼ9Ѥ/_CCD1cr _a\B2{i&t498s=O+dQG1sb)}4^'XӞj}'+`Tk143G}ީյi߈,R3GZUk@n #"vn+*bG>"rgb"nk֙iƂ |4pKئfH'+d-:KU,N32LUVRr8s{OH TRB(<HyWE_!ݍB.`u] Add#ax!qUmaQ%/hX $k ޛ_!9=~(K:`nCTsrpi2O&bB/ UH-MǑ=8Ϻ~pt\Q y&s˥3v_y|$tDGxd~If'粱^<+?Kjؐ杕Tkׂ :~ϧ\)A[CLD)RApb&a&nwuPS~֟7çy+o X{1Qm7aga}L+kz,}&lmwW/tqk ʹ!A 74i(d`r>zd'Wϥ2ZO1CH 1E1emUyɭl>?<0@7 /$_%PR>}ItX6A47EvEu4KqVNک0~A TI3z?9PW3 zpŭlzwQY ?].uia(P=zE3JXE AҸQʑiDgۆw&4d͛$J~*HXl~Bfgdy?ʲ;(!/{ f6J5pbP0[ /` ΂slTLJt$<`l>x_#̈ My v'eȫ*oף R>h3Bܞ93#:̊zxL#Ν:s@F$"q!WbZo _kCd7>M>a2\Tӱ,(0!1 hzP(^ wceNɫŔA̳\PXoz'NڍJtm[I$e] ;m3LJ7=d3 H|u0ش1/YȌܢa0ΰFRYg5# \bbC bh{b[.$r#bbbUU?yO+OZ?v.apVx6a:X3rW#;J%FuX+݀h^N73LjA#L#\o;k$tLzAo ETSi0$/)NCM%mXzr|1ٽ<*!u +͔Bȧ5z]'m%gy u [OOBVp$ 6E~ L>H;lqB1&~ `G#D%cL%K6ꡱD:>Y}AnzDߑr@a"M̶OM*H膀?tXfŘx }m|!\DD@?yi.,&b-T(ݪ8.VL]t kᆃ mA_vJ*AW J1V[PhϤtiXloV8}M&] ,m.D Sdcy B7D|4RCEѼjdhj;cJG%0P5 'Lk!AY UK$$ΏwA:LBi]9>YnoRnK)CXE^<gYq Rq\Gi9*ֶX)euk|dwx g/ pHxP"ěsK:81_arﯝcHeܷٗK|_)V\LKx|O4\Zæ/tyE9rLPmeu6C/wt}yy,b7DϨh}?SgrQJ|,Tn{T}YmHJ=a^X&c+(mO Pd!j%X#+WDCkz`pQBr/5{v^\s{ɠ<`t] e-p=iOvKP!f,H%?@枓;W҃"a{Q , *&oj,SKg>,bPEcnۊ}mKg&GX*7;8I_8sU̸8qVA9X2<ǧOf}ؒ =&>59)T(q/`Sbԟgےũ/1q95Г ;gpAE?>.?)4%jngVMl5mzl]F$;GG|;`L UZ@E:+*T>CBu?66 =A%9*WE8e+ޫ$B~Oգ&MĕmZ- 6GvtG.J~Ζ)2O藎^^钂G&ߞ|D-|p>6#0x gwS #$MR:߿ 7t~)|QĴs|:x׏d\Ln crB 1Ѓ8lD,vX6dOG@v3uWXJ:H'?}Dvqq o%FMBT&)IBS^CP~vpovI}L\yͪ@? AwŎ][ӑh)F6 02!+a< L_D+\ɘ!IhAc6zan& p:[JlXDK x]z42ovoDPD]``T4C4VI1҂?s[eU'Plh5nH,踽k  (C0-A]n ~ ֭؇;glN1? @mloD,c,Ra_GAuݙEirmVcΊa4J^-FbF&6/ּ,g1͔Bjnr%_m \F;@.lHcPcDNMyFɓ&(k1˹8ݸ4Ti5azq|҄;4ѹ[3"EI$*sZ#YjG (گ7\7Ŏ9+~ǡ Ɵ$mܵ$ _IQ'oQД5W#q:9_7]~ J}^K:h=RR 6m2 ­þu]3[=R+phЗ_CV܍jaaoBUAQ>]~,>,)*`%PW+>0mr;?Ŀ!3qf NF0o P_j,0jPPZ*/P)3@(@ɹ C&19sՔ@$z_Ix+@@>-2i |3y ե|w ~d916;aUG3# 9$+tsF>Q&=yu & #CN-|vLN1&DedSϟi?~yH=5֗%YIi5OKaҊa*jK &c׹ !;QXwN_/[ ѡ0%l%t7親#X%|BbڇAfyؘK>J\T1`}V|ߞqۙ<ڌAfHj;L6l>z'!`Z(hܻj/k/8+\{4qb ̏S.#$.!p:?I!7(x8C(ǸiG1V%,Akmy쥊R`x΂x3!{VvM֭  @ZlcJ6\ELBDf@P‚8׹= 2hņP<5c<9'@K֦Orr4||ܚ:.nfo^$p(c KeJ~bCځ+hK_ ) ]^YVs<9JZDG ϝ :P姪t-˅Oy?<&dq.:6?SDØCa@F <0*vGk 9:83$յZ d!P 97h*?+o H?t_Ȳ]>C=}\;1xq=/9]FWZ.rƉ9ǹH8@#qGpk:|OQX0TlQ~@؄cG,mjnU:vep9*{ jZu ?!(ı /^PY*4Ԍ270s u;!̦uC[F0C`̵Ƽ+Hk2% I(>r0]D,ycmsǼ?hD%?Tpѵ *A%N}HY͎+Xڊq:3Ied!^q.;ڷݟPg')qm>Q}ГbXΐzE[\Ɵ8UPP7#DwޜIJk2mүIZ"TP|Wlbd{Bo4'?WU؇tc%Cs<_և4"+R!yƠp׊/-K#/7΁:)#-fc=\OB67pB-J1$"~rx cdO; f]rr-*Xul]p] ^xyu9zB>ގ^ka6m3t%nlk'՗[bQV%B9Ew4gd TC ʊ`]SŽRwd$;OφJuɵo}#8Z{1? ʞw%NE #ݹZonGRvO2nI/ip\aB)f!4iR6trSkB&e՚v0k7$g;||E>&kΔ4vc,WcQGU0%iK P?=>`zV@(~$D #5E8ZdIX6K{瓬cPFj pHWŃWAdҥ8ǠRC,$/6 z(ܲ~gPy[p(li6뿙xO  4W$KN-NEl%kG$ɼNLE|k ؇MӔa`/=?k95՝"Ӌ.[#*}#S=p6RW|KRN;Fq6.=+nBQc'a{i\ a( qlx/N"k_Ș2U<)~W/MJ|db۷ђE %#?Yc*MBek'8GG1V96/Q59KycA7zVĞl(vr%+jt‡DƤ{"Sw&5 di#M4^4zʁ⶙>$(^PP9<AdB;pf-I+9.SOu| P@P漦&3S å{QhbNT(naȚN\"Ѕ{cNr=%F$ǧ~bjRi#6((%f~uN6 P+Rpg]g X5s$v3Rh\!smﰮꬤ ޞ3 ?):icт`\6;$hrӭ4nF76`[3gdryũѦcvN]g[3i|F,ѮOPZ֋ڸ `.5^ k-׼ZNLV`vWGTYp]|Pݒ#~r`͙,`ͨh6r92+Yd8z"*7:>2/A7k< Zb`eW۽D‹3MWCI&!ŊӥDj8VJ48fꐻ+`OQ[E9gɂ 7KiicF,SNu %xgFy1|:?%#`Cɔ 'V8_8_ ^So9^a^͗ϸɓbyNX4:$f\ vf8/~*3Ʀw6z]fKmP12aOˊP!S#PWzbNYg"p'G42Z7Qռ\$0^أ|_xO7nӏ.-Ф*. pm0ǁjTXYMee9Ɩ3]t#Y7Vr,F<谛Vy|ўҥ=ZwijhX/Վ"dAi܊svn1qbQd<f|4.ƒjɚApHê<:;y"vYK5>+R@')OK(cP#l֜`zy{&vjda rVA\(} V5ӗe@h͕:y= ]N}x{O:gDjY2/,ʼnrC"*#Wzzlb SbؕcR}Y!\'؀`{pT cU֭_ ;iymz|S- Iָ'dք`k{jUs'=摀M[ Ns pj0Fv8Z=BzbI|ؾ㊑'*_%@4#(8 K8t19&uaڧB҄Nx#S]<,tM{Q0µ+)I69靤QQ@B(\+)_'Ǚ~\F%G )$ޞd1:( G>bۈY_OZ1e(U7'W Tl9~ skpZޜk nv2 C 5>Nf_F,a7-nBeOpBI:MI/G?7H%OӮIzk!EG|~}юKW&OhMm8cVc!h̗۫$Yq.xrHOaUSw/mm)É k!$&Bhoh[$~䷶ir,6Ԃ7 *8H:4;@>ө]WbkP ,ɨ^3> %.)/&bW$p܅BK:zlp1,+).6Mc8N(kT`sU}((xx2t9$>!,Fڅ5/rg[\F?f׌ӹBQ9m֫ 4O ƛcE!>p T Kc! lRV\^=Yb+) f^?="r{5̵?A5WZnPh`<. y8;Pot983=qs?BjYQ1\ek Ek ]a{RMlPO!HL&_qsre+ѕ^Y-$z G;[ bd45٣X=f>‰2d$b  (yvݴq/h=.$׫32`,H~ݎy=C0g\y{M]&^'@ iqYhm| ]OsPf 9nG|6S&2As\vMfbL;GEW^><9t}D¸~.";K-8SP;'_h[Qf.!xp{dnBN}0r&l-<ݫzm| zHӂp$UE B "jG.k2 8SQCjLg3"9Kh:4ӎ2h a>3bc"Wןc_Եҝrr&}'9m{[EW@rO}sPtXۘ1 ){Bp9ɠ m5^sN4h3K|1h FQ5bei!(͔bmWDv4N.[0Vۀ;/=D^f11'Na}7BCR44[5%=}&EESkq3k5=oQG >d [.h+d$V bkǯ]6 %4{k2%>,SVT1Ad"~2P2ʦKmmSFl:YGsn2Kd*9G]lOfMi ;*1mDNusvJCa`u PBROUɩplxTmѷT%'7jmkPܫp`x5!"HZzGPne7Y;8JKτ(\q+.HH)]:ne碱k~l#G'z%Z:c1lR끨jv3"GQMi'eD _*H+'pTNU>eCY0a ыNm$%s((>JmKG:N^u\e'{瓿-inEv-.nL|BI0LiQ l&qJ_юB28Eﭸ<1bk>|Ex"Η<|7Af[wtd#?m =( NT ̾Vs`o`P 9#xd,jn#t|y8vb|MrGvq#D<#hzx|.2%X>^4iWUWk9,R[$aʑ}VI>?uH\kJ[&6?m6 TנFH q9xLG֦fz[͎-.*^θ -{뒷z.|x^Rx.,wr-FN&[ 7ynokrFq8ēUfW_v.V79ڭVi=im:^f* xړno:WCUFh!rFtxFniiRN;6586-8VE^NW}FXȨmJ2!g`۬\0ZGOKͧ9ML5~37o/:x7L[mj l:[x~ Dm vxwCy&Z\zc!+r'DL, nnZ0 -k $tn$ލs2q&>MEcg! GNҢQ7J@I4)ϸ#&l0rvfYq CQ% Pl 9 2B&VHڮs?%8xⴽ;rA28s3ai C@!P8hN{JǟtB}V%2J/F=bO!>_G w*FF)U^_8PW.=eKYk72B'=B5`Sg ^b Lֳ/dZu |Q?2He鶖\QڠM\NvdDSREJD5ь֩ A+~VJʕiJM*t6[(Gƪ"H}rjq+KE,Pv19hh$pi"Q2T0ځC \c"1±;`aZ)NL^uzݒTd..l#|XzzājbkVϪ ԔJ]KpƙQk Q +E_Tznhaf8,;OwdԿ(g2٥z}8 Iq 10a_]ŅyPɾHIfͽKd=J_ `&؛%]Ԯ vUJ, #$RH?Qq,a1G33orƫq* oJ(:lJ2!7$ xS=6D\N/H'}i?M&/gPi=\4T/h!x*58N*yN]&Lle܁(=8&vQ<@vF3&3X(5a^Eұ~yn 5,N%! J51 wk#wF0cmPݹ* r~pъ>򾻦e[cub[bTǤ!hsCy5ܸʕܳ!+P;)'Duf+pXPcK"5he-T.|>{P| \:'n:wGJXR8# #1qC;]GGƋI"~b㊍=&h!hFƀRĩu/EE)KU&mކ+6uvP!!PB8plH88{('PSF(i!HcwiHP54,]nIhNiԴ{]%Hs? Rǡ%9wba](ھ4KJe$"ի@H{O]^Jʛ Uc.2CɎqsړ<qd5O\ rj]JBEcxbiR/GL(:uh7fAB`aAV[Ec{N״ ^5YD`,פ]Wq·>U^<؄ [/U'6Þkm4xlp\jKMgV$omI'*G+ $pdSUy26iR HDFB_E8-;xxӗcno k֣bS5>ev} 07,hFҘfew{\(%'K@L5;%3gi}kŴQNzͭ*SOdxR Υmօ[hmO!MD-;/U((!aʜ?V##$JXUuߙcUyi!_`U=0{5 , ڈF@+|o3^ĝ '^Cok&izHہItθeaf!S}8ZֺTg䧣--^|fnj>CO9(- >&b&UNz29@A[?$):;87 yK t i*[ -!6"{_O<\Ub@ ҂ 1T=ʯؓ䅖9~/ &[6GJ"ziM*ϟ3 &4$xrtH8E@ ;}$/Ȑx kc!24$4vI^<&^V^ g3>6UI3IK?F~& p0ͧ F۝sёƅz8ASQ0eY<++9lDwe t(r׼Ljrl~5?W AEE >',ւ,)(sOػFW~m5] ڽls/Xf:@ҤGŋy#ݎ5vSJ",|E hy9xIh\m܍+nF𓻨QC=_OEͬ7|o=7ż rH*u-|,I̛B.< ;ߖKў{8KY )M)S$uKcX ./p?RQ9z#D%Ƒ4 (3ܷɋ*=SLs2mtd 3#ܢ'HFGP$ \ #Jd>9Jң'uv) ]̺ߊhj~#~X†d]n&Ƒg0M0**vrHP[N6K^ȑ@aP1=5ɗ5'z-ߛS2 P/3 ("#Cn5ِYНac+QHۺ,'$.uL`E^ ^IT:ZbTkHBǮp+ysjSq|DXca6 xv[:my89ل<ʖb\jG#&{94O4pp~ ƄLĈwpf{E 䉗f0Vmh+62ce%1U9ђ&&@z$oDbn3ߗ⇭bdc=? PE ^9i\:Ncz: cz^ZF4j1HoD'œS8lBv2R.%fj(14K9QFRObg!1|2T29{̀$|LlcI;ٴ</5`Y0`#Iy D'~L_Drб r{ఱ;Q卻u4mPaH&;LtXi2ASKgu%2ոm"ʵ_3D~$Fٴ2o% ȽՑKibD$kjj#sC9fӇp.+5'p!Hw݋q|2+΁h-> PKv@񭲓$It$.klw9L< &"|ZvWz/u~).#o*~mATMd2T_Z璻 $GF;m{."ao -WaYcYcoT]stESqF+DMNeYTd $ h3Z*<FH3i3ޫXDBm0+/Ῠ۰ᄻ( c;]l4ApϽtW٨]tϐ-`HL٦D!|DKX"Q8^1L4p)NN;A,%L,+/Uȁ9iap"}47<+k쥣hI% @ !{a2f8yYh\}Z^Wx{Ⱦl Hwʽ[lM-˚l 9ʚs%71?`OROc. +QM\|D-t5n.pԴ5!N4:yMe\NYs}oPX/Zb;Xcegy3PrA[MT}Oq*ڠs 82WÝN ]x㨫P ɧwH%vx?MrN M`aT =|78<ܳf%, j{oN[[GO j abjk2Y&TniW!$fdLAg#C|v x} 5|QCK);ފ}Rc3D1x 3# vKJe#wvN$7|:F $cT,hJ2iCƻϙIe$F:ZF{ }}px$۞[]ۇvC(ѴdhEonLW{D:@TdV.ɻ|UzqaK^sxwƿ3=Ӆ~asjJ,cC7oώ1a ^^(#Y``G.LŖ%(pާTdzm=J^GxlD\ 3AT .J |Ȁ_B-ݔsg}.`B6yWL͗~`c6KX 8U&(>myٖ4M`]jetҼRߙV~#EVN[ލg͖K"MDDsNǙƛ;}G5)'rj!cogHWg}^ZyN€]G?WW/eq_Q5N^&MbdY  tCn Hv*Xץ=P!S#7UT-n " !dz`?u.Yw bB*T>kn?Z"+gA!yՔTƵ\~ӇR1k[vbqT$ ZLH5/nTHZ[e_a Oj߫g&|V|A &\D :&PڡnT6!9WӯΪh}pN||(aԨE4TGAd.cwX(vЏO.]X qqp\U.zr"[h ӧc+!)nÉYbmح-a7R=r)63\|(~/ڻQ@>vQF,ݍj9I˴CR '"N8A:by!,볇\|Z)ņn718ݣ2g'.%*o8ASܒЊG5%hA^F 4YٔAK q3bq/;  4`bkpq8r -pZ!S>2[[ޮjo} [^ҿ8?doYZw)sv"Os{xD})Y i}<4UEϞ26mq7@mAԱ'ep&Rc +L,^B*I0ơ}1#^ϥPJV E{UsNϺ2769R扇)s{nhAз*Nr"Q޸@ 3gD7;GL _h2tOes#s^r2@Y3o0Cl;V:M8͖y6Usboӿ7l||U ܯW Njq _jJ{6QI(y7qߜ`o$->/ %d'W(48jW4)hw, `2':Tk Ukĉ\鰦Dܐ &j=)Šq̾)Oj$s$UYs+5?^vQ]AΓ'bG'T"e=CW[eJHql坟Uו3,#8; !(q=$Z-d_{J8v׌rFnA”{jo֨D?t5d ~ v%1^Vy=6{kM٠ rHh΍qVPufK%|<,6R/< &v}N)4zb4k5:08^W={B0A f?XȾ“hG5%^G1Oڵ<k-ţtX/xUؙWq[4zF9(a5uIg!&B 荞ЉNk_dJ[m%7vZDWCȟ54+ vP z d]'xQ?ҙ| >i}샵NZ_zIV洐R:3qg+*J2"x,r딨wQ;N0!!qST0XT(r]K*߂R*Y nD -'W $FhDߋkh'AmWoĈa[B2}C[DaS~ࣔ?/UpX~lq貛nVe{FU?9xw{iI5&vz2W$&*G |Ԟ@j,Ks+=-(DadHaA;[)!\1X{6Ȗ{^|_7IbF_}/ /gzl 'DN&_dzzKPU,n8B}&owؠ].3!^FF.ʈϷz5УOj0JJ ˗DIo* (Lw1buՋ/{EZ gjG}N['N.U UH d?tBQF ݎz4 ډ=$_ Q j3;aS"G]d6gb g#QDQ2DQ儓+ "Wզǥ0@y"\`M") YP7^} $]囶W"k?v2|FҾꑸ4)HIF`vg(4 :"~NA<2_0F9Pƙzv8<injDs%o?40NBx!0٥ePN՝9?4I^Pd {<$Nulݡ`!hnC -XaK "1{ŖՅɺ=N>NV/ߒ%V BFðz)*I8B~*~`L[ Gy1YkoL@;pkN2krn.$v@m>AZ€; eP3W,l1Gw /x>xA ]؋2*^/!%kC^7 h[XbOTlal 2Tϯ^gɽzV·+!4i 5¶U35܊XXóïĘz vS,eh!h¼Q"9 `$FՎ;GnسS$ , c9{.k: 7 ?*&v:lT:x ou8hXҳ.~JqrvYgd'm~Ȃwfr绦11TOpA0>8N+*]3vvBn'V.ZK,aM A9P$=!ss2î#BϯP.2ra1qKsvWac(nlAsz/q4D:i8 idix^涍A И!r4INǽi)5@'J@6 1=kj_]@w!xuN6SENq/IZ&JJX1frJ 46DzPW|]@U@w5MjJ۬Ut0E> aSbX\\}2 CŞ;t,.UrCoZ>skq@3Eox_'F"(& 2S%.K7IIjqPaֳ'٠IY|MH-^L|BbWv{ˡ_Jut*br<:UIt<3h0";Ok) .3sEA5/(FZ-ߒISD6R3j6ldyjkX{@i_u_qh$%_̂1`8bgH]/_lirgga8 Cɐǵ0p-i)xG"!tTlV=OjSVQ\1/ا;EhwzwTl8X@2w/^#\o,i0э2Gz7jg| <a,?N?y)>(#@T(tl8)H|sh_nM唃*?c`3NgMsXJ8*m>:A0݃~']0K }vY-~Dph7504hꭃ#nʓ7$ӄ(}n*KM-@ e9k ʷ3,$8?̇gCAuIho"RX )FŨ)xkOYC.KQJKeC ZWtwJ,cj8< )FJlZ^:礌|VrSx]ȆRނx^dDD{v .# hTkw2vp*WD&& {{F-ޓx2G'#ۤGҫ.gIj<}8;==0S"8;|^)![] H@$`sꤨQU u5T݃0RLO<"xKG?XIw(fPVTUΨ0(=pGf}݇9qPsӾՎ|XNOϰj BD7讲ri{WShF"%* 4X, @QNq8M||Z"0!*˄t+s 7[=|լRΝGILr4Y鈟 >Rϻ6 r&W^})${jשEwӨrxU&)!X]d1'/Kpbep =5BY\,n4U\xLx .gizH[`pT;LthG-:mH@0̤e=DXd@uw;=I[S֑"wrbZ0ZюYpzRpjaA>˸D}$-b8\_s0"tkèGluV,WyD}CS`EWa(:~Bap$$nq`R3M[t)s**FM;/7~/Ro\I^$AgC0t ^+Dj~?w,m9Vh6o04̗vuZqKWǶo؟hQޯʺi_T :]ۗH%8ޠ$~Q>4;d µٞPb/c(] R)*Rgͯdxs!q3|A$*QL*TRUkj tH:EL`l78%U4&K B/K(2hZ0'~hniмW*?j@ d8Y*: €2Ƕ> )H0a$ry{䯰̓4vI'(ULjhh8H MJDZ|Gf !|->$Φ 7Q{?er⋸޴lc#h.=nZls.#{P>n@c)Bּ9 t]@¹DAJؑ] ?ʺ|F\_=%雨E*Za{9ĴE:X&H:ą+b'd̚h\Pϸ9w]QS G(xX2 S{&wHaz8z^"߮q:V"9pY<]M˘)++RI,Xa7޻m6" &AE}a] ;G;OS(jZǘ.Hif}5I~ D|; Nz2f(e9 4!0^F>`  }v/ovrO@c.+Xyq0i%{{*`-(0fe|Cʷ]v&X(EN-0|.-"GpFkȎl uOq.b$ݼY]iɛDM e0tb[\sȟ@gW#*h:и:܊wPQ_ZC*Ĉ},6{uTͼt=8f`"+A$/|3[zQKUNrTf6Cu2. Ā Qע+ DLg{l1/Pn+ VjehH'eS2P^g8I7g`N/5ՔKADW݊'QX3u fK^}K28ykҴBH-FyrSn=8K8I3wdV)6@vf%;G")H$hs ǀ`BT\"i$Z HKUݨS,Cf̥YDOE'[1zwzz0E~e/le'zr4qg p2vؙ4! EĦ8I -MG ۔Sꌸs(@{8Ȁ^zῗ)H vM2 mreo%¼~uJ,3v14/ٶIV|вzsbq*Px~bUODNku|U۴I}"wԔ! C`ԪOp HZn7hGѼ-s#6cMDrpEQ嫬th=mSI}hN*]\03m3>3DFr].qx'L8 ׊lg,:W ND&Y1Wj)H"H;!I`m̮B룅VHك@]q ',{4|1&uԒ'6̓SWR&kVNQ>h4"HugOX:'m06dnpŢ*'˜ݒ(`ptDyz*N]#wJ> MNn{ǯb(&3RU:/TY[ Lo7ev&k-O +yi);'Mj] ̎I|!a9=)Yiuk} ݆gV~̒p|w_'1pAw/g¯'Cy"f+fy`mCdHwvٍiwYVO&+VF0, )Z{Z"@s\/s~?lqʁXa1 o5=iT|/(|fM:V ':.Q1Wnuj?ܔu;=IJ:8;vJܧz/ֺfCDHkBUH3!%k6 +c!l}Yt%~-L č"JV{T9UZ; uAMZaIwv2 !Dp~gK]ȳc #>X,CŚ]֥ZkjѳJ*na9[8ueɗ &U;2|ݬ}JGZa7_sWz$1i ͈ 念z`04uׯ eNX ʟ`/FPq}3cZ( ﺪA\@o4 ]Bn)v"FJ6!z/R=n<=ĚfZkvΠnEubG7@:0[~a,qNkZtʨm̢FՐK3T= [q W.>#)%r뷑GrAnFg U,=0G&̷\w'3B~7e`nAU4fu3q \;RH[){i"j8O=;CO_MVʆa^b]z9-axȣ[(iB5<#Uc} ښ@%c 7J>p2\k PlPf qC|s,2ƈbNj > ?XBj5.<0, ֧i!+d:ŋf Q!|.kge(m1Wzt8 0U 4|?~~bPMVdcjຒJ'c?lh8E:F?/U:oIbql0OC1Ӽ@q s `ki:;eŎ? AD@I?RTLB/~TZ"8B,KH2FU塳L+ZGoغ} 9yVQXxYe^bKS(.Pc]nAw5/REd\77@6\ؓ癎{RGdb#݃v5/HAvRBmB~:ERmyZ/2:'Mh`M o8/2WҎXMM l#LEByTB'RřI7B<=G~ a֜DIi[9Z&;V kb79ɍ``bB`[pW )*%_#/ݨ H*FH{Uy4V baPFhXjB,pzW1)}Ws!& Ph (Vo,QՏ4;I!rQ P,T@ f@H`Ӟ (oo7jbq 29q 1rbf|WjS ;ccPXˍF,JCeh1r뒄.^B$"6ٹj|_3rXor/av 宴U @ zdY8DoX\sd -$2$Kp0w'F< pg?|aPk黮cU nG)-\\vXLЧFi&`W?B0cv&4pz ڱ&˒޲1&TeЬJ .KĚ# 7co56͖Jϰ=o˖  5$v0MX,b,9@oԣr*Ok:AύRtw}> Sa WY|×yP!0&_6"u+>i.:aB<2~?dhctVji2B |aOv;\L yxp-Cc{>u7 ¾pGU5*MDYJ9BV/u@|>Us_$Ad/e6+YUf \0]#rla>\M&Ea=XH藽 ,pqSU`<`iBAӈ+zL)c_):A\b\F :eJA8n þR }%{LϕBk)Uk9nw9IyP$jF_":}jBz43cѲ> MPj2O; 1jIf\zoOhE/EĪog {ZbH/ iFV|,bz#Z ʝahq"Zݳ2WK {& PL)Fb*h4sSsQ CP E04,kO|2 w_$cٔQ)D("pwfTH)g |?zaڼnכbT0^SZDRlk&Xq`v <܅iYe&`18tU9T |{xl0ORCP$.cphgc %t1L]jxG[d|Q`vK |"uzJ iB~.P<YʥP r)㐽}9[sTK7A>"F+|xN*ߎ׳|1fYJ5]e%  #* pI.KT<[(X_hޗKnjYOB6uh*At;rc\ O -=,}_U_\'Jp?~nSi~l2R yCC0ED+ ֧[Vޟ#rڻuWA4K6Ydz :," s^%J:~՞_g`^OfZ7;kO6ÞAĦ=-d@Z%e'Ze75օ݌uL;yJetT}1oWѴ4"Sd|u/\vߌhUl:&$WW7L" 8ON _ЁD'yuEIG:fe۪Kǜg&vKB*J.l/P>[[0\ÃO:2 z.Ye41E+/s)_So^_@РSvޚϑ )*0pI+3>qpcezNXIVrz`F[rspj@5>X 1Bz]OODCQ7`l 1K1"d-sJ)l>%*FoM}K(V[0DQGwa %MV;1|̏[4X6Q:嫲Xt`BCpJ3$D\/yǪ uܐH逆Jt]83 wzIRK~k!\ƚFJ52Q0PQ2{]ҭQ'mHQZӑ77jZfȢӼ;hh( ns.[i~X1c#9iN~iP-Q vwp0{Gf NFU/^eV甦NGfv&5 psv`^;7$WUu[%'wqz.XguJˣu9t l(| 7y"+ve~]TY[g:wsH//>GWh+j eJMI.?M{cx+Κx;GPDgg:DwS#Kx(0d4 G=ƦQ ۮmL +Ev,n*炒zŽ߆ⲈFz;+YD)cZi [͵;|ft$$*x%oWKVOP]h={Wvϟ_R׍e,ĶP`m"(л.sh(9(~"ym*(+iksyHz,pOA-'+0d:X&peѸ)W1=&U]C)iܘCz#3,JfK^0IdGM©x+R&!PT9\bLkCӃ[%[Z(qΪVB& H2"\R11,SQȐH ?@?^שP9ynYMՕtÌpmr̢FÏ&p zJ*xbQ1CGiqSOIT_:gYrN%~mX=PZ6)H oMszlovPyVg:ܡ\*@xƍb]k2+b67vTt+d`AO״hbMڕp3hʀ褽y- Yš m,LY%-q7g0%`բ{<˨ ;!Zδޱdl\xS,u.MeY<+FkT+RiR_$zKN7B_dfH`mVtFh3 ;6kuI3 k5kz_}y!ˑXTgnmkqzI(jU&u mCiJ'Nc|6ơ 3㧊P#4%b t!д緟*{k gsņ׮bW pGϙoWHY J;KMڟg ` q.i}<0ݏ/2#x&Xe(Yr%Y<&#D4>CK<*O0*"k5\diVy7 9+f6%]dM ϼpΌTiB{LW뗬 l4U*hOA4kɌ guL9gg$֐n"&]Im4@Ϩm~ۅxمB*8[@}VA$,pWN0ka=/ծN2v4gKmsGM1|9Lt;#KjV|rWGQm~qɥg|&dnR^8: b[af~wFs -goJ(˨d#KS1͉<7h"~XZoy+r'd+ٻq7tz>(¹uA{~X %&Uzojκ]zoGO䲏ja;Yam:+=D1悠Ja!6L,wR _AVXHE; !N!:+85ѳ`B([%Z8O)65"J~z"E"чsGyWΗ)q< 0Q_k$sdJ/+ ^gw+( Ý: 5r1ܞ1ۭ:wNX .7Ht.Ee0FM'MII ReZ8Y'Xx3rN QWb =4dK2ag٠L37oI% goxM ] $wptA w$bR2JZz w$f>TP9b|ֻ o$4qatvQ-bCe ]`nLX/\ܓ/:uY[30=xlUU %q/ac 8}KZGp iPTXY2!Dj޶فP[jLW! <`h(Ԟkc9EYVSPzT] Pjx<-;! %^or\v55K^Vw(z=K'>[C@Y81 كݍsEfi.5,[c ȅՏV7{=<[ӧWʕ 2x)bnBt xLS5> ͺ^PLoѨ󰲯Wc.6/JXrڃ,=YH`@ɶQ驰M]nD;hb:`/5FAyɷڑ ԡ ӂH 9㈉uXU6!)Wc V9jq_wC{N i 'X:+y=j aX㮧f KJ<˚⦊H-8Yٵe<(:6q斆-4]! 4wz j1V~cw\=N,9\)5u4U4^?yFFv%'UDmDy-$o3E!>?c_fjoU:"JoB?_gz~&.)ښ,SaRZtX9̙aOX-©f,\CgNS/_GTa쩖S(17Ndv\}#4к!H>T$!3(mex07Sa' ȮΝQVe}v(L1;l-Uh1R>7c2UHhY\U_]^F"1.h)i5LKBj ې\A6k|iZk  f!Rڻ Z?>[N,-5j, nSȱW3zG0AM/WYP804?Itd j5B~ VoH_Xd._3k^Ɇx2B0)/? y0_쀘8iRݲ^Y%gl(lܺk8;,>k<&/4%l71ץP9M :Lo2&+ԘmB5cs2JiLn W" gLj5 :C3+Prv46j)^~[q_wAD7軰BFmn?M1#ۦZCpbX(g+o%C- 2[苎w9 vxi[AjPPMXƉqaE2#GPNA"v}xy똯{ "R@P)cϺިshTv C - ߖV$gNz-²ɺgs]Xjiy8; a ymV?sQ귞gJyG]IJiD@)nSGߟ*y9wQ7s!Ʊ`Pͻh"$>X fdɇ,&;Ypl])1=΁j6x1X鰟Ww/+ xqzv s(s0V8./ ]IA`=O5>/ H!e,xKi3(vY(iIl,< ( }l=pWN6pD Iv۶a,$|m,F梅o%:.:TfH2-rIͫ2TҌ#= T5d?Mry^Raz(\5$O`!n-Ex!4NOtBZne &Y EHh6cEAնyAn5:8PUd9M.»5Cȕik׮-EOv[dCO(0z؎sUX:`.QjaZ^⢫)b1ؗȈv-brf{E\y:K ho.[ }H>u! ^jlȣl|(HD}钊R4ƷA Yӧ/"ƀggi]٧+kwUk!_uS邯WAj/ۈMVELc!E=vGm9 /ds$2ʦMpEn[޷+FW_ʆ2ZWWZ$&!PkV7!伓N-YޭˊZ Ku<,K*wzїK$?FI)s_mzNK6@"B_l{I udм Bi"WC[5@\AZ䒟t\s3蕏w!oW#+3RswDkMś |s@d4cTIBjKљ,ѡi5 4=ȡ&FfBJ{6.ES|J,)>_n)Rg˱Mb}6ؤJ7ZɐLp4mޜ/|=R054a_ZMke&H Rk8@ۜBnM{⪭XMKvsiҾVs"P6'.I"nlf!^U4b|"5'ᛉr*bPDtܦ0&W̩xz-*kLL>!_*Md2A8ř 3OU;iq*%EIߞ2 utm`r4mEI6xp1 N.eϗN@;OCK`QC"2íve@ĆϬ6RX #tF6̭MN݋skZ+ioL8j ŴؐyUٖA=#y?A2SV̕{`دv^ʊfBs<2+ Æ'd 2DŽOi-6ޫꖺjbʅ,qUg SR*x+ޫ7QI$u$D7q*1c];pE-]ʢco abR\zW=-%~{x " p2܃HSOC4f4]V> <=zDN |WS2N-,ƍ%G[{|`af^2`b.0rzP-Mbfeܦ7{#[ V;{vBs g01YоkLn1 E!n\ٲ3nNas0SiFш62f"VڗSkCo+G3_Ζ@&@ثq*X"NV)H̊9ދ0jB?i]t:PSlYAFRrްP>nRӨ!~NYߗаAJ̾,G*k(LDLWvﮪV˭dZ/Go|i/&(;rFĐD62Z0 kYܿT?#yMJL޳@7劣Y rN.G]nµتPɂG[Q‚l{$ yp.os.k!L\l5K-#vFP ;ݮiQ`TX)Ru_T=*`@[p>v )FVݤ__6Dk `qƨ*f.Z-% xՅdMCǵ]҅λ 5L.|]?pNVB~l,"WZ֗I?AΠpZ9e ɿPrYP E*4M1\. 3  \caB1r@5{ᢟ8dlH e!ϵutZ P~14ǍS2vdܗC_l*D;[aMÂe{v`3B]/8#ԬL,?Ik`?m`feۼ('CV4!bL!WܨG4nD[;G郛X[̇@ex(G6٫]>?@.VwꉓS?"F28FBO='6mކ t\yag]Le' ]$`R+zfI7d&۴BȆY&Xi3i?aR*:<) g,X+ڊ.<1BkylQՃa"=F.lW|쾭s`%qгAyݿTxo2 OUֿΞ5?];4`XjRst6S{)7)`{r+ c7%LXHHE],3gIpI`5Y+i29LgN܇Ѡb^"SӶH`:Z1cW]|odz^>u˾V Yp]&* *_\zz"+w3b621("2uL-W>TpXrQ}Ry[+_:nU)0ùJwiH]+Ωr~ߥD>mk]wH)N<LyҺ _kQra\4\N5woSv k7fwTŸ ;jjpdBQ$rћN p#k[ 4`]15'7^# {]?457+z&pu ȦBt#׶VIts8SZ_BE;4{e+P5٘$҂c;ݔfZ!!6B՞`I;J (7U _zCAX)Ҩ &duY;? }h9``YZHނ4{_9Rh.k tިkY{6kNrX?Pw~K53m`/EBCٴHoJTEWG(k |LJ5ۘtOEԃ&~Oj[ a<^ Qhk1Nfv61MA;Uo~c)#x8^&]^&,-3\n.dZwiO X­"=h&i{V|{^qjqؘAe:4~~ TJ.PF5bZ#1p{<+!6vfm=A=>'а%?`Z12-k =/mJ!)sK2nہA>]o.¾HoQէOߌ<FpJTzb' I7 !IY*i[qĻ;DeX\#c:%*=Dьcx*h~ٺM;(>HrOE90lϭ>T WZ2qZ$gzGb-e]o;ZuPyQF[Z6;r[tTPk77pjlݿx  (E{yRQ-c3)&ܤhc5hEf}wj "4v(6|D")!b.%UɊًnBpmc_cE*.?Fq5!4VI6ީ[*+䝊Vrj> 0zPZ+fVƬl5j?d&oF9o;̬&/B!ꨭM#/qP38fOњy38(->R ɩB,Il {Q1"U| %x>Z]<ضX? k u OEp_m}ڹ9j!g:XQ]LĒ[y`ff9O^o!,B (^?f6`?b^='7 5FRz9d6=0!-2z0O7WpWa L'ޤt8uruEhP/E2l&C YEFhn&'f.|H;b[EL'qaȬjQ v@6OU>,]j}6z&'fSe}%V~ίxaW"/.aF8z*^<1ToQtV.4%6$} OVnA~++P{RWdQ9Z&\#{p( cłO/];st͐qWeXD kid:`s}6F b282pգs*wt*ص$!Fc-衴*fal[F?Oi.>q'i5AMN`lxm\|ȜU[S1O VG7O O./#*hIY[c9aaUiW)HȶgPi~R?(a-/ 1RIsxb}B`Pd!闶L^$-Ӌeiˮ>_\C Vԁy r, ?HB,+QZ:S7eqW Ҩyگ" \LO4Bx{zRv׍5M ߽_?&%igxlp '1T̹3M_QO)yE{]2:+axcK3܎ (/' X%`"!yqlF'BW֚8A*>͒t\g_[018St98X,tnұa;jMJ/\ap8tLHG"͊\@cDT r+7b-]̫u?t7%R2?G\)3jMH1ۆ;&ߠfV(Oy/0w\l*}xȫU"Y9Șب?қsri,C2Y+B8uA8ł8_,!'oG%VF &BSJD݇]Vx^%:jJ5g9,HY~-zɧv5֏K9,Ȧɤ$:8YjgУڻ,%:~ v(4X.@a u иOez6'Bw |"2J|<@D߮D%ujtI\V٩?Gtnf:8Yk)n/R W>PW[$au8gsu4&2ĒuD8x/+@ b@XF_7/RVӹڀDi>)KYsl*Ǭ=-ˬSٛVZr) #% \HJm E`V`. `/a(3 X~ ~ؙ]lEG)AI1n' iI߭+@Ӿ9]ڤ>nu>ۚ RK࿽|՝`Mm| c}k(?tf~v~ NML*_ﺷysS锪FaUlw` 7!бhy倱-YJbnRkT5{}S1 z\g2G$I^ [xrU<.39ۄ ˆkӧM9%ԥf#SɒOfЎgSGr8h_ tȅ|PƗ{ 5MP=- bO[rb]Mx\*MBdzw롖(;|R|ƥy-8B 18$ 5KAIR?MԪ[DEƑl&t/+LN* hi)o[.EIx *Rb`SSAS8 U'm ]8C| Q1#~WR|L,G! LYՏgv6iɎ,RBՇ$.7kn9'әBTBit-"hvwf.̏w ~rD*2~Y'XԈC{ ϘM bz8B~E*ssG{.2HZ6o q4BQ]otᐑ`?H1p%k'{zNY,3\gL aS1 vzT iEVj5ٗYkeX~ݍ)uY'[%WNPӍ-k46vxcG VYsjw_hnE~+gE}Fy­PU)OOW@!QFI-ie;4Z'^j[D=E{+4 _czVtK@R>ah wG469 ūպʹMDwʖX&cJG&A!tQ=$ASg*dUCYU,!vꈕ(X+W!uPXOYգD3qV?%}ϢTcý\AJ 5䤒жYe cȏ75z\j04K.K-ş6ӣ YUoi֟'[7{5 [nY,1"[]B \PovpOFY5kx U\D]㋍3|X|Q[R7ƫ,[_|_~AR#F^IE2ݮdC*ZK,zYC4:JcΣQP74> .lռ͹= .Gc&rFh.%ԭsͩN Y˚hXV̟ީ,4 S(pF4>Y7Qdlb05[F[:wZ{!èАeB>ѸLc$ly5+c:Z'<Ἧ_c;7ÝʫfC< T!,V{i{Ճi1WQ%Sb 3u[54+ښVF3l@<x8l c[Kvj[Z~x1^^^ؒ..9_5dhօZWa#;Ŀ%° - UcLOLJrvySA2[Y!:GZz ۇ _ MNng,|=5P*jº+3; +\ȈcyPT/jIT0vxe':zu(5׻EoAatAx·|0#uuaHX RxN CEZۓn4zNǚ1"հtݿ0.2HkCULtf~xyNV*=#%TMiF J;Je&LK&qe QN4;RuN 8䥜N\udsE8NCIz̧`֐,x 53\89cI̹u{lxV3uj؍3/2 a! {QB$1mh,7h4NE^,BHx\ PqTqg2Ua>*S\idl0XPxL.7IݒE xqMzqvB;2z*{k0.gqt~Iuc&8p9XZsu. GKNmm#"f>wC>en鞿K#q,A{;ET6='0F(BgE? j`S;rn =]GlRӑC|jLhs.T,P\:j][6C \|,@JȻ2'@ #>/T+!&fȡ2-4pQ]鏕ސ6k1Or˔N(5eΌ8` rY0aUS>DF#G~w'28H -Y#Z2|Y Sl7ʰe֥/$0v>H]@,e.OT(3Y`)B v[$&!Q8$2rlwbY ?&zT10As96̕JIð撳XS$^b]Rb\WP1>v]Nh?J'@2ly3D^{an*ݸ„])$A"I`oo _f̐{]aT&u++p(/Z5=X81EX(%pJ7bF yy7N8D@2zLgmq6 %xH Jơ|&GurT68ƹw(Mc(|F$JcZ*[j/܃8\YGg8G|cE#l6ܗ`iA$Nr [Sѻi8.$ϴF \%\19~e*;=ҡe2}]Ա7h஥*9 Z!C#/ sA݀:qYK!L6NT$sI\tܧ}粳VNKֆ;17J(T>7 qzg9zg ijGe- l~.( _ w:;WTɢD܌ISH t?X//5KO%tf& -<&`*nraYA7sidv]x50'&#t].;uxcxRӾo^n0z>׸#|n#!%<3 Xm` .'zF*5b1U$XWFjG=w7هJIOJlVuG^[['"GH01X7  o] /;(eURI>47Y[2Lj<-J|f21h.ǡ5a'/t+R.jNCUT b(XMďX^`Es?.* i7B`OS^q ?^]ŇԦ$bFpHX_U3=3& L܋'9ގ(*; oZ1*3hG}}=kZ}} B7smi:%1Ax0X=`Qv`YKeMkHoZ}$Jy豈O"DjSl'?騊ZǗ1ȌO,S(]0mv<AJ{E/YBݫ"JPOMvIyمG;R#"M`Bf(}B&R<j@{vͰLʌ"vI[/ڊ8NS%eN"%Pu3T6n87"b ,1}$ڡ(x͗m#nyD|}Lѷy}6(3 J;@?B ׏\-܎TJ:zue-Sx$xY"J,R G'"); _̍  l{L"sm]d-ϛ[ė> ]#gSd!P`% )X g,WIvCJi$O\AJqlw\WafK)nǜC}fLh2HE.ېb#ݶ[ݿ5 >V3QG>9ԘY 6^}I>I KǭSk}kUZm 2|n;g)eV0]ɼj0^:ʼoU_m>BDQ,|JPvx&cIKBu T˞Ěo 5]cOm_ْ!UwLųwwhfZs~*qva5x%+{pXA>0dN>EGg%So]җmܓd[ ׀(dIIP ;Nu Er{ųQ1ϜQ< oLW;,ɾEą4 1g }ɾ3o*t Y.#2B{'ɷ&htBI[ EEc1<$qG\D\KUlDg D (ZQ]bQy||i@GX:0 Zо: 'D>KW/=nDb850Q2U!4 Sw|9 M ~_&ROlfcB)9kH*ME^~9 3xdw.o3ٔot~艢Lk/FKnafN[S zM ě(m|+'Td}<_ qo~n8X%v[s*f4?$;Ϫ0v?fky Kj&W_goe fB~#yCTD|ȷ6R#PB aJ0 ^XT9JHDh&a.=#/'Db|1*i1OJXtE^fSZ$Q(?{ԔW=9o X (nF6>k [KdT -yɓ36b>4"wY:61- e'upRzخ00r7~?)}p h[%8]ՒͳSZ6h5pʻ{ h DŅAZ)wOp":TO)37ڠ<2v:9lWa[}+dxE $.w`HcXߐ4GJHʖ WƑ: *oXd {tY$g]BU4B"珧Uc#Gw?&㒦|Y\b > 5;O=JF }&W$ ߉tU&Ձmr{ teh8!#GZᄌ{R5i Un0{COVK@}Ib1&.b]<γ2g:Y_݋(/.XA^LyCѼx=yT(5X;s|<;RoXN}xN<ܕw~+ 7ɞf&]yC,Ijqw>8&j>Z68O: rab%nUy[q53C:4txʎO8LG)"pE@r`Xøm ~m[E"֨ey{#RS"0;>QL+[<xpʅ#NC"AVi8 iZ ~/NXPo|9[ Lrrr!_3uM/VTFB>A}xbd ڸ^xDY@-Ě/X `)P%1ywzVaj6i|{ Ȣr"u^! Djp<%A*nT%l2Dz+(|<$"8'_h:sc$atqϬi@ r/Jlqi65[,᷇[EY>LY&Bw]LPI&벹$atCp%-[ ^j y` ƿ ,T )\w \Hl*\Zp푟LnWX`JW 쑒*sZM¼w&KO/zuIc|'x+O;]S4[y@G%dbX'|>aK Dex4 d)~58TMwrSZ\)3mlu[tC?%#V3 iD8NyQ[,k5vFCfR;pI.$ ^ A4*%%yCZYdt6!IK#y8dE&^'b5 HIΖpaFup% 9!+,h$CjۏKLP؝p*K `J%+-Rxo/4g* 0v>$pXG"/ŋl$߰ IPslEM8SҐTpNg}8WI[M"ÖtӫbZdܴ HX:,εwMqA/ņ`nBv i4t̿BXfK< !SrvW^k B_n>PX wuLge~ggb! eۣZS_Է$6s*'`0LokKLаMf ^c9^Zdʄhz (r肟A{4 !RՉUؼl!)7"+mVHm[&A0;- 'rwU#=ٕ7y;}zkf~d]#vR`&Z8` cF2Y6ACe#Bc?nCFwǘng ۱"MOVNɸ䁔NjnE{F H<3ѮPƴ'CBH1Bd?MeC9;2GH6x{9UԞ҉9?zP`&0J!/9+r\ikI- G1Ml?릩,&lʓ;9S:9ņ`,(”]!>y:Zm*h_$*= pk88D>qħCG |+I0fٓ^Sm-zʑ%|kA/Gl?nᮔ;{=EFS[k(hh8oTVmƈN2xr[Dl |pnԙ̹hǥκ^aFdf}ltXfQM˵Ǭ9ج6YNU@a?{<O8;Wp+eqyo=JB7Q9U|ȇhﭙhw|ksH9t3kAaw@`dӵ?aTZ0bp&V{vL'>UhUG> @.NM\?ԑ*k֠އ) 7B{J@W:.5ӄJj٥y{wdݗìf*BjM&{'0FV-=ai>C1oc}7r`Or\-"XԘ6 sϦ qt[ U~%@T)/w]U/ ˇVQqtvb[m! BU#{n7A[yD ѲruQ`fO]ѿ?N%͙?:Bxnճc4GP4&gKȹJ gNKxlWBzydԤ:*-<6& .%\Po%cis!mI^BN][ܧ)|SMPuX/E?)$@>%vjHKS[WVĺ!BX㔷in(8KHyh4!ٱFO4BUaLԏƌ*k곰sKpۧ"󧾙-sl] ˂Ɇ#zt>,0" uA]5tJרu`U -NprlRm? -}f^Ws 6A;xCjf@K`t"DŞ;"Rb Rᘢ5r?z_-I{X7H9kL6%F`-_H#nI<-C|ئ:, -RoȲ5BR^DE}ÆC@W @$\H_ 5=3ZJ,jfB+IӀ!S/QEDda1˩7.Րqܵқ4ZUYߙ $Ҿ1Zl=t.9̻2<7d&wxhrSP Xؙ̝(=)CA:$`H$" ~L_Wz|̃GGN$_HKRsH;~U)]ߧRUO HߐY Kseo4LB\.mV,M[r,yf -u>zo*7 ÂB &%XBc伡z0BdV1C0Kf vd3h"8uR~&b;[H;՜د(A=uF(9vW5PjTKsAўXP򰴲%跣}sU. 16v,5{lhAVj1VOv ->vcЬ]lRsgC]>|#N2ROcoX}z%Qdn?{W`|Z%]]ev` 8J [9z"M?LEءxsv]: [BU,P4VƗ  }iȂ-PU A]H%HW1[8 Lr9cYcՓ#XQ]PmcM}bi/:ktҶS!-y~Ҭ fK9:GȎŢ qܜFEXAn^&Q$ʟ+=bVUo%,[-|bg01qz K-8!Θm$Fܒ1\'(6vI{#c4 y1̄0,H~Qm )'\wpjBFYE֋<$S^LV-u8MpL4Π^u=z46gTHǏpvyq[w='UO&O[=b2ˬ5U@Oozwb7J&G &sjMCB\sK9&%F-g&@lmi/1|^Nҷ>\6 Z8D`<2+)`=E<AH.UIQ,̰Ka'^qCa$%f5,ԡ]&=ܛse}&t* 3ŐQ?kRllߩ (G)Ɏ+(5iK}MWj-Z CwRf~ǻUr I@[݈fˏ|1746qFC m]l `*8O c /楶XysxuP"dYh+ʫTkb=.ّq@-!p&oiB7Ėյ-h@V ӤCܭ,FJ#=[X}wB2F&7N{^X7#t,X9>SfC#0G?sN Ζ!{ϊknU]?4lKN$W}.5-5Nu8HCm?F jskdyNKoW;A橑]Cu>$b#clMn0iY% i?b i/p<0E٧Lж 6ЏD|œhC3?*[Eے yXzoIK~m4PZ6P>Èx GGA|U ? 4B(} *@%B+fu$ P{V8VA?Rl[rud/-ˈeS.oQk(I_Fˢ%ԋ&Lλ/='Ee>,]JGowv)P]Տ-A$9#*Ŭ<9*)g諃v,oU! JH'NOއ VIth7%NCqOו)fAYYu)@}AlKt@]gL9l^:-{=x}^B- *vEj\ۑ2y u2rmH9 K Yq&rmJ =;6 ScoŁ y8Njj;._L^c*84OL۶t>|lRAL_vy絬 .I,_=C<ưtT=젰fh\'S  &5Ptal2#Q l%ĝm(:) %*`yRl,e+۶_:XvrbsW&uJ^X B.UGIytK8 } ^҃)#NaEq Ӷ| e.~8$ξx_<+#bL1=f.ggPT_ore. /ΣDF.no2sA8WeO)P ]p^;󀞴Ft9@_^75j6P$R挫Q<˵Z]p`i.yUp:zOo-͋ ͵l~-)] fRWc\V .ΙI. "t2 q6 '5V-m8JO/o A!8ދZ̆ tsY*q!acNdF n :sSokP> . ro ߁5> Ti]_mkxdD.Dgo?}*/ĠKh\uSD5kT+}֛%)T6o%P]NjHU4?FE~sT@ 1$!a.y;1<뎋*W ^,}>ZQm)0l'Dv-I٤*(#e\G]YMvʄ4##~JKCMrluw8lWu~Rw/X׼gܶ>JS+.xPd]t"~D|SMx$]H44Wֵ*Iq-WjɡoO܁5 r>v땰H&/=c~&WgEPGŞsE% ēnu-[.?,݌HnY DAp0hGO=9 RxĹq | }]#r~&D߈E9d{jȴ=MDlE6wŧ)[+a 3 sɧmn> sݓKTMX?ɽ͏ŗG@6/A Ef|r)a!C}c ؉cs*^I&)cz}ԡ^bpq}˪;HD}kd?cQs OlErϭ[.XnAgFLUMׂ$7ݜv[hntG/6wT7LgUk.C[ZW lĕwĸ)g31W:>gx_:NR3rl泊pmq|Δz Vl1U%ځ-Nя i&>;P v,ZP&g"EQ2[}^\`A)+#M7{kRk@ 3Db"eyeuX=ImS<; ?&ݗ-EA-jȑmii!uwE+D2`HbDA@2`o_bp̵Fv: 矊bnN"7o9WM1,z"2:RIZ䤮_g_fxa}AjZ*쯆Q S#FQޤJ*@^b s1P`M,Ff>eyV@bDXʸt _;36:-ͪxO(:_A>s$owWR^m.3Cnb[덫/v*GI?h2V1 Mu,3}!b߆f89z2?8+2 R |jL`[GWuUQ!BuqcPǫ7{Th0kmO>?/k+A{I@M s`%tlu֢]} BoogKhs.I S6kAD ?ۣO?'GYd&D֑m\m?'-b-#%=&,;5GL|_-#3_T.t)OCS&?y"q/8a288k$!ex%!3u0y؊6lp{@/^6ےݏh-VÛX!(^ML4s鷲H!d& kMH42Ϛx58SGAc hY䋙o9C3wIш(ִo秬X(OIgubD9)5|皿iɜIk%"!f=PbtһG 4K4odLͅ74R8󹤧GUhXꕑ՘Lc\}4=B0)nXyIibܤgZ)gvm:BcSk^Jу`wOtkνr8W &\;D,Ȼy ު{aEI\:-n\⅃MK8MPt;R+M,ʭ+fb1+K#Y2(2 +!i$&hWЯ {q4E=|SF1Vs;_\{{$ދhOiByPo{%@6LƫcXEoQ+T9@DKg-4mgCu3UgipaP^"&/s!'ծ#(1k>p ǒJЁw}'fzs]u8&hNB$ezV%mJFa}G2Q*)䚃GE 蒊控o︺(I5`+ ʑ, ^ٌꢿpo !SPRނ5l_[MSbV!zu;l$[^_`~2?F1d]i5xR׏[N9FBD -!|bqc$squd?V̩Gd..$6w}S搋~{ Ɋ„.yϱ{%=FΥcW

Eu$8-&! ۓSF?Y~ {!=DpMdaFllh]< D B3em|'B)DPfJWiKf a]ß zE_G4. vOEd" NEXGJ¿/Ē[)+|d%jg>ẉ /(|a9 aƅގބ_hbBGrMtqplVtf["D‚%1x ۯibvW`!}\jK!D\ ys޲h6^M+\+qUMg=hE lBھȋ/hT칲cBGB9]μmYuօ+2Nhn{,ʑp'9;voD&ڎ0|HwcVש8goZ<gdR=~ 6QT]ڧbX*D$&K XAӸĨ]ɡ&.lN3!Q;O@蝨Ly%3>-?%=܄ըkXjom%UI$PO4gܖ "2 rPMpSc+_k`ʯ^?n%U1dDI8z%3o eG8w`=SCS0&;>V [{^% |SGǀzꌐĬBVT~L[__\ (LFSdHwKZJlat(5G" Fi[' b|%T9&R|ZZGJ&>~"_E2ty`d<^ Lf99R:*wŬ_9@ QP '|<E&kbw\n3zD)8{C\Aѓw$mrN4ŧ|KJriUpwjܵ=MVoEGK0y8_qgFY4XQW 675Cy-z''L06 TۦqS୭TT Hm AG8ҫ-ˣ@#qM >1pdSa9Ђ2QƖ}*uv_F!ʕDP|Ck;)|S$hd. \\ Į y)'.o;ot D-) 4rvܯ5a@x(x`z)v )K*;$!On~y} fet~<CY,wFO**n*>oRNe<ԺBBN1V\^> 3,Ɋ,{5M 9597u;g|6W,0)m/4q-!oKs~k!ʔX_x"P!ի!jRIێvF+̷o vC FZI|tFOEê^ҿ;ĸ- A 90hctRCA8ZFbbcb'NJ̍FbtMBRy[il(7xے4[~pG72 !xF"q71p*fllxYTuܷ`e92~8}tucE[|=z}ᄣ;.^'`/G=o4Z[:OJFcJȐǴ̤&Z(OA aarOV Xc`n^/xeuS^Opw6R!lቚn\YD–Mڼ>k?ROCUTF TWZGtm%VZ31Tb?*QVk6M>, v k}ry #g￴><<7iQ*Ljݜh ^Tk')+:fngcD#[@6{#jmw0=}C #{oK}\X_$&17k}T7;ziWޭP`NlQz{L <3~ /e6AU!߶2 7cLWj&̮aўQcM\v)C tܥ"Yb8B'Iu\!rv\>@ƐHFURڟֱ:ZbC@ <_-[Zw7ON}}KF\Xq sNlp eqv"rJz/3"37=B"ue4MbiI:mʭ<jS]UXj[IdiI0ߠ%6u{S!ȁ?GXFk(?\;HJ[/!SPX̝5نRN 4YpU lS{l|+V&-zUQCGKw(H4%J2>&#j2,K03/'#~Eƒ Ҝrw]/4SbnN򢹬Ia;_IOS:ھl&,mm3t"|Yз{lap@5?&"te ;s h(&0EpeǾ`a_o{CxFV/׻\d9|PurE6 Y}oym@%j" *wZ"MXh+S͖ȶ+gl=(J]'ɡn\31@FƶtJP %U,0A ,ܵun2xK@jq:&cЛ MhXk+!eJ-z}oy[^rkQ! U׬NzhE5[ ]M]3 7.#E5UwN18BO.= }33`e^v86ݘsj uHU  |-mhL(0ˇeN⭖z2{!wCuzUv᥀erx<>='M)E:#48Ѧ2u7|;6|=( >'S (:9S@w:K[Jw>9I[Y^ ce᜞zQWZɃZoMpMG某 aMCwPVBH' 8ۛSJ=mmaߴ@ P8~wt'9^)հgB\ %XpTw✡AٳV]jϓd+ ClVͼ{_dL8| !s,i/,p؄LA'}q{U%q~7lmO .޲An. nf޳1Lp eW`Y :$9ǧd  @\UhWo~(%: ʌQ;&:2U-+caWC+5c]%2ȭȬt6*j[SVfI$ HR*(B#Qn5C | ݑNn#8c;*v8,)k(o#uPB:1ߙ%p{f}rIƾs8x!įM8 B}<̟sJgSUz[|o^LRvè%#mO9QsU -x؇F]3F⊼s٫D~τSF kQF [w4 t]iݬc8fTHjnR.}A/1I`Ou^=kjoR$QV> V>jOJ*o,ٔ(vyL̘][ p͏p)/[7  2Hl+q&>\Au)'IBR"._;:vQOvW?Q(RD&VŖsF2E ɜ(o_bI`;{A~ .!v w@̔VJ\iy AnZX+V{*XWY(458,'ƉZyKuyH7j'b)Ͷۻ4Tt[R+p4cT'5v4kc%(aV@\{`Ʋ"ĸd\ }ݤ.][eRvBo A> "??؏/h'ةCh>BKmz)iK eԿxw8&@1i3u Ng }Ţx:I}&/5c /QvΖu|&+t!,6+]\/$a$\ɔnH7狤]TJT{O6\ms XeK-c[. vXtwx#Uu nyUsijm"JBہ5/w[Gƥ`ǵ,JX~uZϋ&KӺN(K7K $dk|Q0ޠl7dJg~jF]uhYy)8]=0@CZ6H|ŵ (}a /cm|f -n|m1Cp%rrS:poiD.m;[J)<nK|kC:EĎzOQwkCg~HK^[yǔ`IVΰyn1xWT\V|EnB粐 +Z=yF)w @a@t*6^'^vEArI"bݡ O(5/į&IZEf@h2iNzbA%L5f(ם1"k(3Qv-' $ 4ܩ*Έ ̦QBh}O6iک1d֧9I5hoOmyZsϡT m[߶tړbg&לG@sgf?a$=%|a~4NS(DB:YEK'ȌyWâ*c1u ;+ɓpg_S]t&ɤz>g.8eο ,GsP-;V$[*4{<Qkt?,},e42SvS{>ȏ3qU}@GoWi!ʭ2Ո|.A&?,\̜Nl›aIP2Jtp~MwQ26;bW}eKa6ނ:K 7V`ZgV݂44bH>UOu"+ټ'{Kyr [#K|z> x?QAT-7bh~ G7N/|K ֟-tj&獠 5 Y;I1tE+8t̕pr k> []XϜLqF]:NB~(MI 0AdV<͞W֠a-QXBmv Δg89▯pi7up!,&U)FSiUQ(vs6|5Au#CBs"`J'>"F_3gZ""G )sRTa(F6{׳DE{q2kZb5<QG ;?a:Eo%{w7oN0? ɰb=Яea(kdg{X^G7VB^#oDBtɪ ᱁Lo msat/ SX0).t;Bm?!f/ H&u5W\Q;y"E8HdmJ=SlV1hRQ38xxRdwϑ@bO<J%6=ؕ&YJ*$kD4l0sbuDA# }yjL=ލl Ng?w0LWJ痭!iiPPO0v 0r80v=pื\kdU_^xkOo7}:pDz56dQX?x,I8g.ٿCI415_*NnQ1ZV0W^oZ1m4 ~40lsTtp6S]@PWl5iټt:{N^(D s.5Hx~rJ&چ; A/<(K8`uoWOEc JaI\#sjdӲc׫8Q΢fDEǶZsM'6qB! DU;tJˣT *8. !Ѹ8jgC#EF4(%"wʋcw#j 3e|GjzO(ԛS".kRz݁{x5ѝӽYcdNlAƀzΟ zx('2-cyפX1EJhp,&{O!nC)39e]ifiVћw!(FxATy߄H5= ~Ż^?[-Jw 5R*fPtI["+:bC T.RY.kAZaA-nUF{CHLR=J|kc>#&Ùi kc/*%0{ BOaV)х(침W>if+&_\c1_eRodƭX~6դ_wmb)X^@u-)'%ggm(EB=~en`,q܍U C܏kLR҄A>n/OZ:i޼즆@VN~5]hC艻VӨ k-Gd|(!"+^7* m֏آ'57סq:ks/ȕBZ"CJ}w/>HLs9A r7ahBFY%% 3a(QB9.-A| {5 Zȵ:fY0NIE$ KuC~;JVV`++OLX&~{E`>gX7b$}&b)8؇!,kXoj%4fO Ujъ| 2h < Y/ˏ_KQUi NMfŭ^!32nŎHD. 4Q|0r2eIfYd9AoOu-;&35Ǝ3ug'ךBx )(JJR: =Jh+V]Y#&r,4>}p*mIlz!Wu1q–O?^af~W('s9c@\`8~ly 4#@e/?և]9W vW6'&`-{q!,3 .cWgC=Ԇ*P\Ҍ49R!e/˴9&1&]lݦh݉I~ޖ0D ""|P,Z4 CE2XG F7rM |\h,,o yE͸lfifzƥt"?3íR̾yGun'\H eѫQ|&EPuyGD|QvM4HN:_^'q=å;dyyO+%AA^Y:(>'t2OCvD@lOǺ0Y9IiG UDRWCOyR,g"aH~Ά_?nhl`26LTT5n19~ͬ~l/M\T6Oݜo|xXЍNۢ@&3oz׏ L1w40te!m3\! MI&@, 52wmPp|CIO#ݡ?wY\W Rٚ!'<ݍ f t)m 8STwJ.pӎZro|z"=-?[L5ׅU Vy`\du/BhcNo9:pG_ڔğrZrL?Kc|xv/5Ğ99WK;Q~yqF7힭XGQXv> egj4U҇+1U>C~^AGϩRu|v-@1ڡCdڂےj9/ أLi 3׉Yvpq}.~~ %p1a:ʱkb]U"۴;VLMPpq]B$g/'e]?/Z% boL2#4.u,3`U,+* |_Ew5gm2:UE!~ r£G^&;~@$s&]q\C!d-| "hIU;HIԏe P,&@~Dƈ/_tsh)䕘{u득G|b$g1d;Ŗ\I$w$59Nhƈiy?$g!Q47t"'˝|9B,LE6<{Q}i|$xd0Dtl$tDϟ3|fc QLЅx?Pd3S&>B4qL VB]f#zTV~aW)}ΐes|fW O +ܺUאaV;S9| j's]kߵQޘ؝:\['N>>A`E̼\+`N GAM*`" }(y=cz_>H@w,>gu_wm7 W+xhy;dp!yB" hXj-6VK~'`Q/q4" w9 \SyD9|\XbZ킈%ש٩^~ڙ%-rFq!-1FJ5Olxʤ:~5(FCSLȋ5Zt㤟Yu$.zs+l.|{BRji^2vxw7_AU[@2.c-9>G쮥M8|Zd5,Cds" zN,~Q>XWV´ojkثudk,>ܪ.9A-%&r^ t\, 7(nφ°. bYm([i{jpfpS"2\Z<)rE3Fݑ NsοWÛe0?k%PsR,-$Lv6):3>  QLY2&mg[aiw&2( 9QOg" %,I Smk<L+Ė厨ꗄ7\46Rˑ!}"!$Y*Q[B̡o9[[z{ n6{0mA4z@tV:f[ʁ(}r<}Mu13͈d얡 _vnd:-},.UV X(a.~/bv>݃''%I]9\ ,Q,܇଄.e_Y-HB# lQf_b04$C _z| bd8(Q"1TNYZrObڵ򉵐.A#Fs-/+["UA 9܄} w$+FRݨ6?Wyǵ  ՠ؟hj;Sr ỉm+_CEL7 s҂XE\TšUF"xM9P~=YF (ccAN HLpP^Wav۾uB<֢#ih"럕_ _G3s٭M&;# CXwS:NvJۂ2ל˴ޝ&Ub IY9F*& [{Tѱ(v|kr#j ٟ*Jn_X0:Y0`$&6XTpc*n\z4I@蕌.B"uM=|B` P*tB5~$NĬvoB,|,j>j\I8hF?sͽLEѤ<|Bj)c|<gܿIUxboiC |ܹA# k!6N8rU(H_!U԰.!n #-NZA]oOWađ񩅙yv0o{`y 'JU=( _jk- ]x#$;e^&9בj #jM ig@B!o39*P-!yW h~[VK,ypX. "&Hp.V Nɗ_n#B6*f;7ܪ¹%릵4BfY\1uKFBws ETnWi2)/-Ա]n.o*j҃#xeLk֟0)?An|>^/=?Oymȭ4jO#KFt=Kؿ*V0t1 dyX4l> U̕nMqR?+dOհ!MWɜQ|O؄ H=UI1,mȈLli yA">U @;S,x{BR' 3;Ys8Eq!u~MgW3֧-\JTƽO1)&~ڼceܟW%U3T-fKM*] w֝xM&;3ؙDߤг;7a5&:r`0r{,TQA;ܿt=n@~[hVbY_L^3BgΥP ? "y(Ng:p!X(FKoN-È"F.S;ñ[)::v0'=Z$k^F!9*|/W!d{/!{zQNXe^з^$Z5J}3X n`\0[")7z)`էぜ{gV66 ٗ_&_%NfVl)[WK"Orܹ=xI+#jRR ^wg/ɓթUh(ӻE8 ,?t.h|Y4`HȪȖ:X _e)n#;l7ye(-Wa,-Er<>ԁWQl%sa oQ'5Q~5THpl&'Ӻ:  BxnWZ0y$g۬&~@ͭhig^NL}Ex]phwޣU.,jX9hb.'2|ZzW9 P PވZµ޴ lfU~yrjݺerxcE5&@~K5ጲkbaZD pd'&]4g-hQ(U7Ol%P}Ԃ );Zeq8“ulE5lvCЌ]oqޘKmK[!fKKgכt& wR1Io{F~=#d2ɸ ҤWi; ,b] >P?'TQX81n#wHKG-=gi5V|XP S(Jæ7ϴv'9?<["-:}t=UHS~ښ>0B死Rֽ~4 f@a41[!+/[oMEW8e;l=DBܹ'8 %J[j2JWn`N e4u(nI_KCاnU\&;Ob"A$ oeڿaMV91*G ꂀnO$x^Qk,56w1Wˁ[m&=K0+P7QQnZ-6ImLfq. v1 bue̕|݄D)@F9K ${qJ^cd@#K<>s9m_H֗K?!m VqzlJvڡh8W\gBa 7s ; ~'zErA.\(X-Wt=xsM ϹafP65N? r=-Tz}*>}._ fGț#^e`h9`XR#ON{֯JdL|bǡP u譨1Uua05ING}af7[fc2ӂBg$]H" EC.$+ٟO6p` p)ʮio[ҷ?Gq5QYkG1$\SKGLph0X?8jLks3ѥt5hJA!JCN ٯђWV|\|j}$#XO7_1+YdfO#eo9ؑV,YmcNx Vǯ}FR֍hXqY E =#r ĹE]BluYȘy(ݒU+>UtKt攵8+}8W)'7Xqhu%dA+C̟ S3'c[GH*:nZ(U "hHj=*UHgquDv% (fE<^zW G*;ZUyxlU!B?ZYނJcGBǒ6K^v[u9cz5a!F$@ hfW}bɆl|?9 &\/IJ/d5k! HƠ*A_̲7 -vw]AU2?.r4xl9sEUAz ;幎xQ%V}J]gJ[/*޾g FU'0w[!B!iUyW0nl _Q{DlN><gH:맨P+J0Mr{4:YZ 7^ZK# <7RdnI9ʄ R5u^.|}jlq'?2m:|2cAr$ jrp{127FgXg$$ >ư!- :uC S׺~W&:oXЎ|U&wHNWl^=B@4ufdcYj:=r>bP.vypGUuGT:My%!i Rm[RU)5吘>Aiw%^x%GEf]d;q\916;ol |%F,uaMZD wJ)-}3&gD~Q@ (H|XTӁp ݲuLtg(JIWR ~nGqį,}"M{D0`OqG,+( X`Ͳr |,h^lҟ}ҳ2h>\l >x++nup%,PyrqlSB{-]B$ԤkNaaMBBP.B39,;܀! `w~*ֱ4(l\Ye3/˜myb5xacU FY/ =~Ciw.}n4daxu4K#sNt )_SBYG3yy Wmo$-}E!ef1tf٠O Xa+ rI $x3)__?B\p<)ѩ2:2-Pjٯ}zJg,>wq8^9*(HJzTnv;GgηC3,PvTk/$Z],nZ&qK|uW8o&޺] ?Gʚ자2cfl[{cΩN[ }LsH$mzG''JHq,.iG ZZ1-FvaOE69R#75qW/ԽCdcW/iL%T#A2w)W{)kEf`%=f~$- ?-& A*A3Zr{Hdcxogyiݺkf>I ̓tHW(NmauJ@CSa{FH kZ? R@2{ךmLtVBa9ɏ&8m8/; lf̟Tf;6TQ=` 8 KߠS9kItOiczJn +KI8zrhfOT*<=G AfȦ\1O*pweX3Fֺ\ ^ R<jey$`$oJ3% M" A,tA+").9'v?W4sQA0ܐ>[2"iFK%"lr5jAi5mé_/Êv${f8'͇ 0Yfs$">rX-_L]qIoÊ8dklڝbNOEE=M]wQqI]͌sWZOm TdԹKpX "cP*4+}@[1J5b%L`ɯ< ~ާ\^jn ҊV&gpRb-l<ڗDо-6xvB+?0!U18hb5Zɂ1- ԱcN[и%@ Evi+\IJtmh'ʔHÊ9`UWU:glqD Slv.&]zr;N u 3,%.uWl۸ _t.\xP2[ 2˃Km_uE3n}_xJD?X>c7E簤_4)Ff h$A̮SlK.jtyߴ;H+n_a,= To ؚ+EZaC zuA{o*<6G:tKn Δx$N~gx6 E(V!Z%~EvT |Ih0kWҌ}%):}ta>zDV9xj&X LtnucB{O)'&NM,a`9<=dtY#QQ_Tܤkgr-ynb?pp?[1z9m绣axq6^pQ#2u K8EL?C %+aЏBLb܁N0FMrGKa~Am=QS+%x_yh' 1> ],!/-@zc5d;A,+-cB1߂:\}dx'Ol =nm/lB*d;u!Q(?h۳$_xbKPȦ|m]uxDŀX.6"[wVB<##dH}X hڊ-l7incѦZM\)%S ^&d"=R?,ELVbk-V."S֚l⽒{6rl=.f۽TfI--0e IʅcLr,FaF[vJ! GmYzA;7-fՄ @qNSZ`秿 6x zգ7 ApG-oQg1%:F] S=Shˠc$MJ=8"L!ꃝn,)h,/'[OSlI[q߈i^=[ąy^]~26K.5+Q8 \Z7T\C$rNp1Q=2W~y3@?*8caˑ#K>c"Bp5vƂ^-e؃J$I=oMb[GvJM^u%'1iwz]鐷4 GcN 쀐o˄bchFre/ J2(NTK@R1jЗIkeX$1B#3BйCK %61>">ssq8]3Ug&ؾ1FHd>_͜s*f"z랈Bڋ6~hR~ڐ-fkn*Icy'T#%lyKYz+}HT4{"`c"_a.'֞5-Wn%ǰn}5f85ow"=XcT$Cx1YG]:= iNlmBS I*\14xCȞ }矷[Q7D|k(yW4ʍɧ8^RvK,MnPk8l {g5.WPc''E6Ȍ^ {y.ص=RgBP`T1 5Pk`0< ' {IǗx]޷*kߗ\Ÿe$д7ܟ14ZFDs*ϯrYuhL\Jǹ 5>( A'6ޝkVR_S:t :P/gs:f2g 4vn:s)7u<]V[[m$* `BٛB\Rr߸NڀM!g4ȕGzW.fڔjF^Dnxpz1s>fSHbІQ7 /Sl$Xs-,}\*/$m td߳г\U.p団S1鸘I ,֠wsxx)]C qU}l6kZJDޫsը3[C,sQvz~4tY`768v ̺<}˧E)Kxw~7F9e1*J,YhK'^6 :͊LTj`ܔȿG oYj(E}P8&"UWī;9ݻ'QmB\%7b1Ϻpf?#;!ms=wXvۥ׆k@^}'ǵ~tjU2.{4`+4 ͣWvv6ڠ4pZo#ګr藵K5_IC\9j3bRͼ.II (u$omԕ?lQI#v#oۋO~qap /֌! `@G9xŻ-<W%y,0!TÕ%TT?8(2Y~3.+s4?HF.-iQ۟+ogrԆ/x{Rr׈M/>H$LIYC ׬hiaXOF e4b΍(*61AFe;{,M| `De,Ҍ'\xJ*g$ U2Gǡb|yuGȞ;(v(i)Cg !j%RQ[NYu''U+Z%Wv)O6ږGPjCͩO8te7g􌟗=`'))%˸Vߪk^;/[~uMG4ź0AXEc<ڜ t:\4;6_'KO:"!H;1VZ҈^ΐ5'Qٵx)̤N\b#keAX?GYG <h &Q_:8UaY(]3 3̉o2yWE:8aL5:T@KQTdz0aM*6(ni Y*T[/6<٥oauqy7n/ֱAܪ1qBxtuEb# 4Z`jpkG"~z݁w.}^nxD#2ޑnaGo]rv t<ŏvwx>}բN1+ׯC%CIi'm~= @H~K=卡,!1CU7m_wOݟ ]ەȢvMÜhNaF8vrr--m3&t iʑu7)qm}&MhSG>)\ ;y86X/M%i+YIVk>]t^:Hk$ faa JdRmC?JS~@釕w>*1o#nٔ4 $M,.I&݋q@3MhIDP>耧(tjG"T0P =:;v/ Ŕ3S{MPsߏ[=ǦOy߹F;exg~~%?y:cJ݅md Z"XS-*e$vKVanrzu3g.- ma'K];a8pkH!Lw*9};/~ BRۛQӮSʬqQcJ>f-&zejFطu\˯ 3Pq v+zld'rR u` ;gJc$PM tƣYkhj$L%JGGnj˜֛t,]PQrP6`mp`VFÆn7V* S t9Q~ RJBc#;3Frˍt8C-; ŋ% H #xYk8/ 6πW֨ZoIyLr{/jh&zϲ lIp#Jh9]yE]뱓ċ<}wIMڎ p9vT d[9B9HD+&i UfS湧%ˤX碆MC;BRs'~Y~ 6xk&+͑OSr`7EOӇhy jCR{MmYҟZԄBO.ξ2ldžF?FvIdm`QI5Tn|iqOVӔ᫶T\uhS\&:H)Śt+3ں]ZP`v Ʒ[9fl/:G¢ҰQ.{n^uak{x Tv =JX:9P۾4:g&!smP"h$e{[ձqzxi1佉<s29h({zTYed]e jgFƧi ڒ +z9K7<$LصN{kGQr3n@pԨKKP7N{aaD#K{ WOEcΉ3s{1Re1hW -\a1oӸT}+TY@ !$xHVpu ~@P. ƿ;{|t_-6ᵗȗ: "eɊ`ő5o;U?t>75z^:)dh S%Ӷ rތD3Xfх904o+\TxI2O:9C ;Yȼ$>O,e<'xx6@ {l\ b)鮤rN }X\S;"PgKjNyl%t,0^Bc},e"jk{h][NhA𞑫$dUD QaT9Wuk5?:A\ *A+v/i7[^?-RzOzQ"c&biN3źAh'|ؼ"q=ۛIT6[w\InjI{|d.z@$/fo!) 87>#-[IA-CdDLoi)msiß`4E78'v*2_tn)iY 6 RYΨ"Qd\#{)]xC.߳{Vл=SVTǹ 49voER3qfj{*K:ƒSTJ|fGՇp^LX rsc 1N# C7FfRY4c~svEC*_e(^G2ԲsaIAxI?Nߊ_4d~ մt7ZKrm0ʞ0L l`^(bPoyn-' f;?k/0rU^FQ z_eчfЕB­c :ؼ# >ƴ YU8pOg2>CEaj|K˩;RHG9hML#?2U1̫ӑ2"=&lķT+Y3U>섻1 ҚH6>::+^%>5]ҚI{ Y5v}W4a|[WI8ʇ{#x׌@S.1`΄b:f\Ҏ<C9 Wi:`tr'L7},yw;bJ}8zTp3h #ۺ5n f<]# GE$#0nH7ƇsvIEٮkI_aٜ /x &R}X([A1s՜iC+wv` rE/"+=[GE/9F|;NJ>4~M2lqg'p)n[Fȩ($sK'|G84 >R{:5Yj90]Z7,~?ލyρO رU}߳֎{rY=n_ޡ ѕL=AH^RICM |=9,i4|#[d0F ik6|InlET/A.kuФ?0Us߈ײc^3Ԣ !_KJ򌎩H/Iz }|$@L0WYqMEM&~5ec k5.S[j NE62ʓ.U%L{hSGnYUCN=tSK#_)hM{&FP̣D8W4J{v uqrf.pE.]_# E@X9D' ӧsހ sϸяm @..~8?=c-61BZO&(}Ɲ}P$JE$FƨK͵-Ra]ic5;+sHY=5nPQ_^} X6_>ikzGt>3 A{ZK16+bF]:`q k|'l|կ-r)$0l'(3+>h\ᕆٲbӫ]!ӿ[ѵ.kB>^{}D_{>Gp'v}inPEXXtı]AIa1Ilp5Ϫcp͛0;@gE*8%ABCw5>UYdL>Uv9%ИC]T|v]{`\J#jk WXO#)BTH/ְw8xCh5L>Gyј)sH!9o UP;!D):*NZR#nX!UuZg>!ȬKݧv>$>C(zTf~?hLOu5WT9\8M;-T"KSs̀qFaE74Nl\_xr'Po-LPjZuf 辏&e depIoEejbq&7/w ,Lr7ȹ]jTHS4Z@?}yY]\Uh9Z._ X4z+6o݈kzMU+:3^\ZR S^{6π(`*"V^x')5>@JFmJL C%e/6 /0=d-BgGQM$Oj#)6#ژƐ XAB:\"/eT.o2[[&6]=c>" /VlS 0T˶Xi _$g {o` O˰~+1Eo‹PMOi1%Wq)B ؐpI$QsGaw)mB݂eOvO"zÄ7&j:1s üۓk澤DVѪe]U!we/d,.]}a^Ñ_@aSa:<C^D1$RKXhO>[(%B%[||WɐbQ*}47/H6CD(1Ⱥn$K1_bFύW+1PJDG_Md DFoH~mj*ɳZ%! TcNt{"WznoU7S y( 46D׊5;ܱ[UQ-^H">@z<>!z&Ny%'oҖJK/MB_Zb4}.Xoa,@od()z1l[JΘwDmaGQl h3^dMʑ +vG}8xV89Pu([zzqmpA$nǨv%^v>!̌NÙk@٩ޟk<7чd %՞74$tWR0KR `=>a,qbw\־*۱e2eН.gl|v 2 >MeP+A˖ '!(̍hXɶZ*&WYtiw8Ö+%ͪ @T.RA Xns Y Ŀ&m)tP_9? \~Kq?f%FV6p Tp%EɄgp<݉~D&M18.>|snޥz-O9%5i$IEI+}8:{2K I.a!񰫢нo[@HC4=Q`h)9"M 3f`R#7(:EfP0QLV/Z}t[΢,p\i_1>[LW;|jHP~.{ $Zv| *ۧ(ׂi"QUہKo' Eb>$ilPm+TX48٘ alմr_kvHtƅ$V>:^jUb]t͉98j9F۾N[`Ow`Opc(J3[" d5a/qgY c N:;8_wjϤIίscEf󧏳O1t ~]-JOSSNOPFC.aѧBi2@ ߦgN?DEn!7U%P]f ~;Fu暳JA{FCk)mWwil̴ÄZva1SOƩkOw)p@HT;M- Hy =h@l# AjE^]ъzgp( άωW9Na "w[ڃ::3|bxQSV̑0ao[Jߞ+I׫ 2әc&7 $"AY]~Cܻ fur]+3&|L:ɔh;U?eH{Ta1[vPD4F4gHKP'70;JZ׶_GݠtLze@'M5塸' 0ϫOL)*.YG-w#X3z$]t`maOMvp/F޺0Ճ %Hv,f^yeH,eݟdj[ָDe74煖A6^b?/4M%ӘTW3fΞ@XX7mv綆 MPEا d,͑ѽۋd9e]vfa!6a3çFyVB"Du&7W~`fjM&l<" E 0K1Cη|doAH8IQ>rdE-xAyFRa{DζD%`+ тZklO ] @$MP,j)k!rVd1Фfu;C.zB 2~}NV1K1rS_]M[-SWq.նLM1A}8,@W'؁PB]) F,l:r+*s)7vas?8 $|pa8Gwi[~S*Zo5:g3;G0.× ¯lNhHYHU7tv*W: -9M)M m'4K .l"FAR eG:FذbM8v&Q|Ua2 $i?? Z@泮0Hsꭐ jW=at'> c:Kr&'PxP^rw<_^ǺgVx^gz)8 oTϊ .vcV `RfB1f_kjM #n^z$2pf)KʕMm_zF|PkNB,i $9rΠ$۔&=Ujz+eIGZTH8LlD ֣ +Hc&Ucu,F~]BB#+>*y*Hhu( o[/;TgH#/R+ܫ@*˙'ȍR`Xal_,YmU.M{R&ӫrIn , M q v@PJ1.c'ocNؙw?1 =N?*L ~wɍIv(pb>j }+@Vb¾o3WýAgST ¦%DvyGx4x: ۘU)ԏ|y'?yn`Tá%r"tk7aMlFCǐ`n봾)Bkd" &Mx?-,Xs 5,ٝp,s(xav\mB3/ oFʴ$M6н-/2rAvU"L0lLk)&mcsqk2 ,/٪^[Q wKߋǂ0r{/P*6A* < k67]bn$&vmd˴[b PKCᐶ\Z)"!L1z]+лpLJWO~wv!+;V^r˴8=߇W|=&_ /h#\ [rԚJA{TO|Xi:gl[$+$/O^~VEtHӶ.d6Bj,uQr.%9_WRkhs'=`&-dg؟;]:M֓ӕFazDJ,P=b55T1ϿXD,-YWpD51DWQO^Vy3Z5R`?X;F$%#q 02m,SLjOOH"=oNqS*KቦX2{']Tz|IvN$|1qn\7{\Ωf`!8R2*$-HjwI4_[y<?PUw?c3&d:0wI}Pç#ESfI  I[E7J(Tt\u636 Eο$o8b` I,=҉eaG #ạ:^"'bZv\^2MQ^{ZƫG+5 AM G"gڄclh[规V|*r\{;tYv͛[,yqv5h6K+L"YxM [pN4oQb߬7*ywMr4t=ȏ8}&/؍?9[O6"_ĝ"Uh)62:@.QH.gIf6G^ÅPfvKpKϴ>@p+FFo_ɓTQ_ޝ0ae8ꅎR0{@}"/4nomw]\F8 w8")[*.YXW/XQ<3-t0tN鱬<ˆ??TW= i}$C *9> ~v x?4氆!D4#y(_6OFXp}~6o=NU xpzvj{dgK^Uj^*A2en0ސd)Nl&irI9_W& a 9WW"vM|5;RiP\vrZan*f g:؅q;}IIb:$a2nXyz:xm3:r wЄ#y\cW[ F̕ngL6lzXh \4!b/O>>|lB}$$_CgdmtOp)a&JaKDp$|~؟w eozT4{y=]穐pi!v:g]IDoU h(iu=yi@ {cYDf+/ǸQ7>%nV4I*|=8XmnXn{դ.?5l!=+ H[X ԅr[&%,tiQO0hm< $;Tg'Oin^q>>{_joJm4dRTv#Մ@NʶgnrLj,EiDlI6ila sN wsb>Bq_il>XayDm:%B@ Kh& UWclGn%xȶc߈$igƷ,h}ߒ"bAÀ} 2yC#H8wϞ]DZ ֖G :\inSj5~ݧ+s6|5L/e!5%kr+ Wl>N=6珜z60`Gf۝Nms8_nL[LiDMA' =Xdp&x$%9WVݕCl {c¤LV$XTcŋg%!ѣ]p]9gH.\2Ƒ,{'@nl9љƉH 4dtHϺ򿬜BuZ M()1o(C9fB4aUesgXԁkISO3CCBY)=ĬzhAWN1Ce 5]a"!*L~Y~/R 7.ՙ\x?wo)QĈW)̖D-G X"P]J)JL2ܢ=%!H[:#&p]$G0ʰA1 >)ChԠCw| ,#;@18n4apoK>mT8h/VX0 p]y<݊rS\e%! 'US{Vhhh}mЏc,r,){Z>VhOO+{aW3V !=UVC/?hy)3r)̾1r#nHY1EVOs6-.S)0{of.byhMP>6i5L [dGTȍخ] 9L=% )N?e;p;HT`Bf < 'Ћa"vɅL.DžKIU *C5!c[ǀM-Ys"JՃuW dZ+|xvP>2t>V;4+b! Mҹ7.~Pyր!\A~ ByOO$F&E?T"{It'GtTڝQ֎%Iy]6_;5jӭ?8T(e~'12AS3G77f!ͣ0 qTIAX9ӗ8S|U RG&tN%IA&A̛W3͘ETFc4K*zM=c/((DH |EC]TtcbbQ4-BD.;’Rz4]^{QFz^QҢES70krZ Q\s2~cCjʖy0S8qТEjI-v 4NwW -ƆZ[ *)&ITe:r"0W 2mDP.N? d#uyFtubo }"﬈MS?kk$e^К7Qݪ+[ow +>{dnFs9W;Vе)5(1 L.\8 L UE1[xS(g_.uӌ烜=*˹ɣgi"l}V'1>4 kҦ~n_K'?٠_ՕA^$Hn{,G,C\E!&0 JX*r ^}Cp(~qQ¡.D5yulZ1UBSj6Uʡ3]n^z { ("bC6s//a8DiD%Ed("yN"UZQ:vtր.E\Nʞ2'+5J_ac:(ڽ۩_*qice>\in.x9b~[v+g.5dk@! ?J)l %6+*Ųr|Nɗ$~> v#, arO ed7^V[j|*^VAV҅ Z@xEXu?;xt"-$6>)ޅĜqH1infljZ6FxI+yx#̴fO6E)(_ӚS .3"KO(o&+US&c߇Tf\v%Y=D <]/4l{tx7{NJj#SKaNI;(!YsбXVy3QMFI&>)T8 vDOQ4F3k#vT#̩kSlg?-|^k`DULUd=N!6qp殞W=%Ҝ2 Z#NgSsJ{G+Pl|pKֹ&HpbMO͵u3 c2d\ ;\gp='gMid YpyTbQ5Y*4pvb/Z?5wR@:Ŧ9 [c&p6bb_zqŤe;:j; 5EJ@uXjH oLYS_ua>.y#9p|R,m]^>5٬nR Z*Y`t2}(=tRfIXl8rv%|f""y 9˿|N(֢^+^kԣN˪@2MqlS| ldxL{Tbm]ĊҳbpNr$92۩lؾsaRiYԇԧkZ? Dٿ!+b)A'Bsx7# J[MhDL6cAAW:5N_W)文'58KxqbWq7v;!EU |c0d0|#\s9 lXDmxc]{ A}>y.6be/$,} zp/yUz`d7&cNϮ(\XiDMmC$7$H`LO*sI|B0 LEb/Hd{Y|cCvniw‹E'`XM:A' IB=_Y'6\,Y5@١BtV0CGZjg2 h{t CgEOWya!=E{NGrGѠfA+Y4HZb1oC`4 'DbUq!̂ˌr)xGXc;Ih#O̵qlynePFO0IM7~ݲ?|N~WDˈh\K1;>q{rT1Qz+inv*b䘹jԙ>5n' 0zMrT>ël~dX[fpg>ްXx|( @ )J (ġGeuF1\ WvgS؊X2c3c&sd&7bzu?T|КvIlx I_b'[);j"#SxRe^uɢjQ/jD^u{#cb@#7)WRB;LL$@ũ`UH2E m _2r"RἚ~[`*>Da]'C˚~,tEak^#4ՌxbeJpi@yqvD{}kYV7Rʢ{nDe9ʠM>w>:D=Q0l^3kA~_-V `&_^ 3NNCz6tVMj]mTc^I O?ͅiZbitǯsv(q?fXtdH8Sd TOdu(uII|, L,V4MnqL\EZsUyq:_6:t$AʚvDzf.5jƘ͍uON3q 57 Poik҈0}E><OL+Rx^&Dbc]`KcΨKWTuJCa\7,ViY"'@B_G嗢UU>e qd iL÷`'8s CܑoW\9~Jm)ˑ3uV@Fu򆺛@`kH~N4Jzt#㭩~{:߾s5&,44sK-O:MZS,bzOߎ2/kDi]` k焒IyFܡ9q@:h,:Oǥ'eүKǻ$Pa Xk{ZE~j<{n< / 5i@vwYi굟\F2iN!W9M6&)8=\$}[fŸb-xqs{kPz\(%Lɖ<8[6_"ǯf%q7e\ϳ 7+̖Fn1tʵ` 5\;AvinvɕAGH[r7V"TV^TCiRϾ% YK7"Ql[ N3;%_WVAo(yir <'D@pߩ ^Bo5'KrKdW04ﮯ̭F{CWbE1dBv`oetDA,~;`"pCDĪ?ob.G:}ɻJgA΂?3?l`B,fѾQHǦW-䅽CQcJSl/cֆ"/p r̰vOgȜnS%gI07]k:g*yTLMHϒYhK4=L͑o8M [|OHy;57)oCah&L`DĐ~P[P4z4ZLF:%~j_PVfl7)HCNn*s afVꂪWAKWQ v}\oUkAYmcO11Z} a8!J bM*^T46VŨYR__%e+""3h0),T}AG<'ȤMRNOxWkqW/N`A+< 5! /?!y{1Ml6xف9(v-*s53*e**xDi|VBqdm11p5wKpmw1֠`#=$8]NƧ *C8/.5M97rϸj)?*;EKܦFS g&1 ~S{ lD*Fg*W_0~ Ƭz1 Y; etǗ@r|kX¶KCErVV~[j$Z}}0"em&F H%GIoKpSEE̠t{ l:m_R'54fxO@|-yh0V([5>qRjסLWfdOLδ he[lF7BOSp6n㭟5F+ Om cPS(GN{J:'P>M̊lΉE!tot\RI%SK  ->JKGz*:-Tw Vu(Rv[)n}sYl׳F` L%Ήk,w"0WwP2"m=z xvXd/fdS$W6>87<绕AFȣk XbR;tMD&V 0DŽkNtҡ 4ߠ\OCA'?מ4X;worM<ڠEyT I2u4<Dz:QO4rO1riILoU+7Oys-Cj`:k,=GAXˊeǟMӢI2$a5s[S .zF3[lڞT)kn u՗Xľ (["uܴ-^ՇY~ǚ@å Hj9L(Ԡ_ Kc ZT0q/'>*?>E6ג0ZZS @i4[~ 2o>̍ghx>U)bK1<ָƑp,(HZ*02 -t%[*"MRrwz?Q߬fxݝVo3ߛ 5 ˦  V9Y 0M-(x2z܌)C/^Әw?}}Nn^ct`shr1JXږUz/Xhp5lLi,t]s w;!`uatwG=vo vP99뇫i$g #]GDr CAdUUѕ ?.0yG=GHfsZ; ""Cy].]7QeFY#1qUSwdF7晔yHV++W.f"pQJkz+t<|4C"bfY>bgW8RDOV^9b]KdlFRx`X??&Lݮ[:nS!h jǷy뤼˶ˎ<>. Vo{"U[Q{ G ײkO j[F *CB$QmM}3HעƄ^rGD\h>*izv{W0XȃR+ԑ< @{m9M'5z5.Cύ+a  C~#Yğ "7[]˄3왌{g<%zo"I`q60DҰ"s RVS+}o5b@*C:<;ĵ 9JSjƟ't0*D#MFםm-VuYbKZe'-ӲT倢|zITײV*g2 nCдLeG|yp!}Yjk hLMjͯ,<[[݂&ϗ :e zsX %- 12aOh HEUxY|BĴl[ӲtyNIՕ$EגuAKt몁]|x^s Pƿeh4;~Cbyhp,Eʻ]܆1DrVko?: /}s tw4v|:(:`Z[ꦆoǕTadr2]n6TlJo/ne&>9:a`DU'%^O;/S#IfZz=VaSnD Ss-/1IxLYCP?TYi~;V)#8nq5&YNN= Z߫eE ½S͞gLXg #%rE[ x^pdkӟjf|lzMD|{firU_JYʀ',G``ңTxqJ%5Ј꩖2I#F puSb-Ħ vBCjm ѿ+H. ^pxF}DMgD': ]p$UC9=k#%wowɇ΅OR?2>3$[!>?]'yIGRqөu]ع#標,G1\*ykpxajc#&!av.|gFͼfŲ2L4AgGpM&MҼ@J0/0t+%s:pG[a e8xo9=N3.D!:IZOWpVާ= B)ռ(R[O-7P1諻,sJ$xdkIλ*Bң9ZPn?&FkE37Jy;3;d #F>2]6.J=I|鰯vP:_0ȫ_6 Qe>k|E²S3⧰Es #9|/@X^P mciVH.A}fOc 4 &8\'4~Yh~l=t)}%WmdFE_'ަ|'x h"QG*ޑkd3Us61RKY#Q+A= IEW*N0>(T!ll ~pqXD5x0:Kȓ&$:'^e|s5e_s6 /ss a?s(OM`03%~_)MkQ8 aqgny t"?e{3 QFЗoz xH/\$Fs_fmWJ~[)+UR~)Z֎ӒO7UZ7$lvC-Ps"yc,㯑Ć>丅u$܂7 @ ޓ}$>5ku~oϐNi1/= kF!FA{}llFIU)i>/eqpޟӑRsyg6?օ6-`$;Eeac{J/-$mxM8N I,lb< _HGc4rĒF:Dc`Fm&bVuHg#}f4I`Sz!{SP&tN|ǣfXVP'NON-Kbt en-whs/GfWxŠŰZI7iE&ˢ!AGB'+sHH2|bt9* o0-m1L{@~7'X2"&I<2popܛWyjtGBs}q:n4Pò%* jf[,yFOC^dڑZ:vP#;$i<*g z>p ,Ĥ(8Y0SK` YN1,,v;KUU7P7ju^Vˬ;v櫠5$eGsӇ;\2Cdx,ʰǎGK 9'in$g/Vѭx1&57yljB@)qU+,H5؏H4q bp]28՚(ɠВeVI0S״Y?+y. p{!N5!(܃VIR%-Js}#ۧj'8b (M$nmMQX] q~ R2T8& Yi[/hRHU}IyV4]d{g6ZHI]7C1ۀxvz= . jΛ5XԵm]36OW5kSg&`IM,C|xBRolFq S)t 7*cӍgsDs _^c!Ŏa!;7CkLt&*!CwM[`oǖm.=*HfE)'}(DbeuF+3-c{9y8%>яfY KH=ORE7Y!j!`_FefTMzכG>f#=XYEr}($؋;+ ɺLS&W˞uS|QԷR2)at=< ~_|W#~,NuCXLi3_b]^| 9a=n}& b -J۫\&:.8WⅧC{!BpE`J/3?Ȭ;Z:w.}apf `{{!*p8 $hRS8AgRqƮ9a6;U>`R*_(Kt3 b.BGhaԝr,P~[dM§] 9M*e(#U?I?-uۂ="<}:˼6NKs3O?`Mb0 ^+Id}8ppc)XjRҽÝe2tZ2^*% EkLgc7`fDZj)饅2^Näz+j^*d{ӹP>9[$If?VO(eܴu| ysPBY;bEqR{Qc1! +6l|%e9T r!O W (YSu>)gch x &7vQ$8NU{.~z;<<psy<-A4L]( %x)8w&]SB'?i͞/s;J1yM2<|?(}xR|q.˶7]S}( " vcq@;AoFQp_gS #Ky9M7ѶfsU`f  ceVaM9wX.~j|zX41MVKVZAi |dg8Do-6( K2O:; EQMx 2:d/E㢾@|4H׎  !Mqee.v2v7Ngbۥ"_R0!prtФ;s,F*"Kv[;W.C./UDB/e Rء% n,T{lMgneKؽK?h8[ 4\hYƖ\iFlՠP?sϥGiʦ|ܢL]Ӟa#|G|! O57 I*RdX/;>_v~*A}qC1* wمJzoJx4R0"S,;q6納 zX"Yr뿤GWhRSZwl} 43oT@~UJd܀\+zmBr.bUͅv7nXĹaLP$s>/e9 N1!]uE=nYK(g,we|{a_IK8]L^b`WjbDIrR*{hP%FѩBy#!{(EB@4op|Ͳ.kPHT\efێt>-(} wqN`mɧaWu 轰zxq{wIOK Of|rw£ටT2 1#$$AJ(oZ5Yj[ءV7_8a),򽭔3۲7dJ|s{RCc9>8I9*6PR k gg2&xl=L@H&8:N>ZtW!aTwf/}CO(ݷ49AO keTm|\y=B÷ZKݼxKp|.BPU>7ӵ6m{jS|I85q;W3[8l*Ý-pbg:sBnճܝ~=54[4)'Aj'(IFS"Y`ݑOrp7"ZɅKFS{R`'O& <ƣ,9u4rb;QǹvqG.̱&^I@]+Q1dr(!6vz Xu5vs$ B<7HDLحqd1r CW.җpv&M5r0y\fcHާ;SxgHQV`H$HQ) /[Z?;#}Etޟޜ>~BݣjC)Hm%3;+^u$1JGwС!! %mKVwSZׁx̄A#e+ɣA/;6NK& N>BZU:G٧>=4oM 0-װ:" He]dZ`jsq8nW!ӠC)E+*kmylz@SՀf܇RhNQt(> ;%ݞMZٽ_-zDkxy>Yɒ* Nwd eg@|f6k,.ȳ{cZLw =X9Բ75 4*i!?'sVl%P=\w!NN~V \LOybbbG$e!_)UZ[|^>&KY_iM躡_zukvٜ=o]Ŗ{NiOf|hBZjLt _@cV:tz8;MF8!_4`F7\ DN2?ک AQXZ' x:C۰n)qZZ`&?o50$@.ea膗W'err:0`q Ʋ?Q%Ԗhaut)X\/spT(ڌjsQ=8lP=~DaCy hTM~Kk<#it( tDJ+յ=zBkD^?wyf㗌*dH~:h.q7hN6*ѭƭ㞯rK2>@z3V5āS !}_I!ALiXдn SR;}ǬK%ZVS8=@aB(NBT,F[;1Ma.m"KnȞ&d j(.ө&]zIgZ؝`<22&* àB]=7wڲgs4:s)ڀ= %AR-\?zB o7^~olt*ѥ7 CGc5c8> *dwv(dK4K+L5`}c=Y4hlu. T 7n@d| ƯZo¬aa|ݬ\:>mgI_s3Gwpʽx6(Q"t<0psi&sP7]ӏAZTPl|ZZcRr:g9z[};tpو>Vx v;C#I\ѫ e12̛v{> q>nCgق"_k xl~P)%z{u2,%Ru،rb@d[de5~"ׅ6ҽ\24"􈀙vjM@"`3Yi'yCcǘʂ6~-5/bCoF7$Q1X5M9@8U[n)܍ J=]l&h5ߖ*D,;_T[ g>O'^\U[*60"]N;L974[AՉ2EpfȚ6j*ث`9?3G=?1n᩸p2Aͼ CnLFn1,>G}f6/ϛI$>[m%9HڶH! r]uv9>(uॼ` 54JF=H_5thbKR+^t2W{bbI!bů5nIn:=`n=zƓx$^x Sd ɗu5N#EcPiu|_"@EdfJaf-(<%i(oPb#G<:k5J }fyu_2twUG,c jdHm 0 bɵ4\j7o]1?ah,z)Г*17XSU~KIMQfFSI5wp7m]<[7 E{pCC)'wNk9Υ 3#3`({.Lxbͮ)vY$OHe3m@>A󱳽/QIc뷦g.Z^rQHs|1wYƬӐ#qNw<ed t9}1fx5Kv/1hE1[ā'-ta$!fDqR'yU(=^J)bfP0DX'+Esg%,A.X;{S h HZb1`|j"ܫx=L,"f_>FͲuXvH<7QMV# ?yruztw4Gc\HAQJ*^=IoFf/…Za0)^*xܬ%ϓ?*CM2t8 )Gj"ϒ?UACjZV <:*;ؑ'" p,J? Rb#_V"KoZ` Oן`~&Dimh!{ݢUn&xM%|U&fdIQQ lk7Zg hܤR2t;U۸kQ z]:7cs9>r&Vaq \1j7ǟEx]/4B`Ѫ1sPAf4)G (" fO;*OXM9xu~!O*G$o97 Q-20bcdUV#5jm/w}gQrnmAS8=_qp?kˤ ڿTǎ E9@>!șTBdQm-͞f:a`yzƴ%<͖(ׯRCЙLg'/vd0 p=n590?gtQX:,\a<eڭt@r{G:GvayY$)ES˖@͒ҮňͶQy iixaU~Q=q@x6 "Y3 KՓ)M@46'I5v$<#1i 54XZA{~;N],ZB  7[ W 4fR&"t/+Z*M>_Q5=B㌭(k(N3 j aU*TI^{ fr!9~gDtޙ#. aOTDr/a @2fKvKk>N۴M<[vR8{ G/R\wvm>Alւ!լѴϩx,C^|Чa˘[/YDe:j,G>-~4~k0jpϩ&/,(p^WBX}SĤ5sFf* xL5@\0WasHLG~Ռ В5AyƋ8lU.qv.S-BRsnZj['?x#-y3b PehTF4Бjx$A:J2蒅hIj䀰,f r{/s0v>nmy1KdW.@!#(jv܂u p GK6k6g [Z 8"*8CA\dF^-Q6h#pru?7e"/=soC5izk^:)^GF׾#O=8[ bMճF)Vm_8PK[`$zKv2q tϳlz {ۢ[͈Q.XĎ+-\m?rT0+v;7A>He ܨsp~T'q'Ew5( 7/ H;bTҡOA[.,&>)or&}U94 wQj zG9X >uHN@cvF2g >aj\k<-ެMPs,B}Tv\Wp:.Zq()'U3MApR퇳/[,d%:3Ii w "01j4k 3.˷6bL^#L+.fnaȑtz;ehV3%SJ#Lli[IA!#& RR%k i#0 ED=hZnA0\݀P !$G|4ň%s&.@$#V&$W[UΪ',;)HE#Pm'P_7Qlt&"mha9]f9՗%eJ \پ]_K ;ALzk'dWӉD{t(xY }\y, HWW2I+][ŵ 6#gLo+ >sF7텍*dVWw4e ygkېol\MDɵ( _% pLD:`UjA4jR.:K+aMS|njnv><ݡWSnny+:k;+5)Oi27+pv"U'd1Eu/a |TsӥDz&7O=z/#?< #H+lOϺg9bF utg-C1*;aazsLN$Wp,H4`;apcN]o7=b yuQٴڭȲ"K~$'hQsH-<5<7Pkdp`1dYZy'cAQyK]k'F_ gVFNxP).8e !9 a"+ucg!xGÜ #= #@K3emAem>|$6:g=1p j@*⳨bjkRpi$1ƈ (/OI2{2P 4G DOg$.$b%+mԓmr=/bu%h[.S!|FEDo (ǐɓI3eA_d7{1QDͿCo/!W+j-6f>[דOղx1HV*._EWh9է-HsW %})\056i#P--,'axg'B6p}-qJv!8 )FPUjȌ\ne&1sȒ4T*g/C!@ocǧR|N1 $"nEZ0+LPFBsfS#>*rpi;WZ8ba`ۑ%{&SQXqK]+ɯ5\sxXwCDrH*qY*pԮ(˅ۡG5O!#b^܌ꩄ)NoqEZo54%=A]Pa%LJM~|T8_|?y~!F'qrGur٩`$'bI~կee"[d?btWqfÄ,Owڑ (b4hKuB~BfFvaL7ٌn8/Kov*̝Vr tXP-5i֐łkdr& uO8\ߖX؀#t_zUJ+VgPD : 6!&r헃MFG&ivYf,H/Li4Z_=TE/ԌGMZ!4.p:q45p/D\Mpy` Ujs,尯X#8`3ɃB _#Eɠx/6_GU_SP<aj⍯CKcMو(F]rG/,cv&#Th, *tWOEgY *?. a")2M :lPt(Cch ,hpft1Siԡ\nS7ǿL<8D@W@13Cק7 ]Pot$,KǨ.p] ar d "o#ўS| [sTd#:Hha*kFܦ K‡:(/e3 :t6'$JPn33m#K[^&l#LV.qH> 35 [пej0]!unq5`jMT1DoZ)-upR1.V^K{;aΓxpvu Qi񹮩7 硝w+{ 22{.,;k1(pAo*C:io;~ǿt]0t yRWH3<74.ǍGmjӠZMkXR6 9PPE-Lf{sK9^Si!z ?Xh,0M;}X+p?/sa3ۄ y@ê-Uk8BuUʌߠӺw? #+&k,.Xo:y]³9L]oX3YO||c2- &4]#YpMBܒD6(/X9,:ϺBg{3 184R.N0%36 ۜ^<|繉gQZg&F!ŅcTfN쟊e ?]EΚ/DK HN 5\CkӳE:m}E-FϖrRV1&#qx_A%zWopu'er&I:?HR5urBfp@gނ ob!(n#tr3x,rΆ TAb/\`~V-Ao\{/l84,,ՐL竇yZP*.kxr0MXb [Zm d6 kk+Nek{Ft,+nUt`Ik!L-]aYOb|ҶZr":T@LIS&/68$t=߈9ە77xK^: |d\C< Ћ\ OMjϓ&YSFVUqM.Xe _J;NuKW%_MfEs':{ o2H؅6` uάO |Wr1A,q]Kʗ!(0!tiœHnyLCۃsRP!;샑*]$5jl-x9QH]vZc_MNV{В7\e Ϳ@6cNblfg j_3~F 262H|"r?g"{ rץ7g}kQJ3_"@@1N8[7_z|8IŇPOU$pxDfjzQ#GзE:¨c14F$ wږ}^?^(n|KgbU@rpTg?V gG2!i~z $9e}jcaَ(HZtj{69:EK(]*9:%y=L&)l$Cj`H5##WɽǫQsY5.6VT;k2w_U&xUBWA xGZN MV@WnfWG4vfr-x8zQxb $ zﵮi)S3Ou4EyU+wдsmO~ ˩ZV.F!tdiaC5o2]n4 9<G6kM߽x~NV߶KW=Iޅ(j xq8Ψ,bYљlP>O/5y}6"7S?aekYxa\oo_P߸!x^.5zᑝ+1[n778e 8( ^`(h^_;F:bp4Dr{]5?K>l/ǧl_ܺitGI 瘱["QO(Ǯv%b>ژ4p:GFSKq²יMصX%G)KP.{cmd tN5֨K8bQ *@O JPPV=&=gz3<߂|eyTږhӭУ˾MWd\@d۫-m:|]L F}(5Fyf3M@ Yn#jޱ:WX`YEm̝ߘY~z= b,ۣu:n ݏqݟNsEfo jVn^P?_}Xs11ІS6w$I I3xJT&cMMT pk28e2G$0~P/Hw}/_#_uwVڧiFo]"m14p9LMõ, oHa)ƸFD6#;e `l7,[*|y]_!3.!^0ڍkTdW̯ߺz"D' U}nx$E ݨܕh&>HrC%˃yYPM#4?pՂو \.-p}B1A](eA{u@{Im\\تOx?`w))Zҝ;ȓó-i!# {X!%埠-'PUDƄxn sY+׾/,t[f~#j&% f'l'WSVIHyVA$ Й:g~Ac۹nFfvv>,bS~i5M@p&-_d:M3 ѣs\$81яxHeE"JxcP0,6%[61SyCcK&[^A]4va%EaI&K% {/ss'V%Sp&v8(B.ヵ|  v˨PZC=)tմ0 H<^yT 22'c!7peb #gz8-e-6#7rb@Tu.f.xj t,4Pp{ TsZ)vO|չ.<.PACG+>2R1Imf=/ⲠMCٙeJkb$^SX >*T!JI4lY:RqDCѱ\ gxul R].mjef2N(\fH_Y8UT忺sA]TmR/j;^7@ӍMokTOdCz6;1,Ea@~݅ G,sG"(p&.d2 [IZϊ88n1>"jUE왮 Ĵ5 RIوYO-ʺTTzuZ" kPiLmnMe`:yyidU a'0=}Zw lߎ_IdWضr3 :d!#y]`[0,Tm O^4Q)1URLΒck#mHjczWNdEa0!Qe~b_N_dx}n^Ž=MSEP*xPndDHPJ5~21ĝ^Y4ޕo?%DXתon&=[E}1+8&/  W$^iHI&oU!>G[9^Z5r[ So"Wqt9B4Glsmr>Al{HWg!`2&P/+ѸL|lӔux5WxR4T&r>?p'j_< Z34kKYf(zk:GEGP9OUAFqcGRx_R 8ވv@FS_oYx_tp)CN[4 Z$QBjxPpͽYPL})ްsf)AC3QׄMolj~×ˢ݉UW,c=%ʟljr%[?z;e 固lscd8:"vdJnI;o{~T{To,D\zwQ$O }7:th98Gݦ¢Pg1K-NƝDa#w 7%G+DCvZt:Gxט8{pK.sf"q[xx P֕G1)uNH=pU' z46i$sQ0wmhA#oJH llN4Ń=dn].b[É47'sgo 9Y. sqjSka ႷU )hw[6<]ykf-l* lX;>&@-nEפFRdH6f[QK7gUlGfcɮ =ZWh&>|= ~30JGdws:K@ZSohX.Bi3i @/Bxox^Ue!f fCkx9[7X8!? +IsWFcucjeZpu0@!t-Y.u0!hH*Vְ:jqчƲ|Zo_VO)W^RˠqE5p^ n1aH? [2@2gU`hu2RL:(wk69[!f`~;3 H4}]uDkV+GƭI |C'lh9zZwc~nؽTR=pGAmͬs1R* dp+dpZ:ucC`f"""6D3ćKɇXȅ~ Q= k-]P.틙Dp eߌTz8o%Wr) w)>)\(NH },MdT-13;LaÊa鋎%&3|ml`:Aҝѭ+>p>@+=m\!'owpJRZX)$}=K|~*z#:O{_S<"{)gş,.jɠC.\h#IcF-@2H{{@c)J>:+X翊5qK ԥJpób'.b\I%ae| a-6٬zW:wW3mzZ3X/ܘT <^Ź\RTfHyL|ae !܌*rs\0@졂(4 p 1|Z]L"z$5pHbeLs,"RXA@lk:6i;g">^QvIr?Q֯@ VwhUp'ic^^o_΍n1dΑ|¾ZpA S zҡ$Ek&7Z݈4ρaS n ѫ'O EorF@O (N,ug\H`^X7k+7d'Z~X* ưo\1㍰NuNmj Qw+3BL/gכˍA~iF Z68+Dq.Wlvyu m61̫o >,%Xz~gGe`|0!xs UjOq]āl~u=̑^B_Cy9EZMi)Ș5Q4s 4?'dH |x05&R2}[}P|[ /A0y{.Yنշ # Jn ƻ\|@!,"n+G7S񽶵DfܢZp^Em[eRE/hJ"!L*>_ LScM6mN&"4'џ\s^zk#g`tm=&s(ȄwƤtFAKk˥h{[d3p(wS:êQ!18 '!4^ûjPB)LI= {"鄁:ԟ.WHc~|(|Mp^*9KmOQ0>[mm}N6'*8zlŪnx8r9S B&+ j!~v6/gAy*\(tW1yR]!Wy;~i4ר-zvE 4{D\Ge񸣞'0 }ƒ0Ȏzcm*~͒~{ȞjϰOjа6&ӅU}I:Zi"Ah sK X%=Yl+P*qD^1*?0/2`^zm1]g+d:M6~0^ Q=sq~2R`*3|=LrMFdeV+ee9ɑ%V{6\\ծ:vn:HԧnR:` 燴PW Bޭ@k9¢ ׺,ưwp,ɽ"ktud!X~TNDZy†GJjN1U㿫wv%$$#Zh-Bم$_Net`ܝւr:8sXe6I1bp:"jE>ͻP~ gZc^,HצvᔏJݘ Sr 36i EB3f/,[ z_ Xڙ6 cņPKÄiO X6%)q > W?%-!&.+FYS@6 o]aE`w[K b6]ئ$}r%Dγ!|)t=<EXc]#5`;N+;&$'`[{xi|tbT}B*,@EE(t v Z#2p ,crj-Em(GxhcHJpm\Lfa=/07`C0oZ ꄡc<'u  %%b—ɓvd jM"ykM jܗ$΍cD@]"-Tւ:P;% D=cQ!`:0"2 $>2lt7\a oQpTGs5"1zS]`a$ő3?w?|+F[' (5tb?dw nfX."]73? .QMҜ"b!T$$^A0$"7fXܵTt9 p \s+]tXi\.NHL;dOG(lJޞ6ڑX- w.~,bFwRK"Y51b|"fBAyNV\ 4!m d0qN6hIcޏ?_)&o¦e=L P;]8KKCR}/["e.ggIGfqO?Ovqt3=dmFO)4 p,ExsATN\^LdPA)&Glf09eXkhb'M0ٗW[p%P\(Y`~Vr֮wtYd AIL씡Bx=޼H&)A-B]k*Vuqn+]F#9LI =\x9e] 3(3[Ol>~Rp|)O,Roa1{9??/*Z3AI々v??|Ѿչ?(Φ5īKъV<,֩6-FZ! ۢaN\xZY@Ţ 28Wx"ďGrJ55gm7(@&lSrz*9WSy-z,Y"Kz!MgN+]\-S#AuuF󓛸ykY֥!*E=9/gnF[j9! [ LRw]DШ;ZgeL~jy1)]M-=ړ$V+vS^bp1o~N?\o/Yeq9 RA{Ix$N<`LIFٲ8XbL<ժ7WJK\Ŕ_9eWlpG:2j`/ў"s2'U p5p3'W֝6]GRMɷp| &72rjҎHB~OoWg4# -DreSH*$b?CW~y&t6S4ηeVjIvaDͪy>s>($$: JG˜Hin|W*\Mz5xفON5,< O&c!&n"bwpwx(*W1ڭJO;;x$h3Đ?mxobNv&1nWyv<فe13etTEmH uJC QZ*@dk yn=3UC7d;? 2uS#R*u^X:Du8UЗȞcI%B ZAi+6˺Kz}v,?m8kFjrE{ggʅL/i$3oדMWtFvOH:b Ӕ[4 ZҢ4dr $N| Ė|;Dap;Lua "Y(I=&r$_o;v,V e޼hB1;:>՛4Fxrou("\6f^NzkW $bJ>nC)sl">pN&8zq5 p1TT=?0_f5OE񐮯ߡ:?ܵcȞ2k4Q2ʵ ,b>ArlE X34<(fjyo!ou:vE: ~Z!j .ȑ ٙ b 5ηwRʄ1|xP+s+Fn- l )괌kJemm5p%E]?3v/r_F #,UdxZ{xm8cay 4חiK.6>jMv0ɠA(V޸-Pު G40Z#[ɚnZ 4 vh"RmOo4e.C!.wmQIVRǶ(r;1PEUu0O8?"Ӏh7LpAJ|dX>j&po=h QmksnyWnvLuK:4W/Qrd $]p!ڃDC}2Uũm71DLZAvI6)ʚ;/lu>{8fT_lE{6y_ߊD n`e?^*[\"""p~cR~Tf`NK6( R 0xRp>ojUDضNQCp^6v&q.m&Nqd4F@;5jȝ;-9DJ>p1&vkm۩dcq>4שyA2(EW`pkhv O3שNvgfhw5EnW_Ŗ'2QIhcax0w ̣u%P_˽ YluF"s^y[4W$K͊0 bܞ/n!&I ^WEfC:;tu`́%l>$Ì4fyݩ6o8xH#[H ߾5sKƊM!fy^O\= V|zbԅ(,qT [dŮ| |z$@+Ȅ.E4Tj&cg\3k,O!ɤ rHj0L1É?أ1ł*vI TL5 i mPş"ቩiZJ?M Z^{v\-Q5Y+fQ,n2TO.;4GEwJ[ WeS$oI1Fyn@ǛVw#o ֏ ZK(=idJ#Ɋ(\.=8  !g7F)bse^A= &x,+1J"/Xhpڭ/e\JLSX/mY ,`ljҒlK (A]WF@} nV ~F AUmWK b%kCzTe1q2.#c%NYaS(z$J&d޻NS;Q '9+b+,y،* .[V\RsyAW8ˣ6Rť`⛞ڊ)b{t،г]}W5thV.|AJ֯9#l>\sCF;5s6oኘyM.2oVbeBMehNXaX65㋻;C1ՈOIޠ;CZfVZ` N0*Сa#PmɴR"_󨏾S6ryS|i[VЉbkۊ7H; ߢG!V3 p芋Ӑe`MMr\\?;{Qf P4*eλlhN H AU!+nѯ` |X&u@[խDVS2}E˜VOvW/>Avt <]厴YmD"[B$`?f@.}!~$shR Ћ _|u"Րvw$qf*@ǝPe~Ig2 SagtP)-7\hiuZipK.Qڐom3vBqSG”|JЪ'[_^6&?z\Fڹ==m=>sCluBr}갊dLM- R}"ۖφ=DAU(B, jUm\&(Œ!3F_%F#':!L3M[ެ> E'wmI/7e,R0Cn:wHa4k>waС{GNWBl@:Ĭ*j{3c;$a3TA| ܹSjŌff,F` ٱX- bI|h :vy}qq%*pD9Z| wT_#𭜣X?,z$~pr 69*{T9~.59 ,B P\9`lV w:Ó(t{e==vk<{PJᖩ[uak9aP?z@p7L~R7Bps&&b:#o7to h %! AKZgzlnF[Sl=j9 }7d}?㐧+ژ qǪ5ODau&dWL%Io%%!Q}TRX=83ԛmJ VYjMUB1 ѳM|=.Z x-(҂vadhÒEd?8%e]4BSZJkp=ȷ_K{Jy1~X.B͂ 6j;IࠑԾ-w}g*T5(>S3׵E04_|nijvΉ') %V5UY@|0T9K xޭQqt8 *f AOij͏qGuD E{T^cb89 ʏřYnU_8 % Ci`c {-#C#C vp#?$m)=|ԇ,jJBtC_px|ȰGFPpP$ %h"Z@UWbk^[I$F\m|WHte]SGJxkVHFeS?(3]"`*ᢇheT^=cAR&ʯ t01Y혇0T"mJ h`x]yɴ7-~E2򶕑Ds^A5S%Y 5LG3܁?!L,aA=;H _=܋?}Lת] ,TM&ƪR.4P4__v`NlojC!C̯&rH_Ma_IKEmY:D#i2V¢+EP@kaIP).ٍRS'! ue*v35sD[+^9jckGի =Ag!`6MxԾ7P[tJU~rC8in5Ε B W&U4y"Z_0 Գ'[~7$-ie}<:ӼxL &:Fo- _'^//^Ÿ\bJ-C`tF|^ؓ4qʴ)S٨@DD%ڑӞ:zb9U U ϩ(Ҍ{u%˝0ٜI_ ѵ[Җp vhAc(ȊX{(b>=*)u+Cy" ͟IuwJyfEp殴~mXƴ55Ҵ>gCπΛK䏪$~^Qժ@ZՊ%WuV?/^ia;3p*,gQ\\@VEyq@(1i#=ܡCBE\|'A Sc=SV#CUPr F,u2q;2$Z*+S#EW'M~(qZB# ~3T+J?}}W L4.\.BG25CbFg}B}qDbg"CԵ6q;^ך!8ⶣ^7{`wvS.Eˑm+*yѳSgA_Ab.U@K ?XҋtkDc}W` 7h0MNkD&XDֺHk&BZŢB.&ܿVc6 壇ٝDqO\$Umx!? nXH@*e6yѿźXl-O[5D<$TNHkOBA1xuGv*AFvg ڦ=|B W^?KF/W'\"W1) v8Vuox+d({wM:`kUjF`l!?q4x83$3Uy^)E>k!0nelemF6d$$6^Bo DNrS{rtcG9d§9G/Vf}t圧NA2ȠfXuYbx ؘ$E1dAh/s֙Z-c/_mkSlѳ/ N 05E~pMTI?d`+qG.$o{Tb5Dg>('> Tp:VU 1'Ӽ)o= sli[t`^uHE\V!CA OGFR>Vp޻, _zJ0MsQtuV .։[K/g鲙!-Cj% bIL#C2aw&.[up.࠭`;jC SwT23*Vq"%[̂Sobڄ_Aڈ="M~(G`o/;PPuݷWQvӖ ЂԘ^yN55AULRًPXZPo؂#YMbTd Bַ&X9$Gv/A*JȳGC0͌u3F'}VwQ~㶿ZwOgaqyHۨZBOW կJ[0&^s񺶉-!)G9|U]6 dUi^D˚.)0Y_`&@7׸GGsm@4j.)VBɲY ɁlxO[N{T|RsTr^/h=F<w$v!!7U`BQlLZuVK&T4>4ixdIK] #^>(*t#CBtU3!uܜ9 9d=A9F. HThg}p *o>^Q{STrm!ۜ}q%EuRRWp >/8AgO*"REzB#1{t2FMO!qgY'#@"'F8~#e'(OCDX*ľgW ^CKᶭjrO3f0UTDz72gDvF>{ ~n<bU/$X G Жi/_u iRHetE1G,CAm#UI+ͮ#&\#\l#ݗsWZ@{gNj B;p`4F-G01^QR;QXA  Ԯ+›c5(ob8/Tӎ-*V^#oXZog)1%+_ ȃҀ~RIX#p8sThx4[=?uTa|uTQ1b4>T 55L# ]3a3)")I:2;rE\d8ZÜ^+ƎVc>$ bH7FG &,Q;URFW|`קV*tg-lE&Ե e^z18m'mϑ:D /3U8yDTvW4kCڦQ`^|d,HƓij!d$=L`.]?~HBZd\A0o^f[K;}~lc1^jJ$;9sEq:QFC$ϸUHz dk:g'TT\X<6æ3}@P(  '>&pec+L;C/D$Θ9q 4z0n=|mzDq={J4ތC[Lty,rwty%x-R1 8)^9GW>V a;``xm~pAʩb^Y2Nlbc#}‹&o+ؼ|'%Uq(GcV ܛAMHSQ"]vx&ʪ+?JSx>.0Yߊ%dx%ḡkwUvff=fՐǙisȍdei,*,4gBtèC)/z}YӨ!{|/rE15R>}J"3!x8˜&F $Z(;I~ uX oAb@W/wcwgԂBs`Y*%tc Tއ! yQo,>2 ڔ!U=ZhhvHtNK%`m7=S_:'Ju7P)P uUe~S ~kZ&(gcݓ/8>7?DfNrʥX&Fh"{`)sf76xpOu¬ٞ4j#2l;jj9a??VEp =MhF TrBXdŌɈfݏc zZ٣Nq BCe %0@ QOBzJ?$hX<N=)*_~ ̗AjݗїRt{ X;ѻ^x3v\ =J^"wF2mlXUXv{19|DaP1W aNC6U>p~yPtLjf28MS]& ZM5i+Xѝ*ʸf9Ht)yUD nDZLʶe(Q~1dF\7k\%hzNŨKAvNV iSH^$G'' "s1`MgCYIq8vL%,/`3e)\Z՝gv?[3'Q"J):IvB1ő5q$W1JL-QiM~l5e_yâ?H8ҥ* ;;_I^g<R~̕&)/1]UސP7lb-CE[McdilhWnbs%tf>j+|hEjC9Q /?,%ԺC_JcK8`=K!o|Zd&*Zة/PWL n`X6З뱀$+ʟ){萛#a" Nf(z!E4T,r`1M/=fްа1'k:lb,m>4ٺj?Ŵ~GȋQ,H֧r!f \i=>[,j&55L)o}bU48N9V;]!j ? s<NKzTA&4p~~iEn~ǵWħ*-c=3%jMmh~QuJMoM%g<>ӫ+qa\:,/QOtLewNOkG>Q֞qb%~X5{kC:I쁯~940b& x'*%^WuxPReS.ufQ<9FZKo'R$RЅB?b o;ɞA;[ZyzhݘU:m].ϫw۬<.-3%M>P8H3ҌdkA )Ĭ432)tg!n+JkS~."6nt!1utj ha ܜ"̬B!J{'k]#-L=р dETL}2#nrr#A&Gu yQx idV+**bN"hEՋ,3ō` ^WodST9Խ~j=bQ&Oh\u4̏NOfTZ!2bS{VX)jެ{f(S{pE{ߊB1@&PQccd4la 'a3UN'kɃmc߅1~AXHKbfPQP3xb4%*~qmsR :fwO'lgNa'9 n&cJ .OJd,ժI 5zT>qv^QHYIo "io=㆙zЪ ߶V$dݷ 3ԘgOs3;&2e Jְ]i_ϊJFN=gpᶩE`<{!Êz԰ %>z? #˔>{`z6hFnb 4@\9xB8lkaAߤ>x KE$I[*:Ad1&kTHMN$O}2g 2%__U6䫲0,gu:qJ> |ucO$2 lWhR=hB|B22OAޜMUl;*4fU%{b4PݍGgѠ 9V2/{R*7Ce\7ao|STm)^9*n|4Jt >t|뿭<bD0@SoMplIill^[xdD9i0IWO!֒%NG\bY{~BZwoQK zސPڱG"MLӛ2a)KiCViHG,\+rr [w 0ơ\vq:Uť@a+DT6KzK δ&[>n)^qB.RP7 )+Ŀ6q!%NGשݱcIeA^J{QAuS/NŻpf8l'u&gƛπPu;Պ̦˻8TR55Nt+~ib^\l'1[`qc$ɊikFxKgkՌO۞{'8{I>v6J>x W {*(K;@ȳ{@dl2_=ΰGVi,]։7 CL4jN7_.^O9׿ Փ * K*^1^*sY1ufd&nsD%K7xkCl5VWSVBxZ>IBc3N8C_rG{H4Er-%ftEIO  jNmSZF0x!#r RvO[!?/熰~Ky"Y}pk'Iw\?qӽJZ2f@~y/?ܵZ'4W?;/i G=42%ϰһ~q1$J8یB7o#e^hpD΃"Wiy$ 7S֦b* RjӤG_)+s"n"_{:NEldDl I@nX^z~aIS--:qo9nsfC9nvIĄ1g  lw3N+ѵfu N'\e[ZBOr6J{ q"!ZGDh(Jog5(:%j2ّ$y]J b)榭n܇چ1BP~ #2gCiﱻJ|czR:zyQǀgW VVF|CNL*$51y6hJLؖ #Sx~Otuy)BF@ң9S}|Eg]R^yrl~sPi:[j^rsJVyL]uٱgj!=IqdsN4gZc ^-:. R )H< 9bx-@kQ yyP;!r=#ƄUOD32"N}j9ƴ3a/hOrDRaҚKeaJ9.z;dhkfQ)!]| _6_<#F6\jCP[H A*cYN}~,46Z,,m|_} 5>eB<9)s BSJ>Q zhsޚ_*ڈ8gg7dh>Cfu=jZWXm/_ N뾗"4uM)T5l1cEy˝Af:4J89"-ƴ"Pr+[`"YE/fU@hvjwŽ*FbDHQ#p2ړzɬcN7ٓK+F$.i}־ $<'۬(LDxv1N4߉MEmUrl\"ix58N7 2(ң7 EZ!mGxY:߮iZ|UhOR9H~1awJ/)\hX0Yqe]w4\ ,n(wIDGOxAØq9og9( 1_~0ҸҁEA&Ϫ~' O&7yLʜgZ= yHEidM :U+SPeL>; 8,jW@l,Qlc[f%h[Lb("MS֐s`C.Gy{2'¸)W[S73CJn=5\{ٵ$Z5B|BvQV;,nh71mrA,j? !o#bwMqpTVkԬBLH쨢qE![_e0#xJ4tyLj1PpU}=V޷ ;n 3׽;Oo uTIh{ G 9#?nbft7[cs-Y Z%?mk~@P;RQNx3O*g ct9{AтQס j0`+]%#Uu-1 }+eijܐE 5v7{PfU] W~E[(>cҟ^G0 X*ҟYN<+ '=յfe]YeE(*qp]5DիEIB{m>EWXlA+H_ ML[bA=L@~E{\6'6x"JGZ~m3@9nT$U":%V?@,^ZEVРR.m ?Y/x.KSlQ?tܒ@A6eP;V:Uw8QyagFcCو0 HVd;@}埣Ų#S Y@V)9 ^z %MʊjDղ=lZ ^9HWn?|\~577܄5UmGƈݟ 9{)iR'y7!y-`[ԜDy TL]gw}nb@ԆqC{~o{Х2:>US,'#!nh^h*6:FP*3Gp=@XM Emei3jwMpe@~MaV/>tGf9jClx2&Fh/\o Ƚ: ZVHeSK+4D׵N\Վ9 }wwDd8PeD6<iNX:e$TVYP`Rg2=^ I|^]6ώpIsk`DernMIKJTd'A^趔!WX]+Pis::>WVA9=E/#{?ܠvFK/vl_k*K1%Ru%bgB3??H&5d߼(|XAE5kҰ :^'T#3J*JG_R]qHksKT Ig=@"@'Ο&ݝΛYpΘỞ?VGRMĔe <= UO#Sfu剤G2SS)Y(2{ܑ )lp2MdNj4t%)ބawԛё?F"Թl/2%ͱA.+siQoʬMzdQqjVmXf$]5`-\X]Za3Vx 6MQ2PSF\ПuO cpEDMz9j:p+l_Qf½e5̚]C| Lhi' ߐGm;'كʎےќ|AxCIc;l軰i,Sk&UoUc&z#|aRE`ߟ/T/0^{DY&n$>J8FBH!OT5tNՃAz$1F# `(Rq^L^l 񂚜x%a6ũ @2tH A:@L슄pP[C'n19P>l@V:ѮV,}I髿HÀG. wCPZ C$UQma#wo:?X*̰l3PB~ v,S0lWJt`@n?DzFL/&5|8pBџB(f`v <. ,u 1b _cSP: 1Q S{d<'|kͶ|iׅ[M:_e ԧWօlBCY '1y?İrdSN` m]oj(J%X؞@aˁiD\j4bCi=%jpy(Q;VC+:Ӱxn`JBƗu!TahĦ*Ҿv'Ig'9Y%/ԧH޴qaBcrLߋMhpa[ep1$ʹ/8sŠݲ}4u #}Eׄ&2hA6xHW$bxW* 2!\@Wߗ*(}KS7;U.VDѪܥxl}$ѵՊF\)4 4~]7{鱝 ֣1J /p& ɵu7Oy܂ydkusЗBϊ4RRmWݖ_3[Zc=1'wqO O^w!q2D왯6Uk[0~pe1AB"ʅ'#+alIlwk'ݕ . Gs]ڛU~tTP'Zw)y4m}zĐ[Zr9|*Ob5sMSHRԼ@ƭ!MA/d(,ڱMvE0F>hd:).A~5i RORK l vЬ22[ؤ|}ytA_a(gL*d=Дbx(\H&=uб:w #pe#NLe'_M)@GnX8c48]ynp5D/9 ,=5IA5?=!e@rr2G`烟FcYFR̮.mؕ5Qȟ YE,o=;P6@7VtWtYIoIr9,D~ ݡ`0zwcPzL5\g9V cui*} cak*z@]WVtoi܂Dk…@ur0sPvb µ-ng6NsMLPm2JļOM]ʓGZu#qVb&b~5SO'%@o}jU}DGeWVԔwF*}F$&ymCn?1 9IPo@AQG+lid!"(ҧ1lW쥧nRvF| g6m 4W젉j1ӈbH\7N9O64ebH0˽(2>[PwzL NH}+ۖ[Z$ Ix!W nInhx/i3ʡ^,+]blb[nLR &MLf*a2*kϙËStw Q=xHT = 5>+}>S6V~%Y=yMC>`+W`U[[Nc`9MqHZ:l4D:5'P HTSKA 5+ "u 3 _oH5{}w`^DZ#>h:b)v[)@;Pi;:*۲-j\Ԁ唓LtѾ?lvByIx>U :JLLĴ[S:V@ M}M~RAJMNig0 ( nȘd*X>~ <B31i?^8=P#AlF_ P$ZU>xQ6i닰NMvz͐ak>Q2wDȮ@wwF{1COf K>癞h8%ǧ+t4H-H%"zo.b0ΐ< ㆳ{EMүm]t${BTKRMN*ÁavhcBwJBt:/-9Op ӖiE&K4Dn cBȪS:+U? ˮI C}MuT=%PJ+4:c%:`Ks;pʒDjBinq~wC -l1cbmp[`U+@8z!F_<װg3- B<;[S&E OF+b[Q@5]D?c'=4(PPp+ɗD/}ՌEln?}z삉(h^t4 CvxQE[Q6!,8~aDu-LQm{'=By.8qV_ޔ7p U݆<[FfK/YgQ_j!@sm6#QgQY8xD}6GMao?L4]gmWFO }p*YyS1r}6Lt.̑@R'k7S y| Pf!_1*R߲\/]f]qk='Gf>!5K]B`0?1S}pjw4cK6~,X$9""(Fqݮ!՚wѼ9i_9]+b\|58.5 ]vl_l #|` 27Ih>&0/- O}i18xŦձ kKt4k ݏEu\LRj@2r5|NhHhjC}*+f:up~ӡϐH! /CxhfO+t|zͫͫT'6pn9b 'u2HZ+|29NS 'o?-7|3UY8+5Fò,d#Gq4 M$}VRyveZv-SM#WXw]pԪ# aBpNԮuyXvޠU`x>bw|=1 vVm6=fq{Px ؈d$b9G@N5E3RUԖTxِQ>)F郴=3tzO *TCL.klڒu!'/q l[m4m_ 6`g29Y->DAu [i)~Q9Hy\b`(8̅:|eTsx Bi e'zkHٶN;u<;\ȿWV TB:nn2.\gUH8/0xzvT|cSMJɌP EZELR4]Mu|Cݽ^Iy]-/"E[e-W1z2倷 i#|̇wH?M \-nfd3rT?F.縁JhվƇe;m(S,جjQV (;@sRgfAj6қ(0dM]e PU X'1C PʬexT|ypoPc79! 3uZt#oMb]Z^Ţ6bϻ\0LSf-/ICI%HS<0 T,iW6ZLy,c(S4iGșIpĢ=Վ66|w:T9&H5věTK[/oRM{- _9A#vAn,7Lkt&, :3}B ~`gc?[B l?'tANBE@pæfĥ#9ruVt`n6&^QHPOq;r5|H]'/f3 5 z?0S[)j,WkiPWӶwI_0D+=fƳfbJ|bޖ}Nu,x  E6= DcQ`<^Fw+m&ϓ듆$4B>x5fQ4J08`(,5Dݟ8>Exk[fM1p+r7d?pj7k%ܒn.4$)[imlPSp@M?|H=ǦStWqfS 'Oi@(aB!`k0쯯*~m3R@E_p\#9>J7k Գ!~o 8v2=*=W_rڢF8@%YL/Jv,\]lݔ";Z1%g]%b e^>tQ :B-ե}!~ET4t1*0#´!\x7ժ',_9׽m6>i 90-vm#46 <\9p7wAM' w#W.i(dόa/H]cKǝVửHw?5v\ B® Nrnȩ.yhYK֭]gWtc^esȷimdRet/ <MA(NeTgdDQ)kL'i2w{a;w" 5Q8GT`O{yJ*cw :,R`ϵ+j TvXJRҠ1ūĚB?R.T|b`ܾXbcBu=.Ga{ Eʃ].8AG}86ʅ[#2(>Gm'+:{ x-3* E:QA=7Ǔ"St*D,"!9!HkoX%b2jH޹bV+T 7`'?crGi\hW^xᦧl3Ng;mxХZ[\Sqx G2W;lfc< =E+6 Z[ s~ZS7tk>AIQ2>YGn+?\"5;9cSc)x}6b 7:9'ѓ ]@Ia'BNS0UUGjr)B="SEu; vꋠ{J5;VM Q~_pCrQg AyW(t_;|=i Wf9[++nʛqy#|:-="`J[=])8g"tkh|\ >z:wM3"l}3FF5~im"9# Ҍ7ҥ|)|eRq *@Q`*^rrOt ^~%ށ%}GeVYUUJ|-N$%轼|MDD]efw2=MpVO ='l&dxuz.PbFە7}B0S|0 vʎ+PaU\Nm|o'.Ov먍 c#[HŰ?QJ>k#bB*- {@FK"9y, ~LQ',$7 M' 祾 uF ^e\곤m0%am5;T)+jN쳑 3Ksվ킄;g5[ٸh\ý`5\c,)_j hPHtZh8x-hJ_uEsM΀ 8kZ؝cW)4DZ?c 𹳹y}jo ăd]CѹIyڮ+00,kݨBCq|UWwЀGrU<T 5q`bZ sU.w\Udv \M)` N*Q!Lb1a^fM(`FKwFEls#tT49~K}#|h,H11NrTI`@ }(?y;ʾLgn@u* 0xOzqE-+Ro;`QɹQgOi79~?q3}B..1N|VbOfh)[ɻ*v#Gˇ 8nF HLDt:52V]3lrU0jԡl7I+q__c5.:FH N88;#)wak~ϳJD /*=^ ԫ8jLU  F.@Tf*Q)ϕK8%*uJ}S꥽"9D;ͥ$ԒrZ3,享ƃkJ(NkR{S LAt:\nU_)ܝ?-G2]\268N[D[#XJ*:J1=pl{:On"cu{u^cשQc@6 X*rF|6ǸW;W8-3<Jee$Y.w/cQ8:1U#UWj mҀ9lQm6-#5ӰRWp@yr>np\7j\vE@250ǥIR3%'Ֆ6FAT"vaϜ+ngZEs0W{̓CJ0<>Yozb7 U@+kua'ͭ˖dCw( &R){PIte YA)Ke\&^&7O}ow㠡=S:>䴀, )(:+):vJ"%Ha?Hy LnMY9Nk0q ߖyԟx?0AKCmM^C8Z bu=:ir,Z'D'ɽss`$ɯ ڂ;;*~bDvbT0Huz)n0U[Fq ~LBXʐ\ʝXVt5Suow^'ήM},ԥ2֫Q\Sn֟ H iwߩS2InE\p܍[ɀ>b 2̐EPm+B9 k 瑎|5Uz=iM9LD<j gz_9T-yTAp%ǿkccqtǸJT%ߪ`[EݔG&T/4+S+c :3'[WHz;CAa& ~0Y4 iUx ^E3`7r+%噥$^_sX>2]stcU+Mqܑṇf[LS@F] 3rYlɢ)638>p105y拾W=MGˆ|NXשOVzfDjfص#w җ'7zWQ[$X! |B.)zp>ٷA]LÛpj?ISPL8,&]cSt#$(ofN} `dxs(oC*կӬKH_O!P_-$gQZG `, 5Xe92u2q)N#t}9%P%EGYq r џv5f`+:C2%5̞k$Cc$lI#F\aϫ`NptQet} Ev \ /!5N|ub_ґ̴ #JX#f,wޝPFij9ϴsG~pT h!\Gdo,F9ŇJ#YbXy\nYR O0EېR'f\eWHށcÈ]rX7MJKwWL%Ь ƙ>З#5a OXDP{ss" ĬtfD:™ o.S20QyWͿ`]lZp8[%hp!)GɸOA)Skp:71q)ږb to<9MC>|V?ǚd\_Nۙ1 ~v;[|0M=5%'VM;=^ph}<6sC7LM / vg 5|,Njص8ՓjBZBeWG:VL*}zlv} Ov[OACz65(l.`b(\j֋v AwŬ|pc])V(/QD(_FVO^D^ID#Ɯh.[-q/Af NJ,m{亖D*Y$9'?I2ʧ ͋VJP(~oYvRa 8BPi6{e,XiUe7d½!1sF"9H&A|ܓ Gk-Z_w%E:Hj +.YsBVP%w!#yJuy$Xi 0{tATFzK댢:ƟFBaE?SBJX'A dِ,_9%>b!NJs7 3B\s @-/ͪF`H(Fq~qZi͕~eÛG{6:]tךZ&SBWbGB dU 䚂4[~[ѣ7+L0-|@;>7= wc-E[ԓIHG?!͍Gۺ 5@p)0mng'|T{VhIG!\BgCdݖS9l O0qT8zіIW<#ܲ1<ʗP]aOd(AIMV-u)h]~L"\s{=h^MKv'偾_+=_yN''wy"GnZwB&1‰'@T\q ׈sj JⳭ{"Z'*b4ϪC G}B ˊ_+qY҃7@[-d$gvSh HQ`?xT0Cvuع|Q'q W/s3bgkJozlv@!q pF1}Xx@9 VMrB"? TcȘ7z\=3vr-{cl k}'v(䉦89>)hkqJ13ig/zꍛìun1^' 9͵-qvH់`T}/:g1{& i@z@gφp (}687N|mR,-et?Y6|>P8]`g'^B=αBp1`l<8!nQc{`'|a7̫fagGb] œG "9㘻=?u"?u:'/m]uט\*T;"cLU A㎨thتpg1K 8 *e*uTaTLͽވ Re朠hōZa $W9tF xAmfȎqC(Yb PR3Yyt)Y-Nau6'r6{Ilwzŝy̟|xdx$EC耇e `gXUC]>uNg/+eih&j樉̀?<|ﮰZL5I< ۣ' ~+0Ka=_ 5] ޙ\ȢmsrGy q 3.$lx>U?|ॗdzy;̷ԷL|!XKa6Ӣ LVtbgQ"TW%g(?$GD<͡3&vKIy{g"W@A~|OBQ%# Yl'5`)Z݄@)_{µVϔ~%[U! 6Uؒk p%ʋ $$PbRŶnP O`S 4k2lgKtKSkN NU-23=HQ$e|x :kXWQ^]Yip؈Tc_ }a}кƀڭP!܉a&'Xm V> ͱa֑BE!pq`3[%%!eh[wB*r~aW[gdmڦ$YGe~q1‹y<#jơ%Џ 1P P+GMa>ܵ .ս U9v[_ʋiQ"q'2Xȍ2oͣqⶥ5= c=mP|ŧgXb#p aAU1}H$8l2gBEгͼbbmㄟU7k%Cڵ*eW1q9jspj2%!X:3 TM;nB};wVwD;⮍,q1yuDѮb -w\@]xv>GJ"Yڌ&d-XF#FdxvF,WM|RPVNS7^d|RM.s *Ђ:ۙb?װ@x&|cּ۩Qw8 |WkY6EdCbsa VcV,)uMqV4'Rmd{F7+ƭ?)@D]\*pi F<"n2%Kp؅^!]hu΂X;AOcJCR;:P3$A'nA= =_z{KpOE/EeMr*~{{Mm<#*P%Z h謨lM6L[yr~ۤRÁko;Ge+2:J$7r3E+ 5N_i;{$jkVYjk`hHL ?7Afe2 Ybqqz0c0"@х<`?G:T}. \|9C b-$jsXOM"c !ʰG"hv7݈R{L7$mX='Td%4Lq 07Ӓl٢FQjDrntuF?5h=eu|O*pϥt!ޑLcma]ddco`J/1n:pnJuScNd4pY7N WʣVU_jC2'`|M"=;H9|rbf c $Z; o]'%(ZWo)4ژ r6Ul9J  s߀=%kZSzB;Mf's:7Zt+S`£Ms=vdso*PNJFhUO,m'0$݁Έ U%+Xp2:ku Z.ʦ<.懴;y|9ZCR$Y8kkЗdŜ)#X~- hW*;UNf |6 9-ffLee{aVgP$C%X^[.g9a:Fsb?L 00r -FnR*.d9E g#<R?)5vdĬMB<;uyZP2h f[O𴈖!^QtkG0 &|* 7ׂo5^Es҂*nbG'R߆xj[KT[FE_u^W2*]?1a.ޘgOOW%O;!ǟ3p="K.ycJHcǥthO.FDGuO$;jaj_#Ix9F*a21׏ P3ϪͣBh57So*H(wę;! rea]ٽ!a9sbZo]aE4qj?G,[Ց`B#j$p0fb4Er On2$_= +'M6 b4{'1K !N& ؙcCtlgô )!si\BlaK7+j@e:3I+Bd/ 5SQLiv)^Tfo8<:S퉞V4赾V{|8[݁&.tc]Y7jDCV51e6סG;ƓaHZPdsVkF9n(ݝzUYG>$!_gA qgϏ"Cjgk@τhS%P9c*gJ XoMz]sf$S)F=Mu'{Iߍ W.m1GsQjcV{+Fak$?ν)UyK!CRvi`JQ~ 5A)A{ibL/Gvt%gŴslZ13W?5q3HAΚɾ#kX#8a[Pf.\(S*p'؜ N kc3G!O zGO<t*.dwB]PSRy'N{jv|35I! րxej\iQVs K//ͮ4OQGVi-Vwвmٙ%;mOllXjP&%֏Xn9X̠4,U eY"쟞 rl+PU<đKQA@wZU]il'SDMVpҚs%]EPcn=m,aK1윣MDM:شZ*tdiCpP뭞_0]ev̭ȩE3qAKAjXIA_{ 44D, ?ftJoiWp\)v^'Oo>2}r#:k5|Gg4=x.Z>V_YhоXhq[Oux|y!6=IB #!_?L_ ` 3t%5UJ=[čBZp4spFD%G,ˣI~57'!Ӯ J0, ¯UjŤf4yD]b1 HF2.٤Î|ܰ}^ή hZˤ7 "|k4%c!1M!gx23 oI~j VB̘7|mX%4|A:ѕ;,]y ,}ߕtb#)P;&QwXt^6B .J-/5VI~2oc/\A?ϝ}2! M^z߀j,)HSdXF3ByrzOTLRk jЙb⭌5$ݏA^JGf]Zfy)1QXcG'$y5܌5CJ`+)x|NHtr#9kr?ުp~CE"8R-ބ![Q0׉n-CJc]s: #Dy\gv]j#Iti |Ln@Y\q轈@zs Iv=O(QKe!"Ϥ$1ی*= ˹ 9c)œc@O=JT5+w.lL &nU*3Byr,NFtɏ#*Y~}(+60*<љz{ĸh fI݆o]kP̯N+fޛRyA_ x-ɯxP9"ycȏs+IQQ-ݢWBY:njTr{ ,R @L9VMJu\L2 AngJKOR" fOn<^۟6#Cӻ$NZ,2:WBܤO bu1RA62*nVA-,&Ԅ̨(pb x& .rۘ[HI]l  Ў!!Y xΐ?wG@kE,5PP&~^8Qu>.ᡡ7w_a4cӪ ;GhJ%ֺTӸyjCz/dt{b;f^5 r;f!"FVZ(uQo;hNl}݈#Ѻ]e|6wiШQjeE)vwi ΠД=j5Ï}X&#&0vp_YEt n:Ϩء=ɠ :W S07zBCφ:V_@0q hn]][Dd t-^@OF:7I|s^z 0z?9r#̀|WT"Zk/Q>4k oKuceagp |n~&RZ(-Tcy uq@W ܋5$DԪv]&$:ϽɚD5H;[\q Rd JUj?1H}pd#(Ꮤ _C2 䜁]IֻI?}wjyCo?z0lIMyȫ5})ʰ_FO0r6a&^t<^Z5̣>&EB`J/$]vз+[$Tkg3J3cuUϮF E7me߯㊔Bf3Uρw"-ve) ;^x֟T=1I(R&f p֬Gm%ty78uC-"fC/oUOD p2 AW;\k?fkoqf 7O`U=N߷\C+ }_ )U4gۺNID͛^Ȯ !ba *R ̢턜W{Oh4'{qwrzUxBXԼ0ܔH=ʖ H6,iv9EشTիQ Rw5FV*2lsrv.1)83K@t9v%!UDhA.rk#ko9}N[;%񽍵79DREeW@SHMN]]r M,63%JQgOIi)ldMf d\ӥLRZ;_ ARBT,;FJ"uB&>Ng9vAkU^lAGz/aU^H0gUc[Zk_{p `l*>8(," f uh) =aڥyD2BGu<װG(l8mǯj\ \A ebsڈ3I%MuOISk@xQww$eၽnɅbj1IM颔cj7;q i)8_l;/;YBSXI&=(}NUnMFQ}0Ki1|\1^ 313e%5+J L@/xK-(p6Z׭|y9atl9Ey'rݰ&G >Er. 3/ZD{@I"Zv-:m{cg&=X<7im#*I>2,$nc}܃Ax> j l8G~fu(ɶ!WR,Ĺ:^s:kF:zc=H6tPMi6j\4_ozfynЋNLe}Vljfq UkY3's4B@\+$7L eБdd@c=؃zR\kU+N Mz2~i ^s\}W-=`jJKkG XW Uuxނ82# ^y |Z?͏Jcm$հ8&7΃.=IxTP]fN5!y _run+"ږf0ELReۊf(bcPW"M`-SQwȆd0ySF<џ)(e})}:6sհ'S+ )ѓA-b̧F~adD #;8Uw"P'A]Z7 E #h)>ݖwBNL9 `S8fSWD#0tNFWE.CE fScoh< 0Zr F5LfI"rm+JN$e6Q+U*Z,Ô㙙 )拼wURtX<@!$[G)\N&enL:wNzz)X'`A^,z: 9w,Ӛ|Ng%&P Rr(kSL†20}XK~5EÅ0'}c/hCTp,f"{l2'Ӈ23NbcL/- \SǾ :],CL3 kFE˶_$+*ʍ؈zR%>$z mcY=6%I}#se!~JЦץ.Kge2)ƴt=3 E"?5#22kH7CT0"Fus3-svP~%{4r\uoO*bU:HF{ɪXH#n.t)m(%iPNEv:cUeY6R)q7n Z'zB+@%?o/L4{8{ ]VGqа(E\o[K\^/8"BxWz_ YX H3blm oHZkޫ/;("ܬB9MQ9G2w`ٱO:L] RQ=efT8X^ah2 Xw3d$QQ~{+8cNN  <&SEܩ*]A]M R>B9{Q_ihJQQAcLՍڷW>z f, ;{T[TUr%_J~Z~4\_[ $$ʴ,CۙԢL~c[pypC7cumK#Am'2I[FbjׇύUùD{yZeH>-(Fe|0K(3]\; LcJV~(#-u/L2#-gꥁZ{5 WG0.%9 ^@`Qhg-E"SBaMdO&iBz׫ڮ@`IUcF|iM&6!žpCUAT9ދYXIojս[\Uѯrw|Tms1n%9O0vREu,tyd9@W rXvj7Ks`%Kӧk-RM1d L=c ǝM_f$3 MB+]+0 Չ80"s:(S[cQp/.!|Dܵ*Qufv9qpo\OfXqdʷƤ?c0' 0dIw,\?Uܰ\;nR\ ghy*%Kȑo=7;n߀0)NUX$^ҍYJ|XX`k{E2(2>*i:,?9[;1;c \pWj2]K j2<2 cR=rDMBt 3*HgA9]xW mZ,8/\y>fxkx TWfdἾIm&>ЏLoUⳐs LB5,)NhV4ϓu2H$>EΙDelIs$ ܻJ36>B/TU!(dadS w_XȻZI$Acf`wB$4f"7s8;6[ٹ0`{f؍%ܯy5 Qr*\3 #,3ƱnzT^}ٖ hE5yuTY R$Hz{{䁮1Mw8>U{M1޴brN6g]@bB QMzAd0!Jϛ8INZo:NFYyu؊g5!f 5-h"%]9-UEڣ":!=^RxkWx6-!}"e*! Si% 5k’{ &$'Z{yG3BzGҐ.v}w1}d QweLuDneL8><=8A 篊5bv2QxKZFoВɞՔy)2ɳ1N7-qUƍЇ{O2Kr3 6TR?QE[dd]N J_hA]%짊Ԯ.G6zxCЎl'C%'QRVw`ZXn#Mu@Nr幋 Fj7ZL8~N=1ư&;1"yc{|~OotYY7ՊU| ѐ&#k^q|ͿlJn2uoS:[:FSReȘ%`VeƮ^ !g0V8kRtf/%zfDmvÝ-ڣOJDd٨8蒙dNC^aCXc&eiP4 sM"@8/,%y\=ᝐVhMĮJT^:}}]#v,[10U3nw}GJDI'@cK "hGP uMzTV)|{^>4fJen5r.:Qka(sxج0(aHxVx:1}~_ٕU,|8T{1yh}=fpוw"#Z& 2dr8;1_OOb))֊Γr_s@xwɢkތQpAN,Xmv85,Iq3\rdk#Ysߩ S9|ZOsTxA*$SKw8Tj .#!˳[o`]ɪR~n(CgHc}qk(A'HI'K•99 '܊s^NqЋýU9U!o<]6 Ծ g R_FnIIOɯY6R=ՠ~LStDHJ xw5PS{N-|rN KҹdeO+<"di"],^.fI:MKS {܅NP !tWrHsw{F@-V?:'cEpɰ^&?n .z1V5pRo*R9ч:UX <=ӝі:f'/ۯbZMj(f O)J aeќm/ )2>^0S ER?ɡGkI6d_?$6aWv~"א8J'w H(i2=}JРW]V sE,"Q$l+`D_# -0(-ÊM/evywvM;20vÕ*9fhzE:.$Zl\. 0 ѝ'90TQljE(y5IhG&]dw_ǏGjԁ"0|\׶`MR<Π3S8-08L+lE*O2]˰T`8fvjC]DNzLl`K5B꿋Vͦ녫0jq-]*x'|K+wM;º27dW=WRbƊ%1p'rh 0;ZIr+"U [9N"@͔Ă-0aREҙ;l_ Cs?e^$Uzd=fLk@ZQh5vu2f{CYKfӀ"iF4U!lyKŸ*ad+2vfy@m?Lbp޹EqS(?B,x_/3e,`UuY!0wVVրAͶ 65!re,!hzֵvWHl=zzoc3"u3)|ŧI+ rV)YsEQr~O5NJNvVO 9ɢfP 7%gǦ[1[=B,y>r3Fp-aޠoyv|9LWvpc]]i@bkah|EpAsDPH&Q^VTp"'\΀66tgkngQ*5ff`@f_rv>:f~hy2)~Oa+Nly}3%`$ b+ Z{izӛz^ Ï0H,u jz 6g& N0?[&nuIľm4dEp#%14{]Ap!S Hjou*D{,g$r(2]m{<۫g@Cƍo:tx-1w{jnY}6e ;d?Ŀ@xBqp]JT7M*ү$wKڤKk>2 =jgLwD-5{<0I<#v3 iSr7 4rߖˋݛ`X1*DވW^Jcl(;:*/Dm#~ +&m›gUMѧy/ "?MűgUps&86 8ƓueN([3KP$?&W(Rvp6 gZpT;#n>Lgg {g4p9XuTUUvYhG ۦ#u Sl(&aBS9d|%CX^ϔ]TC@` mZPG5W0dCT?߿8H(VZ\6fPA-FraE;Ֆ& ɺWxBm`_}e|('H} !9uԺ8a'=ߨ]?-^Q'k(_uyҭ-Y?eG#4KPp l7,6 F.9om90۷k]uZ~1?=(&5!KQݽ,@Ek65zN?{kHܐ"X\ ԤEK-YQ۟fLA @k*gw,qh36vgZ^촳 6 ESOUmeY| {wËQ  }zvXadq#r ݒ?%dkO&4`(R:zuh y8ĉGdYAc:X)5]Fʿ/TXz_^J=~NU&e:Z~`'fؽ'!F$*;`'j! ""H:^4Rٗ\?V? p q.vƽ0Hk o 6s]?ɴXpkjY*:+(1 l77T5ؼj#h^$ 6 [ci.<2?%`iYϟFׂ 4xIdo6jtn7 ex\nPC436wvz&R!h.J@SiWݜ<͟B-*S:[5|˰ pgU!r4M!zh?6 =WR_1-ento,ag*Wك@C1 3sCGcOESx̦2c#١,/XSYzҥpE$Sn-?XkzڜG<V4yv"4#'s( hHYe_:Ц^hꑪՅ~S"6ݱuĘOv|Ch 4#x<5^y[AR@?Q@n $0zeeaE7aWAЭ '+g([ZkN{6 Td* =M_!nD)$B*vA:Hl@?C'I#c s߳'L@>6VM8xfw\FrSa Dato=?=K!ծ}H-9 &~IDTԩH|%5W=aa4b /?Jz^1l. ,Sq/mX~_GƣL+ڹ@l-v~K>aǦFh8f"whgS66ERcGR=i=؀jfz$a溮I# ٟd0LJ"|1ĩJc嗱3^|Hiy>|Vt #Pi$$N ڋ@/ȯe2k& i&=bguSǿ V,Du)yA,iՠI,D\< .PСhD,:9"G@ZQE} gWJl -%\0:RC壍W񚻐qb}%9~:!|M-& ث'w4M!W'}(/UrA.,KMLD?'sflŎxpt>Z=(]ռ/u-E d]j2 2{ ocL<8,72GqN݅]ᜪ*O湆-f-$&!\M<AjLRܦ=vIiyh2D϶o*nx:×WjQVba DX/yb? z8ni3~oz&MM5qq5rzqcxٝNZ#vFQ +hV8CʜsMR_ˣwF.o/et6w; 1JkĄ ъ-;@jPDT5;[}Z1'@CpcIqMo 5FB́Y-̠*sԄ(!:Ju,NuD|}qtD/Nc )QFw4/mo`p߅+Tnj6hMmqn:d u1 ,+F(Z2^Ie'MʽuZ+TX< ժjpr3{B,cT rpF0 ܌f,4|2q*t#bf/WFӾ GMAxUW@j|NBpJ]a )W/TnIQIHmSjkNDxAyȐ0ɫ&G6R19^xDH qi8#Ջ10y2q3˛t9L&X0?+)P-HM&iSp>Qc=z!iSiX:*󸧒yN8?!jg.vWF0fnBP5R {_^zY.*`EgS/f~?-io^A?ұwO3I`H/ HT?rVl4Щ`/ݪ[xs͎= OJÊ-#*W,e,vtmцum5fN FYphVF2 ]z晃Vm*jrC͗ +]"[Sr(^ߏ8.͊p>49\#hZ-z`b.E<).)fV]#7fڕ/_6} cӦc - JϸIqMPr`Ƣv?7+wzwϒͬ⿳N]Z\8_%&D`ג=NqEit"9f1=lɓo_ATBy>Khi/&,AӜJ.xnH6Dx [ҡMc 7Xk4&rz{VLَ 1AZV(XBPCBWDBуɑJlACdw}Ů{}SaM9R$YPm)O k3v7/A7u. Sry3l 涇}ƥgpu4yӑ0sl_T!ŹDV%Ɵ\׋Ś$,dLY0ABEq˸s5m8J>v<^yiV\ VHgH"(D!^@+n&/mnGQE,1:`-iRۊ}5sQ9 s<`x.v)YPG<$5[9%!^OVtF %%=Oꒋ,Α<;-3Ay[nTm-/tyKBPᚵ>I Z)`vƛ_]y֤ D/H,CI9IɌc~cn)E&RՑ'*?s !ƹI}չzedP: E7k#?0̎ÄVccPRX&;mlH& J;rN^U& BITީʚ3]-Or7 nꡍjqT d>ei[1=1">X_Zy䜤Zar? 1ޢP5[+`VJnɴЇ$?9ƘL9Ӧ0Q//dz6fUҬ{-H/P9H֩Z$|IFoWa$h5)&o D$B[jבcS 8'.cQ7OUy%Jڦʛ.Q3J9Z4Bߥ}I(\t E?)X'\(? }.}n!Xݎs멘d^X˜ 54L1KX+ u-|f \g٠7d`%Pz̹؎4RLH 'a$I˳v0w(R2~W)0hnyO6N]ãbW7W7N>ן=I}JyNTAI|LkvW9aɣfc@ʄJ.'|v7{DnVx;ɒEı eȢΑ75͓C:Haru}JKoQ;4-vo'tWl 2ijANRC'ΥŊ#"GYb6(߷UGMR-od1'j"v kX6IxP& <9&;(((W\ШDwr^|3uhf7/z#A?fg tq8]Ky\7̷MJ>wtC LT; zB=exGɕ?bF0縧}TWc3iҿwsƌjz^(m@'=?{/).3<쟷oo)`Nz8/MX7ɑd'܌dN =H aDb?Z< yGz>4vUt+`\f'd$N%W"Ę4H*0ԑS8p]ڡ߿Љ~:PmM;9pQ(2i#MB$: k吂'ŹV^:9S՚H#mM uy]HYpS?˺_g('(·#sm:k{ }WT.޲.zOήW1#(&]mtd1~|z&Pj3G3nt{Q2QOnm=:?&+`x.d2836DXfQƹ.Oay2O/l[ڠ}gㄤHy`yNĦ`drUڊn4)%$K-@ Iz$M7tiJ$Ы >o~nK%磬0?zڒp|n,CBO19QDI.Y˕/ٙbGl潍kI~N:+JC􌏑0]F6ROQ8T֥bCZ[bYF𳹜%P,KlQ<nBompR '9J.wC+c90tJ28-KpNִmpc@4J-B*200XsF )+O3`_f/"u VDr@0uB7i'JX{\}c;9՟,iksyDzWuӿ{TՠAK$ 5:=^s$Žgl U5u u{%+b_b,V2kXa#7q]E吜wN[MU ɒx̔~w*% t\xa%)A9 ߓSwõGk9a^憶РJT5 UnPhXIWMtƛ]ڛ{ ZMR"7k{2o`x 4t+v8 0p25v2I SW@QڥhҢV@i1*;Q睚M#TQ~?MOp Y',C3~ D 9 k-*՚6,oka-tܴ0e`KK ="fb0]$8n| "KҶfĹ6 j0&ڻ?uͪ+y;rcU3imȴ=パ;򾂋p kSoѨb5ik~#bw2 / #I yNhA }>0kYA|.X|&<t2@ "2oD@oGA;o[~ rG+:'.%5em%Awךz/kЈ7ohD. F 8qK/q$}Pݍ<(e٧1 bd캍伛fOĵHjkۀB-^b[ )r3iD,=.Pjt'4`,̧z,SU ?PO\#5fjsjWy*,qQM|%6o⯌>5Yph\ViUټJvFOSEg!e rqo BQM2Q4j/lh .Nkm!(2N_g a΃_as?C`[8]7c5_kغ #Qهt1yJx*Q9*S)N3}xo! ^dc`}덷7(tWz:p}(+OR9 x,tn'x3Jug<@2ش[֗)PjǓV~;#9aAY[~wcdgC._+/ Slg,I%{3͘aљl1p4֘jý7W0(33v)6r}da\ 8/kyLx݁ԩ7[dq "P-P1)[AM)`7j=?dzXrW~&r~ S\("k"LMF{Kѯ~RᅥGw$&N sZ*5Wˎr6QmY%'h05vt%^rEe>fVDQhSg;kJYP~@tQ*nPd߂#T'l\{f~۟} v@I gr`VG'aXM*g˽(iE#eGy<ܬ]uCF3r8!5?%]i%s^G%8~bَj`ƚZ-8da'K(-$h\. Y!J 9rƞV%r m)P-5bK!CgOfH/7j>*/ȁF^CD.9\"G<,1<*` inC)#@<ZyD{ob ,—I7 \Cw.i.4A#Ԅ/2DhUёNV0:PKA,CVX<%S@BTࢨE 遛wg<*sywX-Rye\(Yh;"D,WjGjso}dzt`S0쯕̚7 cA_; ތ}٨Ajneײ.1n3P@Kl3NUh&:y)\56̪oms)Y~~$SQ5csBN\AIn!BfTRcJ|az`F 56ERy胦={sCo.6?O Oю.6a Pv\ZrIAl?Dޢew<ҿ ϽTeLk:^@$L@EXB d=S,9hjw\$Ey35dfPhãe<9ĚIs;7<g4 2r -,xeJhll~TfV SCr崔| iJ9ɟwi3/}{%T?$g3>8$Y}\~I!}5"'&,UNq Lslܦo Qz_jTaE&[&Ÿ`o8i5Z qH Xu}345Ysh XUlץ(fLQ +(FsͶi >/P M:f KW<6,HOC߳Bb˔61nZazo umԑ e-tPKУ|,^K{DeؑÌxAI,'@NRY |山`7j`^ڬhx:]o|h@v2N*SXǯ {Lx.g $4BJ yن))H.=/« IRJЙ*SƆ`2c_Mdk=[]14a{R1胟`cq   ^4&$p57gЁhǛ%FM 9ȍiKa~GNQ;{{5qt`}obzE>'t2 <|8η8HUi@'[U(z*2ڤs@*q8roHiYYf6+ {w[Ծܗ18 G]}Cjڨ*g}'ݠl8Ɍ|dж;ۑ)n:uv ]&x*ZzeÕ vڇ:pd6Q[p8S:lRKEBD .n.|HVg5I8y:O 6sԝػ8[G| A:Bb0 x3@hmX?rߌyEqR;~7ǃDN#z@#'_<~渨f3SlG1x0aپ}IpD$s{K!;E"کe`66($ʦM(\N<\\vp,(GNjs?GBe$5|~mp|QJ'_)${y[= +ed QS&Yl@yj/jQݷ)B4~" /Z7Mxo0B-ʊƔ)~:P=:ıEdZ z7X ^6뷳jRyLGt|Ъ*\e$y@٧ek#`5)<}0{eZ3#r'uck^ ds`SMhJ]6wXץS>Z1ng\m1"4<`@ZoN$W/"$lޒO/D]0֙QOϱ20H/T|p(VmCc1*ĝO46@Y FF~TI*!(H"#lX 췛^9BpD>Z\c1S 흾0q,۸Сq2pXHq*o]KC9 Aͱ!s1SuY؃&NI9Q"&8R[pR}rLiA 84:AD)qp=ܶݹM&-h^s-2XB%ҤVXr\ix82k1$(4dW`Fez^z`,p5K  dR a2Lv=GV1&kS#0#aB:plc2m2=)ZÖ́];׸D5[5VKYB4W|X僕.SV;1,,2@xS#,,Hp$6UQޙ1{M.NxֻB1` !/T=q120r䆯QRIm+%e".5˔ cv$ZhۡHcB!܈7neEH+~E)fhiXPt~6t_t^bU$- %<\vy8tks'Zւ)6Lff8,g]{],Dӗy銌ozmc:(㛆(R 헲ymEճD47y"^*1@8 3Q,wo̟QL#YτBVFNpG|B_ЊDC <$?L64w43 lu;%%HZɘ=dĒ @to'0_{ܢdkTac"g2 uȀBK7,-xu0ia]ܥE‹\B%?Fnf MBlR0|a E5X[G/P@ \X\;Ϯ q׸ GEC6aR|Z>wcg1pщo3'mvW@H=XBP [z4~`P'fb|Sc*"]0-{v7jot9P;v8C[v#" n ~kdv_qo7'^/@0תSe*4눏COHcZco~hFa#+pԈ׭אBp#X I(6]`I6 >SEr[ ſ$P!>=I pF|OH ls\a&;BM;&h5 eu71"@##k@:c<9BaLB+znHŠywByX 7."nH[O_QǰQ"(!u0=;u>:@+_$z0;\gA,~ =d2fĸEN/7K:.Ӆ=h4yL@BRA"4 hW4rqv'hƹrr g:~UR2MdLܺJ̹زkJa)T_xC"e$4S7=r AD7#XlH3կW;QI4v5 C慨mǭun).rflXFC)&vY[r&Y r94f}n\ 13;֘2 6dCg$" !ˎUK{Ғbj=I`ofwO Xgo I`mFe-_gYG9 :+ri9Y^u+UfwCWlęuI)qܥˢ2PtyKȡ^2i:8&6 8#dv5V)݊s27%69I%+H<>v{ɕiVpX+[W9#G'3K Ҋ%"2wzYzfiqLcl?msŮ= +sLO'>9ޠohdGƗ`C؀ʱP;4?RSI`A'۾c#tWwZi.i},zߞT =A/@l7Ζ b)!1 VF$ J$ y #jiXooB,t x4H'8߲ |о˘͒h YPkbCTh_܊Cam@۞3{^BCԓ='\jYWu}3xwdr 4@N.vv=+EK[pt4'ӝߡBvxJ6|K= ?%o25W#.CnUUQEދ=9:B jz?C4>ݛ\-]))R,~> NߺUm\5U- <4 >4M&ylLM5kbٖ@Әz&@ūMe=H~ #iq8Z6| '!|H]DgTTnQry1K #6@WAf"8;b6y\)g%0JGVUKn {; ]8+C#h&c V>f6E,ƀ\/^&^UKrT[:ٲErC:߷ l(h[.GfQ;,хS?h%. \_C@+*J]?q&9Wk )hd6?Čq[Re~R.Z|d&Ѱ'.KפF:&BՕ{Vb>TIm2ҍu虒0{u2W g#-h7 `eO &]@&gp Cb#4=*@}KEs*U!-Jk@>A fJ"Au-Yiq"fߣڙ,D̩,5 'UnC,6qdeV8g?? bm#|)v\9txLz™*4[m1~BIv_&'㑧xjGT(49| 1> m.Evj !ZcvʧDmv<)?hȅpEv|+5 V.g`_D^H>Ce]?3IZ{xwͿDX°b=G:Blaȸe(,^K_xtkBP|(_缱Uv&̴Sr M̗:ld,`a ּKiK6:%اJՁ h?9 TPN_C 5 x7 6)x֍Vy/0<#ֽJ(8p>K@5s޻GYXmo"qrɹít="jKBQuyXNvpAXc{;KI mg#@) H!pѠk ?E&STanb| 7!@$Nf\[S@15/"/]0a>Wacs3*}A h@M[f*ӋԕfW^pCz-C1ಡ()dP]fmzaS+zQ ӈ}-HKKH%x*r-bj#0RFN V[^t-E45l¡_ w) uDV&ʏ9VOhh[e5|܅lSk <>vcpn@- jə=E Q/`FL(si#^ZH\O>WAV  MЭҳ2?!FOnfe- D,MYk7dLŨeQu? v9& r~Cq<h]_~jgYY=B٢oJ fp2MHi ppQ N!PW_U&%J |)p'68ʏ.ť@z8Ɓҫ|᧘YvzīZBcNYa⨥}R-(b$8|i_b.xK\EV}ٲ܂`RA>& f5Zvbep ^]<.#8r{E[/lbJB D?0{akz憵>px-u1z~A{R;_7y.|k>wW8x?0aWܹCaT[5Z rn;yfj'_Ah2 ڗs 2n]ME]vY?M)CCpS.Xs <Quwa@ (xIVkc_,ē;p (}OLkG b*{*uPǩ v%|'b|b/m2d5zL Ipb>T2 mNEe~KY!m8;~zY'3D?ktP QC3\VG2d-"tת- nT,1BlGzlYcqzHojPPcPZwR9h hc+9U 0y8yւ0NO0k)AkMN|BH^F9ޡNjnj#]U QHWhElfmV+~(l1OA>ww4wg׫t5**[W?NСMBAxNev~LuQK!ci/A ; ? mlmt,\$*Vܛmpث|+zܗ[[ Br,Zѳ˚Iw> /pч_(ғ,$A9=bbUN5Ȼ\J-pJsS< V6Nm{oy/U\ʻ?V0#7!_, J7{^3H~0h}դWnD 37,⃴R#p`̵NMDj*h^% դ0O%`&L |&ʱMzk,v8ћThwH&1'{ -֗:OaJ)>ѴtSǐ? C+:RdLPddQߡfUKȋkT81o׺ =;a3.p5ڋsƬkN`d1EDrl,/UK.+(aZ${f;{"rb'!ݸ VW;=e/Q_x#&3YH+@LUZ{ce  i 5$v |zi FXAe r =kZno$C-=MѶFdrފ:d,6{zo/3tljQ_D7z e$ 8,0EZ m Lu'l̾"EfԖf{kw `$~G!ݹ_̚`ܮlzs|RZBXkƶם kБv}U2di5òu\܁wrDߓejuTY=M޳$<ްYsf7őf<^/C*ᮌLi+i^],'Q%P"2B/T]'R4)!AOd)OEø큕 TuV>^^djTC]wnȷhޙ.4t{Z"CEon|?$cA{x&!k"=Z\X,8"3U'LI-A_v wrE,HJ{DZHQ@g#!HZdT5O-/}-IW; s"P$LVmՈL0`J\M)%o8IFh>5ib6xL3kVp|ײv1+A,"GH.sVtyRjD8|f nsΑ% > '}DZ96$&)1t>w܀yT7:qɡ=+rSo\|^SF#oQmb6jWt䌽nkυ׳[FXO~zbmz`Pox|PRHI`(#K(Mt󑻁8<=Ehϭa~7GL6B, 8w5i;(gT f(t(e򋍽P8E![\rt幐k(Y!{eUN3k2^;u|o[̋;/#dPsxZ#5OPH厳<$` iBg(I0GOF?2۫RL!wg695~p ۪x{C3ifх Ta& ]B< =p<ٱ.tY[>渀¥0ڍ١qձ 3%*wӶ\87fnPTZc$ژ̶-‹j֎5S >;`2$ S] b}yS];^Qȩ># Kl͔Ncj|+nBDޡĻ*?<,s@#B"MW^}, ${"CF"]@- {r58&Q sdx&>թ?s$@:Md86Ǹ?(Yلz^gjz9Mm&X̲KKbUDyդ`n)0Y W1v~z3#34x !%2L*qp <651hѺSp )"".gz<}5A66hkӖ*YfY|T^u}M ʛq(t 6T\F ~>oR#v1B4n,tGSC9AnzH L$y `LezܿN|FM'r(Y-MNk|xL,Zvba_Ȱ<,_&5%KK +A F-aIrV&Tz-CyKV]'0;h8ND"Qb9-mi2SVz;,iLGEwPvic~ `ꚥ(ga::,!l}H@;y\w$^_0lGi`on!#ﶹ5nɫe0EEɰ1$06fj$ uh5-JSw Pdډ'44MxŸVE+:˖(]:5MḖgv<|R8wJcE<G)OXb?0.ǟ_ uWrljD尺Y烂֞?ާnɔ$€ĖTI簦091#h<@=d(; N鵭pGWK%Va!#Y2>2!s]|~"&_v?zYȒ&23Ѩ_i mz5B^x*&|0ז`9Je -˂.͕uU`8UGy~SRV7#g] Z.?`0nPl'[k}8.}.Zq]_}A˜U'W.vJ{؋fQؾ莺mC 09X+sjYxAէDift-0\,s'g"u_:}@l6Qw6Vi\:O%蝹@Z#1o2"]xErXOi/,ICAXII@  Ҙh.sʎE y dQ 5I7B# 9utZ@l\#D+&U+"&2Quz{HKag'BǙ(, cڳg @KY-;cYQ>Tc9p^>ŏKK /aܚy Xh PU]ɚ.ݵs|a+e߸qg,ͬ@="la!6guڳI.K4j1ew.1 C?1*gf©Exk%Krяxfu7R/cN}:u2"(DqunQug_^F7350mJ[ 9g![ĮJl625gjc҄ێɓ} iϊWrxS -Fٶ`xNMa̐X%ж* 2 A\Q7;Uk`>aXcj2.y*ڦ[Z֮$_]1JT&nԔX9 jܾsl9+5Bbwck[EVn&V3p\$XGR"t\\}u>-:|Ȁi/3k1E?u@˩03 #"#5Ft+tXMѳ^mhq҅ TK2}ڬlE &*X8wX"64 cÁ=E  J@e{2C g2UtQ?vV vG9>7J&!>(JtMXl˥H<4[!l ( cQOe\m>cGtgv#Hώ&t5v#:{]{2Yh_ {6 =}Ҳ< N-gcb 4s0ď Fu.`3jj*T7fzfem%CG9!8I>p 㞡]hL-X4z,yuh>'aZlͰzӶ_xr̤ )j췑!Lx X"ad~D:L/_l7$tPiY[@%vX Kn]E KXRjL WDX*HkuRֶE5Na+s7~/^6g|qI4p*|M1,қSFJ=eI8'G,sHrWУ[-nf$*L煒79h(|K"`C65vάvT9k)"qvM|1y{mNv -o}>s>^.#gYe/V—x`*6w>%ż_$ŊOn;GwAąo3F{x4"Շ]VAkD8JA .W}be8#%>zۚ?j@3 .o:% r ,fR;+0Ȼ!T;U _4u6q/qA?} ~vL4y.9,5צn"Zz'ata[oJ`J]}鞌tmQDFӝ@۠fA.դ͙N' öYxJi? ն OUY!مXlS9x@XstL]/~0:BQZ]Y4 ِIAutq]>'pLjV9کDN!OkKGL3p+DªK:wد0MMnzw0Cn}956 2?ːOŧsN3BuWB'o+FcA>^qRoWh&gR" ;9u7@bJʟ%j4QpK|\X).rQAy;6@E'uFGC^stPz):K~;vCԝ|姟afH[@2RsyqY8Áa϶mzaqnd@} ~tCQ`lO6 ,:x:z3Ԑ*-h )wZ\F)s}%5׼ԫSFដomm4i'U0⍷yZBiP-Ī;63* q*'龾!W6{$~|*@Z@)V=Z)j,#I?^C@F[ )x/#,|S] Ҍ0 WaEA\E#ev!}*-痐dYU- fwCLZr'g?\>mVaʺ7 ~$ch7ʢ=y_w K oF` v닕\|o8}T9oz3.Fr8[/`rLf<+ՍCjiŜϧHm;WAG or¤)DuPYgo8ΰ tV"Kyƙ/ _ـˠas·ԇ2 jbqVN}=ǡm%ޥonqJ$sy:/SD#~cb\:~iz :FaѴs. HO8ϕ V&34̒PruQuݓf>l=fqֻ3ygJc TØJ0Z&LkggPe % ~u}9w(,yM: |%]$>`&/ 2ٙԡ=d`Mט>8i*oFn]+7H4i  gKLkk* O6ҴZ+n.slݚÜkʈcG9 &\bm-Yc땓Z:sVB"" s*j]+y)lӑ7M`YM"?05+LҶyZ|9 en>P 4u sJ7ALs)7z)#_E<ïqHʷ>_G;F'͎F1R^wq%^ Z8g6 ~  ULH]M^xg}g Ν RÍC<` 1Pͼ- ېp8VBLf8]u+D"tͷr2;~*Y5KF@qPRe"PT'1P,mCl˶ML45=/"~+Շ;vztAy,:OSvyX0IkCy+$hTۺv6t3 |^AI^Lj^xY[TlM6q1 tBQ5~bQF.9,Yn2(} 5LR"h[fVOPYYqqFM:(}RuP%UM2Ks$ʾ?~5nX)<+w׸y$4= șdtٹ|/xv[>L.b \ 8q.Q@E L~T-p~>pC }X2aKع+n-R?P ЮFǃ ~FeE"HWk+eki#Imv7tqP6j_hǝ[+%-jj-qY̞hٓ+[sKL迯B@>.t'ͣ:-uۈφ Zĝ]FĵnU1g<`֕hCJ*&?ɬ4W T$ܷyIh'Km0ެwQC3["i̠s5 gU f-bup{!TMxۆi7tɣ9qtW 9pTj CY^Yv3m{i՟Dع*J~ yl+pFp +hc|K{@VE0\Ow)E5}PhbbšKx`E?Q\i"*;._k^|ng'-~c/0P^!퍛:IeFt2A5%"UCpGE1V4h *8 lƠ)cIAtxIW`q]syPub5 &IHE,qdM>^2-u*1,aP@-|.TJp~9?:;,ՑiR7QapQa,}mV;j(I;Z@^1 N\ *&̸a]EcY\'Xis%mU)"A(€/JվѠ7X#f4E@%d8Q1{`s8$?ƏNTKb ,>#ߌdI9pWzu>QTj<{Jʇ*. ~I!Ze&7pw&| NFm>k'?Дu$i&9jL6( kmzʜʃ/Z] ĞLpa)t,#F8T,[}R^5u`Q@;CU5埖ZD(RIޛ eL'fG.Ĵ|%T1}.eTt_hzGtn£/`(AQ %;GFpv<I9 :J. `VYǔ?YiQI Tv{J7ҚyQ̑e .q*,I۟k,'`L~@FyqL$p=lda|y"yzόɋ%n; :b 71tjִ&YӋJ{y}]P]%zInlֱ R'sqTd ?/K Z&Pr=t8cњuba"y;T0pѬ N^e#17bK}&_@W9+{UH9"U$;[S /;TwaM/Av{R}np`;9G½ v-$KK-sMaF*-: e#Q u5&j2Saj]OT̬~v6W܅u|gLvip'ij٪Hohdv+_[ '{z]o )zx(C""9#I>*FTq;tWHtt8R9}Ds`#lb(7ѱCp NڸWux?UAfG҅ 9EfB?p9Eԉt3;0RjF%-^K\jVNIr;"W Qk[eU(i!H,E\m ot7!,Dy*K2g7&۵و;20tk XGqƼ9>f@8܏U&*Elun{+P#w^7~ų01.& gQp9f;.[iPArWRs=S72ϙuR4n Xvz(GZ<#p~Ub$;+ߪ٬sdwx3mꐴdÒ9FEP>\,ë`7my 4wd9S|qbt~+b|L2s,BFsVAȠ: 8o>= 3ݛK\fv6ZO/5\dp) ZR m!hZ`b oz: xL}AUE~r1~|Ϳa$7.%f_C32J@y\_H΅ T^`z8IR$R@e;Q$7(:-_QE[*E=?sy뱽4_6=l04.q݂Xv TiZm*بI M4FNFV XuhO"m`IǙl]Kd1vm8԰ȿ(`dcb85."s֥U\ǵ0'_G ~"z`uխ3. ]˝ =F/\`c r=׬il>t(7 ~4ކkLc*=rHtdysR{k+XY;vAii;_̙+蟳2 z^'} >}.,$nmb+h~>^Gt&k@b)sݒT1.~0۵;c#y#c()zbfyL|GgHpV?4SOd7x, y Ydq̇oo,Kj]~Y4lojU>vuǰs {BK ``TybK yU)`@`x~"kqQ3ƠL3ӌeGX1!gCM'$1jݳ6Xckw"?soP4F*&tHKnJkc)LK=(.ϒc[j;`KZQt\1B יBʢzX/О ϮÔ)î4@ q!u%w @gk0y(M!p}L`7/庽%d^sD?ekwӊ8bTkZ֬K8jkqbS,0P֏RBfk< uѢYʒ,ŪS-2th̺*X".t`Jm\DInOMj%д>h"CAFM[?0('rPÂLt ʱp ߟS [6q@C=) Z; HMZFyd5uy1rW711AWIeCh̝0XAL_ «/7LhfA">w' _簑_F @-=[//B ҀY3l?;Q 2!$T|dΞS`+)|N4"жxjvL%qoi(IT^쾛`7g&g9nwޢK~&\(zrQwf W`Kvo1dݧ{Bp|A4i #?r9ݷ*_0lwޗHN t$ 8 g_CeU2A-d k WSH4EdFcܒ%0Oy^]AA);`C/]oNsAmTšReZtM{*kփB^SaU9ROy. ~0K#KH(dFtCT̔>P[\q靈?(_"nQnc<5.s-ws+,*"ʏ$+~jox3s x Vdtː+[kagQdlIUs~rP].98%c}j؃O#M1Ce/N8[ZN9J䍟Vpq_EɶyT-k|e04'*/JLGb Nz/m_]y€O.W:zfxU/.=d䙗]aM]a`dmt۸MO>ރ}k HEu -!ɸM&)ܹ"^1t"1;'TfG؜J_e3+vgjv۸R!p=5R4}|xou;Ffe֕nރҪ"5܄09W)ю~a ̠l5T=m.`2Ymzgb\ 1A \deqȔR0+3܊mBQ&=ygr?[~2, )ǗiCj"l6`/1hk I}k1M5} R'B81˷xO{AP1yOZ|mʲIoJEbpÊ}R>~)Đ]u/h€O/HWir=o/2fW/? k8h2O_=+tbPwaB/gl8?\ˊ]^}L9Jt$h3F [㯄k}T>f̑nyhoKGZ{U"z6 2_*i1k4a*g>%Sᴳ/o:mw#OiJmR [K{7=#r8_\#Ird ]h9+ݡld_tɭv)IjWUgLJ4#Q9jEHt٨^!'K`XPŹ#}X0IP0,mYX|{h:c <MՐg0=49SyUx2%^̈́O97@0 m.DtI }]\xNi2y#ŽB IC^[@ [:}X X׹|C%y&S- dzc/T p-`:WI}> e W֚ǩ)3!eO{iBp\d!6P7|J-.ś.;~/tPU`ĻϹCNYMFcgfY4| pM( O-nra<2+R v$RzX}Dd9<@ DԄ/>j _kT374Z(3MmM tƦuJe6{wc$2 PG{l1CȒY+؆,"krx=Y}]{,^ꋮS/zEPcYdնQr1h|v|ys".HRwjt)aՆ\܈PСI;W9ȫ]浆! tkn_'ndr&2DTrAsةba u9]cb"6uH!X)&{&: C&\'GKl$o(׻ {%<8>.تuX!(k)XGC.xIo&f.VeAjuAvN\34܀YѢJq?~XO23ON yJ${g!9ib]Qz2WBX4v}‰cX~.N"o>ʊ·W* ͬrX<9 ,dKqw6$Rp kNڷ@} 72e=-w:N6Kѹf1M\ۧ ŀ av'W9^$gL7GY򪅝<\ M%79!.6ΥNab.`Ö|lhqL,SwV'gQmeL CV0$WObӚG ӪxN|bibUױͬ&0)Qhs8YfE+E!ƥ(*9;߼%UFkO9ֿۃ8Q#{9'u&RH:)lJobuƔ* ss8lA`HAj]~ HުL돭iX!d+kN*LA.zpEciya%F _":cSV/0OB6Ԡdmx& AT۷o=\*g +e:kbeG=`f i:^~ 8dTK83gkLзk踒eVKkU\04VA^KuFi٫cl<T? DHJ[XF]/>V^WK`"*7jz7w],͒vQӘJ,zS`qc ?o nu) I!B\nnENwXú)/Q۽x]{S nFMo\7cBYӭț˜,Hkd!¼XǵNl@)_Jtȡ ؂^N%wD󿩘N2T&X^֠ ٿÇD.cS ')L~^wgI^rt9a:)o #"_"bDя24/+a$~&aщs{Uk/"9W)g:g(5䍖&\*jbs3n P"7=N)X]bֳ 3[LG2LAzIw=$o8VBf Hh#iLս-K_FoK^@W[@Lc-adֆ'[l.>vJ'!r//N \] Dcz+qv(6Py ?o[oi46^!t!7|5[: G ( E|(?~0>|+ ̕aQ Ȳx}VJ/59;3ܼhaTU+D1WW"JxƲ6ۢM*(J zPjOKH *MAq;Z vHV^ۊӸAXўtqx{-sR8d>6JKB8`fm~ eG4k wƫ3M׈I L& ԝ*5wE L$ܘzze5:Ҭ렞UjKxS҅ou"p.R7HY[(-)W"gM9»iٯd}ngAjv(Iwe#;*\ur[ϰn"h[\U#l_\Ѧċ地fT^쪇6/+9YąR~;UQHUǂ S{uh{f @{rF p`4epSlx`q~G=.M_4ޔm-GܢOυ֪2=M>jX؇WF*ԁ1םms6O;kBM8F7= Ր8:2;Y$0Fȹͽ~}Q/%O|Q~-w׈AOWL qzo %5t9B$-<W7M0m=И+`.8Z#v-' ΍5ŧylsZHB99e}&(p,O>0B$f2,F.Df> q}7fyv~.ywI/ `s YL&*q䅲m~9Edmzx (mgpk"p%}RM?j\am_A#m?E $$͔As#@džaLl-$ӋR"HB)Qh.-(㸘돈N[Ě:1LJ . L֛FX>S 0ۖ?O4KqmkdT[꫽~HجZ;vwm>a,\_ 3S*KqD!,^-1-( -Zܜ,%pjdB'v$![+qSa-<4d$g %Ew 4D6ߚ,l(뮢#BNCo>QLݜ1C m83.6.ٗbFǷ`WTPeNxp~7V{tHn/W.#ɰul$$x06-~Fg<tsfLL,+)@L>c(, 4SbkvN6 9D+ )B9#08)ʍ9ww>S&5ـ=N OPq'2?;1+6 g2a3TlzCzKTjnx2F {VTD75j'LIUަ124tT! wh|d́͝}s Sقu8IwDCK7s7,߳k"L=v0a"fvlFJλp4f 1ͼ,J?+hX`jw$UjyŒ;e,O'؛?,Z4·bMc^)~5׵e њDivo9RrMI٥P*E 0 4nIKzsNMY!W޶ai`{,I/h])!bjd A\B4 #[  i>gBĕTJV-3ƿIl_*[FD ;&C >WG3֖7޹vW6y-:fb&TV̻礵{נb|?(r*V<[8.tnan% ҟU5_u41n-*-)˃y&Т{l(nJDkv7[}Fכ.?PnKX&Y :vA@RDNXb &Qk9OLjzG6?z>uZ|./0\ `T-Uvp J)3 H[APɔP WǪjM@/V&A-#`$zg|qG &gQnf pAD(KrBR~24孆_hqiY$ ѣUͫ_cX(T, *z.t-N >l7XbH6 %}@;%lR-JuӜRgyT.A&ݘ )ƙx^FSΉЃ7(NaLd8ןJPU%"YK2$_RQ=N=ej$'ܹvGi Qe1odvCB-:FirmyN:Η1mF&[<Zr0rD[ߌQͼgg<ߣp;(ޚ:8ʇW7 -a]}mH&X-3y*`bt{#ߠkRT}Y](xZ[xӵIU%m/!j&24Qg%u;OJDڟeҒ$}ÇByum^v>! KBڠ_iIG^-O>aE1~;S \u [;]÷ӌ{ Hn6;0/UdJkmנz'7]/ knRU0o(|%QG {Dvb>wքO׹2{VރS Ih$ugAR+'Z{~j"^ , }bT[,T R$&m+M腅(>`?QLEҧIŨT&CMɓ^^\BJ9gw("9X1$888/| R=ݿ` iN5K]XaA'8 QzUƩ%rnNu* MIÈFOSJ\ DyCc*]֜RH.G ~7V|UygNdq~@xNT*x7+#BS6<\*%5˄xp>B7RW@yg\g;=+#fȪ("q+N}(e# -L^BU!f&G"F=hCRHy_3lOOӞ'US[S-HZ5/ S=+8Wi#vamc(Qs`f> elY$EyWa&#`*B # S,mXuگ"dmTu1k܁ 9 -$Wzꉹؾ-8~-kSg?TH$D18Ð730Y]m/`PVc3׈<.,8--\R.Bo!wLrxwZ`f*fMe2q/Jk0Y'gh̏KF r;"ie5XO4_`VIz(k|5 ^II7d v_ŏ茼ǻ5rj`%ju-̉>9 FXU֤g\-/Ej-;Ե"J1ą ]q6VafvYީK4Y}EQ !n7z qJo{d+܆P@b=߰vs_M\I[l1=CI_.ڭW͉(:;q˛J¸ ̀W P<3DN*"s٤jSZ8WSJt*{G'ǺyqK^\\@Jj%H毴5IerR# hnKw ry,OVʊMI+.k+\R7$"g?:\:'C3hݹ,:oK 2*-<7á~~i O rZϵMqJL DRd0a cla*h-"Y˼z/_FL ~q؎Kal$_oÀ_)yqpћ am(EroXTY9kl#Cq3R ,9TÁyT(7N"\ІBSY\IX[o8UmUӮ5\"Jh˩(6ayN݉Z}aĦ*i$8pA@y-D0>5HlQ#yVhA@4*}&oHM+ǽ]6ЕG*u!PդY`Lj \wfw21)iZ27 Y4i!DcIq!WW2^y{u"$Q]o1._?!Sep=JvtIol9!ԘrO(>C?'9dQ$TSVNqɥJ)O< Vl3WQ䙹BLqe{܂r7ECfM)IWuSQ"M n ӈneGA4bӕ߮WKcmׁːn>)nU%fL~,Fn<Ѷ+K#y8q_ۗul?̹p@̔%FMh;~R.ܐ\H N8tDPL 7 ;ʶ*Φ씧jꝫ0kަ>8 MyQJd(Nr5ɫHIpݮ7d#~x9>8'`6)dHiPR`VShn,:8cW4 @ k&,ڎ"/%9qNlZIgK 3na{Vr^~{!GyqB#f-h77 ?s E Wu~rOڏZqYQ0%(o^E`B.XVG`o曠4;f@Ɔ8p;! vc/GgՍh[#B$bY44?>Ƃ#9k< s֞DGd[$ԪG}r1y1eHsðr)bv$(TF -4jlv ډF;Q+zJ"b-/.x?'E4!zo] !+mnhQk-mmvI_xE.E9}l_V -Ofr:1R eTV'[-1zj@I[eFpL91E o`ĩsycK4?:6x&go7^aPTR@g%tPS/òg'CD&W;GL_iFRhGR*Pn$=Jur[Uy=5Ӂou+_A6e| Wݖhv#Gqv6sS soPCHMeQuam02`,]~M5{) yS9`| p-S8å94Pчݜ3@jsfe Qk( Wh|RbY.d˛ }tg0l&bpֵz9O~3/S7Ni&fʆ܃!ِ/7ش j ₂E#цiA!%A{7)ø ? Y{b=|$?Atj\[Ϲ]]1XNoq 6h7{"*A-?q74҈\[ķB9 2?R\E} AO;'4+LE 73U5ww)NbwkygA~,X!cE"q E0;)tg[.3iG!,܇7#_gľ4~40PX9k>Fd啠l{n hiɄ^+1|ֳi;y.R_#f{вziЧ&x"tz|ĸXQ>L@U7jT{J<ĸALDؾc D+{ i1~dؠE< Be X?3V;qaiF4 ij*УVƞn"OKYxxy7 g|JbX8QM k 26}DxCX_|#\n{ gB7V(uY0(Έ`їFj l6.BݗO/`:2dq. (;‘]c;?-Ba;K][]Y7dn ĠROT( 9@S޶8ܧ%Yh8P4;sD)p=TS!k4r_ Hec;h^2O7.Գ9NQhQo ̀u[?]U3^*Bo0rMJYI^ɩq<:#'?lH&,0_D>U $w'χ}LJ{ ,\ݏbIj3ʫό"җ#A;~NRNMV>+ҊX6=sOPrS]d3Z͑<Tʟ=ܛ ¹)C@Gmw4 *;=5{n>+5CW*J!9V0Q` ogoȵ £]d ڷGIL/#8^2 HN0BJSf2pBblsl.滌SD89h0xߙ*Iz8 XmPւZAvqjlei \qmԱ=ha{ڇȨcVWh`^4 #jу۾=x;пtαZ<!r-iċ5PdoّlS߈ TBG-UT7Y]Bp̭]foJꞜdH_HʆD€,Kϥn  ڶxݽp;f)%U쪟<Sَ]8MϏѻ?]וRz{FDd)G^yWCÐz:ts/sAL殗n]M]"pQGP8P#`<"$Fvzubv8p|wהsv},l;y8Z_NStagw|gehJYXϴ94 {N(>F)ٸ\aiK- UL8 lGOA#7,i=zqd <-Eը{;KGL@]T+t.rF9Η֤4c:۽Xڈ{IfH!22^acl|E!kh2U{찘F-,N{~Y pK/kɌ(ZgS>.{{n*u$6~oi>>F?YUu<(!ܭȫ)U>z,"cl}fGHyEY COB 'q YVĠզB/dzK][6SM˞(}kJ>|RO#b^wT6{EpDgܔ(f`EИx$Ad,$AQ#T,yj32#v+hVO\IÉ$S/y!ȴ=;.w\)*[9C_yp{m1*Xg¸#Z;cpR/R+r|z+1VQ0-YvR=v&ן֦KE O/iX(|{`DR S͞4_")_ve\4R#b.uzm.iasf5cʌe8g,;J F ?pOdٮDiXY[0&e8&7 _}uS#F-nYkK"^N^qi8g0fl1rulLC] q 6,>)I)_;(@r%#/{joj&쐩@B(%'D+b1)x87 Dif(fr'AKc?(VƋM6l hUTIV ðƙl8$lxBbuօ`Era%¤ڝȦXE N_ՙ)4oP%i_Gp+6K ']Y7ۆKJTJe24x+.bl n3{A=z>tMID.tr/X(ۥһݦk|Ч80{OU1%#.˷%~@XwgTĢӅ"f+ZS'*F 5܆F1 \Mj0澕yHid1(K{a&&n[f.RDdzd%#v"^.aW;W1[GuɆJ)Fx. 'ҳaZG<2M ~OJHHklx@SAO UOu 28"Y-O[ S32Zf*cri9ga{& O])Qk*o\.E*GPөFvJ-nB {*1B}o\c̆waw(^%P֨qZzXRtf($<:2VP v]e\'cX8[|Ԭd_HVNn".OГm? }Q'O_`[&CZ~𕽶NU !uGA-2 *f]:Xe ŮN\*͒(,RkM~m$B:BaɡDhb+ͤO&\-z%s$rJXvG%p8cW2%voyL/0+f>ԵS _ ԺC7ؽVOJ.|07k-"jz&7)1}$e@7X|u*=# 4ĜbROޒh"dHH&SRIbuNaz1¤zw+I>R!aiRq)(sOۣ75BocfX|h0NPE%v&vכ8d^,x>GUpedMmW[Y Key9ĝ*?]T#C8D,[/9EQ">l\ ,$g2E5*`UfG5Tϟho tR~YzܘtR*fcP0?\ZGbieQs:MRrT*G\J&G4HFLOyvͿ]ꅻGu(mWAsG8A}tT>6q1)ٛLV_qֿ%2,V`O!ҡclIf\bWm6wmd"7vZi⎢V/v3wڠp3`i,5$5r@-Syq+ Č^vY>_ ҏ?G4<,}VDԖ U;wp6޴|u4ru!ͥVe؅4ajϒ B^vdv1nԞbBI'JFŗ"+ׅɺ. e[^O,ѷ h!N W0#<(3M7jk[dJl䔛!,9lX҆W3uJO/D Wُѻ %{ݬXK]@n F)sGB_kB#CmGcDWK&z5=y) jtpJ>|tisQ`lj>>|)ESίƛKdW-XlYG:Pƥ~i;9Vzgh{G*ʚSq%u/Fbm-~;+cP"DӲ{(_wNȳfX&i3Bn7`(R}A< C%xڧUFôp123;>CoD댠B9Ӭ QSrݡT!{ؖE`వش+nkJ_25 r~Ŕ͵;ht/7ЧEݜD9̓rߜW$œ.K%+x%|5.y6z't?]/·Im(^N7eߣ}z\Ԟ7&hW܊ʄP^(C?cY<1)t y,~T|&deLP]WF1_nQD!㖠Nv@vT*/o4#jd fR"o\~aB`3Th4.KtSy^%4h Dn`j|P$Geߤ|NAv34ZCNxqSi¥;+aO=q9 `2,Y5l>JM 9rqpEO8F K? ZY"}i%yeĦvjxrB9sd[Suc]hwD/mO L Nݶ[۬Ҥ񳥉SmZnM d}0^>%+ ̑paIv cLiOaEe٩HShJ௲l8Ar4P]|l ә<ɧv0j xeVo {?ezWBN.a쓢ӌCY|TOR2Q^4@H6/$/e3*V}2+4Ph,%"p]I ęSS]&X 6.kC1 {pRH7 P䏶[ttC}Z-gBm;礚 TG#]q0|?Yjp_.Uܧ$ಙTfe`Oxm#YARWT>څÚ/8~yF i95rO%=_5 Ggw(,7ήXF#u62<(TɵfTjz6x"IvDv J==j*Tq$dhkfA3s{Q$2„=,ƎP0u#碾9̾vu?j5Vt/1-F q3р*ƞ#RKhҵnY(Q9VM)X۸'Ŷw.ѧU_…r/Pn"RF0y_)zjj]h%qa*ܯ7 yO M, 1!Be dzcMf\hXR_`/ |O 2dvZR1e6wxy%m ?͐k⹼E4(Y}B;cB)aQҧa@wX|#,^ R!)p/o5&F&[$n~/1_OVиK y0rq6~cj(s?!HTO2*^dBVptIăR!VtS$ۑZ.$I *лNaMҼ߱r mvAB[Y%`962hߢd!AeK|\JM8(`!^w85w1- COJG6fUTch[І+tdY*9/Å۵srwopC ,E>|س0>Ka 7t\ hYxL/.L~ aAst,ޡz'gPޅԢP KK#+]Y.- y˳~(ғ*c5^B:ZS#9tZNMkU񝷾d/5hwAk"Wʥ2tffXyo,IFP~>YLWTЭ=aOtqcE 4[gX*d9a$ 9زA@[0l󵖨ƒz/)-vh7 d)8faRB?lc粀Q,jج< E۟Co- e$VAp_ DnS3a_]|lMUOjlPnB)뵧Ň=/Ĺc&[F'Ab ϕ`6Zˉc3MV7i ܝ&7Խ%~ Wy*soJmճf+i6)[9z˛ȧ_ ՠ >12ʳEl#.Gk%-{4xJ3,NߗׂH[-rĞo+keǝg5Ol$FroO@MBdOEg?/Lt7CQrw ՗5L2:Tz#[VAS^ܢR8r^ vcPl?K/V}x[{WwVXv ?^62\~4Cx[1+d&jsEaZ$&wZ#52\sń׽w"f{QgUlƾ.\3>X~q(9f/_ӊޟkEg{ 2ӷ;`Qw҇g^Ԏ#Αsd&, hP]q./+5M H1Y> #}C`{v?.C>a/58imW5OI˯P7 \/@gLtl# ؘ NgˢDo8P~q.0nX|;8ޱ:,-D_` l@0d,+)?RS0Kf Qu˩3SMIfg  ~ݡO?~+} n2n,~*Ɩxh`!f?-$KRVIdVi:#/ &#z n] lg?!ȓOԜv_F]<:^tޟ#t M!]Biӝթ2s= x %tf`Þ"E K<+ %CҬ>.ϟsRMnq(.zNҤ~^ka%Q $J1TK2A]l;*WY,weVnNl:|>eo u7!,sZYdbRoTs3jo-U[Ո޾:ΗſMnY߷<ѻϥi*w p.x}ڧfN7Ueab/0 wp:Hcr/ vI.my:dlRRM,͕_fBi##_ց .G?60S)53 ZYHTmYZ~2$l1Cv [i^:A95xAgw/71~ o5__g0Qe񊗘/drI9NB?WMi/HP(r{)h-`}̈|P஧|,CWbFLvhsa)?Rkz\'X?Ů:Z΢'½g[i"/*S n3#,ˀ0ѬB{zA2J(Sz]HGAGbİI2'M(@sKmY *꡺Oxn!엎-|AmĵFEzApV„ /'L.{4Lpl鏊B1=5Hp6 .͋^'RwI<K 9xLy}.@.OY>;J~h\Z%:_[ /0@>녏5̓˄,t#мQfQ3S#o3Թm&a}(4CVA_xJ`-QEYPo)B>_ 7b f[*i.yZEMY%xzaykϧ3F^ ayl2 fu߻{uOsϐXRpZ0R+d$ݑǨuA=Aήh}ܫ]G6$F.~~zqŒ'GҶdmߜ*5)jczV˖|-k2]'#&3yצwI"I%Ƭh9Bn4|YɁ!_h8q(TtCu -u̚k2 ?@ʿ?Oj[[?\Mg>urhlNԎ'#u/2[bl3/$YdԤi@%h0B`UVʳYۖIr*de0odǗ35vBJ&) *;f| ^5j˸2e{[ToB1uPv\D["'vC \ϼJmA>FtN{c+ <]|$+ϲ.ć2ZuJ NkoYB SL݅d. ԦeM숕gs?4O˥Piՙ SyYze@;t 0y.Ai0zPH+l\]80<,]tXK@3 mc:YE7Ε$Yk \0ud9mFDuUK-LEqM~n| ui<}UL:5w M{ 2څծyKAw\Aw'{Ϗ<[hBB| |H %רW+Ikv >]%rG -8#0yfޜ蛉O ?[})W{ ȸ0PDvŧA$2[08kB"jlZgjVw̕Ey$ ̻~m7H3~? ȫKR#O,\{v[_N]LG/#FV-hiҡZKR"Ҿzo&s ©4 i?*XAJS : rVK<0* ʹ= TAv:v(h8yWBR9 䵌$h*I/W~4-̺vH.mb7y YJUI&w%%<\f xILO%+aHgo`0ƠĎ9pX9swL6t/:H`"V$kN C7L)`WZ7C1HjG:PDz".iI heɬ*-]P ^~=°(z~qtapm2ܡM7;w€ {VwlžLJR{9e6iĻ/2Gy .-x5J%C0x^q?^+fÒR,iןðK/<Dž* kDbϠ»D)ko҇E;`'`3~(&Y6PHN x"<;ǭ_zZ0LjNTV^.iGjꔸ@9pBxK Li=(C_.d|^Le,(Մ̣ t1y( CCAa@*|V XUPPR }`f):ӊh} oP{4==pKw'fZzPC^HRQ}҇}$z =FMջrn[SbD}'KVn|.v;GD{MJe WAn2)ԥ?Ƹ!ů3)}nTBorͧ'gOl햞t)[˪`"z * A$!+/dġ>|R&ADT`Z&!XJU+ }X]&1` +7ߟjh<`G^|xAqNJ$09}b!N.Gϰr 3蒼ɻ2!c/Pj(|e h3B #QvJJaN@4Nb{#k#;HAHarF/T4.qDU\<-|0YbЙX)0DIa pG̺'mt\!M^[8dcȩUy88:/s!=) X}RQ1((ϟZ5M" 鏈V7wiرPfztm"=ĴGb)!$l=J! wB5H.~Ǖc4YE ?i3q/μY neC_&Ǭ\0Kkn#='BU|3_bhAFl suɯ}6V*XݓQzS遙v[J5%|fF̺:I&DH-!>o-itkvc랰x]4-zar;<5]bg~\s*_qM:/?rW0~տD+JZan\=V:ǴTھPF%CǯA#B,hɄݣ >7HIֿѱJ-"F"l7e|РN]\i&Mo+z>|5;^'ٕ#-R &d$\ǻRYQ&`WcZ DhW78ӷ#!?h /R(h$%31OّD$2 KY1P vka#!yUz+[q4e?9/MTdWU<#-WOcjQhdu -fW"ba=ȺL[8xx |Emd67%@)f ? ӳNUtZ|$t|r2vc`IJRR u|j^/ r'pkP@gpGcG1MABڈQfW_RPOjO‰C)x@o m[ĒNq?`P2xf$qX\DNصjԁeV~ `D,9Ux:POqb `uעDK('AXƤboYmO@X kX.4~1+8WH9뉞֩ۙb7yRrwk7\[K7iwS6:">̳eCB2UTAmhD -m>دWUK&+j]-9۩qS^Lv%\T²B #w 5C5vkoC4gALמ.?ߣIƾh^o0! +b2.9!*CڋWkb[HZ8}ZOmKpfi-5b|lHUA/ʂJ303YjE,>0,]D J0AE,{?]dxGz D5x4W0,WLf GSIh_fsak!P/2￝c?5eM^S8|4v,Am:< ڴe^¾} 2i6e?OL 0TyotB)ͺ qVVJ^ b].|j^C AKIμ!{Ȭw>b1Gشqv~tp؆ Ԯ>~jzwR"Q{^NUpTvH[5/\񧍆:˙) pjKW31X r_b IIeǘؒ6Rށ̘4YLN/C9VqW6CI%A ?S/] /nSзf UH+"3M{ذS`tdtXoo̵A0Q/؊Q=d& mPl@JQޘSgP^Dbs 2B-aƉ;J&e(<"S$B`U/cxc3jG;0|ТKӌ,yN5.z߯1C56;LCfp<,!8'uЊLNu|)~|N29e;Jc3bZ=XQHטX0wo )ffGhi2B+B 3K/`Ǥ5:GnbB3lGT,S瓣!dHѸ`9jRcX=QM#@u=v.-C_eWh{ɩOԠ^|Ӑmq:|"_ دuR_\ =AG}'x#ZwOe.-oL%f!g/Odpո@Aֈa&p5W d; S5ƕwZި++Jxr)=~'V)gX0ijh$jߎ%';! U* }5^^>?:߸ Y]c\K{PpE)<HVdW?@IXFg Q*Lw?`` 9)3zTk09vKBqLR)IA`t7Լڎ#[M`p[N:_cTFݽ$jz4E7(ҽ j}L6c`F/dCYEGb)ܥurXu'9Ke)4ˏtưfswM "ȅؾBO)o;}+C%TVX{}YgG=Faޯߠ<8'a$lO{J V;8#T^oA dU9R3k򍕳 Vi׈m(s TVc:D䜦x,O.RZ:as^џSZF hw8:Zr\8cEJر}ր긻pի rU_Ux vRE$-CgexIkӠ5Xj{s'df # *[@0 5#騦R CLD=x00=u*lwg6\BQ E6(<#Z y`| FV!ocANOQtGr8?ۺơOv ʷdlPKSŝpBWC_tY͎Eo#q*koQq,lU3+/ijJsIal-]/pE8Wxh>!{6@/_ؿQ* .x 1526q>-}Z1f SO.X %,FfC訟fdfʜdbL+d-i_ ^O'2踐]9uUG_K˝ xUz$O4rԳ DR '[ {Y(G} CDc>iE7HZ:knKh #[x vvcvuzl+?xe;ZJfNRGdaE'TnԁZ(nRSQJV=*' Yr:5t*5p /T@Esd4vp|˝(ߖ Փ`S.Hua=j t+ԻkI h{|L=nxHOT0pd"޿GpVz:M.&RӖ2ct* p&ߛm etomR)]>kx &?%PK o l?b4%Qyj,[a t|7OBnfo#l^ Fij⫂#7ѿܣ|чښjpT OlQTO8"Ve:wS2 #Q$~q6Ux?v ;vB@w!4oD&'*D.ɽnXnSTnn 奯EN 7iF L^ e%Y .j[͸a(XfI4lPDWcϿ::R&*.h,akq5|K~nD9B un]_K--ĩ>4<)sCN`MHk Ŋ8Y6/ʼnUz@z+,WI,P}s)Hxرbu";̥$+t ,K_ۑ# CG\˿lT | :-" t:Izv1u<kÀ9;g]~R8l΃ęYԙw5_j&AΡ0҄ʭ6'"/*Bf,bu@H5l(q X4QZ˦oMp*HEcbI{w0d@u6/FH[837WK:9Cv@Ř-&XjmdgKwsEg}O1ye(esF}gt|_W}B ʌsԗ֓b <5.nUC(ֳ1>\uDz̞(.PotSYs>Ng 4R Q'BsɊ?N#<'uE-~³$Xi(* ;hšM./|bH]> >YOX\ k|v^N&v@hD}C..ϪŸ)U'Z EP7_2\Rsu}o._w UDIX">or""܈@MW).:}~5Phr`=Fo8sr?]%7**k^d)-43+(uEGZ \x.h\VlGAi? с*gJ-h]%Q Y/AU) ,^']n֛2>Wh?PEbc)X_pxLʩs°&`uB195мRt8 do+c*S*Uc0.c{rS,CZ&n<]{'ZUӒ_ qp4Mdn?^ ^Vi|؜@2ԙn\ 1 zfR ФjNχwz^>E3uϞܾo4UoN+Ϲ̆}:gMj lGh-fŶ_JoJ2#eY`_|Ub{w~> q3tb줸98LO4q6wR:n)+)ĈQW\w3 ƱvTT0yEri6f0jo"jLFy-q vs,˱>_:hfkFu4\/ \ͪåO4Ua|V*"fX-*uz ج?粸g#ŧō 83F\3R&0Y%fgUaйc&;kD& yj, 0,3x''k6L.řYYi@3,!sBdl!߾=Pej^_uDw˺F?=E\)? n}w fݯ*7Fr2aCNhwKYKO=N 5MU.Fķ&YM;/77~ͩc S!Rk>nLdAEAhHT!I5 HsQ_s^ԵGo{P}y1NruJgT:C|̔ !Ƕ=b&j\Drxm5HAbٝ1aisnmy+B 5nF=Dk@Y g7^;q nt-#9< aנ{ChA5kj7A+Xn4#7'tA:rMh8c NjNӡ@-lzb_esNopIkoCئ/"Jwԋ`[“"\ 8u2zXG)^ƔOn›> *獽$M/̈R4W#xŎgY6<NCPRgJvBqyĺMι%euKί TR14ӈ;pJ8<Mu% Y`Jܪ69ȏ}zS8絋HQ,]awi^\ޤ~v'%81OGl@ j~=b=%Epk _2oU ^X%JYsV}e=1cF}JbmRY$zsnKqOӣ[WoC0J)&4 SGZ'S9VoH?`LבO =H)FewYGm1%=y!2moVg$Kq-V;A,sqJg|trqGޑ5.)['p֤g !<$? )Ec9B#Y]ގ0%,}VZ6)Gg/& iEG"Jg“KVx{4t/JT('.`8oN&KGDN$SVNa~.ʗٞ+ i+PпC[J٨+C1.u䜅B}='=G*60679t  4^x: Jχ6CŽ3y39%/Ӥ4 e~gi@44S6qa/+z۠ʭ`` 2H6g4ȂoZYƻTr]T&.V!rVQ[V կ6JDVgyk嫍U\% Z<d'en?uC!^' _zDoq>2ѤҕPr, #y^y1O0@nQ})INwHI{k *ptCzJü<d#kE^ X!{N3|4/DpE.A,5tQEve*|\z(W%)Y]|?}(xdD><*^W=FZKt4#n)FZO)w we88ة1wQI+hm7-IyFpe>cZ&@ZSIݳ +{QzPؑ\#@)lsA̩Wst[7-}3{fKL3U6wFn;Rbƾ".T?TU),8/VM_[xcUzzs{6b?ԘΆ[tJ/5(.XYGjkwozUu#;QH|y (0ywbg 5WWh)ͬȜK@GIZF)5# OKXZz?~ JV]6eHWZ kIeOWiTbZIxlXV^fg,.0;={QsN~-1f0DUX RHYUppRWgI ri~wDdheh |un|RBNdIqq"e|O9jJٲqFH5p!9N\{lX\9,SA%hS@3/ Q<6XJ\L1u04 D>M3Hw5jd1Ii3_P21楼言l߱E`dP` ʩ&L |e"=)D 3G$;dK6 Jq"/`Raܳ{ٷj8fҺ^0n<A1AM66 [/ՂEɁ vqV3B'jUΎ3w"u:gQ=+VWJLGa(TŬ o% BI}1UK Ea+;sW)b ;-K%uP_(^~dwJ$d|P5 .KMfP)~j P$1f(n]hjQJ#UjJhgB@sP}#l]u+l^MvȢ(W`&,@<K36Hmъ(xsM˂eRJ fZpb=剮Y$۞ܐsGl*1f7$u_Yf\ wےpsx2UW\ՃBmrQ;05;Z/x]v[}Z`LmP 3_7_˗ѓ0}V/m!Yp0 Ҹqɻ3fj1M@obi ICۅ|-\K9ئ8 X~ ATK.pʄb\s}_#C4rī-bٔ-tXEHjƦGQaޓedƛV; =t~/Z:Bp ?=-l׮ӌ geE?m>_Hup<,oO>X*Tn u?KWl{ (Z$I&|Av0dpH`'l8{ 7GK\ě@s[03ܯّ5t(ZW}φg͍}|꒮7G EQĢ<#@eopU$_R^m O[c֦woyS1G!6C{_Ќ?7F I5/> \ZX`U}<\@'۶/\II0ܗ 3eY.2;d_aB*Ÿ^au1ɫbA@},w|vShHx(j(dOS{F]eKCi(0opWb?-c>;瓎YtDͦHLIQ,(iiX-J, u!')rJ;a@]άقkZ!9X2;7'L}9fd7 Jy %ҹI Cnݬ}VQh 1t+؇mޒ`ÀZPH-1]<(Vs-T6Y}8xjfעQZ"@gj2׈ )M|h†0 mAPႫPr}J(VWwi~pwYRtgdeGH δ0kd`{( %rc; y1. D>O) 8%Ha*v6 Xu!>)GamP$T&l(A7Q-]ȍAgl?3@-d-úDWKQUǼ /<4m|`y+a( ZEJIͭM0~!j0B'U:fዖj593,%:a)Se*2nxH8*h(#4ths:zD k_Xl'̦vg|C=cc!nU4%m&`jfkn*8E^} ~@ A jV//FnۀzmC{I3pږBGnQN=2 }|gKr.Tn5i;::Wn&Qt0TZR\ epCY{|/e$Jȧ0KPL!B*(̈?r&&+,))kîG`XLSNmKҮ_Al1ト2b_^[&'>n_9ٲ :K:I:!J %|:K*XcT&pH\K?%eD2"FlAlj5`|;TCQ\.;zF+jɚuZ@q|[ oD883UKUF&[Ku$1Ls@GDzƛ4a;)h&?nTG1UKx VhAfG+!GGIND&V[[l?@϶pUY\X/\!}[rRv] ߷DXFߌĹ{}'*xX %ҀȀeYFCχp`da''KD~R<뾜-Nwc3dԫZJ^͛YR =VpI4ҭo,r3ťE 8OO=+]k!Ea1| I;,Je?m~OucoWί"]~r Ȋ!ǙT l|E@ز✯%\kz\%wB3i wj#ml3̙ꎈjHQnئhy\֟NyLأ;Ըyn8*Ga5wnA3 0-ñLF pA˖/.hJxu~Ӣ99@ t?ĥw W坏-Ih;y/%K,ÿ8T=܆EYhtx J%5n|a`+l.8ƹ +E},"$71lD}oܜ+uo3l:"ۅ5]R77-(>:uԆx2Q-E8)ThU!byE`{w!I$vpߩmb Cf'[ cE5J> mJyq, LB=FF9]ce#>S;0aXkh׏~̀tɵY 7jtxEBWt?3xYR= #(NKDIؠSdɨ"cv%o>K|~TdEKwS24{PRsM)TsO g%}cM,,d{biE@$RyѥTF>7&OzRd"* kMa+ޗ:5 'j/H oVM~zlfzk?ǭ[Q9Ieݹx71/?Ⱦ,ޮu~hSnb@`s9Tԋ gɳL"; =W2V8{1tfK-qKGɗoqZ,,OPq\+5SgHFqN@<=fF)Rg;683+Ǘq]tF~>7=n@]}zr1*!|Xr^ `z8\K |ZѣPQ[>WV=PoN>Iŏ⊣` (iv0mPo]q!Io[$iv$P |n|vz}(Rlմ!J55vuv3H5fAZ6;-S쳘"X`$eIv\u h[ޣچꯞe;D,f5<V-[=sȋj'JUt"IZqߛ2,N?oU~`=r;לlm ]їJޅImdX'HYXgn/Xud0K@~k.]ȱ%EMܡ"s\[Z澒Nۻـ6Hڛ <#Kܦq ɓP;,hŖ^YWH~zQٴFwޗrLT[a \å#r) %b2?d#n*8Ð#-3l ϫ&mDrp teu55Vcj˩ tc%[bw}V,HgH Be3r7K,M#ΌsFAͣѣ!o>H[bMqq$NOC&Y f;t5H˩$&$Na3R+V)GQHbog#t/ӯubBԔtìS8 z+蒘YvP׾ee.dEA|gq<[=J+!жkS6"PnL~ d u5(lֺMCCk % Ƙ+|X~FN HOg+K$hA\ O{O?.nX;-rs!"Vp?ÿl)Ԥ+@VL|"Oq]Fs }{Nah[b""mwE%T:=͜B\C/eO 4ޞ^$ʕ!!r.5;ɬf iI,h,HVӍ1t!J鉅(W>S2Per* JwN ]f|UwY,"j8,)]C-'p%D1uLx( 50=-A~p: {V_ƩQ4el|8fۣ\uaZuo% S&gD޾*N L{a]~}8,Ӏ-7vGQf~2D}HsfQ N6-Dx/ij92z ;&.'GqW{<$˶]>&in;Z3.3S} G!{C* rU2x#tzB <]gGs3"S m|L kgy%/u-2,;(>^=>J`ߒjOf0d3ҔLfWNpFd7Yf,a|R:c+ObCxH'hFžCN8 -U^Mr|mRF;=0Q 0ZX:} '<d!P[o2q{`uI$J'X=G& a-T-׊fJ{ Z;2p1f0KBHl0iWaGJ߱ӄq>QF2˾}̩ŏhY+pl vt\\>$j >upA TS]^}Pl{jldD&9>~S]5T "_gc:30'\ ca=d{VuKg1;ז*ќً2B`3h. #ְOVhr% }T(sFJu3r䍍9ZU e js*Tn%ZL]Qlp lSƮD_ϰS-m 3(Wqv=.搗#E {>; t\ۑ_Ǥp0ǢMu?aĺG1jl4qQ4#xi&&; [Zef${ k:לzOxb`M ٜh^j{v3~pWb[GepgB*Spp2.aMԊmz)S"]ci="Ch5hx!980)AL0 ꊄCtϜKG.02u}G]`h)\˦cՉ:3``)p H.x\10D|a HVM}/4\n{o41ԞȻ':j[# ,.09JwbG,e^-=SO3ݤ'4p K,<߶tEHujxKC'^? 0 ld!CFU UxrHrϻL{W`ܝR>ch5!@=']2(F˺'&a kGD92I -%)jik)KidFTCQ\nU53>agkC<}g*Exh]޸18HH)xA]Mͭ~Zۣ@[wztՠNlܦqL(yuu+%)Zro9;+V!k6@r(zOfv)2zIf'A*inV Sl=v o0H*׻N1[{lC<96R R '3ݙlrei7޳@^sOlu#5!)P@a-O*8eAF-o'kp|STbf#sJti{ Rb_6~d@Yal\X *!(T2,5sb.[\37WtdYNΕ*JMח۫R&{ DhHki>,ưl*LL9;#>{8\ecfb.Jw9^6fAϯ=r5s3j3*SӅRdY¢lR=tfŜuۙdkA1J%wqfZצW{Vh~ŦxX% A!飒g{_;A]6EIy?|`:ާ:v^s`rvԛcR 28[y @k`ɐ9A8VG`/}*]Ey_Բ:ƺ_޺<",Wp=$@:S X 8NkqAFg1{GD PEGj{Ra.,^B2g3cw_9F67n1;,Qus } PMYK~@WP G.c!aAg DVC9DEtΑ%#0BZ((!>W;U<bο$cQl :!˦ۉw QvECmp$+J+:Kcj/t]l$ۻҨđOMۋV$%ݭC8.1y >"dEf,߽v۸zhZUV`n6)WTqeqixVTT$Եt`OEdE\Egwa'!T ,8 mlcvhB~fbI5KqNv9$OrtgpX>3<[E{ώ66kZQk%L'OU!vH(\>B ,hlT `+){Jiov-" |>PekSKyWTa»7Oo0&'ֻ\R dŧG^)(!$o$y*÷iJoO ٚѐ8ܰb框:5V/ҙSNHȲףHy n享h:GmZ|nR A{`N>U=nAJ6!ELw׿6ϳ+zp1ǨDte,P 1NߪR5{-W;f4#jQ7ꪕmi8MQ7{NNH[J,tUd{]o,ܻ밝\pEANKh$X̪ wfoFˍZw?Gi?< ̛ف6πoK*5Dt$8wa4qE G 1w ]"k!f ep@j|X^bnbگё뿮$-wj+*|EJqHvɺ采 PB+K-,3#տ7ĕ`^vKsw.~ BEO) NO?3zA ݣP`M<Ж`)U ~oڔAAcKGouFZT`o[um퉊RNGC{ e T4?_cI^WRe۲> ]=~l"v,Ջ@"dҺ9QҹJTXtDZCP0yoMm~"(!oKB|(y9b&\yۿ(.9O7c<(G˃$gah0&矝oN"VGM(=3iP;P,xÐ*(]YCGQ۸(AQ)T,ŘT:y=򇍎\V@.BJ 㤲L!4 E_zb QU=6i@sW % }1"0;+ ԁAivW;%JFo ; !^ xd-FoXz$TEJ't *pk5_\N!xþQ &q@B"8#\Ɂi,ev |{Aw*>ZnV NOm+Pta9d,'XZȐj/|4 ;$ZFE'+F䭬S- \TfG2CKAH<*&\燂8~D3nmJ|*+G5y^T*&$(NJ2 @J@>9UȏǑ]&s*#1٬ ({/3D ӆN>n"M0.T4I9W#Mu-vW]NL۪NRi27@nNwG^OKdsߞX`bsbeuzm/Qxf6l Ts%%32|gʎVɨ})`o2ZC]K&7eDəb7|-L`Eׇ&5%Js&`vߓCp@elE"1%æbc'L >@%#P8x"wK{VJ$g46p,meI3(J\&>~rVDXfn΢qFg ^Jn8cΒe v9962L~#;)?jJpviNҶreίYOӗM.qHKl Ͽ`Z#L'vķӘ2g(Oszegn̂82_I{-8ŸP(S@T:&u4C.4J?,w/_:~`錶ĚR߿K018jj\7C,qZp a ^_5}ն*oOMRx7l9}2AQ8%DRޙ#u؞︑;d-}p#-XU] q.g(mI$=/~c's4'ߔc{[c_M9DckUՁl0 e2:R* J>S^k21Fn#iu,cG>DT@5_Y^[uenV:hcϫ^4,8s891N31Z>=8z0%-3=ݖupZPcAAa( 1s)@̀ٙ3rkKc[0SɥPEB3%V5-DI}h@צYmFhrmcp, ts K;0m.Pg;:X!ThYoBoψZq 8dBseJZ`%mA`C7}5E,ǧ.>̝ވA\s+FR]*UJ_/{È'rd  Yk|c;$yn>w0噂Ov=5;#<À-&K1b} 1;"-{C[\0b $؊pe F9+ilzZ~0z"oBesc7 /r=!ft#gZɹeGs?tsö*9F/A_õS < TQ+&FҺA)*orsh.(tm++n>6?+VWcNJGEQj|U:"GTࢯok>٬zP iDpHqvL##҂Ig +Ѓam!<6|=<w+uO2q oVeX$whF8YEU)6si&V*M|*0,ʰ!p9Üxcx+9G!VџOv[y5# ţx_63׻3{y[Z+q% ?$ ̍E>8=kx2b .Il/5z삣 HE'ĸUSrB_6q`YZ* X ٛ D~%%X X>S&Z~{\ԣ3NͅqnpmE2 v@WhkV1Mߜ~/Udj=gC9`ݭGn޷AwkL _DCwt*"!aKr^"HMT(EĽikF0L[T޽S]pkl6cGGj+,_a= i<p[[񁠟or-\LFKmڸ*$#01nX2'u̞pa< gu,Hcw3)AaOUqB eY=r1/%&-4 ](Џ}os]$T ^hlA@aI>cO'#|x#ƭP)-SnTո+`LR,ͺ)|`˜黿/ ~nIG"Oeұ}:#^/cf:66D^qZO)ujm|L,ɳDM Qjd[HDٞQ,J_qvW1L[g 9\V9:saWtx;u83t|"NHɈ5`)D"m9|T>vdea "Rz^0 W/WM: '}wm!yĂROrn@Qa^k>_wS͗L]vV` h,=蹟-/mVkKW"D3Vd-Ð/l=y YatP`^}a6}Sv![چN:|l< sq+wӊCI2kKc/a?gUkR+P4 $TN|+MU#'QTJN^iI~hÆu:*0UH!A,}-0wK4{ȌV"tLh2U+ wxI-ߡ?`&O݄* +oA& T- ضC첅8Taøg{"@J[@X#v'o,1+Bnz'bxQ0^SU ;7%, ~(c2H1C@3j,I^XBv" ؍4q|ǣKg0)+"ֶ`*؂=x'yepkbHN85^5M~M7v:2gȊ7aED;3։fVB6 2msxa pZo&ffa.COmNͳHhk9 \mWE=U;^}v2mmwaeF6IfUf v&SJ,`wC0lHԨ98ͫ)i ;h\SG%9=llBlhP %01?F /TgK h[O(E^y`73kZI6o&dDMg=WƉm-&\Bs()n[:R8O/#qp2܀Cz7#e_47dmY 0[?>3vǡLۼicʸBNЪV!&'7 .QpdpGn_p-Ğy…i晚ZDYϼ4n_or[-ryiCl2^1(·YƩ@]V$fLEyS|>sЫ@A#w`*[>ft'sh3qݳ4_sf@*y:fpW>P>R#3_vz;&g83^qzNi3ø_PFպ$ A,T*[&dlϜQgL1__t#E6J24w9XE+ifK$MᬘL} hnjBon8JԢ ށDԋ1Dn].ICǜGMDw-j 1BtYncCi+&vNB{PS-|{_X&3KYQH7RP8 %f慮2Ibl9 ~n>XO;$d0M/XITmXʲ>Qh hb֡XӰmM>r[* gSJ'7뚯nar"]-O7zCtqj\lwE PrXݟ1 @b^7/GReLh?0nm . k'uaVJfų,`ory6G Q½\6H&g^P0F>4^OԊCބ7ՠh? @qY>S+lX>晃Wg9i0I6 4!MM/n:]ڴKq;3׆1iV g-u;W \nyS_)#chJ MAVn9矵EzvQj[Lw'N7:!ά"~h-75϶bDCw28xj,ּ!Lϸf)<+N?J }$Yr- v^# [::XP7⑲cz۬N'3+c-;LHUifׁ6OTjv<")żv0qS0s ,k?d {n${1rvk.pX IR/"z[K+"W{,mȳ~88Ao]4(AWf#z懱/N{,.(&FS\HpBaW^+^_l__HpWC}Ҷ!Yλv;SB4P\7]Y89"Gx㏡$WW@DEprY )CZuHڌMShI_fOe >})evp6Wy6X5,ƈV?k"B r҉Too S4rR4H GzTr:VI8ǽT4 `liƽTcNY WKlDV#3IZRrdt\Pxȍ2z4k)LD{ 5aK'J+w <0޷/>l{pZ!o;/42^,hE5UJ-lDp.5h,x>cЁ4u>H` y1ֻg0D5m{ȊG%rU#'HY"=wŮәI=]*ݝ0,8C)o(I +%knj#u.qWeSZ-7#TnO{9ֱ,e5*/T!YZ5,uTR!Ywtٳۄ/;d {J)O@- GݭS &nmiۈ8'K+qZXupC>UL镍cF(7yLm2/ylwgթ^dܚO"!= 7PGAh 볞N2ꬷpDY-γ%׺ȡ&CyNM:L -~eax(vÞy7U&ZT2fON;HbQ[U@EGCdrZqAX;҆ڥb'AC%. +^<빹tp^J .!?[;^PSc}))^ݷ.MQdHh!d*nH^>ś!;~eguF)бfj\FGXqVuC15c*t̟w9&c,a+UX-w IYa1mݞBj]TG$M|4V|>hda#kO()Y>K!ӬAӼGW r|YmyHu17Jun2KǹJ&]ܥN0Rh?*{m4U@=yv bMD&ѽ}Qƙ`wRٶNM7M}WJ{9109<'$xLn3(a ߸`ʀ6TBٳu{K+ka3>R4 ?a{R瞕+lU/27)־zFHl:B}U~j\ipOa|9A\MuYnq6Ye/7Ɩ,۫ҩTRRp>DO>rJN%JֵRtCe0 A1aFᄉRc9cV0 ժv>+_,^jHQn3GT@ {(DخQIɭq~-ia8U'!WwGBT5DnOUW7Sƨ|߽jik?R0z+tŇYʯrr;o_D)b7ɛC4qmaM](cE]嬖%~J~H[|jtjLA0-)<n6xToKW /OJ4qPS(Vq8NT[5y ɻs)dw<5BŰ6E<2@Hg)LVC. 48v*⟬bCIs#EKx/PqVEh*2qoQn G'l s`U̙qHvqdC!27=Ue#̗Wro !Xhhgp0|ŗaiF9y.(j_kk|S,[X ŎcBA>Q׍%k0%}2@~?L:Yw@gw=U]K;§>Ǵ)p#O($~Y£[|Af1 %٥#Xr '?3Wc=/ij>8A:>&_.bk/;g$69a3\RoQ@Ab+'t+GEUڍ;% a}Wǟ>+~ؓ ~hgA>6R~-q; Rm[(}7up1Mƴ>Zh?,B[t|SDRC +(}&F-d?HB0>mw oW2ո aE%pepsXN-vdaSEPtڸ$B`ȅJ“|aͤ rpg$GC8cS#@]$儍3}O4d6#p]`~dQ[ykSByt@mouI,ø'yN~usӼ\nf r!4F1eS# ?QI!X&9!79av1<= _="Wz$nb0hlmKfcӔN.UjqhɅ0,3mXr {4^Yѐ!Bq^)ӌyo T!Elӭ<ڂ7-_WFH?mڙ!i}sР!lo]a0-H$ژ(xRXU:p9tZ :Dx@&E]e {굣zFp #} 8i+^z bd{jBt~WɚU;gDT;>s)=&8Žbiw(uT@ y+{n|T/>vmc}^'q^3 }oT\m]{1zWijB;XqW 쮂f1( ,LAfғ(g8/jcTO8ݜΦE'4 (;d*ZFM`VYo͓kpLrYܓSjw*ixԷm *F-\Unz^ّܲ"ȅ f>#cLZΉ<~$^J؊zS٩Jcv5W=H!%g^w!Po8^T\M?e\CWPM06JK|k|rӭ)44%+`w5y+<4+/˽0ro[* CE3wF-uː`8s#DžA 5|"9 4ny['ĢLJkڠ@EpM|jxD͐H_ez"ud¨[V0ݪv4={>3TO.tdׄn1G1GIp>hCW%SP~@JiL;@U<Iu'lGZAf_b&H ̌W٫Ǜo0DEԥ] uƤaZ@8jPqlL#yhDSUaϡIW>0R&gY!iYAKT(وSu;m[בTVsu%y]<\FVu͸ZJmesdt/kiS ^")$Z ɮ+y0Ct&;l-*e8uzm+!`nh yb>FőGsYyeI Rp7}Ώ礪Q7 ?-)}0ɋzsku%':.~ǼJzI8?2QAmUm緜P}e[d!{ij?o8Xz864wCuJ+-Ԓx!2h >$jPB n;q 1trTX .U3L??u.FEKhU&f=HN1BNOÚ&+P@hmXSP%JjlS5d_ 4-Œm$$kැ0a@XN@AfbFjKɆHϋs߾κ23Gɴy, zaqFHӭ 2,z0%3NԪ>-}Kq>vߪ. .]6K5H x`*54?`=۞qtqѢICpCJϞsw~O?b.1{yQ:&k>4N( zJ_Q 2S=!P_cpM%7.k4y) a4()+o~͏?NVX^XˈWbلAV7-L=[؛`Mn o'?H ~_-Ld(U$ ^/Hu*"sNHU ˆxҧ.kfn1ҽ)b~R#ELl}Ijx} +w_OJ-L9_8"K_kQU'Y;.n H>ɕnR )y00Uo,n63 ̢q @=@>C׏4JF8\"3!:Ai6rnSR `,%'ehi%"^=x[(f?u[o)jAƚ@ Dd`Km7˜vssFA.欤VTƩLB8|n!p~p~M3&ڇ}ֱma  JÄ"b !0a<3QV"̮{RO'9xyu-`KY5s H@x]P"q<^%c/2TZxNTZ}%ۏkI<-!,,GI_dd],xlVȇ~8Δ\""3Ofd7L+S XdڐK]+7KbD[T%&$D;X@V 8)G bkl547νz/“O~V>IBG$d5qZD(4Lע7vӄpy,!.g]Q^3t-0ʝL(0P4ZncdUq@ذg+C,`y,ʕokX_ rUFus53t}ic+A$ $%J. #NdAdq`MZ9܍نg$,YXHt@dӜ_)'DecFe8gj$sr)'9f[Se2p'ƥr5ń10XĮyȺ#Pi`D=pf!phneT%\IWp 4T0 FQnܘ,߮_h(R{N7xMDQؙC-6l*(W>?Y⻤wjJ>8̂ `Ew1(흵נn\i7iѮ*^t3&M߾@ʂ769MIFR"ZDj"Sl%oZC\K,e܆4 ƃ` 6j泷.ݻ &')-).^!leڎۋ= URbVf?6$ B7mw]P-B5Q N{ū{vR4֗FY2hwM"DW#įt"mkYb \25Aw}!"587+Py6OVYr0mnpI#@,LcOpqYUͷhɷ)eNخל m~|= ղtZ#;)[{8խL!04fcz+7P{|z ҂9cS:>`!~Vs21Ӯ]oer5{:XƒfG1336% A,hZ(!F A,TX,83>lpdԻ\@QV9 W6Q?:GS/Mڼ8Dⴼ-X+NI6vEDs{>_pց_U?QmQeo bUD)@M84Y|#~}zëo@E d;1&f=æΫ3^2exjOs) 'Fo`fϺ{w^&pg`]:]O՚DxE呬XU|"EiY?UV_p2;c@93ת c a-QlPk<<!Pg`1rR5TuۨhwF{?[[Mw;T;!>>1d̟V~1cz;ja2!F ѹ1huN@jO4yKgqb\"bW꾎ʵ;{)ʵ#LP|3<~ ||'ަ6,-ŏ,+XϋhQ\0Z*=G׫QtpϨQ+R0X#Q0l.KEX6%A/yVIMԯya+F}ӸLE~L?jK*^@4 XrD]H< `}駅;ؠp#Xy̜d:*$ݓnn~ꆰ"6z&zI2w))mu8\4zV]IR]dzOh-.-T K dнoa!^ ME셙<5O%uWZDYҴԪZ&]B :K!ܢ fL&n7 wK=t8H 0N#yi-Gڂ[ޛB|P3h@^Һ k^u+gs:X,):U)_G Ņ*-QC!EI-!iWFyK0o:<[4e&0WީSW'<=:JB%WC۞Lkحsc]qc&@Kս SC̜}܋U#wF]e3.C3[FwUُ /^UoxN_Uplp6q_tki!tΈ!ihqv6ma?A>2Rs're"`nR}G;Xs'!\']2yW<<(,aǛC ivg+=I7H7H G1SCRU!Gs@K֋ 7mP%a_ D)!'uY$iyZA'*dJUB֜*6|q6ȡ dhf2\t&K:ޣ^0=jО?ȃ+PRv\>g*v6{ hႮLdDoTx_]r~l/NL2NEg$_ QALFcӼn)l,P$;$@!:&\A:" ܾ*:΀fSDpͮ};: Q}+B²E. |l^ J 5MC (+p ^P@YT4&c$-{@NQ_`fa{Gp[}'h:ژJ'_h+: ]"]r/%*j^ 6`QXx!ȥe@|re1=}Bf7Zͷ3_UJOUWUՖrol 7F)P$ˀX͏Ѡw:I؞;%L e@sS xn'ymPzӤT 8VV]ӪgH{b]wGNcሺur5?^a[rBoI@`覥?}+Э rL_aH7Ebb[[2Mg~b) گ7༨3 `'Te96l-VՔ6XbaaiWG -N~a*:Y@_#gzgU5 ( ݷKą6{jd.)STVl9EmݏXb8ߜ f%o/鷗z_1~ܵ)e[Ti$avUлn4GPM3|֩cFk,6`ˍ摆qEO'w9ZT,,:I), :DڣiT%iԪ/TphCS{L\G~b^dkL,3-ȑ \<;9a!x=wӷ~ۣ5{#w&#}y‚{:=K#<*{Z\2s $[>Uk{aY, ELޏс8law'2[Mua1RTEr'gH>?Esi-{83 iq%Q+˼Ciݹ:>- 7ἤX" Oyd'(ZߜcrthMc  r!r.߯5U&AŰqe=c)[nO4w~Dp YU9Xx+J8oxeľCZb%zww&9>ӔfyEݤx*⥍pvU>zhe w:Z9*Juֿ<(Xiν]_k"kD#I]b\'!żR$D50>w*[!7c9S܀YP84Lr(h2ZKV_aXiڤ5ݟ1/y\N"g+5Āu5]wojS<֢ϕ$6^_;TRH+`[ԩD;g{^;g 3()Q"nnxŖ!l1N%N@ pC MS봢Ș '6_oJDěf n0{jXηPU]_}|ҦE+ҺLyE ck[XjĢV@mA_$~J&P'tkK Vn^|}`]X7'*lWۢeq{"qi&2(PiO?}^6/O+W떠O#[5ʟCNHuD/%7C{7ԣjZ˙u.@&8b,}=[酌qqN<Q_3%KXpm4tJϼCa;D/cߩ޷&V^YQoY-_|#1X2^+͌JA&XTKl詰BloS6aEZ6m Q'd ҇ۨDxH?gZGa38I,]R˺ia˦N*ZWp[~}(1-rѴ#@ࢉoXF% Q2vǂyW#"Gw*[ԛ_= *ʉ.46^|A 8 l>D|#.ޒHۗJI`OesdDkO+6a g0|,gIbzN{`c^*2XC7{(;2[K@/z)vV:%IpZ(jZ({FdVtֲ 8/&Jw>3q^o 7p}rN΄BUF4>|5d3ԟp]Tco:DIֳ @ݣ8܈}7^*QxrAC0k¹W*Y$ˊ -% Ύl[ (+`ގJ$zm^|*m*h; M!7kS$L#oM#Iv :\e@)t(o;Fzoe5Zd|8Eʆ!Ȭ87fԩP>s2߯`i[\<&>rR dCUT 9!+C':_n)dr = ҹ_HКz3_S*T\a۽|!j2<$Z-F] c%$=_wk;_'k#Mflbiar\|4ȄמA⡱R! 7b7]Er:EWQX[̪{ [UyEocr|{8&w?GX 7`[$e9jeeo"m׆$ F ʞJu9t]f?-XUJsOAz y@EoSI b]WƊUm.B^}'/7{N[u.1bX,_!v=z/2HwG7M(;'ؕoC7CCMã>o"#݋/8OlAM`rG +>kԷt,>,&:am7,ER|C)Կp'B&k5:WXC͵cRPyL6-v;{iB aUg #¡*<Oe=*j0=}r'DaEQ<(R% ;$9⣿"nAi \\_J%lEj`\M|ʥ2L3̎9BB.c[ݤw*Ys~%q Z0-WU샂vWa I^|=Y쑮?% RO :=XfBOKBk^(X(zθMHas]YCp '0{+X;?ټTKڪAr;nK99_Qu%st&2 C ^bXyՒN =(mv %nd&,ў!b)e"=hŔO4xmw+N: LItNt3~0g5>2xeR>eHC^n'PHU$ o93e֛EP3륢滶wAy ^AsE{>۸MXsuQ9f GQS}1gz--`*aM!vG< aId}54.?ZPbgZ*n@Rc& G\C9WtiyZ,U^NzĽbuB̛OKg4BXGf4[ =StͯǾtcZLzBoGPT٫KRuO Nj%ң5Q:1 Ls5իTdؽu8=]QZUgHǥa[(UT -;٧mں%0܁*r!Z7LD1]8X0ᕌPC;4-BI`f>y ,`=~)cL?ŻƁv^|^~P< 2a)yF`8oQZmF`blWow#Bat^@qzKW- qZ@3izL]?NXi0V[- 5d(?eHw RB{|bWdT+On]Q$-2(*:dwl`ݙV">$FJ:;󠩽pUBM><)3~W;G9G'txi{4(w (ab֣ ُ~1•o,1HWYiT3mk4eW싶>xp2҈+/}?H*wZEIQӞܺ K}a (}l.L΃4^&GS쯤n4^ gDF,%4ǔ2=9_:Z#ӧPDdWl%b̓݇$C 'LK)9Gds D&{,mm=ICBkU;H$@Ei\&,YG!&榊(5,9F?OURxhbcCh(?Imѫ}ߟfnх4U7O <z+Wb7bm%" h#=Q*'u"CQ=W3J&&P>e;3 9 G95Kc:u~}gicc7!ʚU yTux}PAAn_H8w?ktԵfH-y2zng9&>8F X3ЂZYo/ tUAXbXrz82Bq;^*(+[~_}0'vjdžRWF_v()b(fAj{%d&vGfQ#CZuy J?SKcCǢXשRұW|vm56\+y69"v/t\OU÷DJ NFӾTܹ8K5yU,!6OĊ '@]~Ǫ h݌2Mğw Cu*%c/Dipe!b @"MAķk# i;%V c^Ёq]4'>ʶ5կAR[O!=*ΐ黂gRIcrm#NqcoY@)"%7\L.dW5JZf_c[ww4.Wr}L牄Qѝ7Mri;>%^LyKymz2tFJS\) cCwihe +>&.a'p( CKЌIL2!~[q^w1"lZ }e)}j.%:,Cb}}exzv1sH q& %:籨ksp }4w}cM_VWd̘Rfq~})"֛"M{x8B "cX nbnwL8mE7Tw$5njՖ^3%zu햓2|xRC('gs xHc9Q^a1pieCb78DD<šK9j5Bᤒ3ɘLT:Y>aw%s-ɘ?@kAMb7% *i!g=1xXRDANorBʉ8׹Nmź'{ 1!G8nk ~bJ9cMSx(S#0y%EL;R=})؅δu FL[m Eע_I 1(x YP9Θh)Ì9x&t8omm'HC t,$)l#- n!fxKu ᡥ#vw`2 o(Q|_"; $H_- e;k6aҮN`LQ{ 2p9#!M9I{+]l >PFE\D6$㋎[QZ  d `xȇ YvmPhDƋ͟>ź9qc:%3,nNY&K̂Iy\= /\{%D;(.=?{Xy$U h6PQSmTp1@+6ܴG͈U5Sel1vQ rWû*.^ R6rU>cI$3"a:q *J 'L;I,eC@XuCgC{pa؀1DI]cyзCl-;2 ᯨC+!i 06j݋}>驀|q~z] 7INfJh^YNB:فE-Gx":|Ou۸3ZwB}~z!0g{q9VMVg?0~5n=~%y_6-*߮BuEN q&%sfސsk12'$u{PIT]V2yRY>ńs-/0NVEk+2X~ V1cKJC-R=CENٽ¼djF(^DVB%StS #(KZa?TVtpg\n:qSk0QDҚJYjʹs)&] Glx^tsfbml9o TM&B56ͷ{n #ES 7(ojV1 =p/ʧS1x=KFf!q繆Mb̦]F4m yb|Yn*u {a0uStFjTFx.L&"mn#s>CX[t *h Z_.Ξ }NОi-S#{b1/iuRCGt_%,Q-V_NLhPD?.Rpי {wJby2R^4WDڷAԌ[m;V5$)ȝ⩷ teQ/6:&delUCqpkxse"K=@ jj)|#y9An ptH39ύ9̢AlZ:&EȏQy_fctLewkGm]0Jm&0S75G!m=.\gavg7ķ-0jfٝ?[ϔHP@T<ԩsX(%0MxtJRX؋[lumf l3Ͻc;',߀ Er ŠQxl 9?7P/KDWu~&cLNKepNR C0kg%{2l#mvuɊ8yy V)SR2tJ'AP*'v[ om&;RsV RiDh/vȺ-o8)A}I_JZ׳K7Pƪ~" $  zR)ce=tC%?,KZ,!MZ~fhW%&;1>0jg״-z s3@A02g O¥i.s3cˀ:%eLCv(/ 1ODz$C&}CG}0/ 9&8zhD~ tX˙MHw#IP j`zF gI$d??٥.ElX؃v_oզv>AU`u\&ۂs!Q$h5 |UA|v P¥ٵgeP5dlyhٛ/zqOi-$0dݛNrU z06Q-H| =5Y8L R(J[w[-Ypyփܿ1Kb} *#<DX_ԹW"*9,5ԶSC\@!0H"Q^^=#/V 蔶ԟqh Y.3 4% evzоi$~Ja#`pOmqt05DQ/l(fxJ:T誮Ti޼ɶczǕ .uJ/: )٩`nGǮFFA^,;Sҕj&34BU*\t˕AMꌛR%;iTkv}6g8VGUu .Gd'_l?t:E55OecPYK ˰)8bjD):|]yy /to02}-p#5|VM=' g@d0[rXֈOˑa ǭg4hץpc5W.zN7  A0qg]!%[݆ ޕ\;j4Qo4긆V5)aXlOL{J(4FSKy{"[[6?5s̹C}lZgTs| 9O 2v8 {*&V@&0QJ lg+ȗ"ۢM[ Q$[.sMjV\(;hFѩj_Wy9"rsi{)Ion>cHN \JDxނۚۖ>Vum@w << J#P!`݇$Ȅ4J& \ )cL\4J13@s'#;lrdI"i?2ɫUu͠92d:Pgų 0ϭueQ+m({5Bs˕=³TũVMDnFk\ yśq!MW+j [~1{r|. ,Eͭ9ecuvzi}ER(&s٭5_ILUۃr_ZbLD؟uwQ~dVg]#^OU[Fv,vr\hяB2q8`Xx&̔3R HE^HU@A?L#36叉~c υ/8Wbfs=0E?ړTQAnI출2#as&,'\g_c=XzKiLt _|k<:#b;!hH)v$ҧb9 oɚ鷿Lu @kZ~.顰YbOZrXZ~̽Fg W5C 6bZf̕ rv_mSLeKCoGXOhDO!ۦxZθlA1J6MX}R iy֩ZtC&X.bIA@~@!ӎ+^,x%35 R@1UP쑘>og/UݭK]Nl\ʼO@q1s{mP5d<U2hr/E: <<^,Ўߴ$.y ~ h,>2Cp.8*S)> jڃA?80ߌf&6#so;jlvVh_5 IrSa_mܬ+n[UxXƇ[li rCΛc+߉DQr.=$[ޛ&Ky\:)K'_C锜tO?Zȫ0K7QFw֕1l08wRG(xsYuAFd̀A,Y.¯ 1:82,C3Tk]DA6fCZ(2ZP+ DS_i 1 [oa,zᢲ0PQGC/}^-mwȢ 1I927KLq{ڝTY@d1E/+$r5GިwDB=weđB#-| y_7`euEZm Ą51e+F֛h~\Ҟ0$eڪ]? C*Dxº'czYňS7.]00{&zaAHՕ*gLKvKuӛ?7ɝҁ?IJs[%f%{v%11c?NV#Fv;`>ʓǿf})g! _߀EuwvvLU[_e?cd3EJt@< r}ߎ26'$ 5/T\,,rz6Yf*Ԙ4q/#P2: \uL1 fmζݘBZ*TqS@ y\o_Ud?൤yoDu '(0^dmw4"c̵-PB_\I{-WDsl$z#v"pHxJ r,kѓ/&j=1Ի-{x]LL QX<_r uFxכ7H}ՆYA"?Q9K$ Vn(+d~l7J_zJ)aPLGee!Fe݀+-~lyo3(hnp:s ed^IrƲyx'0$pͧw7CbC%EL *y%ӆӃ&2+$8U*Q} HJ~f0xl:F'/"B+3Tb/hЃJ^ Yo0+,v O:{Ԯ9-:eVk?4i^?K3k;q ׾䅻8js=Ǩ1/ ~E/ ~뎰)XDt)<wP{V Ofв-6FNB hWUmdG.Cqld@b)> |煈c";iyn)6шm}D~sWc{23GCu FG584~6' Sh̃e!KA!"'2tpj E4R:W刌NsC@:98wH ir ]% 9'di\ډ=9 Ml<SK Ln~p&y])\02y4 YYS2Rd_kQaL[,UCqo ; Xu½W̥4:T|^MO/yP D=֙vi[bՏMOaxG9tHP6No/ ppC6|R>_63~6Q=T>K`:D|1P4W-k)<0{_6v΋]B*H-Kqx]T-:*~8=4)G\BSЀM-]!A\xw窹1z1Egw8Y ~p2BS^֭͝esd27&4+Vɍ8xRY^ e}P˸ꮉ6V߉;Y33!`mr 1DĢ:mULq)$Q3M~$dOCs jKδa[(ʱN۽;fٱ GAcGԨdE@qX+6K';e-w,OE"q$HUΣAo;Aڊ^3vv=Inb~6Za^@e|>n{XYަw<+k`tVf{2ZxߙU-;߂2L2RS+j wJ-j"Nm9, ~QJ|ͦQ_e 룛S*w5 u2MG{!?EQ- ʁ֩ eCĤ}񫐊>q҃W$\4%麥H/k-oxJ[D/|ikoqr&3XYH޾<A)lk` lA]zJQpXa"@ _m6»糧muZ s19ǁFxQwQ' 3Č&4:E8 H_}6b d.`Za>MZCq| 0h8tHxo2)uYm4a*jsF >%S&"WOMͺ(xn+d@V}ba{O1%1&-\)4Zq.kA}~`+h2БPR\#+ѵ_3T:u b8:*R419m9&lG6BV#1;Ņ zP"8$dpT&pL.c0Ϙ)!=ˮǣ5싔lVr& '*Im|J{ؗ/َK/~l% -ygi;Da{n[x[ZgiV&[IRXq 2'6zQJPڐ;Bq^)NK3NSY:@BW's;V<{̽6q d6:v[8'%7 ?J);lSU,W2:pꇻqv5NRUy(Zn(E$4.jE4i`*eAӣDt@;˘G/5r>^]}ץ :Jߙ泍5wN]}ĐK{9Us"NT\UIɁ3']xʒW;IF=]p+&di=IscBWõI=!" Dm><`r tBY'r|$󨗱_MftYEQ i_I2,QZ[T X6ıWe,0`qұp>>FF#ois>JptJ>hoJK2c' Pq^k;nvTyLbiG'Ke$[ІP ֞t{ysH3eX&ϊ|nO Emgjc-C'2P/I}R]N- 3 e*˜8(M1dES$&@`而KQ1;'X43ɹ.)sIlۋb" R)<$Ĺ \\}lM c cDl[v뮜pxD סu'ހSnzI ?־Y>a¥h "RPu_[W#,ƓWk52R||N-g/lܫdGq#>@>4"Xڷxed0#DK30&# k>\ Rj54f-H̦~N@߀Xb]D S:oUȥO@r͐hWMCK{R5qb5]&pq;Wv-gZ.r,V3z~XyZ;oW՟FPqV />V{ mL4zӨ;{閴$S`B\d9f素EOl#k] ]U0(Ag<@[``[*ݳh=`L=`됙W!*+w5 (|Čiӕԕ61kf2-t7dwoI81H家{QU)!`V; :tsaa ocO yGMhˍ!rieB;Ie*jZ6SNW]1^suLٙ$!Pd@]<:c @yG!Ig @4Mc?0rM4Z+V;r9 `wi⻎eP(s*3-ɢå?6,CGKc)d-sg8WŕOr@bdM_ f ӠQY; &I3y=Ot#^ ؃`?eRrI+&:j ݼfn.ki;Kq*Q g!FdoGQWw^_ح %\p2@JC5#S|&ywM2 lu[z) :r Hp wY=]$JUb/8 sÞ xQ'E 4Un.$ְ@҆iOJ/9*8z/FJ j p?\.Ԍ][L=ӛ17ȗHy$›fx:ǜFs= "6&Ư+K6MzErg_*{`Ӡ$)ۅC -BWpv{=$c&;\~wAq >=P5g>Ph5-u3k#R^-o_&cOF(E7r YunI $yQQsǘG(_/L׽r9'>UkF#F-6skqVܡyV9ؽ(f`7 D0U㖭}W ^S#T{؎PJZ%҉/jŤ'63>1f9U, cFO9uV4k$`Rd(+Qi-_v mQ'fV! y rCyxZhV,;|3 ^w0erjT|A5'@/冈=f̻zp|!~Ś=k<:w5H%/S.\n%BD&El>w~ҹ۹s GSJuF%^K><yjsrYD[<~zNd:EqRFz23fg]Ds?EVU5ְD"VP\``g6M?+.!-Zn?OgfGqQaa!+H}P׸A)SˤRV]f ^7, +Ŭ de7`z*6O5痑79"({>+K΋Q}ו ,*rqD3>& ІTrEQU%uyJ~<(]j3{p1bV;ZRՉ#nu2л'X%ǠW~ORԓyqe$X@c% DC EZ}Ȓ_\ ըKmuX=ۇ(ԥ-Q3Bh+/ak2284K˧_wUֆDF(gFRM;鰮7ꓳ@T 䍔#qc*f>mRAnEm67Qol|~fBkCښ *g$nl{ #wh&?}BvXDA &pV|~|~p袣 jqM.IVQZBDhCC'zmbq_$uYriO@]B.7B5IIzҐoY66 5@qa`,YAŃj֔k  8X,(̤MT]z} C;uyIȋ:zj jڶh h(ްi^=\Q_\!nh{6oҵsTsZNvQ]9Wd?KM`漘fD!P_Cgu6!5l-ܝa6p4 _#r-J$îY#--7|ߎs]DX٤ ACi A(rZQ}BqkO x{uZѴ'==r a^ Z{8 EosDD#$3 qY,oT(nݑ&Pk{Opx䡟ֹ7vr'c9'' q}L/KōՒ0G+VυJ.ݤO]GXW_8Z;2$8irBJ]Ul} P˙Jw!|ٸs?qVzjMxT#nצ0L\䔭c{ " n5:J걎:at <{| 11GUh=gu?s*rH@U(ro41{ѾqVfdc{G4^$ezi0ScnV}:67GMd^XZ/WL64t^8jw[U8$u9Jo Ɇpk#i|== D0h5s$_)yO ʌ,-c PI͏E5YP iǿּr9ND:)*x2^IzdtF)^8eˏvu|RCLy\d jf$* J{R BJt_}O!6{ SgZ'Ư(T>߾G[V񵽂"cJ=a7yXjmk_B] ':7ڬ(hԸHa!aj'cbVmKfŖM戶ɐZsrqF:B0e3ʐG!#ͥK?%cWR@7*όť_Q?dFְTI!& JLDw&l4 ʸJ?%Ihk{!x6J/e"b!-f@l|V<85<8ntrFk 7D{B`;dl n[8lK3lv_ijZ7i ¹xaLR+J.C1re<8M]J_tg۞`ň@\5_:^On=Oe1R)3pAG,l<U|+V7k|0n{݌$mPs}q3^;R|Rδpx|-[1<;tۄ$r I]QK_]#"c/2TK69nNɅ Pv!0f[kMZި uysO٧<%ȷAB"E9(eXW̾C"[_;*eqZj3OTJ3S @k3N ?Ihσi 2cT)CWԝe |`[h^ G`ci볐XpWPE+,X2gHd_4/9S*=rV" @4e oGe6SaŒΎٌE {fKkiBv 8mwѹ^<ݔ~3gmk+ב_>*iv,_H(EC ASʥCբ:+u陛!7MP༎_;6;!Rv|BbJټs)П"$p#̢gZɳ B# ̢#{K} 4-Q/\ۻ v'chd@!_(+VJ]5?WXjsxZgk<4aW̛đRM'4}= ѠXWJGKzb|m9T|('(ugZKnb!9XZHzzv/-uw҃bcce2'_|]Gbi|svd>?09Zdի镸Ug fөRM}G)U-pIL4vFͮ-lq^g`o:p#77B+HAWjիq(w+I~[bvgRnsOZ=37/dawĬ,ˠH<,](B$|bP)p;2I7R9vS[K J7@[|Ilvoz:"v&߫€{VUz2E[M;P ~|Pp 訽])p,fqCȑ Q`4U弓SD45d1gB"1?EsY+C#@?8K5 "1 zQr);ԙ4Ƽ պ͈Xe5UcoDD:% ;^h]B:3;w7zOPD)]14G>IJHƆH:Ϫ.fkA8^t5/x@(̒'te#܌?= @$ӭL,J)0/ڐL^@p*Y0aF6hÎ$݄-"mu)OHsǣzz!f=ʽjW.yj1!!vyK'OsQjؗ֞q/ bƂt=^ q a6Ϳ ׊ $1eUu7id0S+EO jX5[,V2u'D?)jnʓ1qZqqMk(ѠpTm'GKT2:#a6Z(*I(~㒋)pыzm ^bYтy-=yReu)rH pԯHJ MJUn0SmBbY(!wG"l^xa38%q!*PV6EMNINEhͳH)+,/FQlL tdv /o}'_%31KBV9/ԹXMp$pLFo,$ FCNc$I.=‹z,e#KbQKVl.Mkez0>tAba00V5Vlƛwd#EQC' ֗vIo^63;T׌^TtxW (B2n@hˌ@<~ $]vs=9 Bd.LDIs%@KZ֏cT3TFJǙ.1<17BAdTڑhZ-t2`uԥrNx7ec[R@@<ӂ s78旝.KK T9my[e]i+4 q!(eZq i$fIά #Cv]"1PosUa$KnKMZO&+?{lx })v 4@4j|+ Jvꋼ^pmW]:[e01(nG&6,2f#sY<B'K)0gU3 %(ڂSH wo7,#{P,20l!T6TP5O&M^UL|U3q+*׏ʄ5ѴW@IC2cP ~x M+Remm:g'B9Xv-dy>| 3_k"yҫ!M!RrOa (5# MWi#k~x;f|9 Tx?< 9mȂٜi +vX&x Wc#zT\o2R-v{`,+9}80O\ދcrnsfbxzI. Ʀxr(ʒjxךǓފb>9?נhhW)WLәD^?lф*Oq\/;~r).h #]2i?z03xI1ݞ\vJ&i588a}Gµ_Ȱ;S MQ>h2 $&mK]n$k8 1)zy0;mAWJ4`^ȶL݀,f_̢ddb)O894> ,5[ؖ'+s?/{IC:;ぴv?5ʰ$A :koNh>h'p"IraJsY;7х5ƾ $7S&ėy,.Do&Txω>h晅[ӐȔ-_~?vEh0B7XE fT+LMqwjKA>>5/ rbRxZx~fG 䥷SoeDe3 QOPG#y|Qk;9Ou7k[яKQ N$ج?9UJb4N>Gm C$열$Ep|MN%@1Mu{9 pf44;M.+ qN'Gwy55cJǞ؈=!BKŝ9ҿ0|U"zI }Q8byfԪ"+z( kĘ*!C69t_/o}gɚ v;uMm񘉼-jWaO۳+a߹4O,r\x4 tCD6J?n$U߈mebm-,:t/ ,d+Z&İ d$t3?XkVz/QִR1`bsb#zW\h}83+}SM: AzmNOץUye J<Rs`k2yBq*Zg+.ޏ9_po9wcK8p7o`$s^=lu<2Ua3-QewT{c+;svabJ3_]u93*qٗ؛,vO5i&~5JFhɰ?UUAs !,d%DI)GNk(U4.Y0ĦoJřo k.?W _ZqIyo݆̓KqbMMیeL$QTI&?|NIZ;(@E}E4T9K> o@7DHT$vCIF,}y/smM?œ#;dI0.Bp9?‹D^;HʌiHFZO_!!  e "G.-tnWXqCD "zPǤI_@Ɑ#v%vLFG(e>]KYYNzRҢߐrFK]N($^d5WMM1PAl 5 L pvI _>Wpmt8ݫ+"W\ԗjX>樒0?kvV-;4'Qè@2H-% I'1Y {3%BW'I%eg#2î}}$ pDSv <$VK|6&WJI[/G'o|'~3V*LP5,N!~b:{dUK>6>bÏ;exRLEt TB4 NH%# `Bqo z\ Sʊ]NSjԜ 46#~=bŻ„'%~xp9 / T㰲it%ax:nNݑ|o#V5 烉/2)f^#ͮt|ThIGجuwMHI)unNMC]l nv }[r+ƻo:&u&i`gbZԠΕ?DSgU7@}Du:eq>prވ1 d9P4ZHf|2#MWəwA,UvRNv}?|8KhvY܌Pۊ}ŖMN It[w4R)]X)HY!#P>$xWXIgк7ݫkηYe ==1wʉ_;NwT"D [׉(I߭YR] ݎв^<'OK/kD*X2lIMiHy)ofH/:h6\C!EeRU@ 5(:OHI`¯_O93mbqhݢ v{/,]ZZOksa.H;{HK/QWOZ&œTL_#ۦ ،;)ς ]@8Yi072Ù^@Y*Һ /OTS g9yNhѡa>o͸=7ح@1¢6Au@xT2zo*O{ʼ~'dA&6jq^y>8Np *mņutB^sCs BkRtt_0?#=]q~ ; Dhp;}=0΢"2sa Pw8s3T .gh {zNDdsy?XADDr"Odmղ\|Yh4Q%#ZM kcƋMdd DZw~ڧ> ı<.MoZLL-wb`ӻk #:ݴ?ZaFMԝb,ޔv00BJJCPiíIu) aH/XOÄqQTQҞ0pn^-M Dp#quߩ'9A"@Mʐm&gOYr>~퇇: (b!;n~,-Dk60̕O!\e8Z)B57=ᤠihEV*Ԍ>Lq=%z %hI-n!Ode *Z~MS_q7oTʆ 3 +v vOq935Gh#W C9VDd!T1޿t>5[Ak%A |`e)*F6_[t[5rAάɑ>ͫ$>^w_uH ZO8ˁ.*åju5MKTجw oT)K# {~QbȴI,.BMאGV D;sc!d'$/چ͛4hꋸɺ*7ron#?2YQ],{ð2x@ͺ!װJ^ +ܣ2||}6)xv9ރ3MG ddކ&l4ª==)T_O(Ju#[IV;E@Cw0GjQ{Є~%1^qStWxZ $zo2b`oߨgk2 EuKPJIF= ңElj@FX493U5'DI+T9m=FfB2f.oRY Zw! +WjU~g!<īь 1 q%WS S pr4&Jys5x+bzƵ`>`j@Wrhye|n\E2qnjVp:tGՅ~Q9?/dhX>VRO#9VF>tHls3FݲQ(W-l  d9^&Et?#K%:a1"B6ѯGM!e7>47JԐoKE SCJf'X.8OiPoU~ ݾl&@ڋ$ uzy_cjK_#n/40^jpql(U!nQLN 4plZbl6KhD$t&gGVV/!QqQfGl~ |K|\LJbR$~6jyDZֶz]y2X>|aWs;4_J?,tфEޓ4DgkcT"cѹ5 8H4vTʆ>1'iH|Z9<|]mrF iH>{Pipn c :ȤZmn>4Ba}Q]}Km m]8͏H|{63ۆ$#9p:aGŭ܌,ғ%K-vҡ%Ji gʇ+uc ٙL,)[ʠ :Jµt#\M5 0\VLFco2#gxKQ\҆x]Y^ϩVI&EF58 u=Q1J?Ы1FQ\}k в>،>mFWXаj_)m,H_f\eMkHpp$^kߒ{(KxxmVx@sc;䩶-ќ xp5c'"QjQ*Ka;]Icq='3cO мBuO<d)mZmWeL- GV5 c 9<*J_)3ܸ{]W g{b>YVU\=k=@fy _"(X NxrV@X&FBW݅ݝ]p6K6M=ӂ13dgp(*ZvCB/ DK,fEJh^zUQ S&.k84ΰ}kzd&]e{ =71޺YB=M}2䭝mM|GY3^nW6>j K]fQg!zsodAF ןq nyo]9[8_` )|hAhSy8.ʗPoxZ-ϥX;Nꚗl_=yNz-P~jwCOUS4>i 8],gG RDw B!>ps1.;Dݿv_;K˿ nZG*X,;tӸ|H8<ń. BL66';dhbrRK1J.^H؜qnddf#5*g\0WJl]~7wo*1Z&e'O]?a,gG؋)`xjR|n"e\ڧUe՘J+me jK: `#b-`'"ӧMP0uS3g6&҆)X}?$co}Pl9 1"uAЕfNBt@qnQjSs1)鞵vݪr&Ge/A8hHɮR[=Vt-YO Y]f<\Ɔmtaَwm^aUA())o-z\T[%lqE۹q0\c /٤&{w\IC7{;(wwƣWDOC|ho1nsBӁw']P^ ZigEYW#%ߊd_} rpc]ԚD]8v7S=m f#:f-pb}#FOЖ3:) 0!0+14 @J [-oLjP!Ach;_sP֐}:r۽똗zFԥp4Rlt+ k'Oolkݻwܰ W--9\aGG鐃敜 0#ؾhԔ"t9ih&zORAum@֯lfم2ct⠰{ꦦScO KKN-/$%+<֋ȥ-$x.D?1W7<_T`W[tb5?JE^s  F |뒂M/6T7+&:BS\ȡl-U['ϯ%l9?Ճ 6#)_Rݽgǂ1GPAf$(̻O}O!ï 3q$p;l 1؄aLJQXÙ̍qZ;x:3BzC4i>o7KB:1; x~-!6NvU'>GwmKr O N'x~Tq. \ޯQ64MLC#q%KhTnz &as,@2<ݿ{=_`M8[4M)z!a-Co8 ^s䯝Mf&Gk-8M]Gi%U3S/„1XKIvWT;2zwP+k&H)G5i "5RS|P/8o^җf~LB\ *_`)gՇo~ jYpcn :V]͟T־x*aO#)> [Ykvwv)̓'GqOxC.%r!V0]7gԛъT,w)sYorDn+ I]dC B$uõ-{-46EFPcS)Rg |MhN&CpOl R5#3)r8>݁PhQ+.+gB̏QU c@ +>D!y7 cW}UX˕p_\K,S.2<?SjBqgn -d8BU"MITf6Fe^SSi ?⋝RIV) 0D;0ǥ̆/x%.a;,D~NaJE>uS30Pece#$Uwu|=-ep)ldVce,UM%5dQHIpY i5x j clx|$UšP$PmRnz:N 4|ǒ!1vp3]$`4ЍҘ_ E ٴ`]B͆=_esD=7Xf f-HC4z i%! brhYN+#1% .P@4:1t՚,2Z F2JS KOr*$PNսx Ni?v% OGb<yzGm6VS<0/aI9XHcZxj8&{-H&T?\8 Y ' A|`}H1ߏ pX56C p +@Zlt֕0NJ,7݂yj3SqmZYVG-Շmϋ'R3Egi0C Cto[PV W*er4\AV(gjjAu]+0XILԴ}EE~m|- OH,+|6^U#!Vd<&Y{0>r{qC=}mUQt,òCF<atwyxs&g^Lmϋ>oOǓDyPvbK`9D +Sp[6B6ͮ~G&&KQobY Q5Y#A}/E(O#:2,g 4u)Ûk`*y/c3*+C 6ȿU`O@DiJ?x/U@hPu 䡙Wiu0_*`A BG)۳?R h?hNo6ZR)NbvF-h# ~:GE׆b/Ю;6ore.a9"[t3cnpF0wv)pNC_-HC:8f~D[x( %YU>ӦNBj/N^^CE@B7}R21(FDVإM!3-.;Z6:ΐ Ne~_9(2]͡Hҍ/X}Zc N [:z.E\-yl}Y]B;竱O'='= ̓:FDO^smҟ^q,udĪ\v.,ݜ2Rmv"UqY-Py0%ڙȥ#xm~dTҏ E붵RHX.Ҁc[Fv2,Z K|HA!f"deoqy\! h #u--]`0L2<,kLQ͚R#/8N9)(O,=3 P"L!rK !?%hIrC7^ JCXKbjϹSe],]|fO>lBJbEU6Nh,}郕X W42r2 $!W-]-k ҋjªBܯmu i:!>9IJ4hiH٤YBdq[@e:*>)U)4S|{r'7^PP>2Ώ8YWɸΟ !x)%ҩ0_.0{ 蚫 Pq]XJhӅ΋}aZHr-[~o$K:*$ܲ0#fUm[D!݁|7Giŀ0gRo6>l}Q MX]ؠ: B1ij,+PтN{HqyӜ.'i'_!f"#\N„\C0uV}vd8QT_ Ȓdtr*f#5`F8(CX۪ Gm~Q?  R9]GMyEG23oQ ( N+% :jpmyT#|-i*/{'a+:ZZx:M(P9GV'0GZl(Qj]E_<ĮPo#|}5ܰ%V GtҢ 5t'_z3qm&K5ҽ2?M*# :$@t_ObeC_47q@u ^N@Mj.8R:,뤣 6WAD7]_;3 ۣf8^kpتb)}0 wнWğ?qɟt,)оu "|` ]gߜov9^lP̝UppCeEoٙzg+ ke~"CӕjX94N ȲYz*mAOv{ (d]w~plf M}a/ʊ7+i^jX8g/! Gdo N[qW݊5Gנf;>@,CNENN1Z}0}f$tۇ(}<SA&TP N7ܽ6ǫE,HE7t;)ћV3Y|%yXx|4.k(hab:^ wnarg'N(fӠq7{/8R./bL JLP زGo:}\j_b87i0(lN;WnX~PqO~Lϖ⒝ߡ mrGge8袞VnDÃ6f&³Ρ>3LO5dE8"vu[(^ưV<y˘6;9qV`~J5CZj<]oLޥ oQ&Fuy ow°DX3S8F-tjМO쮷H(5diYPBEs\kEyJ<(ƈ=v|Ӈ).NbZ3ڏ'9}| U*Q;Ik'mtRnx'ER?fT w`uHƴGٰP+w E>}C!S.w(pLהybɀ".DjY8 YATwd.e(n3ԸN;;F'mG 6~yQjYXGT_g1DžqkfBe/:p9)ׯMRͬf~qDg \knq71];:o>&(m-+q$"nB(EMF㸞lJ=p#n;Ib1]CO3D;V.J\ '͕V@PN@᤹dT15lOLQ GPQxoXZfs*<Ĥ1Mtm`:gn3B'6dVFMati7SO3lԚwBNPdz\/5 'ku$<{ *酤&hERѐc9rӯ˰D(I[ܯ^Q VR!AKTUEi $ҴS.0%㔰D*> C}g>Ww`ib  T?̃$y6]Pzz&bT`=k;Sƹnߝ \:T{C=6]寪ygDSNu`{>^"l#]Jԗ ˽nua>Rj!I=6)Zd R&C"tNH($x]* -`Bkll9e}7nm|/Cc D.h;%?^? x&ū{nkÐı sZheXȡv~ ;eJ_&Cr^!÷؅ /2;@hl1Z)|7>Y5uةLf zj!Z݇ ޴j1I%+RaK .#ju:S )K@xOs]kzj _g,uLe980IÔN8HSʬ}$L}X rG{&Gsۅ4K ?'.e 3!&~%ܖ7'uw>G/`RtJ6 1`Kf'Ɉ>67j&yû0 \t+4 +YG?!,woW56,i0C賭` wOD= U랱k/[W2(X U%ی/ A͗7Q֗p @[Mċ~ '4VN1s[ XM*%[@yR(ycoj{zDa+C k;q0 NH`*=ziy)/4xuAr)Qw! aEˆH:$&U#g"lIPsn\n/V1&KW MM+b_J2C!9dB$r7хzTx '!27o:,knLC'B6Ә&v/Ί5=C1}M䨵_t2s0 V(p/M]0X'O3 P܉έ3 RM,G.&.QꍞAdv9V&Ł;%(3e@2seC(e/Aĵ_D:Iފq&xmWq,fՅs#:.U>}45k{-dRk]sCn<_ t <1Ixn ;ف?!i),p &YƢ-L#(D0V&I FG? okVN}{wiE.\e tl;k*hzAFCQ*gz pWcq@Bw@7dq5B4:ƺ>OskAu1NUnAF.'CPw%yv+ HEŸQ+Ϥi on`Zי~yQTPh_BmU܎dD 7ؾ9].$B AʮaiChx7gX5U_^˱H ՀnʏxMVqo窲>2=4ٝ;q;Z%vu$6ũؼgAU3+$aZȌSGO˱KB1`ԖB!l<MJPSBO p"yan1N5}Dh }RJ]N h/xRyݔA-hkf8e 릉)V,_ v1XVM1Ei>e~wR){<'?cEHM޹yA1p=0$~Kű>5o+ݚaq:8W&^qv Q+pKU yo5@d٤dKJ5~7bLK#ZҎt33늱ʌ]|CC޲'m*!VLAQ-U5ug08mI/lwkE%OPw#d)9BPƦ`Q@:jCv0g*TRѓq,Uͥ*x/MFUeM29UO&||baKq'(s0LA8QOsD"gp66hKT[c:$2$U1WYg%qtϱUmi'colMQ^U@~DQ4J}x 8 ZBx߫NyH,zH,#xӶL2ƺV%8bћ{lC%ڰFf jCvybUZnD?vB'8,I  fBbe(2G^DDCҘűY;oGȂ3Cu5r(/44D Tfqʨ+EDdZRHw~?X3%~ŒŔ 3,EQ|@CGL<Z~ں}(2QEdIki|`9@ …lCM.pggz«!½pLg3S IL  5ľpHXQDE}4Q}}v@ 2BWA_#\vԽ;G%&Q%{Ÿ܆eM$r/'Zf^I6c tZxhaXiQg@3 ,QgTJ)0%mXSJD0[S 8SJ/|k Q, 0_$@ h+r̸>,ӝ/ 6:-[R.˛1o 3ʰb]??`Ri;]P>_쨨<7fwAl( +r_EcUy" :@`~?IZKpCXٚwx٤6 ; $; m^g[af&}Ǒ.-< @[&neB]8)C"18R8߽ec|#4胗 80O#8TQw~l@=" L<}jOSTnLM`N"\jtSd%.s ޞHNU3?q xKYuYUHij';~PX{P-)eX׎H= L}uJYK8S_g$]< UՍ8Th2OaE.^E٦d PɉޞYjR$5˴gþeBޣ'~7f6U3^`]#5<4GoB H swFG}ĕqh5?'~$Mau.>$zEm94\К'vN0U_M5݉=lr1n-19S}0hW'b f*d{K8؆>s@'`UBrEfm{췝SfQ1K2g|8:NJUO2x@&z#r6Ksx+gv}59bS H77psTcI9`!8ïWxDج e~Ja$HFbKu͌"X;PΧu}h+ո=> I’ L?>޽ұ~*ˎ@M3+-e?jZDq`A?U8 2l%m9Ep2 aXP䄘IȀk9i`2 ՞>`QO3w┚<`2™wΧ ?}nms x_Coհ2H#U[)lgؼm o' v-̀=2MlX*rt$o> jg^\Gj:õFܮ}[x_y=_BP?z?n6^$__Em Kڞ oE }..֫|p2T6Ybq/C 󩪵5qu Elx%j)fRt CBQ_?#o\a_=UV*dX`/*s"+B~UL+$bLݮp@"0#_^ .ÛPwD[c-a_G߲ cI0Ҏ s 鯻"1׏7RYzt\WLvҹ*P،[u [X9#\ezS!NXJ/9figZ.֌#1Δ}ђwwJqaZm!0A_Pjv~Y=ɂ'7|TiNAY{Y$(FqHC:8v :#3#e<^jZN]b[Ѭ_d&oY""/rfI-sم6Ppm@ B*B[(7OwQ1FR=I=yPN'l"cLǏf͒TNc2I]!l-M(4pѪάk_{uM@# Hs\0/:p3e1,`}> 4yToK3vz2: |fϤk]8!ѳ]v}zu?QiptNڰҠOI=QKWekG<.\v>M3S|7)G]aH*0\O-?r>uH'Bf\XFi|e*V%v~L//J?c|yaPYz OW7jM\T.`̸]|{z"be+{}эXIҐ)fsFTG:Wi+P' 3$tIe2&ѣ]w.Cv<2{J@=@m߬G=+9}fRF|adڅQaUZSgR~_6~T+- Pr:of~L HQ2q7Ze;êz5 F飭.jyɚ5NzNw ]Y,Wrl:GwmDF3ؼ^>px*ZUh43m!2+p{QL`evq mb.szuGN.<%VFk5sf(Hfg7:Աee8o>a>sR$X5]`ps K} ^B{EĘHۅ+)^%̙g"LAs# ^5|~q G7Nxgޅ>*iɬgkxa[0J_Tfɇ<=;MWz)>8:]|JU}X"n^YIFu u6VkP xRvMef=DZ8^F-PmjAɜkSh>fH[d{7́]-Ӷ%4ᓶ7Gh>Cea }@d96;> z[nhpV̐2$5QC5[|AS0_aBd>&1&8e&f6yݸDo«_o\n]ZtK]{><,F r׷dzNFciۣW[Jcl2t3x|3. tćDaeQo4wi,2oPQ]S1xE M1 ^4yN)eϖ4{]hy<ێ _tsV3!LY,!F=~MydǓY[hx)5%6QslAe 뛧uf~8>5\1)joͷ \`;sZO2!x:4~Ҏ?(u}GwܭC4LcLE\0j+FEZ͢SuNqjШE2we&B+< SA} %.s1'&uF0LO^ 9UT^/g $srh%igh 6S(n&.uiXeY6tj'_wYX$CDG4m#1mU`a}f1ڵꦍи|CksA.m[pӧ&Y`<NXy=ߙanAWwš?Knlt4d: _|9xB)ju4ѲPסE9 ZBD1ߚnsIıyYnaVd0_xvS=bzRzii3KN˱@ˉ*f{ӱ0o$^b m פm]Ŏ)^Ayͅ`nwAXXc {JE0,Jd/OIHdMr!7&UsSoF=Ÿ(i)GI 1A~)EKb/VCFPlS joؕ!g'ZI3]Q+I Ni-YT{O_򞇚 wOO5 "Z~1%,2g7nOIl3I "Ǐ)* ?EEeL~E~ VݭprV&ZV`!Q5,Ak̝^(w:=C: 2횾L OqZH-M8LiR=8ݲ逄‹aGԯ L 9 0> dž >QNlET9E~f /X$|]W~FATCl];522NE p ~rAEԳD;q34)5nyվi&Ŵ p?Ls˗X[ԋVnkw[ٍb4/4;az;)[!4QK*q 1űB+n}C ! Y4N5Χ׊^TR֬1lL4*| B [֣`m2 zy=mkYG6y t g_=ȱhu hP]a q2~fƮO* %|Cw+)̏b ~ט=4l,G^btzF9Gjֆ½lV$vAT{E ض6 \۷E$nbZ:'٨,CZi+Y;4G8򭅗 mpPx<pv{Cke'ޕNC~ (4JZH\OEkZ11iKS6sVaM$d+(l r'74AWq8>64=kPPfÞDU~fv\/e`4JI('@N"aaS:.V& t]簻\dpFht A:^e*;Tx JruRѻ޺6ǃ=c-Kx)EB[᥌< BJ4H#P̣/;i䋼RVMGzq`mNu6oqm%AbnͻzUg<+'[t2+YK7b-5∻y|ڽKbT\26ZR6sҵbBOUZe*IyxO;ij_-X ! 9g$X0\󈅑jҟ >jGxۑV9%cOYjc?ZfzQ%ds揁5,iW87Qm^2 z^f pN쾠F;rgN*>xU.v㙺kF}Ve<.$Дnh 0<.w"0Itb`TM沝פ.R-AA#64m`0=2rWPh$k^AFu@ؾH,܈D wN"6,}~bͧu@;=\za8OJgS7#xZ2ɫCz4GA5w"Nm*{$GM>jw)RˡJ~Vw_LdΊ 7RC@ǎ ᆩbz 쥌$ jdWVh1ZX]ԭӈ@U[P5G{Rc!!Xa<އ1N[Ό8t<:bTyPRB{A8*ڭ㻂 ܢL`.mn2 3Ɵd}gleo"wRʹðI ~Is\.,PyCmbZIͺ5n0fQ´Y|YPf,kVf|HGU z|ÒTy :[9՞vS-e%t^u mj񓎣vZd 2+}eГDg=0wUr"dDz 03Vz<֩˦>.|f&P/nG/wI>WJ* @6h r9H92*.L//9ySNZqol~{0T=H:k@x4hL|g';('UD4-T^>3A6YD&t*RVW*B!)̮/<vċ+듦;TUDK9>8+.eym=ߚm]Ϟ8-(cfAeѳВd48(^5ldM@ f=ٱ4Z`&f>u;P0)^,/MlJ!d.g~q86½/}lF_8a%LEe'-/N1 pyNJ^6B$X7;;o n, J&vԂnEBw 9PrJ AgZF3ZGop\Eez@Eheu^c\2{%3M@S9j${}ԙ`UVa1(}\vQ ܵXB<;s``o$ub;n(]u$Bٚu#X<(Cଽ)b)}8kfR Vxk>}7ʜn|mW\&fNș?pxi'Cry1vpW-Nuۊ^=7׸*TYLGL1D't:Dۍޘ5юG ӯ^ݣ0(xk,gL zO*5'C`Z2蓄*kOaɲsUz-i1{{+\ɷ< xdN42~b\*B~o+]?~ʩ)=N imFG˻vЮszy VuivE'PI6:gNP ITk^TNQL) WPݵbݚ;N ù@hdgz-cgHCfC 6yTF76u$$n[N\&,'[)"JV>hy+hPy\>Ա&ZЛaLpd Qp 4BRZ6֊| n\f#4 Yͣ1bZ< LNKH&Z딇E~^eFE-pj.7OeHkD~X ) 꼹vC V9<@&]9=% #3EE\wc Uf1fUhVe.ׇYO?|67k ̲

xtk;ah 8σUꔯC%#~.B]B.1tNc4Di&R[~ N ؑ}0j&~c0 ñOo,n~_ݦǨ!4M?P{],₱iCf_[WtagZڋvJ3%A D/Μk.rqBIc'qf/q1O8ᾥGװ[[+s-uqS,=%E䌮#|O(}qՓ!68Z˨_w0Z>Qxt-́rX"" ӛlDPkͼ5(tG [Yևл~'TnHjUpjKS!E]V?~ؤ5CNL|s Tx }[sӽͥPg^ug;8j} IH57 C\LQ| β2lT .9_P&wSp|Dnh Sɱ:=g0#tcWt>>q0xYRjA! LօC*zcdqn&yepvd[8^Gv4QtoǛ)Ywq}ORS1[GB^}JK]=w]pFF Kᄕ2Rib4٩h3cۼy;ε1}>"dC `^h[73^5Qɲ7/+EQNS?{D&1"DiEDkc찛*3#hҮƳc +Ad7fZ GOc{(EirO/<p߱!NGzU)NQUBDMHzO:8='VnX+Us2}j3.Qn Bȷei!ߜY)ֿ<Z(lPgy}ل `], ^ª0q_Ќ֍2EkG$cT]2ýHüT| ΈEHvRs. (/ 5uOvjK Ef0-2_whr r*OB{~1i*='Uo:PaXrxi6*$SʠaǠ{ڸ+cPCA#5I3WxȯdֲUHZoQO2W,*y  8At-<=aO:*W:|.n b^bq90Uak !7A(%{|0߮oŸl\ |~{ e6ag"ںb뭮 -]bnt :Ee:}+ 1G5ǡ!:!hjSzܦ#5'U|2$vNj#pb!lop$tRCK`wXw5=w+(IBpVG~FA,g^N3>j95ȜԖ"^g:FT1؂Bfsnm˳.Cz4Y2X['~/spP/uVAUYg0?TәV(P? ?*<akIjFx e /nbJ(ظ2O_$5fn5,V6t81Vd>S#n/Ob@&xJk&;BAZ5$(=O@P"긵|ݓJHL6paqZ?iDsv'K_Zǵ Y*<>]R"nQ!$;BW$ OB5v=h >@,`ɡPܪFa,=J- h &8T5k>i6F4Ll o_|A_ߦFnv.vn`T\K:Lr*D2OCnF`K+2av8u փX1+OɈ4749V OG֖# -ݜ w%r'! zȌO Tnp"4Uϵr*| _ cxٻwF5Ѥm709à4ü|ִtrAZ ?C6ꫯcDDv'L?79 CB-# p|<QU'A >4 08oi ǝrό I7z\(wwzQhkXUw_>jMr;i7}XMznL8k Y0QLᡳ&j{YpXjH BH=l! L '%j &|M:w ´ 1 dXR$@&h]ɷ`fC60^^ziA3kBn7PLOPݥX!: MO/Lj~7;b"0Ć=ٍ"!-%Mk[FݦcE|;sJ1q ;Ut{aێ&=] ;_00ZVA=-񊿣N`t#eWlnDTd\BkyY |) [+W3]H*?(V|޷Th#)ƥ}/B Cʻ#<һSǂtw9є oюo 3 VVyhUף0Y nK\]Z  pZ W/: BD\NXE\"@}QkEKqHqHn:E{Hw2bB=.-lK bhE{ }?j1y' zڌ ~yDh j5 {;{g:U;zMIڮqbZ󒙐A IHʪ+XÑ!ɅD2BWZ.v lwcv JO؜gCG¶֑1N\ H[&Y1*'AEcSͷb-!HYu*Onσ%WZ6#x+vKɽh ~,2zTJ⢓k.#\QLWfB}Mh6QQTemRSoUA->5œ(DڭB .LOTKE&< 2͕+e9D-:N:VQtW]NXl]j2S&CSI"&f6nfh3trǰ-Υm6Q2n{6UY/Ti AK'A_)pzҮ[ T)1Ĺg ĝ䡂%- !X"OTRQ*kQ+YKZN >R]p\Iف=ݯoEI:m6hsOqpBJ5NQVKDX?|1apoģ"잦 nGEyˆd ͅ IU=߾ %0IIOJ'gDQ7]A]~g"yIm1*ħI[va0$UhϹT<1%^_`kYFԊ@/|8h ¾4#]] WjO$|qHW-ZHsMU!A#|pd)YxˠX !B6);8Rw>Jl5XWؒ|9ct~ܸl kMwYPŀSb{0W)IFأ-XsU5,mC=Q԰x0ovQn)i cdUË$71k9)hsm vrqKqh.GV "iG~TPBʨdx,Pb~ *hC@E]^_q{63(QB&2K}ϿRI8ȁޤ7 &eMRew!:r!/71q'_e$AG Eoت"yjQ؞W>G:=ٲĝȴTh;x`HBbrA҃}-fB^XbIR6k:G{k\BK?"6nۓ3w>.9?m R#s]*L˙WϢ̱y\=\/.,q&fЎȋK:[k+JN0Wk z&XT8ޙc.ʬl0vB]yo 8)to=]ZkxT_&e>@j毌̷ϝ! N+q~o!7Vs᳍,l#cGqu_;<Uzzs0,vlzM / ]YŤ(|9]|mװ@||wG%R;xSo >L,WHg* TuGQeD֐>i;!=>-GFAɅ0HY_QȬ|1(}-A޻lU6L!6^裚jgISDX*g~Rz2>>*x m푷C~*>a%%:H\K]h}! OڠAr%p(2Q*  B{oyy2av8Zj98}̶攋H?KDxyR=-v`x8?[/cՎI$̲E7 "1\(T-upSe5.P϶DĻPg7 ӑ{ehgboB'c}Gpr=gٗCx. 6SJqښޔ'{Z+[L݈`XF|5Q0K1u xvA^p*ͲA&l8B[n3F/FƑ8Vԟ+eh֫~.)ޔ>ˇNEK#⑝z]4e?^MNA=4˧S&p[0't\IJݴKB> >a.}_gTvGm֯)S+S (e[}(Z2>h FPa=S4Nӓ.s8? '(< cw`^fi;M[^#O$ptC>\nc~Tl"<(_;'*[MS'/FZRU4rLicf΃m' +IܖeEx)Es=h2xYM,|H%Ct6`1Z; IMUa-9 ֢@f2X&׿DF@atq Lf%\[QۍJw5{#D]Z_P)A(_U]G L=雂U#~kiQ`p,@CZEəJN5Xa\g} ipcXe&m!u06VfB)F6BٚZ}G]7w]y?ۜuU{mƦgvuBFe'".:OHA AB['KKp7P6aXY1Iŝ@6>9=ts 1,,Vb$ gn*E dO!o_K&YZԮ}}=ݦ~InzDNyhޙ6o$ss64تjۢ!$:~ R,T29V@͝f]_)  ҉yʓw;IA[r)&VC&(%qnfkQ dsZ>PP4Y< ;O3f*+clhz^|OrFS0B.LˣN^*uK]t#3$u|0%(ڋ͔p[up#62jͻuC̺3^{h[-3Mt'黜iɗv+讀&X%(FZYS#=/24Ԉ 3Y[P ?\=>v[;mxs59cþ19xomieRc4 4]a`|v;F }ûT\sIV*|Sp2HnPl-!-{c]YgL|?j`4k]GSp]rJo^V7 Y1LZ]Ku &@̫25< >H{P6jPzJaf`i\@N*8E)K}oiBwzp9MN_hfeɦx멠EyE63^{SVl֩z6YP_{wjG\vO{/d{!.JB:FtS`@L3Q҈rKjv0DTBcg084jn;<7?#w#(473m%!N91i暕o4? ajC2*KxJc0nTt5"Jq6Ws+ɃBApAWciI![s_@'W hLyZ?"vwnĕ[ZxKeV<GcSQY|/ Pь5N4ƞڗyHQ$N}o챴(-$Q\lRYB]wȴʼn%OӮPV:AtAhe.@fXۙGlW&}N ?C#lJ΋W3jsyZIeG#DQ  ,΅ēీ:6dQc!||0v Մ1VZ37WiF6k7!kspR5Rͣ;*)`58qK@ fmJp@Q?8l5{U#KH^]1_0 D`\i#>7ҪoKK8As~grEMZߌAoE?K8^?AˈOhC䷡LZ=c/}Y G vQ[yIs!iwlYiVMAe' d/T4F!/? }vG W0Mpb)v,C/@} ^70.OU"P;qa^]BCVAy[ L*z0UʔxFzOxhV;^n3@?0*Ǩc!v3fe{:&p8 |r9yZ^_-5?L[yTrկTE Y)ޭ*7frᵧT:zTQgG҉>GBj":4eipS ?"vkg}|1@`!/ L;\b|3=zQOʋblV)@(Ra7971fU-LJODby\4!_VKG05SZPOU02&W*UbR"/SVU@z'0⛚ l@nȅ.:%XdY>Gy}aer gN$Fmѧ (xMK,d N$B-bnSϱ@#{ެ^%kYH5 :}} >FtK>J2𨜝F,2<39S>Nʼn yr0/gEqZq\chKZ$52{zFUl"*ȷ6߲frFfԱ*NyڱL#NIb OFozi}c!%l6 qȯϜƹV:ՎkxbqH i#H_+E7@ZJszv,|dl˫2o>z(7 z"$ =T֦sT`a]onحԹh_ƨ'ufUk'rnƶDV /1=Ƽ yxst0ڔN/u~'$/D < Oxv_$fH)429Bm ewjƤG8%0"GE4𧛌f00>2.ont9< u|C%TXɉ'O+%b7a\ǰˢ`7|%fQ+UTK8-nI~(crRD}CVi;Jx:!H v D1 k)`.׊` ۽| U|5LQ4Mll)uV"`&A/(a[(#yOa^27PCw# {-}^5.._uzUwY`+l>qP LAm~ 1]["+ky )bW PK;{48L>|pei_l|f*E͙1уZKNg`)S3/=ƈd>xmpn?fhٺȐ.m":EaԮ6eRJW xuA&\p*+-L—6h+7 @g)-_2L0(hgJ@:,rulOsEi:5(e1E2n.?{;M0gk"  0V bH׭)~ЅpSw]!~s7qϗ>&FcVm;Z>S *#ַng{ 60n>xf1̨V(x}X6`*+#R%y4=R f+eK)=xā[B2DKHdf[FCE3π~L[=6g+U6\ !42UEJlB@}fZErygdP5qGƗ۞4 :KV" g+J"晌Տo wbb-IqK@O#lD! ܵ)ΟcpS =7 ;D(0_Rvn<0Vb$й044G@-H;R]] [>aVa$p)#>$=ݒ\;OlW*?E cdLx@  ]jZ88-v9Ҕ$jlb/%ڣo0W83s}lZz̄3w\-s kO}iCv0DhpЌ]z!O &U2Ùgf^L|iXN)5R E#u~.]^W5d-Ƕey=8SDbr&ayMMf5濵DFGlh8%{aC EwѸtDFwV=4Y-ɕ]Xޗ r^bN^vβtݏBVrIH#@ޔ1'Ot[~Kԏ !1r:][BY;ӻ{|_"IU<BrX *qq>$!2f..a}&VrE"0ׯzdG ꬡpf+F{&~us RK}ێ>=Jg1dfY82}jsRP5X%T/8b g*o|^sUfyb -nNP9h݃7!P_@iW4 ڹ C;؛mF(mm S4fFNUmI/znvfb[/ ?Xϧ"y#F WufB!ބ]cX:4LeBx%RQX2rHZx2d̼Ζ n'^%Brc}̯AFT^}RV>[),7;7e-^=,R0oqI_Zٺu1ivh6ûY)G$XW:4.ǩ HC`=f2!ذkwi%"xFu;ꇻ Mrpo=:h$Øhv$|0˔ ;*ߚ˽L\w};'mkv \D R#(rїs59IPF-M)*Fa Ci:jB]}kxEjM}7;-)T}ky.W]Q4ZJG9`QQ0 Ҟ_}1Ϡ EB_72uC'if aU/mCV}(C]m$4[ dS}~i'rdV<izs$ 8YJ]:@Eoظ.96ą<̤׊-}X 9mIQ)Q䎳wg]"## EmN}טf0>dN4%ɺ/@wǻmFx"A#oRc|QV8t3sc iZəY0&%iǭ^P2/&zI֦ՀA&z\R%nm\ vA84 1p)nTMp$Gw/?"$V0JȻT௨N[7!M ~ MTRrhJ&6fJ*nRUwcywrAgFLk(U%Z{{GI6D3G߆d.a&X{l %EJ)xeWR%L9 e0"EVIXC`.{[YtPl. T":F}@Km גu }.:950$Җ< B7 0tRhr Dkts E8vG ]!@NB@iZ(6% /9'Cv2rx&X6k (FqXYۀr(vRf&ΧA\lœ-N4]! bԡ?Ʀ$3sQ`X/) |gk0u UcF3xҔBOz%&DL[J ^zs_5jޗZR(Cۃ9SN@ѿf:ti9UiU/)>{Գ^ʁsc_%Suvc6l,Ѣ9b_e"WXU& -U׍sl"b1<*-Zm6uVp:KPos5ٌ#:+M7,Mx HT=9|9$]tsq[6/ S҅D:G?]/²iW73~MͫC_vc~F}}nvY?{W=gAe|̟bN2wZ/?/tp`xcccY}, P&znv'*qkCg<4WZE =s<:Vނ't 9ȵqXU=DA'P oXYSy>R_9Qmc/wrtA]$f|'oQX >%CW \wotd'.,(ק 䚤D?%1''Dy|.9Js4b3,b)fAo~<+SޫȰxK,1&GQk/-~=l6=n Cڰ,9f+I 1W^_% O 7 <؊Qw/hc<. =_s=i+ \`1?ɼ\\6HhN" WP1Yot!X6AJ1Y-9vg,!^楳ǩnhl+UhrK Ŗ&lmeptcjHvFH*A<EՋi>pѮVp3"B _b YPHM-q%[6 ĐrILSez_!;2}'(-1ŒkŖކRo+7.9`[ր`AC:nhg|Ⱥr-;ݗk#NJ5+#DЗ">*"jn;JYXEٰ*=Ĉ/ };WPpFٸx$V1tkT>\yE)vTcp.!@>[8PAzɷOS?l@Y%{%Tq}'<$`VUTȷ"*q&>Tt3JQ`1tbUV~ x d##>;D ,F9^E )tLh&&Kk75\@33Y[:g14?gmz {CM(Mճ\QV{FmrJOzA~ EE #Hj8,a $p&ӁgVF_1DWJ]R cF]Me}ƚܢmUͺ'RO"HXr͓=Riֵ+Nxzȍ+J/< _Ag*ݡ'}ZCBn:1p`j'j)]4]hHz7YƓ4XO/¿C3ƾ&bx|4/7{覨[,ULv% +2AOgA?<)//9DxuտN“͏PhBQڴp %r*h.NG M!az8$/e[kz\cg"Κ1 >yN@ױe-nw{Wx)kUT4VCҵ*rCw l`f ǫ;A1Wy\](^zhJo?v:&M1;0e=S!'rN`Moarg@iy\~yw-jφ&q!3Wwa Fw?G=T>@&\g@Θc8=Edέ{'c\UEf1 hd[[ Nck^ek$¢XJiF!֘z!-DRW7}isz}۟)̲pzk"[9}\,}c>nČX֡a| Zox,%mt_j ܚf#:a0/- +c utnP{ I2+|?wywzjyƆЮ|@e5),r+&Ͷ6\. wY{f~k-lC>IV_yRyM2yP? fˡڜ_SA6}u1Z3OнD@iwi &;VF[2<;$2&wG7zQNK'BrBW?YwZ ;nՅ׬ @558'0 \2ϡ ~ɼ$Q>H5+FiZ2mL+2Í-&WCo=ӑs?+*ڽPG]򽎒;,_rc_/4wUD9ߌ%^*, TY*Bk=CnXh:K±jkGAAƴB 08+19U /Py+)VktTw0Ӆ:Y"E_3 Gl>Jq?-`ӮW"7GЖ_|*by3^&ʫ5(-cB+ ``GzK/x`p@n'.9s*+m,N3lynoE {"U7^eD[Ww/1#BRrZn#pDtp xΙLkymGCG]vrM 3YH ʪ2} U| jډ?k7FrmNPE1o &sꞈⓜ`?Ep!֬Y`y0fx ׷JzJt+ھ=RwKaۓbN5Q8B9).aOv7_̃.>>G.iZE`)>b_ kBvճrv?d8 Qp@YNLC|yU N.u,;q[z`/%l\B٦5 L5FY; ]-:{WW}vhμxȧj1'z~ rdnA+&MhD!yM%<.VBLmq1gPhV)ƀgEi~9^@fQxzege>(`h\S)Y&mlxZ$dL47`ycpyhD8f|ܿhMJrIvu襵K1:W!H|x\im9S'7NyD|c"[ 6i{oY̞t7xa|YӜx*r߳hNBK"*BQrYTC8U&¢>Sd<' -\m5z۸54!9oY6lVH,꯳Bیoyz1&j$\ (R*ndNQ#*gQ>du@>ZRkݍre1O wـcqY%&'o`qȳؐ*wm?',JN{2 iaEƍc?I1M^/P}~SqnF5bURv  ƴ=_ xq,c}粂b5rs5Fl9nbq%(ŒϤUfc{T h||+-X E )g ]0ɼSl?e$`ȝ|P?> )Q̒2ft KƃNSvO_@"NT; u!Qi0S%Plz6EU8Υd`cב(P$PXdm^ֱ)#Y:?zdZgi+&Aν 0<Kq늗 +no$qG` R2Ե+$UN`W'U[Hq+`xr>nFЮN].ėZQOgzx0D (@PU(ټ15)8-a_V(V *]``ᢠ hmaJ#NlqՌT7rӖFE!*e;G0tFv@?~a+q|+n-zܣ(:KQdd!%[(p#Vico­3q̆4KID'?)&Oa$$@Ԫ^c㐌=-m$]tv.2`Y^Lj;4aWEց;KeTďj:MK\pgm6l"peu@.wϛ`bU *CeX".48e @?H_?KUBܿ"tS1(,L\%ػ2ý75_1 x%v 5 pY'89WhI *T3!f W~\vy[yD_19K+)ٻ$)%4aóIO d˦T4X3#A'zwOɈ%xC.k,fl>JT܍ xNTܞzf?nXU;G¦l;_m/5 UF"{ | j^YqT|ٍ#0Z |4,_vM^Dz:XfNԥXY H|He'"ܔ)%!찚#+hzD)a y۶#/R)]e zlstyq֡;ΏeDMb(5y`p bŒ&"}]+K|pbX]_el$L&|)j4f #ⴭ< Nz2k:=rQF% *cAuvܥ?,@Әe}Nz,E!s,w'T3)vA˲nSܺ!_beo7/Yȿ+*u'"\L|5}ogWl)6{ h=4@D`Q}D҄!IoeJg@oki2ҙfS"t Lk +]+m4R 8z[M&< 4c\/mXF=yiFjC@pa9o/wsY%։`!rj}@C(Xڏ=7wh0)9%"Bvè@;fHs+k8"hfC쌰>&`Lw$f;~w`^<Ӕ@UnMz^v'ny=㔑0& 5m F{%ŽDuLlz 7Lݎ]A·vA>>گYs?- mƔ,- x>ܒ烲-mCGo`z4vUWfUl4f^r:GS }{,V2(wR0dj=-5K`2~tAϘ#;RSUt?TtC&jq׼cxbN *p_ />-XN}ezpsBʷ1lN|4x1l)N1$H6,.Ks∏?J`'nj. h$jR3q]r:Lr FCC)_9ek>s#J"Ia4>8gS3mnCW.Owue6%caHޏ>:) 4\Kľ/u78kߐnN:c65Cߩ¡-s'<^pW80=HBRqT9tWF7-@jߺs9J]KBh=<ٝY0'wbi4YءlUO;2!Zt7=8)('),#8k o |˰P#wm +62!R~ԿiW-M^,lvSߜ&%4_\SOS#?SŹu续ϥ. h{Mx΃Xzc =4uxtkpc! ,&'4nj M޼@[sO5ǞZ-auqf H$1CcpDrU#eDggerN S׸ez-Rj}[WܾV}@O&9v荵ϤQ-rє^{qS"By~@dТval#X7cNfckVG1!V2EG߲?aw|@ɝgVU7qEQJ}3Aqb{מaH=Z˦L!9ASix;yVnao v{]S%}6?2CjPB(Ϋ;L4yrYzJ-L8%'G{@'h[[CgR#/jJ?;.+aӈYc3@&)M솧=,'2|[-HH Zztݔϥ/oe{LS& ;tay5NQaP0/x­̕:ȰAֶ`}CU}A:*@,WZ;՗f`lGR.͏|(:OpC`i*"3ەA`W&0 &7R<|iu`1P,7ZJF)oq2%_ZC 7TAQR3ZܱV2♩jla"rNU\eÈx9☜:" ȶ4%:gщEk[&^{GВHkg }K̖O{#>&kkp "o7y{ں efni=<-1Ո: S" \SGf%5fsۘգKkTcЧ_'FoQjcr;+~![ɀXISIX2~5S N+Zu-i-J;W$DKP x8וڄh}€PޢU+n8:m !FIe@O+. {[,1sX߷i xhj~K]Dx֤[ֈtjf_&]S&VAcLAQBr9O:e*`t2t.eP3q5j  ~9Pٺek {!oi>0g2M%o~Qmoqb}(dhW/Zi\N3{dΉ|r'Pm0")Re@"s?C~z`"h~K` GM)A8=sfC5gAR- KmBQJa84YpL t' *G$r!&8u6{oIzϊ;dǎ!K`+px.V<Ƿ@ "oaM@K#5E%54uoJ,Mm͚y(94K~WB5dU`\*{=ØE`Kl-Azo|-Q[\JSFKr VaD,V#<؆D W8:ly!=w j1|ss9_(EP|{7@-T] q b' O~Xhy:."XNgd`5a}c?*wkZ?\;/q^=Vg08 CI=SUI`>z0[QomqS#g,+I'u<1MWe9ƤE9C#7,II6BlMljdF7)PM0VypZLڼߢkNQ]4X'UoJ1P` mow^sy`K#ۘ RZxɽmwRʊmWYS@cWN9*WIu_E0a]ߔsҾ $YQ'-c7THs2YS1EZ.tO0| GJ%x@IS Y^T{Zy@GmC8w2)7]YTk݃eSv^ZeT^{j+w:LLڙEɎU0y"ޣJ>Za*)9Dr:vY`|z$\ Lof2ze"_^O7&R8n1qNZ3J۲| (j fjafϜE0~V:9O9^ݰM #(DҰ pr&-+"pՅ @iV*O!bLP:N`#A5"[l+\]4GHsjDΈC /YMpT*mQ t2Y2鑰C4exsa[y_i˺08 7ٷ+`\2XExM7㣵jHv*`I ln,ɳ)cј4-Ld{D{k$qG>vH'&>\+37i W)Q{Km=dRydDdnƽ.E$w׍&nRX= _x`u*<Գ t#6SuJn1w$wr?҅l"Ŵ۴4=S|=Ѐjrا=rR/^}35 suL4A U跻0߳Rњ.ǖaXNpƜB&wӀY]F w>( HK*0̅aoQ[)nh"D4~c5W=%ϋLJu=@=/8bdI(SBNN(3t 6K(W/L5lwfN~eB)IPOJi/*TGgT*TM{Pೳ9 w=<>k|H-~ cF&,~H-G ù~Dw\$ l%Vhm}3Zxu9]KK#A} wGId|(!/[lgcWZ|v-+2jpVTr@jid!l4A#|qQãr[J֪XP aYIjc{bhwa#i&oS4 xhVED{af!yv)nW35Myuة =^rM ̩zn0ڭ&5QUIC;e[~2#j9>))r1]Lu= @]x^*v tk_P&S!0X)#:!%2$Zq`c,<17F^mc5t"c;#Ző7a9Oѷ&]>>(v^R*u1c7?]L8`)gu-1E"*X^MڝD_?nt#4g,JDg7W0tũhϟ{5RȌn4ǹSEĊl:x}"6^EV~Q%}C0o ǪǨLyդF+z)yay]hL oF^]ehWCC.@A fVX<{m_120ΆylhxrpI^*+5 aS/䊮v8ZAס BPw+h "H*RlGQ<'a,%R Oiy1)wml$QJk&t W\c[ <[.[V MX y Yc5[J9έs^Zybx!rrxSj(<7HY_֔ho\z)J.2q$aq4͹H^57&ZylC5²i*?B)q^2 HZw(2_C xl_aSK=آqA'><R&O+noW"h5 -2S81NԺu\nHS e9JdjX**Cy=T6?k3/a1ЩNcFo ;I40/ &.5ExzPJFtjLfHq$=s9c4@/ռt%Cye$QQ6ÙS<~@/ k  (NĆS;}8Bˡ0h7`>`frQuU1yqփN5ʋ@J}-!Cul6Id4o;% K,."G(z`R gФ {ʨcqx[p(B[٦F~b'5tlX?y2q/o|}ϗqCwY9+L<Ly_ڨ*76(>]ʍj ƌ.lg,Bq]<٪k >Q->{6u! Mw5\H %#pZ+ғ,DAyW*NbEW '1!ν˰'jSyrl:w$5d̵%ukBFwcy컺Ԛ_FJ֯d;fp8dfwWYb wko\N@G۔%O5͏SZ qS#O #UȀ}'m0{׫DסʩdWAo O$^XbQd}gLB#طt[D=qB 34R|6 VpL[-Ez-sʉ,0+OD7xKJTVa [%$$pZM΂e77_f&F^f)oks?0M U:xYu?zq P1?D|%9!JWz2.;,4aP uXrej3ǒ':9BcZ2_ew;\2ySRh+cMGa赖̃gEbK[fx͠Ը/偍F '5᯴Ɂ69))mQv{NY"RX0NZм:q8!/ujɲ9$ Ȣ&0dDHglmQ><grZ0U`ޕP201vf<Jg<jpa\R@mݐamg[|Ϯ2Wߕr;7[7Ԑv`cW`^ [X2z夞 'r jPzn%m?Dloz+v# \إܠ:^,>\_pu-5EG'LQҕa4fB$&"W@5bXF9xi_%tFq[[Ë&Wқ"+ x {1@!<[>QbQ r>n OPqRIHkXfҌx|.q!NRS1@oFx|uDBCuyoo7a 3T(? ޱ_ hkˌHOw4@Sd|SO"ɥau=$`wкQEM4s=ZgFB,a0jk&;@gpW鈔˶ _/{ܹa\?hZ#Tv^j/Pܧ"FUAP<,4gdHx0@J)Bx}j]zӛ}M חރ=lXȻl\N%5}ICPgg$9mK;YE~O Jӗ+F-؏gbuqy)'8٨VVh5VLZ":VqqSwp/>aʁ>~b=okjl" jdry6MO<9* %w][{hvw(#2O6Yʳ&K~ۚH Ƞ`*˃P'W@3Úgnڳ6{9u@~W| sp 2/ VPK0 OF@T8NdDk7'9sU#ǸQBۏE-h@byF+Je8CKFW-472>&fN<թR1:0 1E2X5̋ QՆQ>La*lpY_.ȘN>渠k(/bf]Կ~jzxWt;w.:}).5~Wq}7&>vţߗF^藻.sKC0NwkgWq !DWRݝR>];` e1($z/d*I(7NG9QITg~K樒i'%#@REؿuV?,|Gx^4Y5ފU bZf:t&$Kޔ 1h9ـ0GAY$HX'ɑx3N-{n`L+4VHi" m-J} o~f;>}v~X[M:Vt!Cc!`4OQ|w4<;*X IOp?D S5T)UN?Z΅8Ex^ YpȳӧN *zzbb\+g 5)d.H#K {%uSte[/s ;JNA, Eݠ/k|Gr-]6w6ۗQӔQe"{gKoBcgɕUzi~YDGL'I(g.^<=Ccsk\K9. euY^v+2aH[ V>̓?WFI~B VWm%RyܯCFVܬU<g9b0jf8.G'deWYѽntGyB6>6(4O%C+#*PDuP8` ASM|LEp֑:R_8iQ䞼cMHڐpy%cƩ)1g S1İ1יx&.c!9 u^&!A h\v[eA\Dž?Erk|_1`Ÿ,R%O|Hi.s'e\X/Ve3UV 7S՛P 流b[NE9LȒx ucw)5"+1>Tg77TtzF(ػBd^$ ?ք1#;Pj}e Աɍz捁yLҬb"zԔ{}L4EsĺK+eEWX"51wH臢)Ov)i ,T¢b'?HY],pU@]+&0q(oOBfZBL:2Krr mxh뷻ق( YWLJqȻ6( D)%&NO$'>PY(A9,#%9y 3Dhv(Tx ܃e%ykhՕJ']Aѕ4sc&~|ښVW;9&Ca2ܻ%s(flS%ɂ`9^ʡ9A.@], edf#u6;6|* XUA~G竬-Cʈ^Ab=~l3NpC'xFlg"Ovٗ,Qn/)(ԀSa ֪!p`%Ni)VBopWZee6r >oTCAA%YS[i\GsL1 _.c* ⪟Z(W'T1g'۲}s."x{ӕ q]ugiD۟1WKc;TCd^.3\M:+4t^_H/6y-з_`9:h3lV`a3M2;&=XZN7erEqʷvƼw4(WD h{ei/_M;ӹ@擟γlDgtH@٫AvJ' Z,i 4*-_RpS;ziɮ:SϩWmEԼDܡr67K^RM:S#F \#EXFU ()Ǿa@%/SkZ F9` @t?ƕcA]_v*YytLL6y?y_͸Pz/'5QYk hoJ؇!=oԇ41w;HLtL0c=5*ZcS^WoDdo.KTVm[krLSW;}wFebOlWy lW2#'|4#B5ăV 6a)8LπBSbӶU\ò[wY2 S|w4J)C/^W QP&bMj(G*e7ڄey}j܃F8ꗂԹWbߤ[Y =kKƼ:2Q;*𲿥-<9ūv_Aʰֵ;leG!F.mgMi;p^or&O5l\1|' 8Z*Bt`o6WecR/24{B>C=]DTulV6hɩQ5+VA E E33}%&$Ke<hQu6KQNlʰ#A}6W[H=ɊŜ~EӖ=}lcTCR^P*sV!$]!Ua3ɹP~'pIg |/9 $jXMKV訥zZ#Smύ3xPfhy]9R"D\$95yL4#N'j&BoX"x( <0!t:/Hx@ 0P]<6bu°MXlA)oqO0p=q'0!@@-lt;j)$gG26)'6i@vSJ3Jk\ݼ#Be.tt2ЌF4;8Cqe 8)~=R>aǟ&Y9fP 75(+Gdrs-v#qVS ;]/$+z5E'/# PNq{adHMPKh}( u_6UxU,.s㏟~IuKx["}NPx;@y'!G0)^/mookA؞|?6}^ =fS(uq͋NW*Df. `;ʫ.|zNu̺WWs.'QW) h\xԟ]v@eUK#mn?Lpt,Jp(B^< ׶|Xs2Xڟu1 Ay[,Y]z\EzCU(xS?0E r] _X+ЎwqI!s$Vbpm"'$ C`LiB ?wp~=_&)߳tgM"VqyWH;/C܉ku |Ϣ]+1 2Iqk鹌 ~m (M<J1-HÓGYhE_gK1,*`S9/Wj1^6k!ZfsRle%ߗ`ϋQuQR?$ˊBVdx bL̄nפ'ݍ "+<0>G 24hHvqC= ;CPoqލO.[NCaШɈE7bFv҆j4?wH1]RxTw1,.}0;}H?毀PQ֟#/-ct7:ӞVQߊM=PY'h0_\%4mU,E`$\Py%(JP=#LGyVw =uS&[)#9RwNv[aHG7cJTi"3w#ޅHҗwkZ}øS q HVX|c^4d& ,Q%˅Lzt8 UNb0 `1EBO;(˼sQTdF"b&|^ 5o cuݘHΕDz'@y8((ِUը g3j{: "U{5%j?xu=p=7:^BEφ 'eCACX>(YWIM;הtsz^jIr:.UeƲ3C=g97?i%E-6l5-(OS"]v4Ͱѥ䠓=q&u§0Nz"h˧?`a}5H -% Q5~b7:פWAJJڑ ZHhx 5|0cb6:6{Ԯj4X)Aws%fT78!cbڸ!}āR0vI}JF3%Gsr_FN6}|F{f 0bq&u6f#6n1Y% z.U)n;v(Z'̏bEe[RϾr_98-ӷz ĥY)G}=e̪LVv6QF֯A&Ageo!RW%Z'R҆a,_<@[gm7>e;soGlʥ9\97g+P(Zw8!bsa=:iu{Orh:Qc|@7c3u9_ ES!)h\k<×Ihrj0QL/*%a,,FK<d6};)Wz`x3LOm:/KyIs+Mn%OgL %W/-).xhjfB̲,R~9~ Ϧ'FihwR/PcG&3?XA!0%^.U#QW`m:M૖ul`_ܟ^G *A*/3TewPl7ѝ4(4aA"0;܋ *T>Hy\J A>(mb)őݮd {T@aIvbW|DqNPopfX@Q*r%>l|an,~ -q, X!E $=D]iѣ]iRm$cHcw>v&eWy s621ZrDX!O3f!͆ʎ-eao$ _L~ٻzxY㋡9o8һ2 Ts6(=\4 3NhMR; ̭ڍX`0 z%.#CFV8zlF1=W谍QS;t!5H#e">GV%ĪU|T7؄]2K$q<[q#B{Pۓ-Iw@vMy m9u~ˊƋ!2g*!ZiN)Ӽ>L(7r?؞E&`)ja^9oѰ$o.(V}B~F`8Q9:\ C;҃BxyCmC'˷Rjܡ1cn#rOU'+ѽWJU` hAvJI,׽qQݾ;TmM$4vLՍ W:{EEo%h%C]Wd^ mL wԓ:y! ۉA@aY2*2j9 X a0)@|RH90MhwWigOOf*ڨvJ(/(ڨwZU%#yUu.@.S6*)uiB)JA{m)S>p_bq_r{bڱG AxAv (4ٮԪ.zZ~$!4̘ڀ`E]^ʀkP9's9&8]&!ar(;)&8ê3Ga[J#i}Ae!@j%ȡFmbz7 `D]ϚHr(?o܇JYB*m5 Fpb%Pػa 6jJ'@XWE$r!uN"/-Ar.[9',;soCx>Q_Ƚmls!.vTm|fa zZ7b>dGk52Ia3.:؎,Q.a铱v̪ Be[)2%~1^>gz$H0R;-cX]. +ÅsjCc]d.jPK\6ۘ,a=hy^ihUQM>?#@ ;L=IZ \`ewO3Vk*k;A7IʟLE .q~,xM,"vn ^7q-ߩUt{ )|=|nBA)Hҽ :[g.Ďak@|OKudz qҨiI@}U}슓9cדtkbxyR "p*j9\#6cFyhC5r YVXucE[Np"uGݖXQpts>]B'sAԙ Ys}Lehԉ&yE8^;'kSl5báyu@!Q8`նT\Nzt!;`:V LqoU8zxxtGԩy/sMc~\먴*妫CYcI]%屔=Nǵ?!Xx&S-}=¨7YW**#s}W*!2?IzueP^sC$` H /e q@q֮Ӳc϶~ Q[Ԩ8 ܽ60[Ĉ<]1 N7@a81}ILjwD3H6CWC%\@ 8/8DM'숳H {M5@kLEg+z]C_^sGk0k=}d1NFU8k-枋 MϾ嵻nʈk#3cjv'C02&2GZ;"[~WLfqȗn jk3K Wܸ_ j^ -u_yL%սy܃|^ Z8^WURцOF𸒤{pk!^c l(* %2*YuGj\j^lf Uڟ ^bJ'(@Ga2^r1QT鴝8峚NܥU+9}#Ā;gĖp÷v"ohmix`dH3 ,D9!$~?Jly+I<*UHjG T = ;RPgG0'} e,ت0fy`z]{l'q63>%ffr)u#<8UzK,gJ\QCg ޕJK"5Ȅ;Ծ @swjTG)z;&,9 ,FvhnVbVuq` ݦ%=;$ 2-kAI-33(kD8QEј L +Npٺ]M$ŝ9 WS)eo+Vx@v^=%LaM z=`9Kh-QO: IQ[ ׸sLB i>"Zָ3X= GA@m5Mc˥)~iAâ\t5NHyrU! B,cm|o>F]L-$L kR Qϫ [bo|pmj}~_xT=VJĐͶlnj xcH; s;v, mb] LMCQIoG{֛qr5a5ˆdUsߍq$XpRDAвQYtSt ֱH!P3U\Jy{|CޙÏxC'ywט3I;I<;۟=o˂xW+>O{? /7jn\S~ut.@V]%kd!w7w#QaG>=X4YIORnLJ5^SWø=l^7VD݄ULGzj"Zeo-a@897RHDZ%ȾT/PVi»pʬ+7:,F7!+p$!!mta}40ئtcǨ=[ć\hSUY(dB &;;d~XhC``2d:(j&j|P~lM%Z+"ڑQ8=ai,l^3ۨ<4d}͔zM&?S-}F3t\Uٙx[~Sie{2pg [xc"NF-氂DLhw]ZNt\a_i,8{ 9G߱H::'ltduC#+|I7*_䪌VQ"w>@ ) 3 U^CgL瀉y eGcsY͖D\) ֹZR^*u_Dh<5 ;;x%8M'X]wO "[,h[W4޺Yԣ_TF[r#"C)î?~sy輣\K#@hպXzxo׵M 2gjCҦJcW=7¿>|XA[Mu)?ɼ.llV8"L{i)Uoz)>FÄb+gdYU`)S%C cWv݈]EgSFlLQc2..pd~v<uaUmEB2 ޥ2shOL0V_im'}(X3:.: pV̹<_U_>wךyV KA_eX@"EI?#vƖ> e@YM_H5N`"⟹nR]T48`?wԞ@/ll߄{IaY.SȈ(;8ͱW= ݦt$)Q #5],śi*X K8<*X *d_2|gϪ)Tu|XF@e*, WEGU$qn3Os f뎨AQKW뉐:;A ξv"hHmqpЦ"wy-Յ̘!Wkl @qFd&qAEAqDS蟳;?r绨P4h J~='RkiWԜ: T`JA4>@__?~k[Cͣw{`[uV7?o$8y Pᥪ>5,h6vW[2dP߁l8=No檱%nox堍: ?H;D6Qf?r \d/h2At"{L\ѝNŶHxO.P}SӼLئY궥+[5 6:jBU?VHkc ѼOB<$Qd2ܟ0qw#ͤ*k=V>wi5Lؔ[6Zu-嵣en{ ~wmnw+8PaG94Aw~Bd\{y9ŕ;GRZ 舓Nf5!Ѵ'[Z<2=%^c#ʃ%lŮ&NB-)|!xuy+3N峡^g? gD@{'95Ӳx@3WPy6,KoHciAdD䋠 (ߔ_cbim}r|U>rӬejkr77>v%b'M%W4U1MLey`]O` lKe*Y̟#'bw*48ȴ݂AN̴g}RxX1RУIQ{O=cI_dﵣ-*_<G$ y:%9قբj{2}QC; f-V: \A>XɯC^ } T ;R ./da ŏN!b &rC:+]O$:mʳ# 縯u6p ˾aiY ;EfFI~ǞLO_eU入cУ #]YJbSm(cJrKO %Ͽ AMdpಔxK^Ad枴i< 5o2О=֫"Q ~ub3x \w\ryy9 "V &`Uo> ryyLg)`H >$X+z W/ X)>^I/m?X\%U]\6tzzR-@_ EUj]} 1nɼ lʻ1{9x΅`ay[x H &9pɄݵڈ5Tb_T=!s.دdl|4hBVEFL5/7mS?Cb}N>୳KgL?j ,GWoR K+јۦ: #^]?Ig5pN+ }55dz fD4'Րj?f,uI*0y gp8 G/N_bRf濇b[$Q v 蝥qo-|o:D!vc5W>{(U8}.䮃dJ^+Xd?$l]lCk3N2:_*&ف30,MG˛5X wON}ޝgr`:{D51!pM79&z||x'bCN* #t QB e~nws[B׈ȃ;= $oCN_%Ú(R}KYp+aB-O$WQZa4alȈhoʕ%<)L"Q-Ub،Nh톲db30FZ]."}J0?b蛥39(9X! cP522Gr0n0iўzzp?!˯M^KZ[5G[y=BxHv f\9{f>dz/GU9snMLS|?10,'QCBPmXK2~꯾|r Th->{yAVV͓{ٛ^jUFI9b4U\sʇK*CQh+ j(yR=tUv;p|}㥭CȌUMxhԨ˅TaŚJh}Vںlج7hwr elͽJ38xx)W=%flՃq H*],#dc^Kx^Jh(}AC`?"5}KV?`xEhkY.wΎ1D:tSJ+lRLpǦ`M߱ GpɎDOLɺ [qBeօdU|| ]w,"(R"t~ʖzWJ@Fa8wdM}b+iUSfhvk0M~$EmB#\ rW5S<w?2r͂KI"-bMGNgREmppRͥ$88(+ [redBcLꇖ~t 9W/j/%G[B$?b'UT1΍'/h.?0=+њߦ{Ջ9I eM (f|.@d)7{_XzF ?n2 O.頻| 2$k0H]c#{VJ}uks YK.ЙqBm=&4 txj&Xs7RK0nrjЧl aT$Q1E*jGa WkiS^PFܛ]m-ΐDpA;t金EѦfW镓j7*j|dv$t\B["u28P[^L~BRdaJlȃZ2$}?MZضy{RW['#g~kt9Z!K']h+!z|_ 7N EQAk6zt)d{i4Dvd~ Y3\Q3MA?C; Oa8릥cpal "B ؆8'o^PRhޔuĺ %Z2aEqsT~A樍tVp3!nu(b2ؐ~?> gc81M gWd[G76L$b{v@r^x}C5m&Yvgew媭WUA?{vԼ\j]pMq*گ-2K41c@ i7\`-/*&9?TP -(EJÀ&DlC"?ϢRAOyum3 4FEEXpA~B=X;."ZNd%+ 56LǰS2ٟY>]Z650d |A▛i ì*XKL'"$f|Ck6o."HBIҶw8_~\bNUӖOI |etx:(Y~@wA$"!Վ W )RP& bsX$.QY KTfN q(7~]ݡG#{3UrE+Hg'x(ꏗ>R|UCQWVqFko +)AbU*tHӍ/'KX=?r1Ö]ExՄ+LK_z[4n:i["b40b牵jb^-'kYzi9 sNկexiE6cΫ[#OXk&T.z37]I'np3 0BiR u~fPίK@I2W7=H\}0}Q(d; >r6-CZ~KXD_air D{O  i밊)`,0;;X{k^ ul.Hie}Ӹ:TZ4 ?RяI? 9 8e,/&߻һEQc V 4NLj.<$ĩxqzsXUl1.Y)tdA&0ܴM-]g C"$8`ԍaQT%[aYaSd'xA,:z (E&wS%\sQo!O.m|1ͦrl1J!?s08/1>Iz%6}$'tŎJ= yAzkzdP7 J9X[59xI~.)ot7lF`i^Aˡ r4 3eB(֨c),cxϳ~"b PeW.‡O4S@'OEUahN|֕%ϡu@j4MlG*0{֯a0p.qa郹-gf6XO &z@:Q!v  ѫH=@"3=Td?5Et1-]%yX^67  KoTi9qzFU=}I8|=<*fDWυI73 4 4[L&r~C^k,&0i&2|t/ WՕ+ B]QS"Ӎ@WY5B x[0fF`w*ψZP,X_s*@I!Snvwe> "l9BzawД+w+DA2ڴ[Zx/3[tP=s6P?~WzڷYhƅT+ԖK 8괹M^Ne V̊=A\b ZU? ,l7Ӛ=tz GvVެc~œhL҃fþrGn}\rOzWFA,vFTdqu#aZL$Hs+^,`&erN N?9zTة%?xڍ9Q95j/иpI‐Ba~F08dTo_@8M7u<.6/2U{+24ZH'ypa fZ5.ATV HhPlٹ}`T{vStЕ@Iqoj^M,qFuӐ'l#ᑓ4Hs2* ̚3l ]Q~j@/G?BdmT1pԥnY=MJxݺ Fڹ8/.$ -}0_LdqYO~ۋtDYP-6Lz̉f}#`ﭳ9h/L슈9h7*-._qfі3:f.'c:v֦ʻq!zJ7ux'_ߐ Uu_Hany_?Odhܵ,\^G ~]KJν</ufPNyj^ asf#uLQ/~65C QN~6L̛_2HKC0@2.(ۺ~T|Aq`o Ԇl[!Ͱ8>UCH~`w ʇZgf(+7B'Փ0J{ $e&TSR]VW" ~[UoYXX2 51%ehHbWZYE|?Ȑ_0­;2E<]?CTm:ha FYe* Ҏbbv ,WP|k K 4; @ HBL~dx/d7>I].xǭV_]w A`2m6S|L=kWsoiP,yf-%LD(e|PxqOI? 7c82;HF' v rm8(oIBnI!h= Dmݥc8ڳ|poz,zs h'!øWARl7_\5%y25+H)VZY[gvO; /4=Leѥ16UǤ F >ՎX4Rwߐ0>ɖ&8z2{ȝ焅Rĉ1ߓSNڙfd z3u6jk4WUHCl-{in'k?cUFovb]qں&\(dpA9²r6L I)ͼ6vkv|N304c3Z%Ԙ6Z2`C]FGLyr5+ } aiv 5wqn50UVڱ>+ ?>fY,xEP D#&?o3EhYO`溨>[d3ʙeB䉛-Rp֙DG݋)~A|o6Z<4 ")/m%6:b﬩)IGۺ^wbCSZݼ`ֶp Wޤ)tJF@%kx*WuARԬ87 VF-q+""ǩI^0;<0`s2P5B}#ԶR-`V LɭWZ}ôk iXZ + D 7][Qol/37xIcI"7P1=̨"o==bRccYE}5 B rz ͑:E=԰ ߔ1Cۊ&jېqwMp0~0#xu4sf*ZIxj] .)j|Ek/*yeleTit3n,#{@X2 zy:V~nS"om(pW(/{ib`i@-` ;g .C_"Q` J-8ƸL.JŞB Kse`i򉴦NfpJM]Y` lΰϺq߿ "@IgeT#|{Y8M5>D.op}0v5{K"7]WgY4,?5 Dh=RV>3w!DඏqJar5HfrS|Fש 2$J&S3jWWhx·x?Hb*|qAxpȃ W)kLR?Qi8A#g##Jk%w+,/%XԴ [( jШK Fu?&? h{g#hɔJYqRJN ?"0U}+Lpn jUh|hs†0x{&ZA{S_PrrqqM Z&#~^|CȲLJ5 Tx{/ GgJ~ʡ&kh }G* DV~{2l4HHcϲѰWM7Lfޙa.$otS)Gl"!z&Ge( -+_+Fyp [}'2`&ZlVSe lBGVRRKQ ND QZ2|ϏXDsg∛!%?ټGTw%]']ZڔĹUbX$S֩d'umzh1U]ſl܉eos<ƢcN5g&]|r͹ppmOoqcaœ" #מp.)Ȕ/4z|.]dm%@)Hb1 |/na/Τbv_btu5wgu"5P,<?jmNʠ\KEu͢(-u9"E봳Ur ʡ',Q6h0X%/ٕo9=e G$oǪՄ#at&fѪMcAYo,5ùGx?iG_ $tB(QX9f/A=tx^jX&i; -6~/Xp=Z|uj^궨ѷeީ^>ᮼ}) 7%U_^إ';O"@.z#^(8N$qg@^FDH4,T.T)fѧLwZ`W,%LTWE3t4wp<@k7}~iQCۅ`ڕW3Tq&j}9([rska>;#0s&X9)7f+wW!U:}l4 w xi!СY`pm֘4fg$]6rwڬurמ lJ,*LFX"-] /V +|8%qʟo`3ؾHlCiR zJ P^kZŀ3ևt^ExY{5ʎmoP͕Uy.6P_f~]UkuuGc;R5tt wB@8 '^I5:45RLר:#\4c9 353;yoBB_qPy>roEСs&_0Lc1B!yB}|+#j(~j yf1([tgO"y NWVPDlLOK?CoY qXhbӡmtաR\±jk/pt!]k~ –MH0<Ī=~pz`(y$@pذL8GPidtZ* P-ѫ@ķTQzˑ*i6: U`7b!PSc AFt)h)1˃T&fbYPb{<$FTWU~A8R#h*:ճ/Z1|@|gGwuufG[7@:ܷcd/V!7A\lNo5}.S<ms#O|[sMV[?HRC@wx/t42a׷C,ˋ2ì  j9\sS"O5F24nu{&@-vBb=jND1-+V^^32zzZ{I5Ϋ ~OVZdoQ.e{To ̊5*S9T7@$^Q>}{_H\cq!qD#v16RJR,A akKf|gٔy}o'"[_|HY^n~K%mAzנ,}GAv(3k'hC)C@ol8 RRȴ?6!C4VkSP$~b4\Ved q[POhOQNftM^._!<`l`VB .AqFY o8z+df=5& vjQ]~<2]!N ɯ[’.Hd\/_PxvӺ񝬒#p4\aā/dᔂE 2 [ƫ*p46ep0e,qIE{χ4iJ)@3 !]YuiI{ήݪ p$[ee0*QW,J:5Xn>.@v/xSjy-)pY}`ǫO̾ao&O']#5Kٹ gރm%?*v0 "++V)kF:;-cC!bxipL)pgBK "B_[pZֺRJǝEz[RجIm!/ÏC+ I&j14%Lָ c_E_jԭ:Xv噙0,5%J3F6dkj (4lJ2|Ux6v0~ ZMZ:#@bC ɏsMs%* 5ьCkj^t}W vjdZt HSK%$ˁCd>g]ǎlӖ_x& fsʯy|ǃfch<'}\]~  %yJ IK_ pPEƖ緥Y{-3 hYpm0selZFN* pq qf`8|96m.cxD1H ? *I{E'Rf G;P=Bq4SdQLP.{SÞmIl]k;6ذt⢂W#>/y& dFk`W8_Z%c_f}< #^_F 2GZ+őtk%$՗*v*$[]!lU{^0y ي9 "fR)zS^!2Θx&p;M$=oe+[ Y$udE? y_^p av︧[!/ "Ω>bjT#!`3ciPJHw(t`$:#pdTQCW8 o 8ͧY ']E

PA;{]AM좯pʍ .qbs_+ `mgjgտg{7rfE^}z?KD aS-NGkTe0; ZSJYC}65y):vF5|[ij}K/0{[ zRW:/n=NS]d3 !nKV%̃jRox;g1J%֜P4ǀ,xCA_3ԺC"|GY7JEe"]ly=Y^|[{@hiɎBb!I.ޮ~}C6m&|~S@xvxXK(Έ^X4뚸#c҉/4XrҜB-r|eYJT²{9QU`*Ca,/m+[` D1N rl&WS٘{6ܕJIc%$.E  vn1~2a}JVI#.8HjޱPMJ[fɔ,#ar Cjxpmi{s|5`~zyh?Iij pC-YdjywܭI<~,v W d'ݻnToحD|a >C(ss(N>DE|Ze0&W!me w;0^ԕ;,9juOeΞ;}`%& ܌=I`~*$~SY E +ⱶv?P1Uϑ8]x"A ]`5ˈ0GNm.0;L *;6R`,FOm2;zzht*m[Ro:Z)lY +gs 2 ;ᡓDgk/n Y| Be@Ȋ'&&- =FwȌp1:Ct?t_$$vxNsu^9o?0 [uDCdV !@.rjŏ$ɈߘB`z(J@%aEi!:l 3d =n]kgPnVx'vb8HBh #yL;88U7QQlߑS%HI0// .Ոt (N]ƼbȚBi%YgDU)BB!(ŒNO{9=c>]Qn(J 1ZE`:Q;^(yuĥ{[m^.Rmj%IWh?-ITXvK/\! 蒾{EK+*b2 UQ@Mzx`[I,_%Mɤk B:ɯE?ne=#LQ(Oq*-P45j/va!JS#SI|x[fajԼJ[6H=+g0፵2M6;r'sV.y3ňK]P~3u2Xz}\~R v.Q [/_4ኈ_U ,[.̻zۜ(jkpAd."Wd]+,7كu%*ZO"rZ{{9F֢Ô*uQS}0tPcutsgᱫs՟W-RezqބtVށ'F@jb*UrG|0'ɌүD44 Dj ԓX:)"yaowdc8g8T>TT0n ^BP#5u&✩ZZ}cѠE2w>9P68c.ݬcEx6djq>Ij{'wi\چ5$.k<|<$0@mc7}X`Ɏ b.W5,|P-)YV9E t~3IF(9.gjc `3.avP,A0C!yI/T7FakF~r^,V[ D'_Z8`i-Qե}t[ycS(FA 2OAH9ۺiyj&ZDilD;zkgծ1id^+ћ Nj(EN[D T^{W-fNssp^5]: }__q~Ec[A@!q+tTa„%ݓ:I*snjajH\Bz]<)׶=Y!Dt KJo֮Mo N}u6UfHt/$6tF Bckh|2,7oYҙkfR 7oF-+8@cS\vbvD; MUέQI<k?.ܹQ XA 3\YOj&h .'nB \J kVb9.J1YLh>B4&Gm"ND;jBI=U*<1ADUUljK/NT 1L9@IU Mkxf:m~ZP)svv,XC^h"{#1τ1\G~[L>fVc;RB#=|vA2aJ-;njN#R_ DjL Ҋ]L#a-V Jreq{RBF-۸|>׍V38_|{2U1vcs׮s0#HP?3"JAV(u_&oZEP'_ө/ʚXS^'GTp}|ўzckqY9:~_O[a H#|#ߗy>ow¨Mu+"=J"A>{yhW^"9o?̞*eޘ^[:dB'Z% KLu sO.{Ue͍ &cÉw {^o(D_xζI͍b^V/+xqq%e:OM{/cu0 וmZB=c֙3EGWB -~ȓmEy ny<4_8/ I Yt;̸SOK |N8%ZOAIj[Rh83`7h<As)+pm:X jF̖K=ަ:Y** HL)sO_ɯA%K #9M[MKY_w@18f̮o;ž!7? E4:^`,r,(q>˃l8klG_ji dgd[\ݺTHY$V"|ٹwE0wYV; ̊ Yy0|Cɠ̪kaI¬ 8ͻ7Cc=:Y)x&`1 BN\0^;N@S~2@?Ե$ d3 O,H*>=αfeojM_V /#_e ׈jZ̷i@=}6[Q<[u|S%{ku}.`/H G&SL)|~SX㝥F*^Z^ưkODxC;jEzK:b`65vq &&qtX`ُm!!?spgG0;,rG?1/8VQD>T%tz!h"xKE>| c77}0,S^nSgOۣܣ-x.:g"+GeWB"' r1LzfYa@Oa6t8-?YwsKb(c5h(CJ۳t~Vb٨D}9d5^k` :0m[AfREKU0t ТA_a\}E@KVqG](Dj!ܑڴ0(!l=8$uQ1ծ3CߓAd3 k7x 5Z1q04=';^lhLo20}($,J\5_â~ǪE$]A7z/Fer}H6$MʑJn5QcOoY4U՗.zm?̑qDOiJ߶x}SBVHqNgruG jW=ouJ)b 1k"wm(Yn#9h".9<RMǦm:LE*|IaZ^~`dՌ "[Qrg}`EcF,+`oI{(9ӱe5Xr*#F" ^qU ·)BLzx"Ȉ`YCKX#9K jvy6w 4 NRZu9koN:_`w*ˠij ?({o&n}80aYW.fa>_Q'"P‹r`Bc;u"o 4LڳaR2bvow8BzyX[{>E>{jĘfBQ˦6f`WgKlI 7HmRf $n턥W1)CiGR%+_VGfQ8,-Q:w7Xnc!q;Xz UpS6R\\W BQ #o~N)#`$ӠzS(QP y.4@64qWwhy\w̺ ⧌(ۖ- \"(S3njޮsg! ,MG寉sĸ({ƅlmyEs yYГ%(Bˌw}2TR`r#*(!Yz?k _x_[G@ψ6P'r4Gbźp&,o8^8;=߰AAYczM3mxn F{ &dx#ٷyVfe؊ 1qsAJ:%o-;z˱Qb '!I!$ʼɉ]b +qob\9FU~xߧ+no#_U} e =TyiCNBt+8m)+q|b1ʨp<®ְF`p0f%%w g~vSStbb#1BMSY/h#=FPNsp'o)o@P Vz1jِ k+0HVL?cD%5ڿ24j7n2){3Mk8a;!ղh^0j^ɛ0JX8Nބ:n:Huw9C9-2njٶ(rJ:قamj;o?r!o|\ % E5w'Xbd9kP.(+ƧmS @M62T+1%lLpkeHZU(ov} *nE)ݮne_W|w"~JPcM^To%aۓ[>|P-ǩ?6Ĺ|03}=l)9s?ΎDKC8m& m Mʜi=۸a<ȟcNܚDkY)3/{#^ gN'B6 F|O@ =Be2) Cxf3WIX.lZlz _`1gS`Xҋosh RJl_Δ;by)Ǔ1m̿Fq+bӺ:APZx\PyjxPj`Ta2!oUSgH^1Q~ XfwroM$OJ153ȟ?.ƎWɮ3jnP 4 J%nֹ@ 0m$N+Spi!GY 2XJ䣻2Epa]t$!(ۼ:*Xr[D yv)NGWF'p9H5rF&DX8IF=o)#"&F}oe'!\@vT1zC-Q[xd&AAk㊧LF/PўN'S"Ug v(b(Uf;44 4HD&nw[H( f`#^Ryr^3nc΢+YnwR$hbGɭ wNsc߬ 1 Ҡ4VM CgwR,hO{Y,j'2BEѧNN&]CBA˭q?.'JXM-XWXdPzܴ X(g>7Su|*R'At'|Rpwۉq0Q(w߬. `d8-k,b. a6ި=2Þv4?p m |vbr15H˲{Zi}oݜ Y&:u_ vec>^;7ֆ%6QHd5팹]ɖX9Gf{ȥه55 o,{0ffT Xc'c=Y9kѠjaYji ;BGp3ضdV$[XN6:[\oXb[d&Ri -], W`t 6ae4? Q'^,UGכX BJJʼn eҪP+"y,vA5;B A}S7^ et;߻eAhp@=}&))8O @1ER}²\5 no"i6=5#DxK4?y5+Iӏf!'h %>egl7P(+.=hnc=-+tQYi8 ȏ (Bi\՝NƓ(wĒ zb떨|ѩXяtqwA.OQ <>9{]^"w *4kre 6wcو ;x=蟀Gs* F \O7#X ҊY00Ur`tjy_>YHp.|,`PJ=x:;)l8w<@kcђ/)jc鏻 tnҨXc"'mTn(_s\UхD1,`t}5LA7HA&c [HAoBGә`irvb<Lv[{J!_nYޑ8S XKO Ja4bC= сq>'{@j7ڸ7JBCꊫ,s"G.9iݹ>ʿRjXe]q)sڞ;ч%/-A;Fkh1g Kiނ)(I2o!cHu!!xdRxգb<[@}SeG1H`w˃%CpRe8* ,D\+Q% 2ՉSf rUq)U>I39:_ %\J9*K%ՅH/p B%1'DŲ16{pCM# ~ZWYA% $98C͒#O,vg:4ꭣidҍ8U#\`aa)7 崸jΟۧ؅tVWRWȊUqꅂlYxFi,!WT-sܘ*m Ti$d^<15$y,!:q"jʞuoHbNYzOt廬r[.T^+hyi鴩 H|Wbx]16'Zw+%РJ +nfBEkxf_ oԟu7^SuP`LU\V]א %H3R^?)+$su_we^BB.;0Fa'lǤo;<~Ґ(2+\NnJp|mlQSa싛7:Fr2v-+X09xA0M0*D#U8kˬyO ;BBv6&)5yGr77|Rνיj 9maF+wgJQV_;-PE4R#DCWzrVx>,:* "YW]ATR ,Z;Ppghqtq0@m*CMQf+c< :ߠ9ĴsA#0RC,GPTiz*s<->B$}%U={. WM`mN?Y՜g%*Ў[em{X ~x pT]iMea(؜)Q&xf$=k~ +=^ 0w}p:]T<nIqC 1;ӊ{mXB`qZTkV?ټ c ^C(JuZ;p v/vf*Q3RZ<9FjV?=u]ZKJjᔘ'4b~htLpi Ek5.t\'ȿ Oes[ѹ:eȲ`^.\U ]V OM^d}EN>N vݘ낢;/ I`[p&Z6{0 yTd2Sb Uф8ˆwO_)Sg!=\ e-'.4b*a FචЇJ~“TɄ;fE4N^$^5!@мާ7̋ lROKA_@ !0_rl>翮4(t &Œs+U>L'#H$ҿs=L.ɤedچIaTa!Cdz"C2UxݒC|ŊIWD.lNniL))zY?Ez;-C,/+ɱYVkn85ѵ1P,xe"֬2ф z:':E* r4bpoAgu}]*|g ?nC1ڹʝG" \AW@NOn}[J1znƻ2"0׺7gd3;Flc3 :R#IW*NI!<~Q[LSy[| Q D?pQ!=S5>`݌`xޯJ8]7;+:} M0GU4v3p0zߖ te2>% ΢s"WZƴ@ F-kXc_-词$¦ϻ;ILXz{u+~'BM4`6:mI﹫\MQ'SU\*L5p/50qrh[oncqQAmeYE-zvN]^ uԕ^I\#TV\!)3ݒ]HnZa[*gm<@d=+|sGHjzQ!@H:y)DgIrL$Y!G|@?d,6V`WwXbCwflz'o:q[- RK>Z DD-QNՉD__*.lڦZX%C 쪉|uI_ BkAG(YuE !8au}O|(b{ZӔʏI{Rssn|-!~mIoh4IqY(+Tg|ZL:V¹$_$ƭ;$3!l(Ʀ~xzQg?0EzVCBt4y{H=Lp+=1ѵ1 re*_*0aUWxq]}'1ZxhoT J}:Ge`O:A!e(W:,v?L*Xlp.$h}uv6H)8 +ދf8|)au^sGzD@%IRuwOOc\ A-E,8%Pv}'Fּk(B2q)k.}T̵3#rnG rb ۽t7){Iz)%!1ҙVs'D5o;mخ͢`@Vkr|w` S$eExV./] B$Г,/{n$Ώ A.iB+'/DPv~o"hzX_A삍̏M`1] 0(ejxF]eBfpj @DapdnBv2Z*s[4@&R)FG)oF5j $i ŧhP[fIoFJԂŅ3gů:H,^3$܁p)S1Vw9#jG6by(FFi1.{(O(Jhf2v 0DOmMWx髈WDyߙo#48~B}@iЙ!ʉ{6 N-삅0H=GJﺗYK+.3b!9OO':nl*Ύ XA2#i"!~zJN!FP?/@|b\E$\>> YI;:3R,}lFt>vR:ZFGh7?Lc^|p !^p@)(M8i"l6ԍozXҤLYItu,] 'b""1ߢr/_8*܏>*Qߺ65$($cؾ6%u<=."=Z4bQѥW^yX60/E'N*}<"uwy.9eev>źI>N9Dҿw~aQɼﴋ(@ͶicPP3D5vg}B65]"%&X~I8WdU{,X&25=c4֦\QyTh݊n^p' jO,ǁo/@Wj)@Nl1j4x;trt}x!7,È9'&UJV3ImaaVW4Ag27WiPh/3IBu_9cXӹ.%TlX^?<=Z uI4hVt*SU'3ak#8_yBA~y vޱ-68N\`|C q`QV䓶=E N~ι.E>2]vKHIcw"ԟL0#p8dAst@ ㉙:?$4ז6c:þ cڢ4iۧB:u' k+7{DPS Kg1^9M%/*>2IEH۰·z[h o6xsH 3 S>z-1Rmt j$AB-wX~!R XN PY5t&g=X3Mw\1qпRDfѳZ8Qױ=r#RV_ﯖ@5vl'^H(D,6ҡ/܈e:-2I?ܦh]/&,_~pZV;n-Q&vAXA4rHN~L4pB'HLVh}{w !s]Ԥj,5hH?˧z挋1/Bk3MHW3c2|PlUCM 80]^P+!Krᘡ3˘U Tr>`̞KJhp^:dXfNaF.F0|7GyqRw2B!'FJ3:JعG\+IHC-]G"DIE\˴,Ytۊ*ŒUQmwpgf7P@oɅrqĆ74"8gA~1yתзs\2+d?yP/P; r!(1jgxr!f1]E<-K):Q& D$~|rxvy|X'4gIb?61IV8ovfJ+p߃G{ht-;ݢjn+嗡qI6qb~qEQ(*1-[ P ox\b\N<`~PM{͝iKƅ8棐[yy{{$u\S#'Va7 yɮy =,-9\lž1&e'e:r@HL; vn ZbTw *1Ow^?]=Z8gV]62I }Ap_'X12]Sd:'68@/?XHW2fCPZ bx(or0>0ikg * dVi%7Z)A_sbuitƾhe71^tSdB!g5wL(yYKyFBqL`:W qpYy82ze&(_p0Co lE”ӓ@zM-fp֫6%#f'}+4'DD!Kh<()FՁ r9,Wknk6t"{~-9)L9{}71$JYqJkg?Ē~RBmM)mfxV3p Vb"dxqU"kuMϬj%J!6nXz9D fVGb9bV|"s6xS&(baEp tax q05}d Tatީ"X\,хG5*yD#ժR;Kļd@M9ߗn e['V9OL88ŧDU@WL\Fajq-~H 4Ҍ5jp#TTt3 pQǫ *ڡaJvcԎzmlb2UR߬687J;dz:p:ܣj13à lYKT5_WLФe -{ l/I!FcAukdߺToh;u^(`.SפAɤ,Qnss"@;AʅP#Bqy|Qv:ҢԖ#  ynL ؾ9Kdz:g#QcO?оDYFߟAx_O2 ؅~8X_^OǦh7ҼgDxm?#vDX]k{Slx25Iˍْ"$qeڶ[.H#kFw0L;:C,)@R#E(ք*Xm760y"`&iPAb~P{30CU#Q#xle=YY!`VY@F(7P¾ ={/3nA^n:\eM2RKXlg܏YK,j/+ `K!XtCU-9*qJ1Fe!eb n: *xz%KX~pp{^S{vnNV*_*yc֞*(ST5Pv,qP" [AUGrExOpn 蠖hB*5޵_!<&e 5zx(]]sC2i_&jfsы&eZ#5O_BNA'fLD./_~.4\b׀~-]HJ x$M=0)؂S{4,$Pq#}AtL9cU? 'kֱ=V~S-73el{-0*ߏw~8iN}O?uLj##%gޅC??}$?T73ȄhsC#/h %;8gR=8FxM[~c0mwOG0(?3;#Ch'*Dh{nQNl]ܭnTb 4H@Y_*GEVTЌ͍`maɐa+O˄xc88O׶7L*U@ɐ71(*M BRgg7XMYE`yv0\|9ff'1r~ ^ǍG8:[3fڀl.oȗޗ$k8N/τ(y6E.ܟiTT*ɤ'ufd/ X,@k]na|´T-WhR6I~3b۔5g%NsؾdN4/m:'͢TtӼe쀐`9)w[MeZE%P!D=C{\-o+^W0B1g\:;y%N͢ |]f=)i/ O1¦EOԊFd Ĥ|vLLӿ7,؋'h(0]KLTMRf殾T]TNz\TK $ZSFXu @?TL8–A<=0t)AF%F5G=1;OhY8?& -'%C<ZvP?H˶Q *"(ҹo4ԊK\C4g$Y[S j+'n!3S1i!HLv\fVwz;}i ތSuЈU; uƈG>!/T_}}tDdV?AVWQ~'*Vԇuw'rahmWۧe1u ppiQWsh؊ߧ[TQ3$Ua[jT0ObQsy̡< es 8nv ڱ"D\ZTΨ*1lpIH"f '%):B|UZgP[:ɯ&Cy$UX3ҐU[%,9cUU![q W~E3\]uP+oIx]n@=j[E+6DK M S N?01P`i@**qd/Z3/wp,X-t>Zhs20LY{Z8Jv a= v($tԏvß13H_f78+$(4ф)>  CQ7\KXg7NƎ#]KO Cod OPų8 gc/ʹi>oխJK>EwwgGZjɫ"Zq8Ͱs+ݑj)@sL|:Il ?]xs;UwbaC>Ž4Itff9I{s0msKB*qjY{+v~_Bw_Ho #~@a@Z⡁`ȢW"|;%|*OźşZn˒Ŵ嚖p TNLj> :a"Rʲ. (A@ߙ<ԋW>])9dW2 ]<2% @#]2(wO l:;CvEfŹUIm"hPBSp(C m촁p-{<0DjSX+Ei?/vepD؝$O?>>k@.i}M n0xؕ= T^iӯJ'+pDs7 i0ŶӤ Xb> g-5n81%fuGxH)!+u*S5SjKS+RӣS/5M#Smqu ղWTά`v3TԑAFrM2++\yX#-9Mx_>y.@XY.^n_FfYL[lȣ,*y|#0n1/=Oqs1#;;~QWIe戚V]WXؗ_Ok%֌JxϜ <$-إEu=Y,E^iQ;a \P$yov'FX0yeb3|Y4egxYB?ge D nw;sBVodY'KPBX-.n_" gM7N0ͺgK<|쎫Zy}8? ܚTk$u&AjĝB}o4*Q0#E_7D;|%`Wl|+*Ɋ/XNS-! vw!*1yUC`J;fOg;vrsLqg p"Y`em]daʣ=u͐UBX",/]/8 >5^ݻUIElo24X+n8WW~tTÊO^;q-]v& gyM˪_)K{`L֍ rxd뭼D`whw+i5!邲`lrCp.'SIե:e| JF(JTr=0 DYO:HnogZzvĀmm>|%_8̋{R7EV-yˎoj^t \/U5rrʣr(˷2El] ~rbbHmVfH5,M{X u\/]!r65x nB˥fq.:GixL\";ԁ Q| ?S9O؝Sz[-S|s9 " Vl`X8\f@4=1SJ\t>igL)M%Άi@՝YyAcpM/Ǿ$[2dB}ߙF^" *) Ƅ JvRJV|'$ {C䅎qon[ wr!_cCWNB^1i_̿sLvv7>SC<;{8<nj#YOvlu,:dfvIM~n(<9R]S}ס9[A'm^rw!+ÓXAc{Y[̜M \eAv;ri\rM,=B30%Mti ]?'61>CG N6pz^uxHu*}I76εkGg-1p'LcލL|ݘ| M')ŏ|,sAZpa X~ N,HPG$|z$ `]rlO<1ɦtyϔHj^2@hap̖#6m0^g Qs/tHK:ef$ӝ]]*RR5bQ9[, i5kTe (A][wX;@8ߢũ2eN*yB 8Keۂ1NLSoCɑ$`x6i8;jac#+_%y4'_ت:ғw4Qx?#|%1ag̅Awq}?3_,ۇXdٜn=g1Uz mŠTSCzWO(?k8kgiD>'lX ,X" [we״Hɜ\&G"}2o-#؉#<,#^wx @B®F,EјH8g`{1#dVcB zz DȈJ1BWARY-7^m,{X >n,?3H@eHPxය Ӣ r75CWEjZ/b;,oeH<&bJ$ ۤجŪ0C <3O%t d `# BtHp NҚ)fV~H:C)tC"I_V8wbҗ UD=@cใn]S:4⚡cuGh]a(`m3"@p ˽;ɍ̟e^s3C1 "Y?g/.Вp] 瘼/v'_R5P_U1$grmOd睬 oXų L  xzF0o v TkDN)O Ma}E<LM0 7; j]޾ŀکFWSU뻳[͠]*eV$Z,e5((h!s[RMs;Rp=xOWAdgQV_ <8dk]܅mq܏VЦd r* U$4&pGF)=nE~ihreo.&v'YNЮ&{ƨn9KЈ3 J- 3/$j*`>I:JuKv(}re2׹DЕ_Vsx1C*ڋ5 pP.hU 5Wx7UIu rY;Ih 9y!s J| n_r4oǓS k({\-PZf25(44rKx䱶nm#: ]CoskCvDPJAJtq9O3HHH-+a G $LU(]@-'* WETuGrC޻4*p5s%Ч;tsR`c%v@zj'qzkzeQ!ϝi&`4:rۧoݡ@ 5|\$da텋=0/rsPBNB۷HB,ӺAx:l൴L[ wޭ:8>IKMl1;Mk_iaVmykg7F,=9@ta$ۇA Ơ;z Ƃ5+alݙ1+:{G 댵+ 4v:fTnň F~"S[!-R:d?({9 93f*ig֞CbA9^jYKۜ›?PW98`Oݩf!{F1wB3AwrrqBxӀ&},9A7Arg 7#TܛpR${ۈ9:H8N>DF Y'1Og?w T,NCrҠܝj~^>e5uT% >v瑳VO~r$҆iLwV hbOlY+SelN.j0#shJftCj{_U#§WཁDse%agq˷ۉ(n%qe+/oj@^*CS.IW vCx.bq+\ ō6٢.iwXINMܺiE8D88Ijx<`H*dVL_w>`}ь-p6?0:(L2Wqkh&)Ϩ[{S&%</XnnÊx"ChV2'@p,)%ђZwG˖l|?vm24cu_d?nzK*QVJMAJ9OQI(|n(E8&ɇsVh*,jx~1IHxߚce NP`cNwQ NLa$"=䔯PhrݨÚHm)ftMcC (ps q7RPKf] <ء.7D!5Ni1p9FZq%~rTVZP@ |8 ,Fqh"jFf[KK ݂s^ FuS>nW(WznM@SDAsuחM% XSI3Sս1+P*"܈S:\Bzֿq2Q{[GKoJazQ숱11ފ/W&Z(t,e-eڤ5s/T kxd{*4Rz˜Rb, 7J=r݌ɠ.eK8(%^mN<5OjYx'RƟـP cF'L; 8 YAPx>,NElnkbi~S%&  f(wX c,4 Xv:ئkkUs`E1|*Nu80v҃f n,9*Dpk]VԡGݛ7~+STW.0[z {M^&,F}OE~hs4껗4 w6 s5̔;Yz{{.͎SiR_kjl E˨_8嫖~}gAx-3;FP{U7 {_]k,]1>; 4R1ͩp`La*N4^߁!:t)Xrv/IGǤVB0gT y. p%R!A~ʟH*w~Eֺ,AV$?v>7JlÛL tdQфws!1e c(j4o谡ڮBw2v"EӻMrX7p yeʷ$C K]ÐgcoO9bkݨJVR.y\bC oPp?`VJN3'(;)T#_r˃=iuLWr`H =ٜћޞk־puhAǜ@q.[I M& ~v g ac /̟[¢*[("yMv8G`BѭN k^\k)MmKMk u +abF R tA*^[mbnd3QvcqS+$7~)X5F ݛ|H(m4UkgUƑBlCBMfhg-/iSnL 3kؼ,YmWUF~z+#Bw>) 4(vܿ,m6fABJ2xM~Rh3@t8HB M%+قu \lg@-ntptZ)LPtbSwN`g҄Q/>"/߈c(N.[bRE'JP0}lMMkS2 |MaU8- kFN q5::'a3=ϋzl>@ɒf2obIkZe17ŨubܜY;5jD~FEyN2eUd;1H'UJuLxډC1sy@|,~Ǐ*y ֡FbO7&滄>hxfix{v>Ы02.knDj\$?Ю7[>+z,,#2Ⰺj`JYdEI^%'y~,nԌP㨥6`am_ 9jt1M/!?]Û4aQ]Th=}oВtZwƷBHi3Aϣ $> H$&"RdR.& OM[J:Dz'v {K@rሗ1UDL"B}ķ>A>5MYs)UG*ا2N8 i4Xh:o]- 7(ݪǨj2SW{~mɣ91rʂL ϖb/sFKIBfBSAFDMy()*ˉSXиHs4|IY p&IEUapx`|P%VJZҼ|CI*u7ԢôBU4rmKR-e,́I@g*>?Sxp U  zf9fⓦ<f#X4/-`p&=2V4P**t? ^/P@O?@ Do >'y6$߉&k<(CUEsBtg†貴+™$9I;CoQ17ذmDsvp-f)<+:PxMyN)SV%y*t,~3Ň!+{u~Z4X P#=p*9%vYM߳j: D'iy}4h;Dד܁:JNG J2Mt4veߘ.Ku*+;_#+-7 c9í#6 .%60N?294EǥiyO#iMY2\@bA~ɽy**m]d=m.Wq6p{Kܲǽ4Բۖ] $VD[_up9*b3U4[TWh|9ܯfo`M, {~urfi!S V /$+)u6|fxNy]!˕z݌L6tBX|DFEAG!sJd/=OstכM?R Xܿ8/SN '߮lwNȣ%dMƑ;15"Hu4MH(nűg&e4̑,[%~ɱQ˝QZy+A8CY DqQߕbgÙcRoQMzhE7O.“L`@OKZr1 Q<:wF[j$ޘctEڮ{!DSI&*YgFۛLZ}ya)2@D̃땙5?Cz\# C)RW (tawz-Ao}-|de*d)ZUJBSK6jS.\>B*m" aZ?ErB49Gq_iYHЗ=l!<ärܱa54A.*cX=gPy=i_ZqGIs!+Fr 'j6Mc'{b6O"][<qB[tqNva'dG^/n tMv!|eѼ43ҹmfBFT]aGǥNze-Y."{8svGFq >.xg:@2HpM#A@)lUB[/іvG[ k;$p(6f.0}YU F("'L&䕱VWYz{Ԯ{z_WdgLO0q;z2" ]Q2FUNsDЅA1(x++|7dc)D'oq!j6T.B9[.5$[B51TyolN*Pt,X8m-wYPlR1R!+]64 SI kaؼ^N-7Xmx;f(T%ҭj663/AyBl64aH'nY.OmԳ$Zg4@,$7oh3ZA ?&E_ٚ b<:]MId'[)4#$7abz~-z,b>7zP}lXZm}xj wz.а/q^撛ٳQS|q?i?+ˮ+hcF ec, ;g8@Oh7K6<}'و dFb]9pc$Ɩ^.> 1PTKWt_/CM !ٌ7I,L6<ig8RF]hfEN=v:- RF&a﹚oRƩ#]D̬I鎈{ceHҦ27~l/3UxI=f4c#ʆ_ZFb5+ĊS" /M!9FvADw& L- vSL?!zwEgbVk)Ww#{3Gd7.(s MӰx-F-18F~D g%ҚU@]^KL 3ssmwX5 "1䩐'.2C {"F\q( BUl&jU"ZDx4ݟrr^ݩRHqaij7o1D%_ `S!mv|jRաew(l_F?xM i4MHɶo9P)WHKRPޏ6paI](Цܱ@ZTh"oܖ>cCź}*9oqHKN(gyw}Y1/KKzgy h`(9~?)fLC2~Wha(t4?~跛-ga%/Pp{U[sk`>F1f3s(/{^6i*&w"t9WͰs,nDދ gf-j| .κA⽲8WNJ[}[Jj]WEPw~gӽ)PݫCVP}Z_t2% C&x שYJ[~| sjf`vﮇ"Pkcn.{=4 s.CLR.ߋ{ɏh,# 8&њj#[=ƆY[}Y4ܒ p36T%'t6o48[;(:P9E !%h4cC|^|tDBBHWo4BRڭV}WﲫhnWlO4i>RXbb'y[ٜ *L<zx= ),\ @zT ch Vd/ $FW6񨋩i%ʮ("*qə"ѲcIVդS:lY w}ᶅoݳ;;+{kso/sNiH;R sR}m'LF/Ke6%áB *S/(b^%t>Wn,/8'>`9k,ߢ n7Bk { EJ'pِ 9lȊiwSqp싌I)z(om#N>d98 fE=RȖv])/^o> d:;caN\P/O90(5Z"+7 g Cc{'u=u{7y 68>b^1d1uؗ33UfzK0\3G^Xg Vw5QZdkx g{aF6#R,4C1֡1͟ kX,[]Y%Dwo&pVT-uكC5 / 062$RAGc޸+SgF\~AC.ghil&T!m;lfliKp`? ⧒&m/ T ,5SZmzZ}F^/ ㊳IfK%RGnW6zkOVXT|mY8[@to=EҁjA`xN~'ӗ/αI޹B ;c'(t::TPvQy#]0x Wذ9c_'pQ0?0V +OFG1ډd:`-}ۚ[G<[4@EE .82 pd3]vFd@ßnڬq֍\WC!<- $uCRɌ= e]Y2 tBDHf~Eat.k`r1}5[X#noRtO WwdSE0ōSs0H9 hO1&~r6öF6rob?`9a~4qo~kv:H'ނ7TD;2q2۬ꯃXҴ)ENm:N{f^5TT\ n !8$H7M̹qȻ\2O64`²w zӧӌAgj4lUB [Z' MB!{L{ECyIB*TiW*H"ݼ1o >,"n3'F Ϣz'w $OĊ qYKR)1בGSPV' Zr[xȢ3< U < _7aGQpRF^i`;UfN*GoWJDг.g?J'qduoV+rD~k{@Mt˞&߼Ry{f]Zsܿ;MCC_LCVsHm{˩{OnO.ݺ#G$G焷m<Hwfh8ܷN'φLۦ -dt⁈}]S#Fc|<&Ί9p1#mpv1&s?foKI r pw{I (3$JeLjb{/Dg(V0(d iGn dPŴ{Тh]0fO3 h^lͰ=ߗB(qkbM7To{>2[I+ Լ#:h9V-4:v*esf'U>,nlq DH(xT\˲yOeTϪhsDm: ghFgm &``U !$rul>7h>tt&!g}ɽEҲᦷi rv,WFwj^֜oo^ܴuCm]g' Jʧl@II\xR+/#e[Ҕeuw0a9GR!&>uQA.qDAܬ.uG-> uUN S2#*ALX6J%onL{o#TW-rg1ICc!|׭"cȇt\o*$NEdĦ z : ,4WeėUlB駱l!'42=&9r#4f LM]C_a.x53=wDM'p}:KfفOBK >i=Xzr''( 'HfH ! 1@#uMjؠu5frHUJbތc5BiGz%;i02ȏBM!&d WPv̿\ 5ڬ{=X/4lɪ%ϝC.vۍ& uXףl/tEA N؄}}ܧNfGm\R\~v=$xR]"ɛ듳`iw1WOiɶ1xOOElY* l۩%r;{UKŁvt(5Hlsu ::Ț6}FDH,g+qEMFHxQj Ҫ{Ӂsvx^[R GRL=d$~Y/\s3.@Fr)Pl17QFFR`$MfdAYTkyVM 'k@W3gҒ@k^ϭA ҖQX86iK1@t25II㔠7XY򣬊Ytx~gN1T .eva+Bd;\y+܆aۄMiw4x;mGMY;߄ M^9SlnzL,ZjlTЏ86:[vS=[.Ky)) o}Ϧ*žI|pSl,XR>4֞һ ߊyFt< uC9bpG۫Q2e@ CTē2g@/]!3l2H;zuVap0VkBEHB37 `fXL;2#2h}^1dg&I,lxGg* q(wC *"P/V^cyxV p@lCw ݛC ,"?UڋO,?Nml΢xXruZ9p=hϹVt݁ihƗ@۔,A{A@¦'߶D~gĠ5SG, jB(o1P`Iԋ4t+yx&/nq8g`OU/޻PiXio?Hz&r6Fp+o&:>D}6 'ſ|IQCOW1j1~ ."}YlNC1S/bP}h^"Z?M4 Vm|L8ʒ^dI|ˈ\-iz[ wN&-\_WDBh+ܙȳ?9'0onӍs[<2[I J"z%KS: /Ǽ0%PN c$ɻ vM4ت OPNm@dA>CL% tu+{=깄x~&vT5y#^`?%M,EÙCONx;gA2vj~F 2X)*gĽU$9sewˉVdı^-lF*B1z a$tX]ToIjߔ ̽)M+lY!Ӏ8xrԏ67j4i L`n- :N0 G(<b|5Yh+M:.%BK_g*(2:>ŲM8)Ŕ}8Ƚ"^nw aRL"Q v&B}t0r&7٬ ){qV{J&ih̑WYuo12lz6ӭsPl kV[6$5yx៚Xlz.&.!#gE69bd&#w0dj6(Q]B$*R@%W87AD](u< v3=a3>IoJm($\,Ĵn,M Nļy䗖k)fOt,LVNNu7')liR^6z,>]R&ל0;qh Kt$(%<6CkbkQ+"&a ."=($|#2`R)<5QBSwYIP0Gkje}en;X.)Qq_%f#yi Ls$˲c`:9>m#}תg@K`,N*;S͠hL\}ú1>5jaaG ^Y@w=x/8x)҆cޚ.YK1Hhav<~(ZhP+"7DFm#{\ljQ -Uh?`чJM< oqrB=0ye%z-*{u큲 j?y"gӝ91K:Ӛsщ|'7K} aq#h5}1 yG?G.Excx Rw|}GEǜ$ Ƀ D vx ,݄R\9}'Pmc1OZ dJ<("T [/1z(zjY9RŵMaJJȓaT:}Fe?[/ww{u9Ҷ./ⵃ~%f[y>0_ڜU줔% &ģԶj$f?'y UO7dzP1[E=ǀB̲h쯣^R')F%޽T}lu^ uRu:4QĢ@ʬ6b_FPR1@:ʔnbAt f?|5~zZ$e W8]|։PrhQvb/T|PgQY׵uYEӏwێu-&iK I>mq_ߪ@YVFqZcW9e3邜#I<O1/cUOu o0%{@H'AZaٝ1}[׫9 /(xwWX߃&Cr`.*/"gRL>>=O 7\k$hYl2b,$+Aﭿ-A1I]Hdenci !0;~2}t]60sRjfdh)V~PCUŘD`YiM#0|FֈȔjƑ]_y$,IG"W@Zt<(ojŽ[ Qs+';f cwvS}$wHаf+-)<~\ h(5^*juU;q]@-(h/1˜?8y]Qyb=ts&c^ePZ|Yl\M#`Rۼ[iP]샦7p@MmGo7rAfN6dA}5,J قpVI>MuAl`d>q>؇#{Zp殣x2/8DX@zs1xj ?|zh.mxÐ8: dLDFbw0+Jrދi_FjHr';=K_S"4#A\,d8-_E86Ns+}|pDN} C&ĜI/\!vG$I>%z8#kǰK/|os5<(8TZwCQ10Xw S):oHXCn)P28y?Q_ flk|="e]#EAV >FBU]Tucl ̅i N;/ڟT4D;&** Tp&0f>{ɽy(y^26 v]!͂31m̈́KxٵAi_^+kw(&gQ[&C ßiҹu@f -a۷>3IFdϖ=F)Wò%^*P'@ZE2Fu$D̋P 8y%->E@+EBYڣ#EZ3n SeE NX/z &txD}7շܽ@WnjUcױJȲ9h2|6x! 4V1hOErO#Svgg6yqy*h.Mjzo6T o]QgםgN RnVULvl}mD]ݕh6}򡱎OE<ɣ ',+ Y(`311EU(pَJ->j Zt)H09qz燬ȣ|9YR2d-%H|`?A,)zkl1` 8"jܣ{i0,T7FW*oR3oJm)QUo5;xF?ngihpJ(8`z l/ƴ# ${Ե4ӄ1Qhڼ(H Нf\21F0h=P6/ˋq#7ls "pErn(晴o 4R qbFXNy3Ci!ئ E}4.HBv/( 2F_!:[KXk$"2IrD\uR~o懵%R Զ2e{VӬl4Hlc~1_9]|&iZD>jPFTOv=-PN1X11Wa(S7𻀶P@|X(,fJIġcem͛ XL! ,zv` +*yg ]k aAo/^[\^`XAawH_x؛s9M\\iܬ7px~[Bo>8Jv$vd}qn9vcdd[9XhJ$lHӓb ;1c2vX*8&(8yS@x.&;yj/ qLSwRXEZ2F_7=dbD" Ō[#NGK/J1oK}fe.9nfŅ!ae&0f_=H]}D"!&Z{qqٲFN>tRPtP9!;diEZ')~:kXj, dAWOT4ʦm$,YJ2BteմԄ{ķ@C }6N@M{G%QLM=.ГbAWmb-$H;ۡ;X1*W,̕A] ;rBKGK 8D:_*rKHȾZX"@lU8p^Wſ1^c7 U+vGd6#tiJ7=zqUd7^hB8>r eW&wՆPx^[ I"DTB$>N|i湽DQUat@i96hƄO[`o($]H+JJvڭ"}XP|a([lx*C>޴T_5iMeHqRKDc{ABCjP"SdZ)}+& BR6O;q-j,VFp.* =x0; !έg,4 #KOIf 9@V8Z"BuKEPGUO@̙ƣjm! sM/JKCw6湥iΥOຳ=K #0~T<⣯@#[I$)L"zgGl=]HM ͵R}vF !Sfm$3:r!9+uYBDO_gWzcA٧JrK)}CօZ*LWކ l@/ HDyV=~ko!s 4~Za[V1Okձⅎ{1;x7A]$8na!zLy[ѽ!doRAU>-~;MFrR΍>W1-USn^ߞumye/hM*W0b$%W[P5KT,NR&)̋=;$c;DqwxI9Ӽc2{EAd0daD#a'v7LY\π感]f\ݒ3ݢ2i/RtYk`Q}SZCϞЙ@_>bƎY/w)9FJWuzBurQ ae9Q׺o3.68AmPQFq;Z"ef x$}bT6סMU~ M΍8F ve(ÞtYҫfR3`)AZhK5|EӯZnMod9k1,ؾN)὆ġnQt ;C d9 W eMo2 * %"TFl9Im ߿l`Q{OZfcJƟӱnHrfu^`6d2ư?鄭Z}>fBѴ^ i]96KkМV=t#Nç&.4 G<6A_1aɞCq?k'Yz\,*̣v+Kg^N`p%2}soH=+#nmyh71=d>=Rh541& *Эh{2U>֢ z[4~&\OE\ m@t wQtVxr6?4؊ yY]Wʦn)xd#`Jn Qj]ԫeF(dV.i4 MyTK'.ɋ,"$Rl_P )kx.7DCR{熾< S&bA|Q9,ę|_ŷH*UqH:*82ZN[M|b%jCPStvJj{T/U7$)C}}b;2,2kAv3a8i|\>U$,aLc?Pט*ޅo8vnct /~.4:NʷBO0mI6y"~;"ð/g3j[lZ_D i*nV'*_GV3^mP'ln Hj#HGYC&5FgۦzcSXtZGDԦ:逸V`jxK!&P_' ̃mNJw+Q),(1lSO,8ij7WlYv^E kG:4)E8.~SȊ6Yp2Wy}^|Z&ߌ(Yw;؛irfT,Rr#ݓz8g;B~H_9z=l  QP-4[ W4pX:#}99mKjƗ;1tpV&ù6ږ۳-YJߚX`+"eh3vJA|U`[:Q[^lfo0Y]X_?% 4vt9â[l)9M m%6MOBɇI(JXA#z>P ,BM@ E`YNX1̪wְ}a/VB5Ū,;1ҏGe[(]bov/?"x@%֥rFon\p|ĭ>J ۧ6iծ?vdqKFc G}\Иt`f0MW^zzdQ"}^3,u9o[k/tْGWW_`A>{} ~CN4 83}=z9fv`5ѭZW80-O{70F(@vRpbVkFuC`bJFq #3M,9@'0ͮ|K-[|rqazVRfFcHi<%H~_ΚP7X PnH0U8q+ ,ڡY!P#+ %5cN`Z,f'7λ#T#){uٓ s ٧Sl4UNWr̾Lq ]g7dQҌxdjvY}Mi&3& ;&̝NX8i S=,7`DM^=1 [x+Suھ"|FD7wᐿ]tPaaH Ew3w+r-嫙֒ȽDMܶ~򲝳#:sƀ;[hj7%&cמ~Y1pXn~o߫2x RSTer(?rK 6JΉSjpJ9Wg'FK!Ȅgj#cIWTȌ7<]R G0]$CqwB≯PjsH%sG@KO+'4X27jx D7ݼlC + w#$-`ҠNvBסj$* mmZEHW#;ZXDf~ԵTgW\\d "ה~0UP6{<`sj$ ^jGAIQԃ5ʡ˨_6JľSncv5 %#_'N96߫fz7/XqԬ-hu?Xg)6 gl[/K)9ouVS݉ѷ$;d*aѐ%1bHA&:b0TH>hU _uC#SIOu] ITo8`cF{vy`CSx8YG 8V1\^cj-s 'hi(5/uo{@@*.ޜ; )u?4g2aXwBGĿXnbDw1~|!*Qթ:pzQ17BdZ҅;c N_:1io-0[cR@3sFf=qM 9]BT(fS̨O3Ǩ!fE5 /M~ϵ$[@q2,È dqVŢ:6uiﱢsϰ[":b$')F=҂21/˒!SyX/ۀ>$g%7zq"۠VGI{!#ZDfp^@dĚ&K$kc\;ˣM\V0[r:Ժ=cT駍ӛ1PeݩmgTm[!Yfy0$oqf6%J(W~ybB\ȯ*}1P4%=b%[d +V4a`![Kt ) 2ThԤrt\ S@q9d2=s(KZ( @aC[:knyP%3Z1WC0#GIʳ$!J+iRh l| 27 A+zK~WVqbEg%?Q."}3> u` 2}Z | @A`4sժ2d W0k0XE XfJ }U\l+)Q#7$Ib:ĄβM/ʯ8雛G ⻞!XbHu@ʮh J}hBU`L #}<-|G-ez L0-)`O*u|F(VۅB=s2-"/3ȜWlط@+&!# 676@'`d\Ĵ"(P31LuHc:AڠZ76>;;ΤBG5O IS>.rtZ*"n]|7AEE"|fGJ+C0Q/0񀹽҄&K8k Www3_ {2=vbSGSEsߑel~i^n%#RaRm2gQ 﫚Ql% |.Vc  A{Dq+ٍ+r_իz+u8~@~ FAK"T]g]ՕQ(/j@KE$[D*$z bv{ۚA,hTX&WyXJ|ٟd.zRlxؼ,@pPs}p꼚E{0\7gX+@b26cd1lZ㣡PUL;YwsDfPPx?\a!ĥID3Ek7s0SHusMs2z0ZT!"r__WslK\qϓxx'D"wnhl`9 W@ 7WN[dSwQvbC}sSW P.٬jnz܀<_^P{[Dg!nLm.;hxμw+hLnp'0'OΐBSfZLl:@aәo8 Et=^^@YT-Zruff%6!Ꝍ3"E'S " g0^ziJ=j?5XsӇI$z1(IdAq= VE}0d/J|cǐӄIRgeHװ<1gR qzy2R:>v)%2Q?aW7~hZ1XhmT4)IӫY-q-;oH}*|e1*7) %E[xatoQe Dn+7u>]6#<7̸9 ̕c̠v{k\tL=tElyDX,-}f LD^=G7UOS1 ֻra%̎T{of|.b̳zZjZ.BCm#pz?fk|n*bo0JB(sѳ39`nAb0_? (]N5t`7R`ƉM Z7ĝ_HZ#(4"U.ޔxO- U1DRpی@St6m3Hɘۆˬ9.[4sTD?d`/* @Ed9X~4S{r"%Q=;ҹ=r<'rU;"n^9`*RʋlKc_lߠ|MS_:cv--٠y.b=,dW`Bshkh9󟴐Qk2+u*H)/9vkTc:yG(֯3CY5(rg4j6s  ]{Kf ym)E,JϓXM֬+pC/v )OO;q'Q!U\#ԅ[r%ep`:cIyxj#E~`]T-3 bqbDTcue,η#~z(ЈӯH!XMQ 9omV4ՠmĥVVWA~55/ќK9􋿚nF/iDVz !\TD𷞽FkVVUN{hJ:;^Wԛ`.0a~LZC{ϟAB -TKnS.CV]_!] :}kcc"~lѢ1- cW2KxWKųCd H~}9)jo̐*5VÉPB׃xRo댿C-WpO95vhfD U~f9li[ᔙ*BiꋠoP})k[ZZsՓn@%΅P~>^! bf &^1Ř}_USTk.-]|7Z%}q+K]cbCLy; Ag!\,_c| PҸ<%k|ݼsiJs&͊~׈B\SF7~~D_)ʹ)Q)0Ňl ?_vX(&b?oVrw]"#k'2'gAIBT:P$UloBRg_Ӫ X):= 3sœ+ɐ Y׈^G=淐]ʳqz?ѥhyy& {ȩY4'ʱH?/&;z>gʌܔU>,NJtꀞ LO *et.,ԸC3 b3gN]X?i+E2BW埶8`xR#=m c:'5֟D"]uߔ<Pp&jߟii(}v?{{ t|BAU|\2s[W؏ bL1<¤>Z6.n&PJ1bw0I^ j4NL7E*aE1z\_!`"ْ9hqbcY>vl`š"e0&Ȕjڭbl^v]].dfKyx m% = pBp砷ѻbbM Xt*#rЦE7 d B X3+(&=*3#k=V: /_-M/ 3)S)zX)r5%u8J'vP e[ KATe;Wt'黑ZpЛys26u|EADN!%/M4|֧'$%5e? Y6d6gTS{CF1C&Kw$Q-/<~RE<=N_j u]of)Cwź;bZmwRhsN>X3I?6ܯϙIZEԠ{g`R85f+H΅2<ܾxEbsQUk g'6nP{1$[Ff3dC7CIz6E׶DreMn_5y]o(n4Ofr7[jGZ-~Ț6^qh?WXPn#zW6߯{ ˉC鮴bkv>9cxYs=;rQ[F_X%;jUC2üAYm&z!khf՜&;Д4T zy]vr)+c6SubY^^ ꏛɚON tsSIJ]k%pkU)hO)N\zׄ>P!ZA&Erv&X}Z!5qbʼO'al~vBsW.D r>Uy S.YiLfޞ ;Xp,1!^ 5#.6abVd0Xe?JNFQ7mZ^04.ɖ'5&_czI; (mxL 0OTA 5,@ݗqeޜ }^2$tՌLd+bW߻TrXg ed 4W}:( jStl~FssOnx .UT9@\8IPBX, , SN( E?43\0n5i-υӣ$ȥ% R=ԭcwrX?B9bye7 qH#̼zu07$a%%CSbɽ[UA_m"Vڹ;nHTS^j3;"[%NDYIE~^p @^0'|Fq1 qn< c zڴi AxmHZXmdʕ[fМ2bQkM3)ؔ@T ^^~hnAM:13\3>*9ow6MtKGSd,\{(bW&n>&_hU _ Ӓ#atE&;EWsB7H+㯂o qgXJ{U]kd6){aZr851"wÐY qcK r==-SM.v=d#Js4Wn]Ey(#D%U)2xe/~DƟ[!6|f3kClIj<Hw,G%yDv⾸L;P1,Ҧ~z?xLJ:o$Ǐ=^T=Jqo` he*Ys)ˉdU* zCxD}wiϹ7&qތ;nq8NuЊhe>-K0H*79eY Nz!y,E'0уj%̥KЮh}nLY^2~Mg{=L4 O4Ϡb2 "թ?RƂ^=${b3xQuwp㾞8@cu^  p+UJo|y`ύQzdzZS@-?n%4:"bu o-N >SL&,-NNJ#'Xψpqz(^f*F 9}Fv]o:6D$+gOCTϽeϪ*{QŠ&ÃO>^E@Fe΄9wX W^t܀A23FF_p^yYWx׊W![ '!&m2 uK8l|75rV+~h]Fa3s~:ver3צ߭Ew՚M>84HܯSQ-!bPbp!,[tE5wwayRNoodO+Ib0j0RViLs&.*XQG:^dFm6р1 +ބ5}~uIC,!jLݮ'JU]hՉ>. ˃0u+, a{P^ђjk:ve!D*"kp$ej澀w}B+ރ{ *p@ ׾<-, D|_)ysZ@m8&*Ұi^c!o1;IW5W=, t ,,,\5e =OF6r4ԍ0E={Fy$C\ 3Nc*vMk\ʹc^Ah?P@t۵P_irGs. ?ٕ%h|D1ԇ'`q}tFbaO'v;3go0I˟B[Gdi0OUKɚ@c%5ؤ]ӌ,-(-cr Cp$䛢GbN&jZu `%O\ Td12 a1Y_FM1FpfZX,/ۮ޹JVS'czL AQ[6B"k'pVA^6?fޑ/?w]sq FmmO08{Aq[66W 3Sg)fM9NχLmlFVF TuwBde q8 cA]l~\n[7&>-$RAť^޺v>xzAԣy)eF!`:_ԓF}=ϊ=u+z+`[ C_9JAմ8'3LPACUPV/45=GBh#yimP RFp7 S;! i5I:5AaHbW{AI[%pQPT4fa2k@-\D&]JE`?q($gt E"Gllɤ}%4e:tϤ]kA TT8T[.dQoic2+k ɛFqѓ j=Dډ6qk-9!&, q@wgfhؒu8ְ:Ƚd4l_ u}zڞ|٣8aJ\3cSO̽zΡVKP'!Әܓ%*R@brk0PDghPȇ>M;ڒn3Q;eW5U/q ^)},&KuZ?%l)n<Sx|ʻ ӺlB{JoTF)zF̵@Tc).  Wt h7fóݪϨpLMdcTHx3tX}!:1a,MPkmrf<oU#ឬJx }|e]ϟ{ "j,93RDuw6_3#@U\~b{Pwz+TP9c\YgPEUnoKҚzy^}לjMiSiqUmN %b=FJ򲁫Ȼ^,d*:FW덺QUE$}P0/9;%[xp%~q@]}$8< mv_M^Mm~K;X0*,u 5 f!yĔq=ֿ`1 ` @@_0$ r>0;^ #Kv-Gv# .c.2ĨPpBoU~YQ%ŎBQ_èr1>.=$'k&ǩ_`Ѥ?RQN!ٕbv._LI&D[^rW 7 ae@ΰWXrN_0muZH nGVPp ,rf16I3ɝ̩Ӝ@_Ric&BEuESU]&Л%t2iI&uMb ~(bl>La%[Ok:\ֲ%Uwmf!<,5w ׂ=X{:%D!2U.et軵E>%0ꜩc_2j.L-$v}R^A|7s]l`1G)v6w}û2uζ 5@%d~F?g[ȩD6QٽdR繹1)H 99T {62H J~'^H +qk;|atlo6ۼ9Af ^XX2ik=`Jnz{{wQq:i[#`+<0Q*piXTe/䧂:7^Z3bpo`qNV.oSDw׈A{2*_O&&/i)08׀W]sMr<9D"fEyJ˓!IxE>`-+i $ziY#3^BoBjLohsrFzZ^L!tI8Q':,PYs,OVKGNg0yQo뇮:d-=k;N@LpR.(B_Nj{U絫}/>d6 WİHf2 x0XD*3%tu%47h]~2\c kK ,ڦnj2 .>K1MAnNͥp:4F^+BO-H( kO19=FJ|2y Xݗw,~lW+mcl2&޺ڇ9݋iGWdaf>glHGgiE8>T Ej0!gz` v +aƣFDL1~wiCJ͛Ό}1*0𘮰[ݝ b <~Үpު(۬ŘHX?.ɧqdpqC B2Q+Y=$IWayt6]9!b`CiVr _uCJ1 V@)_ix@c< Pc9Nun|m|tpĀOi1 {.lwڎmoZ+9N@[i/1vsb3CiZk?ҀN0ɮ%̚mn\‰6]aOp޼:WyHLOU(nhRO Ҁik9 ?cȲl!3'. RGcHb|fr]2e4{zM]٥:QM=۷3" 8:%Ι'C9(1]%dXTsl<~)Y)sכ^E͌{"WYB=ؐ0J뎠ۻJY@TWnX"hGP^0t&wU &G,V'^А*Dq5iT0KFeՒIXb+*ճd?u(oyX=ݟ5sBI$jxhEi%:'7W -'S"aŲ;NOyTيE6^pk<_i`H*ƣ{t7Qd~fcEB}`dܓt9/8ů"yJ#d9F,`Q 1o;Lfe o˨KYZ7oDŽOEVJ;rVd̓3m(| qMWה%o ?4q@6đeQьv&}H YE0Lؖ>oSHs7OQuǣlԻ1f'STdmY…#>J *JCR>ZIVP;Gt%N` RϟƟB A `#(z? vꎁ_e`.TIU2f -@=2RRLT 8h~17 s |rq"ajslTn,MLS:AA9\WJT4:#DaJ jYR ~}^L G%MWx2,+.Vٛ:7X3Ma9BT!#h 7IC!eA@6NlUVm=;+*hh}c*רI ͜[˿715]1Gdq\IuR ؿY;C+^\_ XPsvW&ˬRKzvs!&p *brHcJUy9>{·:^1`As.\Ljo91At|Giiz`{ p*D" XNGi?2:ݳ'SJ8 3={⥄4v"Rq] A8l:tVkPK֬|20sSmN N3,|G#c+6V)r5H`7rKВ)@8tWݥ|K?˚^:8i` 9[˱gs;Wz~^"|&/5fN!NjU»wg=<]i8܉ott.~$hYq>X܍uY~8H` nZlJs~r>W)|YQFIv[{6»{iYD.)W[qkZ/}Or[<:C[tX-H $PK@zX8W1qjor[-yHFʡ/W#çEZYrY,%Ka[\z gl$;@ ,f > wne@MF0*TS (QLJo̞j -yI\q\t )W,O3}<E tבfNhƶحݲQEa44 a@rĢ%vo`r^17WrmBOە?C jT>w'wCv.&B mOPXH5+kYN _Kxʯd\nzy:d)9̿+Wh&0>p{T%5NHxrсo[ D$*ңR?KyViK}qHr;]2#u;CO`u͐)Jv@n;9tO9ȔDʹon мDNt4JNPK5= T x cOI0ˉk zG@muq/tن/Zx'aȌ3(td^u)H6 /[c։4: ;X 4,/n('$j.EzYveRJ_;P.]3-g"أng Lv-rJCRޗyW*, Z ]ׁJ{ wLnF[xNx%ŮJ?T(t,]vWNB|1V5pH2*0_Hah|-?Nځo kZsךK{_-"pi~ᬩ:˧3/I4I"H#(s -`O^nqgqSXcn)]deeAF*)&KH:p "KR6V%JLPur$EϻHP0,:457c3s|^:v5ju2#yd Y~c85%1 Ԓ"B<њyET9f(åbl.(VR5f [f`u@ӸD>]Te\Sz(dtDBu@?20\($4<4Q|/aP(Ee9<+ =gZ_)f'-]gу5*L  RUmn{6z9ܯ증ֆ3y}0[?Yt7n{BD2`N\c!".&L9fZcR2dmMQL}FE 8Dzn:ظVˠ?n %\|2]7,VNTOu&W6 ?omU3;l 2GhdTyr61_E0uS 鏠l2X2|(*$[p ڛT(2;ĥJ]džz5**"r'݃hH˭_i # QӹYxS [Jz E_yriy&:nz7l H=MM0G4O &_ÆY "Oy!=v >e3X.@T Hj{P^ZdL):=j`rzPfH]kx2YA#C4H RҚ )wlG*~eB0'QvtK5 Li,q&xz{m#۾:O{BM&X TWw^*-cp "+ !Gye,=i+Ү쯾AfDAbЈUA7_݌1!(.6 G75B[{5 J0'!"`spk~B,ԌSѭ5ݹ7\1+^gbNfaK|灅~{+¹U TKz heޥ5:$7c'P=t@O ܱ 'Welvܡu#G狁X5>u;yoLr+!^_(/xs̴Ҵ a@e/\'qn#d)BRP*dl rG'd ¸M!j?גWIf7)T)iVg  ?N1n_U=Z5Zf^#֎r{ [)Dg{oMW99+n Slքd*83fȬhymi9r:h3Ye^HlL%F#V.DJ,%,h:όy' c$sF(x,(G)V}&薨l@mǥlщ4HMVr?={M׮#r-2$z#t[7ȩMsmكT<-mo[_wn6EI:! 74#⏟&&1glmA]־( @2slB`E;j Bn$TrQ'VO/9!XW㳏3,񏇕]zLe̗_%"IףOޜ%Qp# R6&bU&u19j1Lַm$׊6$9T  }y'_+g4-oQ$= jJzkbIG SnS: Tի̶VQ7sʐTyIkB=p 1uQ45 $E .@~Q܏Z)98Nh@WHN-4Yjڲ8Zh|x*kަZM ς !6t){G(;]+\o.Hh)>g)/+0ͷ%91W` NrR,v/:EƦ Ni(+tSb%*Mv'ٷSE[F ҵrZ+#KgWTET6c.@OKM\Z?R~#(SzIM-z}K1V4O+>WW]ǁ,YY_uMkr㑀BL/Y1鵤cvַX.c&$S$6K?7.a#:( P#dA ijp`(h&( ' WR9攬eq . !ءyRwưѰΘJ:MXЦ!wafƈd5|\{׶(/POE#'VPʗ:ݴ؇ .UܗEdfO@x"΄ > rhMs&۹d/y]@ mOYY tP+_e-v܄@ rWOoSl+JEަF xó4f>+ Fݳ֫hf·t+3p6/T75~gH4Ϩ1ix[ {r%'ttN[,\ 1#Mf!\A,_@b"Z$7xLL.>1ƾNL4F?e|)$Rc-Z>3Io1e%(N*Ն=D>w <~s**U&RK5Y[CbF ;=x^!Kr **[n!Jo<|AP4RNG9U߫o_'ߪ}xdYj=17v%6^^Ultw!WAFG<0ZC#4x=*ӕ UAh9` (&T\' <+t!FT[ J$\yȑAu̇;C_gHf3S?Gi}t0|F/lְ,/YGxO;1H@Ly @nS(VD:9N;joKOMNJYw0;S7%Ôs F,5ǧf2O$H-j%uSu_}bg$l>s 1H lc\XBCj]}vz,"kaC)PMoSː+2fz|ԣQ8^pz}%a>^'@FZNLv^]zfwKm`:IBd1(HKoR9ioyQ(Msy<\~O{\y`B7ohz.D ~۸>ƈHț1J[IzЃbM{?tGK E<7kNTi?Pð--vByJ =擂>~rCbw>CzPcM. J-#mB hFOe2<`{zمܻ$@lN< ZwJX- vFq yXU(yi0m;>孀mR4wݒ ,^.DžkF9*ޖLOƫi._՚|]9Fa7V-=eh2P:vYωhTQ̂V[xܙo. 9DY&i!I&@sմJ| pf5ؑ\8&Z݅pgembė bώKtVm4^R{vߋ-YQp꒤`ĸ)[I12[X:wSBm*^F#/9َէMɒcH]hOeX]+Gc % _ZU6 C&z/ngi}޹Th C2tu7KP6\݁vT'_< W%+LL7RU<+DV*=v!#5%ؽąf a/ԅ y.q?XRaKCs"UW61|qb!ÉGY{']s sIH< YGP YWu*;WP}@4Z5z6ܕM*.ą\kLԣ&yFݧ3%!__#x<"7?iILiSBS¬ϝ&gźNn<\MdwYfL2kn.*hғ+:o7gh3v{H]^#+z:r2Mp1%ҺCy>]@uבiB=Gy>KHeY[k5G Z5[ 9XAr3v?YCGmZ :ݪ58(֬i?{eBҀ uLm}[3~CI,fM^P AEZ' U=SJog/{7(40-ֈhcy:RIOZ;!e|v̼rudb GSmHԬ-ϪrHQlr/#bAj.﵃njtmŢRǰ5np-:^5,5ߟbr|-U;_w@ՐIij'`@h&XN\,[w7"4Sm> 傞gޛ;tY)5%D Sʁ2b$_R_Wi)ߋdMf\:6PdB#&(?2rd6/.ޝ{A x'f%.F_tgNWVp-# p)TE:1RCvihT>A%ezS `F A d?#WmUkPi>D(m 5U9Zkܦ;2* n_T^(&Ɵ[ܰ; 21O.~:/ '\؅LB3i9`28NMHt.1ԉ\)J!ۃ!l`ҿ)Xzt#ؖ#Ǥ+ŧ@+fIHM,|>m,aKQ1MpCd*.IA,R!V.:R!DI9n`mz>[mkXƞsw$ b!C=|Vho>-4cnb#MSQ@M~(u#,z8UtԦȬ7zga !ޱŤL4Rj X4؂^o$$?,VOVp ڎ%Zbj{|qSģ),5Jo^^X/ Ģü!OrK2ރHƙ$c"Ѐ;q)\~v[ /x7ZVScG:dOLk:F5 y|c>` ,IjcN3%ÜQ)RP=p'`>z˔9ŝɑ[Ɠt !ʪޘJNBEJs|c[QrA@2v*B4(9<mqaUe2{bGGkԞ:p1czhX~/Qb.){DPN4F5to[B>Tej74/>cwPv؝&긒XX7CM gѽlGy4GXw i .kly"!ƎF%=:5s5x}&<9i7ɿјB3[E|_ g4;an)3Rg Kumfss kdΡe]@4Gh$K;|و *kY8 ^Ӌ BlZ#g-|m.u&U8XZGV>ZzہqۃOv%~HZR"eKWH[:⋍w흷 Ǎ`|iЬe-&bF+U&S` `lbA lx>Lo'Po(Fe*#0h#%+fTegK2Ң1|%."#Pw"nL~]̊:MEܾ{&M:'~ [,?2n8cP?12qdL`1!qNYtTP|$Vk%b1QHk FegB6%hJD3hf>Q8x<4$=B<δv+.r$ 1M{q.tj*Ʃb|T'j'&q ~]Fcٿd&+:* HE=҃b&$Asv_Cu`B%'B&߭VK-\h{=%MaGnAȠ_&Ec-徭& At^%«ӬsC3X "T<ƪߚf+R?l3rYf^XpZ7 y[/ȊP?5/p$ G)Kvpûlq/~ HevV01;IK1QwAU?rؤ':XJI3 J"*ZA,RR{c9>'9sy?eo ,@ppsF]۞#C`sl44*L@nNv>-_) `8wb%Rb@j0 g5^%~l ,HePہX;͛O [%0W/dq‡,R^n^[J{r!݁$=| 7~ +_A{ѧ>},L ʷ5=)0R>.d:DDa ?; iL5V/fcT!ҧ]'r(5'媊: `-+9~Cm)i] p|c*h? @h/ MхO8(Z-DTݑ'0ޟ 76) Ap(OfTl BAӐ=ՅCWurߣnu/U,h?n# Z T#'Gqӗc܋Zg/HD@s&> 袪'/k̢o۳ː4`_wM+8!%[Ry|" YEh^Y]밢JLˑղ9RFGQ{-3E<2O9l.hp9^`dA{ R+{r'*u_ #ɻ*ѳz(Teh8Dc=dhq[ρЂc՜9 "w/j]^u-*' gfIn"`2U<F2tXw'^Hn#]'N^Kk>]zZBGB%XHᩬ4L&c=_]љqjIhRDQٗEݻWX9k[cgAs ,|:JLi>:n]uS<4EHz|k[sa˞Vwh =VOo k4HQ(zdsc` mIvy)ٹõ]3X[(2φLї.Dc' De Uo` lm9fƬb:gpQ\ %#'"l(جN^ `63[Z_1J,- Mt0Nϐ19 Ȩ+w8"8bMVh^BC|(XL{?g>V'ęȏ?]W-(,MN䟬a0mxG 7򨀖Q2U˸`Dҧj`Wp8TyU^4;kWAua*闫l|@/bh\UTklc S~<Vքy)uO~,/MTzx+ #XV `:4XD($ع'tY3IP"~K=j1'wIK8SP >4=3E#fdi:Ìl8DxQJGu:#=Pҋr!]bqOnnajRN![YmQm)wT[* !,s*+yu*܏H:S8) O%2c6PF庘ao3Y. о*1Fty>+&kvW1=ޗ#p* y .+'80͆)}lϟzgi%1tLsm<<@yH" l~Z8Fn D F [,\0wo{o' y!;0.ώp"V-9RYR;ZB rt/RDlvtP-F۰ ȼ .^ /E& 4*rnvcE@]8+qʲ9UCYs/gVArHK~sܓ+o`'zGUQﱿ8 ΂{EߌoD  *>"׊,z=;c\ TRJh5uCsH.$4~;Cl3,KWy|hxo/x+d/0v%1*lfm1aD8a\7=*~XB\ U7mmfM~ N"/Z2qW#1p3Ҥ :Qi艀\[q` w"v>e@Ӆ".+A|!zB-9[4̟So(+b3y<gVjN7:uI+ !m .7n2?-α --]EA_tP(z%3WfnT~"IӰ~?r!$8pϲ.ԑQ&ZI7Vwz:BPQռGt/7 ,l]QWBtJjԏkڄ^%KhOo@ lAR<WMvQTLe{Šf-#6m0>JR{G~1E mdZnB&`8YyLLQn&izaNW r3NhMOH)I#cV. ff0XŇHX;8Htwn\Wy4/!AE~$[YKu+,X%nkŁF]RO6<3h:- d 7R͌͢ gҚ"tym+q^%Db`m ݋*$> ,A {xDΩ|3X z,' NEE |bGY="uʼnui'dam5uN%!W%{cx$`f:#ivB5ۥmI }$5NL9 kzcHuV CA_A-ve>@أ!"cSF>,%dGi״"#+qcD4~4pDB-78H̼Jĝ] sL'{>^-T,sB PH] ornW~ !;d,Zdc[YG:Z4mWmQgDSy%) 6<˓p-6*\M^E_cd;"!.ԡo"n@o);^ŗ+$e*R?i_svёݓZy4۲-$ɓ4spOe8r}(l 0^r +ӖhkQsJ@Qxϡih #Nmn0p0Kכ>e[n)o5R @col9CM3Jc_ls\KY%F;|*;J2.g 㔐g CFXUƝw TmnGmpe`$P(<> {C-C+[#~-ׁ8},2*ø]QVga6 XƒOslvC_fTlD9[9* .-)Yɫ ", rj 3oarl)T@J6l}VÄ/p" P9͙24YėZ7WomfO Lc{†gϱ $K2̐~N';&[bDC\?}yhBP >;I"OJzsq+6oa{[1hY)/؅S8e(AԳ-8tľ`̉,\i'K4urRUL_o<66֬wi" 13Z:&9)65o u!>B6?D鉝krOV7' w}ƉRV-v@;S]><r 2V%|˯.TULWy>B3W*؋=4L3r켪X%|hHb5h)cWZDZ0hIPV 88_ٵT3%!:&N78cPytn/ V 4Pni/#gȕVR QmhqIr$a|qT:B6I鿢rBv&? v_Ȭ ^U>sƆh\VQJ#XgȻMvh̆yWliWe#~Krr<.YNgh"  o:`>Cﯜ˅0XlB Jypߨ^/|'h%1[?h+F6 cˀY(=;gpAA<820W~72a"*τWj+ ;55Ѐ>Wh lFb>6oH``u19~v1G[!8)rR cߏn zP: aEL LN "*ZNW[01WھN"쾼g{R8 ,b( y 5˶YOTSclSRpoLtp"8)p/* [3uh6J(@ %V JfT9 B=7[My"{yF__{Ki7.Ў$>n:Er@e'[+ 1pfc֛NFƇOD])Tgǫ{L dìNrOǭwq,eq/6cӼMP;*@%LYH!53 lzZk~aS{;>(.5,ӱq#HаTz1ᗽf?`t5(hg*8`ư:z=%_R* jf\*j>wMN6R}Ȫ[yC*oe(q/^E`?4 )#XE 'ag=O L1!ea!avM%LE ծfpJTe<(h)NNMAHd@ $~dit5H9U/$#}#[28  ~bMwydVqC0glk3%ن:X(0 lE$KUToS%)v@42}N-cVJ*6BzacMRCi;]%rT7ڱ]A)[S{=O\K쿵x&mY)BK0=dÚ'3vW.oKxJ\T+RdqfklvOqW.LyBbBTA|.OU[yBUUDP>1dlj\ aV)} Z˦PfKf01X_vqjPrAz'if i(uI۝M2XZ£$uBc Y-d6./$owtd|'wX}GٔjH -Uԓ1ׅI׀OLu ?gE0c-HqFҬpí>`#&,XLՈ2u\m-$F蓑ڰNUV#3UFƺ}.{rum ?a:49Zd:J]16ڷV`,I-4n/VaQ`~ 0k̲}&-  K 1?gkGg,>v"BkGg\I+r{CX !kh(YHwͲt MBݹÍ憅_~1>= p%B7}|_R)%!c?5d80f J4.j T-'2<Y+>g﫪-i®%l,x@0#t79[LT%:6ٟ5'{%,-~m@BaDw+㖁r^9rCM4[}c$=cETAY{KJNܒ]iCʦ_OzSr̾ñm; Om`bUp\uw/F`!Hxlm'iԿS=u35d-%,PSĞ&r-Uiߞ@Ub:wh" :$7v-&>tq<^lA\JyĚU| => i8 Z=o9BOF&\?jI`X BIE#J pjY,Z|,0󚓓j%="gbU:&x+nƁb*滕Ǫ2"7 2Z &br)AE`=ߕDUVn rV[yT@ҙ(c̕)~ j}nV\ 3(4ʧ-.{롶BOwM VNBpd*yBeпL_Xg״*zMQ5Cr-sPNQ66ӿ" %хp|oݺ |y5ycQ,a*Mf84+fwʈnh`=j%,YߑM r:V5I&r X,_ogVEoF=1Gػ[XSN c{+UdeQ}PHLk_8`J e÷| tq.=^Hk4:TT@MLm|4uO.5QITX&.ĈH|:DD_Gv8ELDrŞNO<s?3nՙ$DspzuI9 O#ϒ0,B.pwo%ٍPGjM;[z>;D' \XVs|D0Lmvk ;uuP@FЮ*əvh4`>n- jk5+h!ίyW*gÒδGw3ynu }4l 2:sMBK~':h`( I }啭{Ĕ R-A; I֢ݻ*D3N6k Z_H}Wyas e[iOQ' vܳC#jfAEmkg| ]`ղ~Wydy iR1-,G;vd$ Z3՝חs8FonL`Qx,Omf`qԥwqDYxsqޒB&TwVxUfXۙ};*/5O4גE9SW }P*{seHc7iksJt l\YñbzdRt;)`3|T!IrX ˼sMZa?-~& bqD֔9SH:&U N DV'_֬-/8`Pse6Z%)ݓwlE !J%V`"w_( l ?]؊ԿS["Ӏ.` &F^AW0 c\2ŝm -6+ R8G0e048s  L :'( بҮ_JR jc~x"@t Ws/8?usKAIh* #<.uzR(>eߛ3Ik<@Ws&sUZ2dx.̄;BEq(ா5J"`P wHyN/B$UHuY |i)O7Am5b*00ıiӡ  {Iq,g G'Rh5AtUб29Y\ꧯ.3/M ~˽_,b=ךKu r|+_teM\?M-wP%5{i,E7S f͗-UHyMZx0aBIɝ5;acWJRJn(AӬ~[H2P 90Ke_3f\ ?1 "UN;/n\Yb 3Tk+jYID#+Ceף~"$M~fV[9%w@f 1T 0'REv11*1$vK07^JݥiTa4$>Í!>}K1,3T0 8:0mAfT"⮠%m"틋OP^==D9+WycK j qGg9+EE a |vL+{gஷPDe S^ iݵ;H\=RpTs[z=6! ym4bVܷPn#-;#<;{I':bIw+چg#|aR H z G1RILfC{Ǚdٿ8w^ƘT ?aXS| *cv gA_/I?C 6m}E)Y#Z jTk1$ԛ 4v2>yM!2 }IXTB/5{(Ug #"p*y:ۣdsft GxQ7 2aKQLWlꪪLS:5/L)`T lr9[=$|0ւpjʨ ϱhfNeB\SᎁUكN Y)Eu\h'\tmi $B/+mXlq;rs<}(\ێܟ7P^ F'555Q%(ȧdDbsе/y(?qrGN,W<g6&? (UfngƕS<;^q&?lrLlֿ `b,%WuǸ;3r|)4EJtMRAI}GgRp5_ܶ_TupN:7a\IBŽ]5by͐رN)fVV.P[Z,C >L##hGDg}9<:~Yej7R#Z?yαWOD֡YTe)4v0㈢` jE`X~?Z]"\SY9(0IXOݞ)hGއ>_/z~ŕ@f(Sd@\Tm|ӛ̀5gv6ݏ&ܣWT<1e $ γdmM5ѼHɘW1uD5>ę[$Z cガO&'!3h D!hCf+eLǯs$v kM \0*9W~(P"kȆւP #L'Ƕa\~y \iq֒7 {Π,DV[tJjY[S6V1ag*~:^<QL@x~T0ݥ]NVf8MJ7uvUNRFfDm9/*IT4?֟J5U]tSj?Nh [ t mygh !NJ0_4X9!b>vS<2=tqv4XQH|2EoE\ "#Tްl6Ѱ ۀa2f=Q?[;^Ѷd{X8_Ux]Ua)J7Zgyùc5 3DsV~hZohލ19nmiӱ.4dF \ ftl dNª~ uO6S3|Κ>/qž8aMTbDvL5AɼZP`!A_6B}~rG\"ԯb ct u%R 2@eT0g_j|?0QZ l wVӗ|(:ZQޖ3ssP]R.W_=+MNG RͷCrgg:5t~90&Ml&p%?iKMFO+ueZO s} et8 9Joك8K(CVmxZ y`K,xjs e%> 57wg 4pLy7(vy$)»WdM^֥`񇡝^ $k:D-bZ薙yT4œԕD/u#5RQ#xILa\"MA熀> b0zk_K )D,h:M `j/qQQn#3,nNok0iG^cLxJI)ŁDphJ%ܷkY_$삙4?5C@ӞW;pKu~N'L:WbP\dzUQ1vKBĉT$ЧBc"[UH=ك̨.M8`=jX\_1fNqO~|w̘g Gf=" 6Dȗ|g,gG+s;BWJ(!xm"Hr{ h܀l`Zyۃu?7>ʴfM{{G >'J: F΀ոdX1WM:.0N 9`]RS7&;\A*!Fc9֒8c᳆Tw3{$ @Jo1f6|^Txz`8|85mUjX;H0ˑovՠ6P](A[g6^@Fq|t ;ryۈ穃-p$`N MdtM2^8UYNGcC gex__wR [x$j͌]VZ7`pyCTeN[O%5I5P[ո F_7aILGShZ<R(|a@ t6y%LDV<9$VMѶeM9+Q SCTcr"Db`}$;Z`=0 7vz5<LD%G^%EUf_qoQ[:kxUi쩓#X-ǯCa,1*#CčnZEwuoxBI! 2hA4v6Sc!;)D] n^Fry RA{G@UTCe Nĭz媓]ܚ7݄ ļ}1M fwyZ;tvkZSMY6o;xڢ^CDŊsy(e& ю}Ya3zsCvU߳3Ƣi_zRDEggbQ&Fپnl@a^ydN׻ ~WӒcTw ?&o wO 13\pңy${GnqunzD>1Vn%OP?G_mseq2ulhVP*-| Gs=!H# {_Z^Twק9璯fݡV`Lӂ"[F4q&|+(aZ+YJj\ -+[O:;#_4>/zc^r-a.IѼ(q,ʾ 26Ѿ7 X1'R"ӕgTOO2]vXw錧60, Ux#Y^3s̀) Vb3)WX@(e:XȤeM(Nm39. o%'"Ru'B`F$9X6tANK#pp'ZZ8)ADMb&zpP cdRקU&fNJ̏+-*B޷Y~Mٗ7[4X'M1$da)-$<=1PΆzЫqs&=';l_mG`?3xOI`YwxX^&ZNj~j^ᨮ)Ж)njZ锅AFi]0홨q ʢ!g̶&y,Z 78s%wԟ5A=x{Kn,?x:mo9kqDILr\=*:o-\`sbqpQӂ*ny s`f^3'P|U/ .5F#oB[Ny껮2̈́[Å/i|&UibP*+- sl,4P0YHVP$6^p_6 HLro-^8+UQ7f غS|{PQ|>5 4 ~\X 8,Ombʪ;W/0 "9!.%k\)3"L 3Tؤ>6Er_%6q뱣T Tm4輶w Ubb0A>2$ygC]1&&vp 0cFaFmV2AeK @ 0DYY86fJBf!u^'P-REK]THY7ʟ6a}W+=9 v :M rZh]އJ VT# xGi!QI‰_ PPTɃ=(C=a9i2Q@K!!vM/sv3(Co P1,!vvӡRowx幅~c?g!![5ɝ\xI[_'uY@.[5Gq{E/l?ۇB ("|/B'GnAa0z{ƅ}+*vk陡M2`zA/=41}q=wMr>J(*M|˹j% OOo=|DF;BO+FJU7ȝ4@Z9 f-8zρߤHEzqGyst,lnc` ҽ4_I6 [?AI Q(=+}垎J U47w|ZdܞOc95Pu =]Ef.-q# cf^uc.E)vOm>ȯ1 w$#M` S[uUدsٕb`'!!/h=~=;Fz|[qȺǔc2k7^'C^Uy.߳@9aun Gk[&.(< 2\DHy|Se  FU5!YOeu5u9c I-Mr"[Z7LQcZ~l2 O[jML夡)zT;O;s.ӂ„ CD:{AZ}7"A /6:xͮ4;w'0FH[7 ҠwJI( +}xp+jqL#~8eȊJcW¢2tۈp$ UL- 96n$jV@b35j"Ƙ 吤Nݽ@>@U|@( 8Б".l@1yy&3i>ZX;;jéVC%Fc}ѳ^3>cZ80@̵2E&&:XLE03ՆQ#e%_{)>(UJ6IIC(N;RJ/MwDՕ f6SrlŶr,AϢcB9E>vv AY I)XDut˖i`]^1#$1I:]Fv`)h2oj< oru-,@ >HX`|l_̗]!+wFBQU;'?"=@^`k!H~76 z݂Ā^ZT~Û"nm]f?:)im5r߇3v 6D;|="uvpr@lSyfeh<;Ј6\e.8_kYFh,*̦y!I8&г .,{y.'/q}I(9?7'} <ߖx-gߤp? _ꃧFj $a ~Ha[)dO&7Ji̅7]n2;Ć^KhM[d*7Q$D)8Ŏ&z?uYѬ no5@E>NcxNeB{:#eT-\q}flXD 7FIPʨ)9 ^782BohM sȝpS/ݐ"ɸ;v ,H0ެK1<+O,V" qkt ,@ݾ0Gt 6vɿeNm귒3)grt7n˱=XEŒQ~f؍{mMSO`7h!EPj$寓w+`hGS[ LsT*R.~zʾ7n/~'[PH@[b^0rkᒩ#Mc@WeC*W*v$ހŨtv¯q󟪔.'H dr=*]`iwڐ%ns;2>2R|";WӸ@PuiQ~xϯvG[;pN +%HP([fY=u]cx77CC;%}.c &j; LI"\w*@mQb=`| $i${)zk&< 6JJ05H͡L(|kLj3%9[5x\AttΜ`!; gNT&B剿 ݅' 8G&Wy?n4FٍH4=YY4L]1t0;Q!AqWt|ti!82Ȳ F+)VwdfjFBa} I{GfMP WhVa²d0u-gH%ˆ$/uBV1Өz zZ9d{q}g)WU't zui{8y'"M8q[dv><*c٪D! !=ZC"5l_lr)q1B%ʧ/v89/wEë^*Jbܵ="yTL@}%?Z !u墽`vAb7 .My=2]ׂJPi܏f .;׭!gh#h]ZY󛑒785S!l~ 4"~;5oFzt|L?I M*:6?o ~KppZ2(oU(2SHa5xtQI,-?tS|]Nbĵ0&} #9sA|u+Ǩ@I]6Dl^NpWжd,!Cqzʌ5]@ʓYP#t׆🯥>)$BHHjo= )4.x# sD5yj~3/ML`7hTFg|ay]O]4L:?Aۿxz\%h^&).~ _x` | &sK8%9 ]Ml' |OZZ 3]y?%ޖaA9^m4wtUhݞZ`2ɑe;oL6o9z aW8O҃lvrdV0j5kG!m7n 2:l.sl{#M"w$00^CZU^UeȕtXvb'uG*VRBi}:|V6N "@xxweP.ի tuNؿF̌b}q ,sRYn!RJxYM+oLVJ`˩ֲC`e׶I>a@"7ƏmM7dG2M J^E)D2':_-ԦlU{y"TA p?g.¥P]_?6v%jwù 5uHiz'؇fv̭+SDrv0gr7^2C<1,0˵Ez5tXy,s#s+W!=NNJQ?mDBd qK_3Yx`af4e+aaE续|k&Х#ct__1PJ 4_2@JNÒjοh}[Z+sjow1%YueqTSALYDWI*wރ\3?ޱ0<^aVS7hb{yd c K#aaTK!W# Q (`F~Xd%Vp`kMY-_3 ʞA4ˏ#QtGQ^^vEعⴊ3fhW.V #P@x%}(5鰛8c0>[!"V$'XvF䚮tdYy5-o2pRt0[1??e`R:HȂ> :D7' nU8Lp(A_`k#R"7iK.r6sx+#o(p2m<'jINRTD3\=7TO![Rh\ynKӈ8|E;?e&4u3ՃH6C[ _k[4$e c:%g.lULUp4зgQ(L+.\ I8pEtj.gj1]!Z.ajg6kV6X9NwsE*|ŘEĽg$2 Ш˄MIccϷdSnxr2T{" Z'w+^OF$Gml˺tRMPk$x//վ~KQaZP ^ xOdZSTFvJkXQ?ۇF%韶Mat~ ElVJ@E vS'1Jy?D0A˃tpMh|8#dK?+zx=YYXe]TG%)( xY>N7qX"_MNj"Os5cC- nCu$yw͊>=+OJnڨ\ۨ|֥TSAԘ 6yNeI]5^IlZ/H񊻹Dx<~L c2^rnm\+5R3/43ݪUn8"`^41iĊMoFy[,I^(r`3Hu('>vLm"O |\.UcRO(>m߭`rPOx26C\%Kq1w嫏R2F;բ؎t,G3)Qш~&! Y Xx-&1ik,#=ybc ]uW>,:3OUM. ۜXDIO#?oOTJtgN]]`q&S,.0nCzuD + +34OGf8V~ImWͱaz.tY{\Og>]d|=z0D0ypPtsNB|;{4 psA=aA0x!L+4f鍺62}3 "41[J7'V`t2>"JOK>C22uo 4Nț\_- bY=ⳂtyG a[:6FVnՊbO-_^x[x=TbPt4/8Q}A!X┧Y뀰f k4]66cڼ}rqc'*n`cq%윸IdMJ_d ^'[A4m@<]#SxzL7%ALY~\]7*Η`c3&d[geSY}=RU;VZXgd,$lE!+^ W"w ? W 8{ $r-dy(9A ɤ[t;7\9]x1'z/Y}wD_,a}z~o# T$-bqdhArj&q4ŷpbk8|iKu&>Ou8pÙQ>¸b&8wy^$v.ꔋBo`0covIu%uS^ \$o =p k>6m ZTc`Ǎ|˙LA 3wCmA3v 0aGq³J;[%ۗM2IYPoiK9QN34˹pL-r-Gg<*q59WEX@ /<ߺe@5NѸ5_+ry4k)OTIkCv-q- ԪhՌ/?I acWͨ(I$OʹΩϫE0KkhSUYqK7#(K&i§W/W /ae58)8\b~畃{`ЙMnfAH2m+)6IG$Md%wKgU)j 9ldSё sG)Lb OrH[DO]&(槼5pTjCφńnZNmC?iH{jOަ3+Ĺ96/llnj2߶>#}T|Iz`Sw&H9+ N{E:HkS)`\iS,l-Ebn#?"Z13(~M`,)kO>Eq .gg`à RxaqFz2ǰ9Kl;BV~8u& Y߉(C(r&ŠyZЯb|SM,hDt8֊EBaj6Eo6L1XSLS:fݢhɮ.TYvU:/P L+Vpu*TRBBk${nx0 Q I (L #(q<)$XLM."q&!M%|W${pEHNpq \T\钠VvfU2)SuKqK*J3Y5{5" N)h_V/3~XcdZ܅^s7*g+쏻Ɍ\MUemml&{#z)&JK`>O׀,K_K,s  d\*(0 +.kjq\R*CDrkB,ņ{F2_BEقjgUBB# q-P+q}8m W3B8iJf#_pv0G:m? @W(GnRf6If+Y\58 ۷b#R{]2Jkp,H+|Ҟ*SOb88 ҼټE ;hd V~d2HrЇ{)[B}Vu+[E7@r!5U?N3G M=Uc#oԑ(d9]ܿ{շDt%9Ȃ2 Q& H) l_{1U2D3=&E}^N'ჭp< G#A;P`[]Rw/ȸA=jA{XTIam^,BZzdMa`4p䥷V%ocep/7-q!x wX石Eבk?P !ݤ$q!PNu[٩ԡ&^+zȡ苋⢆sG'=ogBu LⴕA!Je'GA $S[ŋ1R(ˑJ]R;LɼBf uᎎ4D?Y2 ٱ?cUڹ:iҩ=|sޒ1-I5b/VY]z`N4{CbD}!H$%lD mrS۾-m^*2|F-"Ûhi3v2+OnQ> ^ iSHB0H`psm Y)/Ă>t\Xx~. XZƺ~݊sHHl,O>-m,)S~]z)aTwkB9?DK䝍ᛣLxVɋ+SQd>0L+ʉ_oـL_+7oP ypx~ut]@D~#Qű'Mh7SxEO:$B6wX+ pDbbqŇ0BQmĮ F|*)Bӟx|Kt<ơd\<SI Rm  Akko6b/UXx)BS9pa s>KvՖTӬm1fe3L d?yj[;ci{]#K+ Aц95W+jMs>JXDx4؟a]qF nc*Ph(h N^T-0+ZeXY << +ʯ|5B{2=CNB q@GA#CUK fF~$p!t@dr=tw[Gc{ DTH2E6_4m+Γ3- ͋peMJIp #8tJ3˟bه ?uTyBDrs?ɵc]۵Kߎ~g.U/7>EC\_0(M©\;N0ȣp󤹧HجX` [[SbWW,\Kh=IC2_ 5qV:R,^BŢA"PA;A2c:; W("xzg#v h9$t4h0 ehrP_ۭD~%&QuY}~*hӣ]ƗB0xSg|mлM0AMR.LB=w޹SO 0٬3~(F=NU&`^0<9Q7uEP:jD?(SxZĢF""\,Vomc\Zvԑ H5qm"Vr#!=FLLw5"擄y$cH'ǀ燸,je=M [5{IϷcOs^^PRSO V\,ڻ"RvV4vc-.t&l Nw6IOui'#nVgJ;ZoRo+z/\7Kd`:Z͝ ti%38R) ? oř3"Ʉ hcG?!X>x >J/F o8^I`Ȩ%cdmRv&ֹzi8[)q%Q쏷P`[%QQW?Ptf}Dm+MުBG~ ?~l=}3RkO `pzts  |2+H~+쉛K[s(&0ƖRveX/J3`N%"(i!#AH|24Yk*8r4LYvMpY:`N'ѣJ1-X^$Adw^"4%Fn8mh?z&W懱%A5ݩ Y1Z|El6y-y+ s4҇hI`7I4`^y}34x1?̏dz,X'FK7?;aՈw׸zb׬KR/A5^,BaLI$Y b<7R8OG"] )!"&"qu.}SUֶt[ Tm<&>5ZxЁ228k j9|B/1䨲;mƧXJçSu+i㱒6@j\_;ѕ&JUރG`9\X]ssŗ?x}6 !% xA*:/G-/e9#fjъ߳e?u:+DĘW_a 'GmK|7Y)vOǰ̮lǘLwxZR>+/Nh^tKK==yןxmNi֘PIGqj)GD9E+y'xLkhʇ x-ے Im}MD6Z,Vc_@g*(2#N=M.xMwy%Xww[ӦT5NTT9o%*&\Ci^A 1%i4  v)* #3" [50LX w8K^>o>)ŲX"bGzI>̊HeɨB6 ;l3vs/AhM1[~xGUwc 8\[CH|ŭݟܣtEz4siocP}Oqz.9`O0a%n/UpX*Cb_@ǧNY 5K<73P@v?&-x?F wmȏXG&m'BCiD$/:2i}v)5!нT|됃N,72 KJCZ:c?\V4k0y`Ia˞ cx`@v\/d0+; 1RלTnR KsȯDK`6nT;P-!%i`x:n@pWqh<ٴooͤJ e٧"p {R$iD ~Xz w=족~ߝLp "8nI;g㯲_-_svB |@gR6ʷY%ys?Q$-C%uBcul5sb،2߱#˽=d29Ds(l<]'!, {fEPKʹQ{q$>Oĸ!: ɡܞ1T8򪜖s۸FGId)iBA/a;SܵLP`k?=$kw_n*`2M ?|[gתPĴ2ߩ%Qm\Tl$ԡXt9W^K Kb@p `uŽ=0dz*ۤd2uG3@-[Sђo \Fse/3AI?kL(@ .L뚞,1K+I +R%K%-(_JuXsR5l0quDzNd!M|oLϕ~."' wEM{eAHr?rs>+| _lT>;:0eq8c5r & c(OǮPGo߸tv>^hVJ- O-z 9-$&Y`EnʭYRUe9Ak(Unsb/w1Z~Dv)M(,f#;X^Žb(9cg~עVBtzQWGvDV4|߄W@eˆ%ѓ)~u4 w56or񳂝1B#䍹TZ?KP\ n.M,imҔ|dX̙M~~r}oPӢQ8OU(,A+?jH٤.c *gz7z8X`yf &R\^_F&4@AEgM8Xw< G~BȽO؀[lztl =${GE_Z? q}2LG"w iV}q{FZK9n6!rt(Kro32}rdn՞j)u .W,Q˦s40FzvCXg~^}rWg+ s1>f{IIc1P.=S4iw> ~]k+A?z' H@Ws|wYƃjúې|l~bwvu}XHe*W?c "5A֦o`L}¦u/: ԭ[Mu[(K kS$֒]HS'7Jrj"B-T^M3U NB\Gk|)',v6%u~c6s a{?7*wۊw LM=L7@q KK1Lc%*N2@" wBaw _x"16] /m[\ u?sJܼH'5LXNK# ~Q v̠@YX0y#EyɘgPrnA+6\o@S&B){j5bu Ĺ[䅆%b̾D/vxAM&BN.;wѫ%ī]1qW3zw%)eo}CѦQ^!!uȽa.Ъ#n5p^M@5X|f/-)@p>.݅Dn[߼I0+7/?΂Y*Fq[=(!vk/b ~LE:u(bzTR| ui8nDG䙍HSYؾڵ 0 :\V(|}dp[-a .ᴆ Krkd2`bti4dByY(agTE<@hvjNQ(=?\о!P2%Đ1Y ĄO3cY(-"o;d0t -˜ ۏZ Hu:ʕ@r|rmCeB`I5o“,-&`:Q ށ*J Hb̓B1y E *9~9\@f+nZfmd^ FtI' ./ƪ8QN0Tܝ_HDhm/+Q$w7<͕v*d_-稟XiZHc>*ڨT[c9+Hq$UN3+,ɇ^0ռ\&c0mqHa|3)~ߡu-ifRA#9Nky _^읂V])^Ȯf `lَ #\6:2 N)ѩDbPK){‰4BaHuZOvFsyj|.`RB tb^;RDI@L_Ӕ^rܔ&C>89#dK{D2ev׺ߐB!])jք s4'Wl(lށ 1=trt*o j9X@'-tr] T<&R  2LNDH/dR+9T>'ы&eRXD-͌NlUYuyԄoqp*d=p-'իgD`, Lq)xږ-J2QK_\e9f1/B \ :b9-yG> (sqWXŅBܱª V.Iїբ\N&׫!vױɜ$Y~һ]+&C6wܐ( dܥ9 ߍ_r.A4(`M.g-C$*!LWBRFp@(Pb{q7ݡ5DEx4aWi P8#ܙ/۩0OhƢ #/FT7 iAs f@8'X+K`Ґ#d:<4f.r]dNe/2vx dxtdG &YwSS|$ަ(`.j}}Gxd|iԢlw3qhnQ;qF-Lf<E$~|Pu`)_A;Rám$#Q!__>뛿]𠳫qIJ67HF!P/U|:`D7FܩyH=PYũp$6 vy"ZL#Z=#ZuQW.3o;;[QɆyzӯ<>N׉L.1ynbF˕ =O jL I I^&-TGUGGxy: `J#D$W|'klI8[ۂܳ_M<_Z5D@ѴRtI3XJ֏ lqj8hAΉ5qҀDj5CC&qgX?`V!]\k;tZf_?a΍o 0ygb010OE} z'M˫KL_ X[_]Z5=ձE p/'ްّlmPAC6\X@ Zli9$8E2RlqI% 1LeC%C21ivհ2FJ#\;wxS}aj8Lo.a9j.YR}Y,MjbܦOڥKe;L]fd-Ot.& 8*|`_W;\U  D6hf ʭ\3',ٝiK(A ުd1>_/ª փAog|`;˱~ < Y#.PAv,bhsW"#Ay]p "qQ`ȡRε\#/lz0eO1#sCntOKjx{@LP:~[5GQ i٧7 V*#x!Pe'đwPa"li2,`,|ǖt #%A?+M\$&(fFHGYr?.r),1Q1?eoxЋYv,HX>3fY٘AXS8ߝ]~gh9Y8~@ ҇ T_L՚٣O}v Т~6 pZvy<ҿNczN6ض@|/W=>%80n:c( 7-E*9CNӂ@-&Q$2<`hkHJfw@Dad|IizIMX'UWk:t0%@!sM9߶>&E}B!i_Z;|YհvLyd۽e$,C  Tn G?u*e7G"D_!u"w ,߮J&pZ{ KxdGgZ"j:f۰n0^NRҔM6"2+]n}ni6`ޜe<*Ws}~m(s`Z~7Dwm0Ea)OH5ғ{֪G8"۳5zXr`})A}B]&Ⱥ]-ȓJ 3N1Rثd3T (ubeUhj/V!JC.X7 {Žvg1(8 v=#ֶI"fx:d]A{\{GN&BXrI\fCp0[nӫCHMybqBщ#6U$UX )jr.]WOՉ!ơQ `\UF#w ?8x40_l8HȆ{+BKHRN-z?V.G%|_lBN8}a4}Y<Tr5 ^D&k x\Ys"M[҃~uaY". {}x(L!?\&a`KBQc)v׋a_fnI__|8 jXMar'zQ@hUӥfGk,4Jwl oN[Q̬LjSIfI?mc"<9DrlrŝM#0$Op~.#H,|ߔjxkZitEI 52iצ鍽a HlxyכkKv.^BMYKMx3mjJA^ك-fF<ZeV447`U]Zzj0[ x8uvP5Q*ʻJF&m6_ѿ:ٲN 3.M0#?8[z1gEBxP1@.A2%&Gd`sT"(գe!lw;ӢiDžܨl;BrqY %>#TnO]B k"w.ډvx*YѶhۗl:["V=AU3jz YI N5Uy4KodXgL`vMe00 }47yJq qE%.^(%F~qyRѓ5^m0|YH&v6A-]2V7V*{.6ڲBӮhР-%ߤCkyNS͜hLZwm tEYTb8qLwTjcD.ğV<'cwpXT;š{u"E=]/g.IFy\sHto죋0tJ@*mi^FbE-gH6hF-#O (c.+R3UG|zg*0Cżɬ8xȹDi@?;zRQJwECQ"˷b;nAP=q],T,I:Y {eY,3ӯws[0׀4AfйWFTaT7=_t?,áӣx<ᡣ6K<ʌ? ?UG-ZEa_ES b νnhA}N]Sf'k7yMNV`,,OTt345U]Z (5ɰcb+[#i[WES/m<Ùֹ5/ɇgV@>Nz'BaPt[Tp P;L<jNyl#m"< y,{F+SOe0:Wxs 1iy5 (4Rp\"cٲ}F/t\4 1nljmMv.F䓘TPnR[R;+Z D`=2s~!q/)| } "F 1STѨP<-b?6Fdbo2h`v&Ltj١i4 y䁳[+6`/K+Y!mcLjOo%($OVt1Th^G2,^{2"o>gG?DO5vGI$r~Ĺ j!7AKu(4ZVxيtNmqrc'y+TCNZ 2ĥ h6GO;c"~웟y;A! ͙hes]zMhƶjuTUlfQѣnnjېj iT:']F֑6D2soըXybb$5~XC̵ez3^L4 πX ߹ U:P|rMpx`<wF8װko`>5 B*3(9y!°#sƷBdi x <:BͩG\tN?0 ܨ3 | z>>*XOw EOc ;j.;"v%lm+봫IE؝LGvZOʙ,Ta .h@fZDN`-,. .8kR%cSr|^9q 0͆[y WxaD~fɭMx[knGI8&22BbN647\|-hgk'{ޥ|9hDepY`Ć-I~|=*rJB F>̃u28%H55)z/z|cHM=?)U$Tͳ-bUi ug%XG=%(zue*~uKuoj?Dٵ2S.ҐT0t;YӣQ6e34%Kĩ,]#8LbjZ`{!1'\&P=HplO HFPe$WRƆrh 1Wk@cz! P52%X1x,yK$M[Bw:+4)5V9>Ӆz0G)="H4ꡦ֘L2m,Ȫ;Ow74i@ 0  95а_ 2! bc\g>ym,!4SOhpPZn~Q; d>S9m@}ݼ\X${$6Ѧ EC#/u~sssKIp2GJ >Jg~BUpP8yPt[G@&,,k SX.wG͏}@.겘}k&Wr.Xu3a(nM~FRӁ mf7cc@)зցζ!/jdתO5}>{'ߜ5gH(WB.0AC:3(C!Q J`CC :}%eNKrvuZXI *Ҝ}S /|Ɔ*Xٟgacu_6A=~0Y/Fc@:I'?/Os~c2_0 >|<bƸJ[:ǥ\^B.|c'|)ڞ8vnɖ">?uvAb$s㚁`9^h*-/W"3kmb!耳|YHUmWAW-c2π! o:*4YjKQbHb|_#XK~aoiS4aGK-!#WQ5Q4l3WgH ףcɶL Z_li~rOB~%WFr6N@I^hFgjWO,32սs%sӍ?(5"o%yFiLƍyV?\+>~8dg+L(؂ Ζ7)L3@Ve3{%8XH8nui ʼѣfJ/ S-mB5m %jP\ʼrW \3X B{ GG|N*{yDY.8#1^㞳A.ؕ$vɝ[4uj?rY|Aod-xcKIR٦=+nCWY/.ly񣐟vYP.τ"N&'y09-9x^OE©s_J;RP#*)_QKL(^]~O5^r%oP"Q=Տ$D=)\Z:-GqG%tlc)j)=pGA=YrP#1˅/J732@w>Zu 9|;Xc&H^\t۶S%w;OoWWB_# Ah3"O 9ael~'!؉/]|݊ԸHYQ?:کrvCb;'#!>S%dOJEyđy*y* s#ʯa]O9;ъ `Fߡc޷SM֝~FU#Uؕm3<]{mk\Mtq;h~NuADKVŊnEOa6>bYO58#F~_ hu :SR(Gd=_mNy+ P62 mwr3GhCYw"-O6Pp-$V2s|uN&aOG,UjQՌ ( AhCC"=,eg/ރY , }ǔQ%#tGI9n[%a Fjw=363<"<O o9v48'vj!s6 'Np RWhmӧLXZ1AwjNʜI,ȽFbpdϭN5 G&Ip/m.G;[Q@"!+Kt` O-"sunUhE?勒ޣf{EZ> ?GT$s4Rbe)Ldr%: i̕Ks"l#ŎXDb n ?zk&&YRR1 )qQS P}%a%]uJnxk"vh.~}GDUa˼Zj)DxBvl2G^O ֔O1(~wM-P_AD:#ex+YeMۃy/gkat)SGLcb!D6 CDPC-t$ПMt$p"Qz^>"U7 kc֒(FǠb57 _rt@Qd+ӷLn}~2..vߜ ^|T,GIlA3.]}JlRW^rqp~ܑSIJe,5 &sA()ڞ3Bг$aBfPM46?Q7ⶕ!}ZY|:TU^yՄr@N\pX؅|֝'rk"tencYNd) YdQO%l;Y@BBkƔ$1wۨ^5'B(߂^7tTگfDJ0h6|uVÜX;R ;nj#}8%)_ZT`!R]ʰmA0'd]b?t͌y`xzmزoƘBS+}FcGmѪ};_{/'.(&U1I8k-o+D>5A0]cg.k:l]1q Iǒn}9Fkr1!*D|ƁukʙB Iru}4(iXnQ}˩>5;y n$֦tetҿɗoO,@C,-@J?)T[Uilf tYQtn߽ZznZ9u%M :IAlD"$x>FV_?vx[a m9T2[0)nS4kQ[cv܄heHc:\c:OVز8~P A\\tX]NO^V^uf~zGXa9+U"œ V{5]wkD?CUC}xv4('Fv BTw3ת!:Z7 iіӀ>tenliy;]H^:]5Mk9ө 2W'^,m]#w`8[Y? kj!VP;t meP3ʰ Aq%MÍwvMAj6uR$de+t\i{-+)2ɪjZk&3\0Eu Ug1ތ.(XRLca2s#)tAI˓m.?wtAB‚a\UfC|T_C y@ȠKHk>b};|ah*Lwz]2y~[_ɣgR #Gd^b+L}]<&,vr+CyHo%WlLr*N6d<[F#IOPI;9*4-;O3GlAu2UodҠ%k+$w?\b3+@PnZ*Ll6Bj]xB:9řXj΀O&iqً6vnq<ӑXR@Zg&46M[+ӤՠAW_TQ+zFK_3N=)PI3Nb:NE&C/[kV٪M~J]\\E\*ت6oN9(ڭ]z]\ku5XK ~4JĹK˙YZ(NiC-A{,ƷUr7mЙiﲇJѦ<å'wLpb"Yq.:ISN]"&ƣ+7m*SR:ڋ\&Ft64e)SM Ù!h8kF$QCJM왚)㡩ɮ{ (8WPurb8H kM1’(BxCþͣK0'zShrڬtݝ d)?/6wk/rOFgIh*6!*Ӻj792 Epy`_-n P6^141dUK3I0k>Fp"ts Bђ9*Tצ 0Z^|;z,v)o˩TD +yrsJD\lClCM4v]Y g#f6 GMʍE@#+喍1;^M@!M6A5 3,pUlUAcRf ;j`5*T O<0wu/7#[@&"@]Gd80NgJ9a*ID 1c6e<{( s~}ú4J~;ȥd/OlTo0jjnu$Q =j[}S~~!ꩦyU-&I3sX?,jFvBʝK 40~]X5mժn_M<crU+a@,KX[P;xp[t00=!T$p:Bo B7WMM6REגdN=+;{ʎ =ȃ]BG@>KDI|sإ HxFiBr\E) 3A?gB9p^KOAOW?= >r݄&,Τu-XjB"-E0@5pr'jûEd~KJęX;fW,t d}+oUIŽ8a"B`OAݚύ7W5r쬻k^x&q*/+hh5'=|mnaj['fwߜ BROrՋ IP8=:=j{o=̍Sy4`kY4VN'ٓ?~GO_nNVmfJR-,t1J0 AڤDqV0 *{.1L06󣑕`)=]"~R}ۑ>aR]^1ZZZ.ݦM+On@]N }pz}֧o-CFZ#oNm})ࠀv>^FcF+ls$&ӑL8PlG..Ƞ&W4B9epB}ښ!ݟ@*wL]rz:=*Tc'rơR,WeEE aY"ru!:&*՘>uЁ9;&I0) gzoYo㿘eU:D)RdZ-+>X04]ubX c=WEU3tѽL}QM:0 7}6.r@ 6Aqc˷upQX#{dǶ}vQC<>J+gbpuyDG=Gև e)z*bOCsXk|I LbTVj Wmh:4 O7=d?0 7BpYMN%'K7I m!rvZ{[5[#OHB{c= L4 *Jwȶ0aXY&=nxFt/ jKd`:kQ ;|t-֯/QHme1[嚧ƶg0b`/.Q-X0l;Sz*dUŐ7l?fsU/.[\N̈́O>L}OU,,O3: P_j#vU(سzhV3OjۖHaPߪ ' [BRaoGaT.8F{]<'B_> AW4K.݄Bե70I쿁,=3mJScX*r3 (j(6'@µsJAO\VHe}cfȜ#I9߿"W[-n瓜3`:ِNn\33N9:Sىc0#mV՝+ZdTR_DcBh5V4Gh8x,U >n#Kw2(#j+'T~ Rbk\/(O tߨY+jHwv|ʀ.WD0 ?;8p.(ֻC CG5tc;K:BM/H ݉pu8HN=D3iRsR[ႨZ]-_]dizzj`7]qaYk/>d+ϊO3tfXlQ{VzWh($C]Ո i[nW79JyƄ02_עlpM1x+S9^,odV$A@; kyR߮ނʿ.ڮ+ /uG:"gXo'K>}Li,>3bxw*GGvWܿX#i}ߎO;dӬ0ע_Hbu7~ b֦MT7ZAjGb>"W*@gVM+`4,U׎ׂ[P@$_Ѹ zJS*7pZ/0VQ2R*N1j:;uke $ֺK?}I$1Ǣ,:_vđ3dR³C&$rګJ fhl5SD4ebemj#s]&E=L|mtFtȨftbx+!Gۙ}H}i W"頋O)K$bN{Lu Kj1Sﯘܤߩ&4tz@+~` dz^ y .^LbsQWk +TZQ(/#8JԄL.* f2Z8%zFlTCIZi}f=Bin6]i߉1( #zY5 }OFz=g.՘:$sa0#&8% 7jPqΌhi0(1q(u '=ý9uR[ĸ9 G*ѹc9gX.F=  _h6@^SfeXl~S_Xc*H BT1}PWs>>wE=XoniC尾n`Vj=$_`7c9])MTV>g`adQa]WpҎ {bg+М3(L-O(Ĥ|QNG:~'9$ |b%Vd \mε:{ȶKɈbWbn/-%lN'J9GBOG#p^/'r3̸ANp vϨnQ"B/˷-`νVBU2x84b0z1mCmRv$)[5c@ri'š?zQ3% ) +ud/ƗB{_#_ʧΎ,0)g515wyC?LI!\`:Dtgo=<ֲ%F3eo8a(*_'Dpn)_fS{bN}W[WW^7c j,]!7`KLťԥxѲ- CZOG"Z]F$>:Ofoj|\EiB4Axc! :qG3%ZC%kj[]?),jGC$v\6U=E0υ_C,B:YYE h~-Fν+$ԂL럋T.Tyg"wi]#RC}ʾ{ޔq u0#Z}(o2"NE2$%eIlE|-Y~fs&E0}#|yRkgNVR )՛B (@Ahmȩ Zn(RGLbT6r {2HFb,45TT^WZG˧P0|%*6y$uM dtk¯5ɨZ*.E T(ifvLqXjM֑mWo>ȷh3FZi!m2AJVg}nfG;l[obq_p펧EՎ iheAI0<,b% .LN\߽Rëi8Z9R! m3y<ęMdH]V&?v |Z3ſ0J8!Yh v)ʲ>;فp~\j5ci3dw<@fFvvZ!\O PўGhHg`_A͊ `/z,1JS+e{xc֍6ye mXx94Yee7GlY%g$ J۫b4]qfe+XKΐ%K[3Y I-L㯲sO!E^[qVch}<"EdYq4̾g\i hYhU3yh\TZ{59L(x$fRf9s5QrKq![̭WQ4Vqs3i{svŤ"%>~SkCz6Ŏq!4:"bT|㽆l/y:%YunAYQӸjU6 ^]x!u\z1t =dQ˜W򣡙:.ɭrS8OQ K(gRIrttA0X t?7;?5.alZO ,&͹&K诡 &SfFG)~]p{/ @@D01cѰA'}$*a:a)lW_&gZ`9ݷ2.Dav}-fԠ3 ۱oRm%x`̞SS=^SgVCuL8!>lt+- Y; :6r#aplT)LliӢPVpg;Vhru.~?i͋JQ U̧O_{* 6jj˥tk,` ogl% ^찥 b-a_++s0qRV3ZXQfae60zjiDN?_5 X BT^3o}3x\juVA9nxgg\NzULg& :V QZCDuvn6$.:P3MH[v$T"Y00It? ͖? [zZ%wXi #Q-^:.9^'Uz)4S>q`GzmEjsv_Hkݕߢ~酻ͷK㮧⌊ .`ºVݘ;rZ+/qx֏\)>TRi6$(Uj!Gn*fS3 XbByk/^g\ҏIZ 4TPbv)7AD) \)f8*-*)fE;;7Đ2uM9:j,)?UI&DD\ t,,E.F(J4agb1=пQWA"G#T׋ø \&Ѣ#yPKrlL֨oy|diR2]mt c@V bҋw`,˕^+p/{ 4}aevulE.ܴ7LǷƳV-lM˯k`VDǥ\S 5\dvC3L 5.O2 y&пaO҂3:bH4{8__Zɻc/ϭQRFpz{mл[zI`$>`)TYp2wޏ+]QR1^_arϜE[2zGA'3Ӭ[sA;7ICphpulOJaej:;T0l(ݑȌfDi8mvKdTyby3`EcM,˫Βp txq|c2fbeTW:.4G|8NNCrx*nr>~|MyLMq#"[Ǵ{PuG' xQV9x uW2=A$n ѶlKwk\=+{Dn˼ _̫p޲/}oou˱N+ä7HhͶz(.Oa [X;nτd%5E@0gq}, ?y6GKa{OqԦE@~ߦ{P+[Lc:1I, epUcJ^x&sF\ @'5.ݎ,"͙ }s~,X}\1t)iҞWC_]׮"QL"Gt7E&?k%(*I2s YK A_; x9 jAn2F m޺~Ѕ8LUC $ebOrc2,xh(V zŴ2*g!o<9MʐtJ?Ƙ6>)Q}jpŵ8&fiÊQf2P Egw/զ3U n=jhz|iF2HFd",ρbL? u x2$݉ɕW\;c< kc{TWrg< wGƉp(p46!ro_7U6ck ð[:y:gf-deHIlVp/`D:2Im/ Dgj\J65cfC($.ȯI XZސzM4f+8ȴd]s  luse<7*ʳ1-^Y־>UBZ:G+NRET75+} /DKXд2#+(q@K\of&orhMԻ{t.رuћBhDJi~fSuH]69飛ѕ-$ 5a䮺F)JfVV'R҃3[ 9ؑSX`.sab~TD KnTq&cĮIlctJ_l#Vb) L RQzYpnz+5=΅|O yHS[c;v !>=]R1Cd "}vぁTn u2d ˧f2i|r@LGYDj!^i<`-/-ވALR鎶ǫ2nE0RY88{_q8 Fa;dז#3)Ӿ0 h!M϶}֚Q^F `KU"NmD N;D{WzL7@֝y Ty'8O4͉ƒ{ᮍ8W ̛Թ;;w}閵иj5d˨ TA;G>|HcH t#*UDAGPWZŸsW,&` ;CJmwubn圜d7YR GC[Nn&LzƮe P/o ۬DWQc.O ILiI?.A3HjR0l %=KEA8Rǜ`ONvgEPVk?&뭢{RlR4Jv Mw@f|IJA`)4:)l0 4|^\T$41Zrxp i'[%^Pwi+Ukiޡ[8R>_^J&Z"1PXh㪩 T]V܇"[f01 H5 ȪrUPU'6Y2W(VXAI= SR$%놚W=sۃ56Ë޶0/y ٭1QSa$;ެq Q?o.h2X6^n-L|pUpp}̦DQ8z/.|޾f|bCנz d91FD܇WU܍z݋4V~g ì4 Xmuܝ#lpؖO102[,`a$9~\&,͠bCjPY4IZSͻ];m@>. F[O1k)N*@N@xo{96+|Aez?V݆-CPR'iv =;7 E~v`XYH9ttUfbmtTf`jGBaӘZLUit/C#YFcy秉ev 00PoYv!T7{ڿ=$>EpL^KUeYYc$T|j[Ϋ r0{86=EZ$] o+p֥^AqKњuȄtpF&BMa&gPXhk"T1y3*漿? #wDOV&%:kuRN>K *߿JW=ףZk?oPLzJ-(#D(!hڝDZPjx8sx)Ê܀79΍xm(PH6 u fm6Sb-Ejnix=[ MYw7&1|2h-P 5;D_SnL9Ό}TETQHd8!nZK>-1ؔ';n{, ;^/ +Uu+ҍG15ԨW9uS'-ﻤP$VG$"?)@%ڍpH:4HQBDD(BA758p \-u@f*PEX"0lUsp|F%ĺ̬Oʓ^?+%vSI`*C4Qugd͋>b7+ҏx,O+v3D Ųnb\c\&YuJjB2T9fst95eY89ӻADſG\U-/Ld-= (k5$zݬsm[dLp1khcW+pDӭn8Ks|HP:̋uB7PUM`йNmO*iMkB P)_6t3QPR&?.^-s3ꐹHpQ8̍ _e ìWP:]Kj y+ "; >5:(ލ/ǏTV"SRd%,ma!4%^ZisU<Js=^*H+yaO90l՝;Y[^>^FސyX AM wb1J$teHxH=X +w 6Z꾜FȒ"Nbφb4&^$' )ϻ` E񷙷%5zвbq a4$ $4B؁{t  qE l3qHրl:덑}EFS@Cܑxb'|%ZۢQVӕdP,/0}c_WGagA3"bcޙ 3ݸ+?E'D\rI~ϩ=eU妌-ZnHJ:+~:#OR"#/&d?. }ԅV5/Ug\ !GPbX@쒂c}Шd <8 sZGQAYoV"GS%?!97k"$:^&#`E6a3qp>"h=kșYۍ[t>lyb:b-Yl`D ވ7Kooa>"oSq[Ϋ}(ENJlTYBȮK->56ۨlCun__U1?_s5:8$(=D/\UCb$X1=w>#H\E;j))9*H ӾB$!+J!,=JZ6zrfH)UKQ W"IEq7[yƄ#^E޴9E4*0}%]|D f6Xj+~ g`jl;g:뜳hb߁QD?4绸o+}oiu8h['/-Mt#}/nBAxaW?f 4=$}?fnG_c(0WW{(V!),hJC,VHK4h)nINi w{\GTjpG3au9IP+4}xq4XC_.faJTxĤll\|Q@FIywP,8x eCk޹Vp!_'ʘ'5-?Nԥ4Z1StƩ٫&v؁tb^F%x)dǚ*R@u!m$oMjD6[u;dh%4KUDY:g'W`7}vi?C۞9Ӥ)vS0Q_ pph̀ad?ytCgPRq9wRb 8Dn1b-=Lت'XE孱( =.$d̪#p@}X2?}ny>2 pW|!k Ԅz-MT|746{Xa0]hpKPc Ntcz? ֲi7 Ob ' g$˂A+Zw"˯iQʊHr۾Fס>A83d ݷ f6i& *4Nz`8$YoE(-$<+ zZ0o?_x[ђl畛\чE}W2dռ,܃w v#f!~]hD<Lt"}@H +8L*Ƭ?F܇0YQD^tp.%S]ofSPJy87YT8&*1x/M釫 ;Vӭl*p=KJm/%-Yרm.߫NJUdGYbr*~fLM W|}HfJDr"ܒt' مqL~[UY>|W$"Qöeg4 -z%88I6ecnA=.xݰ{㈸'0I;S+ڿTŠ `I~ `?i čm@ET,^yD]q<͸'ǠUg kFThwSX<j ;>*,O}a]MjIF'BC7$ua Y9*wEa71XEUHtÊZܗP.NoS<_%@5`~Dzh~m;˦)nqpngdȢ*wasx޲١0#i""ւHT9Sn]| 2~0\rXdTt:g? O4TmU憘`g?8d {. %^𸜫pSa"梻) 0Z]Tn 74QDbijTxă/2.4A٘]%ǎo;v]ծ"vN}F1leh!;cg{75bj; ՞%#f-Et(lEV5" ;S$*k!3 H5|# >z[h\F* $ 79xxb|u{YJZZ`XK3tPk[X%(zO/{/GzKkz ʷ` ru3M+mKc,x-n`o,O'%^~Bom`нcy(|֮:Rk>fkl3sqlgav0I:DLs8Һz~(b; J 6rz^4`gݹ">gW67ȡndx&ȇ@M>oV!+tipmQ4gq~j,CનY&&wa"~=DD*ÀR[AP^KDE" *^ֈ聾mOQQci!@cB2" CËmsd{΂+*[k2I)## )+S˟?+3]`e ^'.,Q .7FO+y,w/)Y@:Cze?OڪWDq_[UQCDoV 9)s  n'g7=髩g l Q<Ɉ6-Z[A).CӺ+^9JõV&`v)Ԩu#x&d4G>ZDa}Z*=48fG5mHz^1'm|Qf~tSQ E*^qAEv714xϘLt7tV)z*dwƳ&DɆwfdYԃ'ǝZchUҩ!"¯<еfyXa씲-nfix0aw^kYCm'ZPRx t6& da@H$zv}c+Saˆ4'@ 3QܙJ\V&ׄD%E}1򩻞z$v.jC z`Aox7$`1=̍ VijL@E=7dSEx+i Tk=p6ZHV[<]{$1f O?p*jI !9kKlI`YW$sڸ&Ҟ$I=+ߖ_Dd}$5X>]F6ؓ8{NOԃ P E,t˂zS5LfqJJl7P qlm`}T-SI^Am#*yt:Iu]cɵ4gbMXړ|Sg[e:Me>1A*#rw)]KER#mض|_cWn>`)m͋*}xKx6EEffW'LC+DԘ~-c,wܤ5")[ 5 MDK׵EG7ʂS3#k _PP_wdt1F4Nl 0*ɭ9iDC()问]` )99Up~YvjUEC+xӏxy"b5H Unc&/ok7-\0c׀A=L8@WL@]FiYnN=]U)8 l_dHiBܹWtJ.XTNÌ: Iyzg\d0` 8HQ2.W ZM47$ˮ ك׆ƅbq J)  gՏ(=pvSjB㏋01.68'%7l!TQ8B$PkV6s"Ѿ):i- nP*bJt64y郔(9TaX.Ov0Q!hs9Y2jw%Zcd7 ''" z+C ORMlw4LCv{a3&9,BXځ1֑LcG4ŀX>RHL|mv]3,Ae&q՚`*w" #0-tCF'fcBg Дcyg̰tLm\WN3G-f=?X|X١pL_6Ns<6eoYF&H(4j'E1z>Ob*Ma)o] Ǎ:oPIxKe\W^wԊ|QnO껋8Ёo Kx 8"Hc0dnSOᐥ<_hRtU/B=lt~VqϷq4ZޕB 3yNb( y`kwr;Qp 04nSz࠙>(:pV ax Y/.["F{uǢ faPCPR_ Keb~')+W'Ր 'A GM$/ :KH-sH NėAѿɓA XGiRJ&+v7$^Xt|ú`=T  EF$ ވQ•HSzz{mv8P%Yes%Ly&{YY ={uooD7gEQcj@Pz*)3 (Ug@`}YYZWI't.50ԁ.kCih4oO91hg4[XϠsQLOs=L8&@L%Ek= |*ׄpKJZXJRMzŝEw5C /Q;? *T̘ V[Psw/2}LOs jԀεg,^.-墺])qH[C7,Ur?=?swmotd Z\0ѱU90H|4K b?YlBp0qY)wE4O Ĭu#9e۰}cxR\loߞdN/ vT#m뷿߂{Zj. +pK/>+M>eT"aR߾e5z5b@8fx2"1/FU;0M4ox; W %lb)\k6VҏIkff[?MA7L+adYQ?dU^DP^3M]Y] Y:ӕ[UȚۣL(Rm9{,(ƽ5[KN)x.sWEt/\EԬɦvN'Ўsdga\K. Ԭr֎uY ${ VxM,`^h SZf+st(~%N%{>&}UԻ;سmtj f{]%kG,o JGdlQ,XӵEJrzBR"OؤXmj/'/zu#p;1(U}4p|HuIU3SN/Tܘ(swY&ua`^jx_-&jWHB*2)ǫN &uM_mFݿQsf2xam@ի'n8w KXi=&e|fXZrh? ε!Z(ҭHXWw~A"1XK"H佅"9Li`(v[c$7@9u뜫Yyr*65]Z>* c^57r}iW1 HVDY9iAm)V]ҝ;ꍣbڤ$X4N0Wm3Pd=g՛ۼbURB俔B?48 D\#fj"}7a\ߑM߆q)!$7]AwIlXXDױ˒fDp߷TD;o Va⿮{J/q‚^wp%C1 @PWwkRz;>HǍʹtБyb\) ®(_mwM%YęueXjoKa:6}@+9ظkH Q ^oO2^ɮ@V{Q2nW=U⇉ψtH k@i 8#)th7YT@`ł[~ 9xM8c޲bu~ǿ(ˏe".4&eqGX!cEZ+7S#'SY<+ Y wFU vrSyzȉx뙴'㘅 "d=Q8^.o=QX7cΔI csApr[s#ޅle6.D+)彦(GP{6oA+-e}Ф7D[1vj܄_蠀tA\e,7"qt9MGqL^5lH9):HP)1ă{Z]a }w^ Yq]Cydc=D)ɢDeW,\[J01~"Ѩ6~s1γzAW^"' ^um:DyPhvsq`zFu΃Fӗd/PehkjW%`x@H_=Oq>>!#X3VVTGMQ)F@zI \M@vD%j(G~Aa5o^m aktײ9[8PVi M㏬@w:U vUf.ײbؚGh;[ο[ +FowZyoXs<~Qt{{$6?~ ~[NV*V4GB2$5T]GvS ŬvJ,^Rߏ4DbbX65KQ%h;H!qɽK?ruO7g~war ƗUtA)%0q0wpT@?Y1 $]d唵j[,u]\G|Ϭ*샀m7NDܷy8vM96bS2Эɽeȕ~($Sś*ᖝt()BCpQ4:!W1mb\b*" WMAegwqc C[[PkdY~H[]!He/Xweg4]o L@)k>)> ]  Pd.H:I44sad^!׉TWbS&^C(P`Չ3Lbu_譌w$m| &lT 22!ċ"j] {BxTɍl6W'r}ka kpH;NFu ts=Ǡ+ZPvV%LIϋԆ1ZW|jJ p"p 3%-W=ؽY+=2^^fgs fWRO6UDo(esl~`T/><%K%~ҋa32(HZ=0i#j*ʎy(:eqǨQP1Jϭibrp+F(;+@M/^[Wt{Z$#02d&O d'{D8)Eڮ3w({Kmy5~j* S[I y'_"8l\uwu~npqLnYiỔ6po̽wyߖSmkDׄ}iJPVkPi  P9S*rJ{Gc}1<<>qE/"{'S +Z})d/,/irMnvz+dR-ȸ|WT#QN-L T2;fHu<Cn$3ȹanFx^}#ax,T֌p[i&;B*_\QHi(&["7&B _){ W h>ЍD}-:<0_EyI1#ldfa軳]~&=L>1Q~;-cuqAx޶5_{9)(櫙j1h3+0 vXZ`ޏ(t'+8Rgd`%ZefpZfEUnn21^T!n{2n"iMck< {-F#"0dYRs8Os\1D~' -AbK_1m._"Ƽ~ra^P=tFTxlR흒D*4Ԁq'7ނ, VN~{>s 3$[ۯ?ؑE`E2/*E`%K!%vSu*D!66|k?oHYӡ'U]҉IDρv{d dq)?=w`B?M>.AcQ+Udɱ^[e9~ TJ*ܖ9'*D¢>.,+S 8E NSsu} 7؟dÊi\BB?'h7 Lտ0Th=l<2n܆ԹK/È&^#OF.<1YŪxrVhq}HU_&z2?WWT7~c-\9-\s'ߙDzdL>qopg1TZ24RHў`?d4kB<LNg$H<:ލiZ Swp :dc&N {qEh:-D4l"ϰUr3!,m4%{o Q^k1 Qkl&:0!3VZ۠5LblJޝl{d( o6'MkF]O5ty;,1*#'2:]5?Q-|WDSt5,ڭrU¬nz{f7eU_B#o~Kmer_-t0 "俇 HK{-q'B|%׽fs{߼^cBM?`H4scP i[ 1Z0u]PT0\hc+We2nsAY݆x~whzj:HʶEz_Y(E&yI"u_'D9wvWo@פ ==_7~vş"!/vV-z99jx2 ;#Luޣ/Z5WFWvB8]5ӾCFUl'!G҃JƯav(,9*Ѹܒ?dLi9]50ukDv`(- {aὴnΙ ƐWЉ,SQH-N^eHo2?}鰐 QEv׻+A&KM&aǎO{I6)LK^:{ 7/zM= YJ8K0yT6P.0"о^h_R5Suc 4\ ~zP{]meߗlء6}["ņȩrv3@&c\0˺~i̕-^F1*;Y|宮p'{dx!ĕL3V -EzFcYxm\k+6add@4ĚSu༫~\ޅw#&[ٯd Cy9䀢6ϔlA|+ Z ru+]T U^{:1[AEl5Suh(Ɠt q϶t)ωc}dJ a9*" n#獸!JQ}GFe-F).]:Z >š}rA;sp?Q ᨸjE"^ sN,+%|>/М#fދ\ay̠ р|daVZ{m:R_(Vx%?g_rRSdȾQxj(<҄W17ߝ .r|ť5K$ X }3Mޠ:Ve6VL ԋ 8 -ӦSCA[m-<ˌDr0smyGL}ԧ6,|Y}~fu>cz*p Խdt:L|PnPK0e N?4UCt#aT j|Xpisy LQMв+SScDJ` )UZQphSQԉj\2Ňl_9Z[P2/&(rNxx NIAx3&4xdxM4 5з7- !Ŋf#9@9i:d܊Rڀ m =a6;rP!s?Ϋ UQIZ_hԟGq4al"$ta9_=U֣DIS9//K4Λ7OJ ^Ek$a\齳%45Êjֿ*L`Y5iBf}܉ +z+aKbr3MdfPYIt^Wg % e! 5{&m񳰳KbC=W1lӡ᫼UJVI}BYM>H}ݔ3GU?Y( G+;2(>6`W*>99ƝbP"@Bs K@5&.؂8twH CiS0w|oe:_%SR*&}Gx@uW{Md&廉Σ}ё_ E( 齁3nՍpMS?^95 .[ha =״{NEenUJ |%[g@^ؕԎ@}i(K|"o¿f ѳJ6]xqwa= KqJHͤskԪ jRxB|? a9=oܫY32)#+_G'R98.Dkfd{ݽg _LӮNtC@tṷ:ڒ! ivkXz;#߉bT_p@&x.PYt'B7JHWX8B :YO~J ui*[LEȈOΉv3z`tũf鉁% Jk,1_hu4Rq&Q{ZlX(ZFSH;~Qg2jpCKɁ$eEa"Ӏ!Xj$%.)g1kW?뷃T; XYOW/$뚩PL@^deKT>f;c,^#q5T<-F9Et@y(Fgԋ_xoIcijnR2zeZ,yK}dz=M&2ԛ^\Tg#ݴ U"qX}9F%nV.Ǒ3ՠEH&0xKObXYqHnN9jaU!P4友5` B`|$[XfA"kp:;Qz{. #5&*ۇ%>QuAnxww*V]ﭹL \ /r;Aٔ"~ec(*hVt+ZÐ3RNjl^VP`1<mp/zcVH'Y@I90m]0u6 !.s``YiH#&t)wTBBHYq5P|?E嵎u׼&'oe+wp@,aȭs[` rI}*0Xث"_ KQ 4m;q.*C:/m{ 51װF - /*V~;6pZWr+Ub9NVYߟ@ڊKɥx#*3<6U<$ވz$U=?;}E] |U>Y`pC.@S) ]9FSF̒A:~\+D ?(o%?lʟsa$K)yDPexf`e6M;Qx&5iG, =pFX5Mo-C.=dz#Aڄ {.(E YOMq_W0itC ky7 "Y- |$KA0tC}w}A`s0=:SY4L/ޛ|&L=u!{%LqP| 쓈oi^_ e3X>0imRXL_4̒O -- D4h8L =[V|=D;(Z^ OT1yuvW/2R=DA|:{hËe<ϪEopQIf]ϬDc?_5E~_(vjet^*7BycJ'$+zk= =+kd|A])MOb΃axialϭD'={ ҼV&;C>C>l>?Zpj}܏Rj?ępl9Fe?[szPUq USKmx:at޼8%w4-G =G Z(|L,E6dF0(=+tJg9bǻNoRdDTUdPczSᢟλ7ǤiS!&ND -._x0}nh#VLj`#3)C,o6Z5e\"s#.Rs9XYIs>OobC̢6q#^Q~˞}+>ŧj{4]%X@!oyI | ޅآSINJMH:9:'%cƵVEFi' o%zqV"R1:ގ. qR$ KlaxB2DnZ1O>I.z*E[4CȂ=_(Ke_.=Gf>5w8 X#.+ϒ)AlnݩG#b:zfw[##±2@|;q Y &|gxi<Ў#*x81|IJ4 =QZ=ֶTߌͪ+ f 5c;!G3vTXQX¼T^VD5ूM9J~) yk\!cR<j$,F8h(57m7#(@7]@؆=H59A)ڷ%`HvĒ~7s_ևq?VO678Jztx`ݘ\eV Hm|G\T.FE%XV]ʻ=h iSG FC<]sjqkI"2#Yx+#irka2!:@‚L ӂyO"R߰ExJ}c 96"{Qnģx5 BES#`ho1L>[qEo|K$!UBOrkQ"2nߍ)];|턲",?c!^h3OD;nssA'qs!x_mo >aR UgԐ2zÔ|PpR'*f>b?jʪ^yٯsUɳO PY >kغzeg }qW0a LT\IZ W rU1 RXU-K:X+5_Q']G"dԜ`Jsw*?忙t0PxbQ%K\!orN ӗ A>!15A=- ; OdQazBBۜ~v8nץw}1yHCNU1Ial=[]ը?*UjaoN KzTKOr+ӥ^_f*=@*R54 Ė#M٘хaf Z3aY #;.gF9v-X [4j&vyn]AT'Q'ĜUцdrN :YH ()DYs:~"D |:<º$ ?v !\fH.2geA;l[1ϡUjq ;%pw,07@w*uP@jN2G'| KUsD4||o7*[ͶV&(-D[Ze)Qr.*[3Y}̓ic ړ#L vpp< /˰K;1]ءUϸNs+#u* H :j!Ge{)\yI cJ6;j!wQi? pJs-Oܨ[  Np47nVćX6XMs>8 I+w:k7_[ PR TT 'M6Gqx +ۿ7goV!jy/l o֎4+I2 xp-:VWɗͲK%ß & LhОxt4fiwbZ9I@ YhC)^fgb'Ih?A:T W,m@cSy\-JSM N//Έ5ij{ ˾")Hb {bѰd~cTSt}'vX\jN+\B_md{mA?0{oM;.)hbé⒯ʚyz \{ȷ)Vip3%"1$3ĝ9㇙ߤU/L/ iXOr,ȽLLYT^o_E~, bP@!f^,/G mYvo_ރ eߘ3osgy>iUW"@nIFѴ{ٛnJ6w"x8.ݤ9$Kv:*n:Zz8ϗ9jxu#3:^<\yܩ &C (cG/( m .Nw]336 3l"Ŭגa4 +z/0¨l`K̦5754ha׼G҅"j(|"Lw+h1mݓ C4pU[?e\gjjb;Uё Es'8e>8J H=t0;FÌ5B)N'benk_Ht<9;Cqi$Jn\D#!f@"{vx}Ĉaf~O"Vբʯɧ J&[5 $:3(eْȭ-^*)]i4'$b>!aoc% t=#DU.MJ!jZcj` I&O)B=|-w}-LZ7\+"xcCmTVg TM9 E7',ڰbg1${KS_Sz!M mI)fDԛ6^Iy3cP:!{w`+91X*08 RAdZ3qaI* URl*kҫ)Z͜ ٖi/,),%/rdc 9zGWm_2Cz7~?+#^)/Mo"'FmeQ յ]W3]&A)>:7,s[QFM' ޳žqk(/Os?h˜۳ H)m|4+7O׈@*qŘ9srQ5ԉb"xϓ:A2Ky!Ni%!0GG >IJU(yuJg#(j |ؙHkh/ys^dNѭ_ind]nI],DQ1Ez2b%_}6$uj1NiX> nag6w*VFy`c5(Z}O»QOT|6jm0~f4+5)iFeM )ޱy|VtOks5Kz%o9WʼyiۏllJw]@ K=*ܺq9גP#P'rfC\z]F:RG2w#W{&m(/Q,#w}1:e|?ŽPw@Vf0%` pE28nO xK)_!i@f2Hg3pq7VJSF1Ax,E&ƱC5Ôhl ]C(m.y$'@slؽ~Laިm"lE2g°䩻l?7Rp *U5$ Y)tU紐<ϑs*yM,ڿVIC '4Hzf߅6E_ɯp3&޾t6 6L֦YtZTψ'o]m(#ԍM+^r3iA1YfW:$QcuziHw/#n!a$6㟔 ^:Y]v+[B~I)a沧WcIb$I8ѻ?t hߞ_ԊtJ"U@_qΏ/o8uT, y }PzH0}R ~@> l*7DB:|ѸE, IR+pm"{T4(PC.k|xlnI#E+>ZݙU;S.k5(=MT(ǥ,E[͹`NpfwspT)zB\} ["##޺֯8;Yjgdf4X{q >F;Tt%+! [1CXW{' JXJJ)-%jRk/c!)&*ҝA3w"Cr.q3LBV.G/.هf՝-%FL֤~3KM=f~jh r\{iNʧȒ ðk.:UϦʹpc$EOWvÙ>Wbn/zb+ Q刬ҌXP$ʛ^w-St3@lV]ǽ@Y%8L[ t)-l1>DcoKSdE/=Qkj/)D u`2lR[ Kb)Ōꦗ}\Ϗ|^6$BƇJ >s k·ܑ[2+ 7G9jsͫa^} zBr{; >{9iϏA2 ڮ'\I.G4c׺ze:~ܲU631,䛙tŧHge%:'-+1U7Jr&?K-@s b*5 `7bHHX'`wdǯX2ŜpT^qܪ$o4UHQ;x.v={,hT ta`ݠS =(J޸s( Iuњn|51T;N$:[۠]oH0wkE A'|Z?`YinTgm]c(x UZtX'bqkSwēv rӅG6L{)p+~2+YLNk1n˳ACW㆞J~h!c묩-s_ڱ+ KVҖgcSVK0P䉬¦u=8(f9?G@SBѻo] KVHcPyRAEK 1:.opd#ok 'ST[}$Iq"Kdzˬِ2.xI3u<:$\7-O*l DjXbNEr͚r>m*6gw5'?,MȱOw}g_^; (hH`Tcě9%AS,pۤ0- }x'ʈ5fBRh}}`Ғ.I7oPc ]v j/! _4 ~et5ikUnL7h( Z?V-x7Aev+hݛ7@[`\ghT4\:mB@btpʄA^zL^fFc1Xkm(KMnÈF>8{*TNXq{ /t܎[b̢V@f!MP-U+gfe7)WxXJ=R X/A#viдuP8}$C~l55 w`c>SxOA OBvPꤸ.I;X We.uPpBFЙrV$^в>&]>o8.@]P'!um2 _|G&kH !7|Q/SjՃODTtWW2b̈́'O:?&XNއa=!{jRGJhYgV|Mwx1JGIZ jIR/fm˃̓yD I?VWfΧMdeN+'c>cCm'>}kQLZl_umqwƼ# =ܥ#՟oYEHcOKN YL'[)^9/ݶ3z+( xw1li"ѩ Z]h^2g-SStt g<6A3"$lXg"8fRp""GCnHd.rOQ*[px8* a]1K:,AAlٮoh_iϜ{[e-C T3Q\l-v^U@!vnw8SZCZd.ZWStFqߊZ}w4vX\)o<{8--$/;H"2~K'5t[+03{p5pfކ7z_ivؘ 2x ZTa/eΘ=۽MJTuw5Xv; Uz.! "$k21LJM1Ppٔj)iϜ:O`!M̿K-9nS0UY72Ԁ 1ทm|d|iEoJuc Yi9Ϣ@9,>ioB*r#5yG c:F2]hPNr=6H|)e{~3`8ʱa%%s ; L\m7ύyK V5Fb36toBavFǏ+5YCⷉ[8'pV҅nGC~:)ȸ_NuZ0/zWjzvuAi}`:Xkz.t OjB@_ 8z~#n x_[ޚ96?)HL89D~$]!g&+QNL801_9,MPyQTg{K0 6p e2?ИjBφ$!iJz6j!k1hsCZ@~!taM_!iBI\d$n]Il,D\aߧU򥓌0>kn)<`|1Q @1up iB1UAyAW_xA2u8bi==HH8O7͔Hn6WA▄" "dabڟoARv_:=BDц>u#;# [=_SyG(fRZ'#(T+yQψmYq+˭O~ZvvMFMY[?ELL{Oڸ27l^j1ҪRr0 !~|gRuJY>dS:FhAG7ր,*kPC>f/.?mI>צ-0 ,_sKd{ED ޥ6ㄎ?ֿɝ+5Wt10W!f53ڌTΙgM2G!T0ޤ0dǵ) @mK@vܴt=y=yR 7fC}=.>s VkNy gkJe(A5r$VZ L8.v m@^}F1fQn>hCC:"z\)}uA:g/)>EKQjaѱzCߕvAx#WU?tW@ݍ*%ƀ#dx Ƶ.2;S2 *5!q5 =\.OiQ+I$4}ݫe nhʟ8zVa'L%,in G3223RFxNʦw7qN@C /z@ gn*X=T1㭵[}>y¨֦\Ka'EX[ $tϯP,sHS~l*F"WlTS/aH>{dcڸDa:k-ׁnAt1EX5$?<]/qT3/҆Pc_ʄ ŋP?]ZWW$2MQU!JWsvw2Se>dx T8QZ֤gxA#:1ef֨vTg1BMª`p靪 M6F>f#A88c)5|n74 UɒFy>[ZOB*P.DWZ9Rf8'TD@,6/8%<@IS ɹABa Ц06HCbi.ȫ&@Od50ȇkCeFT4M/ tx#mTTBb@e)X2ҊId?8 0"8l?ew< ,;Ke VO*ӷ"G/DB83@qFҠ'p2]WH0W) Q̥Ud*Ҹe-~䕁Ÿ8w}e^Ci^nYJ,TR}ymIꗫݍy垽3};Fo(u  2FmN =/ں AQЉV_5c27'D6|ʳmFMآe Hʑ^K@Yq.e/"WnVN:]hp)NB#6ֹ*bRzP_TjoObrߋBK5Ml0uM_y=TZ*ΆdRµ=T%8ho/4?<{* *Fq>rTn~JHY*6QEL!: UlC٦`y|\@0=l&sue#/&¦|l^G_֝h7|P^sHk NFCcļwnהsILlbkjM-׆>Qs,~c2wE Jg+y3o<n&;`޿OOjϼcΗ.*!Η~eno!>D&8@hSXnbsx(}5HY٭h6(\ /֑E$Il~"ʽS5Wua_xgW϶IΏCO`{"<ǂ-U8%k 7F2Se8Hd<]_C1ؗ ! 5_R7=x8!x'SӱNkΠ=tȉ!>{YEJte9f}6m4]$We3{Ёf:W|s| !sZȩ}&0 p-F*)r]V#fD#¨Xpz^i&`}xk`v `γ6/ #>swsXh8CQk߲?vj-RJT˦7] ZER/;K\ ּڥG;0Cjg^aoK|Ll{}wT#bj&6# s5@{$ M`vaε7w %E. زj@r89m]B%l[Ǧv]s`c>uQ^~È m7nurD$kZWIj\t-v>8dTL'ي ;Uǧ Jhc2 0A69 `pYR魃W" qJ8P%O `ĸk Q7?W$J:1`7 +T E!wx(ZQn`X:0*xCf" hA2)pݜ3+J] '}JG(11֟!NWObJ}S)nc+$[z_E.)NGP9u+SmAoܒ8Sp| j7@ӑ=M }0ófn=}g)eN0PƢ]wZ- ncFw¡:a^%7gAgFk;v$X@oFUc]u&l񞨼%7fe78:Pى !FnB9'rIf?z(;cV)pAtWV)FU"Ν& Na#=7x??%qyxTkrl.뮂 p,t8k҂|*w o})7gY2ͮCQ4i a0% +\> jv:'\LͱiŽAő) IA5uv!L*26_qT3=H۽HnR2u,< ꅜْa2fZd[I/O" K1ڃI#+6Iq?#DnN)cXJÇ8Ņ>HB$T wOм}#(Z a&^`TlOǘO'NWA̬@ɟrxO >!27.8g9osKy0*y!Ȕ'fphO<0FXsV:p8o:U3O9 mN_7V Ud~V/kt5%v9'D\[Tю)g\}0;C,`H3-@ˉQej9 Y&y?ؕrհ:PϧnUn_X`.Œ]b!i!D3C)>ykK,$3ZyFo/| {;l$N$&@_6dD!Ѭ9qjuTw)ztӨs\b(`n=CRX5]6\dB`~2+rpԋ2 MyQ\\ev @93DGgˁa3{XjIw=ȞфIb. ^<,LpOC  ٌ+%!4HxQyf,X{2XS&ϵ~k;;k=kn)DO26xz;o*~4O^LP(w&60j\@Gm5 3F()5WcF2?nNɊ ˣ? q"5JWΪY&! $-`hq >%B[!3Z+vH,Mx P VNmFigf$8{#9KpeB2+%IVZM;| [QHv.vCA" e>u?35%8>nl:yCJjiA޸gx?MQOhM+%ZdXCqah]DY%6ᢺJeq׭9QH4΢3mZ20|]"i+1=Ag!WT+tDhc`Rw^l?(:B$UT`O 颋zgN'LqzOf4ף(VUR{`K_2>7/ 5\¯cHՑG5mˋlz[.m;Ӥ^] qmt-2pk=hO0Q(s%i^ 0MS(3X7{6iجA$<|a*P"Uַ b4;$9BX}s0CV a9X)1 > r"@0ycg=D̕bs{$WIFޥDP8l<^ nJ2N^zl.Z-uwRmk nT[%0-BmB\ 5';JdX_b%L feGeDzBtkդ\}p~:{_s3'(igEA(fRҀUm)D03u ʤx'>o KHKiv 799YJwGE 6;R UOn$L.i`,)M@?@3I4m^@Rw16@wרlA> `iHeN;$3\1AeCyv*;ne,qJM%h[LRern%d7CĨПXB;3c ډ ®CwPmq!uZⓡP1IPCw6xJ?:3~g`ˀħ# 1\/]xf[FlZhVNJcfy^ah$ֻ^=B2K3Vm5-%)K@;+YSWRԁIvc<ۯ!o7@1Lc)4!$p|T*q<15O[䇂fd%0'<}C[ >R秷qg(I `0v lXfHKّHb4Ab8?! ]J2D0׸eHJz,OBGr\fQ va?.5s(?~h(ݢI}p[-t&PEfY:Y7`ͽUE $, R"a%'kd^'10Թ>bGkNW#^(AR8A0 *qj `.i=T5X 1O@JBe$)/DzL¼0r,4T3̓@ͳ"$ڂ8S#,NQݎ A8&[uytwBgj5p xD؃<p3mM`~p#uu 'R},8Y>ݛ2*{@!P2E/dZ`VOېs&ZXwESR>|!ڿa.ߟ?|2c=;zO^c XG6juuca71C`OvZ=ó1`aE-xqvj%Tͅ $%3OśMry؆k$!b@9Ch;oUB|,s-H1v24yM:ߜjٲiq2tjǿ-@wI&u8%:P5o0 =𸠾b+> ? `knoэ:Td7ri#Oe;u{saw۸;+ j riʷ`:5e2A, ?}HaVRRJ:o+W+|E2Đs|lV-A|fOz1&j.z/ړgʆ>q%WFE<ɜq}*մ*2;.Is v])ɠ*˚Rigo)8go -=ho[^IQ .oF4J$,98N_g 0|`bWm{CYr`m/_U'9Z>(NzmX,> Hٔ<*<"ne'YMdo? ĨyJ$Ќ#qm ڒ~9LFYRz4z<6LtE E!q( pQj׊glH LTܽoS`bԺs [* MUzu{|Atv?'k5g{ɠfدx}5Ȅ+=d=-D^pVvtvyuzf):rZz;n*tzWݘT-wO$GTdJ:ZACid=e^"xeEr0]O~L/t|S1 ۜ^!*=G*9SpE| `N!kJ#i.5 E`i aX@(#d&Mnrvtw7$}.]@"a3EO*R1 WW}V.bA.5OyݹzbK߬ qX h ;h9'.Y*Kg+RbΈ-L(Y&nfr0IX5]VbXWu3m5x k,?aN͚7*qs?CW?f$an?2%[@9bkpՔPUHF7SEHzj}X"M%NjŁ:XUcyƢEQZ*q%@g"H Nӱ?+ j#VS-sc~,%N׏ 9T'i4(r谳ϏD SV -{]3}k*bp_18ԘLNYZl֑t( e԰9ƠF r: Qm9)F t~&Yjܪ陒L AGQ)1[ùLGG[sٙ T& ArʃVL$5g+^ n b|g'*j@<P9虨fX@?,g@@'9C \ĊK_J!3k\Az(~]>{BJ-4b\ xو?B}>ea- (#|fXG9T0ߪI1$ >oЗ5p\xz; c V}F}"KI:nE)`Ӡ"v˰ȟ?ڭ"?W9%󓓿]GM0ᥛTr:z; ط=[L =4ԫs"3UlA~}-6+?P-}AxWwä@o8c۝D^jrx^jFPrb<3j7꤀E ܸi:•葇[b,k:=P"B..@iWQT/9EbS“Vt䴇$l*!^$ }\+: C8j[dͨv}|EL |A#󣊏=5NG1Q?K9UdAOf`0͹P(>$bEm.rm>D#w;ސ+z4[8IN%>?ũ,tx!vjaX:nΈ+VRtvm5L=JVq|Of\FܯF?(z8`xgF\T 3R WwKNKۉ3'/@Us;RG[pqVW r1OUTm0gI 5T'Àd[Wԧz Ltg྘ {|&Ҩo͞Vl+1ȅ nfEZs֣35Q/c3jSFmp&Sg/ZpAP[]Hn"F:BQ?9z+R;qٶyѯJ=.L[n|(p|] D.dv̖`Bx)A8+a%2C|nP,J$#n{ƀ"GY&㚚WRiQ9L.8r<1 SS xxa[SJ>"J}۝\Xc3nnґܮDZ&g2 9ɷOM UHdC]92yn~=Ud-m*Bm-dQz!3ըaMIȤ27c#8@'vwbݧ֔EAx[WnN9t%3j;j@aLvE_ &JEu=FM-paP@)^,L+2Љ ͪLP&Ḟ+"+x49<ucN:zvxSɽ+;l"8p]I!AQā; ) & ɬ'IA<]kًt(nf>z}dM-=x&p 5c:#jX]IU%EPjWLR3fwY{w%FI,xxNUA.'խW*${c+ _Kv9ۊaMh0YR-fDi6~odBհ$*nlJ:,w%2WQPg/<"7ƕ,ʿWSp8JW]0D:3/Z91a`z^F2auh0sZxS&ۧPB5+tXUpdvǰl Ҟ|^_ܝ) Oɔ\M^Q^}ĹL(h6({3 CH 2enWxD[_SgWbbqkRtm!%& pJ]N\mhB@*Qݾf7éf,+'~{q| TʄL*_5--]N$y`K5IquDž8Yo|PP쫸HvlYP-@F04;5oh8XSc"9 T=)0ʥnCg\o:KF3ul tT +KIм~ȆKpMaόNs5z<'"Ƹ,b"Ӱ.s-7)lݪrMM2P@\R&{t'oʎyѰ;mF蠄{();`gyj.OfDSD>O XGi/ RY.XᅸZ~@Ba{R>%\'= 6*jbtwlShwt/VS;uI{2Zҧlߠ6גDiYT=HM)x6S6%B]*\k- /aaon~<jV'?SszX?וꃘI/]HLp`㣧5qaIW]~0j(.M[BUC'4űfonN\9/}x`B3 EL5")ѻ3ʔI4Lon9R>,[v٣5zC z"P?0RnBgQ6B= 4 FE= = nKШ3 $^3*z "bC}ϴIWW=`I5>-O(?RA^C!E\ ,PVFҮgK?ţlvܤ3MO?4̮!SEٝ(p^^`(l jU[+d~w \s9Y(Vϛچ}Y>'qi)J[4)lp %5]YVU) PF|lCCXR;+T9tK5uW `S 7 b0wBTS*) D$jKÚc , |RkNJ^C\4A3umZ$ ª>Ӣ5l6&կ YzRuf%ӠM섥A(4LKBt<3*"qGM[pVv!J3N9 ayJGjT!^y-ɩ%Tzっv &)T¬v:K:1L.8K-Opn{ʧ齝(e^t"P&ݣPʒJ`œѶ6N%+5oFc۲ģX'h>AFSRw~#K5'3M`?|1AӕAB]U))#L9QbIU)Vx'pP ˥;ff  \WZD 1\ӧڭ4Pj/S b"Ab\JOcnQMxuoJ9d޸RԐx{mb. ҂87x83^0Ԧ?  ^=Gj)YG9 4k7=b%b⏁gޝbf֊^1:~?MoV%F+όD;_6XvX4l $y-/O2 Jl m7UQP'D !N(rўY֜p Ap|ԅ#{=0yE uXd@"2dv9|`DT)#ۓ/9PG*‘8X򩺧R|,Œ špHi. Ĵ/ˠ1Hp('J8$L=/Њ&y>e'|ct|Y]rt0ϳa) C1pD޲:M'tl<_S@h]Ij량z ځ@PO"[C\{Ӵfq AũDsRc9ˍ19tR-cy;z^E8;A1G12-Nja H1t#)Bn|q&ug C>J2zaNq0ʁb@wj^>}"l66m 5*Y%XmtwB9?I!ʽpr\}Y|mdxƒ+n^j>AIMVOuWdJ/vZ]NjSo3#8gˮ'>l8Ʃ/H^ )̖/A#A(Gz1)E8D%ft)3JK@h f1.1,ٽkҿ{?)fD(ᇝVICڜ(+P)Q\ 2aqJdMSd.GRi*s,پ~rC@Ow76C3($ӛAEzb͠1Kzht%yk)ΙXkoklM'/FkQ78qD"Z q  Pt VOsCЭe&f( "' y2q=\ǾIu*y?_tRwb?41(fꥼVto {?{6 9 @{ѥN(j=dMQ]w댶~TvW[5ڥ7U0h ˆ🞵#|Jj룷eSƒVD'4`Me6}4ӫ~PtHL{8kՅ@E23#moF\tW93iZGAQW 7Ivթuy-JFJˍj7kʟRNȕ$k|-c%gWAH̟V٬7Fb.@ExH$izrqרK1)h_X'MIvUrE:;"3]i@_R*As2Ӳ'5d }Ot ~n(E۬ bNXdm6'7Ӆi1HoT / FTna(j!6 biJ+>8Z{HDͼJi*9[OSQbyF4tXq1BvvyTZvR3y(Q&+ lvpWw;!'I1rvUWډWnduЁoC˦1Y̧^6hsAe:Yay.O'^H-ӍY۝^]z*+ NAƎH[^ u9~{=ɲ&/A(AYbCLlE wŶc ٌHfg ΕS"ZZJҟ-`@7K P@R&v=@s {B1oL7R q\j q xq>ÿ~6[zU7 BQ d;J({vPgm qfDw ֝1!ʩ^~ \6; 3PG@g ޺:DwR*D^hGB&Xu9^cb|ϾH?רc2)HV *BV]%oEGZ\{}{vRA8TQS1ts8E-9ѧ$t!E0M% W ˋW)%(z֘YmeȦ<9K=>M1]V('M WoL{'|K>rwPCL&\pK!ć_8xt,g԰j[$5Yx (2o2`LAm(@~;qL.ո>S%KQֺ?^|[aLM]l{a<4m@Ex^B[.x5Z۝JyxQO| eMI7ؚ?)d2vk00B`"?)$= e\ꉳq0HYkZUSW-2{"65Ӽ!\uK盽kO/>ʁȤ7ҟ (\-`tFRlS/:n-AQ)CgyK+*vPv,K~ALmvarv0[yW|̋xf2䣻12T.|oa)}St MMR~Sڍݥ3LԌ.~Cׇz/R@ w.EII/<FZ΁H]'cQ޺uwGCS&4cdgM <;L|rﺳX})Ng_O=MѳLwA lm'*Q8F"nzٸ4mX=wHyM5J O̖=n=PP:& ƑՆօÿp$4Ƥ2)m: i { $x;ɟkx?q"h}GǂйӷճcJ\&t*@tvĞ/bK <~D"w 4Ҧ*JeL.q_nc]~H\Ԁ#aَX`^9$%*P<=϶ArS#JLjQ A .O!׈y>%\GԠJC"*b7M";< 8y3̷#3&1W\à':(MxWR%1.=r`+Jǖ@:"KwnALIt,NIo7)VgٴCm5 &p= y^CAڮU.Gg%G3-,)3\ /zJ/7gf&$* ]W 'l%GΫ(}i䦖=| !f-ck[*t̸pP`8 rb- @[I1Ԋ).rp 8qEpxyRz=Ҧ䴸Fy *! j,x&fI%9u$K!A QLc)uȗ"-x( +anFӘG0rʢr(-U^UGw:rZЗ%lNF%% Bsةo^%zI\RKMvIgm(K~y&&2CJjiO5)|ExgiIo-A('ZQ#2(::KqZrwZ/y ZGj۝X}1DbXYSGt<μS_lg囵|zB2v |qٍoO˧:c8ss Q,&`;#p4.dF4WJ=Cp3q4io+)]BU䛡>~ts "=a aBcrIaKJ(/²Oڕ;(u %=]^I7"Nܝ$9Ӝ`rJ &F+FkYGG,R).c%6vSKy;PTV*妿2^ANܥeXRk5N4ywpj{{Oh<KXR[wä0=!" AgGX9M?0Cv6r^R3ѕf:w╼@YPZ< Km2wWⷰkLA_DL_ 0[^q\ wIÀJ1=Iy-ý/ DN{I @(dq񢀫ދ,|"ު\-=D#Vkm^nex 4 n^&$OZ2C(ǜLq- 6 ƍeҴ@KaDI 9 A++Ak;Y,)bEaLgu*l5:P CE^ i)'LJZ8YyfxXvd[b/ΨWrʂFs6?P63|CS"۳g"b <1Zhs`3~Syo,*VO+l+Q8l>rŃ2<#y%^+2Yгx!"Ϳq嫈n|8uRJ}p&+ uXX:e욮x/:ATW/F}"yL 8d+](MT?tbS&Hq N.GRCAAd4׊|K !_ZY @4ȵY8:Ⰵ}`{:tFIvXf8;!0 Z|-;՚9a#ucRˆLdoY;Y^ ʉw+Gk)ș<퍻Č!j%440_|#J¶̞_=@bU5:{,6BOGh#9=x1.}+ ,1˰XxN}݊صnt<gnRkI萂pòXnOU /qf[etqI.4Pcu@,R[i1۸ }{t6scp|n(l\=9[qe081` 2M 5)[gdvhh bry:azi*CacF>̻dЋ.oĎ0vS?d.ŪvɸU'U#Ϣ%G 6["iB,I#j$XQF#6Y{ۊ?Acg}rX{:[g?( 0+MCp!1 !MiWB7*2x)8fdL:>NGkiuYWK]i4"3p-7oݳQ>AI`@B`[DR2W'˂~D\v<,EEGOօNY6'$ȂZbZ | Ss՛rZ&p{L=R;jBV{1C./ޕ ԁf-5z&|[Ow^Ԥ!QM46ygԿ9캱RRO^-MSD ȁ;D Xd|T$,0x7Iz Qt#ܪΛS[§W{*~ٰ1G#D -0O\9'!)/S~ꎀ";LFs1p)/n-n􁉄ʌj}.:&$ɢb)LtOtF@ vy+/.2Q Vv|+'C>Oi8LJ&~H}0E!kBvqk{.\p~b0IܨFlpp"d |NgyK9ӖwwI`/uQ6(Ǝp/m!!d/dŪa!k 'C ˺݆=嵷vam2{.;43. 8Uր?AUjާ֥3tzzS* 7A_f0%z֐[>%/S``ǖ%E*]tEC;qc_H>[)5} CC#qFg$R}-.bI3 z޾|3Zhgޭ9qLt}*o8@S3Nd`}("iMόtӯUydD䱂\3s':x0F+XSCӏ@|Hխh8{#1) JH|{Zn0臰Ono*mAm*k@7d²M ;-Q▚&;ޱOU:4]Xũ>whihH˩>m u]zD,} ߭ü5vn͐:A0\>9pnAݑWJVՈ ՎntqS@kĶxHB/OuApyajdXеpepxIյV;nܻώSA؋3CzϚx:K힧u'ϘN, 3_"1)6 nTOGs/?W?O7(;B⋋$t .>n\C+n=ҝj$Iɱf$_ce=)i3 ط%mr&C 4>,U dy_n dY\+%#LA\e7h .y=֐z3ԥ-avx5rgiq^P\dL_fԵ#nE8lIhJ4fPj(D7Rbgy0=ץVSP66K3b._+6~[W7"zw欩a /2ZVv"O~;&p__pk4@hltM!!crEPlCΘD _Y 6]~'Q+v qO5Ճ֒{vOa%yJŠV90x D\Ac"z&`Z7wVZY>A"|0E, %_LR3 istdϤYd3TK&0>I@H 槧Vg,;FvX(uEa{9opV̈H<]M7 v0vV)c6qh^8nMk@Mza4SNc?Μ}r:ǰ<Ѩ:oO2l`zX >;m]5s,Nue2HˏrT}4(&mx< Xl*'Il8{n Ehֱ[ wkѓAFj fuɭ+ t`(9`EB[Cb^رsT'ƣM% +$Γ1Up|:pq 'zDb|1}Vɰళ?ߝ^[51_•'bhWzނ e+Zw:`S@)D5'Ő wR VFnW 8Kó|.WO֚ T ]v@ȁ$>1Mqߖ [Ze,icŷ6"]v0U!Q?G1w]rpǘ 9 ES<=ƤͫNtØCT1GNȉ&q%ճ$PpERF\j(EtG] ȨŽ:&d ` S,3Gt NR<ѻ 4 }~`U#+|xgֹFh[ԥdڹz:+ bIA_r֜+i-7Ϣ'nC 1 vf-p҇dy4Z(_V[LŅ ckz]O/5W'8{ 9ή"VƩxwz6 N泄%8M |dߩXxP] 樠3`48Thy!-eɑ_\`{l׮xÖ܏$dn="Jl6p)ٯdh:w繰(U cũ]b~x,nL&rҨ) 'I8AQ!7!+b#os}w#PYDwv?A@:/,ELRVH Iֱ;sdQVN_7 S}*×7 @e69#3xm'lG#NHp} .=IYNr:`-o-ñp"Sɿob2&׵h@" )=/Y*!q7罈`]z>o-qEcըiwdW" EZb*yQREL}QOW`jH K~g@7?.0#MTbU'yТ!h"&hxcK8u]&ǻβ̫@A,9`2=D;u23BL3\$>.3)r|oHvZNu-ozG | OCeoDu/=9u6Æ@a5 Lޫ|2u'vCSR$ϰ7|IfcLѹGXNlZ#u\q>XЪ9].xRDžLʔ_ow= e$f<_Ǽ*Թ.:&Z,F@u&P^`/z~9k%,_l 7-? |b"ER7Ƒ_ΈďTu_V0rA6ȷ&boTӤ̕}&+c1ITɯ|ty$JO*r>ꆺ^f0k߮]:}on<7cX?l۪tq`=8Ь^&{RmY'A]@~XGI]@*Z8pQ~[ROAxLaGM>"|:(Ŭm&e*UN{d]Е>f2k )fXp. XM #tEZ$m m<X̂3, hObE9PC9(ɳWqQCnr:l. AxX9jI3x95S6^2X!`ur{ER0Q\p@@5;_PE@R2FvD&b>+6Mkd\u|-wDp益^RHM#UI^) ]*:xgC=4{uM`n % rmS3|bV,Y'-쁑_{X|Aa[8%HI@XG j6)!%*!|8Ӊ:5mo, V'Fl{M-jT4wYgSo鷇8B:Bcj9/:tk.  _12olJY^hd@QhXa%߳:‘$=}XbVjX[@HC鳥^DV-N&"vFtli$x%GB|/xgsG0ٮ^v鲾Yͳܲxt:RCIw5"0w d:z]^[+Ƨk*1$>d..6Y^^"u9#>y׏gм=A"b&PPwŴ N,;R)l91 ܒ3KT+jTic1~'{afp̯nax N.Z풳vR")ze/~,R8@LOrܺKىhpial+_"ds㦷z7#(+^\g'2P@PQ.|#4h.ix|T" S#u!@L- ˄64(d wv'/ Gs3)x_sŦ!_6:5olU" BX;V#9'GO.٘.Y =1&vCANlu%mkuwz0_3D%bk*_*( xLw}@W.۽e*"!K">\{Rqf ; B@5nEaTjT\t;]=)+\EWF=UqS{v"x9֜A~`qYT{[}CgmVP)U)S˴N J 6ٟ #Q >}sstX \թi.^]c: 2 fRb. K&10wJzC 4ǬafUNy:p%D_NM wATy`3NyMDQ3**3U<JͶ f27f<oqpP3\"K?E>Qbi=;]tDn6vs\c:y޼kd\f^URce}:A|^/bg8y!ԾnyaNEVl )oȳ0VpV?m.Voa;1QN̉ww!ĶDk%ʰX"uXGwhZLV>`ŸS1"#wqDk^:S m+6+ hVZۗ}"t,[kXlzJi!`uحt S|>yV!qX*)!{ƭk-XvTnp\G{noxˡý~ FSE!=-@7sxl&[dd:K1ֈS=3m`"S5;"B'Q6NQ7K{*kfHnH f0X1.ynZu\ަӐ*=dxq2ݚ$%m-?) hGa*B\{Ęωka,KOז:K8zv6a@,ZWYYq5ݲ2qa}c1J$+0hpB#\-LjMvTI&.Ea P{L1B_H2tItEuUyD浭yJ߇v횾ae,PoMmR%/l݁lz>AzF-v#Nގsn7v:&ĞB̛9en $@(, ?Zb tyn,2+YjQ׋0"ϯ|O[ "LDc4Athr҇,}? ʻ~WL^ò ^,M}9ܫJTz͆owF{}̯qNmq`} ',@e3?j&RNL󵳉Q_=X *ϷbO4nV]XOOa9Q6TuR"/s-\8?AFoM>Wao` Mi[&ѣKG#e\iX$K}ʽVf?Q*Vkۛ\[Ġy 'E3B+{ro8фH~@㚄eqqsI[,wQ=~ŤS3NTLsך5TKwm} AIV4}d72t7[[p Y}5β1ͬǣ2]ơ] 6{cz2]nt(FǢd 'm3z6_QFb*}Z)q*:MX7 LL Ҡ_Mm8{ZGsͧfX'9gK0hQh^$of8JSa $`Þ Í*ä܎|{soܜ0cO(52eOj-vg/l~y}ws.7:'[ߗ͏6Y>/}HLr -B=:SA}/?^p+靼xYpmWCP5E^`2 ISL=Tj&&*r9*z`I3`bNBn#۴!uEDF~*r8>:WуʮPڔ]qk bmpێ,$:!JMQf0Ov#as%]~ dyZߑ[(Zpyd%2* SQ#}mQ-==dhDJe[BIB7>"9AF~nF# yH3eU #Ô/h;iڛai+W i@*&&W'.X*qczT&}q=qG.( sZp.sLZ9ujck_*t?(2qKWO4>gL藃~amp؃o.1#ƨpUår% /F[_q\Sxq4cDҧ|3DX&Q`G7Hܨꦭx?9/ gZbP%M&+qq0e.՝,dJO!a J;^>` S7Is9Ve˸caf'm$ډa{_}= '(u;2b<(>l_^z>_2ۑ&zcF/95"]i"I"hv}/-`6PnWIU0Q]j 42mRߑcg:` ^\ s\wǾ@G[ ו;D=i^ <=IE/HSζPyyZb!*d\?C -M;DZu`m9џu,C"͍vض2ELmF%t݄W $K"gjP ޖ*3qдKfڣ^ [Ng;U\cDH+`gNjbiONN9j:K5[CGծaЎ -oӧ B~dx{r6+ G"8#^!COw9"U<.i}дϬ$ljPy>BN1__[[xZEUZbUHz\ȗ׮CXaE<;DWGqԳd "  8U4]Ud,I7VQk/LT1&Sx #?\+'jPƾze HvNXn3Kju6NlJΰ|àGMuY3K[eDjcw6ay^滐 C0=0BlA\]9X3iܬjNK!x} Lu*gNrQmc ]quƈ%{b?SCM%[t|䭯7mrwt`5#k3n"KІvvpY@)$ 2O4@: !Qlj$N"GeX@êy@OJ8y=mM?1y>$/H֗q51ϐ߇df0En>\?U%9R{C),|Pi%䩇&N>;#RQ-qOxQT}YA~jI:(! `a+Ej_?u#u6;*ˍbmNKK!xLȀx&/ck֢|{j} Gyק3%ܢ[yf_@ƨ[nrrLE؃"_nPIeGӕnha [kSեNRwMT'}RՆ~HЇzZWߘ\v+j8L1e vY2xY֮mU'M=IdnI?ԫČ[gL0#q+/M;9S?#w&0d[p=Vc4Py1h|l]OUt5 [C\loP!Y0C/^Iu=5ϝ{;9jjLĕDa6LFy|@!')/@kM~Ho>9a]?;>x HqhvkԢ#,/ꍤK-k\wFIsAme:Np!Pꓜ>R2͏;#ی ĉp{<HS,yiPc'Ľ`0/%v`*jROf94ʲJZq`UAG`M=u14~IWr:|ˇp:Ge_m{pga;_NS:12^eֳȗ7#Gˈqov`. ~RN0Oyv-%!i"=SV/Cp;,r;w=b6v gDZiOokpM7fSމ_@-7lb?>,GeodWo:]nh=-7D' ѴG9:Ӿ.co ~\!Sϥa9Ƥ Z`Ay"u%5\Ő-i; BfDe ȴy$bz<]7k޼"Aa){MwqYϼ%BE5u^xDtmh rFCx:}f[3nU&XBjmMri jTpUfrK{n /w F|/tsEb2Gő(Y:([ZāOv ?54Hbj 2ܕ3Ǧ04r<ݷPRsW %&&J~zCB*! mOd=4?8\؏҃KE\s  tkj!mhA0 pu;G!@HN_q72 cԭCnaL[!z4|J!!#Wr^,Ef9 (7Q.f4ES}.V! 0(\ FC5~`HP03E2\Rc( qn<L [6oYױxD8u9o6n^ͲR9Qa;e5 M*9G nz&*J_՟g #g#b BER{xeshX=w { F `.f*"(š{/ўn} q?ԝb77twa6q|z"~AӠˇ/u77tTp3ޝx|zq`n;=ʖs+"/.U7XBw;DZX-c mdlR{~cHw4p άXr)M:$QSI^P˖Rgd"~?&e&n?@ /ma*q\y6/dMrt0¯m<81M+SI)d_0"WqjE2~J<#`\nMٟqIb hGaj_TEVXI'+wkoj}ȡhAmJs#~\ݠgٛM˔t/EԦJ-Ly?-tFZRl>_ U%W35}~$/"@hƀUx7ٞy7Fk֮8ku!MԲ٘R\-SQ&]1u~꜁ѩݒ㡢BDN'wSHI!lm"ՐTbWlIz\;0/dY {mn *Ol3q=l-+ˤъYHjw21[1SK/JD:;cH~kUfR#&:֧7FwGDEEҷ V:M)|YUc˂))D?-ZK)l]g'Z笟25QDa5W(nrϽ"m)U >1y _ 1Xh0|™m}&㮕Zp-mױiꅑթH0Y%H_[RZ>FZD|ЗRaUlwk( KOލB->6_oI6*] &_\%<,Bѽ~Xȇ]r̶$p-~S gy mh]tIrLm.;J..Pu#p%v/Pr%* qEd92C|ZO8.c3bH.o';mԧWNVB3uC۟] U.JC ewzs#{m&&ȏ& mjVA2j"I3{͞ib 26*=0~u ^0- t͹{Kfv2FhifZ^άyO99xe:5"C\oo-h߄Ԑ1f@3wOg3uذD)wv*nd =k& ;_=eMktRs/ %ː}03JS1DAɫFOi(y6(ࢳؠn3i| 36j#2sq.<ʭٲ@F85Z]e-P[ p\JAe/oK<:]29_A7ɷդm7MYrGF Qs5"kNg[˯ۮϸ{ȃi3~ʹt迧Gyc@ f@1Yۢ IM Fcc'/"aH΁~喪(sml1_<93@ۃ}âڅ_uOcbfn .$`Y˪@!\0vX .Shd$ݘyC\,iVM5LrM\N}7B>r1=$ujHV CF/ "72ә>JϯRȳo@xs#$p95"*HH)-, H{;N鱴C|$ǖ@>0Ԍw}Ʉ+kǗ<1a hP|ٷ&N7C <vJ, F%8ޝEְY!i63w>U[˿IUTq$Ie, ?<\}#]4E=g"8'_e@scwrDc['ɉ}$SJ 2Sh.a\R0O7Α/H,dEۅ{ڞ/ߜ.T#l*AL4avp4\pvOS )G<\C0Y&YLJt$lpBB̨R,U J#j<.7fޜpUB&_JzJ#]NC2;,^2m`7%Ðhek Nrj:H/ۅCՉ\ zQN6^F_B)DC 8ؚd"NjʛtUNx|ÈoG&2"֟TOWj{UWji+!}x`'b!SPJ\>tIֈؔX!DxA{Waϰ4_4O4z#1L>[*Dxƽˣ3; K'֎Î*WKi-j6\ G<ZDeQVfKZ ǝ8첀;p BwW{PȐ>k7դJhiN+5akb53=+5fe:]({ *z2!^GG xM nw;7a2KoѩBx5{Y X45`P-Xnfc%-a NJp$pS[ț!diofptvX<$j%![_Wji^)guּ֣UJE̬ _짮cAbFfa˲珧t4i7tfq#-(ߙнh_OS3=ڣf Ef_d3B{ G?$S BpϽ,B06`ӗ&6~Vj[=c[?^z\3Ju?y ktv 2gIO5wa.ƟnU&nY/Iǯ(YZo]RFziX&imKb!Mz*avEv­_ncϤ*iu(Er3zJTD=LIjQQ_k%6&_g('SF$rW _H7"[EA/bp4iĒ1n_z@&^ aih0\i„ ԣ`Aqm2U/G)Wyc2?6:j!Q?M)R ǻ>_]aTv @@cNZ皅pAh $"rfP_[)َ(&ˮdƗ!ĀAxnT1ѹK<&W_XmKAU=V845["G)FS|RIxVTmeB{7Tr1vmfN NSӵ+K;GBgVJ3RG,2ۇ&6 1rT䉑!$/\gq˱;xyÑ2KMhSK1.26UDC 9&Ҥxl sϨz#ov6KmNhLrݲ~ @!:Q)\vܾLc ݛjU!;~#Dg=[-㢢iZlVix ]=NMȒDח CP6F)6(,]ke3"~ 6X9|;S&QmwOdpyet *M^Ѵ?5UKBԠLرp [̮Yd6mɨeLrp::B-,"]9 G`Ȟ#݈ΜÌS"Ex`cW%\ opH&p]5H@9/kѧ:#aWޝg0䡤r/gGѧ/Fn fG؎T;]{y:܋g hkx+qO]O!,,ӄFb^K{%wYP-??Ol+ 9^čf0߅@Ϣyo8WY'Jo橢?pdC;{f1S~-KJir"25T}t= "v!) 1bMΏpΧrQ"tZefrakl=v|1$TPVRKB<ϲwc)BKcn?G+޾\1 9h cmQ[CNig@0Gsu 3 *VSyF/~AʿFRmۜ/~քPtfV к@YI̓xߨWchlLȿڊN̶,_}pmdžcB I'sJŽ5NGt `fV^ɤ )N ,q*Uf8 pC;3Z8BFVՉ LW&—3]A718o f /n~.+|kƙ: OQH?KI꬧Fa>}ѐs2 Xm߷B\7oDUbUpq@%֏3"BMЋO3VX[MH/.19v1`fgRrVwmX AĤ3~B:Dh+sؒkxdR$}o;8 D7SyBQ.e1aiHirN! OΓ q)8߹QgeE yx ns}if %y¨\,Rh2~‹dPi0¿ЁGjgc#9bXuܓo3J=iڱ5h y~SU>ן~0`΅U7v)li AA<'/ @i ($2+|m)k 7W2o ث` BTFLh iH*~aKOg3B1+}FLD0ⴈ ib+_xS:JMB_\J~MyI)l{W[\f?RB >73?,~H3r ,pxnsq o " kXԭ#gb Mki0g܃ưL#"LjU5{"Dm kAVJI,ZZ)XPm9~NLLFGF g2J3~+r+Qؿ :N;Mn Q߷üOIgDW}{{&|vȽD(ӛ ^.h0SwbL=It+U@^b'qE|7~x穘DAdr hhzi]{wQ{R"kGGQ~"e9Bkg g_' n\zK?X~PP;G0%k ܎cl%MhWO/p?6{¿,S|rȴ!U\?% p=4ts^F]4M  udoo81Kݩ6!MNXZuDH~ҕycue/9E.E k/{ *r?a8\ǯs"x?`<H,n&Hq|$ȳPFy`I}h$ѷ-+`n]ak$[.,q\/a~}Km(TJN8 8͠K8(vkԦCxzQ0XA]kg KHw<&%YhDPj7 n߯d2 6;ȇ~uV὞J_=z$^)=1W Cu=ŊKMqfW1"̷Vy&+$J'a#a KKKb0fgZH7p ]Y ǰuLxQQc{1ToH`b?[1@v f;q9ܟxI~}i=Cu'%A*$bn}<|DOl桿 HA فexCBl ,'؂eǞ5 6 ?!OE3;חiP! #{˥yEZZl/+5 (}UE*g;S>Ǹ[37v} n5 _14-DjhGqMu[x:&cxtE&d 4+67j-/Q$:Ob1n.K=Nn+L>O;dtcQˀy`N"ZL X PԀywzʒ3+~hwYP +V2v_:](2҅e1IQu>(42z/[%QR1U#vLh{ko/Dcᖔ\<-S=2g>/󘤰Fɧ t_yL0It}/X7n.L) Z)Q ؄[Uyseҗ~5nhwPZHG`9 Bz.z{$z$̊Pbn} oj+^k{l; ɃǿyZ]䱰҃S ͤ?nl"^LWW Atq%7t4:m6[#e{btk Ox] A| ʫ:f}"GIBX TR'h8kJJ@[߿N5 Ar]nYfA7h—jA;'pP = B"mZ(d0̜k$Dͅ8uIi=@/)jjЮlnΖ6aSiE;Ova2[xry`2BOsދ|)n9!q`m3 Nf3) 9=w#^Jk~).4v?}F%K\۳W3\ÛXKC sdNnFVmwܴK>R9ogUmhRD[ } wXr B>#y7X+NOE߈j{TPhF&<)1gGՕ]|e?8U8o. T"[cAeZF=As(ԝqE̔t4x3n--?N[qOi)mX,嗮'm&aAM"Sqj>=2v3>/F<&Q,}gD̮/ L9"|WYwyJ&Zߕ,軮d:4=Jq@C!$Dl#Gqa M~m (7_.DG"<0T_s"8 .6Xrk90{yh`7k"N?2bh-0q ZuWTQM :2ٻf$v3[ʠ,?l+pršڦζ&n;1uu2R?zm"9nB{ih/JU\nxHll#Hd8}ɲE"Ohbw2 *,;>э/rU'>:l%eer)6ap'8G].0XqdPw*{:U%MMNOb?Xg[۔k0 3B v %d gMݯƈP(DDzAD^p[osD. {ëx83yU.MP;mszJ{1VxO//57c1"ʺ]tQ($ +خ`ppJtx #L␸?9iO^4iCiuvn@Dvd>(M SdRwN/w`)㢼?ծxA!Ӧ?X‰šQo<_G\v)}Ɏ f\tD9V.MkL DVʋVP-riȄ_\C/9[RސD@e n4z e$NIcO hMjx0m| , $0;J1-nJ hMz!ыLiFmNJ.2&ЙG C`Q _B #Mϡe$t|mFU4Weg>./0kˁJƢ֮%3{'":+7.`̧ݸkI¯Yĕ ,^/CxEJ;Sj7sѬOV P8~v%{P-/!t˿+o4^9[b$P72̄?<(`qo54;tܣziԄb~ݙb^1K~l1?&>2*FMu{W"{o*ΙaǛdvJ! ; , ~ij '[νD"vM줊ϓX;Gez]f1Tj\,&q[5%X"j7=$n1/w[ Q_}0wR#L :豂*ۅ)9^D" &1}M@{(1[U(ϴ^W6 EXbmE"t DݸJ-X0퀧V<"X`3bN4'#^qkYA^aeXs #(Y[R XV*XX3.j+)GjGS`‚жET{"IJ˛6@?SY,~:8@A&A>gX %kDJ S4.&7Ď " Cjnbu39:խ)k|:t2Zn^$vBKTL:~(kG*vNP 0?-/NO>VP^͕x)lK0ꍆ4 6g;B(sHPfCo~#ޕarLINDeJM!_u `7J5!,B-PSָAMkP@a>\6Jx >z푙X='j5MnT^C>;rv* 'x̓;0iȵM9p [օ&t~#ybki}eq:&񉅰 \ݒ N&zt7f :}GŒfM'5;W F՟D"1@+\`2|b4 ?dTۿ?6khzP:#WE#_ު㱎i:vX5^y񻇘Yrk%#|`-mJuxwEYڑ#1|b̩m.ڕh);6z=@jE-{}Aڟ>C@_{>O]V{mH5d²|+ ;c~ ҌWmObw0o?:V9.;a&hTu: kq@V;Y4L N4쿩2JsyoĞm"Nb,NY|qw@˙oï.lib{y/<6̜ z/5czn ̖hyTA$`C%):6ֹ_ڀմLpQD@U3Yp{y Ob"gW:؋v#tJ IB8!J[ P( B0^4bM} Vj|lc"PMTE?m;ɬl~r/L( ˾Hq9&}sDlj׽}~q4+7BWZt'5e Vjb38[-\y5O*ޞI(n iՒݍ&"J2ߘXyɼmS{χfbu=VeČLyi.Z _s0zrdPiJ=˓T:UI\nƼƆij4-+p!vR$];i]1a+,,zj;Õu? ɥiCUL׆ҾDԓ$Ft%\`@ĩP&XJmy(ҝ|GnJ'e\G,ZQMF2SA47 xxu+ǚᑷh +<鯩׍ }`Ћ0+P!pJ\E_U1"(iwL)%s`htfS[ϡ)MnJq hgGs{ Jkԋd߶&U@U`Rah꾴q}k5V4F,J5BY?G*eL;ֶ@hNTA$?,S.ʵv,en-rוH*5XCw)^k?"Pai vI`A7}15?b *K)L[pwgi7c)2δa)[e5n 5#A"GJ%q}(~MKuWhl_ ?NmGt(11#0aDl Z&VrRmdY3a("\30"𬹡!X"0m.o)cF4m3MPYu_oFrmr&fcwu =<쥁䪝_?޲h :w*f/|ug .n@ G3 ~YMJyv왐tUdSv?2H9(+Y$Cž.P|ՂO3QgO\>Yr|`}|{1j; ydJ,!яhz@F"ZI"w(V6(.)Z;nikYvET0r#c2^N BA.]*PŬJ`[S8$u5T-v G\ M/^&S- Fg樣}ƛ&a %v!i|PEzhϔ~\a[7]61wŽ0 K^ 葸&sH[_~dDsqsǓkIŜ7cBDV9VaV!Ciy3F[E:.4TO=1W&V7gl).,IDQH(CЅΞgy>yM.|&I<2i'N.ANq@}^ZIC.~񿍘vB 6΀}P}PFFQhNP(LLM`̈́xp{1+{RP}$}cV6OuثC,rԨOyTcxrK1Su*Oh6˽^eXF?puc!]v{S$6uYw~\;&+]Y*SȧRvg!tB mƗ5Ur dPC@I?e mwPRdS]y_ { AΠ̖axd_2<1HȚ>iU̹xL;:Է4P,Gs1~CH2%̧At轪|R!g"O,0ݵu-s^ `[e) t񾁲T#m@މ[fcnv}Z7HIĔp-TȂ4Mvˤp'3P6y;࿕ƔXeG5eO̪wiMv(@$n5'13Xzg䉬 #zbᠫ]]U*S*&*6-*D}ۗq\˲!w !wY@@k7~ OS|IfOD")_SZ8挓5ao 0 a=Bw$zȡl"FǾ7(>}%mWDZ 1қC)&;;_ 2 dg~͞#@b!m96|}j cxŐ_y VRG=["}ݕd:73WbGY\J^רNA'y:Fz/||: ?ʣ:Xk~%h0i:ؑ(=+8fnU79[O"k S &7Ys%{FV+]`L'nTXy :&daadx OlJl>0$BԤS fJa9$/5:? _hW!`*+^t _^8MpD_!-AhC̯@ u{"mQZ d^oGo Ԕo$,N++ԞI.-]_Xxzؑs>wIxA #" ,{Uꅏj0GD|B_KOf8zYx!Q&IFN>YRH_$N a70:TeQl'bRh ,V' OCFhŞ)o)>I;!֐o9atq-!6 uCUuEZ6GmȉiD.I>}/,؞Ӝ}#aa6=,b!=ю7".ie}_$eeyaxS+k- ܭk +[O` %ACS{u%1^C&KX'P@'$0ג$'2˰8:9 j;e"'Ae ie|swA#{VjyJd5Z-ð$HOwcX \? "s:4>%ĭ-+ mIr\g9Ͱh &SK`B4lm؀ϰs}1ϰ?2ꘙߍ2|rQhM3%`x q5S<g<~ ^!fUGʠ(5:oȩElE{% S1uDb(m*~75HSmXp.#3E6tX^U2h?'YW{lM0ͷa)\v+~O?g)@PQ; 8njny 7E  8KKssjFNwx8SE9a>o 5PgXXБ*Q,NtA[_*-KbN ]Q:m9b0Ý4_Bu/D7Cq\UfoE)ϧՒQΫpқ%xidg$>z[w%Gե S-v)lpSiA iL

SsNJmÓ9T)-sUEDDU8|u*zMz!E/ݽX1X ĸ >1cxpYYQ")q6 6\4 J{:z!3]zqz96,|Lsf[SHtL`Hf?4¥qDt6.OI\ LPp.J?Ycge>yp z-Uc|sULq}ǪB _KЧ֨o7ՠR. onIAY*~v|#'uHT)xMpsZ#R|uCCnPz?mK&ai15 jQBn5.14Ơ'l*4y _;0P+iSs2V z5N9N(Kv%neJ{ f3Ot/9}G`gx^۵TӂnU2 |P8qIj7X3 y,؞hШMs۪U1[]?+eWn%g>pEgg S7G̈́ؕQ5i?V3bxv]LG8[͝U(IRoz#G5A KXA1]Lg0*5Cїڦ5o)]s;H-@su`S/ [6a3\4W)lH5{*IuaE+eJUh#â=>% 'kh oÑu 3 TnUa#r|Ɉ X݌bc!+%2PRȤTg1+޺u5.9iW7@t1x8Z\wQ`lL.uܓ x!=j> oyS+ך9 -ZE#]ҌF;x` |(qLp u+Zt hk1!q{(ܧ , Ɯ2BU) s~AOIw5 eױ/(~N',zھB`"yfaI60)@   =/G12~0GNޫQ/uVïE43xך:ᇌφĐnFpaUCY7\n63u*c`1. [3~ְ| jSϙhrZx͍*;p͐)NZ:|(ݝ"ƒy1;*_Ert?7CvcJ6TMA}K䘚Ǩ;٤YOG{'( 1}7) Qr%'x5|y66/UG<6E&?r`1ZkZf+/vo@SQH۟RʡQrdў/{Ju/L#|Re]GQ}JTT *$%*LQw|U!(]}"m_6:LpiH^ʸ]TtD6̇`u] mc!VȢfyؘ_ԘCW4UZg>5|DwUc%#hr[S"2*ovgCoMʥh+i G8%^^Q0xc!``y8z\ȹ(I̟oqնtp4nYS,k1&;u% q:CEaVª.r|]Ems-M-kB:=c"H/nbn?*w|6Pң_/8vAn|0yՙ}Cz +Bq,? _{n8dG쾻^brj7^Rv))@ϥm3)S),EQT3w F ^ r׷L7ڝ.3xZzσंضu28 Ng\pOYi ӝ %}̓HoK.ƢV rgzl}k\N}V/2׊ %YKr>/\[|q;+~ -[>uܥN+ogZG'&+[1 ]ga_&lk U L.8%֞:3.̬5zد&JLaUW?,K'AW&9KbcsnY8kH鱳MPJ] X/6w #1{y}Fi>A[="׵gBdSh$B'۽3`Z Εk&ۂLHj?Y +S\\mH.ڣb|n y2yaEAƏ1L*a*jC[c{ޕr/ Ѡ"(mwAX?}@/@w * 17/\@B2bAW(ۇ['>qd_:#/TIXu:m1D"ZdE-H/Ҭ7{o:4vawqr UtOd+ ت|foc5C\6ր  鲧2X6 z6=jYjr$Ҳ.﮶ß9TǥݼT"Yz0|$R3RΨ#~3~0't=%DDމeԇ.`!m,27XsF.KFmۤ[sx^saO+_1pS2@4 }'Ғ`n>Wu6Bkjv1 8?̊&Og˷u[3 lle'\٬1r"AqzS 7CLD |޸lnIܯdo2$M+,?E^xw8a TucDrQ0D=yu~$!IڌUBqqZWL"tfBEd;ԥb7JxNX2u2xz7?hʺzlJ?:xC?sMc}:!*kMlE' MHÇM%iws'ahy5p9`@S>hL +W /qKw#GD̔|LX>z$%%DPqca5eFcN8^"v?6rvr jMkT)tݠ;pn7{(vN(YeSӁDJR$ &L9yGa+p8K>IOL!EJIl n.G;Tqc!cрH gl:ƘGaw%W\_ls"6"⃢ 2H, ԓ _Gojɂf0 Piœ9v7(~f0 !gܛOl朱J=L$x(;=(|6 cٓxd/cץ<חWޞtJ hsaYpvS=U]ux΂rPl?82AGIG_vw0Aﲔ> .^Ê?}@*|7޻_{Ѱ9;Yy"ށy84wOMs u@ }Q*:B7^=iMiZ%*%IppBym(uuU Zzlã-$ V@ޡ2: AcV$bd4RXTn"ەG+`с 7I>I)?u'~ ޲+AP:{\Ó_o%kw(ܞbMT>49G|H1(\J@i;fN=i45j't;4( ;%̄ƒ@xQ.zS rclW[oܐtXM08Th:03rW[:2@ɾEk+xtHK a +*:$ ,7GR"-)j|3.;eY)#:!8 %@^/Th%KpҶѓ!$-@T׻qJd(F%0@bvS ^ǁ_! y? bWpK%}}aR'9ՓY.!PPwd0s\i=ݡqC<+(α&~MFӆYyŮ oq xm$+rmr2vmcQ[EA>,l97oX:fK-T,Rb߈S*QW HA{::G.ENMj_8SDZtPI;HzMdᱷ5~E հ)Ewؿ'+_tILB@ > #:L\oQ3%jK[_7 ju( (&hC&FbnύܴcK$}64qz"u_ ȥܢ.. 'Nu4WO^kۘ>QUdr:5@t) }`fy" ezH.zHi}";g% >[zW82 C1-1N#\T)-_+Hh6:x) .,[\%՛_z}srkZ@bV2c%V?ZbnA’$3~W>"ߞJ0?_"4ɷ@)غWok%tw0jkC,Tf?O hSH^Jgz9^@E>^^b2as|}aA oڨ.*.0s:5[Jܢꖷibp-%,NBW0 yV!<ޚA/}CD.; [FÁOP{7ѷ ]߹;`|i,^;%ژms@o!P÷ ow0@cLrEWpvijʡ[ŹpҐ֌#h{F*xiOhڲj~}߱k*oDLm-Vh05UBGUZj 1ý x;( +]~ۖ[%- k7H'Vn>a~tGƽdQ?P/f*r:d&w%{_Vta hg~ϓE@}" BnOGJ$qx+p(J lRlV/OF5iM){k9s͘ojH& ,Τ9?xJ*'1# S&gY_$&i-@J7;%s^'[+#Z|_MSOJ}Ϛkfb=kXes\Sa%s:9iA]M>cm)qO,l7\_m\)Ŏ7h'&~ZtCtV X[\.zL/V`UAxѨɤv.r'.RLyۡ6 [k^<ǻkj^$ә"ЛB\A78eaU(WR`DaYNnR`Xf~Ja\;] )7XYQ Z.OOPy2zcYhl]2,܅y.2Wk?=T.8w7ժ/m_]fc#}Yjsb =h @듑z_Ԫ5+eyz>Y.Cc]vw /ƏF'FCܭIdgJ*=O$z/#WM*@A;c %(;8Q.'U6`[d 촣# 0859'"'ܓ,4S')<:IiΡ>N$l*=}MhX/Yѓ&o_OG6CIŕ۳THs%8ǗG) XNKw{9_x r\$ wFs Ȯ.TËBaXPE*VT<ʻ̓BPl2O%04 R&ik*R&E[nj篧ݽnD! YI)&L ڪyF . VUQڇ?*r?3hP]&/d %,ơ 75N%95+{[|$Pn!ZPܜ"U](Gh=m8H~{CW-'>O }Xʪ4ˆ4!&b0ct6d'R rvm) ]*dִvE* m1y@Gb$Mrr{9'Fj ZwLˮsUi9Q@<,՞0,)M= <6%9쓎ș5g1IB0dWj{e{gM5{R%!0m$ G|]tP*V3<L(5z߰إ"hҬ߰W.~W]<)Qٙ6cMްMWbYP~dO}p]׾LKeKY[mg 2 yaq1QAfr&DnpdVgջ =:t3ǯXiǵ@ړ (GX">,ݔaGfSt幐;BB˓&.26! Vs$CaSΆ9Q82đ%~VtrMo%1YCsqIqmRJ>ԙ\}C wPU*?|E`UdZ; DX0/aJX͌z$ԏzJ4O_b+^>l)pXDYZda0{ J9~Lg}uJG7^-R.u¤~ԭ)zI]#cYI<٬tё%pD^(|Jy>^/!U^ |5asGXLLNMRjP^ْBgd'&jwZ-ly z緊qe@WI:ʫBU\R.P `q>2HwqX*N^}``+aYAFdh=&GO!- %f[@o\нz7:TQBW`]E҅ 1y(a4lM(B jE>0ŢZ uG;$ڇt9aB%<vtS]t0p*]$Yo~X`mqSfoc_J#_%6SјhuHPSlc9dKK~{5z@Xf%N9Bܯ2_f/iQeTH-"3YV\=9sOmѤ$-qd..D&n?]q^"`E(Y[C6ݝ0b 7dMwҺ8D dr1 hEX=_QTa*7,CӰO:=Eߑg^p]sde(e0Pjϲ@G٦fm`5 hx. /[5rڌ:^ t6wM!3o"@ M+_ vN}SN7]| ^ >jaV# j 2/sw:3ܜ[aMܙD`e9h,rzA-Ӓ~KL9 jܻRDm t\C_lY^o hED.nV^O 3`=S9~LM#kANSɳeԹxfaE0+'Hn@(h3 to"'Ǭ z\80aKǘ/|m1wh4p %ӫa]p@q)=B)B8A3&]]ERK ^P]Q"t?+Z @s)*2υwn13|:=h@O6Uـ6"& >| :Ŋ\рo_l:nB׍x3ʄ'<˻ԼkC\>xt`.pPG BtƋ6Gu>Psg޹p,j0o(g澬J)K9fi;s;A $$ꇘ?ۆ'Hnt4UEQGwE/{B-V5~dKّ!c2QpTݢm:G9T$~G9E5m8T({H&9B1Ks5>b&M։=:[5W]*o9&=h1[Р jm ()%;PSA'(Mk&!ګ7إ!-IeiM/H((o19ڬ"xDhtLY7$G~jRfPC'V ,As&z^TqX@/!;Er*|2$ܓƖHP ^5k ?[#۲u;%>fH"ANl!+Ny>W?^UC6[0,=Z 4iVzs:v AXgu{KY4@K5HwΕ2Dtr}۰4B1κe7@X X @?W܁_Ĕ, \EBFhtg[$-SH$~eJLb1Z8' yt)mC g .>?8RVKPOVỡMleSgkEFOaW5=uL,3 IkuӫMɚyZ|cwVg@FΗ^ # ϰ?ݭa4{z0,f,&t0/DOFª!+3j۬@!"1:8 8hĕH[KAwfQp0꤂2}):Mݔή۪22sWIԧ99{-V^bՐ܎<#$%U;:CCY64`oɓYr5yM:r\֠jvMK8}mwdؙ&GHn`1/6!PDŽv'IN>)?H Qofzσ-@yoHҷ8q?;!9pg;LBAda+hiEF=_Flk"NwȤQ!!Ygsw˚ ˾ʎt zByg p{{X\~DžDy@r te:aNCOVLȖ]z& z/fnAY] ۲}M Šz)@iMW!26]ڎ k L(^V N#Dۑ84uWU[[ RJ9,w@zIy8tUKJ63S0Cm+Tgs1.+ \&}6VyV\ nNy1#.{byQBظWj@N=νK kr,ysJUIA֢!XKԆ0o75"FDǴ<|Q 'm dʏY2;%V嬢pnV߁n]r--!v @Ї02Vcj_4ΈHְޓ)g]^gKd"v Y}*Ո!wo^,8ڗ y#-7ȢP}$S7Z_SxNŃKc Λ^S;B?$XT1 ڿ5N Yۙ<5TN[ n KↁY+&V&+[ /Qy+$5-# oAXӗ]|Z3vkQO3ŹkbۺGmѮ 8/Lj;Ɋk7z#B/@_r[fx|{zğ#FLqM$ p%tDkQƧ;R{"c(Ux &}*RZhpV 9q6h}/gc9fy(xY-.^G_c Y;@z>,g4c`t裑2=);B6 @_qr gTK%`w+(w9mpClH#, A?nr&lO -|@׆дSt NjrjĊ7S4WGoKZU ~HGv㙦BP BljJ/|uBaXl&Ry0f΋Dӡ .@=Pv>PVx>Uw,Xu( nkaLY7mi*pe4aT"Pu;:t7%R0j3֡~8II:}_HW_+ʧ\R'rQlиi$}az9a i/Tz^`Xˎ SH،3M:X -}=dQy{K; X F|妉/xK|o;h2Q[ ">־ub@T؊rCx˨eiHwY=bHI%nW>v~IBP2ɴBKy1Zǿo%G|~tsf{1vE셖̒ \N.h(mMgة|f&Kpl$8ȏwhBVUn݌ qZ @罆H#/y03$.ݻc(KZoembC&," }f;C9s-> 9*„9r yQU]ЩMv6:+uu>¸)7:jU$3'ӆIkF/S_jW~xUϫKJ $=|)RtWS| u- 52{ Cei}Lrʭž_T:-g7dk4[k }wgc?^9XI")伩xF/ ]bfk{ZD"L*hjm(ʆAPو`7xv(9oà Q3ĠW* Ӳ\%yͱ53ttl[ xZ+Z*0s[#4چG Ąמ@q- 8E:joB)F,ZcU"t⾭:Rكe=΍Q(J2VUVM i$Z֪u 8#^ؔ*fY':yRTt>xw;wj8=)MXaNR%|) rKb (lؓRG~\ʠ LeG<34\|ǻOu6kK@WE5[Hg01Qų* B ^iȳy7Y?+U1+'G暥>a YM(=A%; ֖HKp_3#UB2!8U{SJVGࣔwK~du3f/)sO84jy D1Gc$-۷$WJ)$H=ؼwZg[.6:>UߋbM.3x .dE- Ŏ5Pچ{1/3j"D͏ XhQwH }c{프pl&qμF3K)u: 0\EN>ΒA yKS!3 xJKOC-edĶC0zal01_܄]B#(v^(ЏwSr!^XU y.*5v/P[c~]ǯ_*u LB[\W;q,I, Oq)xv!7 뒞))ìwiTmF١]>u뚥xgy=Ju}Lm\L+bKY^va͋g~2r!"h$a!J#Uc kjQ"Ix(Ӯ냃H*0yMtJza*ӃV&f)y2$UCeZ{Y?1TZO0wd:.׭U#5ᇤ8[n@Z#% UW7Gbo?ƙ.}49 x6;y!I*ZeqHDPR=Ϟn6P6ێ9Þj#K2 .* ޻4/٣T]y9]q2f_I:~t1B;5N;J mDڦ9 `nvd.ΎVu}">-!"~iTE㢨N% ayedde8;" @aȼ788 fǸ :(Ʈ^e|4SU1O⩫mĆ–\L?90 TTM I8ʉ%c]}^ AKyhlZ|'1P;pN3є{o<y-kۀEISwMW nwT)4l؊d5bfh-v vQ ڳh2+ҔGJzC'4+uu?!ZuTWQXk %n8T %ep%k.im_)ڊ<*ȀX7C/II$u٦C`8vNjX >y9mSaY Z. ̗m&@$r$ɓ5چԛw i踻t'38r%1.4ھtOӑ[XuP51}\yx&΢JQzY.4Q ~={>Qԉ-!%l2 >l2Hp?q<66}B8U`]@țYn곶LYp~!= O7xX5˗];d3|FLB}8xv7>e6]`o[wU H2@Ro,#~/Cbdau+BY.䇿w/J-H啎?USܺ秇!s_AEpT@{ Q*G*jO%,dU |M9B@w4?f$bWl<s7ꋍHRn1G="㟾oH+37йzиS9ۅ'7߻(Gr Td^}5+X̉<ϓGم#>qQiBQlPM$Q֣Ii%BmتGXS*).aoYb qG?sYxbOAD-bquIoIL~u@noSz>Iqtr7vz(Pr w)z x & ,qܩ0) ,MO[ROv2 2SJRdˣ*0_&KU^ׯU_iQF[V^ * eJv8FҁZ|D2ǽDԌ .ކE"r==ӔqO_놝qw}V@g' 7HG2ǵ7r'wM@|ۦ2bf3|)FIřE` W\(wsjm?[?`JyQJY)*a`#)9I Jv t!l`r~9]7^XEUNU5Qԙ-DR̞هĵ!ɧ P݅):qK7Zl\ՙ i }Y/֓,n-c9c4Ͽ(=|e@ 0y7{ j4V8%L_0,ajJfSPnv3Qh?]6HOxXqoS9iSQY v1a@?qd&=Ys}%!t}b [ʩ2;UAXyCC9\HwAĎ{$\F F1v|.v1uȒ Ɓh(y{5Ӯ$agz[I| u%]U17-K2W(N&ǨXHĴMf eIid{MER/\ѾǕ*]>0ٍ$=Dd%$ڣǀf7Θ<TXU w-ޖ#b놁ݘ i-&8pCb}|٧\U9LG(4.6K]CHee"-gq[ӟQhZy})[iо]">?Z$5 K%<2 ݣʹ]/FbWpbtfְ€}t)ןUkfMyW.9E,pW2@ SW ol[41@C،(N A9_aJB LJ <* gW!&o3FXYUbfIIܘ%#A6]{&ZC#N 1AmSr_|5;ԑѣ+S]6ԏF"<vvd" T>/pOtRV`↟3) |+7Sx%;<% ք/zskt `oۋ6~>8$K>pqZCjY"h_zC+旮@d!фpdO"xM1%c&xНTCv$(ؐ]g\^Vs!5YD?6`L_ ZmC6i#z;tWCsscv,`~æ\ػU4n^h8i!xOV`BxY&pwAKBP)ێ~ Z+Cw{y1Sч̪+%)ۤJڼ%yPTN# f`'H? ]tTLt)WoO?ƕCPЗ 2:)J>t^ y<)Ux zlDtfQa\XЫ6;睫K/-Su|+Qqל.WOѯY&-#~K~)¥ 90ŒOLn+mXj/<' P_wiKp>yRc~92xr*w =W;~3<EBH`] k lJ=ҐfuLul^cI󪿉V;E ݉`}#:J] yGBɩ3hs4 (+ԏD&>(iYfb;RRP9J/VUq;br%^~Brl>0@곥+6pg` GI_&>M?ZlSya;Hr1/ ];숺s *uaOn5XV+JB4uRZ?'%`(e+z9 {@](IfKY+kGruR5V5&e׋ҿsS@&9LI\u၏.IC+?@GnnS6D%ʻsJΎ}9 Z<Lvٕt6Ƈ zMQۏAFɹLi[N3S3%ﰬ0 $`6Pe"Fo eޑs)5Z!7GcvoŚE{ !v1t IE4yս^IU>A$~WKuOMTqX]S~%KVk  6o,Ȍ4Ef>ZqETo؍y(]R!y=23s:`G{] 7O[!&8poɠ^b.-]ۘ1^ 8L{ӸyzCF~;Z19Β_IS~H=4\%t:b[x`آ8Zʌ-{&QQ̯e?%OfscN? C7QVtyxVqÔC Q,0R+r|vƄ[~L}EAe  t*g.h3sd^&jjXO#;ҩbE5cz(o2D̗04bFLLZ?{j)AoD>&{7d'oV2@0X.q>vRs1C3pL-"-}]kUA`‘F Rbc4 JЮې/BcLQSt >!k6KQ[2Z*X}+@fO3&ɸsjk:pd`$>4y3g⍚}nj˵ NxiU6ӔšQ(JǺ-,Q1)_ψtŽ G`.K:GJSe(HJdϧ&WdXCfֿUEڜ7C߯tQ5,Stso[X1y1c!`2c3-'VXEwEP\MUs hDfVʃ:5u {Q0]xH ٗ*g]2 k.d)5ߎMݻ;s~9U:krڪw4fGokd)|-f&؃{,J Y&.xx*FU-A˾JYoZ7]ػXj0VCUqt ^т .=}9߲N`?͚Sw"O,]<'R~k[)ްT(_^hh?&Źg]__5%W9ҨHϲ8@b̷4[_ l)"iˉmb#Mq1erY޷oRB6o|wc.UiqBKG:B/8ΫetԆ|C W"âpZrw,5((B~FoK@"QYv}^03Z]y}/Uvr>R8?p)A(lNUyvR,jFd.H(CK kR' "$ѝRr'/-Ѧn.bUIp9Z`.3lNsHipRیTll\Zs|:AlLyk~>4994ѤvG&Z%JfBg25{uDۍjܸĠ]x́I &eMKMbaH”;H9=3IXa`6X{*%݂:(*} vեo071?Ɏ3>gy.)JSF@[O?`DUeIJ_M2U%U( ~}Hir-c؁@Uz-N6iӊf҈W^?B,LMS(Rg6Hq#Lc.ϒ7u_YFLrw1 ". éU:VLFE3yIn #DrwHǻc5=U.v GF2H\LtBܺ-ܠb`8hdq;A!^{M;4&OBFTC*EjGx6Abۥ *S$CH޺1\?X1o3s+?gΉb>!\WƱwpQl.\<[`Z&oQ[GeB۴knr6_4p[ϲj(5)s+zwÙC5meu MUe+ř{u,MzN֛3#3X[A i^ mO&l@?ʄHtkh71l1 +?0nl4,!F%?]CՒ.u)!B Aod=_ 4*Rpv|a%M*I91¯g8KqZ.V.퓩(2upJJ'p,%U~A)8Q:zT4jOf1q4sf ':Ѵzm.]:uБi_7Rl>b+M”q@ @}b=7 {$j/yvdI)ن@B \#$+Ȏӫ5a fKP`- LZV (I* ڑeîxݿ*=;{i@:TYI&jO5*+["yӎ1& 8B[Vqy_lҐtĉ9JPQ6I~ fପkyz&PXܤ$HIcJr5R!!4MB:_ZVy)% hRY_o}AOt$ƌ`;{_ove4–Դ0A4s07j> "c6N3a0nkö$5gzn Ԁ%T岁Lzƾy1e*RYۉcf9o4"a5&2%L@ XL-W5ZJG ԑ)&m3LW |*&{)SH=hp6M?<ɳP.~Ҩ-)!SxLM~\+so}ӿAtC2>qwS1#j M/, xP}:[׽>3wê 0;9v&h:@jg~0h$"\jaI_QR2Q4WXFpGRtI1cG.v5(J}!BtnэTcXAMӽ*#'PE䦗R?g])uW|?y`dDA~nݻ  FdݶBpp ;C*z{zmqnj EC5nք?t~<Ɩ d4Y LJrt/$ǒs Ȱ`<:gc[0%YxngӀ~4׿Zs  XJ=#=Bp99SIf"(`U(*e-|%:q5&vr_- MDR{_G*žŨp~բ8ȹ{tSʶ"g ĺC;c{;|(I z'<[wKͺǰ8ӀS2 K:4$\:?2c\^S@/tv?Xfz^zHP}AͿ+~ @GȽ Դ2. >m'2ג!#!\Hت p Jo8J!TYۼ'Ի%n`+4qG3@2]BpsV-"}ױ- ּi74sIwzڟ݋yf5cg wzjGx_ ՙV]  ii<ҊȺ@bfl̵ޞ 4afO@}v.簘'- 4vU<ݠuEF~Մńd<{'KyV$J] 4SܕCOGB\ޯ͊}I W(yxIb2ͦдŒGGH[/8ɋpq_ c7xglYfe?+>uHvEmuNe 6:&GnV@H(i:80;%ISM!XbG:Vt%5]+,~-peZrUfP6v]*4 eY- *m=l5yΚ!%E&2H)F;$q7"0e7$-jgh lt\,ZIۄ4..󲹅!gHԼcmSVBevM7ߺg9ߛ@=o_g`iG x&xM[Hu!4#(.P0%CVk@I б>8׉:^#1H.邯F!bjUFOߥ[9{35Z-<&rtpoj&Xa}u7q} N9֨M-]iG=c_8Tg`s99c`E@R;Ah< RoUV#{?.шb} *1!On$^+7 A`FG)3!8-X>0Ir)yfDT0$jxꎶZ[p?yUCO{Q=n5>>/uՒvzo G7AX c YC|G?Abc`z["o\E:A ؾɨS{vu3""@E0 'f3?c&_ljysT9؇v%yd6B)(|hy8DDK NdTB&Y-yKh}@ XTɭSZ$_A)n'z~*l:ѱD›|T|*|Χf0^KUxR@Mwj,m׬*㌖_`G:N<S> O=Ibgw䣸ҎDr=eLA /y7pA.;*VVkAAHYQC0̌U\N#I"?"WV6KqnFG oSY(pe v 2h} l^`-qxX,S+5))9䂤Ka";OPiVI:'{gA'Cwy{ (, B?\'NR;dފk-m$Wmئi0Jc"H63qAA?0t`gB~lmJo}>V obwa ,GC">/90+{ j\-Ku5V?k{% 1ΣϔLnU4PA g,Lht_/9H̯JF1a>NX' >t-._E!j诤$&w`.ze{RPPanoCv9{\w[O؜F%,^%&nP'Hfx.Ҹ&76V_Ժ9aHڥL2|ƪW/A/J >#ءMy]_E huDB3fS S]`.'*=4u?#Np`KmdG1h/ctN- isV7.&I S{f;]GPƒPXl:Z+@ͮILEwΏ 7P1hB jނݪ7Sm% -^[ *KQ`ip| p< O/*P~g\qh"!c?}4bz5rC~B{qoKlI9O"żr&XQR)+CXP~vd>[;jzqn)~!z0dF  JNxcÜkH; ^8"gE. F&.+3Y[^N~\*zInfTo`IOK4&* Yrgdy 8N"8aLgA  S;aȼx2<9{T(e,ǮA}oXF9.z0a1,l;:\> lҋ ӚN\=PY~-F^΂H*^Hפ^."HȜ?:QRKJl]t崖ڎ=L!WM;LZI:U]x- DCGd_d_2^U@c]iuzCyb[9qoΌ{M.Kodb-Ǒ]'ʼhtd2{z?uЉ P P(rJKAXfft!Gj@Db25ћSrj5 Gn||uվ# ?5=rI/XetKc~ϼ,+HMSP57|'H<[Y*@+ Us'!z !n4>XӊT/NC9¸9~>w$,ℯZlpcuDe;6;vYzl,]1,7Go0oy MpKmpF3QPWM^X>8^7>5F QаuLKBoQf4f co.<1GPf}&nX?ȇ ie'1]#|a/Y=N`WF,S Lst>7,?8zbUV_V|EآԘۤ@Bcî 7P+"1z~gbDճS r'{;2c6({KU2K*ϧVKzgQk2Qkg_oLQgp2C/Eza:$U3!J߭*C"TdX ƞ~C_1q5zںJx W; 366<2kF-WMԖ03 Db8.CZ-ڙK~ˠEy&5,ܥ`_OsHN/L6ibC0np (lkrjUA#o8]I 0JTf"~^۲/ov,SCڕ$f)3hf䪏:s}w9ώz&Fcx[ɸ¶Pu֒LmV~4^*̿\xA/]4$QZ䮸Q!G~ĩnu&`Vvѿ EX=S1L]&iw$Ob6ݘ\Ox)l/L.cc˺5N8Ԧmf) yױZJUNQ9 !aU)\bIt /C ʗ.nVM 4@p tvsL#.}KF89@zD$@z!*}(wfb随LWBjy#e7/mz1ͦ񹠵zc8v"ͤ yScu^<`,J&)Z醍i \0͌5C[Z{X ˱N{ a\$f?Lt׳4M#c/dXggJ9;yDMДQdtL]ef?wg4\Oҏ8Mdz'nCP%.)V1Ǹ0of+o F %t 3`}ooT`xC ׂj|m+(khRg^*A#?!2~q(2^IU29">e>5Uyn8>D k, 1s~R`J!g]!]uC&Y'ߎL'͜p1Wu6'3 iG# BwJJI|_rBm?YlYӖFњ?׉`ZkC! ‚; 3 hƜ!* Rc4V PD4Wx#!~ߍr$A 8aXԙGQ̭f|ԄR >V\Qmޕ%X")EKMnSs s#LhrA+5 5T@œQ~i#AYZ>_ND;P#K|"Tx!'Gy[X25DL%Y"xm  IBdtB䃯d[-#xt% Ᾱ! Oصwp4Eb=A<{sP3JۍT}kB"9]H`a ~ 7e"t%hpd1 Rm4X OeL(GkQ)lv+3e۳X%7Bܾ;TA L O-?߂qn(fqrC8( #e{e.TNglj 5|GBj7L#$˵Ь-0\\[>y0uaQFB 4[K$OfZ"^Fvќ;-up(ofP-"0DB_$OLeZ|ά*0p+u4I88::nE‚=NO琶%d;;&w:6&u\TSz14IQPssTy!|#$[Q҇?AT@Jߗf+hMpg 4~Z Oe(#{Oe:a[9?b͞)V!wlO87g ,瀣o!T+%ek{$ &K/m 5W^?bэX\l9>\GZ, '<Ӂ%Fa$2r%XG(1p)"VHg*,*TWv!L;"6]Xeb5 ~9Eѩűc (8[hq ʑ*.}dN#gE;^CawX+.-ח^˿V I@ PLΝiNbO v}̓ӹ+:i@3U9 OfoQ-U𰧣%LI>%TBm|r.&WWo M j0EjJ2D"ې䏿Sxn`Ron`H1 _ٿ gUL'^X'YߊEc_m*iX5pLLOULH,$az'c^کF^R&O *!{C9p(;1]`Qۖ3T&!~O)i l cx=gn U;l=qx ʻêbyS9kweJ{ĐiQ-kx[mNOKYxU)zeDօg,ẗ2lq?fLi~l 磞wZjt`BMS[vqdf9k5?N%ٔ ݟMoZ_(>юR E30v)&.mWyqÝjfdj}hfJE. W0= hˎvq*p"lj;l+V:ۜni^ 8(ąL1@=:0O4;0hwy`FJMeoVE D^VGz{Ps?&BoduQbQ ĔU%K #npBdu,qisEݠjxv^h2'ovHP-3U3%Ocۈ5nV&PZndl< M.ҿӴd/<¹Go^DO:@ .Ucr`1uJYMh f#[ z}O(p)l 5h6l{Je<則l&$QsകG {E,^Q g K 俾Bm3dDǨkJmuӭ\&̱Y!2e\zs1suyYS.yQm\8%76`o!.wT9"/Տ;zPU^1ek2X@b`jqJ sc踎;3PKKzF^ű?_Peb?Y+闙:GE5'L@gM{ oc\^cAIOd'W#vX z,&u}b?)EW,WZ]3$N߽;1y6M;kT١NL T pTM2PRnK[EqjP! e|h>+o"/Ա"/XrkfZ=.-I&ehG~"7@G9c.1A j}BywsTYKZBRć,)W`oFs% 3רxB@n8 [8Bwbє߸J775mUqY\pXDw)6I@)+[F0^Pz)\+c T*!` Vn;ueYЃ(:LN`x}ҵ A>d;,ZU26ص,K[Guԅ_. ?* $&baS P%4\BozMb~<9 ǺiRlR!5^S xD@p%Y68Q~ޙ' >5 _ȁ!)O髊 # p;GreXX~!2~}E }T;V  fޛG:'.հf9~7-nfڏ;*y)'1U~eѦeVx]XZ05SKT)2ف!wuHjZ~ԠB1K-%g `POU hg:NЙ з}>-MQ {ɗ0Fd<Yʺw+]]ZK~{?pLN*N34DB ^T-5 ]*pԳM}]ᮇHX))hGq ڧ2eiyJΐΗI_T{.&DU pD f8h!ZAP lz<,CoO  2܈F38GD x+3 ˺⁢fD&uCÑE0ՠUׂ%[,ec̣裕r"ʇgN3 y0~{(0CMtTG``$4Db6D涓$Z3yIEvueW6U[ׂUkX>Mzw7_5=vc:gﳸ:YeJO͘Yژ#<]5Kx9ɂ-"z+Zf6?.I>t碹, oA&@Ll6|/hܚrҫKb) IDFTo]ݙ1Cqee|@a&kD2{ ӻ+;*fqOF%Ss*nncЂDیpx(n!zGM2|O 1d&PhG LwP@J[!ىR $sA  k^1#@r_]-3]kNj lq݀{v)tGewXmy(] S+?.1)Jjgy|ˌX,m, 'i<{:O ˣ%&O[ZmYPswh?#&C'@>sT=WV4=._,NboƱxM pT?I4g )41:G`?tw7|,::% bkN9rqDr+ayG#}{~N霽%bnE<-wH/Ꮲ~b9ݲk_>zu#$#bZ>)Kds f*Z t16WNnnEA>a)-~Mr$/D갯9@#`͍už\qCsB-Zf1"ۻ tki{+Й^\Ruy? }u=w}z^B8SF,LUSaq֡]\'! bZJC8J3J.νn,` ۮ y@gb&p ՠM\dM~S_W'ޗD\^VZm՛`}3!$`SlGzV2FsF[>Ÿ f10y9~xO^82Uvf?[k  TF62e0HE{.# Ԡ7a1f f)3BZ/HM 爓_J VJWiM#adwRj3@%`)RXUpycz Yh:b.WϧztD7SVߪ@[+lL_ h)R-Mh_ebg= FA۬oqJjVf9 ͭYo√p# s{UnRզ&I[iA(@zXɦh2ԀLh" :IK'+@ηdcT52.%їM-s_n(3kX`K>q"QA0*[^-n=-fZ FQ$>Yp4&b"\UD'(f9[]h (Tp U)4Gw1 f2fΛo%iGƃxp J' }aW\@QZX_r†|51Mh0zv@&* >1e\X(7$ͯBOW [CI/њM/ V n=pM<{b( ܦ@ kF⤱k5 ~3v.X+i//ΛEX;v5'/Vl(;YkCuQ 7 CT1 n-gv)V+s~KfWK]500Xܪe)7ZPAe"?zϢ &]fd-QsCmwМȒ Bq[Tlړ^k"*;wӰM)AF׺ҏͬn4͡>ۈSM [CX|h[O΂q;>Z*zҨ.3Tav;oDroDO}sUלTt~37ʮԴuZrzJP5EZ)O$$)KJh5 ^-I*ŵĬ>&un3OH;vii!1#P(BrB#{q֏u?0tpVoOQ`v)6Orz2snam_f*#d>v,W::'_7X'W.##S8/ M|7)GZmv;Bɟ΅%21Q[=H0yS)`}7ӹuYAKwAeCWr$-NvN62#]v`<ʿP'_Hk~̈́῟D<4].bjZV-N݉pVa]KYSH d%^-r8}uFeLf8Aƴ%&8*v*FOtXZ=[q|ۋi#N1fPܘ[RLX8א2"TMuڎ8{(Ȭ ѩ4ITaJQJZ_8/|׭pH^ٓ#1+N0[׊kZiZ:"D/K?*]z 'Ql,e*ƀt?,M^(h`u"@k%qnYٴΔ Yz[˲yxqAocfo_X_Kq#4oTb٢]JXWU0D[E䍄zJ:U},5J~ՉX䢻:eZ:!BWdjXw97}P8ˍ$M伶ʐa¢DO͸NV4;nhۃ'WkB(6*ϐŮG$ s5ޏ! w~UJ+cжb-~E-!pvS E\nN+کI 0z v.z iؖ=x[9wQw 5lhO,W;RfI B@`fq+B^)V%ϥM3yIȭghն=-Di \Z1âOETC9"3!R(VY#ԏ Dni&=|__n5/zOgĭ^W T"4޼M_ }_/wjEQM՗ƀwe.ը!+u4b5 .䫊v{cDv~? %)+=U_ ̟6VY0WsO봝U:*d2] 坆ic ӡ)MF}HyME@)V_Zw2) ^wʊߋޥn5&:(PIJs:3FԘMt*gԍ}h2/<(ۊYYf:,Y+bo=>Lo1^X')+']Z?`&Vޑ6@/?GVB'iۘߘ$f]6.ḬC$[а1덾oZCQ4OMiu7"N|GTɚ'^pԩ8]h{5?4Q#qWQ8wgcӪ87-B3T`is>4͘&>@bX֭MSSp||vMP "b_7+7wz~F@+a|_6v5)xq鬮ŗdfZJ?x/9 gu),$;x5.r9pr73x+&L"<w=e<ݷkcM>3;Y-:^̘͐z"0G.LY&5N|[Uq+`c-ޮYD:C7ҭ_D='O?![ ĝʕ֖e+56kg>nopQpk.Rc:-hXPʻcu~3ru:&9i *KsN+i4YYvLo7I=f:kJ20W ~"%e/&Źx`lJ)嬇*k'$Zl^[f6v< ]M W,(F6i[ɗ%ϳ: "dZq,ZE`8 2AN=v<S#&JH0cg(M(y0|}S< |e"/=PQvT➍F%v Ⓨz&z⟁ yppt&/_@~!>]p֨@\.x -qݑJߐe2Q73>zg)2[Pϗ 8]_X7mhQ4ҹ߫O@^}&uYT-5+"CUx<QlslmbopL :}\N!&r- 2[I-}0pjG2ۮfjsMo4Ns0MR4!_㾪+~fمB ct&n|0M}A8Ϛ݊N'\CG N-岖ܜn؜Φ(nlXl/h~ۉphMMJ 84KuGW3X~[!ǰ<~356'\yS+ #W^yI{Wi`bș! ؆fBYaRoKH.Mj3e+ធ#` p]61UC<)Zg;$ؼ=ͻ ԰>4m #Z!`yںؑZݵ_@[6}JܟCXbdjo0sŌ/[w ,,T^{Z /p,oV^[W}G &1snB(j_A;xKc?N;I<Sz S=,8΃l ӬzbWb~HZ#Va>Cm*%yl|ѷ K%Ug_%}scr8}/>&L4H5lNؙwiqZnѭqWW<e_߾"ܟPgwJNv'痼|WBqψh{&3xʪ\&Yx=&C-{hdσN O31Ah5OfwL A |M["[Jt}裩aw(O^F ;~ZQ P:|q{yGAQc-{ȷh4v-Ђ&4\.ؔ2dZZmݶOU+7U`M=؍?Xm0nxоf 2&^ϓA<'ڜ0y|L =![0,ê21zV7JA#*oUC9]s;$ЄT:HeA_hҊ^ !{|wώtdŎh2lJާ]ƈRO8-0lrpt#Ē X{02Y&rcgD}g,/Ċ\W;ڧ~v'7A|VzVvLyqfO |q' \x5 aX1yA6Pw7S>fZ}B8N0>CuQX-]V 'x:|9˙8 ;/:`J}ҸcXQܬЫq00(9w0g! rt8# "VUlJiYd^KzEwI 7^F Gvƾ0AkM3Oђ\ ϐ&F#n&i \0MМR8r.lZ.H/iHai5o3IKh̟fV):$^o͐ q柒"B Tr^JG$Ip]xgB@ ] U!k!}[^U-+!LMjӈ}f 'QWHÄl1t*I/.rmb oԓ=Q-|6Zm8lkRV60RR_֞>V q+hpXAΊZ.xIPGa~57qUj% V;(aϾ-ZiZZ|H5O+CLȬSaAG8bZ8?>_,WMc&G4 NW '}s[JyEG @ k\z l6jC$|9TOZkQUH珖tV!&j>+1-9i/_*HW FćLsȋt)64 $jQ^<|4g~V`Ue(64,N` u#dfZ|ONJϝ)x phwk zvCQO.:!o@ ,>$sy~)9J˸jN[>E|7OTH*x*xW4:L3_9Ks>^r/w-1c1{q櫡i0{BoʽNW6{.?u%:mgICpflM"F 5f=1_=ZWΜynǂusN\fFY]]g")Gh!Oq~V{bED,_)p}"$#S 8hŮ܆@[Vg'P.z1F~* BBVLX}A \*g^.uTR |Jiu`͚s8=3͇D9tR;))_ۿ3M\7!yY-;DEaYkWlPhN5d0-uh{ q9fa-l7=].~ 418.&Q>PDK+b V;ci$TFPXhf`[DZ>= "5KgorDWlvI{YҺ W7PT\c1s *)N[6R _ML!m.(ƅ 񸈣tU+o%aؕV@&jGdKO`WlIJ 7Ǫ>H*U&Ӹ~LRɑvܠF%m{O`\H-t]*]E6x\I&ݤvγvK =YL'$H#z€á̯d/>?A! a+%+8n4Yb"Q 0G7+:xx6@C.iUw; G"gLƠlE! d^Jw~ ŵI>qaޠ Jb;7 % ot>փx`y@6&!%ߙby E>xuVt0i06&c0S C,p#6w_.xT(jdPUee{ Rq1b RD;G?Ѷy ,06Lie=eN׌Q- 6Z(+>pxP;8ҫVics, 4\:JRo[;bdTq('pP<⮲D ;d)M5bd n.4E "ڈǶz }LZ#2FV<޾*{%m;q̟T,wM֢ȯ7$Sziˬب[;e_?OVC\eI(2jteTߍd(8ܕKlav4Eg-AxvaUk5*)։aw%[7IȬє%uryO'!JN䀴OlHNYb33'Ea;tmZ/|-8$YHu(zP2Q^oJ>!%נ$Y6K< oM񥹽mXP #ЯPcRtl<4}Ǖ3:ZўW\S=lo]0gmwhs@$Wo;CV[jho a7'_?TKd5 7jW%g3BBJ_5/9B*udFdmgPVU]q4_PP{@k|]'ғģ:&,Ov8Ez}$(gBLʦ((E+UnN@ :ix31=4.Md~d_bɨxyg ^= xEפ3j>n3} ,Gf0DoSal#3d.+TPbL?m텊) qsĖoMJ@ ^vvt&ѠLՀ7%>3$9(͝l֟o3cY?,1dQb1=3&D:ݾP tW AyFƶ;J΂qMU`֐}XXzx1^'sB;ӫDPVPϮQ5l3g>2 iz7:*%S̺`1+jS`tyĘMDTx#ិX F@gS#:b='??3P1fK1 6/գe Hfv۫GNkA"<Ďj鳧0mĜo'2,}bRtz@9e] 'N[ٻ'Fh B+yhdh cqk 75`CO~wZr8M_J1C2~ #U1|/1kDǷ&Zj%> wSb zDQH'!~|CgPFG[VFwmߦj:QԶ+眾2~ESO\ =B)Ğ<1N{v85&?Ž B愝*IOim2])\lUZ,Ex,Zq#?#{|?ǟz/ S+4+@CcTQD \ltf2*]t }0xwO5/LJ`:;OF>]#w@eɗW.N 7Zd`Ї@ٴ,NH^+FU{7G[A CM-ïXV 5uxH51Mǡtqvb,^ ')Wٽ.s\nȠh 0gV*h9$!` ٮ@QI{ KS d& ;3tCrA~RthU>?&jSr/Tc` ؼSֺc;Ej؀P[Yy-J` ?Iv@*&b'@\+ 5",>-#>9&'N< !\T_`tpVd3q֊{壊@ac¸)+^Ge3IrڊAۗܲf)zDڌu ;$OMtK!,x_1 Sw#["x= d6hamWÍ<*q.%WJ. &v|cFWvogi!k!JO5T: ;L:x4ΐnC(B$OĕOm?8h +\ʔ fmj]JK3×<!#%N_i7%r SP-;BDRow놱w)ai3֦!ٌq;u/BcgR*qewЍa3LTV>K11I%X7bmbޖØ:aw( (ɳ6s."a7_|Cg`"(hud+T$'}G|@>C s׌h6,UJ=Ch܅oPzX8f?o'dwWTEa !+fn$ʛ<|kpuSQy*~ʡT`HO36NŤET"卤6-}<$0UBhЖ◢ Ez/Im4k_ bY]LMB@:IqWc"Ux'S]$K _zZFD3< C*2| UtH^Ւd겘V-KbZ7([yC$è+ 9ʭ\:;%𔡄k(rxo{=_;Fȫ|t1)4nJ^3{eo*NvMM!v_ Nr2) ( 1:<\A&!\Xz԰+dG$֘'݌iΥlP%̭@!&1K Ð>\1xsI.)6d:۠Jp~D3Qh3!Iteng@ڎq$hjK@,bq?BΪ]OX&5ܖOu{Z2;sƲϻ3R/lzsh-UzYO4F Ē|Ht+Cqj{_ 6i7aYZU_ >M {Տa*-畝c y(8˟j&b[jQURbg*0ZUCLAVyv*脣73/SA0f48#PHPk< 0%arh'ԍUrYMu$2KN1T{2Vfy 9Mhh%;,Af8V,?gtk,BuR llHnj!/xzBgQLJwRthX3VyC,6;]P<l'z(s -<+Lodw}}D fC0R.%Xy8x%\ڂPŖ !JaLW\Й!4MYPY;5oNxrLBW56'dZK_OZT,6 >9'I,(4dYi>0<@<_kH:9 xy[tiR.kU(TH%ЛXE4><ڞ+H̹M;˕РIri*(A"z|:% Y)M{@8j]l'*(XpȿHxHHda4[ȼs4_ aǷַJnlBq}ibaYCpt9ymJ?Z-T6εE"DW,vjpч\ 1ߘ^kz'^jt2Hy$f f(ՒcКge!Jz̀Q5^ kŢ5Zu>ci9\+\R!(t>6rE`#-}>PaL|cG8$4xyhBe2)P *${=Cڼ6Q 6? ԅܴJ%fu+~5k#:]4b4JW d =퀓M L7Ex5XPKu[<6݃];~_Xx XĄKN=wK7)›>Qk[Eipط]JMzFf.b ʂc &u%21xT]sxcSfQmmRx c{oܖC\J}mpݍ5&U@J;7I*z"(돷1_S`Jpp{ ZCIrJLbGb"BSy tۛ|zxRx~GٿI1>H8 ˗8%$N1[y=I^GUr t*5n9m6'} )mB.RϏ+e@c2(%º#-F^T3}SmKmsϜtBZd;Izn&fѫ @=Aԗw*;#%*|'3sVk!J/Kgd݇oXս-֠]e/UFnjcYYz`? ˤJbxXz86Aph+F߷Xk]!.Rήjkb|?4aŖ/;p,}S0sN F,>hORIVn-

o%|XXt&Q~%iTf̈ٴݝu|>JtlvGOܬq$'߫K%NSJH?rvV YQjzThj|Wڼ"<&O_3!ÞqeT6 o.I35ߩ(y.ǀl[>- &$`(,}s)zU\_VN)}#{I!ň/1vh/l&zm܇cVKI<*!o^q+*+nds ;#q?nɎ#}^n"K:%[N>½7N?| T-y {2KE@'ȝjIJ P)cݯ>_᎐`5 ?OT4s<2j=# 9.@huzɻ\pJ%Yf~ GIy\1j8ߊ1y*v5d1w!hG.tQk@/Fw[qܑxJ-謁L&]!x?eiiԇ)piܪ[S!i^ص=D==⋻ iTl}{3dB&<@+ .E#׉Vt0Wx ۩Nq#X-?exrKre/*eA*5mqaSוS< qZu{;EyLExn|ҿ:4&˝ˤvvABEőȻdwEo`T~˨ N?40 "ֆ |E-k"dN_yI.Z"~ymj T}Wj/9X"VSS| I'VMBg F#PHرd(:"^[mÐu1㵐%2iQOu:Ӟ0<}Acoq]DbYX!`xv\ęR 0_#]jJ>!:[5 ^% lĞjK\r\\/ [FA %l32M%az4b"܉e:y9pĉynW;?GXMAJn7+l-$+c~ wzR4s ã5W,_]CEwK,v,QMTW[ƻUvL}SUWo}4)%6yVUAH_?:LAuW9s3_Z(+H#U~ W6xmʼnwDr*օo`(+K!GHl^-HeW60!e־Қ6Nq7 rN-kP ˴]r!sI;XMG5e3_e4Ҧh}pϓuv&0xCk`2O Vi.1q)nvP1`hnc+[l뗙N&ecL@p>y'5z&4U%Pf Vcu} l;_[8*g5qeLqs"E7 9Qd-uO - /bAފِoW=y sVfE쏋z.C逅7Y +X~XkͦM,E3G žݮģⷃ1d)_?[X$ʼn.m}X|W[z)nwi3LD[TuT1dEWXRPu{"beE 8l2h3}yĂN~ ƏieG*.r^Lg!,EuHy!H sW sORNe:# ܹ6믄4i6nH8l]wg>gr hllP$dzXC#b6$ؤu&*4Ӯyf y}Y} PI䬙/md̲28`(xK0T6o25y@ӚG̈́$`7^>G_E_7˜ZMASWy(PwjzMf/R4gi}T3tc /C\F$yY?9۾= `ex!7lM{ac@Q^*Q|8]T#N#tZqŒ!:'iѲkur'aZOtoCmOX#v3O~^z;/3JMFܝYꓔv<–Fz5BPyM[O_UhGǓAPKL($:J-('I GekGt81f`{dϰwsҢ6` T.w .KGyV١QNj%._$?)4O:dɛ8 DAA.W/^&RS(?/#I"ZQ_g9R)g8 Ng/@rID.+X`2 /{ F {[E&KSe _=+c\4(pai*@/sGW}_ e(ۣ+ʖUŅׁA ڒ͜$JizY;'D]=Uslc/E.9&.zt']E,qi&t=ߣ|Gr>jQ50$ad'0 r8UKy;S Yp8oƑb̃ͪ uTxƻ/n Bh1Quǭp@xnPX>ĕkBϸ*VZxjuӽC/HؤIgًsEuDu,jk+2]=wh+MU g 6qLl,W{{&"od(Kfda]v1Z"B?yrƏۖxlҰʾAcxwH!<L:3޲bwN!C Kw)ŘS]&D@el^!s=Τ B}5Ύ2wO'x/vfyjdp`nנnauÓzkJTⱚbCS4,_zwEjK-d_١M^\ه!7c[ZۂJ˴A'8/qV{eX$Cv h'.XXM!KQRF9& <ˤ[D= >E)y!^?~;[a>fx}<؍P͆:rֈ/spr|Oc˕#7L,k*TG0/K.Qx2)/U!ƒb_Cĕ웟֦г:ip^$=CYţW DT7L3mdwC{i˻lGi;]VX5ᵲX4,CT&>OqotJ }(ˠ@#P+ZW5'WQX@ .3|1"旬-iX)ig s=)_He\tBvިI mZҞb,_֙ = g0~s-zX_2 .9MUWF5v =^]/^WCĕõP% .zD0Sk^RIequ[˗&)xVUۼ\VG^PuGz%j`pרEdx_4>X$E })Rs׈pvOA !> :ƄicoH,.mD_}_kw|"j~"Rʦa?%Օg۵q>Шd0vvXM@tM' ҧ oKu Ow8swc4~ۤA"*~><b Q3\B0o=gJ$TPfѽB4\1R [>P_6Ì { /F*¤qo6(>:RpڃҌ;_8#Mflw>9Gax) 0duV eF1M AU>\!* m,ifJtC f9z=5riCK.U5l T(VhR.j_F*Wt~,G;S\s.2Q˫4`40d'Yfj. ǑSEIU*'Qem;+IYw֜?9vF|ZE[ƑWΔ~ՀE9Թ@اeCɏ %@q̏Qjp_@oB^<^Z ycz`)@Y賁_Th[lmҮ?aR]9'w &<6fP!rFÃ9 eb1AhYz۷}f\#+ gghϓ9s؛Q|gnnWm/[TShN?5)fVV[?@=ꎖyܴx8eZiO$$BD]h3s40s`q]%jdhW.VE``̣TO,|_3>Z"*U8ר;"^-uYhYʼnRNvudГPD} Yo,v,҉ج?̵I1e9 *%c|} pxuU6s>pL ֊>^|Ȃ 1Xam@U`+:2&uz;ܷd@s/'ͼ N=7627h: 0P+FcYg8z~GJy S^Rgf-$)K *?-kU;fd6=]59ف (ټu};&1ϲS%-`reg됌d`/A&i6@T8ڜܘ? vtϥm\ERdBru 0Ͷ.dF(~#d7,_78yG2B)$^DHNFkˊC'{S*b{Ӗ]TLFaMQ"Fr_yMBrkGSQXXZFQg1xNTU&`7 ZO2чwɐl~EurO/`&tH<>>K<58̻3A#\/JG;&.CPr5Cyǡg~$-~% odd" =8 (?~15 ! Ay eunh]Kniˈ"BiaL. Ma6HrBfXY>T8vhL|;of+A1 6&xzM}]Tj-{q.b\M{8r8-|-C$nET_T'0G-- &J|c8b޻Bq<uFǫDڡI5W[Ɯ^7W5S-YI3\@' @j*ؿ(C8& I fn38/z\2$]xK%3 }:ő\PL\Ԣ+GX֎`Sf-qLN:7b`g59K#y{i*NыIJN4 t,4vhQ=cdDK851@wPVxS U`p2 {vvfcQ3R[mYtUC>h޶^KNVkI Ex ~|'H/5{ (\oNWON mMɫ/wo[ٖۯ&'ϫyF w0yߧވ1骓< Lvܘ/.%R} -SM[xH*|G55OH1IJS<#AcPV"Xh>xY36}$llf<Uܘ 4e J-BWım@ƅ7K:FZJ`JSE"9"_T]T%Uy9/ܑQgOMmZ 对`CL8$-&(YR#uWm"w$"dUۮ!(qd$lͭ78#hW JJkc{՝pv;o ]8*`my|!O\))( zz!0# JVZ# o&ƉMFo.QE<0̭~hb5coTdWO,͊>6, QE瀄SuZUxLo3eojfc¯S/Iy^P|lॕ^#\IcKfG0b)W# \[璦NyGy,H̗ئUux^WB0n]I0i2WZ8A/#W&^V\xn[:?gNI`e}r]rfY{N Цqj#( AVqԺTD_~O=Îş>><]{X>]#8*d2R"%w|\{@1@rEsi3kr.!@XJBgʼnFИZX**"12} 4wN?"@-vCf:Z@[J?z[]) [|MES̀t:PeXU3) ic`#o\ʿ K{euAiLkP`g'V 8IM7ٵL zC{<{eU.bp/Q53,#b"|eOWx-^UXoLQsq-[Mn)}dBOl %H(h%4PUw@R)]%O@ //ysj{_-L#N6>*JշY#[Udt<5p: g]5i"@18&@fdDkB 6aA ˢ@u nB93TQGWL %abcXJ NZI3V%%Ni @S-5fmwwO/tW~ު O} o(iB ϙңKovZzW|urCw]3+d]K RhD/Hyg(۸;a'U09i5z`9YגiˁM&)?3ǰ%&.X3|Jbj1 xha5 mc=~y#Մ[Bꇁ_>`pT2<֭+_ Hߒ#Abp?9B<1Je`na7fޜH:QhuRR9c_vSח-z5j VG|vBiP%ICaE1[V}2oڲnq #-ȃcHm 7:~rcL/ڳ r[4O6,D>HHO-:RT'?˚K̑~~*TL}H9 bDmiF;eN9pDM؄ƥذ34)lUl@DfnK{qAө4"yǪa8}&z]?xq|jA, dngm:?٦o3ĩͯ.ـHo UhѨ*,PiV1gCܣP#FOb~/7)29sX dC)'ܼFuurdդO\"?6@uck/.o)&%`m\2fh*[MӳRįBZSLO:AzڈZLr`l]W:2FŠq{ F,TQaLon"_@ܵiIh-xvn|Zͳ ʈA1^wwjWGo 1Q 9_*ݛXq;;YOٵNσI} BASb1%rai̢Z弟#u3r.ډ1\2^&לWj6 Yё\XF>9M{dW!x*pK]6"t⟂dBq#GD}jK#XfuWۜ؊bFR6FyAlUѐ[uyW^`6\3Z+}@ mRXc}-5/GZHFZD 柤Ǭ9($ᨤ,-󵖼V eM W/^`‡ YH~&P-iObFmd}xمdO d}Ck?\kd Ҝ{w`(U==\{4GLly?on80GsyvqU׫ nR&;,6r'T@16,s\Zc5YDzu*(_@V l8=B>Wn?gv"6B97o)uʷ7ɋ͌RN+jK]# פ!GNoU[·IoMk\\r%PW9_Ǯ[QR?+7Naݲ`tо^AÎS3,I\bQASpyhf@BY ᙤ"A,n'V˭F.uJ+e;0{K$-'LNiXIQbRR4`bd:dd ?S#1׫v ԐZS'(oΖ`! X%%ڰy}x8_Nކc9 g>5|Q&W+h4?hrכm6[j~+k*?+]ifB0Gb{K+AVΑ4s5[#(Xp&cԶ[EYaQ\I j(opu.OaJrO8ZklrDS~Jz0-1GIn=I Uc&r ߬fP )¹LfD&'~ջ"DKrblfPm? t b5LV-<Gơ.7m!"߇W%Yu\EIzooR1nWeNf_>xG3і(RHP>;3JF ߍ~Ƙx]>Ή"זQ4'݉FX( ^;{{~ЄȣRK=JŽɗuQAA39ԜG.V?թz9h koݗA&p$Â9(\w$[?aWmȀLXhKVgR.spQ #uŽj`w`I?G?C(؏$wBRsnx20j]H,?,DGX< aJrՔFX|KT?^~n?eB  Q{vc[,yl2eLDGCȉkqdkS;b J]qMmdȢ08zy-ofNz||b&|Y. !ޅ7-n(i h=BbY AyFD Du_[A0 1$ϤAސt}?Rd Clv2=dkU ~{7 rZ(5c*AK`?4uXzo:7 ,m(D~`T4TSó,U0ɛEIHUt.3 4ZFz#;X@tA;-֕5i PDYOétZYA~lp!Qf@zwxk7HNw~TQ%w[fE $5Tr&e<gƮʜgd&1mX :/}!; dYmf4G a$cP3)nc1 Fc&~;]Hh6X凐Xy lT.X<@Q\Vj-јMcCI F[4%V[J󟸗:{ZY$ZYt΍93?߬Z|t7I5e|>:Er&x`<v5Uj;\xA$J`8 n`{ۚ RQs ƄDj߫oR@K}CZibUxVg=,Ϭ1HlP[7J\WH뗧eӑդ9>"X¿:H)c^@asSenH&ǒi: -a"/g/Vԑ:M*Y 0!r5k>xbBxoqG=JJKuX +;ϻ TA}_ֽ/x =QF*aa=pe!TV}* CM{pS U<%WY}p18o_dQg 8;WFMit{-O@ }.ޚ5-`͝m-Qa~1aR)K}IOteOTY:YYSZm}jg1ؼ[l2%5Bt,³ugaī]){ULdCsN!{nGqHPgvªCC[5ˆdxV ?.i~#خpn@)Dڢ:S\?*o:Nyg5GᏜ 5pA_Hgߵ~ آRxeK{Ag}uюԈb<|CAR- >u iUGtL$Y^ xl&S(՝tUW3dxNTabx=b19!FƝۭj6MNĺ:r'+崵M o6vبxUawy͐OwUm^w!X mvB@b`O 聣7 EcIE>Sfd5ujuΗUi_? ` C~ڙdQS#ңHG[lrp#2/Hy,;a?HHbx{0S}H3Тu&yg#8>#JRWW T*QY K9IP`3*W|0[:9f;./E7q/ڙf$mhQ~=%=zå{8`ct`MsMTcAK>koeשiHV%S[ĴL7PR2u齴;{-D* ʧː X>Kg~D xNNK-f>ʘxe4hMD'߾nZts6 eh^V0K4f̙fiwO݋"mʳQ R1(Z-{pG?dlxwԆˉd-51V<kA7ٽYMFNOvw rm32T,83Wb *}(@xBԚn%0Atld0K=GP)H!vj*}RڕG#rɤfܢ V/)l ̵`{bpiC87b+ˡ͖22>صti3(gd=5i@g0l` @P i+y>nTcq z梛{9{єإ i^Oʍn.DTiPvʠ/?XrHFygD1ķIb&N+oi$!,niY<㩨abn I ^X3Y"窵LV i8Qi9O"e7akRWΕfZ~e2OECY+,OtVk[MB`D|!H,i!uۺ`l\ktoG&Z!I!bWP@ÁHoLٌ#FTQNYXF$QN;Ooqˮuq~`٬ېm-rԐv@J; yβ.f'[}P#UHjR7qjce=0$f~4\]vԶ~}fd!iLߏⴄSicTw Rs( M\i"ݟg%$E+ڿSCo8>|8 .tcKjGsD j$hJys N\~ oҩٞ>=|  h>AvTS_t{Wqj'a2"o }= jEA}sX,zN*/ dWb3~pNUmwBT߭**-PpQ*ixl4u\ӆ;v:Pgc@>3[Պ9'C$ >9FIvUUPS`/2cQ-&/'DK\%=3pk/T& frHzKZYlpauRA+p31A& c# @¤@s<I`I3K%t1w{,& wT 5,xx?aUZ-ZMĉ*jPtɼRO>Ĕ>l(uFLX-5Ү ` rN=;$TSL (`"ލiu }YBEF+oP0dؗ,`{αqHv'ܟA-;PhZѹ{7ޕFa}5@`}$I*s1kiUYAC1vC.g(yr2 jyzdbvW "ә3Q|=ňgٌ|H`+㇦~!Qn]i97)Q7مJMX~qp+zYb9CAɼm0ի,ZVl{ RШP82IގgC#/ρ;Q!YKAi܍ȃ90ICmHs>.Lxu M;09^ B(XwO ѺP:En/+!k%:hvzs=hk̫7-߶q,-)+Q(}ym2lZ5A30Fhp-)ƏWKÓ ߪ08֫UcvM$Ճ:;R6p1TA#V+ =,Tt^5@5}@fҕ ץ2(ٸCbđSAK&$#, ߵDg6=ZN!`/l`|R uM1h?7BЎdY)'+)a r_)~{ zr\dMmj*A tyYׂiOHVkU~dl$8҆m:Hv]=l] $`0ׂÎfߊp7湬uN}s_ZtϒaTKj)f8 ^?P3t$L^Ԓusc259$h-}z36DnT4AT ^e_ȹkF]tU5VKULqPܨ RwM_J0PwF cV/y@9]UN*L0;Y&͓%{)1SG\L~\~J`Y‚' YB}|٤4mB,+ K,Nk;˝7G|2&"BhZXt"x}7ĈSV*b*;!A#Otw{c/}fmW]DW3?K5^Y%u.LhfpSxZ-$7]>c)8,j zU HVLyVzGT+5υ{ТDk^h@tDUD#S\5Tᯆ1zs\< Z$ۈJ[gSnba󈈈_,\?CVPVq_E=l;P к Z {x Dr;lק!V(bX."ltv*N.lt M :G}o]N̓MU)P~NJ[O٭IV#6%t9x8;"9RI $> `J?G7m&̖+Wˈq knmԵ)՘(/VKKak2l[7AyC7?ƝG?wV*Վ57Gʼn;s kS 5ͅ~U6eV\ v!)6Bƃ]Ah!x5>CxYI@^ ^glX$SCɎV?))9_I51!EEM\K$NM'ZΆE;4%El뎦E0|j{CQEqў.h9S{&UdbSvsE|BsmedD_c ԲA&̮wUQдG(?h)!u R T-ic׊&$铰͞PY!aq@ܸd{|;fW MjԓH+ jh1L3-}joHz i!K͜p$o뮶fIO+狴CfM0& /I-1?JF?{.n6 Gdj:O vQ8^r:h9oC`ҹļc4p6|yW%uC9MoJ*@*_Ml{j䢍:^Gaj–$gt 4U^> c0 rhч6 I=[$\WqnF T★Z\(Ye6)5?Ԟ[]o_(؍P""=TPqeSP2wP6*ՍlU˼Y.n?o5X;NmiB Xȉ j)*>"d ЍBavpZ{e ]l  ߢsL`|&~KdW#e#hs!gA6]16$H-9bz64 MCb#'#mўc18Q[~#p;q|ZZq=Dv<><萰V*;p;k(~s_]+ Z$&/K%vO] >YoWבiмZ冘CfRc#puu?;|> W΅p=c1Y&A<boWxxڂQ-HW,`uE 7ד*IhY[ Twre_yl§qBC[<.ה(~oUm>'W_"woV >h6َCx8" -?p $`~p%k6H +SGB"'Ct֔5`>T7 [* } s wB,Lگ"w"4Bj}bKtdh~ıE2ᇒ=YԘJק(:D^+t*:fM PQ>,xL+@e4r>c9}90kEB9T8J##f_m{@}E9€!41*Ou636W58 _,䠑.[.z{MԚ_ѽsz^GM˙d'kt^6^tqd[GbA Ì"S[4ڈX3&ʢ K 76xMc5gKb"8 j{ڋ|3_93oє?7S;Ĝ~;)nHBVp 5Qk,ȽO1-;g#?:M]Z٭Aa["M:n$l+&O2:iA kLnO2цdM:}}>ZrE{LOc$NZ!UK'Cޑ(Cr `z"oGc-:vBpڙ*:oB3u1#I'`Wӛo$)ow^RżZxuC# ù )k(Hows`pF5߇=?,:CTP̀l@Mkx > 3v\iCVKUލk f; Lա7"Frגac_7 q׫bxZV(~=e.F!InpȒ4`>AmO5ҮSIǹU"ʿn FYnk=}K[w1+<0#Gr1R ?I]nN b/\){G!1N.ܙ#Kf qO7C '1;XZ z` >=(J=CaۻM"/+5Mb4{ M]6o0qU"@@2f(^.BX~*K7َAh7PIvP{>Iѧiݬԯ<-!bK co?m\?;i4bu}3^ݹ?{ϑr{*tIbQ,?$ bL#}IKZ)3fW6PxT% sӮJԜF޴#ko=+<6!IR?}'&j{hp%f8\"hҜf= TC3h4=q@OKVzY"x=,{8xWK_y(vĻb͈W~ |I,Wh Hncg}tUH{ެ{edܙfYi:Ӎ?y4kYeH96XpK% x0t]`L*ȵsWeR 9ܟjS_5h6yt~2`&,YVwY  qf qEENӨf~w B@܊2U_/Uw`-z۝#cx~;vy0ɼX87:^Zj-F@2&/T1tٿ2ڹ (&bz< cy$qˉo_$Wv KGDd"4O/^@Ėjơ8™r⏇ROi4}9 W5 OP@u3\(]amrGlH?$0]fyHN#1nYK86 ՘cZg]^*رޡVNbXlp7>T1ws#%4r,\v>9XF 7g<쬙$!6G8F$gMiQ?`7糓r?w uS}ױ\I?ٟj,G).KĐi JLH "‰F za۸Ů FjǙ~c >Q薚Vrkg76.rĀ߶:Jp4OESJnZCQ` jq&ƹo%8Tc){/j/Y8[-oq 只ӯm8~#6ʊM.zèr~/AȲ0;%:ΦL tC=3@!#pOI{] `t1t**%8]TJ"}*J2i^NO )w] ռ4iep[LʁZ/f>OJ# VdJeNnQ5D6+.L %2u,’ Pw3&7JSǢp-W|>hL4w(f?.}3rf:?BիM'qV׼-1 ?COqP|g$ҺG|ΖV;Ѯ޲[DŽu 1ɰSͱ/9)$]7K N-h:(mV`qk]—D?o~)qK¤Y#L9QDʖ$FYQySiv:~y0Nʚ# =՞x]5qPujJLLJ[}7iw&++*(bҷQvlˮGnM[j'6S ̾.@#ZS7.$\N%n]GR| #]"4K6j"̗-&e#cp$~]+fMq?q2C *&OFĚK 1W(>]~B{ܵ3',fJi\{rS?E~уU޶Z^re1CY0ba=T{ Ky&lY=6Z3 ۖrCjiݱ}jP9#bEھB[yG1 3 3d ЮL,h2=/֚f  ڤ:Z Gt~I.{c;+D2n'Q ch +%'D8",1K"W5+ r*x]CYҹLhfSs,osuF¬u7)yVD%Rc/;Lq)K/em ĠAyb{ydzt>罜i/LBkK1rwUkl=Zy{{qČaEs^\ bnt '{fM Lb`f%!'!^b9t8y7ɃW.d&-wf_ B7Q7x-Jo3* 눴a0?'tzLYX-tIkl$ i6y,l D-bʅ V\0x*Gh@ϑ0TipaJ^O+o䝍z%:fwA$aℿ=,}J(I6Oܹ8M})jxAMzТxGeW#nܧ3B RO|6jLwzq;}URlM~.S q5$C7Nn'm!* EZO:KTyOm"J "U&D=֛JG.BtƼf=6Ym^~)G6ph0e D[7Ķ-Qgf1Z*d3t`jK ú{ͫǜ> 7r+@*} .*jbЁ SYTKVMLV(6v62S{82۹DXс81GX"`:Q\QAt޸6 /c2T+c({|]B*bm @6ujVT8dGecM}7 F,^E?0jp&(bZ-?$ fN8%6[)Xaiwxi+IQ*ڂe6c<0UkI96K)&}.P^PU?DJW"pգt'|V`*BqCNJcJXX^p?Ȟ/ts7bg!M6  |q%:m-<3. f^[k\sV)='VR:/ཚ.& J"MbH}'.IGx/8^; /yQ Cbt՚t=n=K`Orͤ# O1Ѕqʏx]͙Ę}rbؽ̳1bշ68J879~]q!%~Ek;Ww9t.ΨR!.u21hj*zFL[X‡PA5qy[]jy2:lDtFa Vel۵_(jvVy,My|-1%?Kɽvs _ޅ_ {B`YEq!*v>'Ql%@𥳜/`,Ka]HoGwHy5p@ Edo !.2 wj-^V(@adI20 a6.6,C Fﴱ ùg =j\_r뾉TCc\;ܪԺA +w>⛰Y#qƒ̶nKFxWM[z.Gۘ{׬6~9/F$ 0s+Mc0(O˗01n*uc,0sy&NyQh\:>!`jĐ'y혥-o F㨩 zb`IL3np}SWf, }ރH66:2~Rm |u3ɬfߟ$0 f2}vd!zw@sy#nxӿDae1@& v6RPq!e"Of[ 4El8s4d b}dmByYB/EGG4 bs*8Ux\\ulk=K* XVÌ+ɨMƭ(5<27Am]d/Ynܮ` _5,q45}<="kKee|ڎJ(AES;ѨΔ!7cd7^PJޕݘ]4, !}6'`5-וlڤTld;Sc5X*1~x$OW׸ Eľu*h4=S UEepH;˅\v(>:8^;>YN)kzu7cN7bqӿgˤRR"4 tThFog'KB-F!PM&`'{BaMu,n7:9^I=|΂ nذEٕS%h>QJ  퍤C2p ͆6 w TT”Fz(+h}R8 h>-u_%w x/Գ]pÀc3ǒ'cØXER n @={"rLTŒk3Itl0Ӹ ARQ>D}ogK܀ >m6宏HQ4iV,=CPu-dԡ3HӠM 3U*p ''%=޾R}Qd@Gr\ln,M [&ϸwRU3L ^-ex\ +/wbR@/ о겧'@~wR N f1hIʎ>|}ob 'YEzZ6lH_-T.qch"."WG u#fpJlN;k\f< e M&M2]oN9uO* 3{ ӭm <}QsS~.PBIrV{tۄ2~^;X씡 z*ɬؗdFI(VfPU9 @zwǹEwqY*L~$AU(3З7jg CylDiuD]'At{P(CX]EHMkzuM9vܭ_PAq0"Y6h9a6|MWaԛQu}>)x ˂3+ėhfO8|ﬨao`8LArv&W4ml*tɴ>lt5)(nhgm?rlVi0!XM $GH< ~,oEv3qXd<_g?￱EC48v "ؗdRtG+xb.\͚S(.Csk"nO[180d068ni>\{!Qݑ^(dd`AX xTd"##.MOz)1s:]#;n -^NZ2&stnƦ"c,qS ^{%LP Wr;}eihdm-.Wqa6 [ JF5]Fji=]88%% wbr|~3]rE?f ?ԫlѵwDk.F Wk׆ücLNVѼO VʧBuYS+Ox EuQa2bرLC b -[!EFƳ+᢯DTd*?Q *osU,ccg^1)'07OPtԽAM_N"DQ } 7;'EČp ٤-*ܭ6|Ϻi@q?fcݠzә;(ذ. ճ'v9q,ΈD*YkeBWGRӤ~"Âk{3u?Lttz # bcQ@6%XQ2`X,@-N׬uFK] %ftԤLK /16!r>ur} m,<$BEq񽱹㊳sL+C|KF 1T\~_o ̖\ [ zpx}b% p+mrb]uR T? ZT^鷓9g cGVp0XT&7zPyo5ɍ%M2T#|,=^|ze_҅6"kyȉFޭr2nz9MqRfb}i>D{vԲ +SL.}Y1au v|, [K.ӭǃ^_wfc$W_]b3qVTxk Dve;_Jrߤ Fs,@Pvӈ7sn4B;>o1`Y2jŖf\ AuZfQ>L :l&5@f$~\h+͐/\e|v&'WThD]]كf73E U= g8٬u8Z+lkF9ont㗣6D߂E OD*#'vϯ|a\9tx,C%_xwj?b2y p)#8?ĉ:V2tV8FTzHK+e> Ǒ$ݩݱc->Q`ZU^ȅ9PHUcD/mK>`",?ت;(8_N?5'mcfqB`2ڡoaBXщZ]DCr7=U!Su-i~> ?,J4+}X5 3SK5tHaXg" ^<r3RBy#Bgڑ.q 5麟DD/,ha+)٦% 099J0/jgLYntlksO8j6r3$ZS 5!.>@-֢v/ }+Z~0Olh&q2~b2d[Pm>' L(h>Af2iٷ# w2{ڶHќ ޓi'@lMWX N@ctD20Cn .]t%5g:q ,ON8SCMy'rlDvh2V@&EcS ~`"RbFit8&34D|3;H*mN*wdB^~5%G?"3ъc ,+S*x.Q`we6ZnP^2O8Vw|7>۶G# m|>vK$𶇉} I|427Ah5^ @0.6c~4D~#X1-芢13`7(KT\Ê6. ۘ bLc&3)ZSq^¡kgg"Wn\.45] d`UN; Se^PSrT1ٖ=61LG+|y÷l̯q1hT%6A05.@)&K®%:Զx䂧=iRʁ) @q1yk_eȠHK%+j],5#PW =ǖrU};ZTNpn ?RU3FFZ)¢&Qm8+GV*v0|ѼLQGidL*4v/̘;0o-F!4N0s^Vl?_+ OQ$'xA“kcU'0@M(ɕ v;$'u͋1@}"KGKXXd +=MPEe qqcitKSDPb\̛2<)D5?䙿T7/#% "?)j]֋m:6@l"guNj{i >",^20v>v a'`<5*8HlOD%҈P؇>V"V\v.VFLb}2RvCHGb/j!<E%KA$KWU N(w[Aǟ 8c\,]..+ 8&m̒sK{̢ApE_+ A F!Ǵg!],)]nu\BI-tRʇȤf۹Rx$wp=Ag1ca\S]q9t'L/7Ǐ1O-]+hϼ*w%@ᠶ  9Ind Ê=.D*ߠ Or㤏[k050lhӶAmOh8M4TOgB.Ey^sx`B 9Txl *E,k! rƹz7D+.b]UE'$Gf15jFK pM[4kN[;xh P' ##7J9u#))~[>t`yϨ.5;R$*@6ځ}Qca@!>[i={zu r0ُݜƤ z|"2 1ɔt]A_ ~~<_܆KϡHϡfdFP ޻`Le%:\l8^)Wc#0+ߞH|؎G蠣[c \i~R33RW&eYTQ?) 5/LzW)WtHoM9g$ 7sBomI8N@/бÜRˠ:k"Lg͊zH&B%mClwDX VqT48kЕmur9ܬj# d*PfI/^z7zd %y`6? D0[2j1ZH@bTXboќ8?İcL9d 6$y9a!UXpA?9%Km :KX4T4¤"꟣Ӑ) U5K ӭNSÈMȤ;ͳԨz`$_ζ D ,]&8R/޼թs7`~jƫL:P.zonA8HPBaJ'u(SNܳVsJx|S䚋|?tԎԵINSE&F4#c^xwe$ULg Acj1iӤT*zs3Skab0r}Pb޸*/` Öz}V 5<-&aN`U}Ypy>'CGikN]y.{ U-=u<R#!$ >9v DL Z+^%3 Ab`0$&P[ɽ2# [A't-DU"^ɇ{U%_~KVkbZ-c-Vy|om!sW+)w8ҭTEf,a!@_#9Y<._uqlZ$ϪP3WrKQ%"J`N#1SEyFC8g')29vmCXz^ȇAD\OP1Djn1~`;;)QR/s T6;@6ԲFyjPK5.*xn|WhHV3xA 0I_UٶOQ@kda2 s [J3n08v@2R\A%5f3;߉h}Ѻ-uɾZ?cn<6hẉwV5G3&|,N/HF%2{$ DXjzOzVxZ8\W,#ժ&$meʳ#"]SzY@M$^+ oĎ1Ʒ 7?8Fj=p]Ա(7Ǿ>ܨRN11n4~>YOv0n1aoFDH2rW>E칬/ːYeץ"krIǽfO$̈' ؕ @=$;7LNϷņQJPㄛ;kwQy*C ]< !$ge*ut; edƲ(S+d[L$ǦQ<$ƥ_S֖VLHF>t,} TUA6#>[IR "^f'5;k mNwi ZH F䤷rsw+S6r A6mAǁL I|4׶7g ͈ZizRWӝIXI.\]Hg&`1h3 ?@ ђQ5UܧRиvرeG|ZPkE[1[~Fv#`˟4BXRؓZ#-X`>ymþZ 4/c|o3Rlo)9 ;dYU? c)9TaG9:<.|sqMɺ&a" y6?Pgh rNfj[w&_*ry`#$Om<:MC 3;Q;s KU O'% e3UFx#kNEß2ÛG04Z>Tb }B,BǛpؿE}ҍhhg^9OcX nItBvJUԌ'=]9}]%N]]MXB}V T&ř|ؒ[б#~k qޖ'lI&MZ/.r>lRh .}ۄQb'0A+hrn~uuhp'u$Jߛ8;Y2m4dPX;4g4M+fYPRD`Px*Zlxn[jcZSnՌieQz`Shү-\1 nHgl=>~#VemC<釖&AaB>Mĭ02<‰`8|iҐt!< /?T7aV']U"i8qp sztNB )X񨫞^:/\<@ԛ^ OkZi0yZ ,\Pw%7l㐱8HBXx{ó wXBוNaNV Vt:AU62&AΣt|M/fDD{ 8:$PPĥD$t!95޴/ҟxhPNqC1&z@-I,"z&#錈kˮM֪ܤ=_R3?:5fzJ2;J/#!=*X,1AiZ 3̉޻[i3`Nu7숪L#4=\tuHѤc$CEfhWm_\٥ö}p=YAU[3/M/w׀Rn{W̖*J!x1uG:A5abV9wt#%Ôs;^ ~hU'?Llbq0;o;(< sA B@+<{6"FٳFa -ewژ(9cwNSHqjKUtNF\-sbATj|1?R`o)W+ʋ Ay|we2N2Ǹ Tv«KpMqiY bD0/.|=g'n}?Cδ) /H̬{l@5 !b M7SM LH^srEYk@9"9ɠ ,Er:|S>.?G$V۬ȁt׃OkǕ?rgHܧ&LjI%OX>qb:)Md(,z [".ڲ]p zLI9V>DPDrd=2f)õ|lu=`!5fPEݽ ?0%gҠF Nƒ0:-g6 C+K@SI񆪍P)I DsS: 37Se2Yн}?Gݠnhn) w >ƈ BlkP4X<$ȰYd$s_}Jm+wUHsy @UN7OTFwhgq=n;yVTHDnS)h9: v[dצL iFǭỹ˂ %PLQ!=B`7"4ٶ91ߤ|_e(7^He^ Nw+ \ӄ^zw?M #[}vڪt4(#٬ 'qyyw!63@`Wt)o_ҝۈ{X^O$MĘ?o*GԦ8TJԅ,>3nʋvAْ)fj'c2Ox WYUFp /m>Diacv:Gdgw2ѻ|Ae-p@wQ9v ִ6sy =~$qVcN_d=iLq|g7U9xTlU:m8mX–8 F0ęU TV*ҮbH8LVPS4< lr477[T9~tUddirЇи_ "BOq! QkXfy]#-F{^i8./Dztg pX{MHEj"?<ۣ"rY63efIG4'w%Ѓwv\G3N{J] Hx_t5zsb6Kg&c5Sp^a!4b!|q.Z;Bň xəDM) PhX2n7̴[ʰr=hD 4*ze:Q n%%$rF "B~e wz9HJDs7mFj!fwϕabt=)נ(l8$aCsy#l)9bjؒA\Ϯ8Bݟ4揫L9 ݼaQުMxNc+v$z Q[nod3z[`mÞ;1AXR%.yfMqOb8ǫʭ*.p^*|y*15>+T@3_ځSHI]NG7jV!OZǒ ?à*`Mk13aю ?.9K?\]H ǚ;<'kS[I{֚cc.X IM1SDa7*ҟ"}_CYBlb%G)z^J|/}1ÊnR[Q`my/T ۂÆu{hwђ,(2꫆^D8r)_-eY zzgElu (f)Ȕ"P 4 mev[?bO(bEYԩL8YOM hWI7iu-pG˜O/_I=D80J*7Ş'^J6mVflSUQߵ ޶HGpzӲenS%k - uT%{i7B53mIn;Z͘䃉AC<ʣoRQ&}IO_wTW肪b囹˱nTZ^j*6WnS3X2<]r{:oY(Gm؂LKgtr 65؀I8*3VKx_K2:H0I%}#DFsU`pit hsZw^ 5<vW-0s_ vT}|aKa'8"`pd Yۇ2^[`WCz2v!3:mo/{{`);H.U=cLF;;o?8p$v߇D5oA "3׿ži^.u+yv>F%eL7) -Z[E5N9 GpŗO_T;\ 51Yb@=$wp{.6DPNlꪄU4wN1eDLl5CpX>ك:MzA~Jojjr{1X7OURy΂)%B\k\\Q+_\@![wFD{.cc}&0@2J[Evb?ؚɧ` wt`T E)D]^!v}ls06 *c mw5d'G\ieLin oi^tD/i7 H5\vA_ޥ/fXKFttfkyċFtORbKwGNolե*WCEMC_PrŁR.zD{ 1U5K1}`oTGbp\uT}UtȪ9I7&*jbrwfEBsaR:[bQmH#@9@ Y ;= =K?VpK"~ $VʁqƓ^җ./)dSRZUtJNx[bI@ eYLyKD_%a-!:h,tܭF@`m~>E~5 l1JrMh [s$ֵ")}JNJv"-S8zk[+mZB6AOz%Ao+0 PRw5@4qTTOQc)w4k*?{lf"Phe['`BJ:dLԾ4CGCk>Bn_+ǘ u7Mҟd&Aq\[g%v+O$H~c\L  {hM I.UAbgE ?Ǽ{>Wn$zQ*+!l}{=v4#OÀ?!X@Q@'1K3 W]qL/UǀrБX=Z|BV)jl V"]lnBYk)u1u-E%~FbHz3QI5$W _y1}9+wlԏ;sT:0Vz%<'A|:b},GM$qF}3;aM#d5?8?Z~j _Dzr ]H\< , tf3޷Pο$Xx9~vvABrc v Ǎ%ZMs͜I7GZe"ڤGa!= b 2 R`?r#)ՓDk\(//#W,JGz5A4nkVg[->38s0}8HrAezc#1{{FT%?~[/ph:SONr|}Ãq:;A%IKy؁n-HF@1~֞-hQk7\@nmx<={e[>S8T!_u-lg_g4U6_xPaNxz6p'/u%O9:4b阸^vC{ bd:_VC"kF/O[V2VVrK%S|]O^.rŲUrHÛ,h$~!wTw)!uwlmP(aRik;jV7 \|tq\lCϫ;ZEt)F!gcI_yL0IDW7ܯwKA8qPaMzr: >wo(݄]+ne'KsRm5Bt]UJL `Of1F=׎f>t_.4;T%>|ꩠqLd448tflc)%^`ҬPVoq[Vl̸ѼjS::(={ 5i9dIF},tm럽GN֏܂p_$AO A4 XG|cBmՁqi!#]~.sZ̰$ `ڜUEp!*JDǶOt٤#X?*w4GK/ ܝF諎<ۀA6as)M o`7  A]q粢HeG[XzNebv guw͚MHudaZJmЮ_kK% bri0n&\cy5.! ;<3j\mNIPdKݐ6&; #yeFhk/}ApQ~Qz.w\ZmIe~LKK5GPJ:h-hՀ1LrJp[F}`:_ rRzkLëzT'$W8xv5 Т\׉LqE//f+`t:r5ej0(nE)ɞO~%l`  &ZmՈ};p E7Ѐ|H\2xeg3 yZxv^ hkZt_iK*߰ABOM +g#$$h!xpxrdv$W}c$c^#$Khn|-n/-01EK:y) {.ߩ;G~ln.Oh bGr955EQ8oǣrGa0 0s;A~ ]Z^l ~S(8!Ip/_[Ze&KjSOLz D9au7v,f%u|7U -BڀW/b|rN 4*l#{%݊6ho~9wwO@Ƽ]g&ĭMh1*&&_V ̪@]r/:~$ao 9,bQ9x#7[uu+R?-yLO]а=S7Sd8K+lϸ܆VH td0\ @$>sV3į\H'uKhLK(%Tͻ[kjdE%^A`aT. ;=p+ːbL.ODĩtжSP\L6a06qh( ?!uJVvPDLg?ݥD )~}N: j*/ٯv.ՎlHr7->KILݥbiY+e4'~r$9)D[N2 }@/b4DsbU1Ht#h~ <ڊ10o˹b}owꏠ4?/Iߖ[nltT;gA9SyaA*{ޓ%l!0kDV>k"5b>g wK&7]g̅qXY;!&/6K!nbG;9*0 ,x$A1 vW8dk3^B H&Uv?mVƀ "9YF?[fU${ KyRNŖET!RHb"p~ъ 0ЎKӢ\%`4M]&HjʥNn"??amE5#9MIw%Gv߳_;vUcEHRp$n>Z3˔y߾0ev?6|ʇn+s\[KawMSh䂶3~9Yk!PPoE {"HNj @:kTQOhyHa`,2R^/3oGȝsgZΓ⃖8o=[4Yht{TNxȭb R5ׅrd@컟MN`/2a6!`U' 3d24@%zM\΋%)blt!|ʣ*x|Rb5js%>r2<" fTNO?IpH90 8-,pH(=zB Y4I?KZlۋŧ(w@-0;#徑b|Y J|F0W}^q9}kDJk$flԪ!:$skR,eifzCF&z_ʸ[J:۔Xůd%&?& ׿-NR7}bvmjy1/iOe F-Y ,-mc>_:>?@RBLn$iȆ9<ؠ7M^CN?Ȇ97 a|V`6_VO(4ou03GVuO2[++P7BcjQ/\b/ R[y.T8:l"ȁ.fcr*!(jz5ӧ:J*FrG S֨^ _td[8,Ȃ: ^޸dLiVkpT2j/ɒ{ZDb m9t !N, otk~|y'1'Ц9Xv$:>L׊: :KiIϮ3ubНMr [XjA fin)7AYi>lb!+ EGle"s'JZRQY2uwa+xvpg(i{V.=sM c/<Lv#1ѝ E>k׃pp)k``]ҟ(-~FvΛ4ʤ[ƭ/=%X#ߠd<ɧ,&g>Vo}>9NǢV۫(@{杉#N_"ݯհpyGs9J?"9]""1 +L.0/ _Œ@D֨>:+ݼ{/)hyܡ"1Zg~g4H6ʟI##)#-W]sZ g#["n)HU]֌PB1Yv(CVEU9_\]$)UWc5q'lUKTH$=,>d8.s3s `+} ʆ.lmB:;g``9;Ǭ'WFN9o8lK#{qRe' k9VLZ ԕpUIN-_g>[f,] ;^_M8֝gz7^:EĽ;0 4pYF5gFgĖQ[MF HQh(HYX2xg !W|.h%P3Hlu$)۽DJPEUuȣ%VdEp5ްC2`IhGst[YM?J)0 X[+xhqɇhMT[}͑¹.`Owj|-6I$1)ÒM* tW"[ukD DYYybc#K-fmа_:FMÝKwʆc¿caMJ TJoy$@#/$U݅@^Cޒ)QYa+O5UNG!Z,s$z]jNk"iXrӷ$Ľ]{G`0GPk w0,߼L-9!$F8xLAq.Śc y t_N {#ܻ؂LDs~@:2 aX?.}tm/nC\QHBճ _ PYXW}ӧUSەӰ ]Nmj߰- FF|ѪE]2q (4]u;ciN QxL[d ^zz5KnXSOy-#68 ;渂Ȳ9N6.gq@ȨsU)-9eHn! zHWLFq'lz^JlX}*vCdwFb8 F®($ؠi}|bn0(__="bt`F2ЌrTqJJ Ҹx/m=e—N3#(Yx`NrĉtcaQK@Hm PHYldËbVvt2xJ4 bclhM|;nހ=[nH9K]}fK<6Rj Bwv&KQ"uZnhu *0ș~b SSϥgp Q=cnu-$+߼'}S>3r$#=t`˲}ĻK0k8tn_M͡[sCvPmrY_ QNimMŝA MX\k(n܌j w^cvdwGAu}eg˯IbL08( *Ȏ3sΨb~x^~ͤX"x7EOzbm3T(\Т7@7;@=#l!WJ:@:ÞDNf\!& 烃}NXV̠ʖsO3þky~]"'X9 CS5?4ubZ6@Vڇ[ qb9׸ZdO@翘0'Mny*~H.HTohVwxfc#l$`NDJuxN&fʢIHVQnX`;Yц+[pƷs\ J@6SMBf=rY_%gx¯tƠ -Na>ܵԐ[90] = ߻G3ōel)#߳ HvH RDOl{-BVc)Cऍʡ{O[d+GmJseG-=()oSkOF V\G8X~!dmHqˀ&MAT`c *3Z#Mh%~lɳf4'Ն ,fȵM<T,UmOE蓴^L: 8߀?M4|,^XO5`/v?|1ōaQ//UE홚5Unc<גbl#PjkFTw82u<$#CLɆ^oSs іۿDALNn]nͿeqo3 0oKJUt'A83] /jMCDž0LnK( v>h >oe򢿝;i*+)Pؕ,Z}9hF , Ojm0Ľ+O''%\HPAK%c ? kr5,wtZ,a'q͊"ƃ}ː.ƗQ iخ V|;Z j/ZwCX*8_ߏ JT8# Oׅq.49IGY-vw#<8ѥj]ct[ qsi#Pâo&?e:{e2h0){yu6RGx,N/g5NG#ZH ɀR`8 hbMMD7)\`9oB&R٠ K?os"`=ZsTRd/ 㽑'/MGy?a=./#K;:E&PUNl(!:un0Ԃ`;;\.r@xܾY2 Fv:BZ'b`RozW&]ڵnb9 }oQ"JUҷEƈ =+J>tUM,PhY܏H XKO˥S2ORߟ?d;B%0g\ k9*'DtwsE6JO1U_!_yXA.&m5Q4"JP7l*k꣌=herL}?++2fjcUg T8pוsV K\ )4F{cǒ:0!P3Y\߫%&uбz%TI;,M!/))"a#D18P(epZ$^dji0c%)WqQUCJ-)4mzO ڑJ!~3NN*jjY0"mb!9tL_,4#2Y  5,v>68m[ }j8>a8qA3_̕dhzM)(a"{%UfK& yY^jAf>лH^-|»x&LmрWs<]3y&/d[ɋ ET5ĪH?)9b&]r|ު|ejެB RO Cz&)^Tf:|DNq6fb9B& r&!EHh|o#κOq ~Hٯ3KFl<='5ݠ79oNma?I.mrڵ՞k*ysl;Q#S6R _n0U\׬I"pM 7::Ƭ,`N3yc?Na)װO3ĭ4!S"v5sN HC)q3cЃ W VvgWapM 6^uHpdX*J1NT!!,}cTq[C)(CS#n٭g и MY7ד(#H(aJjy1DNn=M5=aԌC6Da(H[v^_I!WvCͱm21v~ 쁖P0H;J#op‘b.gmahDh2b݊([-0tHOs@\*j&^Rk>_;6ER5Lbu&8qE4YHSr)c\Uο*҇89&!8L԰T$FN2f[sț_[0nu!|= C{j܀Qtm,4CseE!|vi[ӽ1u Yԟ3R͟\V•}Y?4"$%Tae )BSڪc]7=Ohry9PsN*Ê~Io,2km2"mJ8rFxZ|qhx~ވDb* q|Лʝ *,JOg iA ݜΎ}1?޴FDŋ4DyMj׼p JW # ~,UTʠ h1Qlk{e]]< r3Ȥ0|Wn|p`ɏ2۹c&Ptt3D^v҈I,Zd exw*yS=l ކ+L@1azv(Y8{o<^0x‡ަ=2Bg^aL6*,B!s-{7@GKBnmi#mn ;vї*n|$n[3Yk8(6tMWZ6*5uf oފoպ hqI]R{ |ȓHJ;b.6GIqM0  Bs܌73u7/}t '5v^őLpr ~a6vlπqnȅL5f  'l`.!b㒎#fZءd:;6WRitCq'f.Q!'MMÌn4-fQpם[Z$!ntz`jN KE==+idu{ \#4 +VAi}E:2mIGe=T07%`ʜP"FnUor!~Q>t!VxGR2[2y9  güaXN^8~) TP;2a`ښ&O6 n(zBז\ J.{=bo+vqM;QbuCJ-Y|.wo 0 h!8V2-@uNuW s@oeܾ%s97 DDfi븑 XgS̐a&w__$jd /emCHC{  ,&A.H 6iӥ~JPM|W]Ժ 5ެ_ sk@Lc҉zPBc^s=~ 0QQ䯏n ?D`)Ȝ A6V86L 1ߓt>|;*oY1rB&sވ<n7tKv_o C.JB|UUU,7ucm:O0|j]T~q0~9no5AlHU F&f@˟X㔯XN*(O{c$5Qm=eMz0B4?Wd\*D,$d^) 6Rs]x0/f%pD/V.mwhcJPxB'@؉ 9dE̙Qx E83BHc_Nžӝ*YAuU{{I'%"R!9YpJ7B"!5HFh18⨆ 2vsG# ŘL׿~2Eӷ&Y,b|.Ոʞ4㶳撷y={ Z+PuѦR_!\dldzr9~~fN _[f+* >Tw4Q#gw$зHb\`BAҘYY&þ<︤3M"55& @n€8'b&N60N1\ѣ=2b.mb&zV*8uн ~/QVEN0< }~);CW1JG""1³ڳ㵀_,lM&CG3͈?HBEXZ:þnFE=ƚ/=xdnvg{,OI)ۀ~Q;t-(+*=,/ ȓ8ٸ|py&coR NP _} 䘯DiHBH[W5S(p XLr_0a%9f&nbtBP DYj8Y]q8( j'9A[j]BLX$?SBC\ls,D  ~"Hx.ެr]ѣ;_0ZӻީAt}FD.qOW01ۏz&}0E x33lbb~^,"LF{ 04Ϝ]?)g.]9nWR -U{ڟ>5V),}n/92ֿגw/<$L%;7|!`3m7>9J<#$ Ee&&efP.`KJІ=rNTf^dBh:InGq^Ň<:N#'Ҩ{f+?9Kc}hYxO,5ϤH\ ΖDX=Q9Y ={@KڃF4*R: _!|oW%-MuH|JJp&3-FLZz1le /ڭdhhɝ#h<&-?^oMΘW\O**p_);WXjAuef3G\oY缯-[*⋶sDf6z%ڍ>5yjDžO ^i!3/#T#4|,L)GI0f=T(?C/յ˾AL]x(Wؚ&SBRAhzXM%ȏU+7;ːĀdm_⩓򮴃 j}[6PW!NۂҾx . XtOT0*^zEq@&^BX 9ٛV^O&7}SZ!MՏy$&˪7*##HHmr ߹@eG)enxvxLvv q8GW;٩xV[A$]_5m|'g9!wbXգxʜ9]g]9"/K R6PzlylL\]A=u} \b9BKqO16#(\!v:#+@QH"{8[$d~i_7;{#$ڞOQR[p0z#^3бgO7N+Ԟi1AT(~"e3̢pӛj47]o%mSCdvXJj:X+R! Gֹ/}bnlC˒ idx#-?Lr0Z }ɶi]NBQipUPvdpA%U5FNAZ9V%ZN)ϸR~ggxv9;Bkjt;[o5];C۸,Q4{I5!R^ z%s[. O%JZ2 ͍R#/x2Hq]zF%ttp~|'L o7=cF 1Y&'GwUI:Gj_w~S AvW&rWWbUgon;da١16nnE% Pgo)}T -N\ hB@‡ȪA|WSA|ppƌwRr4+?rwۗ!!hF_` Ž KUoXxzz?VbߡYj-v`%Uqĥs2fBJa[2On J_t!cLA@Ɉ_$ ͧ~B8(-H|y=? ۑ&3gQ{HZ{T6ZHznWY)"B7=d*f7j\Q3wz½}q=~R +['"sBa sP\R`xJHm//E:32fܾ&`c`! \k $`;QTF(,W&v9AòH8 ۮ+28]/bIMzTTy5A+wpUE0Xeמ{T2!̢~ | k6OviZrk "97`*+p' =5olۯ(8;K4G_ʳ'n*DW;suC&S-=3].l7.­ޠLJI ѓ/En\jv(`lXvۑH{⎕>9dkFO7x<-ԒUb25л؆uR57!mʄ%MGh_USdm;,GTa\KZ4ߚU?s@=\=6*({Rb.!-H8.KjzkvK!D` " 2_rL]&>aNӢ<8!YݮQ& F'{ЮEݫeCMM1^Lh<5y%u_$9i'`qM}:"M @ vǡ!\||byKA?A zan@Y`i36Ȅ%I *4vLZwR^x;J-I B($V߆6w&\ KG:y`W''Qožüs8}%Ok #<]%;Uj_L;tk8+7APAQJ'KG:uZo§w)` EeB;" T^qI>]\ء6J1y wZIPa8&.3|: $l6k†`M-Ù>d\6I@ӋAɝʭ{aΔ 4n]ldiȶ0٬r`mTFp&lJ>)޽X<1-P/ĴeF^FJP萤)x@XCʟ0u3Q7]E)j+2eT |. qO8%qCD,Z} ՘/hێC%J@5@Pŝ'@i]ޣ8םtOȷ)ؒQj1wzs}b3K~plyjO09Fqk}nn^wˑ8kx0zkXR9Op'AS .ݕsqӄ˱嬽~#394O[nB%Kѭ6nAq~IBԦ4BW,rD7:`7 `ݿE6MOXKr2où\Z>u|A^kweLֺ癝hz)%Kc)68}EVԖ ]NՒs$ Z{mnH!lGsN]tG鶾A^ƨ~00 JПih#g20 @G 6=|U[txH$|I$c'<>`XI8`_1LJ$j*SF?0żM7m2V$ٗgWi FЇeL!j|q-ݯ=@A fV. aW+zL;t*gQ\ tn?ݩw x,0U50)EѓD&2;LȺJgkA=٭ύWWh_7xAMn.4[G<(YM}!l6z#~YĨ: փy{wRUrBv4GW `q(qjNƛ]#j!_!8c{en)DkdTVQz@͆hG$E FJ==K1eY%jKKsA6+6MϽqí{()DTҶ$S 3Þg̊\m-vx:g83& {-Umʺ=pa$]r1W<} \l 9ٓ-i2u}Ⱥ7zyɓn]VmWW ]B /66flp‹ gvEY\tL+j^7&:?7Bn =xFv\{dc{lBdgz8`A Ӽ[GwOYLJ@i4au_ v"}b8ݹ|gHm/i 8LZ :?rOK;a"UKEx"hɷ0c^BV`T>h,fö,=v+곱A'&KOȕiy̆.ΞqR-ݚzb tn";W ORƢ:wR6:R[ExVzBƝޱF)h4Izsck[Xx=.nҮaC 3GerQD񀨙IU}Yˈ,U"1Jh`FUU\d}H> ,hwͣo~Ɔoczl* ZY;k`_TNM u'S=sHZi"݈4z!C~59`Eq<$Q&yTxE(/AaĤ9k{B pqF cdģ @VxVV %?oc8o(\ u%(/O}O?c݀d&p1Ź^ދ$¿Z=D-aw@eMBD1fu&L~nr4A?+VS =r @kqpƆQ#_/:PB ~B:P 1(Ǝ Ft"WXBq2qe`ΰU$4q$?eƯx$N 7uط,}"x E0'V.U#+8SnӠ}/Չ-u]q G? Sӱ3wxMkX W+7thL0XWW+{s%|[,cRv=^V[޼\sgz; V9Aol L>D˳ l[PNz>紷}c&ƫԗYu^E靸tXwkP%u5qMUxN%y $ OcЋx" õ bJ4-uaf%$8_WʦTJo>knm!t6Slgl+\8 !q/ǻZ8B(wc]I@'} K+ /7;/e.Z NBYfrIH/=ԷZ xRV( jGS îѿ3?Sf%5 gsP41#d_sn}oȯZ#N[ L1i8x&1(=GK?:A?}F'n6BgBۈ=s0O;f ou?;.dZӋV\uS_4-q}a6ĵALs!iQK &^$s"95=0^K/F:~m{XgwVZ%1x A#·P„pzc5!CfMH􊱼A|7 U`yWҒOma?"`EUB"6XXEL,ׅ'>k8RsI0Jbv @svVO{.^īP#@J<jHR+^i8S?5\^~GeO%A1Hd[wM4|Tզ1!$ఠ<f#a|*nE09.E}@ui%#FdM-@ ?G:ƚ <{ヮ2hZCCr{ ݡ$Ai5/M17GY`N/o|q0tw i1*#>nr&ȿ"&H+%n댵>VX$ n)c|OnF>Tޒ/H!"3$s@׭ђp()]SH#Oszi7X?y 'SAҬ8ʎ3J֍_sB}25pք'ƣ^j@rBSo2'jlhP.Tt?p@eS^g$3s+#!yxeE(p]eJGc9 [mPQOXZm{ gH;~o:G 3LYfj[?]nfU{e 0֜﮼֕U2!k "5>Ur}եX篊}tQ[/,~ vC@|tXيE`GY+ʝ"XgLjvcOF&#IO憢̲Ykk,tW$^ ?-5yAp⫠1gmt- xOi8r.=rI2z!&@DUz'kyE{9wP]`159 lx{Rd*=eI/r`0^3]d1PO 6@gyBB, ǺF`?ͤNa2dZHEU~@I?ɪ53g7P|hTw4bY,t.մ!\i2W;|"rܠ{e(9O) DAs>]`{lZ34_]|ݲ2=g"~$1Qjd FD`7{֎ɺ[˭8a6VC|ѝ$-hq\G`J Z R\\y@^+aS~pc;bs}˃xS Meg_P9" l:7T/-\M^A|O$ٵh"Zp̠ $p"5Z6 =K†1 ճ\a> l_kӈUώ -/auT+6dٽOՃhQ%ByxZrft$wOQ-K>rbթk'ˋLof ;5̬{^罚f[`1 k%5;S%ƿne_K8ȹS#`EvYޝ-[BѾ΢|㿋6f'=ZOaemI M$ 28Zf?#=~a5JBJS١"#ϼ$y YDS}= >|`;rp;ߤ!(B>cWF! )09J~ YJF`_k2*$C;Y|OP,~b-,ƶdlIt\ PÈɀ }PשM3,Z8v逴Sf \ a߇T&8$+ob=gin$I+!+ 'f3n]_PNyYZ^!bZժ !cMѺ2fڬ5|tERJY hOHx Tea+d!SJ=moգ}E r]1s^VVwҜJȫR]G^j_K'ܹS3f"# xdW5 9K{w'=[<k{yt{4uz<TLYNM u?oG Y5]=gT,dQFʅ߫9>Rjpex6#( *垺x>vk|9` y *U{bC leUෑ>bOa,\ s.R?X7,V.U"sචF5X<R<Ϟ;sկK,0[sesH(|2~-| ) 9"ĬM@W 8Tv>|сDэM.J,'3jP>O̕N'[Om/|Z9@-dMԸ LV-~Y&5h\rեU6KtH 1a`)J+ dmѝŕ+ J Sm*gl?eQ[y(H՜Z.f; -"owQ^heθ %Vm坰 LKއde.i=ҏ146tτPBj bC[ḂS}rkNGO9qFbeم2QkCߎES`vI%^kg`:+WpY&ɪ|g59{PW2BrR5611f.YZ !s1*]쟧[w)I[&e9iAUjtu!V7q=A1}qf[Qd_wPJ$#([Lq'ԥ؃‹A.(3JghYvM;&saj7BruLIK'+3")<6 /`/lvk9~v@N%X;۽Q6=yv2]^5:#Mr9 "mc)v̝9ER`QTb9߸(AҬ" ~,uWB##ߓ&jmBk %ezN1U(P* F芑|U,X Ϸ]6o{2WL9sclr(\2>d[>;!JS!0W'fh}IW|&.ݘ*1G$' qma$!G>ZͣYDXfWThJKv܄Q)4;E𾱓:f1~ܽ< ç,=BXi?}C{tvCLxc\qd!Xr҃iLL=߯·+(EVe9EUrn[Mbt_FK^y<h@g?шs‚xE. D[!楓h.&˘@p K!-qx}|ܻiE5'VIL[cRc|Oq/7ADL-Xr#}Huj7<@ /`̚FĆw+ aBJΐX˙u8W%'NJLQ`o@k1Œ[1@5p Tr0ZO&JFN{ Gٸ׺ Y#*2)*A5uJn)! z(Ѡ׻ ҷ05[O|&FXmNKIb-a:ʝ>Zޥ c_JC"= wnc((^`IoH` Zr=ѱoUgGD .3,8P|?N ^ӖGUlJHshf4ٛ:}RJ+ڕW {Ra4nݕNھa2`\͓P%jN6)J yJu>iTvež֨1o(Ȓ^̙BR:QWHݨݽÑj-xZ89q1,zgJ,aRӋ5qSpkUR <÷K|B#_ ࢞چF ֙S0+$woH_V-=&W`zBQ,"1/;?ulpւąXQ A|]K?)&lG:`[o KАeM,W;AF;89i1Ⱦ " |rj ";e{~K;DOh@:OOާf㵃#|[h,'z:adIweDE]nz̤ V{[2QG 3Q9U BК sVp6F/kkD?&]t :.;IKY9܃"f9e jq˼jAЍ6(?W_N_gZ:Xm k g} e+^_%=o2Y?, PKϷ.쭼OKSxx8r[3N痦bp^d̼Īޭ&|ʚMj#_nRgQ g6]d 6"h;7^Y=Ǫ?2($:b⿳,eQ('d,% 'Cb3S\ YOH+󻕟/(c3vM] bjx=gH֪NiNlA+;xCwwaD"68jc+PGigN}$(8`A*"~*ag=[W`+CKR,E] _.-c/5{bT~ؔ,5\Rt5wq1Xkgm/"H }o$ ̼b+Jw$7]&.c UF> \=&fѴ(掍64 W͔N}gq>U3ɧYpvYH0vBj_Przb(-t"y`Med+2<8=&Sj(ХXpwuGA[_m\t}п#)sR+SNiI!K#,IW^590^ eQt%N2j,qKǦJ(?Щcuu Wp۩A 6/_C qjvs%o =\wڂ^$uΈ Ssks`,L:MYn JY3#k;DHdf߷ZQ4ਐ#^ТI3SE3 ұ  @J]N t!o? #h_HI-o!IPspzK ջ M¯j|8,N6wĽʁZ"W"sŀp\6%ߪ9*?$$ М E!zeD\dh;Vky![zBTe:Ry^ۥhE~{ֹQ%\0dTѽ,3V?~$,+>ЅKe˶ y-1mU}T 9z¦6[ɝ + wV il<ϡC:XYqTJpQg4.F7P$|bs;6.I,@Ilz:?9en9n~Oy{/ k 5]u͛qe4BPD:и):=4Ri.npec8 eB .޶I_ɕ g2Q!!Q[#OoҒ1TFv&tcF_ \({wQi-Z]Z!Fco~#  /SLmd`UO 6N-1dB˦{tcQZ"Zirq: (.2FD3!Ief9C>%hi9hyIGɼ[i² #&W< _vL\6'YZ#ռlGj!Ƶm O6`K%˲[vK$YQcs 7aF8AoD%; cMu9lnsݒ߬Nktr`Q}U КTVqXaU GT0(><ԍgEN Da"X>@{G3pV3V ,2ŧ'G7O蕹c)Ʉ!B_B0YKl@y tG%c>6%Y:'sn"p Ng*րjJLKTÜ'3M^@)v8ĴgNsg^KTGGް %9QofO8JSwQD7dIA!N`cbUq}4`_ 8Ќ~8JnAdFᯊ^?%;QVeu8y0Ryo83ly^=Q9RY>h^q dh|)Ifv] 2ynGޥ/yf Yi}43kG,3VMW6:-45Y;ZR$QNu+֭A<:2vW8:ML6wD0Ü2zAN&^syҊJ7栋ݓD)ަsW*x@/$VnF2`_wI@q}CXgv tfL=d\)/~HQ2?8 1jzL&GiR2talʦy[ݬ3h& lTa' EAߠ6 ܑt@'dInxNFtG,rEfZn6z q#'hAMWoz@mVH, ּ#TuT%³5ƺo^P1UޔQSݺ|Qk:nZf06q6FILt9zET8Qoz}ILsfލt#nc䈭wK%eX};>v h'h;uxT\& Q=Uh o~,_^2-r:)Ql+UB/LB3.o Bѥ%1+Lu[<|eeقx-C͑"CAG1j%_6,HCpX6q?+.c"`:C~Lqx?x DTz9ƆL2 '[f)ieՔySI`RKvH3"EASFj(ta!Ւ ;@R块tб1؋_B4Bᖟӈ/~ЗTv PV*kN*F7Z$1,[* sw-2Ldě%`A; bۋ[B h Fpc϶$z(N;󵉁1TGt1JXJ6껮UT޳摌coM˰wqPe o q$SFC/ լ̗h?dDK_ZU5&Dz;,7 N;Nj=%)axמMnQ q*2БResW5%[clyB}ZQA'A>A1ݫō>H 8ElC㹻~_eOit1HいE-{.ng\R;S'럑Z9شg~ ňGn|d>=wҗPki|r~@?^}G]Do޼le0/!FBL.:4{{?<O<`dR:D4{Mt F ,uQDZO s!EA\Q*[i>hlB%O։ũ0F^ϼekRLuNP0^Ӛz39[s:}%z(u20jFۏsEmWoP2NONjj+!d`>gˢaLUMcmC$dہ'-Y$oq*Eٲ=؞N*FQ z1qUWTWg!%xX҃=SO+" P@Z(_DQ7 Δ s ;NkN(].{#;5+=xYawuC##F;ᤨ- (~>"tI`&G7qBGSku+:E"e#)9:GO፾`A$~bk$.{?Ct)Lwaaby+qAzkH x\o; bֻȤEʂ3īOAQjOudXbՠKz;1ID]Ŀd-*c̪֧rIbG Ӭ3U,,|)CAZ}mVǹ0(9u ;vO-}V37Զna7–rҁBP"ڋ58&6 m+;Gis~(pxmdž7<0dpXdu?c1sዶї̦Ğ g~@7e\){IVOB!e^6bc *1&k@^+B 5C'Z#vpқk5*_Oi1@ATb7bMMARzN.P'N4:r,G&<(Deu.k:hC ]So{8cYqczL?跖0r\bmgLqk_XW'lnˡq"3C_%T;*Q(B}AjzA4_udN /%T2.I\i?+p^Y"]qIpV1GH)1c%]ִ=>rH٥*^ӁHe0GcnIJ#P l=A"0x^Uw11fF|J~ kdhlxUOr0.)F벳}q+ 1Ǜc<NTT~LB2ʵ^ԞX9;Rվ7)}+?!qwf,:<$Wɜ~[1N ȑTg?N?J$C|8=Rq*mlĺz "}AUoebR0 pYQ[{s"JY+,ƁxZӔb>O]0ۨ>16G:Ə[Gf@uF"Ē"6k&< u:π(-Q9x;㺄R2Tyӷ5=GCD7#`YN98oҔHHg3 @bYbORZrFrJ+^EJ <,p 5}زHpPF7Um8*X v0+GEX‹_er?<ʢWė+17D@ml|ųO mcdGɂ=裛],fW HK4?W1Z/_ B襎j ubxCo:KFTڟ\nj~4}L]޾C3i'7L6*ޮMkSD_X XBRFGEtkٺ pr}+g@X[␺1|D1JE=i>o(rȬ0l~ [{Hb-.5Qٖt{sbWPĦ 6iZ5~ EY\"SK_2ʽ).HNw %K'6 3TǬ5*ZXM8&a150"f<c7^2,7P!rO ySN{z²vIR]Pk]Cn\~hFWDȿIIACgˁ2b(UB5v'dWc}#+Wd n N{6ػ"B'}^pr6ZQq͍>à 0T6ĪGHϽ߅_MJêNF=)~+b4@$`*,?r$^)t4+4x'IDϬBh<-l*6/q?f*<i2&T._4?r~$7ثqԤjrqI./t\zPx@.=RJPt/MWioO[MHPǻT@/ ]8v4"adjVy޹SMztAB^ωwouI4 =|xË9$V-}Q=ON4U)B/* ;UHKIӱ .ù~+PIHVvU9n@AlT*/(J ~3=!V2%8;럝Kid`o[? Ï3yˡ4~t ( [#w-f_Yˎl =])YVe*Rjvdd櫩qc]o 4M@S;xEb+i:Q=WmqĂ/,\I.9Xzd "\wާB %4Ru#j[d𛋒+W+$a~C5NU(IzRM@юed( H.Tmy+UM(W1EƸYaV^{}TF bGW}w|b.^/̲J~ׇev13+eEoYH3*lF/[(U( FZzZ 2f3)|s^8e-Ai}Dhrku2ٿڼ7O(f' 3GyHo&5b`<LgHA/D 8=QhcatafS|vp?ry`Fb>CQVLz AA^U8@N½}|L^+O#rIgO N۟W u>JUD ;]OUqO,:I 36 kY"ã0\R8V?%˒l"7$0z@ 8/6>@)hq-x5aS}FE- K/Ƽ{SvV"歔agfɋ!C`3$򦢷!%!WHI,tploVPy:Hqonȿy`r4:lZ3q!S:}*uL=TGɪ?,z%I"wvy2Z!VAS" o_3XzxDo7n4r㔥+&p.| 7al%G"Ia98Ϟv ;]`x:.hGX1;*o`%l u qcX5FŀultR`S$+%^>^V|kH!>N!-IxTf5G*dCDH10jkNm:D?tv's>Pss_-x4ʘ*Mf|eέ-Z $D$E#[rJwXSub% qp;R.G͞AuEqSGB$ʶq~qm=d6uQթ&քT@cUMgcWWE`KpXc8j@e|Xia,sӘFb++ꠙ0#kؽvӿMT0 l  5w|N6/{d\ã]bw=fr`]CbEu6q.}apg?m̛dɟ} u_nLozљ(-Cx%i-&dYf%tqvN;hEoc|v-,6uᄥ|Tl2~Ikξ6AXc< lsf_iy'6p &j._ߜA=qUkQl/spoڵ?UI\%\>3- ,A mxfm\A /Q5cGժec^@dN&V{-_NuфC֬#!B"m'3mE-4}@E2%݁ !!uZ(un$MXe/: *dϨ8=1T^Q DzE*VV,fKs—^" ܽIA"7޵,7LrrZ3-Nm1YyFX+W@I\1_|PŠ ~HNfi3ntl@YW-$«=#<Pf(R{,F #%w I1c}=?]9*~ l{WY >eۣ,ۀu&5 #A[s{wXb뵌w#&e^ǐO6(,:{_ZhM ma 3Wd1s\|Pbϥg턍H0 \0Z` 3OC@05JW\# 4B`l8%)M}FԣO}jx$6cFc=&{}"J)QwY#cд: br;3D& tkdʁutylF[G9k!\&)")"l g}w7ݻTѧ[vF[7_\-"/vB.PvqLPb4kYkVSydDo 䤩9UeW<̵‡='ocEu颚fz4ڏQs̋*hdEJdfφp $6|!Sm3`z408/f+d %:n3_hx dmmeDFDE]v~0'y@Ap՚c)}KmxS|Q /!gC_C#<&y} O Uαg(`s :bY.{zoSy#52n;aRU]ю=`Fz 8)QjMM e%KNG-',O)) } W!z.z Pj6SxM똕vTy ݅n6Ȑx qj߆q[o(F#V2CyZ"iiZ {OaB~;_c _H.l`i칄uyҭHO̠|;^RT(8j>Tlra22y ۑ@Axޡ[pQ&m"pG\6n\R׵*pxL CeJzE2TG8-Zv5Ρ*g=aϢ 0= h1Y=\BQ>d-ťHMO)czUώC\QݕSmp j by]D ?t rh9Ak|$#ˠ1+_,t;A+}.cجb@iS<]_p.M]}[Lp`ETU9wh%+Z5 gaYŔ P 0%c1X0:t2l*O p:戌nQ0NٰZBN=hPTNYL9\ }?#+*+kv8SZf[]ތ *ιՌuٔz&N ~F=DJ- OuGu~2CWː!kϫd4U3}wC(jSi.`"Մl v[ʪ돜j,{!H̱x%U…`r` V$O?At/ 4VsE1g1N=2T#7 hEJx^B(_ +}cҘ ^ w"َe4J!u|W%Y0-w;"'EP$[WT'j$7WVѐ3yCU^P bZɛ|5L Y:c-GXs}[tqSx^|fM lL X1 TH=g@Z7O'9C.O oO:&#丣ѽ1N^7bzB|ΰMGg {`6KJD}~3c&UQ-IrMV 1f+VjZǝyrDaָkVz'@ o{7a'ڭ,\VVȦsK ,r.! rbiss;a2+?SɹmЙ6YO-ԟ4CW ԘGurf0mSxE )܂~*<#9j>}]kR&+4:~3Ԉ$&<rI-Z5MN9? Y1q^[|txxn/%2g9dJE-s&|Q؃%L#}lh!PXrpZmt,Ѭ/hϫ~Z&r2Wٲ~%[܅HY6pVԀWswPi0)%Ȣbts`p&GbGVN<oQRM , 󳋣La> Ȭ]GK6f#ABҦl x";/:?DǡyKf腪qw놺o\_Օ琳 qb[\|i!&UEIm P% \'Gi+Ob7 ΟN%MmmJ죴`JFxE}>a"u:٘>#՛SXLTLN(#JրmAH#Kj-Hu5AO H _*>/y8kof^K61tեSvвHH^2 b lhؙ~{+ n7AF)P}b:M(v={%ۻ@&fjIa([K=u=5@|]WJIhu/t?Λ+UIQ\1q(] u.($cPPC 3XCJ*PPcWHTNړi|Gٖ!V"fydLWivt/#, ڪ%}>9j> O$a$.y{/l3ۣoC q -NCאM_1__appHAnF4~)ܑQmEOZDt_|)bq|Mz tr Nu]-E%;\zH) ͶqC|*BH.DIC l̳En mz]IEɬ^D*+zYR= 9/ـ qcOYE~) -^ke.fo\YGo;wKe($y B:@d߅'ACgJWE%G>LZ4k6P04^,ܙIO(rz>A@\/A]$Y7L١fm%)*k)9PЁX3j[#X[xuGFs„xhfsЇ9bX:4_9+ &E5.E!3dE ħ2ɔl ]'Fz4- iLlp #ܾkMXyT ` aWI^(+tb~z+ KT4j~^*Fsp8uKuJlH #?2Km{99yv$mx?'aCiWkHE '>9m&Y Xׁ15'ڕ3MQJN:7qUi6rdӾaKo=2CXh,J,ǔ3nRj)LV?u#95Y3Mֵ|}M6#S$p`:.E[@y.h0Oh1ߦe0|eTh"m?g8:豦G-- $  "/S_K`]cE~(.(pC4!7epldmCtKi  ܃`O@3'd  8tp,j%\EbdLPutlQzkDb{Eאݫa: .3r>.l<':nh1ih)Ε~ߍF!5=o^<[W\%SUzpZH6baJK=R)Q?W=D/E*bFHdZ4}ȶ 5m@=ܞTo:舆1W;.XQ/zBq,KEvp2G+?KīDjɎDr+:7 KY)^@\NIUOHG,LQ:qͿ9 d_QwG$gݬ3Hhp[tm?;xTHЌW\ٳ-y$?j`9/6l8CRgj8U*(PUGxz`®N(Q;Q@[jj ӃA-A:%&-ne-Tve/3RE,:tT[?<%4D޻ zM͉xt1FaY3 .c>~?29.d DbЮ#o밙T=Z~d:/Ȇas~(rpɏV7簝KE6}$}bM]b߸pmDE9j)7բkN(YZFN[0{xQ,4m5 ϶9? Z9j q⛧fZ%PzbӨzP܂5jnKpZ@oNGXwp$p7c_A*DʴFeq_n^btfcX*}.[ jfүǍb9Ơ{}+\]olW4rS5_Ok=@(myalV7[Cz3#dG rJif,3":4^RnJ֍G ?b 2OF|2xq䛴%K rC걫xm3MZ+M/ d]G望*t@´8'œ[}[Z/ lV)GI`]^#V=.kE\Op,)Z={OQ,tOދ+qg1#@j'?&RpCBVVl8H8_= E}bNUS`joiIC T#;먏":Fȍ>N$yPTD|bMDBt֟ͻ|uAFPg3R:-:jK%])92,ID $Iu7;ϛWWNQ"%k[3IreijPOTژR3 H rOkT^\Mk9n'Y\TmĴYW\oS\j#&hjQ0j k,pYftp3'vԚftw40fsރwxTk[7heװ7ڦm 1].k.[MSOQN|+߸Ɗ^㓢lB3+sLOJ#wILGߤgB#FXʤ}yԢOq\,Qpvbo~8MT&%ĽKƉ bʾH&!'v~^>?1/+nBW9a!C::s Dᖾ+le/69AF!FH օ0䓃青kd]9j QЪiZ3nRڔ8W%WI;^2Iῧh(|٧KD1vvg2mP,x#sFe#RɠOv;#|?&JB!b a.%/7ĵ2!)*s./VTecJ&۸sW} rREhߥsgɮ?;x_2ĔvKvO:B6+wiL}\r f_p5WWDGn(F+gOFGim737g?Hnu,ZR9QfNrWX2{`4k1aYup4&BZUryi z$[BFY^1~t(I ykB:*"H.0+Ixn#@Q~ `$Ts7|ҦlCMDELXi}d_ЈŭF5 "Ec67G[}Pp ~HE ޶&3?|1e&zm5~ۈT2M|Q;)EjN H ?j0I|'0RbQYve@tU0в33^ί+H}5m:UO°WvT46O3jNX?͔̆Dcu+$,hDhf[uvjt| 6 @DxU|QLj<ЮX+ʳ@K#;4L (2p׾ft91{3Q^l&HH̞0C/&Àa?T&BDGoYVf@mO./~w>̒m+y徟.6; Fp^dm" # ZFAU! LGm4^O2{n i&uV{wHӱ}9,\#3̕M)`DC-IP:buWH؄YZsvEЋKhӯ(Rkυ3% A|LK(R>rdLgKnVO(gy7![Ц h)t ݫ ':/=F[ EM# :;!kՒ9L`f(p-zgٜK_ʪ@2zT|KƩ0빓- < !9V!H-RH5Z / ~#ЁL2r.`òH.HO,E5QskOI&9G6zV9~\ʒ]#DnPApTPE_(_\ ސn%dCP;zlznd%rc8,._.w% '0> ݘ+TΪ.vh9;[˟?GUxmfc+ g!'k.+|=/få+L6, G!PL)=f)BY]n6Q. x ̗i }/ՙJ`lUY/Vv/ ܂;uL=.;zy2+=)곱}ˍj 'vh5+`v;jY%S#HAauY/I7K >O=&\Z@*KF^z2?Q;:I`4M@"DgKmwm%V`h@FS GJXo gXH{'&*4A{H<7Y#-FA}¥{w?ɐ 7SnhMV,<K;2< <8n NIJ +]H%'ɲҕ%0I=DeSx?< [e9KU kϼlO"W\H;Ѐh_d#82f7\ien[OU8ߧ㧘T8;D"Y2DDI| 3YbX>*0C}]2BO",B.1I>3^Dk͂Mؘca>Mѩ+#cv1 0x4dXs4M A ¡ýJ&Zt]0e:1LB! 7Fl\VkKƜot Vd;eT:WޥwޢpGZQDjZ?!rݚVm_ړQ:̋O &p`B)"TPfi[=NJ+LN(NvXrq%~qd4xsr^f c L84~Oכчׅ2=zBӜkX #o'gѽҢ۵T% wh6bb$`y]l`,YttLZ"w7z&HCmEg EH!եz嚈 Ȼd_^Pe-\?cx7=]a뀖aJR1lFnVSN 6([,-gbۓO/(NJ1I~fF,Tduf /q/} ӒE~1ic)9`*d٠ Y_wz&ec XP(czš~E9 /,pRXkǬ#vVIf]ʶ@+Gf^#:6mIɳhbQt"H|$hzZr!\UyܭK^OmӞm++kP904=*LE9o,Į.תDgIn&!r'9*^$'z`ر )f*^ܨ}7x),01zlKOקȹnk)fA7p;1OPb9[X9aL輡s%_Rp'zxc?"|-(JmT)DGsc:3Z:,ڧVׁ$̳q_s09A>DK*9OQ|2:2rö,,ۧ[~`b謋 o7C蒉O'[37Kb.o5gw6~ `(@ . oaJL-RQ}:>r3qO}IxH;k/z\Of23[CMՄ}Msc"/9B=JG p!;M|.?0L0`:?Od] .wuxVQ-n-:$΀lB{l:s7g.*햢Nʑr7DJUgrv梧  t@}er Oiqbk21r7%z"3Pnm fPIyw`_gϋ}Yfnr{ ߷Yk_XG=:0ްe%PJ /wmrNؿi=Ą3~lK9M 6"ByPKBѧsb+:eH+W69)lB%/dȅL$u}.V [x9@et !:u}s!ñXQ6lp_:/`?*-*hƤCωLq1rf!Y*GC]4 IR3u{?]RZ8b{jDh渁Cp/xtebښO#b<lr!+kl6Hm_Z&AF@y5! '*4Qp.:  oTW[Gv{8;JPm(g}kW"˵[1#clnVe8ὢHx] j`AB3 ?"j2N o0l! E\1:)rD`E6] \kϛڕc!S'0{ kpHM;'Ea~;e@..8\.פ*Iaw'x*~_gI<`}&z9fQp ^O2 ܗy{Ηم ZP-:fp×7cqNMO$:p3KYүlxZD =Ej( #+ طkU8x `t*Ϟ+o(DYL=伭Y) E9O $3qi@)a*vfN*ڬ&$KYq ~@#=CWt54YkXT#68+Pso\? ~>Mfc 2hVT֋.Bc*Rd1Q! -ڥ&O&Wa[m_V!,P]O I&1)kWm&$V q79q,:H0KG8GYzT-iW`|#IWx\So?uAl6upn|vOI tu_Mi$E4"^sW [8j8hsrёMkR_WOwRmނLkS#Ңf?_h'g3bt+I?q1\x{`okJďmR04IƐo1$ #sYuذhDu,;i!ms.#+F_ ,_ 1äiH@Wj ΃ ɾp4'C Hh| z Bs寿/qc/t`eF 'C\P8Vڙ}Β"J .˝Q֣z!%VpXyٮ/}uld_oQguU''|̾:UTY]2(xDʽ~⹰{oG+Ԇ e#wC:1BbVfpɞp n>pm719h- <דQ+or)8m:CAeE9ͷ/ Z?L"iL,kߕ-Qj1OYY+1|QV0_^̜N 㢎f !,D} HuoDq6k˰|w:^. M犑/XP_?iEY'^q*ZzA^q|1tx 2-x$]yJ d0#-Őo@8u1b|z04MCqu%* יM!.:re,/MTd!ID^D` $D~7LBEy3‹]0t$_)iڕeJOVs 㛖hƉ, nɌR r6-^:R`}H] P:9n^%v bsU4>l}[_g+J!{yzʮvp?Ҿ>j+@br^Ba[ض8@^x /}K 7N Ie8ӥ6;浚j#(5n[f;C+ahw0Ed a#چOxkIGR3Cǰlhw{6#><]~d\TU ea݆XKW\5D;=~w>]iܝYpyQ-mC?-pnVoD7>@Gԁvu}Gr(Tg1,ix4jRX.srĝtkID1,{LLI,DUJ35m;e& ]@c$@b'yc8BHy[SoGz= H`ԵAʺbRxFDiwSXOh !soGnr": HyZ$k,JrCRuZ1}8vᢁN7ΐ(bCyUk%kQfj}S`h<ȣ-`|݅Xj(|ڇ#-NM2RĠ[+ru{M&%}.'(T|WC0B)9@q~&Dkۺ$F6n|Q6NuPVX )J7gq5`*"`AanSt>α |n pOBǿwPe)NWϕ"&oA@9S~O!E2ZI(cZ]xԹUC B9. Y&(|)4dGfNflQ*LH:WABNz/|H xltCMEֱK]M6ç!$լ-y6p{K UUAwHXAe]~x=M/ARy2:u;(=?&5r¼8D/ӎs3; x B04tPcrW@,qP慛4pM|X5EiZh*- pAT|L<|4,64.-Iw4Vɞ3گd+ݚtbr=](sz^IHCO9jo[ FߗxfMtC5?khxq1J68]= {%t ̰oxDݎ.g*W=oe(/ؠ?}d bIy'ߨWm 0с1t2ɇH>)o\0DsicuRɂVn^9f ~c| |;ZAPS߹e2[.5R9C"N8A6-Ե#l©k*[2lYĦ%YQ;,LaeL8CH0-G{`6]JquBseb` PZ`aAIŶN{8F;N&`MC(=~O<0[Čՙv/ݭـ $\‰yqtF0{ahHW:U)t``ztU(8ޝ}1cIo;:"o6sl98T >7"BU;a=[ln/ ʰO-?dD6Oqyo 6wT(uFz_HaπxyԟűQ-d>hx7흵`HZa&P%++|2'I`_1\ E l"ؒC/A7 /JJ I]xPqjEm9NwWntPZTE |jUś 9n#)oΠ ]/XlU6mꑨJ}ksY?V?+NzH'o&suHM'$In)ڝެ%En"!`f #˹wExrHi@U]<բ1\<$>\@I-Fӎ|J.n!5t Z$O+Ob-SyHʏNs ዋ\A€ 'Qٜ7ϝhQ]'cw+1DaT k $< .Ao5B̛fp;ptP'.cV_[L7%r.1]O'K'\ΟV _R3*,s\ղYmӛmށ|u@.C+-aDH]gh~u#Y>#~ tbSa$;xcg/7YAGaJ5ўܷYΙ2DY`ҟ"8N7'ޱׯe &د|uHj>_$9\W"oY0="-<kO Hya=Gn)F^M VQV?7?" $. nT&EHDZXeVě[wKc8(RN{[w6@tkjT~=О)֘ H| QQtOjG'GCtn~Kk̰6ͬє(!;uyA[]=H[g77s$ǝ,)9QXV@{muG`lFiބ5GD*OEZ/n?HL׉]V:+.+D(UQ11v̙}iڞҏpF@ՎiCD,~'_و^. 2Fv}]jSRt%]V i+@ IZ)oH`]zn6 r0Gi90f? PƻAG eh? 9JLNl HyB {H$B6M`y. I0gTlX2ZƭCP2b6R ~ο!7]UQ/-G7 7CKd4]2KDuT )-/tQ2NY9,?E"Z# y.0 nTrg\up{lChmrϦOb5zMk\CA|%@2FDQA b>7iq*@؅;Mx ޶4I Z9Zs+lV1^rUg,$ĉFh2/n/;" tKO˵&*EH^^CEV}%ZbWOd?ԎA@ p a}H-/JuZS3fn*`*YsyS40(I〛`|;y9ǣ/-} h+%b{&Macp?0v‹ډ aïyv'S%dv34I$17{*0hCݞe΃}k&vmyd_esы{n9 ;€I]4CVֿvI~, $qA`b SX2X{.%1z FYMF >cu;u>m8qƛA'Ҫ"YGpaT $N_ Ep3z̵h瑤},ua9 ͕u@f,)~{6¦"PEǹ^BO.d@&(T a6Lvٚ'JWh ]3V-@uzLPQeca&of\\ue53ŖHdP<$[H$HBJX_EL3^:_QW|'Dgݻ7Tv:1-ڊcKJ.LKkӺ^?.,sJ{ O괢P ϸ2\I|KRTN{fEٝޕt%6<.gϿd:CM5B@$^ hLqЄ7%!͙sƐnۊĦcjGmlp?mI|`fZXT'HKz删699nk}puj́wGpS}PjNX>E5$_\DLI_>@{%a, wwTD (M;zaٽ=ワZiuM'W?L.9n=n L<ǣ8;mM$_feYuX,ﮱqA K<" e-`ǺHtA,.) {x*`n$pXjR|7$:vKgUZw`n :0Ғd}$?lh'^Q {*)nr:'%-W1w;g rnN%jK]ra9hً*d]PfbߞГVx9M!_Aht2K'jOb NjaJvL@ӾCF# /<^)BD3{s AWP ˞kw\E04ۧ' M}6W'!!dXS">)3q-bO4,:5彙yxc"%>XnVI|/CI9u]ID5A4_aguf %Z-nb“K]cs@s=S '/H+`iD-\ʧ-}?!r1Uslɱ- {'ն=Кg?@_X+- WΛ8́nXCa5%&wަS3+6)9~Ol*AhJuӼpsVf' lv*,iﬣΠ"isߘ?ܷYЭ-LrE'f;5*FJГ6joD|`I- jZ20dAڂF8fBq>:h6(Hn<sBNPClc^ AY7zzH}^na)p &db6ՁLc!.`}7*4(xoH3[D敒-R&3RTet#9gζs]Dڵ Lq_ε)?ۢJL.Fb qQ!@{8)[Y iCG̓="SHٝ/z ru?969 N#ؙՋ+CiAf^f] yY/ieavЦ!i(jxkA9v%rwƌZٵ8zO;o$[((0s=zgiB?@OO|=LC˥亇wz-&V^xd1ƥc.2353i4a(!J.S+Oئ@PZvRJGJNSf.Z{ȞNūM'ML/vTAV%NHy ںe7k^+;W;rF/ע"7L(1J1ު-TxLףg~q͔1':snA]'nC{k7V3)w̑`)85j `;^ZrL?(CfЦ'SY%d- m* h:e*B"kz._p_\C >k s}=gBU śۧIC& 7fEPR~]!R9%!@_X '-Tm",r{orNǖjh-vņͼ[,=c"p* zWڀ^zJ|zL>4$Od5 414f>܏?.%B[t쇯LF7b8B .y6 (IS{T`Ha}՗PzGa@N"`l֜FLJڸu'EI#% b۴Zt} l.j *+'p佹T W\Ĕt] Gˆ/ ÒYw>t9,l_ؒI9D|i{-G$Ly I7'o O;(H x%F/玜T60Eg,-Rp!y8&H8&#ʣ}3V/fJ09CZ QseKɛ'&L(]nGehc옰Wy'ʺ,XtDx.bHT:?v |N;i)hML_[w: F2So<0R%3i(0?BhrԆ&xԶj$}׍2(G*.bn:u!)m`8 - ?eʢvtC (\.\J a8H2LiEŰA-g+cMAHRa>EmӀQhlyE>BxD0Jg!647N[酺&g8$ۣ %4d鎗_o.M|A}麷l3׽chhs3 R]@,>C@Qŝ=7tyqS8ѨUY -j `## G4] iy Ruw$ " RT%an}'3 1Վ:w۠,wl7LWdU{  ӅTPk#t{kZYѪ"vHw{鐹tJ6<#||ZHC@QL(Qԫΐ5s4&':4ЍE q85Gq[ s$CeP CWV ''#y%`в\AVdG3-y":=\4~㽳߭PPW^CMgJq?q䎉D-ϒ:UTLr^Y0Mr熼'JN#7@권mˢgn4vWkV1e,`:dӽ@&qj吾Oclaj-ջ("8YS94Ba%FX$)7*FԾPE-g qg[h%dAY\ڵ_p湏a]$&p9ƀQZt4 ·Bh=~rYشĸN)1!M &Wk[:!H) "ncQ۞ \ct}ehi9j*usVD t٨_ֈ L}{E&"KDv{ Ť!dg͉!m=gj&7a.(~~<,? }4y5 FY XQdWDLi+l?$JvF|*QסX9P<2UAVV]ٙ3XH #\B xc RE-,Y93RʜPjoD@=-G8j5[jTGiѰ]ٸ`wZcH<75`632Q|".9zJ+$Qؠ- J2mWCK;``,o{:Z? X{& pY%KPZ\J$n2\̾[UʬsfŸd^?1tJ}K"-[L>{W s|Cvk$q̆d z9Q4l6=ozJVIEQ|QLdFa)ḩv{@&t!EL<YYAbPg`yo䰩`@E.fLQ?7(Z;4؛}Q۔P"b p 2aD'34I-sm /y_+77) 9lJ6}݃ 7.CI ?r5^BQ&JeHkͥW #x#g_h~3)o&:p1_J48`Am]G:LI]@ePa%6.:þ͆UͷGSId׍518ÉܭR`xw/$.l"Z=ʿeH@KZa#v׬yvjѶ}a@ -I׼!*)D7~^Sփ*>LRU3N$z/([Q;Ùhp{ESwR&%2BTv߭H~~{7uX}|=r3TVиAOX5y.5͘zP#tkbˑ5kAsno'sXE5cy^ Gph}9nICOJL(}hCۣ]pγ BO/Rsn<{?lSTSܟiC6ب &^K 0oYNX|䣛{_zFǻSGK_;_HٚΈ9Í@q3^?Gf$؜[Dп $U?E~0 xS2W3soE9G/C~X@GRr*&%j1Z^DFLĦE!Orv+ŠJU!6 W.jøq*0 kL@:°3f̕p_tq\< 5c1hlIsNJAfeQmlC/ګ]j[`o搆j_0&=K,iv0Lg>7`D3}a$gP?n,WtШnH9~d2E@S=g}ŀxOc?\iN 8BqU{fXL;3Se5 HRڌɩ ]cmPaφIU'sP7k@Z/-:wTn1\g`dkr v0eV{q0rޔT-xJlUM/8EH_+RKembd #C<ĨGћ>f!>4:15z5,FZT%ym?ypĿvyٲENR_,uޓg+wwj$ZIKuuX4"XI~R΅6RERοe|u ͯ UUBNи^Ak>X$l Ʒ%[@@.4˟Rx<8ll5%ⳝ-T= /j蠨U !璧W=E,^ΙkkS#n6?s>J ɛ lw\r$Qz9R ˺ ½`{!_}ٵ eSX!52-DŽOGaUiBqf#̃c`CߤaEcn99wK:\eJl}k%ۈ1BuξA^t֥P,HcwRGVă⪡ωԅHJCOAoy R$B;mw2կ"] 46Z;?T]nL#^(Җ\5y@s_hH vaLZm5[0{/pׅM,țmzYJ2uȦ8!A NϘa7exf|V[[6ȌM-®?h/75sJqRfĴ3 2o!`W6j6EL֔Wy<<%UH5SBdϤ* <> dcԆWKUSsudACd$zvs-K%Y8 05u#;xWG?jj֩-p_BWFʹp@m[ h\mU~ dQ:HRb3+D]ly&§Gsd8 (݇Խ Br fyk٦ AsiΉ)_A^?,< 0gg%,Tiv ^ƤLg Y|&W S~}"}‹ލ=7/p,nӸ hC@\*E쓬 )/4D`lK|˻[(Dfc6!A$2c(Roli;$BFSؚ6d;1;xy߱QN ?"/qh^5O-5I SB,t1拑ueujE#n t ,vG._$0>WEAnb:|g%̃bB ʪBFd :nZqetL8c-^WS)u3Ps8qJ-BnwL|nwl/xqp|of7Q(F1Vzkjyon@0\ތ/%z2%7#ڊ? xƥ=~{4S x-خt nP2Tx*m 9x+@4LUJ@Ƿ?z8sQ`$'zяy/gذՊ~VvFԄ5"+y8ns0H苌4ߌ/x~aP\I^q1OJ|ۦo;QkXoPkkg'^3"W \WC2"wdo"uƕRű>*Y.eW>&ЌqIev9757t[oǣ+F>Ťa͉u n=3ڿ5¾;s6OT3 +N+eM bKwa6`Pv@y2w˕Ž¥:0`Kxy!  ZgAĆH@A3lU s,.o ]|b$62Q熌Hp4ۥ j-ۆ-Yw rŤv13a4;S6*VqV/gT#(zRƍ (cA\a1܀L [k>s)['?z{kc2kʾ5eH`ҮKan57ic'\E](-ɪդ@$7^\ }e/gO~Y X^AYYnO ;8vty?W#E"ҟ;~2WY'{ZB#|ׯ;ucJrщx ̨Z 5(ĵ2MVK ??tNO=MHpWc o>bچ=ndSB9+pukޥ?-uތe: 6 0+UDO&UyFn9PYO3Zz+QJ@51g!9`sy|RUAWVs V}fE (<*DLV0"ݴH}p\1kRWYJ2wΏÅE'RIu"6QEEFP:- w=sfgoT2\՗_IG_SuļP{7P4{u1+魀 x2ec6(nƙQFf_reJʗ%UKc݉؎jȒ&[Ǵlj(r~!ɛk#6Ơ DU4[a"f.Y+YkHFL릙{>oƞsQVƾ=sh"U³R ?|0)&M FJݙwƹzZ=nGJ$B̅S)LxYG4С4G S7ZfʄqX| g5fؘuK؋+yw2siGb!_FawNz @r Wl, lZ5Nr}&Xcw7 (\"s[ 85EH-w">\>vDn2a.6[S/XH (OnM{tMOJu*<.5ϻ? )9zm [@fO},+Df_ڍ!>H6fԯ̸=?c!C_dSgo[.$"/ƧpkMO|YH`avS3yB``)CXA(-4{r@iN.hTvóDQkZxkd c!uF$t Rb}"oJdU_ KoiXUeSaȩ=)wǔ{3|-XB䄑cjv爧i6m'D6hi6\[a͙*}Om nosTeO)T+y]t$d싗5^&%||.NCҧU']ׄʐCfn2ξ\n D19yuνxsjkw*}aQ-B}a _Q'5q'6U;$WcU.H9tОTlR7|Ɲy-^WO(xrT[a  ח_'k;;|L2d]+ݩ0s&L,F|)"otH'{U'!UX ~Ip11ue#7#j"'LĒ lFms2BϤN-> HwTle4z0\u*"9:-gX թ{_*_p⑩iaa6ϴ= T̈́0<6:)n7@&:%F-Tk/>{3gXbQJ ̫~(H[4:dp }I}Q{U8{ :,zB̔7y,S 1&ldksJ| l))vj6 N.J nL"x Nnehp!'n!AcnUxpeߝL!L׽Ǹ7{E|+ecŔALGvsm~~>ܭ=*}LiפDHx1g>an6'/j(CܵGA dQ, MDTɻGփ/aL o) qw,9VooW/} fdxa׿Ř|b8zEAm_Ĵ ~ӄk(¬ %k܂vj))Q5^fapd@R,̑n|(r!m?TDX߱.O~3xF b di;Z!]L\Bm]Kj?_}AؗlƮs2~NU*Wrs?>\ ɚVX;/)zD׽ &Y(DFyl Y>`TS42%+T=}bK- ՛šlR[ wE¶\Zx51؊nŐRQf±Jo/!U$ftMR*, 8iI_bC++ Ɍ7RuM-/+yNU]gvv.4剰VXēOnD L#q<O}4Lb _KӪѳP/p8\'e WE g o d^Y7m,ZI]eHL[Wf3&DO]#/~tZ Q8> A$P2;FnƆ͎v- -=#J#wQ|pUP_k# t ׋bG>nLh^]uu?'$!Z/22PPݺ`>"uF;ZC ɾo!2/st+"#BnGʹG+D<5L"̺ ܧl}"zk$3K"QD De$bRZnUo MUJk.KGyϬ^S!N),ggP"~e2eYE!#|O0Ll*J0o ,/Q#ޒ}`Mo1AZQ"\I"l$ml0ev: q!V v 9Hky~GPu)h}g5b*tnFJ77/UUU힆nKrӥQVH{I6tʈRUҸU xp?B!(6]$ ח7B~RKn{jq9֫\]0&(+I(ү[<6DG_:=bj n`lÅy$BL9#˹ޣE^Ljk 2Y_uBFn/A`Fl{1|{=Vڃ[RI@]cs/( b^6b/2 `#Yz7h6K}Sa 8|et6>KPzuǘ}U R_TY֨/Ӗ |pjLFjrvGLQ%  }](i%ǔSxUndCxDW'. 6!n `/{@}2.`H4a_n/P VkC*Rv>S2KsY_A#Gac{dVQbS B8տg!pOA2~lߌ٥]AZAZdS=Еs@m, Id0+DXp -Y<L*)4*6.Tuӵ<g"R[I&JV.\7ju3kuI`h߅,o}e34>~Al42uz9u)0[ =zP,G[>T%:(lT^.J'ZFf_Eb\;6 ?3 ܓ̲)7jI-!J G+R' =ّjeX eQҙG5K="Le Vk%U. <&@1wt $ŔsL86| (5".Zt%ϝk2)u!TSO E99X ?pɦuZ &u`^ 2 RF2_rZ }j*g0&B6tj:KP3Fjl0??C8VMU "^zNnAg"Lm֑Oo#}`&Z;J 9@$RL>3hp.kGKnӹM`( @(;#P[ǗPo,{}-(hm7*@#XqJ2 ,)Iؚgq94S,_(a8f|sMa V~XAKcH'*]X΁~UHM*rUbku7ҡjdI_* jM>"[vFC#vtJ?{Qo$$3c#^W3Fݯ#9A]!qgn>f Wބu06yTji_[%"CE#IGkJZˌx) 8vRũp ,Hm2Bb!}V xs5]uGKJeT5*hdή׭7An,K)'+ * M+Y'X^9*:q/xzk[׌us'`!s{r,#jUrT4Ai"ViA/j͒!9/&^n-`tvePR9,=Ν3\cb9Bx2#J[`~썼X.5<+Bq r{y{3HfxaM bA>`'LӮX]SSn3u ݿZs隉gGT70HnD.=RvBGTkpD ^+zZcվPr'9iGr𬱃56u$OR OSϠӧO1RFengc0P>*UƥX FY<.kDr4uY@2+8}.?1`IXϑTXe9\8dsu \5δ11PEd4_G(oPE).ج1f)Oc4*&+lʧ"Rx1[0j=GZknfAD@Ę'NgjM{'Kp3ߥƙΚSƖ3{qOWtCdEy=[׿HayƇpYhO x; g7~pWKؘ 9֍Ѥu0Z~L7ŦuqT!`P1^)x‡X%$B}KS˷'p9  0iԐDtml"sqq>}U^n߀"Z~|ҩ&<\Aߣn9}iz'ݍ%I)oT 8+~e\&}eC0S.jM^buȐבOc3=QEYC0ݸ K/drGG|.eaRbxoJ̐O9u0rzκrZ{g!#5{qNv|vsT4fC:XﲇkK]/5n<ސ*2}ӨlۮtW &vvTy[c7hS,q5HjW Mk"˩K҃a}ND[qN0ʹ,ǂh8&mhCbjzkhAMqstJY9;T!A94&'V@$.Oj1x^ZFF:xeLQdL!r\^#Gۺ۫lߢB a#{#Nqu {T7xKɣ 8Ug;S v(9.{KSYWX0[Rk:A9(. ,p@K/J5xx8LSh+`eqC kW=9 2"7| 7[`(l]v#c1( OF4?yMA[2J.i1%U&A| ŭ]s2ma+uhL2[MVOa;w@42#$m4?sy} 8{r[ J>z+]/|9L_>6ƪ#Tq I''}njs6q}{.爮'j^agjZei?rbdU6xLFZxDcH.| !3 \4|O|bXA){RML7"OwΫ40rM3NYIMq%_nh bWm('3pYˆQ'bd6)GZZaJXUƯV0oFFkd]Db1ƅ!8+L뙚c0"MOntu<k1 =^1C_V7|ٰKz'V6f E`-abj{S65ohGhN(S ggm\l*_`ʀÈe(: ņ2zӀ7it+g Jj5ݻfpۛT9O'O=A62Ha#V7YCȲ9o{Ifo|)|i Wy%|~IGC.!X1*-8=[ˤɪʺfcxNU-Zpn:փB>cں800#;L CFsֹbPZ4.Nd ,BC٘kfG)]Af K1SM_p{#+J&qݻ%>y" 0^fJX8.9;HZ+^A Z_>tBN%bzn̐j?^BCz/dd'Y$}`_+.cܐ( bM:u91Fۏ6'|_mFUYٮJr⢞<ԹVXY]C!֋Z FwnY ~[XSH֤_JoKkivFLوAnKQvoI'sEޫ T߫\vCBfE%j Z`{by+NL4jyYVh}\-e$bpf|$ūmf% O Px_jA^tU)ؠ)m̏ Yi8!}E:UF~r0>kic, 4@!`O>?}gV\hȡHҦI.DEآ2<7Nv4hlck6/Q$73?$osZtz8׳ysȗiWmMIL=-#FDbtb&[}Eu/'!@l>ΰ([SqY?8~ɥɀODPgceL>Z ͧf$6yF٫ljF|7I*ka)_{`&#/"Hݗbs_I{b߃(g(B1SaT]>q.ODZ`+5ԢD 7_Vn/=JĐ }0t#)VBtB]XT"9I*&\h^zg?Tu~ǃ׉/]ayl r`PZN[MDmG/_KbݰQ?Q CUXDa-DWZZWT[z"V~Y"h82$ja/3VjLMDPՓ˗(g5" @];Ny24QZomG ڕ{MɄ\EI6섯8mehů`gz *GjWZӅO eR Onu蹛K>5!_ (B?됂[;jC銖삀,[sb]cY?_¬k7=l`zm"Y 8 4_һ$h!fڑL{Vy!QY|zO!-<ݢ71HfŨ,D̰[-V^EQb9Gb![s[4A-eHv{U-v,'p-o=?4bkm6N&*ߧ'8ȣH[cC1s{ك{nAJ"%&`3:i|#.st*(1uvZg ~-4 f`ioȮ/ j挾ՄqϏ9ZTL5>Ƹ-8hRU|{Lt Os>S])= 668vø ©S9vϠy H%^G}LD˥18Ijrk~Q_4kLܐYT+keWިX#-`G G!zpΌ@o2 "Vx0ꐰ~]뢫.B#BO V6JJ@~SW÷ː3})b8̓ U-IG jx `\DzMힴemyA~ɂN" 9u/YIfƃ}[{YAX~y/Y2ԽC/7785jURAACbvVX}*K]4Beo|OWxS'EIЇN!\ɛ&}5Ӿ7K⭨_/\ ɣř @ƕ.Ks>C#-hI Iq5aR\*mblYʌ'.M~\ʠ,uQd%:|ZTN]))3ƨLHyVdQEmO6|3L(oB6x+#birq-j st'(@1?븇^&le*M_S/2u>ܛq옍Y(zzҏܷ< ni=s\hafMȴ੭2.EkD(H(,h}blF-c:qN2#hҠ"rv */Z$oGcȩ%bcz.a j.ֱ=6kk;l?#B8d$1\O;׿o.e|^6N|`UzH܎NhWrTjx2!*k&N1k[HhkRWþaٕt&BB\㨮iY5Me-:mUDwґ3- 6[xwSJTidl g2)x|SAtkΣ + ΝDR]Ṇr)T3 [a8cr 8?EZT´\^02+vN36nC?+VY/ UdO@ScyP=V[տVK˕1p 5y\=`焓öfܒshgQC i?[P?7vzttjy#9-6r_NZr) ՗rxMUނeuHblo|djxg xF  Č|`jyu$ Iǰz9v (c%`U9xԬҸͮ>{"&v#$BAͪRko@Dž߇q O  /0(4_~O{vƙ5G_vs!4ąx)gYd sΣ\L:hJULmJ) j(pEL9,y9A\p(RS!Qz5TBU^Tc=OُcR;_j-8}Fk >:ac-ItG㑶M"=hx EDwČIb-(uc/L:Яw]<9~P5waʺ::w8-R$f=T̯OԀqS::T氄72GB[;8%2<k_DDƄ*=XG^xZ^\yY!9?w[t?_qd5FѲ*ُ 4j7H4l_'^'+ޏW,R } mjZZNMjEԝm}Y:BӬ ŵൻyܶax dx6x>$v c©'F}ͮlԀf~ Rܹ誖%:XQA58<Ɵpa9q5鋋ǫib*!7;uNtܧI'ڲhlqi 5zgO]yMt /9n802: Vgk7B(-uEh<|\"2oL^Pɔэ?Ia~SWO'`$ Bn5$>ܖBg&}n'[^NF][qEMR2cW30 6 3QզVzI)d2#RG wau|>9^%SY!p/-|ir/Vpd2(.M ? l!{T#2$h&ԬVrPD a!}.š'^iompfNpɛҀO:v,Hd@N/廬xdRRݙNϳ"(dq(pcMCDwr:V@"&0ٻst G-^io$Z߀tI[wBdW{Ɨ'qlrwSNMi;^pD&lw,2Wuǜʻ:\ǖG`K@p6aaŁ%u;,UxJA 9#9/q5aC(Gx'3̄v'|d-Nq10>YQvdԞXx3NߥM܌JG&Ol"Z+Q3s<:2[smD1h $ h3LJY|O+}^XÈs4Q\+, ]| Oq5)f52ɬ> evxUsͧsi!+1?h j%q6`4"nBh;zZ}5[|QU)~}_֚Ml4|ә@"-+4JпM :Q-*, ,uI p22,p"!JA`Ɂs.Qc黗gZ=3lM*"3q:jX&e!2!F$Ⱥ@!q ˬ=\BwA& ˞a/xt^!y|~1''Z:Vl&S3D{fQEY q 63a$>FTo)CMKӖJ%o5 n:,@NsN$~O ȁC$,Qk4ңo ?1IFt`B*$ͽfo[9݉EKh=z84##^y(i-|Z^HTmvB&T n sBn̸>o[1v0a@b1\ӝKE=+AU u]DQIENB 4 ݾN@YKrJz6& c};r8IJ?&r2ۧ0V&KEi-_g{DIS\5`=]* Ģw.j٭SBȯ>Q% XٿChZ3P -ø,KBd/熏'ey j?Quv;5/dݹ,}-#ONr'Rk;0[W u.sA@p՘f]Y,([-uQY~ wv%Pf/8}XFNܷ&k {Yޏ/@9ueƅ:[+u;<_d`a!EF]$+EALhz(mυټ+Dw/iG_hk.uK =ݛ 26dy}I޼ش 9SPƹZ$< J;z*j~rlzwa'm@Iu:e=t~MV!ԇ*ݫ\{RNwz}ǃPzw?$s!%o@C*AƯ:i|>-dx}A=Ƅ4"}WR8ۡ߭,ΉT8bK@R;q1K$\yDTҶ# 6˻ P uO>U듬;dBDuAO4WA7 I=?7e[& 6ձS\U?7YHB>oCXIhzp 4o9u4Yu4pSHX?5G@e?$!FJ|̜鍒׋Ra}Nf!6-FoC 8jtZE[ nlcCiɳML()MXFNyΏZ/>*  S*. JIqԇ&ǰּZv{mdDGPKpvi(i=Xfr9-aWh&@` lNnKtŤK̕bVXFs!iز}HH:bHږG|BڇHK*]1/BǞ8m\$56skQ>cp&҂ujp!sRΚϚdԃk&)6 <o}>-`C|jF%a@|v.;Z 1Ө$\'QY-S5&U! v jЖ lQ`OWR5}^b+ +I/pb_Vg0aRN^Q`GԹ9r.O\ttPe N$G; :GiQK,FOqrTH8_@hkr@42+`h&()X4`ۜ݅CAKcu:{*, lNk1a4̷O5ʒʷx]ЉdM+Z7QcX_Ca~Oa<=yمi'c#i@;j\TQ BgPts њ['oNv:cep5`NWT-tu^l\OPIZQ{ _xWK_Lw-b,+ \>!y@ݤ'j9Io$)ƥ>M`흳4ųE70|Ci^ICrcF{smk2x}{8f#ꂡdև-Rib))\!\ |_VйQ>_!!g3^m0$Vԓvo[ceOe8xZ*Ed0y5Vc5/Sr~!?8&;V/Sfh]78Xdφٶe@]͌HFb9zE9RkR·6Aբ R"mȬ}Ju r/*N_ډX4.9^+nc:;/M}-QR;p[>nZuD(>tbfڽSn8b4oGKMYDRFW|؏V"IzkawZNЯ*bB[E4Y,]8;WKrhMe3hZ}0T]I'gu?+Z禍uA_vs ]J{LFBt7nm6/7y Y^@Lpx\Yܒ b*xk; `G1!j .=H{[ISr4O(=KIݞ-:V"Q|CE#̷Қ#ȐrHe}&R6~(~fEq۫MWiXRCӱږRcʻ6X$`kIIQ5;#hj >-.>hU{݉"X$)iԔ&C dIӚcfOwCa-xeiO}?"\ڟbR807dd-8p{ZFp&fj5`m{H$;X%9rMh.85?go4sU]eHJ윅w8 ZpO7t aK]{:~JMT!j,c , S#R mZ#u֢~C6_ATB&=WEkpc:@ ^@ݙCNU+Co¼n_pz fj |gCfBBCodJH@Ol! rx f \1jC2PKGYpK͵fF:le÷d[%Qlߣ_ zjTIvC:/\ -Ӑ2kg.WiƩozѤ_wBfF 44!sqرMʏ'`ʕ0ƍ"!Dxy2]ϥ#ItLIx‰ Q}GȌHHaV%%bu:L#J^Lk(u%!Lky3_&^]ܫ/ӝs5nnҮ;l*AS`_l!늋MΞ.I.;RFڢ4dYCxmTJ{8`q5Ǟ I3ޢr||GNeB9`/5O b=zm7zm^0]A.itT`nﰫmUU?a0=tՊ{ KխzEպtJd5٫#+5{XԤw0^ yrNV0ˀ:-hZrHhE7H fMZZV -0J ;ш-Nf>Yޑhῳ |h&|D'NaN<]Ě皕Y9l0l}E"58#yQX]$}3`!ݜCq:(ֻhi52F'`I-5k,)Ll У n=ȴԮv_5\M#!< f \ݎ񥻬n.s}hx`9f{mB{&'B-~?ۏs-={z^t]x>@Y+ǻcUEkb(;=7Q!@k&g$kzloy1.Z>RO>J:aļλ @t˰o聸 +*UYVRYK,C7?q-#x;iM#E  9w4 r?bm%qX:Zt6rtaP̮iϭi4A=o6oPR[n00+LbJR$w+:W/=`zY[WS?5SnG)qZ$`Pbh~{#d #&-]"k^lmYX~Jo3/Eowhg<;[\ ߝu7%B%ནGsWZ 1(9ሂ @T =JAObEE.3Ƙ_E5n2HR?9W亭N7ZIIA$M=8V%l'O>@9gìWQ"( Z@v^O+ 25:ư`aR|o(,v}5֑IʻϸMY@G۟[En 6xVUӁOԾf@.Ga$-w w]r1W,?8-X>7 D><`]x*7>+aN[ܺ;$Y1ߓuGc-zs2Ye?6E H$,740ӮfI)^+t4"l'XY%5i&0g'8-lʚ{l&/l .&T"EܥMX_eiG0Qze>OJ-xoDRM` oxL V4yy\.rJ JZ^Z ;j_.>sӚci- JY7!= P[xzR:(rBX ֓hJnp meA/'am,EA3j~%QUhNv+.GX!=TEeg3HS<.xL.Μ6S E2RA+{$gZbݒ. )0d:uBTڽ$2ۅccs_'$9n*?J^ynYb:S2 c'Ӓ|6b1qSTJ; lG[0mPH Ņm{)Ho) m($1 0O۫E r] $Z5(ni g8n_t G<U3s &bpS 2pn$,r;X]-?4~Ō@_0bR5I1!QRԬ =+=IbkFj!8a{V⠔քS-!D Wu^m49 5~ӾJuiϏMfzEHn}]yD\S7Q%+M}>9PTVU|L9.)T(l\)9Brdޟ6=J'~J3cƄ4ꁱH>'(~F2#q(ʻeQP@nw/a;7 2"x$plȦ[vX_ B+ Dh?/n##%ܾӸc)D_葔7vm2vbDwg&i@e,굋 $Ոu[Ëvַv.! 3^wؠB2J$7x}XT[ ` ߻6d++?>L"`r{!md^=j9"`fܞ^.>.ppZ:aկ.Kbu >5Q|:Dpa!]2J;q!|:TyV Brm)vu Jveq%LBw "w9c0'uxQ}wr>.H7%{jc.v=Ǻaa7,vysU,Y7^עdUG-Թ %~.H(u[\wD b9׸(M2`-{_0dSe! _.J(GମJ\F8ge-~&pYʄ3$쫯ꔸ[+bHrZAv{Y31HHn4ꂌdY2c8KOHO 8g-|gJw#UK&!beӞm%$hw/{D,# 5%rSCyb æz'ǩV hfKu{xg>c,WMxf7bQZ-,'3YOp?QOrHA\vqqbqCS9&R|D}}olz?iz*)!0r3yrCylͯ>t*^hVȌ%ے*/j#)==ooT9 3Zċ)CZn"a-d^#uHkrg pK1LPb&!?DGN8 zű!(h [[o[}>:hTcsܬ^Abwvna&CI?Jmto,pf%Yn$e n:[$_ek !_QEqщs}UW}m%{8{(_.\sawb6.۪i/g8X9-f=Ϳn9x&{Jo/4dv$O!|Zjxq l }9^?W^Hrji7 ^Om ˣ{8Xg(:# ":W 5UPhKO뻕~: 랉[{KMVT?'[dc39f6n[i 4{; R}YXUtl&ɦ:8,:N$VRɻpuuאqMqbOi\ݏi 'Jd@d3`Mr eK]+E܉7oN@Zmq# 0huP_k Tҿ &v*1>'KrUw2lp ـw8$G =Ң]n,϶hQ1#ۢ?4\DŽ)xp6gc;*4r?$kvShhON-E4 Ob:5{/r =`dCv J *P#d)]0oyle7DBA+"fD+rك]a bEŔ}Py_+A/F fq$ Mlh=MZg2d%MQ71ԓ" ^cɝ&r_dx_ʝNs|#6FѿPLmP{yPUg!ҔwsZs@u;'~DllpO6x&_`Пj6%<[C DajC(,qzMr酢Z9elMé>N(-LnK@o]H{AXWgI\OJX#1uhqF>~ߩz';Fq%e8Sɺe'wE&i="vB0\i,6>=iz7o:`Lֵٝfʒ: CdmNִi?Q̇ヹݱW3PLOW<։}ċ?_< ^,&C| ~C$ѿ-}KK }2=+5`^ŏf%8V9!N~&-G O8A0zC`=ƙ:o{=>љA(s(㭼rb }Vϭ}֢Ob%Icѐȣa^CS&- ⋌wƁQݱRc^G?\6 ?*ʕc\_6J\uA=SdvNWˮuS-3 =\&ͤ3&L|*9Y7y26Y%ϼȟnz::(!lf%Utΐs sY@#Tw4t.^Er#;|gu[E[д/h9Jz9~PpjTmbI߈. 6 u#{Laƒ<_UKoR|xKkk Uj1#> ߔ"[4Q#ʶki]wT҄jKrMRuy$XaXݝ;}u-Bg=2 ;`klL$7zfbp $\h)x{ 4H܄p;̀WB/'1< V蠧@HB-KtʪSE$xڜ5|;AsGu)U&& -Hm:n˖.ڏnιXLSI8n lQeyEImGU*RbOnk`3ft8FU?Lh^$52;޻k~Y$y>砵<\Ĝi&cEK{ZL«=Kz] 42f,ZG$=Ni 4\bG(wiђ _җ\: _Ozfpof#Y<)U6[cS/ۑ1MqT mƒ&iŶ&PCS@tgQ}zl&JSVِI|M4׺1$mXfmiS#h -&e&KWVGW|UX LSA$kTo+}ߔ\J^q#_jk\UQ9c& #?pLՖPpM,#JϦwe;h7SMx` gIA-ͼH=1`:< {t.F0pd1a+N0N= t*l9]MST 2y(HgY+;IcV Fw9'U =kqI1A'?6y_׬~wpx]ZUQ@l8qYY5ʔBԟb=N8ѵZJס#pdA(Am;2J ##HѭWqH2R~'ʹ9]ITd]Im}yV7L:o|s #ҭ /6K갔k$X"C-TIUzY`#a' $Y۟/+\2nI& 3Al*>bORڮq&:NxEI~_W=+(=^Ss!tR7C@-h&s/FE ]13eg%ͪe.?&kI v=E DDOHh ~Q q*&Z^z~Xt[*~pJЫPPƞMS_.Rh Qp `R:f0%w+$0Dh .3Y?3,*ܴE=Z.H} ḫ'Ox sr Mf3֭=řjwj64ڊQbw*@t(6+>/"MQoDu:zI*G"5Cs,55,CzDW &Mz۟{H%%_oPl)Fd_/gZ/MaK7dӦW7~~S?s靃㊲VH"i;}V-Dr`$+)b# #t@Fj\H-ZE<j^{pzDkV$ 'nMuHT; 3KX4͋oylj[Ӿ>-Q FN獹rڮm1$kR}3{pGXf_QI?K})p؅#va9ImfWȯ O.Ԃ,`w\h!.Wovo8mɊ톯Ud[t20N j|Zma{?ͤ77Ebo&>PoM ߋK>29L|$ؿW&<93D촇0^P"AwX]p_΢'b՛lw a]ny>j=rxD##j]I|_yOϸF6 ͵\HEj1:̎-9t1LUͰGn\w聯F}z~ѾzRT^~pY)n7M^r vPq* JkH20[TOc5WBq3VV! #=oL5 }dA9߀aCjމI]a5S#*_[rk 7VDlw*ڀőtb'd~Xƃj4&|&lV=ރ)6/l7y sO$ P&=^ϲa>pG11vțTOAFHB''xhx+,s'Yԕ ȃï)eO}4IοhIu+<X_!q-xr4(*:2&eЯo0E"{wJc2;# 8}E5VgʶSTg7Ǵ'1 IcfdN馛;3T[HmTsST*S{;%J0/R(W\WoÔp]%|o1Ca*/=%f#"AھÈJYen Zi+";I Ԥ&4a7XMQAm(MJf TKV|z` i7['|g5U;noI66 +Mړjۃ~OJ•V BFRo.#TubB營% Zq @:"$@}1=vE^硿iI[+oupVZL a8&>7(Kr Hbh$KF2XBrg=K;8oUGom$~05=$s,mFo_S\7q/]o'x%;ԱsYz;j\tMM(!|8SBEQ' />m"(;9BNՉ>Ee8dsߑN`e7BTu؈ㆧ^'mooB`n{b0 nDiJIM9RtӬ uu-ۆe8^,ؠ c%h3pv򦊬UǠ-\[1 NQQɨS ; n;O)»ODEDKԉIrdpReKGd Fo@!uD'lTCx}V̾48b5OEнwX?pkd-$l՗7ڥ8mTT lu7],gN4j,RRHN׏Hdf>sh)8;rTvZwC%?RS/eskF$4HeLVCowg޲ !w"[G+ sBG0ZzB$ix?$ $Xn 2؞O'ʳ +ȖhE91EŷG1G?I o (B 1թ2S>L6o1l܄祹V{['+眂) RLoFa)ۣW~wHI63+=E]ZK;Rs>(ӁsSUe(@Qnܴ~̒K[wU ΣjN׿,ĕCkEQyƅ#h{oIlP=2vC'&QJAgRb7֖' NK)6fMoBYkSZm"+?Ic¿ϫ4 <q:e7=Gsn\\rg"65.N@a$j{Z#f2ɡ|-iM8=aFͲX{.s7@ewcRk\[HX@=;I)ΉE6hG&^zjTgeJ~|"El@#' ߍ8o&g~ءn⚑I+&zrD,E4ڔ5}dX lh/jꝡPߏtf gSW :9?Z\ycp1JCNG;W+ )Qe| Sn-  2M|DXLb(ie҈ͶeeԖ15Fq&@[m٩o8ݼ({zt uh@@&4lueǏH2R| ӮH~γ)c}Qax.^gB-]_7sB/er&>)>\#;\~WnMGF k悽DfV1N:lVUhÿx9b9vz4aN"X0 y;vb =wуdsx5ZVILDgZc|d BenZ&g:C00 x45o)HoQ]Bɺ~ &孎 īW^sRGiT(4͕AmZ8dT4[z9A4IJ{`!R $y>d(o7.%⹨k!hd+ f*N4)rvD?OL/e 4I\p-%J" 2vka|zc,`2K` z7JDq!'y:p#N5fg12%]>W}JjZf6|c[4+˶ԉږ޴-EU _h1}d<( .0TGYIc&Of#xVh1`yNN,OI8 7 juOS's >;YOYR6xvky!kq>84u:ꈕCSW~چ"{4sһ E$hcm1jMLPSh-D~6"*EVsX+ Qww+ܖEsfvMV+^sݦkm2݆-.[*Bߦi¦<ͪB+OY.RTFY|W OxQ9 c{G-޷J[?UqC˂ ; $Cӭ"5|O*D`TVN.Pv0s-ZŎV0&RyN.W)oׇHM3;-~篻-Sm+YO1O/*oqORqcB|?͚x^ D 4sч<*z峖\l+9`^% 02kt;[ oR`a*@hT!q}UsܤtCJk>kH p(pfձ6k\[XC΅ٷ1qV>p_ҭɶ,G*'Xh, yf [h7z K0~50Re ݒ:_Hءl6)#!_eKɆxơz9Ua~1z|Q]#;FP`N-56Usa]rXA6OdK-|-֐Ą%~a$4OyDy)^uBqh*ʆ7^޶z55N6y"{V?, z8-4RГԉ($1 խu~YMAZwsz'0ѝWܗU<$KR,1eGR_NVe187pT ll A…W;qy>>+B~,Vb9/FiC|172j٧ 58)QxcԐlu%I.(b˶~l(tOp鶼YJ4i@ԧ"Ze{+V:K|H#u*RBg>h /4OUhIa5SDE/h84=w@9݊){u*m=+n0?Z-ng/ip ꤖGbQ9.0|&9-){?E*u"޷@ 8}2 @E>Dd3\ 2^7y6~?ڗx5M3hgQdRk'JINFőAWeL521EKz Z{H2 GJzB`1$s+qf)KГtqsnӈؓ a}RʽpƤ?W?Kjfq"a]ZEY4*X-5tIŀR=%Y; |$d?xi>b2P k'tYCdK'^@)`X굵iznqT'ȵu2T#_׫=pØQ  Iܶosk. μ]}ZOy3xVsGwi.aMCtC6#ij)W3@ yDw&6)<ѦrHos}r @&)'Dy}.ڤ[Fn_\ZH CMmiƕ`.YFaMiPyI #%CA? EԂ][,~ǭG>Y g^܎_4 8 y ?d$7À5@x4p8raPi0jF~ TNb՜%d:ot'ѓv>#81S58CBI۵2>gSe*X=y\:zRPY"zIS)hY'~r[)oS b!(fA0QoF4ŻNrY8`@tfWe tt_)8lOp6Ah&APFȷR=E(F|"6}{~ǑW2Ua1?v:']InR 3ʣdML/N3 `Q*<㸾`rLƷ(L (emdnRb<3P[1H ~ErXmwTশ0km_iҏ_#<+~ʖ?,n`E#!8"^De1L:G *4z q7|(kJ1F8y?.FuQSIdkCsd'bS(%S[J X:rJDA71%5iy\eBq$RehJq?O)2˿aٰzi7 ֎~^W U6U:'M+wffkTTW p62k{ℛqiyYzR~"i88-A5'۲cY":oS "; }[Zj čɁuG`ɟs5j1!-)ea^y+ByA Pz]Ob%^1X^)]w-37 9q*q6m8t&C3dN@y^s 6"no2'q۵z#VZJYww∇8y\-*GKߧRRaؿvc}[+$[{Zt%1gol&!,,*QVjǣNV98T$?/\+9X;~y9ْQD Yo?B_FH1-”$pv/ yLnBzT)M&QGSe`aa)n>^KV=#UJiiYUjLS:/7O&^*{j=}5 {ڔw#YoS Nm Fyl aӌXsTEM q($%O /ƀoUt0Ujdb$ۺ, Tݺy z$e>h ˿n'w@c4^H%E e1bě}0!j$R&%HC~h3ɣJ "ԜiW_Ve4J=X5> $Ԏ6Iԅ*}omTH%=J03gA̷*{,~Bϸ)vO`0s h܇zQyD]1Rtd:]o+6jwЌe嫳ϽۺN|\W0<2f~,׬96C6@k>zx&e7%'_PP2>vgvE÷NGOS!rpO'T)+FUK%Q'Z @ ]cp9%)Gd;#;R–r&cc6V5$GIPJ51Zߗ"R,(" ha/lnGNC"y3i 6 R(b*8Ip J8oY a2@tXPc27BzP-z )C>RS&M#|4>KەCQm5(ȍ$32@~ <)teh!zȟ;o گ#d'%I 6s$<>Me)t)4[&+­ gʎG[ < )N|Qܦ.gT[p_Ϭ)$=sцwDHg oT2]a@rb5SՃ4*%+P1Mvu]@iIx"M(WoO"Z{4r*v)bʠV:tި^ ֦!$x`EYK ZoVHf51> qnwl@8+[]%z ;f*nq%!:UQ[7;8\7Bscg~cYJUiHݎGwA-f{VDGi֋T&P*KNJ$-]HLaj= )[o?G0ȿ,+.P2dߧ['8Wh!ho`'b]-аfaC͋ۋ/Zm[N~3{sT)a4 MYmƔ)ܒ}9Ŵ |f`?ovJvE'̖X'\󳠱^\3a];6KZ^. E,}삯u-2I6Dd`ב3zϡ 0>EFsצ=e'Q}e.i>r߸l;ەHaON֨`h#Z˭fDw*<Ƀlc/Tz4p-k1w S~=u dLԡhɋSuPEqaә ]79fBHVS/?PbV"Ѵ:C__-\X_'XM/(;6֍ƶUԁzG(~JŤ/h&#Yn[!C&zuaft6S@GI8Lw<rN!Qohߑ7ef'?>寛=ZȍZЎj*wlcI@tmgDžy]6 ?9ciu4]{ޝd3EF-MRuPn5 ^E';YB^|QR3XN:#-$Dʟw?qں0 | d{y yX0A+ir2ӳزcQP8}菿L;/I"eJ̲Euٰ>`th0ÊXj|'Mxi$uDRLI`QFD$jk$zV,\peR<"p?;7=\4&6 ,RIs2M^/CZZC ǁ!2GݾL ׈2c36c`lcslZ4IYh,rԾ Z9qMR{Ξ'_%N4)R0}UX5gPNt|}O2؜< [xrJ9KZLsgGU:݀߷$&nrJ$'Lz0Qz]3ڭB.9N 8kTHkba&Μy>x߫3ue{q6qS#JVPLw 㚸dNb\O4&ho.]jcowX_+̃W$VJYO3J]Nz\ǘa՞!0+ޡ)}b'*<]%5F' nnJ ǏɤLI"ЃNk!@R& TFՖJoR魨NHW?eO!z.^f(Qyؘ&]&O*J]>'AJ4ũ_Zz=8e{ߤC'=EWׅ,쳑X\ˮzʓHu %=2w@@I!HÊޤUù}۾Ey8Ѽ}̃ABo42w kYBY6[tojɃ*_& ZZL7,D<6PZVMɰVJ{)ҡرBs&1Gn50ORcQ摏]Bs*?8'v[ J gcsx P{D̈wv"dْmexuR B~2/J/F hHXEx{Ʊ}KFhJTFQ1M>6Vf&4uplAp2[nV`OLr]+UN;ߧ$Byh&U3=I _bmstBIK!,hgA)IP>pCpLCɪ>w6q>kB^A8S@b,:H׮#;]_ F񖌛U:hcX)%O1Rڊk*<fyab-\ZAg;0!)LvQ b) 5`C%s.rT2Ve=IG:RӺ{p>ś[56y% @ğ8J?}n#쎚>׮ oT!W @ Rd8./ne(k'R|ޏ]ty#G@q=LG+$ʲXX ǢYI}N w2|,6$4Lrժ(UOnny?0Y,]P(:S /Mr4':ko5Q 9EIa(T1(p{d5#ܯ).b#MѢphrrBU/Kw.3h  ˻=沭uc5.1~gvrG!%h-_/ 23Hb:3>HvH2 SKwB:TJ)BMIh4nf˸td>tI 4W6h~n[ۃ?UU?lf;d*<.Uˤm+6Jw~5Xc#mбtgh3^qN. V9l\NDZ뻝J9g~)zN7s)}xW@|QZfi(A̽>'c|zÁ+ ~`rv_gz=\(2&d*.Ѣ`/nxHЂӝʹ~b1j79og-160/t3x=hqpٶY!nvMl vnɖSVimǎIy,S0.{ErXW3>e$,I-21en@9#F2eެ`#V ?= מ*,? -Q8%$(oA~k?wBJqx=9:4(/sB!=}6<*Cy-(E 51XCw$Śo-v 2)SRtY,%˾KǸGCLH Ka @1Z}$+~*CR٬\IeS#l mm54^ť=3}뾮]嚅Ɔd L#IA'xVp;RZ.j 5 fpSdHr`HCezGa0zOkتPPJI>y>rΌ>Rojâ\o<9E:iD HbZ[[Tji3'%"=6 tQ:s;齅D Eꎴtڡ2ή®a.a'`~X&.%/7 .~)flv2N{U-~v9B̒`jLrIqҒV~Qs9NOQBz^Tz>y:xjoIL4CtEיA5J9v页 # J1ґa`HḠ`UN9fQ~-4?hC.D?A*s|X,ީGB %T 1k-Ix 3<WR96MȮ7A[4ۮ}R5pnwXfOyXPrɃ&p'n H/x :Ԩ9,>`.{L fnw=IT4ڬB@=(rȇC)L0}]?"WS Љ Ɖ#5χ6wEq~m}θB\r>ld3 6m. U{@7ZIaga5f/5Vz@+J2qL %:. */cP kH0Y9&[r赟6|>/gV ?q/`rd }ݍ4O_+Ut~7?[QE AH(RV)7$^_RJablgQ3$?EAP]W'H)ID$.ȥ-(c~cԟ`q ZXe˗ZXN>,^o O;* #$Y.6* zQZe V񎗨$Sڥ)D8Vip joř+ g'Nq*F ñ/zv![" ?GX%s/o/$ef{9yZ(dZ%sE!+3Ҧoy)vmky-;h$HkEd*]n7D(6@dlXd)ٌz(YF+90/:A@=`"0bvɽn" Ԋ.Wm\d5c\aR@z<\jYT'Շ <]tVַ0"o G/[><sO0Iq2AVGa7[BsL?g/:/?aqrcL]iP{[$!L2‘/GDyŇ yC.CK8Ei֟DbÚ!՜w|Hbh*-V(#GuV:&L,V7]rg#U*NDۏ7ˏ/]Go<5: i2. E&TGƢ&(RSƤ e#yV0aeMH aV7+% y aU.#Š=l 9vUˋ?A]6- 8z|Sħgn-xIEs?knPy1/m;́kbFK"9UL;DbӁxWY+3q/`0b^*Ą95'2o1 4fUOb_2+K(~ ـ-SPtfv3&pʍ IզoҀwӮM}>}HFϛ#I s!C'%:?a.wrA]Ldoʙvv׃c17zC:~վPPqPA sHUL޴i@"T w5(M6]1wPם^ί!uYDu& jZ81| ;sLIq}xN3077;I= `$i D5R!8ަcݐHwgĺ,Lr 07dQ;5G iaQ.*gí#oo`+K #[]-bbzSG \)" 6$wq J$z$prC8HZ*k膚O YyZքu݉c%WJ?pJ߭K: 8i-A }@" ^q9hpm{Ւf&:JnkU/v`H~yBTqQ K7GӺxUHB*7=>:2ňJ0j֒6L`如)q qA]t]롸/.rw#q6d7VCgqjy'Y(ovo U\\+V7nI~hF1C\JzMBzFG$xBYN5v k-2Sho\!}-+O|#rW9EEk>X'#F;bM9*@FB23,ӻpA|;-fX*ZR`h6"au2TGD :X uUH[!# \>p|wve|2½㋕UKWu9 Xp'j?;ds 7-^eCßI}0@i:T>HNY!Wwhvp;l)OWVAXs-RI +LJ!$h{㬓jɽ+O8>SKWsklh L 9Ṓ(gP [ƍi S ʱ7u}l;A Ѽ+tkYT\& ͖tq̴XVWY0Np8<>,MnM1mf;mtYpdzXOzDŽ\c,:HdS&4a63}eZ7OΐpJotpIf'ȾEi)QȤiW ҧ! 9iP&Uzh$T-ŗzMߕb24[ρk7N8 R^HR{LI6.-E#QS~%Y iBk,峊\@Ltf/^9/CY:-㏂6ڥVr8| p.$Ņh;\TlyA TA$) P"OZVF4 KЪI3JtA3 SOj[#PP)+g $>rr{wk]Tυ6~ڕG*E#.>?цr!%^ XU l JlV&#}%^NaȸoaRؗލ"tw6Fe5IyU(:%kGjTs6#1V rRd0עȁMa1xsݿ9޿u/U +c+f v,M=' 0/m6ʐRL gz^ -T c^?{aosvƺS^ƚNGLklɭ*R=RsÁ-r4Co{`fp}L]4 eID(#Y! C'\R ],ahڋP!ȊP%X `|Ma%̅FTgz|c3C b+DC&.6C#c ޹zpf'*7J=RHLZ_vE`bU9UI"+6"p{ѥ XuҢh&O{UM܍\)W>%ښh$*~Gw KJ>?|=PL' ((n3UR"!@} M$ iͲ"Ǽ<|4 /]RH;AS_a^ F&vSFdKAINhrqSU 6AK33Nۄ8^@S\O%GM)?A, ~饒rB%6$T+L?+x3{=QÚzWAϩWCMjDyby'nP(t|؎enA+93 Ei'AΐU!"}+\0;N?ym`뽴5'&9Czs~' g]/[ښtihrԙUT2nUM0^I~95Zﶻ>Խe=+3Sm@S6/ΝO[#, 뱏y(ЋB$8vVS 'BuVE)ͬeEfS\@DR0HD\H1zGk-{3$S &k?CPaֲQ- :w!Ξ$4F ;f ӿ> yDVt:v cdE=D) .-mlniWn Pf7*doCf9k?"|Pf9I xk@0#h MIsyeFNH!׷pRPʡIq1k0HJT&cnfa=I@!^C%%rY9GP:>%n4ƳgWd'ɷ[Ô`bZ/Cתʑ R%aeZ[ãkڎ=W*vP"6CknIK}$BXh`3bhCEwVt$kN+YY}vt}$-g8sby,7AJ\-C~c1+сڂCHn^w n&d Q:6Wܬ(V ub_Q y|ݰ9t]ytkₒ8w=`0^⿫Jt&F'@VN$@͹&I2wxGCj[6'8䙛*X3SώfCh%qrC}Rs(˅Ք<ƟϨXO"-] ]|]N+ʵ%}1w)'zjksztQw>r|]@B' D*v2T6tvdyL >?|F:&>t2H>]]/ h]YoyZB_F2&zr-)SS-Q`͊^ X)c-&Yxd^QGل1?r{^q[.g\`KuJjkg;[P@ eGUM^+_:*j(cH؉ܚGՈgYLC=:}& 28ɰuX$_Nu* r3s\Jѭ˶k{r0n0Z71{*kmr-[?c|*Slɣ4z43oi>!v/Tlcw2^k $9?н&#iL_1荨3BD_Qdj-  Scp,F݋Qbb,cI QE3 u&o0#~ >Y2I۞YxK3'ݽzWya 6?Ww_g%` Њ~#Ƨa(tO9t[g?v@J*UA33Du/ FLq߬0͹\41~7 ;IpT<Ng(6pg#Ĭ ޫGB;.0󜕧4iα N t+-5 yVL*7^0bZO L񑪋`aRl%L :uݰ#ů5Ee/$s:HI@AN^ۭFɧJ:lhosw Ǐ <) ږe)#Čh<"(ͲOK?0;fIV!0 vI|z<s-NuWݚI mt$x6+⢋VdslziNκeg/Y1Y[M1@Q@ A&3ˍ3 gTK r#19CV)!޸ 3xWt>:o.Gc;|!6(u4.(:4!SKDٌ7mEF}:p7,{s:] 5~0n+:Po]ITߘUi_oOdZ+lhtt tJ._^QNc5y óx_'odB(uGsu߃~YaV?,՘Q7rF.5ԺDJ/-'L7tiŋ9J9aB¤$1 %43:y%$(w8-c"q#$k::3.RaD%$oFr3m+ށ#< Z:a"6V#P2乔٤֛;o-$*xz 5k"CT9Ak8rJd~`"fR]/%_^r"J"_x~@֗U̴ek!]e`7=s>B0a]:6>z>%^Sぴc_~o[=~WܑSq6ͼn}U #.+̗P^Ns yқ@ X-{/=G1k^'coy&L2te݅ǴojgoD@&x󺩨$L0J=a+NfeV,2u.JdQo˫?&qԮQ3̊4EiC!(jr$$\}hԻ&FU>fǸ%i6%WyR3\_{2 {WcFwpZQ0m R5UZM9J%~풩r}iPD% k)tf*u6L~{Ы}eɲ'V&$d7.gkv;+hˍ'7L _x p*WԧGN@Ǵz%wAPNjhiwL.y$њj~3<:=5Fhg TytEA=\l~\ `6Hعp~],+Hz!o#½Jq,`݁o Hq< e]z;ξ'kԛ|fqGLnZJ~4Nd-pƟ_N803o@uBԐ@+A.[=Dys^;A=%8 >r{GjSq0B)/QU~Wճݹ"{̪;mtnx58 "׸Ҿ$T$1KݢH"~>?2p5;,9>A=;*D?3pVʴ,z_AvƮ|SV g"OT`~ecyuG[V-\@<7(3q%&I}2/hPJ@|L5ܽ S%s;1s6cr =켐=oQVMխ3s(p8Cz5<~a)OZTSH&MU{5B,@3VT MIQ_NO%%kyUHZb>I8,]`6Kе^5E˹gUTl`,Ǿ@ДZaDp.LЍ;JQ"i uǝƆhf#t]&ԘO:,N uTiYY YT)l~t5).-=eTþ[xLBΆ t7;uʗ^2'U>٧5't㯖t[7jGJ7Ɇ~JA{G!.-s'LU*~s0@j砖oM_C|/5 w H!>2[8k tgñ@Jˑ ywSo/r`Hh8%̇dz( 9WkwHt 4x^xlph^Lt.{f;eɀ[NIݗ0HOnVBWVADr6tT#6 yǿka!eCJ/uˌitk.O, Qw+?sFt -~w8zWϫQxlA3_T cRRw90Sp44*SS;ZP#vVL?į*i!:Lv!t+N }ȄbBjM P3|0"Ibi&K-bCt*ԩgPjI+V8VBSp 4T7[$\ p_{D#A`S][aZ#ث< S눖ZSCz-1c>8Y ۖ*(Hט4v@7=Mg/ @}`*2ؓBӘȔ弇!:6s""+E_ MdR$3 浫ӂBA5m =Ӎ;=T G i9OܢLUh;m0ߊXEq" ӛ?N6:m^ s1Nz/t{ۺ<1"i| R&-T>(M4SZvM2k^L(BWH1fRCP0F99zXN"748ZGTS\lwjӮxƃc:l F]Ԣ]۬bۨ 3~G@mO(77܈@yo|ޱ$-/tx$C8hݒtR@jAuI9sekvg]),mTVW0{//}9Sf|{&`#& rcžiXm؁z8h;r J5,N/"c&/4`7Ɏ^2mkһٺ@5#Pp/[ZZ8b>"V;KqV/6Ҧ hyBղ]-Hٱd%i ,Ƅw1ɺ( *#Jc=잔iõTCFVJV"Q"nh{^4Lj$b!O kݭv@#zǑlp z%WE8:9#Jڃavv ߆X'quZڏ(9߹rטp;p=6'{ViPnQ΃B<.` kq`XAq4+0 Է(b_9 0hrQ4(ЁL+2rR*Tt]vPQdry4)wnOnh/;~z@t=HffrxW&p щئ̳~l,_s7!(+WM1|Vǧ>|HnϬXX?U\tФf*Nsoj(m׫w XoZ'˛c^`Y".vx8r0=\/!^", y4F+pd.enm^H&*}_  .vCܱ^3$Y=/&ͼ砓{#ڮFJ;fW/x^t1iDYLX@RZ~'xMs$Rip 6ݚ!w(%Jؒ>!j7ΧIЛT,w2ķ\4c]{a/Qcsl'h4v|g!1AЎ_xv>P{dd_ $H[fG~lv Ș<0y)"z -wTlFjާ̸C^JϩJVح-NufwX PxJb^ѱ^TPDIN/M˭h1sRi ySvZy4{㠋P)a~)EŐ껙7kQP&d_meog^GGU>52pO31';Ry,rO].~R^P{Twsuf-: PG4S/ F'*Bo9xjk$zsM5NnTUP [4X$CsWh[{lw;TEP]i 4*o-Y׿?T.E*ɤpExʔ _ av"@,?:bM[('3p>ai ״ncfsོqUvq= c5Db3?-pkRTdm& d AѦMG)}bxw-!ϻf*;şsQfQ&ѐ][{5]QIEeYoM;>e` кEI|a/T,7!VI嚆5bunG,~ Y<ԃ΂pnGB Bw|mIS|y#U,c60LD~b%-`?,U0 ;R"o% G0~mfG]KkW-”R5wWڇ <sǭJ{xݤqP*l篣  iTRH{/( vJ{t0Pd|S RE .׋eET1 8\fNvL⽆}F|>w/Gj†S<^>M<& z0 >]\ sze*:.[U+dX/Jw|‚e. BSCDbtZbC].}တ cFw䱺$Q0t߉o͛o_ 0Ґ1,*Mrkuˉ[ǷOYx@K˒^ƺhyb/څ m茛dgfuZ4$ ZNI6$iRGCk7^w> :;5KH[.G-3dG;{{:P>S 1) Xonܞ; UOB~,gVoiL _S`hc^Ph}x^p+fe|DŽqZs92iJpU -:uC}lxӝӣY%TݢŘ(`J܋@@_/JX!!~fp]ߓ*EkCj^mD]Chk52tu(5(|z[ 7Rw: ߥF\d!-BZSZMk& w_RuBӌ0[WšW[@?Zaa疹Y?tрU] bw@~5dXvv%qmP! 9@Ļ7 @nwUTއn%gKxSĖ Ӓ!QKyhsl<$3n>Ŋ夏FXf3T0 BLZɲiXLks3[\F5$*~8o8CvG6^2G/BF,"[?|j|w\SŲ;KBR~O{2(;4ύ+8Ȉ۷:),8?`8V@3{oqIQWTF>`.Q|}\TSfQRSg@ػZe;f9E4+uu.~(xC !#үil0_b9ȅz  Wkqu09c`'h@(T&ge$@vRK"Q23xA@ӪLcj=u>UO-$<#kVJJ0N5,:(7];4 .BGW_{_w9A/QK:ԦJe@Igs=r#яaXXž#%Z,HJ9/z=.=޹&Ci SJM7eJ#8rRn 0o6e "bٴ])%x7鈚y!-MV .=%?tFOևK0p=) >DNk(yLŖY ?t~MgdV" wmqة 7-o6I ;Ő{3/Nese6oOpʦ}NQd"WO㾫i;\;'Y<.a5nV`;h"10/$?=cX'?gk2XFh g飅_>wb ?~#QxsF^"aW/;)}lߏ{Ηɣޗ}[U0YZ} ^>T%>2ս!FHe20ȓVUpS 2S%bWvJ$2tZ lZQqx}~>8=hp>V)/|t۾$*ѷ|–N*Hw#i].pk{osh= }Iz&8- _]k╿'b2bP-W"y T\:#@׸!3Q+h2CE*; FP $g:c l9]gFJ%<=}zEJ+iMPM|gFxY)㦸m1 X>cj5:ĴI@ιKՊbN]6p9]wp_:ѪHQ~g|l67敚0'7|V;T ciDniqIgѝ;8Sc̷K=:4)x񒾨A9D :q ۇd/%Fpл/e{ 3_,f,ݐD CM707 0:NI{z"K7 7긾 0L4ӆZۼ4Bs|do!MJ<ǬXbh}(`= 96Bu)̔X`YVow幔 6pOB?3Keo4[#Ar/70k'XǾq&ϖksf$&ϞNČ(YjUZHMҩd v(o;g+ֽ |?wRĺJ04_߾!3+w4$U.չULo-^hzw䑣 z 2. v?bvD.d.ni?~&#r&ҏ/-OpPi!odN`^P0Zrr1[Bp ۢ0pS8Ԯ첨QƼl(uQ"J.$a0XJYɸܒפЫ%fLʼn-ޟд@EMx~a$N;/l0[Bh1SbYRwkb-wV6J'!gZs/VvP? x06M_:Hq.0^/5ĭе]cPe;ϱpZ Fm^jw@s?]kEϡso vn3}4E6򮷹4S4-cY5qESKR5*(م"iYc9^ָCh< {tN!U5jB8FjA5kxu k#"Ccp,7 IGa mAD q$3bQZ{Æۻ+.ny)? ]9 h!&/vzfU{HD;~2sFлcFG$!-"L?1!Bf\lľ2t )zc/u]#LRz~vQ,m+B^Mxuj#tH,neoa5rי# f1 $i u:Om(Nw]j5[\}ͅ7r(?|@`(&e,pS^]Jc SG4Gϑ'@n̗>KIP``#vQNlW"Cr.^[?S Z8Wo 8$cDxG(b̨BM;߂ue&#TzJ]ifsh.𪶬; s]ź1#XIiŐkǁw/5i"'9dx"Oe,:l{MrjBd-_{4JˤwH"b0DɯAnj[1`8 W1 NK iN[QmgB3Ue*Y5Eo_gGb^˺^l.,SNH=67vCQ ilt2|-LH4 v=3EIdZ8(,K°;wI/0=V0i"<|W@\| ^y;Z0;kYZU!s},%dmzSװFD#01ij;:٢[O'B)&V^͵ 9}K-gs_Cy)C(~BSaʰ>ٔ ,pѺr?}lAOC+h>3TxƈV`-&RV&â1B &}oFd(α YvZP.i܋+?s1(zxȻ+ɚtܶFPG$޳ބLj(ƴnF oK$@w*YZcn:Z(yk@*)q Uza+&o4j դPc/'n 18rj1Z!^-Ep4G+G`Iz+dzE}MK x,"-ʗpĶi2"]k-wlssW n V5qk K}y#p9l$ۭ2 A^9laGnWqQ6#1E$/d;S|O6;H?ԤQV9 A@l:O߭j5ΑEmnczC[QK\aW^_X7|5zGYD@;p`nf-R}^ұZtev=ίçW!9dP6.@O+[1r_zDf EHFc`vw F0 )X3aag?,f PTaoרوU28؋S3C@йDbXqZ>  ڴap2*yXw$Y:q\_ΈQs=W}MŎLB5 Zo(#jIH ",/t`uYLm=]DA/sA^h"x[#rRȉhѩB.(D@; ~ ubЙXoyylGw(vՂE{ @I67UIg,jA},'%@(J$4)k;5t#`?j3;3ɮqhY*3E#We Eah{hɕBU=Ɂ19 FϹ\G#ٝ] 6|}\@wCTZa盱2+^rhDZ6L>U>&dmiβՑTW48}^PRgWϋm@Fk-`X|!xS٤?8qe6ӿ5wz} 0{[IaoGe8(>ʞZGgւ{ѣZB' q,gY>_R.(F]]iO\$nj"qrYξ%p!)vzl&r;J*`{Tt&l":Dkzc\E 5%S2)<91W5̢2uIT55#;+יc]w/AHߚMLgp751J0>R_GOqY6`$` E6$ɶPYwuar p.Į6":ȹU=Bu)"2aPKwhuu#% L\RVM aH״<c\̼ZޮĴRTVwu'# Lh M.~OdřB6FVNZ|H-EJ7Ծ?ԈZk]s)8gGITJE* TWH46'ʂ&a-8[zWS}%J-SX+D/dZ脀L l ~U/H3)i}/M8wrx]h%>]l~F~΃cucth5qnޤ` hO[[@Ј~ôqVWȨe"G1bGwʕӶޱ90j:Ur xj}嶁WinSSL&eYlp*R)LC_/H0]z;O7bGa@u8GƴbV}("o.pRHyaje{F9v11B&G&6t}OG -pkeI1)@&Ϝ/qBZ} 0Ěg9=l anZ&:k]r/Q78Yn.yY EH s6S&"U}`O"& +7sF0 ]hd\9N9|=g_@Tn'Dp1ӽX/@<#@!~8a71j ,=k AOl66*W;ǚ6D\an[~̖TIUsD9] F8NELL2Jvea&DΠ@R|O\avZILyOk|Ŵ=+,xܚ,:01(%zPI,i_>GF܂vnB )z{6Aso|׈J( .~,m֠,vdj-\gO 6Mw8-fi (}`AQh'Kbzrv`g&`p PsmZH"s@9xҐ}W"IB-HdDrNd`~Ow%nRħEso T@UiˈARJ7çm/ɫ_F"[(Wz0 @k `MdYiМ?GUe"עkf $\b]SB>""W7ݙ1t,Ì+#>7A9\f_TH(i4́[&t_J}DԷ Y8HCq Fu{8,| b tR>)ߚvJܓ@ea0'nm$|^/}US;Pny"@~u "NrCH)kMGȓUhJl'B3Z@T{N")9 6 IFi~P)TbQ{.7pdy3\g}HcQQ2,APRb }t *h(Ed"Snpx-kE,wP.;q1Re7AKΐ[$MVRvWo>mgMLCG"x5kVG2r!ZI%[#hq.^TS2*|`NTz\ XqNȶ(>%ܱ90qOĻÆ K6s(3̎8=~.q>IsvDnS̙&BxJYdE:<.z8Z4"lL :1WXHv~eQَFOLO)p8DBcpTx?*yxS\>yp^cAmYk v=VY:ǼL s]Rp ͎jc:a SWy6, 7ѠOQp{G+wLj?ٌVzѳNDm-i5n])P,fB ㄱQ[`*U:J+/t^.xC^HVGJ*YkE+,%*jcR\2aZܧy"%]_ $ "~9z^s:ly2 7rDo~!gqN1A>W Ywj kDVoeg4ٍ.UP:^V_DvaΠnlƳ䧆R#UKGBJ:QHtPef#>ol<]]4( Ja.@Z'k0.z"+Ţw[.X.0Ws-5Mر-nƨ`^©H (vUlkdK*WXXq5ډRʨ$F`G$q>UFnx'-QŜ'Tf @MM_?8ˊR}=~/Lڒ!qJg<>n"ld=)pŠ%荼bk :l?COR' +hyyLMrΩ3':2!)PGf;F#ڥRҿ-n^4# p8rնz.z(OC6n,ntٚ@LR?md’գA &{N$ 5SӇT zWJIg!uK.1]mV-oMLa:4-gOǽ(~JUϡU<&B4p#(vծ=SƐPXz}*7TXq 6_wRl(WU ^^DoأQo3iTFiԁMӰ5ZMf]WI-yR QfhD>!/>w7>TCZ5o lk|^l.!x0X*8&rf*K㳁wZ6AWj^8e1W9-֦ -{;d̤`J"{"m.PmP֯6$42jQt4"(oj&tM\OIzM+gըi^zS  Vl.EᲉ).Iq)3zBz7_&iUI;Šf$pd9S`!"\-@$j9^RѩLUE Q%UZ>j6'i^ ΉnT`rcI`F'sG]x_7;Z@-v')!keM̝{t[Y7tS'd#cAD2{yIW3]4i6"-x>0Ůeys׹"U8(y\@ňw.1BFY^vdk֢*SD/$0)O4,Ή{f3kFX4I'O3}0ebṫ -Gu.ش&g V.*VZ9we6i1Z%4cZ^`$Z;xXl;²pc\7^E9Fʹj(4Hg~%-L6zZkJ{bG t .lm%In8h WbMD{%ԃpqZPR3_'۞#6YNIֺ> %/6jvC@_RJlW0X=Gw9[u^_B-9OyFK[؈(i(D$b1hUePeЭ'R&IԴyS,t}Q=3AǼF<7 #Qx઱u9p:ꝛPq7.`JoHR1S?<`$AZx Yly5δb$iD*KS }/`3$̐4JP]z]](~jzEl,kAV}+%QMꜵ>:=) ;Kz/VH9:sJehn$PxzN.YoeI}*uhϭ\ yX"~(M=bRQʃf"Ƭ uJ067_w{;E~Qg%{]Š=+$DK (u/ Wt+6<vqW0ngW&g`kHV?EBu9= p7;**xB6Da8&S0acj̧S\ 8.okm͟#C3y9ZB f'_fbm.rIQ4 $㮠7Ӈ{6-ߨ7IkZ<[`diOyΪ)5lΠ͆$X]}IpJE6D#wsExZJ'8{,#Lqd:M%`{*йO8ef=)?Zqe#EՁIg2h=) d(z iif{,G w93.Ќ๶=vz#wꈗ ujaV Y:Xy!ۺ Ք2M]9==uqί&cNodnJs>oY3tHxZNJDY&돲7즋<nt/;61c.4CPPa39)&O >nj'r٨s*<ɚ7ΘSu,A1L @eƗG$w:cdpTX1$Q T>r|hQ-)𾅧ƺ@e>jRs֯5R@ )X6B3w6q۝hJ8b.rTNI 퓛 ރ ;'DYǮnԏ\ZO{;B0k* ~2Z8j¶IBu&Jd fƾˋ~Pa}eA>R5eEFWFMp&j]} "#p0S* @1+ H#g3@XEIt ǩ-]δ<et+|{i䚀n ?DR!/ {Kc_ºHӅ+z{o*n6Z:vSz|2fq׽M©Vi8xa( Kh!XTAkme@uUBĖ/Nv9.[J6`L+xܸLI]wb7/8qJkC{C~.kfni]Ku9rg+&%As-ˎPGe$üI;æ!J:?)8I-0@273Mr ˗SmO;vLB|CDNZ5&;͠$tgDUp9L M לIZ b:lȁ#Q'bRVFCGoyNoo%~ "mb+^N7.`m&q| ,z3N L!i\2N`sշi>$"2.q81K"˜YѸg-NN_-QO)B =LR4ȳiP2JA"=S {,M]@R+m&FV!Aa/6θޘ nfm|WgGh/M=MV^:%jɫr) Nhb"bŝK>'Ӫ) {z7v^|1IiY{6sRGKWAYuHא_V,+O% 1'RMpC]D;Ɗ>g_h6`yx?!G{ 6pw8 xqrHÐh!,O6C5QwePg }+ `IŅEg+oO(u`+$D6| cMZnq҅* .}9c z}30s !Tڅކ~VˍLRO&,d4Ra/i!RG=}Ǚ P7,tx ̞nL4ӺG%ا29L<\s'Ao믶Kux)YW@R{uy*C:RT?IUBfE|ɪij[/R9 Bs,u)'ACukF.:xrj's+5tswqE pI2t飮frJJx8v[Krt+sy$L =tiAm6nL ~ 9Ki4w溂Ju9a30W›WhARk峬DCů|CuZOH8X }K,B.L2Vq0p9XhcRozog2 H捪7IGQ6`Vķ:'2qU41xk/߲w/°B-fqpY<td`yQU%mJGNktArggn A[,1ϣYՆU(W3U+F'K7^F{ 3o%}Qzw?VșepCiVk_+P*@R:,qi[b`/AZ䡜x05>G?[c>L|f76O1oo|EyRXDVDhTYϖ/w϶˨_Ɇxѓ'GR {mv?xx$.A<AJ&g 0M$VbQw|uQEk*g^q/rHq'iy+ZlXvdk1 p(Ԩo~D.YCbW=S=A/vozRF7ڦRdeB7MB7O"^`nL.5Kє;s&4]pG9ٰ܈`IU_ )Hv,4GUFp?(:iZ=Pk2 Ch 7>f2S2Ԍ`G28ˆ> yI{ ڭ& 9rQFwhLD?n+6Ku;HLRLA?6*Z.+>7HxyHR7RbY}k۩505y`dEgqΑiս (aBJ!fgC鄻 m ,,`\XP ,vď| @m9ǁElXkoH8/Qv(:1љ6<]UĜ$6۸ȱG#eJSR?qmGz3`,X0d9(O{ u?vX?ȰϕTE{&ls_P|\lՂl6Y- x9MG(EQL6DpK| E+}5 7D|ƥ0,)\nbyW-ZcZͲ䠌=e 0W##2| #Fj,#]o1 2S81w!pPaYƨȤbKgcs*p1zyƓԾ|2GߊG=O +n']%`Nw1@DNJCz#4%c44nV]eCx4#aUt]ix1jYe.h9 Z#c Yۅ9ή@i&N g=-EEFϡ_ o3: ^Ŋ T7Y'zhsꖓt-u :{bsY@ĎsI9΅[Ai(~&:db;~c4QoCJ7vS-R-y;7, ƗJk1,u+ņb6) ȂƋ*P哴qsP&J6H"z.A%T$NL/AAI SwR#8- 4*KyBoB[xCpPIٔob<%6AoB@ơsEZvaǾj8YMF6PԾgp5sf9[K8x3GOW0O|̓p=2?kҭo}M[c' I!{Fd ,w)ݥ ‰An6GxpQ1ƺoڜ Ֆ"@3#aӣsf.JeƎ,_@Q?!D*k\8#8;vLwt J)Bðg:b2yMvT5.3 j3#A&>^ޚI+='CWǁ3b v]+ȿyvvK IҤǸO|9}JuUwZI+k)gڋ*&mK^Bץ%fRY-k IZEv_ 3<旣3z[]bM]1^(튋-hR-o=K篴-fhFx:/iY=i^̺~??r֮UCVm(1x)Z7Tud|JɫweYА"UU*pxs/4<,U//Ajȁ'ȂgpJhp8VVǽ _Pc#%a(. OD {hdBi<8nj%;?*؀MIBf#Ύ>y)N͉-<yɞնM'.Y_5zn\vtQ}Sd"Rd-!:;uVUo4#܊xo1Mz*mE~Wh`6&}0q}(ӾlLc2iά}aLzhr_yM[ "AAӜbä#F!ˋ9%QjPۧtȦ)jAyNd/[oU18͵ڻv$lQ ç[!.JhA@5 Ɇ4Čd)f1/R/EuvX&J mXCVPf!-kmqĐ$D)SэDkɱݕSx=$cO\&do$K榼Pz.lu&p3?:xWżyurC7ܪeP<\'B/z;뗧HYm+8\ɆD1^$G &!U@:(t+V {#EQeDO<{,΂.`螡D@KN憚\{0%c]I/[61P1ϳT;veI YXo]J[g~ A$RIύn3s7%lFtk BmgFϕπSW%-cIdH]` g:B-v<5,R^@vA ByCOO =b;na6qMnDtw1ic{WH&0;mBy{Fkah3 Hh229Iu.2ojɊX[UgWSMua|&(8̗̫ *Ea0ťR ۢ,eB6'o PZ#eNL"n5TD1>;RN'"^XS*zRg*%%#qF1ES&Y.zF,,y=ȧ>*sG'xMRY J\ڧZ0υpIq?ۈ X?Pک޺3B5 Z/OLou ~}$glxƟq%I~6WaJdjw䖛wcƕ Wa,` WԇtOD=3G@zPVR9A55%j~y^svB}ث `,|o+TR)ho@8U ;ՊbGh"!4?AgtX%Ki#oQ/^8zO A%)Zg'Jhl5yߊѩȴ We 쭑}oCKۏH20Mˉe f&9Cdd=ewnMa3 j-jA#SFZ;yW&&!qݠcea!SWwU;rXv^d: OJ奙8 %NJz9?:Iuz=9!˱2(ӜV/&!V7pa!¹߆Mi Fo-ZlZQ*bcSԷ57`u*y+~nHm':7 ̰S|)?~k㞤!$ 0)NoWś|lY~jTOX8#3w1h ;܈h$ w PI,fygcIJJ$ЪP0Xk\AP^ˣ +9Sy=͘@|͔;JȗYYN#<1gKX4lGpsfFԿ56n1s,}֥ЁN-X}x5uMSBH oƧOLKeM J`Hlms0B^ttdoZ* kv@׫E=]ʧZ'_P`EI~K 8o=N 9l1?:# a=dt>wE!1nx0#khxUdn`эcqyC+s\6OPcZ Nhў$>-^n+K2j9WoO~bVC@@<\ ,A3t8\ї',_I7.r|o355od.<)><0l(کMHn >1;/קs :f6/9_9p}I4$p1mpۮ(IP6+7LЌa 7ݴ,V=.ff1ּYapn1Q=}MFWk1@e&Ne+1xDlX,*|@@70]^zM"a0C <y=tY} "n-EմVDv>OV%\g\28x3S?7xM3'rߕQBE YlJƏ0x:G38S@ ^"Ya80= 8^La#wOg Wx7h΍z&jq=?}'D=qX,#<3Ý)`7ϷIAS=8 |p`x >S2 aȮU З?e- x4=#Oo7Y{m.si5.9ڇÓ+35=RHy(**9 =w*VZ}6BɥܒDzMtmڒj-q缃 DV@0`φ͔a4F8V]O`3,;1q˔B'+ kL?˩鴐9~|@ eʃuR"Wq*y8Ǻ-%_MCZ+vY9QO?-,!@,%!8 ."}6#1c6F7©ɅЛIlMیS_aa,Y(gko&d/L~jؽ?XLU=z bGI2*ʨTW4"SS1t]mUy-d i-9]5w\UODrr#uѝ6veVcyRZZ ֺ!x'pnϺS{+aj0Mpϧ"OomS5~p;jrY:dރUXƌ\dw&;HxIǙ6EW9d4Od16x=Gv\j>mɉFT?6qG Vݘ=彃_qR}oa_GM w&9q7GQ'%W2[Ϧ\?*"+I?>;uI%NY>PJ2?PDOO ۉA[񦃿.1X{N.wu^0MRǐ08R_-β\@8|-Im-|_W`ET4m"XGUx9 {.,8C{‡<oБ%'A {U"@9B~Tm r5ҥ)*G86 ܲ[P:7jyf@X 2[i,I+`qrkvE71izSЉGҙ>* ԙx%IirU]¿b$X; S+}_NBkoM U0˜ ֥NO*f*esIEb߻_q~Ce@<m2O +12>FRWn u4/EFXl`+x3 )cֳS0K<;,vWC"0_-0$18pr%swjFħ@G%>l]s-Wxm_keAmkc=%C\S?$k0+ZNle =e4vxPV-"+:Wz ;e =jb9Pg> wH5Lﺗ_xvlɈL H 8& ..lnKruFk =hȗ9uHED3@PIH`->|>v}9Xy:\T{zbHq 2vʒR骁pg\HoqW MM6 ) /xKgSk-LQw\Ž#U%uNEݧZC}DY9%f؆i%>&bwZu?򩢝~mDÿ,rho?p9}@ܭ7ښlBЌNFgJE>j־bNɏPa0[ӎ%^u}SR/UJaf'uKV 2vF2dڲJ׀*ok'?mITvlYZoi%>w#x>a@3' &/Ie5e,"MY]n^yZZ;Q( 3+e83b,޶MC'bsRIq}@ߨ"Vq*+ϕMaϨ-5 R(q׊Y#.V<{o)Bzn*wK^ԼQ.("qeLSqJУ! K}rio cL?c;?:IiL( ֌|BJZ &HThDIO$]D hk#\KBAr@VK߿:so}͹ ǣ.ꓯgP0p]dFU1`c\\rjs@E ^B ç,[y^Xھ~jJ5>Q](`2”4ؼ%JJ3{ꏱzTSz5]f=#l\0ƤsiͳTDN) âJwyAkĘkxWF7xNw\h#Ĝ[[h'@fauoȂON1\`OL\ʸdg{xˍ;?Yhm*Gw"Nk&j 7S3gl>i1&yQ2OE`7"Idi^wCߩJϓ"p;ba›K73.rI֫ubjO=pa=K2i&R qKifYWwJO Ƀ<Юѣ{$!i W}SSX +Z9:=aID1*ֽtj;eJm;S|y -*Vu*/t'\ǨtE|ёxhlv9ySH8ߝyJs>9}Bu#d2jm[-.x*壂:ˮD'zqp[+n@Ѳ m-gUTOļ]jdg_:b u@JިE>9DвjcEJ%ié @}Bf9 ?^#yc%̈Fuc8zlR 紝we ?buft8Mxk؝h &hW KxMl  5\pJ;H OwTI$ ϋ#J6+-lɼ{+̃fiĐ)wJ7i~,vtBU[as/;"RIIci p@ W$Y+$ |%@u[4ȁ~uC^di=casڶF@ځ:Z7umE| S4@j7*bCIdƿa6e"ilm dį 2|k\`|1l=n352F|qX\z'/S*]gq4|Bo }q1X|3QMJq)mo "ޜ|ʘWlUE3jI-Sڼo>3jjn2d{e)+Gt$#쾦!907!F=N-#S2R{p<6x+Fh{(]~!*$@3SPqE:k}5 U{5kt~̮1HŸ2_{o{4frCS-a]MokC&xStv6*HtvĖP=LU,>2}}(zh_, ,nM_&*{1,CVƚ:埍48H-XG*cx8vQxeG*Pӯx.M+{q Tʼn;(Ui0؟Xel~g^Ѹ 9+o!+8v8tJڈHd:HOe< Ӥ}-a2S[ޑߠa8ܿO3dIʾ' R3͚*;A.`JHQCӪ0^,g !R Z|Q5Q5>mB$I&tR;?ZQ O(!! AczՔZmL&xʡd6[1LZaS<>5mJ릪-S2H?G]_40M!iM"Xv~{rg؁t߫B&B Թr1Tlk)]cg2'RJ߹G(YEUTF|`r/!@ D$9Sx<AxȯT˪?fQzVd`6Ƈ_7喼3ǽTo;8 w4L dzU^cv/8#IdK\@ TWAiTmzf-% ךZ|Ҥ,SK8#{4Ӟ^^w|qoh{] ~5#Go VNes!{uNtC`⡄.Z#N^ dI0=t"[E^SwUMT=p[v>{)֊"Cien_N8Ncgo,6՞,[lQ'q1N B.sD`ݾfzn@~rDaDԩeP+{k&Q l_!ůa_1͛˕Ha#G06Vf#]d&w6SeZܔ ERNW5" ͆&Q55t @3b{Ĭu|=6P`DAeyFh7evn؟ZbcE/+6a/0HjM   j)TWd`jS>э) Üa'ga.zWT)3/oeNyY@W]yԻ80q[lRI0̱cc(W˲`{^ϋ]i醞)~ZD;dJHVԙ1^Lrwh,\<7:Mk#s,29e.#))hƤ\S8cP!&I7*bz$!S!b CXncsC9!p$=xǻY%y&ŸA\Fɚ`Nm$<3sex*: 2ns!m8bKB˙3sS Öbrk >tAce=jhס%v:C^l!lx4%\$Gbꉱf ]UdlR3~WGuNX-KDymi~N@LZh:yeќq)qC !~jE#ϬXbivd[ 10lDX!O +|$wU`J&oFJvjp8 V 0;7;ҩӇ;?bfs&O:ҡ~19䠰QYEk!sQpZ&s^AZz˟'iGM47=<3W lT6ߖvFC9+ S3?#X2'ݷwr =/tc.fg:gY?yp=+2iɻk1oT$kg n.qJPFDi[*6\C9uǍ1A'Jov> vʖ?'_?%:.8CmrCWU(ܺ=P`ĉ~~ `M)L\8)r8Kt=L]:bG<Պ_4+\ oS1_"7+KD"C (Һ.uK :atQ3/bOU8 glԄ,MBi)qoρcWLa"@02w`߈Oa1XQM-U Z{αCr/lg`܅1z2K>}La@uI} ]tGi۔L):{ǯKZ UH*,Ҵa0{cq^"r8hM@00"Z1׏,w@c\mphUvKB}'e-[c~BaVh۫|X-*ߘg:fkqـg2B~!u$̶CHI:=Nl vǫ 8F譻;QnR:~'br,_lAձ›`PKD#Q%5v󢏣D\wB$3U<, \9ge`|P˕@HeGc!ٰF o,!ooz>o\~uY2pE"0wTJv ؅(9;9] j0%hE(<[h' 9Or8Դr=;@1̀QX'pfcM" ;I9t Lw$nǶ;G]Dг ?cG$oJ*xmP9F#dPG8}?xG8CB>"D "3Ĭ~bCp+z5Qb"ȁ_YD`M}}r4·IS>jsχrZ5d1( lź>ZU^E8եgQ0l];:o90$'IriUz~Z$[<_xFDxF/gKxK"6ozFJf͖NюQ 2oz2V뒄1@ 3Iz&"33_b;@W18q䏕ël` Ѵ:??(n5>OȤRNm&%>ZU߈n|6wMݿLx3G YnG;#ЯӈNZ;iThPNI:Vr5?jYK>k&eV#S}Mf܌qpitS ͽ%J`kTxXQDFw w WS"3eB40>BȌ9ȑ+%-ڻc͑Ngw>nWDFS}k\*|M*)0(LОhh *egD }@RV tqH- o{-,hKU:`7NU;غsd8~$ZpD?o&l\/ X@*áþ 8+Tqܡ8%dS%>Z1: K[LJk>J!ms b6 _n0ve83ń}rOW/5A_#)Cէa$'?M۽#H= ۭӢzmUe&}"\ªVi8S > RLzag=9E3釫=G"L]bq^b/i ÕlAk?zT;[>vqYKk:0L^}8 g{h+AT6j㈶k`+X֊| c;SNe"' D Tf[8%{i ,5q:;T褜|h6ŧ S#+&P#=X(Ɓh́>{+}Y>@;3Q7RgKlx=a?D5PG~BB5,'x^$uP2^J7`3c095ˣ[ ILbh!ϴVGonع*μ?'?iQ/$7%U 1^byJ';*qEbW,w(9!۴,u4)(lϛ=-h_Tq0QKGF̎@=&_vݭ_@/)M$.R5= $e 1.U`1Pں$)R,ՙkq<,*aDBs;Z7hO@ uQFΎ!qQ`rD^OB$﬑[a} ~'4ݑh<]zD2`ZyĠ_ƶ6gbŀ.ŀ[Fu2N)̩ȞzA6!O}3푨-;<-fyy!~2̮)ODJW4N,ʰ Kx*l_ߦXj ag87 3a{u vV)ɫoץe&Rp.(aRv_̏! Td8Lʍ|;[f#&8@Uc?eUC5-ks?mV|mw\S%>Ԟ{.q/֝svl;F$ҫjW°_\ ,gX~tLڄo{P& &dDI_Z{ uA)xeRr8q'(dj@_x@ SPpɟQi 8fxoY.}#RP ;ێ J}>8Y }kTxTCC}:HPXjzEEmc2ॊf-=J~Tr{"n{sl4~EEԛ1f5:'a{qRN+T=**bۂ'ܰrex*&de7} p j[95axxW\KZMK9ȵ? CC?˧zg<j=ߣrdDuBׂ^Aɨ8]fRGK|"xK-Ww<}#dqPFv\v]D:jp' bO߽Kc 7hVG #\@Q*A8 ex/EZr$S?]i𤤀ByM*XA{Gt6,lhݎDwYF|H97YcHc2ki)t?y8sK݃Gu6nY ůrfGtL@,). 5Dv"<-2= ʛfjuPIzOgL1YIP1KjcUQ+MU&f㱚̟FCt=-x+$J KW9- ( 2l;XCDc3v<^"dD}! t S: xFTޯMz'?|͹ioqib@BA 5SvpJSqz"̎4oY.D( |W?.|k`e쫵c@0o[LHeZRCCs5˒|L)m:sLAΊFe1Qa@[p )$"JNOy-dz~F E+olq`XqP2cC:mPXI4I _dŃLo!U?Ѭln.vUhk/#_iNlR@2_FۊD@t<}7,X$Oz0^Y?Ẓ5xОi׮;V(#.cP|0.~_ &t6^xDgikVL5u%ěj3cYI5ߒ%vx~4+8t`|O)w׏B_>|gfrw2,givSX3̫Q}JKD3ݭP?a kW TfF&>rl-ra<(tgOtvKG;?YQ= A ¯\:2Q9_7NOk+D%l+(T籀$/vfxĖ:7;4[ݓI.<ڃq r~K@s:+e:iZɵmQ]u ?)v"*#WʙWl*%rV*|T )u>`Yo8E^U:ZBFzv7 !4z%?k/.TG@r͂ "$g3ש4yb/Qؔ?ɧ3G2±w:dAS{=xED;`F9+ŕ6Y'-C_͉۹BYC#6)/-!j"Oh퐥5^¢Uk970\'B~#s7e~(X1wwۋ(8`~@ m{)mG`sv3ISiǙ9D%0@g0#8ױ2"o[NǞIKUSA' u vF ui욆$rz,WW .l\bwK/j~7ĵxwr؅GT"PC.C_kV_܁> H͚ۚs8>Cx:MJ[)=wআ<[>[#rU#ڃK0QcKP;h+5_z)G&n:Eo;!B,"Y@ F$Ns/?`l#=_RqىJFNe ؔ/dDHij&?%CE!|縉W@kUm3 ,XeHx Y$/F+YkL1]OHͧ6$EXǩ@{c;z8o,6$ط7RQ-o`{?,p^Tl ]&h]n`SʆAs7qRH :sceba?nYN`Bޝ"xV:&9{B”Hh:#=+U6 ehC| 0h[BRcFDa p'8[q=EzZ f$!XQ_TMe^[ai}Zh1>#M0]`%]7SfغN!UqdҘk|]?1Mr'|nV1B jJ]'N_ ٓR&OEKJJdO?OK,P}OKw7Qߏ} סi8)j4Ose{Bq,JAQQ bzAP>'& &]moJ}CjN/4:Gʝtm$ji*ϙ- 3TZ)sh)C+Z0+xZV aqx/?"QJ1j߸x79qP0{b<#0Tk^JUx :7oq!>gCx34 Fh J_t ʝ{hkk2芻loYjj6~޾ 8Ja2 [=a)T +6)>6I"HЗu"G8}/i*0, y7<2{Z^f^GZ('yg|ؙ[>ֻMCoڇ冹gɐ9m$gșs |ad}+vX :&<=ni5YQ -,{Jkyб%F5<F.sx-_Ǝ-"{ncYX&_]ȖC ykvgk>ݟp;Q:q7.87${9S]b:MExL+ɮyho,BCym1&`!5Pa8b '`:pUoZpuRyle┢(nj{e8f[(15 [o 4N2۹O-Ȯ9b!]! bޛ+F|Ct :^o{0S8WٰD ff ?by3jVb8ˊ9NL/jLr~x)KDX[MYu~%?HLvMmQAs,I&AaN3,ݬtQclT$|6B핁!)ֆR|ѝvvj(FV!g mѺ Ak&A]@ޜF^MiHUԹ۩:{T>[]?M<$x5! 5N fꁸIŬRkѕںV`Uġ#~]i;|&}«ǑJpZxd]HL%ݎJlâ7]MPLX} *.kќxn^c9e I&t%yϬb9{JG' H2YqdVQl,)r((΀zQŠZ6MarFO$h2|Z :0/ h2mT/,2b,k-Sf<1?ٷ1lOD_1z>޾qeM֢d f,8n;s%LڒFl L+}QtGㄬ ʌ+&L'ذ.(UD 2IZjlApBU3iQL%<1eo[z_>dE/HMî"KQl<_څBI?N-RQ=)ʶwK>eP>4ZrR0yGPhk,s!ypMZ>gYc]_~:x qp-$J)dFS(sz*?&Df}Glλp]DÁ4Rl}jD5yx.7NDwJܢǓX@ 1-2\b5 /Ezs5E "bNAC{&&GqH)-1mnP+h% gY0=lBLOb^*Q@v#dBZ@5=4ڹ|2H_|ý]=yǞTK?(0ďwRވI!/AA@>M xCrbN:?L-\ˈoFҙ($]䟌1aӘX(nIu9a &&ƒ.ELƽX$wRw 5aj֕SP;nxUhJ4*3]5c猭QoX#Mo_Sv5L7wNC/0Ĵ4+kF*ygOl&e770 s&\N/76= cғ.ߚ~ABYaùY!s~bK"JR&^bg7F3"彺U#FnAymA1"'SC&EߞyPJNt)'С^Ql=_Glɓka{@ L<%_[POE6&|ŕ,8HW YĸpP=sWLKqsC5Fe1-4Co:usXs?SvHBRK׶ .AKBqgSA_MbvΏL8:YL$t̓H[y}mY r/GL<=Qj^km6LqCЭ'1Ƥ8GweZI JRTpn ^6P{t$nʡlGHTl_^_^r45xoee ]Ý%-'?pdvXۘ"v0|?b,!ӿ}TZ9W5lk7==Ml*:@*7cYP`eNת=ˌdh51>ȍuZP:N?**-ļ\YO@eg{rHH%-r"Fo3 T57dNP]j>o[ yCiFpzLg9<P}sxyPZwͼLVQ'J5!/Bl2c p4:`# ;ƽx˫j޳PbL1Eoe k : ϵ/|qW2:&WcBX9Ukǘ Rvg@-EnAGIXͮݡɣ˻C JC7Kָ):r|hFLW ;4Z+VmX쇖h mg U]Oݎ$~po\1UhMT-qHP򚴝!5JNBNIi6I`(b\U۽SԥV2m7DZt+ t nM؃q_p YuIKm]bi-OOS)p/)SXUwR?*erleD4C82O8Kߵ%ݴ;n)a.U B λ(2[XIRY˶鏀B\ }EP tR7S T:6d%rzÂഺ,gXuɔD_ Ҍ C.=bKu? gi(mZȤCBX|/.[U}a#6SK|؉ː'd4dzNN߯bٺ{Sx7s$w63kF9äfEQ, m-_nJB@oo{8_ \?Տ0ۤ/b?FpN=G^q S;1ع jpo{ސ.* FhM?¶3*ϸU}.Ŋ\, keىjp˚ OLię̇gteG #9^)L=|xD (Ja' Z}j>dI*]@2ϔ(Zx]ރ= S\sDi IY}F2#/SNRN W^hvFKiݜȳbK |!Sjw>N2bNMˎִد|~y7T¨Xr9 &̷ &-o o~tMP5\Xx,Y4ۨ*)5Hv2G󋼸PE2b<iq%\WyC߬l )\Pʖ=.1ܶ$\Ds;|Jܖ9c civl}%`뭚jl׮y\Y0w Z+xsugȡG5@ H>-XGxUQ87OV%6}(D>v~}$V,Kr <׷P0NObwJX?>f+x?>#SY6~D9 >\Ex1 TP?-4ovI=Gz ` Q{loruZӘ V;C0GabѾ7(ȇW%L|]>+a+{R*y [4ߑo]p;tDtVj}t/̟{a %9 u]*zBjyJHZA9I 7KpR}8F4Rn){+&^pG>)|hljp/3B#0I8Xe*~yr-;A1r(fz0 C~U WXfI玗}m^:QJUѷ|xku0 ǃC 6zwajb`~m<@0Jm;~k%!rwbAp*srHe2l!LcfM*$M ~69 qz9qܘDy# %A9&Ըi,QFZt ށ=Lj]/[(:AR^IM3k+-є 9rId_M e9r㪓4OM^qqT>|֥$胰6F]}#t:Pp i~B^&I5690o ÒȯZT)4JFN.J]%H;{7Yߡf#zb+BbjzcfS`1 b3RBqjJ˳?\4֊>7# @lGmdVȭf6A1)yR, c}+:\W'O3&9(3sQA~@ݩù(yPv;f좟ic>@=;}ZPj8Vuj9y7M y44gCg{hy^]|ьEb󽈚nH;_ `!y[&W%:H֩8^FV]ӖTacTA?fۢ*]ԱtLEy\Tm휹NJI$.N}# m䃖.ox#Bav['"$uR?RI\QũWZ<{f-LiL`!LغfT)o `%>X8Ϝ#Q9Z}׃pκ;=+#7%^&cZ:z^ek[,6v/.c6 N1Ќ!Y%ǨH9 ;/#u&o`ā<^E_=y\ŏY}/[G\B'7Z\ Nz8IîAl!K5 ޸ijw #g-'6٢5[<ȾN@;uuZ8я }0a`$rE‘MM5 7FZR{nS$'?O']eBij=1RIqđGnFrӶgD-6I d,[BgRU^FeS{iy+"<#6n c W\Oz ·2\!4я8V<޶`E\[A؛`9V6ӭbK2eQ%RDkê8|XI~ΰe4KDb7VK~yTTG}}>ʫE&'E6TTcQKi )Dک . (cR^6˅^]W* wL/lZt2= G^KVUga=yZv cP$ͫУ_ȍs""^gke;&b M*Dܵ=蜦yLZgϧ1wPnI7}[α׾n) *@T >taO!{EU4c& G8޿?7cfnx,k= ï{2np%j@*rF~bxץ"-)/^1fŘ ` 5@(}nN*_PY`֡phΟ\f+WV?s^n\ =é hi?$iX^3siǦ{|N~/d<.5#xfS|I,l6@+n}S5AZWZ C1FKL޲YpSnE9\.y]N#2?ej"謮d3`kNsn2;Vl@F* 8ܿO ~mpȝ>{@rN^%8]+$NްNjB&gs(Y/'=˻2 ߘ]Hv} u y\)Idp*̡PڶE=RGQ z5 7CU.^n,ݝ:f:'/=:ZMy *;\DH~[&v sKG,W4*,|pm;bGO7L*u(q>g9w#Uŏz@_r$33b{G=%c%S l^VV)s ;Gd4}yen85 ,78̞)6'tZ>!q2 $uBv|C#\Xb ޯ)2r] (kң+]Hq z_j\<$ 7,o:cT&a~tT *X&ҿi#z$Y:"Yh${{rka`m9Z@6ɁMfA;pc61jxy;1o[Thb,t~H8 )>czttPtY\pRHM2^`InS"8H6 p8 5fooLj! CeOGE='M nӠ-s _M\;;bVb(vUq{t6S廃[fX$<-"A^|O. {y-ᑵcPλw^w u.^Xw/PxRYZ .d@-! Sw/b{U^ix#sӍO.:mȤe !`(QF/hUwFp5@6Z}fK`\h[[Qܹiusi;U$k]"%l9:;X:o{4D{5*w^bˆ$ u)E>(p.f ud+@dAg2B\od f1iۘaTmx2I@HBF=~E׊Okcw!kHmw >2C !gLB8ʻh=1ˊz-$| N֪c 8݆Poq_]xz:GqC~PYz@䭿BEQ!k1bڏ^*e*<^>kȿ\Sp;!)9DyVWUPpXDAԀygL_ڠQ bjn|#|6Or^zt+4|/.q]$ Ÿ ,T Bf:"L_$Ɋ5aЯ9'nOŊd) 3Jv ԫNt H =ZgZNJl/_Sc$ux(UT1e :^ ZtOOz%J2s`frkW=Nt>=[~/ #ryCds5SnqbOfEIw.S&|ϴ-|uy'I0 B:m/Ĩc<&صݺ sRD04T&eG ;s*oDFvd*s-텛_5Wly+YtG8q}~wUc'uDaOwN`cI.nJ[uc2}72Y&6z1C_ﲒD]M=+( WݜSM~82ЉjUm\_2Z 1L9*awWΠ\̛uw'>$LF|^;\SBPitW&L{mQ2Eh}C$!k&?& qvVi+-yRyBLJ/7<,EF̡LZt%7j+H|DԷ]Aybjgv՘O'ۣeBNXMew %g^]Nc@uJ?Sg,ow 'Q"Urd=^ p- +? mMrfOep!7PY=>udp QN/~vp@-H wB1s֔ڈc$7i}w^tVX/=Hqxg~&H{(fGۀl)zQc9q7 Zk+V w+2DY_k*!4wȇ:T)v>=xHuH*8+-il8q/^z~vhi2u bQ >PM8} Jħzֳ(PQY;9Bq囬- RҰ[9 }0y/ w`LE[r(zKHk|-ww8׵e# 8D;2 fI)c󨯀0F1sA" S sydy>?=hY\ SST*ȭh~ 6ͫby+ ߱`Yn2h"WW!kAuW)zB< #y4Jw;3xTIn ѻ_p: J-F%PmiMBLN5ݗD)Ln9l_6jèlWI ScӵKu>`tq=<5[u/!5V- Uϣ3m2&`p>A/۵OkwwB Y"I29sLJc)m`;d'R2;c0IW=p~hcϒ u:aA< JnU 9aةK6?Sl ̝q ұ.050._0L'sKye }'ϰ-J YAtB+ +$NX-t!k3FB IЫYaBqB:kWL=# ՟G{H?>`G?%o'5;K2%[fcI;vc>n$E#RiW-=DLل_d&<,_:fLB(,g0vЧN_+aےцkWL& u~]_ydޚV$8_&#D{NJPG'Zɟ@8ƹ^}?ΊIm#l~6g3 aŎdBQ~GL, =:אkgs8J(YCF`j7cW_)^S (F; 2cA֋%_Lli{㏮XuL+adC qȓf]IMWe{Ө#)+ $c)}.!{4YdlZtn?{B cPR`DeE­y?e{iS ^H Ϸ|ՙuB#RQ ؼ|(c]cn2`z^*LXXK󐐳 $\=V နZt<7g_STKk9QŔ$_W F|&[l[V/g.8Iih_k0 ;8H9FU lvTZS8ڬ>k,T6RׂJ _` U"gZC՘щIuWZ5[#$6V+dzTHqˆӈ96Cy߃A.4NJ@@vC Ką́{;o$T+Tdv+$?`Z9ulβw`EftUfl%$xxh>ݶ8}E𘈛aXQ#pvr+o:=žH1 dkJ]!Ae N)#@x"Tu|Ouޞ: lUޞ$ V+Ęp,j#6-~~p˷fv7[%'v@6; Oa Dp n2rZ+;$r8?4~c//dI=AFAgx/B)pfT Ksmy)cF{!]& 1J \8"lH&xty-n ̼PMO!ƘL,hE Zet+>`㐭y!.v=bF5;.ԓԦfĴMF4m‹XlϤ+Abr2XMYg(Ϊ3gb¢UusH>n<1.$.Wh]^lbh),2Φ$ш>kXW> ͽ,9]YFxݠm\^j~۱-?hp6{fBnDll7{s`튅"95G+qxB#*APA?:M;T(EfR%r'>9۞3Hُz2ʒr2cMu!_OnUBHKe4o/MkvB߲Q3߼XbDv&EZ=]U; BGg|RYh)K+9C63P}1a cNK(RQAy:K`:YPe;ٗ8!)v{Sna3"H g)Fw:窸S+  6hx[ ڐI𻺹#Ew+aX+>E\f4bSOXlB`!WiN釃u5$G_;!7lc(lSrͬ _?7tZD"pgÞmTF횹xrcW8<1׃ȘT]&4VYx,8ކ|uohjSME5 릖ZY1~wǟKI1UaK"=(Q!V%dEW9i1S*UFZijֳ:qu$8yBŶ"KY,ԁk<4 oęNK%ʒbo?dfYn!&D3XM KOkee,z8bS ,ǒ\SIVkK ))`ʃ$, =}Cz$`B~ A`8tat($-C + cո7PÍ/.?N*vwm bJ,tI"qMQ/o*ac`@.@}-ܒZ/:~ i tU @6m߾FFsygt0Sy/LN6MPjamH }]fsSn S8zo睿uϊ[^_޴Oyf||_K% E fM ⡆+:, :e6 Ⲉ;BPN,b AVD;Kҹ7N'P}߃ŧ!ul' \ "3h\TdKGYRRWR=?:;D`M{F5UG82Zˆ`WV;'lj́ < 4۹XIPڔ!o$. &ڹ1&l";=\Ż \/ں69@/m=Q]*)pJ5X$ Ud >4iA'J;ٱ胯չrTYg3̳K 䂮CicΓye|ӥ;]] V>P 2|h>c-b|RF|q .霤t(߯vkYh+@̆=Jtiwrz8PBImFr D/Yf<1&P!u:.S*6옐a}PV 9aR9Jcmæ=fKe[%#t98TL1Gc2YC:*)ŊTsk09F\c]Kfb&QՍCΜnP 02e?HZi0cH@.*Oˤ[/4{~t}m벽eבz4*OǘIK&mN^- 'Y%R]έ*b cW ?O]{O98B Hy)NLd6ziYЌ#Pcl}pPk 1 lve>%ݟUB *"%K):0|tK6 :*F[olꦘYDEK1ao4]pA",4JH _Ql]@GD1X ZVRِaKnOj&Qu[=`PUU5y婅{{oZyu:o@ҟ``!/l5.sRcd}D"qK-;) 9jh%ԱZ° %Yp0Y %%;w<\#H5u$^65}!jrxOEO3Q/]8ԘSg0*0^%~M}acE}rM4wה䜣`2H{]FǮ}rkFiz;$\X"`1CYg]4ԠWkC&mEDa|02l6BJEiVJ\ՒgX$!^5,cʍM5U.W>t tvG2ה5_s0(';?x'h '8nZVW" v[IOh@ E~F+yН].ܳr/4E8ÞnΜTbĖ}v%lX=_x:\*Pj)6<;\ 3f|_Ç{Xexhĵk_v~';q6ےi~y^~ y<\Br @|35LgUƛ@qY]/a݅;P]3UzWxȿX߃ᙵB,ۅP!X9|H>$Ix?3DՈ^2ϧ4nO#D}O`P\z2?ncJ7Yr{Z~X谁@b8Uqwޒ-6{",nթ&_jrc֝7wQ}m-u/pKEZvGJ@M@ogsK}Mz$ִMEDѓ*NAܑؽOGF^6]L~`5nɎPIYuK[Di*1_nZwkp0iv):z S}sW44igg ܼz\u_԰+/6S `:N qIE(>[M~;Z9qswqdxM`sT,: `-{o)7?M5Nu26- Gw9_+177:'sHM 3z!٤iMOU;*ڢ8"zO-ɥoyFߜY[(VY2U%րj6 U+YLA Tcxԙ㿚F2Y}OY@XpA D7_jCʻ$m&50XӃ` &`e)i'n<pR<4lv8TA?\ܺ&X b9oP]9nnTp7P)SP8G1`tTlwGS̨QB#4CK]'s" VUB*F CsWRP hԵ8 b Co7~;5X$ vs9ٴX98ҳ2=2S/ dg޴9c>xFAi, +a}{p&-za2yǮ@i~&[<9f4̙Lhe9_XӚH:USR@ElnA;8|0:HxE H|e.VL6bхy"Zd]J lġK!БԝBwU=hijӹt_Pr)kUW*@PuXUc\ER]H>U[Ugh$ o/~.#JnY@PkXScؕ]4xqb= $/B :g 4U:m[o7[ZE%g qSU=՗Rs9z[ܽEϑwςz/Cp`x=碱;K-G} KE~[W„-4xھ ( $=Ul{Rl'^͛Vs~*Ebr]ڞЁe7~^r0C /t$h/]_I4`V3.ȣ'F4Q5.i{s&YwAMނvB!.A{!G Cj dHE4/F҇7@&*2}MF hi_>rA69;v@t$z3lQ3+xjE%Ce8n5=ǚ.ϓ镤~GJcɞ$~'s  uKm2g%8~ RaT![JoI3Rq-#twzȂ㪌zM{ؚKQWCFjn#X FbobڌŽ]'m_7:D?#Y&q05 2֛* o`ڃk))N'z-mGkP$'3C%f"0q&(UC%'}2o% 0W<]PkdO8ڴ?8/9=:d'{jQ wоYDM@c/ jȲħ7c 8KH$PGBXXQ-M6DC>s GWOr#:}V:$M[lLG[V:<9`ciqu 0',fڀG4)? cwrA]jCϐ5_4R fh߲oףuԫ$UMu1@"%Fz/%KcUm_|)OA( 3M(ԛo#zt 9-dУ4F>~m4GūJ;f1ne$ %Pr;RI ɇ2o]sC;3+麠@w5,׋ dP&I9\4/ZiDWMqyKUnf_x<)̅!UPdyq;0XQ(jw# Ho`^H$1iYCvxSLf")C`C ,6 PtF)7DM˜)T>mfuڎ&gnмsh~o SWv7w1Kz[Z+Kcڤ%E X6g=$9)y ݫ*F6 FdcV}գa~!ZkwOȠ5=t c%t YlEz 2^MhBBNV0'1HyBP6L }Vyָ 1Ɠ#i͌IQ :CZW{\0<9WkCYdC|ͱr:3F(bӕUR_}6AXTĻSgm-O>t¹bk DtMUZ*ƕ#҉S=UjO^a*iRJtƚbnP6?ztdO"cpn9B;L̡-J%#7 {# I)j؟<}@ V2pAץc)ݚ~Jj@!O3Xq#ۑ"zJ׸?0s=s.q>b#ǁm3pR ڕR飬Ŗf(Be(b %X-zd\'iM%ם/w1nc} dFz)UϞ)krB*Ρtc4M'K3e kTHB؋Cn:Gm3+9{#Z-;+Sђ}Z5|:' vd٦YS3y]WLu*H PŷN̮ObCx s5{?/{l3,\Qze +~  CU-+) q$b-\ K\gJ۳~~%/=ɻ1Ta"ѐWioŮR:^KޱJ~Jvyxi6\zJ):>Ky"r5cvđؿ\OLטчruFQѨ Kc7حAUZXqg:2ΌZ7*}xF8ŹUhJ=c#~`!J}9; '@KHcyFi件,[=҅#LB遘X &=3r"`LFo fand~BǯS!AB+u3~MOaÎt[됞!C\ڶژaO7bHR6,bVa AKimJlp VZ5juz?BZ^sMps'naUxb_Z!L߰Uq:ݕYQ۬Śq}%)wM*Y;f2;Aߠ''SN$%MMB?~ .Y]m*=;*;XqCI“ij*={k ܝ*xӳ:Ʃe$4كOhQ Wbݫ9ȹl ^ 4ɘeD6Gv7Fy$y^)x|煊 @ 2:[4o-'Ǥ[^z"-E/\kW]dV1We_ ~?!X eʀD<{$Vˌ֥opVy1Z7X@J.?hyqp'S:~KF4BR^" Έ_BDťwB!`e- q$y!~_: |IfT@[b14 Nr5%]1־G'ˎE$z@V?KxXSU~M8 ve{/Wj5ػYÆtOX_>V.pG{dpm1.VZ(7㇇|/rN=Nq К dGCad컲 L\pܛ݀ۥ/|p|YYHgnT,š`B ~ͽ¥c{Nbvm#J\Y_ù#j~Cѓ@P:<. +Ϟj4V>ᘈ 0<45$lSF!:BV4YӤJwjBn2V9Q HݗX:Db{u$+hO5ywVGiU tv$olJ!tѣi2G 6D#v]ۜ~vbS[4v] ( sqL4PwM'\~q!JY];P }mzp*c-Wz] y=A=.yy8[J EwM1a?ISϽxt I0"H5 #?x4!)tOrkS&C'J DF'%*Y+z(RSH#o +KyoqnO#Glwe"/+k} Ƈ9Ov$RY`SlT)Ώj&˶>1YÕaMO NJI37zם2p[ |ã ?1 Vדx @hg[>`ХS-2=Q38ΛT?gVg$6o"4 )g 2nQ_3}R\+l/\(`i 6&HY7c߹L]1h ?xjK-e ozݷB` 2MѾo iptkH`;ck<|cǿ-ll":ƜGpmA8V~ -q.5NtjpeON0nzp{!; \N"07M V1 Qfj"zTp7IHWS~tm卝 "SU|y9& +C|c(q4U^L6P=eA 일D64d9顼3{BgWa]u3P@lmߴ,}@[˼Dlh9M|ΧiÓM,Y4,J%YbG_eǝ }9K92oѥPr,V %k^)\k-.[- S3 Z|hz=Bnv5V2LO(is VFCʉئv(\q glPD{rrllm|Ӿ P`?>u TYhm6Җ ã- |G>\%$+jK-_!m\]Z9eB-@wsAsz.=(ct^9 訧 Sw$yH5K & ¹ OOɭ},?zBul @ %c(Xҿ\6[: 4ypP[!_!D,_ˌa=,s6Ƙ׋s3e//jE "Xqg$2#|kSϖ0))FJ1Y[9^#)xTc[ ~#L.)eUTKLG[rd@{`w"OŸ;vܫdtYx޾Z {b7t8y(=ci9\4ސhɞ.j1/HI_=ۅ|z9M+\c-3VkfԌnuR4f8i3(P|{s A,)w"k S4_e_5EY Ug&l?K&  )lIBbMW,2W|~ĶeGT_4X9ly?s3(F-0ߙ"%gɸ[`/[!۔1fMC{1ijv PNGٯOԺG=&WRTXٖPq ?<$=lM>֪-O" zq&6D e b6~8t"+ULY>cZ*<^q }MHz>MdtS>p@$`*$n!שrcAzCNu1*:zr\*iZGͻ؇݉ǤdS̳7W6; 8101cة{c5,q<1NKH`y~ap_ 5A&Gԕ|_CR5. 1bpYd5l0FOe`ŻRsY:|{y\)If|H2ODl$!f5xgnҷ>yyӎ+ - W_epa:,IjLhI~ ?w"<]@y W6%(3hEp`uj ͖a_|3gMm+C#qo$쯅{'>3a);EfilnJn .FA'I?75o9L9,[%cڷp, V<* dxǕӏB6.+;eRO?ifWƆ>>qcί鞻*?a@|j @q4;=ۄmpE`?H2G\fVGc&J`g wRik-0 xU3 kw'oG$ؙXo&Ü[[2UW=Z:vӧz@4hnj ox*[ZzݏNSB[΋)4)ac Sxk,H4P5pݞ"Zo,$"c@ö u%z94} ##u;bݱHzuf~L^!|K݂Gtƈu>y1>b2iaKϾKjP8@S hЎO(vq `WZjc1&*$qE2[ŗhqSB0o.@JE#S$ 9c(k $b2y r$8vqznHH_m=vS\$sbhv [ގAÅ|(cO|T-VJ{˪4PL3$i8 ܷ,F5:\>uX=WlNω<( T&1 y^9әJ)9P/X*Wߚ@J0c'/lY"&XR*JOM稩槒HueFoX0FҿP8+|01 Zo!+TDzF;j J|sI~صgHj)yY[8i:41-- ǽV)._Ck?RbImgj+A^σDKͅ]sbf)TGHDb -2hF8\t1ZAtP>laP̰n{p/h&j`AoLqX=[L, Orƈ *BLxӺxoro_C5gv9H:U 3AkYYn|&̈rD82W6˭T8aZcmD]=eTJ-9~+⋭DՀlyFQs { (mL||[#)Kg,Fk7PB21ZS;6>$6aNha]ՑSQƪia׵M-:/O#)?'tːi`mMM]b@ENh,kS;#)^4+(4;'Cy' ]GaC,{h}V)C$^ ~ 6[󐔵bNC$ Ǧ|OkA\9k~aT"_n+L>TǴ`=P8d/IV@/RP][R:ԔT0RmxVAk(Q:Ȭ6=QcSS翾 9D :-}iY=,w#Fy폈rWy&wl.kDȌɝgw@ԎMIa1S0HGB-{dWԳ܄܏~T/pLI 3,?T[q%VYLEGchKyDC;wX_6_E9;ȉ M,te}b JhB[n' ß6h=E9ܓ0!1`lDCPNSBfZ)&.xĶvP\g׵6K];ݗKe'?(fIǓf0\26 y^ PEm~ 3b'=dFq սtW!㊼򛬯h}?HO]'H[f FPJ̌k>-rT}xhHQ,X>,vUX/ik ^`HWC<@t2Q(,ěS*  LpnZy;.5XY#-y,% T 'lٙ!H^R&_C%<e<1c] Tɻ&G CBPC06bS#]/&ROQR\jQlԈbR_N9aۆ:OgjL i>yZ}qSL®7 SgO٬GZ i:AlS ۸kaR voS {Oe3wVWgfՎEqd~R|fɀ߳@P-3$12̽]搗d+7\?O'7|'SKAm|7QO'7= Wh>~j&;P9@_.X ꝂyW#_xvq_[?=>]e)ʉ?3cCgkq 4wV [).` 8Zv2ɹA"/Isd6EEF<38/fUI]^NTY]SԌWg`-_J"qUc/oF:[t6 NO ?Ei!\uD㋊`\vV2=1T6O *3 |s5(?uGl]ڥOHv>+oý^1z.:::!<05+ᚊ,3?pŒZzqa, vi<~F6 B-۲SM>;٥䋵+}~ ZCP ^Xx%mkyަO ]1g%F ,eqgV2Ȳ\ծz3jz),(@X]u8u+~C}8𳭁:\ hJs#GLGx$&&BUEZpSi;O&Cm05u19meA@I s? Ma/{PaVهGe2fx~%b܈`PXaӽO+ @)1N Dl#\[q&r?Vx7-̤;.}"XUPn\>HSrnm}X@mL\f"X`_| jH0gL$@S݃+j w6'&}VFYf/L7ہ#cLgޱqLPWEX㳏Gngf.-o_bNZ3HςKтt}HlA^+Ƙ 0S/ˌSk9j:|gYj CvUH9jfmk BXF h+h"&is:M v-DNNk핖z?zQ6ƣQ)KdWú}P ucυ>Z>zzdO= S<,MW5HQFJE|f>ׁJ^ 1o>!xFl]r#7S)L|_{T6GFsh,֬ߏP|HL^*L@Dmfhҁ `z3'1 Dqq$q{:W"_,?Qī%68VMopRA+r47g;4y͉Ab>tn!\oɴ3iPZf9< upr鎓XDIH7ؖ[m:|@G49PruO@B x/hk\j|"7lӷExŒPuAX*aUs~MT3bH^ǓKDQ?v [hC1GC?Apx}k,>o{ P^E-terw`b Y7A߿EkjwXhRB}? 3 Q(=D'lxyeddqe[Vuv^:ܜ{W߹}ц,2n_*GPKѶP}2$ۥ {,|E~" 4/RBuC9(š=YsX2bCOj9.*NxR퀣[ӈѹ:A #`0 ;! 2?7=Eb{w~!ÙTx/y abtB$2i:|^Wro.VQ|Xw]:jp}Ú1,Ŕ&ކK8夗m7C!-B2pu%I. \2GvSjCmMZA*5exֲ ȗT^𾅺g1Q8E>~=^+q%LjqUyXYS>-Q:3Ǔ! |0|*.%ɰ9=VFrjGěmEP tRr䷀ O[8vi=Уc]knMK.PzEE4ƒU? kjgWMѓ^Eݐ#īQN8xs"&_Z n`>o/:œw2Oo\"m5YϏG}PzTU(О<Ԣ;n78Iґ.W;^8S .iQkZz4M&!̑i*?$NNI^p5`a f9-%2 ?|+jgmq&BT+1OQ Eqm;EiPVg$JY:b3@>s;RHcZ%EA?Ilpp巛"_ T;:d/fҼcCݗԐ5p ޚ6(wjrjAm3[-;gl|u,;*>jlH=y${Z ]{G%-UM,c2FFݥM>k(!ץ^Jud@a7\ʮ&e;]Gx^'u@[c_f=<# * #FK:1L4ӆ|W$]!=Z;0hPTkSJQ ,h[?dy4|a64;= il̗WrZ%LN  N<5=*tϓ,yz+&W,us(q Uɞbk^Dmlk5KqM!qs'~DyP(_]mוXm-cz hh?MXu}qcO o%5Sl꯴=24f-sΒZE3dblZ $71fkGמ#Ĥ/#{03!kg+߈&cstqc7 =ѓyH5A8]r$lle$tFpF Zd yRhm$uIfge5>הjV@g&XZv@m9_Bݳn#-UP98O+-Ti>rjOpAa_!Ƅ|cKvI OH.0ӏY襴 :y^/þp~۰pf2a_ukXR_-#`49fi_e!`|OfץAedE -ʾC&-vn#CAaS=JBoܑ_a j?zDPp h5L]oEQ;iZG;@yUPf( s~);Y~#}]˜fwr'~K޲X33`?z|SLǙgePjvE/Z}g31+lh:MI+ H%+*M7pЭuChh^ )u|{ c܋`c_!Z0}_[dKf/fPV'܆"{ͦPGilpr%nw2iF: =,rW߿bvpXQ11u*R \ ]~8qG/TW5bZqM,뚊QzJp;5?N4$TT1AqMWpWi\e-{XTR[;7U{5ZQ oTCy[!vӦ1?N_:v@?BȸaPw^/WZKtr<=`(D0|Pdzh_/&4IXĊFa;9=R`d@;vĹwf2OEWZ5]pi#H#~ .6H5rȂPVda_{ ͻc†u.lϗ1h{!k62Hݸ9d4DsbEnL!O>5n(507e0qre5n[FDŽ  |0i}2xrs dU3h\CT^C.4E"3w.uPĥi KvFTjjU6&o: O4J4DMfnDbgoX;D!] [Tֵ3Tߙ`4W[}ttQk  Y2ښܧ~/*.s91WCHb6Sh)4KxPjUClsqt4|z̓{1k/9z(xo 2ftՉ]׼C.ǃJVv5/ngIsnֽ:>7^s޼Ϟ\@|5%uf ?*7trY1wKS :nH$Jnc\BHEZe)E47 1]9lB+a'Y܎Pn1*sb(É"??jm+(5(H^N/:}R6W u T1 D!s;AB)!N3L-lj^cR-Y/ zyqz~ JM Q'eqtrɑION:t:z'b)>%”8I 0e.nrpg ~\Zf8`"V7sР zdp;ZW­0'l~Ngս:+LԌDPr%\vH޶R2Eɡ2MZfwx}ЪEj *':YBX㮱eB>wu9r%]i9S"e)%细][R>k9ֳWļ⢮A^g_`1#NoqGpVXwMqjr-STuw;f!陊Y?fxh-JXGYJ00/{>#.?$Y =RXkmʥR}Neߝ?KI0,FM#L뤏#$D G HjO 75pL*N LS#,ʧZ&jnf~UvX([r,MFmvX~,0t_&_rS8nvae/$J#9^, 0,_~^k Ut:[YMRz<"߀ dXF3(wToӿts!!^7*̌!;B*3U@KB5تYN?n!ƫZ"F)xqQE Nж~ ;~\ ȢEYo:3^T zf͕ ărT14^mf$ ߳}fsԩ =KSTr+ăR50TcW_'fqr6h>*;I; `JbseJ(tڂ7EG@v!]ogT`Rav(<i6H݀dZ&P)N -P@ iB'2+ݙ㒘r_NZEQhcgeLƐv9 zɼ ~_<GLiԽ$~h[Y-h (gxrf7ck+F8ҬuS s Bz M sRU|}Boe_(P{FE'`RsJ4?TcRV7^7s&cOx50,ho膓/QwaY :'0Uу9I5x yY]QB9{Yi115B^b2Fa|#vDfY-.j S <lNE@ٸYzF'YU,ms=U,{K>J0Y0'EJZ2zh,4JǵR6@ Hmi[/<餫+w,$A5qCz_p8:))j O 9ty9l,_m8S䆗SCB_ Gn]-TkÅO2ų_ڇ4ܨ!G+N\mK_C"(l$n*q Vӆ9Ơ6;,'Ҋ>$&D|lI[D 2fntø#9E'V? T2.mcvyn= k6gFR*ʮސs*>l1"w؉ * =Ql~tHV ݳM?st?^;NVR[J`6YvV'ɼN?k#^WO&*w(&5?-}y…vxU 5sX d0p6lRbmR X' n$p_R6zn|xPAzJȗpt'ſX̗& hú I̬ sIY XtAeMryZh#ld-^}6Vx1I: * PphTq)ŧMI¹Z~7>Mvx`4ꋧ!6K枧UoWKX܁Zlδk L^M@'V'%iҐ*k: >MO<>˅9O?+|,c ^oL/r2~r-L^җ9Vֵ!Ƕi]K_' 9!yŲȍV~=D$Kes6E{*1UΥYW?034!/TjӃG#eI]pEU=&axڱ G8)I)h_k6ٰ8N\ מ02#ܠ[NƖzEwڔoa܁<) wtⶳZ>u,>΃5$JiJOoa -*3AHνby T [־=ta)aγ 4W.~AEp%Iny!Qp3|~-ǝjAF(qJٖ'&&TnWxz]V:5W PܣT?kjlX2; Yɚ'@ % {k8wA&O@MPvP߼s jѦRNct=8F~NpNο ŧyCy"Mv U;^N@Ƿ +G`oe&.f0y}iMZW2'9.l,!Z9G=h-|fzpK\vR<{dkF)x|~W^O\ LFFA/8FlL4?w5`!@P:ˎ~6[Ff'M@{g 2  8JG0l?*l?&ԉ;|½%5dlfuh Z|nSȰXgH+]7FGLN%s9_h5_KU)[v;n!™B˸?Ts L;l/{^kA?D) y8l( 4l:F+y.O‡)qvFR- &٭\ZT"=Uz/\i"hYM?ߙGvΰ6VtEueK{9 2W :C t7Sdg%'T3>7;~V!ĝd";r<"Cs Vr6A)sHH̵"w}G7v<(x*0™QZ:t{T\ֳBwđ"$s<]?j ut] -1 rx_lwC =Ax"%njУʮa=q8+<֏}'ɸΞ뛓T= G_Y$m.$V-`92?8;U`6B%S6daON B$'1oy(P5ߌ~Vo"E6/B{MgFF;J![]<br%ePZAc)(Ҝk_QA3vX>6qGE'wӘc1^'FT㰰>9łWI|FxS<Ч DuBәf)^k块 kz+1 o<NMlJeƱ!%G+ԊJ.GfU}S1)^!9佻Wh -d"#Y~dbqZUZ%/t՗ `4b5#Pn->ǥ&keM&.?lWXV׷5MIGrV#VdJ {; YbT= ]ιc!*=d;TߡUb&lB(h -A}[]!?5f(&hrK]h3 C`fgs7z _0(UU;V82T#)>cٳ9Mf ߎ~`Yʚɋ2)7I.#f@V/߷?yC)Q`[@7ZBRY) _JL7 aayj]BNd;8A @Otl9KJ 9>ܑ7s1SWh=[\Yy0)nqdwA y=BHK~)2`?"ztTWk)gl|[x{#%e`z ]s! -I1U?jIΗX8@m ֊;m[S]x<$ pSCDz?k;zs51HaXq)p0O˪CLYogJ7 !ݧ0 9F*d'L6t5џ gy ͖4f- V靼j`q{jܵ9KOiUh7.tb9p v-Eʹ5R: i]*8 Ap#nr~"([m̱e{^793LɸTu~򺌖ь8iuQyqle?Vw$k.Bd=G俻رǏ8(.&GwRY ]֍EW EƫA-,)1}t-%/ToG,|=cQFu.82?5Ƃ+6ȏ5A6RK yv#x.hEA+vONiSYMT8:s E˱*C29a H_, rmwŕx &;X:Mz#<9|l1cA~\yW#6Z>DNto,ȵ)L-+p3m3-)=jIUBNy ໕և:=rO1TM8Wք@gOfėb.g#ުc74!m ֯A=|VA@F``u\D9voV*y_rX_1 / k0TcϷ晩 6dVTQfq ö!a%hdd sLBggyǬ*d0AIZKؤ,-Ehk'0KPK>GQOjkİp CܭIa$ە41☔g5[ hulQ ]:1I7&wL83 غD֬1j8`u>`^:e )};؀w Ub][CYC,RSYv##ߊ)\"mK?̲6|P#$JB]Z^'bѧSb&K7H`T!ھ.s[VG ֤KCqrѼ&Þq mI9ܑzԦ iJE8O 7}!ЈpxvzJ}BT} ؁L-Nl I7(]VRl̔iǞ kly ^G8o08[Tľ..:m +GS;կa0ठh;aP^37}ƣq_4GʜZPcdFpd2Zک'lyhA*`']fٶ-(6rdK7&)Ermt1_z 5ݮ':V@s]D䩏cf}%Vc'}2͟rSq G3ݗu|x.&N jo{-{-M[zv6hGp&5%-8q8TYiw6f,e]NuWj5 "ZvCñbS2nD:PН}4O־"(- <˞kmOi؃Y !|4h9gEA,twVzk@hqd$칁qoÁ!{яGŪU즾d?UkPv, I,:a*m \>DP/JC>F)WL]KrQ4i`Tzr,AS:FyioNzmaZ@}YL̇@ փ>J0k|0$BH'Hyh]w{#=hnpl.bb*l u"PpQ3MDȹ mv}tvr?[w#;0|ͷ\Čt1QF6T^2!,ʒ `` -Eݟ. r"EERU}MS6BJF.qd Ce)6J"4Ozc$h2J/RP:- AGcZpc9̿{ -h:>k`쐅Hjua%{7*NИ~촯Fk r'1ImLU<|Ow\_(|zjT?X'h^~f9M~= #SbT@4$21η};#2CF<0wM .an 0}/bb^_/A[pQnְ]1GW|ԬGiFYMkXwÔD=#WŶS7)4|Z|EwH} CJ&w5e2d%)-S(فk1ƶuo(3 fv#InmFFFP|~Czs\Ӏ]+fzc`hC7`\~~IJbcLҫҗ7XHR^;vd&ZCvgb%#nwCyg;/&R#n}Nabʴ<lTwjmFd&-IE5R.I(}0 e76Fqb-U]|l Tl~ zxr&:26*{^B$bo$VGf@rj{7fbbu {uuNq:Oz՗4Q=u$SiԘoiyq, +|r\vZ4?pYvИa% r|zLtNFQXu`\dZz1LZ]x 1X\jNC}rGϪ;0fUEG)#> ƚ6v޻+ 8(dv2__s1yGN3= Qn& }N$0d&n)C`dg  :״|ЉHݟo&ޮj:}h⮯XuVSn q˂OTDEs[Y"X)i8Q_^[Q)#&C!P:M\댔Hj q'~=XR!}~MSr̰ڞdzY'>d-GEU)h$AŽ\Lv/Xr͞,"G8\T9,CZ^M!toǴQcm`VN ,+3j|F褊'EoեIWY ]])̺b56apg^cDp=okVy$2).' Ĉ f;9֗l $޴Ìs_}ƼaIJ"aO$'ޘ\JPxlWO|]V w[Za UC(8=\D}(~!"OZ" .bMٝVqY rZ;Sm8:tQh|͂\|,"k$/[l4(gk#$OI+i|ŦdtxJ`޾Y ِ jNg`Fb+܊3=7e9䝽2Ht1WOZkC>p gZ*_y%m:A~𑥽:tO9 5&1]XCrfAys閘:f?[z?\`2X3kVNg59afJU׬6lAH[E1fc:nNQD(MA "rdZWxDWB̀X?k,8- }#K?~R^m.x%";-ȳkFE K4" Ugo㒽[tVk6feH 8~~̽qCQ luRIR.R_X Wf8hAkə*r³1 =Jf^atأfBbhlHVIPYsCC"5Oz0xڟ,ERv^ t EBZtvڢE Dž\k(Cbj *.'rPt~,TP2e}QAd* KKܚNޜ; G '3 +|)ޅǪoHY/qRt䄦.)sw4YE6 RЋۣl tý:piwN2k^5躎/JͱZ}"ô Ea hϥh~DZh'{<t#b ,%0>02#W#ﰅ+xYqya Tv)#w3p϶M^mCYWРD/E&B 96!!Q;\}!)ޱfaD92Fu[Gw:(tNJ`t}Քi ∜^]~dU!j$eOF.2s΢ ΍Pdʹ`츺 I>5O~qgm8c_E ֧*|LU#kiQ"C'{{v>M b7a'=]Fo#Re\2ƿ 䈛dw%B5ISdl@t mRqr&g GR`%[q Q;@PۢM JV,Z|e+ߛ#AE $Ӿ5z+W:#O[܅+0`ۓl&R;hKsF{{l-e-ιiⶋ8*3/HY+<Gṅ#sǂݼ6bszO;_gC_^Bt ^1[Q$ͷwJI$N Vz +'P5VDFo:U.M-Ҧ9lIJF,\?r6KQ3{8F#%0jM;aqTkDmwKmWrS1 08Eከ ^/;ZV [B,0T# 騫.S~a8& AD_om ؼ! +WERܪex %mdԠ0nO|PT6!Sb'45bD3hW i Gu`R?pmf[ֆ*ong⫳(2L, /+B`꼪gwz|qfip1MEil5wL G"! ighP7&rz_LdBi$64F*bC=]|u*%w:лt01:[*8A._hZCiU8M̓b$+mD8X5(D 60Vɜm̐%IJ'K=vmGc0kg3]q$R%𛴜=n?pX2WNXSd5X!Twu(:q<6n÷"+_#OBxC 5Kcbn3DwaO@~Wpئ|Q̯~:2B1I~ zzSY1yA=Ų4-Ƨ21a?bXYD;63̜~nafbY e7S,/KQS] M_7t@{Njѣoŏ 6ˍ<6:i> 4/=~=)Xg=F:qŞhigHOh/'*Tɥ<%74lD:IX^;đQ9TRSPwi.()d 9M TVl/\MXAD vy (rԍ.ˌpbtCg-LU7o#\҈žZ{]姀|XAj#T-|Pg@.FQxn BJ zm%a@M}}XUOxq4W},`zs\='8 @,N@iMob%\~Tdcf4@W<i#< 劣vaU=w ZU4Zp+BH([ݻ elˌIkg.,vr1U7(@eFJeLu{%J(Yd=Ark-&GC2(6)ۂ|=,xӌEm򉩙)  MS=WfuVmdUbRhA>$1RQZ6*bK2Gj{c/~lF۩塆#GJvƑ̞r`% \]IdGzf3%O{lAG~ 7Ex +^`uh뿨_&{nisv `MѨNmO 4gF6,-֮8rDֱ(H 8+BBVAx@m"|1܁/ck%| vtǘO/@VGGaNUTabӲAwWКKmJr0 z?vaLͩyO8NЖۡyvs0VӽC6K vyU.^?Ū#+XovHH1Qob%Cd0R[IK. fw8wAbJ%= ^[(sJ46GWQ3"G*L`RD _};;Θ 5gUTd6!!{D${"?i%  d1co6[sGCwNB^Ze=(|G}Jsu9Z!ĤWdJxD@)m c2MN̓v~=]kTzJ&_F1zxwg/jl9;a$McE9|Tl#>!cdq\DÃʝRߪzmίr* #/Y)e|4jhbߜD-B,CKdu-.ڦ !FX_u4ᘍīOpR8r$ lW RVZ<bZ 3g^YJDcV`a5gQ\y(nC'k'%8Jqbp tzq:$szt&HқU=t 免wjh"nHYAN7*vC}9עlJXc3 w:I0mREʵ>мU4.,Mkb9_"FFdxG^i߸S~:Ce,d ΐ=E@8._@2-}“R ,y% df=jnlXGAQ]??r4)YgShQkQv~gmϲm?qF?g8\FQxSqM IpG9ZQ#E b<Ɋ9NR4?Ak+flGTNoޢ`{oUs:{ |t;czGXD4Ua~s 63mbŝ!@ 7L0zc,`[ ɻ.ҫZ8$n(s'z?7u2dƌ",HlF X`/5nxRl7YȘnR(k|KƼykLYd-wGڡw0!uS #=w0qq耱]n;Xؚ* |ŽGruThYQV0I0.u]|xU%m%;F}ЅS=5XS*qŸY1qzUb-W缱vtԙ A#5nf:M,[~aʭ VE#C{\ XŒ`aY Ⴝ.ྴ;T4-L0!ӖFIc-U/<6T0 ^b{W<2Ɯ2tZR%m/@o[gU[bνZnP ZTYSw7\t2bMbFZX޾(yʛKHEn~,"kj@^<| l;;GJeL Ja7q` :?Y < ]LV()Uo9ʲ!qpQ:{e񚋈:oU܊Qp5i)t uZS> j8@ Ba K5BO<1)wm)k`\[r\ga+ ${V6[F]QɊ}>LqO/j9%'3u՛L<ޞsJJ+Zi4Vۊ12B &QoՖ4D ##>~&Il@0whtS)t>;9ӁPIHmBW\u{)sk4:v GA7ǠMQ~=j$}QIuC2G/D6Hs9ieo#^V>Ia!unի5g̼S%$P񻜣L¶DC_1cGa!dv z :?a@Ud:Aa(Y3H- 0n2I-|Y@t2he}*[X9s;k KODf:%WeǏ*(XJԐAc&((* e<zmVA[jPemGej\gPWvg!dDSgxn~N9]o2:ڕVk"b<~'Lc>e~{Wz@MBKBFX~ E61p]d{4svʹUsPݰ+KW?>&75YPR"dWu53Mq2U2[)rKiפ'{z61zE2(|~I!Rþ+'~]qJU.ayQqEYrb&,@xg=cd-0+/Oc]vc2 /DŽh*clNtZ,U=fܼww8L˃ #x#<<ѺQR94${(faov+c Jdcr p>paɶ\أGHz&'t{Lv "l??KZxn!Tcn`;1P؍٨؅χq*BVt'Y6vFP%RHVIA(iڂobA 3/<؏HfRC;^thϨ˺AVZ0lQ㻗ǒ )be?og}HG[u*ܤ~#@({^gBL$9i~H-:(@8Jj61!*׸^u si z /J#%%--VuGDŽO:nUB-sPvz@F?䊰6QTI`I7.`ɇ,mN`}ʕ?ByRi o}~e|WNToeGu`[)FY L @Po;_P.(~8U7b,}ҏbϥ[?m<"ڎcN390~ƈ:& {,P3NxCR_4l5wQ%XASkh5&0W&e̷PҶ\3DG|1L˳xiCJ"2A0氰_^;|kvzK>{w e݆'z{ރgZi-2ų%[ < w-פJ!YIU0\BjU{{0eA ihd9ՐuVO|)prvzü&8L'ʉU hnAȻЕE cEd؆uȏ` :pbix+k\gx޶P_lGUw&Q6;OFuWD>^&eadGrg($DL6JEEM&V@c,حm28 [W&-Fۈ$|&Jw#[:4AI7q(u|2'L;~Ǵde)Mh*涁=lo-#򚽵8guRu(gvYfSLW?Q=\ƞ{S$MfتK6:!# E0I]() 'Kk(3ޥ*>!̥e^XQuQ~ 5nF߇3to\hwG7kKB;&Yfzj Z+/Dn3;U.yD*8g/n~=(vbG̼l|Ɣ½Y` Ű9oRV#31UOpqRYեhV=A,:݁Ǔ_XZq髽R:-4/>lT 1gKXR#)$ i7nO}h_0Sxx[5,3|H?4%UXlC)_CP u6^i3nUdK}mjR^[A om8a/(SPg%y;f.=<)<<Hawnyf*=p }a7 x" 9env1#jwETAkoh[ݞ٭SRƦ_rX]Tr#eO W $OR{6l&d-\f}u@Aqmpxf(#Ē|<9JFCdځoݯ:X)E%Y߭tǁ}&m/d?VQy.Y\ Sb\0cfL(iEbr."P#Y mzK1ofY}&y~N$lگRj4ڇZ d?~]~݋SmaRW4oE?Mga)~zIDUS5 /9ݙF U6g`O뛇d+Q)YhIq%?R X-sOgȁiYN#t]v{$ #Uy)69x}}Xr}q"}C?TBKg;CIl&)!;vwj:)z>!Ry CS-ڦfWM1,3vݐ*0fՋBT *24פ0yh1dBF-ui}nAv<NkKZUijVmpЍcA/fLT~>ZoaۼD֫Cƨ!1G53)_ ŋ >ll^nC'[M0sYlp* !Cĕh.xHi#Np xYת2n 4`[4F0πrB]Wrx\cmbJ_i3- l?/$L=6/Oq L ۻ6Çhu-jB/$+*EbfZ6@Ղ+~^j^7@= lv/Z1\~/N"ctV`{]5/e=Txi*ݱh`$ #ٖdI9qzP#+`CԬTw$`ՁB.?u%<>}?+_˙҈=B ߓy* F21]$ !m@ܼc[X9L`/J^BdN ʌEPasxj7Ǯa+{9(GtϋGI]UpJI/!F}yT͟T G-@e\B0цR 4*2p6Mj @z$wF}w)JS˩(sTXgyE4if,G:U c0Mm 2gl$WBKŤGCUB uP_aAr1E鰛N%\rF.A9m逻n 0'[vX-J7\|-bVC^MX7&%!xˌYW};5-Q^ D*iAe[&:S/b̟ y.'k=P)mo1V: C8Aɔ ?rxU ,qQ, -!r_K,%ʌ$"w8̳i_B\S2H{e[tp $"t /PYȺ@k&'[$wJ״~'(H$']ĹuƲOBs>ZCP3<W&6mU|n֗I@<[;֎\@ 5\Ke+LBQվ:ݏͤ-%zbۂ-6tr+Y«V;6 v%@΅O@]ti`񒻐ǂ,AYU)2tv=c0q'5Ԝ}LJ7}V}cTGkd"i7@Ffn3(QdW&N"~+B=SE-(C{GRM^5^m/C6 n^(HMIK_nƼWE-gg7T3[K+z|wBqȽy@NV;^.~cYWboH/|@t4F:?[Y)_S(vۨY u3cRV%~Z| - 5[ER?{0 fYpʌe"'ibP3ݔ]i(0;b}Oqx{γXb7S eh8Tu&Jӆ4Nh=P^8`criGP]r684`b![K/a̓DέeRv:ڪ=g8Q"KW5} x|ˣjj3G11eFK] ܼdXŔ E˜,yT16 ڡ(>/|XXçя6}۱<{3]KBpMy@0{&AyG>E`11^,h3֒fR1khTL=".OֳJ:.~*6S8l(HZ7웓$[Rxﶳ;x8ތ=k3Dcdz Д^5g<),@sd#`y \ ^$pdS戴 0(>&^U@ N5*Xs 'c]٣84 h<5r\*Bm5 u.aR3 :4ǙL)/.g p B#E2 5NT_ *$x $I;85lZ 6םDCFZ/)c知pkN+ џVѓƻ044v.m0к٬\DZ^1d/SӄS#dyy 5P3PC1o/T!{qucC852cArZs+X:8>/Jǘ+ !v}fgz>mn:ݚIc[_ɘ% Y؆ 7OڏY50SJsE=Mw'3MxVwSrNÈ,yW1a)}`zu 55*͵xmS}39uM+ tc>ư\:#o=AWY&Q,VYiȈ7:0FO_^ #d]Hi?=@qj]rގhy=F7.)|9pcwl!B  :P_]F{,uUn?d7INtthp6Pjv9PL,x)gn~,])ʾ*x@9 }E.fRII7yш eZ >f>&;x o9gxIS;XJe,RhY‚qBFK8d*)<%*R7=`nOe}v @7+ͫc}W%k4Xquj<iD&>Uzg/vJyơ3Xu%8BÏߐ#̓?:i-ϭX(vx\+%/=ByLsՒZ6бnMRj C9BHR E!dVPV,`HG9|ƛ%)EIY Ɵ9Q[_Q CjD{R3"]6U-; *>q*+e' 'FiT LnwRU}مOf5i%7Sv,G0n>|%o:hPp:cul\!MAZG.9$7Nq~~x^AJw<ǐ>{ztQ ʹ*ޱnO3X S+ ,vbyw9ofQF㿵,x ?XC\d) u2 'o~]gz"Z$azգi6cjnSJ0]=-nm)!CN&D$Cc^ȍʟB=9TMw֊qj7{.r{Q,v8FM3(֋f/qi%pvi]"0_dsyw6Uɷo_mQl$AtԲ#4 _}Zs[$VJ i2˱*#E<ՁMؙ+'I,rb_Oi'ȵP@x^ٰha$bQՔe-#-)]QyEcyb#@J$} VPZ簫|5J=PH\<l0{]DyB: I4ua<^EF: @6yEL O0Hù6CYVD|v*JޣxL&#t`19cXRУ(+u@2,2ë*9~}HĆE5#8m]s^SO~B ΅"pbՊ.quv~lޔJNφ'c;fYeӤe% Ǫm#To֘b!!o5d[`<鿇wsX9)i^ݵ(S\0mKo\栮ܯ_(CBصr Fe9B'De~MuZ"I;^W^S,x'L;A!x <Ԥ-lַuQ 9SHݲ3Pg,5\pEI+YK]n]N6@Mٖo8Nm$<ԩKud'# ?kF.4;فIz~[vo-+58ɷ y(vڡEdVyə݅F/wzK;f hdBFfL_)-D_s'҆USL t:vҨtB#톝͋xKj[.s, 'XAE_=Q 'WvHåm5D |}gG޸CRzH~g"l\YEMۅzeV`j,jnhqѭx 0#ckR6$vt:|07@rǘ9aF&)+8kL{pp2MazTҵ9VO^[!w=kGy{ժq#ߺeGEZF-gqܴnQC!-Q [R޷j*7M!&c#p %[tb1]:*@^ >|`z\=nyoesW w9'x97lɘ֮O8`K- ︐t2sxҾ CAJX!rTl:lza7>9 ezj Cfd4/*mPd^( BJT»>>\8%f~sўY-~ <:Z#ħgb&(FVV/ j*x.xX`rҭuXT+3X= /:Y +iNa?bxp%?X` "bhio߸ft;"|_,΋E.d nq/ E3\)R+ =LĊ!+~wvp֕r9e4ա xv%i#}iFbk<Ť^J;F;6g: i% xt #~Xm֗-/o XK-D]eH Qnk=dlm:Ot.{$x7;3Uuqf}x߬#_-ՇL h8Ou}q I0i]$KMl<ڄR%CU?:~[{j$a+ʙ0 7oQ:}'fO˸UT_d뢔o3"ár_+ @8Hӹ,<2"5Q"a'K1'G8aB%"Al9a3 qGNTNmEЊZ7t( >w8G8Q9s D&H ҕf0qZ,!@_ckJGů:2Xn=#UX2D@NB0x|f׻<,>,alݺ3r\1;>>ThѮ s™?N:CUw뙔_7`9v5"gn-r j7| . Dߕ }vbx%ۺI4b+~`.ԿG(b Ty ~|FEMN׋3$a-pT=l :ĺVWaǜSM;*vPk/Ixhn'm N|mn%9,놝a~`sͿg{R1R'g xkWz}_֜WFpɿj#q(z&AOH}L2K}wlBt<.m^`C{<a>\1֬Z'X,BSe+y~R|͝$^mf;R_\Yd]Us=˛X!rهO䕞d\W>@Phb8U_I⯒7母{f1{?BuW(gj{&\[/=;gGa蘫Pc$ccwTV~(NDNJqRRAq k6*]mS*zKrjaf}Ikg|esGia[|~Wn F`^K$.c] hiu7]P袾H>ݼasJ Ƃj=EO4ΦUOƀ@|ȡ RkOGt1 J6́WUvjZQP#܏jA/L,fA,Q (U8T;>CC_4! Js;#Q׆T@i[[bF^ z+AÕb5 <_p%ZPV]eͩuJ6b~SYD6le^-cct*hEGwGLe$RB!ږ!;CtL0p#;Bg3=s!+;oDAp26S5ai2ӵь *&8uljn.9,Ot-5n˯pSY8=TM*]jwsM'imj\ɅjT6q&|1-'c:IqT/%war9z \,;cA0EjCà23[M~L3zޘ-$r0g{>i:)A^<4n=Vc=O M1.4e- ~4b[ɸh^Q569VY<(h<ί^+sLJv$l0 j "!2i-͐SM}{,N3ĢݹWs6(s6}OS:cฯ )U~'2W 歶fb[z^I F'W|dN2zBҐ\if:~:O$>.oo:/m 1JcO2&` >.E)%Y6VyV"U8w͛KeF5 U}t\b+(O36^f.]TI$M m'*v>5붆]aFl8-*z)YF* JSl΍`q}܌O`G(h=]]`[/`׊.H ݯL N_ti sf*4`K3gՇ[ n=EˢMzS+k#烋t7vrDdRo@fS #F&-">m"WPa]B;{z[L`Y_AъuAHrhqd:9V|#WyQ"ĥ}TnÍ.ڃ}  7 [^>D)Y>+KdU Y{RqD0#dT"\J!$V:/_b8{\Άo8\f)^HAs2Ni|;ʍwo/R`­Lii Dt^{2bu;a,4iMC7/LAen9CY*ZE־aHhh6酳H wڎL8FYYȫ|D,O)3_QV%؅ SͶ">y-'pm?S}+(yDs`7|LȔ<"/AD6oJ0v&Q}"[;sWm=u%NjAv}axRص5*ȷ.)-|˪?//e ^L&\\!b,=%G6u)u\.7h_Wg5Ǖ>ȱo)Ұ&RaA%(֗c4^Ӱ*] {2_tଜRH>M*Ѣ8i|{%9[^"y6}].լ @9EBqITR.5|c2Gݾeyli[=/gOݝeJώ(a!ZYAkTGq dZ z*1#7g|цt)9YpS4&3o&wG}rj <`hmp2p<<׀V) ({A9iԴ0b_Qmxo½mF\ʿ*~zʖĸ/nkOKl)"kςb4%ӯ \4A[ w1X%gSPna`5ilK"ڇy9i:TR ߥw?Q P`=hPMWa5f7-[dAB U~ޘKeQJgSU;U<$RZFĚ.6Z>EO]Wˮ%G=0#4,zNڊ7yoY1.GKԹ: \JEPAD` 'mɎc~N2ŁhDiRUށ{{4MY"EzEZ9b:^6tPʄX ^/jBM]W'i#y caLM{.xn?⬵|!YF&3kdp|Ӹ O \]X]&^X "gÀxݝ/\ i/̩,En 32O4 fN-GE4N0҃);|2=횒Z}qLD25_{zgؽ|47;uSIhsáPuO"h6z-4IuS 0iAU= ]2D UԺJ 4\1ܑ,fhaMU3/ U 6Ai-VYׂ1҃*? ęqCLYcg摲~Ya*o:o+S\qa9A1jc5Ul:;{+jm_EB^{o|I:+Ep/΅]\o>S@re~qbjj@dq8f:D%>Z'#VT_\wм=^v̑߬/[Ķ όaM=bDƢڨ_7 fJc@089V͋ 56ڤ yl~XT{fҴ6|*օ ˜ ()x74x,gU4X"޶ :oĩd 6‖>i1fU@k>KP)vBw5{ hd"\J;:¶0=C$ Azf f3Jȕ[>t#u87)*VVL"ӫɮU83 ںD&H#M:];Xmkŵam[H|ZR%M>,jxR ߐ!]0ʠ a(?he ^GB3` y㣓zfrP4(lčKUG_Gr 4aXy5ZѺ)FBk{lV=X|8\@hM]"{QHHL61.F!Z UDw{)&8Mu*r-,C {Q,Om"Ѻsgt-zύE`Qgp<_w;MK>hFdZL"{;?$~ހ7%qyYjH>+0kPx&yYXT6es@diKke$[A\dE/ Ֆi}vT">Ǩq ?¢cm.Ȅ4\埂 ;qvĨ S@%==B׎wnO>ښ}v|/`J5W9z 5MGo~ZV:Lzr%chSK";xc&DN\QD:{0OՖarbFz|XRnFoFE|H3C+ֵA@@93)@{F>1;bkIvˢ!r28T2 %y*B Y Lpk~^ܳ8&eˠ QqK3Om}2f~cw]l^3FĤV2j< l=e;`,W'1-RZ5z,gnPg(iO}EMWVݲR4HTp:GWf=OGuτq!Mو99a4|κTy윆z&Bg{nKx.LTL#SqIʟ=*co^U2F9G`sc>%'YdډHjNƽ0 Zd= ]6>DH})tXM.PIO>5Ԭ\YC(L133]Gy^KR} i <7 Z0ُ$HJ6MLMDI{jʊQjɆDuz.U@W4+;RIMI6~nu%,?-y3 ~8WeE͐c!x[Q,|? sq`FI?tM~F U['\տc`N0T'(TjB~>ôUpI.\VS訩']$٠TN؊p݈D"[̝Od3Jj }ROT(JZ]d8'ۤ}ԫ-,DZOgy׵/{.d44;9sj:5$6PRϿ]P*1mQ&yyy`mWo/NM툌+}'K{}h [U£`uۨ:&U*!Xf.&e\g[VVkO9X@VhIIpoPfή,CGǜ5W:@MczhIz`!:/L ?dn,O"Npiuq^X wF)K]q// x4&gh+Yh@]&`ۯy)NSAi5 ھ\ېפ^GMm7Z4`u)FV=",|KtG$i5(^m]$l6ν0JcMmIHkCs0mgj\#Z N~j[ϖu]bpÕW{Lu|%gSnLUz\^X뫨7 _VeËQPB>yZR*ۭ~j˪[;(yIMb``HcY PejÍ4^Ex4Tj]BJ$}ȢܹNTf nX>!J9'9P;YS:A%.7DR\ehuQjN@7@Aن@WMF|9/zͷ%(-hPw,t8pkM液;| s_&)ٶ;L\I)(ɑM]U@[E(G|;NK~ȇt[6Ш{.=5B_*.gЉKFP\9 e U}wFz^1unNTvavkI2OICz71ɞLƕ̜81]tb^!j*ґ'"7O~:yl9云mI{ڏU+(2ω󭪌U .V/>VGy+g 6.*Jֺyϋ]|#Z e79'p֘ͭ.aj; $[@+t9Z!تOc)u<(+n췔/ ֻ]rۤy pfi6šVz3\f& }eRbUَ`8 7%vN9&êGfGr=PҪ vsK,Z`eUesi8ƜPi-*p6<ړ @`0h&<n |+򁥙<5~_pD߳\9$X_WsXX/ETa'8H"HS#CЅB\1*5,M|aeow 9ݿqɵJ&6g,mE;n@ D?w~} K޳S:0͇F`V(PB$eIJz/g2Kd;Ό%vl(ZxlNm(#CbP)L956B6j\vkm^tfO!#m{TXDl`gK]CmqT 2Bx2"_œD`͛40Jp`܎ǂJ{Lq*fe Ik6vԑ.qhPPKRQC"8w.9wdmJ!6qسPqLqݭj RIQV§K[ZhBHg]A*Y ĝ^c6;`#1NK*394Zh 2:H/GuC-fv,6D|DC ,#c}.\]o Kp'4^  kaNzEt%XD3NPzْ3e%CՒt7k[vB`gDV{In8:XMJ9je cGWօeC-:fKSfJRFrwt^ɪ og*]5{"eqrTzx*L8Oq>z7Qb'XJ .: 4@z7N{Ȱ`;+|Sm s'/4ݻHe0i֮sګjSׄn2dN*! +l3bj*F;k@.6"|FlH'U/qǮgʞ(6ҭx S>ͮ×ZF#Յ``Y$>eELªq<^[^s-\e~E,rwFy%vk!c љ7>?hM^p䢽/Li=dm閈(HƔ;W^L.o4$@pqOCP" h_cZ˭l=vS?*(>2ddߵU 4W,kJ_/&$pE=$yRZս0DŽ4wc_DOV7o 18Vt&?@_ [ب:R[f?/LKdv'KѸn@.tVLac2 5ؽp/s &U0&s-<&>@|N$CwAm/!V2iL7`!UWisDY';^ZCr!@#bouַ',H61{ XлZ-]xHHH;:ۡjй[Cȭ+_:.#aro o l|O /^}xگg1F! N]Pp ˕tw-$/dDjIB)пi.S0I9 յ-k/x>(s>MJ=숥X[ EUEXu@t6^nn;:kW8)yUN`TXGһe TĒsqAUvV5ſE}[!"Á=$Fن&`GҗBTÛuiNL3NHZ3sI+\73A98@mRP H2Z+Qy/Os PyΖVq#7*.Xm 䗛C3zIԓy1(3 }8 }0e[׈ sJXe{ mD%98gu4,HM}:$yr:WNhͧ{$H׬qT5,=l1řʿ6ˢiIi=xzv407x"n m_*J3h҃'}teG!`/|ĺ/Sl.yu춸8Eʰ ܈dcf(aMk鰝>rBΈvQA6rnK%wb+YnnWd०/ES; #/سp,_ܓh:1)?8f\|^~VP.N~ 0%g=E*i(l4Fq p(a­>xR=TYZ^2xLc &֓W01Rj/h m}$Wq𫞮RBcj /m< QV0 &rC6] 5q*wc>a1K~%ϵ֭۟ JZv0V\0)2 "qqo*WwJ{Jiܥ&ډ܋q%`0iLX'`'H=,SdzDi}ɨ9p]B`9{k2:|/␋nSI. <)ʓ(RY2H"f)݉7WO驋][_ 8y/ !(]節byA}+gf="%0VVQsG|v {BAV5ub-VyQt|1ZFTJ*L-1V8I{8Ltq"r8uē|- /ܮt?>~UR2Fy;,*?yzo_%EKc(79KuĬ3Dyv_ӱk&-WTK5XlqC8Э@X )Mn?ps5Gq@!^~]TJu(%贶dcu*{xmj~tPYg1 *YGEjoR&)ޚea̩!ow7ozp;S\VjE, w'W]~MJ]2|d[Q}a4 7㦜/^wl yS(q!M^vq)bT)6Evaa$έ$`LV%3| TV'aBr[H7W~b$qPH^=3;-.}L삤!C;q?ڳ8v:dFQڡ/RWKh챙 k)uՄFbE50O~T 񁴫,7Y)_%m*rC3AXCWdzG-0BZ 6oxQICߎPW1l]zժHǚT>b^1.;gd6ENs]A֮Ӵغ p8փOJMHuɦI QʃY=%~HLvb*Cej3oMB,K6UG*><8]7*Jb\R4(ķ48-R}Sm`MŇpYtkL5?Qp]wjTn4b?ED WV)rcYJ&SLC9dpp;AD>K7Mf)lfFw58>oGSgr5 ;K$z5soIDxY _>S,-]#lQZ}-$%m Q2&ϙPC#W٥ו/2I.dЅj[vóg.#VuFwg`^-tr f7#J r,ýgKՇ0w ӣ̼.pw|S/A6,k?ɋ+Nd(b)p\DbaX)n$zTlkzUẄܒⳎ,'Ǻ,ALA_I$xY5 & `$G!IfV~_>wAǭBPS*[-UX#,PBG(HO7uy-2;Hg<ggM%oD+pޓuB,cm9HȐT_hi#nQJ,k D9X˵o"vӘ{ z 겉2gW)0ԂAmqmZx2Ua"ojwBjS̙F x(m"R<$I[vx^D:R+uRwlBnV`9=\L{ycV`t1 qJZ_`s晒sFʲs+qR?7PBI,Ru$/x{UA|S1e7?,Hb3U A@ lJݛA0aH%{uиME-XzD`Xx i۔1^u!]ք ȮT9ZasorB:MR"U~q%Lg`~h/1dI%-3Z9vUJOij+!(IY3s:!4L`A={1}rwZJ0a!Dָ<ޜe,1 /k^|ݠnUCd1cKoQS4kyc3rCH'1bd/@uWMW*k:FCc?α/D1,o6y}G};۬1]:WR[j{ڎ|ՋMw+H2p"_s}AZ^eg(|V39)ߢؖNeYO2õq iSnm]AA)^YVSV^>rY y#L9L@CSFlt 7"9=?xr`#uEkf= N({f `ϓj:-Vbc!(l9 @[aQdiR9W,ĚnROL3b 2"_A{!o!,~\HԳ Jpb >e `*}Wjn75YuvzPTgTC<6P dػ/%r:(ɲa, z;嫃6\*"mCSml*d\ morpaWK ׽ٝb"߀ ޮٟauSVL! 2@I\ٔ?`^vҧj80[n0E߿ljppE#LrHF Q!ִꆸzζǴY6bE=&SMW=[<5~ŷŒՓ)F_cVٔhAԽ蹁tNV^/F_-hOcCg`Cݞ1ׁ0!gp)b9z8\Lov6Da]|9hTMB9hX9҃IjtJm$iQ!j V@=T#ĸt@?7 )Wiܲ0M |'K J;~R:P V#z]7ֈzˣ{۶^*Վ9وhb-%X̳ϭ]xL,j q՟ǫ۱"t&PcN#i&T1c2pX1jf qWkm?|2 2̔'qsWc)SٗXfYoZ0|LqiU\8t1!*iLS:0hkʸU|XXCrK6/CahޤQ"&~<~ kB 1Yw 33R28C+P;Ս=g5D`8n0ʿpHP9ң)d(4;R]{< 0'.z)nH ov"GpktɭDH!z,WM<@E]6u஑- 9/`hL^jŷRii?>\r3G挳3U$S+"`%Mڂ^)I >`^ZZkf8[G \1C<2^f.idY ak_|c S9G=:M./;j/8k=Pq9yct1ߣtJ@ѯpt* `dߖTIIT[J;)۫iD0EVlM#ԏv n2}2W.q_ɖ~wsyILh]SiLN-'Q9$X4֓-8ns@00[t(4aONuCSc7GDjޥr nXyV4aUMlua7eV1 {}w8Yo[]8;mTyeRD?'4'Ny҂o@`ĵԉfꢪȕNϤR;LDp)ʢsY*AK~w_XDR^M:않.V$A@)#-@+\?U}ַWM/|h.N 9Gdm@8uM1meg[BݹTi j|vEY3IQX3]ӧo#$f)/=/g^v4!ꜜ%psmgN*W]Hң(I`?[zΊZ^x^DTm(i[OGU.#y γ.1„V7%@*Xmt%Gy2w@^1.&M Pa4=4;.Yz2Ih'K- $yuG/AnsỴoKD?зC6d+^"u|л*R3Ah#Ћ%̷^8 mpM*Y?2ӥšYA-q/KP,6KK:Kv|iT"~tmcf\ŷFuo">qCD=?nJ&璯w]`^.OBa.>]c$e/Gjϸ5qﺒ2BVcsl77$s;aBЇ a\Xh6XykI:b+x]8VDI<2&Sqa!gQSwvHV'"X5'"f6RD#waM&+,ҩ-ۈ#gAu&^&ue/lOI)bg*rP׮ l  *,Ӊ@g=WI]lNT ֙c)¦ |uJBBP3΍EvC'fTZAyۙG$ <$j2g:Cd>>AOHgo]>5g+9yX 1˱4k%Cvn0쭢zE7AՇ8Bhkp簵 RKfTY"8},ILMAYgfv:NԤyly-ۘ6(ˍKZ{jT/L[u1%i,z7ŝKX6]6\,p+[u1Nl p:b<+frNӵT.&Wu 0B>v;8לu*x@>TZjmm+؎9o5i% Ta *F*kx'"A'K)}|&.nýZj%6b?q5p)n|y2턙CyG5e'(prӋX?!b!Q+O'y;vBGҠ;]t>$8c!tT"5AXr)/n)'C z4QSbI01 Ð.#Z% H*lFܛhuҀÞjzzߜx7o>zT1G.ʰb g+LQAjT .&y"h9YV^y‘jo, +En9u{< o(9&L \pZs[Ayn+J KaFy}>B-b:1;z& vmu-.z¶}.R) eCqz"-o@Zm}Yrq.=ܲ9VXvckfeN R q[FӇy٧jP"ܗe{~sxC@n,^,Ad3HX 憓#A412g S?T w`ӲQP+T&?eڃTS%cBDO9(lqGW][G4)l+so*L#r19>nr[0ǀ#;R LNz5|A>+/]e$>Kd]A+xs'[SLIa4igFS YF&>ޖ|\+G q9h7L4$!HR;yt͠,N{J9eESvZgVxNjVL 9,ż#!KHiGSI3I'bnmg|b&><򛩉u:BXd߅xIWJ~t@x,d[付QkwKa ̹Yy3څ֑W"pzHE Wx7{C7 ڥ |]FRjH7T >%,;9k ?xpg pC-'o kPK.s/:JNI-`vڗ7#d7gQݦ \*3D?يWrO#G`O9?c vId}PrnkjPu8U$3~-_pEcD9!1~î7 5 U%}yXh l ŏ~@Kb~"I8?dGfb,}#. 4 _uBdvT@u(J %5G'wgɲa՘ $Θia@p>fR9Bt#ĄO1rJ=b, . {HqyoOu|.1p/.#aaCzйMo[.NZtRxk´id&Q~%\xf_ֵu{MR>H;[rdO7KXUgZ4sn*w/VOf)Q%]׼{15#dyABֶC!ٱeNYu bs'B[ z5!nzatëwBYt87#\-Q,M NrKe{lޜӷr|2[l<Wku yU)RD ){x/j2fH"wa<0nZ118oZU"'M ^-(+k)!8ew;8[_=>L<{pL5jwx/©z&ȀG '%Iw[X9ؽ_z+nN'" 58l 4Ddr yvhskqtuFEc(yҹsn!_ @h_'"~&JU5( ̹xѲ϶6MIn獻k SQGh,C?gT~|`;K$d.,B-^BʅHA "?R&GHnA%,ΒM{gWʈ|%T_ E a>JaeL)1PpJ_e %j.TF"{T@ͥ@Hݣn^@1\b@u״GL!x`?WZ6rK}PraRMlaM6:Aiz3|KiVk3ENyλ%0q>_GL跩y;C7`J*Mw@Zy~r% CU~9O5WH8Dםlʆ||wʰƭ(6s8dlw7 =cߍz5kf.+\b@N68{%T6MEN7S(S\(㷚[n>&hy4E)x2ka+_g#IRD"AȲ ;/H`Ou#Qxa?Z@Ȗ p_TdZ}tqy4 "i]יFQץ{ 8\R/$bU:M{-jbaKA6qЮ/oD#8f)ɩ [m\dy~Y3}Tv=-q^֚EQ&VMDrW@'LĸmU*10ڱ~V.xn*nP !Tcsv\FXEV;!`}=JW?HY6ي$ϖk-Phˣo_JX Y5E6"Ds:.%B)I?6uX hh9ǫqmnNj|pGZ|4Kvk'?ڶ[ު d[BE~O5ә8xnYPzILE`!0c-7 Ik6cl0~Dºu :5t,S4tkbA/-$D-.zx4m:I)WJvcӑ0QXé+-nB&fZ)^>B(f=,!tֵ/hHf<7~Gps̍ǝMN|My2o3}u\K # :DǒO  S^\JL $}\7_su3vxʐ;.}?1kZ{wȗYm(,8vM@ ~P*߅O͛K94սNl坠]=_Y9]M&/俅rzw!dAɌ¬FGySqkYK=b-[ט!%@h 񹛂hV~ڢ U[}DzLXҾJD}0F/Z+և4}q{bݣCJr݀J̾ ߓfaan1",{mTA8yjpr.ﶧ$ .G1K\[wz/ᘪ4s-R+|<8~zG^m4&u`pdSV6P@ ? ա{>A<{ h܀agӀ 3s$dF]}w =e}b}zd|w>IFr]^ Z+^<{q { :WD+Nhc(({ mx,6@E!YXv\_)Ty#J["{$#JTٳv`[%?FuձU7lFsydNbt>_^k=ȃŤ{ N6=c]1Y| = lU${dFDӽ9$)vpwhkӽ9b.kJyV r_oϜMU12qY(,b8bd28M4ugM!/QG>(gv`ؤ(0ҪNV1^r^5k@OZj?Y*혖"38wf4q$>K_;fBȋGM ໾BYlt؜^l fMF9*ǟYfU͎ǃsg l&TR@g^|&ߵ`>/\H$w>hRi/ccHP€Ԡ~xyo%6x52 o;]u&,C|q%g%[^HJ`lA&?j^4wHnw8Q[CkV` #':UU;X"H ճ&$-ǫn7sK6tȟSk]BLc9G&䌭~YTQXu"oNMBWeR5j֠ nI~ӅQºN=5!. /! M#0hN .&$%åq! IbrY(FF/~g{{Bk ĶF <8F9̜b { uR_S.7ڟvwI/aެtIF!55hJ&,oE:hO0 %]"p<(Q)Ԧ_ AGk?) "η|_)Ҁ~ֱnd8Gڶ"k>Ԑ-kye$Ց#툞SlK[prcpmζ%~:%qXVrauD8R38-n!# #}t.EP,vN9*@OȣG;q)fut2T+}Yw`ÔN8y<#2RlA;-Q&&?`Q9!yI˿va(yRo*^F*lA0kh{tܒ}"Wci)18+JԬt6}3_wx;.4_dsIy|0HH@)ft &|mgo~S x="ݭ퍰ו-`QݦǽgQ"P>ҠCfLx^i4+j9Q ,wr H1@TC0N Q*mCq˴,Y`l}:^*o:֕yzqf㭌 Hez""oY\EB}Z܇ByſrJ -Vm=$uH,(#Y +T/h[Ҙ^]-V ShPyR"a,r.&/VYPfh"I%]YB Pض}qiK-멛u sٍoA{iH}|瓲 M0Skhp+H͎6C3[0v= JQň WZ\ 9+:5 ̉J>272X/,$F DUvؗڍd%mblT ~tY<@^WD`8mczldN?K(y¼+J{#;IOJ'#fNpm¥»C򮃸U؉|qc6Ƀ0fwJY!󭻞Pf|+^-d9GO9> y U&bGNx؃c%ߎpV_&`քp4o1ȁM>-dS,䌉%TlSҊG AZ35ʺRZ''IMs5CTKf&bu]nga:GTI^뺬Q7"fM`U fb}W`_T82GBB'N(HyE(+ (-^pπ=ʰ3ULTFFȯ!=m t .\3˚4 vָ<a(cRQc" P6G š;MuKfᗆ5p۶HIkkovM 5/gsGǫ9@JB8{Jd4v.Q_IJoUS_3֎Tz\ 6q^,.()חVdZlw-sdɊnۣs&I&}NLk^1=*ѓylؗT{:eı e@:W֕рXɺ 8զ_pӲ=5UJ5< |g4bm UTf)D|q,ڊǧE ,4psB8%[x]@.GT MH㏩1 Fxx4,}C3 QCl\ Edaez_W-̩ NU)ԯt kSqr ֐5I'e בb3_^[r|,`$2L/_uhX\4.^>*FwaғZ$xq5%(!&U̹@qoi3yPgEy9G*쨾gj:Pc@WfEG^lNQk!׎91ʡʋ/A'IH+@9o7~qІN4zpaM&^lvkifhc"\ZpL-1(Y帇dڑk}Ѱo<=p',,2΋@d-1iĘqShv \b9-Zje!j"& is@U9J3#T+M 7)ݡԩ *jTB .Y ).|Ydt@c(qoK,m:RH'[ۊs]8Zd6LPx='/B2DjRZyJ_`MC̽ QF[bwKHN9Y,q}a%k!|'agrxwݙ+ULGAߝ oh 1iمSa{D؈)] ݳ Nۢd귪 7<əXr M"Kr $Qu4&*_0=Y<7_Մ.UD՘p)#XxNjgD܏Y[~0 wnXfd~JOV+[{OƽQ2{؛qaupAp#ڡ֋jny^ n F x"oLmĎ\f .6.v?("9(n_4_Y Z,S2*n0D*PMJ@b5#ˠYɼX8"JBOjcQ0"tpR!mb2[ĝV\.Z]A7  ފCuoZ#lB#qWޚS'v;ةؕ2T6x>59kr[/X?إeX!"uٚMnK/Ϟ4{́ s/,吮"WG%wrwdgPz w.ubSAP $JV%A c/(+D+иPSSBKyL F%[ZrwfRxjiSTs BSRʝUFD/*so_Fx5L=A[]w/Z2pbTԙtXDty. =TX9DR<3z->J4X˂7ijOa;FRݘ̋p E6G2l|mc]ԡƈjw."_sX%: Z~$;ghlcQtMϚTԻEcua੓.6f֖*}F7hlPZ0H.Z-b%yp9Q43-DQ)(dSxzaVf Bi e$ E?eԻ!ɲQ`,0he*TRL~nŐ@Ȕp,Bn VeL+иBQW.U_~~WO#V`H>"p-$g0_'lx}J GI_$3J3e@I+VkߋJp@`{рw,%Hh׈t=S}h b+ Եuh"KAm~t5lWSP(Œhe*wXNmX'^jTԟ Q;Uomr?-Deِ%w?i*uICUӱS$p%!x.T϶r[!};~XmJj5;w{k"<̠ :y~ kCP$QvO +Swgb07 g;1֬́$# |[L%4Zx#q /뉩^0',;d@*)z#J'|,%%lF?ɒݚK׫{ ᢲcT\ 0ũzKjЧ&&R6@*.ˊ94'Yv4 Vd kEkн,x QJȇ}p8hG`~]|ٔ k/&4^hHX!X7:r)]冟uE!JwzLA]ԏn'\ٙ' }E݀gRQfV-3zo (T=߻s{8X_QBvhʸ3c~qIOTjutĭv*b> e*fuXδP"^вDFj 7'lG'Sn ,gZHgݻ׿uyێ‘SxPͳ<:9w濐?u;Ӣ=3uo( `VNN4uXW G=wD߲9DB\)|SFTc8zcŚ;{,5ʆQD,]%Gd6FڲL}n+)^/%D4nUjsd+=LĂ|BI82SH۠ KwJ\!jƯbO=d_aܼ_TH&vȎӵN5c@knMmV'#2֦1%I/'^u(w)e(bnY@&]Nce co<4Hv4-꿊JnrtanO2,G>em}Q` o< M\zg6{Eůߜ]k=rpqɛnӧR58۶sBw;h}9 =VLcmzTa$Îw͍Nxxp_Ƿ?,5C5%ߺt>r -+w}i.Y#j[^,2q>Bkbc8^6~p|>n_3&+Y;U;ȣC5˖ٱSlpGՙ&g~mxgYGFؖ){t!58xTGq~i|nQu{.Wy_x1 BYj5^ xewBP@ea]EW7NPꄴruR2\#K8mRe%DjAL-# i2.'2DۅɃ x%EOeԢ/VfhLI\}b(C{\`pnӞo %O<ϩۊGY)>Kab 7RWh_4vs:v;vjɪ`Mv4Pg G91C4eFlR`:V-yF"%4luݖ+y-YAd-D%*܅ LHP4Ķ X|"H"_4~ )zܭvE>p3ZY&t0m#m3 ZI:EJ֞m?/E"[S?7j6G|w3a"{".Т p6μ4.~ˀuQ"`+ch\gSR"5ڳi?!,&ágp/'4'|vūn`E:x fkۃC)D|cRcLpT/|U!wpBgK7(ΆU_[8[ 2}t\WWz(TrAкk ܼ3yh8m~ϛbv=f:]_hnd=LS@}ݑϾd>\Of,:HAt?uY61L$=- *9G5ާr5vŌ٩=& fǘ</j^H-Hn d9fD~څG)G(E5BMf7U]pqGQ .AµIZO|k͠Nx?z(&u}QrCZw8drv |˂C'@hR»z }o9@FF!H7@}',|23YYgk8 )1/z=7'$2;]h\IՀGV';dd6'Ǽ*r bf9&F@&z?B~\PmPB[:\wO(dk#.)Hƒږ1႙%)F}m#$;!_uf%i&UQU,9d3JT׊[#,*XE_t*AN _@;($2 7D 'UjhsTsw5ARX0)0T p? ?P uw G[W|̜`NG@j ؓ+/x'yaqG%x>V"yZoX<ǸvqcU*9c s]SN(g( Ўy5hzD嘫)Vѷż_](  !ovls'Nv |lSnmq7-K)H7.R(\/1If !.v4ws(~X ooG!?J]"Ji]l&*Cfb nn$^7ꪒ%7J59RON|*j2`!Im=y+]!-AW}+4Y—E/n2㖀Bvdp4=Ր~'g̹qI')JxoU%| ʯ>ݨ$TBq,KqC]^Hbf@jl|cw2] [S?aF&QT;?$ByP AƯ6~ n'iS#GıFs˜> 5W─UfKi% sU!'Cy`uȾEnI%Cm`rn-.[qߙ CPӑ Omۓ8;^|yH=av ^qv@|ژx(#<.v2J,^z+4z9u48HHo2AtʠvdBazJޅ砉jAYmn_WoUnb[7UY^&(bH_vLA[_r$:Z;m18&H*!ڢ;uf߯+'[NhYƙ֜ 9i9(u!<Gh!,?r# -K Nⵙ{JT✕wؖԥ>5,<"ut&*zd!=&]xQzp%P@5ì TzT'3v/KK6O"?S:hp_䅊y.Lzgn!4oQ&V^vx|[7*~3x6iGDžGlHdaMkB_*x^{0ԝCGحӸlBgyhMPf' ?fBy]8tT; [.:TҎU8X JGL܃ml7eS%f0~ L)L3-`dA.˲{ƺԠyS2h̩<&* AODS&~[_}=ZM b.!|G++2}Sie+.37LټZӤ ?}ݽ쾁y~z(t;?f5x+f*:U-K`2cF󰡌iX24WK俴bV/Prb0m$yǡD8i9Hjh? "=A.oK՘Rο4~kD)܄0uT/!w"9#e5vA({^3R3\I5g: =eneL _ x$(ٛ "n }ez|bHLtʡњOH?h޸(ҿfa(dTQY=1rZ=0F\4b'S#asB+Cu|UZ:r%s_垪}p!HLA\ M`n˥G{Iʕep}X{Zz /QɍPGa4TTW?qՄ tVԷ?<iͷc cUP0H(ˠPrvÑy;îI›jtJj*2@E"Qu`izK ='Z̾=HK=9]X+I~]/7=qf,[kF=esRuk'MJ8\,ϵ|:6AaR]gX`FN~>/m!K~GPr5stJ 'gBѰRьf}O j2.0KK8k̐j)2V=Xc6_ý' }\/r 劸2CiM;p .z̒e'U Mz|NVvS:OcsǘPoƺTkG.tv݃'Uq8RL b)" t4UȾA]-kMD$lAĨzj>zD( KkV2ܞǺV~ %cd</HVj[}aW=:PmUiCkkqy߁` w}ahL%wǡmG psC0oiFF8էWcM!& ZriLԣ/:YI?eQ)O rNSH:=٧z@̡:z@(;7AYɴ `}򂬘cWGCV{xqER?ϔs?ȍ 8sM&~㲝T'k.utCxꕀ>B;̼o{٧ (hB)|V?UqpB?%o -PhD⟬.юGՕr^?^GyيM ܣ#ƭ>(Cy!;2-" \4]$ &4X0dذǞb^2;[Q7;f `7l=axZ H䣪x|/;ҹeIP #Չϧ-ĎH?-5L]YuSĄޚ\zB ʛlR,#(p0eI / pXX*t,Ӷ, 20f6VLP wӓr\UAkx쟓 <&;Ys`q+Ź&&L!Q%Oߏ4md/#c=9|)z mH=[hr҆lݲX 2Ӷ@ukX/z BzEE΂Kc݁}3`8R'zh=K᩟x7ڔo )ateϞ#Qye_|F55_7eUD5Fĵ ?Bt: hѱtg=+R@j$Nҡg eG!4/lafO8MfYf;L| a#-?|Z(,l( ׀V7c$9& Sdfi߸S,Y,Tumi$̺An.bo's2[nc.fuBg')BkBEuOr2쒦/"B3?TšLcpCRՈ0[>h9@vصچ )Fϒ5Am;;#:F»s\o}J5ˆ~[0> [fdKWK9C`JPCK85yGtm{nni$ OU|5`c%l@H6" 7F$TɛathxI/[^k4 ! !vx39\֍,Sz;S='w)w~KD5N(h<׆}'X󄩆}[܇(GU188voq-#o sRvB~?c}QI´ArUGVOO66oJPMi^Vi!"R3FwDfQgQc. WaӜ#фd4 k$.R0u՘_ )3*ҟg L%ϧ 8fi R4}]s.E 6gCeW]hቸn16&nGoMS4YuC1fw@TE\LYLHŴ4pCΏ{JJƧvV3zawѭzAdf"~~%Vxsee=)cJ p,Ar{@پ:@z-'2XH/A6y A/<2Lj *!dm>|7J4iSt4~cυZ%9%̋v&~!6K԰vgG>Z-Jq;,Qv4 T]TKoұpa\2C ۖéq /rPЄٖ\ћljU͗~az"`̓R<ܾӷdX81xm/Ko@bu@L칉5O&ܡc{qwjiBp z&#bS1k7yX_PKzJ5ZiX/ϽB#-s#n#g)23kS4sQߏTz(#Ɔ)޼%TF8W#Ф@6TZfrIoGIWIozD #;JQҶKlhӂ- oSY[@2o(`CP|$owo% w";wB}: Z$HzHׯxd) TK(go,)X]N<0a~mWP9_"Ls# Hes5ZYu$LU=iZ% bn۷P|ɷo޼]I 0&Pg׭[r*aZsө}OLi MqC^K&+0'%;Ș bZEaQHB\j04P]33n<MIa=9L[U+={ WTY"+Ї#b)"ZRZvE & 16d5#,4Z^ cmsTgC&i$,eW(&+,_Nh ^=x}4µ^K )Ûtr4]lD;dr8C-Uqj2oR'MjKA~'sn/{L[ (Oر(Bʸ3K}D[-"(gp+Z5ڗ G+? CP\~73&8dK{:+µ{c0TBvB{WU`iPq4~TPx7S::y{؞ff1~@pgmLbIkO7VJ H"f闔! .P^AF }ׄREV^;w%3H|U z6RkkoZ2N<ı+tVه`6Hs%-VЂҗCrW=Y7 bL1_!NaЋ1/7Ry8^{g9LG׏1FUJ'X^V# F41qV88; {Ŀ蟞. Yg[Ħ(DLGqh(+!{gYdM4;IBKOw  Y`ϳ߷F7 6&V>n:ꅓF@Lzrq96kmODMpEye-/6xhao=pR% u}33F|rXWZj3O_IDBKN~>Q< waKkCi /Nd]2rQ to0: =ꪡb#ige>o(K2YҁH/Y[t{i[rT#ݥdIf,xƪWXe|8Ԙu AGڗ4LWG R۝(Z2chOiӟT Me8e:AN$79HD^p1AXOQ@]m^/X͒j4@B[Ͽs]e2&bljĥPHQ&=j4 iK܈ 6&֊WfI/qf8V8Tmy¸P@,K&7[>&iky$3׿qd&'?sNg>ڤ9Pix <z1Jo@7zmy%'fY4lLBd!r kh6ߴda.]$Vε(Y;{6x F#@ZyusGz<_jv7yTOQ]̌=q9);GgG\j&3WSM.2,'5D[khgҋzV@I=ar@ҿ&F ͖/,hpTaTv *: ~l}a1xeTVɅI~,AXpbfgGdzqUGFfwA_1 &k st-EZ٣A7̘'Nq$?64ze {o>2bڂAMGZz3p,ſr~%)sMn܃[(ei5:!#-gLz^* x4|O#(;mZҏw :nn@XBZ`azݹ>ݗ0a,V97xKS%C]FhY» gt{|NfhgF'|}<5Gisw) r;¨=d? ! kYw([\;WbqHPQz<8( SC1K,xi<&礕eR ۅ^WD2]VWufR3d0 wCJ)0ܛGaiIJ ^d>˗#F3@N5|bk,p؂.Ĥկ%Tdh`mugcLj4\8WSlPr"x2#Xnn}BEUw$<i|3Цw#?E|J2de0 ydV# +Xv+%w(q]i{`9/Les!ۚjp{;'@l{S-J QpX'; "D S[bH /Xo),&0ؼ%БYsr]Di .ۡRI ckĞy_P[@]zxo4T/_T rZΗEP2L {4j2fpJyna~m==f8bL9W"(/_SU02N( jTMx?N1P:'$M5hwV:^TѢ@>HR?.OJm{*βuAːwzv%Mޒo8Fⷫ{2TV1yH0'E8rFw% 7I9> uÑX辋 5u|L;2*t9=1uV˶P{yb75{^? wT ShtQe3%߅MuE#5FR4O[= 1]״zWN>k7\C@B|5ӄƫ5+73S,<>Mzi)Tg8P,$K )ȯlC*MC,;P;}"{j-Sf+TK~NSX[-vV*sc'kKf50И/V>%Öۂ;W\rX8f!Wtnk!W8q#t4jWog3^9GdY-v-, \ğA0=1:pUrA|c͈y;rBQS& 1l]tqO8eVxet`gU[ Z=Vfw Oixn߼\AcDvp3f׹ӽ 0vDXhFcآe/۞7,  4%G{;NoW vc}pG-l:3wJ7PMlr8xYdI]]V`Ѩx. ㌘S"2Ef^!&G E;|TﲷڡUl:,X #?(Ss!sXfV'4jA.%aHֻnQ"SsWvt6W .R0s !~ëd3ċ&nDР92;Y;>r}$/1Iw^#|Ic1:eEޓFgՀՕplF3f0J&<23 rRUMQZ \k oR4r@qE޾z#8+4Iդ: ]& isM "4Fjw %󊒰U<;a3$Cw0umf$"FWV+^7Qd99xIqGt挂CIL[G> GٸO0L𝷩vb8 ankٽA9e2:;O5_+ Z nZ0t),MKfdGfΑZcEukL 9vs1+@n{C["\FOڡk$ZjQV9R@pcRWHa䒍d؍cv-AI`범xǿ/B'(YHr7Lz,#ʔ\v*! _9$Rяj)>&`l\ JO +¤K WH^I,VN>pBNMt+$=ZrnI%M^keE 3Ygn GnъQ~CBi2 L*&M+FsH$ ˆJKQ:^^,- YkcQ3Gk)KM ϐmDAw=>ף9׃Sga;lPM-=/ =y_:H5ӝُ8{IFy=_q3JV/RLWzFԞ=˭Zz㝠tSA$Wkn[VBmcF}XnSdz;EY,.{|ߚ!bߋ3SE>*(M^3u>,esv8`A>Źm>7k~K<ɺ q8]A:MBZ- A¨ sDa3n _po~ m7gNVh(JHvip nR7x%тw7|Oģ\u+W/$J@L,l3 m<fIǁFWX_ T  "b*4ؐ{P&_W41{j+{߁[l9'na}#'?!ipcRs8j[(KCe-:d@:lkؤ#X|BHJޛC<^_l*2H;gpˮD;/6y#Ptk],| V +%^"Q@RK[fX}obUCKq'c3ܒPoG,e__sObd&P%"Y*7ݦs7H>uv>ԭl}@h@n:d؊rB5$(Yyτ!a.:HIlaLÀT +p^?!J>8,ѷS4B@ɔ/P+1ܜؿ#=(!^39W5V aMSv=;v\|xs#!crCY8S SsT;r4&Z%uKڕ`[wib͑d XxV=m) WBÚf7 t%qRRiH6HLz0K=+ndjE^HްEcvhDuZ V"í^l(ݓi7&D@9Ud\zAQ㡚e*l:KA6oE#>yЭޓ̋uM})lTY Z@ 9ob0Ϊ5GM'.e2& , j.rVj A<<YS,l ЏM\ q[;35sBQ{7tj<Lt0T[ey:.wc=[ddi~KVPLBZ&MAaWɼxwn›7C|8o3bF->GcÜpʫ Ճ|Z.$4ۼLk`XPwq L/J襜RX93-,b$i;iTx)j1VR~cL~7,,5XC:LWe? C'шDfhvd~Kc4^ it;*5( ja,CԓCzzŸF.S 2>ai0R1]iDO+SSֲ8zc+_J}$Eтǂ[PȪ7ʁEg8@|pq3V^KS+³Xv+d !>e[a`OAHq߽q_ Maw]s ::EJz/t0AQ!@+^ң=vfŶV"!JmMҨy\'ڻh#]D$+mMVӷ>-ܰgB!e|9+rs&8,vfu9=g:ѭL9g <9R9гI!k6'TŸ2|KI60}>C+ %pOq~u!fU% CܴqR"i4Mż)k'3'gȡߔ_EiqQ#`}HH9*+;_^Eb%kS)+l/yqs S(?v"s:*vR|*x3i  9W5}z|xB5ae\B~ X0\{ŷֈ.\nQsJmCJ6pغd 4|!z˺J!9P L S\iqEUɽ^&'%ʟS[Rr#EojSۏQl[+('ςkHmt]閞mg ]mƯ*FZ yI9uyE6I{mb}ȁlD *8 *qpJ YY(K#GB^#86J&Z Ne*Pn ^ϩ_3`oPbe%#y+& Db&atΐt:3ȮED5[FwV}SUb晬N0H:E-%J#}|nWqЌ"SμBnxsxó0,!止n50}6F~ QC(EwI^y6&Qܛ\ C,qZcUwQñ " #bhDMxe3 AȄXPJi+AõԆBAo}0\K,Y+e'26 X?ꐷ<~@a^ *+]0֦݄6Fyq#=]{.H"Plf[3B,/~ă̘KC{|t@If(h 3LsZ)(P ;(b( [G&jq@:LV`|DaA(͑FS`yni͒*'  4sۛK:̻v]ܡ"& PYsp`7i; +S+]e,+Ac0ՑRv}J T]p8m5yeڂ֧d'nmjjQ0t -_ 6!;.iR%Xxuw+fG<ˤH0Fw0R=u;AR2eV~ybwԔdxˬT($JWn1D4u%ai@D@$,w{Zܵr~ Q9U;C7oЗNny̽P#Vw0]'#b{-Ė |S&,778`Ȼb6 a L&~ ^-c\fHdk{.0ZRۓx aダ Dʳjǰ'L!R!z-9!{h;ڪ38K$JD#ڎ ȏhLňx:Gl3/~}Dfn}@e\-׍?c uYtZZ7HX܏HX˺c*[JM_Y8cKΩ <4u,)Őh{ Gg33/lYĽ#N읎wHՐCn'yig]:Iv]S֜_bant3 Em0ea]u\#2K8}+q(SHRfxKӶ(c]nW=+_n(ZmXX8a9_m_Wkܦz8C@jݨ_%?~S=jA)o8fEj @5AZѯ Zޒϒ0!qӡa$/sȭX,ѷ}J҄X EX_lT#e'P̔`+h),a9Ja룯8b^IΏqEĸҬe_L`REr{:=q&|Mmz*:;5rNKrK S0sKp?H;cMET4rA* (h ki}s?"ߥ< tmOF.hbdPxKV-XMg{/e !E{ \I1QW\,^h 2]6y#fNl?)UlφU惺dft_KG? #ZgAir~R\?f/3Y,-Ey,] h4@e 7yۻ*2 Z6(dXlF^jwf4еuU\GM ؒJrd~"N?>.2n`#h=Goѭ9|O.{\|뢦}YZhV>\՛'qv:iw6W1*E7 x {ryVlP!p0+:=|b.@g4$AH6q״SL-^ z%) MR.q\۟D]h򳑀RmYOA(V8=C`ݬ\ WsXo ]'-c.uAШ*1aL9%S[3e-dLB:Iv/K("FȸAYlu%;I:ចS ׯ- "C3ٶ3FmǑz h<>xAUDu?m UŽe}o(6[xj,&@ql~P0t֢sƻ)9vP@ڝӇI@X .ILf$@}ۏAB^*Z'?)zu惜+(bRu\~[zۢpRJ, TKCaZ -k@XU%Vh#TpLC:[:5@PjW]JX$M@;/Zs-XwDд08p\jHٳ6rFj-+![#a]d}P-k:xc p^^qZir&w-< Ơ:܏g.bK%z"[䛸Xcv_ztPyeb !eP3Ԣ,21bkS^s.ђɢ_7_/ ISAqo,VT3QL) #6WEʇs}@c)({IjicqM"V%a+8U¢br_;f1KNTa}ZVtlR\Ȁ$pJpHhyzJw͆׷qjfěrk ʤv澨8_C lz/5,bHSw9%D2jfh ׉KyW1>ބLLS{I nB9D7[䠍^7֬$D&jY m>nGQI2ͬT;dmjPZxyxXC*>dGAMvBDgS_><ĉ;N!2,?x&c?l*6j{wސF6J_w5ɺi,n(V} ʚp=5YJX38;ys, h}u8:y&Kз53xGegK%K{ՄwIxD1Zn/!EMS bԿBGk ~R}?R9L Әx;GH3V0UN; C.NAzQO\寜#E$7F߁>mbsch^W4xTVo$wC^i'W4jfT'7,: h <(jE2HQKw8v[̓@TlᨻZUnԫgS`imhϰDJy, u\;bh>?0=Dy-V_JfS낯ޒ#O< IP~>BE^Ř{֯Ȏ}LǮjoCk>+sUᡰ%Χ k6Pi&" e4⭚ گ}(`{kyqoƞ/xw! \>7 [9-e1dҢ‡(tҜFM%u2XS'gu!B 0rv)(GV{o9Rk$w-pteSIhŧcڧ  ( 7L[g&v7X|Xfc)(j*Hl[[(jwTv>|l +MqA{f-Y3J0J16^Q{.?6V[]S'<^0ȀWa1>IKA pU}^~reR_:V!f_d9M'F *+>,žńr× M\HǸ7ίŌ==ưn۱ױW^4AxIyf *VMآ6ua4>G|D ;+W{!moÈ9p*dWUC׎UjsO=ne;w2g-|ɫʫ9| yy]M j/T.Bxk8ڡ l/S-.PJ/H/^@nfm*a|xuSk%m_q83 fT+wUQ+$)a W :+N: ͉ :^ʝ{kwdhLN]-\f-#b4yMa_φFc#Z[Ϙ4di6JvBE߀t urv=)_\}(6_; e7!9^tǣ6>D0(l'Hay:ٻ@;NT_0-ptrxȊZj`H1n2cE3>~*辱n O_~hSd$9t ]2e3,ջo!APM{GW.Ҿ1؆ ts9)WQ:$B?fk؉OΒ[Ƿ[blK E阿/c1N]=af|rɨh0ϞX?iXnz- p= wӌKFDh OoiEn%]Cw8($ˀk6S?/9~nA0kKxj\>#)& eNٝ*ԞO.|6/I*a(S(3}y0+`VZ{EIL&ޮ7QS܅Sk }ݐj&=`(/ubomDo[X^=/~K< ؘͰRL؞.W?Hf44-ḿQ;VM6;UC}lIX6 {'#`吶\$%[a)*"'gkm :K15#@ɋm50@2xH"3 ɯ;jveYZbx| F 9?Y9/ϗכxN"1njVc^Ee$ bے- WLU5IpytJ}21G:wc!%r#\sY>b`tBǦ>U(RؒPn 5 ^_+˕RpSܬVDv{6 ;mN]!ƒXg(3PX}B:HHW"; vED7UZxp2p )k?hPTQ-`bI*TݧIyAQ1$J|k&a`>aZe 8=Gjg,`Sx| W 2SZ qD9{teAIoCʍfHSer a4B4#ŝ%M2QL  >(N5N+}ĺ7=VӧҠ5hCa73 ryˁZrȝcێmBnx% ŒwQ^,y!} 3|U8MjѠ!ȉZ S/aNJzwUj eg:[I:4sujjKR2e;A_2P'Rw3_IJv8"24ޟTY@)Om 'l./y4 I>B,=xN^ `uDǓz;Z;ףnIvg?R6y{ YxѰjھiD- {-+%HAC ;H`->Sda͑7WM޵V$uqvi@ZKƹ䍼|I1(u{%{A$}}tV5"8l6r \?,7YEZXv"A2!OUr7WnzZd?y/| t)y t'=TU`Q2A"瞽L -T1-@[s{YG/?߷JXKdp88 x94M e΍wAhʙLvwG-ܮ.@8raMuIl JL6O fm"j?[_%VsɫCCSk.w::vH ʚ.Pe Ō|^<%5땕[HhWLc8íxhqؿ6Vqܶ6L:&Y8jrXɼڅxɕM5j1sn{_L_83eӝLJnZ|n&Hc}`ꁘ 5nIr߫}^f& Ŧ[MtWH%5;j;c͚,CA܁$ɒ{qE[gvś] j -T4Y:yqB2o\:`.RNw> 2uoiSUu20FSKcd?A;x pp5> *80`,fM"|r@4↪t +2f W-DND1PW1HXK l}jꋦ3t6SS~ƖX;H%v`R6RWXF7PPu&KdQ 2enL1pBK,&|1S lOfag{"@.h6ɐu)g(LgD+<#fUW҇  Yݖ׶oSXܸ􆧙M&Gq{bfGW`v$gd1Y~B+; Uq?9"ie#KU$)b*0:"rRK>ҲfP ګ] q%\;͗ϐy$16:{rC]~kHyf.9,̮o}A}f[B|%t -;زCdRѶ /$KbFS[.~!M2eOk-RR, v=f4*J;"<5.R"J Wz;3i$!x!$|8q4͊s n'NI/d5(ŏ;,'27SE'A9[ 6e5gL2VUĕ|*) 5<ֳ&8NxA6Th.E|QM-ehAQ7;&z" [Y U85#Zwrd;OfAO/`7Aݏ'\ IlKlAdb$_@ #-QqT4?f)_vR*X~GX(Jo!a%L #ы+Dh=8 /fĠrZy>4Kى!A8X}("@N@k249[wEx?oҟX]sDU RT^ח򀟅!̵)Cb#c)d&1՟ p!VTFG}HhĀ#;q+NLID!ވM3~rxEW9kڙa^?IZUcF&-ɍi ")0Sz/_#:E ievŗ.^@> $]~"hb$*F4[1c8jS %m0"HF!r-lTLLxW;-ieg Rj_UPR>Qu;9jlӇO0A)Or.xȁ ݨkXuO;^^_8SC,g>^,7Wv3U7$kh}-+Ba7R10OO\?:>؍٦̧xJ7V#Kot 6])}vPtŨ !E&EmQq eL&z}*!xINQN0E,ss>a krL\4 $3\y ui[m.W7{Jm0q-`?Kzɞ$ E]8X/;Yk.tPH?9mPN=SȔ-G53crםQ:[ZpaC[ǩQE|VNJ&~Vf28K*aðaz:n܇Ht4v1>_&cZTʌ@ ]St簌AIkrP<ǻJ$m+P +D_)\`Ge^/(FΚ1SJn<M@6DI/i˴Jd"j:[{ӠC20+LfɴAMalf 'D$xv,[;JpGgO\{#6scci><9a`\磬4e/ `gJ/(cFGEƯ1o*{EmZYPS:QwUoeT1֜F;ßˍ]0T/M۶9i056 5:]Qj Ǹ{2Ș;xsn. ^qN M=hTEy!ҝcx"}#ӂ3׮PLw7S&e&+(*@q,7{e;Nz>HWu38( |_ ~'n^4ѢP*W_P3j9:ςudD{`+.M[`TUyX4uԓ^s<$% yXfQ.* Xp Ocbx8b*ǘ"cgÎg\yo$b+ AxF=ܥu0'v[ ]d́H)g0jD3v(RƸzy/08_Kܘ KBb՛))o|5G.c+_6 Q4eb@ f=yX{QtT3RSZ~!="*"ڱϏڅmUysʾSyʷeD O Gѥdu $,Ay }t9#ax? 維 iBs SVb*a(MBI@Uixcכaw&B$W_b azfTϴX;|l_*@+0_S( {^/PI1"KGmEDv+xo5kQp'gYtV)![1S`k26NJ8ֆ%-?Yg-`142b q%'"qe_1`ⴐLR mՇ9-iPҟ[[JB3Aa?gJ=0 EJls2PxT&6I"q4^Qt̂Bd4 q2YBoa2yAf'3fa:pkt|4N6OnV6c,* q-%_?GӁ3,k!㿲t염) 6ny 8Dxc=XN4^2=sQ:"o5ďlJ)gqz .Sz}g`։+ J9ֿUc}S[5|/(5D _tk)/_I;v, y=c2"/%WٱFNDZ NT؝ΫG0U{YwAⶈV8c`HM,P7$EU$wDk #f} {aDCnLoF$wCoсtArP؋t'uT&dJrNtKz7&CL%]D2^ h_-BkjY].x[j'Gt4⻻AJj}KVuBw}M4|HW?" ojr"B~u T8($X`]Wn[/}"~*i@t<S1{$~ D/b:f@f!-ZWkAB~K/E|K ]ܺV֮'(:F15ܓ;#{szJKV(c!B 5k -&$ ԠŮ:W*RXua$\2 yĿ]-ca/(_xq?vV /Lj@M;^ulG_voV/T ~#|: ).*[{3#w7 #kt?kpS^IocZ;0]+/uFgyeq̌ft[؎)IFz9EI.2..PS0`}bgN0uQ+53+)L9RW𑱺fn\[B*j=ŗqF,,xwܺRNv-q,$}_P~< P dyO8hlaZб"lso{Z,ۢcB f|;tGd\\3U zg '+k2wW䝢A|,:uQ!߫1&diݕ<.5ݿdS^ѸP+n&@=a.вukl04% hK92=0-@z*pEL~Hw. t+cp,fC"Zţjl}"n:)jv d¥vT}Ȯ`[ب}o.Ml_.d#Jn^sg)$ زj3&U"i0jad4ЪKV+vJ4xۊ`SV v\^ [d_NKctw;-efT aLSfImV?W7,nAn0/v=qP:?s mEr0/\5}sf,3(`P6Ζ`k*~Sqq[=^->Aa4~P3g , bKhj]8Q0Ejv25y `؍ZjM\jY_7+֥6X*lb'爠\14!gʁF5Z`yt*%E6v [P])f+$PBJQ#Oݢ.p[ƔBT5t&N*gγ*j LP&s\U<Oc= svm wVm/RV5kesJYc9!G*Kb-ZԾA\z(U?j$ٰn$vl(!^)[W/(ct:.79qgzZa%v?'vrcVNYg| xo&8͵`1ש-9[f:=iLz%=mHR&PsudP!G5I՜-:ۇEpZ&n!Ozřп@:!R˙r#P5h;00F|%T#sC(ĵ ѼZDlѓsɲ9]l(84|^Ŗ=R1!ziN gFOˆp˲t}e}j^IbC͎{]~ߤv_~ۃ2Ndk*vjvGRc>=쁞5dwdi6Z斦GCuJHB2R]"=ȃNsp_;Nɗq a N׊~n z: K8{j)O.Ntsd!,Ep=cay ޚX!~9C_sҽйr஬ Z fK *#4'#47++g'̟\e҃:,-ϩBs:ހ7??q@37X2:>+-nhwմIH ܒLW# @}w䭥^0oX"<ۺ5sCrɌw@.мp>42x{ 3@]߿ ҒEUSd7~qaiUﮫ0ЊmV:졍..Uəy͢s]Z3Ӏ]󥼛ԃ9ol 6Ƈx(1I+d7mU2`iݷfL4g [Ufu$+ޘW_B̦ovʅ965amv5}s;T/̙GA`LŴ;x4h>~F+ۡصliX.X N B;w6D3~裰1Yd]B#*lMRăA:/o(5U21ZJ\'&Zo-u؅>2 Q*J56+niKߛlW K݁zdx+}!8Gb>VeъHk6<Օ5źM - O`tAQ!lf甉[$^qpix;SE)rVQ8%yKh?8;PEDvAkPLj}+%Z_/m 1E ]XnmzT9by wrD6CamZ*;و`OB8\гclu9iӀ37͓5ݮr.GK(>늄![o!$bdb\L,[%v'F*:M>uGJG,,$9#!k:$1 kei%nxJ#lz=ȫFVP!Ya[TME~n"r/V #EJ8YJjQxPhv/\dKp8 |MLj"H] f7: RwPJ,==sM~!0IPNX—z a`Q 2[+isUG !dI7 }O0ok4:ZS4O<7-Zc0L6 Q%_{ G{͛}۶A9xo 7缔p[hutVl2LHˠ=xjțU`݁S_=5}Z% Q Xʞő(i }qaKIo%|4l?Ot~E\6Cg)}XQb(Xꀶ=yT.Q^%0s9i3:zDmN , QMogʛ5G

1z:M.:ڋy ezp`Kmώ%`qyY _ys1Wu.T;׃ `7:A! X(C@=w+c3K'`g;$rnl%v4o1:U:Um#il]z5áA!ȨӦDhnDO'@Fҕ !yr[z$דeװ9RKw[R.j_u1NC(,Y&VM3kIr(Sl0p}D ؛3u[4FK:-ܛԞO|D B_F'$4z=sfC"K(i)GLjԱ 2c S@\˳&%?mn/2UqW*]|?6o8j%l&_k0|/< Y~CC[t',R W%lb7`pP'ѾXb>>l'V8>ӗQB\-2t'9>уf%@<W5pԋi>:Q 6L : 1F҄"GFHD?F)dNDE 2 uAqNZ/ m82~@V'1i>ghWȁ{`/Kf.^4$<Ж aVV#1  TF"+xjfx`>>;#oHΠlX)߅`A 5PqK=%I])@)h&{7bcK9$ SI8 5-]AGBREJG9|]B*ٓ1L/c*c0 f|}bo*5RhXc4ʼn1]x ]*Kъ7;tasp V:@WYpF'[W+~ %8)`HhP]84LƄk&u©d ilF$."΃IlR|Q'U<7x]0ksnƂj9 D/4eQl(-ш½oB^2 TP4aU.եr()3u^gʢ;kNB4eCG {dIxYcF@tߥ{YW q@B8¿YAM51ܵaĴe s0']~LA--q &W*%]Έ!uZu\x'=뢏۰_lVθҋ*Y7pkN"7"ѫ?_H Bdil~fRդ{|m_îaTVCâ9iI6 k:?{5s mY+!<4Uo<4,8n{G:ے߁'[ rA:& A,3 4ڮ*҅7ȍ}B֖ǩk,ھwQKlU*@q5%ސ&'N{l{FN-]y|7Le7#Z6VNv 1QŶ7-z&"H 2, ("&lݲ.EVN0AYnzF 5(>)A>Ys] JۿtFܭ@ps^V)et?Ec{A s`WU wƩ!4?u٩B 1:*.T .[0?:42tӦw`J|#0?Vrd-*`v`aWs-Jo?ƃ=5%E3OTp܎k,؞qύ2pԇ?9V[*AZ-X u? ZZ6tn>]܉D <2ʷpQȼ>JFCRY4Tţf lON<(Vzl4Q &N:Jm'ʲ@BQ WDA6l H4/,&;Bf.hioy,a=5OoeIec (#S:dbQ=`F!#hd+Ι"%3Ot#<Юs*ϟ_QWn͸Lr]0!Jȫ:7؂rͨC5e௔`k-!{M8>/;$knѴwɤtgw[cڧQdx>ZQEA?\_ o4FȓPPk&J )9e o>L꾑̛T4|cMXMa͐ +e?Ҫ D4#4>1}EL^a`+9QlT9 ^ ;kX*߰$~}D0);L\bEIu*ҕ7BbLCX=Z n8kvW^6?f->a:-52'/~H(ӬnPwԱvAT3*ML<ȟ >h&4.%Oˀ+Θ{J,Y[#^zqA+d ޞn){ͺ컇 i(3D G@QKgr5" K8iBb0V2McMqz6B}#CBDx>?ޥ3!kG+vJ⟳mf7a~mGHHұΔ}! ^}#M2;2% ?ݪ pv"|QPA ^!h ɶBog`T1;L޷hԤs!JNVE槛}+uxXpV$ bҗri!SY0S2vJ5lI@5P0Ѻ{^"KuD.X5 m1%bx)䎐_?h/y9gqn8]N9'Qgɥ| fkI2S>tv,Ũo`,EIHƧ]Q;ĵČ^؈/0?a CAIs:PO&r)Mz6`.I:)Dj~&\8v_ * 1!Ce+u;;\ `OrSl헷jJ뮙ZE:"`-|p'*0l֮~-7sQy<[b_X?1%b]Q{x78[>u0nK_=gyZ?v_HB2&:@W9Q۴["qAL3gh~:08G˅0TeyӵPo4=~Wbyc9=a0M) ]kO=(!}VVOj P'z!{,>(ي@8'- #Nh1?%^ 3s_off97&m%P39VJw%yu(6plI9VSaYYK\Ϳ"6a훣;zhVQY"oBHsam=FƩ`4C}W(rq0Qulx%-DMS6nK Rp^hODB#6Bm N;,so "iRy L[ pF_lQ[ZQP 4l[ˡѿËDӢ8RL+ g!n̥;cP ctεDbe[5*݆f&V}p/\_G:G/5_bGf]Ig'7|B#Z}c #h[- 6>}0 c]H0D}h JSך"ߜdD+`W Q󠻡ʼkX{Q?+;cm^-]gԀŰ*T{d+NvZ87;lϯ-` ,f1A:>mJVl2&>5~! jnbVu4(ޤZ])$j,Wꒋ❲@(SKvuG4ވĶ$GLk<8nfVTo4`@MOqdKGU^#ĩ,>p~:",^8ipP>=G i!JM ~ֺU#vpxoyY<Ud>+!41*1f|>A 5˝]S1i;#?M]e|e~(4~$'dB,Z XmQg[,46(*(v=A%=UH3>E'0oz՛yfVM[x`ـ߭& 'CGZ?X?bgSGS&qgCLQ)}j {XvW6<b~?-̯m(yl=cX+Sʞ+S]]⤦_K̇J7"%pQn7!0$޸&SX 7Җ;<ݴbь[u+tJ#>*ȟƜ"varMϞ C*G"dU-BuoL?0|LnJ]`7f Ν@i? ԣJE?lcD .LOAGnPWqg9ȡ ) /Ej%$gUY$zx[_}oK+BdD@V0%l,yDLoauxC#rt~0=xHm@բЪڶk+= 2Ј69ke!l_lk@I5ZinYe5LSI6{xI9{zJexń mJŽ?G5Y$R OTBH,k6s 8g~_^5m.kZOɂ6oeyte#4nrWh8Xl?U^0vU;K+1ƒX:,"T,[UHБC jE-Up|ssI|6"4D0Uo@C9`S5щ}]F6ɗJDYɛ9 @У,7|O4pU%:T&RەRFnS߾"i$:65mXmi}sƃZls’;O>+r[jgO_چ}G4 %XG$Jh錂Ia%a m^6+Оw۱8<3sXO#S|b !>y$7Ɋ3fG>I҄4f2 R-ٳd#pb[ݑxhw/jiI~{^gIߕc#H"a19[Lĉ*~U,s3"֠SW6z/>1[!C;.Xqsw0cw\ၺx_knłm/uxDc՟&p5SÔbt,Wsr Y/fBhv&/k>aΜK2JE9+)iP=f/+nKӄK;Z8O.pG<݂]]+Ϋ_D&1lxwg?A3~'=Pȕz[ 4ޢiҟ baj 铰f3ϝOci}#zҴQD2R[O0Rܖ =m>aW،D=cB7L,k˼c]>׬`4*l/baQH=nzlpY%-0)*?BjT_R2 '|ӱ QB[y3;|cuƮN\רBZOI L3v'h%EPR ۠3 g#*ns}jn Sh- 5CP#a6.x@'U*[Btkld%ЏIɴE9޾X/\)tlO>ދ:$ MV+knk3U5?aV-c]]N݆+ȵ#nE sz;G%4ewK;OUȂim8=Ҽա0k̋ooJ2l+^}w9cَ7uE*E#,]xmѼ"{^7SN']a{e NЩ/b6*is1cPLRO%S%fqgU:%m58Uy!EZ){*# B{m x4G@QFJ9쮙rmjNG 5IूFy l?"l1؊#վ$_3`NHe`niP&4FeSWiRҎpiٸmR[fBUOP/}ly|&bw>G&坜\v_ UB5 =fXIVR -jV9j=ޟs9W)I>p`Dy%'F zDF^bL&+CTzRp𡁤}MxZl'[U e5' ne'yi\ mp0Ò6 ۦE[PMo_^i/'Is5D( qpϸ6w$Pz-]lkhK"UNܕV-agO*ܺCk#ЏWͩr2!MU@N'40boc g~msSkG.39Gt;[ciLԘ!a*Ү)OţB'頕>coAL*#,KXqP*ީH Sp'oUS%kY4n'Ik !KdgSO};Bñ7 E7Fމ(tyH'K`: K#^0MCxC̜Ia.Incmaͻ$u2D@ #5eKz8˽#0H6lU>Vy#rH]UF9B6e"Pe2{p%#W7ML4Deq PC޽$=+n 6/n<{fT0 /v0S:_n@ݬjݞo6 u,"Ѡn&r4;,^(>*1|X1IL8U_)I\م9 έ 4~j9fYmۭT6}D$7l8M( şvob.ר5aU>b⃒)ʚs-8xbAZH!?;( MqHQ@LW|PsyfΖ?ȑ&CyneܴADZ& .=N,PGH#EVV{cr\`p'qy| 4vKf?Zy[9p)xc̬m̹hpl4ȭFHq#hdu-h'질xkt9HOG2VD*[C;h3$1, }86ŀ֚aVtT m!pw41`ry\iۧ=m?_Mۍw: amLlVJۇ\)R D^H&"HqtD9oc7E3H}My}0- D?fH~nu8n1>DܤZ?0AhţyGJں^3'hm?MyKU ]kQ..% ܎A_Jl#ǹc;|SE<]#5;t{19Kx?{tIBri\*( Q@Zμ ٧;/ C)?$]X O'.a~NqZr@Q[lT3πir}+^<'a!Q0qO<+Fڤ,&ǿ .ImָwwJ5Z\HO3s獌8ONՕTAW;%JĩqF,1(eQt<*ؐFi  t$y`9#yXpǿ[ WP #DmvnZNL< TIӺ mt.!?N Xe/T{F$E;>uj?? ὉcrO>jV?˽6CdOBpa}N Z8a*V$ ^!Mk$5n WM NI70HYeϾ@];DCˈj4㩝И"*JF{|K$W.+5+Q\q[ȵ-|dj%''vbW TBJILxqWK T'kGZHhC'I4lXԯn^B )-u2^m K?\2XnԠ.0\XUa|Jr]ay-8[3ӖДiؓ&mH@\&׌P{3hڙwRk ˌiY2.*3Pjs/8+z|: sIK45 yQGUɢY׿y:f*E6q;vo:2;&ۿ39o!SiPtT+D-b7m,]BagXGʴ줕yn$3ͣ @O8XH|I@W)X_AtF30ws)0>8E׳㟒)Ƭ]hLemb0Ղلt|Ffvv]@(k 8Qj?FT|$#2\׬T3 %"6Ru1[PUhFC\dFm!uǩQ8EQ%4j߬ڪ VG %#݂;Me q4+Jrɹ~*[tl5F,{b]Rg+^S \F'5ox)r$ҵEeRw`\լ|^8*/BG;V!zѧ>0kIRXY;7|;=L/@19Ql#1A9Ʋ?=}K6ӈ^*<{&Zlfu&U!io,F<9튖"FiIB9{OGvl !C/X#]x7z"괄Or&]ЁJPCjI8X.GZ)@vfvmͦC//{xӁ2 -c1hzϧO5qˏv ca,R(n a0#ʍ/ӥ^eo = *"*]t88}y[8tw79f&S3-5|Y0ɞc! >u4zAʽ֠ Kk ky%ecRt>aw] ~"O{E!/P~bNh=1 (94>i{_r !֨oH2ߙ۹k7% Dz@ T-yh\q k>U#AW\~D_4]9F򴓇K<灋Ľ>lň? x3, 1Y-lnҽv.ol+wl]"+_wzeS7rgoh1#\Leԏj8mu- yhY)vk_{YxGlilZ|OgDl˔xO VU?#k,3"K9ܨ=I'WE#SpwK |q_diNWεy6z|]Cdǚ@"0}2uԈҴ{~Ɠ 7_2TW`Zgb{UDdH}Y5-g5OshL'm2+\nT&PA)eu 5vѢ`ɝZ?& _S5Q;䱄fA XW9;=y.zSU#Y uDYT㿍E,beT(F 3HFX&ckqIǼ؊GɡM8ԋqj&@CAՠ s?Rz˱^,P?d8CX@OK{|/<|2';!9(w"Z=΄BWqGaE JQA٘*Pw Fn94DH3*!|fg~uqmAve]#P<32}K =ާ|~i&wBl?g1)j^To5݉`n }uu<o6?y^5-dT 3@vK̔>j&:ļC Eo365M07E ͿL ͕q Kh͠RE}΃yr|7zcdebN*_]EZ+0"=xVs¿ym]!³`|b:l|PKcArTs\%:Ve 8E'ah5@z-+KN/e+ "ģ*` +8mVe/BûCVIϝyk+ڑ5~XC.Js{Ee\8+wNQ@ME1>!D>~ LMxltUC&Z|- 1q~R :c@!(F#J(/N^..cn]Qg~iN5!O4bU#0iX4M1A}ĉ Wk*&`*oO%tyKr5 @Kpܤy ;~Gso HL>j#l -D&g&E$lK4 Caʪc d/xY96niRxBIeXw`d.P?7[U'ο$Şˋ ,.E,@'կ/(D ^;}Q/\+AFA7oyW$=''Du>YBwSs%?8zlaTr~sbH|EVuA _gs{ťEey;0(6CkU@G #OtP)!;F2tp\B j7?qᜍ9|3d9ƹy"6^׼3#^fN&֡p"-dF- `|rwjd6~IKV\=9o~)0j3ٹnnKF>8Y [sE[lhv@:\ۓI8S-{*;)^gdAq t0h$|L9SXIpbL*Lۈ@1_`(YW04;KMv(-ؖ+ $+cxsˆݡ7$O?Y{WV@EYaYTm&w@}0gD /y]"EB6-C b!t_=Oǘҭ̻yMX$yr@lِg\Gg_2t+,ZNjj5o>نCe92N~Lb hU rG9~ 'qS|ϸ\aF̣M0 熓ϣLֈ5%L%a OVe^EmϏZvVCpi#_ q=~J"c9݈Y/;z>l7^ ǩpUCI8Kd` ?7 W[se 7Z+]6Z9ࣿ'4ݑΛRf s4 E+TQ"̾^RVJ1c+|%u+#/oS|ˎws2ր%s︃X*Q̔\iRef5#3[J &v5Cm!9#60SJv`3+Bc$ O A&ޭW {,.ɐ A|Bu2SZAaaB[%_blnn&y? _D{'w{,j0mS}6h /U BXV"d7.rVQ,яIC?e' d?)W.Q#r?RIS)ZjGp)5(&CogA*#Fϴ];ȘSj>y(^SG ;3@@A`LQ+y׎7Bʏ܌GvWÇk&%{7"+AP|bu8+4\eI7!֬Q.X7@\w{4GZ/ЧQc"8x+mOl۹Wx?_l.V|V4l>ơ-X3k)Qpdy"ϕkFՐ@+/7 +63<3ϑGInoêt44߽ȠnL]s-tSZ0j%E!tE .fҠ|~ ha eC`$~\s%߫O 鰠`\5SV2gŋ'R/>r*p%i[6 Ǧ `Fk4/c :K`ćՀ#(C(6˾o t h ?-<%^)/cKM):* z=D^Iլ t*ѳiO;6م]pR^EfuiS4cc<ĶidZb뽹 N)~8#Yߔjh}H,k@1MfF/!e`C669+ݠaS mm6@9ƒi ^p5Qc#y#$4cS5,Y=ilcw^W|p푮掖ՐDʜ굪6F@?f:b-ȧNgymO)l'ݤ sSTvޖMhȈTu^yAi{gʵ+-> /lF 'q^m0Kzæ ,"W>2l Y7kV?OڛHP&yD8֮d!䐊y[l{.&CXt.'C_,yBC b zɔ鲕tӪ?֤ {mŰZ{}g}|8j˨->dxvU?'(6(~n.Uva&[ClfN6(v~?4lhGߩ=4`v>C"0%qϗ !C%) !?,2[3YE헃^d(H3/"|AeX#o dɧ_(9ݰʗ]Rͻt$ҝ{sʔ1#zmI8,8X˗8>,I":'a/ś£2N49/yDPs5ioĂ\txҸRnn,;OVFbuìK5as?!8.7rp FuUTOG*^M^A81D<\Үѐ%l&Vdb~V½hLJR3iThanCw@^FZ^vhw'=Q@~k NxQT5vȑSb$6HcE:4ӗ>(H U/0PUA9\UUxЎQ~L,Nirz WeX; Rz쵔DMezGPĚUءזW|(g˞ |lphTa#4jHa6O9;ly~'Ee#tp60 qsAbή4o#P@-y3$}ʻgF\5.-M&r'X|NyZUƣe[9boŵ.Ne#Cstľ-d8 |\?@:[d/@i*95דDC 5[g2 o䓬tLuީʚjI,r i}4*q67! e8Vza'AyV<!MQ k cLm[D!*UݛA-u4vR}UT*  TxF(a )2U^-8.;q(LN^A6j(9,27%IYv5%N :I."aUx/M2=;ذu2Q*HIu$.l,ć^;*qbL1}G׽XwG GOkR+$,HXF(ۢX~Ntڜ  bHd`!t$Ku8g28|%o"6.iJ% M'^-_knW^;9qE|QO,SSu{3vOQwX1>r/(`rA.R2wcϥQ'LUH5cdDъɞZ [n͊4f^y- cnuT 8B*8|PRAvEP?H=[1t'(wߑm,!\,{ůYSdfV(0˾)IG.0t@$[h09f$hc,SamF%=PRРO*ЧOGgIj )/wqwn5%;EJ@zr$nX(HIge$u]䬈, Z{ ? '$jck) o\%Oɇ"JnTP>qc׵8^-fpq /O!l] Z.)2=qI0m:UK2laT72r=/2 R H@p1fEupQf$&w2 TSNX25ަmOjc ˉW`䫯ʁLK?DC-Fѣ?\:!&!c1 ӗ._3 *򠧛ss[M7Q,3LHAѹ Bιc-s ѵvm29 IѰKF E_HHq͜Χ(wc9rNtm3](( oRP$b^/hSn,ZU`~:Ra6&IrBjņX\3Dȍ 7jv׹lgP@ސ,mVK4;q+wI0 8̗f"r߈Dy)3R1HR15M.p{_S6/DyBNZxR<_EEa$ȫ۷ ?3ξ${zq[dE[DU`T r#D3yjp?(]0:)yצL/h^rdbEןH@*xD|ʹ%S1m8r1 .v&]c)}*8B >nԴa*(r5MGLڸ2/_]H,RY'?hW/kf(ϣ3UK0J|Tp^tQp>Drlidb5#=b*zEx+7GH}yIV^x=q8/ ޶Tz@gߘ.^ƻ4P8P!^W2͆;:~@Mk(٬TJ7],k-/`Wv m96(w-#e31~!ƑQԽ2_A/><4RFtnDQ i[M$"I~$"5Mے.ksVs. QZ ZSfC8u>cm{"L^ɣQU , c?J%G{)_T 8:i]^˝f/-޹|UD/0FHݵRe1LPk3`I0=c2޲쏎U}Sr9  kmӠghmGt- @'T390x7O|p2﷤gXaLk4 50~FøzMi`q0]\6#J`PaxB#zz `ZZ:|On[ jS)c)ZaF fAF6އǙd4Ƈ3_PDŽ;{*L[>0m PP 78AG(B}EU&3m@,SЧ3_W 'JV^JVTx6&"/g#N}`+%*\Hs>NV8:q[i(f[)%clYi?w`K11"t(E}^?rՏ~_&~"}~8fS4TLnR\Oj{-N򧐟weh`<ƯgDe{ag[0D&ЁO0 H,dx* POMFt T $R`aވcU[ca.wj='GwY߃FB8ͤB(-7p~b*ng3_o, 9J>R:Zh 9v 8YvHI:s8=傘R/u1,XD?B-d%s`F8*nq:rv5$'>Dԧ|"׀WZgN,Ii:5%[Y٤d ~HOsW4WR%4MZ>O܉2ؾ~,#S|12tӦ@s9xm)69WLl xgv[ ,! =IKb'bUz֦qʠ|R@\yvi uIen ,a3MUD$DU;E@G姴]~Y+1 #&o\ٺ,[`]j#۱tBH[X `їb8\_乣]HƉjPHttdI*7MtǤ< 1bXоqjŋȱ6i̓$qܽwA`)Y0>*)8;{0[Y]mpFd To1?J!H=t J띴^KhgĩFV*-qyy]{D6N-^(m @;ub8Kӷle6|}3iՐF/O"~԰|)tcp' Sb}|[[W*vfy]fiJ_y8KE])bRQ"U^r=r2 VZU uFGxeQK ~pѹ S*3rz5y[W3k;dpͶ:zni@!eKg{d}]GAm3vl, OwUTM3ؒ5с\"Hr/[F1awѡ!8W'ibZksK\IImNc7kx`犭n@tqԴ &|gsHy|bM `r3G[Xb$&:=dO,ɬB%!lk>?FT*ܸ=04{8Y0ɠDQ5K ʨ/nxJ(WG+*:RG\& 4J(y6\(?t],<?]̧f;{OT0Li(66VXgHOT@^SIֻH_߸YU  ib%[t⫈&?fdX'hփd;}9H§1e ]u|&`@UUጔt`'!`f<Ym??mp-=JT6i'?{ }Sr,*o3g8bPRHS O=7+5Ϫ-ʵZ9}"-Uh/~F]nx e╵Grʅįcl\#A8~>&3FSHrzOvZ@!aD?;,2^$OʯhG WdUJrG;T;L1L9hir YXQFh`LNN&,lgt箩 Vl@.!E]wdzt& Hzg7Z2t[D\x,nQhTc 1mwJvjittcHMӰ>J޿( aP,xdV+/gxL*Kzɓ빁FҊxSft|qi0 Lߗ^ 5U+t+]#8^VMc IFX^>م<&zјHi?*:Anwގ嵑2d@DFi6r N[)Hy> 1ձuRH]0|ZĹGh_U5 7޺GwOHG5pYg}Кp(m;jq=[ ""[gvk:LRjG8,¢·icgLD?oEKm'ν=?¬?cVo,AJ8@oBJ"8EÊ5t?jddyj*Z)#\ֽ5[0^qB?%87.s.9uƼYG/%ːd1.{9Z,1u.9H>y!h{.KDcc0ggHo~A:|{}C1mۑ[@ >fqcaŃ2MzR8;i2hg(ysz1q -HU&qf33 i`8pӠHAc慠*~LXfY)m_ 7}/*NJ^*l%\ۓ6/5Ar9nT'GM~>#e։1]!!5_?u$ k5tx!y8r:}lSN'm٦Ih՝m&$)iƨxCnۍR8Dd|}$qiiU2 ,1|h2>y;  ^f y֥ZuF5w#(TXIffO{𿙐M{+w/"uc uKpKۏW-w_I*$3ִ؏uptntnyZ1Vr<^1f;oɗ#Ww2n*NL 0I"NkÔ봇^]|/tϠ%UMd6-7Mba-rٯ֘>YFb 6R&b?R p=U9)(L".ͳc8 :owH=xcUtl\U|cfkF H|d $).^Gxŧr6C|{$vjx' K޾aDdLǷ}S,Mr0ƮZ/+4_JA ˡ-eXD7׹y8u!^c J7Kx^ z/ıl z#QAn5><*qYBZ̑ Sg&cVrdre10OA'ҡj'7d7f۽@Մ޿ AsuFc<mFAآӏlE*_Vmc6rtvL[f+.f{κ/%('/d"PŔ?ubGDݭc~4 sV3@fW[bm_\P7rq:@ (ʠ)Y>$==ĖE\M}eZTwAa qjGHݧ•ʦњoy@UʖOtϯ.1 4$Js;휋RۧI&7!Tragrrh ^ '0(c7f0 yam-6AoQZ<|oQ^?NC "k \j4e4֜4hG}j#9n 1,R.b%zqv rA~l: Q&8.ܲ߰, Nh%UdÖ-w=ы6)4Itݘ#3H##O]kS.u1_F>aKr /L+̬ 0CB+3dG%yzW ?נ A %3pu PLWk:BJ{(@|3!zy6M,(Eʴ 5wGYA6c2A `bA!t3^ûOW~6>X9}(Eϭw:j NC2TXTԧ¨TiIC͕H~;d/q+;- J۰.űl&д#-_f˧WXHcOpK0HmQሖ=\kZ(EuЭM/6C$:Yp~zŒ-'_ ZH4CRDO}Ҭ ;'ٷuɥ7hNy2_@AY"9٘TjP n쟷Y).EbFjjYdsב҆h[P #9V3aB|jhЋf̝Lٻ -Ap3*ۚF#Eؙ7Gh/;͍";cY<'|u9;} f5vQ/03~BqT)PRŮ̀7MuE41'F,n0-p*{Tow <'jRItf86*N"Y51yN7=l kf}d*#|RWYS~5'rtF1*j'} qN kb,ը]'ڳڈ_^3I':ͬT~vq[]#9H"[+p:*,4۞mm5Ǖ`F5zM$Re [^ě)U&7W+/G)CNZq'CۃyKMuJ^emQ %1@go5hrC՞m }Z\_Hd fpȭpMm4TqM+y<G[NUe:ܲc؉is CVA"rAիpmSǞML/zh BCdez~T߁N$h0B輬דΉI5?}\1uD#Le_%? 4`y;st4N;K G3jL#ڝP~?q= ݆cȼL`LfqjndƣV l#B ߑl53cKJin{@eG:]lhK; #'x^zlE:Zʈ]Vzۡ3v+Uz,=*,[) @qX,U2H ،2>pTQB ja$N?unI`ҿ`ю]2z/Gs!g6}NߦLAe3| pޥ9M-ذ t2IaCew*n, kpɯa Z'JCt85.qW w%D!y&vNRHö 9\So6>"mhSi^j w]y}ayoAH'2$:ưMs]6RNRu ,FTP<#=;ϗt9rimPy)2;Pr\ꆦ~ݜJ>bǬ6DKDwڿw?S䮐"C1##9@}WWfg4T p)#k{Ag rZ3\@$ .W|j.`#]Wnm.y9e"nشBӲ9Uc^zg6Tvwύ-E3,8zp kUyi͙R Z bSPn҂lVu0d_?/jk ,ɱOjy1nGc_\}e0uP75ZfՌP>WDsMz!hoH;c$T5}iһ`LCKgۚ1LQB ق]VP:ޭ!t=vbFʩם*Wb5@%)hbQo^Xj]T<SAG}tB4xtڷҌ󣿞.rV6-oN߷mfZQ$|n0nJp.Q'cȩ%{Ԭ%A"@Y'U>h.*@ZUBJa_=<DTG{DH  Cd$=_s@yTxIb_.%GV˻P,:w(uQϕW#W\$}:.,Tr7ŗO)t"W 6p]@3Gl bT6ЮĢ]`>ʁmCYÙB?JQs YQ"܋=^n8)⫒|'Ǖ}U+Au 9g3?a"T08tWu\q|O6g-00kVGlt^֑/TPg]?ļ6%~r^W &Sӡ*1F~dW8iOiw!IrnV w)l:L\pf7Y?bsqWNu>^[5˗?-z깲DgOywC[Ѽ`C;8Ity+Knw\? }Ƹ (* hi6HI(tdE[ 5oL[K cpd.܉r & k]9npeG2Ryzv/'% a&\*rXxl,n ʼC9Аqk߳H Űw}uQv@OY3U*yˡ/ksm|7i gj;Z`Rq8(splH8WxEόA^]cjO=Q[.Xq*)):itfn@0,llTY+ $'YҩOWE]C̗gUV,!Jگ O#O8ؔlk-N$u0=T꞊Kq%dbHtB3-)/u~;0H;!~T P;d%)4]ays9q)͐Uwg&i2u>h/d9_s 9ir:TEm{WqV}n&?9VK, jCBVfngȬ Nl|ȋ!H-2o㤶xu.I=3"$j!vVQ؎9Uc`FǾ_#;,V\hH!+K/^⩜"sB?!D!w%,~TU)W*]bU~7,ENl~oxK}߮TNuA72Uwޏ-H?NTLFCE)E:HЫBM"X'ߚ?=Lf+r! ̸Uj~[KEJPs" HVr wh1Ky"q}/§~RVB}Gәwɠ/ǗzOt&{KÒp'KXx!H^X欼gE}Ѡ-P:=_}R~so =1de`V6V]xL p}ƙ=hol^/*f2S83(2k}  )7M_Cl\b*bj͌ 6/S<%g\`҂1 Zۡ+.dQbaMc>뛉oh0mYԄ oh]5Iy4yl)Pr9~Н[Ns ϨO.y=:Y'E+ & K!s0 32Iʼ]Z7ߢ=Lж sG_=O`ģI^8 I*鞉X אH Ʀͣs |:iSqy$R"KyȖبK/[rX!? HY-? G#S{.6i{aS!RfW""~u,o4v@[f;S)&ܻ6UUm'A Q0o ց)U# 1⳯1KЈwC"Ad]tiqKMWRB喕 VۣۮOӿ oYk]N&ᨵh"-iUf.9倳]_hA-430f0yB~ RJ@2}E4\R.Q Y//牏[ظ8F_CMDž8l+֧DkFNDOA!~`;&>YFY _v\5RʼhUH{.y+(^9Rb<?2 bT> 8Ӭp|$Ғp}+Qft[QjFHy9P2! MOs035ޓ+܇eN]hwiYϳ@QVH6; UQ uQ9|gx7|#]Z?,C[SٕO3Hv1{Q<UxGݲo2=w 9.k[s9[#.PfJv//j*WqY;@xG+i/>Mc03'~~9bMPC]5{.V(|NGێ 4 *#w.Δs<CNmsZi7Sp|%ĄI$kՋe "bXr~teFLcjSd9t5[nq1:;Yf$SWSڹT0SWRN7ixk:}mKb̘IMHu-GgAWu6t=N>N4@$R35;crᝓQd҃}M7:,ԹKDȂ2\_PwА2OOf$Jd 1<7 Ĝmͪls|81&Lz:Mh`)!Q_@ Ύگ4YaX#r43~TX SF3A^ 5XI 9JeZ zAs{2L ܏1~Z|WCǣL$lk=`h&o9D4(jТd-Db<`3~T53{;A5B}Z{B>hO,#غlm?^s^0MZĜp\XU.G?$>׻@ΐ\+p&W@K#@;mW,c _!2_սd@Գrte2^ܱgѰdf-ۢ Dj"cՂuMӿ $"\ČNd[ϙN]ZvS o^UCEu+!1@EWĦ+ Ց1VlvnwbT\aÂŴgT!zk`bFb} _>UjӹW?-K1 o#` }.0fu"~ơÚ}d$Mh+Dj޿2@:f4N2]|,/WaӰ.gZs6R(<2ö.+آtq;`@㰎KN, ab:}CYLj}5/$qZdϠ*##;ƉDB4hAJx^ 4Nt޸4?wݶc',{>;>CGkkP_@g2헽Ci߼ m k{̩Oo SB`|JD:/K"y_j E|6}P90ً-J~ bD1d̋ M4%))zم#!ŏ l|ލ+ZK?D!^#E:EfTt&돰cr|<7*J" p@ShT53b)=%w=[=r ~|RN"-&jJʢ/Y%<jD,w=M)2Ϡ CpiѓY,\O3^gٳ`q$QK&U 4Q}%wiXV)ɝc=r鮦2 ڙGF:2Zdԓ<{%-cU^1Sj7˨x7aO?څ;W6lΫ>v>: *-sn1${ 4w Bȇ[:אJBٟ1BβSs?5GleO_X!sE]㼚VM֣YiZcs{`EUL1%ÐnRѹ )mJn2]-K )lLJչ`sukLDIN_ȱFǘ||ߴAGƏ}~(\1eC]CJm<@ Nns nWXv{BAߢK3ugfm XbM4Ng0 ]=߫l<̀%vW3&b.ča!62bKϳ1!=ҭe~aHS kѴėqxeu^OZ@wJU>T`7쿻t3&6F~꽉$hD%bZu#Q 5{A$FRf?ƅZeq5X+;[ mu 8;?wcHrʔ'eA|Q{u۩IҳVѕ*(P熁i}"8 &TKxV!yXдfi[~͈O!Ovmr[ڶ{Qķ򢼹) /߄knp@B j溚e5Ȼ$RY?.0&[:ލBDTzc@;4_' y@y3*UA@"x\6w)<$w^߅>W\uXəm#V\avIJL'zSI.n5؎$ZfS^% k}5O ,Oj A{d(wOa긠l&`4x; m- [ |RtKf-~2FQAj!CES[[}.^ '{0ꚷ4,(|iFkH?<A !]AxjL;^y?}Kkut3\"ŠeqEqYXvY I[>m_x 6u4gP|[V~<2~jrnEuKx' zb(f~~cMdR8uD\Kۇ`5tN*BrzU稥VƖY>SͿg` /@uaAs <,d%/a 8U'{ -޲5.Uk;ﴊT6.l1Z3KN\%Q<}:s?j^.4|qHK,8)N߈Cj Yu#V䥧TOri.9TcW{X\onh"?@|҅%s<\Q9COa)K bV,(c(C3>phkDAoecF2;{t.4:VNDbh{4XzkMٺiǧ 5"P:GAuM@2aŀf&f?bmTPJ%y^@YWF9^̥-W u~{  `[,3;$SmNe FÉ<0@ V@p@K\a-_TLM0` Om\%ƩPէ߆2M1WYxc7N9Cധ 8qT=HXFdВެ bĥGc!Mڮ[fK ͟$uOx`8!BTޏ"󅦽{)K+d޹]TƂȤQ٘JkB@➃Vw4 w:Oyz||<&OяsgT{c̎&x莊<9Wd;bZpg̕6(kڙyCsU' k K$G(Z,N)&@ѤTiUcSEVbw2P}%3G wv ؛=q1JnjJ'CZ sz_}zhAC"UN)1*Rh9Yiym(ؽnISLdE%ϒݙpa(Rm'gOhVzxiѣK5ctAVPY i iBx,mBP6H|4ܘJ!%p&׈tU<9N t:gPnȠ<6c|=_&kfM$@*ZjZdwShuPT`̟`} %du'r a]y.0+ǪVWs W44Lf]@N, t\1}17DP&ާpbNSo'1[~-y._]Wror}ao.u zFKx$'?cqb:QzSc5i^k16M=tiܬJCg1% ܩJ@ұAIqTe`鉰ž"1liٱ~\ZZ*$Y/zzv Z1]*>6,I3(RDT*F@K=3 u{`עqhMa\ #=Mf2r*|;dggT[e*CXC`Tttx^i 8[ :M >#^7mRtL%P^օ[\B`r`gS1}&>lT*vp&|kw̯.䘞Qc4{2=`x'h& ^姹sMn-0J?VJ8D"tWMҰYu;U:%&f<\xD^kב.a4#\V`AZ a+7dWpX`3Wlw_W"?)`o"Rgr)Qq1}l]R F3QjӠ#pP8V3 " <[=dc+^+vU S(ˑr$v\[ׁP"uYOi73PUO"7^>X>y=>޳ z$`|N_ooq!.T6?z H%z`W 5} 3A^{v'ěX,OζF?Kbu L?$c°mO{q(_rq|q//Sh eTjM7ikc eWγF"r8A95x.fVYqDs'>ʓL,.ԅAD =诣HӔJW7z^Lj5:wq+f՛91}ߧB>&)"_H[<ˮڃpxxߛ- Ҋ'EkUp:AԳKCWKsXGSQkίm:GThD=[y 4/ 6`̑fCz]%B7amtcŽWm47⮿c|g=yüoYKY'̩g^ &Q&dSrhg$x OjYh=*^o0I9x|):р mq`Y "kD1(Iqqӊk8e&ɇhpP1ǏG8 yJIpFrdg1a-@-e3.4='=5,yO `e&?qBhXjAЁM(NćBKTt>[);=V^.؜4we\4^ @B(}۱緋i/Xyeb_sYLU)s.[TyKRl?]h.b\~@L@rsQ^4Hgs-F%Dv)>O{;Z0%37WVyO92 tͪG* 1-s0DĄ50vɦe$bX(8#KwwrClZӔf!/$zTi.S{vme J]%,A^R"עi3Q\nSC~<4`4ΰZ-»^&Mk,؝nJK4Y!a땅?~:^ *aRdk>|mМCBP5S.yNwJ'=Jxڡh ~m+-i<kY69Ô?|[`HDj'R3#uh( >k 5Wt@m +ܵsᆱ| ncWɈe/U2}7/kڴ<li!8 dvM!Al@1,E'k=R%y5gplTyןО<$h^L${ɒAyPȳE|=*$ #Jatn %098#LmxcrԩQKQHwW\{ǁ#]FtGmˉ s4 wN'0egw;ἪC d1fF]Y&8 Y ?y gIcW?BLon-8 mvAM퍕# ĄYjmz⡲r#&Py[-V^#' 7˄;0N݃ sq;#Io(%s'-Nn%.O[>zy.[1֚7??̮4? ŰEa}֞h%NNHkW@iެ}g"VY=ImoNs~ ޤH7كI2iV`0N>$p%G)Pr1 ÄGYP/ӶDX =k0j=A\NyCX%Ʒ6j2.4T=,geukrp}_r :x?TkLV^ ٷzTh:b415+*7ny($_]i`Y{6plElWc/C}#FeQ'&Ҡݝ9[rtÓz@ۄ&\ I&rItʉ%#L&uVgK _~{Spq4L i_9HfJ·zw#=ł㙩(fpAe?$Ps35]ҦVu*ahFi~:P^njij]{3S1!WfL~trSjB?yfl#ϰZx]7_&"ŘcܶhC Uܞ qJ5iXXP ܡ4 x_g;8Ly:ae4竑-5UFŇQ 莍:i#s"D#~(ue%!|pb'\y c ۃU9< j:@<:lGhڳ"--!E:mK%9> 1ӨJXm4W24Q.GJ9b7mzn+A김:^DS;Bu #S(h.R (%\;RׄP}@+|JY?-e :ns{6Ck|;ܡ8ゟ{+} crW<&&st%i~麉FcӼ\ke߄DG+|+ǖuc o3WJZ_i"t2!MћVϩI{I*Qt=(ri[Q9b0$ʂo߭^2@u'r!E0Xixfz{XFE#{v}'n>G?Ϝ'7l?ïށ/LGG|*BDhn v4?.y2 ?=BfF $p —P_ Sөr80ou+@?g|2#aǀGC&L9W&aŃSvS-V"gO<!:Ǭ+[+Aa!u*[0 w\$4+qW?*<1n95+Lf7[M:o(J\|eXܮH;m >/)z$t[$Yͻk`?2BƯ&gk'ڠsaXnB'Ӎ%Ȑy~wq G@4%¾)-oE=>"ɷxNWr2EoV_w,tXV*7CSž7o Ns79|40G+Ĵe+ۇ[ݕV!q$Vʧ;N#ibv-$Y|_p`VқW-+1 L:#iEh#{F *rdIyp̋A|I Ϲj~ݣ/1~? DU^KΘ3%K'R)}G6#Gbqp2SK)VLP:-pL0_Jˁo[/Dc@C;;6)sxK8ZF5H;.hpǬjn.U7~` C<! xaaxߤTJr1bB:98%A+tZ˟Gc@XH5B@fwQ /̔_~U!0y)"w-IoA)0˺sC$.&ƟV9ָ7 VkRj>1M^(iF~}3b(HNGy#dgn )Ж %N?L} l9h\ݹ,P82J(!$ N;aay…Rژi-u-'"[oܫQz8$xnXѱ`EAcɟN>bQnMĴ/#uhw!t5_~n91~eA5Fwya>Qb\5Y LO쀦qAAKf!bcN%]{ ugu1heC˸Z =hmddYoiY '/ UMmP A)HF!vJs2 h˗..W׬O+}5Vv)G?2Tf6 vEwP6*ڏT#4GŠp\ed'؄{/&s7Ot-u 2id :՝.*dO?ɿ oW/Hd揰 pt^҇aPс2=@tg43 )_?wZt:ums}^).؋Ys7t\ l¨P l\B2gSNøpx".΃i1R^<h5.F $Gi x؁~Mģ=D3$,@zQ{XZ#c>lZCm0lOZ%ю5G u9LGRA9INGAyv[(k(N]PmeD0![6C%v^{۲C&Od6y֯+7+N,4%Ǝ_[qfoxQ(ҡu[חfF>=3e^TJ< j䎗3"lӚl% ڪ0@Cj#vlT5;H}ua:;w‚.gKb{>}qpΌHQ R G.51ZrE ER$ .Iq^c#2| RYל tZW:؋rɎ̈́@M0[`)C;Ox.<|P3{,7nUEyJʤzw:Rї4AM,՝&F>y3*Ē QQ Bi[fVj1ԑ*ia/X$ ё(b~JJ͐!鴫˚Y=Fq ,Z>g2C( {Sкˡ u_֦ Y=F17Ѯ 0\]}4n U ti{M(s6 CTENG[1n-dP 0ԎtkTIΔnWϲPW# WQPZEWMC1Uo=)FWBYڀI)F\逹 /T ;pgaf }᠕KM YL8w]hV:*):JGE/N;@W{+r7G{6\v'ԙz ,+٘+a!{]7Z)hr[Ѹ=&Wg@$m񽵦 M7rǐxT ʲ.&j׻}٥݀f6/:`rm]wavm- Ow@3jl4-x;j腠'p:$zI>&|Ԧ0Ym 9`8Ύ t(iw+Ƶ,Q׬o$x+pLϔ2@p&S.H:/:aI\i⦴dVH#\Hڹm) m*0M G*D0@H߰lkz{Ā ޚxF2@o\(7]۳\5=5 ~@1# aP q-*ꈽBK记طa h`".f^6LP$kV֪YE0W2 [>!MA+9(|~Y3d+?FxDxP[6#*gWUfۀh@h h.(MSA_'8];Jgk%G }nqt4Q^3szyN1Rj aQM6&gϾ`= 2U3+'[/oݠ~4AM_}؋vnki׍3T f@stiezPTLyD6^?eQ\ĖɮmQ϶|TS>s] f)t6?`D`&r{kxA*'@. ` $;v)F=oW˂h:fb5+x2#Bjy{kLXDh,^f:u_D청TV{A_@o%R&ْ& ]j_!43ZL=䅨j<)o\Iy$q?%lԺ M> ]vM}VB>EzχQ͏*V[6s SBibzmA'v*=iknOSas>CzAMQ< sXOI#ѣHqeF+]6:þ=q@'L'Q C|=Z)wԡ{J⠔Msނg*93xRP_J͌oIhV616lxD3elݔjZQ'1u4n ="᧑7, 7≦nZzlT9LaZw_MK\kK …ۙcPA+ړwBOs;^auV( ycYM˃Gr7)')N"IrX] Ag ?P[jp$?p: '`뎽3zC e/61`~.u^C[,;%5<9AvMO2|^ŤupFTVҷ+DLD ,`r­mJm;9 &&mNF'<6 38c1UF 6(v2ɫ g.F#g3ۚwj=ebTYߘ֯w&ڬº(_.;s ?YDYJY{r4Wv:J}?S.lըsVX_D~B%eix 5:vqrOKMe8fPqPy>=6r,N +eàgEXZY4텾r+}##<'8_E 1og_PΛ\)O/7DE-doی.`00˩7. H!ԅ[h/rZ{#4VAv>Ni2H}=̔{H)VFCo7P#.j 1ccnF`5L>eEiSZYN3O%ah-&P{6O T ^!hMJ[h)*g0=C.d7"/Y_ ޶a#"1_,PQچ# q'`[]{X?+([#bD׻m.য়]ߊ:'t\&/ee?2.ebܭ,p?Y'p6$;I|ћw;#Z'Mi inbQ6h kGKz7HO|j jk/8aoԛC?c +mnv4׾<@i|e$V{{g<:5@:%L9Lj,T38gc Vꦡ3&Ԃ;NW: [86o 8Xn*>%r˒\kAnJ;뫬+ TX!g,Fx*Ԩ. lQqVrܕбb荍oAPL qisy4T>dOW_3C-[+;J 0Mw-mOD,;;oU|!;mjudŸ(dhw!*)p<\ qz<)DVbrIRW1ye,W—9=XblbF$Ɂ\U*~!˱ 5RrXM SSA9WjX_kbOuq_D_'3^yAE e%Z z <&94ίHaW-~>Q%`Y=ܧgt]^x`֮+Bs_kGU;aT[q5tNTcg2Nm2ӥkkl 2Ya29\̣Ih~0ORsSck  s]ȡi3 9t~$R&ض:=YOB2i.餒:z:2&C(3(*`C8 xװ*݃7JdYxG |㗚;FPa?nD<b{ȼ$NFV6ߔ5To5 .ʽ S}xNeN"2>G*lhخ4Ϻwx&xeeRB@5rLLAo ?ɞƠ_ߌi46(Mo_4^ܤAxiPR?(Vy*a~3;,!O`:vh_^ر2{߽վgxhŇuV7C Pb>i65T(?\EfIz1JrNB4i3m4!jzzJ]37Xh^`ݭb2.jEyϨKJ?dΓ/b#JI~EĔh_}"l;)7I\Fحsu&t(^M_;^ j [ O?li”*Cnv^6>OMϽ8V6 {7JlmC€]loZ ;8ۯ KBo]gY䤽uW {<*s7 @2OFݬw7g PgQzpJId~;>nD T@ fTI!9ۀؐ4OJ\ĎFt1@ғ_/LPܤߙG"/Ԃq$?n΂Foq:O+%t.•Gu0Tt=" 9"HfM#'_E6m]Ktj NE!.9mapXYz(yx-KhV zh_y_`.H}ooBaEf`/!{J.d>C5bޚl|7θoЪ:aPNю C2 4l-VC@鞚*,LQt4nWs5_ ^ "%-CS(^ 9%mpCנBӪ+ICZ4_0lj9P&^4V g6r.?А5 cW>wheu=+K3R<3'=P&̈+@0yzESʷFUX,vиҤ< 'H'sJajP =rnpr?YQdC%'EV C7[G\%T.x?z-m*Q`SrI>Ń'$: 3R]/3j\dIG#7?]h&xg{䌖J1D@jq|#p5Ǩ/b;XmTHLpRK1MޘNr %m`/\5W\نk2X0!jsT>L}E'{jDsq>BV0Mi6ךW)Of:a=Q^ Z#S@euwu APV^g{W*wOTs"4Q.aLVa"'V$$n`miijdr1g@<#jӸ ު:8ѼˠjCRP~8a _5=ާc bK j$QY01WB>q:"*Ѣ!&tm?vKtE 5-JG5隕rZyXc b؍P C O\1p` nG*C `D?)~|%2GqUp,z9ҭWJ7DxB,HQ!;땏1Y巽:?bKKJo$(70=l?ؕͪ77~F3oVȝHjjJ8s\.}raQaLפ^!r]X{yh6YR2UװQc4 (VT6]Rޠki69jVcG5׃C%٤RDAA~ lgq)](CF5SD%<*17YtM[տeT#hp-f:;KmzpšLMI$Li h\Yֻ%<"6goXZ^6=8F`LR]qˤ }+ E]]mӚ+o! .&gYvd h0wO2t>gmVU4R۾LZ"$WGÓrFQ>nYFCzr=M gKk$vfǿVc '=׫L4|M8޲ V 9LߪE:*LСLĖ hAfǨG+ ,`(W\mk˿kk%WɒhpWH0q=Qb@'Ɉ!Ȟ& dL,M^NTV=`gLw%,~ hr..;oa`GnyOVZPvشWUs|5~ {JLm p!*tg!Rك*,G\$+<:dsX6ug7ITͽջn53cfb'^u|'Ð#yT.]uUq0)d;tG~nSPѺML4[]An)o@AjICIr2倠JB= j%@ܻDvkƂrNQz8ϧDhXygpD> ?M%b< wzו{Q6 }L:῍95(‰փ Q_%6(t_/]>|5-gK}kDRƒT3.r;͝߉U=>0rk-JU uEB|z8ٵ0ܵ(8_GXWsXK8|1AIcjޯ{$ 6p3xf%I+}ֽ'C2`G^U3淚O-ʹPm[3*hU7"w\L26dQ<=9aM$>RoP9l>rsJQӔW:;ؒV^OM',D2YMùbuEeC%i=vvHǟkqZh}=1T.b.Ԁ,E:1AF^k K~%ti3RʆFE.Pδ]x6Iiԡ#cfDωխV^}0T/4Pr?f2Պf>όu|U(<:Eg쬝[1|bqu>O0$&r10 1n[P) Q)njrNX9E1tm{)i؇W*w[[s/fq50ʞG.T.c}v) sdQO Ѱ崚dw:ZPTpk('4yxf54R㽙(Ի(A"/mr$c 4X g6UFKj۫Yfc+AܟPx(HKC,P($*<;CUVKcf\qb/O"uHԱS% m4f 2?{V0ONWcуi/DoAZ.6 Gcq )f?R n%\ o+|5Q4o_|XI֦+B scrZ\e@B<.Šbܷygx ۺ2>#ZrgA05MtUz` ݄~hfRvұ%;oQ=P&ҙDK#j[NjpNSwQClo;BDXD%9;u+m|/q_X\bd,*-v3! fݷEUiDml5m&lNjCm+$FFrqeW <̶"}@4hW54I+A 9)~y 7bR4$" n\TPz.~KCm-P۾ a zljfޏ׷&sFU?OK֥lE/ƴ.MKǥp9wa7FMWMúF`MvSJI ed"XaS-AԊ@.SN5`ike~("ӧdj[棃\KKs$[ d((I-jFBlу5!YGw>s %x 3" ~7MLeAh£Zܔ6΍]GT{Frz,zIU, <q%gvѫ&CsŁ=)j)fѹy򒖸EHRiYs*h4=;cQh.ɍ; +Rji0<^:ߐ;v|[RmO͏ NjV'!P[7=et )'ǚ3ў7z}vNdw'vO aNs_9]0CInV GKo|GDf\A[DU šrpOР23P'!7~F|vYjC-Z7S;v40Wo!{toQXEyu hkU/~^;q.vZI=fq>J3ÿ ΃s" fߕba@n]aϔ5l-9|zLpח\ [XOU(#KMcJЋ?ȑ #Np".m:yAi}?RA(\I]Y3}7VK;̢a4!/"6<31~ ΠhNa@tՇ"z]}.u7 pn3:gӮ2s3%y]!SMh3,҄ƭa_%}$*0a  QkVbHs4W;vB s퍴'_僘4}az-R&g5 4ibr!W R'[,t^&[$FŽ$! 焚mtܺ `z\b>*AlV/+'gfF∝~^5A5>B$ub'zbE4_<:%/+ÝOdb@vZQ= 2|S>tS59V[Z(4!CBlX 4~`Q|>Lڀ57iNGi?gQ\oN)dDE )MnpAl]/}N g(u5|_,=)^nl>hmkOӌVjOZPn+gJ쟖>^I63 :uPq<G7uzH"Wu^ yx]AXr :kJ(S*ȳDԽq֗xɴ'E4^4`I+ds?s^ c'c2(M"~/@XhvY9 #m9wأUчBX# (K,Pm.C2F@˄V;(V/{U\)NF03`꿴Ż('zhI7ݸ7AM#L6V7Wvޗ&^+*z`b@ڦ7tZJ#4Hk!w{D e8&Q]ܼ(=(՞gN0`;& y{,!^nPq(^@ q VpnLé.1/J6?ݘAnDM~yJbU$оYBA)s:tNm)ȽbRe&&r3==-D]2LDWX2g&<0MP9:HS@mnTM_"\_iyBuv x}mRD/_& "W{R RK*%,+>.f#άGlUi-f=vq\}48 w?,sOE=jQ҄]p%*yFt06TKpN~J-~g;ƍx.QHh+~gz\@T>ͰI~[>TB%&exX"ZsR`\j) xѨu]3./wEbAȖ"~U4$[Qob*k[7  CN?&l^q|Fu3+ rsH,y[9`r 𿰽>.ѓ&4p {LMggF$W?NZ>B0crJrKqSd@HV?hsA C0/\w7 dURYq=02e B^EL,GYs]8I<>g8{PcrCz uEh|qz7<$-Jؑdz \kʍ1UU Hav_ g`|yNw۵o{QnCa8ٳq*OuWAJv=%h\ ƌʐcK*L %[_p8 (pAj}0_ Hj6` : `%g}zjQ:h7zwAĘ * @m@frmPR*mϹC;@/n:BgUT C7}$Ƃ6|XX;-s;LiɧH"E4s nX%wN1d'~B`aju+Lm$\H@]#_l]Esz~KFRY "-Cc^0O lVl%V.g~|"4?a3\͙ӾCVPԱs Xpx[LY5to.y.=9*Ř; ,pL VߩB%)rsތ""EPUEM*SUmDCs{ȇQP<*  \)k'߼ThU\HUlNφS%{ AjH<jC],t1G X ҧ+vQd-З sl}PKFr^[ڃVKpۢ4F)TP^%RfH͐d0p&۱khTG+w^;#>z >ǹ]#@MduKfizGϰHy#]{ P!qRe'-Kj (NNik4ƹFE)L; lb2[D1[qL''|l&"C[Wgqj_*GV9,iHywo&~+bm2tF[dd_A6 9޸$Y}ܴWpt\u/fhwK90;̋Y),>0E&qciW*d+kT!;-6m@ݤL'JqۊxSlTmI6J%?_vv@-PUT]D䝉һMoN$ːajkh [{yIsAGzc,TI̧ 3Lqqވ|5[({V)o@3o0My)&6 tr4Zچd"pwEB*?}[ugɋҟnЬ3-۟YCQ{#] ̿eަcY#RI#Dl-!X{FJ ,C++07 6FY ="`}@0j%Z 3g9)ic g8Ӕ#r>%#[iP좨qý.Js(ˀ*3.`nSί͖uuĔ8'0͢uD^+\1 /tuqP+7xPGX;'dK뺅N KXؒ\DM?mW`1C^?_0 EP+`#'̳ Uquh5TJq=I5'2%nO,z'p QVrAz&,)U; =^61Tx᲏=pIf;b`--szc1a؈ pNcG'V 9Z w߷dYP֝!8f]f@Qs5ZzH^g:䔜/Rljf[U(=@Ѳ@(idly=k*v,g"| l\P%[2/C&1x smնP6;MHIh+9R>gO%+WIK[~okv31i69rSյKm;5Y HF%;*l|PR G;EʛP~KE>KGf܄ mNsܾXD1~UyXJ7ר uYdd41/6/=v+%-j&jJ0Wyqd;{sT~BF!=dlGw: X9\MEә5ahAmabYu L!L @=HDt\xgb/s>hNZ6#'{<qEI77pu!ۿ&{Ntuawj̥Ln|J !|(r|6yfށԑ2߭rOvA8QD  %'6!uIJwni KJ2?%T(ޏ<|kF/TVQ(& bʼnٷRSLc!(m+f:9W =[1b|z B-O2#9$o0emtU`A*`}_ا$UWZ$9^D!XɣI$8f;4+ UhQ h>(]!:@ͣ6@hMzѓn9pĽVn aF2W ets1l_;\ڜ \_Exr hK0bhڽ̤)\B}WiD%C rVTBD- 3f;}hb<˜F1: \wv,NC!R9b:e> hi/? ,B[ۦ˖7`}Ӈ pmf $uZb㫂/XN(ѵ.f fFɵ$[:wm.nHݛ$IA'|gj)3ʔm㥌K¯X^"yPZ1 +6tcPpe$h 'ksnoԧ@EC+±ײ%a w&kx\u|fx(atuƃ7' uA(v BQ7|fxBɿi"\ƜޔQa.Ь/BHIrl%'[+d'8wx7h-1PnLFb$޿\얬~q  ۹$B\Vd%6A#ABl؆UڢBlm#K:mqQ5B7 Ƌ VDJ0e3Kcd8SJ+S?1$G(VKd۷&~ԽAO yrM 2]7rTXvM0LV,e;5*V6FLH.`^x$ɼbw*+8Z|4. ZWͤg(:TsS'kvu|fBn1QĚ^ymr?|Wz Md(`?J!!NL ڢ@cy{cՁmB ӡTiV`B 3\x _״Hk"}"5~$׃>j(T|klCwۊ|'.zAܚ/TIO.e]uBc:]\r@#-Zn2Ƙ)ON"* o$ r@d n:e]I(XPˀdtir|՗M[ܲ󱏗i0M[ʳz+ymN1\-5]5`ft<@9U"QtwMt 0V$?)<>SePURK. ]cjy6,{xtN:3u|"4 w_MR"- D _?lq6ўnEbz` 6ڹWӀ gτ͎_sm2ng0#`J@Im"}6fؑ"-WiPmGԇ36b;>I>P\.,]OE!5Bdl3СfsXAr 6oMbbV2ݹi|u?J (ko$.` sҩ\e_?| }kjc<ȾC{\&֕5W4M]E~w,qYΰad@yKηd?TP(M3Kb{K:ɺ޷+74$@ p2 {2~<;zX1) y%"x7壐9Y5"3cb3ea]F,Kn;Fz Uv`fw=NO 3'VWC ]plg))!jxW:Us1 r!,>Lb#i> pgc"0nRsP Dۛ} /")nm%&9u0]j+]$񉬥p_%ݪB-7Gf* SN]z-$>E\H n X"Z]%&..ocRD:9/ 7)qǫ{ԛ= n4|JMNcex f3kuE&fsis `F<%M~gpvS Q}*wzVXGC '`$hξpYBPl:eX1 ݒM}Z Mx h1[fI K6 _S+^rsP(ME|Aczغ.y> H,ޝlbZ"E l1":d2g)OeؒQ"/OdRII?_Awgg_9TөRշr!t,;Qns?8VO:S TzIGoؽa9AH(e^@xR쫲_LNZMdZ_SFdR* E$(eєռ?Zm` !l .mW}wmmƠpbHaX}\K/eߍ{ejqMX859bV@΁+``v[g]y1,DPNoH2?8/&]L0eAX&MRGO&\U2ЁQ&"6C>Kc:%*mڐ)nL,Es(P&r&F"eZ[C!bv oei\h'i$p/WS 5S>wWɞ:?7,Oc$7)\2F!M|ALeTW54d]<ǯI#DUv-Otu zcRcm>C!%K?#]ڏѠ@0HDűCиx 9ۓYnǨ 5Bp~[8ʦy-h6ESKШW% vv/[Ie7)^,kp(fJx,˄"L+nl裄|/xH -<J*>*K,`5ƄkmU׹W[pEcUd![T:r=m ?EOB{jB7py:gwe&v;-9o xHq۰}9[:!W:qQCYXw`dʹ^hX3SŪcg%^%ߧkaq1֋]^gbaG?I"j:;Oٹu\Tvi}_'(n 5amBx6s%%XHnRs-Ɠ6Z (n@vJѴCv2tIzIÿ.;CKVQķ׌"y}i=$YcǏPr1ER6CfԜL83-ٵV63Lhbz|;|GIMDLwOB TB !P "N>aE){W5 y@7uNP3.%wbn#c% & z_i•e7睟#WqR:ȍ#i&:Ȫ&Hx6Ti6ޑic#8n6:&qM7!"*1rZ䖃@hn hto'1'OήZHɟ-`CL)2D=`KUPEիz[Id0gCլ g #"mNiS 6`B+)f9( LX-"XJ͙0^[q|-+NQN|L]0-i&7)Vܜ?خiݮmuWCIp@tBRkZ|}Y,_D \F( ꡯ< 9@9[ۡ#yr [w}kGl?@q;qύ=$00'zПW_)K]6~=Vd~J*p@]Xv*D1֊^ōl"v^`pI_5l.-DZ8 1Ω~`\)O)v[T__W;uGYAv{a}*eL"1by1AS:/Fs:.HЈFwTDh;0tqϿRuM˷s?j6 x/ p]p@Ϸmp9֕qofl9 J. lRM"> VDi a ,C :WiT&ưg A6 }+chjǪH23LiC7Tu2`!&߆ۃ$=&|{e >#C%)#6sgȬy|` s |EXi?e(ue~ ?7Q^hÉJN/ibŖ˱EDaFwKI6 n#̏ܶ7C]/Eŵ"[@';vFwLϒ[D)LBY[ӋA`-"@}5ID<5VxvPlױ2F2'5nPeS>!""д<$$ڿ&_jATv`DVo46to@-08 7\*13ɨh`pvuM,Y_KKE- {V=x;є!~d>HaCk~@y?!Ol#1G 7=U2}1[atn:wCKpxt]p)o76ٰK+bClTj׶ܾ!3EHT|g[:t= 6$^/qbYhEJ1qk --^ &7%I;2]¨UP(}ޤg3κH) txXUH T[u^,ʕ9R`*ʻ#?)%R>D9Y75a4x@ VcH%;Fū>]DŠ}@Hӧap*`i o?;Kʣ:A~,,8%]ًٟC&0*0;8ډ[iUVr)D%{k};| S! 0]z-uTu//߇@`*,Lg{g1R]=ζ3_T/WgXeO!OslY20JKhrKW^M#mMQks<= p>Wd|A8Z]69+ׄJ bCl­(0u!m&h81ӡnxUA"Z0ZrҼ}XF 8B1']~ U57 |'*Fԅygetvjr'SF|_3n ou!u]uwīnK a:D`!Ƙ?1:e !YYrdu bY>&cȀ}6x-dq@ז7K?UV!z[4H7 ǹl 䀞yדwHMJ/-¢ew)&}  +\%p3gLc' *gjo/ Csr7YOBrJp؛׍鎒T"#ڰGb7 |s y٣^j9DMGg*V0vL>Z=&@k% B̻SJifZ-IsjZ |H-qN{ _`IA?կ!Aa{ۉWH~BbETA,hpP~Q?'q(l۹Ke܆-0l3Z Y`f;?Ej`FHm4P<FIk+=ԋk&zЫ*[kԨr֓BTnV6p+kە"ߧ:s HA9Kp~I !Cs,Q;dZ:#! 0mI'TG5f<YqKm?Ewp_> )~7U\ٿ!CkܼsC.}I'S;TЅ/_pAg׭}Ԏ_y|hS+{3e:E,~`{$*\VW$;QDLޛе.('АvDBwx.6NM;QyRY'_\neQgdO49*bel :M BѪ<ع˽{ihϛ8W /vt,yAҵV){=Ќ08ct)  Npۦ3Vw%pͤY99&fGJ!l*GIN%r!w-h~6 IklKHV!&lP~;TX's{!y:r]^e$L&w݁^IDgUFfۜB=8'+L$.ykdFY}bksjHNMK8l)&~]4X^[֡Tձ$=:r3HXq4Y9t"9j8P|ÈDf8r)N4~*>WST U7b_{!Dy@8G^{$^,Ns@c$w x%HH$i=f-.sxEla=)W#-+_R;hxh+j׭Mw*5/4j9NmϨÀu z~ϞKrҵNe8+6ĆϴZwoM4Neu8MɕHn+dlze٬YpOmZ _ p.!I,4;hd8Л=)ik(duYߩ7$hX;aD挜V֣վg8dIKBrK4)m0?E Uִ0[ ձbFpFqS,c,ђYaũV4؆YHdR>_`})_`'';׿ٰڻx!eqWf+oZN(&t""|v"Ҳy l$ox K~bѹ|"nzZđ gxxp ٯnmN JT 2Y)#UeәWfX@L""1_W4r h'{~7ʚnH^1 w\Mΐ-:D]x9OwR(^Kp,^ YŴ2;#Hr |s6Ԭg1sVD+{JV̻+?ͣKəw;'Ϲ8M1ۂY7>se0w&Sd6BFm5w'j]EUSwr_ɒv"pF)8r|JV㈃Z";gߊh-%61s5XLr@IrC:V h AG]C@9=Kq4peǔif@iLȤ:6ۮ >05ЛHq k#lO.ݢ tHUn¯QB՛f+2f_rq@z2A˧a<G3y=i8lMO#s d9pO <ՄvEv|X>BSU,[ :h <uݩ$pO;ENOBD|fѦ"9M~ de_mWđe7@F:a d,^T*g4KY˂p_1n*s N6!/ dcc2tͳW`>XА1^y ȟ =<9.WD|ȡAqPwO4@52j6"bHЖlS8Q[.?3|̇Q3jUR!r?a\$M34*5M3Cde4,1uwXzh-[ugn3<.%";~t:]S kТ /.uSJG]P]oX}Uimˬy }mEoIf){Mk@ǵog$!)Gm18)'GۂNօˆ{8Aoen헌xsE2@{?>+^nnU}]^bq˝+3xfz[蝉3#}ŻKe63J*!=7Z.}I)ƌWQjg] D!,up9npu༴<|e2D<:hzro';{Bj-XGNt /Qd}|yn\fVʹTβvD Y˺ܳ"I ?Sg#gJ B.Œö LͺK:cGW Ap'`H7RQr ˩Lݼ d๳mZd6EAcTѵZWELG>?+ۇ#2{ QL8:X&~f)%mݡU3C2ĭ~u Q&qZݥmUpAh^ ^fF8UtʓHOr&xcpBJ6MESk|~='Xe*K)1.r'sZq(gQ;NJ0  MLa{k< Xu ~@HT r΂8Υpw13F,9l,9 _~5E(兞 [ Jb@rv:yf  kZyMc(u jxv8nOAo~JaƈG LY] Ҏ̋'U8GR\5Mg$ʌ=ă!k(HS[7XŧDGI0@Hsm]V( \]t&"7us8mȇMd[{-%] uxix*Ƽ;ֵ J^lA,,] <xL!8"FH0\ot CRu!HZ9q|.6!D)Fq;ra1Op>VKB2H%#0z4fR=)`}p{3V)gAyX4ǁtuD /Droro"G$"UNI4O3MKCE R={?UW/|X֡$?Dm Pu#4$;C,!Yllki\F#[q%T&ybàglJ'J80Q)}6͕}5=MBκlf=>pNGRM,U vh  LD7,۸TR,>Er؞)SL `_oCw_U#rպ,U;#ϝOI/p IL=_}Y'福> s04زwU6K{ao])1Z ޱk^օ .O,C_6`. &;>kG% WHjQLJsxfa S*B18pm|^IZZƫW5Ku9ٽ'֚J rQ3[?=C[*qNb/NGt)m1H[& 8RB {rs*t)E cX"pzUM{x$F<&ŪtX@ b-2羔.ё*]>IgdF-ް&߰H{Mܸ*[?Uezb49$b&6 `he3"Qecm:mIAl_A^%Kyw̌X,o[X93-h⬼GI iI~FEmɲ58{&4RW/ 9yniC>&8K[xǾi-ktB;}iNÂ($LaؖQJs*kaBt|$#Kli:T:p&b]ASDfmԠ3nd9hی::vY+HӹaEr~[&6TuXIhac¤B!lD dmw((DžA,Cʔ bx@6dTorIބ`yЙM/MƉӵE]TD+7b4)CRE$4u{& sd' D T )\ہS%tlF !sd:lF~EሇYf]gK0 oe[^+!:u]OR0X4~@]T ^T} @T~ QU(_\ML϶;ǟ4&Z)3nYj,>yEinSG6W0B_TZ_Z,>,B"Y릶c? tOh^ŠO6XszBG_7U cgF]PSI#ͺW3ȁH8$ir*r[IdM?cZ0Ll1Cd('t ޖ_?~HGNر7(jZY"]f aW~qWrum!z(,Zq/mB56 #^aT? dSʹ3G,w|Xqpm˵l CM'peF^z%&7DGY݀h>&Ll)zZӘY u!"/N Yќ3 0O՞\N1%ߑzrm~,QP306wj_-LfaN|8#O$?Jk0֢pE/qG'elֵNjȟ?L#3-~ ОP6THڪHZ/-J9AOnRJ]2n%f-VXܸwU5!X60qw4:pVfeq:ypt7vRUo1g9pI.JqNqG?UÊY˦/r{d•.+RT r3Fz[MJStLkJR||fޭ1;cl:JL49Qv!)CPymA&㢧Pqi ~,.0~߸&(%,O22l7>˽X#-RүTK:MUD͏aF=dzjkCFxŞZ[vxK2Ʀy[vڍ&= M /٫SOϐ94ڍ)ߡF$!/iV*< PB~}CiɂJnE:;{2c**~YxZ6.=Hxds-cAgD DV}3ݏ5cd^mǐY2ivwOfa+S=@ l3͟CAY6]R5=5#7(f^[f6=l Yfڙ1g7\0vAxFXDIڞm\vt/f2WsLdO/~/ Dd0 js+'DX/'G)qO͐/GأͲ ql'y)tnOc'[Xm"ȶ-\FWNE}8 9~֘WԶ]=PALD@BC]5קnDXQM,lwfN7Qe[GD͜5r|؉®C;)EgQ'LVϾDdNл;FB#yb9϶o؂{=ofh$-$jVyq/w98b AEl\Bt|?O6UDŽ^Fu l2 &!*R/,ğ,g2&#LP0#(ݲFpEcU,Ȑ oBqdU홪/X0ܮ٘EWtXgMN@VM&iǬjCg8ʀ 8Ɗ3{):|uw9VƢ2.Śɂ5ɢB!ē-p#؆HKAiA'iݏf*&Q.x jҘ[Ew9Rߕ8^:LWhFs)L TM@Zkc? f#z8\,&=CmG\"Cn Ն[xi.?QEs%Bъ7B( ⒥,"<T2F932JRJmFCr۞i>Aٳ&29$ZJ#$W 4530Ĉ+ȡL E*r~ib@(noM|V<݊If#>;])70_9tDf^Ћ75ڽcX:gF[bW1kʽz`5H5\'',p;8ߛQ Z +Lm/w7&nX`G眻GAܚ<(/tly%Aa5N魙x~%{jiLՄ]z08<8(qnUzFx0 RqtY;!2'i@bUs>*񨙩J*>e4bO@, -YRĔsds2D(j5Y,oYpuHV‰`o(aWAwEA! ֔%].v=3q^B[ps0|qQ ۬Hw1i{UQ-[>8Y 8Bc@d uq7czL(ɯrT Djvmi>ekYl/3~ΪӐEŨ5$ M~-$Dj2_q6ɺ\e2xdF4>i8SܤǯjqR%l +hp i{ptQkt3@! ;;26mCd anTt㳒8פ3d5g 8(1*{?yNHcw 1*j ;j\T[X!rQiȔY+?@'Xv^\ڟ|fk n>~`{vXnqpPـ4Wn _!r::{-=a4-2m߾ )^3b/_IP =?r. +Z^iE:mB~nwWP4O}gՉ9кc^vqg"(b^V3$W!5a<9XG4"$K4}μWmul]QΝ 1=S gOTϦZ>% cVDai_#G@ vЂ8$D[&({w|@>ה:y"69,gXty x<8ZU: t s7ީdU]M¬a;Ke͎xR #v_AySnH?VZ"#ϸDVh8WLk'aVvP[t!Ɨ&rRaF^ӑ*Qu୕f2g~F9ֆ"1yWXq/g~z|ؘJyAh9MŚwO _Ȇ[z.Mlu;,W^@ƱhB^8)[5b"aA E?eS-@~!'rzrԖB#slgi;#$! w[WÑ 9Eb`(5>";滯&⢳kȱ>J3'G;U5g f\Y#]XEbv E, >nIAQS,aպ;e>lȱ{U- ,y]< *\ґ8HUO{z"ܿnj)SGPI!1-(4G}#sq6shA⺾tN靓n:QTm̓BZ2f36L`jmlwHnTL<]s[SM\p{(c cO\]xhϵL E\ asFz;X!)A+SD;2kLm&f>\wvG1IҕY5Q,TO|%[>pfi цM9苜?/w-3ZɂlIuAa6&~X﮹smSI !J}|pJ·?{Nu|u؇ҊnBY@DS7My9Me1#dTt狅AF۠zN14o?=/I1~"*Z4-*< #}xnc "EYO/#nj EbPn(r}K+Stt3TF@$@_EUGoRlO-!M4~#X2Dž%9\?I4VRnaMt6,7-CN [Jw0c.k#LN刕ZΎV܄L%+/ X2i̋JG D&sOQQ%_WE&C28RRC[f?I<'ZwnQvm;JB98_ӱܐ2^wKJhd: |$t΢⍪`4ެ>k<[`<s}fqhJ< && jpDr=xNn&P_x`We%25s'ǝe@]1wDtI|5)Kjok0 ʘXG^)Tŵ"]XQP4X?zlj$EK+Okyhxf6X/Pn^ps|dY$+(V9M0g%z <:%N'5}`PN3giY4:Φp1zW*S=Y},f\><:#ɗg-X',ML,vf6Z;7j^zh\ HϺVǕnO*i;x5!_W ~RK6[y@m=ԏ5%JVJJCkU`/h;q裊(ЫWpnKncq? SWk{ jl?gG8fVSPs}%?1yd~r\#{ǀpChJ|`kj-kߴ3⁥Gwaа70"ExY,Upb}Ŀ(x77f~ |pG TFI/h@.d*ZҦ/`Ϯd#BD.OA AZk&6=pk'zgZCDZm%3+,DZ{ ۘ-zJ=lu-peM=ܡK 73-8?t8ɐT󏛧?gOxJtC4bZ-\+[MN { $n86爷KvjJy$tG-P2uYI_T>.f{хM{n0]6{G8up["S %)4 𝒽z$Ro4nC01֯]$?cg䖰n#?[g1tҔi\h+DFU} +2ܦ~vMǜ..tB&*/+wZ5-lL oa@jP6؎ T>Zdݐ~W P'| B {9=,sj1c ߰r]rgRʢ@TpO 3>x{j =I9m:UVt{^}KFt2Pj϶ERԍ&Msӯ& RxdD`0"@ȖJ8{ֱb XKgϣ;lFj.*dt_.rW3p0f81.O=$+,/uoגVV~A} mHBbyF.=7IO}I9[6!' # K;L$;ca?1jQ1) 0,g}宎c@ zHVl-Qv$_]3hAph\P6~q*q \C[l1ӾκĕHnZC&l܀BWglH K^$ IT|,w<=g f{kU.|O{m{M!QNpҜ+" U-8deKLb lP}Hu6]u6{cX@$ -҃qW[hgERC?kMXRZ#&nzIT&E (~Q`/Y&}, lख]RT{]B~ x1$YeXPD#D-;n |OEUfI$-kOiաe 6B"D͟{Bhz g%B?hJQvv`{a=W*Tm. MTNa LUяs=%[=xTC0- {k.r_&ո*)rQ8HƮKfiS,VD(~ڣQ=c5r6Q( r&mRc^Dʩ,u bf*5PgC9g<::rw7ENe'yQPa:JiēׯqMtXE_?(I#6W=ňDvqxj=XirKATN^6!t>`9b9V_#Whe3\2I@<1 UXa=XWTFhN($D]7.+Q~DZ&iC> Gdذ {Nu&;A!(Rr}Cv׺.GC)>tkM ? b0!sOYswC!×7|,ac"[]*(`pW>!bek9ׅEP,Q_ 9᷼8AYʃl@}E/4}X-sR|UH$|X #Zv PդIs6;OWh ,ZiT2 ̒i 0lOi$:XyO @=` $M A<ٟ3$-D%btI`t7fkvzorHɵ6Ő'xyC^ܨJWGRdwAÞJXVllN"6hT(ݪX(k}G]uMJQYV%4)}3ćyRr C{ıڲW/<ӯ'*-X,Z(B)+r*2AyVf`D\l(`rhL C0b[*3uo!zm?kDPN~~7by *MX>Pc,b$ 4JP39Tw 4"27\t.*[K-[ɨvGwEH!2:Qϧ|W8*'bnam~E`xPԳn! i8$`‡=mGr|?ѕ@^rO|8L81m܍- HR# EKI ᴚI=dFڜ \QgQSLM̐e{_ /bU-i"LT{]JO:?xPѱ[a17nCP(/6`!~HEj$p72X#&]@шЏJ`0hŴѸVqLQ~O+/ 3G1'Q0$ʳA NaIK{2uS۪~B2\Cݤ}hJq "~{A_Ѡ &u5e-O8ȝ CbtW)>t`dZhTW tJKHWW'S)0AJ=Z#r/ u]{RF5CD }VQPΫ@r| ȝ0voT$%iĶ% 054y̓˺~dJDQQɌ6vذx`Sz=u<_2/%eR?nI{aߐ!Nz+v*ޞ0q!P3_u,Of ً]EED5lly8X%OjXg!VXkI&h}*Ʌ综-`<K{]^TM6P]:ESBw'YzGX36:\1^3Ae0ƟWxpt iigX5zl5<0AT.}CK$#n/: FqӉYS& Ir'PQ%M;Wp d,9܆?4)P!EeSs)|$;:p]_vDO Nddq3ъ6Ͽ8a9Y< s\옩}d@Ѵ/ ]# " sspE%Hx 96f@7Of6+ƵFSk#a0e"WK]D?*mꀖGn۲8HArpUgI\=JՀocJj,j\Y9ƧW@%:,/\>n[5͊YT%,Ge!C)ZUw:%7{G߸ZPh'lMj>@H(⍂7l?ek+10,,&Av1f(&LFܓ?قY%D+frzv|S@{_YNd 8_#}v0Gp|Ǒ_hsiUB'=skb\7,"7*PJ*,o?uw;uxO"g*{vdW]+x@jXeQt *ٺ!SɎ+rR9(?0eC5MwFd -x@\^|8IZA8ͱO-+s'ss$/tdTy댛&1\-iO;>ύj:$__,ZZE˾POf@ IZlY$R' (\PoM8QڑjHpxvāt4q FA]Rȯ<$vlp(w? ԟ{^rx&$B،j\Y`H6V ~a OFc)@~JAQ"0#H"pBT>`0q}a-s(ڣˠdq,z35U2c :-m1iPJ(ЈbnL gCpO+8Tmz)2|j,7p9zEs9@@!)3"+` ߪ Dq"^O4 W$F~[B/*e[>8G,P9K2MvR|Qt{^_8$݆Yc-5*XriƕP IAsR '6SGZ>VN-WlCOI߿0ғӬ9.f( h"jzTBmisT.iLv^8z(ڌYW+[qC,~f/|%nd|9rx H:cǘSGXD-k,a qUq+닠+NS%2x)]ߟ 3-Y^$P=Nb3wg9@9x#ć ûRm'ّ"ꏣ<}fcD4hV &^CY-t!]HhE /tw) [ ][ÚQdy5+z`+=f+|.g` q&(@(A[tCN!pBIa"j w0|M w8ӹ<Ӗġ ׿^Ç"Èzlk[~5纾.{ L/ wҼ,ӒHa_ػqg(" !9 *3],E9r&d"0Z?cNz{^A,rS+lU\u`nOhf~EB2-b %m\wz.OJJ);2kuj,BL9*u=x32+I$\!c<Mt!D\?I1Q$6q^ߟhuu 8-¼$& ^ c۸ XdEFa#R|u`T g/x+,Aa >J[}IUIyCރ0g 02J2yNjc-&d|0{wH u.mش` +>`?oklPǺj72%A+9{vbٷ@@O Kc#~ rx "ƂFVΣb0wףr ?H KyjKfAx1oARj8z7T'u&EVZ{3IMѰS)Bӂ,>(*} ^Q D7`\p=.L 8#3" 7fL/S8BG+S`v%DwD9~A9J`4S꘰RBT"CJ 5O(P/SLu Ϸ(Ք?31Oмq?f{[Ag^Lq66z.m쭶 YNVlbuBmuK:׳6 e{1snѣ/q;tsɆSoaUa;TkfC427 %{$ՓkRuwNa|bNd[d3SZC N1-y_?W#Jל#jc}> -jC/z 5 vpKPa68 zfdhe@HN/!NڕkO߰{AWJӤ{Pl^sA(t'h@YO#xejْpku ŧ0a[DE/#@9H iw+nu_;/Q a86P޵D6P 6kA ׷]|=>܈@^dqcDk MAhVl=FkZѧK|߫`eAlbspgU`nlx<__óZ=휱qϐ7%2q`e|7Fy!P0Rfd{ЉFrf{(½ pQ6q̵\ <%$kVY."5?4ۉ2$=ZS&wPgNq=?߉ky./_.Z &UO ϭܚSOUOp0S&Z[pL8x?_UD橔rE tEvz`{5N$q)[tb!$Eu1fU/+?Q`i%= 4sͥuȔ] Y{]8{r&'9H=`cpP['wMؽ|@;fu~We**>et)1dG]>S:C4K'n*pO?m@DM|ɰէ?̚Vm3\z˕gٿU,-g']eBeswpx؆cI:;+`隤-dW݇`.h g7^qɡ֌ݫFFDMTd`X>t*c|SLW' d}µAN:5V\tړ3mV;B#kFM$_x17)uj]xh([`XVr KQTǽ?NYN6Q q7rE{S%p 6zB!P,トz3ONdiq5vxuLP EE pv` ^șq*q+r+z'Nv%#."To5' x|D7-j15+2B[~[$k8*?-/OJC*'e\-%g2/OuB,b!n'bPn㈹Tp^jS1z #Xq Th uPv26iKlϚ[!ID-aU%gtY>A.ώ.3|68cvIFt^ VxA xD3a(˓c5~ Zd%R.H]Xo)HGИafo Jg2s)m 9BlѤOI1<̌C׻.2rJ(4|.R7B1x牙1҅ӄ(|rV߶djrmΝ+5y(F_ /u[FzPa᝱M8 $U:cT+n{Mz>mhkM.8 d9o81pfuo7lAs[_7 w0Fng,&2tI-C']a %ӋKCE'5?ңMZz"[f%Fw3,ޚF y[,I |M6~K5ӘCjmC]>q&;?X)aY/7Bl'ޫOXjY#|{?p o§ J}~d #ߨXvr.xQ!/` `n$솔 sdą?Z)@"N11GnƆ*~j[jD]=’Af꧲k??$ ҕP 9oBB/;nsZ?R':Fr9beڌ/3ӇJf0HÜÓ}L$6,{ٹ[KBkuEWo9a{yוd Nw60g8itƭ5[))8jq WV4'IaJ b]B"S )idme\?Z *2 Hqp X~|Y+mZN}X2j#L{Ol Ek@r&؇aJI4ͪZ('4 ( $ŗrU[8^E &tG2Qs%1@.-F $aM$: jT,wv_ >b:Yeoo]8{G 5r(3.0D|?GPݡorZwQ[a" iIwCA:<ê;OBkF>~Sf"^N}W~m !V<[d%.G@ji+fnFj( {z6%kD~O>y3mY1\k-{ h#A!;ޛ(LŪ3図4\u \AWuM %^Ym7Q#"6'HwhK_i=rnr5FkN|%W] 2oߵ-Ս?)wt|>o}Janm]F\lC$zۨ]K^ob5IPp ]R]sRw]z]+DG:9aiZp5G Σ2 *=AҰZW #I],5%(V%޹$>ݩWّS7* f3 ]s>xsu R-ܠ"x[F>ۮo&JF6b2Z8sX>#Z' E#쮂c|Ƌmy}CHf?ia*d_tAЪmԍl/"]/e"VƭMxe.okYe*qy'L}vvOo 4JԠ-Pׅ@m09el&Z;Nu4="BE%Tdގ;,^BrbdEP@2=jU_juv|(w~ӗJne ]4؋ c 4e+H#æ 3lH(Fe A~ # WsS25b0@+܅ԠAhK_ M@qbz~؁sdja%^9}nt֟DO7A@>"!+Z:U2(f;1;@5np[Uէx}AyfJ?XǕm6t噕(^`n 򖁇?l/#`r;1w#\r8_7r ]tހFAޱ&e(VPclBƭP~S RpnAo,mV@u|EU.`ˆb4'̷8$Qo<ђ]C' "ų!y2-&rnpGtWD; DGW+/Lf .̊\A'q$r3V#z4uSUF91#yq+PΕ8 Q'3;h |׍NN@ǂ@Pc Z#Gd0<"G#ɽϹ\5.׈m|1JZ]lr#T`i-`ƖB>_rTߩZjDS7YOW A\{bXJ kX`@incœ6'G[4ړ$f1 h]37SNjK1r4?F#I9ҕNwbT`4\xC:<9f;9A㠬X~$̅R|NT>l|^&Vym4 k\R7qpgg,:wpHw)TY.U#zeJJRiֆFfM)*^F ))|@>I]ق\|V":9m]1Th}A}b'\ R](*лS8Zb$p59e'{Um@S(Hyp+36Jv6Ȩ8Wjnu2[:6ޖMڲuh{ɿ$|GZ7r`O18 ˞U`71υK3/L}Sw@I#˵ u ^Y|30|ǣ5IS XdGJoS]?XǕyjYe2ciݰEJVz S]jV]KcRm/ّ0j9y'Ǡ#F9KcǃZ6Ic:0j\]r^;e_A*/U*vxbv~Or@"$Lz{3"Ӏ?EK3S1h#PV0U,-Φ `Н@:>ޮND|,pZcGB ] rѮ$nz <ƷnzyCXSj_ w @rDpr!º4{9f~>ךc;KvcZ;dx%̍ϔȯ,^KLpԈCLgUMMMOtcD_D}#uw7N}LXP֦2$ղ^7[lI}?F1M;9AA$6!j%:[C@Y\сaܿ\3 wWRۗ~hmg0O¸;瑾šN<-6}oc8X~#GOoE3PӸQH /eLi>;B;HVY&]Ze*pp?cdxu_Ԉ?Ӣn֊K1HoPyG} !1R ":/2%2N4>\M #B,?e),@Z$q;K!f3+^::fB6U7nY]ʑ'x:H &a낼&Q`R JWo3zֹ^VDԉ%(UimA r.rc[ $aJiFBkOSQ!b˽sihȊ7s+ we6a3!Y2WB3RDEգߪ[| uv>_诠z.wx@}d-Q 3N&@-^{4HJ>5HͶC7Ֆ0m#+aE, pRMh!QݫܥFJ ˘p? rڸ?GHnPnuب0vl'ҮF-{DeSPD!^ub!U 騢O*; f|cz7y2)FKTՁ QLJ&Kwc,N1KdRɲζfFPE[c`ָ;< ͚Bf. 4 _/@#*k|cbc ?4dΚd?z)A Dn1+?h&2ңٌ=.~xB+Hv(IdX^"]g},!vi눤?8tz%yl|s0X9u9 ' Ӛ̸z\.*{FV EcQJ=Ϸ$^핦h{2;<Ӎ7Z;YMgo8t#2hd.̻y$Љ÷`H)+ 4ǠlMK5؈ Q je LUI.L\ Zx@7`-F#2_ 'ƶ]ںP 38d#l,&֤{@Dfz Ni閭MWMup>x0g̣ >;4Sdž4Zu{U=ES9|_XkoSMٓcV̦]|d5G1p yȤ}p vHD9lhF6mV!M ?Q7v}B'-?BnQ+ {\g-ʈ,7ivgDGHizA(kq׍cS\GqV-L 4<5U:^Xn7Tj!52lA.c -yޚ*Yگ7~q@Cׂ*׏#*yGMb&T+zbP=l!2MTѣ(MLb`3 /U7`qy;_v Ш=DV)pjC(^ dWhF1l(X@Ȕ8 zhW*|g&ų"n^ʅt]%#rԸʼ;I=oW XbF scW~7MىU3ibC<۳& 6^l*0 hmYOVԷ#׸ěXWir`7ήN)ȋ ;N@,JJgI?Jg%-yOo[26:g[Az̈́A~v,Mw5nQ7=jL_Q4|PNH"_JM:u /y Ub bnBsMEK[,LEfq4u0JPkc!^?[5] k5uO'9p=l: TK,m/[d$[Kʳ*rV:e)( 7]znmR@%42x߱#QgN>޳(thF#([H]- -ڑ죭`=cCR-!m7}h~Ue:$fU>}{ Xͻۣ.7ɔ R!0XޡPri&Ro6[6Iw>R]_c.dgf p]>̭Ѻ<him6K^Gi۫* yL>Wm^^?~Oͳhjha<- .HN3mu7%-ѷ8inMKS`*9 xp=jգ ɇ7#uAC^~踸ƿ.Ҟ')zUлp6TJ~<}N:\Cs聯)w)*l[h 1H/6x!;x&L6{O_g&:b/y9 !;@cxhyCu҂sD2:Y x\\͞~k.~[*d4[R:\UDˆX( 3y:*c ShApLz發5!Yߺ*/:m8%n7n hy72R946B.}=eYz\]QX%:[IB@خ{FJ:87EF. T%V{85b۳MkQ,I.eξ>Ae _m|AҧDзJY6R;͓F̧3k v{z:lHE:kZ! /oshVИx&aN_!(`Luyv^ws| q-B 5kpKw4951K$eCfu),[sy-yx2U܊a 4+r`~ gJg&Z˭yu ξоL\M/FX=wTfZ?H焛tR\ ֤as#R'pf/|vO{h]7 =2] /T|󊎒.˝J8~_DhȆC529-ʱKC&@^7tJ=Acd )_INĝquǕ8^8E)}H-Q\\Y"8(ySzFIPEB xYYI/)ήT~ciQPJ@J51^0q &8]oܫ2PUߧToM9HA 밙ŸM-3i$r£YXl.p/,H2@Vo,uA ׮Q^9'J-&   @ (gu=f ("dȌ"~One;y+?@KalǬ/a7UƨC* / AdR , ƨ㞣ISu~jv5 ԋw 10-Եȸz\㚌 XONg̡ԃAexuhK)1Sw[< :w(e @[`%֤ BR'81\.?=_&}h-ЌzVH@;aaeT{vLa#5tE^Hsм4mY8maE&Vbl^VxlS9 jCGҰ|O1P3G6b4{Ϥ8jr9/5 "lɃ/'UYS<RYGǒ /l7̈́+c*S<\2~ϴo6F:(m&r}(yһG 'FqY2 ?Ó8厄xj'x3?A$"A iĘK) ~]1]><[ݱ\=JhE͖)M^=j7Y{3f0qvGE7$,6#֓Z#WjѽbErpjmN gU|)rn\'tN;h4[` Z١r䤙KC61vjI!= Pǎe=#9e?vܭU yftg{ehv L۱>ZݓNs8Dz~<dionF ҟpm{}3&UmL{qߝiB9lUN,o&Jw:!0USfh8@iSu'D:|w&?C7 p.>BTd-blꁻU ,Xγۓ\b@`k5RySؾhR !1d NA&&؜F/kEeBůrE8SF6}K~%v'(C0@d+M!!uUQ7ePobÁdT 4-V;)Ñ鼁+@$~?wP]$}t'X/9|K)GX*~):bD:IؽZX՗u'^d߰[^W]BJ#, 5.E%Νپϥ7 Twdbms5DP2P .ICK`zߜ# wDLTMu 6nUɼdJim7,Ewx_[UAST= _zm[A׊ӟ"kD='(R23#?]znbno޻tgЧUU/c1:$M9Cد~gcO Ę]I q0MWs|!x%´ O)js>%`hmk}0#V{eQEj엵hE IjCzp>!QRX5,P5''RZ9;+;%FHuģ ^~fO4 QiӋ1xg|n2E7-Q"5k ߙ =/ǪmjQ}j I$EL"&c`=SHܕӼTB!>^$q?Wh"8vN%Wq z_i!D3|jJgDӴ(|mRrȽOcQ8 YKjX [vD<<\8z׿Jx2J!Ei{*% @9Hj5kCF^CRf$|S0ߒ,피+1'h,*EۖZ^yiLǡ"*V`ҵcT} =*Kڜ+.im="߁$:΋|pP,}K4ՑEcM9j6zwaqiEA,fE+1-9'tVM L MOYMR܁n1h;9c:`'J+K]zTe[4 Պ鄅pғ70٠L&/ѫ^v\i?,!qL&#$IIuS"vnj@csxEdފbT{E=?ݝnlx1ĥMƀѼ5q'JR<6)Nu'YּYO{@Caǯ{Sa>STŝ OB5_y^)y:eWݯi*o81qiw) 0N -S_a90ffY8Bp[ MTGcNY擇\f!nfdFO%V CylK<؉M5*zS?M9.wSd]#,хYw4c~76ڐX$Y@ml)%ǓZ\YšJ8S(s *OPO] K2%ҥ5N_,rX}i)TY=iNJ;'2X_zZvΗ8V~@~?V΃)##-u~p^HL?&).E~]hgVPd()JEG/'Fuͭ{g=G""XeuV۷NsoJ PǾ_g`phGN})9Bud]KMp.W([}HظjFޕ4*3݇8gZt(|*@j?P4yv|Dи+:;=_va7J!(Dn~Bq97' b@~p>BnCxJπ4X־4TglUMM(6A3#f{?Oyxg(`([%m709f)xYBa8+ /S$0{*w_Fy+p+eLO\>ҵ?ʘ%CjJBHiCΆ+LV[3HJŅҾ>VȒ[q Ns[(:Q(k̿٫|; XSiTd>RRqhS3۟@};Gpm!l;7͞*D0b?w R vR =bSm 8qwUr&sXT`ǣF$ d 6_hmr(έB$+j*Da)Q 0r=;)#pkG0,Ma~@/]d϶9 MWw P\bw-z5lߨPиe27nm_Muz;/~_! ݙ 8sl}1yJɪYId٫ PC4Kنq)qQSS6 G-.b8%Νjo۟ 1h4ZL;1VH5÷Hʳ|r#L4OQB <ׄ4RB"c [ &H&N ayT21`m+A]Dbd-/3dWO Xi5=~SY!53!,DĦ2^aoo=y{=HzqM ];=NhrB%ԴF̡x;Ҽ Q4r1=YhT*|hgȸfq32C#t {H?F{ׯ1l~ڛoK;z3/m5C%|5*vMN,Hć—G7g 1sƂFo\DhjEqN1mG+ <ۿi43|03ki% _psUFLpg{"ī" ;әj5"l._U@w=z \+*-aq{bJfHC)mQzgDƪm*`g&r/>o{˃בSucIL]2jc`TynɄohgYUۺYN[? \o l :%2:KWt&eHOߪ1EX^G?b(2W|{ȝ~"QORےQCN'/;0l,:6kj5Fu7H' }7|gLݧ/`T|}^'59FۼAk(z֝b#v{^(AX3Y!*Z:\wiu,6KFZAbTF /Mҿ`8lS)t΀Nn4b)SޓCSB<Z-[s޼)tE&q_gxYοP;q\~ z)K7t0-2xK@/,A#p- t-`$n:;UP r]O.y\; 7Nsx-Ja?ꜪEWa̴LŮH^NC"kh,eo~9N~WcHGϸ1zxY,Ld_) 7\B0t)bPiÌ %(L19#U&c8%lӫl?t7C,SYJ͘Irǰ+@1c9A2a;]x2vo[L Jրk uHi]Q f 0l€ w 3^nBbc ,ų/3?Uj"CQ*[Ҫ<ܿ!l,y)#Ntgf& "\ m٘o&T DP ːy6CFc⼗KI~xZ ܊ Agd!OA뒓+J --{&r β 㗗QSbbQz%ɖ2GeO@]Js`SZAwz9P{0@dK l:<: 1@ެ XldJc-(!3Ѵ|o*.$۞F{? HQX.!^yz7 'np$(wVExۏcZ[_{We 8W.;'OԆ0{} 7n[$lU5`t\N#_NksrMG*4AGP$g=2ĄUsYnWRC2eVB sA֔ }363nR4uY\+'ZNqU" 6YAT1e1W0i>=P6vI3f[g 5X5+-h<4ޠz =_~N5_So)(Rq$89@8[螜:RP&@dɪ۲CűILCh:eRrY$NBS|xv%!JΟ;v{AaͅJm)]_3թLp1_e;˖## 􇛜=k~T"3GHUMj_Ji/)Y7goh\9U!6_ ?T$<mJ m\/õ<1j^'@%,s8m+( i\gёAhI;F:ت%I2;>3xf VCޠO5rC֡tsm-\M*e4z19 @I!ZrUUCז5k =s(rY*Tg:4gO4ܰQߧ =+gybz@P/|0X}| qUJ+xBónhI>8Gy4@- @ EXı/bG;yxdT%謍Ђ Dѧ]خzM;!B9qOqjOXz?4W 4;N1p`ã촣 9238 Dd#t|5! 3Ij|QI(RsӣF*LP2;h?J0&lᝒR$bn?m$]@->ʡiAxO7TdaS/*l{Cw\R!l~xSxz1R TQ!M)(Cd>/A8Tg/@/lXJ'=SsLHXC',"g!S_P  KMzzu7i?'Jߚͼ uj`6BAQ ԰mlFյ1P酯bFkl| 7f_"ܧj+3:TT קu@.8syc/)oI8ҩvW#:1 FJ\b'`֎cm.=u`]-2/}vFH8F )^tPnE[F:q "qdϺL"^%ULp6(n>a}1!NũiO|tG5r=th^`$t'e9 L f!2=}] PRxsf0ުA:;OwL]ww>x*f|eA5EiE^K Xr>8 2)Jרgxcd~  D%ݻhKf *C ΒpCP/q$pvr9\zc׍#z / Ώ1]cf{䖐EzԴفy'Ծ;1=MԻ ,4D0cHqJ E}K,j@ș$CT n=5NM_]5$35-AT{{>VK_&.3ȗ|e$Ud8+6!4fF+0 b]?PZ G41mPmP塶썯P]QW` K{0 oԛ٠R `׶R"%=,.>'Z.@C[>DzLB~S>3 &(U][nZ"뜿Ҋ+EOr a9ɫ!a|;.ꆄ4.?޹Ǻ~y pZ%֟ 跔tDlmD[ W2,iiSlx]E{+Aa]Sg͓Ԅ;.`04@qVn7mh_#v:6ޥKqy^>#BEу`[;xR@T>bݙy im_(yO3U/XU)!9%[:#mTa4k jD-,poW :Z#i`ϙCF֜'ѡrbeUIƐ<;l[sjA+ԟ`>r-gh\2 $.yՏRq(}T5^DS>%+KA,Qr~%Pngtʍap$X6k˔`ݖ'#y%MEϲ]q6v#xv4yr0 eI#mZ zV#-=cblH%lО|`8ޓ@IE S'T5;xw&‚ӽh`Y'+Cܔ'UPL}R22𘫝h1;}cHؐuBnL %0>TYNW&LaxP?1$૷=}ESx%~\fV]D!kSrZ!߇=^1*\B8[ b& y y6kO4s8oU.Ň^a('|i0 u0(']#Kd@"kU#v9 'rZv)83à cc7\tMn +oM,&?^mshV iHÜ*DkHohqп}ow;e%P%Ϊ@9{҉ Q`sES݌nL ;e=PXNs{+CܶBu] Z͗Ek{ xʘ?ⷆ<'n13-zڛ\\ciDla ƀ;Н/'=A܉1$.nޟ7g]XO 8DŠ^.·ŭt^لM._ܷYiS] n[جCCQck71,_OaStoy -85F{ ]Y#sn?񵈴 b1ג$q.艹6I_I[_Xd,!ޢd<שׂ/29ioaP-JUs{VƋH-{gRO>X6:PEXJ'Eb0?Ƹ%<@=r|^ 6b w $JOC|4I8]SGy <W0M‘]/0#f oa}gJ'׿maugx׌4Ѣ*UiP RgA\跟ʙo| [R\I<^ہV~ W ]К(ˁ B5 |Dg$ qѷ&NTDǯ0wBxK 05B)XC@]> +Z]:ZRJtX;_K.CKJ.fUEMRoT/)91ipRoLˇ`M7Oׅfi !Oӆa3wĿd^e߀Qing/Μ9db.TP[#eBSM %|_(1HT/䭿 Jspx_7;ː_]1iMEl;wMKIZeZt6ca&qã [##<8-mFn3w#LZ+?!Ǡ7C=u Tc$% 2oaaN $_A" gOd4ekfH w+nj!-H" I$=N,VLNgAe{)D)- Lt 3ݜ|1K82/&q\+?½c#qE4ooº^1L;dr/ ( M/{&'4$|p&dKBmsKG+*?ϡ2`hݜ{C)=*=(H ^Vi[<΍q_=F 84"88;PiתּkbNΡKa e#6Kf#^) KD$bdP&FMϵm쓪Cq -̜pTϋ%Ҋ(S7gBYTZg뮂>4UԥWLSB`!36T}B@ \!z %:4HzhKHϽ>hSE9C :.6QD"YQD-?Nķb^gz./H?j Z:0B?(,vBhC[ ~gVz.ecܶ`^mɨ#јȁ5ooZ._ij o(dHxMfwHXj=RY 4x+*u P+1}#a,U]+2>IN]X&9if{}kֿ'LJ-0W1x"nLj{fnzFCϳ^"bei;3Q4] Y. }g`ᢷ V:һwLtX/`6!Y]+D[fdWi^h'b9& rw/|/Y[aD)e=zR*l^` HtA؃z^aYIp>nz-T9@zfdzHf V '`5$0o{FaC# eVŞn^C__xs4` @Nl7jOaEJ3؍±nęC}0,".D|Q}XCc̢zs<V] Um.XVɱ .e Ս5!DC[J*UgA5џ*HK H"o-8;1S' m +:@ݦV;g#EB6tLbp:0E&[kvQkΤzTNc2g)ݗwqឿ [ &й\|MCs vN 6R*zs?@~L}^ +_"|BpJ[+e,'`/kWV@ g}N}D8sޯހE(hQ5)^ saJHg * o]ʝ .8;=%wBTGHp HC"u=:"en}Fk{G8+[$+mž}} փ6`ї *1%^cȢ4~}Lc֡ey9%_LÒ3wj%F$K윎5^%5%MֈI5Fxml4^mrjҺLUlUI2PTuKK: Q$O$ϡ mlٙNj߸@S 9*}"mdiߟl$eA, ȷK4? !#UژfeSf2եx%6 `&m0(2T]t @o"Fi$?1lx2s~ GKBx\I?-S^*Czx*z4|Rݖ!& !{+$,T7@}pfr{gq.m(H{`$UxLhrG=;}u}h@鋧Ys uQ ۴TB"h3 (\LYxj_ j1y6Oq{/r&9[MPY ǪAA/fjiВFf o;YqUu@ X2%!u.fGQ=1 PkWVłvw{riOx_Bq1޽%y9=l+1 fyϲ!0 -^Ӿ|7j"~&?ӖosyJ[<SrͲf^O#lf9}Zo1̭,Ǚ]vBiAY@Ux#x bwBe}$$l-gb|(\OYzYț0AywNѳSt7i)yL?{A$蛜өD`aF= l7C/_06r"onBfRSV7Uv99_N [=n&50[twނe6?A;NU~}| c6_#;7W- Al Q{|m9j0_v#6>Հtkq~ծC4DZrn$Y/= ̏[Ű2%m1,wCذ.>3߻AS@T#` +wJ+P'FKJ ]%t4hSn-q&`U +iqa_jv). Xz-&hyNZv:A(J"ݖ a> !XIuM~˕l誗|::y3Emo Wf_On'SUnHhޘ4lUʔU))PL#2D3 ߀:+bP}Zm6bFR"T!vXj`\ `eڄ~ML}$PÀ+<nQ\!=YڠRIHH)_8lY1|:Ot.aB5q[\]FX YN雥LpiӔ<vhZ]Vq"pg}Fhڔ6q'9U U>`H/!~"J2*6x e̺VTZl 7bd/6 QU/i/Kr%p͙yw-u[XbhVAo>F* 0tAZnFΠnozK|(<\ ,N|c-sJ֮G4gdWPΩ"cl9d641sE7z3]"Q A2~(F.:!v׍^^eZ$kG Q:rg Y]_TC&&^uhZ"T~bXiҦE}1e3蕍ۆS)AyKFG^ݰV=7=aNĕTeU}K)ghr$q_V>|y/t,Rm mF >$]^Vm?/yӸaꕎj{tHLl= WMHXE$}xlQ!~ %#KN~uYN cm\߂9KԳGy5Ceb1/Y?8<$S+D-ɤ~b3'޲u1<*9 փgƽa߽$Mp[)JSq#k8+mF)Ȅ_̛pca.QFm @Zp㑝vY{C?12[mcLpV;z*QjYa V3~R?[엎J\9a6Dr(I:T)~ [h>>*KƦOOdSWd*`n +Q3IaQ:䣫RӢX^>!Wܢ:p EĮ3J 1p60gn [7L+F!v.؟XO_ 9YA XM~bC~ߑǭ?4\rݩ԰ :2Iv$qb {@`3їFJj\),KM^eyA=l=pL`Z)tIU1JQ , KVS" YBѐ%eE+rd!.?ݘTI.%te$.BTcJ2-I静xY=M4 Fc.̯ghoJģӓletb lu!u!]D:asyϢqԅYR8GpP$AJj1'ӄy+dsT> #~m5kPz %LDbH%~i3 ̲^S.P8z#5Q̶4G$ R2i,|XY!JK{xr/ޫG{0q\ι pM|u7S~ "t`Ԃ }=?WSaL[xsH ]:B2ۼ_*)uݮ0Npd9*NTշ,d݁,HEs V6_GA~2R8l iL޻į:k[iA4hB`s CV.IA љaxPW2lZUmQa}hMx C]HOv_!LlOS|!re܋SgF -5O&CpJf̥bc:gun⯏P!5I5*.:78ڳG_D@nL5i;!xfek%20n#t]&zeCaJ9< J '5PϜS@TԼ!^N^ rβ<잱X;= 8 {]=ۼnl7Bƪͨ utBI3Mϔ :D ıZ&H0LWjNQξeB5%9a~hFkja2|+ERոrMA>Le0>#@w`R|]R; u7L3ضe|W<Œ5ɜ̲ZY<[48E$)G3|ũvtE·iF<ʁzbaK~hmUVq f`D'5xo<;$xnFdrT}P-K`4]`393k/#*uK;3a3ngF2(6yV`nE>V &EQl͋!\bpJ:5s A,Icj% $(-iNSsC.&-Qƥs/qc1=šRO6pxẏqҏ@GWga+ޛ"A}VL1 ERm+B"wL"YP=dSwT:lO% BDmb8kӼ,#P#HM%D)48;jSCfaGTw\M$34U 6̮E0bEl8 ЍXM$]4R:3n\TS(*%~eWk֪"5,e\4mnc3sȌ69Q'bDceŎ. 39"tXzG g钯Aih`4msVf.$e2+4^ z-zȰ^/ƞR7OhE2]u'h(#r.Ǜ(Y5RdDn%qyP3}Hj-{tJr>F! Bc0*De [G ~@C(Qv~6? D$0L\cyCXQа_A.MZn&6h*놅͞L(;7zϮ*Ŋ2| 119[!GQM/c }Y傇0Ē#GKFBkZҽxYh(׶8ee© fȘȈZi!:uto#>+^dԢ^z3PDEƐ:4z|eB{^̙(?lDj ʜr^fFS[R-~ɁtY :I*Cs8:ŰӒPdy7AV+)r{{9A;s~ S=bz;芶);ɣ;Hnb3 p(M,̓9 #<65N|s&``:^EK~Wm[#y]ĜNn NNޔˢDNfo Dx@"atGqdVF참MJ09I#PI沞MBq~=gFX97Y2CI &+ʄTOPY- {EExbjy1[r'7s\4ݶe+N(YӍ_-]k!$O;~kb;d 6` 6G#Jw{Tݯh22Fa.X$<|ia[<4BrPQчhAq"gϚcm 0j(U+2X)P|C2$_ӣJx>ʏ8ysH%Ϸ3a{.yl!PVi:UtKR}Wq@t2RcN`3ۿ(PE9#hPV&.}VFTlADMk]/gCMSnƮ>W?(^w1g1F7Lp|.lDy[ϯOO+A@peȪˬImK&]8QεR8Ս"!Pg =P?@*|- ~__׊Mݣ^2ĈY 5`߷g:QOBy6q% -$0+ /ͳCpO2\OHzO?FE*@x= 4䐲+}9Gܦ)8t-$?p=z2E@.{{2hx'dwl'^Nᴂ0߿͆fwQ.Bmjdh$qX9PI}}o47uUӉc_w.?;SV8,hc8o}΅*)۾jx(S3߁m~'N 84*0M~=ޡi ݰМZY#QLZ5iv0u-Q*9 [ 1u$T3D(EUKsnl :]}1,"?%cI2W?l\|ufHoYJ7֖ $}/'͇'^ܜ~0"xN 3 Aৗ!QQ@E#™AO1B+|NB;'" /.GrM.@Nځ' ҪTo(½<3BoB&u,uYfW`=1I=WqlBWvm`*ݕ`+oP9?Pm'F Y7AE10ɗR>r#d]]7dAbȞhMN6]uvӘOA/>04K<-޹~to[?BENj-Zg ZHM?GI8~s ث팴faetv +u2WeJCΒ:&F/%b=,]l*p=q y,G7)Gƒ*?1Mo ,߯1+ 97ڪ3 ȫԯp +_1`UN6Ffv(3 M+u&KG*v钢X׼>&^:)VX16!(cLMbS[$Sp$lј59=v@X_*B@r֬ zpQܜYm޺?7#C]eCvrw,v6NM1FC(H5::KؒTa١$W}׭da`fyW ?3 !D䇌U(~v"o{*n^KusLտ Yf&ϗ臉Y{y>$*sGBe$AQ+bUY~УK3=>#Q|6=PlT[nڗ܍#{\n\6Zp/%]baݭcf0FcI fR0VůC',kx2aTg$n8Co9ixrvE+V=\R@9bOk!B ~ax/4GiH 3 GuJ,Uׯ)HTpԃHN\w D3L'Qqh˜z)Ⱦp믹Cj{IzC  1a+܊M5QML zsk @ZvxgP]C6Df VMicH!Su& =߁Ԉ5d=¦uprEy81e>8YKD.p Z7~FdKNE-z&x)kZdG=(A;:Bfp%m3{dw2y US?tHJxޚ(k8Ȓ7hwexSf4{<2IU ~ٌ/IYT ֯>te3mZTc:FtGN.,Y`s"g! >~|! ̬9Ӭ6 L-r˥Fk6;^yrT}qp<9 rX]fElWyewi !yaꋄ mVgDjچ)r/ɝg5.Osv_PG +WC(vjp@1].3mh{>2@*4*cx$Y(:Y_p>`*ݴ\YjsBpMLDxY*T@S)Um;[QŚ6$/8ün!Q:o TneHKZ1p/c=^b uihUJ0VKӥƈD"%~, ]i6G3N^ EWsZq%W͍(۬Һ^TBX\Py8ݾqSy&=;\EeK;JcanK[@nX/\~]W 0͸~)kZCYA<;lJ*;:nE6?*sQg~%D#867Hqx`v!W iy:>_폵rH]TYn-&Uh2'[QuBx׀x7š#M7;/?`vJX"67_c(-R•EI/1Es'GYOz+~Z|Uaonxoz);wxjkKm;0i.e V.Ao@ku"?b KU\氢R&l_̀Rpۏ 9WzZOȡQ\bEO./^hY0wEP9^cl;lxW`!Rr2rg%Y^TH}r'bw|JT ^> ,7Km RbtW gU4n Oڛ@w#~1+@K}*M\,t选+˯ 21ͯ(\-[B뽡Fsz 3i/T/[Glצ[uf`|"ۀN E,MߍFwfz RwU[%ٌH:VwJo&ߡC#膼Kg1%;(V uO@J>Ml߮'ǣF{͹Bs8o}.|໶>{[X%nnmV2IՒJEթf1b̻u1"@wqZK?F8qn G]UC_%҄0KD4wүO"ƚ[7VrjsR1شWbcbsIx]0F,eAΔ5C qSk5Udx2U ':)"G=ϡQN,'xbC8*\`?{us cT ܧBٟ00[/tYPK4NS8j39%ЫlTFze'Q+ A3ҮmMB1SxwLvd>x9L\'= j[eյ$N\2V!F'؋* RŃGL{(|8˝ }9s#+K\LsQ[R|.$alrXT P<0ijīC\( c %os >w8S-B²dÀ혧9 TY5j <3p~{xkwRzcw:]IvW2yqmGOVHxwx]maMe@#zΦ13N s 4b?ʑke*8(-<, .l~;{qƿ>b+ Z cìCᧁnTll))h`$)lz`l$ghef͉9N+.E-Tc(>Q3R!{__,@nH |R\i"kdJ̭u=Gx I<rY7ꯉցN>%8ITcv/;T2'YqSٸ<4Iė|P Mlb HشOHN=['x <-_8NBaU/-Cy-L>[.$̤/d\7d9œw#j"1m]\'xf0V@X(DI~xe[x}gKj,tz7YfSꎽM`y7jݚ`LXbҝj?M0$%?2ȶ:D{짠s n]0>5KrBN8RA Nu |'€-/#TA Yym_5;jWU̿ScH6ET\za38(UClQr0hs[Ӷp3wuj2ruɦ_q͝Hih\LFd-K8^}{h}Ǡ b^o1)NȅmV1ʇi>ZюX@s ϋIQ'e Γڬ)UnCv'|W.;)x/J|r.7dpKZW{o]vO;N +/SZTxRe(}n?c7$/R ˑJz(GLnr\F^m0;|InG{=?ﵞߺXdqkLZB~4Yʀ%5ݸ dYE ײMY,̫cz Ҳ<+֤w/W}*G1v+ǰ]8af{'YKnu44Xj?8IRdju`Dt​Ȟ~}Q⃖аa Ċ\""&օNbE2vKNzDtMCZ%ح_:w5|PeEZΒ>LI LQ~WŎ|OyΤ$SBG'|\À\_XSlJyu?1fے# CB6 cm:N_Ά أ-=:&;Dv8ȽZbU?@FoZx#=A͒dozm0&x2<_Q$R*M[R?ԌAr.;;sbr|*G\8˟O^}(m;:~u=M]ˮڨ"A,jo؈?OO+!߬2atJLr31Xv.zB=b;yezjn0ݚ^BRnPf6ܚ~I_T z>(Mu z>O.-fD-V $vא&2Tvun?rg޳eo$EcC*fKZ͟ zNNN`zk$rEP#lYbKChmӦ69~@V;ecb,ѭ)|[ˎ GU*R kaER+oZu߬۱7{s$kB!B}R*¡+涎ɚ1j4Л;, /,,I{?#"ҿ a[[Oկ `!<Љqfͧ7d5ޱܡI~͖JKꚝ/uy96Ƚ zSxgAiZ/ p L̰ F_ܞUCi٦ONiU_UOU6&gB\EJ)E%hތ`X-Iwhv֑[nP)p\Q+ݲ ?Cjr1[ZFPK` }!J: {u@Zm#ۜ(sbv-(3`՘T&ᕘbO9WdUn PߚQV8N[pbΝGO4,ҿ>Y.y"$#bF6ǶSR4-%F_8OxJBkas8q-ÐΰWKxS=Ȑ >Ľp]J_AngIc/\? {Nk{é靄 +$`A"͓UgD jnGM<(-}*hz V2!!7włn(.Ǚή|Y,|[_F[﹌ȃa=8&Wv F,So"6(<~|̜NIs%p0*?[",p5X)$]T#g E29?c SXr1d 7t8ّ=uIk$=M }Apnr 5F鯮bK ֏ʷݛ`qZ\>OMV61/V.]@iŸҴx7O6*Nɱ'E半=:f(qN{vcAElx0VD1%r%\=#NQ[D5Y1;Ogs hd/„P̻Ŷ3V'Irآ4-dug~#-IX#z[Pk@f n8ac.5>%NQDޡdRq+K26eS9UcGLtSD! I`WH"9KMW79L"k$JPi1̿g-(qBk;`|&48Ңy4XTqW+ Ɏ=m/k -WѯDrp5!xuRWw7*S=ܧF"b7>) 7)-() |H}@zpLj^ߌ_m?Дe䗉2O.:"J'2 F+t<ܥ2,KA V4xFj;46S?NbLi_ 62]&2ӎhs10dw K%W@D~ft eGKK=Dl96TtK6Vhh>6}KJ<n g-X3_?BkrD[ֹ( w95ŦǗN'#|B {,kt>1;4MyQMa$ S<^8Vךo|mN ;{oiqÙ^%VKԦ_db1SprBUM \=3uyb 3w݉Wʾ`Ss b71MmEepdž^A1ax쳛y~|ٖN%g>BPS 3#]dLn7D6SC45Ds^1>NeGT 2[5/("\>YZ$vz:hȪ|/=}$RۨdzW0Mv1K݅әi!25/5tFB#N2Ovi[ xM@%!͢"6w!1gKdK˕ESQVL8tK^_VQXo^S;zt;f/lo`"-z)4~/9ΐyT U>4ʦ&נxe좍^u'z.w &-cPgq#V+RL c(U4E*6ͱ$gsry r:oQRk~ G[{I˲Pn^Or֤SA?.b$:ЏA]{@]wW'e.²3w0/~D MgrqMk%G Hîn?\?, ) KӺq?:(0hHuJ((g 2XH'@ /NE}TW=n_q]-ې#aU63MlrsL=ވDZd'7zޱv>A.^F:Ui;[D ^wBLRаu>H]CJ07'/tF蓖hgH`#p`.H=:ܸO 3_2ԨK)i3ӢcGL۪q,A;9sMzz6/[ojZP?Aϼ6#pʝ#{ 4i>?ܚX9j׶,o) FļK6xhO&@ABTa"HB>^ )ūڸ=mn,-{]D'ogiKiQ]D HpGJMvb+cyBt?F%(#_l ORVe}SߴwE$$et(r) QmU?n-9c5<+b?:WF2t(Gz]*+dZ*_is]B>cJlb5c[\\do+j=_ps#^D謭.Oƒ]/8$aɋlۈDpIVXNd>H'>h5AyajzƲ*Bn+ӤA Ҍ?wo{>7uEۍQu^) Kx4q2!'!a'"h |{ğJjQ5$.X~a~qY!p )QwípmM3 }~.#זߕiu'{I}~' &V_@h~vh&?8m[ iyn"-.MhQ= wnY{=7#P=61NK컏Z]@6VXfcVfNBC B,ht`z3z^Ed #XzT! ^]IKw>F0܉4ӜC~~S2 ;Jڪ ~6}qеƝN7m)+a' b q_yJ)e^: :R5-hww~,>T *K<_3iw)n˦جCDGMzt:u0޺ ᄞKk9cb+ۣZ-BX+ijfFddbZۄs;a,HP9|L\tKEs2N-ެhvL$f|8o*!}ģ8JZKlQ6WSտ4r<~*xdZwINjr Q0(U :WX(ؓ8 ןSѐy-ζ_3< Ͻ bGx9x TlofEތ-s:F7j(x~)Tћ?sD>*-E˖$?ڠU%}Rm?};]Vge3uhKcXlĿpx21MiPGE܅f#s㱶qZ0csqKfc䝜=i&w iL $\PE'qPTA_DDƯ0PucTGM'o^hAXBM^U\fK*6aiGCcu}>tS4%O<MJtU,(!vm+ E.M$D9Iz -L.;#r#+YtɍJʯ.S|" ĦZ4I)ɅXk6~dY v('])X{k'Rڏd*&,=4:XzwkQvR?u3EZ5#t[x@&>q%KuZ=@|9uZ^VMP^\ӋwؽntMuK1C hp ׌`Q]ᅆFG>Lr:%&IQ81Qm F cRR`VD(Byv`tpj%|pHIvSl@Cw>儓X+Tz+h$޺4HXWZ "$ I¼ĨHޮwyh;PEBT"w/ww5w._Lb^[$뢻y_33>ACíS@[bS)UղTgNJ*]; j}GPe*K2÷_vd٘ޙ}R𤓔Hi\ceS[HK]D 6@),#_|r>sHL(u&t`\Hni{Ǩ{:>;1;c ~5 Ѣv7[5#R&R^ qn;Qa3 rsCL1R;A2k .SWPT 2*ϕ1g)DΆ'S8ml}U;u ,oR-kG?LiӢLХe< ɤw8n!nltkɀ~H.GM0me_p|IaãZO[3`;ʏ:4O &}f x 7EYW}ڎ]w[ W^;E!I~]V ;֠;`$hA!C|3'Nϴ;4tu MZ\ *'( w.e`h|*AZGB#"z. RNyj{4>D@[X*oGG292$N p`_hd{Cr_ !EC]^!8xE-n ch`B C,Z^uaM4IJ"5aO7M|3hᥲ%Nx1w5KɍZ^+6Κ ETٽ<궮x*|~g?sS蓳nCvR m=qb Ju~fy҆x ޾ʀ%+LX{dsEV$.>0Z6d bv{>b& ΁&l-`t7\y?>JEf.qı`XjL3\S$eT36x8ȼ( k;&:7卼Hְ߄@^gl|sPS a#@-b:߰/xs]qlj׵hEn;X?uIHQF-Ȗy)\k31cU!FuC(#u8S%|P*>-+f=&S!^/~dcϪz#G]Ӏ$(PjSPy=~pK6`+ǖ_ _U Hl-GF=Z.x;XNㆊ=*\MS:H5{2x<(=)zc*&GVũA@ZV 1[WI3OWHUjJתWk p׽a=` 9=gRX)1pMRdz0rU)S4fOC6}I͝,I-=j$ӐUF( h9"6i2?E|Pkg&ؑgDLM`9FQc@QiM1(n=]%5m75s@;F.9{#-`t3ںK?h) i1f'0\vJm6J I(--iߗbcםQABA>m9ZA07f(#%V%D&Ra[Zf )V5ٍL/dtG9ʋ᩟urO @{#?B@.-<صS3?`!@@:v~Y$D8-u"^]{`+Uj΋+!OmU.sby) #fPC?vH6w@PN0n]H/Q"p#9qق$ ecJQ<!n6f:9q$|"ޔDV< K1f55I֎ :pVJo c\8u>8@|&ܸ+3sa,E^}UfK &쀕.jfvY wK \9G=;S4 7mh]Tnv߯Ɏ92$$KgY9{5Iphl[zBLtګ˄>륤Zp]M,H"fx}[6jj;efſMװC|uYz~u!dϪm̀"bb3 򜳾>_i~0^\Y3I8DJ$ U*i4K@pPZl`2g>/0܃p-EJU4w<_.x0^> FЍJj=)lH5Csy^^u&DQTT?*2x"&b‘&'÷wkqt/nQbmHbmԆ[,A\q2XOMeK^ t&K5t7> <);< [a'|Y-oE`x2uƼ`SA1s @=^ۭܤ)If׬V WJs* 9NE>UT+lQk_*R\ E+:@9nrцvFXMV&5LڻbIdY£])Cu9YA^$sS/՞V1~ah?pCZʟZ$8= pܸ9v1u=Upc`CILcJ49۾"?n偎@$mϹH8A_uȓe_0͍y,-~ZM)rS ;M,U, Bھ1O+IN =L=aw 0݇muЏB, {n%NJD!{c:6ղ.F,i`0L/<]eT^IĜ2CGE1 JBe{-bN(ˡ 64Ƚ@ӚHU٢uL4$Vt&G`,wzTOi*.Wk,36H; JCz#71I4Ws$4Sԫ#h'uU.{As2j0l.rONO4J/d+N<6|9Gd | @}pLu8SWM>o$[7p 74Kc,Ό._ybU;ԗ̿ 8'Z!6դ`@ ?LJ7c; Bgt-/?kx~ɤ ,^PZs?Iq !A;nYIJ(=y ,nXmDsUn~kHpo"(3?"Tr8A1ͼ4uM,(ejjϯ]U~?`n4kS42s0?I^w->LD0r`sLjXgEsoP4( &0L;$%Oieds;6s<7L& njJa!iI-ŋ2*|`q)%A[6lWs[ ^MD]PM)M.T5HK?gIY1թZ-ݫh݁` 6:;i(</Z&7vECel$"Lo$fyCgEv-YDb|ݩט|  NZ.v&_Q,`T58bRG,oX̾?B.E'x-r+c7)X ;}iń6<0g)Rj#]9&%IOrJ8Ns5Q,P Z[("8ߐEu(t!ƗFE$w? 1X3ٰ@ /  :W{ {)c.5!`Qqc_V=OuYE!V&O;31/3xx.9U.Pj+/Mp }!y{a ʆڊ7)s#LmQ>gvArcfTDWt@}$ \)7V J8Y,x\1SERx?in1Q0(P&`\;~$r{@&q>0 Mچv{ oÕիD;=5@՗| ʨL; |S䏏vA;@!\DW,% Rז\0ݏݰu{{,D5Ur] w7b9NP1xqGj.)=j4!TԲ:zOs9wPF䄣f_{96OajB)_As>{b{6ގ,w>7FM20|Mm# c#`Bn)IF=|+5]%!gjף} 0<)[߬ n0+u1twjf$/:ͬE r\MDAH ziwSTtDN<TQ uUZ=K[T53JNb ?$"D3gftn17%&[i JX4z\홼Q5Fh\$C,@L?y&оQmk5z\D@xG],0X@.K'%a%S͛xMe?"{rT$;c@B)z/}bX$& 0} *#>l]SC9H k($ԭܑ7;A<}1 k2TOgxaJf/>3VۏL舻K!Ҵ;-"C)E!nꕾJk { kK;vw!# T2; Eo.s|Pnި?8l*30e}x/fxC(]4o /fmfBB)=X6t&!?+j$)r .kh%PsV$' @PΰNa)MjZ}xrYt @?\&d6^)RfOfԙ{IZ^7I>ʇ$c-|&Πo: Ƽ\C۫tsq37^h&-x1a^*zoy/T3کizz:u}5!@.ɹÔx㨧}$6?Jh',Ep}qӛߟcZ+88Gmxm%Vmz%*е|dlHcX| zSrAkīd/8xZWZE8u4rNrz3㩡j#/=-c1ʂEDy1RAf R-=߹;Ac%M84 a*g.!okܰD] 8Of5#9 i(]oQA[5\JG!IѲ򛑫WtMON#MD#:;+d !e0CQ+ȧA_NI)XC21vؕgS! e%_}\4vw `elzV{!.T>Q&\P+8 ʣ7ko#8LQ99 XqAd[ԃԓr`[WBdϜ~1{YPC1Ѿg{rNWɒ'pudsUIWP!R1Ts.h Va2kK33Tcű b3q: !k\L Wy_:ޯ>mfbN[DQVIhHr90To8AdrO=^Q|~Fsg{Y87".l9G;ܯ"$V.9#5z2 +!h)~w.o3ZQA;gM=7?H8Ƥműo|fs7; zݖڌ( v͢crAL2̣21?!+31PSRm倴һ*jbr^VB R,pW1q>juAOsꔶHjzYQ&Qmp߰BLo#ǝ499q֧K v,Ү%1Y Iό9wkMcYr0IEwۋpr) \|ePYՂuPI96zM~[Q&Q!?DOf1 G ۶6`+lfAꑎ(]9Ï-lal9m[ҀD1 SovT%yvr?~uξQ0OFʮs-ogL6Hԋ)C}F JnA+6 vf -|v7Yj2O)NmET>(^#)rLA&fJa"~CKkK7W<=!ʀH_i?]g1 ,`C'#* o(:GbeWѥ/#T-z)J[dQ. Sw}<4dхusSXxws1Ct:adIG}J=U#jLHjíϲxJQ[rgh*!Kί.h`_HU^Vi)9^V&A'e';+M r٨/=KS" vi4o.K_ylZyoƆuFi,Ȧ1|^T0xEԺаӏᓡh`֫W=љLb/B߈ L F42ATO[: 3u+yvF=)ioFnwL/$"eEA>Tt]D4@ydt"K Sp/M-0{3,ʃyeF<}, $,1P)VIgW|-h׵CeotM"Pf*y ԗV7<Ɋ> ׂBVؓ[p; RZ 1Eٵn.TdLDvtbтo.+3Y1-GwRf_`>2U?ϊaeٿ qZuOig´=ύ)>,{!70d1ۘc}8RẊ(5s!n@]8Ԧ2filܥC$ާeUzYݍ#B5ӈAұz{pEXGsa0`F>QwMOa? $Yo҈bK."%H.HDTv A`1aL=c,I)L?K1c_{q3-v2(˩(U̹DP)Ԡ́D!Ptmy ]xBs"Zb_E}820sJ U8H@Rqh @1tr*e~ɱ@Xv?$SŽk$IWxB0rNs/ ~ᦀ{PzBFI"w ˱I.wrR=7e¡LmXDOl0V'cVP,1t2i:+z(G+;aGopw iKU X7:CaTJ5.t ߏWF|Ҫ+ԯ-?EnAAFZ{ ]n.Ap[K)&T)f_c.\BdVGJSU qJk#P=:'%B8_onշ,1\>ଁۃ՚ {ޢHB^15kSs}d6r eD`u(ܟ\tBn^T$کЖR`ݨ̰ۡ#RqV*1`C=XQ7߼ohǜQ9L sS+ºx?DI|̌Ja8^.EqM;bbMQ#ڧvLB듌+ʿC?gl`\}&(õvdDxmB Y71YպFNԍ0;qW#Q2vFaorLRmH0NRV&Gi lp" #B6}X_{l!fk3Ȭ@<ҹҁD8r#i<:֧%zB1eBӔ*&Ye>v/VbDH=n!{ɡhsGgLNFmWdCh_Dy}lz^Ͽ$w8tO(ia $ X?ƪ[=D ̓N%TL8emg7eqǛs*=Ab!f? O =KtXjYumS[D!Y#LSTTY)}ᷔU^ 㚳0t )ptbWẸEc؀#;Κ钘QƮV VSAIWS>4FA PmXJK%&yd6 ufEfFǚv iWQ[5T:2dWɟf9vM+ + q\| @D!5*VJIJ% 4AMG7_G"VM|q-ĕ8Gs8X"t4_xZFUAs.Uiƒ|P1{yN'Z]2dED|=S3W6c"8umI Êj,!z,nHacC|V/*?Hӆ@|]^N8.:QW#8s?@DY$L`9`tB}pY|.n!bO澇 @ͩQKzeB.b4v'Oi喪m5U "Zz09JqYz@Ծۇ@4b:7`%w+}OqϏObPpp.>vaqp8/D24652Ӕߒ[zd J&o\ &8Eɓ͊o+{xn_"Z|Ĥkݙazm؜waAvsx,xG$]E\;#KJn$aR%iFb7M :-EwJ$-_J*!bSdz8N6$%tEx>cBvE|`;!SE¥_/Ah.^+qhWjH8Nȧt1 GW"I;da 4֔0 {\"A9!|a*ʳZfJҕIԧ)r;5$* KLQs*v_ y"n_;&^K菠AV[5`vTYtXk8: ~,p8J/ R6}A}vC«7HP33Vc;-_3R5U|Q@ Cdof@˪;囡F7Qe`JBqԷ|}s] TgD*byMy9K*M"D0.ӄ ]R-pjL)$hgEǚx͇F؎Ù7m^\.*O\k _6F-dND_I٪ZyH 7~ gpRk+q42psy7HY{ۑcFУ<1Ia1x7ْzQMDԫA-[|*̏NmT@raN{? [SZZ2b ˪ p}7,{2X[;M[u /9vPJm*>E!BZ>*kQƫ;rHkfH4Ri=|cxsT̛;U\u7+X+Ahu* HH<֌Jc@*ʇ2 ;]~M@II]¿>#{" W~ @20V(ҍ-^u%GJ 4+~% ȌxFm%Lل޲8#㤔 =43T}DYYdl|U茨r?C.yuܶi.m&|()˸3?1:2{IYdD^4 "wCIR$!b]se4+!SUZ"sCLXYXSI@"ȲC҇(J"/S{b [X;2)4&l0ٔzLyCt蜴_AҪ)}u c[&EG\2'⣼س|,wJcZ-\p(Pк:g8Z [qϔ%ԌZJc =sT6@ue6d[C4˄xsr8&z綶xnX!# ^Ӷ!US~ \ʇAa{D zyBC*A5َCWE(5C)5s@} "PJ#ʍ1h=5u9狲̆Ԣ!*a\Fp2-|ׅ]lj|BW$cpwN˧0YTOYɢ'#Ed2)B;" O ejΐ}y1,#)S|,&ɣ|301)81lÍJ,<*v&H?!%^zY5Dws^3 $BGP7hTHI :$pg"Z89cgD{ VtqE oQUEH#Jbm׽h^`fX퓃=-4Lb))KMsѠUsb'@Z5eGu rZk5p'q.Sl(yRR cO: IHt\LOv/ E,F]87fR}2?2 k&WTnx$盶tY7d!86Rƣ K+ MjԸp# !>S*؎Sܵ]jLAJWD}K?~3| AXKH5 DT@mTt2TKz4º>ؚq,>(pLj~=7@ /Ǡ9p*h~[fM0Qd ~"mHgA{44!Erl{s&/Kqū=c^ sʐx[>ɖ!#'$(iGBXKз@mt|wBC򏂕 j2Pj)Ie,먡.ݰW> `*CfV!z#Kt5dTyɬz:,-^; NOyϼi#'kUi՝m?NjQ~m 6Փ㹶S,fF=Kvwk< Qf&~Dj;-}@6G.<3e 5p+Ov1D"dPy 5Jr=M;CVYMVN>rwDE%U{ {ч~Fl: n"bf{Rfϰ0ě(XfM,NB#@蓋,&wҺ,!wC6Q˽\ GX?8'qE&L+ "f6Y>ŧ~jKsщ Kf|D%p%4`xbsffH+Fe, s([$w R#'T,\+uQigsƏw&t GsUcZp6b^j)H| eRfG⣸|z >֠:};emNbA3'WjۦL?DI]`yz\AGmKlw1 @w,TeTi,%&EDCgRdQ#퉨/dw sl.QHz\at/2L㐲gϿW-q='+A2~q1&AߦDG0XvL d(ڶx|6c~+tI@#s°3 fvPW-w\ǽϲvd __uvg7hpD}^eX=DCԵnf:xJj--KFjC^=܎gKo vr'~Cci%H҅>aAQAqh C^NY蠌ߓК*0n fK|9 -# vߞSPgB"nu?d'KDƯ;TCf4)>:- @!adbFVT| j%J?\ ]*K/^7XfՇ%=5C-/vN= @X +:N֤fO(}VԮB}M <¯ye Gt43sI<€{2'A2`w.]~kA5m}ڞ?)hrzˎ0#q)IM\),Ty" mX+S#n{v]zE' kp&{QW.7:;Vϲ^FbD?Ĥ( zpXk~|ͭPcև,)-JEi;q+o3P?@ѓ ʾi1PoR4!vqIdY=fZf:[pK+1, 5iTPV.QS髺qܯ?Iב{F ',(W. qdYu~[#⇴VȑS8~; h{.rBpܤ8>ďU.,'DLЅ#]ړt ~/EyQۂu0xMVLCCd83kaIeQ3I^ǚOHkit|-R`y@Jn+"PJ҈X8wSCd?@:j%5n:?{6.b*1%En}' 0Fa8P#浝A6^>8K!haC8Itq>)n$ښ1Ќj:ٴ(n4] B12v8{9_\pPBh"AhCioy+ky%6Ss6=YL-[Oj}GzKLX" SYp[aBe+>~Sm9AΉr#ٴVuity.chtL\M O30;?}μpu,5Ufї]nN [~Ffv%]ZB{F@Ħ4chYHf7ʶjyo**1䤁m wZX'ʓG͚}b8Šk[&}f* r2fNkTG"5WP jyђ$.{X;XHKT+ mcwKq}]Pq}Np SB~Di^؊/ $;K9 5PA3OLCy*$"Q<&.eT3[QTgQm//?ါc1~tĞ8ƹu8X>45 M5ΓlD/#T!8de;kPx>ݐbfBqſ%l\;$%/h*ȏ-z0";}J-+)G˨0r4 h1ϓBpdJΫN}nT1M=ezl2" b3ԉ~Fdw =]\MJ0 5Aڂ(q"y;I3keȜt/cCsl)LE PrnT/q?3o9(7JC1@!uէ!;s3e[L. s0=LRSfHH\Yl}:"A@s";=lS{f>eeaf4b6TJgۡ'qEoY[S o'&^_s@%QWҖ|[AGcXM2-U3KV\ ~ZbPkE')o{?'Cw~eײ; udQ=zrQjV8d +CX=f^}Y: 8Ciʶu`$¸R_;B|f4ϙ5G1`7ӿ0eej43#mjh(M.k|Jɶj3FK8p\TW{bx)oCƝM. /Ct?=)c;=v6'hm8`} CO"'A* !%;䲔 ̨KD.VOjߞc謳cڱ9j<^BL&ݖC|3Eψ^6stC[׷ǀ(Qqy_-m?Y4۱TN$aԣ(2ˏ B/Gzp/TI@%eD: GC^]e9ڞ0D`L}#:{i[m@ӏ: xD?XBi99jDž|SC,sAP[V^ $HÿJ0D>Kߌ̏f$VkXW㶧㪣efe0pܾ߂u{[WmE}vJy4֩o;r[G6x,P ,ltӖV> E\^(q{#@#)!<p a}·Iv̪N}; ͟iڗfs|CZOkoud>;%-ݺ@MBʵe~gfvUJMH;#22HPVy<+#?~xD~V5iͅbz%Jkl!%?ͫ'˺膥•/[w+Jw}vsk7%uݡq<?t \X(7U^J!Q&P}_/'w=|>+$\ʋ*Ȥؘ3Im!"P7%Ն۪͎X'Z0VycpiG fo (r ^#ԟ} KN>#,t 2iB@yC|1 7Q^f.kPx_ޯd7?o ^{lv#iDfa{p 44NV 8/_zZbd6YCJ}W&>t"g0 XlmnRB{~#|Q 1.OR9ԭNB!WYmf;S_YH3N4-O\#2Ё{a(zSm#Dv(C|v.XT_5НdG]+ul2-jaz1zIQė7$1]'__+WfԢ/>-yR8(49jB]`r_n}<2Y J?'1h^PkN߇* dj.8L\ :p!b Mw}LZۧvfInz;r7(˃Ն7C[$W9V̅jg*9&x=^6kڢy fְ{N[G'ScԷVRA5I3DW[hƵ+e\Y^`b|I}( Bi3Y_'xQ&Ffƒ#!0Đ6^b%*+ SdYd82UUn -8q{POW @kbHRΤ[u2컁\Ff=l ҼCːXC"mVUP{YOS=;%-6n8&$;fkyT]4Rʾ|~spi*8[>W$ a5P(0R1hΝ@B,J>SeO&Rfu"1YpΏmCnZlq^˺vs(N:0Vt#S u,fHjSiyn=9.^o%B';\5+ ʼnznYR>E3rr*rԣ~6Y\]k2j@3KP nmbͧք;఍pq$<3 [R;UeFP(JPFs$QiCn99S:Ȝ_p]ܸ$T)<6Tj*'^H]H.GR~B܎t+ph!-~,;lďYlĤ`Z_w:wȳ "nS@nBV vzuh֝ёѨtB%`"IJ5U:nDsuG$3<1ٕ6b2a;0i* }V~ >H6:'rJSyjK{ibQOeCjn<]~Կ ;1z$eE 6q6aSVЎҷQ:-ai bP^m:psNwH2 Lm@{Lg/>* 3-TR" N y <0"Yآ(gDTQϔח+d=Li6cfks^^'J KL)99Dl[ &x^ota#:CP(w^4)e8ѫ2h( ~1WcuZ~L/ 59f(r)8I]H/pyΪH] cJ:&@L/u=;=u:!xA{4 ,QƳ_솱.:cdjsOHGWTTzVaIevuX%~&g,wAFs߀XH]}˝uR;m#,6 zYfVY?QX"pL '<`ۻҰ1@[,c+`B-w9t̀xf|\X d8>(b0f%& ]ee3rz[.@Jv)嚚;Փᰙw,=ϠDnT[rѴ0X`xHH+5sP~&惽uoc_M# ǛM,B1|u-<:bB8|͏Ame,]5;؛Ԇ}Y7r~ ¬s￟l-n1RL?Z Lw<6ނ#.(9+ތ"\j88]zWR}6Zr-5LJ n!xSp vZLK_Xr E$1"Bէ C`ܲcoQ aи( h]VTI׵#!0fG*L,jWyvuNJ:|y95CɠAC;G DkٷbصTJo=pIb'-=79-89ڪuČ@6N$m=gt,b9&]q`.п}(?@eV(.]yz2'TK@Svj*6cCAV0\A_ȍ%R$(DQIv4:l `$]-bcQճ(F) = *;$ ͧC-A`D `ړ9&b^.Q?( Z?u&=S_gwG X$ƭ{ K;{"\wFIb(c'bKK,uBg/>OOs#f|-Tp0k$dI 6H[2&jciǫ +<IU ҈84`=JyHvlkGHnR |}f.CTCG ϪR5ƒ/1!#" xQг8YݳĥFxhB#; aV8Sq@<[8m%xȟ}2rc7#&ST ʁaN4g;&Rkuoi:HejH}uVqa"F#HY[ؚGy77Sxv ; UU=WkC-+qYhb1-+Txi27Fi4; S"`( B1A4{ڇ{V:<@aq /z)95TP(>EG1^%TJ!B~  4@ ÓF+6Jsn^U]x#W"GfT6v3"2myznfdM;a5@:T"#S3>Z"6Gs3r4OWQ7QK>qluhsGv{ -5Ew6~FGeҬI s__1UN+^A,\'lހ I!:L" !٩=s ~Kh+ɓ<,&*hbpJgJ7MJ~A ' vDs[;FwuVWLkGka@b2:y)o#)nrV!}$M7qSz̝YwM&Ǥ-3-6u+ޟĭtRUjFN꺎;^nťoY %<%^$|s3V)Rm3F?< [~ 3 h=CO];QX6&ar-Wֳsh+2_T 'ųq뚹$1oaR" ^oɐ9OA;_4]t0CSŲM+q6WS,-Xҝ,8x!f$(#*u2T#4cS\ECIlml3[8$g9raS˜7 +;BG%A`M?ާ co+kԙ9 ]YIq$(9HNZs:$[L 6go:ARMmbTS1"*tႛM9$sQ \}¦sp} ,$Y3d)ZԠn4SBB/k/&t^\FJzHTLUYxܸ?$o eS>j]ZX>Ï.]Cꎺ!&L=(P-Q0r;̕iԖCJEG?;,>"\2FJ*\,gcG("anHҢֆ>jh3C!E# &eOF(91:N.6sMݘpݣ>qH_5^ˣkֻ@q̜Ka0!y2H0] ʰ!H+Y<&ǭ] rd] \H] BaHVNrbTǰlØ+C+S*V O\Mx;@XMxl sxm%0U ܻj_,IC>麵$o$n=V{ԹGuwNLSI͑dotc*%@$Yx:Gg` WnA%ȩ4k{xٳh(k]O|sgO2sa+"3M?b >4{iHOFrK*eh4u q@ؔo:]*{6rifa;UV ꡘ^Fii 0P QG*wo^|l'tK0ܴX}+ ϝ8,8-J3켥L 2QQf2BjOPj@ǀ=*beR} H47`n|^l83gOiH /ϣ]pHDAb+q|2'Y4ha :]BH*H.t>z a_}XWQCF' :z*Ơ\~86 !6@vQ^ Du :ߥӪB|ڣPbz}HV e<4ˎܱ9;HbM"ftOXYϨLa-]Ly@PVc _}`S"q蝝b_ Acpf^vؼih@5Csv?zŝKPNP,("ٲKaw>2=,vO<Q S# `)AdW,Z|Fh&[ z+-]pxL5hsad4`}2s$RHҪ8,ץWjSс#ˌ5 {w#t GhnxANRhɏ=AM'TfJD;zIs`q}R@ C4#PN2Ewk%W|)죣<_YQhl.h"`ts?UռDb~e߆Fs=#0Y:$jJIf  ?>e0ybyc,wTe;&i|nrRdNb7 ^g-8#7)c)iDBi:dp} nU,ft4x ?fيIfan8M w7F=̎FTFFcH# q-s(~}hL!5˙dKڽG3= Gc zv;JWQHCU_2~am&hUӰ>.4Q TTHre~ 4IsOǥp&k<84HB"QeԾ;ƷFm&ȡw˺@F-+!G5A^W-Oš9 zX(<̇F (k ൰܏1wҍd4A ^v&c`@ ?)A& +:ܫ(xar*KE#B2SxYЧT̵gBhuX5UuZuw|.*-HN3''U]d>ֶ_xZ+Dfk=a Ǽk7h}Z[(GxHXfI \[Rz'q'q{P-LNVswx a‰u5PR}z."ni[c2,֑]x9/]TŬb qf6vN l5k+dN{A  O3m.䀦c O}QMOF.6"!!QM9b.X>W0N]ª|;ÀIij{띜ɞչV5$i!ad[1je',9q A]XѩTgd\y .O@pyǜ˗8`Nm^5FBjvCM Dbkˍ7W}[R}=1A5|{i@T+:MT|%Cћeg8P9) RT#\=ᦊ#fϯkV@H<^),tKH'9[%陧|9Y"C,޶58=їq&j*B ˖ 3p񧶳^}<=LFtSM-۪ك}'`Uva;M I]b oή[>8`ք9߁EiܲGZ)ɿE#9Ts7~ԞqKA^tU7ruI6JR.RG8ry̓<ɿO uTq~idޞ`c*`lv(hig)yg7D0{ =g+wD66_y&GϪ7G8i6Oֺ+vP/>\"H:+|Okvn/mK4M&Ɏ~{]]*6@ڲ*(TE L@Dda ] 5vrI^bq08 4'߽gk 2qd[0| zt4!CjQ1t3*PC|dV[6ov:!E\!ʢ.im7;`WC7#Z;MA*~DR>wҦ%K]Tew%|=Nա2@(_K+h:0P"+p0m+cISKt,rSK/X^:ULBa< izh~'u孖P 5*p0K D_)$e)ӆޝ!`SE %n@_'CApم8euSʴnBrJ5&6 R%ojv,1M8 5ng*P+!TP+NzTj7J:@GaHx$0P\mނ3Ѕc'Ԗ]۟: m/6i˃#[tt$D`TFp7Rg8f,fIEpv<]1=[ AL_NrnA8d> 2r"0gH-y9yݯTh]ׅ:4JƔx/̯ k!^P|ޠGp2r!0fz/nP} #!6&V ^! q(}˭*Euy'Nu*i=u8[-hP. ?,|`KF+] u$> N!YnB޳r[rt0Gkpr1$,I~C^BR!j}yAzJK%T)k˼5wXMg8]vU=nL}P(C8L& a1ds<.\J%~*Ete(ɱhn͏aQ a9v#dsuW̹"fGp l|N$Ǜ 8J9,e3#ՖNXLY0EMV=gvBy1Q {g#Qݑ_~r.S*>mezM':r7,D;L}?֥Q\ %G/Sz\ĎPࣻr5brC/]`isbgCX1ٙuNR0q|Ga_a^hӖCvs"O7b$~_dem ~*Ո2+ZqyB+W/FFD)ҁ,ٳKIhf`AclA)\D m͏LMCh~@e'..>@qX^gIPµ Y$khwFK]n^֖DdB@#)<4sFfTdO_b($UGV% .y)Ѳen NY[]`.XhX+ӌ]JkmKݶ-Z*$̆t9DVy󱍿8WF; kylY Jz_?Zaŵ5<€L;vUo逊;>濤~ B}#mAc%H]~ꉯpE~k,5FGEFIt}^&da'Wwﯰ/pˬt@2täh+ou *qD|z8B,|o⦗|<2Р@D+:$ ;i]q7L~7Zu')%8/֯ s貔7y^&c pKAɺ ẐY(PR^-cB9|Qo 0X&}!Z1GXf:mڈe)t[ا_ rtx|2IBnU ЍnLU`Ipd9%رMfYLixn6#UM* ,_II<%}j7,/Dfk G Nm퍬dޝ#m!5EpYjm͞Itdj~x*/\;6ԃ^рVEPs'!}x6}gv}3w'5x[~s-4$Un}~a֭i]Vjh'S)^R]PZnV4WIR4!H̑8Kl ~sM5YAzm >7ftVЊkᢘ=*۴KȰ߈K T9SfL&Meu0۶VcX̢+dZ5=/sEj)~h}[g`͊ÙoW5jqb16ØGgNAaVRM$q*R0Z' \D! ;nz2A[sHF%<|}yRS4 }]8 0ƤQձ>! B= 7'!עJĠT|Ք r3B2[o5=:ޓݦ=q[y{t6sL;rV]%BpzHᚶoV %h%Ŵ_c2 uٖ3JϋH&t ]h0jfqln++Nƭ3uGxŝLiQ0hS6-( iESӭ]nt bI{?úS YqJ CKElk\S>CZ]=Cr?t9b"ҾdߨSl%+ 82J~=4.=T/R%ŃD"q/@!->R5i0wCjPٹn t:0UR >n/2J Ulr؏:f6N am]elCh[Nz c,];^ƩӒƻw%|`R%lKK$ $$t0 SGp^,NhA/s%홦&dKṀ'{:95jG5_l͛&U!G70P)p] vvOA7E( 5EQZژH%7ܪUn7'R7&@+cXzM]˷̽o`~_;d5ysxk\u?C)\憃bv4[{ sM5si,s.,))CJ}|dmTP+$l!.#ତrOYNMxG9S3Fʆܵ?D/J lidVp4=TD20%#y68f`bqi Q^~{ZׅZn8(;3&Y~|mWwHJρFB?U} {;5I+to:Gn!dI\a;闇YIqPSyXY U<'_K->H0!*K1UCBe+/·IrQ?7{o9J=~ Qp5x̐.DMC500Mb:k)n_. MGyU\IaBzzPngV0nkVz~[ p>}NVYdz< o]3c4JY C&‹U_l`,Ly t9cmk)65XFjZfUH<7po~痓!wq|UMLBK;ܰx^+6"/Av%bqݠzħS3.| l$|Gأ B7*BƅH݁"PjVwJMFbog: ѪʐO Wͧ#-l6 y0,z ռY$SyC+OOSvВ h&3LcW=% \:'HgԒ"ȥ u=w3Ix|mlmr,`}ԏx1IRA:"~ L {[ F|n;9oID}8n=?Jn70}tњY,I^>K_*c3>ygaY?ݾx<퟿ZIƟ\J(E)x&9[B+4Ó#t-૽ g&.) cŠ8E@^; bd%M7M(Y7 jE`vfQ5~c&CC >BLVL< l?GaOJ. u Н}1K{mJ_jpg00gh5 rr!Uyo`u3*Rcd<(4\Z_ w>k/P@v71c:;;ezY;F%%$lBm'0-5!3A^}UQs +:Wh8:0f٧&S%s *V:F^>`>Ȁ͖;ZiS,.ܞ:3'H!&|§PbjɬTi>}bMOPE+Q : 8U.+Ư[Lg/$G[";c‘_X 52džoXWN9$IA7z}FϏ] к!gQ3k}wc.1jJtp zH}Rw۝#c R}Asu0I5[؍LXKw~s>3^7f(mwl=Bnji.Sv.:lZe~˼u0I["Y;dO@81yqOX/7d@%) G=Lj۹FRy76[LYT> royH ]4"y*uUN!E(dG' &iZ}"u) H^KX̼{,x0j,DT05Z?'=5Zϳi/e QdD/N/-țOI 9!!wwz ]WDҋM@4*S4{1Y%)읢I4Iڐ)ۉ=[}R*"4[`4_[?šj{ bƃ& y#l*F xbyE*ߜRz428)sBM)\g,PƜ;8)~ x梇 ujL8TbvO(_KO0F}ʋxR;cW+տZńߔ /BMwi@bowE`+EyQ@ ɉ7krdwRA) '4#8F%O8Zql2ݗ[C,% YYgYv+,PBoHΆFch6j1_+ߪWgk{4.&< -bT+.f@+H-_LmXz&m7pLFX)6B!fr <\?0t <u+t{3̳kr+3pH~DnKdI>fN'8G;CdI(" _V̱-9*ȏl YГMݽRf\}H15 oiĠr|[e\Ϻ:/ ]6?R96PZ=0yw@ )|W:d,D#9ʷarow-[$tL 5z?YCk wxB1NO|AnvZ&"0B\"$"& XrfW҉rgmpȀ\rR` dl=ִ=7J%YPҍŐ_ n+7tYեL4+f3|Rg!DbMV5-pf5٣L󲊾|"DpSBDuj\"+…G&ܨEK>eX4Vog)) q=GSWrnʱ k|bG.|Zb.!#+: =9ew;H};L*!ek? 1A+욊8-:r,38Va4%wVa9яth-J ,8r2AY0]u.p]gr8 ~DuϷs'^Am掋LrRު[ڇGxKt|y9I\K> H(D_r\߱'?Ev3HQ ݌If\3LFCjmt }˸!pbĘA6i"J` - S1,X/ V3^'klhJ`/2RķEs@ ~YPjÕāk/ug^:/SY.))S+tMe~0OfA[hݧt+ׂ_C?T5,tdPm[w\<&oY*SL6>սÉyѐ,t Ra)O1?Qnq8kqÞd M2EusFmUP|>Jb/!/l$ڬwCŐi``==&`>@Rݳ[yг:M 9ںKI!60s/4ђ#)"hŇw [DnڝcftY Ugʢf N0C_ʘQK-?-Qz޾Ϟc Sfh/05ȥϷHSKg#sj<Pkb KLIl]Dtyʖ)434q{@tiuye+Ov'>4ɛabkdMIHO%5E:1|к 4&LC`̼QS~Fǖ;I>5踵 lM'dBnҌ: (CNEͽjOx^P]Ju jdn 2덽bs]dMe;> qSR2U&}wcAN Mr Qղ/%C; O.,O^o e&P))M/N*j&J-ovN#Ű8pTԥHY//_²\SV.?l/7:9a?7gAdph;4vIF\5SdZl4^E^-$6~lZPmF4}ʠ^$6n0GbÙ+WW|&vL5} wONY4P?o  (#?omu_++6fխ!r^LɎ;oXwc Bzθ ߃? O?۽M16(g@TEhUbY4t車3UQx[̓%a\ׅnYR7# |Rܘx'RJM2og΃`c#YHAޙ3$/DGOvqDztsZӴ-uj+Ly'0" ec@"F*]V=!P^B(s"G#Uch+K!֠$to*T%;09 C8iwDRΑ,z4hh=S̻O>w5MOih M`14|]j>qYnctN|=@;2- 1dpD#UE郞"NєvزWT}G z]I8|#N3w>bN߄" + a3 |(Nѩq]`vU-$u/.QɇrTd~ {) ֞+X ٪P#X@dڹd:xȩ~iI x/~"DH̢dx[nQμW^q^*^ќ ( GC " |LTx0pd!ѵN MMWpEgXuQrZ ,| t $L l]@)mDFHx ݞ°$X5=4&}\'\8=uBuXGpŽ="| 7~yK@/Mc߁`R{1ho#9%Pʔnn4-U字+x!@X Sy;bdg*5Y{5gks@،#{2zጄ>_>SY;X_wp/Ba^9k]XuY_p'TQc~Չ \7 "ĉ`$ЫiC5RYq#;dTQGCI׎bQJTir 8kpKe- v^kMn=D!so?~pBʯG bgZlSᝨ>CZذt[򉳸ʚ@,M^B&ȫ{݂N1hFwOvY@ppIHA=}ЧYMO(^I |TdP uo##PSvmֶ- WE ^#q~#@0Ԋ?Ul!ZZz┼/q pl= h0f!o.IXF)QDcuu: -6ずh5QP7}#,l7vlN>sxc> KfqbAk(,q [˜t[ 6;*as}< 3+^Frf;_K&Z茂 njW4 % +Ǯ 6*Φ_v{1MU;<|6F%7>jaolr*Tx`E`SgYZ~h` }:P!MZ6'~ә'|9 F׃X}0;a4執)4RYBV55 DC;VG5$ ^_IO&2io?$AT]n{xɛ .(*8_0hҨ;ϦQ43'Ծ͇w[7% OR7`وɣj7J&,Nφ,znn;_k<WaW=!WyS\ 5Y]HU w<+v'| }PCC7Ew)_0LwFGdRMP6(^~+1Ou|A MLh86Τ LEgJ6Ic0>)'[R;ɰY n|Vnx?oR*S@R3EXbS?(ӗ%bR~bW6IhX# lZ۔t aɍI5D6L!f(K%F0[>ק4RMCH xsjk]d'b #l-8߳@!+z<3<_5wM:TƅG{OT wHyH]8 ÎRvшܲ-m٦=y,U _>o ymVƒ= I)8M}]\99oغ~(E1^l5}$!9 \[g:@|hof8W N;M׃j&k(GV;``\~DGU;cMfiݩ`J(dUhyT-\ $ѥMD[:_SڍzrON!\hYs~h'ME*8|nK$G{xDEwʋN Ĩ8ZI͟cB39Y1gtbҒhr9$El~/1`G3?i|&o(a<zfQxCh,&%;^ jxJD.$#0N9\S!cT_p£X6O3`_LQ9O1v5ta}a']+Tzn G6Zv>zKӖ +c-BVۂ7K[h H G=صLnqYm&"6%??gIm?+,̶7fQ5/ɺ ^HFk\F5X ݫy˦|[|B,;?ۦ! ([;4 &} S2D<+~$1 YmPQe-" ț)+ .Z5p9٢z+; 뉻Tϑ ]ƒ*qNU)ؐ@RanJfE^ 7KnykdyILkYzqZ]Rr915z. *>Hp)DD176V(4'4k8SfliQ%tDI8I)ɚ٪S k2H$Q@ i˺&%ȍ~Fa~±Uv_w "3$5{(qNU6Dc0> \aE }87SrV v"b0]o@Q $ 1\;xt<}xPT^,,~Sζοu+C;yLzY^NT8a Z ,sܙޕl5{;qMM5(] *nZU#4Y4WbjUqěK,/^sjt`C(Pie{P;fM13k{x#v6\Q*πVD93O]9#*hvй^ʾHOzl~rr+@AB2iG;;(!@z^h[˒z_bx+7\;OT1cn %|7n_"2z.pk-bNQTY B\AD4$E^b9pKZmVʗT{&f৛1tI"~;8]U5xis8ZF ѯY׆OgsvXV 8=݀v ̘o 6gˏDN@?Oڴ#oJĝ#ZiGͬZ& O9K*s@;>E~4sO/f2ao|trR?w]j\2K1a\n8*@Ec>8f!h4B$#yb X[Xګ.ͥ5lkOBdAPrܣL]=ڥ[@@D^? ^ՋNpo {w-=& }zpfrIĸo(ǡ 8-KUzo-=1­žA%~hq⊖O\s1kbGplRlȎ|:BjMfW67xqc t_Lyr%^  ,91'UۗZ2K ٞ9yE [4-f4J96:mJ%7kڕܺIXg'xk$wiULqC:h98z>zQUc<[I8Ea. b?E}}0rdY*tXx;W,p4աRPnN)% z sz$81ߑFH7DlS @22ݢ)C q=&eT!gUL.?[o/?1$Nęm.*:+XPFׂaC8Q['CX`?~5%LUx1usʲ-h}⃍Xetl5(%a[W~) 4CE݆Vw%GSL:/k !7c|$ad=Jy@k=eV'Ҝ1FO10Aݲ BKۣ?`!ʵly^D^T >I$ÔJ2'!|ì(`W6O3;;~HIH굌FY1i)UB~~*S*miVj:;;Pq'öPנOI#(?@Ivn 4YWV;&'3d`r8x/E' #R:dF&-ƚ(Kuk}i87CTz꡼&;h,˘Z.lثN6^ANx"d n>kjJIlP1o G`pt:gmBhnШCBEx6LmE>ޅ߉|Ez'Eg <(QoU1P A*Gdڀݨk|?x4)[[%idu"UTuACޘѰhEW<YܪŤtsL' .j4QNHXЗ,EVgxoo'>Cu1w,xm=ۏzʷxi>[ >1z=3To ?çY;\)a-J[cwoQ_]R6ZMŮ!a^;aR»N1gM7U`Kű*^=Oһ<iih :?? nR~LƔfܗͥ)yYW2˄&D8D5%RqZ{S,\բҜ[BOljs0C_a-9Λgy敠D /p³:< L.Jz0OLö33ځ^jŸވ@ԁw0QyU-[bބ£,̻|X$H%8oLg5-Mbہ]#(bç!%Mj6#4:z#X:&@Hk<ٹO[>%<ڔ&q"tqGU+`j$rﭦVU@+rᷔ?BW"0c:y*cC B7IC[yf]!{y"(}^YϠ)eÁN8hLE1ؚϗ$2INg<=eWwKp'¼ b+#u7#"څJw{y`p)480[=>?UHP UFUؓJ\v`Ѓ(hMK<m!|zx^M$"\hc#x~lY+:s*U|hc*NH*0#{uʶI}9Yiu{].62!:M!sXSI>0.VԆllԙ3!&"#Ɗ lsLױZ֯FB(>uTg#R"O4j8 ꋙxY5jUOƦ%|x}x& v!?>. <ƵcB".cM7A<ٚ!8KG>*4)-Ez5&mGI3o"k`-U~(PF_LvCjU"*oi|mfj^N&X;G1$[-fvcuK%U@/zSG[* {cj/VdC僻ªjo#,%0TE~yV"ER]L'=|^6YBgPW&{Я>M)LѮ7my7 9޴(4Dz?Z# Դ怘ᣑ051@lvRt^KDp5-%I:VE: 00H5-| &.l7,6{њжyn6Uj+z<*nA+~b{!0{!0%&'@6WOˋ9XѻBY|b*C{ep?V 뎼@\{)a ovS}+qu9;kVЊٱ aVWFWq3.e1뮎樘BݫRV%qmmqM;86Xi t=Vi{gvP\Z`Jj wѠM;Ӣ%x6ZuM2D:HҪYHV8*[cu$#a9uqk><|JRSo"2>M0Kr !aFO2YOsj xdpf #Lr[g9о&+]EoeGNZnI&hsg)ۄqzUŞp ax,&FUZ}v?%D/.ٹ3y,[Хѽ`?Jrxn YwyB/[Dmg48|f u *e04p: l6]GHmtV5L&,:G`ƒVszWO ^B*O3{  @١#&4R8,~(Nl oCӚd GkF4Xv)dx ݿ:0%g.xeh#m}5c4Ow%G _aGB[ޔn T /| lGb9tX0<حm|ױg0¹P[77*`D4&+xu(=5'J_t?LVԊ+#68O%G`Oe0#ݤ̓?C1TiKvݩbμ ~mP$X fK(S"]삪Pr::́dK1SǛy^a+ҥ%H*j6 '#*éՌύqV2itqu5!d#ۻ)CGnVwh ! ǵ ?Uow i>p uD^&W3vkwLS-e'~h XmqwԱ=T?Aٔꃏֿ; #%xf4ODMR?%NR!WN]Z%lB [#\](,Tլ{T5?<.B%=O;_=Ehrv *^m;uő5n3AR.8H`ɛ0} fg^jy.*`<%Z1߫!EZ =5-%g!p\kw^Ӟn4꧋[}H-O ֏BI|9w*rv2Nlyg6 Nn#4WH&;Z>lҠ1Yڬ|9eiRn@h"^]} Δq#CHk K}M kucX}ڥGA熎:SP`xf)qa.bfrL]LMGs@ f8W"3q ßT7$wGsM_(wE[3Y|ƕ-st0w2T\^Cbx}35  \T0$1֚!diDQ(Hڀ#pV-{[Gct+WFzvU><;ZCӹ$QͳGT3p#f @A\B┱femwR]9nLW&Vf]<J뫎jbɌPBUvj[}-y;kȞr2ɣ[4A۵@b z±\|,π<~Z-S)e8תǝ..AR\ eC!̒?X'*! toq¶}`nƍ`{2&QgЇ a< 7@L,# 110RUǮ'9*>Kz*-ӽ A?U%K͗SNb>5W^!XEEAfh/qvD]y,`r,/ؾZ%W{R_m.!1h~k7&pC6*T_mf`Z+TyR`Z&jsڮn{ޤ**AnF 7}I'FM|FV#0إ5M+dm [c$i%H*y۠`īdg}G^֨ѾK }r[HtԒm8t#bl4y'RHFkaU(~ eY QeA.66:-Yz*Nr$BJ% 'lO& ֊N 4n])z3W 3es.t;4_W]Ԏuɪld.A Gtx1? -M֗i {i*@&6ŽuB&FZX ?X!4Vd2sTdLYhЀ\\25g/c``_>[VHbYi3TxC0u3 #:XC{ӯ50$EhfS v 傥=c\W(Ty1TY KԳcD1Mk_~F\gI+@20.&EgkmC Sg\ Nbm@0TXC M w3<^oFTa}kB\Wڄ6{V8f̂Ee?_cgӃ컇v,58dQ;0FXL$-`q*e ʸHphq1f[|u Q>$'wuǀ}Obɗl_P̑(#Rk s/?"l˸e: t;?Y0su/n E6- ٖ5w$~f01u%:ȍj90ԕ΁ỈUwF>9ű3ɠ&Vǭf4:`p<[DB *l(++,4ڒ~N9A`@z iZL.jdIvhoSQ4;cJ}D2f!WY@Xܰu%HW4D+XIN;1T6L-źqH$_pVxsQ?PU!m1s-M@/PLe6tR$\J(WkUKk6Y \V #-bw&1u9# <8%L .˜6y肐gvZ HE$z8ERwٕenᗑIpKtN-QFnӁn.S}acGO n81|};(CzJP&PVX3ק2]Gt~2);UrXr+>%qEub?ns6+4߯Y#>FU-;&s!9hksYr|G ^T ~0ʌffˉ!^/C_'hR6 wi\_ mqXЮ'0[ԶƔMiUA!_(糫UbV-ʪK0d]54b,.~@# rHc'A˥L6 ݙ!,ާzѵx$!ȩ[SjU'G]Q~%N(܆kPO:;/=Pң-O8jg4dnվ9^%7Ds MzbTr8|vsx͎1a(-eҶoVHDM)$,\wqJ3bI?Ǔw_ZBvT,w^giFMn.Jdi[}`7C',i!lՁy3hɭ+ǽq.oEOZ$]D9C> M tIf!*Vgg5HTX R_鎕-H{%ZCsˁI7LtIc@ug7M ^K_ ;qKf )Re7QlF]'5N@ ebF(7X%zrPꣵ`!?g|znpq[aSC\ V?w4(=wj)@X``"g\Xvpo%ޞ7[LPr?X2$@|U1mGC W YM=anڸN*7鑄#eіZ1Ķ W0ᛤ8:эϨ_"&w;fclA^niWĴ<Ա~y=^o0t HDbT.1   aYK>"u?s!-b, &GV݁XbnqXymtDV ;Wf5]sR+? Ê&JR57Fכq&!bo W PԳEk$S6P\Pl+|"PM~T4%_IaoI|waL΀OWGEY[k)H4 $A ws1"8pVagE}߯ArH"U6x$FI|-511]Pb7=} G7$|,BjulP4E#AAOveW `7[^ $Lpo{=&N}E1#? Yj(!͠ щޕN٥a , j]'ɇ+}(r uZC5l9mh$ v h8,ZѲB9enS##0 bϤ+otN<(N/z\$$P\w4 ؋IFKtF*\ͫƝȣ_,= l]AbiB!EwixQJkPZ?I$$[mב nYbȧ F㈞rW/9j&G5Hl5B+mhuŶ6\cy2A؟I;j.HO!Wa&Q^%}Hab\KI  .du"iкvc%oŝ8NzJ}=e1iq-U;ll8$?*a ~6 ~/Tԍmdl١&kJ:AS TG+AmPS8/*V`5`LI컖ssH wUo9tcŪït Ȁ~WJ3["I*1:ҤP(>ݛQ=[1226|`a"8MקfN vߡ{ ;P}[!N"?]V,m3“9hk 3e_ )`9BƮC6ӒV65x:J7RdZ:`cTj0_XI>(k*c/CfSj24 Wg}Dzv8$#q|$ąy>.x&Fv${[Gw& #$pa)U`SucqH<.fV˸ܵrR8zrͽS2Qbe{ZY2> |IߖXҌ|~Gu;7VWt ES@UDR*@Z /6p'O;NYhu.3U3`QĢ+ Wv)D!}(L;0in"e DLDxךr嬥MDa3Ėa9!gw)* JзPbS1 1nTƂ{WY\ .I~HOz$JF Vg9Ѥ C nTqvKlH4~sb6Ƶ}sBh0OܞZ؄bxW4D)$8j7EԺ8WDrQQG49F @E_s+ItV1]j]B澩tN;,D4p`4+ LQD;z؁#[&l5S!wë2w z0E$4KP[V6B_:ΐ=pڵY< &d<&Ӡgr*4,qsqp݁SFyC~WeGIߑ:dC:ʛ)bzϾI(cq8]9~dnB Y! Xjs,@Ҍ Hz3zB^o\' 鹕O$f^&FEjNþN7x OJ~o*ֺP!\j3l~hT~8 uluƵMQosyFY!}005}<y^T`A%7Jߢl^MA .f +߽w|fn ; Gb}S/𪣬H҃GRKB4:n~%+[3X[^չү;|4:O +Q]rb8qS~4&]R3| 8rAM`.!4vӵ=Mm3xL4+i.Dlf޳J|tY\A+.}f1Ř5,z'ww6xNJvxDV!r-.HiO TkRp¡F%xxe2os!>#epP̓8ݸ*1#[(:Jk@?֡XĚ}oD opO&Y$VneX>xՠ+7߄ p%BnïUwm1O8j"| 23]ޓ9PWvtg6%-ҙN:R4bPJ*Z`q|N z uDŽ! \6 0T3YǧqE{'9# ŜM;X¯m4y iuvI >mP^&RM$7W~* _!𻖂5ƏI.^:|eZ26]5|(h(2?!Y7&'D-W [bRTiEˀOAݮ˪" v;V oiz!.l5N|t.$ʰk!^քG?eɧ=SWn <y"Z -%νM{T@mU֣5wn691ݮu"i*M:97stNp}D 6F+w;y  >qriCR>6)|כcoݲ'_{.(땰MU|Mhw.۵V6 V~.dE%%B 'wbB<Ϡ=2]6GH. Yo4~֖}kdu[Pd +Nh,e?UNK7\70¤y$n_r",35^*e>$]Ln'^7>U{nR{.CeQ#% [w>SM3#rC(Z*r[ %JFiiF?2<_?=_ޟ@|)Czx T-Klby"}-_E ysJBbҶU"tU~4<~ {%;KήV(տ*]RraL"76*Iun3lLp9p-6UZV՞`~B;vr0z5 QE|t yN:bϧBD!^R<,+29dxVk̈(~?YaF9*k`=ұJ, r^ <=|&>:6]Ut |"xtBov CFiD7a8xN[iS:a3hF!XCn+}@ i 2ԪқuoPF;^Ԫ3$#aųA⻠@ը "%/K'hiK0Xէw5X؇@YOUo2SO`X&KrFfۜPz#?=Dc3%d9vVPE\J4 c(2/]`ݰ\O>Nh[ ψm᯦Ao@c( g4ؔ|R%Hm h5A4nx9bO]2p={Ԛ_ |ɔ+8?ͬkj+cE2ȤF@[a>,. MqwcdJe~ڨ{QsQ ACf\RL>a -lQə{Xܺp2E؎qbgUGCH㠄Z]()ўbGEe@SV_%+_獑Ы&6=5kbi!q02֙8OEJTo#(SLg2Ћbg.chB$R3*`1lnp vA]m4gm0f0pC^1R [򕯸A))a/_Q0E8#s&mz"He8ryY}c xitjh:t3G+#$%lzU»i̘ϫpfSzVx{)S@ sj (JԳCBVm ac3Lw |Q'y^v{Ϊu2Q_=yNj}GxLB7pB9ibnmr=\XPe'B'\WIx5G:E/od YpT\fJ$ t@QKWP1g 哵bݧN9sdb[j*@iDoB,bk[sm~N|HjG*n-6xa% h|NMe 4@WٹaM\W458ƧFFr*,K$L;{rXCnVv ŠTWzjE? k`M'QdNtN}vѲj78sDaț'3͟5P9(?, )Y~cuPU❾fYYܖ孂?峓}p$x]q!I|l)dOf,/ ħ7HF,H[a˫l|/!py. T$:kEyT]RT;-ILI,@Y ,!F7Rs]-JRc#ۿe61w5 nDkp~Z4(suț~FaPT |~OIwX*EcO1Zm4W}q:wvmjo-LJ8yYHu9/Φխ8>naNż:NqҺ>͸ŝՃ{-q7I0/-;oBfT:0r9IG*`10]u͝lD9ݓE\j,Nv `1;f9`z8J{RWe\U:' MD$vTZ3<NƞItU (T R)=5ljs S$n섏?UjjLyQ~ ?˳V\!4dGdorUf?8bAٲO&xla(K.uwUAo?B9*WwhV6Xd+xU9DƄϢn&([JWI9i`m3jrAčz|`iKl-5Kg:Fp'סYl.bs5*Z絸7Bo6ꄿ~Hyq<۝Ձ;pbn7؅v2ZND!*pķztK qLlPc4K k5^̌p%o=NnxW2noiLy|6;bJ_˨AU=^R:a!=v`l4Ws+ңI܊SMآ1TT-1ݥn<~ bMdJGև 2q=$l.i% kd~`'Ϭ\*S٠81Hnd|͵#ˠlH8A/ <мNo@ Ԯ9F= 6EwoS1S*-ަix.Eaߎ%ƈX6c$JDMc}հ♷tXs,&7U,o FQ>ܾa69n$Ch_,Bf-vOXV:٣Mع9!}zs'*%ԟ>! WqxS}m抢+3T [FDmҶSޝ y(O-w-s O+)丆jǥs <V+qU$V9zU2bEؠ=煮RK S4H_ zON=,䥊,R~w'ٲCBdḮ]-?+IɆзX:L v]c杫ܶU&, eaIvlb߷XtBใ}A1(zt~ q/Ѕ d^:sxk+iX(#U3ofab S?v?dT7/K?c)iY=xkz$pPf8bY&5Yq\ֳ˿n ֓T<\. Fѩ|,ic/0u>7'wRUcC ~Uh bSI9rsRYxЮO^X&QN3t#]pU!aeA?RWxh<6\9is^}^.4߲r=dz%pq68Z;K'|ϩS:x1!ĭ4ǣeaWc(FsT}-h,M2T+Z{ۺɩ.`5 .anx>12a 1-:LT3AX*~?&$LGf) k |56z(@ڐ%#NؙяMGZi+|c1Z;g<)(0ӄr;:連eovY`O1bR w QK:EHY'H\z'oaWŕsp$ne58HO(lwKXS'( @ժAsxN|x8#QhYX~-]QryI%[1U@*~N 03W֫ҁN\d^ֹOi3n;x[4N1\3y_ n'lp9$m/O3=LV01cC%BqIԧ_Dl'+ fQLFC[[^CEME)>sjEܮ;Y}Z/#Dz[hˁ|$}>-&gR9I@z{n/[NR ,\NX*k4ǬKc V`Z +"#[ƣ#" Jg9xbqV-jJ5r=;I]iV~Gz MNMDŽ+),?fq̤nہ;ĺR?SPXRB\Bo.;0WO usKTveBmh2[-{us|>Lh-F)q[u3.* ig#&wDK A9yR㸥Dس:X9Y1U0=D[;,[f~AÇh8F ?~/Pv=R _ի0Ŝ\' u&0^+ t^?x3fWV"yaR}^`t Sm4!o`) (4:RĘf=6gj)>@vz 66I3һëS6}0cO*ʆfp1r5YR\)h3,*i&b M0C-۩>"0O\:`M$?fofL\qv>dNO=7ّߚf-救 L|rzFirЏ>ؓB׫lVԌ)4sor΅`%3qVV _1LL̶!Q2Z''rX-}i_mrNxg/4:1-3x>,ɅTw!92kǨ'1d q7ojǻmu _3aRp$Ւw y9Än68F6 qߞI3+JAhu܈Zy JBVqJ}[" iA j˹zc߅ja+"6z:4~Կ$VMי~.x3ou׬ͪih,h7R$duIۧw{b'MPVօ)2,"7OFAi}e:s=zw!"i?*iTӈ!jǛ`8]U%[J\ACBIMq4N!L [ ^o4]++=@T@fڄ]UcnT&N%Կ)1sM cc:XO"$ OK{P[¦$)}{l22|y j$&${?CK,lౢj?p_-<Ӽ@`] ݧ1۷PlXS,t!PdD(>Q)Su80f};Y'h:FxPT/P)z޷72qP-`,>cK^op?|ME8Le4qKR#kmk(N74%6 R$} ,C=IO>xފ[l]Q4l%w'c"DŽWW gکYrufzz1t;) K$8J6#ZoLSO𷫱[ -MNpGi{W<9Ð%Af\G_,|f3^"zB-I_ŌG=A 8:Hwopa֏1wI;f쨢>=6A: ؞?Z&Oa3-eVX|+IAGa{H%C;77$7myYe鶳-c4&zS։>($'aUAgIۤփvɗ4)sڏ4"c1TKO-KvH]H-< 3~ [{}w$ma:[P}o Fz"8Z0\u%b"r~#/;gA/92VV׍&Ik?s|mܴԎ`x1Qb,R(F;s@9l;aؿ-vI˲YVǖ=+{Zg#_t#IJic>P5E(17*$1[wX&(*[qB"~[9ڨCv1ֳ=qq 9YY@Тp ;t7;\@6b:Kwy;uXIM.)A *l21394}a駜MAno >uWI(f"OOWmQ-CSJ e0Ȉkt}˅Շ[k:pguJHRtNCe8ErŎД_MAX<'dhEQh>, $?pZ0h`n}Lݠ['臁c5ɀk!ZYI^'hm[ ->2 mqxf [͜PؾN4Sh]YYÊmz dL#Ublnkؖˎ"7ۈ|%UcE_p-Sn}o,M,S@c]@r6:'G/^75K=RdqkK9836QG{ t!18$^*2˒ Fj2k:Gm]+O%0Y}KlcF1@ˊGt@#ؗ@,K w;6LzL]uwgl*?8eҎXj=uak|t%j-ZV9l1[//q1vf괬s=X: iA!C,8  R|xp_H@w+P xWzE˂ޣ[1x7 %ZgC_m:Ǡu7ޕun /E%X|Ͳy(yïvK@/6_NWyMźnnsDW31<4~y1`GRR4I=j jqtWi.OEKz8QڿbѮ/()~*ɍD"t:M&vr5;A MyPUX.qܫR(CK%Y2V)q΁٤vq'pl} ' IE;m\#eaiB2]XhT>JkqƵ"YҜEw<(D9@ͼ>`µq ?}A{+^^`דK2yqy!̱"*\cE mflsy^,1na#'f ue%}MaCNÝޜeA]Hw;=S.NVW&C TP;ߐ6( RL.d MWz%oeNC!L]D%<L;milTW(;:TRO@:[=HByH dnΠOs?1TESy x\cu@c󅞙^kbghJ+\ֈ gCX`"R @ xrtbiaatnR`(hL[BZbi5TޛTl}nz|7B(wqs Q7WuWi[09~EB7sM2`M.f[$5BNR*oM\/tK$ɷ(9JGt\)vh6cBI3vq4!kÉD(4B s;@/?-u8cn zܕq;|ywv+= Ygs %86yP*SK/  Bjw+0IL*]T}Nj9(ÓNEXN&҅qʺzv rA3mφ[$;(#W4xKs=`NӖ O(7} wBG8pӣ)̛ qY%bD=4mFՙ #yvp\ħh*a# #{Cl2P">,"NX3Շr 'Kʙ-~6m!WKw/h4:v?OBg2"||'Ġ*} Z"Cb֮L(Q0dSpĂ)*t]T^ ;@wƍsS>3x4BQ$ƒC1^?^9хt=8O>ےv[lW[|; %Ư؀J. i N`,ΐDB'yF:7[`v9ufE1^\I|.CeET+ +tZQ .ϽJNCpQ6gB\.t=>Oa0<")iQ¥l!:]aCh^W\G,XINq\e9ھT!W#^Hz7ܨU^ *YiVA#rhmBZ{n[†mσedXRڣn`=lV+ <-+k^SÛ)ؠ7DT*2Өx؉,1se٭K!iyTQ+AJ!Y|YH'3"מ K ͝}YH'Q>uҳ0њ%YL$"yKIpksXDAl'G2ԬiO'o9m~-WctSQbdc;I| Z/K'tO`|и^.#ѻCe*^} )JӒzZ}[8v{q\yI/ЂF(qWme`,{pe&c1{6h֠9w+i=+˜Mtvg#,\:6&"Ix{š] V I`AA'D&iCڛV`TA ta{NS_:!!YUg:î5.yvyrm/\pt\< a6jMZ5lL`?Y4'qP?&? ZjM/ېDPl='$>Y de"%k2 j0ɬc(فNꀂ= QpZDŽ .#58cmǚ?0kW\o⁚@S[gɓ kP2z Y7Mp[;HjR(]A硶PҬ(} .b͆"F (v [H*͗>!Ɋ6dg k$jw87ids%ߙ ˡ~s Tq?+7HarC%TsŧO9#rC0|z6tsSJ(*n.YCyy1Qd]W  DUCiD>]7'zEK*IM:q鼱{Ss1QVn;P-O\2==ð ;& @v)HX}- 9&s$]ox6GO>ULЂ:LΖJ#<둩ӡZni%[t{n74 =7:Zab?:GQD̂gFmSgӨ~HٳPsO7MguvJ,|H2äjKBe c>^L8ŗ1l²}D帍V0@rGC*PT6wNUp gv bݎVkf[fCbg ]:w1 X] b "'o]J w˵ysrz F2i).x6L?n?`i>qJ쉌êDGs;hr>x& vRw)+~R*ep2]w\Ke@J+1 ( oGMj'\D/:/GC%¢XgFlRn,xHQpb'W{e/r۹%]#JDKm3 kn]Ľ Wvb/A` B~)@}8omcBq*,e!fY֤Wxr$z՟g֤S7)'p^%!It +ܼf*4=yPdZټt03[vZrYAy{X_цSGH\]й6ût|uoŴC8D:kFVF%bbU;OI_ N0Ή)@p/55MϙQB rc~I$ҘS׼^rJ/q*/X(Xp# )KW{3Cȥpy/e([ =$!np}"L&†˭?_ph?H5ax.!GyXjhX!͍r5/t[Onp3f!^]\{u2͔=f5 \SA^8ӓv%i*-IʏQ)-\Fmn[=A_8L#TQ%}/-!lo6r%%[NI_`"U|bfQ)Pea<Ȕ280:ic~ZԔN/>JK )MEW`d9Iic}3Ԭ uWI%DߕHh|ڻ#$ϚA1=3YȘ% (x"K1!߃{`cF )ŝN3Gp`Nޡa`;w9C7P;n ی*r=2:dO] sLr1y\Xz{ l`L A0 {\( i-lIM9Z58p",KaRr"ܽ 8 ry[DcuiJf`%N 9,+ Yf2QZGBB:DJ_b(v7Ssa58z.68Rf-%./FsL3΋ƅF(rw)ٹ)qFe%W]OnC&ډS "DNӞa~`Նψ׊ 0!M

    RG*Ǹ} #Dtrd݇ƶ<0Tl1 x"j!'uA'~G5\^r7EZևڈq 5M٣#-jԖxiN\TeGEt"1{O/WzȟRDt+"8s _YmFgoSQO/ps/~rܭ$%9(a4Gɡ4fR0;y}HZ9^0' HufÉrҘ7'(ꦥ>Պ>Ĝ4(Ds숽s&8o|Z:ԲoQ}yhH* +H6,W -N&^4^i0njȂ8_ܪH绖 |6_p=Qlk`cI|ȍ23JFM+j3F_hIb4Pta߭ڷWȤ=RwGB?b< xU(1o+]6ƭ뺾jPm(8\ь3Kq#Iߴml*`vUn::#'t]TFES=Zٷ{GPvg [b;asqpW)<.Qj/}9q~Y*Ui*%W<4NE2fɋu?67#NH7\pU+;PxDEO /mϯN5\Ls(({ jDTß.GvÀkä> lj7yք+زTޗbnkD.*/S`]r"wb%Ia0ʉ:qEw=x|c?.f`^MFH7oC#&0dGq^f\@ krڇ` G12]ByL/'bk |ZZ|+e @<V~bW/ = :~iuAɒ2׀D\#}}g_@ {fP]GUq2#'?f #Dgp]/t[+k6DYF٢ GL <>XjA{#,Zs0{DLӠ "x(aT狭Y+WldU܀m8Jr~s[#82Լnhu#H NS cQ# a@Ctcq23"5/f~".~~$Y^GjrTom9US~i.;6`NuX[ςI'rd}F)ra8hMqݥFӀxѕPwgj%ڄ\ kFOT;~x$yOL!A bK/M;Cgm6 yl<ƍ >q<4]ҏH|-z,JU>uA]j͸rđ2]}e};.2Bl9&~M%ܓ`wIr^wIQ퍋\^e}Ey|1~"|C7"98gȿ7s?~ĺĄ0{zVpxAJgx*9xsy!LxM63g~M (%mQ݁ll8-WaS2C92Fw ,̚yңkXb 6 Q|\s뒡I͎͟vzh7'rnr:ia M tR$$Ѳަzڰr( L]=co{Q`Є~H+w@oRUzp)0}5܍9ֵ@*:؟ܑnH2JUkQ B 2J)hԐۯ̿f.ȟcL IsV/ъ4v7Jϓ۾c~5|h=#sG!Q ]Fɶafzj yK_;MU+6];/i.<%U0S&4fk7#L9;ӄL,X 7ܘqw%߽0H;~`o=pW{]Ao\U3&{4yl"[?~ΐ[B*IK }=I`L" ҮKw7t3?Rj1bcO|z[  ֋fUY/EMZBgCa8lxFC?jh4>˧gb_]埤o.wr *0 0IN__J/zeNbwGrGA?>&Ď x8rOM@$ԗu>3i>1.ʼL۞)ޖ?1^|ƂOĵg'B?fy^)Z$ &'9-VJH%<}\1ٺ8Xc,"bIzU`/*"<%fk@Ƌ{S ތ5dO~!JZgGR ͭnPB\:p^X,NT6>4BXwK~ kH$FPFaf;`QGS1^xr0z_J'Gq n6l:~:쫹1jٸYyι1X%̾*ґ.DՔҼa]p^ZL5@r\ G Co|(o %l"c~Ӝ{,DQs }&HN[8<[+{V 2"Gd"wAS5lh= ]Ʊ=aĪEI]vƑe P߯@Vs e:'e5JAuڥhFƠ_YRfy%I:<_W?lVvR9$BDZ$ld&s1)Gی .'D.f b7w \c&IX:~t OqyC}m9?PHz܁ZexAAoh 68!g qvn27  L$1_RЬ冨vJde6 ʃ_1 WjuĖj8\) V13ͰJxsk㐙Wy۰ZfE/h w()L"@ ̐d2.86 /Žmi-ew}t暄 l[j%<-+`f+uuz5VoNqQFSOUQ-{Y%wH ¢6F-6 1ֶ7{+By+};y'9 T62 b7DȅG ڀ7-S z5l}`؀}.'6jXhn2}5ށlk{τ3wofx5G=Ev7R*R y0r4=4gB8crD>E>R{ /f4h>'EF.G#vYZeZ}'2Lg&FM?X,wHeĜl":F5(ua.F,k+玕); ̍-O]2خIRG7u:xyzm\:?]oqɏ7 P=ux [(ZГh~59ڄ?DhHS%t@A63=ٵ(]kKElAVb G⳩<輼J|DlfT_ wI'WUf)[saźXXdQq_*.s_i}Kn;[3 B0M[IUt+bABbGvP1>3e89^O~"Iy@[q3z^늟ߛvc|8-ϼCV-"M;Qa @q^ltYePޙz+htwE6VeЧYQ=z1,*<3[--U:'3ʕVj=,#[/F7X+qT4;.i Q5bb"Z8y(Ȋt-9vd4hਆ_!;I;pC͂82ϓ; */OSւCI Fwwi*1\$֣ [S.D%2TAQb vt @Phg>w~,uj77 ;+'r? ֤Ű"F-<LAvˢs2C@!G}$Ih&< Cנ R7g"N!V fB-a,_Pblj-7;VX~QxEK R ku|\_N0ӺuU2YU ;ǜ9{ww.Wƨk(-nzNsgZӸ}:vBY&k ],Xw+ ω%oRTQ`KJ98Nwe_ ߡ̑!_ꛀZbC&k[>-;rZ]j+?r,UQ*fCy@SoU{z:xrYN&f:CtѲ 'cQ哷>_)iżݡ "ΏLpH2W57P 9&|==AwX>-iwf26ğ<#%$6i",cgB[Ji->-~ק._7&ʄJR$>Lh ;nU /N/&'o` $-HHwY{W1tdtUR^&Zw|R2Pv|Q˵cfS n{m ~tH,ٴv:@DGaβ/t*Ys($HLY9?tE`LZv SͽZ⪛\]~0byhcF- 84uGs @Zcng+av@EIdY{1r8`%yXe@:l sӸ(lZ)p>Xvǭe0('QwsH5[K & ={I3WsKiO}9$7^ mɜ ӅHQb~rO.PmLd0{X_2BVymԱpk1%Zh y᤺YIk7/[0ä ({b")Rc .1HI}I`SqE{JLjoEUCtv +9r,9=cG<bŭTPUCW!o%}7S1 \j@&),6{Pkwxl難q!#ю6ʎyBBHMÓ~Vef'G!\+χ@[oHRF9jGqYg(G}ْFɋS( EcHu5)#RƥIO.ctg ;[;?ʤ CBR(P̯RqyH/+}V$SwpZn`=޹4eQFƝx-q|$2K$X5H}hAȓ pg"? CM6V7>[͚$y\ZғDY" EķBF&C:VՑ% $Ez=lqf06j*XE{??1Xʔf"(6@?4^v|]^ n$KSg-U53f*/Hj)@$
    %*;$O@8p kg>(~?ł"!C0}y)"Wh*fo[gԫ N&e+&?9K)g3RnBi!|%ɒNa:h[ԡvxBXIÇE3>9 WַsA3ߡEhVvwX5ڟٚ&O\)))£<HL*;Vd%RePw 'f'1]_j)qG&Lb3T`FWJP'=-IϵnZ&Sb(lލD-u|vQgzc5Ť;fԫ'EM8&i޴"ioYy5<2AhGi&/'~H6 o~uh?L8| }t\iHX̲F& \dž?nN9P^RXxv)? zG>U~R|.TgxhOk' 353&aQNwhԶd[7KnMq CQJoR3/ K+4[+Iƛ3늆dXZj~xc $|  Yb1Y4y v-M5B d-MDq=Qw)2b-Gq 8WU0@)z!x^=fII`ztnJo#8xr*d9lPBC; Sv}ˮm|*6I^0Ѽ}XtT|/U:A4SB;MC3Na AP?^!1J>$q=UdP?VpTpsI.@Ao(yx\6mY6B"0&}1#5Z]̍+FbGl*vo}CO & &*}xGᣗ'_Yw2ۺ4v#>3r~ݘ0Y+A+# b8p=OF?i?-Jkˆ:0U@KҪDkϤ< pv,Ą|*bY^@+}fo% -IbM(ʁd>!!`otkcec䯹$V軏 .s.[f6'wom, U kɚ"qNSQ;f~dV9̿sk eȩV547N]8l3B{G@(Ƿw3p21zMsP"P2Q2|tKvRq1Z(nٖe`oU<ĎH<K|ؠ3[1;렉&֙D"Vt9'ӹ%iuK0Cup-ʜti5 JYQ~oOVh0O8LJQŬS[) pŠ67:tؽ Iց]շ ՜B $,OX x-Xߙoa07Q{bXn:b4SES=v`H(?[p# d,KrtѸȓSH0'rRYc4C J9'aMhm\||tا=qjJPoHOp>d3pRA-S_AM~`S/=Zeɸklpum\WO}uZ]S] :@:J)//h2I"iS ?WhI/IHv`ٷ[OQd56ea9Ӕ:\aǨ޺$) dQN QQ9;7F,kܬg5f8WpQn?]Etت\Q8%_(|!6[-Zs  aQկ+?H5̡M-քl?՟$w '*W'!n7~dYJ9P,HbU-RUE ,q@P}g>Y ڡ$Mvc*~Z߂ n#^rxɪ Mm6G^A jcݳB>q-ܾMzl+1a {N./i+HIU=H˞am*-4X9FI<cʀgdY u7[VeodIP*\dਹz cQcLwawͼ; _%+|Uʉ쿃7i@5#<nÍS֔[0!B(SU > !By!ug92HY \w!ȥ }á v`i;@fLt"e@\fKWcEpAKD5Fi=e3,?_9P-!7FZۮ)e#?h'*ZIWkb@.<#w#`:Zz_ F>;u>y~UpnxDljD % lK0o ;IDž/k%EŠ󅣠Fe_[e=,4ss]l}k:k$gV^TDǖ ( xp> + Ee5GEa#Y1wWtl5pe=wc\s5M2QKm`UOF$D)!fJxS7;7 >1K%K:3m7, C)ܳXQ$s`wrO Mڬ;  .p|ʒv)(dʊPzxA#KD5B9uE?B7IM: Oyh3)$< 1GK5dc/"zT=bZI=jiB/{CDlC=CtQ}Z+5D.xi0P fcߟY#-޽Q_Gv^ENF> ~)Dc6(;@ e5=\ ~eƟEc؄I?a|cJ͍mY@I!ڤD.<KptVPؚ fLJ">sZ+ 5<BJÞ!aqN_ x<-AJqK$ /Bjf{_'EiBF0y&7('1jDBof:>"`@~I[&xOh۹'-wk;8#YV2/!^$gKkR`J ;>aϺO# '6ЀqiNuFVnM#k|]wxIU1y|HPˍϤ<w; N,IR *TXbgS }nq«Yfh!S>#qmp\To9&j$u {lq6.)SC_iiw˦K xM]jߙ.@|i?BONIQUj.жuhe36$RX\O&=s24Zțo y/H_||Гv3+5*&n-χ#)w󩳆n\dlL*q ,{hIM!*aqx>l%qpn#jTr TQ8Njxu*MNP+ĩŸHe~)lR\UüĠaE\lmX!c?&1Ѿ"y9]Fyt-[4m7M[puFQG kNðߚa9`>I)FMZ!נii8 :h`L\ʹY2)cd8NtC#ㅬy<^so(W8)P.'nz69V`z?Gp (ˑښラuNV JAK-7+12׽ Ȋyi9@4 %e. zEV{"|RVZlB5B HGMo{-$0HUx@()`)ĭE8[/ؚ`pELbKs ~֜]LDr#ݝr\AA # 5{{$FZ<ǶgX=[d esh!z2ǟTaJG-++Fs+q_cYJMФ)Ӑ ~y ܷ4\*PZSn*mwջ 񮕈.-$C |q~f-Y$m2MϺ4 YRjlSRf*д M 1?PzB}o, mη(D}g|FR5m 3} h# h+Hr n7k;I(:bQK$*X̱Etf1-Xn sqG\j+x>h\7O1dDJt^S G,#qF&D#bGo^Mģ{NfkQ<=aN7*SN8!ldJvjbcm|Td?r9'|s|L5t1˜|BrkHEg}7|f15QNuOm(< #ʖ?X{iD;;@R9KY`;!%vq# RH]󵯵&;#XNysYCW?1Q0|$]sgOB1J.y"# Qnao.}[Z"1HF-ĕGBFjH"g0FO X *Aë{S05pZ 'ΝKVޤH.{;SEYVb`Kͼ$y7JNLiF* k1aYRAPzgne-r5Ĉ ب;x ? ߟ}U0ou(umPI] mm}6G$q߽{3^+72.Z[b1h?hMXlR. G9֬dhpVj3H/0P c+SS8-&bI)m;58B=Md]?IBn y-6~,f.̋ g`mhsq>Lu{QGwzRIl-!BKX;;LOUtFD>z2)|- _t*S\=5)~1{h;گf\dN[{q;n˛\r+W6/-þ#8$_r*'5+vWiF7dŘȆ18w':obۧwpWEGF8i;9ua]YږR9=2Q-Kl}X)$QG 3Ңu|Z|%UgjVA@w"IS ,_._·0#a-i'׳cuNytHC)V BN"!)fdƐ.:˿)'5ِ%Cx$Ts:[^TYݼ`ژ,ǎ} NkDB=O}Y~!Qrȕ@"S3T&_Xp.?KX|#vgf~pǺsfup:NށD!sF|"++*jGx!Q{%˼_^/=zg%e;O|B%OOyQu^}xTZ/7nN'g:K&AvS.*f%&7{~E\=p<׾e%ZfB(#Gnf$oM|W7Ŏ$$" jG:}fĂ0`C-+=Ru Ϲ==)64M5L*Gwͤ GɥY\4\a?ŻIA;lTܠBE~הfG:Fgr6c*߭T 7* 6oRyk[r'qӺ>8~VY_RQ'k}y!Z[GUVtrW6Oit5CXpŤͱ(~\oХio0'Se 7A|^I^b}<.q*sB48 Ѡ](rƟ?::Vp\SQ2tHt1#˕ qdB1zbmQlW> v_ \'K ZO'ma@,_VD?SkR;,Xi0tZˀr ,PsV 3w$!7miMobU =na&(§:n{I]!JD+T+( -7e+yĮaA6y?tS5-]{VL݅gnYKEurA ZBUh4'($4PmWqPvx|(dRǩ<};=cquIJ NdlԶz5Jֆ=7$yqO|}љ0N <=)#NԬRrҕzaŽ*B3@y<:GiTa֎e0nfOQ;-nI 0y3s:Z-USYdZQP1ĔJhJ)"/*;FUTVR`/Z+P%f >8jS w]44lK!80&jc28hs0Ž^,^ZNP߄Ptw˞=B9yA'!1 VIYB #0ڔL.2!z'8(ICSJnm&L8%iL,OHG7. sfZr^.Ԏ3q`lL*lTK)eZqp/5ަyz:],V@qt1eSabq{Y XpdXO">`!ެ_~~.#֦:pe{ ȟ 6]+$5gsSY72,[>CPÓRVOR6^]vp&*$T^E nRCM+X}yζd Hڰg4X %.1g#u\[+{3ٞ Bfslt!XǿALڡBoNX3MRB( CVU F ž_S.<ô G>pvRk^-ull~vo5%K\ᒯ G#Cdv^R*Ff/ɄăQ m=Z&EO_ض]įsb@Z/'>tk)ߓ&+.YtM-#[* zj[RBRz0U{dV ?.u͕B}ytzZN!PEČTNH҆teXfaxQR?|8 ϯEe!ϭ35WMz\ʋ/sҶw%*C6;%6N@ i#Tt{"jh`ξcOW L{pz7h^ݢ1Oq5F*%V rVӱ}ubn޴!EBdv\u$jL YQ"=Þs- @sSO}Jb L Q,9" Gw5Ěq2cFm^n R&0oc)L?Tz&w *Aߩ8 nḻp`c\+obȌ2>͗pf\$I`_xۈpX1@oɲv"5>J,5̈́< 4z(1%>iaXNm@F+a⟀=URNni=ΨH\*߬P0,M$]caZTN.j˹hASKn~;Oo {EKt%):.qQZ3&AY{%ˎŒە9e(6j"A=0Px>_EM4DAr]zڥ<%Ҿa: %9j( I*m2'WgN&?\ Ǫi\bްvD"nU6J%h Q=j %N̓qX b*fA: _ag 9`]-dz3G:Nf1_q3:.O$ v Cf kҗ;Ppx$7n<ySUUʮ)EDX $ȓ'7p2y3Bð <(I#1rKGv_03gA*1л"F(+{BZ?QX  eW=>aHM tо^WQA9Qۅǜ]W3ZĝGb^cg5!wRwM$>C Wl&re]l^Jzqi.A@+~p_8 髢)ok~\e4:4b>Gnz=5O;V51 PyNhNq~DM)?n|lԊo{#_9if+^P.멢/xd5( ,ks;tr'ۢ34{Am`y|@ dlĴ-oQiv;)7Д^rUc̍Nx-ӽÂo:V?nQWU|ҍC@eL٦:d(Ir1}ja$!BQ]`HƒC}alнڈʧtfxXn3(R?L4//Hݬ] 2v m-kAJ| ׉L \k7f,n9a> Y@+.ՏY׺6a1NJ;s!qm]r\#$W1^VXc8 LoZd.0Cшy^v$J1׶RMI)laLMnׁ}5SdOa.N`nDvXc42K~xk+"z {D]s<4)LuexDyv \Z6ZxTI cxzENlvA@BWVw@fzQ #QO7[KrwTtYT3M'B !?:)Rׂ(SD/g3y B(+y.TQF-T CHW9O)rȤ6.tpQϥڔ/"+1tݼ ;aֱ-øKXBzi'qR_vҌ(CRӜߚ_X[%OlC'n\ނ D:"]4e$t-P%飜#g,lx3dk`YB2'z6bTOgԕ%2}6v_GZ[uj7lG13m],ʁ&A0YS=Y䩕iUUlb:Fx26zcWst.U:qy:uQC&b{zBt}CmV-t۫`ſA')>Gŏ!eGNeX>z,1?BeEWx)L0l)E!RS+p $xӶtXwH:>Ъ-JtR5.!-7i_R HP _>JO~ EX #@o?7$L4&쐘uA*QPD)38F3'ųi + ]d X'/FW);cɄ6HAtRvFc  V0})`fuR~k:ףJcªaU~ƀ"\_®&~5[}ZIVV ?TϢr>Z/R5ug [raOs:emits4%@HF_QHon:\q3δ^ 9.CL7xo$TSpl+i0 M/x Rԗ#qrOYU" ˜wW%hO$0b kh&ufYrv*ېrkqZ@YT =?BjW#3+GAұ!$/EUNI澧]?&v}(PP}|fxOo;!kcLH79 Sx)օg< f:`ˆ mY~~C1VM`|uo>' *{MGZ'.0VT\w9 W2a܆BIcZK@ dp;?\ q_1Jq}@,1F(7R+ Dabͧ-aWGk_p{Ys4J!̭7aeGXUoRL+6R4ă/ƅ04#Ya{Hn[%9-#>|ԍ8A^Pߪ~GE:w4+qQk-d3aLĝx.+I ()-Dl cictْRh6Rk$:{\pI3ME Q)f;FL~HVlA_ D_G&^6zD6b;fа;f=ϸ>P}O\?id5^W!E*'TZl !_걹9c*g]8N)p!|E5דOV{U  j+naOV)$`1duPÚZ+g㼧 g0QۥnajZ/Rk"am09#ީ 4 7F$fл36S*#X&Ӵ=σ7Wdv!z:öS9˲k\y#B~T.wt)tpf҄N AۙYIx%VU!cjr'mf{6{t%JCJ,NT G2=mR=p 2 t 874no x~A. CQR!KRF%42m^AG&KQ[W:'k6'7[B>yk+c4|l ={ pI* 1¥)|,!UƊ{.dd>Ko˺Ve~gaʊ|y<"he\̩fFknJI&_, _, 3EE-/S;[R*.t] Ħ0N$WP9#<9%hkC19}ЧS17t6˗Lh6M_az68'\|ȶt@Gp]Kc#VsIRbsВ.w|34NE +JگmMXb~9qԳtQ`Ne]+m\.jp1iB__͕ '. aZ4o|ҦӘ*ySp>4~?bހ{e)M@m}4^EƉHiƪGlC';DHk-%[/aCpҐdt"vݖ̐?HuF]wl@= DNQfxgo"P`ffJ T5(R֨S+5`L Th,alqO2  L4SՆr -=hy~Ӯ{jޡٻ" )71P,wn"\Z3xX9޴ JZ;csҿ)Dx؈ )d?l0 -2TOĂg ue9w4K&0]zp`znTcWZ nsB1$A1bH#8(SL+`&Vae5" 23堺j>JejCZтx~KJ޲-&>g5xȮA"U߄)`?bɝa@{skge18:dq+h,\ޞz@"@_rc 'u`623BHRԔ]=z3ÌI\$z !C¢G6uS6ęJRQzY >:D%j^ ~pXW{B83hd.C%q(H`AmL#tGVv+{mx;PPu{™3$ճ(J¨.wY!oecR* Q?Zl kcqPؑ^2.L[ڐ\\~Gz?b.. ;[`X0RhѦ\Bb;|h,'r5}:ٖ?ƈ# - zoUyL#92.PBIoodD-~ x]ڋz]B(]LQ#¢^QG@Ӓ`vîNL(jZHm·v6Kt}|7骐eu1tOT\AnJOĩǫ8غMX PCK^4/XTzUMGBvM ߈>7 _~bax6I(! }^S6B~eG^m:9`_ғyEP7a|Wb=hTZ-I =1SG{V zC;JWFb'-]:l~mtQv5,Si59Г .k=0Vǹy6Q\^ 4{2`4!l.o F ;d⯩q/:6UHD(pk)/}(s49@]m4Ig. &rwA7RDLO7PXWK/@IU3HTk%E;fI"}:(P"'lpz7ZϦ9=\1|yH?^+yQH'ЇR_#۹]qƫݏ9tX4nγn hK O7֤9n:TrurꆬlNf}q 8JO̱yϦ7Nl T?[]<#pT$Q{rvrHǝ+&CȷHIYjd4:QK!> Iw3dzʙ=2k+A+`qm]՛:?b}xP^Gdx -qf]rLҙ I5ǔρL T(["Ӓ)F#l;ő5w Pv[5,X!jD49AᗃвIx(*4 o哼KӲbt[,ju]!uE15}-^{xi;-Ϥٲi ]r c$xjp `}[CHPIbW^/9Rt[ɳ] }l<Zb{Lя6 5)1q8,`ST-[*/4%ZMT,Fn%d$ᅦMQə9O $(;hֶ .6L G[T8BY~βz=׶R8Ych>YьHd} <7YaTZGv89Rߴbp.Lb05(,kؽ*dEK;Pj&]ݦ8Rlr"=" .ݻh+n/iK$T{ 5_DindSxOMY 'طܜ]Ry_HV]ͷ,}"s噟#!HT.30*sL.'(I!Ϧy6A vl$*ЙsӪN/Q ;Y.Y>MOJ#:z-Ċx; 3f&P'ԍeLԞ,*{Cp_ų}J44jjr(f*9d0:X?~_#"\ʭ1֍**R3~vN LPk)rHPA +r0>MVKjp@־~|- 1HH5D`[qfT߀沫 ;6Ğ)[PA]O1^v0$Jx~kfh֭4=Gr??4$# 8S\*Q*_>D&&C@ԿI+X?%Ҕ d0ɭk, R2 7iQDZqtjR"bY8a.\ ɿQky_ :k1=7U=nu*bxwPS1&\# {8MYQ́rRx6ndk­/?W2Ce]+xdޞM>hZW5*NMPHvf"F~c\ݨ"o?C +plH1L/z +(edfGO*A~IN)"45NRr0s 4Y+zq[JWTNf!P\v0e ƪaeajߙ>鴫Ky& T63E=mjOl7֑\3`Di`.Ko]j;ȭC ($IA4 583D#˃T~?ޗ L Gɿqm T5?#F@q(;hG/Ȝ?Qm`6Fv7YܬZrH "ђ0'ͫ?U)5h2d3H-iR`YQ.MjZ$mβ/89o›\a EP3yʫpR uS\cpr-|YN)Ba)GK1 )AbW[_oN=Gg$vC]z?SB|*i kگ'}`TN{pOmobޱC?n/tY:Q,T]Ri$mx 48nf]胈B`xLS0w]\>܀k D}v{Kap3(Oa=^UwŶ&HЍum< L\LdJIhX("˦7& |Q CCD ܈ wzL ֠AE]?SXq-:\9p[Iz n]Hjh `zMĞ U.1ݳ4` sS.6FM:K?d/#wYUU­N)=3Ǹd"4s.]nЁ*Ntv~Qbg ]$GJ^Rbu'=h\)F+b-@R&P;ӺP紛ͅ'W9Nc⒮"Mg^GirLV[]Pt{\] 7R_xj6G7X _㱐'*x/׬ZxiK=QtX0T4hG$ =AFq~+8ZzhjWޕ^LyM fzzƐ,:͑NV-oGzX5X.P}gB/y]9vח=cعbD XH~Bztυs·[Or]债gI۞?NŝzL(Cܯ{iJn3.#'1e&=0&`E`~Y>b꣮Q{BBuiOM*f̖aUYݛFK!~#qEr5W'\S>T>xT*ۧVu1 =^BTj *u8\M= o\̋.v .P * tpM1%=p>jBp Utfl듔 Yttt~ؒ>D qtCOuM&[#_K-ޱ϶O@+ jt1w8 jKft=uȘ8{ȸ{1CE`٢ 6/UAp)^ \źʭRLV\l? 5TP7vq% jjltyvM)IܑvAل*_6r-@}o`<^'7fIý)Տ r.Ax*v~P|Vpv"9}k=3[щ7GmKk S64;=i#RvIGD"A(^»# CJ#pԛm(P|DJhD}l OlNiyRg#QzJx鵬HD肕,ˢO[ 'Ͱ[;ا8 pY-m){\L_0=rP{-+3=T&EkX`[S[cie |Y٣J<!oop4h *H9;0v(#5z:ar] ~V@jn0hI`e}jIeU4ޫ!\ֺ#!KN=rͬٞV)jżx*YHen?YDw%Yods{w9#…Ќtƺ5WYaBw 6pa8]7LR{DTT<)lؚb /~S.pZUB:u ~K_@ǾӈncaSK2Iy䂨縨K9n벩7}r[ȵXr0Bx @ˏޒ]୐V:fqyi/,Ho&}Ц5 X31m`OQ#'n>yi)=u K|A1t> q76^~eL?II.vv&dʺLt! x34 gZ@N< Gafgֺ*uVBʌTKĞ1)b<$ug[.)i,yˇX/Ӫ8Sq2qb42-/l D*!w0Si.qU R  #D_<ʏ 8s͗"(e2 E`$ރ<1^7=v #p "gn)*B FÅ<~jˢIŷ$&?>L/g\8?af?/m_(VfL /S\(A]} Ĥ~}a#M1^^EY|FաRo\q1U4uP[P AA$A؄Do9R~.#DF^@_<)i0Q CŮZg_Vu;Ad`H`1edF޲A_ (f u4xIl9mC (Dt(ў_F>H[2!f]| ՔDlhBp}p_pՐ#v>%sTnCҎudƪĵ _v5aC3c)V 0 Rj" gK3 H q}; J1opRXD^o#ehLueW*H)iԭ]$I pJ퓩|Q#چnLˆ8l V6,k"rݞEs!:]*3HA M2HSmՈooG$|X 1c \)#E?J4X Oc}u5Ͽ}{X7Jn|"nl\7nD;VcV1FɷKW ;\S컣b UØ(j.7 .2a|zi[8uپE8 ]uX7Y -@TJ47JdCWG?<-#jЫ rkvl^cƢP\3Ml0z:U/u*REU>2ϺGԯX+>4gKZ2ҭ;_u绦%"{5rqYK{暨TGϱ5󐻏BG/{I-V9j!'4r55 Ü)GeR87*'=_үY$;nJ^e !,ӑ2Cֱ yrMlYNg d'Ŏ=#ypk%wPP=f;۩\-Vat,~>*a?iӚA;s1'<T<‷"ve#(Db i:bG.ĵJx(GK*nڰ%0NOu6 j>o Nsʟ9Xۖ'B2Ȼ4.-^N_(91YDU]1B ?yma%Y!1:tdOm<6GUZCMq{ D=T{:g4'&? FX6 {& J){oNJcX#/eU/˒ '{Pg WMU6zf`RR` kvUܤqƉk$FX\\0ZHgyǝÙ='vޔ; C I5'EF{?C:ti+:R`z5U4ԋhU0Lټ<ԕnRp)[]$8GjL1QԍtJU !E|#`e|b=3,YrOCrnUyvzh!h". r-[,S9811=1M4ǧbЊW,˹ =+ y?a2$pSmǀ"6=K lFJ7NPG =|^Ft`DLJ.$4c=ZCe1U=ƭ6 { 4rw}'zҔY<Ƥ\uߌ2X"Y埃+d> zذeΑ[`ha+L0}[z6Pj5_2s7OsU!:{ ;7"EpPF-`&Ψ[tS86Zu7 䏦Bnf*_2^evvcY-aBIt{6rK-1bѭr+Z33>] oGW-V}A zLMDӉ:c[u؅Xx7"SUl1j3+0cM E 8`Jc6luY\.t j%ϭQМZ>KҾ;Z X)ЭO#zTC,Rp S[??P TQMҬ;g螧oC{䑖[OPa*f5Z+:,N= b˥>547)]2B $jL#P˘'f9ۂms4_ZvsDΡ9&f4Q܋W "7jkdIvYRC(C RzXͨ0\%dӃF:!בw a['&1X'!brA,; b%TgRJ;SX]R/׉L+B?|f*n%.w؈1_Tx:젓K?3_ayPV#Pi~ͦ(wi[p?#,7hIm#; @ =wW'3O" h0H!UI_M?QnPp BVX3O#äp|!._t-+# U!6ϕ6./ &ThAJ@G[۾quw.3HNE鰐۠jL@,Y 5d`'Ջ9|`:Qf&DŽdv: ͶU4~$ן:Q/89GKJXh'* Zr튃9ȧxҏvL^i|;=>ϫQ$kUQ)Ay[8ʼn13YS[kDf‡4 rK!R"+p R[U^eH򔛚I6՗7e)7dgaD+͈wa]@iNv؈UčuQ +HQ!9R;K&: 6iK;r+x޼N=c[Drs?4- ~S4B!aOwWh~j%2Xb× OBahR} &նv(-yI(O+I`{ͷokfY9Ń 33jhoC׽ E@yع#1EP-[ր?4 i|& 8@G‘E"`*JefXP!o&Ł nC80 !zqN5%-"QRtt~iLQ3r|WDUwb?7w;/){uWPәrE D_GF3E۪ŵPD%6~gUJ|Ɔ)F/ u k;Lĵ]aQ3:aFd!TZ1VfV"@zDc{E|6Wf6b'_IO"45.[V(RL>|Ѷţ~eAOc;658Nmۅ(ε$L)kLh? -k TB9hȝuJIW^Fjw9_uIbk< 0Q ^߆'9Z=?ELgg}WW5Z-W%dMh\xJ,pAdyX1z1e̿i_K\{uI¬b8?>(G+ Rva`l$tn<m4Cm].r_)J ?P +(r5>hRL~42+bDJLku db_,rY?4Q[+Cy)d  "2d1ظEwM!55{uMY>~gSo|9_Y|9Ba5h&hEZ<λSpc_J}krf?j7ܗޮ;%Byf=֡UxYCxHpxbA=m(T5-#6$0DQ&d“STIx"4O/] /Cj}Hz9_%si#iPM_$@n$>dEXPŶPuc]~4ct_qv RLf~Zădt+ҁXMEmePL/W6/Ko5YxJScIJyGY2<[T=x& 9#=ZY(\K(ܷէzp^8̮ \3Jzl,deg8+ՊS !:GR~qj -78Zp~=R6&}Oߡc H{C~.!3!B _HMP\Hv?vߞWUr^3+~75Qո=OD).]x4+i&ڡemH9oيiaT30eTѸm8wӧ`J_N|b=Z'EԡKѩ7^8"W>-{ZyCiKAjj ziV")^TfXOE^%hnPm*wb&92!(}KfEW|IsNK/ĢLge3\ڙZI^Ia @kj cjC.2yHbM.'}27_(az!md-ک 8PfSw8|Z\tB<< WE8 |2&"%i:)uG6kkV|2ccnj)=۪;>b;^$!!ZI:x$1bZe;a ge-RynPΔ'2ɕ6>8xG6窵kډղ.LM?B,jX=` 8Ïk\xc ֓ZX0% AB3g}ص98zVkEX*[&``1$ٮV$l:^4{Nzj ^hj^p>+g0ђ.z-y_@5?*ysCzeьxs3oGIH{~OEcIe.AW9vqėnKS&8+!rD,GOBu4_ӵ/bhiFtJ,& 8O5@X]Ei,JpdZ4kJ.?5ۘĽJUg@3+V8E`Ig8'ߡ)ȖAKCoZg7<6mgMHXEs{T\?e׃g MVB5qrXAv,InJ#{vV[;*J-͈8'idPSmB(#,9iAqUZOzdoC N'A87Nayfb?n GwYFM~3Y|K`~nPޡ&3 }!fci%)X*$Ǎ@t {kmҘBRڵg&B.4NEqYFnDCW=Jnx1ZdA9N+M^ka=dp'CɕKpy:]HL b`KT%qoHsns.ϫ ZP&GD{Q7=쨥UU3^{(0fQ e,=~Q4#\,&Bg^GB~P]^{' IsG⬏LqX|*o$%u uAK)e?O跎$1(7GuwR5٫<(4MvN٬rؔ#2-RxA7 иgpV ڼ .M ,tVS줴Z-]]onICjcc{_)jAı(5 @+;m91!fXĖJ`}|$'*r1Ryꙕ>r{"AȠ* (ؖGDurQ`_け|hjKVr<rfBWF@):ҚPb-Wa>&~ޡʕSfxFeiG>s>wN^\ ;oS+4ڐӱ7f&tAJ5\m=Ϳ9nBR:"ֶd\aG42'QmAĔ OZW/b)eg7z-T7n@jXb p  >?a6IWwiģ#"Y }Bs^j4c3crí5D}|s@2۶bt k- *GB|$ȼ(Ui2^>cEij+Zw}_e8=@M4zѯ3?ɤES $KS 0tEyW"C`PbdAIK:yю 3U%63PJ ]25i^}1DbP 0%+$`H]w`zڕw}Hg<ʞi+% r 6Z(t၎T20;`Y2K@OG4eP;}!̟fui`(OSM=4 'v\*`Cdme5r?B>uv6 =D[A|=G]8be6ǙT. = pE7%!}@9)*̭ԭUQqLܢˏ 1 u|g =L%as K'oSAh,jbekƸfM C j3E/2\c$l퐎rmFW #bX V:Jf%b6xs ˢc5J%PuʡOœz7ogГ # h<8_{L.eу4F؆Z2mলh֏΂]ךq);wwD% 94oM@T3o Xњ5(,!AcqByv3+,N+*$U%bKp"Ɏ#Г5B̐G46cf6]^|?["@զmٙs}K#8F2 tQO8ȭ|dxJAuMU3G[imk&3>2d [ e#Lw|wnUuu|?a|an<0iCI3frg<^KҴcQMZOR|-NeX7_V'X-].8BРdrEHY3NͰ&$:eqgc6e&w6Y[:\p.I͐W>”z0 bE U-ʹwbPt= Z{GcNJVOʻ(RØo`\mQtbp2exQoWby^q v+c80.mܜ;^ N,ݤ Q e1ZNJ*"b-7lokV%5Q V 3Wi"zN=DlKXAŲJpi8&V@vjK d=#"޸#NvoPtk u4;0hcyCZLܢagԀph;}+ DnrvZrl 0l@j]ihzf =0n^a~ްNb1%"lWB"oEJ_A0WMW]7xV}D2nf.%4Nlm4GӏADF3202'_&sƀ֜v\UڦF[p;{dEy{|?3 0 ~ԑtU9Z}E:J;"gR[{1XZ84#gFU7~^Ͷfr~xR"OAj])Dpĥ㳱~o0eE[ZD_@tWDkja}J)/2Y7MjtNP'=_%QqxGm@f`iMlE V}CGo<=,-g6z#i 7Nnj% *# ~q̹Eɧ9$qLJRۏ̀x"Y-&f)9-dz'!֚DZ?t*+uc'΀6FCУ  w"`1D~$"Rp͜(3.(4bo,+l`eP,jw5:iZL1va,m߄xK|QDZ"d$4lIBF?0PHRWo?yi{ۥ3N[ ƕo$ݽ:;""S}[qX0R.svy@+8}!V@_8`ŁW L+w\0 #h,rg֖m mm[Bסh)út-c ϢhKL 9fӍXҤѷ"+#?ȜN&Dn2fԲˇ0 Tfz2>C?62z=Tyw% u6%c쫝MR}*jw"} k0{T l XqVqCgч]Uq IT&bH9FwaM N{tVz1Fa`u*((Z}ذ ?s'sF! Ҵbo X J XPT xA01]֚x s /hC6 ?N~;vP_ԓVH^nC-D"KXόIֺTRąfdY+t1V@Gٳ,H8,k_|LűnA}5qubf;Q ڦ-'6AJc$dJSI /:%{ <664ŴYO!a,؁n.̓lU'ݥgs FvN& >Ϥc (]T;ڞa^DZоs5z]m6o%/B'O %:K,-ZwQq!Eٓ[3 a]GeamciiȦݪC)+}뿪}=$ =(n*][4GM8j1KD|mb7m:6Ա<w 3նCcHWr{ZdLNfoJ&ӚVt~{#ube9.CƿxΧ_r乇v!b9R@ DV9fAc!\=GKRRHx5~e~8RrQshś$LSSpEB?Nݴu} ~:>4МCg&: (:v O{1,ޯ$Slc5?6gxׂcܟ i AVB3`Rre'rm4cp8V9PX2G8piS?=/aaMZur%CDDz I_ U_j2gT0mO׵ռ*[KebVڒ+?C8-ܮB/Hjz:oE}'EGSo_ YžSyP6gs[xmUUx<x֒YoaWX0bul6{pխnt?yV7_Y5zv h` P߶dsQ>|ܲ<ЂX5bzG,P (ZWQIc*7j9KXcMl}Q-息3 P w8ه3~kYo{"ϘFwȿ*ƣ_3R,jyTqJDt'؜WJNBϘ3xQg p MAVR 4q=С T>|~y[ k2O4+}S8#j=yn!]~p:GPMb*:"N"H׫X-}$;\Q] uS1V?V+\0 Κ008"E90O(?H}ϗ@6θ? dxnvD{O#oE 1R恟;TEK El uMTU iזvmj#? gaΎJf qwoNc>T4 ȥ45ը I-q%fmtFk^ή9?a'J1_O%Z3rOvU`d|B_}#rv?M'򽢟A԰^ogԛ2"c@KAWA,Փ0UfzH$$UzzlXȍP{J:9u#$av HĚoa.h@<%{#y4ޚav3^, kQ8]j Y-wZS5}\ʶ;,8G̓t=fj {Y[5 lٟ恜@3[ĸuUt锚'˜~7Ei,5"o> [Ucwtq,=q]ێcL`wN"7lJT~g=V9VoP+pyt*l:D %@I\'h. 0l8mt͕ \ߴNug 8 -iqt,mT[;}A9Z ҏ.PF&mLXofC*]> mOHt)G] leBbT|u\*5 ;]~Sڧ^Ou|!!8'Ԅ稷",ikha81'HMb$,m?A # gwh;ұlr3JјMW)hyM|udhS_2יOKsDpoS$ |eX; 'Uq/\$]K0KzBS 4G`2Ѵ#nnqtFJܖ>ӸC'd3|?y]TU,? %!8RHgFϵiB-N1sp\g")N.<7q_wB;P@jh#:y$pm|F,5mEpK16 $&E`iO&V.Dt+ XGwDtݢSyV#Y3ߙ!@ ͟8O$bZXǧ S-*c87Rg"ʆD/8Lk& g@n>\dJ0]'m1"+\A`Di}c.[Y6\A]c[+[5@< O]7]Q#IxSޅU*.r^vݶeGP$E 9>.=3RӃi/4@̺(ɇKzm!)M1UAD]}~{cКC'cifWutr>Mv9kDp!C"XUa#xfy~p*ɢ)(G_|>VC!A5vtc"bB` ;Yw r`%D |Pwv[~UT N)-.7FγgEb,T_N5im ;{- CN({ۧlfʼn: 34*)۬BDBw>e¼$/Coȅ(]xzg8Fϣ,! |sK1`gv1U܌4-G4dBOv\ O+Wwm$؞kGpW{t0e5ƆZ]c-dc/Eu \ 5ۈw6{,93q/ ~yT1/u7%(V2!*ln0W3 :ز1Y]|mh\v@OU GڻΣ n)( {õ okﲶ{­am֫i=Ż/aή YbՖKDd,J;}(K,&f_.*o@Sykb]{s m\c̠3zd{8J!>Eձz~ ~h!kG*`f3Y\#.^t)wEw5&";}^QȚ%$&[\ 4=VL%4oE9㢺0nmw 6ٖ,&/w+EYOedl?[Nͨv慆 ٰ_g!fQ aé(Örwn5Ih-p43\j}*mWT3T-Kry3 Y;$`:fڳf 6 ޘua-RWp!a(5Kx21\t(W g:"<&xH"^.gSH+_?@TqAtW9z` gǽagz%ٰܴ'oJ))bx\OMʹ^jG4T׋D@À&BfPQ+nH䙳I<}W(݃ɁPF dKkCv LozȯPM(VZ= zq 0e V.qX :c3213%ؕ #&9#E|UڦZY9j5fb_\q=Y~ dR{M3ħ cLғL!MB@jK~q=M|A6My֪nDO+;NP3^_bnBrr"flFU7r8YwjnX w zI8@ҳ @>2┩\ Su\DJL+'WZ^ckJ6L >y#ƠQiS1m/6ʓ?"J;Dwkܾ'hӕY}@(1Le3 c^u庱4<ކh}A-WH=JrջHyT(E.20ydQR3f/']UY7}h??'HW4`YU1-z"h:(vTMclq_TaIbhAϏUd4*9K.jȗ.P^>Ldo$3MgsbOֻ^TciMm0{WC3Fej ЫAHcܕL6!,m|`8gcI:)xc :Le7'o8j.U|g]bU9JN0`W^nW0XayDaNGvsˬ2*ʃ#MSdBYxz 7m#<W"1p OT,* h?E"W)2P,eX+35e sxB̜ByOiQvcR;iF4,jbj z.I?S-o :{Bp%IC48I~4rp37. 襵w~ "H]򫡛=@gݑwhUqյT mҺQPK3DUt΃nqwԡ U x7"f5RLA^Y#$soޫ\j%L .:u4jANneTٙ`ӨGYjiՍc,jHSGe"3! =/H^iko<'3jicCp ʲХw\mjJYW$[O N?P Wv95تMN1/t/l/5-p-qg4%ʙüUO%-1ZLtaFxRN 9qFi߽FؙW85pϸP)(.5x~U+uyB''p-JD]6c}Ut2?`l uos,u-`%4BI Rm UU(űf c8`CϡO*ټ@K}C@N՘ܖx%~Tt[8+֨>g C5FA0$xԞ-<2fߝ3j neclWǙG+<9H8:?^ʭ6zg#fjɱ;qTVXn;4aԲgj2)InՕ 9"ZywESS%wr51{{~CкH"ono^:# ט$#*NGʐ)~+@-eκD^R./%M jL,)6 \JHP };1,d4xѾ[tn?^KW XWǕZbbwg 4Иg@&]zDjqS/KÝL^h+)z >A9 9baby,fpPAb: 0V]IJRӣeSvIǑƩOQۊDvuJmx0tz7%A 6 SG`{4KZ40QO[" VOƥ,1gzx׍yN5kB to0{YRMl=\]{>MOqLld(W~zN%݀|b7!g!.;4hXĆAeiDoC, h{X}:ȿP}@O2PtaɆhQQi|ʔ;&Ҙ'M>;Z `B_1_h%QQvY ]k)ȫA%}^=*bz6Hg(e4shP][`_." we,PyJm$4)-"){:> [u7~_5tFC0̈<, w"rwmxTWXm[M;ʻuŞn"a" @8BRIY7TNq>]PIDR8+J/,vѪ{3_raү i<?k 6_nv(b.D' :pg43/a۬ЍC\݃ 'Ƨ}<ł>6 `V3D0Blbw6ưԎuNXh;aڦ1O6kWMeq5qhh+ szA@->R|ޕLtdloj)c9sJI#DxuSr䧂ЯgQ[uRUbת*F@DU;ɇJV/v_mk]{gI?˓N`f w 3IPd(>{HsEB6Vd0Efh|S,dpO?K*C(\Ae/D'\m (9@mRO/g1-IR2+TlX|AZIk:4{+*j Ae2cS% Až1[D\kU!=_Ǎ޶iBw veE6 C9iaL!pk3|++0ec5z˨ہ}/d\Q)pqDS3Ē{#0yof t {qJm~ ma u<ΤvCT*I«xBvO#=*u-m|rLX:JUJ|Y ?`xif3&AFVPwcEǩh-)㨁S2hg]PN1z yj۷_A890D>wG{ڂZ6Y@&:/x|Ћi٠ y |%ÖF݃F&lCE=A^g@a1}|\6|?G10&MF{Z ヤEmTĔNkѰ,u  eEV!vi_R*of~Ւ-đUI(}^d֮`>*y v7LC9Y2lIsd14+*A{-R1z4{'\V"VsK]%B#q.hUTs W+hN1mtD+;ap-yt*!2+YMV*궬+ G sb2aqo ]bEБc?cl%-R1bhɦCdL.#7䚏~fѷtO3,R%Z<N:qw+_Q |C|hvhjk%)(Cs1 >./SvJ䦓D: b/ iPKok6-~::MX =mq ~ћ4VsufBI.XTD+YR !!axkQ`'V]V85UXfxbsyCur~@ گhL]C+%J]RҢjoъ,/~USX{|4Մj4jQ\Uqm*m7;n U'bQۉI*\2*ۨsP&c/s-Q[X|Bdx6Hi(3sV9̳~ A@ Kl>em|gRëQHZ[ߕWW e-O7ϙt c1 W8BϏDPВ7︇hBPx<:܂1ى b\7ZfuYd Wmr`S=/>%O  ͕])Aw]q5r! &^MI\}$q\'ھB <1G#5#r8^zN"wI!yVHBx4J43E2吔(=~va "{zLJR_bMCYޜwecЂ>?d!vAQ#`Jt>uB'Nk)0-G(C%ʿ@ABd5D!GW!^7kQ ~ gl4{.9e+iwjkcwhC w=p %29\I;F3'ċB y%\wfw8*k&NʚÙ>£<33{o4/=`ҬL.QVλr >Eĥ]6j ; hYB] ϗh< 402^Hh uzDvx-{`gtgX!„;y"u+Gc\]  X0a#ѩ^xD!ϯhD}4/7F _ %Ӝ8;$?F'lpbٓxW3U NƷ@Ylh!W׌#k*N}$׷ό')l7Gl{[s7Fyt>'aBA\tlo\c Y]W4n+Ga}SN4YPlS`#0{,@,CA]wj~R>6ݴIJ;S0DmbShiHvOӚyC2#cw۔Sx7 2eܧg4šF5òAx3ѧŹPˠtM<ݒnm -Isz&Ș::W!,Jλ*ݖB .#7lv>TU$crL0=Ftu!GN)4_T~d*EsJ( YX92sN`i%=piOA@#e /*K?-թvtaIOHX1Cj&fb#ѫRK^[Z$fjb=Jbf</ -D"=<V?-:` bnać+rx!Xg #v=w5ύz^5`N@pFqT 4vS"t0 k1nry}c2rw&uBYDQH}|珎U$|vb62ԍT&@Hf@]zWtF˸[$ͮ$~Y!٨jkq@!7wD~BƶKX4Lބ-p aGjĩn"UnÒM]~@ )ܚc#Y=% HnZ_`odʱ*!@P cfmN4Ҕ]^:o$Z<<|Q)ЯL<l1|cAszEهc(\"mtðdG9'G*Ʋh-sHEZFh'KWbLgk!#m( j"WF*S/JzS.!5T2Y6v . |pf9eG:ҥ >=bjM >G+y ,GA#cqsVJr*mgQ`bDڡLr{6?|ZI{7uQ@Py𰠠/, 0~W$tIS5!Q P/gwfn~٫6wE=n82!L`yڐ)?HJ@6qPBJFnn2t~pH;-ʵ1{#ȇn`ԮZ]} pR>`td]'0~ 2jmh}?g٪Z/7k\2Z<6džjM%Iq8Gy `>M*|5>%${e.$ R#8Ts;(ܾ)Oʑ1i4 @":([(o}q!X4HI{Vslٌ(D͵KOurYh5tCUՊЈ.=hN%Ei #93D.}R4i'oK;&0*Om׽dHD2*8&R&Q\3[60Jۣ[DeL=zе3U/lPqBΘLRmX͍EԕI5dT&>G/]s8nO[k煷kN|c7Rd<.67=)~;/7Iư"ˈ"|ġ:Vw97PK9Gxʸg63,se;o>g;[#z3BTzC) J& %uL4k1Kaw*\K k\C,תX>Ƅ]S㊂8fg^"tI{p7| Z 1)F8; z-K/~_$Gtã-ƶNYPy%dw{l핢3V'Hu^h;lb2A&v">q>c#}\LxmteɹZo3=npb,lbSu#{*Ɇ%8{5%D7ӅsM;k!ݻ*otVx:RWg`=B;e?IoX3yCIdCPO^kl5Xݪ ؞h|%KӁhm kZ DBjpsPѥ _ 77ߗqX?ϝeM*ŔRq.RL&x5Ο8̋v&$| {^&V}ҐGv)0_GOC?[ЎS9{ Qo;ǧgZ+IGO t1Pב%;KjP.R#j`fEqM\͏¬*H-_dqA &!"rZ3jy\a!Nd 1r'Yhd9 F {c2Pc/B‹WTK0BYҊ-JgrD[9X*T r"k* sBc@u^dq,}S[0%dc)鏎Ԓ;+ܚ ъ, Tz v2վ>V۵Von^dZmA!f a !.8elъ9Gy| {L]r61FĚL"T`W;{La FT-,1A1࿎n*fɲW ꩩl6ѥDASmB⫆Jjt$.`FZnO8DH 2; -IQ"4T/Fv Y!A-)^eW|ڟkg pMЭY'4xx2VԂۏOH[$twy`Q`8|l$yy~oSN_bED%' @ m &:ARhѢS{y낊E.x;F% WǺ'Vf ꥐ.PϿӣ|q"(MߐC rJFc/1\&-/$29fP-@=?RbP]_8l7+A[ y㔵4deL6uyCL;UR3+?]flUXC #JC]Zk9 B,`MY(y/1=pv`^-xOq hJanϣhVNqAɔ(_=o~ç$zq[ k ,2O^Ey]80\eBtb8)#2|hQ<̂ )cdQMi-}08>k:lD F165brxR3=˚e eDMq)uxQ(PK&ė zȪ] B@֔>ß(Sl*_N7ts u$#ѳzH7b{ \lDEbrz}?EfK/0VT1IObneoVFJ)^HiҔM!b޸וgm!EMw`*pF((OemU:= n/3 N%3nh#ϦǙ`s_oRLSʂؽᦸ**70|˧Ad1HC*)6ji~Z23nINɊz#ԯ ;ՒIGw_xo7'IGa8ki 2%gt@ZAnEDaL* M4`Tu&fɟ[M[G"h>1%k~?)1X4q2mԱjTQ(Wܻc[dv]O}'gLk#6CH'l=)nʁb=GTXhRyc2|7 57͂VzZ?3h!؏L32q/mG)QJ3s‹1Sa+ T"}oΡw@GɃ(]){n9løx,қ3; jS>y{w:֧׬;r}y•} \8Dܘ4'WY;e|d@Mfell@]?/F `loMoץJ)wl["԰ꨂ煮UH.)%k|MHh^FR\= PU=v:AeUGe_ki(fDoo.UMou\nC iPWVDԡ{*ӋqzI%Ъ}y~<^GFT>IVQ^8%[0]ve}P hK]qNzɱ㴕 C@s+7`v*t2]v~8 IοclG#&j\/CXޔC#q)3p4݋ % jٍ'se]'N`+h6g]ZFؐi'(O# R^{2 lκwSF,dvWQnvi'41>Y9?0v4fHd`O5;|r+`RL1腨A gb-;zii#{oHhֿZ; _F~+ sԣ⬷o&d&Vp鞞J=[v)-W{+]8~Sw32stS p(7ipzH~(ܭ8u\5Sh/BGJ X ]xk^ &?oxNȿjIo6 ? '[oK Ra(*W>p:-q]US2Nez\/FR XjAqc]X9#Z,F|v0_ 19RnȯXK.(0 :!QP 1݊֒spiR4A[66GZ9ND)Jbg 1XY-X31S4G0Y$eثrCas5@h{ʹqLtJ,eS=s1L+#[9G/~f.ضpHHhCGh癪uvCpF h:C[ݞ%=UwoH [*]i;wWwi|"Kեrߖl"P]:>\=˒[K m$~& T]nX`:ٽ|4tܯɠ|atmQG>n(8Ծ=jpw1}6Oh8Yqb#o q<uIfBAΘؖ{÷XÜ(Y kʾl 1`4cbh rkfdTB0]DF=דk葬; x7).F7j(#e6P3 /?j5}RȐ\ %I~Xb&GE'4DIm9.#An\S'j4lWC9:Uߺ2礟k_Ɇ;Y_Mv%CwiKwƞbՍVN7K %{CLG<`|ʆD &{f?Fہ;%?V6iVƚPm(B#dgi-Agk&dzy}Z%65~:Ѐd̕@)2m3o:!%G<{xW LhhƋ"1Яx<7MDb>cܜ;NH824@QW=8P"2hb+TdaaϢdt4 MDgQP^cү;>GRlj:H\<4hxJ0Ic}B*F Fa9m|iT]MPt;f97ZW^-;@RM*+D(_uϹuHbSW4Uoӝ\/η!"K(В[䖐q~p3jGF[¿¿kirpAEȹKd̜W/+4֝uJV&5GsyDPxD*~QNȭkh,t efa0@HrᰞH&kǹJw03ЛZd%+>-y R1*>KF+7+ g1.QJx58jWk%(+E|eNs,:6Gv"!)LF'|P 9 vzZ)ce1KA1V'"敵<mPuW_V4y[=Gb\w7fE+e8P6TXӡH=*Tvi`.s " ܴ^txՙ;Y?acZX}9Skn6d&Aӗ|0Kg^ʇpr Lꯋqq''P_K`jfemSDL٩ߗТ4ؒ1@.hO#XYRޠvAu>(n'zHRÈwluYspL*y/F 4Gz٩+aB. ^߮x2-~0fI;|WM=?s%ϻѶx)}0ǔb62(+Z0@XH6no9x+7*25ntv-YG~Ml5=M;3-=%{O㡘uoWz]PwLz&4;AA86ZHE:j_ab>8=[zikԻ>LqgnUA ' mkpj*sna !_i!BlI+5mgZ7ngH/z/.0wl$|p=q! ϼY0&fG9B-޺υl4lD3)ȨI+^iFmTGV vI^k2Sԏe)dK?E@?8i=tsAVì0N󞳫զ^2h2N( ݨTmC s˖ŏKF`##óN[҉ d`CO[㻼q45_{ʑ Y}Y$)Vl0rfb&_W\B ر3Jvf{~e% yM4Skw1#s)IJBr8~MƤPp!6R._=`$ Ӈew_҉UjDeTgaMԙ ![֟q6Rg?O~UR? VpZ[l\ `L%͊R*jW8`-̐.tu ơK4rBiF􉠪7k1#(\\sE1,$~Of4_-l[o[' h&ڨ ߈_tLp0Z&1m[J* ];)e>XВ~wE;NۺTۍ`BH#B < O? ZŊW$Y&daX!.O]α)F~ %L.K-}[۠Q;s>lA3 q`mͫ+f+W;e0oTCT]Hٜ'3p3M,+kS0sZ_/D1 ~B'Ё9c_r˜!3~o 5R'EG@nT7tBIRg_UL-2deqC.@y:v ~syl wJZIcөkhF+ '*sm{Mo3?`2m@abR=.bKJ|1T\K'~Z9%F!eʎα3.;P/N4= V [ovC 8Vt"xЇ˪dlQ5T*.݉9Pѧ.k^3}e&DԇwXڟ=Pkßv 9kj>Ǖahbٞd  "a~]//YK!en$dtdU61Z_[ 嵋PX4MP+F ->m}" PcdbiKrGoEvO^)(R! 84N4dNn~l–qnTЁ~s&a8R]86{a1?D ddKoI) x)Ys "?Vǟi\>j‿˝,,lI1$ `4Ig+1b[d b?_k?'XͬT-igU{c]RjDrÓٵ'h3ФHN(JvA<,@WÇT:dž| jvFz;.-/.*||4QI7IspWOr,9 ڿSXfB"Múj X}::H V])P` RU}qsb!!< Yck=:š"Fo# `mufSLE'w5w& e /=/z7vcEt=)lZ(t/ *Ov.JnbS|cGK#n iI&cܩD% mOFAiAͅuE; ô-OF'A ^E^pH8)t)us׶MWrzO١Wt:A"09P& U^8 L=+~N/= 2ZwT-E龼 =#(fB':yUoFjPI,wa/8Ic.qW f0gD{_i=-7aPFY k[5KML]mo X\f]Sm42L9yz>pQOr5.ylU8 4ο!iWHr{sd1!EvKֿ`i<'TK wo\¤\ϼClbWi+F'j۷7Q ^%չRLSs>dcK]qf`f9ü E],(GRiv;yOTބ3ھ?b]n6hh?tϘm]gX h*V)u wYnr":,pg"q?.\0એ?d%C‹MM8T_ aOr $WuIUk.d81RL^9߂];8fUv 0Wޖ-lk% 2Dk֮DCBqP\ESnCR_)x=P 8fl:*G  Z]!(LzKvggkA1buhZN7CVBP00w( x]g23Sm$.w-NC^O@m5;H9 @:/LPdP:E@"u\usaZvJbOoLFY^N})0s{q*?veb7ټ !| M@SB$ĵDyv57@*Yq-WKIJjS_9۬9$nXƷE!z-(񅗟|XKwI=!oضT$mr}uv4"bS5kZ݌}J`#C<:ԻLyRnR[idcl.R6nnAJscs*l(U&ݦn >L80ZY;%wKۮ W'Zݿckrk|*o=X)Qk 9$"I.Уe&FEHE^: ڳ`Pݥ^bf]B{kR_7l읏͖]fqOh`nk) m,5'd엱vhgAWtD3^ӁaJa7n[&2=~+xO&rӅgj̯YKVk|FRc(vQe7;,%v]JwX[ ֎VI bjABo,#ɕv&LBAq&(OjL9]dfdE"& q )G\y,VӖIr9U{.iGe 'i=>_b Sg7ϝ.=i9͍9"x*en%+T 2:Ã}hZh  N|zzV*5!b1V ۫[yon~|-.ݭeCzOJ9#\aɵ΂_4͞b`C.,7_H{&ie ك38qmG Ll" 00=9WByqAɧzG+B+@[w  v5ỊmWLk2;]1O1ܬT_ F~O]Z<"vj*4 ]1;xM!(|pV֮ ~tȓ=;R;X%2b 9={!S 2OUW!OVn;T*HRVMIbT?׳/ŋQrN`Qǔ$LZ]2]C3cCqAo]"` d%NK(FKviD7dlHv"9.* +,գtF |ui(U IE*`YM} ~ue"ZO:Ua }CxW } {lqyGvfc2\upʕYq !Xg_!i=gqgn9x\p_HD:8 ~9H"N\*$RP9ixƞ ]r6/ޯyDrO54yp8+|Ftခ&' &ou~O ALBS2"79ez͗Hw$X'F1}\˓89t3QZΙ3Őn˥Cmxoh-l%:`x6;UV5)*KJZdy8bT€dQSy>5' O?:p#c)%'jjV |ˠ8r ݮ(y쓕)֥;pk!`MNn܉P!͎. |: t+Ȏ-d͐g.ӺEa4a^@ Ox!9΂(j"?Dl*6R 9S,mJA w#:{ VWht1(UkLNQ4j4IQy^l_Uޤ_\ťz?_Pےk3UI4+, ^CRNMlL¤]Zh3RJ "R^?P| j>?aެ3WAXzU#E]pqRs] *\5r>;!rle θ{uaITOs7]%aȃ6#fk^Id'0/! YIRS/<|C ^Jn,bHXHbtXtlOѾn[|5s'7@ۄ]9/Ǒ4(JoF?QyYAàbPo*kcl^ւJ#DV[5~@l3L'gd`'j{\efU.y׸}s\pY6E4ule jW_7h)e?vRn,"-lP-Ҡ-@MB5|nN8j7^~&'2ϰmJ|^ s@[¨;!h%g,gU&J/=+~*@ y8zq}.yis} >T P5]"83G}"mn_rE`;_TjY'8b3 gl+gJ`nQeMl#5$ 3.&$H]cICƑ?~UUJgiR>ܖ+2ijo3¸?Q \(<}L&5dFx'csv ߗيF6mF-$0 ;3m'b/oE2 ń I;/Uv̮O+i:OCհc^nl,kPVj Uobs]BV2K<1# 3zX+$er ?1ÉAa|Hj)N{/h"ji(,"] 5(:i{NS0RE 12mڋH*SJ!""8”;8U|!ꎭgʵMDLpiWв{t?L|S5Ki57!cY'ClTz`<*B~; GŒ0~>-S=ԧM u|SdU4zka?Բr fYNt-X &+MwNٔ2Gя,R 2vjAGdz`-[qErz\6P٤8#yȇJtA(V+2U@5u7Q6NM5 >V^&z:=[1&Ib-FIW.UX;ɫ>qe{Ҭ2װ0I*}k6YLJ~ZO^gQ~p?%o}X@l΁" x{0 f e^bYq0q-)+CJ{Lf_>3I[ pLtAX@Eo@ Me%ZT rX ~da}$/^YTkhaY #ԸZLr7kj˔&K ȶ0^~ Snp15# Dw"Z^rD7" kW)Qජ6o)ctjr$iۉԽ\61p=ۻbF) K'?>3!{>3D>>]6{iH:G<M;cH _8޶5Ep2jP``S E|mPAA/ 5R֧ F#tq`&g'!mD-hy!AZHxă, #4s 3oX^H:7+B7aV ֐f ^#QVR^qy:rJ%يlW|pC#ٕPB9ArQU,N9UAlŪKY{~k^. ?iPyȾ=:f:¿?"{/ tzO+Ci$'kE]8S&'sQ|LV, _[_œXy'9NT(]Vs\b|h\Bh[pwP(xLU.-3?ª҉n&e"Vj"’mܝk4mv:g7AU8?5Q9W`\Xu Mʲd܎Ҁ$|)}+$H^͖|RPq?`,$Vr;'ZOGQI>c?t_T_Xae@̮:RVg)sIYv6暙hߍ?DurΧ(rX;|) =68@.*K/Br\|ă:߿  G8A/@]` /u;1!LA0 k3)0WIAͅX``a gԳp}4?,#*Xh9Y-w kuk~okX E!%=BTaW/c*w{ϒ2# SqbGk Z: h,Fi&DuN鞿,,j~f3$䶛Y*慞A#T>ږ:|Tկ bδDz 1B)_pIEs"rNA?7$Φ s謂zl.4EPF,X\G`A^` %K%$=#6=v9|<@ Mb58x ] :Z1+:wɉ#uL@\l&$>mw;H:!N.Cf`}[ :˔ϳ%~IhUU[ox$C(o[F :R ~ rp&l- FNJ-b?5"46O=#_U)Ժd }"[,#0`6춀?w[<`-QXk'GơGR9G?Dn4f>m0m$`q̇)qƁua "a~ tW[Q|wX6}'Ho!w~]L2L#N?ȐW Ι%@! QLV#teS~Q8L zJ'fWH1v_V0m,^ORo*MdszjS%%ΖFxC1c/?i& >/?cӊj睂._C@S?rH(S`{z=l&bcDd;3gAx & ?@WP?&VLw<'f[\>^5/υhC:\<膰=:=kU~jFh1k=xssX=z݉9 y09=K'GWlh%mRo~h1dܲ/ӑlXI'w_>kˀO2Gɹ"^ dsYS3Q90rTRj!2ɨҔAK)bsL- #\)=@JڹlfnuLiÑ}6ַf*5Zb8wdF"Q$!g\(%h7oڪ -F :_3$ [FWòCȵŵ3}FV󂏩 z+-X ؖK!ގoHYr=*s1Cj% Ko?i| I)Ϲ8Ž$sbW{gJ w㳮STzW3s0;KZ"{$Qh t4JAĎ\o3 nSA2W8A$ԘF.13-22ݑ=5/N. Z?ϵ*Wё>}/nFތ;VǏŰ,`dyB+ݖ1 Jd-/8ԱyYysDe5c?L\7 0sy]P~MkԘs#mS,C08RNx3xR:W^R80.)mޱ42(̾4w5歟w^ ez'eWG#|TV2Wɿ#V% LTno,$?ptk4 .fl+lc#ƙC&r&N YP$C95- Hјj"{'f.7n,w5UXZs-$JM(]%ۛХKzb\{(HK$`>~GQ]ᅥR9l7GC3ܟ;% K9-~OAgvh@]@zp;bxUKOCZ؉j(ew`d{o?.QP:I` 6-?:7%h[ca]=K bzG$PYl6;$_މbBoן[r(҈?nrRu#OTPgRc&,dH$dYenI4Ѕ[U!CAo~ݭ0חJ8}|Y`?0NҞ <٬;mItZ_R&0?V,Sk,܊]%C"8ޮfj1~JT r`߂ryT M◈;ܨ'ҋ]鉗l'M F{/E>"C*V_ &5SD O/&`E~G7蒥ջjN.JgC8\.etQ19_tr| r5MUEZB^KB k#2l_Z@5 IG)Zi+ [cC0/b!N_ߍH\kM[w`\Y]C/EQ/FPHb6#/=K6w6UOJOtntҍQ)>Nîrݱ+ s 4t?L[mDR0[C?'Q߸W64T~8 k.F#egsQ;rS13g9SYCCn5yP3Qǿ`5Z"/+fl,y % A%,.@d.jwEG6ĞɹBCp&_!fG5~H,92l19KmK7CvgW9+78tzSɥ*R^܇5ahqѣC1/cyPGby"#YP稲:$~n4^X#Fr#[]d&8(ʜƬ܅T̕|W&2MTRZ:HJnY ^`l"cAR r"ۖ^${`tf@13н!>ƒ_)do~؉ߖ2]6d9%๺_:юfl^K O2bK @"dmfQIu=dBfM*3Z?3!93,#Pc7pTyn׆c  HiEe_GE&&qP}ɑa˻u#0wTTfNY|;~^N5 |x?@dӦy T w˰{0w]?tc,yb :~;0FYMm gi,$즎 pzT>W |:<220Dqa2uD,UHs.k&v& nH J=;IA衂E$\5{^FUڃXK"U焙ŢFEUp2fou%ѥvZ`D'[e}UFSW ux㌼_2.;Xl`pX:=TJ ȑb)s~*5Zt!!n*~u J r[‘.ntE`gzTd \NϪu r^ed =QJc8FG> Eq?U$u*4J<Uy(b)/pSہg) .c{?TZ1_}-k5r*Z.TV(KR5;nò\C#$DK}5xؖP;b6%1ujN|~ϰyjF)Vp>H&gd`EVU*R( W7!D>{8+ -1~D*ECIlWM,"f+jQ =xjŗtb\ VFғ B^D}DZeѮ 22c@xm֞ ʚ$O7xP2{"laSuqjёA](UOOqœZ0't% yY"tih4N3@L_]SWFz(8^"cr 0U9 M!k0HN"H.-l׃wyG4nd1PhM1t[ļfF7˘D2ad8azV$N6Oļb7L`$ FlpgQ;: &BCU{hLE{%=j%#8H5{W|Jg6㒘U=;ZU6/6f4vKy*,KCs[ĝo rq0Aw7W*H_G*#񗬑].'~5ĺ"]2-ÂpA@3 >tyEOf@Q1yv);/?iB4]\g4],B;ͨ3B5'I.-$?þ`݄a3" Po jZrݻ.tDj;s1tYFQГ |𡕭KEҨ¸0W ~Ī7pmv4;&U2ś QhAb<Àǹ}=bQ MG J@Ԡ|>fzmwcgTT"C)S#> F#ԯ0g4 QAՀMB]z{;?vvCpX/&1bmp8r[ټ5~niSVw `#;,y32b3Gtw!D7DdAuB$Ow֟P\ÓcgAX~W-.ܚ;L;2wzqYtn?2xC]"rlϞI3φ4Gy.r.Y`nk: .bᆇҶY ͒ Q !.:s۰#cˢ Wh^NF0n,Y/ ;jR]q4v{d&?+cX2(4ܰ?tVM2=9"0ķ2ܗcO۵f.&?e pclLGS2RU V-) ';-:wq>;Mhf 0P;B( ;oMY?O".z5ڥ %g%'Z M[t $G):-HElr]+HT/?C]iG\c[5DD|# 8ݯSX;5ϖmhՠ=헂5z^pfti4d! )8{WE.X7;ztkCѵ?V(yUCB iEa@EVCK,^,L |֯kܶ٤zJT,hu꒮Tכd 7Fi][2Z泂qX=sF:ڠKW0vdHa:6Lq,V\NN*lPrhC!BO2OT菌z'B&sP_eT iֶn Z`E~?*!A0[bT|&:ˍ"db%C 5kHU z%nv  Z V@ Fk0r/j{$kGSZ#'OX&tgO. u Ps%fHLg!8g'Ea3z5R\2C.Ԭaa',nY6 *ͯFwrcT 1wo9€ Ff\lwT1֏01@e!cpˮiм=lǂ!\~ǚ9e'񩤂cwo2@1ep#т6c6MJ#?0W!p7@LkL+:pyaxC8m$}8wGl X–ejԯ] %p|iXK9I( !pe'gbUb =?5V/,C܅N,`~'?1l@,mYFؑ8Py{R%5a?TEä UG.$z&}쬌{hi{"cg7i- CնP49Ҽg(r 路UdC[Z)̇w#AD^; ҫȣi= { a{SD#~CN=FY/*gY`+VS ;\l9RhXhpN!J{ct.!gpZ9: V hn+ldT<bĜR\> 2H|}\N1v|v%0*ws_|whףe%0yh)$a }[ |9۹Ǎ{rG \ќH0KB|vrz%*ݗ@Ie.~HmAҾE+Tą(Xu2&6Pmzw.Fk'*iyV?mДdr=W(Mr9Nѡ[:s ň+6n16;8)p03q6+; FR8s~>N(͜[f^jg^G$Ag̫wƀ!v,3Xrrtg5pbwq> #yypԤjjógVHdt3Jzl+GaU,gnD!5)9сRW%σc :spG:3vUK) tgL8yg`u!?mCsVbzş0 4+Ɛ IbV©a'jE0vkkJg[hfiqK_h1&z٧IՆħ ׄh}2TD|9muեS߀8SGFՐ\Kaiu99B#(?mjcC{-KS25()ds3-,7*bD-'!v2"=|Fh$ $0  &/p"?8l̔Pe9R"R϶K>~/y= [@| ]ʸnb,jmL ::5",LUʫV`:͍*WU$1b6ʹWe+)޹$mܧ`ӊSJ?sЙYpz^:Ifْ[)v,a#C)8lCajj,[tE܋,8&Yc(;QV7}p֓ ,ߺAo.vix[+T55)%5}uTpIӛҖ6Nyќ%+kv5*vg<d5sTYֻtH޳;dʔ~Ua E~Qit z%-rjfwc_`raE+`c}2~:l㼒=j?>܈ؘiWWx,^Ǟ;< E2!S3\]Fє8}ZaXLg]J+%No~$ xا*3h2ׅ@f fUȁ"IQ@zo} }*`1à ]p3iQ @ֱ:*xBtN͹a˘t2cBnͤr(eL't@iJHK"j:" Sf:i}*:t(-م8B2 ٌyfݬ?xv˨gk򆢑V.2mIgKήFyJtV%21^7v>pIospq1X>.]˾d|@}ɜMaڲyH{8xhUGB9n&&YZ {[Ydm@&~IV mbDl C?txF#-?9S-59<ZUlkw0d>'hko 3(*2i!1/ehZ>?n<)2͹rMN9f0<>NW- lY*!h4 @h7oO+t 7WoP=o.1ҷmtbfa8L}eu1a1+74Ӫy9:7T޲*" =٨j/11~VJC8Piqgsՠ<0ek|X٦UKdr1|{7R5yD_=F~%mEN k@U%֓S$uLee攜[7W:աܽ,ؽnKޝ6ի oDJ 1Xn/c[);.8FRxٹ@/Xj˹'@E\b;f̞Uck,V9\֭;6v%c)VР{+ U<܊0>ݡ/|BYI2٠۝P0 |>vWౣ7ՋXOĶ/g˅8Ȣv;jMG_YwkP< x>rqUwfųag8awU~#cXpr _ V,6bʼn\<($5*xO!ZhtQ{B 0., ֯q-*7x>=]nK ?ZX50bP6T b*O*4MHɿAaU\ bN[11w6t* g;6K!7S 0 ;r%^`+NqFfj`I> %`m#+藍6^1׸N'4l\aq>vg,n3Kr"*׭<CsW \;bCD\U Ig~$8sJN7 򁽁"tJHK1R2ͅ >Tm,I,ShTtƎP6UL@@X\WI+UԶ%TTpˢי]YB_]N.A7%(C0e3d12NYlңݶ)\+qF<;hO(tl)~ :ŦsVMc*4f9SD g\L}KSt}Ԭ]4QS" #9F"/J!Xkt[Ѕař Rjjmބ|J'O~ y D)UD|e3 A!Ehe3H"|7*I=BhjN`M}^\`1MJ]W*8P(nmPv\DA-x&KD3UQ|^y14$CPdItG7+D0 6:!; sQ;* $ނ$mwؗ:ړ,@U [F BȵDńٜ \5%$%_ J^G„$oJ". ,W>Qڃ&5YU1rJm֋6J ǘ$}˺,MdӁ0ڨ%5VJ̍}Nkk?i'2OpJ!S)h&o=1D= uACoi~b^dw&bHrF-W&a ^:'%$5f<7^A[}v`1Ji4iTwxԃe_5-Pڬ9$ѯ^q\-|0$ +P9EI-' qv<ə1)=>\-z]"WZ0]E_PeFVJ(R 1Нs onCVܲ w<\?k 'lao.D!Fٜk%2g=$ mخh+_ q =wB Ȓ\*8^Ww+*l".E@O@Cլ#/U>7OF&(!ʉ@@WZG镐.8a*F}a+QcUMZMkRJǚX>_? @.acQ.QW'StՐO:KkgeR]%"ZKYt &2\NWL?SP*2+<4~4Y\{$k#+s=~cKWAŦ7u愉LVL0ܘ3{au}L/Sփviz>v:(1/|~; DLZz: eq)}V$V]Gk{dF(/i痝prNa\P|lkfPvq,YeF²v ༖η(4(BXhT6Ab7jh" T[:"2 ||][Q2dxxl ˫~I$ʺ@em<1s y9 ^&lǺgD TS_M[3)K =3:7b:F]hdU~;>:oMȐ7oirVs[ZZ_?rJIM] GyM0YpDG'\b"# >M`ktKyHHlȔkm;ir5],DqC],]6%|wkUcKi!@`_5ymEBF(W]U]:9YvΕ!Q<(x  R[cy9 p4]\P_.Lr^&F K' PPv*[F ua& ¡qh']aщ`L5rko ʧ^tw<i| ~㚔#j{沚_)N"RĐ&Fqg8|"AitM?esD f91;;Z0BȈ ^\GX#x]κB%fz>uLgH,}O ۄ yQBfU5h'藤CB<0P5@-#On5 kZdf>b I9A/yZ:> JG /3os@7j @mVJnQ6`Lec0V{'<5w6guB/W:ylcLw&I',N!ZɼM:i7hƫ  p8$T 3HALSTgaL}?7f2hT8yIquU=aͫ$ ^1M..GKdzFBZH} #g7Ui}aD]Zk_ہn2DqX:}#xi*+l*KHh2v"kfEv$B'm/[Zb֒۲V+62}x:2ʭ_v<>e}J㨎g,(p`qK(HlŅ' bgq5#Q֯ZrlSȟ4Y`&{r/W7Ԍdka/'XpLef#-m=I~dzп r]^o@@nDX9^ Rk)>F(u+E`'r;Xlm" vT~ngA]^l6޳Wq3ku_{(n;V8fOzނ{` TN؉'%:kmTVMKT^B_ЪVG+fD^5x'` ĥZZ찖A*2+Qv;|gt&@ɃYacl3 Dẗ$1%vQeo|bRqqGH%C}4DBѻZ-Vv`/ޚwpNŢ֋KgeBƒO 9Yv/  6<;ep ]"i{;Wm=&q5"A rt "L-GHAbdM܉A8jTG=Wg˫ZdL}sq!Eu"4XX13 =wq(D}'˛&Ȩ6PCu+im+ ;V!,tE6]tż:G9r;"w7a/%+!r56)?*NJ*mI59uK$139i$`QjunQIߨI"x9mU|vY ct },4퇟: ? Ib.l>&>mXya3qܶ9+);ONEf3.*i_m/ͭu2'hVkdlQA PۅY} f-mـ[zΨ$CoѷĿ?o]kkDRT'\kӣ0{tN*6%r(awBƺgalr2)~D,c/fcuO>KC)9H /i0e;idV:e+E}ʬEޙ~M C$Ctޤʂ8ؑZVU(f] \>6DMܾ6H@QktVL7Rus $n0ļ6g;%&sOF GNc(x#,ZH#)γ?5wNSt7 2W}>8kَFm6@1Ki#[Ӛx3+dOE~H㥷*J`] Fަofd`&54{:j$՟HDwpK\2RK+?-<8{/mQIaŌ؎ۤ5jcvBy;'i1R L]]ǯQ-QgG&71",\ "5E<ڈWjbQwGsF p ZDL406s4=pnNnsX"7k?5KCJWBOǼs%3̄6M8#ؿNEJ֖o*iIf`0jqKP,&k!o.#d0cxWŷSUUCw%/A8:Za?&o$][l(hs+_:buGxʦfK52#D%O`~F z& (2s̉\m|fˉԢ_̯1\bX A㭂hVF}CO[ jD|p੦ 6W}9~mUI~ы'W=jFEѫBzr79l<_#'!' $Ƿ%xDA2I ݐÂ͢d`Os8Uʊ#dL^l4؋;CX[!ԮS&mmԼRzsQ.)9Ч5H1 go)Z*im)1g^ q ?X\kxV vze"UC+,Yj67s0Lm?q5d33K)Ī7>TU_Fuk.ik8~LF3ypd yXqtOU~֠B΢Wl:µڌ" 5'a|,qrmʼv?R"8t Y\+'PmvrWϭLݖ{S5Zqd:O7@[ 'kJfkc2XM99e}ECf /EA뵖;Cؽ}q_SN6ng2qs0.7C2_eTNEj[1ʼnҩUjA $YBiVйuxֺ$eb(XBw TYڝHdM|ifR훷al(gox4|0tMN[ٿR-1ȭ#W'~Eܝ֖~wP4f,ڐݳs u%zGTG9VmRKGgB?eK+r"jZzU2N\IYZWI݆gzn\-Tjβvޟǁs.ip)Jm0sy%͍`b)QvҍwתzUEe DΣs>(@6sg.wPprQr 1JV/_cNC jFp0rT+hI"4ҍm?F4/ .]*fځ^΍veWWq82=ub72UPE=1AL:U,s_@?i*%s00wɏ G9`SN>ʱ[-{aڃgi[~WEhluTCQd.YCb_UPP8p1Z94qM_pA'mDyհY ZV(޼jHLڬw=\#}5wO /NnyF&'/hʶ澾: $OGf]Bw: Y[l#zQTd*]<)\`Q4U˳r6}CdQYoYOrGμsq>rtk%t=>LBY3 ,Xi^6fV^p=mj!c9P+ \6m`j·jVkY;86tzyrEa,!cZRH4д l\oZDa.*YdPZ8WxUiŒ0ep"]P.ݩcYEVe4nhpI9'ddK&vLJk\w@]A,[nI<[k!;BVU ipZ Fg1Te&\4 u#j~ e ?m$n 57 *uڨa~]CR*+ulsgv8s;8Oø.ӌ ʓޱ[>vP-pG~igظL1ACR ߞ8,5۴q)7ȝFAFqeD@B 4%;")t5jůee,x\sWOQ"iI51aWZ| Սqet@C}f-,ſ$bHX 2F:ˡ1i?M* ( p9J}&w4_iFS3;ɣQ.4FCĴ>Ǟ~76u24{S㨘1uʾjҗ$/)!h%]wodR$#ʏQ0p_OC?ݗ؂{-U__,rL#IR\jئJJ?(RNhxGѠf\J:.33)9" ҩkH]\2r]zjt6cR$4[,| 'f*@Џ&ttV&\ v=LeL, 0* %+J5ݪ ِӒ9MYޒ*&|ؔd4gL@CA y/x>y/%᷾sbezW00B׊=S)96IV&|кҹS0FK@TIqBKhft@Eud8)!5ƬjBВ+"$x3|hg S\WVch)]v4}H'giUԑhL-,̓-Dj)tV@RqJXDs~SeZsvu^5QGJYvcpұjٓ}eKUK\ -)h xhSnNyηk#g;tZO:<(om { "-fGIû,b7q7Y)Ӭ֠652X"mK~/K?IǒZ>%( &qm7?i"SpHi"'&>BV 4`Y4or *ϓB=6x54޻'0]!j(t^Z;4fK>ߪ?7]kKv7?H8j5 )ƃDtʎČ5x F=p#1픡*5^7mX\'Mu>n'@]򆋷o訠8U$LmNDz\w+~bT-}4@S@kJSy?ɡ37kobJ#pqLYpFW&&swDcAqT, S3p">&ai~9̷N>\SʻU=$&\` sp\&X/CNf%[V$<6KTҜtͮ rWƫ^EɖtSYZn3"U[RnxS`U4­8x"' T/#K(Hѵ t]">4F;&B!W.?-)?O]mH$Sjfua58}ES_&=LUN g$d8[+dEM?H̦W KJ42C=xC5xEj6,~:r 6в~oR)ja]8P\ąx |Hhrfp ld(:R xsƙWܦ[$cHѨwi8~5m fH0҅:Q+bE HiI^N dݶ$~,' Qj%4ǎCmRMj1fS0U$ H1Q+YZn9 DRA"x135_/П~̘ -cxN*IB(4{M L;3$I݋$/, Un\'Ћ"?M_:ϫ/˯19v(xԓ.^ihVmVi?Snad/r45 Ohxvw|X֠BU0gj+6DT=A["Qmbq\*QW~:lY~#5CC*X w#\zM aܥHÐ?{z vqm_V`%Ǝ=7($z+Mi>eM|(lz:SM+ ~!QrbYLa5Pqu2YH&ǚH8>!aR43~}mJ!*»•_iK`\6ǽC:VBtlk7+j+7nJ 3xQq d|nE.}qW%o:\$3X_\I6jNwɼN]ݙxthⲿqFIƀږ%`Jת@'zhĆnZ?t ԕ "p@ca@:Xyc4I|! o!h4Dbm4MTCĬ\|YHVZÔ6ǀfS>$3:|T]yfKf)JVKaٜĆD֕mYhs{ '5.qbޣѽ9aS-O Ou"hYY9v#D' HNGw$@ 2KבsϢT9ek_e' jw͇.Zep4W_ó~ βt>d]18هĬ6O-l!˞ψкo' OE&aJ ͕Y݁^J"#KV#z 9܅Y3#[]^߄p\A/GBEsZ׾>5ćxit=t  EtLU(pso ]^+SLĆ6R|Hu F_eйxM"-EG}qv P9m7a;!o rJf:I= =S] _EkSnU3 S_6Y½t4 *m~Zۘi>3;H$bK 1j>.66wa8Z*XF8ZC~=],.l3.#h;( m jN+uvVTsW;%#AkA+m#K1lM,(bq9crH*'\~MSq ZDBp-o5@r@a%UP}Q\=Nyys `9> ZY'?|uT^Z\bJJ62,}P42t&–Nrvd#?O\-2.LI"b޴vʋ\tۋmvHu# z KcyO%Vob% DV6T\/ĩT~r?E\y2kJ[V]ẛ AK[(gs葩߸uZcFT'>E%GRN)5?A]Ud˕lޭ&a0RAjl'Y I~9koqnA%ΔiH{̞4Tt!ax%Nu lfZtSJEF6pKY\!%>Ȉv_]^.w8_"XbOKH0ˌKʧ5O룀x7~bjC>H!mOԲu*v ..nlϟ E#'::r\PX%(ϝ=\#Nl;iK\g-KD M0T*qᨫy|XS&+!Wo=!/Ug_PpNsBY'kKo;vY<`!Z>H%Amgs I}IH?Z2+0)vsPd,"=؟so֗25*b~E\pWm9.w=HN;K..fV?;.(^^]kOR\vZY~MqQ#d=X?Uc<Ə`~sMY=ta<,˛p&STwyA+כxcͣ'4n3Dc^? 6~w?hSv }rvQxP{0 Zd4N!~ߦ ')`aW]S QN ~ޓcf W&_ŒGI},1*j<~ъ(nLO9S}&l姤zvc%j-ǐ&/'-T:IRI&Cm  ,\9A^> j/KIcίy+{B>}#H4IoH3#|UIDF8!7IivfkKX##kOK"TxGTY8dyEK{)!rBW<#(2 $~:X ע I_p[x-GqTdUt2>?⟣JaDzvGb5w{4r L Ð7 l&7R?,H"0^qpkrUi)r%o2zEV]$ty/O̼Շ=r6Q~zps$ںM=g]jYE ,"BAt0~" C^͖eO= If/\9@%t^:Xf.#'qtctc*0W&M"^`8%`~2jUU͕y>/ qփ^gySI?[O2rD+_}lRZx(KNy85 < ^: 1*!&Ք %mOQXkD2QH`/Z0΃D.Y/f 1L~V+G}:b޷TuS$R?Ǐ]bfɲwp> ?%GU5*MrvR7"aXPK;'wx{ELm)(k)i7$ 9j"cu t:N+ :w7vF;l4)ʠ3_̉-T-flׁ$ZY:xUZL7u5H=GAу<ɺG h|AH2.N9^w ͭbyfMguE?t3ն `"p>8P" dJ{%-/~W YV*B-rz+"^RE[ Fm֑>!aٸ9Ӭ0F"vLNDfdu ԎYքJ&0$#_MMIva5EGm\%Zri{߭os[ͱTnh15eާhkl% t\zeZrWokI.-8(WVبp;B^] RJ6-fJU) ,w VRŕ1F@(ei.bDAa^3Þye} [mPfi쬗k;t$M5M '}Il:%|YU˴J]}Kb%(:˧}g+vO耊sU 1N>™+J$Z2GUXX:mF7?M;t{Wи#YM!Z w7A5-྅2dpW.tff Ȯ sq µeec)b:A<C쉅{z&tug+}B '8\ {rk^?^b" `p`DzrD\ A]!KE .а"Bb[#` }B?u!@9yD`ȀL $ >cA*aや/&Hsѧ<بeiB֢IEIr`:쮘@]ʵ>WJyN-R-#m ӊ& ¼יf!-QX䎨 Ϩ` rY(j)?Y !_e@~ۛXHNXkP=YZLܺ!~1|,!/N S ǞOd,mZsnQՙξٔQ}"Q=C$P8֡F{SS>,|U̥sp-jdJ7ruiŒ+:/pE%4u-T nה_N"%^򫌃R(1+4<㢝l Y+ފ>N#-դG rRn cR/$KNG' $NH37dU&etG mA<\+p&GgvڱߣZhdzXḨk\SO;q=l` R‘1p<|"$L< vI{|B\!Z緶XNLA_G=bݜS?`m^oL`Q, >ZYUZ+igd` CSZ\(|zCϫ@AC6&4TKp 7L#Gp>&LCEΊx'`6S=Bj-LȸF%S3D -v l$LcNIb+y @ i8 ޽u[/jP9TK}wrK5XOؔYIŔo! E~ٿ&yT {Eg:f‰hMHxFDpzYk_xNfL~3y؏dMӹDL=)"JԜ~eŋ{ 2/%i ᎁ8HѮ8MKͰ|8Yꊟ3ub5J>ޒԙwZia'#@>u6٬N!x5/p-\,>V'KvP.[~Z:-$dr헨YHW"ϱ~uKBdT$)ˮ,4a>1_|!K捩(}lqZj-`*3**l;C߽;2p!'Dp ~G⻗NmI6~)S*D]eJSP9'5զn}}jDXL+B .-tif%[ZFJř|48h0zCRFGJGDj?tK<пe4s=_uLůǒQM֖ܨs[gy **!2>FїV(qQeb)2>47 >F!2"Ȇ" FE9;ګAH @ձٚ~mqtvՅ0Ocnnhcd:Gǽ<=f>y}ϱ1-f{틱0OO,xrخdT{_VK#ǡ|T L,d?hv!A8f<;-է&iĤF0㶠o6Ld$A ZE*.ۀbZe58Ss6\H?ۉ@)-4fWTQG--- ^)TQ=Š4</]-=#Qa܈xF|nn+ůW浘pWZ_Dvkk6g}wٶWSLLo3TSMbhNaCfѫ-}7B/'D2/A&!-kˑ^YwL9V6e2d[7JC |VҭN2dS4][GAv 4k@^7{GcT9LSA)8ڃ^3@WlURXҫrrAM $-[wQnW2 ɼ!jIKq Hn]GxqXQhE+#Kwhiઃ =3~A&+B lO(8 w_z!~:|v:{҉&Y5"k-͎gjLK]B{AVĎ2$PAli<ɋIB_uX:N.$\$|$FU`0Mh!:k'z1 P<0qWsrbOc$k9FHT_Ͼ`B4rg;6}?<n^\L(u4ϣ1 ܮS[P5PQauӳ\[)}Bd !Cm:Z;fWTD`8Lh )no=+=S|4ɡ2fuXɸfݔTū2&lȴU{Unܶ~E\/59olJa$pVИ8+ t4yKQ;بfy.Kɲbvm>sMQ8ewwZAZDF^62d!>kcѿ #PnȽosɼ+DhiF؟ׇ`@G_ڇ|DVx M @_v=Idqceg֥IłŊA'x`6mzb}UvD.E|:iti,? ˄@d;_UtkdHWi4R1WGz󹳥ycSuSh!mT@N1l~+M *"}>͏ld}rK.6gpyjsK!xe}MG(u`J#~Vn(ɠ)eDO5DNZ Z߲uEe\ц^zR猸9ڝB^aun\13[Tq8虇lQQ|G3p Mgfe@ZEq &UU^lH/?KKOY)bIXGFZ7B7rEx_ gdrk]`u‹և. ;1ebf IȳV>l'q-abJZUsO' <!Fj 2_RdD n@w aؐߧmz)Uh[_E(]w~ȶV +jflg$ R4FA;;kf 0z, 4:3A+QH 4y-bzji1 .6|ltցLdj{RJɬt}@BW ByS&- f|c"jA Q :4-.}yկc?,@VYb(rH~qBT花=pmrNψ]jN8h1NOc=6X .LP . @˃z@;tZv-.#E 1s"raQD$G%k!ܪn8;5.O6kvx~moϑ Fay)2yEݪ^LYl|# ?VªjW_4wDJmf'Ck}H{saɭA˿JÃN#`;s J胰%wϟ8-RNkAUS4g7l0.;[.La)4 *W\ f5Zx]^4Y^Ao_e{.M:aI8S<\D^,p>WW2,7iZ>ԫf;uS髢YAHG&flutz#TG8){ zyNa'ߑ9yozlR})jb)SgAk\v` kY!L_Yرfu5Wg9aQ2\hiz 7\csȑ4ikQñ4իvlmNVPcAe.Q7jy[ϋvݑ^׿ĸS?rKj 2",vlBhйBT1pKWe(^ =l}I$۲Ё `F Fufm2q.wWH FQ][̗Ib{OOO%{C+%`%Kkw{ӓPg0ܧcsMf#%C4f:;(B #RKys,˙/'WRRFOgu?1Y=OQ9WxZ?T1U:ЄQL+߫7@ }7#`axRN9~q6/TT5 u c1 "R: u9Ef= ȌIDgW?%Q9jp'Ĺ[lۥ޻0"j;_qk8\ԕt͞NCY̖Eo$ɆO#U00ALedo=tV̪j>Zdq)ضGJѧqrq@N7m&6im3n=(5$WK 2& :~D2[KoR /I6k&~H3ˇqǍ_`.DƋ/K?|j,S,!ySb,biߔЧ@Le14T56 )[lWC/&3ZYqmsnzM@1_p6g]D7dN)]JDNu**P@WIg !l' ;ߙ`ci6TsGvVMd{%ȦdV jYםi0o\><`nV~TuzC)W,ܝϝQfEb?RDƆM@B\JeMl3AMӣmzЭg|KD,wkF:,{$5`[?8'C[N6@XJ?@b2SI˲~R#2_? '[Z+dxr!̋g;Kee&ÿi=3OCXE?B=A=ء&V')0`Z Sp-Z#_is-J"2Чdyo/ [Ř:Hbr[cmVf:U򤒁2u VnKwE!{~Z7YYrI{rѓ}Q|Xt |ФX/ƫn\2D,v!녙axl. ;Z S\!dJ>& Oډ5&Mj/v8Lr\yg8lj<ָP]eC@gl2"< kbZ<%JzB{il_yx:j<2M}WjN]2i6J^"459P13įRztq$Q;va.V'hwqAHe es\913"kZ|ViW,i_u)MGuӌDQZEn`=ۏ$&Ꝓ, }sICna.+¸$L Opت凘~J|QO.4H)P tD@0;rC֎s{'>ΜjMBO`=S+.`'C5 Om <$Z ).&u2[ʑ2r[aVD  /k5İ=0PQ!pNn zS]ɢ9>-11FR%qtJ7ՍMڛB_*.Hx-FmQ˯(%yҳs;iRfm6 pz֮ͫMHt!DbOq|0mcy.)/FLyFE"qdPe8<'w.-XMB/-ωtZ귔|$u vQ+ZvFPSܓW E10oq uXUpZQ ulA7 PW=˜,x>6HnVن~ɟEPɌ !ʝvy55ErEXEѕIӭT\mZ٤3 rN*f: -Q Uu`l j)o+]}VjXRlEnB9WZLE;;ݳ;Zun!lYv68 :7GDY.aXfa9J@12; IV=gK cu::yrq:"K@m~89^bs޻:J~V2UH&s@y@_ ϦްSC(`k5X˚K̅0.s9鶁4khw_]LPo۔S>s{-˙O&1|j{kJY7!R'lHn5 YrNʉnL%dzuSS D{]!.Un+}\ (rfbzݺG2OBwĒCZ"F$/YX(M>BI+/]D#S8}k=:y^?ċ]zwU}-B>CZ ͗ǫM^Iਖ3<[ۚߔ&tWI1WbKvFXulUc;]D[ i_19&8rYJӯ2k}tv?2ns3}W<7%N/}MݦU%$&fEU̥w@f™Xcsy+ULΤię R u$(DTN1_R :d3zKȊ\ x;M[{۱uwI6 <%;sisXx3.9Ŝc9`UjǃTS%G*T18;IPp!Ugj?A)Y"qC\DI"qQB`t7?iLY:~Ǥxdo⸖=/(&fNFpS1I]vA`Mg&m^:CELuAzuqǜ-ppV[JViq ={#E9||%fۣ5`(+ g}c A%'^(VpWRzEbEʈ~GΦەY-zV{_z&@D(v1՚K_u8vGwƣx,4yC 1RwU5=߿HbԵVtd\xbnnm4ZyTOv CEN[P)S{H(->yW}aI"y\pʳV3tʖM+$_>d/_e7 G,8 7?ɺEǚڇ t֬aJEm,V$1e(Np,/xvX*<8:.\NC,(wiaz_Vjbɨ3<=n}*@tt "(&9/P쐣_pei7v`CdQڋ R9NِUn9zrW2)CIWb#48_¦~YjQ@;]z5q 5l8g0$v,IU\:UAwUll qJQk3ڽB&'-@WEz0ÍS;w7L &w}Xma_qW1T åDcok{;VP"s#YWWKQ3}Ҭ#,ЦI|ijƾX? :Imޙ+:>4Mm4} 1&QuojM||np#X.bM#lnf+ʰYa.'-Ł"}3(Wj~ORyAC5+2+4aN394: n<'3# NY"`bCi\2i  iާλX)`J5 =Ö^}6/gsbT Cim)4#sr_,N9ˊc6o1-.ziZsC>JZ 84>)܆ єua9 g87rZ{LV4G!e۩J*o6SAf= ڈJ̇Z>|4L`sftXolõc?v|_#;Y+JR!Em})*':ɾgl cB 1dZLԺ*x(~H5skOCS7.^ NirΙ>e^ͮ{7f\S=ѴJ G̐UF"M`cưyc9j"$(s2amE=; 3ɂÁ58IZNT +93σMoԋO2mxkT04KmL !5pS戭6;x)pOj'@צJ p߿;gCAYYg_Y?Y3ty >OKPDWZtR>aѭG]gS7 0 2_3z=Ѹ*MFN ƫ)KLj'ɼIa#OU6>0lwaϟ.L=ۊ6A&CfLB9uִ *ꦑM"zqݝI(F.S-N4>:.ɯJMix{ is?g&R 3af '>䦦 {QxL-.bعp&̅jaaA}/<:k+)xO|mnQg94P0y& bk&|-2 T؞oq50؏g̫|̦<}Pt(|1xt߰d 1]; 4 )=o/_\Nu"r%J P =W@`4>l<3Qk!#wkG0RƲє .(:Ncp H p4{b!3܎@5nDsRN'&jiI( o&t %+ׂn+@T..#MA=7BH.6gվA66}j(e }g@6o\H졜BD2}hN*k_drKP؁VޛmVH665XѸLs8ƹ~Oug]Fҥ79>T/J@u!A|GnoLBO/}[3 ʊ>]ƣy~Vv N Lh%͎  wóae6fi\K6]QٚGdF ӿW~ZSrR>Y(\6Jz'Ks 5pn`gMZɯy8!0WN* xD*RuH:c݋m~R:@)?VX+-|V(1oE,-:(ɞ2"2C2:#ڥCJ1D (({7)c,ϦR91AÖn(}F1d 7?uU2yIIeӻ[U >Ғכ8)qJj_ϭ@aq2#i!uy!r/%WJԜX3*_Yql+38]f+%j;{^:7|u] -F_h#x6,l*0vUdmI',O?ߏq"yRl*zئ=rթ$qXxՂR%Zp/^h#DdMtZ]EkBDZKUC$kxC,SVM%r j0y,'khPxY#$ZZYCQgsvUզ yn\FCyh<ʵ>7`XH75(&`q ƛ\Uı-FQZ5Hk M\}l~6rUCP  Kþձ7Hh /g"C89[a̸%A]fvm>~ԍ)@ڐdVؽ2L|.p;zA0z' nYZ7U$ ?UJ_ޟh ~Xͳ %xfeXbBY~[>؜PWִUZa:ȦX~[Feȼ-.Ph>cf`4^P`zTyZj$"Yܣ'”l]dԥ߭_xɃYv5â3=YhplQHd"a3vf]pY۲/W#xx%lg +*+,C[Hܽʡ'bG,̞WBLv?[P(NGn;U<{{)s#t]ֹ#;VTWv዁ 5-!hVy&PDI?n>CB79_k*^q#Q늎\ш>N #+hY>RRc2l6x7Y/QJ }Wj<-̅Rǔv2qi/n4.Ǘaտ4|@3,GChz׌ 4[P-j`qF(arκ+XluӾM>Φ¹)`Yyk F֤zl|^mG'֤^R)Sq /I89C93h+n .⏀\bM*lRAՋbG}_pH{X{-;AB&Ju9@mzJQVLjbKe1)2B\r" JܜWV8_PC*2#5VbՃ"h%󩸵7R8 XslS0l%8 Ӟ DRb;P uTԩ@RI>F.̔?ςGgJ<1DZ\f LܡB'7A"B$P gӏ aCæj.aքj&`1ʁw7ꦖ|{X,:AS%S:>Ev/? MF=q ЪRISpbK RxGF^z%^M*X|">zUN$ORB-5BaLf WIj䰂rЁ={V- t]W}e5QMZ S;U %P$*OFLJ\cˑ6(9_Tr,AG5ay a_Zދ ٿ8 EWfwLCsa+jr}Kv#pĘ(Mߴj|T'x6iD-Z5aiԉe2m%"8 Ӕy<fo$jVG8 ukní>ҫZePC'n1;ED"?D~'e& MuT8ik jڍoL,겠ovZ*x ;r"mR+McERT>WtHr'\%kF?@=zg.hczW |Z\{Xy6՞Hr5\INȐٸtz8S1_Nqmyu:l~1 E< {u͔] dKЈ9AfS1L{7һݎ靌OD-L휌ubM7bNfd#V/fKPgI/A,Bx~sjs_w|â&?ܪ˵J8yN (QփYIiyYXϏb[~r[nZTR/0WƁnxOD:wCl-tN;)#င +ԴOH~6 upU;zipw5f߽5Itsŭ#SE[Ņ|e()[2J@֜E%*"pm JG.v‡4Ц`ZEƇƅ_?2K߆i7+麅}˕ݿ4{Rav>YF^e1jmQzLf3]۠ȺUMo \d$PG^V(#+YyYpū_3<4iǤ2$BПq'jM`Y Ỳ77ِL~"Py#ܿ#[˿ɅM3xÆ"&++tLJs Ui\.KGN2Ea_#vOsER5% s4굍`1H^CF8qز^yg}S_0S.s ݓ ..܆}aEBX>ylN`E 5? .YcOwڴ o\eX`k)@GS6L cnLW3!8z7YEpv ļ4]`ģ[ = Ab#%-M?Ƨ5R\!XhKC(˷Ue9t{^Te޸L:rp\|JC$8Z4d]} A:;1Dr; ~Bi־fx/p9EMև ـCTRR$KǛ~ȯz"ԡ4:ξ}+}eMUT3ᆭ~Vt :}.!ʇ%z؋.}Qٕ,RF ;08>t͇ےƔ^#ퟑ/kAr%]^>I& 9OLEիQoZurOVκ>0!c=zZq'K`@5``pf'/Za ʻ*Dʜ]GNh,c~)Ͳtn Z2E%^ɔ55yh#sRmB9yn&F {.q2wxn:Tne.׿nhA?THZ EJ"G5#̤HJ͸Im/awMÉg]wn(p@Isbs<{P.鄳$ªڿR? "B+M h] L~Hݱ Nau笷CHA&pȿp)ɓ(iGA1:.%!*a*TI7\=wVFS{VF^ Ԉ|%.\=Wn]B5 GBB1=IQZQD+`ş]iO"D:L]Аnh["YI<\Z@R](6[&-@T¾Rwu Bk+fjB78<m`F`kR@/0: NCb*?Xȥ,C{#SW15ڏm>_̢w@IDԩ[XCu;L8+k,#nwN$Kܸvn8cml PV ntA3s Zw=O~nA迪eGs\v;7Ac1gKr(a~X'e= kD6!_r*C6tA{fƏ Aż)JGs-?pOЛ[\/S#C֞*]PTi+>hB>R;!eY(<{kpdR9@{|:UEG2vc5; 8i}*|/+ @rM1;kAFq!M,$hRBB&;T_f0˩]gLK/; \BF#WȄ"X%;FmOӬdQ)Qȥ&H8PYdQڻ݋E6YRrj3^܀pWj`HN0S0oN3,R}4;[; e-Is-:jZ>U-G‰JKS) x>hv-GQ*dt+jz`Jޞ7$GPR_`K0 bPiK1T~A4<ĖUzⱼ@"FP%f~q&J%|VA z ZڏdkB𨢔 (N13!U!5Ӳ?ۧDg,rQ9|$y|MCl?q-:tRNb+Nq+9)W>rV}4@^H M2L2F3 tqnԉxHl7"nV}۔糖hG@ e.E?w9A}EkfD쇥nG鴖 Ϫ 4(Hܲ{F__<~\|"74:5Ba+<{7N!#rj1W_k@_B<ҞԎ=^t擌 #LQJJa15!kT &p *!^V n_Aw:#S%A.`r~*cTHsɤS&/o0m;'9smT.hz[n h"!/SV 8c TO$k\@J"m&jȕr$%t(4D[}4oKJh$]Zmۋh=(@pq1'ܛ ]K3萇*+=߉Rʇb<כYY;{2H zЀAkw Ȧp>(l9pzpp/;tܞ=O<_,d|ZH04MceE(Kk݊u:;_͒Aӯi?=٧g[f2V2{p-\VB⮎HS8wpy@ݐRoSB$iًwÇ ``@X؀lb'?(#QpUj#'F.5f4tfXNU2_3NV?JWR2bv|.2+6-I0\b:14 UH?*ߏ6A&}4FQ>H3I5۸Н.\Cd?cbjᴔ'$#=,=B{[YxPdXPVooHiiв{E[߃.croh8ĻOIm۠o-_K?M.>~'AՙոNߋk)c 2h+QD.3ҘRms#uI̾-.f?$e5GyK*a܏l=&~TNQY|W4j/G '*("8GyX#1c|wx?T+ ]*P̠@%ӲrqєCt*J_{oBؒ_inb<+NhW+hX97RC9͎-/.!(Hoeq;%Vj(lϢC8V|-ѥuhohr Kjo#)8aǂd+a]U´'sRHA@:6]f5⟣3sۀpo xӕ%tkPN۠s?ASٗ<(ɩfJ=+~=J4 zF@r ˏLW|k0Ǭ+??伊$Ww,7G_]e8|r=LLECkEg!l>2LKЀ-$;?8ϋ]>r JӐ!O^gXu'tW"s rmt }tk(T^y' Wk8 ;.jޞD /jCmg$]%˳"EWu)VR30A72Gb ]I/:PqI̺|DƖ?U#j}< ̒ 1x/=R|&KrLB4TZve4#- O 1p(Q=E[=s}k2§C<;ʶI0$sW/9GusxX:c[gCV, eYnWP۸wQ:sDkZ{%[쀷VG8 ܃mtXE` vh'A^ hl6JBh/(~1f!S7ۅmi ˫תQ _j[.f6nO t?El=uQOQ0V B*)4nb1uwkLGR7&ށBӆK]f:~ju-ADf:rҸ#>i)nuTՔˡX/mP]z[|~;'p9a0M^v3 ?D7trJnv[N5a]x-l~E݅ 3 8l1`w!pa8C56ͪLs:;u ]FME,® L!zº4~+ON GdFMřv&H$… ͓nRk[W0יW;h24f0#"csēdB () `nn=QjFkT蒾s d,Y'׀2Sd`Fo<d{h5n:ΐ씚GEc]v(%H2}@";U7i.vJ"scrSgț[%-!0}TBSG2$q 8ԡ~AY p_Y=OlAe~&H:NjΛWvE1y`sv7 W wPik|Asn8t||]jғ%}&Hh/ϣMTAf,FLeF, XIMZ JͪhOv,pW]GjgJ%ET~?!Q0n#j7,6Zمǀ#"^(Hz g4g$&(\,IˡuZ+h 0|y֛Du|!V&&Ep/Dč bhq$ƒ ܿNէ"f B><9왺D$4u얹sn]p .vďFR6O ePsNazw# jQtdWJýlIy 9]O޲v-ٓ UpSM\YpU#Q#!^Ɨ8AH՘yYL(oe<3 ]Gn;3۞9Qj$hf,2xKnϿVJ+.,\B JΰD/n#ƐK!ckEtSМvJk#yBm'NRP*|X趻Cȧ?&%7+f$ E %(qW@[戴 mHf9vy.,!8!vCrɜ39+M.b0O_~U#}[AJ7k*[!I-\ɏ#UF}a@XKCWFư2Muą*t_C#Mv"lv C̤7R|vh[T@J: >`7|J #z$JϏȸTo0(4\܍Q} IVׂgBMP!0h3r+T%{e n9GϿǵLs֝A{hVV1żIIQ עSߡ^k3iԞ3*͗ξñ #G[J:A-( %L>Υ/@B6¨.GT/7Go6rRbFrt#H3r",23;>vYbzE輬,5 :j= ZB)8li Ґ-xcJg0EzǡTilfԛ aHH~lr_d/bi{O/rjT)#PR-. `RjU.fIO}NpfC䪍4,A&PJ)cC?x.dX+Qt:ﬡRh!oM\-k1֙pzHnf8ʒDSsjd5T?#eQIGckJNVǔϹn hsJWK5짾.N!f$+. O|( "H=iR7]r cQLU繴2&sf${P!YlFHԻ~YȋbA͒?=z(r8mU5IN>9 xƙe,,3D9W왝#OS@Mwҋ 洂QO^/G2/Uk<:cٿհgHg燥~Uz' <85p xUK΅HYfw(1@r:# &p[EXPgwvԬ47\Tb'*Ԛc.̼q ksS`v +igfq].i*27_ոPzڴtCZicb@Ixj`-[r̷,;*ۊ%bvN,1Q8|˲džW:rFh||[b*VsQvH7շXp]xvd#n12b6z*$Eu@qr@أ8{ F4אwy,T Fq^wraΏ]РT uP}rfdʁ6rr2lW7uin.=հzc34 X|u+^slEmRjO̠eMEuui"_WA}Vfg^;@+`(+;vf1`jYD.6ljD}CpjNam^UZP|ܸ]_kȤrm : )J#ٺ)Vd;/V[HRiD*L ğ9̄;0M.^ɇӽK]10Z cw oQM"V+y}W9ć ĥ}sۈ?.z˓+ Mm;`( 944U)~avEsύJVغA+N9ȁ7歹bj9pp7@7c+͈)u(yT3X#FmFsddTĚfaSQs.Jj bk4(>QڴB Gn*`]ts'$oD3nRom8SIb*#CW:T)#ᎄ!]!A\!c[,nzEzHi'd ^UwsEMU !1K~x#!g`9jcw*L P7Uu/ D LI >5 as߄J Px},ş,* DV/\g9֐ +ݧv Ӓ>>zS`r=@d*۾۽5*K#r$fׯTARN@L_v* -u#cQ'ٖ 4"aRb{<#tlYurk!Kms*Ӵ eD,U'e 7@!6%#LK~@oKU#|xj+zx@Y~up1&U[<)-V֍eMv oF?؇0Qf G Fo{nԓa eh 5{bZMМ [XFm,pcV(!L s&0!|NVי!jfCGAdq&ټL7XZcìbjQ}Z㳇6 pC)9Qf_ ]Ke|p?זϏA `#)H`ߩ] Y:\bPj p&2QD§1 -hs" o։UpTTnO"?d!nJ38XMn=o{qcmDWh,CvLz6>9]!dv0P0nH0X7}$-gas#`H\pYl&H. ), cYQga)*歭h ۠8=:zB }Ba5H%zTz!w-JtrVCުMGm Ro<r8S5ҘsnqxÂ.Ԫ6 yͿGyBS#鼮pd`BxTe9̃.'󺾚v)K|ɟZ<ɽ 1@<s5@q4s d\7lF$`2>8@0Kl&0#V-y Y /+{h@8s}p`6zyP]f( G` ; @pqz)QJK!nl% y:QS7?~oYnV]e[u JOSI]F.B lhbü(aiH?e\_ ZS[.I)f90>VڟRRkFAbH[Aп)&PMûihL Z1.$G+z<.ʿ $]u[ i -=ݺw>νHOwozݿ[ա,VjKnƈ4$?П@ beȎҺ'$S{T@\cM2"|?J w{CA 0H4#y ʼ];ija/bVo}ŚHf Z,ϙ/f.msjI^q;6(_Ea؀\z7* Hb6r@d,cOGMp{Կ;EOMm:Ka zkyŪ)!عۀs8sֿrMCgZc,hp,v+wd2|fP<{w2I;2vא;hg}].?6r28R3;yo(.wD4"b]}(2ǣ]yp[ Z$AN QA>ܪ c7Ӫ.I'- V2tRPܖI*g!bt#eBU.[*=QRV)zN4KDw]=#K̦&g UyR ·=_D.}1XaGՐ򅷠҄X()Z~O6> OAxg@4L}Vi>w Rħ3캷'̻e]=#7#4r҅QPhSIe 3+%rIe_TXT4b8jg3ܗcmAMdf'{0f7tQ59$?xMk!/&.ȬU/\"o izPEG F;, ]| /;B d.Ez<$q_d$^5qk6;j(<\ư? #d7|F'lQ3\:0pA#h;nQ{bsDB> }&k!n'9O VT J zuV-Wlڑ@4F]ͮRI,nJRf@[wj?svhGڤ@*L&t%#oRz UjTWC^MH)٧y {䩒Em4=p1;A`/c` fMc Z Ylј=3,;yҐni sk64kllHI\ *d -1H'__qoxI^ҀhS@i7+i+]v8naj湚rR!Ob)0;ÿӲԒMF HM~:["oјQ{K+l @M|rIHlNצB_EQBJWFn&T*vL#]|Oj"vB7@0ri?\6Fq]k grSoHs>FՏ*҆սAYhXCG`O|/!{<m^7\~ݸ >@ /$k7FNn&#  7tD)>j6񇒼 O1T}b^pX{c-ـyB#Dn*W0xO]aY8G3|(# Q>bϘ^|p죔YCվ _bp;!8Zbo[uVBo]i(S#둦O5ӜGEnɪJ'&ٔ :e|;i#.+t4r!1Yj Q=~35CQ4!,dqs!m\צ,qܡP,5& .a?a&IM< r%&-+,lEҪyUXtVb1%e?PGYhN Z *ڰv2~\{Ŵ氻kOP=^:_e0t M-tOْ2o,?χYFMy7cjgd=$l;%ޣ||8$]Z(`Pt0߱c^I roHBr J5mK j7%=''aSu:DK[*iaث {zM6(mc |̹,#9 0|9;j\ )gᒄ)uPcQ⛐Ϗ)Lt3 _"uHblCV;yoj2:Aؿy\K[Vu(Y0%Bx}1勲ܽFO6x^b0+̨!"τG|Xh>*& =bWqJ2Ӑthp9/֞y4Cf?mc͐h-l/ou\t(HC\J;|,g 31,ckCRGh9 xgǶ䭁:Xynj>&R9qrGYe34ם$hShP7F&/{a ׃Ce&37^ڛ'!An%|?sM,0k E'hh+;szX@Z%[ovxMCQ[n|̍rԢ_E;'KgZ0Our@N'*OB]BE~9) Xo`b-E=$S+5Sn( #c"hB:6!AYqd[RȎvd47nSm_rW| Ix"~﫬Cr y˰tH`~ śfYUz#k4cLi\nIcJF394mI; 'g*p0:{.29ټ'g]+\JV,]@{iPRkL1:\Ř:ynwߨO_GO2k9,o;_7[;QR^R-ӶZafه =@M"rc!S5;ݮĄ5 )ll36 0vI2"\͏|az=Y !ڒhu[kװ"|gTՎ9XЧ5̕X A|T0'rh?ykD+CRoy'8 fqӮ7Rӏ)DӆWq`,׼la *IgDao"Z<ۃ Ik^}'ә+r BQN6CSn*k s[g`3U[ʍ]b Xw Cw9aF~jFvZEUp L ކ0bRPUovzDxX<4rUwK$*kS. ۈXdJœeZ7m#; E?f_Dw۟6 JsEd  [S񭖩(s1@ *eۑRW8la=j ɸd^1+7y.8cg4V<l_pz(Eq(.q]0ta" LQWnU`.|RǷFCGї& xJ, wh 5.ʽt#fC;6PQT6vp5=7o+k~j؆Y*NwTv<[Hg@șޜtsv޹V%2̽qVRxGq)EiK[8,ĝqVA9 tm~fg<+gd&v7Kyh5錦qv=@ 'l2Kڀ݃R\$!g^5'*0ܸ$ )(cZ~.NG.f]| A_gBoXnz3*8<1C0~Cr5Wp9Cli䧽ĽUj lM'ahܩM/]…bAߊxv#!_"#* wMdn"y,ϐU3sXg !F:̿t`HLs,`rߓ]~a %sJނè KZXD `PM)/skQ,g<Ť&. ȿ^r='ۓt\ۺ`mۧ+YjG%tigd"zRZoT T7 trp 6)5Aţ,ouI}cD\h^8+ΈZPIS@R*1vP ,{mcѐtut#^[,H \y%EM/d!ͷn#6`DݝF?2;,ט&<:Dĩ*ֳu>t5|y׭xt?lKwI|A贳.gVdCoYwqKĆ7ъ¶@ ewxi܁78l஻Ҹs8=lD@/\gіl+~Xu7_vt笻Q ^^~"ۥD)I鮕2DLp,oƾWr&qװDytY\͏w,7<,-nW_? =GVSoGƙwE13t Oi$/sj`%>Ob57iP̛;}=?"{**勯~1^ESi>^muXL7OIPCA$*ɻ;%+<kXfDzWo\w-[$AܦswBvw>ts &0ypbl hjK ;jIiqh 5"LҀ[W 1bAJUv .s4!/lP~8`zK@2%/5m!Iodsh 0(T yğ/g8g*#[]`(pJo*TՋ2rƥKtɒq`+\]D]=`LE"@}yWo*(Q)Hc/Eu/hlq&De|Q!/;K_#Nh>|RTI>PoL)S1t p P~bۂѱ@br*6yI6qNxIZu ݥQi-CB>,[Fn`^\@,VD't֔\]V'LHR}d7m6Dp /DŽ秙UN0HʠqɎfK~R CŜAyGw);㊄Ugm^eap-16DufQq1.bOcN՗L m7C('t|p es2*C~)4Yv ݢ"hNӄlv(.o 4XaL- a>-^Cg&QwW)7"4>_3{FZ=s?@^K{CXҘH+ UaD bK5kcgβp;]/=9Ȭ Hk0T#4bWʼnBTL;3 n&lº[t*Vc!?$s/phX05ȏsZ.jkeh=64~eܝ y=]'rZ.*SCp|S1l!;Z[(o/'RLl6$K`a-նѨ,~ 1$'-Y`>XrQ-s.?ƶ1FPQx*7M: W8l6?G ?K6=㲕%J6Ä(+F ́v?sA Y<$:d/&J0~ ,|M;G8dAɬ(tevӫ w»J_2]ܸW=!S~V!~쉆5{?@fMmvy+і ylmrry9PSb2` <ʖ@07[l9?VkW.L|qZ8>lѽj]4伿/ܧ)5;\=qoh7+X,sr¢- `fWisHѿsw|`~|ӽs!*pɬ:p({Gώ]$ZBDR!z3{Zϼ R1lb3w9gRnQS˨vDv)]Z;eǎn`%a푒oRė LXkS9p̀~1hƼ/7C!F .'27г|i qxE\].UaMY {~ YNztR+pLy~34Mۈ|u/R6iD,[^B493 `I~fޟ_Uf 芒ձ`i]XΛ[q@D0,FS:Ι`iOzS7NJ/`sy?pmv#| {/hɕ|\l\j% 'EHmvl:ųKb;hB|\l/ÃOF9=baA7bGeXNC&k+.u#:51M{[1.”op%$X1'΂(~\i1$˛.z+@ҟ@aSNR4owI'TTڹHtfQV/RLFGw"֞CT/Bv>R$pMU<Ѿ8qkozy MD\Q EK0%5vHs^,o-VK[};|QCenw?apH}5ٱ %RS6(PbO>Yh@!jAiк' 3f`FA&:ˤͷ8@컖9a|zx~Ma_bs)P(NHN^%ϱma }23+ԕ>47e$nQ[Cgq5KOT*d#r&=(͛-F.h:ʙ/M R:17Thdn<y}t&q|1v>H|,-.5a V ߃≶=Y?1C7B- Y'd2qGO̞X};y(VK7v!fx hNQЛv{&b^gk!c7W :wܹqNI}'VmJ r&eW Qb7OnLuȗ+f2&'ĒX7O\3=9z#?>.sw_8|bQM'u'ﺥ4| Nf\lD}ʱ %C]W-A}UE,,Pb}* m~ U0Zfnν>NAcM<+g`!vݡҩFfJ\6Kb=,>GyykU0 U,U[覩`Hؚv73!1QXzA XGHK݆9HBxX>ˡOMRLsE~BbTߐ<9eMiCS7ثURBDB;iS $2 N0^Jc<>%ך6Oep@b?zj'Slg ?·u-T{UO3:\;#?t5`=hfsm|1h|ޖP+ꤋ;cB^aŒFala\g9GF&?ؚTQbîM6f5`HnA X!_IOqjYp dIh'E TPֳ02,-T^Q!e6H@:/\[ `#jZ%Z%-ê2ziRtFIo tLTo0"x+{;8ץ7A!־q F!NbfzǴ֔#(iQZ&ngj۽vSu2Z[2vfC+C=Z\# fπU8}Z[(1=M@&ˋ,Y0sf W+M+f+Ю2qdZ2?|qE܅42_j-x3njIx4ٜ=%`_Q벭?H~l~QpU-i8G4OI5yOPibY#WŨp6ӥ./EnŻ;0M$BͨNUrb_n*VFu=v׾21ڧ,LHކ, cOg 4y;*񁷝~qLBᒼjh̨/NzpfթF"7I#Lأ>cxΚdgߔNG b)SZ}ybb!G^Z l}[xGZ5[qߐnV;Ƅ{ӜսmLgro}dukFw k^&Km)I#@ tޅɯVОNX >peæy2CB9zb2} <7)2ql6w_+K(c6{zS:$_8LZG9OKGtCF~{-taO΍m Zˎv^(8d掼ِ0:9`G٤I.S\|F=(`73lNdhCid*wN #H,׺9V`f!/CkU_jJ!jYg ?@쯰_a\gvhO}xVP/,(&la4U54!CvsyH1V"Py7R7Gn7b:d⮢@i:Q vً𳂝v%1͆Gjf:2} ,lCy4x #'a][G‰Op3Y[ -=?ݶ4 83=xPh7s-;4r{Yת[+XhHphWLZ;deo 5C"nh|i5 %\ =3dX7tF F뺎 OUCpW)t*t pNݗ JIIÓ?l'-)4{r @#BP$?J=XFu3C/@Y*.&(leemQf/n$\U~mrÛ|J߭!(8qm2'^f{N1i97>1Vod4`=}| 8)~Z .6+eNwLٹԬAbnd̔d=p%}=:[]U1`'0!na'PŹYa6_ǿE|p͙sh#TPgM{_4s9=v&ICv u;ul&FZJ/m,:B@ څ3gk"ԶGA{tlO͆Ө}=jB)G\<;5Cy"gfJ[QZW8K@T?9lKj[.+ii^eBǫ^[~An.wgwy0'bal=&)0'AhpPÈJfNZTj$ ;"R;F@@%LB#/F:q?x 5 B&c wqa?WڞM?{\`n@xurd(3 L9ccb uI V"!qL.&, SYaSd]5S@w!t/hA"$üz$jp$U,bz,w۔ű5躉~k֒ZsTύH< oKPS)!aC^gJV=) Ih+{Nm`* ba "g YO^k3D1?3g+E@A]Uj6u:DyE=!+Vag"j-%/7;~E 1ZZD"GI4qDK`p]e{va(Pn 5}~F2Kc #ᾡ]|*@hagU9 k nۼ;Ϥq&_ y$?#kfTLb}BR2sUL#jŸoncIRFgS f/0} [23ϢIߨQF@4KZ=s0t/o?O \Dɛ2>_:7Nf'!G]F4`Sܙdx̏r+)"{Q9bG_ B!RG*'>uX]ߝGbK{P #4deBQ2{c?2O/xC`0M%pFQs2-ڽ$-i~sJH#)RNh#V@ۅ`JgAVdGIE(u$eX+#БY!םw/|`*wM3-:S V,FN٬@)>;cי j*4s7%OvB˨FEԔ4Ή\=VU{+]a~/YAqb\ ΚZ+?)shJ.ؚm7,-CnbnQ#ެpٛJ^K^^ZB@\x3IZQ`!-Y"=)}E[yoXB.Sï1k8) 71IE^pC;ӹ'&39}5+B#Q))@BCIAl#|٪*A,՟$ڂ]HmD^aQWUYӀ+{}^/K@DoCU$#V` ǫaVϪtM,z!G;8<2B-UE,x4B J$6K[YIr˚XLfdHwfXNiY^6Ac gx> |o^9 ÃjRHKYL3uŁÈD_)K8klQ[󌶥)A)ٟ^ubUEaeeb+szb)C ZCES,}޳[$miaRXV؛9wB/qȯKܘks/xr ]x@.sr]FsF:\`?r6ﳯ'$V1~Qv8*lR=^B"CAfK(Q(a7X!MͩꁨV٪:즀mxC&!)E CJJtQ<9H\0q:ox'R3IrU~}"~i)e2 oʉ!&xp@` r{HP$ʛTr˲8pನ-Tz[ے!<B:! HFdYI[u! *oɔAjD'.i^p=CzD?ER3H ;=z$@{tʠ0VbZ܌P$4RC>D)4FU>*sXAfUz{f~ Xʃ0$b' aY+^1] +#H+C%@MKukZ'$,0)/t2 o'*#%6Ց&T6M,u b ZwNY׿Ԛj_}uKwly"gn4ڼ%f`Tx?Po%3d\"#2Gْ1Qͬc#0`§\wc+޵zo7}Tۧ_9D5e_9,;YREO >eh7a"?;(VϒY5f}KP+!m&=D')Oΐyf7{ikC7 f QKDnS/t;j`M8NTr Q$1J8;܄;Xԃ`wC8]AFNw{O yۙևBw%Q6D((PoX3-0﬍Y6iXֶxՖ3R 3ǭK QUr-z`VlcFN@*vu>*N+:Y௰Z%.k5c^B7غ u[OfLL;B k[LyYd€yw9[ uj˶8t_5\,.o~bnISyM좼) \@HEFywtTL.\ MG$⢵0 e-ZU]OM$eP.v>lI|#^,2-tV*oDt4Xpоp֢)nnJ^y`WU卨JESqs,Ҭ+JO Z~dgbZ3uz9-~?9Dy;Y=i^8:Zǧn(M&P)|䛇;hp~:=j{;|{:Z 2#D|.'̩6.O6vN'Q MCyb|1xԱnBi'b=GUr dp\{oIzבMlO!Guir\aWʶFg<,} Sp*fΧ1I҈tB>P0kJtDyZϱ^ *=P jqr7)[hsu"eHz.4y؟҇eB6eݺӲa/pMAdw b taPb_R:X ֠smg]j9D ) _ZÍP- ]L\| PjE{cɄ G.=#?bl|9)˪V #If@L!Jσliĸ:jTӴ}Q#.gNh.h9Q$+Lar Rs[ 6@|~--bSb!Z*[Ps8g$CX݆DYB'!~]~H[L.\[nҸ>hlB-ݜBs` fJ(OОtmVxTnZ]_J0Xpc&y#B6e9xC$K7Ô\Y+` = Y?2 $g8C+q z8 ;XN o]:1O i% 0ДHj7f34n!9,q)S6RJrd7z-pfQ=n!dOlKW9P ElPƹ(G]r4ߙ բR[v.'|4KӏXiv|<ƻKdKڏ28g/P37܉f>*vgQV9p;8w {'h!%8v2Cmf07Y7b*2zZR{bgC-m ^!eOl'sE݆sly9Msp2 3~RolT=WnܐtUC\bX|Dkm (/ۓ$rKDB%֜7^srkH.o;}va=3}5zζhXr75R Ǘ)4P P|N}G;BXTGM `RoeQtB=kQ2[6!d%'ޅ}ԖAfىu5E ·*Cn38ںR}J :^XBgAA ~zF @\dnr Lo!{` vBn +|jf!6gZls %0(M##KJlfn&۵ncJ5CW'LD /&( 7Sl\ #$^G p2)d)x B"w4RDC,G$B"PN8hagбCˉZ#rCT+iqnIC}qP]CؽP8՜ttP6t5vLFֺfB#qfF2/!,1bwGh 6Lʹy;rKSdYk !p|5U:Ya.b5_ Kwd0q  y]s&)RK^IgDģVJ0v/rZn RRF5Y\ߩl$a[Mwū4wDE698JuMO1Hg0ⴜ7}r~oL>zX^gƥ[`.'KRN%IGoB`x$iqBQA4jlB*tQɳ;2{턦]A llUG,&/{KŔ`T5wإ(cX3PHlXpM/ `(i$SӁr]P[Pd_$Oг:Ѯp-I:Ww'KVwW #S,GD~pbҨsqΟEsTnc3|i|z̞(oῗUbP9 5*>1p@4^PGbZ=A"ػRR~P\!Õ6h@v-TM n 2.r=` lX$\-y(8 NCk-C`74TьJB`MDH[|ݘr'NIhv?dj!zA)̷Ix\L/D aF\_:YAMcCdڹWo w6R1ٷJ+ߡkMi[O/R%TvGDZ]y]$e(/bxAXfOg,OI1a2 ՔBӪol@|¤aTY3#L&;( Lh9 ."4S |Zkyϩ6)WRZFkjkR¢T=Rcz$uC|lG.H.)? G MPNd+N&_".Ih~h~ǬPNcUSEKOqPS@Ҁ )y`NuZ)DRfpFiR-U_$qP\6Xk:fsbuAypq2ov[4=?UWr& 80#|Nl`qq6'8 v%εnc:w$t腣69x+#ϻgՅ(~M>Fsa;R)5g? 墨փ&g)Y;hd/]wCHB$N0acVrKiu b;QY51@)=k}@܌Xou7XW)8@j/p 8M&϶3a5ڑ A]3<4!b>fdyH棋7GrRo?;g d eM}։nH Mabe=&8w /~[eSblefvF0{k Rjj"|݉pNy]hDz\F[@ 1I5*)~\qf SS1_+~צ˺$\ P0js!hܞ 9ǘU-XT$o846jphB8z= !=*vYXGv7/(^r8Ϻ_Vvmidnx6%pbWFx44X`4d)pӂx-6O50?m ,--\*\ ӐaaAݐN]q#NHyE+z^eN}?,F"W(!v6Eb mY Ev0մbW 8r_Wj I$!A*B5䬊RةH;RD&3Þ3*5Er+!b!Ho50zl𴣳թz 9tBcR, &{;@5~}٫ii 毠" ΣdڛčhO+pə0rm 櫃Wa^|ic,U BvHV1~Ӑ~p \ixQJ`X[0abA@VV}0A.&::^T aaDI2"eR QoUxx<nZ uB=SH^ uw]1*mp4)SZ~̔JG/n>]n$5;E),,NZm9Y=44Z{5+f*AE%:Vz)~>|& ˭G]^=U"NYy_$;H4`s"wb *;_ث3<0A1X85/FƻFQQ=נKj-d\cuo^\Ą?߉씀͞SjnW -脵h|r0C.8@?yfgWcj}2[d]!]Dbd_$ra veBzTr>5SEg+$jtf0@otAl(h`G3p mS1 eq/^\{0go3×Ja f+?( -[CB唧l!mhnO2WCHuz~w:D~sݼ+ΟAÑzLݓ[%:8j[ /x㳍3CIx) Y1P_c0~ ?*Vlt _h[v1p(}y6a",n0 7L?h`BIo(j"%G !r r҄Z.sRm!1,r1x`"s6o"sV,c(\;ngQ[n|,ea$ 6i_}ܾk6<νJtw eό\w[B3`K,-ZOvrі lRMqe@:L5M72mKx%P&+JCqBE3㛫6@R9wƚ[$P4lڹG8#FpxӍCT`5||'6˘Bq:–4!ꗕ:|ZۡXrtQ3>T>pTF%"o{[y rezOr+Q=K$Hi{9:$V@jjFTe|Z>ڭLkǛ:4?Fx&-CM6,gn K4d%}yRWc- xtiZ8=lǢ.+UZXYrŚr>y"9 X_ԇ|1;6/iB0coH/p+,# `?Y66K#geʓ~L{Db]HgRqP]U۔POUx70pF51ߙhar)E[Mg :1H%mH>bPt{{ߤ/%H/JκQ!ж01 4`7fмpaBmW݁(M6ddv<5`17v @*Ѕ_9b鲓Nc5gE]{Ol+e<qnOP 4fuK/9 lyOx(UЩM=l PVqt(kU<*TN#.W1T٪5/IlXӖt݇TtR(c?"u甍9dR1ZT"tѮb̔nuH 2,PT ,c>Y aF'=\*PFTL[5M#EhwZH621`͋g &L6/M̢:&P9}jW¯U|F-Wf94ᅘǣ1s=L:(IAi^k~/vt0昣H;y{'6-bpN pu2n 2`Sԫ[C10|{+aoп`OqPi/'`P`8f-`m|GV M:RJP?ґBw6) ʧx/ԏxfna柾hqD2@Ls b㝴dt]%&-<k(v>}L/VrxFw33$$VG"i}c} FmKNN/)Itf'wF?+^mxcz,Mq1z6qN'4ʣ$nR ;Pz;r~D&E>!1o:><`?8e@>7 ơaq _!XNZ WL(T s (S;vTKy}q:?/&/ <+mu7 (Z9R1H@Ǒ5ꑭ4 U8;).v<(> ܤ5tA F,A? 1@2Gb9vDyTZˢqTBM`ߛ1^2I*mU4#c W.R tI;s%)Sr C6dg4ϋM)VhNC~'j+}}"#`L)&hGًG+Q{ l<"P t 摲Y@5&CRX^vTfk֠&u#O[=٭D\٪UY.D#] tw.ـ}B|Zԧ\FPzBD}Qgk-UhH0@CĹNXz?6l"iPم=}mϞ+ȩ#VkhuرmPOfSWed/~/B$Qؽ,^͇fOj4[eg SۼT+Co|1 #T?Ðhrq[(Jց#w1: Vⷌag2M$88ʎI/ $ڡ;NPBts*Y\f-0âͳ| #)AK$D2AvǞ<#hK > 'H: XvOR ])`ٶ@^he 8-pxL7Y+?S|dg Y}+61Anr{]fh8:o4ꢲaoi2aj2*{Ȩ)rg` H: <.oE@=&`4d*zttPdXNj';LJ$Ia\JqɍQBeG"QЯYY P|il5͚m Ka A~lZ5@ذ rZzd[0"9[f*m!xo&~<'Α*;z,U$15L_^usIWC_Ie θÏqx6AR @9GCxt%:͌]SlCA4tmm8ӀzR*i9wWCb (~.,8;(\gA\/[WP;V (UFJm^`s2q‹&tv1UEZ &-_jSُd0#]-/k_:Nx;^ZYF%ЯE YzkaLV=:p9+sy>-Rw_lYcܕLCY>2SW7'R4d1T ۻ"֭fqZ֛BoCmkMY+p\gڲ'a~_л!g萆'lgC&o pB[ DBW:`Ʌvܬfϋ[;+'!uď3|ղ9{#劗#ӝC u) [9q/APΣ|`]m[~NP|UW\pFfSI%.^P+Q0c'oZwaTmڭ,QU(T[/Y!uyƏ~2F4\X.ܤISʓZrb4̓}CCN&=,{W* H`tK͗ZFw#T`0M})"qk61+<66iaw^dN@\(H0v뱲H#k ЛP4v졂[R|@,uNlAd?g!@y`:0(1ߌV?S;.1_ pJs4?; nK &'$[OD))-ˋ-1o4(ojA/jƋ^իcwEX98S'g=tyG2YܬN("el_'?<tztJn5RiZ.)Yl6JX4[Au\4[lk)ɂZ.n~'AG$`0u1¸f*Q.M: ܽէ^zfzh'p]b3ɂ|wpo{6"10P:' z}~yxxSI&[ |6lr6#BhVYpe$ yXf䲊p"j@nɖSVOyG>'Y !O,=C/srtgfӸKi0C`/9 *Aa׶nqjYf3S(!QQ?r0Q38?W<I]IzczI=B&eMŋV LEo-dndzIn_)N-8[c~E&ҍ0dYpn sz0ם0_gG뼩hMx!|I]uzwOpFN\e|GTXﮚ7<>bvWNnBGItvpY{@k\@:\BIqw[G=~KKЦlmdN̆rFp`{-"f ~ŬI{E5!%\>fY /%#bD069pp"`xD9~x"rj~4~_";>} YU~h%x(U_zz?9m?l-ޏP'"1~iǡe $ $-v>@4WGxs 2OKrCr\ۺY:?뾅TWUu[؁#\8`,KO+7F9;`Ðf'5k)!qs6,ap*A2]hsB./]K帪~h1q@Yx }Y@-5i81/hja|^àSP0O󕚳[-es6Q{a sm9o_Ke7fnCkG?1xTű4ML/҈m^<RI\@ű T)YZ_01x0e:|-xs3"(|S#姎D0]xa:SQybhǝW›% Έg\Ɋ^G-:)|H5L[GXXa~.{:RU}FtY皝#:PLؾhcz2xc;%H?U 5''g)PRrT|_jkxQoC5~L_}N;܏j[3빣f8-F`o=:Z_/9!% ߆ ծ2’6)8s!G|,ru\ѫߛzu IS-J'n߿>OmU@ȓVXFgx]n/"zTQXuyޏ(BTit+%T=f;d;-~w[ciNHrzj`Yam#x*iIRy2E !J\?(ŭ3}@>gL?W}nJ}Cpc1LjCs4l3{!n qW<gA3mk(* ld0ll~T{dߙzNx/UV;E# ~{k)r}$r/m_,KK+>鱩&@n&l,o5wo^%jsA}z. rhfSWIp:%sG|~[CLFǬpm01phY(C"? 6\4Rbap}')^IUXL"/X-Y BLwqZs}_YZx2ÌtP_])Fľ΢nBZ(ݤWb u:q8UymaX 5ӍH:.F+:Ҭiv"VPvȗ O*q.qu,pmmvV?s92_%혧?Ieq/S&TR8~M|yjtz\X=)*[FM!2*[l>] X&"}"2Tô3UbCx.u R?)GU`V 4 3% zTԋF4KHpt' 9$Òlˋ&PV5MK&[ui]~V/.!'LCUuD{{?k=g;/ݻr$9HZW/MMSKvJcvh@j5kf/kFp8Sze/mT"q[y%9A~ᡑ3p eV1c[ɲ+=,'r/y:$T,"ub*@رө _34}sV Zc;䈶b@ߎ l+{B(i,wxf}}p{P{4NCq/5pÂy7( nyV)XqPn9$Fg~+%f,>~K O.uEQsr,\5{SkB`!&'sJs] -ʼnL cT_G<~y4M0?t(w"h9jSNO-p'X>T 5WW0Wܭ Tl9Vm"n7hiK lh/J 1;?x?SeM_~unì1 `6swhCFW"0E/EI|uWڪ;YFFu(@:'PwBƛTYLv2Jhip}n#ʅUh [*#ŮܲWYrүOd"9–?{AZKߍI@U1OL˾.-60Ց* ='{t$4dHhn$ӱK0[B} `m93]I= ͡3PB\`~3|}DML2Joѹ@  qj=Tޝ@ #Җ:+ 枥q2F]%:0 d1qUoML"U% c0X6e~*O]Z4nb)Q]=oe`q>bƛ߁${Bux,xҁş7 >e8h P ;xe0~. ^7hxs`tѠt݌W gጊ9$`FIBFlYA_f`=or&7 +$Qy-w>ASry0QW~sŭ6 x}ʻx*8K\Zy}6~IH&DƻP>T6"AhM {U4b!FK9mFW?SN(OPqJD|$"X [k\:{}4"4}[=Z &ImN7ԟB6 KxZ( r&kcA.bw7R,jH|&MJ+WPGnkv-)eyO(P jɗ_ Q}dTsGiWR~WċUMѿ=*M {|#R0ȴT%6JI Ԝki"lt?a`70nX;(fV?qkbЅuw?BYI}^Jb1O}QȐlġ0ʯ K alS8a1=ս6 ^69(1ꪗTuǥg؊P: j>?7leg}ȣA 24JqM}V$[6)р}֧}ܮ"D J W äxZbNY]I&4G&=z9 m8LIalyD:577@ecNb?nq kK)F>P{B';4ݲË4Xj[3>J fW8&.zBP+^SZŌ)ۚX]=@̙O26rϯE 8dn4k3kq0ծ7L}qJ1fa'wGbEw,[%}|Hj9.UI?8TSӀU,kߎ 2p--SϽB.;5a r2U8?\D:Uh莏Ww0xҳWmp= 9&H:&XgsˈfňoaP*2JNh iX`ujм鳂"])L_JNeψYK  8gN8C3 !rIŨPO Iv@HGL#hұw@ab6_14=C2}6f4Wdأ J{FX`s9nC@Rܔn*fm)UDpJi-h?N]tS0OtqܰD 'NRV%AIwAQC DTb@=Rܜݱ4+N#@Ov8  IDk`ǰS6U:l3XN)Z iQdv`{zd:H }.fZ]40lj'#IF"o n^9#?}VcNťfc".OP#O Gix A9=5IӸыB֫73bTlFM.ā#+w8O' k*p%O\^;U@! Y)xbM$v;}O>G Wf,9ӌ3x|0UbH_ pyF{_ +P] C#h5<EkJ;ͼ¸bs²ً3֫O,{XxFq qjoHDScFjXڗAޗ}zV %wF4@KO lG}!7EV J%:,T4T3|TI|rK`eUCzNqZlЉ}?>Ń.*6QZ|kƤeV3.*C삩O"wధt ^ڝN5B65-mu y76/okq4RDe9\PpT ۮg:+!=Ec-r"7縖wU#v_!}-}pvgPɓ]žv󚶓/h}M1Dch.cPh7R ųQ>]0,a|{ʷؽ*`euءo2Uߔܷ[\UhK =)/ajֲy3=%"mAYtnPh#D"<%UpÏH9xH ,# J% HBxrE7ȿ-:4Iң4׵լS6^c{MS &N)hd[RcS3u-9Q{7ӭ]>b #H)3?! ! BZiTQOO/#L V _B`WhH!*X+JT;,&C"#OMj&ϹzpĕRDiԖRSA dc?_e.XmأlG: ۱&~U{ܭ"? ֙AW ڱYn&B 'a Ӊa<Ҵ %Zx53Grak)vCBCw(˞f|Cw39ҋ35|!aF'؛^k=3و%RVKe߯"_\97RA䰶 !E@Fȉ*:Uݔ@&E|ލl5t;و]$ln%Q¯km;Չ՞'KFkMS[)Ò %xf%@ݣ*ÆHFazC[.~ J]R0[;8^D`?ZnEX\2KZ82Nd_cU;?K~9^'͇ 7\?25\պź.G0=nvn`CѓGpњ( du;kZ "33h13.- lԹ^eS\l@!iWϦ+)P"l|L>|1; 2VI ]\Yd\cd/ >=Aڭ#\QǦLX !i`d6"| ?N\ gIvx۫Ef¾9wnYć"O gƼaQ…6 Erj_g통K]0TίG7ɜS%QfՇT8o\(, u@9F›poIDR˟K:YTL˛h5-n\fE=Ea&%V.ɚ8kq^j,h2* 5)B gM1`fkrqGBtU߀T (&;?-})5VZ;NQ aWk0:Hnw K< qMi@O. Ld/yi80j荳-ׇ|?7@CxXTRkW4c/ShX&T?.8#w= >r (ƜW-7e#JZ;}T<1j2:RINXgd<.jWVPA[shl8>ѣ 3zsoA=a~/"$ |Z =, HgL;PFv"^6\S}R!{~Iˎ]c?;3_%wd>Y:vsGj#/PD&cV}qRC4|Ϙl{7rs!{JQQ(ޤZ3Z׸= zڮ} fzkge1hkڶKB;eLNU ߪ Zd%4 :|{P+F!S..u"Jt&``=Xv)^Ye"%CRP3'%2Ȏ|O?CMݓ!W5rR뾭)]g%*mHSWz9MEP9-L2GR v"Jh N b*&zgˈt ɄU ݫ^w򦻈k #mKN/[\`Y_ O7OCl50C/y1$RfTtGqilIGZTî t /cP@ѣQ$ H-Yq1N\kHSD܄xZ8Kt! .դBc 3NZ\cIJ#z?2@iđӪ'T>'(nM"6TN˧C%gEô1.I/dYc0iX# _n{aIMؤOm/rvlRcֿ ?1<~B8U &iDE+*ڤ||eCT.͠p_Ku̿w#rC%6QKJA6ZVX>niP^mJ%~d@Cz{'#bMLPtRIbDwt"äϧx}Z$X[bU }1\R=HgA:qRRӠf0,k(K7dV mu'Jl7l"f2+m—fit f4&la >J18eq^wAoኩ V^708Ϭ>m"r0%%u ѸRYHUќ!BЄƲn `‘&[#^aߐGt65YUт;Z{RVZ1[XA[U" 9㊓t[aG;yo^zx)C@ڔwW 'q|QYeJ.dL, <G΃Nf7\oVQxY~E=>.@vcѱt.KHli 2GT$ Ђ~0l[HojďI?)PvQ,S/Ͱ7>4{xm-> 5s@)-Py늩EyabuSoCi:v{DzшM0Ƹh81 ʯX`'SuV75h$+3Y+Шfp\>գzz̢ PD!Py6Jႅ>U`pWP _uRNbsC]1Gr@`XM̸- POG>fKke\+h\p'2dc ȫGVwpR9.Y״-bjFU1C~j|蹭Su=*ּ͐YVBVKD@ ݨF|r$zߝ&ۓ(囇?O=ޛJi.޸w Y#]`zBҋ?ct2PJV̷'mk {o$_)ecNh1n)B`uB~ac-{4!Mi0gznPCUMz ԯQC9zW)t-+^-P9*<=[)gq\ ?R׎Ih]5oHDP4!k e+3*g"uS:vQ/PyOɯf2'{op;6] \PN@sBuD=P[|&hڗ v RAzt9GSX&잋4*Nx]Jsu[jDe J4g16c%{CVc#NA`]'hl]+t FkkΥұ"_7;"vҒ^l GDQ:M?1ٵx9lY&iٺĚv7,݆Hȉy3qD?P(^7g[cgWKvkZ0&P`-/9Y*iA5'/C8`^m"Ycpx۶朗\\Xl n^JvvFwVe.@~#4_ Lܲ|*i=Jda@Ne< 2fMR=@K: UVtl'JJn!(BW'غ2Ec$zzom7u,l׼Bw໤w浞g*1(.xȟj|:sퟨOL%7b>B!"S~әF*wsvV.nv̇AsyiY 9]uOi3o 22Ŧm֖F,xJÚQظ!{/x^abb n8oscCE^kԒrqͤ9kz6,jGx "e$\/-_%H$&WQeY^I#PlGbo|C5/,"e]CRAˍmq#{V \Qx $$Q=~>Dx CTzEK42\N&ԮH zm6ԍXtJ;}x3C3$ȫ}9Ym$ ޢz?_BapC~xQ~ z-n4yLYV B%:SSmf!"'C`o{g{x ~xO2h_flT s*sOAfS !eB/ X{̬ǛvSxx@3UqA^ڦvˈQe}X[\7c[^[kܴoѩn40t 18' ܘecK~I%7ԭĘ[i^)oո iuw V| \x Ӥ2&/4PҴPdou_6 eD5*OY[mBCmL|gwRY gY}#O)')?$z4p[[]o z{̸+b NB9*&` T"7Kx3KXMPf )eY` $(r:CȗKvΘw'H{g!|!zaH+0O?kVһ eI?vR]w7A6D+~sӝ]7`^$lJb20Yɕb[:v[<" ;|, _|!tdaNkB˽FhA(ss!FCS6a6P=tcG$a W_f_[od6_͒ dp_f%@m0=!3^ 3>IAe!bi0*UZٲ%$_݂0R9X2LQ=#܋) L~`+!XQISfaÈֽh SJȒ-3M Z?Je!I p؋%gaWṃ,I f&/{[p,Dn-#^,V:ƅhJ_ImƇ-As6VsҴHPj >l* 6'xWåPjy*§#&q v@ڜ'!(7"Hyd*V1'yc 귴DnUX 41ˊ}=vsqf},^s-( =KB*bn/y=(0>'Ϗvga)۞Kn~jXD)n{{)9FKut%NbȰjItW!d›RSf`It7ΐBnAg-Wꦲ@Q(oR y L#@'ŠTЧ=:wGvyy5,`xb2+=؏)(.t&0؈Eqw](I78ZF-ԙn/l,VM _\RvP+Eh6M!(iy%cha$: .9Yk25JD,ҫo *}6l4GkLul< ߗ{$uΆT.ŦWoh [m !ӻJVYX"N,H:̽@ZZg2gcBq'c$ؗ3{ ox76]Y{d OPѶ]Fө}%{wI -E7jtz+yN YgB[-\Wfz VYw5~9U΃RRĘb嵨](٤ǐbHK7k̲':ǩuC#a^ο@헟}/jfc*#K٘K>7]ymh}$ZB<&xOUk-†5&$ZK#{"jDLIPB?P~K|Mb'Ui蠞h:PUEvzLg"Z ,4qҸ#V׽wJ<βb"֛NG  O@G9Vbs1a%AЬa Iܴ=S3.B<;G::%" k[3:@ 1'2:d"z72i%u'ib21 E#Q ,/*.mLr/h[6xw%G]vOXA_X:N6(:Rz[b)ďZ 0mTDBQYIO3^Skf'9MXe)+M4L>.'wU?\1^6 J;ԩ 8$,Wퟳ2%֏WyΟYnp A$c-c*|#$^mSwwbmV"f G7820&=L@Az_[ ,\yR}5KJ Ŀ{=(EЛ*?큮zۯW1X Ъ̾bJ~NA M"1Z_$]i̽iMY:L C3 SZi q IL f}LQn{qչBxQA}諏Έ;tqH# | qŐ!qo Id`LᥲW㕰qm8lѻ3S29;{4cUlNS.2ڷg P&`m[|,ıfe@Չ.N%rOkW=4b|DKep:Ǵ%oHhO:<)tǹ|zF9LP ǚ˪Sm`5Oc΅H0^ ͓vzaq`ˋQ%Yu9i)p|:/4ܨVF fdpel#ןX ZTY6!mC2A %_ϒ̌$1^U< {F zFNU.w.;f|ݤvXL#Y&(∌D7JPMֿ*H+l'1\{-P W,q(^ cPѡ&fW W"TbYDnNڏ5e,lDi_3VqDSe , mnNU]b}=5Ŝ_=C I^>|vi!1ce4b5}b (ͧ1z}_S!NU_p}.JtnXWQG86Kx&EI極;(Hhj|U)WS{®@do@)j! ~GZ|afnu͡?w`Ȥs}E.g)H|{fk2}t냔TF?TNz|Џ 9g?qpgK%dIr5e/z_伄>[>HZJgp.ZŘNY??+-`b.Fq`#yo!Ѓj8ǹȩwl&c)m@ e9L?ʒ.NasX=Y`B/7L. %ဘ@ŃAa+,نMœfrVN܎>$mz%'TɉqF_P68+)s@rf :CImVfa~g aIbôtx, +?u+>0c]j:g^`XH{4?@oٟ^|&Ȧ?s/Oc!`n\V!DM@R܆G%L ;@]-ΚX.U6`گD|fU ]q|FCr1m8HPnoȟ~w ٘Cf,=LݼLֿ=O/l|=6T̘֤T`%3U8mMli V/\X F#_*1ul2j$cܹ'x¥M̢GC4⦄̓r(GsO7 ъ80d̲|fMK]BB :}ߎsh曋e[tҟn^oMYʣ'l` x3_r1($A##7rkuM9.X5t=rAIslRK* aWXWqd\ uNYN("ycG%ǜgq.@qc.D#3j.'R+FX8N3."06mIZepkO˥"WP;{>t7c@v| J?5rԌ0eHDTdBj,МN$Im )T=hU@Tcw)D'4l0OGW qݪ;f3AG:8O{]_& obX}T8MŮ6q#hQTrij]޽}4\gp`siچs/RׅP%)Pc,sS|󛔌{mX=tG'R_yVO񅫗wWLOv! N3d1 1 )WmObH[ݘtǙnF=NMtQ Ak G;:dz uܚ0}*=/4&6olFiE`b; s-ǼƖ<$lt~,up6@(Fe}=vo8%c:*j"`ƙCzg&DU+;X Ee8Tk%8@36MUʯ/9 50YGqۙ4F QɇZE;Ə(hO䝃ϒ&`, F J[1a$.j=j/W@WqQH_GBo vv\*x=D |sD4dQk]`9'*D_. [KsLW8Xi8QJJA:Q8x)u}{tflˡЍIA~Sg8FP'H­Ed IgܑEk"\44¸XgL05%8X Tz̥MyhC(E`T#̦Z?ӞYno2H_U?gz&m ]R: &,Q`V@z|fRr]X[,n|Ez5إOEqs^eC, |c$B@N] nT?F"It!*}\7ێ_RbN\d$+nNֆ MiI=u^/e]cpޘSI>kzG ~p`.Q;6Rt0*Iѥj"HbnnnYGow3cr,8*? fӃNxnW$A/)!$߹0NT~(/L|`φK%`c8%EYO#FqB5C-jčq˯EY=H_D/p1ptYrD)qȚ;?lς9^+&I.0y XZ𩴁p۝@,9[BzDh9땐zDooG>" Z7Pi :Y).?H: u<)/*0Xl7 =MGr}`L16op+-vDZw`]_w6:αp<p^had{ q~4崻H'+Tr ˊsn׵{ OmR|z{eGX s7^GfH:VjJSǍܐ\䔰~ե!<9QI'<5`h;\m߀WE½5ϒɁ1<#;&R=ǂǒlEk 9ZniYt^%GU(#o-Dõ:K> -Y8>jgi`UOԜg*Vetifk\׭Y9Vvpj,hq5@ u3..HhN߈ Oǹi_CFd~f_ʻ4 Y>/HUN@HA!^m=/#UcAeB=+79V"g+> "~QD;&Z(kut#9*L,9>zJZ kbBX TP65Hۯs2O13/l8;~E 4QCk|=Bch]󟌑$j%O?`N{ P,WUa%"\UŻp/A Lts= i7R[!9wt(r@ص2N0z}#Y'PRB81yq+(gЕ3FYaM#V0B=M[匌u!{TƋDU4x cUH#D(&tJc;JTMwU}$Zۤ냍()D )&rO^REu*趧#gpd$G=;ANȲpuL,o8~}ilZ8,W SjZ)V&yIi~GQ1~B%ra*YeeYL ;7E4}MeFry2M7LYkJĐFȩD42<r5*Ȱy 9튀ǨQV48I(b C-C]L̄*X}n#LOzI&G$ :Oo\R޷F+y5ZE0eڣT*h38ܝ{ oyAmEn}Vif 㾇z}|FZLu1=:b { ȍ7'/l<^yO!BI)}"<擗ik r|n&.UЇc MJ}˻.}|:#< |x@YeAr0MAǍ[I#8he<ә# @9> \H >FTII)TqMTO1ol;H HɏrqjSEVOzYΕu`qZ9*:4!H;ƆA濙 @^Sdӑ <9Cuyϣ2A ,wdl _Y?a6&nߵK^}}. jp: 4XM)Q{V -֢]_9fp\\{8؊CE&|j锛"HGy¿Y&BhReF7H|dgI9|[~pA`()@uT^P9;Zr_6<9MW$duaD4A˪v@PYDV,_x9b7xjM UU<n~wR%'hq|4DrW!ʎ5hfn%)<0x~@1yAsBQmΪ k-G E}̺$×ޭ L<KR쭷]EAT4L56'UV3VzCcfe4!(S8p*)9B3˿M"s>J//:GY!ËH'lh ;"m~%pӾ!sʡMp6:>fc':C1UeNđQe0mn!|0+>HS 5I'WR`OrG8#fMc s5]eS) (nC5]G/VYl_Wbޒx\Tì~l8 ײ/ n9 ^\^P;܄z !DoV i<̖@`30[ [COZeWzmS\Uv ]y\yq6ʪdyu>>,)퍕_'Ӝ2+',_4j3h:S3+2 ,HJ22XMSYW+3DtU,%Eᩮ=fmx4VUdzֆ.>ETlK*^9B<Ɯ\1;ms\>AP2δccr (emv"VuϹu/F Ea( _\?2xvW~_u c6.xǴ *TU"Ƀ383C6k(DSd(}]iTnQz 9Agu!cE 3y)*^+mI튕,* kZa1" shM(;2!FCW:EYk%0njtOI]gCz?@skƬL.w9_d<5=m+ dx'H OQoH j-6+Y}8MN^Z3]D4A?mD$=D#@<8"A@$c3aSZ1l3 t~0tzTjrY6\C?/97k)~_?3yzаeB~WY׀آc=O1ł/ztT t!Of^lKZ(~=zm¤xdvjxs{p-XRds02\un2,S:cӪ'\ hV ɍV0f$v&*DdxPQ悋8iWfqldNhˡMH l}~F??@PBP%v6LLb~ּވoU ҪI&|VASwK~1{-[2O}.;[RxGPx,fHS4L 잮r_(qgG?,'1e`DȱnzKn?V# NI[᭷%RbC,^=$q0 hby٨(8D\V] ɥj^=&3s5&9f} %A# + q̣9oR޹~ap C{>[ }! lZz j sds3,N}; ՝ގvlcӨ_bdF 1=ȉ @sӧ+ƃ^Ҷ9Dho Rqmp<|UD\5L64]?90 Ozg#Y&+fgARq]o^1x9Q3B~Y޳=SGb^C?#yP())NЌZu->>LBj%]KOt9z$ jL%AN¹cD0~`'"_Z˔&(i;5 QOe,((JJjF]!0ÍǪOi`j/3vMGFr&zvOǾ~YB"*[3.+^<|=!X)Fw@WMN},Xxfcݴ&M( iٜQ0a_sp^7vsFۯ2} 'Q=tX4&pp5 htdxr*IOM@E3]d^VQn9_TO$m-YGq\) OEla1)FHcT>uuy;>_<͘ lح}J)L&/ȻT(;4ma_'xZW0"9E8'Ujdc'4A&$=o5ӂwP_ [ 3|_%eZJuwGȍ_2}~X3V0Lgf}(_ 7"0DFτa=4tt=TΉmb Ú~Gk (*:\J-Th1=g `(fAȇֱ;E/)gԱW @V♊+r5t EcA/>;K mBP;g696UjQŶp&ٺKVԱ&&LuumcKH袳*ƫpJo{YI6bc| jLd/ HǕͺ*g[9'{deVն0+Hoo[/KGqGMAߞB⭤wRp`8]l5V4,g^:ҎϪy)a><ׅ;S_>%2UVgm zrK;TL*N3@n-I{ק겺"KW{Ê_Ֆ>,^-W맀t>Ko)lomb0f1xmjrݑU ^(:IFlBexLŪ zc*-BR:IoQ4|ߪY ;2-P8KnmS&dE==I.wt@dhQSzFoWDF{EY3LpDXXZUf̎/Ѻ,1dO@3#҉W==)L;dy2u.yHl=c͢FT q &,GT*u7IhFVFb,t׹FL%7g=q?}'*kUkܕlTu(!%4x7}hna9I8h~?6G#Lz4\koձ W3XxlI,㽝0 wx㋙-ޓ8m=mBDq|` ڐ\ D(c͜- WO.PcFy޼4EWCFo}2fH ~иPxi62tz?o̵̜'X3"5v\ny8>נ+&怮E-]ww0'2auş{ ~8 srҠJpog&8} W֙X&M_ѮOӗ#XLm n1^Hwfa uc~S24!OI TLߕRmPd5M_ }ւ9d4I3¹vyc AOTE!1WJi nG,tMco|i0Ǵ&Z3G1_n [&͋eH&[DF g1L #LeV[U+  I:yH૶;7䌊uN6R gS*Vk;r93(Ju%]ā8ݣiVǏ r|]D}E$mӗ#LT%$_S6%S\if$tﯤ 6jVF]Vg"dL9m-\b=nn,#/NwuBXEc"n 䰓R`Q"!,q%|L swERxjOmr{MB3jzXQm!W\M. {(!HBrV\'jȈRd+ l \O2w15QA[p m C2Jn |uƎ+slpրa=-#@"UUvo/($ ?iռZUs̄)/󾯋PQG,4&k@0>s o&8 Ľ :^x@":+g/z@e | W{ 驛艴iꃥ+OJO[Oa92^ONц h $T_ݝ[xbR&PxC=5z/Fۘ5pbFN&I%E΀R%̟,Ism䩥{>5ʔBÝ@^P\)'Wkq~]@`?a;HnV mx!3!}I>\Xp.d T~R?tz\z#I7YJޮkE&l l?Nr8+? D|s_XD-ϷuϽ;l=(!t 1.:׎r ܊i^dhOkc^cnTz 6%fYکҜ D5Rb\eXU3L)-X27ROv:g*tehf::Zs2VPI=he:ZAdDyCL bZ3z):0Y @lw?,JyL _k6m?f IW$h%D7'] 1;#pkـfA٣#yVR@ж`jϸףj:i 洲?ZD`K#1Sua]Nz]` E5߁G2f.E"0(?&u Ddڦwa^ߑ #L[9:Ng3Vi ;*3bR}MCu(Ј9!6Dn.ΰF>ҭ#Aj:eG]J HRYˌ2|g۬cϘ㏙l#$>}JfDb(GCX+TNL2d,vR~p1=_*X!X2m9!&\\Sco{-?ۇ<[+aȌ4G dEX䉵TL%P ƵRmɋ,<扴b8E녍裏>Я¬p )iT3+"Z&qW# 3ǹbtrf ufY-eNY`Tg/GLZ8RLϷH/]B3߃}ʼn 0U V0+A^8R ݀|G/6$;G|Up)",]7-t@.MHw2L+5 N10r|H Q0g%웓lVSyqOˢ 5_㹑GZ@Ѷ\LBmK]5|R UnjwGa v#)_QiP,=~m?=p] 4Dy0s/_``gRL>ryr/tImċ&~VۿAzϵcK l70e{TBqiB<g@7eDbutHOI# ˆx#o=8 4Lk\p/x+aOtװtQNVpJ,۴狶}QjldR4ߨ$ʂ!kIy17դI4=dF}gk K.>xwX\^rh,M*%~>*:DUt:A z+.>WȹFrA%fwd(=yl\EDVjvP)B!i|_ԛʶ:fDK8Y׃jB~KpϚ5Y+M[z W0 tp"'J;sVY1 dpjzި*t  ]'~&7YУNv 5x`xEU{|羌ؐU`W$4cSg ^@`Uq*_\;7z~z36㇖ cͰgX U K89K&=pA+ʍ>\?oX+`Cb"nĐ8@Ʋ+S/6'BĪK^%w&g>:F]9 !h,!󀳥~_"61 B9ムoԽzn H$g bu}whI-k '5ҳ)-%G"ek2U媈]a:1C 4dfOqfbYp83?H,3؉bJ¦4pSqa\PGjɼ.RL+nՍմco(uP@tU@k6" w`(],ŇpU w;i0;.33Z)0@()+بCL`M+0 1{8]|tn._L*Kbpnql'M9D$9RY/UsS;•rlc6k¹-|ܝ-cԐcHݕ3.HMv[ dނb VD:b jGU Gގק{@IrJ)?+ H74,y v;}\JW׋]#4N.Az _ FR Gy}:ꗏLA1Yr"Ojĩdjd`HEoۈp$<n~MT'/G~ 8K>3 aMVtJJ-F(2 &\̳P7u7^qj?TYq雮Qq5lзأʛE!a4"V%jԸP##εHĿEl 襷 D|ǒ~#t 綸h!i`JDN 幞NS2K='w3w+fg4iB9"2%PDx!]"byjFn(/(Jx6f;cO~@3s,)_5Ds4A?Gs}2'!hD7R=8 ?F)U>톝^ l~誶rHqܤ}"d2p,|lݠ;\_5R-ZLG7 tZm'w1/ːtMP=Z3M{RJEr3tma[OX4YDްⲎ^_NH:P6gK`x Q^5fM_8!~a <c]|z܍TNB}]Ά] dpBҍ8=q[v pZ3Gs3Y!J[%3ٰs(1%;_^mtCV,9q85$0-*lL 4oIn_**3O~IP@>wH6|1m>Z8fDZSwb-iHr*ƷRkM>zwX0̯җlhZJE[Glk)hZaMW? ɿT %J}],iׁ/dsIQ!~! FƢ@vaPdrLzq([^@(*Yshz:ԋ)XrDy_]qMb#5X䅮1I'gԌF45SRǏzNSm_JMQ徰4z tQ~6zR*o1DG,=Wy$ U;ɭs+=-OH.Ŕ-U-67<(c%',@<]?< ] +xm(#x V;_,mRXepKf['DB T}5եp6kS4QQBF7[o']_l7Ƽ 5 >vmOuz.wz~I %>dwBf*itXE?8LPع^Qw})f6IW70s"S ؃,[# 5g0\뼏NBݰѡdLl6IX`,ii-ẉdbpe/ .%u;h I>cM~!X%+$:Aƈ^i$ -[ccv+t=ZHTϚm;ʲTR~+:fǠ[P>,I8p+q %&{+F }Utb uƠyMbCH7Q7)饒F0)Ƹ}j&ub}׆Qo Ŕ$ p&8)]K: [:KFLF5|uV*JCTC \qL|C#n[9 ^^6`9"iLDf9M]Hi2f8`(T |Ο*6wƸU2[*cs|"ȡݿ1L1s5jc'eFW%i(Q 9W4'{CFhZhs!rѧƭrD9$ 7~]xZܽ ;K# \ғb٢?aCfWNԞ4̍AVwǃI%r%JbJJ)Z/H#E8+cHt6!H(4h櫋IO Q(:_?HMw2hT>KG=J@tFw$ Կ޸^!k>yuj9gJ3Cr궞l9̏\syGw uc5i^fEWC <@@pRotA /͝Ex<PMC#SnQvVQ|Oi@3v);E% nGB TMjj%5tҖ۵#/!;ݙ 1>S 'z S풁)LG,|[sI4yaXl_:ɧw}]&j&ehvYr0N]?: O '82cBҶaWvv aM q2;dF>nPiA׺xG$[4 \`0-~ ?llIyqmc"mS{C/&iC[Hl߱SERWN֥.qtqoh R<+Rq|UhǓw`M_Ӽ-:L^MI|aO.ws*nur=[7): J^K?Ur&m^泧R%ˌmj d~d7v"͈&Ks~P=LX8s*]ܫ[SZ9i--P@V0Rqӂ=Xꌗz59Vi3L!`'Ώ巐O쨜ۗ}QTȨJcL>ώ 3]%3n!$m"LjwMq3 snͼt)pM5zi~a[|a3'8tLvQoFn` ^@rjb% >ꞓL\0oz#eRTzq%:la}rgF'4ΜB:e~%IV\+Z5pqԭ 8ح PYN~_c}2wq{W_>jRr K+d' +hH^]y/Φ켾.U&Iʯ>$(ْ9+d-w&#)Q`<)xb>pxM%dcu|PoB !$mSQ!g5swϸvy޵Š9}LT4p9owzJ#xp'Ecrv;X.ٱ[^58Xt oD̊蠔M҈!funM77\8W˜F!n~|/L:?M7@,$ޭھ2BDh3:+oD@kmjK8^)nؙ}4QDڸ`' ŧ\?Ω ЫE>i)Ol],rz̗;>Jvq핒ߪ( ޵هݦyne5a| |ө"sC$%H"}rkƞt ˺OMTM]%`ȟe<Uwe5A\|kVZIbʓPb p>bq:1ZnK?w k{-EJ8jxx(kd+ɏj%zooֹ޳P`X Mb C AYB/sen ' ׼3rDd9Z& ?эC猤&s&R9*^ p`jOT੨O]pyAD0ŭA8J tT OYpiI;5ǬGV@̟eƏ?Rs 0Qb|V2F4"Vc< XR'UKc`\*za۾@1lZ\"Эm;-17.*η!$4Sw'7c[ԁEd/SH vX4+7 LM8vzuUu`6US:)~nTI@ZD @PmTCXQ2n& X8Sw,8hYҢ2J9USutտ~,1&$es,[˧ ɳr:͏>~oӎ;5n`K܀㘫X9=s98=F BESͤM6V )_k-z>8m YIżO)Z% ^qdB+R{D?Q=-(67ݷ(N^(UcA&. zW4hX' DE4DZx'9Uk>m1sd:W!QƐqX5|kr#P q>D,:%83^VԢ{\iȵI(NEw#/ϋf9@9RXwvofv%K҆ /Od݀vXvabb8>@}у񘣪߰tE"ݢ("pFp4_)Dɀ0blN95'YKPs^Y^QL`Org5TO2ʫ]꺱.VUM5dc ,\MFv}$R<"$*1}tBCǦ9gsf v6K;s@KdB}w.a YW咕3]lBxY]ϤxC"xSFs sc1#4df On^EqJ]7G SL댎=˯t9т2].b:|Q/Vzv1S@cO\zB*qZ .`HJVjfA O"n4)FUsk!ǘN~ڒ?KqfhBl݋tsyP&HgGR ˥Ӥ>nxA0ym*î@b;,*kAO^mȴ̔ߓuA7b%{,]x' P8bWu 3!{&| 7LBNJ%ڹwIF/˯<` Ab+|׎zS8i0NxcӾ@Te)R 瑑Ej0/\+p zKAu∾Qf3HK:d<5SXDܧr@KJ($0Cvc uؘ$;< )܈YNsTU[iќ`tk[Ki--Ȇh :j;PPICx1c^Xq^ؙЩdTa]CN`J4+kw'gCW֔E/8W${\W8Eʲ"I4 ޱhi}F HڗF>sXf w&p]NPߘ)'ڨ)o ^2OTӳj M9m{Mc21+'\dF$+2ee,{escjܢ,ES72+YKy=&Cj;U0|׻VOѹ Fd{[LۧžD%zL%\O`ǔڱ fT# ^[1s+yp@K7ۄ JGB'8q3<&s4 S;ʋFIFFQn 699a]f5٘=ャX`,/oqց?LH7-rfJ^lj!rp[)*%hR ( P1OѯM'nP7NÆ|,^7f4^s{bcP֣.t+a^M8V reU&shl.WqHl%I4 c6!mijϊ{(&fr) Kæ vƏ7w]WQ 3 ǧ.UYdxL#&6[f7 h<$żwyV4gzG+Mʂ CV1:C0'/fZf -KlB6w}hྈӭ e+Z77YΝKZz_+/_: ry`&nR0QZEl+O.V. )IhNvI PW)8-6ȬEG5_$EmeiSeifHؾгBwOi`ْo#ʰt79F~Խ嘴tfՃ<|iO9n )?o$="W^uW( 3ij}KݛД͂忤 eݍ4aS ?}MS؆o`͑4CvqղqʲB˰aVRg 7/Gxe؄ՎSc5 #~k˿9$ pcu Jkv+4ďӷsZڱ ϯ3` f nd ULlhl-ץ #>K*HמAy)OX =AEtxnۻ 06VU(L4HXn}'Mo "`q t8a6dos/-&‰฿n۰1\(˙u{^Ad3vI^;#9{`I(5ZhIyKW!۾o^dh; NZɞ6βOen{WrIO}\XB2U|$cX൐=)1nwP(c^*>iiWqJPAŃₐy;1,F䟤>Mv+z'o^~ZWFK/>Av9G$,rm-3a` /I*pOvQ/W FY6fhY)TZrތ0N=Z -lD& 9lTd29mi O~)X:aWK ElVZ9J5ˡc175aѣTzB?qߠ ݘ>ԜY^tnSBAK`4EO|"k6Hp6JØ)CK:PY1ds1YH.4$ۅpLA^:#[0QHd@mӛ/[#^tma/aKɏ``-ޢYA? Jdl*hh)=,]I׀5f;H|gYl+_Z^jZFD]2 V$މ2(湋X q@%TC^}egvu!l54)’6#%MhP}e9jjnYZ1k!N F4,tWY,ݸ1z[W w9z_M U "h{~d#ǬVRQћ#K$wAv|Gͩxܹ+;_h*oRMKkwruYov}PssL G8Tco5R-滩_YWháH3/SK|yn6BNh!Kmy!n|-ؐM s3R'MӤgPu4)Q|#-;w,Ei3P@Qh}=N}hlh'WZ-1Ыwږxrw%C8mcGNmڭ9X{]hfL3^Ա*̈́ZԞ`J{&$:z(3Ʈ2`m^<v:w3'X7` L(钞9 wn 0q^Y,mz1vun gC`Eb4|fsTKL%x0P5ku.P7xH%H}zѢSʛ&P@yM/^İCQ>䋵|A4b,%sR^E@ZxFMcOre-ufVeą#>6:®*6f3y5(,*txܟp>[~_b%}*8d],8P>*q"J(7T9LS.QhF mg *4(Z9:z,6"oIl|r) ^.D<'ZP2ʗ ϔkW@֔i3qsl'Y*1I~A~Q~дA70Sp mkh!C%׍KudG*'ZnIp crN3S0JDFBSYrJʲPI&Mǿ7Ѻꭣ1%2&X[c^/CG^\ e>ȤWxЄdL/u٣̤͸}Zft1&]V}.̋9 0R"e#VA|E}cumy5֥4hېgW?t}tSew M>L1a7SO"7]GfE߽:&A趿B|>cT\U}K#f.~lG+Sc-^Twk_|jzW߻ϪuzO|&?z -ly,b()1fXڲ YѸ+ƨ_?ɲWt9A)W.|uA`BJ^2FKb p$~ !!B*݀ն4=v e8P@v'lX0 D.9X ZM>Z{zY28 Q0G$GCAð005 vF8O?j6* *ۏVDn >ŧ,pE9'Zt9$/|iv]Z·瘟v8RU5+o/ XŎf\gr dC౳ KT QkƩ߶]RZ@,<[$[|Fpj >#?D/ 'r5=-f%*hƀCID8.fWQ5)9ғ 97;g-׳7gyʃ@b@JAl~'6+|3e<%W92Ƅr(c1۵/Tf<Oexa rs]B3w~B>b]s+8rSZ׬ yrxMf:b'+#/%_LϋfcE>〲'$6 dM#HΖ34i xyZkQ'{\wEk6OIssє۹wΔ\'͖ {wU%x-&(PmJAĖ;4PPdnP:Y]afv-ϝWg"PҮݸZwl躲wH,15_O),lǯhXDVxZ<;G <|Nb21$1>^×(u[W/HДq'U8z\FB]M+,4Q!`~I5IQv Vh C,[<-1:3Yj%4I5Ŀ9#q_q.x+(Ɣŧy^d6?5;}pGg>⹄f:曏eI1xFz4ϗoSGgJVi 5dxM]=t N γ8E"Eܦg\V<2 ^5v0P9]e=ͿJ1R^@#g2ڞ RS\UC'uc阤;ShZ߉ COטj9&W؝JxKp'S i @Z89DMp5io"eWQHE$8G8~lZd(igr9ee5"|MLKC Ë>R-" F\S2{ bc/AuK4TGU_;OdTYeV17)`cQY#BщʵP>ƃM70"mܥHN!uBC g|Eø??wjkI$qOe_ ]'3n-vr+}'"0㿜asJyrIP8Z=S,LhS(/ ֵ^oQ4fkpr?9ϼ3Kb&gAI>ӂ6J4W]͢_ϵR3$'谡r#_<e7{PsV,=`cx⅍"K@|CbyDQb3)FHbv31^jdZ}$qFY"CAU+&];M6ofhGb<˲ q߬h4B)C>Hs٢!AWW*IglDl4@e`u*> ]ba:;O[ ^C\R=d؂oqz$ujI?%`/!r1r}@pD1ځŰ}$BV* EoUg?eWE ~ g.«:,p3`+XQ Jk8"\QΧ ^(ZK"}YDyJ\01/s1C石3.0zDFxS' s]RYdI޿QPLSN^'d1l5ʓȥodSjEL4, `4L9^̪(f8fR\a eyO X,IH!ꬌn5~{H.YQX|KR1+- F?MAg<80Br~r;K@8zhUs,T6~Hlmk5mJtpYEϐQ. "p N;3\vwܩV)t Ntԫ}lRvWk[ʞC2"t2_I  x3\mp/ Õt3 &?y:=:Ӵ@"d> )a#b @[u'e' d{,a}9FAnHAtiʇA.3S@~@T{b4:&DL(te"M4"Zut"1\zP@Z?֩MHnh76jhux;BΊ/mxUVhBrHYD~h&dPm2TO<ۘZUnfAA^OEbqC+k) Qj̳-,r`=?^+]ZVH'Z>@&vuM'")kC J=VS=<L`5dnb*PA !vWL-l88 py 'Á=/$d|;dF\^'.)dm2↟/SDϫ`Z׾w^>|¡S+A %Fm9IQeD1Wᑽe!~L}*D% D)BH4$=4G Cvgh=}?P 9/g9'5 V?)/* `?8ֺ!(t}+a;ަ;ST5mx0L01jbENrfLRis8&8UVL՘W~Gd `Ak1L Ua[XOpAHإX FKBϩn+W2)Pɐnh,kc*'OHӎjeixBX((?8"K̕Az`>jH GaSQq9 E"5ojK|o׺ =#r(CƻQl$~Vaɳ%-q>٘IXd7a,AAP6mZËzb-ȉ@[JC+c?( |Q^禉N/C{tzt kgmoL aS OI*w]a{b:M 5Mߣ+%bv~Yni憎Ȁ_P;H^T>o H7{,;.zTE:2Ɍ1Ƈ袢e#륉NL^qR ` WT鞑=`[xJ'ʍh"IFܷ?Be;k sR<{giB; yw~8.k-A*3[k@r#'+)ґsaR sČO:zq@]qVP# e[3GW]'ԥ~D BE]L+VIw6ڻYհѳHnUtA/ee *~CA W(AD@a=1ʑb ]Pfs0"g;QV`tf\30Z&^k\ۇyb+lH~_=%&b~` 9ݘXϛՌ_UOi)>R@߫}19۴uy0, "hpF8ȦjUVҠx8),Kc!4 yJ`#2hGKwA5=~7O< ,+aq#2ѷݙ>쏪CϪ- KP,ߋyô5Vb~j romz&X#۲/M,آ^܁dTq/ORڪVlR#0INWk;ʒEYB[.i 2h3}$t|I2pq=7 wZzpr6b$u>t4,$/#;Zrm.z0֏"_H*4ѕ)W9v[џ+"aT7P0?չhDQloJ2?P٬&M!=`"[R6$fm[//T~D(*i^H 6*H{x%ݻDM?z%˅k!̵z./MF?lSbőV#qmlC\.vaamB^pZc"C<Ȗ}K(P^87X;d^Oٳ=;"Ht**Pnq^C|&^ݡ΅ߌ H"j)(B kr]~;89 NH^;( 5\xa@؝ZwaҧJIJuOƵF$5T3gOb?zla+<oݯ Med»T4 u'6q& xí]ez4Ƭٹڂk1//GD!V?EUA{%7;Ϋ屩4EsI(| x^:s R'-MԜ$r|.jSF cdzNXܝ+P=A"lÙuk\X yQ+%xڐ0 7  2&dhIؖAOƶS/|S FQt&hɜkE;h $GbӀB]wޓ=d \G@s'-z,V;.*CA6\?@W$yq$WT&yĢ;D"mD۟`>jmD~Rў0?]ܠT>R ؉0˺(d ;$qo Z{5M"','?nBC߃X %nh{ B`=&UIy,'f!>9Asq rou.؃:vbzm?BQR pru~l !whIRIvB+Dd%7E`AaDR܌OGW?n&>}[C _>^b`cgl0L[a'k䆝yDf+,ýW} @8$GxZtѐTV}׃j,D4ZTѬZIwX+Vba4vdyZ4NLq)f==c35R}7~EZ+=PDCDNW IiK8:bmiC#?eLUX?\/)Ŏ[_pxܼiyƐLjPDUړ#g\gef.WM?,؈/KM} ^Cw(G聒rcX;5x/_tQ!e_ QBdب(k UMcйCދJ+'H#ȁ EzSʕM7E8ϏJ!apX!isɯ* 5U5IIlR%@t!o| &.1:չPHEIx  Ct)x?\ZZo'ǁe<6o#h׀F$(~w@☳cԧN_BؙJ ә &x͎g#Lq#07@i3$Z"Aqp*\=>Tšúk=KY%mPLtHn{A1AZ̆)vnuVڃЅ=/C[ c)i]E;")(l,0Wj"p՞U;j(,H#x0`F_!UfSE`핳$r%@Ec2VEܰ~&idw v@RZoyQQVKbn@-(:[K1)qD꜠J6³bJ "1NJեTG_}z<B++aQFk5ƶ6}@}A{5H%ƥgىk긻m}x|m'\?x;Y d4hLߍ$:I]{_ h-̑䟅(9Y-pB_<#m}KP@ahL̳CDL=pc gKzNg Bv\2i=\ʞeve;>&JӾ`τ $ewGl4+%GQl7۰k4΃YTK0}mۢSsPib] /rMJ\_8ǒ ^l`WsU1ٻbIu'vq@ ,n=KIpMHgHJDlkO"r|fXUMX|Bu-UBp 6@I& WXӅ-U4{o Tzt @JH|-ms W]R)ƒ,sU/`w,I+YH.\k]3[gz@g) }](@A-YQh#B0tz1Z-~-i$uCg^i ֩\ii Za(P7,`%.]9E{ȹ{Pp^n$ $ZWFWe1EF`mY9datx=Dw͖nVoUt'"T8%IK117#&Gsv=s'hcLw?@oRp1])u\6A\hɑƣ{KyL ̲v$-+{qNq6!tz.hqZ-t>cq@j]L$~lDRGBV.SH?Pg * 墽veV=0๘wH⭛|id6~,TCa.]|3kLlw4gEr5ϯBN}KHWF fTrOnHyςf LEg: .Jkʋv!xkNMb`4g t qW~^Zs*"(|+YғNdt&,oR*g/PKUb2'tكAt7Kp n^z7]KI!H1άQ5/;\O"O!^h@ Ym4ITLy2ً-Zv=?8fP ۩B|䊇 u T],aـp,$P^h"u mFQcm)>/ퟌdկۘ `URޭzuG`Q}tְ{,t+{GD:/l t꒬E#zVaQDtKԧF?ɥi0 Zoj' 3B;ZXxCDI4m6E""@%/WSл3 3UnX8[wx S* cLjOĜ +X˞t8W hFZDIҳ;O !v4f1v1~kyM \U߷$ً}-ST[,4 yQp|wyJ'V8Φ3eY[1Hۗ^1uWs۵؄"X$U6yXV\aI7J"uͥawQ#绑ّc)y2ڐ~HxP]ho$FK$q_ӂ$ULRWC<x)S% ߬쒗>%vᶦ Ϛ*g*J!R6oYCn9?/hJHbCZ3eѧ}u]qt>ZB$ƉnDMI} {awp0 BJd/?Z9`E M56ɕvcf/CtJsi.[*]$+K"?Jb%0-2lzk:ke/XMZ\5upVFdXhVe1FIE[dBYʿW j4V3tU[h#BM"ť&%HÛxyn_f*"OTImSmwQBSt|!َ7-l\U1ʊǤar|JF0N\gKfj:s*/_6{PO?MdO ^8!)xbtS۽Nj9ZvpLLG+XYؓc_,iNkA}6gPA/@ Ki|S5騻y`[Ve'ZDR:gܖ9lҮ[JeVJ=7+46%o1;GJus>(5/7۹tjl&`oyKjp`M`ܿ^Y[ͳ.C@H@NKh1R|R6'jU]gbM<@d _LdtjJSòT9o3鯕9e@.R!La}Gvc'/RLm$ӯy]sxTyv-J3,cmn`_-S=8+ш*bs*B wY|Z 0GFsi!7<"~^$#߁b^j| gU)>8N*iIZLNc-SG޿@1à:/u> k&S# £]sd_h5Q; !la#}|}ҼBr[Ͳ+d3Z{ vVnIuSPaѦ˩f} Nix4- iE"R9TiF]:Ma[zyyL]ߵ4lk;u1dB* Ѳ)Y 3J<&B6S /y8-~`LugePP %~IEK HR 0ֈEOVԋ+vd _>k,X);ge Za{;>o߿D̔@1Ĺ e,"x!j<`"DO>Kv[e*BoW~dOV,'"d9> µu_ɀ,v7X"aww-P"٦ OUI|*?]c]/r: v4YW}ٹy鳵 h@e% u?/nvuXK/V4jUwX|AK-nmV&NU̖,p=s/DWS2'q/l)q*QUM:.! aDQ&WQԦۿM ip y~i89;&W+*׍ E0 @pFX\Q}*E{۽!^ۗ'<2HnJIIROBH"|)Z4̖ƌ;U55 rm 8-&Sqt Q8);^Q-Մp!}hކji  ߍXc]E{LNEhuΜb2 i<  ̬z]3s)o]> p``% i)L'f>W(ɺVޔ^T# R )y)#BeZ =yصhέftt%uotj(J `) P-ֱEi] \J`ꤤ7[`HLj{mK6 fs>ᐽ5tJ"yVaZZUg K&2>!roE:Zm5Pt9aO6RˡOߙ/Ip>==Zj P{[Fr[`l{A-NxU.MҗR"AV|Jvz$806{4L)B!zT-sOW- Ãc.ڵGgY9Wf:>tlzyQgVCWxУ/.XF4CX{Y?7zBOv$ pg/BX5 R]@* Zobty?#%V=y?3_#t(OqL>((>Ya m7<(DguY&cA%hg$RY@kPmi(|"B 6.P@% (0XwTmq"Pq&`6X_iJ=N]xm/߹ ڐjwĠ|Λ+isOcpф1 YL1H(lPt\ 1-| (./[C\s/ѳo8=?8wbfTx= oB&c}̹zl|H. ׄ'g>GAB:'+dvoƌΚ#kT3NQ+"Ux9`eDP 4R>yl8Я4vB Zj,0ő!n:EI/D€cpۻ#wa Xneʹ(b޷L :>XJhf 5?⭈p/ϖupw r,͜Ư ӿsĞ ks/Z.²Uծ͵#1 )> '+DBΉFqbx\`~\{u)H{v1"?a9I0z7쪞x YB *"\hM ]qȄHsSR58Lә?z>VO'^dP@3lrYρˣ9>  \kxeCn{:CQ>A9ѝ́rpE/3<|z87~^ \:\ѳ .o; GPGozU)؁B0H#a^f/}z%^2֥m'2"_U6|+:Ͼ&C, 58<5!\"ߞ]gOoߣ=Ib3 i x7,Z饚|ӶED@(Fc~9bÕ,ά"~:k] Vy(v+,6$g+cc̞l_4lEP&re`AD\Um)\eukxs'Gk67- hA/FZ0ufW `K[hHq'M8] ^OI'[  ۯNbY78%jMě+.ñ!^ϖwq MISFϳ78Uip}NMb$ ZܱC?:jޓ}F]ܶ.r.sq' fHy3)נԙu9f̄H~|ʓ>؂lDdNL^ҵ* dG :jfXƫfz^p|nm74o5S'xhCo|ѳacae[@qH/p3Y RR.Mxx77K+=IS/U腅v7s [f̺5k֛iQQtfZ郼IEU&ҳu),:5?߳mW~lrLiȤQT8~BH{jgm+AzUf. Y3ڈ#񇯞BkW!ʐ#F mW? 04H *=ŎWoƭ[.,젬SsǡUⱑ/R.m2K.+T70W^?)( EF Hl?N]܁ȡh8"jns[Ah@(Gb4yyl>T!=p7.=[gVGv%\g[cv:UqZUr,񿛗@EG,8.-Bڸ\NB MȈt&L 64Qٹ @\ $`"c2GDzHVc6KtPv'|zؒ/Vìw?K{{Ke}IT,°8jw# KV|>Mc}-ZBUPz G,IkKվt*ώm@jvCi?w24?R^y29R ݋'cVy0d7e+fjPаl6{|Mm)&QlvQ#iߨ)Un ?k6Z`7r$t)n04/7]=j'̊s]mN u,'[ե55g 8eڋ̸J e~& !%EUq5>)/mp_Y2^y.늰j?~vbz5?&yJ8Á0iQ?QZ=҅WTam*;uKj3b+׻CTyVH%(9]Aax/&@[JtSNÑ꒯QI@Ꮒ@V\p27qs>sQ:}x^^iI,Ǭ0U]~(.q$og]FE\Zagc|k"ݷ#QnnGx_ܱo '@KLDLTcbC,m,z bU$܎LF>F>MsXkv;:5{?5G,VTZ8+p%y fPn[*lO\}WT\J*C9Ygx?%Vr+퍘qר~ʍk my@A{!TJj7M]w*~R7 ?^^REcu.АkP|:5Gzϵ !4i_+<N[ ۺr*fk8Y'q/LRΔ YR?1(DN#>Y4(e< AɟSOq;h*i g$Y)O-iTqH7]u`ʦ]ikj69!vR~MWܫ";I~XƞĽ;9mSFsZȾS-XVƸԴ`2z- IU{FzWuyOc31#{GG}@UI>[(~YzrP0O2_"UOmz=:kPH X4ycz=lm&c76ECYQc)S6 SNmDzzDNºFxB6ӥߍ}^|8 2ƈ)sۇ4ky~Ct^(*L\bXyBcutۏ8OM84bd]mD=VRj.2`xK J4՝ 6+r?7u>, [ 73/4G:'3 -I 8M`}tA3fTq=np $)!/B]wz 36pY;0EsC Ѓ+jۙSWoӳ?$$92!1ESX E9*radihP;҉}>acW1{,U4ʙЅ!~2j85 /2~a]/^"8M*E?'QF7g~ЋV0! x2U˛:"בQTsTmɉ>1vsvD;, )| x n.( ĥw UvG~twK҂e9i Ȋ%%e~߅~ڐ #aLTFw!UbƅLwp聾}ǡp^QoP2xpy %b1yQ|ϻ;MđYSWFʼ mh0Cu*^Iu 04<'6KRǶQi u(fbhVzC^\16i3Ǩ@vI8ew$O /|_? 0L LvH6V9.\V)Q-ߕChYhR +0 ,:5nh GzZ n X|K0kZ|_N32S2PvL/Jka~_h5D2H-AN`©=^Ǻj$D]s1F Ў~qb%XRQ1Xwn+SL%9}Y_1Ҕfm+#ei|n:bwA@~vh8.ccu9 8z}tR\*xגW. EFyS #ԁq)/A_ [m }I xT< ȏ lIV&t掶l\}U[ONy!Tl5-4A9J}- BD*&5OꞃaXgF'Ш3|Po ]E~NQ"G*rBt+ {+R[aRK{nYqCůٟTD2nqM_{ *E+_j"d3#уci于^,7|+< #qy ]B=L]XfCTicHG:\WV JF52ez-3?H2M[uc^vlL=JQFNO&3W>X:̪- ɱL'λ=CE>r}:qdD6'%@C),\slV: Kk |u4r.$_BqÂW3o5zI;R˿ o^z&_~ n~ZG{ .^1Ɏ=dmP?a:n>H·h?}NzÌUF;9o%ȒQ;b}G/V pnD宾I2M ~TWE vXHu92!сT^,yc7='[9ɉDs u.ob8$:#2( ojQH`@Msܐ}I -Ji*H}qEٻ4r čZ4J]AEѻSN!j=?4mJOcH.o۶.ۗ^EdHy9'Я>^mÈ,%`4F{}$&窤H+/A 1dBpp!mxS+t}5̎|:@ekapL7 _`=r1+./M*W[V{3f*qlguVmh֒a:PC.zla4)'E[W~@J[<wd-Go.HT) ЬG rDQT4<}zkhNaT7ZIGnȀMMS=!<[ `NaJ'o OL*f8i /o D'1WDX,"X3/>Q!#EIc N+YX%M6Ȍr0'wй tjYd,A,PZrfáhavO׀9czv${W7-f6}j7tDkY]"؞I3GU?WzVT-ρ@rL*GyGxw 4bPw:$;lGXMoϖD Թ?H-ڳ 'qAlu n?̅?I2Umz' $'5G&'S}˵X7І<4נ5xs,S"(nItbZgi㬷8`M9B2$K c-zïwv];՞7f-Fg:WUI1 iQl)$ }56q0N+pnv' wdjxD*+r>S6.}i:FJEݖB?Wk!WkDO Z[fY^\0OÌҞ_~|{Z|w?+`5z{ZGp;Φ<e] Ds;gsJze4 k7 *٭ ꌦ'06O0V20voh zI&t60$Jі"/P+!AR£?lry8S,8>p+!h<7i8jŋej}f">tx?MCgZ<'7qda2[fp}6]&fpM~14&7Ju䩞h!q-:k Rώ, *@tЌDFm(A\g[.䊄[hHBhWbγ/vKx{Vgh{|,.1)CNW;edeĂ慄]U.KưN?+I$eλF%r9.SbhB6?AOH|6sIw 'q>@a VyI(JNfpt4Hӂ `e KF!o_n p7>9>Ke`DUWaoss&': ,L'6rWr-X;hu!Ч`U曉H(XE?uzh(DąwDL2jTEV[G% /[ ^r1aSpVbp#IaJYvyvЮL:D"s Zn6dӅӀɋG-u4LY0`ߵ=%CEn̾-J\`Qf` AAl@OA䊉1#Qm>p0G+a .k'(C@3"+NtvTqUKR *"Bͅyډr4|[tl3vlO.5d[EcqcDz;8 |0w0)Q/%n7ۏ}NHp_Z;E Ͷ)D.c9d̕*lnt NRu[L!j2^c}yRވA-VL11;3z(07SPSsϸ9[,"fYI;ήC-Ztx~"pq0>W.zf@ pKyWa_gd7Yc_Ɔ?6x% y 'Oyg^91|G#?c ( 7=p͙wcZ;}CnؙHC"n̺lt`&o 1D6O #MuČ 06r\Д8PI~ew~i9(Oڱ7o#, :CŲG>0r@= HM#=9Nv.ez`nNR7² Xb$p.G;^Fi\vlBÏqPvd@f~ADt8#R""b=o)JZKHu &s MPm(pcpS%ˤ+ȹ}VV q{Uyں/ץ42K4m} [Z{/u aIL֦hC03Cu 0qAK7 i1BYDMhzPHn7ZQ3ߊL5Tz}ظv5>_#kv%k=NpX4W>. -5hZs!kƋC*R3▞wq͈d+/fuK'hО6~D໇ruNN8H\V"@>ћ[BUo]0?3!J'p(o0\yX%Dz1ޏo+CQf/ 1ꐤ*2.bĊ_Ns6nup9gdq8m#e5[wq(ˑ5@0g?m+ O<!nʻ+ $ f%{&K~BjAem}NjƑsic0V5fE2\3ZꞎSAU4(^Wf(;yJPyiApq9Q(!6$];e'6(rCR"yyk;KU]÷RqOVN1ަ#aa2{(Wtwf%4osEx৆fF"#uy$a ;hrU q{sbuU=Ry@&3Wngad2 Nmg ` ^A:1 dBec}=93%@mGv`z$to΄!Չ&.Sd㍸"CKm֑Ԧ|-^(N,'!rX fxH|\E>Öh.aFN;y|g`K?QvP(t%FIǍiB5dk'siyR 2OH;ұ5s>ү7ĹdE|pQP7M%wih- n6aX6/%%28mn'{]{|T*GE(\;ujޮM}"kS"wZ#?oOV.R+7̍fY"t3(0eBX ,%XhEyb(Fe0槭׳Ƶ=b$]:jFgoct֋rN*i]e V.!R`\Nf;PQEz%]/I¢ AA\Z3[o$/FκHKCn΃bX4pڣ:*V݀DG4 'ۍodZmPuyQ$Ip@~[q9`v$O-#x>'VD jԦ+\iλ `~k3jZR?1Ƞ^TJᓊe׏gᵯo7WZsi:z8c]vsU*P <2LV+$ rͯNbSXYw ְB;ÅJ<)29+tߗK%g BKu9_*T(^:ī"@O1Q3<A'w:8); t|r9 O xt7EஓԌnN$;T^Ia^#aJ: pإ)e*RIz2b wTw}4hE;.vksT~pp}ZSffX<6 نqӉ O_x#-3r=H<w:<갪99A{hky;։_d5bE8t!{jȅ'KOY.uS9˩cSʆՌKZ@ˣˤTӨե]=7L%IB/K  KozD~ȯ+kmAR.Pz[ dqwRg{>Q1tcg*2X! ֢7`hl}q6xML\Vh 3Ϧb G[?ɪ31mDžV/-5)e U:9M 9*SxSI{UJئ^HKS7)ˬ&F;" thm_ߛ9XgM i$:zo2^NRaC(C#N GAUQ:?cD\}Z\"cNӽC?VBT9m . ED(pp%_lHC !S"'C 1[1sފ}lGɅ1B {659+>*bMQ l!6eul}XM'"o|_kz>iFspl6b-n({7:_UۏKEk_u))IԷ5]aە/ w{1l-JL*R/'x*ŨP 3?Y EqhڻGaGjtKpLB4cdzvѓi<qt>m ަ53HS˹u h巀0;.E "P(Ac5'e<븐a~z6?fZzo^8$Ԡza `3\VܻKی(ZN0$Bօ=nnm1\RH"T[%v*p_2oKmAPfs:<F@- ^ EdOT<ߓ=Z֟̈93!l:0~ &.`M@pұENG_ p `\~'5,S$? u{z_K dSR ?w2gv>ڐWX|USfJLhMr%O%XmRsyj8v[Pa>QNo!P]l} 0'<9MFƂ(s0ZɵX]lOl&o9t3mC ~IZ옽*o)NW:Gk|- .2#|fւ4HQ߀RmV7>653P9~5OcN|s"5iR(=} 꾊D*5s_j:MyАXu^iP;5 7I:Smf_ iފ؃/`WCq[Dռ1B w:ӱ'*A[I:ZĖxB>xȔ2rOEǤM X;@R=% ?J}Ʒ{4KqܘAΓ :nsD <LsqS>0S6rGuڒx>}ү"hu =Ǝ(B'CsY._ǴDʢS~mgZ2оq=9LZ7'BT#EaPHGyaݕZY)29)V`ҕwZLXΖ57ou@yIz1)mw7YsU5ms,)vI0*cZ[w"0`ؠQ=sc8kzJu!EG3* ś$ނy? 2[%Q߈cX"÷ԷTADLxE+3K1qZSC~UB<|IY/Fc WsSWiK24a$#R2<9\"cz jV ꅃmH!@sYF;t\L'ܣ-< *[ɋ.)Sz7n"@6H헾LaJ2cHbI5Ezک+_z^1o$D0+z0}>͎B%O\sNأM{!~4+q<5_gQ\\$[X0sl?lA o =q9LR 0N͍_FE0dn=5զZJzD9I0ѭJ Ōo]>ڃ4tzX׵^PD8cড়,sB\Ruabڧg {6űni=/ZWRbاVATj?pl t'Ux&{a2霏qIFWli9 RB>oXܦh ~/>|<1YP#6qQɬp?Ʈh@iw#D[Np)=U3]EiǸ`7gBvIal:s;IԕV;FUrp-' 9,+[N(U2p幅cZoUCC1ZyC6i1`P GA{=>K[Bp*e'%jDpFoCxz{{}ag(Ga4P:Lom@B$hH-餘ߒgҒW S.jTZR+}@ƻKͮȱtqcF{P7Ae!o HJm43JK;dֶyuќ)z_[W﬉)WQ kF,:B:)E>O}5}kNvwܢ{Hر/XS@t73J%= @h 跮\B銒iWycO}ҍ͘܏0G t\x1f*^cS}7a9~vp}rv\TK_(Wg~=u?,ԫWe ũqD\r w7to.we 4!rkF\kqܮŝ6`-޿mOdϘNz<)3ۃH??0 r@#W%Qn8.C/`5F׬#?uH_O3/uFQ9KYq+W|nA+}kO**V xGV 7ފlx"Dc 0kV`.HW\z+ZRdBꎀjӉѼD% vb2i b]a&Rz6+G.9)Z:%#6Y@O!a -9nV畋8*t g3c;jWՒXT $)<*A>Uas9',Mz wYϒ+,qG 4 JS+c5@5Tt.7U闕WgCT B{JV ϧeO{ iHӃgU2muU/#:ٕρTiT5zr(&p@ae|E{:S '-Zhr-zGQ[\%s&8X"j h68T_`=2oҺf(wh4[QJkbUOwj;\hMb2S,܅s).cE;:'g:h%׀(d[B))pxy/ /eBh㟗gqDADRw% SW,h@eSnSTc60D C|&z5u ݶFA\Srpwn 99`^z(liĽ>U|O2lˮp,GʻKɴK c3,`_SGd(]}F Q+lC*S}kks`!B30( -;+[)U#{L`vbȹ:52C7~9L*Nln$=ׂ(U;xP'g^=s%*硢"ˉu|(EslN{*zOZkƘī ܌H=PxIR @#Eq-RGnWu4++a}Y Kع+L!8\%.*q:Kp Hpgbywݳɇ}A8N7ዊ;5H Y-Sl:Trl%/;4VΩMQ]z sn'o"'aRco{E2_P' /hur,eG\Tn(>=қlꨂiL`'ߩ /wOxv\( 9Wa#Sz!h+-w +=\7Ɖ*Tdw&Wǚ mLi(kAPT\.`z@ЃbXgf\om?TJǯ=G͡y[rwW_NFB⊷2;Rd2SR #jX{\g4Aό mfXcBӊVнZJBU$KnhGBV!3' qX[T!A'"#n$]D$I:K8ofcz"v=\wa4~ > 6?Ds("]rmTlw/ڹ{sS:k` C"kJq7EHư}#\?PL,0Y/fJv( o9 èoLr?q09\G{Y^b=b( `%vb+(eD@pmk| @+P"Kbb6#aJ>1o @_e3llA/|!7-Xۋ$y$/+H=c#[ĭ$TQf~ç L>L<`ȟ yr[C:g`N?J.`?M68r˺1Vф ºgol5biB @o%УH9cDp\IKSӭRѓ,E#{!؃} W<d>AJ.͛:i梸~bM!G$qwvy2QA/-Ps*M Wx@\%UGJb i5|8R5߾H(y#<8QĻrq#ZYھB$KTAad6)v;ӀuHAşܷLjN:O:&J yF/sQiqY {W@>e> Ps O(U*NLmc&SOU~|zwX2g{: x ;};/^p[FZ}|DưN zUibSZ*YDd5?=jMP3U ڻmT?7Sa4ϒI7dā/5Dͬ0\qW#B+q_(OJ bJ[e`IE-Gα6-ɘj`ITjl `zpP+b\z杓cmK0O_#^(In;%fJY2Uh L`4#$lh0iu^w ֯i7g`[*rMCqXwM3 O>A P! z5a<$g`}^OqWP\bO- e9-g&r d˭,S:yɀPK2󫄓)2hQ%'xlTFEE Y;ȏ*d vm%Y#}:s5Nf;xS!tx1\zWlo"3Ĩ5b iqf R"Ze'5CΤRZI8Lf2Vm çB]f?m:?,G6;y-V?-SѫAT3#CG<%/%G+h e\nG@zQ~ 0. I n'Z=mi(Sf &XSJkmBqsGmm N0]-#+B`# DulḔ:KQ̏ Mo?l !mh;IBb)ohXIeK4g~Ryrj#jNԐ"~3{vfgmژXiqMάr_,ƩJ\5a0Q=`O'dR7y$`/ӏ Ne@"?IDSq$Oq>-E4,t> `E~JQPWԤ5Fz\6\$P[UUojȮ@HU*<9j3NX9N.#~ v+tS3 ]L?i~Ta[&`"OemGaOgؠS-PFE6!tAY3O(j>@LcU/赠F0M0tBRSʄQ*\_|g=Vvg F2OM\MƱ͋8dr Bǀ~ @ XC-{gzAzb5&UeA6x9(W, {yKŮ3;E/P_F]DCV)Zj<84lbeW5 TنwiX.80[3JK9*'~4\ ;P%ly/=5ۺ S3qnoZٜ?f&wȚ, cl6@wZ}ӕ 5OyFnx9m>kE &I2"V~\"|-'9uJA3T)]LYs#8GәzVf|:x~cXr cWd Y|Ђ5ar.".#r*'8B,L.I<cC27s :ҳj{ԡ8]ހ}.syk]Ӵ?eϣ0Mw |eCX$uW:9MF[Qٚqp,xT̋c(!!u͚SdZ 8{.b*uEs EJ9PMrKLqX[D9V|?(p7UK-̉:aޅTR_J,`8K:X b4hL>w-҇MK(gӾ- W;`N9~ܶ/8Gd'$L6-85ʽ-s,˷dݩ1*b;I΃ \o 䉱bJgx, fNoGTX*a0Di|t^CEǵ @E@_ŗwlqJAR`_.Q=FDvis-7kp 6N ثo*D .@o2$6N̝]:t#kb\ WBRH9tj L<$0U W1WY],a.djW}&[f(SwK|ebCm {T7_2z݄׹{?7DB۸/Uֲ|>I񏅆[6KqTdE% p1/ܥNE ue̵nx6I#os+bCt2V{eOZl>U^M oy [0*̸7d4!J-&F֬*[918Kt1rqJd8v͐/|kQvFӤKDO(28ؔc2OV!Y_jɁXF_,čO/XE6|n8Ή 4cwXQvG|$]35Sg4\ $' +4UBXOgElV2;6;;}p Hu:!H%KY-`oiN)*/r^֍4^|'Ο *taMI偳ȒW E69&wc0/P*lϞQ8ES9l6_ɁilhGkՔB@ߖb ۟^)?$nr+T"J$kWaiN=˲; s։ʜ^ŷ fcI)`sMbiTYyO?Q}yK¨K0ٷar#P a `m)uP|Qç`QW B}3wUEdtdjyfߒ&=ob\|嚫Q_`Xs41>kj< C` 4e8C۵ //޻~] y.EizU(i4/xBک bq|LA ;N -ݍ%pde*3$FlKwN4>!,fu_ %1y'yF `}nCIT '_`/τdQAAj+ܺdaj8͝T>V9XP "dCUcYF@Ӳ^&B ޒNj m{λ}; zB%5]-&yh#!&BDӗuq}?s|,iA`kӠr.<ig.'kH+ϑh$U&C܀;\! NszEb Ne!' ]*р|%| C7!wHJ"3Ӡ:|d]m $#r)X{$_tE K4* ˆ^smJIo~J Ns #1{cu ΉߧX~ƻM27M7p3~x0x+Ȟ/䓰* f Fzo <;_-gnD2Kayۜxq'1츝Ib[FmL "12Nģ*OÜP]Ŵae0[xt.z1.{ m۱[xTPL%_x=,gA`[10O6ްjpKiVFP{SX&,ׯ8b-DF4^C5~ "Ԭ (r񇙍#z.]I[>ʡv"l] SUs025U--b؛ 3LBFf)6X, 1,ɾ%yFV@5^Jw53\RСR[=됗حM92x'}ifR!Fmut8̅ԟxO("hUZp2+fT ISs"5-_"M"Gйjwr㕵ժյ= Ͳc$q6Jnψ%=92D&kA(sȈyG !<$;&{ŀx[ȥb #=nfji3b˦鶖[[;z_'>~zINa*O005y_`ѐu^d#Xg2LOV"^mq|yt<)Qn$"uFYvYVtniUvY'N+);N;&(G̨¦{>L;[!d5W}tnyc9\!!{1ܘkEv<\1PEA>E]!Ve]l ڦY6$L)w얘*H:bBM]4"x48AfHg@odJV!Ltl!EKi^ Fk A ߫>M9m7\-Uj3oLb,ܞgV0q,O8~}~## ӦyrT`/p'Dz&;c8:(f  -6_45Ӌ+eA`L?FZCK=l.ÙSAdB^ LFs+Ѯ%hG"BREʌxdǟ-pSD H2kD[֓^"H(\-O,g僥B2D7)K[gXO:(mP ;ɼݕwP{EFLwoQwצpDp,n3nσPr%jff6/nFIpQ(auYU؃}D?Iz0:*&1aX]zbx&}R siMm.f&KPC٭d[&t )s*̣oql/p"277Ԝg@,8vy" .8]g&|tuقL~/Mmh Ct0 _DS8iJӱ5W~&h7Eߠ6YᒩJtv|xF+WӁ9d|tfFx7O 4qosO-` 'HP y6[b04xc9]C([đM!;;zvӜ2L8Ƈ3}p;nRVFUtU &6Z[z9>lD:\ˁrÐϿ9៤$pR`p"e6 ǨqT>sa39emVa2)=Ta~BuhT{9`Kr/١Vߏ2$ȸja?VB߾Ѩ F#Tbؕhm']Oܐ[vmB,k`R8?i3~J\L.Hk}_O+,ge8;?log3lQV@<=`ӠIÜ{C׶ PpJK=Xdr.I.pdXf9.XRʏf'|S=]0[~2'])oP n~-MCJK[h8ET=H/4\*@z2D^ 2U ,wKb'fĖINls5]D* b|Z^_>‘ģ;Rȥ♼ݲ݇l'!BVk6kV*NFް8ZfU~偰4oUSXvYQ;lQ\a |Qd.Yx74:ۅ0wx袴:ֺȨNJ us 9Ob|] )XyGփQpG"VЛi< H#n@=m3707Gܬ}uuθ'}7C_O x'H( ? 8t@WG9B>8ܽ .˩Իh(Wkx;׏j\ d R/LУc,]9&  ?>;cU]&`p=_IsbBZȫ"w̽HDzY&6|k,켉P>]d7*tUWbSPqO֙o#a.2Z".l=mnw Sz٧)7oGmUZ3.eE'98 ,SȮVp$Yu.*wZ>bճV茸8iqcdEÃ@eJu]Gajg8RK:4{ŠdqѓԁaetF/;wӍ4?ѕ&ЀYGCQ_o u#?([ɸ%?M+\K\I u.ۂφӤ]GҐJ5]+{X/>x[H><\O#84ŤtZcƉ;0a:ZWk mM5 :l?n@ 3\=ڍɷwJ .݂~eoBzTVj9mn'g;=-ĺ BxBFv_ѯ (Lu>g-i+V"K[ c\D=ݻ&Mh1{:7C7%iERDY pϊͣRf6C:FT9zWY[e%Cvߜ=FWw6pRo&Z⦊r,uԩ5&BvDs'R fafЩU 63ll%p |5urK 0)6AT:Gb5iCGÈJUB3Qz7)Ѷǁ Cq\~UMT"ܙV]ωEUٛrQT̫:‰B)@܄|d<7%}Ɏcj` Lx4ƸR:I]*74ÅȤ_Fޡ'[_ a1xK}TW53So}.k岺. '![{[_c?;OrJCNr 5΄r#ϞrmUP*=CXJ$eb1 4{|hLHR\qp~APin#WKa|Շ;kI8 hV=֊e$l@vV%=@=-qX+N{QꦰB[>C2 c>^wU@_~7sEװ<8t9Tcirf>4$i\~9O_ t@I!H˲B䵠CqѮ$fޚAiUUm&zw]ؘ1 YmwY4"(RN$H͍~ԒG!p_̪r0cmrO0pfp=q{ms_ȋ-$IW\3lшJ%j/ԝgÃ.;&εn\M)!Gj񮨇Ìg[ԖFVshPNgrtsBM﹌ ^ ŻR Did]=5zeB98a-(ƳJbe{=>]|p#(2哕FfYF.i[2hp""@NE +4!{Rqcb~5GMShC5P> vfH}8dPq8,Cg1:cC*q #ӽlTpq>\;蓪ޕt] ^ RM۝E3cL!5ܶ8\חP:)D61Bk$2IcF9BHƧa31fbIܾ^et-~Yg=q LDøf ʝؙ&5:AwEPnڏdJJ7}#ã3DR-̌|M⍐Rl:_ķ XP{#P!$C"'X>%Rִ۲` ([3 ϸ 3n8++|_ȵ )F϶#rqArv;|_]VQ!$F6d1ȫ`| c1JdjȊּԁ,]qVs42TUӆ;In)!;x2.GFFqcv43]V?~5$R3G)1b!Dx +df79베;0b]XEHvH)IѦ'^􅟄@T2թJ_p&$AqX5Kj\l.„x%/ĕֺB•d|ǽ=ȃ4zP7, (=֣Ui &Xv ; Y4zeҼ &ӃZ&f䋞_0Z- < ;5B>*QB1ۿHZisԃ} GΗVǞVLKO#$aGEmCt/Z3?SKEdxq6ܠ8q!m: `kܕ9ȨȊlMX 'HuRF#UtM W|Ҟ yX#2?)b#Ր)TMU{bœ%.4=}uHhBR?~]%^]!2[{G tqoH[Q1;]A6$tUv,?/}W}Tf B1{!@JK_qc;X p%zyF'i ;{6oc+Ftyx"@_%ÅO{kT0_"6 p冫beIOX:JHmkޢ :#Ն̤!X:ۉnw/e{ݧ!Z;eÉFE'(ڒ]]Bsvlj$%ɕgDH7Q/FA<d۱ aFo'F?N 2wqR؀CQ 6򴞬2g |rj7Ib|xJ+I}I%⃭-ŕ_՜eDJŠ% >ӑ3HS8F{wBlzoEf2x̔ΝJ@D@/k͸DXC=#kV?=m~CY@QV" XgNfH"<=I rUIjξ9EFlñtN) p_~!|?ȈpykG 9#T 4ëi5oj*c"x1ZSǮ< N+  6?4x S7Jq_aWoxYOm43|T4Cò) Id馽p2h ͯLɝ4!AyxXx_$5tW Ǝ\?TgS埇tE#\c?J,w3Cvv.`{pS@@v̨~ޥ~i=ܶļtRЕ!PJ_'&giQ)̸@Ƚ_͘*w@D< FU?{UMж=%-T+Ý^ӔHׅkW)Ί ;]X]?h.Q8eQڟvȠDyiYe9sc50עr?^":%:`UeV9~NWɢx--ŁBեI} $ž錝lSt;x|=iic:mqKgmVp<ٺ5z@YkX]B41&aNQ':xfx寲 G`2 :l|68euv$BX$4hat N`d=[_uhpc}@Uoü*϶}Pz)DN"3īeGl=_yQJb6/cvs;hP$0wAm.}XH@Rwĝ澖W,=?}Ufdg ₑ;Dir`$Dy2O׺L' 0X`P.RVP5)#H$#}Br S F [L"cvG(_Jbk3RXA> YO!/m<'TA'%\uϪkc.\6E&-NyW>䛳.;,e=r-E ȿ׭{dGwrjNXFm ,RD\$nU'ؖdY< zYHGClOJ\~}{}i!*U6[N}I6G棂r|k{Bq8#\ sjv"3'.R|w:̑~3JȚLLk-~H6ǫAiQUY6S?$EϮ?T#D*Vh2U6vaUYPan5㟙'"*, 9p>]  \~ l2^C*3IշSn(d>h&zfAP_JŢ羚7@usjD 22m+*Q#e>9[9w`qYUR҈3~ͯgi>2>ŤFbY8t#yu. =W\"o,ӕԿP`O<@P9EAnD#` ľWf䱵;@c}r"89$Y_YR$ݜtSs.뻹-%, C3&oIJקZ-8TvgdƘFJC{hs҇0}èb}-!xkL %cl'b8m$>ڰD򰫟FJ' ' B8tCj5<[œLPTJ4NxxC<.Lnǝ&l"+jH#&@yn8|'"'qs T,ףJxq0) U%*ȼ=.ѩ#]ޱmVrg|ZRTkCV ؖϵv6DVlb (vxJ WD`چA]Cy1iXXZJ",-O]٭+4T`Hl% wm KaNZ}AuxmPz}?` Qp(pn͉9J-MW:v ,]7c39]깎!d 5g96Q-w> hnuz;d.\{]j+o^^)Zck p*Ș"B&Fp04ĢvD l9/SNBElb+=LǗ| ٌ ~afqBMNmyxQR7_nr;52 ^zbۗѹ='Jp IYdj1 ?~/Uv )UpAp3;LW:8IĆ@[1WUG[~9*,;(cWF1n))T/Z&NX=S`'9~`/PPlʺ-펌wS6Chv g*)[DV/va"mcsՠ!OPձbn?9h cFb'g q`\9!?s6u b@-WDn?\]P85=ix؉H%rgnTjk=hFvO63*0o?M BH; +HV$@8MJ/xRP&-bQ;j,OQrRkH wb?\"0U|EZ;0۝/4$:S^0 ɇ7zikNy?!}v k׉`5_Btq͉CuKi^nj L-zN)Q t PN kC uyi;RY,)旛|eזA۔yLŌ-ycU_\1ax[#6Q(!sԦ\V W<Je۾؊Q[k_/@4ny. ^3B[}E-Z1-/am Or7D\aKld%u @&U &X)I9OHk>0lv`kF`j/<ҩ?h5\Oݷʹ?1q%5tܲ%g8It5BW\jPok=0@MڮJ% k;|)$J p9q炮1$N8Rm|Z¢mάL/\ruMq7uf8Nꘇ@-i/w z:=d-=s)+r51Mksxhϩ>#) m0kW[ͅ+1cWK^vĤܞn O'Gۛ3C$uTƮ{-k䂹ӊ`o1 n9˖=&aJr%|| lGS ı y:\ʲf c<`#nf =pbܙSJi3T| + `p@嫉ӓahV&@bsm)Lл8w6*%J&xKJ$qr*(n@Y Jy 6AXÀKE 餛P 鋧]30dEVu4j,R.u{*ղRUDkk;"gŐ[Uw/g0g!ӓѐ¦x=֖7pf!,+e'fGx/DhH#EG.Ad_(#qʴvP%r{rmQini0VJ T_!2u5˦$O&,a6/N؜I/P02񀎌F^v `'`R>{:eRPqrceq|hjDE`77Sۋ32Ň$JE\Y12;(HP=,ld9cuIoWp(7AN)Ř =+If`K3l85bp:7nu1(hǣh}/]3Chu… 0Ӹ@hZPw%8"&ޣVx)~s4A3XɌ{ҞEıRiP[maFN*!>9]~{cHf(}0oO y'(cHCf>p؅~K[`.Kd$ lD5vpoi>1I\hJ)"Y+|zZeKt9ڽa+Khäe[8וC>z1x:z$N6E)Λ*mm֫|1aWH:zh1jP՝}pTQ| Q>UuΞMXJ?YZDsVPKgn'XzɷF53Q2'u"iHzBSh劖 "sg;A4N,m7d %Bګ`x]a)vQuM ZQsCCNjzg ޮgS>wQ^e 2@2ß>Jچ Yw `I|KǦ)wf =@CSQ{$PN,e3C˼{ߣyҝbؑWTsA?(:INj]+͠/R>kUIOsZ)p]+Ҥ-1={m3:tmb`w$ٺG{^Z{myLBY~W%`0?bh淹`qEWu`ph wfU-OĞptbΩk6EF6k m֫-" v]'$tl pmZ*|)b%!qRahv+wuPKn}J[ٳZ9']xJh eLe:1V9aN. gY~éŇ"B|d|wKfpaYcU%CYu-"_$BrGEg7 0h-V_^4RuX#qˉ!% =-0VZZ|:# gͥf+KG>@vcn@SH3$4TYq+m-IRi n6؁GS C6-3.)/ ~=r#sC-N/C k睝`O wSfI-a~ڡw@q1ծ A=Do稊lrvxS7۸0@KI=\' 5`$ NYkm`+]eZljq1Nd~lNcbc_]VU9ҝct5=2iL3pO̽t6̮ D. L[ZIz/Z֖XQ0WȤJr& `:X<lK<"aI?"v^ݗ;FU/H^C^WMtȆOO;;"ltP" /sQβI#AɌt;wbnM>n .d%wؑN/ǃX;0UFU.ȺW{׊zmWMa<^Ù8ã ,$ x*D.zlޗSYVxIհFЄ":]88v;͙ )'o$p}I r|.KKB?nP'v̬@ZR.IXݩKYw\h_c"GƈٍOM5{nN%Cǘ 7#϶lyܤ[ ن`624E@B~aP Fkϳn~˯$pq1֯:*瑚\7PXd%߿t\Eȝ t"L4 m|j:p`}![Q)~/[iA&L Hʧ~,hgm7E5%SA Ѝ3dPL3A+Z85^`:dYZR"G{QoҲֺ3'G_W1Gn5 0Ҩv;v0Ӯ$*6"(+.۝*h_eN5:y5ڿ><:&gy݅)ɝk׵:ھzl#gQkmC2h w^TV*q&vW %y }ݭAJG'wu*f 0Vw^![„S:bR\cƻ)!z#QS n3#0XyrO,fz C iE$LɗwhCK`ZJ p7)>8ٕ-o1tԗ_"Bfz@Ӡ9 [ "NY~ ȱ RLP\P%px^lDricIQ'n&፦(| fї::Tힹg-"2PsT/TۊK3aM~1GA^Y+͕(C~q.W +, 3u} 2\#jv.HgO]@WΐdU@.oub2o.T#OZG(W5lzÓdIIoYқ(QCǻd9kw%Fsa[2ޘ?…0k;fcpۨ_8VO);y$#U̾%ś(k6j=0/sWBRe.<{]xϑqqQ-B 8ۿF**UB-e6$Òc֜Dhs,N0#HZQ?Cpw:; cXu:oR/ HլbDRCU Tԅ$Ƶ &*c րzz tL o QD\C9#iYUɶ؞Z;;}1 H=-a! If xx'&ҹpyׁ Ɔޘp?i훋m}sú:N\࿣*Ɯ~ufƾ漚ݲu9;Xm钧5DܟINB@iJ[ʶǗFEqMnfj3kU&"ED2&P% voaN$CLP*lQ\Ͽq H(P-cJ^+y U7~u}ӤwHkPlWPȻ桩`~@OW+4-z9[….[DDy(+oQ9e8x@#XA|=bCNi:MTB(Ʀ鐠ZyJ;tS)iJZdL~`狧yp22;} r1#3R/Sa;o怜5z(Oj=U™{g5;~KvLz([IhY\2|cQC8xSQ?C UkKJ%!ӑmGn4,:`x">oQyߚU |uR u3qdq67󚦳pן$<, , 2:S n0.1C7 <ͼffQN'R3Jn\{;)C4J36j~>B@WW'.$c?,w҈1iն1]‘@ jU CAQw2!. 1 _I0]6ڈݤ>R6SCr/]'{u \/ub n8h":$w 'ӠeóSo6)d_"4⫫m Z[h ⥗̒449u Rs#ر?kMղgPj#%29*@s‘xG{bk9C[m NoF$󂿌$b)T$") TT>f4<ǎ.L]lOm; F@Ί>7cvlTشJ+t!zy9-5]֑V~V(QښN/lyVIwN^$DВtLuݞU9ھu0@[S\K'd42j x'v!tj4 _6~d8h5Y9jvF*&XN79r"g‹,tǨ:(WT+x؋_']O介:Pn"2jNaP|ԁ:UU8aٚsm oi$x7%zx[[^n⓵SX#ЎdJ4>7\!b^(c=1)-]7ϴ$ԿHZ 9^njӅxδ!"OպqRoМt/O}׿ QOrja%y%;68Jj*"?Rqc0,z=_ȿĕ5Ĭ9 [ jm1E} hBa-D$LJYM{qߺZzOfyE$Ӹkg;?b,A =̂Z֩>,L7/ Q"dʞXr_`~{)SBwZZ!܆РԖx6P5 D=lHciDH$$ |suʰH@'$~ȂP~*n2vYHkv9݂u=A9];ESg{ CK [ɜ=E?4y#Φ˨U$߅Ĩv; ju^ z.R~oM쁾Bx.wT89Qy,Dž>7w0 z)zX>)=^Fђ\+ [۶ChA{c҈рWnT}K_Kg"S{x8,vm 1I++*s z# cϥލBIH&Q̵7*#' 6]d}BЪʻ袚}ά{N֝a%ԕW`M'6?hקkkxĖ, y-AW5,*RvYzܩW?n/CLJ$qovtL/](ҡ$Q;]Y_d꧑&ShG~>)(9hJݯ 1ŋQ}wr[ЂDasB6wajd!iӭ̰ҕpN\d%Rc}QOߔŚ5Q p?mh}WGeKe`3]G\ǀAbO'ӛj~ qڤD#5-B#ЍI*g ☡O6*;sbHg  Wj⫂1XQ P3$K{OpV3p|گBQ_CNNu=cO-JЇ6XGVزlϕkOh&iPVK/$ߓ+&}aEy]Hdx89yp,}|K)N(6O5$q0Jl MyB`L zshB8VR?W>zZ08]Rh F^y2o3:3bEԁL?3cn6!Q,OpM_ 7_#e[erwJLʲ(깏7ݝt78]@x;r\\o/(Rh)U R u&ר5KC垍-sMӧX 'ܸKb8`"5]3{;2>h^q;а]b9YX{ Py9n_,8~vSM@YNh=]U9;LguyTW>"{8 c^ ƥBrJ37!N$ Jd)tv|k09Jd{z"[vN:t ϮyuO% lIM{FK[/*'rIsa@RT8b)& Ŷ=վäHYh@'ff]sGZ,/p@~b.{oY}6fPlwlo| p;־~6EP*V6uP.<=YU:ΜdgfAnw mlnم_dA\_ =*HwJᠣ@$atMOϔ]+ANWWȑlTs`_yns^nfIk4'ә$ r^:q9~;Dn"N]/y=EQYjI9= fó}t\0+qvv,{=lrcDlyNaDl㕠ta'%=:U[ tbƒT͍nJ Qx=4jg?Wq4x)UHur\BaoJ`9-.FIS.RFSutQg:d$þ/3@xRwdHF|JeQP}"b"h ɸ)G:P,vⰻ-gL?w#Vә|"U'Pouf jZ!vwˌDCdz{pG; %g/]l{Vd! cu{׊T')wӨwR3f- QtE`j$dǘ3?4Է"jK@$'Ԙ[ j c7iq38{[ l,64 DMgq;$R철8 {]$Ih l1f?yKnPh&ƝӅfDux Ւ2G Z\ 1(q;!bӞ K%a.Rw E{ !IF1:k@oJIucW0o߬sKn)'U  D {pK6b%z:-c*g̀eM$ҁo+M݀S'ܻE}7<w/44z4ct7Zji@T8uJ>ځb82:v8Xw a]U}Vd*ZJk `C+N㏏#M/mq֝ۗޒPE\'tVP&-Y.TUYDtd(B\$T,3 b}l6$tDžM[n]2M rbu(ŻIZ w#2>/Jl嬤RglЩ jv t/5!r;pyh\tPm2 H P*9׆!~\ vЧ89*bɑWrIe?a :(_̥1E Tg D 5Uc^Y*45 ,m0P^t%DECӤ>V@3Nu'DfUeCQ+FcWX8u?)RH@aZ}e$,psYT2h3 ,Wr2 Tu`G*z.}.y2*u@Q!vJWV iҮWPl}뽲Yͱ,Um rۍb=`7U$?"=5Z$#]=k,FVlxfd!VO7#h5Ψe@ 7JЅȻl]G349n &9*SqB[=P<;֗η|x;ý/s!qmwfRVCnc@iYAG]a @$!SmM1x9c s$DoP#Υڗ/()0`(di%o#_]q]x\KeLk[]rEʗCFԼbf\7mk:5(pu}c\=12FCF|{d+'GŢ}HOބ߈"I @g4T:Y񖯻HQ{b{ IKX>;be< ;(hCa88?lLN~ĠWU3NY#,CTV/V ;fh5RujL`'tkoȞ=\{iRfr'Ob^^U 0}3NΨ#;bhBFn C1G([Z9!b"򗬌waAP'޷v/mR[K@0UG(MԚ"aZb|V}R7E铯g<; PIek󲩆!$Hfi!\pcHGҶСY&fŁ'j I4Ο/LĶ:'0/1d$n0f"6JO_SZ4l^Cm?Tº'ˡ1$)/۳;p wr|5$~fΈ /4ՙ6U)=Q"]a7jCfdx5˚$|'h&k c!!Xg!L4(._b&#&W8ţa~ &B;}Cύ1Tݱ@Uˁ |;0|V/3wm5n]|m̢Ʋ0-SDN_v V3@=ߔL GDgރT wfh" ݙ艙쭱s] b1S>14P[C.Y`I-B aā;tX`_p|u?:rNl'e:#sm(:WrY"/|?{u?ZޮTe}o欝8m?H}sꣶu8\%1@9G֋I*=sNb)j O z'pe{%`7#O0qot]PrNfeC7he!H4:"c~:6bwfkdGƆX02>n@̀SND|{}*M)62Y#} ZƺWC$5Qe=S7XPGmMc ^e1skB]Y@ >>∽ _)!A 9f2U 9x??vZnS,?tϏJYZEcKؽa!{j 7̡H۬:2W.$duhVwloLE";c[${8n;†:*ó$-L6f  !h$d.cs*ʭЏ|OrhMOمQ&a/SVs3=%>\Hy3@ -in%Գ 8"g֝Е4}ҝ6)?blb+Mp ߦ[$2$RuTۅN]xΥ4MOml$J5>Hm7>K1Q UNwx&eOl= +^-dt:جNhq+2R `7 sb6~7~ұp>̒RqԅggOu)4zsO+fe]£~kK=咱T#jN^PVN0Os@ b׬z#|sSEgW׮WѕeJL5U-ws^c^Xͤln DH!QoDU``3-eߔ.C23J=㏣>pǪ"lkӲئj!x8ɫPo.q_F݄jąн$kE,H|O IEf46! )Hu3=xP+eᘭdrO$*E:R;~|E#Ɨ0?U/Qp?jn]iz>̦QqH,|xe^.dD*8r s<~LKemh眚5 !x)"ϏVFJVZUl 4 N)y*T,-n|Bk[U%S%<o"N?a3I;u)6G!KIe gFjH F!P-ޝ /@3a^J!:j?8[꟩n1T6mst+ @ֱ uw*)[)1\\xx3=Aؒ/јZQZӋ f|Y0G,>ArtM1U,!XKţ .WfVc$)} s]q1|ǷgHR٨4LCڛSP׋]F|8nP^`,)6blh@d#/\t_~#yT^ܤ*E r|+ { .tQ`W4)6u 3$1jj |%OR '9`W)5*[t}x0r nyb פ`HB"ɘ H0umt8GﯨH5ߣyTK3ceV02K*)1.f=F*O줽+SEslsykf<:ќoTtbP\8?{N5˭Na(q#c#t: *[rei6_H|͙NZDnz=KfUS`>Uzmԏ̫XY|PZ Oa|JN݊'Da:<aoF]6Ob5LV8B0UĖ] ϶g͂="O9O匐$1D6'YuCTvwe9_UrQP9J `}W) "tFjw72ZҎe0VK92 aSC[s;2Uj8 \@fbټ6)!kk`-~jH"Ncz̺eel"-/P`>.ghͨ8C/Tjp jo'JĞ@^&Ҋpg[_RT**9K|@Dc0'د^v[ΟDQ@پj]OuTa0s9*߰b׺$F @}JAfXXV-|Y xTxfFx?S33Pec d)z׹M$CֆV="DŽ=bv04k嬮f.k o;ȓ@TWq6މ}aҾHal?sӆV,ٵRpFw!!@]@GIA Zsvcj 2Mл$݋ ra [:¢׳q8N:nmhyYBt+KMIzʴɅ_Iq8AZbB)AӬ4!7ٓwpZ(4A?,i)voLgE-Fw&"RO1BQf0qN HBO-|`%4l:TS8jMHfrgY>;U6ygZ9J8>f acZj,Xܬa""=3+J)hTQ|m1M~&Ia@k}up>M@Ȳ%3o<:1EcpNLGumz"Y)ZUčS"|<8JR< -٭[YcUh DPBJXJ**6 ?GGGU8LMn%wvU^F:+yWjO]H~outz K_=@@MZ)*Mw;Loɢq \뛛=G b!djrcp!pWiY;IŇY)L#ڟ:>@WxSNF<1K9e92+W'lU?+:*<iJYdpE0 K::yp<)3#ٟ G(kFY%~^u)b C)o3 ok06:٪ˁ3OGIqጯz."8KNc;uvq [`cBnF絩]wV+bGȶ&Óa˯Ùgs@?ݑH)em@xo!Fo.fxѯ-)\l[(`xA 6z7L0W6[ O4\(9dtbR"xNO?' 8nk9ڿ\\=) U _UJ=[`ҁE; q=ĀV^6#J.2֦<9LHk: ~ߛݽL·T*[ψ9sPiN2⋭+@1l p<=ӉO6=>TWJ:K{w'}Py1& nqv\c|Eܸ`&N豗w T[N^_sVIVz w3Zawǯ5fDu-'+7=oFL(6$Ga[04u[ MdRX/H E+i ކ6t bR43HTL3^!FN?Ͷ Q42QW%b/ x3 P^Nȋ ILN!|0d\,<$ɫ?ѡ`Jȓjw~KwB+:'PPAk3=0IžB|s{͜vljR? 4R޹B4fLNv&脠~o_ǐŖŸ7tX~p&0j17m]}u^yS D8N잀ɚYFYtU=E3 JF5.(qW'PSSd?&udxrHxPZY/Ȅb"(ŲN=c+)AM%) D0Wbo)ˈ"_Mbzt&D6ޑeP 09@o6,,KceѦg~xQxB9nS3kJطxc#h!Kw^~X/5WéX'7e7*a.hUY)}q.h);#l7s+b "b_^)wg̹'Vtc{Xk_=!6q]d)FXzqUuo=FI= q&$ET+?y˹/n, ͖8d.h 8ئOOTTGI]wj -*Fo(!1\=avoШ@  ҏ@DRiJ@[.@֪8׈njFP?n$|X`?<14 xmKIAi[u#Q78H'&˿{8[%vbl zh{I׌ʲ  ҉/! 'ޝ ȿ̿"@} M\ $Ktn}PVŴF N7~lXASD*6&2\ rz8'n(piBX(v ˥I'ͦ>Yv \ |B7N2':Mk*:};]4Lb3pHiXMie%⎐8B~ iza^ Ke|"F>"g)=uJ],äRpj4〆 $6L\e\#01Ϭing|钺]:If/=~9uH qzƩ1TVܽWV,B3__z{ONUzCk..kP#F mi0w_h+N0@BJ2A Gb=p>r~/꥕`IE𷈆܇W*ƧƛU`2lu3uTnEl(/aM94Brf=S"%|t@L*kbGسWXlZۘhO]U5cK-(7 r@`ܰ\>i-֊M;NHB:vU- 6mvVs92LKpg!?v/9 oi0;6K}8 blY.T`g|D1`9GЏ+I B_=۳? Um*r$e芀;٫[0҅pM@*SʷHKZ}v5m,˜?,l lF:ͫ\[3qh%gu%w;J[h xk³R{ ANK33ؐ4xjZb| L0t8WfmDW3KC-g_-BŶ8x@Tvc T➳},ᒍ`y^*Q$ZtB?AoߐbRLYjj8z*&[aoo"f \ oa@*|ڏl8ߨU6LQ\`"ة@6̗EtrTf#VG/O+}@e}(׊k޶s0ib _s!%dmRH+./1B:*j$dcNm†{0#y^5Lx>cInP@AV_`O~Qf1{8Bw)'rHzwOvt;/5f\Vè\ѓ If-Jo25*9W/`CeŎtsqlE&l * ?Hm'%r[tXwa1ؓp*KtbJ\p(9cMƎb0Dܻw,la1 Ӱ,DMC" Tߚu+Gp'a`ouX.':y~2P`zփ@&20A9e|D]!znXhͫPvphpO߼3?'Ƨ]``ѽ,s-Vށ P{(ǟ4-%SG;B$k_~i+GC>WO5Bj\ΑQʂJvoM;{h %p-̀JEm+/aKvEfRbX$T4DBgE8K~Ԋ/F j%ֳɑ,9uPh `Nq"*B4n}#>RfT ۯCr0Rys& lkc'atzUv: |2L款K1uFOi(A_g$jw2,U>uJHRMXyDx,5W*PI.Xt˕z W,Uؐ6bvvtT-48%m}A?eiΝ#J5P$E&gI=K_C`I'*a\:Vp:4JT;rS|}~ԬbXʒrL0<?9h;]%XӇܔoHPq*x 9mZ:zז!mh+ kቁ/9t/k2zqւR4DCWh(rP?L#d Fٻ(S qͱ1^j'{#φsawliHFKI7%;n);Μ| gظl'ʣ1K׏XH\K,4)vs@K"|S7^s2(UZ6>/qҪ%Z^XP%17 &2 Î9.@RV0G( w~Qq|[I]W)# |H&;5SXfi2ƴ0SrKh"qq9@XuOWٯFltL|Tяl^+Hl\tBESVԤhJ. bMf8֠'PϺ!!%,+&YQ@([daiq^,)| MG27>oE9Z!S+tZ?p,ҊEf KZ<|TLx (臉lfg빭 sAȈ0]Dis7苝9#k ;>KC_ }UXx[2J067P\*l[Alms-ɻb |,J̔f+0Cen66idTbmߥ;^fLo 793gWC; ,z(@OfH f$͛y{ي,z.=8`),&:Gz\C`xa_=UXmWJ6_lPqC )WȘE\˧OXj),5sܭ<(wa7ɛ?dIL&\>~2E(?ǃ~Fe^*>cmBDTпt!+451ͯ(VM!⫓  ߔG@7f6/G$”nreK~3lWcU3hoL]+$Q~G%-qGYV"#ꇊT#ai]&@ĽO4_ݗO#,5S|:JS.?eH{?%SyW&GCIdL!(?dh9cskAGI8Gv *av;H4-F jz~z+rWW+ VU(/is^<ѰLUa{Ha$xƘ_0: 8NZ'.wUJX6[e_Wo`w-758]j,i6JAjQw,Mu럤8$ȭA.j 47ڰV "MAcqMRXt ұ D\[:l co6_obT\K:F9a|o%}#cQ֋SLQB88>6@ԃЋuHIE{̺Lo0v#n\8q,"τr^63dӨ0TF 0XcdN0&2|~aACQN`;?óLi{ Ae*]d(HbR#O#M݇[ּD8LL_8~LmX SbS 4cc7qW1z_cHP_HR8|$g"jNu(S&N}Ss"8WsR-5=<hh~v #L_ũwvhv6َ`ԛ: T0SYx:, 0Mޚ郧L\?y7X/u]2c ?uArecuΦgX: }`pI<_WF `M?ndBtmr!zhwSE,p9w37~esf,k֪x|mёdaKxU/ țTJR0fI)HsW n䄧4+3Dc-+5c'%ֶF2 Wy!lPg۞7|MJYFʼnkmH6TqpnKEA ߸&:Μ*5{'#[7PB핮EQC7#V,4kES͏RA0u62VΜ7|g_W j۳*ZR?s_st; LXf%gsi_jgݼ]!7W(F351[lpԞ*.$ħ ÚL/})x)VQnk~wSeÝ>Z5seEOlEF,V`__D9 ,ߝ;Q(ٜ1~;/ r\ʟ =Pi 7>Q ]TGpnB^ >IpQ* fަ+4"֋a?SzZtV%I:Q_=!"vtx΍f^:q}OjV / IpHDZy,zXx0BgXQKrgGBY/lh߰pCᩭ1N7$E\qk$뤵=ȖqK~m/ c4ԊRn sN;P`tEDj&^Tmd8b}Lm۽-Og}C a. 4ځG&\ުD}ae*cMA0=~@{J.?"H^E8&( j+ Uv*Yxlr?I}QUp1\d庭ؙ~o\ _%6Vpy$GޏHAO=FGi,l.}ǙI8uA)i?1()M,[蜉 PsvUVc\r_mai3\ !]3 MU!|crBerylҟ]Mz&Ny;p!k;)`ɭ;iͷʔ]., yj_I*r|&hGnJYg68U(V|%QLe&M8f3 !Iܦ氥\B$A-spTyB?+)-LGzͧbV]T+ϊ22)/_YG 7D2x!Nڨa"cTH!XFГCC/΄Z]=hi"~֦N}ZsQn(lޠm#B(ߡ%z=?K^$FDnAv3dMAT{R-Xl2paH"NTh𜸭rӌc%&ۿ>h>ӻ7D%^9kQP; qL)ÑZݤ lVC)_ cӱHԇHo[6yq;zCcFm+SUA,وi[sE+Nc`[[mFt`vJ7L}H>*IڋKTM-PcVʬ?WUQko} $R`k,.Z_IExwo%e޶_3i2nɖ+%CyH}B"9bU$]qkׅFD8AQrW $$MЗ/So6p9G!0֩/`=w$Z0CEըKsXC̙k@V8-չTIW3BKlOo+wr XP?ɮ:iqv2<˜^\o}N|b•ÕJRI6 kۂKs*+AMQ cF6`rJ:,XXᖃǷ>鳑WTrt;TbR|'C%)d!:#<3ȳ#6ݯ U.%)0.!ϳJΚ_#@埅\6 8ϰ ރdœN!p< U\:s`c`4ۻ$-Ӣz,NS .i$BtRLtWmJ{j2V&?Ғ-L"- ӂ9r LD3AkD_8{?B-g3/=Vgr9}uT$nof!*pč7-66AFݳQЅ8sǁH:/Sv?Sz@k>UZ+6Xª'*أr"4}Bk,tACQmT$m;0փ 8;pQw[X:`f'Yn']BKte Tz%͇^ wwgDHII `i[G1L;F@׬@U;xi*'|}MU# xx:@#ԠfJҊf GC/tH5ڈEy IIQze+Q5f:/骫4q^? y6 eֲd! 0a>r fb"NKE)"8񠵔Oj8Ȭ2{]i`~f1$Ťm^}Pw\Il8L {m|T$ٗ%-oIW _l`$Q?3ka)ŹDIJnJ @mNmԺه !=ڴf- @S]=%Khfl娸`%D '=0$+̈́c!N*<'y7hEȗ۱@,w@eř Ti>}YP 0a#M;jAN[d@BCr@^HɃOo!JjZ_x"zk=bNr* ]#vXRS77>4NjŇDtA}<ʌNQIꮄH-?=Vy{23pqX&w3&8K b=֟$Nv8aKө@H 0,tr%/DlcanbͿ^ui x*⸗o{7z2dF+U;"g,sN b?D1ÿ܁&/t/*,b@u‰dND:w;^:.s`C8&QQ'*lu: fКw#fLD:cd@SVE ;ȀBo`d3:lJ*y 4RC+`W60]#iV0ƘN(2}:po;V WY.oDm;N%*b\b5K]sx֔QK}9}sQ8 }3x>vq&lc$L7e {:*:ije $x_,·]{~GM>R]'? #`lvG}-Ab5|Ut&WohW 3%8nrpDQ cqs])A& Re֘.I f\ С#y7>nwW?;"d)huHxb X((ma r0A7 C̊ xjt7=6Iܭ>v,M[V0 k̰)LI4Q,);x"V-ACǠJĢ2u%Ft=$ #e/ 9S[d.N-H>l%0+n84\ִB|3tʔqhn|`ćE(qB{iJǰ}>ϧDUNyP٘f&j4^|"EtkD?q,$Hc-dF|Ȗ', /q^}1͝og;>?.`MM0$ĮUO⼮'F"&Td(#!1 tJ3^?{{Y/㭝Bxq/es<Z =B+d-N J4"axo[dνLo;U#vAC5yH ޅp fF<`"==F `[1oF {f{{eyP6 eQ՚7]Ĥ_Qn…KPiHONq\ڵGp؏j$MG({' >}$Tū}Qs3a$+&5b121 -F ="@w@.f`Uϓ:t?:;z{2٠ڌs?4}joay6 '<F|e])शD>F=:~`ӒO=Pݝ>ZA:Caaq2G^eQJf\ >c=؝t>sP9;ؚ_ -aA}ZVb-KƲU<,Y$y!Oh ej#ƺOGbqT N1#7RPd=Ū'uWl5ޓYQ}# $$齞[2rޔLli^X{'!%xhF@ZNerwXIgltu a-`5`Kq U8,-.[_ j2ĮV] J$vslߌҾX?aRb(,: |L:,/R1\cvDULOe[PP%"sș4 zև,6AwX7r#EȠ8^:HZ:ȵ_ KzRd+LA^x lʟl,?]qxM>~8O 'oiy;A+ZJثI8OmMLr xR,oU1>POBeTgԶ+sbo];?XO|V7Zrp6\- cO 7 )ci_o=c/$娾*aS(NiǮȸ::r o^P8ҕ8ᔷ~icyu3̻vKU_*T3$˝ hHfխ( $O¦KTjݾRB~2BJ`Hg.oοCkq"H`ǏeF+J /P(۞p|O/5 I?D/JLLCM bʓ*I;}К#8~֝;gy87.R#v"=:Qo(oKI!֡2o^қ}wH.xKĨ.!_k,oa! w L{V1riY9),z"mfhZ8;;#9-/v[h{ЮXhDnۢ< ʬE}Iࢍ_ vE)ܙ[͏/BspMԴZkeR |Jq@+Kt!MiBuvo|J/< OC4VⅥnu>w*O<{6ͳ!I`#k)r:N4kvk+}򮩂;KE}:(#/ay&Ë*<=?rA/A#k1njzTd] &afm*>M3#F@B6}ўstRrӟe`P}UYWd ssY&=~U8Sp"91> s'%oϫgt ܗ=֋A 47nrɎD% u6nK`I5*:z1.1} }^|-X$RO8`2MoӅ᫩ي+oZbb[)0+&ux׃9Ɓge6Z%nH Np^Y!1@) & s̯Fg]ȐpM%zQF}Z/uHV-A$h栖*эoCHa h$FAs0S8wPve!=D\ew "$:2s֘kڎ?1AfgX+\d _uweFw2?|˯H4b*T>|B 1W&CD}[ūxC,^+?8+(ڵ ش3phiۆڮ'c Ԭ޸V9w :Ǐn+=OڋlӱJ?08'ӑꚶ;!A>׫YO !q|<Rg!a'Jhm#7tgJӚYcɜWC,;XA^:0L@.&d=2,Բ؄uũUzFۍrm|mm@9VYZ>],¯asxSRe+QtN<-\tWb>B_.0%;z| \^::U,8٦mkL.{T{BO;EckW, cP-()n1 PۯK*(v22;0[lU\rVBjÒ%B}9JW}2dP4%6dၑwg3=j>ai5qelY*aH_~K&ܭ蔈EXRU04)7X!w ]]{f*1_ Cˈ] iD1K6v?;&/xRBZZʯ]a-ʿU"wC>qCPpPx p Foc ?9(L gLÅ^V~ŊO6 뱃߻1ZlB;ⴧ_H3˕<3-"7BmW_aXi'EU0?bB+mMkQCl+\-?6?kZD]b3fgQ 6xR76•zj3@Q1:$ff%.9CiA>_#Cv 4h0^R! RD ~368r z`P'܃bTK7z6z 35܋sfo^E40,z}vYyv5fd_h0"N#2'"/<麨(Jh"]Փt KXWɩ.^m @bGv<54T{bNMŠ!9,ávA˔jbs*{)>4L!Q?仂gծBuAVN1J*^؀=ZI43hv[k}JL(j)*ЙiDI_տϏyn 5rT`2j}*_g;T֦WʊOQfUt,&g NEv ޲![b\ ]5 ^ܧeX}Y{ )3}R1aCq4**.8.SDhpyx۳0ު YVEFf">gF|AuZ$9 ,19ElW jYs4.%vjkjd7u+ GY4 Ѭ %aR|+aqgDq*qi|aᶘT3ʳK:y?j$R٤;/p$Kݗ9:}2'Bq` &X =.۶.o}xo$O94!þ&C;w#?7Bh;bR?!>Hu2gW8`2a"j8Uv'KO]l .0b‘ݹwI}kẆ!?!i؏6e>}*IC$|u6>ț{@a3psǣ[o-dmYzpxtZϨ6xfq776t(Af}j%tLm6-t_+}lyS~/ =yg.O?#JLS6&t@CIU>I~ؑbUU8r 2lFH߸2,k|!:^s_P~u ~j|C6{4s)}\*)ONN5v:CNڮ +;wHa:e1NJѐS1CH&SB:;S蓷J^ P:bڲ|>\4m%pLۈ^q4w |QdhZJ7F(ԓ $Mr5Q/ڮYeFnɊn{tq?mYo4 d.Wn*_Rlz4gjhj47==]1?hJAtFA_ON=?#1.VCQb4sNԾ0>kKZNi^if⧺ipG \VCtl[uQGe(b`0m=@py$R-. K  V֙)"߹뾴ŏ",1;Q'RW(-) `Mv0{NL[I|X"7ѹFZ}X !cUŽ],me,ҏAe *neߠdqp͚0@`~A-ax+7y8HjޗOƺ g.㿳h(ot_ p(q®LKÓ5OV\˕~h _[yG1fъ!#5j-2)Z4TBi x\wv{g";Ŷe, ͇w LD6YX4jRx̾PPn" V8^r/~|БWO?woܢ+RK<\osxi,>^P`Me4?k? Ͼ}d J*{T Z_Ae-n"OU^Zbpyf0n#[0OGUg|qJKi4eZ }y5Ho[LZ~pѳ9& 7KY$BV-;̹[a߉W273f9U2-$t.G wB*^K˞M „6*~EGk&Pdi7P:ޕk?6Lƪnj.Ղ {S0> FOvK9MΧ+gAX'h!RGa{ͥb_=(WB$* $oXZFгlHV-#pV>ur%qpz2"${3f}Cpe^ E)؊p i zeٖ(8x?D=x?]KJrt3n~ `ANbH仄݌,w0-yK8ɲFqCv}a*L-#Eqc~\ 1&ߢOƏ/K<3ءߡ.F+= PH:yeFsK< 4*eqkb`?ǐ?i!F%ɀ) G)M,׃ JgUdv*UFOőIqcCVtu5:1jdXQ%q\51)*).c`(yR-q ā(~tɁ6\ Qme#ۛ;mIĤyX?Q!g%E|ي)v[QD0@D4^t){4@knѫ2S 1ʓb}oGa*;W}Ӳ(z6=ŻBI%$g'p鿨049,udl*>vv6pf"_.Yܥ ݉rud!mk@ ׬ U:Ƣ8\6?>oJ8ByWvx(ǽc\Ԅi9x I@^+> #kOreP!NgQ&:2۸7S`w9|On|P/yҊoFFW,_j.3Հ;/)'̹H@sCq35//ﯙLe'ZC[b%`84 /_Ӌw/1S#oxCO9^s'movғ\,]=ԋ9lj~X/GW)5K'n8.h[C|ҋ8P[#& UT}O>p cr RX FEfȜŏfA70NP׵/$hI"ó0lAtY YBG-Fbe՗ߪ)h4?-0`FW3uQb?z|@>ϤЌKz(CRZ;]973{351/{ _k[aXi %>} @ N-uDIϖȂ㧯59u-f' |AlJB{CvTMk~\>,ʎ"Y?>Q|зȷ3jտQg@zM@ KԬY]_=BLR+*V6_Fr/5RF2b޼<5rth!&ON6RfM+GZKȖ: d<=duNǦ!՛%j4;.w-XCHAy 髊i0}NzTKɼv8hWFQhʇrF<'y>o]ÖouP::Q@m?[<^9H$W縟oߌתhY qG8kt P9O22CbfsInfUmlV~X!ڂ @7}uzUR-Z0j& )kZܐyNay{ ]zi_:8Nc y~+AmSء%Y`n #ّluݜfxo~W$4tܥ[Z#$9ф#CpU,zT Rrv^JdžM`ֲӥwn-3c1LM(pWwOw{)8%:2j]cLCmRdϰIWQ6ٴ^V BV>v %EH@N,vxULނƼs|4yb68Ab-Kםc@CDx!d.A<+~=U(O0⹠_*D/?ʘNl, V*l̪tDCRԽ_[mH7Oa9(ǔEQyXEb8O:ybXBj^]&WzGnkcxdwC]nl1{S/" Pd-CcӧzVi$OHFK@tI%@t#K1qgaSI_N͐%JrnE)˨@D`I鱘uw~0B63b8u/H:Nk\7Lgˏ m]u܎! Yu"]xxk!"ʓ퇨x~惴6$Z䴠,Jl5FU7pi)LyY''3 VB=ʰB}dP) lѤX(HȑF$≯].3I"`]L>a}&S\o$ž1a%%@TǓVϢofZ$۱T5kr*BhrR%yJ73ů# zznm&u~ugHRez!9V'דfsby]ԫD~&~S>~fhF@˴Fx&soZ%z=TaϸhK[ts[)-jvsmSBKrB8bL*3լrn[*3[ASn_-˷9 L.𳰸(qބ"<_ocQx˨ԨNyfTIƥ(&FrhQ6`V|$ȉ̮,ږ4 fM`W7Cu^{aXF5 l0.^z8_߄N k5]1)"fi7̽Z4DU,1_Dj ciOe'"~8|)b U .K3W3TadA/cmQ 影juf>*i!&W<-yO Rda{`0/G+آv>n9>}ܴE*ę^.Uu3qZr:s-NWg2[ݝ. />ݔv;< pc 2t^JxR\kZZ{vӐ>5Gper&hBR7q/iBx QV1`ˆڙ~%N0JW/? %;NsԘ.zZC@k"f J1D}υnE%dD!Vp^|R%>K @URlVq ЮJthQ}K`Re1 V6IIi2 ;EؒKtuNSg6u(Pa9zF~5Yٕ;iZ;G?=V4# qةCy"ѯvuax1KO`/dgqT桗;,(p5g1`/ױEU/q)̫̗, zuQ4;lgM#^GyDg >7#RGȻ/~]wyz\OzUw?h q;`Dbwy kS,>\=}<`yƟP,Yc0]դX "Z#"` :LG.;B/F쫉M!A'\:[ eѥyLq5_koqCvC)KެX 2$AO-v*p.q߂k\ZK&0|<۱W 2Vc tk+.ht<|<[-/% N˧ɤFj۾0p%Ry,eu|/TV8+tb)4 NA%{PͺK+iy͌=?P@*~aeɥAD_M˷BJ0z>[{YޑEZr/񚐱.z[)MD (9b$5D8m _JTf<4kzA)S77i3aZ_2ksD_e&N?-=>wNUQL7yo=[‰j.l yƞI[MG7= z~k, 8 @6J0Cxb82.>Ճ0͋Nf.S.YK^߽h]c^#8 `X۬t0tZ6_ 4ɑC j딁# {q-!@fWIz^DPAZ)F'~0[r28/q(+qNȠd91ɨ \4R!}^5:FUR8$]pũ[8*TmɸWRϚ07~Z8y<)Hog72 uܟwۼf᪂G`H[R6mjqoy lC1#C>uM Lj(ī9|Ffe>B.$ĢLDQY#_EyB*S# Psfy$.:j?5}D;䡒E $s?lЅ)v׭ Pwmg@2pi2"eбEK5@^,ol'QOznV"2/:TH㡳b^i0,aCtq8fL/ MdMoA 3K=" w2E0}:+( Å NPJ)x>PSM|;/3666qLQ>nm/SN:1AbHlƍЪ%aK# j 4iuvc@]@l9"ཾ6gC(i'R !R&7gs!e@e6-C*a=y 訙h<:1dtjںf0vv/]ԇYUp +MVA0}OprxAoFAy B$<<˟`eci"λZm+q>ϱQtօaeo5,DqS7 -2>rj^ʯM_ڢp bU7[t&xm0d|!/8 !gC e/'b%\ %Z X,,ӊہ68BE KIh]"tu>N#dNhi_+Vʮ@ox.̽ I$V*|t1P{K2]TQX23NLwkaaߗ~ 2h aFǿ')X~Cl#>|-NZ !iO [A{ >I ];ϳur&5y}: j@;?JPy$v>i+?۔kJS)VIZ&]}̤8ON޴bx }qvcKyO 6f!#˃Pzw9/:m D @ FY&)$牧EoSNx)x{.ߟQ80aTQ#"8?Cn,y"_լQ6'su"a¨h/HǦt|Fj 0GltK*K3_(u1$<G A.bZk^l5*Din7PAd[jhj-ۜWy_NK$2Um|kHy9[}vw-,nl4?_ {suH%roCn8TRs3s(_wp#ǐ+rtG&Flݎf¢`̜M_CxޗCB-|Ʒv R;uq۫xF3)+,t+:1bAFxG4;xFq w&e̢+ Z6G"lb*șRȗgfHW:کc(ʔ~|ڡ$z)KvfƳ"NL8{aGSԥa.n32!/ÿWɵz@p+cl'"ĄP83?It\@CF[hiCLG&i4MfI eG*Oo<%ss6⸨W7z@[V:U{b^wDo~'~ӂD|񑂽S/-."J5v{Hx:F0(R;n_iw&X; '99)Bț˽R9m4n lTad3j0~J􀑠èY] 263EB9g"8$~&pYgunܷz%Emn3f8ZBArBs#8D%s4$$ϗ<<]\ai(lx҃N Q uUC#tD,I?>w UL=\!ptJQnlP3_XDExSt\e$ fiRjƒv7?`9B?({9yRnH(ſ $G h_FjM( lY+)kr "tܮP tAVel"hbE1CpCxa2R.%< Ѷ TGn[Vp=ZsAJ&o^B4b2_$s'wJ9*=i4oyL  ~/?Tv2PbQD RT:[)-&N,)b' C9Nv7vd"KTl/D\1nv&ĵC o:0Jg*rxS`fUa]v*{u6^Cw, ' ۴yh`S6 '"Z 6=O~3 )FlL{?>dv js>ϋe+S'aUu^gPèdfIg8_0.hĨ$ DyҞӅb:iK~SIHD L*5ht ?epWw:CmTRDお ^'t0S>4nܴO/6P<S(hP08 s/EO7gj%躺hQKJp' {!+%-yI ܒ7JE[:5͎ 꿶uN"7"TSXgc5Σ]mI{SG|̗a"n p8|%/o"0?}oB:gX7(IqmȬEvFQ,)CgY9vR;JY >AnD"^" 'QS>Z) ?U5loƞ3jOiA٠0\E^hCeõcv<1Ր[YXEY؀dj_$]a-.FxRǡ6ge櫏Ag Q4.e>r%k;#(z+X@Ghx{J=^yGn!v:'n #<4L( %u݌l֬&_h܇=B#ZU(-@Ű@J?)kAcMgu߰kv9p})`B/P mTQZ1*{3O/_ @wGB_3\/]^lWs]"BD/zy(CO/Z(wE&cFV(^}ڇPZ +Yj\x0P -A3'8soXۿ>!nGU}x)DLJJF+MiB`lBS+c~=6=d>͹h(Foo~ \V=-Y'tTuSxk{-u%97I3 龜XSI+H{-I0PESߜH?h , t]?ހ+JO,W֪N s#;6` hOfϰ:}\]O1c%n?a+wG|7ѢD6~x8TdiJxIj< ї4Ue 9qE+U@[ERUe"e"EL'@kmy06G\FD_h djȿ۶| L4lv>JԚ)%IiOy99S1Y/1@jG{8-@ϙ kT?aubhrom~W,J:7ى2"n2HqvJzs]s^)taȁVqL1/-o g*ͷQA?1x=r[mulfMҘ~gtQOM:)SkeK=Gi:mUᨛc0`A*@<~S|l$%A#e!aaeSCٱwCU ~:19rBsp2[Jk b-Y 9F*8ϳ{xłM +Äcʘu3~BkbCťPwMىJXkRnu)l"!kN\7g%BnrPV95vWOX4si!FfQ/ ;>c1YxbR=:!UtĀ.-,9x]nT,_ pz43G9wt! 6SaUg RjXWuZL"ObyB`_ixi7 iG$ Bk ҷ͐eh]Aoc]PxhqrE-x5#NFdH9B, 3wR(/N$`\CbU/eOuKM~;y3r_ hiCXg-n2p$~ Z9t-~Lj D5Mbe06Q66oD=tpm0a>c,yzIU7H&Y}8/B`PۧPN]3/޲a;eRA)@osGϩ(ks!Εt r߲k@ aoVC1 Z^I,p̲}+ʦoC_qVs$`XR}o5 @'}h鳪jo{=O~Rbѫm$zEs/9} PQ7軅}h,Mؤ_=xN"8(^AUd=qC)DFffIF JLvqnO'J/5n_戓g[5bOd ؆R&=Lc}K'#e ;ZtPetA%R&~X:4vAhF_bsܙ ^2 ϋ+F[|{hoy7OJc<\wf,r``-fCeZ`7?[r 8T:F8ft+"q!.ԙ={ Ieo({ΠIڲr$sW??)-A;Es[nAi}j}P_f̴$rr tEeh ,&+TFR \Q*h4[9D ]?uxﺙi^ T20 Dn(>c ='Nsl'N } dE?R35u4X[q9d, { ^w:uh`7ޗ yT]HVϏ 2,_p>>S(qB%FL\m[lU:юqInK6]bdQ=NX+ -: S%4CܰƊ*4Jˠd)m[w$*DzM^[\C:wr2#>u{ Hۣof/ .aՕgltxf\˿N,]!$6|KnH1 _xzfQ.<]&\ߌvŪtٶ`#iRi|YpA"7"Kd!1!鑩%cKEn sKxd!eC Y_j9[FqZ'~L@Po%dׄ8L u;+O .4fM PO.E߁,78)TwhMpe;wwc{2ݴy*A\*DQ`ڌr]l_aa$qX&-ڇ-hv*hZn"F@ kkdͩʝQ78h'Ab>Хfswv@ _\=FyF=CWkа-&nNy&Pgx:/ıBWV1S@Ǜ,%eVvo`qv4Q6qvp $\h+dX VqtnoRͻeBt6?~n¸ 4pѫ;.`?{mWCx&Zd{~ܡ䒮hy%?imy~A1⮪[ҷ^~6ot|d!^djyH *2/CP;m66 ȅ{@?Gp=2^-$3Dj\ fa%`lȆ!ܩ^D5ʅiPԔM{H,{hsv='Sf K]&lF,*$'`-5.\@s+ xŹd'57->X^svcHO5krK =-ĵ hfH-^"P6eb,N" '[Fzs*-?ڏQ-Li)'# Z^ mJX'|t?9mlۣ?k-l1UMI?/1o hо1MƎcBβ\8Z4 _sJP?K0uCYu#/JZUU-xsTeZGh[4d_>1ÞnBsgv({#2;=vyUc.V9ʊOq}R2u4~C"9tdc0.1*/m@!AD\axvsur"+[7 OmQQ@L'_yEQT>_%1uGܐMn"ʞ$,]Wn(XZ07 hᅚˎ(}qI8J+K0EI`3zq2I D'oBѽr0.wK{jIX1m69w d$(Q`d\;[,û$iCZF8p.;RDK;fFZGi*^m[iuZ)&%Aluy%d:Dn1)!(y[?Hݰ)tIXY H(ܨi*ecq4l5׉3f ǻH<iWK^tm`{m+}X`Qq(l=9 2S*|9edBHǽ՚Ԛ/x-Uj<#$"E̛U*4\&V pvO܆;ʄZ\])b6a*kӏ(}3Vr=Naz$@GaL<簑?+(AIh&*AQ%SkicfÏYWmͽ^.h]`\/HXቍ"J9b|0+7 MG&۱/st,o>xA3 懸\U:B\(&ϻsE!op߉Xi?$m']88R iܯrqi-rtRcqEήִ olOy*{Vg x׆'s!47LeN麡4̸7k4YBuayawc%@or׼6wS!HS>QmPy/{4D0H4aopNÅ 5 1Q+?$س b*f4'Y=aEO1w A!]hR^VGB0vEfE?yݷLucCwq5_Z-t 6f'*<*N|ĜLidHS'v7pgǎntPv{Cn)T+Ptz褻+_'[7?Lww%N[Лraj~_{5.@5 xMZ"ˎL zrtכpB6£M+@V泅^ JUSq PF?-L g) ~Fzyf+ۍE`xWns,)K bCͥք05Kp;U`Pzt.>ϼ<䥖n78*;גE1]0~d UAfYHi_6> ק .$dgoT<PΒj[< r Չ zK&wG]C2zKf1pm0kRȖ$R].E6z:)n*K:O[E`rE !vEZĬ쎟PV`BM+5G1r9jtܔ72^i~ (BS-)y:IH&1[e[" Ma-# ˓f`s1%L >lOU4SwoiY R ܑ>i|+@W)qF !u!$Qx%Dak$Y<:a"k(ݙ;T6(E/zBBXMLQ|0rn+cJejޮvcMiB'SRsvJpeilf f]F72fm}Cͅm@x4 a|N {?K׊%JzTۺp*C,=D>?5c?n"4ya#@Y)Av$E1k*\",0Qa]aЫ.hzP^ᜆ@}Jw}Ba( nXf<[$>s:R1)R(v3@;Չjs9Ҳz*e0}LY"@A4m??!l/?ӊVXJkroD\ܓ=PR)K @D3Oa@rY\G=/vJCeTG:x2J4&ՏmwÜK='Ԑ+īhiW_Qm|C[m1:=+إfc|0ugs? TE9Չ< 5ЀoK,Z-!b:Mmɨ%ޑbbVInp@>'$۬3yf-)M  MgI pmIфل;Ί[eY+oDikݝЯDZWwlZD YSͧV4W6-,ɞ-Y#)Q2;Bʄz4sul\qr!e1^N4D4pw^(& šWpCϳ ;ۨ~&g~G7٠$X&hj :o1O/$3?+2duhodq:ݔ_c%QӴ0;sSZ fҲ=P 8{;{CɉQ䧃jrSL,~]ۿ) @. 8b©е`Hi{Bձ^.a>ֽ}Q/ZQHTsE\J@lzX5%E(eDk3mRkujtj zQQ5;0A'o}&> -w-Ӻ_\!T{ ClA?%D=HvL_gm󏚡izOWU)xx8\U.:PxX[#:_#CT;,LXQ-$(m<)5>cU# 8 ]Qر*wUՔ; .YU,BkUdO9Y+ xHH<7n" AhZ4$WM?:+4qY#FD^y>}hO?iqnc{%!GJObӮ$ůG8ֽLeyG`xm8eqKt'C(>3M Di*$QSaҁuP  7R*<:#n^@"oI-qEr# "4Z+dtfj7Ȉld#D ԙj+'ĢBy(:.k6RzgдQX/ֶ݈Q[kYJn@dhϔaq*~a/aэfcܧeҰǶRYɐB BD*'YJ0%ٍrx]1 и4kܶu9(K/%=q:yb2<,7/M;unIkaTwMv{}Ky佁ˊ>5nGXP$q@Ztzov)£4z Ka8͙5JV$]zTm. 0i R R=P:'bo<8XT>EC=PtJGs ̗|._KbKguxN $|2ϴ绨֛.R#LbIo`F(5A6vf\IȦE+5IHӊ-S'0WRt%2CTDv_Cd B w 3%ʚ85qJK?=v&߮pRT%$TkS(F'.G#' oox-͏$Kzs5L>=(P}^=z0,r.Ƕ#Ţ.W7θE Y&- #Ɂ3V'(߭MB1UJVzqvN6E~DLJ/3);WBn^.V NA4K-{ai:RVm$E'ׁaqd$򏺠a>(Ņ38($bU&%&yCTU"*%(DpeW!ڡ"bo!4[}U;VzRǧ&C406擝[b4Ӎl*rOzဿ8Ȏ@i$*'7V7) X#PowCPFG9o@ [J=ّ\f?wYc[uJU!!G |{iBϋDs<q2|@,xSUo6 3@nڭx`j&n<8adyƾD ;ͼ$g{1Goъ(72}a6 =jl=PD.06" za ɇϷ$Ç=* Ӹc'o Y?  _@y]D.Oz;ע 4l;'^\bSj(`n.)@DG+]$s8.9,|T^zbNmoҦLv&J7'*h 83˒HNrWGf%*KOA_XHX 'P8 'yg6y' [yN]/xWLݳ6XsȻVI.ؠeOӗ}{LL<NkKX\Z徣wsƻ>Msjz,cI#G͎# =F,ghh12'e.z){(6i Y>M uo,R|1 SedI*\Jv}߾da.e+@REaK M5$j*8tP9 PdE͂O#O ;\9L1wS"hˆ#B35#3Ž aoqhrS#LWEz('2ۯn];ag$҅uDA!ȑQ۠81Ug@3".8K@+)˟tb?n8j'.!3x7-!pXd gOidon[w[ #gUxI0E iK{r~<]9^԰FG!4=f.cDTb& ͍e";T!dbowpӯYWYgp)N*ΰOft=w}WEIVb7zX[=pcwe"?cDӴ8NvQeˆf l-`4KBo+Q5"y]8*@ J?\'Kl8)? -qmEE c}'>ReɽM-ʡۿ YB$:d0[ E/q]#wX=g]~ jW1^{F%GT|9UAAURe=:uzT @zܗ8V4!Ol1f zSv ēX"ʍ͜"#wZ(g؂kMbb ;/>rVT̉ЧH.膊jfi1#Xhn|}#MZYj|d(=Xs΂9.7T¢CXnYc&NDDьR~pKppÇ49pΙHg/;bZ]=I%ʒ""_ZG߽XJ5YSHW/S/H{-c)pIvU{@.uҖ㉓ϬVf(:V]<뇴ջ;WnRa<4MIOw&m4{1PtTx݁yewyP,70K?I.i7wXWӈ'j݃e ֏ ~)X5R36Wd)# $PW'`mVQ-lvOq:1p>87OSf *Хc҂ڽBYDPbbȧ锁2jrpֹ_3!M"%̣mP;R/Ԩ9ei5bM)@gظx"o5y^ 7<ر/ZQӨ`ڦ$V Vۍ{lU|qa \2lla) ~Sɹ4OHk;xҊ$ƏGgو x]rYTu(@iU2 n8޽R@iAa:\IĪimp(vx^ [Qݑu@A(Jd$xxDD**$!= J$yH+1WF}g!?ݨ]ğb V9\;o(0VOkǢ|fL}Br2?lS\Dr%᠋i\N+6J4A\ס.%s Cc%~*CtMvB8yo. Sz,[EnEq(GNnK\@ԛ\ QcZ@aF>?sk.j$85b0| ʪ5v?is}S?9-!ߛkeVJ4 b1@ )0~ndHC&~K _&񷹤=6њVԑ_]&9Q1 u>:Sjj,gM6k>୽M[vPcԭH]X9$H>,Ѱ ,ɪx<5/)`SmIװ_;_gQ8u߱WcšagBKg2>RaH(Dys|eв?uՆGoN:'2({ţ0^J[6[hɌ’ھ{Oc-Xu\rPQ lm m5_.~gnsװqz6Ľ=xOAk>oK(J'hniɖ$u,B7߬3hO5Ip}@aQe'Xk3FP=>aj|]8J|H"4 G\Gŀp,9!ZTUF/c`)BKB}_ERQ>GlROEd; uR(2p5qW|5_Pѯ;SM*-ufsͨ֯+=yh,^%\h[YT\KyykFC(^P+d$S۷!q_u~d(b 5vlq. m]%f=E wto+ݑYT$1C]݀TuDYG`Ҝ:/SGOw͠o@콒sd{@K" u6m@boC?6մ=i.q6 (c 38v ,^oz:/8̺K<?&t~OO$PAp <ʁA>=杘b vFfݮ3q⊕C!J8/lg(p*P]}BRy5X eKyX68,DW[oQk2m_xsO,b+4Rv=SA`RuDP嫅 .pO!\wCDyϤB3SD-[[<*'fe< w"Hk/0Lqe\숷8~ iI4;Db%& B e6|+:095f^sByTQiԩ&)_ՊPm=m~4寿sm~h- bkg, O{,F/^=%(KZ:T98*LӲ& IDR?fӤ:?w1-\UkjL @|$e9%Aa)?u&Y۾T|Lȯ\jN-b*E>P}6p&>,T*Y˿ >3%Ю5AqA=%g<TU[^G!xҺGo/"wU G`|QBUG@m7"i3NjYG{*%]_$oqq '$W;llҖ)ńJP\Ĺp#y#CztH oC?XB=)ËMPPH#eE5zK~"2'wg`ʬry䊫\DZu]0).;ueH Wׅ1OFT|ZuE*S#fZНS^Ci«fԅ x~^g"~<< =IR+09Rxusb\Q˻^ ΧTѱ hC0s۽3w+{"['7 opP-s@ka|.AL yB+fq3,QRwi"YINFfN>S~ɣ(@{,?֝v}ܙKM ɛ} ݉#jLu*81MTܨN:j[!+4Xup޻6 YtN=(yTfj}^ݚ('^+}niQ:XAz8Csl(DZ$}lF!"H:Vk-q8,DDuҮ/ *S}rZ4Чɧ [K~xҵ#<Bqz,pfu FY(<%kF ]RlZgLr)GAgb$.*7߮CE;6uWG sc믢\2rW,H)ڋޫ}5fdO"ifog˥?Rr [m_`C%Jh^>+@d'*`&bx|{B,U]j9MfT(9 [Um4LwiW /T0kR4`2 3IzZ|4َs&)‌Eܠlüם>_e~Sv0Q'{PâPKh7%Z/\Gޜ +dAڭhSeJa6PND>ڄf8*\dގ//QF#zcL& ҜU'Yȸo* YS ^S#n6h`y÷RjeYAuqDvth,/l|:!"2,ݵM|K~d`*0i@i:nMī㓄t\4Aa.c0rŧdvRN@]@1H]͞b=BYY8Bp?JeZ%/Kj;"NĜXjd],TkTȆC„OWDҕ^[[ hzJc8׃yO;/٣!7VH)d  sZԔ"" 37͓SRÅK@ُٻP6! dRVJuPfwīr5AƜ~ʼn:\H 9Yc)E{۬b KDZ[ʱ S~t/wֳ Z=R;TIf]d!TKt@3} . Q*Iіlk G(v5R**>݋$ {` udw77q]ta4L<ٷNRuȖVh|\ޝu A-z񠑩uGIG4N= R1~6dL O"LIY=yЏJʃ8.Yn]>VWUᱥ2 жdI"<\%Sɇp8.;`GKQtNYH)$8mpM(9ϣgYWWy!@_ n6̦wj|XO=S4dl !gQ69؀!CFJ~C{3VR.eiwO;vci6(>j[s=)}uVN_QܔXܮi ͜9mYJӴ$ԫhT'.p#}OUNclWhl%c'$etVGU^F[h.~s"w]KAǐAh&BGٙai* Ø"p*yj/*z;8w p#e $Mg΍({eP5=ւԐq\y`7Qg1-uWuS)HfC|A h1[yU;b0W+y/jqќM0Gq yqGE(a:@xDJfͲ%DOZg4l2]Q=4L}`qD@gdU?5uC2` n37Bh[ź 7~H-Z7R|'o"}QB}c7Kq@2fvi~kd@5}(ӧag{#,IvFfȒCpYOECQl=$0X2c"!uv$wduYRzO_4]kaߌphV+L&=I7!D",ۤL$ȲHA쟦p- KZ&Z%HbzGC{LڝJ_urש<`wbdZ?hLX[ȵ!D;3fJ(0ȫX1'g79g0LUlΛlꥱ qNxFd _^l}ˇ4溜WXu&93upXg@W!tX Ցtj[G6I29uOQޮ+ʵ zti%Q4x];"(EV3tE*6Ğ\Gůl0w` m f)ۥDU{H2F;aX0;<̊EuwFv2M3qE:̄:8beYˌef);=\Ҫ.`|_q pc>c'-ghܗ:mOj C%Ѽ+^d헺: ]>jd?H>g`nME3>0Z".aSOB_g^-a@im2_M׿`̻Ѕ09ʬk ]Q]x˹=I N>xk1[oۘvѱLekfڪ;H8"&Sވ xظ$T9b$ 3QF-L2]BdʕRdLǫ'@.\S҉3Buƙ -}z_w­yDl j1p m58SmhJ ^vX0>7m/\P!(הd$"͉`Tbm|d~ fv8ñ'yz-(DEFXg}os? H|^# QUa9EH+z6]H)cTµ+Zi@w, p|0N.=gO(2:kG> Dd|^/Tsٖ}sVCxtXT=:=πsV7Fؙ.`( MSmk̳pLL)ڇ<ȕ%q7;x]F=!x4.Ž#fH=]E<#[Zr,Ģtܡ:e,Ff̃vSſeS~%@n>y|N1_݄€gO|/2# By朗8Y2XD0iDqI4m}^Ӵl'Կ'&1<ӰS3u@GdvZ/>NnեuHeٵYU,Qcl`e}wLɗ*D_AnND8pk߅=A^6&<Ms#`g x4㵝]]b-?1g*%9'}3 e'|}#sW\M_D )x)-F\j_*jAOa.g!%G.l4_O_fpo[j_5sz% >[e,2, )ZF'] LWq [?;6eе0F>F\o4(E<\hy _Y{as} 2 # =wX{s4D<=8N+ [Η@Qq/f^ m(̀NFE.:C o)z[~[fk3fjdUԗZzpv`} ;^?ȀqF]2;UubѽH/W)g1r`G6 uGBސ 5%Φ(Q$9}w3W}?T!7m;4z;q>n1G `^Ө4T,gxE;B*jRGKYsq⴮rwX ;>Oğ ݙ(;i<:rGTO)^}{5U9ʍqy!/Ah!JOGSM Q&7 ;C_ӈGj^W\78TEav 9rM3Hس$v" jziC]=ǚ$s ij \nyZ~N5eցHR>Kӷ<䘼) h]01*5|4 td4B&cD?ZbćšI*5#9I5rWœ+?|OZK8y5bZ+54!H0`bkBI@J2nQ3sTA9Tf&@+D1VJ< _őb/[pFʲ0YGk!瑣&p|=xOW bOOa( me_I][+^T6J̤[\A~`tbG곐3{frk2xgG}dGT`"}QV+oxMde\$w!-sUh9/g2{&>D2TH-Bg7gp6JjSEU]%)A]?|;w+9'π_{n}Rq930RݾO!e V),AE.ҧL2E4އl5^*ixPrvorvFގh &~6.;.0@HW S'>T"?*BTvd 0j.' +jg$S5H=L(0LzӁYzoZ5Nud(\.s#6Vr`$;=+1aV $YŃO6г*\h`Yoy%Wvk:mI D^vB,ZTZutJzBQՆdM$Tr 0@}^w}H(C,|wEoqۊehn![LhS\Ҏts#A7[׿i띧79ȊH;5@^"lnKC >z9`]Ia's̟*Y0 p:tMd -.<vo{hDnD֚ە񽭙>cF=;׏Hϫc֐D(y Tr,^@!mI1%;ݠ32s[7 'NWg,q eN>&v ?"V j6%?U9Wۻa<=GZr^=+d2=֟F1 Jȡ7{T fi)6]!"55e1eYKn;y{7Zw]\{w@ ' RK4kӮu͸3WZ' &=Z3>v&5(#Z66F%%T7+t0`Ht9wA>Rg -3~X;OБ:{ފ 7MU ٿdSilP>TcʬL4'n&\n_o:"As:L K-i|Ùfn,Kʝnn_ƺtLx_8 3̧n/o=`/ۚr,t^Axm/koN]~c$ExIebMF k9v"~T3^>ϋYI"\9|9*\ EIaK׉ fd;@dhvUuQ}n lYSyYsvu_W0_9g:r虎Ryooq̵-ߚސjpFNinZ|oM tT~g1P1yUaj̾[Fpt]H 7H"CV)ns3SGGv1k`/SE+3.<2EZ8/V^NLcXBqOiĊC1MvNp{tPHG49 o_U6/(9QVɲad+-jhwDY wsױYxbun/.6F>K%%}籾=PS'DfO{t_XN gݫaiw*B/kvTn|@-A#PHNH#)A-U ]0W);gl"R?Rå^Ւq _X{rOtl+ 7 J w$a3,ОũWɋ0Fc:9x8FYJ?Tϙ>/.׳T>V"J?~Z^)=r__JgUEK<MGovsa1Lt2qKlPTRoF@'S= mMuPF>qIsK0ʍ-i0 |s:1ZMU'L1.+kZx=.PCߟ ?ZaDC!]) Cs ;C؅.+^<|enȣtA[P1uZQJ@Z j£` I>CNd,fUKcl ͟ Cn?hbⳍ}m&,W!Hyi=^Gk[37HYy\ͅ&  oZע.9mZZSx0^,dTqθ~UGr:ޘ` sn l7x^  xCa{n)f<2^7/BPz3Ċ`=K=-C!p|h1 F/- nLWf~L̆+?As.r3~*Uxq;U^f"E$^h@^F>L/C+f^1fZ?n$_hTm㳻VP8Ң(rH뵴+~1:"~t=^$BOIXu_<fke&'^12"ynď"h_~dn5v)fd[阯l\ZĴH9m]&ky^@(emD#HR9xqfьa2燎  W+!Ti|L^TId.W=jq8ÍtPUP޳l\bK((-5+9O|]ٍ=$4V?Z7aڂ{>b ,+t#t@ Sn˳/'64J"M)g.lpN $ħVW~vh#'' F8M;yZ{b H`_Y-+Du1) w\pdpQ=6w%N%$֥ ZOŽq=mߏ}v95$zv6u/̎Suֶq_=pAM)bѬ;L<,H}t*aO(1z;cm=GIU' ,2X>z@\̝gS ԧS,Mxj!z&` %Z<˥Čך }NV|Hi$fp&jR%w%/+Ǎ SZR{bWT4]@,;Y3/<&.Ccwz6Y{ilBjӥjAC`>AK 47GMbd-.LmUUЖi>\q#7O獺­Pb|qnfDa)b+V'0Pn4xtk(J3wLҴJ^1/þPhL*ԡ-ʯU|p=IZм:g-0{V;hEN uXJ+A/Tڲ.]i/_3K,&Oe6qFԥvҒ'q:~ ^;/vsbXm^ˤ2:$?̅|/uNWmA9j?|'d2bceF^#m/u 'm]Ȧ 3ԯI/dhdE UJ=jE/uUv\Jn}׿dA&v}o3uD9/U_J-OK'K!n wƯoi^pM5f}0qH65(b9Swku[>OI"1oL^ ~ֆԱs,d ,/D6*GgU$`3젝h{3sIXF벦R]4aLP8Kl[/o7@UŇ_T|y{8{1(>(m.ձM ꘲nu=u<_?K3 >n<[: u_jP$|,((͔x~!j-| c|uI:=wLz!nߴ $հ ++ 6dkT̘дRm0q2܍Nj^>WhRZ` 5 럾"ڢT~u8"mYviXӔש굝 ch5oVVLaU# Uy֎I".S^lQ 1b aȫ\NY6 tݚ$]u_ΑmȎG?]܉LO\uq-VbHf=A KY[6vhU܇&koK'se1ʀ\9fQTp2Kc9'JDРp9'VfA[q6`פ^`<8Q/I>|13a]HUE,m?0fd`;dF(FflpWj'#)rHyc)>׽"8G TTWN1 U*'0" ,E>p>O?#_]Ŕ7.8ukXD3_*aܥ%[~}1O_V]†_CmDoɅzwDKܽ%pL PMJy!1 K@ o?c{|Q U"MhhǞ`mETg^EɿYoO! s ;J87W܆M/v8N>綣sL>6p4{sp6 4 ?ZJ?I)C/b&]NM~+t0!f N`osQr5IXNA.J*ЫuOX7*ZW2bq(M(&gDyv@wѶJ9k=!B-V?8lav3|<Rf8h jV\6 K!hyL!3LJ)pM9\:MjO] H8Sηjye(-Msm'ggWa/؈<]s@.VN1B@g:Z8Fpej<>c_18<1&Kz$]3$4WJ&uf#ĀnTrqڸXK5CMD*V% *+`[ n*$<- hDEpbtYnB{/j.P8a[7GS@NmW̧6ڬ PL ϝ+5"Hc;<%pK vt|`nnN/ Q5BHLg?M:-u l<,@QkE 0!hjuċ-g'˜zWN}ʂ@܋ݏmB;yžZI7MoyAO $C J]?+GԸ# ŦQs71kRK>/"O*mQ ua 3*"Λ{F~U egg\ #ЇGRCl-~.>I \Ɓ vIė Yf 0"_z-mBD~r$1ڜ 1 we 6COcMZ 3,5FJ>z5g'1 +q4{Q`id⽑x+8j$Wo.eϊG3I); Bخ\!) %HNBH/߫5lX믆w;9'AXj.!iVw'mG$rO&FHQ`-<! %gU}-[33]Y6 -U"u7 nT'{iwDc5UqM,C$j~Èsfi*S]ZUVaxlR:OI\Vn<.asofج\W=$"lu%&TH^deGO=ۿs,Œ$RhHn ^\eΤZ4(Q4q7DyY,d2y7fVC9pUQ™"7(D} b|Y1ډ.KLX8Nr/]lTx1̯F,,XCl]_,`CaSEifLZqmb/@y=o3hu UbKb+|lh*}/H3۶π:&U4ίM%a[JG*> ق@Tk,DV2uDIT{?³h}>?9Uڕh,YdUwM-ko@l$]ڣzNZc$e:B0̺ k32B}6?"[dGX;X0+Ax2Mx M5 T`yW]<ƍ+[m!z+H;8Y{-P3*i0DM /F[Ĩeؕ N{I9"QC5G}:]o@f>'o9~* >m:%Ї( KV`6sEG?\/"46zKFV#}T"<\H gZ28`P h-|"Yl)P;Z}E.t魮\lĘ!i4aڔNB/2(_ӢBLʳZy|6[tcN#8/HsDS`2#)ջ.RJXGEbXUa?ٱs.eAz۠'"\(v7 ѽuō.!Vꋂ!c,ˉR2q@S+Д~Af!%xa5Fq*Ne 5jnLhj%;A~H˪z_f+'LBV[cPOA7 A!a*5#,Ci@v;0GEK_*}Xן`w]v$\㿰/9$TBށᖎ`EKqd O1xp7#F! _Ǎ=ͪ^:0(BB? d/G~%2kG 1fi3U}0ÙSyw6Gf0*n~mL4Md@t@i΄|>aFuIx>JO֔#ՙ4@u$)kMuŲ\1:NÚ!;ʪ''䅔^rCC/ 1a, e}LK]0aNZ.NHU@ E53ɻCv飧zn* _m4 +ɶMRE r7d ek߉*Lpn\w=|݆K)?:('q1Yꇖ!Jx x=485C+<2g=/nki&c*m"2zJ&8q5C ^j1zDؐ []Y5FmVY/;ӯ%$vJRo,͂Hvf a$za\luIʖM@7P(SwKB-;Y8>f~Oo :*x6S+w5 ZPv4EE a< #oܦC4]gJ~T(~d&Yƒ6ʊt]}.wojUt֟@J;<3}1cF{-N]7|q1djfm'๞?XRЃ|&-E?CE 8¾F2\G3n%he#<<ѣuќ,[cGj2ONx[,uZ8++ufCZ2Gn ̮r$]풣ggN>3Z4F0$2 C/mp}HUDiXJ봑c4kׄһ}5/Df~agFJ ׅ)Q[=>}#Aoz1q>1Y5U`%y; @&Pl%$e!f.RԏSEke6>T/a~Ekws07KFΝequ`RT Y-6Ic9˽u>ӱ61=\[U2\d?Qz*Bd*dF7xFz~Smc.?gNQw|N~~3닏]Czf{W<뾀$ne,6L>?@ȱlv"s gi%Pܦ6͡ᣧNŌ.#b^J(BFoM% ? ҳl-Q3GD̽Ia9to+pO$+W%F9x*0i~PߪxD&ՌH:8l?=:~AOL9#IPuh8g#ڑGԞF]|@`F%IJsw2nI[mObB=z?vL 'hM&TT*U\<^naG@C+$4$iR)1KJDxnIK]`Ln"/(:\d(?yްn?]> naK<>ZJ ōWa,M2jugD&Hw{x0rY] t_J]5>qͥ>voٶt" h⍋C0mY!W# ys/)+B`<`:g-Ŝ1>˥pș)o_֓d@wo9yCwZ97bԊ_\ wm6u9>+P3PcܷɺiE|-AЏ-d %\{D%ZcTr&?&i2>Ӹ%#NvBbkG$tgw0'Ӌ?݈>Q#IsKa)N~)xşDdvC.E&-U 5Nn,0%z40.EbbH.e2NdCD&)MLcA 6H_0f#"F@HP ~d ƲyU+WRR1uE)qXXH1=-'im305 R_,]Qp~ pDFX m*?:L, $Wn~CY̬_@9i;RR2bFŏLƱxS{ƻU} Żȵ,Z+,ā7bCV\Uӗ#uiYW' >n3 [ l;D$QP̫z,~K~GqHU!e{"keG!q`6RUNhwOfhj|s5$?gY79"rW#f1*_vt0tzzԍq[$'DBϙ;(z9n22,7w^9L1: @W>;׮?,c g |Y֘[2$>FOMGb&50,ϊw-r+s?LӜˋ7ZDV؎']%+^|7ylCch5VmNߺ[&AR:Ѱ  !0W^X3? ]Lvr^=~ު ~L^yюC|oɂfNޟ#>*|bT+۶B* T_n9> BצQ.)5pͫٻ2l㋳)-idAsuq#Q?n}WiZ6>cθڷV'tq ۯ Q) Qu/!ʨr[)!3i#b) aT6?$SqrHK2l+0p]y'72+ 2͇ى8b~&T"_OOٹ[/5on4|wJ+Uzԏ//L U"ºS_gf3t34YXiA}ƃZb=='6(f03P^=<,6qL`W칍BJK #"g/Z]ARCVx!=(-Sgξq: `ze`5=GD@WjD;Աœ: C3jA<u6ڀȠ_JlZFRt;h)VꀗN-X^$5)QuRQu&:)z2)&9\jpAiSv`\,#olOdW8@ >[v7Яvx)g "9d*wַrol.A*]) ֫kTH( $ *^ q1W7fQctU:!˚+-w/˽6٫/6):E+F `Vn7hd nʰ|F;[I U]^ #{e\k/?n'rdsZċ Ǎw,?VĤuߴj~ϝ}!` Sc,KӦC ?a,zJ7g] *#}aA/AY?풻2K9׆y)2gHoم[ZژY$yqpf@yCdTqLiÏLH_ .CwoY<Z3m~%l%&UK$?MJ{,|%eM73$-%*@ՇڒQnoUAoEb9oo¼CUqiؗP Qh5ZӺ iûBIo"t!QF1Ռ)5e [6ɪfЯ-;Ki$u l#\6B8Ì1 E0*usɁ9{nbe8%?)u̓Zmа7Ѹ V{B@,N7|v$vJVEemc ´gx%.ar}bIx-nzyyc !g۞A}睦{9d׍8XY<I H,0%4-m j;r'A) QIi1/`]ᘷ>8!s;{rY%j)n")2D6+6j\JthTCD0 8k sNW&#Tr ZFSΉpggM`MuU8"%vAJ;^_G)rywsjơo2 6o7)37,8O_#@5oP򉦆f yZH u^8H^K62Cr}DcƷbR|Ci5bs(]&q3c*Z)I︈k\dA6A]Ew­҈Kn:nk<42Z"%K09>gFR'2^m?y B~[*L6'֮혊$r !Xș{uQ$ (=DrmCDޔeEaq/QBUD5r܁R'\.(vN {L)"l(Ez#ggtqv қb'VTj!B&; # ]Yh;9S[Db((=s1&K+jNF-ЬPc+?}ܔY{dLٹWa/NL g=:4Z]eK7-oQ`YNX5;G5/6qעCsXvKuR b-zM38tOd"&ۨ$/TNKt? cK L9"lAe3²yZgU::nULX?2u6Y~OgO xͨi)N3=nn@8 UoerV/e_Jyfx**_s"1ax5|{~),(\ Er˟d/F`\qе,UИ,t^4\RS*g#Um)DF~R} hl8m6& wΆkӪY@D >pH/MBTj诹h.=uP9foM+3Ce:boyge0X / Yي፾ ^@g5AM:s)0yI~Z~bݨ {JA߁$ ˸+j7T)N16]آtG)$Nf^߹'o. \8K?K9AuQʀ ?(!?eFXU Y I3ZT|,\Y/b ^7R|.3vX6EV0M>d8Bb$zc뭋C/EuU7CX{SɕAޖ؊I\J9_@p7=G8i?XLy|ٍ1y2tk;Pqm8ra5a\iHP%l"xQ/w#keXKCDB֪kb'LT\i0Z|@F nǾ~;ڞ-F"\k`9Pgr 4GU@&y-JgװaOfXLz2!wìXeE'a*m,~ʦ`c2p6x0@\>z)sІO3;ĉ9g=]*DxBnQy1n"&A!LhgNPIHfw 4ao {\=|.2d,' TPE>SV%Mߍވ»tnn53_zLZkO)\)JxÑL_bȴJ[\Um/g`cTlEqȞd3rI9B)57VjNXރ@Rni')H󩨀p׉˾FXmMg]0b8v {=恂z ݫ-Q§ ڮ ~pܬ W?A '}=m"r/@! zvT*v$62uя NDL/Y0Hz2)^1McWC{jf?GgLL:J* T үaQ h6wFAC8`+tdY?*&. 9>kT%|j7W {'duPj}QZ-$5?lЯ`#1AV,rU_&Ά#'vlG$uyEՀź0dttw*,E86 Np_v Zu<8XЅmɒM_Ql76<-+Ϣu#AL.˘tݹebgBV9G;jhtZ}T3^ !Qtס@C‡~²Nic7ׯ܎+=+oK +cz߭܎<&M^ƝYlB\/3+2Q_E2q@*5/BnfB:6:Big\~tiҍ4):"{/ wȗ># grCX?u:F+~adV6W|H5@ ԬL;WJ 0d;or ?*E?h4!z fX1Y~5հ5NIK\}YʐeNu5 7#Y2f^l a1ު?=r+1⨣"dpe!9.At`q_ "Ɠ  ; CWG`FcVme4]ݙ 1&@V)nb 4 E)P`DQ G#U!|۩HZK`V@9Ã" %tdiA*MjI.-7I2Bn6ߖk&#zgkn#Rʻ 0׌)O Zk(T(eE(Ⱥv;.(bym `@뫳}pJVIhB|FdJf-v2\0p.ZɇTRuu$A7sK k{0%2a.(1~\e"*b%HrYwTѯQ21K<$8%q^R\!u  c^? z}g$yJ6O3v(xK=8tuVANqs}mו]$ 0[|iL at͇R8p-Rkm>Lr馳H 8c<=~ ƾy7BOcts+za"@}Ǒk}fBK:)Wu#i/0s$O&<]]؆J4b0o(kd(NWJ=A@2.Yg1е 2'$p\VV8r>59ڡ X"Q_Mϭ@-ʃD)yDh ip>+Ӳs[dh%5lLJCʮ&#L&M~0{Ǿx=Q=ߤݱݔ|Sc.Y4-Iv wLl0bD5 gDXK?Wf-1X`#n*/juSuz]vL&1szakb)D'Ͽv:R2,?oDuZ~49IawS  { t>Iq(EͶQm=Ei*=u4lq4Un}m@ J:)mb~ Kn;yH  àB |pM$޳z̪ǻMv9ӄr<ޖ}DbV#~^ExE|јUP@ͦ&rnKi\I&٤WED)˰nY+EߋEUm\A(6aUPcWhoUnaȜ'9˛LL<m(>yҫ qaӷqaνEcDK.1q%wu [؃ŲQʷOW2 쮄V!mL)Ϳ(gcS v~՛O_I }:Vo{~ }u*Lz[1l‡ o3bfV<'| gӜ'=0~A7׉pa0;J 'N|jS?D 8^!V> ~-"-"RnǼp~ lcUk6$%A@&erܸ /|\D\dpeAz_jj aRh^4 ==|U⡈υCͽ:? g?Pȅ;qIzb"> |oߜw(TC ݔVD%q.k4)Mt u[e7N,Y+C1W<2-=m*5 Un4e` t&9eᠹKV,E)kp呺oloY8"S \^G{=*ɼ }hGXNV>f\[WFMՊQ <3+w*"4A Zօd$ĊФ_:O8?^jT GS"\[܍!,K czwG55y=]~/j/Eh }T hi/`#:J;`?|~X>ӚrZÓy}xXT.x46e5 {.AB:'_Ϩ_I7$Ȓ ޏ89(r/ܴ)VElpcґ'u?zx;c+.N b7t,2:e?/n^͋wO}`K. =FjOM)"r%F&X˿kR; Zr=l:k^}e_Ο}|/H؂ !ic GnShWurǎA8$zItGT4Նś%1іE{VPG2O:LF5pO&i5n&h+}|p|220Q3G6ơ9;[frCγW2S5/ZMD]H1 m*A/l$^`04J;d x֮)K6_>s^kӗGuiT>A6KG(<2Y?or÷eaޔlX1}>ݡ"}Vh6VAo1ΛZ#ه0) Ur˝?vs 9GIݷw<[>\X 0O>neQbeL_HA`hΟ5G6]4'PF " "NӬ Űz+f*IpC B[ &+;(!OΜպdJDo@sEfI*x?sjXD#,GrNoZyWY]ϧŘʶㆿ0 $5o#FdTiH\|#WՈWY$w-?Yo0ߩ+E؋] iCq$M:COv %J#Y ImC|["ZXUlf '͖X@"fy[.ZduTKb~Q)VXAJ9ATŧ^ˉ,A..̞`lć_4si``QZ0,.m_=/k5m,7O6f,˵y&X>'湦oC ^=ln[k,Z?=čs& c^@_M:Ω:ͼEʨkACI!qt<߂_MGAos_2K9 r#bkһ { ^,Cݘ桋OQ?ഥ.uTX/'q7eyplζ!uI0TKqz|~6s9ibZ eiFsFPeWN֞} opIU#Vh/Nfhгs BYnߵt\bU@;`OAW1PPrZ u(/ PeF#o";}u)v\Kj4`E|=16=PQA..6r7V^NF]ZS 7mlb6&t65@\?tM{O39ƻ*0@8N>dxBzՀX78g!=\=k!Z2{A;,)gGEbi~}6[˼y-wX-g$<5 dR0+] zxS+K5CG:(C ftCKQq/2Bf{@xo2'Fo֖SN:;%u޿Ua|"my98,Jh@l5p̫-u߸unrwJw%-BBXwV+u%c?fB^4!hDh4Ŭq -,$n1i[&u J8C47Q7d/NB;+B&u_]QW)ϩC+(V+g~Pe2io8TJ]UC`=RG3uzW^_ZqBv9rR9 5Vxy0Yݔ^*hW^1P#x}@rq` k迱;1VFO&[VTp(4NSd΂qz힇fK;sNIvwXqF#c}o<\PoͷbСܔzeDIߦ.jA_'4zAו94Ӌr<^ZI#حTFilӃ?fgnVm<# h #ڴQߺlj].).juΛX}f۔y,p VMVGC,-RYLa#$>)a c~zyHEoj0Pݡ u?2_8`Ǻ EHz{]gle^nMu?yq ,/#,eD]L>*|"34TXI@0k/6ž 78.6_ ~$RO:Kx8\.:OeMٶ[޻H KPY3TVd Zk/bӓxʖ:!KgSpפ*!a3rbj DqQnG"eF6pop`FcgmFҨc~W㹥rmd"L3rR7ç#\ٯcvʋĖˊѿY>\YKK{P^:wˆW\}' ~. ԑ8' 㵋nܴm4M{[U˄T>ZPXPObN,Z7[h9H7l C&fLMMxr)S'¼tYqLz^J/cOR=Y psem"] W6@hS ^>g+8r|`m"6"33#"EeqQ/FvN`+KwfXY'-;/ԣR}wBӸHF&Br-G\Pn-ͱ9W^ש=tI(I%RA87XqĖ>avJ8p ."'=pGa|tp$Ͻ`'SBD c? ee/dǞ# $~8Cs@Բ`([`^<~TLѲr-PH,c[i qU#j$ðy%˝'ՄagB]/:.ۻ6C;Qp>dQ)SopT a4,aֆ<0- q.T,WhH8׼:׏;K)iwo.ozAbs&s(Da'L56S_!;T ٴm{)5YZCVxrpsF=_oap ?u3 J=ߩuM3.9'_^?wSiRX]4aE1M}2\N;~)e|XK 6qeo}{!(p<̍C!I9|}4x,INUP^q2oɹgHUp팼+ x^ܲst>f/ T|,xOă#h"v]7z|IO ks)UPB>ڙ Ko7E`}AôG$YVa6sY"qَiBEJ9ۢ'+&t yn"Qm3l`*./l.fRtF5H1``KC% @&G/QJ'EAW Iۂ]Q:epH^2UD3tFѯ$Gfs.~57mMEnM4yަSd]zl6X&I'AP'k:wә7+yCYS{9Ƃ7uatf>19n]ܟpf3="9e63jͅv]$F qj}&6X n%\թ u6tЉp*-2ؽVyFEZiyh|jI$yr Dx͗eRhD@30UE S2LdE$Pho\:+y F%Prd0>.vQwa;6|dW`^0A\xpBX.L2?3쫏똂S5U1{M m^ V7 EA72WSj]k :/z*сi'L9\YF+RTϻ:<#Ö@`cd~F\SR;QSE"ex%;@}A!wى sOAR <7m$<-z`o}}b?G8j@If"=c17X,p [u% 'r7h4Y(h 5;qT7RIOW[=&JMH~{7|jwY8ߵ?M<<@i;[UmgO)8JޥŮ/VF,ů'BU'Ģ>95YӢ2CO;1[qlj [Zg cS%(MS>nrr`ŗ\-4P B[Tnz)+'CK6mM_bN@sJ ^Z{~4E)p֜ Z Nގo'7z ݤq\LCcNxyP+P#I S𢤍.]S%C2H smâjB}4MiIQ+v|1{[̸'_<97mao# HJȧOAdZOAe[,28SK>w{t{jJ6=p XzaB}d B@ЙDl%Bȫ^RHhVF~^G)`@fv0j(BB8N4^LJЇ1V~7öMmhCx5ږ[r dNDOw}DR>XQsm|a ^qF&׵ˣC i sk,Z>~#.mqf;;޾B{l~Po@dNW,?O^`)"w]^5.|<>VR0˸̃[;.ⱌ6nr&& )-u ߋK+X5(f{ڱ{%c)G*< \aݣ#$%oM;;we|; ]4^QCXA |tӎM'cSU>& PSV;=x>j^&J8`vb[sD_Gd^g'-QO),AWЏa#' + U``;_E`H5T^')WCC04z`99s`Ĝ1:)%>~2e| 9ٱ!"Ji{:KxY _Zۛ<"#0?Ą\Ffhwێ_LYJ=wؤ=V;5SLv(䳛 Ȗ0#Cr^3zڙ=e-2/1^vBb~2kƌ*iu~"ٟ¦M{ØcΞr%;`q*ŖXy_9UTSyN)V̞4\e!6 Qis=4#,E@1arE5T4-{bb1Y-vgj٦&;JtoSrxKo9 RpXWI ֈP/? =qa_$]V&-%$w.ǝt+ k}AHAZ\Due (V#X M<&/BkJ|ZMkqGλ$hRc ⫊d.}`-1aGF~Z8Ny{&pw|/SybJLg;h%pΩ6&7`NJ`Hfٜܳ`:YzƧn*voSG‚NzC|<ݰ+ۄ ܜ,#@@=nmeo7LPn@KU\!Cz;hfVwŶhF2Tɛj",G 5R _]Lk5wCSlgLp717@,siV<ұ?-\D p$j+ة#g2%iw7zT\8YԉK&]4$ޜI'xW/ޚxv} V6q XҒ, ax I>r`]<$Geu?_#QNSGNvRD.{+OC %qh:<0J85bN1.jx–h\˽!JvlF!u'a,vQ[ I-1u>ήChό ʅ@>N=uE3L-;~dlBĜ =w67dNiug/ݕ=Y<$鵟? .NCũ׆}yJxJ;{+ƶ0>@h6wU'. ^br뮟bÎ1#lA{,{$Ć2;|22 i)kV7b=qc3Mw(Ebic#F_JaG#1AZB^fmϠ˯. $XĿW ym7SΔ5ߨKj`Hn4rM+rqb)o-YL2f“]ϛkTHVWTc`PLp ׉ U NC+XwTdwuKX=k(Nk47wk# YP(u'p[<,~_.C9bG:鸩R M/-D%H SJLkcFoj$kք~ "pA5?|h}%ˉOUpJs[ 8 UQW} (ܿB5c /ω 91P PҹAm=wgM =b0A\ :A1өܰN=M-zXbktjPcnP=Ӈ ܾR\[ۣử2 $ՖWiBo0iF5C" fb{UfYva.^i@8j=^bvLwMWऻK>r;ocO-ATQOI5ݠE- s}QrzJ|.~AB?0ޘAj8FG5P8=@?٨SpBθ6 WḴaRFSpx 3\X,J=_o }{?t:_!cŋt?8 qY}hL4h(4;լ^D)L2, ͵܍G +'f\}@r'Uˏ4ca0"@Q@+ܲ] *:P#HokC{2(+h?`*,- k/%Ľ1L']1ۈ-8^10#xϒMenm$YDq[LXݪ|ogl82!;d[;w3ãڸ;F!W|Ol?ܙ7x B.'PB5Bk9&cz$\8@I'1z{<  #Y/S)9Fش9 [fkD-Y]כf)Pjmi,슡;z'Ϋ,Sv }Q6=T܅`* 2 OZuT9pǹv lT:-pVT|qsu>+70C@BE:Yax:e'ZdbpXT@|m|G EU`ajS2oLݫ6u!eCIYVB58El6<(Wڥ5fcfA?W¹&D?He*[yF9xThJa4^'(JbTA| 6}&XqSA j̈́[kWveTa@1--Y\ȻuWp WHE8!2"u$`P+nL1=/($Mt/I#"O=hĢ(v\o- Nӂ(AI9VqI}v{m\w1Pw0=MGz7E &~Z/2CF/ ;rfԖ=Y3em|bfr57̑jtLNy7 -w;zʹCh`JGMX,AEI#:ȸHa ҝq?Q<ɴx hnRjf$`OF`܏m: cU9bkй걹 [%u|~_QwGBbdu;;u6nr(L2=ig;R^dK\!:qPo=Ezx-b$=,EHQ6CI5廊/_4׍f_EؽWm9p˖WjO}XFlV0TZ1i!w-`1֧+}\)}x 5.N+.jSMgЭ-ͽ]LnN2mr9]w{u/h9!3F}xl併3骸uv$ҤNXm +pYO 4CZ6 C5̉M˶0X0h-{gG Џn䄒Z[:DW#ׅ `oJK?ҿqTҎuD6EjT{c~rp9҅ RGx*'e湮!YoH jY%`|Np.m+zcO&]l)mI Vfځ%F,=H'Du[ՠɳ1+LM}n޲{o AzfbސޑdV^$}Sm2dQpU>{`cvF-WInK}8ӵҷI!z \)?,f,2 8wA,]h2ΊSԊe)T Q J~7 5KDnҪ$IܒZBDFQc\J<OTg+}2dyc-ރ-ۥ>@Wu Z~)ְRֿ)eRҾ zec3/> ÂHBs=E#4us WM@Ӿ0, QM!'ě ߰ck[%-Na!4n}0n&K@t*3h%& 4&\s;ޛw@ThM$2w$,>]DTi F/lDZA~OCe ycAT1@$' {N9`V͊70sP-BH{%'۶'yPjWb?Z*

    盅Zr;Tv~YaL!7$L(GQz\it kʊpe Vai^-SD̠Go ^$e:؄] Pi>5JXjf^Ħf]IE$mh'S| T2N&JRҲ R2~O:p k><]7W,7{}ɱBݏ؆VpZrm,J/0{ΕA3<%k;ޛ’n)v%ޢ*{0TJ a;sPE(מÔ`.A!6x;[yA;>:>4qk\~Ta{aURm()U{5kjt Uq`Ly :1zׁavw@~8)Q9_[I;Xe7úg'zFf/ox9%JJ*p!b<#d.K;#z@6 5V8X>:]̩+'}M+d,{gfe,@݁`z*!gWԅ_D@zڭr:eQx %Kpa%a{MT@=X|̝ѬS=%?*㦥]Vzhtl,hc'qad$QK@:r%"<-S66dP'S has ] Kwu,!.أ•% .n X%Lm)-aSH 2v H0b1D':$V>s1>43u}M!ME4:Z1XVҲNgYjE02 %]ф:3 W4+ C]rHL. AP]GڳWb--k̉\d/mD;cY`6nA<: ZB/AW7V36ߍqW_v3@9[PxJd d+70-cx67 b9z' M *H0J. Dd$ΗitЩ趖 1AQ#wtc2}jV 훭,3[#e.E䂽gNo Y#e|Yh ?E0pF?"8+hsn3:e+}\ۿϭęd*- )'lRK1隋aL(ŷuZdlK.GNmo0k{b`'QvdJ@5'hK|It@++(5u#P0D]gnt<:EY"܁Q"!Byl9L &#ndB zUTJDR"Ve"h[wc0qo魲$ MtJtػ9 a&fsz98%C.eD (Gؤȏ7bC|ʏP_h&M)l֍G}vR jE.-/`D<鴈m?Fh}fONֽ⫁s+c/ (UѼ3k֚j]Bɽ"Aê&c?I h2oŰ=2㵋$|7I}}{"rag<M8^?ؐr #ˣ̈́ШȊD5dg-\= \vpߚe?ٯ5qҪ?8DLty4òHt86z wu%!!aY6%ǚ3ap5*iHz攂Of>C:oawƵ]#b8^aЀq J?n}O. I1V,\eX1:Œ#1w;YH:%z#JUuW%:i ^ ҹ"2qU:FC012 ?3qc'q"MPGm"N*8u\/I`Nռv9HZ=kx`(cRmkfd+da5ثFԇʱ=5?Kpvx)oh%󫵧WuѺQnQ7\PB"qz 9#}Q~wjU] ܗ -.*nkcH "?*5Augd>-?899 MRkCCB÷X]S'FJνa:N)4>QVmiah#3X {<x[.(AGa#̏A,PYgC#_*ƋSzz9򓡇)n6՛ưЈyhm"5S?B2pU{ߢn'B]du+߇U\B:[&Iz[uw#k?%UExKcm5]$T Un71al'P|V_1UW8ĨBbwT 򓣣H\#NgsQS-A1b R]a"ZEKT1@3x%~ qiadvxFc lyFkD\Xn^21^-v ʂhėm/\l#ڸ'Et_cLc78|)#EYp%ZNN%t =S!u"ANGnхɜM w^GV.?kC`i2`Ϳ['QwډЍ =k|Ԍ#UB-C ,n'q}tiYaGQM:ؽh{ll]Wbf=.ˣ^k4,5RurWK|b>Jw2dGokF_e4on+?^ +>L {Wm~u2m5>$Ue (RH/I&38lE}aQ/s )ڿk|[}uJ*,$VlU=l-&94VjȡF-Y7lPBb?uV`#!o?x۞f `Qљ ut bUNduY #46 [`DAVP}Q\Z0z*}~t],AIgj_&0WOJ/ϛX7܀`.DI; /Oए_]MqHЪ7[OcGzMo_%gkr> m _˒H=ަsڏRe-#>C$VFSe7 Dt< ۊ'7$To0ZпYI-7\[vt9}2c}^liRsx؝wiQ;QǧQmڍ%mdu͓]S-c/+pD8wN89,(Cv,&3na&DYX>LM[nk Jd&ǶevE4s:g ]׆:.A *qmmTP1+@p64 IcLĥ|/#1~Yu5<ޠGJUS %Q֙`XcHvtgD?fz\GrbDb-ZBGXaטci1 .]#]AavF3zuq75 +yY *u'&^L쌧D/D(& ;3aW ΣPG2|(k$ |k/;CO| be^Y\ *{P~}؁wZuZEܭv~EAT`wt<ڽ}2 B!; -u.E9МZR6GY:HUFFX5pek)PKSO#W|"L~rYTѺΑhמ/%ݲ= &5jN0}R( #*ࢵV /g*iT&3b]%ttٌr~A Ysb_'д4R/G58Q/(E<-C3CW.֋MT0UM(se2Q1kss,3z @N8 qCɉ¹SpZ4-2GnWUTeI`v>䊺^36A39\v}6ߧ~-6Dtl{J0\aFSv9}?> IY0>l]yR*>D:>OT=5s&PٺH<퀃Rѿ> S:bI rU`Jk`M^h*gzjQMgu|Z@F]y2xnDpҜU!tՅC%Mr*ky1)Jkv)AG\YG tBr>-]wko%~ N/>CCZUF8 Wgʞ o֜5W.Ro&Idda]EyFd`XۉdwE}U(MU}8CF`K72T&AŬ&@;1299ZVRh;^`E;_^_%oEP~#(/tJ6 Vަ( NFvq势5ɏt9 .p)u_45ҩr.cTny9αCe>ՖzHhjE9&)[5-ov#dMGJ`¥Y*, <భO `ԘB {EuC~׫۳&Iy$w$SHd~,@#0iE%gKc-}﹮T+Jmz@b9&#aGGu }rtr%Uz*ޡД+6eCX><~H9%3 [; axJ45O="FĐ">oM̝SɅi歎#Iisief.QȒI ~¶?뉂 ]uMH"֑38.{ЎB(#~g}(vƢ7ز Cg0.f /ұZ0(T CpR!Э4V8D) o8XjƏtS7'b Qih/"1A# m2R>=#%N5:9bςxΓpcz̬LS"v/ο{e1Ir[U(}gXHV!Brh?d$-)lBA-R׋z49a1%7g(ڝ+?ז6.- wK(ʐL"G! ?@&maŻF ^~DZtшY|b"EDPj\RT4:.1C/jR'I 3pm1ǴV& RT~kC(_^YF%$LK b47:+RN teGUF xxaqFKBr5v8~#/v|Dg5c3GGOe7EZ+tZ{̼SJC\tE;mdŨ[w2q&> L@ÅEL#aO}_׆^̈́K۔sYz35b$zK l٫+襩<ܠ7{s ZbۤsPaUx3oy܆ )"H,4V<[ z[lD+ƖL><Ƃ1ob6 G%o-7/Y}\$?O M/ՠ}^h<h7˂z6sѾvnxrpmqՂ:r["g>T(k%ڒ ӦkgH/g]ⵦϓVsƱb-HNħ&3eL#8944/ca= * ^]y8IAqݺPk-yv%7p U=qͳXhZQˆBn=.P!ݳXc/ Ck.k8؋Upp:7lLƕī`[ LF|Dw3wKIsswiRDwWHzj^1~@uH6Δ 2gg|,[]]OЅ&S3{/-ځS:#4!50,{(gt}1D|[L;_uetC*Wq!͔.jD$J&5w8%2D p"iHDWb=CtDOe4WgVx }U-.fqR׆?ƕe~Y9̒/#YѶzQ;󴼁Ө4:QN.Pk{ g( T <]g\]*Y!gD'y|h@P{W1_$'[K&Mq35S~|6X bg{/Ooq"<pC=d,%\OVLMFg}݌o;wWHGҾwBC eK-B鐝JygCQ {&y^g0)IJFՏދD*옼o|"VH+UV` mdFuqpxb5mMĄ_yx.hq1*uy-v-4럾k+P77y EWT8Vpr#uXZ_K㸁 Nl){B*F`gm=¾QV~م 2NZ<5PaÜX Mު?4T†2f:GTqAܗ/‚"z(@u9;SΞ 7[$%?=t:HS<;:1Pf]$/axĉ_FubeAϳVC_sSEn/!a+_ZBH2fTH TWk1B}'Tɱ^͸ʥ]۠0)0̔4j:#@1߹)hp7;5֕Pg_B1C6mWÏfUlQO=6c DlzqvWDw|F g;x0EMO'$:Y0D]jLXՓ-%WɬbphtLMd3XA !oWI;&jg!Tp'e p1Qױ]2&0U J5|Ώ[_'a;uÿ8w[ݠA]f_(Wy {u0Qai?)Ɲ8}_2/FKS$ zՄd ւK;8 XYʂĩ3}+k[MHKgA6ՐNR e=1xszI_- }"dI_*:uG.S:8r(dXVzR5ϞGJU76fyIHh;K~z8Db"ÓZ,t(5Q&A^X}Jr! \QS브f <\bœ)s3zډ*,J8*6=T"^ڧXjZY,|$ zfLCxc\L!7n(J#QHq '%L'Q;(\lߜD, "9_gO#rA^jhp}v(yK+/uR)[qz7])~K؀]kL&=C.Yskv9Z^FFѝ SHTVKghJxt%h `D66UլGW@xe mt%I~r4I6m ky> ߸ p>њ@zpְY+q[;H{rU; 'BJ|[Omr?[B&wR!K;Hqy+xw-6{`NMu6㆜\ɴ[!')#nl/;K,A@wRZ bhݲ*iP{'5G֪+]M|CL9y$0痑cUk˓Ī "/YUd'm`$aޒ#{~ж=3h@TpP7&TpGFaͤʠQ- WIw{W'[DfO*48x ,AԴsjeI3{@{kH@qy<-E󑵰Z!:MȋUP0WOa/%e $l4>=kF;+S },W[oAH.ΨTQHPS {Y<6R}8 wg%A$x/A4O1u\/;=MZK,=c4gV5K쏰O+ͱ9 bO  ^1|Ӊ+NػnyvvG('DEg^/Lf']+z5]OG FPJWpOjߡv ) 7PѨ3ys dؾ*zOsn:8|2W1MO& )=5!g73@!^_q~v>󚸭l Isޔi/dAL7v8`aU"߈/+oS2Gh:G%a VyǒvoXߧDYxRaJv֍:S{"ӳ_`@y>"YyF%lO.ElyW]z('g8ڒe& oc}JS荐ؒjnI u)DϊcsC2ϓ"L^#gc 4\0+cH7̯zw|\}^?ItF_&90QD㊘ X3Ѩ^(SkoX|{Q]ir7U|JR"`iS4\`eRqG)m3{j5wٚZ-",:1C:\"F-cPsŕHƱ)3.(G`acno+L80x ydZ/ .18N i׈!ӪM_-)x*H}σ#38?ԄA 6 zͧ0f+5OR"F8WijRTR\Lk.Wm2lqJʮΆNɥl E+%%-6NMipA&kC} zS QṶ̈̌@'g wGpC dlfuFE"&hd,D=tib/ 9 ]t5(ؕhIGjb>Y\U0 (/uex ?o-t)ťs^C- I&q_i-S|RD_*$9Qb1>z  , /mKTnu̇z&<wӶ =[Y=MbW7u#Dr?N@ٍlBxkX[:E_M>st%!'I|i,uab4.=gAE Y19}noRj]M{ǤW@ו!Ov9o3H}J?7/,.$-W3Cf{:?,'&ng*|(Mݕx(9NňHqFv?iJF^Ϣ]mpUՃ-MϤszzUg15րC}jNkC"e$/ܙ.JGyc} ,fi7kV0+}anh1[N>Pժ''șSj5깡d×P47sD ="o#UJ6p m=ZQ@6 "VmNndS"UQWY=oD$@i@zxJdzζ̂+C kot" Ԍ ͨLT'I ^6ra;FJvZ1K7*'S%-"[L%ڦLU-]{Llܫ *cUu2jhsQ)_zߠ՝PBBYL^F0y4Y>M<ѠzUXUf9\Z4I1%tm6= Ts8(c/kYn;!%X O1k ~x_vHMadf w,>Ho5 ]BM%5bzp,*@zu),'xw< j#c^'Di%*T}12 WZEӎƁTF1!kPӐ99r:do{ =.:/sUOpZ@)qmS ':hiclw 9&yOX!|z> I mo+gG]J\c`A ȝ LTwTb}ArJ?IjX*!?߂Qv]IV@r! oXιᅏUWk;ÂZm8 -=}?j 4 1!Fvf$9~}j@_W}BUu~xᅌOQO'A3-*8Ȋo~/rY4W}3c|aydwF/3E㔰RA{E~ŕH>5To;CUC)c񥜰#P)1(onw<@<=5? Q!DSO/">k]n-5{Cj_!1L|U2B~OOo $Xl :۵δ:q̎,gjBy( nOy/X^)zI9Kb̛8аm,j޸EGAe"WtۼSXzkN$g%6gwj ƖyW<\*UOʇQ谴h(,0! -A讚|܅,FKOaNã kL+Sv9GeSO0`/.zkn+Ho##?gacޡC! =d?5 ͲthQm}퉍34&{*HOe<6i y$4PcDҰQR1"`U2[أ8ș_X܃븝3"A 'sp%'aK[n {r8XW0K h(,#G#4ޗA|MTN:<mp> {_n> 2Y2EIV|=rM of+r[͝:97,]#-?!8g/l\@㘷$iN吙T;E%[$0zֿY*>?{!Q*1~w.WOS]2n\:' ~1H$<"xsL9R*޶ ҡ VٴGҝ5Mޮ'\S-{>&jLsQ NA"Ztō`dewmԛJwsnޠi;Y:ݔ />fq.9q%'J"͏V o$);oXY -;!oIL 4be6%ɢ.t Ƣۣ1|3oM 2'dXWy)ho5)t _-e` A"X-.ES1J) }Unߎ:- u~ Dg-_`mRZ5T|$3EHDzo0j'sX[(8kƉRXI hF厅=M}J =E*\.,2c5X^s!'>1 8=m|7ee֡긄 X lq<+ &@853yAMBDui/g#U6_DmzڄFc5yF8"g#vf[ o& l7,׷ 09"&F?퀴^9|Lo"N j&q4Ȣk8XssMfa^~qBPٝ@kWɋDnhIrқ>W8ctҹͭp%9k48Z nqɕ@2NX&F7.rlL+&c7D9lj 2؞1o)IeLwxopl$J2έ[Fs 9X 鳕"s^%I3\2>gڈDK̐ Ǚ_ޤTa,eu$csq{+m]F[%^)Β7<.eHn+Э#%k=-Gu^ )Oj3x"^vѕ Hh5,]5  oOu[MΖv9Zy02(_"Q\}"όMu jd5%ahՓP12՗=μPWqN:'xHRRA,s'7K)eIX7ih"cߠ3:]7yV, ^/ءXrɖw%wOיv-Yf=/him&?xL..Gi x3/ABHA7O v~:PWY&ɜ)v\ `7 WpGy$ʬ-LD'^4ð単JO!1j@|.3AWɥthV)315lhѥ+ f_.U$#&ž'(.&`1n_^Ԙ_֭Ic˛.v (ŬRo¶I 5ew{ɍvaqt0[Kzmrc©B}m]k<7qT75Lfg EGcT#Cld U v23clu>cN%̀ROϖM{A*pBt8Ofv='VC##^MV(gT9`ghK,L+$x S 2}!7_]d<sDhKU/wDMQLӆԠyϿcf Jz ʫѣ|}*<4WOD25 B5!u kU]f&X B?ö{Xȱ%H#@8'U޶?ձ_` ?(@]baX\ѱ`USh Of-NX A !;Y6TLtG>.(&8H„qj+&0H0SSFkLnV:_ Ocΐ鍤3D]ׂ>=ucPK&w9|{z}̙F7w3$:c_K c, U܃ė_ѷ%%Ø/s94S npܷ ˁ@(H3T#ƕ۵} >tsF D$Y#3+#&]q#h+9F2GR߰b-$T*ѿ[0N'1@2+];1|3}1恄C8Dڭ~Bu`/]Y Yn8 &.vϧd@1Q"׎!3ijSɦxDTIj:*6[av<~\i r/]g,y[J6c*Suq$5¾-S t4vcJ3GkyJyb=>v\ سdF)'8ۓ1,PAܑa4sx\}VJ0耏w_I%Dl˱ZIme u^娵x+Jnc6c7&ЯdD!ݗ50+91xT,iB.l }KgxCBL+SBcmnGJS)'J+rK̲ͭ;ٲƓԣH*>A Z8dLrZpA+"V97RwcƟW3đz&g%OLp*D".)CUK ;d'fc; ;I^_\$ɬ{̲n)pOAgf3$P+Кjo9H!wK7_;]]!9B8353nd&2:ɴbAIfOe!Rˈ3_W>ԶBzئVk AsR%q\Vv+ʓqfDZmcx3'z~ޡ:w/vfiAJ.$,C}0Nו0 DrR\WwJA0i_RO6l- MfRI4ݑ:EݍЮ"#{- Դ_j TC^]h̿ %!Dr۾]RlN_vdlkNpQer{!ta<)-vZ{zTe+LPQH.:L-q8 [$(mhpDjطCP#W:`Ľ*YaLو/ogk[{[ctcMIH*XC4PcPB'ӟ>bG#P=%:Irw}596fߐefXOi4o5H) p(iJ%Qc:f$.ɥҥ}vv۱2+=v18BM15=lXPzolE%52 x?!xcq dKh|ޱϓps gτ=GT cXP /o~pqrULIkQ ,ǜE h8E,=SI͋$M#J[7v{T m.Q "WXsU*>2?Veg7Td#,J49#sA(\Casa圁iLnd$E}I5|ѳ$6K]Fv/XNlaah?z/,{ƶ&RMBaxlaK]ㇶȊݬ| "/O'**7`:4#,[ιq#^O Ū:6~olg\ff Q=s£檼fh,,6Fn_ #r+^Q `PPR67ʇ]ׇ79;ǹ@jF]1p~E횡*_K.߻+:#fKr1w7gMN~pC_"nS)Y[1rf;]WOfv?,Hu=|D!mt?J:E 7Um"Οiv|os 1QTͽidOpjН4=.Q`XsI6ЮUb] .QuV0\/cİ@1UKפv&Y{EOV9x"qW0 -p&%IY<8kSm31ѹYR;^At6 ,y={ ; 77P؜,'[KG֐T+RJWI -=l)A'Y3oJj/qIq2xb{B@mulMhJ}lmULPNMU#|Ywn+'/w =+6tU"ρ + )fVtSu8ҦɖR ۣϨMblA0B;= O崒m,/ ]nE5. ơɬLU5:b_=|_iXxf8Hy#PQ;lo<DȂ\s]rhN6=Oj֏X i-c6b\)9̻r)`EU#cWmP k- ޘ7by=G%@3on#QY.'P6>e?KMy:٩S2UaؤEQ:GSH}( H"qǧ2uۯ }{֞&VE6]ǔVܮxQ1Uz`5jfWvZS|A|,,CA_j7_ypL ag4!MǻPz8c("j{L|lFAf;zWDUDL>YO )/Ttssbh hw>=n縞=mE#Jsx˫A^modG_b/_Ɍ<苆[ \UAHI[`@ٿG E-s^7ʗ٥iA&:dL#kAA/zGo{ zfZ D4WmlrH$kO딫"?JJxd 0&PR]W#ܙٞ!u#yBM|$};I`k! Jf {=yg:iD51G,e{T{JxÝ߅mѺ r[L1f"̶*ʤK##U$gIM-JoMI'\4 E$#eo[STw3'bMn*.no[a'TT.=Q&>yHsp8n. 2 Zdn찍sAD] 6P6tCÌ"EC19`e &m/)<c.^X${΍a*Ww=>[ ЮF Z{͹]0dwHih0M4dY gH S~NckknS>xevR%=" х6 ^d#ci6>eu(,KDv~z']b\F>ysgUyJݮdr[Z~AŞ&?y@DzJb9d=,fwcJN\lQ^n+p֣>)k_ v4BPEF MKqƳejr\B:zOem VGJ#~!|ƈ@i*2_X-I"S'S[Ǡ5 ],,^eD*s!V4 [`8 (n)}w_5aì$A0}=D ]T<^ՅΘ_kq4Kg2z ͎^Q7WBfNIJEF!y8 zlH o=&],Q*  'bZ! Azhyn;FĂ(3dK,`JЯo=Kj38+Ö6Wɭ x.G1 w(WpqiF: &r% Μ[gkTfCM\2Vuj~^/{{MaQ\F]ahT23h9M@$RVTwHDCw5䣝lFIsy{tO"+K۩ !3hlUs\c1{^P_d8GxN:l.._jF+^/BV\A>s4%#Աe(TOWOf~x+S}Wx7FZӶ' d0V̥Щ?701{ɭmu+݄Gr`-^77Vp`v-9۠o}84kMm(P'$ ,t :)CyY<XPM}cKkD*ջn5T0Clb)lJS^T`vD&EkMh_YHqs[ 3]\Su騽f[bY$J}ZHpbs'V,8C(x9N\4y!4 lZ )ȮAC];Ce. O]=%uM%@s퉄6~JL0V+pp$\j&!;CoV;?F_}ItBuSO dLfќ;/dˍ~|BWO WsSx9Ph$$i+L M7^iS0]hxFy]xR1F(o`Өro>?bt,o]Oa *{˒y523v}.F SrsJJfr(aV D k`Aus d=nݕnL{D:XQc$oe ]K\=꾢Ϧ zU-;Z-*UIl0Ib(crJ ķ%rtym y y{CRB #PZ&6ϿIzHz*>ka~wX2!ytiD?Pt1I_S2zvY5>D*g;_~#Qrl]v0C9u[鵅!WZ~{K{w'p2!`}FeGx]֣k;5asӬe3Y h1ކh>sً#צ?]uI$s1Y4otL#&l9,4ț)G2F(5 xYUڮU.(KGK۫*7gMj~uCM\zb'-!oic'NǧhO²gZlS.iley}qG|͂w~hp-Tߣ {r%>x,GҶld<)_i/K *W維dHI [bJ5$Dr: L)qBoAHL!5чnb[5~qSD+^RZF\LGgIrz[^X~}V[[%EgjgViWkjY.ڰvӸo⽶0bP- 7鸢\ D_9ݺTv!ذ'Y\Bp#(o%&9u躂9ᴄ7]"%>e޷ʆ;X.I/!YH;P30/Ha-Fɑ@DŽ2fLDU>jPNk!kdz_`8ƙ1(6@U.OPevu?{Y{B۸zT'¬4EH$\2U8`)Jmb_h XDcZHvIQzxA`R&uN]OAh@1M-?q6ݪ \fSqmo?T'5E4S`GiZw3̈́v!<9h8(@^-ܽ,`J$6SSf ]g?I@X\) mA+ +Yr9V,z ^1g/(7pj)f)/K-u|1,;IZx=P85'͂78~XG` ߽h^#a8Dۢ~2PdϊDXR`;o]FDWbSW|T?P&ivZ^RGgtZ[=e[v3h[{sfmM)P]-QjiL'rvxgi>@h9[ =;_(+Χ[&fy +7Uw>j1^ Vm)úy yV/8N)G"Ӕ-qĀ2)m@ <+"NW&z Q'4{~5  Ca|BX9fgժ-sBSfv.MHfi{ Iw R#ӕAU~'x] n}ũ}; imk0B{^mK3^?@_U x˃^om:g᲏a`Cqh|~Ryʽ*4D gMH32a\Hv!/-|WqHh(V[~R׳XlJBXk\5 W2;av5qlIA;]8Ѥ&P); A9d|kؐFwT7KnYOů;Ԭñ(=7xa.(㶵֢wيoŰ[A/"M3Z܉~$PE?RJd:|:?#L~ÊDCYA)P)$c yVL@m̖u$_Q_Hڬ|qc?tP%+!a#aV >t`ekj[3-= t\e>*t֭W(bi1&]{;J9vOWWPWek>[Gҙ/%ԝmRܸ/t!`ty{yU\Dl]W .)hRܕ(Iwa֥H?G9 ; yy Tb\vw϶6I`B1]}gPvՑ co\/x@VLgjOlgǠV8%k'KT65KWrRtLN CS[wnͳцIj崺<l1ӧm2?F<>:Y&cfݕ si]l)q@T Y+&V^ZE cIn¤Q_O,hM^35E`ԁ^d5".@!q@ѱY rzmdr@U di@1uI[0eo&ifiR{BLAA_B%~^?gSK60%l0 :79}f`\f0t^FW|ka7$au xI25]xjffN閰0X,ZEhJ7t=P6(udΩ+dIsc;82mS'"ρiߨZGYٖV!C0ý[bJ9nArt`d;J*QBp%LIH߱)F{.~91ZVJUKم5IR=^ \s *} Zd&7,ӸꄷX5CԴEМg|ǂ3Fy5b[^~x_l[­!g =Y-ǥ"Y%L)oPpw^HBVULnK=dDˠQ8|U'(9~%vxr9?۫L"&l%ؗAVo^L^nwSBct=ATԬԶak''fv >UdW-_|s51q5sڌ24:n( ⡲lO$ ,8d%9zO5\ ^ :l }F>j<~1le8j )-6ltC( TwU^rJu1T \Hh}f1qy)Bj@B0Hn^;q Knf/s({W 4«<f<#|#G>krT$m|*$+P, ,-' #~*`ClBD4ް>D9A,=f_]?=sJ1Rڄ"N ]aHjf8U41婑.9<RhFbg+y]fHcQ٣5 j!HQ^:r:H]`͘%IeDi c>6"LumyV*Qc]~IL B?2_$!UXu3K^$LX8Za7 mȝv3EJw tB=JHJ6`\2rj Wfx@j93( 1#`/N" cjXۑ0}4vf"3;OzfXcԘ?4sY\s %_|ڹnQޭ zZ%@R~4-(R8/(j^u7S|\h)]{0Mq^WuP yZo[!fh:U-ƫQA2n8bg{lϰ>(UԎD@KJ(1F׾B;!DZ}z"Egٷ/؁"baE38WA<7*ONh۸MPtxXu8!NevTsX4NG*")"5Ƅ1<@vҵS}o8@"8-oKvSc9ȯpMw2rc~E?("cOsa"ĤO^TbZV_q7C8|99 oC\E/*Y;^}$8i")c% W|9CqU}1]L}ihq# WTl]? TED3Xo2;En~R'4]oI8Q<@,y~䂠GAFc`Pb*XwǷ|yI7[" x?'WCWpF_ ,]XQPSbcABc^ˀ/[ /9|^Z[F%enfN"MUΰ?DrvYBZ)撉M5ڍ8oE AǙH[i,'V4(_Kn1'/!j [``yj255ћ$>É#jLMFI?E*E% kMg 0\8_1,]i`Oȱ*VAA)xqaD D1XxؼܾI5Gn qF%Kh!SW/'B>,l Vy!물R==!E#(s?O;83.--Jo֝ͫ72m{2ɥJdicdO˓  2@_ I8ߪ8W? Cy9N\zL :b 80g=3CX`]xhD?/zJژ9P4씦`*qكņ?7P)|-J`}խPxwѲbfhF{U_]>EQNfsV!rY<-M Tz`]pHf&hJyږ}OSn~497+bqJ&oֱNFU,:}%6m0'2Hz4o Ń;9_!ؤ2ܚlDz*rk%Oly}X~] ,MSwPmE42Ǥ=z) ˩e+6;C1B޹UW e|[kΦ.6m7ˣb?ٺ:QQCۧ{&QDe&|ٳ y)ZIBQAJ;): (L=JU/_QFKFocVW*F]6Q#mU'ɉُ{Qv.XBo3 CS.z Pljg}! o6WʆH4KOD7`8gn΢𵭝9 gtqQ گE6$oCHFMO泙B6Bs< Ke[묍}\$t[4epUnyB5E]cԫA L&fڲdgW/0 tr "\7;*SYvXdCchqOl>| `yM5tDpbsȶF&~Z-ҙGÈ=HB)@Zqxɒ{3nA=mwh" =m ;`" "#`Av^8Rjov}L?U 2+(MΌ]O{vYf ;bTCZGEy S)aY>Iҳ,ː7WC^4 14i$8i߇0'`lH @4)wOz9.žμɵ#W^X2,Э{>Η1vIgy BGp#F@hE Iqt]HfBlm.mǒ9q훤_uܛ㞋ŁɜG,;(]Ԣx/>t)pѭ{`(WVLP_VEcY |ɴ DOmJϨ mn?9M :K4}Kٽ_OUZhE z=5.H(`LpPcwoLzҖ4_ ")0zoPQSs@rf6C1I #8pz5BzTeӴrT4\iФ"^Ϙiml$7_ٳ `4.rJUHRP:tC+*4jE֎]>af$`.+3&:n HE |x|4nV7 Ѧ9Nu'&aZ?V5jyFUyNh x("@7q*xV Iu_uôv^U<Pn2,ʋ}pi#um w@j%:6BK-;U q{ WLߒfI/-5)T^`b_Jj&ࣽveTw[;H"D!t eOB5,t:OSfF8l3?;Cn% =8vd:7qRpwwo^y. 'D.#)>D[xw#EUI~!I@ G^"DR)A~4 Sb;V@c_Nz%7 MySch!KFyJq/'Pz@Mwwz x7\aM;h+J*s?I^t -ALVRX N |O).?e-|\%UxyYXqQ[VGɼ CM==p *Ç D5ejˇp?'=@ )P W} 5/e[\@;Gֹam+|)koשA}^4gRpG|=#үu)_VueEUc(YJmDnhςl +:l?}dU5Qe>rD㿟B2ܶM9>lNG(Da3ɫ*.OܢYu&CH+˹jl4\3Ϥe}>JLo=Z:b}!Y$4MVmPyjBYyC.5]S/->?h9 xΩyLub2Mve;N +8R Spn= Sw%]oARrGcq_DI[+G9pk?kLR+]}bG|ԇmmE٫ ,\5ch&kU>6x!ps)Ns%6 \T.v rܔu-d/% ku~D2t&OumPUGC(>DYRqhv%p0=[iռ%~w|Ӻa@072t$c=kPTsz$9γ9W V;zbIKFГ\ `nWc~@ϡv߉P2KӔ`RR8($2b\ {0>36Na3RoD //lM5%V/RE*ewlO9: TU 'u3[&?JM#y\ii5kjgC >V46/d[V `R bF5i8:pfH$dg3$R?@Ec˃4Oy CD"bɒMɖ?] -s:OIÃ/@jRJiZC`?,5teBZ .j-HjɄ٭Ɨ2i{ޗG IXJ7vKd(yun HA+uL3|C ,RҤON:J}LmSH^==N4e0APʒF<*bq?zӅL3+Pz:>}#O:1}dAACv@[>RVltLEYѼObZ8=$li y+ʪ&TLW;۫g親ncݞ M$%7)"]r3v+&3f  JmO >m0&8p "k2ׅSrTg|`;]hu#HC|d KȂVTe@iQG<\4!jҿ!ĴNhJ)y,fJ|ϡa |ZX2< jK kS үn+M8Mw%l~q\٣udE_o a!N]ϙEw"d( 3lbRg||]owFVz߯QTdLV'_8&ȝu)rg46"@ҹ/P$3TX@d7sq3c/IZ#MF_RO/WW}cOD@]G[։LJ8q {oZ9YwmP&CKtyH0HZʳ)[ Y $w t2[9uQ>" bk,X>Ԕa1Qa=׭gƽ*xf.lQP&{^ꮕ=4*fqUEl:emx&)Y_z@dKc<38-+ԃsaĆ> s@> 8q eWmLI T(EIO̷"|x+ SE,oF"şD <5`PVH"GHa 67}~Z@R1= ޯᑃ]hHw>6Px]k@S~ IN:= YHF򜗠&͔̐rw`LȪw]M}\ Jr;i͛EF:_Y˝B.ZVxhD rEmV lo-Es[Z9c%GG8GLx&7>PK[ eb򲲻N{f㲙eZhi6%>y[yJtw*v뎊 Ax0d[o\ɾcoYkatoes%:ukYa!k|0Kӝ+&n8@t P©N>395yZ!C%Ȕ'u/ ѧG4PV*4hR{6L|^z3]9]? rhe x9T&6~ԲĊ|n{97g޳4FKBRlL t=oA=*a"5._m}.*i^NP7w÷ 1/m /3;tK̚foS&H:ۂC]Eȣ#^T,P v9 ς>`"z-!_gn`ÇxhU2BJbA*R\ߑ&-EOWF ] 4.0%+J? 32^kp(^LjHo]9(^ӧ >V7YzW_-28?]C5ڄԸʲX cZL"}y=]"`|LBj gnW K,%c9=wRW41ry\ùH `ю6 `3Y[Yٝ(}#=?OFgZQ+ުNWڶNce[xr/,AM ?́fB0*(\ʼ$*GwuxjEAIV"@ߎ+zEuۋv.\yr T}- L\l DhJ*]J Tzբ)8$S1/\"ҁ&pٞrSԄhI$ۏd:m$a4<~PK8˄W9"U(37Gy/."]t0iΑÇ[M`sK;^' OV/J*cr>0! E=84}Cer'IRMa6@c Dm^N*:,dp}vi{W)xDѳW񖝎5 d)r!@ľᠷ+DU5YuKiWcI߯#ոvǿ(gF;M6C=8^1E 3)}INݽ\  Dw먚kANi w` Ta/ypԫ+f Ҫ]o?*AĬń{=N @矩8"&:Wu VM _ӴW5F{q;.>P\Af@"6+ы^3ݳ*9>T$‘EjuگQj} sOzY ӽo'N@QE] eܒ}ԗ켾EBq pčMz+bxqX'V%ʹ&E"O-iRłRnMZ7OGQTZHDзf}ƷIX%lތeNE+3]TMĦsXtF0gaJH?a1^Q@WVPC85HQћ\fq?9?PUMW5q&ՊwgxGq>)(w?6A(1D{EԐ(C}3PԾ`[!w0.3dwqr@݀zi]ːr_%"E`e))y Hc3*8@lM)ᛍJXGw@ =RYBMz,%!F,qkl<Ҋ8mw[l+j;2^ׯ J}}kоV7_ ߒsA QQ<^ɱ\Acۖ|X`FVSa;)񒙌lAT(j@B?=gr-(*"mƀwl=%yBg8&5DF }U&%(ea4 h){0$)ہn2H_XUO.W[Vrl q,z ;;#ha$V8YL m#ʆ{TKlt0?Y^x+kvGGsTDBLc5Xtf9p =FDQr˚oO[{ յg.,hxrـu^wzA>޸l~.$ˢ;3HN r>եpk_A$ 6Xxد)6Ƨ)@_4wH0`58Llq]*1Cu  cB!!4!YZZZp+%$@z]ɱENiyکbZNȜ 絕ǀ4SHzs9dS:.uKEˣpa{g92-fl@AmXя kH{ V ۋRpM@([ WS%SE e/3hif qS U~71[ ~\+gofLP쌼IϡHi$jlx- 3QJ}.$v=uY1UяDc&qQ/D]' wX' 8bt~(9§4ȨZW缇>3GV61Qu!oۍol ڴ I\)@ywZNb1%+۴*ė 'R%rRblٔ:A{x*Y(L+R DJZ*VYͬDF,@p Zw mNBc")y Q֟zDcLLƷ Fڌҭ; !wldYG/ 6ӆ J?[G X R6 sC4woh+?(3txIpUIErb8CUl9@lokV*(xaBG+5[Ⱦ7&YkM8 f=I\26rEsU~ P; Nb?ۮ#%Xy򨈔uAii(;ID >ɇ!,j%W2N=X)/ !!>N`gޜKš )`OyOZ/߀FNH.n6[*=g\7cAP.2Elح.#.Si _$ qͤ/Gl:' JHbt$޺N2^đύi~+(8Dߵmj./ wy_u^oJ0<Bdbɿ|1DY[p3r"%gӓfvsKɭwڱ ,G!i!N(U3`K!rԮU'w_Qur֤v(ɉ2Ao$ҝmPEC=+mF::U2_p©-C&瓴Pd fXnkI| k}@?)~L;pMFy;9k $9nDO Ϟ/_k!7RD| Gal@ $&G#jJ_nE/N ^1/[ia<;hNsZPk;hIL?vŃG6#Ms֫UXi/ǣY@2˄d9?{S4Ȯia2NVaUS94a5h͡?|0EbbJB݅Gt f5e4X(bT48g\v 6  'Y0afc \shץoB+}J&db[S[&w{*4渟*#tOWn0CA/q7 5K3>Ʒ*e~p/cye<k m̕s=H_DUOjc2u_O*̒*V Q׏{#G R?/"El5K@kwEbJ<=ئXY3ޞs01* ]zdgx jU'D^4#l%\=L}#ayw+J;ψ:>'Y}DIU;B__3"0Gip47bu?8JX~RTHuAnp~xMFqE.̈4s=6y0OGŪ%yf)ɐ0<~@.L4l"BN:HE NSISGg@r2Ie P[,jD׶7qwL˱ժZmPgeZ0^|K,<ҧF zA @`dAW>K"MUH?86=-jwJ=c-FO/4FW|z^2|>x۷ (CPs 1ԧ08^r:C6ă;;JbJLa Y<"|ӠF2]k G(jle|sZZN y;BxQֱ>E3 /XRJ綥̛8y)`g; ^B?>Ĝjm:!=W0:)4/S'3rArr-R^M}KJTඏtTl@[ȟp{Ԓ\f}˂*MU&QADn9.ug*Leչ4PUHiXa 6t!U'p1[>DE~P͍Tݙ!c]w;?{0ܺ |_̫"uFSLM]I/P5:?Č1}k]=\xHG|6vc5Ys{n&#i*@] | T)1"d֧S#ƻٙy[>CY&.֓A?Xfҷ[ԡ_j;2i]eu]^ 2'Rٱ!ِ{vXQsZT1z%֝bYgޠ_ @6 s*/DU[y)BK[؀в^E -Wj1ptJfk" sTn#wH"komuaj?ED@Np똬a$裱wd+ 8Q0v;p ﲙi3۰(Yfz]2yuϋ?Nad.EAШˉ±;ΟϔX j0PN\&63 } PscI,Dji<9Zse2=#_;Gj9딃uφlAorB}u'&7vL!,<M.ء6aq''zT^TOav h؛M)Ggيטf&p #С,:cW[6"/.~ rjm1ٳ8HJҭOw.x`U4]s3&\Mv@i#SE% DClҳYVh#W>@^{X4* 72sk |Y@jLĂrInGNb&; = eXz! ޅ^Y,ķ{ZABH=(ls۶c9G dWp]s/Ryx.[\u&x5fsPmXtCSx;g; >Խz!@׆˽Wor9o-/'lՑpwNբ&j[ɘ,'$B&f9{rO<^nc1ED:y}.@ΘHM4}^[7 UwB Fx$ tл ݐ5RJ>W~sd|"==쓉sN @@ʟo8qV@K(hEJ:U@PfY`Ei,c)"_TA OIB_Su-#95'ZrP>L 8ωf}n,ϭf:TMVuf+bw!J=-:;8t<댻$;~Z¡.DD $N nD]$XI '8l6$ '5BohȸjyPc䎵`qH/gL RB >C.?._ jCo;k~pbSzU;j]߻w#GaSC*?xxh4xvZ ou~?b'9B Fz9^J# z";YIr=̜Kps6f?Bʪ=!5)Q A׌z2s>LZXr@C\$Pvx;\C߅ZG- 1Qү=UNt) s}$>`'cnt&^P> @M4 :_7<=Wm-V)_uNog"P%LdQSt%zϚM fԯ|"¾= )N42hX$?J<@څ(eԌhyprPv$ ]*+?nyS8 32N=ֲ_,EDth0`2<p;#8NS !HiZeA#Gdo `9 z0 &hvUζ&l#\rD %Kn Q$cNX.sj?/G D^n 駖cŨs!*lEŃjr2.u@O+$`a L9%&Z.%񈏤`}pajVdj# Lbv MPJOy ڰoJR%jbN6Z"YAmzNu, 9qeB te?>DɪOZ_즤šjo !F\th3kQQz|^*E׶ eiw.'&OSS⥢CG@xdRY5T6 (Zo<۵[1ꦘr%=?Euɬ2 ֣L׺V:}]N#\ƽ"JpAW-Q_ "Zz qG66'~m1|Gy.ʃRT:gd,P{Iد3-dtk_h ?gʘrGSr U?+|C׽0Ւi;$NeaBVٸD3rsf_\!X>Xv]Ρ]mvW>X6=թTj~%a[T >hֽ mdE@~u, FgiiÙLF72,p ifվe,!8ߟf}zQ[q% 3 9Bw 4+;Gӝ9ϖ0~+vꌝ\m5 $.GslE?_seNѢ'ƌU?J'  j^kޝ!`'N#~ѮdCF (= jnmPo4c Ė>$}mu/@l6門't.s loE+$r(Juwuas+TT>n vIaT!=ctn:\D(7"X\F}`=WNގ4IJ d9.I'b9)BG+Wntbzޓ "oZ>˭n]FAe\!~o,3uG`Т:%B [zz aG {'|CfdP |%*g,~_4̄_vfDwgWPi9 i&qЩ,HP^J/䗸:Ipmf#x6טPkDn7 bVcLbT[=u|h N: PPݔTT 6汙ɏjVƏytن68BئȗȆioSԇn@T6{m,Y9Ij~=-*8I_!d:Y|ft 6ȜE^cbzaPgB)`0lA_HI"톑ʚ">O+q QHgb\Ry5nsNG;fV9nV#"uz{MJCYJ3d 7%GǕ]8V;YM7d]Nh 0֒e𯁍kߦi}KN`qYoj бf~6"TK-n6:Ùπ!.]1:`(b\Èi0̄ 7O5y7FOv'fsi?/z0CRh%|O .t|^l @*!CO0;^ *µ:-1H7 pk//Y+b >E]T9PdA\q`40<飩61Xg4Y1qn-䢓6j`.J60R9f=I{D,9IpB!a~aau!l9LW _H*=wnn1 {iNaKg\xg梙 G .2E7kuX6Qb|.~\.%vkuWG\94]w[}Gӝ?ĵD'm 7#yr>:A/UaLσJt 2WBRNBztk+)2M`-)P jYX`vֽOp.B*Yf*5'rl+@6z@9~ [4D MMZ%OLCղ0??r bD."PXKCJ>_|&SgNK_||iS:]T:ƅ)KBQ᧐ .P eM([i:?g#^T8j-a @/E(~^3P?GI{ & !B7pS$ooU'A(8bV;kUVvr*D vJV_`D9-J`Y`wsJMy0 OMBA]nx13G%F3L1#1!mwz.]8B$ r/HxI~M=AٵSA-K㣮#tg\\AdfeՏi3ٺ>V*J49Aӫd5"m!; Vg1 2:kⰑM~T}7TZ FX;-i2/mlz?1cUX>3yKO}AxXp~&hB8>Z Wz.R]dfoKءRkMzR!<`-iy6)o{L-zٌ]ϯYRJ+QLnW& ǁ1 z-Nv\'SޑW d1+=䡉EkߖX}2sl(#^KM?+T^;217c%\ќ`^O\fQJ3wg(du* J̃mj$yzU%p53 xʑ mQhR+pZfw)\C+Sd%1 *EAr{@Hy}҃`*J9ySX7yMoM)cT:c`5U2)kY>"'KнRRRְv;q^M!\5+~٬)ؐ"9ЏáGo, soF7=s5< o %pT#9Ah5eu_BE&]8}8f'Hua"qw$0OCiYyt˽ʫ>scŋD3w^zPNT1KqLw໢FP/;1wG{2 mX~lȵ9eaQLV%Ğ0OZVH~b_g5}tN2\ ϔ 9AG-Ti75R[۴Tʚ Uj$*K,?S+0JwJ]i!C![&g3k3Vjft,:: E3&\fC?Yj.+=[ɍÑ@IaZQE,3B"d@guHh[-BA3yɔN}5Xz],wij5<):!5&o~u %wME zڒ#JPqHzˎnBnAĵ񝴹.M8ټSy'}D5OZv''篧No +*+F,`6!Q=o*m$w=rn\FT|lT_DE_:@k-r4ĩYۢzÊgPсXE+"?4U4`8.`՚l@)XU0mi4Om0dPią֬3_.K8Y)}/ڝR_X&Y!`Gʏ@7RD.Yr[덗K`:Ay".Y2ۯ]y0;p)nz,WVUc\5N \4yU"+,}/uŜeuPbhXRCm`x݋ϱ<̈́U_5nSv4dFf0xRCiv'eXiC~eΤ`~ ik8[x[E)좙E>)+ Ԓ#ޯCmYC&B㡼E{-4`m4VnQH~/ı*d٤Ep2Dar^o&QXr)<]+qA?^hKhH} urkLƧz]~Svo3jq8X죠~qb4޼g_1Φr If1ŬLwhvPׁԴMB}h Hhzc ;Dif V7v܇ ׸.V"gU6.}KSdB⚼9vmt1s{힁QͤǏW[]7l)l:&̓)\#zē7ԓLKA9 {xl2eLށ gJqh Kp+Ҙ0/l9˱EUO7Ow;Zg#Π:nE&;*VĒ[?$gY02;{+.}Y~F'lށ<uE ߤcEDu@ QYcl$Cx47\ud72z<.a9q)0X H=qm{&}?hjYܙ5 ds w"KB m7RXS[ځMѾ־Qh!mzGtc6+N yYvGBBUVKU?g6XlTB^.t@ooۊ)|Eafj?[Vv&%(z Qᾗ §Ekdu)kAo$%BW%aN0׫&ǺIG) 7C~AB-wg$0!+4)Mr$z8.͵u]Q+-+5s ehNXI@^*~,Ep~q-ĸ?3R\s;3 1Mx|*ҋ!D|/2F.ʔUW%l.V$NI,tm"U 4޻cur0Oǝ(H2 h[*sYP zGմxAQW[6Z'aAgܟbz>})MTln 8R mekQ4!nJ* ,j7't3]LSE?T=֜**{[n7hG!9 ᆈnzx'G73b]b9%LJ=jb;t8PjUl2r4V!"S:~[cI̔ qVD݆4"#]QY.ݭ,*dybV;D-h>M2[0(.%lːYwfыIefmTI=5"<Rݰ&f!j3d9; כ6w5{@KkuWHz! ) sA~~ 'SWtƍ@Su}P!PO&I6.u[T{0K'͘0sQН g̐=>|h^P,%:ڭ#W'j8(TiP@J ՜MBۂme%~C̚g9Bk>P&*ozJKMkK,_q4)t3v !5矟BWNq4ɩ;E;w c":q?2C񃫽X/صe$.4җ޿p S/5RK\7"+|\0t h'MxaƘRlᄁ-?m}o{S!BM"ҍWB0KaÜ] +År؞dĽϩ];LDY2iwy ǝN̦ Ke'f4VN^x1ŹL@jH4#fښ;v{7 JZ6"r&4s+eεǵnذvG0sT;JL$k 3Czw\ ytЛt[BJPLYlّY:w(2C޻n~& 6ړ?M ৩GOE6K/ax=K`12)!\UBAhp3>7ۛi[',5K]ämf*浂 Qe=&A=5tnT4L]5Qf(T2YV:TgRji@~*a,ڹEݎőwzivNpg*!SV#a!EQ_\Tڤê%KAttL70V] fp|bK5 %r&w wΠ[!I"X9zf5M|s,MyIBˊ,QxA c2.+ IDf/:2dCe3@esE^M7F=ᰍJԅ^n6X0WPn{Wc 2URPlJַ j P3ABcz=.@c햰(!zZm(OZ BeQ%J\K^Y Z4&G MDsI;} ݢ\sPʗt?? _^&?oV>Ar@lXGhw"3azIڵzimOE(@$Ѧ Yvq>R6F x y=nI{(>Z5e-Hd<0:@$Q_/ -P_:0 p]f(P/Pt$JoYEM'vlj8C\3:X?Yuzi/@e |A`m _(H=$4-ǝ6YcZc CLpYeru0I$P#+=[EYz橿;Мo8 Xn;Lf x[L1gk*mBclFۀôNBB0"-l¸9K-i /`~RV ՏWy8c6&̀=T|ltsZ뗻@QEo)/6*+_;0Y?2ä: qh( bu*, ?;P\QPK'\YY"g YA+׃ؔ 3jDZh:oA[bS^yXDW?szJSU趧@ݐ`jrR,k `r˔)"RqL2@WgV*CMwC۫78ye}zp,Hch˄wJm0zН HٝWE,+I1`VBG/6/oL8$]x*"O7Bvyb͒%p"=M^bzk@ǬTDVŊa'1:HR/TU\#}o|M"+Ӆz?(2Ns0([c,Əu!kefS9! Zy,f++k J<>hQ ;n`acd?CvHrI+U¨<}ys@0Į ={#K0|c~rq7Fj4{38:sqP&ȏFm D)4aw%u##i@/ǤQ &W,4!,ëP gh}l''Rϒ0qu KW䄨e#Z&|kH]XXbW[zT"LYNT=i\ i މ;D`=`HǑ*]e[̈́X6n0gmXK\X~TGEnj/B:5w>6J LTk %# %!dSyV ʯ!N Q/XEc$n66d2߷F+ `(>ܻ;_*X%C<7{>|rYkAaQOI˪?]ow"'u-[SZ>=)M<W2Fۀ%1׊l&,%)Br+NQ>H+5{]BAԊh>HtY݊ PuYw9n(ߝ-Ŏ2O ng!5 -E2'!F+;1KQ[]+Ipģ`WgB'x/R[~P㨼IU\9z{~bUT/(2'>#Bٓ^gʀkI?[|]95<ǚ Z:F˗әCxFF<쨴VfhقNwU%?6JiELyY%TҊ8 ~X`7b/+F\!(D;gEezN>ËA2쓧VyK8ѱRٛ\՛T0l}Z1'ww\ܵ;A+il 2d NӄQ.]G \ܵfrύeꔇRZ2ϣ<uNWoC0XvX.d-1عG-HJ1 ,x:oeV>aB(U:7'V$>rS?y5>Zfov͒ ;Z s9B ; I{Nlgɱ #TD ωI.jOlZ4(O0P#{ Ϊ_`K |]+J;ShT#~adW` Mr/sR6k B)KF:ctF줘S>D7fPGSA5`|4㥢#qki5"O 9lSS\Z5$;PLRWo,wMJ/8Q㧩TQL/xҒ0y&} :BipF?0._{Hp;XTgl.R'&'J V+P2+,Y˯T0.=$ߤ!>dZwJm,x"FNysieGfhLRs0pk3 ZonJ'iXJX*$NS2_S>.@4|ݯ35qDBavg)&@-%CdlFk! Z242ls~h[—;AiEge`DpFX!U..핷"[{iM<2Nѽ~jK~4[_ 2ޝ@^ZLo# R+Moe-@wf߱p=\_I֙!aj&*E D=fE F7aȂ+EO y+ʯBBTtÒ94.@ࠎ;{= nة[;8kb%)J6ry.i0F}tjxpw6F?jngxopSDu? ?ʽst<=%N, Fmu "!fDhv|^abKۖ86+0%e tY>ǨgPfՔ!:"Ysw5_+ne!gl% %;U)upֆ%cμ9׼vݏr0\#c6LK*Ed3GjACɲ;@u&WiJku.:$z0V̂" yTy%veUNw]ḾJ?Kvț'|2XWq |yGN\ꀻ$tFemX(1IgXF+!#Yz\d j-גyרKFP+5$6(u0n^쫧5GJOB]2 i_gjAqi/#rK`k6'9Iu<^xJ:5rg+$T P5TYx8$Wo++| FɎM%>-(M; #ߩǔ~:K_ȱCyX;UVEuh'ay}F^U_&iO8؎R~_x襏ц;F2gCAk`UfDoCŀ"8*&8)m,DĩzbSmRJF HA[*֑(S=ۜQ~BV=kYC~w^>_zDi#[+Z\R6ɲ5=B;Mgš0ܪG@Jd b/3'U:f#:__XLkY43Ρ{,aC-(‚mE-8jphm+{>VuWd(¨Oղ i@6H#Iی 7OsZ:-j>ѣ7 tn+2kоc" דHa-C wg:T}dǢZI67#pBޱ43[zM/H"dh;n,bܞjE:*v˕{(5X- `h*KZ뢦}73لgw5z6KR ,#֬{!>2B:P9ġeQ) xe (Gh5߁ifIE:=_ ˻t/kg88`Qw h(ŬQ7ǑF9%z6$ф: %q qq>`6j `,sT FR㗫>GF*IS0ePOcNwq-!y{ zO*[5ݐ=v+H-\IJkD9$ױh:<~K嫂ݛUtۭ@ ڃٌ\zyIW^Ç}SV=Ǜ95MA -8n* :U(یHQGسB 0 I$t l'fRA&«;;~6,2'L$48"|PXT-AB|PuGC6X;CXG|؏], ;Zy(l Ӧ!8C ̲ٔdg'Jd^J?WSfs(_µ‚br<~s* U,1 ft;tk1M gZ bF0W}P53X٬\(17 :>mqPH[rV俩ηa/i9b?9HK[R5?7[#ƃ`!HuT1O_w:0}@NF ~Ҵg1-} oa58e#]F7Z Sc[drKV.(*{:7N~)c_41b~oLrϪ#6gq U zYrU"t-?B[Dk#uW|I:O/j bJ]*(U&S6I2[N5/ICE!{TPV8AFq4ո.*5ES.Lwd Ffu}f*|{:`xu->-S&9si`9i3x˖o>u%_ζJ! s]iz`Xz$ir?e?\Ce*\hiŀ0mŶ A"ewbn⦳9u)l i#=A vuaђLCY 3~6}0 x)Ɛ/}nj֢me+A0i}Ǡsc4T~dx]ZQ3a =`0!l1ꕏ]T5Yٺ(=Rvo*6eP~'Y&:M$O2K0a*JCZ!NQH^ݞ4K] 191ޱ&lNp v<Q'8:ڟRg]X٦TgGU vsT~bkw,e>Ox|YyO]9t.T_5`ˊ߄|LqCʹgxZ PE+:Q<_w/.O"#t>8!j}kZSQ~ "H^9sĄ>/ ᴛ.n:}6۹TUI an7Hd !U*[~am}^k\Rr%X%9.e/PFNE@>.7PbWeBZZ], c1nRXͽvm{iKIîZC[Pf&c<|0sx-tT~Z:fksns{X kEq];S٥* &^.> L]{pLKu QެEy@Ikٺ2ozbAsMDv.<vxh%ӑ+ߏ`@kT t%tsƷ1bc"7f@E|wž.;A[p$|B8fpbvc2/eKuaPtEjjB_c3+X z7"vY ̍ʛB]8AX oy~3fTGY$Bc6?.b1kz(~o 0eL$6 I_VrXDz1\)O3&G*آMt!ϑ#;{aQ;pLj&_Z|Y--AOvL;Sey3>T85 yw)s{mTU,t`l`DDM9Ȍu ` Pz_`wxlb#T3X+O ll]gt"y;i-#n%W#W&r,RyGůS53^ŀ赓\PMi3\<\څz)" 1cAh㕢!FkD( 2D¤492VFIڴi5x~?~֖j >ǧyFaIP}xο6ISW3|Z:. ݴ`|jS|O I=i5L3_7{SߴXex H:5p4ge#G>iwpNGQHˁvL me8 Y^{rFE5$ M)!\=o"ڶR%; P~ ^bOjy/8ޥCtݛ~1i/6~c7A @>*(Y O ϯ8;íqkeYBcݿ8&>nG{yco%wpx(+\=3ַK>ߟn$*/D,4bp–-ѿ ._';n+5v-nOmxX}Ny&XHb@ ؚfꅮ ݽge]mL*q@| LT T@y}ϋ.IL\H-`)}Ӫ*қ$"3(UuPp SD6CmD(rT/Luh#?:&@g7>gwmqe"jibKvz b}L=t !??B]|2ah{]Iy8VẄ́Ne\(-=.p *SGelsٯ=fN)2^BK]Խzn]q&Pbh]% 嘿.TY#{{zZz<lqw]neͰ^cF%D::"4-H|{(ܪO{O 2 ҇6@ Svg,YaPS%XD&Lx'8){Bj9={$֖_ȊLjǠx.Ӈm׸}}I70M_{Nf;RGeSU#uD&WBи*aG3t?bv6P )*mk򝘂AݢQU %_ l{TE~Ϝ*84ix8e,SS5ةE?Li6cb 80Uź;.@/8rV-!pq\,O5]jI@.isϼp bw13 vY|%-KZZo*ukfv&(ɤL- l監emjZteмPNb x 諐!CʳY]J޻x;榓?S6H'oMuq>q' Y$, 73i/` OZ/2dhz?o0h"T5eFC`V5° Oql)z JAsKCiy`8pVzNyUtyI 0{ l5.|aI!!)c/ӈxpՐQA ݕH+b+S&TG_-<^ʼn"e 'A*]6&{)R"t[o.n XAr ć6-*=1-$+<+,Qp5ʙiH&-N9 ۺďՂ1ޤԢq{ҳJ%a57HIoc% @ѓ7KO}husvZo8YMƊ)C-GxwtiQ>mjwMEyl4I$֘zW-J 5ZۖR zd\Rl vcd3~;i=Uª2^#eaYbN@f aj],؈T)RӁQf!@۴q ժf6[<7vS"kb(FyiMaZ2s@ VŃ*S>e0Q?e󍴻d48xSZjV/()mscB *!B~1i{MvK"4]YcsfRx@mffǍfSa |I [%J|so_73Pܙ'G_pqsCY.A T >]"Kt*Ezgt{\ C/s-zBkyBzD zoSs9*\|^pTD kxȪ܌Fûu?fDkdא"ЍB'X@?i2\/:kߤw!Y#ID:jy΃m[m{ӕ^lQ@4Щ_/>C?ƝQ 8 Z$COIk'/ EnT4D>~rs+PDty^ȣ`?T /@bFK8mEoAk,oHnCW$dia)*UD/cν,Pmkhٷ)8::=_ "}WNR(p&Lqrdt6?nI">w%kPe8~W MbViteqd}Jfnڟt*6 '@ 5=FP新XUH" .*N$ŏ6cƔRY"$S^PY#1|{9Tj$bkA#\`Xvz7VAOuZy f bP!~ȓ!L(GCi4BBpEEI&/r( d2ӓ1wQa  xKE|46Zuh)c1|{O2VAp2 }ֳjCSe CUoqW%r5 X` Y 8 )F{ՌDPq!z_,R4ϒR$")8%J97.6Mv-oq{G >sGO`2Ns_%r$l`n*C >K>RP- 5mj wj6 :mG|?ƭRGӟ-lCʡ:AJ=c}אq, ;[(p*䏗'> }ONwo/I'r--RP0CPыGt8+Uvq'0l$h4x\Q94>}aU& V LUy^f G{B(3TGxLcG?(.9Veg%/<\nީ*t]LB،<"'eaMߣ،÷_"JO|IZsR&E{搄x;Ȫ/X%l78 6QK\Utz܀0$?~D''w|«wOXV(vK-lWuI>9mVdW*ed@-8`[iPAЦn#)oE8{FM-X7~ΙM'NnY|]G->o;\NU5d#eFV@U uJv{/9j@8?r_XAu"~M-)fR4F`HFCv <^q7qI@=T2tfI;uA [jP:zYzZt@-gœs4805dYOl%9ņr>X)\ FVgR|/NV!H3*2_ɨq*F}J<?-K8ȨM&&%j =[ptJ I,"`0Xٙh4VZ, Q)&jp,0o" 2KPjEV j,N 8 Ӝ=2*|UsshQ.z ˦U,B*Ƒ"Q9~f1#gд}~nKk=8XlKA>=Lɠ3JA뿭WJ^ވϴ'O[xɏYJXۿf8'm/Yt*jwpzhGKy7(M|h R5zWnnĤB` A-pP஍֘˫ ǂF^T]P~;<]+PCT+򪨶268`l}GyV܁z^HԷdɨ2@ JLm$.y+,>w]R8TU"AjO-Vlt;,ʩP08ʏ_\)2Bz}cqX+_0L6CE6G4vdV3a_ A1wS6\כ3ZQ$4;!⛆ T:#koP[=?}#FWx&'AdA51ca`(M%6#D{#bki~HQ"Y.t16 Ҩ005!p/Q:(˦:{QbHog>L5.NVI v-7j?-*'ܤ0g}UF[>01 rCjI UvZLLCR;S _u[HA2[x)`د)|m3erz,f홄*UԛKc9_3+؊Mq hDysm?Ym65P9`Zύ3 ӴE}oVt 6ќ+HD"d\jX_!;7N{LOK H2Fe>z/9ej( w0#gBĝ5:>C) [?&E+"f JO1@RtPNlUVvx^+4B86EHp.Gt꾨zjFd?^f lD$QJ>X`4ԵTN#DEm[ajWn6nثzT-"rS|]x$k+it6=8B6Bi(/EPJ 0u7{>cLr=kDE 1 ]#DtQ%N-SWzyhSW"ǭPuRz A|؝*9Ħ,pg)w^&]'|zY~*`_iСe$;-{N/q |"zGqҧjN+J+f,6Bf- @~xq˪taJ&SΪBzz5 I_|(~ >(܉ni~|3*M[ތoH4U_zqd˱T/ N&i<@PZaML2]r%̥,Z5 y+NۄZjAd5Q wfmsj`VÛǍRtvCˡƼ/N/O`{a*;7~k=̵%IC xnKݏƆ@:gCA2;[&{Y4w8v@\.IZwa~\ ,|09I+aś ^f}ǍSDŽ҃7dvl N* n0aUؔ{ J 'tWNv@ua*z}9:@ npON cnU`?,*Œl pSKyyh9}hA*a@ԯZk̍7ڑ0ŋ WT~Z!2=,wsQ;b4rFKV8Hτ| ~102 m 㐹 r]X RIi& d&XJO Rch&d! k+)ֽԳ%}M%ZLamNalrlc<wk:=J'\aL|hGBJ/JTؓ/ccS7{"K9KȈGV5puL#Gӷ]|,V6 \ߥPЬߌ/}õTI;/Wfiy:LL¹#YgW/hcFtt-p5qi(B508@N-޹:RDm<r{:)|62 pp_$o Љ`Jy-|1٫mگ͸ڂgDZ}HFq^e(T;x:6iEPbFP4H9U[CpH)[e3,VUGKi8@`vqi `*t:E3ubO;-v2 VcB;J]F|L?QqDztHp;jIIaۅ{TUE 2}r+* Cavհ `T "͙Ծb8"MhiX %\oUdh>6ĚƱZc"E:ӿV ͈xW;Iz0Y@RJPQX[OZ7F>yC4QT %P..;w nsD=4b hOPOUΰ-@qeOזGo\I@ݯܢtx]V:`.($*@& 8+tR36EfJ hVH.Rز87K6?dkݷ'e1Pop|b>=YUފoP0C(ҙ_pEp#T3*yQ\B 1-)q 7"*кcm-S(7~3TTyVhIJ]_APε;T@1frTaw<6 F+ԬŒ`(T&<(>Viă $5"ӌہLSYE-0f:YYdSع 6 pz< kj >+U56B7?HekvY"[8܃p yHx;,jaS. &Iyz96ꀃ~MN! @10yy;Sjo<$ 6Ai8Pπy:J4#\վX]yKI FګfiNX]#?5[DA'aZ#+^Z fhYTI.Dt@9E1X瀷[E^!:ER-ip͂Gʳ7űgL:Ǫ6%jtC5\hhև{nO; }mrgs.*2zKdjD˵ `<<2X)4-'749a} bCKJXXT46R劕D ާքrП BŷXC9Jt+iInu}gL~E rBM/͋R X-jze_es|d UB8#Б$h"NE=20a>x]z ө#w/HUa^ jԬa~R dvR?A3׆ RXG(t㞪 z^#,}Kި]"AjTJߩ5`~>W.06#D8#"s}7hOǻYۖݶ" CEuxң<6NJlif%\r6BpzM!SƼ'SlmхZ9x^9Rr9dZ]M) m-X/̠s*-(:AECښtwΔ|)BzrO4c4vi_QvCL:}Jhv9 !6 8bX#@. jzA%=365< eC/߰x,m )LpY;/u9(Fɮw?3г×gKʟz*Xj [kboWs̬㞏>O2{%OoRGT Y"Pv9:`+ŽSB25! R<[1lT?It ;O'ab ЮKq!,LO7eVT0.a2+s_(x.K>\nwjRω]Ot̽*Z+|Laat! _ƟBgKnbmaU,|贎IKā<9@Ӣ RKqD9 y7GghX&iAb'yf:\FIf$paxvPeD 0\'fti>޵pJy^82eAΜÊՖshYncZ r~°A9Zdf ytU-su24C؆OBou,75n雾h@oy08m~A/ 49h0zVAQ=f`  *H(~F s"D.E*Xf_Ks4Jkn|3/x-9!M/0mE]q _XѺAN|5),azϑO'e0 ŐxO,\f-'aXf'Vz,W^ B綠b]~a/ѽ[fطr̊Bs(T3IDLevLkW z1G /Ϋtq4#F^mcļ%ۡ.@ÙWӛb?^w ',g%C%aS1VgAdu8%eCBW!Fe(ehW2hShC8"yb*D8I'_cOQ3eprPnF;/q&2O>^?p yD^{7)gO>{#:tkEh7}}'PeنPy\'^qjˡ ;IV]Cs5_ۥC6ds[» J(`_ualAMO:DÙ5 mݤؚeџInojgZA7v-7څܗy25_?p]&.QXoYXppոvvlA<֮6mInODgv|Q+d= G0oViArE_~T{F7娴^sRSoﴝ~|\궾9+ Rp4L Qj[-fM.sǧ W['Qp_h!SQLµp%Y3ԵhZAk&AkI31qƺ|]2mMtWֿNF%\=:o3FPKk?*;c]s O|Ęީh ? ?M}֣#ታ91Mo]9KuMMK4kMlQ1aMĩ>g h" o%g$}xOg4nfa_e2Y =;woOȼi8 Тo-8ʿCC#@jXn77[c*) טAV&qQYe9o.i%NWIdetBZvI"fչjHz*\2-A^br`M]3+rbpמ%} r:d;PΩ{y}vdxbnv ϧkW7m t g_ΠdJ9x{Xyļ Xs\׬#{UkA J7Cww%u?-bml᧊vZlnv7_3 V;bFqe|1/0V,=|ܱ>zJy^.SjS/sHm[.j\@^\)E<먝22W=&{Ɂ[د^T9ѵOIaw䡔Xd~?jFz÷iK/`7Ku{0nWS G``(Tm9[Ǧ00Y)=&hS20lֈ 4e$+ oEYB-af>%UW{1*}Dy/%0}lw 懆 RsG7ϓ26ÊB^N8(޶W(}},n:JoOeqBJwګ(k8'M kk}-覨 j4Q9hօi7blp4 raE`q7 ߚ ^ ( Nu7gQҵ-etp#1 7!7Tsa/g"P 3=-UnH=~ߒIP65Z=oΡ T|'&onN>kp qRd8zh#wF=/=mJ ǿBlqw1Fcu&gw YfCP(AiBQqI0ydmOZV||r'DB%|Bl<F\Qݺo֋rkĩt% n&1o͘<$<,ZtB ;,̶|(R!F~=>B+5n, (y\:%^X u qLӡ)x}isOcǩZ#[h%R.yHZ3t.֕qƨӺ͆ps4擩a3҇K a|<)L(EkiHUX(yj\$; 4MXP;8~t%(1ᏉkkFCW$}w;U3jxAKTED#O!ßCτ*FWi-k%eb(ӹŲGF 7yv KMe%nIls:Ќ}Ay>Nt6L_@@D c'l|4\g!N辱 pwKAh\Hc:qG{앢P װKQ)qOLMf$:PM_= 5fPE K;8 ut1Uڛڗ6'D̳ ʄn7ƃ'MG:f08kzt=>tONi% TJ[{zoZL40 l#/fzyyNio61E&}eʪ$Bq7o&3jHeRCz~}F=NX Mi%򸁀#;ܫL4bcbǃF}NYaQ[MScLBMyaHhϠz 6؄fF%"?5'Q@c]V,,$SWu|{&*s^v:PP0Eڠ,{|/ qԝB_ ~ǧ xEzse[:7:>_~x[X ^^+CҕKuw/&jbj2 &ѯUD"Ƈf5yz/^u{QZPPލQLP+N+boﴯ֋gfYnOc95*t(Yޘ\x_Lo.ή9@ y/zŐWC}.Eχ_:;Z7{:ቦ{xAH'%L?O*5c&@hp4) _0Bq6a?G}"M]IKz咢mhEx*X=h )_eRoMŬD.<3_A|4W"S:uO+6^gmZu3GyT~Wj&4#P߸mpdp#ͯ|ޔ cڲuSCߞ3Tm˞Sx#}?'y۰; iĜ!vLZ/Gb3%$Z!7k} Zmi3bc2jj=T`X7E'1tA_GgzmNe+2\9jeV[Hk9&P-zoD 9?Uxc]:PT| 8`5W8s@aԎG|k Lva>Xc7Yr"!,X2ܠgV_`@ [fq"Í~>rM .sNOeh5f |_XzV3i9&U16%a@w\2)=.{a骃4jJbme+v'>Sc.0q1=`-e;ci.:jU- ](CnEe))DW~\ \b3\D!j>ܭ¸ ]'^zO^duR3ΏI7VV؂b^ckf+*]w(ގgR1U A_f57}6pArMiUoe8$5-(1'PKsJd4#<7A4ͳ?F_|D~7設z7.P E4w䓡ZhhU)?VN dVe@H!-HF{$foM Z]h+ |9zHYne{]qέ7M{m.)Ѣތ&dhzJ+¿i=Fp3Nv&YtYHTQx.>5n >ϭP By ics`݅RZ$k'e?Æg's3Nm{gE)TfuUЙ̬ 霷鐵k1fG`&ȼ\|ت#MtU5?u~]Q;y5-v78e fTԡo{vr>{1 gklɤMvQ#l ? ,)[ʭ/s|*j_'7z6sK\KmgK h{^mPpf|s5j uJ~(dX9f /0$p=ex`@rb`Sܺ{&a<#Y[j%\hMR.˺*؞<hQKNV#̷ o>AYKvT@X J\g>gvLDC( _? ޫp\ufkRNt!`8Ѿk9O]u:,'H/Ϥ>/\řD$nk/IP ]\ٽO]PPHZ.e3{pP\dPbjG$M$!3M)*j @` ӑl8*HB"u)P# mnAU|7 B6d?sMh58C(NőpT+ZY:LVŤ/dtR" t-E0ɥw99QnN*z[w6΃']jvFv({I,Fi-{>1 s-dNf(ǚ~ie&*7|ܵ8pqyQ9K 2~L^xN`b~ALeϩ-T)cÀ`$Dɔ^ 4K_mDu .>8ChU璴[q) (N+Xd$Tp@B63tY:k8~홬' N#+.% Rr_h^i&TNV}RrW]$Sh.EqXR#@ ve1 xNill[Gsap‘6` fܸNx㝆}md8gHSK4Z+tZ"]$H2ń])h}+ƶ 6z]E女:9Zwg+ IvNeViyYen\*lF$mQx=¯c-' I[hF%\*==C8xSRt,1b@n gQ f/Mpwt]NeI!^Y%h/o3>;7$EvW.ܛ,07gp&#i?f[ճXlV$'Mr?JG ߸OpV zh>{\Z%[>gVi&WCKc0Zv3? |2f+ȧom[[ּji"B&^Vk['\BBEZBSZ M)> imҮ>FSJ}+,1QgrX3QE̻E1hhE;E~/E5Q$_TOki~aW.柇-H |fvdT I+fa*WlL͝.m]Q56m!OGq4d[3S<̴#"9HJXR/|* \@g>HJJv~e%'=ŭ??<>E?$85,+,?S2"9/@!ФȖХ(;-e$QU@FNW;w8wh}ʸs4}&GV I+N?4b2'o?0 2FA\)@UOw }Pb=]Lcѯ[ g V0 s\wҲuE2*{{iإ}pԚB]#DbPcف:\SYa3~@ksK oMGW",0L7UƄP9{KRx~ƚB\طIaKL5`tEI؃dܼ׍e:qcM -)i`3+tFP2l OMr*V;ZˆOi^5/.Μ3C?pԉ g[b /59VθjS_v$`;pՖ} s,1y 4EQ.{u:ٍ*Bfn'Yt0kثv n<ۇw3QxXm-NdCS eZȬY봰O/8}N kh,`0 mM}BSMbHR/=yR/@OdQ>J?eIޏU|7cl?J1J h(3@[I -|u=G5ޜ .i3qL6l $ǔEĎ^XILjZ* X G E,|1z՗)D4'/Z.<(6ٺ,7{NJY8SFVbMOWHUTsK坺ϳ—]ۖ52x5 t+ * 1}oH$fW]I6)@-ЙO֗|l\#xIų?zO-Y⫀$VPx? r=e\7Le'*er-Kw|gI@{L C :~8 I&+:QDˋ9݃M/~6fO%|=TsT,;͚Fշ׾q85wZpHৢ:&]ܔ{PQLF>Kϻ5)J'3=N0sL6 @6/?hQ2P@W.n +yeEكwL 9%9#̜ =T[PBǂuEX13Q"zS6u7fz03aO;!YrS?֔~K^;.؞Ѽ hB.vHB0HjB'Njou;xQbjN1,=.UvYm[i } 5z]5ƎDcIL"$-j;9jٮ/m1Yj3{bϰ6t2cz r5jrЂb'Ț}V?j_̰7yLX$OQe ;n!M['?|󻽶&@<=nʹzƻ&h{ץRrW/d_:҆k ljTP&zIrjEյڤɌDbѠ'J`{~9sl}?ѽsbNCxNȦt๭@i\!JK7h=gһ4  ͊c`me6J_\&~V{cеE{DPZyI BIWϱpWVӶQ|Hz'T(|Ǿcy~bom`K< $R4vL=P[$q5B-vp\ !\[ji': &  :vCyZ`_}օiBbDܤθehRBexp40iuLIlXJO7g,>LRP×Op 7EtnTKmgyRS:`4~>$|ڊgq{iю=L 2QX')w cI5&t$Pv(&_c" RFY֖ğ ٭}T ^Wy:#MlCЉܥSUKWre*t77}7mgNfY}-O)^9J<Yd<˻4|Ð Oilu(^kZU,E A)NcM@(Bmx"2?ض1]X5#(*ͽe%u,fERba ^/, ƂC#Y= 5=.;Oͭk(T6 K7Lk}R q7yBj&A#:GY)+2vECe |^.ĉg]S1{_ٵNJ?! ;xI4A"qPO_$eY`k"8 e2d_p׳$AqQB0yId 0$8gHJ>gI=irE7|JR'j3vbu|L `nYI? YċMvu3?YL]%,bD:g9åBL' SlKDn"!Rb.'ݚqKkl5f\͔e{`Q  6 K06 uw$b$9{郬yEB'=vY:#I$Zy>t'U11 JMbov!9 + %SUd!P90V>N%EUɄ{Yܚ \ێOCG\&'8ZJ_dF؉7v/ >*(©_1j/w!Wv(Z xgmVdCqNxNwV1IC.ݭ _,\Jv捝|^D55>hm֭1>6Fp*2A"~-Sk0@cY!EWRE8v܀dI5zIB 9Rzqz9mxWM`ϹYwDM(iJgG;~-120G4i'7_q̰rBs\bQ ΁tkh%2&Vq:s;WH @Za_1ϰ2Ɏlr]AUMǒ*`liN=X ϻTe>p@C"^gpFou(:#6uT.~ډMrs9j]z+{ .YxVؿF2.I0OقR,QeObaDnڥsnD"VJ0Gk69A(śM%3sm^J2]0p"u-xq{_81KV&qMV# ;-/Ҭ_U\w̒ ^ j 歑HG!+)ɼ+=Y`5B0er J 'L6smcޘ%8 ~n`}Si:/`aQV{CDWYe`RZwJz<3H*ˡ}|ƚ= ڽR:3b¤5a0!xƛr(rQ$UM/J!JkXn0or! "/K=(zn?iU( dn6bs!BeZl*+d"XcQ[Jf1<ux- c D C7c i}fcJx0T!'`HOa-s|^VP]y)'ǸJ,G|dр(i|t"1 A PVĄcV\x_1r3TN[3pF}дaY89 *y<1f|<[&N,& [?bQo).J!V5<gˠniRGT냩^/˶^]gD3@csn̞XuA㷥QJ +WK4["乘[.!+Ay dUdw!0TBM Xɝ9kŶvf%Hs$tH[K49Pn-^!Ixt_xCȴ_^!%^VkIxWW숝^| I/ktj )f$ԌnX*Nlaf;m?k.v$<<5k<#C'nֲcbU-n:奏~^=ò2^O_ū?+ܼ_B ,<¬ %n{ Q[: !h\@T(.ؙE<kX[؂ 6 6ߺB0|_y @ADI3|b۩%j)w}x󴧐Ӹ@VʥDK2x [;; RG4աSә(Y%&?<D}_]qJgpE gl,OUc YJ!3pw;X@E. 2Fd Q4 yLYQXj(cv`<,UVU+6 TVJrN#E-#a?+VUvMX8"=MgOhhU2_f/$YuJYՇn[%%R~u5}\WB݌Fϫ K_)M _^*kJ33&1iӖrwqPN{ɂB[la^!iyb.XÅ|YpLEH"7MpYKBgDw[qAOxTI$r39>V鍃(лۀ`;+HIin pZU4g=uv-1t81l{ajqmtădIOP^ -([BrtV:. 2p{)} xsK, 4f9l rGLYTZ!$Xin}vb,@d{l a5|m^]6FE֋hGxW1tJ% WJOHޗ9ip^JtkQs^߫B2QJ v`F6m|-Շ{lb+0W8`Q PxZzoՕُ_fɜWgs=gL16I[;0F+#CtIj9oS}d|!&I]B6&Ú Kג}`$mq(2b$KhL o>$]o˖m׈dF#}Չa؎ͻG# W1x@$[faheZ!ols=wxxO.7=i4BLO?c=cv i?**ȰiƵ>ϧYA׊)gnql8o;rfI;@ʆp!m>U=Α'MA{P("ٟ\aP+bxŽQml mmls~Ia-m%@nFfy8t>Wk jxk4p2`iɘ) BGPUM0Ƌ@fI]keon R[Y12Oaqbu%G {BM4*dX,یbbF>?Ḙ[]Vyi*/.Ԡ۷L͖)7qaYCzyJ;ղ9*/ ];&ߧ ҍXŴ3ob ?8 '$vX{9J:ELנkfX #1O|:5xi{QU'Av!\)L{ 랭Q}9i-(hpˑ(Y wsTZk_q=V{>%-|Gٿ}[% %d) \Á~ EHԔh~vub]s' =i0nc9ǝ66f߽WF]Ev$#p'\pF&ыwxYZ#iKko 7BΓK/( ?ۅg'neDjjv&k:~H\KisH6d|ꮾX7Zy!9,Ev!sĺ;{߃ST9ьRsX|S/cP8Y3 V ';a=h"as9:wn}{xu)1M]M1lXUzgىZOn S-Mg_V.[܈ Ϟ%@c|2qH>vq,JA+ͫϻtfٙ<9P2ZVTKi;]͈\>߅Ø}hsO* ZOt_! g!Kݨ-`K0ߤoPc<n_H7`oo` TUEs!hP:!36s]:9G/XnE^ 7YZ<) 9PgcSy duHT y}$PtH&&wsP]n~ʰ-YȪs[Q1db-أ6Q}/c!FyGTA5cpHJ`=u03@5hY͝+n[w +Lz!r7K*;[z.6,'FU #zk$^(F*ݹҀ?^ 4Iꓯ@@9+,o˾hQUX3lHȶ) 7 8F"Vvh îU)!!rȜB/Y$wШՏ(){憯Lb$$ &Yi>E:}\x+AWf}͢50,=|{5%5&{5(')kM/A@V_n`T.8N :#Cj"z~ {(QC+v'3_+_b?PGg_iؖd^00``z#hfmBaVOl/ ?v~[MыPle/L qd&jQNRN*?N7(lMt̴Xkpx:jn`|# bvQ8ps;`2Sv(I*YK0=_i!s CX^Bߘ %K@mD(~Do[|@iǤb[p% ƨАOjJ'!JTKhaiS~w: |:M^< aRi` QpoVAp:f愣#V`T D0hc@l5 DEbf.UːȾ2օ8q_[Bvt>ETaJ8v-ܙ<ж3Vvz.ۃ8OW(d&A9Z8#9B`1ԙk!ݵ[$lLY+:5$X6`cHoD~Bh f:*%qC>Dil Tz۵؏P".ug]!= hEGO6{~yẠvدŏ73d©~}]!ZJ$ q?Jm?yQ..)2ә%Sv"!Chgʞ8leh!=$X᛫>r}fPd42j 0'Q !3Y, OǔΐuMQ5RSQt N[ ex;{AeYj.0}c/0y~ZЮ֔_20J4qcB:)z|}/OXHWKHPW[zjؙlަTIPh/]=sGH)@BN'kPvN',#B"ibOV6ޓF2RhN1eqtJ=y xnhڋ[F8Oj;[5)g]5i.M{@!F%kJϲg»9״G>1) 0@9ĕM-,``ir`f~A9j*ob -t$q(1'8IiVB~PfzmprSW#Um?ЊZ:D|?9d* w=pkqJyL`ss%c5!)m];:8 I'-Yw@P!I %L(="N{D9"*F#c3b7L-Ro"%)GeCzh9#[y!`5Q:ǿY mL:F9@;^w+Y)Wbp9L`. ?(7vJG["r 儈JZ%~Qxq$P~P:b.%aOú;1 Y`7_ߌҐwFm5᤺u1ih?|t"Yryui_5_3sa{5Q$AFjLH*cDS5Tsիȏ#1a@%l`]! 09h319v 7j2X%x&T7;Xo\anFKE*!X8`ه4҆ܬsy^$|_դ(">2tu+RzmXla=O"5ip6!'g<>BCyp^m]qydUR&2XoHP_yi1c?܈-#(9xf2ݔMZ8 sZ,39< .-yBpyaNHHETZSY[f6F0֧RrFy3FoA#OV9>nz;hNd?&oBUaf#%->>l^ra+g 5HISs2qPMjf7Ģ pp1Cw ƼɆYӗ_yod"kk~iK-q>}Qe+øM`=a &U@ͩr{BŒ:fq%7E#ndcəʟJ0n3(TBbLD%AE?e%go"K1&}a'fLtBNf@limlqhs{hB9 \d:_9&]:TT+Slmmj A@’VyN3õDAR1iDdzQӋon#YVW>)Y7L38R]j*Z5B幨࣎KkBƜ.} >q/[}v'9NPfJwrO88Pv3qz)n^ 2ٺoO"" d5ɀEy}?>*@$؆]9鴩a1Sl*4 dMIBpj'"5ܽyjUHb>p325;5$@fGW YGQ_<h$rm9bUtwVC0S 2 |}doߡJۤ#76-Ҹr2~Sy\|9u;]7Ƹ wh_Q2 Y;y{3r{I`:-k[h߆K`Ԓ5F^8>c0#Je(!E܉Ʋԋo%n}@H1 hͮ|t RkNlJ F4@N`) Ԙ;V\l<LS]g',ZKGzm2H@SsE.R_ޯ1[-Bp:iKǪCڛDBA =K;vxJ$ʮ-f'4hS,p$ lX2?E݆ cѴt2t5 R3y**}MKG5+pٴ6p-NpiA!9Iʡx1ДEaYqTO"Nň?[#т/!LġM53Sc X r5*9=;oz<>s%C -Bly8 "JKro҅;-z_ݳUԨ׸ FmRݿ,qb1C?JCמt+>]#;\5QpӜ\,'֏ 5#N}MZSi~rdd -^{g^j_Ufqznxfh}:N!b|TvA3Gwe}xhT |%g(l"-]лueCPr iWv*gNdW;#c(TntCJ1f`jlg@_k^5ex=gT^/Nt9x?hD<D?#Z9+Z nYbH+&a06_S7tz}L#\E(&/kH+\H]MT/Au^0zaӤq SF`HY n]A1i"赤"Vjˇ=wTcĀkH@C}k&5m#U6C~8u(E%$fAdvP^jzGarFU?/๤εH|h:MG-91|ǤJG/hrl2g@u~ \jPŶٗScf*Za_"] uM{BO$ W]ឝ3=zlM4(s`~W׍ E]@ݓ6[eUZ^ϐ7(2#ڤw;=C 1.G]QD'겲:'pmQCK^XS7eq}!1z~\8)+yܕ]"MHcWUK(x%Z#ΨPLߋn]1[y6ޒx *%"wj[zPHxU\KEUY8!fJ.v^NО٬J]_j'gܞ|1a1r,ϾSoR2 OZUg !ԕ=M*Ms+`2{k(;7F% W#H["Qc] 1kpp4凴ؙd t?fWQ| }vQܖ93Y’ӿ1/h*Kπ<@T؆'HPxU Bi$z;tcԛXW[d2) 5uvEjo1e~OOԪyS0`-= " M2hg-c+qfơҙfqGFK\MZL!?_}E2D!`gyd̦q3R&=ɤSd6WX7v2ZRPUټNV=C3uC.M@g+ZZձOsq)oaŽJhj&NBcrh} | 1ME0WvR:Mׇq/*vE"p|U-f*oɩo`4 C}jCbv(vXf1},ctiO994\W0%Q@*,KYU$rO'elm;׻CHW$E>w<<RI#v,Qn wW ckR&vtA3_=)q!b:Z[=/|{)eQXA'ɪÇ(j1gQIN@I|ً9( E}t o?gλ̲‹xU[2,6V2&flއn='M/YϜoo멅! VD!.j)}ͯl\ÕXږK̻]:Dv&`MW٪$už3xގ'jn$"z^}>G¨식gdi!-x eL eT*LVGT,^8ѬaǽK g z+'q2in{*COf*˹7 ?w|D/8iRִpV; ǵ▸W}F<\cqzuigΔT-z> uI h-Be,,pw{VB;i {VMyZoQzlv6x47MBcOn;omVU %Wh ־Nrwi:pL4inrQBCIB!?*ԥ&9M=zԈBHvBU֜( wOՁӈ_eB0s0I ^ߢHw=uuc =,1VZ\wE]&Cǎz@vh49..vEK{cSa*F_Е|[E.Qׂ? 7#oJ9}S\0; "t04"xÝm咯R/m˂CLm!{A(' .8ӣ}(D(bbN s h!w[&ěaCF*7)Ɣ9~Co%ZVP|i L㽦A:koB>bC}/U<,j`%*QەQ*N:~#qj—@YE9`tΉbw'W%YsɈdAIA@woӹRk̏UC8,>+ڥT[B7g6c#[ѤK[s+~*-G"s7#T&u= ġLU؍AaMڃڍ.cU?BM^< Y:Bq,+l9qa76HϽ~Ț\b0e4~ wR$Cs?Ls!ŇvoV(@-ヺZg`!զ ?v^ L@܍ )+G1o׸j~5XpkQ'{@34.ܣ!ǨDjgtcr7,ľ+@Cd %Fovx./EVחk%5f\M5gGH &myi+5[Qec"AuCR:F[VEH@vdNcQ=1]Hb`BtwU4]YKҕrW/,؛BQ< hBtjd!H>*e'4f]Tٛݙ@xFCq, ώNȹuè@!8𬬋UDe}f?k:Q?7f] 宴WLp/H)-a\ 5QI*mv_۶`s:Uݘ5mȫW ܓ^p+יGZ"\p&ya!6и?X,C[Ɯ cQ5n")m䣬5 d9%*Գ @noJ MAgSM3 2iEĮ) _9\%zR@9U4+Tݸu% wгeťn9 pvk,qQ)כBY-E9պD"rL7KoUǞ)q+LlNU̫Q5 "` ema x<~kYBvુSB@X}뀲jRK"vKqB1Ҽs`~323G]jR԰r`wdBuHs'H׬@*'[g~l D`XN:T9d\%@Q2C("0BM4#etlQ/q-󌔂CgZ8/эaaڔm J$b_+}/ EȥănPm rFXiABWʴmgbT)Q *,Pߺ)IpcXc5OgDi`uJ1GeomBgWם3@I ,\ʆ^n'n5ߝ :s":06]0tU5-@zWLW] c>H #r`6 :g,g[ވ9U:8`U4a}mAUb<0Ǚ}|ԀN_Z])a~([ͭEX NfYR4KF3BL;D4VQ9PxKEJtkZ*Qsա].J!}EOA9ѹ"9UyK[KijYG c&].|`Mygt^;%Y$_ڞո<*n r?r'ÌϘ&Hr}&]ƃR/"utZQqN=i0ۖpER<}RP~8r}4yWr/ՂQ]5N-Ѐd1K #}TXnyV>cB"tydbѭ_%4w +Y+r(G/>8cÒ^E?Y,1 ~QM|c "-O]  6F}>KaX {_ )q'>a͈ߪNt |_B Fٶ_5(Kƶܤ߂ngϋocPo,I2; @R"LTXo*-~ALT1C(=n͠@Y"51D\u3Ħ)JDv ]bMw@֞,|0&:oJZ]NȗW_]*"] !麳 D+KS|@ʾiVYd+P!/,#_W KߤdM0 =vV')WLܷBUcAh.;09t4j9sę3͔ߑU0u[1JAn&{o]*ʘMR1=7Q>4-[ŖZgN<4Q@;W1HΧ|Q!n[k(Hm̮AȊHj/jҰ9#!ڄcWMLVծ88D s[pJLN\ڱtzAXɰft |@z8ɫL/)ewafzR}OI7`FwY\XqV2C44| ]o^_*Y E(x Lc`';6 4KY?]Wr/{#ѼSNubB#6. HU@>9I\zaVWO,Q1(]5sMC`' JƼk$ fߺ'wLJ SGq@[OT$3>6hqo0St73V;.6aF.=O/\%.m1 pGMBt9Gnm)&[d\ 1y)`+k2}W-ԏUT3= מ@])M*`kO>qK9`}Z&$1+zo#oFE+\aBGtهjA#5,(S\Ș(R]&q|0;Z5UrLrD⠋4sRNɒ7wtnԓ.vR6fPÀP^@</U8PmUl"9&Yhx_@`%? 9FߎZmF72L"JGy$frtg75G1{*M kBwtٴbPGt/a1RtXMCi!yCbɘ .ԡ^h;Ĺib5a,%}leix MDpu.?cث_GDbeiYeuy (^F| v& ACRi\^ɂiFA nͳQqiՊ[^q E8!9 G*T5uipO[@#́&kZ#Ju61ME/d,4fVH7Ηw:on 2bĈ?{o)<~s@F`խRy.5f?h2X`il[Gq6 tf8(-Ľ3>|ץ=Aזoy.rm'KͿ<4]!^kƕMY׳Ϣ@"L+cY?r=5ɴg ggWEax1/%?n^%YK"A-!Y+ {YX⑸ĮI hIɶ#+QKef3HS+-0kbWZ488\K/'yugn>E^LX۶Ճ{b[ ,mZDx!:Jw܅^jH bHdS]ƇqJRٷKY4etq@yT=k fxMu,Ţ F@Ҏ2o*?XENAVEG8Al Nc@h J/ mGoMGIV  WM<3CK $~70<-K(RSDՃ+_ne\łí \YT2RH^HxCe(;mҡ|) xa"'e˲zψ)O<`Z(.D%OKmg,%n]iH ^[Nr̓p-$^3"׭49oKLdq=cÂ|B'SP+qcu[pj NGO,֮UG0Y3p9a1Zw 9+ڨqm{:v'84NE5jJ.fk=6xOh@oY^o/\{RYJt Z?I:ez\0alԴٱiν]U$&F6yeQ S@9nsbVHR3KwSmUKفv@L3ݻ~gؐ)Lx v}I<1 VyG/RnS_ (7KǮx ofٚ’ 6혲tlSȊ-ל"vrR\G vUjjOvuW lK` D ck,9ԠF$ 4xc]DQCN}'#~*PshgDҍ@ga w\wཛྷFUY-?ſ%I)S{wNpG6h)ZyAW"[D`Z 8ej1Mj.(=ÁH)ϸ _qRe ti~F5/[5<,t9ڷϔ/ظoA; cȼ% 0qNZ3o\ڲcꝮ-q+O`)D9d"G# lKꢯ\~ Na{px /1CB7蒳Bă4C?O;ij-1twoΦ oԗ{˾狙 2@px4 u!$%!})|"BCK}dE7<" f=!NPi2@LM+m Q&fHP*;Ӿ2D 쪆W -Re}= -$2Qvvp IߵRpj9I*UW3#pz[gq9nD;a\H 2 : sz3®{[jxr7e!weZPHaAʿ~{uQQsۍ؏|8ES ~\߳{!!LX 'b̷N͌5D?c=@dO~y鞪.P2FmFL eJ8zRq=~`b528`*(QI!rDʀK՝⣂H,FGUpPe헕ʀftnv=I b qz]:x߬؞Ns>^u3YI3&X9fEQ tl@]74ggDeIo8NEW0(h CۓÄw tљ4IPܒk}nȬ<αz*ooyY:w:hRHK>k%圱V[)Ԩd<['i'fTՏL q..c^艝qKf6m89\&pipE UNTb?7oq[jF 5n@]+_y?2Ǻyޗ62pUk)\ 'bfFGa'md*uX@!c#S6lUbs"ߌGQX-r;1JK ]n4[jzD<-)It\pr~"{81x\Z`ȗb}<;3p khhƧx5$X_ˉl0uht&zFahC^ȿŔ63ȶ pMUů,2"*cG&u,(^u;ZdV=sa8?Fl~Zy20$Ld Wrx*č'h\ oӫFeO-WlG_fZϠ P%"RZ_m~xsOg/GK JYb%f5C"{M_Xߎ@zJ"_ mv V5;q_F_.ضk}gBEP?NVS3 52Z gsj+f;rbGY/'znk;%'ݯ+ #BۇkLOQ#&h ѽ=ͬɟ[%m<֗aP SQ mw0/~[̙SaϕMeQWVev BsbQ, i.c^fy 7UFq=AZQf-Su3S󲬣̛b؝ ;=PAq"u<]KbN9Pp4ygDt֨|}n FYI=OB"r/fɢ6a0OyMI5jr14& Gu>S>Og!@U21C5Sv8Wbl #dR<0Ź$qlX`Ҧ]qbJpZ[_f iZc?GF.n`@Tw&ުrU&P ֻyenӦćI4*#>pl3a*@(x1KP-3- dj6>\-SX"M2C* v3Fv={t%"W<I0RY !z_Qn4;A"fX>5%pƒF]ޥ$& jc(B)q {jEa|&=~ϺC^RZOpL;IOۻq RXy|.q~ұԵpf4+ˆOhM^Vc9嬤%I@+Ujs\n t cmr6(M=tH%"^A. 38'rZ6k5ΜD3ht ƍd,| }>,\ ;8_DZcR> 8bP1]6RQLv$R up fSq ̀nzdD"p,>y1X0|܊=ҡ?:7DK1%JVoEk5ehZ2sJY>&Yh|j(;h-c}~" P-ZRTfm?䋟IVhX _"Atp#4L3u!ԧ(TǮDu+)BSc:* IBXfQd` %ךcX;NH+4$U)EElj 42O*N ^HB^3164B=@mU~l:=(>Zc"Zm!lt񴖕 IM7^M.ë$4}ѾJf.%@!L#@V UvㅌvшTδN1$"kޔ ڿN%XZ0kPܷ؜g"@9K Il$qp`ɻ4];E@1ƒ%Y,XT}[XK _> $8bS$%#S@4E^.g=$i\|zC-hLz8e|w8҅.*?T^u,&F1+nž1cqjE}|fMSQ4~e ЊNb6S:e&ܑtJc#U‡GD\3K2M-^:aGȔo_,0%olA9J@wn{پ|̪,VU:65b Ngz0\vbE$Gd6nn{ԻߒAbOl Oٞbfڦm zBGS8}#A{"*Ampy\~߭#f_U:$5()LK0J8VԘBӵK 'IPpUƃna!O_>@4 q=&}! _ 5~G\~I›$S==:ՠ*8s u=ƭGK:)=&"AʀUDwÞmOHhzL.G0F; hjzB1& v(so{/2}xԕ<)Fg-qUѠha&%{99vkkؽft[gT< 3@N0?1^qKu Ir@0`rӭۘw )Ƿ)o4IRI$jhM>wLbBF6x.84mr$)J(M@ld+i7 evd +&B֋QSdi8,1 ;^PT\BvUk-= B}O^tUv\i20&9r7Qp01{^dIkvx+!d~7`Yݜ9B&G$'ۧB(& TORqC{t2X Tm-s8Yim"V7QB+1 j<g^AvFߥ-y} ;Ġj{S`0 5 2v:+׼m}RCqqHu=_+!X-\y%E))t.Ҡ a2siy}`H7_XK/~5!ߒl: ``iz9 *r/IO/,zu%Nڈ L$>_d`:mZh5f`ߝrHw']=#k)uy.Vb?iip7Z5 X_b?TO{9<sVxA3Lm͓߲J=3wC7W S8N /I˞8+~8]='-GR+O~%L.,sQfh~9|Q~p2SQH;ȿ}+}ҒGP(:ųp]$}_z0gihma\nu>ܼ^6j?M2uԋTWcքthԂ=e"Ir?'=r՛ L>:Iz(Ƙ''~JF6^?J+]up~6#n+ {9)[Uߨ,C Ħ@b ^hi+˸{NO 79F|˖jjّe yʀ%Ȅ'&Ŋ^=Do$_良WDhJ"0ąymţNE nӞtut(3S~!`~yc/?ЩE<T.U@.zʪƎ=\"Z*s55n"h+%3UMy#j)ivϟZ *NԾfrn.Y[}^T)[~(#$_ékQ>4 2<YTx 94uWv L!qRj'.[d2b>XII2iMv=\lL\d"}oJ}\j4J>8Ko C@7FaY)6*(rVi+K/9Q68, f1 ,^LܞOA^2oXu; 7K_Vhk[M~3'~Ԉ 1`O g$HY)"`Rh2_f &9"iz?㦪`x} *7!+ o.Q{jkw\~@?*!rIսjBgs?ddNe'jP[t4]SÌu•ˇhd(==0I%4@CqT<6vp}nl7AuzƆk=S*n8 iJ}0B49 U1sBIlP,' .q.yAm[UL:r]&fANޕgW[蒲ot3C94M\=Dz$Cucwp$dNvICG|6'Z%iԖz΂nQ=T%Q_F\!|Vg.%9k9w7"'$]- 3VIFPطM F?YDv#XM m}X{j.0 `:4Q'Mgi|% .˙E(o)LqmtYc1~G:"g$U`#+,߯6p"fpc"Cb42,ᝮk QBz50wI>_ZGD`݁BjtJt%]E~#W&C&^[f2Y][ 0 }()MLX(;w~%0qpXr05 8Q‹>!9j@ycƃ({y>6= ,8;M>36EbHYt:fO8Hg˹oc 9F z vf '%c/Lt 9ƺtc;{ >j[VkYUy#H+1/!*`c7 .K)"x,\1!(JNtL,H'2b+-f{77SEM*5Pta[RslozgG<;F?/jȚE\* /?=>G MH&"z ˅Xb9YU 4֝&bxQ͖iZg`Zs1TL)EVmnvki%hl6u +qoe3QE It5g8lȅn DטOH/r"H5Й0@VK%bs"궈yQ@#(GNAe|cHT[/mų6Hڶ$C0'Dd[JE2v_0R AT"Qc}4R) T)+' |MD:*C_C1`?!^#íC IPzt105F= w=枪,)g[KH`a氳I/[H;&@e٣ĉZ֗jHOjZѮ $jp_3~qe`l\^f#kptoB|AՏ$W3L"isWeAUhgyaqL愛*߯쥗@q` ;`- Yة 7a gt(K`v/B0#4'^Ѫ[!$2K%5)(߬!Bؼrث^z72卄ۘ*S4"qbt2mT=\ǂϿ |ƢMO|i;f:l&!/20V on)*1EJ_7aTt{&v/0;,b3N8\(p~ _).8B+"2^NqA #p:3mVPIƒNI(ٝ%p!4 R#9Ӥ(y'&I963rc>P[ՄJP5f|ϔ>b^}XÈUAO>kK_~F j  Y@4Zۯ3iXedZ ;=rm.B|x2PH͐Z==p y 2?H(Hm5uSyo+([PaKAb7ЌgOi\JoyX9>#Xak}!2"|he.ט#-ZN^i˯@:(cUv'Dd|Դ DM>{Ƣ=QZ:#Cv­xo\@W06|ޠ_hF+*tLJv/J_ZlYwS6N/9*>ci!x|?_wfǟwjYA5U`;a/1zoF^GXzXLEbhT1F{F R[#YS-"8LG<ķ\19[VD2v_fP+EşB-t ((:x/'M&xe=a=>u0JmʵZ͔ DS9+Z#_72ChA|R?$V:HJn%CCI\sTZNoO)'Yn+Eɸ. nPz9uUR? ÄϽ$qvE4qwMlޛ=Фy4xVuK'TouN82GFGE@eҷJFSvטrLBKE? `#f)]ym/7:e#Cg[G8/nsI;R5p:X7 CnJ4Hω=/]}f1H)MU=_*F}bY꓅ڠo2?{\bJvCIU >wad%{46+Th s6G,m%~qdj6|UB3]z͡]TN+ߒdz,LҫUؓm?2l7ov])%S{]\_zfOl2#^a hWaBht/ó+%(IE`$ ¦9`W\S=G$`zvJl;U5*5lmWxrnFI>u7֛=֋\dq)¶Nw8PrxˁlnkI= )V'֊8mndGc0gojd@[pUO YYl!.=#27\7Pamѵ*z8٤FBi箶 K1t#Y(y0]KgmY+sLú(rSP2JG-a1107щ3cw>(#_ۑ9= q'ӥY?tN[b0qRoP@ jC'>"PꘫB$7yTa6^Un"Ż2D;z[! Nc\N)w|aH;5*sC-?njh}V?3 9LTv4%ԓQia27"Vpx 9juFY0gf0^ne J2V#_`+AŽY^ϱAϨ "lc<1;r^>%`Wm3L YZuANAW'(1㐼m)#Ե]D78!W0-@ǚA>"Xqhܣ-senϢ%YCnB6r@&+*#Vٗܣ}[enVmCEJn kZq_ >_kV`$-r߭"qk4$n*x{rDGoм>ν)ZrKu|v=%pU,nP[p! ո]t1p/ /YXWQRqvN%lwEo:S,II'tD>R-אhᰈb#sWM #p/1A :kqgB${N@8u|ô%Ծ_HWtMWEUx,^Q uF =rK/x0cOY$Sڗ-К.b(X.+s"anhj CTi~ 92gTPW`!5BKɓg,,vтm-XGNQQץv%l޾pY‰@LCK3VG}IKL{S:F$MP4e_yŇ%.R3C- {ot2x=@"(~_ Sdݛ5jא߂hC0J $~XzdVp eO")9Ac6S:G$(yG8 yܴ?p˒ YE@bӡ{t:7E)K}5OmfͶ=h*6v8R\s5L1Q5Ñ+c0iLjOS[{ިjzR^9,F5 ̲u7[f#"Lo^-0%4K9 2!RvώXK#IJF^qiDM& SS'wձEi¥a"4ڰjy0hWA6ƥt3Bґ𷽻/FJQ޻ 'Yם>F7zi.9rLD7%d )% já- S7zb،O=EV_NϾuw5*\ؘFgH;#4+鳝uX!d׺`)c:"SZa峈w{`zۗV R| k Icdk;/6IŤ[+|d:4>5TH*e&ƇocT6fU7C[IL._:Q0qx'"ͻ }ye>;~ ף`-Q@D6RP~YV@[Z9Dz*@)c56Z.ȣ8.*ժkU3]}*LA2EJT- kԉ]mu9¿+e*#~~gRс!`JZu^ƣ!=bC}% %/% yvᬛboS$I,NzȺNGXȽR ˯S'Clou a붒%]] iT%nԧ ҾW]um5!y2aX.u&w tBvO|$R<(d0t·f/-'(3)G0 iVpH!sM ppa#*dG3S|J(=tnnęG xR98 JVW$38QSbQ݌ nnNr%>E')9尭;.!&q:׸CLAJo!LYgqapa& U6-e.&{ !leSҼxm3Rz#7 $Ls^:uG`2L"Ypy=x_ŊT/`ITwy/kWȮ'c*;Q|ۯDܔcTefБh^yvp.\8@w0?_1zpoAsWQ38VӘb.n!]hqYpq/ oodmpzt@nrc g@*ft.u4U@A'a^j% 4EuՁcFF`M,/V6 kısg Ă1J}L;%,t+Kog,By˂K@Vs2Wz#3oM{ 4=C6. fAu?ʆ Àx)ZU`=?Y>*P+/JEY-1(і87׉XJedG Ӆ@8f488l!Mz1V Q;*9΃Vi.(4VLj\Upt,P&zRݔbԻƚa.O֯ĚE0?"T0 MZ+3&W%S)>e:e 8 cZ1`)Rm='ydR{8Hy~gM+ ĥU-BBF5\Z',+bI@hr)~Zd˜J%yR8Us"Ex7YW9 c,*FUJGd ȐUkJZn!T⁷ ؽg4Dq|VjR VAڶ~rhNƯypr<s3g+sWDtQX=&gj%&S&.t]6`jR#[FC*$_D,'zO Pr""*8X sȾ!B`Cmadx" Ef5lX`)xϸ Y1LHI7f@e[{[2xUmxBLXPG 9 gQ^.Q QK¿ %=G).*.@!M7^"ruQ/~5VNl4MwqՁj Z E\ &"G1Lwo=*o{ţ\Vxt ar7FC]xF1S6.@^>|հoV;*9j4jI֜k` xVyd:聗S."µ)s/U= #%* L$p MKi]?-|]cyJ`KoH0ou]m't/V_#r/85QO .J'#&:?&&'%9rTQ"xK v-x`KIǂ`Tè,Lη?Tox+-yFIA8aȁ26[,ڊcѤYcTtm~9SP>`p)9ty/$+tM͌tdQ`K&sJƷ4LemqbgI~uѲg̴0?~0EH,%nЌhu]F,y ZNxl`STg{o1iEг~pÒR? !z|4 ĵS4%^44E42]i9f(誨_B5T" ^!{ %?! IHROop3K" sk^4Bџ"~nQ/Fyj2u`J4bl喣_k2g+n}[W#-AcJ/ @x42@ 5xT:gb;)ٟ&) _jN2>.X%Mw +Xv#"^4٣P Y'k: Qf&I<#j,ԹR.B$1CGpYEa?s;Y"_l^:E~FHRs-ɻap16maiɰ v‡KUODumX:Qt &tx eBhs~lwl9tKMk";}dFBĄ{:ӠK=${"i`;տ?ɕ+^{Ce[Wz(cZ \USo]}hxP_XJ1Zmd=3lJ:gw⢜@|,h'D^$PItqWbqd+qZ};T&x!`hyZ8#u;i9l5=!rpFȝZ #$LKABd3oޥE E ^LntY}/RwtO[P" \" XQ*~:e9n@-CZso `ʗjQxMGγlkytیPZGew.X2,NƎ߬crsNv|6+RnVSk>{1C7ӑQYXwW I@ зp`0mU<8 ޥX7 v#ڨ /kVD<CQ{cyҋڻ԰̺jŊ05Bu˝Cƫ$yTڝʊ(u:5g'D-P\e1q~?5wv ԓHe=|4g1$`B+65\5D?[t3Fm?Bp[8ŚjGJ1tb][i{VG4̴^WE5ǝ 4oY G/=%:" 52+io@$ښ#-e6ۏ~È:^=w\g!¡Z1AUWIptl@hK :9@RyUG$*ToFq#Jt0u󵫃->'"KXy}hvy*5C3L!{ "M-hދD)*h@* VkrH-T6'E%䠉P05Ckac@7V/gɑ l ,PBG>gQv=˖VB Fř"7S*zEuM3qZ,@s @y^ʇLA~0Ӄ(霐7l{4GjcPE@#Hvaӷ0?Z!z [,-\UƊY| Qd=+wP0ן 2)^1j2 uV*B?ğcѭ8:7k}[B G0)ˆdskxx&"Wo%'"0 "2}t‡E\즑/`q\:7sv+OH|bs9iO>`')[?(g`7]>GILGwLM7Zos y`-2+D)9iL:CCH9؋r )G. 2I#lo)o݂L"N 7!p4`@ ꡕd+yKHabG9[_rQvA1~qAGEVDYC+Y38}"L>jA܍zJGn\DJW^`| CvFm=RF>XWZ鵣m)Gz3@12y/\B`{8 ]֞`x(]"Ả$bt!<vyٟg朐~r 84znG;&O'.d ~f,}1"{r#'3 0zף4m4Xk Dqǽ>ՓӉprT-\nnxl2*>SrLڰְ{ A%>A}t0bRk@XՉ_qa dBU=!nu8).!l"rZ^EXm+'fXkK9떨+r/&@ git(BjSAS T-ධtߙVW6$o[B͗E5iqCw+}md#Oλ*0M'PGRĺKN]Sv"RV01Ff\Um天 nlZg°+Լm%sU‹2uUp|@áxe y/LMϩ%Ig%-8@ѿ$a狹Mh䀼tдVak1 :O5XH^:%`JUc?mY^}wqQ%:ƫRAxYLRD6 3K:]3~^pQTM)YW+vKm_&1@0PīY. э]+2y5v DM ݋p.FxF4j ? 6GC_6Jl080o|61_i1KkjVB!׹m =Te:#uR9|lqNO1zwO$VO0+~܃Ժ0\X!s J*fˌ"f%tz+ˮM0,Icw( UnrC<\dq1 Qd-(8|{ Yb2xr -[AH}m8;fM C1{s;/u莎j@oB'[$YrKBk,y>u%]C6ȴ,߉{9xdD%zVF~KS{ ҏc(ue4`tJM+۾pB*c :%ǜ%F: [$r߮q&e&l˶C@o1VY``Ǫ&`νoCZ7&9NZC@Z kmT՛ǝ0Z4-Br<,dnҎmC1+ĜiXES$whWWi@<0sVF4Jlޮ /^i "49,XK\]y{n `踇UBl@q2tImZz?Ru0I]\J/I ;VgSV?w>m \`Z]܅tȲ9_?25@H x5r~޵#z%GdmgR4¬ΐpl=;'?VB=BfQ瘖DMm"&-urz[Q:\)-2 m~rz 2{O}xQOVt#Z?,،~=7+P=2\*0fiη>0W^}T.΁-􁄟dwYUTzm,?? \un ݡ4xKeymK&(ѷ^e[ItSXh5l]Kx2^hfXx$N%?s!{}"NS;;zQZ4k+4Z~"7&JY܈7|uwR J4`1PS;0%8)b_DS $,8 @P"{ ^ɡpx(ry*y=cو0_BQfA"%L2BN[L鸑f̾Aj.^%y m7n,!qs9Ԋ XawE;oC]z;l*@>fؔ qzMⅱ P o@;LA7L7r.LbxX>a) hEbC&RX޼{byjU_o*ki?7q=>Pe_EO.#(H*3ԗYͷQ'b][H60{rb>'` qN̻r%W04!Tn`G#(_zԱBwm ,G UWEZt!Oy{w0g3):! jbhۆGOI!s3;Op(XLBO d_& jj6 ouD_#܃fG"L ڻPz;+9]q^7oZħɲsc2כ+q%"~<m]ij._ta˱@p,ٹȡNE1o9?{{;2RrtOZF{l =U9b \۫]Z|  `y3Duv)ii$r\HX[HF4\7mI{TcHouP[)֖Op.\Y@l5Y*k?i6bSۆmZdQz Y3p)c*0BXђ*c+e6RE -o:|J_#)Kt:Swa)z{VZJ~FM|0t(=KUKnL|L7V][ L 8< J=KRC 4yڴ^eJ1DBGVc Fּpo"&=TzxzPzT?c"ѰO͔Lѳ.*)J$.1\K ʓ}F! VYE>$#4s#_XcE K{U1&֡vލg@j,0<Jv1m1Wi!U ƒ S&y48\A/,Y"Ato8֒&]3 @.\* k΀!iڿ.R[2 ==*Vu껙ES]MŽd򊲶'm_”9ER)s]3p,U{naƚh[Fx AV7U?4k50JZHC,aY$R60gԘ<_;÷\hb\%=K`(םL J=#qjܐZeѝGʻ ٥9z3/^Rbn(ܕV.RѕmvQp yJszOꑦ.]z{E-ݻ>^4N!k/#MD eڮ~Jtl@LDsAQcRd?Fm)Xlf"GZZE+n[TȭF){VH>Q'B>'YWu*n;JdӒeO˲\uoľGyM32w0~\I{>h$L=݌΋VQ;_e?1 ޢ'E%)DViI6(;@$< B:|Q5{m} 霶ɠW};bU\z `Mէd@%XȺ7]?u@1(!V\vjÀ PGN4hUOkٛ$@~B_z0q3c_Tk-Gz wϗ"Hr+*`҅jGVǽR$MkLL7p?q1-yUЌCMR4ftoFןծSQewnՓJ&saT:y%.Ӥ⚐"#=?@noq@vPW~q$m-?kzXqԶ=gSeȔw"C.\A* Ru]AW2U%:uS1n2aTv1;1 vd ev [f +tϖT:7qR9=wF# JzpסSX3HMc4ߟzXi R̸VY`eo ɳi** ؕ53uڴuƱau@kɝT l8gh`1 }lQnt_*?R l bA:w3LZPpE~Ԙߜ"F2KzJUZ*oo`aώ+k`ܕD.t_wRQ(K[Qs?Ô~̕B%٫\Df(5^/F{5r4nTi23ZSOgG䉴I`]g擕S7,"JMT4ٛ% α(trn$VS'h<yC~Cv d"$  lPQef1w5̑缝*bЭYAp3[: +?AhDgjteѼw"^ lO"KpvDܯZ@5h lrlk\SN!Dz(wJ 4^f%%J]lΑֳb.|}Wi}|\:_hۥXO%:c@隍0Nӛgm|$W̯Moڡ ɖb/suXVAAlj#R4{ :>H}t7cdžStě kJjqwLU;qm͐ZW2ӗPa%r8Vi>aAU?#4<9g i K:r%;׵`5OMy4A:krrifG19^ ^T0GRn3M@S.uUC3R:$>By(Mrpn~F,jJA Y! H$#`wQxwNuN(S5SKm'vpƒJ;ow2 %穧 sAMnv}]mUb[KtzW", _5R/lIfc"Xۙ>9tF;E%(y>g*꾘CVT| |ʴiq- xI:5o$\.δq\a1er6ZJyFr)Qk&?oF呛C8Sf_< 8-4 KOX ~(qzHu J[#ZüHV3z ]}Ar0.Go#v#"2 qwF4j5t a{ڸn"@Rx*i_Tm# Oc.FP;?,{/~xvz'|F|Mg83{۟Û^ -BN8Hi鱥x GW2Ǡ"/DADzu [Ë*͟Fon_nKP=EY9bF q`Zp͸3k7\}Jy|ws߬;ȾS5=>!v4RY;= @V'NB h̼.2 1JB-ȥ WܥG5ŒO/p91h3"}u[SL$' ln 5-܅{6ZawvZ"vKlo~[eEn6(C) fiv5Flq|2F2[PW_JfLǛw/u΢s3z6O4* #1Հkx#D 12.=}>{Y98\Ԍڶ*,uͨ^|ΩeߧF`6Ģ>'{^,˸21}'ϲ+Sf "FߚbEtK4C!uqmh Ю,jPEI/7Nqtǔ$YUHe98+,nD p0OwI b0j_ajG1o33qGT_|_+UbLsZ?v͔:8~L=b$/Nl<uSJ95ݪZF"U 5 T8 SQdZ£k[= FfmElֺـLħ z %j=i{`] $U*Tloz1 " $4;:Mox,}Br;Lټ5WXf$S]4L5 &D\z N\葱usb|t!t;IĴVj@W{ ;Q[N^!c~(3S|rJA=G,oKB&9w~Uη!Я.IE!d BygeQ tޅ+ 3^X>GV6b^ IT4kQ̬<5)\n/\AlP҂Uy û]DvӚVq?Z9&SRpF0y̘LYn 9~J?ԡ ْ.00S(4iϢA7܉+WLjb6]ԋ܌Ndi_Fo#a Ȩ/Gi3.2C4@Ͻjin7Լ~&9ёx +_݈G7[6ǂ4m 'm iUcyןv)R+҆L¨p8AHIw=eI.  G "hin$g4:(u`?ӰL܆.jRy&/lTr׽ϼr*_\1 >Tǀ5[ {D!Xܢ[N1C'18ւ&>霐q]NNjbhRxNFI@g`>TrYc`i%Kv81g<տ:x5|k6.Lԣ4*} L59UPp׿K |]հ(fsdn\k^bU޽sTU7`4Tw _\bٱ?jD ს&H2T<:UF (Z#\?4Gm9}W69sL&4DO¦XgHv0fa^\)F{r @"$ <ؿQn^OcIOGk<#M =_ J6V  yA"(KKv5DqxZq}@ UEzȍZof?. UCI@m0\n%1ZrÅUrq}waZMA‹`׸iS?. .E .eƶgͤ} CV "VOU٠-ʭ`VBiofȹPf|@~|% 3YJƽ@wv L!J+xE7DX?ZŠf {?O E~ik>5 a''k~>;M WLsBG=f<1U+Qo:gJ )x)GIMaLF3;:ïo q|Sbdh2O&rb AG6X ]_"5aQCw}ŅPr5bWyܭLǒ;(Rh7{7d7Uw! #_%4If].J i>xD^w7gEfc] b)WdEr$}}]G^LywmK1tDBL\aTWϡ&dnqܙxmtO|#L_kZ~Fר'HgRGa)%z3m[I|z/U%;Kwwg([6Z$l?d%[jp_,?gp١=PD Ic8Vr bXxh [njq&+zm5l-WV3'fStuUxK e|CJ!/ 9x u)Zv"{4Mn r[ bV[(P۶˃#0sʘw<=٤A @ [0H&pThYæ=s]aap4BΓ7Np^˯+`xٷ0j\ɔH~Ὀ{^QGJ^gɎMt*qx>n0uërp2 ,VAsJ{UyK]P~wk m}MYL-8Ki(b>=ИXj@-X[ Hf.[BEMA wJ656+*>N2l1iqISw+8 0* h>k6FWK W @e{W >^.o@=+oצEdh*/ ~3CKP(fH7s/{/M_ݏY 0K;t*&h:eJI+S؎읅/S:n++cWS"(tlS5`%ê;:Kv3IMh<6}/VػK~D4h78LTY#4;ˍ)w d$p7 ^t.*9d_HQ׊f٪ 0 #(="e+ i3w#yRCdgJcɢLZ#;KhZ/h⪻ɧo+U{/Gl/ ug hJp0:&c;E8 H3DN` 9ÆbEYR1]5%+LZkЋ2w 25°!W}-N3nZ#&LZpP>vuTL ̍mh7"]md"l$Gf[Y0Y&q{Q@鹎K0su}o%suA's^Hc8(.]BclpZYc L0gQILtp7BD8OFG@lЖ??6 a 2g?:q>b4k,-3/p=e`K9~8DOqG_ ,|.(WJC C%4t9'/ YQ7^V״E)m(n^Ep )'R5(~\P!a7!@Ln?QP& ;N tU uI|& L.6ޮȷj'n1rƃ[xAp;ct&XhV4=Bv{5lOS/aPEҪŎ.j=z+ Ai}tF| - D)Y] &OԘpxJ(p=\ !G 3fj[i|" Ot6{W{ ,2[&oUUSa`r$a;nX<Jnyv[Е}dʯޣK}N;"^UoζMXS qp;kL HVdOSobq Yڕovףra-|_}fS oXx<ٰDUj{ºַW( `;%Jw?0&6/!61nxRd-$G&oNr% %8߄Jk55wBvy RB9RwU3~-A#a/؀u@r !Kb[=Tn1i=߹) 7DnB= D0i%>*f,޶2"F?/OF7oќ2埔EJw6ΈF)4s-z* cEcL]FUbs'ށZ]A$ΟLMwOF7T'4iYK2}_ 'ƴyNzP̡ qIqEij:-Â&<'YewWƧW)#L~Hi =vpqDv;X3OFzѷ4&jqbG)0x1rI\pBOA${UEr: s6A P·fIsO4ݍr9g˭տNgtܶY\!V*18Jc )U%GiKٽqԀֈ8peC\P2yµ(d$cf j238X "$wyS mJ`q*ebKJRqh` 68!_"A-&c6,"^3R'}W# ?.7roҔu`3oه&bPGS3b_[ˆ_! NB:) M=},}ԙB/&*l, iNa!Te&I7 2Ŭ u+v{%:ve9K#; 8;AQa}] ;]?e[ /]$,-=A:"[wүw?qf+`hMYg;['E/3ЃZVZ}( M"tVccy_( {ւO69t]n/Toi!Cʤ{PH{>u'!/S3ݜKpzQ _9E)"D다jUGn$8+}Qeɝ$U$@]ZiEma*QmhSp{֏ zg@Tl8??"VX~0A$yۣ|FɲFCko;ewI7pvwG@=ا{bDaf5/MYbw(q)ϽK7wkѲuk`śYít/E  x?Ɂ[E`l*/ 5$5x%K^ݼj`Hq"͎j%_]ËEg+]kucy#\^D&)ca*or&tyQNn 9>\/u<*MDM+z6umH)wyWyZaWHT&L &U{Gi"z\?d[#YdA`?h&ERPa8^%C-4EoNB#&F;2l]_cpX-H8RZ MmQWgqw0;v{,WroqݳCt/p%ZZ~)/*gӧ8V0{3,R~x^)ˍ=$&KeJfzD*FKͥEgӆwNJ׀bgYx=и=۲dCQכTNQ8?5'ZFzIx}sRWH[sȰH@vVQ$hEmMKG׽ffB90v ‹tF<UVT0?aPy: :*ij9%le36 $69?^$}nvfGʈz.j>R٪l}J[Wu|ϡ+( ? J<=%*|r~ =(ݳIĆlU5z6gIsQ k}ߝ{Y@hos#e8} OKs $4]Fqsj:ѶKg7 H31ys@׌I"Ϛ\v{ DC򯫮L;&Q['<#M 3 >Rۏ5YG2_3/iSklkct"f:N9E4P*E:c _:V= h\Ge}v! AI sBlNK3,EQ Yn$WOxϜ8ek竼j3 ө' ~Ȗu?AeC vc|-͒aEXGgӶb:Kvp2=ZC7ӫ{Qg@\QB(?7y?uY ;= 4ꦁ)& ǻlVaYg1wzBeCK۞2}8]y@v" jo_lEGszR01٧Mt=k`-/ܥDZmE>#7w!ao|R ґ ( S.kjT^ft1ꙀZi: ^믲An˲Ǖ3@7&m}{D% &{!Xq(L$@;ֽ݂/(`"׫u좼MZ%z(Mb2FM$9(tg8Vm힗`ۑ 1p'FwtP%A[oH9O`NMK!FXXf¸x5RyxN[~es"v?~/.}P02_"kPu\X:L4I/Ii흀ϓ\24y~ [lGX- K ,X^ vŦ#wϑ22#C ;c7’2 7j|=B_X9qKI@HMij|_ѕ"[]+4@#R޾aJOƿmDH0.- h߹Q<ע:rK`Z;uф?#~=aO!$ 9{ˑ9''hPvgk9n(1TRE>ԷK)!nd,cTm0FaZ^ae]'fUTvmM}t'a#6moPtRP~2kځ5 qauAD,B뗂K47exK<ݐmMshi`†p>>Ԯ6t >4T:Y0p& 9b@˗q7<{̵u'o&w+qcs'Sݐ]@nmބU$hWҟ~7ГMU2Р|6SP!q ꧄\b9~/|Z[K_Hj]-|03vXy @AGn/ՍcUiɏK_kZT0Л\VXy4^Mm3|䣡μtpKԶ`8oD6h9m>Y7u'HG/BPNx!=;>lNcbXo<(^hᄠp t7+ 5:L$~}EH{4W.{w3qd$۴=_K`]=xMlW6!R!UYt|=˒rї [Ne42 dSHKo{+]&m7KIrd5 ٷe1>\2Ts32g[meM˞jan9X-S~.wB͍,-(-7/W̲D]66~բ-SH/|CHS ѕc<!i8biPZje-Ac])Qnf?2z粧Tj3o09ȏʹ'Ҁjl6V 3]&Z{wvц/k8:2%J/f n_pnlc0U#xO8A2_LkK @+[üjw8O?vZhl;ݦZJ >,AlX tVLbQVG7Q* , 6p+nuʰ獌_/L)hDeFo-s;=t%@1)Ef:ِ2+~ʸy*vcpRJj3iJkE4R׼f^ɔcaIDŽDlHiwx)Zut&_uDlB =}4eifLd!e 2.x4j8= ɧ޴jD+T4'yg=^TlGn\~vcd/R;a}:Y45qC q55ڸ ~((k]l8]ޮ{21Vl>#_ḒIp2kSImNOQwLB092nXRd`s󂖥ЧvOꄢ_t6l 6Ozzϫ ftUܸ _+BͰpG 4,nXooOiD^̺e$ A!ח&$ǐC٫9xُAN;գCLW&QEke Ԁ.ܱ / )̦xXlNH>S>a,<"ҍA DZCּKj◹^5b&·ebmQؔŅtYJ+)&p88G)ƛ:$X'7.;" Uۂk9SUл{n+owhFiRjG jBMZPǂ ONw^BpuՆt!&@]W."2sa g>j5+A)g J|:o p1oP z;@8s9D $_zWO6`sXtpmCǙm0)7?D )98)4 ;~_V7fffMa yc6Iq_}`3ɬ|&fp9 |fk?Z*)5=K-,)*[+Lڏ^u796Ė qG]o5R6۵ZJU VT| SlI9=(P0#ȱ3{̰O۔ѹ~ez&:eyl%9eHٷDLK0و.DYWD}%p 3K_Mw)侑WGHMD5wE$^U*㸀7~ бṨDo);olG2"XZ׏.:z) pI ^}2[IJ̦";ӨFdLNq ner4C;p6RyѦ(v/So c81QC{J̟o$5p J4tUkwX%+Kcb$ٶV JrikmKA%2 9ߑy%pyxh]wT)H9CzJ# U?kʇvN'䟣)t곃y,>g- iv^Wm =u5dϾL>~{L(ex{KZ|d> ~f6zc'eɋqfa*#A\YEHhl 9E,\,\93WP1\8@%ҍg+,|'C~;@,n"^6aX^'o<){F5Ai7|$9V!<l='WJNuz 7V&$ `p-0:`dsc>܇u M3J,n`dڮH_(uw. M^\?,%bhTv#poG96{|=z -y݂1ϴ,@Nua찜tb>yw|5kT7~iVfD Wϙ5 t, 5Qtd`/ .@޾(s} RnBddWoS&ޮJCkmAiA/28b3=Pj3ECMӌ.uՙKESJZ&V5r1 RmNQywv]?^A_ Ufһ%wieSpL^_ː0ijZWCvZ*j=:.HQiJ ē|C~\xT^:P-Kdnj$d0`'nh~/p"3$?3۽瞿wz5df_ս‹=!Z2-Pq"RGMTh2`e^f5t:toiؒ٥rl6Qp 4h'.LUk(>i{ۂ`ᩜE*~Jm3 #jʬVQ=(=S0^X>Biui\څt9 XU-&-k'R쮛a9 Y]ćцd%xLѮqFLn-hXDS&|&w_ݥ^}ݲq;Ncmi{lCߨ-rRaVf[`q#UJx5|;f40 Nz}aDEK`8`SUb'#PYp҄Uo9/Nm>s5ZBc#!Ýqĺ>SoOkPKniwl%mΚC4%zU@MQ٠rWԦ:?KpK.b4&]#]J޸!gάJ,wY2:2tKt Uh`cf${C?2nȜ(Hb8 * ϣNkE>dQ}PkANQK 4w8hQz`z\Wk?T%M[qW+UނQ¡;>k$"$y`L3>sӛ$hz&{ɘ?̊⏇aD4Ox*lK"Oآ+d ߺ[i lAl+ 53cdU*O1X-MR֣. 2͍c" |ȼlS̓뵢m?n]чx:vǵ0mUJJSS7Bkj|}QϽzl (#]!vw'6|/WRҜ5(,~EU|L ONaԯ)$ڨ(7gm@ IyPxf!'ࠦI}2;x!|%M*oNZ~ \u[mu5IᔴQ%Ύ<~6uAoXoV%QBv_ȉ\GqMMȮ> e9ad(l$ӲOXatA}"fj!!su~tcz1},z7qQֻ:\M'@/R L|3csxG{m}EeLUf/ *[[([:q]礣r99^?6s)C1 Muh{@r%y;ШtroXrL[Q7%2 11u Q{Er2l,IIz-.t$Wi_T&?d*47Ñ~.M+&Aps!ı͏{R pVu;hmzt<^b횷jh/gPW(oo4G~Tޖ$՚]XCKu8]i/όO]Z!Fk\ZD7w3Nd8k4{ AnuO}.^1߼G ^pXPQL)j 4nƪzgXr^l,^*vg]ugGlNy,6ԖĻcTBluzi5'jeX.brOrvZUhHfTe41IWP~ EHZ&8;0gI.\ Uᐰ 5R~eFK9{N: 19EP rWWjf$nv]/Up3/"TCZ~D??,16Ov:\2|#vjЇ{h^hᏳ3V*%#/Ft+gZzg_ % @.tuE#(Rjeu A#aShf[mrwC_^Q m5 ߞ:4r2[wX:Yqe2!ߡkLM! p? .X0XT&8ӯI7fuwDT+b Վ?Y]~ bۀ`_C#myiܨX(x IleqBP{ZŖMRV7331BhKk4-jD}3ld$xFpssY"TX"גh4iL:rvq^u/GJGusp1bm y4ͬg"g:*#l5'O_!n :gn}#?*Rsƅ|jt^^)k/ڱ];<7E:Gz |`l͎=pj6_VCԢsGW2I~&G( w$JNƲ([G{|\9Hv- \aQda#Dj0F{GEҐ?YP2x?PrZ #AvB_xG4F}}ʼn~5N&iSy O|*11-lda6dzZ3G,g b>bs15m YM}:H(. NrpjFώV~l#lkidl0 q'24hPD`r3Ld|2g׷fIP"@tg<ܟQ"5ކu};O1*{1.P)S#8+Ô[y./a6f@y ul5=֝)c-"/9/$ÊބUjs0b1 sOr.g/FlWIy|@1{R,0m2hzuk#ݽ_,Mc_4}0F8]cu8/ޙ^^ơ!Ģ}GT WHD*|2psb=#ZOYtcJkc+fvUҤp b č(ZZ[m99DBEHF ҆, JsNBg11J# V$[AѮm# X~)b &x#D1莒rmJ\qi^yFG?l {zؕZ֕cWwU .D7viKH5|Rx=l5gogZ_ NK"b '1*\?9')1Ɣ%SXg!tySY@Q#m L321x^12jrJQj4cd+u=ܸR3tI#yӌJ Eٴ[ϫ񬩷?>aO3*[a2Pݳ4JBXj+㺤i⶿re?ktъ%cŎ,%o$23MƇ$KjUn|vpTX7Fp@V{}~ln0jeo?z!ە󘥷#|YF{,=e1 3K3滻녡ao$Ilџ&&pQő8F#MEt] ";TVKۜvg+'׊w h0$~bz&];cۛhWOt.cKtTsqT^rb &6Olr5nY1#f%!^kgUKoh3wn$tOf&pwAʯ Q'cR[/K[R7۠ap/3q}تԂoχ0Ɔﷴt^)Ih2݁˼w&47IHujU6tH>O\~\&%dH]w=i")U_Y$usEC,"onwju\Ҩ5SkTGWztxYdZ;?75"z-8la}"{ 0aY@t Zl3zm/n^5WZ_zn^UhL`z {2ô]iW8 L6Ac_ÇFe?]RS­Blce7v7G7xI>4d5eV8YD/|X1{#u.s! #J( q#ku_ c?UOǍӳAq/_ˊBXk1>sѰyUxT JVzgI/{#dlr3^hWƂl(9 o> Ԅ3Gdfp\LCᾮqtygĿQumM(6o(C8QqJ_)QٮޅO&uy JI _@a^|[U31"ƕi= CHtAV/^Se/T?m1P+{Fb~U+ L[R1<w[ &&釧v<$Oׯr@p<6L~hw^K4w2Vr^Y2*خR= z8}r >29wJFe \Yz$evv`0ڢmB\d pND᲏M57rG"""QŐ(!1J'}Ql^I!= +q:AJ Ũ3Mn)c >{~% No^䇣jSVv=8_u8f ?LZIٙ7B?PD X@fEL*%A~qP?V%k.AfjΨx#6U)A741bfX>xzSC i"s r wn M3*7k*UYWwF;`<@EV3Lӫ&ْM,= j7z҃^.8Ze[ cC. w7,$GWhd|jqQ0dq7d^7 e#MUS* A7$`$EӐlDbЙg>Is}7cGRm>v3\2!'7t>$F[0L[OQ: P?Pi1TxU)Α©KU +Ñ_w+WODY_]%롖oF58%珙PKC}]I± k*) 2+LApU'Bxz00O8"TZj Fvk-& &RL` MZsV& qCiRKH=rsS;Q\0j[I|VGu[Ca!Qf a gC^Ω4; Ldg;nMMxPC@^ SAe21L.Use(65x,Bu1Zk ˊKh֠)Ix\ИI=sJ.16Ll7T<'ABfYs{>6S 3w)OH?:_+wsὢu(.tr\%9_fH;)+תּ0\`Gxz0mx Uťitѷ OHx'H4~k UQ߀Sێl Cx&$eGdiIAAPӝ4~yY+=>i R:|@ܶ4ՁDž: 62#^fU0{ IT評|dcHoduL/B/ /xgݍj?zV݁Bis9>4 ϩ!;njӹGN*b} rNnޭomLȣp#dYJCpGy 5F|/mu%"$n%jLJ̚߁i&''^J:IM:W'C~&Frs{ i7Z-y0ў^k܀γR?;S9xq%Ty/pjj=j9]yJheDQq"c-Ctg BM#j>e ^g}qεruݻM4Zze&7'm(ì *~Z?qO ZtJrɮgRq 6̿:eBɈ:+7ebOoAF-v>de?M-1%D!!XpƠܕOBºa֪d9˹P'؎TΪzH~>˥Ɇ]6Z&ZpV]ʼS]Z6u͝Qx H͸EpN$iZ኷:?c>&`r3"RlGdxו~ډs'w)rSmz&ԍ|_VLs.v돑Z^ p؇`4 Ko6.5ЏV>:8#bIv ΫUp%f3%G;# nXOCU6R֧꥕LmsUX~8ךSaBΖ>whv7R{%fBB4ghFnPc1Zww'})+es<{֘r^?Y(Ӹ+ئC\n ĸgApRhǀf9,_XaFaYsdznSLğ,#3 pcӝd$fT; t/UH$Az\eɨǕ`$s+NuUF&ڧhwNd{uD3EfVTapb} :<pQi4QDE`z9x*j`b4|xv~V]=~WcGk+1+{ X0ZVW<1jf5<[PNtB |Fqjvt g'ȉhK\sG,blS>lm@phs" 5f-Ȉ}_xboWm99HmkbF̐}0(W1Ry* ;Ü9`Ac'VpM<|(cw(yjjLx@#& {'h8",Y~-!°TD7EV_"JS;W.&4!v4Ko0-ܖj<s^D"lEeh늎DM'OKKؾCw\Ihk 3v@ΣB1dޑ0tN?=(lS-c/Ӄ#1,tU X.^(loά?Q*&놥X;1ZGoLָa'/5`]g8RyQ47CH&E#"& Fag/0 V&kIu1xV 3i aSgYҎ0PD^ E@՞QJPqK ?Ԙbӕo[nQ޵k p{XFż_͛Si|UH`M'ur=֒فnDjX[G%](~S7kl9~{o8PnLI̋P]-҆YA\71fU,Bk$[ h©zAlV;yb]8izZ6I@Mu \(Za$-"wS`>IIdz++ūZ謡v3nΜ?6VE|d,%><633QGh͞2б`WkˤL-A{.4gٍ*Wyyh外+kSڽ5_hLOSTIá7-G0Ę}bq:/W- w$L8kZ=)쟫lϞP_ҋgW߾MI3y̠ޒWF\V@̝m'qyQT*<zFS${c)T<RK*t4% X2;2&ϦnSt*O-WM%Nh7_;kKgᅕ;'ȿz?\n,$X+^䰘vU-=7>H8(- U%K[nlX$`GZ!ƹwg%gEX暨*]Ҳ#YQ-v وV _7J7 o\DY#7=%PPm/,Ȧѿ~y-mm,/nL2(ȇTl l]7{o{Қs7+Ϋc~^gcA].몍&{FTMV7l) #QrDuD=PR_N eg>\F{!`w[ Ԫ;e֙nrS]Ҙ(QLD@UjRRizx`n\$̻W/uÎE2V>ɃWɣ+;JIpWGcQ&'ɲc7籖W{@CIա#ݑ?A6`v`'zAo6[cTuDݭNOVæa Uښ˥dpGAjY(>{{ۃ\{ -Ǣy;\1v`*;@^KU9|*#1OЪk'BeүM)}H}3)ےISIz@P/1jA1"ImF$M]Fׯ.کl>z EoR%Z!&T.ʸg*SU!ZD|t+)-]|e,B&J0/ OYG2eJآpf)wh8zY:ӻ4DL]9^h+H?e"\:OUH3YzLW۫QesKT(W6~uP7XAUQʭ`X|+n ҪJykgq淜܀yutjQnf: ;jF|oyo~3XtKN/tMU8 ɚ*Ɍ7 n1Řg= \<gTnT>( D.I] tֲ߾ĕm`wHUy;zCըV{ %'pc?{9V\Q)%[FEH-X>$'opMW9NzUVu#dSNX c,$E܇kK?.|-gkNx{4=8ҬW (CƔXE쐆c7svu5X#h$@%v?ҹ}B@Uc64Q5 99սtD8WXmyG{q]I6 ٴmMxẔFef\xSokSTڰ ?=5\`pTnW{߀ا_X ø'L 䇓x'dNrj^G{`qT y x`=PvQ,w IU[Yie''@≍2QT kyQ DSq~k7~{8w&_ۥʒBqMBKUtSs/URU㕮 Tzx[foj,(U e KQ܀P뚻 B44>߃ !m-0E޲l50u~M#ExFoDqX[Hh2 1=qL8䬻 wZ3++ؗo4lYθC$M8:G axJ!qb(:>՚4)/]q"bD/&12ZF:N -wlo2Gb%o]S|~(Ò0M7V]-@5'OGb?ص+^cuĨ >6KӞ1‰8ㄎ^n染} v/ikL=aIYe'0 EuW%qvej2Mpvn?s.*b.v+ ]3#_ӫj@]?eAjH'\new^ 퍡%ED|)߸]8>Y Ƴ/,uGK$FҾꓨ.~:rW`FwxNESrGܢ> dvM0%0L&6 ~5u /& *93bnhA!"~@I0irۋ#"4ЍcRHM-opІF\Jr=g۱aO5ź翔O ^&ʋ7BV'JF>o9gюl1rX+Y,װVHo0sʍ|'yd-2Q<lQuY_wBWIΙH4r[ E2ܒ)|\}*\y"o=y;8os43Ejoh8PV}U ύl "<|ܕ/!T9 <]*Rzzu"=,#5mhF |RG>̍)}v$wI{wR&5s-aЊ̎e[޷)Ş lR=߫߁(o~{N.k) Gb4 W je1ɴ;8ptRCL-]2ڀqP,BTouzY*cAJ;v 2p6KT eBR-цq#**6g'_e!l\%Gێ#m!ŽSƶQ77JBӨ #ʸFwymGG wHL('еX `Oɨ-^swؕݕ]EZ ljKI)0-0g3Ïn#to-ZviAv p;CY\K**"Gf2gY)P9lk&TS߱8JMjƂH6g.:ilΧ%᠝,>By1?SyVj+Fȶ$ck {nVz"V2h4/dxsyTI)=8Es܎p,eR]$ݝ Q P֓v8 vl)^^qcksfns0@;DVcA}f6{&پ:ɛ_Y˕Y`g\YrK^!Q&Uo"9 l|p" 4m>k"k2q!Z0u^P,S= aSBwh}/z^.:XCbGۛ=-)/3U΢EoW fϣ&PN^,]) { &%adRWEf5r@2R۳%YjP*צQbM1GE] B(,P.ffy-ŵ,(%%qx5S98[Pf}'/hkg۵}+¥gs "ډ浊?Ec;$yOBUNfiKkbٮ-)iܥ!?&z4p^J}a[¯@=Z#=DS{,++hYJ2f$$i{/(\,fVa\mЄ]6jyljDL{Ь7V-]}j(gƋk@QF T?ߓ41"ɖL"sAk72yͣ%6Nꦞ@~ۣ7~yYPhR) |%b+ߝKڮXJt/HqOi@$G^D#N}R( ? wy&[SGw{EWn͵΍{w-H\/S7i d.!t947<JH`i#KCcnQ(qu:.EM1/Zdd)ċ%j5iG_;rA%cJ^Uv<{+*o.xtE=iK9$no[iJܤz.eU>?\d !=|5,s)l?E']&f'En,<,M(l/֖,T~,(k5gʼ' "X-A[|R0S:;$L0=9aڈܐ=/zgwrHh%O8|~izB t~q~|# ۦka7x,.Qnu[ٱiG=1J-~>>j%ٙ0Ɏh:^ޗHB5hcT>3Emm=4]yz|-+GrHЖ7 ^hђZ}f[Ͷ6 ^p`JC/yҁƷvSLY{I+VVg}5XAPD[-X; r&yEjkI^&q Zi%HEw8C;O|wؠ}fpv ¸lFI7Wz@hSa!Pa aXymOD),K0;&t׫N6\|ƈB6 z`rjEƌb#r7g K#70p o|;|}7_HWd5g0j-sJW$l6oy%Qz8OcZ1_G wP?nSٲ~.A R$RPG"E`݊[aY"SpJ^<"{t5= ) zʎ<ʜ|\YGp9.^׳ 5л ^4}]̓v,%$3䨾N{}o@f5sMSQ-o MU> # 55R_nKE<ɿ|V^Go_LG2=1hX .ME- (i:iA3_atԵ Y(un}ʍ1bgmp/0V3'd[ ~5&''qBjU(z U%ຨg8~U8`QV㬚 =r2%5w c:&o&3L߽ *ǻHo9w@<}B!Fv94䰞`6&@iO6fg[]/,wCǥ#'Bm$O}V#8EC.UՐM_dza2嗃lzYfP?z 1A#W8ٷUΝ6m6 šݎ҆7H^X^ŠY3$_]V4G"t8bXx{GoW\m#P32 =5)X='DakH*ж<0Nq8OhJH4+;jLˈ-rggUk'Yg.U] 7nMƣ]pEgapߢz07z$@1"|ܮ@0tKYnkko mfN-{×8u,\Y&Bq /uW*8B) {WO_献ZeU#~1\>LdmaU6rlnd[0$| ̳ X?Ř֡MkZ16‰ua U ZL~MLt+B]҃_ƶ~^DcV;+g9* _v wfu^`MjF^5-?;b<ݚ4<֏:)ULjb^`A:*{<AkΌ E#7ծG~Űs@U3^-*xCPDf$qܗ $&z1Oh@nВ^h8y 4?JӃ^&1`٢y!߆v.Rep: |RclwPb% S>PpU̻*=Bk DnZ^e8ֶnUz>C_1նn]g*zBtd:Ks5Q#ekgCQ(WZͩFsNߝx_;0ˬЩO}f@[\pl7̯M+Dht?4(K_QdlK?Ul,Ia01/QEŎi&A:>L54x»Tv V̶hzC=mfotuoS8%//+\xڈ84]qV Gp==E]ώ[3oYe.WHԐ5\V5\ ꃇ wjĿəY6,?-yDCuyƿ-;.ڢۛ4 E8ʸN# /UY4ClQc8rXPp}CSty:~Q4`], ڠI9.su8^֓w;Nl fDEm_).NݓkztſZ`5c /HI5d燤ޞH9#tR?vbzwCTKfRa-og*w#&yD^8Rq <ns.͠(zLzݰ"kUOBM)+^͊xT-IIՉ9VG;%w?՞ rz)]2M1o':I Ui _C D*jL\"+ͯdQxRCXUQS|ީT#$PW G֍ 5m룛޺g: rwJ"!:1q@>}]Xw%u|fg91<>,YfR2vZyk8LJ}f1*1Ff?m(*6̕T(PuJ7h ӻQkGnR9@VzͶIq|*k~iwqcu0mF2<{!"ll&GFeL^Q1t.Fdt8Lpi&WQop2 ~ٗ5PE%ǦxVfn֠$q`7"˛1T<-nX?XYؔut >[PɏSn ^i۟gۡZ}_^Q$A/AEfxHUOs%?G%~fY|"b4rTZ7VUNK:td3>W~-jRE恋8~6)HIIKۑɉ:J*Ä-R/c̏yNxW  0vႳ:9XzASּqiV^T͎5Ǔ*FEaw~9h4nԬ/*A7NS)sM0y^4#B apGzݭ TEi@dI|n@0ΝBRoyvI"he` ( kE^\dC.1k/B@ӭLNt%$y8_qVQImopϵKɁ\?5$]̩_UT F7Mk-&:cgxϫ&?mr;('S"[z~jX"(}>{Z;#75 粜p(@;r@3]ij285٠9)Zr80*UY` LLѲC]C_aN# Q%bc4D*Ed=U`u?SXKՇwOG5[irR zRnp4fn} <{-nF5nhNL5q**8'+)/[}(pOF2DŽ_c}::@`=eŪ+++Ihb0/&}*s ՟ zCY[b+eAx}"t Z:X_)}Mሳ*o.LN5z7V 7aW&s'w|S̹Ax>JSu^Mnۗ %|<8-j{B,1|x8 {Ҁ^gs!K.q<E:'Ga8e:^Å@_50M8Dgn"n-|qm0r,>}䫽E>jINp@'N6x̳6©R-Buwhe }ų!}g&,Thr]wtF~ڴ*vk 9)/.HC_ 3``Tl0Ka(O^掠%j9 PU,qן SD0Ujx]E鰒agibɵg']PbD]U@k6'tc^r%?X#Վ|WxjB& m_IY%ޮC ZLz3J]s@i ?ӯwsD4#"k.~ݔk|)݇a'.ֈPCSBTl)܆RLs`/r?4ğc pg63DmJE/+6W72@.Caݟ-@Y1]a?0Q\*[Z%Tc*xs*i`ߣKruwc"22(t۳.JtfT3>^CwPI K盨tQ/y×#:8!.R#?fn"~~*ҔE$E_->~ʱL;70<]wF f_`vqfV1E?':(_?;B瘰'J@@Cxlq,g;fﴝhf 1na#LwN~18SӎCu8Fbp7ql%y.\BH B,8Rj-fJmU DϚ0l oи|ed5[qPPL[.m?JRp-R2GݜOxx%)p-̏AB&&JA$SQ=e%X 䊢IJ06_~K nJ?ȨW;pSgUm$k;MuiQ-qI|l3Ԫw'N ("Ɩu18cRB~2Ir{!QRg4E*|4 _ :?W-Zf[3exn%3͟4\B#RzuxdVE))ѲypGR!> $>,e|TG~O;) moPIW$w?kb${7LwYȊy"(CE܉_U8ʿodgق:G`\[GqK[ٸɏ}$%AaOؘ:ڳ^uDa@_;j1DQCɥi.>n8 -f*NC8Iah,׌}CvQDZtvϢ::t/9H&EwZr +#*j3_焁O#8hZc'h :6¹eߌjP[ꝿ[CT֚ah6κ=! 38w肖}]Mv0Js25uOJ R~An;n/!Ph@S]`'$-~d/Qzyoa1{㨨f*oRǣ_-&b4 MMUR]~~ѕԱ%4Yj*yxKiJie uaN K}pOA52d\l*B0#lhgv~BlSi{'r2HT u '6s~`CA{ nھ1EVEt_&<9<+AK'{3 l;vwړ})~e1)usoyt_L\ (f@x=$cnTc6 }\<*v¡.I}hkg%C͛2-3$6`W( whϙ{YWqPӀ4n[*1>vd2 {CM*R\zrQj3 ֯~ zo 9'Dc\c|Qi\@:Fn(+Wp]o6+ Q?I^Ayn)|But6~prnI-v/8Z|v mӓ!#[nT_&5gbu /ۣLo%@̑`'>xB- :/"\j^NXez21Կz 00RmU@;cl.q} " W4`&z{j(JyM^7U0{.Zʠ7/g!g1]:v pg(]䀻Wy?{*phQSLsGin@l%*a:gϢ}ԣvf- G><;R\o%~GIF2h35&Я8QMH"W[H!L /onh&!!ƚQiڬ1_etkK- "a7vg7.V.<J ë >D]q:[CːΦtX\ʝ5M_0.΁DE+`c I5JX ѡDJx.-YVKS)q⇱" 8獛:\7yD+M*X4b.! ԇ$u_{ ;jD_-k_ʰ0mzlB_E4VTb6/^_FX$|3G=2=kŝmFh1x+9&L5Kpずw7}̯MBSHENM ?YgWۤf/l$F &c|b.apdoUczy%|v/>@JK5,xc(P>{MepeWo% Ӽw?"O1[elkY)jdI_"`*ݪJM"s7p!j/~dO O/yZl2F=2֮r;JuZ8\#g6U.Q25Ȗjm'e`ؼ|e.5մ #P\_<91i^{ۻ+C.qE K9&b$= NQa Xv( Aw(MҤ_D,,hY [6-Dn2G=LSsal3-[*vQS6y“r1p+ .b'MUr!u|u')Ȉ ![J c[O#`KlJQf־$3_CAv%}ݝmYa>4+,`[X_gH'r;$L%㴶OOtyQTl>nj#m~s&If|L6=$P,?.M#֡!|4*PtwkN7o%PIJ0\Zyvd@GkG| $2I3sނȤa fT{/#i̵BKDf V:#[wV u6@agdubf\^m :s( cwwR_/q|1*hioň`o9Mr C>^omwOJ N~m_[$u萰椭ޓ l'aEΪAH}VmZ:.w9-e]=vW 0pEWD@zŃ7q,J9ڙI=Wmq4|AG))44':?@#g*ӢOB p#5q\B4p-O+X|5oMdahtU_Cެ5L3-IO6qz`F'/o|VN/3x4)(*N&Wc5n5,ϼJtBi92%p/W,X%pq f _&> -!V9CN;E Jjʼn^y䭅U<^>i=1.Ȇ<%#ڜFD:o%v}&}NC L`Le䰮v+1$Ѭzc;zrzG;*A廌L%P3l36=q&Kf=)qa+$qXseFPr,HRmĥ ̯CqָixE6h:RPΉ&-BX9rZQ"%T}PFw ?>Iʣ>ipJՈۮSzosWXbV('[)NZzzJƿM!Y@\0F-j\ݟLVW7b%ՐFU,I`=lrOr=ØIRVًZP[ʐ q6u؅6SUȖi9g[!u;ѸzFF7c娵8lx%u_U)Lɏʴ%>sD)ySۈW?G?Hp\cHمH|zLubk/x$TONSG9,+ĄD]omtiǍa6o-t Lzꝥoa=rNUh)LTD¢8㍮fL(>l}䯦 f 5tYnF,J5Zo97>xhI]*D}e3ayְPĞuA*ډҥŗ~U(H{]48z$th$@_9qC*C7jp6o#+\dЫWY1c$d~΢RC˗|.:*sk\`ZH+hS>4k<t$-8B$mЖӵVZYlAQ^8Kmo-`P=gѱ eD[=$<8ϓVhd!C}n'|s| ~ %9.Lr{1W ]Ӽ2y +Xy8ⷮeNbn+\;tb[!u4lyj.Y=VL 8x 9m?dÛ l:?.הأt]&3:1N1TEܾ!2]凐RDUr3/(L%'pGUpxch mܺrj݈> %zoHDTSc/%b!%ahԎU:ŗD!{>4 gya]<>Lȷ2e.a5ƜLHɌ Xj qni%G?4 టb*VYXwtIv5{K̸PWy~=J+vQZ@/"D(# ]2e12ū8/wDe6CX>?ʃ+>[O/w`&x9&DXdyV!"dky[7' E:men͍˭adI~Ar^4h]0%t71YŒ{֨ }#]c.؅?%O}^_[v p R|6'XK 텟0>b@Q *AL(x1mi⇟ GgҒN-'aGH|u/&8Qi?95DNېn~rJ9c'a,U=/#N~zH\PA^ 6y79jtStlbSj&5(2>'K1 {v1`P5^.G9?䉿m&&sP5΢*`ԢpXy ? UZ:}nE5UzeaqC0V:j a~PLvuԚy.% #r=7iFzx $T/쬁-jQG=Z=Ex,O/NכIxYn3llMG̹xXL!'dq=uEejA]PѭAgKѡyM oZ3|/*C*s u Q5bV[q*&10ad4k39L8 My 53_';Îes1<1a)!"oy%r ,tIyNOC Xԙ4{]ҒC>/R,F`_-60;yOF=~1bey1M &4WM:1Wˌ a/օ<>{GY+6$첕tVRM,Ā¢o2^*M]vn`UܫLzS\ӥ eض 8X{5Oou<,`SOKl?&ǵ)SlOއB [Я޺x˃d05Zqݞ;cAк'-L RFJ'=s֎ޥzjpMRJ3!6V՞nĜe8~Pd˸8rEKkv!8Mlo_(!>"?0rm |Ղ@v.'2 e_`vx:,Ana(CZ?0I &[X-yG+^HR5H&^|1+359hw"%FSa?s1leR#Cz& BӧWB\µgxFiAQ%:e9$Uu=8WiXϡ5cAf $rkZp zYܗYQx J ƣljneyzZ] eSQT"Q4+zvx;'̈́tc nĺqGY%)Nd;e~,QQk4}`%9 *VP{ZO=Ŭ (:@r5&e mN&A6a=E>-)~ü|'mBFˠ͚9) 7}G\Snz5br&H[#jh~OO\{aQ;w,AKwZYD9x侻srn} :̂m}o|l?<^9@\:L lߋ {KG+|bofpyH~LxS1O +A=Ft=zXXK:HTfVom1r1NVQ_mvqEN\ua;A\k_2n]";ši:5 ,E`qߝ5H*[g A$jw@WZMpҋaM div٥!7yo>X̱Wti0O&%V%01rkӏjg.z2`4Ne7LXiX(OH|lA+tlL݄K8yA^sSpj( )OĆ2B/|Ix#肼 "9;)X<̈yU5G4O'xp `ꬶ[?R41\.4 w4e'쌼yL\VxAɱ˰mhV +'dg"0efE fS<=Z؅"9pZN!=./.Y$㡢Uy;An 43ʘeD=S$ z1'!HFxk43pP>\CJ~#i*Xe8M!@E~{`ˬ:WO"¦; ֳ9&QGm+^F7-w4b9:IVhc:IV+1Am6 In}*X*7 u20h0gJ2ذDcbA5-;RTR(: S߼藸XAW1dLò!#s|鞘dګ0Fu;Ss*%?;t<_Y;ӣ {5fxI&@?6nϘ}A;LJϑU|AN,kC՘BJ>A՗>uKW;rPд4<ړgA $ViT].x…VSHyY$s9mh$;GTA}l 2/aՖ8V#y&KdMUxkY,2tP~P}g[Aae7،h)3W$Kؕ}I]6Gm舩4m'A;Mĉ;|ұigt$JZg`/!i]`c33ѷ3/jK 9Hr=Ȭe\dTB[j{~$7O/9~tlmoݓJttB[uOi ',2ݘ^PS) `Kl )]X2@G5߰ B|\$Ixu[(qzC N@5]VeӤ7* z! ;3ZIO7'ɧDrz;th8`3i}vܩd Ћ"vVP;}Q"V$>V-M`mu&Dk2j((⼍] 8wzX hfR6Ǖ qW~? lPJ;¶e$QfPS\wV6iLW)is|bXݺ_ۑl&~kYie4v38]$tèUWDaDJJqu'AbÉJl3{m.Z;h K7t~LE6naW: 1zoWx@D1l4$olF,IL Sy"sfk%Wwby6 g>!+FTʤ!yS[!$@ D%HOI  Mc2h\T0/|*:]$:ܧi>F\bzk@U?ŘW:ggԀph%<$O<㓉"cגIzu&b pqst/ӶK8Pl%Q|YKJlpEI_)$0wTAx׉{[N>|˛6}{xbTYOBfq򪽌Q˲xqW=G<brymxlD9n-IM*H /eÔQ`Fr10(>u"wEj#KbtR0-OZhZw:񃸣MR>x/?R qpC+v! ldt8v1tm rd3N a4 ~{'.O yH00>~C@end &f\=ܴp X/SI.ArEZJeXKiv7@O@RARXD/>;-{q-LDvL)&: /&VbC eR'Ь#OoME>oyUcymuAa+5@ 뉑)seEIΊܢN v񱺂yge*_\NK$6a(D ;Rߠ躃?HXk zdR3pɥbz8hU,ٿSF$U:n9&D&h ˊ_TR[ ?hI̞P6 qJ >FT%b`DsG1;l͸d~ -)L՘d;/b:c.¤z'$ d &UdZj\m #5 cf~RHNhf`4/0(`C:<(hr|mBʃh3<lFAK# gvqbLF;ZZa \y4,* qG2s.:,}DGcn#YC+ Kڵ>47dLXmu@ yIo MF#H[Z䅆~~L N=_ o rV+xjRi`r#Op/Y;gKt"G8؃;n[tF)$yQ#-6,FӐVUaI-ޣOǢ Q#1yp=sGm*..՝J߫5=̶I?<})tYm J QNGa'DKr) |w:ʙ-&Y :Ng/:0ЦBRe_DN֭ 'os])ܪkk+u[׹>q[ yHra *uOwQ}7w  ^Ֆ p{ru?c;slZ>4w^#gxi9WF>,2jqP<.>{\tMsfyf\ iŞ49F ƖK~FStKk)C8tqf;i #T*I6',b=nP^'r}Yd$+4ɚ>xe ٖP[:3h+Vo*(CeRG&[ŗ}u'?JC:3Y]Θ)m wSr_繚l 96\H^-a!`]}ڴJ#N= #=lqv\{`V޶q1iŴRdm@% k\fZybs(okkA |^ ^ՔxA}qV=@Kh!P5T=ĸ(n*Dz ĜB4";N>krEQ߻L Ef]u@skBe Di_z|j6qƦx=n;A2ۤPɵAkW[#&r85zYVP\7U؁dQVVykz״Yfzt]N w-iS0d7wuy۠z:b'SNHΆ N:e~Qޥ㣸3%U%ie&*GEY|.H+>סa*f ~SҦۉƎf=^Gm@ Xf#ur_ v<x[H-/Nr!:ŋTÎ'ʮ)VecqX銛M3APtsZY \2,LB`6 d;z+;Uw (͐'D8H z`yQXNW= `'N[-wnxp@B|Z "hi{|֛~ؐ* cBihiFX[Pq@ϒR .i[K<mwDJl>mn(1 #;aW 4aG}NKq`>ߤxgYܪߑjhJٳd1'R>XPs|`MS\Bz-nO5 05qs <1@r] ֓Z#g)u#e|8S_c:R/"*_ 8\㲴@A'q 2iE¨TS0mh*ҍX4ș[^c8L#Ɣ՜9*98"X b,m'9y,a9-Y'E~u鶡:\9dgԠsH;˃XTiST \?UnævLY[DZoO3~oU&X!ϐu%ŦNsFV֡ň([&z6255P`(}_9#eU!gd~8cY袡"1n}FK^nLư{+*_"D'+mߪԝAk[QOywi ;dEE[d"iBT!&14B91ZNQ]o"T'¢ҢenjLR^DQ,q&! MT?N&DUPpv@m q_V,3h72a/1#c3ykW2y 8pJ.Qκ؁P"o3X nqyHhc[_z)aG[NwʻAF?p Ƌ҉h.-:nb3,K1PY[)o" IϴMCB 0 KsU;f4冻>1Bf|-S-](K`F'4E-d\7cxt_L=q,}ÝwѾq4 tr{g:λF79IPRzpwTx`j¾VJ0Oˡ0W$I1{d 2R%SCk qs\ӥ%/ٻ"yvhArlߒyR"腽V8P^(7$pZh~ּ}b~9MRNԯ&WZݎWpPnr %2]P G C1KaVDrVj eg F[GȒVlz~= })$׼g֤F@CY%׆7AM۠Y iۃ&;mAFwpw^>h$E25f]$(L(J9Us'*F TƖMԡ![CVh/i@r7荶a9+.5"!L+SriNJ;[,ݣOt^G"UHCu MyP󍫱eMq+ITwoK>:Zw.vv U iϚ<Ų:K/Sa|x(I`kÍ)LD{5\ IҚ XШLꮕ4=?_i( Tx ]@aJK! w!j&=}__:,ŶlA9ġ9`G.D\hQBt,yoq ԃ;j"h%IEE$|:(M݄IO},Mfܨ![EK`Egyfji VQ07S|~ǁG ыV'Ic_X-w{Aosm e;LkV0̍1Jkډ< J+I~w k  譳+DۻTv m$B[ N脢MڮrQq.8z]/2,.$?{i8X(f"֛Ŋ}ʘ7kXh-`{ !% E<;]H(ގd5E-7j? 4y %KO("2 {#9<4z` rO+F~iB{mnˋu!JI@k]=?h~: nמ=􋛑= )Iҳ.9i4|m\%cxk¡/@ O!g8fdu^YML=YpVSN/SaA&M2;3 ~ FΛ07'mh8%7~kFqAtWhfzEpRAlf"BclyS)u}qQDDuIZ':GS@̕a%900>+** t'jgUF{p1S`F`f9_@\Lتm1>XzQi<1I5ÍCHw-Yb%8AH:k5C9Zrb7/,:ƽ_؝s4+XJKqk18MH .sjw Je㤐 '[;gḩS 9], &_F94:0Uon3>c"e/ibn_gskRdKi%n0AsR{iz-j?;/_o:BЕ8\_3щiL4yFla])u&<<[WTfJL@H;ؑIӖOG)]"stA'2'vٿJBv AaJȾ5T5Yhde$XuGNƵ]5loN i$&cS_(8jV*3Hd\α( CO/1.n)rzM@ ++4;eotñ&j.@4d~4]/Y3LH[z;_cD!n!hX%>fv'EO`傐) (O>[kI㘄l) ւSң  Thañ;ŧJe.(=&DS6<Ӱ CX:r.-;d_:[xCX:ms}uAfǛ5w2W{t3Db.#?9HDNc\ǎUF N`<+bzĞAQ+e[D9̭@sfF A޸s4{(ۣ,OZ38)~l\ɼʫh]Jw^#kbh-pdQ:}K)U9K,3Hk]XۇFb<[S0V1G(c9̜AL)ii ޺FYRY&S}ƥGڻ8| m-G|5Os,/G7y֖|Ivt,ŵ ZsbvX&][G[+ʖ&$;< 髑ƵwQ;C4āƽ'S~_9sfA;'[/05nͭ-g1EL'FuM2q * _ c\#4|Y h9NSo0Mը-Pj--A 4wCWR*f\4?| Q7v xjT"tVWVHK} veP's$80YlzS]Y4jVIHLK`y;UYa# ǧQNYY3P;mg' ecv"nĦp敵X{ɭOFpGUys%2*!x*\HOV73؛v%, +~4kRg^46ҐU(?ΊmpCuM<ٲAf0 SGYyݠX>vo~2Nfd<*|ZRQ{e呶^K:ţS%I^hP9]`wϧ^$tKph&C:=J\<@ts E .̪%W@'?GH0`*H)UZ3;bG. c{=A< m2Q?ym$JYzM55)* R˨zS*:t6e? 6;KlfjdX8ZbqcB=ZŚJ&=f[prE -ا[I.0Siڑ\VJT9]#$-bQ0w_4̙e|kwGxUu+)X'ɚm4d@m8s>)p\vCzѪ-k3k2@+thA# ًI䅭V!"2ς<cпAHA[Xy}.36+穣G?!RVJ^?.fRTQxLɮF?V 8Hp1[nS֊!p0 B6gf#76R2i촽0uE 5B$[&O_B 7 l{uEU&m& h=+5ZN/jue'<,ؖv'K@N?_=^A({$Ʃ[W 68a&$^\Om'5# J303i7g *]y-ҍ͈PPAT<$ Xf!טFw&jݡ{ըisH X)~3~&gVlXK";'yha\P{I\iDѢ_*d/>2(be7vH` )M_+:28}>]5MWMg!(V -M,T3dYƁ;d(hNA}$VV>0|1X 3prYGf^."\IbJ XS{v|FFTJBĺOq 1[! A!P? rn\kr!IEENLQmWAg8IHPfS, "?".SY`pj`S°Y+ͻ[d) %f{Ӟ;(~վ{I\c6&vtظB^eߥ84 So"żvԄy'i')$>1wS b@8<`_lc[c9H~3[EStI8{^%SjKshoQ0Gr+5녈, #}5DWE"E:D^mcWaz>o`{EB"f,.u—!H=;_b-Cãg@ &"pI J&yu_}!cU/=N bi4x5%QѼ&>0*Yi%UjFg[kVfƿz B/|IO8A&.*[]eN: f" G %V|j#W(ֲ64©t)w1l/|Y8;}+;6Uuͻ#vg&o$uJ&ևס5|˜hA4au~LކtI!ѵ"}ݧmI(5z^Zn@3?$uBn1 J$ʯ.YN$6(\O ;oJ!_+c驽[- "|R DW5 R)m!\%AW?j3e1JpHwcD_"P~nUo0R%86FK^=q=n\,66W1#d ~`u?Qm0M!xul8lGVc]C\6,d)пRI9Ti$;k, P1 Sl⁀7hsE-;!lb1ej5t,K Q榭xFlTDCqd{ʈ~|7eVHv8q4R(Ev١K~*&GA_<^z:r<bBYXlpdWGQ¨`)FVu^r?$3r!w9=r"P{tnzJR,Q=g}Vtpq:̯J5^ dܡg6շ]ŏIZ/qGVM_cZMI^ϸhJ|;Ha%>UXʡvtc{Ԧk68lU u.ԝ/g>ʦ_w6ޓ|^BبnPP}Eyel4["\ 5Oy`i KZqyZFOl?dQ4b܋+N1"؍82PA2kA/DI>?Ygh\D `ΨE>' }/rIh'. $M-_<$;Y~66lL~~Me?gI r|A&[_)& ~lΓ./^K)t7p2 ChNd Lg4rm8~@XAZ^lz^`i >ZTW>ᩉ^Xɾ\?JrCh0]<fGɺ6k/|zA;z{N*D!Ȅ&)Gi6s\ҖZhn?iT$h!` `  5 2c9n7?،UMP M<\Xˀ]tIV<7OXˍ0.Q|?Q̽rb>-gi`3 \EH}KGA0"`d_$ {h ^ĥ'b1eg9_`A;I"dяnjUZ :5,e__e513!-g1!5Brmºgir1LtߧzJǀj\b+IVS0Uw+hD 4k[>w n0']2_KE_ sjJ(4Vdgݑhl4_Cߜ5^)~ dݍP*NAb\ ۅv'<'晫EF+ayЏvҤEwZ׹ B~ֻ%_'W ᣠ;5Y/eJy= j$gYΗHK.yJDa(s_χwsq '=5>NpvN8ׅ\^w{,z޻=[F|5n0]+˹5$7И[ ޔ=NjU!gEV꺮lC`#:CvrZJDTpf!p7)]x`,Ek,U._ ۓ -TOz/Aes8sr' eoؾV'`TԊ!p n #S'CǽߎH^T0T V)h@û*e0\uZol~> 4$ֿ[We}ѧaECyI(>TLNnRK#?~<܉fspZK/΢g:o:I_r凶:QWkO\%qTM*DO1E3GCIsawa 2>C;5BbP\LCOSgɔA&D;ͮTFRܘGSЎ8)I1@p|<[z!S]z:y*Q3N~!!#mq:DF uH1'YDjY_$ TV"LrJb}{db=iao*@!mK#xL}X`ssϤ=rqe-E.j3?j c!W-טՎ^5ةMu.RHȃ Ve2JcJ\'8U> i#`FXBLw$y䞣%`nHFw5IniKluGVq(7IA罫K(w£\H03{7W%V"Cy+7m}V`=N.]ؐre9B yL?G7lbXjG" >pfSOHb~}eSr* !3d"E"D —5KUS5#X]ögةCI?~{aӣ6}g TgAPp(#kVs/=9@m{=^vڵW^8 WѱF L/=^EBl⴨mH&e.?̀adMI?&dbN_fVzދVf{~HD',슸IdI O=~XMQ`*mǶVTNiKgO.Si\(\)7hte4~,夌J+ƾthЂF{kT#-SG8MRC~EGA33g#^ BgXL3ݎƦRS GT M3[Ȏvb'=LrUO֓١Rj06n#:k`@mT˅>|=_(Bt^@BDIkzaGB'W ^zLrA./ڸ%"XtTy\V(b0jS>͢.׃7ǩq[ u?0ljepg| z~5ȼ  gqʸ+Z|;vWC-uGyJkmT#nV@St̓Ŀg9t˱MmK7txCLZ:*R;*;j$yN^ C1IN[8 TgVʫ_`vIG\gj ג!ZC\G8aWu84WoE y+arLU|Lۛ-R(x$W$Y |]vȺ! 2`*/"q}eqǩsfM| RύSDyvZA0YiՈ.o#kMݍf\?ц߫pfD/T ](S$D\FʑMUC_mCI$yfoi[6֞lqZ~/ᤚ&2Տx`zIir^LS&?-x)m"diaS>Tr@dSPmj=C.ר}?A",i{-JU]x>J/=AZOĈ7pCSK+Ac܂ẩ!(^ý?ӿ GY\3Ј,idbaS4ZCU'u?anTJVm:G<#Xc "K=cBX_D^I wRGy#qF.Gj #߭f OxIãŕ2}aINnWEÚwnd?aS<hf۶EN 0 W$ ګO:Snt2&Mh!Sy >ќ!3Cq.&ٿoHgJpld31qO(/7zKW&X`ຌQ pI*1G:!{Jbu p#;L4F;1WWk|F:bouPW!H?84gd:#XBL=1tIK`~BC\+L9zi\"/G;Ö0%;oQPF)pCK00!DZ걉H`ښ>enL&bɆC_!H_8ҫ${ Q@ؽV1G%! FQ`xRz<-SYh4H?3d%0{yLo=*f䜔sCL νhF ? #nsc6Q{g%+3Hm;]\<FyG)x'],_I34y1T%c7WA6}Y^ao@. [W)=cU!81mzp ͢ۃ$о5x XxE4CKji5_֢I]!A2" Z>E4e kFUcæL"Ŋ!W\ɬYnwqE^mBێ16wQ(yͲᾃ)lIxr+#8QkB]Cx `]v@}9|?MK TBTsvah\ɥͺb՟{W2iZ:fӗ)VY\n-n.DL`^NmQԅ{c:ӷK7 v:AcΡ:NcYh4 7áJgmԮu/?PPCr 6j:YaSJSgE_SMֱN^~9c6{ޝ_?[,%"^;T4ᭆ`S0B^T[)\FR^)s9BW?AMȩ2xB|KHfTAu\[c+=Y>.q8} 78ʧ>'a y 9+7o)c((rWUA[F. O&+T]'B2:;7Z+8>nT֚7klwEgnAגgV}waRE۵ s0dBopLԈeXCϡURti,b/a5KlHP%Ög)JtoiuϙkcMe7Cc/QΗr>R6\}'&RSz{ {ۗyo!x6!Ugs^ _*{eOk!rl뵊ZH6 @%jD4S >hqaJKu@͢GF[S#)~_7Y+,m'ƨ5ҭW^on`@戣9 ߫'o2cGi Ŝ=29ADeH 믹s}D0/belwXVAZr%򹚛Cqii/[|ʂx!(dV/窊œIFoRfUPXz$X\ush |fVc9̛fppi&hwz kԘҵO 8Hd1aƥYt벼O 58'?uf#i}n'\ dGQ qo<P'32لz`Y*J[Srs@׍"Nĕr"b7jxR*/ѱ}uy93jܮ`cEfKwf >2ݣ՘nDH3RūX6$N {?]#s] O;o.I}ݚaXWhڹБ<5KWH`Zq)=87*hgx'I*&FD|BO+DdT+WdsPCXn{ųƣbIx$㿑=?4:XNJdFcypN`5~2ȲY-_N27įQGbC!LR]“嵬doCGmw eU@38O{p~ .*9FrgfPfpTv| 4.Dk,Ș$@=|}{Wwrʰausn[jr7m [cpnUP_:WMn3Idum.O>1e[Rۼ1CyLA@",Si>;Ak|\}"OGN2ƴ|p X$0oEW>rCoz.P謱MI2Q Jx"AB3X"ұAʲ̆/~֐q͘ wHȅSǎ Fq M}&6W?i& B\uX€]Ƒ`mYR -;R;dLpWs}paYt0<\rr"L ~: ar@8>{[PwRj,Pnr@;3iiq-B՘#$ybB,Lo= rfc5seAmuQmv%m DR?:yOq}[ GcMP3~85G&|W-A/dRR4Y!N_9*ʏhlV`+C&_e5,?ܡAWMUgaE`73J7ٛ6}] ? 7+LR%Y/ 嗥M%bF<oۢa!k u%Nr lpXyZ n!l*̂%- L̅ByXvg; W[O}]%&3uopލ^ p +iDAOA8gЖ~şU_|Rxvg)tqk" qօA|.dݙ`MDlqT/8b޲#p[_f;IصRex0` @,d5{VKUa 1'bũjêzayycErP^95}N)u-tN1.g .o .=j(Hqީ5 Uݱh͇{)3tRej+Mr*BcrW#@qМۓQJ7,Y~sC7,}`O!n>5bfe58Hj. H?FcFjw"L%WPfrl[P俻AT8#hhk 7HR4{H^ۨ: 냶jcL]dS~PH MY*yz tET MkڤV)`U̷|R( ۉfٌa1&>~저>aO qP(,a^ rrX&V,j#B92x *]* oUTu{ԣ'3bɔQiey*Ee!'_cȒ؟XCStkIxRZbX&$SN0(/nS NEKp:\n8M ̙v^o0mdu1IJ*W}(k'͖I?x↬;yAs=; MyPy1Vuu[u~gZ m9 1GqUߪS)SIkZB3;gk;iI\; bCefjۢ[bFAf,EÅsBL"<|'pM%N|Y!Ƞ/Օ/s>$ j)r tyؐƏ=l~K..%#mjͫRAKJ,dIpOJyLF[*Ӵ|B_sp*G:m֏9Sδ*˚H|ć7J=?KI:xT@#;~U*i S8HQ{:p*QM:=}%Hz<g,Dν۠(.9 voYOJt}įvq{ V֍` \[{;c/JU.P__:;P¸lg[J 5t>KD~'BN#(S@86u^*(OAx܇%Ol߷ !n)xA.F^~" VcuYM,Ije죓,5 X~OU .~o|T\ZVř%Ztve? unޕ:WDλjο "vV6 įװ_-mD* ?@<[TH1MHa,O-,/ HF!*L@Tz|WV£rCqk V.30"kCH;%iKRbx`?gE43ք:> oW*/Oaj,0$jQݟwt>A \S'8o=Wc,>d/V竗?M N2mk{c ">6tߴg, "{: T%3לFU7@ :?݊HHD}:nVȞΒ/5(#?ʏ-Ю;>*nn٧ť2S"|`J]+hߟPvqJdi5E/MQ>S[VGY4:2tf290UwTz+hlFM/x\J Ut(τ?4ɶ5xYOq_ҹ+Tj[4k8ČC;t@w2-@u> "?^: LC&!4\_j j:KJS謠rf,؁A&?~T]FUp?Jnq+_a_VIĂ":5QJXu3 HTHp]U6 ՠƣh0!6e$pursSE+Vc e5}:tsJ0 LPjTez50A)XYu~/Ύ"-7imXb 4 ԇB}.6-kϞO ރj9g>|&4י&}Q]o =5D'Ї&b uC[B/.3{󇼋j15d̙SH9/SaCYQcA@ FoL m$WK%:2URߒy9yJKQHqC.'J`c}|%fhaS "c]4i]&vbXᪧ;cT"e z>tI]ߙ1ܵprS_0.ͮs "|}pґč"f XݳW`IXdO&FWPE55 ZtOu~%zvewr!E% UIG U4X~*+r1选#kV=)B64F[8/Glw 6C^am}ѝ67y:bǒM!ӬcՠH:l(GM[g%PU!Oѝ:aاFrM#gq:H& WȔZWOzO9Kͅ_zDy}O:SppB^4.!X=-4?UAE=>C %bJA-dDržy,yzՃ+e6\"| izAsWY6XXl!3)T:p) π\PsB&{ rB% C/t,S 82aU1r#xգ SV(Za|<S .;̚IiZ\?mk;akƘg)b!8*r+h gn׶`cE9&|Z=o<u,unԾq*֌<#qXu.e%xdGJZk.jaR#O5xi,=!ŔY,m?'| XH|>ff[@G__kT_X!B:ٵ&Sj8d5:Ơ$JkhPY@Ѧ)xv;mIg. dzgԹq֌|ُX\MԷi0o]?6;|tDI]aMMJ!Cş;Sq6wV᣿L]ƍ-!)HX1){z7D6ݹE~ҍax T!Ia>05ÕCrri-cZ508,|[sVX+&z"e_&= _ $SS]H,3ʤ157떌yu2(Bya:kAtG4TmhC42>zƝ c#7X;:QdmͰeuSH#,`ʉg_aCm*nm[җ5EQCb+;t%F3OAN/ؼn \ '>2Ai"3ot ]ꣁpVK{F+Kb:$G^͋y ;qd&gCa_BNTu-A9[Q覞:A{XM]?^4'/|-=PjC.#YE~΂@%W@% Sr2Qm璙[=Ll@cF0 HlKTζdӾ,XCᤄHxV*ſTaIL^-2Zu ՔmmfRVm{\|-2 ކfAY1;õ(\sMzS)ʴ^ )^λMzud,fKwvl֏[6V H|wPA 4" 2OYĹ-yc* H[QqbX)*U*|K5Yܷ$1KLL/йî$NvLBBh.ֽU;Uh0n5fͨs|i]N~Ad8kMy G'af-Ls߾֬ucOiwjV>JS)ޓ(K5 6kT@Z,񂞐\~$iA](㺵,k~p˅VtTOmTeɳX¨i>,\2/t#Zݭ h,;^y#%Ty'g:e"eeZduKbY/W8Ю2E @\bxnlٰ1D0jxay.aR)ycfmJA2g ^uǥP*roh⿾?o mii 19nq7QxfEmw2i$stJ^( :UծikE-u,Qr?&2TCƘ#DHP>;93?uI~$@z.c̿MО4I!;%yYm]~s;QJPy@k ɞxp(wUi~@Їa9Lc_<9 .ܰ/M%~$Ü'4q, _ B71Ϯb>HݫSH݊rN ~x;0qvkdD̾ɑ,ÍFqZ7{i"@nVEXBkVa6#@6"ppr?&} +!S`!Nm]ڟu_S1(l z+%.YzɅAK8KwBr}4np !D ߮}[\ (2H"(+%}U#IXH%Z?׃@ 8TEN+'Wܧw?q%P5ԖoIcNV!K/0݄ ,xz~jeC1Cgq>!=VL|Sלvo3 i N:}bSx[86q{C03c 꼳 r |ґ-CY1lOj=Y[umƔ8ƘΆߤ1Vtv@;Ņ]H"K$&Ew၅a 8 lHe|hqtIe.;C^OgW$K(3ut&y P؂Zˈ5I$ Vr\ ckW,X&Jb*:wxw6pqՂ9jqԼGk\t&>:'-F@'©"=3 Rbl0t7_Ydž0&/h>g ?V)1ei/DeXWTo35ݽϕqf昉^Lb$+.vf[?Rry6̙Sٶ g F )dou+qؔ}펫x%옒nlj1Zf(3NIJ3~ʼ8xв^'gJie]cq<k:@e w AI6,*jَ_VG{1"x@"̆, (Jd݋ߍs/&4ث(HϞS,byYFeRcʷfƦj[ Q5u4lK*?d ?aXVNQ_*7QSLi4m|$ TȳgO9f]jn~@I^ߜG -w.r=NMF7qY;q!sL* )(K]/r81}l3t C~'!jM-6ƺAn4#]1j^0hZ;uJs0otymݜс~8L,o SoNr{K\F:jX֮fTo3ދGՆoL^J<(AI/ MEy_z:\1B /g?2K>fB(U`6FaHg$ TT+zJCK%))#'1;58զ2wk3;HZ e">#^Y?k'pWMu }s{̙fApbZԐDZ ~e7MuW[~iVlDCY0~rtzj}倘EwL7{οDyo<Յ#*;H]>W`gbuqٵCkTV^3N {@os3?z+W&9C=btDaByy'&@8`8Ԓyб*NaXT!$W-+D8!>9Bf\.IQ(6L〟CX%pxW\ pTxK#ӆh9#'އm)BSHWHƑً?U.ּLQ2_sc%B%dTW<|JkP:<'J@%ɾ9MG4>Q̏"G^W)+7L=78cXIB).k]sc/-Ӈz訉 pȜœ@n}Y)ϭcqWd,`8C(ol!*ف=갵L=$%؆lWo ©NE.+C5}֣Ry4+Ϳ-Y*ohp%RoB0afBN ~'{Ɛs[l4iX9Pb:ߥ,nM_NnZ/WBw/FnYoj3d.%.Fo iF[Hx-{ŵr@k``a"8'[oMpAnLjqi~R_UG&)ܯ%XVZW;|lo0WY 4Mxو $GI& ;mːYuOID_JL7se!FMj)0 JȘo7#Jʔw (< +uJz(<*~*5ߌy9:(umvQ%BrHIY Nqi'Ųī&&,w;pIfu!HH'1UҪrtAa r/{rn1g8!}So@6_M3jo.#{m:uSg~mOu{v%{8!:OB=2z2HDzKMCxǟz!]ˣ{tjx_ε'hxaߊx Pc{ip,,>V;KY/lrMQ!b'향Ձe@ ԺSv E~0ܧ= ՅGLF>ޱEbu٦ņtfPT`q$ Lx {0ڷW,}URҋ[Թސ PV\3qͱrM0kb<jH3*TH3;ig.:mDjL$X#tL5md{ R.q vl).,PN5݁$xjuJGf^h-J1˰}NrffjOKYCW X#m<{hoj'!ṫXd00+J?8U[a>L8*q\9@7tJcraN`o (1o%E!T>iDtep\$7{nf@GG; `Ӥ4ٯ/7w1qH$Vb1 -SeXV;F@:o87X Fvv΂"S4f6o,>OZi-#$P,ٹxk$e(9)ėzjrãh~QN3[\]$`A,Yl5T8CHKܙ]GʍN H&"$h7 FM[i#'Zi dK{]>@H ]e MQ@aZL4yiL(5oH`(!ÈL&}M^V"D{E$Vyڐwu̚Vf 3Wq.;tlŦ<" :JG(=ϔ=:}X܁ w,ըs)JnܪVȖr>{)/Xi.:_ȵoJ_ᓫ1] %T{o<6 O_9gƱYvF'нnū|m8uOD(dIAPW{Fn%'g5I4SÁ=ƼlmrP'|y|3ԛgtH˻vCl^@a{ gCkGGm)æͰǪL=z a ]w2-6"WLD#Ϳul`wٙr>6?@-פ4' bq *;Ě&+M$(9B<'# =EnN;t gY9RuyfW^e#:]9aI"1%NNS|tښE2Tm[4Lk%,N51hħ eTMK}o+4?_̟v)l_I90?sYp6~l%E6H:(8k~-w n)G||-H~xc4Eƚ4wg^ Y;d{$ F#ɷ"!z0%YT RxLρx4Q;+Llr@;w!%Jp&*٭S 2"fTZ8HW ǂd/N0(٪3}dҍp,whUF iqGÒRm%#eL&_}I冚x~^5n_ Ux11u&:^VJۀ Cd},v \IU6Yp3-톇rgODhd ]H.jf )s`[w9:S&P +-^rrc[j^B9JȎna,=;}Wg!:-c_VjViC97j2T |Zf?Fߊ68hl&2&cm\KN޼ f+CUh-_*Ҵ<#G6osǹ] rn00]&̫ iWEdA&SE顚 tbƎ 1v̎ q0qs;rǷ٧$!]bV-1SS d ;?0ilmr։X{\wUNm?F:X`4,kV[5HcsJLn @: 㔖0v/o uUqyZ=Y&Ŭ#jql?^0\ZUN|C yey,멱[I*~_W`V@gϽ4C'?j%d,;LM֢S$|ߚK QO@y~4G+L:`监)VdÑ-1nt T& Ré^ 6?5w߱]{"^a-NBsɌ$7yv3)6 גu,+ܵΆ{%2Gg2 LoFh!bqjxZ9]Dў"REEw9ƞ̓!yϤi!XJ>C&7xnѤWzK|'8|Ko\a$^jv3j:x ->8nn݇DQK ׸-6q,>j%,5^)`> Xu׫!5_ԖSR[o+ine#9=UA{>0sN8`IW> 3+؂:< լqG1e+kZX|mq.^%]7D hNiD\iNͣJ-=% ]ǒ`hZj#d;21HefҡdtΟԁR+с3v?=ôj&WU ϠsVBUdzT):^dbg+O\ޯ;]h̜5xbm'71Ԛ(BɊ˗x0PeV?GtעJD`ˎYӶ`x.Io>7DL SJB+Z#T|ġ2:Zg0A yΟPO$62/ Z+.tpHOI8\:bv "x3'-zg6Dn4p5f)f,Ub}B:s]('JeM1ɭ]7Zqשq7cg(.H*ҋx3uݿB^[𺸉ev)Hg-B[/efEmSLVYNl4*qy x&&ro<=̂4`B ޹:%A~OѨ Z(+Glx5(sqjF=6h !r wy״rJER=_!~7H?g3ʨ K $}Br@}*#9q<#om/`GTHvMqrt JQQ.!wHnIQ* 6(m>"Ua1ό }/˱C8OjfYc`X;y8:^WmX_ȯB䫘'-N W/ )b%n`k"r,poJ_'[p䦣P02ߔ(2c؊qH?6X|o^]5qwj2P7bB(gt@%1^m Pq㏢{|/mU87dZ`52J 2УJf֯̅|dJz+QPsQ/.WCD\w{a($uyn=7|iV+fT_@/G" \ĄCI2j&E1vW\bpW^F<[ 6C+| j < ߠpЅw} =sX,47"x?E;E17(eH߮Dur%gkEg걽nxk`^\*Hk> s~(+5>0JpWyCqeYk[!τ;ѧ+ןBŵ5&LR7l U^]4ҳ-}w&ȮVOS(5V;G6teg=.*  )`JpZ&dE_AbWi>$qPWuLRbg͏NNMl7p8w5>$py@Dp\j?yVYNELFOɯ![µWVPN) Swf8'T%:2HFOP8E<ȴNWA^RGwpKuD r:@SşK>=Fpjyݗ k{hF+-F<:a:(zG6Q3N6",),}F$DSn A?G&w$Y gLkgМ]J!”fU&Lր`m[Q:PY;n8r"JuCyNPqH\&ozjيh%z?&$|B-L^9W<{MГ(nrDJ^-f[ZXaID?홫ve{-i O7]?@ouS9 t\ۀuvPOPƛ3yx׮K yH4z'uV%phg0fCBcCծQc 7R' / t+ ;_䇃t,K␕|7!SCQQAH )x8ajq rVv__@$G`( ;$ovx`M8cö="rp\jnrpM:.:MUl{`aGPrg6'3"<7T.8J֕Z^<O[1VR)7lÞ2=Bt!@.d =.u*ybY8AsV((\HYpvW6d0$S%S]i6!k)}4" #=k@Xf#|Ö`Ǡ}~p +Y9#i r*u[vcӳ؁9AnTj4#n(&,+o lb6gOqMf.܋0K\I%uR}ٙ$冞W6&oܝt7ǭ8ٿlA l~Kc(4ЫG'6XO[19QA\b]JJ~} Zdi2^;ǖtejZbۻ!%/sYd ʜ}Q3#sq7sƠʜz{aVu Y2%gԪg T*yabI-yhkAE:ed; :[nnv8鵖`iR:m[ )4nuF )@>_Wlf"g"Hf54hXovu## <䲩wA UkƲ>@&F?/D;qZa49 ۾ F.1L~įP'W(i `?ԑBu e)I0]@v5jYBlL3`6ҩ \E2HoDAͭWQc5|Ђ,@WmCٛCǦ6!pX!UkG,f e'0[]dlIc|/U*D-wpmljSzDGLrєf1iGܼͩHldd3v$EKo$[&J6bďtm.\Ar_m pvɼ? Wv[=s~w%Pxq1dU{?$P]*~sĘc h7%xTC#l0;o eBR7D4y1F3~PposQS*wB]Ĉ?R>Bg yO+΅"c#*cD#-^~gJ5AJL 1>9Ryُ+C623[7 .Ϸ1^hd*"&JJ<ْoژdF{$;nYK UGÃ5Mh5ٱNWʥR[I9FCZã\= CM6?ё$Qlхgi뱱 pT)䆆ҟ V$~e00Ù>x6x\]Xn7*z4[bJ>g U_7čcoiR%jiR75SqE(79^L] O1#u4<(u6j qC/bh^>y1r1L`4J9&*pzVP$SGW#ުM:jwAk`Jo}1z2r1]s#E|L/u n_c@_Q>-ļE7PWM4Xnw80?.x}>6!s^8sP3N@!Ph&]N`k,{p>E w [Bl @T$(8)<'/Ҥ;aE(g>:g,Ft^\twؖ K /;3U ]B})B?[SAPRz ZPTO_ƣ2J,.0brw)6|:Sr)9PF.mswYY-ҏ1Up<\7K.C ׮&g_$ܣ{VM,ll WiF>T(n+}NCˍX*DOʐZ|l'苦"wI='Hp~dɜ ܍~2O!I[s;Nq|w 9:Sf߲xDc JXh0j´OyjH-hЙ9tkW]˲DhwX H O:wu(t *t4J(f{N3dQ 55׎O P#H\?Р:9i}TS 'mt1-.rh$+}1JMVV;wn0z4o-H01XSDïK eU?YO1eR E!A Un#~f!6g_LJ b h\hl?-D:Vbq t# 5VCO^ +f\n݌A}*^k[qS@d+g+2v\+Nbh{s!"[V淤VL˭::;<RC>OzS\/!iE3#}荃^;b5S{hi5η]S,j0AkY"[&drY}"%gqoIȕen>ov7 14V/ۙJGM1>,I,3vkyiPmH`=3:0=+SOEӳi\Ikq(Vx'xO|Mo3HmJ8Xإr9P{gB&`UCjjn/gkFt 1t ri%!(Ԥ14.xԱ'tHA ×rJw$ eVWއA ~^oȩo:=>0X]QY*Ra Glسgo03XqlPP% sx 5!:toaN"hi*BE)2U,+ˤ`pbRDpGpuY6g8䘤bZ#Ymyù)gE¸kʃsFwDoa/D)߯D-`vr"^fW =j<<]q 3ouR82%Xj@p>'4ʎB K/UBc|N{5zr e<]ML 9qK lxf)r+p\Py/54T!#?c4f M"5F!|N:qYKXioQC|8{`g崇Ň#`"qf`pT2eD6g4hhma5rbSQl98r~RI8GбgeLgH'Z~&w5";e`$ c {͂v@[z-Y& j0j} 0`+뭃̗.o]KXbaAlm\ ^t[vj]@gq0Bdj ITi&=M*CZ>n.CRCxcHGC[}\zȢ)/^"[r]ˤ)GS7 /W(Kt1mظmi2 Hʝ=-h_; s QU;&τa܂o>lb t$۫,*Ҿs'6F|C-rX򋶫鈿Ai., ӱ{i)De:W.A8 SֳA|a24G($qܙ6 Qu t' R&c*$RMKٕ@!i{Ty!T2ZĎVukILc֛h$Vtlz-Ҍu7jU\^? WhՑk%XcC ҧdꈐpդ5Ksᨔ~;#-^ o2PO.oOQTjڛI 艇#$6{F@kX!U^AtenuoE|o]Tï63'_PW胍y%+WkE)0 prgxe_IWo%GXGCWI[0CN$IȾԛW9C}#]%0SWZ\o-1Pa@4eY.> L }2&A c??q b qWZ(~Tncy9WU݋1w׬*wQUPzi<: b=^7fO|Br8pg؛Pl9n~o9Vv=*mwȵ|\ۨl6ͨvh6g9FVx#7[wo+ J虔_!TI< @&D35 Xb5Bkkp }v˽ͨrP$:a%㧓Z>AsquGߺF'n/rt+[KNMػJjN QD g6ؤ6Ȳ~ɰM[LbqMV7Fqn-1'5X3Nw%g.,đ%`QJEq*?NҞG;v>kW/9"YZ jb2c+EhDKC!9me_d1";gr \9bE|'0Km|n2¥]KfVMd3"HHZ]>< G X)RO*>h??m@'3!)JMn m~N9~f%E™HPX]mn=қ9.wo^}oYWmԡ l,wq80: Z-!<옷Y?[5 y#C]ua;( M `~檤'Px ~/QHDEǡTPn g@w6S"\ą+_:_4~bYr=YY7Gn?X>R!jwDy5 t0H`=Gy,i/ŕҁt u:{Iznfbf6| U  SD Ÿ9%p]k׮-᳆Iv=&l" ue‹ގai t%Merf&bkv1[Q0beO%: qNmX@S_4*ltn>΍7nt?*;w;~l'i@^o v^`x&:axv@Kb}zQ͵ ڊ$Dc(&~^_jVfeP<&^q Jpu֡oğyl<㛦ǚ_MnhG],|I^ /l/ ՞~3"h w}}KL#1&T;fk܎c =U7͛ʶh(  KvDEWi$eMpl5 8s_RK>JWu,d֜ʼ&LcC2ī$vS^U)|x.(4G:ȱodutukp6[o(n\Ϡ3}Ia+XX PXzXp7t_W͒x<Շ[pG.U:)>"~_"U \ CLw"YKv7ȴȰꏲ{]6uhĐCNh0r '~Gu&QOhdF]ʌ&<0ESB8SL %h߃MPn$DEɬR52mcԄQ`tc8tZeK * Nk|ڥd^ou1H1^o"MWb(({wn)oAV=Ž!w-n mS Mտ_,X4Y#@AĹ Z"xXkzxwqip#y)PMjBJ4k"~An=ELY$U DN"˄H>v#l %nO쳘uߒs E>׉< [#ĘCZJHd$&"2= Htwo DfH4+s8:w5o$e~/ZqQ :&L2@ {RV^,d-UˑVD O]}ʵotĹ¹g*+K=LjΗ-)anfVKҁ IϵzLԠ5q\^GB =i-mSzYrqQtRe19E#AYM-X]$ x8$LF]z}N_֪ gǮHF m]#tH)iAi]WmQb"eFo#  : R;YǙզjq0ROp"C6D! :iI,X-*$-m-urh*/2= /UԆeKO2c]+-uXgPOP#bM MT$;y΀7ʉ#y26CJىMj#mYΣ͟*چr\| EHʱUQhfSZSO0O;׌ɑ^?'u #ee5!Kjnƾ&V /m2Ewl<[ٚ.>[/fto~Tsrf&|k'c)^ |ə;oDzp:u(Oԡlz%|xH1-qrM 38j\GeY}Կm(q}|C/5'Ov%x0O\fD,e̦Ί, z0߽l?ۖ)ѭX-Ly' X 1gOFS5=p!…rr4^ oSp 2^\% wq(;7D4qq.:`i>ڦs=v~HK 4Q13e<&}#ѵM P^dT[ES2h~Q`pbO͢xPR؞H2~tx:zH#U/kA*ATRiI0' v @}aaHHWb":ǽek8G4wBA XYC+Owvȶ(y<#ฑSkal~ ?Q R׈lk^3+lnǐBZԚE檇-}Za,(`,W^zFO`_*7X 4ot._K{S3+qqLڏvv^ H}>[_ ;ZOpI ,PEHCtXg:_+1|RY[Jt Vq2?C5~5/T)MLIʅ5XX >ussJCgH^\>s$tmQ3>JAUN+rt 2G;l J2d#@+UP<-0@2mnfQ&DF㞂_B[UgϦ[>MUi3^s* ݝ}x݌1!@zyЬ.)o[@qvv<`zoR+C;\+K /H+11>G(5UJѠ /E@d;%KFUf}ǚq0GJ}:Jy]ire?a |X/ZwZ ͡+|LxMȏxA4A'16 iJ J:$DǒMzw_mrIg+pp3$R}Rsw"i'}_N >YN)J?p2ݟކy@x~nDu](p'% /]dћ\ ׽آ<ޚsgt$m8Pbq!KY;x_-N5C(Ndzw.D4XyoYB5 kX~aLL$o!ue4SYʔ<pT܀:o 5qԲW\Qu\H}WgSKQ Vh|V>RX?F/{Ռ)nlPkv5{S䝑zw=Ḫ*RUx[b20`)c 2P^TJٲ0t^ SIWk1WдٶccC>YDZ b~ %*B{5%; 9}Ͼ/47KA|$ExB ;9nmt3/O<=V$,BR9kx܅qoOkԾRSV9VhVQ$nB*~t WZI%5IeyFL\etwĒ lÓpǺMȨ>:F!8U$Z텟8W/]p6ץ^s͞8 0dp)0幂+T]Ǎ>eRo2nwztiKzUQna71֞ͽFœKXT;|n12B5۠ٲɼ)!ܨF/EώꩇƘTP q^k=8 ⇱OnuT o9A1QfM$mT{Q)xqevMb@ [\WRxUSʷp*3AJ6/;v[ ~,rA6}7J LMNL] -%M@{q؆U5+^s$ `s8u&rxlKqMejj?M]0̽c-̧wlffmmy $}}1fE.(K>9+EBFN9!ƽ h9b`E-<.8iUq+3|C.ƃƯ%ʚaUI<"z"״'\ ʜ=T77P8׋edyvj]1s:8֍q{疷I]!<^R9#>2Mu*4Gt|dyg@Fy0Mbe_}J9JSrZPa7Qf]y"U,tjNáײe0bG.FI` GEψ6-O7֤~+Tqs M"3qG5!x$A@mK 8Ccw^Z5]/J)Ncs_] =ZU NCqH~6P!|dR= sW z)IC_Y "FdV?sSw$,iÐ'F7jG6#x^)w *Y^$f+0PIpV@#uGJJy+Hn2ögCb;;O I7ƅ,Z5#n^}m"#D0z^ !j"߿|P"j|y1u|5XR]+0^)I;2S2,Cj{đz"4UW3_\I~>burj-3E21d)_Yx54QgL:.DO_.۲n]I&pdexr0sdNF54 Ygj(Mu^ bx7?O)0|L & BS6x֜ʽu@ plX9㣭$nK? W_KS4Ci^xtʜ0تzӁ(N %f[A .Fs\J Q >zNuҐ 6 (G7[iũ2t;10nBp= sy$Fesʕ*aպ7lP$ [n"TB]-74 KJȩnиuKQcպemצ@e mKT={` ,=lSDEU'(YWh%=>!~ԞJ[io˹8)(NЎqrgw[v0Y]dm[e+A IҞSh̜MN0EZ+SAטKb"S.RO LZ,;;O\w,JIz^O9~utdI߫=-@wn֫E HfP1SJ Lpb2;#ݷ. k1SP1 :lDd:艱 ڂ]\F!xcC@| $>Ļ^|dn -Еng?[uAkmOփx3wZnU,(;q_L[TDLdׇ]adQx5>P#%?Ybb@[C zӲOQ6Ab[i Zƺo~{oj]*V/aUB ׻yh#m\ezio~K;Ws6.tl+R=*o8.Y@:òӿY,voꠃ,5soK0bFDkw}9.r[[a^#AAw]b@^!Dhd%#=C.x9j'4q\rR Y^,?%eNMǎO|+Tֶ%|mV݄'9mXTUq@*s)W'A-J^D-lBTnfc@p:ɪ rd44VaTZf/^dBAb6˽=,* -+_()0 T:@ݔsLUAK56[eH]ɳB#rO<{}1b>~)A&HRfQj8^r}læ\5y3eYtO}׆E+(N/1/: *yʕ*(oVO􉾅YW4~YTt ~￐L@3vB6OJ80$Q)RNҾ}b/y@Q;vZm^PVvmXj<8;QZmYhKS.J)nDxnBLP7_M+դxI1flN"!U<5D٬'5"@_ePV^̞>9-!;n):܆wJfɶ֚*%Q|F:68ٰԜ@D_D w_ YZ.25skB ҶU*OmZ3MA'j,( |d{8ݑdg `?!1Y:Iko"BFnJ܏ROƋ0Q ɓm.mS;Q\rxOd%0+Yh2 f-nV/l"f<ɢ/{f*A=Bcҷ~⑐ a]PG9yu3lnǭqVб_[s@[Lo!Wjh#~#螜#W"h#n'0cyV8onRQfA%0i=c͠~8;R(y?滳֏3hB~sN TnRK@w@K*I6p g?'Ngd ̒XEutlIz' )"IV!\RwlC/hpA~h>+M)-C> ZOleT>pl YT3*/d$ D@Ef3}cy>D JfнsS#CjQexnadN 5Eg!|8tP騲%X qdtq&7rqp/chE,YN*D9BSh #;%obLE'm@I lڇ{8U&̞!ء{`` G/Sc\gs+vuE =/z&o>2ti}c {dy1]KY r87Y[X9I d6+D'.Vkx3+7, \q;~X鵪 F vkuhh8 hXq~yQlc |/ J-TDf#f ]폒9쨏wIsxI0zQQt'k"=VPXPM6U| Lo?O%͵brĈK/*_BP7)‡9Ky)o>@ѷkXi?C!'m Uj.O2:B侽Ha:wPY 6~ۇDX' Ԗlԣڏ &v_KI^h'#6*cץ;ěr)_ې?elxUY`2E)mL$BWTJ)y֛ C<2^"{^T躡{Ϋ,E|s,K/$j m4Tn>j1'HTf;ug7:nfFxGkIy.'B#xe 7H% }6}BHlK"KpwH&[AR2[%gN-zm Kmܛ.˩Кnʓ+zEkITo)a~rK,/#vd %2! cI9AQ| !NL=L_Ì75S#j1RP)1v=]54i#]ŊٙW?:'Mw_Λ"LQZ"a/^3( !b$G+$oDy`S^W'' ŧ £\jnHgy)FKNEAuT]+(byiW l=ui cܯHTTTÇt{)1s:+2[k+*9V]e>v 5^A϶hqIR$!ԃ;PL2kD6)SJZňC VSHiU^?z{1MCXα7Xk\lᅱ˝ o}tV"#E>2 xU@HGMPlpZaJSkf5fG5_fǻA=ͮJI?=B +@8:DIp4n7 s%6K47Tj`RW!zeWySh[Y)iq2Y&A$Vy׳@ps9i~/_^rV&P|6I/y̡'#+HV-gu}"X?@*VO! vWÝU0«< vVq?O~BM+ 4AF oLzbVl1mxKogMԠiei4/GۊBޫ:;9/rΞڥ:@r=;4(O|=nҊ]D=#"WeOݎ$'0 P "bR 3Lph@cm Y5 ,c}'RQ h;>֌rDI _m@2.VRm)7٨ JvxpԜa Bޘ5R^"Y2EuM`4Mk?aJLrǠcHQ\S 5SLzXtٙD =cvdF~5m[?*=>%j+aqo3 8 S>Ŵ}.MP6a$ZO Z#G10Z!-%rU:f!Þ.bђXedAXGJ7k\an_ѐ̘f8OKG4 q-eÒc*`"5ܯǶ%kc|vlB0^ )! ]#cu=|g)E :%`FI^ATgv܉L6WF5 RmLm;9|guڂ~Xy0%d-WWp n{ucQڇBh wҎ(1>0eM~(BkǢS Wm"\C>!;?JYVF6TM&A]\! ,y &X{縭Fj/yLl (VzXx. M ,;S) "v?mӸ 9;դ;-TP ~u(N[|T:" UEgett|ȅ'kT%݂ vi~HGHE2/oI˓v?t⿄SƏL(MiAu@ky&RƄo7l&ɖQ@Z\\HVZv %X^;tcF6Svնf\tIfI΃bS-{)!`{FNC!u$zz_% [} %[omݭ0˜ݭ~32 ΞϸU#dP/zǴ5m;qLʶP믵묡hxi-x[p`hT{t ^Gkm!}R.NHx+nOͲtNsIRܕfvC;o2䳭%)$Մ X,\?.W Ld+ r݆h85BdN?3Gcy?CU2 4yL@X3ՑT_`0w5UIJ4}CI&|-}]/δQ"f- }d_QPJ.j\Te,'B'5L~UpjXܹHTi߳C@ndE:ɱޟ[hY4*HUC4V 9݉*s烒q#ZlL+$}b7nuѢjcnڬ+!KMܵM2t4l0W0噋,^*gv'dM+Xa} |NNx$ڒޔSc;̆5R? nB.]7%h#rV 1~=}]%b/fWR(?-x NfɅς]& G }Լj%עP7tLjt(FpHZ2뚽ˍvQVvaMo+ 5"L`U]VVHRI?`{U{e@ 4P]?3Nl H.F;­ U*E8+쌱D6&WWT`~)‚5CiSݼG.WM|C*19؎Z9L m4f= m12bcrNr31CSZFddz!ybx &C6~6b5l" m jk,joS 4&ظO0RrcØ4۴4,Xò\BU^\ߣ'_EȚa.^g RTߨO &SWgZJ V9*ga:P%3rlvTS `g¼ 4."XN^S#+]LuA&L+{p;F-79`"U;2qQ71Fv2= t6-JXx QJWQb 3:]xd>M_Y|Z1X@֕F.jy> #?cvng&IX&DhR̾ov6iܹRT6an50!S (`)݁:llWO"oV4SoCwe/j2t^z1v=mS4}.J_#k #QU{ZU&>>Dr?NLj.+MwRsIfOgUs=/W3)hm1]p _!`\Ҁ؜3Z݄Eg6"W4!0|o4ii\ V$!bb8ax=~zj3;35u{fʿ'涎rxtl/ 7pwF3rK2hOAGW4GkK-䛩'1E [.m_ElP &L'ywhUE&XGJQ[Ѻ\^ϝ߹:7Ɉ[\bO.,:-(ڧ8ɜVӆ@,7V_. ڶ?v莰u(q>ǙLRŨ:pCLhN s#sh ;v7Ue>a=00Bv:'; C;4 #3rA"'83mȷ3梨gR% O< i,#O0sb8Wbjͽ`F4<0g.{̾p;@b!uͧw:ml^NM1gt1S[ սz7,B>pG;PF)R4>\PHi1PHǜ3T {[죱JP{+:1R5:KwlNQv;dHJJ-I2:_K߰ukN> m $Tu߂w|p[5ˏk1iF6[ mz@l=krme 'dD&:ό^{!%iz3'b;/ 1VKŽ#JbWr6ڙX$ Տ䄧U8% Z4[x7 NZl@3}D*vOQ^F=}uwbV& VEyVΨ*֕PVhu ±lBwp;)V+%m\~u$E&{q鎨Ww׫ⳉEN1 S(mtU|dFdo+a&%]]kH ۜWpVutV?O4AbXtpVccBs{R҄(tI/_Seb,c zPJdWCs$Q0v0f{9Gw U{>/ l(&fٓ *vt3hY*&B~uzl;3kTr^ ,7ȼ/JEbrL&"ruibnyO}-"[]@dL켜B.[?r|3VOOYYWv@_Fw g[EWvȢ/wѨ%4S&V\{lnF(l" 5=%Ͼ]bIԣH}h{ȿc5dp֪Ao 0JQK͞#fTg ґ3R#{xI@.u*Had]ql4^:B/z,̹TTcY3u=w*PqDb;?M(4xO7h\.G,c;M\cD,)m&dk:{Ynҽl*'aױ-5} ܺ /gqX=9ܙNHX)m:P2l!w60r'*kφ[%\)CP T83&Tke JJCOߩ˩HAe_ uz@εLguc=2=He|lDbх)o!.¢} -LL*B_`ڽh(/{S ` ۝aE œQ}S)ve";2>l;kP?bi3jьgR8gQ 映 w5W9;+ނ>J?ŒIc\֙yvzpPKPЮ6NK}W^_+eufIi=ԿDW鳇&pMņ-T&AfϹ*4dlrSړz|ij1;%| iJ<>2`rs&Ep4@=Z>FʁIgq6Ҋ L1:6$m^Rwc&Z)X5*PVGYd8%-a>*ꢘjU0#Uō5+PEX>}kh.(,,}22DkGk~ߦZ9d҃:n\hH* {,Sm@^3[5KWT^sKO|8ۅ2킅p(9i@7_G\ɢ̖WAM.߰I*u/g*7 i*-Wu)]לZAt!bUV> nۤ}4IRF}LV(sI)<=wx$߉ScXp5+W^oɤ& >PN#n Pu世O #,vehuUpK{#kh4C,<#Y(TN=5MhAED:FIƗȂk="oue ӝTt=,t7[lQ.d'喬ܞPtom6 }j,UxyOZ %f[ΚAxA#:Wߧ f}$<#qyۣ =X% ef">y/KP=XcxvZs!szv>Ne?B3}USdV#vvGz %Cs3ު?8j吒^6K{n+L8v, 5I~JTp`>o|IaW^z A 4y,꾛dmi6kR-Lwk1y[ &נ,zx6vLIլk5ծy̶)8F8Xk:pK4 TV܈Z n6DUHYeV";xTr2Bj4ťHg{*9!9Ќ |Ed@reIK ڵj*lq= ҕAŐM>8u နt垙A Tt_&o)LDIRpʼn[SnԸt_PHȨ˱8ɗӗˑ Cn{9Hcޢi>CFזHv7'*upw:P9UoY=)kI2B`d ZG0buWϓD.TqR tR ~K^ .ENbCt͂{NL MS9kQh-D N&yܤ`P%wPXIC)_ځkʫ}1 /H2Kdc K]me8qYbgPg^VWB"@.Ft`֬?"@a_UKsq5ٸ`.2)'|7;iWgpJU ~'2CR9(K`C ۾j%1Կ.-`tBkdz.~2sQ$)!}p+/O^Yn2,g7,O7” };i ;G,r1 +4' Y±(1\u߂x$$j1kVE=@K:zRϾ"`h;Ϻ0&G˼p V*ErѼ2`M_b  /qttc9Z!P\|,L犯Tz29R.t[,caR~[bCBB{=.1$%q[MN/LﮫM[k@a!r B/kߡq>JCgIE;I\j]=˄"/shsUN}2hzo2MCp:B ?{-QÞtɵ!/B`86r\V h8)coH6s/ГT=,}ks*Mpf45׈R5>G>|PvTSFAq<}6[lfa~k&7s[/XlO^$vn/!M9RO˸BLCwAG'e\ۦ~ұ6,wp D]ɾӀ*LAC,)@\ K5ցU. ㉈LYN(oeOb/=%G[%r$ 's1"~׮|L@;6M\2Z4<AB=t+,H*h#5;G#1b2cW]m7bmu17WO㌇Slu0@qok;-XLSQ!\]FWbzݳb-(Ӭ9?BDf |`_%)eV։4ve5s40 kJW͆3!9 £Ym|O>:Mn(_h _7wGHRC߮duK7PAZI!{$Y^9(  ,݂õc>J)PKϽ;I=ʦCyu)qTpvu]kī8 83O]kKȕ* HßEriUKoC'#FpW6؊O5M!-.5p1hZ/1>`D÷PGkȢ] yNmln5];~0̇n`芭{/1vhQiˊ,:R;80ZxL拣JL fy~3&~T5LW?@u;RqkN5Mw0∼jjrMwD2:f?`C%ūx Dm2 4{!g_~5U+>of`6L1|0N$7 .۵Y6ƈԵV#}oWP'4&ukCv12 i or4G3yRYN{! +mM:󧷈_2W(ur# P>=d3q^#avEY Φ't5%P[e~< e;dZ 3yEsnQ~g.mؽ6[Gi-˂o 9d/Ws<6W'MoI=sƄmȭ| ]!T(ȤᅅdF㟬]{)=wggb$or]p/fWPObULMz[:Bp,3tN *̀ 1jiɽQ9=w@:_=e0/2-D 8SY2?ږoq>p]Fð _sxlŮ,/2ᭈSk\Wۅ m( ZIt)A8ozb$\FS`lJ]eThS:bQPJVH6.g[<~]Ȗ^؍`.jJ`3r.6S?E[;eV08QXE9 ,/!^ Ik!bw6ZEpHa٠tu,Ķjơ>hk16 břwc7w& }_8{5@k=ن>`J~:'n֫vLqRr3:) ^* N F-X,2M(j|*@c) Fc؋En4a7scbƌs} q0O0 @Ȋ\(B~|8ΧSeM8n;݀dx5KՆ PS|DZAXը)~ъ_O:LJ [D)ܕZ2Ho:.iJS aTL*U{c8:RHQ:P[JWV$Zsy1{3_ny&(m,R[tPDK }q:tbln;#T_ Ť-fÝbxmn: /[/Al+ zQ A 1?Y`"~ ]cps}kc3i,L[!-r^X:xuf+M)ǯ'U(s}+w8>(ox7zI8N\f6k$]ɯ̖'*Ͻ{= ˫_7^XJɺ⩉rqY?Oeȋ9yƑ1h m=_ɐ{&ܕ:xqE` ݸC؈d%m.QX Bz|_/npݗ fWcnHD \U@̍ hyEU9+)TLuc>=:7UsUl)*<&,뮆. ~zUgD8 w¿B"@4RԞGLT/l?8Hw洖0"b^%xH(2GeUĦ@l'I @12cn\a0cw^2oxt[0xLP46Wuf|_8 O<&+,SDQJ ?sE|zPHN\9ŸXJW9Z ]Trّm"2`;i1a>>= аWx*#dg1 ٶD޽"@_4JӯG^DfFWUE$qxhsQ.B_t`Bڸ6^ _ {,̇՛a*QfI?wrp@}낾ڵv,N\S:~I3K:O_?_pO3*~7cװwפB=z?7/_p% *:8VFlz-3/ޒJvye0B2sHFs(&%m$tt MŠZUA~?cj;I4;(ɋy, FIDxQ ^5ZݜwaeG!r{7CY+mڙoޚb^e/M }^X3qO1zrD҆ Ίe~9qR^GM9ˡ)`]6C=F|bSSEe@^y?JT6 Szx+UVZS­J^|:4m?:Z;..b0'$S\/nQ*'q 0\hN>\Ĭ΃޽ZC@1:M$tU0̰,?j>裲=T "U1׮i$g;J7E%Sh!/]¸;-N 'G°E}4 ͛p ]?aQ L[!01B;ObNHWp7Q|eg^/1mQ(N>5fï. sOkf<> ! aywz~u@YbJvT? ME ]*s/;K.5)ݎc4/KC+E!6Y[H X9ӐRJYc l1߯`sFb ح@TUUŠJ%j`wj.r}|ޯh}id4{bWE4pEj+!B)"mKq< a76 woT?Xj*t=wmO7 WQ0oQzՃ=DWLU3aeNPAu\ o=nn`%J-1^ne =eͩp*:z8jp%qD{ZTC _ &C5{-\p1x_xs`R.>`#b 5YD﨧P[C` ;daCeRs#碅t$9 ]?-|Yc[yjHӎ\غGDh12D6cEu E*Ow Hl{vۭ, 9ldHA)3Ih4^[^ t cXwR{̹d[%$q_kb%Dŧ@_^@3kR/{| X*ڝ5h<+MF2+C'#M)~i?hnt[\J'A <_IӳY4.M귐AZ' 9S.M`MF5}ȑ!; "4MMovMU!Dw bD3k9":H_tiEgJ#pm+WΞT<}}Tܫ*TIhWw:?l7~K-l\zr՚>dl$zuWEsW+O%Mω9vkp7 (buQùLa +pJ\-}c3wűpRHxmK@ɢLTe[=iV u!d t[Pijbsʏa,FwId_ R8U2dDk>8$P" أUQewVO۪Z^ 2+@ G^F_hJheqc \JT 8*BҎn43{ vp3_[W9tcn_r`;^ˈعY,pr]All6{睄bqS@6Kb# JznCq,2u# eO3}5?U9O/Z5NYwz@͠QE<>+((Պl6Dmv.*s4\L=486giሸلIavy4HY+[l":\<,-/sdu\N-=!/}&%5Z|23&0FD:nVՇ*6]aGerͮ)g'O w\euο<ᕁ{s#_t207s-?dЅj[l܌bpi`ToJRּ<3ߪXo*g#0I*m[hcԿh+9HT[ qTmH<3zaŞSHKjC_q +0͋[#|̓k: ~(S%е]Iʓ,9އ(v?9У#JSD! ,@*?vy,]u-qQ0T;aOv(Q\c:hӽ,@֭2Ml{r4"xwCKM`z_v} ,/`?,+%Q:/4)=0k9ios|F"!}?M@N5< dDs ]j`I((.ø搨px+1e?qvL& O9ɭ9!@%dut'FGT ~mAgOTkd༱$*"8&sGq0ue8 jؕrIV,j.\2e(YK`)_J`S5=}0EN22e8x٫eVhܬFN;Et$;*-?O9emK*}7 "%ўSZWp\ʰh=tK/jĸ R+dt! o4b@A*Z@5 Y8: 6&X Z!YBN^Ԓ^=&yRF%?\3EI|P, ~jOMtϢy8At5wbi^+k {(2P^]KJ)1aD]]pcxoI'jŠ,kr/b&ġKٕG=Q29ZZ!t=K90Y Z8,c,Lg-9 I-ed벷BYO;KhJ S=N^8Xr#@Klpxd0>̰xZqڈ%!?^dy<+n~~voc,1rC}U*Ul4;hNoR=Lo 8Yj,Dt=3MzI"socrny((ӌ8y\H8,-A] +~Zz~*əji}oo|@^%ny_caŘB 醬qW\ؤrf {s/> .~NQx}[:VG gB=Ad%OYXU+шji~0quu9zP|,"ҍ&_/ګso> E"r[E-%}   lQօR7kLXqS@0\w<?62zy8wT~`Z6o ocoMz߭u"!/5.͸D'k5@r"Pp䪛41.<ʱ,-;׿Lǻ(6l;,ݗ00! H`n*DD87M\g%5A1 q'{jkwϪkh#2C;J~zwVP֥}x&dNö[=C6M:KƏNf 2?I `U'gs_RL jWfz"=ܓA+TٿޭZ *蕟#e2^𰔂JK$7ȿ*s_@N*V{lӓ{ 2rD#&ZDsNP ?u,E(kI0&T❀uZW:O-\oW%z3w1 JkY,fOTvi(͊yh +t`ԮX]}WǔPزW<~WY,<0"ӱi ⯂H$xCe6\+єE< nv$&SW=iY;Xs낥^I#MFaÇ8\qR%Չ;y4ɯلq 6jkn!˱QT~;)bY^xF1I?a;Jljpvceït{ҕ= e8E+$|je8 cw3SUGzTKx^C>QF1 a1>ljYӂ|/˕  ۥbM*= >": 2?$mEFjHXFeӵ>6E m0%1sH5DV'n-bޥHxvإƳ9FJfCHKY+c(mcM d`SgKvtV08pڕ ʈٴy] CTU rE7ukkOܚSSпzo @Е:jj+)$)_>5:Zzu~fuzTt$Sp`+<& ԆE]` "^2EC^k>x缿 R,|XѽkgcGyh]m?Y8Iv{oqJS֐'-,ՅwOgquê9V0* 6b0 jYbԻYFiwu O|"|ĝ GA7S F(P•F*Mș.|XtHM@'w ,F[z͵P)=l ߎ.I3Z6 ٟ]ǯ#7в/97oS8Gש=%u`Ckr֨lTIXu݈v%|߳p6nˢ\Bo=U/cZZ,؍r|$,mly.d)&lűևScjQGŒd#vbE[7LOeBc{XeY;W!r]ܭf!R7ڤG5Gטr鑁U18XzL]g[`eJ%}ܛʽv)Ղ J._rq!\"~D/#4Z(d8(tI3o9r`摰~(,C8EsR,g9@]a.{?$JqssTa:QD <8qkp/ Ыg-~-H"jsR~Zn8]1ټ.h¯l9?F6P;vO豈q,5~!>V"Q߶r]kk9Q@m6sҔf/1"X;2zt$4p|ڵ[ph7< q}-.}VB}{] 2tU.ϽhK֌I'D8#r~)c Q?;f}| qTM iX4N| O>F¡y=cщ8۸WZr ꔘjl%_4nK*]ޮU9,>FZ_&/ 4]G+ 2ybx>FfӡސaaCk{V@_E`u|hMKp*Ep`؆v\1RCFf{L9݈Ö 07mpvʒО3/u]vRg_܏ kKc[D PZ\VO[q.3N#B:FNὨJvY! #=i?_1`8 JB˱%qmI~bMK(U{Hd qQJęnT-S2~Y=ɝ>03DgSCI,|*f=)}>2]`CÆ J9[2>sM{ ` Nt~WQ!yA>4L} y 8{)[0)v}riD2 +֞Ma!_Q@7 [I8~I&@M,LhG[5L4%ᩅ䞐@q:6 {4ֶA34X>$>7p9wOe4p`hqB -Zqm*#Y^/_4@7pU@O"@&mw.d;F҂C9=3CGVE{I}{K6psʾ8;`vc@D>C fxe[ܔ;^?4#/M^{klm+fW?)J} ʅ a31wn[/;2cZn Z]Bwp)nkVF@G5Tv^9́ 56i Vٶ^Q [Oe&ezdc S$ɺAl+Rd}r0| T.b+xr1__(ESPnEnцݞ< RO; >1:v8nPV51&`b*Xu.0~ Uc~n4C\]:ܦ l9)'|5U&7V̖pΔtQ͢5kE=/Z1U@tM`vˊO0\̔ [ph t-W7.K7VuJLN*% B4A4ۨ\ ICg$/\YG,ck5ٶ3= PO5AFw W]N%bNR-][­MkVnv.tZ>fOo{?vii,(>[r1>W*#i3,g6[ 6szu){ Rf:Sp:_+ew\M=F:&΁Ln>}xW@:-y-dAĎG6I>NϢI+@웷3K5P´ JÅu,l>TmO8v2{ SA[ye92v`M$KhR&CUo n ĘvBiM#`|xHEGo;OZ0*Z6x Z1̃樖 {q~Zx93/0_N0+ag>@*1) y6`:b5c[2 kdlg0gGVWh ]=+c[CP̛N=d_)N%4ǬZq̺xRc?A*j+ŴAjqH 3glu5Bl&kRUOqc#:n=HbZ 5Y@kʡ\#8d$W6`GySQk { MjLXWi?CSޣ_7%>dy I~8T#Dztg` 3͉x&炜9dh VءkÌXJf'Uz YnvMУ|%(,՗#)`8ʴP~uTo|X E5S3$HzF:[FޡWб-3އh0a2bSʨ9 , lpGvbvVrKPtm('XYm|:\'] 0; CD^k߷ 3xū֊>TlVVA`+O\~6A4ޜ}w[1 ݦc޼6. Ŧ /lRXɅHS݈ܐ3W-Wh&$Uw^aKj_4+yವ!_y}meؾ!aF 5ʯ@)Ey + .n]9QqBkT7-`3j?a")P߈:,G1wh׸*N n ܈T4Y%PMҋrRQm# #r ^ׁ`4KS5K$Ui-/ d7X~ӈU,$G: |yEM|4zp&U^QwGUL3t/kF^2YmŸ4s ױ%TOɎM~D8BaBJ3"D$Qh]m/(`_vK}-bȑDGe&9)-CBgH%ʝ*^nH*>q+&̆4˙!+47EPlv>v55R+%n/s* ȜX5=6(iI=7™^5{dI"5/ٿP) X8mj>8KDކ/Ci"6.{q KjqO?lsׯ?|Y{r_tҋ3p%##j9{mCQ5M.SYl"I *8bG~k A;̔/YF)TWmV2 ԇ}% S)WQhdK^^LA&Z9FEIѱTp@(E?.US&QgfHh5C'#[09ENҹ}9W͎D#zEZ Jt CM2Ȫ[GϢ.1Fwh Ȣ4c-6^qp d)xC} f+ci L}^OP#]r-l|)+m:HdnQeҧb4As:b*crycgǎ;QJn163f3{ar&ԓ+VAw0,7H>Eۗ vKĖVCZ[t"BEɽOF wˀW{8gd4q&iI9LآrۜvPW'i/\#2ɶssҠE@V4,]B@T.R8u\KR.dh$px 1w_ޥ@1GyH]\^8X:v3j@C^ sȻe!̟ n/_32U$1KdS4 J$Bwu'"zl ~TZ-<o@hڈ]-k¶AxV,hQp~7-dgIDw(%g=mfA_u'wJrѕHv }ak2 ZǖS3h<.qm-fgfi c6*ğBLe%lB]?V7NmaØ:AfRVkd+{j#^ M^TeY@gD83@k;X ~ msn.-}r<,!QYMSQ؈hĈO I-T Wc ۻ ΁S/ߊDgfҔE|De#ɳb(WY>%H$Kgt3>>_2FmHFP}A¤[W^O>g|`of ,8ڷ<a U[Y Wtu;GP0j:G`U|XIh ȿو{\VYX4J{:jnpG'|ǿPaj2wr.C8;lJ(! >ZxfŲɏ3zߘ`~m?{R">?}@7bv8:"7ތr!h~ zĘN˖x }y[oS7DCP.U6E}(FZmJ3- !Ak:'KM+ SSxsћM@uDƜ,] 1 [A^4fuaz"]p/->Qw6o:ǥ!`#q LV[ٴm!@ g*1 )CQ5ϯ׌ vmk!I>+15DnTM(u{$э (ȵ\ N>,sھ#fµ,buK%iS.`@e}|bA!qnn%9~FTp {p olvm (Qtȗ,r" GR+CjD'X7;Ҋ-L-A : {߈:c lh.eIᄊѠh?҆fJt36Σ>sXm0iXxLճH@/tRоɒMzvwU9Dqnj<~~Qwwbm"cBrފWFy.!" cUe jUOa -U yxQf'g T=yK)hV7R)M6g\ 1'_<0%VMQYr_8牐{ӽ鸼~ǣÖ^ 3MJ#hO:7»F8Ehj򙎫t㎞(: 8UWI0 Nz@ z1=e4 5m \21lZëqt}&ނe CO4)GRvOz٥0:|˄И4!j9-yl^/ȘdYVd(tKJg%j ZR DlhtrhX# qǬ2GWjDɎIrqlZ'ϔv9Iwtd3^*y$Ѣ*EPbТRrP.+Ԫ, 4zžf ^!p%iG ̑}XZ 1?[MyD\k:Y&%_:Z骲1 (O \]0r΋C'~uz"XV DNA}UҲ9x/c2! Ż'xXTfY>Y G |mDD|bfDiX$O;.ߑf55]>\,WRR*:kosxK:xGLKׇT)%t-B$$N=zǺF/%;;C^a.jmXA ]$/B6/mt6j [htdsB^US;I7` <[Fߊl;2wl4y95duF|(xsȍYcj CpȅXF}ftVvgYH727ژ/R2!ê6`܏n?j> `];~̭ C|ug;ŬjtNh#{L]f䚔kk4M7u=~GRQ39kb]̀&HQ6"U=nOiV-h:4I&EKu}8琈?ۖZC2c$%gS/9 "h4=j + 2A'2w;cFBZ~|8,TȀNm4~ue4)6>% $K3R/$3Ї: Ξ%ke:)]@s5x!ў_@y]=٪+N393;$q(G: ɚUx?oY5> FF.wbKipE{FNji^zm^6 Fg<'hSEWU[_a"f'lڻt1>KoP_e'f7 w«QMfo¸Sq*GLO'| M,$,?4&@±%qypߪ:ڽkPB@} RFNKˈ!rV!"Mkϖ)MEW EAsՍ KK%/M(:0Ikm (3:3K믩* ѱ m9Vv+?$jCT )w@p1`.<mt*кB!;rப؈ӫ<\X&fs =^Czk8 ]fDŌyV܀9N;S?e#fmKJ8t݈^'(RMBj'UZ ci3cE{)I:<ȭtcTOj0iᓎ"}N7ukYyAߛOg _YR9A}㫁KC78kP+ >t4UaGsz -?[!|UND)1^HDrT4osr NF0Z ،ٚq6֏"fbv0h2.憓lN b%,Kj2z](^5h}wrՉEAc:E~G RޫuksvhuUʲ-l}Pf?y]!j}(=a1 =m22 vVțtqJ/j}?0e~s=4UM~'be U\d49u?(.d0cp(BTN J둒OW=|B{FC&=(2zGɤY9#`c]f_~bv/fHWeӐea = ӉYM(@- 5 ǟ7U"PLy NDf5-]Wt~ . U)dQU#xCFޢo2dyO/ے۽Аj5*5_;׀l Jg\"O&e2Q`y2D-a PMk`hZٺSYUulf4GD?7|_ 1+8=\8)^b ,CElǵdd7 *`c8)d8 &>k +u:dj Pf2Ŏ67U(BbWo5ybE)yX\~m)L[2]ءߧA㌫{j'S!+\{%x[t5uZl(\Ui|i7N8R[q 63+E0Ώ^ h{I(\A &y鲂p `(I{:NJ*o.]TzQuX)jQۡ3ChSnD'QґQ=#v]_^5<jFH,Rϙ=1DX&FWdU$˶uwG!ҜDcToG5+.6昰S";$޺izT~rx!Խ jb+NqrPm&@)l *;Hzw9b,-"T,̅d^ܻ#K,U\n3ý>-{s;,4 BqF{о>5{/D}3k{ҙJAnݕ/V?/ x$ȡY\e癅{ź#71b Zts5y7@4\ 5\8,w\)y@cy|SgfnKvfF#,!dbXu%Kԁ_S{Tqy#&dYVTLANjg^g^ceO>C|JO ɗ  E4)(*JOK'{7uHTeMՇqèiePepiH[:]|kQG4z8/r]"FfgpD~Q7/sYvw@qi4n8r-6@tF'+u5o3uom|{"`+!%Ob[9V}fT2eF wA &C dP8GYt/~jΙ9ee2?x+-5p<W &=@PK0Lv!Z c|!9lÌe e l($Җ";KRy9ҋ/O<8؄&/ |<$.:֖6[%ac""q쳟֩eS p~謡/HM֡OL _HC_B /K4J20&YO_ۤ(XG˴xLbbt-EbqJCē͝/iО.,S c'<!O^9L]wj rTbvp3vа&R+ϟڃkɨiԏs㫒e3ԗcz%H #zrJ WxB}0]9Jb6OQ2CE0?i<[qt;~ɒ !," ~K4' ǚhO~d7gOJe.~+}#-퐾{E3NRcbQ@gD㖒d))M ޵( :vn鍻-FR(3?>q@AHWPF _GFh)[MT>Ѩ$k`('/T"I-vZiB8$.Xb^[/lia;ԌJnHȓ۪`[E-C$A`j~$~l{N\LU![|'5D fOOvvS!/D)8hVg~9?>DRgLqʈmC ]pꌓIr#mc< 4$RM=$b:LQEjKer!PA\JZ ^GeGdwOE `8+b W<ut1M(|jWU~$PA OH.o);;AehTW)[!.~'|xހ^uKx (|{fFpiglG* ?{1D˽~Na4&1R&ŎPBaq=c4EoQ{0HbA .S%ZĐQ0\:5F4ζ 3bNI&JRW$ zr̙Nm/ڕ ~7|Q }}v!_4t9^ZwDxVZ[i$G[*^^}hb|8&!98ACC"zCD2dx ZXiw)$>{'SSZ\9WwGZ󗳴ɣ-{r7ۧ,W~ٶ޸RTF? BG|W %,58Y n);^tW=]|QiLeΧ. R `IMB㨤ܣ2[+y!XQ KEv|(LtUKG |*QERG .Ow"X>re [|qZwRM<@0;Iߢ*`D2xXpl,̙q ҙzP Iu{gJPa+#\3C;G:5-sbN +py\T9_CJI D/,1djsS_^3hUl=P<έ\'\,_}z"q0M{9gG#3Bj^4UV1KۮK[=XXu=t" X/kJe+*8!|`MV"cA7adY[tvf|akO-!&ڏx[t\cAz\Wg\9._l fl_ӑeLivRtzIm+9\֍aʣś,۳{SG14#X*DydN(lkyJeP+6i`D40'mdŸ{ H=z` g_o6}4U]kɨxP'߆Ax u`,aKb~/s3W},%](ŹlG()EXc3!}ͯJq@CP\1{`&8,Hy2q_ l3ިqKPZ}>F3Jy>̝#j.@V5)/CzH6u24\t6]%HD" Am4ݔ|Y%v eC65p2CWZSKbO@u }AZ%`TmW(_L=FF!R/ f2 KT |HЬ,-\bOu#}HXSzOgGB>+g_5ȹ6)MNV2 A%"šxp wD% KD/'1k'hk[1k*Z &6R]TL9["T\Sa\tl wC5ר%) $-| M&3q!; £]Y^(1vd("qb\2FQL|ؽ8?Fs?WnW^NdHUDTeҝh6I:n!#F-ϐş2VdD]bF҇ z VS\pNpbC_GOh\Ŭ_>ɎdСT{{:~G(-Hky\fE6{kw5ou7lpc rxԪ܉fڰgo)*./ޓr2Us4"rOv]&ErX=7{`KCbe)ZZekTڋ;PIt?Uh$5рD8\d68r,JF9ҷbqF3k+fVX FlfNZ0NŃ1<FD6ޤd'+)SObu ŁG(CjI m"dӹpHeYC[JȪc9DLi5,"f_=}&)ŤqrĒnhB葴7|8@Xc2pڥݪ)}V-?1Ԙ@W|?XuJwc#7#n'~Ӿ\]NICK_JHi,eh o-)KѿydʜtI.'!ɣ=lgPǪik%;)rҿT0qLV]6ع@サ3t*UC!)Nl~XGw^)Y3|hiԑvag`};&}Da0<ۊM\ˋE7s}[?{kVS<84V<~wdIb9Ϧ߉qU ۓ Ѿ=yuD Ȝ^&wsUSE%2V-n1yF!ń#w jv^9#-F?QHHwz5 =S9h[5NFzܮSGѢ5GB "4Ij~ꗷ˦.*tO$ 7C\Iޖv󹐪6b HpЃ;{H[GSԀqS'ؔi|}[>PXKtƛP]?Gex0 CCA*(WPFn̪ד!۝EM EN7Ľy_2=c$Ĕ$%&!pTv;0xl~nkxyk\P{詰W:9-xDZT56+FVn/P(pQ'R R3VOj0Xq3[T8E tI-)_r$@ı (&caYB_/^dywQ"7$?~ѩ2^.ښB s;m4fco̢OO\*1VW0UY~{'%wR们L=T=?/fkT)EjF r+E褀Tw}3'rW" ]ͽRqq.6L+@%׼i|u_ 7[S Pl)gq5̔zj_X6qW4MDGԷY74{8|/$6e)S+u~J{Ĭ AitcCW֎%8V AW{XK"| U# [ vɐn5~*+ Źẙpo.>B*}ZbO4 hF{x4 ]̇R7>E,>KO 5uh^]KS8y6rgLB9=6oYG9Y $۶REB|\uR ѷQq'04%zo9' AlnQVVL)䃼,g1XC VSTתc`A6ĢXz sB) uW[:؝ص%*[{1.t>QUSF'xc9>Z9ypp|k0ym~k;12p` )n,9bsZ@%PKTyJ;JT9uJv3(9TI0W VujsH[Q]95o֚r"e $kRP`<ݕ4'm_LHjmS0K ܏nom Q8LVQT'aw (e A+m"{H%T^4 X;v# 2]Ȏb-Ôu+x{58exH[A+ )@ۣ5T6~[mrbxd="(4l%8e4%ĺbc (e!Ȣm>d9 G.i4lW=^D|keܲI70WDM un_pMu7DI&kl4feW:#5.>{ZuQsBeX<_zSPц-utS!TP nю$%m$b}3&K8T!s>5DĆ7Fঽu}ȪeO6ӈ?' 3<3qS.˼9vP*~:ze':pM1Q>i<ұ\14 Hx#b<ռ[S‰5v5i£Hfmw=٦gʆSX\WriY2\MdS#ZFI ~Rw+7=Էe\_=P&^D@B51u ߉gUT,q/oLwD:V-M{c ^JҼb0b}p;R?alS`*_NQ;ƙTY#H@g%HA_? VN rZI6Y*4J?+7R5BbJ$"/#=:ugj>73 HQDBθm{8廲Zy:S9v) ne{k?M9%˒rVej?o&ڼ(Y]s]{:B9[PLxe ZETr9|m(!3u⑉;RXώfH!T_3or]g0ثּ+p9(X~(0%WȧPzOnH;}:OюSt.B2 r]E7XTW#ɖq@v#9빆st J7*rrExg Lj<(= \yҥvtxFM}0ڊ^o je)[uשZ^|iB Te^(Z+:QzIȵ+G Fhsth),v5]FIM\"fVi!txZm+^q),AnH3a%mT]A0o v NV|>tN WS<-vg:awqfF(2QDA?[x 8u]NϺF!&=5Q$4.2ڜ([?h? (4RRa/^DŽ&O{9N~!%[Jw«enz:,2m -, 3'AZᑉK jkҊdㅈSD:4+\|Qö*yeq'ټ~[+"?ɺGI5MFrpfQ!4oJpJ\N)d9 =7~Af.r7lj?MS Ayc䞜P-`.:vZ&&)͵i'] tᆊ}ts(8螅-[{Oxs*N;Dl6u D x14ROi:w'}4 f++Q?9>fX*aR %v YXWޜ~1_pݚ\J0-i7ؙOԌVŞHqQ TA7ٛ%YG2LZ򵠡JSA)!̙#k@|o/|ef#Kdd|<2"bȁ z2m%w_ɱ*jD*ߎS&6U2I -5kAS"Zb1ɁʸLNXE%r!-!n+ZoP\֬'K:s*ѐ]½ sz#|q .e DNT .$9ԁ*! @?}|cEV؆_jl%w=04?9Yb=4LJR+Eiftmodku(ZALER50,pY@jxEnӼˆFW[$︸@^OV1XayQJcJ#KzF-6-f)pHTP[">RRDJӯ` ? !j3/~>n]sDN𷮇 oc)(CU86ec\mYOO@ewj#ݨ 2+a9\wT!ίNЎjXj U|O~x1"#ڍU5P6b&aFf;l$xslqBͭY_3a~'"9iZ)P aiA{lSάR]<}D`TYL0 v ȓytpf erP!͈дb'HjšӮjiҨC) (oVT`Q" q97^LQqh2bAC>q%z_ggxv.n38:o#oy<v-jDof}!-0BdlF==h$=?lyd 4TA7rBZY}ɑFQ dݜCh;'!ֶ̐ӑeY ̆cP?lSܪIQ!}DFSvq RPV-K]0UNwuCcOAIފ7 Jl~{t>v%~I0Rѩȑ %*r- ^8l)hu:w/M1ȒͪXzkc.[]> x0O]ݲB95)C1.1O07k–`{.j%7CbNणԅa10L<(mtQ)UW0O=A3<f[L9ۧ`lEfZT(W BI'UJ #RS I󡵮-Cl`ndR&Tq O֗!e}i삀3rԃ!b}]zM+`.C^)کTy `hN+G69OUd:ՄNix.LeS$e\]tUNTmy531wF-l/Io8>jJm%UrKysLA QD5ii7 r4< F/11a1s"k Feہ D4-GrΞwjϕ̓ c&e?.lQ_]= !PݞZshu8%ƜrhjE4Pk\%J[ o.V. Vjo"7F=>c̀P-lד5xFe,SN~ Xz0yC͇Itۋ'S"d`!EEa%X)U'iAMJ6:r 7h гV]<6n݂Bҍ ̀X}f>/wrE\8orwc# ~jbK{ 􊄦MMa}o)=oٺ5o4+tވ Gh'/PՀ”p<0;㏖K H m2Y?\aYУ a z$l~R)e!UR;q"H-%\ o`2X[gLx!YEqrPr4l!V:1!q5)XITe+d((_|dj{ S>q(EoT0Ȫ]4BpLD (2wܳxw2 mwCg|xi x\aEU9lO H8- ;O9rjW r@v[&&Q-ld:蕱&rk$d=#Ic0^S8~&~סmo<*-۝(#`W5Qr<"yxGqFObVi{a(,Saq^9A-`Cl:bϠ Ͳ/;m[4D9\ lsۊj^DKp; #~ 0<1&’h3B(zV"Ne3>-ٍBN KJK |ٔ(`dw~=+Ι b"XG~66Bte?IzaSLc,*>SA!Hw\V95=E^JR^sI˦_N;Oo.QqDzLҡx1Nh4a-tYn,, Chkfub`_- =3ѣAG㶝v)lGU-_NHW0g8p7H6Ĉ[H0Xᝍ&8{f+f>$ 3w't l7c6g譲Gh3'$`AϽ0U}b&XԜ%x%"̶Q1+3TU}2F_wTA e/T6 `[8hL睐pLC cHVSA=oPa-6@T ˟qa(90d%KΙnBKnaY$ZKY<^DZNvh:Kb(櫡ia9"AE E n t$ؔӢZ0 4KkHAl3ߊzVK SMNp[vgNlT04z(3́2-!0@H@O1-n؎Kc5F{++ƀ΢J uKJ**xm2}f( "$Aׯdպf le~.gϠc;>_"8-LBòwu^Ԝ.y/[;Um3o4U}}Vn)w0bJ;Hj1uͅ0x)jkGO$i֤SO9ǚ?> e (jRC1po2E ruJ!${ ףsk!:lg`yiDmZ< ^_>3䦴<싘s;3^E**ĺNkx;*8rq$]bT+"y$-#-|~¿E%ތ<"QR[㽫iPhKg?c 2p C%V]`(Vx\e٨=wF5/]˅v_N4|~CIlM*,u0pq#Mc4=f"SNү{q]ZC7|Kψj]_QnxG&g/”v *gWЧ7K)!w;. ʬ;cIx'ĭ}N+xk Fvd75o-0{CEf@蔴7KKOFwi^>;Q+p'KHW+N}ҥp=@c-MDq,>jvQ\v^>)#XUz[cO6۩D@cC'O-fI1*sUPąytlґ#j yr{rpgFMIY!3tլ0C){r,۶YB/ vdOgM%>r&s؋$]J}3+ܦj1ldu]6UMYw$L$;~G-v@Zڱ le( /+>ZKX6w(o.P)m[ZG?BJ_Jlt22G@e%>?57h8^SkFb;@]5 CF~5%\1n#C'N!uI鮲^5qCNu}γq?N踀5&}mѭrҺoIƌdVt:⟃d@'G^R(+َi~OL V{a~ nPu81UxD6RSļ֒5l[k#Gn^hrv%.ݧU}{[)CZ r  8O.聝HIK4d1X/,&d8 _poQ0+S{oҵ0e.W9GYo8|HZZ,Ro",˃5< LUcʭ`f5Os}lHhȶI򽅡[y) sZm8CA,G+h))^Ul'zwWsJ孫 )h\!5 g;~D"ؐN1"߽_?6QB)yj*4ޠZA몺Mș#3ƙ#aՒ੕ӠD{D7ғk\`v;h9Nj[Ornwm jyn@'MnΘl_LW`!0}0 KLI^B/z^,76 xȧ|=|ݯ{D} 9 6ٙH3&u zko\vrY%AEvP{D,*BB~Lg֓3P%&ghKH+X1]P$Gm-|ݪ\|TPCS0`v a<%tE3a>_\US֠ڲaÁ[C);B9? _?X?SVDWpfFhfEv۸UO瘢>zLLc]Ư-/xtQ!r|aI ŐA }N̩ɰ2&]@NHW"pZT`!Jz‘Gر{zhF&.>w1 6!|>ӣ?/j|Nj_ y4gW1|sr;*}BSF \?D3XyP춫tRgdHJYjXA=Y"uыQ(w-EES*ZXՄR^&΀խh?nEY$oð*]#4]AOa".BOh`!x {O*/r]Gu)y#U"I7/ĝCЂdk{pxa B HWSAWFL#J{M;h0rXJU#|'YYt@AL\ݪ|~r,E ϢeY"ێ]1d!5|?PwKEǷo /ޏ($*`8LȧymJL:tekIﺶ5{;X,o-7ec.~o"D-6'sL-X+p6ZTt Ҝ`ui`H;%S߷vCTMR]2dlXSSZV5[ .e8qhh b8ϤZVHrUqvsiԗĨh<)`*|Gl`291w@>TR&?y/]l<`" >_W7 mb- ?I%L1j)`>D1o㈯&u6\u mPˠfj]6~WcaE53dMJK|wccןS=`Yͺ'Am%dD>g,2QlQ6P$`)*࣏uU4\5Jb\v0i. A-Q=zz&i#bW/zžŦ|;*f>3n݌kOç0ׯ> 7#J{u{Da81HVt|RN+Lru ƃa]QeUYD:Eda@)\9R\$[rMܶ|Kvg$6љ_|$GW4&pҏk-m>]% u2C>*@#< ěOEhΉl%١wz8 dKFOsyB wר4RU6u!ue@{E߆_` hjCw¬7>#=sٸFE3x-1 GgEBI&naZ-s:ky~UPlj9/z&eL8DުIHjը'U"AϾV7 ۏ 9Jf9)8㫒Ը&΂ȽFuO@B~Vm)Yކt&g[4dy^:FW>B6:FZpT/ }U7fll b/RQ7>e鹛, (JzF'dVtKK.qDw a?Wg$<4ю}s1;I 9j9Xs+O ]b3;\gE5x%ASkowe]]0WʡN\Qf:cuÀRG͍uZ9cXǯ7]:RaO`Oj[j}#m?sGX4 wIHyKi\1nTĕH£P jNKsCu{<>)+=xh+(C][l\ζQ 6! F0q#S` $!Iq=oILt";hǓ%g_Ёp賹_E}؀8w—F239{.&zD /,A~ҡyH=,(M5_$`kyVR<<"|J 1D_Srdny#`l+Ī/I=%ZIVYt:00}\klUko%тWgj*Rڀ_06X{&E9(A:N@iDfP3D?Q>Ec7nܶpxYوGuEsK_[hDEU#Xy·I( w,hJwi7ЎkpDvvdvqt^qC9?blի]MHm@D"b id y,3 .Ij<f/HҡTc̄ȓ&0WP))H5V ZjTrwڴU.B`ko_ZxMnyY>\~movd`Mu~v'ĥ|Xk' Al !2[q}I[xQixٶƘ; i5ݙ:F]-h{Í;Wl%8"dR{r_r\s0 D keZ[kQ:z=9qd*LE9 %aIO4yVf}2$._ 8~<^9&tG_E)/]|P "'w%,GcM"){#7g's2Et C_YuMm:6Z ǒ½rRaĚ08[m Əw>А7yG?6DZ*DZۑ4p[p6 7XC/@{HыRMVXJRcWSYm+yt@0( Ni Sv猸[!e6 T®c5VU)=~Ǻ{9Mrs{Bž)[9 `Ȯ6˒^tm4HKtU t|Ol t+IE~in0Y*:MnJhzں|=] W⺀qzz8dh{mIK_b&фr fõ ybxPM|R9:_LDb=RBΐ9E&奤CY V0^ (26aVxݠ"xN-TCB~gpjP;SceFn9ma B ΞPݚBIr7;0qW4l&so,3B B8u>4I l:#)D!pm^AqO։ 6R}mrAJ3%CYA!8jrI#P: A:#ߺS  lV9/N(rKʁ)?ڍg1 w[ |J\с"u :K=) 梌0Ry|2xY[8(;GҨZzwt- 6GgetaΝF҈E[:r{>W_1n,{;=K)d)>Pv} M܆u,$rQPL bA(\MĻw;6?e%WפBh(Fb%G_|2E,a2]f (k8M<6p^p|kPw{l$a ŭvNjBxp+՜^k؏SGޗ:>7K| *C谼>^x /V%鵭 0{xOvRJ l9.2Kk' @6ZqEFVT̵O^< `ۍoH Cs^>4i+e/JJ>p nAW+2&G!lKI!]Z2uޝ]~[:7HBӳ>yMpEy(Z6 V'\oҽe G7r}yE./a*xPYIuNWNk`u-K&Z [vU_)ɍUsa?ctf{r‚[qZ5.9Mn7}~^dzWv&8cr<X^oTj3f8+I?^j,_T҉#dhJst Y6EJ] 8 Gn3| `8Z,hFtHONKn6 fjG->+S5ciUO*U0松ň1~lk&*92֞ScJ v)z:@<.)4t-f6>WͤΆ٬DttZ 3x @?UdG<>4e5h p6dd9'jY TGq=h]̘?#z"Uw"&ț7Jjqh?9(0`W` }Er,/L%l.A?hVT3lG͑ENc!1n{GdӢO׮#+Qcm-ab(|.8*B!Ԗ#ٜCإJ-bZva_.\.~uޫ.LҮv>ut?.u !-IMic;6h}y9N|t5ނ)*v{ƠKG/=_Kf$XIq`V7N+%-ӮeE 6dpHW+" ;aaӉ˨+X7>kS jQ L)u?ek!X҇}BV^vuգd0|>EcTLc@8tOWd-kȵZ8]r\ꆷ:p%) 7k:Q&܆*FI$ 9w)؄tY}.Ң"u&3(N<*󂅩U#ܴe>W1KG/_FעT!Vgxi5+ X`Z<=(Vca nΘ^{H6!qJfZO޻RD".xWim33C,%y)_TAڸ MB8@{qq|TGhXҰ"OJTU?#_\!3uVa@DmY'jtNyXD_U=,/Xy>RRhoNC1͋Uos_~D6WZVJfNjͿgҘPA,3;YccSs4y{Jc_T#v}u$~ 0ORٽq8 |j[~lI撡F6|N1qՏ KF #lQ8So;WEs`:!Ku7}!o:|hcZh@^Ϋ~[ Vq:zKCuBQ+[j5yS- hymwl#EXs I]MGѕ{x7=0O=w:#h\):\Vf\̓&I%cy Yy;-ȿ83>G*8=08ZM[ȴk^Af~\ sdNAYbf ?ʓ c;Sͺ5\\c>Yi\]茥4;v]o][L 'qWZ*pz8=DKT+^" })+U(# $LY ;\/fi߷@_;iz{nkK^+jYZIFͲDrsAV<*Cl8:nI{AB97Z]/O H˸+Q9?58bi>Lgrw54O$so,:ۈ*`WBzXD[҃t*ND]-ДL߆Q}ۦ*Ѡ&D%&mt7ֿâ[ߡˣ:(2*ؕ;M <~mI5IDï ]%3ltYlu̟ oz=hT&b\i;ګm_'ͥ7`-?=QTbo>4A@E3FgN{ ~{2T#THtB6l|]D(/:'n NG9s5]F4Y;*vLSתn|7d@& \40B/Z턑à|8@L#r6NhAtI;c␞2g)!}j|** ,(㤰,vfϿ/e?b{s1?SQ ; lH[WܺjDWCpaF|;dA$(&c",, g8raQYƁx%l4)FMAGC?feȧt$sR0bYj)!$[|4\!ttӆ3Pty*ԛU0Q\sXƂ`AG) -ȸ2gOjBcM˕%l_GeFG3<ޑp(: d 󌊥Sc@=L}&)_OCq'lĶq-xE#8 v/G33S\T~犘 =w6k< h5Xw /V2Vk0e*ɭ[ L3)/ JS}6y8(Hâw D`_@n\9&\Ϙ%pC|-c{/ j||1$ekƮY)ʛ̔UҚi]ω a0+{.k ~rUKdCvh`Tx8S07̀z$>#xctdG/ŝNk&\:?ۘz)h%=Š+Q} ̍@yf8m;JеfrHL2V}mAy:IìDa 3~KŶ{{#oDGS ;g^|h Q0$}j}aC/C}T5$2[&Ǚ$ r3k"@4aq2sh 7+%kz e|zVHmͰ'RRHP n%RTl]vo\cTW5$*8rzbD^˱9Lp=F"d9߱q;p;xN~PW9 r MŒk|h(̭, ͪYXhU.@TQ[CTFٕP1OQMkʈjI{W +D0ŲAns}`5z4}suGb#`Ҏ׆ [ a3v+ nnbfߍBGGl/GA7X͟5w9%,SgЫc3%ڎxi 9^ \}6G=tx9DQGPHswY\Яɒ.cF|8V21v=2s+Mq$>eJk}=Tz%Ա0RٿODI?u&WP~(0Fd3 3B) >V?!8˜#jFiD`#EuLCoM}>ķLyB :vnXR+Ay&; CGBEݙm|256fóݕ899Tt3'ּUsy#VkAT66,SyEқɒ[GGIϖϤXq$'NOݍMQLc*b1#5r-fiF+WuɂW}@؏EMhjGR)}ӡt]1V<"A {Bw8=NB0X>A)ƹ ݉OW@X5ӑ՚G8|Ppc<\º"LSޞ}k6]~KS_[3=Ҕ;fRTtv)TPVE2jp-T1妄wyuvqLrZo Й`<:ALAyP{y Fᓩ[)wSw @vTk^q^f¨ҭb*q(i,6\_ 1cWnf\@fgqΊƮ)=siZ#(}@? gy~w#}96DȷXy9l1'xy֞pk~&$"k:{혨.pTذ ^f+y`~'_gYMh᧮桺ἧL:N̎˜ *7 Q$|p]% F%Z-'%CtPZf# Xy?1#ölQ(M4u1)mv< <|iqT#:gDP/ʠf(lvӫԼ_z#`\Ki= lv[[$:KSpܖ4 -|ND.+0BP{`ÜkZ `l"aU[ Y l`T jp|)|N[8R|Gp<46Qieks:ÄI`:8 ~NaxPW/^h.Ȉyᐎ=gWJdNGs0‘A|oGҰ6n8I(統c: yҧςhP%JAi.8֥繩/ M;o2z˜_D{Qmfq9۔`H%HH> rK_۞ &yֲyLh{Krdn#- eO "E(gۘ7"QIPI }V2/7K 4/`8U[r(ZxN;ZYj{qa[uY:cN ebc:_X"Jffum<~w)KRM '"̒!j( aGZmC`z}lN.i:WS᜼Gz<[i6Dއʣ~=Bbݞʍ|3/ _d=$((-!H*+ pgcvMl`* "3 >if rRKpTϼ/hV6r)#+D)Za_u‘)0c"EUSQyQ9kms??34g8}+HW VyF>@)όyms%Hn$+|"/*YtnSym~]%xxM}&Sw+M'+vdݥUZkޢ5j[^;&l]Cc7w=_\tZN\- ɶD6džl#cv94!tu}  *2 3TໜX|7*bE 0Ħߞ$FE Dd(HC{Syp[-W2M(:Ҩc7* yKɲ/%Lh%-J1sc/kD^Cxue,D+=K ֌mu%1eUT$, "`v,Μ1w?UΓU-.U^z懈#frG30ea2q>j,9{vJ$;_n&=qe\O;pa9MtDD୷uO~Z} g)yIEFPST==P@?` k~ 6Hgv,W#㙑?V +gf>ݩ}'/_ A5R{>s%JK:Z!w=[Q5ƖsHfYs ԕ!{!>dFmg_b%Q `eMwRX\ |=v ^Djn4(զ|RǴ +-eJʁ]L* 5 7/2#/fYn ǫ{kIR'J"䮽"憐 1^cK4Ne"$(2nBkNS;z]I2"vFP@C`fu\peLjk,Opl f|j ,e:bGu`CaQr^cQ{8#\0D'VgU.=V%NєFPpC0C%{jGTh$4ֱ``X%'\57miG&;Ŋ2 w\dIP㲝̸}AZسz9c8 _Ծe>g.~YJ}؈L^Q[+};wLI SGi4..Ja%Z- VRbI*xc7&ڝ2Ll2bERb=9ǡUi>O\T 98U,!OGQ4s16aUz kf9yb6Jߪ07ԼdirjQ^Q6H@Al)L[D%}w.' wOa|&>6͵ܖWCr45RV=L)uq/0% ,O>LxXv0Q0rP3 mhF9F1nn9V^u0|ճJ֣=aS4anqy2uԴ,0O?F7H9Ѹ'% 1CigfDdœ,Zqa/_Aǧ2~݉r(q:s'^[1$`G0TazkQmNB²Mu ^cgz@VdGFgìdjܘ0Uc2$N~p"4.ϢI:}'B wmYPQ?1)T,hq9@G#JA\ONW6lC쏵2ד2d;%D/QgSOj!iss1C +~dJ"iuҶ?o}n]EVj'?F]簼_40xlsx%%G/4cvca_'l[? FbX9#e05% .j@8 Y~{zwl@ E5=t $'m뷍>~9_injxƂR:3ݍ1kctԿ7/OC1tta+)yeࠢbnf@>Ŋ84ѐM*snSxh4r"`S2wCҾ2PGB=GrzF~p㋬ Dgbh9s ]b30T"ْLC"U<:b14D,Gl TkafdZ5-@}J`$E3 ,_7XS_OYCԂ;6\(b0y?{g~f 60 )Y`P޼8,`j/k~ ʿ 1%495:(>\Hf^G>D+#IvFOcآA;z8jm#bvh}A,4=P7˜l*|x 5w/艈 T s LgCıX٥V8XCx'U@0n[wBx.^ߌk]nDjlMW& ((թэ'ݵ zTqL&ʊf m׺4Gu?4m:a;&b@xj}Pkb؊O+5?Mdh];ShOŜ5ζo\})e{p!IU*xe43"|)*D¸e  c]W\ ߊMtsk i<>I{=~3!OR#!$ADX5'LX(3a܇ TnqDւ=]tjUne Ot*i_J2 Jz(/sMfλlٟ5UJ 7|?Kc*}в֣&UFWckɘTYvW 4{zO>{@X7=:I(fv[M/UeZ)G\+U/6ncQ”X?Op)p3o=75]X vS+>۴ޭ@T%䛼H.U%"/aj2]otSKq}"hCg#M9f3A쫫f\K[:kcX"<}ƈN@ \n*~O)/g?0ElHxƒkJ{2p]j<>r3@'P5@#88NHJ!Ҕ*oR( ;xj ײ yk\o1[kﻵuX QM<|XGj L,=64KH:|D<3׈a0dfkعϙxW9]?#Ӿe^&_ :x-p@E L-͟PFIV\Zy2 ƖΒP S2NBؿݰ=4O]8}=@j%TߎeǤ'3O淗GKS>EcrOt\gsBdv.? 5Q#>-E[K_L|[\.F4W‘.aXgz u}Z4@Kş+YN%v' mKIJ؀;s$`@p.֛g}ˆ:;Xlc[OXyQjΖ@\z" teXc)p;aC0LoE`. 8-.^ʈ3Dc,^ K&[a ]Cc9H͏/%q5cvB-ҜAjV͙P'*;fh$Ajsk:ADAw*%*LPYo2n t_7mIL(wR @sո9c.W:͙bڢPWd W?3 XJ7\ɳ D=h6e~z %%2Egehn+\K4EIܬ3(z . QL]n`V?06m0C B RcèUvc)yE&]EMaVWnĹA심U975lRcMGRs6GvLVzƼIFۻg}#.vZV))Rc4?uawX.ns6t)VRʄB9,f~Lڬv| IܢpRXN[v "IE 2XoI6 )Ms&+l;X`7j8輐#|p?? A Bk̂(I5y~ ڥv6ܲ.ӛ%+XeР_2w2Ib >xOuና KN6&IwJ~"oA9C-z&H|3t2_k85:a֛("y-aHg9so J{~'ADB8 A\5U ^s7ٵ.DftꩩQ]:.O>pmg؁+6șM'\gnj?6KQ=B22+9X1 UO^-LC7d6^iސhLm$`-nC(jXROD~4z}P6 %q'[)uRCy3LkО#|x3Svl9p[.@b*R·BHCB}KOZh l r,cժ_ؕxE̺gFDS儚[ /]9zIfM{"؜Cw o_Y.QIlLPb(67@BςOL35db'Qe#aXp)@>9<:@̒U!~#-0<%DldOĚ/&ܛ<;DpP(#*EL>2Op -!qNM.uBP0(gp+_f|EVÝΠqIh&t[rW; G9]gK**R\^Xxî$yi:ॆtNn8[p:2:qa)X!ORE nxVNeD\M9]w ESfze{rjDOC􃧘fR'H&):u$qC9TCe>li~k=OAQٱZ񶆃 IiKvez5R̃1RIn 9Y WU:62 0GXhVyTeOn Ѕ}jk0 pxG#`u\)sy|S,@Bl3p#tK~*{9Z!XYGJMv>yM:X ro(P6"'k?;ZުJzFS6J`ZR1*rP;X%g١AU̱wMrb]vWRo xeso2?)J$uZ HI3WlB$>j& SᱱN>zn!OBGg` z&a uu:0mflH?d3tᅢ.kgU HgHRu< )=};u~ls"nL3*9{@A;,W1Qko% VBm8m(T.h,BykXPq ihȹ18G5j-0b,sGMT(䐜:LY/T8EܓezuLMmhJ:& 锟ߕ}Zg CcDVWᷟ(Mc+Fc)N2`w<$q Jˀ<9 e<%18;qQ9P_,+'SmQrݗe^8*#Ԃ+UzISAUcAxu8,/MhQy0_9ppߒMG7nD,C6繙|k~'DæU2S٧1 g*@F)D=bsSȇ(!AHxʧŚ Qy=5#R1)Ì]x{Ҿ%6:#btEܙoHT| \ 'ddPΎvxTݿyCpo;ޝsp'T7Vt\]9SUA ~6gY^J l,zd؜6zE)Eyql>oCw78R׎5R Yݦ)ZZGE E~U#_}S_(c5Q@)V-\r{VlUu9"L=H DiqZg2Ғ+ׄ9#/'wMuCպ[ɌJ G0C;?&_Oju\%91)5I)0]EKUW+]d,1wg^ƝC9Nm3,M[fv-0;:}g9TUhVLAw[ต? Q_eܔOE7Kca9\Qr!Q,Jua< n$6dz9(/k.wMPl3쟕J5MX:KK'~3|a@a2" @a@#m䲃_y㗿@Mw֪S-Xo݋m̏ ɻ ?m rœ:sȧ[]:2iw)4Jt&:96u#\IfjOrJf tD[:m#Ws%H\$T4|mpѸb昸ndNHbn=v~oIVT%m?ڛ̴ Tj[AO .ou.}t yrOaes̉1i6sR )u|ʴW,N#7k-~P9y.o Ebhw:3`k"yҷ><*yMfy i(b1ެ3A0§ux(iL w?|0>V#OH3M}F`سE+j(r5 "80'Mb܎S5s1hByH3=ӻ7!h4oRoedrX*8tc\ɜ9*Z`qVlMի+<6ݼ7\d&Б;uK#Wľk?Swm4|^n!s\ZOC?-h+zc̡BZ{5w]2V́CDB/;3٭g9Y53]s,DVU&XŊm#^,Js~9 ' 4F,]FP |/M/xKgX5/ުyx&GvZuŎcb'7~*MsFjj .gQYi^$lZQqAEБPnalc0ZC 65WK75$MKc04 K3YɅ0候9z# $e)]3)iN8A?f0QS\8[Lɻ2*L݋狪ثӒ4}/<82ـ%­<1q[Cc~nM<'Vޞt{ZkL7 mt=;~zdz];^xaEVWj"8ǛjD eUL; ';3 WI4Ǵ3#dxnҽm3Շk}zvr>͐Պ)UztNN (7Ul]]-*p~hx<t1#,hKF1e ʄg?^Epʕ]A;()c ;pj%':;E>RF@Es6D,K bn&Zb)T:fE[튦_SpVĻfUtk`9bNYu]5¿# 8X'R<%L[ 7 Q sotz>NH(P9҅*]EZJ/r y\qR^cl"bc{u@]1z )Zܬ@$0y+ƿFϕ<R}9Jb]W TX{H jI"\ y&bZqaJUJF|giq"5 :bC aNW)T4WavO@гXTo0i) _仸:{؝BXN:!1(ȷ;q5k.%ҲS(p3sB)QH6Y9#ICI愈|vn9qR/guTYMB9]0)|#]֩t42rD!J?WSK}W'6 `Ԫi5A#dyeLJI{J˪ev1L˩@$6 ^z:Hrl($'o~pG#j3 b Ef˨w&l%Ph3FQ 9??]mRI:ǿ6&tZ(<(fڨotaTm;B/u~ퟶ)5oc@ .'#<ߺFG $s!N^GU4_c+}7x- Y&NA M[6vD6n,AJ/`ed=UeAGpb;:#СopC6ۘ׹k1ѐ:sTlW@ps$,H $9QuXaS_[ntv[u۔Y-f5\ַty-JUR^H2<<ĢGޙῦ"E૓YM3o7:e'I +B5@, ~XɗfxRH0kA1XEH2V --Pٙ?Zm V+u܀<#OIEj gU|P:B:E\e328J<xao m7SOXl8iM+~3BNO~>D}}9FF(by#gj\)˓SkXGQ=%ζ& nWTvw!%}r|w.eԑ]+~KN$,א+bO L5ңyO8el7zقNѫnd9O (m*\#V"] u:ص77'z0i?:}abͺS-f0) !ƉӜ^AkoIBsK&o7Q :1! C$jΝ6/ĽBwp 4`T{$e c)=X_T9/ӷ@a$Js9N:ow+XíAQhjk}q8%|iBw~<`.m69z;A$ Iԣqӳ+FqJB]!CECqSȌ11bVsG!KhYJ nr==-3 tڱZR`BuSֺ *A4B&W} Ra60SE>;k/g5y 8wrlyjf`R340Kd0yӎ@rN,rʶT2`|AK#kMMKB-&&/VME%z>GS ׏~ Ll ҃vzL-+dw'##UU k+:݊e)Ãb@V5~ s{&'T}M6d =ݚP&D&wj ^2 ѪG*eM)? +& 2*nϹK1xm֥_/x8Y60Ke#ܢmf#Vz5RMA&,̈́Ca'uGآLK~i7&~޲X w@aABeU( N=KC(BOFVLc|\dZi >JD Ӥ ڎOsyE 2qJuMi*<¦lomp<'AcUx)~"6_j c/S5iQ}qF)0eO2.&+A[Jx95@!,AX]wy/TGB7$u rPeHF{aZJ-sj[J-bk<Ⱦ@S`C,Ux<M'/?}@~-8,)ŝG_EB}Κ%4AKS[M$l+|3%,9T}U`u,TvRH__ýG=G>rʦjH?;/"=Ig1.2 ٘YaxyV=u 6pO !yiw1V"933jLa6',UfFU ֧ۺEk+M:G(nz9+ƣWc 6lg`)Fj\~RJ*$KU*;&41P4|_蝂(O }OѽїY'Rנ6Ze>y } {㭙CLkJZҡ/.C:T?X Q>?ӏf^)Ty 9RRM#UE1Qɗ āDfu |5˯k9aB*?NY!X𴒘آ*Hﮢg/2Q:GZ( fxZݬ'BJqR3-Gডr3',yg-bS -ܵ%9鞱px?V/H -/Ǫm)Iʤ8LD|RpiECLG>&(5N]BZ'> V=T؟=# # tM?2+FQYcEqQ/KEjV',!T\l,TAOd#v*nJ9ː?Et!̲5њ(M  mʁ28_v`o.y@١m#Yz/)( CLy]UU߿8Xը( L +|1pm:X;6/k?<rWX;CW vylYI, t9K Gw<ʰ!)zA.ƃ3rlwԳ,P;|TA?Xɾs~z'Cp{3ת}7X< 1v/akPG"}| R/@]^"Ʌe%Hl㾱Tz//롋um|̕SNtzWWa/yv'Zir2$a N*Ec,- `iygfihJhx.XnwkfH G5"tƟ}и])/{hLKHp 0<@azNZWl5eGBQYK0tTZٙ9; 'A۹rcvU _5Uw}D]?&!Oc;ja!>7{""{s& 5LaПoKnٴ7qlQg mlAJ" )y PYJ8)j}=*UӰ͊RNi[u H#@Tw=$KYT, qŚ(0`F75 ˍ45+o9;הּO_HJ`ԧm˞ e/ݎ=CPXZ SݔD[oZtdYlJNDgG! SP{mUDZ|x egNeMC }-~5T.bB76Lvs2]aS/ܐNj1cTd\=oZeFEOcsثhEH^p-親ueSC$rmքye gԷ\? ff¾LBJ:f{m^էa'X9 Ra9g{7xw2PK0Z͊| \uJkn$OR+fײ%2z$^"D|k_K9 {9Yl5yipD )yxd|qۦx(]-S3hצgvLfNJN.K2&wBh2PIjQ"xôa=rR(ыNES^tUSH1,s4'vVqcz.17;ُ2iܑ\s |Cf:B@r$dKj! 63q5Wu5$aCyPaգDQ#ٗ}ެFлXf2ZGSGAqgc `1HW|) 8bi`R;ֆ0d f["놲f-Goَ3j[aaU (~Wf,S_|_800LhCi 9σodB4포~,#*Z:[ۚͶàj$&M4 :R}1U1LxCmVlxqJs/q$SIk$+UE1DTބswGNGeӈ1g M+~h\E\`F4`Q)Zd?t_[4i_!5U78B, W4F\u|;r:CJP_mE/vC~a^HXqqG 6鷅O;fiUă-%X۵W}/OOlCDR /n:ԝ=(0v_~h$kd*ѣ[='97G-|.mYXAlc/A1'}w.B6f[ƜU0 s|M;!a5G,Td3cbuo 5Gr 9\bePw9 AQbDhKHq^DWM'{ȯ$?CE6x>f!+j@޳$m)Y RU&hS#o?W)A=dG (8悒(mw^Q%N6w]3-hkGS5c QM|8-X+a&nenLUZkKrhnKe f*e` a:|&>L[<ĸ'OG1yhJ{7$ BfQ:w鍸^p ۨd/lm/بV%+8ENL[Ǹmih<4OD@0kwEVz/xOѭ@sU\֢E6]1 #Ss4g.C:ifܸ^Erixwq.DL^UR0=rڼR)`c<@^)ɁE(s06ngLdIr И?`V!o-sHI\ ʞ7 j.8N!hAyQp~FU$gi.U KbcItucF܅7HSlF\ eg7Whds]C/>WUqo`P 󷯿i /}ֲ:HOpȨt/0$td+޹>~duk!=+'h,s]!IXԫT2n37&LAS#@!2*QaR@j#s$j|ՖÈ7>]`ajads5XNrJc3<sma))#j4Y?Ԍ:%CxYhݪ⾒ ,Թ+}g8'U9$/1$}'l֖EyGu2E_KT԰>DBK\/hY*ug9]I G("F4ˈMƖWؖrXUBڸͻr8J,gUUuzk./<мI0FDZh9DڷvR+z3#Lͱ 󖹾rP[ $&o|f\<Vuű:|C# x7 n&ۇ=,ʐ>e {V.z0F8 iTkҦGboy}G~2ɹLڐm@ȖW"U}*Я1°yG,Y]*/9UC "8gTgx᪏Z4Ѯ(%"}&ą:⫟ U0$oe_ZR=1h>=s]H-ۭo%IXm0zh?Y]efzmb3Lث/$I }HurF[V2oЇ%SOñrp·A0= MGZ5$ 3dʲDs }UdW(D%#mgK#O)>[lmz4t7oф' ܨb+$bK-Ch,4q\ޅ`j6ݠЕ _ &pʣx©Uv?98?Z ' g*i.tBGaef0Vpi߀j}DH Hl 7e $9dGtLLyxs_y^BčLIhNE[\rFdWK=_R[Yg嫣&?X-q*9yD9 _G5ABSAg)B^%)H1eW3Ѭp>K~s': ]v0sF* (cvxNۺiBZ^o!tb~3]v EZ', sUQQ:(]HXCۥL0!_$X9OCu54=Vb,JڵLXNg7Gh5 jpǐeS]겍^Dlʡpk@m]lk(gz"=KP'Z5do=ʫӠlݾB+|t=}'FWARjlUV kQ^}Cbd YX֑IeZS"3VVH#lrD<`QǛemzz=Fbe;n3]Ɇ9X"<MElɯN(%MR,c@Q"Nzb\Ss,Qi+C9oOd5B;p@n^yʱ%bFTS/1=|X^f"t3΄hDd"WG: ШƵ]2h6cw>{!|c>'C+r {`ťh9 <"EG -wg7ύ`rx7>xh܃8B};aUqrej$K1)[tn3p'$ h=M2v#ƬQDUlX `G=d}W" `^K+3O( )RsF~>-t` Odb Pjd1QǙ;Ho<,tks58]S"d:KZx|q/,F:6zS4$ۅm[4CҚT~S2<Kt*\ 8|J&%o~IY"/dXbK܄1{aU2uES)hİ(o3Q^g UC&yW't.R('L//8Xb9*!vP9dz Yep,%n7(%4✿QO|rwp`eij Z.s c ezsn5G9295!Dybqdwvrx^Ͳ'CNLEB]fNG#T%|(4P %WH['sd=]ɡwf%(찊jGG4Ƃ$D,P|`aJ%=e,xuVbV~QmθKcUIbipgQ6tyFg1$Igln OEswx׍fgZ qLFڛ7ȼ[EL{գ%=N),_|c=UNv2~.UY٣( c;ʬ$^ &m6q yhF'f_KFG"+ZiU!j"{E50)5ϒ$*e4g(NMP-[=-v<#8VsN t:ںGXY)p߮dM݂йׄtŤKh:v bA] w=k@r~ < iN퓕"U~Idړ1wbh"Wz{ǤnMPB O*J+PG*Abm+^iNNO c@*HȫQhf;Fp&[B{ Faz)o]W±b.mQk#-zz5-p`nWyPUh._&iuHAG?z U|/o"e[FbuAo܆j^^_Ć-m{(jaM;_ 4)ٓT.=Lmkk4݄3n\Lmwv<$.VZ.X1 NO}z\ޔ fG]5@q>IQsiz\hb brk\VYxYKYBqASJԕGoJDa սUF$xgV%QuVҽrV<Zֿx&l7L! 5U0i}Љ uM2. t'S$_B *=YLPhyYgj7Xۀ%:bhptfP}4o#DHmocvĀ쁨/ykAA ʒ"բm >cÇ2vy )[Gv*Y9{)VQ[WJv}#q񿁽0aWD5d}(8w&$?o2If vO[] eKB֧8Wǣ]8 ҩ<-#cU~+o/d$( YO#wBq?N8+>5c"|=zl%~n>ZDؘ3>8`N8WiI~)NdEhk6 s3֘1c[6Kd'Q3`̭sAL$+WC@?P8x:{"LP_zrjZG&/Ajv递VkVg/O8&hyIjiW&xfb1|Iz47L 1G {c7+8 >Ž#>@&}cp *tyh6F-׽1}Z1ZhuI඗ B8FG^;ZⲂ2:oZ ;_ļ.9 ݩ܅\#A7;&h/2|.J\k~ ZC_fՖc{(%܊_VTӑpĄ2H˪™Aԙ ql>_\5޼/ :"M/ 3t#s;ܛbsNDU-vNr ]Pˡ>(ڡ5K5 14":SaѣPUg-<V[#~ y*A5-. y}$`M7xǹ[b+g#n mm2s\1X_D[ :My w 9ȸ=ChNmu{Yגp@L)޼ҝ=K@Sv0޲JwVOdǗ {,i7R)MC˳0kr3y^瞉n0+Y7A=wȕ5n6! -EUw0k[D E[ipʓ|Qw~xH?aᫎkN1pb6Ǖg[eoBǾ[=[?{QK*\mU n{5Iދ^=c^~ Y g(3/+&7Ӵfx4Bњ6ɓUg /|aib%($l#5YI?5mLʹB&p{D_O+%JcWd+ 71V~;(-O)b:k)j}2o} D_\jau'QJIy{.e([p+ ٯCaX T 'K 4klb`y뉬>Sʼ %zj%\:s cӺ\Pe $ʆ(Qd+ê9>.g5_)rl:W;\Ӯ0') Q$x CE)l߮ԓp]&Dtii׉z9:Y9Cr?5 6 ^c{i?$.,H:ԛb$&ču'D'Ab䥾d |/\a[ Urt{Rp_쉥;ӷFM"l4< 5zqCOWfu#|Nz_Ķ_#'EFC~'Ny|^}iꢜ*,%o(j`C0o%%7-j|s}[YRqJױo9hj0m{oY"ށ :6J[ZQ A0EKc~";h'!.~V hذ2?着 =q'`d&Դc|-A%M!(%eL}OBTAM9d6' n%Oc2QDWB.0nn0WI" F@w@dnqmiMmsZTYz' ~: w(X:FsG= >8T#̯j`;>QGE㻬? dשu(a])μіh< ߶/$? LGrwy\8)3g"Y+Jc(cPBM.oihril@ ρBtc7#? ;|NЀQBBy8>TmH}ϴ]Τ;ۖٸF+森i \Jxd?~R Nw g1aQ ~; *Mw@c IzD:y -RnlR-I\$g̬k,} n]޻T}\aE+Z[6\3Y pғ2{=#b=*H֖ߺXK#=҃ƅ[7IXT? ç&6~ލxHI`Z{ ޕpX+BUH0uXRDOu@|Q9JvRIA DTrՃF#>{/^rpCEc懌6Ô%QEQ7p{^kxb]!ٛgWTc@M6XZ_89Y/t!M7c Ɍ$J]BpnйA;sϗ;峾\u ,K+*) =!ZH!w58fGN)bhCiH{^XQ;¿^_tMMDW)0;eT %hJ Dp 簄O\@Wΐ= cԞhI;3#yXsh"<|C8ڱsEVO:G%seVCxzQjTGaNYWnZď͐(Kxvppi‰Kgϐ|r ˌ *i+xpd;67m{(:O5u5X?nD B-glI0M #P_Yg^:sCϗP ^IQ : Fli~8.:}_|/m#擜 ܤ'4Z%TK6|!]<df y9֞F~*ȏwV&[OLC[..5w{qΧ7}80(CW!PnAjGAG; -`]OyZ]ۓ}zB6vpV e|mwk';++s8ȱ< ?{ K]C(]DP#hKuZ\zlO"O6bVݕY~WBsը l=#_3ݳ5"~u 5X4_>Ӏ{H >[tT@ k\!81Ľ&.d׆M%8GL( x^G "ػ"[ݲ(8F9[jKbRh 5y; P|cYԳHɫ2J ֖*.Lf^YK ]q;_kyKI~67DREԒOka"o?5iֳhG ,W?2٪@'&xO /%pp!շ_Ru#@>\=@%;Y7c֗Q)AG ӵ.3vu?{ja#4QϞvf?/7հa?j)Ph@NVLK%b ~ys)5f6vS\xj;CSDHݵn />U>}};!阦+"4*gP#уgأ}nť }}'c:ɿEsl5-:h7yC1?4!E`jVAbYBo4?)+;t6){OH|a4'= ӂz\Γ|*-h 7] [re xR@RS(FdΆ> }-[D™6Y`Rfw06"pHKdx\Y7 \փy2}qJ>^n Ąs2X5>3QNKFYg}@$XuT#60Ma߱pw9ۉ{Et* !(zU (l_ЦG"M*dI< yV<ZM~g3 '(πhsFxӟ Հ]TDYMxB@ P^Sǻk/ƴ@\δ͆e{=q,`%ᢉs_~0?srqUCCƀ u* ':ϙDS^~| 3bp~\u@\KѦC囇f=w9ZT9e*V[wPlQʉGWCr r*:K ėYN^d/0J]j>fu@H gQ;Tl!"Q&ľ#GX\X(V at^ʛ@rH5Cf^'fN#W[+sBj;%&L" (,'hps4njn&JjejKزirJΜsߧC3-s]K,Vdjt UGo>9g-fl;73:iA0%P &;X~73[t||S+7􋋲4YS[L?JoU"茖~{cBI^z"eҪ>YF+ 9Ҋ;cW5mdWI[d"F"h>/IP]ߺb[ :Xp> kbAWyJ V%!\ %8АiK0ꆤjiY"k=留u&9OL=jPmoT MjЩQC}HHɸEvQ̋bnmV Q{UDqB;&"3`Lpc#(BN-GIj P77)uj2M+^Rhjn8 U)6-/4~t&Ѣ_Oe،ofCx[=ƍ%II.r3 %bŗK~2lЃe,"?,$ ͜;B3"̗R2ڎFME-|f5Ye[ѯJHբa _ĥь}0U,1wKl2[.X&w2Q{2Qi@<ÿS/f(GB,fh!DŽz8x͍{ڦμJ`n٪ލ\YDn_ӿt﹂u}`9.p*F) ^]98UbyV*wI3hRO7fY $C4(p0G1kvarDe BjGHYb|QĕeߜMh{ad)q/<>׀~ϷCz}5Kkro#-`46޼Ikd3}/pٞz ݶ0ˢƐXNl[i'}?xECK2'a^84bAk'|l8 mG>5a;RȈk<\H'x97.E1]|KFllD#j ki$b?Q:"Gu̬B͘K8npTH6._nPݢ[o_dFz/y.MqΆ n  ࢆxHԗ45U ׳&% cutƤ 5m aL/]p`ƹh$VY.۔d : 8 Ӈ Jf 76rJR̽bTQ) W:{ߩui$Fp6& =Mu^2 h]|W5PUVvX4,3ú[(װ2T!5}+Ds,5/Wc,%'7}hKc]x(xlk[Q=Cū*O:;dUl[Z] &X/n"ƥVPK2mfJ б+dq߮JJ=zkllѧ02z*GzZ̚Ň9&CƦ ФaHMZyq5T[@d[=; A/49{U1d5QנBiƨ t#Dn ǸO˞546R0%A^,A==8`zj-$elY, s.Dz;򜘈)usHj,Pls&p M>\h[j?2xE[Iɪ4"Cx/6#yfbUЅG{f]`5H\\RR(,]v1 fW|a4}E>3=LG'. (&q\~.J'z762t~$o8)ھs!NZܪҤiT! "j 0 70(Sgzww-=‡x|1DV̼Lu2܄qR␌LkA>){g-~Cl#LpK;:LfjH` .X扙a(ƜAeñ,̷8*XA&d,ǿ7 W!Hͭ"6xavc63Ǣ$?\=߬M,966[n,2Hg:GY X/ C&yrߍ`C$_*x1{l0T:Pn[;)hR#->T7L\DsPȑҰ}7?} ߗE@,ÅzP5۝ڟFXs‹Xg]u擠 J'j@h5Aˡv˝ȁRENFz,lZ{mM#ۧY'nxߣaU#9 3e.9\A}@ƕe;3A |NyQKsh=mߧ mHc(sЧ:Y e5-/MP񖷷 /4ENڢɂ ќ$o%\XN]S`sOXVh jWQ 3 @·喟$/Q˜ (p*I$% ayb=?q}EvƛS38}ԣHcʗަۗ<9O&Z~Yn&'oٜ+H$^ 5ɪ˞m5vގ:#Y^z,.m3Xm!ɖ"+rY&EEVjѿqknb~b,g4uZ6Un)ܵY wlyTwS~<6A/XD$dΧ*5emYx\2OGA%7=O`]4N4}3vykCM|9'K}9g6iH ߝǙ+v(=Lԇ6Yg!<>(mv)I#U}h X&tT,j)M53l_ ,D+Ь-vEd%J<e7ֽO !}vX/(i)0)=Ŗoy~n<4uQ0{љ%<;2=dI:$h%KHtf-bRu48 c1chQD䬻mԲg-m,\ δZŧE[m4:)O=h)a< +YY~psc$֦>yU6_4`ڹ26m/}2ᛇ-=đD=TgDm=rq>Mw(>k:eCSa(YZJq2; `X)d"^,jy*IEޓVx%ӫ")L]B8L=QL@Eƹw|>ӨX4:~UEDy.R2#XQ)LΥK7m$U?5duEρѱR=)uy@BaVӡX]Je>pu%3/8N_ Xm\4w0a+6LHVx# fc fnDDƘh8r j9oWV+ˉ/?Ǻӹ]K8p[aO!PP%tVr s%&Zԭ˱- F+rA|]_faÌs\s%9X Gx*̈́◁$@`NlQmCK-Աi%(`ՠH^DTB] 1!_]-dH[loAwԙr8r1UR `M>y8-Y>ѷtRcl ׆uXK{}Ɖ.XMR4@{҉8a^8Heዤkeu;;.=vk~*72)w*kSo n04 6ALh`@%s#\P4NA1*dmX%T$T944j$_I[%&C?<7?=VL`ҚE-Ow"6t _%[G/ɜdm7GΡmc'{'f/{aG<8|MQI}IrEzp«b0ZZ`:-ۓϻ6 Z &eb?i"bo+4c%LnZ c(B;&wYdCe ;[^&D%]4P%FO/JN*ԩ cN IXؑ mn}ɡCYVē+x:B=">)d[TE"\bFRol<3'䦌8nnΠ?b{(j(.4*nrw!|s-Tiq^TEoUMF 2lR%< C+5_odQt{1  pPR f7A\`lᔥT3-Or_sͭѷI!+q "[RIpE.BҨAmZ7qH)O,S r_41V{oz )*.ImQ9eLR㺕B m6cgF.,x: ¹5҂=o_G,Pxn 1п4[ަvd]C7+1S$>!uG+wY{*Gh@⥀lid&snWbi,~O#: B$̫0pSH {C-q)u'˵ [^YQ/aə`o|\VęJ]çhNvI!G9? *,+&*NHgJSW#*ڷiʍ5\ͼWgK]ɫ R1b𠇣н>>㕣lf\rrh6U4hQV<1Yu5s>6߳\ϟ ԙoߥuoy镲FmJ`6爾gff)kTAw?$,[eaq.zZgp F^=SJ0횇@ 2ʪ&0N(Tuϭ8n<,lfDޠ: 2]&Tɂʅٴ}"OiřSBN-hbX/lC@a8%P5>'|Ub ր2~uM*LsQXCdd ,\6U~Ace!ևr9\̝NzAN34k-(YN@h@*RSۻ5L%5y ˓oVF->1qɖ'ul> ~[?v>~/mM:Ďi $ S[0#ea2i~f<Ԁ>]*ut[aheg`9Fa)X(kP+zR-ϡjY1c6Z{)0 +$>3b* "=N"K9%=+oZq$?,zMv'FIf6tNckifQLlO.q<~$eZu[}8Hn9Pbq(.aDTj3FŸQ@F~Ƥ6kE]Aw㌠ZÏCस{z,TA۝zKv*!T-:4i 4:}2/F 0i֓?xJvIl/] | 5DkvA%[^O${~7z.[_9#|ފx좻#W IڣE65}=EKВmm90W}5Ȼxb/!" ୑dmT0Ʌ˝|#S \$i[Gi:[6ܲ8#F$U,T1Ij`;٨ҚtPbo - Yɣ$]lf}xVa 747gP/UN}!¢힇J{<>Zu53FEv@Gu'){ell$ u{W oLT7V-K\-g"N -B.6m9'% s;ޫZC ?L0nU4dd)N:ܺ}~E}K`312d^_ rٜHAc@&Հ+{vS9?4xt#kOHRmZRL @=QyD!B磀h@fOG]Rb݁Krzu{0o  qnK;WYr-quE19I,OlbS9H";8 cQ!E8rxu]k׶`sKٱz>iHU5`XN۩)|mH^/ƴP~``P(YwYS.ဃMwgktjp {ḈŚtxdViy>A4 NY5xi[CPr+[syQ'^D;$azmW |wծ_ә N&7b u i/\ɷ:e}ز&ڹH9=W ?R48un T͘3k?˿=pn?ԢRVp#|PƔ_Kfs^ @"Nt}n6^}m77`3ٯC KSp_ku;8v[)wE-s@^z&7wYR-۲\ cV2~q]J"H2ę]ݛ($eI&B7d\UĻQiv" ҴQ=j~B̈tDdTMYHH)j?eD/ё_&JדlzʲۓI(gq۶g/P3۽xuǑx^k2 yC$ 5eLYۮl-3WIn' 2@0LbgdH?TϸɬFz !.JLVO Ãzs]In!=xbcG8a|XVoߧpWTmڤ!:O*_KްOrܺI0b;ڇ t͆jՍA)uf5B%N :Ct5!Z%\K&q.N?B;($590]+@3t,\ȯBk"fz 7kuCi`_X~8lj9D 帳OɃZr:B;5ٗ1qxﲏ/<\;'u#h*Q/DI uR0sˍ^l 4%QZY՚Ll>FD>0|T(S@& K!R ,bRٖC&8"?8LD n~otl8×K(rn}m\$mvg2ĨO(7-i[F$GVn| VB\֐ v 3Y NA<UŅEwVȕ-;{V9k =r\IU\BBE ӞPS^M@}p,D\ 9=ycs*sc= ukim-t+feb)FG@ֆ% i'Sdr*m h -Ʒ:<>RؕV0'; / ގ,OJ/4MӗR8ѹ8[qf(yآoaI:ƚ|׫b}Ųc!Žl(ۇz RyY4zw$:l8lg^ RNWVAqknoKOdv-T3 Yc_}ݕn!e`n -i gT!x0 "mŐ:g `rD*JL%BkKnurPדcׄE";KvN$NPCY1!]AG(>v me_p&ߖrS`Z=Ns]^f!IKu6{YNmAO?5 q15^V\ʪ=罧ˉG>Ll[,% +֥5uV'iJ5ttGjø3#V@ɤI@$)'r| l{܎G6Z f@]Gѻ(FN?c }J`;~?JC@ *(@^CVbUЇ@T(!<_R Z$BѸ #D\.hld%7z'm[:77Brn7䨱1xJޤzm3PT{X@dƝd] j"KBxu OͬHҶWXm STz2>4(Y{0lAl2,'S}/VN^$e/Pʖ@.SlzWZ^޿3LE{7Xp W-nî_ QJǢU_ |ѓpA6 kFmGť# oHC d`=ن)4>B1߀HX»V6cWjTr|JrwkVݧŠsg>bH'JkM=罠HGYtm6yg쾯0uop=h/엾{Gd"刪lzxwEJש+{T I5%~`fWY5c3>G}*+<!ԜYǖeiHk'*Ur=ʾHxq ^SBl!љhܑ+$h-%&EHu)~.[;tN"II]Os 9W6Ɋx$Tc*{uuepuVci{~2lN:.QP@bUb(бkJЬErA)3 it 8檌Vq懈|+5 *s:;lJoE\~p/mlC>sAoG6HVC^bȱ~o bћۉ urK[$L':D@ʨbJw,f1e2%koހ%T:vgi棐 nTTg|S~{|-WG]r@MSĪ̅cZx[esLɠA}X'upP=I ZvZWuUm%@1(m2]q{%Z;Ņ ,T8I'.Կ\ SI\[J74=$27f8._<;!'W.<׹0pL3 -|ɦ3ydBaKV /&DžJI9u޹&0W 1@lb*bqEEчSW6M*IZon$66Kii1NPAJM\aFHYf\q6N@RmL͖j'C7+kNɴbIe'pЍN K 1b 6(׆~ 1% v&Ql=訵"x:vq CD`%MT Ľx9AeA߆Ԥ*u[X1#DNWRr\ҹqyԪuUD랽<6yFuRdLv 6Jp$n r$qߓȝBQxs 'ۢ83R>K)\RYyFI E[ixw"˓_{XkhWic^<[U6i2XHlǃ$eCTI00AHN 'B;Jl!,>ʧ%-Y@|XtzJZaJ9+b\CӣrÓW?$\mT2>vX94JEzcNTN`}+Z. m9[RA|KQ;L!5{V\Vd??J9zIֶ C i++}s:/$khO.$"A5 6i3,>XdKR%[Gaԣmo!%_YaED'!]*3u=0T۵@gE2S#%q>/ӊF?S,!@ )hq4[ U=FswV2Clnvb wjk A`&BLÖg+,e R%~c}#px vI2o*l*ը?WKsTOPi5Pehoʟ,٧h}>QԊ(%VgR6f* V|ϧ\.UÁKm#qU|kua'r w7 0yF]<05(S:ԇ5N2ϽkxId̄iku-<yk)U*?KOYvw/bY f*%'$s0¹[2<  WoTLXҥىmLuK:M~"E υO4;wZIq$;nY AQIBҜ(gد\]U٤ [I@*@@PLw2&^gHBs=SY~\˴֣կI F؋Uk J 7|[4@^*~X;w3y.妮ϓD G=NN''!-)2Gh'˖1ZC ]fb`t#zז$>onFcD5kC?` rܞ2 l2ָl⿨bHbV銬8_=Qֵi*)rcF/rdu(M ]u~k+B3kfj;կT/XODÂ(q8*5i\{~Mv[/5ˤV܄9R̭DaF#kx\)PWtHp0>#n1JKNe/&ܖ\mtGiuQH IcWpd~8Q(ʰg԰DM&{3v?N恖~ ɀ+z@]5^4Lk:}Dp%?ď\j"Gcnî6HnGŕ쥑s# a;ZHɪThǜv5ܙ@ x@[5y [c~xWI;OXBiy71o8]o uBA!vUn?6;v嫫YI`1Bv`@]- 2֧@gCDٿM$iJhKp=>?-T0EGܲMIY(|cPl_zѐ?KAxatk-d슀/šL5C.b"AR"qlf2pLSGDOkRЖm>W>(Atn;*,!N̘:0]בHHMɬfIlՃ,4( IskW_LR-ǫ@W iog?5xͬB,]ej6$/=ݔC@Nt#(O/ ʰ|qFM``z mՐo ьEy/9 kވeH^ RZSsjʧ`FEoteRb,ڍ1|[иq-@t䑸M>N}.}W8+Tt $cvr-Sd⁳Y9q1.r0V"jA4P_1$'e`,Ɔ>S?-}:!v.d#m;y\+.DԈ^YzT^BRl)hCu2Sgzϣ*ܛ% )W~ LxBCe_HZ`#i.匁8 F;a_ym~j'T7鈭򈤀G mB, EWY:L>&7;OQM.0v%]ȼEyH9u@an9bJj껝C4VNt;/6q ~OK}。q+l~MA =|.2fo-J!ɧPLb̑SE:$iIkӧ$澾dbG[9Bg,A NG21 %K(VMCGtW?DEl^(ZV] UէNPY#/高dfV 5Lh B*[x#E:I/@WyLmD ccbge_JzGTc6to,NhuT̞cl uR*ւ-~*`vF]\%Dx>T:8rmdA1?gۢކC }فΑ~wDiA֓kyEb-(DHyКuC5FEGoϸ[,kÂ^ ԡoPx)0 m9bxdH]BAuO3s[ XHG F%}j]v96kuJ/Q=C$Ac6@o#P)kV#d3FoQƯ;V:2=2{Σ"3U- Q(0JGJ1f'ȴ^GL ?W%Zsu+Ȗ EnvmҌ%xh.|}'aGe[库{h eG[W9蟴#v"?{fد)̖VKz'w~C7;m,k΂xHTAd z6rÖמ~%?Lmk3Z9ZRx\&@u.<(B i0]Du$P<4ø_h܆, $1nqf`2:74/&[QO-A J zP'bde{(%1}9 ɘ r}tXðMvפ"Y ](*چ~"&|NrL,fݚ>:5fcTg3ǟ+ nm]m.|U$j'oI_2y*MBDzJ'b T)]^EZ H@8̉nyϏK~$ZkW{ēk9(~ٽmb,nh=GY:[5Ϸĉ+(;]RHX)_R7~+n;Ega1+ Us:A W/OGFĺ]IWpTHOY<o/K˴.z؆*dד77;veSGߤ@g)Ƥξ DwʛjP%k=jiVz jW\"*I$ieٍ4aXnAڬ#lAm>mbh u"_(;txz(‡FFe^wU "\B 7 Ϫ͗L a'<ɉ(4lEJԃoBP. "|8R*05* y(oPR??ȫ6Ɔ-dR._M5þߠ{>S߇݈ I]9m՗nAm?~6^$V+Zw_^w~Q،m36T1 hߴrkY+ZʊqSFEq8l(;톔Z-5߂'Օ2Fv!Z燎jM3PQ3Z3.vbZ ?iqk3Ly8:A<Y#ݘ^}yg]ubt(xcB&+聟=Ubǵ(-Q>u6Á( I䴃5&H$8ꮁ=TM0B)RMȅNk˒j,2|֧.o.,3;X .)D3ӷZo:sKZBtslX Nus!@&)^E؉n_p#cZGѽtiov1@΃lj}w9\Ts {0}5Շm=]xۨR"ZmM] Y[0W~gK8ZPl2n^hJu/$ڈx4COa{:ל]nDWBZ9RbJrP&Nn(vgZ`+Q# ƃA qcF{de\E]g|^Yo2.!_b4ױZ{S&y4wҎH[:b1݁2ZMُP\$k&C-)ȤZJye,k@c뭇Syb'-[,#Z|FD? R?H)A(FBDSM"syQ,qi2C.ZkIKf(#Kxlo)c4'Xܑ~@Z4bqŵ!3E iLR׳Ѐ$AGAuGELw [spihquz˷hnO _-;i(*&,yw>c ,JV3]z(g<;?Z]1Lb=ZE;P| 5m'f.LFODv2mAщ^ǶmxQ~UB$>ΞMٷ-U'qu{EQm$f/c,1ؕg^g(2? o5x+WmYyk6 46˳VAj)S+*LɄE̢F ejQGKj+v羘{A9 5#cS0*7!@G[NDҙ>F@f243S Uko:XL5uE{B_<װ-xRV JZކĮa6.*dOҊٸIޒ 1ߓUٱFLqԛWweZ ۭ{rQL7K>}lE# *lJ9ϛ;b,co.Q3 p6ťJ~q<5GmOoGGamG`CQډّ0+_z_`xq) 1q6S!:LBD~[ ذE υ,/zSK/Ά؉"jFɰE!jWJQOKݚ 7AӒ8ipJ03ۘNެdfr6F6)qګ+`Z0闅QPʕ;'2ɸt i"~UkЁZ]qò sM'yv N 3= t?_ [kO Q߄ @?O)X̮+qys5}r/!.= T2]Gr&dYpr߾rm8K 2 װ tO'G" jYyל9]|H`ffCHwN(Gv`-B$Iym#<ެS-r7ۥ3/X_!yQ(5w0K Buq"'+$9/A wtdՍ~eQo\O>~i {ӕbg APiMpTfO`݂V7K8<6 /ŗӒT ۤ,rGt4|[peš1aT'Z#LJq/\ ޅ2[*- x'_bmF*NXBkC!pݚ tjfLCJp]EMWfIh}usM/wFgD9%$&?2>_իH`7DgLDyefU.@_pZNS7hA[QWP bhG,vkPa zŖË9^מ܀[f.NhgҮhZnzu7={Tao%&EYD-!|/4+`q[ҲIY߉ɢp>Acv (mF+?0*/2y?L. v?;Pギpf],Lʄ]|}_%t#zȯɭugP,5?J 胚4K*}|ZMg_At63CVǰ;ypfFG)ƯBm[xqAjCmY@ 3 Gs*bQ?!Ʊ8a1kO^sEO=5K,`9Y-F%RX AY.gIq;f6P}=xnrޭodˇP%~#p)[k$R n T+fX7E4r@`$WJV`Aө"ɲle_* ˷]O'z4pğ4K?=Jt񦢈"$u Y11зbT8xڎܪ6)jw0u>+HCG\#Nt 5X%KOQuxʿp.Q\ <Pg%7u>n" 7&Fȹ S%.|ƇژjjA{Wjr?+% {L0c{(..$ϘR޼dcVsq_FKCȜՅuJ<3sOǴBv(tnImk=׭{>51ETxJ7๧ݭ:2vK 4=Nu,' wTt9~ŗDe0Na.f?Z0BK\ᅒ-oQWx^,7_곁Lo J9.¤ߨM6yoXu#{U^Sb86p6oO`'FaÐYh?E* {[O+ڝAGdlw:K^Njsݞ RU*GpX>ThaDr$,+!MLLJ`Ј*aZs ̀7";͹.^u Ok4/gxUڔu]>N 1IA%ɻii\*֒I"аPxӍJ'!0S;4nll$msǭ}M^*-yIZ59qvQ45Ax]y5 zxCYW=]q7P-@iŸA!~c ,9pYCF&Cq8c{nFTw_x_^ JN} ԕ(J(x\sfp=2hsO+O`Da#"=߱X5wb9lZ2>]ͬpfg:@*Ztp0"":[ktZ;7,1]C>Vlx 9-NkKҕجj9Q(^Ésb]{LUyPxl*;_ NK93c!"ml < Oыi& kp'2)/>E޿K@ӶRyß0]>kUd UH<0i-CzPcW[eܝWJt轃߱\Ilm-Ȏbr&`i8]$7Տ-m4,`z#\E7|u3xqt'O vU9ZTB;y1Pt8 Nh/yOjwr;%S5Jar(ßԷI9H{݇B#;?D6gRzcWM\8؆l;&#/dsmYNO]GKM׎X5T>IҤ3@0;c[IܤJm|9}ڂ4Ɇ'I/NA_؄cϗrd:Q:Gal7WX !ٗD:-24HUf%/XxB_s]$C% [@L-i ״lMx4`NMi*)uc x ,*J Ixngud٣Sw̚ʎ70)܁cFƕ(|=xy \Õ7d2^,S8J4/eRoF:2:E=W_edRfÔAu1Tffpud]]s,W;XRԎϊe*Rh K O汾WGV9rr#8E˨.ܾIi'coSdz]Awv.Cu,=;\cB '%?,)dip\~贔$y*r1*/,@x.Yxy2'fe8YSbz:ka!BL0ȳ\0fZu}> [_FAd 'Bk$7g8?VḩY ƢBlGkSAY#>!,qz:΢?u(:pm'ah S2'$ 8a"U [~uD8`^c*:nOqX6Oĸ W8ջ1'i+գjjuKP\Kb6~.!rIHYo:TؒcA1iehUh1Q(0ǫ2@IkA vocoȖ57goKsE!ӠA¬uQf*=<_,Lt(;H$*4G¾H57qa0n==-2_Jc۽b/vr,@H-Ao&q:Ovt:dY%wDMON u/ 9w32fr9нQՌHJ~B]H/x tFȮ8rh&3[J7.:Pjeaj2DN%}@L٪*4SJf26i \m3%igcɛ7&`Ns%WA^y @*C5.SCSd|"&UuHvk++q^g%Hvה1dVw145R{WȄ8 X"]}D2r'QdJźm".L$DmGj^ N(;Fgnº106b`vGّR*$a8i$=?6oS唾Fqkn|eoOnAJ[ T@M4\ 8&rbXkJPֈoWC߷ω$"߶XrYz-Zr(FQ L[9XM0t^=T1Y& WC<Bzx< ngJDĊ:!2Aډ2gfgCw{kx Ǔ#<D7{PBM1TFe!Pc.Ky_vOF̿y,ܘfT-{Uj`_J xc.)vV;ycdj@9YJaJeʌpner7pF},=~b OE}OI:c(9$o|^[pF?:@7RynzyALtYu8nd@m+~:'|*VnB#SK\`QTLyNVS|Lhn2p:(Uރ*$ٕex]~7w"į8S0PUi3B)# ţ1^𚇺tA"Bh l(;Mm` 胱\/!"rtf^f#]8bR5ndhfSRBqԫɭˉi1qI8']6Z?X^]~+3 ;}=}+t퇲PrSoW CMgDZWQ.pe>瀩+!t>HSl_ԛM5m)̗8aÇ kF6+KR JE'!z2si3&D9qYt.>[ߌ nhD#(dߞS5fUZW" d;B+WLXOm֪b0X~x+wgœ,vcvz[~&F"7WH*(rW%VP rT@Cmc/ ?a4T Fͦ5DW؂}0E_]^X͵BO+y[GX`kU#KHWY+&'xԨ<FpӅ;J*U 7E,U_W'yw}NDbV yNbPsVjVVa VNa;Od{Н(Ӗ_J}c O-|Wma_s$kϰQfdoT+[!0(H3:[Jz%NH 'GyuAzfS%ʎ'D76DG$12'P}P,aX_Yxg|ΞYG F*v؛qRDmѶ;LM)#E52GLε;,+ϔmmSus*1U~s~.@RIZсL;}=oFw, |T)R_|}2L*]cǵFN#QMctX~fގ @r5U$=Hu3"/-s-]F9$6.3 94SI::"Fw\up$KHK$ "նSG빫@Rv.u=-u?wBLܢ ڛzg/G`fc}UgWO: OCGO[~ᅉ@T - DJw!yb cW8˛S[(gk"R}HE$<^AnJm/=4|JտN];e;΄/"Y%:62F4&U*p&Sc cBFTS7'/Iv-l ޒĂmeLUfGF7a@W8f*??wV%9i'clڶI?YzDm:!PØ-=YTbO;%Hf+"m淞M|ui8G"UnH6"P3r(ѿTn+IW]zf$$ 9/H3L%XÓQ_!/|TPio+pJS{™y֑gE}Zt8QNӭwFNG`vOh2PHĺFyĸڅfgR(<^~۾dܺ{iGI  jb~Šޓ} AyZp-m'MK ` (ٚM?gA8kKhcN5)N:~ziaff` nl! ^ du+$ #5{GT|Uu[()m.pQ%[e̽.w r 8Wqw+ ͪKe|؊$/nQ2o›h'a!*=EGQH3<zC0W/YC:sT>7Q}M2yٙ +go_kgj7q8V>Oa>U`J NF#]9r؆$ZI kp{`N3I…L?|p>}/]}6 h6|ZAOuD9%Q ҙxCK"ovH:-SN_&XI G&v2=l VNA``("1` :ex㼼g3"F^׳#t`)l:Vg1XAZ/l-$hh3|NE,ǖz3,߿+m--P9LY(\ <_mb5a/YMW{ۯsL昐49s nNR6lz6!hx!_K:+Wx̢la'ޯ-IL@WԀ@F(qJ&$ba)J05Nb)Ӎg $oVrKZKÌYZ8Q/ qe0C&pϲ󊑫p><0G:^4( rIcF_J`Uo7Vh̊ټ#RG ϵ:p >V ~h'ky#a _#%{cf,-0veSKn_ X'{ٗe^Pm->WǚL0B>aX#rE]: -C~~= bW;֭sC\&3hm;wtc"e|0N6RCR*2 pS7&ײZx_00G+ =lHF2>?ʛ!pCy+,*cnE/,6e[ B_Mv2gF6B4ety!#`_ i*q$op ̑CX=ee{QZ+G\43҇r͈R8;i *A;o7I3ޛ$|S@AԽC|㲇*ӎdPq22<#ذCRaֱL*Ε;q:HF=Q<4u62U@r_>-wXkCfd:;jb}T?Cd;}E?Eq{Î-\ 6jZ3f=z=Ӵ_&CpW C5 tj~F\W`Cޏ3"W'/d<^ɦ)pf&r& EE%sK+\˃8lxqk*2+e=Gkg4#r>.T9ɭ״ 񰏥IDAW5δ'jEe-[wï括NUsȒ1>H,UIlq6F6;/58Q@5TMٛbOr;_ߞ| gX{>f~z  O+:WT-MxBF"P]v!"')POb .UV֎JISVE2עP@r=-KpfxI2 âV+T:6ۘ2m wk5=-JLޒ U:zYtIq= KOZሻ_/ u`2ԻL*6]R.*hS= j%짤۬VaW`9/кa-G oxݵۢ Bu]UHKKxhxc+(}O\ T |kd)cR·&ZI6+Ӌ@ x\B i;(Tf̈́6I!H*0ŖeAx1{!s(doE[&H>'i"8:`a*׍MipSw' ]OJVOȷ['V6!%{l@U( &tF\L 1Ь(<& L " YxJ!J<flߊ+|jl=d/B#>Nx S98(TO{]7rӫ]{;Z3PiF^5Q;G/祡>P/QF4S `s.BWP am k(ޫ 21 )U!)}&_9u 3._ik+܊EЌ߷DPLDSm@w[ys.֙z PJXsndsi0ap`lwNI4tgv]C\;5$~ZC@Pjw]C(Tp&@-m_ ]؛~ԞDH-hAd낫[JZR ͥv/Ep%*)iW2Z~7&ӭ[p4d{ns)K Lu#9`61 zIx5eo?$&\M;D^MH:I| ܛdKbELE߄M1*NVU_zI:!k (ЭeA^WaZ8I)*O.b+v}nҩjDY~RR壯B}TX7Y6N B=*2Sc$ t5[;+~$iMRvz UvϭWY;pb(m=8BȄi{s=H,C>O1:)W 4Tq,ĭehG++Ĩ-tЊ_#B^SɶSl4nBĢ@zS-UnZ9K zޖ=u+_@GJ9WЙ*Od| =U\ v,uW>۸"HHxI@*䫰@etǸ dM۟ȝHAtXxH v4K^eu`wuwi ClG;fܸ)7 IX)W^4nf28%VF] 4cK3=9H* lmc̍w+it { tx"hh7r'xc@VA.$ &MΚ>@l-h*w Iu&A&1sju T lWuq(Zřo)&%- Е#&ݻz@Sҍ.\)k8%Hh+0Q\a,Vb{ԙR9*殄{(ʥ6?;yc[z Rz7o2>q*tF8\bc4W)߹(#!H-|,P%e{&oQm1/-ȾȬ?]g`u>L_p̫HnbYfOs)@38RP5"sHdE\ۃZY%,c^OR6i@lP! 4.Y{VEr*Nށ~yqꗄ6vD[<-*mQ}RG:慂w;>HZ ސQyq{N?G48:b:$ ?t1y\ qRlu)ri4^V92ts>$ʆg*7@7"MZ[.qY{F#y+2D˭.Cq-rQ,W-!iGQ*\:\'0cn.ϫtd XDqmr_~K=1G ЧMݨ@{ |~!+I1aLYnt" >94S'4x7 WAg.wQzZO^Jޗd@۵eT&k|C2ĮbpK3>jv@EfLDsreJRHӅ>fa3; Ic};v7~'C?|78 r0'/:-";L8z깚1Qm_tʪOZ9<//YRgMo+TOCCW"3a%M;vR&>gp-wNj`ZUmYuq\,5ףݘO>OQ'0[/BIK^85@9? UO)<9g$byok2΄KGԃ rCuO@lxٸڷ%A.i1OW?v EɽW" @ݠ~odCu4l&pkk"љ vyQ6FO3K`uWmq\>-Y۵j@A 'I/s߾FSI ;ߢ/9/Ǩ]56Cݖ  1WR!LXwםw3YCU8P\OTj~u*lQ*'_R `9pPXp;mkRqV%Q`0&T,2˽\P^ n~t8s UӭT}5* |,Йs@yYi@Md1*pBɒԿ"O@~ȥwGqAr+"2KV@B[x֙% \݀RU q7S[`/<(0)aE̊t79m/SC9^^X~du T.&(CEzF*Ԅ};]j2K0ޘ EBcQ3 Qt[51AEˣT1@6LE3`ěDkVN֒N%f)̀&2]@!,̽t(Y|4z.tH)23a7o#[Fa"v(#?imv/2BLKƩϡVIMÈ7xCP\98%ڹ1 Jn}uBڪYx!ً śKO D,$~7s˼l :3-Y>cWro± YY  :֡ P)z (jDި)y@|%nXa]GxQ淶iXb_8`JaҾK:%X97bp?$@ߣv/+YY+$aen_βWe=z U[0 qIB d"Mx~$D0a; ),bɞĽ}btOze]}c}~/=uf[~@yXP~&y> QWx>D;MOdTUF L>n/aU{S+ؓx! %?o~O,"UDک3ur-Ǚ WZzX8d d~3^Z4=;*Qڞ.cA&3u%x8Mlu7D`u4rf5UY=X$ABŹ7'| %K#ƟNAi Tli fQ ~CH$ ,d!?ovG\suB |r41 J^{sirW5GţD[$" .7wVɧsv</foq92yVUg|:άP},Օ Q'~~-GY6y?+IbM,3ɨ?rmk$OĆ W0&pr]>k^x|4i`iH(K.h8YHnbHŴtRQDRhn?'(e.\{36!0cGs8QڈqTܗ$0(H~vs9ϩͳ^oAmA!1["?|Uy@h+]dz+S 0 fdǝˎ$,DmRB)wIL}K 7P1R#e o a}NO+Y3`xMp*PG{cd "` YPZb8ܖ#R8,Ht9T\VJOdsvL#O@0?l4i鍹y 2irxRjc Reb'9__Cqa[Z笎YZ[M :GEpmsDE0:tcdbMZ.{æKOVajRh ak-KW?pVΤ7­Ѡ@k OvCݬԯچyoyBkr@,ͅRњU6tb-cN!bDh 4\~rjk_`& Ne# yZs ƒ_YgZ%J7N6К/LTM(z!Ut ̋ L ]wofFe6~PъX2Љg[W`[za n '57f{- sNy"!c!ArvRJPORmW[37A—|lEۋu027@~x2Y _F4AQH#6dאD5>#4$WO!XN25upHY!)F}M-"a>P1FL%Q\'(e&C+gA,jX!ZU`Zlu_s;G^ASNRgUmzT{hPr1MFWE@Y.;pP4­-P\sLX8V}E8q `Z S[2 :OO[spgRlE->($J ؄/l<31PlIx h&nnѼfw!b gC}FOmTx٣-n7GDntsfM_^IZʺ<UNjgRzNFXk<'\rHTNu\{u3G` O?\%S*l- }r.?ye+Qr+×Dݞ)zmnԡhHLh+~{67zjAƢn}@ơyTA(u(%ɗ_ASqMrO?FѸ*Uc֞iȮ(<*n\ۄs]z-k"RhK(O;VQws 4=܁T-HT.eujx C#s(UL+2.Dr}zB3>Wb82YrDrKfu51ވ%F1`OvQpъ@d>~u&=h&bD^̲檷vY"O$v(COk>[E/~@3{0KL1uanI 0}ģK!qKyȹ>"s܏jݘ#9s*p[0Yr\RIA$Thۺ|`Cr{AwЈ6(ӧ~N΄έUو72vSy64T]/cwFaP ;w6Iu>S rpg^vwWoM0OL`% 5֡聰?h)C]1FR?NcsVH)x_J=d&hO`i`,\0 ĹTǥw[SZ0R`/Ik!B[ 'Au!)RaBտs.";,Uyu$xͩc8"J\(emUI=d\>g,&h{eڎq5!D @ˌ!=A,[)nu7zE_fg&z[[Pd0|6;4mg-.qlf|*YZr@q^tFk{(dM.FxcP>kYr&,Rony孬kI;0~jzsZpIK+qPݳ.vQ?O-R E7|SrM»B9t%XӪN>0 NĜǷ$E5%lCA@ak+Tb$D$|[s`o]#)l.i:k$Fd/\~C[ӷWY1̾ܛy >a?l3K!"4P~qC%4lFw@:i($#tЁ[ЉOڡTBfޠAFbe";hJVDe=cj cgY>и՞wB,˭lJ΂f/{/Gep# ԗOAä)7Af i_d vTL¬RXY>/}10-I):8cM^ҔӎbM* 1$DsԬ"6EOgV.uFJ殌 zY~m1Njh}rNgvq(&71hp @0'2-ua5Dü9cW޴|(t1c9lN@ xˇ\QhmgW-I 2ufv$xN$B0uڞ@c+[Y1꘸fݘ+A81NMH(ϰ5"FJrpwv[/k= mB[TseVe *:zrnqX̟2DHlC;ESY*r*01"l^uU@u6;4нC_r98g&յJ<<lk>rsgyhseˁЇ Zh ܧ6ث^X]p8nd`\qpTÎ'P"v@Va%ovk#1z6JBk"2#>!b@hU*Xng܄Z`ȑqΠPqdJ>;"jD'%?<>m" Hei)0t[_ hm@ f$!g.@ Զq=Wf T _ _EPI"~Be{9qj+Yσ;3uݧB0ʀuh܃b8A*Ա4x/0guܑoha|MơNa/i,BF3sՒ.]֮}V)de&'5y: 1浲J=AobF%b+^k7og00{.xB`v!w X"&4\syn"|tέݼMTT$_z>6/l5e=BLWb61x84V T8 viDyp=N\db 3>6ڀ<;+6WLo|:O(Q5HiaMou,V#O]2JK+'_7]a̖1Gɉ ˔vF 5Q,Y^l<<Ս>Cq\ L|CΈ5,%9$9coaCifxFUf2HRcٵtQU+嚆4j*4M3bL-+# vO -7cv }!;5u pLЅ-=U)QF n_ Yit5KWB~WAiF=( zv6$j GىmN&P-?Yu;DB<4K`v|M|J1Ї `٢$ڝxI=Nil*)Lk#r[Wsf2N@G8Ⱥϊ_?]bS4^sz,!ܑ@崣dC{O~ B9o+\2?i!u^2S-X)ǃ"Ϙrp#N+=B3Yce L q^oe#dZ( A?R[T;]iH}W-D_nY%OlFL[pq/+Eyr1H}I91̎GW5Kag=N6ު=Ib(Cqtz$̃rh=%G=N&pHWtWЋlDryz¯ z4XuʸDGH/b  '#0n(9$VXjx>fY7Ճ0E?,eEn/=dOBF0r}7ŦzJ=^F#֬QH6٩=Ѝׁȓ/@5RtڦYB ӑ0MS nм bBEI'H9ÌԥyM%OYh0BI LV]o`:Z!v  g?Eprj.'bY`l 7RLJw;eڕLաF\yLY0b{Fx1aS #Sа]K؟-\msfXdf k$+L݀)LwB?A@WRK墽)ՂwcGܨݭX+PL2,kcʧAqd5"GHЍn1I5ryo1~$ObWgXvuuL@.ߦoO2UZIxө'Mq^Q4;3BVFt Saxۿ/xzsK^J݅f(4(3Ap#mV & Onh 5+j'_ޫ=>/8Q8 n/xNň;G\=0/rkد^^-dƓrnٔ*-4'i 3Y1x1_* nZ|Dt{ z0j3pkqMp }fnd "t@mAU;m:{Xz)$6@7-{Qvuեx&({zt7׽ߎ1MW>-! zLp/*iv$g5py5j ->b>$l#Y*iގ>p.ςe 9 X_@BR;6+bv84$xAU=k$Z%/Z n V]5ai<` AаZ퀆!fA n. Yu9OQY^~> Fݑ@P_L@N՟O^Cֺ'Ek$T7wxVIb3Fp(Y3,|Ҳ3dn90VLBH '}-iIjr&3)m ,(_H(_Aw;ŢrJBgא?iZM6÷3]Jͧ Yx4T_9l9j-]T~Fyʁߏwv$ ?L|` q. qBPt 4$i3zW rOܲ2`U(RuP*rcH#5Q%lTٽ*{qh'p{[ bLDDoqVω7A9Xy7,{3/QD"DP&xLUOtu Sa%KzPZ`1Ʉx88^Wm9R q$vxlg9yWp_7vz9g+.^y :B?W}W6AwsYlmK0&W:K俄pJtM)غԱ9̱|DL|#-Ttw$ncҀR)U\D/T70PZ]^?@qPm4" )4JUR$EbnrhtnYA0h\XiڮfZm6(IHF6_E=9bwz51~4fB冡N})1>NSꁼN]&8py"2#\v-@!+yG bQP46DtuH'lPD$+fM$ LPD1sD֍t`e7i"=9{o)/Rшݗ:$cc rO%TFȍ/AtP2rjx'3(?TC }͢y!V㯟%,I-S̏74@/K}VB—//5 q?bܹӅaO+eBT7RUyz݉"(/4JZ_` ?Ba8".iT{Mk)ӇH>\*|VW$o4l~P:Ǯj1SM:R ?+)TMYT;aq2y 2[ : kE1kS@6$ZS[\`[ꌪ Ziu[u@KT7b![]~R؜` }-ɒCH25+Z]cR[<>&Tّ:BbS~CߴaÊ3%Z^g^0Y 7 */s<gKSSg_)y8}x9w0CRN@~"/ :4QLmvq5KOuap]|fN&ؓkg\axrEL=GU1S,!7 sg+Xh:$|0)n!ȿ/Uairb'ƾ0.I\abſc_ gH  r@C 7_wm/`涭 d$l'B` $,`G1A3CmaJ"q;5[ M G#s.0~|OM,NaeǭB̵{j@+xPbg'0ϡ=A6Q ۝, NsW!o7u |$ KODT_y:`\Lma>ki۰FF򧎏!ÖIlB=ꭉ-1#aM'w*pw08J:,Jj*gjzU&JrqYт$? 8lxapn`Auټ@$B{/.U}HvJ~cOJ+ƃ^2<i'nFO6z雤g֧&WA>EwwSGQ׋M"G BOAc^^(̑%\&?& \\ȱ.B >1}W-^?hoa-/UKloK;R+h[T&ƴ./+Ŷ́%x-e.*4n{` {2 |};߫UȨes;Ql,XR<[sbz/=-OYĵ󱻳̰av,fk1yYsxLUuJw.nVנ/x#; p)Ѯs[@`FI={M8+/;;5x n4 fK"3T<ѝx#֣R $͵*Z΅kn⒳WG/ S; IOp"*)l [{-j!}E4 d]ʩ_[!Su1oZG½*i3G>V̥0]Ϋ `I`26ɝ0/&a5!ܪp`YCR~UqQ4 \ݺku1n(oE@-)7HoLۜQ \VԊ*d,}7¢ #JX+ǨZ$klc&G"O4_I ^;uIV4dh@%xɇG|XrFUm>2v?V4鈠U)Ubq (UzQIwVSL`q+J\lڥx۽G""FRa)#̗?YH>/27N%^ 73H^[2* nX[JEXfHcw C}C"TlP^4/R*BI1. DD5zBbnݡf2ִN}|%}5i ^C iLE@1UL@44REg.v<:tPG`*dDh/hH}/+hWDq^Z!Q{y6-o.ؠr8ô58O#\b 6eQͱ)nbRL?\KwI{3r̻f8[q ]Ht1Go5lj{\m/}97>H2#Q>`Nę7GwYt<Ұ<6Х7XI3i㦊롍IAخ85ZgnVwW0 9ugZ%%Y`q6 7c5Ė$tLhn&;'Ac^9%[I},=_0]6j?3fݴ{Śo)[4E}U_%+Eޟ!4ʹ՗#ʑ'$3 E"K'1%oJˡkg+)e]."c0w[  ~ k%oM] i{|ӗ79P44igkC#V.x?w=. 2[#,C{amz(1}U:*n7р$Ss8KCews$k)S}g߯?4ro*+NvWb1<yhދ_n}W9L`OP ksl:8a݅63n8 %inY@ u?t_OVpn@'Id>7]u ]ny[VXl%π\,6iװQə@qoG ׆~]stߚ:)+5^;NVlaIn8t[棳/aX]Z- GYޜ-G@ Lmʛ;%K,V{{m߷ udRy1(a4P#l..)TPp6=DOX8RCr#axexO? 8aBUM p,W;yvE@O $`<ŭ룮t-TFkqBT!-@SG%Ğř`~`1Gd=BY 9 k@ԫN`-Y@BarLޚSt&vI!o&]SaChGͱE$2 D+$|k/@O{REEn"<]!k1~+NݤT(ںt[B,%@Vk,qSЂIľ2}7j1kJ63DM'mR[mrFe<8Y,Q\zPW୎M/A'LkKLhR+Nss C5jDiԼj xv>%rN }"F]6Pٔ.1Bz_d–؄ӟ0t\)3!YVF9 }#&ѓaysAF}DkUE4􋣄;xv&3U ǓK9&)G"nz2,]> y$^K1 )u*_#Kn%}wN5Y)9!#UÔՕ /Ɨ܊8c.:~NIM`gIAs.aSqd?W}4z,;; (/~^t֋A [P?FF +g9%N؆P8{q"Ó|F=qA9]єٍA,m*MԹod OMi &6 O;WXi1ݴ~wPlql =Q00+PzSQjP\B̫;4@) i7jܝHҿRR=Bv?N\ZSN V{PVC2EyZ'kA26]^cz_y e/'j'`xGWӞ|ܫ`a-$xBh1G:lj2XF\jgp~_6žbmaK\e@%pT:&UYJKLG1E ' ˠfm3H \d& *S%9ry n +')>/dM]Ls+uH`߽DT*phm3]ITw7#9⺠ڬeکH/lf˶ݑ5=mۿh-ya3jk;HU{v8wr pKwAWø^p~n8X+< .[$kDs;)j׸wbUGx|.Ju7|ɴ[31GVS?52!h͢}ws:1ΥggSx(h&xuѳq @&]m[ ߙM`#͜cƦ,H"c2*2ӰN?YՀ7 clo7/k^#:IH;:~`DB Ә]MG3tz% T`X#FhwSD|N35S7K3f-18O5~U#Z՜M!o;>K[D'6G(ʞy9pI;@h4-B:D[Q&uj!A N78ut].ú7!@8Mgk 55Yb 晎ts[=<ܪ:j$~TJ%I5Zd+hs?@*GN6R/5H1 )l%hAMb0#BG-z sleHl,r<=n|SI56rcqhr~pLJ0si!hQP}" C2s4SHgIϯsp+ނi_iOHUae .!4@^ !ݘ^U ! i`4*R#chMvBԜ N k Ѣ%j jj]|߳k~U;8},@($m?[ш ?Z3dolY7:D Xg;3R >l_ep Ow`yZ EHĺ#iHZE#VR(+0w)K`l]yTr =4J,EY U.k"GQC<7G(<^PlH/w[!*F[%U(k(9 ْfa|llC>Vc|28tTz>Ý (EZJ!e Љ#ےX1 1r [Tc #Pikj! w/OrJW3G87~Nχ(I ()G'pH ,NV H vwج)D7Qs;w2LiՕtGٞ|б;}RfA3:RYm^Zj qaӉgWO+Zp1r>cO[Š6*QVNVT6<2`S!'H#UcD{vZv/UP'I +,9^I}V$s%8}{rgk6RPKs% WV`jh6pKk/9ѯӕR %D,IF3룘 Xaڎ/֬3V&A;7Hi>; γjт-ro3j6lKml#O>ӟ!ʵuγC_TV-n%9􀠂 ~p)ܱLXamˈ"fDtV"Mr2טZEŘDvm|9($,P_J*_g |`(NCOjq7bB{?7$L hxi&8ʧ""1f6EPRmTDe&A,ՔMVe8nw]7iIm.M8\0X3:{tʆPH*BȸXIlI5UBN>rF픳۫ cm>m͚b餥OWGZ@+i{YwKuSH nQlma>ywRfKʷKgne-lU|qf\9}eŝlQZv^{.<4q6<7˿MY%ʆGf!֘))]ԗ$6jVR{BӁVU.ckϬd[=8pFkdkTHtho$s Mbv*Ǟ. p~Tb}B&@u,5N0J6^7j4rS])$/D>}k=OOɆu]oJ d9{Fqh_ֻK(~tOe2.ԑzx )Ś L8Cyi# 2gr*EyE`h)G/E!Xwh蹛eU(h4W?.d`u-V'X A;$̊$gͲt~%w1@TYD-:*9hgMaW]K<O xpa+Camʛ0SI#K,(u_ CJ L}viWz:v/3H?~gIdO9ZjƪO0Jل!-|[#nẁ |.,BII$A +Iŗ=@D:2sN;ֽGKr~s/9\1=}tW1ѣ\Ȳ:u"%tmhUwTK'b2p@9o<7ҳ>&/u$&d-xC󟡀LAއ9MS [0ҁ$E~D iIH c3TuقHCYJ hKG3$B9yb<80t)eR$n,T^(%6>$CT([|]~^׌ϡ6n PpZqu҈ *G*H;`|P%^kkfl$?P ^(IJ2:l;R3H?\%n :ӯ!Mo/:{$/bǦ뤠>+ 쨤b>Ùj˪8͉֦% OiT zV>FrC\҈DZ0DT'aPiU2!|{nrM"0?ekoѬ(lߌ+O`GEv WpЬ:/y![0ūZ4>o~,B[X+Fosڇ`w qI aycһ@k,CI'~1g.:AKTEtT8+ܶ3 l{?&+э:,n'Ҫ<)QŞ¥o _bb}q#zL֔c ($:lj}tr&8/~B맕(#+ET#U@HQjFs0OKcv$2Lk>Bf^znnPlK鯁DʐR4uwń7HçGż48P&y)Nj#+`$Z-\8+&݂*(hDQzWy>yWz)6me52\[ a;юTUF^8S%#9BkE ^*xuIYfzwk$-&Ä5+ݿ]~SΠn|jCLv&؆X.r=? fm\Hɥ[dQY{=c̩Q8!+sU:lwqPI"aQ3QN4h}mgZRXYQӃ"tU_EGgmByYA)473z8 yɵıEǵӿ Qg&UyT0<X `; asT܁*QY*Z?n\N?׹0u@ܔ+jnwZїY?2URl6gbx݌ќ(JiWgbö!ù$pz 9쪮rؤ a"*m ȒVB`R%;Nqd^Q;[33rh*[y,eZ h{ MbPY~Jo'^ $tU3&ǖ9 q: _ڼWoU`%ko՞5VLځ /j|jgIic'dbDǣBR(]yﴙcnh(?s`%~b2ѯ@v5S&PDGFY¶ 6ݏ=+}Vhj-8E~`(v/`γeb 봣- HFW{rzSF𱼺]%P/QN聮`Gy<ϟ倱1IL8 dbǛ`*hOY+3ZԔI.IֱZ 4[t, 1-Q|E]]M='fztVDSlCiTӘ;pPY{ \V 7Ku^yO6Nh-AJ-.bX޹/u8}R^HS5.ST1loI/qď8s>@5?g;#ogY{o dpy4lY~U r~~ݾDR]iXdKu^,th\= >; hnsd!gxxGb}Qٶ,csX^UNoq~n]gFήϢI= ,!|e$ŒpdɪLtP,/[-Vc}``܆;PZײ`TM`{_{CMUqʡ(Z2`LApR~m-Ud䈝bE ֓2WC|AK;i  IgT&FoIJ@1TQ#dKR#܆zd(|FNֹB _ڡ m]Oc~/vw\HOm=Hn~pgv-478Ak*Nm сBK~,zeU!IecIUVhh ʲ1쀂gIuyl>2b3^h r#33bYͮE}Ayu1;iT !?njs6p̲&qzz,2uÄ)-J)-`2<<)vO> .3UyS eV݇3os)?Rʍ(?X]Ȍ_}Pɭ^tGf%` A9O$TpA(A׬vGMjy ⍞`DXqXIhHx!1.P/) v`l,z|;LX{٤~[U!NoE!kYebYSr&@Bl/ wjffWj٠Z&"6s ǰ[tl/8`i!᲌yXЕii-i ST}')<%JU5*dG*fg*79Xk1{qGOwK) >]_ T/dW8&Ij\p:9F*1N16! X+`o;C\K'mW1#('a%% ¾;q}qy*YDs8}nl{`ÇB$A ;cס9L G+87]q E ŁRNIv]k7HQA`Zy7}2~6d,Kr:k7Cz"h\^=Sb[w@ b8#Ԭ{/r*.٬V /ϴKr0m:tmV CL3Wp;{>a|7'"8qɉ!.-;NW/)Hr|\!AM-D\ȘUpMB 2<8k\qAĦX&<+rY4sΚnpzM 7x5 TTh3#m8qRizW q.]փk1Щ[ |5ll#ER )5W`}VWbj| "m8XRl#<\)ȮPGr I%($wl[%f4a>@4 E8멓+ON?%8I`}\,u?3#tAdZ%?֩P?ؑSoe*N^ ƇOzyጳ$?*n ƕe A``C#wax>(!jdB/#A?k%w&G;" tO7KD3rL)_;gU;xzK!dީ[֘X42~iV<C vsq-PuQt=W= >=:)W*O1h]Zn.얩0 FL 04ᅻ՛(? lUB`Q~<,R֙S+GmW;8 Ώ!29֢z6x;&G% ݭM|vX +oCߴ Oʏ>k>i*JB[cIl i2Pʸ!=#~$JzE^AS%"vbs dY's$| gsHmJ"AO{OqՊ͕r'1YM5Zhr=b sr3l-yZ,GW\n66(qG$}SGf+t$wFBy"@䱿6FGB2gl`:  1߀*X] x0 SfDb erЇꋽAF: b~I\ZK( En/E3([8_ҞHg[u )g@M>{|2 4M,уZ#-tp{s<"~\J@܄gl:4@a)nMZD*8ieQE.@F߰#[3Y:5wCS7#hxh@d Ss,L7"<E "^%M:(hbnIGӎUF;*Q C:Tk9ߋ 51ޑ<۹fR{ &1p܇^ 08},W,S8Yw^ڕo䣮k.پs,Z)g1m{n imvQKIb^D@iLG<}GJ$=e+黠a kV$~Cw'禼g׳N@Cསh kKX˒LY執H!'KsJcC5_ 4GS8=Wu!Qhe?C'ӱЅEiø:W6Z`.2?J)]8YSQ5LKe06>QٍAfR?%͖"UUNfC~mߟIWN$Pg<< )>%kJwo 2ALJCwK!K g\3u|:4l9=ka,RG7T\~]znD8F}Ef;ɭsj_& %txk鞓B*Rf3ȋyS^<8tmي/y.3YTN-ZeG/ w#rQ7H^m2Wl.͞w<|}r´RBB ~k4ܴvZUOV얭uy< EGIwtBZ|r^ >$b4!T쪩]!7E.P(%D%kChde/= FԷ .[+R&IpS1@nk&@a{56vpb8 c&n½)֩Ew@Dvl'EԔ]R,`Z9DsMNI&mh%BLnz~aО&C^鰴 $+Yĩ~lwe\SMog>AX~ . U#=+~-.@X^- *G8ȞH|jqͮatln9QN{AD@TiAW.)F?NPzPO{泧D{2;Kr BgSlH?+H 4G'3Rٝ.ip73%GN;ߕ,G<}Q;za|Pޤ֋f 2SdA)$Ka۝rB˭n MxkYq\j\0Oo˳jA5}^-O;h;`~lS`|ދȟS뵎 Tr0RX}`ٿ-_c+?n<Gf+ "nu%B5Ab# 7  l\|Q(Ee]!$3WJ !jb21D+xMsG{tK >z- xfAd9awpѕ“Q=;Chu%E74/4k^TY*zi?AFÀqy3#B PYv CӎC(Aԓ̎Z+%aGv73m1/G|cՁJ1]6F9sH*~ ºFy5m7nFO#x8JѴS (=e)pDOOR6,Н9(Ӭ!N^E(/;O 9N:&0ww<>9*2ИZO56d@ =3P-1y'sRi2hVd9دjdigiyVڗ JrҚ#E+2g?3/o|Rsoo: ^"Uf  Į4vk/qvP ᩢ^R\:)z+1L)?-311[Evvx,lC+͢)놩`95e%[#%1k/}l2*c|>iY~]TJSanᚆZprW߲/PsM/ɽ"*3!ɯw-̱ I+MQ"[04\]/f$,7#%y8XxCԃ!? 1f`a`)DxO_d¹M$)ppCLsv,sZ5T(op _W-} U#FƼ.狷,Qf&T?<I k{ht?2e7`ۖ!mغ>o5S=h+'= yWJr!Ԟ.(q lI✤VgꀥtI0cr'?=^g]xiBg+ȄqGwۚVwv]:Ɛ$ʷk 6 H38+ fx G/sl{- G E;ڃ/$j*%d[xZT=,~mcV|gUQ[;E90V<^Cqa cwM}YF<Ҷ7O?>Pnm"ƃih , SQy_m\OԺN .BDtyZWUc UC_{Woy~8P`~ G$Ì bÔ?8PU 񂨖39ǃ&D;66ؾԟu' xPb~ BAuRm4 H 8⺐[FQ]"_ˀ '?5([4VKEy&S!x{>=#12JEu0p ܟ9iKr^^# 4!+to[k0V@&C8{tra3<q!5&Pu8Bܻy=TLf E2S;v냠,78BP7s%4HBRkB_ɖ2!.ֳE J޻jF%FkSuL $|+lab|&8,e [Z(v 2A6BGJ=ơ'/A䖓SJJb, ;O$< M}#5GIQ=;{+ 3W}>ZW[Ъ0NHv ;tS[ioBUu綋{ c^ibl (*0ۃIhX[z ԚμUJ 8C}b=CĔSB,!9.RdRް.Dh:n[a ͦܖ/L/lnaz¼W «@nYUYXEVt??*"tzwc2gv8 l'U47ߖU:yn&ȷn–72yMżI51=!cc~=ȯhaT"Gڡc)Ix1H'\촴vT'G0x,aJG4P`˽sk- +_9ӕ=TXMM58gp#ᇹWX&RXat3#2llB)WkG 䣂=-UXIHHV(f}%;&W# l.^bWv:W7 3{8ʑ2Wʷvį&~I1ng*ِ0{}yzLي00ĥ;*yRZ@XsC<vY`fl2D@`#tu!.ʺiT/{/OڭFe3hg-^h1g1}u%~>[1&4Ah;RwiG0isߺ* PSiN fzToKu!n0Aly j2&ՃCY$kN`--T {\$kGUuXDKc&XǙOP0z+&B"y,X`98I.B}[Տ xG6JD~~%"[&|PN VCaUg1[UԜlc_Q}#lr^"ۓ,oJxЂIYIQ|>¢ _T*#w}}αqE s@W_79tNöw0Bl^FD:A#\^1;jBh؇V-/o_n bտۚ[gQ| {T .5X^ @yv 4 + YP(q>n_s`݀C}_S,]xUFA}} =N}6fwyA1XWVF'v)<\AхM$d)a2?9c Æ}4xX%Ys Z?)cJD4SDSGEf4% IY߽@<_kfE`ƞ rtL@'2=ְֺ )ĕ](3S5Igɔj$zj~aI 9aDsL/ *+?j3W:kԔP8 и%,PG*/4K&/ݬj2r u'qdŌ)}4O*Z|8/p6/F` ~ߝCZnfkPotr#xne4)8Ѵ=̊2A? #5Ta!.g50HC20P6 62Cqv4 1J_5ɩ1Hܓw dGEvzNp+N$HI[ҩk e #쾦0B2HX(ՃƋXFŇȚڮn$>;VX`cH¢^ߣO݆/\F@rNeN(zN i{%!l,UdF M!*&a&$5Ňֿ] yPnH=L[R3na),;˽gcD$, 姒q5`B[⌈N_TmݿA# *vfDPhKK]`0r<*S ]T .H=FKrkkDjSkij:l&]FP WV-2)K+]7 ^ٚ^F'.?yޓa۶c bm#bt?n+nŋ!Skhο*hLJL\n/ put(D1 ڱR[w0gh5 X yUULuvwI[1(RDz)TGr+pGݘ`s[%gxԤ /"<@Z6Gl=G?6ux ܹNVX){~,jV܋|B8"7i|Hq ,ϓ `5(,2n2.m oGDiFKsfϊۦN鮐% ïQ CM0tZ0Hgݹgy`]ǜ~>`=Dx鑓a+Oj='NDn5j.ΡT~ON^ڛ&QB|y@d CubP¹[s\a~-V"z ״tpGyߜcS2`MqWM8,.S]*FCs=JǖR0vIp7\4u:@Jlp^Qޝmȫ`%vAL'd:]xhYԃ#49HFțx0yPWGklykGOKqB/f `f)֣МVGfޙ}e ܠf IUwdƦa `y᳟b 2K (ol 0*fS8͎ó0S!@BcwT+U"XwkrDZۚtz/\KX9T"ӤKF#a'5zȴ^@Wo3$vpyH|܅s.6O13?)Vg]'ӻ*aW0b]oFC]e/f%$:%PsBT잍*8 {G7ώ)SpJrH,5C{s~ ^ C| ` 3_{2VLyu3ٺp/6&,a3Xwmo~SՒg)Fz|L;LR%8juRXō[_n%)-Ink6OE״i!j nd#)N~Qa~Rwߓ(!!cSܦ[vvAX;5IQ1IY`^9^unx](jv}۹}onFqYb7ً:'.[̷@Vsbl|揳]I-ݛ[ȹ!'rv`bT Ɗ4~%hƠ]Zi5 8FB6߮s>u"uZ?*;vyG=&{yIuvbcnvV9?Nir?y2FaB`gsOU#Iyu''hI@,q㞈>sF asrڌ->\WJ;nXSʃh-GH(_X$|[JlܪeGi;7*h'l! yZ#;RCX`^y|tS٫,Fq,tK2̙B\m MG@}z Wg`Ph<~k3 !Qe/-́6|sL8AYggaAt/4%St+q[޲!bYFqx_i e}00! 9ι6_ٖ}S6-+ sV{6%I+SFm~9u:(<} G?ɕtHw$wmJ󠕺0Ad $C{fJ| hMR# #q7L8LXȍMt:4q뇝h- req`.ӈJCse3)'ha8=-Ƈn]ҞS [@<og73|Okvok9I0Ruf,[/"](yq[U|դ![mHW#ia` +rtȣ#󰈃s?WSZ:sKk/|0/8wP<{a~ovFDRPa mZQ |@IB8ޠFmVP3Q̋$$l SlK D*;+YiϕA;CpSNAF) t  &=Զb!-k-;HBofk,_(";&z\f`TPWvcG41[po@l͊ᖢ5? {_ljq4l:8mT)ƍ\qT 81(ւf7f[x(iyg ݡO?3eD(}LVYTIҹPCxPKk)iC1&`96N$p,@^Gεhh1x#Yl/-vr=#†y{E&;pqN"\H$i gFC?Ljkf_8i2LJlܡ|[3v`sVɨR~-k0(Kqp݂*v Vd6syqUg'M#V: ~4/nc? >ET& $z5DO_i.5ފky,/wC-~F,$7])bcD4K? džE?#q[ˈ[uwu:]qtk-=7_6.ǧ<*0\1_󗪚(usՙjwřF[͌&~"E Rw*Pjz@{OOۅ@m[HHC42 rK&Ct:9508?V-biDE$om:13?Cw<$teM,!>ҰRkNA%JE<^5NNLƚL@-XTꎧkpH\L. )(c(z" >kheEm4q{l9Dq;tV1K=|H~C.8}:썈G٬MPho-wj \aN\)pAMqUN2:+; fCWT!pYP醖+`:E/w&t; 4}OV rs =\⿞4=dEހH4Q UEwbR2mMxq.CYR,/ %pNM(NMUr^D5lߖT)}%S@8sum611Zfw-OpYݩYP3;οHD67\RQm4-3j1!b}MHs5 \5CT 8:]oǹ`;Ga}!M,Ĵ#_}&ȁh,˖'laZU4~-!rVeiOuyXdywTdЦi*Bb)b!.' xP4y64v6Vv^g6eܔQMoՂA99,ε%*cD@ȌSN:𬓟@ZFYLe}/]5+.4e:T*-ĀX(WkC@4W>#пP]p}e* \Ķ snBeqFּðވh))_sHR(iH V z*|p$c ^1mIY")hs)Oj鳘 7\H#vodʹyJЖ0p}B^zT\xXbt_9jE,H#Hl< yty6=YQkd<Ӵ |W|TYw@C/dw82 1#~H(K7Υ+z$+=30CrELϜ$q V@FVtUkA~]-F;{'PO aY ΩziSU<C& ++ S$x h+`?GZ~baB"&O/g֪r+j.qq"DREەk"?{ `qTPB=I1 U+tz,{rYgໜxWƏA kDw1c3#Ŵ :ke=hYyy*Xa5 vE#^;Nj{( -@'7Lkqf;MHAn a+I]ͦt0J9w1OҜ{_Sp_*<3Bak:?/Ɯ, n`4SH\IZ&I|SQГimR7 OuLdcS!<a L=J5'p(=*X7a싆"x cȆ6.Z`:0PO̖Y:А]빭2hП?%ơCa&!nŗmBPVr:+ీyaGfS™"} g`oVFWb?(@9QN+7ϟ3KFM9D7syN )sWtfrU7}[B{^iE5}9 drMj]3wzidx_A' w j*ꃗh<~[v³&;H~29Us(jnp{6]+hU0t:U7"7$M$ߩRXK$ A#+ƫ-=)}~HOC8p"XfgZ TKgQuA֖uW[ƭM8sn^0k!-Z/w1'U%@^([;`acQ fD|6[X^@٣fG& ~_Vv+#1U%̝bῬ=XJ !~ 7*4 lp k-`S +Wy5@\1GTiC4I~:C&hrۘ0]ENqf1K_\Jwd 򃖍*D%툮c i;8@|@>#%V{#mA7uE /VC袁7l{s i jzPt]q%™(Ud,>RS T2<7D#3,mBJalbҴyi!,_\=lFd7 WT @ 5kfú@3?O`ja -Wi”ou-t6?K>-fɇn`fl aB' ,8dS=5fe1d/6.hy|K䯡q"|Qz=Px\[/faԔO7J?YJ*ƵaQNO>nLBX$ؙEإ52~8d6%PX̯ \\\E3Q Xr\]/$UY6wә\vma~ $B?('O8c Дtx᛿\s%g@$ ՚쵨VM̞^1TlӀHC["5~ `D!΃yyRyث`|9-e3Yv3%΢ab&و  =x1&9`~~=Ƚď"V !r򟬶x~GSl}a2d6TǺ6(V~|䉨`}ybdBjY꾓$sDTloBY%L7w552 l,89~B[lLW}wK?Io#+G]'_,D4&͈;QoudW q(qtwnugB]93xMX.bH>x~%a6PtBOuUGK r/6EՋ4G,y hii۪ե]Jb9p]]d͑W]ە %_ Am3KסH܆~%;H,f*V~QwAWD Tdw*Œwga-^CUt3wHk6hk'"  A>ysIWXùP*CS5`nKx¦Ѡ:) JYp[~ր ֖PPVѻr Bk 1k OXtPFۋ#:LH K)D?o!R<ٴbB +Jw׶j/իXA0"8-ӱ-^PٙI*MC)sNpb/M= 4gm:a8zRHZÚ&&!hiK=F=XrCw?1L$/$z㮅*ʤ 챇؇(_6vR+U50$e"AN Yw 4&X| 71gt%ov!rQڃ8p*k#-t(hGaaCTÅ 3FFg(iQkgNƏ8hz lS 6z@z{VW,::X g3B# j-ʡQ^a( B9 Z*\1WP?702Z"6(B9@_ _ %Hb,킕H~-S#'_p }Î{* ρxJžj@aGnO!OfEw^c-RTȧW "(F[T5 $2u/w񦊜Qem_FKXIы`j $+G8~2y7ˁ]rvxHsp+D8 Yc׆g_S&6QȢtT+(/m=+t꯬Jm7U/[Jt#<6r!"F޶}ovL0ZB0P 7k~1ՙy?`@ ܱqomK Sej=s?2vA1LcpV'+ tsɒ > v<s`i\ EfH촞yזoe׫֒0K  } #{^qs3ƒwvyg')W;JW>[mŎFb`6ԠGǵ4۰7Ac T͂AsxG(PXސ`X΄a?j` mRႴ[?:AFk&H b-Tǁ~z azv2l,)䲳5ksx Nxxћ\\6Aݺ{l[ĩٖYG NJ)09OFzNu4p7imW qN; OqG2"jK8I YqԷj'16Յ"(.;)W$e܃ap0%\_{0jZ%X!f΢-< y_aT0/]` W@,.׽Aw56m(W{1!,fFCN9(:,i# RAxQ Y[P~F+oz8BJ33%ڕǑdH^SUW"v+Bv?a}cNpep8 =`v#,rhr֙T&I2<细:N2$Xm#I7P=ϏJHNP<_s!)ks6UZa,Xe:K ܆RQWf> Q,! 2¹c Ohqb6A[ ]h7RVqL2OyQ󫣿r;}F ;kuB St~]A,ܱ@SE[|yxlĎ_Ez.2e\_Q|^\-YiA.BE}-qfoD+GX L#h~g]ۛ6uJ4p1fGPNN_2f[ąKU%`?O%V^_ɛt)SpHj߰FE0ox9^BF]^[S:q%&r&xB;>pSR/s޺g&}r}@kDD9 &+?N0@+ D%B"!|~\*UQ~G)Ɩx$ N{5UHWߏVk}] ZgomF//bcptOCQoKQ{ovP@+1U˭t̚?u3|~Ub: !h gBr2ⓎL7`$(N'pQ"̈́aĚ4%G.t` 4dPlx;fGjv-]c-{? ͛OU1[RGyrC˵_ ś&8ʂ 'YqFXE8Vñs/NaoHcd GٖH9Rs8ժ^\iS~I'\{"iˆA&k(Ʈ0GEۏEH%ȓ|`Z/Q^93 8y xIH&_a`N$ϐ̒tG R>j*xePAr !+jX7H;_P4 Q:hUse01Œi\0EuȄHcW_Nˠ|ՈHPvP)rJadeC此(# 6:t𔴵[ _Vϴ.Fp!4z7V"oMG?T8SJQG^"d:D`a [78doS] ~E&rk{ݗK|LeZf+%yYkXgpI=H3)4^]g$3wV I+ ΡlB`m:@7S[kQ'ĜA3]^Ҫ73+W{r?(ݲHlߕ7%i Յ{J%<㺭CC46M ЀuLPC4/D5B"VubPxŒ+)WrYC*3R/]ة#tD~0+p7KVKlYo7` >Le;'phe H}M~f-:?7.N͠F`1@(q<ݺKˢBB*\;8ذ|`J7-5,Y~&r,ħ?p"QVy?R~4B9v %_} EŦq\ - !3cާ6]TuIf Өxgl2Ƶ"$O"XT//+W $[ 6mƬ`Z :"3_R7T h͉KsvZk(f[V*zbE|މ&t Ko bZ  UXI9ljbfn*xUZBS,rV'nxZ.jT_ {޺a_3\hi- oN'&pf-fʟ`dR~aA si%:C]9Mɲ}Ӝ͐RA=M\+ejޯ_6Wi/1ӭ,]kI5\-%!d_dV!eTJ/qSX| %z̽Sk]gOG>'c< IB{kT0i2΃V;0"3D;BLwʖs.~p{ Go:i5iGxzB sr?0Zh!:@ ,N ~fD&`5=1I&Ygsb* ͉ aXqcqBJi;ku5g{WUJ (3U AB>xev.=ڶ"4_Y[nAEϣ6E{S"GXl8ZM ^Bx>>ԺjBIt6E硥E`ߨ2gp<g|n  KƺBL'Z|I&=(3bסYTSm f$y} Ae{DކǛU]Jt\\xd{4S?a)t0)S%ԅ.̭93zhB}Μͤ8626rWtYQk4V;ZruTxmda.?44 t9"E鐰hsyN7@;dbA$.4EֽVP`$_]zxrFpMaїƏ`V&ʹ9ǚ З^e-K6j]mW` zl)^e)  'fkQ-^ cM2Y828'vD=u;7e=C`{8PGgN*p^qXۡaup /r6'N+vI[4ͼfAzЊ,c( M.t[L1u`BoyMXn^%;G>w]reȾBzӋM\X`4l^kL\\{[D0Dua[|!r[hGOQs{`Eԅ_\TEI/_To>Nע`l7ErDsIiDȣh~iٮ,%{CP\#ܫ$ q|vp$}ժ8g[ݕćUWz ?߷')vS jt(-Oyk;|<: ̉J@?!m>i\jsB֯/KP 6$9nȷer>G*.jw2jK蛧a,˭AG8pb>LukV\Å~ .E#+ oK6z␕^G,a=UP ^5?FO7H@ ,Sm^x#eJooTOϼ[jO)],`8<@ɪ]G;z{kH(61m=L 8|iT]] )--yao}/6G~e`yWMU(^S@ 99e]/?1Zk`N#:{%d$ACPcGOx}Vll|;Ew3J[hA"6Gܛ4%p'~ڿ$vV.A B1PٲV-'4lZYX6t$Zl=2Z"xe*l4]j;T8Ɛ|XE8mRT>VW) QRro~'Ss8ic*իs_WɲR;HfBPcBJ$;ӆbGrn2Aa_k1]vQ.҉JbM$|BnWRVv"sP`MSh!mӱ9NB'C .귕p`ǫ ,A|b7u>:E6fw czVۯR9VT6*SXjtѰ %;:10Huz$yɽ/ MLՖXdҫ 6QwcFet]ےMQqq4s-i i 1@&w^­dkXv0s(÷l[Gdћ͓-Ǻ7lE/ӿW8qlZSv4|-K\U׭1!7p ;?j+~ 0֨Z**8IUu6Zۢ {_nSmP jdCqW(\#NM{:<BWR޽!M ٰU͞NIUL>{0JY(CX;CPkm飄! 瓈sðzm4uk$RSBG[hzH\No,'+ȟcIAUJ h!8Xhi,C І,+T.T|?uy]73@xAlw1?QwmP|$.fUzIS9ݣQD- (59[GtNZ=}GI |F6 &5QFwp"L{WP:N :g%٨%86ޯ?7ŷ6P+zX&zT]9RFDt8/&)|?/< >fBZ>Y%W-C?1-h'`o,Q=sN.d]K\NFxI.R)sTܬF Mk y:c&ּe A4Uڇif4v-bG$Xd5CQbՄ#,,;rI$~#*N⭌?Gƶp#,=$Lm>C&Ҕ+8)00[P]TΛÌɱ-+?oʋAgNRsr|B],,ZkN,,IK^{="(sdlm9˶Y )IxNކh|T>ĖPpm)Fj5✗aV^;֫A64;OfʁgqOw/$Ekx T_J NSi| ?2'5.}*~ُhz̋}v!1eḌBB6i쏝|@uԑB9Q q?/VqNI'^'YEbzJT$9E,ҁ<6 ?=zOjM>UJ@B&\Xp2Yrѐ;mN[ag$5~[Hc[oR _#YF;;2L姭~gNՁ5ڔ,@I7cT^XW`=| gT}u-ƚ +_jV`FSNV=}?OFw4{&㎟eO8yA<_H#礴,o=`ʬjz8R"?&W溧aiL!.j:Mr&79jeg]a?<5ҍʵ13ECYĈei:$ˈeAɟFo>ѷϣvɷXj00^4S|P*GB7Ii=rĉ+dz=*Wep4N= HY&/&ڑ=sc{#% H;?˳ uS/!~?ľGagA\W\QȤYܤ7δaℙg[“چ'UCK˙hЭ i_%ko^2~.v["I9L?xLc-]ҒWqqAdW8 ;NLB{ )ȑ`U4I`S'P5)k`%nj.%u׎+ͪ:Ncz 8Ҳz>{O<;H:2}EU%pcu\&otizJV GIΉr̙Ȏ)EUO!pj~|'!] ;{E!yLȹ6+/r)j3z7#3rpQ@8VZQQx5S1ǘ+ci6#y›,=pq|켝@#A1/nxڀaن!;bJٜҺz(Y%/}Ɏ(^h#e=%6ePSY"[(48J o7Q0CXk q@EK|&u8%*-'4L+"śٌ;]Їv'+yazH-+=1ظcdyЦ$"Bvc]3R^B/ |jVQcr;UwdZ 9ܩ "Xp# }&u,|B{6} *@{^[WUgޫԔD0|t=];x|fDŽ E%&$~MZJ9B<[yy^!bǃcUU&53IUQnJBbP[ mkjZs$z?ڗ3ch@!gӭVFIe0 T6l{҄0(Ec%3>eR5uΧbeZ&#ϋ͜.X[',C Xu@#J ݞuHX"^RGgRD_5`{y(Z E%D0 hB1VqZDr-ⰊS(biˏ c›:?wRX"_d7H頶]QxE^jF<<0~^Lq@'Zd\;? 1xJILYهȏE4,HIId Y4ҲE-qA5Y,aOs+]2 %0ްs!$vܔD],d4En6 @L+s1ѵ;6%Hu^_}Cs:Hq.h5zBl?RsFiޭjtFDW.p %WdH}zfmU}CTV<|ih RD|gˉϑ7VB {S^~O|,tv<@ kiX4/c &SnNI)V|  >XK"#eDj{d,P^sk  L{BƗ e$/0#]{޷eio|U[#'8NVt=iՋ,}/@xiT}>{6Qd30^"g$,[*TOL0φy]^Nz3 r:k'&.ZWdBF/jVYb{83N!Xf h2&~ G]1^i$ XƠLM#t*Yɱ; : p6QH*ъ.< vDF!<҉B0A (%SؐA´#GQzYjb;#Is;.Ʈopjmgg8[$ή昄6&ghJeLAaU* 2޽rx] T31(ﱩx?^ yԭl-[Lr?np@xu ,G1R4F 'ߔCiۯ{׊hYeNoH :'o4e?]qN1OM,<`'$ܐ1;1?.,+f4r_~F FL 6Fz~yMfJ"LT] _qN%{`?:xׅPq4^G V gLg+>Kẻ}\r:mNpⵥ`mO*ZpG .uX>{j86q(}}0|_GY+,A#3>D=~{Z!Xf7Agb !4EStg_Âbm]nlf(6!SES<$7s,7hڋ g\KLh9t-$p"HuĨ !>pdX1 4^<+G7%>$czI pԻem@}6YokG~@h GA0~O8ZSk]V]y݂dxa8Ҋ74Pu' 1gP??vI Q=2 .ljsZqw(X a,k2DEB;q쵭?zd!$ݝj_ҵ/sasz;*+ )n(&Bdl[Ǯe FKĵ{9^-> b}vSW 蛠1lKO`QMBqWתVBڞ μzfPnM璒C$8ohdF 瀭W= mi]ͩ5ѹDN(݈qPO\i5T/&Vw".povyQ@,nKx)vPu;<6Kk7oN- 222> ]Xũ9 zj_?KBp{=⌛RݿpЦ=%U\<-N5zj @OHhC8 O~H(͋ou=)adQϰ=ա8jLsow!{cv804ug—%@Cn.~ZCj&5^6ph&icLoe(I`_bUP!ح<)_nkTjcsKx^=(-9e[.jS21\y2au\u>TU'"F(\KSgRߝp~o\¤MWmE% ^^bFѲ89.]xqF}`{L'!HQzdIy{T`FjzK.:0d M=[ЗS9'|Ȍ>bnYd<9@\b#IG_5| nO^! A""o_|r1!RN5Ƭ牖װ4_H&p0@ޟ#7`Ĵ[R8xnb:Y'1ѦVtZ>1,a/m<`H JMBIFSI&g}o1gCϸr8rCF՗V=QpǴHqA0 N\^vqp2tv4 G9-|Z|]Rw_u05@H2Gu)5g&fC?"S֫t t*-9gC3zm& Ts *BZ"ajL3n!b˰ ` u{+=\9ޛ"R'р;P9 Zl-k3xlT*Š)Dht6Br 3,q:xO FlՄa4'K~4]J^ʃ(όŔt D/ā /s> (2#r`~0ŽB%]lsӬ 9$m#CS4qԬtdKiNt)|_'~<6 674Ldcw zJ ?wm9.C_fwxӅ(SZ6.+Δ}D*;k> rw;ax P . o-=QИX:;Ԙ[ɗL ޮ@uY=t>%LiLG(J#3CƑ̨14K # s4ZTD`a'7ܩFd5CHU9!~V u46/N'6a,7ٻT3wERCy>DEyiY[H`:ᄊe5ߡ!xdp!lpNa3n n!tH|,U&CCh%8Mhnl4d8V΀V(lm 9?zG:u*clh씄;`8!KeLњ}.gu v46P<~TuQMIK! 6D+:Ǩ"D rK"t`UPN37H,ײG.G/MTs%^ 2h,QLv_= du~֜^q) x5:2I٪w0! ǡ09q^kaq1yo? Z⒜V!j}N TEyW*De>-dA:;HTѱѤU@Jv|ˍmeÿo(2FDuEk)ܱs̻pz_Âݝ->L T GʇX7AK'98Xե>X3sMD?m=ɹ@Q*@eHQJ)^ i6ea_LQuz!43?'d\tAPvDo&z5̃g([wב#_瞜s-R 3m`!HWjNKW,sq,M#ӆY4ֳr2nztYXFf0sˬ=ɦ3!VXaG$kBlez% QP}(ATHӜVlu@A$TL)B#>'^<~C)0Cl\C)ʏu  4#Z ĀF<   @C`L]r`%qκ' 7 v$Z:Yni!vP(mMǕL6 *x Y*G`[JA׎4.ɇ~2%,~L_ڟR+nkѿ ϺaPpr=PǁQ/ rsZXIU%fm21(}+E22y7'V""g]%Kk/:ճˆ 2\Z~H:7+QY>~@z4 ٶۨϱ(uFn2ȿGI\srNւ}Ə-[rM-Nw E.'iRrۏ(鑼Y9ّuLMrUã@\(-x [,l۱059ּ ^zJWf~gK1#/m Qfqdhw')v>ôi@XoOOxEI와W爫eX|[MmI Ȭ X,e@v3tKUCôr;U!]݋5p 9 c[p>N׫UREk[YjbN6KGxª 1aNu}a[.FОp4M +-,^b";#{A$*upnvC-PCzXj ex/S7pe"X$g9NJ4U5O>|+24ͨ5b!b)_!kgB( ;b7Hlugtt- cHuL&la <=E2Ȣ!R}^`I"^`|,CֶlوR{Ҩ'8#,"|wh xy|s7u7b;U/ {s#]%;{?Of{]$LU(;Y^)>g麂V햆Yu_p"c*}p8hNi׸c`$Ib~,"7;ԸpnI]/)CvOkT ݌ ")Ea "8=qiCV"bA?gXrtRD@ 'Rlc-_^Vu_p5yRmhx{FQ~HYic?,{-_uबnEJݞWVdت fAzv4HHS"hred[PfxrA>'{&"XK-[#M8ł%kϿz~; D8τ+i#ԏ[tv]"i״Nb7E0CnnOzE94aux]k-A@bFkh4ұuKP^d 5(e~ߌ@l괩w4].p+M%T,n?!|>c&6\y2Kw @z:T. l6;:Y1(1Di_ޑoWx[?TUD;IeM|7~ De6|Jt"LN( K2U$]^|Tf)(N:Ij/d4s Wu9}Nw@08%d Y"SlwxEA¯Y`g[rdCb-R=KTWrl.μ/Կ+Ogb.C;KgT7XC坌l30 X4ףLTEPn8Kg|9|&<Xb/ٳ7_8J—$?SZ",?|*_x>xв'hfEQéz `D5uۃm3Ag zJ&ԀOeH5Ju^tVV͈+G(| \ҺK5XO"_iߖ>(>YW'LH_V֯0|pRLEb܂ٚrO9ބu0Cl\AL{< >E^NN{rZ+TЖ]=¬' ߂)O8MBNzn5bō' eH(!z0OYGAhc5- _ǛvZSnC'ɠ^Y!\ ?!4F.HBЙ j}lSmMaVh)KP<>OwP:.]G'uVZ9#FG䔼d0Ayai6@:' C/U W!Jwow?Slڞ1T5u: m b9]4{%>͵nܟt9ab+-v$㲜or ! Oi6i6: 'gQ +}!/wl{" 0E\QJlMZt)i3.*z3 sʪ(R:CgƇ=]s\ack6wd6;c#Jdv"uH62R} ;t:l/>صݫ.#;U,P JomhΧ߾{bEܟNujj61i<{rpSҕSC1rBK@ŎL<3)%R⤠fY[ݵ~4HbpEmu@ٍ/CWV4g¸5 ;+VgA<ggބ9Z dKՁh^VψQ>#0e4^3bb g@Z)ibv;y2h\NjRü$v~' :}!;"2P uMy FETB teeJ < Z_NW(u.RMӂ]Ugv^HdJڪloư&T]@ GSn֎K9[X[9c#{Q9Z,5;[1Q@ ˢFIݶ!QtYx(uJFL?ͧxn˅<5;c$yq2`؎g޸_s-T y.>8*0| S<_lXXsjٖk?,1>(^:<^ VLu|F(QdzXeFWj5XWajQ #A4= A䳚E狆̜:r<%Au5ojEL)'ӓ d&qMU@~Q8\8F ;(xoWU r =PJH 319xf/ƗYE+O+ GSsN{rHBRx0 i'J [E0)]Ra{}_JJV;>}zBaq' \bg:hIAΥ7估2b$D`|#7^h7RuU6うv8d&]L} ~}:tJJ8탯Ր^iƁ6zDѮĂomqf@n?x'F!FZxҢVF]<65@B3s|"t{ Y>Vhˮwj <.۴dQ[bE$pD78O<8QJ7LZo8=>nƑ˭JeW $Hl/WT3hlf82rX)j9cH:têƱ/Q݁f!znRE [=6c `FrP<{m%`*1y73וVPDﮋHU_ǖ! \u8}`ss uN`Lߑ-={V 3;,Hm6R/3k:[''ΰ!ܲ/5vF}k0gg8,o57|9WcOLlVDMe 1Zaw~0WZ2G,V1?vJ&\Us(O\!sfnFFË&Ckkz䮑*eiERv4C,ԶQRS5i'~BgøB VE`cX\N}k5,lͽk[Q:,4)dS(LZj_'/rպkHG̕AI|d$ ` lH1q}N>7LR?U,55{Cx/㑦"2)3%'KH?{+6l;A.G"ZXaO/Pw3OK{jŹWx +h>Zo3#OpK9,ېz|Qh y2*H>1lq~qt =/M!}ag>H~0}ز 5Ur܋4E|)tQf );3%9ϚT&>l^9ST~^۾/"w_9Et&5bK_*FBTgĤp7ё } @oFE"LMNB3ؓw2{a(eJTG_I;[WKRxq"ͮwvVdHD Pr ƾk,g+r.tܢpP~c>+(  Ycm~@I @ 2$BFy-}ttFy5T䴓u FizVdԮs~Mbm CtޟT(?~"8~5n]`5o)f [%)&E6 K c|DA,2ɭ5~B8, "]ֿr(UƜhd<~x' ][IqZ̈`tG /C\8Q5ŒLhkr\p-b *z8w_rf:Xj\:g t<0в6)Lrp;:;&6C}G7+U8f5eWnoGPoۨZwX$NQc9D%2iu ODz!0Eqf?[PiK3N8@TI6`SwGDY=t%ǭ\!1a\qѻsq*XS8c|C&|zE),")`_>ǁYV;^p.ύ dm8)uIqS Ĩo0*$HGKݝ7 Ēʩާ(ic63d(kB}7gi8 l;M3ΜG^qm. . oW1dA6l`ռpa²\9s:%;gyA>Տ2^2 +.ô`u7bMrLo;-WaQ_ LPo;AK>]bD!um,Uʺ<_zzb8a/A5G!~ ZBRQOު@MZ)0=x%Ưԛ-EXH\mX. cL(VIHqHUM4f7Vz?jf6gGO>ҶتX4L FOqBzUݶz{jʟQEP&h~rU^M͕J\8F᩸.ۉB> .ˤ.m`QH ?'wEgC2 ɽnsgĂ 6 5`r v?X~)ZmwKA:R*%}J(%Q$bl'n1qDö%Bn6zUeF)R 4`o2~ c:r8q&Y} j(:g@j);UI9#g6}_vTH۩_L1IX%k,̭ɷE-Q:/en(M(IX'E bΡeȵ3pS,kȞS i4¦'`BmIoQrbaxxߚi_b,̏ 31f u}mU8H87{?ܮ2+-u_+(0o}^p;kOeE| kG]r`|NA^\T4#F΂wmyzΝNsdn3^24o77Ob8g6&ePHQ=έ2/~%eBqa[ Ԅ'KUgV4. 9 "^w%zH2QUUtZ#mKT^Ho' BmєJ6y;qj<dU^Cb UzA\);*'i-cm罼P2o{<6Q<<.j" 厚u 5z{ .p*"59"[ҍ$SDܚrI`#Kp_MX~x!x k-ͱ@Ym ͒3Dm,mxU&Ǚ&VE^NEŵ8)5PȌż5UQt-E=ϯØ#4c~u:*_6EDL- 7/{̷?q8loY|{ .A׳ #?yLAte(vBNwH>5q<|2PIO$*)\UlX*`dE'<7SW "y޽ l0٥p%Dj*j'.8kGvF ٤/HbENCy?a+kj5.3YV1lsTt R ]|e(DX2h>;ý{?DWŔ0•]hEX× -ތAQGQ9uL&]iՙ;+Բ!+,ti%k7~/,D_s_B?Ju#W7:n'1R0ssffRkL>!i [7ՁD E[%1_htN5~Gk;PGW E>R?f%!Nt(f\iX>OChefQR"n~0lL1)Ni݊b֠WlSmVJCik9J$kmTQ >+{%M~kF5}A >;.5T<hq-,֬">P~X[j"Mcx6o'aAq *jW+.)g[`h''Ɛ:8hC+Z ؝!HoqtSS6!J]YGy_#`/|Z0'ݷ?smmЋV~l1E5iQ8!C58Rv " x@{,׏ g~qAJM B#M;V(fOg|z@7]TPnk`كݸuߺA^!A g<+YoaOw#JP0 ش$G~/GlPSѯe?V3-*6D!YƘ:LnҎWe 8Ɣ8n_:o$LTӂY=PQ1U*l C/1FiOac(/P=%ͱw! db;bG0+2ILpF9UsO\HUy |Q&fP{=Nb0Ei64S7|[z^z  5F?-W"]ݛsJ(~ vYnb Z!Ȋ)Vs8p)n=gک~?=WaD7%ؾ?apdk_9V:?^/^ՌԓvOec `Q5kݨ:SHߋjA\d^GqxbWnԜr Z&I#T*\E>z_5Px,\u{LGѐě eױ?,nNfkoףq|8dsK xn"%N.~)SSv"]sYPhСI]e UI{1 <&?UqsyFhN|ޜc26~#'3򭬷 _^nu'GB7 "W,58rZfw!0ƽͶ@e$Ul @K|0ZPy,a浙aE'7?:P]w'ջf`6Bt9_~g70a,GMR2%F,pUP 0l/s_3I˽W-޳UL n_-آ2[yj[Ɗ#Ud~2h]8FHV$<gp eQ';<ي@\ʘY9~͘bk PoM}p]dؼ޴|`Ϩ ^,t^X_11YS`A|QLb0 IgSfK-d@]+5{#{y{>Nրä!`jv`1}劇P}"ؗϖƚh5Y䛊b)eϙp*ǂL0Q|7U1oalq`n Dі@MlAkyL;lIEg>gu9Įb_4&5*>G $debTaק fTLG-('Zկi!3پ$7Q6 .t~[~XJ'U~p}Gל%$TYGgl<`qubRDd1iqqHl!P!7RhqL[׏ xc텊Ew }R߈.F2o(泈!_6%pW ;_7;<$. )ǁ/e(c3IkARD6{%wF&p6e+qD1%nf'3y F /ك~>ϜTL:<XC<яŽ-tD6۹Yi I}ۖ kDNZk;0#[ H@hq̢tNQv9\JpIđ<믶WΘnW}LM7xGf%qa8d#U1hq1}(}T-D1I[pa&F=wVjyJ e7Y .(o@1iztFv^XS/V|ՙ8\" {n}9"UTawY݊Q2;fNK~)(gǩ95N7>|Ƣ< ޤ'B rq9^ l%oZ䤂9A j8/``U|At<[@䡀=]4_9CJ%ԯb£#AsysL+e [|E>W^p yb`?1R^ Zb`];R~{S8wJq|x2B\&I ]g9LZ;.Z*U.$K3 KǟɞnR>X3jj_N'rܘ5Xxw=MIn-19V !c}b]co|cl h-pUY qsPhs)v4ƶd:P%kyBթr#Cj 2dٕ&)ZweXMnIqȃucZ@zs<7I% 0/tWfXe1 E0R JbM:'FSu()QyptqrV>8lVz$9Ari/ߌIiDQš6EH9N<][ ALugqə/ U;pZO9{9'bL?Fosyy?SEh3ȴ*QY)m:B΋]pId9.lDW[43ZCjM}; ]ѝn'@z˩%Ԫݝ^_YZ7RdK`(P2ݫU0d\A15,hrjLsh^) B̀D@eY၂x)_n) 3-ýF1f>B!^|O|>Nc>G%OTeP*[ӎu+0,̤M,%Z8{n*5՝1a@01̇Z!e&=2p,4tèX,{gx B?FPYfUKb~*}Fb(w k}S6OR.3[8 xE7NAb32qb;rd%DIBJ$*C)I|B~ez adK1iSV! {i0BڲX$F!$P'$+EUg7j$f<"iiTDa}0!\pIPF8?%S+Zzo˚ѕϢMZ=znGEt;ʼnJzb~2,qs~&PEsn4I~R{_ EGc D'/w$ !u`F &dz\O-J6ҤJFSrXGCߢ ׽衹k${?hXc,Qۆt@ꤪ^ts;f+C'JXEtlgIkڅeYx,;#TMes ա"ZSO$}KJB+o yKc]^37h~]cGJ3=r VF8 ݿ9&v^Z}ŷ‚9Wn)Tѹv@ =%D*#bv0. fk"FwYNb`uݏɀ_ ("w9Enr{ez0DZi|҉̞FWq!C"+ ghySQ\s;]9H ˲'k]-ŮBXÇt&#)O:37n0$zew9fTT:-୞ơpv2s5'Le!v%neSyFj UOhʜ=pqO eSUr'-}r:ullv ZCm!-7憧?|!IDOΊr^֊s%cʑhU2Q ƝVp ۡ1ݶD MS5x'/3Ĥ[ZAx2`F^Du\-G9eIEQTe$3nv}Od "$5Ԝުk_~!ȳBޗ'WDW' (^'>BWuE:8`ƔNv2lHwX\y.Bg5`$KK5QV&SG|adV)`-hPX_ݾ *t3E̵[Zty KvOs x "@1qElsg%^Sq(a5\01O ΙtR;[(] bi/ b~k`d ͋R D]rqS.Wci3Kg`t#Wƣ1uVˁI*g*p 8QL;'; ٦O#E<2]9zmȁ_:"f!v HGWUIM93QAYoѻp(0 UQ=Sa) (ڊy(+.$6`[hUJCI]PiP I[G@}1ΠwKK( "7tM>6_vFK[߷@,~5LTfys,9Lvlzt/WvuWO`(^nQ*x*9=W˝<!65nIek#aQ? R@e= Q|->/ƴs$ca6Fչ@?Vg!OǪ2@@8!zXvݒ๫iQVT| }%qPc|Kyrʫe(+&'+1Aw*uDPaX"ޖ)d҆QhF.݇pwC,ra[E5\A iRMeI^% 8[ˀ rQHPv{᫨wGEzpR)1}:bb<*{C/ ~Qg~wv!¾ |\7 Kcoe;FN:mY rdNCo%#"AA? Oupư$22gX%&;Ĩ$xl^(D fҽ |z8A_#*x?0nʬZN8Qc^b塄<)) 6}aXVMʦ:DzAsIDXzY7PCk^L1DFLԽ^C;4shuIN6}R}kx%?)+dݖl쥐#^td_P|D _p=0I `{!;NBs+N)s$|A|ߍivLHK2*Zȸ݁r r:J!-UZc ӽӷ6}1זf? %VL4 ɵɁ2pH7 iC}BYruDy¥Dmعv:͎/DFavS׹(%wFٙ/_B`fx-LX81MmX&[_~PNJb2 V̩OGfc;=쬽F\G PMWR۔$1 ѵƆ<3) _Jmǰy ͗dtVV IcntGx}=">/;B'6P{RŅ٬VZ,crY Ɇb -ЎǵOg ) Y]`C(!eN]yQѝB]ZJ6^qjgP)dBq3ވNGjTg7D%"rQ Xׂ= ͥ!*Yk"UT"^ŎMl1ǿB(a;0&#y+W#|/Id&"$ a6O $=*?.ύR[LPN03L8:qIڹh<:TD$_|UJHqc!,<%9`s6 I>c@!!ݏX k~J!M4CK-PR ⋐Zl(2Lm DSzkmhGD[._ɾ3\ ZStjo92dL'%(6! H@4!{\*Muc8䣖O%oTG5.zw6ȋw^?C1h(\i00zD2ќs`3jsG}W, CO`(0W/הCl%\z4E{ޒ' ) AzB^+%m:4c7*Z㶜94\k}h{`l !rN=j-aGq&EĝpCLqp[<0S\ǔșItxI!B/L⛱o yLEqQpk#!M{}$M`xNLq9pi1>%O? \NO 9ƿcgYg ,lrY/^-jER};~`7u߱ - iͤ.\*N AD2{Wd/쭤{zŜfVio/ʷyݴ6gݯhd*GdN4nh^3-{p0 |%z䫜*! {=7iAnKؠ~ /7I8w} YV/4s:T( m!̮jgKȤAeDm58[(QXkQTxgCD1@*~'&ˆ.>9ҡ@ ]\g=0su?_v #$}4vsǰtQA 4~.њ"q=y7XQS;7ƄIёHh>ޗ_ߛcɬ'R) TPb-xPQuŇ.SM bzѺf7PgH~lzK ["YolJ|BR J7;jݱ6g4]PQ}CGكHFJnCdmMu_N-ۉt!4ؽN Vp=$]ص **FoMd5'&*L*JڌS;_UV%J /EaYۙOQ5b\kʳ(!lэ$W%<71W XIj+ͥ%{sCHbOJ*@A"W/y`'tN}}mL+U[؈L5ނM.ƹ/Y?.<(I7@9:pGd/|01eܾzY+l~ ~Ԗ {wb}&6vֿ}T(p |G>Sj|8<.`& ˿a>̲f%?ǣ!v|W ^4g4fȻE!'r@[tO1q@=0)7^Xs#'ΙGš#:zaҴXdsQkmYMVȞ/8Q>ۊJE^$98L0lYT,؁ݹV$Rxؤ\p8ۃTP/="9&C6~-GnH(B`Oa0鴜f+dQ!D^FYO<0ݔt`M;CrtQC& énJ <ՒK,*ÁN8 \oanLd#\ (&.{kN^ŮݫnJ9:DpϿ$VW~$@.-#1 Fks !k,eXM'<Ȁѩ_W(QTBm BE5WVnSR%CÙ!(1qU }),2i %("'3vX/n5Pv'l[D H+7dL..H,>ZY.gNh@ʦO:b+tMQTUu^OkRq_Ƽm{u=Hs/*2̾eG}z! LJm;UMm0Ѯ\<.8-%[>aDb:h鬺mE9Yjb`Οd`5H-iL S(VMK;nrYGxz pXY[PTef6Po*qՆtcH9?|V5R{ =< UycPO wiH߄yPb3P^ O'8-`YhdR:Ϗ*lq,}'_P`>#ʡ̃7g.ILV F%[ _뽒|al7)_Yx$>.RdD:!lbk8\j/]ߥWl`Iu#B3K(-3'Gdvxz5z@SsyϨ_qaD҇!.P By tk;9bIjDOf&Al޹9zy2'_ /w/M8l6<:J z`g0۾§`uHͺd{"Swܖ3=w"9M|M:A2PVm/DP~Q=owNCQ_'r zzSazo h4fBs,,vF/ʤ\}ִ 5&:EnDoy/摴ԸZ|Da#\ |trN#yScSɆ/6*U ɊpJ:fV| 1ܼŽD G@F ܎x^pE4c pW+^o#Y,ST~XX qw"BHۿGr*Tk[}IQ*hm}X)ΚT#a(_p(*)Q!z1ЃAogaPr;s[AAX"XOkػbn1#ȖvT&Tf]VBx<Y8cr6[y;ީю"y6UZ: p0WhIYIc2O 5 g7'W0 D oỳybi9n0l#@_ \vn~|Z4F,X|kր qLzkA"Aꠠ r >Rp'UsA0t~xA$Y6"g j2|1\#Z&7!Fz+pn>.9iR1UrɺvL>Vs 1PܞAV\mHCwB$~eL|jY" "a+QYM'nAA2@V~b{zYBR$bgJ -揇DLp;iaDGg,#?8B8jlm!ᬡY 9ZeÙ!H%1^ݶ]z2A˨q h\%Z0,ɻ6 Eڙ@i4莸̻&Hs)(`+0j=oˍ8^˖Mahdt. WDsvN5k -@0DIδ/=P[I:]~uI HB@:]O23GZH~ Ŷλ4*u,AZgBWNVG`#&Ϟo%0*ݭǔ>ˆsy*M 'P}i8I 1٬M'`C'jL& ͚E45?Xt&Y%4}sKlp*+={ZEu@iֱ߇3ϬzT(ح.hY@?X9~nNpD3{V;؍s zOSLvI^Y8TK Dh_`ZaԺͿ@Fۡh*R"Abjy N?UG}<Z?BZjA\6Yʠ Ϋ. 'oh\ kX$aipc6ѸJ. Mt#^})v3@j}-돘>߶UNLG8f@;* 97n MX: W\ryPBh9q/|A@W`DIY8p6[$Zr_Q-%K3՜S8X¬qVqvƭpD4ظP'\l@hF_4 TS"Y*BYKl]!}?_Q?lzCԇ}v P`Ό(\HoA!$zzןæ5>/5xk/aYcf Υ/CuNGq/xH!L_mD#.Lseݐj#_LyƠ/Vqjoc#_TU\DKnDM cg3w=Uد+maFGlB7NNg;]?}+<,],!fp~]3Ds<CqFxb|xe6wV=tclP K4ޚ%Ɠkt!>FH;eo8%{5HR@W3lYKQTsStVh"༝Dݒ4:oES`k-:Q)ޮ_M={<">a0ۻ{pp9&'kaNPfj i&*SXPođ=ї ;/&_Y~urd_oQ+A/ .9 :&KڻNP.]{$6p5+ruc~CaPF./[iqO lcҸ|"%ڹ?8UUZ@Jwr!ĊKf,{ċ12zuv6zr (b5:yV^) .>U!`&m G\o!K1V"}og4ǭTupT|^lʋ\{Ҿ[FHfȲQ6+s:/anDE>XDn\S#KcU YO!ת8nLKSh$X~͂\d%wK uiw֒>-B)0`zWs2M/(ܸ&cQVܨ(UoJ UQ4@ȲI^K^U ױu{AA#ыUuԛ\.AŃ,a^7d8I,JY>>lj8 IJvd 9 [̶ fg0c77I;]H-MmLAnBImѻVȓC^[t 1|\RlL8HҮw2)wŃ>oYRPFtc;_- N;jzv / iXK[@APhVb̂3'AKz]t֗Д;4^Y!E]rHD LkMK8 `lIAYy KwIPZŋw=X̙1I|O+D&g iB[l^: >h$qCE~`h'j+@%LoSbaP$!=WQ=յGpe|7ú\OVqt* o4ÞUBmu8lm&ʥ"}fyH5EareӭoUBssXt'2߬ţj.b;5QaE~5kkǕw.HJ%'Jaw.GS8u35S-UcL\Q"QU[#+8(baи'>O-T`D=0#v2`-e5Ylv GћoLmyY BoFH7Q>F9)߶MyiLQ3)vt֨j|OI1_X/*M5Z=~b@ C$I.>ʃݗ|gFd]*]KA=S mP kE8n> /| HMT,c]ӨodNE~^_TĢ:pފkb-JkT» ټPk+_ETԋXqΨ%<^`l׼q".6Lnm4&9[-8#uJj 0CsIјV97x&BT"yE`2 .}#R'"myH<9c )H Wu!49yptŮsI_9rn?FIJD|ҎZVa60E3G3SxΜ,,0I߿z/Nra&lC~BN3Q);I F=)&x ښt4g/%ÊRlZa9; &} Ҷ0ޏp}j RI2+h_D3I+#-̗^>6@\i'F,*kG1(.u+LYhb}𘄳 [ M<2u;7qV՗Q@ l(oRoI4n[Ǭn٣|Dg 0*lUzr;0 1lR=㓠 ӝK~ƨ Fl 7)^`- 9WYNroе3:[ᄭGVwE}~8~-~<1Rx^_^R2&*\@]-˅k W`i>㐒Zqkc#}%W mE1_pG}88KUMި&M]>+#_1T\T񊛒~4cT7AoxT4xu K4gK9ۇR^r6Y/x[AEo3&3߿O>"' oy礅߾uhkff gG{.pĊ}1?gA8^jArĬP^b 2팪^4zihE6'{X9y:2̃![03v.-|5Ês:m$YptFIͽK!t/F G`gb7͜Bߪ)-7Of!]5Km"^2?tr9򊦦⏳Hh!}db\(lɉfjtF&ץMAǠ%Q ;VH,nk ʷb17VbQxĨ C@ kju1"rjRvhy(w_ +JXz~qoy K*kN!mb>@CIGE Y7i=xDC d?UrPT1e0dDN0|oW-Ie*g57Bvŗ,*)CD+pW6 }w-N`c>RR/m BӝsK <r{&qAh%2\#󑍯O${qGrh4Q`WʘuFWu lqXa<ECJfgml!dl>A,{cl%*{z! GIteZ"\@ H||lMBO7Ec(N45 7ҥvALC}*r F/c;z5LHge̻ļ(Ca eb=ϧGTcZR ]wR0a:jS!™{yՌaixeܪP$]'?WUX9 dA#n=f43%L+ڮ$ZX7Zr8O FP2gV91u|@,)NhNZ^z,xݲY-F_ 6Ak,¢:*kjغ1Lp#yu;i?#(Z6ClRcb,yL+De"%U{.9V!Pеvכt?Rb2lޮ)vYWe'`$eV%vunDnSrN+'iਃrr6? f:PM'߶I6t2Ș^HH~@x%:`̞J\N\4ו+ Xcaʾ6סdv6aU?Ȟ?bU1N˕ OwXw=Xݻ V*dw%$~i DhO.*urښhֳyH'SwAt!3GW;="LOjQ_80.5٩#Xx:[(xmT*)Qʽ-EC5+&Ǻn],u?>`1[uF݊^7_sϯ%GC $a:[x1S Nui`rk*i3߽#%ٻ Zl S2Kd{Pqmr뽟9,6sKW6R=O@KB̲C&B=m3wӣeIh d(FE94vsrrNxF]rb9]@BOE%Jv d(U[#oDm}T<.T鹗=oVtVxЄl0' p`E> FǏrX"b:]t=+((HiraͥEta:_H~'06ra3YOH w /DAՐ$waa(B$~!zBT{U b?ܡ^+L5җ!o BjTHsݲ@M8w* Пίk,1GD@4?$4N9=i.C& -PB|&9?yxG~QiYÀ;B鎜lJX4˚*_Yv}h;%Smat%J3.00ɘ%Jz/ 1\v_rh(d;9WţPAAը*i m2t2$Yjve(f#Z WQ\6n"4`yԾ{m?FG\8eceSI[(fFOkj,oClҦx PI,τ2 ZM`ƯF,{,BX+qs.NmXg_ao3N~-/lv>3q\9cq7~]j,%7ͮjgyYgq7 #9#U["|pV-" aJ{]ͻ>] z}U{ +<}`w~Blep'٦:ҁm]:Ww Rq_ `c\rFuҚ*ҺxgF;K ۙ39kHc',7? Į7 HN7[PolX4\k=~ۘF5a9O? sv2㯃n@^b&nFd lD܉I_`|[:dw!'XB# Dj*/89B!R.̹QbPtcϰZ(JAIl (_Z++> C6fow+%b]j2)s^8&f$ȂkT1(6Q.&ՄoT"?~0 ;y.*U62=-L-5gSک2дb;"QV OjP'6Ы>ٗaHM"UHp[ TuVtAH=&GkAv=0ЗR^+t8ΔUV7ۼ$/Jm0ÓU!SWi#A9ǼA+@pog?21n& AP9{0.Hb l^2 kA)2Q3ߒ3`PݹUu#t+ۅ ֚&NV+(Bl TÉ?..UR|:`^R&v&$vjAM˪9-"9",W Y4cQ65#lV +v#=HUse3&_:Q:`~ƝPЏH56޷NE䚠z`\dsJ ] o~)`Jb~.X@L@u9rSyI/9, šNtbqt>JETriK٪=[C~VaKNֵz Z93 .xUEi'qcݩ@y`%EȓhS{OdA){p{~KrݽaEv|4;/7M)_~RT%k ]f#im8Od,F45pimk4@MW7B`/iܤU=7%7|I҇XDvUĎEO[#a*P.a9*~hړፗ mԿ}AXD `!:QP "d %ϞC-{`%\ q #z7fE&s(cD3I>+I1m aZ+*S$u #t~B*8d{4œQ)Fe흆+|y,DS96k^QߓG|^N[j.BJH,TRِ&=kw+/vQkYFy /h9YWb~N=IuO N B޳X0Eg/QX.Yp]b-QeLyA c9njܽF[ÛȆ g^M>r Y3sL@[-kR /{[ )" jЛuSyF$ D0Wkkeewpr+Į^;@8D> 4ԪŶbmr>u6;H;@VbwX5Ety^@l*UrT;w3Ǭ|=)Y0'Q-_>3zy ufXYrA%eNG-}l魟 do-aܟ \Ƽ XuNq^r(h*qw0m5ȵ9+6I`<$ oRo¼F Eޏ~xv-jd7XTA!,,?IϪ\#tD!W6̱DʼܿD1c}vuoRE~{| cA`%s0Az0sŴ1Z(‘? #k:֏V(f Rh=Mr#Db@eZzzH`4`oŀ׀]x 쁮ej|APtYKWp ogm$BLcI8K<7X˧.ձ#/V}*MWЗo4v'dHDŽκhi,{R"!3l/C.7Y@ Z¥-kpC5Neԋm,=)C+T|5~ "r=2ϳzu9f{ f-,[NYm^s  2GQӠ-[`f{o({X Ob?t(NA5ü55="w|gU1l8n ۧ+őWm2Q֯5|/X#>+f۸akљ,NxѠDM[v<ڟaQY f!r12{Vݖs.>s|JhVP EcECG[EZ*b`0>,{G{/c5|aQGM07{2)p_HS$G@I@X~CՖiÏD Ԯ[rh<:+Xn/WL [\c As⺉Vؔ{o|NDtn1}/TXocYOotJIwb " 4PsP*VB"X!,VC<@݆n蹇z^;M>&G>Yn]PCztʫ*&W 61c;3,b WjrSvd6ϺvR䁡Rac(뀺l(FSVn6^Ger:<#|͕GopN~ʱVYY$GV@Rmo{rhDDALuzg`˃XP[#PG{UPa (uapΡn ZL6Aqs5?TYpCyAR)dws<X@*8is~Jy*yvgamS; Y mx`l1EթXv5qj]7JHX>Vy ?q?@^V.&ɒo mn)@l+GP%yoAՏ^J Q5ɕZ\soG8,:>+d,-L9 u707.Y G̲;<w3l_caMԵ%8Kveė8g2n=e(dؚ {0~!6W2Ȋzc)L8u_" ˺ܜWsއEK u:fҘ_f@WZ*T)ЬcG+F~kEF):ΑƐݢnv-:Fɼ 4C K`ipBE=!mم G: !05|fha@<2E˃SJ} R3L_8T$бOpPn̫Ev \r)2)fo R]kYȥl)5/ޟg\Lɟd}&Q *N͔v bSJ-N`~f31{iYHZApNw~ ]f~.g7}!sʧzkOut1ku5# &5:[ɕD_bU}ۄCBSR ~[g ]ZRs*QVdž% ͱ% `dDN7&ƃeg;~.36곍Xl0orƬRy{Հoq7QvjZKc^%x$L+bPYqQDr|~1JAԂNEvi/ ğ9R\>X:|H\pNMAORC[ǡR^&E(UQ2ܵ񖭔b%=X܁sVP!sOOu0dHL/rڛeʠT:U!K8E}%ʆL{ݔ#bÉA~Ke !- ^MdZ33l~&jE7/Du??셖х )F)kFN z[ ҙ@tSb .oqM#ZlQh?v7m#C!MaDNzQ,-ΌI$/*i MԺhG^#Zۊgq-.zA4dt|7i=7Vf)b?h&~2/ =CZI` &,q"du5B}G < YOώ.=|H"'+DsM؜qP|GJ!CH˦et(Ȍ(6cSTX KGcפu'n;aVSeK[gvJ|oz.ae:@#an;3ifmb߼o1p;8p{~nRǀw+-ʈAykꃔvRLzYӂ+DozhdǓ' 73PuB5VSnnKw=KT"|`s]M8yu 23 J&4&'j-^4paǤ"6"*7lIZ`N24dMMۂ/75/Aq&x nw2a&s=Nf^Li4D[e3oߝ g)-Mbg [EeyV͠J)7M݀V!$Zs.tZQmj] `t9$cc,鵈J5\~a-}B#_d"HtPBJɆ$,0B4AO|%BU[4{@ds5# #4Ʊ[ jH 3.5l r|kWF }^#;J)@܋οam&ȡdNjo@o 4\ <%9x J4|ph]ZkqI@[dΗdf63="]79]0ح 崝uj~Iuu;?1kis?osX{P4m-靶ύӇz4聯XdrZB }F>Χ?4 j<;.:U1=7~yByi::x!sXPAdL:FÉC* aYn$peyA07]} EP]ʓD J2tвK4uV 0,rk'S55ݣN`^1dG$ޚestͿh3H%q8TQ8Z>bfͯ[!U`~{\X)ζ>{dy%(CR D*L[d K jS =]rn -t"ߕˏ`RU8N2v߷u+ @[ve?wֺ:f9J%F?Y%|#HfmFq|pEpxLq9ݩ r5i>wi{|e}׳O:HGv8[쬃6FM2wuﴮn>ظ)^>.Ƒ LHI5F`zP@@#4: ،T?u?=kp̪VFe ]&)b.n-n~nT,t Arojr"%\9i=n&Tro"y*Xj.2v`/<pYN^'76\Xh0WwUS[)yb=H+u^HP.CuLi-":!?+:*-} _ڶ^[B CV>`s_2UW]xژFFZz\3GJJj\e%;a} &2%y+Sӽ ƀܗIꮰenҧ53S[ⲕwD\.e'U;Rf"U)liXH>*s¥41k5 O˂#9:~>T("0g䒐SUt?8֞ _OkH\{}`dT" (ɥ`H>o}6qz#AXŲ>6<5/^" .zJj7#yZFZ>Ph|?&곫f0W6۾KC/>\K`"ޕatv;P}?mVg]5q-H+ WNUEooScٔQ饙Gۗh2څTYK_O Ş Z[5an ɩF̣S}Y֠Q[,ot`\VI߽Ιi,OvC0KhsڀZ-&[lrRm>]&&|qv-~yCބt˒~o U'Ƃ1?O/JT]l¶ ވcwr<%EMJ:ο 9~u^j&  x6}0>.L1U`oЭM++[3yo l Oh6I9B=٥Q C3vuӯo:qr*#cjXUW nAR QI¿ICWL2:8AY&~Nߦ"M8_c#>]g/Dݦۜڪ">W% YUuz$ XJ7S-dϯmL+*=0Бhx#>OxDo_*`MT1Uj!j?-أYi7}Uyxm.4rb"v*U3Tď,|Q[+M|}6V] yAimyxwN kP$=wҶ;W Ļx*KlU3ՉD aztg(q՗Pe:ާ/7Ue%;7P uh/_,UqIJ<4vd>~ade]C]mE=x!Ά~XY&jb#RCC9_R2v Y#6&2 @pQGԘxfI򉩩jKfKYG"+MuS,/}`8wQӛܯ0o.z%@-_9bH*y,YߎB:lMWb.Y^ښ1:Ojj.Ϫ醙^VgX 9Qvd٦?&G?|A}uݽȶsp'!*i>K`*i}M:7;KSA[C%.䪕dFt LA+U0?zZ} =q:[RE7< oa^/{&*dhkQ]ԤL ^=Y1 [dH=}wJ\YۘHei( 4K3YJj -q]&gkcȃB=ƳrԊ=rF4Ġ)+'$yV"7m!GA̫mC֘KZ.Mb`\j]A%ΡqA^Zm]y"#FGV6KS :i3w2U{͹/!̨u i֦3-HQOWpуw|kBsOus +0(>8/ ͦCJ=X6=꽲8btتi*2ɶ_O ԏo&}?)T"^dW#r .mXm+Ju$e3]F&ٿik yovZE>&1<؏'7/ysy@쉨ĒE3h"ӾaK558cum؟/t a3C% 2, $aG,k3z3d[nؤ< p??`خ#1+t`HaOս}P!]m ܔYFAvpg{e猉5+ W{MNCn+t WhU-U^V(NGzֽ*d:M {t\H etE([ =u݃Ln͞xX-iPȚi /-:1fۉkoх(EnRLJp6GX Kx}:䇧g+S+eu̎t3V9wV%Y h0 _AhbxQ " vXS CX5+ 4\FUĤ@t 4kd(5:O9OQB)K2d5|j<5|T>K : 4oZ%Li5?|Gxe>K2>mѕZ,JrV w)z P^[-]bRt=# I)FnL[݂.fH(@ 1l<Kh}6sbm"Poy^JPQZ zΣF?r9GIݥRKy&fj]Xh'97 iW ~I#-194k0Ys73baj:gv K-L4V6L62J;ٙ Ϝ4N)as8֎8(j)FCbi1-4{ϤC|ZL4-yq:i] K7wWj~P긷E ұͨ~a>ކTCo&žG31#;YsDk[L>ܢ_ J_0 g&/[DfK4;oI|@4Gz-݌-;]Mk&kA?=0;`;I0LeiQ<2پkĪϳO9OC^A "o<8]"&,Q'$;~  5ha^f Ώ`b' Ia| pq=y>{T f: ]5$:  Ǘzo¡C\[;yJӥAbĄ BwK x{IbFͤvL&CC2gՐxFD|IV>$z^/qi4-4[jΧHR (XpNREƮ}v~e`2kq۴ňvуT t& -|iYhh^,K=^,,ylp%dmQKod߈{ԥu_V뢐D֮Z"b>Yu!T`+W0(QfmTBO8 TzVr+2Dӌ==1_6.YX&LNDܮe$?]( pҘ}uMt &D@~3w.8Ķ^b Vq)*ZQd)LweERUP$jjzʖRsݷ(vw}= }džlBE:ftcǻJ*>Qл a S#<x%v  vb8?q*i{k_[OU"Z$]? *gRgfP*02Ybj )5(ul#4cШyT};b+eH ._VI& DEkק60k||#˦mߩnڵ[wFdqqCk8p@P~EmnR Do 1q5Q(/!er|Iv- sUN0fhI^O4*} A2ׄxknDƍV" TW O'>3Bm~^ */]4V3 ȦpJy2M*ͫ!]-:YWxmE5";ϔOۛ: '/HgYm"=-r4.&No';D#22%^t۞=>線%&ƿ;Ԑ9|&32J=?#}M jd f;`2YNtqL3+)D*x}k$$Su3L#- KX*?@+4=" [Ow8eI<#R9{@(!V5XmҍqOW1dqU46N[(F '>Prsp TTLOE*r OPc`ɏV f7H(1 7-UskTXI!z\>h. nbg[%lpo]χrU㕈s)dL}YޗFS2铌}!"$(e!nΒQsEM xM;õWjr\AF)kp13Y\$cƄƻ4u1軞k~9҉8+$،bMPbj+8Ӌdˌhټd1̧R!:sP <עӾ /qdNO̹+OgF҄VrPO?B^u4a#Lp6rԈMxҌ0aYߩSJpUy}X'‡Vljݫߐ+xLJv]P|U) ,: ֖sxH4PZDce 'Ë] Jf\NSݎ8 B}f<&԰cP=6`A1Wa*}/ᜒ틣}oO\be*HßIw>ۨ;>XT**[0.8DB=, JT60vn+*`[s-{p1OG''hs s_'l~]im ㅥ@~[r.Ȉ.i&؏8L|O?2੬UmmA/;#AӪo8}M2M'Ͽ[,C6ֱ$88 /f!{cYZ7KzrwH [Eqq{M|@uAG^/YHNUDVvr] %ᜦ:ͻlZLC"5:kوпiA+}nŗ|E8| "2 \ЯsQN jB(u`<p_:@ep:MӍ$\9_TѪ.@ȚzdfPF H9M[N[K&fj.Sa'@!c= h,2|{[^"(2Lq5%s'[uKe'`b}B68e-cmi0z]'eۖ ͋:U[/NISU@\Zz(^%14`Xtԧ~G`X?FKA;f RUekuj8'Y';(p4jyϟ6 ?@&n]d ݯ|~:,䑀,u6[U TN{-%Dzp2:fVČI,IzRCm<erdm!8˄ 4dGDVWe0#/ӓ ;C 4׹]O>&x_-@^F ::%!އ-l:OΙ$2ak@,yBN}DF۽(K{9O`4+|K\{i}^)#:y6PWi5d,͒,lÈ)ŅJow?Cj z}*s4FZxPWZ4qHtyׅ g{^m_}xiF5Z"䱚C4nDUق"6̒Si@sԎ0{m~qn2:Vy6TÛ[QSe aIp,s3l贐:ůJ#~z,_㐑W=B5y@oڨox_s0EJћ+|QԴu1;VoaAP R?,z+bDS43m\>C[*|>o ?M /8Hڇl/\.:r,`/qrS٨6Cf%lr;9Ԭy⟁kꗊGvC=1mȜ01Ȯ-SpQ#vD5'vۿ 8|Q%lw5A <;\!oa7lCu Pn7u  K?Wdy$"$u ;lEGS~/L# &I? (Ilx D{Ѵ[ 0RJi1A=QT=*zX%^Å$(:.FQh^8p\S3^gQ R]DD_Ed ̖C=:5Ezg1 HQʧ.;ۭqFp2&\zVE4*idr , WD 7('k'Пc&"k'žȓLdG<=˒xV?]yQcP %8$?Lhͅf Qlr;,pAQbfN+zTElt6S4ڄFoŀ#Sk0°C%LEƁW:p5] ot< J9?#c& `ᣐDY>k-FASw,EӴ`ޗӮ4^8lGS<1= 3jlS)3=)fin&PZQ VQc3ځ(x[7'b#o5Zƥ6s0m0L%@=8֎,wӥ& ~%w.+%^ީݟp-#Je4?m0d%:Qj,ODLH oA˺q(cZhAIEV'Bzm H^t_a}jIsBCl$hJo&dg µoz `<6;E&&hxH a6lG!u5 *!8xp{tn^ #Yƈ3/C}e&C68٩ Q-YZq/z@?/xG휗fmPd͢|`֢F/6R2?qIH{ר#"W̼Sr."$}ҢE=4 'S7j݊䉎Dq+_E3ݨ$gm>ctc|M"wLJ2B!c^ZZN(F$$d'arhY}{, FXz/˘oyv Q;HK7JZ;2}fNm{ycQ*Fփ.-QejI%lk8a-oJP* >)q7ܶG>bf։9T礰4;꩙gm dpV]P3İ2s ɠ?%!CE*:+6G1`fT+)#+c,|7NIfgmr U Y2΍fj@Ӄ(/ zv}g`\%oǹ7j~ IAti@@ $OZ+ @"DǙutoUS =ކit`g?8geӦ=Έy:uf8<(ބMovxCQ3 \ںEZ/eѐ  3@"|KoԉՁlbAZQ[d7 NxO{FU=L';S`+PbFjeC0EArb*QeaSX^[aY5e":jFR?*W{MZɩzmM%aT&42O%,D(+׮֋HGȇ,`5 "km)ԑ@T,(@( O^ar}En"5ϵFe яW4 >=5}´m{ѥ(SNHw`Dp Pʲ^$/\%)bAH*c)OZjZuZߗh>}u'@2]Дp4tk,Ff~Y3b3~U'L[L(+l4:Lr{ZmN--LꍎlOrfzdLȣ'e/lvlQ͈A:{ 4P< Ev1>40d??  !؏gD>;YroT^sX4'ijjHM`*+|E#Q[fܭ3HC5ce&+ -/2`PnjzK*4AtraE0xw{K!Xf2|iW(ډ(=Ze7No@3_KqA @D%?:Rcب'W'z.;DC-Ψ j^=DGV>"->]i-Z3?ڀPeaSS,>_aFܱH?rqxנQVR|8͵DZ:r2jP}qᴶ.lFq>?^ p\XM]36Bq%a!vn ~:o&8 D$ Sp!I'@IsUpоj%{R !Swd/~gu/G'eLqo EI%X1f zOrM%Y&a)Eu1XٹPS!hv6/\a*$v-)Tg,瘄@-ԝ#U9:pzGkJ;1~`}A'+1~25}UXXc3^AFя\ o8ij6.fL4<0h2abt{Iy})RT8K=߈i` {Vhc$ji5 t/khE/3s񗦡e5E.{3YʑLG'ED<͗Jt mg*Jwء`<̧a_A G#lMwJ^+UA־dOv9t.);m8 ~6 J+u_D %ESH=jkĒP?&+A~q=m1;#NG4wKcbbŝ~ԥT,W7oaGuhndqy}n#yPlX]c>A?ь%jQ8)-4$iDf.Ӭe 2)I*Oz$ƎܬD}b'pn`䌽)*ܛSŔAhP:0|;9%hNtH(vlēpnjJw{.cfZ_s-YX1PZZä)%'1)N р kPsӴM' ]ͽW4$*7CĻaF5"1=8G{>C2 CO0p P)UQCHKhc4?AX`12ds8jG9&Hwšqh 򚱙VaU2bE10M#͜Bcn^{0~z7"5U8rJmD G2Qwq1?%.-l:dͬ#8P?ğ~6'=tɓfXa5cr}9+oe Pӟs)KJK>_xZ6+;s`N,kXXǴGGscNLVEaw|kf@uH_\C?u,G:[%VXg`Z?C-m;j7irr(oZH'&Y 9rpc:dxzn#2ҍL&Q`tgY5rJ\etf8#}tI.x>\]eYThWgĽ>h6Hx~"ۨ+q6ψ~qa=5> F)qȥV< ۔ƙ?I`¾1G823S;PI.yri PtcZi k-GOrM1 qgT`S$s!\5!#.݂;JcP{db\ ]pm5j7k?0Ts׵U!ndd\hhKܡ_+lyT 脒*Ľm'Ws^|&t4D=@КR>tk%.V2gbG: C4T>QXh8)lC<g Fm]W.CةjJC_L n_5Jʗlˑynz~R@dQbGLulK~v Ş%l9}L-qq ?$ZL KU)S8l(γxGP9LN*ӃǍ[y/ndrT#2*J"^|~?YM4¡_97~HO~-1cG5 #:Ӡlt$:[CKP;lz#M˓ʇEw r{opLW(#ej.bGSw1y2\/x'ͅf:) Ǖ{6 yyx#6&%dd ?:9П ܌ܥ5',Q=N!#_wȚg\FOeOiMЂ+ Vy]}|#Qew>MhAW)|HN2T|c#y#%/s! %VC(S0 1o!x6ޕ,-6-۩nC! )|OQqfHXS`'N3l˘7O|sF1 @1]>._ҦdN6Z 'c6=UkN5{Itw?' fw78N:^Hbg9:h !`2 dK:mAbS,ᦾ~EWƮ(R@l~b!m_Ӷm4#5>6d4XCʣ {)}ZO[R{&UPyI~EitP`Tw)kP`haM*5504iyAT=G53" m@Z0 ddۣi0g!BE@sMenɚlfW6˽H8'pD ReQZL-_ ?*h8^p\6Ȋ7IV lo/')]K /©p;`D]o4D*s?^@ k{-Y(ilu, "晒GY^[fA6AХv%}5J زɜ%FC餑cbV"<.Wv{BF@O莢̈Zh|x ]bm@\zw/xy 6CN'-W`Z[(0ݼcU?֔?׳UU#*cL 'S1XZ- rdH ιX#/\|xzTs1vĕK=О.dkʨ4Xuuy)vʺnBtj"Sa-B*|JnxR`1Nݓ2w@M@' dT0VDOh]*š2(Ѩ,{ֹM_SI~295\l8OTH!K`avz%yjqzvŞ1M%+*%O]ͯi/+a0j%,W~K\׌ @L$bXqԸ5Ҙ-: M94 j(<63b Sn|{06߬d$:k0_|"^i@V^W[F7$㰗W\g=w) ok.G"MA .d8֪ϡGI >DN3dƱ9E- B ۋ'H7;ލ‹㪇ûb?!V<RjM.B Tq6<gf dtJ؍;fk%Q ^DzKL/Ad ʖ:R/|mrnEEi=0Wfx]%Bb;?k!!]QAg=GZD0hV-\hRh|YԻudp9R坜*T{,V =%`tBL_mTl^Ҏ8842RfF[|N9 UOq<Δ6y DK^Eq>e 0hwUJ@Kո &IG3AYm͸c5fŜ@JHAyuVy\ 0a4E‰)(2< Zg[󨑖=73 Kp42tT1GI>ixt-/w% OJ…֤m5Lcjষ_IpԚ J眦-q!`4ď']3ſJz&O7=3\n \~hQ,ɕHH>e +S6EM;@l ^ҕvc1JqhV򇕚C&2m6~Pn )j.}Q%YX7?YTV @b+X6atb`18n@1? xr;kuTI96ClNv7I [%B*#J hj̾bDJw$JB#BXmεpW.f{k-ZוO %_U^6j 䔐#i]ۻD&4XTJ}Heӹ"PdBI 25-4,$X6u$[Ўoќc6V90!]ׅzlƪ4A9T&\#]1T[=F* 웲lɐܲ.="}tei D]9\uo=]ELns@X )yzi-Oۥos2]wK~Q( q\V~ͤlx#yh(BEV͛|~y;"{n!jalnLj!+qr\ST: {@p6|y `/Y [ւ[} 'ZBr<" {}/Zh?#dޯ_/Nsk]m"Nn>ou+Q޽U)PS}$65HʦS)ObjGdjR-X^!vTl9"ÉM%0$mj!RѰ\qTo{1"]"X9-Z_r m0i=qRSoZlS%|"RY\V9;Sff?xJkmx x7NFsΈ&:]*~d߾L!K[W2舘A,z@ !"<-oꈉBF,)} Gt0ꟗvS,s٘o+j B2*>W'׶ ҳpH߽}}kwh# Ex2=^Nfҟ7Lwj WK?謜+͏M >аMc_@FE ׳9,7NbU !)o〹4hV#c5a佌ESSA9 TK-K A>RnklZέùV4Xc7G\Rlܧ1P$.|فvnm:zzJ.L@@$vT [=S"!@ L qLRVE?nvq{M}WUSYhf"M55P^Y (9..]{%ߒˁ^O{Z7碈MGi&f k'.V.ivܸb-6/uߴ\*ŝ !9ϓ rO Bi;,Q}J;I%zιSUZm>H 2LYeeb>bPPa `d' Ac>.gY`:kv.K4p iX|̚ȎpUJ͜{qi IzCuKJ(IzV๚#h}TqSn.,s+)]U;f )~|mWʗ 8ĕm4;B nfn% zA>r8Krihrq9)XtQoNLp֩|2 ~Gx,w )?J<o_;ytvn{c \Ig'!2"g.4LaФDiO!"1PĎ`*d/ ޗb D|hz׶D2-<#$w\g9;!%ތAy-syw@  YBAL0V.<g,BˢSuzZ /a2 ]t{d)l+Q=X d/Ԩu7i_n s~9GYi4RK pdvne?UtAJ$=thx}ֺw"2ޯ vV3&o쒚x^1jS|/<]e𱳸) ;Zwg*OUɸ#WY&1%>(Q7֧@A)U jDRM2?LK!S_ {RiF#~1\]ZIKx0cG1P12,dq.o@:hCDSq3-ԩ tP u$&`cC'\G:A>53f(]zGQqvE5|P@4I(/*7r&11۠O˷En@l<@e~i[Wg;{tzݴ(r+@tZ#L /_>qخx"Hs+E_d&ӼQL9S*uawjY`HXL-.|Mp%:Z1Y ct 1(83#5?(5؞U$3Y]3h{}kRi~8h[Tm[;~S]qg F)a#St>Ά~PC[  "WN'n˧BO6$cC~f p7tqxzAML6UɀT|o`osh0wfFft2!/D,c a4߉rEn99+7.ؙ wI$'lC{O^X\ vC/N-#>P['``f59Ux~P'h;(Pϩ;Lgrvݟ/C-lN[虵$m+ JRINn, ys5W2Tׂ0~+jSyD'׼:#c&V9D:?U]$ֶbS(@psH{[e z%"6?*?@L#%$C܏D*`꓈Cu$kBIVk"dh3N1U3!bZsNЎ6e3(Jh@(F,M35T` [2KW8Σy>LZ6oϒ;SM^ۑcBޗ€-!z{'=)Q҇g \Ote,9U(K60u'B%=k#2Gڤ,}^qA{^0V6̷ƑYѯ pEs35,T%l%#537RnU3<2Zy9f{ -CnV!m|nՙ \W] @{쑜X9Mþd MC@ir׆ up{eAWMЁZ7#&xyw q8#.O PQpt+nU ND@ ?ϽRʛ)=f<xo$^Wza]~- #a~ Gj㥠g9v5͚ 5@+~,?AKp- ﰾHpL_=ܥ;r{V%E[_Px =]ZRY[Cqy>YE[1y9zKGtxKnNF*{7lt1OK3*gzcD B7 _ɌA N昗޾f]xY(^^ .+x% G}Z# !uiWAyBոyYUmJ LkؓQ&99"*ТQdG:fJڱts Hf;͖D/A+iP09 %صG1g?S cgO%.Gqɝ!ߔ*` #|!e/aja /P  eY!Oww I?'!S[bx~' ^ C ^Xܦ' J_Pm|->YfMt1]/:8xNa.--_*h(׿jޭ;Xϻ [8D4?XFԤ<]ibuSj5(զdhC@%P4s,#h-6Oe Иq"ObՔhTUH}PXf e Y>L bmhÛM9\s rY ERpURK40o{f(SQezݐa>" 385˩){5]2"4FI-kV(yToΏٱ"8C Ϭw׳ rƎþTn)ՇK 4E99n4:CFM`U\`-Lz:*,k֒6|? c玬ƅiܷq%OGik 1eEGn͂GG,H+1Դ. ب#u)5H؂eX[qZ!;8f.v P $I(>R'wV\||G-Ŝ ɄEMDl)#NVr<гs8]}2;g'8XI^9Ȧ IRj ,W:gײ⢸=IYtM=)2E!܇<}xHvSC]rodKyNEOhӯlN[鄸_<ئ e@χ,Ztg N '7ߔpQEp^4> /9&˰i>>NTfIC#XU6||W9RLw!v!74m2K ,ʷPn^z!i~h 2?sX$fOB)TBd nV)C~Ӝm{f?@BSONTW~;i84|ޓzK'haC ph@բުT3 +ނ6wAڣاo2t*$8q=Kd\p\x-gҙXtaT4hu#obJ$4Xd6x8+q|Nj[$o HE$fe ۞YV.1i~$ SMq\s𹲵 ٭ۂrC㓘`w5S%uZ 1@d豄#"*_Z+QӀxD"Z |"`H`dg:pNL@$^59Y۫􏡑}8?6c1AG6UmW77| ,A>qw@ EXuJ3FW{V.fљdŌ9NGSG֞}sD秨C'X+eKF99xt-FK0=7ѯm:̊݊[RZ D&Ys Nj/Kш>ݨcy67.Z >1iNbYkźAFNjՃh ?&. fL^P_17M̌<ͥu:ksу~|8/1pEmm װPvlrJ#gńk޲+aTl ,&|.~R?lW9zFq#>ѿld#KmBo؎"yj8Ado8e(ɖuM5+jr9c9S7 nMd\~*~ |3XYחnDϪ]q\)!-LokzKChY7yRO`v-zf&%J#।>-ôL\x,$~Cg?,kO2g -=_\aet`3mL= /` J WS!.jhST&]+I>_"w5{Tff}cBS*HOfhH$BDȈ_O<:fz0T{?[lru]Pz'Yœw8ppE2h'f:D&<1jb`s]*?wm='jىZ+ +8| MX! Vݧl`3?J˸1sP}whfU8ɳKJfCkoݥ`@J yxW-\d1oTj"CVO P dP! g~%+g>2$رy,Fy4@G7YQb$&K^ ZR>r(uFdzH׈Y*7%#=״]/އlL>9P҆f%ғ-[J;KH#B'r|¥jtvVB!<"8.nu/SgSb=A<f<<\_ŗF6/dዃS$a?H͵^g!$hGM#$ZWskMN]V\'hO?f]-K**yYc!=ii4Tgh^Շa ;E#uTDQ.45WFjRDy Dm3.ivRCVoᨙ5o@0ShU!㑡I% gqQ'4RzK.@WA»l,`D[/8R8$Q?YTЃ&1[J2*I @Iiue)9'03D#ott5m}HR"ǀ!{8ɔ[ G !>5゚ȯ^hv29?-,1]QOx&[Y6p#UtfᑷrvokȘ,"ލ4g=䥻E 4V1zfFjP(xCuF` Kބ\V¨Bz#KQI)613OHuV?x~A%< *&·' yEpgI.4(}_8^Kbހ$E}P\om6.1R.943"ZNNfoy/ppW0䫏I}l tGKfscM ZƹYvJ,d)Q#B2f{nH i!\DYZAMU+!HGf_+Gk Μߔ% $JǫA,׫m ҐrF ոQ $.}s5@.̷idb;_$G.Þ5gE: TX#&L! 5KTgeTMo·S,۔aUOsz|n,"-] }% o$0t0Abj ġdب&e%ϓkv( W\yGHzwR*)D:CJ2EA7-2: i)kr)5aq)Df$*U>|Hۉʩ28i`.(s99lh Qh3QÝ:R"Nא%p! ~@"?ѓHvj;Mct]wq xs& CڋVQ%7yޣt$)G ;bTqx1x=jѥ )&$Q?I-KR|( D&L5 vBD6)^`-ZfFN(9KmaZt0|ؠ[Q_/cFI -Ȱʶ)`jElp< ;|c DDz׬yi]3/[M~ \[UPݺgFcL=!8w7oJꛗǧ]kC[#,߻Ls4X1+NAA$Z)+D8>,kc#`IQ^BNRW"_K~`ig.nܪ[[f>$d r>#@\i&A(#è :9:83R!=MAز:Ek6_TcAC6'Yl$;$O D`N*U63j$!+BS:9 0'*ͪhҔ0&aF5QϜ!|D\E;:-^KNA,fAK QOO\w-&<<7bqR56˞.WgÑPc|<l{^#Q0UѮqUPˬ8UÃ*fޭ³NCW2eiZcaG~uH3l/9chRharl#9JPS]v}A"#5Qe ѧ;Qhaufֵ]%6\;="&}۠[k"i(9C$'' @?Y',/G6`4aX _Rq$&9͓bqMD+Wx. #-m;,ZE55j_u%jLAܝ;_=QvKj mkfe~pE&U"8?ij bρquI趔YMf+ZAACNܼ#;!䃒i]ْ"yP=Ds6+[bGdKb%fDD؏xg300fe? o 9.ףjYN8",\> .+fex_=Y3W#deks:j@$hԓBݟJJ8{y:(7&.Fv[8-9#S*lh=?s/~Eʁ--&va7tnGj;9=8/Ƞ#0.nX[wΣ/5z&O<ȟC1=r# T_VQ  'OeaAFz]Q7$68q}36#U/}~U>u%%"kl븗tx21TFQ9h"G@\+a'N1<^@tfq`ӽa2եw\OD,kz3A4+[rzܠ掰e͂rRT)FSp_[q4hMǥL^- /EqfrhUFsD$ " !yB,9c{Ą-H~W+U{6ym\( >aG=_az,z2aV,uU@nXO4qe&wn|Vb0 `]\I᱘(aB)As8aw||ӥ-|ƴ4l{ʶK~7(cc4c?=EnJ,:*e/)p{7p[+|(/"䆟ÊT6b3yfz=J_XSe -%7p8 {ygc¾zw lz>/A,A eOPXp.o!#*^;)L{wfDֺ0e!H_-A`Z5|x@@V(2د]8 HL?yK0j+y#^,*;I9`Ot p#kzbƗvΣcgxb"ODoXs1?D#?gs`"ĶGd|M9:VI棁RP0U3cWR 2[>CLy:A:< N]>}":5F=KO1 IE5S}##[0<#{;+ XH8xYS /E#q0@SW~#.z/7е@B3{c %B:ph!Ȓ"b({Rn}u@uP `~Ɛe@yE6G%|yI_7IxQHh'YL YlS+6uY{vmI1XI1/Z/;fvw027Bc Uj{n0iᠯ+_ǀҶH$X]&h&J\"@~8=1";ߺX5xY-3%oju$X34o&\៯?D ;\R~q|z2Q*$Ga-$j N~! \GvY>R.*J~9 `%ru3rxuQ nV暍Ɇu -[Sp) +?3y0_zkLI݁9Qt?7@b !v;/ѮRGL! EH3DX#Q7:I bc]5 L FcRLտ#)9| 1ǹK-Iai*yXV QD D@ig1,į VqS9FW|EJ2{us"Flދ$׏*oٓVt()%󏟱8hsoߘ_)W>նL bx󧱳5 ?/!n0f_:LJw6߈8Ȥ~6VTE`B#S > i2E`faK z Nĵ¼Vuq|a4\77ȷÑ#tG=V)X=MDT%3?eW9Q墥Vgs\bnhL7ND*q-x$ݪpZ"Qa@J)P,PlJl?R3*l$kYX9ŮnG!Nkj} /k^ =VTSAdYܨ9:a6{5D]MsWBOWՏAaK鋼ur\ /?*7fT Fn2hk>rn.1`U'4X{,;<mHA`- xuPǒ)^oL dV6<ρ/au$zh,df1ܗ6X3HWB0J9~\FgJ$<;{,+d@}$wJ+P-r,iꐞI-uw~لϴՊ}. [K_+63!f9<+\An'%FhT7M;mOuiYeNJ-(n-~Z}nQ0H)OwB\ڗÛ;W qr77ohŚx~Q45wϗ&%!s y)ys8~N,yhvG V3GwK3 4Z>i~uxP.[/k\S{CcW5N|*/, MHIc'cO:M{Ld ^ ݦ0?"a[hrv8]}Np) _j[-;uh̐ˆ>&brm$i֒/Ԃ#6iBrN`3.s['Ia|G }[ Sl-?}cu]fM%p 'j)W(P̥T| yӅ{/;Sp`P3:%8y1?KF42Q-l~ B,܃5@-(,Is5'bUJuF[)[r- p`]zG5Pgj-e?XQ.B\╗~#u*-f`7 c('wT$Vf?ʶ]cJ=cyW޶c |L'^=T6'^:TD0ˎ'F*#siE|z+"ܡvVXF^l\ epS/!*`"KD᎙'q\Z'Y:QDK焹g|}q jzqZyCK(\K9af|*b"^eK)բɘHGCZ Pc{._I$yLڳa 2fcNqBk5#ke"X?N ^$F"Lt~Q{tUu\ |f^v]Zآd%(J/֊ [-{ `i>"erȍ?lStZ>)2&rK<3,ȓަ͐Q3V6$A`B.oz)׊@PQs0/I$d) HBT-"B@L$&be1;SGNxP- MiݟFEGf5R_d/`6lXp/˕_@uo@@A#̷ i?JMx3Oˡb ܔ}Ḡцk:4.y'm(Db؇PWk.pVI*1dF E]-"Z!#°/!|C_|C' C:SCjpufq% f bg HTUlmg'x;PE!`Ek*ìO,ޝJ^;g„c\naGYvNAI -4-QT@L#&+喳WwU C*U d\=DLp~bvYM!jIA!)i݋酐E.'׃9wN4:ns8-i0UpB(jZZG?Oqu!F8!)c{Qf7H8r|`4AX@J%[˥KCR$;ؓ 4mG.{g o^$_2N'V"k"܎V*4*un_ !C?=,)AՆ13+6$)]hdpztɷ)= 1?B)W852#) 4Na0&l^](zzr+M8pfT3f؝̙u|OST=ZsAs^MY Smd:%4XJ]OvNFS0y%00AƗ'+b YJW@s!О`ݸۦl߆X%eOqCOQ1m H)n֕6 SnPM; J/S\)s!K̠Bܽt5%Vb4R6a;$pTFc(k 1gOpl$߮]vA#n򚊾H(C֚sO&_@HN\Q?_I6T-ښRH<7I`٫}S` #gt1u|:*,Q3WmFkթN$/|%k@ϩ֎@Z;6gbRgRaȻA:&9ߟqqaU\78%fRqDn-" "ˤX³liN~m'(,4 ~r:=d%vT4F g!,U3j 14()O{` q1ZkO^t Zdgp*?>X3-Ҙ sɊ#}@ Kz5k"6 bq3戤>et:$LIIJ9nEr̐:бXG9[ o4Zג5KK8$Fyb(7?c}_ؓ+Lv!*j$|QB)DŠ9] t{ G2Ԥg4֤@+WPr-G a_`?*pͥYS9\I_J}3mW-8uvKNXϋ,i(L-eM^8+0́ pr"ڷj!G.ql ;^}P)bvN>z< =u ~WiQ^ ủzE̗~kr>}h/;cM(ܝU$õNʜ 9-,_&Tvy"OGa= ΞVQLd_ M@_ο@F`›A׈*Aa *vc1g+5d֭ CV/v9"c;UIWPȽ_1 ,mWҠB / ׋ueh}CuHGLW1x濙oT\vNO2۠e]t9͝?4x޽J4z֋獁ZT;'b ?2ez }1wxcݞDk_DRۧy1$B^95"#^!;` e*v6uNueK{QeyG /v~jԣVBCw  8[RMWɣO$WN4Yf}6 B9#= S}ڼFNilMSW\= \+,\׾m9^>'a8W!B)R|1eUxuE:k=w%Y3XX-F]!yanSn*WOΝmK?S X> lIYX$pGX+?q^CdE=?ݘoLT#ifAB)[oߔ3Ac`j(5ڬн9VR:[*~>'eJo&7Z)&'w(p;;nI3M⁜,f023}~Q/Q ~X"-Ik`PTYU eLBK|#`B 7\jN-p&#=RY@8 :~ W޲o<80]T֋IY G)$Ta~XXNL:y54GZ&}"sgX졉L9~^uM)!ށ^~qw+D +|tފKv\?v2G ߒ՜n+*Vs7 ?`e'VdzY=Dr[q ?qG fpt/}e\Fɘ3+X٬r_Zտ }M*594 Mlj|0iF_!G^b:1,//MHJJI~ڠ+e27nJU-'h|ڽDWbhpȃcX S}2CՑq|u E aR3,%  C+2BR7Dy8Wt{4Nh|9ܗJ\&Z/i&[6~?B~Oxjqeaf'a)Ae^J0JɎXD5v=yxH/8z3ā&cf5-ZzYaXc"CMݭƓȈmڣ`!N]g9"YUP A2koK11;E<8tiͻx@^? >f( 4M:k ,c`úkwaZܯ9r&!_:IF"_/8zܢNZ=~vh3@I>~r/6uݫ2y̞m_ aMJ.IQIK d@s*{Om! 9]JKd"Ymnќ;J_K"OX4;yb>q2~ۍ]NC5 ,!c!ܓiϛ.uQqpS~.8c_PѿIK7=H)ʼN, {yL'&1A5ٽX GhR}^㞾=(S OJHɆh\p@zu(K/L0 p,TP+ݒ 墏6%u$#ܣ$pDYR`˾RܳkKՀV93EA+BmU q+~)>wgRYTAKצ,=Ѷ8[Ҏ<}2Y-Mp;"5ZOZ/%ƅ~[LI ~}nIZP1Ezxk"7;Px$Vgzk6!Nl=kblzN‚ޒ [?]Ϯ}-/z<>v"3FB8଼ݎPxkuL ma,\{v$8@]'^JȲ=Fg1Ꝡ+MLnҽL:[[>kބ=m̾Tɓ OJ?FU7+ )l}\QpohT8 1Wd݂~Q>w 1|Nn8L<܇%Jx_nexX|UfN)6+QXR`~J\PVUT핧'+MfRkc#R$-YqC S_e%}/?n|MZg 8I߬hOn:{RZb^ 6*a1bw#ɬvl&uU9ẗ́=ΥLm?PM|Yv? kKe T(\ O9 |7D=dz`h-$sN}]Q1EX :`Xj8']Q q+6gt6D{h{o~04QN;w}<=iEo-Ps;*3В1,;@ +R[@2΅(mDpIbLe+enE0ttZܭߟK BM ^*~)10D $`nmW)T{NЖg:%6!x82dp_?z*K aT+(*ҫ DVmk:02ުp)G3 %bRZ+!Z=CU.]$Ɣ1^?.r\*'M0f\~jxoNnþI%}2JSʝtŕgwp}^TJH8=} q@Axۀ{2" *;&Uj>uO#ټ˭J^%3 Jf @ P`NO;oNHVߋ cђ"Oh{WfQΒdӪcԔ 7oK#CoWk¡wVtBsQ+EvkP.  jdٯZq;ĵlfP1bʍ}0i5- U'x0Z^ugkر*_ *r6W2X' x .+pzjJ Z o̙4hˢ* ~!d om ]>]Q/; 400:-q=k|1r= !G}W h2 H  + ~,L0sKrĄX¶ F*̪tm=.r7r%_@cEMtmFrA༈?cpHb/+Ihcg::77@ ;jG}|q] $ޱ7-ɁZF;،YM;1U/@(j-X%~V\(A[ ¬/Xp-v^ \hӿYLpF iRͦsLDpvp)R%SUoI wBȆ 43uϗ?cÞLDZl-QK",_z7vF T,lk١ŰxRn$[娣,}Pc A^W^fF܇ ,s,-KǕ,E(V=HkgV@2?a.i2mV7O]x'|Dk1h|p*ꈍ8O`{e Z<Ԯ[dތ/|PmEoybQi¹Kb?8 %JsHNwox5HU]0fB9hߡRIL!LIk67̍åJ58&s0_Y6Cn4'siwUѤ{-xy#ڹ1]AVFCp1xYү;(16:ru;Aӄ ttWF|I ','aLw~GNpiLD+.Bi͡e?ۛ!=jGx^WQmphާ*LMX> mRðXpp<R$ [`pZoLjT-SzW;o]mW*XQ9EŒ%D=~e 5Ŀ؁E<mɨOr8ⰥNVHf++;;> I'%e8/ʕp0[، +ߎ2^έ@-!?B-k8 "_h(ܕ'Z+ψ2i>=?dbeq1榶dO80z~筫$138cE} Y}jŒ3#I-8&F`s[UO'0TԞܙp?{ctW*5?ql# wAgJed.NNx}/>r ;u;0XV)Do8/!n7W@ IU>}I\B_+]ƶu ᨚ\| V\,rH(@ķO c?w1=u=7M^dvW*Nl~X(!âgK98xcAϏQD2̉#^??u# L,`TKCughIeĿ5׌D~ūl~ ai^pwNh/^8BDJmץoGfQW1m j "|121R8o6 Sa SM1 -4ɨ)?s{KAD WH'5L@ۢ?R|Y0Fwv_#Mb1I_@Y.b8;Ɵ[ %[S>Ȁ?~jGĂq7/0?> j ~hī6p/\jn36F`33((tZx~l4\={gM\9NިFpKeRH sD_8x,jonj عF_?5no2Ցn qkc*;w:I*y [(J?~"۞0cPZ,k9׫qlYREtB"Ť]>yٻN4 <SoD;dye t;.⮕wr$33nvPhO*hn{miUSO>xz9-U>Ԡ&B-}DzoL~n[Tִɂ̃x"R(5I"q W%x"_mG銲'x={PJ^TOG͚hH'SmqoԵ~rYmsm?#k1v9@-/P6̗3Ѭ ;@QD:u1Ë(``z" f[bg*Kq8wRm~uF:Xo%RL!S=9NZ'>0{0d:vW%!ODA}[nVQ8XJ[9)p1^q= ADSBYeLC|l}WA M(Rr!*8O+òHEiaO(cu(x 5H}&iAQ$%srGoHҾ;lrWuYmDEX;Dɦjna>-mr#EH7};~^[MUyv+ PҤpY"/2Rkݸ>99{7ßLۯR*j}_|=R+>' F2SI~ Kc(0t 训,>eU޷=/ [X7m#'%ςWq6 qdy%,hPD$d; /}5VBgMZX0kIMӖMH,A= _hmI : $R G `*$ X_pAIj~Ic!XKU@c«ÝHm|dkėCQWl 0=xI!I}`y>FҚumx`9Ѻ,7!*,B!.:³VDB>EA!nmp&bo6kݢN)(|WZŏTk`C]sOXZZ9+J ̮tg (EJ)UplQXUqmQ.F"B7*r!aН+$#A 8u9sZ:@/}khp$I^ؤfn[GG/=zWd|VsuB3׿O|AҫCL%0"s8$ވhE V:ہcےf#3"%|jAD6"AJ50mőǀSE/ޯGN=+܅$gQz%0Խ]pS6$0^M,D< 5lµ xi=iSo8SmNhD7c:}_M%5ly/) ';=zIKDr(s]zQ _ׄ'X9hzu25Yt_6OYP @!չSnjDo hmS+<0d!LO9FeU5@yD0+)nN|Ϸ$>19rZqRb{Ćݏga™lrjBצgﻕe-Wd qqLA /3_o^zO oo980#IP|rlԘVЗ u!O m? p ^{!/eU"u(|הᤅ@5+d ΍HP9o^< JpTl {̿$d} u- !ΥɧM]{B7ݩhq`üSNbJ?>*O&WR/Pp/ra={h;?3Jf%gu?A4 mF&0]y?K!ӝP!(?Ca8Bغ)[/&,g<<6+LE8:M -  *b]g||a@[/Ra T7` 05$ֹ ,& wOt~&s\e(%7ٳ-)X T; Gc7]`ȒnjY+RҾO/xQ7u.7nJd & dmOX#pj>=Zӎ ~ŅF);RLZAu=^I?]iU=15dG *$>/⑽EΖV @TY#,hHM+nD o|y-%k_NgMN"|m|o}@E;CANg]s 9$BעMkuK--Av)x6F:\k4鰑 W=).9͂˜Y:ڱGBz|#SSSPDUo7W3~wlh,s Uϒ1$i JNg-nay<s0n"uz"#%􄎱Zۉm\ѻ۱ԧ#ՑgMْ)w\Ck< 64w)Iᖹpc!< dH-y(|8•W{sTй5v:j|sX.Mr?kWVL.'eELxRLHL)zt>#yġn^Zjc(\/VW^ t?VYVĻXfU+!s ǚ$aJww4V>oVjuKQ:dz;À,UP 2|OXqz~.6K8e egfWF(Cw67@ɿb|ZƞҹSC4TFBmA6eS ib"bhB@;$U:_r+pWp߇~%iLo}o5 Vnp=תL\lBFYBkNdv8v F-l%] I4蠑1zJHd37sڇg_wNjz5=|oK?jޑX9Av JOin0:VȎ_i_g0pD<us'[ +Zjmތ Cd r7s;`\a!*zmgmAVpEcf1ݻAczغP)?`BEq]:HwTzk_EܖKobD \r{UtnɞzԼU?bz tbADkc3zNvF*D͇*o4v!>>n[}@UCk TQ;A3M=]ͥ_gx&) lJV#7LEv޶QGD 0VT|GxӃmN?DB(#m*6{TV ;Qyn)GsYۉĈ!:濯Eݹ[(޺ KT<C7#4vU${B h1jSK?*S`3;brڎH#8[qpQ) ߖKٷ('A>|7 퉘QCWUJ?op"&vNq&e@ủ-e'W}\*,u{c|fquv}[YPU_4eFgCg[CEBIԈɫ:> R#bmX2 Tv:Ob]*̅Krty/ f]bZGQද ,m]'_PUx^(V1Lt :eXgnHg^mdHuR7<ڙ Í3H]bblQ1d!FrD%;B*^cpʷ1oPLEv")ǙQSZVYӖ0#ɳ. @ߨx-!@+µ_U\|;:gZͧ $!7mx?o;MmK:MDX`ϧ0'>!ܭ0Ӄ(ȓ_YuA t$r0ϓ&_SZcx@H M7%8{keh2}tF2.ص%5AyI= ZψVRv>p2kB 7M2ᬤ/xR9)#aPHnÙ@~bV(-^9'D[[W2ݺ^G&#TkҊއh7f9%9v`RMY {MN|TW^j@3DůIʫkl2$btg6UH+cZWVhn׋3IJn D4J oJ~·7eI^s;-`FoB:fiTB77qN*ZJh|OifU C ̻ymx k|ϝ>!& ԅ2YAdgJ~:$04UG*?rq Y ύ[od`>"3sVXX(Gy_T8HSђ"{V6fzY:O3Ծ;=n&bӾu>/7h: +z+ߕ=D֍e# 5+ d){UO6~PU ws~Z"밥Suݩ99eG.ގPAelC,0M S8m%W7F3羽޻,p.\SQ(G]fm)PGfbs4EMxo.A085 gt%at ԋe4p|)lR]D*\$Ą`|̇og\koG5-#*3fN^WcS/ QAynVTc*]7t.Y4 kL|-q]K1ϛ] ֥xr[˹oЅ[:-䌪|/ݰ~Ib,Gߧƻ-ZU e$xSJ󔺢owleT(WT R;.'8cd< v GA)VpgL> ZVԺ6& !1tHq ?%E5 ]@w>wgyL] Ĕ'ȲA>y`4:ť|Gu#krl pGֆIE`eQ|݆rwEjqszҹ44^*ch xΝ~f4=SةR'(!WQEXە {}F6Ëޑ!!HHr"kdZa{UjhNq_ح>OW%3:mۓEe@-S?MbQF%MQDˮd/d|d;y`Pw{C4ҡyT5̮M:}#@)H} 8RR I2Ph%j ֋0INg۞&( l܀|#8xx݁|LhW^LE[.׏m{ɭ~ 2\%4O]%:\ռ Dni|f܄!* Z\>i)C¿ѭi>ODZ^i:.cEL+7iAL4BwK2phӥKTvmᯡI+fT9Jwn<ɱjUsM@U~,%~WbFlPϐM;yPB&Xd3H\XEYmMJ`K8U/py^.exfJP5Lpk;Dҙց~hDw_g6 PV.H$F&հv,QljOJM›gv@ZM_P*{b{C~ h!.phTUFK_}0?b-_= B&1i)@IX A5)*Dd)Q8Ug]]*[!1")n4\s +YMY=Z}l,ds%_Glҵb9^1c*ڬ"bVHHIN_:X@t>_rTZ遉#ׄc&b}Fxl%)CM͇ e+;y~@ Ià?s00D ]$Mbݰ{tP'rnNMgs~ |Ls / qثvøU*1<?Nٺ%rJG=bV}:Wjӆ̪oO~5k#Ul%[>z8{ 9)NnE Q߳vs]:<7XΜÇc75Cwi|@]]ֺ ?EXvˆgcAb)NJ-~ۺqR6F=%UMKf*͙8K;'FdYZ O*F5~T W@ہ1s'ƴ"{6;1@atP*( uG[bKk1ʷxmi ׄYlೞu 8P~GT|]ę_ &{w -j;%ѧѵ{VZ9:Cߝ)\vD.@/=닶Y6ߊJ 0O)ݟH؂nئ!XM `βo `'A>cfw, iTPR\ߪiq*'"E]'_"`6OD~AR> Ƙ_H+:xDD8FT7eAuQй#Ya#4y}XE$MWv^1 svjS^չOM6XK8b]519)|-I)Phkɜ14x^OރI,~o[0xEpջkp!>e;K*ӫ7MA;#ƔC'IhV˫AA'y$՚ &'5Mw\ o Wc3NWDg #'`(,W qrz{Cvc`u2>S̱dU;q\*~Krt V3"SrrUG !x Q?\\_X*A's*2!)rJ=tqyHgA;j%` \4.enSX#&5@;5>japy(lݧ_|5^k$MWI׀ 'iL&y)͌hύK4sm\(O0*{>-aQ5cPIBBG>Jԝ'3V׃98\<:umz׹d`F̈́Ko^|Y0jݠHcxE$lsEZ`ޱ4"pc;Pᙠ̳Dkwð ׂNKZ!…IYszn-2_qAɑ#© 04 =Vv;9Ad\-r97bMp=1Cl1ї{8(K %Ӧ]N1mU1nr}6{CsZ@Meh;e(A N:>""s6ys4&W&f4 HOg s\7w؅+*y6:&ĺ P;x|$V%UgĉkaB X&X-\nSo/FV~c7%z 'gq[d648XQ*LvG8F۫1*vDEPY 3)J->ٴ1IiJm2x.(*+R) DVrnhE>kiUܚiS:@4get>DThcܸ/LH$?(w1΄zJ}^[6E7jyǑ$ cҞ?d"Q^N '"gsJ!RB&O|pz:gP怬ư/ L# vI[s#Vz9Dfu6B>OIyE۟3[Ϳ'ȵ-3hwkҦ1#_ь~􈄖 !az6Ҙ=C^ڹКB3ęf 0*a/ \9/P%UW Q`(`F9*@nA`/ G%O|6ɠE6TYNOI~-JJ0і/ #.Ps〧ܞ?[8Qٕt $i+1??/c VN;O61} R ^%.fegϭm0pp74-tR-w)CfZu|vn}(?T瑦UaQާs\?3ZE4D$KO-Xp5|W<YG|7Az%h*$QG9(Gl $uyE!쳌_1q1ݹlڣKz_4DļX30=#],ijW-{lȂJ XJiu.ପ8 X49u*R\q3P {GfX'AiΞbÝ:a>5;Wͦn;>$'V^8 .K)Bz&Cw@;:5eg|Ѳjs}#זi:v;ؒ0CcPlUG4\XOx$wL o(VM3<_t` `9H)M<6C,&Ί)V-W9 %6"4$*8+dG~ NRa [z, S?y&; b֘DF0(2@Y ^ Wd ' 6K*ZsBABvV(_A 8@m &wBHIٕ--W軐Қax,9 9m6r9~ B5SWh=LB;LreUZάb|Gb_CD~˴gX=Ǣ&e/$A;V $[^at*JMhd־0UCߚ˯ qh uȡ6w]KLzep\$r\ tR_Ӕdqχ7*eᚲ9.RqH,gfUO qx+GMyÔzӾmRY(q7)ۦ(㕎13 1Be5 Q:3m[ BY J ]Ts4 a<$Mw١DInʨwZͦBAmhQVvciTX2A3VRW<~eu&QmEn-CsB)#B.G`*ZbNc$ޕe0MʩC*`ZQi6raAo@.U6ǬQģW%bڑ8myxE4++ն3TMmzkf yq ZT?Uz릤[ \6hleab=f)uDK6챈i͚z /ܮj#Uy%#ElB)6]J n!"|(]3*/Vc2Ku2l5—,2U)RbkFbHsTp߇kl:{#9WACtLӂmTp^ UwPҸ+.IsWP=1wJJןݎ !.~xށy<00L0Yg]#KSuwD^͊^Ee'%{_UI\}.qžޭя@J7~B52ޓlp Aߞ5)I. F=hrs+[bd _ KA$G J-Vfy>;"u/Bf\zYQvbī{{% K<w[`RfQ(lX#]9jŷ@8aэPE  V2T(O>C0m?'~QO7ũÐ͹03ț'[83i^AP_~{ gxʻͺֻ_ LMSUC)r6܉۾^^ILr5#,J25]ov+vPP٘q5> m)3`& a$]s*5 i'0z‘Y_x;I{C<N0wE_E[؟F1Vt; +1ozxR'\.L7x~ ]`ǖ K|m!$e`+oRh_9%KP 2І zᆪy,2voK8GOfK'GQ}3C`E,3$0|L?^2CI Ոv$LL\{x=dV #Y׃?ez֠˃ h}2WSޡ.u4]aQEGS.…K7IBnj6=>D8%$Bv &]>vna@KN ?L_L&Ņ@&G|?o}8Dcw [j3OhP9J0v, Wkq~fc6`c>q' {leoSϊ6N*$ FqՔDZ3'ߞʄ [g2HnkDuC7=$Nf?+q;]jO %&s&4 HXS{ꀚ/"ވ+dZsSP|N>L^0;ޣZfWRȭ0@@{) {H'0t(jDSOǣԚ$**̾ǚL[bgw0G*t¿zgN5BUVؾӱZ7[IUYWDq PSz2{`TbJ*3VӨƂג{rJٲk~fo'Z3fTi3]LɆ&2Zá2VkYϘebu/E:SS/2RZ#dYSQ!=C 7e 2  #XDƫKN@|S'ặ-^ t LӘ*)Y ֐[|q{;&ݰHv&uRSsZcK&XfMffmVr1844CX j3KſDԞHg$T׎wfǭiY˅kFC`D'幘7W+K!Bm:2#e*+N7ĥG0mZd˲/6aЙGRF"朩ǨL?%{_?;ꎸv{y[#BsQ2ɡ- bSDT(ʋTZoJRdtlYz>ɝ:۞"%=܅lDV!Q!jM2fLG_'Gztӫ=܄ڥ[̂^Pn(\O% V]DSUm[6hZφF)q dW3F\3r[w~d zimѳ3U)82f/P-uA`HE> l1Яl;\c*^_٥wJC{d(,}GKȢKz&ǀ%}-А)\yd mÃ˚ko1bUوKhaRW1x(*)wTQň7*lO˒qYylǀ,<}v Cu;H[Jd(Si~\Ԝ qAJWUr|;0a'(tpuFhOM9~D?yl<$%h%ɓ-8I;M9cf˘úspnt Um!z0 Qdj_};^ߛT~4B-5b matێDBH.  _sUNvtƵ$: }%<[`f]`࣌H^2 \7 N1/++ {Sz ZJ`嚞|Pb< ]H7 QrPܼřdw\9=% K<b'SUm ȭxz "-0 x-J?&Oy{$5+bX1:;d-Ph#>Me1|k8Nsfh 7k6q+Yys7OhH~J^nPVǭ+QhyB{0"[Ki ѱQ r OIկ6_! Obuof#~KL1u;@AP38߻kk=ǨL!CgېVq\>Lwg"t^o5?@;S^~ 5W^8qL1@sq]=k0Kd '6~}7IAc~0/# wEmG͘~N8 Ȫ!rI+ML11|&͓+y\,ML]pd74NZ2ӕƞH'clT-[0c1cMaCRka|ͭ"Ҁ Vy2Ak\ZOF-\9a&JۄR^whOtJ*X;b6+/|rmr/9#s!ڔg YN-An48mqYFl*o딜؏gC}.?VQv-.ƛ 7?b`p fޝ+18܆Ymnn ޔATrS$?}Lg2*F]|1$G2S?p 躷o1t%=0ֲӧHFXXZ;GAkTU~9󘐕zHv94k+(f"~:ő$o@խ=5?VV{Sу|ppu0h>JOv2\Z GΥN Ĝ./熁z/R'yA]`Er2X iW:XN 23[8 ,CT-Y2/ 6#ժcZЌabP`QP? tϫļ{V:G^'Djij{" ,Ϊ]fh?etAEU B tmo&쥮ru[xJx"^w6\0y^);1V p51ef$m9I |Χj4j8/ jC x~*@:ewsT= "s)/.FڥRZa,'N'M+!M6PˑzŰkQq)s`~ ۞g%ÒCzwTsMofuk?".} kjЏ2VlQ%g=#w~8C'TRL°2!5AhoO:406);"cHe,AW 6f Qev`\mF-zCȾ~>6uIn5vix,\yo8D6 sfcTH8(/(uçEջu)0HJ40 HIYn+Q{a4GPd#.4'2Xw٠VL_/Ȳd8}oQ)a _2} ΂wpk;f@Z>(~h(6GEg]ƑoFw#"p'w<l$62Vn;Eٶ f;t%鋢ŕctP~E蟕a0270֢L22~}t$~кy$oZLaMwkU6!Kfߣ&`Dlā ̱As\TT tW'ʏA"aЦRhm[]Fi^S /C2 QI H5VG $eMK|f u5|d1)4eG1U06<0ڿ]D E;Q& z?αd+usT=lEj]7_R%wwx@N}1x8ڎZɃ |w ɊsI Y]sT ?|[`_1/#A))w8utP zp _=Iq/Ф!+3;0QMAԭpԨoQOmj YK?֧vHk_NeUMAJ2HyGWuH@pprM]lt 2׿9\ KBBw̏b]ӱW]4\4˟荀7|,֑_UɽJ.VJ\^cHDfbwZO*!opLE#$/r Xno0Ph}w$Z&FCO1.Nw 2m:&lrE:d)䅦zRѾ7!ہh1~rIݶ2pS[ 'ɉR/9?W=Q;l:;?zBIǃN]ckShW\gXu}OezGφ#T9΋PS9|{P:i4܉ax5mdg\;O{cp`ޜӄB\iؿr !Kdc[Y9D{ϊ~pq{ﴧcpx4.ќ[b4 4k-lH{Ec&zU_~iX* 8$6ha\ܜ8ZG\b/4<"2 5$my 1Գ +dAnA?NJLm!"j:i<|I] b 3v8^Dc2Fm>lMfwCiin-˰/i iZ\") (Dy 9}p'q rM&K:rfeAnYdGMcK m+j'PjWLy.B*C?]~;rHS uʥZ/ u3*pWh7y =O#Qē ASg_։L6gܮʫLOHghwSJns5D}q% ^e+^ jZ3*|&INGB,P^*d:OhdXQcΏ5|)]()NAR`?(M*Qm#kpVgWC%=$Hlu Ahƭ5<ԥ7TwnXkf@?f]j`,:8'QQ;U|Z1~>aLTuf?L3[^\+e=*Q23.iC]wy {+pc爮 6;w.c4aRk\) 2)ϭ'C?@1éDB Q4 zlNb#7SԖȘU?8 4kvpeۅ>P.`XNnh-N؀h9Giq|?:׀z4?NVG ]]n_pB07B O43~W+(;}BT wboloWz\6 8HRSHI,4Gl; eYȶ{ et|ffG3G[Jcm ,OOm>>ޕZƱ@Ot>]S.~̴]Y V4B0B|[a:Ky4J0\ta2IʡZbAz6f~ ~ˇzy:!FBج.'r-/>BVɈ* 68?Ax䬰r{KLWCC$6Pp9O]i[Z*$z`b'f[ iSS`Bv([! !BjѪgpQ1B9zr Zh5dֱ}e:'"O,D9mOsEح,q ۘfΉeKg64(/#9M "c}YUl~Y `  ;h~su3}='! ? FbMJqYD5,UɐͯrĂM:JLn4\R-blh6E6-Jҏ1$W 2/w45&+*MDL4f!=(.tX$3%a" aԼJ'/KXAxX=,[#"uƶ, kC-h:~17b 2Ґ_Õ×5cVd*[sMw 7.@i;ާڕΞԳZn>_ a$*Gl%m`yF\zl&ąjIԣQ<!"Sh3X0| \6W< bisD:-TΧf F|*zS6+0¶IO#~gr >yMBIk|3LJe IU8%cB^)!';)&v |Q+nԗe~#qùE YSB!157<RN z0~bk1EI}-103u'ۙ#9%K)tyQojwe9 H\lKyl0d('yVuyL.04L9v4e.{6WH4 kȃZgFxh@b؇em@pv>7Cg@#eؚG􂡴]=4?=8T'29ɥm@/OB$QPET7G?u9ۈp 9.+}WUh5|{QaP2ٱ03+y1(ٻw(¯u!G =y|BAr.+f*D;JCپh}WUF0}7RTAmS>p;G%A2WG3[e**^U`=q $^EײΈpZhf}>dED\yy E=T FPpAx c@rמ_^!S'u'F;I*4 =OS[[)E1w)܄xI1ۣ8kDx hjȆ! Rr3[ևKUf(\iSWZ*: \x;~$xly|URIWr Jk#W_qVMfaVm1::ܘ0//*n7#p55B&ߌV=`o%S"ت݄mF]¬-$QA sPa G qR"==תl-p,v6@)` ڐWa%Y#s|}77 '=v-o`\E0OtG-)֒ <2?#vHt]!qs+P1+]RiT+.ڬdӺ=cbX(5ljZ=P~Tu Hq};%/3U,L !D[4@07)'-̜[#P&}vCjό6>4yxVͅy2Œ3`kSNd1ܵ1AQu_xC& <Q>s28&>ӽz VB)at= ,ǁqbN9t5RV:op`;Ȁ)Oή{@JLj$Mڥq pỴާFi#EG<"'褃;D_ˍvRNF(> %_1HƷ'.\t|ˍ!X6*@KD!w e<5ϡ(JzL#>'e_|.oE56VW8*&Q.Ȅ(1AeoVԢb/s{г 1#)mhlUt $y)Vmv/0˹8 j^ z*JCPfM<yǟX$_=YTRߕA}3\O,auzW͈3(:[ h iZӟV;/"u)Lj=hm/sJ8ފilB4ЪE;L%n^uV̌ԯzա0ѝ ǃ#J[cg#!a@k E 4 ˼lt<*ŋ۲߯"fX1-MTAhUİ>d!<_T8D*C73OtŚt̏G,*.9~tC @[=}GV 5@Ob"4;(#M-hE)cƍx`+@xk]4oF`R7OyHh:#F3_7];.rcuF?@  =})c ͈~'Ɏ/WF~Qb0GBXa=_k|<[!6`Rr=3 D?{e6ٙ[r -#ʿDuz %P׎ X)1!4ZB9b`C})bw*CKb%jTި_QA6e@kDlv &R,7_ >?J5eȤ oQL£is]9׷pLc U gQo8{sm %! 8ߑaS>e+,q|:'xt;ג>ܐ!.҅Yh&/;E~U6*Kmol :/dl3ax.L[J_Koq'3XZ\R஠D,^&@MhtTdrnlKMnxDC7@ ivxr| ,'j5 %hT(g2|~EA$NXG6xbPښA#co".ox E9.m7ј; 8U!n 6}j2|X]3c cu9or3֕, yUE},# uow",?8ToJ=EuY_rZ?E*B=7pFSq! 9{Ѧ]ɓZz~JCnx.wBHK;u?XK?aIB[lrab3\ z[(lBZ OloyE(^su@i.>GKϒܻt!0A+Ӗ蓷BMnȇEy8`%0ju g!g{1B7Yac|;2u߸;OgtL$):{v!oSx`tB@:Z;Rtm73Tj͎lJ@wV*A(X{"]eEGl;‘ y꓍rot%hte%I:9bӿԐ M (Cl7G'pY6)ѵoe}qjt~87~@Cwlv4ɝLyϠNHI+2le\`é"RvOj`3k6Q}Z.;(CH kpрG/.ǐL$nh#7gh Sg)!c{"Es7T)ԋcyCHs'm\B:LrR U^MڦkdR<呯L& cRP+id5cXͯR.T6h}rL̘M@ f}hG*y;z&@ߒ`6tTΘӳy9ѫF†< ?FK+*4y_edx/ MGFjqyF[dFY:gEo67u>7$|(#|Vsw.c]U)ּ) N#sPJ#td 1A 8_j[옄VW(%`S$\.6[N`w!"y}r4[4}5Qky;#U#%pܶ Pv|{S:f x}% p/Xpe7hGHR $'Y=1B2fB'2E.p@ nBx?4lTeB+,y P=pL8|FN#18˻.>ݩ$=<2u/ G+|y}sxGTbԟ&*R-NCnzXiBڏWPۜ-L.MA;) Rku%<\${zi2]oٙ5uA- K)[RuTҵيƆO݃;4P]$#RH嘈jگ%TR\"j )E*[Ɩvl8=ϋyut-gnOAcH&_cor̎ݤGYi#~/X4, ^ )CVh, {ͅ֏XQiR"3>լN '_(즬ca,ha bdhq2G}mgàD3 GRO4rؑǻYPYt}f:Z!k'MuEh *SƫI"VNKPôP|<-#6oSg1jF^ NYn!'dv6Gx{")0rc^<*41iwzwphUJhl\\(JI}-۳mޛ52rCLuA9tsUb]tDHZV nK땚fOy'5 B!_EIzd.լ*uM2Nuߥ֫)2/1 w(H %ɐCO dn'Y+5&ۮ*,@D}egmMI;^+WyJن!pSx_)&Ey.OJWKCLe dYq.97Vm վ[)W۵Ʈ gI~"؛m⑒C])0O,sO $:,&8 M\î3ٸW#Ֆ7̍BhZ/'_l&㠭1P}[$wf 1KV:NAvlr`P@hhIhf!cl=庣M1W@׶I.+]z1=RRAJ?+^?x[FY#[Vͭӭ>y\]0LDȳ䅵S;gAypܦ Bh|%C,L<u[% $F5\OkW( 2Vۗsn,"ɗ 65'E74䐈kx#7[R|E լI@څ%XQvKfZIY{Ww>v^dkrq n0+`IaDbPxwqe9/xS=uǷ?QAqPflݻf&, Wj d1}dFAgG#e۫9ԢƂi#JHlZdM3qGJe8 7ڿ? mBCN+!ޯ U=!#hV X>LH _F@|&ۗED$MfRܡ)q\.RoDV-`jL>MW3YA,v(=EoZiv4qˋ{~]] ?*a :^xVW܃)0T呅<;W\ lIN=_J%-}s38]G8#yhMAG|ɱ:W<%im )|:uSʵRъ1Ud`(E)݈P褱{?k|C3y +p=xm$ 1/l-Gϲ_CG kMU%yM] f!Ec*w?4&5^!$>-m#/}~ۿɬz P+㮺I~9+[ ߦ;smd-GN8olؙ_7a-* dRM-.f7v&EU5mnݱ|U᭤3oŕ[?8 .S)EG#$OH^׊Z17Z%}$%`FrAFDiLގKؓ\"SSVE:؟BPFsYOD0@,y̎BLF9>AXjIݼ=ܖi0xGz.-kGhPvyeC<ǐ+xrq]9dQ#A>}~ςS]JF}Ds8Ԫ1)ΈM,jbUڗȧIH;zI4x0̌lW)H[w _1Uq4&U8%Џ2v9z3! 䂤8wL 'zHmRt SrpFeǠ#3KHwGy\Qo4WS;XF̓N,jm{R Ec.优i)gL|jŸrPQ M%dl?W.^vu0W}Kuh$l Sw "r<,s/,VTy|+||%!V)$NG{Ԋ{-G#rc5~Xv WL8S>j7S W^+l{^><ОG^t͐u 8[eCkݳ~֡:_e\gfK!V2w>$+c"0p[&MKг48:E}K5z%vPl*7EPDd@2җbF}1rТNM=-B 2zX龲k#Sv -vxєZ>3xgyg-]DpYa%wtJy$H>o! )$ u>͈#!5ûUE6=[ֲd }O3z#-?]1Ƞ~&{KL N#hןRz Kw9(KJM~h6h$ MІŲ4Rnw}֘&*Dbm*ȧNf6 H_Dv7nbڦe"JպèzEjmt =nuOE"A`?Rv[dהI\ܥxK^Z u[5֝",V'ұ߯(祈ee lk@ke-Uq^L}Ұ=GQn,?Ɨp ~,vs:XsG.lj$l WX6s:Ҍ f/"T=]m_|yQ?Vn 7ń-~nZBU!/kzM| ,a96d[[DbFw߲2$'-pY__~ eUO:w̘IP]rx~T N!UW&J8[ːкe WZ]hM-u ya s_ C4m`_y VMGewZHQu+Log1f93@S]e}19j^yxT*IyKK;L{wC֓IƤ=DV?֣2DчȮH!=w÷~O 7J\l8mYtkb"y9aa/e,&ϣhw+u YxaL#sju| lZafs2SLR9Ʉ"0PRj&+STW@0_t]WYOJ"9`_Rűvj&Ώ] ;D$t]gLOȉz@/8b29_<*r(GFU#9FFηk ~+N~p{1ߡ-;Gs@9e" JuIGʨt޽ *ZWjb:HDJ!/Lmz0Bќ38QubYz24#Nե(f=w#˼7fsU>0{"m_k=3QB$@5ӯIT(GeVY%@!PlxAoLdY2K2} ۜ@;lMG"O?_z]٬`lB |Q{0a!HB)Рw;񴻂}7t_|#Bzf3 ng^ҳaaeӂ3\A1 ~Э6Bۦ5lj-ύ8%ߛV!ڌ *L~A A %se/ .487[s )ElΑWj$* vҩT\SAf >A$]GԮy +NFZlp q_&}ay-qaC&>b&(dmi_) z:u~#9,IpxtG:I*qБZW$'uݰtք͢]v]K?Q7oVC\)]i&hx埞=CjvV,:qgdӦnˆklA#0ߤ*|rTNkh!  Ezh-P; !V,S`n%-T;>>Oj.䎤q#nCUQ߯a{M% |@ǻJ- mUG:;<,Zy ?јSsq{959ǸB/%Qom/?ҴC?zA6g&ȋ3O63Os~U:cIO,5dZ0R͊(|gkaXJ$ *vcXgq s}Cw]Ł {S76cfo-; Dg1z2'-vQ  Jy|jInm_˚ k]5}ejCIDw"yR5wn:DQBJ@ b2GeH\U}Ir t8^>xwK+!,{1:%ߌ .YyBGz޸!͑޵`C ?/  ʧ [> _-D)c.y/o>/?Bqn)X'`Q?#=5/L4$CVO\n(pٵoԁ,{Ӓ^o>@[ E9 *ddC>jm E5bwhI<[û*mvileҵ6z? tUѽ7KKdT&HbQb8i2 o ߱B@>}Er6&SJKk{i醟H/D5gvtX(.͗Mpzj'zD%i/&wZH䊪Vn&Gff$* z .5It  l(l dFTUz{3]zM]U^c+n-\E =CMu}vUbD KI,M 1 \˴#Y[٘Oq]j_%鏱]Ԩß"'1[,iA,e']4Oܙ쏗.F\v"{5Cp\psbb !7u^Cچ"ԁVqP;J\ŕ8F gQbܨ\:fKvN/B{ZOfP8fw=V;J U|szI7X Y}6gܚ;4uH<[ xtM/¹>sjꘆe >k ?,T}zo6 {mD`:@6{ދ)+rzJw( Ҟ(܏M4-B K֟wSw$bz|p?0X{彐5kq(QRuƫ< LcPȳrd%o&k :;@ m|>[GK,`:XmvzT V%]Jo7Pbm(v>͍m$}i[vpu*ˀ7T'yYno%[/*KpeU7ѲC!p[یmC*Qo9۠.8 NĪY|ra3 kLgw#ŀq ƿm=ZݠfOYu9"]"T[l> b jcb;3R UΆǁm*Dp%z *53x?[~2HHDZo9z )pzu@ B/^R(}6p/.'q|U*o+|_(&vb#kgFSh cDbݶJ3dF7^U#ӝiuap]z!5gp.e?lX95cv"3C`SA_̃TwAF @C<[:a4@o5c`( $L acqLQPOoA\:T E3{:*R, Ā.O X̯ 4m\"\rKv3T9&2D/N?|nA5 w-旌bڂ)6`k5 qp aoYB{JWubc6rDS-}& T9DsjǨvMWMMSAi;@ Xkfi^݄s8[D'x<ަDo3dP tN5:wdlJ&^N1ļ\?}DչiתAC MsfZh5"OpZw MúQea>+I {0#;yh$#)&|!zb|1рHݘZ7f钶R>t;Y޼ A]]3Mq>+9K]3N.CݳWfW9H{پs'2Hh,o[|5~g:đ쥁bSXbڳuJ ю5,p6 nm`*k܁, ĖVS!qeanq o4pMJ'1T4>,qե#T!@ɴ nIӜӶ3 CK?'oWbY+|eHWI=:b^Ƒd>'Zr edDOq֯c? a#|m?e))=)Ը- %[>رn'b SfC12N15$밻CUN?(Q%8Uy:߱t9 ߷/]1ӕYށY=%,aXxBx^zkFbZlv@:mC3Xޚ<&,U)F;~FMj٧XG AM-/L5 `3U#] E sr*JNEӭ M.y9"} 76_$h*r':bPu U!D=%oͱ)Mke٢Ls-mƋGFTΠDq?_?4ky>BtDT築N?ғq" 8Uf/x/Z5{gzVap -{圚Fi{7?X["!.+λFag'z}*f#> xi(jg= vϒIUBY vI? g$mc+^ _RRIG$ 9ax!O_*n<vџ9f6gK?VŴӌCEM=W6Sd!9e qaJR1?~m%PkrF&T=*׋6_mtVul ]@Kt۹ƫ^tS'3As- WN'dܺ@ňSWC#CbgYE ākyV^b4NJ6:OD;*D)TT}sfsP?nU(e/ v=h瑻U5="}gnRS-#|wD5#+qwΔ?4ċv3?FjFCdWfvQ*cQV+F>,g/D2j1Ldr)ϒBI.2zLsHP~HP8_8=:Ɓ385yg @7to"^ڔ1ppϋ95E6WD sz.3[͚P i{Lvؚuo?C+k3lXDC]JMe+@, []f"3p⛹ayk0{,pxRjAm0v;}y-j&VǼ)+S|y-gX4mO'cHѰiI4y#M1J[dht`婎Z,6[D] Gh23O(_{erext'ͮڃCqTgt$X'-eLJՐCVQ 'ŘAv--]9AQ^q%@7:C0ـ{Drs=cꊓCx{!b2`CO,n{nO+f3L</4<ⴵەGU]x5#xEK]W0KW%w qX J,$f~ oE܌.R~u߰7w!ku0`kI R^}_DTx>(1<8D"~ ʈ}~g#K65;5 C:V\l`>C #BRwK!>3*}:>J^>٢?.3Ip:iP O~GLxT̜/8ѓ U 0h,~$n~uFSaSPʉ%0? 4Rt'?_n}lJGiwP^iN>LVMYGsE@ee锰XUv$/Qm^V̱'%$S`l=Yƛu0a ңӥLn:?2c?t㛤%Tb-<#Xi„OEt\7v+ljJՃ&q/`);o9|Ey"u $o'! Ktg) tm2L@.SA %hy>S[:鹫$",I̟ alEL8|8+BK`=QuӐA3 7LnU;}م?2 _HZ DCX.i$'Fy|=2@A_l+s uG[Tp@vP9Ԥnە\ #aJOlV[ I9a"[ӊ;f/:Fh1O")`_@L^\MvNEҳmdNl> 4[@=x7]#(Z0,zq8{&m}$l\ Fcrv">$1S0[ oVcjQ g<܅w E'NFS4qdM&}DdD]I9n񅧼ASd؋r 箿^ >$%=iD\x`.Q|(OOyT5iSDT raNאL{z`SaNLsɔ ir/ EYZ _?k/`eer /tҘ?Ҭ}EN _߹15e\.W!K=7\ކ-C0 $-KwQt9S^%=~ʵƯ)o,  rxG sgGyݴ^^cެ=oX"eKDțzŝy]$ֿL!dzxHuּv|SU|~XW{j 2.9lì{¢Wkv,F{MI6`/Ϋ5Ze?g!> ̨\آ&o?0@"ڏʡ! ﴟ|.h0C("!Oim'f^.0)q@? ?D&Y\ ݤ* MM2lhi|[2\K%IOjq5K[CMT /'.,!s!O6iU¬py." :vh M.5 sj;1a}>8]sTy,*͚3g[?D*RJ5;q M~m^x~F c"X։R!!QBZRרr@)`Ε͊{zJ훦;}|(o3,KiF84f7V5*#R-u_f͈ސYyӅ>MkUe9%i<ʏ:Ayl}ɑQ ~ Ջ Gv0r]-\Sxj.xӭp~X_^x6e N&PFOx|SZ/"hHYJ !xfB Y%OGҀ@QSzPmvfՈe%?WRXɷ^}MdwfЉm_>0XaY3ad !Eh$bNh %[A^ X1)0%/ gqgc6\cJ : }ߒO{ 貂 W#K{ۗxɅV5ibx=*>ESebPpL2ycqtt9 SI]ݍ6,9llTmp1V0>=NK~+_?jޙ& D|s]/Vإϼ㨛A_tR܎QWuߥJh0E"1-Bxj}q<_:[.S&AZP}X v_͊{ˢr &KdPJ*yyoΎ}_*"2о+bpCڟ=z͛Y͂?ծ%$✒V4C3!dٮ>n~뿭8 Qٺ>F@a_A3Ll5HCAVܑKO8!}0-ݎ%s3 NPs ?g4šMvŠ?T;#p.pN?a>H›D LHәǷDŽՕn6 {?x`یhN7ى2'XbMa+C~xwĩ&( |iʕ[ hٌ#MG˹CyBSEDhi4^ϯ.+O"ֶVr.}Sj>.Ec ӧ&|<1'dգC2ۥ}H>-2>|.b>@Z*;EZR,C񾹈6 $v=lgvs܌QHF|SJgNTȄw]zmk ß> 徽sƨ󳻭:7bx91 mlI(Is@xWkFwdU"Cw ^J蹅eCUtc^_~aLd) X9;T`."иIw=>j|CcIǨ@&2߬:B4!ӐJZ40&cPCK 0M#퓞6灸3R bU: kԉ}H%@nRI!Dt %}WF5ӫ"%CVŴ(AsN ȷC~믧J;L56+;JzmH!hfdr_ 鋝dM.6z^_4oe;xlvdKj~Z#16!^ (4c ?^~kMYG"\|zij[IvO^9W |3qy濣w)Shm8L?Ա&LW}-`h—fgk)xB&@2qR9[}wbqޯQb{aў{fSxz[*/ X#vb,o.=j}G@)ą@_d# ǧ~F:VxF{K$槖7PY[e}B_M%ف;XP"ŚA(u;hs4,/8]ߍHfV8]3ehxXu@ ;$aS}8ݖh+X8onY*=m).\-)M\4wT8Z@B=zO#@ 9ֶ/De¤^I[ 햻܆Rj] 1 (rK6t[OYZSW,0?WJh:o[Wen p Nt2r5%Z1,DE:r~Xp{m}(jBbw؍EG  L6(Oe#p2i X] ܊+'-VмX7 B* -x%E'-]<2?,*DVglH^d#CJQZ|q䨐o+40[94/~^Cėm8arOxNys]vuRЄxWiu r|bh#ףt=Uya F9v pKqm2 $9a7,~vBiuR!5 3/QB:$  ۛ4-3.΁ 9$.$We1%lJ9?oǂܲh%ʎ4nn~6?]Rg/G '5`'7A$ SQd%Ec3v[`9Cis9@bC#bc+j*Xf Q"(=pDKRsXCNah ءoxyg'mƪY_b4?8l'nSn-8|. QCɕDۜ73}kxZOG8;ը1 ÀU'mgNQ0a#LlǼi;hVuA Ej1+\09@Q]/q_+V9LcQTF<\J~Rё(꨽5\$=[|9?j~^rj%str8q>y :^T֧jv#jLo"}䐤47Ad4.D?NAb;*d &,(r}iQ{ Wϐ;%Cn0ae,|JʅӣE"\BCA8Rndp 7~f,* !C6\D1IYpq);Fޟ#%}MKt4)\ zTXiLߵ/P\=2[0g}@[`8.^Jx^-MP$"P,;VX@}7{@7wӿ,PҠ3+{ʇz?]%p*WkPjxngf͊N*YU~cd۠WbXCg(D^-N͙oVP2F#wD: (Qxg~cELH'r[l%SbN**2[{3m=YE5c,JoOn[}Y)zI^t.%ڷg: ?_Λ9 Ex`xn0^&$u5F&=Y\UMu \_3 e#W #3 @gjB(ӷ7J*#)3H2߻0?^ʊ NY. * *z2wLFR:8'f6mq0FL6O 0|Ae#XpԄ}DkEVk,|7T+GjkhIqYBɂwCR~QDQnr8bjŸiB]t؎/|U؛,ـ.GZE y+7N])/d]  +?K ww "PG6"JLE ^v9 6dA pIq2Ŗ9Ź-П#f0 ȕ2-CDk=mעg8|_d(=c h5fNReHbg tPyBfs;w,m?~s-^ {zEK<~4T6ۊ:VLjM6 ,)^lF:S䷒q {ZqaYO|u=heŷP䕃1א'sQmhU-(aϫ( 1Ƃg=)p .(w"+Mg*)*š{/[lx8gxkcXfgW$͚>VB](V5`D79!BׇaDi:|Yy|/w |7WѢ|*K7bտ~6Oyµ@&Gð#2W@\BO8 vYS&fTj$ޣ?;윛&*0=ۭw^~K_̯;rWn X!bIAD e[0=-P?NIһyXM"ngh R7›K>&7Wcҵ:4Wyoy^l- d}h ~*eXV,PZ]4p{?Ŝ2sFaa[Hd 6A7]5 /ĴO+ coFtaJR'Fg 'Ңl>pM _5jfz`le\mG6mц`e1%'Wit6N.٨eeJ֌Ba|[(/e)?!F$YXC{iOdϵ:#_D?H.9S Us@-qSwFHQh c;8j:**Г}Σ`BӋBLE4 {cnT ŸԉǠ/ J N yMVApj9Q#;Z↳cG"QN T/H"v1z=rTZmXV%^+hl‘e~|MUuv0Iʄ:%ʯj%k¡ZC#- @uKٽg9t9G Y{Au+sH 45 -)HqJaAip4ue UP!vy;KCS˶H⁼r@B4x-AƘroֿ9/0r%s:Э=x,GYp3<7M>;@^g(UqC79ঘ}4L|2pAR'ه;*ґbt2ا.g**3\~vx]uBBBC*55 ސ&՜bU,L@7{sBwC[O@C?rЇ< э`yTއ5g!g e!DR_yWzǂik"MuctO(8VFGԥ޳I6Y!`~|$X 4CD{ j|-(+-Xy/f_cSmOZx(½XXzX;it<~3G<}O̺]Pul >Ӭ/bQ%UM{oXSYlS qrb$b0h!é8+E^He_^*GZoB;SD n:aX䚒v=b+f҂-yEJQ]!1)+ӰVs#GZuy9k\ %(ڀ%:LyD\|kFVi,1R&RJ P~I[^^ku^ZL,H 6쐝v2MN"P%E :_:㍛Fn%)/Cйoo ޼'Xv*"/ uf '?. I!_(k$(:!ƨlDY% -F/!=Lnn H+\ymf?/IA?&z݆ /^,97It]7cߓL6}x^qvK^I75=vY V.KK'Ua\){cyD=aƫX'm{ !=a.lQΓ$CÔb)sz8w%ШNpq𢍽di_~^rRatw d͓51s &WURImф. iT O0-anYFsj,dJ"wFl+\E_>R+2C'#Hm?(.uX1iJ#>_-C ّ٤}(q;/W#,/37e}U`z#5[{=\i kv&4>7IGJsI{C9` ;:X)|<ͣiYr w?* QdbrxObJzHҞؼtF{qhyGY oqٮZ?y9$0tu:D$:A*h, W nljM5R"%#G X m3ʕXY@/a^tz)g10wi~ge 9<4[_Uf+m[Y;T}Viy!/_nÄŠ>uWOmh)3FBM4HxQcMY,U͕ *}:-5Qs pⶊ+&Cnă!F[K=uU,C/h]  m!gQbzUi6(eJ@tfyj @d};w|tnnB14XrNxG|[^.mmq_9v4:,ϙ+?V98`PWxި  $EsMP~V55X%zvD6dr@C "ܶ}=T*=EZI4vmxFttޚȵ}>˜ٽk d`;#('v[xuDӱ=]=ƙq&)}EyȷF r6z"Ϭq Gț L%u@qUas8ph|X :cM6V%vъ!P!wQ;(N3ƪx+Me#;@1n)cY ƳfJt{!n3Ë`s^0f)j Ƚ;v7sE@8B#|I9D--s=>_YWrCٸ}K0Q9qTj0"Կ,J)ؙit; ۯ} lۥTtI~#RԮ/N=0蓼UOL%GyhA] Zr~$WHf8ӱwANJ+TN>+0߾u2}Y1Vz~Zl\?iNxJ&&륔#R+٦XQpYO{ٙ ܽ3JYV% djGlbyZ^ܪʯ=.1w[y;Yͨhn, ѰK=a8F|ʑZ2hj_R/AZys5 tMd!ɪ 7d54,::bQ$T?Jw`=u)ﲬWy&'@ ½AmTNaa@V]%ϖAwx64Gߦh}LamBh)I,-BΨ:)`s[`|+ 7g)aaO+d&" :yDôfP&jU#ǯSLo͝5  To7P6z~iZn'-Z߲_|#6+:fm;. st?$ܹ%<'0;cRpT2vR 7ʭE!pq)C5m'v`i` ?ίM~\'a}t|+"/pj`$Rذ.H-4pR@笔/K<PTRafN2 dՀjl#W>~I/XgڔHl6T沤 /} ƨ*.nXCJt=' }xCh"ߘB@۠mhU!n3NLf g훿Ru9II*8o.OIi=hYlspMe(3B;@TjI:u_7_u~,/ G2vBq#o GpylP|Y2g NwHTԛ_Qz*lj 9X _ Zw!vNiX^TdIW\- rA(Ym{8dTۅW SPЈSr[b׭Ea TcӇ?$51(d_uOA<ӊcqPB5bc1C[e(IX@fQ)¬C}zGqN|$Zf>h)Ӡn+`}d:N;g ! B;7Ł0|>^/@){K'DK݆O. ; #Ores*ZNy5 i#V@C]Lڕ%y-J bB]W-x5U⩬cKig P(B:ϼjdX7!lsw3 Pa-MA+{*l6>'&EAPm}ԃg2[h=<ΐ:;MWCwE틊AݖQ6_JH/B>w65:Vw˸M8op!Q\"Hpw Rd&FG,ĆYhٱT$0tOP\~ȀL+=>u64 e}ə处HJ+sYt3}f$z[H`iQ $Qure4/Qb.H*x<Vb9[t0n#z.68I`Tq |GR h-$1(8O0m|W1p7%Bf3,wnA5i0e_Q$|YNp`dǮ;eј߯,\>Qԡ fvO:+OS̩w;~ _׫՘77W_ĵ#46Xɝϩai2Aph%bQsąI@mZ}7X WB)uOt ue$xOٔ#*=8UPiakh TuS CrSwos/Or~w}| ׹KkvV$TW0Zlbt@||?\$*|-Qo8I?%h*@or஝U)&_a$&#<:㺖n9$((@MM?\~̎5d9.Y.qr={}=sbNP(zkaɀqTB++‹wȈQ~xL4R33%s9%׷5% -ꯚL4i˿JLтsbV::/yKntf-G_ͰF[Uvj7mY&jÊgÞ̝=>Z(J]< 2u4,#lx?s9oF֩C#XP۪u۰(ATΑ{Ҋz@HLENn{NܞS_Xg_lG7x>0P&#, QsoIn222={r -YsX#6}8%` ~ǵ-l3ZWJ X;uVqq<{Oдcƀ"Kaв'q>, bp0@ Iא(z]9> o^YAYLVIZ 9:d؎H̍AMQ+j1"#/izq2PaMs 8"L>@8sJ+E'w2J9*QG=0=$@DTd_T uUQu'( La h[BܬŽ7tsLYk+qՋ=]avTLİh{_Zp?0-sa%cKIȫhJnH%Rlު8*vGU` !dg84[ p.XEUo"FY2B`G0L7z08:5'x~z9l^n0ij!= u.dL7J[ۭv9< 1nMI6odf%/op􄊑8^[r+$AcE!0|͡+R7z#Ƣ2{y@,$fykc(RaccٵyCau,\[[(N۴r8ՎMC}/?YUpEJN429,SM)*w Q'! jV2E@UgF.$B n#!n+8*,Sb6T@ކ}/)mqt<[M[TKAU˗/ vXfa24U0ڠ'GE@F[H@u[zioeAO7m9Zl%ܯ'&F;;PXܦތz3̠2mbʜ3!j9fbWpd5lnԑC @nZ1ml0n8iS !ᅵ۪;lĄjwQiՏrKCEO#F:J@;v+uO~wjn rE5o׽_vGtucyf$e@CF 3ߜ)Dդ.;H$$@Z[%+NCb?izM: Tk<%eWI:!G=LgQ<9*igUiD%UT5Nq;[YRM=ql +,-rD-JZ$99m67RK*5YGMlAXku B0ܾ.R&@\|\Vwe'!: VinݿX h\/6(i~EՐhAƣ7D$GHBoQ%qU"lx1yOv4Uݣa$8I/2!@'m}x ^ &"L WVZ{mN4B dy &{-U=i>*tZSnOA$2] 46EEmng},8eu+:4DaL%.g8fd ea*v>ij3D5 $#-bd>ߗ(ED5u/kFall]7rj{gW^"rfY`پľaP-bX|[oYjkv/+Di5x0BX4ڜF=HlHCy`./HL=3IG5]ք+㉽c$s!q>ѳ\) I,*Aoβ\ +iv@)N(v1_`Kdl/@2[(1H\ץ\1E!A=m6{3L LDDNYjC y`aHh+O JMNPn-ӎ9S7𰙰8Vj1py@gRt{w5p1ɾ-)`!HɇBxX~.",*)gh˝!wsOaj]3)9\HDm#ɨ,Jja! wrgnʮt9k<A{j/ƺQpU>w.{ G#_{r%bB: [ W,ny"N|Rj+r:g_9F[McvK< o+2>3<~P{|S)[EuBD 6ǢIgLf|_Ӂ\뉮bAMQiH@&T/-zѷT@#j9"PLFRCQK)s 6GćRkG_E$8S2-~~ds;ţzߢ>{  eSp+L>^dbybKA6w*eEi\ŗt3{FIW5~*?; #b.{eD$ځ|oZ\X ~7}=Xh/-9wBahĦx5ݕɚ(|UMz9NMDn ]] mSC"3u7f-@?l2>fk?Feh͌Tۮ^S-'m5* h׉({̒fm('xy,r~ZLq-Ô+h/J#]4h448}?\i*>*jã1?3ewZp?轳lOB91@=oLpF^ךwכ\HN4ctMn1rXh!7ܫe0FZQL(.y%k@idHvJA6WPqך , ` 0{Ut{YE80q| >i}/FGB(b]ÿRݚ]X{p iH3z"*W^rAܥ'osM4ԓ"C-;?"GjG'׌3|M2>ޠ*,3= Kewq" #d2F.{o@_qLI9c F8FǼ ЇgSm ۜ2+RsXep[e@jZ8}gEu#*+:B Cj$AQ|,T< Y^JRĔؕ)Muv}uTP8ߺ)(&w䄅YclWv(a^B8\vg30 fe+Q-9&6JR,]}JsS"ہD2ubę8)%?"1~$Z[_0.&sv~W3<|)ܡۚ$7#u2;QQo:JDOw^5s"!T 2TDUnוǮbQ+ >AmސW`G)Q&diON5Ի#+U\ ,Ѷ"ud+.s1̖+f/?:m{,6 r* {1AڽI@H w%@ T6SDAKLTLz "ZX0%&?8 6ۍ\OUr$>kywh&y Q"7:<)ŗHc)Bƣƕni(Pȵ̳my:%W< W@)7y _4N&>d]ʐzf{)vl)IR9ޙk(*/i ;eñ-?'Kʶ} |mZZf - %Yug\:%i{4AEND 8l^Ԝu0y/Ϳ8ZaS2iݭ^PėՕKTĄ|'W2q]vNM1].i5EC!ܤ s' a3W`lT0IQ/NVQϙ<:Iat6]_HU0-ϼ X|6(QNCs*cꪬzi' QGG1}_yRm Rb?j_(̻7Wfrɜ֭)Eh̴QwNI)`f>LSxgc-v/hHc-&4k.tk>T(*o_1'ik0)`z5k*I\cw&,5b xf q $o9jvc$:7x8]c-0_ $!qKHm<GFMXܭ.q(A%vl?7)N׮T4pMǽ FCG1jfp_}수H$vʷ!Uj4u&q V˂Z8ޝz66B$z 6}83*) p)y.. DH!b5qS圔.?2jmZ`Q}2c oY6,JjDFV$5D7e|4zz Hf3JR7'JXf%Wӏ/0zGp)tP|eKt71z?" _K&!l"S`mjqۍ#z" `fpD+ ٽM,gB0ҝ& BϒM7.—& zvU k Űcd*aץuwSh:4U]K8 ް/du{ӱy*aV1Igpuq_;ɕxSPÈQ[nk4RbQ™l+W뗄^(yKSn>fl 1} _`6 Q&MߜHoʷipr`'ZuK| ўGykPa.V>pUo-O!02X/RcۓkNK fdO 44RWF5#G "cU>W 'ncks$xz;`߼7_ T){9bz!A?RlCDf:i}TML^Ic$I(d^NϻҭhzLʁ?G(cןFj F܊MS{ +ʅ#L􈝲UT:g#PwtsVߍ;MQV[!D3R>Vq/]v@g: u{4C9Wc3MGhdo<Hj np/UaW0 81c̘~љɊMPpF;,G|ҁLی=lðsrՉOsolx Q3iyaU]΋٪-97AI}0 DuM<#zטKcMNb[Cآΰۣ}% @8ތՓi\" buC^WI|{$R>_KE6Iu$kڅ+O7j+}`wX;7WE<d(V*FƬvKw/=|tf\Z]PC â+tցǾq7CCQb|~R-៵hg)ce}2Ō^ L6MS_< cٜ6H)'̘'I܈&bH\sV4)0Ljkm!{ nbr46kbݑ,vɔ)h]8ҭ#pgo@p >L갱^*׳͐_θ %"YpBd`8!%@B!QWeB4fC~$LcޟM >Lpm4Z9K֚sO_پJ 7d"ݎdMa#8G{(|MqjkvKb[RB AAS$Mx(`L36!rSdIȜKT YXwݢVįk@}q*ADm6KX9_&EnqAor mmqvTM#uxj 7KSR Lb.[XϨ ޼:D PrM ѫYm)q9|dV+ vφ Y [^A.F< c"zAMח5;Eq9qH"+ Q<֊҂KOU캶bܡ\Tro.4B,)r+lzEӾZuQآBҤf}[M!23f~gL"{ \`$GPh\/cRT &0uۑ#zo/VS6ϡso\{f+ArtA NBkVbbxPSd4:+?+j!Xo)fܼbMȭlx[ɸ%wv8!;a;nJ:L[M-!#s ^PGV>d9 KϷSЎsQ_n7#RH <P_a8'تRҾ.iWYc5_~wՉ|d.Ui{`8˥DfnjQ H0o{PҬGBn$: ZӔßapM%Gg:nb=́-3-&9!ݑ)TyxkڷIU X)hƊ;uew\ig9HZ\<3Dg =) MŁ'LFc<}1u#~UaUF$vnQW'YZ,b¾'_F(`ulaZ?t,nbXoF6_nش_ѥq1b$yاWoPF.ckZ?y,NP9.)XMQY7! v 8|!p.ʓAӂʌ !b o*o٘]6& ې`y}-/m j!?>1DfkuyDAŚ_TO#wF[†^KF:%;(bsG ܊1ˊ}E4.97Tn$, W~3~Nq*gQ`>Ƅ3ɂ>'HBȜ;eŶ:ev\a.?-Ⱥ}a^mD~})\{RWhXFwR/;EK:oNyJվ7ݿApxZ^ g s6VYLm1YxUm/y_7+_C=] fI,}j/wrлO_+bUVY<΅?F#+ D4>T|9EW :zuNl6D$nc_hI>2a\o%+¬;hfCʺ't E+j򇨶l RZ ! K7 36C`u|j%4x$YR+B Yqc2vG5@;&hmX6A@rܨ)z%̰Xҳ!&݉.t!k;%:pw(ن'a!Hrܰ|g_u @ڎ?՞b4_X]3_LX\Fbi4L+NGk"Z G!~A'Q * շE49Ae Q 2+\T􏠯G zk:]"{l`2]%ۍ %yt,,:6ۣ9_X+ۇ"I cҦOF;,]>0%pݧ1bw,`4V/$ِFZWZɘ*uraHZoxڋ%|7@Ϟ&a»L{U +MJLbFr)=Z;6Շ>~C؉BBIP_d3]IԖuJaiL{v3S)Nzi_Um7ax䧖M谘07qǥE*:F: Ut)L/1U(zT*л]wHHHUZ7BIPE )ݩTK`]xf{N:I(ĦyR po >/MRIR}e~|ZTm9}^C«X3nvż˺QZJW+c|OSV Nh 4\O×+D"vQI`?*iAjV07;~]X@t]xm'[v3/Vvmg2MJ|n?ܑ3yxfI ſtQKe1v '&$ I#| Ѹx,D7 Nc~IRO\ɕ7Do$<r$PpTV?>L ']HC "zl'>?߈L*68/hnwH۞>/){geB6LиBDF Xמ$JzCx+M1M!Q|Fb-i)b}7XYW?me KPˎ %l7pYp+j)۶+RL3K?\۱\fnLIs~(~j>xjސQ^G) e<T7"Xk\qauf K[`*΁H&;1uA_# (_jq3baO#浚~>vbB r0-akλx iWB>lDPiU$ Zf& њ(X/l %B il`-)twŸf !Q m]qީ'p{)j w>_)_mP;8dZ .tqIU-hO-tPm?C$S`ؚD2"ɍ!FJWZrhK,0r&75D*AmY$:wT&҃yV9n:qHkUB{ўNՎ/1+i7P'5: ydJHGUS"H}Og`+i~;;s=-I 2qAd'=vjP{5UF,X6Q7y{"J‘>r{5bЎ]XLH5I~䨕VC6lx-j7t wB.6#dϖx^"HEH`P@.z0VɶI;|lq:H>'Vxr' TG#='z q6+ye #l 1t1Doӕ"l*%u(;ryx0|6ݦ Rɼvx GӉLTuʽ +#&]7lO2I  u߇JMWssa٠ʊC:7ul9-×GVX;:ȗBnR$СH@ôvэ$948+@\FR1mj>x.?ۺ {?/p{nņ3/|) %&Xا5+(KjzF.9YKC4#CNo9_ ߗ.1?`|9V٣\lNǥqŰ]P$=G^g9߅2i;Cҝjp4 .ukuH|,g2sX oMzpp¹^L;cG#t*wFe ։H-CA׆qE\;}7jxyUDž.m!NKpC8{´ክy./LR9;yqܐv&68!5fvCswAI,? .88K ˫І,lރ\H$*f 8TZJfE Z:2?AB/5]8{<룲Ak1r}Iv磾{{!eL+|˜(K.x1|wٷˇ q53voEm:(^~4]Ӡlh-0Q-0f7;Q7ij$QyY`?ƨ jzz"v\D;bf49k)g Є >g? C֫>Ƒַ*kw?:x54f"/ ܩleHmo3zׁQ2)$hqݦER٬s_LߖvPdȺBiJh{̼$vwۭCbU>k1iHe2!TDQNCEd8߂;̮Zq"rt{YM x[-$!+ 9iTX:6[U1s#K`nuȄY9]*A ٹGuAKjƦ:Tcm+AH o@?1T$? Eΰ@qǴ/["̢&(nrGV[5HI#*zv!N)`1BcN~/{0lh&bwsT݋>~)W΋~$Щ61 #SdBEq0&1|Xsn<-[n`dp{;9)V/ ;U elr#mS+I?37<`&T-I sUFY6ǎ3s$@s9HtPZ|۸Ň$wv#KWIR5/rNoq+mD6i, # |eԊG_{ &Y3b2Z=~\]̫ їƔ}u=ehzm~YUa C@CՒ7Oԥܰizjl}p jXөeb˾^:A O]дsz)#9N.C6Ud^$Idz•[st/[(bWt*{__0.-J?!g6pf4F}JT-Aanذ3@_5K1tF,O43U2Ӡ0>l%4 ZiM*Cm&m",Mm[7SHr)P*A%(($|8k ½}]:^r~+Q`#ߙOœR'Åmj\ʲLwdj!1oVmr:0Uj u{ec>LcOvhA0Ԫw%{ݙuÎjp]q6*mfcfb#3ʹpL!v# HRTiMv @C?,/Hg^ pf?%HVS|w S RԒp4H^S Y/t1Aoj]̸Zm89.;zڂCvu~z}YrxWu]'`*!~,@-e?`|5#X5W-a\ŪSl|Mu͍%dgp8-l5k]srsZNq͡&U!8j511'dY\!:W%vw_\IykmĤ]jőX` Ʈн‚![R<;:IDX=c\ 6'ǿ]"T!BsS4؛1_ŜSxTI=%d).lp<Ԏ9SpkF>;I ].O )vp ;b+TTgû=Y 7 <^XCҙI3=[~>?^͈pI@:q\Y`#q?UE/d.0nϢ͉)7(9VRXE;X8"D\k e$}3Cd +bbI. It,"7쌒M3_< gmǚB=8>挘#QLCq)2:Bm xhD `m󦩴;tx(+2h=Y \|Jˢ_'4|Pl#5,o4:[K>AYM \2t麛sCQ( _LԜS#+W&*\Ec3e>jy@W%ΠȔ[,s D͐x〈1./hHכc&a6,cN묞ūM&kj2!Tz)PF:S&fd U \[h,7ڪQN3K1cOwNƪszp $k"ۑO Et/E:BG*)_'U ,!DWM2#()0DǗ,PjdVr[taԟ{Kkz_pG<|l\;N9nmiοog~9rNjHﰒ<S*7F˃,1l<, !)b8ԋD#9>vrRO'2qrXY|g- GsGgЫ2-m@-Aa߲^s*~H:S\ aЬuB,| V.V9C`D|=;A+j|Wfjˉ p?/zm:򝏺nIqS}%Eۮv5Vٿk:h 쒲VkoIVxO = N)fv1sp[*5oǧ`wWt|o=3qfփ #B>]XU/<Dj6.0q?(XA0= VR$YcUT{7Eų@A)b?BB Ч_XDMȽNO+80SӪɄWt:#S.hmlM`jis܊0'=*\)ڲ">*Ԩ7yYMU@r80N,x;[ NAQY9cIidC\~9i.ҵ8o&T5uc ]lOS*?\,<..#1pS>TIxj]ZNm |S S(c6r}KGߒ՘P)Od.0Ƌ&UBg$W:o݋Gc@X^ۖ 5pK[c߲fuf x?Ξo?E {zi`@R]"p9C#!t$z!ApދUmoȩ ,0Q*,j^2B趃$<<ʌ+k}p+B2$1u?xLd,7@ZJG :j`ɤNMp9\Ѱ:E'i.= f=&>p9)KƜ%nJ]G|&2ЦƔM sBV0sNe>xNU@СwhmK,J{E8cd`Y.Ě5][cآF-tYI)}];CC d}%_5Էej漣jD@tpɹ f}0fhs\:&~0ژ]tU5G) LΗxjjb.хާDq&K%StGE|5*.*oa()TLI شO`V`dQNc:ƪW 2gM&q|굅$e[J" ixs啅l@ ]4G4* =iP4ZBgorf="i7R=?7pXEʖ'IX1J)E@S,sC)|xP[rO]eC4MH`~jbHyE!q2 ~35Cvٺ!]@Zϗ)n˲F@oQޘg[qV=WH0t-3$αp,&Ga_64:Ko) ,;V럈F{7$RՓDz1 :"Ч4k$.:#YNbD:4;g|Zv3AB@JP<Ɠx>`=X&qRJ?/uTY6l[(["W1h1%/וUYF[H ̫BYo[-e>gsqSmt@ wTƴ?Ƶ/Gޓ2od$QߪqiӨQ`$*j( 8Fb_ƜpKej2{ChɊC#Sz 9yZm7STي&aJĬ9woS/Yh27)Ԧf or b,NV+~iR H,8L`ÎݲiZ)`F04YXkqU݈nwՖ1~%9(m,#d(v꿿;{ I k(p4*w'{ge]mHP/ $uv᷸%ͮ9|e^l\+<.>l!I#Gzkg)Eh7Ip0~SB"lAO'44+C4f+xui4[ Fp17i86]TW~kǽ_[\`|ZQL]=F EVk"ykK Ǫ|jpw8d"hٔ'?^mln]N}2v+ 8J^˼{)JM*VUM4?߻$qlޮ:C/%p^hv_i/vxnNxfH &fH@tPT 8bqHF_SN/uw^㟉_K<`5QerYԼGԫP1"I)c7>7jnNΖIM-'JtP# F L.:r抃þDꭞCظcNq/Y5^2MaZom[xE- ܵ1*VbrBr"3qVjEwF#R| "W(@'2#h؀e? qGdm,''L~@')Z؊';"qy&f4hx2 o:Tm<Ÿe#wYs_RDH6Hʔρ0ա{3|kG x٪M#˒U/pgzz} ,UEve+>bGjpe.?T-O6n<`?Abgiäv"3k'iC9q!oo'`mg@+SeV8iNCN(.+ A8༟= ^23[J"m_N85u*.|3iP&K/k(;0@\tqc<ヴ ri47 / qz~ڛ]!גzd 3^QCZ5w]w*'mNݝ@%.Q60ixZW&܁PK'VSb,٨,_2h^zt$ ?#zׯ.(Nme =X}Pl)! GVʹp"BJjxck˶-}G# 򲻟cMe):ΑP_SnGK7߿s *hd( Z̵(& Lj[@Ix$zO4~jOX6 5翛hͬLa](l8XyX 9Q׸zU eOD*کTLVR~!i﵍,݀uh; S.O K#\{F8?Z.DxB F{їE83@m8D{ Q 2b4/%TC8Eu"7(yy%( Z<)̺,jmoVaWGDr}Sz), yPRF:z|thxޣ: yaL b7^>y,X6P6zu iԚnڏG.!Q;ws,V XY2'o]E lD֍#ŻDcLR. 1t`e=6]lUF)|Ve/,~ܷΚ,YʓXyg\^77{ꭀecYdvSNz!Q,:xr MseőͼONje\x= :ͷ|q3 ދuފ(IۏV7u|ƽF]93i0-/o(EuB-2=,}"UCPӟ*ؠ'{_ oۓ54KU,gˆ#NyQECc#yаL#uQ #Pq(\Y+*!WK.{1·}(Ayy۱,%% Bvz:HKtܦ:@_ =Qɚ=0LؒwY 88'`,jcRE;u}A1|ܜ7ZؖO<WZcg-j 4ڷM] 7eQ Z 9=!1Ϫ4rP=ocJ?ew!ou{g|;a`\{̠UhO|_h_Pjq,)6`E(l/zmN2!5YٲZ˩{EI2 OSF(Ys/Dv(1?C [u ZIkp7p󞔧Sjkru,bPKx$p\3[N*nJ)S.'}I t&8}P~)Dq5\.`y4췭Hchk )uH 8 `!le\7j$*@~tVPi -tS]z2e'JO;2V#.reȖoR[_m@+6+/)܇e qV/!{HFHIڣz%[iw^۬Ftr8jEBlzǬv4'uKĒrS# "*Gy㤫[e"A"p6"`G>gF9C: gLFu7MA XM0q@ o/BoQtYFmK31fs(Ū &̝nXYj'VhP=| z-oz>'ݶ Ys|~9mú?kbޣ0tYhZWHy _ά2bgGHEUzlaY`2 Zo8K۶omTmR: &(ŐKzBa4&dȻ6w[h>n#jNxtb4hT}TkvBv j@W2E?GwNMY[ Y5kw&1*tL *F!q > ΛBP0Ϊ] }bY Cfdsgg(Gd~tJ{e“E^ 06t1o=(/ϻX9 b.")/#ː{v,DK_%uKt2=ciZڴVaZ| t(V$q_W(7 *B[D D'* 4%j(=&+}mO4*C䎾ϓM[]oĀ {QU8Qzir cXmH| ֧BRE9ދ5".ꆓL,9h?tmށ.XRSlKKozU>]iyWC֒%'rE6ZЛ|*nNgM\m_KAaN\GOYL$msR-?XV7;E'ۅJ|RanfޥރL0KZ%RE[=po'hBe7"W͖> n:451~rh/ bUw7 n(F1oU=0>pPyQH ƎAzK3T_ETi9~}s g!.1=_ fêL b]r(zE֗d[ {­]`2k*S{N%Q9c<{Z锧ciG/-s.w"r OW0U됙kOt69nVOydQ7КFm6"?l& aOQS%R)o_Qh4@]FIXS%aj$o@ Ƭe2 XUc  V7u; tWC78ě&%%7'Z.2Wh?4s& gwɠ<%zFy]2/[.F tv@'S7|QfUytWr15xkT W5⠍bS߉})V?X`Z:b㴛N*M_}+~\s@DDjPhԧT_8'P%r@ jq:^SEohUd DC"H=E q~Qk\qL - 4pFDW/N OYx/m!1k*lGW4NK tvɁ$ w&?lzυ kZkt>ۯ;~N-\QugNGsE{_}<nTX\Dz5uN0 ".K<[lQ] {Lk;qȁlL p1A8L`կ|%Xܞ [%ha[\t {F5T y}reqoJ"nk9~odH r,(H. b~ hY4h@kMeDac.Z]LϪIתRȽ&\gBﹳz ~{꘭G;AS%ml~ޔ2DčubyVӗ͠O$ik oqsXň<1 Jh kmg[bc*b^p&3 Ƃd~jA| ;LnC7zz⹤5W=LӸ8xcS饢xn  iSKu~|a޹-HorD?Ո55q٥=ءw4ıR3Kei!| ! fynS1JhD>"$X Ћ}me_2_!h;~Xjdޤ'i :OXC[f2]=KD.k3er9|\o@vm*HBjaaC$jPf2N6uAl:Zh0xmgkdk0lFHOf+H5{Nc% 0\zI { ҦSe!ifXg{DCFH-nʡQc58aڶ%:E 5zXjB:tv4w.zk[W~;)`g~oOmE`GkESÕHSiVGDT_9#>QwIe`7&" BC@%vyR-N~ 9/. ;z"2L:dP%elVv"{o7c)DnNpȇІ|HxڎizIG.\t;)Cf`\ $˂h)鱁GBNIoI{hL QO|NQ̵tIZQ dL/-ziy(זf`#ˆGRS8+`v`޵@ߚecWj/(DaY;;hZL])Rb@JL/\}N7Ce[Lu-&|0=1;u־] D|x9;x1  ilJ o iw1OKUN1QIP^FNl>d^Gw"BD)Bh2,GJVW^FrIǰؐA<΍ V܁x4ّv|)BxW4r8ag6170:䦀v.͖*Jp!my9 u6,{Z(,Ҏp 8I&bUP( خ q} f6p-f2!w1M--!"."6}H,SsY ^=8 HUf3i" 'Yj~C!8dATx3] m-y GH){`B)g F˜.~D.*N, x?/P~;+'[ӖDFa~nXo}@[lt"'ҍvwrD6b&Y6ѢH.kI)) 8t@=YS(W}0a\/uZ]vIvWx|u:C(x0HD,r#PM Y, ҷ=}윢(Zd'|Zdaۦ_;-oMY>eY5}?=V4+yL=pdPR!ms'=I,TAhuXV*Ғ2Lyd}he EGd0gHJ.&@Fց,#E _jIarmy(aHDI)uֲ)_C+~0?nx%^'!jlq#vZ=և`މ>"aDJ3E)+ +6!^sd (0Ne&g 4fr Y%^ftku֎\[YD߹?UVLԽ8-\i.v; Fݙ}zxpbN7}G ~JlÄ͇|(<Ƶؤ@S&m6P`vg>5bH?>yb(&AK ͂K'"db%kd-j٫t50F9trHr|ExF͑HfGv:H $&ϣ>Ex7g+A hT0H섭'fJ'-Cj1mB [dei*Ch*] r9xp6Fm:͟D"e)bhU#;VA)A/;n\5^kYyDK[e*Ev0-)Ŧ/P$d̿I>F  FqY8(+qJȢHxZq{2WͤgpQB-[R@ R^D8h0_!ڶo]ک@[R0Xo:-1N+>O2á?E8';H_w}.*`U{M:A<$ھ9[6! X~[GV!tÿ˝"Ԉ5>lWMբȕkjx Ȋd"i\VaH/E;^ꁰ&O?<eku[EEjG 2<˴ܯm UU7XY1`F`2wpԔ , K&Fm}ҳ݁TIg'50| F ڶG(NL8ۖL>c#H!WҋJRԔxjP(cg خaZw\.iݍGOc;r16l1݊u`HG;Ӿ ^ 7OcAr{2˭\ ̧PhLc;ayit:y厼d~E:‡ӓO[VB+(HL _`HVInZ_Y@eu1t` %M4A* 8fQĉFU_]&Pt<{_ <-~VQDGO<^'/fAV~o< u2W*_7LBZ.\kME*EzٞR:{]#uEboZQx\J ]^kESf! $"J | ;oq$~zdV3`zXyu\"[ngd,ÚgA(ןI﷘q=M(SҜ ̲6wjʀ8Ʉ/B+rQ-qCz:ƹ4wO01Ow"0,~.Pt%nbe2+BfTKj@,[3 csf%ݡIx{+Q_Ѷp+yrz$'Çw8xc_t]({tU:E,p4HZџq1A2KY^vf-:B $LxT?P:&< .tٷ {*&~;Lm^njf<'q Z+(DQ[XX@7MKD-:4z P=̬1`@=uj^ M(^٥Uɐkn,45H.l6hJ3i/҅*[IM1YKr  3wq@[qlv :a]L|/7%}Q\_rZso!c\J nb:S 1<~3`Bnl. g<j-O }5I#,acdӇrmѡ}F*U5TN/+,#)ax {EKRP R?֙mrUZ4Q lO }ue%xT:vC"% uUNkjfUZ vXa\Ţh?GSk|]n^(ALT-MSihcOYyn!:  Wi]lcoAii!3Uq޷7R}"/3"I`0ʐRiw#*7~X%W&h>SEY%W2yRƧ x7!{>kZ\'Yq( foQZsh}Q *!~'WGUu+E #cSr"rq@GL2V!A^or_h+ !sjD6Lw _:yz= }1<ي&oiGJVj,3]n}ߛv5]6Q  o]( ,˵-n: o;@`tu&EROC5)Ư5N)iD@UhL]j {aU1v[-K/iuNCAEhEs'<^Qr&ۮh`5)e9F OʑuDp?:B{]9h*!T^{aGt>BVA02̮Ǐ{$O@qh;Si[7keeGAi{sJ dyԘ8ݕ;*5ʝW8.WC1]$+[:z7!EČ0g̍WQz+D뵶k,ohHjrWc6@* 7v!û @gm *FאWLCޏOn1շ/uTjGx)mPiqS89l uKITdaB[EDfxv" գ 4o 4t'ѽ%5qL~ "ݽN%mVas?% =%$S0r $6<}lL4a5Vkw+N})G(~ vҍ^F ﷁl2tEB?9M+gT.pS,I lj.yG_1Pi&2)J5r q3m]LT-;J܊z!_!)4[ϻp[X8t#[.U^p|E6'u7 ,QK"3^ ؊T|Ds|2Z|XM7gΖWUh6ph +Ox[%5 Kƅ_Xp 7RvpF4gN_ii6Wi"Q  LaZL*Pl4M F{[t71#۪DD_!v 40?8dKPʏ {u.}Y ͷY9\2^B!Z CZ83҃򑴗ޖ邸n-f]73UmY:(ɽ#7D( }EtP-[u՝GTv3;vsH" koZ}iR 1t#>IVh"m.gnl~z]i%wXs߾hNM*bofe io;]cS/%$eRT\s@#*(xڐcPK @mMZ+!&pPohf^\TvIQe fbRӚM3xjCI<_xd!±[(T;e]o3%:پ- ź+oBXX^oW5qsi7&uͱW4d`p"l*0d`Ek#nڐ-aMEk. scKGJ!/hgKbMMUi2I՞/p,\c1K1[ewr[}u>6F<MRYQɽuTO2(`3`%(8)JEwp+WAA#F\~@a=.s3:Fτ??C27Nuч|@vӢ〿& gL%k䐜V;)_W IzJ~ڈ|2%Q .L- uB 9lGq~]#g[}op ӊ__N>js^F>g>(|d٧ b lp@> =MfaΜ-qJ'R(SF0t1UgHszIُ|TӧLA@Hl"_CE;Ks0}-a n χ]ofݝ"x%Ox ?a=L;d>sXC&{+mDC+\pv FB&$ЛMC~#a.+P-o,o;j MvA>݅rf<)]@N `͑SilM ! u%E6FrztLQ\S jZ=%8Nny YjD7Ml M`arR5 Q@ 9(؊Nףtr$&S /)" ,o *ZS6̀5;mh*S?}H4bN8h*ls{: Abd+\bYg]90'\]DZllXU[)e@Z%X>oWV95-#Eb䵋-t]';Y@ !69𸼊ZlHʃv#MH`uԐ K \&JZ}ntnE5Bvjz`2&HUn 55m6wz#X .o5Nk8#,>Q 2?%qJ5 [ d1x_p10|o3sp~c#p,ٰ4LKqB<.my?Q &Dt3j{ g?*,y]3W 糼=m7n$ڜ5qm l>_5oH~,޸OiolRg4Q Ý?lq^;AoԌunHjWx}ْ@">2j@(DdTlVDңr#oui60{S6}AsMELS [E8^vbgn/Tڧ.Y!D6;`{#:Nֶp QM#ްn}k-|]Osq Bi~]v(e{a(B2RVU" @i1:BL\lIGiNl> Xe{ט|T4 Hgk⃢>@IUۄtkղzҦq^GSwNN+ Bv1^qi;j&Px`Xrɏ&*q3~cU<"r>:*uZ.ɚCfNThgpyޟ "ZJ¼Y,֨6Cʹ $,47q Ħs .vk"'&0嬿 /ͻ"PmD:^ZVVOUS!8fʚ E$s9G##04ZAz(="X_btzt A1m[bg9+.2Dׯᐑ_=*ơv8#bBPle=iNK1ێOlKG|xd}1vJ-Ta}R[A`я+5m0; `6 QTWF5H̀zͿ^BHkK\VtyJҍN\V5rzXC$. {lkԚ.UN %g#6 ĂL˭ 7V۠C3D)(k!"wdm֤L|S*&J>*i+by@T3[aB;ϚqSZƙrJj |]^~8kLrfF4 TԳD<7ՓĆΪ;N?p]C <0 Nc׫!e+lsG EiEg'f C:ŕ[o^JU+R>%8IaW-xDhGwoDרYnW:~J`ܪChZZtDWhȜ8ܱOeGm_!Gl婂Џ̥6?{_zN\0r&㨶.&W׿OtCY#IYB3@CGIbQi0B*>]"h:?Yb5̛," ;(dr׷ݝqO! 2"3w„l"ü(@%eqpXݴbAdTD щDUXkq&YA6[( 3s:-9fHJUmylL~ ^9 W6pC| UcuXT]Z@آ6U&{q fTK$KVb"eA]6A̸~5TESa'-xri^G=ن\b "=% h#cpd=*V0ƪ[p][4- þ~v tEJ#UBd,uuxЏK\4aqC<54J ,j`a-ꑬJN(҉fީy D^Y\`$k$ǎ'AϹ_NgC YDKFI^΄>mfXʄ*lk ?X}2%l5{ty8=&vzY?9u3\(`MLs|:74h٥e/Q,yO^sn{̋;} T遌cF06gR(✆8V"bZMSa.1` 1ioN=WOΜ'^h2}\xe6v BN} .jJ'86:"@оDd9BJ F+}+^Lםe1ͫQD4?#g-

    ߹s=jCl!fܓdUfEHX)~쀃M݅.F-FJ1hwX-ZO[3ʺ3sជfv"%ڷ=֌}ÏwO"{fj%M-جYu,qb[X/W/8| qAG@i'_EeܸlENɁ6X%SlG0s6j1-yFOHroelσGv|փ3Z w3IJ`72} Կ#_<9 ܗmo V1PmcZ^b|tψi2'eJKw0̲̆nL͐vAQL _Ӭ, W]7Ix^Oo^0U4?`W"ٛ+&Mpn(ZD*Fk_15v[y"BO)H7_6"m*AQ Hf8<5zDeb$jv-V\xYAx5 I Αې!BLbxGtU+ro?u2L')js9;5ӤxuW7tg)$}q2ReJ԰n7b|Q:Hx%>=n{WקpƋk"B~- O L׮vyT"d&ɫB`|ˣ;q+~TciF"㇋HEXiX@ׯf'Jj  -cO?\70⿔o$>$W |IeiƯ۝ja oZ.vs7b1ӻ@g-tS\a$r_NWZ%HOBnśv)u?9B+d9nW(NzS#dر ܇نɂQFL+FSGcq6?Px~+F=qA7`XC컽 .v7Ŋt{HeT&WqW4>Z{~nl͠k7٩Ў7=kT?+I[`#,5OjC zn6yu^]CP|9 c#9p n6*+;@4?v4tI|5=IUr[n-?߈2Ѡ\l/T[nz4ZU3"7yԬam-gdTB4V7_*ONkWb \O/c0X#kG?m"Ga"zVѠDb]r o tG^b47$fk]K ؆3ƀAFаt죄[icӿV$r[f JdH,:o߰<#?)hN&;1M&["c+HpQ#XdDQKFw?nq=c2G3b&X8qYTg .Ȱr :+G$_@)C }hl~1D;_ o!]?gT%%"++AbU[a"k{=V:t,%pSG{I,2 [+:wJei% 6q^zֹij"$~߸P&Gq!2m&5BRw^񃫇M_tl)ANFT2|h̜9J܉]#JK4.=rl~wuHVʳp@FPir"ғ\ZT<"&  3t..%P]bJu{+Q*͘hgz§|&So4·T`0F;eUA<冥#mp))ȘXfIt{Dp#e? R[+-wll\DO_RB7S8.~Eؠ H3(}0N05Iʉ}h(o^[ȕ dM#g%d#>"dԇxR6 <)&{H,U'JTC&_; ȶk%ښ{)d{YF08#rP#}S0ٽ~DQ/`ZenV3ngyziﲼG&s0|ylI%LWJ<\v7XA6pֆ5L6)iu\gmV (Տ5\t3Hz2L=WQ_S1iA)[ww I3-G@o{!c& +56 ~K.;_%OH- ^P?VDmfmJuѺKT$1уTJ&Vk޳w`cGҔ6a]q\P6Uv;CD-5h$ H[ʃ壭MazȖt:fnOknY{暈:&_aS,C)$FݡF `v-56w5e,*l#aEp1")Pn,z^v-X!x墤^0+f.W.]&p+n{u$3;zsB9LaRk'?42P" 3#`(l<:zC%߉mkEjdUp)~YuZOQ^l05^ i">|mvZ& [j\Jk+̮ޑMb۔Bx[3O} pmp>%ivW~Sϥ|KmLI-r;$bd4/N"Ratl\q93R!@<*$8ؕ6"Ӱ\Rr~:Ƿ3P ΤU]^@xz5Hy'΢Xx bk(<'dyHUjhtn`le;?7 1EHpwZ6:)Bάi}꽭*6IU!ʄf|<Z2G2PKo4Q?Ul7շ&>*WT(ޘ<%Z0Mۭv6кE4P*4L4&bfS=SDXJ`tWwj; l'8ǰM}ˡi!S=~ "G{3C4A=W|&]s/H|NWh7JZgo)[^'\_m1ڒk uWI6|ܻR{2)Ҫun`} b=x[(3 ^{Od_նH0 ~6ߌyxqvRvӁiRHT}[ [T Dz`GoTJ֋*hg8%9>SXa)S[Q.:NJWi6tҨɺ ?}vǨ+[>m Y@ӓo뉃CM}x>; 2T;x&ҼI(qRT.#bt '$x}BXiE%z94l7 JW5n) 8 ^o6<+afVM;AtmWF]l![?`ӾY-7PbbYAb W+l#NY3 l5 [%O/r|> 9Kr`Bo(ˑQf(UdT0dyZg7h&zL{X̖|S~*~|+0x(<\~rn3TQz5֤^%k" Nk. 1tФNZmiM4"cT7w~Es5 d93IPvV'sN TSC#,Ӷ _=( AbofWBTJz9%Rj |&4RZ>nzQoIżc41C;+Y9P@$ wPP";x߀qRQخiU35CKW (͵k9G {1x"e;~=dᤢDr&C\%#S:"5*E($exn|U\:n0 ;cލfgoItb5aKP@wpRL̏k Z!VbPƋ[jKl(/oej-u_/^f/WGz؃i4!2EC5bI(JÇIU܀?.nl\>]0l5Wji0Epi)u[R/fD]]tk&[r13Y+ >Stxt sӣAƗ=4YݿNvXi`R eoWJZ{;O?kMqȃM~}(Q{[Y[Mh!t8F!WsAND/&T] iu| 8s]ېP]&Ԓ/cBjݪڡ `O'Kk^%m\0T0ܮ.0*6N{ >=C9;s5cvDF NڗO42=sǵ2/ CiIk\v>վ0=^0_*F7"'-Ky-=׷%_OJ8Z:}mb#W_EȘޓ}|%WS~ʁf;.߂ KڦΊ8@ ğ} o/(C*0 AۓYyˆ:"f^~V7@fUZN&\Hq.2FjF3%eڊݽ78nk7eod=IF)p% !=כrPvk/Mw(kM4&qJH{M}]uեMJӜS{t^r^ʞX8QG/9or͛p%c_($/+7w@NVhZAz;"0Kg?K"l>hM?b * 5vT˾0gUK'÷"_13&r/ •XaQ8Yhtal~o] A4Il9z5T‘ᴠ@ivYCJ[uSϾ֊r1r#W^,29=NA4ч%6I$JVQU'p,9ɠ6}Ίkʨ/#AW `Y`|!ُF' 0|FWܻ-QWRU/  Ԣm ָ1gL` χ _}uzY0.QG3='%{ÃF l]aÍEM %_BFkRۂŃ"6Fp-N-]fE 1q@G"Lݣ\-&EZ3( _klتb\-aE1)"dp@x.y%`IFGԅwms~53%<n]E;Yѓw㏃DPba|G`n+kzsDM*,0GRE`сVr[C]T+< P\ӗ5fq-D4h\j<(8@d) WlSتؒpUh#sY;n=bs %Ga/)|+fF\{ 6m?3ؚ;Cq:2>تաD!v1FyR@JQ/ |#1.:_ A9EnN,fk3@Ap}5菝yzInr.9|ϯQXLJd6}0eNww.x b|(VvT[ƱX)\D%&FY睩عmOEv.]Ÿ\9ÇcN;E*BŨޓngay!}|= pJUk ;9\\rq{@g x~qRUk*%5k%krzŸ? pV xRps(߶S_PȑYe&٘e(?Ϣ5M;͓W(Wi*ax 6gbBReVgbŶNt$}+P_|crgVǿ$w≗T a  ѳ*N˃v w%r@]R`:c_3Ssf+ZӦ*_S#~;rBj ۴pR;w0<ٻ]_xz҈dr6Lf/ZJ)kp,|]<|TE Ҩ6 ADsρX%PN1~2uQMDIZxrPE*O8yō[Si#ZҐ0#ߦ|t8TZMˬWxPڨt0u4{o' \qovpлnOd:pn!vG'(v+]X8}Cc̀OOzK !;\m;W+I]º!clDwrj_2®)`r'%Ln[kdw6/u]y||\pqk& Cn $s!w1}G_Yp+$QWw?3;bL.#?o&\IZ ~}Q8e4T-*t6$e+ ~ln΍^!A+ȟ5%&ߥ#x 4})`+;C>U> v- Le> EyRqVxaELdi |`QG eнh\/ dhSLs/y15,nDIK>~U6 )S%g]MDChN˵7=!63>a1Ø?/Π4٠ڀ;'  ~-,ش=Ņ%Yg{ eX {~0bo-r9-c W,J qǴys琂KTWЗHOi7.ro[v]A7YRhջ:v X(WEcÿ84l Oߨ- '6lOiDְDz䉬P vg1or(ww t-%xDxn5Ks*RqOݮXٿ+3H$] FO\x/皮o `iuZ&pAUc{2k!ۻ59l$+30 CR1$8W7>/ _)ZqK֫*QbMM?Egbq X#iȝ\*Y:Z\ 7޳ԝ&yĒ(6 %fp[)ӛ8M^/ W=`y:"\=Ѷ_L|péw!GIrY s \lKZ=UdDAU4QqclãiCx_+FY3RJPI2=x,Ҥ]7 ǩD>j<6m8Ō Ns/o"ౄlϮ;ĉv}bB*z2񲛓*JLA* WcY&Zw)1TnD{D.Q(fz'}]+Sb—zX+s~^'W's<9aR T$>1XtX"aӱ 5@ϑwRp]Jߏj%t=OyTuFSEwOчSzq0@ҙd9 |%/pކ0BSln;qY\)4*w~SN0\XbcPz_y JJcnObie)6*0O`bֿSo JK"C^H-iЅxiv+Wjˬ1\@`5.~\T%/%F|x>v4 ڄ(e m[1le۸,YǝEAnŁ9C*~w qvFG~q{SsŲJj΀Փ$^}DB;N !iGVۢ7MT9/j;E)4̓AD!n08)Ư73 ],6͆2̗HWU8jt*8X ڡYZ |BZOw36c Y`m}uymd{a'0ȱ(τFـco_=\llaxPZyK5 ^HY#?( p[1xך|K Z4ast$P(ip召ի4׵\2]]J&ďd;2?KeLP( Z!*ď.ol{GiS*cSdcPҒ PxV ׶* һRzs LJya ]`IL *ʢ3U+GKQz4?x~Q}mg+f?wՐFj+C0zeU 8:1 d"zyɨ$c>QZ6TBѫ5[\^6l GVѻ!Gw6:;!(Y5;\}Q*LJUG4 *{J^O$4bmC=?|a|DJk$Phc~۫\|7NՠI6{o=GJ"aX"ˊ_,i&UzOu)+桼*\/vSL<ƒ:EzjQρK()Lp06)M,T[sn`a'z$9Ox\zgT(D/⾁͠D?UPTnl==M{'wF}IڪS$@\Ss@)vK멸DC`ݔ#N6 4ٝFz{Xk@{ǣ?tO]ωZ6_u/L'`(k7D:ho:er>}75wQӏUk@Det 6!Ѫ"^m׾VF:JI$7G]xC2:k'1(c5tnl㔔(FNnVLR_[}GB++ H՝ik\{h"F2!m;%[KҍO!Q2vSySzTLn4(-må8["^ 8'CQ$ fqׅShT (`滧?7|@L"$Ll&> b[3lػ̟ ahSxS(̿NÑ`Jɜ4Gnn+O< ~9p؛jRZ|9d™Rq1f^w%WO>5iTMA/D8:diOA |h =Q{uYȤme (' 1əen-E\a74_Q>( iNBˠ@ ;FtZr3DJXgJ_fIԩE v/sRaPN~>+L{.&2?&]Xm+zmxZ;ـ -wc&{ԆCz!`%sê8Ī~aԙ|%DZ_ά_^ y ce_ gNpd )2Go Nhq+-4D6-7 !%80+ /CEo|alo)ps׷/8SLr/ PyfW8Nt1tI9PIhݭUd_{'T(q`UO)v9ND7Oŋ!`Ui,>h m5&ӠDi|T4f}}X$T;J׶ljk^З7}T8f%F"n%L֦ĹhG1, (%gS>U}lڐxw5 E}$zk3\v>0uUlfڈ$u>:VIq?`|%{ K" >uJg?!D;)k6dWC;\O%P;<?yq7VG^?EM1C)QnVVnPe{̛9@㓠hpNTC/vT܅":I,B/!s?j~J6=%#떟%-w㴤`B <+=G?zUwcd(zԭŨh&;iHᩈ- S5\VG㨕`mz 2EHbgހ㦕Q$nh! *6L]>XZhgT`vK42*< Z8z:uhnxUږ$ Y&")?W6+LگLcpBzm35O:LUU!$$f­{ ? D4!i#pa޽~IwUkE{ mnixO56d ՅUJ'Tcǣ$K%mu{w%L3t':ϙ4?M!pk+GX>ҡ!hc12p{$ Blb{d ϿX0bNŎYBu}v6&]oTK =Y6Fާ;rpNU϶%,ʃUAO$W `ё^={Hq'NlUTSe$m0カ94ZFUKF&5'Fmteo0Jlƙp%9UZBHh_I"Y#+TW J X q4$},WeswI!p'8~gF @~ >ɓWNkNmGX";r<|\!{nat-|fΧF6eF2Qv*' Ry Diw9Pd,ˁIrG yl,@{1ȶwZ RPb4|-4j9FHW +6E#HMǩ46C1\pFx֥ε YMBxwtL)CLL В ߌ|CEd}? arR|>RяEZ[)Eq2R\KN\WG}h6WԕMPWtlLWYS}bPXۆGT!;}% TݡjKn 402Oq>X+`Js ȎZ>CL<+sǨQp0}dNf"{z@į瀭e)uGrz]{Ҍkk0TV:-pN/d:.Q`p[XwZ&~C皻 앸Dmp%KlVCD?3Օ"W +53ǛU94NFZ#nmR'gf8' !}ΡX$Wn؋BA+vxDg˜?H wne2f䌘'P'aGB\ ,mɆ=M4? 6r~GyVÕzg5 KP1 5ԍ֊d_>4F [Za}8&'qa\ iA K0< =V?Ϋr }+Vej ?EA$pΔ Ggz5,n/))n =A& *t^796Z}sG#L K )FK:g,Yux"H o9TڰWOA|*/dy=y(gI)zm qB7t7ɻI QW(OvB`02%y`^O]GE%d ,!(c摅)̦窑|(GD(բo܈ A/T Jg *i<DvGĉwPe{UE=qxl'*A:CzNR:cC]Zley,Y#ҩ޸5^9%AVW3`]qR:@t ύq3fN:G0,`nj[m7e#;P+8m Bh p] h£"?ǣRHMUtrHfع^]Vt ץ &~PFrg:q|K (xt,jLJ->)늗ڎ|1UPPO=z94fTzC ]ooc5f٩ʳ7B+x\sp'\49Q}wU#Ubİ! S#=C~S.r~r-HP9X淈a3ãWS(%p%ųp`k5/pgS$LYDP9{*~TN%ND{_0XO9σ:O.x֍ uTLpeE 3'X[OYW{7U*!2 C_6 9kmZywlW"qRŻYets_,s-.r쵖_o B`b 1jh{utC;pj!B- >3{+}5Y6I\nV*g0wOhtHά[kmgDXU<ֲQE)y6Q J%5BW`k r(d_-wIHV\k@cU9x`U{X翺 ĹinHd*8T M7p Lp%WA@ib%pwz~^'f/g_Jl/>=2cѡpt7}"3+`n׽oԶs˪<{8,n[9, fe`DJ^e>QqUjan}Co7DಏZZj1[Oq, Ut8n/YN\G<e;בU]y;gfG.)LĄ<3`5zHY-*?R65x deJ捷]"&2\!r]wyO5xTil|'*PO}dZ<ѐ3 {HHƋ02ۈhshH1`3 7=B)GٲJDuep ή}$C +wENb9.0=~?\wt? Xem_llcrG{|yfI Ct"zbDӁ U˛ortñY=\g F=>d*򪗿Ґ;UQ0BQn'؄6rlĈE@%U}rh`Z/>\Ko:}wp?s9&>o?Ōd=_u QiL)M} '`)U&Lɞߌgv..!#"Id~p$ WaP]s.R_Bk 9 " #f-)4ȝ LXBJp9rhRI=DS*x;.#V*lʖxӪ;/2~o?@;ye=7` .)'H /HJ}$cJ'@iI0?$!Ib,hE[{wqm/T2s?60e d2@1TMU0P)NG-'iY6Dgy)/AIU0ڶq& Z V(Qsߠo^YƨϨ.[Y]/ t\%4t+d?& ҞYk O gO͑E 罞mqC 0rM69sk"(%7z9P}Q%e+Hg|z-B=ݽ^ܕ\_E:RLl`)L@UnW_>hQuX}]"~o`^nޗrkKz@thH [_̊0UMAEN3*%PWGGOrIb4=t%F&wr. V Q)(Z^z}PKV 95 9d30D:cɦΨ5+YAjDpwf18l#_\C(cbDvPGЫį>6Mz!E;{'.ff%2O #'`E RE'9ݟ] KIY&&^^x?mDvpL{A =3ZoHu)Wi}ˮco0L:Qju^W$,T6VbKUT<`o_"g=̄uFlґ2=隱ZVMĐY¿<X-qmm[<ggH ~gIgMb0A˕_a$bQW# lOќ 1J P6?ڜ]?c)3崳5ݮRk?1}KRcmX 9 r=ֶcQ >* 3=iD9`mޡppC'z5|4t,4/&Em9_}ɖjR{A9'\f-Κ1j! ,jz=w@im'ۛv^c{:Y)we9 xKs{0"*I4尡4b @C5Utd#t1*57Jx\w&X2 HL^6"WqrX/#2ղ(^OB8Cbpvq}qBo}vMK \6?ygqR>#\ yr 9w>ٓ&?1*#Kd i2sjpN Lk67%#2?RkW@Fds(rY jFwS06hINt&t\4V˷MufWɺ%r) $;м5>&7!}ڼ|jqzށ@S-C?2y-SB&$:_"XvQjMLs/ Ϲ{)o-aͳM,ѮkPΉ Ma(vPùޣHd'CSɩ0tջhYYu.eو~i5^tD3-wݮ|?iN'?{2 5Ȳ=\cbߊQ:jS̬| uq6OMN5zl&/1-{z3'%.آsi™k'I)cL/uݑZ)\1γMdV=fdKCLVyB)Jn54+MCCv%^J2ܫynY q=DW`6 ?.GDގ8:` a֜mxـq|E; Y ~i-F ,DS;LEN9UK߄9eIA|yxt4T倽at Gd*$YxJd0 ّ|"Kɞ^TxُIxeQEW"?06ԄZ<48YŸHӝ-:IG'9DujʞO움<E7'F^}겴RkTfS l{d/'ֶ_Έ sPX*ShZl6VnX.+jef ܝ 0+ Z6155%IFK&2FI.?Bћ[3] v\2H[N4Ӫخ׬0"hXpTA.,zvGjdBp.S76Bd޴{op!gbO#sc.jR؅Lu~ǖ' ]d'C?(&'aRЬ:a\T{9%1-c"MjD@E8BCwmH}j",ғn UfZub MQcQq-[i 9hb-vMe_ug3yj=wwl ԓVP?066s#'٫;|L+En m{{B#iBTon;Ԃo'z%dG6!PLFOz6dTdM9E>g&DY M*{,{QwΛ_FrG͊ъ !4gTz2nΐ~|U{:}K"0 MoQ@ĭ)$*օ0?_p/@36L*{IAO<{kڟ߬Kз_Ŵo![obJ1]``A3q9˂8ˍRrJ28^Iƙ8"BLlD{D\^%?tn\>ړO֫Zn_\PKUYS&d꼱JWeS.KȩMPj)+/%f r7?bF,eW;+}7hυ7=9j}( Nz%lƩhEL0JV?wie4nh19ױ=A(ݞIN:'CπsB^V;,.bn1Tjٳ{hW_W匡Yje.!qK2aچ2WTAŠM|J MbN5W#~lHԆa\eu!1`9s509:=4EIZ%`-&AY|DɤG\ZqP|)m#܉Lg@_,R;(պ bId@dSb!LniƎ #j-}e&#P-{xytYddh2b/QCH:թSg\'Ξȹ~,)aD'%|L((!@~cH$’l1 ?bckECCig iMȀe8}_.sJU3Sbƿu usckYoGG YmLT*IŧDijMVeB'I^Cz`Drqθ*5L*"_ 9z|!ɘz謏E侶P堐H1)DfqvomBy c1VO ߃c@W5}+CF<_Э~ZYa [@3ڍK9fgцY-╗UlG = yԅSC0+ Y4ZZ's!4.l:ǯJbI3Vo.吢 EBq皼#gt_'8xӎXeVA>߾fz<@cͻڒ/=ï{·ϔիg Jv}􂨰L[e^BQ)}J66RfLMhљkzT>n#֪A+uKGqAP3CQٰZ7 +W%Ԋ8 aZpbաΌCԠC\kcs 1(okvv"|Q98-ep1Y ̙_n.shСs |ו="+|6|]˜s,1)iPsB(v,mg9TB`҅96 \өSZ!P]TnWXkǢyzNѹz4 Gu !}?n=c e>]_͊q,"4G 9O 2 3vk|v Xj1\"|=gGgWCys5€l]L1|`6\ΐ uX=ezL\Iy7*}ôOS[-X;`;+7X/R!$>Ud0@UU,15-+w1EWG \y~vhg=c3\ JFCκp*3D˻JN޵H{ 'pZ Ͳݏ1 +sDh7T|`9)WGG Wmuj~l OijpOL&l?8R•rEz { 43: [jP!m5ӷ kIw搖eQ-9HσQ1G|]|{Y4p`;oQ`'N[`ñ<) PniicNQQr`F۹ $fFt{i?rmnk:?G !'X;)Kg ?QY(V[˫lҬG X/\Qܶ\ ݱsai B̈́A){QW{'/C`:\E.ӖH~zۍCxMͰݦ0QeH`QTTWvDf|@>Z.| ~63N{M5ƞ݄,ܖg*bK{f* 0#nb 1aNY:[fhddhd&L(Fkzj3ҥVKR='iE&妋T|7;kԻWbvWqOP\FV̌lđ N.yڙyqO/N J q XZJM}N| lu*V>18_}&_ENrJ6r_`b@"`oi\+ruDR,kf !cCXaR07r?ONrhixde;Kuj%M\7B*?w(=Jm-f#cV䆫ʿm~}b˛ "z! ѰzE; [1I͐{_6N3OM'xrjZ!E]iqEK&aKyg|+]iK+9YQ6ށ9bJZ(@C 1kW^"rm9H/[ͫqKy64 bs+G~6ɰCZkI{v`(x'KN]B?_/*ϋ[yNIg*}=,cvx=MVX*>'$<b|}41K,JČ1ɝ;GSq =8sdU*L8A\ T0ۜ/i .[aR'lJiSw7A9@Tˣ#s5z 7ȶ%oD4.{r3`QMybSɨ|C8Ǒutcn9K)qPTx~#O9=6ynݘv|K -d?u)VpA7ڃDSY(R]32{S`/W,T[U=ȤR؍$US;WA=،Vjne?}APftP0{*NcֆDsU[@t8nU,HYWY)L )Op%~ t%)AC;fx$Nr24=9P p aFmrоhsc]=N>a|㿾KM6 ^*8 IKanPWNӬ+0d g^.̕Sm 3K j߯<"W\V|\h=0~O_ p'`UQ]`=,(B|_Θw>Aۢ8u(d1}ɮ`Y0f| B|GI">00@n&_m ZzV`|.{qpV鸽ld ijXQu *R{+P5 S5ZE{/0g/rTЁ NupI(i>!aGjRޞm2ڶ @k17U[;8JܩZlQ&km-,$qImٓ@/m!^jGVC~ )lj^{!v8$0:5+LsBzrda^W 7㦨pTZGC>A27Dc9csz?禤Zg0=P,HRd.p3ԱuaEtgN}0lk>~`Lz)>$;+@@ZH vRTj<(bl"kyrCOUpcTL5V2C >6*c xo@55JFP "R)%pdrnmwEsM˛y"^5Xmny.K(gFLKԂ͆}_FJcsgE)p3'L36Ʌ@>G7җ-,orIW&]Y8VlJߦlk-w!(j8P"Ln>EAҧ4|/˘;VǽT3N'A_MV7uñ!zdrd0l⤛ #nRU^ɖp>ss8-r.`!z['6ye>q 2z]w@ .u}63 5Xΰ ўJv؍Rѡ@'n$, ݌`T9Rr2/s!S'<-{TjP݄kh׮K^%XKRa)s\ƩXz ,Bjnhc;{<|j*b :ꞔ@ISqNIsVtի3{*fLԎꥡɯ|=tc1yIk*Wc5. ٨mܿj~>ja,Zl72w{{ĸQ輡d]3nXdd sGԢޔj͛UC$lSi1oAih+'f{Mivv}Ψg,A~](pǕ梒O 'D:O2K6)sUמt0s͈5C Ւ}Y;kso_ViY3C"H\WRRxs $8It4~6cZkqEWɫ(Ri}&`M'>3|}GǛe"#kB`v*x.9I!ؠM/9۔Bʅ(jV@7I{W|Xr@ǥ9m\W×tI r 9n7/kĘ0tq㗂dT!2YT=(E\ड 3 (0pg@[Hdr5٥!1G Y;0)fo ]Qaayv&(.2 IGJ!8R"y}|6O:h2zҧUhIzsxx'RͰtyp.OP&yJ!{nK,cWJe,1>B\;m^Wq@R bR.04sð;Sbv64&t jQ~J)5 I}x›_(U}.{Bfa˛s֌rLj}`Fs0LV-v?{8TL\8[q8ɚ-$rZq%_­TẒ, K&(O"΄XUK(0:ILaӨקYթ*>TpTcQbV]KQae-Mn`BE+(Z'"´Iݓ[(mEȬ >0q{z\V;aS޸0ƠO n5$8TP /DNui4!pNT+B~|]8dNJae—śXw";{䏮q['uU#^CN$/­j)>5 }HNަzFm~vDZ ƺPjlZep͹dk)I $* =K6! 0p ?qF%‚RqWW#_Q bYi )2z u!v_gz݈]eRN#:+fE_1oɮ|rߦ|VD=]ι6^K{$E= OTێR /V|cضk2Zz|QUsQ̻wwd}bEт|hʿ|c݀-viԅ>;\_Xu VrtFr?hq'AS$preZvë5CVQBUCJ^Cw%Nҿ3%oqQzgHˆR,t2p8N(}O$L q8W8-;1 wM[#bIu%e]+Ф3]}-G :$ U+q_՗Eb!V,>S(ͤsakRZo;%N6֡ qyXsliʇ)hswB\HpoX{ҲTVAZHBj՜|C&W[ |X,"(c9y@!e+lh35.g kUt}+@]O!%Vq@ 3D֚YњG~?2tVmaƆh =A7caj.$وoT`);67kct xT9 Թ62Q _ӓvXbJQ?d80]u~ A^@W{7Daީ&%%5rC/Ogv R}쿠z9_':a_rEl <9m66{ӮQhd@ejl5 E ac?.\(L6gT?3*MWՙL =_^`|Y,&$_α~Kz1VT$p{[[ap@h}a'omm6S4Yc1j?@hMɀpr,wbba7fHwxw6Tꉵe5uc# 1zj8P\O)Tiܢ}PWwl 0 yW0|u0 1@0j[b+xoan˦{ 2 /NG%- /_+7-C4B%_q" vTR pyYw{oM,3N_"E[ƪf8`ׯpmb٢" ic5gF cm胧|0)?: h$SI)Pe^4 ngS˭t;;HkFzc,=gxC0!Ge=@"fv UJwf~8V x 0 .8aUlOI/Mj֎nfZ§\y&{P0l #(}ۧKѷ>JCp&'٥ti \x x̻:h"JP3Pe.>.ŠF Yh)n, qk3E%pQz+?8jp-!pyW%|̺$TV !2ӄq97 Ubaass(Ii`I((]绔"/DN@sl V۷_T+G(2<=̺:x\d(t<\mV(#3'ٗ{|2d/NBD]mORb~O ]폍hfV#uDy-xT܎;"WvA?6fؙEPv4S/K;Uj-`1u`5d.|chz"NR2beF/9gd<˥260ߑ-BӍF{sg%B. ;siP:4 瑕U'q+ūk!Xawp!տj&w;f6ҽc+Cu7I|Ha{LֶuuHbXv֓9sw5R̄H9) =zECh?q[>Y0"KcBD0PXun\TI.Rn>1"éCB-Jvt5'|:niN_.[2޽(gЫHVSD'7 ~lR–ݴ0(8Y3zn¡Mkb*4& |t]ӵm7OkMH(P%翈&: D;|˲K=VB.ᛯxFZ> "ڞ-g2BLEl'%lwvuW.E,M]LXVY) zּi >Qa̦hUKK.'Y_o~eR,ʃ3Tj?8YJ܏\mzďkO~tˎ+~OlM'dm&=o{c2<ݞLqkJir6`M[bL_PD|%N\.HgqxcғRI<'X>dF6Nؤ¹1V Enk-&skqƒ=i9t,Qj)&ųm*nUžI&tBm@TjGA֤G2MŨC 8Y~o[u굤&]jsO ]:䦦˽)Enn<̞،DZ^6-lPi7J^̵Τo`΂wЌj~9PI[fDh H̉!>%kj]RG{vX.0b9E:2|b0諌s 6Dkc֘gF hv/CA  ߬a9kMc0t!٧D*gu UQoc~*S!h\fITh>ިS =?̔P1XYgNH(N|+ONfp%$!bk{DiMjLIY+6Q!:{ tȊY|羲J.*@8j-^ m/6 Vb{#߯E `y5n [ڌGd>Kp$p(3*\~0ݨ[ryΓr;Z`@Z$Qw]v3D;XqQmaGYBEh#C6NZbThnPv _n'`#z>Q+ilΤeHR&@R5Ӭ ^Lrh"Ǟ[N&Α1z;u4'Qk)LpOo0 GYg¿Nq+h(h_ v(WA`x[56jJ{2L##/(TcM瘇[Y~|XoZtﱒ0/|Y^)VFSY7r/i`x} gPGJ>kh3jgN Jh!|J[gJ\d)>YOLy&90YoV#iAH~ɩS$GJɞ'XU77\|?/LD@G= >?^~U5<fā xvzM_ʊ am>qj>xplRi4=F-k"IrYg$hRtp:fKۮo{VQ ]R ĞUQzb_dAG1d"q:>Em?_Spm /Dʞ e/}p)ąa?ISl]%:VYgsw]\'qqT!u&91w= ܺV XrV*8)0+Q?)W|ݢuW>w1 iUke#kYϥ.[A1S;?h@UbY5>9ݵ:ӳ>v̀)7mE&5FmDz~] O7nnCN#-~eʜ:|uedΠ)mg☨Z4hdZx0Az%){egu=f;–2qYYPI|G`"tsRYLW[eIp;^Ca㎾4/iӠ=x]XX/#ʽN 8Σ<4vQm:"'!PgU6rшgYj\D*ʢ˄*[OT/OU4n_^EޯMSc}VL2BŻC>¦74X(Ho[wN׊;L#ΈVC8:~^qSu&OH me}ޫ_6XS)?To _ÔhV,y T;HXP5n)gPCVJ*sNwt)Zio24qϺX9o0 Y#NIXI*IjiL1f>LٙiG1kC_{8_Y}|?=y"aߒщ6uҎ|ֳvJ`50bxpc-(ѡj^Ig'8 F6D. R$fY[H` )<(wW":A g~6ni4 TLYd<G~!Jf9OHz {rҎ-bʹliMI ѽxP|u+?ׂP^LUKh_ 6Kb\(ufX%&G8[Ջ!7dҕ45q|x @w%a/ a;Q_Oc"z|~ v#> vrm3rTPI~ҡy L[6G-ה.Yk@cb I.x 6S_)sZQ>2ORui,HjL~V5d<]I8nA,rDRIз=ԊeE.u Z/vo !'Iq~lC$Lė'&U~: ; K3d8ڎЊCi5'2~G4mD~2HjѼ͠Y%!v}i镦DL/֋\}>=\2Tf9»I rd_Mo2ZHN/DB-tRq/sq{RKD^wӥjoݔÛ1x^8%qc2Mh8w_uIݪ$_`FBN[˔=,O[mg(O+} TgSϼjVW9eՃ{K`,DBYmBL6tJdhIqz?bC1ˍVRʗ#N~E=oQvq?-˘D ?K:2 ![1ɋZA'z^%]Q Aq0%͝8TWQoG }J^EW(æ#:yoo {%a~K> <_yVQCFVRv-Tڧ(@ѐ6hMywidG ~u.9ulN`,}cָ[ln54c>gL rjwkN;.ħ-8~ ,ADPE\2h&VMX"Um`NT*L)iCqSW= X μ0 R],^W,S GS ӗ=w:i+N Zp6Ϯ6#m[1=Z=5 rEf Lp=L"P:Vh9NGKMXZ*g`GtFbjU;W0[>'YcR۔M<R:+Nt7Pw)̚^y<ۦ]dULA-X֛R6>s6 5̬]Lq]vs%sTykeR%*]Um;L>ա0٨l\zl /ȵw4b 7U'y3ЖfPU^=.ZC#m$%OsieG24!yW\A9nc'J@k4ʛw8|1.$ɁEwf wϖs5.x$aR3mx_/*724t)m]%y?"?%4LU4Oӵ[!LgXe_>!k}, O%UGIvG0eÒ'DxpmSkzyi!rggf@-Qe1{ZwB(q%zq$";:?558"X)=|Q 9]#rxGkG/[Ad)GOV]Z{#:dG:I_AOSnFR|~slzek4Fxp/վMV'7e3./ڒ/z>L2щleڻԴl&Xq(_ǚ1x{dDTHj9Q0^͘Ȉ]IהׯRpll%#%(H3-pkgQsϲ;2$:=^FkK;^X9]X [(GD3 ygM$Όa[lF *Yi_[LS 0tP_B!qY!ߗ9ٲ_cW5c 2wمwY@ lIPs fRѕ%Ia;#bzBt2"P-R)RlZlpWf3WU(}cwٍ,C`QGf[`ݯ̀@Z%߅1KriI!b *Lk Y4B$iC&0FU675)!MREyg=5J!ɱ;ٿ.h64zq x75!'3e2#,"7'g̅ Qc 'ޤ):J/ůLrdч"C"Syn /9 ȟHe6W3fYo[h*OЯ"1_WEY9K*{Œ ӅܶKL֖O\ay}GM _ _;&7=JWj{< u,+yo\oei<\(K+}0%,\aG>v)\H3H6ݓcx֢!Y8(e~G{F>]$,}Xgbn+yWJmPjMkFЌF)l*5`|<@p5s ojLSfoHcrTctQaNmW)m|LMڏ=Ak\ȹlnbH/=s]"LzDc=.|O|4iz4zڟ@P Xj!b:EŊdQCf,x6社]X{N*-WZTH2&|ů,7 Yrי_7l ^Jʺ~Fkٿf2h "ˁh++U2L}s[_^n}{QvnSVK伴PecXʔ恘1s"pf*^/:lei8!kq?[P5#H6kA $8X2VHhkXZ b|щO]g.Wdzy_.{aԅHNX VG&HDi5P(,[\-t&O+?=9U[?$"CZ;Czr@%/-D=a9U28]XW_D1'"F+:!Aa'09~(\/s7?.̋}~uU>%@|A,)2-G@죱ϩ4=; TQvcb EYw2JK<˦!T>#%IjO0ů=z:f+A.^F3ձ!/=#7|hLgx.ƁlZJ\`:^-t;Y'`5>兼H2%&rAZNB&O:Le6H]IvZ&;5(U \8ܟ"k4  9 Zgd>RVWDk@Ґ7 5NVF"}A>Gx-09'28 ~Hѷm1~ˮ@[C*z8sz@t}72e\X^?cZl X%825eF%H䩂f+h*n傾4UX坐4Qqf=:0 ;uG_h yCÚ9Iǁ%EnA[EM)9L3N{LI$xR.u]l:p[rCۯ%q{wJ^|`_-Dr5%2 .|bD(;1rOPeOj"K,(wl 9(yvm_?cb:{<2m`bыvk7i6yjcq[. (aVETjA+H9 ΕG<̾RWf@N; t \4b|:Di2 K\[qc;j^DR?BR( x!bHE6BEJN-sPY^Cfef?$;-Hr!]/&Ԋ~jz4OK%Z~J&fMo86ʒ=,hίdtBpV+e˩/: DNvz66P?p]ҳhj(Ϳ'b5&j#|`o*XR+V|ŪQ\EGFز_MMn(]0XAa+¯mDwБ7L풃?pbG㲴XsI v͒c[&?zELMJvS*YB~:oaBO/c| 6d`k{FoMq&M%@b\ЩL~Ȼo]א:ߕ͗y:BY3I?Oܡ ngr \xMFNܓ@wYA?ϼzZŐAΧ!x&VZUV0=&x_p5jүhY® @Æ{dP'E+z^@1,>m DkGa "E/@aJ_ʼO"1ya;*.naS*1̘*ޚcc80X>j$LK.@e75voukR~r+ [ʖez#svp>#; 5" !=?0oY["JswKT"pAM  &2cע 4S05S3Aʻm=Iq F:ЩG$ :i>a5^<~Pr 'm[ S R-7*4^q0YDRvoͅiٸ6Љ>QUڸ'2ظe}ͩ!Y- K̗h_ BLmG!;%ܭh9Iv2S?DSCG_ەLb>V ?h훌YEbmQםw/~SHH:j9df~8=aw|6JF6:d&5ɂ8UBbwV;Sjٙһ:mth34 vbQFmHݡ=w> {.X%N3(M/3X.e*/)*$zGpLalA7my7kUP937 HNjrcooW'7 \u(v c}+)$2wK&4Oك|M;k@4Z[ƿ|`vu,o+]5df)_ m S<%ue`-@?a!2H  Q'I׺Ğ'B?T<|RESx(*7u̗EMrujY~VmFU"$]~kf#o]OC&Y|6jA7}]Р{zb YA]wrKd#eIkDf^h:hy;f'䔚#Z .O-?&L ?JmW7x[6FWmt"JD\Z6:ևLCͱ+秿SǺ"̬:Y\ ]},s'Db,4o }Cg`8փBJAp 7IJs1|(WVTqDIW-]X_QV}8IBC \"~ MyEgn!"fao.ըURy U>ϑʤya&{6Jdf)*vqZDz!#MpXZY"@r:0K&L#z@rڡ~ae7Re08&>BuǶ\ĆVh,ʹK{gAaI:ݛ3`}T9Yf'UcuqzNѶQ#:/FMo1\)FNf?Ms'%q#Ia?и5Fdc@dAsQ ? F'ƍYwTkхl+* 7_Z g1 SzNd&Ha[)C MC;lrhR| Iv˛?d`,]Čy7&~8À/~KJ㿄HUH_ by?0WNqR&Of7M#.hz=[K+MPt݂w͎Dz‰Jshu'iZj,mO,)"'B®)oC$xjHӇfS+}DL 6wɁ"/ڀw,RKa9o Fhuh!>z%"ܹs&/tբr5 okXCkΉ”PC'ӲѴMGzsQ,8tM7zyut6(I h(zbk 9s1RmCPeN<ס.=LeK"8^_oD1!L>cԍ$;v,bsBH8h rkлȅO.S.ͭT{G^) @OTݨ[1q?_"I"H:9=eVG qq9ѡ.nh#$tT'Nrԅ>rOr;*t'DV5U5$442;1[BT* l Jk Ũ }e毰I3ahOt|_ ~]jqD pCѧb YNeRR| (e>ƥ_v `V _AOX@U3'<553[UeBR1s'q*JPV(45Ҝ^#5A.>hg '1X:$qRX]/KCxc/Yˣ?χ9ƃ<-mi+Gw$+̅uUzOt3m/VkDN`V@WQNeaEv2:qj\xe:{V<7u3\ǖ./+s7PnYn6T[ ^OnlZ*֛2gFb[`od .A4sVaBj aEWdMҰR!0+B~YV}$`?e<".x7uSvz+Lvڈ®PX }5o NyNk s`#AIgЮ<ok2u-c6ZjDSK;o+GD00,;Ra廴Wlm{fVG9s` fpi]VO{Cԯd1"7/*TΧb8t◢X?0^sgc=``jS`i<0ʇH_{ .Ib`25/X*{=UdACŠBDwbOv 5oUp}E|zJ_kDγ7Fy! ҡö;sk< n|\@+N>v+ztN-o*낄lȩMPGRǍy9._ǒMuL7ErRO6d$ 8VrߝpCֈ<"?@L5>e%35[ zg& RU}nMZ, `hET:ȡQ coUV^1x]CQ:`0 [i4~#OrjSa~F 4 ;c̆wۉܯ;D97SsaYE-zQ>.5'/hmWGX[FÖ7/i +Ġk_B5RUnyӈvL=8I0L} =_OiY󌾴nlvLҟ(3KN=nG9]Y߇v0}sH ?[ 9܄'@*栠aPPnhdh)kx*Ȅ=oo_ 3/H2.aM% !jx`ceaȠ6v-өg*u$S<,{zYĂ enhd")杋-˾rCyJQ$G3yP4yP~41#q**6ZOѳmfȣ;h|V ~~F˪i+3e mF'ӥ,!K293prv3 3+V7Pxgov$@tttXqrQ漑êO,(ay3Csq-ɺYZ!2}K|R{mUaݭǶNGj-|/j{ _M/NZxC4of V6asPw N)~(u j|d5NUM!Zף9j4죗'6Q?wh6o}5E*< `kىEY˧JӡDs3XݾxAs0fL 8Qk!] BB̼rծkӮâk, NX at$F (H{sqп ̘k XV~uZr_7r)ZM{ _;\%Q\VeJ^`5,s9φux`b{ў^ňD?Ht>IձCCg+|\o`F5ʩ/W3sdZ~&֗Slj!G5jWP{e g# q< :Yb<&2BE]k+>>|hXnnB5>^78Xfx4:շQCFҠc-ZU7*ZZ^6^NÈrx 7ݜ@WxoIT˕|SkImi! S8ŧueP M_m\ k  3]dh4)NK8d|v[hMK#[ qyqa}}-[T/w n`߶?5naJbe3 fOM t|bƶ#T3EM!E,ÃOe&pX7Ž렪5Ԑ,C Fy+V`-߅=.>q O` tbot珞}x1ֿ|lҡ1fJHtRƯ+-%;Ï #P+-|q(AiFl$l aJԂ8#:B/}Q l=tIv2'{WwУ Z(4 ej '.U((qX c*N<`L6)π 7քy/5u-Cm{Ǘ~jm,f(wa `9*Zˁ!ջMGdLT=+v#C5HGOHq.;.]r.$n"TT{^@1}ZaWZƞŮq/R)`؂vNcR@8t( 99&ͭX|C.Jj*І~keɉۖ-*Hՠ,,yD yU:Ks^zfm& lbIz_ӈDw]!`J[hV +ۛ,hQrZ㊺5S`yk}N wiHtԄgB_B24 AR< 6J2}պ[!(9~Ki}xHr7ҥwdz'3&:|!~e@޲9 #xc Wm| BNVJ / %#rLS{sqruՖ-$E%ca{p(F%>0XX[,FMknӛ֖\EPHx0s\&3 AX4B(-Sӱ'%߾_@ 2ley ޓ5{,C\h!xCqrUj9hEɀۜ:dg*!ٙ%i@ϰZgx#I1ځN+E')Emme[;~ծjf=BnrzJޔGme wNʫ}9?DzCxqYB+0B QnBoe/~B9Pkd5uSJ]02%-DӬC %&KN7}r$%ۤbg'5|L((WBԜ Nގ`leZ$.D]a0=dbl=A :B"8zxB04e!z˂-NX[əEtt.! iŶ-c ^ v|*"}u~j7K|PϋEX[r#>g1=~4*R9B:b,J+Z`T sQ|,`H!o\wkMі Q27I5R}urrBٌ!Xt XR>rOǭV ʔa_v]A<ӫ&gfLb)MޱObxm-c?M+$vo`~pGjGm}77Z)X2-?uLc(s9v n[UVk*WJ 5S1 [ٰ}: ].)] KE }lEHAYAYbA jd Ex*Ro'3f"!,= M'J_ 3vS4F>{!aNWnlq2ӂVbzV|Appd`;[Q@qyI$w(&V&fwOfHm`pdQ*7Va@19# l&d.YAg(`$aµJd%Z&Yko5!6oLR9eS%QW/oN|u62β'ODoT+ ƿgOxW'0h%efFv;1_h#Z (=E8O{NZm* %b;!bWU0^32$5?tE?F*3jR,U<ԧ bޥ1$c޳^SFj ؆x)37Gi/"8y*l!hօЩg9J>!5De.s\??刱wg jdN!}ƈ e"$e]C>K.OFԸgxm͜" f)_^K`@nURM Mi .={lQ>W#WRD!XI 4<ᢗ3j2KBOE7)!Q5 FG/af#jn/L/|dž8o9o<[ R3꿪%;@ˡdžE4Ob#GxK9 V'UZoYMF˔Byw~@J'k1ӎ޹NÂGj(B *mfsyo${Wʸ܆%{lHT"W?,dY#p t̎SF*g wV?i ‚QgǙB .aŁ[CX`FE;ПGP2 ĵB- (˰FԞ&yC Fw{,pR#Yj' ʍiB눰3,H .왑tE]y?Ĕa R^B(^'4M޻Pϱ{1V5 j}wjMQk"MҔW[>D$-f@c',#F^ Mj҅#N<ļ^G2KkO;G13`kcRZ)#W{9K"j 8zY)dUj}@ 7潯\0hP]` t2#DJq ŋs.er@|6/1bĉxO<>uPK,ȵ)G_bI5NHS#=6 ~ԷellkwƂ8lsQrŠիY4 b\+W!R Űư:KjFeĹ?*NdOY)Et%B&dܦU*˼9vp(Wl{@$¦'27)9DيʬM oOi:(" c./>"}Mׇ>?\R=k§+ș#eS' {R + u *fh/WEim|GQL3tt$*J\X1; \k$}trnÙBUS8;Y7NDZ8YD{eo -Q"6]Vrгv1d6wq J-Y>J0fqypHxA:WJ` {.Ԕ y5`r08)lf:[d9$C鴢{A4q$Ӥ*Z|li{ ^VCBWů:C8`Rx>爧dbp2~]yvw]NG~jy-|Ֆ5ksGKKiyyr%Фލy nni1x5K1OLſP=x?b(ԐUWâ_)gRԾZ{՚GF0'vؿH:@_:Bv E~V3hUY"5n DIg~_J8|\@Q7(۹kE{uW/Fj18UsN.46)FG{j_+ds1ـSo\}NF>>P /)$Dĝm7 $swR e~/\cQvIC/Mu%rޮRdGg#y7 "j#Pw{3CNFY)>^=¸06'ۑ͓ 3qH R kTTo핗&siG;Q-:ZjtG7T϶OzDNbݥPXRyŋƳ^FDNjV-BHfUӛRi1o0BU gŽ `}BJuVZͭO䤙3I{"jc7!esΔ[Μqu=D3~!Z(-\ȯjE@rY r-46H)RVsn4Hs'[@v׍ahK6< y^g4"yL%SOOv-A WhocHY!j 6w|~a?(nP/ʹr,4] ˍSĤ|&pB㯼΄Q\a /sM應{(B8M.`u ln#2Q?}_7Bȋ:g7צS_`8DY@N-?wεJR?c_7F05x;aSW?H=B.|La;n5+HhZ8U.Bg}{$WR %dzxD\}[O dd`8[46 ^,(s^Ĥ2Kْ {FFF,OQ/=NUdsӈ-gÿ#3S"PEW=NVXFsL= S]qJ5 wUD?~7Nf}"j`:=6F$ 3~"`5g6N@\WQE.$ h!~m"|[A,f3oUߜf/6A1 Zx F l˄U4u7#NꙻShknᬈ~3gҎ=L02q#ŚI(׀F$n,kjF %v~Pr1{#C̋WWc[Щ{5!mg̡z ӵYT?>˖%Il˒p1dz꾘8kL?NH#8g䏄P0w9ȤmA+/[b铘,Uսh6kDd=#}NSyguaz:w~qF.LVuTY+vjX%%b`+_I{ parKͽÒ6nag0=ƼYG6~ ]>n`p@q}QmShXl7չqS} $$g i"'';J<4׉2z47E'Ŭ'?xG ȣr0K,BHXtP`אN]Y(#"HE{cU?,Nkōs r.mzq-l~+{euB w4}ߥb {ؿW:\_jƩ -+fC> E)!pfIu"Bx>=_1Yt›iK:!T̩6]r6gNbw_,pNx ׷w=ml֧/:r/8^ v3 %}$߰eu+UR |s=/٪y})h0ᗐIF^L]d8[aUdz͂(1T/-@m}WFDG\XPUm{nCId9'⺲(.ELг29SG݅3.&>2e#R:՝Hڒ1t<"9侦Yp"58-j21aa̫_pW-+E bul ;γ]K{ 1b*qؐ*3ߧSn`zM8}۴\2Y<\UP(U.˼j>֪sfߴZ}N6^mGPBo™Stuu/ͨ 0],.~+}f}fu|yBBckW4QODԣ߰gbtpSR^(@DV#a3~Dt:hlN㠉.$r!-CrebԒ[J-܀6hv:*M͐HJwEtŸ OV]X CI͠Aag$%Xy]vA:7B[;11(WUny+vLl9= .NB.JB] TbSc؁GrOD&)(N}ܪάȺ:9 dQk)c፟Ym JQ1⡪)!rC駒# SO=*i/i#uED[1;))  a MѤ$?]p}q+}ܝly-+=nzl' {@Գ`>q*ŭѺ}4~aVpfP!e@Tՙ $mݻwQ/䴴~29gT!rIpsϨֵ<*/F`_$-)'Ds|[dwH}cmz٦m"A}nkä^M٭0[DuJ(j 2~x1Tٶ2{3Rr}:d6GO\ղ\.i]:hb:+ rX>&̶a4dxF767o/ 73,$'yc.@IyӗG~I̿^쒒j֟ӁՁh(3]E^EO^o׃wZ-$L`E.3ﬧ;PEztzcJ!@p&Ґp FaĪ3[hQ;4OJ`r|q?U ɿ"?eɀ`wUˤJl#! [,{qpp݃^PG9*Q{ Z&)vݾ6J#:0M45xL0hI:e! + KW"&'i}-\5ujZud1-R&(Rl0|B1򒡉"C~twBV40/#K:@l9i}؊)ÄǴ1SD?%Lm#=& ^Z* Dh!5g&<$jtAS1ojph¹ҏUZ[%KANSg1 WMVɳY1y_P )@{+. H08?TE^2R Y].qQ0Y>Ye(b fJISx˹`o;rDp:dԿpx |,M|q[ك~݂YgMHS>-Tuȝn8Z{955lxBwbs(gw؎/ŏ=CТM:,`0A}UB/F~ 8w;Oh%˳dR,4>8k]< {%Fմ+.#OfvH@ ;09g)<)*^sOnta>#@3 LBS %AicWu $)/s8|RRV'cLӂQ ]]_Oٜb#oUVņ/gtWAj7JHk6e3,tbwYrk@,Y4".;|-G-Tp@ߣXZeC#ꊀ4,oG7$u k c6%ڜZ!OC#ᗟ9h^8jB dIu3حF6%>Vgg>lw/UH #>Տג"wc-&ev b&.>Dm:V4úCYqa S>F/(=x٩!Yz5o֏(iN;ixT)܂+>)11Щ: 4HJ mot ֒՜Pvlv U]L`f.&^j8doEHWx&X7J~Su!r]9k7n;4 zkHCe{7??K7R /ٰ'hd7W8,T*Cn˙q'My vHeTV!BS<_'?P%CO$OY/'MbK-wq=+ ")pwG~'ho?Hm:`cՙtj0+CS"GG-!cty+(g204PusLCrg %-CHS[).y[ ʥ"E񽅱OH)mSkTc_sYoHwB ㏄_ȄGْ:CK4EjԬ5$zVUrV̗bǺ PBO_ ~Sjg2l!iR7"ECQvR]$w.u&"SW 5R]+4^ZMW|M:,(.HAYW+w$_} |i+jOp $Fm` @(Q7μݤY23.0IdVlN0ݍuR/Hݘ1`PcJNq6 lIh?m \ k C+9an\ܴg3 p퟿S) p`7ot?j|[H !FYfh?nEI)u752MZMd`}HR9M`G~뭒/af CmEo%9x+436ecP]}ݦ(8^g!oA6 o"nhnݝك7 NlQKχaٷ#&c D8{d_]l h#ҟﶯEV^]A?}8 I8~LAt_Fz5|x{(IuG$XYU{ڱ\$+0OJ;sqAbwй^=qu6eo41 @B<)jܜ$K3#]6!iB\#?AH4~+˼HEy6Ν̲4O>>ڐ]JIYjKvSf%PeV7NDHd(8L%A'9\ E9tŤXt"fvqYqlv! > X}m!@;"$ 'yꀎ+0 vG D7n:gޠo #n;;*(Ӎ<^N^ψM%J``scn}TEY\D ?Mܸj;- n=u8 L_J};LődWIM# f$d}dc^@ތm5EWQ= >1jsmcpϰyro=8 sM6wx%EU~*pPɰr^CXBF[;AMߑW8ci淪+U ό')-"[iDR6'UXF2Ꭽg1h׏If3b g&S'Mqۿw7B%w~HrE$ bXLNs}Db"dXo1.BP"3Ry'JU>OB@ 0e *h<|݄<O^q!"?'ERLu/yF>)kiYqe+ڈ͗-9eqXc{O0>hHV,40\OZKx܍c??ZOJ̓?|+`蘦|Nw4y߫{t,n"LDSC3g+.EPtH}{u_ei{6;*m3MfqdŊ|mYct}XjmrBD*;=d ^pGw$|SEJ8q= P +@19|'b b1.H'Mܓ3k|̲pca\3/Z%.n[ F$`եϛ{F#-`%=(}CvxhG#'_p9=|M9Z %xy0*w@|ӀNf/O єLYY/λ_\ϴ/ȝ_L0Yu0 B:Y[`m=3sUN˛<=(ʓGѤ~ 0|db*EJR(?^"CW,&+2l;ȰyC2~Wh%f['5ӮHTNbG \'T>=1M#*^Ljt5IO_J%ej{ BtRP@!0 BSްp7$jRN!#ee(9粸>VJ¼ʰSqԳ~(IもhϘ#&Yϙh#N[D)e,DVU=%d!sESc0hN* cxP%IOv ^mi,Vl<(+Pt秆vx"~]7ۂբ]r JKM//#zq:f(?CliYI.|x4dIeJ'yF3 NTٸXW/LcU߇8HUe^]=X>L|ZA4sp]ұ?s..I+#%*6~5]9Ѳ-qY UgB&S_]׳W-ےpX|cy^ vYgꔷ0_|T]%]G dD^P6maUge1q74<[Q9>*ftY&t1q4А\$ 114X?.e1\s埽(/L! ǚkP;rFǛ v6_w: J@HыF,ёAm͔ r xdtj<;R_&ߥQY/،Ň>3lbX)®pUsK"$LNY@g"ޙ.^P\>Fo!e4\ {auٗPFHuCD{ߗH:NY?+!_B]p}RLe9qN~U1ۧl%uGS5V%r~21i_ 4#+\6vQMdY o ͘C MA$H}NB;XhP*EzS޸ʉ^/~6xKzdD. hq&XQ'6Uרɦ=qT,<=ڼ?ϑmwɂ,3&1[!$ =4QshrRJ4I.Z1?g-6tS*w0믂=\d @9htc,qČ`HMg>q`2b ӐJя$P pBj@w;T]Fc]+^AgRWo6(H^j3Hy84$7m;! #; 56(?GК>&@L)K jg\8ხ^^&;(u޼Q|8*ܗ0aycyP}|Θ̌h].a6ʓ_%^)`yi2l<FhלT:ֲ2VLKH|R>,>ySv۷`M_b*"iԟ!hR^ DI wEjq)h͢1" hmlW'6 B-XYh]/J>Yad)^٫,g/qUzSTa$8_X!s>4P CfwG }(/A\Ro$iJ-7-CF>E'M]ϠbD]Vlkdf@c5#OceАC;Ӹç(|9-,7%İ:]TWatEw~# Zs8 j;Z7i}.!( K+@JHT4 0t2|A!MB7i2؆vIn6NlLظrU%?wnQѡwF7tMu$Z9 ?<3GFVr\ OvٖcL)v[g$0UZжʒDhA?ϔt$]^J<X-Y*lr*5|ݤK_\6n $L sP(c$vu儹w,cJcbwL+uOmFVB/3R9TK3Tv[`R'=e*o -lJPgXmPm@\REDY`kKc^c-=-y@X)N(}i$ɡf"ѦmSs^]wHƧ y5yTU[ujWQk݃7BQ>WK*9b%HAȕenkRkXф@e7..M̗hA 9@ʏmPwxK‘Եԉ`a/=e#9˾>qj"'.,\ʑ*6L>GAjWHC+]'7N-+*7vT~OmiCT`l`#t~,NJ"pGYQàRVn~*ĊpmZʊjKM;v8Bx.AڷbZ aIXR:/;+&lWZ LYe i2.'&x;@!!K=&U`ϐ;v i0#Xxɂ\(Kio3vn̊mޱ"n yڄUa>_ e69t3 Z\ ls` JY`E8cabMxȉfZ 83Ɔ)9tzJ L@~YwK{ǏG2[@Pt8cg$E$Bu1&{0i:&7Ԁ~lUc|lzc>xs`- dNTݟZd8*E]\^ڠkoڗ$L1Wj07/> .@n\-tDT;aDnh(X 2}]3}/N@$ ދŁȄjb{D!$^cA\Rز C0e`?S@ 2n|C꾉B'j ZdTWJ/H55M40ͤu'G&MX,49GM>JG,׆s6) LA/>T3𶦀oVۆ"b;\N*Vcm2Eu=D-4j{ٚ_KO@dษ>U mМ_IݥX#RmJ_'9#?FC a&cSȱuA Ɗb ]ВdΎ&CbN\L4e Y\uNa\1=@B[bv暃M$m0ӽ4߼ۻ 5;N|D&S5s){0OLPwlwhDu:H`ey.yxF\ª,.9+&/#d˅HHxTSTfV:Bi?z;; qy O(]/+Kv!aSnYf3&~ ~SR| Fɍ%IF5ɠTv)G3Ò*ȰjіTG.PXoo!S»@&U{oN؇$c33ޛoP 0ƸȲwL`hER5{Aפ;R{xgԟ͋+ȅLlуw|MHy+xpiAWBȭNv[j /C<弒|έqA%a (}, Vf" FL$0]ɡ y|E40K*zk=R Ӕ 5 81P8<4Oa6;X:ǗϒBu& cQQ+Dt߾K\6Izqq)y 1 E?t';%M U7܌dWR1 =իcKJ-ڟv%;Icz;}&e+kfkGS٣e fBY*ܱڃrb.Q* = 7WN g}Wzu6BOjb-֝䋲d\D3$?^d q΅ȢRG N<v#y-#o* Cc/ hƯLd %AmֵwLH^ߢp: a ^ Ļ,6ؚ™هz/G ؕXink, ʐ)^j2p9s<&M.|oUߦهZЭ5ۣT_xH?>mَi\c0f $sTx8; }Uʸ&W\A#Pe!)c/8hkكvg5RR]e r+R7I}^ۖDm52XL/6ү y$uu W2347}}.[t};3,?vMshL8H`j(MjJl9=NM^)dF-Y4%uG:kh_Miwk8&2D/fВq ߤ8f d3Xaxb;0vbl5\rͥL^F~n|ett,oDr?񔐀fYVx =be%,ci\|MLYk <|́fS$ *tpCV8YxB2D_@E-xcs495x+mW^RF>q!3h>V1܌0vgSlQ@)p7,sի2 @*å F? Bo1&wdL hUm0bGaT_{:_/- mїmT_<r:̜Fo EAx%`=>HN遱8Q >s>AK;ALhѮK9<&&c;@D0cH>EWeyrgx5JwxIkro/5=cBJC=bsa&nPT\1t4Sq̹ӹjQMy( Wm!CUҗ֠ zuJ {ԧ*|2u["A| |J\zؔ͆[ -vXqQN{/S" %0W4ۚnǢ eJ3>(\`5 e~ %FbPM)>lMϯKm#ߩ+幧!(`[Ͼ>@luh/j!yU[q/vO?o%T6_XJTe\#=vn~qҨhUD=1l !:6 +6.s7 8q/nsaq`WBF:햋Q?Rgkj6JH;1~;mZ_ZQuEƒ’9pEI<:`xEC+-tLpD)V>g^P Rt9RH]'u;6# ; vMoc30ߩEQ3 b͋mAJd{0X gW=x$yeqr~y?2onE nӖy+r`M\nюdO w!F UWxdB #@X\2 C2:Q\1ћ/ec%%)_Y !i N>@1\ƎƎdkt}p~ pb8>vCZ9O͕(SS~E;2@z`T2J$oYFnC k=zFan9$=BߓktI^ڰm 9+0Xx}o8x"\UTA3sa4b=qPGkZ#m 6a10NnC6\$yYrRKd1L+kb3{/5GF`i>fP#.1C 2򰔐~YG/LiAoxDTB[RW8w&+ZB_RQH5TuXxo^"%?t% ҩ>$Ԡ*u?庻0--Y 9$SzTzKkضy'7/]tߝS9c{ROFL8}BoGDxY脯7PszF{P1pIk3)pJzhkJsq||,NKto"{$`>"49}gڙ*&mbcE5)r/td|bVc_!to0Ņ:wXBId ~pn[V=PPu{G髾yj.5ScEQk8&Cf'Xs:FTa1qYf,[Y$ڶk$_&OQFY5㒿qY&]"B<44anf.#ТKǖ\H>HaN]vT0%羥SU.xΜCx`"⿵2BCz 6 h9eu UqGԍaJ^G."3ܽ٦!oWDʬ&)U-@=֥#{&,]wW(]O)!!G:P{VBu_f9%uC6>%xJ<޼N}kBWب_Eo`P?֝ȭ>趾Iۇ4&Hfgt"8n^*)–Mx~@m}<ܶ=Fir1u{"Y*1àŔ1&v7KmEBObc:Q_'NZIcJ`nr7 i9C qbuףOKE!=Ze^aF0vX}}9-OO_/*O{ou~jՎ,hc.uTlT [T+;- rp~fkc_6hT]*fIC'>*4:>cDE57"\'tӶz̓N ~ίjRefm#! t!EמzG(|c{. 5ac67;AtRGtwLs ۙo.$k\g%=Vm CVl4~'|%2T|Q N. ѣqĠ8АO'OzoR7<'r:|]/!9P{ noom g:EԼ,@z'!)# wgHAP9(FvGX9bFtIwꖝ7rkZˣfVNd3@0LCSI/mήdt6>qUAH_CDK}k>B6>?\bZ?HyiЦ M9Q%(-fYۄjPY6+> &e8&]?.!)rI%<=}?) +~Z3ȕ's*.S7!:=6.,bp{֞%BbX W9hGpar5fd9d"XrQ4gыm@ٖ *+Y\Pޡ`]OUFJVPk?oB{ *WM~>I_pCVE4jkg\*!%ZT4kVp)RYr \ h0 :glDFG-*ӌ4~7k<v֫^ eW^\Z`=OW~Pymu+X„<>>z}67mіob~MPa±?67|u*pdX'.t ?\XlmNE3Έ9UKFcUnp"!cU 2L+P43xA Arq''0Gvf ;҅کF7`*lX@UC_ֆ'4+L{JTS(C9gM&V?ÞuYIPlR)K&r< Y)G#5 ̕n .xq&|0QE2BvƨvG'ވkgnr7S]x۔[imn Xl*yDY,.\mk&QU` g1p>m鯝|4Krv5p*HecVaZ8t@kmf19o Z3Oa:EF'5E@>Ky4Y7]~CM5HMo"K[mDy=ˢՠ>3*62-x1RmO \jFynr̩ 6JX;|5*Dư `4$T.gOPBA B1raYApSbM"p\`˴* yA^Uutnn 8̹SN (ːЀq>$pNC,}Al@T6_slV^ NJdc6zR]rLݕ +j&nSdXwic)U$My҂Y 5]tf:w@sK`R2$Bv֢Oʖ7O3k" ۿL%ي+j݌UM ۵կ%WN]#]DsC(bd/& `Ga5a8%6qB%KA,O9ݗ *h'o;"FhHq؎Y Ԯ RK$h@UKKZR3q0j3{Qh:J3ymMR*Z!R^_/-i%MF vx0A;j_ a!V M?lN'] ;ѹF8O5sB>tH-&–N!@}HVm3x@L0-sL$ZCjxAOP*J#NdFxdmC?RKrmvxq@w=OJ3^NiL/dcEO}QQOu_H.Y29=wqzsZB:-uF$,3'¸cOC5_1II qr;$oNP 7Nh~NG7 h 9yo5r52Tw:u>.ꨎv&NQ,I]+c%ZUI2pD{:IE˄N!B,_ԔU""hHm)2Vo|+׹GFj;BXTR>zӰǎ9B}zC(IPƣr;Ձl&(scCRlZ&D޹Kd?h>.P#8Qrڠj;q yγӏ'k' oX\ժ56O&)yG qx'g9Hrqe#2bkڹ-sTZFkŎD8<8uU' .Yb]fMꇛVK 1/-Q*y\/T_"3kbJS1%:Elk?\)xرr]I IMtǗJAn:K7BJ."Km Ll`9 M:[+ qn6bCv?C)/i?r(KoΚ!x&3;u6B~Y뾈gw,Ҟ`xbW~Cu.KD9Bb{ذv̝ 6exVpY9Xu_է`ɂ6S`\{CLIzʼ$yfW{!AMۏjRk־ ]ZRu! t+eI}О@:8u%'0f16.sQc$_I: ,GV^ged p<ÇcK+jr&83U Q߱ǭJL@Gkyr["f\r( * 0yoQ7" U]Pj@spf(]fS S6gc:+j%fw{kRY{fO(4t.0Gǻ]+:8"vұC6 V^abguQ?e3?q}9,W=ki7S9($Y8wu|9/ 5unR=@+k(@ӃJr7噖iCWq<3<c-nnWFեK&c8g ->Z`vޤlQ_*ZէIsVuSb?#IJx%ۅrtn@-r-(aChq L\OYcR#&k[P 6w"c%I+ QUFgE P"tQ"@ j y#HUiФ+_{O[DGHH;a%v"S,)G15.4Bn/oFq=HL m|g2x?^,_LtNlkW tmK½FK{hspcHL1};J)Z-um{Ѳ1y)Z\d9ClQ yb.E ρ21.W"$sZ5bS@Nߗ Mr͢ 8zRȞ:wF]\Q$8,0Yi99-B*%>Ya+,cM^)監m і pq Id`*R*tX yXڮbba&T{GLjsh,'J.ЖVbdBO ̀jn)&]GFT*T{.Ά`r:}ݺa¬&A.ꁌW?)}.n ±^ ϸ\J% q |;|:<f8Pdē `_{@ 9%@RBqM^t'ڬ :W(nC,R^ П r%'A=,&) vSY dbLuV%ySNwRAOhvjwmaYfQ cr]!l@Fc R3U#]>3 S?> 0w߃nuJqCuYt#zZ툗 Smϴ@'76 |uuSL)!RqX THᢢG.^WE^Nw7@ O5ZsLj!y&"* BS'e%3`Pw g87$MoĆ (h'N.>\1mXь_5cbp ̋Ztj*7hVoZ|_O V xf}±-oTS:4( wk\4U,;yp\|V7iu/ 7&߁Dv!iT0=t2G^=ecjVna^=?C7Uw|T>VZwc 1n /g3AsI gƫ 5+f7Bg-HjWb%!ܘٵ a!qM bhGz02 ֪}s^Ɯ|"xKniG(wN˻̪YGP5mR zEHHBdD1oڇ)m?[׃lQ5jM׋֣gԁi9i.c.h߶kc+/T [ל~G4jZ$@MR0PrPk^B[1pCT^R%i#Q/Ծ%~ :_/SIuu%–һq8tˬJ xGYV靈-naH1 -9-V؛*]*avRZc@W¬Z ezc |a-&ND ?&Vs^QEAPb yBK X_8Ǩ&-bw#N '%nPϕ-}=4Q󴶭 C9U'Ta8<3L4_.y{Rߗ1o#Kٖ4p㧆A Cu icG4aP-T>v+N(9 D6̹\c#H#[w!D☒[@*덴\G|3^LY+^ #(iLxOtyJ$./Zʞ%N­/ynB"8&sB6Eq"5,:sMe L<`iiYMT̟OЮ k@]g n{qtFt+aku&%oOO%=!tM4ݯa/}tdP- `I[_u;}_-E?kH_0~0DWW,dvq~hr0HbktrC& Go 'wHKǒ '4fb_>D3Tj;h(E[+7A!*]1%ėY >~Q L^fԱ%l]HՐP3_% tcOEMlX&ϪLjťߤ`ڻ C exa$wPP 7 |2鿅T}<(ZFRDhu|U+a-#IxA޽V寐Vo[.`bF ց'N9$`Qj"橿ͬ7bO֝*)8&4BP. 0S68,#9-H{Q*BpQ3a%c-bzw;N×Xn{p%Jt~.̣tW q.?c0/{ 6l1ojG̈́XtT hVb'T4SSJo_ wTYoBN;|9R5/bF,D-DlmіRmb "SqG mGaa2 W,PqIoMFE*l* b oЅ؍El] .+ĺemC, pX8TFlЅ{9;pWB0AkjztH3ff|r7s6F[z)\qP:۴IV'jN@Yz N"|}2 >13ZZj7vkȐwӌBShnˠwJž `_:T(0d2\(hꏠB I;)ou3;1R8t/'QrKk,ZbVH].lP:֗.xy;kn揰|d,ݵB0$)AS.,]+:]D'թ9u}oGwPMuXq]k G=7dbeku*\﬿ sGvbkVCzy3~r Hxka2'2Cv46ͬ4V7m #j H^^ ?ӬHG)F^Od$kfj)*ӡ`K5R\&wОJ,7~X6vwms i~cɳY" =?PX֋.!w~3ޭp}ʥտz E1C5-CͲ!|S8-( Z/8q}{o_CgzNvH懆*`(ZYۉ@fꦪi+Ch@1Bps{˱G3}E|W4Pcc85<L !k~|DOK=`]4sdL~\tٲ5hCF\W$UZM3M OPkq-Vv/h`Xdu8/RͨsؓKfp{d \l/ ~4J+x\0ISlA{B55's|GJiu{ +Ft kpz6/Jz<*a)/;'.ݔt Ε`ԋ=gUEA XcN5ݮCZw?s2Q)$f1 26C(Aޑt^s'"2.M-#1m5^oӽ2W\]خ =%Ϡ.Ag0Q?c%=zE/[ Y$hJYdXd i2]L7J]W|̩Yf|JxdLN{+$r$ (ԭ_˱MȔnD#4B1{;Л9:bYecSwvP`prwצ!>S (D`0ʰi%?6e+Pe:ngtKImglMpB-k.!JӣR kI} 鵴T6inutvB#{>lVǛC d|'%w .2> a\Tt}Iq޽M0ܜVkmSi>5HL=iHjBR@/wAP* Z}^iB ZN&w !SqGoI0uFI+R?Rzn{Zȅ?ͨLDj|t$ ܉wKє8LtaBA>ǥPE:SguO@4KR/ `, R2YB΀=r3 'ًu:|v {kZ|b?U dDw$+E3(V" bwdd? ]3cWe.D%t]̟k*W#8/G5Y2,fG_QwoI~NP/f&~b ^Ijpw>zꥴ\M_C|3HN,Q3uv|.52~6~/ˤoVxI4Sn ,gh2kiRUހRdNH\vAUsfP9Pc}[1SLwG%acS+X3GA HM8P['Y"qP+1Xхl~14 Ƶ|{\=nzvW-8G @~$,-nѐbgb: 혧r6_HշtlZZ^#ȁh,4!S_N;Gu׻WWVEhv/QK;m1RH-{:Hb8L+CAS>0uy{Fv\Hm;|EVڿ* N4:dOεRO5MxW}jZl.~EH48zP>ͽuyj0K\DȆ*:`Qx@C߽{riyZ3t9`+-T_rnlٍ1#^qJOi&/NTw$#qE ڽ%g[gd?py^)>:2t6V%+R?\Z@kP0K.C[@;bˤVrjX0Sp`i,U יjqu]I[,5L}V&xSDXJBF}/8Q%^X|Fe X3CR4 3-{~4kKjEрhMS0 z!RH=h>9@SQ?Ivh0q =:8z7>`?iU 'ɝ]IG.$}mh$-BIi? ؆v;g;:ۑ82]A|x:z{r9mpyt{&1k rI& - y6P)]XTHFU)"a*\6ueʺ_L4fEY1- _z\e5b]RW%Nb̺7#n ANjSqr5:|[*=}wqs(I,]hb'|U t M$oI:Cia@N" }= S~O4%xC*)كc.M7o+wPNZ!O;"(nw KwB,7c..[%ɳ~9>ǧGvБ_b_wq*l-f'`sM}[>VCQbcyS.3+DemLExY=",?!LC-46V$mG6le *SD^2vDf]ن\²N$μ]3U'r5`aO yo:, }ɓ4]kUl?GPj—p$apl{'F+aK^*1q`!}?%\_ +@vK;|U OpXԏغs!p/A =ZYoH`G{Iv #b|O2ah09vqP8SOW !` a7"e%I["bT([{&v[Nyw%" |b@QlDD<-wtrxGqZb[$9" 8yzaQRPo 'u-mk?~J-r?1P U)Nڝoͧ`y_tlVI!` 'ux%Д'̅jbv(>%Vu㦴$;7 G eXkwj}nGb9"絝)fO F+yX3>f\fɯqT+!p2p@.R0r )nĒ \~5:i&~tAg1M3Ҳ8L6Oo!GԸЃ}b֛,a5pntҩ|iT{[x=ZϬe5#ѥay`{FgǼSwwV;@bvj0ުꢇNVg#;-l*]^bs0t Z 32U*/1f!јŽ5˗&@VQY9G;Sɴ1o7 y1|[ʞ#oZxM>ə:,3*lsߪءFU Ȁ;a/ϪT.Keٲ R^ðw|bz!ܢmSSjٻ=]b^_ղnF2~oE\Dveo<f 1yDs\XQIY%;&CtaD priLJD# :_B=>=9M7~ Ta#2 _ ?"۴#s^wɈ$ȫ Ⱥʧl#&hNKW#ӴF*;P3vn( &ov"擽gGBNEa|f|f"Zr`8xY9DzSTp}P5317Qۥ|#gV"CHNq9v rcPU.Ԉq-D84UUDm /gd&Q"K__c\^"ujyдyыseƞp9m~@ˮ|z^՛6:'=lgm H-eY$_{0gn5t9ZaDDýż~X8fb)Aۜ Ij菸^sJ``5;Tډ aOno,;b_>RDOzk $;a6 G,'&Z$ 47/zsb}COe.ew 0~ b,v+k#ZqQknFOPG3>rT/t>Y7jJ~|*X'Qbޮ5.I@aЌNml5䨇zsTͷ Isz׸e8S:r}qꮆ<[#db эIXrIOO E }w])8$XςO΁:y5eRދw.xU~ `NhW`IzP揋FB1 bПXs=%p7ccVKD|N27&}՝}{'rUG,7Y#&X&i0EQ.IOVCfB'}3zwk^wk Nij,d뎑kdPy)3A8A9 iԟtktEU4wUP^4J'}5{{wfYoˈcmM;zx5`B}K~7G }  {R4ПCK%zM#]hT=,ٛhUⓨΚ u]ݚ큩[fhMԗ뀫VZUͥI]Y/79R|27{jg>h/z9Jct/t.XS8^?_%yq>XijRiiMBўw}]XCIj-H>;UXDGW7lثAEAe_wbf"o ?—{JxD,l ힳRM^+1+Bp$^^i?qE {QC+6GyԓSR!-3 ҙo2Ef"Qc+#EH$KV[.7 l^چ+SW3.࿩ja!yU# _{߮lS1]*\!=中 Iy:{&1P\&IzL攼w۷іfwp6[]~4he>mO<)qjV;]'ũf̋3V/aۧ:\aFj_؏Z!lq,\E)d̛c0=;:Gmz9N蘱 n.X5 zX) 8:̞~VLgIwpuQ=m8q`ܸ5M6ؘ6/eZ_I8V)?0bPu(Xٹ6鷑 ~#p*|ݥ&* B7~ EW[<#$}EHxԚ߆ydzޔzGgh?;V VQg哣|݊ysqV>?פhXjN>MPZJk̿HЧ` ky AJHRFK+OU%RAX.\_=5 ȳQ!vlSiyVxF1=(P6 ͧ1É R:י)Hp$%ƦQ(4y݋WɆE|_C|U5_-9xڙ#'ϸ `mZӕ[]H.#"%DV iI(8p*p^vٴky># Nhʆ &(/eGbIO|fǛ\u=Хm꾙ZNC֝?i*z*Mkx+6WԗxF9H? C5m>dMmj:{r(͞bU.pxAd_=ʒry3Z P]4gjQ͎M7ąm>6;pX9q1=VJ}BP{cjU#DQ1WDtI@> ( 3Ugyt9 N.F) ~p_h [0q"ۛ>,1n+I 2NElV6~;9H-= &myLb!LjZII?VYt:6}dw z@:kFd c ԜX({=jpɪR ЬJ\ dZHoļ :x;d-x5Atca%srK9/uwG5WzJuk/Wjm8?0 W"&%q g.[BkF\-l#GtE8P}Q߆p+rho!]<ЌlcCZljߨգVs L"qnav곕>1}B@:*DW0Q,e<+'<qu殢S<WetEI2 F.tNu F7z%-UcZ)\YX4=|xlu՞X:ZlzwLNYWo||!ɖQNN҂۸EFH- f>85I-Wı4g4|*@T%8\"-9OaFHa1$W>a3Sq]&wf)UoA,!N-SቋaQ4Ynű&n ?FjfcNj#3mi, :!MkM CUPčFy?c,qh 4ŠE>#hLɏmdT3i0c*|}s.PJB 8pb38~m=*g|[)j=S$"a"iF a}Kc>oSa*sxz #7V T#q^۳ 5WiJ`UI ؞An=e Bi.ABZKfs@Ed_I>M<F,sժ=Tvّ&ڋ> rNDP<0] \u\bOO5!/)G!ӿTR/:eu*G<*fWTf׏3E37YԒb\ r"% _}Λ8 Y*mC5uͷ c2gQ~DeV͢] g@ 4鸉yq6-1S@dài>8k4kj!'S>XD[{QJ~VJ4~8dZV핪h7g)q~V D$f@* D(_W!wiYfF~P RF4gcd,ϭЕC2 kd{|Zdm~h 3䈽% k- +hٺ*[N=e>(j/$3~4P\ܫ8Lttٕ.\J⒦BƘ)#ZӜ":75-i]caNq/^ޖB(b_.2ў3v۽[6=bU1(|;}vA&C%ދܓ5$9 ,v(`xjBĒhWj=Bex~Wd9-c[ME "j]c~kiBpFGQaL7dqr!-H U2`ViMNiP3Sf<:3~lw[C45epsWnTKBD\γnә = jA;}x?< fAXZC9e#'7sD/*DfyF*:NLb0faZ Pdbo㴥G_G;HBƲ9ߚl?I#La\~2)Q( 31aj*&Fw$q`ҬA4eKR`xɌ88Ի`ZAtaڔc qإ^;^٦dA!}vٰ;]83}jF&몛n8Q>%4A,;!`s{}*?R8V(uWD#זcFzv.at~wi`&M #sԯ \B#W5۩t*2kca-zh(:2!'\&p\ * 1 qi#\y$ ZP06'|Ŧ-Bw@ FIԾg5}؁9WyC> W aU.`2*Vg]/R,LXg5q9n`7- ŀcˁB $W?ԃVԚ^p 5 7$+B&y]ԛ]U $w\+]UdmxaAqQVc;ypy' 6"vbS-(X$HΨǨ; JƮ[}ij<ƾB)L?U~L,ZKS2s)|D&1m@qiհEGρG6y ۺmn4I`Kh(睠Ac'î8xsIuP/k3VW${<&Pwy#_YU@ G"6ALbN[<0Q@g-_ St/9C2 ZBcP!3KU),߶ij+զ&EEofU;!7 W}S-Tv`#d7ӏP O$+2<\U)qv$bzFM_I@_fc/WUc'?܀U͙h%d[i7d-|#&Dd}x<œOĠ|WU8TĚ9E ;*Q;;n䣽Z駏 a~sVuoN^hU:RΐE N+4"@#{q ]"۰~3WdJBG0mrmKETUޛqǃQ`V(]̼ܠ8^˿@ *7sdqIGnhƃFj:njnh+e?BH5蕎fi ҒRL8r0={lKqYK0ߡN܈[QMbK˒$@l%.ޠ#>n6Er|ڱ{kQ̼>vJ}A "܉+_5#'ƽl7.ڹV%b18D_I VGkyZ[=׃އVA[ǂK VgZI&,3^W;hS,==btO?rNppU1A G^?ǯ ̤Q}f.@.эwצqHtCC+#grn@u+,_^De"fb7ƾfQT&1aWb辏2m4NqbN W R{TB;6n6dvRϢ^300g\zDgeP(MAeb;^('6J0g9bNPe&B%w%+cB61IVT('fiyCVpo.3PP_=6ݶ?$gDk> n?ĬdmKvGf`<*EF h F6f`WK$kjk@A!rrq[ RGkg;>، #>PIW_L5!l+=.aÎZ) 2gSLn e9]k)~ﺑ(W q.2RŢў*BBMH0o#5 u232"0ӽC EeA]sݘhbr"xrSH+d-+8!?k~kTW-`vœʻݽ@}2䥓;D/{6NfKV쓱7U7MH š{p Ȍ ^ Rlᑞl0ͱ*pX-*q[HJEՇuϠtMgzfZsȄF4/^28ӷ@QP>aau0Y5M,J!w0ߢ)TG[sf-WrmIbފ-\# 5@y,Yi;ܣ%J$OkVP-t$h۹2*XCwKR7q5tS19 a /qc>ìa4'oAp6>_d~ Sb7B/mYpC#fisuSSԇg]x-*%諔&̵;)sS[CS2+’Hzp p!, ?[(NB־~Vxom >Q4-AXY!80W vdz]|6iY]>ë澧*nK2~,:sMphްͰ̢KeUHmǎ{I̙D6D* ]y_Kc!8**fZcQk8^{ǔ|LM29' 3W⚩Iʳ:V)"1M:!tcٟ 멡OC#U @5Ҕ E'cqH?mGB9:͒&#ubb~sqeqC&Y#B%HG8bJLD:*&r5t`]?6⅝HgHosK*.N +_bH0y x'(:RU;񾸪$"tĘv Oqx Q?8L߷>h IOwcFuWc'+Sa8LNIuk\azW` ?IG6M De KLhe%YZFՄq>F翏T#Fi{|m3e [}wT ?C[A4g4}Kc^V Q =n؇A aK˅=&L]2V+]V֬B^0y=)wF،(헹ifGJ),+c"V;דall O1E5V@qÇU-F}(k-`3X~ٓZY e:]o- _sU;w֖P}{fezZ{+'q^A=4>PWe| k#!0iW{191` 'Ck|z!iD;m7cӱCSXqB}h#|,k SWGK^LUU'`LD b8 bCMPq/܏n"*S1Wz\Cqb$&Vv5~1SHrNw|uTR]ǐY%P7:Vaڶج蚩9|qG]K @؇IH&F;aI0)[S3OT-LAs^DLS}3m=CkH;Ab瘨,iW' 2lV0*ώ?$I"&@U%ag#i}uW;Y>쫰nڲ[qx28;fhCVxz񉕵АץD@1"ә-Ih i~Smt4A-n>pbVB-!ր*}(ExTd1G0:owmb%ߊs=IQunh6G`K?^h߈j#*.r ?r6L96 K?u Y x*Mo8+_?0jk<"Ptq< Й{ z4tNG *lS5aJZn )~4M4ZOqDN2Aq07r|nÚ"w,;xolf&k9ũ5E7Y";g;e%}c7Q%k 6 !~ʤ$%(waNXK~TzA J(M`tI.R| e.OVl0$8g6x0|DXتӒJ|wcd1V3)ȐIҗHt_P(/Hx /R.kbBo{9&ւ5 UR#WC~+7H?*i V}1D\ ;f킒"M?|Z`m|XTLE;5Jm}EC 60ǖ(  Ŕ82egtwtR]}3hJ)=Uhv4E })-'s;/l+k^+o.ZbQNRc5YAmz3.hj7sJHwl#da1̚# ? ]ﻃ$ʈ2l{Ƹ[{CmpJдKx&aclj.:)ԳJϢ>M(WVy +lA{[~0 m=`xe:@A~a/yk|]Xg xXig-$9$F Ev_"917%&_ [U%-f߮T)0hFVxqxC XRfYV|PYGGVٺxDrI*rsC~<i|0 [yPOORtCoͺqRz@SO{9vIXU*7%? Cz!tF8|NLD.(|v=0LpJGCjBx噊n2\"v?H9/̚@f!xY8HK<=n^14@T/pfS)!ARTK<)ZCyP?bL7J~tEG". +@)y=U41{pQ/b첊|0s[p9(} 3o88Pq<H>uBMU6& f43F_*kf25ErVY {_ny-S}/f_FjpmIL Xc0lo29ؖ pXcL`UJ@O 𯍊]{C۞ >'F6>FyVi< @r gyئh+W`ߞQJtFK=:O|<#rrR]S\ds R`{h$mtGX?^)ju2'p dycOљi 6W2_+g=%β╳2}N:j*2/\p/Rr¾d,S00z0WnorN})djQҐ΁T] y!sNƐF[7_tnzNK .fY.[kKx h')g$,#?yr>o1'3q|ge !~n <̻L5ڂ{h@de̷Y? 3|ub>Ft3W@w w|3[/w^Ow}ٛ;m[w'Ѯ97Q' wG[:%xEpܔ4Q!B1fq>=9uvl%ӼL/8~֣ g> gu>GBƟe!&NVt]%B<0*oѕ3.FI4` ZLU r5Wי# V §?~4C6P)[=5';+AKFN} '.Xd?D}_OazL 趲0Pddv\Q]+S2ix+qn7_NPr|h) oV%H 0j&~ܗ2: M 4@X-D\G3 ˒5C/ȳӀ cc%Y"Q8k9E w#: muU۞hH$nEЉ#?7ˆ6,kD|Ê쒂Yۧ}<ph 59x|@)n-\QZr^zZ>!/>BkL1QDFdó6`^ꆽ!=Z%r٫ݎ7u_+II9(x61;AhY.qvŴ\C0>Ji>`#5Kcb_T':x.˛6{ֈXHk,Tg 8w)i6 @ekN0 +xI>V8F?qH*VNm^??-ȟzߚ5N|EפTԝm\Ղx۶&0 j>f#Ƀs)W"GX:FL$|VLam@Y0 Q8̈́do&PRt.2u82:om*<E $+U|,&pYT={%rYGNDjY73915&O;C^uנSъ;U4Jbbm폚CJ! YT&pV,R{g٩HMޑwק2 ĭ5bnMCbiw'Emu,afVS}y{qS1j\oDVR^~SO "rݹPEL?$Vo$jȃh|JЀAPu^C0>"dEΐcp$0&{0WKjYٴ1()vG QUYsP}Isk˵uJgO8][$a&2z`݁ם@$Q+NesYln1(kY?zH-WyES=Hw᜽6^ۓIQ4& 9- pέ-LTHU{bn|'LU4e=qBĘCv% /D $=yK(=T Cd'uzNP۲h{H80UB?R!'ZR~nCV9\R3>0Qb+R}>1 OcmW/Owp)P$w_=֖#ۜdc:oZ oJZsH㨨RrJx+4vAmLHYTċ\%2WzNĝP8Dv KdF-E5EM `^> ><0ײA6J#|kz0'R(%d5;.f)@tOb;I‡5^e~I|hyiVᗮ ݥ~]Z3c C{@mъEzd~>x8cPΰǠw#ucCDAAIf.3A>+@FZo"v8d|踿yKE)o`QI+n{V\{CLbDf0Iߣz\Ym-3)"Vy nRPo$g[<0&Go|J^ @]M'˟Sbm Ơd+{w\+7rfT19!ݣ>R%Bz{]0?5<|!70IAJ8B$#`㾇_z $y@WѾ͏uK-ISZ7&ua8M:ݮwye*١hPKjVA쁐oW}᯴rdùVi:lbj("KكL b e\>z 1%)b3AQn0ЎKfvToX9 þeS@p!Xėax W. QٸRCta혟562] pIm#HW(c:#l d,1BĵsSAy+v¡ȯLDcupUߵLOVJJn ‡1N'|mb ?cHgJUW}~Xn _27V%D()ŦVN[jI)XC%,[$,|K7S87KIIHоÅyX0 ,3ŕKSV`ceYc=L'u/ǁb$ܝ;ɒA i灉,JNB9#b ?71c0ҷ<=b] sqxt.'tHӤR6EB,fcgrsVDr;*z5oUBҶ%KnaιouuJIpEt$ alm};\9zuDtd)d,AH'(ZsfY,.=$*p˅Z*x?8x1CAUr-2wZPu#2]1F tdF(-3+*Ƣ[ 9V^p/ if p?;vXe/1F'6?I5 L'y+xS4Ä(v(ȤM#jNJEԎsHT,`oԭcmo"~CEC_Jb(< f<1 7IPd {4ˮ׊gXXM8P| R~#q(05tZQma#~+o`J݅D6߹?f&~8[Ų:Έjds޻w؊p^ϳ(Q/&{*)5tB ̘Z(>+0;X22F.`a15\E_S0v})*/mKF xNC2V wGPme\I^+dB(<&7]t5hI0} }іJ$ 3c(*KV+ _$v6 G=,9M5s.Ɉ*pxpCpG>yǒLX/&+ou,%:ǔD՝x~g*NY(KL*٪ki^4ntePa)TPO<\C X=_2tڱ? Ǫ A[$W@(\p0fc<^jL38`{ @M&:A-?V}w"43* 筶>T"Mg%s 䵙>hi0B 1|.f>;rrg0 @]% kACA Y\b+HWӉծkN6O4 y! '^V{G /KF:&n3=+n^6?ٔ_tK W$h~a+_kYM}u}ƼuzPZX9Pl3qƢN=D Ap/9#`<$=?7}3 YMtN'):`hF˅c}w߷=bI/ٸ׋wJj~%n]qY/R{4`9AwO# 9sƆY[+F^PM]i>RGnq4$Q&>a%mKm^ f_U/P=GYS!n7LT?hs'*\IG 3de5^~v7^+FG_Y|6Ay=7M_Оh}YnW>?M"8\M0ThK}S9r02>3֞@[OC{Jnk TeQxIF/ڄheWue&ͭQm6Cye5חWݨei"}GҤ2+-(%"tJ,$]zZARp8r\}`Ƞ&my#r&B\73a$C9QWIB]yU)Z 㬛8%/ 1nѪlkD<RmGf>~H@M> W!F:&mL9db&{u 4^.zTxّ:X reMpwjJ;:|1Ӎ; ZP;x~v&n81sy25/C\XedFѧɧg!BG<]L1Hȷ{ҵ(҇,;ooT~!Hٰ4?Mf^BY+[X+ֺ:[ tV'bn/@9Rt l-{/r1?^Bjgo`I+e8Y9D>w^i5ơu&B9ΠmBuC*RDWҙ̫_ϤDB2Zh1a_>E|0ōO2:s]c`VoN0řgK*qS}G|ؤ ~s/U\z$|+׽.(lmyz_,̚ۉ;02Հ/z_ZABiXlM'ژpeQ3nM4M5 ig&NYc5x&@rةkåx|oudNyҦ!a(L:FQ://.$du]QF'IcWYU1q RmuQq72׸v!PmIܟWEĆ܂.+ST*vūlhk0D>(xNπRi{ۛ& k=.d|\\(blTHDTPC(FQԚ{bbXNM t_=2Vb̖[)h?l7-%E1 j?-N#ˑ<B[z)a5I BGYBR@G/aO5WwXl+ɯl5:c1ki?5"lGJ__fܐ<#!bS4C8|FƲ$;~e8rvYL,> _bݽGVlvG{?@@0'}V`M1LW Up3TP'jܷHQGD9S;bԬDJ18Uq0s:\ ցň* Q |ôsGTӊHY;oH1 Txj7y:;P:ñEu@Ґ!$``$gum'S1K\24'z q@S=C7))1ytߨO.f&]u~F ,۲hN}geޮs@xz9v$He=ֈ76=k/Ȇ(K X 0Ý(Hf}ůy6WĨ-&yCv!7ߵ|/hP)p_7`H1KOi v,r緿K.L!]iySתRte3\!@;ۛ!Um{/t{`>! IJ6f4wipreR4b%*]&_m#;%ZVwf^*L],w ޟӞ%{9udTՑgy~dwau3O,frð"ȿ,(D`Lm++Ca aZC P)! Tϗ66q) a-!ѯ,Yzս_t/"-O؉W=AW5#(5 7φ)a6cVAU>LwY5ǨpO6e]b9~ Kcgh mE5C7)t xuQxa[ϊ"J =YWcnWLU;Uȵ35(V'>4㊲J,s|M^Efj;b[p)@qr뱕sq=bu-iI0gjpVp||W4,Mf6@ӅvE!hi;~O Ǐ6%s#(WJCiz#\1E9q Fe^5 dt_L4`m͝_K?k/ay E O%R(eFnҳ2z*qv5HD8.uw9z5WKX<mZvUWyؼԜuK}UNwe֟`d&IqcXQiZ6`=Mx@sFŐ}+EĨ]Rs&X aq/|h`#\WX3Z5)X on9uπSl T1F]S|l,_8U& /o>^4sUxNy +Eq;fH:69bxQ('&LnU 7k9bcqb<֮\a誝-6]2̷2̯B*bF)xTEJҭhL ֎=a.CxWG^XMm™ʞ R:1rJw+&Z3[DXx-]#N2l6#N teJ5`SSds?*5YRoSf9zG['0_geU= EnjK+]5i/)<* sl(ЧK66P'ӓ:FY -.%F:ܙA!Vhֽt,XKcF׎ 3 t:R({H=c^ 9(yzx8ø#OiCH16#?M`= /3jE=AxJ ft|nQ9n.7zm 0!v Y$X UBTjŨ w# %S裎A8%YsѼPn8zbijdM3{eYAKlǁ*a@ύ(6'8˔H7~85W Kґ,i˗e3PD/ Ne ,Wud8ʩ_!'JLaZjnoA0 ΔǺLB/P(]j)+zMm HjMzy׋9fUwd@޷% I,/fKЗ -Vyyr^v-m,\B e6qV:|z/nK_N;.Q'X!c#,M^o3K "i0c mm9rҜ!T'ZxŲқ'odhڻGA5>7k-ajEg7<ٽ5J#zd39a|xA5b.ޤĘ* ` 4( D7Che!o-?i(V\,˄,GɯsD@Opfg7o 27F|P컳M"o27/LPYlOr6L&&ш6`rrz .T#*f rCVK(#qWb3J"1Ke#o'R猳J@qH;rRwbz1w~,$o@meVw &R6~FH EXEVVˆ5?3<%D%c9M =5i2v sUN9w-hQ5}(s>-̒KPeAZɍ|kŲc j̙i%LxXG *uE]<_} Pr:INFk''񜱇Tڍ#u(ɆD*OZAg2+vqTYlJCLeR /PyC EPg܀NFBP`fc 3Q.o$S#)hOa[ɸ9ʷ;]xU /z풓p&0cuEW6(~ěWՌ@7^fNR,gkGЂqeԑP}bu XJё|R:!Og aOt&*k%=b2 f\<(>,R0Y8ckםA7S0'(ZR]_[mK2nB6}\ZcIbsUf.vnc"<R%w6irH-N]|`TC3NPStAo7b=5y*2?}%bHGQCIG85%%\};m}= z9P' [ve4?_T3lJMw 0 G6>]cmNϡ]-g(PܟGzg1ܵ H4ke=OCc,ϣ.\N#Bi'OmN%>1}~HI"%wj*er1B87)_Hz?+(&"n<)@0|:ŽAGdV>$%3܇m@R_J_(Ir#~{Th㔣 S@otWv,gPsQX))̝ Tjl1њ ^_&߄3yUA88pzQks:<:p~[f 5HZB>T"lKI2$p<PI:4<.?4GrEGb;3 \Xy?Ѧસ#m@KW]!O>)y6᝔Q3P0By&dsj[ 3~p`r`&ōsIs-)snynm*\܌HNg\;c:8:u#o Ru^pZhBS"L* 75mAK>t=.1ސ*[o_v*\unwq%'JBس8ySb0~w&ǷP+TlWw9 Wt~J>z6 Nnkcd\"يo¦xZ)aB8>="f"=^H?wz Π~ \lA('A!U iٛZc_gqrMZJft| ۰3P*OK+gs ySQ*Q^X:%~OeO>.~LG>NhlhUśj1CIZɘ?ەLsws<'8.]d$ԃp~r$>cnBj|pwv5߭Cۖ}6IZn×jR:~[CwľnrV|=ǯ|ސj" ~E1J&cՌ#aU:P]׾(4^DܢdwozytϴG}ar,vOB16 ^m*l?giQtaƵ@Q͵l]nIl\3|nXoD1H*O|Ȳ;6pI# Eu^7d6,峌:~Hv(<#x6!E` ޔcjBLvꪲ ;f`ʒMݘm"32?ɱ֧&uz-kzG+blL*I ,&LwH foWSsWk+HZ+~-qj7#N(LsA[0[XZDe *އ)}Ȣr)!PڰNAd>m쇧Wu}ՓGN0[3`3 Bϊ3՞4Z °dq&8xC]NPXmN M9( KEo%ͤ[1y%]oöS:hLgv(ݧ:ēWPC~o@TwCs?Gs3P c]w1c*-^Jn%ȷʭ'Kȥ.4V(ɮg5 vH')_DV_z%}YSw>٘4Bdڍ'sn6u&c[Of"Fƙߴc =qK:*-d2W%qOJҀ~wT?C?FgSB/ HǮ,QWڼ}2WYȒ2 î%`Oս:`ɍuX ph3>0WV #Ss`ޑ +s T+4u?gQ(jKYQL3}8B {rq<=d4BeNpj5Ax\093]Jl&0ԡ}wnL[u7:\ތ=DJL9s5H:s,]h K~VЏ!^)~=Ы>Ðc!y9R(޴bWFo_[uUlN:k ΡTA* }cXf󽸞U_Ӗ3_@&ry(79 9LB8XgƔ&K& BAր"j Qb,hߪ%_c_FxS  z ԑj&/dvI9 3&$e}Ł!#I5TZX?U:?:7"QXuZ=o'sTH 1@$n9lV-Dln~\o3պ#?.bP!ݬ^\;0OB Gg8 `'}`VP4,d38s 9!c.`HG',)1[}6y3y )0$oӊXyc#x dCBQ{0H]M(U_%Д:bဥ-;:~u| j48]Gj8|3K=r!y,$u(IfIJX>ma%c`[܊# 9K%XbVԵz9LĶ'80zy WŤk9Ԉg!e f~HTIhF5md#;Fς'g}T5˒,/@xCNHw!yɐ"+OH@'K8fR}HѤ\4ʇmt?ISW]wornXƀ/gA*X}I'QSnQNbh TA2*4 &z:,.}{zHΝEof@I~m&10ӴjkMujwFb]Q' PJD˫W2q\ QG:.I'id'dh9(V2p; 6-%EORNrk :h^5߳JDRMQyugq6ouKyz]DK 0&|gK(`Δ\R ̫b̄o$C /QҎy앵P,pFXuvOc3D1E?.;QojOmN?-V  u}#l*кYEʯǾjra\F/I%Jݤb/9iET h8ԑZ皈N:x5(-I OmE"cE:yS;1YL6ҷm1sNxauᦸe _f" ƿZKlswm #ͩYl J},C23Ua?M ,G=Mo<7./ o-F@~ێM;"fU5 ŒJ)Ǹ&9ps)>ITwV̆MbvV{J0UNZ( `U9nZct;zGR ’'BN@C%=:䬷Qc\hcv >'T $'b>oF3#ܚm/P?σKoJУf(';Hؓ65rp=(s/5,q2,ʬ4 k'&{s0Bt;lBuFًH87!F@~74odF3gq$"{gx^i Zq< #JƇ)v ShaQADGa-CBgXHp k/Џ&y˪41 %Lj敨66O~w[hѲdX_Sϡ |'Jn lA yJSߝw*-q$>RVV$r aBW _* 2x+\C_TٍtأadCςJMnrn9S#5a\i @"\\DVn {Ȥ 꽳 As^q$X WsyG Dr/| ~g&> ZQJ"}UL3Á?qrXXn.-T{k9`/d 5XEe^T7]}Q yT0/spQH !N.BzJ9IQL3ӛG M ?co vdCFdP;?(pQgV-}3,6_d B qv^ s, /6y{wu`#yA%4ЗY& P8q# TLq}ɁOGWJv.4)adT]Bц~O(Q')t,6ة n,~7: Ш HL?PJLG17 $;wx1V?7,9EʖPG~A}DoPZg,n6"F d ڗ߮֫m=/"ʂP` /+":6YBdaESe0ީ8 )G(I hP26ٷ&j)=A}+)R &X, z5 P{\bӱ \SJCwH&ו;2M-ܓgC6ädU2+c \՜m,ްS.IGܒɐjJmEPvJ{AS>_;MqJajvQ+`󔂽iVg~JvGⱈ)u/bg~qJ- .k<"Mb]){aSJB5/cm~Y5&>Р>ғqWZE@uAϩb.i@&Eg(hf=0:JA 0 ~D|}չj uj7nW߃ckI6yzHj??3:5%t@bb<3. ^9ݐï:^WUE'Ic7mKrb[^2~a$|[ -PSARc`2ej>ٙk wm '/ PpX*F{uYt5鬓γ{:̂l4[oW,Y:ߓ"]t<۾5&kOf &/rΥ|WyG; v&H7ƚ /J|yh p B 3S؇EbiA 8WV-2bTzP \R uETYonObR} zC|q5S48k٨,_MszB}ˈA+<h\ufhN{ ]͇+-|SzgIчo87Ȧf>/K$?DhŠQuAħEm)pk\>jpx'D9OCcfiDs{X4h|T,%, jLneK5T Ncnz͑-04'1A6ʨE 4YTT S]>13:$4s~֯d H'j} {C +;ل33)ފ-KE#7Zm6{{F3QF8 1a=D]/2Ӑn3V>5X}`PAs#S\m0XW)Jp6x=0"5653Vuڻ z}z(zdR+Dhe\mZ;c[! QT6<K; s8`mQp64i#z8 ř~vR,fY-򬭧*uJ78~O}C̦y }׫d@@FJxJޚ"*7(O,܃ORrDsg4t t:R$+tګq/>nySz>懂fXk#TV?|Ѕ5[+17vPgU=/KDDzǖ $"&V0~mAyKoZy#zEP{гku75"SNzn 0P(7Poi}V53 '%>ϊ- 7- _RahWrֻpYqԮܚ~W_s'׳T=[ ^ѥ_G,ZOV[k몟+ZB 2l`0ۡE4AEhSs>Lq;>c&l8]䚳(=oK:'%26iR }"")gWv{}QnpZ|__bݮhto^x 缇9WӘ3qj1["KT |*Us]}^wZ1uhx#;lh*5iT'D%rMAUVyvBz1.|۟1O3a;EQJTx|ߣQR5ߢR8&~` OVq`nQV/kAk\zFa7X~t `Vc[Rɰ[ئ+Y)hɵΗgd(vaE'rw*:@S yA@͗]2C6A7#(Ah?9Ήw: s,_얎~4]1pBvaWVqzh+l:EaM0a!j΅T>CFʡtcdoYp/@JQ"3/M5G6*փC#LPܓx,%'| fNʯnDp}z04Ort~St~==%0)ɩc!vhO!vv8]bU:wCPdp/ SOq/BrJG ũQӍe2(/rD.],t0;Jb~7T(QN@k,Vko϶1[jmv/ԖPI =D]wa*]kѭmju(Zٗ޴NKXcQ?7'4$`k*Z!O% .DC Q?ܲ^.k$B!v؇m2]a qWWj^K;5hX"RܭQh'}bɜKpHõ굡4F).*>-jgps"Z1o/eSyQ-wԜ>n|]`rRX)ΨPURcrǰgI((/7F#ht:Q u2#G^ZDJm[ehC X1]89^aC͈i'2P[)00Dj$.׽t4W:;n=[\MMǧ"z2,N.bԆLx*x7!IxGzp.!>*:2~G`{V4:6-19r+wfPuBv.O7"qo[Kpv-oBnbr;%9K}j[B,C@0*is̠܁3i?_/.ΐo:`-B ,et-HBǏ&"Qр9ٯ^`N m=FZ 7R3nֽhı)ԘD!l#H:EK$En%ܞ G¯q!@ԗ}ҎB+a;M_q3R>w'@1c8U# sI ?3s>dH=Ӗh֝sqϋ/Nݝ{dx¬^3fO g-tQ\Zyu(/T~ܕu?;!sd盺)vʽܚb(9Yim{mտU k=oT   zf[< vSad]Ԫ t糋~5n&Ug|A(sׂOIf-<ɘCw<=)0<M#A Lg%L [9jg;A aWM"}[!XwB&%œ|G/^7Ĵ8gbfAg„>` \4\>3 5{EALo4ʄ }^PI]kTf^eq!'%RÖ*KKhy“.g\քbupKݭ]iNVbV.|1*;q:{܏d7 8G SVM Cq2% |/}q#UQ-RGBLMW|QkEP:Ow;g~ytsXrSEy ,Ӭ@Wd.0, '#Ѥ3foJVHIe)t"e#o 0%M_6o䱙$ғ^_PQ3lԺٜC- [@vWkjf*"m8=-paPFly&2DR?Q~#,ץ{{L0@~J]W31wpVʕŊR(T[29ߩJ\LwǦOI#sI08B; @l=hZKu!*NN֏}ɥ#FK-ԽX ,Wn?!JMp|tC K̳\&|[!wWD=✬[`$44z_)pMu< #?)Dd & tB (4.T67ԫܒtvb:8H VYbe-G SɖLv ͷ^rk ,U n"(;)2& JL+$KJ _,;u[ hq2xxgmf^I^>X4D؀ "7(ZL'yl19?S! Ir8*ۛc~0>'8z7?hмՎڲ4LQ ɤjlN|R3OwBtM' ͛pL1s9a?۩ZXgJ*5.BG/D9qHH QTDiIP=A=@TgGhcŁ09w-s(kRk7 "90`KfK5dž{_gsYd7θDan@\!1w%)uwms4q_e[|CS{bW[~g*n )囕Y 0i߱BHt*`@m 02$3>h;ct ]Դ 15*,RJ6, 2D%ŀt uxBY֚d< >>|M/{BfK1m6C\a@ӋE%VW4j3>Q o$d|kH1 E$ 3Kzj:ƜbJpHpuVv}QVouٔ:qpAD;@fEgtPAoNΣ ؜U}UGCʑ϶:2OFGc[/ÇK$ġix܍3ٶϹmJDMLud;_GN:Vo1Ų|ܫ r?߸f_J# M9Ir*ϐc" tDC=ú2/!TV A9Aةz+D!e2N$D;>ĕ9*1T n-͹'Z.˖ҒK/놶5R*g3شtGO[kIX{b&cَtkCV#Z. (1m!%x!bx;{΍-3֩tef7e~H(EO~eָ/vAa1SBONg*m>!`H'ClsIr߮L/h[+6Q<kx/Aſn:M=%+ V8L~ߝϘzZ9 AIs}P$33KF vRAV?O6!nfBe\ @+#r&s Wf:j)5(aѩ~'V Hb9XK 6<҇dϞ)w1gy ;Ou0bk1e E:jߝ[rgKu;_a8I"OtPwNp88"0W+q"#l]"_RsѶEh5DI .y`AٺG]s <T!ňJSd(&^ž =/`sp7gNfjgpRz\㶄}69PnIӿ(^6H5#b3mRSl*62O&EB"Aǭ{,}8M6]VwȐSJjH-lR:1+rn?t> E0Z IS"F*%c.>kB*eUvQ1!_,ֵ:8A7y"7zufeu}{qI! 6 k]R"0!Jbˡ7q6C'`tVl&XeKV}L .Wɿ {BGam0 X\X~n`tԩKAfXVB3 l8278?jfŀ&%TLY=LB|96!GMDqxϫ N.0ޗTp#+p)ObcǦIMŽgԞ:!>u_^]P~) BdAD&6g<6x[h: %41\^g9w,~NvZN~D:# m3dYXOakXL9/Spw!]^sGfPV`5*(SJO4mVn~^_E0Wq_^1^]𛘷 "2nWDZdO(g#=b/,x.e:Pbh =͖cÈU0MVn9'f:pfW+ejroK(W$ aZt6QW,+#8K:7ORGk I"-QZ϶C1u>:SU·71y`Jט_?(,KF}5JE7 LS(b1 )('u589cg;;]9^'Mّ;щ}'-;.n9𩷵m[zb &I@YP{2t8DStlvG)tmM9|3` ?y)\#2|mZg001x[\+O -Ks;w59UoÁ7a(4Tރύ~<$/S" 6yiA5"7ԓmEܛw' u5b.3I0Ĭ"[`7J{^a돳,b3~ޗ +t٩p>ĈbN4{|CYv&sVYpjW (S@Djb<϶Caly4ֱ XyrQ p.^o7>D"Ͼ(y%>#j+28on:@uAnFkp#2 'n*cP;ru JE+IfW08ޖFVy1!|18jTxoˣdSf@-mK/mj,g# iy]~a/o0'#lWOy, )F&k@iwcJm$dsmX3q2!stIB3~vus`u4̠l$Ϝvvm0{N"2vC/xU;)bdxs,bidN(s@.ݛ0;ιBCq6ѭ3bid ٥~_1%0u :QF9\b s 4!)l+"ߣ5LmFd{;,.9NmUaTmURT"Kk֍??}v eSfJw".msae (.aʗ1ۋs~lӣnMo(XW$y-XQ;je*/I2SLY7ͱ}T"js doCor 9brl#{8dc3mKW6,(cp_%Z ~g)T M%g^qUG7_t@ͻIyWN=dOl;8kaY%MyRأvV0@cD\&f?|H8F/EuJȥaj9 [~ry؃;+efT[$q jG¤{+ú"TĿEVԝ@Xۮ[]Ӛ$飆]"p>/qإg`tǷm98E6ʜkgicE w@c n)Fr^TRjy F UM &J)J24 U~;.gH r WQtOTi_r 7`E {]4ooL=duz߀^K=n wBݫ6(ɷU:t%6H#%O"Ov<k># ^WۘҽDXZ45_rV>J/W/(d]}ϋχ"Ai )ݍ #a!&.EAe ϲ@ bˍmhbܷ@vgQ6`>PskD$"S~(ke~MsWp5Ub%j.rp 2h B.+JAz_>˙j!b4r'IǸ/k"6d+ T:4O "ѪR 㭯lX(٫~3sԑJHқ;WD-'}PBiAqIoɩDjT{K,#o&+NeJepL1↖Sr+;q|<EO4 'ͨj%+j ; Ef⧑/Uqi lfm?ǎ_w.$\|9< U RjQi_ZT-| ),:g b6U@267QNdWk 7NM0m}0\̎`oB?)Ss܋(Y:85vO75"#+? G5i?@z5>1Yoެ,]%TW9*,_(.A/ L ȣui"qh,WDv[:h) moK,vӣ III{Jc̕*d"u襧Dr}k 0hnuYEwq9NhUZvRðu]" > unWsKܽ-AaZ-eT-C˾VMhej4J0Z=e^嵑In7w椒6},[FŖu%'}ˊ=K6h苒%Rn S7!JL&ɇpשLۃL&]f(8QhaMbj7ڏ_ hdyZ' [kfWoP'| I,L|M.bfn![M|-,1`kYߤmCOGNC|'Qiɾ^dq|y\RIh"a0-o?c[-WxUf3KR|u2J+- Qc{4+7`1; h^oFgQ!c}-3IֻpRt?J /TijZ42dQ,H\ચu,W_H!.z^s};"Pm j%^M ;.I}sw2#Q6UBIWT/cRq0y [N mh36i6 UšBg/ ~?+'@hztV?6 NJe!P)+2 gzllM 媜hYn⾛b?MA^Ko$֢ ;HLO罋SpYč5aX|3=lqdlgQݡ/{yH L^mnTQHIʬ~jOzIdETϔ@=uZ];]&F-TM0ԵvvS(i*#F)тA:hN :=P=?;`6JA-0$@6)J'R¡ k ys:m) qO1 =XOyh#{1ҋSW6Ђ/- @meen4+䁀 ™flNyUQ*5e3s0d3+)egаOo P9vRdCxSY[hD2?A/(VwXW0~sVPq9w V]YM ,De1`5{({T*kZ$1ޫMuEveȅek}o-7 ƝUp*Q1R:{4 p_lԠikS<>܀W?}o" Dӹ sA%ae 6|u(Ɖ*4b4zpMSt= ->#ltY3ןo Dz.ViJzlZlSKl/Znj2f|yDrX=xcD*~Uͩ✾ʭsHRȷ]Q BӊSq9Nc*`!v:N1\0&ś F|UBY=byXH9p5خQ:"s$]9]_s&b7hߘ;QٿOGE#Ty$0wl-9ٲ0 !Uѫq&U/$$ 3˞J('@>Eb1UpEZV_+hf:͋X7LI3Hبt+4IW KcI 6i膔ٶ(״90tAFD/zP"aZ&jct4R#06DtȠ.;?'Z9qfӻ6a"mDi)s񞲼KҿBI0gSD\ O6bhEdbR ɦxFʖ#s hH*;x? 6ԣǂ׼牦*O܋~zSr&eGKzC.1%_;grs zIO Q+6 -1Rﭫ$@!mGON}̺PcI~9"Ƀ_%(8lG&{f}4qrEiֱC|F>l.x -`t_/:ASDAHs%qs DNh16_K@?C&lx;T>ڹaZ΅0{ΉV͍Hk[Bu!V%d\/afE@?SeGFJq~}fr}a&\R@O⸕HYHLY,7dqSUY-hAkY#wVaj>h,?#)%Z ޻W9=ٺ$DͲ@Js<(oHBlliӢV tsLn.G7T͏1Ya_t2Ҍ 64^XH_>T5۰ Z5 Iua bQgz@KJ9!fT[)oH~ٖA̛O[@KXǺ#f IZ=,d餳$|>zB/ *qj연ܩ:с\8>IBnl a,YEqY,ZUnߥW!ޟlO0àzKmQ m<%AYI 2%(1dU0ω-.Ԫݝ]\)gajdTZ/K*)= 2~R-j/s25{KR.!t8Q7N~_ p)"+kf#W\uNOE:+6:́ɯs tt*̑n&c#3r1x/,BVԩ#p0ٙBnxޭ E|d+Oq?Æh܂/гEtjAa-T;7w/>QiCP@8,+J74˗9']F76yTp"Q<`N^ہ!mvu^xm_bSMlY[%6r8y᭴cl`4EO[{Jo*yܟFdN?FRKZ1|F SwRٲiA;$z4 >LLi\dyIkE,Xw<6Nn.tF"#H`_ܣ/5n>^}h.uA<#=cC<2b=w^.j`@_'4{Бvv.?iY>U׺+y$WU/FRTZ?/+#z*F;-'?ɤ:ɦ47؍1Aч~ zeXp܏,j?L6.W_:h<I:i-!Bp1VSdk\]]-LOW@o>P{)Էy&* `H}W'{@:JۃĥQuOfWepIzg!YʹcSR[ 9궋jJ)g2Rt) Ir0jy͗2@,^ȳA^~<ʆN'/AcW?nN]SBh ʣmXE{ ۷uҵ`>-GтeD^e&X3FTk[ƈ]SІ"@T ^AYsy{@ T]˙I)c}t낰qUVhS a| )j2Qqc/XH^.Pu{x(JRÔK튫jZXRϰ[Ay{%t"IX]ܒ([@!H3a-*{ 09KAg ϼƂSh\e+}OB貕ˆx0or-Un6n'VPFv~U,+q 6$QnuccLCyo@g0%!ޒH~ P:;@Lrkeܼ2Ϣ ,oodv"5m|/fuju|FQM!;0ãR;.@F6h(:yA?|Jj?>, ڀFЛӅAL 714XEwϐyQFD-ǬBBb֒6aFsOI>Xdbl[{xcL b{q @ro2*]Tɇ:,si ޒCTpuyM:8K> ;I !aH(g1^ u ~pJIP,˝ҩ~xjs5Gߗ]v\$5A[ÛUٷŰw$rxXv$gP15 V !떀F+ҋƏ#VhLBN?q.hC1 qxEr-8Tk6+14B/g0Ʋ-m}1nO'iynI+&E)Xrz_k% Ǽ׶5{THނa1.Zߖv+7_s}Ġ,v1#7N\16uT7cAflO:OlA'n{ƪz#o^=^̈́ZDvC-S~L&3SRʛq2#mBTTvQK;tFs5s%51'9(?Oז&Zw@lj".XخYSJڔ@,cD8ʔ KHI?7T&h:dvuM *H>CPA߼oU<9}h"#XNc.I9_Ƙ~lZNh3*S $U:^,zG`gcR9z$_\bS#ՆB\._}fWG@=jLhNwM0l#pz[EΖ"Z ] t>-oX..z)k(`55&0AlHW'+MJ^D)BٓLݎL8_4"X677 xl@GKb|u@g h$kfҦjQg\&+>:'b02_tKh)B)w[m5zogPl2N8eㅻc_#acP55 B Xf)h*|⯟kFVg j P`?ΦRj앴R#?XNpfH ;s{G_ `ϧ jRk/ /cӬ=p^e{B~d~LJ ?BtX$KnURd~9%)da'5Y%;~{ڜe>&E*KgBʁyk Q5r${1 V0vnI/ź -ả~.NZCh5S싟U>~jAȃѶ$w.bփD$|҅xCW=enATEI=:N?&#K`Jnb7e [C:BSFm 9u('Ac$lxPC/ERAJ %? -%чKS)ͽ#mPijwxfNzy<{y$mjdb^v6v*"Fh7> <ーu!윰V(U=8׍1iKT w~ڜZC!UqeiHGy:k^>#usx,dZ \`&ߍ}C#g|#])XH=lh[T|7A|g>mԌ ݵFfxKlYIHр:Qy.[5Ap{jfb*w#Eiʙ`1n4JeG /SDžU$'-E7Fv;s'Gk02\3FX R֐/9(V/R,7ݖe@WЩv:斳Ub T_4î9TIsbk$JI&~x@̷)ХdYD]豀LVgܖ'|ֱ(D-Ԑܘ0c ] T yC]b{;l0``8׳IAU2?& CMnvf&/H9g~]` ੢; 2 Nmb/Wh+$q܈PeSGP!nP$M8OPLMz޻jHscw ָؙ0;ÈdmQB*d:,-r2=+5Q%ed?r2rB׵)0G4Z2P/<{*S|x{jҟи o$.pS>;1`e}0!e tmG~u=Ҋoǖ-MK yY3hҗޙXy ԊZp4^rHߠlIV ϷɕKkR.3' B1ݬݡ0."ԇ'q:?f?QՀr(1Vw/Ul<Ԫ ؍lIWv'@f+W< w/+248FmQ@E-XO].ǿ\j'r`^t4oi`l4Il ka^K`uas:δV!qYҀJDs5b׳m >87?HLѦyo+RBj?Pܰ*Qf@).˪)z 5.ؿy}+ΕnL7'E’=vof%L'~lR, ϐ"{>M$.# Yw04DޓJ4`6nӚMOyxiƒ5? |ʱ1:|mJT( ]V碵 Q3 ɽɷb5 } lvղ_1$z8(BQٕn;%8S@WgbIq8 ⚶F畟ϸs`QD\ZbhppI|P39ܳ]} Ò{2q9zkWv|I'm>i_9Q\hVdM|KoĈ:DeAqFߑ 'r0Zbk6EP򍺶y/x4DW! MvE*J5T߳"|\=ph#[0y @I50Ľ4 I[sv򶓗,'Bɯk]ciI8ӎo72%|?>gNij1ȰZE=)_Ɖ)e/' 8I&?0pS_ :~`ޗ7f՗jjH9.r6:8T5_J}+j_2Ӥg;8jU.=%oXhÓE"«b,Z>yN}Co&Qu4b,(gAStl{13ַr^}%Dʭsdp ً`J Le4Jk+_ ]ltpC]۬a^ exxsqJ.hJXgi9RU3t4ؑ-}v4/+M]f`aTbMrMiD\ΡO4eNcfcO9aڦf+~4m;E?Zv:LwQ7/B$/KI~<]k;l~'{l2SYN Gy<[pVP$E4 rj2K_hn`%i+pJ V|T eP7K{z^Fg/F@+VA"wGU0X6FEUITJ@Pq i;ӷX{ا=Ѱ*F,vI\\҈K(U-rX6_a@s MT$o{.Ssju$Wit%dD:lA(+%(Mu4I?.RvrV$C.0>y&E9I!MAN8puqyYl¼WfՑRҷ_3UU+r49 3w㮝SC>%B ڌL֑ ? 5&RЍ%)>2 o9w2ٟ8l,S 5@Z&e>RGTk1zբ~[?(k*V!Fu= K4V}O ~}Od %;¹rĩ[6>WBՂ=S,܀KgpK `;~z0_1*.ت_30Q%||nށZ5G5s˕B;! T͗?XE3#zp>y>6`̀gsV)g\@{Lm3GP|6aQB:Q~W5tŜ{:ϣoĵT{?27w̉ )]:@`btDJ( ̬|CA:Aur75^m_ao@ɩG26-QdM2n.Z`a^.CEOܿ,b&烏B:v IUs^7[A|ˊ)YwJa=&zHuCjy+1<;^?DMPQ[5[={[ ,@'5`<81MW: 5D4̺1-RTaؓrZ_"s0b4 $|, K=kʹR4pU_.rLm;M xz>Gܯ&x Wf`dW46 ԣ:hzڬbN`nbN4tcCӒBa,*٪4|jÝ{_ /~!'M&q Z^gSd$&/2Vy;MaеCAXV,R=um#Ge<6FU. i򸰘~xb~d -hzI?n۷qA9& "c?\1kOTIEW,Q ֞rX#_r( vGZ7%Κ93 kcI)k"q>Li)n=0J[ip(CE{$M?8cm+0𿶆a,מ:,W qɗi#p`҃%UCKG+y9YHS*ePQ͟(T MUbcD- z]7.6TK΃s j\pgr4r4,Y R`w>*% 67`7 "b]Ũzt`,!&R*=+Bic囬y 6F;f餋2 MąMe͐>~4ޚ N;jn&,oVץxܛ1yg@B/m2SjN) b!RIhIqe*xYsJ"qAtR׷ +41&V+ P]i# &·I⋟^{4@7Zyɇ!y !ٯ;Ff&+}= ޓ ˸N+ZI  O8%CmM4a%B.=y8jz-G"ŏA ܋̒Ao,ݠ67'42D1'9߆3OB VwH@L"!Es[\U +䴗 aÀ*qFgf*}8w"F>եh#QfJ p9z_PUAGI(gIƤʞ^A[Z<߳5 BGJu|S^!9f6+gmJ U ,t`4H.A`j=xck9~㦥oY[?)}CCq^?Q>UƻCs4~nWku[M4DGl>I0ʶ?Qt*AN%*D)t02 0)2wImzX[I=ZS 9퓸CZu0-߭lSJiW!\5eՀztT&&Vk㍑tjoayސe[7SgoˎgQ0@cԏ(T|Smrc %Fl+ZttJc,9112v}OrӞnU1Yz|wEx+l(G06|zIL/bP'g՜A+]cZ]$-nΈJp_JG~Y,GWӉx#_.b*%5^-A}K㾟="K='jbM}\A TWRczmqNaȔnHeWo+? ?}S9a88j@2ʕϏ>OʱG̘:wƋ0`^NEjEldt~e׵],>z`JWP"B=}?0+jz6n|SYN '܌ȭz}h}E ٺ;t)֒?whQj ꯡJ}|0?HIW}߽ Bf .Y mIl_^$X%_qP$+9xTPՄ=L$2 } R% .1NpoD`!6I\7šݭcA(=cXfeE(kYў(\wc{/K<Ƥ=_A{) 7#̯fL>.ȡSX'⹤.#ƝehYChN$N"H޷&ж[›3f7#Ii@WhLsNqŏڔߊp޽M퍩TޓGP18e3 ~5:TU;cmU+% _NE-iS]X̛8`עrHN"AE7+E?5a4eCe/l/,!Cxa<1+ZmU^Ѡ) "2vi7iՏ%y*}c?ew+eU=GOBLifs*cՄfSD%!ZHr!s eQNV2L ^/'! )`ؠC1S* 6\0pWԞ2_ j5\WYa$p8al`ʎΝ/Dfq4' @ 'SrfkyFLҌk$ M4=| ؉6W+{i?DH15 BPs;؍,lȘVpTԷSp !iձR+4./ 6m8 HVùЬlpgs{~x:sm\U\&5.s*x)3Va/F~/AJA(,GS]\jJ@=?sJ+0¨AygiMUplV.E Im*] zw,IU]k'<(v1swegf8+mo[mu[?!>20:[ISmjM(Yԧ)C B":Vu ;YM]cDY5gw0O6쬳<9@ma"SEbrJxڒBmWN5?Z* \[m{띞;@_å}w:]Xt&ܽH5&jWՔ7,ӈ}5I!РnIA}c6|h&@hM'iXI)I _P bA^KEq`.n 9VhYRR6Kfn3,<2k5<j+LV'VEx%zݜz1GS_ߘ9DNxʊ9y3X{E˝r&eQeu׍6)a(#M o쟈 {tH%;m@o H ‹/VY:02)3A|c(mZ{s X_.CP W{#%"[&-9/VČ{$h%biypp3HvF6)wk/p%!CMte{o1̽pB|qD$ S[b$-{]Gme٢!]GW%buJ.8N8b%hcӫoIGq.ܴ ȸ-Wh#BR\.Zqq RW1^:PJqg%|74d!:'۔_LWV,'[8gTB;S05决>ZvT`a(J\..dV/ϢzmEg&$DlļT(: {N/NŒ&aÍSuzC=MZyb89u,yeO_(t $Õǧɥ+"wz:U``48"C#J}\YFd;㖗ȁFÔ 7-[?K /gԠƢ!5gސv̸ Z<:_ vk"uq ;/.B/㙻o47XLkL8tb݉ݯXeEþP Yiԇ R6>46q)GmlӕNOk'2vꅡY`K vnFsHvWfP m'Q[!V3i+xt\M ?J1@ GIK^_r/ /IUho[hJֈ&jP6| eFKl,ۨM';{wOm0?!*^.bBz]()*\:+)Vpmq\BbVs~ȻޒD:)HrUR`Lnw>HU({9Npm;MLڣoxs2+ѫbk@v49}:PkG,eܿρH#鱾_8;LI S&7KqTE{@\ ,؞@]Yu$lT-x٢42l8H;HVq%ސrw'a~>i:L -u:jpQLO"Z=IQ4a<,P-аw;\vP"Ĥl3&Lv[5 )VzԬat B=5s/)D3N0FkU_: V"D0< 7EL#yopbn {(aϢa3n ŲIazt(ʧRnυ) GvЦ= 2W*fAKu/%pXoWJc5%p];ّp‡$Ă:C(pY Fh’g1&a8. }wϦsYj`>Ya:C2ǎ#ڥ /JR8d{K,F=&VPCP9#L7*u/\/?l. 9wMZƹM?' 6÷KIyUK'QBT2PD' ׽Nߖ` x=)FbXnUsC!uz vb#`yƗb~1PcxƜl:.mwl$R'tAW"rD>0Ft翛BqR+a^3>g>xv0 R4 {lQuU}(/lߑ ^(86-$KKsr:QY⮈G^,bBE'+ݡo LN;Q݂Ue4JA'ÆS񾙡fnzzW胗7A#r索 \5d=p|Ʒ1i޲;_Awt%bR$Nx*g޷P$4Kc ;vW fv]uDsTL[F{3I xsa[Qo"^ k4۷ jB9<` uZ{D\ϱ<8>\H/IO<ਬ5D5iE]hK"DfDvyu8'lE<@4.:} 闁(n*#u^!" .m'sl &,q|Qc\ -SLߗk̘}/: Ct I[ύ~ԘvॴSsCbq}nj4S\KF׃irq҆zU2{藏_ 6)VStAGÙpu@UË5ʣ4T[k2;RhOT!;Sp%o|/4H=^AEP漏ҽ9 qA묘>ֲCSy^EB{x[w닧Н!X]7 p*N,rӧ\<_#P@x{E(R"z2++ \CD+8LO'rרtM:MrT_#dCSV@<'爀_rĕސ w{(A.ϖMUqӞuڶ&z`0 ߶i K gٚ]]rqT.*8l,d^7aĄm~X^jяYvEuiJY'`hIJhjߚQ2FLPYy=öⶩ^R7|@(zP3TIi@Ar@VyqE0u=WQņm,&䯨7/-{1@8K{Yȸ9( N`xl5%Z8 ,S870}^OBeTʋn[ZAzhNHMp-;o6v#MVW}V#YOͺ;žϴEBxZ4=IJo~ӺvM>n4#(r 07ñh([3/G0Z'㬶c;rBJ%Krk|Jx3@ lJtx~/|Tp6X=zF~dF-%[Qې>6iO^s|--Pv*OSespqS +J [&K oWPd3?> &LŝxuY높kT>}^WXPѸd7-t8ѷGswFS6eԷs~#g Pk+WR9C^UgKtAc]ӭJ1މt78j={){szA}l;+Xe`%ZBnCQ{vuF駦-Iy!Pm jd/qtrD.T_r&VA#܏"Jcjc5~le#QNJݹ;㰣^UM0ԶlRZ.^ϼ0vl$ZOJԢbpoxz|e$m&ܟ;Wb >۵bjC/>8VB\ysTw~34@kR:Ż焢oWJU~ ,ĆAQZJߣ2"?j8{)^5Pd4UZ7м ,/3P*vǨ u~Sj8͖Q!F^pb#_ˣ2sfNegdDߏ`th\V>X1mxd8d@xvO,zRY Im trr&Ex~. تA!/2,iLL=k9G;NY~/pUycE4/ߝTU7o[p; ^TuӘ/543L3Sʮ>l϶~G%ʯ?**HnA\l=}ȏ!=eAP*@xUt똼~h_ؗ3Z#o>,X#%}dހY&(V W嘽\uZ儮_4WtKpFV@d^Kž`,?e"ea6 iZebe 1fmˊ^y; , bӲMQq`U)ۺ$ ĿgUX W*6ZR:6|Pd6G8}:uz@1"(|- \vJ0⋳;U I}x}iwPfz& cEGx)=-hiUM2C<tP 1E9xO"q c`;-xϻ8/:2oN&p!>7D)vDۿf A2|vo  X+e.:T2%IFS}H-D{1I1_i`[ROY_ICW.NvpW \mzy!+VYi-g"V,tі܎U˔V~*"x)p $7$*CֽHCtv"c>ݢ Ep,ѯ1Sϊ3z5\egSUΏD"_\O@%c.JQn^I;&-Zi~>v+-=,toά$|Eg7#']cN։,rMk9k~jy""@_!R %Op=w;VQ<{QĨأdnz"Z0qcڹ?<'A6;_Pm sԋ5$k5Ud^_tVp:l w޾i9+a  }ƪEb!t ,2>㭸|χ<#ƨfz:]ȱP=g EÆÜྍ46bˢ닫-YߒTnX;VmHz{ MTeSAM+¨xt4fi#-a$UֆgM}nYoJ v$A+a0Ƨ[mCo.\،M1'+!ג ,WUܹSiڞH]Gt9 |XEEɍ0 gl+.|z3)5zl2&o X:  &?$jtV^h,&em:ˁP[O?.o4a~?$?$*3yuMzrJI(5W=fy 4IILZRmI sp` ď҃-$SH-F=?i2"h I|xEQ S7GFE."Ⱥn2=$\Y Δq5 `NpeDCftSRB>P"zg(ۥ+:]Cc2.C0&_fܵq攃ڻ߯Dǚy&1 kfaOW|cٷ4WȌ tCc4^w~I4L ErX!1}aa`⭖|J5ov[e-QGF/ո'ǀDE@7B ~[ڠ }hP\\Y* 7uY)P*MZ]4᧍3bIJ,2 p2iQ^䒖s4:+UQvg͵(*EGK9!QQ NZ7כe$BN[X{bu&E$ c)T7iT 宺!Z F䁮y. ؓƟY5%QDbWfr[5+/tF7CO}_ĢF#5\7 W;nWHo1Є) q'} ByhNњL.Qd1-f,-ܲ(kMCFHpH_DM~TYF,Eq_8kh td~eӜ40l-hAF!–5=|'A3gJ, šbZ +I^#Il݈} Ph$O^ٺa 7Cd>Vd4s_^?^߄fw YKh 35Y'ZS5fU`/=P$[h2#42\9L6$ϩ.9a*˦Ͳ21hidIoT: [ `J?h2c}(0`5ݟ/[1;JWuIo2&1hiʉP{ڇYZ :78Lu'뉨B@ Ζ\\YUىXF1%gBXV/!džlcRbVEl;|NU q 7lDy+:USॶ;\ʤ[$o"wcc[XU,z0T.,TNJ _HS6] ïѺ' xY[BZԵ9Dƅ廊rFoDeqޏ=%KI t1hP#)ɓXID[;F8KNAP\̙>$y r48,fj'MvSf4ōd* jGEu^ A?QiW=:!}< y_ֳdy[˴7KT !.aI'>nb9}Ƌs?S:L~YŰ՟#jչtF~'GeGQ3v+q/W4> y Vq`Β[^8@PL"w2w$ W!*C OH^o .(IȭmdM/JI)c\̶|UD@tBHx/Cw~RK}ԜhD_/IlA[̀䥢61@oW 8F?^vn_O9GzxȣR?~S+qۡ A:1RERz/țl W Q`JYCbNx(/D))G˕DޱOzq[-LG:Sw0x~ *^;N *$OȼN2 u3pfyl35A<.5jie7Vk`꾆ӥ~ ꅧ.S0 -ħ &Q\.>xdd `Z€6MTg)L!S%9NJ;ͱ0]r_RN |ʛ:؝DqD#XkN^')2-aӓ݈j'7BVQov3̆%L΄XKCeճ^)wѠXG N1P1bCwS{ Mc {9z|Bn7h`fܰ)K B$=;/6I6形K8KB@V/ YD_yGv6Gjnݿ RoV|σ/vYbhbaEʸUt)}.Ͷ7b}>G#Aռ~NT:]&h Nb^jo~qeqwI!⦂L*@梶gnU(BX.يTdet3jz,; lH% p$W $=Kb^i3cS{}>@GϩTp`ӋjzL*$b9= T7_, z-Ȍl–43] hHUYB{5%(Sf5ǪYA4:6[G>5XRȾ6 RԂTѨz]ea27KAKQD T3Mk3Na:փM4&n9Tod.Ê?7&0;u![ 3E]7dm[*|: Ue6IJHkњ{q]96>e( E\P`hZl8VcG+)Tz$ = i69 |bƘ鉡6o-BH`0zʣ Mj`jw_!&X>FU iZ۲*#rn?kkw~ >Yz }c:Pe hϴ TY -תeS0қ "u<;%7DꅹI2%@vq\1}%t#$ U\mBRdܿM!č>X3_(d#^ ,bR-A^%TU}HI(d9AbILeY`0cdN:y0s;c$a^slLvja6NmNyf˶"g<.jo( ^E>mJPba !X%,\ /b .eЕD[jT  !WVgQWiϽZ cH"8a{&O&ơa@H%3y;%tX>MI:jFd Pk%䙣ǣҷb) %BprRla̧+@xBlwgwdz+Yr8g_:N|m&y8qp^bd V\E#oRoi;J0 xtp)bp4YN+)ИPjJ- ׍-GE4+`EegqpCLw?5t:|]szˮ+$} (ȄCqgдȢvNj W`x(ޭ9XUQ=Hue WK?xwW8Q5}L f_3':_mG-a6$NLF2#c؊+ldK\iS2vd,= C/)XI89+A v`h7`߹{\?:N5#'}uKhd')y(Xr=|6C@0ORf?]o轲u <f֬krI,$\a\b"“@ԹVfǕ#AWNtk+(ݯn:V 09A58nl[ܟuܟ,@wB|"9qWn#L"XuS2q{?)ec+ͱ,7[lH`2 ȧdNَMP_=L<T쨯!O I)O:i8&a$av\7e>biab#d=B!u\#pz޵= `SL6B[ $|BD+%,kDAIؤ(ڦu[gjl8A"!V\ $m$5$MU=JN7,1FOĚL2 .< Q܅be87yl=3~P3$"OT2|TiijZPy)x0S0O"ɐ_fQ91=1 @i]h)e"YPŽ;v,fL='#j``! %=_00סdGȱ=*hp~׳FƂuPuAڶlA &#*8z+euU&Ƶ=l:c$B()uPUS@%=#:\p@۷WA?KL݄e*ZUX݋+2 p9*6i~<$:*\fԽ~&>FK~Q;C HψH^J0w;"{)7yn[!¶圵 ,W &+[@{3TqhIٓ:>BIA,>`d(_+J !|4~kjvlL~11c2EPfp.'Фw?QclD PWuLRr'6z (ȗFX8~}7?In:[\cl:]2QF8&%u _b3괖(%ʼnan7AXZ +ǣO5h'հ!Dѻ1xR"DUOߏHlNjcij+EydIG{}_4]A&M'"@ՉP_XLHR)\U-Sٻ>;>@XOв}ÖjSFҷ?xN)33&-,s{o]*-p fNh)=G#[Sj] `_S`"<!#Z%#^-˸MZz7ido;ciޡy |N$+OC$%%u@_+$+f,yK{yj ex9gKc|^()?SSxsӎre p^I4RH'-iI[&|;_ (kp:a0(y5rU6V97=l'a0 o! v9KPASy;{ܰÆ919;#8z Et;[\M, ?:Z qS? v3T,ɬI-ғ(ͪEkjg+608TڑBa6=Y׾읓sYte5p9W`SB n.&T.i}5=v_>܅r]cbVF$ zהmU>IBhj!'1_*5ǟ;}I|圉S-j h98vG1 JuuDKWMV ܅F xJ 7Pwg?Lh;4!:bU$:b# @r!\mY.Zc^.N[Tw}IlrEVfV_lfr&[tW|X RQ;?uz2u1o*=mΌ:*A|:+gA_HEq.T?]Ka?x2ێ70]EəzqOĒsn«A 3ΐƻ<* ٤sȕѧG!zdBu"AM8Ӝ\SvmXh>5ğ^b+qrQ17 LBTe x{P~& d_4~WwakhO P ޶P,SNM0xnD1JO a|,b4\3Oa7jfXAM,Ulm]3`<~% /mKm,Ugrk*nlFѝ\A`JoA$Ztr`&n~ y;-H nsv5,ZbЭhrca"+E#Nsr8,N6 c88A;и\e_F__ O)U d)vCt#_"LRl8)a_ݨ^m[ kx?l<;$5:Dž)S~%L ]8P$ Wi4&-աC16¥::Q\VvIܹG1uڶh~Ӗ޴ܮ1SA/lv1ͽcabCx23Wxȯbl 0a{ dȍaR]P'n CAiL>]ZºRFQ12)XZ* Yɕb[)5!i1.f׵Zibsvp8"<ݺHd$x(ŀZ6GJTdw|@ rexxe.~1}-x$ | 0KĊ=5GXsI*ĥ'LhH<_G/ cct&|;!I1r\殸cx2{P3A_h#:"LdzQY˖ 21s\Qۆx~3>C/ZN>mTtv&Zg+5g8Wa&1zTvNvdճpgrU~4 6 ]нAXb)cC'9Gݳ4"6zkE+X?H< lWLa'.?/Cmz0mUg,Չi 0}{?:^ɼr^-i(`vU4,V"Q/d+$콡wLع>yRk\a5G֟!ZhHepF{XӪi"r_^OIDL t:OQTJ҂N2_~zG@pn3Ca7$IḜÜW$z^hٗ/B]t~{VB_$Z,Vۇ<+dFEL.RN5gφc65> keU/1hpKFbD~~ A\?Qʭk:WRY?柽ا?Gˎ$s.J; 3X;o#LE <qa7/gX_wyv_ҰsȾ)}>X܎`Sװ q PTHiƂd H ,X@x}M1ORK%1$g#ey= Q Gm}z-1"VTuPZR9Ef1q)&ACff$=GIK6 (KĻ6}j _ֵ;-p|(6XW> \{H?\\i\i(4d Pؤ+'bvFvm(<Ѯӈz [.8tw h VSI;l]=%+p_+*P6(EC$6Ljc”Bx* -&(s8+mw+ֶr&*EXVB]J %({旿ge|deyJU8}"5rzrx~NJtzSߒX5`cϐڝHs|GrQ :mh#ܨ6Td 6#k<k=@ ]0p%ˬYSõScs\=t~)Nv3]o~s(G%7a;8P@V2gC( 8]jJhG/(a_$\buI(i7"ƴrgkN(9g@>6ؽ†h?C6>\Ia{v@$v6K|O:FaȲWcEɜZ'clOJe28CNJP,aptor7=֖Պo8p4cJdl- $$# S=>=&c Vo %>_~ {e@AW^ȤȂ1vflFZL-(5_(x6%VhtuRAJcyˈ麺 r&l\]P:@nGQaTyv+Ƚ)xnLM f]O%GYsR>ê.u>; =h]vp'(xЭv5a͊]$@ܢvnJq,vrk\⤚F ( YGg*Mg}cA[`-J #ÌHDix "?^VCe q6CU :5ճj 0w|F\ut|H3'n2n|jR ,DVaQbɊC\xwQm S'G 2)Ky 'cqWFeڇ "-M҈RdIV]Frߣ.Z7)#:ɢ4eLWkĻ۵|3UVW׉%\a7[7(m{GЦ<dAOFK1pDSk7ޟp4 OG?H$ZrJ},N#oo8^7EY?\t% RRTt1SK:ׅ#+B8蟼C~SukAe t"KNf>~p5D\Q9xju AkpGףe- "#nw; UV\淝餸52J]>#eA?M ᱀UP25)= w8K6>GKUk|VLV#DNGUn@qh T>{gS|U-@4er/qH}tc`J!3,GcVx+ƍS|ǽ'9Rd)`p30u6#5 ^!V!d1#ĨҰ75 Ħ5X1#ngi>g-]n4N+L9]J0 _lݼ +,lLDP-3P#!Y۹(h_oJzfg*"hx"+--V Z^:9ڎd^OóT*c823ԥ$=b-3c_Tt(j\$kWrPLRR nteb;&Nee3vdu(GP ߠ+u3@dK/s+ϊqŏ)sGQX5W,20x¶TMˮapm):ϛE#X ,Bmؽ59ZX6#ϓY!A}^xNf&J$5r=FC?VPR3]5X. 6{2T ԉ5=gku!8%DonkKPߘVYC^L$\'[DA??sB̸3`E= W>RI.94 CX˺8PXbXPsO) ]fSGn7njp*$ct0.\Z8ռs0^@t:) wph^If!?C2U?#mqYT'ʰJ EGĜBܾo[ ORHcC"lcž

    lGO g=uh׸ %6)ȁOZ&C!HnJs'B]_Ɉl𦜔 ᇔj<=j'^xhUV dyggĚ,k+U˜s/Bk"R恈xNaE.5ryŤ54KBy)9_V'F(*@@|8ˁ"D$: 1AN$iL*'t"5k4*G5b+nGs-)3Or@2 =,>g2ÍYqd^< KQtg4G8 !@aەBiqїK2Y(f A31uZF\g>VuE}T(_R%?%HDZP2zRG?XX lzބIEㆡOyUJ#4}hb᰺>PH:fH.]톭ZaxM9r:{-g&Fmhda+znw}`_RYۦ;@_ǦW3 Qm{ <4˵ JoQ~[!5fZ٭td?|3ܑzE{ Hf-O]~БXdԯ3AzSz6j=2O(A~|cjjԙ%zޑ1 hs,:{ agnDh Vq6y4z*dj.[QÀ c' jĝ2D zGbGw]Mr9^%I"FmM3!)2a:/ HE)"8| uDW:Z{Ϥc?MGMADLD7΀?zEIeb@괤 {Ÿ`dd^v_-_>a\e+(F^mk-6`"흔rЄI *^FS8v?08ɵum쳱o+;C&H)Q5CW鮈Qk`}3܃ 3('$;7YLV AJv/ˣDl3b=n tV&/${F, SNQ1t颋; yi[hd5@^'/ىXR xK9>Z-<7H7?+CԉcaZWK?7 ޣ9N BI&iKT:dΖKRl/"2 lti57 .e+EaH$[;曛Y* qG kB)(ovG7:u/@ f c0K<ªL{k^My Uo)mAި#W19ueئ}1D #k$ϸ2$QA1|S۬ӆsw[`1P͜:I:oۧl)n6i\R\#9Z!yL4nXh#X.^&< Dyx)E#:U]34&?@Wm,/?U+@ԗ/U!4OŽ]y>G檚5TG"E\p)+}|Z R\}W#Tّ}`8?qmSS~:idځAMkWd<Zy ҙrVa qkg=m,Tk2ǣl֣ҏ?:V5b/Ne.Y|йhr89Qb73HEht.7 Xm *+o\m1` OI8Q@?46>w"3d`c8fzX*2ޔu&j)qΦfޢQsTJI 6pXFMO57͈f>ؖ}bd2`m <ݡ=-GqnKRjT WCr7ȦgH0nяP ]dk=$sNVSM2 SrZ 9,nQFP>+<rj=q rIUnT[[@)wHni)nWGoRحi )u 3Yٿa!v,':\LY$d~/MFy܇ʎ/Cf?ZB@ŝz@îT3qP1[bǮQ %]SdtL[C / bt: &jMՓaw{ f8@ oߤK>5=@+J衢̗>a tîYA_NLdziD 2!ᅇ²CB"_gTŋX1`ɶ]ts3֛M!5EM=cYu-<+.3bJ_;͍QfתZc; 185aޫ5zSK%#'"/nJ\7€*z2q,\ʄrI9? ZrɡdO|iBºl`Vdaet_[vR] 姂C5 |%0m|{;t.>Yn|MimI'zWfT)v7[WT?t$%A&*R=W(|k)1?:Rcq}`&Lt"r&$ysj э\+: v=S%- `%!kS|DMrEZ'":$Z#C?:P)\U6  <)bC{n%1*MeL>|P K$Vffh"w#ю ~hËHFՌ;=qіjKKL`/lV@ *Z;//tXyz?l?ljT w-5)#F/-}g8iI }bА'/1Q-"d 0bZy ijV_;FxX ;,DPP̿пPVH#to~>|lSN+tE-r8 qĈ1Boy~!N]2EeLgzwa?"okWXk3$Iݞڎ[",8HZ+uSrH!dz/&!5NG =%'^z=tUW2"KP ͢VUq(P9j5.תƩ Tɣ9{6uj`1W${ hVgOӪHD_23Vׄ pbZw#T:3ddprVޢ;cѵ[ݜ!ń +) JhuD/ ;*yErfm@:9;,՚_ 5"ؤG&L)nƄK،Ru3ҕ~_פ {}&|u^WwxdJTp,қX<"nZ^*2gZ?,o~M̴vg i9 {9`1pcpW[Ҁpɝ/,1HE_La( Υ#nyNQGcu6ҌjA+jBΆV+0V2S&jj81UOc=2=]rF!SP`)tEk%p#06jq_vWJ@[W{S<lM K^CKm!E-7!~2i6`6hne$}#p^&ùLDWEE|sh z m2#"ѐu%4V 3cJ; LmMִ*$mN(Pޡa[k](-7y @%VYu^ "HZR Au`o1hM;`+ /xŰI}R۞:{5_vC0 30M7yp$l`1!~m | +M,9W*4۳+<,k*y)f[.IڞDRh~C.NHB"$C Q-AFU (++IxA|K_@TYwwxś!fz4g4͗}[|@{y Ai(:IBRq;>"@E#]*XT;ĽRL?Z֌j^ˊwPXxV&sjV~LS ޣ16O_`RQ!KB2D$w4mWFt6CcͽsENZ;Oᰯвn܄8oŁEHȤqG7ͻ;XA8`k&[rHs̨,>4W^ kEPooJ ׬!J)l v>ҨF/9lǦ.(\ xqȇN,4!'ͷCAEў:˸%Qom!z_i_L"uO.g6y.gMQi@\S#3"JjWFRWbGcjݸi_zQ$Vo䨙 `[}_4f" ԩ}ӭú-ASj];+BZ&lZUz_i~Tĉ&L^N( uM7lI(tY/F/U/CtIZ;t+p<)P$[Nr[0e5tHRRH9R3M[2R'}=Y#B&`<]kxvhwz^Í$2%2SQnelRj݆F"Dmv5Rҋ@50wgU.\2|ōZ\*%P \i+iX_]X"ji-.|!}(۪Rcw![`|T@HJ4F%o1 >h#:4'N "v^@- zѭ&0c3Ӻ cH>]YNs3i"bV*)3IQ$`/lhŲ;N I\$sଘfSnaQ3}1OG~;J%Q9^HtL?|G`ծnl`7n\fÊ!R0.G&'z78[()aޭƒv2O#=Y u1W)7z戓$ly`RfU9{I JqaJG%橚NCn-bΊS=gr,ᳰ0t)#_?Hei,yK R: كFcטcOwcԯ>sn;=hꔠ{^ bPJqji@;NM# z@|Mv+obpwj5P02V}zWڮcNbv$3@Ī%^Х;M=0ZpOX:g@9J4M^m C}n>Ƥp)4i50e,C.{Av"ם>TG-?u} ށ؈ftIWrY+ԬiҽAt@_lTtJ00IRŀf%}\%GSUa#I";ʪ:->0O2H0͛ktrEOgӶb?9jS񧛨]ε{_ \f/Zu/ߡF-6 ?]Ku*vFwqNQ>!zkh"Z>YК(UkMz9y#ҸLdY۽r- #AҪM2ȏim(K gmDz;$Z*HX5L=Ɨ#G'_d`} sE7>"J[8 ,Cir>uY=K%G/)y4% ~Q;/6S"xdcQ\LPщ7 ELTBysG:]?ռ_v/jl9נ痚[''>|\eQ4ś+HXANYz~(6^sدxļ-0,w^v4Wj.S )īkGzE5χF҉? mЭRC9?t DafIB_3F#7.u6n%lS*ʃ܃_\ Ɔ>`y*3y)}돜$KlU(1ź<>@3s2k[je2&7wH  BrQ/{UE$8`#~e5tFޟOwZs?>e+0c0g7V%T] M |a"5w;WT_R#6U2a3Q_-Y!)ԻqS"Z0(  2)EASaG?KŤ~2ƛ"|a$7R/~X'{..`È}ʺ6aꍦN˫XhśwI*gOsL\PΦ-<ywLjIRR) #:' 7f:5N5sPOpu#mZL0$ [d[K 1ޠE^!wȂ hSߺk/`]#OM:`p]i<MSI[ȣdRw|Ge]麍ު_p f +;\gZClW}dƀF[>#*Fqg)1׹z踔kzy?+(eq<$o@S]^}cA?h@adž'̀:rgٍ1L\]&V*ka9(GOAq) 5z6q2σǍ34M=M8epu9)5joG[R-O֟qrbV 4Nt]@tf. l!O42[@a`cHUYwǐ.*mx%-"X'՚]O@+\'QF.BǁwR2EݻBo%Lhc ٴt~ٺ8c|s?#eB@4xıB8t0{[$u_#P2?<?[X&YT秱ݵJ)=mV D$b1ҡ,=Fv/q;e r¨@f;m聢\^7Bݥ2*H No"Ug~^^hG$f SvSmU+b]рME5@n" L.8i ^[󓰤Q <)8r[13c̈́-F]˳:b^L8!i=$ 2uJ8VAY-I7+?e$AmXzBy^IaH1 QĈ ]6 ] 2qkM5;[<9i*G )&0L:xRd8;2hIrN`0T rM5;0R-*9YS ;c 2!u3/JBfIrL-".RÔ#4*~uō.3ڪ%\/7{$Dÿ Y.~1)B[J-Gأ&> ;ĪH;YC20<@p`U+##Myk,7l 8_$Q.%ൗă;mT(ӥB!9Nv\<7 T);1TtʵGˡfzJփ($ځY?_tK22Xdȃ\5p+wCdicF*\՛ƐZVANI$EYNChBx,z_p 4ׄ{-oè'+Km gtg*@Fc@+0ɝC圽a)dQf{UFvF "99!9+Eb2lWΓڅMy瘦A վXK-+# cARE?jiؙj ā:, Ǟpf5s޹[VDo4MA@(a1Cpt"v K^M٦p%H$ްg2$~OߟE:ZbP>#kL&)"ͣ[]f܌ 1dc+IG-Hԥb6*H)†7P !Q/2yl\Įg}mcwTѷBAZ.xv"KrZ Nj?0cEHLUc' e"/wJgu| 3 zk5Ra4+8"O PQfb70/B#*`QN?ؤܻЬ=w<>iţڭh*V h[87γN$ /FzwyjeÅKHX0L\TϑO]im09Fwڬl獲cl7!]J x4.|/w0򱅅(jX'C _1pI-6X0bfwTXmvkKݕ']=sq嚞ٻ&&3U^6P3i[e5uw21΍Ly)]ƂG0/28.':8j Ջ%Gd^F|0Z.}Դ0?2A“@+ 9U?f"\-ugJRūV:(ΘXZGv޹Ꚙ?䊚 Xݔ* 4Y w9:LB%kB-vR jvxMK@ddCǺgDb4@DK*P9y.Ӱ">D/)m=Քy~4n[>܇e9x)'~1U]T1@vbx0ЯG cTV:(X{y`wR>IRgAO @3+ ŹMBX{!76[dzt9oq[jerQ3]0u_L]'Jͬ L q/ɍ U u}0-eʛ24Ƴ挀TrÆ# td $TD:]?5ՊepH RhK?\dd(9\N#I%igKd*y >]ւkE1)*JKm'-9f@sT¿.E8R](mAE(Z`jB־)7.hD{"mZ353wE)Pr95lݷkPx{f47ƉFXɷbx=PEOB3Y P nsuXD҃GYr;4Ev]5Ρ=B$IC־Ԗ,+{T) s?*o|ak{6TWC<#E%e+^T,HMxT./M%c=<'Q!K"04>.ګ/X@ ˍP(E㯛ŸYJ4JpK_)X"w6ˎ%{)֖J .>t% O  ^@m`9_,vOԵoӿd]Kr;\ 7ėCFTŴe”we |e'}sr -*9q6]⏦I&SM 2/N*L}ϭDڢ ÓHn_~Gsz;ǔM4qx7"Q.8~>vͷ}_:3UM1vV\RFTP<5Id,D]\ Hye|eJcu,G jUiﲨ_]fR3Gj(B w6pC)/r̪sεXAaޑ73/UTԂ4iQ43{eBmꁷC')K41H;8A?}ԮJ ORAe@O)oAvNH‰8LgΞJr:IHuyΈv6#Dm$AY-t*[jų{갭+ԐGMU:=*_` {j9.XCQX K me7 xdq* /~WLGrFO}cdQdžb'fO U5:+Sr M|3@bSE="IGdU3IcL&;:ފE$W>QU/emwV0s:'!?|έR?\Rwj<@wOjkWҪT%a;/sǏ-DE:i~%^0sDu(<ُ:Xy4IX!*cb#hi/ !']9%: f9 ?X5#(2|f@Ѓ7xD^KbۃYGrqu4b_:,I52T5XMܳc.x,*m;Fmo3({éT%ڷ-?+)yKV-> lC<=>W xQSWǪ[BPl='JfĔ {$pqS0YVrîKh 6m={1 ,D&ZmIZj6L}o݌4+7<թf_RּŁ ՠ):C:,G^:2Th8sȗHI) ikOUtFwN֦Xm1ns?$=GfpE"#,f%sl;x WŤ"ГPiFtG#~=Bn5 *R^& ;48ٳz*x[OyoN4q+wJl3[(qAt9q;׉-Tq.n^*"8(\+ik4,(rǥ5"8!W$J<5YO ( ؕU(oy g 3jzu2HK'G N>\"&`%: n!Br Pme`V8 ofg;Ẻ]'# txDV؏ $ꌌZ!8sVE@BLJNM%a*o6SK4m`Y.BFEW4 69 Y08dA$i>wvD {FZzZ~\W#$MYj}9]uB| Z= 0P''c,|SG1힕S? qTݐ Ӗl07ۯI=],g stYBz3v1si7l,8)j26QI77ǐa k7W ?+@;Hu} r4Sw7ScWQ##YS-}m^"$(|0{;W >0kdyȥfg|& >BraPX툒)f>,V=5z=}!B'Cw{\bYWEDb!𑐗yAv7w5Hzw:ZT 7-GE.#:emш_R7q1;մ >6bu0RS~Y:qjzC[`ٵ.5 G\(aucӾK𰁍Z-x}|4lɔu?FrbYԗS9m<5<*F*d9k Mգ?W!+x7N'Pw~7FAU$bzS7`o{̨`k1Iyf hM\_R*RT,Oc bR0?Ja,!?є*}cijBpqsRA>@FGL/Ne((}$<(.$4܈Ll\گA?~=|;\4U@*=}T˱& ȾRDqG|qKA(DkݱJWa'^*|9e#D?٫xZP) =KjfÀ{IK?-9cf?'~hQM~yY?8:rdhiJ{nqsfl,TjUWbyF[ OyHFI7XqaH̷2(%3c؎$Z {JvjXe V,hW 'F!Œå!d@8b]-~JTTQkYpMξo `("l^=pϘ~[aLbP&>ؿYk4}? 5bd]e4вs`sgpV\cF"'M&h}K=Bö+P@a,2Q{4$ZCqˠN,06x[(?6\ RW-AuI^P*>8. U|F ΃y&l5o3uӥ+$EZ')R;Պ8h" X/. 8 qSn]q pYJekP1,pC)N}6hZ0& < 7KY[y^]!s-yM5ΰ%X Xrf0݊ ]`*'wi"P͓hi"|/=}~*t+K8m,{W/4w΋<“Bu4/(,<Mfci0:u»ԹE5WU T'ڴs-Y@O97Oz0$<>@́"2C3@Mӆ|v;Q)/ih圸Cܪ{6qVv,|yްr@kD3`D%e濼lrIʪb+Klj k,/|Z &< O"<=Ө` gu@hC6Ġn>ÊL >n+}OB=)nUJ\ zP{܃"Vl^~n'B/R؈V oZ%?qЭMO{iu _n2xnu,Day3}U s_ #JdN]uRұbv3%HS$ OeߎNvl\+zh‘"ÞAC|VꕘohK%4~ȲpH#(3LIgCEy$)E(0-uʔ&xTBȣS=$XQQum7<?1O]30IBP$ )c$F1 |&ǍwKVj?tCyt%sf Tg>U?j f>;^-YBOh3Ic.eY5IB3BOʄ/|Íg:y8Hi<Ya =6э);o+P5aW `"dྵbiUH\=vhSf7ҟ ݗLұ7?^v3m])kSY{mAUcǩT0n,0+w^oafB,߁dpKcsQ=>K o}#\@555c՜Տ;=%cN(iܥ |K^[ .tUD&x;A=;P^"K9 Pn<@V/~Л 6ɒrf9,Isd|9cL@I A?{rX"ei%8:/ǀ'3 0TK:7[L3S+XD[.B\IN'"UfGi/FyGhIVԤ!zRQ ~'| &K*ncE;?b '+]ώr/Ș JKkTExL=0#K!2)U@2jp#4Fz"-RLV&a8FjGf-u%[#Oȵ'IDIt^YL9ax%+xyn0L5YWjlgqe54$V.AYLc'PxgU4Hc7G-48tVϩ1f4e۽*D60Yan3X!+wo5)FX?emč'\4#uvsf}ۢ98JIqAǣk AFbc$,ϿEp'Ol>ߙn:>-5B{d%Os scN9'XʪM.Dt܃e`Eυ9tÄq#r?YvRλWiy#V|W3Q76kN7Q{a V[dŘL@?j,V;ͤΈv+ۛ.4Oan::jk& ԴG؟ Ǯ޴px*!SJQ\s$' d876Uބ 7 t`g*X@qȭALzx_h]j|-Ly..k bdt!5_3j0'(L)4gjn3tE#Q_ۯ~LV )M =/b :OSe3L7(g5o%`CkŚgWr]6u ١"mLl!}kS], #e'QT(A|םٮ‹AD;+5}=oQ`c]ۓĶRۛo,f+d.5Y yfm\t^d8$?4h {ָȁ)Z؇N #ZTf3HAڕ+s-pf=zעȇ~'zWpl[b`Q#aZe\qf:[?3Ps-=&0oa +ϧ{Ɣ>RPpvq)yW;ڿ7Z1)2AyhDXS-QGų` tx1U]21MӉ/[w&\`pq +꠶ԥ|19="Ӳ\YZYĻ !u}ݣQڦ><oD} bLQm7il_{t|Fh0 b@E0ुjM0)-oL M_;Ѹo: SK獸= 3.EʈGFOS%"U jB,?@mg,D yf@dv_];lGx>WFW'QX *PV-OslwJw\+O3@^_Ðf-2$i{oȑ Hɚ vd~BSḂ }$K- ~y Us%~b]~`"-sx;Âw_-C=𐘞G=X9 J*!R 㰀B|>ͫ 0'Qqµ<2&(c(,~k7OXH`i*Z>_pQAk$须@(~-!x4b 4P&>GcAcҘ`q)]kߛv'yFs|ƾbs8}tAt3+W.U_y]՝Ykk`6؏jDΝ+A.{ CrƍMq%px(>ױ0!Y_ +r;.qR@=?y .*>l)}AxnOOɣ wg_o,[Z?VB Oc= DBa] I|SYcL 6oxpX HٗkAnCpIwtԶ+2NTE, rdxn݆7>aמ&p I8ĴT6KĞQ!~yq [^Y 1ZM@?Xt ݟzr\d-*`QLõꐢUi^׮;y`/<ԍ,X7P'О_|VwD P)j_*.>Vr;ç-TMi@V{;2< ֧D@ni9\D5yiETDuj3-W*)!ObrfkZl3|FQ1xk$-wpωY4|D6 6&]6^썞DQ#[#~g%aUV0wX*S)Ó-FJj@CCiWz^M9Y J "|"4 |)| "wf=P'y B bڻzM#Wnr較 ^7ŁhuO3Ғ`CVNJdۭ%'s V!ƪ( q˅SV ̦:ܼи9Sj~#9B_ 6,x$#Q^?k!'G\Wfȯy"z7r oKZD)^wUReLq{)?_ط}k۠q_.NQܟV?>K|oFZ^8D1N6ĉ$V$SI9RƟ֠%IF\:|ާP_vߵ/c0S9΀,rfU>蛤Z)y@'@ n#zSِhp lNL)ۖ ?qIkpm q4l $!|"U|!_Wbkj+ψl3htцGmt%3T3E]B悧2QВ88보&! &\x!V$}ca`ۻMg $&h_ i^H 2zꩅꠑ0-n1ԓE!-IY1=ӎ)TI5rg8c׫dЄm{V6tԓPL\|ih mP6pgV?:$ /eGU}4@vp}D춅*hG L\\][W(*q;De (*古ޥkrt؊ wr,U@&7\}xZ^KsvO tKp۠9އ1 ^_MwR#PsBFk\ݳ S^7^ kD(/ߜ,N’4pu{Q3T6U,TO~ GQ 8npՀ5 KBI{g)V/݈sXء3]wt J1. 댟sLP0:\d6gKsݝt7K~5t&_kbvv0Q'Մ7 ENb(m{X&A62E[Jb15ҹtp%yk-MɽI' x0[ 'g(X2e0E w&lY [ 5u;$ⲢA4`ouWfWq"#W&݊DZ;PoG' 9T6&;;mqldGtGq˿kYeG_8A!mP N2{&r做؉͛|uo)ZWQUlڐ²\K ĻpSI [Ӏ]@ěWXy/e@^Ne5wz L]ڿ;s7Y)RhK])k&0HBtH(׳/GtV sigTUbn{$`8lO2ݻqܱf.(-Lφ5@kϼojbi2|5Ǧ2 :&vE1 2ǀA_g6GP~( jE~MMccj05u<=L/{:Yy3n8uYOaxAJP[ Z(EȆA-F=/*pXm:jT8eH m7 Yzb\^\A؂/yNaeܰVXK،7lc2iň)P_=9g€^b3 i?sqAjgRG_ BLՄZT폩3~$_3a{Yl #ZGxPJ"ąC>cI(쟂N6ujcU_5!w|M~[`_TZ[WmîH`rLcn#^"1؊ %ۣ:ÆQ ?+\S-h!ǣv /Ϡ m[ ue Nꓡ%YSyi>\Mi3H;˓([bk]&-!mԄ@Qक़bT#E& gh{ L͂|A_k;pY仩h(hR"^@=b蠻::&S|ȵR]Ԫ!prP>P" T-.z@b}0w֗isbCxh`o1fs}*YTs58|8ewfc1=mT̒>)h<j 9ڭqld`<˗qznS5c&%Q.#\W荧0^POⴡ3=ҀPAv+%u Rw ȴ|s )(&.)o_&UDiUok,RFn}]ps 3 ΆCy:bC{$xiSMI7~Z`"c T +-lZwHJ&a[Q;ëbAQGUJ)3|`}87+a썛K4ק7'UnKF%F&M5Kڞax?ܮ7C;!RtZgW̪ɹ n\f5TXU ӰF1ALǎC >S(W;aN!IAlu$~ aG#{h4AMaCBm"[cw qymH7vkG965Zy^~1?ܐ# NOHR_m,ϤhŞYF#N\B߅Q rbS4F! \p0D8@m@r{"6!,K{_n뛣?O${m|R߶iɺjK+s.I7]ˆ[܀tō>j`I- $?,p-VrQ!ʮ,9aCJlզTgtE'N)wuܾȂ+.vEƷE7Z,4 ],i9m8Iewp2d7Le=(pbM(}&Z[^:]/WX/4 vn)Eq[(߆+R3kՕ8OoN}0]`t{ T o+E`^iǷ^藲Y+4FT, uoY$Thr]BOѷ!KxAۅ-#R7hM^(=~X)'j#*TSml mIpJ`g)BB[L]!X $Q)#/Kz~^pDp{71'M reqkfۉݶO9ܭsy2Oz y[ XGK먱iXHZ/v9 Z^Ky/u5`&6X‡́k{Nbrkt  $]sv;jt+pz= 8L= mi){F\ 9p@׿l FF\_Z"v *R%F;m I?d%\{qǷi$}iK6ÂfY(K qѹn  d勉5dM[RBg!]⾇7j6򇄍[MT Tx701#B U4A`˔}#R΍qa]{sRv"[Ys6t]0>؅Qg}a2#2,"\_5=7 ՀԢZIGHY6|d:'As\|}(E9HB'0 x<1,q/=>%Τ:(TVȖb4F`ৼԮ*|3.Y@K^5ǎѹYYOYTJᣬBDOe%̂x;-nŋ GP0 1f,G#$5pӣ{R1 +EVUEVjE>;.sqJ rHqsHsΉ4 o=O_LDG>Y&#cDeey/QVf#(r _QX/0%@y|;ߡ @>܁#U;s2A rW=??fRu(ӆd?76{Fݸ5J6:{~ݤdՅ96d5\3XG;n(\LLPwg/8 DZZ5ČV,(4H-uVUZT?laeԊ.wBIT[AYoK|.nFO('i~%~eS.i qZ5I zkq(6S.avsGþ/x+ׯBB4f|J*lI7XO8BʤɁt;IDNPI#*鴫A4h<9 ʇRG囀pc 2LnȮQr˃Ȯ97Mna֎mvCn*;^.١h ^)o|"P2~O]RkoA('\oS;i@Om۲VMkxv_Xрqb-; tuuvr~iZO)) Z'R\59.^,'wwiQnx#$Gu+梩!{Q+d8ٝᙙA_Cw#gMWfҬUNHrTop/jfuuKΥХQsŌˀ#l z=i%E?5 5]57~0vB^J #N\j'gHio5S0o(8ZSaFقrDqaTU( &(V>3"8;іora4ӮAX֦=3N"@z1(#\\Б8zb譛zL-x*Ṷvr58߻U]tZ$&DE As|OZZ0DZGuq1+%=?Ř7ъD2A.#{qJVM_;G>Õ_ա "g\x˯:*kP}j:ںgn~'Zj(,Pcd9 -71NqG 5~I7lmq Ro:qP3k>;?]qV]l !ިiCTS{ M/uhC.|W#T A!؇pT85:ZG5֫=n(;΢0/3*pBaE Jȅl`,_ڞ`w0\G/aZ*#h/'e`Is~&,ѻWM ]sK|S!tbcٓ:@nȴY!~2K=Ʌ;!Sv|֥_A13\q_L -²_`zZ)̦8hel땝 W:Lɟ@Nw$Вj>0VUOn_†_43dg *"5DZ-*|~P.TOQ M;j=Rsfח:OEVƻ>PwU~cwP!M vx#1}M ZY"UXt(JvŹ6 9ImԠ @6U2*1NlIz~ Bޱ*bW~xHńQ5Ǔv5DT}/E>G}1"pn,ȑR1}tQǜNjSs'n4H@%MBw2q0U=q&̟F>f6 5_r*+FA@|x4 IQr]ʓ_V}pNvieD&l׻> dDSNpK-oO#Eky_NhU1]t{AZ H |""-qv@"KxPj C SB[sAk8W:J+x]HœqF\\![Ui.ZI1!ŠJJ_uijƓ0'p̨53"8)n\Aq!8|׳5dZU 6 Eb22tY-<7@Wݑ[mKG* 'DSٿntc^g$gA>l QT^yWC&[U anLc-tZ0qi<7(۠_&3ǥ]U'QU997㯾vw taȌDvvdd5Z\7s_J}MwvxOWGJCQE1ظM$y?b.=.[&Yp']].f`2s~ljh0@3>?JJ6PWb#{dBngp%ȍr rBU09zCHTD;<99x޻w~UsjN=ٞCN-bV8~oe9nJ'  ݊2{u%_s$_Ӗlbi,,c>S]kegg݇h,NI|?2VVljTL!G ؔ8b &T7t8R O[ Kj}q~ysj^:A;%-J[ƷU#Y`@2feƒ: bS6:_C F\,l!(rdɂYsEۜP Ֆ-dn*a4H%4BFO rBv'B*4[},S2ͲmǶ4TFBxfڏw&3o3z@;=[P-~j958ܡ8><_Y+^8`8`PhO.OM ؏;5w/Za"¹@מmebHzWRÄe7zF㓸MF `~/8YUZvHّj5&#=099o>?kCÁ(QFZH E}Wŏ}ɩe&r ܽ|-!]!Ej[^J3/vN&2b9?x͸gwЂ?oXҐ/ibS=o~y/@1=e4[R냣 SP ]z橁2D(7Y Y4029c2-QH *99~K),.H^s3I:Eιʿ(7<^M|#HSDF ^SSGt=.s->@V9D f~G9d Uד WkG7Ru lդ]8D}o6{>ڢ̼10x 3*`:?س%Uh F0a.#Ud230`&K(rse],CJG晓ːn3妇nJ,pf; ?B 6<Շ穴Q>yT3Jpޓ_ ,,sjXB#(+BR'K(] N1/6|AI0I_ QMfuWκ%oi>#|U]NUym7Uj\1Cy*m.镘塃4~NʖTO,`JB؏JaL@|Tn +Y~FM2|p]t5tV\̗/=L0ح]v|%&T`lV9{IJz H@&nO@ ,8%Pb"re:{&Hm>P]V2W,eF'ۅ2x9rJ)XX~ߡDI%X{+<uھm5 Oj@Y*TQWȚ\*kST+ {8>Nh{iJ\v~EO84T,:m@܆/ds0g+p5lC D "$Ff*Jݽ0o}iƯЧm KBttr(ڞyTcpؿjn :}#oiCS%[ /.3-j!-",ro4"*JFHc+eˇ\]1A7'{G;PT]gfZlpr+C#cHwy+RKb@)Jcu(g*YQ=f:6feLf۬|}&fL?7diՌ£#m:FP*Na+eXQ~NQ?f[51AM-~snWNQwGnM{oi1] I7BZϖD Ә֯ zJCdλe<ۨ=5ڵ3R׊*v3 ouK;լ=1787SSkNlQT`QA}1x'p]R"f)\  wC6@1tsPZ5?ZϺ*Ӑ \UFr|@}L ݍd {ėȉ Cɻt@p dhc 0'4QYjoREVN#ǡu>< M3:3ܴzeTKoȗHM07%~G].B.:2kjǦ&Q7c.5DžlUFة hڄ/=ҋ*!~BXos#)*F3צB<9KOeľ { G ykE6\]fv{s&,O%Ϝ Xm⸌!%ȼ}U.H;B"cRQ\3VsPƆ=fZ s?2^zͿFY}Yj>E&rvUY JCUn#bOq\cRJ>Կ׊o'p p'U<}Á Tc,: l\*l+#{Gp;u(H^S}׼Z{0|XpYC${Yy*_ss [e*Ϸ͜,6 /OӦM6=1ĕ20]"1!A=iJ\1 C~Y1߶zxg(%INPFD-``E:R`G;  DpS? Jh? Voe!7r 3mP 9],.Ïc)6D"<&[TT@y)QY̜ G$@M7~ϋ[YXR4:묷NPkzq1"ȑwl)Dgʓ/+A,./p#.hM2.ɮ;fFGoO݅޹ZV 11! o@DKfuPV{}U[:`V>|.z *3Y b$IkLtrd վsBFa&~qH?*Fݍ#DAXZ@ՙε0o+<c0.bsD\pmE!tC4۳5yCԹZ 8xy?d.[au+&ֆt񎏌'f<ݿ{Q E;G"FHF&&!ʕSfN k /mdFlA Ry24/YeZÌl/j<.F0DoTHX?D }QQs- _]ֳoA`+;<pN޵Nl~-S_j5;Q; tt1պgr6 -94|=T??6-3|0Q5X/?گ;=}.i$hܦ ~*[b}ݹޥvHQ2jD~H(ɒPcIb2޼ Avس‡kvA R+`v=6\.h\))h/'bx> v?Z9@:bԭvU ?Q0׊(c;v&)U^6XUjaAGg[b*N ch{8t ~ R |x@5cdQrZ8Y-Ws<u~(h,_g?Yn5,wH)SgIF(P*/f x|U0ZrTN%ѦR|X0^{SkΦr4݅G= Q#87Dg722sǚf%?\oTxٯd4?Xz'#ZW>0w%S4N-76h{~QbO~xEL$qDob}Þ2MA tɈa}cV8. k <7]2xa{g_B2yƍRej:؄`/`8mG hF?Ne x,L,TOV,s[Àw˓J<7=֡yw*Z/~en 5prP;tR0m}F%l( +Fxq*P;W 7Ը.~Wc᧛W+4H=Vg-FUQ7Y2' 52X^!0+ϝ*CT*cʴ+tʙH8mSzU_g8tRfVHm޻x/,XΊzs\Dt /jo.*X||Pl-˅ WO`xE0KBm_Ks6g?9wt#sXMNp4V ~OJSGώ!t`IQQaGޖ h_毟WJyÇg˵akNѿiO4otuA<73Ra :jxjM1^ځn?s Zag$]~ބSvgZ6OmgRd¸Ik9)ml۞; B[5LlwGR^Re8SװA%"[W'!;Kҹ O֓*_8{s`Wpِ3v$sr R3c?bW31 ؒF _:CA֝27Ŵ>9j#.zZ0msbt~m: *4:5nQKsbI'c Ԙ,^"cU82uthƢr*P7(66w-]Vqy?ygG??ݮC)* |u`7w+YJQ"Kgz !\ßxʠr@?,oOcOnW{wfJ%Bj"6>ҙG>ΚV/E b"rs[ȯ{Ħ&bD8֙#_4# p/WuA40量yA&B5]kteyDHA16ŋZN*xz /(]9_inl"Exj+hmBZf+O♟C 'l XREg" T$ZGV$32;z]P(42g. D{ V7>Df%43lø`B>;W۹J>eb,*2qUS&I4yp2I]37+A3~'!!PEZ`7ˆTmS|*? [b v]d0[56r[(X/Tw;μIsHz {9QG̋H$pBs%2N ݧӎü愯jV̋c8Aϭ PmZbFjmOn~5<\| D@Lիe*{⃆^HqG)u̶-4>v$j51cJ " j q!IӴ1؆?^[bj1q>tHOv]0@g^%Fynb~%_na_x/f bua]_͵2CJ83}ND5ĬQ:c]+;_B20{Ӎi+A{vaBIvv-\MhhU4JrP=(Dl}%PXuH"01f /8_m# :!Cm +ZY*JYx,|Ӌ0nԲ3m'esǮ( ki7d3&{DO2B5bcJIpxU[y Y5`"}zwW:n7C̐ˁ~Zm;J=Gb(*{WA:@~Ńנnĥ{3o%ۣwN4cKTd@,E:r GJG/fOw<`trNS\HӘ4(dϜb,Z,ٌxb7~.X:ж>,TJ؈g:( /'Ѷ YaCx(N?C( P\U|* i0`4Afwu;Nf!d"3hBр KoG 'LtK\cͻWx= BPϵ `:}msY7@\-drj>u@HҤݬnőGI[UE;y*=JϚqbFˤ&[+JlvCRU-3tO CBdح|#HcVX ǩoO|w·LL ~!7tK簯ϊy.@$\,B){$ͨN{_{BM) S(dC;9Pmt.j^"f4K0OݑbpxF y/u6 <4'Dֳ. ǴdV7g) [2 bMlE`{Y~)Ҁs$f8o3o7-SNXp * rZ8nQ% b^B%FI#9'HT33W1:QPq,繐H^Ǯ?ɉZF,)Ě+9GYuВ$' 07x16x4{ 5ީgL(gP [Px,t;p<4(ĶiBn8UP%{]6^Opx5+qy0ZI?naQxUl"[~Sh2QҎj( ˕& ʼA_r$+yB$g5SEiEFG #7{j.r h]HBHw'h/KLrEԈ/r@IV75,'z>Щ~UL=}ᕻGj^H]"tё;Pq4EJND ?org"q#3D{.jDh.ZP?oxǻr<#nM.j+$z<.>}Ad-gKAgD{qduW): )u`uH㊽⢚TY N tȜl~`ևT [Ě$a \{'K]m=ЗnBGy *LPK <"F~%8Ν(&Za` | ⁲(͐B8ey:?ckJ~@o.32,&73iU?뇸-;7`Sd"K2mO~߷|[)E}Ǽ'#*Ӝ \NrgFVA }=f%/XVi 3 hC91ds.м5MPvj %Eֆ&?qАc}>.~cDžWӒLfg&) [b>f~E"x22]۫yf"^iAuCuMb Cq/v[F(LQɤI*_cZgkwYQ#0tNVns6=]s8^K4W/ǘ&щw8g}r,)7(k>8V 뛯pH';-ӎ-KP=TBAĴୡ܍|f)x{b/hyM7vˎV@˨(sW5QvԳƪ'm7Q̽<={]*o-ЀxTр& h-ؼ%l#B35W<Ҫ`;Uݲy ~/3At(&c~]lPKS2ۄ22RS[ٞ.撗(ߛ)sG8w}Kf8nëfn~7{2cuO`u*mCɢ CAz#&j.Rg<^n޷Q'=ŷ֜ڱڼh$T) .S:@ԑMl^V&q|.ZEgxLWer~5U7[!ޠ.a݀I'/ᄊ| Xe{ye=[I;?8S}Zd%/v(r{q /j|w,ss3޻p P=þfh(8, /]U\\.SjRf׶TY>?xl}7ge<]* c`gyVjNvU,{'rqP0%7Ncŀ*tJ枭,y]~1Opj') QmJ2\ynWҒarunΖ*R#A ճ:6sE*@4@j{_ѷt695n^R7at˨9+lF5꾘KDϣ4-+ KSrUy ?f4v%g9bAlSA59zKH2CfGdM_&U`}BH|?I!j!ݧ-͗Cn+gTbA@shtr)ˆeD4(Bu#H2B 9_Bl0e.؁ZfsA*wctN!B,01~UU.ӳQM cؿ+^>t#1Í絓q X(%M/" &: T˄G_Y.bY3Y_Tti6r "fS#^˜Kh3\ǖi@|oێl"l(5֔B fDS;N1.@Sj9DD)+V.C兘H*zY0hR0r&9sb$ljr P<΃alpI.ZV ҳ_?zFA8I(dDb>cɾ( ŏؐ&bs'p[t?ZU׹ž;A6d `(9sE|\l{mNew3TH7rFIdj~lQЩ*5Tu`ra҈Zpva p>C}؟fWgG m$.cqR0꜍.ɵ(:)L/ek >{wʜblhjaZqjr'HsUNVmznk \vAQ7vs dR >0 (aҎ@.Be9xԮ3.rݘ*9r2aY cSQ$2-8j*}/nNuģDo[h k @rQ? ֮$aD{X%m uDL45q8*(B^m?s1h8͓!pP"ydVQ\OCVEٌu8HWW{@;6J18R ֜WޘYΝ.u~$J&08=܎ZhOs]Wq٦ּ>Dw2Eܧ5arqIXc-jC+h@PnmcLQ"#'}ux54ܛv;+:(iWKqcо%R( !ňuEܢ2' J/Ҝ*՞ Sϧz^YCVFXҏvϻA[EEٴD_UvA:z{C6V$}LUMe6nv*],*A Cžx"rNq+p"_THjh1pJW-p-A(܅=/4"㧯.IɁCV"6o[:xpz:)k,i%R#uo3MOye#mJ2!fyPx)qƨJB+i ep^vtskmL9v&ֆ띏 m4_,4aQM Pjڽ}8>0,aՓ⡂ KΏ5%fX.& z6q{ eƉz Zo.caya$V |ٲTu{ RUvIzNBҽjaXUQ*D72Kd9 >pAV9ӄP+ '>P [3T ;?@ Zlj# u,!*aƒp753r߁x5!g@r)F Bf0 BΣ&dNDX:?KQɴ YCj'LDGC+y/6bK=XI%GT-PsT z?:>O}-J5q+ B[UjuD="{cժ=@|NaZ "r¤gUthH}e|k)zI}}d:4]iUdGBa]w)V~n3L _RUUfM߶ Ф+ alI{ujd\NO캾˘\`3`r?![0QnGfIyhY/jL@F7 u|v)SxJX,FD {]k~Dx;vQ4 ԰witݏ e[ ,w:?u4'H#": &a;8bR>5E4S@ܾ}'qN.bB!BШVYcT"y .3 f2*9,ࣀ$eRE]t"lcMCqKRktH>*R$pD325`{]:h:Ҭ*k-T*"g]X~5ʽ -ű&X^)*bSؾ>J"\Ih˜"'A"\Tnh{ryir+){  hNIJJm"Oika8LjqSNWY6;~1p=A95eH(䪰#aO-/SA9J'-@9*/ x;KSQ&γo7ZzꤨC?w&Ŝ a% M7CETif!z7#>f`,_\`Y.b9twLiU"|Ct ]hX d˸z*3I×y{6(a3^ֺŕޔW_a{ܝ}Va^Чh\wM1Q_P =S6r9tۈD[)cKkC.>5~ߊ:Hc;9uԸT+tflip;~Wo]r~`>ګEbsHY1,MA"^7rzk z |445*5z:cȳ2&rP H8^bnF($7ydSu{Q%(!;{'0Li4tuU?[ ,Yl!%{:ܖy4^m6oŪSeu٭*!?fQ/MN UT~\ŧuw)KwFp]/~ x&,$Oox%\6zR8lgOE*A+c &hn=e7OĻI .ތo3y*ʗ^vK3eԖ1=G3\%MNVbEʚBE$%,Q݅7'3_BU͍a=f`߹]SFQiKْh85snxtP`} ךq:m1,Ҥ#Ƃh| acCCJ^9,1Nڼ N*L1v\]p1w>1L<BvDikJVP:olwE٧.ȇ/7JN]sbiXO 62>Z*!5nWa[}v)YN56<8AhV;p2q꯫~ n363H*$%:h,)BPί!ёףO;l ;R_)h{WnL;MÒj Of^1{:C9Fh឵6HyjVrMI[18cJtP+MN@ufڹEmzݷAE8Q{3ې@$;طu$|S [\zv.z!@Xb%M3P|Қ[¾S#;^\3.o<d@Ѣ Do͕)|`/k4׸W6IDIx1JU/`K-c1!mǂy\T^9,; \u}Byn`$^Njҕ$rlԌ \" Np"DYw|g݄t%U ޖШW)̵јe3(?ȼ؉X[hCbRITO 'lҴ5 ,uSEvFa6A҅N}obF 2KC|,$`(Ժ@)L3Z$6]z8oJ;0^J W4ɑ& l?jdnEn!? Loy{|*^Nʴ{ )b8tL<# ߦCH'^S.HOb%&d4kRʤ?n o^qG{V"H`)[V5(KeKgjR\B$8 A!K_AGf2^(©; +n{ثB=WDðO1A]vgN po9x3S3eݛ$"5Z8r<O;F@v\ed P)2m۬MݜҌSGfp\2ipXRNZ o1B22 F5m K!_"GR#/xv=vZsx7h\|b?3kSym>D 5ngViiDcJ}3=KX,n/bM:y|1tmvocC.#O}=*ykr{P"SȅB=sLb6+h$8#"WҚq!C!ЬE+^eg u6c1dBlԶYG$ӓWk2̕w Z$L,2`~qa^S0?V/1 $/ Z/d&F/hŲS8Bye]?in.@j!)_%Rץ !kw_w'`4i(*Hȱ$ H} wsOpjnZlQ(d7z`u5DhSOtϘ}UG >׿VR' jEژ,c֟`+9Jj H ߓ9F4kK[9(w*sm>!KSbȳʽ ]:;t Bl6pĈIu/*7@EI; &՛ x,1.':( pAnHy9y0syMnt͸*HQgxP; k <-l3C/3Ĝӫxe[ɏob6QkdjDp'GYعÈ=ܺ `= Z_AҼ1ދNÝ>%yޅw׻[ $>vGHHUjE~ FЋtzx6gd (7:^T\>}6?m A0Qny;p3),6 c}Hm{FT`Mndn?IbO+Dg9ik@ԕ-; YDp8 /ܩˬ',}.W@&;mϜu qqS:a\'#nvh,W$_E~|4-!$tU+O΅ :P%q߾&.k@ްh'ssR'#Ai$'ܷzn_tIRnswNzq[|;6M5s/ zkȬx{M\b(+n,}616Sv듞0Ȼɂ1D K;1}M$>/O)XN$郓ǹWRN9i}#`. =b0#ioZUC+~"ez"CEέ]ds (Jf IdbhqMj!vU'a.ɴ`raCKBuDO"w.u::dEBwn֪wҼ!μ0}z Èw@0 ]XCƍ뮚 |2h6UF_chνL Up:|ރF D0ګhL{2j& 5}M xpGAv8=H'o!3 rfРj(ҵ2{7 GvlƱQ:4P||y=0+=F%2:|TǜD2w"n\9PU?Ѱus:)9?vŝbTwҫ9Q*MTZhck K/k~:7AK9K3\J4&3fjxIcz_N; M# 9N)ʙ:MjL=?n۠d V‰/T]?B$z<72tͤ6J N6- ŧ`)8L4 ;[ ې+Ǒ~ɕ;hasYH(Qr޻J/0,(;d:Q`WUϊ: `1i eb- ٫'i0zezZmbT|[:Ri `Z<{h΄^HYNs "3Mv|SHB~|]-je/*ҁ@'m!}\ ^6UcN lǟ¢Anf^PF_)Vy~m43y&UG gjZʦ{QeRZdhv]2U`T@w% (\ mn!NR('Nݪhf%.[;8)< Z.pXVP$9m^|/v1-^llt"INaG)~ r-c*;P6IRBihF:t3?f\-<(51Vm elnCЙH`<>D\IN ,T.j1O"xIπU;6364I296A衢})֭[S)`YT^(pa*]l.Vp}kb1fnTSOp%u13-'(d3Z kXUʉFs)n8#HA "9.!7mnhcaέYG6nFű04LKK3`,gs65c@+k[4Lj=].yY-`m@[lʨsm[:A(Ip? cdsצᩈGe 9C[97xe_tk]JrChx4+m^o aZ=MI&5}D>*?zr\1UTL F/tg>_Z'aIj (XBhjyegR 2W2&^%#DU\sT8"lxxt6T>p>Hb>ZgK\ et4zk[Ky,jf~ Ula4tݴDR!H4 [1If(}񁂧崟,?X檄%j/>4c r( ~?GC bЍgrSMStnG5[722[-.λv2WI:rx^t^'+48\ZCqֻeb]4C.*W)j?^6IdBg8\aiOecv|1TiFLl>?!4.]fDž4xw,ׇR/oP^S|#rT{<*=DKL!w\):w1E]tFcogW'Eh 3"0qyj.Go!t_{Q&7($I&m~-xP@^$i<3,Ϫ)AHISLgs`Π7J2 qSp3LVu7rZ/x)kPք dYU[  .oJRϵ w!jJ ]?/}hM؅Xvr3 VƕM]oe6Jjyx=_|8!Ǫ?@p<HIbKmbLrmfX};uRߔs7ϒ)3y}T~n$! 6UQnpDeP\~_B(~c e/nAѸXhlFqdxT JO\}*qz qv/ĪNYǹh{w_DP$`^;TȊF ?O? SwLÌ&V?30gK\|E9tt}>2gZ2a:HIt~J?W-Xۡ(Br*e5ȍ2'eoGuy\bZ$mk{rG)'e_Dm{|*5Mz&z5?8"O6=v`矇*y’W/31/YmKX@堮5[㐁K9:2<_`ܷ_ET[ۍ] DT^q%U]n;[ KXRuSG2tg &v2R+Kg8qA}Xz7]~{T[YcEg9o!dx cL tUe $!B:[!^H [hC3xH?4)fp @V\42Y0F;!$n"&X}iӠW _'LLZ%Mf_@w@q^!ɖ܄LDڰ lhgnxL;zBsT-Y J͂_ӀPZBcf',ϻ` R 5KR<+XIo@HZ#U)ؚ寲Yk8@EEB?fJgOkJ?%˓LYS˼$k˫!ap_R> as)_@|Ha*^NI*`Q@jh V֠fE !GzuwJTU<I;9T%a m,w8xozXz5Q*nΖ| X k\O9 O;7w yt5gVHɁ{iI@3++f+!NDzuS&>E"ea5nc.’Z Y+:q &ZuO^sp*uJjed]M 3KeM>Vt)a4V/z.w4;;QBu |iG|ݱ9J~X03 N(?LQj"&ϓV+<-rB7vM^{1EcflS0_Yg\JpIA X:"*}p^GWV1c#)`uHAo"re0eə 5C-N=p8Лe ]h?7U+EPX ~Ɵe?YyV)=} 0p̖R~ q<[hCB|gj=7K;@0(q/ HZ'EvQ W$Xpa-q|OS #qI?fxJX|y+SP5-QWE9N|>(rx^\Z.F׹jȷl$*ԑnP|\Fu{2w^|r񗍆ZZ*`w4Mcʹz9K,(,/C<{06IN! =-ުZu)H-HZ@qZ¾q*2 3$(NgUOgΏ9@TGehrfCij~Kd"{8VlX]r& ^!ܼ\Z%tp}~f/t.!'&E-R_X̕NӒAwGL{ &@-fyFj}:2cُt\%{8 aC7ɻ]q#"'+{kI:mzY Hz?|ߋeD|2Q'fH/Ԯʮ3۲2I8G-W+3]5#O-˟z7ˆǠ),M\ӫHqg^E庐+bh,ʷxqlP!(!i [.^Mi5]ij0='twudR61L;ؕC.8 - -]kPBs"RV%5&By[5s4ZKj|˦*Y%_Х Ͷw(+42i\<NB /O?k(;<1V ܼNQѯ,a7utxi F˫$DJ')O xFӯ5SC"&?\pz4c^JFHOk֎:j VP KKPU*ﮎ2 5UL80r1`z Tf>D%?KCAvDXI?{{Gy*isXX+mc?7H ͎ (8ί$}d+ߎՅЛ#[ҐKiWmz{޿Rimt&@Ʋ,MYN_S0oh/ X5^RK~!6c3[y}8_h$&T@n YqU2„w7ǜb|=5!ۨGiD/OH׿(bs^a[R<Ф2NnMqRP`Nyb?]-ٕҦ) Uqo1ouSE^"h:)1 Ƌv*YxxsO1]Ľ5ʆz'vWj朔3ѢFxt9,5sS)LbګV&gA^68r(ۅ?+;+jQW*<[*dH)AN D3ZĐhP;i8QiICĥv~*pili@N@:Kwg?aJ/;a&ҕޔu7p6[ZV{:!ԌO }D*E%*']^+h5r> XPx<oa#҄/YYgg wG ʱ`O#맦/5$@,0 }YrRjH}_3ydr!ת`ǟl`>+jcwl @dIV EcʈH0 [R9B3Sv,42_r̦NN*J/FrE4]Cz 1Kc qJO(T6Lx}cE'j. i 5tI;s #35[M\OpwYBw"V 8|>-#L'>|9h|BHQ4-}bv|tk]ba\]\ V*~]!Ћx[Zl:Z2,xp#a׺Pd󢟾2؆ӆn˒\kݖ;eL]6['}\3LSp'{ŒQHF4>il @V-">$I粦 BX( cwM-\XlZR,oxw;;30Y=+My-?TLu[;Ɗjg Yx|.IWy{MÚS\d`]ySZ!lAQ+FIw.0w/PJY+fQ5&G;2ZηK;V-E)x j!%!m53R_4A iMlL?IT2o#ч 3w6"$>|Ee'~ro7Q.KLްOIpm":#KdI|~鰠HnQ$+̚)&H¸CL^,~ xmXZ&\Hpr'՚otխ//j S yby)gUv4r4=Ȇl s5S9$ @); Ԍʡ6 L\jޠ.:׹$?Br1n?$" H(Y9n8Zz("6%s^ڲ#@?Z'Km [ Q~ų%Yf5&暲ع]C0ƬiQu03+]ad4 .b?t&SE-#76j r lG#ݧcyGYq'eM>_kN>@uRK[7EOէ *z:)DZd)A 4i)2⚛'O`7!**88ɉn`$cGBU[+pdպ8.UCi+$:kPmcb|=M(4?ğǷ Hoȯ[ZlO4ybt4Sj]|1/GkCW~1?GqW{'l fYlqfjJ#&J_*mTЖoYZ21)<(;*-oۻ#3 !BD-iQ@"Yq=לhJj6NJ ?hc9w뮦>ԑy48Iكycnj)43 Y8˭NNc4wl^ =}mJ"x eatGϊ/LG䗧+O]ִ5\vc " Z!3󡠵dn98r~ߟ' r#D,[W3\zTߖ2 =_cTHȖrN)'U{·e֟^+aN 2>b[O}~\&isRbN'>Uɽ}YR, >1bgGwf<> \/P$C'eIk7r@{!#vLro 4kc9pEo"#a'֔VΏHtBXn E""ʃFf"KJ~0PU*1qXbWQ1a߁XL@u.h//ԑо4m/#~ I(q=E \̋ rf},ּ`l 4]g hNƆK)c)X?&E w 9+Bf83/)l6{ce\=5ci~(jβ|-S˳OncImOTRWsGh|Up#z%#e 5rUt͛HHy4!TWwZi*6?c,7?bq,DwZթ֠ΕU*`W%i䯏(]"cv 9߾ÑotZZ6a^ %{EܮYo'DHʑb1N!%3"ؚ{fV@9v]ɐ=p#Tg˅:ߊ^oF$²°ۋH#ӥ" CN; r=s>`7r4eܭ}6K&e w\bv,lQ՝Ǻ<éYd&{w`ji2%}Zf?I3:oJ/Ph*BCJ'((&wat[cw"CvӌzռLO.e^J½9fVZ/˛jic{Wtđ:T[jKBC[TH򓁪xr7qtzRYEuxUp3Mt]s^ՖһI81*)bŇ7xG8UMm,|3,!PBp-2ic?"\')MpC{m<%][4HB S,d< ?ގ'lf`B42Fy-@ ! 0Uvܨ9 e8Z SԚK (OdD97>eP\0*~M٤npB?<"ќoH66j/[P#p񼤿A>q?aooXHj:1pL̒cG? 68t)9s0KGzpY538K93}Ɂ9냹mAN2MU$ū=?&_JjWCNxmvL\19+c,L6. tIΚ˸HgkroK:h%cTܡN@u DPze$O-`=)d҇|Kcil_IeΩmlHvs벊lW8(a %gl2XwףּNyh p,, dϘx}>TCAJ*C-.Դɐt$)⺔@OSAP2|˴:&oOw8fHOnه~>C7 A+AGk?Æs;givJ^rᎡ񀟺[%\o+=A%c8 Z 5CđjWLP|aGkig^p13eKkMfX*?!\nPfB$ݕ3=ۿaeг&_i'oY:kyfpjO84w1 nvBvajCT19qY^ϘHT#qHU%{uJzicZٮQ9ͽT>aW8>^ek!sN8@9(]j1# Sl&3ԃt4J3*Ckf1ѱytvEzY|1h .]Fsϵ/G[GHו!u/)5I=$sO2 Zhi?m-_RЋN1G ʱjXp5 q^7}m<`[9\1}F^1Drut4kV rLl\n${9ʒ&(7l߫nA;itur>az@sf[B;ec7_뛦M!Aq؜\h b;UAC>՗g"'@ W2%uJs`J9-'NXaG .>劥G`n[ uାQy`NaGZdlR=0>c}b15vR;)}B tfM٥y:   ?}LQj\ ހkN;AlOE5? =IKl,mÛb)*XӸ_Φd3]ݩ58ҡnys:QΪ'Qڃ1A پt>ݐ}r`{ d I|Ua#;|qA+ٽXz>bh[i@FL~w%WXr2$GZ0^ 2~2Q+L""j_@#Up5$!q;;+(Mom<砍u+oQqn[z9,ߎo|wqFTe v皺W/F 9yDgi\HM֒:ڵZ RܘT۶>p|.(Tf5B &xŎdJf^M6M:3_!(`,F͈tV8Q9| ڌ(1&~u-: ~AGSA X,Q;B|9܇zagU+32"nBf|=S eիE^ pf^rf&"/96bN@n1?H픛4o"^}1^l}WHG S3"2i/>F%D}ZvyᣂewFiKJ0$% uuXj4̈́'Ʒ$>,L(Kӵ m'seɋ L-Fh5c5 "*pwLZ,kʆAx8db, /RNώ Jc\7읾VQ\,| `O|P)9>SulD}Fɛc_0or/g5$!(g 3g\>)S?:TV)"gt:zOyDPG {z5r*0,mE z!!Kߵsi|R@_Ghџc{Q [fJz﷐B.~C</j&&y0V*zH1>L)zxo6%|/̍E}>/Oѿ.a^R_}3I)&g؆5D ;K^_}QsGY(WUOGNUnfK)>6 bkF* Crx %"?N@;QT@0iNeOԧ,H}gB)ϿEfyOp5JUD䈭c [ϧui#B*ޮ+fR4"Ts 5XtuY4ʭ#-APk>? \i!߶6 @n0kc "tcɶ'ˈ҉l1d d0 o*kZvl-yQ #kM~[ƚ7Ԇ3 bCxɁL<|qa8—tp ?9D+Jbu7:o%wZgA;m*?Ocw 8k23 ptp H>v08KnAhP*y{~qPuKHԧ 2UѤ`MֳYW*NMX :D*^pQ:W&,̀E>U|)D0!\VQu .FvXP> R\'FQřб^4[^S!C1-0opsbw䈈`bۢ~qO&Q"I sG=azCy] V\ze59@5$8<,pSS@6%Es`yQ`Yӌ{8Yl͞ir흽½.YF5鋘$^ƴqJNˉ_!@=ZWfئzm)B,shGvO2􀼷ͫ~{ќ"K1ZcN^GC艑ugU+oPD!Jژ#39Zq^D@ 1 $#@ΫPȈv W~|4g o^d(=7y֭x@ɇ!@ѕ$D! Re/0.~THbZfiL^Hљ%է<GٜE.PFܙ 9_̇8xxV!MбvxmUc$Ҋm X-3Nh ]ur65d'B @#d_ҟ0-jMIBL5s,YkѴYjuG⏼2J0eD1zÁh$6mDM=w_U4icD-vk.(vygvC5F;J[˰_,;WP:TQTg6'Xu'4UvEG]}Шw#uEz=YCU!g+5*88G Izе"F[ ٦`2 ۺH9A <2{L/;+g&sH5i]qq"y[|U*(aѹͬ?^SI<_Q3 ߟ`]DžQĉ`Яj4V ܒ_ - ဤL'EpqT)h.XtȺt!ݬ{5 z{/ӐE9_ ?LlEs'b#pL^Xޜ /;fZJALEQo3i{ݩ;&DYOY&^ Yx=U< %Mi!bjQ*rPH) RXKW-Lsȗʪ_s; Khmˆuʷ@P $hKN\?. AdHS a$mdA<+nn Xޑ ;Ay-+rIr\9 ԌgT64=~\>WO/a PHySj'܅i וVJR״ v&_ ;Nq溒Ǔ~a㹀ZJ,}?q7Є[.c'ZA-EVܔo e^ɨ *2V/nMQm҅KoN  |E*S>p?AwR=E2"vnW.'^Z[ f(Lns|K-ؓwag]w@FקטVvL6~IWGq/XEEdz?q$?:dn ;4MSKJJUAs 4{ c9Rz1r G2$%EL&h=])!QI"? %ϭT}RbdZre>~:F@ƽǝVpq=Ùbx2 l8rAЪ7`Sb;` nyd#SZd{npU4'u>cE-\R`_m.^Lg$G*xC#oN^t;Cx7*Ͱ| T=ɖZ-9ËTqks܍p`!s +=TMA߇O5Nu7T,hr°۬z왠ʿ/a ]\sڜ(:ߛu~J(HXqx 6\0Iz~S0`9߰(OoتDǩe=6KME SLOX*k9{L8D_cy÷ND | S3TvRm,i.':Gvg++=+l|+|0Y&j)n_ <ޱ^ygPZN:'> 6t9vdU\kTc84"^HQ|z=b/pyJJbEFa#cDZ|eW\"1`zoK7d#[5Uj}hF't}?cJ}yƈK+\յ|Tq:䃢RٚX2hSc&sbCWsd7S}R6IїItc]SLr(#Y+Z[sW1 b&M*\Z6%[c#Sp,vDxL>BGbvy@ظz01zR-W8@E6C8`K͵R!Sm_/`#Z]($ d;"Ig{5oe<Θ3C1(2'9mA  YI1lv;xՆ0J3? m_ʹInfȎ3#;KE1GeTkGFwʘ9Wd H%.;Ri!RY)u9Kt(,%ީr1,΁K27Op~tE4C:\t-T:W]UEӿB%eCTɑ%]$7:#?Tmu's1S\%ujtq1qXy(O'ZB]V8Vàf<)2g 7/)&L}L7[p:%=\78sdϜI-w/*Uasx!y]mG ש"<cWފP-fOC-,mQVU^ w'B@Y0 U*$HciVD6 Ҋi >`aᛆ4 y %[etZU_P1ҘtkG]FN@N v>4v c zGy0<s@~7h q\m-4j7w&V((+B _"e@qxݍl *="Wmc1WKob{nQ]-Cx)`~ ҁ/*1Af<+z`)@=P9dE56| "IX5 .wg=-f*ohAm>Q^ZDZ#PP&lyK8nϏ^M%"ކc6Mܸ>Cusd^Zj=1;~{[Ys#V@RĻ?nۖ`flȕ~Ҵ4#?|]@`ˆv\7x!xRN, h\;8,#Xcg>Um] ] Wtbqbb9LQ(5ӁkiC\?V*3(yϭ^-K7h@i0<ãZ 1.t-tOxz%V Lp+N Qus,"hM0Kp9(otƵHV^X@B1$й(^(B NEXv-'kh" z ]dβ<$0wo9vmMٳpiʋRƤ|o3nlG?a} ܭ#q$JMhnnQb_zȃ2I0|px 3k4[ WpG\pB>!C- Q|;oSp,Bbk uqTc?,#6c$՝ͽ,r`A( "+d=lQ(~F`>㎶ts(D,o|ņ:2]7 ;;06I--#Z`q԰xU]։/F[}qP\_o+9Y0/j9muDE8v}ҬlE3g\Ua3RJxy/5`6X9+_ss^c>ͷҳ l ܺ wJ*GG7'LaGyH/?Ws] C5=dm1vgMplOCAJᨬb7(_Gk*ltp^; RtsDY2tNݸLhԹڴ>*1 )}o߬?t/p9M*#bk;Fl؛̽]< B'pf:neiyXz:H0'LiM󢸘"TD&Ìkd66&-"m)\?M7e4lm%H:P[I7qfm5$ YBEz.ēaXE6b(Q_0ַnΡBWoe# b )\ށ}c]+v>]V|!lb@R 6ai(ytD.+z\ VћyQ@ԉ2FUp{}Y뢇va dN(]ay{'Rj_O?-rֈuJ]>|Uc"Ka{= wwQ^<]fKLD&:ȕjbM)" 4iӻZ( 3[OiRnS-:"9{gt8yp%$k°pZS#bϨ-/ af6iSe`?8 PUsQ7uЩ9hf?0]*GuX?Q I "E"OOc  'ߍ{g'v8LhoWҕӢl-q[4gM}΂X:h.&-KAl>]/n$ڋѲ6DD)d.svE\=$_%- {[C+\I31|yg^̇Qi)pRw -0|0_ipJW*p6f= 'ޖZg$y~޸؜V>sȵV"]0TPQddoѴX˰>R`>L-!Hd6-:X%6^hZÄeD9*ɧ&p = "S6m5δ4уaBE *ȩ]|Ey#֔:3F%@*sT;Kk>A]f c|u}lx"ek9:%~;$?OAKJdH@Vő( 4r6IVv:mp='J_5L^Q*CTɜ _tlCf[;$.<LHC7?3NJ 6xZ\LpgAG )m`(49?qe 2ǒݮ6( |I4Pt@j4iܙ(JJeQ"iś5d9 um|ղh+^]IwKz%GY t+do;Z3Qbf ޓF6h}LEF̕B: Tm1w1H~sۃBR* R *UM]* ˎ EO؞(͙AYi"PFd6s~I'K袋CoC\=Xqp酂#jMݥswBdkg"RZ8 ,P᱉ͷOoq^}H Btez3iBg 3Y]Z} +*I?J؟@vg73Ⱥa\qߨpDJy[\[Q`TxkaPV\̆E  6}alS ɞq ӷRTX/P6"ul&&aԇ_5jEeb E:Ru0>6+.MWW-~jd`sxޭ4ZX#Eb5(aG@-ajK8:+=Z֢*;$x3Llsm@$ƘOl=â]B$GڭBe]#0(޸/|^xuXӍ0B'<\0dab1=T³R|lo?6]M=ZmnNFl/%7,ԬwdAK'p. ۠dB_ݣ2|3)j t֙-{"cr^@=!hۻg9=b)!A*gX~yaٯuDÐF ap#$bʼacz!9K3 .rx?Z :RJ:84cxa| F|5#3:@Nz]S.PW1.{QZ!L F РJbJc]80e?ЅS ~KKʍߌSN-;$'h\TSb_.F|~r4}/X᫺1E]$isUWH9o`u[ k;gz9 i[ߧl:.Jf5gW\yKT Z~uR~ܯheɕρ=?h|cf}X`Q3kw +%%5nhr92Lz';H5D97@blmnũ!+4s\r1 Kvi߻Lʹs%~RV"[NJWx[fÙ5HF߿䦟sNʚ.`U$1UKO'U>CO\{o"ӫմΝ7he9X&cb6vcP7mGp71?ŲY|Ph6sC3/0za?=IZSZLҴ'FqH2l3 szrb~[frm:Tb8/NFN]`M?LsF&OrJ6S1J`0GkX91wZ0҉GHrm(f#CdgBSг8Z -Ӊ]]ّ@DOr6h G S6GTjʀ-u|-SR jL6T."P*{1QE#{yK1G:}5ٴK hASylܣqpA83cTt_iN8g(8lhXe%P9m=)=öY~Rl\a 5xxJrqHĔThMa:L҉n="Xǻjr!|mFYbz.#(lnϊ)^K3:fb1ж&r뎩 [8N?qT@t߀8vCMT%hpg$&fqSp};8qk~d{ϭ&3bm8Ο9ΰYoIAZȘ$ ;]#?1ن%vYr5R?u ?Nu ف.3y00\AEgK\019d߸_Ee継=6?BwE}WH(,Bq_6tovbM<߄ a}Bh{#NT\jgGҫh3 (L׳ȍfc Ps'𡲅fNg{n,2#1| DSN|&澗{Xh1=MyK4ѴXh*Q*:Mmn@U>۩Qx0VD@n4] 8ܱ>{`"!],զ\DsK NaiouegjcγA*FKQK ^wFcQE~Z 0it#`,H u#()O 3 ͐cFYWoCK5((PW5 \k+#*7Z DmlK9Իӄ M5&^iX Hl~2aq)͜8?**4n1ҝ.Tt#UbR('Wy>ͷ BQu',SP46vD]Ds=DfjXֽZZblu}`F2s ?ªM#%q&}vn&0>*^5Z.TJx) v#aZY#mhh";($K13w]4=cY-˼O3~~䴠Z`,~?m]yˣ0>6. {(?sm`')s$tKFlI y8ޚG=4]:<܅ DJX8X)XH@akoy<ј*wW5\ .2@y ~>g(YAv]-Yc|qD돆q@Eq.6EV"ͥV/s]a {`r%XY!t< vz5aJzN|bX_}=ڒ&ڝwm2|A&v֍&r>k=3+|I9 `j>)k598 PKн\4GzBv-/oQ#{;P*ӿ 0t7 dr? ]Hlj)fp:ȸOʆg a`ka:&GBif+ōLjd z{$L[*?֕8W@8 DZ.BT-d9YPrAjDFHW\oVV5"ٌ/8SVXo2}8dF"w { p*ϣ ɐ;lгcTŌ–?Mٓ Fu h:ӟd'<_IN~<#vEj{ skעk*y4fx_hʭh%cO'zw$CV`CLtǫq9ZphFu".~{ טII^?}QT㇗0"DՓo` QkM0@~.-YVPцvuU2bY݀JDi7C'}ݫ2Uym-CG<3dNC5@p6HiR2\J'f[(&83R 6w𤋮3: p]Hy4p/;'ԭZ׸:Ùz^,W n ÔS"$|d rm{ hE=-xP,ҳ~XB`e`|L3'AFΧ{S&zXFmpzYtub=,/n|'߀V22ĮD_څuhYGVZ ћBQ6r<6`_@FXZuǪFp1M/ CɒBIeµ2i2Y)hT20Gt3_4?J+ߵ[ā4;Qqtd5*AҐԎ@(~K˾eh2Ӎ=tCTQ{r,"gʳ͢W֮[nO3 0L3 =!_i$7ЇOIc?eVSp_W fbqcfaGV8Gtپ|?,@Г{o(F3.ˉ:N-j~}\L服{7%!wi֪,ם<^qe.|eB)fE8z3״Jۧ+5b_y0PXGA-rOaʎ7u=,:񤲑@`Ahj"qݣkԙANd9L gb~y F^ӲGb5V  &Zk{ph~ 52xd"YwH(iK1'X'H_%5+Jآ ٬iU-LbsD 0i|_Gq16Oem HdΩCPgSbg]6o,/\lry3Ewyyk-@$%Hizy 1溆B^ȏV&:ouo4$ga2Bcf)6d6}H WV6#fVḛⳲ+FS\<*<oVD0>f[fr]Kx3lo;8*!C*oq[IY袸E7M'~3i )ttQ8DRInG{{1mj+%{z+_A+tU{wq荡0swQѲ(cfeyg ciJBiС#DΞJY`3^HhR%-Hz* Twp͍g Ix̔R=z}\U?}s ik*:쮔C9\|tnqW<6G\ pN6PO RG̛ ; oV/ٌqzh(֊BLf~2B #XapHu6j:e,:r):7!rT>gY,Qmȶ=b x 8j^ NԤ.@Ho#2Xh6>L6j݈ [5ʶPFb/<#-yyJe?R4_>%79/&cggZKhO u c!l _ >DT!Y ~:fN?xX#>kGZ0G5ЀP 6U?FS jD6H (.(4US;Gk bԢ7!~wNF'ENM@0'THξJ/%gw3 J`RIirOSӭ?>EK՝iJVI&nFf[Q__j!Rs.{y*XPobvAxQcS }q5ךՉ(%"22p,)'r` D{Ja.,ڶ~i:Qm. hE*1'.13ox϶۸u)UEyJUЅgB)lz3yXnQ69 jJ\Qv׫/AA@oJRk,U {_Dtԋy#0~0#zת6P).OYiT0 welZO[Y2t2$z 0YKiek/O# QhcvVGfd47YC!'t'(/CIoS+ Nzr;x2>gA Cyyyh'!*et3>f C}HիHi:lB8W~|Gp)4NX!ⶪiu$4(BeB6OЛӔ?o9H@] IYOqX{:?jIm~ux:8'{vm^)TL"WظbOڸV? R2nV7s͛?o Y/Mz'W6EN`J8⁀s7ic1u5hkY\b:atqD\+f>CѦ6zµɉ9mqv׋lY_;o8h\ /(aVjw>k;RC G3P-o݅Gɽ-;lzƌ~P̉3`~d^Qzp-tr[mAwzB͸UTWDx;ՉK2Ed&Oqo8C[g@Fa]^JMb^*$tCbٻ=TΌL̝bBt%TyI>vBTz:L(VzΩ`:Jf G/fǻ i'e4h(y+͆`{4?ՈeRWao D^c ܮ`/Ñ Y6t;p0 y}@ fzGv|"q 7A#'#+l: `mJ4aҼJ-=' A#=E&D$<I8Gd(C-c}rlĂ ږF9,dG_e Q8L@Q:\ tI?wK,P5bOƲuzdyC/e=//I)'( P鱓?- :84 xHg)>ρN6|Ը.4>M6k@Z`GOҊAxL6kcA)3HLOyMl%_e"๋ZCIr0.r84E4^JoAo۵WīvF:g-p>_=;aVE:H⩟Iԟ[bT>1ru9¤MY󭘆.e_rvy( |-Th}]IR<3ٔl^ŒK|lRP*kO#Q? }S%X%(sD@uU E}u j:8 y*Q<іMt~Y4LٺּGPғpz&XЫGa?CP.5B n;Fj5Z"ƹGBoQZRqաCż F![r4eI8 "YgwBӇefY-x`\zf#Uٯ}]eWRhHH}[ǂ2.c OxeFLRUQWI/-`oNހɔ*ꐝ{ֻ)ttHuFꧬc\8GC!! ۓݓmpKP7[MzVʃ+- 2bi;gآ_&N =ʡG-w hqXWJ0rTkhwJ6tLo6}Tv,.13qq~" 4Rykcyb~ " O-LuQ oEz|?(Ź!ʨrteNnA" 46$Dhd8T_WRK#M=0R*i= B`}\ ;\;l2Fgܜ l>+zO?D21%Mu9x KGJ("xAq`0Vs?y?K34lខ5ĤtCqy!ȤłT0{n%V2,cVCrmVG'|\+78p%"^'S]FZ)_˲%a`!aM`kq6cY Xs~-oHd3 ŪاN?`jad8!=8J-K!_\w!xoY`%̿ʌ 8 QkT G±ERk*]8*=AՈF$ZHuE#^焺dwm' r~VY[ xlD*ZI}19 !篆]N>iz_y7o^4RӥZZ/d*ﻋL  c!~{=h#zWۍhڏ/V!j"H-=g%ړ^+wnN!lRU 7wz-= L_u_f ?d XK9BmRt 9p2\|9%-~5C.~0^%Er3huB[iZi>Ub%"|K5j:!ᇮFIS/$ϷTzLo^{+;YN{U$0tC̮x AnRTi6}#Dw޻X*dg NW/EWP;Ҙt2C[aut=S<7[u J*A:yg2^HxUaLۺ*>U7OZVB?Z-2e FlI\٦hj4P{ (m5ѩ)jɃ{Ț5֒ O_|W"?47]O5KcxOekbZ"O³~:]H_1M'uwOf0)vl!v B,FG[F,t 5Th4*%GGǷmuH+֪vIՆ^xpTz dXi: &s(&y-t=O_m5w}\$WKKPTӘU)P/c_ˈ <{Z׬GFzq[+EGPȮxi8 `pc^MZSP&bi2 r >.a8Vx98R)I >넾^E LkS>3}__䘯6LEM 4@'?MOX7DF+sS?BTpFi$s8v:%@2q$Fnĭ{[gF i^-#㣻t߈a)lo|JԹHP_C`Bi1%kXsl\{TPJw+b^,Jiv;i.$8]a8{8m\] %禟€YfU}C7a|)+ s(T~)E1k<`YjP^r4Q?~.ۿLj°I K'K&xO&LO^6A7 }qu(oQvƋ~+7EڈGƒ5,İR:xT {ks)0iFXba>C~CzXwx> w*?T'#!Wn?huׇhпe}$Vf'cTQ ‚'ھw $/؎Y">=R jwxM& EjV\ơǦb,N4J 9vj0']/Icn^PO)DaF6ew2 v:"hs1`;!66{]3y;[ *Ȼ:wL?d "EN+)+?Me%!*؆nQ"Fw1\ +?77O"; !|iGV,:kH adn yg|yE|B_dyHH9{/IPK<,GhFW u'7έ?ftB&yW&Pe.l,HnHR=կ ^M,0pz:$sE z1*S7RN.WgNIn"d,TEצ}| 3NG^ !%>IΜ4E#w,\٢\@4{NJ6߽ }]۷?7=W6'd^_BdYδy` ǫ,X5xN@mĐ(M##R %o"l܄$2k7a^W)м7;Y-mrIx9*@ܑ ʓT}Ov%mq ݼ)+8-"50 049u R1"fz$vxm- q>=ȾI+^y'ͯΐ*wry{Qol\FW:TЌN%9#.j;O-/!CD=+xzd=VPMЫgGCZu g(*S9gjjf-|Bzǯ?m1WjKu ^/LhuW!6*ҎFSiLbG1G@gS{p- jA3mRӧ!:; vLRQ%WNsi̞*E>5t3_[ihjNQ<x:2> ]_Ngf{VԭֱEmõ iK'+'w"Uic*dOەsl8{9"m8ـG)_yka@$$Wo+?E]f#>G+ZG\KxVksH$Fܝ%Ȭj0/|x ՅՔ ILb^^kqڡ=H2"8" s5Λ}q02?> irt׺@%V(FBSƨboٶRW߰85AD1ԃ4M=q_ix';tEp=-GchQ}xн_w9*tpc\(jz*´T?=<jұ{`Vo]F; M(ffa9hOWiY&z.cv<]AW Dzu{bz# /C.0Qn3cnAd<^dɐE qszܯg3x1cAdj16J&QJ's@ N !:w*_8Y^Ѓ1徳7g bޯҚ}Jm`tm6MS%*BҩbX9)9]y$4ֻeNhgYWG]=5O*̋ [ʅϷJD3hQ7ņ!ֶC 85Wt!`+*D79׀P)Bϓhw3R6$gäOdbh|+Ŵ^ $)z~f/;'kt:(mA7KguajBxW;XV!PK'·HԊdR/2rlo&"j2D,>d1BЪC"_7!Yp8 1qpRhQyNgmO%&°WIOaDҕ g_uJBڥѭJB}FCOAY>H0h Bo2P蜴:2q\2!5UU.rJ^"I>SNT^gѲj@aݱ" szvM8 .{3L6yah.H!8``5KmrF۟EIpP|O?E=%t"]?2I::13’[ƃqE?/s2zGNև&A ީR{їY.erg&!(=Y􏩫 AC^KaUk2${~][G҆+W4/& v:ֺ/ z%$%CWqA9dh9ns5uNq2['hfKb̆;{$qTrсGT7 ,;S5~6ApƤ$J"l9Dg3N BP!,Jfr]v &9#3H *3+˘U<K7.#]ЋO4H@`ނIr, ʥZͻ}N#~d#8%{psf ᜘JQy1##Z[H+T SBaH sd t dW%t/qq\)KJM8mZTb./H-XAH+@rou n 2I_ĚGz*R a~U7dNܣF@#X[W@qG?d>r>3!=e 'Z GܣkΆ|7f'~‡ȰGB]f 6XIf  e:#?w6e >hgjbe'tC%2=(6 }uik_ ZjsmzO`Lp2ejGWry$5CuErS|F"xk,{4k0sȟ k/^;Ot?-&S2j{\Ea,9`r=8#1VRy\] ߒj<]sPOZ>|IE2q?rSU=Lz@n ~P* 35ssQ.ybP&zaUF+&?g C8r˅;>q?9= .X8 t(/wx+ Qr I-,ڤ3̾JԚb 1Kυ_Ut֏F80$pda7oZ,`(ZYT?./PڤpI*v~ |[` L4 sik& FW]CR5qB e%neIHnIpyRVmFԯN=>T1_YZ~m$oe&hfۂGi_QКn_+ePaY!Ʀ}ulSG$3~tEqH )$7CIlc#~f[n jr*"OڥSK콃y6S(PGLHlbxtʷ7ȋ2vF,I XyV->-1/%d?AUp{P1ΪMa%z)qv>$og*IVW] !bp`N#@?Zr]H)3L"NT.gHonX^{WeleG¼Uq p[!X 7OIY\4mMq鸿/ؽ5cLiL.Oj(rt$ P82*N"cr}SB.{9#}LzZtZ&eD!ZD$5#&( (FO;P/.L qOneY3a#^Ka):g$k|e8pP͐Խ~6}W[R0j-ڻf!X1kT:F7 0^  "o0eq`5S2(%/ifs)a 'U=\\SRQ@ln ĞU fT-ޅhT<B7 pCKZH?H4%P(ɮ` oYI7fIT8)z\pjF;(BvY-a M.ݾB䤔8h+sGY.[y?lXRw`N ()GT%`WnQc93XY3,TO$V!2p&*.Umx/hAqWU7»b>T'leUOz;Zmpbg JZ.`/дEؠ{)]l  @m8\ pYh GQ˒`MAebDRR)L# U5|:Mx:}1cE<_Cuc/Z*kʯyi7VnsJnLؾ8zY+̨eW8]7JjXLgog(~ [GQ,*FQ]\%20H U|=moDө)zKcM'lj74tTĚRSd6lT,JTkuL"bP_Ph}t7 6\.C__>rg,ݩ>|M%Kszajp0K5v, EjR81Մ!9-5}4f1yFD p6'@oXոī\I6v[b qcDAfoBS 8sGKdwÊ֙ l}S#)uA""iI$^ƹ+ bDئx=o\/fX8 8}(1ĕ%υmЃh榼Q?C k AZxۘ!ǻڎo\ѓ+(WؗAq(ZxTџo> }QHlTୃkH'Y$WҖ<'r=qd {3Xgt=Y%ڨMt~P92ˆUj6aU>5NtxE"#]'W-T`q4s_RGnYQ?s*SDtK rbj,\Ã[ն+y_S{C 26Uz`]b2{;SX5bTvIQ[ej7%G kI$NyׂKs6M7 %娊P|˓bJ5ϊ 噘PutoᗉH5*0-=U_rz +A"y+ǭl( ro rpTsxQF =b7v~RQ9U-6 O"@\h)øqj*Ԭ\ЖGf%cW{W9ZG>yQנo|1^p޽ӈ[N&қ;Gd(p'nHsՔ~uoAoMO|]CéH딍qi.ąa}=|Qt[^2ʢ.ŔGJeI?PI54 ]4cSCYtH| )̓mS|LGu %:n) Zl2mfrjȆaSJJ Y8!V1"dכSB+GwcA?]_7=Dr`6HpTomAW; W2~>%@5(.m5wz3:n(c27 _#X ݔG^eM2椮nPJddI\-tBBX/& NJJs}qjdjO5D:oL>?EI0.})WS NDgJk6Z,s&omrgx+1.RPXB֥و&1 =v%>i8q"|@/$O~zM= /9g]q SbgΦWV"k# r?,! 1AIW5W^}[SbƯs(γ_NJѸW6Y, ZFNo/R@|*b޽]0YJMO M }TLЋxYWlDŽ3JBCz3[^A!/ku¼|rd(oC?N "jsYeI񌠦Aׂw@:WE%ԚRLד7gH0[Mr KiB6{7wpe|`wy5J>̡.(y}ErY`@T.2{Rgc=̤LPhg+2꒪;Yll>Klhu7Q prk& q-vjb՝;BWL( 'ocD‚=VݵS/:tߢ*)~H8R}MAl49[xѷeN,J0d&z9SuBwP3yuZ~F7tBwzL /8=L8\!\@''NO_(_RWf1|-0T & b=nICldlfE$n*\@5J4U8#lpa Œ>jDzym%N;XݸUFb$ auAJul7_,W !HBJ@ᙊWl)RoJ\IdcsCt H}Z #1,8lj31-o$:LM!̼cK󊄜e3 R4LZ~a(:Q`e40 PF 3B;]Sk,Vw-H 2;T iX:AM.8uh]X7d|;#]r1KlkoEH00_Dӽ 67F!vL"W[_|QG,]Aʘ9jUW-8B#F2Cźbg!_tKLD¿)) HfLPdT|i=͈f1QSEmx ԮYMH $W0EyۥR{f@=A[ՒF^q '}7̈e?f &~tL{%;OH"8)a; 8ҳe ,u 5ύA^wabsp5LF}2*vCnFzwl ddeo\u{By_?"-7`Eܚߡt9PqMXV6Xn`az}+n6<(Lپ7eTmF He0ϩUAՑF_#&[ҟgɓP50B2}֧ކ`;Uo}ɡ3B:,դ!ץM'7(LʄPy<5֎:இB<sv%ތGP453ȼA_v==(ٗiof%fj}qGrhcNM6 ϞeG:pS uP_#;kK۝v~l6Q&)M,PxOhEdPVTR3'* :\K7 /Cڌ6 r4)yK*dHnӰ bp=:OFIuQ#სNsݏ{@,o1?7-xszCkW8?v#61ze/._g#9jCb0t9շXzBȃ7ǦП Hz@]m6#\!8kfzJb֞au-d+'<ڟ0qi\b׭P5"U zlMml=lB(D2 XbfVGqMXޞV!_ZQ봻hYAG*$*+N^},~EPXӨAhz?yZv8(KN*WZePx։:xl%֔ u Ըxf107ؿ0:luK~wY-@P|1sqz 8W*jKml&{FF/ܲRe6~[3 ~,;cZWEt!Ge> %?`N,J+RqcjPn?g_Zr88]./ncZysg|>ާEJkޯ)Ia:+>UݸB^=\)3%N7ǢV00ؿ13' 71 _Y]^ŷ^Q;s8&7~s{u YJbv`*]ں p?uO8ᆪ O MF=V BRן՝`vبNT_ӓFԛ퐐{1N2] E0[uQܦsj^(Gp#< 'D)reAΩ=B qꉋ\܏O^F}ChwBF.&Pc]3<Osr!n~&n;9,,ol ,gnfy׷72+>5M@'~:*ꔴaRܹK+H <#7lLJ&sq~-v>BI:g>mݏsM4HHvEEݒO _Ё Qd(G=5f V^&D2SI`vWj҈q^2me/YXmyf8c?*LwcM0赆ZƳK@y1P(@0ܛЎ Y\]{qF {!~r/ zVR^#@b2w8eL+)R60N1҈7HMG;Lz*)PQJ"8B# r 9}$,U\B:Cj|=E6: vi*aݑ,}_ bp}0sX "dYB:u##SݍE`u_8s.^&6=8dաquYa&@RЙԈmG0Ty`ؿ~^:iN FyOB2"!2ӾD*5XEe!߅rMٙ'w&5.u4Pk WH,6fj޼ra:[q,GU5G:WԷA#KVpk[#ᄒUnG] WqbЋpѓMNg j-oG2\io}N W.aB(s ֐.);ɠf* }Gm˄%7H\QA.T`$!XH |A+m'vV}Hy8 ;h㳥o;_:f]yr/ERU])Ў2qpY\ p"CzIPXMFo-h`Y->ӟdz -897!(=P<. 8nLqs ( ApѶV„Un~MUkE|lۻcRZh򑃄{0ң-PszFէ Ffg7p?ɉ}5-`wQLE1+7T AwUDqAԊ?(tP(~_]S ٍ<O2ERUKݲ<ʐSswX">Nr3^fܔ0oc?i*4|$}ҪL!+'\ rjn*HH۪fVN/m< <096D1oh.;Ò82'cM%D񞼕_/zt3Ƈ/Us  sdRYF֣bצ_GGks:u1M]gԈ BH$+R8>fD4Ʊǡ;]XR] {%FcS(O;ק;!dzvh +PlXaYO 0U7Ke{;w׍4`e=Z+մAQ(*|0(0GL?*:smb3z"1_s!J> 簦(ps1,4u*ZG/GY,ӭ$2&x^j7K&QBes7#"g1K"nEP^LZ_[s xI%AAEoO3tlZ@sE)% T*m0M\/l%UVgS`FN 1V\!Ix _mqVQi ?r_§BUjD󦻸U$cjѭyE^-=v y7X)cJp^ί&ZhsSϱv.#V'P{Q;?99++&Vzӏԡ"D>o;g|gO"&z3=cd=șn,]5 *mWU 7ʎO/* yW׫=qoHdya.53dt[9 M3rɜ-~ݳ\7!P :PSD6-p *j?n[D%y Ҟpwqr{&pi LB!7v{KhAGęՃ~ъ%۶*ߝc0 @.B|~Jm2C w.D6Uշ0}wݩ1E#ޕ^):.Xվ1Hfg|<#ϒ?Իg R\c`ۺz, g@>IJ*rV5$)Ws;^!L-PۍV͢hyTյʃo$; $@KLßl'B>@A]~y *+ExZd4tmVY1$\0_JR{tQŹz%[|73m%\y @2idz+n <^۽һHvitry#`H8|/2VҐxћCj8Ʀ\ U'&{-cbN=/շc;Оr:n]cH4 važB]~Uo[{D#xiê*oH1Nj56ʜd|oh?Zf E#֕v/@NOR!_R }$Ű,2o̠K < ٜ)g1(8BWv3Wa2/"&ԉoQ @IcN1ت YޞyA8yQi<Dmhh}2Bឆ%U7'}Y+W]#z}GԟV̧3t1&}!nEⴊŒ o>S4i@itawVG]԰׊IŽXrH]{ CA$+y+4x'{,O2:v.ޤ}UMBP`GLwf<w^ͧtC)\ڋ$d7n)>(zP i/;JkH%b]@fἪ) 0Q1j/kEZ]v%bϐqj%x>2߿OK=*"JACH+Q Ԓ-*3}DS_"6@n^қY,~MRF!G9‚޴=,Hn鼊xJCx x>&2M!gg9J3?u2D[7? *#g9EO?wHZXcxƕK;`heSXit􍎈@KaGq]zhω$k1]w΄w)M^"^c!O[\\ X_p$#g1wdEs%a[픠fL:25*:5p%B^ZZ-u_ hP45a|t+ZdP!}=dFؽ*ͻdt2V0$@#$%]dw%ʎ|!` =Zgq"j߹7 ^Y'r%ck;zb4j9B^=X_x2xI9l { 㟹o~<N}r;@҄4d+VO@M֥6#yK2PS| }&'W!goFQwu$&WT|*9J+ѽ"[@ TpG q X`ƞ?MšW^΄1_<8?U|٭*&usV#iuX¡oM8pc;p~)03l6;8Rvڲ(l?qb9 W%!/zOLΞѠ9nC|o]+Bz/V^w=tJCظk!cee>³qċ*jCZH֎g*T&W*=Poҳ`w-OQ@n۽Wm.Z4PPd09.t7i\1&}^v{Ҍ+zu>6NHO~hӤ8j%LLPe 4L!3"5G/J :')T<=΍ǻs1;#fCDނt睟 .EDck%3@bEǒY9nye[AQ?$n#KP/&5 H+hwO`~t1oX VJ>}RC\珛OYÚ4.o5h];' kN`s̠4աϖP}7%FD=x֢=;"Y좘$Veú_r&PII8nj"gHXWe2NwdM||N3 5EǪ塢'q)+}nA dx SV꧵*#< 4zz'wו/ƈd_XFI ?nP LV.;o`e"X]濙@xN[A;w$Y:\;;\Q=?{gKq70sɹ_QB &JRdG ]SsU ots*4;m)^'_'!b\4{t]? 0qPTK~sg. ;1^)2mf+7b_1# fos(tZT̠OF2w&S3w0£*0w5Zv,őUW.qMtijq񓉅$Lw*=m6Ar0)OX*\PVF™̢37ͫ)(5][gb#4 ]m]dq6nfnCQƝX7O^"Y/Z$[c /=lEd :Wvz4*aTmfo~a?;CW`ߐq*@Bh#}>SQ`?FMAQX&Fsc/%&@?@sd6,6~wPu/(_ ѽbߝ54ϲ?#g@_y _q( )eYlI۸?&Pcޝ74zCc*:C+9.FotV b!FTo3A,ޤBf 55^a IO%NԻhgG(mI]\`^rn7}Mq'Ug+MG݂/ 0|xrS.݃v܁dӅiC7 YH~+U5QE_U ގ9]πb|fE /nYB@7?8؁貎oVc죳GJw Lz6޳-g&GU'1۸pײcP3J 3 =LCޠSW4Mѐ58YA]Z17̧?`L[pZr n{E/4fJ?DvE?CV1s(973 þgTYH (8̞T )ݑJFpv3.4"ncLOȶAE#c:fV2ϨAppq1MBD%xff}G#sHg>G7W4k2_4)AU}*P:cz\Gil`0a\aP9Sz(4ݤi=W˹M Va㘸IDmtBD&B.vZfzvwC+po/Lٞހ)MAx0BҠ H7A44sx3~`(h׀Vzw.D5ضF/j,3+%T+'; 6QMl-Qfro[:+wI|I+80s^wiπV-Л2T .JyMI~fcV^Tpi,@Ns -Հ:0s  J"=Ap{x8˥|'Wۯ.*zφ-DB{}.5[ĵ9i"M}/GM4XK%^6Qo߃.d'n[( *37CX^Yg1| \4-SZuuXTt|vqV@_NBܐVdJ[ou# #bq\l^Ip 1÷MKMgnWU2' kA5:-.rTxə D4ƌ!N) ( EE,}G@X/;OHqwI`,IK N/6r?HgxG1*fNچ(Ѽ}JR'n&O1{Gd8se^&Fe19S0A|yd\R@_Ϋ}AV'e֫xS۟+]he3S <@m:@ ,V@۞`r9 8Z$h57CWes kExO$ku _yLjvABQ<KrίŎٲjc0<ւ7bl11\a*CJ±"O~-#?s,g q`Ix#woG'`! ٸ/Ik%flSk=~m?ݡI󱧶묦qO琦tbg,}2똋(M,2A? 3y{*3l{u %TUڳU5v2 * Oժ%  Yo|Ab|Ђ)yjNĠzIS&^opK!ߞ z P ӬU6G@atGN[GJTUfvmlqu,كs 1)2XZJ5b=|ӺSLpZ~S@ w0 Sb: :wM?YE?,&Bu/~9G ,ۡ(m1"BK^! ζ>q:caG:pG0a)<ǹkE_2@6Fq]({L;Ӄj#>[Hytʇ~9jCqAïvlGapܓ57T`P5fcM6D"_vc(Rv]!IZ# jN2% U14ѻWw/!ZW4b䖽c Du7<% >a~3I5 9qW03bI+hՖ+h*,ߐ?~dmㅏ`95I@s34~I.HhsbCؼCW@-Ţ cH(^6k,0i}/vɒ~t m,j.]Ơ"2mʙ7,4>׵vD95LYsg! Ā5j^]D\g\Ұwlq1z,Abx;EIH9T_w'+IstY*"li$p6dfԼmΌ"RnmZ6/ :FlܞW؂ސ5 (ed{ u1|,.yPyj΢;"qY&ڜY&64p[䣗vȷOU;&.WVL_%<Z6Yɼ}eM'cW8Z #D.LWS es)a^~*Чf\b:` PlͨcRLHĢwӃpKH,[@cԒЗV?=؂c?0'h_:Kv$a-StuQ }72HPsfXgC0p̝f)J cI4'_#WQrHWMh3P竏h,?HGcD6ص/JT2t1XFu =.YIJt m$gFMwj¾%0bwԪ"& U\=IdCThWxD0@dimMDfu\(i|oW'QX (@Mc@HfԣTT;P- -2Vj\i"ZT Z{GIT0n#5~ ĕ2URt'UIUN9}dD\v\ GN=jRGֳ&GSԲ/qQ>G aOe$y|BRhP]D) +pt}ܚi@(>&{^ O(Mjfz+$z,; En*iDŸ2~#Ъ[T24D 5:qV%pGY/ռB!Ӵ`:CAK5vWeѩb wy$5ZZ фTd)/uC2w8{]Μ$v7OΛW@W/eeb(^CGKDw@ 1Ny^HQٔ~N-W2I1YK)mD/ 6v%'@AZ#o4 # ںҨn8BA1*mT =Yx I[!EExoӾ|G̫Y*7x-*/j˹<*$>f ,GHhw] v<D?J̭YC ^At["~Rou6(@/O ?udjeFgA+/ eQg;O~u;Z2,T-fNsƯN V|/ 3ߎ \6#YLŽ,m!Zw?as,o7s"%4XfLt6l9PW0M*^>sW fvH1`?"IwJ@Z3dW6h/ HJ '_s YI׉YWlOAhӣCQfi ヰ$y_dJx/K^jpfTg#9ZǝOIxpZDA*\e"%AʋWiF_^x$sIߛّ ^H1ޓY7ɃъaZaLHyB}G-K:td Bj}3G0=Ffbiw!Qkx$,}x1I&K%h L.` = a%7Ͷ S_2Ժhr(L`_TKKy\/dQ1Xm'g27 !>oRES![o-cJt2EIxu4 j}Cƒгov̍5v 畋lP#Fi]vI~ Œ[8-d*]a",d .蚽n;D *X6Fvt '2ZQ=`6ȇ)CgtKm'=vGmy?}xY3EiSch~RH1T) %Cq!9]`gwZ"O:$챑wdD,ME[#T/\ 2%> iN:щ7hS!92;V:R"w*%sԭ:CAxgҫwjܷժu]OJqhj$O-z]yO|k&%-ׅ{IRIWFgy_E lk"u/5 ]{̱; ۱w%mzg;G1ހ<ֽxdU*g'X}JSz ,j7]ϥ&ƻ׹eɃ Ϩn8"=!`R}MxyOFj|TwOs|͸I1 u2lW_#IPFgTːӵnE;3-d/TbWF3:Rn 0l$*PP*) 9oe5h/ MR7,ztOwrfL" >" 38 1k¢V~SnzD`tF"֛mHBJSBz<*'ݥ< c\|6¦kЏ.K2dȚ}J>Fc$CO)NJq;PC݌ARC [H+. J9 8W$|6#輴|㊧>"dGQv?Q`8;<-kgS]QJ%/8 9 fs1ef2}oFMwwz){INK̔6<Ч8Y %yCjşDt s 14E|(ek/<;JeuqYvcs^K0B^(gy쿼O.{lƓ# J:HT.@=mb6r^%"P~|TKϓФbȑTPabZb9g1yAhv m?mIϊ@kj;`o"K"Sgݶ-I!V ѵw h_ł#a)XQrOWW9Op[L҉_xr7T ?6;XmfVQuRT2O9pQHҁk*%#̀wC~9}l?yE CGVeCY~H?"5V'_5n[QBbغbutk:Ȥ6Uf6" ?DȆOVŃ̞2eՄ/OMaY &c(/(rpdI*r;mui f5Eްa.w#V`i|@~Mp Ac]IB}+\mbRzu_wy(V \)5hP>[vS̫в. 3hE*[b4UaI 8cAJ~Ae۫ 7cޏb$I=5/h?Os櫰Dž/\Qn pDVKAgA22![-3g:@wphrr  $fr\);wq6#B=i!͆+v=[1^9Ei˒+6jiZ *!g4jcê8R0CZ6 .uVZ \cRܵ9؆;' r&ګ_1z=CʟhbGD9$vR9T4 ;s`ڴhP#}^LOP5_ml PJ~ qzb)ehsVZ|MPp JbSf؁kf?/`;qy SqxˇIO迺T8y|˳qKNZI"a[ n_> ?.\K7~za-// G8sSW0hVUHXA N|bOn7s9!jIkaQX Kg Ѕ7N OS9ba[!o{QG._}TU%2 l!f=k߸P~6ɋRw XֹQÊ6Iܹi%@_cH 'I%DъL)H~ֻTd"PLhKUHa;Υ y#蕊;`VXѓJL['=kY~iX@"_oZ-bDY4!p,H 䗛J`ҵJ~戽%|jP ޭeZ]˗<*|~_Q"o*x`v nͤyLy gl5[%Awdv"PE*VE _rS4=ChUzCQ1C'!T4 ({Zwg|:W'|%k|=kg6%sRu"f{%7<-.`c (SK=#fP.ԫy [QKVcO۵mkWc:/;ʍNki,qyryEi(kvp@^+d)(AFwɲ'_cNh bbQORpӥ7F `<8ZP-q#+sFmk }[pF2 mL3quJ y{1X$>OQm1I iTS:Fn!/ŽG{\A?ed_kU+GBV}ȔKܴܒ,>vR3)qtqI@nfuPn? ˠʊi\|.3~+ L <]ܳ$on KZZjTgƲl] HKbkE"[BAѵ&R]= fYvՄdSgYSD[a+'HaQ ߴԌHO].o SÉ̓!mAFFW+ \_Snëߔ*2:W^S/ Pzr|5Piɝ$PTBrgEx82Oc"KB6?>7d/D=dg +͝5+3vt\i,~),puH_V cՀڻj2˲Մ|827:H2!~&|ݛ PA^W.&M ܻIYD].Xeug-@ZВ06,W]ziSuEK8 }NAON+ #w:״$?R.lҏa@E*THwz\/Օ6}:<7+L†!P"a^4AgmX[83'J-SvX8Ȗ*݊CG ǃ47L\:/ZhAi(^+ ϳof5=OW<2>ߵtIh;aw%CĚ 'ƍE"Whi;הbyEe# ` ͳ0@$Lyk˭]=gpFWGH@OgTBJZeHXbpCخp[kvcVG"$ r-WҠ|c*I EUw-}$qt"c類ZTFK5(d.uvzĜ)mЗV֑=iJp^Dʐ5,x\ iVŃZ-dBY 7_O.&WT'5/jU߭*hhdF?ĸTwܶPw%en `Y[&efIqBғXn{)I kSLGR錝!7-$/a}TeyYwŔ 5_ eom]gA,6lj&ߩiq,_vds˜Iœ$jr 0 H!S'}z8g3i\cJZx֙24P,W٥ Z9,zc yg}ؠ.e(%F5Im|þM2^Kϝۑnk֛Hp%xK WLC!"6$oü bt̸ SJl],:0kοlV[r/]=]CRttw[!]W L.W;&ߴpuV Κ%zxsry$4edž)yB={ݲXjzEK^Y!8 q3(vc+_"C873$fz@utKKRiߣfC">A$y#Jk `X@BSa%,F t$6dç2L+yu%CKE[F/VY b-IvѲΩ>U{0eVuCxO:[CK~boUd,n@p/X"cJ#ܒTpzs")9" `2? kX1uZQ0Cj:8NnW.:`6 *3ӂHb#~Ewȿ-u','>(Y?OhJCSڣX(3FQ \^-Wc`r,c$"8 js2~nWfa?fYz-E`kfoVq'sP8Ar3m4+RUVmոrK / rR8z-HU%ZNBnyLuՖVy ~w,@x4q43 zJEy(ğ!@tROe&V$ݟp>)@|b*gK!N}+b2v UmzWX&~g0vXڄD{"&ÚʴX8Lo@=,3?aTjJn7(ƶʸV^ ~Vq[X%X:[ ;ݽ;2yG <%i OnFHyaQp  u '!X@)},`!^N\}nE1`E2~*)Q1<$CKė IbD{GdŗӴjWV z9w |Ɏ&mJ_U!){dدhC2}D7rK?ՂbdvМr- ]xaO=p<1EގPe{)F8Uk I|`ja5 W%I)z Fش#՚0WQI!q!ÌOFꖑս1i4&Th[(OZX/6Su::B[xӁ@`jSQcquk\k8bay6˾*v[@>n_ THN߼5Ѕ:c+K |jI$;lGH.EZj‡^G8uٟC(fpϏ|e^o/~} s,!FY !}ʐU\J`è{ATGFɄ#%4[{ L`&;戹_9̝S[`hJ_X0tڴ\ 8OAK=(]PȈ%(5⊃]4sYyL3lb9!Koz*)1 dkk7dͰ]9]a[MUeI2 ѡQ1 ]6-{wU..tނ& _ZrV갍Ґ4v _OTz2~-gۼv)Ս궴^%L)L} |zmA¬A`~j]`j:1}njvh)hK6|S$kt^TZ$-Mo𯆗(˺:θ$Au_'J_4m4rwlO `ťS-@74+ {u}rSz@ _7B=Hn6̖ P w/\H2XbKd'z9*°Kp!X2t& | ! c Jñ\aQ9pdM G<<^*h|5AGW5m̿PR uΪ0r\PMQ$J~U.h9T4':Vv7FTBxׄ-Z'O.`(p fFBFl*,MELy-`Q<"J5ͤ.jG.z'o1؞]ji [HC{cSz+]>)Ps>oIַv0MVU0=tiPq-aKM5ɐ EQ 9{Qܩ{>ϔAnϸt䮕<]Qkc-On=yei_>i?%͢HB>xm `/vJ4],A*.Tl1˯rB^絍 O:݇F!%o0ɆYb]t@pyT2̈́^Ck2?LK+ fbq 1;Ajtۆ|7F(zF,3ŶFzޯQp; **.n wBL|*\2QjRe8-E6j8<5r3. i _ :j S^ug!mZh ZZձu83sJߎy!NUI1FR|aP~}zf[@=uTҚN<}U!sd9 `9!|>v1c;l&x۳ʆP/E 3?>kfre+r'2;3 <|F@8s=CB<b2"1`3Kܪ؈&Yyd4(ETg2I^[$)Vd#*OkH}q'4qOd)6foo+O f+G-EjM_D|.sɀ. AaZS= 3BF'iu>Dn8}TiMV+=:e݈1ȀMFQ^HgCCʙśVnج:q$rN'һiWbzA9,9vS*T>x1J~[`ڢ]hG0 W9bH ݩ2Bv!w+K[:ƨk_BF54B@>Uknb TCYkq*uM( "Al ~$쿀"}r *d+ܻkqUF\sޜ777x`r*|R‘dUaj{(xC/A$a_ IPKݑ7N@YoD*llSg֌a.(e$#4}EȨR*KRt9!YcmvZV#]lcUfԡ/Bbt{1dO. X?FHUeJgb^Cq J[VhjdW '  ԩ~s 9><̏ȉ{_u l6uzyiCL~n_ EN+s|lG8e{/ i'3vK(455zQ;yGg>x4 11V&uБj{RB8{>,X9'*u_-X@:A=7;!wZjX!+KnMhbUD\:Z] (xM^L-0dzZ2M;tdio(É#±Kܨ[͔D4?NG=]w5@[@fϜmMlAD]d!E9Dp*!:RhgJ,DF8ׁselN*V[-%Pv ]{ ? %䵞tUdtq ӏ%8^N&fa<8 x9"Jhhmb7~=a?lWPqqBs}MmM-" WSe++xXz;#:r/IIz(JKlbg L|"8 awG] lԡ4k֖\Vb36uJUb~Deq2떙1+PTC b⒕S:& l)>viAаBnBDyW0s݈^8(p>|߂=CyL2VœuhU>U/{h#η'͹z_yUt_@#3Ao Cfg+ýI nf(ݺ@q/7~Y`8i(:,3+AETiߊzCr 'tD\KHgD!i="3ko"صR!O;%'(p<,HfdN>^7<1QpRM=21%4*FNdU2EAȑK_QdsDfr8ߦj!>05Sei(u5E7ƇG8"yb*rLHgؕ5-X[.x(38HRΰ׿} $ 7z C4U`.D.bʲll[xFkwMK}`kHB2%Lm D:^\W?L~+.63)Vjw=K&5h:rR}dI$nS+Ib'>QT>߅0G YX i&E%IwtUtv6Q1)9(Rsv'EP b);)w` :o %x]cu8<cGDĞʊzmB}Hp.}39:(d뽦k~ - 7 AſFUK'DC+Abohc=NU[KaQ~ۀu+(z %[KL?m8;sEr];T^T ˀXRD}!DJ"nxU^\ɕ"Y^V^{dvM6fS;.Q 򤋛U~1fn qVn=FW‚rAfqdN'SWz"ǺdmFW]WGaRfњ2pxKhN^m(=/J;<ոmuZ7% Gx:5􋱯nY헩tM,V'{aP#ZxǼ/{! ".YL 0u;Q&㋻2MVT) +QH]ÍIt&|ǩC58!˯|/Ib{1(st'['ڥ#d4&.R}?|W;Fhɂh~ʰG;d7ά?BjU=ė CB1PǶxBfϻĚdĉ/Qd&o`>[,eh);Z#Mɏ7FWcN}e':dܽ[K"fcMdxllR"4Fς=.]wq7kVO#He~GGaF((  OX3q6Zu|\yc7w-4ywj E=?u ߙ×Sȥ4 4 ?uG!ߞaX8M߬bZmZ{bF ?GA%TS5ge Ԩ(=% iFE܂iGl-tص{AY,Nf5NT)ud+T&,]S̐/G·(.kRQi @!gBhvN<|=(5jZ![GĘR0m-wܴ/%,ݙ l+AvJ KyMSHJ@a9=~kbG59.F5W WZkoDVIawŒt~TgLؕp:~L61;e4 $60hl:7 #kV\U-1 5b.+Z?.@yY-'GZ_)z7W2ŖJ$4(g^/3{~Oi* stW+V.ه 韋n~l k bi/76ȞLjyf5TDF0^u> o2 *es~rbx9|01Y~=K: ֒psj92  ^:_$_~t( o,kka ΞQ7"-1*tN[k`) OU9(YOQ;<=!@6DwckFY?_|BW֞y߇.VO(VVa+g@B$0_$~c~5ڋ j^X2Q{FR b50b4f+KO 2"nU&,p1a]eìml6D {^rҬ}m$FՐvg~#6_Z<@Ҍ άR;6ٕ`W)K!WI博3$"gs+\ /CLVU)Ϡib1E)~/4i~f7A֖94ӊrm{Y}tvMw,OiF%^akK~QAoy;ShY>k™yC~%ʌ=ǃaOA?W[鷪a >aǔ)i/'lmH'bCv?nH]ՃoSI wMgnI 59ɁCB9#nd|Eϛ)Ly`PG˸T`P\#Z3|MÝ6ΐbك3ܵ .a.rdR(@; y B̢zIu,w'fϖw5BVK}JiNd٦R'7xQ%ӚG|}Sg)pUg8}Xw[^\5%{D#R#fd. : '8IsaRȹu1oQ'+,V\nPg(&DV[3|I$<_ 4ʍ<0V8Y)z1ŵ\HKwؔc ͭ/ح%r'IRی5=/rNʐ +YNqF[%D|0=2Nh TנO7P:lAD ck khNJR?rX42qn5#' X*q&5r/7B٦Chdbnl 0GtW J2~ZN\%go0Dޙ.e*MK@Ye__"22,h25 Z{d !1P=|ևҺ5"#;Q3yl½{eH_)RYM\pPVbtaz0 gʾ38Xƈmio烙i4$Mt_ Y :3V3,: b  pfd@VN7aԌjG1AAx6pow1SO?옺xp[nze,d[pN"\75!p:TGk7Y%H@X sUv`&al󎂊` `˜P Dtl Xn=淑Gv"=4e>L9NTm1|q( >:(M$𷍐ڽ_;c_ޚPB=i_5Wp0l&A- %^j&wUB0.֐:K ƭS 8}cB.cR×0p.ŽKHB^sBǓ/fC$?96+ ss+["ɺ?_Ea:R zmV{{.R&G7䦭JeBK\*}.aBN] ]4Acu&oKvAAq"eL}f*`?a>~oi6~qWMԫ} IHRY,\"J- o2-_ƃrw{c*h Jd`:B+{"Xvþ2CmK;D㋍GRp GYڨ$2Q77msKM`[8x֡x'JMI.T.P8]w%m1Dw&oade 'SFv]cguΈYcgC`qG7>g!(2ڬ.>ؿHWg t?jxx-S niX~#fsFO\yţt:QCMX"2/zq8d+U8޸cpRajcd~9 PDt ~9dL]Z/wrқA@ڌRxg%@[sVb}~`aT d -j ox3umofF$eF4XMk˘kعGތ,|Fͣ%tZY$EwM}5tKZ,"2Y}3A.I2CjK=\?}]/6qellzii=I&`nӠa-G>(,lJge=׺#*.i/e#ƏHXeyA /sDI9>Q =%fy9% O b^Ž+pS m'Ǔ! `K?_DgT y_q!TZnG ݜkwo97w$ zܑ1D1f$6̫u%PTC߳4^oeRƂG- }$c͢ӇT27ϝ8ퟔXODN:%p/&K YjIՈCiJ7BOФNB :O+BD`I5aB}&(ΣB@||._(krO+Sv?~b$Ïb VBt4ͨ-k&qoiղm1E&IbHf.ҕJ׊kэd bՇNP'z3KHQ 2Gdv`dat0MbtfΟlϽ]H#6u<m$oM!KEgSsxU7Be^nB:~V$]F^?@3V9 !Qg'sˌ=ᗴ7|e _=p!UvP 'Nj-<|LOW~؉lwEآ#_?uh>/c,wT ?/LhN_kj|G(MAqvyVU!Z`5'U) RCB$λ2m $CNP*+ _4 dwD]8q!Q>BivGKR03EFΑo!pi ܈|"V>S@WfD0#kdY#@_*n$*=D ^Wd~˚@z"нbPtdXY vL-83h=T}ͲnXpoG}41Z$|(0{}Ae*<+NyT[ CH)k`އA.w>jĬXy_F;6-}v˧6lk|JU!uoIfqhc|:ř99'J=7jA0\+@M[7EO1}ZC -i70p@PzQ>>zWL?4+DAYf?asIs%c tbAn +Xe8Budb30,f 40l.>Ptz֠9DJ2f/gU9z٥J3+>(F{~J pNr/ƽ9zgU^ߊal,l|&_? ~@ `O|"%zۨJ}DčKDv際$}h,#n2OB_^b؏ρ/cld^h}Z\آmagUJ.2ֽ3 Q9 5n5^_^ʓN?GQr 3 ,Bq(SMrGij>p*{鶅0ty%%tuCۅ&mu[~e3Њ-P{n{W󽝓&U] 9v,lpŃ~&d}፵ RLp O@~*Ñcg(KGi,'IWQ˚#I"C-O[񛫥ܺ\iW7d7<~Ɨm/ǍC!׬kd+|4t.8h-LIR`6w*b/ݿceTfbqẸ]A"n𜺒VADoG %ឯcYmQӥ2`hHm5MbPo[ v/uFDj2_dj91Ipxz!R֮u?/׭wVeRsFa,\>Ʃ4PX|[h8kڄ3,n`(0D0E6Cgz vKtƩ[{Q ==:{&sI0`h 6I.L^|Mba夘wz &Ues7,56C*CNrRi酬(Շ"fR$:w YȢu@=9 .&ruy SxH`c g H͗i @9霯zZ+b8 ~z{^XZ"r~(Xk!@q6oH 8 C Vx{pHDR?nQFݸ:z X z)r )vڥzָ&L09:B;pN3I's*K&S ՁPU0uB AsGzLA\ Tw]̈U\o}9FS4ǜ#,iH愗*69k'@8Ĭz3jƹoLohφi6 ,8 >/umзWP5(8z\ǡժ1!pYqQK╓HaW YOIC߷+qD fy 24ғ"|<]0ǩ)ægx.)GpӰ*iR_1xc B TUrnUqȻno6V3}KY݇w&Yʍv8riQ' Foƌ-y2DŽ R}0cx|— WV ts ~"^*Ir$J4p-u]W$zn)F-4Az$7L<]`qWGu"~" $.\1:cT'X\H9 AKw %f% ; ͫ;sΏ&WN; 9⟇^POp؋gL줡@j{ՓםP!Վ*Gꨪx^ىahg*J]Re^G|WH"ꧬk7a.N:x66Wsp)sG3T#\޸ >-#Dq*zȹuiTt!mA$CQWњ{-, b |2xp׎vAN-ΧEeY9Ҥ1iR.֧ʲҿ ./[GI 0:j4r+ᮛAp$$<؏|UT  `DO ڮ2,n6ۼ~$߼Iq B "F7L6*~?IWIOk9Ik1i#ĐRmRa1U^gW-=N`7DVdE0QSvq8l0;;C\;Ē ->U+B4(Me3?fю ^́P}D,u%=uqr8B&#uiښCiٰ ×Uu$D ~έ=ِҲuh01V(֐+0 iB)' JO\# UOJ #WyBl0A߆3;E$<)EsֲE;x9 =VHmu:fSauy#]Kg ~ϝ?|y>3=' f;E>AAp|aaYnی} DRI+jeD6a&MWWX ;{D(` C>TxG>8­IYDl^4h,IOwJԕ XˁrNy+X9#V^8k]P5BƳ/E7da*dC7Qi,@c ntʼC̒~,7R :U+xk\﷝p5l5sgx5KDh槁,V89b*7uR9akCZ7Ob!!sRvޚ*jnTrWd?HxcE%PJmsPitw^I3':'1 kh]tQJaa)qXJX2uuo;>錣ew%ַsibׇmu}7Nފ! V`Shfqm0b BIoBüqvZ}Bzna0`'J]fXy:(u~"WAׇ!4>l̞̖mX")|^}^遮 oڐX?Zbn xٴ b!x66DzLss|U2˅c})gÈ6,pMhc~]{^F*Xɜ #i|7~I,&/TH%B7 KPmw%a3nt<b-\zմH魛hHS4!܏6{X\$~4pDC3 ض 3M`!i B:ĵkᭊ9e&JEm0 4af a} kY iq"ҭ[*uRt ؔDSA4F1+#;:Fet%T)V<Mc"U)}T<+ZʱT<- >4{@F{6)iȲ'Ot=U~c1=ުELA 4qYPؖ9 _]<׶lq RQ_|XaiF7yZc|*\#x8Űg.܄~f6`~-LhYDm8HJPPwǻmlAFh0۲LNvPzL@j>m0Aun;9  YsϡņoUY.O8PQ0`_/H.O%<~rYB ˅FǓFF5WE.π3Ŝ{"Y6[HߋGj:%ExYRio“5"(u!8=X%`<@NU.h/O!WZ^2ڣ0 b$mvȐ7dzBIͳ<D1n$ysO`iTS%畆he/^n)±T/3ꉑԺQNWTa]n&Њ#>FOq[b%Ӹsh|! 7w)x0H;&eKٽ?~&i\%.[0W!PHmHw0EfoVE]Xju' =a% gfWJ8EjTJOy U0缰rX?D腨?MI=4*vÑtk!rӃM nNqV~1&Q5{A֙[{̤'BJ =u8SR HTrؾMlKK΃LxigolbtmPIWy0%8$|;Q9q]kyU"p+x֭[UwrxzU>ZD%Т;}"k<;g##T@dܾ4\`Dt.p?I_-7hjZRo-Sc`ey~TB%׳z'=)Ǒp܆JQ% AU#|@䉗&+rWc/2@o 8.1K=ft")&Ay0wrFY)Kvvz&ő1!kQS麡YE6ܙOc&cx&zڴ (kݱK~r62$T>KdeZNϻȷ5A/\VVXNMqyj]7qd/볬b((ZVhyT](uQ Y"fŊ`,ENeR҄0TVA݂:J6YTc;u7I h Oq1ro&3c_{ NI}1S9:. 3z\)2eMG 81g͏qKݖT\V?ޝ %!/Fќ]3)8muNq([Ff4էhTY?8 US4 4}Ha(f؀I ''|Dm"þ,3Rc ;!^37GsH>rT#g@J"M7w%(NN>ڶ|h/;0#B]>(ŀ$mz/޻܌MqկGMS~+]Kj rJmǹ~N*);_7/0mVɍ:nɩDxQ)Uc8kqRK 0Y |SSRb_?PI{q J?3<H=Q褴Ȁ">TØt+?'6c|f͎p=}Uճ@a/3L]9}܁t\&cKU\b0q^95i#7sՓQ{oM^ 3HS9RI/4!;^ <\ORiF!Ȟp5ߺiбHE N!Rb}7ymLL½9h|\GeOf+ a~YMw3%--´ u('e#k˵Q1mf~fư18ku 7n[8|u5[m[jjNh[( h2\ qE3w/;ueDoLrjgEtqITN "QK,̪>C)@îDR9{[eRECB-c=IԡǟUjәZs XrMHIm{U\+!ij/v(&#/kpeBI`NnaI g/\Ĩ3 L3y/[/fjOf <.I~"Sg~3mLskz#bKQL 23P.'˖A]!B9?Çi38;_Q(J`(HdeT7[` U||E9@mXu=&(&Zbh7_n;|T՗[B_ič>Ϧ?$!ꀚ $V6Mb 1l{I>Fv\\O8ןhIkCMt<cCv#%M 3u3JX9ʓtclczvT :l v,[a+F_990ˈGİT<+5Hٸ<8NP0QX\JvѸ42O#aSƦjg]k9 { Ojī2,at%חǍ$^wkVwlIGn;Xj voRȾ\Y \ir\E\W?ȠJ@a;](ù߾ߜ"i'نj;>xRn0$$f!v-eG xKRg}2Uv@#[sunFH&s~E4ÖOy|`s^[xK+Ee+'- Mc'N:yP:Рu(ݧwqi'Yv݇Q#E g$xo+A^h5#קKP7(R>MgO.H(ǑZ!ȸgΔKǕë a2nWsx:5̩EPʭV<m g~8bU\& 4J8=+vJeT&-.?Ӓbx Wn|Z]{Xj3Y{JB@` };ѠDٌ{J8e"м3LYGt,:x IM\:JHQbIUca'#JNäYꜲ7*d!ટY_q,i.(Lo[LnNq) A=Ö/jH~<HHYp (hcDCGDXcekӬ򈴞ga]; Q/lYxA z Iߍ+` Fx~eTqI,!auY/ ΜN0{E k$_?_bOFs{ rԋS߷ujY8U~Ks~5ϱ߼>h%NJ[uw컯,IS 0nͬkT _(zm/K#KzEI[] ׳(eʸ`器QKôӭk N!MVΏQԞ* ׳&ӏIF JP73EQPTMge,%dr@ YB%T(}]h[@=wbLJE6teO 9i^MM tzオ)NNdcM|lvdaR?zeVB*ŝSӥu;ŋUlXc @[FG6fIlW)#cЇ(|?Bn!֢GX^G7J;!6\@w.Z 1e *,"V7o dEJ+#U=9ڏ;{~҆Pv,&OFz,brX.) 2P ?]׾ۘFn=I[pIҢ8`ρhH SXH!/մ^oGWi㖱0Yx6M:xp2"fKqs͒dd"$u*;7p]t6҄%3V,sUX455ww'r߈aX`_-ĝK.Ma L#%z?K)}6!dx=:4I/|ӂXt0Tq/Ӂc_ggQPj(=e%$`Z O]Z?| =SN|U[T!*3nm-r~0@dL?(6|,ti갫z-A4|sx/~;X+:Y_Bհ-o ߂\օKlyQK9o[;~,wfv<{7SMZ${.m Ţ?q5IwyH0IBD>qLIh/"96qɃ(;OSq2AjTR3La^<ûۻ8~m.Ulr(Ң4!\6a9o:ModA In;'ov89['/?5w*|w|hr?sD7*/{ KoRd#çEAe&7&M,6&Ej?1a;ճXw #?-\[=9jk'^}AIϐO_)^$ $$Xk3ˬ,#=.2Y kX@ZPoDcX_455ޭTP6?[}sS; )KF^|{*ᩁe '(8Gq7( %b}}A -dYY_&:WI0[ 6ÿGD F?-wp]RG2*)LZcpT~UO^(%hYơܤS8m`ӏj@U2a@׾At%Y6)-&ml@5C@O d_Ww zMIn oTđ~P*FJn~2C"u&L," z?#g4@1Ģ`Z~eAaŁ%qz?ur(k6;VvlFh(y(+0\R#*BAo)ZUVi%C I!Wu@>LS aDwx;P^H=Zo}lffډܛ$&93%:) tL>%xOF |5] O:nCZ8v}z`hm)>tLi?Srlޏwf;Ϗ껔I5 M(=yʱnRekpyI-EִgbDMyƨ^y\׌Gw_;ìbbNf2L|ppgrGP~8T80΍ \'m|SY?C9aR e2Wq9Q#'%hj0XRظW5s%0Q@U xl˰^EkG#&']@yzG:m\;nN7 Pe^KAc6A-UT@Bo1ۨoT7٘iJQ`bIC4;Q($| b(߰,4,bWDr;\L!ӁBdۊZ清?1sBРa6! 3X/&'pe/iJ;#+I3#kϬ;Ÿ-tw;~++љ3IM|/f_ij֐Yi \Y0fƓg ũݍ`B"Oqoz]t'J%R1dQ3)Ծ]iΓ9,kx%0T~)Ȟl#m~? v1 G%o-0AL8YgǩVº~bx`vH .`W< hA*w:|fK-`%d/vmrVfm^R R?V jb; $O*iHLw,QD o@"wՕ-NҫpHGO0dvvEΫdau;[WpNhym&Bq B+׫ḼMGYRr$Y*f<5Av"#JW7:dHpPR"5aWu%hWAU2-zoފ_V1Y4WI ! 3=VWfO#0U9 58Il,/Z;nm;kgbWT^=r/4r*9'f%.t3]$v,D\[!!|:\v BMɚ`^zkŷRHķ`Xg$%{1ҩO烇b&rh%)L+V!4l:}f+Y (eTG W\y_rb*})b(@7Z#۵Z#)eC4&cGR D;j8+t`j+ )/a=H IO b,Bcc X7\votF~Ze=)bGe;Un@\VFOh]tiFrFBU(z_`[eU'aS-X=B~_X&SBtQ8Ļ@"C2!3kHy+wn4ju0<`BUY L#[":DkxV> ] 3cgmPnN 6+z-'g D=&#G$v=Z1%̉ ܼyP7 +><պe'_)3~_tR_I즸jK~EğC&4/ٽK{36/l&Q>6f*XX)_ua24TPjM(O|8䢢nNGYt1_;jL!E1&޶o+&я9Elp^[jھP:O:\;A_džhZڞcP׋wC̈́i5z3:'_>pPRoGJEWGK!?&6OxM[NycC\cɣ jyk\3s"͎ɥحȥ>gVfz}!dGGп8L 9$]Y9R.%b{G`lL}K lN=`IFOVCAn dh9COT\Y@"[JsqXrfPODGDK?QrmU`]A*e 6ӡsJ#[zJ v Έ-vERa+hn,Nufߏ\iWFIR;)J`}T²E2lNT1>qSi1b%ډS?G|%vC3 t)${uҴ$!W_gE|7ÎLZSjMIhPξ|?Q!RWuSʽXP Ե 4dGH_%,EU sdg#^M_P||MO~ akLDP6.:~aA@@u&yG@gEg,X>9yN/FG9$V2[ư]L8 9+/V}1c]JzedI V/D Ky ~DzNifݚ3ᛯoLRO%#=Jp5S،)2J6F7ܳJFu@@dE/ $Av9x~;'|݆\ⴈԜ> 'B/b5=torں2pQYlC"UwE]5rSS}v`h.Y0/m!FdsbԄF hcGhFPk.[\o~f~>ZHoNŤ]`- p_hVOءINeK0]ϞT_.V0.F-~,ʆ YWi*;vɇ!bO]gS7RN:{z'Pl<9ߛJ{2_S$i]e>Z^mgn~"21[+! ߖ2/H~sȍG!KR:|. pA\G!jr"21A{ %לQ#H.3ذa*tSUzlɿ꓏*'b+$ Tq/$b ո+7ϛn3i0a'q[0~~ع&kPϡpEnj^e=\HvBLl.;s+K}$W. a7[. b8.b`I"V)!ȗI{ IGpXR92eLZHzv0GcV~ ɶNRt!8$l_ lR箘ƢrzPVI>\9Rm'vjT=]p LTǷ&oB E/ui(?a)q U|)n,?< Lg WU'򙆌4VOn>4G&AQ8L6s;zD|5ρÿzE#@mʪlfvA8&__ O ׼ǃ kץAckȨ%6Ɓn;¨&p`e.^$" (?mfkC![Ls NāvO /FucbLcs9+0/oL*|Ծi'Jp{ZcBT:@酩ޥa$2.vR9UƩ>,mjLl)|+ !(mT4|%!K6kp!,o#V(E VkR3聤݆,*Zbߤs5$J+tLe9`'%S%'cvsցtl45I8,w}xJ}69Ĩ3cG`jhVc#PӯGIs D/ͺ#ױTQq1LPfAg4O<6 b #rYu>L4_40֧ ba{ z0m٬1ڹZ!} `Ų۳]50f7G%G)'sz`8jay'; \|j y#x4{԰ O|濸W~KC6E׿]5Rn-P̄{>n (8GVfkb{TCn嫳 l4X;y">XwKYe!>m[Yt`O`AU8KvSn>= -߱mf&oف(ʆZvp}NU\ܖ(Zhk k*”nR!˜ Lϧk!MG?:z:[ԫIZdYrOtP]Ww/vԼCCP9|sYC%+s}RVWՔK`Iq5rHl, KS2),v2V["CBa3`5j* t6Ǡtޠ[ r(ME^É7k>d,]P99ԓ4!LդC˘wI{9nrZ/,M*(f/n¦#eM7d뛅 }L=ZR$pq,q!668Y ]69EP*AhǪ%$uYbc](<ڵNsu$Ί9R04:Ě"URl;3Vnt`ՒR"BқONL mbTDZsn%#6 W. *~*3@"OsՁd|WW3a z WX&0sTGfzl]BGvMdh0-Y^?]yx0q @%ۊrC[oJ{rk(‹4b J`DVԤE=DܿdUU܅VĹrevSkE&IT=9Rާ+þ7 sì>&;Lmpds8'KOHw]g7Ay{w$VW3Q /U^vqfNF A5z>[MLUEQ~IE̺ Wk)> ډ2av_q1GE|";}@OʤI \!!+E[{ |iԜLQ >JO0LJe}rQWS~:O sj?nO 0IGPq 1 ٰ(}Cc׮? *=pVQBznmPx ;OqqY J"s=u,%| 6iR:Ǩe/;f;\P%lf e5x$h}C,W殩7 ƪ)f б9.𤑟,iT%-ە>((TF:xă1a|L$~!4wolW1rpnv7?GXlGQPCʷzmU^'g9vxgyy}}0fz!xsԴg(V 0=<ҥM`"]idjl@)*$8s&QP'v:adnP8@W'dE4I4dLT$X򧎫5@0 AY+>撺 vz*+`)ǣiG+!X$>:=tb'h+ ryՐtyV5w,] Y&;*e|!:kåK97iX) vYti[-{c>pdHBLUn GuLH#Zٚ:B}3 W/] \Wufk([iz:\9R^lP( >|%ѶU"8L .`ubVd ޮb?zD4'ś|7!N`)Y1|Rkɋ\)6e ͩ(P ͏)kpDScD:C∬ e_ɡ6xUN %/ m__9$ ;]4=b 51ˮؗt1s q1!Of/ɖM"h9M>!(Zm "2C9G,p2Y){Wt2J>O~}r0a3[ z쭚rd-~=>Tp>2@xt)==h `܏z|pa}}y_U$_VT&DZ4B>4ZnS5 cZ jtlxeQQPSEJE&H"n|(lODp5@W+(Ƽ3}ʗp~l1 "gtE',~%U|傔!8ڀS/ +<ʺ 3N1@wL5+g*p$(RIPm'= ٙxYH O0ldߑN\es="igwy47eYLo7,G %.LtpX@U~Y.z ~_JEۗ!ck|×5"+azojdUnnPkA_Xz&~9eTGS5s7ŇzK?p[;ݘqep'V[f]44tGݦVEV"K?x/]*_!>=ȡV5yaKt%Z;FQUkĺw + wQ{L`̑_J]a *3|14l".OQ Zd1;ffr2ϳ˃R^W[/K)mWF(W+>~EBT>Nq2x!Ee'Myu>ϵ;< zJK.*Q@,-;)ڨD=Ιz3+k|z{8_ HHlR&*'/EA*AjǫXzs[!%:^d "o%%~ 2)Kv&FBFeQ_IH3„6]%h G9Ѳ9NbASFW_Kt`P!CbmA"å58rof*sI}1i4VId'xOuS:7kRw &OMx}Wp|7.&HDFH49?sۣE&G5O睕#+@rXۓBp&(PfUkVJ4g4}s3Z*nYm:Z# ej`rA&J$^ w5#wd-7#qầLuەsc}a7Ff~C)cQSiYAd6҆./,4ݡIudcū?$"[n}k2e1c{XzǃjvD|mg:)X7:*Kl]M/&YP1ۏOb`ٵvX?rpE 4ԙ6sȺw;fI ^~nC+jR\'fkjA.&c=cMm}!ܞP|\e%t-@!.0NS̮j?5bV, ycr2bǂSrzR ^*htV~/0{ԙW}چƮ&Z b/nowj"[0PJ[xseB.fVdHhً38 :<~UG"2FGO۶W`l -aR ,d$'P80~$fO)P m1¤e4|II9IC-pYd& ba950ّ'YUrmǫ=lJW;TDGx +&נ@qaSs>NsN@`_(|l(OE$*_ lTo}4 G# Ym -cu"aEN"#*ٜX74D/Zp@2nЕpJ^8@ ?6,6E=F"Em80Iɑv&h|(jӧ3ݪyfW~Ne (d?+hWYQp> z$8,2f[zWZpgeZS glS+Pޚ5he&,J猘WVk_' !}H:lr}hb J0{pwOw> Rfy ^4RN.8]5zs*}5tsW_ DaySy&/y@ry~ʃgjTTO[ON`O* bePu-1]MfcNeZDF,19Z%a A\B+~':1:Ԩ1UƅK<莗|Čth6ǍEE#g{},$Pxv"4^gߑ(UȰh3X 24\ fI.ٱ l`kƖǢ9,kۛCp:MR g6_: 长ך˨O GD;JGL'S;IcwW xD|&>Cr} EꋤgTE%[2?1&#}n*sCs"05r72T6!ckFfIWV[MZ[|g{3Y.sL{$MG|GzLvOݝI[TU[SOPrs&\4/pPO-1@5l#̷f(3 Uw5ncMeZXnOӸ @p.m?xt{(F@4 yGnatTNP^_4* AZMi/9u2h l ?UZ Jy q^䟙.FAk% 3]t({n}l Pu}~T&'*ǖ=7(2{JRw;؆VR`b (4yr⚅2QXLXB Y0*4n0}J~Vua%F5 =0bs]u@*]BMW?XzP2H? nEXXqF=C]#'~PzT'_Ba^z*'܄S`SFsSdQB߻slwSxL 8c?<-,unSuuZawU~6|Me8;H]LI(s _䈢l@K:gyW_  yу9xZsRq{]vuoGZF^ҟdhy7%U_7v":L<'\D@e>8_RLW9Zr6o z%3owF _] Elܶ\ôeOd_{:`96sbw2d#)*͡^B 4LOQ˜bp9(boܹ[rY/ 83}<]1ꍜu~*""Q?N4 r- v!xw*!9CujlL8+3 }0W=j/KLݙ"葉tim|7\Vm=JNjy)w8OھgSۙ/c<~ōw+5I+v3`iF~Yj&G憟#,e )?ac SxX1Y8A1 "*bP'X VB奋!U$Ebd>7m.'UJڙUVsJG{C~#哭< (IeK*y] + 5R%M\4*Wq63ϨA{)㮐{gW~KP+/x$Q mCFAv'EFũ_ D(u-9œ rxV䰰t16Gͷ~ϹG7IƔCc)z7%H/GSlHĀ~;(oܒgւD<:+6܃=UDj56R'}ERjFw] Wv-B/yd&>GuIZˮ֏8!cds^UeCJiPJH=#d|A?\=Y̽gd~^_ō:p1|2H7 wҕh.t9AK84cl B_?*N?ysl%ϕGԟ‰1;".L=!7WP^լ/e"L6(iΔDkEk(nsE[k&C-yu) ɳ4#9gIBftm~`g/8mӏl?uP'(`rŋqT3 }!oJBA/|ӹ=Sڠ>E4!J4R,\+#S@Y#Q+*-pS |29Mk|lnbɪv 8ڢ\PZHJ޳jpRVY*~ݨ;d~FB.!]LbZ.'>QX,7:wxtWRKNϽb+mΘ^ML9H`)޸awҐֆC,MW1a& H+Rb&q~fIƣH|! `,ygbUtW'LrPүUq-sW R X;BRb}m{`:~_y-Kk11|KDҎ3 #c\T {#Bװߍ%RοNX0̯Vڶ McVS5E&#ݦ޽Pu;U/`wimJʈZ3(= ~6c=7tsYBʾ{rԗĚ#D8)sNH&8v].R6"3bCwr|?a/Ϊ+? CVn42 / p %C,28F A5@TLl]{;Ϛnad!/cHg"~r wn\?a$ .` ˘ ѡCRe%(lL7s<|,ur w,iW1 Æn;$+y85W8b2Mv0sLwO\77_HfbpeypTp`@/V<, Á\=UeLBv\J[P͇;*^rݶEA7S|=(Eɞ+ cOMp8C/Y{uxboW18|ܦJ! C42!;9%Nazsbg=Ov KJt?ُIt+g'=snw5)Zw #_ ,¸FâlSl;:~KDlu2]TG@\Iv:/SyH Kyvi(%yzS?oW 5Y] ò{`/73s?:#B'uuЛ\˵ldߛ0Ǟ'iXA.XOPy ^'7p=vg%/`atؚ$cjiI=r?4]CK`DK`tR6,.OҴbGFh흫tEXdM'i-Z)/>~_ޜi>w=谘Z^*S@p8.rٵJlG C6^ZS42< ng8[/(y/>h4!bafPfDDLvrNJ޾ώ%jggq׊En1zw>C "Z+/zl+ x7X 1 ]<<>t"ByU~B-֖m҈vyD٩Kч7u "J-z7 YɿCK9o~]c2&z4?\zV+~N@;jTUff둀ŚBv{p.]CJ&a"m1Yc5=!; \?-%9PMb-P 홒%䴯嚎O聾LNޢWRnm[t錵%Ψ)F$3gJRwre@*Ayt3s;|zKz҉v:\&'9ʺz!9x1-mnJ# ΡWo 6c^~L<'.p DM#co~#mz)D/?Š)$lkE3l?9I[&ݍ6B<4USZqlʼ}I|?] <(1VcS!͝ebW %%:NfK̀Jq?%Ķ,Q&f߅.Ư>< y%$YBBKٞђ}N/z_?'j*EN/6N.* h8/6߫5A;FI e4+_\m=%e'ʔR-G:ő4s ۽x\ 6;Z吹gb t3W 6jJ`m؈| И>իzmn2f/ug!궛W@i';7?F070ƱPA^9'a `"?9ymFhE*i >̵7ʋ %Xہ.Iy*٫`GKk'BzP$<͠@E %pY7(ԟv+"X4 \VOFزq匐W}p%AH &,5IY~iTgT)a.[L%gødh0&mO~H^_kQo$nzj0W>zCtx렡ntAH 0EC)f#cyVohby ^CE~vEY_='Lݟ5 _lgYr{K.[Ho,/~BG!wJPбCE܈t%՜^"Sarv9DZN![[Bn$ S6 E[2xܳ ]F.j1%5_QVt~[=hoReYc>ˆɸGY3b}/AW}!u+.77ґuLȰ3qqX.a:\ޠНҭښSKYBz.^ >9gO*5:d^je+͊b.S) |ͪ'"r!*٫KU9e_Uɯ}]v~s*mh~բ8Ncrテ7҂'Bq;"=*?ơW+AQv!dF:%6ѱU!P4Td/v_'0>nԜPAmꁰ0h1 cx ]+W~|RYթ+(me0W0gBl{(ov¼yp]Pl}-mcיY!gI.Q` Օ Q tɪ x(6$"s)}Mɖ69L-F_##?ądeik9Dj1s!iưIT[RͫQA!fiuДc`cÀ7t}Aߠ&!ĝ5ż#h-񲹞LWPC-Zo&!Otο)6Bڝ;PY j⑺{O:YW؊[Ԛ%:FsoB"9\{5=OewF58Tkx2ɕ,,q^r^b,vg&34yv`ܰ>o?/|Pὼժ,QMgw"apKbkr57T^@\>ﺜ 4Ǎ%HYzC?,LIS^z`&5YG@%|Pf~!7yRR i 5л=$@d:[T$> H+ 2n UHw0Dиd[s̼bEyadx.mx î3]Ar'}YS pmdge?qeUSI ,R ӥj:u3&Q}rdjrj[Ū k(?G~H&%=JPv}o~PGm"vNm` &3@fRGе,cc1px<05|ީ?NLeQ]_CWC Cv6D{tN 54VA f t' $PV%N{g@ު.*gKX[au^u{10M~VdT,_;F2Y=Un`蘊h9P>|A},%K,H3E-Ψ`1ɘm7A_? R;KV\4f%7 Qi˗?U9 9z68>6AsZ t)5 /4{0pUZ5٩Etd] ї"0C볢 k0#-f*v1:w_+eNboU:TYl lZyg3|:}ؼNgT;")D>=5f 굪ƸYd&˲U=cp맲"%,GdEVJ,xvz{ jAaZ奁$TǪJםrmſ-#AWwAȢy~bUKD6mRFRKF _8[b4 C'r34H!;E-r]R&ͪSh:-r}<ȟ/]I'ާi;Ծ&U|Tz_DXȥ>0N'rh ]Wޮlc#cMvPo{/Mՠe.'rJ^$0)5bZuFt. N2U)|@pj /XS2*N12xD뱋]Iyg_^krX9qAfӁfIrne3Tǡ1 {a :W^ bMcOց f<9(#pUY.[L 53mm[ʼn_N_3^iԗ6Ɲ|bLڃ2 \0y}\GrP!hsW̐g([%m5,_n1?3j~&%Bw>ʜ+:3?^"1 C!e vׅ/Za2np}Bbf ̆ĿL9ʁ,߹XLQ#c6E&Lt[\$qۤʉqsO)k<8joZ36Q§$F)AB]N)Cas ЮՖK26k,T]"MS$#$Rs:ep/`8V.RcfL=U*lRN R-ǺUET~ лoQ!~R>u>04DdWw.hݘFEg/G8 MUHmbbco#@p+sSxjsdU5m7Yu]gJUJ_W*?Z;߸bIӜK=eebkvj` v$#5 +@KQ-tbLfH c)dԵJ *zuҁiL؆EkS;Ǧ켬qJ0U!Z| VҪ}fKUoO<* h}(Vb2k\;GF7 ZkWZv' ('mBB7h?QȞ9rD*h82(2a%N6̼9ؚό.<ncv6"fVbd$htr=#,1M/@wY1(/Έ*e=1a!]ځґӄJQx A 9lDQw@:8 ],ʋ_woP<{qI`ˠk.s_,x 5󧰳ГItKgWޚ)CH-OGV5'֬ks]L%$oztM,_4Ak:Cs(*x)X?˾w@Qm]_<J&kDAYy_U{i&nUV /yDE %6t[o8MغMCX_Q&h4ḥYpY˾#6?F{`'YV.I%cwTjM2:[!Y*4AHvaASÆxgSmO&cfY@׿A=ˁ6ذ= X:z(:LicM8k&.`*,zb@=Gzlw)hc _QG1 +I=Sn36WX71{1 4{u_?^ 53LڏIt F#LGJO$@nj:Q<ƩL$8qVU0jԫȷ[>fyi*[;-6nS@bw"&6SQ1q \"[Ɯ~ j97-@]p;#o0^W ceWvUj s%2"5Av=bjJ·jnI浡!w@hqU@'\I)ۆ_c@jxX>3|9X{*t>@/8}IƧW=?pVhZmZJO[^ >*bQ ❻2"S,;j`y߯irH1w9Nd晋8t7Q21X5^]Fݟ8#zw2?JH3\>< L|M qɱa9̐ߴt/j/7КX7XהHp!Y)ѭgsE9 Yl9NHvk$`W{4Gku~~Aһ=CAI/YU X.Nx-x WYmǕ P=({(l`:r51mL3mNILH&B.b@mư{鸟(3Ӽuw1^C^s6׮Ef(h&5R;Phw$Ҳ>G2%AQSC!sZ@,0 ^`:}7޴A31CgAؒ3M§K;[`\>&# r;֠s><I 4t _TbgA/ױVE"ZeJ0_w\$Y'o2-lbgr ̀"  *I^e9MX3_ SX ؏%jU{șg|`F1*Й2J}=H|p(ۄX1> 5S%Tt} okP+`,sHt*WtC_C+ѯ2T_z;VxUURh`Hzn1ȓ1!t_w?-Wk:_/wфGٸ2hN-psl9@Klr4QlrlA &{C#͑TɸU©p_0 ؛XL*x^`@:^/JkT9[)/&br<+´@$@.^"Ɔ?2wC}e!U](ݔRnVUx,YDQ"Lk}&7Vt*qDř;ᾃ5U0Z% 7n'gwV{ǡn~lܭSUKH=L]w2l< #@WmVu;2kAbr]ժe2eTwQ?lIiD>A~ R?v\@`g ھ]'(e;t3-$3}~SNSu4H xѭRѵX"򓧺W&؁Yى;,:ѧmgRZC]2\kFs+iުM ZZh`&ePz)\ 5ˌ }oQV5(B[3\.i _k?u]v,"/zEDlOF61awr/ԊPW_r!(vҼjjsoj NSb"cǁ#I˗cAeJ;qijj ʝS٥F&ƣ/57Yk5Шin(X:mqh>޽#Ae3CHg G1]9uKo1­8/1BqWI :PHRvQ:k )Kz44g|cG^Dp?(p6]Huzg GU1$ IL-5 }`ۄ-DiE-o~QE&}r ?̩6ȡPfmثM^<۳h1;.P$X#V؝Xƫ~ 0'M&;ඤ Ϥ$#Ҫ;i|`2]ުdB3:(d'&c5頑4öFتJ=۔Ͳ,5|DttUsOs*b6+HB׺_c9˒fmT^1s3{Kb RpQLݪ yi<Ńꦱ܀/}fv~PyD*|>/)n5 .jk .A.N{RV>pzC SHk5:]\*8{8sAPYt$ȑYXe1!\nUu'bc4&)CHT\t[yH(j]ŭ_檁+]ڄq$d;AD甈a`PhReP-B#smOoZ=IE*|,g+}osxdL/~}⼖, SJBw} t[CqDLzH(0(ӕwaH,ϓҪKHLmB:E|yI_ĎRnb_91҉Q7*[pƦ1Ħ:z #(L OQW4IUry<8-yYQ%Oԓֶ'~户 hDhJ˛BrW 9⯢ٲ8D=4vEMV#yc>PXW&΁JXG1151@~‚OE>۷ 5 OebH=+;&tö$dzFi%U7D(Wõz8Av7.P4CFՆt3> [%#^^$R.L7vcjs.灧 # f1/ v^i/9L?EBcvuSˏ=qYj&q2PAq/Ж[)Ol~dLmc*j)bd:BcP?͡ [s zlw=0LLuU/rbz~ ob=hXCpȏ䑄ML8gxm({FTw3.FbP|2|N·LIC^}VCo>>6,y 'VBJWR lvn#X 6Ndfk5IÁ eL@v#|k~H悒f3"=.)to2?WztGl$C8/iRjP P67X.i=0f &#)se m~"BW+.qm=ri vQXzt"CXMό#[!^po -i\M* XFtZ/{IˡAI/ᅙ钿 0{a!snOI=]-`:hJ>VAw&oVTk!,2(s|,Պ0u30lC#d2iz4㞈&f)Aö |_ ~4Tbgf7FTQג>YAX_%Ҧ!jC?A'Q*J~9PwX/,^` v9F*>KP8͜~gfqf|Slfù2۽XYqy-eƞ d• :~=iؔ R7~^ݚ|$ؙwп|U8&P5Sjp z̀+J8Uݹ"v=iZpMcdQl门 p 6@%V?{"nЅC <%\}nN){tܦ=A[Jw!p Äoe1M0 3jq2l`[;j䛮0{ZuLAńC}hL=:LȩqXày:3Rait8(2\u.#J)cfn+hFV%@9HIZfݘP,*!v'MiHdVd +Rچ1[ű]0LRBAg&cG(UQ鎓Zuk[db>Vyzl`-hPi >_񭗩M^ئJw&Ӯ XX(, ?ZCz_]Q*4\m*g2 pԏ-[7O{$I \6V+4Dq(z>:IGn8:̪L~Vi>9y{CIUjB7~Eغ2nF5 Rs[GH/,"_ፊm&3yK Dr# L" 3e`nAn-d,#/9>Cwh3fqr F)=JZ{}9]C(; v2guҊcinQ17j*fX_8RTT ww*z^3 _z*::L, 80U Ə2AbsGJ+HqPN]DUʶRc:Gi#;6Ի3׸vTd!]?~5yrw}E,h&WyE_W{p\0w6{eϾ|M}G|vdOw@_վpiàsgHI-\\0_+O2fKT_՛l `O-GkCJXSBgqj5n#@z/Uʲr=Er(+{$9 opP[4-?R~RWr4jN2;" ε fYDOkt=_}4_v+Tz'_~3Ehu08 7`׏w&DWBeM~,գH#$EHO4(,ew_9Ҥ(f`{.Z]gc1ħ=c ‡to >+|FQnxcܑ׆" 7!m%쎵l'Y2jq&G`RIn[i21W5[e@X^M9beڵY,kD@Fӎک%4- R/yŢ>g!r|IO^op1Cytq`?^y7BnYbjZJ6V쩚'ꆼPT# $M!|bU{vaUCK|G S 6)KvTC=hʩ`VwMjqо,*Lv2'r868%.R-//͏%8hGk%I6OCTLM|;di1hoYVSFAFnO&)ގpד|4 fVTN~זH3J)#g[6z"v~eUDM#SU%e#`x jPlCnItEņ>DnE?YDr(h~mϲ{kkj;cUJ)u5PByGu|zwTK9 Xo`{3uܾIsDItDD 1On`=u#?;$jߐ"y+Sب b(FP /w` h;evչmVPqƊ;1kVHViuŖp+*k4qgYM+RohȚIOBAT^\}bP4wx…H"X6S[9Pipy,ž64@m$ʾ6h/r4g־ | $}ݜ{ \DXtY:6AQ70^h)cQJŐ WhتU9OV pZ`s,q&{a> _a\i;- QF0*2U ٰ脚68`uĿ%-lC-j{ֵZ3ɦ$0/)qۦB!6jt_ZbM("r ѣlѫ[3h9./EGЫLdK`zjW X>*Tbx'#Xp QԍjZ}i @bįۚ)[^&g Mp1MT\G(W9qMg!`9bߨM%ҀC^l)`L ":ayBC.f$EJwM1UT1Y{'OY&~G?^'Yl5 mP R|p]0/&G1ۺs\-@'X7c&Wp (]{C؊6$>:0^T~坜|H#CGeRM":z}G; 0n[nG]lJJG:&~ ius|չ` |O69ħN KtNFQ O348żEsWz ^Ten<8C/_x߲&C=6zCMB^kL!N@ȄsPbi@$Vl4ǥAzU-M"@mÞx"Tt"ۭHF6i|!FZa'>Gf\5L 6Z)KB["8"WP( /p\O*\ էq%d]+=!ʹ(.tְ3N0exQ#ڪq 7Ϻr# unkQxuvw֎&zG}-kM(Ls}bLt>>GBc [Vp n -Z_ㆁ18%t |ђN օ;e5k'vQ3h֎k.+y8ChNLL.Fl ˏN3,cIP+Qh΄4=6*oCQƗ}0drƳ63`P2-;BȔ/`"j$l =y8r%/Z}CլcS@~r\#Cc{PyV5 ̡QP:ԵZe/ KHkcdo4FA4o. ؼHEɃpF5~/nU-h-ĻT<~sSwK)r1+z*OK)ư›<8}K=뤞\ Z3nyʻuWRTorT_DŽѥv!Ex4xq k]HE`Afۉp'o\kh\3큶%2!5r>TBnOOu4Pf#?'ZA{PhLFqR:(~L;kZy>yCGകo$;Nj&YSHgS)[ZaFM y+Dy(,2poQ'6z?6CA)S܏=`<!%zÆ>y5#;[kU咮H.Hڏ%%[m*r}=@Y0)Nab-dˎhˡ.EM=V:<6Cر5bG˜TCpnRCcuT j/m;W7Ayw| 'e?CŸ?=29wYHHv'zP3,Nl[6 w ~D1aP1K*gXœȐA[H6K )K@:tCF)_!!X g.f W2ӎe%o_8wt{i;z[% PennV)'KϯH sA7 K|`qx}F,-7ھxMQ2hte=4#lhOW9ΝxE؞A:(-ęҮaZ^Ť-6v,fN^ mc&Q L1֐ ܞFp<ߒ]SEBN\h!L("K%a nwj&d#nWk$" ~bX/[)ũ7]O||`;=n=/I97^w~6wXB( œEg~iy1G #Es!SG]GM[ٝc`gs`40/hcDA&1c8GrN0coS)^}+ pknjF$$BWF:_KsP@3bϰ@܄e Ĥ#C/Le7vhth8«ݐFz+s±7x!Cbi*8wfY'v 6?.ԘɨRk[Sƕ͠4^tװG_*n eD]+AB <=<60Wv";& 1m3DUzz2Z; 1PUQ:08f@i'&ҐǨ] .x]] ݁=aooicrFձ:QÛ=Ukxࣙ=9asVe}Iw}08 @2+<z̡+dHb 2&gpzlO$B5qFD4s.fM 6od][lN"G PͨtA6|mk5<߲-Dż'2f6m{YǓ֛,Z]H QұgczlY8v͊g/Hܷ0)KPEɩ'[8쑐FCvOZ7ݕ3.%U^[>2"[yMK chnT Mb"˘Ò4-sCD8CalХQnO`/X0i)D!dX6 иw2~3AGZIf5΀'&c4 s j6RI (#դVPy!xw}u 2fLlu(GyX3L=_d&[g1-{ym"2@XW`=cj5- Bpt+lN|BK; 5Okf5[O싲kCyYP5iN! kB݋i^x-tMplfI]#g SB fq )VF;)m^;t.N9CM/A>Ɠ>%Gun UQ { ˘j# 9SWɳ\gX :q6\ l7! Q T B/NIՁ nv9+ؘy8Ƣ}Mk^fGX펂{/5 gJQҸm+Wc2Dbs2 LYGn. Bf ,r!+x<-&>XZ!l){Tиġ)ԀSAv@_{{ r>5 9YfʬK#M]g\Oek,ѥO7TjQ@.z#83É8&o|d"Ig/@m8ϢhH;X' (%ҘU`ץi` p֜[V%M4K ϵ&b (6d2%x0Xrk9p|e ~ltX\iԹSl/ƚpa$x-m>`N.|jl`)1T^lGݷBjlW̿ISZkGTFBo*hKQ j"EB`(Pd݈֝/2w\!H 0uӰ0R<S6*ֱm(r"+7*? :ҪcDž+8ӦvKT9 vp{L,ܶ`l u=MXsXSjZ f/K%fo+P_600K^2k/?% e@~ڃ#*ԙV1 Kޓ.^"߈FOL*k@odRҶ:juܜ+Ю.O#63*!Iy*DGe^6vPl+ah:Ɂ}|;(uYdžntArNP>C4bR5h-ߊqU鲛`V+%,EKn͈b.. <6M~"<~ko݄v?"8hS5rh\oKv, 5`> !ײ>'wS F;Wmx`z s1 -2' -rdiG1=5*a^5^vS1M_x1% l.NrYي"#͚=nŇe&iە{t{\Ledi$*^\vy'C+x=JRyt+ٮ) p@>.A"^'ciץTvɱWMgU6m1ag7f$>R/: iWr> Ѱ'd5ÎZF(6;@7P=e,T_= 4hޱàG͓%rx\9Ȝ<#jy*ʍ2ٍ(Lj]xnl]nj4ϱ *+nl.bat G@^hиc1gaVt xtb^"R4`d!N ˴7-1{jݙcau:i9pak/S@;~jc⚙bf+G6xQ*f &k/4qKoN׳ L5V1 kR&*h3}E:DlO1UsI/ʈ8 (հg y,Lq1uw @BazlZ/ vJ{0Kt #d=A˶f) яPs*ʥY wl-twPd/]>re1z֤L9b+XՓ/)yDz]n><@Ҩ&~Xb M[s $fЮC5Y:weӡ@cRShb a(}XhrzA1Bo4 Zv I ?S ?g# Swz|Z3"tlA+VupeE^$\Y,oo:X͛ՠ Lw*f:2䚼 AQtYtCR&~B 5bc0Zrsf9`5<ѧl+'Qǎau6"q VzFM "Gf8~[G>YY˔ŻUJ.MbKӑA2򮫳@'܍E ɕi%=g9=p^pҦDGT#@YJDb Pl!84\ r]LG9ڵ_e Y#!Y$^$>]i2u) XTy+&$>ʴQy'^( xyhM'~Ѻp&Esuو̾om0غb5 M6[@NJÀC,5E(Z3\հX␁z^ivZk 3tnްS⺼Imכ~TȠwkfHg\0K*E̲Ckx̏yE=z vzXb(:S S, &5gc!g\©WҲUYHӑ>-v^rb4JX,ⰉW>!Zx i2;6n%;}ց3nB Y6B@c/2 b)= Akb.RvLF]0<8ONu E&g|.IyG 5gmqCKs+#>QRF~0Uw-.,("\qy<=iMIkyfPkܕ9W>!Pi1\|,N0Ϭє7#j$q܏XS%*%%U|np?[lɷgU3wF#Hm%耾smox("({/4lfQR2=G*z6)-m$xfi) Bfo Ca ‚Jؙ,;017̭%n>-0uY36WfXie)ڀ?wWCmWL|‘8$]0423ѥ]"GsY7%f\Z"x]FFŁ [Z1y+rhH n(BhG&+h%R\f,F%*-pGGKͩ2b,Bg+hʹ&.قIGنxEĉZ(&4CF 2< bƁ9ZfaerRtP_{KVnXl 'rf*oU/y ߯rwk-'ɵl;ܖw6to{)3EroH F :43dc6seeG0l1uz~41@Twә%Z"}+g"S9*e_ڔdLy+2Kw!;uP#]x`d_H3\f/&/;)姳]-[DŽߓ>G=״j'`#Qe))(bVu\oأ`P0Pmgԓ |nGq䟇p fqW,>& Ɍ=ͅ#mt0(\ՍXK*^SV)=Oe]6pZ xg+i6P*7HsP uێs|c*v\z26J!_6y[\ ʷ ,mdU$yBn)EU }P@G`eWHώqm,u{Y?ti~z4)8,k:*e:<r\(BIc? 9鵋%]j\i 9;Ҵq&o݆7:u mWPLrV`N%͊'ؕ?tD'1>|lwe*i ܐPp?&~Bc ieeU&'4w訍3]<'qBa7YHs^<v ?f#@"M }O) A r=}IntuwRa0m6\O<1>\ʯ_B'GzzqQs"~ !W\p.PŻ~)dZLxH-NcZKk;ZF/s3MeǨNE\f~ggQx5X1#bҭ$J rG !*-,S)0"Pè6OzS]e H^k/@tIv*Iw]0&H|SDoa[jCk1J䣔BץA 2D_5֞_cjqj؞˶'*Xr[` aqϔ-.Q2:itfPfdt2Gvq&r,ޭ~]vKg]}RlѶ>dwUIh[KT!, hِFRaab(@0'6,7Е ]‹pT ]<@ARY߾oEYN@e;tC/: UpONDEszW;^-jRwfmȣV`a,g`LXW.t% +uH޴OP_^%KxW&CT^,]8+>z!I#3b}J2]+'S:-)Q"{yjg  E[Nٱ$Ko 5dSaxidKRِp>T\ŗ犥aFB`̓O?zz)::?&wݚxXXEͲHgrШH!rxPl5"BNپ=5XZDI 67d:0ɓ};wݳT#4~CmSvZE0[Go΄ # s3b h!dz8Ҁ@ΉXk^kIlkG}(;4ST@|J~m^cus-wT//kڻqPiF?"ؘc8I~4L])hu:E,Qc\l?A9w4;@ 9V0ɴwۄ(]xh=€eH10u4Q0O 73]'êi/2^_׽0Ws:YkAJ̖;f +n8]'z.|>rSf=,6xk璮˦)φ++xuD/,64Zis%$01(Pyu2&^61Fm(U}2c@jN-/bb!몳NMC9Nb:^CLeF_q4 jV4$-3fRst`"ksv@ 5Ѯ[hܤSmTťtG_" K,2LXo6B*,Y϶& 3^:'v~ϦqA6h G5=Nא8@EB%$ϦwpEbeD\b_IXԪcfWUY%fWP`[M-D-7@_c=2ia/>]#Q׳vХ{dP75̥=e@Op7KH_&J"m[GIoL(?6*aF}fVlTIO]BP.!ՆKm-lzaP+m>j7@w2L8A "°NaoߖG4 ޓ)crZCC{]5p'`3Z5Ą2yx_3X,80`cA4ɾmĶBmљ.$\]ycmS%x=q^?y$?|3h[YHĕ.0.3` `JO^OUM4j WWMw٦쨖r+Ьx^됱 K?k}F$eyǎRUGO`Xt+m);$6$æh;3ssSuL] z4af:B*mٸYo 0e.XuB٬WTkbXD ظdh\|Ghb3$>-Hۨ|:n)XS\Lǥm.O m@ΘULVM ]hnQwE[6G l85!b*!~DQg.j(4NIIÙ4*2. `rewj ƚFs;t-Z?X}37—1PpGM.,199dʋT5!<ݤ;KMgS<_lF?{NN4G>/70*)HX-Nׂ=:R4}|!(v4g1*e'458F? "֬yXqT@Zm=0GDGxx BN9`XD[70r$a5Ms?}x ~d 8Nkfba|[T HKf I6У @Q@uX|ÝWasD.huDfAfqIn #AG.l< yHpMW$7ڊ;~Kc{V>0N5w*WφgY_&'G l9{.ںQcU~VT]&OK$i@D܋9W7%- k6Ր>Dz[Y26)/%T);%)mDPA&~0r0(DQe1f;了i+]+iЈ(ֶrLQkG:jVV63wNF!Km`l Ǖ_ց$31x6ByR/R:i2V:/ K:8'r\J} 80o1 IU"/O=Hz+l#L|oPɗgJe{ˆ73B 6vBĈAٛScL^ҟ) pd[mpo[dS=M|bS/'9z0ձxy/>Ct`@[?PJʭ\>V7u4{w/aYS-( hgaW#tYZ_=kAhcj xW5- Lj|/_N/E,Y/R@o| _m7֜*$YQ;6}J}5 eE*NM%4<ݜ5JI:OLB' bIXn 0yI{1r2nx\ast3^6_sȨk2m"!"!/Om3z\bwM3*E1?PbE_VP͝$f݆7I졋l;g0M|^ӏ3 ypunANfm!ؘאFA<Ő^#1i&@nT/9 Š.桜~&O\)[́^k?|cdH|sK;L*%3ܨn F;^PCfep "1Ek?"a9?f&-JR:C P՝vMJ{ueHϺ)#ZDtŵTϐ$+ ԝ5ܫ s6QEI~K#YN͹>`Ӂ !ŨD~$: rrN]u, 3_;16MUH:< X'xgM2p WdmQ˲~66xT[9 4OH FL[tP_s IٮdX3xVFT$uCG# Fwh xH{4HE[eDqB{Hʙoio9#6hUq,?h5U(/˔;ϒ=x0ন0!kRh2#Y"RO6> ]VS5(b68u${}gɏOIT!f fĶ2}Wo#5xf]=,'u5hyp+7\zSǞRb ƜP&! Ey ZfQp$0@K{[24rh AnC3em%I=ԋmup kyy %uTrN/[g Xj/]]4-FV7ԮcWu沨/  &8j9\ͳї& dYe<]bp&Ehm#(\7=FII MXfy$H˼l"}!R q/cCc-,#v$ O(Cg[/4|S\71"2kHx6eDY%pϹ KKY)* jt&'lOgS-y sBʾ3UK FݨhowP'\+]2}i /CkawHZzDZ9&6_,vak UgnC @,N1z^#au-8==.C< . :J&>aÕx*ξq(ަߟ֦_DTJ,%e>"Pa7Q+3t`EρԤym܋r896S'vijCDMo!vfC\`; ] JRy{vN'06)J ɖP)dӚʽ|0i 9"FoCP ~Ps>bH5&Qr`pNFd/a;+g*MoȰi{rMg =C^G.scnY4tf4iTIlK DTo7RHi$u޳'橳s[eQS0l+.  l[BX3 `l/foً32+hitRLJmqR>I -:8.p55ֽid]"&&xNw).m:%=$ӡﺤ;HJ¥6Je >Dfshj">}P&K;dsRTz4|u=Hu"?ug$', Î*2wJ8vHwu^B+ P̱߾Nw|(^*@0Xj. IReXMx9-n$!E)$a/bOyDĨ%(0ULY+;Œ%NM< iNSv-=ˠs)8>{4/fl  CuX(UΉjҡ h;iUwde_kZDE$k轓@#¼N'"թq0:w; IIY3 ٭'f^3nH9[^h`lL+X7Vs3k3wcŷg&4/Il<.85@;+ lgar{6Q.. ;պ!hOi*[߲޼ސ.<75`+bF?.@'w;Th)J_?UͿx6DY1Ą}NO~{\qtڌp$ *eQ|N(WCdGb?י1[qR1 @YwEsq*X]H.`SB gҩ$NJ9>iObfdrōsH_d9׫>ԐD $(i3qldXmGf^(l\RpB}{͠6֞:x7 PC_ǘQحyov4*4} מjfh)]bRyw͓x #m7 G a)5: ht!t-Oe'/|ް:bjμI=.qdmk=wÒa͋R\J=4@Zrz ,B u,GnCC@rVf4zo( DI4>as%]Rرr[=`^:ti!,~媅Đ8<Avt''3ycPu'fw9H2l?QS`zb1DIX [s>[kݍBKkQd% lŒ%Y pÊ-a0^lv|UH>p/Ud XQ۰9~uo I B4#t "WSh'-9þ,pɦռ-')@:-7dNc(YoXQ;N ?-ɘ؋M¾*` EOqW}Kb|5ٸՐ Y^\B734`}ڌ\ksbTuMhݮ[&8FN^3Ֆ ʡt:ԿA+$T7yRLx o 0 qz`` YR(.8*MZ`anqgg[c 8 d4oULCis߂vT6mp*ggM3?p[/HyG *iA1Hky[!UŖ@,QK`zt۲` $N;p9/BeGߝHw`CVU7Dzu_l*uzz>ٛ3mG`DIQO0b .W){ȎY#>Z7!9n"..~ݢa%H ≗ww=nbLfb W%Mj"V^}֎_(W@;P:2NTOf@kz7*Rhzl#3b,U*նhk:k/S5uw2rrX5p5/lD(![F8BvCH-]WN=Af`I;(x[X vO* 3W۽:#$B0gS߀hsX阃gV XCj@y67$yAk:T0\@VX!^liX1% W?V@Wt; ?!X]@/u ep&LіkкܕZUM>O;K-ZM%M؂dwj-ŝJn}5;g9 QE8evB_/|9oIzHK^S=+FƋC'F>-y%ŁH4BW%^/9_v9*6X sR/Cp|^ (~7{TD=f5aOMȗZH;P}LQ& HKkf]ҲZHҭÂ%U^[@Z9kf'[S'Yyb㣰*cʀofbdAX_ˀ6m3Կw4 ޣ$ %'D 5uy1ȆYA>d Zv$`lNOb {_FŸF05lRe堿 1@lӵ>V{[(ې~x gxKz%5U'lx^̈ij ?ngb G;$gB+E0GYN E ׫\t>ڔK-p1Вt"VA7+J $ ,eݛA@iڊP><5ϻs{ h:l P&|*,AŐ@&H#;X:D }D뺑BC-FyWړbBbH?@h\##6>"?۠顏p^?ׂ zRgƇrkqЃQl*o+*G.c!{Ua7pi0W7nOWnV(JޣL:+"=f3(n=sm{BƋX/h|' = h)-WJ v=_[,Di8)ќn0 e}g_y%7gG- % "v #}:錩]`T.^&v vNEp2Y I>[;AD6dd}4R$TU];3"VR+,Xj/g);ok(PPZ8\edU=Dmڒ^lӢ(͗ + WJ0jaPÁ::@xT/LO>x6ɉ칪jE>F 9l,Q]=1e*q~n[ʝ";C!;ut9'%3QM4ʊ[6Q^ u8gEرRIEod+~~IJz_oi{s%T߼{L7|ŧ뱹1:_*2q(3Qנ!:I +.E.Rm5s#@I@7?n _TPYHѭWQ{&=<.Q/)LH'54ޖc H%2z-fx"e٢eeyDck`HT솹ɪCr|?fA\D=m$Ueofpʶ"؇r#\65iv"+ hLa#!/YiIpoۛ0T_78'YFז@2v%gDYB0^$"ᰵ(N0&PˣBuzqAT0E;f)d^,BYN) ڂKis.7 86eh-]|O.W\r3\G)I0NVQZ#:b) sfp|ɇTGʘB.) ,cpnO$W׆eUd=^#M|ɍ>uH?fhUXᛖŷ tj˧8_p867_( 8BfJzP!G)0~AjR9׏R|׳x|AX:AQEJ~ueɦC>w *X(ClqztEs+#MB@ԣ3h#"kyuk@viX'ͺ*=rI%KP|5.#!6i&it"Q>6: D`'1h+:CUL{ˆѿi HYuBRo1!Pť[ '~a E;%&>N "le1gKC"K֋ PAwW'm@V]*˽4S SrhհÉN9Y_1M3E>@:0N0a1l;Zd f~'ֆ;i{r)P|XOq0O3 ~{ X( od(h8 Iw~-$My;g {S}ijಹhlCm'IHX1 ' a U\-›s٬f6 m$?2h"6Js8SB술_$n))舮+>Fi8'SC3| g a7]Z ]P`=c$nbSIψ1Ϲ6r~q~fKΨ~j~7epY^Ə"L?{ɧa3We~_Y`he4Cx,$2a\+#> )ε5l9I?B-%x>ZȖO,kц\v6Ƶ!ks;\aGX`3?4J8ugo>fādT!. ey#}bJhqPKԝx#XM`h"uC慛EHC`f\߁)H&{Vҫe܃^gםkA-6/֯jR;4OqClHO5 iJpqL1jYzJ3- ٫p|i;|>}gqRO bOr]:2АQp6Rr.0Vg IXux&GāMjqku^'N F{2 ͉1k:La~"S?,zc:׊fB&*5q{2VI(qňJa1@=RF} KWE_^ 3jumCm"F/4QyGiOQva0^P; -m+zДN{H<EТot $NlӕS_mUHEĢPeR8k켧~EG|HMvwc-ʃh4FF9*qjdvzp Hzwp~U)xceŬ2C*: 4iXX}ojIa]F?ѱo ̓+?IiqP.5z,DjϞn#%E?___ϟo@p69 dևd0@|U;GhvXJF#2" d '4Hjs:̎(@T.QLHzғFaZvW^1 &0;B%c=djj{0<;f/P+ J29^}Ic +3# Ռxi6+7 :pewڲ;-! ZBEO&Kl‚]KO[6G&֝͗8Z w}sUux1 K }UDnf *d%^,SSr&c:=\,.h^+x*B3يҸ\#ӧHWbWzjͮb=*exY C"R>M+v;CjF1֊b{S^FG3-W=a~5aiK ;fTb`;X?GM3!oKer0=X;܂DQH>ې?:\Nqo9v q}obʐr*U7}7|䬌jEAח\bQOW`S@R oMbkZ"b:6G>'C}L"j%d{߻o ǻYt',JWa=bn'ì2:5@ Z6`uw <^Bǥ* # `b@}bΉYnOHy?W&+%*sV|$~84^_t'1ӻRqd=GpW!O_>Xg+K$~Cܥ'l4H`!~!21b3359^[m,gx% 9T[Jb{q 4`0迒d0⊪lOz,Y$uY`vDA@x%T2;\[#F.IcnS×\Ov ֆf@8{v>B+j}o >ͪ z|yfr~"3ָ7Lp6r]pQ g% m-cU-BSb<('Әd#^ł'@-Àj>ƨEDyucQVE ܂4I(~q|1{ یٍb׍"vQI0Vu^8 Iviza"&jC&d?kEX OOx{t"|QO>z?yR˿A6p,±DJGƉ7 Vw1T9  KNhd4S%rֻP\ןmM̪ߟbFM4of;ʣ`]Hܤ`6*wB}ejJ90y3'd9h?ޤJ,XTL2 zfĖbA{gӻ:3p"%=1UVWFiM5׈n?14mNϘB`Ӭa|!vzlݿgv!ZPR*ziv܅a"v<9E"?"rD[.O'E>쨁;=-QmKUppyvlߙ3&*qnhԚE0V~eb)|OrRkЎUgݼ=) uLXS5nUמVA4O"HԹƶeJ_%(;}W8}< “xq '[I;kV=`G 7 ->_ǦA?A AK;"ZOCH5}8(,Hl/o!/=|QVu̩G4_@.߷K?J˱p TȰ 폹:;yCZN/h.6}$ח@ u6=)E^2ό̪JEo,)&5 Ƽ̺6}X[wXI6/ai7R7O=\=HX&4w0S? <mU>=P|=6Rœh̺,. z>a~ ,k`xS6 Y5WXkjH|`A:MWxe2W,t5> ێU?xA~tpwҕj2 Yb[aެF#W0Et)&Uz7JA-B$*<xeJ.R#+#Ly ֘_^afH*nlT{{DFuXB.)_yEl=;jc x^jo ϻgs(oC7K |>IEJhF˻-XPғbŤKdz1}u J {ʻ(CS P,&dݶΛ:Ƃ ߨ~lpk1O !bÜ8ɖq-*ǧf1x#9#=c)28JLFO\G&bXּFl &9t#ɊHVݖ=75*nYWƧ'ƝnQ s!\^Z] #cbtىpŧiA]dB^M !1!'t16Q×R)Mxi.غ٦# ։XM|dkӍmfT]j)x~98ǀ>n9nZcZaHgX;7Ǫ*Qv@]W\+aʖi+\[ڋBԂ~EbdS326zR:79hg)O7}$o͝&C*j]T ~ `e/0Ycs2ڤz4}aO ͼl(\,?؃Ggo:Cxe/vP#J`G'Ka7k Fpb }_Oji.qf@Rjl6SljkOX"eYA| ‘ps lıIcPZć .粗/7z-0$w>7B#:۵ ;TDRXt(#K%bTK =]%I<};} sJ$,5Ak,V(VK"s/,G&o :BnsfMImMK?$->W["{'Y[AY⫙~MU$2=в"~Ecuٟ܏TLa|3iq. 20|#YUր:|~`MAD7dsL֑UT{x˫WP>^_PYh¢%GTz9P\N:kpƊv;pB/ v ʀV|14g s(9vLb}^9lӷ>ku~mlsONW,`SAc٦LqwEw5mnktpJ "wcW'0IDY6\DζDc{;%mMe-k49)}FK wq٠Xe arIsWolqbtUGN~j/5~[߸VD0}^CE4M^T~~ϡΗ 4$:PwW&s4j:7Yr>e,cY2( E C3rk4m+8͎cla:0]a}k` qKW$4'JmQ2[)ڜxnڒƒ H!obe rv`q”;ryi?%dԽu C}^Mm_ANyRqi@ؕ_``z_8C}5a,Y`P;[^GpZJ;F`q-%R{+g?jv-,P|:rѳcя0uΒ HWPW|?K gpsdX&qy!b$Ǘǵ)1T/ ,Fm xԒ mVd] %jGK֕Ɏq5~ 뀥8d(-Yz@F1X%rX+5Ī+DG={d2 -Bjʅc@N2Wy]BmMN8Vva ů"C2/Ȭլì'ML\Pf_ߠ͟f'z] &}*&5Fzgb^a{m){ ާ}Z!)vw``q6!յc=w xHm&G-BxEQb>zƀv[Pf]؄p%Z7w$Rc)q 6a9Ã5Ϯ} 3,քRRi}FHEpcEBǴCOnHiR+QA͌&#5MS8:"rqǐ}Gw`4p=Щl_nc-NEpP5E~e:MD?kXMJR*rCy&JWDq_\k}$\BC[hk+Ns; h`f~yщU#q+݇Ac lTGΡI4P1mqfx&z`F`-z7z7~1HZw+B[G5hrŁ?RqE'b^}I}vB+ >kShnLg,td[fu;_aq /$-Eh lIui7sU/ !z' L8҅PG* |x]T[ p/#BV˹K,Q3F=( Xf98L,:!F 8 bE52c?,Nc00ڏ`Z❻L-Y[KzuMw7o}Z7iPqPL3N+5D'qȵQ΀ OJ[H0se/7oSP5JXpCY2qB=JĽӏ[Fb. 6Ȩ3{;&<ؙBjG<@"- Ûҕ]2~Yss><的 ,y]H 5vo92M4nN6KR$m)@L*sQ׌f]4$ϼY(.MXBTЩ@[:bY5KIrENϟ@ Yy;P,rMUp(}W۠d7J:5ti=q|GUZlݏ! "bcn\maM{w;4a7U-S9޶=t$lxdzDPǖqF8@Zy 8P1oaV5q vMLt2 /̬6OSpض  X-<},'HRRqP3vtqij,@p!\1llV+`y\ 1DͰj]ؐ2Ąd([Oiu\ØA"{6HHx:IN{|}e9E弧0"!%1ө}tQ9St_`+Asэ.wꆔS@{-mbUdTgFmsIE뉗:Xë(lUw8C^<u}Mj_҉TITWnV *0(w-pir<ƸuQ1BD{\O]? w>=/1kxiVຟ-^;vWeZkqce,A$<8NEznj7;u 6)ӨJq`;$E '9m@S0 [B2}5>[ |y1Z;=p9q?njƐo?إ(>2hʘF2fX<޻ z@9g" 5 Yp }!-6%} ̀f* ;Pc\[sEԧ]>/{M-hd)mbTY 8L.v{tF2'ZیXquPn H`eqS#tPk-~ 7S Wa}LkDcN$?OC6"poŬ6¦\U *QRM3{U(tTm SRÒa;:=9 ,3H×شT9VF'4[ Ppr1#*Ԍ̓ln2yyR\ZڅZ?Y k)C}pjⲢEZc2"T9 KўQ 8]#.`?%4ty<PmU RHsgDi^fb2O NҰ c_+;cbKE (uaLofi!4H\R,(D8I: 6͹ )CbՁ kiá'({Ɂ_fIX!;j;"|SwwYXIt[;Nɸ l6&!W[Vt"rt)=KثR7=SyGyeq|\Gp[s7I-$zj! CRkl i"7<C nGN\hw/9gK m; ,VF3ԄhwMzU,ՇJn>=j[0x0WEv71?>rxn"WS+B@G+;T}) / ' 3Ep1w:P+BNGhajw )g8!)Ae&ZX[!?ʂ!+ˤ 6{F}z'.c_Q |ؽ "O~@>PGZ1+Ss 6ΰmU/Dv8Bu(FS{{)(MJ -?6#M2iHVq[PⳊG$LOX/:9 ޴~ ~XJ pQLTo%s$H,Α1tܑj'vL*K{3P gM򀡖%Ŕ.))؛O *iU_XK"Ben+-(Jr@vP| :*3L/eQOӠx8\7zQOF^Jb`߹ ʍ4}DU⵫xGHzpY|b ج4,b]D juEOI):/9 40Ȩ-8b7ÑUkĸ4lww1j,)f!L}}7A 7mT{lZf[zU{sZeEUpID?Yj86tQ},[J8<.'m !R:AU%#{sb2t迆cc\,l_`W&C3ۋ1@X R_rFgUVg[ijG_unW5ӊCUSZi%TIv8QRG]Ox}B!p8ޕHDsƹ=,P7$9.F!cPPuĘ?I^]S/vߤ#B8TLi; SYɩJ H(u^i K09lX7h*nΔظ@C쿐E"Kq T@0(;yPu_ysVp2qi:Jo;r"?%P奤\LwMHқ4;wdɺ1.nVHW?U{"N!2nk%^w.>b?;'~X_G@HD d[]SlS!R%f4BR@k##2#SJ1i1i6ӂeBsEʅf̮Y)\f~Uܟ%lE^'EoӑP~FIU ޵kd:ɪML()$E!Hl7 A_\ RMIK:/T`xɫVʺ&:%-2z4KӒ _T2:tU\QɪT3qRkAFf*i eqZW@ߋ\Tj AˁG :ݏZ#Dg*j f֬INkH?Q5ىSP* !X\jőyf?81&0E'yb޻=IiS^_i1e({wOo(gGیa(`N=ץON.t}yGOj276 m B19 ^Pv0ʥ3Ó1q_r @*@Cc#;xnH6 X*^҃7ڕƴvX\Zh֨)S/ ,.{[°֏Q40j0348XϭWt[|n0$4y{t{ L*7K*ɳpWj?N_\˭}bftm>[,@4P(c /o< nC5ܛBp?p<wm ,n$tBSo2R}e3tځXY56,ٔ9Ƌ E<BAeG1}JeKTޝ1{ݤW"ju}8t?VI5"⾊{cJPaLz570(-wG/>lEFJSGdpŻ7u!syկP URľp9fw?ҲPt~%67robs <&+|&Hc!MWu^9n-n 91ךePSƊ Ư.%,/#{E1RNudCV}jG)UQF@8N еX'x[fn<E@+ٔd8 \+Ð瘾ZuCp1k+{F?I08`Gp^W*7qU.Fvh1sJj _ܗ]NޘӤ>L.P2CLBV煱D;nUc_\ D`|%D |S!teJc$nz H,̿o"e3%xz ky Vc뮿9Vd\lƸi9Y*+h<2:cB"P Av3QR38kzhVCLdL1,6TF_'P tݑV#jՂشY\&(1&HM!ҥzt-̾ "Ǧ'^Jbn``R쟵9[G~Hqw$ #x Ss |[T_7ȣf|S?b|jƎLVa9>Ckg:ɢ(K {sOmȅ=3a. -VsV].\~b5 6!vOT/XwI[s b|e(;F\% tThҹx'o-5[.Zfmw cV@Q": 0=`Hub?ݟ֫`MGJrY^y^9W~LлQy,.>Hm_qŠ]LxOwKM >ȒQn(!<GݐwF4jL47KR>Qr«&ŶFg9k8B'!+=nQ7ZBP* *@,ɬ g2[ĝ.jG1L<ַYPZ.ِx'Qӱwq+f T/ϝyncG&G&T$ V19}y#/>ȷL-qB'w&Dd8vbY)d$B3 ME :7R~*x':玫8SnPwҪ(AG!0 9Bŋb<"ޘ|AdZQUcŻ)}r.­" ;)wp\ >iW3翚NtXB#qZv H_ ~O~Mr5'4TM7Sf0Qщ"x$g[}Aemg@&#@sL5Q-9u,S5(j.;={#o fLi}voԃVpw0sjU٘ۍ\:Եr91QxnO\UpLyL", pMa5b (DB1"#%OO$RĩPt*XC9._Tz,n_x>)Ѯdl6$f`OD}`7-Qsfav7׏#&n vd3z~q߮8y_iݸpt=C] PDX$ؒyTؖQ3 V{{!>NN~g*ϋB@qb 54Y*+CQCK;KyBJ BϢ3*H/hOm 5ջTꄢLZY.)\G1f oa[mhmqeufr ifN'F4z>6lu^<Y#?G5F׺MI~"JD\?Ac(&zFԲoSA !o꒨i9qً$ՙGuҤz^x+CZ@iGƒxq5.0VrdcS}ba7O1\ ߤ̇L+t#l8ߝns/rS E \x}ç%@Zc.cRAdisQ +~}MUDNcת$2^#Dir>!&8_X0d`$h$$º^43#&s)"7|w]bdIj(ǥŤ {,Q Ȝ4 u̼]tEW|XttŋA,K(6]ѪG}T͋孹.Ʌ'{)*݃A SW?dݾ$5MgL#Mqj'*dЯS0 x6¬j#kհZbI#{EuCX`.|֏=|VBҗ~ЖZ.v 8?Q}* [* )F-Eȅ߬UPRvw>^ cjw+Rg W~(mmfsh_ʌ?vM2BMF;:MHKP:G{FnܝH_*a<,rÊe )PAaHbiM-p ;!g`d%Bq 54xDɷ db)Qg †rŇuk^&3Mg0F)r00J2XMLi J7ljBmhKp^d/# x_<1 åS|I` K`Qj6v̤ R_{!*ډ:J!@~MF@T39 蕿ܐҠM.M9Cit̛4zY[ 1nӒ$ | _S9Uޏ2Ø~Hk|5.*n"t&Clφ~B 36EԡmtXAoV-p`a+/j'i颠Hm,ʹKw I.i7K@GZ c՝I~ M]!q4|;7b eYG^.rʣ?.{})xm 1\xkȩmSFwY(6f&JmADnc˝>pu),0-yLl†~HzQ֢'Ũ~{Y\8)}t̤,TR8=u3R;dc&8Z6|eA k]Ϗ #XUZI2_j= r)^ֶ\.pX 옐dֵUJn܋7;uU$98J[LQ}fm,D/).OAC)&>Mpj4Ȫ}[ː.Ȍ( W)LyձM Ԗ$e 8W!/q1ՅȈw2Ly}/7l<$BcQGmze2F68zr+M``+~OYCRBȮ{Ǿo̻/ꅽ$*g~sk@PH(@Qi ՗@}FFPHi2 RjGd2:&k\fqAIB[؛L$rbk6 N_Ȋ?Fs==)) ]L<в(9Y@ WgNMuj`urX|; qt57=u!L[a}MZcV\HPc/2O6i†Z…[:5[ ІkmX3n'>rOU3ĠHՁw>оt0ⴖ0ώb>_$Ӭ6htf2]ZwZVx6=X1qu#Mi rEQ-gN;Q@MR/Q:-wD5r)~IcEsU~tJVק՜L\h=)i>G}i,),odܓy*`S.!̖cHM(D%;ڍz̧ȔMPsTHPE3 M 0x0Cf(ؗv# zHK]|ӵ ?_(pPН1dm^ؐD>EDNT<}ac Pe6lD"]A೹|_s(m.P ˮQgE`4Z#seK~l+HYCxn'KeB z1$1_fP"B:qHxg(F#V<廹.pî= 65]]kcS1ԈƖ b2\4xH|ܴv4y|3<&  5(;TϿLNVW:4R[jv8Ce+5ItK`X]+M B= "~bKdžk\(wf`͊x>3g3쌧AKJ&nK. ǿ/1a|e 2eXYE~d]fRnѨtɂ#(VĂ \VLpbTHB 3e9SUW$a5dJʤI:1ϔ[!4xv]Fh..01,s4.rsC'(fW >Cz-OGi"^X֎F% d ռnWD}n'=@Dj] qFYHcTyR/ZoN7^IT/X)dɻVu;x 7شJ77۞(hL{"(;8!q`Isb4Wc|{8wNɜfty'4qj#Kw"#tP1!M5ڞ 8&.Yuw $ nk{jJD|!p+ID9it]Wf-v>SR1yEfX6NJtElJỳbaBK?XL2ĢM2q%ßJp P}idtګ@?؊zIHS1E ֭ZUH·U Vȸk \C)?cp2+?LNfHbuRTq18QV锬v\V h/ Gx]D fwW%d '4l?dDI,h4Bb;uK+9_$Rn% S*AZ{M͂N".9U=QB6RtK!zp1}J[Ю9{cK '3Gb hfǗ, J9],g)1jPN<~<\֚UVrFZSEw-'Toe>`>-OBE6Zst' kȄjr?$*VO?j\dи36Ar4lvY%=YŲEC[Bb# D mۛJ# `3T]et8 |4Or=Й#RYl0FtMiWH^:.7HcϫRPOT$}y9c;P,{KS V͂2Vf\BeE|Q5(F¿{zy3 X'DŮ5؉8cCEuLs.suhl'ET傠GӤ5\U+ xJܥ*[3#9> ˖TFxڥ C+#buA@M̤FNN¾FY,)nS`2 ;Z}%Rj?ͼ:*Ɵ#e,le6&%<.İ"7}P_[ }l]jС 46>xzY{&*[g>.`ќ:$mӽ+?c~(#k yeFhb7Dgu* 4[tERGZJ&MstFO襫H:"}J)Zn.7Bg*vanLǮsm7mZ8<=R!IdE4-2ݒ%I"dO{7bKL09PAkPWa].Jkn?'q"wE5+୅Nbg!Hln@ȟ˗\f>7ܯ]ݖ)WZ^"w/s/mQ-֥jdMN6 !ǿ%ȎQByrUuBSަC__řt)}V/+mxVE@/u'_,[7`2y?‘.!Q: 7vD!J^)aǜzGټ6IBeۇYhtgE{|0֠&.q2EE]"Oz:TxtL[ zȻ`M%ǁA<39z"آ|)Jz4 IX}ذ]i&El[:7צ& *7TLգqISah8'u.8O?۳]Ad H\cqlB}S6@"C ;40;l`/rtŋ.Ea_B Y}VUTg f"OKWS=j Ys2]9O3@@=R2Bf0W W}6^H:4znku>wqHD;{"\9dݺbZ H& *ua/{Gjć-8YT—7l { T2ߡaBA)pM[Ž Ѥd$.u)piXU7,Eap& ±{2Be~]ֳլwZa1Q~wjV"h{G(Q^_!ҟߔɏeDea.ͰԆGiem2}U-!o$cxܳAQ.3gzeY-c@ۤ[UJ -h; jŵjdx[ 7rb._#"!Lfƀ0 ;v(0 Ef8(rTKCZSq] C!|3YǸ" cU0M"tG@sl1}YiL™dn^Ӟ_Q+ġILk@42GV EO>VfQ]1iM+ym[0І$Ga[s&gg@R'_ٵRxjҭ._us4?Vx=ȇc7<W&vƋ:B [S>,l܁'-8ЍJDЀ!ƈzPvFeOYZ>pEG7Xχo̯W3vzX.8fWڒ Hs&o@k3_hse0-밎޿!'̨(6utxDol"[>;×qdn¼ `ufdCLarBg55 Y 6ewu*.Zxt Y^Pů<#!ܾP:Hdmҙtq |sǘ7[S=xMCoTx !°OCY/ਟG;+"-qj6{ls=E3u;-vdoL6҉.&:IK " f8&\URZKBc_JEŦ4.-qᙖi0e꼣յ t2Ⱦ[\X"Af@=ޞE"cQ;'9Н8O`hX/?&Ee3XG1=), m> ULmw.&^dd4 OJƥp S,O?C`~$y|: @|Gzn[Tԣ_LHӝ]mNOa΢%i[_q֟`y ]̏x-%pF6C3ɵRWt36qsdB:p&MÕ8d6ȩΊ,.ܜq#8:X)BmݶSeե]j]Ѱ*LRw_p|gƘ˟ GMhYI@,p:uK:d IƏR[G1yЍ؆΋Ɣ\EV)A?ZNM5e.Ɍ!3k1j@eI|;2uWFfxs/`Y=ZYqdׯJNT9,M"U)8%;t'}~4C(Pw%!BFyICk__- oш#Gy7\(x9/0ށG*YhNH D]hxNf-ee6`RVjw#9Oꇡ#lF2)iu3>kf ¾n98(!rrkg"1ܵ݌-FO> rGx1 (;xcs>ʝ~9vw 6Sycj}oV*t"umaUZ'E/ժT2dJap,ÔMf&?qmYO_׼GҒG.`fi{ xљ(gGfv Mx#Hg:_g+䭢[irHI bb|W@\}Fs0gzku)3O1 Dw2g\VDaS_ؿvx ZSmU=MW_/ʬd*vӥ P7HJ~W>cVC@f:$&޽S?8u6rd)}3ZrA+n$P + Ed0j(X'shPaunFɩee/ 8A uSnܧz<8iWi)&f`& CsY]!)AH]5 r)0qHyUݶLmW6{C6 %;t̃WV{Πh!f\)qzvnmIr㑇[{oG y, NJM0't" 54jFh`b=0sj=^!iS36}@8U3D9lǰ]îu#yvT*Tl¨ 'y [e1&xXWY f+qk;"{u0~_ BU}ԭYGrw?^ XnIvP!^Ύm$tJPni 5% a;\*Wn({ be((k?J%<ÊM{׻w#!㢚rHnȟ]eS8_.uNQ-%'*č+xV7((jZ-ζNhVi@fZQ M? Y/6mVش(84'N4v.}/9d.)GR)U&ub_Z!̰hίjΈ5m* Cv,3AI%,mF?fZ ݔg~`GnUFJ}+*NT;MG)FԜ1WO0RSQϊtzњ4hL1fu@{~ ӲOpqr)T.oظhbp1D6eT_SM7%>/f6 .*+4㶥Iɏڧ0aC:m~dN$0*b 瞨q+}nlLQF\/D%^:wG14K{٭k|SbI3^q[6^ 8SO|$NODޔЕ(K7ȓ5uF䏸1Y=uьxxj 6d@[}biyI+d( æ]4n2sf|S "7:4hExZcXdMSnme_$2Ĵ؋2x`i T++D؜:̰yP n ^ןK*铦NrEn0~wJU5Gq(F?`s8Ruom>t2֑$D(sOW]-Nc?2VbAWXD+uX-Ɗ_4 mX[M4 ~J)K5@ëW$;a. 3GttOll^Nr1VjHlx!,mo twmDjRy{ H Z(;e8 Z<\nJ%mfm8S^=ΑJfeKSK<kJ {fĶ9Yet9XCHtTУ!B32瘅ߦl,SM,>A]RC0&$ST,w|݅PoL;tzU41@Xw۴)U3}v :"ִ)LK,6>{-mMxv73IT, dI5cB b9ƊC'`!0TMDKpYe]w| |mFi?~i^>qcBs^,P DB>?Dp"4_p k3x5 w囝M66x>b+o)ũ />W@MB:YcO!(◝Df=M뷖PMئ:KA7DĴ89aa5$c|P (\nH5DoéR11󈅖@n.ʝo@r?'7Wu~6f1;VD&̏]-)Lo+{ƥ2l4|j@s*wh }PP Id(@cNM>6LhG~#gp0'W3޺O&Sz˞!wސ%v@,+M׵N-=?ճ%)wP'4,G5r#1ȵ~9Pil-pѫ8yffx:Y[Q=R_]4箹 HX=&::!k%ɛKכ*`P0W<|V|?G,uK[\coא*U1\ O5@2ұ7v;&wx*XҟT&I!dZ!z0>0[& ~:z3 BvCmHJ Dq z59= 0r%`F:Bs>n,?-=#I:u̗('[UM~<:Dsbdv|-93bMDj+ǒq"gB]}dUf{H~Yz1ǭaU*3'߃˃)4s$²B8+;t;WD_cΘ|pYsr 2=r/MA+ Ѱ 'lA8ӊRCEZy`8hp/ F2n{AW;s6{w8 a"eAA.;q%]p2Xbw]FEy64&&,UE֗r$b٥&:f!wIjF& .3{\zq0Y,J|r+Q`؜ُCsڌOPj[F!G/ gweY1%hhN`j?t=fqDM'IeY|Cj&Qpm !4-\YX*L߈=8,swo95d9C:XIΞ#kE Q ̟ ǰM*|KjpcyGq~wXcyU TW >4+h$>)SJ\T]zRƹZjZrFC>mO٤_GêZcΰЙCYsg򹇆֞ DQ.6#(|~qͯoZM0u:fY c4ZF]8, ; n'F;WE_Na**CEHc{^̔>3Kp#0zH9EJk?!;EqVe@7ާ#lt*Mycc_׀,Oļ(ai1aƚn 5>ŵul~X" ml ĸARvHX-_4xq n**yKP7pT^rK fMnOb&loEk{oO!ćᓣS^ӾRb$z">H3bkk/;{N'YIbt#`΅&_܎dݭ s?WGRXMU+y2BpMпv}fv g9\hNկ8ّn9θOZߨrjT/]vK]:~B[S$)j~nGd6 +%KH^z?yч.cHTۯf=ДH^(W2ڄ'8nnTXMя4"0IG;$q!T7LE 2}ͼ CE< wj1`OvYT9J&2<|ʲ^\QO Ut۲;RReC|v49~A5( Bb"*E^/ WD't[K(KyhG-sw͊:(q3 ps|zM8]z޵FO&l}3WsܰTOR}{_[xhK<3{h$E\"3JJEfXprTi.=OkGC5"]gc+ A~=Z65D"[0N!( @&d)~j ڹm \x*ڬ=G }sѱ+ݵщGa9lD`l%~A 1 xCp<*%QNt꧈fA #'+"cRsGEt]YN{3GiX٠f8 E]|t4dmyZ)v?* \F[ m9kr;82*LuL&/M_Ʌ_.KK3=66\ -d} 7T% O>C<2WW:d w]L-Z {xA9FN-߰}C*m1~'9Œ6K]W6]b6Q_M>׊Rk#e/b5KGik`N I4miؿl$:Od fN"ɹ&u%{2SJ38\]`gcUzgy/U~ \)1bI 1hnOu(9>&fF?)6v uoVf/OB܊618;SR(֒Œm+eү980"vkNa[(Wh1AGQOOđQ*gNvuOt}|6Ox:B&Ddr4Ǻp9*aˑNS$儥QT"g @:-.r#7쾵*fzrKQczO,)E:.xɑ| x/~V 6^TR8}a=x~0Br-6VKsPZ:@6VBzͺJ1e]Hsl#%R)~ij gvE<}C/[w$حG~-.*b{0u|I?vc۫Wu!X'+|wEsQgW2ATXq c8.9h?c`ע!wc8zž}U뤈G%I#:' *ã-K3\`#Y#|h@kVlR9n<\Ia̾9o5xbJQ9V,Aܭh7^*;] Ju:Ts$ok|]UN ^)?kMi(I=|+5*h؜yfr:3EE䠰懫q}myq:VN$CJZz&1G"YВ[_wΔ8{(UV'Z]`ДVW? A=:?lXdM9X@RI݋ N6\SA[ tVX{$grz鐦:nYB GJk]ݗJob@nch{(in$Ij$3Dli6zBhAdz*9t=CJ*Ӵ1 ᯎ&3։mgn8r\1M lfMi1l~ zX3{5IrCM+5S1Z\v[Ec>"ΈBw<, ZUд3&J=TK$0> b "|Q].+s$*&G.A&K9k坹` 't*PZҨ ? z-Gt->njE>CkJ|tIg/n { dΰ1f;Ac1+s{8?q/Y:ΝA@Q{ 5#RI$s}PSRގ|=ib{~DFU9n7A>ȫS)N~RPwbݞKɍ`İnm ;&mW1Z%,7%iKH%Δ_ߊ??Լ,JA@!xTZNr;rJެE׬9Բ Mgs@ߠ]D-H^W`͇羖"U DqQD`kIE.0*`haoRkBegVŋCK9 F['33w%x4f* k2rV>J`5P.9U pݥg#0.k$.(I1oTʮc̜K(_qpѻI~|2eZv4p z8]N ;;ĤN-w4F멜?2}l~>B'23Z{n:yFmjߢbZ@q/t9ь9g='5xy}D[2ѨaZj20b2p_|thLT%۱=R~.&#+VՕ34I1C+̤r97Z~JOwmj!ژy6!r rcܙ}Y=1M0yW ޽)IX|Bn4bXrx-0`hlF0۲@#9ذ (9%£WT^{ ;%ao^I*ȿ^$u"纋~ w^_ ƽ<6c(JTGVdž(ͩYiWp+zf%^8j1kP|"`B4R8tmvbܔ%=LJѲ1>NUJi$'3m\n';F iSy| .GJ,cj̸b5 n\?5MqYD`}+6$釉Fn1 =2~̋s]Ax)LdD-Q/ϠTPnlv~ivHBkvNh#H5XYҸ U#=65*8Ki>}k+Tyw&~5xhKTdQfɅY|(";$U!ϫ~]mgo+ͮ ڠB)yXZ=`.Jy1M>Qyel?_㸯g+mЅ5yU'n̪{97$-+^m[-Dઌ`'$}4cdKIϜ(z&6b T"ybZ]gС◚~ %|)w< y_^;hq6BQmM41ޝJ*rP4Wg+O@ja厠__fE~XI%- "7Gܕ~ iD uّ_&5^?r39bN߀ ar-ra|~AXufwOϪ+qҧb6wrv9 NIՌ,WO`Ha2\-U:O6cU6d{-,Dmf,yGPMR} ./0W_DKp zia 1Vn)~ ^T˹KlDKU ul)HM?zi{j:.  _Q"`T y!~љ.D肊5._ jUΧA 6GQHSkB д~ ȍCVCst>@!FZR[ ]f2Y~U Y҈ctp  >Tn&#JSJ_=3GՆ>'nx:N.:ˌRi~ƭg5S "uQql+NM=3Vλ7c}cݟ%F` Sh)~XJ(]<GNMLliFboa+S9͵텙څ2Ǭ:ks-Vy!3(0aڑ|\h{?_ Q=Gtlޑw̥|fRXЧ z'7Y?dhgcz#"uWa5d[k(6O(>m ŐZ`ƑﺹRhLJ֙魟3%Fa9>>Łר )УjŚW ]JpA4/is0$"hЫ ̈́fj]VpOWv"Oއ茗p=c?(b^$B\E=yɟ=$@'&+*f% &ے@?RHC`vrc j1 ӻ+wE58?4PjgC^ЬSP_0UC2ݸ9NWXDOrd*7xֿ5y5"WxLZڤgi8@`Rz3|&8$o+$Gcz4Af6dBL>cBIˉl.?UQ@u}J{N1TMTJpeI@Z=@̗3ʑȓ2d&+8pW6IE|Ϝ˶yyS-*&ii SdB@phx]U幎](N Q 7Qծ%X<́\P[่l3N>Xћ2fcV>22GiG Nr`$ָasq 59Q=nT@F(2]JRfSxEq06_zKkQh m38F!x# e=NJC"&grfCJ BƘ(FVlSHW>b"&% J}f1o\Lz,;k>QH}o2?, >bolp4 rQ^4n3_}BL ȡ?S>0$YS+K[;#wo6ʬ-ȍyZZ64C^ɕ&Q-LӲV0_Z3X>&\7pJJ 5'vaJW2| tqc.sv5w] =Ԭ9Ђ_kCn_>MJBl&~D;C#ւX[ 0O[v<0Hٙj䒕"{`,2S7o:v$yJȻ79ˏ PIơH˰3:Mo Iχ>Ri{]t! *fbppSGoBXM%4ySe'ٞ u +A˔(ɷ0VA.%76ў$JInsVrI)ZG6 g'<նWKEo#\xrwr"qTKi!-~jG4ňZN %{bz^; %t=DZ? =g^x//fӅd+B6u3y%܁suZ/3wO坥Ws"-K҅O89zY+P\;ko0,a&Gv(E~>o10kڞͬ3z9 5"1$^WZ1eL#7;Q8/V'w};)adϩoWW)[#՞ٳYMPߥR=vml-IҚϡ͜0e°pSSYW!:샐3=$lIƯS#߃p`r2Uu1.d/!r5,_z?lЬm5`П0,܏0kmɷ󅾨xd3f0x`rq,_W)x`7F{>%"qR%^/$Fύ!q #Fosa7VANhGTA4ެED/zDosFwb}-C2JUAgz_|UO1:Q54ܬj,!z"=\E/ v'kz*Ff2cf()׫lf¬eѰuoO~ JzGx&2erfmvXbF 5pjWQ5 ݧܯ輽pI:g+akJQE,{Z^srlRCMQ o4PVjCqg`;4H;qzkhJaR{n";b;@\6(|2bfb ug>gobrOfxS:2Q/DL:.5}E_Bχ_t,ժ+lc2OcP5 –mHl"zi~U*p,&eޫ;)ޑೆ)0UUg:ʪ( N==n*r&"gJѤ0Rc9w8!ȠhʙRZK2vnƊ%`Kz+q"8|. kFCJ& Gi5Z[ܥ#v=Pd@|%QMƋR[(r j)r:A43wPk2b@UdEX.'鼁a 봘]:;~"5r_s\!\b16u k=.߿&~=X~ro6b!+@%+(VY-pNr#ܨwp*Po+Ffnr)bm$Bڪ5B 86K zQ [\6~jCKND/tD{ă]rxj!rZqbgY4U̔ẌH|Sefkz jp6gu=sԴ`Yvާ3`A UIG L@,O& &nqfީͲ]MƗ8{fK|5&j9k:MT7;t:lv{%3a:@Ǭb(ˋ2qJl{9+zrc4fH44];@m:p԰2;^TF Bؐbt;WD F*7?&} Q;1oL ɇxn0BgnA3,0"5Sft:`Wl,۷ &-oxa%DrR[4[ }T*|F1壖^i.ΤWA5D, FMqo, c46 W=ה]UYԓe[6 A9D«O;reW+`CPbUGLB3# KOA,ϏW~dF-8w]_ `M z?t?.Dq`!2Lu,oK3p ^% =c#b0qJZ?+đɽBrTN;3&?5w(2``5_Q畨.ޮLT$ A(BQ}ZP0PH*47X\V7g/²@C9`3{ Oʍ{F~  S M3D䄹Ely%FwIJAxOmt Jj~w ?Q>:;a *"ͶbE ѽH" ,S_V$ 놅 d> b1R\l1SD?Exk ܗŠ1iBBN1ݜ^:}i1vwE]wa֍4D]LI邑 $I/b ?˽V-Z^O R\^} ZecgM `8)zHEWxG]svÉe5NKޓSҿ%>ECI hC}8i_)2d )3Ιʕ3~˘m&D N2SD !Ҝ!Iz>HqhHU0"=,0;RyG:bڡOv>Ba1X~hTR[VɊ)j(|rlRHEܶ:=`Db#Jp@*V aW*֌dğ!ruZ U?w8 u&PWSah.b䴻mňBp[;ne8 uL<LVk PKpz٫t'6Bܝ QʧDi)᷉3" ҨzoZTLQBX6{]j*Gp`yR& GVk̈@vHo]U-n7waB irziq3F祝Z8.I'ѺM2Cn^ݥsI#C5%/jb\]wm41 P. B&~Dz} ɌLYudӈ=-j[!)un6pTBBvz'^medvVT ([E&DX1hNF {0S^ #}L7O lTUr#e1-&?װ.lNc^ݩ4J&mǮL!#2ܸ痩ɽLDB]m|:+Z!À+BӟW!gFK]պҥ#:G4 Vj-T2-Vixt'F+_'N3>Юw"&p[*5M傥,O`r髙(m=Xt8b)f8:Jo}s?DP[K8WM+-K~IF|zC8!nX5/GBt L3J:ѨI&TO]dsS,ȑahxI lY gh]IUh=>qA?['kˈ4xޗw}۳sBWT /.*| 2y^rŃ_TڙhB91V$;NS8t^ amGə/Y3E}LFMY[F):BjAD7&%*)X~y&*96ip)!iղ"G!Hr"#g]< ,yҸJ91OV*~[ F 9!uzQj}tIhةܣy;aQKqcmoT!tc0gZ%boȖ('1|A:Vk(-IY)e` {H4V( 9em744d1!26fzoKx=B5"ưo{$  i:"RѼDcbğ[iz,+s,xyh3{ a.s?|}~VqvMTy$m.I5Wh%ݷ-|<< []Mod(fLsT)w03p ״A-F: <2GH/*5w`ێh_߽.kLlxdC-LcְDd@'HSտ;膂VGGmx$DLd<F{Oڄ}v:iA|A~.`KI$&[Nc&Ń[Cw!91v*_ JNN'ŮJD #kphr#{g ߸~fHWZ%2 C*?"Fu"U {I #5Zى_-LDeK'p90d Jc LEzDų8!V3Y4pQQ*ZUsŅd K!uup{~,z+qH hܕ}&66k^B]~/+:l{[+G2CRX-=wRiZ Wփ~~.L n@ʘ*|j7SSlY[1WW ;,؈3q;rm|s-%."έ0-?f֋dpXC4j3o )/d~]DޕX"sphAq7WmrhUelYL #1]. -{hVu%񭀚f61U=ާt1 70 Zb}жV{VMtAN8ԬLfFZYC)3ϮU"GKg͇- H_FP.`Gdeq8Q񥰰C9=u.@ R r/!=ؿ~ӛe>}hj穐un9(5q<ܩlu *8wN Sšl~}l` vt9/]]J?Z">xrc=tڛuH 阶62u([!&{ vҙ|t2_ @CAAE{ tL6ODKX?`d^r K t /o}B6k: adUz~2G>L&R>$}˭7tG.%Eݞj#,zJF{eɡ4IZ Vj^2HRn^[=ˤ# ANpx)hfOzZk r1"i tZ&1}\*ݑgiYPKŴN5xT̝Օc zL% oe׻w•q>>-4(*_#wnWpeyXmg`pk[}_/ngQKYl̓  ?|e.Ɨo;LCB TYJs@s)hSR!x@"g<і[#-sbJ7А(Nf,ϽpZwc[ \mS`lqa'Ndzo hYi%pgLL˓uEG~)% rf1KP8<~ݼ"Y^1X-pBUJb> Ͳq]#߿CzG-g,MGD*j.ڭYTfR?KN6 *WKv EnpcXڵ~#9#zZ5%?}!/0{_ӁoӀ;.h.GõUvKd źpz/U4pP=bXGw~ I>"gCm6L) *]9ErzhByUhG$: I]'i68XZr[͇P?أ9omdw& Qd=S[Gʨ2Ȟށ:l:YOJ+`aCx'=hfl9Sumhp'ȥ,U= sx>rP[黂4/AY9d]ChcSU/gP槓}Si/1qAT ɽxG܏ju\:b2plR&N(b݀qp[ipD&NW'AD jk>(ł奐i]7iջ4m8LTKT9`E%=Te/ly U5zԶ#B2 _If*+< :񈕀Uދ^ksP؜;o.H9.k mϸ L }*`Y@jÊ'g}1lbxMl1ZV6xvҌ"nq#4˫RaGc}֔<8ddӡA<\4;M3QP=Za{]|P<+'Qcpc1KLkȮ]U݈\}Ž2*ѥg!:֕*%O,lXCP`njY9.?&HqR>9 YHlRmIߒg/sRvo4y*^+T G9GH[\j&Q:R49IZ?,0uXx!x`Huj hW@o%h;POJw,]Crya]T濘7෥s]b&6B!\:Ey '%|6xgCM!ŝ'S##|8rTH=TsB%T)9GV[8;yyD$_ߕ!Bܑ]1heڀ%U5Pq.F;&]ZrWJ|aQj&ya?bKlj%+ΗrFŖ17 Yee,@ݺac߇?׺ QLǭW+#zdz[5E (~@&Z$cYmEQc+_ "p{~=cjX4b$P!aXbzD7:G3Ռ)8&Uo΅nC_i`ۺF皬jxs?PR٣<>U5:[.&S74oU!q ؉I dC@ύ&̸`IYX {P4bZ[JgnxbhwQ86@3+3yԄp<'&MOM*`OS]֢4&E\ף[?6y q_f<@RkI煘עCJ0~@i\.DH?@!M߮w SuyE{n627F؇Go%浭/7=%zlKp{ T`povYfK @DzIͯPDF]!.(Co-zM'Zg<7, 2,kwVT6O׃ t֔M3'# .Gl D# WYЛ9b +k 2/@o$ #H0Ìde;Q>"w{G H8S6 cD 6ioF`^ 4ISc[ު8=;m, c%1=Ry&[) ؜ݻ pN"MЧ-jB=rr7 ](*XҼ ݄{$,YLijRLqCM!-2M72nC֦H)::t)beR7xcALPr bKߩcgN\ܻNi>O:2tֵpG!lp fe;=Cœ8sob,Xj/4{Ic/'F;ڳM<#q_!SU)@ĮžJ/3䒯 Z FEt Nz&qWb"~Ds|·hEHj u :R^ZZEkoON }yؽ'#&8AK~R[K\,N ~@)8^;cu 7lVȐ6~8k2+2D*;u$5e:۰}R7M)7%Hq~>>Ρ-2D]g5*7")pRϗ gwFֱVpFJۑO ][WQq0[1Cb[Gʽf$6FO,dWEQB95JgB ćB#H/.Hl?H\2n~0t_)7Vi +ɉQ].m-qRe# .1,͢m[&Z0y m_yy,C vY0E,QH hDX9h1Jmm۞'zq`OG7} 1&Sku,X")#)D59y LnZ'ZZۣ 0[@vqhɛ9/[ W8n_/Hs ũ(0cnǁY #LIٜVͳk}i>hZ~pMlZ,mGj,f!TJPÀ-.P U _$(-sjcTCՃy|g3ȽSbmA꺯 pnJA`x`YB+l• dRsNbN&X1 @~|Uz9]%˃V!0٭mb0DZ)YDҳk4{(w0"v_ [ 9ttWֿBic׫(`He{H\MvZcf>h `'[/h5I: ^ס3Z݇hWT*7;BIu6m jk+tA 7 i2V4+ D Qu`ùCұh=KZ8M)\3Z<[rx9|:=@z~*ESJj W8|ħۄ KoAJg69g"B y`rb; ʟsB_UNAT{eX"G72ñ vkj\gafydXňV+PR;UGFYS+؉u=`~pfl/3r6Gb@C;vV\zf+cπ`"V"ɱ? ֹgi9Y[M~A$?B^by*<2A{ 7`7 z(1MkCu:bxm)@$|kEԈ[ ݠ 3=bm5ڽ?")XNN:HF_1L[G6@:bp0jiR7 {~HBZ*͉CB^1/Qcg]&Ifخځl{snWޡ^r֋*=LD?*%^HT'43$7't/i>At,>,g{Tw<~f({r?G$|/15O 7#GRW[eP=f WwlJ Nlu Nj6o ̑/#~ߌVu8(0ǁE0ϑ.,%E6T O6iXzU@'0o]XkjqO3dE-)į 'Y}I`=a?R5tZ ԭ> O@=V3 N d1b"T:}݅CHaba38zlHհġZ&]COUw JPRKQ lVJI[T^򾦟mCq]:MRF`!wb)1AVulfU?Hp7]őw/%*5\0GlhǕؘmdW1lbJTO$= HF]OYO8;V|s;.}P&҉|a #|ioG-92l'{:G2*i+ԓP|ᯇ(E) qMrꛅ jbY3O)P1/]aN=dH7Pj;K /xUTg;N;9Zm #h dJYl>ٵeEOVľM\ˍuhTt>#tRk1ڿ||"~cEu\oyyyWfpm6 SUptGZ>N";C<4_%TI;.0bH aw;ox.Qxi7 7q`,-1> =u'VLg"3Wd,KȖ+C)yQ|+Cބ^J#GG*]t(!i:C[uAL)Zlo rs$V Gkgm$L1@nX5]lNyMs( 9\ ŞZb( @MWizL ZcfmUҿَW'%4NVy` 8w>0Qn&riJ(X2C 1Rwf$Wx?\?==#/St@vo͖SBi?fcUI~A@xGb.n03V~(nfzp"~]W  FA?O{\8U .⊪{i>a TyˤӍd>E&&JgU^ >24#."=WlsV>ܱhtw=ATO ,.=@R,֩*#Pr60lLa;; \m]/I:PBFulx 1Y/q>zy!^)%*#`<]1mjQa_Uŀӏ65dT"~b;++ZzXфF*FPe]i_ɤIEJmc5l]{ \XoHJ;|.1n 6ۢAYIQH"w-dv<9I`K#O  HKkAxVv!$0#,"O:ϥ`-#&$t޽ ^5uđ=Σ3 &t84=I:7]bH*oo'I>aخoxѳִXyt4ZU5/h+oDrCo lo!p׌plx)&rZJrfo@=XPՃt<eKR7$y$/b sM vSR&WUSڗq㱲09Pp3EƈOE4vQ"V+&tA)̳v &ȸ!*)06*%b|gX4;]z:FPoC`\?:M/[Hqy>; 9 Ps8J Țgst(rY$@2Ф\w<櫽3IYJ[ ]}ӽH@9W{$KɓgDV寧Hm.E'va@VM̱ǭҝX,/Sz~&OBzpsW~%3.F?^aYJ Rdk1:)˔ %nq1iNbkAh}ڲbÚ-6Ru1Gc5k @c<9P`?L^Fh , JߢQ*S$M3EN/ +D%ٛ⚾S j3;i~!\ærq\W^aˠTLځW֜1 Ur R'E;otSWӂ錻Hn:pJLh]H kL,\Ằ̭4KN9HBL| a`T֬Lw9>ڎ^}ƭ4g17z\c e~[E86 D!6iyքAcKNY)[)CT68mwQn_޾26?2(}}7w_J2@~=F}6[%; foH+MB.ΜLܽ$[AKIg̘10-G$-)$Ōg>a>YւcXq!TҩbTj29a0Xwtr] JHqt\_v1VT;2<$Byv75e0>fauJr(TBT؛[67@:0ӔFkh uBȤn;xHd&PT..:"fl1=4#="'zt:1ԉЪh*Q&8Uxzꫲƪ&??ʘ$mV iP57/b =&)Yᄾ`9: ram{|2!Rb$JLo@;L7d=8PB _'𻭫Ά%pP p{3܅C&cNB,N:]DoO)!W+rRS̱H{1Nۿ(%Oy/;tL(z`A6 >+ݟ}n@jP.%(/iU|'5+hk^Vc=v~}A`Պӟ>L 9mo7G?84{@CGA{H A_"P%ewQuqI ݯtwJ^T3舼ݒcIdiG; 3Z)*5 =o`ަf!34zKǦc - ug )~s ӣl.-<(C+;dRB 㾮!@Zl6GQˁFMF\|3?Ee/ d9/gNNwaJPr'H qt0p3״ jQݑqJzzՑ)HpGkBVcI(3ē%,u-2rŽ", $߭T P}I!Lɦo=^U\P9Vv?e|G_<eeWY .CMGqt= G ;Ům#恧 m!m3z:KQv8X䄊3pá9몇t/ܽBq@9U{pCOn;0ӓ(\ffSww B]WZ؛+b:uPs *t 9tJU񿴖hأo{9Aǹ`':&/(~#Ao2F-<,Rj'+=R#*X2`\' s|8ͭjg>OLkxcmc5Ym!OL(Pשى\~8H 9r`Easo~S t8k#%lYm*@*׫~MQи0q4/#X*c$s5fݔފŁ=ЦV2n(?AZQt2,@dp6z1"+Ѕ #C?9*NV,g9YKJœw+|)nFcq^^98^rQ 0/?aZ)[1gfXE3PO=Քg+[ނx;9]\&W #T?^$!׹j;Vu~04[jr,\|IF\LJ3LO=|'TP&>.xjjlΞ[f)@3W*ѽ17kimOɷ󟝒lEȀCR; my,l=Ee`62;5j]ZAg)w66γX&?7Mzk2߀aVxZ(M{aEOuINU30ΉzeI QWħa;6Unw۟.8.͠$nǹ)`ёW/^ft[;  ")IVIaQ#:(n.DH"MYtyvⱰR=ęyXkMwqA}˟ <Ƣ@ׁOq;pj~)$,2dbvn5ڋ]w]x)Fcĝ\Mhg'$ʫcz)q,ŒS!rʱL C 6< hLVzɶ?tleGfta&Sa'r5W [V+{rȽ<gy82*Qp!^!t8 &KATS_m2"B ʆ1+1VMX萊co’ D ݛ 4z>iUsa3 M=ꍤaܮ/+SS̸rѧKrn \SOW u9)$lܠIfDkzp0==5(}WFՓ}P }auTJV&3i\Yn1nG{tjHFQ3ە؍tT}Sp@YBx|/֢,jE:Ic\(zc$xia(*{g1e'CƸOpP67g0sT 5>,G\bg^*uLj+eϸ-Ih_SV׽cϳhI.?h*X"\Lӂk 2/n-vNJ ٚR mp!i*nde9lYL'`U{LcAp@z9G.G*[̹{irL*f1G#v"a9 _uIDaю#>8ηشh.釽B.v b̰GƣQ@2H`hd~k.~&Ct`'bF!ۃz,XsկV8:|]4>q/{[2Sj-.@*&neȨd:}Y|=䎃`՝ƍ30H<Ҭ^O3%78߻[2h+eÿA_眕Z5x*]֗_ؠCuIʛ+?Ma8^9d]wW>& 9_¡W{ z PȳpzـTm[ Pɇ+u;bgvbڕSV *9H_7Q8,JCX&K!`-4Nh|HPe筳 3A-bp+N,KV&.;jDwB~itzM(q@KtINAgoϭC,?6g17y:Ku;g;D?̥3Ogb/2 w"X,"ݨ`_,B,A{繇ap)GS[[$/0GaMEOA9@nV$T<̵/R0.q zM#^%=gYUH\$`,h0 GsiYj#p`1qjpS $w l 5wòlAt5-4nf)8ⱔtTkh$Wx|ݼ 7\?99Z =l/?FNYhRwՔI=' U~Cg2z$`FAŚXΜD'`N=p,_@\f @̬c=>HQ|EbB.Jm~Ukp^:[P!܂@glߗQ2fVo .Z3U 2ʼnDtFEvnt]^WjyhB }vνdw|.~2$e| Mx7J yQ;4>Ϫ:&2;L͏&ٸ/ Ȳ@mhce2e21 2ru?/)=2M4, W:xEdc+8:,3hy dr ٮ~9U>tXX"^zpί 6PAX"++Q~3#pl2 ^O_!R'w~ߢ(H|(ڥ:2rSKuXX~=bInA>(2:/fĵLH)rIXGqG?ܖ>olDC:*4m_?6WcD2,^LwWy~krr8etMV0 Eu5o^@TcxI ]K|/ To|,4L}ܐT2>l1/\iR5'H񁶮pu ¼^McRl~ou˥|U*2Vn8+q ~3xo,CGVuż1\DicĥFo?Pk3ARI+K˭DYXj Dt`j(Zo#~=[JJ^ aP~>_QLK w8-)l xǁ~(亠{C*G?{Mr(>s o%β:OP tI8q轠Mבj'=iz+8ݦ~-atX,_J3]G_Lug< ` 66;&U 7;ͻFPx}0( U W]Gمԇ ̓z -BWPzvJKtEȊAUՒՑ MwJ Ī*ICLv5d,Gc\\裦Y )ɓPI9U+1Ɵ6c 寤 R5gMٚ/N>ܲ s#cg7Y[ >/񭞽t2݇/K& xљ2^í9Μu7;i*(p1plPjpyԷZ߱C"u 5W~<'+zWIS&rW~/fMAJ 9[73o!L!Gd[#/Yt~Ai<ۏL; NIM8bUn;1U9;\]na~YU5;wZ|mQ-N.iH|kB儶NI=?/:\c 2XrD T08)8}J^SDN srIŇFq2)]̽J%ܤ wb;駋ؓ"lrAO0!K20N ٢viYdHU3+8,_ti>¬!.jt@瘅ePEOCg0S^=hz93EEݬ{;'9klodRdǥxcKU&mb@B ]ZιQM7eb %_QXRVe[c[]c3䠯<h4M7"Ѳa: ;\.ToS`~qF[ @ Ѿ'N4`y^?PvG-R#E}He[xG\$< lD217ZHuH۷R">3Dqrdf ^;O$)wX?E6{=͞,K)/v&.ؓU}8R E=,C/ #r`ahkDŊ#Uc.9χ ɋ,ۣ1haTzM 7%vDv=>eQѠܼ(8:j~yӤ%`E jaLpCJ~8cFo&Ń>:HvZg:$>[}4y²d-}(6 I_E2j P(gd:-G6B?/PZ]:}Cz'kJΟB'doȲZ+T6sۀ nf A8l_BTZg1O婸43FWi9w:ӽR{o'/_3 !>O#< = TD/9{F ~fsj'r? H8!^pfD>b3jq d)J_TmF% Y*Nӥq*M$@xt@F8p;@M-zX%b4_=t&>鐺8͹YaT^R$EHGǿT3.ex(L_8^52:l u3:$2~]6t6iwY\f i9Y.7x+@lG hHUR ߠ}]Hd"b%qzE5x ؆?;_ĤnKQq ^y3&h# ޴X/q[ 豠z%pBPg=z *;ea*y#ԧ/(o{,l *Y5m30u^zti 3xXy.@;TedA ?:2m'&cifHXA΂Lr,uƣZnW$6+/K3}ExEAbt>5#/1gKZwG{Jր@$E禗(Zp ྼn*;acEk.Q8;O- Q7\q8m*Q^5@LBM wAs4GZeH&3*'XP8C)%q 5D;ti:uOK9Lׄ{wOFN>GGq>.:p"g-v/L_^fS;#J"KٞRz{_:U'@'!~zcH(D'[ߙj,FIVO>|CC&zxEZY4f- SX9$MB xvn6-yYK=GN] ʹ 7tr7l(tҠXqu#;Ⴍ/twԫȠ O uQ2Un:=ݭ0?mE{Z&HOa,7>iƐL |X~`!C@uk L"ZcFUfi6dJWWMb:x, !mvZPiY<$Q1C=VLGYąhibB#rS`kL*>4p)8SOs6/_xtlGbgg݊BZ)Ҩ:y6?RD4]ﳱ-iwF_ .KK kPvOe !3* f1lS뇴YTn:$ =[xо- xZ(O,w ,FǾCwC. d@X̑2,j|^ltٽLh+uKB|;Hh}qJ|WӔRd$&Ԣ#(b ycd=E6"΄֓ K:_p E dL젴gKgoG%-|yXpiu:VWI?Fբ  Yu`1J.#|ѓkO _&^E[̺/ # }|b t^\V;AU KG!o3T)F/ hJm)bNb1.g'53Z.cI/D(ljhiCx|8|ڳWAkck^%"e>1|"{ih Q¹grDq*)3ϟsPhhaF RǾ-CXs${UoE&dw{=xf@qjQ63}&G{yX—*">9mվ[ kE;ݗCaL[,/L*psJ>E<6"j7ut5//>u~Ï3r"R^dԪ(m6QM&'$hÏ gɷU+mTuy DJ)Js=5RѼl"rUxXӃy 'kjKC&D3j71lmzEZ&u)/a(̐gܡzO Ӌw =LN''O|t“nGZs|Aٜ7W1c%ww4ݎucst"2w!J\﹇XW`eDˋ !a [g"\=Ȩknw]6X.by6H f-` e]׬|S+XѡH2ԊeU7?=W /=&" }2dR_xlY&KD6k +"0ܼ\738O˱hsprrB uQT{XC^bG'Хj.E܁S%{EMC7צ90&EC& ɞormG (K#2,hÀ*ي2HwlCT-cL zҎ¥Ӊ0مU22 5|+ oGqc m-G׶3M/0Ow"q>|tr6:5TcS`Gqy/Ш>g*KF_-]7Zt@um^v5g58$i!VUoAA}&:եǽ']̈aD9KedO Y> )ٳPi[0:!<$@̱OYK>u>X^ڲ4F1oXViS1x8I.JOlj%6! ]ڔn[BZED&c2d`%**4tq|/qjb{Hj-IXi;~ʆ"bFĭ=:UBGԙ|ܭ/`+ L&ׂO祈LCvoR3kwg77d| ٺ zR; }*I,kNa散߇!M:pQPh$V(1~A5 !AS_UeS+ \8g@EKZe χI*jb4ӆKH#M/#6[9awR"WA4a?x>d1D*qZ2 +۬h,$J5P'sz*#xۆIR*lia xI_':k}zzC1[Jޡ-^*EU#32 bʻI޸✜/@,;PM1t@;f( _^Oåi=Yp7ecbڤ! 蠵SY 3ip@ʏ #d2]0YnCS[+'Mf1?Ll^(maO3t_Wl~>/_A@A6U\i?z YXo-8WL~#1c %gGaR~cmʬ!-Dsޥ}bOj$6gk~P-sd~aPs(u`(99VThX}ڜvz}Ⅱu!U  `Y處mPUxNDNcm? 35ft\r^kNJP#C5m&Ek2j_&FkEWG3ub+p$9Nob -JGCCdno0(#oZ1iVɭ 7J5Q5 źYsiBIVCI(Y Q3imTlM0C.IeB8iN=FXJ8bmJƞE9=cs| F ":^dׯ ,d,$=73ZDHC24E14~A׊Y*0NƋݖ QAXmZEJwnYHa:U8B5l簥eR(rBp ae?Yq޴6GbUz9|_󏻽|xSU!Ukh>'2 \'o(nw,x]«A}bw|q̡fAS{Le>7֛x) mgGș N)RyT䎊LNt $guJOJ h{)/"&|<^GÝjI]=p'zwkB9gjrpK|B=yǂU p6 !nA]*/60 ?P҆&?`ݾ Kg:k9]ES{5[ו)& Eirԓ!|.E7hS@ R⺠i smgkPߎBypY>g}5A)zt>uƸUZu!bHk5sfJ7u-mtDШ㪔N0P͍z2_13AE7@d4^>{zbn1\{(wtbIyWsPB)onv~&L>n_%C}&t'i^4z$fA+~ez.p+NPܘP,ּ/N؆ 7ǃF7P "'8)Z> ׊&/`MS:Lh$3vbENj"%txnn s08kwP^MZӪ)Os^ ?LL{qY.kn4h[4ơ$Ș/h)]+Vp?ﴲ$ kQ#Z;Ɍ "r&hk.~o ֘3uXfaԣPI?WT!+oeԋvyjoV"}U0¸'YLzz G'!y̎''FXWLC(u C¦2 DfeFKrWV(r]ڬݜJEj ޹$ut8wRy1U7F -/I0PUh,6/P>1!w$j%_GY&k>`i1T)|>B \zdt[jd@{g&3Gd] 밅u_0u/g7+Y UNVNs_jsͩߵ}f35v3 GK?_͔Ϙط?A ĠN ]92@{;d1a=~v\'ɷX ?DS?ݘA~D28:E^O7zkӉbTdݚ&vqSk<.u ڸ~a6n2yɑ:gM-/m9//6,P7U7ۻG@USnWўrnr*/7,CBCQT׉ @w`@2&ݽ({Nێz g)T C]le|7LfMO*ᦊ%,@4H]3}jS$ iS Q0mNBB-3c,cڱnGH4w=~ ;<чh Vzt7Xv|`d{\vvW!&p . p)ʄDZ`omrbx녿clr!{jR׏XϡJ=6IP a,t|H; blc?3)&,ZKw_8zS2ю@%F'v On0Smuhpjfv*VK6ݡ[/4}|uXdtoP)κ EւEyԅ}tO%śp4|эf]o=?k'QAɞ5|y7le}'˗ X# (4m5ރ?whUqj[j$eeO-p&Ѳs8:36cϙ&d9B3B[[e^^ؑ<6  %j^::cmy{l/ C+E{9\YRsBA6&G94HىAMi-3ga+%"ZnX;Ne 4ԝOs h0I!!MnSW T\uÛ< Ei(i"u5ypGG|O5"~|i .5 s ['͎1iN2(h6մd6GoԨ:󥱝A/FO{V0 M gC<: ` A1JEY!z/rS XgǔU C5>ĻOKjC.%dڻxAݝ̮w!%״qahn1\0k b"Wв}c>囖 Eko1E.NFx7koS^ۡ㑴!M=z˒#42Z<6GW{#NM6ѭf3J F[Cd }~o!ȩdfhԈV L6Oq/? e`x7 K+/c)%) ,x|Cmg0KH]4-^i֨Ǹʃ-@iݿ(HYә&}lBR˕~sWple;֫2;*$h c͑#G|2Se!:VFkh[C\2PuƸ`?Z}|WD=0eqm'I7 L-OR<1g7'X4#1(?ԫz47EuPңS=fĶR(r#OqPnf֝q& l4f\ ƽw;KdR]CTlMAc3SFTd4BcF>$%#;|uDxKs(!JrJ5O}x0 nY}egy^+$>3DpVwj뭸ƀ/5w N혅} -C% p۴AkPz=ɥ`@r=28Fdo1a/e7 [ŠqF-DZivk9MH.3./ ;ύ̸3q F@l +7qK}3-(e#u{,n c1\eHG%xv*71,kh 6>ʝ)Ȫ2}6[^`:PE bf50k_.2}?-\(Qdʷ,{.0WrEm'-B!{px!:k+Bz dy~)|Ih8[#ba'5o(M1RLWG3oepMIwޛ,Κma k|X,UZsj-aSo!c8!ju<,#{^;d\_o}DQ[^b*{!ݶ4?+48E'P;NoUu^`r-Jz ,Z$?BkKJLh||jD4T!tݛ&8'nDdW&9qy_k>_KљKo䶥=0lE'ʶ.y4$EO*CO J!&h{+&pXbL *M/_> !18xP(959 jfVV놶醎a3H=Ǟ_$xzhavaeˆͭP fa"/RهXh$<KߠȄVZQt'YVMNZO-Xz||Tl w$evԵR+;ѓ6p~9gEGėh䮂^u礰]";%7H+ں? ߿+qcϧ{x${lR ۶Il@6XdgUt&K3Ÿ ݠh:.A49]@ÒݠEjZHRKge{LFQP~JN=4Gmi_𣚙ȷo‡*B`,lB C+^LZOBՊTTP5quY=9*Rf#c]?OZiH<ʝZcgêM"M$LYk8^&vT#xXD]OYƌoBEϋ.ۚL^ \bkQn&UoqOT4g@ qVps ?׶2<;\]%&fz&- IG/aV̌1*܁5D]9hNm<F2ߧn_5/ k w!O ,;W{vM[s}&4$IVW{%@Q(@cqTHVGcB4 \y`h"njz+;|g5ES4rLFAj,akV΂v"7E6s38e+"d'&̼lxÆ}g;Dޤ 7'z+1}WHU6(]wOfNX)3bcߪ74g`&6G-g٭;8bj+''HBKyjω*ID9!~xUP%`ԏIj^tϧoxs$/K7K2J{!qS^+.RШZ ).~|zRJΧU\6r8q \8U⃟vʭ>TUӭ$?ՠ.LJR\Z/9PGMUE&gFwJN2֡ZD N 6:_0׉vW:#pg:&3&TKk:gpOMDj"n'(PA$ jMDHҍvtdGSZsJ`+:Ld/Ս]` YjB1t3hp[O irN@6RŁzTW mA⟷*k{dK9MuO'~H&o8p!4$nP}Yݩ9%? \vv*>0 Myj n xOv6' _VqouFgv: 85W),=\Ƕ!זi8)kDODzw%xIk+|!nBT$nBF aP*AECC1//3'N>֦UvMX`)GW k^KnEIldgz2n2XVW.GYD~G93UD1ͽhv"V[Hĉ ']vnu8iAd^$#F><~oUjnqVf%L{c'=ZU0ӳ 2:" ?ryz;MU?e`N-t'kV`Gb_e6WoBhvlqj4x>Zl u ې9̺Jʶ+xTu:g }@zFQtTꇊ| i~#^QY7*NycO.Y ^ a3<'8CK߷ԔcU^Ri!? L+rjK<ALxP|r$-$nOx4x > "ukkݞhi2mo ښR3}goa:u|-i YDqJ/pyBqA0 RP4I@"&MKq$erf.ܰhShTwKB'd +?ceZU'hobj " T6inƅas33V4 NP^ Dgق݆J2W2Hdz6 qUN[]RzMfZ[sXNtoV6-GILWqQ8"e( J>ڪM80<8 GA`k'QA z? Í$`]Y?u. >ϴ'LB~.(掮an4sftRFaAX(j16cƀʵ'q\=9C*m4?d/ v.Z]b&c@'""{ 0%٤x8qCkDZL fE>FRI~< &G9"Y SͼtN!^*iz;cFEmMQޭcrZ%&ͧ1z: Ž;3h *"7mku01 ^QG'xŽ!k8PXNhALc0GqP0/\vWw2-8} sniܸ!qu~R! -b;Lu+;^L#~NZ{F馀)c}=j3'YD6Eb*;e|NZ;5eIe[%96iR]0o%Pơ~|C#gߎ>w$IfW'lr.  S bD˱)~PvGJ 0 ._*V2ouf"Q'"w e6pov41Ғ䘷63h/\i&[ܕ K V7 G0^5q|ƽ_7&8` sf]-ˡk}ޢw.o~B^.~de@/a;\Ѫ{,z~I!ٌ+=/c"%pv;]v11'ʭy񚬅;cB(1tMY6ki#ro'fHz[˱ZzQ4 ",QLY?9vQh+%4_Ӑ}5F̭e`m9|ͻ{ і5A{j=%a,?;zt0N)iZZ[=PVVŽmOrtNPcBk*Ǜ)K^ņ+a"]GSiރ;]fp65@@KК+xQ#%3ˀ|Rt'%H\_9-5E8ڏOO2`N+5ŗbyaeR~(׾p5ܢz[3Θvߊ2Ĭ'MI4x$Rj~Z)4+~(^  TN'sp`k_!;cA%rƣ1_尔Y@T|^:[9‚#Wۃf(n-C3o'\Lt Æ~?! )ÉBY3Q)~.Vv,@؇U#e *4(Gd pK1xjOs.lX`D|Gޗo⡦!{K{OĮVTp4~Em!*{o.4'Ɣ:c4֜k8Nj~`8ecq gÊC T:"G/"ut,ΒJ{EfGF<\/I] D&Bһ$ԬVx< ȣG)+8\UKIym.؏X-&wÐ%%L̔6f"mj)hr:4 4oYK U]&=o˪OB="DL[*. Z-ڏe]D_ GņD(, %LJ"iC{u89=PzWlyRԈ}y=, [(M!df[+ /,$\gY=[;iCb?.QaZ=*3s'NڊːXa4k8sj Yg Gh^O[YE"{U|pkn n4Q`N`I v|;w6U+qa\%Oi|LD7kwYڗ4hPlh ٚ2m+ЋO_8u}``fghg2[irSmhA?>@3uC WvSgeU]5}N*,{9w|@Y°&>OB YfQ W^Q;sAp#Dzґy+ {3|nX :Ӎ. yX^?XjYVZRcZ&nOr"7T`קL) /+gyd[;*+I¢8;. ,ov[2C~|V7 8%r^q',Ӿj+,܁81(渓0?'DMZ?q9NR2UFZ>,/mڙvIޘHDI*UDRdžgk~nkQ>^XxV\ RTc]9XGWP{$(rE63^0a;}l-Om6!G,^J^A,#.U W+ɁZX.6ηjgnLٍw9̢ocܼ1ׯ"f9\D]HŇ 1DF~w C6CGŁZ3fE1ң O4^غ2{ Ȇb^:]hHX +W>L4ys86Zj/9[mJE4~c`#'Ȁ1kKK  y|k~ˡ@!2Le!4wHNyJ8 NMO;\[tz9V/;O^1n?sI. 6`F!}W֛cM ]xX6- -A|(-&Gj,Lg\x QzUf~ 8hY8,IL|sMs͹P>Fh'a41\>TFZ^"KVV.5b͘4QJRMɅ6U{XF0_y."rIlA?]R"sӻR&v ]>R $F& uBpt߲h5d*D3yQftE`t2#R?HciVa&"3\_)aw5k܇R4(Ohr5sPQP}e~7hي~m.[42h+jK]Seo2=CR" _n[nd{yOO;xun Sη3 4 ,⦢-&w(-UlHGd&3ğɞ™|\o PkVλgq>( 0qy5\< wΚ'LU]i(~7e=O aa)͛FZΐi"#'#ݚ3SCH} +#M TC-5.7+cKUorV-x6N8bpO2}i|n}'s(_7*7:˓l%{=S$;3%,A'd`ƹL #+tws1X-"71Ҡ_n괁>W'AG]A 'hX{Ŀ4 Ǚ)K,-8B%M"1DHEv\c=$QZထoSfO%!~Ol sv n ael27?"$+‡g$r1kUOY]?M lLΩ1be.==;V[o9{ƿ'yF9~J6ͩ-;DqE9ٺ8-*VÖ']QmR-!X/E/oP?.O*R̮ 72., p知xd9b4xlۦ*N[]7v ?/WxmFWm,4*@ pTfwSCKeLB|#2T5U3!F5v/;^(!OBYh?Z#}7).啗ui!s,Mw^Zq/x^KQTI+(Vb{Yd NN4ERm*񻯱Y{u'y k,LRE3. W(ӼC$3[yIĺ[ъs&@Ф104¦W1<1XSA^)PS|쉇47AO`H\Wm?)j]z\\ ͌CkHwƈQbrv,/k J]hX+}S#E({%&Zd}Pu.Fmo"gwt: ١(fTҴoʃeY}Cm%mBre#] sԽ,N2=Λ1e|i0F'uAf 4#2; PzȈG],Bp\ApB4WjW) G*d7iQD@^y}D;Zɫu6gEWD7_=M;m?S+_893jqeE*N5R+R¨KbXm92"Gj9̌K?#212~?L EN: jujh<o[?Ԓg>LN\Zm .$Jprz^>Ň5]Yš-u!tF>{! &t>[)A \\,ؐ[?/Q{)saUio}0ga`6Xo@9Z%@oFPo y(,qpq6/>UB Nbuu(Hj$ 71ʃJ gYU2kuYԲ3P>9PGŬf]q.sbGt42^qpKKOu!SUt]9%N MK .xe;fWnz5}HMְ9?gq}65+h6ΒW8,'u[p6E ^J{)b㠽C0o-L0b: :FPɫt3LvyoJ< zӣڇI0oiuK ӾtQ-!ːkngELLh^N0j`SbɫOmN4/8APDrvMaˤFSkX"|7oz²^*hjorCzhnu\VwАܹZ )BpSy5}jZлJ%|v rg _s`L0 c'C$2fS6Ii Mw(maxeǟky}h*DlHE'0HH ]*.xȄ ֗йU}݀ "~;N u%wdN1ϒ. zs\brOIKxY { NܻR]3[b:R-3ʻx\B颃e`d ^+T#ESarOX_Ψs%;'FwbꭳVWފkh|J4Wv|>tg+$%".¸u<@e@UQ*#q}?PšCBF >54Tk#k¶^kNZpH<"vzþk/a־PЁ/qKߋA~1Վ9*w ND:?p9*wos '^HaLBn%޴X}f{"D?xXb6z2O3B&WqNZ>{jeݽE]+n"fϥ J">;lVljjx"]S;?f gEl;OdW3WVtMZ8mNpSU<c:!!vC'KM(+…%7cq-nb8 `~꤉a5A?:'Dk$+sjfB0zt16Hôo$aҐRJ8_~K;Q)d p#ƆYaEǥO 2M8l*ċU,lK&E7/>_(2 앾6+l CW.̱[9]iw=Zpz^1d`U.i+i'+,;QMQ7g;C=a÷3Č6ZX/a3 TsB+YY%RHVLǃ=5$\Ƙe8R; qd<@= /Uei4ov:knλv:F MiO0&tC W_LzKv9E7ͦpW~pqϤ|Z%jHq6 d~jd0a]ȏn#d0G:'Y,ظ(Je;6_%{sS{v}qc9FNֿOQYkKFC79k6CaQDs1h^E IMܺ>Kn{.N7:cv)0j~Ԁh0ó}Gy06~т7 c1p{Go(fCV`WzJ [Ŷ&UaBZv7:GlQw[j-V^i;g,ΆE-. V@x %Sh"tI>AΉ1vȦ|+yp>+uռZ&jD?E=t{)o[}_;JK6Ms)d^fkZځjœJm@o|9½?*oVcX6@#ԬWU$I^尚.L鵬ޮ(؉`PsA^\R+0_ X>t|^zk~V3JbJIB?}e COצ9Ůj^zkv9ӵkF3.#7eMŖп@MXU8`)VKa " AdȚM"`Q$9ޘ0.S;ؕځG*@ʺ9q']v:(iSZyޭ(!l_4.ce !@UO)w Hdoo؁qW>@Üe&3_떚5sNxeH9=0)ovH*Mal/hKgG|슟:wza[%w^үO͒ Js'WFgX2kț1U`Ϡ-*b^D.PC[!aРt_@@QBP@+祫ۡƬ1:093.-/z%<5!\%%EkڬvR_m~}3`CJ$npRtLw57ot)?g憩_= 5 bM,9^*w%|"uQ֤#溍slO)ftW.~lFIW5A)G%\6^5ƭiG Y0 EoӚc>p/(BuײC}`8]IyZ iT9JޙCV%7tOCJRWFpN8 uf~2%m]%f ^}ozN8SDښrj_OdʚE *!|v^ٵ/r½yf2Г-V,x*!\oQJd4böT;mfTFĄ &,B@IiHsPXN0׀ 9U{0 mv^Pɠ@H@# gad6᠝/TSՅΥBqu5/-kx/vLnE6>װ7Mf g@$Iټ|zz0HQ3Ov'6zmly 'WAJӥ-S[QI@J]F5\]v<:``k 昰de(lZ'7V3?r0:h0 URN6 ymvm5ǚ[סRM\ 4X_jRrqIkkG ؄ ~0o:㥙4]S4鮯] жL !N7up4kK(oʻ }[-*!tnUNŕA(,=C"6&爡xi]BQYzR_GPtrIބ:-USp V340fetk复K_ZG,6}^Br$R ]kH$ k.I _J%FImw#m-/[z.ŻKܭApys8&$G*8Θ.FKN0MA/q*NFkNɛoث^m"@ @v[Av-GO"q D\JXLTC'u3r4%Է.&``2|#`I)lgi|!]YbYJPRB[v_GbJe-AAױX4(疃c =&VǕ@r}ZknՕԒhZȘݠ{+m5r9A;fW;Xk u TizuYHnG`YL</>vwN TskYfk l>w=]|ҺY9f7L7qifQ~j[m?{AJr-:hPڲ~u=3 ta s<<+zZJh|IaUC7]cx_R8Kf24$1Jqĥ#3xSp_~Q4ko\ME2 k'đ0tdzN__\gw@Fx tYxǁ%s]l7p Dxq"_( s J$n-5*{@c7^9y,˼4oZ8s=ɂW'[nUL\ yíMyi1~̰#6kJobzq=͵̋ij?-lf,-u1-1}ȝ!ϜzQr06Iy{@ >Vڥ@蔲Wgy΁-:_LBcI>tC4#_K;eT-) q ۪Tl0-2/`CQ淝KXE spV6-k༯t݅!0,LcS:+ vQyƛ,y.w2و$ NxoL@'f/X+8xh\eMC\Kw{l3݃BeӥR)(_ɕRd8Ai@/Xu$+~$ 7qrLweRV*ZR`+XghHB?|f_=kCcQG8NyEc\ϻ$Hfe` kZO{&L@>d\"8y)%{$ar8RRo|9Y&OY8hh0ޱxV+4,IY+EԔﵥ^MI8q~XP`5-lvm3O_u=AAM(\jc}sv%$ lY@~P7_Jo$F];0AB?:l) t{v P2Ib Mi`m}fZkPݰ:Y* %b*zI OX{*gIa }_X~a2=ѣ~aHn?db"Uo3n<"^Fuo^!"`!iL M)&vTX.wDE^K.*g7Ez#='կqy*;;A.]F8H,EZsw$ [DHiC*1MCEI٧$T,xz nyCtֻ@^_Z|psאP}uF8S8FJ$`yiL֒_)TlWԕqfd^&NU;yN9[&ȔKE#:̚'ʢwO'BR IW :j`K A Q7u ^K|t9/QÞ- ߭p=dwcD;?ƾP^*܍2+W[ȇvj;+)QHϗxuN}B:>U^BA[%\,G `m5x֑iV`8 Xϥ^2K^UM);/j/ \L9]r uͺ+ݖb5F#K12^L" |dv0l8SZ}z6s )Wz8IO ci$фuz%q1a8ع( x]XRΐ^[r|>j:\ ^ӏÃ&O`oc"\(`̕HWӱV,Q>,vේ#:b'Vnݠ7t`VvF>%L`zM 3wY&Kg.D" >޼tN[[V>_aFU7p>A~Ő M:X+iN%LD+jqJX~_\  Zc )H_n` $o?ń÷5[n8>v2>>6?ʯ)1; %xE:W>.l{-v bC<;2FvgDo`Yɒ-"n:k[s l>z]F0b^mm9])i,%sUVfq$olFW9àx| KߓKr8XKt4hcK=ʷc( A]>n[-_֏&4ݯ`HFv{AsM 4TċtN4K oF5dޮ7TW  xF g{G+]5EX&m)kej[LnRá% Ut@ z8BC`[ˠֲ>B^.xt5|D6fǝv[2pli ְv[[,1 dDhGvd)_LEtŚӈ&{QzsB Hn,2X'#+f9|u[M@.r֍UBWY.-3fy4uESu> "db4$Mr)3bWnaZg||&[UVxhqA]Om+2=S֧ۛ޷[#K[R|o~~!O :dVF"-zU*T#V^]S48ߋVEU.g4bRZ"}NZbqmo 4fq&2JQ=O 5ejΒC5̡*'X&-B bs2r#.#S_@w1.2ɐ^SQC6G61C{Np"n4 !ֹEֹ9pN >5!=,?_ʕB}[铥^hEkוyZh:<|E}W^pp==&Fvvvh0P)zt(@a\*8 %z(m#1:07탌/M'!w%W^BB@*DWL(u_-@&Aci 9.G7^7d i`CxtXRJCgV) OCvGy6<@oP p@FX%([&0/'ː~E L?_BQ QZe 6gJ473)bJ|!)*a( {C%[{-+㬣w k?hr`b<\.*iX; LQ1ȲU5iU F1$C}@|+Ѫnp%،ͥk teo0GPo$vlOLfy~=Um ,F1T!?`EgJ$v"@\q_f ι{[c"Z/T[͘<54_%. P"n[EM@HX`> ئN/S Ł߻=Qv2քނ2*SKe􆎍8Ő >75 h)]1R~u}㉕c)O[lNͪ= ,y=Te>:[ػ ! ~״+d-WҎȄzrSZ?m#ϺZ,;*vkpQa@&W-&Ntx6-l ,)ϼݒcWJĆ-Tx53ޫ8ɝZ )Mʹ:p)|%rI*#SMnEtke3ysH8/zca'-,-AWZ(1^M k(ӧ@Kˠ{#_p^g*X_C'`;ɶ:/=HAS zE,cx,݆Te3F%a@tO'+@_U;fn ,<~ BÏ/WZCW+ePhb@Iy_YE1N0S9ۢ :Ri`j_'lbQ5#PɁI$_΋ȉv?VAo"HH *ds%w2W8$Sîֿ##~q,s?aH c'K^3*;1ߍJ.6ɤ$69W\F>WTѰezBX%vԔdK(blߊ("P@`1 HYPQNEF])4etp9͚W-7`r2}X)rX If.GBOtA (ؕfW=+ 7ֿ;8*qes>؊geQndϢ%`{DKvmM^mm1A7E{rdT) En8trS>=3Jshzd' htGABrS>2,Eo}[Bu=y.op%@{;.0BG>Q{l2ax X=rH`>(TZ3eU8 o JT\t5V6{\)J|:Ezz x!ALSY#bK!٩? `Ih65"PO<3pLA+pcU? +|Β\j]dd#ط%6 n*IsW;wy" NtE,[V3>" jf$xXXG<˘ikPϴt0f]In\`lcd 8$}Wv!ǺDwcn.Dɓbt}$ %Ǐ@IP&H" G{i .a"Ȟ.!`(7M-ϵ:E98ZRW4 @Js3PiҬVt=dG/q?-L^QXc`JcU%*GAaz5AfwfQngk0.D[#b(<|jK* r{[H,Ǧ&+EHW3V(j:kIbLi Df2_Bti[}eԭ0HfѡZsCw:BD oqvt# ߅mT]6*7, 9H24ƒ4d:ӑudp.j_A x:Ad(L9XiBn* >9_`zKV:R'H'富GU9;|{\}:y9숗,KaXߍw!VAq,>ػNXRiur_u3 eVZg;@҈22wGڜ? 2~x;}Qޓޤ"ʆ 7YlP(N\+>u\[`,PBΉsO8F*U!ȎWV[ŧ}q3?KWCw ($7yJRWW,k5ԔwF8(y, IצXx#^uPBFR? ۍUs44HTڂ]Imeە5www"U;.Xl`+D:ȑ]/aD5Qc_;Ŵ~Ȳݚ|O͈D\Uf$@f|KO~ȨRB=[:6il%*Lycler#ddwep/$3AoH4dce:PJMwYN?jD53ظVɬҭ Si&-4nҏ]zuh;RƊ #r>YKI%28oX{<|&{͔NJCj"ǩ}-PG¨%WoeI,ˇ_;KeYrWO\'@d{,]h@ȁ7J+K̆ܠBҕY X3W!XLALG['u&ѠuC>6 /|vPSMGb}qNs ]@ii)OA#WxqQ=q=T/K-(׶8VaTVoHA\6b+0Fl8pdMwSMJK'~pA, R4 yԠ,M -d8"[.q qvO )}.L{DT|vr vdޮfP,"״*M,1r4goJ{)ؕ&N*Y~(@ngQGYb(L"Cpjg4C/0' dF [̦2cj^R3Z~˅->x^M0DMV0_o=m7a*ͨCȃwoY ]׋;)׹y~娂-,rAެ4$P,禋d&:l1҆qEHhUb:&.ɟ}GjDdNEu{_o &*sP޷Dzby*U-i+_PZ.CWbcb~Q@dwj_5 oYl5߆ppnY*[[T+F5_'OtjlNXL 9'e6z+uIT‡Y9)WZ # T~1y NCbGHA}u&\z仌WxE iq&3Rsrའ;b(R<8)'%XkeͽH`bGts1k 8lrg+ZSs^m CE|;pk%fpi4! pTEI}t>^oV^nޫ3ɶo'qcgT7i"Qٚh& x}6XທGq He|ęo2<# ȣ/*ɾ-%񒞯 9X1FALn'u3ꔟWӎg[2Љ\4+6`p'th w\}kL%XffVhi6!_F.pE8&Z8kܸqhrqd~RB`$ 4PS]*Cدd~XFO #4 5EN'RΒ_bWaJSyKpű= >m֑'Q%,wK:^|wᠰ4]e={O 2ӧL:_u%g[ uU؍[J)!0fVH팂<ߕ@8%#gh$L0=4hu \ >1jj :m14g \gk J#V FMѷ'Btyچ \.a >@guo:#QQF?dkA@+u ۻM /.kQW`[Zye*r+*wW?XHr`cg˦#\eN0_McCetQ!J'X*j},w|H`z*Ϯ'Jf;ȿnBwtʜO Orb?52)%I}Է/i+ʛFUlChJ#prqwl*&V^VRҗ$uљV6Iٯ x(,h፣8Hdѿ莞!k1lW&&9 1+-taC=6=5d0M͈N F\O烧-vL%U@ "*mQ]!b)"7+L՝JZm\:SZyLͣ9\ya)VY_!͢aFasM4 .Ž=U:&‡[i'?I牵aLi޶ɨJa19Bs󲜇!~vՒ:N979(R#ݲ4΢Xdm: D"#g*L6e:c_D; Ѣ:{x 6OIn(mF2ٗQȴp ޽'uDnf~ph4|YͽjɖFZt9YvJvz4kwvH{݊ kRsG;vQ('N7?(Eb&\b' Ehb#{\x:6GÄVsV}ǣXA6PȖUHXޝ?0c f]Dz tFf6B$Uv "~t3̋pbL`gSy5EXV%ZBw H./' ؟Ǔcye4MPcWmx](' YCh\Xo99M7//MO~41?V ѸCSqI|tyJKyt2J'tPRc ȲپFq^͹em&@Am1ȿ;[)&;)KSMt[ѱq]Yo.aɓin\XuZJw KE]3r?zvlL(<'- !r%~#|B>)e|TV} -zfBE<-zg{~p匴ޞpse}qt7rp}Lo'alWw@^dk<ʄkdww#i3Z7֚c^O* hX zşvܖ>3̇kVFj΢<$}Y4qU(A%Z'VrM4#bW;ȏd'xhS/ _sIf(̟PXEk~g/ޢJiR FK9bbᵔY@:QY0^|n j @ %_ЗnĞOy_;ZJax'qD`u%]njf֔=(-z#.fVs:>1iPu}nAY|!S!`o*;A!~.dgA(cw_ je\26|^5"wNFhab41' c_kk_py9Rx&K@$ @|IπfHCWBRP򫈆Oɏ>޻EٶR k9EUVWh&7q_ACA!89rąG𗍿3C O:Q`*FҦҶjwi;" }ŚJʏEs =.VSI"W$D#^WO*9;D*oMi]Uxo92Pi890wt؊)bNja?> #ޖYV2b0(u~h.dOgt.v~RAY1EՔDqfQ0p"oBQ26n^e6-ŕP(7a$[ %ȼ*`'6&aGJc:ttq}#$#ZQA.;y#G,6qYC(۲7RU]i6kOw vZGKk L7/%/ gD]Б>Dc0+nʂP&5z?4V}dG.{ /g 2DuE#"yd79*CBvU׈|?X ~s{ srAjXwba x(CMq%WHtJ *L#5|ܪwri’+LLdiE%i{i?u$` >łI2l%n Bbc/3TDsRۥN^TU`_*|%KrF=&SpoUر&<67z)41 )t f/2tLc q=g踯Z-ڇoޯfTm_Lrwp /&Ljf&>nH9F~C`4AXS?^!Kaxk ,Mf*DKֻ7@h/{.o"mRΝ-=TTgѥ`!dvo ġA3;{vm y >4D+rXX5/NvVeERuM%o&ۧ",pF&k47 drHnU .ACp{ȤN$ k;&,ǡ'Xl O?MRҸu\q'1N-]J~QәV- o6|wX54Un.8.joX)~  ۊT.OpTX‹3nDTXC%UeA4=9~ (!"ew-"(IIN|ĬW#}{|!]b A|f4jDT~6Yzߣ[X8;_odyP[ɼ&XaS;OKp+;Vl0rjlXޑn]}U0L5Sx {)rP2LUWNqmJ~^|_lӱ75B/NYb\Q[nz.a/i*^Z0kq/4x69 PC?%DGľmyE*ظu+>]_Of.j~[B~l$晩'#^-8nHpS . :D"h]GGm@*0Mf.&\ݞV=x*=H˞Ò虯))P4^?%#bwfUAZ}ީKkل^<,KɱXզ:x4~ڿ^-fl$pйc!Qhlcnn^]be2wJ.p;r@?T|UlVm2`?}"*ae:?h&9r:[]y?VrqVĀ(i1]B SK@ΌĄNNESC!u7s]ɀ=]_`wo A8YۥmSiL1ivNdW3ҿr+~q`*YhO/AoKľsopu+ֽbxOԛAMur мh\ @x^8"Yq'XwD-JT9JAzg;(EIO%_Z3qvm _,j<uRGt 񾵐*18is?lb^+`jC_{=d~SAnjG7@跸uV>/d=3X#G9:[0Vlpa&9$9[ތoQ5lc&Q1|\0\tHYMv͘!G j-&tPocIT*>ԟ7Kt + T't كQ!"ga:ߨGk:TC:MH?^C:oa& @-{ 6&#O&%)/f@3.xAD1Jf}v@&5`ba4(2G;U뜙R6]\bF>i(vYrQV-@M:@93D_C)PWBhIQtaq8(ez+G}ZU<'7 o R\BgpyM<;a~-0eg`pbӁ+)1KlL~W9?^cBvzԲs'_ʠ;jztNR "'܌Rv-9,'&FX&+P ڑ̧wsVtiY嘃{&sv? sV؝;&2Hۥ(|V*nD ωK{"a~zC-ji\J8?ɗ9uˬ>+^}ӆ%qv}6:T Z}jib̯rӃz@NOtù},sDWʆ[f.UAgƅz.W΍gfSQFȇf=zsu@v?{/v(Dd#fZ >FGOt)x_WS!I >B6吸!FOđ$Ɍg*@m"ݜ1r󶮢 }{y>W=4˺I]c%p%#?5a%PİGZ E#=àH!_ɖgjHIxO;45L#NusU%UjH6S~㋨A!dQBJwx'iµZ\}"gr6U+Ysͥ<ϩ ՑsDh$ꍴYt^ߕJZۜcЍ{X+8Xms4MkqJm5a`97 B*hi/n4)!x˽$Y u`B{ŀζ)TZWMx"|Sn/1R=c1U rqw(ǭ'n ffS׊"91m.L= Bl9g"Y Qn -֗{Zt?,/bHNjJfbdVAHG>"9B_%ﶡʢJۮQ9%έRb0tHE^%.d_B^ئ8?95L6Mg_vYp.^:#oS32d?*QQMf͑~|wU $  .0Oߖ8@]c%`*#M`-[ܸ'$*_%.0Na+ygzhI=tJmzɪv)JvG .д-y$U0x3 &@2Hd xTt +c:&]|)~e'GSqj?<2n"(G7d \,JqZaZb]!͋UbVLtfR\GWdoM)[|_0U2(s e|4j$yA~^[(YKlѯJjT !*RvV_|oJ"Ƙ@3֭LsA>.\ |GE`b)~)W5V{NG :K0h0ICݭ!.ʅ=lU؄?`PW5Egldﶩ<A>Z )O24ڨ81ep$l+;,ϪH"4.<˙kx~:1X]&08ZgE8}1Md:$]Iz@

    Бm1YRʎK.4B\9$!,.V(N Oc6>C rxdP@0I'wRƚ)TJ.t s?t'kjk^nͧgCG "T#ی:wem MߍXr_#xX+6BlL:#AA+OQ&v'agAKӑbPjӑ=\TK瓙Oby1%E!{o]O#1 Ow 7񷲡?aowI]zFYEdW]ԷI^% =M>ˑd0"X|ę\Hj*QuQ{/|,;3Zv B;AJSBe?L2z;0Ξe70чQ gOpC79~4Ruh}0=jfZv$Q9Hf@n@B1Ȇ5S.L>EGzpƳ9%9!hu0A)|Yovɔx&U ju0l\NvV襜>2bx qѯT,}qd!5">I8A=˯y}AuFcd= NQ,mI=*J#X8HԤ"w*#)G*_~xfs%%E/ob6zAg؀V*ӠgXXY?ߏl -ѐy,yMʯmzt-N11uQ_rb1"fvLK᫬6 ?Iト4YFP6܌~;/0xAVr9!bi@:K Xw[yX,n\VP ]M1Zdo QB-̀i['0c&Wz”Z}W^hDӿT47}|ZAU?yէDt ߰CLv4@]9hI8ӌ(&ToEb>O%I]PǕ?R2,_)YߺY7`iAxv?6Z^_6:!|:؅nkZłw ؏ps*H{g (v\B76RXY v KŴq{3T_SH@+Xòٶ]Gte/xLO8YEdbO<8ʼn,$_ךfštd_]aQt\=bM5k8BԸ)aw6JZ=mm8 DvWÈn 5 G 9qD$$ ,럼[soFFdv+lYOHUқ!5Mw ~cOY@:-F [h?Oj2ݛyl|^w_zW4=v-6X3,_05 2CgrCJ—!wVB/1g[ Hy 3!hQ]L1h}"%7ji; zCwgN鍾EasU"uj?Tm^lkPl[ܠ,d1+–y/L<(L1Vp5vQZNcWB< mw؋aLaEa|(9t6 Xrp(0djv̜gcӾ\yxs,elvp9%s3ġhٜa[!M3JZ1QM1)@ >sc{FL`sa4ٷnlab慒ψȚv>f^h.g=aZ`,,>ūAa|X$ U< DUn ğ bq k6D60Ϊq/wlHK[Y!\|A "VTODz;W;lliA/h;6CiAE0Cu Iu μ1DiSy,3򦟻 v̳g 5%7o%:w-,EwlCiQSNOȾa' O>;P tyf)\Mv%7/xuhgl QftLԛs3M3ʕ+Xh7Pdf GhU:!'S*Mx/\ |otɈz 7gCJ\| Lӑf3'uX.|YZ)H~B6ms/w|W{V2eJvpovT&w] l(H?ߎ_!m>٩0ݖrc ':ȇ`'q rts4*ʌkY!+2,n <)np &}ڟ&m ?pWa\gR"a$Re^S?vQy9e 4㋘y\Ȟ# xtr9&W_$hĻpcS4R,.dT`V cӢyB,.Q"&ԣ\ٺ{Q_q)6)w4aGDxin0}M{hBQ~7tD3ג3ƚ;4`3[) ^/ D3Ǖ>@r^a8ˁ%ig [j ?dqfg:FW|BȅJ^Ỳ:MӚEhw֠zy 7xs'X.S{g;GHk_nA]&ca.'@lcj:(2N`'4lE#//HU'UR6_Hgv_7gb֥;NzKυ%_E!Qp@"D~G, o&uںZf+p?%pCbh-K-Jq! x<q/:h sq#[v3Ƶ[Rrf-΋#,$x(bÊF߭fCJY!7 f2&]zG8ẆKd2FfM12rkFXnzOMzÆ*{F )\l̨vG-G+A~Pl#2Cjc g\h\T!+BIaxxlXO4* ī`H4deD\k4=z 18OP3,WR2cwy)t2b (I *yN?˭[!#!2y_O s013ov0SF1$&:'{6>'p?09h)Cd07pw@kqtղ?y'Z1X(2Dc: :tTR1r9E7`0iajݦ}'8d6H aż/ Ƃk;NNi\a\W )^i:%OYgx4/6 Cc9ϙaRM88ռ{-nQT_:*WiLbэEiBQ!05de|+4J٫GC~؟kE2 l;:Y{&F$Wgo1&)ЧTʼn>9NRV7yt!gϡcՔzH+3-*1BT`).ۓa70[}a.@d$0eCPtq\Q^f IZUT-fC3'H'}O0z$n0P~8)V kT:ӱ}qKF?l7)Ȇpz7xD֣15=qCx0J_"y؞`sm5xp}cۜX.E\<}1?DX2umIM=w 2Fc]F>:lҡ9{XA"(@9_T1377ݚ u0ui7pd3Gͧ י]AWTo5(L W|@=ZG88x8(!sh1['hը4DŽJpA?t0\a*|S/g6/C%uqBԉ{r8X!{Lo2tXR0R^a+R_p~=h 'lMI=`ڭ$x UrBV\ IpQTO<Є65) $3O:=R^`x ?Kyd i f*Pg7*'46I`{aAf)FS?Ɍ }k ey./$\-?GROϓT(c`Hq_SvaHjZ[@[wn7x[{ev?Iv!E/L܏T̀Ib6ՀaykoGyzA\?ZK"{p~n26c;+ \_ڻMg*( $l^hJBhg0D߱|Ulp#D5`,sRɸLΓmHi|jylPdP[%[>arꉐ;i C?*|TV6 M.S _?* @ oϳEV2Cktfm2/з(ZxLG:տf@;c\̹KtU:lva_LNS˂06J`/W+9a5^?]JO(hBD H GYr:ǐN[_M͹n./Hz[œԖ?Ǐj$ CgB< &E9HTd;ԃib±"g %žE[3K 彻BIR\O?! JltmˉE؛/ I#KeְYw~můeknNIf cWцtܜnЖw>\4BOBaw1RjtwƳ<@EQf bzrکy`,coG([Iy"o>C"_kO" cYU'niPiMq,b(s2B#?glگK==]p=c^lxQ?|maaJ|~sz}|`(R|QHLތz} `X]40vPvWH0}8VV&@ǐ=õ!x8Nw am#*ǢPx%#l TOTG7k#7IoUϫLGp&R~"ڕċ:fYZ`16GI`t9+%W ]CKm u8 o#+>vEb 6|T-t&4vFU82[V.H#j~jCKE_QX]Q۠5\_=pdʕ !e8˗ .,k2e7mgYymLWB4)n}Ptdt֢oM\.ͣLLKw3XCh= o ʫiwpvZ*WR=N{Dܖq`kayk0Z?sAwV:op^I<# I'yӸJ؆%!CXCLuoȲu.ᅍw}B0`2;h\'I|.OL{qu*'MJH>QXEKqQ Q8i`.m3_A 7xZ=5@{,[{v|(u} / *bU>8}t[L׏PyI}t|\gȯ5<`ՍM`r{ѲD6bȅoy`\1/1} WzS; ݆z^-}sSpa zsS}UG^lo0wF8:zV`GQC?c[4!WV0ɗum=D+:@&M`3d&%q柱4v|#o#2 8!iз؇6!/ c%W/D33T)CTִME43rQj;UL&uX7)`;BiHl_K'3Iy+H5Ö*W[%,?. b*me+zirCc-YBh_l)Kwē:mNcHjD?٢€y](F3 Wksޅ) mh5N8SNoEl2owMQV[| 9H۲$ 2Xzr|,hW-K'R[ށ3{# &'jv3!/T ja3PLmI\wwc#+;*1^tUU>Qа x׊;XVPmY8oF^1KL W.# ξM-#$rjcP¾Iي4 }>|s>aْh5T̥q&0M44W1EGFZXL4Ar_dB'whK^eNYHuaFI h  x|k|oO-TsbJnM_,_{C*ndHTJ{)raAHi=ˀ$I9(C"x-37G:tf~هϐW&m3T{l`4KԻ<2Y8KUq6\-aPx_ Mk~-4C**HM#S9aTPy Y5&TgUnHnFIRNO7:Si8؍R47&$B6J7N~7߄F&W 4]'P40{(ǵޙRJ{g_RUpᇤqeuavSdp?@`"Q&ak_vg(('$,xX;ٻ|0'1JKRT z XY~Aw>r]j$7} "gWK\u vq<~2>˲n4f#^ڕuxt4[XmdE"vɻV:bw_"JMU=X7)vuy1 :*<3W m{`U7Yx:x&D)~|L*%sku6SWB̌_3cY#Ҡ鰢!l î.BvNc~xB-cy!ZG W$;/Hiͬ؁6ASE5J6rʛJ_>ת va>[$gJe\U=!fͣb%qIl_)& hW__u?S)9*!joؑlX"/Ww)1:)!d0YB^|il]P+z}/ 5 Zr۞c@=L}w6㩤`p H!}9_hC{'I=$Y%+${`%&>-ʏ0]h=dA{OocpBOFV~{x+іGKA #m5P&v@Q7cdxH+9IIsm7kK̵o$\f?ɢ ukSBxؐa]Lw-~MopήQ5HJLC0aؚJ5Av~I,LPUoHSLȊg'3ĜRqEm}^qa_4偞z_|RVaJWN:ן>EnWu* ax }̚]`tuEB/=RZ[Cq\kn[-ֱ-O;ܘ>9fDE$;!<ӣb{֍4,ؐgXͩx8@;`S+bW+GmQ1OY3+{IX4ynY4~) ur1 fz(a+AFa 5+.;$?-+g; Hў a-QjzyW]xX{8 E1HpQ T#sy}oI@9xeΟ{14}GZ\ٔJ+Nm+ }-\'.{sQӋ%xqnK-NEŖgӵv$N1}/Uku܏+Ę2X,;p5zeˡ?/ 0muCEv}LY3~ȠIrWƨo1ˊڲ7*H{SSV(}gwså?wF68A]Qâ}a7VxEYx[̃͗/jlkcI^,oΑr$%r_d!zF_95/ a ᪙ 8Jr I C'gNt r 2V'Po/%Qo^'šNޒ]{̛F~I,(c') C|ot'v:+be^y <[a{s5 ^gԝ% $4YXvUvÊHeaB+DUH~.E +? g5m^Nȁ}C6vFxdՓ[[.2ߐ9oj&S:ӉI=ǝj]'%~K#:靛|.q  ĞZ-q\dukFP nTDj4jxŔKGx&b×-.!:qB#Bm: >5|𘲥q |&9Ļ "r)حEK+[o'zt6M.LޑAvm'SA65kVgQvMgQrW86m SBzWLTg4K`ϥyPSFYUFãQ=&S;>2M4zyz;QuI cʨ=v!Q" E(pdB^js!|e[F۸ǎ6sݡdK>5( ԌpР}]):Wv6rǾEiSJ}!zzcvXG}{kZ `.80ƦҫR5Ũ>P4RJ}[A^؅il`+CZ{L-|rIJFog ӍKgZ#W)˞X=V~E81u]!;6%'8/2Y BwAuo\?-~^4h񯨒N4h՚"{`br9CM/Y#.4;q*z)o=JLԒ#D\1B7 Feg}xr| WBdƪ^oѥ{Y-kTﴬX}m3#PL+}[L= n4)_HMEK%#YӊA^*POdL.3[aVBr(3 kr]u3b4|؂Ac,zvq=/MN}oj{З4Czfu  ʱNň9;CnY~yLmKQqƔ(O[hFÚjS+:Õ_dg4tɌ{o͌cRBXX T!nrʛM6V[l,F0PlPJ >ȗ!t4 ӓ8C[Ґʍ?`)ּ XL8@2CfD$"j p0ƔQQAՆ P ÒvMzg5EyS D L%X }zY`R~5a{0q?BI*ہ2kn xgجˇa$$C̷eTazg[5EhZpE E',1 >2Ѣ$hdLL&L`wJ~e<<Ŷ[{TMoJQ?,"gh;"ǯi?γ |5 `ߴ)K܈R2yK(G)J /_H 'K8 o6!J" Պ/[Ey;-`+u/;RDI:'4h Kq@.\(U$ԅiAbnQKh915qU;HCԓ˿JH݋,]I}K#GmG蜫z̞|GOTTd0Pxq#+Ncɠ:Ғ'϶J)s)"޹mPj uu̗~"QbfަcY 7Hj7:I%̴]dޯ *dHݘG0;{ƱE4`LvYbOw!JyRXI xt(p6V y嘞qWsѲ,qZEUާ!1'5!X@v1&+V1VW4+>e0>%&aKw^Ix'F=L-3&ώY V(/5Qd fOo1_q\\]%;| mgnp_rp fYtFF<ɽ4"f<~;rtt<\LԱvר/D)/`#2|5`j]Ey8tu' v1j`SR}?di61`OJ#Y~]x@@j(l8{2Ε,2] Z\GѽXޭɔ":?lKKʃ? ݇0 >F.%qvJ'82󦦸)6׸ X]Q2R*P mʼRg>O)2 QߟB!?;Gwf1%84j#4O5* DE/GU1ϱ)9t*VDde0f8JKsjwK;4NjlQwURV7mE/J>͞=]]P`3hv-Z3FMQK˜K=\M}'~=;I굺O|o7V6r xɇIt`"Vz_hz^NŇIM؅#( .k #ފtT׷<5W(O#xyMU7Y \Ce%^>Ž OaU gF:]|A{1]2g@Jd3yG9I8*} Әvш KԏOŽ ,.Thbymdd_YԔ|Om}5u?15p{(z 1- {1 yǩLm֕em`Ov @v~Nr%u9涧ګ=? "'٠|=dN-;sGSz AūR xsM5f/v b"}oG;kNZ;[/h'OV3} O;4~8c҄;؜xRd#Þ׋lJXky6E#)f,l&%Cշ#_ZQ΋Lo983  lɽ̻"pD=&;y7 %7xb;W- x ¢)]T~mBk*?ROJtƕ"iUE ivFUӟ5gJ TDz@nPht5vKtDaZiQ}2k9jCH݋U\+q6bVFi^$ۗc/NUy12nzևev5>}Xce= r]]7ъMi(d׉Rz?1*rEǦTq0}@V $X]9&nffm͌h;`&NJya ç %Y.y^~ Uv Lng0-b>ey=r7""SSnΕ:A]gbAQw(™`mW\7!Gd9͝264 /7R0!* pH{sFz%bɂDT%)"]0yvg h7Mcu^&e`i2%QR0cd`8u2/cTۛ[U^ߧ9&ZIص1:4cf}䌊uW5ueQI޸ >1\> (ݷ~&Ur,( 9ij4 =MHSQAAu OTaFQ~NG *o3yr C8{aL0Y< 92AY[S9-3txBE^V~*lu5.O c |^:M J!05\@R^ZtM&۪(_ϊcՇ 67CTR,rJ[QX㪠<ކlSLőz c"^` @ݗ,q7U/]-uꊱ!p\6f+K=+B`_$ګ5+\Y4Ym;z^m,̓=L l'6_yh5uJ(b9vlq]l{]+)4Z{jZTCj|Hd4\ LwO_K7$łv#-m5ľ3ȶ}9!Mx(LH0RAZ.WОz3(Džئ i G0\恬]wۣpwN:, R-HAHq# ]LBJ"U_ZwVOz}$޻m9,Q=c) V* |©[:fVQ5fM:e}@| 3{v-¥fPThqV\HJ5+GivL2Ѵ6Nq.T}Q Dtc:0UTU׺ceyE s 2*Y;GHfpy4{ Q_!C-Hr Fl†fdnz]a+ ilK\ 7}(/9*U0SR1.:2![e` cvV`2nxM$=pc\TUx8|)3^o6yUAK(x^y Fe‰(oKN0#1gx3$WM %,R[L,/@A q%*%ƞSu_3O5g @ 3`B(qWIX?l%T\ۍM$\nXM`M-` '<( PBsQ=)&8âzGDҊ2.ۻ tpDcE`]W.(0o߀T x (fxj݌4$&b˨]^?Qռ;:qK\ӿb)QQh}^}l!Ɛ:Ʌ鬉%l \GJLǛI&@HZpNR ÿ/y⩓y=/-a'4&/wiZ!^tH/bRE9nUZ0ȕӉJe?]ٷ2-bİI5 Hڋ%-gpeʊn}9m 9f =Æ!5pb&AJ2aĶ taBꥄ @uM8H'Pg֯y 1WƙU'Xa, 7f=R*EE,$?j벦dT8}LȌ:>1Pg~7( q>7iԒ*ZH=BFI5l7*CGa >5AOV*c|IS"l:W..N8t0$ U*T8P.,Fg5pI̔:@ʈбi%YC8??`!t-̏`i΢U?-Dm f]Cn]lY-3E޷ǫ~.U |Ep? #@YvBKł7d[NOJGX]ăXct"A}x7)uGă#u2̾_webr:;OO;e̚=)X!n+BYgY)*/ÙgAA14` .ُn?H]ep{oD̯]΃O? 5QU1F<]2Y=#]6*L| ? Y[в'DoHסZG1Ę!a¡;Gs8]'w@Qဓq  'hb8luTj#gژ\wV/c*,vNhrފb{@e'bY[TkQ~q1]c+@|yab,B|֑yL eәudE8c]$|w:k7p7QE'vx`V2߱Ďutd+Ew#}<Z #.g=N dG&* VY>Ϊ$HA_h/ Zni*{_Ӈpz[P\SC f QELځ|Nx)fc{UھU(')pxpRuHwi3 C`d! ^%|֔F2tߝ[wS˗q&!-hνXJo)n'sT*ψ/-h X〃Ճ#GNP:A)ĊJ>c8(h8n~hiv:mǯȭf=RVf/~rrW/Ba $9W>GbA6J$rHm k)ٕFQs%۟e) KKb8jؚIo:ñ7oa}npɂT339 N${tfkHA ku} @l인9 q|J^q {*iib d-Cp<42DY.\Śu n=I?21];i$/yH遚I-Oe5XJ۰̣⭁+z[1 i\OաsaHl&hG=@czk*czaSYɈ<FEo?4 giǵ<+1_,fw+KJ;Ԅ=>ۗF,ջ.LŵZX͐rn" >5&;&2U\wIva i- yu؋84Ws@Oc[kTXhy* ypP e8'}Wӯ -QNxem}_ˁ(_6r%V?+Ο\77_ͼF1a9SeюJcUQ W2Y]mWJ)?TIXvYQ&~"9d!sǫXIoJkY8es@\I Znaw(8/b'?X%>*A]aW䩆8@,#L{FNMt!]rЍu\r􌅨% ! *o6g0sO<.%+$AK=uf̤Jfj0AVO<EY3LN#,Cx!L~ZT8J1BS N`6(+= Ii3yץ`'WK"2K4,1A[Y-L1.!bȑXM ;o3=>jCOtM1V>Z)gzalZ-eTf7,?[-{<\)6RzY?``xmB)AHTqU *`84Y*Xç .7ygO5rϬ_hfX Bܫ B%yIPp>;_k0:T} j$a3 ǤX F _`ru-SֶKtA=ȜrF|D8mpu f A@xjV3o3 4\!{̪fE{ 9QdZ=m6 :'9EzXtl#K43?k3[jmKIr$Mq ]_\'._X@; d[F7)Ubg8s,@##q4+B*"sv%DAڗE{&Q=UD3>aB(}sч*z(<!=ig[r;YjX'$OIİI.H\oF:VV10O[| Ѳ13l]~uռ9nG;ؠVE;V 4YFZW+ ;4W^VO$5)DA*_&4pQ]Jɘ[KI"E/?nPCaf5 &x(VUP.(7X$:iLG8s &LJO!USk #fQ|0j  Q=Xjo.bvao @`8 \,?-O<5O&@DW(f6܆7|\Y.ȩ3Vcc$&D2bi5FbEtJBh;vˎj _DRZZUN ^e[Ns I D + [ @M=)ką>{gBGX7)^/\ҩ6%uNv3TSulĹqR-o~k xTk)%]:x@ח}db{>Fv;[mlIq$-转22'5L(,Ee6;Sզ3*f0IUn  kHoYxh9R!'9TA|p4fgY]5)uPtM2`ۓB(dIUF C; Ud+2&1ߕH&\0V!SE\NX{40NW /9c@5V PRNC Px?g\:i/v}sܪoIqA藍|g“Z{t|~Լ+2KܸX {)!(ǃPPi79yX$>;@r.^d(gcz.L(b&:)Aü|lΰA rOt͹Bc"YE)P,Z10OtyOieRSZPccSz.5 A8j[MOI3YFpKV{Z,Xm?޶9.{{ `ٴ*lWŸXv^ɨ[#FMWtFŅpEրHf 5ie(:[pQ :"vmnnCbŚH za76`Qڙ¡VhȌbSvH`oCjԸhƳa#R JLoK_u*{a*{ҝT1d&$>X4UƤ(w}o|:!uxuMGKSHH2Zuǖ@ݾDux?>;ǶhM'f1<|s>&:^ŪgFy᪶a%?B2RB3M6γoy6x!&+OLZBzF6n=,4̘'}ֶ,JE ? Hh"U5Aw 1>kN :Uk(S ?9Ss5Z tY+ռ9YI#ȡ %o_=sN5F";.5SʭA>_Rzߺ3UYd}oK2W{i`+r\~߬_>5pQ]Q7ALlcՑas+0^%khIV_3iݕZ9/|l`n!Vh,3I17yS!8s_7r3z;e8h8'5m6NqdsBApa-N73X{Ķc4adɚFKbrz2<>O,xAP\&(=/@aaÇ^ N^S}AE7>c bLXle<WBX\2Zf^'X4x`D [CBSԙ9:۞:B_,~Gnj ~FKsӄi#+l엫궍ܹ{÷ⅆ47mDۋ-i UV98~)i0?.;AM׮⇻K"sMȿH H9x#g'1{O6Ze 2T) $3EYщG|1mc~I\82iqI0G${ʨvJ=>dåCUshwHTS]gbScń|n_2iJ#Sĕ^&Ütl7NLs?%Mirz:0s Uݎf!Gdz9FEu*<*j3J_פ׹{Dr{<1z;po2D d /n4rX@亃U߯c4_rgj&eޘ!XF37%,0&iwByapzfǙIW ~^./K5I g X?q跩 帑sIo]nQ40 +} !FS(_7"QV̯[!l?TvcOOȸ@!m /Lcbfz,Ǧzp]<ag^i`˥_Ks7/NkգUJ #n5~!>?սuH:X%!l$i8aZ@}nF=_$%Q++cz\ Xik%6N}cfLpQ6/ MR5Y=r}xd2r܍Mb>s5"vf<0'&kmeڛntyHA~1wch\a,!r(]8"-1^ o[K&\O92K̰][|acQIɐэ.Mw dC?dPgUS:}a.?%lUK|!u!u0JdT9<zO pm.p ,j!,;2 R]Es}z_S_D(єs׋\STˀ ,!r;$ʮ"%DAlT0+]d*wLFˆws|Xq*nR!sE )5ֲz"Dv{S5qR1hF簃lI}{b~2ĝBbp95F4?=}~74{ ZQ'P\xлg,/xTUHx0TT.4?6!0AN71gQ6>\eaVĦ̐LWp^4 صׄ!˫쑰(Ncr . p̵d|4\(uBG#$cQ% \tULxO7 OE4'P͹`̥*6= Ra?/" v{6}%ED@[02BɎ3tʵ6v@Cd;#C_JZ5.elor:,'eACO&Às$GsEfJa#;;`4=pE+䰚Ɯ>)ZZJ=!gsӳ\?rt9n/ZI2T^3cԺ\B{%&5R9Gjp\N CMk,+)0ơ.aTf-a)W<;=p~ *& 3AiY[[sㇶ,͊[y Y|gN)I0Ƶl;vb@ʰxe%rW!qʦ.HMSY"ʄ0IR7 Ӣc qu Mk~u";l_ibPHt/䪧Eq\U>Ԥ~H2Z?=DAf{(tx [R ^&G `!x X/5{ׅ_mAE4 5/$hn+j qXFc S/uoRK&znf@njKibNG(q*97R1P?ywymWQ,<N, hX /R5s;0ȎO}v L}Ӵα"54V})*L]BUpb?8]b 1k/s3mC~_$p6`\YFZ52nC":ڶaNq>27|pdU \7Hx s9Z)$Y.0u{i 3G7=zz.h#"Y/JD͞B)r?c'GƐ_AWʜUa)#y3_^8?!U{pR,Һᙀ)]XV-@=@wͮs qSgE␁EKC6n_"0VG$ ?=gDYJԑ06t_ J؛kmDV{ژSK4_o 7HLcl'q Y/"C} 8*tyF e|'e6\ MMI1I{QXص"{ |t0a1#ijyR`Gz#4bwĝ sD},R=+?CVYY@m.L0xbOCM; -},xwմ.xџBKpEVwp_4cMRrbqǛv<-;LRE_^`#ZZ,Oo|Ngbu' q+G0AV{.@ lgў4dۉ\3P3 ޷hݎ9tJ`.G09z&)%6(|qh3X('A<*<:0[y5<Q{~6%LJ4:K9Ue qQw"6}(XѠ$%&>3DAEmsfZ[R ljZ$e,1">k*𺘄i'(b;d,f>óߖI͵gR YʈYk-.S>XBt^!y׶u*^Q>EVW=08h-$f!όF_#%2ـ$@?E{ٽ5r~)/q@= W ͹%nTZuAq5OYDr٣v6&8XwDCm=|-HG#П'(濑Du!=}^Kg%jY[K+LUӠ].66K Y%P&P>}_c8Q 2u=XEj{}p;ߒ;v)=w,]Iwګ; w{{|`i+k 0e}5 nU}Sl d PM;ʸgGܞJk WW{Q,, ``4DZpED 1j˺ğEgٮiwx=smYJNMZ4`U !ZD9!oOĄ6|16Hmy3)U˘sOWANm$Vz 9tG]@q(CCJ#tא w[JM3Q['jsm 0> Ĩ kMr(5ا6OUS mw8>HP!huZ&P6$5VS"nF#.%( tE#JSd5g$Ï &C^5t&]_GA|`C/d LYX.? qWkr)^M+|M;V(%+ O@qM1!bQ1,Nܫj@^дI 6d6 Lin!֮JL[`NH5(M4sj&u5Q0vBf ʂXyM6@Ai;!!T0mn A6}_6 x5St]RseCa Ol 1`O"xPF~CY&uTW'· HCrn1 OۮlaW(_61L[qZ""3~vF0[y܉#6ωDY@5ufHC޷ļl &v#.6HT<&(.jtYy ϚG3ɦšȱV l{Ox^Lb˛WG-`?IO#l%y4'9ZZrfyƴI@E;fzǃP'#aH-oV^f%)R\Q (WӾouu%@]QGGN~{I٪\S ZY?x(4|o%A7z"J쉘ປW޺y'$)RqcZm|~y.-?,k-aV3ͺuc3Z(-p|'^rWJmL[>>N\GY=nxPPWt:VafGw5'Y*'M0sܲFYgRB=c 0M+4k+i;:2R{Ar&}\B6ъw.ĉ+@w&AAiq^6(1(\dbVw~ġhr33No eV0M*saayDŽ($fȲ"_H&$4U#LVQ! h2P:3dtY!@Y8-%Á:tJ@ E)xCM޽\w`@;И24߳A|Bw~?c.u;]@b1ad;꿃jUD%svџ "V PPW"QtiWz&ni2@3k&(Ns%]nᒁ*2Y!HIo{50FkS>3FIy 7* Zl/TV9豳k+-܁%]M5`Yţ*} }4da9\`(XDmXn3-W#mvP.nh=+3w . VkZql y;꿻ߔ펺Y:,I"eq:u15$6&U,b9o V hg@4se(Ifm<2ɴ +»tاGA{t5BY1[f0!uud}bbfkh<3EGzG5 i<Lp>I;.%;"瞊P2FqR wuԥsBlW$j5gm%ȷҝk39 Oӯ&|PE3ͫV5Th~X%rjY utnCWdl+rP.,c w"?ELwO|Fkԏ QP2c/+/<ǫw C f`aTK4df_q)L|!K%x oz蜈ߝGT3)p8PaZ?7|\٪C'XmAIa“b@_:j0DnWljQ4S' d@Uo+ئHA쥂}- CQِ˗wU4N/yґ$e%Q*kUŜxf I!c)K&k&1iBFU -sW|SXwߖ9\Wf?q0ސaǦS_~DhEG\p*G"O&6v:-eZN'e#@JeL5qn8q)l[Wy#06_ )N?.db+Oau#^ Z'%|vi=o ($^9'{\D1d>#L;Xn.*ۜ\o! o8Ӌ<A2 Glo:_6e@ .)fsۡhCޏR6=X?(]\K"V}xO"EF#UI+KkVEIv[M-9exa<0pf0#&t#>>b7m4ќJq j\D՟ƳLMMߒ `< mc-Ю8&imIa>Fyk;V3{;ƦJY(@c6 +[ɃdyobQ{)HF]SkB1TýNW&nWKˀ|Htuz&CnF4(7U!t =l΍n9cO"Hlڛmu(qt}ޭ7~yH9@m]څIq笫)=Yr%JX5D1(y /niGKܒgl'vmIq1]7CI#L |zׄ|驖?3)' :F ڴY6F LwC^]_!?{E7/rG "uOMt.'=-2|Bc8'~֚ɤ2;4bE뻣H r](}F1IZP@Yx_ˎ~+G/ETE7PbbB:Jc\v SkMX,xA =Dw!UU t}8TlZ@[6Q"f="M4m`4(W@Q4Kjl4R Dl ؤn4_vhw bn@ L=+BN`QԚᬇٓg n""ˁ\ d6ʱ=u50/W8s# L6*: c`c4,mٗqQnЙp+̀a-zuzco:#Ċm fXݞF0M%sH[!hrZz`ؐ~&)֦AEm[ʂg(wu LPQmkÍڽ˴`Y|'LLha_Krhu}?%^<_&W5ޑvO6>*0vK/ m6o%C.7.,X0!YgƥMOn5եzU5:G 499=_@3l5=<+1HTD: c*VVl2n 鳧o9hoC$>¦`DZ]5om)r7䪜졿'0w۰ ,>:LBc 5.S~s~S2x)]Tx]= OrSY./B겄H{<~jZB2vC>tl[8ďI%6_" șxӖ oQk'7"9˒VۜTk j<p͉,.Tciu切FpB[?]Ĉ\k~5 + E :i.ˀ͠( I7fŻI;p "(;"dSxԵĂlf (KmBFہ*q^Ӟ_@{^4 ɇB7%% d9JJVcmh]?csx(&Ʀ< E@he;' ک>?L'uY!oh&]1l@}yD93[P>{qwT'|dpZS;c᝔JƄpJKfb.3^€ﳒ(k>k~ߡ|ĽQ1mdǯɵX哜#4U+g>Xj[b;P,@G}rfP7x_IiDpfkA~![Ux >+сmIӑ[vMvڥ$4RX; w)ʵ!F7wO2U.ϭZIg$OiEbh0+gŖűtP:JhW{Zkzmym(UV)*gZPY}MV:%Pȓب}^ѰXk)7:FQABkѩN TKl/3șg^3`(9ltOfs3 xGϰeR3䚯/of + u_dm\ w14S r[Dݩ+Fu|CP蟶ZKGC>J Z48:,!O7Vl#27m>1Kkw7;L$&):\euq<~4 ^]Ogk$8 MGv7 9)Wxz9r_Xv9VA*y%fwxKT,a=G ؃@F3AZ?͜!N,Y[i#<`n{Iz~q-\;jX4jp3eS)?*]XCrU3~ɂ?*5Ƈ$Q._8@<j}\ ջ2(N6ղqo< izORQ~Uq$j'BpEs3_ .O^]}mzB"vTcx&XR[oV2*wzss,m8?q]F@({8=+4e} +AzqfSo!ZM|(l{XU"m6&Q4We: i5n}3$qt_$MK[pW_>V)Pd4z,FeIL"@W9W, Eh7]q^. -I~4+;9q\h* sA{(qe6kBRr9PFjp1c'bW/#ꂐPoEY(3f&wjr?(/sjFwL,Gc.W/yo^XI4k"Ha|4gNgKD)dyRdJ;:vh_i7퇁bzoY݁-y3riȒ}$㈜䐰k=ҳi5v [/{Hp~S} 2 0t?fT`,byrbdy=5ֲwN{4qC=Ch@g9DŖd%9 fa$gbÊ*nmhlDFR(4TI~ .ŕꋫdᶋߵΌ82i%?ᛁfmMHd'rda_Z?Vċ™=s,U2ff89Юv93lSMe0Kąboa[ pӝAkѯA>X( Geh-'c3 ehe[QI/! AervDm.4^km&qDY n̮A4J;dW[Gt 0 y3֜ zRGu~' A6\Y ~mB;(ơٍ4[p ؛ݵcg/֝ޖ^A lG7%UD8fmwfu*,4ZG sEWI6:&-}6 R.%;%v|bj ai؍!`2(ڔ`T#gB `nv\۝KA] D !K:R̀"accR1钃Dj"4sR DM>E1oW\9*|(= 4;Qfz:,[G]r∱7y]Mf,tRirBKg[c)K*=F-}d%%sz e#0{y< "c/~*x&ڎt`Uթ7S|9}n!x)ׅfj+REҫ^FP-6 ͺD>6ٿ롲UPqCz5 O.,t8Ce,᥋4ȕ5VjLy|1Hm3;1f{;1Aid}3wU2b &o;mj6BɢqB/AY,,3M;0C>c0gӘ7/\gfO8ڤ30l?|z 6dT*oٿz'sꎠú|p=",L/#j dܿ ڑUKEEh hɠd0#8M>WWT%8͉/]5jոgLy.dw1 Mϔ>l~E~ 5NV䃔tT;VG#'K%+9jQt+}z?_:f'.%62I{󣫽z,%JiL_yh5C`~yJjc-l˝K &O6s1i'nL>eU'T7Y}-h O y=䑩 %BSƷ"yG\sݨôu/u@#%R>|xrAz4C/=j[C Z[/c>o/(bАA (:ƒNsO/_O)L@m\`(Vo^PN#)B5$vo/uc|{Lh%W}d>~b+O vZqkdz poTB=B 2b̨j_:``y^*ټ `QD8lzw.;l d[ӻ y5Œ|#6uUMeY| `a@bcnAuxvStOyj<#5~G`Hf Zz$o GemӍ&\Ah/c {L\iӪĜ}b*O:ݷ[C2?5bmԈ91q9qg{oGP4gzX5 靳 xb7wRM4g/$ 4),f_vN~;_K ֌~p,Mb᷂:Jh0 rvxׄ'YiXWԞ͎Fy6xA\h(N;PۺMk=o yw(EcC>Rxܨڱ9q/uf(=v@3JB ߴՕ@ k4@HB{6-IyJ$B3ΔqHB ;Lf $*IDB -zFmο#&0_U_cYZǐWqۂ1JHrnsG\w)gӋno]:j?TEPE;9v%@$źa)ĺ}nQMu(cRSz뉱gH'3jY̭esgHjr1oJ !.674Co df{S| %i>Bv Ahe' Dʹ K]Wxc꽦WR`KLEq~'l$YXt\3 8svh437Ԕ9|, ꕛoXĻ}|>X2\b/1T !2$URu-ٶ.GI(xBQ5V0W;CYe!lWԸtE-[|L(yc~;RYlEԻhσ[V=gP " ̨҄A]μC 4*QR^6'@B>0 {) yBЩ[i]. 蟵f9# 5/ilGrY2Ǵ?"ʒ"ypW `m8aTC@WE44tJ'Kѵ/%5&SïcK|^+jY aq F6=-\ \*ň!d0Ff x|m8CCSu628zB01m8G쏏 u/1icSU d 'E q)jq܌Gۏ9YF=X_O]~vRo@4 N(]i RMpWY}Kl֡̇@h9 5U;.9(84vh^;4* 1^A$"QNn׵3egթ)6|(l o>p4֥,h{&MiZŜ^RЩpO •Z2H)|E-aA8WK$ _1;/ B-J6~aRmqC vy@ؤ͈kWaeT:VO@O:PL] ޟSذ,+ufJ\ѝ\X;P7a+ٙj ~tD?]s {;߳!Meg^IS2> Ƣk_ tgjގdt VVn`s `|'q E +fHG洷y;X38{qLD=4(WKzW.h$(ǿ)Mn.N@߰oy, ϙF??O2$ ';j{%݌O1U݇u>u~/0:!dJt|pc.s>!%6nJT ['E":+O*5^蹾}|j:O@7*o*z7L& %ѢH [p |g2ͧ"e}ܮl_ϛXHf!$HD8l/Uvi^Rhe5&^woe 'M` ?*ڝUT`¿+>lk!|Zr'nx&xL$h(r C.9=kЈD#,ArDN'ĔWt>`}oǩ[s [ M6pCW+J/;\iM~^l)$*O7;?rh?¿KT^%c XGя\̀WR 63 'YV"U@ɇ< @xx)sR1&Q(76BKL̒lꧮ{bÊ#ڛtLgXԗ^QH~(eSfX@M'`E:49u1SYp lM(5XO—!*jw<^֟/ *hdKqu.iw#o/a*ae~i`]}z1b;澼t"LQew:,#l?(e`e"lA+k瓤 6.rF1u<} -)%D8q(3!ZbTDz.=PGT6-w`h8iv٨KXp~ B:6P}VAa8 YxUvfpu[>l(dqq`sm[&n|`8z~qgN1Q{,Wla6`o<J-ѷ Og7UGد˜uh{ş6*_oٷ\V;Xx,߆IhUdD$1J,Ux Z-! ">mC7I`NM2~dYbmD \0QJJʦ?^ ֤n7`Μ]W93amK2pr!jǜvJ;neeF ԳALA_ .#,@J#d;NMm\貥*SkؤSx0F$B^k6C?w>_9q Phj!lDJrZ~E7L31>xʶb5Z۲ވ6 Nh ihq`s@(qz t7#|Nqc+%k~y3|g=-DE+f%¢&#kKiMLS@#\ `pal{0=li)R}4 b6h z59+ILcReɌkϲS=HwY`A'w :^.ZK^}ׅL#j+G{pHNsm8QSi=G%!vKLkj޵yͨIB< X|ʀ ~o=0A- Uԍ&<"qt=n_̷"ț۔ >C&FHSA@..\]^NNj)gMMB/l^ ( L>)lGwרdAaWlW&$خdB"ƞu6sy|SZ=aF$X.{qOj:x2= BX (,RR{rhQ!qxk nA> _ [! S,]يg@QE ӈ"9;%U)l&CasCnYH)eĆ8z?w$CfXw>%##Px۽W"/}ӕЀ{̤h5~/ӉCxKJnxA/k[jхj yUALJ85BZC&rC5ޒߏ('Ν j/:FRA G-To(n1w`AnH7mfjo?s`c %zoz ' W7ϳcG7a~6s;m^ "-2e>!󝮂Lפja9v\[09g #}EbQiߴ^u ArpC9EK!6cH1k|B$kzט9}~TCQp orz" 4&S^BZ.$2f'7DDflš눞ǡ) ÿHǂ^mDd[5j[?O@.@550^q%GW+47)-:hF6@[+Naϙ.5Xw=jXg2$%9y-itH7Z'E8)yt~7%rNBU؞<7B q͗kx`TбUyn"gZy- >6W+K%VOj}D o?sBLKEc } 13ȇ ᗥo͜b1+!=sW=M]K>k8V/$YNP?&Sy"fȦ>( Y5n,E#؈boHނ X;ՃIK(@e~,*P!Yt HDJgYDQgW}AY<R>GJ_O/la @dR'/wYpN/rq':gk d=Ii2ԭ?+{[jq%?( L㘓 m1Ўzm ˩6$bodX HR$I]h| P\idd>Vnblsj0I$S4'<ʹd׳յRĆ]=M`tm2ōMPCc1$gGyZrjv O)\ŖDO(3P{5psb4ZWkcHM:t̩!Rbd T yzEaI c"NY.wsfe2`Utjʆq Z&b+e@PdkD]Gfs=8hի3m CEkKLhv!x{k*A/籗qU7ֈjF,y*ب@ƴ'0lVȑ:l2^{A\=,7]uU X{Am:HU5?; OHK"s0` Ǭ\U&,* a|2 0η]_="ߗ[B}`k圴6 npYfm mvCXG{{] ̵o@OV#~8pq098"*맭+ȶSGiK mf0M_,jp#4|&u׶ft)akJ~^l#*t,Zi^u}c+MkI\.jBZ9Jr2 -V^W~( 95~y|p %ܛt2K^yς[PNEO'AQBh irVa 3:b8d˶p:pFQ_Ɣغy)b;>"E1cW|+t$RN\=}Ox7_22v|1Yb#慳g^B9amSI a/kep6hmgA0oeFZ3tU͂ |w+Un%iw_ qDC}ek1 !uhaXWUd/T.5PʪOsjD؇v)&7ZBO93C{ކx3ĖS~J7u#I|谾}~PIzH^X?[HG`9?~bQOo ԱwN))AX\,wʲ+ ::BA&WHP Ys>P[i<>'J;c@ִF 1c2TH )4W(*wKid~ q(`q I3IZz.rqL -}m i l9.d$mV ǍY` j w;obHaƭ(0#2&=b$`8Ӌ4U,ܱl"MLmuw$ e)89Ehh$^mlydT]AHUN,!\Q >_hjZK۰8ǜ{.ݞzB+loQ|z+콇%Fu|DRi"9^{hB{ݱyi#$jH9\(uI.^u<] V#4}++[ s+^UcdpP!:f2`|Q`bS.Fg)1`W #&9B~5-RɔʺԙDTG廥@\d !Z+(xwOVB v:̞&k o 9b'Fu!ͿfDz<=N߳2Tl}W_+ecs7eQ 8!,~u:ƑXHR{P*[3i%FVh[ߑits18Bo4X}:Som VtS+|SD9ǖj RQ2<>sk,io>enw q02m@K $ZrTBICo$K֕g t"vLw72&_g>cMI񠱻؅7j ؓqm9 hٿvtsD)"{N=դ9S[QDOJiST榅7 W/q| `~M$D]~I)&|xHL )}'m T B$O@rb߅#R)[*]2@xpZکd:ݦd('/M#ۖ67韦UMLE.DnOB YIm* P,ۂ5LIV\uP6˪ѳtAo{a 57[v76e.)$ 0_\:NAp,0MٶNQ!RmQ$ygHٷ8)CI8?hK4N{a*A/ w+39ei\坙*:trQ]6 %HN2[BA{JrZBsXie7)%J]s[?=s;JݴQ+g:-Sc) OĖ"p  Ba499Mɇk |ʹcólK̪UU=F5ְR)?X^~0T?\{xîV,zJzR,<\g:)G6,A% vjC6YN1 4#χQHX_dR.;xGw2 .yXC;>%K{]4!bdt7!vù, cfVDQcy7^-䊧0kIQ1oT4?fÌ@(@dljܯ;|v {s:۪H 蠘 <סXM_ ^w*CV-HyS?7\_\~^4ԍp5Ө 60t ŸҨﻋ\~/'O/ժI55#XB}:5iJ\$Pmg^hٚ9p`t4s;I[pWhx?FyВd#l <ȁbԕnNd%{sAw& DnQU2J́u/4<ג?[W1J|ZIǃ‚S;lFgz+wZ5g4ٟRσclBfL!"5T^ ~ (d!ڣeؼ,2\OX  Nv_A\eIrVZ,J^HZ ]L~HᬜRZ$m;|&T&45>:p2Eij1`,,MIQS֍C*#J&d:,p_1N|~裠hx#֭#[ȭ˺lbه BW}'U.؍3+sP, {M ҶN3!1?KHu b44N3 U؜F[`#c2hO/20<A7)3w^ !/ΦYjZ^A$ZA^ܗetAB5* lo͔̒"L7D*U'U|_((iQRJ%Ow+j>e"X"Qr:vk~磾)mB)+!Lɇ)1Rx\5,l8NmQ6PVf' Y0A-?$6`]2@RaMGfj:vs~nXЩoUAcfYrx[3I so -=?΢7kvx i+7`. )G9L')WȝAWCB^FJ.n3+Qh"3^Z.R"&pK{-?Zl.y-[͟L#?ۛ`TÆG=PN}8E57L^B=jwN0@{h@# cKA3f$J)w4_!y2YJ\U.fzVfeM ӱ73mA/L69~>as8o(;s aƬ߽~R)MIg;GI@%K_CW1@dJB&K#J ?63C3uQ4l~T {/Ջ36^ÍX;ЕR(;!E6G"0kB ^!CV?g"wlk?wv ql)kB{HwUUsp oTszj 3ȁ٭3/20~ )Пy;so4{u>Z](iKtT h}Ve!>ۋhdGp!.]]L=m fj - 5[8q[s޴PsjJt *lD jK<4l9LPTZJH7ɰ(,)-(p]*~Jp8ZP "9qO6ļ9v.il#FCjW`JꙎZO5{mfj1{8n&Fah2f/K}+/(Ӓ<9XWm G!5W ~Y^zwFK oT Î3VDkN< Kfu #^A#-~{Vyr;#ԉdh/HХ>‹p!]VzMJ֐pjY؜b/F!Xa3TtzrW`CU/˹̍^|&Q \AOm&`wQX(D9!%uITȻ|50p^ڽS}rDNw;[Y\b8'g%;d;/\m@}>캯5Ň_Xu:FC}R*1F!&K-UQ_.+Lj-;ȱ7l6}!k:uls  e_X$DFGYid*xTEo}FֲڮWo15-KV= ^؉$_`uV|06^0dT*vrKF]< l=Qs{kW|{f5Y%Sf.ڧ(w@=Y%O_c ȿ2O:ODmd8GE>P.d.{1$-#5%-&ߔ?Tٽ,-5O9ٜ~HV;.ɘhu ʙmPI:'-<A/MaPz.>.ClMB,5]sαڲ#eC5g;>lZ+Z4IP}}2c"gj5Vt1䏝z6c!'k[:#_獍NyΌfcԯ 0èhCfy ܵ&&ֆk.s.Rx+stb 3y%I”~~Zjq)f{}KC ,Ǟ0{[{ $|T1y uVniafS nCzKAߩ~` g i- g84FG*MLgO3Z];.q. fV522"jmS>+d}U0[`帕 T!pѮw XInȻ6SAej[Gż:h'ڟMb!iT yZ>jGz * GL{\k+XGg}WTdE$AXՁ?"n1G+z,5fެo"d:l7`wWɤOSPBxNol3f^4yPx翆5S]YsOi5LwQ_cl1!SbO!n/ od;#xPt)n슑,N6H8Ó" Kt}Ouߠ"n-3U$N!mi(YrO[K[{Fёz$qZM sYz:yەǺpb7kVhdA ʷi ϭٳ]#4 i}L~VX#h8b{kI)-wjrӷ-|\L[2zR(D=76gͧ# |n.a$H sD%8ю nG+7S1 n^5Q'4VC0=P2sS H<.*s?fpxOSPA qP7s,g@N'CvИnV /*Pδ7"trRÆ UޢVױq7IhVhWG:{Y% BllPp;/}Vk%~^f{;wq.e P!mp .jImuF'~=ꃖ],*g,"áQu.3cF`߭Cv#fEPW3;=IH#e,"gJ| A%W5#+)oygE*uI"!Dzz[`ğs! ɔ=9k}O9Ѽmø4 J]UjYkXPX(JQ$ȜC* ۤC6YRBA#$?%g=FOyi(sWD,"6zߐ=nY8AeSOoN-qST5cXbЖ*gΊ{ı6}n" A9"E%6û?<#%*uU`$ɷ U 5O P Kdmgsw&u\*Xs1rq:zCZϑKzBRc1ۚ[z6He;f(p[sǨe !=W8cm@BR]nVLs lӺb'3f٩x腛 |R€Qd:dѶ+~j ߽i<ΜnRlogW6vS문cb׀#Ṿ8dc9BaJ}M0%tif.|^{SQ5]ѝ~z ͒ZXA lD &RU8=nkso 9` lDxȑͤ'5}#9ZE D *n9Q!'Ez%+pIGu&>F N jk韙4`Dv?[X w n72pnR'.vV}P¶0O#@gОX{Ӽ,eJNο Ơ\[o9} q4$|A7r>Ĕn^'~׮T&>D :VG@/:igv=wT3up¢3J_fw#,Mn biSK{mN'P *3-NQOs`FUՀY{ {/gQ8[74^c>ۼB/lTZQYkxI91m$G'{PMmJq0ól)">> ӱhДQV'#pQe8@ad0Q~`zuP;\*?>n3LOt+ȥ\F^xHa 8E$dXZ1zLVSh56T2,k|Ҏ:;r%Aptbq, 4zJ(]J×D)u)M.] S)JVɣSp!m1Cbkaaߥ [.*x.TpىGc[~y$"6:/M;-*H \vYjL7UEWz>зiN=H[KǭO+c?̭2vP7XIR̘e2Jȳ[:`8Iá*~(fHSE"=<'Nͳ]ƪG#nd:K n-h0F j>$IPCgR=X8bY, 4*tfLYhOⅹE34533l";r | ~$jګJ;1]5uu$Py (;._a^xIy6&|\ uw5# PVfvP@D\nTgw{1J4rhËWN謪;?..k!$[c%LϋsYqi(J>e)D 6zjŞ/MI@\I!@H3isc ťnt/09eIqΝsICcWPE:,},Y}TqHbs#+}xI;j4hi>/NSvV9IĈ,]dƙj2K^}"(`Ӥ#,Bodfn R1t.z O< D>)0fLqF#L<2qlUi ZāmáqjBƈLf]̫=u4I1.#)?>@ BzOe: &M45U}'/LH,?0#P7j>&I2(e=u8 VQJak+7 xwM OR*)4 Sԗ;3M,8O<BqY\k#Lp-*"c4BVS ( RNNMxɳqI $/ȥ4<< ɇ FVP]Ş|1&{W E{9_@'%xC7: ZȽ-cH2%B_SK|ꌊŠπ欰|EnۿC[YPM !>{#5W[4Lkimѵȁݖ c;3Q80_ˣ34'V+LUqU_g'i4FGKڗL׊7m?= n-U e&NAv[cY"57HLI:O)*+:ǍYjGŀb=3ۃB=KR64[[XP ۿR2OQc#C$>'{"䖾D4f&HCk]TUyYP @} *c^@IBAW|E/x㐻Uذ d^qT+r*.b @T!X㌸Ʈ#Ζ m_Q+-XFVe+^`0 c\ IҴ;r \ִ,f&3SFlR3  E;oS'ɉ *T]h(gpB TF{.~zJ3؉ \,}'E+Z[wE8Q>19A}f=p斉 \&F1uւ:ұF+=zzU\ Qܪx2;F>p.k:g W9 Z%R.a G}PLKbS$sk \yo8$:O"?<ĮIɡmR Kkjx@o[~թn|*- 7_5 *O`zwzh`VMwBل%։^, v!wj|AQ_ u O'Eh>#/ &47ސ!C̍~{FYpZ lXPU{u1M"*ϲe[{H5TAGts}jJI}b:/D';i D v8ㄪ̊Yi<`{۵3HTIt S&Iؘwм_ 4D]zmKt̸]Un^qSuQC ď} Tƈ0}5*'PaG}צGpEq)s pHޑVZl_.eDI)KZu y—Ux^VYkF#`GioRb| ^ڝp-UfAfO;,I.ELSQ*& bXiOq{=sdnt_pt#'W9y~| ;lZZ-ptՇ8~,F\97zOFF ].~aVU _ PCӼ ~ )Ň]Yδ)(~bȩ}*!'ۚi$4eb]Ѵ)}$D0C`q!fc~$RI.T#JDix).ÞfFxiV,Qp֊?؞b?$,WU3"7MA*f1]! 7:/wBrbй{3>˙r^qʚR yE֛. hWG.I4\(~W a|V#jK0Q$Y+壐N+B(Ce So\dRVW.O?H꣍],3xjv d8~ ;V bnzь<͋d $,*(WkZ8jCqqڤen2=,H7hDq[͑qlX}Ê`>[ mԙ w;"i-/-RE9tX]^>ݝkT Wл@!j8C@\:E`AHxNAμox3\yzLhm=hfiÃ)k&m)sƏ&KSu8:\x ifGȃHW/jqOq)B꺕9Cɮ2ډR0.tSڅQSԏ 7 r T'o]_" M"A3xW^6{z 65N-*oN+<엏X1\,ni2q#/uAabItu1f4ʙzN=@'WqE:*^,0K JtjbY;[ڟ,5b )}<-ࡩ޾Pm9 '])m^#>GR&f$,j", )AV1ug$¾rQzKG1Wc^4R\҈rN߱O$8 8(on|X<q >$3c+s3;fD'?0MZ@'ʅéj1bRp7[<\)kßgy+h8d VӒ֟ʯxʑKrщr0$^/J g08w p>G87/41R[OcaH~KBBVLU*^€diIDxiVk~YUZZ_,IPsOPx8bb85%Fs`f[]b/dߟ+t%tzE&uF $IvJwD9R clbԬOp0 6L(^胉f_Of3Ԍ TT8͆ap)LxVygc#NnU#ԅL(tS ZjQYϫJ+~TQ<laG(?'Al\*N;#vWae"̸<u>Yr/ Wp$wTv;'\M3U sF}:Jp5y͓*RO:+2xNv2+sfs+S-v>?}"2qj3)X.y f1kgHg=Kb9qrdk KuEosx~.蟇[ŸD*sTz[,>te0G,z), Q ?1Y3y SAAȭl1S!_]Pd*/IبiBCMjD&5Wq`< d#}Ev%d*ðEZO-)١Һ!sB62RSR=fvQHĹGԼLkl_pZžP]pPdzI|eHݝ4'"jaqY3RʻhRE7ȿ֤$Wfk C&q@\y@hŒVK$A'@X-zt0@B}L`}u2tn{?:A~wK OfҡiTf)pg h>Nz Ab)CD_2ІTkQ>h.$]N\#'AHR73||glF j qVnev;\+Ct(pڦd޵t<Jd;tq4Wi14a/K9>fY,+^w0TYV{וu%]8zWiDK #^)9Қ ϔO?*Q3 5h |P J'?M'lݴIpk9a$E:|ε"hRx,_9lF0wp4,;|yBxӓ.VM=n\ouM|mS3 ;zc^gTGIڤ 7FDL eIYtI;2җ +X]`_q#O{}Vٷ'wχq%ش#m@W=K[b O6IƧ`NT4}p 5Lb;?Y(fHt^jCtXؚOC H0vW, a%6D`? nMk~.`22 #Ǒ!@`Aj:YeL3XEB֫S[7ZqκV\9UaUڗD_j~.UMa,#[ߥM(G5uR? U3M  *ý5G;q,-3 `S 1Ǎ퀶_(^:L55vAPz0ujw%!5ayz'k{3,H5[dgoT|=v1S-2fOB=ױ.ɛBbt1T8ib ˙nLV@ a&c3txA!\,q";~:t̵Ӈ+4CD\3#tǬ+,2Hs$~S}%E]|]ˆ<}S*Be"Җ#H.8óP*> 4եg@},2K5{= ݫ~=S)#zr.ts$'B&8O/Ƒ-;XV ?3V@ݹ70aGFw1z-'“(.%ckռReu|]bV (ޚ.{5 rT C+O5s}^e;u8c .?~C7NGYqR5 l'5Ѱ2 is.kPj%M57ߏ&uR]G .>:l 35-ML֛OppL ۜ;+Qқʔ\ÂgUv7HSQq_,]v3c*Hu"\0Gwfu,*PqdHt-nmS,GoNTSc-hg:}kҒ ZlюGYVW-;w6߉I 2bSN7Io:r"-: 2_[5RԞG_ڋy'~kBXL$"Va7IT&.L; η d i=2j,idž\k F.᪫ɵx+ڷey`}*.`!W)Hkxiiӽ:vV*;8*2/5n/, #.X۔ kiT ό˷gWKQ͔BA&"2œ|;eqAGm OS(9D+Sz:JV$8ff:]~@Zb@qp9Q M|I0uۡF0 t)%wuVk=_hx5"wR\u!d{ ,Otrx _86LNl{:J6LRb*bwN>?Fh]R֣|xepֲ>.Jx:,S8PY8fX2ϵzW?'><45Xpd0~419vycʼn깞J%<3$TiXj{)f^c)o̧/a*ەįdmJVı*S`㔔X,; Q[e}ܱg ϖ=7TLHJ;ľ [،Yܫzfo:媚]luW3`re`cDY9$;U;[\wRN $AƥRm+s b gYe ~ѴT5ȓ^W ?nK 5m i3l{Ò[R5 ’28L{6~D'' DHNm{o߶4A|zuЄ~ZaDnىL™C]oeZy-Ή#(Qj&*݀e:HёY@Yۚ w7pN‰TjvDpNԊqhYH=z*J+8멚w\= L0hEvj)c:Q,+2ƣ` +m"y 5Na&-. ;e5/P$;3P2v!9BS08zŪX sQW6tk@O$fሔC^DKVc /mi|/ū%T XB.angou_,"Ot+oEr2wpܓ ݶlc%}Z⡳{-$/L%J+sЁVtA&u۠;pmƚT5m`ڼ$s7pb4-/\u{t׈Ug9<=~ '%8 4r%/Bmz#'|VݼFF.01nz 6?3aKs.a )7,TDsm͛.QP?R7.Uf\/'{13}I8V|}TIf%0| ʋ1C=;QeRݻQ̋⷇(q VAc]߫-т JFê, ?^ GYPrZLAcV=tYjA k!eƨNzlg9D1Շ:hh1qUgTl)v'wVҏ b`[YZo ;/ Аf$O1+rC+\D4\$&m v|RS(Am-l^1$w;{.+λA@?hWuA)m׊Av˻c󒵋Hʩx?@|J{1Eފ_ùb<qަr2$2jBxl} "}t< 'X%8r%2̃^aj'x',M'Ȭ- rIAظRg@_t}Z㮳lAæ_g>ѬT%o`e2DA6}11J}Y׌!+E4WJ8Ěj6L,:y=ۻ֔bϣܗ.c]K@j3GN/@+f9J'p V%py _&H„ t SVU+LىE'>H=%~li5&%.o gb.䕪@z)W'O\8BE+PfyhSi5W]xGBA3 h)C:8+pZ|~jg6m;!0N zϜd >[̹ܸW i5! 3 y\d!][o<\Or\{'1] D;CpqFY3X~&g>_߯^7y:y"8jвș[~ d`[˯ *dvN1XՕ\]tL0 M 2W/ H_9QЕHx?N(rNR=X71@ [!\*k>7춿{'"ŽtL=g:30xGKqaGPt"^f` Q+|z,y\-Kk;H3v` +j$p35 ] ,ܑ, :t@F=7~RF)(%EmiPV, 4E\! ss_o]RX8g,Xy.~(%(4Szgu u97>`ڗ C\1KdĽSr'OgG% ~ n aaL2WRC4gn7R*C뮥6EՇN mRq p< '(M֜&IUhlmYdqt.H:VVv0aR\6$;>.%%((0#;TN;mqx @d2žr8b~Jhh}'_'xS NS= tW 2 A'+cJGDF k$K Yrnb**OӔӭkG`. _Ah7p*( 75 w麨rdF~O8V2J@RːTDF[m^kiNY%fQ3Oxwv뽸!=s3d9·{89@ UYEi rFU \OU#FAW`2 \r+V?qlwa/:8N%qlgU߹ӗr@V_t?tMl:&4H_l M,"d5zo7[-o#k>;8&00rSQ!AfyV{++#tז8. Ś\{_^{)x@@hpY &lIh '2.4nVkY (Ok!! ]S/AqA _)j"O~]x\!}kJ~9ɠr%`t b[CLvՌv"^I4ɬ3c1}E9LGޗm0N f4/9@wK!o}{ HEb7xk!v+ -}k0=Cg x$,= Tr,I?ĢYW|g1*z3`S\ngz(nZH_2#aRbH_M-H|[L ڴk>KC[BO`捩x&*"}K;M*6擕16:DJhu2 Çls;7}5%J N-_ EJ`=#atma4T}TU-nB 8|${dȡзpxFY<ÜtӫіPJ5þǠƃaUL? ${_:Cz!hnxvOӱ#;1],ۀ~B`JH%vu,sD\4)r Ȧn=)wAaA Fpyw[LM V)2R%<`\0?g_-R{Hh@#5V֟3[j}tz| w՗ըQ5̙Ȕ\^ql PN,2l7Z:R+WˮV=c 5`|#8)Yࢾ#ȇeE!mZ_P 2l>iW [h(#f=%S4Mq L_+b00)eC桥~Ӄ${d 5f>\-6?[{lxt%58[VWB|[ UŴ#mⲍ9/^1-^oq-~f{#EǍ ntK7{yй*]m ^3@JKA2^3] BO\?xmю 1fq^eQ娧|GK??:&K}-9;Bnu|J0hY!a<@`Lێ*&ʖz!MyhCJm`r .P8ggź>!Z!R %pzB"k%,Ȭ1׌3B6y.',,.k~;u< s fcfE.s^Μ?aAt-Fh9GbntuJOZͻ-\AZ= UPŀmfKO(96f^8M!fz7+;V1/brhK؃jp.Av?5q Zχu.`̼l>+0ঘI& #N,K ѭ5[1u[fT8*˷ڝj -ttXXTQ統.)ęýW85zTif5#lteQPv#Yֱ7$ջM8P?뛗ul*P$8~ D[siJzߕDf[sL٥D?vE544oBݤڽl5%W }*jy{&1VA 3V܇%x-}uN_q@.n.&骎R[z\IzQމL/;?<(7V|A'6q|TfqU:?xGmu떼2V/_}kʫ]Hqwt Ug2ƌSxd@w0JFOM\L'PH3\k66~B!N!9yI ##CL>G wN 2ڶ\e2{!D$>@R@6xnà0 iq64Qq & cw01>7ڏl|`'#м#L+'(T=!bi"4:Ed/N0nD;& zURۺ#^lw=tRHhl{!vWnXL̬S-Ļ*=~+X 0+$ 7 i+rOdy4g Ã穽z"p(6fY:Cc)\?N4#U/7J,+'b;WA$T1զ ~: +QM%*F\ X>;vc0~1V-`ԘnyvdV(kv&mAhc>vGFvjT&3J134 o E[  ]Y\[*G, D]8ۂVث#Q6n_,Ցon.%J^,FG0[^oE֦ \s ܑ539/) ߱?H:HɯV ']SF̚jz7-rD$ƅrARWu̯EϝޔN+ E FψhS{3X=$SQ>Tr1TW&>1Q-dg˴a8T 7tr^b7f4l?^m_틣Fuj2dW[-ƣpXp pC"PGnn;L<ф6NޡF_I3ZǒJ2a<4]Y*[7"qZY+<9)u%#8*y?G2>Ft ]sοLjȄw\sqИΠ%{$<[`!+Tb t:K'ͶKy/Of WoF>f(v`K5DŽE@+3h!G,uJ/\:^}үkETLT(Xi +Z[{B"_t$6\Gdx)_X -~ɍ~{u.-:g5 ׇUI> 5.{YvV qIQW 9k T5ɇBC-3a>A TYg|=0K#~A..];nϔeZ@8'G"- QLyψBb6VWh#+}MWZJOȁlT6As$y& aS8J},W30;~)$9jDnO2%:.: 8@Ȁx>+ !͗1qf҇{GJ&S~_zD`` Ŵ! ]AEMGu<Yun֥{8X5$,X/ {a R͍%I egkxB `"H4x S@;.'o 7bj -P_f ;w86FA'妤T<͈V_Fv'at]7X>3CسX#55>6z9}.ԙ6Wy(Du=e%_mj=P}Kq+9$xx*=K2=LF#Wɓ867ѾqZ2EpJR#I8B-I_h8AF/{}ӫ*H*DA`6 h'2YR\4u: %oeV>`m!CɍiEtұ'⮃ 'p x*E'nMUjsH>~,Ǚ@s` syM][2TկWH(8/wҐ$"ԡșȃyz0hMހ99>ӹEMeI#\qqz./Q7TmkJI;̔aC"(S7dАaHa/C"\ ewչVn!,T}*e*+Ojl>p`7"IUp2jyRd%I| ;b`0f^Ba2.ҍ yDCt&"8E\c=/RԴ1{6}l_,%ij \[af8&GU?%rKpAo+q@s!od47/q)q\7z# g_J䪬RUvizd>]"w$t#d)J՜õ̞QwI:pԤS;_EGnUkO OI|m/cԌc9F2G]Rp(tzVaY!/ }`.g2 /*3;aq9n ph~EC7)b6H!Po?|Cz,GaQVI_.&1<Ux*Ki4X,EA)biq(J#\em<1QLi$9;7 56_ baփ_Y{!y]W\׍5N%eLTfs瘯i`{ ~JIk9r*V$eo| ^j[W@,/Uf Zd[:,$j =nh0Fpe֛:|i@aK@٥Nnk_gb^Ү]ӘnY=jr!3cَzA5{S"OatScZQ61h`IZx hp<'Q}"F<*gI;fc῝?<lʞ˪An<Җɗ2gT'x릣zG'TX54^ŻF hpe {VYZ( W}FXw*Om%?2^U+Eid/_11qlJ+x`U#MO/}?}̹p/upc$;FUt*Spz+Ymq̝ӌ 3lޓcUs# M]k𶠷%?~My-^_'5CR2e3 7ʛkj`d\!9on nz0lT=Z}Fy;1qRwjwkF.*fe^t@J~׮m ׫u]M+:h(KD/ajAɂW>!JvF HBL^KN?S a䗸DI&c52klM!N9"q5@w739ffu{=<_iw݌3ɚR`/*!ʋP':2L‘w}V=N3)+(six XҖDEvFo3ڳɯβ.ԡZ.,hX#4EbO@v)#Mu!=1Q"AU4u_> |6=|&`s#JWI_!pm,W|{skD 2HLEj[4u&aD0~-ϾХ}q#)B ճ))Z^rob#əa3!ٯۘ Um9#| -Dԯ/"x[sdAvvOmwb{*dbBVsdK(VNNSS.[i$T=_Ռl dr{z a?޸jϗ{y6l;SW|z&=.r; s!WF΋n#'0L]2/9~M h'I_,K A͂;ƤO0 Z5HKC2!ZE’"\&YZ0pG_0+x"O8"x P6^2ji ͒"e ABoKɓ%$TmvHӹO(yQO℥+Ʌ~3RAH{NC;qkb]U=ǻTUe~ wԤQ@넎I&e6Del$߷VM;zh-XFn[t{gk4]DeKr#A%ONM7+rՔgm8qD'>"^{1I:UF\&jC!yEA>d 21rѢYS`juA{mLP nC;U \Ǖl&xC{GtxxחEJmģ9呕zg!jtm9u(Pvpn?#-O$P%HEԧ !M{s? UY8ꯢ._C m4+4oe'tK/ @kg |'DU*&kg8iu{)A;'X#KXK6i*Eg .c:\]DA8QJHOk}osq@Gg,ur S]w)/ $ܞӖ )E(JT4K[pY8uT$۰u%{Agc޽Z(\܇a#0#ra|A3w+|wHa*Kxw_X,Ǥdqs?i(~>o/Dꞥ& ^!>)-qpah*c9~69D4<Ճio*?d;-Spٽ5kD,08;>i0K)JkVOmS(ݗ<1GZD% ?/Eٖxvc-;8Wʯݹ-77idΰ~Y[~

    :_=<g$:44(y+&z}E+A~ R`4 4di3ml7RtQZ ;*{DY:hǪ "+7SSކJrscfʹg#J)^n9 , _70 k0{Vŵl8}긬'/"T|B9^ W %ŇS]GZqVE2nn8YYxMs6Om0X1lۄ ,ЂȆN h +p1 MSʦh-<0fr@5*!Pg`d0tgQߑr&hGV(zp ood|v!T[>sE8XOB5$E_y I]Mjɟtp1氁ldZHP3]6"rSD2' 5ǤFk87k fɄuovmiƯtRdRʕEX\j$_^ˑ*ʏ.>`aĻ#^I~OI-B'/M&)>>Z:R/dUCӜem~i[{ZdतGy q!lg*Фĩg#!ȭ[ήrA7mH BO2HLF ݉Wő^TkE?Q/,?j V $$s*@̶҇T伄߼{25#Rg@\,*N!BYMQ\%fv`%ނu);mY>~I l`P{})?^Zcc3X*,ePs9T?tOBQ;t;~Oc I 7_>:\ST|35L(9,茸pntx]_?k@*r+ UON]zA$~nz8`D1_1*uޱSb LVť9+煠{EB&{L38z1ISP&= WZ:ws/yX;jgg3XOfyIeխUyIQ6 mSZEq a^ta&lS 'C3N;!\Ah`$S:z2媓⹎$+9|L{oXL3f7}@;A{JG2o\Nŗ`ON/Euc|]<\ܡ>WҳpGH¤ i׳#(1S('֔Mo%wk-'EF҅+HQt> ĩ7\|c)~r5o; _5W8 0z!ov)#MPL׎B}'<,Zl&@3%зH &Nc B{%ayP-2ZQ8Ymy<Ǯ4I{o7SKQa{ YJņ+TIpy}wϏ@}]EBVJ #, /[;=L~w୛PuN3k dT%Bs0L?fc,- 2M^>d'e/< ~A:8! .ۣovf/h˴Si<ƶcBkumT>fP-{#|DQk?uUy]bObsdwC\.!H) Ra}ܨ՗}C(3XIDI `A>L4 jh)8BR MXwC~.ւ;It_tK#/8v {c4~Mr+\˜C rI9y=CX'gN_*Fve2U)0"gCM(.#ϥ[nuZV+vt<^;lD\&J)Z{}hr-"}+CV| )ZsyH+GPGvi~ԎS{RCsNpi+%ssrZQ#ڬbz UUW؇2f$I$)OWxvhvf;f +bI_g}U? L 9[rk^{4_sju]ɻSw<6ɪ'jJoWJGǮ璛# ĘPZAנ'OVA/JIfQQgQv[ro MђU?{kD yәXs] uOEɼ|=~`g5䆺KMG.:|uD z^{ݤ ]n bP܌ͯkB f݁) ?~WJhI|:WI?~XdbWcnlkUbb dNƢKXKt6oJnU60$Z;ע!^4]/2sdju>[\ݔX:͆*-By~i2 n!}K?f\0 ug]X7*3;èg7JLJNq# HNu/iؗC!-RhU omqIiPɥ0P)4,(sX d"_.Zm_joDY:MimsߠR:I 0' vW{;{S*lfU2/$K"CNzR7㈻ dd',pW4 %?묈aXn%mDd$'3(+=9#+!N7<q*&fFGk_}T*Gўq3~| dA?Bo@hY ?Kdl.uc-"m Wixd^[#9]*+dZ'j2p9#J2fqt9i^{4G}{]JE]w|ħ$r%lq lWʣ299hMgI`oFYkE>6{b?w`9`<)i ;f>9 sE[ڴAI86?h+40DAgM<% j@/DD;8xxI1{?e@MVCQt@~k(pa;bxy E !v)6..N%K ?uXyX(H4>E0TD`fK#-s@Bb O{AoY2^'MXP}FNU.e!N6WpTLG_[ߣ542!5t=~5=EID^GU1,GuH2圔 5 oLk QH$sp uCJeVFpm9fЊg-.qrqYg\H/Sn⭁(],3.:0rgYeJѡ8Xضqw_Nm|JF~K񑂻 HV3s=#Wi m8˹gt*sÒnK._clbfD ~RC7(|37Jm*ދzhP#CMGoTB3@|n Dwқ _rM!5 iz^RG`ok=u` J ٢3 жя$>R Vԣ~%wpf>ܬV,UlellyHssׁq0< UAtMK\eEcqchVEgh#t & 9-ubZ$ae(Uuu~=BlGph;gR3N]_YI _dm4|@Rta0 uMDSasP|ދfBrw.*90t 6:kdm$_)O8{!`b;ŧzYR/俋lD|&q:`2S 9 +{ڦnC. %ºEzXH@ɘ|H'D9 ۰>0=9-5/&sMw&(T9S>1 3p-hwJ&} AH)aDNeyP̣Qovwr%|,ǝ2 - go_0JyôDIR;"yT6n?=tՕv17􂛰zXD `'74lj#c~*z61j8sq~?\br%[h"<g>㛬qδkg's<癶2轿L{0R'F(Q6m`2qt `/(סV26Dz:4KB$c>-ɯ8_T2M)TUCWD/zphw\vW=%xfnuuk).mOCHMdoXH -֍Ud1ȼOF.п8ru F2 R%wVSy Ѷ&i\~n Kd7_Wb|zxG6RbjJFq|嗘S6:9, 4cĵ.\od-*+!iMM4FGrJdO 'q:bgxtseJ?c~"`"P1ϡUV}ڍu.- *mß,z3Q8][|n}nkf$Į#n6m(`-0)\TQo8D34t 4xhHP;a497f}߰a jcCOpO3Q:[z֍vK帐e3/6.5#%JG% `[yEKv ;Tf!G-Gyɻ$gԂ%OH*xABAK+E\sK !^VuzZ&Ɔ6œD]ҙ:K[q +i yѝrq/)ta]iIگ|nPdx0#:1#U0D5A!R ĝcғ-_TB-.^YljU&NiWC8P.&oۍߡ<@ T[G DLTPfP)' 0u@RXYtyȕY ޔ2?9:T<F ]=Q$1dg}|p2#RBty}azczDE3nwh7Ĕu .LPPU~6-.; DwUSˆdogt8K=ܣۻ24o3naYSY 'ԉ_oa 'X_O9+~k+R%DrKnm.({ |h:t"l+3+WRׇ=a@,slɸ;.ꈳ%`Oh~LS\7\r[=mL umdU Iar?vLs!(^8om:  Ars A'x1&=}/Wtwxt_d%v۰zM?]PB9{K:5%>.F-tEXl Utz[.}zpǜ!a"6ݙ5y"enI@<]$pOqN0K[P3*4Z^{8 cGwu kUR/v8stnjvYY޳|/RLpu͛-W~KH3]f{< rt\sSĈlg|֬3LI*Pm<`Fp|RwIƳoc~ׇ. 8K kQ&'+x7 rXE>yRqb| z!ـmIa$ghϾvΕ9>Vj13\Vxa|%ٞP9xg*x}3 ڷ˗wHeMFl62Կ iŋt!bJy $$sc(%12mkv}TYcib}zΖJptɆڥmW7rb3zb]q9F45U/ned!>UUaZ9CQ7ϛWʚ*M.5#¸B$˓8K&7^Py:9 {DdнгsCʓ֞ߗv Q&MU#_cNlue)9B𘃎']%?BSiY4TWsIJ_l !l>ismWD:rșA}K~(ʹpVN1*5:F~GǨF:~(BAfK2,,$8BK%ԳgFrFAu*!24>C=Kd河B²e}TNCu+_CSJC˚#XiHӨ*3>ɿb''ϑkV9Y?_&C4thp2|RzACfWz ,J S8~բ'dEi[ ɿ`>5;@1Hfx n~9H+OHjھVC`\jf YhNe@ιن<8;.ܴEqv 18/JFNpF `74o&`㬸M.}E><rgLO9;P<`]ٍw2AtǺQpH%sB} }6 ԣy }8#ƨz.?'=zs)ښ}_d:] t}(Xw3* !2!3uc!2 wLF94GO|CS!oE8xT"Y!%8ke S6rp^aXhu1`u0h&@hCLל`X#>pK˃<>(7>t)ß^  Ci{`.Mbv\;UAʜTjf.gBc=JG_ͦ2UsfӢn#zP~"CKMd~\SqR|ElvEf hsL\\%Br8 }i2H(B,9vC@͋?о,$Ti$:iv4B$&ډ/_%."(!pͦMP(HiX†{fʄHråҋ\w`y1z)0zc=ڒ yoɢGY!RL %8ԳZ&IBeM Q(/zr&(stz,A:5[A{ O \K&u.XYeܗ2`V+xCȽRĶjY]wZ#@>_4C~i}{??J [PwA,8f6_uDIn(sR̗y8`k_8cPKJatT 72eDk\թ^rBT|xB.OM+r~ 0 ' twKt?~b~\duRVgۣO f,а{< )jڊ1]O)$(u/Lx@l-Iez uDն_BLm qٱ('„w9\:LMDTԞZ_eչ00 .vФMGQ\RY"dJJOEc,$ZAꤨ)) HuI@6%AXb-qxn>Sr˔܌1B %!RەW1.rS@bԝ6\]M#D"*xN5M8㵋ЁBXp-s4g`PbDh_+ȧM6$OxDn ه=Qߗ^/LJ)5oaa2K%65t}_J|ܢd!>dE9%vBـRTGWZqDQ2;1ޙk 9تc.+POÿV;)gih2fSrx iף?mLtBu$'ьu(4(H 淚 ^a{+XEi i3+6tPhUbOuAjgre<;6R|m d)B=>iF{<=D-ݪV$|n~V?-$PwHft'v1=e(" ! gsJQ~m"YE "V&͠EQvek@:)0#ҿkB̀Ц3.!_ \rCge[j"Ű;jE?Juq I؃ueo]O߂ B8ѢrlQݕXwZC}u68(&,Nx D< L@O+z~ _|y !Qo|i "Jp:kgx9E_;q 6hY㇤)Ѕww7@JYWXL\q],&Vh  ?=J934~fB©@Ftzb,{1iUhQ[&5+ahܚ`%4UxECM$b؅y=W%+'&qC?wf/rf_ݼ4{jK:KJ[h)X $B^z?ɑA1qz(XKSq|IuofW ֋DzĨqK3Ւ_c23HyJEo' B(}XtVwڥ7ahU XI$ D+Y*CF 8҈꾉T* .9#ԗZ?.8|y}[< kqgژ>Yi Fcgf0q"@RIM٨7k+S*lzHDb&r ~.[dL/HYUJsHg*fU '4ҍ ~{ldp.yLPS񻞨4uIL߇gE?B4ۼN{ʝgCƫi#i=.yzR?SAt^ETEƒO1 0|fiM;I]=NrŐ6迦5-.D"tqXuA_8EBEjM<{y"Q& UL2e7KA88fe= a+kl--& f84 {fޥɈh]X8GPy@jQ@`Qͥ<`5Ҵ\6d##^2Ο@K/ %K9d މQf+Ÿ*f`>,Z6+J`ImbHaVW͏'6PcpPMʷzDc1Gs5 =~zTT]WnŨ{(q‡^+ fHnxLY3TV1ו-Sm!=/ڀ+v>ueK2CL3%8Qv,RJ)qX .'3BNXEI?Y4tP-g6Iٛ ;c2zG{Csv1/N CW6vxfXӣ`p JQ^~@Ŷ>3VVNRvn8D$gI bxv%d^^yVHP"i6{n[+N2RGTt:Wx;<){'Ki:Uy kCԧ5{ZwI)g[w!Sdt~/?7s#Jxt{K|E\L>W?dG|?sveR_fЭϩyL2iCz6wn7kArzN te>C+Y09Q'xXgWda@IJVEa)پ̢lШM[Xun63$Tӿp/|!TX?FޖRf۩TrҰG3 )4 Fz,?@Xk _oZ?9hbuAvHWsl^A4M^'|Deġ>"i H\{108gՓ3<,{|q`f^Xm{6"/`ߧlPcS|yZ =<1Ġw|?bKJϩJSsM(1r$c|ək+P{6wNK]!87N?LGindca:c3M S)x 7͚!MZ=Z/&MZh>7U0PA %RhL3pYBX/5;h6/|+ׄD 6sD8-Dy*\MEj%3 Reʁ Azp<(N- CXv'yb'(9} B0UyCQǵy3\G+dIOwchs@t%d#ڬ[Q*W:Cv*,m)*NS軿d @*ZJ*r7ft$4ƽ-[Ȥ2;Y0/G&D=/PFHmK{ڰoֺV *#`} Fqkyz-;DUHrQG^@Y{ tzKx DPRR<@D NIp   -(8/e q|X̟fBa'İw7C3W(oC߆[PRr"mJ KE }& [thH6K#BEJT?t r5n4^R" z\{1ħY?KʗGN{@.TAq^CBƠtN,1EhAw0bQ<aZ D~m\h r0+lT.RP@;iRϹfU.w{5fc_[.BXN)駽2gm}^G[O&S#}Jھ,]]V/n0Ns0ZcX[aVԖvF7`Hi3B=)G_P"gnn,ؚů 0OOL` 9%q.Ա{Z*f.˕L-ל-ExUrJ,AsXJ\>97DeoiuNՉ>­Z V4.?!deۥqZ {6UrWh9TsaJ(݅<̲ )ג@>'BHUD{d`=hK -b^&u,0'OwSz`;GTkV_„zOΝu,+kժi1c:īH8,Bۀ*pn&(1 +RޙpLl;gaAtÕm@{w_o'n!V1AAAN練qPujwӿ|4zBIXLTQ1%\5n*k2KY=g{|##1Ά*(déXKe^AInu^kz5A?0pBX]}cT5W'N y`<0xh}EZ%t~k٫02q1X%u5@ϥǗ}NS6Vuh6D(jof9y|rsnC6*yx ۭZx#g?=΍`'Q̞J3_БR*[\ٳzrx+ک ø{d1Jp}>tm_Ao3( Ka=ېJJz]8woӳϯ̎'PQpb @ hkf?g/P\wedyCgnIVs"6"N2Q(Kajl =y#"&/yHTM9鉿3zeB0;J "dҌdgu/DôK0 :6, A`*bVS{gIkw}piYr@uQc)NF{_%'/@ȩ4$c*OUu뤻PӧT&8q}e';9aa mCVl%W?Xu-:U>S{2tn(\<^ O)|⮈P FQM/n? Ғ+q5kIȀhZ#A~_'hc"4*Ra{1BBejHw.{ yD8nrR a&8R P2ԯ'{U"+=)j:ϝ3ǣ>Bg0.BSAk2gW:vlc"_WF&K5#|r9W Ja]I7a T?ӳ}׫M: ߮#!e*֬06rS;05!GXeJ?O70zEu^ G (eRFkğswHwEά04iC]iY:&/n f.BŢ^pP:.Eg*4-J:M6!ޛ7/4dBx4X iq薭0=G8ĞK䉷<=+qI7,IYoYsJlN~vn2zU8Ldw@KhWУ{NJ*pTS+{SHp47.kk+T#9ڇ(`E/3|f=s)mpJai5eC];Pq:wc0H ]f6FB\:ͺLӇ$,YeHޭ:oL_#a>Vu,* *(SNUrܙ"<-&!LCHʌ@eN>L]"0d#G\qiv+}J &;;iuȶ d|Ėuc,.#4tJٳ1pm$%U-0 j}8Totl(lX>RjsxyrMl^%SP4byz~Cxc0Ck=KaÕ&Ƈ3:gGljbG~'(So*|,oŵ'kB [AcFg63,>Lw2;4 xw ݑ<-ۨ9'-aG9*gGw͵OFRcH9iQ%S  #|m]$rTJNrpyQC1JZ7Z uF&CX{UT3=2 7KVB ^Y(kh3] Dz$)4兂f,l=})Zǖ֏?onQF)ZSĀZ fVm !4,|;qUtoDѯBp]M;e4[ c&}@  H w_c73b[82H{'Vx+qW 0xa뢼;G7RB\_4 q yLҥo>1mvY =O]Ap~(چO$v44%5Ì?A,ψ8$ FWun]HThQU-Qa #NP?/m߻Ǣ:d#Ef t{+S|zDZibND|HՆ56 0JS^]%|q3 f(K.3@(Xqv's+Еo )P|U=Us&ǾqeJntD%qrx@ЋjWTlPU'tӜf 8蔅|,,W)$Vp+ twED";WRF4W5]Ng8}F5K,c)lI%X(s4Z οt+v[q"2K(X3uokږ@5Mm^SS*pM6|jȐW; IV%*$m,i>EzauR +ܣʟf'1nǽS2L͒eҚ?;10n?zX,ONlsKO7( ewOcwWq 0Bqs7rV{$jAx)P{JkTbuEہp<]`<ח#P.%dR_xr9"@ϴ`-h#R}H Vb̀[AیA<3Vj"56 /#%㆘Ê0n~qM-ZɆ{bʖ)+4ښ 9iYTa˿:6431"YoW%;GH7;<"wNW{ȫG4F*r &bCw"b)`YVkT:״I00mx0:A! `6!s0sAi&2rBxrc1h 0d\9ܙ'#za yOeahV }Xl ! 2q {>hedziVD)^ђAھWTy,V^*f0:} v{5.^mɛ؟$ 'K4X8nk%Jv0_Vܽ|Wc(,pM6SklLأz 'dxEjªUe8 @n c!9 M#5R_G0ʍȁ.Jb*ПG~ڰtߙ'hq#vA[lǴĵd=_Vb d''1gܖ<8~@HdXpMROXg\-o:[OkJ@g?9 w+2*aM9fQԼBU8N#xA5,fb `oΡQ^늠j! a9ViFw-b檡SR`dݘgdf;& 04ވB/ 0[{T[q( Dd˅.DϏ,- 8^*fÁzlmUo&HԧZ Z1ᮃQrZ8nuKKXNBL_'_ JU(?"6|:+f.5G5 ڔ씖;!L],j;(23?: BtR4?5 nrֻ믉}-26+KN"d <ۡĢqQaw0H~ѨT8c%g@a]ur}-82kcln7'-^6H+PDz&yvs&n5#6$pS58y` )n#csF/Y%oMFxꥇN9*(/##?Xr(ʳnqQPvF"oY"[׸Yp80`a;`H.ʥ&4%$l@ !t7hI$yQ&F.wiɬ~ٶ6AS+Bʝc;XS2Yސ:Շ mlJF*@_~A,yO11#>GoVe Y΍vC|ޮ|n]ax !*CP$@O;{fi#,^aZ@Pᨾjh =MF@>)ɛwj<='H$!e.:*wsGWunnta߽1d{u]0m)]@P7ٟ*_FG%(`&~Wr+2bMDu<;3#Oz` >x}Wg%j6b#Stix7Ow)ĉ(wW Lx~h2o),q {G익 ~Ճb\/) ºLl[py}M^- ahoەCJie]y|1@]{ĩ(pʅ$H_` OtQ! ygze*({):r"/_@cP1(qKVfYO6k=ZcysB)cLPVs5iWpժ307RunaFOl|^p96 Fz2flV0 6N^jSvarn\A0O aZ"4Ԥ*x =nlxx\\Eȼ+9~!(U6{h`^qXgA1UE/.vg_t/Y {`ͥŽQ'Foق!K@c*4=m^W^ q؀ZU7G pdx$X;7_ \uCЬ?|>ܫva`0gEWMIOy>,ڪK d%;~g8 ƬICA]m͐9ٮ{qT*Q1uwĴ\2K@ͨR,}oGy"$_vag8B[X^|z~,ĺ!hiG"bނ&650r$V!r:ݜA$Bο\l(?N[Pvt"G GWhٗj;!=3N8=ojd@`21rS42e}ﹿ \Fo_k.BYC|H1ڡmW䙅D! ɝm0_`%sz$PmLOS5˦m:6giU%PdջQUhA͇J'ALO3= (v1Prܒ`{!1 A Nq:~GOaXؼtd^j,XО!I3xyyc`S v=p_4 ԈcB#]*psЗ0MGh418x]cjP{++39%G]8j`"Ofu4iB6gTY*P×r-5$l'u"K"D^f&8/mjWLxw K(Lo0pd@U#١(MC=?#!`[NN 0Ad]6[nAیϮ'rH<͏CQ=BGT#+VC2AXobRX_p=DxG/L?2+40tgNIg:02$̦IyBp9HF /PNCvrut;2:8eiX֫.EBgsD,խo>I X-Mdf l}E!ݹBnt1mWMdxzZNŠCKfM"k.ܯY)&if:C ُ&]pPO8OU&}ly/L{-b@ZզlkN_te/i\[Y˘F~Ju B(t5NlBEetТJZjU!\^ȱOieB+}LN/qѾу)lKA8[`=a I(sv[0a`@мJ[TGN \YXiXM9TuPϹIk^{nxPS'΢{bLT#SFga`u*-w:%`'ם;/U<,. !+dlK8ɓD4`͋d1 )s=Rqm1p؃Xxs ¤~μ!L3?+a jO&o֧wn80髩z@acȤ MͲph~zmRkK(_ѻ56*0p<47#4wu 0~ v<6 <5I3Gv6 %Ro-i6&|9ea4h-1-7sUtb}=2{/hĽpCdr^^ zӯPmxtN]2 [ZqFuKcWUK9z@ ;k}Gxw"Ka27G=wUOZ˧y JmVD=}ۏJ8]QU#(8QN X oac  kQVZ|QohTOHY֍OC`ۛ ,.Cw߻wOaY:ث,L}-FN'g{A$<_'lkB7<֮{3ϊD_#IIX|HnoQ!D\I/`n d12,OF2ث1IWj+H^Yw|f睘|q=D֩ آFڋ6y(kߔ޺;3gRKsO2 ,C7Js:QUn,@.!Mr~pђ$ܨ ΦC,74nG3 hȚR0&A->Plŷ׳^3b]ڜK2}krԦ88-77<;~C{ :7u/̉ܞԺ.Ͽ07?5'ZuȴfՉv=8Bq+y;4A@9D%CAbI\>loE dZ tːx)aڴf93b3o,Gԩ2]砭VIRfxI,C491(Wǂ@UNTG(CP&Ŕ)AsL\8Jum]#wK?Cp2:gM.]r 3TXr^7GYk L`ROZ:X"޻RpW>&XTɓ+IDV<UpmbɀZ,V,nP@15K=RHR2loc!ÃuŪi5ʨS?p-b'x>ӝLe !÷|<9hx$fU# q!*MT+30 Mܒ8;r9Cvqk){^5<׏HUxǬ\Z}Ajw,/=-Ǝ=+~ҞYβej-aؗYޯ~f6\k׈߂ZOfhgqOl+e81߽]SLs HfFC#yH?DZOC׫TLIf=1=|)nݮ*Cd Vps.r?߯'>_;Vٰ`Iek,M.|)@)dMXD :pʶ$E)]8"78z@15q?ĞH(WO/Scqc'MA`0>Osޏk~:ƳWh"l'5.ɳQWl rF_jƕ{ሓ Ґo忂+ <[5u8NCkv"n=Yƾ2 UA ݫy%%s{W6r7]ig.㗭2&ځ[oz\xO6K_ޞp;O3UP7bN\Đ\h'^M(9 ,3d~Q)k1Bdw*ʓtB5ZNjRZcz||jyY`WtƄ*p.dDl翌8z ܾR>$ KP zxQ>Dz]OIeZMJfY <+oпqH^ V86Ӣ~gSR݀2+Mc+ A(١L9U-$>(ZynW8gETfy^X`ݠNTmF-c6V;7S|oF[%)I\i FZ8~{EE7hz*otl]ǛIh_^..hv%!k%^eǀ~5z˩ V˵F"YBu.fe#`>(d!k&l+$s1{l~#4!642j-AWD>ָg9^rp|[~vЦSwj>i#†3Wxg%-j$Hx5; )gcs򖴧cM ȕoR(+3O3IIh5`*՟C1w, ]Cш+nQo%DBʅsܨ?OeFOJu+I?־u-F}4 J͹oMp pY>+SŠ.Dť;Gg@_I1@3ѽpsܖύo!# P\E̘:5t7ri/hܾL2HM8aL_3g/+ؙ$x+9vwމlvdpz .;5nUg\6o6F' mvhAcC1d&~S}2JBhumlGWCgadzeFZZTV2r[b/A`=#B 3_s.(҈sڡ}L]>l3,#_yQ(cB)P.笜P͈~0i[ 27\@e*۟'{!~#k*4p<ܮ~]R?g,Ŗ۷[܏k^yK1MMe /$~_:7.7*(c+&C›q!Y =A%t_Yt]Anň^.#7MqP_il+[Τt9 UI*ˈdzy-a{31kPd8BA N68FF9oVB8SyM-mP0 y}}ތk}h:?$8Ɖh9{^#csjYNCe yKkPs|,@ygmZrvD]KHnn T!4'%lڗ]Dys!m#- mw4"ƅMcT7>;fcz.k9d(=_G=9U/O!|??%@7NKqj; <SZ3i%YzQ^W6oR/RIfRM!n!)\ĂSJK.A%LsT7rÿ.w7m}֥ si+apЖ,1= lw 3<x?27Վ_wʁ%E3~3kI &+bz~\IQ0ƻp ?+RIJLsj)}tfNqM -yS3inpqӊ>u$]kA8 sC|7~7EŃMbEWRtJ> H06m, B0TEDDGYޒlu{T?٫}o0~JFaZ}@"f}M@ݽ /({K)3P=x& Z*lK8 5 & E6qOld@)8bi(=Yae fQ&aM\ D*/1PBRU?U=6* dZ2O%_&AkJP_{J3`ep sU ."u: gW  F[ueXg 8Jca]/CxV,s9(S8OA[/0n*2Y?1.`{; .I1 Q:_1xdǶIٮ+r qдUbz,[6=+yHkBm+u^/x#|!kF1BgUxTbu"b*!N;)ӣbX1sR\iʼU:k:_"E:ƌ͑p(qғΊN%s,~X9N[4t#zINӝgR@2+t]6ZM|"跆7LkCI"YHݹgn>C #9w?{BB!՟ǠRGNS[-S=d Z"` E8 9;4\ESUխ9nSHR-;b&/_ַ|H >E63:3Zͼ~G:=TO!9 J[3_!QC1b~YAæ =Ƣ+ʵZ (ț5vh5WZ"Fn$媮04ϐ{_7@2ض&޺ y۹%YdN,4'ȿHwͦ mj+REVH)?-eQ*2q?4@gz4ff'0 I.ۤk9]#A ,ڔ)@[&Gvm͵{ޢjS.C,DCCqErn :zb4n{ՆyL BgfxmT=]Yd٭7cEIWA\6-J&*vMM9_alIjH6Ծ(*fqVxl! QAK)6cxè. ׇqd9s!d)82ECv,6HCC 9QTvF3!ͼIy.Py#c?L3흏tE{l}(.Mf9_GBowH_UD\K tM>,ՓM8W[ـb6 Rۂ=uu9̥v11E4]&(}>LOqP0 J< Z>v ݮ~Lȭ~ancW?B~KB+FB uluv7ӥ^ ﲒ])$L7h ZcUw^W|~0M8~ 3Dh"*BF2k)IS;u6])mIt#o/ITݱgm~nZ}`!<UH)qW+ǧ1OtclEϳxP7,wX!TBN,ol-o III[Y=Y@[{TobľRFβ߷4#uDi]TBh]<AЄz2< X#o%@Ԯp%Vi#/V0;X: NC ͸$Kکvf?"DS+OAXDn7|kq[xBwDZ ("VAy7;a}*!2o ,J5io.J&,kT{tW,[LlǤ]P&↦wm$ ZK_ v62]w#7,n ZL+Ԙa=Dc{hLu@vFDlɲ)F3Tϯ5C:b3]L.~K2“nl⼸d{M" ɊȶgrOyWNf~c-.чx <|:ZWmUFQo pBTO8@p\,e({.S d,|z`iOQKIDf2 ps %8d˓1tB ݀0f5+9.Opt7;UOz_v@>yOèaC2>vl׸Vz$<+|@dGkvN>H?[8!oYtDu7ϊoͱcC t:wur}3(BIv\pmezWMUꞚ'bƶ|笳WZww1N%lj96HX7Yeƌ&?ho++Ode[kNBоtUp?O] 8@bSiJVg;NpURB[Ҭ-pW9i#<;I"C' }&ʫ Yt 5O>^i@UlttIb}gE,;R,V%i h_4$5J)a&rVrB0jոs}NCoZ''$26a"tКeg-CՊ"6;>Tr@js{1 A{y D}?\ 9;- J_?VmzʋZ)o>E:fHMGC ln x(@MǠoe'ՒR^)uݤBlmJ:w%чS=bDAe? ڃAM~B.R/Gڵ ]65 /s}n~w9,:)Z06!rC4IbO3Ǩ׶D)X*g_bJа Acc2xZƕ} )|H?a(zD \HZr百5׭ *YAL="bCNrfRs,ZLcЛUǁ.UV~$}8>v3S{o0[uʩ>s]>0oeІ;Jm9<:_>!#<})yf59%zPq6SA`[|$`SP73x]֣,tw@%술nTlAn:x˦Sxb98Ie']HÚ=@;MK{l D6UFAFV/q?|!rD{IRC_ tOkI<#i~1.ι<K-0Yon ʯ;^5;\b)+sTCاgJ<@)Ž f1,U5Zᄊ6O:<4Z 90܍5wῳ(7$hƣ{VK-v3)ΥB7΋r6zl 1*IҗIa48H SK)2sιI\lyI^JH+:$; `)\5ueźE$~ V0<Mz`F3>&R*`4ybT"=?3TzF +\AKAxYZ H^k>%ZifP reL%WO%1ZSICct2'A?d%Cld^3.]*$]x P2˃"xMCbNQάdh`%Zn<+0Hܯ5ەk 0qmo_+#E7};NLLFڒ ?o\'uGrF|7JCWmi7F)Kn 7SF{M˃]xmFFvBl(A3QfgF.yB:GKs J `\e##s7>XIzUɊnKYJ<+J;0xX`=asPS]uk1_)gRR\4|~sG 6y*AH!sې50{sw+2P>~XQoVخ]DѸKs-#|䊓K.h+7Bqp{)\''RZf{H<(P g?L(,r{Vqcݠ%5Lր2w]YHUއukT?4%0ĕ^7 5©٪)rð+MnM%P36uP/!FԩHvf4w)l6 NuT2,-t>3(Vi wlIh(Jte!v1⁖;6`ܺKj0"#Ϥ/EbAmaS 8Q4G%]kfI~I5dyREISmG "e,]Pﯪ:iVA]OKPNHEj Z1(9^z,H w:%0-ߔILM1Ϣ?y$8C`aQ)HܞR[{oΤx$EYTm#b|Y6ȟ5ÁDz9-ztZp$y`L>Q,iʘ7;nEq !A)Bs= )4N<~Wt)7bü{TY,'cswo3 ž-C?̊ .P. ]% Jo¥TU^|wYF6ZGl_BrMou!}҇dAdw-ל8j0p ɝ֝?78ޥQ,q E;ሱ>3L⽄P6UFMjRm 󾼍 b0¯Y!o8ⵅZY3jC kW(]>,&[T&z&ˎ zOqQQPb+dGd㴒Uur!Τm 5sfO  *=*&-ݴn wT2,.%2q1L x%c(۷ }||]2O, 2nBYrvGE;3aD_]ڊ[N#ڡt{iZ\vpxVYb#6V=Ms## O k e"a$143J?$~Df1\# IN<,H=dl 'pNԞp&1;Tl%ec6GFsZ{BWv鐔[A: P`Gol^T>"+#88_?2. 1Cc[r:lSO2EjCB#7} = !hVDg` spI`D?Ԯ^\mgJ 0Öh=ڦD4M{CUVO™>%WnŀpplJ 4"j  +eA1:Ӯ^@`19z'sF"+>4 U{>U,ѷ(~VY wyIvA A:x=Hg7}D+7[&CZ\1,1;Eu0<]ŲʼnWQ6iᅳ厙"FHQ҄h_}.7 $,n&Xޤ'VmRZ""ܱ:X4$uӃEKo* QGÍb5](5!ujaT9g; yx#,u"iB' WԶ=8b5? FQt[Y_bEp}{H&7C`2$خm|:6Ī[,~1KV2w6{X%bʕ^;gUג-x<\n`Q ~D?ew>yg4e] ɘ]B?AkQ͆0|Lz~BC'Zw5q~rG?M+OٗϰQRDᣍ|(rs;I^럮BzȱVLQ #uds1ӝIISDܿfU%OJ/Ih0fc%7fj NE ŌVtm n2bÅPB]&/Z e2'zWe\feu 8*8 n^l}&e0XW\ؕ2䚳9% 򕅤k#J*mGBF̵D..p5sw<Ϋpo+)1C2ZUUȾYu~c_>Otw ,ԈwZ^Ce&yjD(fFNp뭑OCheBEHj8jC'.kaix1nY}@x3IRyT8ȳ{bËzI<7ne|c `Yyv*) m"CK߹lq=ۀ]d aT .zO PD:M8Kv^Mj"#iăh8m*F q]P)VWϤ-Ͳ(X9$nhLi7H,܇S!F*Z"` _ ӆ؊6ܢ;|A8ȃ8dI%@[VU|`FT+obcj;kC/+2AFdu&ztszI`6-%)NúX4 vY(6;A#Pnj] mxtsvm*+DxY_[ c޹QSNDdcz1Gᾣu}r*+\ه ɮݶ;Zjla>`NmtݍXO?+ʖ(]=FDLN"n}ay1"pt&\l#O#R6n1' jJvyֲaD}8spdO?ܑM뽶 R:L&tt7QX2&n19|XӞsI.f8](>'*~q6p$  Щ"يP?3 1e~5[:TdV#.+G6ή-D"[:{ m"珪qO*rZ,yo!&oKvRڼWZ-<@uEARm.dB*G>HJAp&;߷pBq7*~ls/嵙eҹS jm%jJw5.)6k3%KQCD ۉR6ϥ&~' ¯pP5I,8?@ B^v\f a,`^Y!v+7 1{=u(3(fX52HiW{SjX>OJ%" i9 `IivzU1τP>]D*Jjxb5m~} vJdS9ױo4,{ Ƹ]8@O!އ;"^|8; ^Z< ΒRT?AJ=6{cE_F+1O#<:!c1ZܨuљNqI칑VɢeHOMTxBw6o0б'X rմtGT|>H.ƐibTF `hi'6*K'5ecq{ vr>/ٜ #F$>6pI:N@L75&4F&]SXΫo{z|)IR]/BI|lOQ0̈(BǷLuXL_bM6l)֑l7hhB4_3Ew,fQ7i{&YO$za0e/ B`1μz3[sJ2ɋiH~ڃ끽xD&HՕiTffIBag R--A,8Tccfd2jFg 0:XJO+=4B>jyuK;j+׊ 6".{Hܨ_"{+趽m tߝڊ<4Wj 5Nqjd+O@2z%~ĵpܡ~o)WeWbLlFoZcyʳkWM;pQ5 xhhCN C'~,,RV:8k/Lzc`>bSCO]bAF_Hf̤fv!w7#G \(V0YUE+)`T 㣙X7FZMc7vf=Ixn0kq: g\!Ak|'~sWث 択t97!Gܦp!|:g@ h1*krXe@h`ށ 2yE@U;C=$9]t×b抿q/ƛ&>+\"ZRT2_g}4|ϸ#BÖI|M8iҀi'iƐ j}XsVr"e*Q=*V0um\ M郭S1g \VIAk$SV~~|\0nvޞ+U2`i" 4Q~ ]W"a5&${JuRZ7Frz yUaY2oz8%"q8NV yR{)[;'@חfh+5#9AߞҠPpnYxihK ZO\SC=#C3BI>Z7D#EMZ&ĽM֓%1t ܮh xB\/w%P6dȯ",C+Up {D:'R^*0}1a^W337 OkSnnA~LP,xEWv+9҅! ld^Qކ7W?@||Vz0 :';t_I5t2%K%hw󶉝"tFIj!fw~uY(" gP!i#^%Į:Ɂa;\{.Lz&X0M:xrj|G7>v--s ߼ҟ dbn^H /B<#l0%}A-AcoCO7Kw uxjoV/4KfӏkՒ 2)E+ޙt9У+VgU[0C 8\Y2 $EVazыܯč(sx9! H]c_yIW h9?1sv5݂OA>(g3ۿ [NE+?,ׄsՊ1X9EE!d-D_tm2^J 1B:]AnVqsixT.G'u0Ϣ,eS'yorodIWɊ3 IMOYwpS#do *6zM{H e.r#Q\fjTBx{~t y(zı:[F\ر>a]shޏ*K5G%b:gw* Ӳ˧G 3e0/.+bW}P2,NnzG~Ȼ'8hQpqo1˓bmL&SGEHb[SŶUEpܗbXTk"N2ۦk" puApɇ>Ot '/(EbYIr-a. 1|Z଍-7j-̀:ovbvV*MASa|Q5$]ЁtƲ8(a[1a( V<ߊ)>oW}r^9Vz)ݨжku2P$&TaPP/4.Y-r|eHӟ/Fi|,DXβ{?i͔D'OJ[;7R[KLgV6ZHve#Y墍/~*&Ok2xvBԥK}t+%6E0 >A-(|Ɏ!Y73tiD7)>,g-iS6p-nfڹ\u^w6 4"lwIdJB8}wXDC/]0jh(|BR:ib$eBK_dGն@N*& giCb| I!Ŝf?^8bib,iwQlFw%1ԮGѵ)}S-TUo-8ȂeDy#TE io%k|~.p. ѐFBy9NQm3>U;O6qjU;$"]] :++6Z*VA`RK)#}4v"OwP`M{sHrɁqW8.GS&?qwG1&d࿶.!v9&\ %m\"Sn~bjqC7.Eכ: a^jkȹ.clV#DCfYj*`RZo)#a_*?'⼰nT+e`pq&sOT.٢TScza@R〮n sO+cC`` d]DڈΫ2)G:ZN\hݮ5O=.3 9$|eF\#ocqF/yp]ޒUV^9r-ڋ:($#ܱ2B"=T>ߘBͳkqfcTb:L0btB/ќk!!K2ClID"Chi[jP4PهN솑^=;*ޜņm  't 0^-.qn,\G}&\.N+f1yit "E{DoPt<{ &)? ֳ̩#!>T}s޿cn!:vQ 'M֯/\.+_/:$ͮ 6,X'QE2 WoƭWTTn?-Pa ӠU~M(b|5ɵ &+ 7Xgi_v_Bσҿ-}x@>ӚcE<-mAwkKt@ |OK$x3wi(Lʡ~T)#?!S)KR\KDbi0G[]R|LLQh ESi]Goi=H-BoU{b9R+{-ƸX4-礐 N!jby|S*f꿝ם2ɳF=lvتd_@( ́ؓϘ"{UMx w-]ӳNևÎZ]U-|0H$h TP}ri47a.7 kxU:ڣ#e% jZ!K\29?40/DQ,q ;5@'뗊KN+ݾn5`Ć¥"NL(ۄ@2@d=3gL) ?l,BOC*%`CAH~1i[ISp$I%S(2F)<0#]q0 2-c i3~m/U}c:b3hAw3*,Gx ^'Ae/>Μ̿E Jk+7[}Vܘ_}1OmAԤj :_x15k@fdR>H4@)*z]ѭ˦D}Sً(ITU52D,:98mb"f3K !skj19K~йFn׬2pĹ`@;\foOZ}6wݮ y=Af$`v{>3 ?e=cڈB|V񁹢Izވ=R;Nft#]['Z>.3- iT.alH6le,!~ ;8̖ml!ﲕpnoOOS0 G_VkoXH->\S@2/(1r}Z4z݈zq='ZƹN^?so 8LʗZom`+]lDW|S9o1.{yAӘJ> !Gt ڮ7 :N0vV}"(=G(Fj_;p|0C"Q<5}p4:=L0Fcf<M:Sێ@ NИN.P)W-|Jr fp!u>r}eo]Mڊr7>8b i]gpXcInjvZ΃tFMyo_dC?O`$dE/xu)֪տ)i_A!{VShШߋec讒a4 ސ ug4N^٣vUz⏎kmHFg}*73S\dn$dd؋ļe)q:HT4[I 5vWd-`*'f9[>ȘP!qޜ_-;E?Ӥ D̫:m{IAM:r*-nqw:«l1!8@^7PT vM&l@wgd+>y䁃he>*'m (`yK xPs `'Ewg~, sA@q٢Bo{ߠd/w!r>{uXx>>$ɩk@ZN ="1Kw~|:ӝy}B}{RSkLp%\*ݯ(~ "#ybٸ0mꇺ?|O~k!MILQF6k\0u$M_Vt tnCVi 'vvs~ iQ1֏h!ls{P{$HTY%Y~oxë]ߥgI[A6v?}7S୶3tQn6dp7Ur? {:cGeBPvxTDlPH+MnCt([9 M3(_X:f4seP:K+BL^#6$ER ,&u*cÒ8X3[Q<ݱmPgy<;RC8zh #ZLRFߊ8Uѥw &ٗQi1"~,hTzT.X|FQy9MRG.5SFTo{{LK9]8ǥޔy ٽ 9wsj: <@Z`Ŵ[th_rvAY=k٪̈;!d6Ԟw:'ՖBkpn SS!Taup8d43c~=jUX'/Pf]͡FLwϐ&X@|B[4qJ]sK8}2Z6-2t3͏aR4P[o޽7 نR zLO"Qצڼb2۠%RpWOB4qr^JZSdn X`KVLY@Kkg2PB1>Ղ^tg{f~%UҶJ(ȳ*7.ԗG3ftk q SmgN;#TGNL9 +aȏ&IUM/`$mm鱮lU(M:JvwE^樟,Pz&m&8+2kG4&Ҹ%?!y7 gSbsQtbg~.r&JŽnv/UmX}p!f[ >$Rv;lp9QƖ7k:%j (WIY6E>pGm=3I)d &;)_Հ{b!Rq;Z+i{ )ezh/ÞH(G8%3 /2!jnjIF>[K  b dGO0)r1X-T$>NscR`N.wLT{ {t!߈+k9FR>=_PAwN$dNѲ7YM;^INH ܖqQ;1 )4yb Hn_t-ܽK5/Dv>`_Acv^M kxq’?`q)eT19.B_L$ltj8IMB-͇:S.$]{{C.<"yvTRD1)<ܭHK+dԩ2XsS*dGjWNmj2R \oPcx.]/i0* @ Fm1.g!H ,Ù8OSXFB- C7VRK2 ?#[qϑHwhnxbݎSk"噫~#Mn9w1 bN=pE-_8vp<S,lXۯPM("lH'uTMU)5w2z,F $f6fVBDŽ1 +?xmHMͲn&-X+\5gD~iӏN ~I{K!Te ! "imޜkn?n/pdJOuKրLB$Ӡ‡(_I(_ 9{AȭU*QLcPh2OQ|o0V7l&s(Xۛ`[a *ai.$;6`C$u f9'.'&A5kA4lϩyQ1x`DqS$R3x"c s}~MvV46X j3@ZݹXa őj7+^?gPAXYLv1/;IXUNVm^Zm(HlUCpB,frhkjQc3fiAw#"U?.,$XB-xl/o-VpR(1=Arz0?qb! ބ,X-HL@]Qrv5 l*Ƈc[[YH7UH@&uq F㳷 IA.3JentH=eD|KhRZ "lqi+*Ȼ5s7m xkg=J :_)c?vpjLx8=79E|`6mi DUA3HdttpKKEXjEV:x@ 8EKz22̕4|OOqRT}vP֮[Q?mEV>U!4<}#s˃r\:SA43YmZT(ITdy̿;Œ.;9$L'P4;T|r]c6Gc؟ࡂ \&<¨85 ʫgWgޱBt+g֫yc>tヨqR{&,g+ +èc$) QжO$O*1l 綾r}¿يVkCл#83F-AY'v&gf;P#*phe@/ifI(DZX& ?@4F+3V7Mb[4>dS=b &/ӠObk=2 r2CňkJ~-2t9S,NWHhMKq*&i,pZ?!ĔSqBީP^Sj´Ml{xCԞc 1٦H飼1GۤRz~փ3.Z3L'}J]! ]j 6Yo7 zyU;F 'TS}>SZ$8: -_ضJD[*'7 iZwR 5ginKZ`v =gvc9qsRT>>j 7eoZ|9gn鶶gQ4 6ۯOܔgCSQ͑YD^q[&yì"=&G>wru{['t0ev@$=1NR"*d,泞 T"(Oa_>lmh4U N Wv/Vwn>tɀZ2돽aK)&Lpۨ׷P ȩkE KY‹pTdQeY{~%[Uzǜҧ|3J6mq "q' /ǡUŋX&P+}cu5}T/kfB&s=q) ]*Sehcם!,~ ڽ>TeKdp ) -sv5U|S 6yX Mi4/h y Lg019TA$Xo EI!`{9 /|r]jNԐ\V; * |WӋ؍pk9$TGHPibƯ%V`8f>tEҀA[+nD n,ʝ6JN + _ Գ;WHQ܃y8uLW% ݱ2gOH&ӭ%4Ŧm(R~@.fa@x9fDpX5+l R@lJުbNC2;/t g@ ^i؊!gC{ ѫ~GMv{ On;<-\!p8ySxz76sU?.blrq#*5"@,D݌޵M9s yl}-G}+V}nJx5'эi謯獜B&q SX҄~eԛP$ 'þ^'2#EC``%ʰyovgϾYg9?췆;6P,k%YB__jm/瑆33qIboc R X Kr75\Ǿf>0T<8 LaVG[rT6lxYHiU _K!Qҍlo 8hZ/,<)xũ1LKi!YjRȨ61%A 'ο '9>{=G&BChu id7m$kŦ1YeK.G(-͗`Gx: *]3ߦ!ƻA*}^6ufeaכNeIu-+c<.=x =LMLiW4viMmhMoU7P6Yzn?pKG>ݾ{ -pCyL/x N8AzXE\VE_O6#͢RRNu.))k"ꭽ[9G_?oʶr{9N#HDբj [s`VTDd /h+) ̎s#u_t'@/ \s6!ǬM1=;T8$-%JDCƈtup sQi0u8[yyԻ2<i{Z^%ۜ&%3\S:%r ;o@V9:տa]3'-ڻzZTYzc_҈ 'zeSw *e->HHϣƣ 1\nC% ^Q%,q456XD'>~z-A-b+ND$9-8ȷM}y1uQ m39KO nD~n. ]!VxЏ~gf> %2el0(2T:'pZ&{t< _|`0ɨa^ PZ'Oi[ }P|扱HgjnWAj 8s-I.U7 ۽Y='9<k۶"pB FopZlg-[:Yx}Lz< 0uk< }}6;G|63eV\ &=GZ0/f`dV#XBz /%f PIz QpKDuBޅ}/yL@pqҎӱ3zO_vQȏ]eҾ d#/5PTCxG要UrRU;uX(ITp[ˮ$#$Fq*_1e P_&i%P.H24Ag|TZe֎yl^[W4 cX}ύt :c'є^ 8:Rݝ)Hx$]0v5zqf*| @39,Nbv`٪~;^%W1^+eM~ř Ѳ~("}L7~BAcZʽuP͛o7ʤf]pbqr,o`,FkK5xml#RһUѤzNPزw)^T}+QyUWNΣf0Q5a,;y'kî߽C"硙mf#s"n"~0/~wwˆe,6mgfYO;/`a1OH2 Pry8@4ޑviوt1L ԉңg-o`qqdW08ǧu"1+ jTu [sT|w'%J[)[bc '#sG=@b6sp #e+XU"K%w]N;y[iMiW9VK+6^2!~w]Z^0&B%}#zlnp*[C&:stȪ}[YE. `_'[Df%=a'MqP,֓/%6~JYD?$rGy4ݚ+lv$o&mu"t:S@>G2wM1ћt߆R\0@a?{89N"?/ 2: UW)nzMADw(yѦh"2Rl*j~ÀX@DH?ZA^GqaآKEUjX>Y|xSx ai?[$2;S xq _qq"U)'Ҥ>% @X|6X0<(̲n5ThS4YQ4 De9#s |ȰML]$ޙ"bu %Rs±kpvUQ='/~U|tX.7L(N#` 2 w^9(v1g*}575bKuk<%)S_! S?ygEb5u/ԏl?8&B!1Kx( < :cŘٗ*Ԥ[tYF:@pRJ#-s9-cCAGo![9δ'K [a¯M"ot);I ϒu ˘=w$6``q_A 8 ;@oH Ίs5kq~arh{V\icN KAHd$n֭Sr(KH0ȼcȇ".!Heaހ~oXܴ\Fo6[qθs倀$6NX9Ҕa 8hI؅k`77F}pN(uU~l{Պw‰a $G1xJCuXNAm,lZև8Ӓ=rlpT?%֨R)t h2V)0-,iH^@1]Ž6X8 i.]7jDHNlYe$Ha)m5ON9dA:j*UY>j#h]e|fk#?PɈLUQ#[jj!(lDSY8 w K1`n+65[m͹پkK#K^o]p8eWz'qΞ{iH5#jE۝W^+]WvJ[Pئ./=[ CeL8'#`RѧL5 7G? zĊTmÿÌ?{a|~E0f}DS ~_&J]ZZnwrV2zi+4.RcJʆAmﶮ?Ta}Ü1 x/.J@n"_\s'wI=qc-mc{>Kߩq.|fh!cc +$TonL?ҿ:疸4%(*ADr#9Q* S=a٩sNаPE_j~Ki=*(<9:<W)Q-,{5pmgj6!_7w}@]#wy!/ZK_cM3+{0oE^`ΒgH.{e%W2ԇT$&skLkA*b;Gf4u环R>$)ūB5 w{+6/CLA]Y7ˡ,g8!8IiR4fl~.5kU#{hl)l=9Q8V(͚l8E,7Enڜw 35({!r^.`erUIev^,RB-wc☶U{ʪ,.4Tn@_I/N_1@9GμXed-*"|FNvmFҲq-70{7(Lv(?́~n娀J&?=sZ'\I|z$ >= EGG/ifH)mu#s+l0 plOr.r1[w6ړkDڄ'L9IiWAs/c& ܰ%G/|Pq%E!Y2Ml]T҉w}ȬcK=R% /ѻ\'FeOڥx=JqU\sЅ9_7 B\.xշJ $" DtdrZ"=i|?Rψ(|IUu JU9zdzp53WF MԀ43D!(Y!/}\-ry>Xs*CIa~ qQZ4Q/$oQ56[ a3pNa59ZS2oҕDxEoY$ף'>ƗP#F|xRpUeITNPM|-M;ϠikǦk$#u w7ȑUh:ɲ;CV|3f8) ;|jWdG)d$yqZe'!fbbIcM̓ڟh@xL|2?tm`H=\i$ _  aw6y/dG/M||ND>s ŕVlwK4{ b$ N8*J!_3bM^Cst1n8v0aZU,FZhk-s[3͉%\o6ܵ0?e*WKi DŽFF5.}יJ#y_>^Y*Eqv&۷^-e; 9$Hr;h&  r3hh(%bQ%aW Ͳz}r]0wZ>s{f1y/E@Ӣ4* CHK6|+>fI" B4}-shsM-  Mh>u81}C %LOB+v!p#,Op@Ϲ3 sT &wѨ'H}jz=‰#a!*h쌢OQN.L&*'kPTT|I:}}Ɂ xM'F?hXnAv-3F6d7N‘I?*|;XvNUXP\ahKgyj$f.&7M/7\qS VTA sȨdrQ@ s\D ~O+V'\KfC`Ls"P.N#`S_[?wPX"m I(Ex.cF2U,L.ζ˔Y nN? 1+=Q%ŸZE8`Ixb=$dInF )^i Y",:_֟,>ȇFGe/[ɩLv4|%`r{$Тs?[Glm2f 83M7{ךf]Y+xP< !8K_Kܼ*6I:Lp Ëb2.h}C+GF,/ #N ɿy@.Y-\RO8٬HBFBie\Gc.w-%"o~ZHв ̮"4F;4䘴uaO6˔պIz/~vȹky8TQsUМ6NZ'_Szҭ|Ԝ*8G}q?.$)Ks# k]T?9 +(L8cGR35&z `SH; a에Kp,h2ƼLV} u(kqa/XF-饡EaHV'Ih=x M@=$2q[/ږg[̵i*~aSA=FD{:TKCgtb9Ej恂0\uXƵ{C^ fџw?C2&_-‡/R.laqt;w %A\PE/D H1K Ö_Py8οo6!E_p#sw=+3gXWx$mل`!8eؖf_6Y\8Qz"Lr$7 ğz*CMj;L .=+L2 'z^̊xUӅ;jzC^8HE`gޢ\+hJp BZndP#8 5#$6\1 RHH(DN z4jF73Ό7K5}5Q=G$7%ƦhAN;1,FQ)7<)C$cl/H1G;lf^ ? D0f$S$ŸM'.G%3dzXQ Ra܄L аmB B ZSH!R!/Rޮ,`9% O!7ɜ8޻ޘ[?Om?;"tcoofXU6"ꮌzPTA__&$i}XdrgB+w : a">qVlUdl2up7ȿ9+6JIbzU٣z4 HۗcEt)"vpG[-M9Lm!"H.PWE0j-gӽFfSY݅=Ů~dvNj[;,xØrWv-{~w X eBH O>uw;ta0;p/)L"UNo"ۖ 􆁬fSBEx(e\7e\ H#^zi?H z%Gy߿|z۶Z) v4oQ@ЈXl^*]DOv68jT\SK;P<S,C&RsFNoM/UŅ&Z%S59)w^{L-"8uxLzعuC c4&*ǯv򧽒fV9vj{lE{#5#j6m`tg}}1lezGO Z{%/N[7exon`.FSEɻuqAd"ƨ('Zs͔=n!Q-Nho4;%;nMҼ˛g h' .̺uֳW Nvleik9ɈGbZi|n1p.eo.So$nÌJ|GѸ\_y>/oף 3R.a6iO7ĥ<&>!~ x?Rwe/ 5.U'2''~+7P2q9ÖLf`kGX\8HRWn\߽@:,eɘ*m^[Ta(pf} Hk\ʊ($ O񭂫dlpK_T^[e7$SRq"*\ *ZP-Scj=]t;W6F6ԕ\)ZA8K9\`;>łL!b֋6--&<*rLk]bեu]aln}&"~HH(H3("6O?< W2Z 5Ъ=<*Jw! !W.k 0="x!=8:vvLR.*54OG P BclY%$T Li QTytvE"fTrs Li[,P.R sC3.ZfFqJ y\08Ȕ6/A+tϷuc@~I\Qp­ ,ɝb0] ӳ+U"qA-岟7K! {v&P|bqb6;K ä toN#*O j^@q}C3u0eQ"yXAXnW`h^%mdT?C+Bf8JR0BJw 5hӵMJ;th&hZ KcpJƇ|.$YԺp꣑Ň}gty}oq%RC̬VZȏ%q+q2C/t`o;h?놪5 ~)5l{gv`-I~.Q=vu }CLlQ~p/`Ȥ*]uu!%#Ⱦ^-Ż0s01:JQt4sF@ÉMY!%1 ݣ͐1$>Ems+;.,ŭu[Waw,L@EF0ywN4̙ wVD-:vq)chU_wFs: 4>\ڟuZå1;HfL O8V70ǽCM'HéH &Q˲-á0T4;/ecL9ײEOrLe9uKzrgG8׬;U&^üt/Y~o2JypɪQc '$" DRsۨ I(#?/m&7е%%4.cQ[tH-MQ}4{WU5u'tph[?3 ,nHqLfٞD )aҺDj !3(o`_ςe .15Ȗ2ARH HLuj 5ku6GF>?mg[U%ʈj*sĚ8+KwmG;OyޛVK8Teݻh kcрP-K:<,Spfa'afb$s:_I@$` N4;ӷ^h)?.~3-T^qPQaڷ̹9 9[2!DFlJP8Ͱ Ψi80%>&ge5 }]ᢑmoa2I3?0]x+7HOd-Pt펲,sqQGMcMs[' 5 [4LUAqjY[63;5@Mr\ zg)iM-A+\Q=~p˲/wO`#0Ĥ>b|_KRz (lfgQsr5aJz6m)M**^pw&gx0\!AtblT.-%y%zc.G!|A) yKT?U֐!hJMY:@i\̹Sj);Q$Q|PqDmc07,ea]dNb+M&r&7# `+Ε9W8QW堬L+Uf[Beh`fcX1)t1v&$#~ȱ9]_o&[x&:ZVjC/ d/=ݱ t6BuuK)ߩW#vLН9la]oYHjdEeCp3X"TOe6v7 _(W]kYv?hP%nIRu2.;X47Yߥb;VB ö)11 %^IWh֍" LpW1"% 'num|rp'vQqV Sl.f\l(t!AQ3F 8كTwhܲ_ 7– YRF+c*O{f^QҭMhꤝDVJ9t?^Jdil^K*Վ2G|!l$ C !啨1 Uk^k )W//uRn6' ~ZV[KpgD߳,(Q==ӯ/|DjO!OxlEGu`$ l}ew; uGrFOrl/p+h@ 6K`zض7Յ2>M6@9ܾ[J6Q)Tgzk'#DiݖؕN&()b}iAqINQGm g[ Zk^iv:Kל]0ĺN\^Ny;0Ӆ }\$G2\*v6Ƀ;Es9O= y9R?;&BaNYDTU\!_\cp#}GpE}Qn(a#`8ͺֻ>;!#-jdiG:D~tٶD*JmD%G8MdӄB<:ʷV{E%\w~>D̊ɞ5t~D,~;~> I#cT?m٬bFC|߹l3d{H!"f]=~lKb,_RMjnBӧV1 J@ 9Ds:~a:2j8D[A^^n}4P е|~_Q"+起7NrQ::.ܣ h+H?:8FLqDKHFzt-@t[-rȁ= uvJ]#־OQhDS6=# /)_w2;(Gv0$SU9js>PuZs>QQU6-Fd (W+DOEHlke&|^EGt"bh>]'>v 4,bKD̓3y@XsA[^!&\4JvA@Mi(»=7Z T..i7~ ѯgԋ%2eȽL 5_|4ܓJ9?v /n0z' PEjnIovaQ`Es}}S]x. Geߋ̵O3 o/~C,s>mǸ5`Nl/ͬq\-dԡr;TоN(G&RDBFČ&ퟬYiVmdH̷ E~(/yMrFHEtVWܤyD"nM03.%7Hؾ LX)R VY(S  r=oh$/y(cwnMҳсaZ-[kkQpŪPZ0 M:MBunI\Fa=&{'5=Ct{Bg|1ԟʵvkI#- 'K׈__AG)Ϝe!ԃʏ}rq'nQ:Ht;04@Q#?LJּTƱפI]d?IZ4R-hLK`HlЏ94+P<ܦ䮡by9@`vChE9SbӑKʹȣC3xGu^Hݔj2i/)-oq3˙"lJEƚ׮%@$pZm2R$@"M5fWeXzWUl Hp}@ xKF@tW#ZH.) vMNAi^ RQu XJ'tG.lWԜ)\2<ɄtI10}IZ|eAg cRDh8`D_µg&o7#Ozׇ= Nrpvʬ 10Q MN QOOG*q9=0)ʪܨʷGQ΋QE嶓zpJYY/lqy\ EܼrŁQId +Ť7CUVb{0Tky"k0"|&=TV,'\p Hخѥig=)TiZ| @Ջ!}.9R#dR#{':28冺Zt&eֹ2vr*G8* r )E%YT?`qJ9[ B3H >ԡR)P{-s}]S[qJK8, PN$_Dpd4t֫q/y~~jSٸsn:^j~B9^S}YH"˧8lmL*;̟x$鈵! fN)'=b(1KXn$͊4OO֏K?DžG2|K_)HXr%>[COmHqp,Pn,a h=?aB92А*Wv$ z1Ǵ&=QK&.yc3AG*Dry!*WtctP4:]=c.Z=;?P4WX\f=& cBm)3|hۡ3^W#_"c:=BzdSda:an#MW= Lu%*I?<ƵF/U uM[זcF,/W7eiMw&Uu@LT%N'2# cN;H3h̫Nҩh , 5&r_G|UQKhjt=_?J .Ye/x<_x€rlrlmUĪuP 7[DA $TE0GZ'woV1s&|p ϐyl[7P沄c27Bߍ ōr8@ 0Չ[J@3B{-w񁼙S 1 ?WJVd"*8O?1JVWY0>.n2}h+|F{j3 ?U !V1y "YHWQSW8uZI<-?t^$?P9ኘʋr4~Qo"ӖG$;+Tk fuӊp xb?ƉSiE0Sb \C%9-M= Q_Aמ9\]NAMCԌZ 57=%~u̖g\ >&I׺\a'Jk*}׷յIK*Gk'pS4 6vE۪apbgS=0,A1e .L!:(eN0o*&@eO}_V6kZYQ =ҳ$4#iIjW+.?l'hZ}JfJ" ֋'s`L_ &ND1$я"r"tl*g X9Bҁ?GHӽ`oعxKuhBBI]jO 9ؒ0y+E [E_Cplt0JrÉ3%Gfp &pi񍯔:,4ߔM_t[峤ITm+jbc"uh҉0Tۧt;{%6cNYAyß.a QVXy9=1D3O[6.A}LhNbAa5Wf~Cy3ޣ[_?yc Ə\fX@w&!0Y!v6YW06Ϛc3H{R,K1̬ݨI q1DW}2ۘp+C0["/]+Yƙ1@,Z=n$zsbAi<.&vͧ ű Qi0V|ub21F_Kzoۻgԟ!;q2Ā&D=Y[ _o[ЛŞirqć kXH޶gt') z*nL>'Ѿãӝ5rI8b5* ]F)H;R|"keAiб}]~K6pqket$5'ૠu͓篕&7~%RZG= W%JawNbj&'і.i қm h-+Hjޝ0 10T)ZH{v\xN!igﯵVA$Ӆ{eo"M( QߠC*p"d^ ^",Ls>=䘔ųoh%3w{aZ4Mh,`^UTM%iĢ}kO01cd=r.QKl񲞞REWF=[oj8Ŀd7$K.ĕ7}wH`}tZ^Y$0UKr|R2WCa|V8]]onjY~|:C/u4iLb ݞ\},+Q^-O$#ܬu<3`]n v}Fa17>},@%̎&dktToe4J큓9cTB7ȑ1?Uxt +7=ᏸ8oeO[}HNl\B#`z31?\HR9T,PQVLY0] {ީ~eK4ߞvj[)(Z\F'xſv)x+Mg v~uoyp ^s&@is}z&_t##jl ZP%\7G򀖐Cdgg;6XmpDu%]h]!UZu\}42enZb+E7"}gv`EYy-܆\܎L PayV4ќi3aB"戬^M4pJ=4ll8SRQ5$U8BhfbgvR-oF\:Ҋlo"O.n{*&^%;:%ik2$c] ;eNUeA Bh?W6&TfQ;m>.W桶lIdQ~t-/b2dFn܃8 eS@|H3^`J6,ǫoB|A^QF4rWp3Q얃) *@< RSFj(w#I{6 l}U2uv|ԗ CS$e08*j Cҗ|{u8vQ=TQ=7=s NWɵ}?&A傝pqLh@2E?Ÿ}_:3ҍ1~p.XCNVr(bseNRg/u%D-.em9|*lw<;S o' .,{_BZ K f֙ i00+NI&( " 4rAr! 9j8 5{ݨ_ƀO|W$N"Q8-a֌H灱5e& [g>hܢ2Lk {3Н.i쪂dz1?.d5SHAH]X/ (M,YLw\Sח bJ})VI"IT-j#f K!GÈ)fУAmq >Xsg=JBc$XCkc'{_*iO>Xx6sO$7Y;(brw2H7a2dc^Y%:\[cfq$ӞmS̖0%s4tT <1!mt60, U{$23~ len#b\ar_?Sˏ辑Msͻf&^5K7Iݶ;bq9wdi/Xo4,i;=xUu 1|Go| g@ш1IK+X:?6G#Zy;3{~pBrKoYcC6n`r&wm 7ohb8璚p lx7m|UGq1~XrvɑB{\bcENek"^'j䃜 RO2^󧈔Z^yw,.3wsI ӒM+8l%q/e rQ%Bт A\#-Bh"2f[۫ն"Q)w*A[Ԅ}b }N-4|%T pU9@G Nj We_qHum)zĪp:,l26,"+;/p3+ ŝS#K{_G mQJL_Ďv,v^D5\doqne"Bʉ"йfsev ) 1|oٹc+ZIe;]'Ic/W#m'޲pW,n{N2Al@ZɅk@NE !ts<ò RFԛq aDi 3ti0"nv61P¦^:5/3~_/>r=׊Is;ZQQG:DB[u-,񂮣7HM-R(]ů14 fQ${,>ZÊ=#KcjnڊH$*s, 椓B1  ^ 5>-J/qJ?̉;f }qz x5Cȅr 7~Q'D#n`d|aGQXeG\Oc6^y\²\D[q6+W*qO[׹Y8^(F*X<6̼=`j|<qfhcցG3x{Y[e z ZZ)Nd)(z7Âٔv ~΅ A[r1 +OBdzcVb<ң8LGYwl3d*A$_P7P=u>($x=(D6D6:rL+ԪP6{x.M.]-(b| (Qb-zX~Nl^>Dޅ`;8Rx!]W"6 yVz|1Z+jm~qMyVg*0ƆȡR@+۬/&keūIƒט'\ 6RjYJl0liuSlX #:&|!Jigfi#/ 01`K(Xm5Ad7ʐ2U ȸb /rVˉ5W SeCnۗX4l&[z%/`|(Ja~Gh"H(ٳP'bQ>#CR\p~cܿESʤ:[{ )R4xm߫=ѐ'c9|KCt/ҧ^BjD"1 5XZ#j&'8-:E$X&O|7|G [W`J\H ^ټoBYz<^lMa7QG^?H^a#*wd/ Q%̪2Ў?Ey} !2a@2SmAhrD(vL *J ShoFސ t@\Njkq' as<Ϛh=΂$64(ƻ)7 {:aPszq: Z46I4z auC l>MNz|LePwuѯlRhLQu7amӚZ0enAatmC)/& $(M'$Iv|n"g>c0zVtomJzU$9Gy|r$JBfFrIDcAJxrGBLT9GE׊ jz~%RZgZ͡9أy*p(!ꖏ8+'e_ܶ5XF= JX|Sgf+1LaA!U2M"pr{ 8ڢXK>:Wv%:"c5d()Ջ$%Kr&]vkqQ9۸]vKDxQzXz!j`#T@Qa,̦d} 4ԮDQm2 m* 6 ?XYGO[{LЍ^e-ʒ+r6/"He-7ɨ}#V) cz0)WWUݾBj-M I̪ +jܖtO=;;&٣  'e^@l@9dDc.Z`4?@YU?&B@Z;f(|0Ȓt?HvJZU{3psͼ=mQ[7 ~Yա6":V"{ILbxcʂ< =EH~v6q?N?3i@XD ~;JJH<,M16s+*w\.3_QsFOω g2ɔm degèxd-uF !T͛.Gڭ}jىwK<$<NU H.*[YǶv՚NI)]@7 ] iI11mpL#2L?Ԥ%~DVG 48s#PkrF4۸ӡV0-MozOgZ}S fZ! õӦ\\u0BD5b c$mR]"vwk$iΙRBp}AG0BkoX\_П`vWx %;0Pwq"Q*FV2Z yҡ}=Xڱ ِxBy XD &0jEeQ1Ws|r77u/te-ƫbr3a*X_oQ_NGG)+/!v`# uӍ,Bfq5"/ VzN7WgϢzǢ1XF[3b>n*_ߚaȩ7cېԈ3Q]-\ GZ: 2 㬴M/Am8Vxy'b_s#%:߼r?Qwv=h^ - >%ot KE:E\cQZ64.dU.O9.);Jk!@*X౧&7 :%>!XpNhV:dsl9-dGkcE|Bq覜 C$dg VMN7iBx$KO1{&4t~:HYwM{,XݻnX@c!ܲH.LOZ&yGHV2F4 ~wm+ѽ;#.i*JBVQh:6k`˜o_.*m:M xjT=ɈXD8؍:Mv'?isKDL(qD{$R g6. ص0PqnKj5VIcv~h\Q$ bw4"9+AjzqR{}QT۠x…w>'ݷnĨECc(ܵ5Hzlvn6O%>`<#GsIhAV;O [e ,$ d#fRcS|ŠC4"~{aF5hn?rE.@UoU[4J!5P% kB|Ctje[/u8лGqJO?r<=D{26{3x41%^ލٜ^cKS L.(̇=k a'kȤʭ4گyؙ|m<39U+rs>U e<^F_׿~9| DӀ \2!PVRI?s0VK}sk~_ڲKt>-rxLt|h$+]03+/Z_@Nӣcd<( g,Ssen΄Bvv>'K.JUb T.y2# 44Y;Ϊ^B&脝)AKqG4S/a`Rې$ r]a=\&N ½o4΂nBVakI[e\ǫ+MFYd51qqta2D^=l|t\|E(뙱$jv靴Mi:W 6%Vo:Y""ΪLũ5pv9 4ڶcë}{ o^.Ndď_UFRϏ}A4"̡͜ś-Ş$ s2붋e.#)Z}Q(vk'=u=WLpOЂf T&[wLwX}:![*w<E/<i^걽03!*4a|醼qc#(N_liCtYgWkQMڌt@N0աns4-*O3mJR>K8PϘԯtcVJ>a rZ> Ul% =EyK ņ^ "Z4&);ԋut.qƶmj|N?S$UIe•~YcT5XD KVmLcYtbZs.V֝om u]Z,~.׌1_IOMl}ĕAp9H p:36foJf ch1!HJQcTR$]-EJ JRΟ}.NPiNl9ay+l&m'`@~ZZ @6 {K O` /ZCȺҪٲ~_k֡8{&HH[82Iፉ)Y3jqIMgېnex$ }Y"5B0lzQMyrݕoYc\.XZ <Jqp+wϘt#ЇW2&3qݺk݈Y [<;qp)[,$6T6%s"Di4_(>kmq) tAg}WD[d2!H)k쩎Q2"=o-*,,s 2boCjus ќK7/!1.grq  QXhݡߐ (I7i8K2g GՌKVv-z7)>(mp͹ʤcbYF~7tz Zq5& _ vxଗ_4ݟY$3bE>Zxu~V0o١"}S_LE33{hqEM )jWg\79 gyvЁnJVA3#i@devC^ -,`vnu}ޡlrflY}1Sq1,-[<oy+ey6AѣS|Z0Y'C'V؄IMn7+F,`aEj*ƅi_H^8oo\nӰ4mиCuBv!{[-1yP] >l˪VcV7>ü]FF{і}*WNXEC-N(2m^\$} bkjzoBe,ɼ55 Z,_"Lb-Jǽki4v>/ u\G7g ^lػxAs daڽn #r16 Zn5C_IkΞ%i1V="I2ɑxM &Z _T ͚gqȞyS*@2WIXbD6SX|IZL f-IvXIWg/Gؗ_' 7YﹲLқ439Ha)Z|#"&'\xssʠ i PJ43@oX% #45~B|ڶxE Ā+]WQbqO9MY׆s"-fkl[.M.@Z yfݐ2!lJ n aN!~"Y6ثP4oȔ?la$KsI.ߘa;X@UG{_eRzfa|W!}0Nh$0PVR^ijPF &"Cz9$}8GBEXg}B9BWω fg OQm~ ^bTj.cT^v[l&_V2TV*d>F> vl]^j!>Tuo?+be}C#_nv;asc$:%G#E)Lł'¦A9.fwjb̤&~U_WROa> >3'Ey/4vɑv\x~jdL=t֬?A'ҝX2R[}BӕbnAɴόXoQ튇WD7d8}hyHs-6=Q]{6!QKl|qe=R1}UfFedCAwT v*/_FH OD4q/إ7>@u398uEi~G-_<%C]Ę+Em~agN=-S|5Ra~W8Bj?cqu߬"1Lb?%Iv*XJ/Vؠ|*DQM[\$oPf6/ u * i  Sȗ<LsZ[c#QjsQ+oZ12ܬ$X&+ul B'Ɯ q=jp`StgbrmpSU?l5ګvd!ޚN5xϫ}SdX|$tks BIS"RZ0jVU AeC/;יh~Z%Vˠ]E:j-:<VG5y\ujfɩ~q$p.t#F"AqTq(M3Eא9k6Q[zFRd0]g Ǭ9@"LAW}[MZAV𴅄9.lW+[[fd*< QsfJ? P`xG6R0B-l;%XBZ1S;kpS~v课LzA&?8&51M>fnZ.F_]!bLAzBeI`4mpce3u 0E} Iգ fɱFTf L߅=0Y"G=BxmZx1uxF* 򮊛h㻩*Tf")-Bx)A[BۄŌg9G'&{B&@'Qa(ϒ$,܁^(Y++&SGZO=LMhԾN&xouMȸn.y J*xY(3d}|t:BސJh`9i l+7+GOTe=&wܖ[ܖkw(my64H(dZ^xLr A:V# g Rˎ]WWIf!w@Ѷg8鞘|SO9Q$419>9GD'V \RoC&ɋj]Hݲ*?ʏL =!ّBgVbt m&eRE_>QFrT@?)QYrqT17PE~%гa٪+j<阧Z%Q|k J\il|HRBTeG4-Ux@:T%8;Å+i/?x]N;T:߁ümE )b$pL:u1)gB$D$2d.PUgrY\QXwAGYVamt}h2X=M g۝x 7#fG#ҁ lQqi_$\z%=﵀萭isDd\gFֹVu_o[U>I$q^+eΔq #R5`enQI2jὈk0DR4.8v]NSwt̆V6"o5 fdiKG7wʒOJ{S9Dߠn "V/6j΁Q סPe=.Ǩg ]ox tã[Kѥcʉ7#(3Վ^)]Sho2.S9 sծ6 \iixiunf*њh < 膩sЭ1?́@k''i8^ajsζe@2{5jct疩Aj%!z% }]o\wvp`-'kB]t.gny䋦rlp\o7hY?N,Hx8f4vئΫRoM SyJ4cilLٯ^ȰOrI[AW*Y*DD ኤ#^bvS:8f/zS@(Ip]u$V|$-O)FH&Vc(r"E'IMpCw'dYG*e0=T5X%~7G>$Yg@^eb;EwsY}l<_TDl3a=^W٬^z&LEd35z> ` gn^ͫ&ϖ%:TƏ݆ƥQF`qv1(,G_5h'0./_a.kD6N5- 6#: g5nZѣ& NG@pri,[ENtLvY֊m C{OΧViw,Fo TlQ:%'S&L iAR/bZߐUj̃~3}Xtd5l@@?eCUYGm^( 6(9H3}wj:P[qz.;1x7uZ:t.h]il-_5%oZp*f@Pa>Iamz_Z a'6HsfˏoN[(;,L&ȝ|7&*. (lJk/&ƊQjV9A#u9eA;fbhRL ]3/=+ޥzDbYV~慝Mt72?[Ihg݁$8( *l\2m/P7dpn=YLˡoȈ<\*`uxִ8^31#)+ۿiHT;ml,6!fpw7W׾ Y98ǘ+%p|Lu=i㕢O-"Y2$jx^tHGi2-`zѹ:#<6Ve!l]0a7^WjJ֡ƀ _vxQ=ݤwI}m!Ț2MLѶ} 9PIao!WXi--$%rP햡^†nQ"G:. Tp*5g@Ux ?]A3OQorvgKӖ4xE˭dM%Rkx5>xXkp6𰄎s(sq,c80Yl_,\[v;yj}1N/n$֟M_qc@ypdE?<=Tыh&݋ڙ!z Bs=nU'>qNՙٳ1ㆻ;('%Di1+4>)1qOLd.J.6!4HpN$1QWR 6\jR~`"e;lYaDd3q0y|w4m5`CwM抲˃%"ۣ$8@ٲ9ݐ=wү|jScLż%ᶿ۪G&5/P79@V#h98g_e.0U Bx +v4N6G1AÓ#2l=EQ!y8_g`IDӐ8SܾX{d|qqC~ V"+v[1?w KK_UP͖cz}jC '^$卋yuQ bYQ#]ꢭTQ$-?_8${抉Y:1EAGޮH*T?XT;TDj,ڻvFC?v?taIV _;"EaR~Q Ha%} 8aX2|I h (xW~x'JX .)+bw{1pWvEJFˆ_['l+I!q7uFax JFDdF'r0yk}}NXCktC_3Ç*ovjm؏)ݒsS;^s-WcGDgkυm5kJ//q{OCRX Xb+#=8aV6i#N{ze88߲4ڃ;_ nGt#ka8؜,o \:<#%bՐ&?':!E\\"2b.•Q#9J(k:iTfCUzQ@' &W=ŌI6}$!0!82 Ma[kudEie?mt#¸?l& *yѱ 䀢 T8xW<ӡR9BIdH)IO+z Gf{.Ud@r@QMoa}FdDdR[BWqL1!R@NO9b=0t0R D}Y܄J?ϰ +,1ʬȾ@0{C8 0aMNBCub=>tWB I:UB0kv[Pa_j[jUS=_C^{"k6BH;ri)oӪj?x%D lB*Q6u:`Z_nyWd//!ޚdd8T_l<,s i; ҂{@Oq$a13Gù3%DuyW #' ,Կvw'J#4:CIJ@?+>ۑ^Y՟eNY"(kX02[rr#G͎ʋl t8 - &Kץ %w~Ӭ;,6\vD2δ̅\X&[ݱ""e_H7S7Wќۂ[8AAӛ 5T =t`u-i4ޛ4]·; o.6]LE;45O9.k&*͵h2g;_ő@NHШWӓ}gl?fzV >ԸN9=ybS7H+M؞Pu#||կY$P# ֗V3{\Ĉ$\櫴ieM14{#\U X!CmY1͑;pK*50eX/e~Yej_qLyu1cmceY%@9X]MmG!'=UMa$%/Gybb]Z%Y3T-rSJ hf: )7w Ԫ>TihuՂZa͹0{CϘ]mA@πMrO舻ۆ9U恩DjUNz o^';@J#KIh6;s^t8hO+ٓsjЭL".){s'Hja"t:aO(d.o nGҮOkׯҦ`4do3o£uHJjW ZntHzzWp6{Ѿardz={Q9!C_hWK!a2 fH,6fBS1'-^'x{{Brd9|~_PGIUY~O6FvMN9t-E4Ui>o@Kk^0= be;Y|@ݗ̲/'f;E~p?[TsTw3[} @5Q5:Bυa0ӔT"aZ%̊]~zm<?7ҿ"YÈQozeu5ڙLw( 5^qz]\籠[Ǖ]6 ڱ2rw9DvhY@k8ñLU]o"8k2Vmv7K@WބųBCHoaloM6 x6AXP6{>A,@6h/;U@b cRe0wN'IxZnC 09̗L]]83XBj~ %f2$l& 'i~A[Fs5h(R0-tXB*iqӷSIiVU&lp@kLrrm1 q lv4S5<15GwI@BX%[^ͥdƁ5s4q޻g8H 'UH~QQ`Mnf IgɩPɑm2iLXR BL+&Ɩĉy?榤jrUU%y1](y#RDxk~V]'c$s{ oFxI09zFtPhjO?F6~'pa0n(TN<FYqjȴzk=$$ZrhNnX%/y\!\Myؐ, eg招\ʜɍRad'i&^ |sԶ9 20rI/f؈WR3)?Vk\qH'%[kUl-7m;߷,hfxH%+9$ڜ (s MPL⭉ҤM9q*yb2 DWp[}@p[גr?LovsaPWiyIbAvԙ7Y".J`x!,}#{#_E(gLT>&gQU; =1qwMХ0-E$V䙠9 B9+|ǜn=z -j2 yÖ;'eP4wU i!e]R Y( E Bڤc 4-` pȔ gY"0GNס TW; (P\)ek7X!J6QnIhg$nE/Jr(NIDnP39z*5W+KupX;%:';mab]\$5Œ*L2v2>Eq\xܓn?>?NC/MoY H}_k+UjMdXw1#8 ҍ:yIކAe=$"obkh:`8w(OH3МĹ-?.@8i6"o[ Q}k>.@3"/l{-[\xKNQ>^ tL!h6l`⃖'pfhnp̊TtC_Ǹ-!de,L VL]2cĺcuKoX}ud/$CrDꐲٸ+TX)&H[_<]=p)?2^8;s."=yWk?f<*2<[-/,듚dC6ݤS4F XhxQ#'ꂈ>#izؿ9#ޖ<½UgY5|$vFG 'L,˒Dz;zWD_ts'|5Onm!O+YJ,ۼhb%c[ΏG+SiSlx^ kHfh<*%$ZIh/;~t`N ȏ'V\{Qvhl&r~9&טY೮,fu`VJ%;_U?\^ia<}6 ipIXs控Z3P{KfƏu#dce 33K$lb&`Lע(ЖȻDm3`a>z0sϔu6o\B_8"5Og2Y = oS[m@gD3w74 .Eؚfja#0 ͱo& "߹Ppw @zUJֵ 䟝E/+v?v6&λ=60]V]>L3y4_`Zi(nN%~6a $<`˄gqHy+SG0ѳ gSY'򄓭9kdIZ5dC  !VceE;cä{XV蓣K{c&%UʟY2@N$i&do[n,3] 9 Ck#s9$1Oa-߻,X‘3_91Ï opiM~^l78U¶g1/rKAE.^S _J;0}ɸ+5WO#UDA{,ul9qz$Ol%ji>Erad]ߗ@=Ԭ=Pv:_5կpb\GudCa_5i\|57$Eś!c."5|YP.j #OJS)G$-;mIj&i[ÀJ3*-hm8U ɖ@Zљ'mzB~{p.,PYB/t] ٣9vnpL=S]k:W.yw]F'MMv7i5lZ6*e?7yLS)܎N0tyAq/.vgZc#Sj; Ǡ/Ž0 +Ȣh)NZsL{}.ƻlFi]{('Kz)SKvxn mzk1TVVX/߅u]_@"pdp'ƺ@E\dfp 8lj)Si Q_U(y*wG=/S Lh7@P}1%mFqkւ[K([!D#ܖ8sݧnP V,Dga& <=qvE1Ċ7'௵s :"*S0zt۴IODƦ/f)Rޭ( N:iY:uպYk_RIts& D>G9vQcWBH $yam{&Z*U'i>>mbE+"E=3oQۿU՛|,R {!,ؖ dP n]fՓN#,A*X}y5#_;ㆲ_>cK pU*oa0еEZ2i<|i>^RَQFl3*)kBYPRw4to`4/d`, F+`!mˬKW$ qZ.UxXT˯ ʎݠ ~X^Rɵ# Tw)EՆ'o%c6-PW%]ei/9X>/ѵXˌc/]jHHPtpNݮS'Wqs8"M/ك+>;f-pR+*~e7ZƮ͙݅dx~ȒMզ?gd Y9`:5vdwF㦌Hvм(LLn<_1j}جha9|hju1/( Z꒱^;u"R LA(Yv0? ;\ ÅE#~>3WBBŤp.۽4Y({-Mp98rXHٝ9q8,D0BFl '&M_)Z Iz/D±,aĦHj!G'^+3 !zGԌ#Ԩ,x^@ ) ɳ{-֣ͤEkT邸$qc`Hph>^,`VYOE 7GĶ̕ۅI64CE\nHsS5눮 # gL#~ߞJˬ|5Z:IXqG$\RtUxD-bp,zFGVQŝ~E}*Wr6.?[/onlo:PÍ 鶼P#gkĸٚĆuԪO&[Ҕ#5}M׉]B4߹MBxxWoE*gNI1w)BR>gC~-\i, K'^KK ֘rPJlA6Yse8Un *"DSgB &ȕN,ƴ<%Yh”^AI+~k QcI3kg< ˨A~qiW 2ʧ @UɃwC¿$Ѧ m`Qq`8kkwkQ7znCQK\ }7z$n{G[IethnSFHY/:}cfuǮUedJxzYn IuWz檏8WOWdUY!~WPs$qLF^[I|B/nSZYc=΀e@ J3-x/C,3%LŎ-|Q1(bCFk +͑8w}vd!,I 0GfWJzDVR,{Ϛ*hg^O_.gmP'i턧f =]'( N"bQnfy첞j}{E qFfrj鬩aώyx)GmaC 1N9dB HP ׂdY=i9Ia[ l<8=M. uj#q Z捰82[JpXU%dC>k`[`ײ@ƢhH/CwLV'K;azӘ,c]o0).9mK7b?,;@a9+Ս3w S)1 +$?/O&qU.N?ND5@,$IA?9Ao O4B#   dO9K&>t}TtiQ@{ ~E,ŸSFF ̶<ՊǣhZ6}{lnBkсٌ Hܠq?no8tU66;-H J޳ȑܽ|#hޯMr~("l^K0>"n33nX]n@*lbǂV9_kl"wåT>2t4ŶoP}xPR(KK|Ȇ]\(se6l^HWи-pۯ̘sYN)vf  4dN򙝞J\P[r(tZ; ?8WcqYE h M3G3kHI"$ `7_}͡ eȘ5jmK(U[娣C~Q :%j|hI=7#J w9xK,>-;?c #O /vs]Dpm!7Ձ؅u=6lQ'R S3e C ՆN"'(DTvj˾|O%eaѷA_)S($]UX͏Gʃ`G(הHA#S8gVBORPŒ^= 7<5n슌^i~Y0ZGOR(3QBg*ң}r. cMj_`R.sZ<QdG娻~KpڒYQ8a7VtNSilb,ZEKY(ӝ`]?E5MG1oSf`-|DT'-l{ex|w4J=`'~'n7Ubt\98$@C u{^+N$P\ClJ}oX,zΎQbmdlj?†݋H&7}#y|c%Z{۱n[46—9M)bkk*"!=/>vҕ߾.x H#(n/kX҃ѧoHQFrU>sK.#eK3kN6a^,-F2P+0*$::rB4\LEƲҭ4*;ˡ2\*aD>]c=1H$\pa4ٴ @P?%3eȥý e/{$4GPNoU~v;N@i`Cw!_5e>rgBh'14H|.ܺe!~rq[׽ZU A UpTEI]{&j^4lBd>@d/Z,cU8L1NICNOGH gs L~C}bCNmhcz_'1Jh/#I2HHT8[7H,Z=b㹪<0ȯVs6\nM{nU2(4襸/vx+j8;t/ dd7 5=pK5K$H/w0A? F8'aG D=mT"4(J az|]{TN/So! '2D"i3`!u{Sx GB$5IH{;"w8o|m}A6* jv<-zQaγus<ƤE^ :#7ǡRwB!P+Z)ߖ,;g"6#`0)"%1A"v]a#B]Gڻ%@`fn45f4CLbe{8^ uZ JD?8DN0΃ZER9뛘V8Z͐6%K/7Rt=vHQS39"N THSKQ13-!.)e/LOR3wWC`DCR5>2aU(x|5]:鹄 1/"*?IdKKsol܁/ D?d VO0$S] ~WJ\L "1kKUG{ߙ`Ȼ)EWȞ(hGڦbJ84Efxr9k99ЎQ-Mּir4/Qe+f|dhGb ѥg޲cnYW  8D>'^7H\ѡ˥H[v'Njm 0:ۂQīQV!؂VI~̒h%i^K{lV]v xol&^ Ne6| 㿇J/&i QNa+V.N:OJϬ'S; P-bN(ԛv֜׳DRSb4=%W@6]RR! GaMqEVm3Ճ2Di|[PNrQpM)UHw#j{AB 8P(b`*G{[$,d8~\x2Ġmq~G_ 0fY]K;ّ.fCuP|T&U1)k5B,P&i_@ -X&6[]lD /O~̫/%!㯌trYT#b)gDq50:~F@ R8^ <S)'YqiMw8ë?wEJ w? ^zrsNOIEfͺu%7Hrk֮JͻIh\gƾdԩNI-L Ӓ^K(\27}rn˛1~ޜ?nZlXǠwHۿt&!I}$BGOl o-.h[լApZͶ{7[K1c'b_u@kiD#pDŽߓq7TOAL!M| PDI2HTch}"ꃟֿm B2'^Jp$2 ɜ3 b k%x'wOL'`{bOH^^^ek84D$h߾uzQ(' %VJYu z?-Ca.cKD7@ _>v-f԰d|u=erhboy}VnhT9{M9yk % o6hy:rEF IFbOP}@ӮJ> SƱS~091JEcQ&ʖeYriq4IooIY&X+FxC<5/;E`6N% XɆ4f §#g_K=VDrw[pt$6tn L71CY+Hy27 c4'37:Bdϟ, $.-#?ZVsF\A7DgpBp?i,ɣ[x>ݕr q&Z >4}YOVT0ʇ+ 3Ϧ3{Kdqx 6 ihE9 8Ȟ~<%׏eY}֞֨?ttԢН}fLźokЕ5}&q%kXq-Z'5Je A޷w!!Cpq?Xl#ٛz;Ÿ%*i9=Ů"঴Bx%t;ɐTX|ٗNH,Znbp8Ҥ,#z }Ή>tdi{r`]ukE.m8w:JWFF _5|ILn- @,!>B˺>d2fV1٤<<k)R # ţ&Z‘ elܳr )t]ɑYVp|#4\Sz OP'zK2Ȁo.Zh@cFSkߧ/siiYY'b:8BL@jqQ̧SbsxBD&o͔0zH]7.J Uk!6 f 4"_oۏ@GBVaa9 VlP'W'KWv6cVOn;x |JzdHH\v8[̽"HuSSia+9Ӯtgib.MFQQB70nq+$uNS{;ro+c)C9ʀt# 1I7I=æ,}/,Dp? y'rLtx%8Wkm+/Md}ܓkkyjWRFxm\z6(v >ܩRXto\J2X]3чi )n]Ah. ֱbfK֖qkA_͠Y"MӈhvƠbBѯ#$ʁqG Њ5Hs@ c9;3VG0yI0 6ʏ{WdXU.~*y'WW>*[M _:˲?5%r1N*U<9sv 0WX_p6-ęAkrlA`U-݀* 1Opq35OVk3Vސj^E5#Ng9Qev,D3S3/Hɣb8ODgg65Ήr=ackY忟%JGPAz+ίt3c˝LfyFy7uN7~ {M Ƚ|9xffʮnS`92aڥ}35)jyAdJU جӎxsBnq;*yt=賂B<6nR@FzPYqD^v<>FD <u|et5nÄ$ 3ŨM AR"|cc7aD>󟛨 eSΡy=U_#׆Vq恲1uAŻ o, i~f >^ǙHAUEHǗGD#gx$R"߯4v3wa !DhaBruI=yebU}Q096ݢ}{Ac 8i]DZk>wb"?kx,K C W=|=1!r`MI#!-jvYZ=*U4Zr c,c3h<63\ FEqC;gVWRcL:nYOF@X _dj.V#g`pjB\փӢ<\Ή#!p V70dA t FU.\XM0@XӅwn.Im|ɼ` DN.,Ί5M) ,E?gg9+֮P0oՓG]?mJ'ϚrCτL5NCIP[r'# Rv,O_Q&oJ4T'I(Db8Z~4|7- "٩ۥzuN!A0\>\;""6n>yOl$ٲ^ wM9@5oN 0nlmׄW>b Hs_Ȟ_!--HF?ƺz+ƹQo2y*H׭)/gnv&>0@SAs?( HXTl`9pќP9 u7A'}ApŰk8OީB E=Ta&ECd6\dZ Y22lNYYV-z7QwǞC}EkZ@h6Mz9CqE//j96t3FP>Q}8|iN21s׬$`6ma3iE۟ߗ~/h۹%J**RI5)3d6#aPn"`Aګ,#+,VC~VD Zs&NGk χc8P?iOl5dE:sñd;fWlw7uh˽sե>KOa5T U4 Q}X@C]ـYHћ2`o#vO(nQwLH&$lpUe0m'Vgl9L=o4aajםPP#L`r+BH4ÙKd}QuG(k.޽%5+mZ @TdL8 `]O2rO㘕;Rnݟ&q!FWPZPRK!fb*zb'te@?}mu_H{6^lхmЯA]ۉKyMI^u"cwY/5aR⸴Jt Lt[NP1|u}uސyl2bT vG+UdFW?? ^Y`!= !)+[U"v儯  @ߓ`ŘX˧N/ҧJkP 4hq??q}JgxOSήR} {Zw@iҌlf0l"bZNyeȖ_뀥1ڥ6.p9?76c`8%׾OoL^80LDAJʄ;9:鴉>«LA ʦ$EugGMozbUJ0} Rwj%Dk͠]~4QGy>Tჵ|?ΝA{փ5~ߊf\G1bN~X} * X:"J,N9qFw5,jy|R?w:99pJ'x-t.t:M hP?¦]36ŕe?BzRCIS.=ǿa@5k 6UbLkuiqjAaUS,۳ǜ2=$pƴ"N3C+}Ũ:ाV;I͇uiԝ:9 gl_F&=iPBD?`eX%(m{ O8x):#%pz9[Rj`8:9A4௡T ҉A%%K]/46Jy_vN A؊_P_7Z:l |ѐ'Ե} YHFHlLm"*Y@ ~V<q}sWPEΓaVoVXFߕH( s@hWUMvKްuJpusap]eQ_!X K2>F%hcMѳCǗ{J,;Bm\iJnNQY'1g{V_a< +#.XdZ^LZqB1l 7R^.S9U#[+Ɯ_1yyfH%'eGST IcYÁ䷂|> =bΕ 2P)[}-,90ָɼ=hgN U7z]rY} 6ɫZ=d>qݳ$c iPE%YUzX91w8/mERyl*/]  px(pUh vEkObTd`@zPk\ԛdRD݁:d̙AՂZΣ0(UU0Pn|6MB:cC)I'nUByu:w^0aUF1r4^<2So X[RΪ6eSȆ%עu_[yӾ>{mU+r}ksݬQot8J Y=Rlt>]Knm.Nǐ!|4rj I-UL_t:֧ %o3~oA`mhZW6xՔiPh8F4f2 -Wҧ]{l>F*T~ ] @;i^& V ݛGXr^υ%-CGEl NfoIKZ؅޷y&߲͛ܐXN (6r}$(ݳy 'S!ǘUNUNp`ACOIя.>eE~t|ϱж+n鬐~q?*6&:Hkm!YPrE% xa `hW&K+hQFz ON^]/@2[7`R^^k!~Z}QV  1vFu#&ZG'ŠJ< x 3*< HjB%,J uh@2GS@Kn,kXD2+_T)L˭ӳ+1+B^7 & w¢FQKҢդk?qcyyn]J@փ &g Dui3ω?zYo?[Bi8H @;< X hNl^$@?ִ\*Ua\llc]*ޣHShsѠvg$wD{\wQͫJO 5̟Lمo='dzM-1*Fzȟt!N2%T%[`7DT .Ey -AР=ga1YNc8(4B d iG΢ YI-i}n  6v+ט ߻=y]? L6_ NAU>Jdre>EE$|d=փ[ D+I@A>x;,_ 8B̍;2fa;×B S<^<2buՆȌ /n"exe2xࡘ9Z h^y_gǎDxSuI4H,Z`y0<J_K2 gʠ  ,0)8P7JU!?d6T&j_4n  @4[H W塭 WþQɷ ˪2g]E/%5JwޅXNt]玨zCƢz%Qb. Z`bv*:fzl'9ev Q M^s|=O%xmbc&n@ 1qiuŬQD!ֳo:XGƏ&׾HRFGVJșӍ2L9}tihn#+|],l"V#=*H9ren "0(ʹRpBP]_^dž%|fABLS<蝤7eS!:#,ODP-DnTJFcf!\j򶫵$pZiJ-`Y褠򺮿OelS?n8(9:$)0X ̪j(ex#d*ڨj>I1b^h6H,!Zwt {v7) xE`CxAW֫SGo{ 8G<"<|pcM[V͑7 BݣOo*|(n}V%nȫNC-= )!xݪeDA]|4ޒPuĐ%he;R)+*km$=7ߎl,od u<~HO~`=V"N1x+8\EÏ-{s(<|n;Ԣ8f|X7,۽*.&lHK>~)#ɝɬ[ոh;/^} ީј4i %'͉͊ 5χJG9Y֨sSJNM!={ B*aN~SzrƦ1eW:TqCnZLBNDK7p@*0]KA+e@Һ/Rb8Zw#%4d,9@8kq-sO]dʾ1}R%#GϨH`YGIv*8Ŏ +iBS`1u z b[xNq[ qjvCjH桸]H"4RP`vB`3Jbu1h1GF31OĚya\ Aj/Wa_8^GIcvqDAͽ%y(VnifQMcXg{(Jw]>H6E\5 ټcr-]:*ax} Cl.RtcE߼"pc|j?>ru\&(cߏpoid>o5,$o:e+Q/"]W]-"QWHLQ"k;j4fh:/JpR [5+q=鲾+"֌H->PؔyMaa(@=20R޴ Itc .1C 4?;! \726r9QuS%ڶ8@u lο@%KŊ"gSEdLdxϿ !f׍ S6Wuь_cnLnZa qDGvh{lkqbXH"@+7G4Npl1 CU.K0\uJbtO]I]\ fliTQª;Ў `85p7=H)-~Ԍ*'L=td'繝'EKϷ$ĘݏbahǤM~U+SʥC%gf xʭ80=rN6=_N*tebel}JECwZ*5w'YuF_yGYX0:昢0Ǹg+HTInJ` ?xOue>Z茚=FJ i[\ڊs[Y<P_w&kc W0Bʧzt`Vj!cZf{1|i9%b)c%b ob^/ߥNxC_ј;h'5C,yӾ<@Taڜ= N7 گĝ kY6#zd7-`7vt #p9-b"n2%3`'!ƻQ lw BOMml56țh4 $vsXXoq߭Tt-cu WTl;ލ}lTfxT0;׸Gہ鍥'j'x]iG @cNRрWyjVp߳f+N i 4`ґWᕳvطW<{@^p;['-Qt_ ݀i̇Re aSnb+!X셆.Uxfܸ%94m׆RP>yuoˍ^ĞFꍵ 7˙2G3o]{~כe?sօj9 q+YQ @yI&bkaFQK$м\p1`!, aa g>ۿ HtN1u^\߁jɮl6`G7k)wiFhiI{Z073.t}ˊ)lo&{BBȮ-⬵ ~wh*Ei Oad=̉t7J XR\4T뉇HG- VXlAt.% V[pΧTLwLdA@ðPS %DrWnP6<< 9:&O!bruOVQwZwJ{9 1̸Ud ˇֲEIXh05^)CV}P'gQ[U-TAj~Ӕ2\|jBs#_4)|aưn_lb~38RwxYf 궩@uD. :'ݎ|{dZp^4N۱*["UɎO8@L s=mN,'@röd{eOz&W `t <5H"((Thb4*+H75Qo_YN#={CnWNIQZ;VAB SaToHvzjҊ&^9hr@'dT߳QEF }jw_P]|sujl?|w}ՆtiOP,)(Xt~KnhZa[fV]wP0ւ^Zϰ^DD,7$42"QH-,|nO`Y8j:|\7qXfoqtV7c>kJq(JDaaR]s?h9#;P;{%gV1vNFa a Oú[.oGu8׹= քPUlU,:?ew<ܯ .:,`k:9UV$ )cY|z?Oȵ9SC_냠&tQi*˩GlP`槦! :) Y7F@m^X||+6JR)Znٹ-2W2JHHa*bڑs6ά\y%;?kڡSumU?P4.wsFU累ZF2q] $aP wWP`9v!Us/aq:|Qe^, O%ʃ,h`ZJk\J,s[rǵLwרcxJS$g_[BY Y{ތm i kW=Ԝ*{y-.O\mo+Xy+FT~WFLvħPjx_~ h(bWgaM=7^fyQ46_G^F1o)(S N@O0W3c i'T1 IČ z[̸ZWD$`|Eƥ' RӍ#и}о=zm|YjїC7i8>2)5.?J67~ߦw1 Wm'$)oignp8Zx$+W^,9Jx]&Krw2}]aɳ,4U~[Dn+"˥@Ec TGͰ:w/I!ىꋖg׬@NeU&`{MB:he2l Ej%ҷd$Ӭ.hХjv/;-̈YWS@?{F{'2-ȕBޏj3jw-飙vs`98;ē'Ӑ" |L$qjY/(&(ߧp7$Nb6Iۍ}> gQ27J[L|ܞA:ij.aAU}ZW_T i`5I/3wvw,Ѐx~^3#΃R-E{F3{цn҅;1'Dk:u 5Ҡ7/7Cҙj̥uTDW-,^ճER=C\IƜ/bJY"[؈J..|>?{aG {7lj^7a;Ct]~1z %lRVsv0 YdJ_+k/a8Vq/E#tSL+9J^D.] ¥ǏxoeZ?iiUg8[jkyqW]~mV𬪑ۻ18qGȉQ,ϱ]сO_ ځe)L 2'Icq^E y9Rm^=]C0IkPh>hȐוj-F?ފ"џK4 kUM>>F^P ^n@W%SV(m+ _""Eί uɧQ9Of 0T(6[Fa31n&5⸧\k4j' A?I+U숌nrM:bV3[0jjbCA)ڿ{2fJV: h2|2}: Q(k1z4&x _ҥJs0oվ ÏU]?<|̶1Imi唽Qm?d..V~-zؕxt1gn3v8|+;hׇM*mPԒg6E"!\43)oÒy13`Yy_w.Fsvb03kyxۭǯOjC$'cDi_ƣXA5)O֐p1ժh}s0f*}\۞d*ٻdJoFCW`~3@O4 h)+~_ǘn ?7?R9# z5HOVGӒ\2s0Bd=dbzdRJJvͯ4J7 3oeAX}*ZM6 0&`V%\9dXbZ&y@ez}[3(lS5!:k$)|]!h&̔}%cB"LXn, M4w#z^CW2w~eߚ@4T8d!qa<@) lwQC $_.,j}LeqÝ "]54{^|; m0"m e1!&M&E -tVi "p.k>&= K;Pu+.=LlB'HW:b<BNy Xz#hB Vk;&QT?/K3N}lV{Fg ̿{;z~K"•^'FC xt djz \I1 C^F`ccۢLx %hwԁɝ:mC~55ԉתVFg$T/t[=}\oC<{HC.1Aկo_x=&, $\梞_7^AxxYU[F U4&̧rUh āÑ( w{O|RAy{~BYX*1MBi@fJSᣀ$@{9AGL"ms۱ш&,wps!湍.A_&7oi_%Vx۔#`\gt@1nz$`s9/ʹIUS]R8r9|<1rf`d^u%1805a7ކG֩I/7LE螼=):qFіPl5fnZ\_tyM1H;ahI)pE!eBGB3`I8?X4#w+&*ڲak fYWPf6, F^ޡŧqҚIv*Z!пt@15F|w7ȱ3]e;8w,a*JyZWc'_B:`ֱOMf]Mf)>2[6$˓E=e&}Sp֞;l{|Fc-Z٘^ ޙ\Lsk98(ͻ؝IӟMpak.R'!:{ˢuHWږ&1b34_,xzq9mXVC~o?H^a@Vp[̮/=㾫[M0N@d~[\Q* _Tu ܽLuQ]BA0LPdJ*N`~_i~R1ŷߕIPȦ 2B.h?Z,-KYy~NH,9$ީi~wÇjݼ[LYDwf{K ddi0A~by_'#uvC7d{m|?p xEOCU`TwvBc<&l5'͡s{3]8J\=3.8|獰+Rg"^"UcGpVP14IZPJ|ɒyOc./|.IHi5j&*SCx±EæuB~5 RSmoF+ SFvg\7عRN3/8|ݽT"Ү8 Z'%=a3 f8^faḏyſ_Q5>7,{{C*BT;uӿ̑*@;ݨ.T<#hp bq`_YSlmPJ^ ;(xԌ>U ]oyYJνEC)חuao&%}\!rf3]K t)Vbm2ZC2Pګ_aĈtmxg"*<ո)ARqW[\O1ic( n׿/rߟMw$eH\A}YP, nKjnX&F[rHpɒ'~yQDMݧ3qs%a v,C嘅i6@$@\цQb"3YIL{L;edKdB# ; Ӈy-w AFr ٕi;^`6 +€Op'U za1ت'CEAwqqZ Z(p"/rڀA"-K6NߌߔYKjYCOyc%m1loiz/+[Éٛ&3 axR=7т*.uXaFiUS@2@>NJ岱IwYgs$$UPxs~4J (*]mB^VNk7BhgzJlmHMy,)S:k=o?%a0\ΈMS6YP@ܡCCgvV8n]~$w8eiFf=<#9?`&[!J;ҺA!2F]BxqFБG>{:+ Am.de!C_E&sJWCAvﺬSFjJ֎:|?\ U s%޲g₌V;6?mcըXT1!d$CS5ZtZ< QGM>AFȫyOpPvu2w۲' (utBgz<ǭ:́\;UR큢WLll_>(Gnk^"ga@]D^ *\ ڢ9Aet1ji Ϥ4oWpO $fչƟB E2JU6kŽ]*j)#l`  &%*X3|)/DQy+H=[A8-RLA" e甏In}ۋBQP*cz0],L %e`@ܝ;c) o3,Uo?x7Z+F귄ܿ;- 1U_zA?rpNXyŏx"i RXIJh IYlƆUlE)0UATE<èjU*‡;Zte3C;"*°tds՟~eNC3S)@_zBJy(iD0{Np"zQ[5~3&?`M?wq:o+IK$.Ȱ[U*IgMC8LA<(@[!hД{zT/o M$k\FiG;c MȆ@T% cVV G,%lI46UxLD 2|w)V14g1@#/ ހ;,G\|ِ@@dڠ_?#90Ve]KsYMAS+EpV_Rwc‹_AnCٰ[#ĘG$濻wZp]EՈZ&Ad hpQU&rwN60k1|QUU6{EeԝG}=y-۲E{ޯA!D3f2Rȇ@OGa l 8q_H̗ ìy4b aHJKM&pS{Mu集n4M| 4&S=`\wk&;Un<^u 24iKi8 W2ad~rXcI2vqQd_CO<: Fq/㥫K5;fIgd7]g+Aa>"-@c)~A]Nx2>Kne]4kvw-a|iWqPC0#xx gj*ð ۯNbjj-9E.(-R21j |Y$(iwonfU_}- EGۉJ>ϟX'@S ehBFcq4}Nx^;1,4^zCubt+D{Qw"?p!"4`B0Jqfl[$*2W2ZtdsOX?dd>a6LnqqWSa?#KksC:YReh ba/ʠg-6'gK_{H(02xr5f@l#%~BV\xb d-ϥKg,xsjq]ޓW}ȫ4rWw5@柌!ee3{u4K2屳߄_eiqg3N_8q@˽Dp%@o i%ѶLc~ԩ ݜx:i,0z'&|GyPVD&AUAP bݘG91o5rFy0آm9E~ 02=G{׈D`j\)* "9"Ѹm"tŸ h56TDkpVz'T}B!Hf;8u6M%m,l-$v3#/~^_]b_=uCY(԰)2/ ]O' 4 Kkg]ah6&4 Xk gn?#mH=1i7&N\KBjʹc4M2N*Dh0pu C+$3=V-ԽYJhU \+)eѾJo85 @DcHQ1T9c ަqe`@0"or&bNX-{~9?CuaE6}=Vk^WU>yӗ)U[G0Ђh|Ό5T^94wVS}.U@^BU楀4YB(X=> vPhI 87v?OȉoƍXs)>Ab-^Udt_y!SWLw딄fde;>$5v{N#,(i*ʦ$vg^y\̛'tϋAvfլ"ĝGzDC62&4UIWF`-`w'Ow3 U;0o; ) 0[`9ڞ !‘aeLs1ʾi4UWV?x9 47l=K-?>f_5Z\{iSRRHcW!dM`tejWҴF!@mV.̨T:6MX=A;l] >^){o#_n镶<Pﻧ2?'W"Z{Z%|p.3S+nh1站EޔUXE`Zsd qɶMܙ泏D,=v3>&[%5`IcQt[0&`sCً6=q_^N6&UMEhv5Dաu#zRޗĨZ|gs.=uLۂ Է=X}~FZk'X])O1J@[W)t94jDzٺ*:7-~ }snTw3#j2!<щK԰k(X!T%H<y$ .^<{N,zWǃOA!vrXI=!}׮-(hJchq }y<j:2'{XT$wEb*-Eu0[u`_nv^-$+^xUF24 ^[8uxWK:i';߁*ϯ5!ژ:Q7u_/XQ0xvU ([.y$t%wl4OB#YzbM^ '8= JsM;<Т +\"B$H-[MF-GFEPyET+9d}>uں}$y ̊]=ǡ&uFa'.ny=<$ZCU? ve擡d+qh mTG:-o ZK;_qwsal㏿7e."7'H"ƾ\`]}f5bTjCZAjQ^]hth[l>ܩa`z@JXH€Nꢀ`>1Ly.S^mtcX06dp+6Zbl^99z&낥(t}a +nPgր?"@Ir<9a-y k.m0:%-jOp/U:psܱ:ؿ{Z]xֿ]%1U:+Y$WI+c27%= V/,F1o=C~Q&DoKC•gA7{ޡ/+{ @/ u-bCE#2 9U`u~^/b=c%wQwvPsݸЃHsRzY?#)0ƻv11@7!D0 f˭j'QUtr7,4rKl@m˅q SН/QH/CW 60L8nX4I>]&ܨMe3xw]$F3td αP1gVMw !9ZsH;6 "oHraQJ+z;TAdD\O"t?M).0#FxŤYsG^k?z}WP Ɛm/j#BygP[m1sO`ƾ̮)@YNETjig-lՠXW]3[pVo۞x.5k%㢆RqsPA c`LN&f±j+V?Y$G#~()&S=?'W('Tjqn|;@T FeT4Wi; Kl+O+8C&'G$Kg^?+47.B%!cjgI(Hw]*Bk㎶#nv_NjG^^AVI-Ip$i#=#eu_QE`{W-Ǚ z NJZ`XU[N% fN"}q%TgiBW>F`6A% rn+ʦV ~]ZRt1>1Gϧnȃ|z~.Тf`m5H5CҍMɟ;ťx̗6v@PD-) l҈qC6} UNd;vVYXiCd7lLJ vɬg|F %\0EAV.+T &1: ٭0p }=woW7Cg;خn0=e"ZmZ,ƴG\1'N ,V>Ryph~$O M(Qjq u`7`tdI$\˾F4^"ٹ3_8xjeD:HdFYBwm̥RcX:~?Qa&1bDa4ۧ"RX(cpa8?@(Y4@)ufTU"{҉2;ƿ&Ky߃ٛ08Nuʯe0PE=1xV+~B mӮD 6>&k\,OR6pqWI_Z3 o+.뚒=Er\+Hcx=]=3jɐ~sZ)9ȣܾcڨ%QMCT"txn֛sNOmYD+hNq;-wԏrq6}攡/SQ( 4/'6#WGC,Aw ƟtdvT$̒~PHJ׳YLRͨsQ)_}K6ζlAد?]Ee:ՓSnEN[ *ZyMP0hE*C%@q8+LecZAj3^AxJNSJQE¢Mb y?q67G8K\NM1O:[5t') AU-a 3DÿDO22|_um>pC*0 V? EoV+V[,62n.'m azue_ >x>?rlԿUX_gf79+ĝ_Aϓ$F˖RX 3 L Ж4'zX'-Jlthd? W 94E2)DɓN..3 MS+3.ՎVvp+D:Ns;mG&X~jTM>SFQl{ :UvY@&{f] pT{FBƶ8a_O3,I?D]Qire_vkHIΕ`rY0]C_F9j:n Х%TfNAt?t:C6\!-N XdMB?ײRx:\F{R,O.5Z.pnE<*un&kB״7L*8Qy.2n}\,3^^7ao}[d EsƫU^+dkGuK?EsGRd5QB楔x&|TMϪʣ0MU=Bnv暴'69^v<7/e#ϟ6疐qbE08Z2~\?k h%T׌gJ3f"{/;;zDM.سLy `T. w f?: VPnzzc]3~t"4Ku\U-|e⁶ P]7 ms z,~պ}cHΖ Ro @ W!˃ ä!{X9hڤFP$#,VoRF$~y bׄ49ȢYAQ _}%$Zh5E.q\6LM*ryVG|zoDxi:Jp_*eMU;BxC:|/U%FI4VMSq؋nS>?r +Bϗf|abÀ51NC3Wh;n[?G%, xxz3d6q7.lT^^B7죠*~;d錹 ^hO2BiUB޿ӟowq紛A^PkGs-gP\7σ@(j zr; D{UsxVPϫ-ہqjM!a|_ WN&};fh1jb' wJ DBPpLp#LYߗ^2L2 AѼzqׄjtg&7̾nQdE}wT?#ieQ#U!B&$KiVHGbۃdSq3|,idE]SH<-_O $6$mWP&zOHXdVe~Q;cR",?$/]ddN~:}L^?58xGX- r 8 ebZRzxqcj(UΥZ{d4*bl: ROתڠѝ.BV$Wa;d'l z~NmQR}|d*l ^X@k}6yPұ-ok[86ߤ ^kcNU$N*uIcS;*KJĝv#:`h7M\LKI$ ْ6"=(oz"gj~2P{啒 GiUVC3Z3HɁ.BS"iw/J4 DFc?9u!=9X~15;V,< 2@iW@Yzad(xC4莹R1f*4l Mt%L ŔvO+f" =2v,ɷ,Q#CTZ=NmeWFz=z+ZY&G[Ä&n`rЁ_mq l")s[]CrZElFM|ԁ?!/U-Xvvc0?.wao]?ݜv1ݡoeᚌ1vʌ?54ĤaR0 y Lt =W}V%A"el-wsPr\b⯟}M=,8TbI"v)MkL7| "-d >y[; r@ਧzaMȂ8m( =:T왳m1 G}$eL!%v|)-:k&/o0mL =M$_4O#X=8/Hܔ"o!Z(γϡQ'ݝ T1 t 7 ,]Gν( !q:c=6=z4LW7q!bwf.&:p]NXuPei"!0#Eh (r#"\rfn]3k]GW]F.x q,]M 6B.3!LK9W2FqMEW+ɴ-1 =;)Vq`4Sn1֣/R^ۻ TƯ,3 5{9w#^#b BD(nW JgQф"TWnڪ_^PP[/k2XEkkR&)A&s1*Y(-ìT@H ѥ I l/gZ=ԗӴ77E}9:ÛR/G4ۀ\h}u:GKH7B;BnPRDroN3>:{Zf=AT?H3 ]Xp '" JחCgWN TC q퀈VK CĞBF8Π7U'W ħVg^4l߼ =n>1:j%`FD'pcWG|9i{ƶ吷lW2vmRH_SPUs$v xF5}'Ik}%շ U^;7DVGB A>ŷcE6I9ӡ|_UN C{RiUwikhDΡUM-IPf}ETӏpJns+[?hamwT=ѭ✐TGZfwo?-uoguv"Cqd^0h@xz}n KYIc˧v^K4hAVf^b&]'MK#3"ɜʌ t0Ak68&6 6+nɏI#/I5[3gˆ6v>O5]`[p u :'jR2P;t?9 y:b$^Em߱1%܄$]%3DFt-T/N:<& ?@{W|&U*XqI\dcOv/$4l~VtOFpYɋy{)g$1pp ,Ac+捵(f l^DU/ue0*Q_ޣN{Џ8dm<))lc޼eS}h뽙WIφtJGeh\]xi b,$"\ʖ'Ms Kt y;nd x%*gN7Pc\ ?h>E gyyr\_zOn[^/ƽ ՚aD6E xj2i okm%(QP-Qʹ9nIJ<B Oʭp (s^$=oY5;*w]pJJ6'Xj@v,J7(H_kW+Ys<:u߄/h.?jJ#Uug9So7OB< c/Ro8(ƞe4nV13 dhٰSlE׮q0;#oQs\>md\t0$Q4%]G>, n&:1z'"LѾqS|ۗbr8צ\z5$?TܲF;g5~ogW- 1vIv6e3$80~-DО|^3H+Auݦ/B~jW•M,WNU%.AWIgPyh!T冹 ܄߂Z j^S,Rbܯ0})jco-!7&t~%b}` NTk A6nVMXsH#KH/DF$wo|v.Pp !Ad睫'ί1=v̶VW. 30-i21([{r ѱ#{JL~d_#M{5=+y03?G: ǘԵ}aϭcE:gVjKtczG9N㽄{M}N /72(R,pcٶIBJZuBnH6qqӅ󤽐)Z1Cc ]vl'A_M~͝.\&KRWYpV&6 kި9_- }5hcw0}tJ^: Aׄqou ցGyu5k3{j\3⽺!1$^O,u7EwQf%L4q:&r!jma`hyp>roVpzWV*R6!~HmMHj< Ҏ+ ADl~DE`$m&\7"bEN"=7,)n˗>۱Wc|\Rw.wD;'4|ր!*rsġ\7?D|],-enM4濣.).Aq!TBDuSqwё ,>VewB)UPn)*kA5!]%-0w7S2Ts|59ERE@+$XQFR)#z{[=;::J@\,XL/ 8]G $z/^Ka Gg\6߆(Vn2 C#W*Jtjvx% I_ \x<,G[v耵etHfђpUR9Nw^Y㦥 .3">a,Ŧ&gꆃsMƥ\[E!Y?vK #L~HH<^ QSqgH½zK[UrpyQ.a}zWdc 1J/V$;z)4JV"PLϝ,/EV,L beq D7ةº۱k4 YGP=yŤ7.V8QqAʵgJbVP 2 "QU&M,6iTY)[5Ȓkc;i>v}-Vb {ڰFtܡ^,K ljԛ,t .AoMwJf(m6bFaC b+,6K HvDKC!TD(Ĺn.S/h;KBcvw ow7`d(7:_vts዗O+@e ?)B~>+y[(uq7~ׁ0$,,刍 Dh/7xD3,<1t7'jQ)Z71M7 F`WEsVq\.{.")zr㬽R*桛Wy2dYo4tםF'*j1-@tEP,Pso3I Ҵ XTة N5tr=p=')꓄j:xzӽRe\ qmZl# lcHK1 qP6~B Wbѥn@@ظK(<.lFP+¹H}57EvawTr6,'^>|sd%7h\H<R-Lwup&Mp1"za8Hde֏0&ѩ*8f+@A;'Ѻlscնeˊ4iY8+5qf^sF@n XkVUXFIjm* .Y"q"Ny~ذmsE3^iCxѡ:"h/㓰_ ڈP<-S*TXA,:]oN IQ;&QIN8́&]#$𿋖ܱs, @'F2fB)XݓYzۄ B;qUJ$btf2#q3$>D. sZ?̷k0?e=d 2eFR]|K-+}M8z}αhsKAZ2hVhat j^(Vvx&’_?O00L-?f#eb-8h~0} 7[cebi qEWyzb͹pة'XgS vi9@_t%$3QW12:uDKV!H>xMJ\FIXHJRJ:AktJŬ +rޏi!OתX0L'8'MXtᅗ4s~Ǎ]: Nlͭ;c, )Vc5\> /+r jf&k;D.{o51냾q&51-;ܼXNɏbVYPm_*; >$G68_xǽR\}Ɛ wҏ}"7.;a*ZԮp% ᜎJ^QfR>önQ~:a-xAbE` C%|PԿHI~"L_ r;&M&Kϛ9ӕvE='。;cq9e{  li1\p!!d&Ҟ W!C2%I$7@w8kɞyʐfTUtϋ։?Pq"2SjIN뷳F cʠZּD`6{0E;I8VjhH.J)A1Sk &r1 Jwe"hL߀ڡ*FЃeT.At&+x@Q?UUsYh?/eJRf"s/ę Km\:ŷm%ugvs<_ئ\Zc ~cAB5ϯ6q˺=T5-F rU_=cPz ayOMRۑ abՒ_xL5dhJ5ެ-K5$f݊ҭ 4ū{: 8`H6J#VO g˒Ui<kw7avWWphctr#|42DX+iV5Q^,PGg"p\Bϐ 4 qX:X1y]H>K{ OرZv\k '"r1V3Z{THxxZ Y!Kb?)펧#,Q=kT04sE|W_]L>MXgafb6L,蓺_vf ++)鰔"RO_* [4ixxµN&EMj&|gI2McfΖ ?kPJ8C~Ӫ82A,AgOUi*647AZŎE}6蠭x\=<]zQA%P5 8\#.B|f.U?~PtxyψMP EgiG%&3u3]~Vp˗`柯vdۘHvrLE~|޳q<>af7hc^?$/6FEnMl(vo6BqC -F7@<"}y* DCp=Sۜ tw.C2J7rw. ðXrI~I]ա"$:=!V Z=2%  ( fa; Kq@6_-!9_l6\VJX"@wI>QNۚC)hn)J7X:gw,r/Z|T/Te%D+ΑSe[;~o7䮁>5~ELepЀo[a;?J]Ÿ?r*)7$^jTDDJBNZ;cOK WL ۪@i (gHRUUGMqX;0qFxZhIF:ku:>= uT ]>[]n4ͭv, GS >fM *1%9oT L,*7U]Y x y*{f`O/ݦu6gtZ* .%ZMMKgU-Roiy!YR .c :YNge&}|9" L&ۀ:nxr|Ιd)+Sk&tVՙ@Ж{_Go@q|(꽦7ꕶ-hPr̥SY)%bu;m֡]uͺjV#J5ħE{&KֳLYh[(I xS'Ni#-/ B*8fl*?8% 4!P|8Kksi* WQr E/@06:xgĿ%PE%>p܍]P6*(8pCEu&yI=9~lg RC#c]K@!kK")z+x|!Γ PUӡHTNYp*^èc\X4Hp[`E{]:wG~%4Fl/Y&e%A jJ>: Vms#3$GZ"dϤ lixEm( /xDNwϘλ hYTzqږC`V1>R8qեRՆ-I-ǑN2-XoPc378BWUM.H@Y3#8D1/+D[ql[n8-GcSe o*' E<ޜj#O8Z;;)g-5nAQYڋh{dr=Ҹ5>g2#}o+k Xtv`RQYV0jW'*,?*0̙0qӭ1i!W`d֩,SQ(aҘ)s+$Ѣ0WhJݤ#6k=BNYjx)I׶,¤^2$H(=jϐknLy|KR=.^>Qøѭ kG؍m'w3& RM<5j|Hl?2*r(\DD'6껸_7p.ӞM[qE葴Jt]Jk{MzE*giMKOdž ]ic޽QD<.:"" Ew:_JFw B_KJwB|RkI~d+c+ɕA&gLhF,1ե=WпUDEe %פ$,lmT=q7?C>W㐈=XW*բU"Kky&oC2VtrYݰ'e&P *'3JEto K&}X_'_7Kݢ֍N]?¤oӏ.e$kS -_; NNx$IEZXFT4H,ȎVErb ]Ǽ^B1ǂ)@{)=yˎ^!& npCf)qu1 %wT|wO­sډS%I6};Bv&I N~W_,ǟ2_O2M>jQlU#=ٜ<^7-{]FoP, 1fd,Y*vC1j8fŰf0;]_V~^4*>쎞}t ƂPWw #|ΔI~H!O ~Bi) Dml=(S$д|K>a`h;hn:)SMO7ws'qO..%{i;^íE`T1c>ީrnB_"Lusd$/.!;96Au&Q4(" p<:τwF'd ;,ű8z6k-#.'HG2{jzW^ha~𭳶.M.*Nn;MZEYG#]% 3B`/s!"m1¨.tVm+CP~6,X W:K?VxB )83l0.|g-% 16cAx}K/[I7|@ /þ%$(K|΋Z\,>hwNJhMx$Pֹyyr"b\VU ixb*pOD3L tj!GSsw P]]$e- Ȇ7rrox[#POuҭ ᆤr5ƸJfz,%⇾NR|ڦYT(#UC2[jEfY^_adzI z l;1DS1_|!V [I;rΐ"˱?m{p،yN?vD%ma0[qLI=qp<>DjR '8((H?b eO0QN 67x9n&U#➁ s!λMBmZyeΒI#%,c0z 58ә*>  K 1q_{uRߪ_>}uf"9p#oÒrx?VXrVȎC)#yأWOQ-֕D!D<jmÄ5%S[ki, ٢3VW_]'0-]3# c t3g~"5Ѫm8{{p vwcәTW $ɡH9L+ȋA!.,ϔv&t}pd=<G"`G@=!~ҴPxVs'PsJʩs?L'oK G9'oVR_`ȸm64!PNlP [FqؘG-k;c)7qs bD&@T[XD{Cl ~`78mPէ^~LKΨu>Uٞ*}oaL0Ƿ)c_4+ytv>fRADlpvZE0~a4 D}Fb"wb5#+ NU$L&9o[,$-GnH㖗$OTw%Y=b yFKnwZef;d{b )l:ڹ~>BKAOdA΁B%$F>u8"w3K, Bg36+#f֑{X;/c-(\d/2569'd!a@SUo +>@i4fJt,&O{MGsɍ1+e7bҷk C)""ַ0 t".-~4RI۫!z3yil)7ᦢ;կs@ݺBnR+K3~mo]aAѪF>u[.S$|7>=sp$cIck\cacK˜7xfr K>/ ͲXR6g$GV#,#G_u,R *kotUdN(A 求П/Y8F%܅1FQIMV6o<;a:w[\WPsiaXIV\z~PڽZ{ /b@ L-ʪkEEfgV<$`d%/1L`ĻLYfHbw-Ԥs_+"jzHĒE!a9ΨjHWzGɑ1_uإI`:l7J~t{P _C:\x9zvIx:%)t@L},O1~Ⱦl9X#'ldc!.eBl}]{g/Qáb'H|E gۧ;CaY\ѵϗ|U\tg+H[rW}.X%1gDrP6B!Ǭ6pyo)\lz+?b9Čb ghb৻gvo?#.;mfە.*EmPk1XHEN]Qcf>qy:&`~=5 [(lx"Մ4QWֳ )[9xݰ c'?aVĽr y/CaԴM8///U6,I6cz:Pa\T ṕH mSKkg3z8:~5DfiQC ډJ*~|K.[ɯV ^[l>q &KO+' Gb_ IY0&/ ʱ1iEe܈{ETb"Y㓙Q]{c$N P=y0avw\!3.XbH.͍Mhq0K|cOMP|S*Vyu|:;e"=淵U ŰsId  /+9xJ_͐ jDGqGIqZfVdbJ 5gAV̈ X'ZQ}lWTVOf+|JI5=qFxVD[Ɛ?`jnTa*bLR>քNhCl床V̥A3VMQrjݎB iX{pg3,WM@?`*!]v!B΍+=^w5I~ܻ>哦»S2$&?_%oȣɏ~GPˡ)l7-8Q=4&6㲾3#Vh)?͏lIZ-Gfj2r„xhdF,5n$ ؚIq'WTH 3zю^I] ,Qf}mp/%uݏCj7 ª7=8[_i5.Ef7~樵I3KBm(KV0\߼[A7S(_%倎*0~>-졶+LjPZV,>Rl:GN'}"8NYݪK`\1(w_\g{ ;eƍ@{h2tϕ؂Zc=jT5GD<|P$q6I0"eD(cX3ƪ]aVpTI"EMx 8;Vz+_LGPzTnGT=zdÄ[lHK_M{/ SlbBvE|g6s!S]4$[I`C`;3o^qco7A đ6Ry71,9)bqX囆qZP aijcrApTdn'<|UdEKD.lyUE -:L,Q grH2*,jWkԅ7vg|Ra#@Շ+*#8K[up!c഑jԫ v*(ޏ15@.~I@_[37 -GA&<_QI"nBUl.I$;a0o(NrEFrƙQo뚒bܡd[1>YOJMHrPƠS0B_~LRɆ8sf[M6H;b՞H^xDV mM<ĩY̍/Ceѡclgqn‹o7TTf+4.pbk?)#mUۭpϾ$!K;[;%n}!SvÃp]qdMb@44j9nUҧh'ӃՉ Z[rL[Oi SI-Z"p.M\b,}F+$ܛO2FBzK2%~̪I`M+ɉfՈb2PuwOW Vm[v\U!0u:p(>b08. Eca{JQ˔rnj&%Q 9Oa}Y4*6AiGUq^*;c#P h};HxȓWWBfr,c41 T{,Q<PA @P>P{&d@FH[gҌ̗_ImGEՖ_ C5;sN͘1Wf.Lu6NPim|NdStSsO623݆YDNcW((gé;U w՘55HUO$罐|  &z1ɼ]FE&9oUIXO76~"ӝ43w@ѵI3; 3>9R yLq'1_x(yt3?A*!ވb[B?iC@ZkZ -4U&abKfط*WjwD ̷qY O&3! bl^Lg@B5-nb`DPa@.,ܸE1މ@P yd~2g"(uOR;Id }%37 .!;xFGekg؆{C|Q<*| "*71D-;9ڈz3rX/wIl<,ʐq(&h|`}|j컯xGLo"k^f >8Fv48b=}xD싱{*QySb!;Mj50 d ~(uEzi]7%SCd6UpP]Q oBQ/lɴPaG(Hs{=}ܨAv԰e^?g,"DX#u'6N}q7yމb) S37}X`*T' Ƃ$=e  >۳j[ei.JZq9*68$339wX tJ=m_CՕX0d!85LSȜ|Wg; ߱J k?f9o a!2 m*{*,JhKrd Y5= 53;=BPb-*;fۦ2-? lFlXbd,,WzG_UoIeӋP/T-@CZ?E:4;Da3SKNl<$}73DwPO.2N;)f-N4ü k{|9d-d)$4}yݤMrYHVĽCH?`h⫇%Xqn FOn9HR_mpkKE;h{)wF'W(uhk@V]^˫,XYwFe^OQATvC8JK5rurq+ f'.ĚƏ :L5frGES yCVmH@Mx.J5CC{`{߁憞E-tɨ"5lD9`_.7, Gɦnd;K}3WwlK5GÈC9 QcMS.UobQضL0xW,ifU~YSG!SO i^cU^K=rP^5}(ud`Nߩ+ӽBA^@g1i5[Wh+Luf!Ts""an M$-jeǠa Z*uT-h.␱R6Zf:j=p.@ҫ%.8| I1؟/6%ۧp`öq:gC R4v"9PV-$#> P|w'҉gjϡ,t>lb陴Dme/ă暧ǜ hk0KKk՞ qΜgJjq DI2tHfd ĶŒ S &/6cuM>}zwGFV*\?1*}-?lelw8'.q[L /6'gr?q8o-Eô0&X7F4-Wh~79X[PHK}̋#6G/ȓQe_2ē D9%UfK@,2$WGՈB}s!sv`MRqf?|aB1ID"\eX`"7^si Pe?Lb)$,azD>' ڪ[YnjE7zֵc5N$Q';o9єM 玲_͉ bX¬ٓL3vohdTEgX~h[ހAyX l,k" 8d{uC˸?-;~yȸiSf]t8452hG])$lѢSJ17 YS! sdo:oVu1O9yrMw򗔲g!c@ ) \u|9v t V 4IOy9WפڲF 1&Ams&Š50qY%-xa+ZQM*K w&[#ωkeӢc]甒ڍ/:aeϿ񬊍~fyǡcD]`ƮNOF-eh>Fd];" S{/1 J^m}-@#60Ad is,$=h#asK xw8 08]u0y4M!ea~stvFإKN. O͠E>6(a0˙iJ_;"`&OpFg@LqX1µ˫pB!7#R[.X22ZlS Y;(8{Mr< k4G%0Y8yD؋Xq퍦fٵɃ 3a+d vpz"kB'JW>S:yKrw)?)2[z|BWrFMS/Eװ9<$WQL_ru.Ԉȟ Mv~\Yb.B^"V;e%( $@ HLgʱ֎]⠸@LoAwg$ˆG:$+d8X(+ZtT?= h[nĽ͓A>A˻Dkzת0?bLNVլova*y2\?Yřr A_]qA%BB8H5=c8Ms6s|5g(P:*lWӥʝI;dfk.r@ eSп˄sQM>V*6W bK XjwjpN 0q_,xޏQ|9 wN %(u71~Mu n a{p:L>5P $;㌋S& Xrq bc` -CO5O( Ϧ-%cݥH,,\w'UN$ m|CGm|4ZӖ.ɀi+#yKW"´=,ϘU$+2+tsIXwH F^9e L_A8AwFyf&MŻ +U@+5.!r}G`KIksŋ'f0ρ>E/$Zn h p)(iq` -)oG wD/cÕxBȞ1֨xO AA[MJ*j1} z:G[fg"!Hxl@i^SRotus/~slKfR0('և l%D~%  6?WN(z׏EBea.-e9 b>D'ZHE5\*'d0 rZ Z^c4^-L](֓0NhT#DM犃tMS >(9RQRP^\嘵mO2?~ز-IVϧ?j69+RT3uVYfό"p&k8+=W޲l$ 9˿sa:wvwY9d,͋k ?wgxs% ˢofutҧ;J4vn8}Қr:bz{8K ,SH2ίFUdv'] T`sP 2Ar !d\z>~5-[GCV'I[o9ѱ\pt$Ŋйޗ峳KHA[P8-aG񦖟< X,T}7c6fӵIb{U=uv%cf hv L .6v)A; ݨ_(վ9`c@IYe><6HLuE񧝾ⵑМ6T0GM-r}xƇ7OAFo&4O@GqZF䣙*^1GIj$E<Ļ6 T q"IΕtK(esT2.mhBIq6֘RUErlNgϼ#YبQX9#? _ Y=zG9\񆬚kw=`[-&VY4;%,*8oD <<63Q#Yػ lFA],0솸t US㌰eu{'ȧn}+ b"V M1 0N*zf޳j16{1j..9fY3=⮪K'%3yuX}< ΁]ڞm!d1}e:hq\G܃F(zZYq,5Fy{ĐY*ps-NyKz$b}([JfWgUfD*&jm`괞AvW1V0QabbNܮ20]kF#>i/D-h9-%"ιiQKi'nZV81Θ.X7l)D'61NT/Z4M'c>5҆;WM&QkZ)v? !n:-ZA]8a ~6cg9-*s..pn['o82'RߖO1iuGK/I g> GC_G# d QS3ˏޝ>!qIt4{4r9tM`jtҭCvɵ#s Ӏ≮50{Nl?dr&qa2&&npPqi`R_z,"rСBYB^]t!IHjT5jrutYCh3ZdD@n@e_^u\T 4u)YHAuj;4 Ig`?MT;A'[cp ڨ9$lr~Ȁ|BC0blyB*N3N(A$5t"6NesHVs+F#33,j#Ba ̥Eʞ\9 S@4.Di("D0K0Sy':xWr`Ę,tb72?"yp^q%9kZmar!Ç/܆e!8 sYҕR~.m??NcG{w?А,X%=B.أVݣ,&4A;hrC_OK)F3UxD кĻJ iRg=.rL@hEA}*:u x6y_ G% N {ڭI3 $r5ؙ zyW{Yw1H[BJVB3=qQt _*-|}n ދuf*=tU*2LNR=|XDr104 -%*E3s|n +}g.Ӑ{|eKV+i*P-??d ueZ\HZ[)OK,5X̃)=;\s+ IXk"&z,i#X8Yۻ,D-1YRJpPNfA3D U~Ŗ$׸iuJ:jnI,Q8M[.l -pSjdZ[SLniPqFm20xu$h5%Z"^U⑧A/_*Yۂlq+ay :?oJQ8M$'.ՖT<jp_%4 Eֱ?C!GrHV쩟yQpY$h1?@u=W6s6I脇Рgj^*\:'&vGqag):^|Q2WMCr='.%$iq䟕~Qf2Yz*4ysZSHO=ɈVD$с~!|V+!TNBVCu<ۻ3 CO-QDy1$D9VgbU7F';,ӥ2MXwYzj=svRbs=rM|ݬғ6PyJ\ I6r7wbS?ԒWJh%`s@/ӆLl{)d@_Զ5ҒmeL%"8ZzW?G؋ Ǝ+33/Zyz\$ĕ6ukڲF_MI݄B;_XqRϪ4qtRXCGPEO@]n]Kx{O*X( ;k,I_6Zmeհn+>#Ƒ)yb!7|)s#! *u2k&UeL.ί0 _?CV|a)HbJ4]Bxb? KY3_v!+$78^w ^N$e9PgJ115ڧ?W%H*w>E0yW+-UE(㶍e$>(|oJPW[Rc 8}j *y j@?6T]HoJT"txTnOY 5.<iAu~ʻc{n%|d(wm 0lk{5ªZ3fYKZYZ8@؄n֋HU#ɰ. "z= e@5NX.a?$#ZV(^|f7z Y4s\sT Ět2s(G.xW`5)DbVb>8no$8®[_s+"3]O߆reIs % ?LBԬgF1k,f9o|E cGW*HnN^\w`b{΁羚;2m7v3Qo14O_v-S7ʣ*1}PȔ6QJ|tܓ>pGd`d xT @tFdsNyFdI{xᄽB!FcQt?`BQڜ ɸ(A8$|*;C]epqk7w!7㠧iNd&=NP۩ {ӧ#<]c&.VqLmCՀ7B vV rB59t,!|+l:;R0U0 KJm"$8VݢN׊z-j4.wTq͢Wm^ib8WU̖2f1 v2aK6H[ydO`EDsylҦp}x{dS?Kݛ?kGĄ'F5͙n,+nj@|opJC/k{'0H*o_h/CC%OO5,qӾ@m='4o8j"Wi*H D=p[ZV^lsvHÒ'~HՄ> b_0;㵱|ل])2s6 44y{Iio˪=y'J)\y@[o _m|ꁻ|oo \dJ.{aj ;x?~ʃ<2 D[u4Dzn#D&$ߜ٩ʁ0 RrV1o%c1BC,'3_"aFF{a'"4PU3ad,(>*rYM#vELr<Ҋ6~+DphGr) u4EGr<<3=EqB _{ݙJji9+4 Eu5MdHÊ_R{:e 8/4؃z4g MoEGSl BIeAO$jpjpefʈ tG (}m}S>kNs\Qu@I˷߱.o//S͡4?·Y{.2 tlQzu-SD{DO]|0'\۫82B{2_ڇNlk4'\g , ˿^1/vv'j~FmSO؇n=ۈdhYD9& zF'@Oٚ#q(+ے I_OId$#oM٦euLLۈbgT 7q_a,: 93id굪`5؜ZL࿎f`꫗yligycvޱ"1bv2Lv9:.$}…nH EF*F%ȼ[p<6lN#^DGⳉY  fx'%?QJ+'&mDK0P_iMQkiɲ2&`WJn3B+N/e~>". &@S 2:TMs! :qR%V[H`KG:ΈCžo(|W[,_ӺfdI] 26q.GpPBJSKSl]ױ?E,;ͳO%6Iߌ^@d"HkR ~!;LZVTZJzэ 4_Nzn^ɤ0oӺQ>nF/xeu"!W!F![Z krƲ8Su:Ku@҃FP4J:{tK'IYKJk~^%|+yJH~ (s κݯn0gVWE^t!;&?̒b(UĶ(čogwf[*W>9Oi7?DI4NJ_R'h?{Q̸Uy[[7Τy'1d4C'(+yb?DwE/ Ż?Pe(GeAgw~ E-yq?C8>@AK4p7>uR.wV& Ć$"fxq,1cd $k4 ve+vR7hNUAW rusD-Or< 9WǂUW+Z;c2$@H"ڃ  /栤Zm`+$3 H("uzp-3ṄFi)^:v&KG/ѝng@_T9w+ v5OZbW,n 5ۘJTW U&1Mrf2@3 iU-gɎoq = Bi(%pGmC[̷W.L\ĩK!$)7M噘 67ˆb٘! 4/!8 Ɋ^ڞTA' S)y*_L/3_Z#-2HQ?ր"qѝ0m3G^d4}d\v;8)o5'P:B ^Zů|TH˽I;Pm7P' gc^.{-g顐@wÄ͖VoI6f:b_8TL] ^]T]{%64 ⽱_(|v-"<f)sH9Q뤷pQI@t)͒뀛(KHy6Ø\azĂj:>nIRHy&{+aJ^+@֙c4W*V'q!ޫ!K>qzHvV_$ӢeyP0T=H?~WKlm/d#kଂҸVMK|h!0//7+o- @>/}vQοUeκXiwsR5^IEC͐<>p5C۝G6b~P#)v@:iv1àz?n||DŽ/+ EӁ19aQ.lhk}b>uΙf7tNO >%i+Y uo|Z a Lٰs:CpC>Xj_}ʚr%E E_$)g ?%C}q J_8ZVS'>sXԟc)5X7w| }I 7E7r"A¯OL8i'W|lO<T1[(ԗkamA1i) 慧=- UhU_|{, !wacx$)bԗ*z!ñz2a^쫘o09Y VK,>7g=ҟWm0OqmY[@3LuTپxIn um?(w\=:z[.$ VLVڜ%Iuwf6`0 zح; +*~tIޮV]d^-dDQO,2Cܲ\d+5)"jjCυOtsZGکʻqXTe8R D|6JiZ*|PBM"Qig*a ص?XpKN ?'?tu-anB# =6ޙX9 mr]1VvqN{6}J _梏$MGьK [V$v=Ɖa!ΓCM%SLb$3`6t[:Pn<3X}a.:9U[D:Eote|?s社*,aDtf v6|d{Sξ}N:JLOtnP,Zf'7w7ъ'.W(qn? E*}7NS' Ծרx=tV'/{[}F ~jO@HP"(l&i-@ ,͍#͚ԬHXU$)E:0pjIJAWjpzo(wޏ59m"&EӉ"o42HX+  ?3n!N Z5̰B~@>dwL_ɣ-ٔ&@CBu :Ě}8PYHJҔTbQAIsn`n `1uUZsWO%̼ ܼM6d`ga$ `pP<ǂ)/@`Ah¤.ofњL"pZhev3k$b6Ƒޛo d5R7I( mq1`-\h[Y5Bu|c-KR|. j)aű=LH\ O\"< Y+GN'=! "v6Ф̉jRF!;AYoXMS@:|0+=!}X ]vtdWnםy" FA$|p@&,sAKÁ}YONԚ ɑ Ch'SQVʇ۳~RX.ʎeE{4Kbۂq8lnc'cWi$Xus }I%`1=_i|Jmvx=\{kOK`ЦEV^ҵZiaP{fkvHJi`۽M=*iIѯ)`WTlMq+|Kb٨c7m~Yо3LkgCG=*F9_5oV-ԉ CR$e2(h[4-q27jcfg_Bp}sxFS2<[A_J$VL@h+.u}HPEM ? u8@w#rFQ9tB"s/Wym:(E^LcqC(ƄWZczM 0]y4`*ʸVrmv@ ・g WI4|\ucKKx.9&`Sfr"#㟔l]+\z!x;7q6jhHPCZΕgXj&=<|EJ2wJtng7k $-ku>{QiAy]FY181ǵeb^ҫڼBFu܁s$ܕ :X!i`6OW{r"ՋG0Zȵp# S"YݭD O9k׏p(C#w;Of=5s3̰n**%U8[NIq-d(Ḯtp Y9f /hRw'7'jBrx`㶦L&s,+'jW5u:`~P!@"?cŶ5pO9WûP ML ox; bO @49QuxYF}e0<)'͵謲Rcl&:….tq#ˢA:M4>E7EjϵrhZ4Z2nb L>-:'OE ?kA]{ #Mx<J#VK1LBsQޖp!RMy"Yc5mMX3[٦@smMt| [9Hd'x틨I1 Sn<[(,^@f@9q=*+3.*- zͨ~dMp'Oxg[EIj+9H čE_;alHg=o[!όDf ܬsTG19nlTQ_@x|@p ߄ar.0l9/*?mONTLxBSSnb<^T; >elˁ c$&s HJh2oSCՋ=OKW6uV//Doe\kCI A>>U^cO` XWPʹZ]V4Cm}2r ʫ40oIy!ZLȌ m=)_j] $BT oIݣ ~$a,fb҈\#g(qMu@Z=CzCل-Kze'2 oFS|x3SoZŨr&VJխ*Li7~4:Oc_¹Ɔ B܂gȺ2"qZys\UyQ;8Z#Œ6 T);4-r8j/1vU/2QG3O뾑؅^m-L>uA߹6\ƅ~5%I\#R|^1DKqu'mLJN%qc9as;Kx$H:ݲ1P-nb7k;1Г7[ oLAqb}2 f`P$Nvst;,G-~"OV՛/$[.g SD[~*yȟy>c)İվby#JHZz=XHЗ B!䚸u- nsNqĦvD|yz[LCO4@ O^^5h;CZ6<23%䗡S8 /sw xmvK!=YRQ?t0ad_3Wx vۀN-,"BNHh;P\u6p,T;]a1 Ú_L ;eؼ\n3B_-<5o0蜿Z) oЉ/uJCoGhޚ:t3"i7G:" K//N{'6:jKߢ `/5K No7l iTjv>Nss=2k!"K4nԍۆ@ݏJf~*\,+$°$?ﱲq52HxXdM̅z7"v;5I~M.ThgBv{Fx eRu_~Vɛbs(Uz^a?c.iR#joVO$Dj.hZ=qT/7J2WiqKv߾@U#v{N؈KGU;@5cYB._Gz} "#(@(B>>SHyfkރ k%ɡձ篤DD2<-^ẝ-m󡷾YVNdCW~P66V&RںJץT3To:NƟX`{^y'Wm&:z;JqQI+epHdUx+_PeV^OJF=ta}bo2M-ڹt{΢ʭE!0hM<)0 ^OSΡEk8}g jrrhk@Ѿ5iso1Vp+('oF~Ipya4S_!.i uJaIq\zŘG-x&W$ x:wv+\0s^/ 72pNG3W2y\D:󕿖Y&HeU BQ:9X :[@kS1GjR#`\2D+uaM }\ǀ@rkOݙO1u2OEM,997Q$R2&;"Tž|y6Rn~VBCGReӆ9T~GŪxˤ\p CeOz&=mܰ6req[+*uog`_sסs@2"UT8<|3{|gܻk0ٛj~]}5E: khzFS[Ph: :>B14\`-\^MfzA-co"-w0u vεtYpfQxR<:;/%kWT%[`1zI }U[@- s O$΍ eη[r;%*w v 99 DM1Z`"Ng-قS[bq[xمܨxhyd`n[UirЁN/t)n)@IWߑ֭w0Psۉ^.a"WAbKY-*#8-$<8mqrS{ ZIIA8+ Mm.>HG 6aj Tg5x oa⇇̳ͩj1>I rסp7$Z8ӎgu? 8B#5ndj)oAłKJh>jN.C9w deV>u$(/Ԫq3Ci讵_>RȿkcT]2F*. eRӨ7u5pׅ"+ {gК6xjn~G[}5/I5قQCOc-L-DTAֈOlWW(K- %B̄5CYLIR 8j\%=Wkh 5%%6M@`$\is&|&M> {2xSV})o{ sBumc'KDmL9+by05\?W"s0o.vV;aRQ3WNsr_a-&c 69%(IO%V7|SxI,&Ķ5 YxHVZMp];;Ɇ.*qDteXoƣ[.pLPxiɇG/YM ;8 1;AR*^˶q\;'E9wwNj z_$|H΍5uBXL*o_x́) |T7:c%|I\\d qa FVmmRûXpOz;hh b Vy\?# B؆Wգk~䜊8ji[~+8prDz/J%G+Aʏe dB!A vokt лRd\x6}R#ԇ5)/D ?0 nB%d%nE> K'y3)Pix=MDtJ x#H=bpY CϼN۫M@*ˣNS4[TF:JWI /_)8 u9;}4Pه#?2lZLȵOA>0ԕxuKppr8P. ^RJ]3q݈MZ)xCO3c8>%qĚ|j+?'a-/ QѶn~A\z\.Ba[Vy~Lhf[?1eRqgi}D#%p`в)qߨDYxҞ]% Ɋ,DZr3̷Psg>2݄mig&:o[)0yv|FNCI{~>ܦ,_Y3גɈهliBdao5$CF=tkc8*?iU"WxIf qJ"͔&:QOދT<`&3:a<6vSS/ 2^g*Qögwc GW!3}⴮WNtv:bdB{P}jXUR.1}XӜء/lie: Uh6oKS:yg\Q撺4dܖG%i|IfZi{Um+&-~N~);D=1v{\aE6"6`!5˜J)\hnʡ;ӐR4]#_ ܗ&u^(}.##ۓ$9uc.  A^K{1EHTOF FrVjti 5Xi Ezn-?P_ VKR²[a("i~6Ʌoa{ЙMsN}ֺ8m~.̀, |cZzy-sCtBvV?yzinM 6Nn'zb$wϛqqJ((;qS[-ل N\{~6?\^#SUꅐ*R$4ȔQb׌g_NLY\G Pę|63>oAqp Ίk?`yiysnƩ[~֢jg.|=X;;ڎ'L' 2Gmp55!y-4 tMas%2j؊y{(_Y:nhSm17]E>5JFs#Q"c{_~L WGS&0k3KF2XI 1j= J6v+oTPhA^MS8)yx"+*NJ!D(92#VGpXj G)1{*2WXpYEW&wxP ;7p>*^ۊ*(V ^aAe/  +f90x!BɒR$od'V :觾?)=DόH|hPα ۢ tQa #.Gz!pۡ8 Ɏ>[lVW)%(Aq;BL/^!w TEڤV$,% 3F @)W7%^01 !ɠ@ad6sP·r섏a7nҁA'v̕Y:@w+q4eHCW8NjTB20.R& ݖ۟G[?, %$tr9.X>˚e†]iv. siД!! ʈ+- fRSfA,G.C溚Zi @ּ@H*`uE3m,7;_8xsxL| =@!7ʑ ۆ])%TIov[#| 0l,a8H5/FZ<2yHmI|nI|T0'Z;7Q-ΏWRZ0Y ~6QP'G)p9zJP>!y(ی˂NFZE"8znge\Fغk6{J 7;ΌMBS[ 1K`9T[? 0R5y${k~Ak%8oRf#SOMNށK-|b3 KmQkDFp@]hrkSƀ":,07/V%wg X`W ęԓ=Hޕټ wu[J,WtE`alH} 8 ( d?{y/1)jpV#oϵP|[f"(6U_aXEL'1B~xf./(ܬ'~󏮋KoM_gPuIerC[gGSh>@¼!;ƕ!Kf%-@p,MzFI—?[yff6C 2֟q+-╏YhKxGQO>d94I '-ٜ7,32[V e/_F Ȣ6j|_j)[]s#@.IY8:83U];`||gCh!|>$!/ 5Gj>W5VJNE|+fyp#~}?(Z~vѻv|+UˍXBt()7?6ဧݶxwGVwTM;}RZq&RgmHxw2 -+&S, aT1Hh&ah9a$7ϤfQnUFȲc~+d]%<=={ILȝڈmFjԂYS#ӄ ~(`aKT ψ\2VG.{sc: U\19fFƪE^KBjGfU'kzYK{RcN]vmUT%3VTxCfL*Gׂ?$.RvdDF簊2/'d y; ^"942zLY3xod&.?[تp Sf84⠓pdA(*O m[M7wV͵T"N"V^ws1jT)^IQ8J;<fZx)+ nS25ORb&23̙0UYWova>v0*WCR R,e>N@vq&RpGp6m-,@\U@q}@-& ak:٭ ټG>jO\n:÷y|t;}X%5PQ|I()?()-Ç0C © )%^6iG f4IY">ݴ|LsRh w6rrDPu;.R)=%kVW1Ͼ;.zRXf)'c hAny ޤ$@&% c oq!d}~mNOblqBB 3uʁ 0ÿsAb8{(MnsS@lqo#86$?9#s6>3ylQ U;5dPg׈OV̕l͖ěɘfqg:`*p_gr z" ٤%yf;r8g 6&3΢Uc:%u/owWl!ዯS'PՏ/*|dz!)L8j ľTb\ [KN|2Ukը^MEU1zt\Iiuc,USk/]m))G 1M?6`qʫr쁧;UF]u ,VO\dS\VPt6n_FT!]Cy%2Uųdv9 mng4KݸlG]i+@17r1ؤd-Y@۹:{QE ʓ(yuQ~MWli f?Qa!bJiH("2}``spZ de^$IFU'hPq~\T,f3[07vUϺD!]0s!%QߑQESf`u<7)MI?I^ >2kepeֲ[Mc7e#ޓ1_j9m^J0"m ~xIB6g]1(/@JN]ФܜH9]:!.~%ӏvG}u|#kjR0$5@NTmx>)1 }瓄UuzH)ni4:d6X5\YS`Fzs+Cjy!96 Un[ڏ8j6k'l~Paҁt!64ԷU;@"h:܂' du^Y*e=Cvh]p rŻ-,h\\~CD|ꅰ 370wc.^ÓVSaq$@\3uNY4x׻>.bA++n0ݿgvVW$ogN9{js?5w,#bkShXSDiɧY;JgဎujʭC`sT3k&f ye0fҾe0?J_w H]-I2wkg KK N8I$P!3fjXm 8'=3U[ȭDf=/Fri+6 HdTO 0mjb8<# %dԅcã =D@Zx{ݵ3gSܤg]Rl @Qv[KEY^gO}++ʈdr]=gR' %`G88żɵTHr?g ,/j4%J#kVW#\<6Ÿ:t&O"[(H7 w[_Cva# Vp}PWZYI!Ց_䲜Jh d|[:~8,iV&tXK9DzUUYA:<7/B+19`tchnCKjuF\)i(Bک}nWѕrȨ@Iv"21Y-'kC;,0zmD, TS! ~ڸ`a&X@ r'߲Ը& _8>=(ECa6 ?xj>aB+[TMiFA mک`~Ц%L}w:">_gr$CSw+Fy(Q\"[Pkp/P6 _Q3׶7Ƅ=MF&Z܉`vtQ9-خ?튠ƚof^Xt ؔjPl{8d }ƐR]+Wj*qKG7iJFG^M*/lm5yllP_AH2P*1&1emY1ZK3S}zhXοK֟r <Ge0 ʋ%6}*DX^ Vm4j_̇Yw"ץj.fS]ڭǞQ`ʏvRfoh\|bIAֿWr;kOZIzn C8mB߷툐 N7.\GI؉y|/[#J8(;TEyn3ruJZpy"%tKpF),nYݩLs6l˄/_ + qlk"ˠ'QxP8sj`kT_QK 9P>A W.1jǠe u.pP?RZC`Rs̜94>3I:KSpfOš3,~QFȐ?A?Qw`0Gֿ&&沤g Ԇ3 9;bW%j>J?mp}RF #cxGNr\67i'7 :֊zʷGzF&]lnм֬ JvTX9K,Yޙy)o\ ^=Ҫ.z6췈[Zl5&b1#^}ҁOUJgao`wNL"l'`J]tяPaԮËQ$ jЮ*fc'LiʙWe#MQh93pEWF!7l$ApY?˺/{cZj^tdвLݯ9wNIm]!*0哎0:1ՔJ 9_G<}FnBM).u8zSu/D";O8w1V4(x̀],ф0P[|Tz'"(4#2ytW 5Ԣ(X| čj'E#< @A/spzZbb+c/Hl y|YtJ4IQ*iVg{s%w<V;q4|,o򞭖`;M@kJOz`?ԡ- -_':yFwG6/k)*u+i2>F(\+K FO[rf. >+~c? z0~cbwDAr_xZ1-݁ ݿ:sF/}1qcX8ϱ%1H5mC"FvrS?͡f쯜3vuD_l$o4Wh1 vPJDʺԀ9vCɛ9B[)K8_i2 Ba:YsXKJr ۥ w+t{ܦR_Kwh*i3my8LNCB_Մ=dMW;35vzËXzMR 7 !?yub i~*bp䗠{I~XnW* Fa4w1k)O/^}V6.?LKogmP؉LPaKD/HwtNmʝ)] FM6H {X Y"J6eV݂Zrw~!T TnB׺& B{,-Eף/0 |xvwAܤ]2^)`4_ot/ =r(?oyqэ)j ྭA #w\QҤ"/A&]EOn>S}pڜ/1g_"QpkOd[whh4+ QXZ *Ǎe1%J({' xRo!VKGb,ֆX?UP7Ğq">O1&r_ҹ8~;-#udeZ*$F>QzkԵCsB]`*o6 8ۮ41bOYKA,?{JښMGK#4ǚ$I W#j b,*t\3×̞PڎX}q\q1:\(S®emr\#1qj||}4 ,\0I*7h$/vYΓPϹЪs&J9Emۿ*# vl“nvN Ȧl֞14 -}`˗Rc_BW8[1 "lm@ ?5ojЍ#NR >ɿY#rS!fC2yEPsL6UA廖Bd ^GЌޠ< Dw/^@F,pi?eMʽ<غZђDüBMM!04<&<~ܑI :G0FpzdM܈FR14QuQī#'lWa|&4QB>S]9`bXI)ٔxX򁬟|2*\iO fUD͓_>Ҩ3>2 hO*f@$TjBmoC'gƐqzx`PՌO |` Xp2wqqTP9gI*ZX (ȎڏVA~C{}}J8Mv ru a"Z#Ɨqn[t6[Z+Ϥd#ț䮣`~`ΔG2M\(=lQ;bkRP.S\*]b< [Y>%-8\'ϲU>y[t8~#cֹs u$>=!YKcnHq ]!Q#<<\+XGC2ϠAnSLG STGgU~0>/@|< [e B7S6R @Lut/uDR`^rxpϥI҃jxPSa~إsvDNj3r;+_5=Im֠1`2ݸE/W-.j\ @"H=ؖ=n>t2'X!.u )JXFnyw4ǵ+wd!?YVHe %]wgkk!e ~we/F_jPLx7c^pi1- ?¬Jl4l])Yh g_{ɏ܁(t"1A*ɅuvKO7KO$C`<|u"~j <>_=u WߛF2  /rSG3JSCa.($)ǐ?Ґj-$<8VT,+Ivb=~Aa  $ :Hl3JֹQ?$K2Bi?OKxEU[5ZrI6Hg$JCzV~4η!!$YI=mO GPވr .ݢ6h]:.QY.޴4H /< ƴ45A6 5b3\'R\BK Jh)V3qypO٩P+i 1>01az`.`Xd7~lQLyEN0ɨvƯ*bq=#F(}.MP36ln'b|cݤaLq[3F~YиYS 4k^QV;)xH-鼡3%G"aK6G@0R)̗0m"UCSrJZ`@ $ s,esbW5~W]PC2i8Fu\욐Nt#c:2P ٞNu8ɋaYBK_ꜷ..)Ӡw離Gl*d&N,}mvB)7adic֢oYrӰ䋡":[ 7^KߛӇP JEum]8^fHGʄMQ] ^&ЃxJb(ž<}lQc9[‘$]@'~{5Bq6R!Ӷ`_U97>NPns@ˈo&d=bP}> 9@ǐn}ύ`GE4wyDJQ%Cz^hߔQ,:>pG&j0hz>+Y4@d Dx7F@}aC=mjMk褷TN~8:bod [G e YRzyDQd[C6T,"WW-7īM|6W\|aKp-c3moW1visOgv$t,U9YCBvg;FJF}>@Cܻf"N儊&Z,c6ל";(s :ww)qlç˪oOժS~*z)Gb씪zߨ>*8]'Y} 4p¢t& |qZբ׻1gk[r]SMBUOnuOX<e34"(藨7ÌFB_C FNRIC0q]m%N?sI wJBp,?rPvv)*U}Ul*XsڒxpV-Aǿ^"ϼg%9 w:'dJ'6L:7aM^Pl*.;3 z`hbmoV~Jd1_غƗh!]1W}‰qfǕ_l',ICcw[ `f 2]-`wzV15js*0Y-ఙXFcpۖLXVG Fjsi}QyJhÃ뭄0dfaq> %v^Tgu!}]o-Y=jxB(KBI+ orԞEP=;P;*J=!f ".ȣ|Jxb4D0Ƹ!ȈY]jh;g}2oJHk4[V,RQ_H"?fvm5S$\c{ ?(Q wIƭEF m4սLk a+vR#[q E{4{ޛ0)xgS`^tn0$,#UpC TsϷ^_"xII}1qZSe%ϯ/e_/ڋ gZq[ si`9F$Y `^3ۛxB&s+> T~,r:6R\XD;w-}IGVXRtW1;Zb)n|mQ`y&9Zڷmm һ5ȵ:ۑ xf;1oK6=K!GٓV9845 stŒ\h&cbVP@iu!999믡9@"^WupN[LK6ΰ<}}ׯ}ۄ[{|uҤȴ *t{WYrNU,1[F α=7-=NwT*WY>f :a(wt89oұ0d#vz\CgIZ(tKu`8P VC_Aq*l&M'o9.s){JFZNG.HJ]Pp΅GeRc!IE,%uɢoߺlҪyxˎsCfѽf|#!2Ѧp=]yڧ'>j/ގ۱ǍdE[9;.cj3,7e- @D\M1{#D@ɯy$3zeulh&ڲǬ-8$O?m n )ή $@qoSuP&Hp~|,I o49 F^`c½ RעSe- y.),FfC89p=x&}1=[,YI](U-fSˌ%X)H>g\Pt]16 NNSE_X6;!טo-1H03-b]eZmkT{[ԜsN gwX^&Lઠt,ۢ nyNhx=n8BM&N*= rDێ;mxz\T"ʷ ^r2!(ĕu+ #ܞvVLSVtq,/\1°+7yTͿߘŒtQO ,ǣɼˮC<]s&@@zf),Ќ=Vɡ+ĕm4EMhpv&cK}F˻F\_0S-#z - 'GfJ@u%ϒ_^JJJn  JVs%vP?;gF-e5cWGq6#&Bbg?V/ ji򪸆Casi؟pf*߂q=h;/5U8ajߔgr6F B[M9qv aeVYΤ(vn/oD+w9i62hhO^W' o)7Q\t=1Gg}rHP(BtsspS%E xkF}E"={Y [EU3ѧ"@~ ,ꭼ LF[@ܦqc޲38QVGGqL][ybFedO?JK33c)שC:Ws!F^ZG4=@I[?qwhsZdDX1\gM1KrdyP }ҍfP6Syw؎+.)tL@ =bҰ.Lca'Ƒc=jR4%2/nEQrqxio^ #?6}A צv)RS~f\{@i #sO%ўRq8RKM>LϠT}mў|sy5e[]FUT慮BN9ZUFN&lΰ> p:3kUrH379qg|Śn޼5QiVepBc-8׾k3d_UP (V FU-sq\Ł^%ucٕ3SSȠL;v>r c RUPΡ),ͳᔳIw4օr fJI]>hgpBYLH 7:H%"/ErcWӻnyM`Vke5~B0*漚Ca.;tަ.h)Eᆓ[6~ZwV"7@;v0o?_]%^C a}81gKߚhNla2Ƿݧ@J,Yr،`Z-Y l@p9'Tj]x~c=$*9X2=""hY\o$;>BLKmdy]媗¹*N3yjA'k;F@ !pFra&uuh(mPa(T\=+c\9)Uўj#2}tl XjؤsլL'G51`]f0z)) ɧ./N*Kvu`k*v'N9JͯҘUS<1Y%oO¸Ej1BZ߅_4nI'ݷcb^MHLmpoσޱg>qi.% >G46˅ʞ3>MTȦwz­^WL4}:~ya"&D]iR5]\EPhnJ<(wR2EbG""7 Q軶L'`l7CSuAQjMٖ:\ nήeqd@9pRħ&(@]`uo]2wD9-]W64B^nǿñ:uoOKP3/`lp:^;T$I`vAxySoIH"_q:j (#HbuӮwLa冸SOl1pR~pw)Y|Mx Ug'u ?/|hMavY.~fMDg<+˥>Y[#$ivWgspl/^@'] ]8IJ1vy9YU\3< FņF ~v1&K<ϪA3sr]w~\4Le3F&eistkOt%J s=Ó@KHL&''XGH¯>~ض>\&qeb"?.~R60x]>>.&^2R9o@5V^n2lAWk8CQ2s}=%тD>!Q!Rh% R\5}L .6R %y;oYXrU5$!HoV+9 RZsZ} VɜrOoy먀TqCUxӖ!w ٺ!}lGS;][%l hp}E<[PELKEthZJ!MTʨL?H.wfs2]4gt wJ>:Iܭen1.b3}X2<=gQUqN\- % ahǏ0-5EIbw;)[ ?lzXQRs^9T\Ob_HX6!},(2 N vB6DdheDTzDQ[Ok&TKq,-)s)f]mO1prF(2Z;=<"ʑ'L <`?F3Z< p`j3X_ž7د{?א*7mLj"II!Cbu$49e)W]x60c3dt1]lk-KTT!L,$S> ˼$ந"k(œfg)r%xЁ;>xI)[ijIYi)^;ļN  zmЊb%b#{QXgUf෷ACXڕ:T<~(x EPD[.dgZW }R;ϮU]aGɨ$ jiiyk>8g'Rܕ9Q37F1ceKDZR30liY1Gj{uYGmyM'ۥ k sx.nBOkYZbw2vWnoJ9S[5x =\-/öM3]p1Gb%ÛY`E:VjX!eeHW1NC M4%-_vCh6.]6l,sfO~ Go{@璡?H =7jR) 8򜮼P(s-hŽC&fj!>'jM!u LQ+E&Oa֧mfdDE("]TCQP4ltE}hD>OɦcIhซVcܟ{*c^JBD09Lղt&*גkweb{A'kǦBpzإ(MD`?GOBV] :]UГ?FiM%eDJ|`ҺV}OA,F 5DJ!nb6?e.Mnjw`Y*"74ꍺy4b]WX|B[VuԚЩ =rx {P5:u8Tn;%W@\ipO2ۘ!; 6!1<0"ƝpoYtF8ua+5#ԨCy[YEREei7b!?i1z<8mNEb@udAߑTވeB6ET=qh̝LTB]":3X8uFp{9V7K޶/*0b}fm:%l~,7v66_.|ep!ޔ 2;Mt !KFY@X9=/;RH3`Sh8 OL^G3ù@cNvbUѫ=wx[|Rs>nYod֪4;!a)|Y4WV yye?o?*ʋw5>kJѩ{ ="] 䝾+@SF+uIÃ+X7Q!b92*`xC? ܩ5[pvpl̙2~s)fb`܎[D(FIP"GSQjgIjK$|\0UQ \#=TM"ʲ>ű;q"./2<ڶԟuzdP1؎^MZ䦠>F{j!wNy^OT&W$ϔIHYp.螿0LtFO8nʳb9rYA} tFNqjB(Rr-31z'|븬)n+S e:02 ҬjHOAV(I]!I^Dy/N%F+׺#/8cON=H#[P/7+=!&BRuK̝_\R$8+SC8A" {h> hjF2o!Om(eޭ@L?HsZz/WdlK+F+8GkISkOz\Rɡ)cD< l}SaBjwɄLmKQv  ۀN]<ݎ,&SQ,ӈA4uvc'I@ґI "kWhţ=ɬPjɄB*Ӭx/7߬|FΧ0+l2&pfza80թtK%..jA9 dtsn(˚wWeS2x۸<ԗ KaI.}USv5Ym+p;a#y"u_ =npu'9HU䄅D/MzG̚ITRc3ueI0Fzr8wU>aEixk,,k)-Kܷa+lڱ|ͥh*_U5r.|l`kcqcj[[zPN3$$M}a`F?tr@%݋ʄK"^Վ;)7h])cF$3|G̑'];q궇ZCrn*t*T?ǐeekS [68l܅6j_ ]Ȩ!~zCofr'o՞ҙ7226w*,rja #z'!IGcW7ϜT~CTz_eFHQ =qWIyLhe̙>WO=Ōw@ z@3ơC(a/>&-tCWE\J*JC%.0ߒ6Sl30y0K%J^ Xjfr;r\n/Z! *{PQO/@,zAٺ3_t1['rrcXxHFTтS2HkUa5qqSSp 5_4%aqk{͔0I-9boI BыV6IAq*J1EOn6))ʷEiq!79IW~U>km{U◉<{Ea l~:6f|nL.V f#z8 FMH^ڽߊaG.OgaFo8wȂh,B0+j{4 ڦ=Umš+ vKr^lbX' rC-xl4JVe8sBQoL4_ bǜŕ,q;7]'v&/*eșzZ0~Lf=(6.l˸M[)okEO.D&j!Ku'+L$Inh,DbZږAtŀnfe+kb$a Sa(Sii %~A'Gr8զ1}?a%cI"Z\&6k-QNa])[z 9^ 7$hL#]>wSRZOVKۛ3:Z!gOyi&@aIMY`WV(S=.WBbõU_$-s>htqPRܞzlh ~)ҋt3ez5C؝:FȘ\҄[CuÈWuba&uigdw9]{PISmƳqiѸY:N };8֧:{GWI MrOG`z *f:Ԉd!Zȫ./&K5:B~m*gVʪu|":0lN,9 wy8JɆlKԏ4"4JP9)JP@E6 ,#qa ugj2+9w3h:Ѩg|D14lK ?P=;8+#kh\Tf]1J 'nE l)U1V r2r-\ E_@xi !n 1gsӳzNywF??SjݗW/&~tOp@No!  Bqى/Q|J&yRTA#,PzMT`)5V1m(ŪdSa?rj!! Tl?.ɺRa0>; 3o*TE&(:0~o %\qκ7,/0Y}ō '|O2hGhg֔>^qX4Nt]Xp_})jBޫ`?\Ə3 *`ڰ:rwZpЛN UZu!mwng bU!0ww30(x̒Ԭ7Б&zinQŨ6{9 /ɦ|A{lJՆA fa4(9m2!RHqFe X7RA>Jkq߿OBg@v}@QwUf=jHɳHSДCn(F)%]$M[6+gڥ9YکwIn`i K 9x%dUj:v^rDF]:LD]سP{l(P4,;ݱ t#. onp ޸>o!y=>¹ϻ.DWr65s%X@ 8,|T®zCɑl{xynaȲLT1#qWw:ќxY:SpiCa QA"oˬ\"HM_C ,q(}yo =㤩I)|&'P?"k&dzq,A6You[d=3gqϯ3c`*-惐}y?5M$F_Oco};m*a6>g{C^ȓ-ԱwS}c~vnKgD]}<3}O|f WO$ܮt^'%\ zG2 ^oڑ&^qVD6f:";Tu aHlՉunF>:.EKja40]*4{ja)՝O#YP+ כ9F.uٯJ_(ZEYIhcSݖwe$7 lh!)͞0Fc3 &᧾tbfh`7]2k*+!^)2!Zqm"$Yv3 0o͐t!47/! ~|s8i,6OJ_;/FNFꆃYB }!7⛑8ͨB-mҒƇّxtA m+%/?VpydxW EJ7SI;vP?%ȁ^4b=n\JZ+q ؂3[a@&𷔨.*65g E#t\+AM]W@QC$`7F,@hyHe)VݟջQ`ez]!$v)-%B0RyIhTIhCN0VǑթ`8xb!=Q8ڔ$":AMݡܜKV˜6{q_%{Srȏ%x(z!Fౢ!IbNo+'UdLGٖ<b:bcw DYdz.XʲSE}b"fA{A+MUH(0ϼBs%%/xa-'+l^=rC\#PM~sH„P,a6s&9 "/ ljuT[{BΔplg cg1)=?S,X^6= os_)Ls .C<$c趄4o޽R~ؖ^%QF8{E߇ȱ= ؟3HLf|WInc.Eg%Nqa৽jd 4f=1U7߱D0FQ=*^#|r^UyǼ &-hJQ8gy 5^#w;O[>&Z7ɐl&VM!b)N1iQد<":FT\F%U:WWJƇF*?k 7hϫhYl'yf==Gs6)S7sA0#{.$tW균c2`/ *cYYX(GcyYYVv0@޵xr潀0m`i25-: V٣G"ag^JoI z6 b*< r"XԹL;OB+6gKNT(w"N4?<.DBH?nSqCFC7*w>;U5Lj^4@u}T1PRLDKwzy?m<j&;*0Q+3-$ ?,/0S\?W 0U1rn;"БkQvؐ_F-d{@`U_Gj$ٜ;+c6w|a~7TSq(!jsWK ABj/rޱtj}W/ülkZ בYK^%?حȳuRʹALu}WH~ +unSdw+RCpڕMS{wx,S0pc[VT?E!JGafŎf`x #DL/ aSo8! zO`54V+4\43d6 %8Ӓ5UlFUOT);ILᲕqtOs\1`7DBo~'=EoVj]\ȑʆP!ӇwƜBFegY[/+&'7VoK[p0Ñd cz9Ҽ"oiQdUa;&Y?wFfe&kW?uqDI(VB:-UXSS{ImT|- ME/"7bRTe7>^㎀[W|H;"N ~XŦiswA//!搷PРxRXBQ䂤ɢ8t1>H [ 6,wq^>Ya@<`W E4Aծ%]\)ecwc@EmECsoM2a9H& )84&jr3't=CDU k2,Y9p8ϭ=pS|:奪֥`1r/Wj,[(/c(Ɋk6OY: &Gu]Zi]o:ny@*;QI cIW-Γ-H0{8E U2om(BH];N.pC CaN5 \>ɱf~ s+Krc#Cqw`7R#[?V_ GޖyWR8. k=+`LHr6kwCb.GFw0 8L%G+2]an@G.jF/]P|(08/o*%u% A|{f7@` h=؂5 z4)-v&Oo $abLIj'ŋJ;PML;&- `P tCv 7~aJ`^=~9œM]:E :o, rfkڿQC Đ7;՘>Am| kN["`8jDѮN6yI/υ[0ݫX} U4\"AAk !bFؽ&҂Dr[CNwzY9e |,JcnWFs/OYr0f۟ܰx;M1#?@f6紛mi|xR q Sd`U}-u(/7sm Dt@=Hx&joQ/wǡ'&Kő=s; av'g)FTڣ<4%za v6eXFTkJ-iOLc "xʹS5G\Z*ͱM!*@2⥷j>3\53*}ř+K(-P88F^%E7сw, '-tme|?¿R_xJ`{RT8G6.Wv⍷.Sֵif[j}>Ir&!㈨Z4RMAAC,s3?5wMմHb{`UpfO#[{9oX`duovW\ )^V1)7b 6#mnr NtRGL):fO(2[.&9ڃh@9$Bd٬c-3<~ X|s5Welj&s!}#]t臜QML kD9IY;U).ʔW]Ħ<ǧHůF.>OigoP+X[vh`SBcy%H &_% Yg '{:،Gvc/ ƚ:mfk..ujoz׀XPFPmgDdգ@x#NC1^ E`^ӭdy3jnO<Жf;?X@V]AӤFR{s;@J+Kl6ZC,D h !K9.{y,дݻEaJ|s,m|5n-l? co |KW)N9KTUS視󷼂ֻ qĵF,_->V gV"j!6{֤ 56n|m'dw& ao!E&Aui+*sζhZf.-IHnsnL.iV> +/wmϔaM%)zf8 O&p'7o}~Nb}oEBB_ޢ7%rF&ev!bj1o9iۧmv\oV% )%xͅ\aalPBp>H:ߋJ$~ BL鸌n݊?c_FGچr†U8Q5^h$Wxy7O ;Y󧚍RrZГQ#WU:5@xj;yI2MAy:[R9QC(AHu-hjٱd3s_[t8*mA`s8$YT-uWcU˰:;>:FV#.6|Hؖ _M6T>.E`ͮ=;|wJ8NJD9:aɲ~;a-«)A'ԌY#]&#qDZ㾀*N ΐ)+T]"ZS^MD'YJ;LٰOB~{}(vxs4caݏP5^pܷ8Ŷ؞̙:ar.D4)% LX756G U2~32L6ֳL#߷d#tm/\+:/b#V 2XrW~KLj<glH-l0$Z/|'E0| @ d33d)/ou#ƈ3TzPq,rkMC֌aR]j&4˪?62Z62 my[0*.cQ:A3[-y憁[Ds=f3MnUO͛_r0Č ~rjtdKo vypMB-(ʖӐjYpy8ʙ XgLs?fef:2}3h}--l{')&Sïcy#v7"X$"cՍ2Rr,e ^;ֺPc eJL Ha'/-n7;TqSe}c)oH!nļƅqP-X{* {e-HAd*̤g% >Kь7/IhDxN#[l{7cIqҏܸM )k':xUg4_$:^?0/~CNi;XSsͮGBf6OXdSl+ɗ[/9xhndgagƅhNI{2ŚP8өq^iqVa_ I&o7(^j,¨svMvm3b|tR"MͳR}ַ/6'Cd`dXmIZ8_9q7I}1RY9igia.5"9>X8#{BeTJ;~6Hsߡ\9rX+iU?%,D3+Ɇ]|W'Y}({)%E DZAu$d]4#s{#i`] qXX\Wj0MqqHxED|/(>)Ybu^ g=rq0ťU(&ळ$ 9x!E꓇yE < I]}{DT+MO#;ɟ @+X̱w/?fHbvĦ==M( 8g)^fQ8hԱݹ_y &4#oNF~ >Q s EK&GƚaRpVҗK+scz7]p0hឱC\Õ\*f<= uRTZPfV؁)voɥv]z Q YũHs(x@y·:;kbYL20ToQAgMlI%1R| 3DӮ "I[({ TWizΔm>Y2O9;2UO_(v,u4m \W2.R՜+?_Ge̛ 9PL 1ePNTY /V(#^-X]e'c@C;NkΔOS RQAw5i'ai@GU3&rm'MyXK۾Nt~L:ß9tbZt{}fr1P[mЪkR[;qsÇ? g+Qo;eeIWhFOW^ >S_X  Uڎ>0^}u ;^0Čc۰UHUt!{Wk;ZQ4IϷI2A X:*[OgWAO)rÿ4"v &n4 1B p#y !HX?2VYt`6GUrFf|g/.EV9W8tLۡjUCZ)gPM`&,NbV5LW}r|8/Ҵ̓L[SA/1#z)F'qfJ$Q̓`8:o;$xaCbnH˱AIJt ̙*'F PdBNG屝.RNR@"A&1siF$ȥ a0;w[:ILAT|tbfکB<,$y[>pM5b=Wn>KF8WY[[&Q? C.12|&hL+>`OxO©s>\"2;X,읖i;U)[c͈DƤZf^l0J4!Fńi>T`=?9PǷ`:%Rr #EzݜnOˮLKзvf$1C)`Rav賙 FI<0nl{rdKH-Cpw|~rU Fj_"}}r!-vQVJiD/\woC]hGdA%ȦjBzҥuQif엧6axٖSj8@9E|jm0!LӲ4$68Kp1|ڒ5-'i9zl}!Z-'`Pw`%TF# MXټ'%e%=]6ޠUMiocXܹjL(kfKx.NxtRԙ9ƧrR){gw#j ~-lKnCt8MRK1WfffLM2!֮YB}?6QqnN3vRO1>vpL-M2<0@ CsHZkμ"gإD CKn=6+)JX[o,ن܏wܫl,7A iPq7Wu]UgYBPtw\F6Kā<6҃l[gpnDb $= #_EH/AMd* 4i<Ɍ}}]I,F Rtz8M,|H8oiђ| #+1B[jbA!\H ~ IPxqG)k$$ Zjh5 >5ߧרVa_ ۔kih?mJB5#3V4`kE[@S[Hy%/yBgk[r0l&A=}I&[}gE9?,~} !0 N%b7[x.2DDqEq7ZPDc`<6h84p*n1sM?Щݤkb}0ic"$рb.*@FvFbwnfEԎQ^WB~ _Z{TH?s~XZ@Ή,rJ٫[?SaFDC 9HjrG+l.~ uɟ1/QE9٘͞S糉5;R@*جε'%Pm ²?/]bT,,2u#2^Ӂd]Sk7ֲ.ձDQ@Fh}Nv((_U۵sijFALa}vĭs-.W7|.ǪxoY [ `Qc4?u I.ZtY,`Ⱥ94 {Q^:G:a2)|R)x3RƝw.Qx4[ >CbF;ۉ@u}PnmQK%!"-9A]A~:)#i::݀7=IwznahB7GG´BC\mQ<5M<\#nkD5[/oPH|Wr!SP?,^-!/|>AN:^ mଫ d/,FIo. F(>>Gr֋'08 7D[׬<9,b+$¹'4ض,( D,"`2B& b|ML8jIvb/ ֎7^D`' O[o {LK" ȳhҵ+ԽF֪q̧H8^1X>!*J +aBb |ߡ4Y`"c@^]EL^& ði*`jOVP`z)X}fX$Q? _~5A$u@>7{Th!Z5eZJ`ŦjI솃Y\e`. 4D?>Jʎ(X9.\dFz9[k{W5$()XA0# ߼)]P;C KD^ҴG"wgn sq &Mv p3`EEr3q ȶ' L}m82Ϩ3R}zc  +$|a #EC&~\gdG[NRb<ϡ0Kg^;ߙ44炇fUXg_S潵erP t0X tTQqLBw+1ѷrUJc35WgwNYqJ % ^GDYp P+~՝6>LuMN\@w?a aXZרf 83K:{YL#u]z~sbd7~i'1w.^$('źޗRfVW>ݙ-ibHpڞv 6 KEY~ߓ,Tiqd1kIJL]40@|d"7r&5qnjKHi!Jg N\)E،AH{V.b΃<p%RCOH,h`{/eˏNvrdcWE=ɨ+wj5lr: -X\p4@1jȈ\y>q (/^Ĭ='&m ج> $"EV4:-Z cv? #&Á628HCFˬ%noZ}'u'E3Iḛ~X2q:/oE в>|>LҬ*nfX9!ХPzkKпA>3~'JaUєG28ޡ vPLT܆hbdJfH] =n.<  N老Y~ѷ!QCY^yK4c5͎ˆ rj<'7Mb AX+(lmΔJ9kD-wm0Yf£sɎoڗ׃N]V]:~0y'0l갮7=.7R:N'xÏzzVavq ֛21X"F vc8VuAp_d]?ߓScHɗ/}:>q-@ѻs- mz_VԶ_\CLMiˆq2g  Q!G; =22[/ A>3-z#(<ٲڐ{PTsw/.@x~`ʓي8Q`OYYD|JBӅq?|%O: k)e_^䙻d=*i" ÙHeV5#>ǫڟ[EnBۍ·h}6z]Gue$>i^wPt[t;;1s25F&}3N#B,,Y: IIZx;T׷ WbFl3{1ui* n=,g(&~Maz'ȭcX$h5MmQ 8]T*9$%>9(JR%A!ٮ%c5!u\@ڍN> 7ZY =6 }TBҶ˺ş)d}ʋ̵CϩyxJ'FDP1H-ݛ'IpW9` =ff:mփ8ټ2_ TDbB!34!o^"h"tp9-G=/Ta6Ynw\6~/pRl;A'c"1OV2#H.#c!QʐbQk_ O_f`sxUni23ͰTJ;\O^l]c9 Dm6T}?NmXe!uh2яk%YxZN ; ɠY6@ [)r%8/%g߅r]rQX;aQ x'HǤE D u`PudX~ mD,"d}ÌVv8! $+]dJ2e"xK-oS,F~>jT2Ј#7sU.&"rG|FO"9:Y:ӓhyƱֿ $r2 w, |}x;cTHnV!mj߾l!q(E<"J5eZ%8͝y)iT.23y:Kh9Df`H`#64cHz=|R{P]QvSgo<)uX-$;WAS֌ۮ0Ks]XSԏڨ"Lb\1&&P: O0JuI>+f{ץ9=H¤Hܕ."+{O7hMh'46Z~JyE}'[/k`,4@]H!;ډupkπS)0տYNO W4hk[qE}?+mK5gAy1 4{vWHC$1O ғ"Ģ:uC7d0~5!a9v3,7sĘW 5\2L+.me# dTIbWN%=R*<.ynĕnx终 u#|5ԈMvg>Z5VG2QôyAШ3b򆙋j^gKZD~0%g5LYU}bfU\D}l͵6@Ҵ+[e~3n$[K/C´/bb'01f.b(r2APRu-Sɦ'XhJ@~8 ;ۦΠу p@v8q 0A7MYbhK55H=zLvD/ Oep1WNNҮǬ#H0 ?Ku7!τƵd*&5+U;KKs)cQ;de,]ET xU͊7s@n&B2X}|Rn_PƾW}49}Þ9T.<¤T`(6E"PjP8Ђ!E6:Y9Yb$LUOC~؋}${)=c;TŊttG@{=.WTpyqG3qٷG;(G[[=w۰ Ɵ21c}J^^ MRcM[TeܯmhO o栍:߽Eٴlkr!)H9e,h/ -L{_own,S3^ƒyo# ? .k΄&2 m

    FXp̲c c$Li؎4yRիg7G'aaގU碢{IA,v aCII6{ Y*ˁ~[V4Zk0RGe;%2`i:_1uf6m*f~͐b&#;w- C2ieW-*FqkJ-cмJ>ݮn'L:@귰eȹӮ 㼘.xp}R'QrT?X.28 X)^b:!RJ7P =l', ʌ,-? n4+NoȦ2Tޝi~'؜쬛m +<#}4 ^%e-*cz,!q>] xWi!&js]@:{َ&P$P9 RI%m(pƄsb(@Q&8)A44 j |pE}K.\$]K耾;2ùQ 5!/xJ{nxpl_ⱷ,[XCпS$q97qN;h:P@ h{PK߻υ;񏿂geh\a /@rr0@2KKDl/!:YSҥh3b5=nLMy5 TVffުC_E81=l']vy?"n`Zv).}8ɕ=ٕc"+\/~f~ܰהR-w` کư}tzƏW8(B0q}{?#ƶhZ\[ˑWoK2vc< XUP i:Bݔ)W B h>~l&Ί ]mq5&-+ eTtTԲV16*/E7ɫPՐ~eZ|4m  G(dDueJ"9xς"]~Tz9_Sb$<~v&EaZ,A Nb@)l~_!q4| 6B}8ns fY[Toq<;FjgӮJrotlӓN`g"a{sb^>U\(%l-O`.jʖjx|z]73GA>ϫP 2a#6u{[KDڀՐRx^uEtN>DIѺpqƽ UAʱ !z4DV;Bku|6t@2y%6? Pic[_xq^qx*^{!xRj|3M/C,{J<KB%BPZǀz6Y{f4x6ER R@|05I77g[NV^}x{= ޶Žm"oZ3% iʯBz V[9}i29~ y34r.ǐecW T+W:a3r&nw:/ГcH<[ORV:6j#d:]õx 3w{c0- 3suE#>E[aGȮo3w1_2<ڮ6mi-%|{4A7~.zMR{GPJۘmJKx{`A1b)܏?v=K' @Gwk[㒦X $ɹ g:+HM>cj9 TryN Nq'ጁv| ѧfcϭ;g?xr ]fW[l7Zv犓`ФgA)t:="zlU{{N_ӌQxnj5X޴^]aY#ؚRZBSޙ]#'@,/E%ܗ֊B ڨg{sKr1+jjh QkI<=63o?u$.^ ;Ϧ ~jyO{G~Xb&XL-fhQ|>z%+ <ҙ%.jt?@fR"BӏĔb TטHk>Wp&0rI;6Oްg9v|%B(eh]Z|SK?;f% QG\)'V,u>ێx${kS>=I)bt0ò]b .XQ 06d(`E4+!{Gy*gt{F\2gZ/FTD-Vv{5ތl`$w bPm Ntcb=RM"ˬ#ٽ |IP_n4z(0:=&(')50ȸ4㌒K;X`e)pUD$.fA4 ƹyf0O?:.8Jtx[gr(Փ #l|flph}v|?0j8eX"=身VBHz5<7{yy qZ]B.a 83> o/f ~vK'y{;TL#y`o*&#@5k%ך 긋l (~ bn\7Meۙfiً !s9-z*yPNZ|Gio\B~m֠%hr;XF)o/6H h?M@dx$f'5;My已 ;U.1w Tnp쥙8oAƄԐ"A^cPHc3O)MեQc7B:3"' 7saͪUP*X gGWe/A3Ζw΅ePc;D6ob:sR*+[h|LUm&2=m>ޯf*_.zNj qėl8vLhxli1mG iRa=4ϕEY k !4 <- gD׷k|xeҳ^(v)ɼXCw2~v>tUU=(M{E@fDzQ;[%ڼ & 1d5+)2}l{$7Jo.SC*瀶ޢ߱r F#W|>p*9wHuL*x2oOf*wJH_ͮգ3{PT[r@T{_dMz#}p\yP+Z2#b>u L5-@]؁W9O](il-M0KJ$hH{uWh 8XVAs9 )B:I.GA@dlҴ";yPg@4s}; 4RwM%8 ا1,جp'uW K+c#ȢiBiOLͨd ]bݜCϿ(":nDM"^5Nf_p񯔍^_ͱb`qΠ`]| ߼Hop`)chf<ūwz=ྨB +4 m쟊␴: s!_<.kΔ7H/jPe{qG6} M`=~D?K! '!%LUK.ΰ\<,9B #w+ar܂bj:nrrk3#qԶDٕ R=ӏ ׁ_jř gzhe2$S-06fjH'96?YP@#*CNNv.ҵt  0I,vŹ1߽D⩨\Fl8]6:0!ȳ$ u9\%0#6 +sbm뙣Y?Ta2Pٶi+`$61g#ʈs?QE`Ƞ 5$;a|oE;&s6Ğ Y\ Q͘H))&sU5;'OVelAR" YBUR s(0 SHhG RG|dÇX܄pE>v)B;]C@/Ƕ'+CXU=geX_ؤQCb}[=+!K@t {p+eH~χUELys.@mq%=rP%F-ɡk6Uޞx=BܓXݖ\/]K@h1[ n:xjXš{P bP*'S*-Ax16Y",JO:>x ]rGiga@t/`@ h%[MxJB259`Mi""Ʀ /D5ł^%&'~ wr )i&Nޠ,r<%lGi}iy|CyHIl=1>6AW.h*O KFQlEDc{Gpy. vYB^|DQ>a-1:?`#O61҂ C)Jz@U4s**kz(XL}ƙz`6D^$"t7/:`v,YO Y#>/v&O6]cj]ȝ4*g&P"6CX h@[%/"&eɭk::idHkKpOKV\|×LamER6]`1OF)o,l%ǟ)9Ϟ¬[F J,^v-\N;Kp'Pc;ܷDZT bS:O•. npoizj,\~j˙O]1h]h]s6CC5ESJJ'ߜ1 mcVfF":,tL>Cr[5R:WY!sPZ߱ZkZK%4fLD+@]42N 6I0hX"!^(iu~ꨋIbAV,6\?@U9Rrhf6&8ezSN<3T3+";:r'K!i݇JQI8hZdqݯ~!N,j,1TF%rYJjOŃ1p^/퇠om{^]0a-܎=ߛfhVʤ2p3į W?_9"KHes8+b;;T+Pax}ְ 0VĐ ÄƊ9m(rX>oגuB-jV@+jГVsתR6Dotґf`|z5! |afk/տr=gy8a ݿhγ(q( b+T ˆCqD`\ܲ`hož1q)/>xuN'Q(I[І ,ɶγ""SKM 7奡zIq Og0\`V?ΨTVO o򤶤(LA~}' @i@5g!F:ŞP>5$VP]߇bD*e9xr%A/ Ԍ`ŷ2jRFQ! }daگ90~pЁA tYm)Q=Y|vŸ Ya*CٲtD{Br7gt@l^nB4yW㯇7bP*4٤!VʈsZr& ȁ[H ň74jӌXMhfFtI&oVeןX)krJRZi,sd&`ILu2Y `I3YC~U?}xasō_WOK\:8XE%Ȁ9\ָK<&vN]eNe׳ ~?kSoiIw,tr3Y(1rmCjnh: ;8d(a^L`v<3+L`=O$8Sa~68=vꡬJ՟e*CjjmgʕXug'dbGɃӍu]UsӖ͎r8L+adnSAK+["MH,"{Q; |B4 K4ʓeZnBVc^Þi_NC$&u /R@RHxFt<I>&,1O0vlɑ:m7Ǯ%hbAs|3՞y]c/yP g8YFǬvG;ڞ~]x՚(KZG+py(YY͂&?CBeSwzO"V7V 4tuzۆV ϣ c~P3'׆spUlI# [Ӷ*ZZsZ'~d i "C,x B*=Ċ?ӘDcw|I% cbHVq>Zv;S-IL-+f4ӤftⓏlz =N; . <M}|X>< p (i;mm a9.Eh[I K+8У@ȇ,I wW,K.ϩ\u*A Sn1Nvޯ(/B# 7zP%ƲD+36c͉9)m 7,ywc6".j7"X4uf_ډvBŬ")>i>Œ8" 2"=FB9AEu V$ hn%䍇eސ2DE&1~9:w6p]5 L1E`'ݝ3xj2:~+ ܧ> @%Xl.tVm7h_>r%G*(?rr^ cBz ;K f]_9F2hjNض@6-%%v MhJ`^BNw5!U{ 88I3|dSBfʗQ=S§  tmhq,Sbuj~@7#ؤC䕬O6_æb&#[2e}G"͚8V2@ln_*eLusL`r`29iq +NvLjIH,*۲ dǶ4'p, ?v?VQXVj."յ+:ʼnz@F<:ŵN|0X.UaΙBD۱yxjǮp"1)8H6.i*;,C{!G }M*—6TڪpY?=Ѭi4(INgH 8HQt1*ėvK&oK-97':貃 cr?d3m[xu~N>^ܨV&< HoVic `bc<3jݵ2Fr9^}BaZ׭ λ7z;1/ \ZVv/PػG9Wغ !{_0s"04JeV7eLNhW &_85Ti)_]&2e #L6e^.~GX" _GG'ON&jʯb9?Y#pA.Lh 'S _'"ܱgS[Cqq*<]vzՖ^6qR0K2G պoWt,w3PEmǤd>!q 5^4p9 ג14GߔH˭@ASX6D'l&p].O;h nHv " J)2;?Q"]0 dE JM4Lsm%=h{ƴCD]<xupTk_*p3P9e<,}sD-ڸTMFE>2rNFx*1< :ȣ56yk\#9rnު.? < [5}tN%+Q59nJPQL讱>~ێ#O /ݓ{b~єR"ZpJ]z#>짂GK1wA)pGǘpܻ%"j ůąA5u Sk/KrL.<ܔ ] ?Ǚɿ ;Q nwX7;O\̉ 3Q EH-T%T΀|CxĿc#eeOCDuZ} {}^o{h\Œ*.[H|folw[ܥW'>-$=jBqCocj 78V@yciQ "e,KU@'(׬Yf{*BW#ptG'bs  IYy#gyw6RJ fv{DqZ"fQP6m7a6^j Y,IOޣ+aBJ <BvYt΂9 ti8=IMv`0{M*Ixt,䨠M T:[ gΫLpe[gf@U K$Z h`=8/kFȪQo"_Whޑ2m L5s19Y9-k٨d#FY)J<ёedRE|˾V7EţusŌi)$ta_| B7([hC:1h\Cp2'.䴟6cځNMBSXYm'+#vCm:^{Ln@4)֊B LFe?%m$l7Aٙm%jhp bѥ2/D8X Q pvM#’7w-ތ%<$ȹaHXcoVLv߃)a7ﻛx;mS8ji Kf߀+B;S2piϧ~?rnLv7ܒ%%]d #bj#mLZ +R3_#:!^~,~S "m@Ffk>l0! 2Wkyhl*ubv.3 Ԕ!++'BEZMǐ!^1{nzW fel42؍}m364l~}^ȀpmMyu4&iO1T1 6(5Mҿ}J 7psH'Гr<1wOրw+Íxje_'84g P4EFW8s;n#4ԏR;юhm0] ASuN'czTv ]jǸ PCL[lvC>j x&2J.ČP4FE %ZΆ4-ea3. Ϻ"Vy,A 1˔w+E3uTW*JKoiGUtTj}AOM8yV' F2M}"t}zAY }v$IO]=9א#0:]4~$_ݺnid` 8(A=fd~騒#f BNMd'+}kdm*bjBv'*`EB$nUQ-!T40/FOY'\ zJ=;nn^`+|"Tp[7[&t4 \,՘.5^  D|LGo5LbH -P(OCO :%L9˺@3O@hwJi8J@ewvylp` mU[r!>V)B\LD<8| ǫN8% @(΀[w1^?oʂhlDS Nj+݌ҳ戆ߧ+jq(eNd ƛ/#fyBej36P m!E{ N| I٥ p1AXŕ=[ϋI"92PE=)ȖWܸɐ=cfz5bΩYDM3Fg>qeQ|?z-mڿEO J᳣ cDF5?mC<}|&Ƭp/&h3!:55u[SBU L"Dt* /˷m[*LW)IV`Zh+QI 3wM8i(eT $:,]Mo|a|-}eiB4:%;Ej}l#z}*yél; InM_5(woQu@+x=@ .B2I3jY4!NZ ļt8*2٬++IaϺ>er_Qw"[đQD: G@L-v=nowgB N$}*nf4k+ Q e Q~T .E.[_x%GlQOU^+B~GOlXzLK$S;sUC!N[vυ6SFN{؋mebyF(]tM &א1P;V[LV}fwPUkp~[k8nqѾϚ~Yt#B\86?A|eV9sN7T+u]E=s" k<崶[1"wEf_^(.':aS=mvքS/5[4s&x-WaaJ&jЙޛ edY-BV?m$`^kُybInT,&x8a<?]yO{ӽ BeKp$6I|{wtu1 v ת2O9K]z$C\%IV^{5,I,E5i1|=H{l("Gl_oGu͛:ܦoMD Rh t=A hmr06?[ 5^5Hi1心`lCwT~P&ț{Ź^y9b03:P,oBz:9;SIBgrȡ.v! &ؐj[#Lh*36-} *e/7%)Y{40pN IDR+}dLպ;V.rn:sǏJ@ ,=bgS)kwR+STA%*1 6A^pł 9FRqv47h,GW DZb.:fs*0O#rF( )?vyJ3-z%S+&沉TEuCb;{ ]* @"R[GtݧuM*Ԫ6;zp))I3:/ ]\w2FR뱇)3'N(7x%@! Yn> GEb{3݊f(=xe8U9 5V-f ϵb i˲CEKrŇ$o#<4`KF MC=dg*DfKXJo,_UR5Vچ!:J-Ljn $5xmmԔ` bmͲES'UY2LH=@Z 7  Ou `;U,_@yw=~xGYDebԆrf>W I鋛3|dL%Iɏmבt_n*mz<<>քzoz:6X@p 晼 nw1LTB(YX+n>;iJ4[Tr1*]&`V)3_}QڙbCSt+PGjG{/6A]frC;u~;8jn.A˞85a2$9K/^Iz1eƒHzgQ8 -wcO3 :r“8C\z1ѝz4le#ܗdjn74uh/2j}@vv*>Jջ1!M (Mٴ2'~u"gYʀ0o|i# b9\-$fnjBP 7[7zgޚA׍D#v'2 :62vq̃h{EA] ~0Yi>$RD;Fk;D #N糎&9jim6 b~XAAZg3~u$_,C;͖xKTH_FAZATMWHfGB_ 6L%VHsz@g2PؼE|^칙q| Ș:iB+b E˶H^~=NMXJ9/"C!- 'I8 "Xg$#"SE6jN"q Yi?)ϭfح-DoUr{< z(`9o1H*H!Yu·o3 skZ x48]Jw/Z¬T. BX@6Ѣo@xR7;c(]5zc. բ_뢫[{}۫:̋ X=>i}_Fx:71IKrb#%8Q(\E M*[3N3']q܁کzxmce_]@ARd@:eچXvs2|Ww[Xθ-qB967茳 Y~* Š}j3HeC`|F>(gdtmM;^0(;ݩ_O8Z*7btw+ 02nܘ85(ʑ4I5> =%xabJٟbMMɲWE>xd_f .gxI}ͶQ 8mY""{JҨڹ;-&2T{ .B(IȐ+ R ZWKTxu=s7~ַQތ `x2L wτDY?%> ʁ9lY5H&͏"v /%ע`lBu%UP7㻴Fӏb oY=O|ۻo(U<|h,=̏ջF M(ZҤ̪Vk֕gp3Y>g.4C^6-(~ 4?LkK߶F2e䥹:%[oj.mӽ(E?I8!peщ x)'N$Be}ѼB]+lWi~Sn}X֨luEvgCEіf:‚|2A/:;3PaF6~Aߡ ٥*u#mPG1R8>l=c54j>`~}Lf79BN'FSj_q[CIꊀ=:ϊzfW}x?/4猸Ȗp]D, Cr!LOaǝj7嗽.zi:`)R !,Tݚb*u3N wC6l%tZ9f7˔0s9O4h [UA'59؇Zq˘nnga<8/BT0wb:Z)`'cl%{̊WS^9ލ͜=ρj&6; +Y%9 '{Qig(U410Ti|,M+"Zp@ILV=ɊvmQTdDž74%ckh H ǖcAYi:R]wL y~~GF,pfd̺#`# YQg%!m;BghrdNj0 l& 4T'N/QF߫q˶րs]#$\+FQ`n~vvhF?c4d}zKoB{Kџ b,.lb[5{rՅ\U\g7rt7VsesQYvJ%%@DO&)Vh0 eM*9kF^]m,Åz9 )ƥ S$Զ v í;nyα4%ج;NWJ?s:.uOKpAWP01x{hQT:_ $$q"#99"4=|宰#R}AD x{;-n6K<%Ĉ i[QI)Z >>Wk+n6'S~翳+ZQDA"zDMȸa" 6DZx7{{q` J ~`U* -̭qMAs@qgy.jtmR &wj hTWTwUs3;m޻JPm(ӅMR,"7,r] Iq d}>K3cg/W4X#Ã9-^uPlòw1ֵcsZΰxHyQ Ɏ}P#UoݘE;RFГ[C3[ e"׋TM\-&x=͙Gt 7pzet|۱PoA$>r ~B׶-vXPb{Aփ̰7<->?߱UE[sTRDJa a8o@cME;_rEyf$:ːbx$.c a sQu㎩*npsH_X\8,z ݝh{J}PIoXEz a4&>f4$< {E`X9e+JփLCJ b$y:OK9DL3/u/+fq&n8 "n4} NZP$O| L:F$GN,OVo9 ZweQȇ @7ȔI@a)RFlPZiF*PmΌ#fo{C?$Ȑ1kp\:Wk%S$N|$[fyu_^Y^ޔM6~]\epW<8Q+/C ?Zw5jGҨf ,8j:(vuUi[V_G o׉T<@y5rW>ͺ쨠:{z'h 6hp_xvO/}o,q [ 0*+y|]RLYp\i\q0 bau) I2|ϔzu&-db8\Y+Z)Z*y)=RgEc1)ōmՅ| '<m5d;+OoVMhT(mPrcJL]uslwm>0 5QqnT?s{pGlNNr_AD{ GKAyi@X}RI$zVK\&nQcbwr N7~ ˙n^sQ4qcjz#J aSC>0$I+msoB,:7_, 6/yRĂ&8]|XRl'Jܐy4Ia2zc.Oh܉B-(-+Uru9+nb NV:0Zژ}::PtX0T|$иhB/DMrBteU`GX^iyjab-d ˿Իr%K|lScjf̅+ݷfJM7AN$Y2QD-h]3$i=@vQ23' h[`(sṭm(=dLCyRRl  NO9q8Ujh!"5G$Wko}<&*qNS-0lp |Kn q@ +;iNdOlo_2k.&8pfLp"N7",2IkOF5UÃ'`=:Vam$Y/хjEC;+2ZO *Gqci%`dnY\PFH6sòQV0ߖǙJsj1!)|uS6? wddV"A-A/9rWwq%6 x zΈDĸTP1:sY"ㄶ:_hвUWh1r}[@Ŗߐc#Ԙn{ㆭwp?WJf>D9W,aDBKA5yǯ G(~p4pMh!5jf] g XW D>qi!I) ܄`3X BCO*mw"Ho:Cx_cf*BE|뫐)Qz˫e/r!$&V#Fs]r+o|Q/XHï zWL]._^\i*08=NSNkb±^9,1] #jb{XPo^$>FXFKf("kR~f%oҎmf sڸPX>ZNd_O3}Ht["I5jחK zs#<,꧴'B$?~ xC %r1?-T88cqxӐAU'DoQrNذ-<'ZG=x&S|``لow|dK>:yUx_@Ud}4H9nxT. ^̶hҔh'*ՂkYo~F ~Z,';'R&V!0i6525ﯛ8Zf(:\S]M-EEVW_Z(ߐqoT73 U)$/݆?yK){pݍd]Rxg==ldK{1/eʠ>\k#o!',aip$0ϫ]E˭t@w2p42݇q{o i0Р9.dce*Kcz#0jWȸf?TMUPwE C޸&%ALds&%ќaUʕAQ&v[(egex_˴ w 1+o]MWtDdq(k@@d*uvC EihR6[(/[+ZZ:`a3ܣ'!`R<)gfZ\v k>( #⶙$^;[(*Nd X#"g9PU@ N`%vV]"M mGCz)^eq.dh۽1,Ǿq/AZ3 )7 ^}@Hn5W4r\iVSrv Yr8ߌq:$KX&v3nJR&\].7eP/^L껈B/?k,@Ͷc509;kKҪZ{X }/dVhz>~qiDT_1 r2 kE|i[RhW*ھ^3]{(Pq?"ȩ ǘʧ~mwG*2 ))eS%V-eB29miO[dn_<^_zr*+:"Qqg8hb S!NlӀڇ6 yڱ>1^wUkA̻󵤯2nO3A"ϧL?YZ} QY؂D"L>LO>_`m` )l:l)l0 YBDiBud _ @Y1=GD&(en`+Uo5(ͮϕSE|()ߺ9bA@'0@p6W# t0Nb'ކ,:9G/Qefz!H׽O%nw%:|=K<a<,we3ZBIvJ#C}V` %]>T/~/2AL(`}N-Bw\:or~V8:EX댾`^9Ӑu(z<-Ѽ tS2g ?skhI4혚eԈ`2^$C t'<] R5Iz&`Ca+hLղ1{ PI4YHb0r$Yrx6}itSdVCV撡jE$0A{9GfTzؐq~O9oLUʤ2Dv;pKc5g}V`f7„g5-L҃ h;1 {ȷv4t8P4ɴ:R_'ROqs4_yr9z{lc'f%Cgf0{dZ g߳txu3I,̱[f hJG#QyQ&3hГ:Nfxjľ"ٝWqDeZ\Y#zm\?W OUՑ0Zo "AgqŕFY 3b) .th5e,2m Օ]!Pkx+#5 zŎ2VoA剡H՟Pz2@aD΍0& $6Élr e/nDYe;'N? qOg*Fm|M=Vly"ɽ?ҵngy*6 TrH$g{"ItauݏTb579ͱ?BPd@{Za8jKL99c.8/AwH| Hޜw9wl0Y%;s"gZ#&xtSfQ&ut*ACZxHSuU=~f]~,䐄~d@ "]J ?MPOZoiC/ļR_fb|V"4>\b3IdZߤLZf=>z( !ɂNLKd30EؒE: %!r Q2 EW3{Ϳ84;YL^ZE٣VLjwx6i(' Ru 5jos3:4}Ր$JYyP"̮3+ne+/9t*M$$Y7F|/iI\h"n_9EHc8/y|Yi]Vs}t~!М5kA"LsNE  cWnR|%Cן4hTU[R4 6Ϯq%a*6da>c۳&@ck~4=镭C;^ѕ~Ia^843v܃`[S?~B/ W0,"G9C *cȯvE#<+eUX#eۗ+HyYΘ2c d?7Ӝ0:DR_P_S9%b?h'_7^O͋_]zUjK3 8kuF3b9Tr(l5^#G֍ :՚COxw/t=ozS} -Qi+|Ko U` i~K%q|,ނ^lN/g4Agy΀2%1TGZw(!ʱ !6vkxQȇj~D j|F֪ݘl.ӥ~+2} /I+q&(~s>D PJG2LC& v|h =a:6m'?ZdZ}o>)9.NA,-HIQf]%ʀ~ܔ󋑏p?5g fj ވzkrF->x$KuoWĝXSJƴh$95 `(iosYe,0B)yAEfFy4 b{sb[evJ?]lJ6jYQTu&|r`[b6,A?Yy؊Rw$ ˀP?LBp8zCb !x!wYۿ~L*6pW*oBod:)pbo'rӌxU i ~ZYW$\ʛmݞ<" qocjT5w.yov;@_QCN|LHMx!u)ҵ_ Mϛ3Uh.ȟ ~IɜڄS\ ?=rDf#i ifjL w#7;Y;JEGє0a2}2A){-q)p!6 sE{&>`ik)U0+Uq ƕU EjF~QOż띍7!w0dI_7íM03_t$K/gTL/V֚k+M0Ms\eT~ޕ@rMAUÒ{I󘈽S)R΂,$쵤+ci+$I/Cc,\?[3Є"=YGK?/0IJE|)a?t́ 4ZlZu |uYX_@7 )ݒ&`Xii8fi. 5*C-:P2j{7\DjvŸ{xӌ~]{|)`I{uCzQPF7v, a΃[4Bն?"/mi25@eM;*3PN$[A5t { y|,,Ln&zfMTe0=>F}SBLL)79'xvcHޗGuXio{iIaZDŽ*"ut\Jg">{8hyOg9tJ qo`鋇-in8,F$oY&:}#?V2 wsT͈6 eI4f-ߪ! 5F!>T}R(WM9wsc]{`>07.܀& ٖaH#:XH4y Hn|{|"MZQ_F*2#Llh9ڠ)@+y&uņttTYAO z1KJH{D:W[xY vadxw$+ωX| :1jf&n&1{x#\_NƋ,Z\Ajl c'>1zH*2]O L7ˑ^6>F\E U[O:f{"}+tn#\[_ #D0qVJ|@k~H] l7I=Xaesx''=`X|+ogWzTU%dvcRW{xa+&A ?Ԉ[Dv-`$BwpVJt* fr.LTܩN\JdJƽjNye)zr`.}M+ǚ38UC ꡲ9c5/ZĮuv&+Un)pz;Y:fQrj&WLSOӤ} bF+JXb,M*h#) J$(y1}p3 SѷM Mjhf{6]?b=mY\0`fO; (=i;hua ?xwB"]NbK/8om?& A;XطO gPls7!7y<2YB= $qI@9h3J<{&W_ևl}Ztotӄ E%Fu |Fn:w+o} ,\)fD}X6ݾ@Y_w~BNpf|y³5ƱMwNwoy;* nq޷@|vRu:oŧBӗ "B-.\~xSnFfg=x) KO\vVDT+A ׉ g0REa]K~]#f3@TX~:\\[˶8+Og_hDTɲ@~>UFQ.gUXeUC|[Yh?e'M;-JƅZ*9C mZ1OXEFY m#E5(AepzLpf{UջGb$`=n?گK|WVԚ(fXc,[#d3c\3y99 Sruy~Fɶ_0r9{# 5Gs[ghj*Ix.SC #~bXuHQ@憐Y~=4ɺ!a}H~FX] jFE0䝑"=wl:Q^kTbg*ipVԏ[3)vbǏBe>sPuDo#>=V1xrSͿ~d7%ޑ7*[JE} ݱ%aZ#l/tP @0pv^@y~LOL:h 4`=W+J| FY:\YA^\Cl rW.BZRʌ˙O{gș}9xPCJic1*llw¸zCyyjqbEJRtws4C腑+v|؝"S:]bJuY$2YF,QƊ~Cz̻LաtrԨ)401xT.:ڲS]SbhWbXRkhX UeP"#ySϘ<E35ݷ"#!6y|,W ca!Yd1}|,,n2Ν]s|b61J @xbk?y7c`-Ƶ%$J7x|gܢZ'>v2D_%(n PqALxz?QnNS(,gRgBH d(L:B ELw'@a18&!\PO#OT'Z&i{~LUES#=8!1[Y4֘}҃lHZGyzҔҚ'N:BOc1H$g*zA(_HT@̬ Kc.k8:7E:Lg#{f]KLYÜQ,sZ׌YjkQ82լQ9\^v>Bu'ƽ Y(sg}n%'nLr)7Ep }p=Q7Y߱e*P/Rf>dlJSۉlcw 2n< M1\\ix5T#Ϻ#iLQ"6\4kr7a'MZxxQ }&5Ǜ9m#xԪ[{2-"+ǽ4;f(j<$xa~zᕃ@UǺ,w6ObZ[Ag<,UF&>gŽS) 'l8VyЅ %X4zI@>Eȣj3Y,cߜ/U9(3.6֦AnAs(cm݅nK8BaC׻C/[y輫Cifk)Z!#ܓa֬v]?l~IBI-zO~e/r`Y.M8_DJDcyȕyLf ԏn3Xaa!2'E;&zvhVbYG ZwW@٘i'&9u݈9}9d;&ͳg=Ő1`4LTX*݋S~T$oМ ߦEњP2 +d.q$bjozB!Yb@q15S Oc]}xڿ :א XENb_Lα6"JB5'E;_}V|M sl;zlbY!&qBミD/[/tPs}Di`ma`/~A{"eTK/cȠ}3NSEbNy Ag!2KTWwǻ)Y[ig}/d@ ulՁ%dKhU ߡ[>]s|zFuBlK*/243x+h>'9HzB ~)OrFV HB8*K^ՖTy'? 60wrv(x5?5QcVow PG>H;X۽ ft^ {~s:)-ݟ9zvTE,bh=U4[.vӯVgOb˫"MJe#(\\Y ʷ^ᡏu~,Њx+YtxlzjʽݜB9,a!Y|I tT7jAPŊ @lkE*b)Jn,DT)/M1 %:8v;oe5 zj@;Z*J6@>m#P.H|g<1BֵyQFnWaOUK3 nltؙ;sdxU+ sCPFWR qUžxrH&:;@;ZiVΜ۱-䵊ZVƛȂ<9Pͷ7PNU]&tms<3'zM%V֠Guʄ %Z |"E }㯍KZ#,|?r=zyD`BҰ~aZ>M "OGiYEކxACbRPAߦ3S2xXQyKٻ$di{I|-Ǹ D26*9] Z6X0  jDCM5cb0bb303XFg i땕D?qM[ oUOQZGP ?"rQO'vSseҡ@?d̻)^?`{#[.S\߃HzeDAi8drLbIDU/k7h1nD0C5bx<R6RL*츜%“RP+sq^EC;бGY\|Sb-|%|h!%T410gO/1D "OG#2Kx3tR/7gkS,^GSxK^͞79gNzU7k0mٸPEUOCV%Ípo l?<$j$AHc\cp{lH3BW#$?VzB{N5J92]S$hy(N)]q_o'eKW2Uowy|3eٴTzrV XmA5|/C3trױk4bxH%FOzJm}ґ.$GO*pg i@AҺr(vlJE{zٹ|kx}PM{< ׍pjB:WzCA[T8!G#ح` M!Gm'Sf~ Ӊ u˛ؔ~]ψقVeOͦSK}|;Vő$&ith +zm d k)+ ȁ%Fq[c)Tk輷s`BTK7\CfjɌVcQUz;PaRJ=Ocf N^ -R9rGtڨfsGnބOOпK<^ ٰL %=U%=_KfЊ R9I 1 Ϭ.Bx8!ABA,u4sVNwPmH{H̏Cb WT>=(kt=C@7 pKxY -fEZ">%4Doj +kRGo?obꬱ0(L2f$*aҳ4c V6-8|MK7)vԾ$A~i,7x{.ٽb !VeNQUţ!z,!gz_p;nZݟ 1Fm442';5T:ش{qv!ySŴLP 5V$}45C;8i: ,X08d|qI&YF9n-g4,U>}B߯:TYʱ?W!oHlVgx0քHiuK[Ŋ \+\9R6, Rm0SFWƇ!Cq  s0@$7Eh?QoT~IUkڕGqbAFLb\秽8| 듀t`X񒈿37^)QdwҷpP!f)hb1ŌHN31åSr+WX(|Ϣteɽ)%poEr^Y8]ḥF\#[ %\)V5QtΤGgB (O2j\G 7R4&%}@L:g=uqltPѨ2Ojئ݊(;?P>K& u3E_yX]㫻MꁨcR8r)k⮞ 9eEP<̱A82B=0Ͳ^wF,BekUv(U8ț "#V(kʺc0pe؊wumbɺ '́Ɯp7ڊBgY{W8;3fN`H4#6's?xSSFDx8ѾE8ڢ#4oQHJ!ú{N|loWa^$柗L -#L`[@# .!)mbkT2 =kcj OYJ0'~4ݞ!0VjeG1wC_l&! FBc^od)+YCj;qB No:S|=p"[ e) fiT'gdmX<+bz꺷||Udc<;FLv!hq6AxX ‡'{Un Bᄬ2^c HYpJK^_S  1¨_7@E(nٸW*{+ZoL){X Xkmg75CW\M@qטt+S6p.p`̑cG~Hp&J_@VnCV3 \4JAfO4[5%Joe [Ҏ7fu݇\9*%8i^cQa Oun6R#D ӯf.LnH1JU>/_5No3_9bJkJO0+2TZsJYШr{$_W =@9" 5 :f1k5&%2TuՁ1ic:t ,c_%ogtqHANelb8YTLOhWyaO*Z) ǫ^L(\/@Ξ˟Eg- P;mz ?"i尨\A}/UuK\'kQש) N1-cwD?b]'YFUA+vB\)e:?չk7T@*U; 9 aVEd5!>kS%.m߹v[b+)r hol֠hY S@9n$B*He[VW*}5vy &P}#ITCٓw,?*&8E&gZTК.b[Td T3ezF8U*x,߉Xۚh_}LnŸԾ!΋vP0 +VfPsמ8_+cjе #nsBu5r jyCEYknSJHSAYKVRAdh#<YS4>^J=j9p7<O]6s҇!}UŲ6n#[~`\W*bp-Os% tG`GOZY"> U}wX3m|lO++}d_y*ɇH (qZ7&_D~e|TPA?ɵC"|RHR zI]sy#U" ""݋ |fyFj _2s; Whˏi{iy>``JQs8Z,BJ1h&u pRn>EpK({'BlO4Cu{zeT:qߎG% s4TtV5PZc8A4,}֘L/<Ίptj}ܽ b ^MPgvU@08kUl ecRBFAAf] }sɋ#p,Aϻj:iIPMLj ʰNA;onhr.-6R*mhF߿;9{P|2G/=\.arڤpI >CR^.B'%$seRXKKbөۊDZuxZnvX>r{]M.`zo~̓}ac&?XSϕlP+kq>W۳_5?T9bBAһK ([}|]p[90S)$e:92x#CP2mxj)M5)85o&2͍+yQk3%!o]cI./F.bʛJADֱDFPثUKn%!H˃L5z^v:- *7aUԒ8cQ[Qmainov43BqṢ%)Ց\(:ԯA_;!9^_+18ǂ#zXI #GJ_sO0 EelJ?K&$Tb/Qם =|3OkZWc7 vwCQ~G +=hImp:ird $j` WiY/_twtDz-cfm/"s{w,B0 5lZUByEUJq 4K4QCHIꏞ@rfk$ĕ'H= 2x6n,+axpqǮz-{JŞ$cW3bO4'겯`e3Uոiev)aօ$)O ޖ"@ǫ\=?l &1$Q- m>Z+,s~dV D9GQ@6C˅9.0|3@.*Hv%`ْHh?aNR1N/ew8qMK ZQ W7e8q5GY';\Ppr|'"YD*]?6G1F+{ +j@D1tӳ&4(WT_:J̚r͖BK!2zr\!+]m_mA0k/=w@BTMHPx>W: &l /h9I|KGQ^aTy\żM\`pM 4m5LyQsZ f~TvOЍ[d)=7PPr#IlH=: #D>yr~WfЌDŽm9-(\5ªhh)-d/YhexEPa]vaܣLԴ aZ^4uOh]!x#۷(Ǒ=_oo1 .TLr~ڒ୓h>ZM]bL?jNa7{2]>\{\}Np곌v'sa8)-n6{+:BM#}ESX5v~Ѿ?٦bpjhYw+ Ļ@3U"Ŕ*E9E\:r `v ][%$ĭP+eJT.3 K2u(8d) tX{[cGﺟ(8BȧKju13U;vn^@m ReW\ānQֶq$;z*LOYӰko[kVSA7BL @}z[V~Nwl]b2~̃Z.Y9ϊsK亿ΤZ{R-t[BtĻR(!%~%!rReV߲Lb:U"Z7^ҹ=.H+-: Κq4͒˃/b޸Ɵr{$:rЉF H*p|xx@^ Y}3Bݒ&Z={oGXMs\r[xMBGY٪n6VVgf\2=c0;U2;|xC_j%roI8wA+ɖoq9.U h5Z@-CU.{]9;*((Xtΰ MX_󯣄ZGs#G8hB/ "1 *<)Vђd \4F3~ݟ[(ۼQ'0u&7T'?FAhO BxQ`T R(06;8/M\Eު8M7ocEQ&Fd3=\Aů{ΔDT_p90 ^,zQf̴bȣ%vBGf :DU=v5xF3ӴJX/C)seU5Z_nYyblV@_oz|Lߐ6o ՛%|4WmQXՑ`$%hHG e.1e.>P!!'mLi@FGw%TbOB_b'h_|j1E(Vr4:QMk N%YTuy?tOi؂ǜ{&,y}"95VXI $0*:5SǗqf`Z7aGX!@'7/2l?W+e fߎzq HlK\ȝ_5JU,!+Kf #4d>C"ǿ+fK0h!37^͒җۈNMZi`hHF3TȗTïR{ZN=̻#dB"l+^VkPcy80' 5ڸu4z=tƯO=U8'(QM"Q"T6}83?,ƿQۏg)`$Nh8/aG$ټ;ly)rx 1.8cup7 $k#:kll-ja.F[KlXF9Yc W{ģgEIGwOOX.T2}jlsO iL ׯD+z"?G=ґ {0'#Fz:ak'h^ g7O ̡⟓q^ӟQ4+T.u]ܕe},ǃemD'$ERNf5@=HH~}St=.o|CteرWN \> LVB#<† @@K:i`19`’ IbjV-'%NP 2 0[7B`*<e2ucv?"Jr//w(_ =Al XL˪GP6Gם;y#ctB󻦣}'ÊI]ee`b/A#] D gkA&.t+Vj`P 9x# ːN:N1p].k #.=0;Bzܖ施4?MOмs$ZΫ=bI],5$ty m΢]ZI~ub*?X7uH͌!d6]SyҒ{MS%OG`~~EQ(TB&42Y4`{2ueFDJKݽ!h-y,wUtz=%)*75TB5`ce//z t~mtkv@ndkTxL4Di5^;5 ^`tKxڻ?qJRXi{D ΍ˁ8tSP FSQ檛iRT<)U]nfەek-#39{!ʊwTzqlD]q_-|NΞr䌢|W2 7j5FȔǭ{7rZ\vwϛ@4Rl% ?)U_r.JtxA%$]="1JcceAPF1fle1˶ %zh[ꇩmґ_im Z1T`Ig Db? ޶B} ;2Ge;nyd3@QqX`eX,a4(a@3_}|E?7tݖN'}ݐ~:Ix([;6"kQ9F+6TytU4jk)r;$#qU\GBNƲ/ڈ9zLڃB5\ZH0-{SHmws$_7^w~) 6s]ރ]$I0c8QqRQVLnܢhga%ŝMYQ|~YOnyE/="Nh!L߲Sv4J^Wq h P OS: S 2%3ͩZ"^q>ȞuۡӦ_6)^' #W4H -U T i/0:! B6DnͰI&ii^kŲ2WLG e]&Fey PNgyk)LWB^ gM7>H܏GRc)];]`l,  jMa-Sy> \իؾv<$#ct;NV UBE{;4WR1IEtjJ{$9 ̟Oy.9g@qwJ"d_C߄]N>;kL(H7| x[8I ܯʜM (-@d:-ޡ&%K&`{] ߁QV~3| R" {bHw7o * UʺN3р-斃e(Kh ^z{2 Q!/J$aqXv@VOKixAdTͽN$w&սTMV'0+CR9ڒ%#F;W5-U!v'^6,s[liS30&tTow^jf cFn~VE@j?AyL2Z1vU6ia C@wڜX9.re1i>pFz\ނ"YD< _QU>Ungx:xԘ[%]ckΑtwBН&$bmO%{7cah&y#(-[&‡QHٮH3/R;٢);9@I~b))4c/3qrYN>,)oوa}0w 0f?&nےE]zO;J+FS0 MIM D"'m09$%L+YZ[V{ePwzͺx328Zg E)`jGtOC1Uelѷ`Jfʓv- >kc=ƩH"\)x3rQ-N(eI{ݯ^-Sfk X(kCԶ?K-7mރ%]X8 xS%F.l̺X# Cu'S8 c R~R- }@F\Jv0D{os4 DKP*SlIK[#Qȶ- GGݟt#yn PyKO0 =ξKE}dX8d$Khe֬L="Zβ4<-ر6}֜4(Qs6 /j@=<}od>>EGi71>ż>d6bﭛ[tOaiOf(~hC? ײffq F_ܖ˝ļwiARqOQ!͹}օz5(e}颈o켃9D@i a*wø%#+ȚX5YMor' ꢍScVbA 'l2}'ڮפ6VPqv"L,xZL9jmYD]{!$-=ۼ Dᅱϰb#D͓x$Bk1w4>{;mNYLe6Nhdj!PԹ9ȝF*9ؗ-YdG1p@|0gӊY.w`S4B%; VrjL\U_iѰ贓v ITFK[)zB鯈ZR?o:m᪦ a{tupCMPel;M*Y+Q\hj!}x 5eC喎?_u\J]e uW /+cKtYsPFk˖*ַhM~Aj79Δ*{/H:q,$a(V ?guj! HvbSW `h%ݘ[R \ p8;8 67omU_BU'`7}-tߎs(]>/ף N^ݲIwyonjp3I)F+qp6nKy3)ĜW+J5֤UZNP&W`rS# %{xFm=,P AEZҡݖjUlǙ}y&|^?f99qW{?.D T4D]0.nT!p̠ pHUඹL\6ʎ>{V42OGooʴ^sdj&6c :Y;GXɶ;7Rψ Č6Tlr/6((bFeE\#Khdgx~e[; 3d'eD]eib$夘Pܺ_0ScV!h\gl(St'c60 9Cy,̣aUf~ ԓgM!*b|lUbvH!W;:@m'SݨAslB嫨{ ue|e$u0 ZQy wڰ/WiکG'e5&2"@*-K7OcHsW]P{x@^qχ^TCy-XK!j;2ܫZVO{>*H v\٘i ]#ч\|YQ '+eE-I4IL=-Utc hz UL8"ۃ3u L.ײγ;;v#H<Z-aMKoP91~y(N~Kg9m>Dvu}n/l)Hb vkf+78U]ʴX-[<(]f{H5Ů$z(u陕?rؼ%tM!쀾k[jEVDޛ9s5U;ڊ7L~jv* 9Ybb]>|_!ZtwPzT-:ؓOʧ;DVHԶrǼ;Qǎ_͉yezSخ>&z՛hTl|T\_aYy`rvvMYK=BvNFrE{VS~p +!TW<ύ[ؒqMLZߐF[Θ#Ld4C ޑ?U -\UߠNWյiN '5jٶ_ reLָ\ІQ1gm(F[9w0k<(,Lkhپ[izUR[-ƟJG 6 VB)Ŗ/phnTU0]U$ 4hp'6)kqY0 0 4[|;l̇ nz?R7[6 U1nԎUe~K8"ȓexkE  rѻa:-)ZɄU퉒sc4oF@ 1>Ӊ4:=HR%:OO劳$O`pqə.t3f}b0 n:Eb!NFO~?0 $j!W`# s0qk (;Hp.C4UYͬͮ/6v1N6H`P?ֻҚo"V^$4]E1.Vy*i'Z. ިR xns9^hFYgգge)!aoR३xWAn^b0HaAFHb!"}.N gt[3&rm5G+~2Wvw_C[V[OewOiVH5M1Zc-'pџ~G? q)&?·GmnBC]13EZq297fӡX>Ws'g [S?5J\߯ЈǎF(1,/h㕸56IR2vpv\R晌b G&̗pe,ѬnuD}qbI>h]y1RlgbQ[2Hc4<,~1fĕT"'t6QuޟI*^|u+t H5l\OЊϕ!gn* ~UHWeqyi3ZSn,u@T\4M<uK="̣QIuί~ !X6#`›V/k[?U)[hk bik$[dU 0ғ̹Lku]$0 I ~\XSb(gZԻքYAhҹH c@U=!L%d _cpsZnd]Hw ]< wU4fT]:ݍEġS8L)g[`)cp\?\/Y5}(*O縹D!VOfб^μ2R5"^*'AQ!([-RS ke^v#7&JZ_쌁%pJ =Iby 86N6$o|c[bpjO foFisBm&Ɔ- $6=aZ{B P& ˗` JYCiDF{{XƯ_j*XܙwEnܟ9plT E U tDz3v2zf7GT8 1_RJ&*(s*~ԛI'L`aM)߮ضK/m̪h ,dԟ H5n#)gjJZ\w\ ֦ WRxwXmRKT <!+,Ͼﶛ;d[:e4, l|"+̟wvkMԓ SZmǦBEתM9h][\+L&c0_dl#Rl*mCL w|2b-&|wt'c˹ P ۑY8FmM¢|>8^p40nԣuf5:/?}!+&(ފ.֜h8OJ(ebTHI^QE[gٵ M ;malW^nM F [%2 Zw A'W@pɝO"'-N_ni)gcż4߻'k4A} !dIN( l/sSw?*6LgH.%DrdPS4)$ į;G֕6 Ŧó% )oe8:4>"țsBq]C:w_m)IVݹC|>I,bwu9JClU'&K/Sɡա94o*ݶV݇֌A)OU_)ZtЍ\12 KWߚ,8[›MKAu}JͤB`zsn3VQo=*7雇|iQ˟z3赗)glF_~T$6̬6H(E ֎fiyp׽ |7C4/~e\)qh.ކ?S9T Dh=t!-'(C_24Pk!hBv)%?.dt3"-&KP!}j_\լT]( ].M-+tk'@3<^bh"J3 (Be|dBqW*D(Ta mIXo:g] \-.b//TmbH_<қTҁk k FDO"irl DZ|#b@{ a/Tvyq6"V:Cap8& {Cß*皑:U$j {keـ6-g-sǘU8;Njm/MVQC%% ̧ (ob?&B]w ɇ.&1׫9ȠڠE󙧼Fax#-x61!9+8~3H+p>!Ba57cqVH?qG=!ƝLb0oqnY5,[KdAJ z U9 duQ]p7U6+Hcw~-]wr0b9D.abΆ i"}/)BhI tEb>Oh$(k&CZ﷢Uh |}Zv葡J3TwFv D);8P>ۭ$KnNWKwư)UFb,6z: {7C@1dh>knʿKm^ Wg=9axg>8 sl(O!O϶&3-ŷr"&DU6yrx]:zGb;ɀ.V*\yw۳ȎR'!,kg5-}?1 M/ b [p緂k՝2ک[jQ'`BʃaB7Jn\FzC;s(f1o@}Q2wu'{ݺ2n) nQIr,h5x-[)hU[eCۈpV)q%P v(Vdcv?hC0!YŚry'?( _r哕 D؍YF̤@C@k![V4V 2yE˹-_yVTK5&0$ ;e3FQʸck.8AӭxA ǐ |* Ӏ(%ANctC)Eo‹|߁fqPwWN[J.M ̉M]W?f M 6Hcp@VKᐊR7닠')c?,Z=(}əGub# Y]Ē!LC.`D놝] n2gⅢ/_sHJMRk[T$&틦E-)Т{Us5A#!\v[aJJ\ծYY#tfj 3Z x(E۞)qæp{{tnЮި7P-/p1S5QB²]0٪;) _s<:0[5`ڿFU.Ţֈ}12Mbm1̈D0860?R^P14yQ fl46B'(w; ߾›@BmS >=%r=MX^-\M O- ~~`ު)OWCltV~np-j,LAЈZKp^Ju-Cm*?|6NU,OO|QW\\ۆV&m6(">w'W55z-'4Q0K p$縡KLrLfE[j3q=9~ݒe6:ƀA  W3M@z;3G}օ10k =: .QgaDͬuxENp#4BY՛lLnzm?U;@ͱbpJm^od}OԲ6xcv7 X`0[46:RtiL4D-pV`89eB;!}- K " BE)y5$aRA6y6=Wލ5\p9[q5㩚%gbA{]6@v"*1/{'ǀJUס~2 .˅z5}"kaT.tCA:*j`ՕڟGj~:̒i%}1J|;H+ e PYwػ S"._4$ʒyͮHD5񇣦愮n"X?EHVACā&=( P{wIkT4x)B1 ܀&Y"raU|;jԃ7 Nu b=|8{>Zñ͗t TH>;Afk2`~p"MEO L1#8U`5X$123t+T'`9wY= [@IWixyA+RW0=;~F8a)ܽE&z&$j[Yo]F`}g3hƶ+mmMDQG'dQ\R"3<}Ğ lu/^ExCx\PEݘЦ i0O(ёy,>m9Z<6!{ͮ1BZǸ4r(HeUNOqQicQйsO%RzvL}rEֶ ylLn);k9P es|}[ߡ/9Yh -Ra0⣁ O*u&{Y sm+C.`?=mlT{,R9z!ÿd\%YYVOliK`:H3~?WOׁzB;B1qinȨi>2Hsb0VcU|L\h&W2(Y5Wbb!-QL(_ͣUCDop%jUv1smP2/ÜGl]Ph7>"8#C` ڥ!5T͗xVrWBj|o°=Oq?#A*`f 9tJ>2tg aB/t1ѧ`(PM#}gJ5yfS,'SMƐbww™Wf6]s;Af5 #mujo Ɵ}_O3"I['B(\_ڇzM! p!|*5\-$|۾WIs.t$Lԩou<UT Vdk5=\&S^fl&0jqk^$::G[NDZJg>O# c+cb ߰w$G`7-0~Mru:IH?_J1 )9x6zha "1/MR˞x߀;i!wqPɡ0G6Rv2F}{3 by!6 ԫ~\M eFS&m F >pA?Ss8o92>1ϮFAP>Ħ,\,B9i!vwn3o@.nUC;{0dTrӷ=F:{x<_3mz0f3N٫> '}҃~%G0lo&Asf]50AIYWH_o$U+ZqҜ*kIQgc3,Mb ?ǢzFl}4Ljf|__YObi c'a\\eX|o~iL>s1'@3L}[L N˫M@xQGƓf|1b~Ԑ%/oNN?|MiL OZ{ѹudwOv{[ T CeIdksAHPh#ɕCi,.x>qޘp " c ,G.vQ8ګȼ{\+hèzyHqO>$K -2ԤmeQq=|'QIn/-;B&+ZiLMeO4;ykp,367}y?3zHE93\aXF\4ћt_H(!Lr9uGɈ`M TJ3s>ndl.9_ | D4B +Tz;I8˫ Ij&񒡾-<&lR&&OOBb?V#]Bk<.p"r׋"FPeցE6U>UL=4`J`y| .z?f = Z7x1zdDx@J%%. ǟ. ERIw11HJ:+k빐P97R:S!)nDZ*e[հ9%bA%ŕGjƇN|aLgk/xf^D3uWI'3Q(63嵂Stn59,SZ@qĢZ`$z~~ ]@#omI4wᖦ%wBs0i+I89eOCMR&-}h%YԨt.NGa8UY؂ 5 a9&-$]vgO3(Sf=b  Mg)]6EJ%PFLO$h<-ȥ`1!g׽i]R)'r,H ̎"n$M="γkPӄ6:G;; x eӚT(rʡ}Zݭ_a8CHOkYƹRVUJ\$˜<`'y÷ʞhkěQ3P eeyQ\(}$xm\8|g wl"'A'qeD"FNPVuθ(x>O:O֢T/`P-qpkt`̵>mtM`/֯FWy̧J;lU:^l-qJޔ!ڣ "AOd$H쥢Q[LdK$8SME ?cM,R{ALږICN&M}Πt>)J44D>P ;̅{˳.GK}Pi.C{O;W-2Ɯ+}K3GᢙMT2Md+)E]vܵSz~c9&?O2x8ރ Y&k."!#I a.ߠ؝? lbVOQ)ۀ۹?%aR(#  uLKdwlCeœ6OR:w "?ΨD$)ney> ʩP!v)wft|*Y_OΉ_A~56k1ԄwR5DsP*6ty2gS^'~<(ܝgށz]Q Ԑ09SF`WI)\5DauJ[X*>OeWBRHGVѝ+)JhVX>GZ|l8.x`B _*wEE忶(JxNeG5*|(+놫Z>\Kkf,:d*0@j.}>Up{Vd8&;%jW+_CvE ,eT)O3\uYM҉|yVomao3~ ϯy4nFzݭj7NHa )`dyjXWf:wj0]_?W(ὀڣ E30?8pipʼfo֎q- ۴ep{uG:}?'Qf `ygs K]muP>s}zcho^.؛ZO 뜂k7w"{Lޙ{5OD!,6>ʕv;8l1!2@ fzX_^%^|orsRYݲZ„"=f蕱a}nOJj$ksG34j }ş s[ V%C \DGG?1g.]uSEɏ>}MDTgLKǧ]NlD-[<N(wSm+ԢcKq C3|R6X ZOUi`=G 0-O^3%_ nZGc~`O8VPYWv9 ұ9paJ7>%)dM( Uq:@E PAór"ALuBx b,xK3DwM_l/ܴ@|j1 u>ɗ&f!&I#qd o|%'h_XXݎ FUJ%rEt\Wѫ.á D;dK6ard&.\;tƠpc%QpPMK8{|r DHMIt6Ih ձj`Z[U9K93 Ty 8@p^ NqS C˨ V[rqj0y"WLk @d1 *s퍶 #<6cSI(RަC-"0y6N]-@j*S4Wb7=md/U3-:!4 be+!FB'lWB OF^=Ѝmp2 >a̮MsCAP<ՙ J(W` (滫\z age! ׊ "'v%P Ca_flœlHYܗDҊ7E#"DS]*k,F;N:,6$:% Wj<?{ OTIHǫ/B$=pUFY3@j俧ơ /PbLȤџ1p~fYm/FD頜>;ы`Z؆A6yTX lԊٲ&}K³RJ/9+bRJW$8f>ǽN bGVCyǧ4(8ï x;fg3^Fb!O}kMVf,\ ^TeX#H9QTOtX✩6 rB;x J#&ٸEt0*)\QϤr9>ELSmov3>ZxNAtżdx&7Si7M:63B:8c:"iBб}R |^ PM& c}AF*6.4ou61= ?irN(; EV܌}HfdZ'/2>,\gXDtиB=p%QmT~l*UB\Gݮ+}t$p9NNoQïjk8UH M1RBCohX` ݔ1ؑ;(Ą,i!fۓyN چUꨆbz- 0*ym18ˮvWcB|u^! '8mSASz:C7[bsѧ4YqnHP?Y9mVZY+wSYxBh]5'waBwLq<I.r#R)M>JzKT[M j`wOWk|{ ga ӡW%ӎX;6U~[Bqt*zyQUg*"vm=*;VL/oL͠7~Xu"|ٽ[|L E0{zMA8C2. Vqpp_sCݠ 16T6s ; 1g8  [AAy.m.NwL~AN^g U/! @,DZ5{Cvpj,+(iJ=r(8( 1RޤOo?ȝ. |,J)qȗe.RvC&^x|QUoq"bvyFQ#cβ $|UGJ@>~i顢 %fRDN e})f#H28+(#Il=[arȪ[bMsWomy Tpȿi:mޱP|KtC sźqw0o}Cp9Aj`kC>@0ڽq%jhr\m{#~U8PB {UOܶt1:o#uMA9> (*KLJC44T6sG36*@hM9jGpܤ6&O)7zf/Vz$X _vt;%]Agv͛νP_.W"&in26 ,$_Icc臓(97 AC?æ{ a#=ũ"o_Z~tph5AgVuyYn ߥ؄B (6:3hʟ`#q>D\F?/C2[ÊXWZc=K {sOxf9b$ +9ai†p0bX?T_6oAG*~4âJ+"]}3h \Q{O] SɵA|-Z9ʱnkh<0Q)}^/n,maP}1E.jcaU8RǿvThJ> DO_$նH#\B+qi>և|jf s}ߴ(2C"B,@Z^1͓|i+Q,ֵEa[|rbWQnwH(n2=AyJ/9`V*TĵŹ)b 9-\c1s[c&hS+L+w1H=oY#^yNEDqxU!5;z#j9%xCqsd5goLD#9D4TO=jUH[|οP00N WsL4qFTI1N%e[9ư=ESX>2c)fiN ^]H6Ɉ/z9;b,n$$lr1Mt "%c^ӲM^glF; 3xw(b;wH-;o]ToOo1zCq69{;C%Lx3}.T?8"4ŸuV!.gi2L?mcJa@ssNJA;[jœv?@՚Hm2?3^ګ{Fձtȏ"lj YpGdb\6d/S[Hʳ&9?pʉ3t9*\raZn `yHfd;fh,A=}95]RpGo'!a8IqTS;b/.Sk"-").uqZa$t߇TʥM_6nv|F_pikwMdf]&$9'xB{V#؇HPtNOl6IY]2Wj{.,&z!ܳ1[̮TFg c:|OJ)!3f$餿s5>qWp?$uBĺZ1eng:D.Svpn("'{!N2OĻEt_.$/ݱU%Zjߡ*.4at4엋᧋Js!.F!. F/7nѨEF%ŶIr1-$ցLjTfQ,:E~uJ8 ϰHOٕĐG#֙/Pkl<sȒr>o, wJPd3wXZWTʥ$~n:ٶ[o%LjsW  q(wfv<{G]n88k{Bw钌Onٰrl|H'Se4E5X8RMrG,n`_kT|b-;?_[Ao͑$|+AclH ^{#W3&CJD2Et'!*0@][>B-||osڜ3]C  쎅NRl|ۇߏqیyb9+nqZgnukQ}лrfC):^Fkl@C 'Zƌ#ÙR rTzԈV,&ǕZ\KEdAkTݶ2|l lhh4#b6aHaF=8u*2|yV9YŠԡ6g (ҫdGsJNܮ6a=00]0ZOJV/Sw$h8~n|dS~V 2kjg9m@c^~v*|t3)ILN9O;* _F5|Y̱&ii&SW=.Z& m6_d2g[a9 xRCBXt吤m!yz37 =/]HRK>ʚl}= LwEmFTf|5KIɂ ɦEݱFM4 _d6PF"AHΤK1W:v0>{ 1 <P2Q-N@L2+.e98pV%Dž#Op>;( v4{^}>ϋlSlus&BI)u|) {a`dS4_ͽ1+JըbuKtd1^ >!6k!˿HƊQ /.]"(0ؑ[7)>Ԡb)Z3r;6J Tav=Ӹjޒ6 \ʘY"8=e_5@ӪOeg؟Z2ܓ I~^' oWflA_N fiE>]y@ '{C;h>^^sa0 lH"-MvnꀷFXKV׽Cxl 9K/ gd2Ƴ fcp@^k84nH漶۫rg{j>çoW)4'Wj N0q6JX8B?YCO?sZ,SG14´WW! OL?7"k̽Au#zZ${,+ )4.HYS) r2rclVB F^^[{J95I Ec__yӥh;`Sj'}BhAY:G_[m%ג [qn-V!;m!,؎grc?@!;a*nIg!Gmy4Ԓ8 X%>b[lpbcZ;y85Ԗpln=Pj1:hZ==6Prn=z$Wg}XyGuKY9DD&a96)pA~px(xJ ֭'.ƹa5>G֜9Ji#C2745ӒV鶄KD0;tˊkcVOPE1kc'u[=2I6ȕK&0ɸ,͐`q+0@pG{&y迮Um#y -g Ja )0G"A_.=7A.w`[`CHŁ'VCJY"Oi+^6FkT 񪥣I | -]ӷcVAd(7sR_>c JoLu I9i9Tu~Ob`Q%}>aD\+q[/7XoIG4lQPl?Ka=uv7S l8}G{~x jtK4Õ#@Bz%!&=RfW[j^`2Va&JctqO0,[G|a.jK ~u/~?#R JԹ .ahf ߃ F`ଉ-_fev^qR^w)^c.Ө[i&W+Jp\3_Fz AkeQ%H^`mჰvY#D:yXpu-F⯨]{>Oo_vωZܿl1F>kdM9džF {zt@,w9(h/Pв=fvؓ \ܜ^w9 jǡyu"4z1bII>]lťc0+gb/9w({2{t8\O߶i ;(lhV<{zP{;!bl6[󫔇 n7s2溊czdAa9'2fJjn91:2; E,H9lt&keڡ bRyq;G!a[,1Rl?D }@P^)Wھ5+$Ox<Ė۱AUk_;qJ :s 4e@F_ GB)imJMF{iQ{XR[{8[_?]iOʬqK}C@PmGl;VK9r*m|po:?I_}ep h{rK{wnI3yHLd~Fh'(T*ͤ]{DG]us?7%#˽{2QS5!00p4aX@1 "5#[RMFnw:E2(()MloENLǐ|f℘2WWb?WU@܉z|<4:077Vw[8-ͦ>Om6h+zG,e$eKΎ(`YYqGqE^ó#_j J$u7F# kW[cxxȽD~>(q 5Fˑ s9HJ|Hʡ|&DVvudz>UȮ2k @R=F·ZR]ADZ^f]kkH"V3VҲTB}.6"H5S3o=4t_9'k3,#ew˸'҈DAT#PFPu8j3o{܀7(pO,sX|ii!m`˸@Q9ĊCO ȹPVn`\vT8(bU-Hc,He$'b;^k;K=2,Mrb>E:0mÅI dGa2J75)u*$G( 0uΎ:uF] n* ۾AQ""3]=_To֩/@w9"̼}UM6ya7$ n<^7w5!\DM$Jr/bG-`PS` 2Lۘ~)w_rzn3xʳv*ntk+VXGs5g~b&y`Wp&9WStm;'"nH|eLjc#@8=h69Rzk+}M~13mڙbj}6Yx+dvt%qP̟nf<^>YaWrW%KM`gֵ6%?CEblGw"}{;4>W2;EO7X<纮>Z`^K^q8cBn!.̈́l(-2uu1X" %S$>Ypxtq_BʱoyB*ߋiڔWY=R;6 DG6?Vr7FȞu69I{lMb@ ) W6Bg<=b5uk529Q,1 1~ƺz9ORw< mJGEmlLxi Wp.̤~#å< 4{%2EFJ+~x~Ȕ2mҖGʿl%1#F0fwģN{ETzO_8 fR^;1/CS'mvwg]m7FpF=)Lv(SnjmdTBt@@` KBW$àwvfi4o]#:,n:KfhhAD(?tŇ*4h7Wh踓G tbH,#ؐ8I3 rxqs<(&_&ӍJ+-3b6T?}o ~Lo-[qEWj+P x[3K+x x:(M(aRoۻeYMl6ڰ+/*J>kf!^<_QH5餰-mw9 ,Tvڇm'2erk?zg Aˢ]$siO)zXqټQdPMp$W %Xݕ^s+R b.N0tMP޲ow|׌T6,$R? *i-צKʧ"ƅ~~21rZ\bPOzrTt(:,uu XU߈}Vn$T.06zn'dbwvJwx6Yn̨[nC s>QDkU[ 04E%U9tp"JY3vr}f) ׬ :%e.U k`n3GI(widf&92srhxA$!.,XȌ'vȹ{]^`Y{x`ǛT=sek}%|^&#J~%uO׷5B2|‚;&%4Mk}TO!+;4IB;|ԋ6Q{@+'( $َ9{;;*m /h{԰0RAxmAڇ{ڛ|%cS\u@|7g뚌?OMγgoM 7H=ƚCZ|;ڰUVw>H- wG#(T5 jPso_ζT;ZMT Qh"/UAZVklC[53}/KbIz亅D|4ark 0Tvu%ٲl/j7+:̢E4%HLjLd;3'Pc wα7Xbizߛ7*tVyd֐+(Ssu!0pM!_ݳܔb!gϽjѱwksʹѨUqY|'Q]Ymt?O= ؊%DX~ w"rxFBzp" !uM?c^0AR~6J3l9u ^|/fD9WreGo=FyLy'Pג=2!kQF[T@!ɒK[Lm\`f$e EzaG ;ָ^JDE=ݻdlQ7 kۖI Ek95aGJ@0;%g*b0,鲒}'2`VyW "ɦh*vdƚ}z`glq ׁآZ8vsJ+O2t6+a&iT}߷^ @j=vyb'\5_z ,{v,1SHQi ^;zQI 0=Pyi16hE']>/A3Gfr[N[[_^vG P-1 Bpnh/ ^N4flB|y+^ ppأjrv֎@xqB"2#Ӡjta:LiC4"`d[բMWB_3O<'E GhV;qqY 3NP#Deg#%.<Q3rvRA-1rm,!5֗BLydd*;5oC"ۉ| 5 i~夭V]^rTgs7Jf*G9rpUγi)9ųv-қn_:Ǖ'/i–)AUaSuo D$<5~վPDtw=tc(:OHU9*c!8!p?NSО%{uB宖"R _!5k~g0 O>^#g+~:M D'cfw犹U(K'e=M:5ۿF' !z_,U7\uvqϸ"ś=t,h7Q_y'kbd.+a{,4)J-ݴ5L/o!j s"q1+l;Q6àmJnΧXw)*ZT5G㣾r\ BSgiW !]܋TU s.MƢlk=wƈr/_ OC S++7Za1xQM$g16Rr7mN%*{Ere,:>ˊ :,&5 z&~<Ѧ{/ bXߘ!^}TAνV$glvKypGV+TU+Y/lد+?'d~O(avEKX$d `gCTzQ8yg >3aD_K9O/%$;ٮG33aaǀc vT<y..SwT+W9K*0 ZLiI"ԯ`/Fgr{GdNG/`AtV1;9ltU@~rK!&8YKnM> Y2JZ~/N?3a3 8?xt}38;3C"(- Ŷ qGS t '-S &z4xs̆@>7dp3W-MBp$ =6))W6KCêY/^^E[3zi!c~IYGV6ovz!z.% Vg>$\̈́F9Z4O`g@;sI z!J h.EBW9j?Q;ƚ*1tIk * HevƄ0 !k_Z$cJ#MQ ߭w$|qR;Q.7b:e~ꝗ!+yH^&v7W)zחDբ\|,_js%W/K}[/4uVj/fWo]piJJZ^{ڒ?hF\9ʐ9*UCϧ((ksa|@mG}I0yeKVEիQEON`voO ,X1D$p4ч_23ޭ̄$ "&6Pm,)*eEDE{:-D_jeMz gICto+װn{L3E< /O:YVF=n^fH6+D20 WwdHd0fH!lKzA]Y |iXMrͧ3]E<&ӟ9M"ܜ[-4cog {Q.MZ"7>F"I5(y_D=pYdH\l;DRkkڬ3Y+Us߀#Ś`,v翶vd%9̵%5U<!<D!~E-YhgDbθٍ*D]g} ?vJ*nAq#*E;_|B7{H!Tz鱔rq(PKF%VG㱊:~箓7Hܠfx&$ x"Nd\X>}C"tV1"k_ xqu(0}Dt9ǁWSz[b۸ۑvc?XtAOeL#-  e_P-K`ޠm-+nL:tK0O~N8yŧP0H }7 PL)R̂ۊ,g)xDqf%q!\~b߮+${@9\ +ٹ'ژ`(e©Cаnڿu,?A+TZ6$lYYCρ( G@Jg\7Rh'>=yv 48%SFUWP i`Q=|\XA HT["vtu. "EXl!LllbKL 0lxz=!ÿw9+8 Vmհ0Яlce^= DZZ.&Lj NkYpC DsW czQXhyb7}D V5kL /B, MSdIO #{$QLm)FcNq _ʹ99H Gܚ_llg"!RFF4_4UZ`Z7.%nr*(e :n$lWt0 ,sO{-Kn6n|pc|+9^KB2MQ in\Ry_P V;xe 3n7qG L <V!5)sa {l924NlAUxhF%C8WJ{ d5*ֈ_BGk>Θ22nyD3hcWi|,|MAϩl|INFBvL gW2!ت9{Wժ7XWWo {;l!I{@x*07` 2sꦺ_JځbM2x0Fw^ ҝ>9}歟^&#_fKQ+J) Wp Z&NU؆4JPf9Ru9!~aI2j.:#6_o^@6\`+X!$Աiyd_J;)-LjQ /ɸKRs +y {IpUG}gy3FTÛ i,q=}Н/K [Vg[F03bTn8 ]8'M$/w}r8,U.j˃L8I" =sѫ]2<ƲmzvdI5{CDSb4C0(5`NwMT| 9Q4`#,M\9B$I16{ZQ1An JLXbުyp 1Wrt}U8%F2WD LJjTփqzd\eN6ʰw9ڴs](%=$s7u/ }/`~+i&*#b$k;@ kib{&FЁ!,:ŭFLC]y؇ʗ-װ܂W>쮛mL;^UZ?.!ؙƒKt`.f~ˢ )՝~u$ڤ%#!Ń~bf 3'\J%t6~roËg.Ħ&=1I.pG)yIH,1,SUhTشX'8Silòn2Ga吚)#q[#ܸ}Lm}ra@yc2,l{y,]su݌3E*=VQM?J:Tscj؝v) bX0F} Va|L㨪ZTŕC/۞ؐ< knww <bII֎cMx^$zKl>a.Y j8SSc"UUU:+xnX+b,-W%ebY&oeHNcJܗO+GK 9CFKPS AZEU>-gG\%`xٵ0DQic&,ڧĴ(w@jq\!˨{T: *"k*[ *i(6hYtdC3Rt(d-TŬ]DJ Z(T/Z櫱Qx4j)Jy]79KAlҐ#JNÌ<;cۖMz9s"^`B?Ќ֎B؈`vhK4* ?Ld3I>7nun`]mG"Q#vb8Pwc񮂠\gӊ|z.B};s 歹6ľVGeEGjk|9D%PDαޱ]'%X!9 #+1-24iF=7٦laA(e-xPzqGpz!I~E~otn.6a=-lqDJԵ)CJXĩ?9mƖlB`ǕQK` *EPu+6L MŠJ "jKo=zf'YWÙ 1I߾v# >dTi) թX G:cK@Y* c}Jyڳq8s|!`U4a[|VW,Ӫ@(,NX$^sMB8Qy0*wtI4:X{6ѕq|qǒlOz!Tt)&gp*?L! c* U( =WZg/1iZ&V#K)-s(7˙g/V<̒cq`R4_9%U;*ULlo x)oz(mZN)ÇKN{j&^B}#A-YJ[~#f<#Y c'sO! ^cr\h7r!U'7u]5-YP뎑-`nk $)@ H-QM[IA0Ad`{J=B0q ӋMB"v;F]ѡxqa4M C4 'jKH@Owm#E֙ y(s p^8<>zQ[q/??ٹB;,;O1!-~_ڦDP񆩂 LS־y$)۱B!_+[ zUy/y3iG6)G3}y@Lq ݙr8I&쏕ZwRμ{WRJLZT| ӨJhܜI{R J$.!^g"`KGs7[aBI!O|ōiXdȲ=t}/MtdG7F@ƘSDPh/` cȆ7z yL$1tP )-Cz|%/{Zn苘HZlP:/]]Nx+~S7ZDwA=bgFصOsYU^AuTG֕ kg%\ؠoˣsAvRz7r rX4l2Ϥf7}7z thw!Z R 亳r%YJ|7< AX"<ۮخmHd4Iњ$I'Z}6xL B 5ylFsdĠMog/z @"X-g6PHgAY 81sDd;;"og,(B5 eFFi]);wp478kUɏ}>k('ܲ}_·s\굛5Y]B#tQ,L𹽬 QyRJ녾Ey&mXPIj oC \‹u<82FɮAZJdqӨ)P)5 02KV穎8h8Oge/X% =?pב>ex2WH8"dz\Lu9^m'+ i!j7,"+|?4`$34߇'\eHee>]qr&r Y6 K}ƒbBY7nZ d*:c^GfԿtc9b_.“(G)36t% aO5y+wPFyf'3#̡c[Ϭ\~ IU)ǂAE9p*ű3Z#-"ډtWꢼ'3W)/- *A?j䀹Kʐ O!y1&K?{)B"l´LK*Gvh\.Gui]77&RT&[Ž빿UwrrG hHm&wIm(CWMO4q>-5(@I|b [`4YhQ\ބv{Ȏh`L*#?AǎSj"{4رZ:DT7ղC N͠rX4 NM# %I fţ"at;;ТGȏږx*I|k*bWp6nüC <[4uv#ʉCCiݾzlZfA)\8ǥrHJ :J+;U9Ftrx~.`T&clZ3U,ՙ `%yJWdxl'gC ;Qt̯6P y̺\[M:- Cit6>keAox[iWYmv U :rGǸK6XjBWWNϻP=(D]V sPP&92:0QntرEy,A|)gf.ʹfp4xTAPY=VnbNu/`BC۟y#j{p~#LOKǚeX%_Sⅻد<5m|?ObV!|֖m!ShpF@6$%(a z5ӁW>NCڞ]F΁ϒ2iK=Vz\N8*NZ/zH[䥋h"cۆ3uI[EEV1#RQ/0l b 1~㠟 =d1x츊s&׳8 8S:+3l<x4$x|p/T 2("2xY;ա Wzۡ.HVW g9 UFu2grye~2Z'Oe`|n03^%^04. Li{׸,EzDnEQp" ~>[3)skO[ čPAq1z|UY쬄yy n.ݫg>VakWJL&X6x$f*fi!כ/?3wя9~K?w ${sTzy W2܃uǦ¥HΡ=fQ a 0pk|'xdz0N5Ͱ~ q#FmhQtGt SLQ;;&Fjr":ϐ=s.ԻHy>xW|4Otz`B7-g1QUuĬ8O&P[ 8x#7e'Yp{'W2zRg@YarD!ܚL!Ԡ] |VZpyKܶ"Yk\ Y3Y拈Ir*؀DؖUGU.*]&Lr>VW1:ݚo؂B> ɘǀ# YPhXT1܆4r 'r6R䔇8~cZpuH D93Ge&J:lhGa~ĖIDcgHYӗi_ |=\nH LXq+sF3X{wOZ׻>ۯ c'hHmq<=6m+fec<4`J0WQ"c0Kn $Jr;=Ji40%l 2#mWzp%%ɿ&Msqrg,!RLњCEr͘ܡCmC&wf,>J)@C%5]Qp͂b`=VU" !/䥡BsG#&G?_\8&PcOד½à%@dʵ$'qq ΅ܹM؞;7=r)sfcie(4⧍ǯn`P}Uq GFp q#"ćts[sY7gc]}Q&Y7n`(paҳ!|-A0v m R\McԢ1&4s @ gU| BМF"wbz-g$$t"Oq'1,ҩcY/$,EPo+6Y> P>7/ǷUXRs?g M^2KѹKlߴG= BTGY/Uj $=&su˺-:Ù { PIB,_X;ۇƬUKͱǒ%#UX.C4>a:|4ԓHy>STȠAf:-dsl+iɤgL.$"0>";TAb%QzAOolϼiu0h)zW|FHo+59N[^Pʱ3(΂;̖gRE暥egn.Uۓ-^-EXOY{`|=(?t0^R״x FVwi)q|Ns` @~UψB<~jt?CR Ly8">{#|ϵ؆,5.C,hy2|4**Of1u/va@UBP(G)߽zAO@M ӫ5O8ažȡ{*O%sM*Q?1QMkV;[6"1qk3}PxS&2 'IaN dS1}p * ny:|} c\)䑟}Ȫ+3z,XǒJ gn\j6Vqjy6|q\$lN$\4'iqej,fھipDp4FV?}¸!.ED@C9)86]:/YL<+4%2tuK4 UN,!(iR: 88L$+hW8|FM48AҰTR7] CRv7vuhUXBtS@PEs:]k>m`';b [~g6rK}gZ9[;qaj: ewB@ԖԄ0تaT=ڡRQ[4Oyx7P5Y846E`Z0H*+q }hEMWJuZ R봹R* ϸHc\_4^\E>z>B։^%߱NWޒoZp6/Mtݰ?.ʰ_SJ ]f-5O6_LV.޷xҋ@W, cЬdj aRC|]?)XF^ /f7vaX1a 7yXane)s#-NE̤FOXXV~iswTbJBgMP{)&^tCyLN&Qj `Q9N8^v/v샚4JKP!qEoLu`]^\˔MVF7ò,G̞l=Ox w&ybZmBmPvc LDl|tcGy)Q?e0$jF }ȥ<腞 2gf"ňWe߰h.(r!A:ߥb෈0a=a!ـ|Y8R?&)@{OF|谀5R\g 6 ꬹdHz3r4W`2֕CD_ވ( - g%ɲ֫cEyK"EZ^N஗&^@:b4i&Gg(Y@IrvO!,˘99 "B56 j-NMxoř 5-0q4{?Ͼ;o0 _cݴ-'=FBP4׀(N i03Vi*$)$Y4}i"Z4H ɵmȩIgBF,PB@8I'm2)̮'9`cbx'΁%6C*Ѧ|c[YqYzȡuoe;i~psw gE`& yG#(0d5/nyvԚdleG>]Ns+'EI1nVq ;) O@\蔝sgI͌V'lY% ,Ld.JM>p` h~P%;NZi޲s^d\MC\oSMF#̹jF( UMtdM;DDgäA*ߵGzOf oPOǖ34en?1JMgn6ITmQPr9ɱv>e&ﴏrH>q>lBI} }iE"U0dgQƌPA[4 a%X+~.gE4vy:q 3znORܩ'R[F)!d/!pu#J7r)\qR#)HYoC(S{o% h'StY0%ďRJ0!]if yRƭi^/תv/p̍J~, sӍ6ud!¦pOt3З{=e^}("RP ?f67yb2 P9Z'u9ז$e coͮh!ޚ WQR_ ;7[p$TqVtfrB5ɷXic0aj?VJRcf:>o&0z^ wxiV #Q34x[}6d]L5(]W%ɩI|=N:, Z Bv KJ \bY04W>!D;O -ZkJ? #H_dfp#R6v=:4 G~>,}/}BDa$pA  QM \THY@X@fF88aU Y.񪒎gݩg%f;kVs">Fyh u/Ǚ @%xy̗9ȐkE|F $5 6f L@!smmCل 5+Ptb] dʟB;ON xhf>Ls#~~;D|D7͂l$s6OE0 l$ nlߺ(!65sziǗoF ~Ȭmhؽp:'k&fDh0\`I(bzTL m a]p"7\jX Ub+fw=*Ф{>fŀ;硏x;HS~Y6 嬟e^DxLmULηTR+Ebn'濊;0@0)-F|( ~jBRbYv $RC2{ M2&CH1L~嫢A=W$!Qc.{YTTۮBWNZsA ?p!^-XޣivMOxE.&~z8`Ccw#H2TWq0HhC:Eus2cN17ݜ.M9@P­X#\.9Yb6u_ǡxɷ o{3Knni^/F愅>E7xKYXQ9q&uL]Q.֢tٙjfiwJ]ͻE.>$vjέ2stM{ؽH;Zi[ba&h!DWo޼QhRg:nRoKYZȰMv(`Ei? f:邛(V0leD9y`y%r:1Ԅіo%Y5e}RH+CPIŢN]DWq ȕ†Y*! eƝYJæ2~VѰkwm*lвwpN`'L&gjL.,E.aEѬXtAzL;1Pa0nWz&.biGMqc tb&d{H$\_Loז5twz5zտXBSW ?jb#n⌰-矒܁yA,%~AQDKwu{k 2p ?Pbc_Lۥ@QD {uvP0_fHK">-نE^2qiPE"\̬LdO{!Mh}rZͿQo?^Ec* *qNF})tylC%MOآTt#~\۵01{\qUg$; CHR})_fϬ{ LN6S8,TuyR|{ )(: Zw%R(J莔cy׾4gF xLB>ğc[wIrw,ly$ou3fxk| {01w5}Sb\{-: T;zaTȩ #ijHvU^j?Ԁ)?5Jy|x5A9;L4h=XMQmנ9XFuWq~؎dJ$2>R8xa,@gM\VI`kYXlxGGc9yHY.s_'Kcx*ju /^H`x!tNQXb<-wIii*;Y%Fj1QqoZa.`UQjeU?"T=F/5KRpo<>#ҥ8fu~,G@ᠹX*ANZ:h~0kHayn3GTpy4tg O%5砱#]u.D@*]ڽ#ؼ^OGBnP(Z=r s2Z ɨCwO=$E{&A5J%)C;/D/ojo7M>4;| YnƯhT&~]?G.Fy5Lz* xXgi1Bq-YDe釅I*剅ʅuK~zawЎ n" %a>/?s˵D9ׅ G@"t )MeA4^8ftjI+6EK*n.V -+>Ϝg~|*g-!YGKH$)#̘hGU$p0޺7lTFN10&*!4$5D4Xy>6C&!N#"8]!o̾a.>j~o9*t[ Ұ,VYRRPPƐ~>fGm9d'U7)CoFGWO[a=G8lۆ<'?%fe/ߙoVCӰ#/k|$K,pL¥!gɴAUh剩|ˎh 弅QCie Y*$5$:&{BٳWT Gࡍ3JzB%w+dҾQ PYMY=<<|J\W Ņ5HBDc+*X,Gzn:wc\k9wo:nl=+PCUe4]AgϺg)1)N4~L~닖7E iR8P^oYxGU6C!QQkؽVOJ8 T'i7j3 hM[,2쇢+ߕe}T+CY ,[!k +Ry94>e?|µU1GL\085I*!#Q"TվaċyA z3-b6A/7s|d<@EZN-[1c*I,E>T2gy艸ZL;Lq:NV@X{,+JD^wӬJݣP*E s~ՃjTeո(-s:k#HUt%O ,7Pa. #ҾGO!ڟ枑(x4(!jCoM:| U<1g8Б1k("_USAW1~XǤ ~X|rOLCC"TXxcVx Jbg18!tWOİ}p3LN'Ss+޷ Ebu"AK7ׁ`5 j=MC6枇4mXkNW$8/% }*+HvO oY:m0aPt?9}FѵLx,8ݨw$qѽ͝=OZޥBE 4GY"J4=y-\,+I[d $[ԓ3 z}G:(H팚ĩ<DWNwth/_J¥938ϯ:&ιw _o<0tWMQB5q z\Ks(e`x+y"g#Ҿw'лҐllZ\j_KLf@(+kZY#ͨ.B2Uxς8~ģw۽j,B4ψ2'E@m& wA֍7:~+)>Wa" G%:pT/w.m&*Zb@)S R$lmWda\C.Mn뺔Cq:ʅLW_  Sr0"FBֹD$zYFqYs1ӹTP5!mC㹟0+\MiJ[ȥ5*"OYGfL bQTȮN5z|nݫgE1- FˊmXr~{շI~]plALL>$rhuX: ȥ~*fp1!~dP5B儏c3K.-*Ly "b6X:y/Y#S6L`%|d2l43Œh>cfRD5"ވOQ]m =K)brP-0}_4ɍYA}esT*'U G C\#(~Kf О=#~@=&WRJj2o9YĝU&;5&4>f"y؀А• A~;cLg&M6g@n;M5R l[OV̤%F_5,Uo7JX4G>sSn@{5!#DW]D{rޜ v') QCAb8)wzF[wzBP*DchjCL6?MIx̣aF~ l4At:+3毉7\nulkZ`f 5ܵ="EC*{;"XS=P9A.jbU1AUqa?/hLp3Ur3-*CxP3lS29"1DczҴ۞<~IluP^lYrg( ^y ^0|dk:EETﱨffn| vW76z¢/(kfWu-~- '\aa(tut N`p#ZʛoOyui6^ Ue4qѡv)ZoRK%|gɷV~rx;ޝb09,W[,ɪmZ!rbWDuF0>$h٫nW&˕] t +YE\&ޛ,Bbdp'݃M(\ D8D{ҫxs\#`1|#FN{:ы #e4r]!uy4-ܜ!hKA&QH5jaߓgةzh, s'v E.0xl?&?+5}8hE vnG˻JwVjyeVʇ@.bsFmO|^,aAé,z+i S8g0ʴ=bˆ I|Xh>>VYw1BoBmC)5Bi*#Y3`TFPێBV^db:~(@iPeśgԽkb  OƘ*KVUTo6qЈO0:C0vtxNW|Oj|uF\U.?s>ufnT~uH8;8׍.@Ÿ1 bZxK8t3rƟqi,nOvp[!nKJ`M)v=% \ATMcC]kn8~t9(iCp{K b/VJ.2:0u3Fu' 6 H)lߊvԃiIgM WHQa5NYqF3*pOM{{H#歘So^$b(+"Ԝ\ڜW->5t{ЍxtcW4w(Ͱ0)HNIf57H_9R aa'l o]^,y]R`/y_>m8AY'*( Pxl/t-LK RkTڎ!e [됀 Gҭc( 7,(W͟LLArQqpFћFYڬPmP~ގjL@y8Gх3*B"ٕZ4iU ^Al*} "lG8Holmjus泫g"U$UPӣ&cc#wlp8ŰŪimzz0b"N~F򨛴j*H'NhR2Qz_ڤZt7nH&Ķk*@/Csnu;?8V+66-\A4v@qjN݆&DZI#y$-v3M,C<A ج\sqUVTЬH6??]VDc.B5 >ߧbBt׭PY,EsުNؗj+9r-pԊeɤM1HTK?( ]̵݂r t'A7ձ Y?h`yiW+q Q9ג}ò幾^ڈ|RFcEsRh8@&uOJ>lEtc?0ɚ1ƙ[f^`r@aT=/M wX& f|C`@ԝ.f\3Sc*RP& ?zFO׿gl.} /[$|)>U@DSx…"!}n~9y]m./آ+2e =&it쑸t1ײ5t@vٱ٥_lL+ѡ>iYU࡮'&+kǣr.9N}]<V)}#YOY8G00G y߭nRwnN/A\זe~(h`nӿ^%V-l7,SU @?c-y+w)*HJ*W9Jhmk..&A|, }6Q='|bjHPS{ ]WxM>[fDWS?V]OS$Wp8Xl9mordVjthI|Ѳ\7OSơʝ'%"y ~mzk]~AH)`ĖW1@x$R~4Q3K8! ׺q|OX;YB1ɉV Hz}O __IzB=}PnSSKRhI^@GqduI/.6(S ~-]Yx2r+z.DOk:og]Y R/ bTYb߅{tQ eK.>l8_sQ3&vgI1vy_NQ(h{=$֪wYC2v; +Qjw2#[]jvPB<0fPt] m& K m?ÆNQnHHݽx},)B~qBO=!"̳h)Ȁ;4S()t[끘ǃnSE~0hpl Ϧ AAٖ\fɒl(q$H8>m-UU tZ iZs/;-J9oVyz dbQQþn4aPA$Ci=z|I{kkX-fmD= wZia@y֢ܛ" ZJ+/T| Y*%>@@V(A||lSIf%'Pa,F "r\QTw5iyg#ow4:zyAVdI4 Xo:ahTf2Zm9 йz<U)^yDؿ/){} _ +h .)Mn~ߙ^wX$T;0vrgi@ ՍC2T [Xj2Y<-`*X%b<-.R;FD ܑs9 B{(@*JVḃq_5P_Zw2%e(j>DZFk}aӊG3*2VZŠ3'̐86>S2}HY2[aFU>(*m DV*ssꟕ ,>Q"-d]0͚U^IM-R؈v$.ZԜǧt)q։ goߝlIB~q>`vKڒN%.jrBLIͧ+!Ӌ~ѭYVr+Ƕe.MC%2lXʺ ٕfdůAdAJAPeJ |͡W9ןgkKMelκa؍No0XyGSdfJﱥO 2܈3Df@KN*:/K FJ9WLTqņRCTᬞ=.,EQ%]D^҂нK}黝MOZcXr NgƉG6jS}jZiuU:UkҫNҴ'f5 &<>QqB=-|\LF?+mI,ҵe"?t@6߿j | VVډn_K e',"6uuK$Wc~>\WqTpqb|q&˩367Y0e @c_dJX) 6s5#tP42wilOi7}:UTj1/D!ss eFg0V  q%0fRN~ƃ\|1 DwWG*t uɹ{_AAش ȅfl))[Sa7 I g Q3R'Cűd/μogKɼͦm9*A"e&vR^46([v2kSbDbl! 2M#._ oeE`R+D-iqc˗Qd8:NƬʘ9.qӗ_f'ipM[w+= M~>ܢ-A-,ᾓM𩣟S*= U:l:u-*eĕ\\ۜR0ȯu,DZڠ'KUqlUa\~OOpR@m>gEŵ/:dcEKKMj}: Bߖ*?~.E(RblӫR@Ό)า.`os>Z [mryܚ1_w]J*+|:b9QW "P/blS?i)2h(u_tSޝ n,zIwD!!6AT:(_AN'?^Gj0ge籍o_ot0!pn"'XƎ**AS?S\@VSZ:FvT.u^+숿4 h{(aN2J8]S]t)N_@ r+]QvhA~j dױb$-]-RLJBHMB=+f8_}H29Ò - ):'rMy3ڣBSRmC5tdJddoVn̗\c T cǯ5-;Knva4Œ }3*Fh}e[DjF6 e5v>sp^qԓLZasip,E C&~ qZ6Aף}k8Xs\+{_r@.Y6aO~^~L0̼x@cy:Q]*M]{#8VE - [8s?l,G.m6)JE" #}>֫Eѣ{l ?膤 =:~HyͭYށZ tjϨD9w_`"-^)b}4]O?x8_wvnJ`ξ,ߤqnNB\܉N;,8M쬧4j ?J3Fo\_y(zܔSGNyYRG\b~]E"F&_>ٯ'  dר[pi)`xzH!QB)CihzN͡t:2bBAGa㷲 jfbϒ#0Iߨ۝"ܱWT'v/;^#e+s )@2Ñ'#~ 0.p 4`zzYRV"?PSgܲqqOp 㵉%j0\?gk_e pklh2ϓo_4:hC'Cȕ梕.F!U6}̀V]CV~Y pހGtsix-9^+@M-&5]vYp ON` >7 ެX܌>ALs>5p',jey&jG32"zvX`i$[Fw})݄g4 8?퀐]"UG2זN~Hy*L>@3}"'LjMwȳ _Ge{aѤ]?@p,ŧmo7Xy:%SR|'߂=-^/,FyoV&툢s0]cCZfTҋ-:WR&o l0H[UV%J7}.2TS&I42%P&lD N&]Æ\)Oi;RQtJ[uqne\B (qS:;Z%"ws3dQQu;\JS肭ܘ}it79nIϳ7G,"zAS`jCL+K:E|WnY# ؈1z䥌(3yNʏlEC-d5V jĔsUPb%b wNޅ2PuH` U846e#>0h /faO+0(Tb^ )UaBY˕̐E]Gץ[|+[FOjY}7;eTim4v$ k0M<&r‚Qh̷eZPCAM*d쎵{8WLv'Xt5q_M{Mq0X>WohP6sk"Cd VP#O$]ѯrYZIOz6/B}BoX4*:8E6W&nd-Pqaqr8*m<4~@-^\}gy2; TUCo"5ٍ_GLmhm `C,̖@Sm6Q/bAp_Q 3"N'qq,jDDS-,p@R5I$g>Ƨ"cj,x~(=K'\V7 w^w-ÆQ7}fסcx}CWϨ@mfCd\-́^WM=^BA}8O`?BV 1YT@Q @߳ˤJ1&v€ꁄ/{%nptG|-Jי"Z 2ڲ~қ15SB޳WWzp$b"--wm }e*Ča- { 'šwq7{JG'VoI5xox~哿[{=57d֭ Aqh/~ΕI qq7gV짘DAz `\1_R'e.ַWnfm*v Lv.78\ VK4(gYu"&#"ޥ5iZJT6"Ļ;i+q57v[Ruf1!2q !Ja${nyhYm| -A)5fR9Bzŷ =4fm .$%&aJ*xoh;6LՂkYcV؎Ah.l|Utd$\?.Ll~bfDZS.bF|"lRy:*O.Ĭ e.m*40AV%_%spJrm8V g+W2!9N@tDcYRˋc|>ڃuh!)ؼICa֤>mE?{Va?N=JVk3?e>d3b9[>; _>gmS0+7J9ߛ\$xb" ( q+&^0sH#vd .޴JLc$ 0㛋BVR)NV^]wŗD_Zvn=g9]zLfufU.v500D4wxw~s}1^%&e-)6k?0+&WHp1;!D$JܽahP;>?=љi:o~Ξ pʬZn=6(:"wuCҟ[k,W U c?}PG떐5U {n-~,uzsl$Aԛ6xmM_1&yJJ_sfrHv{B&D}֞@D%bbf1nt ;R[ņG u.xHB3Ű[%l׶KHHك Sj >ib~AĥzdhC:hq{>':MOV.m p5`pq}cog=ʈܤyQ%h vhJ_i7cYbjİ!-%CX?fW'EE@Y//].c#J粴C9?kC+-ү O&.KQ8]XGe<#GGÚB)wZm3~Ff?p&Lh[?'Q<)IluePI7Wi>o**bmcIy{-xg_;QIIJNh PT_īg?yw: -a~Wp~:ֱ/<=Ac|d8~( o=K}|p.kݼ9Ewmg]b.OH6`sKqkY] 6뽑8'P߄N sz{jAK tScm&E4|@![2P [)-;IZFYaBR?'jǦ171UXN[NA G6#&nN/G~Ij+К[h^@Im9EFNbk44PU؏cl\xa# iz)>e/g =} xkJˣ(>g!d/[:t&vs&)L`UӢզ,ok~Vp8->yKڬ)S'[Պ|dF^xη[p|;ȓ4(~ gZ {v-: o|8dѮY\4be“FiWJ6Kv`!?~:t xɤ޸x7U:fz&3[$s. >W C O8RxF;g!5FqAe3hp1a" 0"KQyJr0~Ugׇ VE⸞rmPh7Gx>`n2RkLӿꎅFk릧\$ 0JF$! „  0duH H[3<|2hK Zu1V|v*M݄*!97/Ě MUƫcaow :PCJv WcDrWR0*K0,s1b.9p)ntiƋed?%*q u0y:i#:P?2v [GX1Kd,S!i1u"faw7(.aÖ8ct]f>Q;uZF:0W逬;̔i78AWU75yt/a)a__dFI/̍"$BFB1bUKɽBeVhK^Ocٯpy;?o|j:mš3'L|СB΁86Grm?^i3GEs)J鎮cʹOP>~#k ƸKX2[uno!gh9(d0@SdwqvƓ~m3lv):C|q~;f3LtDj"~}ο7:G4U`-;¬Bp5yG,XC-#\сn'ዤ,NAXRFqcL ,SwQJ0Na!k ͟`/xc,f $*S?ÂU)%G-4Og|cd(O IN`YX)03brP 0\/Oހn]~)6&ZScx}i˘חE3X];zxzh,4h!VyW^H^H;_ѻ; k/ަ..a ӹY}w_ \?YY`b7Sd:Ja.$ [ :iCc[PQ7l-D쐁7WT9S@:TӷUU H`C.& yur"# ۸&GYyQb^cUfSL*:ȧS~T!s'd# _pYWsQrʲkiW]!\YOrJeƳbZB-9eu; _2^zDrfӷ{0m1QnJ!nx\bIbDyPQ%\:T3a`! WN '-R\i'>O^. PC鱝+sJ&-`fe]$/V$LV̒{kζѕȵIޗ_,FZy'26GPՒJtwN \Q#c?Qh{|*'L^*2%~~eҤ5eUFw=nvuiAJ_J5)o|8Q ?],*g}nФ' E ~G:> N(7;ʸtW2|->T*i’iFκ'"fL@W鈉#5.ݕ7JnsKҤC$|tDNmb֧^\zD%e8|P֔Նb&b:PAt19tJKP 7"P/j >Bu((.Y41MvZī;7ε6r4۞Þe|: ^mLlO]Ȑݼս /G'sȥe|H $ ӵu01rx.#!r엮~bub_P_+ۼR7ic'bs@:Eȳ#NxJ2;aUW_+YYRFV:|p:MG- ކpHWq n 4>Q5f!l NſtAxg?^UCHH | 4֨̓5)icBHF֤fh"; kSh\&Ǒ˒hRi aGϚ)Œ-~T2 ^GoQ)S>ao*zLӨ Zss(un>sIeΧ% XɯBw"A|XAj=cxMyip Nik'1񱫣UO)tE| Ru,xBt)^6;*>Qy=u51 UCy"ꦿU-=x°]XOe1 ݈<.3ݜ,.8m ] ׍kK5">6}G'G* ) )B+,)g1e}_K "!V=@'oFaz] j4%j emWksɠ7v4.Ks̗1p_Ea++S,욳1׶z{Cҧh>arn*J>:v1)XSiN^* Wό8YAe,B @vв#J˟}{mAjܝL Ly!fi6:-jI;f0Qئw9 8I!Ŝ*"C틁g۳S&|I*ޖ`JML=GMZ(ZkInBk p"}ü%^ :A'XyeT z| ,3O(4qyGS2nyݐj7b6<(|71}c 4,vwx4`ֆH@OĖ, a9 %3%^ܺ[N4MyXlT Y74vla>dZme "X ]S5â߄A3_7QL>ak 4CEAF3ʈ"Av/ʁ4fӂv0Cw뼱n_UiT 4mJ^"Z ?isFPX牆bPL6"LYxlcղkUf2p "%c2 `( OB6bc(OLjSAy kjdA23MlJ( 7p۸Nc{& q5Rbn HF߽]9xEy$PD_\PA@Rr&JMYbat! Rx R%^Kg,=Ɛ[5R|T1gCX ĐE?=3}%K zU+ ?۽cɀá0޼ߪɺ5mo5vfʲfwTD$|dЌvъ X*˩ꗫ(?>Dx5;R#u #2{L%w45Nl SgKȩVMLvVxaSZwIL$!"d(Z _)j/DxdxJGJ, WUp $wO:kʢ,e8䫗- im[n1w8ܤ/65-y%{cyzf-xdt$nm9~YYyұ}0>`ħOoل&hyH)3Y{ᳺQ|]_P8Y/PV?TP?nhB,սܡ iQ;auIX'^LRN2gX^^n:d'.((Ϯp7=siZ) ![Ԯ4&{XLfјQX8}wI&(k*S7(O^\"wLT;NòxYzDzw<<2oQV$!._сtK@.SnԎ&S 02aDhpāB.mu4ls c _[^.m[{%#) j#I~H4ݧ[ ˺nI }!w]e9.ࣨ('u72c-*uw ; ~fZ!+=3GcY oԍHAcxLW L~v(`fۀEtѨ&d '"E2$hpfRA)'MZU%5UBFMC<lN:0k&*\]?[oʌa <7-=bD0ػq8WMifݼY'-ـМoʡOP"ˡ'H¼J&e.?TY~RLE=MOWncbv*`vEglzF\+!d6ȵqZ⭋7AKB ;~EJQ=?$ -BRx_ Y#߰}7:Ey\.w_n=g1#|mcX? }3FGG5bMi]QP(ڶK?zPʁLw87N [v=MIdQwz%򔈍aC $aWیXk9"\He"mQ GDk|4euL?"ܛZVl"WvГQ4LpT{<,|Jñ W!Fզ6)o=*,;AFT nܡӍз'rT]MZ1nU\I ў@1g X C<KbJ@7|4@ԓ/Y\a<\ o` 8ݩ as$^G@,;e, *39rywk3 wPFNUב;qZ&MƠ9L;wdSMvu>G6kʦkoG` (i7>K¢ț*`$ )%:?0$@Zt^4Teȯp976]OjhVt/"钃MoUBAЭ8`ӑ03ZN?XVN!Cp1=7W'0,.P2Q_]T3@S)JX?iND4rO@ݢܰRN ftuT5$ ; j#p'aP3]nvq@ѾpQC>LW3Գ@wSGtĹX_Y38Sokc]?MZPk^?o#ݿi8~KJZ}b㷜%d#x "r/Y[:x'`A`߯ƽw‹ќ5x,d_`+[gk~Ĥ!؝PAz,8*wxn{~<kQ5+ʽX6&Db'7Pn+si a=vK rmxDckhT2tbrl/I=VorKmZ(91;Âb|%<ޣ0PHZ}nG1i?0\rΒi]'- 0lo{ڻ x?{Ҽo(~B A1*/ٛk=fK%9G 6U#AD"]MzfNaD͆|DZ^g nI} Ր Uuj,ҡ7Tp7-G7ߔ&Wp ;AaJT{"t@ӽ|At4@!}W^F^ܽa<ƫ_Bmԥ6/͆$ckV*d~ڞdqĢRfVn2$SYsA<>Bo潙{z ՙ!mŜ̰ r`drg~<8xEݽb?\a#;]suq2@р/GBR5ؖ) pT J׋ƒ#1}`w]f ȃK"S {rPOɺ-qE{(E9[闍TR6cLmb_lN)GZwK1_ aHlC%_);7І*]8k,b~<j._,}@T7oz(ۄq}q|4S.Z:$z5(kr Єeˠ>=JGE7b{Q$6y:FCd@l7ݦZ=eC>4 oka?ڟH!8gSKWbMSrGx/5_ab̈M~<ާ~Kl 1 gf[$:@TyK) 'Z+E,r6»B8~=k,hܶNxZiWC|  !ôGGk+kSje\Hv.!yw&Etflתҳ.хcbGCvx2nVOHzs6X]RʸsCH,BET$:5a rSqQy.Ik?:h" $3(Xnae6HCYn}A+;`Yq-!]< n͵d_ڇlN:-H˪ε ӚB\MT{%0a8V] D4@VGW6luS߉T6zn3_<͖w\Gbd1ozB7j?ɝmu&'T럧8̠ Tc N& |x.(7KdImCSCuV3kǓg:+@dT~6pn!w,7#$qJzn^0[ {1%n!l͙[c40K"$d-D\vkHЕ(-J״3F"H_R-%Qނjv*M#=ݳXƼxBstl7a/͊n"ч8sUn=Ƀ|6@P9hiȆU޷~7sE|dqq-d0`W)cFђҖd&~ .Ԝf?{dRę:Yv;3~ 4E_NM-ώtҏj@W;xbYi 6Þo!֤tjya2f{MuicpYrĩ]<;Q9G¶Oһ]^/<%ѣTUZ Y13] R#3R5c*L!,Z!jox9N@q7%f˦+C A;Ϊ,Nu nA#5Vi4Vb#i1_EϋSM~:8=l0~$ sf%DVTEuT5G!쾽ؗ넲Ȁ<@sn+:ZFzfvqJMncK1mOМI)#6WFN>*XWPqAӍuc3y\Y, mus؅=3؎ p)Qei*llT3ыHabvM[^\Lőy' h W%-јƒ:k$yM4IC+,U1Oms(BZ juGB}0_*_? ] $}"zӱh[BhC/{^F%N<>Y%D`fq ,vU[yO2K4|A]8e2m߆xxCoIS0XI} V@'9:~;rtP#d]tyouB u7o0j<4Yr 6 bp?ظ hy)C A[tF\3va6婧KX^qΧ jرHurpFs2 iF-[crOP=&TNؑh{lyG[")$zOk}$</FNc gVMݡ8yk`*_Њ7ri$||C0SKڐDP4>k$kH?9:^b vB ٷIo(ppmEK*Ҧ?ZՑP_=-kʏ$'_f*PR[O3 2oH 8>nŚF Ql͞nåت7~n '_*\s(.s)d{EO6Nw`/>͡M͙:mR{ Om.:+kol M~n GFox^R1ﱚ@n1jsOfMS!9n_B-!t+>z}*0`!ļbs}E_hJBpm! TXem銟DK>ᄶC3z\~ڢQo%"]Mrf<yLy;-aA86 oゞlC"8*Jő拊/;Iڈ&޲rڞ]V=}K2 aSf*Ind,|g4LU~-j+z}ʨb=Os??:ޠY'0/j̑ GۜEA{3C*ͷaf3U2(5o?] W`Y u0ܼ\jfmY)csC`Lo+=xt_5Yz=@qL6Ĭu=s7kAqǟ#OJ\V)O[N>.9WYm뛴 2,)ۻ* |dZB<>a,|>"E$q:n7q`s$\Ѳdpf(QΦ$;  iy$u#$+‡(sg߳f;c&&3&|_}Nme^yj"$0/|B PO%M%^35jtߞѼOv0NxStn+CdK_eS~75ۈ DT&o պw!}%QjM–|+wF~:2A>kN./qܥYcu⎪isc?jQW`h|qw+/_ N-e YV B ]7xY$&%R)O<^jHeXLsu*⭟dURͅBcJ81K0swJk.8Y? /yLC'v sicEt_Eޙ,dvB?:KPw!`dF%J^Zg}:V,Ja xhyXle ׶AJPq /au @le:jȯBP+' '1M#.z3iQ zō0Al*}Vb*˟6>/HBV^/ohnTq1F`(&4g7 ~3x=FZMtSm偽b-h=t B=( =ʅre*g["ʧo:Bs%:ٓ9eҧ2^` ybt%߃ɰ պc>W2P^3/| z ªW]wM taVq~CI"hYw`xҴ7+8G? JQ~V<˜ m+a]}3RЊ¥e0zC^b&Gϓ :<.}5VjRfd8OKCj\z(Ĩ.!qOZ5|\&7!n?W^VZ}dsQx;ͿUyQ^y X'cD51lnD,_7e¯Щo()lB6öo/zɧT~X(8cd ڋ%x>{mf.-.B֠ BQ- cP." dyF_[/V% IZ8 PręxwJҧoYW#Kxj53(_]wN( H ,ł,j /(CGFX&K%h5jےԬ\Hg]amLj]f 9dUg{뱵:1LrqfL&Ygv?e_缁xzM6O6):(x~m\s_ݐh_o)ps&8W|M3'$gz LxJ1?r48%# ;Jΐ_cL3$/ԄQW b'OEg6A5)c7aOEZ Ajn0W3^{f8hM؄N/eb7+Ay"\b̢2O{N*9P;!۷\]qeۭx#I%'׈ߕ=_ +w bbNORw؆g+qx c1Ab=%8sjB"8`Μ-C:š<IJ1$%IqGO[[Hg? U')]{qe+* ?RLTŨWDs|R鬖|0\o[oJD k۳݇~ĠC Bq)}gVV'3!@TZU$$:Jȝ θHˎ9z@% :UI GeW8z⼩L((1ͼI!YD4(!6%noz ">Wy-u除]> Wl:RϬP*gh(\OP؆fL@ eGs  U-NEL>!ܿ"ڪ2s)(ݏk+Lz#`7KGu M@xn ;X#HNLZ]:5n(19S3zì$~HtcbLӽ\\~*0{" Zmfutނ.!~3^.p2?3#,0.\pöۛ dD2-+|lN]J}sNΧi(M_G3QI|5Bmʤ#ݼȥy?c0q4/P׻  rpr`=}%̏}V( iMJo;!:8z6o}Mёlp^餟*-,ĖE3{柹 LqZ#ʩ< {+0o0hD((,+KA~e@ӭSd 7⻬KY#aލ ژ+@SN\ |!V˝!#BMzǔG`yys+y'pM P(ǥF;#0@K {0VBd<7@-;)&z\Acg&ȏ)=hcp?;'[d6u8%?f"krd4 %ڈ-B=`kkqt~*SN3qW lm5*kM)^a(FëCL|" ܂gSG}g_ʪGPd#b HoR[${oGV) YR[ZQFW=xo;ᕠKe%g_2p3R\PZ R9CCyH#9T[;kLV0.Yc}B"loRc.}I2 Ros.NFtHԝ{}Tm+H="w*s# ?d~$dXy5T M,krS=B~kKC˘PrۭPM£EWʹ(f̊MbYNI'9! '36FZXX'Pfs <~#vO':h;tb+D09PK*2eb c Bۋ9 C^!\ymJTpUZ EPK,]2\ KxI {;-1\y?F'鱺hgLHrX0tCZ] Mo-fugr|շ )ע7!kvfYP›U.*ŏ:cPMn3+i//dHsC2%X?< M*}2]{n8%߯BKNAt~QAhMTGWtH q* j!kξn_]佄,pE- &4xOLdmk/`j^VC7?44'N<>x{Z6ѵ'!<Kxmqf)"&"7IiБINtߊy掀#DI#E/?;`aQaHNpu+;7l. fٯ d (tՕ_͜`nĸ7&\l oa9fk !)$>::'fy ' vKr̜39ux(q&$$)vO"Ӂݟ?kŵ>!ӚA&[-(\2͆-'_{>eh\)-KO<ɓܬ=km)o⡖@!l]?CqJV>X-`8ݲ%Z1lU\)=$20 c!I אtgwm g@-`%[xc9FƷ ԑ2e֟0"78VxUk[r/t v"RG[ 7B_̀vlèMQiH)SI2{?N=xxy2Q C.P_fsun85US$bOpp0[֨{~p6,KFD<ٍ; UɞRyg7)ʪ 4O)mE;t n6hyvN, ߳t/)>' J5A[, NNPq7ݙ:c֮d14AZ/فh}|#o˱'= S[AP0/@RttQȑ\{FWfchƎ61Ʒ[ d\Ri\XW-SƯ&z ^{pw%((ަI w=l4聞 &)\if:x$OʋD:ebI9"/ fUP5=|r*(  aaOpN0 Cv|EB_g&%|I*Mb|i^>JѮximt^X앫ř>O%CQ㓬\,:#ֺxMb7(fLc_.zgͶhFM@8}%޻D`ÈQ̬ln.MXJ K*y'([myzK>1r3=`[-^+r'T\%/{/l Tc ~uU_$+Q:lA'Y|t-ɣYHS˃HZ"/YM"M|׫6jE|ص]HS^uXmyLfGe[6Y+޻^sLwVmngZ scGC\~/:RS)sF5+P3V9P>*^48=$OVodo>@Dn~[ hI3Bi1‘$gRk%C˥FqZ2KI^㏻8/5pWnTˍF((DqHo⌋sy.EnTR3tEv%IXWkq/.bZiB]ƌ;|nq|ih >7hjeR0eY%DτL}%ˮ~9~clj5nC?Vwn.xq`q3 }o ZCD|ui#Mrӕ` z"p:Dl,uGMdĻKaYs?!& AXl#{AtT6eg&_b@1ۛ쎴&sWDޟ3O :k{/£PV=4 5FMS,-LyT//qN9#+K޷ҡ T1D0?>LH\8z dXD{*P< UGn[8M^TҘ>@O].ɱbÐ gxVe]k-N` e(~5Zȑ>Ɵ*4W۫?7h{~n7Z8{e R< ಄l9izt<>ъAk2˄sfpr'HۉG\c4KG[Ja&Sl=`1w`4/jp! eeג5'%[AvMׅ<"BM6oMpǵ.OqJ `N9gS.@ϸi]͒;"Ha}-3_0 EH _]G j b5%D\w^cȂԉX4|WlYb8D3?K\3|qrCXԲçIcOc(,[ƯHℒr(qbHn(jWI'9uO/dS OzRA0y(+OѬl>RI'Pv5tlSKx.G,O擁7JRXL_/MLX EQ>=[Eӝ}lζ"/lK-DQT,q<ˁ;Wu5=; 5 '>(h.WԎ )\GEh;ZCOZ3&V-ڬՋ M,9g(&c yݑܬo|dO6jl|Hei$"3ӴuX#:MAzj2Oo?˷ .Iڤ{lUQZ!9O;Ghy B/<4K9άt)uxY6fO*!F/߳fJC"D 'f:B0ݭ, yCJNn![/*m>W u_G]O{2w\h77pJ/XE)b Iczn:(i!ZtCӪ9(pqCkZ6|"WBi`H_*0H7I_4[IP^av n s)rv}:y|;Hv;bal`ǕCg6LX`U14*p!(|m30ntRș:}sN]m=W>), y|s,C@K8I#{zRO.<ʔ@s<[ln]J^nƖ+SF%XQ6*0'4UM v6ImD;T"HFC^.\<Р8f%I$7%Sg oD⿢KkQV^"ŕL4+8k+wv"(HԆn')ڡG5jlI÷չl?M`lR'!4i*~W=?.T3h^T_,_Y&iDžVnH[-ab`qJ5Gw"S !|XLEQA1[ŒkP7Nڕ0i;j-5y,pJӾmC^|$pm3έ#Vߌ2GX:7VayѦJz[Q΋m-P܅)3L"hO%AJG;LvjՒNaoCKw!Rij \W \\li$%{Tꫴ_00yd5HHY,"[#2@u_ilsP/%5@j8Sk72V:~SI$~nj( +䏲j' e,4>^ P}1qu$Oֵ4RgdYaO5&e"U5`1dti4e/:{, h5gל)3[X(\򶖵Ȁ}A;CS+IČ0פZ4a^RiA~Gv^b,RW\ A_ Jzoodv匨8bbHG+7 pV ]̜k"/:&dRX'0f߫21dv]Jt xd©j4M:w\? ww{JAé_<ћet:(O[MH}i &k}%}㫍{^AhR՗;`׮9fH(Y-^ؼ@}T!Е^,#ڿ"+-#չ?j+T~u|<#;z)DԮc t M!OFBbTtmIe,ˬU:aLjۙ 4HNG `Qʊ+y#$"uN?0Dڕl=F? X>"4ؠC'X*q>Wl|0:jF"%#݀CPKJl+u+៌ Q>۫NCngH?ky&gc HuOC-7ʦUO2{Zp~x:Z3ռ8}?5YX B,\3u"\&2|#ЪybH<tfbưeq0k'ia+M,ׯ)H@4%ˆx#fx'C.^UZupb܀A'a$EFm,77BC₆\PK'K7jn :tC^ט&h_ws'rn_Diml'۸ކfƪuarԭz*.ƲD5d+@őSFX LZX[]C$ϋc7禋PFɸU1L9h.eBL=K\j&0څy|Cv<_} W] ` @%]0[́8!|2'9.¹'`BJt}Zu6w~f#8D3qfw4J`K" 6V~~W+V#}]& !S]4GP_ȉ{zU<н ׇ#j8Xer;D:=R召sګ-\}#Td>o& k='{?gAUmB;w!sH1-x=CY~;K 4p9ebZ3 *I];fx³ܠ50^Do$|p!56w\8ه1f& /z_b_]Ek)1تWN-3(Oybyi _ y{/g9V~͝J* n-{o|IɮtkSX?c~{Irz]/ \P͛,c T܅+ےIJwl|}2~ǟ$k{T\9 %>ͷ A_6C5k{bl6# K{9N쒰L*})Rڤ#,3B; mxrbG (Lr ypsSMyΫ N|d,HȦ3FͮZS@yO+cG8olWI]-rvKk394%3z5+iAKK<$$!K"eZ<]O!8 H9I^۾ #nd$\ ,]@[[dorXr?4G}>D2󟊪A6P*U["|T5}:+4(fm.Vg}¤9&Ϧ`aAԘwOf*EjcY^ɍ MFoD?a4ҵhH[nJZ 2Bj}8u0l3[xQPK#m_ا&WOsS3@9թ%),B2--rke@8\tj6&k+Ãx*b0N)Ⱥ78al'|JN f̙O.92h%pJ_*Su YJ9aϞXz'8wD8kp{檓0w|ijtn}̑l,8Soԇдŀ]ds'VAKCBb\Hȉ-WCD2qZ}rōy!gFz(3-qfkj+a`8ۛ~TxɶĦMctc@`D_\{7؀>d,Le w&6dPWprOR82T<( R{,pyX*i+sfq f|9gGxWtbWIBġ" scQ6*i~0=Cv ga'4 $Db()} N wv2sv70&fˬxzZ@U㮚55tt?!%,#/ #W{)-7RH-"-.0$[,߫YUmaI׎h-S$9žq $1 CRBŭ)ߔ `4k<{0ٶ 3"F~vJQe_5y?T%;xdD&}Sх_q-#z];K߬ԔPV2 ޒ 超F l=1AU]=8tFT_j7%#D^@VVk^Z }{>b(Sc夸yG$ QifpLڼ*kR2K-OPm_W@?\irPIxh' Kyyp[S]!lyx/VgL+$/ FT.a=cI%sc<',~t$CCT Fy\;r*0N0*` EV 5 *CųY[#22kݷVHn06|!t7$}vYYG0{D\S5y`(]q)Њo뤕Ta*-TH+NN\3-Tu-Д+еΞۂq!w@O=&nP}?:V|~erAPB%=IkX|q{>׫|ع"؅&SX6q n/ųG+A,q .?2g5/n"_SRJ=G%8%J;53*>fW^\ڔ'~voR1jB74|DYQ+ss@8،;2L/9 -=>X nI8*F:HrzW}:9dkce&U+ī4jVZ>1VB;eK sW yW(ւ lmavm"$08AI6&Ir MpW3ox%k?QVrD9KsuPJ07L-4|/{3gW[~ms"xtWk=ԕ~<̗YSރT⒅U0V/gfuYKG[p~[4*M`qqEUJ &C|-;5yY0?‹FkIAx眬~u)5z"Pq(h<*L][8%YVK Փ75(JQ2cnȋpy/~?I65|gO#?+Ex[խbkRI|@Ɛ8l3WAtחh(=Qz\m) L94d"I:] kuN:I[-+wqS$;0jЕoF_!;{Nx\)ٔ:[j\@oCmq;:eU0K4^d]F'c41DxMKm#J툃H%^&}3t Vb4!L}/pTD!O6Fh2Z(h A?!OM|ݚG8 `y9*I/Ѓ&u$D\dHYofV9}bIbma[,:̕=X$ZA4 } TN&!zg~:1#{Tp>;FTf X1e}{G`å}\^kOL:zJ5bT ~ zy 4]T)輕tygFPp {Ջa@Xۥ9L2ḟR9%5w& 2Ka q(ء[TLĒ3nu}C"9jeUѭ[2gjW$C=dMKÙJìI>a3^ b{Q;MT@,?= T>,GnBhoW#q,1]Arjajͫ*]jtnٕ,5n'>'gE YEo\jsXn8= _}c @)B. &czF6VÌ1l^%|p^M^?'HdQP֒d#4Ǟ vT/nI¦Y$_>bP__]پAToZ*T%'xCZH"JgjsP:CJCxsz?o2Ҧ 20f&YI*y-MPGd%.wp_ Hޜt\&jDA?~jw4yѫ Cp&`T5Т@Wׯ$Ksx 1w ޟ^nCߏpc1S`.|h{.Z,UY~8 u!&m|+Y~C83 8P >ծPM9{yt _R4hM`] _֛F8ȟٵtxs5HLEti>ƝmIv(I^q9}2^Id#Hl0f Z5OKvZFE]-'+U|f0 X36A*6t\ RafAѤ9K=;]^ m ]FZ3]ms^X=6ko($t YcT*fVMOMrn ҬH]`:e؟J&xRjϝ"7m^#LJ~ Aj҇{)ۭiBe~LDTp%y5P>ߢ}Hf0j6. :!"Vm'wOS}z_[` .ÎZF5W5: 39ތ:XC<*]yO/$k꿩 X.Nlpم_5ާh 1uyb&91bbx;Fhwr Rg qsE& !s^%V݇FkSa.u|皾nک7džӣe0qU_Eh"ܙruN'gpY87ƨ㶗IFv.iiW+&m[wc_ +;tԥ_  Sƍ8i6bYq73 Ye zꃚwW7V`ط kQX~pzW.:I G=[$k17BZ=.C W@R)?@w+)Ӊ iLE&k[xL)41Zz N]Y8DԢ4\z[>jZsFQky [=1-"ϻG_ ׋,϶Nþ2?.WQpS!v425C6jМݼ-8MK-$i^A`9_Ϫ#ɽ+n1Egka&:yc[Uݚ#FhJd֤, 03:ᴓN@[٭9pXBgk@k+_KD\^Wb $bEwbĞs3qMX X]ܭ-n^:],BCKUrܗ V=BYEmdL̋Lygʨ#_(>q_ݙgiIeإ4v~F}u<5=|IMQMX1{IJu}8[]jx~'P{0++$#VVf,jciVT9V"C?1{^bV)Y3eU3/TXYLw/~3 "*=<n QZm$}?StCKȊZ{0 $ln2(=o( w%k2οGCL: %!nZl0ÔU!N"߮J?O :-9jčf>sc4ɽtXI-R9L}K606U!Ւ oU!г6?/)j0A WDpp[MBL@slH5֌pwwLyW'"̤ Eh-0hi1 T--қ݅lNN Ƚ"&}m@%ҳ&CLD*+qzqd]/`>s~QlXф]&QzaqUFՅ4H6su0"4b>c{w#L iG2 ͹ joH>S6g=Z!\>L1J1Ѥ?e~jIU(Y![7F- |MkuneeGpo@Q"òb 3o9R8ayR@ЊGPΡ=jJ͠1zgƦmA4K&*=t&8#Yu3x"p/Bˬ0O9=rI1+>RN/"`odВ'?5ξ^gƱSti\_ɳ/)i8`V тq~^@{73+e?EBL4/snG"Ias:nwY7^qZ&QʛV?q֍3G P - lM_ XޡA_#uBNf~Ͽ*:V 1cgXs> :oT  x)v,uh7$۠T&'8FpPH}'DX $ʓvp]X/)G>ie\BRU'2Yݎ*uG4unrSZxajKLYCS?j≂.΄\-"Y6eaZSL'@Ĝ^ 0 -|duMxk8M)'}O9c/M,WkiH¸(TUTߣBf=ļ:jkD;}Ya}).^PŕC&xpxbAD"XoVNK0@˾OK9o֨=\i>i*?!;3BTY3t>:\0e(9ߐ7/_tlaQN@&:hj' U!.%" gAQ(`~>" -M:YԮ F͗|>cyV:;2L瀲T? UA_NêCԊy$ LSP61U."̀H^`~c6bӐ$AJL>Pu,zO;M.TH TYަF]^AxBq+ :r(2['*2w.k@q"2(m OQ38ymZ=+1'LYޠ@#_sKLx"q|$ [{5S︸jnlSKI~ iJM϶}2m! ~bLv۰a&n13ڶd~Fy!ɮ[ T&XC!v:W^l.iW)K__' j ui4J]̩3T]@.e82wR!t#ܮT|JUko@hIl@Fk/JpGHm@H􈿪t(87HM| `-igf vAj+N+ ܉jBA}x&x``_yamCm0Rc0i{DoߧlhȔAF67-*,&`xyAH!w,$i'PMȯȺW2S9H_;NЁSAGZ_ "^UB Ln[jRm^dG-Yda2׊!~4JXcP|ѕH"@zz\e v p@f;hO!hՂ *qbڦ]O)}I.P⢘778=DW6Upc8]P׋.ߍ{. ,J&6"/ŋS}GIp4;aQ&žYf,7()5L=z@)5A ozMeәRqЖ7~ $gѦ\mvA_x7|W3k&xը8mؗQ`H!{?)юne=̄l:Zӽ@"ĈmݕC*>7]ЁT[6%b6F'R{# V ^~wtVs MEa Y),ZEvNbA闁 D (iꊦ:zb:8a[9]] I_" T3X8%L0k MR-1&e2+nvzsao t IH Uh9K^5eIm#K͙/بo+L\o1(` 9hvELvaeҌrwi&hd^T֫Z *NxT]nl\,b,I3@y(Δ:I!vF4bԏV Uawj]§gS9VЁx6s51G?"\[i>G ޸%Y0al)C=R݀!!ySն.r;]!U]s{M³wf1(+\dg[NIH]/2A@,dO/[T]N?F/vOɛ-dQoq&XnHSvI@/.(8`.$c*F;Kb@RfSQ_kҹä/5@JV;V{66 Wq@N'>a^Dx_ͦjżs5uY!)1x$Uoa @|`ȗ|-H~X:?'슬|d+yqՇl 87Ji ;81,_:7E|khZG߯2MM405ZI7h;p g|(DR@ r+}2R0 6UGqN"w6:F2הmzTIr,eAeJ2HT+P)C/dvݬ̯vmD,eϾx ԔJ?X j7I+aEZ K,*鞈P!(6( 9o.}&8Ϡ*Nq/מ4 Alf5eG $M8XJW*._Nh `GiP \}܁Րv 2;Y-uȷ.zs'rև)W/p`">!M.Dق&Ө&rk,^{Acfm80cy[2 yw[r0umd|H>sMy+Zh6RhJًiLW9z8ԋT ]i[mD&AA9ڍVN&x$N< ZÓFn^bw)L7OgwҤWL[eѴ-,(2k"8{ь=nZ,ZDLO]clHkA jHViY!Ԕ$D 3$O005' 51djMrJ]'P={1@3#%b$;w+>*$n_Ken n<C!|ka8'> b .w^ >!娝 v[ |D /#ZTPF ځ 7XĞ-/|z'uhAh'>g# X{c]> ߪ°jU`X/I.Iɦw#lƵ`m5 %9V>f{!4Q!~?Hi9$l,u>$3 3asqӕX9HO~u)RP;1'{a by/*GK. uSkcGM}snJ9"{;HN_ctO\ 2fdQW Bd*z)RA ne.*0:/M†FY02VJ.Y/8BFD!+v,Ǟ:W$I=1'Nـcۼ| ˏCEyCTA熍2^vK рM4HLH=Bcz IB]ԅ?_2%cME5~\ty n2$5w &|Pʠ+[CP0}@8Lz(ڟ_}kMuǎDK#[vѬoCcy!c~r{c;3!Q;ֈLo{31V 0N_bK܆jMv{~X+8˒}%KȦ!Btq>LBVCOV|b񤍓)vɛ}.5dAUaRwtnCPb#Mkx8n+!j@w3Ej` r}BزU+Aeǚ=.` -8gHJɈn|M+9OOR"bJ>{2[[BVM%Qf9ɮ R<+ Ĝ& y1̓Uy'7n%?/<'ֶ >,ct ㆡ9[RBqJ_.?!$BYQ&I,7|0s@:=Dm<3hԶR6P~06Ӯ0D+XY-l?֚W_?sǦ,߬s4y#| kjEUwh)O,י*ϜpB_J=rn11df^vx~kn c WØȽX&yl) 1rݧ}*йpHÚIV\rg:^`Jngc%PGٱco ҂g3H { 2;cL^'r|aYy~Y&K}>=ZAU" 1t=̭Xc0$/Aso*7=lk I4F5 e$Aͯ3M5fڴg{Kge|ΧToϯؐSDʦg喼;6Zjz]٬5:^ rX"(/=y2ϖ4a=x~0g\xl,%{AV_(c^85p-ڳLHs)CmmM6BEk.S+z^ { 4e5IЬw,UU,Ѷ&D XFr՘m0ƕ\:K[N5/J#\<ϰD@;}YxtZd ZGC赈Q'kw['9758gKchm ^=t81a&6H'=3>#n #w g n~"1'He8/yꅷd{1ulpu\p9fz?5\ 9.!lnf:_?X~|!a!Ha! 2lg= OXtO<~ǓgL[~SjXAry('S0exVD~S^2H # du !*`HSrC5'zn 7\4NerV8䛗W Yv GIG6f2O"C :6s9r7A<a,.6 ضp]m< r,(Hȭ64dFl JjmͲqS_T]"Nah8˄7Iw'6{pLoRUir*e &sN1ʢ?B4POZ>*))Wj^2UUM T#0% 9LV?1` <,%nULW%w;KkxM -rĒZ}VcAK]x,.ƒ^-~ nTGH"{͍ SqQ|~yTںN TjpQu4itkd>(Fz=t?fnfEXi #t([Whʵ';.=¼&jmiK9~!M0W+f+-!d`}%4.䎓XsMPX%]X?poOkTu!fzK$\$8}K=C]no~NBQKhUll}SR͙9@fnz-,d" Jr4~IS5/dq,g6kPn; =V#! *na8(1ZB* ywضJ/#687DED䊪F)~h)@ErH\.*e>2ټh=3$:8MB5AQx( d`Bh, id&^^f 45jpWs!?NMIE4,(VK;6q`DO 2#C v䖔]_[c/k)~38e&?Dy׼M)wGxgDw6H/>\MIX(0070'% ׼sw'&7ĖX& h[ DjI)pSw&lV+S#WWcEȕ_W7@謹jzY"NX=R!u R|,UzU l]ԒDz q7/3y`R|:)GXD<1²W ^#H% #mςZ jIûk0  \rN@>5D` \lQ-?#0v S'~]*?^V )Pk4.y(xQ\u=6o4-w`e U?M>!fdj=TErMnBjo឵*i.5 D \ &}8ƪ&cC4=sFV;uxT1Oâ~˿)kxijia$Qy(z9}Β假0cx}@xAGj\2-:AϴwdU1 CVVYrM^mĮȿ ɾI2 8v-R.hjD1TayQ癿 ˋ4p_L>&!Ef!n =)R(~|BOJ`!w_=-;…%ex7OoxCObkLʼ=_\b􃢃 /ɡW|nI[B3! řB9##*,R 9/} OL bY BUN#FM TP0c45HOv?Cw1m=j @(ͪSO7P,wVݘL9舉vDk1؟Bai-ѤG-21{H|j&}St$q@D?P8>T8+ӏ[z0ȳ%гunÒN\xXE^|.!,KW(wcY/p@̎_@4`# J/FWA`1ш:(%|{Us#'qަlSָVWM\a߰Ma6a p/"Gc>\9#hT1,Q_S-ku5 D{e̕X4.8d, 4~؄;FoQ\o=AqRۜdqjhhj/n9tţ=@P%t A]#-OӨ͚V֓=x?"g튼MG]s?WoiU9C^ݟ~V3 пyEqtOY,.ώ#@a x&)s O &BR*.%T,ֆm.cjCâ8ctB~]VT`4EZ[Kl=JENaHކ]^SĀIkG4Gm`NStQJ46&ӠS"AݗB$?%Gx?"_:)ģHdFmjN";..*1xm VnYX|xpb&*1 W EDc5\sb[T`> %/s Cf61I]aNedyL}Yu_iJ+9qFWjS"nbw{F^M_u I;؅NEb:s)Rf-Y@"!%Njd7<:>qɊ̃L~x|ռ~& T՟+EbXl|]`,;+o` fewUzzzv*.gfKN<͞td$^9J<lh\nC̮9:a1 ]AwSP1IҔa{K[;jD7u:ED[Lʆ˗ xhUГEۍiՄM"w/٧'=j.OpbΏ$_,P3 ʲl8"Eަ'̐1𛼇sQM*ݩkۨ_?BxdsAR6$3m[fdz?L|*c-kƴ\Pv=)ѻbl;=wYD,oG*JQ?gvA10Jajp-6 Գv$C2y"hR,0eu\ r_?̋qLVdLrט`@vr]tIt(K:y=`Y|v*E? msϬVQSǬʙZ_mKS݋J bLB S3Kۋ5@Eΰ*mF$ ji|L]6;doEL9]x2WV F`"0i;<WɲS!|:-&\nx9~^| L'mL{LT}te1[|1LAj=n7zzIqD"N}nˁC5&rW%ՙ'[*-~p,˲pFq.@dFw4 ɇ—Pj!=^Zk`" V"tGk9E]Spu t>=*3B2kP2Z?i (|#X"_if衩"(FbҨ] :'C|fٰ<l@/iyD.xxux!Av0)@mcIj]T sS18*,u%yt3Ź/f*9~ܒ9Zk41x_S@FnDph[Ǹ'tX-os_f ɇG5d hQ2~kLJ .3RTʔel"-<5Hاw}H5XMu&|b!>eҙJ }퇰1U}}/NlxʗHՑc V_uTd,+A@Ft(!_c6'Q`0(v[ɱol/\H@Ś1LwU66n 1 r|K-d-T |wTs/Hd%TP~d<AoP6f3ꬊ7#\+۞EFD &Z8/*_iQ~/ۤHB$򎢱ľaY4glZ.In54b<> yV@& eN;Ja`RݛG"߭(LKu-myi5IO ?L)orvfy[p=Qz+nz+ߧX&VK 5"6ahݱˎ5r8Rֲ lzt~ukWrQ3U{{]aL8D-g(ڍb5,uN򩾦dv.œv™M3|zw?as'C]H+'=b<|IjNbvD[ѩ } _ӛd%m RpTvml;"=A IȂOه'ھVe*+EjFhdk黓1|>$A)m`T;Ӹ\jk F]p&P^sf(P+#-Z#Uq5'b3Ä^`jt &g&wugK{R'0 +W@oiG縍xGK({T!MwLo.ءG<<¡̀èJ7zd^0$4a l4p.*^=6 jy}Hyw6Bգ5?4;?)V$P$$k&į h=jlLگpD4 O6 !6 =}=NH )؅K\kx l g&EEa)?*L|5*~&r^cIA3 gQ܈o7fEW&iz`5\SKs2t $dZzb-!:wp~x~tUW#i[l3Q!x2]#zomENK ]| VٱgwB|8Sb)$KOxwOJ&!/#fc3C8 ˇـomp;4-6a&06eǾĦ!;jo_I%]LSZ}KGp!7x-inmFw.-]};ݢr"k[$m؍+V֫HH%(Knq1/{ mqi;It=XObſfw LL1QPlE[]:Bc n*]8s+ߔ'~,z@5â8 P2pΰ)uRM+h5u8/fV;f^ݶf=(9 .F|efoA#Je9\61Y x@^a7ϊb|U`J/#rBL69rL lKmb((:|GYjvvx2&shĎFlV&/0w,+C?5׽K";t4.j5݅iFɺR .!š?-ϧWGe^:G9ы^UԦq.*@[2 v7:jUX>}SMeR޼tAd*!!Srʤ.?tDrL57D|JJY`͂\6c#Nz螂^FyNg̖*KRш-$(1xG_"%^am@~" 2&ИȦ@)>2QwDs t3:Xi}gZ\țA;5Lq.-x.Oo2i9/1|y>A /+Zt1K29F'f>=\sDyd ѨB%Ý喭V2{ow\)\U=>8c',F:%-6N03H ɧJei-גXn[oFKGRٵf\3i{n}4I,P}=AaQk)b`f 7>t^kUΦIsdˤ>KE˄آBb(wY#]dbAq]ʺ0xbfYmW9),e!ľ#*}$C҆e!gc ÷ECch%^}DCF}-C0hADF =(VMV6 {Ԣ<{728"gfAR~EQLލiegD ޹ \j bzʴZU)\$@ FUȷLq'$ma#W[|Ϙ@pR%oyL>崉|W=Qܨo@uk|*\t;Y".A^*W)#X;ҽ4Vt)1+w^nsCLY>85A6 [!"%N!Iȶ_m@}u$?Zl-75u7Xs.,Oc,@7p4mL F{MԵjQ8 1mXlB0ZC dzJxG) , ̨j2(\78on5lg#3I q8uHP)R_G()(~qYj~GS%tlbga8ChxtCr(ũt4N!¸dh:H[BdK MX]FXoC{̓Ďoƒ?F) V5j߮۽j<x̪^D~ۚFO8d,Bd\r3vW7ۛ41..I2BYiOr,ntRYFPG .F8q/Py1]2U.rIڙΑ޵ĺl F|UYr 3ы^,oǟ~_G4q^m%p X,kA7BU%˵)ТO,cK>L "#;AiѴJu wc4(< VO>Eg?)+aJf 6)-S3FUƾ7UK-H9ՖBZ|y}9M, 4QfBBR1& =JD9c?e^q[O G1XpHJ 7uR"IFb9?0ߎ>Mgnݠ;U+OAhgGGܡ૞ I ] av8 ֌֕6쉍0"2kL z`(  @\>+"AwJ|̦Ne2U6 -~uښCHFn|nwS[Y3EeS1]_;4~d|\/v{+a$'/)6FtBL+֯51w_G⏾ t iwTb: Ff_XQLj'vw/¦ZJ ZfCOIkAdI'DeBtϨb~?e4IU♾lѕaeEdtoVx0g Pi nMmr0;ǧQkI78ܰv;?d˯75;m^:3X`hnN^>wWHe]&ܤ WɊڥOH_)JD|`C'!H\pTO !Jc" E6+7<ڽ\692?\}i[C_ZŞ_ۀŝ0l)\Sc#cI='q*<̓YWP7c* {/!nǀ& fE-o)\%<[Mw[ JJ8c&kwXfd~ǣmf1׷4Ґ|9R?y_qtEt`Lx ˆZbS3,Q+|i>tl5ErW[v,{V2ù\7v4-y_g5b굣8O70@o0 mD$y@x]e)V6iKoeL?ݬo+<\mndobY0&gJeqhY;CI05n'[WRw{;]Kߔ|fm6^>qxKKU*ٷ;rϩ + LM͒L ~&~7_ o#pU} 4Vkޣu7T}Ńp`A.d]=+P>:eS4ƕQ kʾ qOc+S9{0aǔ;l8B u3):H.z{\X@ nDaE)[`BE|t,ՑfuUز\T@E Ș;pԁϗK؍:%g;+Ce{I^c#ev3)V3"N8Ýe0)P j _Bs@Pyww)dWPn =|:_W,Q)X]Tݛ@-LX\m!:LftH%uʻ7] EܬR2yDocLh~ `4ӎuN@` 鷹ϑYp6ȴ~  tÎ[*byHuDRsٛH|ʛPz <@f-0zdXStx,i8+bRɇ񿖌d1ޘף;g IС8RQz۽A3Jq)eȥ+[@UޙT nIui]ǠP,P e~WMMg$)cj{9dw>D_:"B$> Q-ZK+1c'hRN8&.sK9Aؔ܋MP]QtCY%I_X|*)#,^] e`38~۱pMslU;%19iB*q6uN&iaKB[%gZ> @g*ݏ@0ÇўLq}Fh4G7y5RwK0} b,~KZGc@z{!~ekta>V,IwlZ2#t6My2iTώ=PM~VQlzW |]GY6Ih xNN,HRNEeR^k6f Pv`ۭSb2ihs*ҝwKf1)Fw-!]OFV hr"cy;l`+7!yPs0A?>CF\vdٜ|[҉}{:z2hc> 7PLB~?h Fc74jdج帟JNW診/[B &uJK5Ï>R8fZf#=ˉX$ yA3NAN !9Yv,a\B]jIŮIoT!΋&QE2pncų+^x`-^ï3a-|bso2h}QW+rkf ΁9׋NwwcZHiL~cj~2,km!ބz&.m3'YRj4yiz6u !'OꅬdQ?#( +onU0g59C PZ| DQL5[,KqcofAer H01rh.Wt݁lLs-3`8\JG@^A&Ģ+Cc)ëBU?:':=$8|b+PO4=ȝ/#h wd&mJ %2Ly(a%N0I `_ݿ2ud8֣JMn;2b}\f Nd6/4&R@D% o8M.Rcx;=i4r`i=Zc7ZJmL6UWmm?z_pw\ {Bq,[{,<|}"a!#Y%Mu_KST/TJR=D( v8T{c։*hNŏ"Q!}M[BC:}w$⇩ݺ@τҭ"!JƠR!vw^M RL̓2? [S( xTK`( -zdh7rmi4 i*_,#Ke 'L"<'TǴGt><ӞFuJ4i})3>a ?ݗVr32?g[ʮMSR/*NG"w7in Nh0)theO$T+\=\&2[FP^,qWKbiyx1\.ZIB@x.xoThQ m/dw gx~1烕3*<󂬰_֢ h.4:q :ЖlV9&TP7Pܷe^ܛiQE 9 k˩T،xh]+Pm@]KauAK=}S✟d}0,or Fwg!݀얠RO@eOg7~Vhq[؁;p&vA9f_ZmBEYAX1.+5Kd8(E j z6>mD ́s =mߦu#GV-a}mj h3^-x77΄KIb2wX5DO#gfVdXf r˰$ 5# Ձ7i4EH` ^#nX}_9 赀$9AOwYxf CP!̷xo$֪B!;x"HH"Nu3QO4l ͼ5i1 B>Akt8]\iby7;l*D{O>ː-Do+~ɝIV%Rot؂ SEn*ibIHw5i>˱o<>>t5 6d6\|o[5 #Q6^sKd vK9a gJaTK~ͩCƧW+Hk'SbNɳNvlͻ;L+N<;5[qpgX Yd&[S=~0{q"A{ke+ayw}Z?kg\<mc=Tf;V#R4oU,RMDhyT6*KcP2nohn]\ae1#s rl !ΔOlW(3vڠ0siF=e똯~ YwST`\ ̢~fr%KxPqh}4Zk3܈X@4;xD .>i*Dj'k)ۘP?gqq(B1r'wjY3H S"~gƊ\ NF;/xafȤNQ 9ⴊ:KZ;[ `v!0?ŋ.X_5,V0h9y,)p(2xBLSx{ܠ;L-mD~74r1<&1{+H v߭bQ ZHKbֆ?dKYK#2 [nv&2 C9L@_jY<ks⸬*FԲ6^nMa}#g*HFT ![.E438AYtF4YM ߲͞[? rXsC_yX18S  >ۄNM_g2KnjW띞^=Azb >B'N.<=3[:v7 E_ړUz৞U@>;ȭrX$NL|#+Pdش,՝;-\G^>5Br~|-чGo,?dq'2ۻ go*8 P2|nisF@Uѡ/`]o3_QٻV|qNʛl*s< =ɛwp~&BϣAXN0)*!,JĢ)V%upo܁|>%Bď'#p9̜0tC$3cxQy^ZZ%ﰏ91s#R IwLKsث|ƁZ$KsxHV0Ż̈&OoSjKjJ_'uo'Aǵ>MG=V w Ca-ë?dΠ6xf,ewl qj.Q&er_VKrƉhah`ifѷV+fp:Mȴ%~ZVbY-,T+#ͮ yN68Vw6gg ٔZN1b6"+L_Cx}rβ)Ql됮h(.R ot,'^A;HL{-cȒ2xOM;pht߲yTjSoK6;d#sBfolS,$g͙w bQ+ ma90t b#gHoLEVWHݲ)ZwMjV$+[̖̩\}/q֯׵zKQ[8Q+&aQB aj r+]؎#xG2V(m;#%d2]I `"g(иOZYڽd IJѯ[!pX6l*y&2oLyV"95'țzre54g;Por=k6=7i!Io.[JD;su6ʃL^z?uaƏ:C)^l*7O g'%/[J6 {-I'ヌ  pw7wrE]550V~De>>AC6Yy,ܟ^QFL,X?K] ߚ+QCcU-t8A WĚEl%;kHRهrvt!F:6G!Mrr~W\Myl=а˂s4,Zl+<Ђ%0q"E.#Z@@ȇZ`\'Ji±F6ږl;\P_5!#)G$C% 1?-@AHS BUEfyUҫAR'z}fN6_O%&ɮ" zIEhB5=d!14344l6 q1^_`}Gc2r@Md^'TM# S/g`1IT]"q17 s ?$&Pq-*%O JZ?4a5tk}9ʡO~jFo)$dq1i9 @nʧ1 !|#^Sv耝TFڷV3"~,&V,1u]KK=6|bS@ssI}/Aq{ {PT;&<(܃)h́3žu!`;DB ܆9a ]oKW`(. bYO"[(¶lMi0A HBt~6 m,Bd*q m0:CNmyRg`tm.4 r=lR Z'$:$ Mtl@7ON]CF'H+)VQ6@$ $ktJ5Aѝ#D2ЯP}(>aP~_M@Е1VcHTvΫK^V|nyD V$T0,;fW)2"1y鮽a[rdqjr(Rfؗ@Ars/us] =[DD%!)bqBEP:؟8ǩ&n4pu>Saw }L;ol1#x=]ɡun)5.V#x jkU^e|yTmN8Xuh^s@\3HƧrnO>.@TO=b<Ŭ2EQDz'##K>׈ ~Zg,ƒ5 hij+ b{I9>v+=́5!NNAM6ocsKw{M:\9 Ѓ"7,ލ#MW.NuNJh Q RJ/hrg_?Ka &GyUhMG!?/#͚,xҗmss7uZXRr}lX K'u4dC,um>do}T&6y%sap}> AHA@i!CgmO,`ūx"q>T׉ ~U8[Ď7TqW < hAD҆ -dVUīn?:޶B݊D<~YEyG4܆h?V ٮzW |\NFbQ%WTf44]_ipUxWmUGl~~Zhӓ龜iʦ c(8*UnhGs.e˛$ER]NڳC+Gٕ14lR'nV-L=qw*%۸Dz+"y11{7+:yGJ?ILW n-9Wgsd,W[wlDDeX dRm43Eʛ͡d%!"p/ɑiXpA28i5®d{K&5_@Z)QtEn3_1X(BxcܾUhO$gp"z hIL 6%h8LW!WdO(.suB |88=X]1KHoHf~Jx;;g+|"7uB I"ϓJЋOԊeIȭ݆Z&MW\MVj;@,@ V]mܤ;8۪dU3QyoG7V$%;$ȃ!V׌aKBwn2Ī YhoZqʹӈ5Q#; =yʚft 9`@z/]c;4^EOWA9 w.k;*U)6))pxAb%,ݗ^YꘈexS-1XI!Xvna!9Í\xG,+uݕmaWBJ)bJg?Ћ\:3ct%6o!M{r(cOx@; JVFԢ%`*|Ș2wE2(_-ogPl'f>3ൻ~|feIzdO}_$աK1.^NQ 썳M~߼#5{8^2(%ֺQ]p&/o7|27WMyUWo8 ,8*>h<(|sOl UǟIPO)0loU9/y w gkOQVY.j95!Py_dsE.#{[\q?:|{bb_iQʭxM'A..`~a r}C,?lUT?$62&_\H +Q |c!i dH0w}RdD^]VX]U 8 d;Ao3dj<B-n0fBFezg6򚯧~K2h`KtL^ѦeOq ^7vas3.;5GdYw\2DmK9ڹq2~0 Ud@Gb)N. P/*ʺ5[ΧsqSa|zq3'8~!ݘoF ԃ\J/&AzW2Dv ~Z3+{^>4j*Z=RS|m5@.1Y|mPmn, ~Lm򍈝 Z؁ {P~P`V``QfE鲇4UouY$k} + у]yFݫJM|7"E[]FrK"18S3*ɲaүA)ROGfgL07w]VB8]کUa3qMZ\z巔{]0l!X{IiF *qR3Jkӯ Ló] qfH} 4|;IWvFd%`}*Hªi#E"[L3.ty<|q qB땔=l6ꏀBp2^^sUT=mȀn >IՆLot{n'S&VYNtqR:\d!j~O*5X.@BY,44«>hud;袅TWo+"ZرKm@vztU҄R"'m?ǭ vyz^(iQ PTv5BEJyF_LD(U%ӖQuyߡٳۛ6O|DG-0cZ0oF4 "pM92tb}!FKLbfcuJ)y͒{hgxzP^[y*dZ3h#o1FW6,*?o"2%$[i6<zBaݿo")8'8AMW}ͦwG YƩ oE oMœ'J:3hG4khT&L^t&wS_F tVS㱦!V+%X<@S# hⴁxE,ibEoCyZEnt~*cU~u.k Z,ٿj3D>u+'̫mEߥB-–ٷ c.j/A훉uӆD,*9͑mAۙdOꗧb8L<ŚR`Jȼ*m 0FMaq(kc+EjXtVv#f{?ORBq,ۘ Hٴl;~x i9mh .1oph]ghFbr4;$]MddN0tw QXgz8 Vo_@t( i^ &%i#i@FA`o֝ɹ$ %m;R0Ď:xPKY"C45c;JpC5(r}Eln9ֻ;5@u dт`Z,ZOm!qiy:P&#JQ8ۆ 5M Hz+@Jͱ;k٧ӱKL:7%GZ20[6M xQװh^2b/H, B.-`l wW9&k)ʻȹvfKvԺY FC.<d_INA|? {2HlMgoN}0 dv;GIhxZRqX~qMg&4k,-h*߻gPM\j4 |]BHխ`t_3M=.O²g.R3o5Y8Lhk2CaiҟO2$CGh!s-Ƣar~&4 .S]jQ`N`)͊3vAlf޵b\7[2;JmOf'j]OA&NVNn.f$[C:zoL٘RY<%G;Z6Z3pWb>E^}gYA۶!3n!6:|bt{3(WrӽBfޓlA=.abdl,$A!cقQgZV Q R]~C픢"}>(F&!Dʮ+ܽqi9Bp RFZKC6">@WQ P% l2iOH̼H̲ y1yXHNsA2В v.RqrOArVt\"qc,E*] ~?aTH\b4ݷ``q쟉z e"CHRW30UgI]}P軻IhZd?=QBi@|1JuH;fw6_έ}"\TJoKߍ6\c 4nB>ֻ:\pTX'<{`-Np[ԷL42$"p;ͤ3S(# rGi}*^\amh Ig*"$TQ5U}%KZIr轟$^/4;/qC>ϚC!T&U65G|vM UJID F'"G;q,BڗLUaר`6չj!CI p Z(۬_8:rIq N]G)jƗH%Ĩ&=61QwfB63Hl~ÊA(j;e:8@C_*ƈ|]DI}+|uDwD@%i:~c+d˟޹˜zy* GwTHLb{P9y1EȠZϨi$qø!NRBE4|D~&X!;|hgk>E 'hv]ZMY"g%gϟUnle%N7S LB)LO6zotM\UP)f d|Gٌݗj$O`Wu"iv=ǝI9HYlea^A43[k톥+ڲ!™joJF]-_) N%MJt`1.H6$J1\%R'%h׿h.x滏-j)zKD䂍28#WElr:vKd ^?*iZJڢMmkѓjѵ@ ]l}dv8MeꉩtÜSb襏fzZ*o-Y#kKN O3K{6k%x4u==T:E}ɋ$zuf ^O'P][a2ëpgA?tےN2^r~(ɟ uجд"TKFN \ {쁡 7BD(`A>NL 'O߲m/^^IvvoPjNdC5zMDƗoE=l6Pu '# w2P!ocpI!w HpUD+n%;g,1uʓ/d$tl}?u޶ G|7[8EբB9&]es Uwo[I8thWV0`ھEH.;d Z+s,:d 'JWfaQY0ZRZm\yª `.[!!K"p(_y.|FR"i+*U\"B$sqT8uB8+HԴx!9BkC"pqS$0Gy_KH *~#NW9Zc8” z:AdݹHWa&G(ד}̃6xbT?2'̲K>7&oԍ6dVWCȕ ن1@)I1e>rQ#(oo^-Q㕞qmN?ZSw*1o+/%xj8߅new ʗgV5z3R_淐?$kv쟏\13PMHIO +#q֤ 3`R?$)W>r~l¶)OڮGw👷tyo;i?qت>緑Tz'׏(iz owc +۝\®Q|)5/,[&=Zl2ğ?blLbmij#\B M VWǞRfuޝ#P!dE/}|LZǓ;[CW86ww!Lai55OgS f3q7^^]fo1#x#`-P &[L?|M6i\%ڦV叹. sй3hGeˀuҸSZX͜%^ooz}هm)3+uPew+{FbCC >t 73QxZ hԍq3CX¾wt$鐭`rJ#*(zF9̱3G~=|ڂ P[ʺ9r&|Ĕ&]Ӹvi>9=LH0ӝvvhzӟ>_l}'↔/3,_!u>[,n%]2}>&93M&2i|k&w`x zPhev6Ь-yB*5Քgnk?c2W(nʎ/ @ORE[Pc,oOeQ=P3i CcawbA̜m&flg~ιlB|Wxs5LY[8xP)pK W)8@c0c SX6= f,V׮bag^Bб7tUpa$_$􄒘3gUP歑pߩ9Ną,h)Qw1t4h΀=3rjH)-:#{ͥmDZ0b<^-v(3 *۵9Y`#KG,61X1jͩů.I$lVPR* MDVʑ0&R~(v9O{p7xKB΁I0qO% [y!j՗t#UkcW״ƓxB;X.Wޣ7W~|RW@^g8m yLxoMZTu3Y1ήLSRTҠbb~%pF^ctpe!YjCRv,W) %{8M5aBebyvIf1ՖS3z㞚,KYw:?qDYK\. =拝aľKTWޑyʨ#qI:ڶS.jc.stxs#j6:HiʙRrK1mvx(N?L64ø"US=xR )G|pQѓhVz06-F=C8FEoa22l/D8emDG םg@m+]ٱjx&O n9/J#RQ Ah]eG*PE:D'Dڻ.؂D`o&n7#bR(7DM+}*?X/jGC5WGx.̩JlLϞfCº,* 6 #"4yaU+B``6Õ0js|@~F9D7=H)߇s .au@)MWI1L,݁k@QO W :һ;,g(dB m{)}|y3y߮,=0vruPB :+!~_hv^tyj#Dkv*>~Yk{dZ/īHB;{eDž{tXeKu0tj]jǧe'1 j@f:;4>J2O Dв̖U*A)fsYr'űYLx>~J1{,y |b!TvwK9]$XnDͲ107@~i&ݮ+Ӕ62rHW<4|K3%ۥNRԷGڭ܃G)jl\?q)V9Z aW()* -{Hm&U9\a$\l:Re<fB+biV~{'>{"63,~q4ۍnO"A-a41rx4lhU3)ϛ&%k5EqN珽Vi|癴ttRzȤsq 7mJ{Q}*|{g O˶P0}jt")yTYxK=*Y w~گh7$ u/&dB8M57$(2 Ԙ&1mK/g 3'z7uoYXq\!uD#_QymF(DMWWXa]!3mE<<R%&& Xmg{ ۺFgb[7 9Mn 2Rݡz9J(nmT9qW6QpG@j7 kک6]b@uR|1ccC:8Kg8#FDVY0{oE_PU Zo qa{Wep:lx7bk2r[anM{~xp\~ ViS5d̃KtXQ~$G$e^k)pí|t4+ͪTqȐ3?i[́˿|<BD45̗ҏ!z[a-!~#[_tZ6Rq{U%`챾f"MC_#<7tw体U @!*8.,b T@=jzeÐz۸JgZ ͥQ"n{$|et P)QV))ʔ h۴iR}nǚpi>~z&7=jCDR;_6z2Ko<XBg*1bsE`HpJS0;D žǖ)odžR,?WEM\!k3~S}+BU8NR`PKiX0 @騾?ݝì+Hbi'377g `q%bl0 '1NfīcxSAl<קa} |N*/,ɨxGݯcn"Ӧ[Bہ!v RMgpQ Q`iNk%ʼ!XrFaYa ࿕ڪ=V0poc@a 7Mfc K PS{)[)mz>{󯼻"!RSpxL`RYOEx`!*#yc}jaOhy Z|jSR( Il@{:l$BB;Tɼè_ 30b# );"KnA0 |h#f-06\H *IyL6q߀ c>ٔG&gQ5p.xw_L8Pӎ0n`oY`߷{1R]uuclmYg|0<΢X˔kw,2lDp%2Ia`ĢO; (ʺ]\rPJy\h bBN]xc351MBJR'=.c y!;v*X%n/u޽3M.Gナ.ZPtEcl,PƳDLl9/ &/Ud.-+p̿ ]̮ZCDttT#TssK..PܡIY_rgtD`Vƅ9S?N@JgXн[ ݬeA}/~c&FR@̓62lls` ^g8Gj q@Z@ KCxT#a$NƧ]n\8M4":[jǷLlow=׽\6 A&@)5/ǰ `;Í9*z8>H1 $&:btt(xIp_a_y .:|R]b;f+4BM i2Sי'~֏b#ΑO |6嬬U[ѡ$ 0> PmgƊ6oA&0%mT:{W<R+`~Drnfsxno$ȻFr%a"hll $k:[~wτ)ůrK<3Xkf$&t)3Y -s.qUPe{Kz9)Fs}tR5Zw0D >j~|vU&<#{L9\ "MFy_Oλ!ڰ `y-on+M=Ev2{";vɱUFaqyٗ+G/xw};YZs-PHl쉍l罎&衊 ܀q3 `/~YFtT][WJ(`Ͷ w %ʻ1˱/ŷ8G.`*rvovn ``"7`qVoaVd'H /!@ 6_d*=NBE :YQ[s?%Sv ']UTo:<<YJ>jn0 T}׿)1srQ.<A 'dc) B 40zqj+Ed(4^]| 8'=q_F<+3CXdLmY)잦4Fyd47W.z?̕d(i2eh?M{ 3OPtnpCjc5Ž/l×P'ͧn%ؒudt$-)W [9*^G?ԑ"ƚ)F:LGD*iY!x9CYt~_语ܲC7،詠M>|KKR.ItI\u/,3y4lJ1t C =v_ޝVZ }! M-9)AsE:8[+x~ߺrPft`y , 1.lGlK+\ьCmqj(PIojb.M|i,jv؋*8LdgrHb G/nmtH3k|R,/d,zb<%} |mmW1 ߖI|Xz(hg5Fދ)Sx&AXMFQJ?{h`t dJ_UmXm,)g uma5] k _(Úy' 5M9|晌U߷FQ F7>X|&v{_W֍V5)仐 Չ۞DGKWRwE`t5ҖKDeA2 1NgBπ1 J(* 3N`/HS{W\*jS<ok%+vS9{(E J:-;(.#6~@6Q#{F*m9@CwG,M3.,/v"^9L^"'@Tz #GWO8!VqWNW'>#Ys"u>i1YiEq8[Ć 0Ay6q+W ;! H=Pr=2[|++{c"Aک(.pI\{Ga\Gr6˛ YY=լbw|LZy"<|mzRQv,xBψʍb.NPؐr:jU$mIi4?H1 {r vOoLC0%o=ϟaywKȯ6]ni &ik:x6m dԒm% ԵT/|n\ɝBwǶ WP._*xrcmg(i蛷Z3D,^Ş.Z񇳪dB %pym._45TTZ"ӦVAl-=PAއ|`P)LCZIucN..hF) ;7.=v\\J'TMu|<^őN0T'Uvo6\PnX}KO "4VTC^gbiƕ⠛-9p&:4-Xtu?-uѬ ?ʁr:t6F~+B{~+;ӱxEzy4ugk6n 9!`uUY>#%NDtPnIa^ciVöiX%WghnzARbCJAN'Bڥ "cĶ"x4$0pE4 HZ>~A .Tԋ T>T!XM4$w #$msbtx+msC֞CO'VC;nİBlm>ՁGcRx{x҈pmP?La. 4;QL\v 6VG]&"(,C:pu'l㎤#{y F`7 -*PES2 Laa[5B+'~~y }櫟VP-aJdEH黡nh {FC+ߠMO C+_OsRTi&и"+prX-/MB\]= :}Qx*6< ?;mTŦoW%².)N]6wwJ1pU/ ?O-rP NWk{zVVR2t3=C;🨷#vmoz1oz˯CRhȀ;L`@!jB Dfz*$P ܪ=ųX޺fV.kmj:"]J޴b|g1sq E(xg݁|b!5o$̀1}[Ψ_n$_/o6^5}I*> ^nO fCt#&t@pZNU,hEj-NA$EcJZ1ZE/ w9 EX6wx wF KVmA6)p/CsF"@:+gm3% ۔HakPp7RƣPΐr-jG`YtG|&"RBrPo H?~G/ ]n̎R+B0˱g 8u7הM< U[pYΎ̓u`R3Th_ + R{_Հ*780=[n!lh5, "/n&xSr>&?w!YwoqF>ѯyY @0R9j.fGN0y}Pۤ0W`kجbo Ǧ¦X+w^r:jm;\t+_ %\o+ Wb.,.W/!e6|f<2ߵn].5e|7hnSF,q<i Q`U(F[v6MQRXUؠ/땝) =nrܔ#̹FV$CW*m[K ÷>c 녜 ʏ1Jv 7*W#sraIj6sNFwfEaa8rB{$K}ųjO >IkM4"%ʭ- 6xKG3x.Y`Zz.lkWN ]~2mX.⨮ a5j(FIWR+0D{=ebS1̵U,ܺ#(q:L]y_TS݆Re[݀Ca=3Q˰4 69\j:g-X:}z]4>%+{wNi`;ksܢʲ]xpOIfm# &D:,r䨻Uq՝>G ZJ{CVJi5sr A0NI,T-^X߉>(H6*Š1ŕ14~DmђeS~9z9gb#[,:`[`we%+[O1xR]ѩvK 9Zp Tt"idloQ:|Q9̤-eI"ϛ@ohIc5t$?{c-LV p[20 (T)0pytQ\Zb7H`/hlׁ#P;Zd)*jܿ䀂g'k=͡Qɪ%Zm؜T>:'7 ~|ـ״\ cq."Xٸ@v&?'A<8Q^1jFZXs5Fmh3 w?% KZoF Q!Ul"}/#\WrQ(2iNa93ϲN@` Z omH鱇_uW?Ov's-\k&m."=Ƒ+֤Gr.% V@ٖȝ9J!&^K[o~sq yCsP^6_m&K4\wiwBcHsÓ,@V/Z>hHU!4櫅nr&-:9JMUbV _T֎T^: )-ߍMUQ\l]q׍b*,5cW8D97Byk >OYlDz|r.%bgA[Z1z}3M(aڒ+s!s[Li]ɬXdkN$ogĪɅWPŕ&Y!%Տmq=XOG{ەyA9|_׺+RlLS'* tz1}pvp=-]cw]L䶥Ԟ6E5|^&.%/CUzB4`I6U2_3lzwLŎr)Mah é$@}iHpӡہ ڤJ "`7a Dm1Y4rʎ ٸg4PU1hRrI\|^Av^ETx"_Gp;I!Q'_Lx*?U%,H6`\g=::^{g^*Q:}@ɆJJ|6+if~= `ѲK[L_(iS5ސwiopܷа-ފ% g W?%7e^Q\`eWS*'XiCPPn%%uFm-jIlV ?%F'm xTm8W_ar@*cqߚW>%-ڢ }W}u$Ƴ0%#fYSrIAyV0B*mfiU7e̙ȹX|od V5IzmEs:ݩ𬟾+ttHp**Y893Ad 7Oڪf$ؐqdg3\Hپ7}dHKšx~HNrUQ3Щb&KOJRɅddH4aU<쑪שe3Ri>SK}ȨМa|[]\T\EU歉j# C78 L[:֎^d[P$ NmK e2xk4Z)wI3|y~sFD<0nePܫit\6׶f:8ruU' JWc=$I svTqVIk"&^&;,eq5"=۲tKؤN#W5u)Bq(EA0CybXGܟ6˳j=K; Q\pE{sRUZ?0{eC9n$QVps6<yܶy&Bb)мr3 D :Hf* Y;\f"ΌZeXݒ_P" u Xre_*RBė޼D u bß1:MYHMsw֩J<F sǮw _>)̠ ,#>G6ubjՍPB5 q%&ɜl@^ \QX<مJ?AjRW}s[nʆr֋ {4++S }|g 1Lv2p-oZ#hPB"?5 VKds %;FD6~<_ _4[̊A޵*!COHroef1V_~}a3_qEFoBމ#c8µSn~0mq-J{_~B)6٬ϭwt IRneT{Dl(٥GdCX?lc|[2PkJ|EPtra/QD @e1U)jJ0](Ze.BP٥;IPPc4-t6QB@ ꀪjs5 h~ Y(r±IE̥GrYV˓s?У$0"ٟKWe~+-j'|ĉY䰗6 Es})0UG㽋TEuT݆ar2sҋ}j$ȴ M፛Y!m[:ju# \Ji[bl6 Hb>o'yOK ֏jL5E1{83M^KYu\T}Nir}ѣc j Adrxޕ ~&Z6 ,;W+w!(>`,x>MLb fW <~Jm3N$3,b.:~iw ݫ۶ r{Qch 2GZK|!{E`ПV#BB%`:*˵+2}\ݪ aMGw(Ȕr‰lkࡃcdw-9r%K zfF5bҪg'q(t\RgX?܎]3)Ma,`r':B?ƴ"k*iMXyl5BA*a,jfGp6H1aV߳\ZR;Z'?4.~m&)Z7/GZWl]©pcQc}&hwDYrr0O!rxepNH` Z&M0U曡)qKXX@4ͺZLz2C' qdU#`3# )܁y`dz5A̎ޘ",}PO'. r[swڧ13_61 L[v|RNj_>=FD)q###Qt ~j=".G:T&w ҰӸ]|JF>;5UW?Fm:< nFa+MЍ{pM&q;ʡgYC,(b;ZΝ&D6mǘu%:LÞx$+_XiK7yn͡<MGIGD QͷyV qO_N9\S汭(nwp(9`TAEvC‹L=6 /4*1yyA,ATm&RUgNM9%H`$jδBM\r9M=boJ.*ywٟ Ɏ߲1>m(0[GƖtIxR b}FVsY8GP(<-rEf*oV+k"d&RU9KFcޙ+q ;R/Bcjҏ{ ZcN$f4*SX NQj7;e*`סCji! ܃pE9CYQbQ%+9Y=^;;p0"H$fu!5x[R:[ ľA늨 34.qT( ѹoE[)4yH O5Y = !o!^fDvQth_@§N0Gzq:Ye3p %l@v=PN$@xZRQ,܊0Y*e~y.!޾ӎ,GI(,ԁ>ͱ_21h-6!x ӇΆGa ek[fU%$"*q#%2dPPAMJ|)q #YY ?MG!t"bl< 7gVX@O[Vf:~T+ԅ9ʼnnY"j{zi|ez<\E^}j!LcT1Im"1N|a>F:$)mnXثKt*3M@nyOu&rmKkن&e jEU3]* ?ߴR[.0-`g}XZV xBHwoɻtƬE%mQY6˹:cg>脃)t̉Q))nǸ11w:f< Mxb|7WoִCgN/eH} g9`&8{ݽ%?ltȍeJ}PU^edߓ3~ۇ<@MT;;C4&t*A>CFt U,5 ZGOЧ+SW4cν;4u "k/#} I"Vl9EE4+sPtAN$bAy~2ů=_yh5H{sex_6f-Btg.R>Ԡ]cd*VUX>;^)srA0,~%ON΅JF"Yx0Nm-O(4 +9t7gd >ѝccc55)na@]wYx|Ti".T= d`j;}GC;:$Y[Ylsŗ]j{aw.XW+t,Z逨vI] zpн¨HMlՇ1PD ]!1,mt# BE'>aQcm3/[#慚@8z*6J֎@/"I2v=Ȱ\հ[Lv-4IDދ 6ŋhZӒ_8RsBzi~DcCFXĭy7jF[wz7G7TFG?ٯئA۽= "S5g l'17#aOV7}̯Kf.T1v4^ܭxA.8 Ͽ~qSp3e<@)7܋$:7EjBFc0ކ,r }W׵348tM7(ӄunOe.R)kcҡ%VB5 x=,!BJD-C:LTeiGO?uD"P#A5D5) f#>}^ja,ާ22N9x-)j~G :[,TAӬ5;f jy:eH I Vp B%ոJ@?Ezc铌t?/Ihp>MUx.j;7m׫fm! ~e>1|/U{ n=i f/}kc8hʓ[k IR-YU^T,N0bY2j Mh)cҸb$T:0֙a4V5"uT/'wR @5+ FsmWg9\:yjƄ _抸!'QήSeAMo8ΎUuDYR$ tg,{w3K:~s,*VFiHs3),!k?&E3p:=|7qMihXmC,ow>UUn)vX`2 MA/cmETЫD($ysaˑ\|[So6ɻv@_u'O4>zB-w91m!]+TQ[ bҡ->5ZhO[zZI@O|Ւ01[ }oD섰 f0qh +)m{?2bxJAH:)A %ql|6. ~Kp- s5dc7P>4!V 0"ֳyS݄Q۬u~O)N e-N%n[cK*EHxlg|}º}_>vo 4i5O i^t6PВvDsS\yjz;膶aE@ (G\!Jf`9p X=}X\' Bn6_ȩLUHFɞ9%oУ̰]E.ۑO 8eTm?:KM>3%/ םNb0̌B>9F;j1 1Řrnq#Ơ 2s$؝ޫC_$Uofo+M9 9FTD mr9 A ,aڒaW >EL;IC5->Ek&`{"O-x`:&[]DbK/$V.f$bȁ_/OT0}i\M!R‘L$1J74܀)gn&k3h#j8<)R+8` KeAqc X^ɮlPtqfL9BϥBT$7HGR Nċ˝pOj|\!.W NxlFBx qq/Цm p %fMx:8FVdӺ)x%i't 7#y-VzZ;v#tX%$]!S# 6JJ]ubC,Ѣj.6U\ɍF_9vp^ H𪥶SM5,KE: 0Zoł\ޒ9`?eX M24weemp efJFxiG=nX{9޶Έ O"q]g"a뛴4MkZK(uWbztC#Nx@<垰ihٹvkK7S$9)%2zqZ070bڵp왇6h=#|LYdlU >=c3Q*[>ϴ'O@qK:= D n Ѵ|)re!YSծU~{6Ҳ-BS{ӣ>YnQwl'Qn{uG+_Xrzb%_+X93l1qZ0 ♪_Ե 5p`+p=R~:qUz9&dyAκ0vz֐PMWrm|P;򴼊E<?GP]b!XВ}'p뚈y7!e +A&H: $YVHV5ț%`M]h#N֨ݏa<+QR9Z=oD>ҝIL+ds۾Sf cPp hЫ3ʱ'wjY=#zʯG-g܏T}ͣ 3uT)BEUat!]Ȇ@i\ZNAc_"ܼ_ tiAt>?_OծA!к )%'vPíp0ͳ{q@S,7b wY j'G&/`6{:$4ک<7$@`)HB U'[3~=q7 XOUzhE\B0AzxSlٛ=} NZc$W-ZBq{4>}0t\ѩBcɋM塁G[{)ߢ΃ɘMZQ܅UqVY?ɄDba4$yI<5$x*g>?`F+P0Qt̞?{++\̬AX!/$@4`[R(~ _RM@n;c^Ւ5>+ĐG*fDOC ${_̜= xVFix^ѩIDcc @xW=[gy4k<_n7lB$\46n\mi)4dAkJZLL$~NwOcXyu;=u!7unl +%Kod?Ig wd2g ;̼Ar PLF易ʱ?ѼڋKU4Pᇹb ~k;z-J0>N?o_Y訊 asT\$Y:&?$DvTVd CJopR,5Ύs~fhO3zoN(#C$/"Gh,Y yP6ڰ5ۇm %-T"XҼąd,ҷ[EPF}]T9FPo(,T okp[VFno"l/<ٿ%:1k)@MzDdP7[u4,yn .g|Rb}TyYtɦ㧫xğfbC%#е)7=ۛ^AT:B~"3UeQ4Vl2I)]/))! Tɝ1Ƃ2-ӑy2q+Ew3S E{9jTUrڊr'Eo-SSH^uѼp0Ԏ'4LkG2,3IƩ]Uw-wQkV+ا 1DC?.a';gzyy GG̓n6FA| G@:?NƝ!M 'D? k+Bil* ԠQ ₩-G^E!YNGA2}U`O ܈~/R z,'#DZHg+J"B&~ ll79v|e6K4W@@"n-J)J[.MGYouEba_C4]3ILm M쭪|(Zk͑[0 cJF<j!e7ﷷ3l6 ^gg{e~ʑ ;00thF/D{9l!]0e 7"ca겿$Ulbctˁ?~N {bҞ$`Kuyt3ԣ dG svԴq5_;˙6v6 3A:fq iy;ȌfcX&K7:RpHH Z$^ׁP2ṿu<ɚbp13y3٢Q:̈u]c\x aud][FDy=J"-L:~Tk(<UiHg\I:m|4}Bj@q&ny|Ҿ'}e+c"5OE2 +4Hr:F6d T!?\(PfN4[*K<{5wTtbNv4ETd?' W0D̎? B t<0㑟;oHQ|1h 笻Nlk/n76vR$8G6x8/L=[̋!!Nڡ=saI#(j~GANt9+516FhkJ33.׮㑴rRg,,(a@CS N܄z2;f6rV;Ѧ ̻kp-b}p]k3[ q/oO"؅̊Ԫ&} q#P)-Q{'=;~K|Zx(8m L[~`{&#k.hzJ%|8fHpQ(_!79ã7-.BL DC-d5_pgdNk!tiR+pmF^3XX]Ǣ H(W9qZ.ibY?eR;IqneDhuFwk ;q\tNFTBp=G ߞrsb4~/|` x'?>sOƫ{hLqCR%_Rrlz~A ًZ2=Ci%ajs;Šp zR7>.્: 6H6 8K@=_<[TUrx/bz\ [ı$:UO/^,V{F?wd wIy?<ĄVL.{fjjwJj;N4 !@iE |d7?EswXZ2*фbs'@nK<<#=DE^_E@-,ct 6t+9W^3q@imyo~ʰ%. $^Puk60[kCʖs~XAP"7- KH )LʦXk@8J"ĉuQ]#C*ƣ>޾n%/aj],([;A/ 6a_ndM~@z*4"\Kr|2jF:/xVؕDƖndfP4!y6u^VK#wyP_A<+K"NJA ?0不[M/A]1 GOÛgo_3ɏR .6 w(eqU^e%< bHjr ׁrEF2}yU¬Sƽpy(3**#n4( W@h,'1/jE>1B)pP߾IbZB͊v xt[dj,5|ӄY @|Jwt<,y)ʥyn$YZ4aև{1ݹvwc{vL&um҅J!(S73xMg.-U;%(S a`nŒSmUŢP ̈́=X ^SʪKbELAq[M|r~u83Mq_3U[w$G?˩s=H6#1?GU1 wÙ}vʚ,!и$ŃZ2ޞϏqվ (eJ;tԽcik*`+Oȃs;'kyeWҐ=Pg양^[Mvɺg䓯7@*][@>ز.amYfmYuoBedn78J^)IӆCKFd--4^;`Nf̠*EK67Xz%2D.D6,]J[ժk|RJvȡOW4bXDe+r&ѬaLja/y=i%;?o{nk9hb7mFK'oIŨ,(穬ig5rP25wi`u挤)gVաn \|h-Dđ& YlGXxoi'%EE0)^G~,uΟ+q"ša>_5C~ަ/%x "HSO#cO=3 BII:{.bxu\K6~$XH?)'p xW&jHj|4X9h1.LwXeס>QFuN"d0ǟ c'*AbZ-{4Օ ' |/rT17?D!0#ggOC9&HoDIUAJ6vUYJZ@sS3c6jPpͻ#a]+"Sxop[>ށ }d%}C9sY&‚R-y:%x/54>ˏ~B3a9*>PMs̉势O2źC]'LaXD!u[aXW RT3Z-' FF ~M T z/ѨVon>Zg9~T6>1~/^K\u\vm=cԯ[쓘duP880/HXz*%zSŝ@{u)\'-K@;^iV۞H-P.fV2Uw߆)-%'XJ2d?spA;S"N.#>d"qd^Q&?䓻:h#-VWU*xS;8N9}oPJ&*u&!ja8dK87,GP{j1oxo*{,")8qy}-s״~yRیZKHs 7WC)+f-r+x Y(Aӥg%z]Z3G =U!(\": @BBp܂}PsMyLO 5밌dQfrM`]^i$așjJ#ȕBCOg!ғ˴H [#yUdكȌЉy CRvr*[p S:Ӂ*I5g6) *to~#RQMْz0O^"^cA]PV/ɩi(2/Z_@~OMlŅq^}(,͞"vߒp*~Bo U5M(o-%;@qI4}A^J PVè>A`)ԢvNXv ʒ8{U( Pп/,<ߊtQn,Vy ;tԯZfN"mӘO2n vMjQvS1+w2ImS1 ]O&-o̊[ߦ(S}%1MݽƏŒ=a1,Ь ܭCOMC\T6ΰ$`A[84/¸ ' i⟅ d.D9ֆ[,ŘƤ|:T wh@hо*%BJu49ΆϓWa9OڙeOeu&(}2twE4,>򷯂=Q:Z[̀SNBWQ%~nO;:ֵZ LTVk@9p=_TȀ}}͹uk|G9x{Gp早^5paU z9l yPZ0,uTh?4$~>JKXL~mW4T3aZ#[-mЗGKg|u Y_+oig.lo?BG[fā2 \Vኊ8f\h$eU6&}"=č"I /S0˃s8%baM@`da SZ5P0:-!^@V׹Yʩ"nIl4RG$#?#%4:s|5K 4:pP%L?h䖪x|yvו8h5&*_mձfW_el3,*,9*Y.1Bi==2 PY#z qy zCB;zաt"rlP,,Q"x"Ӧ='xtQ9^44kgH/r;z푎[^ůYX_J2 #>eVL&Γ\qaVbCj.|˴Վ< D+)( 1Hϲ?-I#&=9#tyw{t䱮8}N. kFZjUtbz=Ev.{(+8b|at";N5&SN7[5yJαn.E}KEykRTP^7'e>Tz X OuJ6/ NV߲kR Ek2Y^SAPE4&07t%*2`v wN܀vQ yN%Gj[w[{&Am$ OW.V0c]#Yu6@X-85s W%=#st"l2&+)%kӞ5>ZvfWri_l!cXdo+dHgeGzWZ{:؂ "u9~ȇ ~wLFOru|v['8Q,w1tS,Q8^w޿L( +; 'Ӆ2d|rFuni#`ɾ2͍܌T<)[StQ<ݟ/LNqf¾n|{'W]{ WnLdգWOX1:F|.O4E>x!1>olfۮHTlf Qͽ"[Y̋POB b헊{|w].?sG! 5#_\xVI<@a݆'°ۈ±yx:fXZ ʜӫvt  4Ҥv06noV=ȚA7U#5]99>(j! $?aKf}Gk_. O f~o^rs$@"k'U4Clᅧkۨol4Vv9K{%JV${9)?Q90v1KaaPV@1D̳Q~Z|@ D~|B=bೇܪH, `V^X(wXIӽ1 ֮ߑ'$47 {jzC 5Ÿl։m,bEr22U+uץ9UF%ӛ;TY)j8s ʂ:!y~x4/f+gKפDGCe{)>K$iy(`tvk6= jGcKh<\?JXunxLX@n鑩!ָiwI PFm5b'5 XJrXĽ?f|sF#+۹E wfzmX#. ;+7ao@[U JI}4@eBjy=0mm1Ҥ;ήy#>էtbdNr9JQ@h B=NԂuJ ~Dx1!((b0C+Qn%_]4dc489h`y7~)$Ccf"n2h4K*ܔj =-y;˕\vRFz*d.D]Yk3ֻϮy{ tO[sA!T 4pDdpM ,pR-7Whfr _G my&U/\,Gp_o*#eW􊭼2b^}ߓi޶C] zc14uZ2E(@4}{@GM<5>4R&f cm"}4J2dleKV;֪jCK(o4()a5燁gM )J nbIjB;(UDbOրr;AZOiڱwTz|b#N<\K*f[O; 緼`|54uLMNqUY(=fˢQޠQv߄旮H6J(rQ0J9_:Bqo@1jj&Y\2Ӫ O5 (= }Ș*t7=6]AM6khT)ݍy EE>(uk9`^- VSъʂ^AG.C-'"y'zF](.m~PO ̜݉^x,RU?xs,8w! U,[ddW{Q161']$8:M!ˡ bL$P?&PdT65)|"Tf&wSܳAc=Z5XHqğqk~6I\ E7"Ѯk5Bx3ٜygc}#%'86dj0 2vt21d> V?Aⅈ+LyJc>Ə$/Odޚ<i IeRj%9+5xKa`ZL'@B#U-:< p2dK$UH,07Muw1ge\BSKXl!Hp Ѭ &~̷UeV$}{5MkE-͔ԭ9+A 1bkIET`A'ZB=Iq-`HJ(Ӌ?-6~(wk*~ 88  1DUv5?qwPbE\OJ`[/t B&lpAg[e>CUaߌ+(11$#o ĀL v`!pYuh= }zk=L-5H[&"N`6d4)$Jkbdԇڌ?&Ƭ8Y &z5" O!f,hө98=E/OT.Xm]7Ѵ̽-ϮZj1eNDM!}zG6iӹ7/dǤ+$}ϳdfQvKQ"#LxH8fTPe&(oXV B'$@ 8. .pAEBE+t\;MiuRT`{n5hU8hp]gU2y_F&=hBGQWK^ 'ܖVY1َ{I"qO-V:D~J' W6C=`|\,[G "X:G I:&}iQ5jٮ:q*u9E \:$:o1KƫM?>m<+AZz.8nn1 2R+ gWm;BI+.W=w0 VݠZFhRԲS 5Vueg)Xv"bV*I9h̋&@4UR|oLxbd?MV"=Q/Q2uDor%\$q3I'\mlhKD8ܲ8)cN[!w=t7g,#=LTC!ޤv"L%xag\[B@}Vt^ R޵.@;Q)k#z͞Ѕcn#?}.3vp%i%b:\"S#pC$IQk<@L\j &U?.։aIfglk aDh%sOwgaO>>'$0~q샃Lc7OF8 ;#^>Xo@1lBaة0f+Cz 6poCQlRtmټcJX4xw->`\q zZ4$S%so3npuLJNجMt$f# L:)_}:?{H-βY& vT iBf `Ȣ_v1JX|r&> 1kfm9oO-RGV>^"fٮT NCYGr:ot3]\x-|u_sK=MY[$3>>6tԎf8풋f4Jrx)1$87m lMr_-ݭ)7(tݪeNHk8|fWmVBuBb,(u!$<l6CW-pg!+3[i=کQ6,w֮BيF8I4W|,,R ,i0w zoήnhs 2{֌НzCπe/?ͪe}0?ʙj܉¡9Z A{PӨ"$"T \ Џ sctYAD Tk{:-#4grCX? <c6h2w8Q:,)eѺ/PXiCe&ŝHEG=@Ƀś M]z-@Q}CF7IU I-6b9ӷenB];٩7~cRٹY7_]|2ueaG0xJx_5 :ųChB첡cmUQ=4/T>Ys(iqW/2C[^b:o{ GGiBz10^Я17q"lKChsƟYN<4jitڕveQ)0}~ xZ/v/3klAeF M29be.TCHvTy* [(~ؚSo) |1&T.\V.bMOV'k_I4REu;gљЫ۔"v1E~Z\hP΁CN96_\S2eaX`F);0Z8\n2_u",^b58)p\6&4)'t&^Y{<@X wTBwSʖ+ա")rG\'iLe$b/ g{XJSQ"v/)5uKdWhO6̥*Jyicvp% 1l7t~Rh(?Xg~TAc4dJKʺ'3_ ?ﻞg&~JLއw G7쀴ǎb %grۃN~XH{!@Hl m:,Ec OB(X';,4e9}oYҍK%iAGɦR9rHIb~C#6OߐnH<*M Y^͛dyR&Ft^CRGxp.ī/ЗDzԭ$]KMsw}Y]e}4լ}|>!BLݱsC5n# ZK(@ oS[]5uѣ_u+]aj|Qu[#!GWB`E*|` F?Z:!o,*G3$0'ftf17Bci|W5o~ L[6p݈dxWu?$V|~t#?,1EF- D祖9IGilb1f %iRq*_qtsߎۘӴ*ӶMA``eis5>isaNDhUl^>=SЛU L=*rv3~Al'4 5rdv\m'[x fW*tUn"083O.lFǢ}Dl2'Cl  kAFDJ뵩ȅ_Vm ^C/YBg.I)vrea"QZoO\| *k!^I IBj`SI4&Hj;)S] Z)Ȩ ='%J-I ˨G2@m\{I\VM^s\ ]ה 0;߽3nitL֮ŀZ  FV/͂ HA9X ?T\5n^P̈fy+h`0O-$7tgm|AfT1JM#7*§w] @p94–a<&Y'&b"DyY@š:*ʷ EC;*İԜ׭IY:%p7>{ 3ּ,&Sg&TOycn7(3wsL W*ml|Rh< \O ("06 3}LvAoU5ZMoByq:c~i9<;ˤJad9@Cf3^>p$k-Q׶k w{aՆ U`s>ZwD܀]0ç&nNƤmHg`e69!w2Л 4z"NY7L(Vw@zaS("xّNZ'Li fw9*ӗX<9ኁ0gim~ޓbtR4= ?VlrYXLv//[KI:͆k]+ԳЙ<%!iˣW=EXo%-̗L G"6tǡj̩ހOC'4(CjaKk*aY-ȃ e_9wi[$9U^p3 (FL5Ͼ©g3qL{Fˆx-3ȊdR9wn-9, \ӭ]N[ Xf$JO1rR8wvb`Lx2aV:L)IЬb&7Zjxa ho%rj\,]) ν*B;Gx\FΣy>xע2"*՜Ɖ4y R2uo(/S7Jީky4u(W6@UUFTE'\_-`2UyK&<Ds7n8 k#afL"_sA#F.8 gjsiƼh:-"6ʩ$0|C1 s [+Ю:Ҥ7B2~P/wi)1h_HM6(Xbݩs\PN9۔ʋ]>-RD^6CKuFrJP VJ{Y% LpDk㐂VUJ䨠ZHǔ6-@rD_ %8p5hYma%vniz~alݹ$吋,PT滔 Q, A6jFɌqWL6 jg~]40F2]Fֲ=קDz*y;d# *q,z:wCRzw>]mlMgKT2lQʌ"p'kf/7^iSLw#}{pw-V\m*@w%`E.rjnaDA%7 ):9j"k~ HskF59-dMw @ 9fPZo0?J3taTEVoݙ=*zv* T#exǗw} ewPp_W0J:%TI[ 7 p?OJ)ъ}je::4N8P?K=J;S'גT#oC/ {&EEK=kL?`"דuAu9Iqpy#]ɢ"{PaxoHr,#[@KiSjkAk;ϔr^@R ?XrwJyڹ+S{00pW6tni"z'Z@9̌ߡո@9j1M+L%DU} L-?R3c#Y pDۉޝmYϜn6B|rF+_\"(yN%@Nfm")aaicVj_N@u bAKP *e23gdv\("qyNQq,-΀BdN~a.lfK9B=slC/RL<ҝcS%y @͒p _H9olb3 Ng>D\/4QcgpM^,ep5y,_we}ٺ8%p%wsaZ(> $Jl0^iHMY;f<伟Upz48}G سAf[>9Sq15 |^Our'CW~ TU҇!” 5~!J܍taŸo^VFb8S!y:G Kҍm.@eeR]ؽƋj; T7r#/ᤳ"9PwZ(>{]h^vxV1NS. 4o<0N)bUqka&:LuwntSdpދ4PY=&T<1J}tpa]RWT0Y{G1- a\y*%hc>e*IBd SGiVڞM-T8xe1(x\0`S.V.-*A2Zv&C+D#hբjcxbY\jV Re:12SmG/<BHlB;F9]R!{A!]Msڷi; /O1YOi/sUG j[!Q+ޔyq.f}Ujܘ:e)=F씪ӛ)|1M])M~}Wy܉Σ"-mvLYtw$P Qֶ{>-FaJ3pZ{lnl}&+ſWcPű&M %[|x*j߈Mq:j rsp+A zT=.|5"8+veqtl&lDD*#dLym\X*l]q#M"0Qk $mH['FUKpW+q՘s 2Qo?lbE=?ne>KR$U ,qCGlEc!/bL+zMech.1p$h#+ 45olcXy>t-D23njβfo1>nTKe| %XbBQd~J,†ݕ)fc<եٳ_za,0mk(1LuȝzыKaqO,T-ɣMe0Pf>1yG{jG_%Z8[m^~Ğvvj-~SyFlU:xhnûy78U Xye#^B_ 8*Q*:'ԊK-,\qF ".QA" p8zMg ب[`NL3&XV;le4DFACXra@?>K~ϓ 7V0R5-}PaxmT>L1mjVo((fq ހ/m',+:Rޓ*C)ζ) $e{(rB$fNx>Y030zxQq(կ'P}~n5ܧP{ -,n D/t㖠& pkɞ ;?,bh?N%(sU?SH V""p̢*X5!0$G^4c?r=y.,&3H>'@Z˚XěskxtJDMdwɩ ~;s4&yWBZnaͪWJ8bX$s2]N0crzyV@>AN.}R}/qm.u4=/#x,`zwlԃF؈hhb'nW$Wo$qG V]\|{Hh2Rs+uc}V\ۜtmOْۚޣ)(Jw,?bZ|0&/qp7яݞ85ALK՜+($̎!bVz~¤G>G{k.8lgS˼XJwm5Du3 DP+ys FљuIxB1 f;q0Wiޯw04WӹYxv+)iX2hKA2Q$䓴 ѷTӇZ ,wRRv Py_Q<@ }P\Ō"4Vk|+oJ|BH3 E BR K5ޢ1&wߟ%m;7CL7QrܗsOwR:& ^Ʃ9S,K (zȲn d (:jvCRK8U C!|A9LC-7y\lO|Zhۿ-f<5#*>T{ J>K" qfYӄfőAkpŃhzSJp^0αrӻ@Mv*ŶYZ'=@ `GOZ ?ЫDP-̲)Rfo$}nLVD䏵<:8KrTѵ.( AǀT6 V?]ѱRA^n˱w_q{K?GJ Ŋv:q)W[;, m&sۢmt$&pl36b*l@XuBUsxc=KUNVw$OfGd5*|MrifbΉZw^ q!F/.;qe3Yh(8}dI'{+^LAc9Tmk bZCsgbin/y]毚wu,1L{<0=ԄDv)X Vi yt,;P<^sv;/IC]k˜HmMSwS}izӣЮ#B JE]"]Է%]8J+ #If~hM&|^R45 9]TND*oٙ<$AsN=EKRR>!٥1*2_bR=cXvnF𸺚hcHb RrQx6p{?垒̶=,ot`kQoADLygMQVyV)ha9i0_.JmɮjpS j84%JBXqgP~U* XGRQ|ҭ.asJ9gעU6P`5>GD對H˴) iGGobwU_>l%wraЕ,/FqU`Iz@C]aϯȲW\V}#4H(؋1NL@m9Ñ\V!^O &Y9j)d&bϒB |IY4p$|ӴdAX5gGi+S` bɽt>u$]71s;QXm}V2=gGg!kt&:SeRQM6C 0 &{Ab[m9{㟓Q]a{Ykj"DNǍ_o{Wr$Bn/ TǣzʦA!߭y`5& zs$8N_ "Xbj0{ 2)m/gF?ٗ\B~,gigr+*ttw^DÃVXɞ5wz%V@ 6Z ?Ûi[saj!^v7 uֈo~,fX;ъ2qפ%j\<9ycI:յ5ҜݿtȊ\fNp|hd;Hp̅#eIvą<U ^gfoe/q Q01Sׇ-VH0k(G_F0X\6l5$nŔ0̀Д:%\g3;{L^Rf!Uўȣw+;=_xw~CcaJxGg $Z \BUh<{); ˢ9E< Ը䏻z1'8Mm$vkJe 1*PN|rD$Ǵ;Hrv~ QH9WY;R>׿%zV6V zNW -F6f~kʸ{ʩ 8L$)G O* nNMk T@e",bUyi@|ix#FwdKmpmWY3$"ַo `&إbW}k'YV_8vA ͳiuzLMnMW>mX}}{{V{.)yZ8nO\#d#߉,]osKtu oٯhJ gd57eK4+.lv2N=iHWU*Nc\agp,לO0w.sE1sο5N|(UɳT9mlהJkQ(zn22*yq7Ϗz`Y?jV1GgW(ϐ$2J%ķZ#W7Db@Q6<)[h&6?VKxF`u,hD[oy-'j;@ՃŇE܂Plv Q}~0?@Yڻ<3.s龎hA}H kRy8?[.JJDA>^ ^oHu1pnĄ`"@5*n \xY+l42*u.@C=E>h#^1LXD/uLcm]vBxlㆀ6l~ch-Sa{A8P̤NJ \UG3>^dzpt ɧ$=>%ݘJϱ'mAE[GdTK,5FUDptD4ʭ+!N@^ )UdZlo2jnxDNq Jwaҭ 2!U֠1[c Q%9dv!`oDg% 8\ʪS^Wm"2+/3+5!z= h`}D,̣䆵Rfh" dj' 2;c"OX /xP8BVOZ1 *aA{. a55\uHz%,3u-y5 5]hP&W싢=E6uy6 5}2|r7sM\1mt}oG~ΜUTz3-k/3Y%Sϊ5mk^ y>%6c.hZKou- :!Y >*2 o78`dS<͓ݥa lA~鹠,"pƫ,q -vUIG;:qVmDeRoؾ%J<vC*5 4R[rqN w~p:76V7syXW8fsc;rxh[(߂/ <.K!]H+Δ-C-:,Bu\n:%Dp aȜZFڇ"ݪ4;g~2ZZutbeYT4J%IPOhlKGAa)䢆>X2AR4I.4 VgyߤioK5_pf& }L16vDV EDݚd+5 KȾ],߁43Bi#eS{s{3^L讁8`WY)9ObiZ/vįc 9%J3Vj{~nw7ry>v?1_W9mHR| \mBJo~\+^SCEg wc-G끬,il]SvNA A/txb?E=g0^,MIXyk96lW%'zxY1!rGDtg+K9*i &M}!)AwH:.M#jP-t75#t=!Oj;n71\hAʩd0='Ji5{Y٪0W<;Za?ECKΤ9b=QuZ.t|c-'@p|ϭltit԰@ҲJqTӪcSAË&y\63ӒH eGFYւ^]zaFяG~5!/Qi` H'g&5< }~q%c 9?g:M 8nG.v8&T.~T 8K4ľFVf"(aDⳠa-]v|Iqa͂P ߮.|w[\M" ii~?݄33 "|bVɅR9 ԯ.Ot,a^H+|-czGto/X3 r}!J>Ɣ'8{>ۮ;cTh5)J#a՚޺J7RcN65 c $5B XT PDO,NX>1XR,$UP/6zBp#,MOy &ɼ#$%b!i|WZc1$qoVzƹKg2䆠u6֛LyCS}Ox8Itj"Ucᯀ&E-5^οS΢]O5#b`X5XͅT^n׸̧nw5dTYIQ7}glbljjt\](*bfpjӕZRL e7y q3-3kF4C}}9+j⨫to`Lذms-rtQ:)tU](gG4YVP^# oT{908"zTNu4ǣ:sXN:|})[g^czҭ@Axl0:'T>p* "&GKO[ǰWv^8^n$2iy 2ͥ,){QDuv7@--4 uXߎY֩*Ș*pWL1!5p5awCSSK*-5ȸG3Uiҕ&)>jN?qCT}A Ye%`_zHYxQlo@4<% \4vOaH`).c '$ŽvvVZUISKJ{poi8!%j~wDpk-?-\MZJp÷eb* vߦO/D7/3_ Or6r\M@Xgu 6wOUK wg%vN*Ff-͋="jwbsY.eU ,86`M"[y3z!Pe\A?*CQ@5WJs5[vl*G[cP lkM`qEHlT|d 5!ƪHmq5}haj?ΏՎpu\=2иH A0VZ c mfqt!e}o➈fkJCͽt>V#c&ɝ@j8K7P C lr迴/Jk^'S}4bGY{먴~rGX2tW& |\K'X Guo. X3(?Ֆx\O4QF"yA}pZ쮛t ~t9au cN8i0} |OÿKjt}lA0f։qo@78`q\ yS 7M%p>OA.Q:_kSPϠݞM(|䓆Detiƾ*ΧdIb+Uo ˨gYoK('* v'EG7<3MLy&caEXց3. j(tm;w<({:hc:f~{ bײn"wg]HKف7"h2Jų bAEZ\YȶQ$tsʒ)f }Ẕ򰖵@pƷOJfFA:~J"!!P#WA*8_CtZ ƛxft1ZwdB֓"@9jKL`PZ5[ Ld6A "8J{[eNߘ H?NJuq _(y21UD mHFxS外=g0(?- WƁUѦs+u~WKLɑ#ٟvZ>  1 ?L+DR@S\:I 1E0ƶ&~@K&c~W'?x1 {-0$B?оAIXyb7󤑌DR%$BKQ^;P"X9 PC_`=}Rυ/*q&Ž=>"F:ãQ+ ;Ųh35v<|r++X:Dr&BeL#ئw?JBtssԕ\q#r[oXq;ػДD)1c\ֺ>M(tIzDG-c-9 @T9e!B E5JfXdBip -$SÛZEDQ}i`7U L7´ET=Ѥ>d x NƉaQT8`BNӮ豕UrB] tP5ZSUN< UK3hc.B1/~k# ~XPz3%>>qh[93`MJ qg-tdbOA|c*yU49Anwv;$ D'Kݳ0;rjL)pR@b٢~mhL+=;W$Nͤ1YvCb9;z7`~JW o_7l+Db˧34],Tt7` d{{|@[qV^hry;KƭXaS$e_0Slvfحjn=#B~\tNo !f_ײ$^fnMe7F{Q4kw(#ʫ.@n0E uX{9t?Qλe㒋=,tɝp%h 2Nrj5P哲-L+T)҄YTR)d^tbx0Z bįV~- z0T`{xRpz?AGo|4>Ffq(9@C՘K2oEzReAi~ӎ\T52Tr15(ߨ325#UR‰ݩdkdP?*5P4~H=_T 9rV#KFމ+"]|#;$ijh&qVCy"R.1rX I3u`ɕ_ӧA/}hep'2ߡr{O(S&ߧpxT٦T /]7es:<p7;y(z{@^;T^Wx.:wo, *(X q hphԙʱoUS$ Z题\^vB䇫c;?ߎ.rgۺB_aoAKybYrt6, "}iTBz}nȳSAj.6+7(Һb%"eס'ˬ}CִF;qWh9C]fy(n*mQm p*s#B5tUSK$:6rj7[1>xYDԼ&Q5V'䳺A>d2` /#f#a3+Y$Hǩm~i#EBfs~ M7ToiR9 .L kk'aR(36>=z+OYvGFwSuO^Υؾl-I\ ] Qk%9uj07H'M0t􍸟E>,dkg\CExsLPٷ}.iclnYhes:D~0X=l*t5U)`0,Yvq> fbd|-cU|şeIF;9 b1 è^"_0aW_\QA*?yW1m@#7OٕVhR/d} J}k2S/Cn ;zp\=.Φ+(|8ե^MP6 'G8Y1"dߘI5p4w8~"`CzP^|[,v^w>ŨlqlCt{smҶC{<` Xi%'zyt(_3`0ܳ =4}f25N Tc"}>[酏l4 XzLk zV /LRE[RQaՀg;LM{u' b HƲḾ}M-*R hDzd?q *S6c3'Z.0u{bPYn*a7&)N'Q9YGkfC{ \ F3#Ӝ%0S%:<)cY[z vKI%$#F/+ei*v)06n"M! }%mlEʕz /r m/ത#LzM4#joi}ܶcu2+c.VICNj+k1tE6h)-jE0LUjp˘H?K=1fD$`&v R[;;>Z1}]dZ I2 0JJnJsU]X*'!B `:dq&g(acڻȢrQMA61} /c<(0@xӨ //VOhA Mjż (YJ0MC”A{A$(qi es_W5q:I0#/Je+SŸRS)syo,p*¢* [/wEۃ:jxnf^@=5cqe6M Vg55T2*Ex7xF\6)>(J*xR6!t'+S'WR`SԸTe | mP{fr$_w-\ !7|>v$Qrв/ѩ-*(dHW7r皑;p]Wy=rVbC~(7,[ $xf #&%?Xku_<7).2Хzx[Iat"SS4Az0K.ZA)IcG*Ҿjw .fV@{ܴD!!Gu))IS<;mМLգRqiF7dP%,g\|3{dϊƦZu>ls? fǼ+NLU0ĆJWnF#4+ykNDDCGճM@@8ęS#y àmcܣ\-|jzG1 ܓ!#qì=f'{K<IT7RD7c #w٠(yW\ F<?vk)4s!HQe`=B| U}bHB R;~KHwut^ <:<hs!$!+硧sZ*җj @KAd2CC)lH7̟I+ܮ|>Δ9GUk@JsJB抗*#gŜ"5~ ϸrR|+q3EsmʸH}8{txi(Qm7`uJ$>]z<^|s KGq߁wb*H#eXUj~G7ˆ~ 1,j;(?c[+a_wIra MϞ[|+vYn@T>7|ʯ4N-XU  wCXyWF*L6O튔 _X^㑾C-a^E,nsȷDXr'.^+ (aCoHJ2՟^n)5zZBϨ"Ӌ}^ЛKf&mN'^X.;lz4-..t +J0lSaU0]C n#иL.K Ee9Tt xyO<[RhnZrIߐ?z  |<"H˨Mrr [(݌ \[ D+PP8N;2; A_I`^Nq_ǀW{_Z0YaM$/<`@~%m)N }%eAhb V_n9pZrEǬi(FJ=G:$pdoeg ibΤXeJ[qEBE55 꼊C\ dVi}aB`FcXnUI)!— -P%49 yZV IqLg kHbz"Kr2%e9h k$]+]k6P edW-Bs iԪe_-k'#GΕEߖ\q0o8x-XlV O7RmQ(_̎Uum. ^ .2hehG؍^ߎVԊ봎_&P qЀ*|5ar. q6E3H/*U=Ykӏ# q `˧plb|G ۃ|TY (2=ܡ=yJ; Sܥ+!P;rFȦ(fV{K[*$>qf3?773$]pT:Q5[1}=YݴU<濾~m݊d"w |fJǵ+ urUdu<U|F-/]PEkJU#=nK,=пI/ta-h:3-@g{0◽yTម+`@$kFETYjįr}ܖL_8p: =3䝧Ҽ#n*Cw11>C-@F㜌*o Wjj.3foL,1^&L$+ɏ4.G)ԂPysBtx\XgA'֭ `{EgƅE/lmlz8X١|fztk(W)]Zo ^8qa`Ho"#DY !m~_q 8񲞊rz̟eW&&Nj6eL+ÐS U&]hĊTk7gbFD_3kR)p-uVڀXXӖf${u.ddb@-8I(߆-v֑F'aPsW1WQK_ "z.}vtה0 O 1~e$K;GIC9߈3"˟qjSH2:eBMTmZ7`Ӝ+9l%? Pq.ߦ1g`ubn i=rfq"$_ $|m+e$m:GHBq(.sr[r-V+&op cG \ܦv_S6bܤFl,VsmH(,d4- tE3G|ɾU*TCgY↑|AX!1(,_obIEg62 t?0Y!+X +@\/w Q<42Ў}5zg&>)v2BQrV.?|a}6`jS8 ЇG͑L{è5ʲd3jm[|,\2RH'x#YPxV")Rrx*~%e}7S!6[iCQGS`}(v,GD:)ۄO&0Qxqg: #L:EO`"]2ho 5 yړr Dg'?z4+Sz=KfXHX1:/moEqMF/*,1) +XWd~%S$ M`};2SqÖZ/%z[Ў+ZO!Xٻs|Дӊ:@um'Ao]TwUN]Z_hʄY\ˎÍ5{)rdGH^hT* =RDdٲRj̙-LM .W+9Yĕ/!H_w m?9_TON)~\CwmqaS׹y{_'ʏA*V4IfGTwK.cG: ^9bƙ2In~ϤWm]FE3?l+: * hocJֆ}<+پoz(*3,̐ӷuYf>޹}gMX/:WCJ LwXCY5*Mw7 /e}UƐlTb= wnU~IOAWp! f#ޟU$ "8e7q(;5"&~yg*It~B$WYdK7pn4lV(,'SC֚5̥ p!5s]{֊dm?.FT *M΢;U{v(U7$vfX W!s}RpݹGb*#f^sh |e=I9 ,z' R;T?j51A_K-Pl?6 -hz=}0tmrT48Mѐ  5L%*^?N)dhpHxX6'sԠ^ŇwjfCq9H1kG3Jj|֑Zɟ2=#%c{#i0Xt " k 65SS <ɽ~`SΦK'~<>|=dujJ93w>ڼЙ ځH֫r7) *E>q#$N*X. TÀ0G=Vq`]8]QT56 t0 ErcwfΥK_Dk~ 7rc %&^ 0uv"<֑> ڳ=0ߗ@,xw6 d6 plHai-▩Y|I<Ʒ}}c+Fu'P$$*Qy("}[0촂X&|4S=aN+XFWaJE{\DRzHKl)fB >vxd*/iC}T}6+ePGۨ6Q's9h3P įPI,Z[SO¨'MHx;;zQ=$hN t8CJ|v瘵J}K.G2BJz+B r&ާmn(Ċʷqa*MTˍ -^y[7 0Aslhmm >_&S4Q?,{Gh (bE?v?-a^v{57 81)'5%.ɬoT1GKXdQ(ZpQ:=&\Ka5:y Pɇ%/.rv`fRغ=`ʛ[*;1zkJ2$b t?*/S_"FxZ8/ I_+ q͓Yw$n7 Fi\i~lKK_ ᲭATU-Z%gt 8qF5^7-9 (0yBY)"ndU4 "LΛJskAn_1yP~Zqe{䩨uC!Z$- g%g4VgMCҋ1@nAu@1RB)!nkZT3yVjI4x6CBZX5Vg#TUEQ& {LogTP~%jOy0vo"qB(y>IO65~S۰Ս%VC#dglVA"s0VvKdQ j&85 [&\rO9<ka]eGtzn H l(6RU&jrV[(p8n#4Û;uf9>;M#o1s)dY dD~V}n#.*ͰWԓ#v Y6/Uq&dT@:pIP~smf AS{RSFޕF0_JJy +i=ƴۓ\)"3ыl|PO}uwؖ$W%//Iq^{kN^xiSRҩ[KѤ}Rج{xYfNkq K+2f Dp_ʮ2}M-Oq'r+$p!C9hWU>/MntsI$$ |诞p)1؀ R9iR"vKkaL#Ts@,$hZHR kEWNnwbU ]v7?\ERcJ(M-<ErN[n5^>tTO"^~ U^)' F9]iE sGD%nn}X~fT? FŅ5u }Wj ]Mi(S@3`?bsp#R?>H.-/eQ75dq>!m0ݰ$ jb}dhgY D9fŞPG+ Œt $/9pwk 腒 iȏ="ʬW!!P[ **i\\7qu,Rqr f [wAT9=6V}.b0I.bhi;P[ [-N*ajX!o@E!< VHL*A`2 O*Q65a騺¯/l Vϫ *tĔgRFhjILgt3t ?H6\|w3n(k<@n*`k׿ʁ ypfh&- 7qMH 7J,0ZEyIYGNî dE)tpK`1%wpqfInl(9q> 1z >2b"k& D~ ps+$kk1)f_x}C* m+ܪXEYTRZHȄ *ؿYj@mS߬C\0J 0:ֶב:t-m\l{. 7\V0뺵tUlqJfb8$!hGf Z#ܹ-z9d  utqU#D>P=a= Fp#_>s[<'#K '@+'(1^f#U ޻G\ʐX O(&e_7˱E#4ևIñs3' 6d霠4HZN(()0ټ';RoNpuiAS$ Au4e" .mfߵw/b $s}}u =Qŧb|c XÄ>O:'B;l)T!v/њ mj0~&pNܻTsT 8}%@/haY F-[pfH3Z:Tōwo&B;*49{M6HGaI8/IFetzhA`@Je]=8kZC׾=Eq{YK gpC~}S>i9(NN,NB 2w@}~oR=Co/t=yCZ_cװtXB Fw_Ne)pS+M2Z`Sd{ePe9t''1&5 OE ;-N,tl<f']H|Oc3Bqh5lheV!(LX^pb ݓr>)C"+n:_F \`MK{3-PDPfP/'>LvXJxŬf{why&PX#Xqo`/KXdV:BCq./WTQ ecx]-8Ʊc3*߄OBϢq(}-I˥NP{@x ӾR]Փ=hN1Q9RaI< F+,Ox70zx~,`fyl>̋Qd"zm:+iulS-mN\qpDZ&9)4xeߜ 3#K1JPpt, K#"W$X>,8Ln0]0#Պly uV%_͝lQN=>G5`Έ J:c ʺ6x3Ne[n\Ks}Ȉt.坼Ja3ejajoqYt>kXx-4w̲|[ A7@5c?pw CVi-V UT4$<~b)Ꮔs;ZEC<aXg]E'HW6w!rċu.n޶gή5piMa ZDVqwBՃT0 o#F7>1u/LwqnX^~) _N^C9A'x7DD\@USmyv|4dwi#+rbG^Y㶴rgzq7OFg ;J/!lqϰd@P[kTD$Jtr_0A` IYo"_!jYgFFb>:tB*"!u'f5q w8K&z dN{w\XtTNMrhTg@%Y"ʃkm_IS>0ѧdZ[{< !1nh(z +Fl}rK{A.g@~QH0!nR Ϙ)<%M֬G r_a葢#Q6E), B $}8Hu%du2B<7w잡` ~%`FT^Yx2haͤo_ Vʨ1Leٕ.X]+ͲI43#˩GuH74YA!k8 nX"0K31C!eTT%hyswb_ja 1l`UqWߚ%SR%Ux߇f~3PAJq AFKQtSdUf-ywp6?n`e 8Y6[N83"e6?wfiPY! ?A;b2͒er?V<3i[Rgt+LVoڌ3=,k W#r.I-,oڀ Fx BSyM3] :H c`1ng䪽b $^iUn@y׈&E_RyPCg;z 6Pdc>qpm+&5'e {^UZ|{D=RZ/n17oP֭mh\ִ3g ~峅 hB>?By/zNB1qJ17o>6yThqs@eHKN>4 >U. *16Ռ8q52tiB<9`l)m'X11ĠRNq8bHx[Xc6$-'5}l5OI{ao򾋪Mguek-ؽx]lHf0TG] !yؗ]IRIٮ7#\^i"rq`\+zgc׷n]cx"|yE&t N)@*tz,cb*W d5RIAk=8WQO뷼1xc( *!\VXAO\eÑ3˧_ |`⤇C#uT' ? hN_{|A 9c]Vzc01CjVF}Y" fYy`N?0^&A"pD0p!$ODBS|o5t/BII3kZnKG QO= _#Tq8dwu"`玧;䬌e vb=]gRMC-W\z*fW7٦aXP=2 TRr,z3)>m.c! [!s-D (?b'< o[:Dd6=ɼ|< )Ah]Rҝm{eʀ[Z, edEe‚L% VRb~0t{k ' 3=Y.dF y!|U aԤ|VP6 \I8EB? ai#r_[+k3B#1B_ںB?Xj w.c|1G{](l?g~Һk-v(؆,M߽gˉybN*Lʹoٚw@0$w)$mMHngbzj%Jc\ G*)t|q7Ir~U:S]/3߆(XoN;O75ɳy!Fδr3'=jzHkI`n. u 4jB%(3F E*^ u7zx\γ2<;մzOh|k}7QD9؎e#](k(_RVZ)(ɿK8*8@Wqs('f3߿W%i2%If; "S.9 8w JL Al*b61mI Y9*"c窻sLcfEo!o7G~|~)PFiG쭱=lvʥ]0N$fq~}*Rw~+} *'c HִyZ\0kaP7E8prJbVI8%UyҴ vKZFwlmzٹ_=VZo# *JiN!WQbTj@ؗdIȈ+uY2<sf."k.C1|>qo6kkU>t#g<) i-(@l@3S9Q6C"j7ԫT KH7IYέtzd120@Haq JT*dY|Cm{_zV3pЄ@뽂YG fS#c" L]8yW(ACqKwϡ8f(xĬV7V_<%Nܶn6 _ y>U|hn_Ng osWFO Aiy9Q:B,? bʉ'~M ZKŐa `3[˟t!G 6/~6#8Tڪ,%44߻-EADL $ SgӼ ,fǒ76J=gVVL1= =d;lq R0#Oh5'l`#c\yY9刔YO=^sQZJ}:+5nՠ駬Q&I呧=59uUj_7G[tҽZq$Y~ܼͅv混.Γͨ6;4fStĭ;HJ`<*ǣyKyk3I¢!9DT],8ch髧sxޔ0@EM%^R٬"ٻS;Y1b>scQ:Q R>Cl\,0HǼ}N4W :Qgc~ m;W ֘ߏY唄Wԑ^6ISGH_JF9QzN&j1227,@V'punJ17A*^ULX7YQFJ].R}Tt;,:!80(n ]+A%29+lc\LcyeDZFV{SB0FV6XA19d0Qk] 6+c1j%h0Zsx$ ̿?vH7 m^5DX=(K53\6 3_ o{IoP8Kh<'–c\l*}M(Ȅj6Ax\2DaD[ZYyb :mAN\6,;au8Fn*RC<4c;n(&٪ |A޾O6_Mz,SDx.#AX~׬RبKFK {6 nD!zۃhb5oit 1B3)xVG=#(:{Ez"ET=jV Hh:5KVADߪj['e)U0pDG?dxtO&r.% |V Jl2ޭ/I tskPt-֚x ]- @DW*򛯲eG_w- Sa։KIԯ' R)m/6 q0 `%*d!_8>{hQەjsF2H4p2jvocMRU5c fF47:6(s֡~?jΥUA3_>w'j9S Ǩ`#2Bk 1UFvyާ $7GrëqA W0kCn`C4XOh%S~^8sLdb4NTevYmi/·sȃ~GrYH#eVMRt:sjX[Z#vOE;(y~5uOv^?z8Wa:L7NSȥGSW 33igK3nt]uH֮j)0uoհZX=}Mݞ+!04 .!hjZg֍^孛O 3T0 MnֿVX;CnbFmw4l]VMŚ=\S<(w;;F"uHU=/1kCA^5?ˠ} ( 7y TY%i yUc)Cv(U)zӷ¯_S6^t[wxq ujn݆P5e[+OLK5=CT%Bl/5%zJ }t#Eӵ,_;=Hʄq'a-p*2<2 CH}!PfILK7~jnዪ[L֗Lg4M)v:v#-ZxPIIM(P-}D$ .{PK v:[M,(lMdG۫=Ú/ Y/º{_в0CK_+ޕ{(9"'"IK/UX !nupJRX 8$VjQcǡ]kbݫ6JwCc̡0Y9tZ?7R ,_Ҍ*AMed0g~cn-8SmIɮeT~X{X{${\B8I5P$t?HbM"Uek{hy5RF;JvaO#7PrKhp˥w a|g# !]@,P"_$BTQN uAvyԳ~#Y ,sZ=_`dbVV;c6̵+78kWLekBA,\ tU!Nhy:>K39\%zaE5 RJuϺݻZQ"IDm71+Ne%߯{X!ORBwVrPO?+?VF6QR*Ałs(qbnVGH">㺚ND(\VCL`kGUo%:,S2,dp#yL!1vh^2& 3݉rDDR6N1y^E6y0ߠ_^܂yT"W͇Bvqq@?{j*I3Kesw(e[oNS9`WkBN.Z e*z1( L(%2$J"c-SsKiTkdeпhDlP/F{2c >[NZ"`V3rp@]Y >-ĢDQvj q=Ϯ-aMФ4ֵ 8OɎ(]+c "ݠs)h+*x'D?"eݑԨD`ƑSV*em{* @:W؟4'ex %*;'o'^"bIgh\MN`r{&?{tg޷ $|,SiSh^O-I]튴l wi} `8UDAU#S :0KZD%m">I5&uzCх_ 5,e H”PiTIyPmrD|:b2 5ՏBmQ{wH2MxoxR[NΥ[V^]ZcYf]8Rc&U:hr5o ~ۦӞj@:r+s>SީAe[ŷqڰ<234%-08೿Et1eV0lv6|JOH~^3->c'O-u?i;JEyyP;i#IE( !lG7Fk3 sL1“)薀RՃy0WOKTMU/66nQƱgB+AlwAVONn9v+o qEǦeGOod+rʯӏpnσH5tZSi Uݫ6.<. s.KecR@=sJTưua!9!.X0߷ޜu !g#2Vg-9 NU,] /|ܮD)2P~7i_;Ñ% bbJ惌u8aƷ9bj+ a]-՟ө͏Ԩ#[dBa9RcQM|GƏr_JO</+\)weRvt@qa,,/l/"izTgo^b'i5+G6rD9.݋qsFt^)O(r$D Γ?z} M*yjq.ayN8O*}vB!vgn"ʕD5Plrcrig}EF5Nc Bu)X#p*q&4tڟdg^[iE61]0]vnT.V}?r(fmn(;` >hYc/G/̍+(]Z:oFf"R)ٟ`=OyLuWM {K|bQ Ҡb%~cjLnڱbM'E K>C+6K R=&nո QD})JJ7#)paKA%e}sf(6b} _v B "pWM[+7wj  XLI]\F-1=P]bDZ4W*Ju"9)=t h_@mo?Ra(|:r6|eQUNCsѣՀmbMj6 Xu4^"\ Uax#!i22VXZ- nIrR&^VBǛn^*p,8𧭪3:uk 됐Bvul֒KS~0AcEsD,G[!>]>Q,Op~B Wabl>|rc`+)'H4i-c\NB/7T\"J%-S.:;y- fB-3^i8At&|r$L8 7sLک$[Y?иVi/nnF[imRB RdՄ-$##fRCut B= "_!b5$ME4E1Wӻ#(M+ ՙ=raeºT؜ؘᄌh =fťD] zF!?]$Oմ;MUڲ @m:B``2ھ&YB" pJ`k!DRfe@Rl+I3qeiMj1cYUwH,5V7*}"`*-5v8AaZ]rW,z{QgEC] 8O+G- mWnAG62H%kt]MV1JWNU'b6&8'$%ƛma:~ ;WR)6ړGYf@lD ۦ( xC*6=œ 1SWaQbmOw0#2@*χ=”nJ-/ž%!:tS9:bBzFߌFDA) \w߼U6[ Yn- kW#C3SV>I%awr/S;U|!o[Bl:nm!dWJ sšJ>9 rM A8<鮌96UX>N{vxIƝx2.L կ J3 sul )s_`&˱bDG吇 $m2a{:UCr%$ل" {do C~K1h5|jb%ʘ'|Z_}>-L+R-<\1Rl~]dr Filݡ7fUF{0yMr]bswUxfZԸ VsM됴w#)&i):ZNe}#ˏ_>˂%E"'tl04=Y=CH:.ѷ VQ[5B)Mq@f]2^;gAHv'N_ϢK)%$Ȧ9kK!J84X^8ԔO'tz("Bp V\/ũ9bfyl;,{IR"~z15/$͋0?׃_ \XTߑpydU=#`@,OPndm:;fGؐL*l2Β3k⚝tާ^#m3m#iYmWKJ('Weեj#h:]8I?́';U4?m[in<;U!~q~a'G浥nP~3 S m|<zH [$r vn T{MMb>i9OwMpn *fQ- a\p nMcy<$Fbd3kT ]08+l'&#63ʫƼLDyp(ެGy <µA%v޾1|lI9O:EmMVҲhM [Ĉ p@(|ϒٿ[˞xKu7Qb#NS+ckARu2]i#!k( EYOKs "`fp;,t!uޛr iH}gn71kp +@-^L]=EiR(䷵ml68GGz&HXQY'cRZ9AC yFbjnR')4+_̭ԍVUŮuDhdFM "T3gՊ޺imܤ#I)z ɏZ6 ksȎj/uOJXjF2TI/Y&ϝ &]`ur {ưc8|j1b}LXл>(J{CԈN*B?HI_#:TT 󹊃lm=lb1i/EzuK`'gu 9a^T6 bzRn* 3y0n|ڇᇜLY@p.':9Y48؂7]zЅ-7,d&k FIr×=#<cQ喗p|m=$>Sf0'SY9(~9;)~B7N_%Aw={\l| č aGuBAY>Ņ5$ >^X 0M|%H9;S;4f .ƪH!)9ѥYeҌ "wi'-J58 Ǹx}?.e/i`-ӸUg:"%;L& T׫cu7OX!R]bop*ďڜ D'J>cvp,*܂ꢷ[.Hc{^CDlM7fjATW p|OP*l!#Vԧ2bܿΟ)㍵ |!Cs[S,kUll@i'`:o_>Ky :uLOҹذSH:GAЖ%4x_M+OQjk+^Ǚo(䇳ƉW WKC۱Pv#iB`xJֹFw+R) >~1F/)Lu.x}Md*z(A6IIM7Ee ~=")bF6Q eHX\h-RߚuUZ0C~^@Á~)Ͼ s`4/Fn(@ p8_4q"~W!wR'`V8H!0=ILh݊%uB;φ6]EKgԭDZM]sIp zu*;ua;n=s䛋f:R[F cm9 u?9B4]}F192ktɆO(@?UlϚ5:[;( J@ptsYw58TC&~,PF!bvw-t!,XzlݮwXG@ P:f3-$p121MBq- s}j8H=,Nm3NWyiXJz=ö9+L5ŅN# SMví9df#e /YY~ ]r9A<Ơ@L@o,zPe3Sr; -}=@˺ϯ2>}+XĹ 7P?P]G7k͊Ҍ)FwB D mQ~(N; ~%8L59[Hoas*#?osU#gD3 {oXiKr OdV u]| alRcru&:svIU%d- P1$bҽES V@+zb7̈́>nD֕1Lx.!Mhޖ5H#^ ;23|ܜ,mzt@[BsT ]єOPy?}ʜ[u?fKm,wӭL 3Ў#2i>`V`P-ِ1VB+n Db%; :J3t{G~}'B[vG^ Mc¾7TS ̙8qaq$2ttAV0jH.TFd٬xQɪ9㒉VPyd |t%ҨrvC=}>tlcfp$⏔ZTp8/jG!at7o5Tނ%(g^䒤^!<%lƒXb_1MLt6dYNTA_RX@AĆ>oxGٖvϹ4&xUga)>6Q6^Qx1չMnz8]>Z<$8'ꯩcYnR~,fܙubtB_ A c D($]Fƒ>1)}Ah94z0W/nҐLJU *RlkD=)`Z!`#z@5@irZ_$ЙVkdUqn3C<(&中=Wf9Is]Jܩ lX EFڍ TQ$iYVFZt'5ᶀmA tE5bxOstcgjQM< COֹ{&qKv JP`{%*or!0|ߟc!|D\ҡ4OOrhelDȥ.G"-- $)<`1o;]4;gTqﻥlQjd\xg_Wqe9,:UB' F}`=Z)vw {4-l9fǗǝq&L *xoJ5ʩi"TO~ ,ze'0|.hyj 62^H > i]BxLA&/,0s ]pAVLgW |hU"93Q}ĔzeMbD䢵pLNqeh=!*Ό$2~2V܅qK:q?.E7}e5v[ZI1u`_r&GqfI*^+symmv4ܳʐ \}W֫p}ͭγkX妁!_%JkHA_v6hW6NL"Hנ+0'8Pׇ񻌞B:k毃˶a'EPfg: Z2sFX;+Ek0;zƮjQ1-M@V[Vbl[:7T34p2Sy| ;N|<=&TiFj5ӿ^ռ_B9m0m:Q?.jV##Ά,uzo}k1:W "DpIt|2.?sM&R]Aau4/u}JVd龤Z1KjS/O[ob, -T#3NŤW+}OCʧNNy@O9m(s et|RO+uH"0c/ubpT<"%h@LYݐ +? Y (GvӋh9C"O܃&H2süF 1[l࿍ I6AATw0^{f|)dx* "|M!JG K,_2J*f0h]LHWdnTʘexvvJ^T$LKf WWNxOu}(`ҧ/ C,v,ݛk'4-*IN,0wor1 97f•ij9hEMVǶ\0]Jӥie+sYI8۪ۤ~G1cбmaUN+%Qns_s~֜TK-?mtwk\]`)M̗2fwaSN2TS刐#0@z|+.#nbG|tֲnFt1=-/ݑDbsP y͝pXO5 W}ꡋOsPQ{7ρ|߽*\lttu-3``Ycr"l Ü&gDFQ ]ORHpn2K^ G99+B^f4[ ⁒hfO!*MA >Nu^$Hkj_ڡ.m䌙!{PT'8 ch(ʆBⅉ7fOtxsKiv:Y.?f_f|k:KQ dC%wnrР;!\!)SA?8)mc8 !;d@o`E(1Rv21(f|`e1S/:܁6b;4QR:JK^O#Ko$l,)hE- n=yb.J#rp 9 ퟽~s9vWݔ(;|i;F m_Oht8pt6}/26 9Hi~/*]DISq.Y͐g*KLv͚`Ƭ-`DBu0^ΡȠ&`M2*ө~#sԔjb@Q+cqE;HR6o8<8w_# lQ" jI&%=ɿr]1sYo.?@b>H(%ѣa{<<G]}^iDܭ'a"ޞ0[,2uZ'^=٧]$VҊqezz!0mbC}( * cfv-l8y'YCTYAI?<bOmE)M .=% xI,/Ag#X &zIW3HɖϸQ<8>%gW3_|wg^ܲ0lr'󯥅@b;ohƆw˫wzt⌧fKJmDh}d3譤\bgW+Jq)tk6ATwBU/vNӥuoF&aw'CG,^0ԇ\tN4h ~Vb+d`F#8$/C߯F+P^/8qPݛ _%J9vʏ1ar4B`;w4~L >X@i5CȘ_hK2ӗ>u&iӶjSAdɎ9 6|5S_Ӄ26םr/#o`-pjnC:.>W!@]T}lհH"^]۶2PU%g6 #[ipa_A!g0]0#ejP:@2*|s9Gk x|ŇRۡt=MxtQI7ݑ[^7jF7giT8a>ctY,yاL1'U(U[4eSM‰ϝ|hb&Y6 Xj6 ?Q^h hHa##AyL9w?3(\*Mi-[?TOڹv9K>ޛ=,b>oO.cmm{0e8֩;jEd=Z`;M-߽(~q|+$Fk>[1X 1C趁DFjqR_!Kgtyȫ[IlfWv@l. [b @ a,w5`VyAsn#6!ʰfW)LcaaXq' H->ClE&ҷ3#t(}*:.&a4QQ g7 ^a/Hb'-Ft^ۜѸ9]0⩤lsA ǩXCI壐 Z/5!u ;bmwk~Qa? 0?{/&v5@%Ģ}ҕ+᥏-[d̃[Pצ4;d~q\|6̓B#~nM#f4}ZiӖn-\o'nkˣf: fPM2暜LF&+kܢʸ#P[j]p,+!c5f?Nl&\&\P$oGE쐳fssDH0Q_ {啎8! ʖ/KTnذ//Uq-z}xz)fΣj>(AlnR'X(}!sOFR҄(H%RS:Y.Iuc3eݝ5dg'EJEGA'@ǔI,)dR"ݧ9ї(/ 3#6όQ>rOfl9/T\zN u΋!ɝTX*U`u-xRkSf!>! ! -=(V OڮB8k.ېl-9,o֌wX4֍P3A h| 1k˩~>45y?Dr޳)u=TwhpC* D܍ _q #(Rf݊X<]06 >3'>LKUH#%Bb=> % s^@aPf G'PߊA ķtO^щB.5Ԩ] QDji; 5sn*Į~FR2@,[# N x3r&'!S^%E8ⷌ__? ~@:-\%^+{j۠ȗa6t&3f(OC;>JN*c˒_%="_e<]ًɢ/:iEDuSJ?bUrMB,!6 G՟4 $oROlRG2RFxW efP7Uj )^ya',\)}?Ƃ^:R|tdR_#glJhjAzQ;A .yb+lqk7Ct7P'( ?&Л40"LN 5N,;S:%%M#w?3Koc\Eϭ+8o &_r`}7[ .'@wކđ> 2㹩G9F ^dTX[R˛zLeZ Q/e6}MBE:v_^TDx"gs-w֦R޴[ֺNuo]`^s5r; cC #QAP!>l^&.;0H:C>W}} }kX-$y_P8\QxB^9&*`ߠtWFA.Y#u<;$GrZLEÁ٫%h6{q@?t0@dW%~.ij\J5΂(z8@ERLkln L[.WaD6w|cNH=ډF\ll`⾇y8%DX˿צ #Hi83p2y= <]U6lTfw<9JۈJJde(={e#ɱObmE/S43&8<=!Tv [C|gQb.-E9,&sZ)J7` [.+֣NOy~I2`4b Bg#%!-9w)V4hr) J%C:=8߫RJi˴ nl9AhrʘS;˘R_+7wOOeY'uzN3eXId[S$[Շ ѷ'EIj LAaJ ~lT(Il p6oi+^RMmoWICzQK:ZUD .s 99feʗJ:lzXd6irX[I1Ψt7\5 ݃ȵ/L HbJ6` ws_nBFZڴCX~YcI:^+ gjuqE@p3l0Y@[YЬ"IizzM ]VZqR#{}.2[okd;MinoXѨ9B J4Pu?n`1!qNV+Af`8DdD(N̻]Iet"uN)/סe]9)3zGk-93=hΩu #yvYs[y"}Wtpnj f*q'O1 Pxn=P%CFե*2x'-bxa m60>e _`XnN qf!L0E26~[X:qnDC‰#4 Zu:BQϨ_ړ9%^npV,WxzKt xv`HF"o8kM:rcwU&aQrLd>,H`6*A8{$i[gj i'Y͵m8?1[(sέT_ o1sug_Kixtt\Ȇd//ͫ7mbw 'hߘ#k94r0nG\yɚzJ>Y.'@B+(s&xbc |XLG7k{X2iZMѾEGK,I% V3(R#pVʋ;ʖ ^ ,_2&MN6fJ٫45Y,b'OJ<)+8ϛ +ُ>хu]}Ғ}ϤwϑK-T>0RS'ɈE1ë2h"}`B<f @un S/w\RJ)%@b }C Aý&ʩ>G(C{'* /)l֏uu{Tg=C_d"~  E=Kgv_(8k NZ1lkd\6Pՙ+K7ؘf?K$ެaO~3خSI?29m^4cɪIl _0ރMWs?ns v3~! Ĵ,Uԥ9\h\={m^/̖Fht"!L ;H^g`xDS>季Ŏ%d4Χ }`yYN},q7KX4ZY̸N;g{Q/XNS!sbea/ Ѽ%ޫ^$~}kgoejM0N[k%w;I 6R @_j(Q_I˂.z9\N(6|顜GaMX1Mh% :'P {ϼbZVhi;Xk=! *MJ73C*7> p*,U}Ec )8vt1c._Lr%ɴ b34;2iP 4#'jkjW9TuYҕx8z_IU6wWG2e;Z܋Y%b7+gLW*!M,c?ϵw; eJ(M'-[#OI$I-4¦y/uhLYNZVi 4p8DUk]zzЯk{셙 q42tOg=ޢJEYpLq/{PDê JK@,dOEO߭=ĖS sIN#ՠ o`1fLx߀Wl-9ȝ+vM~oy+4 r!YՕ.U?ci{M}kaV~ Mo{py+SJIU$ _`*1*CƘBHG~ωPLMY+1+Şkҽ)vxy`jGP) DJva)~j܌Tzh;,m=8 1b%%gثGAIo7E 0YY(nAsY)C7Wؚl7xu['@1L[v0@e3vgRK F}St}Qvr~Vӈw焙1(i5aB^&Io"?yOB*JU%)$0| Xa#0`X{V,^+eyKwQՂx? v$M17| (Nz-=%rI`oj%?8o] X~c4.|'Ƚzk C1W4[GW&((Ou 3FLaIE2Ґe~M:=F'{ 56p{-MRJcuB8|5 xt/ɨOˁ{9]B*[rY%ɺYK2NF8StVA3*;XMP>xWB9.[r>0]ls ްK[O=Z} .W,L~5͋}t H%݈of b;Y~";~@>s? d<&K):a uQxP~ 3L*+Xn .z0.,i0OggߦV߿zzvB#Wiy!T[(N㓈{7&!`kwe"MsCp㾀LgJ[[lcUث4>9wpw´\zq 6??ʧEE:CyuHNZnПkPc\~&x TYPbT1x8fYEvޅvx}YzUIXD2N3"YZRT#J}Mh s_5#qCqr Ź)\U-^, M-#&#qEtoht1"y8wpVŗ*_.p Ç4A弴1:栾2N$[}vv|Of*uM5&<5_Ty"!cUb%VYkc_=FʏD"D# +l0X(ֳLzv.[uhH/_#p<'xo)[QRיbr\5'bEe}yFfš(:WELRǫMվ[6Oq~YOϷ 쌎̵щt23p<' Hi,Rvo^qOhe43F `<9݉֎ v3ǿ.z`ٳ9$ouG%kg+Ca˵vGA~4Kےtv3E >'ifKž;Gd.&D[e`04:Dbdky0Bb G qגb jȀgYTbSJqv~"|T}E7MAS4ȒYhW|hU11}"8,V[[\ /vtrJnX`٘3Ci\wW *d.EA{e5</$')E^8@{q[-0yt5ȚЁPKWx3sN^O4 WB'j2fRBzO|WoҌ^E[\|='#؎X.M8"|,m .H-$|⿑miЦ@cZⷚ-a$Y {m h>b ,gϒ_9%d2Z>_jPv"OK`ƮiXm{`UAņ5K]ݣn1bi'(@#X-2$fS%1feu7v+pOBcj2 D[sȓdАyhi |W݌43C""JM I%\=R[%W2LEv~uj2F.(g}u[ovrI\03?r s-Ws6Ruaz5- ?'nw1 n[,FRԤ&8A7(5XE\|5}e.WwSOxYI)C\SXߊzVm2W4:G y5`r׈dHsP_u>";{x1O t'RYYdHܝ. g)L<g5N(CVmC6dh%&N5,t'%u+Ƕ.Ɩp}OWe(a ˢvjږZerQVQEʑ-w\uב;Tr9!6qF!QRt4O<+O*!m9lsfpIwo_`2'4{7!24gBX'ql(iT|:75B {^ v~};ے}M@ƪf'7c{i_TӡhڬC Û;Qqb\;=(]4]= Rt&$ DNe'7h(kXJO0;:h5պI\(4>@ DtQ}=;h֡`/㮎-:o[S2HLhܱTX ΙCqD!cqj:FKj(6 Ӣ;tneֲ6J<4.5;[w=/Dbrʽ1ZoV7X_ؗpŌ`Fom~A({dZ*!ĬȤ~W+ع8ßRګVWx@4+ )W0~:|B!7h5'_5cpsKis_e=INu4kR dK]o^SZNpf@v>ǟ8'8LS>J{*;qNH~ӮrkgRE|E%T;B !#y5o ExVrrS Ekʝi{5Kb`J ~y2Hj}Q[miޖIce/O8c)"ಶ946%678kJ\̵}/w9Sߔ]4=M"x⨅ڌZObs;WVc|ÎgYjEӝX~7 >hi۰O1/h: 0'U-:~&.pI>^f䰈{0Ӟ6'l?њ3(CLZ$HCA:@ݭ8O64&)&k h. po0JBw ;_*_V|`6oW̐3+69MG[Yˮ.[?z٤s y/ Nd g3B(>dAӆ_ S,u:ape穐`F$2eN W}%7pX7ţ叞m9_\bi{٢TB+g 1D\9P5@< '2*/qƕ=Gx|NZp OsdǑ2%P"%]\YƔ[-L>O8 ߲ۆdB.n/ mHAJt[b8aLd<8&8sSB_<> >D'Iv-c~: {$ ѥ ʕh"~.;{;_ڇq1xhੑnasFyAy ݷ/&C:6ouR& VJQvX]Qi>^\MÇJ&WTtrWD3fN|J 1 G T'a|#TFuHd:(,l&‚EDۤtX‘׸EjOwPY`>;SA FSs$mQgUk;<-&CP>"i5ej%:Z3'5\cHuheyq WmAYG0ܝbfa_j-n3v/+\!U( x22ҍBsDˆMl[ʼnsK0[̅wPBEY ~+w _Hحud#4'[nE䨱7wGO I0pm ոK 0Cxwk!ck fUB+]zcn ƽmF+Oߴu@Ͻb?63/)V,'![i<: )ë ]GڭzJ1+[@9]0it|0lvn1NiSߒCƮ_]t {,e#i!\}w Q<~ZѻS/ ;Ct?֫&1 #8 f"/lCeISo%sa#mEIW$zm' y3l"zik\0CF)쾸t1kى;}7c{!$v;rzч*#"<3Yq/֩ta*!aJ>fh@Ҝ_y34!SBT&d)G.q]$-1JAԜD{ڻF,!n'nfO|Q]$?G6& g KByTNT{4g\b_`dgN~WGGn~uY#JEH@~zsX dc%Rr"=ɞe)K| ψoԺH{6 MK$6vq ǿzء۳=s;L)D㞴dE 7jчϺ 3xתB6Wj?s z7+;yIB+ ?&,R[QPӶuքrNq GGF2q',pӱ;(`*$U3b~ $`1<ؕ= ҁ&>+ŝivfjkUP̟1;ZQm2X9 /gHxA^XMQ(O֑bkpEDtt݋ƈ)/t_=jB%VMAqrN6 - zΆ|i1yCԆ~/j3m" |LEc+\s\4C2AXWf=JZ5e^/JnS\_0ַMKn|2ɕc?>&sQy}>bmQWZo-"J]6Kc0C<9qr{]o]؛Ɏ< so>sLT w }D,#[XB/*Q+di)ԝv<ᥫ}Fހ-zvHӭ ML F=IAQ?bmOJC75SQmүyA6FL#?`}} tH3]]g"~եmI9+k Iv>3NŸ0 );)Vo\D ,` E$~}iָRC%κr=йE\s4x%=!Cât"3{&6brl ` u?'$n*&a m rB'KA^tpuEqSgpfWSt̳ₕʨgX#'DxUC]67K x3m("y 3wÀZmE^WߴZq1GU[enO.,o UQYUMBO (WքLkT CVE?+b1KYc89)Je<1dJմ3]:?cnEKnILǢqײZЂrTm.ɞ>gJQ@ m*2EklJXX @@?u8#i=]el{ni64\h }2aEu1mn.(WNp$ao3):e"3,?`~d+1ե:l7U-6*{Ձؼ(`۸%[5xB(+>yDA!Z_30'O"i'7ٮ_v7i"BfCHeS$TХEќ,kb}kLB:5R\S<~:7hi(U<"_2DXG#A&).) nӾ_5Jԁ;xΕ0tK|Iry9 l9Xp>(tHL?IЊ휙AFJ#GiWwb E3&gUԍ;uk]:LHK$X VIYO36 te=p#'h7 _Iv`!P1|'(yކgcaU=fmLge(@kOYv4.f&25j 5sܫ\m,]F L\K#Oqy醦3iNI~cvYPVES|map=V韬zg3*L)1{C1ߪ\E(92cG7 Aw'L_}:/W_j U"}[7LZb1b,w}[O?m`s8\:xRw,? @;x!g' ݵ@ZT('ӕ)Ula-sj}#RW?/?Ag˷%}Ct~ܨ{O[nn6Ć`LU nn0Y4dTx+ne>(fe%tJHKƈ:[I[8;4R// V:{e2ѝ: XÒ9VxʫHb&|uRj$O6Jw(C% f)$ QEd;AE|wĖƲi|YX(|}^xĸa1ڂ ߗ+C_y=>y6p8r`kX,PCE QBbu _=e]\1zV7/+<0nvz";od<-o öAGM~ZCaM:0jy۬kT_8 Vf < bܚc݆=TKc} yNǖۺ :jQMJgb8ї)x,9 PK!n.g-hzߣ$HPX W>Wp4H[ eM0$$ڇ*Td^ LWx ok{tYȉs 8ottY0p} 0ƪ7cF>Mҹŭs\)t#FxI#0'1q>C0"YϚ "pZnH^C+tGc0 |g'0wݓ Ҙj0C clXTqٗVP6&OB.2\熖B q7 dTx;;i eM~ ݰFt"| 7[P057r*٭ɽ~ٜR"05Q.v~8n َ > X.8 ,o|≨K}[Z=Z*Y9.?٬q$<%'㤒[V4 ۗ p~/ i!8]Fk@Ũ30P,>{vWG @fC03p<1-N:Lׄq(khxiSνwP}A|aڥ)~st7ܕ/p;NAV*h=2֤_c7KrU|! I~].3Ăԕ;|^]NO9?GrE oظLxBkh2(-/LƠD E D\vNOA8ujgMA G1r^T(4:,^+2[;amTC}v/2_JW]sGxִN\Ww**G} ]pWlh7zt5 ΣSb{,vԗ0u/9ۤN_=/`Ӑr6= i@ E*c'`z9'j{Vv /@!VPI\O' :榠Zϼ_ ;1؋G}hn+/3^.FN\ңfb{ y K&DI 8U5'`RI[x }>`K6 >B' 7?"%8Aȼm6%y8`vەc#3ʀfDu+eud9:/UBO#n!9>Gh\k)JIvA׍.[cZ)khDietpZZC:yc ͘]$" =ZuСV(0 ТŭkLW"ǥnjp;\Q2nwy8{.хȒ 8D_*O'd `&U:N9xn)fUTW;c|R˥>N{0HD3-@ksÕ􊑶ԿtfNӕ,Qў* z1u;."FFkq,RWI¡&GRb[ǵ9&82AAt CW[ KuOqC:2?9mnsӋ 8%gn5B~uoUHuzN+pXVBxW}# ®ut@[EXz.u,:q3RN #屋4[2D<dàџV4/`GHwt Zk9A^ w?XCۆ?n\pNŁRyDxF6|(Tjy=>H䈰kx}x=n@=9Ġuv-d[Oi[t&C ꫄6|dS檹qYIS)g ׻]\+ڀS2JHyj\ 3|2מ;v$0,3FmB|DcirCwb'9Z_u;- begDs1o2E|BM8H8'~spi~cV[5?Ӫ [)oMTmiA8ҫD|s_UZ'1A{x-f5A(y9[ԓ^ȃ >ֻL>A*֥l3Xۃ@nÄCQG=XhV^gõJ+7fEUVje:q䀙0q<Q9}d_.]1&+V8A@ދ*d8L`Xe%Aa)MSTŚ2qXᶿC7R{ܩ8:BSBbyiu~!| F밑ɻ7nAixT e7'mM=q")v)BC ߑ<+r]<_cڌd;ݤVj5o %kV6J(33l=lvJU>0B\׼ſ@1ko[:nL<},=$zUg`,t~D^O^U!>`͙`v.VS۴8=$V#C1&C7rtRJ#<uAGĽRb~~h ~N*q -T3i-&e#@k´P]~~c^J%UH)u:O*K?Xrz.3qV awNMroyA8ŨxZZi%"}s{Np]L`aL=| >c,ێE1i9;}lDzQ$6Hw A Z5 ϛƣ{ 4yjk6N,QH1`+VLtQ "0&f?%N<辑: h?ׇX-}=6cuX\jЁbӷw[q0R[~mH}%T{󽉋bL$M Ҥ@4;G``ށgMS o":CK'ܠ5)_ԉѿ5迵B@8O(HWi<ņAs"ftI y>jzV"c?&bVx ]2 ֿmq,me @65M#V:GabC-L^c{F;"Lj{oJP1m.)-P7;%7m',oI8_BB,ga&8~&{Fgex>\.]\ Т3i0^ |*dPq7j "o[!XMO!{Q,D΢)E,C0bɵ۝sR#۱ ~yMaZi$Rӆs*q7%p[ oL +Xwc$S6HQDU0*q6(6 > Ri TD*c8&Ѿ%IT7imnʺOKXx79M-"2:#L>KVSyXCA_ʞ|$`t@ H"JU^8{YyE&HJhǫ[ᠻͺ`Hi3o`)X!Bb] &"iL*_{Y0T#Ź eK̢+lc2O9̙s㪽 ߥ%Q|SaSyB^#VR@ .ɂ񥙤^lAm'- ]^3A,J$o%ՋPgNH (] ^Mv+36+dIWIk/]|e6zZ,9(k\ DͶ&ՋsAz1ZYmVtVU2NRwWY(Kpr]V銚vE[Ns=\VO["TFγG x9ҁ!4L,_ h\uZ&#Lj:Wz5u~-?:x﫼ePQ,[G{τ1z%YV bs `F`r9eJll5seKk›w]:3ٴqN2/ցMև45I%zoΆ ҕ>nQ:RaSww gԎEJƢ!5n bo} >-mltft[DiQ=k=|ssZ nV<F}|M4 s,:[ P*"`-5,u?VTleg6Uw'&zx6X7O3UF !EAB#`q>T(#DF8ɇ6-NK:;tuAaNBbklB`eab&5nzhTNԢ_oMsu\g3~L8x`q,n GZj 6Ʊ" [ Ӽo4ޘS`w D'1DFr1O@`LmVQ~&8՝\ƍ muN#)9%vn)z?I jh?ZDIV;tIWNQT%gV"#šX0򗜨3/YEdojR_P sdE.@NEu3wL_[t2{9qG[2a0'1Ql"vَ0svv^?eYE+tY|)(=7;4 2Cƨ4B 7 mc:H4N6nfcgB @~2L|tuyݳ} v\G"b&nE2GЋ<ݳ-wRd̽D!tσd0YJ>de bݮ7N`E1kP!sYɤpeOa* ϳFqw)N BIHwtӞ ezVMtNsk<ާ%R]p,~ӑw;.Q|e-򚛘|6H]OOKMsp/ d\:]G+y Ł?OX C9T+ݕq"UAϙ Q0P}SW&1 _Gwx# y?Y_ j+0*S13A D˨;3>.D+o1h5[ У*Yγ9 !8뜸l yhZ:H?`x/,j* YxaռRCdRG"Vm(6 Ux1nJ&h#79u )2l;q2!#1017Qi '((pjv@de # 7O`qAWR:dӾdcog E07|L;"(=%~GMY~ѽq`w! cD sDO\bIި*Nl5t'WZq3A3gשMRFnR4dխSc˜Ԛ!˹YW[G;A7olZ@hId,. ;S\%Ag%idfT% ;y7N63>*p j,>au @ 0f9IJg7EAa(XoYJE }{ ݆ XoN?$M`[D5qrJksL"m|돣PX>3 8-~翿K.Ms Fڡ{nv?:~tewERrO!m[i!!rƠ^C$%] fD7Q7" .^=p7e;y,845Rß&#hX̩B6BɞSu^?Svs/rjgg ? }Fņ!% >Q!.2%LmBͶpR:p/g7*COUx/nKgT@fB! z&oσT9i51dHǖ[$0i ^n&iAɖqexOnn$Ćf$C11^w)S(_1Lr&P) Lcc2&E x'Os._'&ׅv7VVz:hGjN\IJŒqkR:5BOyGqwt9_ VƀUHLy`).Pgw[BFnP!3\De3li^ ~@)jKLFԑfQg052%K_9c܃ޞQU>W7TӪ%U?B?M x\%;;%hH襙-yqz7@zSRT0[`+"f*͉DijʺWU7J5JU{LVNk`FnDx)όw=cZ5{.IN[HE4 s uvA-z''xq7ģc yDHGz(WO nj:н"m-7=菲:> o*4fN'6X>A!R*[Jjqih]o5R_蜊.j\pXѳLLUέڰœ0 @bfڢc[I4 ώjJxd0Z.>, :% K}Dlf!0]S=mM1{ FsSM(P\IE8ľ?SPgLdB7_,F`j F=]Ev~*B~̓QXmU_VW}~d>\cP7r0`(!˸oduxvT̪V3! X=ަf)og_^ X цQsmHl6D릫RgE s[KMi,qR(gc*toL͐^t\|U&*,mB >Yܹ{P%LQy%Ygê W.~np_8-]?Gڊj%VIγ϶-B͖7Լb&J {N\J=68BivKXttI'].2Q@{"LEV`" N*2TҐDZbXGnp[[ EZL~aoJ"-[}yh'w,;P>VH!Rc )pX٢V&(@9(UIDe.Tç>9+:ԋJ➀m`?C)3&gR.|J8fqy?Jx9i pTS a!(2$CL43Sgx͋ ~:AGr_1Js̷SyِpDDQrP2EWn5n`LZ;rDzH),1'bzֆMΡ{mk53YhMN? (e+ZXF7U59hwiRp OA$6[}S:cII^);deGprmP{ DApV!["8|9*B kUQsٽpxPWy΁kvUa]mIDzn3Qa{AtAđ^fSp"|s+F?v^W L/T,r=*SQcu3_$sdD>$À Bـyf{ .f|@s/+6bEVH?ƨ_QۥXK%A~Ν2pdW?E#{@D#R[vL#5d׈DvA 9]ڧFB* PܸX1ظ[WqVbhI&t2p|$)] Rb5J G] $MI I1Tݑ8v%}Px|c|;Hx减$MEp0hU%ho"Xt18RbmrJʨ,Q$ýSA?1Ff~cGS9N8|1V~ ?|Mb{뒲+n$CZ'eі ~ ms# ھ~?EӬ\>OEpBv_+0̣5G ۚjnGVGd֋'[9#=}* AЛL<*`TON&O.aeH+̗ M x (_6e"/r$JTmP HeT̖)i*"1K:ۖ[X1 VJrѷح\4#& /2EPm! BY+ߡgeP)x (I)s|$ q} @ok'} xC_< (<%d,b$"g^mh#<{ì2(%:2(!P:Kh65>3xn"(sv S[pw6æ{ bmUZQ@+֔Z%H@f3ʉvpqV;ݟ4 Z!fa PUH~+J͉8e['7xCgt{5)89ޭi[3GREޮ1M8ޭ %Qe,mJlB$P(-_E{u3|wk>NW6|\;(U;d8"tpw۬􎉙= dxm,)/N]*FLINU:1Cͽ"hL6iP 9!ٚQ\0i$?N͜=-O"=D-๱ lefV/Ig'JSH AcFY+^ B%vn//hQMyzQ-cQ_b2 zSr=@R2Ro+d? l2| *Jc_˔&~9 ӶrP1OW>:_FL|^'LZxdnUHuCqR?jKܮ_ Hz40@K2-6=z(ZoCa 7G;D}Y6/ـۄsYb z$,!']cbߦ_+$u_7DoޤO~!2I~@;MRf+"{.-w2HGG{?PUXC. Eu`Z&Ô[÷UVC;㶛$W\=`]t̽*bYƶa WJQ dit,u/]C[4("6@:mҩsĝlbQ7~#Z'vɬ^ߋMciL۞` 1` E)%;9fϧ akWD`S ` ۥTq-.ɱǎw"){}(#+|ifh7N}WdvbxSVr/}@"jK m=dss1'xc]j10dfT@l]#:=OF3d=_ p"it5\yR"O#;Of7Z_'MvYΘiG?~:0/8lx 3=cNH=􎥇|OR]˔ [JN\ɺ>CԇKFr]_ਿt*pŠdw>M%[ʮDs W:൫tf¡ٛ;Yoveq?U5|?mdLlN’Cs0nC獵{jDV!;X*0d^-~dz0RkH07VvMl| O{$ӱ ?TA-a/ zqY/AbQ0*'q|WYiAKjn#CjD@'ό+̡ζ{Ɉ}Vsɉ1hظ^\)]@y„hqkYum&_RW "#5sfG4@VCq|Q3Lc|+޼|tPx^b@4k#f&8?1L(MRw JziT#{j3[fDs a\xc o.C5y^4`qѯ}!Z% /]nz;**'uS}/$c=SdMၟ_hz U鹻ɻ?.Qf[#c#A%.9Um"KĕZoR CpbxOq&'-^%ѡ^S|FM@. yJ^5Vx$ ͈! 8$i}`- y[g56H˞BpkXa[M|-Ɩm8TM}wLOϧe}?aan:p Y7c՚r\4 w/Sf2s!͔.lz Jno;UJ@i ȲpLun8I7un\Agވ # Nw D<+89 l_G*Z]nS{Gizo VPб^!.`J ?jFo彠qD5޸ط%ciun;v!S7GQiZC00 Se&|$T]uΟ`&Kb];Bk)K>\_V4if^{ ܒh #XcfA^7`FڨT$d"F(X7U:m)U+'VZT(.H>Gb!\r7Im H!;;XvP>wW$r ,Hy5Il/^ղ0pu2ƪ#P7rGBcp+EEN#/)CIS;ۏxnmDXO8/¥W=ŵ4:]Rd5d٭K8F-!u o-cB œܕ ^o;{ ){>PKEªR< i- "e%+2Jg?3fۓp@&$am^ϾfPXcū'광YW6Kql20vvXV9F3(ʡ,"'ʦdyo+nќFS6 f n\Z&p}J4x|E&8?Ѽ:aPoNf.pX2 Ʉ l< tF;3@,,))ig^ؘF|9Lk}ϰyl9$(N } Jut9$2orA")G^${\z@!ьiB H/T" hD+͎&cML)# Ռ Y5x}+Xb=i Azj!OxβYf! }+^ZWyX[:@Uw/,K)v+2y`j0 ĩ4ap!  h*Yj`]SUHv P6C?6(R_}Q7qy0`{Qڟiu6P.dge)gfqY E7(B' RA;YK-JA5/btpxA#JFE0I,̅5Yu8M!5&>PDy ]X* G*<BA?m~7, 7RJؙȝ_-(lg",Nd{^QRR& w$,I܈~tcLܚ h81d(H y"knW%Dο/HSYkiʇ[鏉C(br[3fvTI0); TEpx9Y|2M{앢쵊a} Rekʖ Ff5[xEPr 5 @8q|=k kڽla'$V(D )#b;.6; H{h6{~xkKYi:IrdQ$eeJ:iJj.b9yԐ6:4HhNYI\3qR}_IL[_<0"CC.]gsy$$RI>׼_oZc&6Bk3B:Ac LN$\d1#D%D+i :sSŔDlV0aD |` ZԳ]g,{D<R;x]-Y€ Vng&ir)tU:T8`1.)yN4v1jJ2r6* MOi3eFҐ’{v1B-T-`Xj6-Ք}%f!09\k4wߙL[D2y^ XlN(Z FIN}ŷ,3ҽ@`!pX#v aN~T rݮqw/lKBȘԇzʦnvqQ_Dxʈv9ZOYβ6kJPLXV?+ ukZ.wG+/<,:GXr{η'\ =Mekϭ9OC}oBE|婏rB2;RaQHC4WN Dl]]ڵ$ /hY{*08ݔxnB\~>#٥ ĒMݫ ::mvd|{Cw!ftkpk>T"R+4ĝЖhyA1kų-yMK-ycχ#6!X+1,1Y*(BS=;[b]Y!Cy) BG7Hyt[9TNXO\U->鏥,JpB^d!*ԇ?!'rxSLcø6xő6 0rM2MwO4^ȮClObw1^Nt44d"eENK\** b=#]>uEG]L^J^*MKK<-'7QݸOOüZ&2 6yl6AW^yT0a. !8\ jx=qs઱k'o/U Q,8]*]Phϗb1s $_yS[$ sovį$bjԺQ߽LV"Vۯb:ze^^0 \hbgD?Hſ(43/tUxb ַR":FNI-9"zX?a&8YN lǿ~*n2>ˉ"G4lcPD3wbxmʼOhFTvc+Bnԙ|6~MntD 2 摩w+ P?Xx:t-EA-~)҆Kjkx6`*dn'&nk:Qlq+fDy TjLJ 1P:R hٽnJũԷ/ӊ:{bȪrC֒Y~v^UKUYmF=Wr}}&ϡV0уBo0} ۉ5f2:wUeΓ[(Pxc" 7Wn&b:U){CuÕsKG˦eSRxlV݆ x۠Xr+ T\o-(7#6Gྎ[FЙƥn9ODdK*@1"oץE\Wzkq ` ,Ox**("i;J6#Z2gLYDg$^d? a#i#Lh˓djr(J'B V0o Fk5kX6jFXn9ո?|j|#o*b~e#SD\(_*.?"|wu'a7!,u Wъ&s3:U[꣔ D +SX0>OKt +]k/l;dk>Sjx4*!mZxk:^~u,yzߎg:0`pEDLZ3"Lo6#̑D/d$;'Is wb eU>Un4RU*PM+0 !c'<02T<؄l6]D֨*hęcPS K39jt/rt73">9 䆭ϫ/ vc=n >3Lf.J~V*_pCgCoA},VI,C6i@U?;Ygz|Sw{̈́kۿQB\[e:-zhY`#}}OJbthy5<ii^ԛ)<]Rb)d ۉOi' XokQG0 ֗o];,\=u /Y$o-RM䫻ʓ>~y0,B < 1ܛ|0$,Y<e yTB[t=HVm&r p/ XoqpB<[Yoh(5AovktH3#Q/J|5a/Q)c%a$h­Ű ۑ?O *Sd4u$qai _| IdqkEzdEڽ{Wx~VY9\CB=Z~AsW:VRIHp=jٷq$+ՎnOF\w48ƈ@uz_=zYx8m#Bbj(?lY[[@'ېuyt++-g ;@ܗ;EcK ,z0^>`֢9dу}~ɲwYġlE3Lh SHAϩXhd8 Pvyـ?.'cQx>Eau!j"| pxM)sȺ՛٥&׀ peYJqB8:x}0X o`>f{$,;7ugӁ ̞Vӌ3a3$-+П-ws%TӓLY7ܚmx 3K2Ҳq\^R똔kz2ޯhQ C: ~g $e2j'E=ywߨ=Dm1Ҥ9((~c΢x/MhM*EfSZgaY7%ehãՇo1"XgCDj5j*Wb"IW2u &&>&6`ApQGuh.2d&0RUNOTڼϹ6D}j;֕_P(—Q+TU>Xaq)|E<`Z^dt&вnWԵ2fטD\θaw&HE:*7ovn˝n]7!D7t-ꃒ,&N{ Ŋ3mcufԇC\k l`³ ˅{0{.bLy>bIq\%Q XjZ!=DCf!39 3j; i?^8mayI#Gll$:Fk ܟ{\Nmw'cs#Cq{e2cE6q}}<'&`Pd1M*G7iyX.qfX{أzd̰Uiv{OۍTGKRrN, y踩-m@"vTGi8o:䍹NQBJz\' UBߏ^Q^j<9JZ_y\4''G^Gab[)j>mB揥ܗ89*M|k2;Ǣa <;ٌ;]ASUp-g'|rSƊp,S?,zskSRN$0uD+U FDSd8āL:0Rd(\'(y)3l;+~IJ - lnԇJJ{_{,8 3pE4r!{U=CBgb~@݃0ZIiѡ>{->BG&g=a2-[Gi uom4"M?hZIޖBN$q3Ti$MstU+,SdR y{+Xuerݗu!JZ3Z%%eef,{~ $}z!`H `n{~Z~}oqE;YIO@!-#N3a$֯DkځgUh R*o/Gx0CAܚ;t;)cL)2Im7w^GU0v?ҡ]8hͥ z@;]5N.ax3̚sVyM G uw3+zd| ZC^qM4Zw:^谣Sc24i۾XiW)=!O;Ӌ럅[hw3SK6Ӄ.(,@klҒB m p^)Ym/ik#kDyQǒltݻ֖~9#~8hߚ^ WЋA?2\ih k"E x ތ9;lJ{۱*0 |FHrG)_vciSD蒈2Y֬g,x @!H B*Rg`%zeiccZK#N5o̿)^qYQAEe ش7Ghc xbUىg} +pVv8b7p֟*<+. 򐩖BRr]343;- >V>~kܟ,qf:Ii[̱ѐ!lDX`br$ U"O^1J11~@R ?"E+Q?&1k׿Maho{3Ж +prH,޳}Z%mӕUZԟuɵa~EƍǬ,Loz- v@^܍1Jb ‹ O{jWBMަHTQticO(ƠDŽ[p1>#y=5)wEX./`xM%_/B@0/gu\*4V8< ~),*© }1Xad481ȵiJi]/aM:pS:p/QdĪ6Ce5dR$asBMt6嵘[G`P{1'`f$}<5y5{nC{ӛ)Aߣf:,Gu9+qH1mH%N ]@M켽Ԫz -ٵȵ̂_K+: QH#H\"*m7G17nҔA ܴ`M&j ([#jhLQp|2}+pY-kNw!DSCd}NYM>tm{s2~jnjYg_{ɭoįZC_۶{Vi ;;q!Cw]kG/1 aZhW#X i:13~/D;VܕBt%$Vոr۰JD k18W"F#jrvkq^qO'i5XhE(?DxwW(5TIJXYCd ?mC`Jhb҃F]IEq[V0\6܉H/ ~nم =1:bWnr!-Ѥ)z޾A/aMD8o Vvځ=>uEV]E+!s6}i4/w;g*: XƽfV?$.(<*k05b$GKAMuMVǻa^&G !ҔxV߈ Z 6J/Kk/Gi1[.uxb|o‹Lz߾o-θ4y *!`-농"hS;^K฼P !vvwחk%xzųkKOn:G?`ȷ1=gCp?l1iE< :gf4lkNd*.) -$cF?6N oo퇄&6*g&*""))m\}7<4n-A jnqSu{ZcEFoֺĞ;"Ja@dMGUUdx^<USsy ڹ&Ꮽn$h |􈿵)[KR;^lj5O2|ȑ*83tQ~6}I˳|s$':m+H<.VᅬD?v{jSKHHs34-ds?zqٗH@uvSo o(EFӉ[y@iƊK(_e{GSZ2_UGϩ: }rwb^_߿rjDqG<Ɯ q>-J;A]VHƘ~3J>%693G8H^uTgsMYj{!$}4(xɈG |=6Kwba)D|ӊ&٣KOmW,jOвRu - ШN/ aT%f)#7qous$&2 qTt1^E"z :<6q]) "JWhl8=8+o}AoDIfB,\ 8nj$8?U#8k9%Q)*Hnُ-?U= BPlb +Eٱ‘n,h;RLrGciK4}& UBs~6. Hp{`[Dt8@OW*91鳝8Fgy{(J7v)] w?$ΰ0-Oc('Wc$6ȽDY"W4Q4(jG74aC#{ o#tÿ >+rZ§AދuߵpƏZCitwWT/D)6xPo&%z 1泷>o <4#Ma_qY pn,Ђ;bv9C{\ك]+M""Q^&E9Vj4 p5nW,|\]{NՀ x^UY"R "?[х =uYsϲ ,kGՁVT`6lZ'>}}vfeԬ7ew睅ko'O7L;[ Pr)bQBPF;\8# %&o ?3#:MHBkcMģ [#֜2ϫzUYE\bgYFԋ֒ ~:jaOE@QL,Xfec)*(n:TQPӠm]yq=V8B!d\ &2tUC̫+sLOj= 秷 :V0pZ|kJ !h'*Q=eJo MG]s=٭^dn;Vq?O>/-8Q ߍI׵Hw fҶHv9SszN䰟I@;& f;h:-?6]+ǧ7!|W^]|-ю,yest%-8n@*u Jۖ&Qm"[5!ʹ[.JV" nt@C7qYD1Ur9Anm? 9c{ 4b1Ä#|YL冧eB|~XN`W,*nfkh`@ЌftaoSS%(OsuŸd^3ysJpV f4NEiǬmWprkױ>y,jB"HTjKa5uЬR>'[2 00 yn͏cb~/^f̨2 FKCO[sH#1kRڒ_4βQwWj)t69֜*}\qE?Yy\gt$$`ĦiD)%}rJ5XF3P2Lv;ծ*T`HG5jf mT( {x@g㻏MPza!ƀdtdo{O˸Q,%97 ,dzO) ȵOdXR?sND iԘc(S9$Zm+ ס.bEICH44CkpߖLq8U25LDyD δpix5Ƒ_zC$2O9;Uzh<ܳ `L{}wnȦ -Xr-6` @-{sY%[wEtI;OdS }Wnn4N1Ǔ m !:F(C˻k+h ^Fv@a#c2RQfLvIz٣ek[cy;\-D`v@HEL4S3 +%{M~IIiԸHk ɣ_I>k-ُÚ1BO~ZH#uE_2Ȫ̚Ǯ-5Z3R?a"F!h24^`~Ğ3PԜ>ͅu3h9qʿus>D⸈hPYӲ^n'U>239=t9ESL<-aѳ%CӥrcU(W,ʡKY@՛E~bgyvKkL{T08b2ta#Gi,kϙ.]%'V7D+;N/_r L"wQiPKY-&N.A[=4/g4똹ˮ 뾼ٝ5bѬFG,B pei'7=YT=f?e V#t.62t8XF#']8,lg hɪdcIw~"XwX72u\d(oL¦i0<#lr3aDx>$ݭ͏B **n.m⺗m+ʾўʂm4'L,ʬP]kn\Xjj}|\xmF ܯܕϾiAgӹ:a$"iʰ8` PCp̬Ĕ1Xz.8̕)Q7D~M?Td=;4**xqح~氰-?%9 (,ۅa:>!KwGXX-r-Fg"fJQARr6] `>u @*hu("-hH=L!v.Z¸vkVc~,Pf9(hJو]54dD;H2KklY VI':}I CHOw ke ">)+-ɡ^\12WhHʓ_r붕1ͥ;'6lP|WCv_ѬA U󧘫gXwo(ASv6>\0ƿ4~A qB}29h9˨/ӠPsi m| .~9[pwG Zp#f56N2bp*uH< RsXDA"q2E^Ȋ&X"C;5B|iQuoLR5TB2Cv|pZFbjrp6(Ǖ!F{Sw\$ZyЍ)ag:lIj|Bᲂ'ga9 !:*zaLEUꊥ8hs 6 /E k~yID0O:F.:W?תE| 1 W!Q{ eȶ$ Nʕ/y,K@E[z'+,2(HE033 ]=yLwOA:ΛG/6Sm޳l wdWb-@TCW!lD'B2?Q"/y<w1T>vI _^?k2\'inUQ w_M5~h.UUfu<8_罹/=}; @^>wY| {1zV0Zw*tJXrWl 2Шh`\33*}%}(&PFLufq.#h"TZ{t$]ֻF&h8TouS)& =p ADMye1,Z[@:MAcǏh$] *No1,7 x;7(8?s2>q=052{t-f#3Ϩs 49L{7}dȍ`kA2w%2\l!e6 :kt1ennζMQclx MD -fZUb9hc/0Xir&bz)S fLG>/; &H.]عV/4iZApPԁȲ*i/oo,؝(k,tqx1bQS[`֢75$/꒮qw<_?>ɵYsO!P&BbӠ-Dja,ǧՕ3L*'J>unb?頍A'CD @\u$˯F)EbŸI~،b=p4n'J2O퇅 8׺c')`!b1;jE7A0GfG4A=1 X/$s!*N?CS*QtL^EkaU7?-W>ںHzjf[(%^K XR5R[ dIJ"-9Nk~w8p;{znBCCS"sόa!7>ƐڵbGrb\BmȨJerkYOhtÒĪ~!ˊ]\u\)٠Ĝ4HE$V#wȻ~qSK'.'<6A@jK%s^ػֹP̦Ls1f񶒞޾Yl1^"I"2ۏ;bE |-cX,]Jl\P% ~l4-Q>fB9&:z Q׊DHa|T ,93$u4'X}ůŠ~Y &xI|J? X!=V;ڼ Bzd ΎGF&tB|j ??$ @_dtʯhb6T3(CqnX$Ρ Ĥ#F#L`fgD1>X$Gd5p }UDAʶ/c9]b!8Tw(\ `'Y@@Cɗ7tA$݃Ow9Η&r|-8}Sr BnU!yZֈ㓽wB` ݜʆD&Z6fԼHa;f{,!汉qe_hp›tIHj%ĥ0wլEؕqE<$?NdF _@U`EIC s4kLXoCxD }v~Us%]}NAwcan3Koyi=E;拎R%IQZScp CxkQ2&v8Kԁ,Յ7Ixfl];M+!$5 h U4s8b?.ndΨ` ?W)aț4| |Z:[ v,e-f`#6?3lhU~Z&^ XfpgP@48|iq>HbM80 Zǯ$ kZdiYtP5G-]aDtO'Rbޝ|2 A 90!{Vv˓:PVJhʈ4Aik$(G]lSO ) FDo,O,A'mcآ>S]M7^T F&7*cYqq p70K8v}{TVHO$Unɥ&kVt` j+f.p֯μ.076DEs2%SECǽ0^au R`]eZ@!&PYt+>2s;]I/{_뜃""SJWˆQy\:iA{t.,3PDQp 3!!fF%-CR ϭ:;vEZ#<][wS5^m[:e*rUZy]=fM.?@q-l e 7NM|u45PFU84hERJe#ԾzTȰ1MY mPL+$mx1 -QI b| <YpZy k%|HTt1@xlEཐslΖgR3:NC3}@¦ңS>A!쬆U'P*2&Z3{'kx h&`s$erzue) Id+6e%VSd[5S QuUeTQ"!/i $Uy;DU}1'.Y<eW3T(\R,1*"72)ZSr\B|ЯE@L3b,B_*<+ άq"b䳕ϥz%L.mǓA.hMRn%R[$+D}C?V̈ ^t>fѓ7Y+@JIM~aa8Rbϋgu]Rfel@( r3j6W8-m *ɏˊ,#gNyi΄~UlU~9xx)*j$$QoysZc\jOޥ|CNˀ l Ѷ̉->5Y/ɡ2x{2y6Rx]cmR)Vj1vTZoQsVrY 6_*wz f|N0]D't+ܺ d:ut[f_saZXA Nn&T" HۍO^k z,w\vMK'" QAtNpn+f.zbe%R)c<"$4? FxVM&L,_Oe_Jbٝ?ʈN0cd>⠠&INsNS霥<>bb2_!ϓ.(#ؘ=_<Öd&~ڿw䐘$ÒPNMrX3OFrOE//"_ia׃Vd_gbkP|ZRlV9qVnC<҆-7ɾ,L~' ]k/m: a'T]t&D+Š SM*DyEc(a~fr"<JsCةaS6R^0+C(ԯֿ]p *$ug g=R)ml:EJSC66pt 5޹Z"`; *^1\]apxY+D8~IQG.> Ywm,KDU\}dȜuDc-oXZF5E\!XpvoQ8DŁUG7vfBZw Hut kL̓ѡ.?AGSyîfn0׫8! V<0YW([/ oGSp%p3|e?=g2O^P1bۄKV5ɞx̓؋rC`F.aL۝EV>K)[4Fyojehy/e7,<1\m(<x&4Y E%U>t0ABcg@v|C bfƔ%l2Aמ[{j@#?mh<]!nG^ ^r#$dž*r20GTaw0M B<PmJmoI+H N4*еXF S=73gV؍|ajY;sͭ[:U.>JhA#y:ۂ]6<<=H/{k~J2tGֻ۟IKP (C)wL?1kw9!hp6:+E;&IrSȧaaR-`nˆ~ {&V V12ܱ6|b+ QxQjܯs)~P;ҼnOO'KռAY;Ã/T\ txp=Y& (0MQ^Z8̗왢Z?*"[B1jk`*; p(v }l 4!KwO?%W8 Ck^`.*jA,>cAPp6yl4Dpl"Dr"a0*8\Z֫UQ8Q' †bz-_9Y.BG))v}1D}|ȶp`][5S4Jȡm!2Eޔ?mn'!Gڇ -*|XDQQ=l>eU<A4j)laZke dgȽl4& RND~]3„ qa[}ez,@: ӑI9>1ӟJ&0 yk=n['+SM6SL ow:A!Cb2/Ơԟi;+gRj3:`ռa*ke {MV5#/=n+I!`t!#I I,6E)ŁӴSL b(qPY-X)WFu- ]eRW'$];eZ*{ʉ1pTۥ*Hmp]lK>T<si3)fႶea' R1 I3Lo*1Ы ٛ zF[¹Ȉک*Ah^*]u9j췗{DX}kjZ7O @y(Tb=#ςA& P:Ҟ2UBoB.kq[1@mՓC/sE* h >)S;؊>5j,u 6 8#jP! iR5̠ +(BJ`1bd%gJ~9D"׈ư$"Tfnj)4$M͍7Z=])ęeA -iYH8 Xnjbs&M`S#|'wf: E_E!Viڝ*J-壕ب*{BԢ\P,(G=wZTaX<.wPc,xhOضYW]Z';3axw 1/x`[K'acbpԳ-I%%ra`#I_|xKJl3{"%eMOO)'.N8b.m_ęK5>/*IX%|!e(SxIy)̑(6ɍoFTLD z"f!Ê#C;bٍN?-W7jG mHRı*_vʲ%׭}˜r ᑻm+YҮh$' Go(.:Vp?'$h"FOTW &ԅ7+ QOlq<NKXfn;4Bヲ꿾y͂v}}daM!`F8ِA/ `(t! 8k,{o]n_S~pH>z}#x%\[ERjy|V!o1{?y pMqn~Ѩ㜜]) Ga>V[dSiDL.[XӒyehyȤ ^sP-)&y$L#V$Y"0yk5U;CSRu7 ں] fXL2:ZaN!,C$r+b֒ '.ڏs3optdK(&r?YZ˼f7BDiܽVG~SQm177-qcd,[RÁ>APIV4sx <39c,SחݜN|fd{*ZQh7q:@o؞Ũ-*NE]F 3rZd#kp+))\BK45<N) q)72sz쨣o?ܰG! zT^>YS `8 22ڡRp2N"-܌Y}xa̓>Z(SFD-(weբ")ZuP0.qLۥJZvRpnipM+*uMx["nV,GF#Y.`=Op($;"3GD&lx`sB˱sHF.Мѱ|a/Tl XjN,6]{gUMlaJ<$=L1rsY_qf>5FA+"* .ÔӡV齮DF> CY45X$SkOo}5ъ>Ӑh Vܜ'"[Nu t;PuG'r? jQ- 5HMHolc+ŜxLT4qS{+cG~|CxMx-_ˡ]3r8ʔO=ZmDuZ 넱ѰkiegG xL_vV9%ngCzp;. uO&ENhwٞeZAOK2&a>h,x̚xCGjGs–Ѽ2cmXsY]Au),^&8ĊsvVJ1f;s^GB"bеa <%:Yp ˫ܯU{?ޗLRI>-z7z7@ Ͻg&{D_~v~ᑮ W'z1ԭ>wxX+fmSRSj0F ə/kU"+]62l0ްCyfd>( 1(ble^O{˳Y9_8|})؍Oΰzv2N1`K{4$$iۗ^XHu.cJ [9 '}S6z%T] s8)bGvE ?b}|! Tg;N5.Ym h nI5!Tg5mРR֏:I@,;Opx]SٛtͿxU9: ުh &YdWyM:"ܺ2Fr?[V#+~*M9qj{֍ew~`1CEeы?pk]ۿu .Ai$1f.0 ImDG)" MqcNJ{eUS4˹BP<A@9}F]:Tp+)<EQ:I,#OÈ$%EBDƋH"$Cq^N_ (|GҴʖm/@;ɓϠ͹ZJ/L=zEF5j2+,+جeqࡌ#K;6k<-d4EnZFFGmSdͩ7&V(rE9c.t5P9iVB=:+`s['s1|5;5R:;ˑct+'cߖM?w'wUVvA AILƕf~i;PBFUHsO香6jsun'jpI{/SlB HS6B՛ @-!# [3sZWPGL 15By'ߥ)wۻmpCXFP(˲-fId]^gFzЁ-7ϢGnG7ehjY.;~NX2Iu,).\d@Tm-I%Y1sӭⓂQ&=,qa;SK[Ov0CCC̲nmj=hG`12q91;Z4vg tPYХ>(M!s*Qzչ)t EzL,ZgܿKߛڔE/ 1" ]" +\}9*C^6= Ik+_ΛLzw"[\ 2|0ciiM[Y4!r!2SZkz+ŒGfgdMOe8mnI9L]lJņ.9Xd=F{^ˋ<1{Of|D">bV1R۔UYjH?G 90E2fDrƟg;Z@ɳ|ݐ˱и>2eqD`㻆!|TД>kX[֋UA—?\V*YCн6. eLM9+UYNʔUG-]XzA [O2ܺ.#$0sKT>ԓ>%ل*VP/uYXAy]sK-ᗀsaexƓL)z۟@"=lQ7 VP#4gܖK9*P: 93]TЌh&NoQz/.cGHYDj4u`PH9^׀NWuFw3K-ӒPCb\s[7W0t^7|]('H lH7F},tb7X^ݭY"̱ƼG Fy>LBeoCN^l05 (Bx4@)`y'_Pq|mTǶ폗7?mذȣUjotOqr -7N0Qqov c2y~GSQŐ:r 9zmIprIxc@#\ÄWH GӒVR#lU]zfˊ)hS\ cq}!(J:F,l9cS"n#˔Qw}xJC$I=ϓTb-QX-y|_lGr$w:ZFLqf'8b+ s6dcjiM@[Z8pF͚ޑ|j[' 3r~Iow5*¼-ZPV9QW|!+-@v(W -aݧ&? ڲPMzё[M0>7 㢢ɀ')J<rH鵲Ug TA.:6϶>#y{ՠXl@] ,;*wm A&, >1{\N@'i90Xc+]DǂFϙK<|q(?wIȷ -.xGޗug6U[v0wO@l=rtF5Ǎ8k.C>YkLj*řG B+[O;0/Gok>䨧&RG 5AnCs|]{Can 2Nc- %\8J߰];_<?LcI,.-زS̠?Mces{UpkODvJȌ?=Чs:9'I!~QDGzuCv?ch{\m 0]n\GSVr%_h & _S,]ѱQ嘦nk1W# v#U/ȶU :13`;D*_xhxzbHn[΃li̖DK5-R]`K8I7MEx5σyv}$xoحh]eu]BH0$H {<i\pY¥w]0qw~d뻡@M_d]]Q̏뛁ٓn b" BB1K)oΟx Ntc 8h֥ۢGK} C'=8v}|RĜ`)h{G̴IְQ˥~>q\z]9 ~6ּSgwczd<_b1٠"{O͗**Z3 9FkXVtwamuc b2U(? t8\ra(kjOSHL.k a}=dɃa궈8Qws\XQnjnY0潼-/׏PlX N'![06ibD`^?5nnمӬ||Ϛ}pؘq %va<>W1NbVp# 2^c2C:@l*ˡ>SuE:@JO7PU>ۦ*ihƿԱ* Rsw P̉l8F8%Fy zz_FIGZ3RG *D2{q `?e a@6^y"-p!J1Z\iO| C)f6,~\j%[[ݢ~%#FIR4>q]Y0]߄ Y_(0tXS9ƫoH;O] ½f u|#nnedMan0h'Mڸ!^Z,1.*k&]Me}$DPj߮e J_ͫl7׽&S]'@]pfZvzAƟ v`OWzdXKio\[=.X~M2߻:6/s}PL.@3_Ily=d-Q c2"b4GC~=?A-qLo#) 0Enth K5 #Qbȥq\ol=nZUϜ ]C|ېlVD5>'}9sؙޗ?V -ݾ]-ֲ ڏ ;bu~ifL j #EpI-sWEĹNP@SfW4x8P4'R#vf$yZ!nۓ͝|DؔkоH1y\Jq&r L+eVI)O墝a »YTd]W$\^I`KkNi:kYd(<0HbhP;OKJ>s*;1#SƮvfF\S^(P醅擣&:\xq柞p(rwEi 7",Ok%b{}q雑zy{e͍znGTjLfNEz)2kipF~.׳3XPī]^?\r@(@'m͍˄ڹ4xtT<% Z0z 3's@[>4w{:x w *qI"$cKk_幃S޶{+\`7 ^j7k}2+\ΗXez9W$zkW4HrW дZ5+te_B2Jlb4/n->ϥEH!_Ҝ:\4B$C$a_=O|24S;LBR8$^"+] $HeDiCMM9ODM'9CV3blܒ}`c״TKnPx_3L}7_FZjao:~|!1t# L#JVAِ2H | qv~ FҺ_'B DJOfRč1!P/l%oLs4+#CY K^'%&.8rݬn_l@~D bw]$y=Je﹥W%:;9T暓aZQհO)bp>ᰍbK΂X[ODo6ax>d%X6 8X3 s<).bdծUr  Q#vJr\ߙr8*E/(&MmKY7tC{qY<<5.BE#ۢc7ʓ#Hm$:$8RXt\\<;D-Jcё)gbuBMf-F='S/x Ѓe9X+~O)MD[S&b-/ dPH6ii(8P j&l:`Dt{K l4{*x:w4 Nzq( g_Г/n=k>B1`k\ {,FGZ5bJ)kZ/vyIm#^4%6~n0!# `{hAS"5)ol,Qh#m OPbsr:Ǘ'=HѴ6):mh 2;;Ke<'G93x 䅴D~Wkk\Z"8IpyAY ؾ?[PT,Ɵeµ"Ѝ[Ʃ" :xEDr -P0~2Yϐ5\-E.sEGυmN2[rnh즠7pg3hoBObo+>b)ˈ,j^9 N4#$14rwV.ł3b:~S #Xb5FߕK=V6[|]frtER_z(3gwQ+A;,$:g!APuC˗TSmjY\!G >G $_% 0P+*|qD^z$-LL)vT ryvMUu!\nX=%Ω,4( K }.\д*[dfkn6Bh6ˈ8t+|GnWc)Hch"]=~\&Of PS٫$s)$hS`2[ոShQG4Vxv4|ሧ<"$H(fvHNyX/plt8vdR]s#^#Z+IH8p%]jrwNDc?;-kzDóCO`1HDD ډ$1sV`0\u:gﲤZhm9'2Xm6mc)URw'3н@pLqp\bM Y -A#1,vf;JG$*VȗҜz3V|:v'cW}\tq\V5NO\RSh#F#61+p1ʹإAϤdL+B֛:;k; (tS4wwX'Af,. })7ɐ#?B!q]xju ׍-ܳo{H9pW  ꗴ?sL< h> `HQ 5r]!i?N:7(lQ?84s9ޢ4!ىQKp2B$9`ժ7Wsm >1Ew v`4PسC1*Da5ÛmE1>1\\HAU %@j͝; UI}~v/AH[/E/~W+C =KdGjwZ |Ŧ׎_^mZ90@ߡ[huz K] pTQ.'4Inl zec`e4D-!d )WkFڣb'I&,9ĎksO<*yɄCx ^9 Z_񠩂L !U !hh1R'p1v~sm&uIAEBհ~31Gǃ3,Lq=W98peːiyPɬw%5os| &J57w)<~h )+6 3Pm WѩrA i}z7E{!&칤Q:ـf4V9X,kVfR[QHaǡCӸCm"9=hȷo 2i9 +ܿN^GQO#[ dQ0K00r"SVgt0".R)$H|Ԥf?n `&Ggҏ A`c,@2sA? 67rB&U rs?`@צX:fSġ:ٳELF.i[I{{[ T4(\{nyE(JcZzxP$\\t_xX^ⳮf,{HL,$2 E t𪟍|"#r/KŖBdHQT碣.(K a3'ՕA@\_`p#-Sǻqu'?n'cQ[=Uڄ*5y/^kЅm .ۋhoC5zBSuZˣns'sOl~1ims}@D/z\`V' :'C5o3 A8+#g.}'9-.pT.32ҧ"֥l͉J-ː-}8;u=!ίMPIJDN280Pѹx˺zyQQcrZ?#X_`M ͽn=ξSE ykb"~iÑl=D.RdYt, I@|q1Py7㝁tQ 8t .I|uj 0}ZcV@./jn_= 9ܼ%}x<ȼ3$]ZK[Q\-Ӯ$4 90Α,"B͠'}PZ]`x:]!ظtn g:|a. W=;i6~2zr-Mua8pr獪qNQ;^EҔAYzd" X)Lb8 Y䨚z0l-Ÿ7CS`2\@"I HO˨5X1(fvq2暔LK/\tE:] rg`sOˠl2SL*ؒ(bev@|#>v63KjkAt9 ՟"|Qhmny\dJb`5َg&IJn&_t)%Ci0>yVСZ>Ϣ~D^dnk1Xh^_Y/ VZq_Vv8Q Ri8w^`-׿q"6-uP#d*vnlDxg}/Wx.ݘk#:ѵzĆ|v_!YFDp@i>n<̔29~M}~UtR< | XIlP*3uV1uԢ SI]'gr/I.ă51TfYA_>׆}ýFy|]uOOBiHE8.+f q?Ippw쿳 ̙N$˩G ar-"s .<)v*:G~*3!&&C8PZE"0DDoO4Dn[ۑPoOBFv{n%5L:WӸB[%p`D&gРa]6 ZŧP޷qvjG>g%%%(=tM<=ļ/OP]ԕ}5;Fʇ^'+{nK0mPRu4 [ TQґ›;L3`h2~HbLk=sgkARGj^axi A/K/ovSpCFK݀ӊ9͍Kmi5ypkp%H:I4ī#dHNiaǿ%f}?S=ͫa½&7C)N(L>E3{I< KB1 S;;11Px_K}Su:ǂ)Mp4|yMʼnGUDgh3jk1A:uLcQ64#amuj$mԟbA| s]+W"2MVŽ7_$?+`j3"'.H5b;I8%F8/^壽}q 2>{8˝#Y@lfWڶ0*mGMX6 ,c!ex٭TqO/Zړ)JX#"Q&W*|'~+43ŷkYnyB4_Y`C7VA_\f>%| nK:+ikc(TG@~(B ۭ_l>D]HO3@ M8w/(EzFV7Eda?8QnIৼߐ%#eχ(C?Sz6 ۄ6{jn)ݚ%&=]b֯2:l}=!@cIlLn&S"S+l~ͰWF#._1C-C18-HT.\W#l#ޜdX.c$!cv{$䠀䚛8)!}."UG+PMjm*,O%b>`!A3f.[//7byNl,k j 8Ҭ\j 6΃G?sX1{i5_ޅdHy+nuqkz+8P@1=I7A5?]° ʿB-J" Xy\iGy0Tqo3>wW,0qSOxh27Q2k tӽ՝T(~Cޯu G#Qd`)b6a!z .6^l2c^`A%Ǟ =R1&FŹe:!9a-%̪GfӢ%q \ 2H u®srZLuEG T;5 XUf(f?:9Ԝ{Nz(ށD n ﵈ΒC :KElou _1gz9f?BDPaHbKsrSܞw p"p7MHhqXv>!mNK׵>l4yyyv`/R?G J/Ʊۈ7@#Q3ֿŻV͖XsFuZ#i/I)XT=QoLV9Ӗ&հ 䚺C0~><'hkэo*x/.朚]adQӀw֐8U{MUݠ y$L1]ʆأ.ߕ^BQiX-i*H\2N9G#ˉo Uͷwmn_ZLVtIR~ݸF2z!tKPrf\Y0 ZncA)(/b|jS$~KA=>lR-d{!{ߦaVLe -\1NHBݑy2w:z f>zU7r!n9 ڡWM"|WX %\ef!WyW?;ɪ}%ka]Ld8d.Jt1]X%cJ_&S]бM8EaT6r^ƫ aM#TZl__6b׍4ت<`%|5v^jqGF/ܵ#4Wil4BejEX`^Ѐ*uIM(? s`͹i`i /;i`f \qNJ&a~D[˫QhH/VY`6іgB>( BCTFY|ӭ "&#H7sQL\FbzB7?O>\0fADsK&!Z""iQrSx'Ky}9Mg\HH^UܖS9rx h t&ƍ;X[tKƧ*ny,a_猡SmK:ezڊ;rjY&9+ٶ0d h EHY߄C9?wEg'9'!: Uc gI({M^btn]bF=l&2ltXþ61&19axQ" d,>$Ot H&:>gM i8`>f|UuetfM6)_>|]qe2i-~x]=5hD?gGM]^!_`Lx>?Ki8D`@cLlnH&рkJddK>pE c_6אh.Z_{򵓃H|Cc~}:?j`.0n5u l˥wlBh]ں,qҿk#'Cl0/:w-])G (f7?c#ehsa@c?JFR1\ԡtҺ@AO'jUr3xyq ῏C'|V ;"ew. lW! "̤O&i<e?Nۿ\$^5ӷ 1+8ͅF"ԾY$*nxB?ﷰwj; (s *.bfRiS~X}dw.$ RJL="PGrD|JYdX}kXQ:zӜj?Ф( {R'.S[W(L軔㦉ܕ}Hy.mgrʑB9/ (+A#/~&{?[ڻ׾2*?3eߛEܞbϨp\cg_W- +? h-zA4'߭G@&g~'×A9mқ 7s $Gm,K#9.Fs}[H뾌#{&Tqs)52ou,"^;JLFcBx6GC` 4ߚq`f uSQcYQ!?KK(ԂZ\,iiId/ 8fpx@j4Yϲ[@YY4.EC3:w!7 IIF~Bi/_7 Fv}Wa\ E@{|/ *8o B!>l*EbMJeڷm^I>s{@F W ϣk !qC)Y[g&=ͽ(sAG }Mf !ǂ8A8ny9氁ǧbBىdrm!Z=kY>Rdwx4*)? A9RhwEٓnO~&!~VTE| jp! r͇Ie)ؗKUJFMSo1WW'2}]5j?-TSiGv=QL:_WٖisY}CJ$PMV~݂h ;ީyYsd77JYK|m}8@{)f08otET3##).g }/;^FĹ/|'\x``k)ĘN9tv8#JeuȪ\Im1t ܭ^Bc9ȈKeG(Qܾj)]/)$­i n|kaVPOElHE`}rU' KF\XviAu^bun#O{jdT3Nz nX~%VKXT#,Krk^!+}(B/[WrbH)F3'f5DVȈ+w,QA.RfolMyS!H$ZfA.ñӯnR([>زlu@+Je0lvڽ⯛9iAHA}%F]5.eڱQ/{-JDzvObYRU[v41<˜̩gMv.IvBPP`{a 0F6|ǂ?_N[G ޔ1GxZV!te%:I:Sͤs4g*E%>;]Ss l6㔃'#fw2Qe2S,)hLj~fnPK_{Pe:H!W7ga5rxMdNDD1!>b\,TRqZ}CJjX=%'@&SI1u!KI61y~c2%jV4+F{on\ӻ lhbc,=r<φ#\VTҺP@c<=Vz}uBGU_*W6cgTiyQU 0\n!ZLm5e!sHrlKˬyTzL:s)Х @cHx^מcbӖ~_I]Bҽp+5vʓ׺Y h,'S] gj1 CK1I]cYn +R.f5ʱRHe"?A):AhK f~HT'Y|%~*Q ( @%rC2 [u.|OS x22B uZn&JxJgd*yMMv^y~FLش" -$&'!">)49]RG?42zm[j D p7 2p ί^P"i[fY-tJ37rB) +FAҿ$Df}9: ~Xϱrc1J导QLRM3E.ͤ`ШEpV6pj[Gwj@E5UD_f9Z4h Y١YIi{dfK0[\;/9>@1p*>Cp ڌ\vkH\F)C9y**VA?:jwlqV{IN38۩ K@zfyQ1В=,Q]wzƎ]uh[#&,I$}K[=P ]?moQgYܸ?70yt0; ɬol&Gz0U3d;y &SAиD1hMTg|DwD'AΥ/EaTdkvo1ʶˮB%̚dqp9 .ۈ"' 0pF{^Ddv`ON`\#Qڡa*}#.\que+itueEW@STlST]x[[>L^B!}oޏ>նE?8myqLֵx7UbXiV{ X>ߙ~N2ykujFHř"pLFFi[G]3C[3ΓFW3D HL HX2-)l,?ۚ m3fQ[&iݫgPm*sG 3$Yv?qU+2+_ÄPJP,}_ 9>j `C52$EĜMGGg4[WzNkbbY8(;ui. _ Sfh-}5$r:rY~h  j|(&Nk5_e|͙sӕpfŲbוrMy)Dlif+n곝s$PٽV?HTh`}Sƀ83Ex`$Ձ7ܘ 8zY$O,Iyq*l"*"6 H(W| Wk]S@rp`#h1n] ת  8Xg%.cP_LnZ'[_7Q)d6ߨAw?!9 {PYguruVU[w̿?jDnB@9p5:U'P(~cd1q\@rWˬrMݽ7jсbjB@'}_*4}׍+, R0pV>=wclcsV-Ԩ' K$ pS˭ƕIhqS7Qw-ɖŸ"`)7jyÜ &[dSc;H 2v?uTjwH hG!OoBgjkiC՜/ᠱ oyضpLEY?זp'*f9%OiT7 d.~ko?m'u -ٮ"׬萊(Rᛤ2/ȜHlF""~s?%17ŝvqj +I]AQAPjSgQ=<-|Xf"QwYG_ 1p,=[z^h"JURg;"FUa3g[ԊXٻeSghk\ea$q}$fo;i+@1vj"+SBSZG|RÁ.]SJ4qv D|YG4TK8!=zsЗq7GI-wfe )HG>;yEnZx_X!V6MA^ItY@mp]ժIjz|7ZcإYy07+ @?o߁!Z=IRks#aupZ~!|.)B[\6g0C Yk),\+w=ʘCeDSgSfwsRD6ϢI5?Bb:NCP H+ė1ݤZ Z̴M3t5p}`iIRʣ̪  kjR"Cԛsaޝ?4s+M5X s'׀4}XfF~Ӊ^Y8OZ`c ƺQĊ;v}wP)x7 &mޥ(Z~9L:f ` ĺt _ oAHY_Y$<7#X^GV߿Veu7mdds o s9W'?+}-SLQnbkϣkc7~#$M! &ݣwK2_FǞLc"N fSD%(-;p9׷eE4NRW5y{,؎ Tb¬-_N;P%_LBz,|JBr'qd@GK1l_(8xuoEy>C{-Ge*OR]r32յ̫)׽'ư'{K4[*,A6%ݺ9w!wMnUoh ؍0ESnO"n;26Dk>lܷoc[<B&i!y u w tАVĘX F$ƬpWRYր#/˧Iħ!з̢, Aa05o9ZTR(׏]&oN@~ ]x#&bU33n|D3YojB4<" X}۵lxWAQ6,gC*U-`]$2-+_F$U2We\W vAk7~KtE&o}ä~" ĩ؋/oՊ ϩn,GjD@<.eG,m9hLgMw ŇݔF .ITtt0S^LݹD&4Ywu‘S)Vڍ3E 6&dTOwȣۦӀQ0&Rj_*4+4÷id_"Xv̤+A$%_ +[ٿW_S~RJ>]5|ү(L~iq8|ͮA(\r퍅Ax]Ɵfr-[7XڅmP"J&6Z8[#Bq,Cb w!F^H:*C5`w~D(XЃʵGf;v$캎Rgk xT\ cMc ii96`^?xƗK2ep?R@f|RtXg>o7]T_#56Q5#:~}[J)tTsS")KQu5+#M&2e:=t?&*h6) KR^5N< yo0? ]& Ge=Դ?A*ìPEZ0X!"Zjo.)31v Dq"cN݈|b1:Q7yS3x5e|-h4| |0\p0*V5F(qr V[f58r$O sL~Ek3 +( UR z{Ι|fp@W ?~<1EZʺ,E+\j~OPe+w5z[M h?ѷwYrkL.8JQͺR[;1%DT~?0DdoAS3TlOڻ{fxw0~BG% bV]@`ތ]fqemPf !.<9y_\"'%|1dĈpasxʒ# \(sŢ$ "JM5*n MDEb |ϾNTgt$ #,^Y/yRΦ)ͪñ<a@˂@`X[/ͻӚ=<o@5'DBuvnURiSnTqu[ފ[ bƩ0덎7O@RsNjᷚh_騭Mu$hg<*vYF$?v9z!o%ilNL/3~.AQ>g=-J[NN\^nb3^N]"W7:Ili{ g9JWcB/#9=mR\hSX4c&> bWsF;Џ z'cZA-P-¾uM y\)`,SʸBuej Y((1kP uͯEWԾ^l+˕[ɀw/mƌ[0+(+xiSENRStg^-qA#B}$4OZd :7Rh^s<*Kh7([>,4[SҿObpJ{<>͋ߖr >?O&0i2fF%WbMw1 [N4>hq8<2s[@d-s  .Ud)ކ0Β."<:JAjx&ɀL7mu/M >Mh{HWfe-D75YLFbSH`kO 򎧖S8ok.35D;M!|7Lg[ %PVQG:F-QV!A6eF͕s.q:J$m~H>i'_J+*Clgmd(=TbgY?H")S? &~pfpȮ:;B [N85 D悩m^Vb$$: ZA:bʇgE)1<'ڮ\4X[אb;;K-3%GH +y5QzDZ\^v%wnHwM _Q[MWQY10ͪ<FcU`xae{cCQdJ])C!]gi: ^87-6Y ze!u$JI55y9(" Ac6.xܯ #H}S{GZ)yY"`EqŠ{ ,u#Ʌ~ln4([A#lMTö- sp4Dsv9(w:EX2ɔs72cc- ]&ۥl+Bӟ,nZ6<->FGG8 )f-eTrr 8JϋoZf)J!udV8ْ:+t =zٌՖW͙>mP9T֘ Ǒ:e,n*0-uEzʲ}Uz)NiX9A1]K_:_yہ^滻R OKS{Re6nYHg'dSƒR干 owVb5n1V4}) { XӦg l: *Ӷ* TV2"nd_ AwI?ʟ 8EJts{ ńP(N`kLe?r:zsόg/kJj0NHnrѵg:Opc}~ᑬ ܐ]O]'OK;shٗƐP1sBQ)գFx9}F6,j/k=9 Co> }}%fgyCJ4d_֊VUh[g S7WsL)|E&0ډԜ+Z3u;B=I3v`hҨD>OW[b]83RJL碊d>pإbufNs6.%d;/9;z8&mEP4t%Oд&ʖ0Dh]C)֓߻WahȻ^0c#NV o}Y6$,%v8d '4}i1iB{iǛ- 6+4@UN62!I{EŬk߹Xh mM\Ehpw'ainbw:/?-&kWOU,Z/4B,‬Kˤpr'E+\*N%)%7e\=6:NJx)ua[I4ͺ2c+)ܷ]TZx߶x_L:txHQ)8ʃ#`U&7tDi*jTY1ktcjmzDaqEdR LPZjߴ98RRqKDEw͎zsǩn Cr` #}l~Cda/&ミaZgnԢyXP78Lu(N{ 37t]>ݍmMW+y <0j$2x'ρ-n`}%D57ʣ*))mA[Yނ$iY<U>bEAn:ų1tta MiJ׬ Nm]?>ķ2&!_ ed"$u~c΄4UǿB5OwΥ% ֙Bn-bb;B@Zp E2,rxZ^YiR9Qؕ7.ӆvZ2X;Jaی@{@vlR1.sN.N{0P^4Pq,;S`p,I+A 46i+z 1*j*[?yNӒR)C[њs4k]bDZ S1G9TXG᭟u(nNS fpEn&I1C{riw50q_p)BB8LE'C O+4(?.?ݻXju>{;hT50R| xi=B|}lc`.9CsP$~ 0u C{]H.bcB8QFE Pfn1* `=x rik \i*ۆz*RDdmTUz r,MZnZyG[&U]9睥4k=Y:NGc)})U:6#T*ؗ,s6Ska#vI+ x|o#=V{e.vOmQ{w<1UWO+3Go/M V3_Kl2ޛt(#]Ng =YTe7 6L&DsT8ZL~ۉS+5TLBh&m |0%DC{o}24 Y=Cu:7`aP[rvETxb|)Uª*6d$L[O;*YF-+W/MQk̇0+.Yg.b8=db4..T$`Hs/(ő˜as,TڲqX8"j;O15Q8aҐ'WL1˃Sr<u5Jǃ^Z) TZ3ݐ퍖loFnel\OP0wa¶K7 G' UýZ!6Q4&oQb |-=MR%D8ݴ>(&퐞yPCofX{݄ ~lxt2' Z*C7塥,VU i!R&">L@Xz[\6DPnj KR?ʂQAϕ7<|eɣ]/5'˰]1Ԯ%m\ӱ0«kEޱ(12O!6p JzB |[g0aӏoZwFJV@5 ̀(=ϼbx}$q2]@U"Z7H;n]<Bݛ3jݐqԊ$7Xϒ5XN$TRg^۷`)@c^Aпtp{7W*ek&B>zo%vf$D&e=kKbё_7k!l@!^pD?Qy=A 3XJņ6I{рθKwȌw=wlC,- dاbQ-g[>{l=㊥YJ-JaR$$G'#=ee953*(W{D3%:ъOg|@D0A"kKPĺqr)diȀ˵;z⧼̱4If$ jTR8lV9D\_u= 6fU^e^Xu{ǞfVh]n :nMUv\۽NzM14=MMsv%6ͭjx;_iM`yA5E/0b{SU#:0Tˢ $Or-@rMt U-{vI 9N7wx 8~`C֢eokrG_Л#iku-}OhG6]p20 tv.|&/`;e a3~q{4ܚ5"eGp] LZ >B'̧]8sQ;jn@nUQvM1muiQFV =h hNF3 a`4#N=&F{Fߡ"FӮKdSЎG:܌xXiXO|F!L0!aMPJ&Z%!?>5; 6dUт-b?K^?oC&%|KuA/~3:I`~'!V* 6hemw2Ȫ%]+p'W3.g,UnR76 w zwSlJ.&bjdڞYiY'*;_Tׄ"Olݪp:o/Xn!AnLƲ_HM|Wt7?w)Xb&S4dp+7DTNJ:IP%śRrzє#afk̜(R,hZ,/{ ]kn/[;ml^;2Du({|4$)^M`Y=i>{wf T\Q%ZbfҫirƊ60^r] cO +N;;yv@6)9O4dNi:B@Ɯu E!˳J @a= !x+vu!<ҁ58uaR}"R\l3tO~7гKƗF GSRƩ)-y_֯W"egۮԺ՝hWUUmZ$s|/4!Ua)'m^u7_*}BI.6b*cLcI.Q*,qzad]FwGWE~ͼFV9WK*-xƇAfRGq{$=^}u/B`t4lgCº"+fUv4yJBx"2'' qIn]E3B[ڏRza/ :D`?ftO܅f@pZFվ#HrUc)EnJ_'[$L>N';^5\w->_ȡ{wؠO7>ݕ|Urh<+\k믖3C.L [?h1{rDJnr'O`P5Ǚ34OUڣw'Qf@~&nB962_ J;V oR16q 5o`X=]b!rlK9kU2T5/,wͬ%I2#@r:UY>kܙ%ȃ=iGջqI?5 AwUi/xbfBZR:XWM{.Nr۝[7w@G}iܵ_GXJ-Mvj?pq̑һ {EM 4>EȊ,vJv` m;U:9ADq78{I@ nfg:'ɢglH:-zrC<*aU]H5(ղ먾D ʊ4֤".&-e]$M7 ]Yа X,fA%WH謀go^A ZRPfo+ bBAs6"L6N슾,C#1_NI;#PG/n/@_b( hdb,/EM sA w"V=_TjךZk'<%5mGc+$k t se-"Kf޴od(x\]\'ےC72h#+t:u~2Cs` ȑ,lOh95D&Rno/qҴu*:rE-kmGi,~OP128;#u^GyK`ʦCw:(k->wšsQqг/"Tl/}U{E [F+aA%v9^wOCQog"OJ)?D:N9z |XԍJÄ#óHI#Ac&RRPz Ge>P!rށuct )Xi0 bZ{Jd@u];c٩pm O.VX]n /!6C%=_Wy(hQ YnW#<2LBq;@-0O]2^[dA9-?E۴,rJ+-Fnj(Ɗ(˖^X5u|, A(kygwa^ZqJ4cX7G V.MXZԽ<B "u  ;rRgXvz}GmR9vҀlU: w_8uÁQ8ED|%_I?,4< 7*qRǣM/⸙x8x4ޔ zYˇr@%8=y`@{ZNU'CǟnmĿ!ˑ U-$Zd(_'ogN|k,*jNsst6۰XWDYRh1 WrN<ꔌ"bz/#ʻ# C"lh.!<)kz~/XJz>BIv XNR{`@.g&0ۣ0g D@a:|>,2 g9]:V؟Ɯ1nDxKbw΀ %j-e(ȴۮhwv)jm 4&ӨZtwU8$.Đ#{h _PtŕlTP% ᧬ ݦ[M9Jg ?z_&e7v9vK\E XCϮ_4=]v#)g%Q \QM 3ЬͿV+8׊Ua͙E&i!5UfH^}w\('1,CiDbNxHoZCB)'f!ȐIs'j,?MkPu_,tܞMR\hdX\6lii ;M pcAƃAkȹ\xYk_X "F ӖCm g}7nͯrPim&QajRF۹ 5֋Xi@^$t٫Qsǥ11(#&C\2 DSPXVϕ旸gŦ͈kEF 34홇koYV2jʽ"M+Q,'<'|8s:vWFsyȕ P1 &}xow'e}t& Jk ꭒS{h?öz"uK~;'/aV:xL%A˃N(%EIʣ|2!>IwlO)suȏ \0Y5|soR8e6Uʤs^PF?VLvnB!e&)Yqor*}MVȾY4yf2>HpEóQL08EC o'ۢ^8;7%gWFЈ21u`qAG`\Y&«?a]aA"7;9>8(P7}=8yn89r.c FEed&o>\C 4Nhq98;}'Y0Hz-`E*ɏv_CF!e5TmiBT/mW%S.F,Ejc+sпDMEX\a\ bMGf8>CyX75Μ~%r^r1/_VnvGa7(<^ 7GeRUw.|g|p0^B]DBgKS8rV&jaЖ` XiyGp5A6 R~A*J2\Bony@3r-M-pA@e;x:(G'%l?D/(k@]eT: ycO{$<_>+]s3&&s>*^ͬH_$?-0o/(׽U3dž&Qxd^U6qIXdyu씧,fO襕ɴ7jU3Pt$_w ,SBh-0.Z `Go qF9KO39/; zLeڝTpVENRBh"В܊= @9djW>f/ 7 7 ӷYC&/~{1ؐ (]&UV Wdd;ٻEՖh]Nѷ;)."ñ`= 8-yuSLfŜ(%:X6;,Veͳc&IC#ι5+iI#}fAHv=`I]T]ΘuON!y4[QyqM` aP"$G$7!G.H[e厅Ajk'/&H$jP-M`p.|UjŽAn+57}JF1G%-zA 6'˹+He`$\g &=Ts8 J %/4i393}[Bra#$Ȓ0r26m+3^A?fkFls|{󋯃Qi' ow^J ͑ѐWƳY\ȗL+=nf+Rznh=Bfvd*zD@)2fu;(p -5.&S-ԫic>.*ZWQi6īyM'*a*{C^[VAz5.i$K,JO.DȧB} 5BdA%W'At(W]G@[1$4`i:ӬWqc['+z91CH*K>ٓ.{/W? %lxBsRE&yY%Z9qIbw@ 8IԺtne=,n51>P'vM5jw2dHěݮ1ϙbg}moJ'Sr_Ӄ$ߌgF_X!Db3p.x27-('x~G ‹NðoMSQ %F[Y`%=+r-yH*WX;Q &l [P 3_{ih8fx#!2u{|ں=%$SC4 x(U/45\Cy!fyq,$`u>-9JERɴ b zX!xsmX8 Ukt3|4L G6f/nd(0yJX vp6S:Qq D\`jLn]UKyg[Ś=:En1 }L29:D3X1y^-( \|qMɀHzp!"t`xLDmѣ<0*@p8sPEOkm$.7.Ǹ~,9H<[0]?O0,g o:ӸEPiԡcMj4mASMB^߬` {ߙ=H@Zf w2\pZ׈hH+@y~CN}'§x Eўa- xMB]iKBks$0vߐ2\>`*Ji?i媰ONqp %WfpEk1MNаN}Ÿ"4v𼓓FS⟇`.KT.ܒ]iImW{.~(V4#NtUK>TY-=}Dv+@?^p!TEEE\.a2E,BIZw&Nv9eGz-t"?';R;z}qBލi3e*1H"#'9[Kqh "arXE|؎,*-E‘ }aod3GO ~m"'x=c}rd~ ̨? sZw[I qK|6s6u 5xG wU A"ؾGg0Xf :\2 X[(c4zH˱Tu' Qp.`>R{+ ?DZRB314E-Ig`(= :D|0 SKn$vjD1,Ař]_^煩InT ONҫ#:#P ښR;=x:7fW77K\6Џpdo#.x  #Dp_D%)7HW[FP lWX[Hi~Pk>!e_rnTΣ .%{jx%TBѣ0VJ ]af3F5Zuwn"/6;VVXV t|h^X67I֭:eaj/xY.L")22RiU_P+rHnUaM>ė2dSoKckvE`Aq({'AaLc`lX h2 z] 9ێ "꒰@Hjٻz?>1er_1 V-U]\*NP ƻպRYأ PI3t(+~lj ̰ǵݩNq #BȘ1 :b\&à# 3P{AA~ < p`*EzHAcKSEM4 _>AEISvڎ+jBʬWY$@# )vx=)@UHDyN猺ek1o1Ou1WNIODYN mck,¶G>ir 1LYȓ8WTj8VL'F'FT)ϣc'sDCë#DL-RA]`)Tj+w.~J|޿i1g'k^qʹLsi]-ۄS5lYc_ HORw>q]Fl yeI%O>K~ٽL+ɑ+W}trDaP3e13L!`%/2j%bıl(:v[BB'⸤LTba%Gw$2\#䒂]&e<'݋v ¥ܭee3319E98yF^uC{ϙ<}wܭ$-LOGw~SvvմM4h'C߇hYCB%1=^8+cQH gF sZILn>ZC˜8s5p*b $qvQ檷,4YC䬖(&<͜ Ne E'K^7CC1 "c@P_{n9!bx=%;V=RH&` U( g*<6}ymĈ2B7Im}\hyJx|*<'tDBѭcvf"] EfD﫤m!"M>!I.mtpsg[@rI=8&.ӿ{4G. #AU60p aȞm,t}rI\KԦ_Ey):kB9DŽBDԛ޴ P[ei˴lPց3=)Q֡ha,ʗ]BfOi1w55=MMe)UHt)3-IW(m3Kv*+H N2ҫu%B2E.˗yb$6e]OZ&t2~E(kc|NZ!7 P=~5& z\d&?$"0 POӝjN}qk+K/sJ!x=Z`{Xj&U 6>3?&NEbbeړA>Խ8~o'\wfRj| 9 STX9r\~k3ǁawoK R25iw=h_ _OHߐw&ѨXٵWMHԞiXSv2xM>{pfZ~ PlL0-n?E5{h7\/Ŕg^ڞKQs˭){9)ydz,4p-$?,p}>N"Ȁg(mz 7#>֬[HW&Y8i=\w¢ݵecj$x)*J%gR&TT]%f\_f:E)0!6K2B7:jDܺ%N4hho^]" ک5࡬ߕWL34""ygCt3pCp=HPo.{ k#7Es(){5yjZ%!8bD0'lBggk0fpp:uITVMdƭ AQznTH<1WNfg]SLn'LR]v ZqaiY!d uTǑ,c2ՖP_a6Uzi2Ȩ Y͜;q l>(|q &_9g&<](;c&$mkjn\띕X?faWU)6?\ੵ+[U8f^n߿66/jJWayt Wmk_ob䖰ذ{h Ѿ-3Oָ͚Lժ-Tg݅s6]9cob@z62^_]c=w0+i^ _ɥOitY`k,ӉwGhL zPf?|K3uGIo r+R-4_|%HNdDVN6xsv}u^-&G:/=d]od;eEͩ\_*7Xo,oQf79흙@2)5q H*&n^#6Q:x_]nĝZe-,xOO[jvJ8 x-2XKR$Em1|lL7pkYVwI+hof 濏~}r: HyE%C\3%g+8eYn(aXo⹸E-}(2+✑JnA֒b Wz}?yMWy^q@Z6Ȩ9k)\*hWm),3v:\6 bqhYFժl yC=>~ ʱo?=Rm_ȰuRCf@w9͏. sf[[q{)ڴ2]̑PɃlk3dNї~;uuWX㪣n6 `Q ztz&:?ad[M) p*_I K,GS-@8ِEY'\ xW`?#d,JMAH8B_5w•Y@#y;_f'X!41NL.y\R]Q3IjNpiŠ=z,.OڷA`e&~JH [{vo\5uTj^Y<]1 铙8em{9qX@&0|7$FQ jθ|`Ll0Ǵz0e41 P5.8wTAR8%uM;^cE?91QوHyR /YN8_p fY8J=eiYZu%S,RG"9ێYYxhB`[3FL$ζBQ29=*>"_-8 >~44^*NAF%nI}q&607k~Axo8 ݍoGG 5jxi6eWEϢV8!_@jŽl?ODa -ltJW($wdl&z{4I(vț>Vܥ'n\iGM:Ap;l-(vxa6kiWʒ&]=Ɂۄ8%wgiqTK8m!^K)ʾ%8®,̀s/41c{VPR5ȵxjcb+T!qgϷ _; AJ 5"<#b77j?3|4ܒ a U>Gfd:}*%f,o7c\~.)kWo߹w P{ =[U'emUw'M{8rX1O(/BSWhMx8@äQ:,#CFu]zFm(OGa#8f *.H%sU=Qvl۶&4jȺ2\\83)#d ={ Ox^tDC`3=wUx6w>%_[ 78߱0{H}P4k(;$Tn`']^%U;sMSe(\ m_2^ 00op޹tRk@yaUߓ8&|S-Q686;>P+`K7؂ }U"Ur"tw︠?3!q,+肬/{FR]kLw2YD3B9S:Q<b++*H˻xV+X/;>tG*|@Gɖ*6.%c9#7|URT[&MѮ'֞B~Mj7 )['L }KN2eRrwaLRvosn3FgNk[{$ل8Nhk"QD2Q۲IFD{,E2N/pծ[d Ogc8]02Tpǔ5iQp0T$cЎբZw@7l}K2vy! Ah$ćå)<<}tI-Yh"B#ZS=~w{L )Zm_1%PY'\ejS+:!r5 z[عyaKSl%'vrLG_8TkɆ^W X1f%Y #]JC\A0ި#!Q LtЊ {o<wXx)̯l^IH}|G94[dХ;݌5ñj}QAS"?NTr,Q V=a),a0 t=diD3ce if _ǽ)-* [/F@LɊ`;{4 e=MBo+{=QDS@a_ w1;sKlBMՊpEKd{ DvŽy,Ԩ@ƲɵRGRuHD=83:#ܟxje}D.=HfB*GX1}!ʛi_b'RR.{JI*" ~wjoݬ2!TXgr^9X} L+b2ݟ;;^jP\sՖ|clG7*ʬ$lrg<=(zCxV%:To> To̙i&3A!`-?jx=c>2!Z0 [ދ"3\jlO@;Q.>욪t'YqO :lӁ oht<qEe?e2XZiџU96gAB|EEx,9b4^~\phίjI>*xkxW;'hŽBAMg-y~Gf`FoD=X.)'r,Zԥ\|?|!>b^%sPo0۝2LxaD9jdɦycѫ'b TQC*/W @G'[LH:>FoxS-8giEf㝻2mz*[ȗU}񮣩{Jup6\QHp`(cFa~f\;H1+4;{qewCUDLA2 b=jk(Ӱ=MK{$t $\\ x܌^R?bn򕾒um1/+۬ pp( Jp55 y| R\9ECȉ/[n>o&;&q/a&+ŋC .p%A.,L_+z+@f{@5魄g4N:Wлd>o(q(˶Ý:Sn:Y/b T,SW-c:rs[ij9F!+;}FSg"ooaXp$J`kg#tz WMA @e'Idi@=sA<%kp0~ZPʒ=}e(Oh\&+4/ܨ :ʜK')JEoYė=XqT*W.9Oz G*pyh&<!&KB]⤨x' hT^+xHHB.^Uö l<(> ,M9)QF=#Aq%$W%+1I>K*?|7҄+??d%9 #]''f_ypDi.judDa3V#=bT8D܋ wHt oG84jy]J2[>Z~f >"+Fjv{/xԭ`éEũ# &P*\jCZ*Vf%7ht -gAnJ꥞RwY & w6hy2.+9K!UD>:zxc t{_+ K7^| rQi )֋Y4XP ʈ!C c(OuS!@)i.Dۋw"Hiad>1Лy^4+amF+i2ym^/@چX.DM>#]`\8|p؎i0|=۳ A&|~]px*d~=Rqm\P]$Up5s^A jƗYOTbZMv?#pּy-Bri@=;w\7_%BwgO~mMfsz`0z/`xG?M}:7jgt^BAREp{6Ac9G1ҼHn^I]doV> S/ F:V@W;(.{W!N\({P}{ԄE>tP) YÞʋL:.>pGb-u):ã#sz(f׵EʎRpv8 }pi@} \i2Rj'4 ҿ&=(RΎ9PY1}R"Vap w튚Q Hf\ .YO>rp5сv`L'2BmHl^`6 nCb0ozVWflݓ05MUgѺn*ZO?ꬨy\8–MkA5!\B|^g\۔[< m^¢7o0.|Itpҁg DU (г=8d%:*?EG}[djT3}މq>Q:> T5OQ0cR'ǁ}3ʜb3Qd:1^k*f my.%qHyF:œnJ 0{}F@M :;*_La H_#g Z-M{MIjٰsp!UXgQ Ӈ*#0?W鰶ʾ!>P)\KG뗵&;K9m%\iS+UW_|mUlr Sx3Dmޏӆ \Q'&6֠GzFo!J&e9f+RMNk;{B JP%؉zW=Eʥ;NIK;`)ÙVkss'F㉬וZlGx![2ngRo8q-8?[Nd6N=}8iX,oTb( s$WadbD۽˫Z b>KaDK~tLS'vX-d:8UlJt 4(V*_ffI Z"v)("|\a޿pn>Lƹl߁r/rkl_tw3?ǂZZiwtpU*R.;6smɚ=ZnڠmZUز+:)_<^_=Ǡ*c8-\7h'ڕTKua+j$0ߏod F*Q;A $1c7ByZ'^2`2ﳶY}oM9z7DmI[LS5 :;8=K G>w9cW"|6_}NIJӯ/Qb˂".kĠre3T̤5_%swlLQ1 DϽ⾚Kw1t]+ȸC(N &Yن`q"-XS3va5 HN,Uɱy`ZZCӿ) *$]w[ؤXL]MW\}Я(m#@p44c';YOH0amQA#TLOv!lp ֤1•<}H?@>j==̬4٩2xq`@`Ue)g-2M2uI*2Y_̾Xqf%E`EYd5y{+&Uɨ0UUc'P$3,n4d2`Hy}+E+@3f. .{ .[ޟϑ{VuQkG _fNF*ғ ((y]-k;sLYF%Rgbv]xT,\D׆|jQWv=W7ٞ.9fhE:〟J/^gAI.hVqYVBԨD_]Mnul!Z罦tԹ{If҉dR3S"_*7/$-tTYR%!%.H`p->6 v4ݦptrCv{{J*ZkN #Bfׁ =~DvZ}/7|;a@2M`ڄ;'Tr>%u QdqrzĺM/rO99qmb{ 1 Udm/zy'[:̖OjC- #@= DD͘T曆` )k - t6!:7bj7sߌ@y2'Lj13 @Ʈd FK:82Hb.A.cy!ҋ@X3gm5ViSꂆUQf-c)>Ԁft5cҏyɉAePM_y8q"j &RSߖAZ gEn=t Z*Kf8Wh_w@lo#+ sk|]C(#D4bк$w$OqFp{XHj6_xRӏEGHGƳ4sRHt2VYX+^0#۷v$,'wO{j("AlO՗я-&Sw6yYCL5*{ɀbx9sc{'tr<M7~6_:I?߷[ "1I[E끀فr:XHܭ%4|lѢ)={lĸ Ck&hٛvtŞ?_{j|yջIG;tۈ f;9*- I A簈q*Ȟ!K(uU6{W%iUsWss~JεPBBW~H̉ABnjR o Ng_w4(b5)m4Q .{:ӞLϔ @@ҫQ 1e޺QTБK1v>[jx.Mz=9/SZVTfb*gNdgy1Sh6SnwdEZ0PFB. ^SL&=9fĬgΏז}icviS,kmJpZDtG- e ;}r~x+!Yye`؀x2_QBյPgɽH+LzЭ0%%@9y  ^Iu<^UB醖#N :]bυ{ax%.LsOX+hd*WRƣ, (w|J9rXΐ{Te%vVb؋OQM+`G`>t~;ԋ ӨqKՓ:aSOۆ_֤v^vqBkzzXM?7^I0^ȼA)w>) )c/(fv&|AqM2ӌpљ*3!6Z3=ykƩu) (<^\^.CKưoLҊN=*bzu;5AQ pRV$BC!J=ݶX1gW`W;gq M=ZiJK%38˰6s,B;'2H2Ln>rZ,AZy 1C{fdQ uv_*'M,$yG$_W~ppBLBGK<u<۬F#wUfkڹnq?#Kk`T򮇸 tk)C ꍶ xbjiF)^qsT3aGfZz\ LsiƎjvcU-Sa`2Ltݝ8W/彜:)GB$*u>g1x44ۆDzhlZm&ثVtrЊlh4-Ҝ-y  QbmcPSHuAf|8y"*!P6Ex_g:iPu t-7 IJR@x BڛARDe ܙưqw#Ք'wJ= D:U>sF|3T-r|4`d8لy ark \ư_B.Й`حlnV!|$, _rQ=F!I'Cm- ^%)tOub\1G_oCFlt#[2yL'6Okn{9b zLmߒG.~ۜxзnXSMMQ`/pZ%^G 2ܑ=5ty~`Z.>;'tF?<TMl .%@uU)@:f aH}k7!hxB^JOCtQ[6Yru}arՕn-_1hP^kV"eay{!թl"sm`PI/F%:,0/nS|rJ`/n yY ^*Fgl`[_|ǯNxX`VT$̌YnV5ީ=dqDx?fT/q"ҠA252f9j]/l@X Rgi*<œF*wqw؂_<5r%AՂ@̒p ޜḘULT'Ma Fy/~U]-{vb!>ىχLF=6qjM"ieaVlk0jզ;`h3 So6AIfnZvxUʟyӗ֕n<Сq[8_ZչA1(ww{{\ 3ZgAn~OBKt?$TTEp.1kLg;*vߝMj[TNuM~fB,ͪO$FA=BI4!XC%_jMB9[hgXNjbʁbh{jBB0=AhǐI Nc"\HTf-pR* ZW: > "rn  `Dѝ ׬O(M:V@vD"\F O|^:.Nܛw [? /j'v2y(c&SS@a݉A!Q⢱ FǡO.A@ ,S~mߘhx'acT|aRmw5c'1<~ulFlm"KNpl0XZvoiѶ'fmޫ{1}t8l9v`6{58)cjln|"2EG쳃MYb#2xܞQM4/ʯ XJEg2e*mSb().a)Y ~A5gMuZUeͧ*i@׻1w[P,5NaªM[=o~ S}&ا-D^f#J(F fÜx8?&@˨*#ʈAОI+9c+h&ϫ Թ)e`Sfc0~ O즬;v9IBj@mTf`%;շ|<_fHFuWվfE_)gB_72ifB~i!~o$1_8D˲p(O~J:TyZEUvƥ8K =(~bLH9;ԓnpW@ xHr'\ RHȼyEE-t9'x;bNUU"yZ%Boc/"6}a˞ )d6R| y?D$Բ3TFޥ8 (ڄ,ArDi=uU V8MoCad0WQ 4:5*a2&vUN 7;"lvDNIJw)oJ ,]Ќd+[i5 w~ˎh 9di*ՙ|L[4ڠ;FNwٮlLܛ$5zvʢ&G:qQ7K"Ҿ;\rA"|.j2p%ҼS:bR(T]xԧi';Ԭ3c1 $ەڴ*LxDë* %hwƦc;$X|Y3M3OZʳWBU,",K֌#Nԧp4Y wBCT)/e͎YgU[dr9Vܻ6*Z</VA?ుcE( CGv u:fȾ`/!l`5Ϲy@]+E_ȻN5lF's헡ߗZ< )Hcm^-60܄:t]Ce1sS_7EѮG@a3PчJbzɅ{X*cĞ"w]h+s|=̨8#:FM}kQU7ܲ-nS܃4.>\~uDT{~1npH)Ѧ ^‘&+t_9u{ڤP9$|96[pĬ4IdT Ah#dJwSqc @ V@v(,&whN,N ,*Ԙe9@jlˣ -E< #E6zsJ4膷jN1 û L 4U)\j '^U]%D H$j|FY=x]:1h}x)EAtyu"mI~icNЋh;ɒ|,Hᾳ$.&,Y L.j:ePkN!ḝ{E)!EԣJPF%\H$x8]l "vcϕ %JJ`:]~ >6%;!!ZO <xAy0U(ony9arKӫfyф=|[1D(u|ts9}+ JarN@7{sl7,(j%nٽ@ 4(`aY_ \պ!6oehW^nDkP+첑. xc4W~y^gZfXsF=ڔDXZ"m]o ZN A3ԠMba(V@4u<]'. \aat]dؾ="3A21T|E ·$ѤY~ژM<^\E1~'[vmOK8dT^aIPsqjKWAƿGUU#|ѣ~ ggȗ8oiqGP7Iq5_JeT3H?۩Ap T71.Y&x{eV$qxйTrrYӹ K1@F!zF# KxgC5xN\ˢ"4?@. \s{t jP7!_ wу_ >Nqkf`V 9^CV>Cuߺp:l*IT=É􌫀i;;9 u_ӄ?~|h)&U `MΪN;|wD@d|\dL4\?ub6kĤGbDH1A݋41d5c8 D;ͥ]3~/y @UW8}Kv<??^ EE@ziaBavc{5")77V 3ܨlj|JL$ۤ(I ZLaO rgޣF2XRucy J ~< }:9.Im8 .Z'p<9hEj܆];C&+y Tkc.ʬ uv$m {c ~dXxc^0p gѼnh8q*\bt,.XY@RD-,7*;7$,9ߴV?SF؛֌,és9bQ"\F3Ž$5\uu=Ơc Xi[;%ʸ{i_+< hsPGV@ ծ[*vK50d5yCԦZ͘w X؇)ɗ|OfC$9kysxBC-QH=JvZ?`Dc=bay2$#k bZ瞄KОf IK{&=] 4'I6p/AvP\bRڽs6sga0L% ]3oM diЮfKitu!kihG. &:OU%al,vY;HYab'OcT޺G0kS~46 ΰRݺ?5|iجX|Cݲ 0Bo`ϣ7FJHύY1&Tg"& ٱ'JnF6kk%ڇ ` r56з?'i4[f@sa-iߕ!+Sir|896 (Hr0غ׬^HDIʥM.g1J1T'6N"9\ԞL-1YFNlXZ#%+) CշPZ(=!ykA.:<=_-5IZQy2L O{@8PZ< 4u-{wd^G L&形m.9T#;Dڄ"-(Qf |Nna98'-?q?a5 錕9L0-i@j{*5VBnªVGʴ t'ٸXUp[xx|q $lE*u~Txiϭl!l^(b|T!zmv9,#_1W\ܵ>eV?4ߒ&X,3:_LD]d]9DF\ #_B~TXٹ v]Sc qUh ~L@~z~<-K%V⅏%_qQg0fi@V(0Xʟ#bx#d2v|ޖx"4I\'ǫu f52`YY8P4( ^3?#Z*^ux@e}zmE#;B21Em; .Hf4_T+ZP\חDH~UD.{ 4+! '!,+&?>Ex[`AuͭY'09ot%gOGy~IT $ c&X7x*q@ wL;;L}9˽[>}aGc4 B@@)C)EBEL@Q2"|?O잟oL1|Od jVƑ; &Nb?9 8zEcxCrz+\: 4,Kr`td!9xeeo6ȵjlk8&XO/ńod*=IZGU8ي1M!&6z\4htݛx_oh8iA; `Rz?r jpI4>;M՗j@AĺBF(H\%d]C{ NE#'X0DOWDc$)GԖBsY9_3K+0jTp 뀔:OY+=5W:6'SfMБi4L٦p+,?!<"Q3_棜OI{ZUvghnG݀Z5bD4cC=)ip5v2ȍ;_b݀3jʇ#^am -u֧?kW[ߝm[gquo})1h4 W]u $GXvMb@6VxLr8T ApD1nz-ǫ#\{֮S+}6*00 X7I 4Co,UUJ,LO\lER/ :e.~MWxгYJ[;~ynϟ$U wV&|ijm=X17˻fj pb8)l0MN!hYX?4۬C5N7M᪟ ݰV4eN#u29DY+V-Z9ɒeSzMݓ>"9/.madfO"*kڲc U棌G]iVRw dhGԿ(n{gFxb.3L`-tDܰl{hx es!FRMY!yP4<+ܢ&y|N );d '7Nة[!cFg;Q\ vhtʽ0:"yo 4&7!_.77;N IOOiL{K)+!OIHMj6djȵ4[.RӇY)AQhڷsU+{;ҴZR?/ O lE!kb\{($ֽBZFt~h"!rh;D +e.b& 4d7JgL? )5{T+`wdYòZKy0{c4N h'n('Ӏ]ks4X-:d$Ct ?|>8[T" E$RBX`C L0u)3W II<($)fZ/d? _مv0|os|)z+i5K%9/S C]짽ST?i}i;Ff&WD=W.s}u%Єv;㻍> HͿ{.@ϥ_pc~kO9k_l[g1,yD T^&$67n}x9u T-Y!7m'dk<:V>mZ.i _,Sp@y?F֊R]BPo[oQ9a1;ebCUk Ji"kZ:EhgK˰42 } f Z86|q\{!«T' MW?)g6~PXl_ gDiP79Gwya;쎸>D$7uBrfۻ_%$@77:#K<|dn] j y? ,y&>]{rAn5Wo{XéUd-mܤbAzby m9A'UW#5͇{,/N!kW,>9QRkuAɮບE%eR1ٵ^Iܽz]1dJ2; *=&oKy<9lv{}Y5pxmͅvw-|\a2)#(4 tn-Ro[T_I#s㪳Zw3T)!0ޜҷhv W:4z$ю]ʐ;DrMnzG=]R7{[/11ZKc,q;ѫ,G&"$4*"<](FǮ)Kn"<o}(CI WϨNs)1]yϣ&<)4H {:ab#w{λ,T&iCwmR$%a7Kjdn9DEwXHM5HW{ Qk#7wk2K#0bΓ]PskA7B\9>4ݓW1,y6 Fss)]7'>-ݻDS+f8f*AEr{5@qS0x#!$ s_AQ_M}h!TD57{2 2[i) @ CmrU+1H_#域OZ*I?JXEbeLqN꧹]4 wMߋBa*x5o?{@}L !ZP fa:d ūhO0-nkR {cX(JtĉEWPK&Z VȔxy} +h+ȇwM+Lе|q/nMR>{EqLm'xv үڻՈ.TkF1]۸sn}vDԫtNDwԠcdgjE.Y]vhGe|=w"yqgxN.]ic $ 6f,۳˞/bܦa0!ٹ9l!H&a\ Nh$ z8elh4U{ GA(83j{Gogr6 djT+Kkk+)t>WT+w5/䰑 ͸@/C;t}x#onEnzͤW;BUbހKJ?xTM^" v32),Z} evZ/ykNZ~r%~ak$JT"q\;mZ'*ZnL* >o&/IώAAhVCNa'OZF-||) =C #:Q@JsJzcb^o1ek-(RA|EH,2MyefomoN'p_k)cm`jtX!AtSkac&%,gOhCrvX]-fy&U2S,ni"1m^Y¦N'-/(2uL 醓1AD1ȑS4Tf ?ū~Il?&gW7.\wU)AV5~ߛ*准dlz6cǾ>tP(ڵV$.CMɗu}˓El Ln;+ vRM:(4 @VFr5'oE9L& \Xi߻5񴅗ހܡP$ )` |9)*e~an[y)tUA)ty ?Y) "WޫFR V-ijv5D`!lvqhgDu삟uOvZ2REW[ rS?_^R^7z=wE{G< .-s(YdکΕOd:UUʹ`=C&8Rӛ( NY qu|,MLl Aᙬ#yuQfye Hwΰ14'(,Dw݅)PSb 0P6J?%N3ڧm)6˕O!/Am=6K5kg*Z2j]b!SIlxtAiQ7vx9M$X{ ^ǗӟL Qνb/\r:b:=F8p&r aR}\,5)ZVÛN?%.`<ܸP.GlE`?IFj|La*F-~qh@mOG[p{ԙ y;f>P|+oh Uz|(L0ODQ9-"1 $ VI.'($ !A򤬒R zt<\*JҒh@b7c| }/^f2)7X]SOeGɕNG-r:!-#kǯ2|~B|VX.i>9Z- .r-A AL 9TJ_3K c4bdߒePĽʙ]ҚF6Ū3!SAľ{qZ[T`{ @W5PQZzp1*fwtmoN `)i*?ԋF4$ܾsvhoH 8nuM!x\E|{,*nNjAD/And9OF& ,84*є&aFy3?"D2bU0ol;~gĩK*2 T"^fDRAe%{Y?htL cȳ/'t NRb55x.Rr}"w <bL65J|L&Ue/e/rGֺTD@#R ߥp%lY[2kXdC03ɘPRkZD97+0ef~,H >MfXO}L:^ >+ɉ}GpF}{4T곭RWy{yc0| ҳfW\Z8cf߯cʕ+&UǀKF8E''M &% kkPwpPV{-ڴzGd^4LP:iu[5bf9q1r 3F?x+RZ8{X<$Ym-U-oa$i*t;.^9c]f%O^MǾFwpTڗbƛ TdNd )^#{*9p!8 ĈO z]VX"&i5KOi%* ӚﺤUS͗Cf].+te .x X|EUbxGMftE%/ 1`JWMt|Vѣs$? /l!!~:]!:#M`UIL?7AT `ݎЎGQ"+K]zYG#PLx#nr; < |q-|n5]sC=pB**d"1-=Ц;B{ @+-FwiJ?E^ؓYHG銎y>2n6߂$Z]24xU[>"1SP:TuY>[DoN+2QwJ:Ox椆mpңl dhmbkP~qPDhW[޹-'RAc0OSxM_a|7"eKEdҺDv#T0X7^!Pq@bVv6qU]}l=n2aa2Z_EW$D-t#}FG[fAxb N7p2yC NXSFVZY e*oU>a)P"j1NO]"U_?i/KԶrDsSla"5MR<ВS "tSkː:_FКdU;1HR &ϿYv0ercV;ݾ=::BS?$b4Sߣ!825|O46o1* weȳH]6!2ѡ^;|2Ք`w%t?a^Hhv 0}'ah7ĒMQf\*h00s)uiQfb$Ry]c1N-3R.݅X,b7fڔ!z 5c*A$VQ$8mt ^t/:.A`MI^"O]}J ?A %xTV?\s+gVDeuZ)ՑVqjY4y>vw[X OTA>Rl:Iu\U{"r)ĉ T mw.W/.7xbuk\j}/ {VHvSyf+lj\嗄Ղrk7: d8[Z']f(x3ktrL Y{<^vu(F' W[ݠnIkVD$)`}w"jK2DzX2#-gB$b*;<(琵Ynk科 k`f q|FZ!fx`Rs؛<);wvB$ӧ\563Ku4|VMJ7aFx=~(-8MQ3^RsK;ud aq.4->Ԅ;C`Iܚ2OZS!)xHw; dʩ#P`̳i=;zʪtJ @ S@ a(Lx=\ &9;O .ğK|r8֕b "u ˶3fHrcoٶ,{Iϰ3áJ'w;LeE5i0w_!tAEP_[\ )R5k3GU[/Tx&F6y=8$SYt1 4(m5GY5uPk#>)YֲIiC06XEQ 0pPу25r ϨucRx\,"c:z-=  ghŲvI+@,I~CrsNoRAG|Ynו8"KFY'XHJ雖&ȋFMҥŗN;0{C]fG`qevTs/z)tϣAѮa`kGIGÌ%<4} I? e/#j_ʩ$s;$^o ˩~ qE(L{e0IQc͵JO+13Ѭ[wchpv&ORzlkwJ. ΢WopNSt5g؎%kӹJdrzy$M6 K2Գ5؜~adP3A!s<abq֨ ",pWXYu~K w"_a AjqpgT73NY*W9$N)d#`8xB̹3c*w| |"<_uadZrLj-خI _^'5V(lm!c!Vh88Vc7&,FhX iUdEk^1#GNY,ʟ#jc^hTi#% @2<߷< ߐᱞcBOԩre7 S61, 0&D^ QjZPD%̳v(:ճUDP9Aۨ?h yyi$r gڧb6S7gс8#NͧpPLO)aWӃ.G&7`)Rq=%1e}'sX8 7v䚈fADQA Țq؍ڍ ϣԅe&ch)S*Սg sygxlVA(בVHcdX"oΝ- f:mf7.^w!TLi ([TxQ6&.Mִ|AvB1Eԭ/,`UƋ[ŔmW %1foGf/ v#JHPДLg,i (Y^A N?%䫺ec)88G"uɎA2f?!NEJgKH ѓٸ>Sf{$J-S$)%Nmϖ'zX[ `\DZ5`t6]>澞k!%*˕/ytMƴM3^v +9`M5Gт =KTNZF#&QCY;U??"QEX7s]9BX{O[jA^@֢,{Y}[_ھS1*qmh "yĮrF'_&<-b3z(A%A?J?*JqI=o~PvajZ+`bkmL/XL7:A_7lԐ}`փ9_\<}woNK)7n0 Shy /1uwAbR6s>'n͎ܬuم]u`2m^uk3#v (+q5%&!"1f@h4T"&5X[<ApJ׀oЖsost J)jUJ3ًo[gQ߃A# >S5VTXT|W{]HJa4olSc.aPyx h!fKfO`dYXоH {zUH:" $l'hmq֩U_{gHoY0i5`S~_έIXZY̥N3y%Yܕ(bhD&ۋUx#7b;*O*9j}=big?o"F%%Қxp3LLoe>OfJ'[眼.wK2 u}ZXwo t*Y4kCI#5ܵFk9uDW;A̭-eb0̧3 @bO遞Iyo:YyHv8v?>0g}d τҍ5 D7J^A}˫(!mBJ}e2mJq%76GoePc5Pm~YisA$I~M1Ы==eVhP<FB &,BYM gCzA=k|"Ze %>YEq.))%R'P,F]e a<$M)!]U}vulЍNl iFR;.1 Q+ +>w_ZPp;O,7 _Qi_4)0 ]FI̦mV-318&# ;qazE6t5N`^cH1;o(,ZSXらu]qٿ}M듷k%)DCinn_SdCyeYNn Vȧ/Kg0^~ZUhN"w9MB_i{ ?VH6)/K7xEbUBK+h xy%_e)\tۏ'v Sj |NolP ՝oEaE5Lu`AzDu p H>ބ苭D.c J^tK$'DKl^rZT2#3^pc&'_1c46C\%b oR[˾Ry|k@$Y@s1C0nܔs@y䁼ݓ%.`@iI0zLtQ^>-iy%)2@ 9ԕ*ⓥ3ZfRY;O.vVu |R*2oŊ*V]-Nrs@%'1YY"ZQ\\\ L{co NtDðܿҀȆ(?Li{7ri}d.Љ|~:E͹ ^d&;,͙|MA6;f0i/[D _^0 R<?,!Ag~I9^> |^WUD̵`!![U{*v)bdk5cOSQtwu*ap{]FTcWoW9nK}q>4%;oQ"D҃2H줺բYBFPJy9z0S I9F*ƇYßB>Mf\ D%if<" j_z&BI%|;=!C;gG^ip(uo5j(ʦee; (o[i.O6vϩiNh/t?%F<7w ꎷƉ/MPيw;]Wi知s1S%DpxKo Qhft`7-}I)Bx\ ..ۣ"“Apt$󧬬m}V'SCEulrU.TofU7ס%+WŲ8#ۼ:5ur/ m6/`_v~=4!, 2 BОZ P ؃8>vdș"$!FmhxZHm>4 'N_mUpZY\V&׬$Or'4 g|&^bLqe,ݟ{IMc5PEpyk Yڹo})^ljW$DGNlmhQ}(,ьh DZ .x&,F~_5D:%UO"pY3!GWcѸ|A|ՄxAbIFIi@d:~լXЪ9OY]Ы~ rߥ2I\*ޅ%GwTBO~]U)զJXW48AD˪lgt;7̳>|A*n!*P.bw$?R%Sѯ3A\A-!vJTl?M sx B͐.}!6zzxL? N 0N;F6ě=CjrwBCܶH`tsĝg绸`<= k3g`+~#BҝHNqT#&& d59F}-Ɯc%#I-Bc?P+xƑ9bJ2ߕ!8h| kK>֑r+K&Fq~RW7¸IIJ9T(vycC#{#9޹&71$4Ԑ / "?fP?C.:;(jL|>Pa$$7UO쉇hx|tD>%m:p6cOLHܧÅ_5 M =*e#6:p8 h252$Fq9?^ 6f8;YAcY[HoC51Wt-2-sNV>#[Td.L\jQђm'P+~1 'l{Y bF7 PSBe` Fo7.'D I$vt ^x櫆ػh nv3oȷy; @9T#Cw)߁+%-Sg1O'^pAbwy9~DA:NuSʵvTƥS9u42E6AO ǕVO_YN9AnMi;UNc1>$_;]AU.n $Z !HTuТɍ=(wQjhVku8_/rom9A"mZ+'ֿd劮5ډtoDhŘE8_r&O._-t"^IQNb~bU܍)﫽ј%z{@r0W=-'5"-1!xls-c_x0IV)Vl .Уά64*حq#!^MIv.Uw΀g9{؏Ʈ;N>grƄWo킘?SӄDT [vm[OR:+ssTZ732QK1@qѪTt\`l_7nP6I8T:n̰K3u|G95^Fzĩ,tF36綑[7xiiiLL DaM)\]4kmE~8@%Ǹǜ&!%]0lv~Ι ;K.GN ]3nd7|&O[ĺ&8h{xGSlJTh2wa+ljgbPw `RP6\TLyvֽ Z/ A֬"3†IB)ڇC%Լp9jcۡt2`Z}Ntk#3 =1ce^g.hwOxSE"0_(hRjpzBFм8欄e܎/v\0z=1Wdۓ4x+;:FUju^=q*ey6#<<[LϻtΜ)8JmSW;IVq+:\UiT z.GRGg\jd&h:S=nPbW -Kz`'fB~;|b3guv}@=ɹWĹ6%@ryz3Y{ tK?=PNV31 fQTNCTT18Y\Ն_0H85ÿV0(LsFO7d^}mf6XsM0=   P=bL&l,Coo˭SʟW>9\1꧶ |CÒwb>U/2rqA6KtǦ i5rV "1k}*-BսǓS.Ts[vmʐߺ  2ԥ.M`%:U!_y>l{&a c $aK[{mLdl|f_,g011%EOtMqlpZ>36GPF }GVhғ4ז ! X%nCCÿPPj!F]xUjhJmwiq$ŷsI:V|s5sx/5tl,hHiNJJ c:|≭ӂƧBo!G^RoQ]p#&y/ w IP Qh KLjSvJ"ݤ1]%OPA+=Y?(|qFY 3Zvz9-MM4ΘրR x,/lhI,($J4*tPtrƧD$^HZ` pnn8~D\ ; ah?KŜ[zqGƦ#aFx gwo>ٴ^ VOzo^y]J|xGK*+&p&H?j=('jC>9ʱZT V2sz(|cnIC6ZAG6{Cf+v },vmP,p/8z~w;D;L<6ؾߔ}-(~a͇%Y{8/pX'S_UsSV;w<H#T"z|܉Hܳx;ȗhO&Mi;r$Vf]To( zChvy(k$1惟7&Q %=L#sL-i M Vwv6t~#.O'v͑0)OSr [/f2a;$bf_(Iך٪_k*8Ж\+1svյ#oTn*o2*'[7a8Q@M>@˂-IS&8c}loy)t4V;N*8a"Ä%W'O 'q3 ТLD~,&`hmօ//?h_ -[1K0aHd:|[R)!>B摃(\^*AL]hm(YeGWJtR~/ {>yz?lǘŹ#$a$/ ubOFqy9-4vp C2;oil!Y+^wVe[g 2}$dvJ!؄#WIa]~tKtq%QOċhRW6I1pӸVΔnVğhN XY7VT<א**F2װ#kЏy91hߖBq ,}Vƅ#>Z 4H ȺO9vJ96)R gcCeȳ<Ҡ2Ha|HO*M~G b:jMmo4!8MP8ϧ$c+F$[ C VZv9*5^Z"b߹y "R+Bѳ.=6*[~aC>q/^*Eѣ/|xg_ )vA! #1pNī%fƥC\=[:tDεDKC}#ntR_Ql/Fe<(o4Tx-U{CԸ)1Dy9 (63&f.mq2C(~e06c* N4AZVTE3n.[Pu=RZO1fw<%Yl%bPmٰFRĕ^ͮ.{:}_Zz 8^cLݘKTMmpÞi{ZFy8v%ԧ׍d}sUŧ#cЦrXaO|rx?,vJN KsskK13ZژiB%Uc=55 rs((F[*KjG ΜX`|ݾU])Ql hb9hKP'faHzNh ߦ@':;@+Dj?h+ZUDAP׮1sHypi9K9,MM'B[r]<-$1>}d>EP+}I-{CP"%MFYU(á) 8ӱ\ x? K,o N"]+0"GIW+lC}j/.jMlz$#4 E,uUIbJ*fm<-M*Z2_}ћx xA.PJ4𢤤o L͘¯ST9ܜ橮"T"c :WCDM{Sn:P=b3^)p ,h“Z*F@fEe-di7 5Ű^Q Ydt v_8LbnlN9># d41Ǖf&/iO0\]bП[qOM︂ݚ jrSftD?݄h24_^S$]H򩎺u U4c h)v_#Pc%Djpm*KA[d>:q4PKpZH)#1xۡF(ճBR05}S_OD #8ij#4B Gq0=ʹo?Vap'PRLb]#z޿᳷x@FgiJ9$j>m=r ^unڲ O:.Bvhƚ{/]`',s`>emUU}f-*f"K=AC1ws+s##o鷻ULh gE^F="WiЎ F(/##;p, a/ LV&dGV{ QFe!90"FWAAtvbYf3<+-g k)(l [i0`X[ZcOVwr1YIC{s*FşSc?Lxhx!1#!>A 30LOG;URI[zc)KtMru#bBRX\zŻ0mI?7a_'P47SC{ߖ(mHQh3' #D75xA7jlrrdC4U09+ڏHn4f*u,ѓ6|g}Z9n ;WbB}H>M;e/>|pS!m#uzQK)QZ*D?Avst}{g1-X0p;d،D=YyTC&: d*4=Zd K̩+b` 5NcKUL$TA/?9kZp8X>Q} ZGNm\sm Z껼eSvZ& F^ Ok)[ (g?=1;_n{'PU6JJ˩ -ӯ൑+E Ż`v $>܈dMB[aT|,cx/waB[o)7WmϞٿ1vTSC =0YNd.3__l0r)m&F&F>c*i&jx-E)hM8-@h`Y/-]e !Xi 3S.q@DuW\.&dZO1v.Mʹw# |{Md_{gQĐ@BȎ1Dxo} ǯ}7,51_.xEXԥ45a} V([W s"g&̀{qU1+2Vbx BuGqN%w"1#vd>DRL 2uDv`>-zh3 <#zfm=6J9 )2 2!W\xKߟz|Vxw4ͳ8g$FM^ ԋIT7=#v́MQŀz5sxgix䤈"(|=~:,2Mjjڊ.5zPqq%xX(x]飳`(/$~ *MHi٘}Om5C\{Y>FM_tks㢅k|MFIds %kܵq?&Hbiܝ ʎֺpאzRh>qu2h gNuRNv0"`^:lR>dl5ԏ3dP¥6+ūّG,R+{ #+L~V2Xဖjq\DT,ҫR ,bZeK `zaS &7Y`gN&{@!1a\6r.- 9Hr֪׀idQ;>2T x*l] ~ ~c0iY4;lNOZ3  ]9<&⇥*FyLK6.r6]jR6 >}~1JF EkY<v9F=]wc$رS<%o^Hz-# !6D*ʘZ\h.1XvHtb~e"~nDqw["?-K9sUf>BBg Z D)RvܦyV0Ӄ~j$tCV\_xܭi1nq=ȫj]:$~Wct {BmbiX4pj[^ޡ^zɾ7R|<+O+zGT|c;njTSܢj _hڇM 9.D[2d<;jy!!ہ],b&c4uT^U~`\;1 y$kT+5/?M,Z NJ(X pIᬂa]|<zAwڄa@p4l#Cd `ܺ~I3tMb$)R[jp֦_ħIA ϕU?C T-)Nټ 0ieYǩ=nl]C5 Nxw~GȮb7ƯC-(sfb/ZcN4P9 ,Iѽ{^:53GQWvzt@]ڥ êg35WS#]&yQuD 0m\y3T7ծƫJG .>|Э ԓM$ުd`&6A`NH`9Fn2ypKYͣXgqI ߺ=Ηf3u`2_ ZbdM i[A$yK .nOՕJhy6CpPX4^ڒ#MNBZ:MUd]yc 4^AT27&B \R͛T̬TiTU LJepkBAΗ 8r16'vBD^7m]Cy\>E~`^kB:6css%wEvz#'l$ta)I"}c4=LLDELуpGl qQ*+!y$d 9LG\W\}B?~G N%Eہ>]"ˁeɄ;'+n$muh=TWyWwEϋ's.B 6-3W_aCv@mgVfwm\NkM׈_?GgZm\֧1k3ןA)+{*6ޱCBW^?R1p(Eh&'ªH5k H%5/'$t\=]z`R78:1?Wv볊8cQLG60ݸ%K\$Td>a3'1WTic5Y`c m/e"dm]& {:~<r^UR3|/ŸD )s=Ehط'qlzЩ=]U(beo][ O/!oBAS/>tdh4pf܍k!CIu0-XV; vlU:{ne-ԡ3͝4yx?8S8LJyȱtBY]Ŋ G)VebBpb.0~ۤWImA< -%5~ Me'gzT&<VqqNO=%chHa4ڬy1yw g<[f'3RuqvO/0B\Yv ͜of38FJvRgĔ4Ps&ӗ#C(2[1*q=A&=NˆP-̃`dx&4z+)'As鬭vtKJZ <j<'-0&Y[yȓ03>,ZίmnyoA\Sctsc|6lKi`.<4m<$j^"X\i&.g|G_K μ5J`!3 XMlݺö́~tPoōY¢/°'= 滫OB(%ⳒZ$C%65W0Io0U;>iւH lV~ػ" Z[u/5#qu՜x( p4nEV;UJ(F{LT Aks/ ^\o*Vh*umOҼ#՛d挏'v bAtU\ƺzO0t=W%|/ &ͪSPZ3} !p> s7P@}6(`Inɠ4E왤-._de]dkayO -a,rs("glԏ¼Z繇R~qɻx^7F6~"v`rmɿrp\ɗD?M&QZfUGV2.zvBA\AhJ{:P>sŅᇞ`:Y3t"i'R윇X w )9_h-~ňV4Oo3`QKSD**bJPv|8?Gܩon'"*cl>,jY+jM,zjo)S-3,b'$;S]R0eԤIQ5:?ݥ< Ii݉P@ M^ ~]KD9?ڏV5͓R|4F)[.y %O_+]1ٗ:=ϗ,6-9ЫE Jӯ%FEAQEvb1R4MR|*6-V@k`⁒L/y̪QS(Pq0\DH`eV2ݥCLRr# |G(| {(0;0'9 'Daͤ-FxjlH[@hd$ߒyxl[V?5xyZtdd.Mz2dз@ՈBiZlΟV (^|Ejml-" \:}ee1:Jۉ=§ąUE8im!Qeςt5=M8nvtyJ_f )_:@yd]HTA.3X?"4<"n1\?U5r RijHA2na: 3XH!B/kp}`u'Rwgv*OԸ 7hbk }:/:ZQ5Ci8<x!}O›ݖ^$ke"v9ys_ z5ʈC^g-ƏDBFbG&cmn%%u2DG1('?lC#{טŦ/f lLBaJgGKӯvHCNuDy6LTr:mmڮ 3<2l۬Q6 6"u<[ j2l=2ed[X2kGi(viF4٢-a ";ڔo; 2J1&{_`Ե!JJX\j&'ݧސW( GP.dR#a˂T])%rWD eM\ĿGݺˇk뺗\gX,MQIFKDa8e7;oex=v/CPNO0ܦB1JNjlNGy Q62N)b29Q)&_4LC082kPF2П6'JpΘe(᭝DkL< x<@w)Ҵ`AWA{:n(c6G1W'3U N8:YԂڨ Xe'i=$:g/VV%1 υZ(k+Jy~mM@m%*pRK+ݲmsc_+&ss-;p}wV.af`+m0ttuZ}#Y n/juN2pHLڊĸosN yj!|L#@v%V,;a_1$Ol\A,Əphc Hm Fky0nS7Ԧ9`TY`v1b^d2Bhĥ>m|+FfĉLL:BP`_ O15SIZ5>8qៈZۤd)[YY HqeJg6_p P)d^!pk%˓S^㭯_G52oMT\/)mMZAjAxGזu7—gIfr:n fRv0qF_o6xn ,BQ߷Y(%'oe*4 rĒgB.l7L1=lɟpP|@XJ,%~!)N8;hhUf/harrzhl{<}CHȠ s?+cтS5੽`(ē&K6{k۪ݡbp<ҸD}> ,ē>hva;% A0 [<1"os$f$-)9vFgo 'Ï_"寻CНn@{iN"^_ -P&ޯ0 swS9$6\Z֊:/c8Gdt0&bӎ|+#qE6Ǧ#h5/I$4L1\R^]f|_6pa:OgT?IBF(9D kS٣`:XB-oa@T31Q_QpmB1y7^GvaȄuwYIB: ~EUs<9hQ(3xPpn,S>;&,31Jͅ;muyLy 4.rsOɈLJ@ҹ)K"JaiՃ"k2h.Ib+9v4 I/p8\( 5C[.c9JcìRsj}r [+("yyu> Cn/K9MJ}-9  0L3%>FO|Wج%rWq?Wu=wzBrZ`3OӌmAVg<`!HVIny?1 E&k =(!̟%wrܽ5> V)\mQ-izۈ%FE_Zk@ 9z%b 3T&G̫dΕs̵O̎ &veAH;^jQ-류j>](^ On1c3L0c/F*S/ MErOaߐ;f Я2}Qj (@.b:E <=Ċ :zL3xY?D +g3 `vz?/)RCi `/4 QPOi2F|0"2u|czJ'@ǐ{FΪKWԠ?\z!LCQrW2JZ"ɡ-1٣;Y/&huM)tt̙t<1FJ,ůJJ@?7Nry]淰69fe7K[?ٔAH=߰,jKf_\ޚX^(Ca\[<O!$uae#j9sλiyCR?~z\hQynM$F t t;cy}ޑA#U\j ]n$Cc|GFAb5LeTbRj+i&G^h2۵$vv Sa7n[k8 O3"Ӵ\^I$F%fP"~jĀ STY\pЌ =WxIBnu{ {I SJѣ}dR \mVkllmv Lp찉ZP`bEp:2C,@س+oy7 vkL6/qy[`V3MA IYVҶU[TxFwSZUb6%Rf<@-n*M4I8**M(uIHUQ5Ղ>}i[cd@NUv5|6JY]H2#:P2OZ"%:,u: :x~+^#mkK=~J$7i }9?nےGܖ~[JCϵ+Ѽq?ZBu $.z5нB+P qG]+. p(dEΩ%.q4]tƊP-C<_|4UMKǾ=9@leRV.܈`P.vg@?<^7hh$rḨx _x+]:T`xcBm.8Ђ~g(hz e߻Vv2/b /,P_cJo)]'×'d'M'n.:타e0 oa0V'<"(/=*!py]x+F,J"W;\_~~,6 EΉ'?׆p?,Yq& :H02i+q&JfQ(T|=k[~JpiWA|y}FĈe5[ξV7"p&hFGkfH;I%.̿; X/>/WIU6qOѦSesm W 62%%GVMp[W^ە:mp޹-E3/XAOWF.!1kvԆfEeCɂH^2hPnˉ9cfp at(hd7 5; 2y LOݾld葐*a"n u Le-9G }LnsF{=j9w_B8Jn2KY*#Te(Bh;{Xʐ7W20MH 34t]_N2P7ikv+wݗ^H?bʃf~p6b6n fCAJ}Ǹ?MSm+ʊs%scS*F~&ʡ}%g"u3%(L-<#Z@@Bݑ?xzd`Do%x_fraZNG@ٔԐCDlz,E[kk_@yz/2tl'+!3{ྯsf׹U)uTs"td_[k 4,nU"߻Q}V/Bm*jrC?_Z0?RE˳)6b2q o3$=b1^xH&S9qd~{2dقcɺ3`G`x/:L6 jn\Rt|_dSJDK.'+gkHV3u{}=w!{'"'sNϕQon~ TMAkܓMA~{/&uR7ALk_E>՚+r<M0M`(+YpYצ suv+'"ƅRiԧnY]OW7"ms{`K`VEcкQbw1!Lh[H<$ܗctQ,/%|NT&>50{c\o#eE(#Z­q:ƒ/%''+JBCx4*,SՑ b6O.,ZЯLEcfN{`v1ۨ rQ6+*^e6%'!^Z<#iwRE}vRHC.ӁsJWk2Gi)J~l4: u#PpA.:C_n7G#@ IikRVզOB]K^fJu|sNLDu  , hƠʜ}gQfNG`x`ٹ60q9ʒvo-gz{ A(M-VR{gDKܵ_Pdݞا"fR3<1` 3kJ^3$\]ƬTKO{*(Y%jU\P 4jW>9%>sExi6 )>HXonUK9#Ffe>zpEx<3GQղ"5S_ -p,⏏9ѹ"`%:8MWĴJh]Zà(2:mʿCU׺.JǦ#rHׯ6:㕓H8iRpU#h Bx@kC=IѤIӅ๊e{鯵/Ν:DB*AC 莟!ypS;l¿j UG)INꝑISxyPvdF$6`J yQJ"ӳꍎu@cԟۙ;?ӾbMe2CfyzcTơ%o9&R⯿s)_W']*8(梣xu-8HeW?"3ϻ&"*i3:\kk@EDEQvYI.X-YYn8:غݫK: #ꅡȎ?DN2dw:/԰O] @͓0]\Ǭ9)F\6 qbh:|xOחtBCP3{"@o}kQٜz4$JB_F"ک0r] '6QG'e5]Ǫ0ШT /̎-볆ukO=bxRc; 5A<.:O4{ϲf.Ւ+6ߓQCdoc9Y)YMioD{q40XUN2.E:s5Hh+,_&k=Or'7hs@5 AdtD˦i[ㆽ=|Dr:v٣'z.w52|h@Hӳ8͡]? kv<;Ҥj?#Ժ ) &t\.pǼ!Ε㨨PF6k4$\} | 5dȄUDXÕoz#)8 yj5WK#Bza {6hj5x|;b@WBWNVr5m߬zDm1mc<=EkƶAeF:F*OdT [Sm\eɯW̜=Ez)"[L L#nb¬lρhb9  &kj;G:5NcooFԴ=MTN:tqy|k[50ƂLB'32O)}q* 2dL͢]ucqS+bn$^ O;[v@9RC6iӦclΙUZi_%F {(] 4JYbǙmcwθwr]P꡸t$flB<+g0CD'%r*(aroFef -z.) dY^hf ÁRT ~'G0/ >3ETT6ZF;R'z,/m74]h:57[GuhJ|fgrđЕ@}N:a`%#]T˂I%c>鵝9qn,^q _x&hZm\ߩбGϗVQ+tGja9KGs |yJ^X\-ñb?l Dר\tH1~+6/]a M"mn~V !zC]iT hщD۫r)uWՐ-4̤N0@1/I:0ԢWSiee^%Njb3Lr%]=<ɛ>3;/[_(ܴdnpxf9;ye=C_~Jx` pk$^+RF4C:QN-kJqhle<>˕hcnqoz$g p{GOD(݊"۫ew>UB#쿒p hJ/KKy{m9=dHbsF f~ε:'>X}(6xa M 1oe\z>Ʉks+ u oI8b)'x%,2an_FF„M ޲^竧+"'BlmHȪ+λ@v 23f%mevl^Uq~j ,.n&3Ї{a5$IXt/2A)Ujˊ┑row 0jK0`g_tR1,'F|YGϸS"!oi=4O:d&hfC}p 5%5¶,|WFTe#%fJ*K ~)NyY1ZOO\0!_nuM됸}7{(령C^:ʄnMمg}G<X)E>OO NMi =ekOyh3Sh_ Κ$Lf>\ )@y!9FߛiE‡'ulMg\{4gk(Li@|5w3p? 7Z,aN[c武?#%:( ,X6vf+JHp*1~=AJÁPE=xŰLJlP2J"|@d{n"=~0H}-pOP1B44ά5a䴅Xx+]G&'xyNUI<79.x/鍅UvvPœ!@N@+ی|}lau7GM} P.8}}C>͠|[D8 .sO*FBLmt(>Yb f/of>`ĆR(auԳI m7H.* ;i*M] :By)sz> _W% hɮ F0`ăgPd 5snQa,K8:PDi-rsq!B] 1G-=rl#µ4\:2d;H' 5ϻI00)i#(\-a'!&V ߢ~a'I0Opڴ4)r`%ޯ^fL.4R>Dap3{k8lc~SgkY Y{;" ;3e;lcPBM!QI1kU٫a{"*<7(\AP]ˇ!^LXymUw:NXǪ2 0:#s `;jh2=\t5V,.fewo 5iृr-(Gr1rvYonS7Y?4;eRga1,܀esA1*f:6WrVCc OwWCJ`T 4A:V9uWh*ӣIv="fϙV7 qy|uTǹAUŎTu-xo#ƒ#Hݒv7`uQpO))[0 G[oUzL^+9Dѱr}yS qVy5ܱ']j 0h9nϳsLQ`f鄏n!;΍r_އڈ<ةe*ݒdUh  rHmI{ͧY.M2xž,@}DGF6+c݌TSuHQ>t}63e3`%$xuK{OjJh3[Mz; PpCo{;7xɴى,<^酈q۞u7RMA\d!qiɫ4*-JR"ޮ$AJ"sHZuLf1H$V!}ϏH{,Y%95;2ߕL*^Ub\Jxf\u 'g!Z?zw%R@Z Ig"_FVN]ֈ[YݸfT0P1nQx+bm1RU]eȺѳaIc%-l:X*gxhcM0m^-e`T;|ZE"ad2Q-[T 6g:Pu_rӡ9˱\M~ƭYP~pwL8J=q*6zS5U}QD 宓DmkXɂ2g}54+#9,ez2ׄ( ̩}̂ +xqGD]wůJQ},:9mws[薩٨YRԢc(5"aጅdQ-8$sUAh }y';s0s;*H)+^V7"].bf l#"2J00%דAKeUT?\ːdCy+^IY(9~ڠcf+I†Iyaex0¢:d$151w5x`{y>uN +| B̿w ?`;7Zs GkKya<L؄05*uCH:bD;@f ~I/nQ {36+wה ±'6R'Pljл%f݆y񂗤1aA1BE-xu+yˁ 8(?W&} 䒲HNUL Fə^R&"8mVK`(޿ cc- iMwUĚlg MJ"Ӎ=\G<.J3:/# 2 #UIށsT4)|@qgRn:e2>ohBVkbI1T6Ž0;9@q&R-Fk]h .?ߏ__\ĊF<f U˄f9(4DlϫԤْ!:/ѭR+O7YfHQ /8N-I^@8Zqs ]%~Ke@]kH G !%ʁNKZ7W@A  w!׈ oIU0;"֦rA&.%u)=] m6*x?xqGݤHZ t8m:y2(xK99]u1;EB~X1g\~qjs)ʕfYlJKxM E HL<$QeCqe?^ZP8hmsp}t[ &u$sHmw/W1 U2?!Є*i#RB4+G÷nMk*f>IgKj|R(@fI8pݹO_h<(Ępiwa e`blp̳.@k ;&zuyI*Y$Ş6Ly k"@DXh8y0(\<ޚ&X;d;t",`Vυ\'K.$78 | 92kHuvE~%wWP~> Tȭ;u2B5K_bܜ?Xڧ\;4yZᵀ@'=xl:.sxSK|5%iϑ\) +UyS&TUݬ=`:jx6C*2l'eÓ YW7N!S;̳{KN N ػF-ԟFη(xK TK "J%q7o;冺NN;w; S7rˠgP)M֟W|B?/JkQ*cD5=iyC& $/$H76ܚYo^qNslrƣk?a\f|L ,ON:rb=Jb_Ay}I93ʛ '(CFJ lHJfe:ԊËFF>wFL詟sl^(]WSc ;wDj~ЯȺ תZ=Ʒ|nvM9a"Bw&ܮ(\Bo%(Wc2#k=ALԈڱk.aM`C]NŒZxא<+vgmxȆAJ >#.}wøK/ɛZC$fX?qPoLoouU~(\Z7<=Z: f/Qx=2'ǑF#q^+Ty|.:2sPK}X/({mZ,)ǵ$OeVJ^NW,T&(n +U̯0Y/I}H2JLO\]7zK{r8snehީ>5.z'@++Do |o,VͧRkJٛ#[ghގH)j `Euֳ>t`QjGeK^Óz?9wMވHϝ~ kimL+CÊwcQ]2(\_ ڊr[ҡzCr˽I9nbF*WHxo$V2!췭cWX:?_ EJ_K-\)!1.bk'{C)8JjI^ɈFoEDX82YUu7ryo{#~Qψ 7%?'zD}JANk*JкApp=Ϯ^޽!UoIdX1?NCPP|EubP5/%\F('zrz^rz-҂@!Tӝa^uSsmI[֗!3K}fq,DzSFd-;gbMΰYI']LبoJEFc=?#PQk'Md2_ȣxtg^iM:f$>Q]TT3$moؚ\AUd{ " O[ÚhJyEK^ޤsB"ij| 2JЗHlH2F9G_i>`GHE n"T !~`/zl%?{&OKEU%k1[8CؙDF@R7NDz3_t~'Էyç8+Lz,#qjίvAL ףJXf d4ئ^]5l| PP6H0Jl`+fb],2 ; {65(eA5"YcEy ECBS[;fx[xl/ۭKůlebTzP|D! !eX-撏%٧/ZfOusI"R*eG{@>Ic̭+mno^_ 3,Wd+:֮JCְ{**.HvNwl7yyMUЫ Hu{=.J^K,tn5#kw}4x_?kd}as5"I?t4J9~|":D(ݔe?u.h+LQЎI7ƹ xSuPA~}]A,AF1CKCycnuKeeVY>i1OUINqv"ξzi"o k3⅏RT2bِaFf b?x!xIQ@2z?.$"f`I  kg!pٔ_ba^`m^lx̬ʣ.D";H]N `ڛ.DV5e "xYN35KZ33 {A1nW⣰p#h":,zgCMX KMy> eA"!]~ ?sFrYQH:URL-mDYVs8(߷r라 VP}uUbi\yٟyXRWS'οb*+wғ;ynI+R n)~x{bB-:P),GxșSh,WI,6O W -0M Cf 'fM~E'ݴ4kx'kؙ`g5)cIX\T`QC\muhC FҚ+(4C+廢+/ZҪ.9<q_ke6Ӭ@>璀nc{+L}{.^HR)gt}[G4+H-\1wg+.]~.dbJ H43b hjhbմj V[z9vvS'N$?J6(`dfv(VĶ=MWl"1 ln|mA=/w6$#>68u"JWX=rC0m*y p|}UAB~ gL?C!&6?N؋"띤 gUyIwi5M..zʥ1q㊃]A$,S_r s7nc/?7%#OthqfpRIE9t[4} ruJ.lc- HB;Nz~}hu]l=dUVArZy!ڇ0n9y,0wgps.b=IuHyEF"l!f=~I[Ӄ W%U/ND6R>-i~|n~AQ 7vEфO|7j9iB ȡ8sht sj^2!_^7/迿+Wޕ%082܂# ]"Иd q)cY%&r"W_ EDӱVᎁܿ0[B*LRZ |~ѠN!-`Pss6 Н&W__Γ pƺ5S"PVUhMbgz0#PApT(mfRgd Wn H[]#j6^{P'B7l6Dj j#V@!=wFkح&gK&r8:R˝M5?@RGEl-NDAB<.jn|%t>HDzoR /ي>HoVØ74Br<]es /s{ G38p0)tyz*'8YdCQ}S=m~WRX})vIT)yYfq @xظN0B߂eYXg|xu(㍣ذ .PY c*:HϺf}Ay罖DeB2%%2t^0-#c紳- U2>by%L8`_\W/,y0 m^_n i~86ܥAvGXhD)2)C"ê3Gd%hY.KO9mF8YV\O< Y0irTȫjn ]]yӳ{e{,VJ`W;qsW6 4x?Dw ])OT]"*̥'Z\jҬCPLX $׷)`s=ݩɲ5cΗR_zvߢQ{DLóm;׏lSbkviC[7XB=^ pߧ2ч E +!?`=@ b@l b!={F_$@[—rŽ&SQQ<Fv/ޜ0(lu_~(uCkmzӋkqSL'[a֘%*0|\،bENYVwhʐaB\Tfyo6.c}ia)y bD'%dNf@ecwZmV'Mn`*54[^%nF|. AKѶ4k| UH !U.@)nn`aB+ Y􄣣]sz%|t 6(FO6#+:[8/jד{^<(t&)S;Iǥ@dkҠɻ:؞ GabO~n>"yFoa@ZDSќC+F 4i["[Ťq^fE &bN &#oCMH%eVƧ1|5%jAMZ@wQʫq*wsT9\qLTjVu}0YG_Ny@ 1jt0| +8c@so)јSTOd[nH[s8s|ϦУ1جoV&c\&]Ua E%[w%'Q^tlQFhO>Ul2GE增FJ+w޼bKo:7HgXx"]=109rhaZ*4+FnLFoq5 tfA8D i` [$MvML@ AhM0]g 8Uǥ^G[&1J*6خ d6H\,3j8E>'-K.(Aesd pGꆣ(L3 r#C=xIҵjJIZQ]eC$h"Aa)`LI5,e 0旟Ƽ:O!s.y5<9>&h` N0'j%<|"Kvl"T["LF՚K~qE*o(ECe`qɆX>{m9NX/Nګ="配H(!m%5\y&`HWv,4 +Ns飒M86*wAI"Ɛb#&oX -V3CHBIiՐ"$@)֦*5bS*LUsN $ s+vjs2H\[~x"!y+ZW8p˖VSkЋrथvFĞ2Cu[g ;#"ac3y5}C]όD(bC* %pTix75kW@?a69R#OC aU2DwQPjSɉjfЕD\MY6'RŪUpUBdT6֝],* %,ьZLiL"\$npeL 56Fk|DXRfu~9$xC`KW%F*' Dy&'U&Y Z iAS8Nb Q^ 1 yB-1zDΠGVhbOcij~ 8_LzSF@L #hsɒOX,.v0.jOVFm)]D*Py1p%}k.g)C2]c,!Cת׃q/Lcyx&r-Y[W =` [f%yigM'PF‘8UBDN嵌Bgu\h +6MP-p$x (K $h"θJc%LLa1O:`Y\7m Ȅ\]C‹Lɍo/JPa7"(SzOW4? &=I_,Aɒi{ZsO+僩pI# S04XŊ~B>eV0Dz2Qqҕ zX";0Lr#k: D"Oщ0!F)JI4M;DjhD@ҍ})&m 5LBP&<ٶ&QBdhceG-&42f3 05״+'u֫.4Ksܖ *V&qIsSGŊQ08'&q5׺zL1ΣЩ~Yh0Dv܁VNdV\2+'XXˆqnWTaU6[AZg\p$C8j_57{Gty3C˄XilmMSql!i?`P2%QOk;[+W!#d'N2h V9󾘸Ta~$fO&g/F\ Y58njr*f[҆25>s*ˆ*d$er-ok,wHOoiI6drnQ2{SP-vy7QbFckPO"Iup8]߷^:oPn<ú~,}n^ YT댂kif,LmM0ݭGb{tD $@J?;F5mIEѝ;64x$#њN's'Ibñ5w':!5iVBmI85kύ Ì.Ǎ7g~r}^=sK\wCS?ϞK,O:DTA@F OŬ\Q'jxOT'$px{J+șuC~aԏH?.mbNEWFn ? 6E{Ǹ[LW.D sژ<q4/A BF"0Q5$c n7v0xov7OkQPa .!Vm$2Wh@}%YU;YtL+avyZ"=}};dK4*м@r y-?Q /od2@Pӗύxs5`s5G%E%N3A&EubQ`0&sKSwE :("\"uҘ/Sp"0Yvd^oZ|Poa;,uyH{/OIgſ%)`]1a0͒H= M(E&PΌ$o^FX^J6ђ,`6^ʫ,\KA- how^'޴Sg"Dk8f̙%ԑI]% v#z?n߸vbcY8ַ4%BG'ѫbUE>(0J 58v{ 끙wVw|#T 8,T#(NK 7峳dћW['e*_[mkM Yu^nehUv O3ڹѳY@@-iKc$=GJ}y<6 {6(v(Q>UY3kPiL4 2UO<j9~1`’7/>v*8A_}jg7?04ݫ4׾ Xf XqTOiet珡ѥ֣.MMoJ%: 5} &U]ZKx2d!wĀk5E.u(bEeZLL6vÜ0ٖNڽmv4BڰLyu /zXQ|8*Tٹ龀zhs5%R /*oy?sq$ooRqR&Zqa#.J q#IQ f릴ؑ"QT ͬal߻((zq6 W?"^挱 ;X6. 4 Mgl̯9Trs^_nY?wt -"NK{^3|ONo)-O/HUϱPA3 ӮYi'íUHSo%y7ݵD[t'$ ekVU]y:76T\j~ ؖCS7WrJ6Jk ЄH(rґSFK<^πqTv/Xq:ŏ >9|\i=n2ž@d 򣬁j pQaA.,m?8Rw #:GO(4 cNЅt).v $ %Nb]b V Iz6i`jYb#~ Ŕ5"|Sn#ۤ:ф/S9ISA}^hҊW=U߹#~sy$E~}LkLjك,2*;a 멞)W h&$4&2`Q?aLG#hR=DѨz{ʳv>>ԋi_ E(zpe!@[:A)d_ݠ# |gIj0O7NFmB^)p W&<;7N$$[ JNRN[cD8حpل~Bpd&OhkY#O#0>j^!0ƞG QRѧJ~:1Pقy+zgIwX44'3w¶O3}X۱]2r7 7G,"y./?DKg&fS ql|tP։U&GQjŠ|^Z~"hmR@pE[9 2XeR)ίQip蚌139SK-i^ަ8 Pp뤡(Ҡ?{1%te(ϖ(/aS0i/J!%6f3 gRBLI *#&sapuzr|("8 co#ҧ x%lbx;90&/tNl*apQ7^6 PBb<~N2n56Ko1;KUa?7,V@;ku:].W| zz}fv "ۘYi ̟ ͇޵H6l]M`+FIX$O|<=%G ^dr]nW&Mʚҏ3$vE}tZiP֍G.@KXrmҶUyDtəU|wqqc10+?'ȰDbcIcҲ <AUө_% eLñ}g(sI\>ȷ]Z?/}:ˍO3,i(}6;m!%mʽ|W͛^V,03SoշZ3`*(J[8sp2mK< ɬR FSWz${R+h,p#v܉ vx0JK25Rh`̫h䒖Hݚ,2/y(C}fdk#.&"~UM.x$XKjy a Ⱥ!{4TXL|1|h;8z}+ÙtU m/({V}`ґ 2 PC·RG&1z@RfWyLE௄n 9s> NP/ί"vC_ Z*B~\4 $[p!i)7<0qj`PB7|V5Ѝ!Cm!-z/`ص\$lc{Tk nbbxm|3emczBTA5ms5|q]P|Ү^)E6\w B٪ *tCBKXvnԺ/> _`=pQ';D-б܉M m(Ϡ>y[ߋ%F΋9w$(/ 672&Ry%@dKFGw^0Mnン_}x!bMȄ Lƙٟ),(4N!D b~YJOZ%NWwO u'&e?ũ* P6c`R1R5ق ȫb&0Vbg r+>m-vܦ>QZ}+_;`7H1M'./O|ډӟFQ &0dnfO0S^qnsENnr`'J!}K60k1s辺Mc<D6%} ɜ| vP> O^a5cCj/'F  xDXvs%H-@mՑ;0-c\qi[999h1?r_Qo~,7Bu zViQ^#K"`JM2[mi:d&7kRS6ݻf[[&\wFU1N ]1,LbVؿX*vi)ZQV:c6GudTA_m<QU5izih.nKўAܳ"@!ɉN q_l#菐c@{'ٌa3%GLl1ƄQ@FP63˧-ˮ8#OXd#8'r. /2]F+jǓ=#=#^*1zK&o~rJ3uf/-Jw{%fEPq!8+f;1kkX#9kDH6(NG[|4)N g(a3WJM}*\DaВu+kZTD77x) ]+wȨ`LW[IW8s:?2C␥6qff=(xM3OO:'FS}ۅS=oa;Үl̪?MLXLڝC| > `ݣk0oƅi4/<=+l -ݫmJ!x Or$>`~i%m{Eav,nf|,H%9Gvq'&յ@sF9B#^jCaX_| sтת%:Ap!G)7 ^b&rZOPbD]=  o=0a(œq~ 1'{f>f5@C69$,QW.H'x\J-iXƥSQ" m]-S\A8sW4Orcg}@5-B,J1$xK?@ÇԞ`?+sB{O 'ߪ)J-JyW睕ѢLِ;$Y0TcsG4"׷&\iöuA։KSJ\A LC}W F .-j 9^L}E> 3-ٻ_Ryݟ$~~婾ViqvXQi{nFn(C(JDEE+2:끈0`jz©wuee@ u`N縈Ke+OT sz?"@f(?xmf*A^^ e!F5᧩1,θ5z[ bĪ#J/gHomنPs2T:8bz0eޖըȍvz}XnJʌ;|ESdܸsjnQϴڧs}>v\{v}6'Kɾ?Ž]oʈ[9'8\ @jtNy҉=8 )é![`erp Uw7Jjի.rNxNJZ2[?#B =;1G.{2 pyvUc \=ӹVEoWK̑z!J %!Rԓ%?c5Ү?xH]+ 5f16@J!.WWک+ۊibR}1R+]HOb& [;Հ.& LjМ449s'!b`&Z'vk֧?MAWeQylN HQ*^k_GG nѰ܀ ?QٵO9a2{oAu; I6&VdBiD9w< V$`k"ecZ"a| w$wv|K9S\yȨ l%'΢ ܊O@j  Ȝ>WWSvKh6T*~5H& ~m[^5'9y=dÌia199zHp{3o) U*9\rO"v#oaM*wJEmWtP8^ o_sk 6b!R@g_QQ[n+u>LKNG %>Me&v­%%s{N]{ YQ8sJX]4"˭,-ߺĝ<3ٹ(@inYfD筜c|01q.Uʷʫ>,c9qц2&⹱ZGL p[c;JR-$&$Fw= O?#,HGm ) 1^6QÅF\¾= G3n;~b憓ٍgLH`A՜XDeNՆQBrWc]bC1dz aϑ¬4rIX"(KDcjzaz^{wՄ׶p*# 3,6% n;Bo|wã=Ynk˗|H|_f}<7? :4Wn֪L+`z {uJUǽ\ 4&G7f*#P=ظiҠ )(g`-I,FP%ḧSg kU_R) ˌsT`#%;F'c7pFbl{9[r;W[(ի_ɵ0˵4 `k]ўJef0fnbK̙S+fAq"uZfTy9icW.z0 rgW,SQ\Nߎ\INVLßRE|\ x1}16-!^UuXa>Uݭ&Gk%4V,+o8K\~ *CtVVFz8aV8kr nkLG,R@,Wi*yH&Қ HZd0Y4n- UL2UbbՉ3@5>4f[?b\Ͽm4FlY>d-+Tz㇡F|7zJ͖rӿ}nsZ{l!kFGJ`rx\A{ VrHf*K3>ŋ?M"Ҿ kb!x'o /CesSg2p섪%tf;?t-e>i*:=GQNJѷOַ@m \Ko'< b0C㇃PuvCJaX1 ["@!ONC0R8*p=l+<qW 8%  sQKrAiAכѮ_Bo8z&>1M_A)AIgaXeI)?' Km Yj1b2'؇!c1ȁ绺 +'M3twi׽4 unw亲S< L[lr*Q܊oA)UKNXSz 1\:<'uY礂 ә6Cd?M3 @7J㲴H˻۝ހ)֔we ,̉>zo:֖1NwM0l\;p{8(%d!X G 7M2}/7V]Zhh+Iʓ$?'Gnb0#,3.+)G$]oSjI*ؠʁ=gHԝ O*~\{j<]rF{5j?=3gwYӉ8@j!wAUHW27*K16la?L3+)(.Bw.0{mE^  ejzs1/y``'&]S(x gMT/DŤ˶gPaQ͟tJE7^Rv1:?I$&=Zr0UL8H=d|4,Az cL2"GlU ܊zcvAc39z>~tgG\]y/c7 M;7N5TC78FqPNZҿsO'ar4s!*#:(nOu{䓐_+0KNp^V^$qcmeڱ7 % QqJ]&bLH@CL4Q ,M sQW.O;>e2>Ɍj~ xAEjY.+ @arICǵ)~;` *}@,s6|~>$حzJ)"=R†L%Y Q%Ř½zz:8i6Wϯu[nϝͱ?Im~qBi@j`ˎz{6q @E`U*ψaYN49<5"$L0lU8^6:2mܝTjh h' WC) HNRVAŘ,bs y/z! :!3\|á]fatE>ե8e/sʖ=9#U#!ե;_~")MꉊơDM UUHه`;ȗʬĩ繌1 M.O E+%D0+*@Cl/*!vnH[,'Ov!ʯf:Tkb8ӫ` "-qn$rck2P0J!KY!m{eEωi;iC@to;_ .TWf47 ezpw7bzcs]?lwiIq\VU~~L0VdQa?z{0^hOJtV>h}0t ew8v,2_"$hyг\rSM0h+*œy-<'X,!'R>&4XwG d۲7Ih򕘷O.V:Ĭ1 3<Bt{ 24|> Ko9Q cszr? [e$Sgyk `GD5G_Wg`&jٝl<:q*4g. qn7~X ECG֋ZRN 3ۉ&8#dvt#3zK>:\㤲 mU)3QN0z&Ay";5p " 3Ut05h4|ݴH@SR[h ɂ:[g28g®\O9a(m.7RU NQ8!՝H=K,#Pߘ6-/O #ȩ9Wܰ#q;}!!e}òN@4ڭC"DqMJ;J)cYiF}Cn~Cq(<9ɓ!2~~92$j,Z'H%%aįg-&W 'K2kF_9=CAWR S"=h!>d‡  #qG]#1,w+@+Ź7R5R b3+sx9q0a=X㧸>*Nr iƌuo{f܀ .RpH+ZZӮLQ- 1@|Rtv" ZԆgт]=Yכ9K < 74Z(JԥV̷<7?E0E^,y)^ r89βt ܬwpP|,C߉f@ֺ ߒY]])nh~҇xeKgo"TFW*NPfFz޳f)Q#>ϕOY=-E<#Rܤ,)3WCz=۞DsZ[%0[ D.{JުYKu wd\f)F,6KڐXݬQ^ư.JDRM6Z_=PKgS}SSKgx_ FqL.oULQH![vY3 !Z{ћ3K("vK({tNFbT]7E^rF)\Sc-9yO'5ܺ\|Lj0Ɛdѵ3!7>4|@`I\B ZUddmmM]NW4ߔZ4Yu4rJIBn3 }NLڸi0mo8UE h2߫0cgTD.R!BIcMfq9({đ:s;aGfk|LT).Ɓ]"X&K?Fĉc|~JxL5Kh1AL6˭b`'FK:Wi$+-µq)o.FLmguA4zT gyAYݤbo3l} ^SNۮQBPD-8>]8|90m`9蚱3%mq\PJ1Oy!Ƨߢz>cY^ 1ú5LD EU#haE[,N>zZ}Paz>G<(8L"\Q "dُ(<H@ˋw~ '[QT~l ߍ7Qa%6|tYV^7[jc0vy{{o>{h;3*w yD>pDQF&L-a֝gY+or}w< J+g^&R*wY/" ]Dt>bC|@P,gn6m˖E@m ((yW1`V[b 2|]"'/Yӌj6*F>a`QtRL΅Yr')J#ߏܲsjzNTGe6+׷ı{C|+q|6*RAO=wiXJu uidLhʔ/d$FW|9 NnOq8͆O~ Ln]^FjeNƿpr͈EG9i@ =6+ Jѣ6 MS\P#`kx2pXDD6 Ah0AemPK)ZJom{IT1'F0$N+N "T DTK9^,?u Q=sUZ~k Ͷ}pSD7`-ӫݍfmE~ϥY*,ʞ2= pB9Ƽg+#Y=i=Kh&>_nZ/y[,pGGEl0ij `o$w9XZ L|t~6yrp`u174h@>9/Z*G]NzAt}z.u2eKP`Γ97gDGNTxV7IK@O:9+-XlXkon)] 6ʡ-`Qd1&ِ,8tsGw5]O'=A?LFF[n۾V%8^{:w;͟bƀ|PWh6}GhtN3!ъr9>E.gS90U(5/t/kM6 @[Xn&–UdBvˮ&,6*6svשǀH: v;*2=ZQ\nvd$!8Nts'#w~)K03LA&Gt`~٢e$`rxaud- OGxmD .16;]$:xR֢ P.>$P1(Z^BkJlBgni6T<nM8"K"fՊL ȁH?F0CD纅 *p|hT ," J:=uҽ^f~))\|v[+ F`NA;Mi0GZ'Jy{z,ߑّD ZI(JQ.~U|ldH,\(# QC*+9,0&ն{=G O_۵e;qd$6I%`$ /|onjnOkͲLE8 z4KNlg:~t![hQD|HiE#GV}|Wgt"W[Q>[16@mqt#1 D6g3l_}`{3ee v} W/aG|قL = me},"X^C(vBBu$X ,W'f.DN˳5Zo@@1SvN{JνwŨm 1豶|@hff=-cS^2sDL;Kȡ~=.[Y4qr 3 n]-]-ԺD l`'i!!/r{pD r8|X*^H{Mx%wb.~=AAưh9Tr *Wɇyn[p\!Lx3̷2.guQrEΜb#`Bz-O󔇧;VٯtZ41Wߨ'HS^ Q/V% !p7w4$[7_GH[ټ}s!# Up]좨(LcKDZxyGrj0\':}3czW%Ze#mv5@xDAzQͶQҔF^TXfO8P%>f6$ םXیxk$b%6g_G]خ=L`!F&LK &挂2Ҏ̚ΣYOiHNUqE{!X1&Q޲4Ê_]HPv_3J3M[cl]uXM7GI+.deVg[j'O uZoqBp,P(vcEKM%㭹F>_aPsFi29وG## 00(|mC}Kw9)5/R2CZqy[c}$^(o)F9ԃAzH@ttSK= Q(~Bxx64`bg#m⨷?] ;!n6 4n}8&̍Kȧq Gm ϰ&oί%x1bc(/qF# aZkI%!oN*7-Zzʲ:-E^5N! *\i\& ӸMVa锚)xn]*yVӓ4M:,=gKR ogD ԕ豠#EO|& <Κ.`uCp|@XLrG|ݤȉX@^If=5HrcR7@`E]d TC!;2¨(D'hBs[Ҧ{h,, xThWQH3 ".E#R2m,x,yZa 4}Vu f Gl,o'JL4qH=z>f f-z7(L!AүO:Yyomyte*?ڐnelHσJ-˃'XpR>qLES8UξS0 .sN 6zĆ]~܏S^LL;id0G Fs97 "L$hTox|Fg{>?lUB(QitUŸǘWO*Z0їJQgE^2RЁ$S(k]%py6,[Ȼ?8獷]jÝ,*v/q"+NWwm55 d0jBZ(ݒ#f&Sa{D1 6>_;R" (_1U EL{ZfGCDDܙ|ہ`ER" "2F776dàũC.<)p!PAͽO^c&gF8#Qե5 @*{x@TP?/4x gܬy#q&$ܷazo\6 [r ߦ5E-aW)ϯp?$yԱ,!vd!Tj]s} aq! Ɲ/(S|s'12'+N _H}!EgNAsKwq2@龒뭤b֭KR}@FTR|ф>muo߄)0f Ί D(+δ 2)CnG~Ӊ{hz04^&{*B2H0|5*u\0W.%0 М£4n>11d&39s쩟.L_Tu6"ݭ1,h\Eֺs j'U%nvk(}rLepX=yLcٚwEǾ2}鉆P/׉\D! J%w xZ9 }rEiC8$fYK;,spbA5 (P =vE_nj&>z۫>neKl+^(5<(ϚǭHTxY&` lGw+KcA\ZԿǩOr` H)pqi>Yp&A{+?L+lpڝw>B*)[=jDŽ_QJ9%h Ie@ZRVۜ쾺LHI PCp.UL^ȯ~H04ln5~?7Yˠѕ˟ϳ˗=/ZFs7O{>1N>] :;"4՜d9} ى8`Z@̣֒m 4TE=lWZvNoZ҃H9M\lÈfZDXTS;dgW~q%n+&`"rC^f9D Jx2v$uFǚ}$t=ӶIbBw2^}Rc5mW3)mwc 7k.7+HCz\b_Jq(]%7K缇'\\\TI_~LI"E& 'FI@催3~՛eFpgMo.^| :ebV*;BWTh_!& rpVqphnSuER3,!9 2Hb Ք{,QOa?I]Ay n@7kL_D{O% ۇ9hqJV*DZK_g_q?R/o):%0\,{knD/&po꒿A,5QzlWǽcwpZ>}y4@E{vIG4a(iϲWJ+<ǫЪ*<\!l|`'l g( wvFrx81IA2ާqu"/Bmeھu8-+ZR&1-jqSQ:/F'i/]<ϡskso0w}hdEW1U87s;!RiN2C4#r\dPZbN1zC+T☽|lHy Di0l\MAd Pkhbp5ǮYjLv8[άYx̱=ա-"7ITI~}423QөCy(dno/L {"_ҼY!k!ԓO]됭ڵMa9O^Mx8|}ϵ!<!`fnXZ~{ |I}49B#"i}zl)Zz&,qh:K{u؋^LlȭpuoۈP#C@6)md#qa]i#2_9M< jhg%\wp-+06 cX;.ʇG$:j˔NsEISSrX|(rflNq{QBpǀQwwBm,u?$JW@'}sDL 1RQ`yTG|nWC'-FjOy6(uR @>V9<>UxRE(s/e!uW=c鼯yu)zyf{',=Ƨ%Mkf/T!̧VДHYoZ ݯb^7HKR86J #M4,*\+%,o8'enffB;X(8r[h+0/X w:{c1(~{C[Ȼ>۩f aQ'Nx s  Ϋy<Ahdta4w+/!sXy.48H{|4B-ѬODbj46WyS @u+(V0γǿmө,~d {j܄G #FurZ^(2%jI5Qܺ f:D!k}Y 2pE՗KPzV6YHPɤ޴loSQ_@M؂TVt/ HSzHh_|>FЕZ:_"aE0:SI4VWqbA!L8瓅5D/Z͎O$GY2MurWGLY&9乞F۪+9\GF-6}g5-p- r9y6\ K+ޚ2.pJz)8룳O\bӇ4ɍ*7\ T-wS$f͖k䵯jaxByY'MC^5]{ݛ1#;mh#~ށ zc`Qi}sdTa#wq- $Mi$}2dvz+Hd4V3zl8ƹۆ8ppp^;KCq F`ӊPs\-P5v $K`Yʩi3z>_X8KN|CqNQןmf ,ǵrb?ekhga4:o/bGV@"4>Dͅ!R)x_Y4"cDB;lyUFw^UԻ9ErXS#XV FxLQAӊ/(#߁[j("u˨vMSbVt{zC7 aѽѹbe;E}u+iw :h]uH]5Q~KԄ'!94HR܀U1[(=[R5+֓ךNKV!IMœp)~y'>y2Oá.[̇GUde\0)t@`fr9&㍇#mZJ;0I&5x,7 uM6|htCHٗ2)+&ͼ'@ P;¥@;AEbS5+'U&HԞw;c}HԈ?b7D> :PBR)Jh8b' 'uH {;(4#_Q!'`ivL5OFeSld<6fymԙk(t !J$6dqPyOQ?Z.VD,s g=݀ E7-Cۥ]W\pK/!7T0;n@B\_{= qe> ,qmawh7UkxXi ӨYnltH2mDTvYe圕}msS,j| 4݂W FUҋ߀i9tpbD\A_'0\_k5^1~m:붯·Pd6|>{."RI9 fM AƅxSwJLpǓΨE10b(o:稐h~j3V&j* (yCq5WQ _A"H*C$,r\>@~'H\VB^D7&iba7ZIT뼾,Njv]=>mGVV^.X:)ϧ]ЩL@&.Ki- R/< 8mF# ?gNJ~O {ɰSSYUe"v _pmWAX>nT }"(!6}4Z$!"rY2◥ \ /o"UHoNZ{ugydHj_MSh pSUh/+p<3K(! WG52ѐ8Efpc7UILS RDP{z.X}yBQд&@]qoCJ"$#;6#GV(07JMn٭zӈ\ ?'KZ;}»th,٠$!ABu_r)íN))Z1*|Q DBb}L^p$kb9:+4ݔy^᝽.45)%o W9Ыuel]Z3JfPB ʊGDL4zKS 9G1@;!&',rKP1sȉ#Y5>6zhq*&k<Y@=֙K7 [pMaq #RqauE,BR4=`lR꺜HkcROܼc/4.J F~HFru\}HP{e%{n2ӴlWx乬رpsbZyNgDS3)E9g΢N=kZċ |fI,D1í;@iGe`ق m^ Ӫ9ʙRݩӹe.9/hpRھ}֒iٮ]N2RleF;䂩(Ł_p͌s*(K&)n4J5-TEDσfw=!@G۵ScJk_\pF0j`(P/ws+*L+YF N@3D"Q=;g$#kE'r.^Ӄ: 'xͮbͶG /o%6 5U̵Xq[Zf7MXeb7,l٬!;a渓SWٮܵ3]Exmv7)u2p<YLΟBk{m (@# H\'Tp#~qW{`+}=]|Ŏe[ut־[+^&\sY#^DÍZV!|g:Mh(ѧ}AЦE9(ޑb301ԙrP÷G3S`UR-)$-c,C:;BL rCQFla&~Tp?@u,jȔ:di5\m|U䌙rbiGFc&*HY+ot% W+:l^#J~?jrI41\c L2[&kH-!0̀Sjg,ǿ>O >R̈&?˼k`@C}5ullʝ-v/ 2n_I0v-G2|Bl"t&o к^ShDXyZ &FNJ3R]@g6uY*NG,z7\wcL?$ Y5- 60wE]'h]̵Jߜ KTMo+NS03{@씁Ȥ@/.CCg-f1Yi|Jt[MӐ>*pRQW3WIGaqxs nՆ.ԗ=\'ohew^0V {y>Ś{=[GX}' ꝏh~x׀H9kd2qbJRb(0->N,軍k05vT0# tzG8B!J6A>!jz(HUɜR(b P`[Z14mm6lߴ{l0xK# 0 =pI?Wx͂^DIKY+~|iބZ^%W͋,ӧ@<4X.VyN8 wdb3+ܖY#D Hrz'ƠjzXda-sQCVE*aJcnhEF*.pm}Z~'V_~@}}tme&Uu@G/W >UR(o9_ت;{WL/fެź.]i dQo 2s 8Mw2ЉEtib86= hz >4?Fx?AǞv*izPu<ebpڅK?kう gTL45 %h 2&1S̈́05} ;W?ۏAY1hi5C nm$"H+UV Juo=,έʦ0}J,9Ӄ 0D ha@u莳[ƚ*me`ܪ@MPsⰷnVDv/pCvһ80wи/N^qӣ/ u>~P"܇|jy [͵pn@)}hM3|*j+ĥh/rۂ39T;p[-# /r@CQU;#y_ɥh7sD*36@7wlbHkA kBHkÈjQ):jKx'I>9HG  Bjmq%ڙ1~DVe,Nͼq'MvI@ ͏ -Db~!ts)NK ]U$DӑkBpa 7 zE6GoN뛐7t})&:39.>P$jX-.ɯҌFU:=1Ԙ.{YcٺFA]]H]y6OL'qLrG҃{aF_9'mcx̣,Nki?لO`r3/BxjdșH]]\htm n˒K9+t{V'yCYj=1{"*i#u6+(ױ2F7,~JO6pAn-,Ǽ;c c,)=X$ ĸ-'iIβB 9O W)x(1ޮPa2VspXn"oFS?.:)J)I4MX,Mƀ5\ja_P\L-fٕx) vodun>ffx$W`=F.RКԝo eXe9:Vz+m5 'Kq{a1tŞH^L:5GAo5 o UGO"`qyg;6W>L*v #۠+| ;y [FS{\ng-$A7q=: fDg ,:p6ֺW󫥊 iK7GeY*RVƨ䪵v*vKceٴ?ָS L4'`֧j.A?m QۇE80 ?`O_էjnϣD=}t,|!uЇ/V!s!% 1}LS=; )8x"`~;d\A !V͗ʷuw/(J4]9x8.` 8es)~5tv OU._<;ᦱ5m^t}?l`%e%dQRN+OǬw҃ te81Ot-Dp8HGeq&"rW"Xҿq7)* BA>lu5c$8|Z Ny 'u ͼܱRǤ/ݺI)M@Βa +TĎrQXtaJ'SKD-\A=2]}9V8z, eNz~PʧH= ؓE ry]6uf)pHGʪŋ`$U9ՓzOX$zoEqYnNJqx<:qC"^?? `>aU1M sFt]GՖ'٤mG:BR| L|TA oo&s5#͸!/W.ށ.kȀ&RQxY(hGuBctP7-d^"hq"[0듆u90^e uO~7E$@qS6T fߍIs@(Pj&@$*ςq2ޑ!x"m.ExY,p &}oXp C!G@ <.\ |znSBAȒ8k{f#G%:ġA:*@6igJ;zHinWd&mD̆*v90 t@mBell) ME0 E2=IZ\IHo4rZ6(ls69dI( F M'PzV=*'($J- ?|1S C BiKPDRE b48xrbzXw&s1z]n)0-,Wj %!-?⸛Oj2 5RM B65^K:ꌾ2u sGt.^ gLϏ)c5_TCEe. zj=fS.?3#,Jgvg?R!ڜ<}&#|1TTo㿱`90aoWȼNBN;lӹav`y'/i,-x> $eAbF'SسKbP R9>ݨ f"sk`K:d@U ܄3&F=K GYj (j>;FTCbmfovIFT;UhWheq}ƞ(˜g_ 6p ƫ7mqg! p[K^v5ɧުYKrI1EbD4/sz&lz&B &nt 8մG1 ;9֍=:֎5.HZ>HXE(Yc U n? A ؕ3Z 'K4"cwH8&ɴ@g?!WesdZ7dP7'vb2D#FvOCZ3q5awzZ65 i(zsi?-vMT :_˭zkWQX˞}n2DbyD_QYMi_r>pN!6=@Ljgx|~zOQf˿B¬0_^z+Zp܂+WM,u!LKY*%# wˣt[*%cA|G~mNqa5/L +i![:i lP7(XalPZ݁ (&k_/9^&îqgŚWHK6P2J~Ǡjub +dL$Iy7^o2Cs֚,pWP-'qTem.$bȽJL_5ޜNW\'.nɀvƂδO}U 53{43V99}lVӁHF#}2Y[))k<+4@CofЧSN5|ŷl_d4A?'ډu?\'\_>y)&ΪK=㯋AR&V1B]G7H$@zLw]hԠAt6ơw ,0޶W6JN ͞du8=x)6# y2)R3aA??]6E=;W8+z0<$Qc%,CǥwȐ-d=5ݑ#9 :2DϢF"f>8w+f ƈhj3Q9`y#Paz'Wz>f" Nx!nnJ89kyIvv:n%m`z~ټS"Go`BGԃV:(N_y_|&3}?spY$WГp=j)g="Ijh53ime-i~/ouF7@cnKòc>?z~%# xVVsa ĒŦ8>"Y|uL)=$u!+;ս! < !t\>d(q:n$2^7/X[5y#"W̺wVt3Ǩ!Ԍ][UHC:/<kQ ~3R`5~cD_ od\k0rQ#X; ~Ȳs9aFc\Q_YnI9 2}yGp4mhB%4]Fթp$pb0 ,[Tf=ݤCɍ&:ȧ؄q,L'9d#sݻOB R@ 6PuˠPV1{?:jR nȖg=WrU%_o ;4Hwbe]om/V3+\{r+}#:h͞>=a;FP~Xa**2ʳj_& l%}Z2"fGdԽ ^E$` oJ&N0Kωr -,D=*{gEݠ'!>w9Nlf]&EN@lR/&A^9[A4|(@>ةf"odvtfIAj?FY m]Hs9@dyƠ.q))CMq5 jؾN-WȽ'0*ϨpMO;3 XGxJ>Jٕ%lA^HwTnP _zyRz R'RY ܦp eNPQ)dנnCL-wNesY|Bpl>~%VlJ };=`Θ 4"HJ,ĸ>:.$ɚg۟`E@6*(w4YP0qQ&MD eQcks%l)n>sg':]UB b}w1-`@'?rYfrq[6T<;#w f[2cP/L hp84"~A{~³pA^6k/8t7Oޖd"qs3,6ZH Nwl^[˟۲gC Á n~%[ϱf堇Odβ+}ޡOyh8dLwY\?n^* ҅ ;߰G=ԟDB%_珆e_H]APmRLB{xX z?VSt-E2̳ TawWwEoe(L HYۚnJHW?8\IykH3{'\lr/G"*Λy|j30j%4T_[ݪJČVp!DxᓰCLm\J;hZc4!b<=N/ ր,}ThݔnI]p;YeNTyנb8&~&>cE1 ~hYah+?*h%s [n q<' O;vܠ"cgyB38Cۆ6)XmalS`7_XN4NY kiQ/:IJjp[.S)j,vB$5TQ`hΡ7q;l$m &m _3SŌ[4pҭcۿS6uϡ?_ +Z }i~A+4r&=8!w'zgx}uz:ooA:7lŅ"򚖘&ƌ"B)Cx;=llFZUr;dIK XH焥_#R+:=C [pt ڇř1G2MX{&Q@Ŧ?v{iJ 9_H&K1V\jC<-Hˀmz-=S']LnX2qTjjVn3|c)F2 k>^tstAs?2v(J+v7LHݍ0/uX6e? R3Dž Cթuƺ W,5UΟPK^>NǢ[2`gY,K7-La UI}a;pxS .,o{t B}Ʃ}`XlqcO&BX6mlYBͪFqH˩9DL3́)&1XF8LSʠ}qF+IzvyJ{jInq]4,«aJ1{ v4z3kM*otv4j׽*Xа3jHU&Jk\40+9r j|CXML߀k+3n=3yV܍AZ!:@e(y'DG!snǣ7x]ۖO:Jr6%CԯzܔM?5ZOH7t![[|;:PC;HA9RـWl͌V;Χ:Ĝ8[⏴yhhL(Md/ۃPU!b_;i P#(P?.|^>j}cÁ{;u?-+q؟hi+N}o9WeUtU$!HЪ*(b=e<⒎0@i1Pqlr 8 ~`3f}#>~pp'wJ@}Uo}[a_vh_lj JKYpʡWAAzSFclN>F@>0Ơ>EPfMI$Z^~9m V0YI5uc}ۉtVm r`] ԑB<Q_l?TjZw K ugd\񖨝VGxù:RdHSݒ>2Y$rQ SsO19Kj8AmsU ly,AjXc$iZet>M"Fr m^ QA Wސäd7~}+)3?Rd- ^_\ؚ1Fl},[]\Yx?i2r T8 znl䄟uTs-ASWڐh>8(~QzB-n%fD Э&mK~;js-WOpVz!$y$*(8n]O? =ꋠfr!'\ԓZ90e`fex@vʣEbp{eLܔmum #6$c8H_%bK9KJXUXAH %״ W[Ԏmɘ"M7j4Sh\h*;7:ܪ@J88qJ2ʎWQ} r;Μx$o|W0g~խc`S9?已h~]U!.ĥZIxyk[`ZA9>yhK6r~qOA 8 %hW3W3x5 ,oT ӂ=$/@^=7qڌP֩)־aHs.Y:ȕ!3yY*)ySF@=ϡW/A!éAw%RYGTp+: V)RV3OI_ Q@$bS KMouD=pǙ%jYgV*hG %.Czgs8zF6 HG (x0*g1|!fsJNmʢZmD!ˡ%wPKWėe]`oC: XrsͶ_N6nR78'[)B]e1 eճ-<)0fõߪ06Ρrn:,󉈭$7.({B[f|Uk{3T%wiB[H[ o .-Qٍro /Im&=pVUNQ*:mIDlI0{[.a[U4K{/wP8rYdMz OlU{' E)`O;@ B&&uWrA}D/ lBfκj<# +INH%721±¹}o)sZLifr0Mt<ұe]?ւ^73yv[@̛i}jѭ{zwL+ܡEYP\~0I(sɦY!) zO?~+8c_8b[Lv⢰=v*pYui0$ K4Z qզd`jƹ=/a<5ZߝT/$Bv  o)k5佱X4?W8-5JKd@>Om@/8H9'dx3~]R9ЍkByG }8a PuZzyFl GE>_CB$MvJp%!#&Yks+ *n9BF줹QJE>qjb/`Oʋta%8J97Qs_|u]$39J; nk^_C}C>B;>novppHTPe6%LeaƎVhNDC慷BC>+ !ޛo K"3'_jZBiD#pSQSE}~y1P1T!!(x'1ix>Ptw(~s,M\#B/nOe pH(LuK X |2uvyx8X|oXU4? :7X"ߗQ꫌J d bh8/!cXqHdn;}hv^+3#y6 Gݪl/(?-o3'몘qlܬ{8T}]7MoB" [b eI+B(M$5%v&+8tɈA8YPKc@%$yj}/Z?|X)vt\:N% EwW>gjb9.g̎֍g$g.c@{2@e ̲.=ɒ}MJ8/t1.)0>Ro12 klE1*U+>E`Uy`oNsgc c(%(FT"qvyFr^GѿbٹӽM/O s/1hd60urLnx|dHNK//?M̧uvr !{O]`nReHtfRBSi zɵ]ΑhˌBJ#%JgF(cNzfD{Bp~rsM?>9^x 9]\{ӱ@d)Ͱhpwshswbe}LĠТW0&<xQM[Q9ClJʷk(cIvKg坨w.?Q[Zβ F5hqwU_呱 p\ \K豲j3#vژ$O)yID PNw/YvynI4ŌRteY, +:~3܃dcQ%ǭeSjivOIy1fwpZuC̸XڮVc҆aZ="TJQF>5q|xF/rg4TP>Hd73\7Ա].b׮A 1̼4)nb#i,\: uG\NՔLN0_8ZY ‹Ru5v(-GթkuՈJU㊼Ar/ӣKElX]j2e&Y`L?UnJY2m4N*TP ;փfi530I`ˢ9N2QKQeIOyn&dȠېv /mb SICNw?ȼM<%}=ﭺh5ȀOpukX&I_ s:wꏍs|>E^1 9ahGN{ >/Y%SI5(Rbw߃r:=;do 42ig(Uh׿2F@-#0Mc h@|:ZJ>_E]Љ*l{K7#+k):yjZ*T頬v͆mU@kOeD*F=//U=Ɂ]|R6)qis-瀵DU'Co9 J:|*H]p}1cOޮs d^N;IKָMDiJ<[(Wpzsݙ~ԍ(a'DSY1JiS58u #\%w=~|Fʷm0/יA:|L0ѣ$I]d2ta%L-gAa*_@noK OE'vi62A}p%F&~)g +KX,6ԽTgr)Ӑ3GzLͳD^393`Gwp;Chz#Džzu9JW/ z5s})lX$uuJ XR}Ѹᇻ[A 7xt\ɌㄳtbE5< wK#zW0ʖƀ(tt0Ֆ~!Cޑ Cñ)z?Si_Xi "Ӌ% X! I+ @̛f垇\<2mNP)*xXXE2/xξf=%}Fd"gkfg`9A/[ebSΰnt&p[bP%6>IwVXR((UDe EԻknLpk_ ,]Tl1[6ӋFȤד %~&U-A2u)iwHX~u3yrU`y;}*,X oHЧ0"3im$UTGZDݠ!D>Ra|3ўYByαjQwf*#/gmP.;(U²"}cw.4_BШVȆ L ݬ_#ܡ^"U#=qFkk;4MnwKu|PЯ4D?yꋕSIXF q}T~0)5`Q0b-dw+ &u4Ù SQ2Q<^G8fa'1-JDr ak͢/j٪نp"a0̱}ڊ[{TM'G69Hz<0FD?z&Ŗ]" U1qQg[mMo@or*M3]Ty3w-ҥ ?%ֽdխˁ| 0? vUHUJ1Pds@HY(`CV.¦z씟6`7(Z 'WxBfLPmGx&b~c< tz!-^*ChS(r)RTوa#f' d^.>v Ll){eě3IT!Ǵ]c%W7*@_IQjP{8haaא&w;_њr'x5 jcVm\-V!N0@Î$LY6~ H?v66f064zJ=bb}|5hJ6FJ? Oo6Rx뱊\D1U1geYf+)?6;]99fV$2-noj;e? uۯ;[%\tUYDҀb0FsxP,@a+Y/; "N4NfP gKzjt [ZXL.$+T=y슢2tEu |5ߙ2/CS O71eWKז۵/{IIf.lq7YwG8B6 PL{&ђNH vk0e rVϸ4`e_cE{{x;T}mTV?}' )2_D7$jf3 ^Zki]V<QKsD٤a9yG^}<\$6fm&FI/僧"P('xF9:|&'M+S ϻڐ&H%E , WxꃬPd\ P2DQS [d;>ɦ`Ʌ*QDG0s,HEvY+LvD>M%j#(ΦXo yj)f*#b]JwOW;5}͕U)Dұ9TD$3t!9_z@28e+Kg6Gh>v<_ AaS`,F)f! 6eME}}k]A:[46[|)@X"VߑD0j/1 .dbCcw!󞂸Rk4N,jolI)m٧k+Z#zNxnSIVNr~aǸ9K)t5ARuGnyDL+$fMf}ͬ1xHs$//GT\VG:9lz/ZߪKʺfDʺ2#6L['A;Z7Mgr61c/e .P X"7i~eWOCS0lV쁳/\s3~aC,@qh7h#0a~gS7E:LkBIfƮLbv$Fg`8Du& L5*lHl4s Ʉ(Ok <79e_]̬s"ie?@"6 6mnmYa%S c4pNRCwh.fSԼ=1V :@NڎFY.aR:|}"h6ފr!6Euڠ4C#܃=]LNq7p9d]1~M?_/z5naE]we aKo*mDpd,L[v$d;jtQ<*Tre덎?0e+!Ԅq!c1s&|J*:b~d%ӂkl ̷X1>]e9IBWQR?F /kJTVeboBF XEy1+)^fGcEXxAݭcWoXlƽY4ET0f#deDԣB'hVd62 ԠK@X4jIC~g펉.TNt\q}MbOnolȰ/OI'>@d]elZH}Bfm4%)7Q& jߥTU(49v8H1*`Ҡ7fDMs<7d/;jsQYZGҍ]މ3ͭ5e*C!x]WͫdWY̺To_Y@}84~0vzf aƤ]xJ7{(w*b~ɨG6foXˢ`m3BuDp0kvm(ur .+>B68 …7E8(%PB80)@SLMcU\~/*& tԔ*V0 V6PE| a$Pۇ2VR ^${ HܭpV#-Ҥi$ܲOt!qQ 5g+OO[KxXGIa ;W;k]gJMс&fwF)/k'Q<ƈiXi!B4%M&^ej..[Z(K Tx$Ia-HVƖ6f]y8{LC 4fh&s !ddsi~ʱW} . M_I=~+C+~,(n2B* aTCGkv In/7[rr]QСaq^tj#Qe&_fjTB=?96-$mL9+KIʙa?%$;}kU}iir޾W9T+ ~1i1y0Ed>FХb!wSw<YKŃbқ!ZI{FdeY1~M)cjB]GR6%!y%ijIΛX@ך"BSGpF Q*,n~ B>$ͰQҳwN4*r9z_ּ+y|Y6e2^#?+]Ņ,Fפ*F"+oAnyjTj8u*p(= LyCU5fΚo  c|!jq'pezL6ҴpNuAb5T8g7| gY읆Bڤ+h#%iC ?3|bGM^m 1UP6`1ƙ2xꯈhVc2iw;Qa2}#Ev"'˴43adĈFZCG%b5h y>!HEoJ/.G,.jt78ن5[. \qj$W~c{Xb9)Inuhdrn3ג0&w@uuA9z Y3kW"u,87wFi˦sb:exgFgW. eb`'c,!r7[_:RijJ-vBAA\|YaTϧ I'~7BW9ɏьJlv >}[GH*`hZm}>>Qgt12(?7hFGxݞʼn7b{K]$&dJ㟄+Xf#3\/?' LEn)jeID)@Yy8G(»ᘤM먜 ^һ Ba;o?Ax\:Dn< Sqn-}V)#Z:ᖗ=*,gx}l՚;&%osP/c:1/U)[xPFS/Nzo1&jV!]zV =/M}="yCI&nB} ?1|Oڎvo(*ye*0~]ׅp>@n |>+}1 eb@<AzckYEӝ418Gk v^۵lWqn׀61v* @CZ:Up͍L9i#>볧 ҀSU0Uyið[&CbPxcx/L*hb3vݔl^@[gg]wQT7)iL~ iaބa)9Tޙ^7aoRѪyW7)X@YOp+}<a -^C$@=e V-'*UC}^,: zMxZqR|!.k?@C]u%Zl5 lS$ ]$ UOa@!߲T֍H]eÿu('E+:"Q.-eO'Y^O5٢|IT|W 3c`y1ԓYr5 @w-= d-`6D#04ܓN6pqv}po+K"4J !$>?5UZ`T(#[ߺO Ng( )\ TaXwm[:qp}jajD2i ;$dǓ7VTf2.02~Ôk(cGe@6(]<+x=կ*6pVJ~2(MK3UtMl0tp"-n_|_ D~g'[\vO9?u|%Z]O0K^f#kO!*`EnCjb>lu(rS2+P ]C{r<#v4L5D|֣s[6AP%ZE2ȠO.^*KBFw+y:eE97;{ |*LI-K8v"ؿ9)ws]ڮY^YE&H1W3vi WS?&5 ԗ*ܿL//u ӢeEaM&ςxJٓJwqag"AW-!,/3%b`WJCF+=xh!)J^JS4(|{i*6>U6OCo':vo?aHhkA~%(FǮ\o SjU^ָ:TEClxS}XJ?a `]^+oǮ#)< w0ZͰ>h,0"X>`H5Vsu[-7Ao\o4"R%7Gz|`S|Xd,Uk:;ub A\1>BxP(w+֨ypi6-U5\js^wQ9<ޭK; S!p&E0嫠dy*Aɛn!"40&\GO5%/\&%sl4kZo(u@K^IP/Ř` Ҁ_kLid+*Ft>)-dIE,Ԉ+Hē\7ډ_YLƘv YB2 ?z#*/*aQ1uM=!Oy@A&|BH =\;>M"pe 9iGE$:P]EЍ-LaE^d$2l lY#ܛOmdCL;$l̟VbbMS.=8&Am^WYuKg{ f/_oOri/CGj(ڭ:A!I>)jH[HH yF1.&iOc/i],1>!g^< ,2,J x9'+zU*&:!cz;9.Cy7q~h[]Aal?1^mVq^0YW0X^,ЊDf8ͯaKES|}D; %zsTq>1W9_tzX'ہ|ƁG1y3hf^X6XP8˻\ -Iiه8 U8 ˋH[g4v^ݕ+O]T[!d앾y9$AMBDR9<.W|.B#m:,u?A[;[)"MxMcJ{e7;Qnt|)S"Ԯ"jyiN()\Q -/dЊ3%7>h[{"t`@lm7SNIDgy[-${MWMyUSSI/4:c%:a"H-0{NvueRVC/ eEŵ_[tWPʠ۲ގ}%panrv) xi"0V?w;v<9dП(:\~ד;l0OHW?kM/eV>VB[;elng㼵Z6'_wwD1.l1֬47a0 A3s>9:Ⱦ?5y GZ'Txd qL 䐉*/3oĔP D$kVO~ ?b]7%}>BPrI [vNhC bK0Zg֩](^}4;k~dlW Caİ#zo$dΧ47^]҉0F6L= 1@A Ն:,7f]a^2Ʒnl|v0/~o5Q;@h\67^icVyZG@OKM_us6vUQ,=T/vv<'K";L}ёLy!$0slE0~E+-|eUO ^s B'[n&Gd"w0Q+A;/l!3B_)2i(qt*M/[+A=Fcȭ '4-Th^j!dhRNr] }4秋-,a YTOi|CINX&nϸtH1m;%qS7Sv BN} 4tQ -qWDgy u{3er Te{-]_Xdȑ|Wt٘͂I+AL֫('@6{D!ٮ5(߲z9 LWAk4sN+_%_ׁr3.OI"?(g ģ'[]/4i5qKb#Eqcz-xHSRbMp({.*$T+wFqV򔩠@7U{0)/};ʿ_Pȇg[ i[PK'p!#1)~_/Az]n)N:=,{+iJ veF0 b $)g?k(7RT(a>A1Um@U9VY@DE&:8lBvz͗R쓧ǎW$Cu]zft2&;j#p?ܱ5eP`*a6È hUr6+X[gͶPXijmD٨ 暑"@MbT_8}`F!$9mdCG1TL3\^0ۃq^F-Uڟesf,Q* K: kC4eLzjq~wX gkD MiˢIszتWRSɤ7i ; :g-/LIHʞ璤FOi/@{[+,ݨ3D܃+@%JI5̂m#@n2]G=N.2JwrpfϤx}{HW2Eq||w!Xa.O}h- "R}hQ(G)[IǴsψJ@*݉& xbø= MN;9zRgÂa!I Oyb4 ĵޓ`]eU|4 NNd́ܧukŎp+guB0vY#;OvcfPo:7Yl9tmg"|Ґ`00 ^c4@Qv@IZ+qt!J~MNJLKD&څ fwscwBxqeg\T.LNkUT B|+{qkvacR}=WӎQS,f/ˡ"q!A/f.CozhyBzx (L@_&oTprFꁯ%ɗC<ؚ}G[MA2g-^.6/zF|pM$d] |"eh*1 \n!*|B"AʎuCUfBMZǰѝ~Ô)[^H9TC>D%S"cK8c_<|O)_%H g(K1OZq!}F1ӣM3l'-k5M/T;0E5ЙUC;Dd#͢!** }$6=d2mF=U+HFfv=//fD(aJF>#QLh LF+n*f#hzf>5ӑ ,MĪ K;U"*MWLw WKhrU2ރW.ҰHj|Vu)$1mgS*=M ]< %@]A>a^LLk>^| ^E![o qݩd.d( I $K-3z(5MBT긦) 9c_&\D SRIM8  8BQ 0 _C7FN|^ c8nOqqg*Jf2\Vdݰ`=qr9UȆ#j5r?8_H|HM˸.2.1`Lr <>.>+q& 5_k)Ha P<[DճSq܂4a4e@Յ%68}oB l#|jc@'wچ=!:QƷ>xWd̘_JkZWUBҟo<; <ÁFD+/\UD 8bk҃u@ r; >vEbLf/.6n-e`LKX~ӴW5\7-9௞ot?{7B=N4",کӺp|`n6[iE}3t]*Z~v$a+^KRtԾޏ-.] |c3~ L*T<0m o/ 4Sf_Rg['xX40ݳ`A 7}΋K$ xn<5rhyׁ풛L@ X7~Q+ /nqdIm.0I8# W%5(f =[tXHRMBT,¯ E>kbV)l;sT1\ x~)wxjC qYc[݀}!My4UxA:_nH҅wM`8nz.-*T*ueUqVWf܂MF^ANx= cؚ>;{o%BT F,J7V_=?G@`nT: Ӈ 50(z 1_DDUG`4Gj71VfӻG^?&sL! :BA-s,* P>Lv|ȡæv՞j(~IP[J -%,  XqP Hp%ڛ5GYw7E;)V>QD)xYk-Ɂ4)hUSw@~Z) Q'7*7Z|K5%OL̺^|DBX:*JR51Cuo>rM9tu%z ;[* X-4϶i?cKsIϫ|;+.nHf'rxxbY4my 7g6a;X@vVЌџψuXv Ӝw? Ar,wVB߫.e]BKTM0 iR1ms6HtZU]OGȅ+{}I#z,}[ VKO |!1@(JQ^3*+I1=qSD-馩ŀRiTFΦ~R/;0'q0 F)0B ]J7ks;JvqUTKsGaPCfSBS$C벨߂|ULwB'눭¢6 ^oʈl:buM6fG>2o6,>=R \Pq*l"[v#Z:NMy~mI%J \EK`bF: ?vla6D:Q`Y\K.SlXW-*AC֨G] Y8t(UV rykmF+JzTn]dVE{u[v(CBppC(c2Dg;T48{5*H-9LNW5eK^#fHqO,DGhq0Q "݆yx.>a(^3 (^ut} kCUusnEﻳaXJa^s&T[Y?ձOҀR\>є@ZZ!Qi<KpL+ͫR+8{~Cu>SKEtpYl~uH"/ _6AoNKFIal'R /\̘y殥O`aUUW3>Ղd܈v\s\n[ژ)=ꘪO*Q=qpK/6 z!*SФ`= 6jG g@0''?.Oxph ސ91 1(5,h0 EA*Ty.Mm+d0. XQ(s4ìG۟}@qv`ȴdgr.naU}},B'TH`ܹw}/eـ6@3G37&lU{5-nĉ}/ .cEOi87~u7mGh^MGlcuz@Sᔚ8WRT~UN(.\G܉[~{a*nTL>'E&& ߓ(YJ{;ˑfxVw8ٞXX"-'% wF+{~6i=7~U8Vpmx. Z'Yn`CÑ0 vɇrWi#L C4ܼ0D?Өye$Ɛ vμ+k~qcS$T&K,uVǦ8JJUl؛tE%~ƁE$QM=t.j-j胏7DO)$Ts%$>:[]9o{團T{߹3;Bs\E.hN*d u A~,\ܘf@bnC>Vz!o~C Ge%OR}0|ÎD=AêCh§R{xY's()|g Ki 20'jfj{AmNbSE窅3b5n=3Rb <_"o=˯)j kϔ,o@{䚉y\ yei~Ax1H kZWIK=\!Αi>ڏ_ tzw{ǭ)4,Ʉi .38,MLZg=I#36+My#^ [I7v<]c=uK|$r1-ʑ"q(r;Eo~tYyI Ѵ?W[ooŢ`׻(Ro%ru,_{߲8ӗreDF?؎Y{rBp%ե<_70p2n%ׁ{vK=W]>x$aPzW\XY/Vj蜰c*ƎGk !fYG,̦Bd^0w3g]Eۑ6 a׾K ߋ{P`GT1=jN! gUVdi׋W[QYP}.R"84)1XM1 IOzMO+ȸ%>=6Sl ]!VOnM-tP7@'p$ѓ3'"X\{on`vn!Ĉ/ݠ:H$r ۹0F'iի/ bm]CrPY7ɵs# s;<9LxT[f(iV&c7ڸpB 9{-/4.i_˖8rz.6Xe N* tUu\h#Dtgapn;JSF]$`m@رOG%3pmf1^c/]WgR~Lb3#pق \D3I+kjV$Qd"}1¥ MW%QLSVUcD1cWԨ/?rM0xxv~7M9S$Qh@Wc5wneԮY6D;'u>q`$4؛N baԖO \z՚TZ` o䗝( pШnH(Qxf\-5'J:C jcO{9N>[zp >5\?F [ MĂcz:Oج7ʹ@:tF{&놓s潋V8^ȐCb3y9?gl&zEv7{8J>&^eކ쌴K`j-őv~Plp]%nS Mey}} 胚ҕIE/} `ƻHdxwWwd.wĜt7vu v *8JKycp[ %0+m%6dFt 3E#gyMQܲ[||".Y%vh4iffVdVхtNB|`َzui-uW `nn-ۦ;lwK@&%*w$3}nfJ+7#3IEPRjOi6Ѭdpig#M.% |?9;3J_ڴ By%g,1Pq0< b%S>2zMŽ=f%v+RpJ-5ǫu-y=j)'P+d!Z'?>'0_а_} F̳njut &K8asXs5 iS\ sHiS!VlNvc'/fdI1 $]a&-N[ԐEoC!Ytir(!cUylbg{bAлf}+17OPp7jq:"}>N"@1KEZ.We;eep71^!+E"H&>Z`_(yXL֓ʶx)|(fZ3&YΆer}1y2^'A[OBQWgV P-_Ͼ&@L`˟k լ^{aPۜ;D ɺ^ϢBj !p|Zu>x(VkF_r/ixE/ R3!y@u"8}AqQncWqSqsUL){WTF+T`s;{R\)AY&k g2PXsΔ; KKW$<0M\#6sY "( O~zoCW PUʔI捔696|:"[1a4P],9_HބxW!"&W_DiQ e֨qKA' a@ ~oPr]DcAkAly3R{o_|cw&=jBN7-tLM%v4o!ў0`cm 5:%_!ڞ@H!oBQ []/EB3ytlg5]'?Ԭ0;W'gMfk@œ^ʶ841ިZ:VGWPmMc@fkf.DhGN/Ps'5 z{6+_tB_J!9 YG6[[O.[˧}4aʣf!%kMAP9Jtr&R*xT}+娋k7W})/d)K"3ukw${n}?I^/C H#əú-iȾӘAʁV~KG˶MaXzô̲dB8Fݘ-d˶;5eOr@.Ӏ F ïN!SD 4,CŪl=rc:G@.9 3\Nuxy@?$!i횓O9I>m;oX9SF&"*!`L,,G/tŌe'FpV+T{3w۰mQ1wnUDjN?23hu)t5AE"kؗzdq~.MU OWƠg9;oIb FHszb CVs-/[q|.R̐VV0doX*kdIU; $8BsAaI*"WP`K,w\.hغ0Gf"ae7֛'"fR>W!~; a9٤nz +s֥b%./Ճ˫`) kZ#~[XEVC^b;-ãg*ZAl8?U4iLe J{> h\Kq?7G$,[F _"o/*սe9(\;Hy tDz2>;y pY?}GSqH>'ʤPGg(#%.9"l)UB2hV8儒PsWZPGHs%JSAݗ ~+4 -ٳSS.G6p;Gw*JN'qG'"+Ǒ7}áMz8KL$ZDvQD98I T,)s=4ie8i5 )BolZC\.~)eT?N%.lwT38wM%5hD|< s!HI "L*V,g]2w4/ʑrkb'Ћ^fs,8#^wnUSS Z5U_;Ǻ`<a&4 b # +d yHB?з%՘OuT= ]l5_YCӎ}n5AtAd|Wh~77 ^(,1T#WosLUo:LNH଄<'߱sԈ Wgy˙qlImMtAĦ-; 0`!.. ĊT{!-NFVVreرҰxcRq3;!ҪJcRs#zx14_&A2 (M\Xmq'(H,.Q}`W00nᮦ2|I4BsMo1\[a@|Rd\ۅ z`v@;`c1c7߾v\Gϔ7oFHξRBX PC12uݺ!gjcH bmTrm׆xyL” /qD r¢b?Anu*CP P` 3uYIW;8~6,ʍPXύV lp;yünu9%_UuzƺA8d8B@؋A|E gE% ?6hValS霚~Ώ*Otp1(APex1< DvS ?`~(0=grtL.d" _wY\9d|3ܻ c R\8 댭\#P`nRzk 9ifY@!1 ( KD(FcfAhC` ҝdIMї,+rOڌ|N[cP\1:!lz\Hb]%TL(f7!؛ 8i?D&<.ʿe_+'1H0a 1Lc}mP?@zo87xպUDDc}AF.=`tӼt"*djT!WсӬ;,iD."ܢdaMv.e*;'QV  P87ԓa+3`8y@3K%)춪B0Gt d4ɪ&uMK|JSa7Vp.v|ѫP e~֨i22T<Ī@ GG"'=i _2ުcV2"q@Tl TJk_Хj,=B.y-C̣v 8$k' 4_dW sRo)R<nP(771[G`b=K<`B̪"hq|HeNX5&IQp{)nJ")~̹0*Jw-1|1q@o1ʓ}>F?-X ^.úhwZti]ym:U =x1J]kJC|ٯ1vlcXz.!و2! TD5lZ h*'/LS2C삵Q8uݨf*¢qt_tS+ںx|y,E?{ՅRltGhDeՔ幔;cGv tCA": /Ȥqf1;Ytct3]j=m:~ 鼆_ )~b3WqJqF@^W=Lb5BY0rY{C(zv(rO$6x{TVGq:+0O&x]?n.bRho-ք9 7Puл%;yE26$!{ZVf9K =Rz9|6\ww^ xޕllS~zB9Q }t2!?6p2g6bheyħu_ f%8)7 !3hAwi?lpWM1wp%$Mg9t&>.zyv͸baVxEBo`6d26h??K9+ŰmB6B56,%{o֔WۚR | C_ODE{ # Ј=A$| ceRFB J\sxއغPӱzJL9AuJ *e;g%ι _[j].) + K3^낤c@"g,6&S)bmxYРYJ/|Z`gg UD.=W ӓ. 3|0XU!"B7Ǐ YBPu$qݭV3(oY O\ G}>g %$4j *K$];qarY6Ph s^G|~jpŵ -g$# Nk4x(p}<|z2 r2]:Mi.km7&h$=_~l;ZɩMSUBsȌeL $JFg>|ֳs0_D c&ӒHa_t eJAYi_j?OtoAqLػf9"{_ ڝqa 84:~ׁ27{9],(i}z1G0h!) 8QY;Mib?ڡ}cGd4SwJ57|p|;X"2x4?b۳Bw%^ k[)Xy*B ;(e֣^9F0|7[3Lro!6k/]TK˟s3NѣT@Rѳ#g(Ov25`q"OO4Uo1/~y۶ jL1Q:!a ~dzŏoߜ%O3;r&0-dH3g.l%JZ#Y$iP{Nysn!~E Mea}+'Tw],˴Ӱ*{)H4sPd$.@0KN?Y FNb nkVYR#Vt*$05c1(w!W7Qt g'h* ܟ,A~cՕi}W#QN.AA4\*Z ;S7L̦?OIӶ-ùڠd*卧-8ݩLvawSrgzafsCTx^ج h]tZ; :.z6D -Hfm3Z{upn@(ĉzӑDŢuì!'s|[ aӛph%Ƥ"Z3Y0Nt*ZhT6o,gfC,^kr*>\iRTKZ8B1 >QA[ #.`W,B]:}AㄯkC 0@ IgE [)Q??DiE$\z bv5@#Ħ \/cSWO/׆Y\1 8_[*9 ݱ pCPOb@4t}_ (x6Q yxo.(P [̀^O{P kU :0Wz?,y$k5""8>Q"2Ko0!p?7䰦}D~Dhakӫ/H4!-7Cvߴ9'e?jM1q,s&&"c `Ӝ"eC 0,"f"܃?5d̢D L!|^X%VJ}/Xx}H2(Sxp(kidZvLrξ| 6ҩμ\`!)1Moe*xB_' WƸ(g!'@tCq}4 7^AˣA]-T4iHuwo+4$-ZS\+Ev)Vc{6Ә;~製la%d U6$|)͵ۖ,,z ZFR:OwIp{]|7^2Թv=Ɋx$ kvtÏ sKhPa⪹@Ŭ 8ۓURt4l9hY&R3N2| a%^f5O>6_mo)M}c`g|me9jB5LQI:M ɴ=:F XםbPPe$`'U*a{jѿ.J>uGA:8qr4;PeZݍj>!H[p,%z_ CoLavk#[r~"P 7TNbҴ)XEytg\Mc̼GWĆI ҟye95{CS3vgn}N 1Aزo׵S6 {P8l [Ӣ`` eXgf J L̎ @k%sGj lɂtK۷z?Bw^E[nrw=f muzR yv+Жzn#l\ߜJs 13T[HraƜ[m#BR}V/^Lz#3E [r|7Rz!8a?(V7Twhy\i@̬6 ' sqT3iVT*M@-XE`:<g wL?2y wKl OV`Ҧܲh7L _xs -nͨ$h*ʄ.?=_|Zp ll䃾1* K ] QH؃tInrHDWU^T\DoNU >9uÈg2RمkQ*'/f[{|i[ɘ?Thu+{b:4$\R#Z k"k4r˻,vcqlG^!a_D _l׵fF d\VZ{]>bkcw6l=.K>7d%<ɪQ,>ϻ,Y&r/ AuT}r"nY*SW0LL%Tgi FǷp=TP+'o$QH7Qk$}s/8/7Y><y.'XmT &d'WZ r`pYjPvX+04ss$,'#VbSrA^Kc Iƚ6|Z+MU=}}ޔڥޮĞUdK&lM̡-P݆ Qk}!8/%sޓѯl~X)USt<Go9e &Q Qħx^MFT ~n#/.ߓONC^)9чx-ë<aD"VZt{9S20BW1IvGE/f'r[[/r²~vB}0`~G[LNk"C'*ui]icc]w5`!0Xz *Jl.F57Eeߙd*DE5 v|5K x]7p\&G-!y |牃5Ɩ 7~:)/&z\@?NpI+*,'ܟIUl澵$!!|=\ЌB B";qϯѩ$FޯQɞF:윐ɓTځCsW54?۝F+*#z | Il,7_0§^kr4_$K}%n/֏,?Gn{[RuxG"!"ш0Uȃ&=I9X u/[a/Ĕ6B: 7y_̩}@-^1c"#zeg-籮`RN-_8b'ZP0ܶ\[#ヿ}Q7K Mv2{g .6YóCnNq}ܗ o+rFrnC䰻2Y Kf?#H.w7Os4v੦ LJ9Ld#鋫{2Б,|Z;ʢXɖn%ҜeEW,j>{=L-`Tχj;g|dd~^D.<.UM'k/H(@ (a#YXkw%urG|R._~.}ZqߦrRRHpFo[e=ũz/SjFx-I[60tA/ /2 *0(<뢿={k}+5Q/V߂Qa7k8a^@˻hk-+XZ(Ғ\wI !jGQ5|J@PV]H*>~@nNxϴsZ+Qn> hT"L>Uk6v oxGJ "j؝9Li|8L@F{-AI`:Ҭ]`])LihdH71]a0཯]}v;XW03/Db,| ^o팣ekN ! cgzoyHB^Њ|2؟⥶yV&''.J1D^0hK2\,!aչ*D6WkԾ|.4_ 1Wߝӵug\pwM62o) AQeNeD~zҢP!ˌax1+<(E*6,M߂C)̩R? 3-e&{GќJң vxVڡ.Do+i0$JpaU2cXBזj:h )mcמiDNOV*B[S mr9ɓkY/OAH_W#D, m4VؔO[ Ixy!7k gux.,<ASpǩb2t*gBA]xS'SN&1R@w܄cPgV:_15}[~zfhBjlq<%ܓ@ b`{/`')ȅaɓ3_i Dێiwd`}]m&8ɧp7t"%g@txb$Smϣp4-^Ԟ|wJ.ld*]l^u[Eh܏TLm faL f.CɡYU32ZLEzXۓ5Bia%I=Xc*4?5[Y)clKh4sH(<\@P)Р7qf,g:h*0'Х`4rc%ʺͥ } &fųP+) s5Be!I,ғU6\(YW'i+&Rb{ZS:QXvܓvEl}rR)4IP' oc%yދ穎Bˆ_X4=O{FJF^E* Eq~Fؽ;m8g?\wZb+ [rs\XR~YetSj#th1ݹ!p$DME QB$n׾[lr.8RC8cWa}d$u J xEd$n U5@#S <-9!#uFdhmǔ..CfMܔ ~0a i%$syڄ>:Q#WѤ3/ ]Yw$} vurl?SfzͲ5~($"I9{eXl g{٣L-c;jKRkzf(HT^ޠϘYJRC%p4t/tnl#Dc9}4o¨냒=iP#j"”0@ >p@9Uf5V%x@R)'Վ:}աJ* $ZpDT0JBwb'9=/쵍 W{=6`zyio`]xy|>=wjץ2 2-Fˡ6lSKɜ)p/.$hIط)NLSkwm|vUy.vٴ0KE˶,gX.z]acE#[eC,ͅq4vـ$ AD޾v6V`O T.*ڈV{!nYT `>4# H4'c;6PYí1&f^;)"Ϳ(%f#Ac-yնl$ _a,p(k_B%?S:zt}/q)H5d^'@6̟ yrzzWo߷)](Kc22DaS9&d(9\ (RisHe%!ۑTS6(p7+\u4v`q|@-mz}Juk)~Ϩ#X'ILhiX )(%%.Gzh7lXxg[nzMe,L% %UUܲK:ݹzMN*5Fe/5K&Ca&nA bTu%HM_o;MO7Ml(M7J2^[3EtzP;(,3ԝl,o?_m<F ܉P;68gҐ0|!)I1 FoD7:$ tMR3cKh$ҟ8u3 N3[(ZS_e?AaC`t3X<1]4M&jM CZ{v`uLVV2T(XU>ե&g{>4ń+=W܆ǔ9dI5J$8gQ5ͦ` dΎ5( \@VNvݔ*!z/IDMQ@D# F c-- Xq!uu_dv[i 'h<\O^b!ԥ,754T{ 3%?EgʥX|p8RF4uϽ.^{ml̿Mjaz$ME)z}Cs¨B ̼EHY%&𳂐jG?rn6;l/""ͬ^࣡j|NAPt.LlɮZ +q[\g$Ra6tyNcT`vzܽg1p0 KW87:Z](0/ 7zifl)z_ceX>4cԱd@qEqCٛ-܆p:v8"3q x36),yXh_@|C6=,R(p$sJS(p f,eL .Db[5 $e&Xi]H.}@>҂-?Ew s=Vt7_$~dĭnk5kE[/ qh_=,opAJy[4ryLŗHg"pu޹+/pǴXXaijz.|8mCpk&4 `Q]+m=,F%$ q$1G1o `& 틶@{wk|҇sLJlh3Fؖ y$&R*[k0d{u5ih&JPU:m ȕ  8)\g`O] bN"Nٌlah5g&GgpSWb@}o>8SYIHY],}C2- Э'@߱ba>+SykN#>o=ҐKq}xtN2"¼}  呇) \nh%,o3GBVe)xqʼ& SFO{DKR?m][NAR"z+~i*1풰Dĝ>djIUSyV.<M7(֊nJyHh,7#>$КhOXvm (cн{wo.IWV^1韶NdR2q Et̼J!Bw}wgPbOd*e }aT٤߹QVcRGm|&mtZj緱]-I1Ỏ@WF,I\n"9*=fF7ӽ<ڹ.jK: +#ÐAN*Tcl?+< PQ Xvw: ܛ 4]#s5ܫ]k Q8-~z=,;-2SqT_ŕ6{ooo`r-3`qhȘTe<8WlÞ(D`=CŰ~0}'}C c$"DZ8qW!HV"YXD⹴Ҭ f ~7]tu!oY1C(9aH(V['cSs4S9uGwqm>vPc$['7H|(vbfOA٥vbTev]VEúyZ6+՘oKuFuӿݛ`R )c=]xG)4\GF$r 0.X} J䖫v6tQè䠿*C`mx^.˼:eJ|nsU#BR[T:6?io6YÔFJ][cCY( 1g*k#G VZ$I#㕥gUh1sxbpz oM&WƩ}%t-(>̈R툞Nŭ6pJ WRf^f}r??RQ)9EJ3:ث*62Q@IݤS5:5(Uz`8,>FU)ZDΊ%|iOTG]{ vwt<%e?JF0B2Ϭǔtq=c /k`}I S: jH\XRi6&ߟZJr_08T"v~+G F )h# 6<9n-^znac뾴 lPj3}n\Q6&syw͕{Ģ% xG1HȻ͟B) X$Foxd M~zgG`bv-n Һ?9vym> D'M MYYPF.&seNzE}7HvؗV[Oɬz ":M9(\U^Gږ24+R)~GcsKzr Jb: Xy[pE1S4 9_8'vIdnaUX~܌AQOT 88….KdT^jšvѺoǭ37sleVTZtZ]BO؂$;3 9-ECTIH(BRNext`{%. A^؊ yx,#sS360"1)`'KVЋ9h>rexeوF' Q_ewO=}3\c%-؋v|v u5o;f~T^(虠/-D|ۡ0ߦ(Q(ͤLpr0(ΎAbu0ҨxA?7i s|H_DˋP;K+/3 z [sTS&&y+U_{"7GI=1`çu)^me&BtvS^gC3$G'Tr:`ƶt:?)o@k Sah D2 `B~ɟK@&%R&³axTkx16ovE,}5`Z >Y*&ҹ]QVcJ]tH`AюzFD98Gx"vkqP.3t"O?5zgʽOycTzW(_}2\?g Ֆ|:aA9P;-naM$ c7\l [ǜ5L_WBƸ¶̢t0ELxg1q2 uMwZR/)AWz=6L& I|Ssǁ+#}N6Xa|t;0蝽{1"pQN{a0bEvu[4)qEu0Vcu_sڷl5ӏ,<3˱¶a.\ҁ܉BBV1ˌsk/D YSQ$A3>;QAINF|ۈ%.vwU=n߳Wٮ"a[-p^J/FUzHo[(Vh@G9SZ`F˯Wcu@Čɍuwo8Ce";FNTPƥ. f?[+"w%_-obxN1Ֆ'۰,2(+tcvFW,?_VX J8q,y ?&jppNZ?N;LѠ,\]EmBnU%F~,R&\^JyG9HRV"f-K{2$/A }S(<2c]/vLϸUP~$zտ<O^qƛp丞í$,cGDIyT,b=@ɺ5H{i/FnP`Uf.PF'e;9ͷAHY;;^~p zhe[$3(qi08UQط \y6$#g۵䚐EMr_rgx6Mh\pɬbUHd,;W͊C$ȈH&R(9 .P*q51AJ_עKdb vYA/)͂SOci1NguZ׹:=W^5h6)O3MK7F\ΡeVl (D9AI T(f%@ʚ}~RT*󅩉~)q_!A1$sba(E407KT*ut⁇+U $oxg8V/&HƸRf́ɜȅ=[\-;Lń7^[3y.LYRl d o2(ұC_O ͇2Ew?M !PϫRqC`pdm*~neOg̚]ji/m1F12`Jcәqqŵ'HZP)GQi6 ~. %VX]TP o1Lξgeg*3 {7%B9&P~In@3ܝ7y 1#sMJ eR\ؑkL"qm ǤA^4|\'6D,o ?i ܚtw _[T7~旭q1A8|GθUxz8L _]HP c v_[ S.:ٷHϊb÷ QG+ Nɟ@cCny{~4z.@}]|]CJ}$u&N`*4ul4p8 HNޢ$tqhaKBʾGLgATYf\mִz2/-EeFDv-҂pK\۲k+UY˙ث<_鼶#^ݗ=,γRO m!*Rxv;;lԿF;>:msE䔬Xhη岙ZAjk-Qϩ.S桖Ctr.qF *JE 3} ~K7 h_`W¥uxeb~+΍D,ŤJTY,^(1'4z)-4 HeMpHzCn$.'N*\;D_:A|J ,PRNJaǑJ,xJ5y/\~iҍ=L5 p;qPBAY ӕ3x7w.~$@ <ԟ]֗FMu򥌾fKmZhg0{b#u%z p4Ez_YG"B\̆`_ Yx@/e MDn) lWd'Kt>v+@J,a`WxژE,i;d`| N@{wK(Y.ggaI!Ku1:4k-K5Яk'D zbyA@/}6BҙKܪqs0kA]u퍎D<Edb)#sp|sɥ;$k@Ҟ3?):WXAca}vPqNG+7ӽX6 P|iӷTGsƮi" A0拮E%CBwa$蕃4)hmxgvyE>עgf A_K 0v'(F+OIs{l+PlZ>D[vvGO6;5^ &^07~Hob@glw Mw?@B n+p `GsTC[foB|IHt?=s|Gӿi*!]|8'ZBjQ+YSc@%b^J+dŕ"b8G a_ϜIufE7}v SOERe%Z /;gmf'؏1z4r BdF% g''p;diǫq誘!rNW.*U8J}q#BM[p I#/g6'ŦVFf C"yG>4UFmCބ;Sl\MWտcG61YZD&|W n#2΄DW檍d(c:yp563|$J[!?YNug'M1$$R45ζੀVOJ%_ cR^2- VgRL)x%Bm"L?&]wHm":BisaOWGMMEqٷ*rhF>ekK"WܜL4 ʸ5Y1oa1C|#Ʊ ˗~wRI,aTU9RFڙKT ^9J<*#-]PpVw v ir'IE6]09m@=?H1:]::{0{ YAW=!m |̕M *W(AVz%@ ߭,B<fR\+Gu$|)#A ;tX*zCP6i(tS( P1kFstݱ^]4m|hu] .IvlߡT4p[AvCexŢRco#xQy`&( h?IgݘO+|w8۴72~rOJ-u~? `^3ք0g,#G /5aLǯKJ(*+22>j51f@ z}ppsŬE-}߿ra4`I B0fS5Dz5oˑ^ .ر z:m 0k yf R/3iqף ²& vʽ](No%xY̯Q}v%Nֽ|c;hiu}3OVRw~E2,,5]=nS+ƇXP/?~_ ºJȡU^Νps|uvZ,h(=ycbEԝRj|v >o7#%dJUۗug9]<;r)1=&=~3F}`r <S{ՊKz34?',%`Bg x_tI'r6|h?V=dJHU&UzzoqwlmœE vKbsP*˜%D!Oհx(KcbgImBNoLq֟)K.fN36ELi .s.r]W#e}Q53 } N7ٮ&b%>ϮtbN㤿,!)TOYբu$Hgf=lw:s=~Q^hKPN>y׍cLwxVT]) C]].tgez ݍIbڔۯC"ṳ/zЭ)8!KR@hغQ9b5vFuanMѝ/,F8ʢۗ5쁂QU}(^6X#0#0<=`1s$5z= VqzW({O9"-ZAK?-g ؋dݎӰ sFN o3fy^?.;.'EiX$t^iv+IӬ _l:ڷu(9?Q nuLBxtk<^nag/¦Kê}xFrE?'T?DU,i Vl"I[\! ͑+ IQq7 uwo:H.90~8ԓ^v:iQA˻d%vd"U>_Mζނl!3ӟf׉ iAck0yn/sHB j(XIAgw["0FN2!E M0\v ASw \~mRցVO 68<z}M;EZ^zd SxSQ'a@dD ,Y\@"(nMciϝ3V7{:lOFG״5{".%MBzm+4enYN\s WT&rK -i~O71)\ /~/XV+n/.4JĄ!7>t񭈼hMW vUы. 7Ld/r%KMK>+LxƆTtvgl N`66.avs7ID Qr El&N5"]E`SNZQ,17tnvQyH/ @oE `8Jl+|2yNGe*]$W%Sb[f[FN?`]=}eOJ{>F m2R \jl"J,vc+Lѓ|:o5{5/@^ Y;2" B/Lrn2-YJy7rOs҆WwEjK9iD: j 8} {AIvwb?Vo^8^K y@\fyyyISĝru!j&inƘFWr]j=Vz5:O䟈nR @]DMo)5[{Thl{#,>^SewȖJ gdXCY|ҀJB̥*' }PhVǼOށ{BԶ/-WqטD E}b(4e4Ëv 6E\ |lRs@ 4Щ´_R."m| $Ց+!\JkwF(gYр"r~-MLL7V`߳ʵ[`q!=vK[Zjk - ׬]MmP`(bWmk%O94~ >xkV$LA4A$Im24 ~6FD+|r=G[Q7"J1b7[S7zK?0MR7BɃ _ۙ/٢ ]9hؤ*2ddA2H'{g3: WczW)Ep9"4S\±qW@k*ln 2ze@xqqb* H bWqԪNl:] o^Qrjf:qoeAKƑAa t50X_ p.ۊ/3SJ:a±&6YIM(P,RGegeaJj(ZvA]NO~tzK`h?P>ѢPZlaiiETQ GAJRy!]uxpId\ x1ťocV1e蠡 FY3lG ۱q~5}0kO>+IP9xqwfWBb 3'ܼ\>XN?wW20AԃŕUi۟_x'qNPfESXp2i8)y/t&b;/v` ;z4)No-b|I{10K qikeZL))v_&J|v0+Qb1{Z0YiJ'=-lo ]c=<}@i-Y~{t a'Keb@l=K={ }b8?B8xIP;χLEjЫȱGk<(oL? [3o+\IMu&նUdC:wFKw~ Pzd뎬IL4pG*Cb2M,"&<9m^& DdE-Y@?m,5tV;_D&V0C%jTMSao`> >mey\=-`T}fYEے\XPü)z`> 3Gm-XYY0ⱥ?Mkdꜰtk/]ل ;T5-1G$")IxnO(`È AX]l ,?!S4߷Iy ԃPc)kZo`«EBiJ90WmBcsj7aqm` TȣG?=OT%5 RJ DOs֟۩2j$1$to6:8N cٰW'~srҙڍA&! f *Z֒0rB.u!H5e|5fkiܔIUi+`T'ġj+=iƈ++bI61NT͍0 :yV`MiG@e 4 cBOn`*<%+"'`gT d*җ0N*'+8Ha t&;:hCH5Kb)_2;2 &9&!uMy3g!yfaH?!mVP}H-x&VItLd[Vk c!;ƌf) uКR T^+7˪^bMk-Dk'xt0XKD~CZX'הPkoy8*f d]eDizmGa9롽mĺE~BBu+X֊ ~m5b{穬_FiBZjUn03P.vߘ\Eue.CQ+R 1#w[ pyGי, 6@ys i Є(2XCEHߏdOK$j[rR!Wˣ)Q+$i#hWl&4UD묙]m-]+ oO֣?6k)~Oˉ˂Fkk>^%C! +^b ȫj갲v&'57`!mH\d: c{ܳPS[H? nm?QOB҂9 i2NYNz# qƮ0P>Llp&2L! tAϮglW1mV^d=w7HNTHԁ#xj*ƓB_oIogucI\GՃ̭)|CB rh3!"V$e9Az1m._>vɐ * )DF]Q |޵oR&l٤NGoUR׾49(>fq% aQR.9XDv,B;I;TxeL1ڊ[bufzuHSƀX&]W5r =arp:M_~]C dx8/MRZԂ|Vl}T4{ؐspuBs_eb9Hw"5y;Bm2/u 5K%2q$OwEq^!ɪ^Ku{k$a>e :W vʫㅀLj\Mb iYs$Qo/ `3?؅=igj&/K++vRvk9},uf D‘8 zN"4YS.,Qލ |]cqi*kC,8JƑƃ}b¼ḺeAٹT)c6'Q_y"WmLʋc}9uRDūO3^-#  tly,1 6CIwVfb-.M4kYbdߕ!g6b!+u G44r-TRx< C |# t >sieHmNA~F*PX8 fQwcBtNT9>IK**1ļ#H˞WO>#cK&ᝒ?uA&@⪔#=Ei.\<=ȭm)=!s8h#)\Piz|Fɡ)kd"ByˣB~" s3'w لt?s!4)dwX]=m0iqbKS\ay)c rwp2Xþ^T{qi"M[QMNꟷ*9$dC\gvsg3Ie:pdn`O6?:#Oxm[潕 hע8Ot6op(9};JiARL75.tn{Q[sFKEsk6ѐ,Oƾo#TYDC9G>b.瀘gJCד``u?^Hq[^Ynɹ@*7R׾ s җaN9a)_9ߓ M~Rrp hETmS_QW8Ch3#zRw9Cih/J3.@ gYέ(!?I ? }^q Vtљs *ܵ:i*4x[~[Z,b[sZS&לVawp='3KRɵ̴Mc{vٔ9\ë d,[ zZYpk8uM3V7h}Ng˧&aPeOqEhyMj Q;ʤ`O*x#\nxU d' .6[/Rė J!:5:F!4cV=D,|Lszl inOc|G>=6m$2L:;Y=jܡK 6ˁǙCꙁ"d`$ЗҷGsyl*S֓x ԳP4x'a06v7:: XH ^-Kt@>^L/;W3@3aL3,)`C"W 4/-@:!,=R5v[u E9=Җ)fv`d=~zp776aOdչ;OG0E_mT(Z RjS@|h@ƏDb ^ \S=i(dKKk`z be0{L4 .qzrC%p^h Ì$ >35(r+8C(ۑRtIgǠQoE.rj /#M >q]<5W_c 6FCR;*24p^T)K hBXn v#xl¿$~x4kz"Jl qm +^7mڈ8D*凁JU pˉG6XDac)Y>dD7-tԋ; 3HN=&.A`1!S`W=D\Ii(:4U G91p^+ wp;  i0Q^Ƞ*Y#ww+ԾnTdWὗ N=ivIBBk\.`;Ofϙ=i#_QV~;n;Al㚫vX`O Ak<vQbK#4A#}{0vdEcQΙ( ~j<^I}!r>2E+ BruNqBHN1ӡ˳Ӷ" ؘJ[G;|m6ʦy!&kque}:,{~c'w&6kŁl:fclB,ԸQ9)`b'o^3Z޴xܫQ\vMȰ*X$㝡ɵAtK"MYͿ!{r\$"xJ^fuH9<^<׫[?t B?~raA}y2b{V/jNY?;gԵkg/PzȊކ'M"˲()6igT0QT H<@AYPExqC90;Hr_;8vi ;P:?bpLf@Ўbr2Mo"TF3A`ҁ\!oefc3mھaG)g1 .^ lT_:"c$hݣ )1f*k8KbDCr$Bl[KR4}c: f5XM6j\\HRܪR<|3@.IQi7X&b[A0'\P Gb!cWYa0|հzJ0AS'e|t .HtM{zj]7[0T }xώ 531ZSjfgiא&s{jzR򸵙۪ S;.Ӧ r@]InNIR`%&UJC9 b;Y۪ѱS 8Uؽ_Krmx 2؉@bt6l3ok5ALj{iYdZk.mpѐ[@vc=&!*_) ?'rS|PK;Z9ԼN>˓BD)^""C 7ehbt\ĪJ\7F'9ܪ"_MExr5ފodKĥֳFaC mʎ ~@[{i+DpO~pDCx <>A97n|6ep<9@PTt^dE4!R|`)Ʉd;pxӵ@rZnlӰA}Ov03pHXǕ*6~\\ϯ^3t0]jѳ CSr-}ڒ0hc8Ư}QY ivE㎊8ng9ks$#Hur꺨J棢3.G?nG1!c7VM#߀"GK\r>2e-dÝ5L#.K 1I ?a>5N7xud6Hyk0gHfKt%m%KHEATU J*giEĞIPu:i5c4[ak)5ُs7fR]7]C|4}p :[^Ċ~ev&?*d)[ %PiS/9'CdĢ.܈(Zmʺ#h4ǮO1L&/g* dX#{ d nY*?.+'v@"/Nu)W S>%DJhhˉ؝-&kxriJ" g%T2ҚɚnrG+olYF֞<6<7w<X̎uB6.E&ܜW8Jno I*ksBbSVg (ycebH(";#'>oғ2S#/`h| < ʥS`&m"ކөdGrO&&i(b~"ي*"vCt\+Av/4Z so Tp\,*K/yGo _6%0KRĚڥDtiRYF85qiO"-! H@ 9;<;@ + [ %_ s,s:*O ¼trAǘV{96r0ձhG8'R{&y S QWX=g:YJEpo%OV 6v}dASIU} YXɝCi`Egsa%<#7-;@uGdvE~yIU[F xP&5쾭{oMV lĝSw`Gn<b>.#K?OAhѿby"_̡'l9V)~SQ° dJq!s/@@v fNj-H⼹PZ\#8YP1AJҎ> pfnqLkFu&_OdJ6o=z Xt2L~0s& a=uiJhUw%h}Aߠ[|Iy ̝B +<^x3.˝_T:H"lD\T:VS@TEf-t'y MX~؄aȹNvڢJU 7}e *ȷdW+pW4pj1%JB`%bf8 x.؇]$NMH5Q}7NXݜruG;8g+8m|۔ɇXq3]+>]$#7l]'7&ǥv : .w%GZ֊8YsROL"n?P-NŁ3ߋC|ޏ2MD?'ʕ-QP#u{ZVCEUn g։[$FUL @~!.M<=)A))MlZ'^)w>&'[53⼌P_x+dFNiֽYDf!ZQ4fXІ4;]Z"\X%^{CGTC- D(T҈o=|,M+p 'sk/-!V?p-" b\ᵆ ʣ:1wXhO *W&-Np.Т́2r usST$y$zi[/£x& P ĝ?"[35Eəۦ6g`#$ÇD9,cWa3g9CFNHBE[$yXū"fan'`]_{~c40W)8<''<0QԢxZhw:+ ɌG$K<[㬏񓐀gNП[Ak ?"'^ӱ!Ù~5<|8|ʀd9SwY}p8w<I0"|POq5Ʋ!bq`EHd\EO"J-|73Ogu▒̪maYRj 9~Gs8ḌNdEhbB* vr8|;U6uDrvj)M2;CKL?RȥUE/Ŀҧf-yQAtՁӼi0K. Z'12=ꄘ_{5ih뗚p %?c%IP)`'עg6ݣ`"lN9%DV[P4O߹#?Ȣ3fLg%r= y4O900~? axw3YAev-Tmy;lUވkA)Pr$L4#2%OxVɸ1`1h^T"1kː\TgFv9ҺZE\LϤ=s؝Ǫi|jFbYpP*cKɣCfbTFc֡vہr(_e'1pF)|ͪ`k3)lgkv{NAۃQ uy"1Ԅe|0RY(cgӰY9 [ iWr//锨 |Ǐ}xyvV8;}hjqXBa)QFk* }| ^Z3 -hl?:k\T#EE~Y`\7͵fK{pW&5r}%_o=- ܄in%蜓X9=%yސ ;}7ՐN[ ei[)d\4zw_e0 %HC+WQcq"aI)<omp7э.c{514`k&5E?$^pT;ދ}@:-C'ʞ_ޚ8fqsS#p~^\ѽ%҈d?B{k^ kfQ^Q(%Fڄ&Fp{sdJ'A N㉲KzxT~(ug; 3.-y$V1M`1J~3&liA^@ KڋZn~yyˋ GK }~ u^0U:tyL:,ޑ mY4\};K_Cjdr=5cgY.RvN3'C|RemJyR0Sg$Q /~Ki]AJmԈj8Yb'%ZpehMz۝ ?J< VVיc<+#גGI  &@6{NHG°B|$6ns=s蹾2ĺ)qnj޿"U\mxk{J/VزJJZ!b5?k-9Xqj[ xPKNc.egLS OD_mßΪe9%C+6fp0¦i>XJz _^xCGKb!Ҟs{v-Y*_-5<2R+׹s3IL I p;k6VUMϽw-h,-Bq([Es:ۻŋX,/~-'Щ0mw"UIP^Tmr|j,{zZğ> V%|̎S6z<Կ#?DŽ&Au]lik2NZ}i!dOXw~.DDf*tQ,PrYlU1)TlXHsW~8#qPqfp@b֭:qIR*W& {G H毷Dt,ܦL>"rY+3n WNo"q~} t^g;T@Wc05Ve( 燝3UaP!xh%IR(3~ނPBh@aC4aTW1dq@0CΏMZ9ʿJ75$bZT5H+rn+LY_3L>:f!r@LB(#np_*8>W^n\QŢfA xwXE*/ϔ H Y"6la7 l)P`$? L͚l.J|s ]F}b& YZ$R6D&į>V<~@ >α`\J^Nc|ۇtTS̼ oHo%S7,v>W~%{&6\Yvi0E:)N㨩<F*'|fX<^ 5S- `t&`vS57ޘ&''aF q# > bI,պtGg*rh4elj qg0˺Q9M"Oa{% 1G%ʢ7R_FR]Z1ۛd# .t";#Wp eK( g)ds vjoh",CC7s<4X![/h3"B 3{gኅPQqSӡM3agqaَ^nJޟ34ʦ3o*yKT {G!Yh;-"גJr?{5w>B銰 l@qS#))wo7͚83*@m4b ≈SZ( o-3[pV@w1#`IF8$t@sL y[S?|ڽ(j5nA)uޒ lxW0ׂÕ!RK~0By=7^%+5=lH\OX(W = /qΑ#{=%Cg|jolÞR n!x.Np4FnPkM)T?]]^thx=3kS X#g.]5kTOj 3mx.XF2! 0{P 2'Myrz-z=AB*fMv$=粍_YMs@>SIn%g:9Lgo66u߄=U# "6v =viO^([lۉTKЛ!X s7c@g%cN/U>e88*HRr sXuXfӾħYT;vqn74#"?@hekr{޿oZѝ0z')'R7puwEZ/ [xugcK5)@6hq& |"fwڝǐRi>2tψ˜"J~_v 2-chJ$]&ZsxS~ț| 9U2z(tI_>LqBB6C`M+tA!X@֎1tTT@ǥ> EMi's@eVg5die#Sa߿^|珶9]`EzC>S@i0RB4AmѱL0N]vZlgXݔpk-BI{d{?n P*e~՝?qdY c^w,XpT]̥p0[$0ddz$aS?DgM{F!:™:"8~親c$o/͟O/)_@FcU;aoWz7EDP#&ʸ}Vb&_>NAҒc&҅QdȬy}u1'gV+" b?];z}Hm-2{+7Дxw -SEdIz 94|F·ݯQ(RRC"Γhd^M MA 'o|x$]fR!s|8,\sLlf*9`[6e`Aavv:ӖdHyE-9w&a E];ڪHq]T󃑛ހV満ePZ)Af4ZWtY xRTh{i`ihڊFdYps5't@Jit -go@sMfSX 7]3AjxkA]oۡ b/{H<3IaL&БweJg2-#1 }Z!uH2&{ϚԠNwI+C?7~|2rn~ o&ZupӶ39g/Hm9coѡCۿ\Ğs/S?+r=&aǀ{+T~Yj=%Y37P$ "a.!NF\tnoW1mOCa25(sywa!!bdۗx1ϣceyþ \uSTPT?h(j0  :n\Qcrr y^)n+R-_k] WiOlߢw !"1[TY,2qVH/I-E3>0Fc&?ӭ: q M>g1 ˱fh2eQl1v>^#o&w̆HQkuJ QZiw0ZTO\;PeeeV֯uUNӖ0|Jx%L c0FwGy )y1ᚸ) QukKF\t*<1G"11r J'/!F]~L%Ň`ʧu6SIqke4 W'_+ RN-0^ml>M/8s nL85?^.^֤#XAk''%%q1)DdO"-` 2Z> |:pSמ'UzO ^@=D c4}{{MͼR |qURga8GO` 7(DK663}*70Ce 26-1 JtQA.8D%+)&8m d Ony#@cg9mz$?ӑ9v1!nRp9?luE sI.y3;O,EƬp/V #aQ >= ==+ [C~8_*dqȥgsוx|KC38&?-1֔|#NIvA%G;yGf]xi'@ |-e},3-}%B\eKV@vk̟ DU2Lly;d&|j[*r9hK}*"1Sa0<wf"$A'ڼ/>:*J7J.h4H `ZZtxVV y(odeiќnAw!nogA @}wķb ᥤы]1[w#D[<[0 XIhdjB [};u!Lm鳳N,ߘ"hЈ ı(3,60u)h8]BX3'bk&~p4 (Z{~r#RU7T߱s$&*mŀlk&[rXDZ^s?"ӎ,+CRAQ3Z){0OƬjR=Q3_&}ɀa=˱{%^)ǜ~xmۄ60pg~g|PB!c~2lg޷*xCi qKs@͠#jKmlMd@(]R6/Ȗߍk:JbeY5a2KʪTKȏyTHSQGjfsŷ?p;V'Ny Gw~3$_a3_v9>4P+EpXt9(% ] >1){% O VueB&T\C˦oxn53R I`ap'>\`JX BOgFJLsjji")BcF>xF'=v,WA*/R'N̿=׶LsIuДRqQH=>M;gL |~; ˿v"7֛XJ#:Y~g_kG$`\-gق`,i}B߱KbiTDϊ_ 扤Q8CNL뼯܃뉰v/Oq}]>[b'x8S"">´ Z:w٢N)J" `iadWY [_M`Cz-*Ý (}hz6R=q &Pd?Y R n8KӺkhbK*ɽZ\~ 8;2ci f2Rd`$W9h>r W_KZ> ͺN)VZJ14]}5*WEM'{e'*[lll7qD`W!Vۣomĝ?k>wnjqD=<$el7dL濟zgS(BAΊ]GD3jFdeKi  ،}H| ʢ$Uñ h7{OQ۲ Q$GX/~e1\!eݧÊRRRf$a4*^3v#鬔w7 W&yZ!//f[C~L~ո,\*?%-E? DZSc }xɿ+ifus`8[dI"5NWQY*4/f$(Di`pGxlKbPW]hr^Ɨ2gxԓGVw. J0&(_[BD#‘,h&CA,O[]~yپщ%/羚a%^]bWT:?^ }wJł_v$_ lУ -1 *'2NY )c5Dmu6~1+N^r?#+bNDK/'([Y  Kt%a~4~:UEձW/,8w4`jODhVr4~|k!?/:=},.*v}%I y`'2Ξ9"QjPGvĖWd>. օ}Oywv'̾ -rlaaOⷈ[peزIPv +%3aqw)X@=nhkAmAx@FBtF8KɈAۗ\{%9:Ϧ fI%/ )EBzN(w n5>5X< ߵS|m;Nf5y髸aj)EIhyg=:I)ۆ<ԇx8dQ~`=`SYg2#I莔RcO&Ov 8O"J(?+a%b,tjvY)AO&aE8brǰW^GUFus;:MՎO}!'!`xMW~/XD~4!y<֗wuih% ߢL 77mƊ '"Q #r9k%2YȂrED nϢ4f\+%$ RYN˻IꠞhZY*6>Ǎ։aG`X.#Ivk"=_$7$] X 3;6;ڦ$$KY:꠨Ղ`UIttncNc`hןy$@Sǩhe:l OA![tcJ_O:1,cC`a") 6toʣ54Wkg=ʷ;T'_P:r> ʭ2>`U_%c6<0淆}fgA~>kX۰W(H?:F tW:IKn Iƞ2FYCPgnZp.$9-&}y9!&t̬41& y'nycO]E^dRAqRjA!dB6gfbgԵ̪?c;]ۋ I%[lǰ&9ºtsh|Ꚑ k*>\g WK}sI}4$5<}N\5 D޺{| 7} [!AY}Ff.Vw/v"QTxN?ZFUGArh=>TC*y&5ple5&pYEpC+Ժ+Nu^ =nXe<͎Ѓo}zƺWu[-jK#dKm/+=:iPF=~v5DHEV~A1L1e+ܸyJ 6h×2O5QcR3k\Fk$sjeA!d^d(>Й56*rW-\o7㰸\Rm^9Q }> O6yyz.(1}6@9)s!=ۺQtujK?Oi!P)?m"xfuOs]Za2VB3 Y:v?5[a%%ufAE$ڄu (kp/ H&,٘&Q(P9 9{ÏCk2 !q[T.MP`@=Lagvw rwK7l xDYBbewj݅2PY K׹o%DSepWtn #ýSj[FmAbPTZ'z8먖MK{^(TAo/B~.5HšrND+S%Ûja-w('B[:2q2ۖ<=w=ݛDcv18\MVB\*):ilOiX[BRĝaJ۵֤ڄ ClBZbVqА#`D{!{ˊ[Zx_m=% ;Uڅ_C WT7:q8?6!pFK\]KatEzV][ؓ*]߉v,I/bq0D|@i1 H͇ r(~eݤs˃'&Ɵ86 TfQEaLfWJ!;\">\=3q(YjO::;m͏C$"~6N4.Oz-:"c-d;~@60A/cˀ_źO0RvicaCPHh/9?Z鍢zb Osǣxm0c[>ꁡq)#.e^gNYVOLޘd,ůO[Q@ I yQN@|umҌ^Rd^uFJs W]հ"]r 2}Dq[?+Xpf)Le?XLScT{/dž(ϓ^MIxܡᄄFGOJT5"MXiyb<ԄtizA {[N:>ieQNBkBJ壬QשhڨXWmAN\VG[ sWsd%2^ ^ f KaY< JWE:=n(hz%ItQr/ʂk1SQf)B *`n2t"\rZ h*X'( ,ao ^UA 4`AjErȵmDd0zo%E2RӮΙ*dgNiUn8d%-8=.ǀR%SI 39Ӻ& [܃ oGR0,*$^hnP=/ǽq 蛻gyoja)8:Уaf|v޴+⍭}vI֕T%̫+ǶOY4dޫMS>#~>vn!~Aud_y͔Ց3wևܕ:?΢BOűכC\3nw;.ys`|~C{L Å߬j&u+'^ͳ@[2ď-bȠ"'c/HBK} aΘ* iPc (J3M܊V"rŵz%@9WIc4l{F 'CxsKwMwMn<.&c'̻FjwҰטim1GgU=%]ɲ> #LJ/i-D G{E/vo"qZ-Ʀ܇u3R!WψO~vMJkx|5pF 7pAZiH,[س6$$k NH]LvV hXD c7yd8vӵ(jG7]?3Z̆ )l'bP⢵ i'UKlUH|1K=IUί2 lKA:ٻ։Ɏ`e,j\AfW,lNVʐ}?1!ă P=U?y49n:quDm`M~nJg!M7[@ETa(;I MtWikw!Xrfг)%fHQoGav{҅k1x5K~#DI,sB4b9l3 M08~oL\̘؆6vW%u{oM58 D -S@lx8Gܝ7)dGs=u1. >@=;@dz4M8iA?dҰ| ]ZV.jg7"H)b̈ ΛF:Ƭk[d)\{}FRj鲴 t1LKtWHSB|t.GwzlJ[,`0Kf>&%PÈ.i(/{w߮?#TQ&rM.έ ->-;\8ܻݑhsMV`pH>!&P\Fg eԌȣ`d!vrzJy 8xZ:ۃYKjH)O*TŌ^R G諶9vM$O2L/yV&SWQ]$kr1H)9 V0L\XLBi #*r/y9*ڀi] C=k37;*4UV<Դ. PU,UJ,DX-? +¥Q.X[śZdJa =u{|+ ҡ"9xل6]lM`_1 k8DYU>H]N\4P |PH3zF*b!#7I=! TFg{doYBɢ  E} UA;!= Y eZð.\5v~Ɣ4®?"-I <2-+HMQ{E+ `W:1RPOEI=dˣ dR$ꆵB_5]MM.m8y^1N>, 8Cjta4>|N}>-(;٘@<)^~ JУ ug,)j`%@ubG8^ˏjC,AaD>w3=F[g/X9o.U~h 0t2fi ]!YT}]MdWJ+D>vj֦ʽ9}cܸ()[J `Wu $Q nk6ծX4c9QΥ.i!}[)ܞ%EuHw;Q$&\S3ą\C S.Yߜ)aB#d2hΖmS3 Ewt5k42$QTxTTUy@դ:v r ÍE,E6j+b )M-U)Q%&aF6iSmNTUr+1@.h?0i2ɖV%I j>߄ nId۵T+c9k(I\EݫŋA8)e^.7BcSh5X 6鼏HW'}m @~Zϙ!Vݏ;s $U1:nR36f~ B! V| rSsVObo1}Ϲ"u0$_6|aO}z^('N?l[ɡhc7Ze~|[tHyp*F> ~cW4 -gZ 7db%5mM3W9uā?E'iBB1?Hw34cfUuIx>߯dC ֚`hxp|u?Bn:2XFݯlHmm3[j=L|1Nu3;mڛ8m=W`L6FrRn+.4UN٨/0$NC)o-u;Уk*`']'Xҧ,kxbK7EыnNYn3 >ZMLP|=Sb1m!$Brh=o:O_z?zW@n'U `iٷ>U=#?&}I ,>hW 1]PtKL[c#FoT'qs%g~ lƙz/J^-[l"GF%TW" j/JOѕUA 5/_qyA"O!׏e._~+I B&E~umxќNdu'#5&sT#8&=%=qϐ&/tCX12%l ޾,F8轓6k1W@'"9r<|9- 6\[=% }ҿaWի!5ICsBM;nkukn3 ~#K jEE4|'&̲dxs(Eu/1BdG9:-_y;2>\AeBN_'?B]>U ]mo [Oz*x2WBWՕu]OV/8q}lSN-%<]A.; xcn w`73 Eٞ<}sJh^q=UD |0M2rևnҸ(׵3k]|+%EWavǕs.KӱURO' <;kS ;ܧtѸMݸ؃J_Hz+kBjlWAX{"'(C완]K1ԊUlHi xAbM,yß ?-#[z-4LtOn̓d\; TWN]4G AŒ,}?go+\a]+ցa&ݲ&\[Y߇q|z=:B ɸ!`X/: %)fj,B"M$#_)RvEvJJm}T%6E{9ꇭӏg=j81F=*itipC,x?@JqiUjuնbq"M>q9g92<#+}{xlW_]OF{w%Ďغ(1u5X(Y@ކFKX>/Y/1bq5n*WXHJ}!WW.A7cZZa+(+ t// 3,KpشOci% ;ޡf{BK2gqՔDeN6O v[DWbnѰ4Ai>S7^Ef*){Fq6 qINzq`/xzQ&Mf-~n68Χ0kM'^F~RZSkpDIJ ч/fcro[&~Y?5b^̅"> \>ڵ8tgM%Jy23}̅Lmh-^".zz>j'R;y/ Qs~xR}eu<PӖ4G%\KsY%RA:/H^ʶx'ҁ7>tuuO ~ʊIsΘkb> -q:7|`t.AON7t2 k,v5@;dKd 齃Cbxd̔B|T+bW4jCkuL&iJ衳Y3РΎ00Oih6RʂLzd>{@3D#l 4p,9xb]-t.~ڄO(iɑIYOoߢ{C`u S=uK'U,GhZ4Aǜ4%Я Ks#O<8iEBv"wqawD才Z\=k'mFoM]y (fClQF: Cկf_z-LG#XaN{eH0|!ZD.o(ڇX~<,hV%I"UnJ8E9Buq=#tCOܒS}]`h 0e;97k@cGmf;7xB @N/Mt}|)mR G3ym\yHȔ[K24^&U`/%cנG2U_W ҳ:5,14hW~`e8Hf(=0o uui_Wvl=LiCY&;&O "xW1'B(]g +`Ili@KE&O318UG6 K=1D}#sl "36b3'VhWbC'7A[]Sz⦊∘W8CkUM~?<,d&/m@UWu ZkeӒa5uIkv&Ml#ua}p-R^{Bgqo6.R"щآ'ŐKbB$Ο1܉7CL ƃr?%"˄tgC mH*kɻ^hҾ(zVJ d:3b.otk<=".yH@ Gm=8y8g$~t_̴GF}^~8τO˹ LXT/@mqX(W$kN@69 +|o%2m(rkXk[s^~hP4&4]$rٛ5]Uom Gݓ. N$85%L9E,Wddf} EƐ]=E?/,D,S> vo/Q2+0 P)Y%#M v{bڞy|''[ w*`X)=IRZs@Fy93b s/ UD>SvjH *C,L:}OS;DpnĦ9ۏ6p|Jdk*7U7_R_p|W۴&.l~O1 eK}b%6hC ӳ`7w{-61x>f0[Hqp_!F"vVQ^H\kr^%n;3E ъs2&tzD "e{U%"x/EoD">FLnτ&\[y&822?rVvsUR-9Y'SUvfH}Y|[DMMGӊzyQE .0K1z R-#]xettI< n:̃rK8gQ$=-hB 66F{m igrb\DhGK&\=xր9h[oߎ.!_xiUvKmPd1p=>l=UE'SE5ىJ8jP,&FJa(BOHZH$WZQM5Giu%eW z[ E,̝잒(ԯX| )h2WݣWM-X};&du.xhUG ְ&? j}$`ϿM̰- ;h-mss~vYqL 8 ? AX K'C$T`^hcNgӉc7;87F VFm1hldmWm$*IjZ[`$M4rr&S 3wDŲ/?0K[>n52_,; $-HJwмjAUcN{qO㐲bo݋Ӿ`O<ɇΦլCINWE]̔x' s^n җMnp_wDYDPdu|RCR5\]3J<Mi'%9thYO"`8ִߖGu*3+]LF.+3E|WŎ;,ՐL9vk >,{<;c-?&^H8iWn5`Gn'dF,E+u ;8sd|RڴA0݇ǟ9h~"AO3)&TِKey9OvŊ^R1;Ѣ-HrY;r~h;ri`%glg~Z%9Myfb:WR<>xאg 863 LFi(I>(dL]29 \ؙ]ub.!w1ՏZGviag ̏Uޥ'9x̑ϲ:ygҝ;?_ZsD;ժU-IfSw] ɼk ً -<$PFFo|n~u)!#0!]n[&xض{Hb3=Y(  ܄m :(ŹQJvya$XǸqXwb2r$}&kd¥e0T'[u/YN~xy`qNz ByͶ@u. J,0}=l up(A~< 7f!1'%&^n(6e-`H Ll-@hˈ F;fy۰oJL |fd}8˪!ҞkiNc9LO,>wCpf],`#{\f̣h5}uxá0#|9Z,jg0lEbc'_xh80 ^Ҳl }2Z\Q1:DJD-cZTL=9@:T>5Nz Etj ` 8,HA-X8h8,qG8_A1Wf@a_ $0Y2xӏA=a9Im?mD ]xR3hz\`R/+yכbHq}3hֻoGÓ{pVI(+PQxϔ^YnN( puTͦdp 8wuHL;=ŭ.܃XRb2wak@t/PhE 9f&t;wƩV5D&Wt(/o>K 7q$CgG_`1M2sTO_?ZG/bb% r< [u? ͪy>  ::uʓ#sVI\2QQ4M'vΤx7Qa@7l/թS&p⓸#i kQ2rݕ.sQv0 Xk|)s:#P;Nbg\` S3ɝ{:ôD ,C9қn.i}#vT X/AKz'&7 UYA4hr2j&i9¶) *i9q "TS4'4D=(js}{>#lԧT6za_E4zm7{buéCfwgnP5K.eB*>+Wꗧ̢j͒yVٿuKK ; B-=k/*tlH'hЯM Nc09HFM'cckf/kgݣ7Qt!; 5q$+7dgt2u刦e(;,YM, .ޮfެC^k1!9zujFO5I[]D3<:n!185^$:MMxaC]0+8yqA.3ś^J<@eUvr]!l7{A^8QW wpUr8^S|\v*GySP/&!pe$f4 e[Q㹀vA_tv^OK" KaIDJ)qGfl,y]5HX Y @O*U`81ͱxE&?:w&IC5;&o]H6D)E,7 *-˼Ӟ7C>\~ӣgmtS_NKYa,0٤tOK&:Ý t@!"@gLjp 1{7ա(2x/(%uTto$yޠ$Dh4:Fdb6"ƩsOJ"L/&Ts89½5 6џ X9d3Z`ܹŕӪpٙr՞-+$n$;qLOMfHtޖa5~ )EM%nfAɭf[y# hQfc7H֚k8d^{'Iat R.Sg{Dkvc[N+LRDiCc;o\kxwA;0O"* :l+9}sȯ}+0\ fL~ҹۂLn.*" Ht_9khPiLٯ璴$';H<[^I+x@pE 7y0[nU頥YѺBxD"zAd=#HLge8] +!C]. [hj65reRd19Ynr)^al[z߹!GNŦi9f`Q$u֛ ʙea+{HR2iQOk?Bǁ5%;fDEA"W{iݕQ:cm\ ز\PE`k[sUmԮ @Y(a@jMxGCgxSU;2 ` HqWƚō:rJE8*Kl1]ԗ2e!R)K-%ƳWJ*BObɋM`}D')Wy QAyHz4[) wnE6 +lvz@`V^ҟ0yZ=:𜍝n$ʢPc oln1*O YQlE{G>R@x"}Y2~ȋnlfhLTwm=g{,Ui.dr̚&FƴӯfDX~I:t^$,CJE\\N!5%JxG` FT9|PӄPVp󻐭yO$fK?8lv3^}O{SfTπ2u>^Qvhoj-׃b߈*K i>FO&q b“. Aկ݅1GWΤЧn?[zp_*{g"k`*} shik"JQfG̈0/])቉? W:Oݟo C1mVI0,7yj~;CxɪojtYgKnl1()"xw`=?w0oR]n gSCk?U 4 1bϻ R.~rL9i"ZKI='vw?o~U~.07(4+փgk)$p\ZҭD`)_eJx^ ?cMHQA(z$TY ;kal=r0?gv&ӥN&%epPnK:@Z7.6\)@>_H3Mr3uiQ? (nHMH9ަIH'}:{HOj`; *F ;pk?Lz64AyUƉ_ رz_/ 2OHk"b:~ ٺWćlB)yF|44{,RPX;Chl$}VS.)|Iގ#us&Fd*(8&+09LNq(jԜCJm]s7x]_K3!4f$qH2FLf`2xX $O=\)ݬ s_C <$'1(^Wқk,Mg8#%*j:{q^}UCՔḿ;;ŏgV:̑@3DŽ! YW pjfE. a9HNJ_!M~i8t7%%p+XkZؿJOnuWfQ4} 3@o,i5 5K?Eu'mPծ3ι0\ }"WK,̑.{! B痗P6`ak{-*v 6҈hxkp#4t ^u(R1Nާ\MȐ_5a6 ckMd1G$cwh 5fei0vSmCvtk,F?C1j/D"3B8uRnx !d"@M&Pvrۥn wJHZye<Ar^xQ\kvҸ+q}Kgۂ?A!؈≯!)鱡UY֓ Q 4q9HH(bo8]7M=x%hό#o֑ƻDSje[6y QNO2P~$w ^vBNBQX5AFp6YNP&^l8vG:6V us(ߚf %I'&̭r:-1RtRϞds0vcgJ2yI )Y#"eR5t: 몡1¸UFI'^t)r| kפDsH Ksyv)]\3Ε!Zt874R hx&'L6Η$XϨb%|D-8%v b}Fʍ 74@{U iP%~Ȑ==,q>55#&b=Ńzh eq۔j58lۮ-ËÉ3b9AbNo@Һ}F eq5soME!*4GP?^c-MߑftJ&,`l!Vw+K#ɏؗTk4x<^h h % U.eAN~ [$P]QQƹV@WwҎmS )U(€WZӃ62./*tg#1 JyO:JF$Ɇ/2KOq*eՠ̃4rdWEza4>mΏ%ՠZ |M!cB5^_՟ gXHJ \zɨLf<'A|Sã;S4i'lQ8 Z{h^,@n),lދGeߚrƘ[%I8,load-wDWHV|W|1& u˫5)tn^}Y0/J :[氯馉@q/Gw66vyPCN3G7 '>hF1$WVaɂ0*dRt,*s4hfz6):ndbP@-t8D9} a]s]e'g .!aEwmu Yc. <6<$9m΁@=ݦYdeY: x}"  +T Z<,2sL*ѤرZ?mY(nP?BN Sy %kvNwEi''] -.f?d_2E!RuoA; W"tO` d `3k<rSj(R<1yz)/C n<$F!OКjwE% !sP nmY$)(?huv](F43_2UJ^!@R4/Kw@ي6vպ<}vWI䏄{<; .¾ d@z>Az N%7 ,ˆ:{ A6#RC2dv-MeaFI2)M-0h:qԣ^xȚ[iAb,vCk.;k'= cg-!/y1c4.Y]ТG_d\g@4(ٸ_lbwY2 >$eMN/apAYf.Su < VxwMԥE^2r0?M_Ԛ*Q9;KG ۥZH)}sX=k. i# 4@ťXX>5w7Ë69=Ǩ{)k6,N􆳲=XB(@vh(*;b  UwWj"=CձxH'  u+j%BœɎ)/cz@g{j:h}͡tYm\%@/[~7Q 7k/05[-͕2e2L,p[1cꉶ;}Ɨ}ymQ|,-r&AD7PʋQǭpT2_qR [9KKI0m[ %^ǵ{ pwHgWDn͓4Ѝ1N&Uz #a%baa2@y}rHssk鰴}>bS,Pw \hEB&'ś,Ҿ!-}K7}*%c<Քvf`%B+Q$%eS~)?2>~ XY&'Zla%Rp)L*L !Y f@+r;`M2 H5=YjFYҗpTd7z]?FYrAræNJ#lU6PMQ@P}n,52. y9Cݽ>o(K\aQsL0|nw>gCAe)ͷ' .ѭ9 jQ,I %yV(g@l_zJ9=`] tZ-Fnau LB}ȁ9@JqFD*/yK dn6`3BZX`~ {hLգs?a|5@z1^pjL_I!c(UMiwٕΊ "6E<Z*ۅa.`띅ƐS8Ǵ:-.Ds]yuj*~S^oਾڪ#fPc{wӪ%Wv#'# R Y9;:(/>GYY`.Osy/׫w'|РWi a,5T㧾lE{J_&b?܈)]/;2 ]ވ-N^]ǴpƁ?Zo (dlx;*>V{zVV#`54Xgwo=8!NɈT4>PQs)|-0B*KM )ך/, dI3،r2_ߛ{Iɰ?|ۓarx`YaLm`gN߿4=)q@1ɰeSiɭ\[+S_y7A UvM*AOI * MZacoAPl`jVМ_z 2:FwN ߉r,(M g5GoJ,Urh(4_"~{ĉ\9nvKYgMncA+O~2 l}S?<+綆Yi8^%TFޗco)W6Vi]}\gP']c ɡ̈́#8r O&XMjr$Pn+]Q@@1˙_X4L}V&x4 -Co¤G̣7eRLO/dj9[b2B[gsa4l`LmtŽc/J^|g5l- 5,z6Q8]5o(3oW6x;|3 @a¡j1;|vXtpN{!췍JQ%.ֆ7j8@ Z_j~B¬nDQ0tE:DHil,! 4Xqೌ:{2%^ 5,`g։oE-qԏNivԫR֋/qLq"-u0L<sVP+`ok"U e5'kC(1!gYh#K&,i܈ fOQន"=؟Fkxj0jzEA?6~gX嫮ywʪdo&ɆѲx҇V"e;iC䌟h{(;q'H]r}FerD88'%ǁ&ZEv'jeZGz&9\V'B 0Pn똠u8oX!$Q`ER_a􎍝K}QY,Dܜnkt|,9$5E)7Ʌ1qr4`zlʧawX(/}pgڦ9b,( N,j(UTL{&M`NjoM9]1CJR->=Mzۍ.?7 PFP >Ĕ5Wڠf\[].a2ŧf=( ^5jXǡTT=G ?r_2{F`y02 l<$a*C[]Ǽ$\Pmj:iZK8my-45ၢ$z$b2h*Tg)U{X2s;#b xY[U5H￵LG?N6_qpQF6_!usf,sn1sǻ؅Q:J]V@\zrpp.끛7$J {xdcׇT-?A@6[D'#q},lnA?P!In!cvh`qL S̖ c$:0Jo;P" Ȫ V}UI y{N>ɶ+b&{/,*f"(w4\iIIpb%霴4]b2yտB u+ee>K mNI%[Oy j^ Ͼ$OjJ+f3aK09G}됑A]14.bCI"UϬǴ3pc_$bXWAOxc<5>~I(yue Ugߞ_s@SwҼkãbGƫЉNdB>*fOE$P W/Ѻ٢C`, K+A9§UdnbZs Vs 0Nv=^HQgR3kU3 H2A{WUчWP|ܠw?Ws"Q&f?*rχ-x37jBLcUx $AԉfWw7v8[R=PqVr9N %T5j5!ol&Xn;pJ~w>TL3w|^- tbbNÖq%a*Boſ_`M_iحpt  Gwـ wJl}y֥H^j$4 `ce=bfjlvv~C<[ՠaz&DC3ꪛs cV9# @cDAbz>Vu Di`?mf?Hwo.%ヲ[y?5 D jwd%@nǹ/k 'h +g*:.~?dB?y8%SYQ2AE7w<1<BDu&.L)ޝ|#}T^O`kp<WMn!vgUgDa74=qU>icd-G%WuW%cJC5(p(oO}'z@:C8mTqkQz*o!~y?.-&ۦ#A?ʝI8X+ V͔ %4-E^bƈծA͡#a ާ[O(ys4d0+sB=C^3%cWzr7+pasNEbˆ#e3͝ Eijxxv+}J.\@^wxejs<:x#/ A o4.V} PS(d/OUILQhb<[VA0&@4y[ol-7d:lN0W@ٙ֞|Xbd&cM;kks#/v~+=$g Q̭fL(s-Z.7 }~Kmj=7R0ÈOgW+sяm0CF;7OgpD]R6 'QepGɮГsnwP@$oٹt/*r B9Ъ692wQhF4ާÕ!H$?z;9@ бV@9Z/yKS]KGS'|GgLfC Iҿn|1W%[c\A|-A$ȩ+YE'uUi{YSƁjIma]GMjGRŒ(,SdRAN(E^@wiſv5PD=~-e~?0Y4vx|/J<oRW c}Qw!0SOD~0 |K1Lg^U"[ 'r)V$mغ)DžāXڌ־)y]2_y m;klO֊BQ)v}3M3cܼSՌq"FV6'{O|?]r[hC\Q%!1s";yb"fXM.-:'mEzg8ƨzv ;j}R3A\ ^= 3 գ|͐ԡavAd>*/dW0Ih12=Nl^D,dDVyj51[:>#7ڝx;2m ؏k/õnydCc3Ղє]R CRHFGwh4$+-:\e4*lwR(X%1`#c5::];2Ug (ۑߐ\hAwCaּ>z6Z::vUu G a`lC&$"u+dP&9. =G-}WO;>(^e`Ld,Ή{\4FY'btYF&T#XuLiZJP !]km]ƐPo%~7DL,ԛI]|\ oZ;O %pzJ}\nAz)| g,+h`-NTTWϼ@c%g{劢ϚX%p㚿\qɏlNiR9a5NO$ҦkVddLh&zai*M▫g߾6ڼ0D槴'E%\;f4ˤQ[98Uq !Y)63L$E9ɗjp$ C2x~I[{j)<,3~jljy%.Z8uY["_l d' \qE[VBB@{q\I88xL)c%c1>%<\˕J#(E;KM}FF>ܗ p`rEma1A]ahx :5먫M}ؙ\F^jvץ`~`J[ϹPCTX66t2iGLߚQ6Kا%H/y0{$˗SCLOG͎OgT=Pv/_ntrnw#FnxZl0 eW̻DtQ`jЖ)kҚ-e% -XK6Yp4_O 2?˾g7ы(Rؐ*&3cf*c|4)[,[BHU[3pz0Ժ|8q/sDv;OgT@vN%(-rWӞ6aνs}ь&k?c۷%fcp"po近vC"5lU<ݡ@>\w8/J5;msuig]UZ5quFN-e0) ;009w04]2lPiGڰW[0=%v_cquIXn_-@qNWἐRP pܓGnZu7ޅQJǀt˗8, a$<^H*avߗ\$̘W+A}HW_)=yNvW*y2MXY<,L)-J~x.3 #q|&{ mEi_na ə#'(:W0gQ swg,Mbrز!QF!&!27++Rf K\ ZZ[r[2)5?% ֿH)F_ /…ɥWfdqV 4'ܡSAe壟<ۺ!5%ꉋmiC). - c 6eE>-+u[o쪬t=Gz{cFMGǀ1UF$!MHT+Z}j}![klܾRd#(7WO\%s . D+ܪ "x׻h+Q q|G~bJm[NQq%>Ku2,k$1 C-!vkjnK3P\]0d)$;-nq*a4dk122_o~ωVV5@c-xe$ ߊu] e q.PI׮*Ǣ xN]W_ðf.@ByY)憳! mgmvfL}~}eKQsoilAlFPc!ψ.L/} ޗڱn JHDVpBa`F $b] ֍`1)֚QW<ڦܱʇ]5 *@7%>wP]Yʺ~5SYօC NHtg k\~"yIC Æ/:t N⼜%k͚#מN}ՒT2t2k__0KqƷ@1s2|L!6aAbh d9X"8E.”iys;W1=Đh-` ڔfle#̹,rFRàTp91i9+kY]w/`kMZ] z S"BϹ{ %bvRL#;v[3`*ƸpxLj*bo-~Ś XM݀dK9?UW$qOڗǂr31YX} lGS oNПk 67DUk Ye +#\I.ˊߐ1r'M5վcئmdPm5ⷎ50+3Ș"4vGS'SDXp9Qk)(E8/UV)}9zʷ_| ?ɭ|=$' %p$wﰚd.ᑧvďЩfOՇ^[&kc 8}j5iљ0|Qոpض:j/FO*KK5K`z׿ )n]znjGl! '.(΢Z%SV9q& Y/coe>!ڲ|~:6dXUщ:<](Ge'{ =\_ QwV]Ѓ+z*C MosG.U## A07[emn{V(;H$2dW_u8XSS4-)mX4d #֤eCɢkz`mvx(ʢˎ}5VH4k#۰9Z&kA~$ޟjowN?_Z]ICq22? qN ϩ;?5[wtP0nޭ8鱫Wͻeo]mxsyV]ZKFOqsH+* ǒ1Ɛ"l W_ԁk,{_Ø'zz {ԠCYы+-2Fx}BU;W xC ۝ew) :볦2L /lsu*]Z¸Nqz5KP{H#J$Q *j"P <o =V'{ ^qߣъ| 4}u&)[uq 6 cӠr@++,$2{5JkQlA#+W.;H_76t6&!E=)۽T~f/kzCQa'i]2Hb(/mmmH|GgVgW'WcJV/KY|Q!E`ū=&X\-e:R36=rj]Z5]>v9n1<_xe#eE_\^ر  's.5ֈ'>/N)({C6GzB8&X&(q)ё0&ID+|uhHKrKXD sml$N3NejtWt/orD !Z5AY1{5o;2X ƹ 0B+T5ܿ,4QEKY-?quVJyr12e,¼/Tb@Ži*-VtBIvo/tc+9*c b3,ۧX<́a~P6y3waX(T=s0:7z4A»VFp>' 6W]9Hښed (Ropqq0/˔~{MEpkfgAm@#1w KeAhۯ5nqM>N{h=3vhؘ@EЎʣ[ڜaDhDğelŕkGB7,7,Τw.LjR ,(wxŊ]QnDՒ^fr bt{2&;[?Ulz6$k3R{ kx6s6*u\!|. ]E5M$A(}ݲJ Xs:M ZC)6L3+)_p $ W}ڵ _''MϻdB]m8Yrx?J:škDri1"=e nl# Ne oϞ:}N#ckEnwIYZ ס0*hqnoejvSUzW];5V|` _9U>T (]س ~>Mn^QVJ(>3S|[B O U*E%l2xExOm'$|#g&&ٹK-7Ed2'XtpM)>+Ms]_ ˉA%(E#1܎0{`x;YLTMM(չ& ׺|[1Qۇ'h%xG~o҆?'ܷ?`dd[B"+S~I4ITb3˹]L}p#oR۝*P^\ϳfCpcӓE9h ~aG98UGXA\nC됼]y:+maZ Zs+ NO"H4- Im*? πi[qO,NDAy %o|>>604ҋ 򘏝kUb $ц^нq"jYW2J\~p I;LÒ N\bOug UD [>,<%?^sudIr59X8vkCqo ! 8ɞ" 36_d꺍ŸGȣRK:k\6e_~hإ:P>vTY 6'@9ׄNƶiaخ4ݡA&ʐ _حq,|taMtqDDŕ@aǙ`ĭ|#rε\yJqSWl~2P.N(D}l&mпCs`P( )DJ}b"gεYGFaVl܀\FlDq!Aי(F.R0}E,յAڞɓ(yj[ugjQtdcJGITSb,/}!c . >?’$ QQolBЩ!-Y¥Hzz5jl;Q I~s'6!7SCi?Hd*3(̈́=Eߋɣ\jLG sPLeY{\^Iy8~!EWw6hk8t@NhrlNQЇ\RF^ ʢW]meQS/\KTYԈ' @HHY^+8֗ 1S6K%j\riz _B+HP^hI8x5qZ+\?S3bl:ۿm$9+>8NwKW vH6_>qMLro-mF꒥4 ~i@a qt*B,xil^ [Y A~qyC kMd4σ38-I<P`s{ajl^y< h~8ܸgR?VsUi3Qi=∅ OlydytM> DGdX%UKg&1wN@"+\5^{;@s6$PPl3SVɂx'Y 6H O .KS~u|o35Q="Q^hO3B<,tQS,5]& VъQBa ]dksz_%#UuPѪBAuA :hqm e݂(&2&LvOH୕P }$^eۆhT~!gM*?z} w JuQ#_nIְ v,Ȫ$ƼarvOYy͚哚C({Fz0HLK90$͍`Y mk4"#őb!ga "Y6S]/ѫ.uw zEY^#woz@5ڊ*>ѼOBoop,#.YUZ ^f1>W]p}܅4V5J7NJKy,ta`Aօ(cv8}e5oBֺޫO ٔ}2+)7Z Ux.;0`q?`[6I%\[yuAuohGHebC[fJG-+AfZpoRtc'jȣ% G<$Dn?bw!<^wН=C4doצӉV Ĝ) ľ$_妞4/ONdkk?GӶ-d{ 22&snd'.&ъ.3_&Aj:;?7ͅ ^Lc# U+'E[|(f X3:dGOؤɘ(M?pVsix?c^R ol!hgVBNBI#Dj`Pw}o{S~*  N$F1WH(Tvg"džd/b3ѹ-N~!":vXt^J@ ꀑo)eUtx;Zz1 L;;~)'0?[7U{4v)'$Ϭ/S9-Vʇ Lؿ Ɠs56l3.#Y!XJ##~6A5 <Nmяv "S[h&<jv87 |m)'cq ϒ2(׫Z$]Nq7SG-)Z$KXZ^?ɱ A tD|<*DɭeUߌO@@Rϒ1Ax<*CG5[[z^]L' ctGʃNϠWSo ^WFNgڊ"ϝ!/W뫚f:,%eR H5.{܉j'ۯ M_ͤ?} '86yYn\ӗjSW61_  i\;s jͶ5uB؛rHۚapG$qhR[DΝlGx1/'JGY]F`osڢ*LhCIն;AM,X[a^0TmZ6 RC`|0wlxE@R= M`»|QZ̛K:{TȾ޿2- 3,/b ;{$3DtH/YP~} =LgB̦ol|ɼқQFfBCl,W An!O;%rC%0d& ]G hb(# .s].:&y(Pϋ.0g ENl6o=* BX~FTX¿H߲v6fŃnm `W5`l;YA6$k u4mǯף6I|Iw OtY=_wA-c?¾N}Eߜx0_IcX F)/"DΜQ?N1jYˏ؅.ApE˜3qEP嫭W Im)zLz%b"tS>7mK0=Vg}iQ0ќbԈ:(4Q(>*U,B`qkRX.5Qb僳._Kf3sxBET D |9bZ@ٜ/aώyoAȩHG]93Y_@ 腋K%׋ܥZgZ#b՗Ð)cgطqD$9gо/EA*d6NC}3h ‡֘EYhbK yYc͆΄^^醫$ď3N%('7[c1GѠ@)~XCChO. pocX2QJ֬jS& N5O=]DPBt(uFfn¡@Ɩ0WI 7L 49Te΅;eZmi.cZFy*Ģ ܳJ8@u.[3|Üo h6W6r\JfIo,k;Z+h WE ͉i1x#)7uZH4nҗ}'cG[W):ZPd nZe>438xutrDOٌI` MQdTV%|̮  ojFFulMbx5nHi 3AI?+BR<ˁ+PȬxشA1+_[ (@J*8+:9 ԹBG%Ey/[>_;k# uIԨ D TMO@R5L{V:1}Sf}gP @Z,=UY1vPoz%##tڪtX3"(xG}r^,⺠tͭc8QoK(Xo Z>.< 0֑.ZI-60IqBNfto"] ,Qd1菣>Hs~JfT(GJqN?Qj3 7`م{ukdžT` %pElDS162~ʣ=zF9I&qiZU[Y EEu=Lj3%AYLoFn# q7ֲj}p:wSkU$/qZaݖ뵯x ^VTnGƷԆF0rz3L.3A`DژRr NеTSW(gh_2\a#8 YUQK#<[a?lF<jRhFq ORtfȂ.U=5e VoZKKTឬ5ZȠG~\y[#MO {e9Ԡ#4gt@@1u =d_PTL"\$=xJRa-_CNLfp&"&-@P_FxP"&f4tiyM!d$5>FKmc*VG[ρFKJvHHZ|c_+Mc qM?+S@*ke4T=VZv6ݰZһV~LF(vyהY!ť33;Mʨ,)W_^ఝ|dft}HQd{sFwpJEo*H\ZD(PZݒ,К0ޞҼu[9fGFs(.ߍ9P=D8yuT] C ??qC6^ q<穵E3C.'%0@QcWJ߉$1H\3Iw _+[8ؔ8rNX5ݮ!e"XZ8[_\Z7|" Rwv"3@mBAa*3,'MmqڋR1~ wǷst?Χ9K$ƍd3 #uOcdr q0>6q~&kZ-8UT@HKBj!J7e븄*S7KZe:`.]CRlԺl V;.gIn|s䓁7_\)?\r)ƣ;nG;-Mi.K٘6ҶWLϤ]qhXba&Qd] l zj=<yLXm]E)u;r#jx"&""TB4MctFQXwb,͝k#I&DBƯaXLw.>ӉhJ-37*κbq6WF3n݌h /I3} /vuȔAj: 4xgKP54P͙T;P0d_\UV:[~xh7ۜ%;Fp=u\ߜb6civ>TŊG'XB_o@;K %*.I zh:d20?Qrw ҮWZ?&_w,le&`6Im/`g/q_p?{v! !^]z#JlJaӼs ]CTAGI0&<[$,Czh,&g3W+EdEx^s2 ǔ >/RhKn{,f:Wy^OaND/}O>ah!ҝX2rYJR|OUqvL=Y81Ú->Ŝ1tD]:Hα YSՕk;JMx`>#Ye. XV9?_YTupc3DD8^^H16⹾blʻ*_lJioʹޔFIS{0ZQЭ:qKz|9۩ +0؀ZŎݮvVe'UQI :,f-RNTaZM:}aH ʫ;1^mWb(lnt]IAQqNd IV\Sj[,4ڞl@ >H2Y,df,b J Ӊihxɋn\|i>/c>$;Vӏ0-\:1+pܘ\C;Zw okII[~C#Tr#Vـ[5Ff&.ZpWWcL;GqɤN{[T5~-I?fU' ǺP¼)g)Ig(#n{G)C=^IS:m ki,efVqϔ-)H{ڳ$/vGlYЅFQ>&ZwRnmF[ƚlTB%iH3Jsٍ":5mP fU@0u< r>^ k,@F.pzp6X8.Pp0"bjruPiBwo &d0>ad+=9~ϛVm w|̷ n^k\ˎ}LIڶ*PLc6umɥY:qkd*)&ZĆl\h5$ 5 ~@`d(;f(Ш,KsG0YIɮ*a-Umˊ~|ݲk6z$7oC`Jl0!µ{4|sDGUD%DcN9h5,d^NhfKÛDxreܝ1p;Dӟi;yH^^>F8S;z!۶H}sY. bLn*[Aś8-P h8sp R~]}kR 6(Ytgd%5rXe6flb%k^E[B,ms5y毲p{Һ.W8&>M 0gv&Pʢ> bHlvEʹ[8*AL& 5J`۪zg.j[B̨M>hDԩ;ڋ:~8LݧS^|2ٝ`E\9;0lcux\L[!>8r`nPF("R=Z"rMՕ;ݶF!7W8cyJP"3{_6Ỳ n5j6}cWˤ#xO2ȧ}\o4tgDZ$#kXPa6 _xhAǐ> RH%}Amn>8 NLݢ9h ˯i`rS3czDi,ye-p-}'jY \"9h=,WhE_HPLvo̤l '͛ U|IA^oswQpQ~Y>MI{I[,Naj^G6Ք>6X G{0rv:\S./g@ `sZԓ(^4D[4oW`,q דn;c2#cQO̩|BA̜ʵu.K |ӷ'+LdUc!-)ƀm FURV |*/ G / ^њ WQݞ'1 *zVm@wptnAe*T'P١(qwx1OA;Xs];DFLcbhF⇳RW&V4f$q%E&5 !:J̍MAӎh3wF0VnhJ\'-j-M~78`\d\:cɁ_K '3\4zQi;7\4oY~pfqOk{*\!O_;c, 7F& Z^)D_>~@#/AURXM* 7InN:g(iMW tD=cp;U11+ l̆:*7L"ӱI1ruUH܀6)Ex #zV}o?%VQP|~ʹ0qn~δgع#=] vp^Μ/)nZ0$jPeBI}c 7YDuVݪ>*Gh<$_ӮǞz|hpW Cu~БZw51flXd=Wq4#) nv,mhkM]fc*HpH3ߍahjLGpyu1#v1ǼoM`ΑDg-cyN}h>~ZanMWż,hB.#Gtt \[ؐY(>1l$Ͻ ⒢h*&IY8vޘuĝhX6b w>JU!>]0dȦ-}WjXp oѐj? mln\c15}k0cBIt4"yf-7썊{Pe4O7ݽZM uj29fBj"ũ\\+4U{Z>B@#v薻xvw+I{h|H!V[6zG%^΅,iP? ep&_Vfi3#-sۊ\R;$LDMHr6 z@̎@ujy)u'G1N4 "Z2[t7@wZqA{Pm,gR-8ڤ@QA:zX+-zgeqhث~ɘ9FFւ+[xVOrzU{%8}f%v8*!,+QTl{/)E'0QS8_ Ag&\7Bf~+^c=)C<N'|'7'tLE{a:{iEK' #׸W9|I~b#lUzZqJfiDqy H:z GqQ1rM/nhȬBv˗Hԯq˥(Ӗb: {vBE&׵ z}.ƒDM3ϣj;xĮq*`$ӡ!xj_YovD}$@q y1Bgw "}+L> b:zfE*n.< [ CQJOɊZEnέ$DC%Ѭ}yw$ ;9J6iv/pKu B=B ^*ÐM!\ec9ЗJ| i%* UE;Y-lInT4wsu"`5]}}GM6+gj}HRn e:0C%ʚ9g-F@ su<; YwaG+!>#>nbh?x*3&HN঎g+U(-SJؗSPrKcF>+>QG޴^2uljqM6hv{oopd8#d*~3t H drel Y]{e'^h(S F_C>T0F©i_ 퍹 .w1= I g_ xmk \oeL+/t2D&r ط"(L,+)I vUXW3MRQV5z֬l43wUPnSs?'/­Zzg@S HV"Ķ oɶ{f'qIpIw IY!7$N1'$clM8K{mrU&YZd .n6E!4Fv+۶ m6"cS4yD! }'nvy(7S `*&k)E.@C;aWnuTISWp WQ }[W2)DoR{IeM)@mg!bX' &OJtZt) rB.19+(O& v=gX0C& ȖL~}s~>6M`8uWiR`rpnȏ+F SU Acq.Ŋlczb,AmashVl_J!#C3C仱SzDNt>(JKHj̐PQ%013lU(ٵmH%'K>fĨBmUg:*u y\AgM[K{A'3vaTJ_PHNs zJ!_KActTvgRӐ *C7~˾ !@^Idcr҇X)TͶ,o@v4g (#\2[U[/Ѐ@Oj.8aڽELR  ULl{q,^IbtUܡеs9P:弽&=ъ^/%*= Q#bCAս*QPZ7<_s=&@v@hh5LG4 BW],Imöv2q~d@E7,Mu j@`5Y_Ŀd.;c,{BniAEO&-i?$zi F|e72Dhƍ!pgjKDѦ͈/lÈngmT[;]]PqµW5C7ba{W(Լ3[>;*6ּPZw7p't}k e]QǦ[(=+ڌ,y]R R NۙEF{/)4sޛ9>*򉯣<Թ "~ܔLw$䲡&}mC2Y珗vL#PcR@Gcȫ!Nfx7Mub=,+!݂O~υS!4 v}r :Q4<ǎ< <($$ *"u25wK8p׫ b9LcW佘퐚K4%?nhgiW̨~}!V- ~qI6ЎFF YRGzn>:6woڹl46__/2z%$[V@]9PJؗlp hM&Ϟ}Cx\$W$(ޏHoN)1pSR9E;υ|(u/ 'maty%I\d55qz\ձ`Hcy\ynaqL(9wB)ɩ }$ɹ:(Wt?5@ 0ˑy>yʩG(-aTwP"تwvJ9< s>T;E@JVg_[!? ZLamYp|ز5vK_)ɿ2gJmgA~b*_,:|٭ъBhF~:Ѿтt:8S/nkoqH;=`sͲs3v~LcIJ(1#(l¸Wk\L/!%J.YoG3F߮{b{,zG]v G_ TdʗJ9Hĸ;Ν | ^% ˟ƶV GYqj{(Ϡ/k2`B8Df) ?FLMNB!W29_b6Ĵ|UyrTVH翿iܧ坑 ѻ݊~rIP^\S/bUfH4 ɓq95Sx/R O&LAY~%ݨֈ1vi*8[J:G(XX$.FDx_?F70ccOa+P7"l@`fF7`n" uC2$|s?t1$Ua|<&+B0QuVsבg,ᔠ7lM{3׆ܛJ)G?T/NS>HW%Mۘ<ȆB`ͨ֎WTYA |V&1tJ~;4d#]~ 9U3ai{"apQ ZDK$ M{%ژSZ L<\ђk$Sb$uU!WNqևVǥ%UTA*S=w. =vWh E vL`=APU)r q>.;+ { e|CRq*֓ jGBAA~\~yRL?K:O^ )nj{v2idjr Yzi9ϗUŠ~s' B9 $釩|cwX&9A/0W8*3Q qgU3cp:[nŭYuBB8,r;#)V7L#ի@KqZgiuԋ$l.[o$,gZ.%rvP!]*͡gn*T3VM>xzh oAZD*FLJt{Ce,Z; -UǽQXҺ+/Jq)$1BWB? #ehtMa5װvRYzm!(q+ "vNk$!p^o?yݏ[}n˸fn>G~uK"U;.$: 5M=ȐTp~ p=YQ *3֑nh%Sq[$y pF p=$U3V]E&;Y䗌f7.7i)i*6aEBوY`X[,ɋ)Z /+HmD oSTɒdn9bzA-$L[K2>-0i#Y#vP u%M"fQwM 4h1W!t2Tw<>ugzW8NjCZ1*|{@V֕d We)7uBCTRەv@1i``ٜk}f86<( .L\{h8*Er;@6H¡ ޶}YQNTg *†GTzFRNMb?UILt/?fgyVіYeW<(ߞ0-CD׉]faYV%5Bb,mzIYD`lD]¯BmS` 9|@e#: ,>V%C3 ]) t1s~CCڏejwOܑ8=#i ɾ 2}qH3R &Rĩ]BXm(.zш7RPvE1: ZM1V+rT$۞˼;RLeW@4 (Oy]"_"oK5nCQeqw{Wi U\4<84PpFg·q=0F&G@bQ%{fec䱔 !Fc!:ݳM}!Nl0XrT`U| nyB:i[L@Fu2J/"*4GO)ŷZ3bDPuj~(iӓzcU* T(KA%ctJ1ŜWNLDO-p6U~#9n'_rSq ;ZJ1Q g2F1bp:qq'#m<G?ۼ8k 1wfFէIewb?/*\>AtJ+4>[:Ƿ 88ڹHdVu}-5`){Z*SQh *$wJt)!s;8x"na\F>n,v?1Oh0e}!<*ȏ\Q]Y "b_f>%OA فc;l.k~hzGBne>j++J$RRu~ω^3!Cʱs%9*z4JWZ9(Np L21q.BR,7ۏ@˳z6+T^_O<,/6͛Abt=$+i[2 Ψ10%+zC~64@ôi'Y֑E}ͩRk 8@@j,*\JyDž^g3ѸpY(zzɖXZf]PK `4[ib8IKioqqK2X&)_7Apfmk]?>IֹvQ$TxFpՉ߿N+GaAc%}q6~G 6 I=g9R7+0_ٛ-m$^I{+$\!ԫ&QT,Nī=gSk0j#?6DӇH]e*"%m\.3Dm՟eR e?r TYO$ǷDH}L)+H Ȳd-[Ij8񾓻Af pTӲuj^ .=쫅fEՈIӰĴHo{vp/$=.ixgl~)TDPK_cqXazt {#A)NVZUp EK .;p&3aƄWzي!Zz(ᬏPix#fj< Ӽ*;:r ?mAS-9Z .ԠeEQ@P.&cůɵ8b cOI&NAoH)yYBMkNy*ZIoziƈQt%|~0z,uC |W>q;4N|L˖i5#؀j@MG&œ0%GY+< XʔeEJ"%`ټ~Ehx/k n+To=sД0edto10z9iGw5z9j?\$*F- ܃GrQt|IϭΪ#(%O,n"0@wt>~D}e g̓w(#4"3Iܡc"& 6^,WEH{̻k ' :h+Y ysQ8آ 4&6}wb˥c!O%+-ޓ=BM G$oE쁫j$dFABACa?gPm~gv3AT.P- KWor-T G* ,X({dU`5< , F\ $v*'LUcB/0s/*_n[Op<;D;bhǪ핼 =<Ά,IPjDeij?[<@C_mc2Po7u,RZTaC<$h&%9Q ytdkKgMoX죧?iZlˣYMNe (̎aL7=|bޘܵ^PB\?GLtT1HOtBB-Q߸>[wK j-3Ҧ%Е! =%xWX+uEQib fEQ3z mg8Oi}GP{AՏ6yAbvܴ,ݠ| E+$ A\箓L&Z[eoRz0;2EQdGB3kSY/tgYk PqTN o^>zg̃qARϪW:oSwtX}|yMSQGJ%HH G\/Gu^z& Gb[ghɔ0,F\ճ4s1 etN \0cyMP~CTk;  7]L-P> C7AL|B^/pMuMc)ˮ#/dZњyI moϪûc*(ws3bP~:CT;O6Ʌ$* ]9Wl8JA 횏D^u(D7rMHB (l5gr^E뽍qr%$rdze Zad1 Qw4z*ߦA}s6HBw\a4;?/?bkRlZ Bd l| CYԢSdÓGZ;P7iTb =Ԡ?!Tbc'{e-]OP >+b1UȨO19P5y&a&MB1)\L; ŭN$$iӔ}BwI 42n;m i6u*;`fhn/G1jkxGp гy)aAYampҴϫAON]E,XX)L<3t0}׭he]rņS$ʧXwI5̟=a뜜&9 Y? PLxu>=rU弤4y<:G*IxzYNVtRjTIɝ*~#* |DQnucb( Qr7uǝJdᄂ㚺]C6m7D*@

    L{@6c` ͸ EA[љ:unnwd>gp̭ɫ\di7Ђb̮pw-nz  cs )IDeI 7:6oڇ~0,'Bτ[7T68/f+ű #|MYgJ)ܤ-#jሃX3%T0{̍FPSsɺD1I F^;־q^WVRSf//LS7 v0m$*pkz1Wp)AX ~{}60!َ@jt[];10k\CIE26:n >#ZRtF!դT,:IPB~P qh0-L )ᥨGdz{S7֣eMRcT/ DG>D|nB_Lw7Ic6i'M㸮yXfβº3kF?W+1}UH|]&^Bѥ+a-`0 wDrz >FNEP}~|޷`,U+y:5@WN{T%:]jܴXiU P5{_Xw 쀰jd0ϺY:Y%Ǎ^ktWCQqxÕIЙgd34w~ZhoH^/ k\*A:h:ˀNo?J})S]pqLFsGBknVh ݤ8&cV (*E}]iIx-屼q4Y$@Ћ6N^\륐$#yw&G+䐹J[v| f3aX۔rsuDa,R Sik{g}{V1S gXvCM*P҉?'!r'촞KNcRDG]g) ߿Z3V w`O6 TiN %:@DZa_^ GY=U>E=l ɍh*/*8648l/D*!τPG:U[Ra} ;SjW5;T_lud ) ;Wf24ƛ:cRSL MzVLx-R' CXy\ PIxub1@{|e6GMpNTps9!cNLX6jZ+G(掟ȏ]yTDm?pqz-W::?@ɺa%k5pbN8<ń0Y6zbݙ>^ " !c|8X^6}s?S0{E=a4ngg:I`WY"a+?|$g(.LrJb`fBo% FR!|^gy`Neýu/| n.b;)t[aANg!V21Z" ־pͬQ):)`Z@<|; )%U*ih^>ꓞcĻrT0S1R^!Ed_99ƒ:ǎC~70O ϯT&N.@BFx}dM2xѵ.Y#_ָ1[C8N|>m χ2$#LOlҾK=]s<(NY$ߛ&aioiA2Jj+l5XT@e]+,΁ܺ@E6$8]ثu0 4 > +?i3aydR `T:e"u.YT'uV E$޽1-+x nؐ¬$]Uw3}x:mRDlICoIpxJAtU,0$9ERQjXNFz>s_Pw,Ha̟;Y9hCh΄ѩ;!ZnjV(z>͡M(λڷ%72S.}*|4>a?wJo ƻPfve.m %+r?TV=kYBZPr23 S٣ oTUQ>Ra:+vkBz:}0:ޛx\,&{ҜKO}B RbN r)*g'V?kX T:?>ݞLIya$~:D?}&>^?wDaxY0T2DžVd.)ҳm<m"?m\g6,+m`sR5m{ 8^3{o/?\XMv?*&:CHcJ%/XÏ7Tu]CzzSnSAfg?bd%>+Z LaLg۸PM$꺘QHaz􈼬iER@eizQ7v44q+vS)4QLn;NkUb6ep=sKĭ_: RpYբklp%pD!MH6vMvB\?{T)e7s0VՇjL`zrQ&S5>nMwUi""M4¹frpqZ8p0 )x>ԿQ=+Ela9ɮB+y5bDy(* f#]': $j]q{]1_\l7Y=D^Թ 9](zqGU0<tRͅA $l"!U =>:\\dBF>jgK" ,L3? J[)#bE]9l[>Tȴz EW%zQ7~1E rX i8"hT-gpO+|uVQ&m3\Qyޭo+eڪ _Ly}﹙6

    (d>!/va~e L| :C'͈*BLq*U{%maS"yB?n+ 3MdpwHROCZfr-Yyܶ $8kzvvP}~Y]4$> d1mLwbt.i ᾁ}9Q'|Ç7"t'7j҅.ZL,vÂZ:R0~VFqR:@5q3| X ~h[GTd;6xvt(Alw-t$[ ~9ψ&&tbvxjE4fxkHr}2]yy Ka` g7`mG ؓo?4ha-I'̑u,ʁOm#ȤUeqm[{c<7!MT@yeHԎ$!lɧ~P/Rx|;f7`p.0~5cZJ@Bx`z)64gHr- wT)@:f+Oəat:ByxѶv*]< 'թK=눢?y+jv=z!`l0o6f:7U.%saS8cCiGӹ#+@5p vyZ~Z;3 }cY1.G Jmjy7%E (RVeJlIIşq?|N8^QOFݶkw 50odVpr2vK<> ARgO%P=:AÓ~c[`Ҳ]G4*bb(1UFw_O$0ar1yjc)3nI,D@ {j`5.𓋭ѽ~mTUbM֚[]k^emc?#y'VF\Ih:Ff ˹&&E3w[# )PQBxe,*`"FP?JZyyN$|FP&X*dD=I ¢F $^pWP(*c^e6.W Nl +L2QuǸ?Õ'눲;Y#4zl\m#f-dqm]"ugJd~jivOr8:8a8]K/ 3K@Rn c rrxm$BCϢC,N=P⭇(0rBiυD/0ww`lZ) To {.Ԫ`݇ LUC UG}1NG+4o nx=j:;2y!{ӆ͸7^;\ dzMjV?\\s6),x0dpX+}1jpZ>3;n%?OeTR`l|v2nRtLK SMP廿b|.P6~Bcw a$@D֜"ttOl"\csҖ0ȤEd2q ;6{EkthQ\)E/gApI9_T@*P3+ו3m< #Ckt'!G,JIx&%E'*Pz3l@n)eQ{9C2N2^NA̬,IRRD݊3y@M$%-ןF ArayB6o,tAϞH 5CvuY;tNf { Bm_n*;H2Ӑ5.kHzw[BxPu,ZQa,%EAzRCꊳwChY #UAb&RTZeOke܌3zc=61SŶNO Wt)%ŽI߲mXW`2~I |n&. i+jA'b:(D`n&I ݲ fO*`57>WhU :(Ab)5-A?ZgͣF?;OoCd:jb̎w~!|K4u4? _&1R?OpsjЃh $V̫C6` NM&3Y9O mj$ KvHqs2|/ke:5rj+XQDS7bYWOOwΌ4IܩYTuD(K"vm.\rw5>%K_{2qW㦨Nnyδ>/d$ofPC(>Wt3iM][/IWqQɄ ijb- }acn1e&[hf2\EDHغI5EPmnҧ1D25k şOÎ]\]6,DDwJt%pZPݯ@=2aMtwo1)Woq#ɖLĮ]tQHe{҈qz960xι3_mvB ,p_sX69o2OI(__1 ݷaI^ Aљ:4 NsV f4["H0l]tf(rDHcqE*]&Dd\\1 !!t97X40􁮧q|c͋J{f67hߥۉ^r{&*u}>\{:γEnns5iƖR̒#ytGEy$vPA;X-Y'٫F!( ј63h>8Eyj5Øl)Sחpy)Qcфql%[@ *hbsBZR ($kޘ6xJQޒ?&q"ף*'Vi[~~yIw>o1Vd,NYȱCOpF {)P2jǐ!P;~C9kCUv?gIx/28-> 4HbpDՊf5dDJ鿽~?M{cِ]'=e;&2 :XA m~B@c>]$H|L6"\q = ( ' »wj3VL[V;pg'2-:NӰ7ܛ9!@>8%< Lofv:g 紗UT=dvR3 Brş9@M_zp9KGpJU[~s,-L>M>1ɸhY_JS8a.ܽ9['d0lghm#7e<"`<4嶂FKiuYH<'N8h=w lTBý(\&Ki0Y)y-@sJ |sc0/0 % S ]$ mG9&*$2 aal$+5XPgm,*'RuF}ӛ}eA 8.1ﶼWCm(dx@%TƜJUdQk,կn=?w`I. #/V#)TPP7J9P%Mg!98g*}.e(!Ey0 Z#◡RMƶ7O4ޥ(FH0gvN^򅆀OJ~=(/$ٻ1ݛ5uxîv0:h.e,WZ9Y<Q3s#`@N̋>xS^|CThRcݑ{X}8Jˬv%1͔A u6nR+B͗;S[]6~ Ń9v<|From=1*mB+@d"̰Pe&ćq7Ix"y k&\NXMiN@EYd/5BIw&d ]n}>,aѝso 3b!U" uz5#J0Q!5x s K`G aS1eY\y+u`#SKNf)e"(,F0 ]|6X6)h;Ae@-fB <-^qwb0O_F` ÊBn~Ns0a:^?CB-1{aoIql9 tjee#+nXb<0~E(iRvHU3bVIQ|Kriloq>MudѬZ[bk9%VMņs`舱\䛆"97V&> 82DHqToKhSoe-=7߀OS$!l__hОp (VC[`ѧOB JEcreģŨAs N͌(:iӛOZ ^N NF'IQ#XcG۪4.}QSaf!=! og+NÉ\v O)%ӊ*<=К.Wjnz<0>@P8bK 6DI$D%$C+!5dqc:5JN5G2ŭ/[vRrN:1զ-g߀^ei@T ۜAIpz:阺ƍF~8?e=#! k<܇;k"#Þ=p>a>,M?NTލgHsJ\]CDCmt=waiܨ>"A*5Y&E?Px& 7ٷ d|˗r_P+[D-ę",_RC:sR V? `3v)&C RJ統OOgC+ѪߑHÅv5vIK5z@< yE^ѫ+ }y6wP0#Q' K 8j*pݵmI1?LBy- #5y9 e &#tnlMtǵ0In_NTcx}6+?k 6RS }N٩uɁIQvy"q0A ؂ U z5aݓdyE+]lqVɎ떺XkaSΙScz8:wBw ˷<:~Bo>6)a޼>SN*mwDMeie=?~}Sp6sZN,** h ]IM0ib2KqrH:ʜ^1W|2$ mr ?ّCC"mB2쳂G%,t?H%7?MzoF2Gv!@Tt& SR,дN;^h \;Vsy+`"dP)?*JP0wup5<~Bt= wro-pK!ƑAPvNY1+բ]8E\ɮUCc=T&va5c^' 6Nbbi+#p ۙW9D2Sa;K5ǹrY<5 C3j|VlQ,FTI>~V ylQ 9.tI.*)]0Jf97Vp٪l)!=׵vu~xGg97ca 3U0xBz84eUe7MC  RnKگhFv9jJXz e}ü]4S#<#bH˳@)cgs Z?N  Pe2 E_H<L^hDCV"2"c-|Ygk Yʦ Yr M F(ŵ:X,m"6<b)" w| (>wzFxhi@?M`HkO` dsLĻETS@L}0$ul/W %Y%V(gr=YZI`&qe\Qb(bIcs V!6K[b@ +,6T !#z5}>JBAF)ZtUZr1UcyM@#Vr 9ڋZ`Lmew?,gsP?JQMEҺ&-!րjsuTG){􇄛8tN#;pV[Bcʌ1W S@-|)K! X8v0q2n?@7aT"%p/?5i F]85\iʗJѤk)ڃ)+jNWtq#mFd=|Ienkܡl2Ƹ>iWDXN>sqjE<ȍOsY8ȚV6M2y]$]ս]4CJHrm9X'25M`fs;ob_0ĸ#+0_?& eo$*h8 Lx/;OnVC>oWҤ[r;[ƈ>OǃڗZW<@|Hvt`.@ߥOv{"i| R4RPC;(YѾއ'Z/ѵ J>-$%=µaw]+%L.;<"QF[3?6SńsvAN]sݘ8JǕhR{w2&cLaAv)%\Nˇ.Y8=7xR'o&hx)ˀhnE6h#|+QZ-Сcޠ Ipþ@r'(q&[BVً˙U @\fq&ʡQ屟JU9wQ+~G "H¿HJ<1m?{. tHoX⪩hpi+]l=k N =ƴ#{ y)NF8N,O=Y6/+eW}SpKҌu呾4a)Pz>U{%჉:5/1ṃY=~[x\wPVz&L|*DHW,-EyS@aV+\XFF0O{|;2Y?PaxA?]Ӭwp(xi6)!.a*˛$f%;&*m>֖(^cxj3_Γً_NTWZ;0BLa>bߩ4c 2P^?,Qut"j8uER#Y=ȣ[BLȹ\< bBjƪ ,9L 7s |jh6?~WÕk[YgK' iB0)EEEᆋA{17e?F98>< Xl2 &zϔFG+G5=$uj XNb TF)#/0nZS< ;:t!y sGUh)md_TTi ?96bJ1}frcxQS.9.h;Ѩ{ %g>j>5!$t"zz[A8qIG{(Z e_޴˝EGAAU^*=oc2UmSDDm6[;-XELּJ 9iG4,-dPVun}{9?z.Kfn{XK`K|?ղb,+FD^lḇF8H(LhbJ@*i9_'&+6ޏ1 o]4_2x[ >Q5xU4 7kH1{GEw6}f r|Bz(ՙhݜ56p^hLW6DL~Ί*Zm} 7[Ljĵ$N>,Cr42-mB^x'L09,dCJ̗66"y+k)`*)r+_  7{sx^}Cd5!*~^"j0 Ǽedc蘜N;W4mi.D w 3P>0K4#J)&Ϛ'orҘS_z@j]m'ٯ|8rUOPF ɼV"jц'L& `\^!_+zk1kBYľ:Xu,ЬxW?O J&BcW \`+OlhmDVPAgvDRۋKG1VN.zhoךSJl?~ d qLiWݚf؝>a˃f4Vikip#ǭ$Y7>lD|!>9b %0bCLkYPH0H?V/SN)h0hOmp޾!ɁC<#Cxw-{0Eb_r]:U+tޜW#=)b vd#6SɊ_g;/?GL=]G+繸/XÓ+W^0Hg[G :MKi{BAO,b |o?봨梛Lb;Ew$4~췐w\3+ӣu!#a"2f"^Zq"O眖6f8ߌϬ AzX)bw752 1UhTx1m8R ~ў4d9/=>Hs!t,,;сLxZpM4zmuE]*iﺛaM{=DSDKo3/z& Ȁ/+-G]@NIDsҏHp ["4`IUjuPKy\YUsxZخB8m3~W$ 1A ĩ^Q F5G_HekcVGmյJPBO!fN[\VE,x35#̩Hn 62|2$FVMP)P%#,|pQݢof6mgw]}OG;Q}=+?tHmr5O1zN}tIc831ݔD)\xڸ0!IYK&(AG.~fP~K;S6pv W1 -A1rtPIp&wO3& ,-@*Z; sjGxcKDcVkĖG0څLM,L_(+F̦DKU WlA2 a<+^hgiY' jJ'y: W3J315 5A^Y-?@* )j)Tu}*5>oY?Xu( ,VvbNf%5򙶑BNu6bVָx]s i ~\ lxqPKVJ`ݠ(9؍"e8bz }Nq|x@iVVʲ>bߎ9JB݋@eMٜ$ԥ7h ԘyPABIwsdaMg*5O {[^m^݉"̫=CQF:uI x<L@xW KhnrI0W_FQaQ^QU|U?ĸ { nBp}KyǚV:2gzoˈ4X}"6ml[o_YU%&M"; *QfZFXJGnvc-RR={'{q^Y>|5#K7k{?ˢxjE R2=t-|q<!üaVͶ< xG)u=ADtaXLygYKVYHz4]JamE#nl.d?ra7J9O4ba_`,5dU!uc[—FD$k&GW;ogͼh.5^.Z;y^@P `(ݐ]|qݤSlΜ49Fr< (sp`#DzQN9NOf<ͱ? (A;b>^/u^ zŸ29Eg l;<$c2w >i}y8EB`Q[ĜOqЧBo HabMD IR)!{F-ɧ(|71sT)S5 `Tb;J?dUߟSҧ󇕧lm=ىJID}@!|hy]j'c!] D#'LD4P8]eE@G]e.@iEu:,4RJF0=27!+k.]:#ţN67zF`…NA_L 6Omku̝ yb=3td4`svbN[}_d0^l{Z6F?f[Z9뺂ׅҜBgj7n?idJp!>Ӡgb,ҊS7A̤7-" n:zB 4-TR1oZ{gz⇗{)d'2;rRJ&YɼH~i֏ꞮH(/ƶ#&v @G&&CR ,j=z@1KϿB&H} |\2aƂPZ Q+!@TAN1zQtLUAqd*kG{%B$Gu~XLzAv:P{Q$DL[ꃃ$>I7'zۼc,$-s롚gl'AQKKrS%~dJv~IJ,`=7_,:66[REJxi" JghR2%Q?CXm1i Qu2Ykh f ԅE מj[`3EDD+R4dFXַ%5y;ɐF׼)A" j\KJ6&|?Y[5l_Ȝftx(qOO]Ś2^K{|c0|0Mm%%cɑI e&=yV;= I!|.DI Ŭ3 ێ`3L_%yS6}TZT0l`X [ac4hx>n CUߑt³(aphxG\*Wvvtڃ7Fv&fvIbў2&2ݝƷKJ+!WD'UD"maM;Ci@Yux8;i?b$5"SIZN)lf8g9䦡}C6H}C[-=_\jk~a*ƛ{9wRtX2g&18 ?K(o0|ڏ)5t:C1T6R6Xg@ӧFa}Z; FA]a) im3k4&J%?墉:C)ם0V;fG6Z~8lɵ2;ϬJ\V'k&>XK݊K].mLa=m/fhK: dA~(t=8뮛N<쁶's ȲEFd .pYj'd"ǻutqL9wcbUjɸ!<@P ;^ N>u<{`lzxc&_HҪL'JE٪{C'E z xQJuR SMܹBQ!ː/vjdrGW֏r$]'(eBv6@TMP!u e!XArx;7ep)m p Lܨ7D) >J؞ 2@j/6υ7L Ckk9B)Y⧈ FxNvB͏_1Π2 쇗u,;m'md HXQƂi'zE=myq8f۩ꈕ ˍ?T<0}MtoNM[.JM.^2C! b `(U9XK8+r7Kj94ʄM63`#&x_T_uuY7dET8{,UŇI1El3eB] S! d\eg!J씗 W:B{g]`1 ֨Wb HIoAz|4XcX>Sܹ cn? ;2p%o/6kMOfR">_Cb žJQF:LE,!v{uk<'`XUጢJ4d;&32$^hAorI5i.뜁$.oHWyJsgpA1U<>`ߌp sBl>VQIX3EDpϷ[˭~Nz-vSc2>nHP }/ǪN6"{ֳZ.`J=34.jeFvcgꗵrBe.$( X{9* Kx(F6wH;{V8Ќ$X2)nOSiCJ +j7!iDک{Cyr_q^H4rk3م9VR~DѼ3C2q{O}6ehwSNSsVm Hwh8s `G"N*.i!R{4R!r?̸&N,12);/60[+]f2d}E5\_2ⓎU[S(9wiOyS1 OY׾ ^- A"`|4&qY8q-S!7۝noj]D,œo3m\y eәTw,lq ϫ4 a#ɇc`>8 g;,6~*K0ls`Ez`XY`eyGx)wG[R?"rPYPRYuO̞f nھrGsq0shjZh>x۵Wv:b|GF5M um5:doTpm  HMʚ 6ع YI~}[#̒fN޳9y=0>"3S5XK@@aa'yY ڞ?baWӔxϋ_XO?!KĦ&z4~=%'%`+Fr.{I:=U:$ۥ6j=R?$%~O h ^n>Y("T7NhKB?w%%~I0XMz(koSD卺MyD])FlΞ\a('jvmoy×w)}!j"! ,1EOA#5թ43!^ׇjg-" iW%%ڃ@< w=̤Btm{5mM4{9^^m@1 95U|xo]5#;ԘSQ,:*,=wŬEb bo+j.R9c44"&XהcÚXʽSÝyv-@ىe—;a:Y!)b$S6nƅՅ3 tkĔ˨0AŽҜmrk)H^w^<`"o*"RN>DF<,9?q#J>VB.45Նye@XvӴttHtǻP ^ƌGv^YSR>?DʅS@~Ƶe̝nmt4^jwD$_|J+w4}8~o~{Ϯfm'}xq6,"`g4/+`_@"j>}6:8\`G[{ₜIi@*$e;+t-/Gǔ|~قhlR=/I\z(;jv,J=Fg5ZX=8{'sR{-;26RH_Uxe+ہ7ߥVEGW|= xJDMuR+JOq`ϕ/h|'R1Ѧؘ0vwj~XI$X`d}PҔ4"s$b^P!H %8 堳#U٢@| hrʟYCrl.V20WWB q℃v0 c*&]ֵGXt=_7Ƚ(Mǔsb|a TI  3 ȞΩ K2ub2q٢b*b_8݂P)5zD3t۟v5ŸұPqB^Bk20C`ŵ7 bs~(AǒEbKa9a,MG8W`< G-2Qo1f^؞MS\'uM&Qv%/Z߬'{޳ BKX|tu$)@YE6&j6Lj? A 6RJ^o]2=}Kor9Ap>btIFf{_o|X )zy@Pa!bp{%qVG?j8^XN e˅\Fy(v{(Zp(9?:@-[& 0j^]'s>I014m=6LQ9 i:PPQ՞jӻa=P1~d̺>f(a GL#D Gk+Cuּ=*H1^>.>x!43m{ErKu^XQRmZڳ2ğQ HQjIPMjnoJ/W?MZnjn ʔwKZGXH'~U2bfKrÊ5+&cժ"AS7PYb<8Gޝ@tUp_l7`0L>Fc)gj!P Aȳ`t `~ّ0Heѡviv*'sƱ& 滧Bݗ<$ r\Lf6+|36B[p~ziTT6Ά_8WE$5?3}^m9Y/4a뵊9 TFIAJI7/`'gD5\ vh$2d<8l=y`.9sہI~?l!TRSLڭ! z(كe`,"' YWGe[Lf4v(iXX %wZ=PՑ>}P0X @?q{Jڛ۱}4=F|A5 m<'qw' {DV٨/˝&c,CY>ktX,v)J Ue;S`'hFSG.Y[4c$ZJ51:JfɯVz' +go2RIɫ}² S8xNMc3 [Ji~Rs5eDW1$*f obt!/L IMJ  춅} ?~F"Ki)@[e 8B xE,lHJq/ K*O fñ VjH `V{bUGvn2h+YZijDN2wno{@P"" *_k1Sv֯9~1wtgiڌ5 eN2_a0#vk[ƀC͇XҾla Vţ|OBZBeha%wۇӇ8ǡ6\CZwI~Uh0AD.fT|6m# cLR.r1dؚ"n; NL/}5B=%4}h8yǼcOp`8MSoD XlQ@7I^Sag)rGZy>b ?.v-0φфX;m f W1qѺvAf߅U(?DgP8uNAEpL; EiCX?&ɶoQbrw)c [\Q&q`Op]ZC1{;-Y`XO*X;ZҭvڱMkObHqS$' X\Qp2my݃^7j2NQ~Wñ"1/gt_POUT7b,|{;^f ?ESpl'm#{RlbM+7He6hH)0ٞ/_@'FB=~sI'ܮ_ Jj_uB2[J,A LLw Gd£c6PM[2c<:RQ"ovQ Lx*W==6Ot}sgr'2s!&{ hdDIs7τGZ~VնLR+U!S QLg N{ ُ)GK*+ƪ>ASS幟օSj<8L5ͱdF 1BC-3Ĩ<<.62uIxcZ :k3 :UyX˃biVQ#fY$S8ռK 5VvwzL &?Q^W?CEeQv?qE*#FE0$C1Pgacd%7궣%-efe@%$nQe.+5|uUȄu\NmcFWj-p!eH(}5 2E`U]W\XQ'udglۛ0[wJU , BF%̊>=e;ZNg݁VDQ]jvɉic7igЈ!/ >RiUu&tTXZ *ȮU)X%)i!8 APVqT{ N >^תJC5OGb3nQE o X}-^`*̖'H;gsb.Ks dꗰڅ7h"/3 != P`ฆJ} ƾIbRdSݗ_K!Y]E: yN"d%V#=cU.XN9k6#/%YOWoyCxh.|u,uGWGEQ?ucZ+猂zf1+ڍK9a,epT4"QvW);{;\T|n BL׭;ds rBȃM񞚏%Iefw|Kp qڳ#f %><|4xE+C;D6C8zؿ& 0^z!) R! ,r Ur~ẹ_XY#wxp,!Lbr'.)':zy"A@ IK2\ }A/0PH>rLڴd7k@x%2핏bLe3A.m( 6F=وoD{(*'"sVɷ'Jfo4]3ۮ*3#E=6xǬ\j$ljghc{ގakS[h%aeA%(slW^eR0.sN צzvi_[uhޣ} y:NVnQڒ sC0&oZb.AhqCCA2=4}Q֬Ǔ㨁RS1zj _CCRA|{ ]L"Aa(CJ41<0vc$t^-a=QOH;uܼ҅ݱ uB5?3oC{bB=>U)ߖ|U*DWg$q/HaFj(%B; ֘ ]D'8NXJT_,n¬_zvay@ֵ(Y\Ƒ um+Ìݵ R?p͂qћ_d[2?:3'6ΟEtya dm\4^<'jߖasir-Oz0k!{]t ?O?ίsT>RxxVq]`Ini`jKs>MC2PU JBco2qF{9_R ;sIr&ڽ ʈN`S!:TͶ8fo`p#,g򜣀`L(/[ay; r}Ѐp1 ȿ™~@$}v`_W%Ȟ*}CB%D۝Ǜ>׋۸#7Ki?Kq';;NP/]MO<]W81k#cy"7Œ+j/bLӪ5,ɖ2b 1d =d=ĥk|~XöNVC+ xQ̜8GR`5*%D>x'7n^nHw'l=ZhN*lbh\HJ+=Ei*UE:TU"\OZjPlZ fIrZPd_ɅǸR@<((Ԯ_qk&6N X6Be^J?b1u2# BOa(ӽNXԪ#2sxa|-r BBhדx[0r Ǝ1rY{ R[;W^[ydDևo`-QUivnL?O~6R -R>~g s1?R+\Cw;"L>:Ґ '>Qyiyr1ob-4UyY J` SE= |/ -] T]k$As-Pvi2r_{}S?,up)G J.Mx!KHu# p<#K Ru[C,/.(dʷm5  "ՆǓD"U&z ϒ]x-. DJZk-6}4Fo쁜|KdM>ÿHAlܬ*;gAB pњ܀/0NeKأɔq=7sR+0:  bgkCbj3vW@_8gyʠ BT?\u&U2) x~1‚Zt|XDPsZ2ۋgK sh@[:q>zYVB]3?ȋ :I)AJ?lFm1DZCMhy 5N 23-Н+" +{ dԻGBŖ@#isz8\1hj|ϸ;p#^ ˆ2;nc!Skw31%d_ukCe#q~uJ(ws7z]By9nqP1T#%~h;na$4_:z|/f!Pa*5e^XύU(/>"Kk^9b6#~f{Fg;,(|=zJ yS4' !qs{DN8{qq$;=,hVT Sy>n~F8f(t*% yԵ& ҤIP _#+GP;./H+Y֑Ko5"𓤖DX%%x( n"~)vyGe!d@$VK[J`h]h%]o6$v&g*n6}/Z^NTW%gXɧY hG3!z̼{ʔ^l*v/8ʊ&9خtOwS 2B)/sdj+"ߙz&WW*첅qz,kF\RmZ3;[B5 jRv<gzߊתTY";.wtυ% *Sc[jKd@Kۡ*Q v6Rws.5w6x79YQUY鲉 RD<<6:LRիG^@AC4U_^x%qߍccH-#񂆕5t: _䟙;G/tpF# <'L"uom9ja=c11̿vTbVd]ҵ=11Z;Nfu9۷XդB%LNC,BJ09#g' \6t`H$kt$RdrD4ۣA3AJttOq'~>SQdkZu)6vdi~$b tRzf>jObr,#eysZd&iA`D#նm',w/0Fz[?t׈6?X5S_Gu"] L=*:L4cF|yIͯ]^=n7hĩ qIV-eZY4V_isޱZ IKA\#K?}Ŕ8_}= ѠtԁCD ך7/r C?[m|W}|IU@{v̄;P0i]DZ{#!AHC :\ٜ4FTw‘ #Y`U' o*d!r y3d59P`yMgfJ "rE\\D8Mw͘o߲F(oBr@i4G@U>vl!!+P?himApT`@,ۊ3pYV2bѶHQG%7(&lN!޸SFRոymn^efC`sr=(jodl^^u!g_B{CvǛQ8)/2v̇c2֯,7fх6~OP'ڸ '7`14Hdmjԗْ5.%\ɥhj%mbXM?Qpb\+sL>efwi^-wt@>']%"+ ϖ.kSzL[f)'"Է IJ.cEq_Γx_clPg5I kU4͌͹T% >|?7EH=aX񽧿.,waB|BȶnX?Cb߉ βE,DKXQU/|h1ބ !s}/Wc M:DrWP) 88[.篊F,D u=x!yw*N_M %HB1M8j&&BaVV?_մ0=*0jfGĂJ硶)#nzM݌`0VB>/ecF'ۈ"hN+$ĘZq3Z7 Qr`gFDS*0^lҷ3LV_#P oSJ8i591 tE2Jv!j5j?ѝOVoH6?8dOɴ0J%%r+kc,:l%k/L8E[ |kD }$ďnb!D5Ռ'%HE=iۢq?S]{{GU,NY?}a mlڠDh2bW=]V9)Hg͛0Pz~2};/?SeY( i4bJƶs2BQ ˝zj?7Hj "%خ_81gў2yFbXw.'?~\@u{z@LoD\ue|Ɲ?+B^cP[QL/͠6_ 9B=!t߆zhS^H(N3ԑ"yV-G=`Smw5%pLb^p[ͱ5Pg-Ck3҃tln(e4ˑvwƁ[?Z.}_ryoN:h1?BudxbpItmvҹK38x\b!"KPL'xoY|`2]cĥki E# "\dB f'?`+$N.ex4X,;? wў~_jiE*.!n>@crGIo`UAԲWh! {m's;Y0KѺ KGSEzOSQ&)X/#_yB^"MNxGs] U8R9|uf29R.Fǡj,YP/O+L_uGOkN΀nM\6϶- a2JD#JY-~1z#SPVŋ a"npA<2ބ7x5eɴP5<1* B39[5,u@ZnKq6'] h=K*DDXbu=qBfKn(E㵜ĔN=A.24?|rJ* @tͅ >pC?,{uJFY%qv s3Wסi{=aȬ9Wn/PM(Ļ#+{6O8ZloML_. ,?x`0:E[ +BSgH +0q)ݲWMJMG0c8W*;/{dIey&iL\XdWʷ ^m-BaZF̼-sb^p< M ;8/n7xer3'}{6^jC.Ffo` Kńk=c]3_㉜=78Z$OI/RJX@”-2?Bó|đl" ew&UˋgIʍHp1> ڗ_";2D3*fQp:U YޫO85jc8lQ  q(+RلV2qavn{Ic^>mit9"-CuUri0)\ӌ2ogc [竭`em{wh3дmG`HR@ޚ rS)t!%5F2mTA~ P'(ڂ_ܳšt2i4#γ௠^L=P$ҭ֊ _ꦐ[I~+tᅴ+V=^wm܏عt򇥃,CDS}9 oAjdžٗb(3 ?ۉ+rKU6ofj<*,)`>X#~`r4?lZV@ȩ}_0'_`w;`~ t$'IcN6\. %3sTQ۵VF KC`[?-7Y>!q >D;F\便UEAO$;ޏW*2Dk;i@Utr;3 AF8mcsU$(^b׾θt2RqʓN(y`9W8f4@(&iFN8jSonZU pz0g-aa>B%PLԞ;Xn9giq LMK4us<6g.F3-z>!GNp aX^f Ó)YeO:tV\]46g+w,kU;ĵD](ZN-.dWV&8 UQw<+/_bav9!0Ԓm"S}^:%`yX60[^rNޕg:Za~̾ bf*ǝ#*I|y9M'H{a`Ҋr`NSTG2l))ܢ9Ja|(g &.`[!k>|~TqPc Q}a21,s}g)#P-s5+cvD-NOa33Iܲ* xHm_Owfj{} \?7hHV^҄4j/ c@f8UN)O1*?| ړ)1h;RJKa\| um  h(Fmjݚ0SQeYqsڭZa]pPS$gUdU.scW3>W՗ 8V@__kI[E /!ba_I9-/Ld+Kƴd4UqME?$Ziy+ C2:CCu<"]"$BcH(Ċ PqT1~RNkdxg! E ^5`{y 6f.ʬR[n:B'G%tx~XF^,kp^^&-pP97i,uKbnj7QJJ i>}K$\ l@ _+7d@ƭ4-B~pEp! 2d4u9'Uv1HzAܵFic dUj%hxFE.BWر~~e dtLdnn+NJ\/b295-K_gsRC" ȕh^E[δ/+W{zcq!WIk( 6^Hfcf[i>ۚ%$&2 9ţ*|fx |K{//Աk+\3d RnrD-<{Kr2|tNū$zՃ(SuR{«y f0=+P?dmS͆ Ў|GibO}dfIyDn#vMk}dF`$49}#*'XD4ɫ `oK'ؤבe39yݑENt܌DI`@Agl.y7SܗG]\Rc7tO#e#r7nݛs[Gܒ^ۛ S~&ֵK(oSIrh*Y]fn;1&Nҹ:Co3(qEl'#zّ4D?УߜeQK}( HE ,2K`0WfYEǣzد"U,wz6f>Q#іs*5n >F"B8)izBXG`b6ݵt#&R#Jt` MYPiuԻ%1QGe'z ҜpB--4Y?$_Rr;,a ?TY Vo_3q _tз];ڠZKb3!(f+'D^FIe'P݁P=앩$cl ,$ډ~Fi¿PX5D":x`kf{Hc e݆b靄OtU-X? )*m0hM-6*!33W2ZK^~-ĉ=@;a(Ԝd&v.\7^i9v0@S?!>0P3DrS)s~oSեDPK#,5ځ׊mrG?Hu Bp@ĝӜ|iްP|ۼ(7 .f,hH_u=GRP^Et`rx`D3Qr;qTE>%Lfz-}rOuՎr\6!⏧7vS8aK1tnSPApg&H"/8G~ɻ4jPQ! \+3E)#ĠYj ^Yw?nobDTpٜY~hz7PU8Ĕv86ȷۂ]e̠ ͿaBd-S 4V y[EۈjSyoKVǐcun;5 (Qr^Zn:6K.@(J0MZuM{ }ҏ{!.T4ZZ0 nvI :Ks >4 '8qp?,"  [O1MMvdLU4E_I퇕Jt8@e(x/8 M{;n2.^sDʖ6W?I*"*е >C\@)Rn_ֳWܑq)^œ36 D=).4V/ oxHdȐcԄP6J<grhaw-fǩ4X&8pu;9OdR72",vGĿȍSVUmKpAXLyԽ݊nNמ*Nб+| uz%B-'R,bhMod!&E12_vq=oNaC }姟&,ۜ#LS啖cެDZrͨd m VН΃x=8=|{Д;6 7 r㳼 Q/cnsx⿩CHr-Fh?e_*ٶ(~ f+/7 {,!kBxD{j9!,׮g'NA^?)|`s>>';h܆2ݍ3K="jzv=w]+U%Hg+ez'i(@O= .f' k]&J,WcjS^\;q8=\H Oo,3Kzg~YU̫JP7Ѭ>Kegen'amGX`2_ۂwʋ4Iwѳ+u;#Aٗ$>M @y3Z/;WbUBtGceƬA`u2.;iqnG툰^89έ'j5jOjŤc * 7R]H]qS&N#A1GY푝;/: >t%wf/mgXP{Wy¥IdIFu kIܝwww%6lGI1ԿPt89;# IEު׋{ ZnW1%ư*[ ʑ,Fs94K1.'rnB]l3|Is'V<iIb:]'$}?681c`%e$'EkV$\ߚ1[~+}vVE)N|Yya$8e\n%[2g*)si;|C`~ |vVi4"h!x{8a5}+Oo`+>ݫ{8(;@_+5)q2N4%%#6D@nU>sT^jI 94rWXج۸dGiqժ4%APT8SѨL o;xdV/Ѹ[|$Jd6vlឆ lآs[aZ$ЖFF&kƯyYYQȑv&$i@l  MhMݸaXXGDkuW53RTGn@u K su$//7js "u {RH^^, ]}O]m7 d%W%OO.[T+ȱJI Q%VRחaS=צa=.!2 }\( -4wNO6d 8rxP|j*9D(ƏySo^'q~k$:{<5nAry굇AfDS1+,@sDCrwˤ ~iuKw\ \UO\7<_ !.!7h38.^ͬz\\'Y篝䠼O7 *\LzR-Q˭a6:ځDe[ER5/x%Kg!@&v;FFیA:b0,-( ZMP=I-EF:W{$K&t\?M#mt̺ӻHϛXh`b]v:}&hMW[ՕlAܭVDs>rl_|~xuFi$XD]њT1!?'"cl2o08 |cDOf:jY@Z0>):#Ne:7J8$ƄO-G#m<#mgX /&fyxѐLzLrglǓ׮hrnN#zR-GO͛K\OO~xKWdH3a 3Us_~Es{as'ץi;,Ty|o8|9J5%~Ȏ8X[-kQl _ C,GoM9]GC@wZ6naU2682OKy58":aNR8qz0,K7!Ԍ@L6os] Xc; +!] u(,cW5Hۀ)I"7=в>u(Tv1M 弛AaO\xRQnk%dxi[ ٕQttbYnNTnk%z@.LD:O|])%nt|rrʍ ˆz,'teIb8 * yqLqķoA;l;aυ%`,z$LbK5pM?2aĉb#|w?UlɴKǗI+qT0e뭭 &)ooc5-N=X¨=,sN 9SBPat^?gڦDCPRp?YԹ 2#zQS3!2v$xhPW+kټg;Ɖȁo]M zo'n&ٻUc\tiT |~O{<2,Hgb ;O{c ,i?~kۮX1 ؅ڡkBFo[L~5?-g2S/? 1<"}h-hwm}ɐ 4S[13Edղ!+D\޽S7zYm5QlPZI>2frzZ,%Eԧ%JUFVU*IU3rkՇhMy[H K{ 7 o}">PuT}B7ߢ*B -1sANYF+2IX*"YPsiʏƾpL]ifD}A< o1(pBO1BM`p43xzluOjuAcL脋q?վ/ߜR 2?ZvIHTY5\Eg]%8{„os+wR2ʎ1:GSHvq*_`be3Y0d6Wσ"(Rnj+z*,^q f$~ 0-}"܃*`ԀC,uE7T1oc =DVK>t gΨ#C0ejOlSh8HÄ{m+44Oق\Ff ђ[(ea '3cX_I ß7QɅAI@Ɍ*I-Ru1 HJ%T's5hG*l bА*GN@SΜ3&wPeթG1vMG" џN7'{u?~7ȌTA=Ԝ%ݾ"NI 4n㎔8uF_ :,LăPaoqԄX$SoO:;A3U @@Lm#u|.?NR8T\`u麺G8݈n1̄|]K>\r,9`¬H4"Q9%?5TA)P4H꒖vUk6^cDrÍfVMX:,ScnPMOIO(mcy8V Em>/a<'$O_FZ`юg> F]p}g[oTVz*wذ} n6ShR_&oY+GW^ |eyTSSak<>^M "!U~5zu0S\T- Oe:`@05!OǏkU(s=t[t,U[^*U"!MyB-qzWŋ'3%ꝟߊ'o'T6nJ垓drc/%YϚNSzZ1#X%lFz OJӝGۄx2s<3t:GSG鿏(h ^Uʵ㲷F4aC&^0Ү ]l8XlvֻB&!]J\^fC9޷WWCWŲҚbT^m!*/obZ)&){@~ FUU㘾lra[r7q:t#"?^᧕blIA0i)0+"[-hx%v EѝRs mlf.pO_bzZB@XKҖ 425}J;p$ lpP Ε&ʺf>N9sM=SLbׁV52vv'sj+([~ ɹ58z)G[䨩uJWJ;x̋qM羟NK{מ%)QO++.+a\2R'oA)iXƪH捁%Oz8yE6P}g0~WX )cB.)A;sv@2P2v9@`4H(Bu;&[̀Vä >i-R&b ."Rc8x8SLEPSxB.$lH[\aʦN[ @uDUj4j@oL;k.GeFW׿{@z1vT==kD0@RUqMPBqUCF kEJ5CyiVm]R/f 4HHpPPf&d&C`G(nYY٢7=AyO_Gh}*F@ʖn $(ӳvdXky2DK-r~ƍH>ȼT~nx[ػE=F^6Њd$Z+0kZmL`L9C[hLDsgOG; 9=4x:7AIB 'v3M<2R%cpbIX6z<I!N$*_nJ 567шD ?iD66E=:!k͊~r'naѾ`#]C}LA^j;[-9yD~_45iRӃdi,D7f2qm)=&}/)V&l8\5Nw\8'Ki"K.qs!C59IprZ5Ԍf omyBeeR90Ae/ϳٓrr KBTs z 9XƢc7 t T2z2xVVo#(0$,mmGo2BfnñiV;5w ڧd=!$!P e#952<Ȭ^^XKDD4tW@*m1AQ6m Bl@."&0QU$Lv)rJ1Wv '#kw'/w?K^8k08&Ir*Gn[ݜ˴+Ѧ$l1-D@" :/>hEZ:jX- h񯉃>%aGw׶BKQ}!5d Ǿ c!`aZA˝C؎+֛" _ A5k4M0~k[d)1ԭR裗Jxj=`\h76549۫aKSKi9Tx1[B4cFo#w %SbɇNaB'OC澜!cۄ-ܭ\ʅwZj@,0 09&z0V7jJv}{EvyܪauKƕשkulu o`tx ܟ sP&kJ<Uf>ztx#e8 `%W*1_Fe\k`.I- zcb'"ybլB |G)|sߌ-ɳ%ay'fP-n U5G* BhcgJJ4@)6n1C5g#N j >7%HlHbK B3)SY,r=N7.x t_۞s/0v[^ V1eL*#OrbC-8Ey%;lZ{qm+܏/Y %U-rGQ֡ڹ.:(G1xwE0H0Py [5 GV1QVpb[;um_M%iR yߗ:W|ZZق Xk>VX)BNX޾ѱ[-f$N^ nż F6:f4v?T"V$M ;,d;qlK<-Z[Pg̐3&v\l:C2X}?ZUdDrқ/a"x4P#)^쯸ŜޔSMk03鏇p@ pekhld ru*Ԯڠqqf-68N8&jDCuʶ[a8p],evP_4'~gc?uNtW ]4KTɐGOC0=@}d=k ȉ7'ׇCBЪ[^t4 OZ0k9J2 7)`AؙZU(@eS[1@ y,µB#^/@A$R-{ޔ-rtdJj0{j{\HwJK'k`W"xÃ-<܁,x'+U}yt6ORBF YzxT)ԋoRXo"҆Pշ eoXHk"7LN`Ek==a[VGgO`# T>9mci_/; T"/䓅ʞ,N&BkՆW2CYS:K-6PZ!47NIEѨ/: Rzfm<:|>wj6.:qTIOW:WN&& xo}[\y1CIeT/g9k tN.јׅ^&訊H[/o84@Q hj3;8`lHa}EŸ,fٿ /&UOȾ:|N3߻g0k+56Lc\W dk DW|'IQ런6+蔙Y)si Qb AY{M맬`O/-\1_\ͼ[ZS?YmeèӠ>ω&^tx@sJ NC2 0$2 ٤HƷ f3FݣZLUqt`j&߃O7N~YA8@U0 29aJ~Q Pz{D$DlM~6!Pۚ݀b:GRN`3}ZؘBIuUiOBRxn*1T~W6n6F;JgZCDȑwJnyUyrqgkz`CaQ@ϑ,uuMG*pc֮r9`дB*x%^{&*pgmƄW.mx[o Z^67~D݇0̣7ۢ/d. oW;!}aAQ [lji9E8yG2Ȗ>nfoaT+BrRgq 2?γymxƸx7Z Sa\# ~|&{u.f mzx{6^hjK'L\Uȴ_M V(W|&\+Ni~u1#* FzԖkM!4Uiͬ[<.7;x!\N4eb›n~MBb3Dmo/TOZu. U94|=5żmGj>%&fzVRɝN}7Q'̲6r=m7k[U-g_v5M@G Iً8w2M=tКvJd NRqbS >)_9RrަM*4%pGO=fcM|VbpV;\צ Gчjb9 |EQA-*^v؋j^ W&]y@ШS&_).ͳZ62hc⏎ /PFSUPu f߾NQ+U 7yM'P3SI=E=%%8~$JDOw`иĶ05T@+X2W IkC?f).Le)\7MBvi.?5Z8Fk"F`>)&ڎiV+Ġ*#W#eGQ`yƀ&&% ͡mg:uUd4JEY! ( RJ B( y I9HU!v_8<J8okk )utF^kD6Y<ΛҼۦߡ 㡦vi]Aie={FnP|:sT,PȦ6S6|+(^g & VP I"5ͿWxqjoi Ә*߲Hpy-FJVeɹ/ffrDyź3fܩ{3/00~D!b(?|..~rϑƭ'ያ*ǼTP3Z2yE`th kL︱6\=z'Jf豌Gz)D /S4PRKH^fF8ѿ+w;絹䱲tjYvL),;H "ڊ<sӨn i[ZuAlt%@LfGLU%Z1qx^/Qzqx-q[T;DA"R#PդQÔ?#g10(BuoPy4W]:ޣS`;ʦEdwA͌Ւ nxo'#  ˍbVw^$f^&\'ho7d :@uiHSN6` #Y*VL&\Puɼ9Ȅqg}P.4/1:~{_}c )=wUdC+5?$ d`qŽo8IuphY},늆nI4!ȁ}9^Ĵ/1Bu 5TSD|=Gg9cf c,:>D5S8DUPx d D[0LCl _rL5J?WyUw[򺘈l f~aoZl}盛MMw ʤH^,ʥHOJ${8"r׌ @O%_w [lRp"1~Yۍi5]9?G5 cʶDC9$I$YAҡl>yS܌)8&E.(͍fd}GUxܛthO*Cꖌ#G_/s.i 2cu;qFu|?W[JTA\L MJO?T?_l#JvUuӪ@,`dWNg Q7m^|{jQFEA p=aR<&e| 06~68; *`!}ؖc~KP}7BSEN䓺Z|da-n:j6=g0g11ʫ>!Rܫ, ĪSLĬ][s ꯻BE,DF T9*z0+k); *ݙ!1;O>}V)L㐝Zp!X@j%248JZzB6hR F!tEd2)1~TԤUP/W5u]^):+ /p ^(HF&iVXڀ%~% wᨌuV-ظS(mYO:Q8~waFhZRR3absWKv>@u30[ݡѨ/V2nnt_qB)lvRy璱=rO7SvNV4e>˫4rH$#ZŘ$7%>.T$ |o8 ߔ*YOJ\:;{/O^FA E Mu#{OpPП~RP5ܧgIz2&0^W2{'4sxN`JfW`M~pSͺ&/u\ݓ b{lNoMT7hA;~· DѨGf R~A|Z&ys–aFrMK^sӸ2!rY{Z&irҳMK֭K('$ϗ;!4tY@5LhZsdbT9b?noAGb9>й2~}j&XU 5y >uNG%Ϥ悲xoƢV,EnrUpdDjT>ǚvtYd~ ?UtBt$_Xtߑ dg*&B> 2wt'Od22Y 3,::G:CUp|9\sVQEx%c t-pГl`o*7wa Ti=e?e们1O7I+` icʵ@"`uX^ǘ)ԣ1 >ûv0^> t2=cg9#"d{cvm#*$]ɏxvrxy`傡#C)rmՋO<|N8`v7$|e&umO$ Q)4ǯ ~EzOQ Sݦ3vie箜K㞹VYT٣cLqL:yQXgC0Ns}QC=g$35,\[;m3_^-W\.R`hX*08#h:X*nU h 9(x=?s)m*w!::ȍ$/[bM )u75V` Lߝd8jn5Bas|t3 >38`oMӬ~w} 'x]-aEbߒj!wzXḻ1*q]W` ~P=oj)xg8[~wю6^ ? bu| 6[jL27SwOV ''c!/vwz*)sIگ)A35RІ՚j2P; 0zn_p W ?@n^2\NVgQ//l^i,^(!vM 'g nk qQ(v4c*c*nG(-!;J ?5dpdkbPEcw}eË-~$;U:.ܵjk5!h'M$~ni&e?*fVxCO\*;[pyFo|sΟՖODOP-D05-.]qgmYsxf ԁN~Z ʞA) N+ۋRr`&ʵO;#SkK]yآ˩s!G /N?XįiU[5F-3@$|?8wDgACkq,<7mA#"TNjiB `% LLג= ^t،D3r7@w:}366RG^jQ&jf_RRtz"H&"\(#\CXڢĐr{vbB7SUhA ^Pۭ_CS)xG[ޡʃ֘pB[i+eemkSO-,QFBڑ%"oICS2%5ފ*;)Ax2jYΠr2>i$^*m2#pq'Xͺ~E7ch%zu(McsTV{Q._e1< ?2fRo7&Ԃfc'&5hǸYPٲ``7Ndl,Wb[+ś}R34Q LאBrER fj`*B$U6b)pDn qw fF5$OK8ѐ,4e @&F}K0'03ɏIEUg!5:vwngu`~ qi{< 'F ON"eGpp17O\;t7n|x\;CpZ2i-f}U!_N~H@ht}sJJ=C7L?xQE4]={!2ڋW7wGv9 c\W>bQb#rmjNj^)){ ZKcpbwYe0pI{9fN)9ur˯`Z>. kڱewHs]º=] sPKy7,a֩8 >6rɾTH2GYw1id E`,I p0vۮA+>Xs_N}1T\S0'[(ohGv bÁHA|5*Blf4@2PU ,pl4C'_-s<@z[F3>a3L,UΈ%3e]]C&$EV4hq2u9n z /C"MP7ֿ*/D6u O)CN9ɼ!LC7K4*Ke+KrϐVdՎ H4UC<A`9cKѠw:# GdE"W8ut$gwRXBϰehyd]/AwNrPJ&:Zɿ~[@xd]_'x-IR@%(wCVwP$k%!^6[bg"vWy . M⌔L(yoÎ+E:u!tn%ǙUSp+"_50k:a`e.ˢz4A'7|z6hw[ /H,uKg Wu~t:m:pM@0#'DPOy擺%P2S*ƾ $g=ڻoRcT@G53Aݐ?/I)RA:rf.Ӻ+8z j]AH]IX}gZYΊbUa4\#T>x(ngX@luɉԫ] $ݣ&meV-Ŭ0sL_pB`svn+57M=U+^c1o,Ea$F SS2/)԰1*/M4^7as@Cd/ba▯Z[&Pأ\ekl1=rԋ8ᶩ?/ׄi޴tjS潱*n\wAdnhn&FuRZH`VB5oR;{&vӇĹ|lw4ЂTJ$,v/9gwwf_7L.=Ө_T AT\킾b(ͻP# q8ØEK`YBO?3 ceRݿ`ÙbO#M:7=hZ7lRi<ɴGAQ3p.^m92 5eU5aݍ̫h&늛?gnD(I+HkyJ5pk ? ZUSkeʡwZe)*bQ_gOZ-u-1GcSCp t[Sh&(2K{6MYoRðיo4vJuӯ tR@aCʉ)kM׫֠[>z. FTlGسf^M{~qhŇ9E)HZX c@Qr'0y͞E!5qEDVoa0<|xɏ]!oMDl<-yY0S;-F\U &4˜瞊I1SCB\ 9aq;Y5瘰.a)s$u7G˖_-2|N{v,;WE \Ύ6jL|6(W2Vē`+R*AO~vgDF]/C qծB5ey~0&xFo8ˌq2Ҕ6571Xv 6F5ֵ=.uqTBx:idS ׊e#6 k,7Upڡ83kr_BOH&S %L}=a z"fn OQ̶FɰS;PjmXUATIV!K,kj&MS̚xC_-xÍ<\Z!V4^\d-ېc@U*1H '0۸K:+;o薕[MQZNtF!7a5N]#陝,>DP)qt./_"5o5,B "j\beߖAlbo*׊w;1?EoH@ uƒRJ1aD}_-%=M` |Ay1ZE tl&7 @NEwB3rВ_c]D'!"􊈳qȕ?I_58[R|_ nJkVbp\@l@=,Ѝ!] 4#api>ߴZ*TKV"ڐs16N3i/^*>٘EFi1+ V)ݿ'%Ȅ)kEo31\d͸tE-q ؽPt4xYILUB @۠E-*^04՘JxpOgPHz<^Ed(`4vf#dNGJ`.mHrTCH9?(iE~Dx]]Sw]x13[mTf_jZw!c Pl{<ןF6t/$(Qbi{1! d9:ĮI4rk^~W$i2weƎxXz v+ nD~AIyh7D `k>Vio; G56.cC݅?I4}x5 |_yim+A<Ŭ.ӚC+FI]yN٬'<`y9\ `#`3MtY7lPê`=fg݇E3 78vz1:J]f`T$$磋D˷ XX*xXL3Q㼭MGZW5Ch+?S@#/(-AAm|q)gD\(~iO E;䯑[8VaAn8L r^מ)|N}9,Z *zRβ:IK׬5xGH{t/ U괫Փ#=oh~gY8J.T?ΤIoh$4PDCqF!sHFZl|[N Ky?噗KX~?9 %qQ'{@ +T? X>3 HVu ×T1QƚbxMjsOĬQ8Vg׽"kG8uȏ|-'8ƿwrla,FҶ%}g{gi|6oxuמ5QW18 x@ދ/xF zo 5-U5eтN Q ?<t!S.ZZ?^Ɍj֯rkdtg< dR I5wis]GU1s"&Cv5?.R;* "Q%ocb$9kԜI}q ^*.0` uP 0yzbp8Qm6NhaK*ټm kFE5:r#LJΐo! v=ik@gņ;52 z*su='daDZ=P騏dfK˛&M?,Wt*2-2O9=`RZ6q^n6SDF2x/@Ez K2i%/l#˳3VΓꯥ8!!Ij,? l uNyZK5z]d#x(#ፂDE/2 sQ!RmKB 6UE sj %Bjl4&nW멪ǝ*tA/ǙuH&U{)ܼ'(F i܅Zx*S_ xT$aWqX)U83Zs9Ssu~H"#vSg4y/bj'*U6XSt>R"D?wvx(N뮓LxګnLCHcC3;p< bdu kvc`(3\\sqܞ.d[>WBn|Ik]^>BW !*P0xar.AN_hiB ʚSG~ OGI4v(C4jˋBX-UgDOEpJn1Et 4j ܖ~`{?~I*;j=sה!@V+?o ۽`'&*(x#@#: )+E=Xy ۶ '*'N̰}6M`M)"Iz:tjl΂iGB 1wOtk""L\4`i-ؗ9͎J4t>]ʲ(O}J[Z>#}*z[*BcFwU{KD=.GL"z4?|zˆo7$"x=`P;W<"0S^i(JGff>45 ͋=/W>zxa1}ܾ%a͝󠡥(]aH%B 8XXXC#p2 ;D?1 njjT7e"G3c]5Fċ%XzQ{עUHfK Anxx:YUCgq;Xd[5ɿ bn(uot!ૻ]#7EʳKzKD=5YcqrCzo`.7?В6hj5)ҒT_15XB+iI]~U p1A5,s#u歵1ӭAS<-RRN9rh?]3[C@bnZYw>yAf+U8h^4wڅyO(eyXDH时Z?y q "بs!┌Q zA"AISٝL-m4eD|YUa_i)^J龟Нhlȶ9'>F1z^G /$o5 {%d@E̳ L͐x-rn\TY["v^ HfW_=lz koƽ 4uG>d MqHXlY@xE΋7(s:F˕;9wCpe Ns`%cDl/SnPNd) f&vV&W"@gr!uz / ux2Ӫ1:̆(m aA,.xWѪe^.o&C$twc$ԆSH[ܗX*WtAT4U䍕` 0%8WUPh9DRr2,-@쥉R! 5V A8.&ֈ3'Pu0cu+0@wṲyh4)NРk1 'ؾ"xLH]z"U/ Șݯ{˙:9W1UM^ȗW%z6Q=E4ƛ=\H p>)g'b®TBV >7VyȷUs I*0bxbA=RۓR}$@s.t7cq%MT!p޹&Ғ1fsB` Gw*ވ7Cdu+[9_`9CS ^ݦ=jmaĮ$|{LQl6Q~bK T^^kdE)&֫1ԍGChNh:kV E=ZҜ@>J߉+D ?sߑEa F 078ey{tfPB=Y3"zS)|Sm}R!;i6=<|ڃqcc;;2oq::ԯΜ%QrIM]z@3S7V|oBk/lܒM-MҀ}ev!Mcub ,CWU BOR|CwcW12ESǐ c,RjM(3dWٻ띆xu>82qPudduX=/K'1vxr6xeWq{<4#Ѹ~4P3`{eT'*R@U_LHpIdHJVLUl5kj+*Q6lc+0V(B4jp~J b{=r$:|kN1Hj?}Eǰ"?U|fчd |엘3֡=#a KI$vkGi+FڍKv ?5ǩ,0Ư{!,.h2A@m̷$]4X.E hK hXa»-@dsaQ烺OXZCTM6 W,ɧj"C{=!?P߯8+݌Z$Kط=z ?rdå DF7J < 1}: vY1II&_`ɬ&\ݧȽjR*a=r.&gfOcH?%b --[uS L{6e q>nɶh1t;&"h~tW uoC/'7u, ;GДӜ+YKoΖrtD#HG:$O+4KݍX岩S3Jօ$"zpE_Li4p:^y &qo\v|ޔ$ m $ er )pؖ`B,X^$ )p-KdqJ՗)e.[׌6cK W}Ib*:Z-# V>jrPsN8YbI=06&`3/g;3ɜiIw]Ko+ S3J"%jdh)hoe~դoiUvTNKm213[SOA/ݑ"IJ%ȖLH'`ήJ8ytd{J3֜6-g}JNM# VW41i㪲Y$F\z==Dmܣq.҅~$fv!:sq2J( ƷcLOjriN/I˰U2f9'$/t䐬Jv 1 T H '?%Y;R5NwUF BhBeZ%~ZT{iFWI+H<2o@KpsLZ3Iߠ L%Mt$QVӔ!a㾃[̥j%!#? ]2R+% 1iOНF/C`%̸ [;l9qW V2WF -B*͔yFŻ=Xǹ1!NbB.O5)w2!y2QS Q/5hf7\=`"`Oo NYխVuhᵓ.#b)@ o%)RU/˧+*fBC.b9)=ญܶt RI?mc))cw?WH6(nĭϨ -榥"]Z7CxwG͌W}N_3 +`щ 㷤vl&aQr͞o*'&HW>/|wOQ5x#\:M)O[n=ec>rM[w޵Tiw=ϟO%j:ѶNHĀNt :N׹gɔhot _0 u,Z 4[joq/jl 3&4v$MBjKs[@ &9:=ʞbhE[EM>Y2XZ|ġ㭉91RNam])CξM<_vhv@z;ascX8d}DD2u(#| bT'T)NP[n?<܋ &mV6㻞7eTgt+l'G6]qYqUg 2'@L_,GQ]Q}S gOe-`Ta/Qkn1Bag;"(띬s! n:\9G"Ey8lp"r{VqZ,6#F=QqPx8*Z LsHÐ53m啛GH^zUɶ9RJdv},7JsCrɞkq0˞i{w+VA8:հ"s lu!qZ{,F4zKmŋ8PQSI_e)֏60Z^Yz~2z9mHSXq-zBJ /{;>t߃e82Ce>-3nN˿X%JNf$HdT+X8PeΩ쌏$=FF*wP@nd8]$,Ofǒ^|y`4{hBkޯ! ,diZ D"忼+pte >)"}c+!a+"P,MU]B8,,Yʁ~F DҩzqQYRFD9賊5S噑s.J5b@X67!Ѳ"pQٝZhV1Sv(1&5qA$ "$=;dsh?t-(q "d^w@#pi98;|qA\!Fg`|, :]6[w~Hx\Th#5CI#u34/s"8=3dOxB#Œx.B?DQx9L=I4!@~ו q>n/^ : |yմUN-XɯΦ?XwP>y4}CȅLf.X_f D>emҕb2I-\-H,BC?J@)Ym0ӥvs$)HzI8mĶ[C+,l Yr--*%>ݾ!D ߭NuW<"K>d L<5Ԡ``>¹+6Xj˺{>f-@x0%bpSlY! ~'sN%q!s[:kitf0HL4RɜYԌTS?3T/@1" /=eAp RD5X7ڒZۛIQR(\Kc=±Aj*n#NcO|Z%DFN\0}<fs/_4Now6ʁ}t?b#Wu0Ti;3F.p/[p?dpLAQU $M>UH{v w~TlBdbD\ɤYZK{+!m~8;{ #)8-thۀ+oZ|Ѱ1#ksGl( %9 'e\n`;c95uO̍9-\Ac͠{θ%\˘h=N=MbFf.˶ȰRDWOP(аiTʽe锖j&fG[W lWXD B,xv㽿8'4.`y9Cȼ p "UMF2']+\TB> /' N g;ߩQbK()k`{nϏ\I'y zfgɹeúQ1gYdXU&bŐ.gx%-{5W{ݨIo|k˄9|YD "k pSӨ_XH5E7hT(ICJvOc[ؔ8E@x6Sl~^lLN9兲1A+n~V\گj (eAY=KBƛƖqLşgUfm͖n8J{a,b NoH+kU$@!a#B@klsҝx| cxY4Vfpx.+ ZoykqXfh=0J q_&a'C sb뽨A0w·&mNYn?llge[4k\Z~ "֙*).U[i棚P En$9NZ?[8m{o?nT "ڜ?#(,D?,o;٩d=˘hb{IZߑB n#vTd2;f ݐr9ܼ,N-7UJҤzxo^bm^(..9= =5buA(+SsP۰Yoid* ]sS["DŽJsKrE+bAt}KiKOKG[C|wH@ޭ/?Ky_/*,:YOT.G el 0][f=bkKjKQֆJQ  >G:clbOYr`EF껏ާƜr5zw ~! U!a&v~x=oꣶId-f~'Xkә5x8!bJ,P sFw)b\ y_ SAr^ƒ+4n9=-BB z҅{IX c=J!*uqg zR=>Mabޱ $eP.pH0},\"jf[ "6ruA %O0ALdz7kKm>P$F)P1yQ ȨV}FT-}ab%!M0IM*]Rݨ.I]0=U?rEHS9Bt^M\ dy=+JMG64 7 wLX2HivofOE~fJK2dIX>)J7s1]?\L0j͠S;GӔ/v34R7ǣ&=nAE#/O!(6EGTJ;2̵ I%~zt#\j׉PF< 0ۀ y苃w/ZNG¨4Fp6rsݵ xYN? \0]yqD^8юc'SMv<"Zř,IKe+9RkQJΈ,n5Ray:|ǧ/ Q' wu9ƼlO囌g̎ɇ?߉Lвg,C2?ZIemS x?..Y{깸cun9ʆ1&P餯='x%x^+zSDc$h]ů }M!5=Ctڨ/Jjݭ✉{@]/8g <[̥/㉌OׁA\csH C] czN6vy NE/(/DZDRj:ܟ] o\4i`q{|.w ;HV֋fTi5lR5cHcn L8'".mBu :oKPfJv^83r@^1,4s_v% 8Uj8UZ8 O׍]*(}KF]>z[t|$H0m AjUXhX\_-Zv{ANFMBhN{$f,Ƌ|Nd؟5Rܴ!iNq&S- /eAJ4:Q}G`mI{GΖ TM!-9 7LS>GGQ#5۰EHt06*$34fxR]٫,t sw/ZRO2u +7 *# 4Zdp:P^noS,nQW؋>0 ڏ/poٳCJv 7e_nzHY6' ~J^{N^הg.ej\ehIj9!U;\$m <`R]!ѧ㲖Od11~ف"|ṴzZʪ\7Ԅ?N4S3*CQ  cUz9+3?4d!l ebyдGLާb#5X;Ӡ>a-^M4>Цj7-3LꕟN%Gnrm:%e,XVG%57Pk9谦ZsL R@u =TѠ?PզXLqsQo* a<P7!\cS-*RY}K`CC !9^yL>xS0HH0lҦ(}W<9=ch4/P+Y_m`_~Db{/!,uD~獩Rb8F4wB(H> ?rħV}0C[E|q(VΫ9@~0A*E^@~SB'IOFү\vq&!~+uIQ4 TG9Oz!Et| e)nKMGk#s1 Z[ 48iRk5*.t=/ QP^!߻1t`jVsj"?l~;i$YSF]3%&G( MyPؐ~*$V<. O& ~^{63Y};3 o+ ο={ f׹5Ssؤ!#OhHbF5g" VdڻmԴ"&_ٺ {ݺރtlЋ6O=-,[EJjql]G%[9`qzk;}//ZB0e4zZv촃4H<#:e["3n6d>!C-yڔ}aۨM1OOL!epN=*=Ƌ0,l?/\U\{mץ#m }(1!uC~s{U*vIL4Rҳ@%%5SL4Xq?IhÊy]n55kF@Ypb}3gurD_.?tvsي $ >`ύ*|]DnD,2 %c=#Dw_g%#\рktr.Ee|9"i!8̡NG<: w;_dJ|L늭7Y')Nj~\sO5Kl`O24C[ ݡf~-]ȅ3 <纝p8GxnپF6DŽ Ә mY72vCR&Cч ZՑ>wHe_,]A l?.K'CjXp ;di $v >s^<D w(0 z#j4٨A?^RAl!G" Pj5tf`TH}`?W`BmpIV6E"m(}QňlblO /ҙBuX7{vӳD9^Pu`S}[ UZБKrC3fScgYz: 窻TC{s}cH¡g?la]~z&y{+N[jw SpU/je_v&W,P.HxyZvlR?oiW 00X^f oUZHICC}*Iy:ɨw~ivB`?{q+#Hx{2.m1ͱR ! Coh+¦BJ i2+O_EO 5DH41 dd떊*pkTyZ%'4.2ֈxF*ov=QӽTX]S)ۃ7]B\¢"V&l0<,\|"VU[ũe;q7K Lp`Uso6h/˳(R `S)FbJ?%R&UpO|zN0bg)I8Ys7r95ݙ}gwI஛x<ӈQu!):܀C#Ҍ+Nmj)LȤ?8=[?̧z) 9NcRLۜg/4z#2z1&?o,Hq{=7U8;}_5 v,Sg,TZWT-x Mڒ҂\H̱n{4"Ë ŞI/V}x)):c m1 Z?19UCĻ\3 P"p. e]UpCdWl=10E j-5d%o[A\=\泥jesn]]}du|S+SM+ٓ 5aYȷ~ ^$9F@\E@%w[uC5nN`6]A ϔ0$S~3i&zo͓oןtӐj2?A8ooS'NByp+zl49Ϫ]H0 gҪ/ >9L*mAX3vg=Je=ky#vPhk.ydJDg'O BCTbߨ-@N)S2jIoq3b2v̧5oHTm-wޯٝ!iEe K(qz:c]^(="|D~0"L!ØO{aD~k2b4 {!s:*C~* M/oϭ1t"g>XZ}Ǩ搜upv:-.m=-̦d20-`_mJO]l蒨 6`.ODvt#B`Ǿo,L<+V *)ũB_sډq௭|_n@Vs_ջ}M[x^|dN7Z {` ;U]9E8D7?ߵabPO쀩SU|Iwv'^elEL ]}Xi˘I9 v;Sv< h O,~?F?D;|]͕;M10 uNދ y|<$p/@b 9Ţ:+OJ,q9 ($Q4V9>rN~g5;ޓx$CnǖPNB9C7 q_|Ab{qpd⁙wD9K]dBJ2x:S9)RNj"hn=28W#m=QRS[|RfwQH=Ǵ߳-3Ezb}|('dzx{L}[nѷ<ϱvZOBIHSVhqq#X/0"m aK(1E(%?H_ooNکIKmLCA+I&DoUEMI{lmcz"Abt-rrK"篩Mq"o{r̰`JpCbN'IbeOQݽ/8ԄGBrH5`ui/y1gթX\Wf+|%7Rcc+4%4ELafa8<մ2lt1)M%T!tp#7įDNf_KDD|jWX$b}ßkEvȼ_?":,ϕaҷn3Gڙ X|Qy Xpm؝?q.SzـAk8#"( `K*_b]r[h-3!LZ\Q)XGJ . fJQdx(>o*.ʿ}/pb\D>M=b,/T_l,2 Dp[G&E5ЬmV"bOjѨT:GsӃ Ş%?PVY=hD?AVF_ (?u[9lb?zJ|]yEɛ̈́FTj4@̥D!ZHډ5Ĵ$@eKm?d#kq5]M*wg6$n'L?1ěYG}{B:Ejл0(bnF!_fM+hO:&Zf===Q,HH?JH5j +dTt3T5bߝͫlDj1Q )ñyѭ{Ľw Wm<"@K]ODTJĿdg%zNȶq {F!`ld{?yB$b]2%"ׯ'QE%66j{RcSMk-;̰9=POdU<ʞ+2}nT1!4#'[0O۹>;amk=kp/=anYtr]`{FJl\> XBT пDPF~?Ndu65D3gr9V9G<XFx;"3Ut"nP~3 .uʻ5Kh(f U&!WU'r'tzIJ ihiwEzFjnӗ!'Vq>. d6^"![4W m#9TɴRp;9.&\EW8DC\C&7yEⷫlkuYqLW"lI+Vx('FmӸ.aZ{}+cxJn fX[JieyUKҺ\8_PbA{ *jߜ)7,aa0:kC-JJcsҿi-᱇NmH\u#skhA8ݭ9f |c%[ Qsj1T0kMѾ)˪| /~Qm`=̎ 4e\^,(Fa{4ڟ^ll?L&wukUWWjY @F:X2y1+^m`F˂ػ?T,̊X !'}Mds#w%+_/nX@\_S)[ 'gds@ HEtMl}!oyϗXKN`@=|GV񧰍'Ld_9\zmt s%?rh,Zd_`(I /g*Ԋ|2.5fh![.LQ8ee-!(l"ĨM/٠ emOh{Lw ױ% ˿/h|mQ;A7B^2*nDᵡPX9Dpgj: EgRv&xaIl0ZV)8M|1*_nYw/]8g4̣]Lj+È9J`pd-t(h9嚤sH;޹K`;=u1mX{,A,9T^e&-MȮuIc|/yE.]tnL[O5-4U8M˔WP] WP; \kJ Bi6@7&3 ue{C0zcʌ?xoG"/s)>Üu b3 n7BhCl֎YqQLV{4'P-<,JP\FoiO"`}k>d,N+I6pp@o:/I~D5U`MZL0B @V\:3t}S۴0đ]— +#0+ʽ #cg~J{|lBQE *Ss v"͊ܰuf[}*9̈́35"s!KyWE8cbEU&mf\GP911N\OE|>gFآ肂k3Y0/㻽ۙpޓ١g>8}?Iاx?%=O.~Gr4`bkt5޾-g/,J #"C׶s?fD!>㟈U*m.p AfkL YWo=3ke`., +Q65 I@Cz-:Þ:"ZE8TF'>XЙ9Y tAxDK> !>IӺ u6,Bߓpš7 7'zbn֫0ivR*ủin.GeӰmRP'=ͶWM߬ 0QX2:u|^jB{ڶ2XOG1PLȲیxY"%j %B7BS=& @HPFf5 hx6CSzb2oK/0C&mѮ|d<ܘ{؎!;W$NB׃YD.f:gO|.kvSPVɖ6&En oN@`8vx~ rG=2?2,&P =V ,/YzD!n"(Ύډ00Zla,,\8|( `䋀ђ[:5SH8^~5}i@O~IA;> xȋ`amp\ C_P6["٠=2l/bkpI]?DĞl-ԦͶ2~2#:AV{զ7)uah7> }^ya][߂ܠqMuUv%yTR]SG'(3}~oYwrdK ypN_|7^NCڏ>< %5eJUh{1Cae`2pck͔PoOk).Jx[;GZ?YE0YL)XoTa`Tʠͭ0)W͓5cإιBV83>+͑>Ggpc]kyV}y0ڦ+(IS0. $Ѕ H)725BE|UzsRY4ΈAs@C麊R蝛j~?,)$'iQQ˧7ZVf Q1=a~Ps@2bhU`BkA?A84j}AfESżzfA\{=tߋdR2!sL #Lm^Jׅi-ׄкy<װ=αo+՞͝60AzUbxaEēnٖ?r0O-Fj`Bĕ#Ll3t]lRJjY6V D"k~oG沤JTOqvkaE,Bvق4! eɍpMĵ$n>igsgyNt\3+ˇtKh Q e^icϡ^av>ՎIh+L+xb5}Mv)ϥ8#Ӧ ,Ж]WBq1Ty2 ].#-~%UC wQyN*qx>轠^3<'>d^yaG$*2 #Y>:sّjZ5>/ޞd2=x9([\o eErytSo=*c0E4S#ێ4"\e}Qs"k`}4z$Wqe;uVܥ;rMYٲԂ ̖],HK)6>ЈDu-!:^NU R o%; 2y,vY$?S0w/0sX, Y7i)5bcȐ&HB7f"Hs5xɻH چkDR.X/.JB̲fͩ(T]K::mIi+A]TG4&7hUIiĂZ#P"\isu^3z{޽;!g5CӾR}څ.d 4Į["?{2h69 ('{3/,k` 9J&mpHVF][ FXӛMsu3:z.3_&L C3܍.7~<* o8 yK^gN"@C|[T%܄}~)F"{~>~zo [ienVцu;6/vH>DCqEBe&]?BdIQ~,!)3*F.Y,IM~uaV]tb-;; TKW}κRM,q*aCɶ]i d+%_|=a4\ IYjP) i5U.k=We>,b(s&b<35yKb|`g&-LLIoiQv2%%1M>OhP Kh6knhFcF[,Q%|b&<p fkd0x@Ҍ&Q8꩑1P]g^`_jE2LQJ0pv[f'j8EJ*m}eLFB6\CSGVxLH0&0ͪ,N0ݝ|U>'XU&N`"MF6)뽻UYc0a ^qd )hckX䗵=-Th1?ɓ;,QTIy޴Xݳ."ԂOȜxGHTbZrF?PPأ~LJPQQF s!؎jC̃:J!g\#AGǷ谨Aq*0}ZK´C2ce" }S6{юxSD0h*ΰTeA cK'ٟF{5po:!b.0mJ"!I5:٦}6*#G25θϖpWC׈_[*VEkm*}X2_=y՝吃TyNpzd[ϐw͊' \J:siu11Ӽ!|eTKe+gz !wFo4>~UTXH'_7$ 5aMO}8uhd'c)cِ"ܠr}ĊuN wI>qR&7|~;$um@K49C%ʇ EH.㲇|-$:6 UC%b$S9Fyރ0ф䠝|YP0F ]<NgLwIPNӫp qL}s[Cg/3(q5xijbsx,oOn@*V5#M. .)wbMrҦm[DGWUz7x'0 ;#u_c,50IRl;'7O$%P-PqտwAcE T3O4xSeZ=N'gԃEBs+7q3ޟƃrՍQ*7ϻ.#Cpw)QED U.|GnܧBx,xWlOx\-ZzZO7d6ף;8>A]M1MмpU&S@:1xh'!z9lbK9h5}t= Iy2@{n> }B"?Ag l`OC2#rkg[.˄m82ݽ`(Ta7Fo+ch (S2*q =[땤ͲoClsuC 1f^~o˞T,|sXSѓ]sq ?KV6E6%'.'Bo.("?,WҌL2|;*yX.̲D~`75o+@ҫlk;AdS)H#j&ݕj~U>{_%r|8+izC=z[Dzy>j|G<̼v=AĬηR }"f@¢w`jT![HIO 3"yǡփ`RGRC,*7C( ޥUN YrQ~Yu: cJe!"%#i#'vSY gh#(T u1&Ѓh|Xh ןaj,Ag ' O;<f$Ab>r8yԟ6ՏTsHKd.}^̛̑r5Ek։CözK[J{ P?бz씡㬟NŜCRݮQ\`c v y8e+f&ёO8 -V4a"!Hlp8:j` WayD3D}IsgX~.x;RaQr# {ٷ>m!ҿ)IlI%GQD+ߞYm ,7ET `'o3)lG l&„q~Ke;h#骵Mմہz̊ܣg95V2]ֿAmZwZR*1bR[olY'8E5z-BzqQ |їr#j \WAaϣHZK(^zubEM+_u,&DqmOۅkY*`ߤXRfBK?{/L+?ǚ7ٍnLu|}G|r<:N1g|Uz)1./FmIYC)ߖiۙkUiKC6gKW3d"?7t=9,O._i.YDtHY<Jx&~^kRT4 ?"03]/)gҼ <PEgx oH)1GN9Y0bDo((` %)9?:+o)>8;$_%iC/o }EG؅- xF;69 O\KhW8m^g~&t$kr')j =l["!n>,2~A?6uc9$:AaR+"AK~/^;^_TbFŴMHLK؃k&b\noaRQ~_l S<-/RO#{T{sAv@ @~,B@`_S8 z6J`8M8w2s-τGVww3~߰۸ff{#C_E4.QJf0| AZ$V+w"=M_ɏQ"\hUh: h၄SRjΆ&*wfB.4fNĘ_D 7 !UкkLp{:\O L}C+ۇ:,Fp7ʀAG{SJd ܵc7ygݶX^ X5=jq`Y^& 3|jgUp6?cDtqj/G<.F0{3`1KTh5x.d)ƞ%:gOX'q{z_|B>*z+KXuf5{ ^^9AI,d.Oz+@Qlo~ d['Z8\~$y.6p:=NeS ; %TAzRɓRyppW.~lY~uڣ,}c ȩ|VP) 뤿 Y`%*p0RI5S CCgkkSN^Es:걙[ȘLgmhZƕm#v + Ie++| A($bKe`ʾ_ӔC_1A#% "M܌yPEFv t~.ÁSZYTsHAߩ1ߡ\_oRgNyy/ ԄV+_+X§A(85VOjnYz*` } 236(>ss2<&;AcAǿkh8>K͞,esX}Bܫ9btv7AԜS/FU]NǸ&XenBrٿCOU$.2_$Q9]2}caawAthE_"ARqt!pIv_ZFW"9;veMAaATPtiF,;%! b&9fXI2bT`2>udV.&Aynpeu `5h FMJ)Ӂ\bH 'r&4 (nN3_^ L~j6֔{ՀB v`%p6y".^zɼ#G'@#=87`+ʖdlTt-ktG{lф<;iL\t4W0]=Y8Ӄ9I;{&HC`&{Ƙ_ICKRRQ7T}%2ȫ)A{NW d|vRm._wh~f::J9lW;;b,P5Ɏ"{F&y|PDv_p:$㹷E#?SKp"t'@.F̴ya$,3A65rQVW$Ar>t J<ɂe}=yP =㯕gZ.$3 <@ #@b#a>`q5$qek(4ǒ[kU`1q糸%qΧ_/ Bᾫz0-<y*/4O#f@)e[tku?Bk?BmaH-f`̇ K]>_>1;ZRfEg!'2˾jRh;bc.3l{ H(!K?r t4I? TbKnrN;_h HUB\iK#k> OHpN$M\>⮌O/Y ڇ?oGZZ[tNc '!橻Φ2 Փj>Id&\·4 ;"Gۛ{d%#)U2:ny {)+d3[UbzbQV< 54zQÿ\w7 V%p nd$Z!8Զf}p0!1ϚzwȈf/ThUb["OԂ|+Mo0WZix^UĎL]xשBDj &"ȉmrbd$a ["sYo<@~O$ZEž>+ֱG '=KOZv-\D*x](<ʫ1=kG_4}Js{Ҕ\z~WŊ(h oG5N/J0I! R=*pHEu `tMh)B͟|%\BhwtQ?&!ݤ }¯<3A7 (wS*җBCxŸj?ҙ)Sоz.n{ΌzcUR4]Fl`p0O o:(L?%=< &)awi.x*޿E6l1A-$4_y"lW.ϻ^bh*VMX>W\5|YJ[ R X;ց aH˨_ǴDfv]"17Z%|T$VuhYg?dgzl;qId~e q-O,1؟zB ״XXXOe_^~d1lP*DBz20;ŧ녂EMa2X3#nfЋaπ*M;eZ>҂&p뫮ہّ⹿IyRrtb[{'H=.`8nvѫ_ބٖA|HS(QLWUAڇ'-I\ 4il@a%倎.1 FrսS!q+z3PK=Metoΰ8ɦHCK17gKucmWի0iԏ!AO'4:ˢWr 4-x)^G|xݭY(uX0~|LV p-*z2I{Fdthf\vܙ?޻n&#& CY0l(6Y7ovhzq +L"N}uoCp(7j% JoZG;LF Z<,}=a48\Dhz* Dj׌kڏFȼja8xR@,/hZ;]4X^cf:_ԫ!)bakm>= ~[3Hmr`b9\)J$gd-*"Nu42];aXv&4i@SG>ٓ>_"dR0P):)DO3bPMdOo5szJf|f][`y ˛)i YVW.4 Y6ڎU^TVJ˦;<4Q5g8dT ^J*kQw!0_!#nD|dzŠ!b]lyI>1vIFV娌t-RoG.!S/'2x-6S:"Aט p2Pj>ޢ>h@Ie悢ka/S[q!\k_!u2uAU0) KspҐq U*=wˊJ4<@G]:Rr%Mda7W5^-%ª(E \."72Yd, -d|S9 Ѷ^fpe X4zO2 \Юƨ罌OQ։B8 0ZIE]yjƣ,V1qh\9`0ٟlȔMMR5FEwX;qO,k7~^񾷒XWB`~z`` #)N~D yKE!"eUDZ}׿_:GM)$Z;Q$D oUmG}JhoIk 7h했mZKٝ"&!=Q*ʪ=t$Fz:X ?8Drx I`v2:K4v*˝J~Rky׷PÐrΪ,Pҗ#>0*gBem\o!y&c(RiSH 3tB^9/H<Ms'w̝>FOOΦ؛ cE/tɑBqMp2#v5(>7= Ar%MoV°@KZ{UƅmPXq)RaM.ɩe~H1!SN@궗  ]2PiN*#1FH6b,7e*_oR9|rЅys|:N ᷭiX v=S3!ūϷ;@p~zЏXHfe0Bih 2Dф*wȭ糿; h7xn!/kz%ˀ] rى A"ˑQ蓢/BV.wN%Dr^W7SMQ2zYY:M}hjvww|yaoz˝.YIѳg$g_wB؀  0Z$gSp1̪{Y}F> 3\Y/<L=Spr2z.#|tc{'qc~[!:HiO٦o4Av6kTm Y ly-lB`/v}%11$(l1TmAn/k{ u`<`;ʛ- ][]rBC YpPnՑRzDkqm ,c5-bRw f(f]fV`Rq(dd*.,?_|D$ ϳ`sG48#وkYF%᭿d 19'zǓeeBA,ki X@'hy n'O21YL`9Nحě@P88E~kt͇)Lu<^G?MވqG"-QXapXL_>_Np횸X~r9o`Y64`TaO3X /gL ˝,08 ?RdT*s >t"8 xSk_bcS`{TUn!^؁J'SOxx̊3|VuZ*/FG6tn'F#)mQ]>C |_+ @k"-Q}ā"3hFio~} nބ29 qaEvC9rfӚ~OR[egYa, &DT덷 ,.kZPN!g3:P'ѨР!) 3x,jetjYB °Ie0Ƴ ^1Y9e3U`̓(";Ǐ|f8T'"c}ZC0BFHKם=C77 Evy1VX\fF$(cW%'1~|$Wk? ]UtTHvKZQvmgTzaUaɄ(lhP]꼭m4EƾW~4s0NJfwo}Y2O\ +ۨjjx8"F<:3 N0ޙ_U鞔.R&"*yYG|u&a 3CC'=SC?$&/dѬ eRn4:x׍ 7+q3ASxF7\S'_!nf#i@.}]"2gN*QZ4aSX*ZP9>h} e{&8Sp 3\Oˤ^ H1#9W̡x_w/WwKT]2:9*v,C:o)vrӍMz[CW h2(2,+FpY(u/͗%(;29 !]̷ޱ*V;@29f6O~p4ɠ8\sK7[DXDžpJKKa`첣xR-܂BbUde^~mcxAz\uu˻r5r\ )EOV(KlTI8g"ΞLwDAGEή%Ѹnk^Vjv{x&e,5ĉ;7p 0VV…Y g{b2<聅 /VW3~{́gZq8d ;֜m0sG)˩χ-ɳht(lC} G߯Dn'N2PY/KUn4?@cD-_)Xi;QxsoX"}C2OqT՜=ՑkY~ݶ/7ip$J1IpM%zjxIhw~Ekwpua"!7yWvW++l[jW22$.H7OLcٝg\: L y4A?) tsyκ4 r)^+ 6 E:M#3Zf\[ZM:&*XR tQY,i8kاc>ʫ˿6A9scuj+H6Ʉ_tmK 5KqRSGgR@j)ұePJyja-[s_[}r7t,^N'G Bi{\{kly!Yݖ9˽$zU70\pI`^vB3)JeAR↝xYd-o)r"P3+)1[e}zRēZc+ne|4A ߭a퉗|.=eC$jn-pe.K1H3&rd*4Vk(]<.EFHKՈHN@!82 >1}h@/3R.lqNջ!,PFR]hdcЪ(<9H\7!"QЌV%\RnnUC\}@ڜ6aDw;ı)j E^aXDܾ=FPcJ&& }m -NߗlYq9d=+d(>aDMWCs"NF?4eT`ů$y.FKvüc4\EX،6bM8ހG Nf_ŧh>4wIJtQ{|έ(t'!h4F3NA:$zȶ<&}-^ˣH;=#4AN`VVj f!M? U ['ZU]F4c4,3Wf:H3+ _O2_3=!sbQeq> ΟOIR؝LӳiA2PV*䠥۠1aOK`ĻP.BGxf`9Rz~#eCTdBߏ(1 ]fL *(`6dM2֓VY+t$ɽGvgMi%O-ob@PR ̒M am|})9ۇn~yQX:\ZB蜕QN+ [Bd=( dz$yu.?`)^uCL+`UM6|:7T3Lvq4' c !~A %_ zt&{ 0[NN򦦲c?( ^ŢUᔧ'o]pV]XqӒϝC -<6̳K5lGA쭡Wqɵ7= $.ys^>SCo=W,xV6yWwB|R״ЛRHޏLWvZ͟p#7+ V DoȪ'%H_p[քyx)E(&]} )ldQʥǵuvgnL'n9Hn Gw޹}uT, GlM+S]8^ )l &Q.+\iZ+`}lhjg(ŲTODg $&F8J4DߨdKD#(lfЭ 1O: M\@8W9pqxTՕɜ,OZ4^߁]`uAdxׇMz8UO.xxJu@$LE0T`v^*c6䫽34@9X2q{fN[T+Ѣl|A)0xLt y8ad ^key+P&l.kXHH൏fVXN+CBX596(d4N&ΎiۘdlC[mPO$f836jF HG$k葕!)/sc!QT[O,Ib\CY+mNTx =9uP)BU٥[/I=X#383q-aOJ+b\PTEs U4yK-陋Ӑw極)tV1@FuO&1 ^3Y>XQ!Winv{šP>z"G Hke@C#>S⸿⳷P5&"]ng9%P %ґLNo5FyyԠ<]9 cSh(U2#^IpnM``E`(.ji ,4hԁ*<+C|̿ =_;1PO 㾺9,؎G7U ! }xeq+*5@?*uwi1muԒ>\7`r_t>\dYqĖ .X7sFvxk/YM7\Գ!@ZhY,W) g$5?A9PTL4Nx@L~2f* 'xކ1bk_[c1D/;|f0">:XURn9;jklfЋlg#[AKQwY@I}@)7^M.쑨>j\hMРvx#v|fSH.Qf 8Dh2IiF+κD٨7W?($8M't3F<ϛhͨxHe==Q#-3L{DKa˧ww!lq32\ QEW̚'꧑gO1l}xu)v8ư̜7.4zJo8 m5 I*>LaVb(O1YWEHPBJm./O|\ X \h1J[t+2C0^ȮƓseXrPhX[QF*R؜mx*.SGkA|߁V UxTY)f8hrd򵑤FMY| (ip jʦh|TR=rZapK"L보 ^/$rϟ-Ak,7?V VR J ׈:^"\@I[E/I^GL'k-W &fc֪$D#0nvBTHzpF6!ibN&46g3,)E%p#t1!/NgsI?$$- CASw#ɣ%[Ba$3gߙhuN44V2ҳ&0(2!2Q*;Os;VJ$zE ^^qjEA2mI2(_؀2=S&^j~Cy7I,֒@oL+jL{q<# mkQAƶRjNq7z.A~,l}+# O/-zӷ@^ޑlIb46>*X'9]' ~(|:S(u bWT{YCs D~ǸxXhO`  Ǜ)SѦN⍆|W rA5%RYTCRNJT~!F$9B@9+ igjqq3L\uertT;yD.8\>p5C>*r"awDo&Te cD!{B/R6HV\}ЇU=4/">y9"D&ՇZq.1z̻T۴Nh6'4ҰoO fqN~Rq), \:d vf+3I6 ;-@2zȂ4֧xk }([tU`+] RoF'OPU#qX_w:b$Adul\W. U{b 0ÎVV$3KLvQ;4yKIQP˹ɂ 3ep _l@DJہ-wcNr~Ɯ/sUyqh%Ħq .8)i.-J`ˢ|V`fgon>|T?XyȔ^yx̙hlrf$<8N29@3|FubBRtU0u@³Y^eKBd^Pb? oњd7`}'>ȃv,^WD㋆e24unض,AMtBn%x>"p=ΗJF<:Tح^@ZvyrW[d)`ηDv/Uf茙m-J|XP8/m) #d#JWMS⿿ս]%2p6VQbfFy+ʕt)& N{"p8N Ea8pR=_#AB"Gsa8CxHtWVo#hΐV7P#o5vs;nTqXޕSv76b)BGUFNdpm!mj.Psu)NŤ3lH,k16G$y*JoP'r7ЬP_"wzB/ &%Zd2}G?#M7Yӂ2/I QYPLNZ ,gYl&b6WJPn B(ߩI|#|犏9ϿK1eHڃ_R$q0c(`Lx b_H`yFC˾}c3+~Js(„E99E&-e3 S8$l,bMѹ3xMhl; }IHn>/3?݂e0"CcI+M>=fzj,>Ļ=`;M97oa:QlrDZ̭H5}_W'A:U¦.HOµпT%_(ha no&s3tGuD6 6O0 Ò #n%_FGe?Ԅ` qreFG054:Ҫ,tg*\KG,&c\^ʷI)rL3c)Jk@Ib)[{״vJ̙e'}1i=>HVaWj؎&>Q`Ӆi 6Wq O9]Xj.wꘕ|+8pdy /5@d_d>Ë5tA dcBB ٝTl^W(,Sk@ݘ:v&'Vi{64`a([eKf¼Im~"DW*pED= /!8 dɣ4{#F/ =6#FpAxCrޮAp^6טB2'7jyyvamNqK,1~A*A"ޢxQ-c2ZMՖ.D̖g6B^EKQB@_L:cƨIuZf~Sx-5Kmhn1b)kk+xW'<`aw>Vg3/omQw|eR;_E p. qCri)Uj\06严Y\Ao!npSDDV*̬07V,09֚H#( rcrNR*+< ~ ȲaA}`ɞir#G\횒leMNFcĐ(Pdʲ7Ǩx)~9N5R=;c9tc~wCފ"0N X}b}O'ɘa'r8y4GGAGאB7nw+C;%T\ 2EAq<=(\RRD<f#8!uP )ѽvwge _7iTfXy>71zN9cHpft֠4Cli!+Kj ܞ|+>8n e鴦QNa6^붙l*1X: O`@7d!{}!GWE Ǒ0C~xW~ GX@`ƕKS!tV&N;B7 VAQ#Pʹ> dk&Njus(|4WPПOr) ְ~q_u)H]Nx늦Me8 e JZgg"Ž#ڸybx3Ӿp=fy(U8yQxNԻcwa+f匼VK3rFDUKp}\쑝_*?\Ψ>Hg'U5 s1)U2y.PD4<<)8 eа8=:RtX!V%1s LdkN'^/w $K08*J7s;,b{c]Q%Tr%BfGu8|P= 0οoQέ11K sqD{X Ͼ!^ YJ#XaTtkS!*C.17(@J;ӣfzsF Fm3]뛘87tmX24Y؛e=r+I)*$M~zԀfl}ޠǕ|XKC ^D@8z'[PBKK0$q@Hиpj }K(g7gVaX+NZ>w`WUM-`\$;P-CL%H^pFW}VĆQG\.jz )'F-’ؚK9&0b/qFܰ}FSEݥĿ7>3SH1f,ihߛa͎: 0Z u1 ŷ@wiE C'sD mr+gI;PY=aI5~J'a13>.C`7c\$ VcNZs5d, ?ٹf+xN.& H4`5UEMSAkݸlG;!1i!,͹WD+,S'a}2,t9L@+.}GyCQχ^|%7~H4aQ,K1aB D-2r9TDUl Jn*wu2v)SV ۸D֔_q ;s;j{}8d >(A|yVEpBUqy6?Qpk +tefL%h4p ge,L ~E2 .&E<[S9Ƞr9? k:(9 mkq&#i?pT9iir]k`A[!s_EaX#Jb%4#6Z vL^-q?2w##%1aw}Ю=m?@K`mԸsEg@1yCQV( C 4[W8f\rf\ 厑᩺ Id<.xPIQw MdpGʽK ĆVHİ %er*d[N'~*,11//ƥZX Ĺb#]^.ML^zAq(,mq-JD|9@K 4/'5$n-\e UZ+aW*YN?Ŷjr`ňw烮.<ʺ)Ћ9*6 @s@/v6b\]k,dLwiz b2ȥ(@ t::&1Yb!˿g :`SoXyǛs0h9\'[Xg9׳ݽMyhmkP?8圙l$! ^ ^ h_H:9B^zgv] WiMBnAߒrD_%HAt%غLy5άXEy cDKgf.L鮀4 ;Ccg>_3;g!y7be|/q\eN71noA-db nYGBuҽ } A_/4\af'o+r[Aa 2m܄Xv!yAژa=ά|SP3"B34iUta?NQi2}5z2 EztAr_Füc>Vu)9Uw$I!WjbX%u/cjpU7{tS5-䭓=y,IG*bl]lsl6$~d|UFK|$ks˧#v8HZ-G o @-[}hrQJbc̈^b0Y@9pϛxA!tx]>&cUiX$gK$fMB6#.dJoC(R"Xz G r 38-')KQ̚M#!sHxDm+?Q왒Ͼ>~n8`cpDiZz5>1NkC<0']LnoHNDH%1FK*K]`!+;Xw!\7qhA]$lJfDn`_%dW{4ܨDg/"M>  I^zh-qY|8;.-:m6Y!N(5 '4)KoAy8$sؓ'Z^6c"|ۿ4FFU_*R-Cvl@D kPu啕3Yhx:Gͣ.TtiWam3m&2P󴇁mNG8[b&z,˸.]CF=(h2e(ߛӎN4-c>X5'U$EYY(Φ`^:!E,4+pE40g-7kc_c^a ƒ(DUu6d^2G.1CeV&֣QJډP{8F{#m-FC1M>,cճSF0qv}V |.Z rY~`#KxٵFZp9s‚Tb=ZӞgAmv"- ǘ-p -x/y `Js/,w3ͦVo ˍ+|NɁշJxX_) xJcTH73h*HskHz7}OO᠑2 Lٞ07r1`@9[8ɧ#f˴w&D s9&Tљ6GokboĮ2yP_I)'V!C ɘQ1 3A1fAO@l@*U(4r^5 "`.$j\7z<1DA|An5  dv6`-Ͳ蹺<E`5:ۆiAmLa_uv(͛nkn Z~r) b(2`7!, kWڲ4$CB^l,jLmyd?v`jCl,==a+{Q ixVhZP1<0d!,o?7F|xYѷYt4duijm=,AG =u:\JeAظz7ﴹpoFtktQ^ZA$95# WɨRM^R.֗ȧM GKţBBPJ^+c7Tcٹ< ۤi]P3VQ {X zʯD6J^˘6@IC1I6\)O?j.vr3KMH^De.9|Red8.vjT΅$mN "Bf9(V``)[]܃L>uA}n;H.-Rm,PWD?3̊u_`.|wMPpF ?A3 ũr:;DO|0)[`~ 'bmRXm/X KG"Hu@"Ӳ>0ǿW涐` MA :&X7[ %%Ԫ>l3yo|3x`|2 e8lpΎ2OG$,ÇZ[o>"dI t?f+I)]l݇VUY#wZ#;3;:z5טst}1,C;]4[OGjetBM dJMjC9޸Xe;|Ts3dIhFT|di#k`ҭ[覿Cr8˥LtMg eHǹVbjHT݅S>۬]7x >&,~s/ K[{UgD(% ֺ#805Vs>W%I >9Y16iʒ-<؆*^yDQ!ݬ7Q0~{,/!ɱR0QjtS͍<ңZaKN RE sn0c:,||a`ivCgIpޱ-(/@k!Ħdz2<7݋l;*R5pwR9mb+fh"k{Ԅ`Wˈ%ʗyYbTc\6x- lĭ̃Ms|Dz/du+ ь+Z+we|D֮]f y$9-cLZHbqCm׶dY Y#S^'ۯ%kԓk})'TC$d'Dz;Z^#lTIH޳{6ipH>؛iFfo jq'(zA~-vsC h!ZmsT.zѩLc!)M~=!cTspzDhmZ#l=GxS(@ NSd"X%X%~-|dGUʖDuA˸Ձ>ⷿ$nLS=rDwq`5+n[VXne8۱V(2"CD@>pقzT?opYd@܆hJK@-19:,݈4E>j6Ž2V[F|UZNډnTw:Z7mɌJgAtkLhca4iw'zo|%?ێ?W2^i6Of s_ķk}ߌdpC̦q C8b:1XvGUyI.P4'j,۽RTJTf/ieONM)#R"ak,ZP xv+2UNPqP/TfΜv uBJ.2 -IǒMdibsib՞f@ 3˱ljx)∶Eu؉oP`*'!v!y<)㟴>^*#%EhQ:{'S{ ΁d2š$S>B2. 2/%#j;x@zEbu67J2XC#VB>bS̓T|mK&dC܎PY-wE5\tξNnPze >2MEe%r&3BkJ/=ߨz!)*u,VIB^9aXL&|҃9caMӘvڔ%XF}Z7EDQ,|ұ_~&-KqR[j"-<ݲXm `c6x~{ lrA"+c-aZ:e;dgUͷ3qa|R90vlKG iMGXJv>D9"2nIB p&%:ft]/RYR2fzOEךMe/Iͬ͌l/ے E>t^1田#6fvӌ<'/I5%+A7o$Ɵ)J:/JJ_Hθ-="X=1P#SWi:#z`rd^,r(_4)t^j܃&޺;.?Fta {@qG0Yp-#;+oox->۷$BLRǬ>h#t4S lڈ$YQgz69Æ1&qN7b=0Q󀡁_ :қY`EH \Q:qF##\̥RGTm7= ɟkA{)k4+^G۸LO_`On`ZGꓮYMuN{k+5`\{2DMf%N&t *hf(Ru߶hdlL;q M=PGʬL_ ?kQJI]U2U'y`^Bge哄`);krKs/3DFӰri>HsmU0˟SRtª4}! C*!3Q wa7M5e->#NHtB&;ˑ5+%@ob"omRII tXir]pAh8RmDoNp Lwbp5|kԠiaHa:y)QŸ)O> 9[!¢8E jETa;DgfSP]2m"My+}Jib"us P2?šD&\-(O릋7mF=8"*Bǎ j Tٌ!kL|:&\efn_]Xp˓z]EJvaP6 aYbSp-w\#fg뤁5}LB?&LV@#Kre(Za۪  Q~UV ǰ6i65whM 巣 |>(*ZNs̈)Yx>Kv H~܊paN@QC$8fHBPrk‰d`b4G!< 1]r;ph/LOܮdpLe_ch3"N\<'2@g%A˟ #d7:qY/lNq[tK8j\%}ֆmZ~=ؼ!1~man?Q*V0:%0ܽlm(&%`c|&Ce<;JI4uX پ4i%7rb-4,c,Rd4h-NX \ĎW{ۘ- Ky-ȨrJT1TxEiq䵴U}Avj5t@!d#6L79/)<Pڠ㈚OKN;84-@b;7E|j1pmAbL6CP~neyGZXf8JYۗ qF@>,эҚRY I})hy 2^j*D| !0kC*tb+,$NGت(3JΊϠ8q/ϦJ`*d'IUQ̎?BKxΏL672B2΋E!.b+Y?۽$>O^"8^K':2r *_d8"K贒k=U l[€ N'hGk;(;)ŋ$fzTٓb1SCPҋzG*LuK ˪ī;cS!jdd'f qB"|O 3(9 f!k׌pןx| p\8V̸ Du{dLyu-%w^ *ޡW:[RѤmD۷h)e0Pgj3?юZVsX꽟Zj&L8߬qeeVrw >Ÿ.; }wJ1к fm\Jz]in !bmm0j e^>N5^j; Y8XW۳mn-UR'>X pBl9`0~n2-CTIX6ZCӽJt7Q }Ɉ/CtbhS2PR@ic[솞aMT󃨡_\"T{,8z3nxN{E\ij?wX|~CVC {|Pݓy bf$[MQs 0 Va]9"9M:g1$.oEg Q )EpѠ?bRr S݂V؜ P2---9qnGZɞďs!mh 8FGU%ܩyB.VD2$7)M%۸na4 LI1m$U9o}ؗרQ^ȒѶ1 ycm`p G9!IwvTQHTd7nQ_b޼\jlEړ#e= كZ{JG-"]$q= >UU<vm.b6 O8XkWzق8߅k\s=F=(POJD"0ӎpRge0;ʾn-)Or,d/*)7E*<̇%%q;zKvhR{g{FBnf8㒶36eh~"k r3_].nm顈^٦Nǵ+Q}+m87|171! o4akϼ2(Fr2!e*RVi;]# h F%1ľdz= 㢥!<--hE1GQrҤXH;L"j0se->EX/PÇZ0qO}JW#9 $.961}X֤`hFBJ8]Eh:Yť/4c<44 X=괪8ܬ66kB 3xE5(87!\lC u*0Y0AG2γ74L/Jn쉯OZq6mVH8>8Dw3mSD}TK+EN6̅JEMx|\I塧-z!*x9vRv*6{5G6 1L1[\Gx/ߛ*_;*`ZOzQ'\u7e[y۲DșLC3gKzs0EpwMZ(:TdTҪ7s>Db BgoGL7U;ݕ._wSґ}tY1%*BDa>@ǵχ|>;qW% yF8\w",@LNT`Ή{!.soTOsD<xO"/^eOmz5"-JWB=ۚj3=Rg6^|_0cxTM+V'._4bdΨ}ٞF%`p}6!][|QCۢMA-aSI//7 {JHIsJ3Ql4,Gq? i(h۬_ TQ;aJ `f> d͜P>O>@yzhf% a ޝy!O{#@R)G"i;)4i_nL{rmo%f#tkи0E }fY 2Q͙fa en4?[DlWr~\Krq+@d) -o!h CPɋOnSr"o`?go\>#l? 6$#UТ\~5ȓ &ތ ̢rҖT~nzHf*mN,5U`gPF[05ay*TuݒP'tY L=|nj :WWo>%iW'uo/rx̂ݙ?U6h@6L(V\fSV(g62oϲĝl>U?pR= >zD(n ~d@87ᖰe˧]oRYZ-W|XB#/|, ؁A+߭a6P94ke~>)NPgewIĐHòVupX ˎ-v=g//32ŮYl"iW3%l_Dzd羌jAUR 9afك&X/QI;'4WGAkra'kx1L{Ps:h(VZxohJ!ƶg;-s;9%*{uWDk-0JD$ڽ" jela сox oIu CEy2G,/<:<pN1j&i"|WdU,$hªCNi7W/$se]9C(5_1Gxy0>Lอƀ5HL#HNShZ+UQvzp}ig9uhq$@.>.J9t~t8HR0eSz*اiē܈{6\"*dn-/Փ,邻F 2*, n?v 0} LΗ(0f_|YQagD4o#'sh{[BޟXZ7# gU7_dCkcV=Q0ȹLȇxDb\@]G7c,ĺNj]L/w+wo(D+c˧51oʀ;.TFPr 󰙬w;CN ^Uj +$Z -=w,8V? 9W|A[IM$*~KǩZUXCں4LzL[Á>h+3^/bsCF10##(J=7?((@7[egpc4 {:#e2TпIZ\ґ GAǨ+[ΚsΦ;BįC-6 82;dUJ56b1G#.Amu"t~X_ /CC[@B MUzC UojQ9~}P osK ̉c\ /`&w#ƒ6~E %THpMⳂ#!,iG<Tx 832,v %&@@ୁ r{! z*Cӕcwl*`yP}Ǹ֐ B#9f%CvHBL z}j(Vj(ScL! iJpKgz< XhD. cB7#d-Gb`\:3rZ~JV8 ."NMM(.Y O̹3q+KL"4`#7RHJ7BU![2 9GYlɝ};-; 9RaCӞ0ð >/"ݶp7<^c<ɻߍCE)l#I־G\uGbz,1GI:옭9> Gw׳iTDzq@ohŸ_yv!?%]A8і< C 5ڈ h 'dzM+k<:7/*+_p5iLNH:>\*U& Ѯ?FcOpf3AWoh FOh|fsSfjnsJ , f;<&6 qdoMr_XjЬ'0Wй,5a0Xgqj~&4f lϧEGPy[" )&~FzfF${6A+*|t:^u ]/ۃPisoRTWW-? V\`yD ɰimXݙo㉕d` V8 Zaow.43p"2T:bjUv\Q S)n[wԻnrY30#~fY?tv9X*iHCEtoBJqxf $'S@ U~p-JP;}\lqUJ1^e .D11nt"'".eHF;ҩC$_j4]ڌܓl).C( 10C|um7@Wii î.{kVLzQ N3/ܞbQ)Xs,x㪁_l\ 2Pcܯv8ҬBL؜*[;5 b>he[ r&H4S{u%xX>geͺ2ݫo"d9Fӷldc}BRK ḫ*y+TaK Ć9]hBн"Z 'CZɟaZN9Яg~;*x/*03gY5)Y陔LjøiW D[fJ-s94RE\E!ErQ*Sg\v;!VPD(dAyt "(ց*;UxW:?ޮGrU,5k{-FEɓ*2X"ٕ`C0`/`=2蔻h#Y&hyMn,HZ7c6S'Ŏ.U(̆xWpvL*M A2x.-* L_;DaBSdrvV+nu ILhEIֆTLغQV~4~[f;e#HS52^2ƢD{: o9ϣn;_v )-X&S/ʙgЈAcˈ*!8qew?@˒f|`LSx9zzHa4  : ;5AW8N@*6ܠUќ0xyV %*ZVfſcTeL-km! x =# {@yU΀8ױz&J*zk !STnsYJ98̖x: a*!j@x 9]~ĦALUnb[ceNz"ŋ>vo䅸%vC%__rcFQUZUMax3Ǿ+Pl.76Fl,~cvSnM!B^=ޗ;ul㜎֭8'=Us~6,s \N%ڼEuA[ϾAEy??'T=]38J0,|;aL|0׀g8 Ӵd u&՛W hnbOqK Q+lKY &Jv xs8),UqTD](*Y3lpKj@(la^y +)IE xoY}Z^)^EpcU*k ɯ!ZJfx  Mk9",BE_A c`oOꮡc369AE0<r -sgqTHIuzSQ w{*|װ (jqA y<$mV ƃdVKq]w(txJS!=rXÚ%~ 􌼅KckZ>xGM/cI|-$x 1<]010L8ER`5:ǼFqD\EmHbqiQ`SDgP!`:nzzN_4Fܽ}-2 زlDG)󧞞c߶z Nfc”^ 6nUC{9\푬][tvB\_ѯzoFFzcFB#H[wO~k!za|SE'DK7[!*S8ۢɹx JUJVǽ8lWX11 <0^3<='\eÁԾ;-Vn ⲭr@9rr+w5ㄶWZ{ݷVQ{]lna $uۍfIcXOƽ4|x $&?Kp"s5a2|y<}D/Bwnn8gOPk 69 trRE1:4mM4O#c.L?mCY]r ZO?ȳ%蒔y ,a] | tF1\hr\?+Ur\V^ʵu]th =]C˥VX?F—Esk$6 ?O@7(!c9iEO%=X"Tˬ68`><3wƅ r' :^sy$nwc3i.#l8œJGt5sX"!F7XLϴ0}``fy;(Ωx*Iu)\NIJ9bVʖ: *XSTt .sH6N\Q5ڪY9V6 V؎X2]cU3ɻg{Fwqp\5z1,HmMt";9xO 駄|%yJ@"ls8vG+6Ӏl @uAdc5=:ŀ 27q*  QisSD`ϕS[ɺxfz֏ 6a]+&4w4 u:~i6Hʌ!| {Sޤ93%6 B6Vhm26o>%+9'o呴1,w_XCeMgڞ$GQZΦ}N?Y eSC~o@ #/!Vb?m"tT$*?TAI4n\Cvek6=}| AyP'? vvx~[b'jk\_S. +iIW9\U(gD[(kOgwe#9taeᲞ(k x1d@4M5岨Oa@*~Z_:uڍNmm)|+;Jf_+w)p/1؂}5ka"VGd8 3 { !?3qnS? G& Le*qZHECvm.u3 | BᐵԲ7`B/yaaHX(ySUxP8IオΌQZT@;eYsO*ldd0bWndTN?8`ō.!3#`LM/F( AψA&UA-p$I@4đzl|H]hjSBC EY.x!۽-$IIo 5Mӄ5T 0?pgeB[]% #dž\Mh':?4>)F1@ѩ: aUMhV:Cmd"SeV3(99(Yflc_ӔK\wG'F&y.n*QZ {,!be7vBX>lNyրihanY;nՐjOk?}#r|N+SnͲD1J=6Fo^I\itҚ g+j0]w=Ej '5SAKu3wՖ_aHe+2Sd7iF:e&s[跉A=dMoDE.E+WG<(71F,h3O)@xcJ6}Թycax W"N̤-G2ls炂%j`2L _XؚEu_ޢ lr@tbz f2ƈYH\FwQA5#{չ2UW\+ΐ+Z[n6=|xlϖ^ 7cm%WЧdUj6Φ%#fcOZuY "yBčdnu}j3k?iْ>y|kC{ed! \ ㏲IVs%xS&0E]lJ d°ȝveBSյ^6|tNJ|6PɵhXwΛnhCr$]˖zƨ&'<0 AF]ɫ'ףM9N'C}Em"kX/$<ƲRS6uxFV d"\bT!h ح̭dd:rQް!Oxf1g|}(3PR"д|7mԅ^tcjJ|\ٯbe6| S`D8p,mߩ Pց-cPy0kQp!MCh NJc7OF T l 7L*~odT3"l KuÃd62\xi?-)V&g8YJS .Dr6!˝2vW?+l(48,B`)ӡX !\qO@݌|QZCYØ2{ŪFԲ3Yu}θZ]J\Ȕ7Ȟ Sxe-Lf79a!?⦍f3_rʹŨ ;W] aV aD >H㪔IG-l5ֈn1 AЬdy4h!ƾR.`L \<0yوͮ\mWHo2}z '@4X%Aś.,pBG~"Jw$el(p3TWR6Tq m$pǖXC.AHDZvD@@/ԇgޝ[:_R 偞izt!rӒTǠf)On:ekr1ZNgѰJU\qߙSGuxoOt, m3koі_B-? \;u52N+HM G?i3{4h.18\PS2S/l .g 5ֲ1*wvP" RQ5%k=Wէ1&0spp}эGڰH CܗƂ}c* ɐ;$Q0G5 X4F5l慇yGR|{S_l--@rJ't't *Ͷr`؄>$4XSEvcdh6\ f3!_@ ;1˳u,"?y6g:4a^aQnckHsJ^6Sgv!eB=Iy w-`$?zG4.V6((#þXƒ ?Iq+¸1WEj#fk7V94^nl]+ (χ(#GଳeT ;9.D>ٳ,okG=+71ɤf@?}^(֡[MQ JeS7b^sfg?8,I l~rvqyUa.IԪSrr6 CSLs"+T!I'/aj6vY[0h}b%Z Zu##Ea'q+ ɖIID$|kv6&c$X?E⯙m,B2; OO-BnE|L~΄T}䍒}=`."6T)¸74L,Rr4 Yeː~V^f M6Q˒!]xWݲoZ\x䗣jE=zƿG3,ߞƨu-5CbJ.FN9buъs&J IJ]" $:`?R׺*^N}(zۅǪN #'C߰*̔஘hշ`ōCjrhm|qy|Ce ;時\^z$ Ѕϕn W\ZP2!OM*x{c GSKAy%__СsA0h+vK``^`}l* 3VayMXVFJYӗcmvƙƵ]h?١&Dݑ09@pql5B) |'GрXѷGFl-yz&oqOq?!AY`ZY{Yj皞,6%fLڨ]k9{l8GyJsEv4 # E0㟈t !D/ h_&:k'76e=N 'k*V/k2h!UKP;#Q}{#E}#Ngm3Dmq VG_l:v˱ AcXǓoPb6PHK uYnhW&_+7lun f4 I|4TӂxTW^*65ǮRtȵ]dqɡ̇Bd GE#:z 5[;EB^Ħ&,G̿."-O%~opO}kiz`i*ѭ!Mcd?7NDq\r-0g!/8%$kMF.:Y#ETܺX=t:%.Q=>b#^Fs2y^0 p-Jwy8xOluK~L30`TGj\ S! V|652i 6qOw9ܡ?A^?|c`mZQ7|%񉱿4ȎiR̠*pNk? D~292]~bۗU&B+l|Nwrl'$ШLnf~.^ s :X :ԧOߖLQ ]Ɍ&90j1>@ASGUI'p\v;;xPW9u\Ћ5R붨ltH)J4磶 u~ȿtcMHhip(SM Hmis잩+%_a {~+1E`s~9+V ۊ(q#eBdZUڏ˫7Pi5Ƃ>D7EZnD G@]§vŶW1Yh8A_vo!:MTN0ϠG þvjwW Q碖, . j8@@M宯m2{ Iw؉mGT7@l=;z}HH^5pM!sgkvLenjr%|s!*c.z|2#{u fL߉nu?)i!Ļ *m'F'̝V >/ʵ{=>62:w=~alT?}k\sBn}z)(OMιeg#\H0vH\E6ˬ:o\|g0&})W$qe:H>c9Z1 \FAxR->J; /J*:?!DesjR8lLi&Vl~Nc2l?XZH 3.op dILY~ &'!B6[;YCDfIP] ̡FȖ"le+"tXєxf&6/nW@)#)tyADݑƖל'9T2-gCJaKCd=mlRC]1D&чTBU׌8#θ[CӜ(WX @=djq,fL!ռh^wPDa_@1YNٜHZ\6@b YWO- R-`5]nBή;|Fwm}lC 3A^g!sBv6!ܵC&czba(z{C o+^7_0b/߯$tP11+E݌fQ\@94MW<!' L{iOh'[" jx`~\.G(OO$>oԠ/~VH롤vV)+xpo\pt|lСeF|x(r+e,><,_x,N G Rk~=]HJY؅ 0v(/QUa-vOiƚMߧڙuUrq"lJ,d=(L7,.iO"hkQY0M똕QlrMxmZo+Y1 J7 s-R!¸WR8YA3 ‡!/ ]r ]ė2:lxxQgo &Ըk+;:#H3 "Qgz6=.%ЉXi~Iޒ>h{>&X$?̚uQBor`=*~-#82dg!7UEhG P~A(Jܤ:듣G@-r2Cm@{XcmLvW Bq_#C&< `ޒYz'i6cH[##4syiBPJv@ǖ zɚ`ZNJU!o@=UC?7ơ 5Lb%R2_J]Ϯ3hl|>2ҜC; qDC'IǤȯӾ3ǰac-c( R5yڽ;v^3ΔlBT[F<"?]h(9X؂Gtf7LFNP_DppIJA'5pG?H1ѤWX&+!E ym!]`nh df۳aܝ ᔯSȓ8Z4h_75X(*)7? T#n 3Wq\/^n]~q8ѷoR1Ü} Z&O cuhwZ$]vut-t/  O͞BSɵ3\^GŞ@V\B ^Xҹl2h7KE_:Ҭ L}">0(+g> D|G&ϵwHa^cXplnARR@hT\kx%:(!RyPNFnfi< Mm|EC"ضDS "fЩaF1FeFGN;5UhI6WW J l{LAS- v9KֵbcA)xD&@-dqi5W[iDASXR{Ncٽt Wrв:N# q.gbnSOo/جJ6*nWև<[B}^M*&ɣ4p~5_A[膲ihf{ L;_7} ^Ý"/[>[^-IV)e*n1mP?j&Kwp2EivaT؋{ni>^A ԝąڙר&D;G?Gr)Cm Q>MN r|ikVk!~ZfNXnE;,uW0X6'oDRe5u WW>'5ogvT?DWeg~OX>/y Qă-yQf~S#>CYY3dk_,N}=BrMHL(4'KL'ȱd68R 89W:euFޠqfMnOI;oℹ[ ENa0_=R[i Ց e^]z'y2H.W6v5$%|誓n `ɖ<{fz]g&.db;ycK'PÇ<T|,;] Rz/d>Q*JWv Z]o6`׭o͐P޵#hFE%37_[NYLTJ9c,](jPT:BbAOweV7PmO?=-) DSБԡQS~fG%M@4WV# Lŧav~Іd"H?E2pE9?FeMz+,,@F ~/ oeM{Oy&ɴ~v/:7<>+'#Xul>ȹӺT1|C(d$QQaMlGGKR{& 3dX^hd@]m&my'-Ws 7蔵w ;^\v JߊsjX&T/ܬML616GX ʈ4 <]e3@EkJS$8f߷n n|w]z)ӓ\hx k:ώ?BLlf {jTZX#/9#T~:p6şzz`iLZ΁Z @ڔHE 3 5x w;t'. b {/L,G&{RO- /HmZЮ%[Lby#Ib!(,BNDʋ2wGz ƽ21ggѭ*Iō+CD[;^=Gb|įtpB)흺"x N= ͆$6ԇo\lϏg~VV=OQܦ;Z!|@BjgbƒT'ewihX/r7)']2NSX% / AGU§INR%ѪR,0QFO-/vev<ơ.a%+Pya`?1PH!zz%َi׿` :`zgh2X;Uj B:?IlLCQdk$P\FBN #bXsQ;KݫqHլaP.ԋ ^ާM4k~>09//l;ngt6tXYCf$c99Tp\P^,pmE1 u^(( ڴfQ"&G3==8ȎE'4sHz@OD gak?b%u> ؚ=ia-Hr'WCZYB0Owe?\?,h;@֬OϽQ·ظ'YL1QORdN^g(;_iIlGg4%yW'7 G^:j {|: rGf:XPo8H}+>fW#X&r؊$JFF(XER $uVy%~kxS3'[nvק~Qu+{f^[e#Nw"$q3ם2i ^:O(3D&E:E4QV梨Pw+vUdhiԢ g_}#M DfqN>Џ9R?H!:o7% ȁwAwp W/ ,Ry?QoI[g`K"fg]P9wso)i 3): *]_)0yNطj<dd0~dĘva8;W/_5Hcu'`g-z{-L&}mgFX `JbZXci~L# R&wrKs[cnCӝ)|H+M: -UgK+l,+ 0@;o q6DG>o!께&a!\E7:Ƒ'uUW2HpE>g},}cHQB-wVߞ7c<r#D 0Mtiw5:^<|rcI׻|+˞D̮XyNW#n9>TLNTCP:ՍZ]UnYP|o #V|Y \#!Sؐ\Y-fXB %d7}}y\[ݲH4c˿9S =K@N@S}d2خFL | ڇKcIu@/$[eů@ZSgV$Fdr#$g&N«(Kfn)W=E.9P*cߞ|X"۰$LA]A>݆JI9ʞa]ƗaY# ' ˓h6@D7OG4n!$3P@$z;1: TmIznq+Z$1A p[(PyУ|c)aJc!p 4~\3cT$_sI.3W2uv R+U;uP%J"STuzq^4`U,h95*x\ wU=za&tѷaQ1w q ,U&/AҐ'rkEK939 ξC >,tFX|9br+e!Ȗ g2!trdYv!zlq,u2 EXk ΜoB2G-~,"[%%)7vhK0UtnOdGt3 !hu7 j3(ۘI WI2~l"`]Lt\b|λ]y>h7c_ 4NYmkIјf3G~As][0H*b<Ǔ?IX`bD{E]XœD ;ng6?ho7n 1̓U߼JP6}GQۯxUHP7hLpU3HbW͢aS^a?PpܗLvwVU"5DB#{,H6#Y ~m9͞^ 1KOKq㲗J&FJ}j_es8!0,;0Hhc7ĩWk3|/ۃi{mfMGQP( N9>F鍗lenRo 类gK.akK,q4002q(d 3Ї9{\ @+|^+^ ն%>6`ˤ % `"/V,r=ai1Xt`qB9/$22|" iAۍ &Ez>4P7n.Oi+̈\aJI{tkP\둝VA !K+cq:^Л& V4q-]Ќ,1ִjj^Yk(i'&dK! Z=#0$G($YyFT͔Z' p 1~b ߸|Ó@\-c,w>c["Uܭ DB-)dZI݀F5^(J_0GSt%xds^b:K\.sҲmpz|/4P"E;sU = cu&+YAwdmXb}8pv0)3$MǝV:$Ezy,X# :>B Wt :nz,智 P۟*D$,ߤAs<x+OKHpo=I9\uuRs.L6Q.M[ dk0˂Vz)dt8 `yDO5@Cؒ;'Pfό8TE?|$ӍvVoFʌ8sC2}'*;&H 0j9NI^kH[ݘNLfkTY@&E`Ѱq^>h^6+=FFenS^:,9]7uz!b0b@8I%O *ljB51(@UDZ!W4.k/z=i k)U_[^O}$g=M tH|s;ǧce)]:5!ɗ=t|tfAIl)tMvREGk.C[yzc:)XoHdW9N0zw{0Ԉ|m^&s@sY-Q6>WϞ;c$ }Կg3f_{& ,,}+EYQq ny~Qk~s -F5#/WgADlmc);<^! :|.Y/hzs՚-<8BiKyÌ>7'xEhZY2!]#fXA"i9:ikj)9abE͌Ӧ)+O 9\ӐX-7K #{HHHkx==Vx{ڶUuQVDH6~߱;/>}Lu8WW/TSxwsAZ!Z<$mU)7OErRtEm~ &]U-v>@{DZc\94#FrZRl(3¸ݽo>ETy=Sƹ 8oӿNj]} P%WwxThfpm /S4<5owG!l\_/NQ#Z\3k-Hc-'`Ae@0)=7vÀT`QJVM J(4q-]{R½yCҰ9 \[FU6竝sT*טs5D~i+A cftz$TpdIl;\jZDⳉTRY1<'B4d3&;x28Ѹwgb/!o\,ߨCA2e k8F& 7_cf } Wh \NrXX )5W1xxnҿi3C7 .z ]p%P.۱'K~#ӏ *^[LoeQywiYؓvA?pfjg擹*'K!>k$LQoTX#h֍/I:\HkpOuM v'1j/D@/ÚCwbL5rucz"JHU:W#%f1 4kB6$&p߻<︸+w4N>l>A!ldS<5k[BΗu}/ [A'g{PuDE qK|Jn?֎v4^Or&@6Kx-=A@,znVJRY1j%\^j|m"΅Uzɘ(B8ttf;`8Vk䂍>!vg- fRc q W<uN?:[ρ<Β6(/H:pi1qo+ Ś %ׯiC7m 4q$:z;Z4TgN'o3/r/1 o0XƟ4Kq ŝ?2ʌ~+8bSyEs/QYqH:*f^7W[5 џ.u5)G6}$A@"lslE9ZܨИf< 8K,8'K}NYxqmvĉh\fw>Sqr_9)4(O49dCW_Vl e]$:}-6Tʾ .zP)}@"}N'J\ Z메Gu} IOG$ɂ<U(TIQBjHt >NgufHыCiy[^Y`y2n7vpUtÙy.Wl P2`C@3)KtT:ƚcBJ^SVv<ɦ5F2oM]y]1pbmQ g'C Y]>!;Lt ݌mMo"m[>t:&f 0vR|?$3Tx.Yf1l'*ݽ%4 /St d2Ogp 86X=Rk.dOJ Rb!9YyUAZǤaWe^$_F\<xza[n4Y[ܗx7ĢjYWPͷ.eC(8?ߓm"/ ]勴e;\X-LQ΀39}GKzm7חuoRf{CB|WDu1LR\EɭVmnvpfZy@H0x)t3Oi&|p :FEۈȠTi4NXN'ZEHB|&dc6Rb4*kM[3Yr9; ·!@ػZ}I)?/-qa#-u q,qvKcIggxkIM%c@J%7R$Z=c_Ki"J'];eSH%9kOo@IY!r~fv@'\ X]JO 7~ };iKw$-kݟDy@rZ&ʳ'hUmUnRE!@@Kˍ̽\1O2P_f'^:l)$lqCPE,!UQ-ڜdwe&L2楜|Mc7+)]0  s X3I5F4pIs{2u܍>( $[|Ӿ+KǤ4$E#ubtJ"8GaCY\w-BMuցf=-Q/گoY>Ҡ)wD޾[lBۋ?Gyl>Aଟ6'l=qJ/INa5QBR_ h$Lfj㷽Ezod|۸GbYK /ጙ*ZkRrő}AqΤbwd<6`:Bt ̺ݼ1(A齽tč}st\ עXG pq)|9W7A@[9X+(YsOϺbHv>LvmNp}ڛet:={ `}h9yknT|ӿR^BD^R{:袗73WC6iHb jiO&̥NYzoak8*6%"&HL;9omAAqƟڭg! v =o.TJެTJn9mZIڮ06B0R;d> 2O+5P/DА&̵#)F"?vF ^S%q a飠 "Nt-_%00ͤGd?. @ Ca?"t|kM7wjD0}%+YWM:5d?n k}-$W/Q%HH@ PPy C9M% RWlB=&rd*\P#t#= ëYw.c)X VLW,uXG I)Ickwl~iWI_{1A^`J2d؎3.JSjd[(㋆}K bdƚCBlj|| ߜלTГKǢ[h KwN:q ᄄ:fU1iO~'bP(`9n~hڶL z0?b~ECZlpi%Z͸}ҾF|sc(RMldF.X6"bG2( ƌEB r[ C`Xda>+;% $ĤT[a|ȧ_xkhUʣn kq߄>$]NՅ6#S~UVĄ+{fO >xe?rCc?&Xvm禎!.-$S)~ 69K!MLH PPk&j=`??SLcUJ^%Gv(Wm7Щj9HMh&ULlT*#{$`>í6Mi0>PL=l+OG6$y1e =BʟT,9,:x!ekc0>k.,C_ʇ - @Z\)pQ`grڬ#MHUuo-:n&MщmyW wXnK*Z @n(e?Y1HonJ7^0z!;*IΪ"zDoT9"QO=W)}yW^ٛgM/JiYz,OXIa.r &,_5ZD6)srDzyCW3od"_~8@(VFo"Q 5S(L1-á4@ϔH؝G#0݃n>ۯ3R88Vu`#tQzlځ8ߠ *Vr ƒ5nEp-4ϒi`r %?҇,̚Y۷ CrFέW ]oXr(·ze#lY+RHJ~\rtE=rlsS! Pm ‚"f݅Na1N͛={xHGv`~-w7AȞu##^X<"]3b rNlo͔<Pp){D'dAو.8j@bZ!lʷX(QaLy2֒@c9pTcS`U845|ɽg u3m?XFf(M@jZ,gmP/;f{w!Qdrw$ɾ sӏ Q$k(bwB[ր:@D g8]s&H17V\f63A9MTDBPO\S+ж6bg2{}.ɖw/痊%b?kw8eu͊cKLudKB3X6C*H \70IͼJ-=a8[rW&o۳d]*…~;MΔ-rcz $!}@HÔ#G)ۥyvkq%o}X5/4eSQ&}%LNf9Z:/ăAvvYSQ9_F~ G!cQ9]%+=3fI5 7 $r@\\L6R6kbkUѻn#20kd- >3l.duۨhԂwgKV<Fn:b& i __xfLC GTΈy(>dhxJdq1xć5=C1rZ!ѺTlyaQ`i2ϊ0)W[zvt@Z}+ssMvՋ MN cc0ɭ QwCe (*sU|z4@#7(8m)!e~D=kOiޔj,w_|p0Jlme+2z$XL'!Ę VGF =E_X_ڠP*Zx魻Y5hdkU+'t'+ W$F$7Ak䎽:c䀸6CAPttHsV`:sn\{z J+t}im}oԕ2C̑^.\*PJHW[<@K/&`ơdWsPu2ATH#6 4rl E2٬T )'nDC7wée/;nʔ6 E0VL0 Q9("[#%X$nGmdi@e:\?B&tGeL0k=ȿ7DŽr\ Y`f?:tC,$SWHD4uNSXaBuO7Hpɢn ':9c c<&ڥM.(#ͻ`Z I/f7$-?8:sd5J)~E!WC#o_NX-S1Yzg:Dώʌ[t=&WbtTx5KfqIp3uDLg7.[*G Neeݵw$%_(L%,I `D׎ɫ$:4JT7F9l7q%|ض( $tqc2 F|azc',AMNk] 4}h.!;nyKy##LCf4M)xY]=8CE.͚8e _FB,6]ofW`c}@~_oje%o@3 N̂ZzL| sGaTY֌ lVɽF mșm*xlͫ8P26nٶ<[Y8U j'+ȨG#Dxq=?[>uuZScji#D،?Ios`?. ܷZ8@v'+WM0jr h)dUR&EQ] VH\Äl`vBP9gҜݫׄx"tI]p/f?3Ƌo9>l8?F]jv`NF[YZ.'^7Go_ir;6J5OsʠWwEzn7I{3ܔ+VHO+4~FE}6}$׋W/lj~DoKcFfuPK @ Gm,bln[f,Kڄ:ui\j:m'M$n5H ^v@OX!2Hlզ{HޅU$}5aѼg2=RP3ϓ\mX!a({GĄY>bvb6 >}]R qiEI;D=e6^(aKȺ'JDWVS  O;lZ&`p KUyY5C9i8`oƚYfuB&N},Ab>l(撔s-"IM`-wY8Y\Y$ZҨ@p'1,&EJ~մ61cZˎBi^ZaN sPYEGwݗǏ7H葺^' JWbꧧ@|fFLKj$) n-e|zj_u;N&p530'e AmEQMsE۫p1q?hY_CKq؂6b9#r'19{̉R~ :v6rf+򹊆oŨ0fMw ,y=r5wˮR枀WRΘ)A2]63臨HmE rsE@;8A1ueSG7ɓl"yُ>q,Ϧok3M6eFıJ7ج:˫XȂ [9 .԰EPnR<ӁSqGDa ..d(`)WpbN (Hn(*_{k{fuqͲ#,߹c%A#އǖ\=Ϻ#NqU]!j8)i@S8HG-'j0.:W\rxO y*"rKr(u_.qq N#w l4f~R5|-kkw KՅkD^&Ÿ"AXSD :ܑeS[͋1@1,XGi!`?*0FT ~WlR>If$\6f:v-jJ*& S2Jo@ņ cڛ o^7bF2a1%/?:|4+_UZ@w],!ٸɸ>eN PW/WZRV!nŝvT|1`'{7̙$fF (q5l|DDOڂɲ]l"6>ega9 z?Icr)p HF#SSWxEIx(VEӴpJ7 DFF%n|SQz⳻WE͘w<;TNSM:sHV$#0Y$dH_౯m n(xpo~_4Q wcCSJJ (宭-㒫bé'<R7j :k ]wFO&u)@4[GXolƷd [ܲ> A$6Wsc^I_16Hwe>/5h16}ra;*Ujn-ED^7Kb _8ꓪѩ%=]NA!4bXZ\n6q}2BDrr-\ exeդ$7uX:|DVMJ7ظȍo-gojǂ^v/06iAgLm$b5şmRC f V[9Ž7L?P) xfC~|r_~@c88чvD PR/LM ~j%p@`"97pF&F[:Sg*sԝ=;]?֢uE'pt6շ'yՆ):]5:!]q(,-6*o,nCV&os>Қڏ4=\6 {) 񥩛0 WK*RȖQ*j{?9@ц&D}# 8 @!`JދLW_ 7eGu. 9T+5Y"٭l\{>9zŊ'P Ⱪ%|Tmﮨ<;0şe2#+~eci9GC^NCbʓoI YE6~(`ӞOYtǺߴE]AYTmCoAy]`N Udۜ {BgVk(Oza!2XcSTh| H 0b: x FßdyGJf"*`$ uKӒBNc/L8WcqLá hh9u8p@-Q eOB ]Ǯ|R1 ,E <ߚv;ʒq)ChS"d00H}nLcx;ϠWJ_Ψ8q=9P~\sb/\YN!r$@; #8C65`tL* Z3X׷E)𓗄i8 }|?Q̀DuEdI /~KqφV/ 3>l켆U\cۤ`-'cA+0?տ7z j,X(b⾯P:!JlQ{Flx{[" F6^E(OHdPR0(q ^:-BR@zƔ$ wR(bp]xyUAíF}!x/ŕz>\4`/WE !>-]]GcV]f#ʾrPhxMWp z=-$4&~'$yoE`h/B"dZ9!U84ze K1fVGmp'*9?ڍWKr/9ӤS~D9A" W9A;"0E@%>b}"Mc3Uhs凼1J38;Ac:Ǟ8`͏Edl{ =B [F"r)]ˆDqxr2PGBPfz^'ܦ#&"!ijKR^vh\i&=NسbZ _*օvS$M2z .wz݌6|Saa+5Ҝ`hreS=oc٦\+3 lM8XIAH]Iv߳ 'KBهj{\ÓgS$ E6Zr3$]hsؾKo6[9 tg61bg8cO hb[x4V~ V)z|L;`Zq@ЄYHɬf%tTWh5a 4҃v j"k1e;ڇOPڙȮ6iA-ᘉQtwYSz0(4k*IR


    _h~ _^ N$$]}bTF,ڤdkԵ *$'Ps)CD:iU&ӫa8xN9ﲇ-l4txsę\揬rSiui q+>3;Ɔ\ښn#*/Dg2R2ϒk=g⫅)Ms%tV`8ڝ[kHQuI&R6@J_(Ejhlb(IEL%߻j]R,_Bqzj[49)<:ax7s Hy{8rq)4Kaay@])'^ ?y˰  Ɔ WM_LѳܔWG B9aK޼QQZpGs1¢zFM\dț `= )s m=¶S7¶\LRGyW x l遄LQuύWZ~t#b`$γܻc$l<|ի-8g GHPFhM<:Mu3!,X#ޔ-?M;(vqJV_gy~ .JRFwʆ,aoI+&0ճ/5-߱ۦ9{2NEnG6ϰLls^ϲƨ!RU]6c4#3"LYF$R;{Uߺ<f_q&pD=}bTE7>yD\AvM cs@o:p%+M_N*ĉ]js,ÔԍBv"{vj⼟$M0VkS BXŗ&)]tԎp= XA"jǽdD"vM]c~dVt=h.Az,ҸzAuR\ \x\N2ʒ!鞮& ~OJklS)] 8i|o.0GǀhUVgzC!$DŠ{\^́Jf #'BS9u=\I κ=x!æ0wk72r;quh :C)HfܟERSQ6wG%S35cSǷu Ɖ( ٴeP3U9ܔ[Ng̏0B$Ë)3#zY¬]n&feWr z_"ml&}ـ49@*`m|a.7ekT>β? ҵwZ}U?@X؝F#_Ew.xAj*On+oL6(a IF1_:FXǦtDM|O~''#qǺ!rSjAy"Dm~ VJ=' pAN!jsJ-adpc\LԝpĢ5"*.Q]a? ̺݂&u' Y !:s1VHtyF`ewU,S7uDry7{=V@9;7v~ dSSM$"$oqcK"sWpm,6@ |lsg]XƓ}̧3>2'aSwYo˱ \nUzͻONK-О{#c fb~xך0'znJ.7̪G\[j:H5HBzk0NMP}Pp@b0-x#y2.pG޷ZZ7+ǍD3;C`3 @cfaWG!9Ӽ@~s&f^gR)sj?@ 0 sqRj8zӬ Vx==ss]@y D\9Yh!uRsM0^{zQzf]{ tL鏯$9V@t%@U$/',kǕܮcb`U鋨g2dF)m-f!+]4W:Ov+řw]5Vc/SxX4L!&߆sHΧehxc)w1OݨVjq M 8m@r:xڳ_H9CUGDeqrH*;倁lC?~ XK~4oh#SQ{YְxMՋcCIDFtڔ- 1&= iGōF}.}B7qM`AOr2Vki5Go2U_ܯFK:[ 8 1z1Rڰ $;Z邋. j#ȇx7=wko$pv3 >O}#X E8|ɪm!@u;?kKS`?`:6qr0'L'W>1Eې L[ڑ7(-y<7H#`ͨ٨#ٙҲGA)(J`:d=@!u0B2s`VxNI}8*ruжֲڌf {%c(p9g\^z@`"T @+H?֢,D G=I Ts3Wv3pŠ$.%S} c<46E[ '\@J;ڗo>TAƓhlTTЈ.GԤBuo''sLZSHF[`>B \:R2ӡ{;LwSc˥1/$}(pi~R㋚(sob͖D?vX٤%FDܵdLWG[{/Ȋ_WdF?e;_e_W)78%ZdVaSh8; 6tq_f"Acq>TF+n傧d@m܃i{)ɹF)j#"лy{CԎA$֬s8&:1GlN Nx2.IGۑ0fvB'ĺD(H}f!J/}kU| V!7A8dFX \ .fI5Qw{ r Qe\ y~2|#IOD!;_C6PS& iy˲-!f ( w)h.HP(ꋔ)`_t؇M&:'&٥<,*ym) z *dvC~ ΑVi 05"yvBE/ԺvQs皦t޷7pIWNwgd'7B2/I7 Ǡ/ݿjU~m)L=&x)ȶbe@9ZBTҀ {eoT.J B)8Ie\2r/0O1$8QM9߿n<0r+jJn <XsW =δ} _J1`_ mw3ݫe/؎a7(؉Weܿ۶/}6!s7Y zJ#SGJ`w-ua l(^9Ipcs䌿ꢋau;#v@-oxl}VixK_Zg9X:C޸_I1D?2WL~++Z~ᣥ- ȁ@>6;GhΌA$9f3 bM @m_}Ev G e{8Q]RZ BdC+I9(ҷm!-Վ')"=EM/9aw[S<ȵi"pTv@ig#3.'-JQ0өI I p?ym_D"2?,r̚7 D6A0}9ɶǓC}w]o(YGu]Յr#&A.דCUǬVfu36%u~cF6snw*ъyZ*Ck{_rp@v{ jO턟miݬ'-J0!ܹXhu_ :CQXvR5C5a*$$pkc 3; O|A^7su&ug!r|mC,U NLdj8g94Skd3v-w/륋;5A}/J,jN8OH@HףK& "-$0D'mivW #ވm tF nHj&5EZ=s_ѭZ9 `*"At\M;D(I"=\wW_?&o!{J~>c{sw/A .=}K}Wm +\hk2ќ+"ʜǝ{"y[ |55nYu^M-eǃ(YMIJFzWQsfˍq#wi!gwQ2Qo}F 1E0%buDQ_ d%حA|AM&[ڏݺ;l(,vƖXHA1+U2uwљʊy5cSA2zdLUm"1(RU^LN YkL6wX)b|F~⹶ǗZLZst$ t LM:P+t*CM@R(Xwkfq ې|v{SDg‡,}55 t P nT]!{o+-L*b@4HH( Qo톎E vl똥}&~*=`60nð1iX"oU\иԂI#@]p-}|4=Jiѫ˯^^3q&x^ weFnT*+ÛյQ}񥖡FHɌ uMۯvl/|rDfS<& v͓x K/'ɵc6W 6 ]9IM:T挘.R$\ۚ.&/_ h* @Q|(ޭR͝*f(uPfylH JUY'MWsB+\N <3ꨇ>UUyiUw sD Mf RlK =G{dMBٍN^)" 93~rKʐ 0@BIġ/U3ʦviNtӼ;gDDVYpD&"vCNUꊲ"j|yoaӄU))^F^6,ܸA''܏rZW֯a~o66'0.^@(|m\ dS[`@!,KR6:b!MD{($?^mlC'Il/cMAcJ"a ՓUGz3jS;SvJL l2|8B%,' ϯ+G~n*>jDGNz?dtQ_̯h_ʖ[=cjA=6Y#E:sR!Tcz!x$?s3"PM=,ڢV.g;%Kjf4ȸoINz4'9MrƈWpʮ TX,9>FN7l LvϛԜ0` /8*D8ΌU$V\KJ"\5<\_xo {\x }䊾Vn $q9W!ڠ>T|"\J@ӓS19JAN}&w'vw)|f BT<,ߎřX5oFֶٗ+]Ώ;!gΊ'9T1$.%mwA8%u{tMu|J^U͞Uɯr.<~F7Ouk uOevrIC;RD<=q%iOĄ/-NJwc(o?ob |iO4ot#++U){!mzZ@)aZ:ǩ|սg_VZ%,Tjd ?WehEiivT^Ml7ćiiբ@;_,r;Qq/u- GFʷVZHQP 9'gj V;gKz'; \~gc~&ذS[Y a`7ӁgWl3*7 |!;"DpW1@?aXGp-RXN Bt(b` EY1i0J|i)S 5b&dl@]z'c:V~?:7@^V6+tRk{ɦJѨ}m㉕HQ>0h4~ʵ6Wk#;V[h7)ă-;mf!i f*ô<#)R)063l;R"0|gM%QqQL2q۾W葙$b{RVzneO\~Ĺ$Ak8wEr/ `WL9œ3$j]1",ߥC+ǻ6`}#[6ژOFȽ[t+.#j\@'@XdcL Xy6\^ey,/ T_okX%~%#K3EG:10S&?Kl;E{Σf^0_./2Jǰe\[;"LAOѰJ1D|sn0r*-RSR X/P $fJȉybGFidl铬ɑ,4Vo(F1:w˰ 5Wn JUcLwU0(Y/nC"u|!}6 d]a- U .4w8]ģx}}Dd,c_Uv1A|۱O){} ZklovfceNnݘsD[#OE{BjZ:Z_,3 9ӌ" y|sJ,TQ(9R'K 6 !s0Jź"t iH&&j qivO޺RYXPLF|*TjRQ ťݳrJgїRx;Fioey6kĆ:4T=4gy]VW"[uhc\t\n,@c猁1 /(K urr[k&Gnqd9#]I>rF{T#e{@WU=H[l~S%^z(&sgWw,;/1n#QrmR,^lvnd4' s4|6v<`;jMżp`ErS-m%M(#H xIV|_G&42TY/]|}LYe&s n, =mr#9:$O{!Q;˫mF]jH]A`,5SPV3LE>(V2G ZrIb[qҩ6W[_~c uYm=4/q\(=Jl+3y-"OxOpg+䷚bM1mKI]?}qB>=pTm/,UNrލMqrLvG_}3b;O4;3-XfP@Oys.os.@]:cm#$nYE=l`g6ۉx\-G:N DӐ6Pܷoy94lxLZb; h6Go։:s\0HXNܪ'G0xX+B/w <=d>(5eya<ºp:lP>%4WG:upxDS*!Ӗ¢\،ܤURxo;ME6%@'DɌ7oljzAY`W9>^CI[ؿ^RtLm_Q:M bK6|FL C(qM; ҰA*9ힽ 8 qw.E?[z$,OWvv<?+uhQ0s=YrtA2MFQI8W0<^0ZUv`2V(xyp! ay-3I#Y+s]Zoϣb0I?Q-e| Ig"e4!+~9tƱM-ޛ+*~dסh 5ڴJDg5|g'!&-_W[d@TCTy4 <^Kʱdغ:Q]j&4Tvs-jO4 0ukF#"n:˃&XJ,Eqbmvȹ>U&G My/UlTQe ҭ\$|g\R#EpK}5 J:WH/~C 2e1! +̐HŤ]Gv^g;Vfz,C k-)[<4B!Uf0Hcy,G}{GY\]c?}kx)[OHGIB N(Eɷ0~*9ULZ~licOXmnS@mv5;3žIފYNv] *ŧq;c-eE/X'IzS,Q Wu.[pTCfrM2Pϩl8~>ts4_puL W Y-hgW nb E* o1SQ<RpF4ߖZd R:p[Z2΁B6<1& t:\IR7Ɋu}#dNƫr5pKYy{Jէv2w Bq4uOfGwF(8] ƽ,' %s7sKLA/ 2 >"j?OA@ǣ苕oN_1ƠMh=!&j8u=e.RPxN\/0$qZٽ:3~P?#c;(ޑ op}<$xxd6{V68[jXXLᠡ݊c Ey!.ȇ9N?pp<8P HnY]c=mh[ԩ?̓8Ҍ(#df;6s8TSѝr[cf Dx+Rjlu# {W]c p_gAm}[2!׵QnzoOF6]E,ϹrD&Qcr#O0CXUZ|(RGAuGeȩ @  =Z7 $υ ?FO20L6aEߖ\T:6Fvm{=yAu;D&gyNJ96 bMc0ˆͪ9g7ٓ h|h`H,@ͮE,>mn 9Wn1Α;O3̈剦(;ѩTV.5G36tM.@8l'ͤNPA9Wݎeh=:O0hkGrV*\[ w1έXdO?MiސlVIbU;ٖSqSxtĝΖtYV2&,04a8-|kfjjDI!5Ymvݩ8_NXւ8^BZX:ψafS'"񊞓"~Y_9Ųt`#=UTA<̧LNe:ROؖ9u#YR**z=\jXK]H}OkeLMPJѧN[LaW#wK) |7VM&>r푤!^R{ I[o ݀pHYe~4D|6nvkXN/Θe!˄G),F) !Ҙ_m\M,f~AB{@= %3wyA][z2 $ S9Ntࠩfugѩ {chgOZA2H5-*vU’{DNi5Ė\|zicpfTAw5d/&2^F8ΗĹ\fk[6bK(!QM^8FNR;,,eZMsU: h< T4f,W\;bwogr-G b&/P3kȈTJ /GkOX5,05eh'YM6E5 ;@i7lD3> n̪ "\y@f,)YrF-V~Q9 }O=lsU>RxtZ((S@4+fHoi"SHC7 M6* ֿ/y-;Q&gY~Aytn^8w^iqUHaxd ˞T_ f(.1A~5-ʑZ6u,YM\G;jkIptAўB."E!ǀ6Cémz^&i3;)Mg{QȪ5u:#|:SGky~PqBAX *p#C1?KO6s}Zv|œ/UDj#6Wnn"waNՓ^P߬vyhr*ut"6J;ߞsy]B=ڰ s%s6\ z9L-*Oa^PmM#E 3$v ܖ"CskBt?ymZ}[; Fs\y:N#cug߈H)bEl'rxGá1=*>neS 0^Yw@4sW̾0:ǐ %YY^d'I4_&9jUaۻ9ᥘncX (; Acà `b},+^;\u{o:-7D-!dWOARSRP>lvpg{|Uؘ !NDR4v㝗Swī ="ҭ<,RZ69q³<.jNq[ÂMw<2lj3'Ig"c ݔE')\@HթGқ9a{ݏR/)EEŧh$ O%K{@Tʙ`NCL/J${n -Py nOqk z3{{a21|,|ܮa$GZG$"'`jrp_`gID 㶮]H (Ƅ.= /;7?*GJN(!lblD X õƅCď_˘Ws\W2I MVB).%̰2E4Ĭf~TeAj_N,DFvѾs#[EjK|W$9{:7z`ϤD0$>E] `#,#NuT 8E9RjM1_qJ!cet d;bs 6wt3Wp9CAqPb #m)ʉ8= -5Rޙ`V?Y~ +wd3c&*5Й @ uw L.q&#%:4BVɲAjh )\˕ Lfλ4p>OSGgJe}C!cE'bQVQAy'\VxyP8 ޑ#̀}GV@q_H߇G~z$PAk[:$K)LP*-Đ<ؗ1OBL\ѝ.?h-WV$ƜLk!?Jo|O7'YQPGP0mE|RH}Sj©= kOsM hd=#]s)tW.@^kVhZɂ>>7pHQ%QNZ0'?*U/{!UZ| #Oj uM2ꢼe`[ P.P J_Ey8 IcRp=3H0TU-C1> sh\ް.8J'%ZExva}\ _:Ͳț[=s2>؄羼J]ܕ[nj86K̥/Z+@BlQ|sSWHlg-+U 6/e ̻u,Ѝ\ Cg` ͥ&Xo bTZ$" BX97F-!Ѣ4FSrbmdQ9fw*1#+.ث ]a2ѻ )%t[Z/LdED YՅ_c!TP~X( 7Obkt:uw_bFr%q,9mmdsR] %I W M8Z)בhDs/OlJ7G(ءH5gA{PN%ILml2)% ռm?}wrp^l*<++37&rqW*OC'jILEQ$:RnN$g)uK!,ht)61gg\;%׾[&Z(J}wE|RoЪQ(~:5EB՚ן3Dw9Ͻ'u~nwFZ36o3 # 0o /icKFtN#,,W6öҽ] Šą̗ȶF iqF>2/vb$+\#)3`^ntBuysO{#hÃuP\LU?S' ]8RW8+=i1GFyya>:Rdѡ5Q9¿;J9l6OA2O6K$@hkZȍax\΃X?9#޵@0]e")mx_1L%/Ct$&{^) Z)!f/†zX 4.GDO%4Ӕ 5"LQ*k \GRTFia) 0MAȊtsۗؒM k;%G΍sk + NDxY"lu66ͮc_:IPR-: S^!iӝ77a2/Qa-!+,EuoӧacH}جI'eAw:$se\(ecњ;gX*M2l#7&wۼy R<_' j11jt'˽FU\oǬ yo$S&]. 7pλP#DrDlmLg G0ԽZ4c ~Z4Mۭ[A<5Cw>T1ɂ]|HhY\իӰh.Y"] r8e.޶]Tz0Jg0؅A5r?GuRѸ4DlN9 VM,|dgݬ,ZS۫9rVٿ=<=va~%rx>XWN*F8q7Ÿ`)ʕ҄W:̶6aWl6DdҺgrwNZ'^ʣj/iy?zo2FEC _}\|Wڊnue>e/l))8_z=4> 7'WJկY/ݝ'Kv\3O֦Y3Y|ƿX jxbjƯL>:nVPj3*JQ s8VxpGNE X4@:X\]FC$ŽcO5H9òB[yz/A;֩YPNzѦ<6^m^T|O(rL: ;` Ỵ~s.hɲH ԤʺUae"g:+BJa6)+Mhn/b 6#njΗnT¥|#"Q`_36Ic88l'?KV%vXu:lO_@V\o,kY'p{>FvcpXgQ1:D.dz'.^E|"lD׽5mg9R(>94iX;Sp)زa"@k"HD(^:9A%~%Qp M 0Vw2]dpM_(TYktv(һ U[;Vzs(\h$_uWi`[B>Qĝmd$#"K;w3 ̹ ЙK=ӠvϛE7g[!%MͬU/V @,8w~ZRyZ ;Eʐm:\lkPr̪cN; i!KxX.ɭ-*#nG%Z0+%:d$_ٮݤX:72*;dDx'L72SJB(ޒ-SbTD]8D~ԛY/|m~,!̿\/C޾O1 形sm&v2.R2IkG1oPmtG (}L9zHWh]Ye7DM殤ub7U"mF/~8kk e|9Bd3;fzA+$M*JVzz9:Pqޙe7֩ةL?MzW6%֌PPQ~/^'~@ͭUJ,:hTWkf2)|ǸߛSyX 9o&و:H:Vd!;5ȹME򇤗)uqpݷN J$~ߥykW^؍8wTxM7`ኳȎm2*Dr VQ%|vPz̺o.Vy{&/گ`NZWFI2"PD%jۅ$7Yx/R)҈n/صHLKXxke-(ji4ѤS39~VtdȾG[^h0ZLR<'#y}&{}QRm|{ 8bǧ8Q?tLLS:U ޝ{5nekgڽMCyWx/$8ۀ| 9BTq#:^ )Hk)*TDQcfHLQn?f-)gQǣ' vͭxZ*Wy [q ۷d>ˑly7Gi?%ŬClUy䫞Av8iNvX:Y&J@7.?? +%@4P9 cu=B<ͬđQKgR,x(SuvJ@6H^Ǣc/ H:t,hj65澆tWT%,+,$p-ށȇ-H@P,"M'"߇ԭyA 6떷H}l[&HaY̰M ϕ&nRi@q$'Xbysxg|kN Wvqpu|h C]PŊ@M26K`+aac&,|,^撈[t*t#;W&P|pQ.ExaN]ɍWͣ m=Cng;hn% j5 ]HQyn1\NḟS1c`0\+,QkkIAs70EQdC4B .i}ԛ.$Ez\fFPQ3; 5*)Ox;^Z;N=`WhL!c-F8@ejv\C윟$g?QQ/{hٽgyo_>yv,;>X̹ڡ'29$W*$չL 4]*ůG#U)&K/*XyG_ܸֆWY}qCvCwHd[eƎOsC{ >OG.U2ΗlR4dOE$i0S-?`ⷉ:<̤|U2TTF4`]^93OVC%k 5lx(d 3sN{-.*XTG:G2~ト1!#}!~F3J#cacLm QeYܭOQEXY$z[;r Sf?[v[h_ yڲIQ .V\]J jCY׷^w>Kz+JDS_V2g;pF{PX.I&nLS3ZL )Lv@Ց3]&*6NRpC \3#PU2yM*^?R3p ޞB*Jsz*8 ΒeSFn x@_#$ jǑYdĚF PdzYraD-@(q~ZGΘXrMQ -#ƍնtvXrwvOoi5 LЎJ5zL5Bҝ|J^ ۷OýL<7 !0f-h95KS# Zp?儐v)wK`]ɦu_ PӘeq0;REjV T!E}&>v9Nhs^BC~J**9#0?10ĠQtb~A$ѓ4ߖ̂χ XabU iT{RڗfVxk.҄CԅGzGl,)nQ:+W}7l)\&A9AvrxD^j w|ƊX,5V-= V P=iu!_ rzBEJ%| LTw#"Qweʠ܊+E}$R;9!{>Q$d̈ыLy_\ypw I|~mkM9=KI}Y[=2#*}şOZ1 ibT\2DU(j "9 -˾"\w[;ԷaD2[ai)*ᄁi|R&aJ'v̤({`G vAo'0yAk"g:TKaYXEdԓ@keb:[ WKȹFڸyqX3Fh06TRuSs O¹ m/@ѰfƲ~P# !)ԋ7'xc?x]'9@a\L;瑔0p9S`vx*LW^%B繼7Ers j 2aƣ؊.Ex.oӍ]Ys5pR܌c'H{ͣγTj9a֬/C/i59AZEܑnL}zu:ΘU9|x]n< ܻHA4'/aEeiTE Z) S@/z,ǡz#aɕhǯ>0{ċ҅' Qf nx`EZKݒهX釪-U?t;u~U~bCjj@tnf|>Ӑͤ^fBt*lfػZjjo|Z=1Kҽ'lM95`fYs#\lf^6HԎy-(1b5$gKGrJvum:ji崿h}z D-AI5 lBPF,F6/b){yA oqJ[%, 28j{].ᠲKGP~[eq[w#x:JO]k!-8xi2뫇VtmΨ;3#r_,Te %Wp3^C?7yⲦuV`d,c WFG3&H>jlqr|K|pr9uAGLSH=.q[F7ts\&P6_OIK!\.]{A$B4$12:9Z5w;"uqAL #~ڽBh*x zKz Ȱu6ݹ4kվo8,ÆzS`[l.Vd(9:z^6D] [=sOI7]bjo ;uBgnK{R*tXaiwKd^)ׂ y1PM[bJKu-_7Z?Bݜ3md'C- ߅țY}<in|˶Ǩ,quCw-SLV4xag΢gXccƅiwn+6$D𙫛E\ F:9[F+(~p5g?ȥeҠ?F,s**-ɯipP>{( th:llSnƧ )InqfWhܿjjJ^UFE|ꁞht-W3C;E#Ik&s}F=0t6MxӼě9#&:v^)7gS5ય0 aYN>6CkotWJ ԙR']*W(eO${KjՏ&8DO5ml%ۭRd2u(}Fd9$zuƤJΧFͳ89Mܸk Nz\ d /Ws<:9IQ;׀g"Eu*oZ򠝽~ (n~R$آGEPMՋH7 eN.JvEx ݷ¹tx m3g~q(E-)OMǪA|tՈZΒ}o h#y ʈM7*Gz>t$ɻCMԖyNmIί~_FVIW*n%јjv(`TϺL>n8 DNdyu~UjVc^9`;#W7Cڪ~dy<#]U$mKAt?yG:ލ;u9P:U. 8Osj/Go?5 Q|!uuu양oDeval˼\*bu똘|ԣչ@W`Qf܊P9#UIɆPUbˉnY%z\Zd Y;R'iYeHVUv("aJޟ^& <,Ʀ[k:3xb]w]Zۡ9j('V\q֭9<_H7^yu"f D"P{-jάV-VPJlW Hqng- ;Hou&M jگA{yaD.U Qrz&0Efy4;ٳN9CEr/W]'{Z!L45J(fIҁ1%zߵ-QU3s~JEzA"E`v8yGgV+7ڳ99eIwN4i`4U{0#JvgM$@φ 6z EOfB)kPy3#{cqNIy1굓RatiHdSa*d1 .O 6u9H~O8:2Ti1|)aqhMv˲%d2: zRdCQp]O@ {T=KÌ>q1YDO*`L:cqSNit)L_9!/>Aw UGYmO;Neq"~@^1;B !ģT u~(m Q^φ RFR{5L?ȋ<,( 1Pɹ!N *w\4 hgma|&l(@)oas. pg$0pH8 5!mIRpsx~>a%`FjzߍѸh(xOWHicQo edX/ 8iWDG=Uk%2P~4wJf2}OW`g*3^qԶq摈ijhF*PZ#w}d׊%Zxځ3[~8ig^e :$l͈Nx^S~9IRb@85*J^ŪC/T#WP흅_o'o}!lúy$ +r4Qx8'Ƞ:gi1󥵘gUw(wQ+*:ihrK4idv0 hLRAn 籴`jA\`1_&Ln:ܛi,7hUwX&m@E, ixA.yyZ߶~ASuv Cpw*Imtk) u"!^`G:iC8+RySD 74DwnhS좭ׂ .²$Ea_"NAkgXQ[i½DIoȺxwso8I^WmGoNGF1Uf$4s "ۜ-D )gs?eN%p6,Vh}Nq9`Ee$o@[ %T(.xgj#z8W)'H" )DZI+mj2jJQ{=|DK1)}3 GVcZO:w O6SEJ JY Vcjgekcs0|n4p4gte$&J`IQ"W.A%W`yFpwqlbG΢&ܗݭ C|^sz+u3idxP MzŰD}%9"kMIG3dC*(O~M8zp_hm $y$FCj P/Haw> x⹃p NyPaʄ?ͶMcs얏Goz|̩y1QoD:YJaAl Rqbf!?Q{:o{Itu#TTd$,Q g #>>tƞ@M3N9Ԓr+0~(܊5iK*n&z^Ot@ܻbEu;W(z+~ .vg?YVQb 1.:;I_4|Ɵ+ >84#O6ĪtS{:6_|%( o7CĉS 4M޹:wAfڳb3w,܈wݞ=/݈zQ<5yu|gЫ}Y^Ker+o!ZHL.=zByb麒;zJɤ¬znjLPZEy|50 |yeY,RugL>l].LlZKj]9p0v K\n{.c=+}vT5~sPvycsZ:=P4|2理;<8oJKDV|'f<8 bRϤ-G;E{Hem@w=VajmmYek,}N4'P8Wi"˷hNRm>S`+8l<Ttj8v8sȾ0&Dzp^*iE(Rʌ ^TlvQn?DJ=IKwFZ_uތDkS.ڟԕD޽{BvI^fnnb2 E *Q6͹Ȳvzvzӈ0y4fVuv PWxdvOAop  _ZT n()pp``wֽ[cK@ca'Cx#/0m^wnm^v 0lj`= &\gN0qz&06qu0O9O-m._mBwFp<m}4:4^-yu'%\2cq3f,GЍ]~,pQO0 tѮvL郭q+ Nm2ǩzjw}`Lja7Y4&E/g>"Ïsc1aEUӖuoW[CX542!W [V:jNs=60~`:ehMTP9321)ϻܑ &}d  _2H~}}GAе ~V>_訢ZuXIӑa'>`!pm~lun=vwVUT $IҗI3xg]HX7wA5췙Ʀ g7ry2z!8N-Rf-t:QZPjFMw?{ʚ F I2m.Wڍ.2}ETf/aފzPw߭8= @ulH8e DyVxh]jh"tBpw-Ocq@PiRc-DMf:rR1?8x.&$^D={[rv];'%vvȰL.Ԏ( PYM(L{hGm5l7i٢1EԶ(1Jr+Y-8NR$D7>9oΛsŬW+4mf(D"QF&Y'=ZK8W%Ύ{C;ki-G&Xz 3yjA~)+63ÒѶ^m'% ʵ=(sn!HͩV yzbri0yj( ܵ@S8=ҏu8r*L^ю73A̾ā1κ64{VM+4"/+tzZ_b<5>}:yO2E[XW8ٕZtJ j >{Ge Y.G@#vxX!o|mlʟ3}~3[L 2yM<`K;>Pl6R0 ׍y'9g5L?IVVdfEYdm/BRm[h,dQ إNN=XK<R7Oݤ%~@n0t'ml4 сY N=shA3U/,:P@lkS}6ÞOEz,4}r7q^Ǘeۡ棭{yRTp[i&H@ U%।K>-MlDI^!4*)"Ďu |QOg:`łtŞTcTH*p9nuSt7H%:հQ-`W~@ TU0QJ`N-v;HL̽h ?ה\ )T6ʺ\mJõmlP/- #ȏVX^+z<gΥ-8ȶ.>(:Qv !>+s3B~r}RrTn ik~g/fnx,%17z8 M#YMq2pܫI6xoˆIʼnY5uyt%B 9qFܷjdKzO3"`_sN ~$>= dO4:R,S8A0JvC [/:ˮRDHM:} oL;R`πKunǎ{Ft~?w$dԗ:Okٰ8#˄CKVN&GُT,!*RmVXZÑcm|vкDͩT/_fb%vch[Fz÷ })9v [*Av2ɛ*M*c{c@&e P'_s*U<$]/SWG^V2x7hΞ}M =&Q(W4j­QG%piZezV, [(ɮ_S>NkEûFƄY[=Rm/Y$AY&C'r 9||K!6'ar*U75kmߩAjz_}FвÙ!(]JI+tY,O#vp-]C)"a.7`gKT8x=g.m5#nA >K T*gېլ$wGC'J6E܊vo'?0}F;yGisC6a[[E%|Ц@x]_F@Wve\͠ ;yj ޝvUn%G`wddZ/Iݑ[qfv4ke#;%u H[?B}1JCz$_svT.HũD3{vt'f76*1Y{$?6sjFSb TGX>+A'2# MH6r؆v =s1ǭB>c+Fe]D _!Zzo\M9]sZ9T05Qu%bo4JNtI3 r0̓6+`ϕ$#֎ps$A,u_.sPƏ'l 8ǽB-º VhPz8T 'oIct ۴rP|kM&5xe֓ Fឪff>Ov}/֙m ;*mUU myS Y&рw5(gXIn@"ͣ#IVY=PfޚG V1g74]j]u&Hde%F:<,Jm3*enz]JiF$|L+ZNcnY !9 4#<1^%]c[55q.#ŅJ]fW]УK ,`FF &q2x:d{h(#d48'0{#5sULȘaA_]E.^c<:A%^+p:^sh=řZ>#iQXAGwR$CEG:R#ֲ}6DaX.&Ciy]c99"ZaװkdeiR?Ր |{<Pg2C=%DLt\+zQoE|)` &Ϲ$| 9cU@e*صNAǔ h]d[$ f%t&)D{b}ȫ-Gx[+s#~?sI@^C^v#[FRa0mN[j* HX7KDFwihѨO:ǝЯć'ՐCSخQC&)ȕ+tK)ݭ D9=>WNeZ[1Ind,O_׀DaTꡑ0QЅfq! b>BĊ)ޑv+ .;ҩc$,0Q~2yzAfv{+nvjˠ@Cdy]RRVc+LG$ل9Y'Ғ :k;t6q3|(}*DnTw?HצG}sHN";ESMrN|LGk;@~N]`,C N֩q!7_d D[鷣_F1a/)z$p1H'E3ݏr O*2iC݇wn 6M:]f.۾wP,v28>г69k&ѽpT7=ff[3!^.NGtu! y^qJLm1$tBfGx-Y Q+^bI]GDF*nA+:hcKME?WD/l W@/X%E mVKX`.ys~b=< ~S{,fֲEZw"JQ8VCCA~SH8@{ cė!O b<,¬ctok'Ό2Q}]Neo r87zolaZϛw`̒ײq(zZJE"qyOO%:ysm:dɩk[8ǽ, -MC=Ģ=6~| -/DDt%R7Jdc5U,ѻe xf;kHÄY+x7Ľ.K)SՒ<&^O%| ĠAR+d doEGkn*E;zѐIhk-%TZ(N.:Yi1Vsw lnHy3-$)lDljKzp:'*$Hp7f ?8n:lȢ;ʒ@jHAF!o?Y}C;x)Á{q FXUW0KH-EN/ KhVH>a툀jYumF}! '%&{JٽIlT =3L1Tss} *˦zcs,N*X(ZW ojAG)!yg 86;ZHwܜކ^"kq[ t [Q[!P4w&(|)"c+;Co_$̶6mQ߹fw=$ΩWE@P>:[P&V );wGUoT=+ A7PB@Þȩ W{.o\ !H8}/[ֽqGy WO ؑBA /rif0j7|٘ Gn9>1wԼnTQw2Qv \.#d9Y5SǩJ0_@\mZ WտN^ckm֑ zjA5!ߙnL#=;8nx4VS ѧ=ק3; IVV}n9BO{g%o[8V|U%Z<DI,/NbIj b6i\X8bN՜ Pp,-Ϸ%l'/cy[i H-9A׽9'6ozHb< {3N<ϝz5Я[J 0ߘ\OQo ߲G54<&O))o ^v`M>m;jmiz?PO@Jcܞ1*F]?K "3JDr \(a"ڥxha-oRzBSKnjG%lL.9$ctSS:c $]Nn*I?7^=Ϙbw-ࣉmR rJbakbh O_- [~o{ itKLsjR':gHB[ 9PDUOk>$ٌ1bF%vP1BFjċh.EބhӚ) 3xX0xV]6˒Gd*E()Z6ud!jXǴs Ǹ9> ϽDm1L!}N78?P`z)69λcJŽ]gzB85$"v:K"h^r 0[ToTwԽ0mɗU 4/$ML}o9'rCΑF0&?w{#ܵq Nn7C'e ˿Z+ pa-E|G'e.rlF A)sc-9P{%5!:x2aE=I4S[|7X/h,8 ȸ)9 g L>\auԝcSXGb3iHyΤnڵMscY; 3 iOws4 wK>E,Ͻ ;iX=(O =gEVal;N1 =SFW1r6;tGH `O{[|}1\g ɺj~ r|hKki/&Hp$lo'~鼄 ڳ㦔~rUҢǬ_i8x3y0ٌيܓ=ζ'.U G.04ctHj6IO&\[p J6 DZx"C0wdz9rMߎ炃C2)'m> fD N-vgr.vX$@f%1@sx͝PAU?)- sy`EfDY {WFiM3&>ƿf<=bwjK-&mJyF~/R;o 94i$yᰡp.\'SCd+r<8a %4Q瀳n ofyS/E*qUSMAǐ%*D 037?)$rIB#xfNZY[Hzxk1s^κ?8f*˻-QE>B*]y9'KM$γqX@Gs ">[o`vݴL䐵hUWZ:K5UX=rsZ" 2YCC>g%nはB'2_[gV{jݕ&-gYHı&?aU7紫u4E:⟝XjĈ1E~;;Eձp$N7GNpQF*q-bG fǭl5Sd-24]r_MF}qZ=Yr27>]/ X޳s=FSV=@C`x-g2t *w6*OK9&D,R8B>aZZʔ2QDqy780>~B?AOe(XW?^Z_WPLʄ5p2>Xw>ޣ+ف3̳uN сL^ޓ,`5 ;cѻL޺g?#+s7˂PWو.2owՃ 2ØPu<L;Wlxf~d̝0%ޑ6Cᄐ!!aM]rKO{{}r* hD}C@aKwɞcnSQsuU4߮~ Eᱶh+߁ayí"7ozX C%pnhrR5uJjNeo @PZ󵝇fG*1>0|Qb5[oOQqی+$!)~A;k+]AeKy6rblF6deiXr _Qs!@mw'}fq@wt/3pb6aB9Zdǝ[ֿ۴px^tEP} d4K2ٟbz)q ϝhx+LV*ˣ*(OG0$. oLZ> mHc|oA%3 P!E٨=M@lX'ao?KCԍAӜiߏ8&֒ f֞@}8w(XVXaܫ2-jf)B,YT8.;J#Y}yܿp_&X kuA|Q^Ŝ̀ZXXͮIXswW~^9K{1QY4,@$ZBSqo/GpG-YΦ]q{=M!L pވd8tGT@DQziVg^-v0Exnff8%, A|%n۸"vʠԼblhXbWXkKG况1qhʏ}ha^ޝ>8iM$ѬpLQQؠB^UOu`ӈ #]Ї2r2Zap8\yŭs&Gf{"D'H54:$Ks Y<4~K{}B樨)&\6v܈0=ՍhkX)/ɷP[wQxvAhZG]K:Xp"Y A:? (8eh<ʻŲZWmM@{)XVItTT~?.Ԙ-zWဟLz)oqЫr@6Pz)+o*\2*3ՅBi5:`CHQV:UE/&GH[CO{?&A!dvg/It1r9CJXoAEzA? l4 NfLt`ABjo}˺Ӂ&?1X[Mw. _Qb gŊJw/ZCtk-  +/d~/D[8|єV&X׻ڱD&/ޭՃh4"L+E6 jyAȶNW+Zil}6HY[x=7Hx$vlw* {Ϭ\oL]P7jc?>!e(\vuj`z4 *>{URJI7G=2Oh ȉOFߠcSnH B0D+n.>42 '[N3Xo+LΕY-QI3Ob3|*![>̹3l $7@?M;j0;90rOpD VF[Wd{U\U ȑ1c0n,BHbDW&-HsMK4/Nn+0a w"Xy]з " HF~kzjHCd9[&9o]ܿՌ Q<Ӊ#͞ùU^4㷐;8ͻNo,e*ŝy%+W9jQ'sAD` 0>"ZqE9jKV/* AVw_(^<(0rr/˧Wji!y QLi}/N?" (df&_!n H϶$pQ̧CĒyO4޵$Dެz$[lQSH5-rβ u+&@ilTC<^Qw5]UA@ ZkFVWan&Ĵ^nF9~ыNT^ &Fi+ Tk8`s~8=0ϳF֖vٷ2hp@yK;b|FU06qZOYQ赮;x~4w@rRv?"_m4Uc4 !d#>8&t*PJd C<*H6R*iw  iXď0s,xXR ;eb Ɲ jhA@*Aٝ).p$@ble4ݮDDiXs6=Zė=n>!T1^{#W|V͏Q}Y-0u(\iN4pjY/ܩ9*>K8˖ H1Ft4 >W@QE 1,Ɠ{"-Bk]cc&)nl$> Rfbm)m$?ynm)7JoUuM#hdZ7f+S>T^Fel(;VN;s1z+Jd7@ԗ(e \ŠwUv< }u}&G: 4Fqucu(+J@㷺jp .ȅ6}NBKEÌGkDO{s࿚˝q?99rpqaU$]2A=)gGkšz6EMwՋ:te>!y1&GDϣWzb@EUcDYmb^{? I6˧YP>$l=W&HY'Ց]<j ԸT?qY#܎"guT{qcYگ Wzss ׎vJmq_`~+]eӢ.\s-IKZ!F@K KJrXlEO{F7 DJ.f;(v`6Nm- l& ' VOo1 [v!EUI& bB݈೼Dw/=F'ٖO1{i5{J[uVv]cMᰙhw.GJh2oJ7.ܫWԔG+B KEHũ픜pQ[Sz7\%/j 1fPZiFVWk}$WJA_/r ubez'S; nJoLǑS2WNxN"tק> ɐQΨ\UƦpUcQp>Z/*^8TQӆm?.e /0NmmG<9hy65DUo"0l=uH<+"> 1lxthta @|sEs9-m΀p/}MKSϮi/pj=o2*-YéB PE;vQnÆj$҇(A;6L}$q[kSxS߿k8RWԤAɣcjF@|1 f1䊯6ɋ}ųY7uQ0̕{BeYLNДI^Eɲ`z 51r2nZ""h?*wM|硫' -nxiXm)8]LTAOD!숰$yNz-|_4:nQku~c[BxJ,B68YrseQjDU=4=GеAz}gs*bz6h&d7`iOsns6j5G㧔hF`D lb ⟯J뾫nf#)⃰:V1! vF4$N}Jzd*˜RPåeɟO~^cC̪(?tf_˭n u,zwU yrJ$#<6KYD7~%/eƜz (dd'v yูV}qC%ͬUe"uUcug~H$ܢ&rwW8ѧ0-MU2\@R0N1 v?s[G s]E{٣i1slz[zw”ԴiNHr,BCGhnt\diQX:7XtrɕcG¡"Vb6TGD%aW}b‡w5eJ)$Q{hXvslP `$rt,Jcħ TXB`_:U2)?`L(a˦ J6D\l[,6Wƴ8b@7Zz=Λ?jt"xvY{冃mTpW!e|u 5B7K6hL0z0eָq-.IXPK4~x *'\=ٮ3䡮hQ8wvMa`:4)K h94a5 9d"ԗq:<&uwzZgZ`#b_9̠дSMDuP{~^( w쉤̏z\T4Y3N'{zG"  UvJsƋsfhkf0M~piLnhS9^&G$5<9+ .CpNx1=W'qk=UΛ1U4/PVAv9O+ۍ~0&Ap?fnE*<%U-xO:ՍoQĹn|-tNvEZ};W"̨aPyy5RgP_)9c!Ƿ#G\G+6|y1QڊߔhaI#`& NlN n %, `D KxmQ:m?,}^d]@fXP/wfIQ<T{̻~^As;xQbSa.y$ s>I?OؗTHx>yְZ})+/GB`y?7}Yȳk$OCCj;& ˂Y,5Yb`ŕԽ;@ao怞QdL bŠIT 'tTz-~"՞@UVa<$4=pt4{,k4drB{SR@2I6z<øVR'aD˾Y"=pPsvMdN;BoЙбYs@ R I YAx.& ׌U|I3{lBEN$;u3@ȶwd4|b2ը2>c~~XdtWzH!+m/H1/a@l]K sqWz @E{lCr[x#_'_&y 601@>Y5N|l<"^ 0 ( ߌLuVBYNjNߏiFoBy nmjΒ;ٱcn.cQŁx߫PK^ akc7"I GDTR^*(r9rγ9d7T+oZ؊/)oTl[n?LݢKwՐlZjgg4e8i/}!,bE5%a~J~/$28|mz^=XGՀaCa'7'AnjVsx/j4dɘSA$TdX^c8LBPA)к4E[ԓsb?K!NUg*;Y^+z'H:EGHp, 'em܊DWd>BaLlM.ȿ P}  03Z%׈ /6.15[:]Qɽ*2DŽrUOs*cdLPA*~}`ZgR݈ c=y:bSp\cwZ`yQy\T +o"7Kw>t[LJvıv|m^3,UOFtigWlTqR'1A@\1NmIE-]Zl K N_Чd?x}>UUy܄Z_[|ƹ-(lmeB# ǀV:E1*-s9H6^\SŖ0-F!v ,,*<~^-5 ^My FR3,1I_ۚ8]R c׫ `i#=GtP3CSP[1le=3,9Bd3h1{!54,j;eY`Jo+eD(ܝ7ym(Z&x{B,V$>]XQ!\Aa71&%1攠;r9)aj7lOiSPNu<~ӹܯJ)3ݙb8m˸vտRںR|곰,0$DN$ry]8_ܜ$>)C.##/T~0u])[;;"1}YQ9Ie{"=;t$t!b];D0Py`=QC n wD%oT؜{D,pbYH|:t[v<2$+{+#0߮$}FӌڳZni'FkT ҖK13[wvl)_rL6ռ(=JiZ:+rWts* tӱdZl !AUi t!qk 6ȕhr9ZjȈ8l?&-gHIuSOgR:('iAMa x*^By1Nڽ6yRu k$91K<^>a4eLB*4>›KѶ~z<.k*1RdShPѸrtKsi4?X@F*ٙw[WH>)6{lSՍ W/J1CRMN{;#6e#!./u L8 Έc43|/ˢ$jA.%,!VRF&=M⑌}wzb -CbJzʎnL%Mƒ퀨rH 0TE1)b24$S]u'e̻Qx-,ߧ_˷Nq18.5P-m(hF0׿ַG)^;"&BbnO;Kxz- jn>-4#nW "UB[z(MsgSGm,材d-&;҂ aB&/Qߪ{XT$$}~Q$0
  1. cP+|y Y h4-BFTfiC\րqС5WTBWhLY)SATb{|X٧q& 1% +}?bZ/N,pS 1Y9ڶme-/L*7NS0ǨC8K9ӳ)PFC՜:[Luxi][H_Ec54.#FJ&D,x%@IpvGJƨׄ"` "(Vpm0|5qfd,0(#PgvT==줈Ϥ埄D^pQ8i/REeyC?`mG4GV7Ϥ'PpZ8Bz縘2^&)[fgSĢܸۛPv;ضv$Wa %&tunܞ^K#D6.C`J3E^7HaȄj{FC"%?Oc|3iXM5~4F $/M>@1Onsm&RFc7줴!v8> y&+ĭy';k[E=X1"S M|$-잱ZѬe@0R C 4M%??|w,.@0E2KR!_< Pks{L̫yh|QH=(c.g\@aT^Gu bi1ԾmxXyN@3ZBҵXxk TЬc)i'Pd ZjpHSyQ)A6"3Ҝ"_1#OmLyoEّuH K*ȓ#P^+zne 9 kuO3/^,Es6Mjl;B;D둡zٙC5mű 1^G@Le+ط"@e݊ oM֐SK.nx0?&qXp s.X0d~)\j|-Rn&߆{ 6p(= }NKmGTCR=$ n|] qA/:Ǐ#N=NU($NJb+[`@怢5cttP[lE8Eg’%"ҩ|z T|qiQrY/]ΓX52'(XSAZkڴWT4RZ_;d097Rs. 5-H%ilƀ}+%G^A5Ғ-|=v\3A@1N/!Iw3TX e8*dӺ뚳}!U-!ÂLjC3-H]8tsBH)P+)# ~{Vw訏bMSoD|ȯS>M~E45aur[oEs-L^]$ƳJ)=z7x6%#uڽq5h-Un/jmuWǦDze4iG=wT)6 )i H 9,-*qnZ3M9"%UhS.d(ώ5Q mKhۆ`u p_GdJFka-V,ZӺS}K߂7 kOGx, sLe$*6Ɇ>/NX M?OR YhVſ0}b")Oz}6Sww"t{Kξ+&ôN48D}Z5՘*f ZgΠt.B`M%0jEok!T {=Zun2mѫl'K&Rŋ' YӮ*8mŢ%=L,"Y0K5N|=L)']މt&U{S\991]L$7QOgy <OЉ HL=/uMCI+@A% BR=Y(l;J!PAAg?ҥd:u;W=[Aa}h,HiIT́LC5U}:ܚv;Ԁ ݻB57ՄDU\k4L褎,4_rrQ*N 5z1tezXNk;*ݞb3goMACH p n* ^m7eIy<c:y1q2jgr@ 33#"Sy3 9`GLoS#FSx(R: >]J׾j_ZmCTXdŌ⁈L9T~$G 7ۭ*?b;^zhKK+GGk `xy%[$+M!E;\4d\D[GpPDQJH +<Ic/ss@ "+w&Oxn5Ϡ, ; m0w{WVkx `HeJSYm !NqC9 (+X&KldTrE ]8@i~F'+Ma= i>y`(Ґwk4}Wԫj3\, w")"fڷ];IZgv 9zhvg36f)J2{PLf})]Q=pͺrb?r }^wAֹ!@5WH>`+~iqقlԏtjtX^6/k;llnq_'qu~ ܿz>)PNfڶ7~d~yrJ%"JY8f;ҡ&eAAsː6DEti/%;c.!bl{Xް?xSA%x! 9|ŦslqHX=p n!}:+uj4d@d? 8o˙!G-E? L3S`~aq zwh190Wa.0*W@̍in@u˻0ޅqU"0GaTaRɞ\Grz8YD̋.3iUѰW 4ˤPYAū2xeX,c[xˋQ[srLN3pܪ?FX=zALȡ5wb70)k֘YEՍz)X . :(ޣwiDXw&I{S-{JUR˅ /8lۮgD?l u2z9yo͐5/SuLaj0=o#>s$W&%@?Ql @< !ApΌEvcQUWb91=ϿŻz$WzʚoDp_I! ;} ztFҚlyB!\ U.'=+80 gV&x_qvanfDv߫T&gwM[YY{oVSwy( wZEWmщdQFս2S@[|,+u"EXߟ+ jYlQ+)dP?yTF*e1CF ]jaw6r+1̝f˂ AdW qOot ET&)=9-vGyt 'xZW7a^.P'@ D~%Y#4 Eb=oY0j#ȪI~MU\q Bo}ofڄLākj+-7s:\jFOo|,'m3X}~@ξiAlǰQ2]q~Ƽ_o,j2 2>O[. ![q'~Yll 4#Y A倫МMrvW&1s(WTZ>>Cx%u2 |2{7&R+ʓH[e7u/1fv8Rsx;u:9L 3NXOH  Њ>3;AO81 -q Eqb{<w}1t v4e^@'g:C&4N2̐aBU$-Y6?aO0P?x3q΅*GRIh%@-)H*0Q ǀij9q՘nC('IQĂyXVP͐l""u=rXk0@GF2¢j_mqrrukoq̺鯏Xqh~bج\.5:ܺSD'4\ORx/>B Ikcx6d)\ўdX};_B㡿BY'˙ 11ԓE|)'7})s7?CUDGy~J%ylkѼy Hq?%Dl[ܠtvdRxT0aJBnwU)=„[*"۩Pf7ѴOK&P!)sɛ-FF<13tv#FmؖOvpR#Tj2M*0ݜ{Vk 72Ž>b 5MH-B4k1;TV=d7Sqg {XXrs+FĨyyqR؛μ&0@v= M 8v@v$WvB [2o΄`i#`szGybxEan#ZB4]THN 'U!5_)4}6(Pd;8A.R;48l7,} j'D$ uf ouX*Ljݛqy:> Hq0$*Ŧe\l .R_4mWZbkӨz pJћZ 5P 4˷< -is:XB>7ɦSD_(0E-f)To /$3r +Pݷ "cFnnR$P^*U$U!'%V7xPZ#5c"J~ bd7RGRzK bE4Odγ'W21딥JҺBm"S!P~H?z ~ZMeH n7T{&m|#٢\O7Kz09 e7`Z\d %GeAҼdhoZ[WWkwI⽓4=QPAZ {W죙2g(=Fq+юpз~C0ɏԒ+LO12p_i\rL(Ju2(?{>Fb6lZAjXf~xƘ")mM^/j:ӌ\'[; H`ՎBDРN~?w D";yV#k" IfJ rYEXuQVRuVQ1A"9:W`5r#T s2{nO-g -2}|dORz7dV'}MWOc-޸%HnBeĔ}kɖ⫰Խ,@ܖc_@bʹFQHcbRPۓ|J|*wN9$HaW%)o!W>(!E|}HVuKWӛKd*/]YPv/P')E:MW (JrcTt#$)Y-D lmUcapܝѧM%:K9&(E#^o,ਥLD<oXC[nʲˡ*e*HcsME&SJz[.d~2 |s+3% W]rlȒo!zנU.޶0Vf|Ɣl!կkYdԷ u|9 {nmVCq/¶UV%>,GԔL u/BNR-]"{ 1 S2-T,O{qS>{nWSбY[D]ŹTF \S7i($q~Vp7U|RW;@|};F膦V0c]]}F[ E3?UG3Y=2_0`lWU4/6Û/r1LG8`s['QbDތ!-1(+DGĈ{`ՙQu ` YQ<םtv"=U[ V10MNxs6Bd0]1|4ĭ++Ji?Q돷B/RiELc8 $9|`> QA"N&6ԳLv$U3h􌏾LJS]ۭ#uݷޢn bkFdۓ; ]Cv.`?jRKk{‚mSSYoc90W=tS솆eOhMFE$RigK5TE6+5 ?Xӽ7^rb( MEKeY~R ꀏ%qn hy^Oi-brTVSCWs0cHu,$1ʜ jorw*E?1^U !uUY[&v:ucX;z͎ 晝mi5S;:|8ety0Oդ󥡪u2i7*`R ^ WU*CtOX $#J!Dĩg.)2ig?Ȓ` H }7k/CZb2>锔 >1>iRJc 0KaU|͓@S3kPɳ?%f6lezu8\Ю3'6 AZ4#{N8{-YE'sbiM.;m7(&R6({de6m`$)9 ;xWtp dW\E+& !)jh4Mz&BK3hg!2z[ nƀ 6RUkISC&;94P}4q"بjdAn׽R5sz-i:̤?fJt;\GY)BV^iAn@«t2Y}ׯ6E4 lQ>nI(ȒA9L wЉN!@1+ٔV*FXK |JJF'B7xbÓްF1wdYf&VY;YhX愺n$ZOy؏T Y7 OO.-m{x7G q㲂\p M֩ e u"F؀tn@?2g h:+6?"(=Ev (6W'(WXE"lV f`m bU_<_6,{^Ry=cw߽(Ϭ:W(+MUbG5?CU(1 ,YΣ.z+ :/xpwIZZ&Is5߯ ]~h)gmPj1 {-~ZH>u&\foiG-Ja=}Ua>>7`(VcAݞӚqe7E@^ ݘ[V8Ÿ59O)KQ/ɑ]`XnxTvsE8.LʊS?lAs Lc]+HK9gOu~WGMPUɶ!F`dHY*Sf/2k 7cs@N/]f̖e j]",IdzVgoҵEc@g?ʟ=8ᘍ{"ok+4{U٥N^PxhFk90-'V2MCo}t7boO} $YjuZ)Í) . ^67iD MU~'w]hB"bhLFɱ[zFu0$1gzꨀs%\b&EJsI˜XfX$S}4Z?1&јR⢭#mM; jKb_ʨ82 FZʼnVwœ@,GDJ&́ =B^gSܵ3VPϦ5q &~\vhj|0wsM:#\ tl+\'##^뙱 `Mzhzr7%l^#Ċ*iJWK71PK #(l:64ז L } ;" L܊Qz p3X*rܧK^g)1]i"w5&/$~N:)0nRDK4נ,oވ+8A>R 0W&6@MNBRƠ7mi\R'gBH/=nMҭ< s 3<`eꗓ2EPo_B2mgp&FXbT0jɋri9d8!Fu}?0>S0ғ*2=RHXMQ`xH fKAsiAn%ԻODl"h =Qhq9G4ł~h@odbkӚؕp*7-ZT<'1Qw˾e81MzwV6͕1x@S34&˓ ;ęZ4%:ҡӯQB3*>NNGk40à?v;\Gd,:֓N,lًUqiAjx#I%zD4Q#S煺G؏ߩ8c@e3 'j]=%DS+f 1n u#NMj?OXX⌸Kdu Ы g7n&(Qx< *;>x:rd])iߣ/jlK aצj_} Q/YV0ř-Zhܞ3;cBMa\liA>_HAF>5׌t,̸'y4t] Y5RCugMAt.51_]бrZx Fέ,[zx,[9ux$º(!^1t<;ٽӴek 2ަ])H_+ļsb.\O . &sMcY{*:BoC\vsD ]icc3 8 a6꫕i $zTAs=tB4V@w,t̩89 DE _^$5*^%~f` dw9ɛAɯu:\-eAdKHJruPX^(z@'_-m4jP^Yb AESgMa.,G) \w? OƩ!0s Nja纊mqeu z1)]IZS#uAv@Jhyo;y2yYy`喈4^3%I{ 6+`* }(*L/1i%_]q7FDY[hR&'CZD5u4Nmf¹)coTnҰ7Og/+ɺxq^FtǓ[x/30՟ᆟGZ=ƘSŌqtJi7X,f<*p6^ q|.Mb%; c|uh*[2̃pP}K@(` ! IKd][ RT[X,SZEL#P[Cv:+TD(떥UjJJr-.`Rc뒞1 #Of!#KwxQXg~/IȱU*vNkY.s-%=1z S yiӛXF:Bౚ-vʝ4CԶN}+A^+aU_Չ2oC{^]i^􇼽Ek^>DH݌Km#gs҆|%F!p m5Y64'7} $z3O:?QQ.kճ1ѣHM AJ ,iyVE&wS%Xx&z<)B|JQP_*@;h~Գ\4~1uaDυc꫗/w5 u1՘nX q+*Hntn]N>[򿡑.Ÿvۻo8G~95T:5?Z8| v2]f^Jv$ )CVoףhZ7L0{Zs\wU010o/ 0aM=ц~iߏ3]?.zH-/+Uhy`e+du ,:;ݛjGP'͛<̉ހN׻ӢZynR<NQs=!B6ٳPJaR$X ,\#h@583-gNK}|C:ݝtAf2U=,_S6gqYoG;$ؠs\)[]]i<@QTp, Tbݱޛ:/"^lUR;J5p, ,ЁMLJ}s!]FG?5T;-p,!u`84n0&m$I-,KB> d݋޷/ck')wZdH Fڛc֭M"uCW50\:*$ؤsCej޹.We j'+?0AJZɀs,Z/f` BrjOGM2 Wp3%*1Pp\i("P;է9AwFDk9t3f cA OD+L ~fEz$$4 ܮWXk`oarǑ S8$NbHgCܦW-)N -cѠ0~URȘJ\}~!Ύs֡.jQ#~q9_cv^W :M}d#&$B5MOP /wT(Mw 7+|!6Eo)7~rVF"jL G}ۖKr|񁛭S矶Zijtel|4){"CaS1}c'3->a^~6%bީ.R X`ۣ>zm<wT2k{n%n;jh`>F]F0=D=3M. Z">P>[DgKyn=kր0>G1p;V8?buہޔd/XlXe>JoN%PҚ4"dN$I *z:?e+v b2Tč|XT*:uxٔb,3w+Our)U\3jRSTNpdctNƑfI7g͋V;< M!+4[঩ĜBAfHJTd1}}AD֛+!kq9'@c6dD7kfd|&ʦou/Ձ)eYg)UFd {~ 3w98biy-1 [!k"QІ͋ו(ՍUƂmaML8ا <5_I]ekW\lBvdx(zS[xz uH>*q(K|-U<]r>&g K. &Q*EzUeL'@( V2#++F1<"/H?un*RSA OVk0wz|Q Hdv ol*7c#gdxB/ީO:sG,eY~?~8/˖= Ah=yx|tnR!IڸsDžjl$|m1-,.!P3и l$P#Aͣ D{t9uJQHa9(xTBDz>I ͞h{-co薭'4cos6m?4"];ivQ3Z~$5o88e8Іs\8;х}3 ֕Tt`/f%}SxMIܘÚӅGɑN# ?NIUwfAfPz<`m~+ߋ$Ie֏p}D/н %hh{2CkQ4yb^ҳ HK']ľF^Kř#l9>N.dE)UܸqXxv!|TBtG!]kR> lFdjR %9 #ېl쮏b&ψ \B&P~xƉr벌tЗƽadć NpX!cVS}=U$wνCзnmk}xUPSV==k_sOh%[E$Co  `$DXxsmPQ ׭q9u'G;ʲN;vKaA"`yۡ1 &$h}%9rE@2Fnlو F:pf\ev2!`l_YT'gu@Ԓ|% $%%ɸ"."[hH:'z\~]ӿGaa@/=iMbz ܣ\9*2jywQdxUoI"bdu{ hH?Jub濵Mڍuq0Y>DUp3> /rol9Z{h֍vf]Wv b2^n~-dυS裥to$=E tPxI2v(ا"PD?Bc U!GIjh S늪bv CAbB-`_ӏ~/ӳsҪ JkjypeN|iN5&Z]%hvYN?|{K}"f_Y`S7`MI `pi-ϝjYקd"T+uH@ܔ2 {ٵ`,R{VnEM2Ё"gPfYK?] s܇4*@%QV{}vg7_Pan#.PD?Ƞ޼^aHKq4)kgȵY{5 kx) A\M@pQ$I|VR`a=w @ ҦbiJ{Wu}3y{\zYbq Ř˒*+_NJ{2GN܊ڲn&[ŅfO*7<(KMRϊ/xP`HVߌ[ :YSd N}">:+,ZlNH9H9py)\ې(9{ujso{\1BQ 򼐙y}q%syO9{ F;WZ\^e Fa&d`Ey_ *DU|KG^yWWsR]u5UMʼۛ<_<u&[0Itu|!8_ qjcx}G@AguZ5@ʺNj< Z#>3=&xU@:EByrlc5.+xL3R&swkK?}\Y7u8@{h\'LWE)d/>j6?fEOǙ_kilp=Rh k <5.OJ]q i,:}۱KNmZ}mLiXBWM~ 厧-꭛y >jL2 cGy}Vu4nq eYYyGA>fp |aW-ۇ\4Ϫ>a*K/֋b: rhJ0H4ZSW=+Ro{%p RqKv" BjR} )d&oNH>%x&SM /| 7rK9#3d< X(6d4g$-92=&&X;義T]f Gh)DwQ0nX3I'HzD6['1<0Yz&q Ma:-R3I(Ķi*A4tIϴR}ѧ;$ttW%}Z{r-"OncG? ._mE쫫7"l|Y.bsNm5= wOVA.s_iq# B k(!G~] (I d-f2oPNblbZ.CnSDh1Jdș'DiMDhYkrG;Ġc ; coD=]JtNM06nMjz3_*fJn-}،bS]|}ZebTĦs MMx05zn:5Vl /aBhv;KB_K'%6󌢺哋Jsv =7y~I*}% WZU98!=ZbTs7xg 4K=a%֦R~9yFn+;0 !Q={ZZ&ЀC-$:?(Zl2ҀsA63\7  tҸqcq{^7`4Kn1uYu~ h=C7 RR 8JUBɀa\{a_Vzf} |0z+ۗlHhmJttpZfw׶ȣˋ_J +,̍މ22`ĭb+l<ų&F0E!N?Jc4X m˗sjmauIm7UJAMI݀Wn ثNr81ewD % V "zNh:)/НDH60OMv3X6TTUu:44~o!9?59 y0'cQNhE3kfzoÍ.y!qa,#Ȯ]???hp~xηĄAvrY%_Y~edE'}Z/O G~(g+q UNB"/ѫ߿\O96' i=#";ƞnwG<>lQۣܒ% RS>#pV<_lrm10M ZXԒp,N)o}D-Btc|ũm:-)L@D#Ye%T૭8ulQSRN;Ƞi{1X "~.rG8$ЩZwמ^/]EZOHУgM :_ v&Yoc #̱ :\9>KC! 8 j{S^[4Zf&  MVE3 AQ o|8_Q=cJ :c -7ƒ<8̒pFǨEʣ0)GûHG4vǬDU-3Z1+GsyIJRsx>)_KGq}j*˲_#ī(I]S$pbF&{>rXk8da)`qRcxԒJibQY6;uoϯ ȽSYD>4_nͥԻ-ļV&u- /7՜[?_<0[R=U$PU){[—a Iu_!Jus, ܁ `I+hASQ A~mltsaa/.4GJhM\Κ9!&њR&} 3t{]wf&_IopJW<Bw9o"2UNE7|F=y "|agHlU108X a`D&V2# g .JJ F"J_ ,_mZ5 9 m!(%v@C|kV`$:6^&M!wK" DD0<I7rv5*xs#[b<#o׶齟m9ULq.Cχm'/2Ă䲆C%d6!捯8XE?]Ȃr X)ϱ~VA+l',Oٝ+^Yi7Ȁ$xBG6).Z(ԘH$j R$9P选 {Tb5nHBk!laXG1q:׹^\6ڀdե WFnqOv/>+E{ו l*u-hͯJ\w>6rZ0P9#Ǹ߻ W7Tls_:/LQ_|iIj@NK/|'| V'[ҹ.RD5a>;w}Gm?yWeYd{YA&Gyҳ7B|80l }cHgMc @2Gf@3[jhAM-MN y$W0ݣu0{P9|[UuP"HRoCDR^gL Hp}>%* h9xEQ̂c%Ҿ'LW(a.Qoi CN?BNvC T3NQec H䗥;eR=z.Z 4 >05fH'", 0Au[^.F9^LJz ΀9`)}q~_ ]"Gq.}0ݺo,ܹS#ݿi34Q(Wq[k /lo>92׿:Dv# wњ%,{ @I ȔՆmG ޵3i54#6>yA[Nc/mUKX*lAfgN]f7 5~DjD``CGi2P!d+.5܎Dp9`/Tf_N#]O]\zD;wqM˻şx4TZبK ʵlXq;Q/ _%o=E'-u Ę.Z6?o*'tѧmf;C}JܰҭNNG. 4rrdbrCV)ݨ9L8*Ӽyۀu'`6E)b=Sz~*~UW^.7)k'LS\_G<.8 pҧ싞P t. q}) ,q 'ezCW|K*oF,}G{O7%׹-MS-q  h ?<]^GȺgl\Q#G88R46`$hL?0tDPY%}_0ZY@$ 2PUQp>" azC?]e1Xc$ʖLMM.]5 }oآlhxytUrT5IdMeIV!dehHOP8ʇԵ UYߙM}W{÷XG3J~Q%nkSsxckm3MW>bȥ"'lLG w'f$]% v T`X,Q!篏Zm,{nQ#2LR72ٚn~h`wPHd <+M2Ґc . {t٘ e}D&^ݨHnبQqUzS Z3S$%DH+ V, aJSvx]>MFKMjK鞆-`MǬ+I)8I|_p k+JZ |kjN Ȱ59b#|JM! GW Bn*|{D`V,t)L | 'ͧ%ζ,}G;rh;@nfA~yI_cts:HY r(aD7k$sH)kR*Qq.%H<>Gg 6y\)~֛ߨˏ$ /f-BF t]*.hy 7g[zRKQ(5ɪJ~`jaYFfqÚT-9#'!÷چQwrNbݲ/-vFucא!ou(G ȝU/=ey]vMh+El]hN=2[^ <;Q<4hX)>)c t%Egi#76J#5d=0pwfdF*)=TJ˃6I; a;H CpzFa. LCY aEqMpwcˤ L۬E:C1G>FL ؜|M=M[=Ɩc%>w޷Ⱥnr|{8ήzo=L y-{E6_\Wa*XVΨF|6: > ͇Wr]}h[S7Ԣ{u5SxL {clg`[ p)Ͷeš a0ebqU#Jg#X6!FeI`N C1BU0-`wc~Υ]ETdbh縚IE0[?^QE~#e`w5ǹ$S2; /DKoT"D6$,Fi#}sV\&[iXYl[˓,;TTPqOBu&u16o0]ʉŸ6s U. oThE4=}CFK|Q$buӈA4rz b @躄f~@T6)F hx) ȦĹ,(, "ׅ^fL= 3 2yHC@*iH ҂q9ںQ '會IX3z;J&A ]1ܹ^/9৶ Or^#XI!c*rދ{,RXe֘p!Q-F}kOOeU+qS`bl`ֈn3hOPmnz KEU8xjqn=o'2U 寙hA8MjH+j y?71ҥ'(7b5~Ӹg:ENOO[q-b\G-O5@c Ғ]RO> dP]riź #Y-b7g|i\Ud<Wo(3>De_]u;4 uV 2ٸcw}|b/̻Rh] ,>.Y^Tuܻֈ " )F+-c*C9gGV$4\<>oguݯ@Xg j-ۇ(+9rݶ@hB&׹* :W*lake^$`ެ%XQq1J` ɿӦ=3p'{ fӡ+(by*@l蘕LnB+rT~.UJu!:FёwZGz\59m2 /.264|ԓGU7G|&/yCNwźULB+ۤЫfLW`7O;]>>шPFbß_]"ohsm5?r4@&I9W,267jcV pUp{i#R abt4v%B¬e^$O!HlKlrKcԈSy;{Γ9Mdn" 9NNQa*p.'f;|z`LFWmluT0I1p|Qk5!g^Ax gvA.+ /-"o&c?R< ~na_:q]bIaF͑F[^q~2pv\ qggl5׋Ǧm}4s'Gr枲YTSM<8];2 9/26Ϻ${H4/#_٫3H*~_6ChLC/a 64\e8Cq[^"'%7Kv\V}lwYM_?<mRag@ PAjf\V%;(J*Us1=Āzqzhٟ俇!1%{18/&kX= >Ėf֌yHfY 2H%eavGZ8|%_pSBeX &eh3VU3ːm#lcnp'>ؿeK( zASTWK, 5܊PF RԠ?08#C5f<2vn*T{ݴղR솯:|_|kNqxOЬQ,? I2.!TI+%SOœF:O:I <:]^6v8\N d?T,YtT{{?ʁ|jzTu+YlfX ާSuE 6qZyʠ23>zBݑBJ-F*9|2p˼"kHz|($,u˜G%2B\)\kYtg~ e#&d.{ITbm,h;o,z~ T epZ8z?7P;ݳ& T:"_=6vTFC>%VS;l,7?{feiAUT99V>oS-Re+?\N$JI'"Η1a'-d_0/elՂV2y>?Z۔f1.1~h$ie iwi4wA{nÐ*Nu4[+%T5'[?{G EUvc4Y Ja G9TArW?eN Wh,n_JKT;crkuge#WB̰ymdƄlp `:qp?ȡ᏶Th6.\sK3D KZ "M$!_&beZgoߪšמ9+HMo iFPܡbJ9^݁w\0\3E81$%1t&ADtwdfJAtfyۈOD` QbL2BH&܉!pɸz:4U Y+5ٌowjGW7+E?R3 S]~ǘ߼S\8F?h ذ? ض CG|g~/2V'y~PP;\e`[6L7'UߞJ؀$IBD"_Ch|RYm8H'<^O;"7\ WfdzX|,""jHs:< z<:'CcʷEϮ!v߄☥T2Pz:ڎE6sٽ2c3eep$N@r)}$ AʳaZ{so5wpY.40&ЫS01/ەݬ@P>ڛ[ R{(^dxY}uѫ% ;z=Yh[ ,!8An c p[m\AJӪ6\^T8(|t|`drfwS\)j5v6xI& 6p`j5y(D}&)Y͋E7WdڿSf2\DJEQ.lwB y"HGJf)+ny*z Yo8x<),%2lC;Iw繖JaO)_7Ib&67;o㥙~/N PyR'{8VfrՈ]behW#$67ٻ9)IaW# brۗ{P͎FimB y]&fr࡙[ 2ɮxdI GU*`0]q-)mey8.,?G\Ϙxsk?dLZ(BcFe#=i 4|Ƴ%#V{vwxutGp -)f sg}sW gu;nPY39+Dv7/l.D+_Œh]ʇ Ǚڎkޥ֬HJƻI* FQ6,ew'i{ ~j4qkbD]錝,=nQtJL=mA*Nݥ=l_wC$A;= 1$!Yz"ѪK i fRBZKr8͔RF~-7k̙Z!;\@oKQBS_`t|g)G'ott'+t0=-%| dS*q85zp.pg햡;"/;{-seir{ބj,a,MZ!P6 pI ]-Zjp!eZw8 @>IHnUE!e譄'tpU^T\Q߫ mޏW]K-ite"?Z(HPsk@dh㈝(t.F$_┸`3߽h&,3?ƧIC1YV&Z J]Ao3Wv-`a}e..Yhϡg} .w1iFv,PX0tG:l(|`&3`9. \BY)zfDlA{;ؔ^L <|.PLDv]YIn0azQ|7B;T!ZtN0UT%8bߕȌTg0XÅR0rֹL"Q6w[STU7e.~6%ķ4'+qYqaMia@c@,8]2Kohn 5{=xTَe}*ٹ}kK#gp2IQY,2P邏WX\6pϙGCg~biyG]͜ւoQs(<*H`" D?C;f,s1*opHsNS`s&CW~)o|dJY? =Ův[մeYYgk2UmD+*4d<E:b6ZPA۝KeKYȞEO rSiLeE:#O$[Le:+>t}Vtzrڣs~vqR+CI/vhmo~`6Q#Wjp+c؝UD+ i{V|*'>덍Q<5%Y5?P]-'uGѵp.u uۭ +"Jݣ=eB?j qؒfh C5][ز3 25+8֐-joJz{JDmUJN+YևlK):y=;+Fǵޤ2Aet\t4NAޣusx<{8&^窚ewz&dQY55=q7Kv8 T5$h$s *iY1DMŏ& Ҁ.4e~o(DV X}æaeba0+eY5 a.1^&bRޟ3sKrHh055nn Aƶǹ]j9 G[KtJ$\A[{\(ػͱ9 ^0'`+u܍kL*T!jwt/ IwN-\ԍjdBێ)SG[ܺkvbP[ BN/H@=4*绎90y~)qB7A\<ॠLp7|=؇޽RcAd2 '֎Tmv/8w ?W^"Efq0ҿ6FeF'[οQof !$\ڛ{p>?_ʣ,whOG测?U@hI#f.p$?ѝ֫~^or !^fCLk54RʖS.T='??Tg})&)(:<6+cZ0mS)A]~;9:oW8.!tbNOWu<{p jk_LM`CPxy'WK1<⠱VD\?6{ۄ"iЩ*QY[´New2,%ps T5yj3a/ )4>8X([XL~;{Yi.  -NHK )\UԾ.}&^~0aX//W ^$䎜})!*(xx;>͝C-Rg鬹!<*?̧&m sZp-v:^YC8b-JERHuOUE~˅F?8V>mn{cѠ1Q1 HZsm8%ǯ#5%Yu SRu[r6>E++9AGQ_"MgH+/NgspKgFh+n+"V1  듨Bs4yYI/u-Yr w]iNe30KN!wWUOZMȸ);2 JuT]>-w]GT^9)>: v%Yϊs]|HNM͕ X:;ho+]~Jؠq<"aN66(6A|+/@%oU10hKQSvТߴpLue52JR.!€ Vӷu8P9 N2?F6yNsa'-*]Kg4fg3]T ? L݇%uNQf aaa9c/n` k|Zspvk؆ʊ1'ycW#śBޘ{mQ=InWΨpa0䥦,J>/AI2{GG;P):2d\[5j\[\AF PLfUtR=Qn{Eݰ,U V~)TPh* .m-U?'߄> D7&g^J8 )VcV nRu 9t>i{qCjze tzUQpHf i}.El.',R~]s8=(ZRXB)Za-o{3d8pԁq~ D$+8n^i{GvEhwچfPCF\H `X<Άѓa5!0Hpg^6cĸ7̭̒EO>.6Q6r5Fw~!3v@ٞ|vq&VF c^¢O}NҮ^D~yBin8QzM(#b rC2m&}wxi^FXDCKMIAA"MX]g~rLrc:b[W Pe[2Y@G!d< #[7_d!-lM?ǭ.3UbHN9y3Fc!h1:{7ek҆>S8PS1VHB[ 5\~DoϣI[JATxP"֋hY޳97۔c-7{D/\H!`rT'%sA׫k2.εM_Ł9h{k1,a?L_iJ[ܓ{Ӣ6txt,q2RS٨E6 |b tkOb]Ue kSE̿pLB2Vp ߗ{{5\D~Jck:iy^mӳxD']aka\j>Ue`o3G3wS8"S9phJ>qI1Zsie8(Ʋ 4UG[0N>=xGsJ(w)1v22 GfC합sn\֍HL?$ӛGhnsFh}ΛhLRgu7 ij‘in1`(YĢT4DL0r]-qpd2Tùw 2&e]b]mg}~|S?N_0Xhޛ 3 q-Ƴsh/*IT(M{2}EJ)qJjJ:;H 3he\9ʉ7):Xg -8уkq̇w%]ƓڬŶ`qy {vQ ^9-,wqDӯ%"l+ho.F!Ǯ+}{(Y5$G.w#H%ŭOH2A'O_C=Y/knvY8%>176eиQBw$!Vu?Պi꿯kjz ݥEdwNE[k/Fa"i$ĭ3r[<~Q!Pa=ߝ=B=SI iX4 3[GT?9yO0ܞd$/:UWHs'E@@,˻7!5XH:nRͦ7}UQ 7ӝ}թlIHgG=^X[}GZ&S[з.F~4];!s>gþۢ6Ze/ Yn5ƱV/0Ml㮘퍼*>F#6- }MQ'`+)Glt Lo`KXsU"X訝"di $41p/{tz%5 dn\)q[m =-A,| 4$7va:A9(_=yه.fsܔ16&ݐ뽯,eu m ~ u"#!WMbO(兌rJ2T=)DAV!'mӗ/d $ 3Ay]0("y=fa:Zm4Dܹa]%MQqǙh˓-eQi{bbà 'SJU{/OdN)D9}S] HC/0a9[x6ÓiH4o|pK@7.9ӄz=/<( 8)]9Jܥ5#ԺB6Ym^^t2#|BKG| V-'=c 2]c Zҋí(˺)gvB|7gqM+polWϓ1ӝQoz}Fl!;QbYgƟ|}97v)Fƺ8&\Rɧ"] Rf}Y+1xeT3TG5W]H)lT ( Y4Lm q ?4SMVHmuՀAH&^)ٓ\%dH3A^eȯf6\^:alW_GS[Ȼ%4})GNwz3߹;++\/f18̕%Ĭ}|Jo5J_@wァ=X4!x< we{ Xz1#aγ0[ٜd ]6*@wެᒐAZ/rgn9]de3?ڣ$FEFԫjp8%]aׅ o~H8*-^.AئYB$(*{{FSmB mƑ&ξ?dI@I4'F/VrME#_W`qoѭ6{ ҌbFV0J!$1 6tW1 ^!~NxhF@(&%- lȚmG>"mS}¼',H.}L z}xy\4GaEL*Y8yG=E3Kaaau'魈wJ^ tGA֩ި CqJ* AjWk9~%JQs{esr+v F(7ն:|p*"bKgjZ)yRɂ%Rv5&i0\Xi|HH HKHbrigEw6!(ѪY} vHt`gqw a_0מl̈658M02=/L~k(mYAⱶ͡B897e2վa1$ $aӸhf@mS<:'2N詟'\$ǡ=T/v6StU/PH)pdzsŋ7 (qymϡH+OT rl b9=8z1P@l*b)qvʢBXL0^/MnX+zpiڑ*o4,/p؂]w6g "Mx qv6|)Ϲa6Jb'uTc]ihy&yg :CoS%$/8i-RDJ%ĴEBޜ%rfԗ\ (xfowFo#e~MTp@. E#pju54(9pǧJ|EOܦ!zyt]^7CDXP헰t&ALjM5 5aofhB݈HbXʞ^hy%~sIx6SȂtroOQ+b}Wzԩ<vo#yp7}7L#t:Uֺhxj'IӺ1|ϭt8~SuxʨpWvy ]"3mY  PH mSnyM2efV\=*bن4uinVض ne^ maJe $}u:ӯ8J$ ta$;GHm(y^d~җ9~a31(qVaIQ? gVf "Rݭe .lbfzGixCgiҀ_3 Y}5Cٙ޲I='W@$ȑr˽ VQCʍ(斨}r2؋F̘YEB("G|kpN$WYawF ^풺h/>2'dcH{ ~(V=V&pE2 5YF^Nt6F_󢎕 K_" /N9ui\9 Ad\T}_4Inʵl\D Zf1+?gtWP߃c6clҢyt8O)T[Qk{c腆'~N%eyUgj,$ھ& I|`Ol@`дFnlNAlXQXR9NoQ-(ةgq4}>iS4s@ rCNa'SJJ2\͢&K?c >sECj{QSBC7QwU["<})s>Xi-ԨRWO~B "rH(+ㆨA 7x9֝&0mj}˛p)t=bRvubZۊmtF={hkP>P$9p=cm.w$(ȪXڶt)3}(qvi 43xnOm`csA V #Z=}$Xkqe@貇k`D,IGW_dS5>ކNݣUB> 4TT?uԋ![p$[xa+1suJjt7Ē!fGMˑ!vM>`ѹ4_XƜ֮T>@֝=gkun[F @C!wk%?~ ֺѸ-ZN]I*U]0xIf_x eraj2٤ilL Vz[Rb-nG|r{f^^IsyAc 9mhUlvʾCA_'H+sL KU&HIZ<<*B<^YX[٪|4H ;ѣ=!tJC}evp!Զ."Fy$`9z=uC+țqrzbh"B ֑ۍm;]CB1"c?t;I Qe;% lM?d$-UP#ZJ] QoGk< '2e:7{*({R'0(0+jT;B1BˌiA]gmK=l_Mg|VlDŽdl,j Tԭ(3#@5NJ& ,' jwX/Y)g}u5"Ph[N2<)qC5UX . NҤOUC [~<)Y!so&N{DrR? UCc54 .SMD$ˎZ7nB Bac@k+q&~`VYh˞qYRtrBx028m  Hɼu}rbSYfCnPY5.f=$㬃meHйj)yUڝkjs1E+=Ć//7p)N'+ E(P%} L@)Ot (p 31P~w5^ކ$&e 5/:8lOm̶ Z9i1TΆ@?UUr7}Zq Hw#xqαtl\aØÖQ'FÉ>N&pMTìkgR/Cߢ2G) ҁ]۲yUqbEY*( Q3'fи%~̌֊)T) , FQaڻ`!K9Iĝ =8,!6D^ߍP>bLpf(2N:(]ΫE%m;bL9 q5E})dߘxji;9 #S?&ݢ? 0#1 SxT,dsMԈ}qUn ҡn 1hI~tIGʔL72W 3PᎂCm1 OY.K?46أ,QlWE]Nѵ- uw8lh͡1V8IYՁNw>QwL!68Dԣt)Əpbso->dSB C*p jOX%la݊3 Wіc[`qm4Ng~b޽ǟElk ;9R.N̯͐[ 2ortTq~Dws'WV?GM@7̊@4o(3>͢ƞ(@ DYn;;D*cw/97+M8*&*)lί%sӚHĆuVUl9Jtk3 6v1)e wmFmd?U$67)T>Rc$ʬ9T@x4XW*> lΡ|\OE]q ѼIՐ.`m0l`Kz!Vu;M㦽L swU|&^,Bo ʺP0A OI*`nܡ &퇠%~η ݋"*4ҠA=KZI, ԕUMSSlx]&=w@;P]%dIFp+) е]+,I5USU`JYHQ T3G.xf8Wsex Jhמ%%NэO{$w&'|ZNʮ-o&znm!c|K(_e u&)п }y"lP^a OZ+Z rH#^VG`wY??ʄpCQHUM0ב6L|*u6nS7!ȅmH2k+e&yмnuf$Y6)+-Qc-ٶ/:0A Ofݴ"A=M rW4 좖x]1Mv\W%D Q|&P]3ػ(i;XN* 0M`*6!9d&VvYz -=4C-iȱN]?hˆ΁ŸsY^:hT%s`/bOF*JA&RGk)D@ g~7ADnAe{F0^h BnPu<ыo %as.?}im|V,){s'/ĎіPoOJMsN.{~#N҆Б )-|8,Ÿ{PgšI$o }cÕ=75Gc~&c躪H}l7KgPhpFEpUPejܳcX${k"ԻyU;72m}iLpt|)=#0<;]w 9V6|D)u6mZi󑞿5P:kܚnE5>,`wc٥Oc1D-Bz89ҏ^fƅHQ ,%Npx'G1\s'?nEߡk}<ݙӿ}~:#]}l`ohB YG@yB@̂&ۖ퓥_^ P*"blp5Ơ6bu;yzwo^VupT(WI(psI%J =+D?;RJe_A+X'Rחsz=1kDߥ7CK;kz }5>-RquU'§ֺkYvwQ"ZW^/"'vivN % h eFNCP_|;+a&A|'1 m2Ef1 /BO/8 ]vYH^(o*+ݻ%/Niõt3F0౏ZkZԇ\_sx;a`kɩl%/ kՁO:ݳ5M!MUNpD1EMԕ1n-вoJcd@5׏%VP#QCPGݥ;ڏѳ fɈ HDF3ذ㖜0)mכЪ%%)_z+Q% lRdE<}@Ώ؝Q]tRnS)\:3ڶHPEqŵd(C(|dFgy7"fֽ i<BÛm>5}v~YMdpip:u'6.CUy J_J?3:r‘S HuԙF_ ,4k吺w֛ԮNzdq= ^T^f㧵f? &Htye|q#h0a:u5x(/rᆀP9'P((_ NN4CgZs-ȣ?B?@OYZ䰠+eKDGȵv {틨 *Ԯ;UyR[uZww01]&%n%?J(>Tll|`2" #u@+Mq`vI1tn/F9!H( ܉.sIVӃ[_ }YM+l]Q[rE5k =vpf&4h_B} #=l[s#~S9`5UACZ=@ Z:[Y{2ܡd@*T43ˤyiDxP&QU?#zB1KxQtNJ1摆ɓpPV*pCm=Ѽ^`Rc4ƶӑ46;a[R}s|=Bm#^D4WSEc 4gʻ%<μWc@ד~pX azQaڵ+G6_?! @+?y8o#( = @-cTEF%$CW΂ai]Jb% E9H\E^&b&N3mi2K$6,d󿵊k⡍ͧŰKi([b32jEw1hhA$+OB'f͑Dzrhxozbe^?nє@c5aoSKTM[^T xUz922<\CitPl-bd}[\v)K1Yy' 8A蘣1fH|C /GmSA Fz{?XcHGgwi?渻"p^ 77p$4WT/cR*²2bDE '!{R6N:>nK(>cAO݄Ⱥd"Bh8'80-8yB,ߓ+̱Jdk]3IP[b89 .1)XEm{O@klB*:hoFz $^`MP\]Ma-o8؇ 0anaLIW5Ls:s Y[3u$jψe\i GZ"-!bվ_}l1b3@o JjCdy_ޯPIq}I"1y٩?ӯ"Aj h je]8<g#Ae']l)3/\#=y8}|@W_Peo, o9F8=$$QEV8ؘk2ɝ|J?DŻg^F;!x]jR7>l5zYq t@Ӧ GP[0Xok0܀{KǥIll08#ZB4Auu9mt0>6WoSHŦ|9Y"Q%H֝%'Dbn_IK ΟgwXP,\0 هƒ!)z|F^H-È]%֡7^q*ud~ i#Yla \1'.ne7o ;Mk-dx1(6%0R|tV^++n@J=iarAQT"7iO)t# %gtGpeX*~>3.x轸aP/sYLז(<9[EO+P_5@w12CqzBTM)XbQuWe׷6SĿ08(NByy|a|9ϾbagEHd}Nի/K9e,b4~rSԝIVjR^O{-h7ҎtpzHjyGh3&=U(0 /LShoHCBL+͍RA 32CN]ݴ8t * hI (o~_XlhpOtMLx8߷ -5A|Xo YQAKD]6` ~הJK|ڰ>ڛ7YJqSHmP64S B ;YvR3~HxTߑ( lU#)3 5)vʜd2d#j/trV>eoD|4̹e̸0͜*tpK]* 5X%ev|ONNTqwLʩ[Hi˙C{[w'l@f'.{_(: =ʟKkj/oʚC}K@'">NRP;ʽMWVlBJ g@j_hLe};-eޚ],Q^޴ϴ/L9ʢN@p3?EDѝ R*斝4$E)&pK&Wsh#5ԜCLhgU< $w5ٽ rʝ{a>CJ=xNb@ e8fR^(5 i߭" q׺4fi/=X~EHcb@׾~}?D<a:ڀ7ŜD߃UQ]Pfb*V=/#Ȼ S~Bsq-~H?slPXj{+Jԥ!sSQ zTWYA`%3bN GP@ !,w@GwrpyP='7njk6}ᛮ閘;*b& *mL߯{g's4W*;*(wt*,y(;ft︫y6M:bTڨ0u"eυ,3?[ݝX&ע" Ȝ9_ke&)oZo@YRM!cX6x ®sukmW*o'XFi|o&;8ȨbM͓rP)Jcv5lH/~H9!PR;Prnz5+ [-soͩ#*]S\6΢7bπDNMCo͛$_o|@횴>n朽>R:ܭ,`gX57+C!KCgW悯"нgL15~XuB)>@ʜ*$.zJj6l=vqDV%nτb6r^u-O;'ɺv#V=M W.€cKPVq{&.]S|ͳORd5֤NIl 'j5\sZÍvN/(i9Ke׎R\.=`;.UN(@}%wg) ]>*v~WlpIbQ|7_HFy8KWDž)FEdN )QP2s8"W/(U^iZ!y8s#TWx)2ǀr-82}r0+'?a pu;r Q\9E"c2T-n6^P#i9 \VU!#G{q_"KτHp)#5h=T{v͆w+&}K5ڙsN2'hA#7h.:7߫c6g^o-/Y;eXk?oKLB]^gHp=r'$e󣠈C`D攘'Z&ݼj,O3p 4 [ CsB 1nJJ ve,DHJJhS9][&jbdoϟ%%k5O}y4,Ov6jp0,#8I5āw3l",E=HRtMEԮ d:16*=e DTV A{o +x>-[ [IU}r@<..‹*/`3 Rw;~^y;*;{alYvKAש(PCnc!{ 2l)ZG(=uubҞhCjE%cڄiϔ'NXWZjSF[_jL2w;~={_I%b)M$7w-ۍ>qBf_d>׏jpjM=ڸ|cByBN]J}y!W&[( wa =`R\AK)+<F(~dxtͮ1!.0# +NʔEc7ٌ9GHhFt ?^m},LM=Os{ .>s>Q=ZXk`uqf w u}9wmCR\Vp] t8q"I Vby gҀ+Y%ϟ=T)f qEFCف81.Rn>J3m7cR4 /rS.y}=帪)!fNHsSxk)d:3hNAX .ILbȞ\EXQsIuA1҈"3HS^t|S,lcձFb_QRliHJ׮/ pӦAC?ILFbrf _k݊B>ҩ{W;x?=;C}O6h7<+ywZR2DjR.hrl*xIt Ht{x8Jjc~@iktadMPAYi] td@C.0dRK`gzƀF) VlPj`8`<]۶s.X943yhC, `,FAOeKѲ#va7`b/Jla.ݹ uU?4hmԺE ԋ`U8L*^U$;H? Mrf_zO - g%dMX.ОVx 6eEb~U^'0wH)jpסǐn$So‰6Ȼ&ZhS,Mg$z2#}w@XV`"2@b^+iS|r.OX QKWo+▀^6)+5iG:za=瘇 ]-z%5Sd WeegO&'KY"2N O2ר Mi5l u: ߱b̑z[zD  f>2nA/_Ss*1iϙc +bx^"KޅiQP޷X׿߱6QXGI<7^8}IOi>GË`{62oTÀ@ct(Sv!i֨0.> ׶A'K}4[~ bQC`fӘ̻߳[!AI>ȜE*m{1cu1_åw\" T ՗k/4|?qs>s $+Zkt_[U 1h BΔ׫E#w_2!pu%LDoeiIӬIzj'}cXhڌ]q{yʃ'/_:eνyⴳ'f3/ϥVԷ>ve]" ="8+ e.ҐQar.wD[ҍ;X<. Af7乾Rc8h033=MEMw( ^tO)ٿ=ѫ |'luz|30 *_yWW^ҞrCx'6s'tli^Ťn%s{S`)8@KULI=NIBG'uG@osL2xM GeCmؠ_]E bysVE'CN6$6ɯ0LJEF:O4qE-[Lvu;ە8o~GOLܜhX*E[bS8:2MB:9Nww%k- b#k_=I!h!<"c -F'4:7:2c1(8vD\wjaߑk4'_./ƘC}XsY]+H}SMʯ}%gT/e&ܼ 1,Uх<7zQS1jhU|,}dsMaO4NݪY2-O!J;6u6͠]׷=$ؼ*iz016ZSJ8Tgu9?M04e|eL y$ /\SY!+m%Be?Bj~N FS~Vt*P9UoH+*&p[j\*iσKQLK'+R;`^WNnx+0V^p<` ˾.ð;_ ~oJ$oXL[IɗUϫU=L&K;Aį^IR3a{fw-PS_w6ev"T(‡!rA>fةEu^R xj&jOt1~IZaE"&晋AG*D #phA&y;y2x)kJ4a>,l(;}}l;1]ӕ‚hFi٫n(v}FkBDTY{=bDW~Eڴh(rZZ*ĮW5/-ϾEB4WIԷŠfctc )x02)i`̊t$UOkF_ @!ixCA } ) qSVꗒq["+ #קHfPٝeL3t9k00"[@j5S0PNF csxГG}"}ȭͧU6xmHz-C^&2qnaetF=yC*ˈH` Sj]|~[5&ޕ|7״7j|ǒ핺u fzԗZO5#F)pX|ⴉxPw,U&5ֵ2`p^rE+v'HϒHnp9M$,sb}f,O'G\"~#3LA̓"6%{˻|B2}HT"`NIzAipc3= -r\+}`3g|SV#0h€y۱jyI3'>,5wk 4Mh:5싣kh {9kJL'1x~Z~/)un#k/ csmVu_(Xg4%W"˱߂o d!1IIluI2M d)0C-5'9?#Q nφ0v$,^BlRxd1y9VrGe^2]ec \f:[US#EJ~}ԩwlLFcqc0RY6 .*-2͝ߨ@bpY%e9-`1,Ҿ"ǗdoJE22Z3Ǩb 0.~PLzRU=c'u;hy ;2mc/eڶH1;OW i+14ymd>4vǍ lץ>ZC[RQp8z3QAn1 BE`^lL=ޤWnqk=fƠuy巧YZ np\YyZVg2<ՙB܈4n`!"I-T3 $|YR9vPH#NC7~eWp iL)Aی$a $6N)6ƣ5-0V׈_:CѱȤkRkiUu  jD Yq3phŵ}ZzU}MJiU_yhd?V)r*L;ɵ`pC[kaE}EkYsN7'al gzi*)~U2xG@o?B̽;>Bh#P.˘wa])_vE~3[GM ssy,P1i=yWnki6 !Yyc`hed<3qg¾ { tl~2/ &Y Y7JiY= vF" ޙJjʓ"1z1xB7 s:ntzq>7iIa&/X,w@L;cة|8-x]I Z7rYV6iYNg*<2o@$pi1wY`KV`wr*u_Cch`uFpOT8):`A}"8> ap)1DYYvG+:n ܇& vqAŴ}X: !^z\䕇wwأ4xWn>E5auV tjKL'Vk;'W '|4l ,*W׮vI (S'pSu@ޖޯ>*DX?D3/X$=^XmS7:Gp2Gj]O7?~q ʻF&fEEMEx+) ƹ1Z}7q}?7bqܞNl)D *Ԁ7:ier]M#\]D/wέr;uE[8X 1XVEȬ"Ъ>ꓳ6vk@ Fwey )4'>ìI^C?Q<[@?DলxC0G0+zHa} aB!ep'h͐]a*>uLA{{ ފhvE|{V^lb[v"1"w3315D֖!Eq(M<TBI th j/*r..8L+YNUE"%uCtl EZ"ˊ k_+DrC)]_{:!?O=6@., e>\oe^l5rr*˫@+x颭 <\#џ6#(xαL8 436OG]HF!j-,M 靤'<s vTG7,4ɟ뢓a.g~d|Y ӱv~t.Wt=(Ͽ |~%jM}bDr:9YjL!6]OZ~!nčǽ{̴_ 9uJĥ~Ybw3&$≝qaO9e'Q~vaa;NLYcya~=MXqf,[,QhߛEr~*:$'ܵ%1In~r=|pӣpGjZ'λ#3H]sl>`yS}Q꧳f1`NֶQ6*}[s+@S|{*֓" tШ@Jv&4ѻ5OJt]AXJW p >"܃=8y+Ua`۟6L =@NR}ntuٲˠHi L;gEv `9}9Z@nGbf5gk/H?-]1ǂ`vMѬD?,2zhN&@ $;VnG=m,7~QμwQ>FQuR 3' =ES6-ghus,nKoJHK #+擸?6ŀI*\+8r-09~o Lrq>h(o66POWnl0JND`a.3X+41kă}AW2^NJPOÌg❠s6EQGn%`NcZz_H>4n:1L>J*A=ga|vh=o5b O45r Z~x}S"l `~T?A&?ô kA$ qSb;2ӤgpMnuղ/|#|%HGn)vB]y1PLGiV wc7z؏Ο4^(I,^|7qJ :&E/gr::3Ogʓ+ 4 ^Yi08A/ i;6۩Ջ`"S'mmyѓ#KlY@h#s`\>2Q,= FdDmnqSO67f'dڙ-S0?Y)QbҞA Ә<>7/.Ȏ{PHCb\ҩ\[%xyƜVHdlP\"qbr@&W͔ {Ν xmfax hIi_M|!x+oF{ coBs_ K8͗AS os`i܃\ݰY%°LMK EaH_9\P+[EwS8I_YJ" `\ *+&9k"jz 6eΩ/ 1m(נʉ MnfӚ=4c׵i"?r|JnKf :Txle>~mqB;2XwY=)T9Qq9gApg0~9}FN"Ҍ!}ieH&&|rW}د6W4a搩vnzT&{Ӌ2T:Xa>ۧJG+tTxԪ߇xϩ"NbMfl A?cHA~,v[,~fN]F&:h"y fP$h UuU)ǁ7x U֞=s٢uRJZ#u|Uwh z^GwAmˣ"1rL+y+"e JpHzsO·krԴ,0FQT¨U>D =]:0L2ɹ+ h|瓠ct yw|2pKl=)06A,`:]k +(sˋcְ@|>y3ͩ 1B_ƸueO {\D 4,zRa`uܧF}2M%wfzPw>6y0}kV'2B>܄4N/J b&*5=MԒ3^>@ķ@›CH!!e o 8E*3e2y"fҭ rqa@>g7!?yS*Dž#K6Rq\=*߮B sWg)eܱϧ5}YmuFCN5|i/YD'cWm=LF+ckf>]ゐl)QLbH^A&-6kByh-g\;Ӫ'ӧ{Am.}Y]^xWdh/A 4 -vνQՠUۮ}A :!1sfU ܅|]c96rok>$w+4hߩW!̲i:LnT(t\ …qD,: | GazE5CvڮJ}[; nYm6ӹFkA]Z$S hL GKDrB,>F#"F~:\})j>k$B[*/.>aPSFCC#U;tQ{;o^|(-g9FߠZu7pZCjgioaӆd`e!@aMo11#Fׯ%Ife9']˙bTUա 9DWVZ #"Sz1$:)9Ґ=ɉ Yh]sb7R7L$HaPY/mi| 8<(d gt{P g%v),' D!isaF<TyNXhqK>uoie_z[BMN@G+]S|#:[#'@1Xs6/mᓟif@M>񪥪!ZJK7C;vyhGLPS1x*g[ -tKrHGq=gk4LLN\&x<4҅uWwbm~D<^=%'}ZZIvx@R;>1q1|J>]>),- cj%0f*bmUY"7ɖP2hL4qv$Us' .b?^L߮X^.8v #՛X*7AĂ`` u[yԋOe_= o\ir40[)v4'W0Zw!d /91&߭dn]7*~wJR;휝lt#L5Z"۲m`ݿ"^m+E&w숍Crn' 7)Hy¹r~VI70#ctv%-T>x rW뚇hVk4z&|6cɄ5?TkV;kV]{| \d7SaVN>~-A} IEydQSQt#烿)SjP9JֿR+Cy)[x<U{ԆG| -q6h =YoXeQL[7*7JeM\e..w<*7!x `ٺ9Y5IF%JEx'QYksNj r'x!?Ccd܋gY){K|AΝ#/[1u* 9Oh]1s01S lsn"MV󋀄6Jɽ}ziQ=֞`5vcF3gvSL_a"AJ!Pp,dѫT?k=1#v t)ӂlMؕٱ2mHk:m*vi}-1yr%g G49$ll/M̞Q[jQVlo0 F}=@ڄ-QBx h3jBH0UK&޶hnH}pez/8JB`PE[nU KfϦʹ_>SfCo? 严K⽶FRpv:zzbbLw_~B~v f4|@#Z_6%p|)K+!-[]!k!5VKF7 [lvnT1)Q wW8PݭrhD_pCAl+ْMR}]V3ڬ!RcTa2*l:=L|(@tFz<Go=/&TOtv>mD#pȔj'צRi4iqⓞT]p*`- / #f?J8@Pä}];AVqZB,Tdp,u`@ SM;20iȑR _B\7-6µ~Mj|1jF)ixt@~N>G^D3×#6rk)&Vz1*}QPQ.h$3Q7=,DxSFߴ^=3VY2b9,3B[~ d  AS@&$$Lk%,+Wˣ޾%PƧqs8a\](wĞ3ůnl}M׽n-Q:wXP yi2ˠw \g*m+BGf#*p5YMh=rKS#cu_yL@oz, cXI)٬`A ?(læ}/.?Qqt{zI"PzOQ#t6wwHl_4:Hɂ%-W2x{-!`y=*tB-5[Z61OzFjJ;yrЄP||kS陛Ŕ"Bjjp@I8QߺIգpD3j\Jv_xOA{mań ˖!nSsds؞I<˅HjI@|Jz~]D=V}7Rx٦g* RYn#E*`<%>2zsr/w }ӥ.;yց~6֑)_ =oJR)hH'SelGz Nգg6+u[WoG1RS"SVk@ 7pk{e~`5˰.nKPVv9n[DU'۰taxw cXʔt*Ea{5.^pޜOyYr \qvrAYh4nx48~QjvֱBm-saqłyZ g =f]q1rkyf 1Õ4}ʲ04_=E?H})6V#w 7~.F_Y-Ѡ+6C*N蘤ܭ.V~)iǜ۬W sA2TWWĿ\8Dwĥ#7"U[E\9h/ڿ~F\) yp<9rLhBiQBV7HN7GU·T`}6TRazZzxLtlR@}%(bl~I«\ |#QPg#i㿉)Z}u#-x1UO_P'^3a:NZydJt f\ cڃ973pLvw%d#q`~Mlxק9Ho;]t''Q0tB>z30 {&X, ߌW-8srb4Ol!ZHfB` uv Hd]̧1}C$G=ժ,KU.C҉U'uj[қIЕ&rIBր r3,"#!SX1[^aobrNE\g=㬤?5J5xc[zl\vJtxf!"(u*3ăLNj &($u}y,2Wph3|K>CDB5YLG mhs57ەԽ8a@} {^̜S:Z4b/Wi~z\0Y:e_UaJ9XhKOѦ0#$j v$شwݠJi6Ѧ(iMRhY `F^Kk?7Qܩw%KpI^FY- HqW\]/E!Ce@x[dNk"/( *BrjM|uI9覌Hz8h"C'z}eLclF ce{TנEN]d IwGaD54=\(L>v]kVssRLwdMĶ9Dm[BY!be_Sa2eTcϤa@sӜ栰HPDH96ݩ&0 DVOhU 4d0+j&lZf Lu%Y#;FhէW ٖswyS/cm Ry0aF[$s2g6HQ@~ 1BZʏʕ|bp?t,|//zZ [b7`ER[?%FMרSd^w iojt~INytn5DŻCbüЃU<{*&*b;SF@+4pGl{FxZWY}8{$y2|Gp-X9BS\mkAoY \'[X1hUrw`uثߙC%4@"amTaXT,c:8F^K*mh8Di9Sch>,tcm 3dmi<gDZiOsVLD4|bV s_%7F0Bl`No:~n -أLzD)t XwouZnCeydc:xEyDֹͶE0r2TXX>U^.Z=}.I~ p%9  c/-ҬTPS0J ;`p VG2) Ң1yHB~l|VYd-F)Zo jo=`  Y5C){kY"\Ӈ'Jt߾_ƥ]77_*6)kDVU"p $k /.>|Zd+ d1m'NbQ/-סv3 ,%aJiAz>IK ߀.?g.;]|ČtL=L}RN;b,߫MRsX^וcBAD3+VYr0Rog"Kn!i]=L?s{ )g2p#M6|c`M9-Ҝχ5&946nw'skz[^t6vy|7['iZ~ KA`e tj6YeZ #܅ix#z>t2W/ Zlb׻sDK vqz} Zrڋ`{H#dm#mzo{qnvX౳PtQ^FcF(!9\ oCx(+Rl8FZan4+t9-ɨ$ K #\2vrJ5wMYmez{!bb2.j^jB4l <︺U[syg%kvd* |uPibXLj%Puf8:[T$ 7(hl #gE3"~[Qxr(Q[D,}Z3xVo<#9B-I80kŌvAiխgceaTieSfQ J<63Xc#؎n(}x F \/zR}h 1{j9R#"sUkMš2xj2+Rgiyss(\GjWCPPq_/Vo64)E8wCdBT`[<eTk,h /}a[Ve ȍmţ;Xm&INn.ha򧳽q2K(e0aa~)CG ͭ45EAG1SSPPnUL$/(ѷo$AuCWw/=4E@)>)U?W~AhW <%58uOځQ FZۮWрZR?fCP}eKZ{5d0XYr1` T>l͛֞t_dîu?qkIM4>$ê"M]zrF6۾D+ * %6!vuN!M?L3  kx֖U?}bYݗ÷>cW|[o8-n{v1L-cT=nhjYm;psi@J1n˛İ3$p#N"ҘMl +88ҷPGH VT_vb}e HJU2suV|r43zuUhIۗSVk1gTǺTRҳS`e&0=Iy=917;tl{խk]ͷ}dM{z`jw #>=K\0"ܶi\MUA$U'O!-[#JKO_7qj~xsTH"VNԍ;6gn2=gjiDglQ,tkX[\3vwء4 荚{Z~/:au}U.5Xȳd9x Rº֎Xhv!dBHf E* :<Fvc6B9(Đ _ "7HKlun xKթ)(uzaBV.!Cg.u>s/#kBC-78t@:+i7˫5lUM;eە#"0nw_OSkaE‰fd[Dge8\"y~Y#UIaCF=`^ZXŵO֫qK0P؈1A;!i@Rf}ɭg!w$+(.뫻5BnVd}*b_ ގg^XtF,cn<m<#:[@}L!|:M}"C0lVP9}N,nKLnN%~ JȮz/ g/MW2p-[(WY%&eW2'c*oaN`$-8MLힽSzVuBeUOq? itw0O(ߔD_e3H;MJDTzynVg$7SXggtxpSQՖ.1[hlkjK|.T}UGt\"M=Sjr>tz YI^gOw啟18IE; Gxf<ήwޤd(j B%:qi5/!YD(aH;C7Y iTSvunj娣rI[(,]D Gxo=eȟß} ^dW,_w M).7aAFPȪ  )/KYh(?{\6/:cA%u2Nꈖ=PZmhc[)UaP[03} b@ f-.?5qǶOX:ß. .9ͤYimZ1D)GkNFr׈¸x;6Fa<ѵF-RRKx^YQ1$v^ѵ*&7ܳX բ? @LNPt5j27k1 MR̛mM" 2pjͲNR̂┬dV5;-5@*|l(&ܒMڄT'ijx4'P@S0*Wm#W[ldw7>U<4W[r׶~an*J6[&["B/~:wEkz(9 3sp:tglP.[^K$FR6wQ4RS a(GnqMMtjJ4{>\z(d4 nOCܶGiV܏k8.}%ɋe%"Lt#t *|iomq-EDBQ| \61(E |Mr%MhytrH"(IKY_9LLA5.D`zM}|s6KMs%di^_B( *! ov?_ 0Ç=;.v`ysEmfu_I)fF!+< k@f[}RokJwwqd6QdK?JUrU/1f&)vrS{13D حd܃<МTJoM4vQN0ɁB3&;_Σa*О5w@ ȴޠeQW+".xE$bV@;!O[([ ܾR#*su7??\ˆ!vlSj웣Un6.w!QӚKF(_eg ?&eFu vC$$J \|W&񝪟`]@>&τlw?qi.H 4 iם]C;D w# (*'h{P~nQsF0jF,ʈ=H9K 7R;XX^!CCY~YzIlt_s`Q#mNшDŽG_͟4oqwbf -WْBiJr1\seM8_zކ޽=iP# ;q(/3*g9}e Lmx-C"mx&k2rbהW>'*#PBœ!Ŧ𡖆ŝ/\|B`X(qE]%,1 2#\j-Zl>]2677MLHNrJ1^^fvTj6d;嶡x^j]Itl|y$,P+BG^z #sfضtS̮t7ƨ5;K(muX<DA&C] Tl*מh vC?U2deZX~~<;fFX,rW2L&i'U]>LpyIl )A}b m9=XL!n)S% Ҙ,Be]IU8\7>%AGAcFJhre1;ڄ꙰4 nW~յYu^<_5r EE3@()7u&zsjY$l<#zĿMÎU06kxfC7͠g9wxoF^ʖ?[@ DON`㫰z#T[.e-ΛJJ@kPX-mΣ`D~` =FYLVK.1Dr׺j8:$B.=_ϕ(ϠψAb)Yh*tS(>V1';A%4͚>1^3ܮ#7"mzMT`b֖:v_FZ__``a쳴kxe΁ٹHCa W.)) 4cTOPQ*.nE*Gcji; ']ˍz64 o~t(q_;kh uپZҩs!)h&ToOʊ_DLs4szVgHZ#bD?k8T 'd(P߷y)cda=(Ш9(^MVI4^[CL<0" 98Y*X^ze{ᮮMW3@v>Ă}&T;bkJ3Ψ-W~F+z9T6hC@- ;*#;[:JS8{е(1dɑom&~۶Jfb-Y} [M|}R_]MY#R o`i L E 7b7z@Yz\l fm-H}X] ~nվPxCqKV<}v`!^_Y#"qߠ|PUIL˱iT Лw]ʎh 6*٭˂b _}=DKa p%yܪ6e e\(!WjuPCX쥈0P:)3&>*5)㈂Yzn`WfoL!?2N.P>tR c&\,;iL |YͤFI =QFg }5ao $U۹=>5R;\:XPGߋsc##Q 7Cyӌtk>cT5#uMGG1J^OۗF4\ h EL{;y9rD]d WǑI,$_^ pmjp]"YGSՋ|).:/Ї:E}2,6O?k<=$BR|c rJbIji\: ?`l>UͰZ6iz]V x;Gn^PI7BxYK[N D8;E̛3#p,LX joH1 za(|fUw+VWCQyh+(l  X#ڋu1Wq]>A2XcD.Q<<?Qj΢!`.\W{v'd|mFb䭰"xTZ@њU@$/Xi3?i;r!POlIKY꼋miެZH׻Pu ,TV(^$I`+Qm̔+*4EZ6( 7\؏MP7߹RSQGG/ 3PrZ$&# Aسf{kV{@ n }:W3†i=4rH4hΗ QE2sB:#A cۃAY\ 2(%VO8T";9MZ +IV ّMq LzI 1H|k}Kޫ&uLZ3w<%f(y0`K(02/_ #r\ 0k)8OjYVkbvr:q5 S/[]4H&WV}.Kf{\a-ʈ_9b,="=5nqעjuS.r+NzǬ`G*Ԅ[Sh=&s=A5Ok5Aˉܼh}% !ݠO 7VԞxwp]vsn1>PG32>&B9.PH˿PMivܐM$ :E/sT%Is('`@ ͧ!^Z;$22@D586(䄬͇O7>C9nc t']34x9lS TTIM=^#R~<چ" =.6tc zTvиw?h[⽤&jkt)S=@됾_4jS0˓p$.`u5EKhxJK%XRt ki4KJsoQYGbV=[-+7I)ēlVn]=QN2@ܔu$aE.};.Y}y@,h.⻀]HE k3 # K!/P#(>JApef6?-CWCE='L떕w2u1a!X M\u:hkGGK$E>%'kLeC͑sGLkYZ*jt F"TjS_Փo>6fA@Eɂu ט~AtCdbwI 0SWL$NvM U"amIX(l\()9jTDqUʨw2i [(E|yn$ʢ5c5WNh8^V G;PɟAL̆p# 69fV2CwZ=3Nۮ]Az Yj,dt~n PVA# sRGw(L-f k]"jmwV>C0XY7D|sƢu;.jtSVlmm tXe0h?L|owSpˆQQj7?۵ 8ve. ^zD+i8MF]~RC{}2u".U m|ߞ^!TZ[1F csU/ TSA#X,5<4ȖޗIjl1H7fW>| 9eu!l?QN(ִ.vX1kݿ~FFD#ܻh> Jv`z#C7OeRΙǖNo)bP12i⢈ŜC$n0r_mjMLM} wΔ `n5f h;ID~_-q]rw'&oeI>"2fܝOp &_98nO3Jx7 <^.%P}}16O*ZY6)[N@1[j5iSy5Ui("ty2)2탵w'h0xȮ~[6eU$wׁSF՛QinE j]t/&RWLx;XcV: iٳ*~KMĽ!fsY_0Z.dTIrݫ|U"kMT H㞩,.BIGj) eWf'{YBG;$kI='pAY#^{Ȥ;'+W5Ei WO>S&a9anNcMDhE7uKg4C<dٙ0uZ`0l,OU&&X$=$QBɫJc"Ⱕҋ:4&HP AiucVdMoޛC#aRִ 5 j7Jkmr~n(ibu{2YisT?# { z6u yK +ZVF}:2}`ZL~VɥbqЄApKYM< l0nG- ?}Tz!<膾2 Qǹ =ܛbq.=>9UnUu=fE'յ -l͡TAO壾B}+bpmlԞEעTޝOLء&p0}t7x/~d!Aq|I=,bs/QRRD\9k4:,Y ĶStEViwOD(d\P!qUv>sP/p,wS/!pĐ[L#ʹsrM UCS"6Pcٓ. sl7g /&q!X XiIǼrSh>%:={uIV}i]H. s"Ė6^Ʀ+wOU[oo\J֗ 7An"wl1hj.`mCV #rn]wA ~& +oROw=c;~Ըg),(9clf9I,.S~vv@L%dRKDN[yɀx$U26@K2 'MvGiZ}~8xj#Œ[![b#B71W!oVZkq-%AF Wa醲} +:U9cz YWx tϫ~ Pl1U>Bޘ`FU1k?H~ Wmg =v C1o[`oj0gc~e.[6FƤL0en o_XQBDÅvJo\W'[[XoVn;L4yLOXў"c-#o"2|'2 BbP6N 즌S/uok5V*PuițA!ާxkGܑW8U qW3bdMŧ{!8Gik4\TU5Sb-DF$ =K)ZO9d,d3DRIw szHವ=<\,>@ĺy@n^1*zR$ZxO:N[^.]^s g:I6 9oq >qLJ9VV)i0?V @e L~TYttwEǠBZ79;ɜ NM ׿(4grU/1(ԭ #P7C&Լ57q?mlqYi 0=Xf9 T4P2ܜ50:a|nSq׵Yrã;7PRu-6@oջ]=f,UPW\Z^"܊u~OC1Gu2N !=N2<-}I^|u'ŹC\~Oڽ@:ې VS0J; L0EFs|#PU`|\W` L{llհRHrv6.}KpalEً%]̅OIٹwK ش[vZl&ІO:x*0+ۣi;NIk}erx5XvvG%]_`+hAF2!>:Iv%8L!lT~YbL3}c'[i70 + l8*09O±NAG ¦RS# 0fS}{ҭ:@[vUTi]uھS*WIDܟ~(*um/þ'!8wLX2E462tP{" Xxt?4~qt[@ʪlxԎin^W;iB_/CME-uT _[Ǝގ{/;]2P_eU*)FEk%MyT&sBD妏>ڡUh4.|w:2ա&`Mm04#t&I6>;+׀r:ld _xER(%^{'`*$6e3 z([C^B2 =fAUt5{_oUD-4n El} Jk )LNBgA ;Oޮ%80C0S7*Aeߵ` I)սaz$ƾwrCѢd (⦠h[U$<%-vĿэy0 !fqWwwL#:yJ*b``x={7}QX^N@D~$pc%A֧vZzB~(I% S"Hmb&Ų7&p8F}wб4ڂ^ YŗXۺ^Ɗzڧp 3mۚ?=Ɓo 6V+)v?&#a,;ExyόM_۶0YKyyq-ãE {mn+pYfLKpN:f |@ gNȶ`:M]D}$i$bgDW$ |Vh} ӎu=1 t@~9-A|bKZꔆW,Ȭ2xw΍oSW#?ouڊwV]oKxoG|ču_BÂ} _j&)IV۶JGectVO~ W-JDd" E,|s82kÖf"Bu2n/v̒ >Y3'Vքj^:P6vl~ұ|Iy{pkÝY;j*t P>~Rr'H&+_Hщ]d#ޑAzC'gK=Sj .=%-e@kE.=Eg+ ,2/MDkSVO}nڛȉ讴۾2bp@FRw$  kTUO^{Q[)<ةI.4e'QsYyy:53H'nA.r; -9 +h>-l75^9V̜q`ɐ <ZP ǽ4=6pE=lrwV B幗O)>f^籏þXGG<D\I;(dr83ֵ݈7@ ?vAc~%soϼ"{~Ĩ9L{2" 5EՐ&=TǟH=ʭ,Ƃ7 s^/W14KьФ~x3z#T<6]N\q4VUK;̧EgOOj $7f`#(G/!nXˏO K`1 Iuܠ;Sg2({= JE+wVMpbf_xFv ƑG7smčp$6ܫoW 94OZX|@*,u7 c]H.u493 wd∋=9iJl!%0IK@~om3`4lƟEչWGv'av9s>d.yY drgxx`~;4+i/wfĪJaZQ7rEtDjZrRty-7QlrL;c[}&؇Ph+uavi67p&YkbCvzɀ.^ p.Nbt8Ç57MB_1P"~( { %\|7tE͠q/?J|C"K$D3ܻ.QbrVr97qckjRF[."Sj`?yQ9@}3%R׳p8U+, nX"K-Jh;pN54&ˤWXHtAR$p`_]WA$da@ZLJ̢đ&=-#$񒏣,Q(sīJY*n(&ӁHJGYBsαa ,X)MG=WCfWBBxKȽH`ijys#vS@#QnƪȨv6mI.7^\F-;Z!\AzՌ I4z0|4Z4x2c|П`#Iv\q@ }G&%PiLM4EIgju((Gz(pSãKA2[*VЪ_ڞј1 7胩uR}Tp.S >EC 0GF·!'WTAҋ^oV|GY|xn*HIنgZK.eq{օýmJC,A~:J3vƻx= XKy:v}K5Zѓj{&mꛑ>t,ӝk)˾P9|J! DhNV J&B~ݲ\A*tVsl~0U%,rAӖ5W37\b_E/K5ywSlc[ qIƇ 0e"0V(bZf,)l"ˎWٖ[6Habx(Q\>i8&>@\t "-[X_33\Xջi%a(C[.9Ƭ9.0C%)TD -\=A\7}ޯ5&EAH晲Lb Q'0Ȟ@"I`t>iwUU p*XV=IROH2ɟnӟ$Ld/YqnBB8p+"_QmG‡^_JŀDBURk1ZhL)&ꅲąFv\I]#\Qܠ\ZǿK̳deK?. ƒs1 .9I*xf_jF]O ZҎijfov=j ܧZY|s2ƌ܄ N= JY[+;6E1jw Zh SiF|Aap'9C*oQ2j lQZ*nm2KPrtXÙg <,F%j(`j#!=PxxWG Tߘ:dIp.ՖPD+pEhnyƴaʪ@$}Q܎v0X{>%NdF+̌"c;.;s檈B Yq:ghٜ5<^޽U=mG}]jvp)y;['EBL3CkKd5C\po9 \c2OoK9^-ʌZ!; 5mވҔ=RDf7W"Y[_Et12MhQ8-iLh/$^(0EDN%jePCՠ`p`cf07ϏLe<$A `AWڛ;wad7,:2Hn'# z_ŃJ^Ct-,{CXFg7MXό?頗]8;6AҢd5W/WWj!𴏴: 0݉Dx ;.- a+Hx9gEA31{W1w|Q뾁h`}A +ڨ"0ҪH& L2%MT`R9V^S Z{ C,^wXԢ.+d`B7߶;d2],oTVI^`avE5~]Ws mEskhP|>ⴘݮhL1yT,(ͱB ɘ=6p -V; 5==9a6_ M|A BRyHE| FzѵY_3p|Yթ,ov(ͬNJ]Qb &@1 6"3853gMQ,Ud m:t" Gѕc [O!7gns8ӉiTO߼f̡#?+FMKYn}^(.(lnUaT 2$[^v'&ZnYW}!K.y5:jy·6nk!R8[K./+m JG>ۊo12*BJdt7$ xJT&W7£Ӄ#kU-_W%DV^ N툢UlÇSRuشziū]\u\dz]!!izFBKb!=҄lD-5!<$Zq=C0U_,)SW-XY}R# YHxտ|c &PyIj @!*2/ÕR\n@vn;ɫD\ @#p;L8EG8lOsxV}+}ANos{wn F>ybڏ'"_Cа9 !YfuBKCBȋtP Qhe2-Ve/A?*'8aff5-B^՗<$X2Xe<%uC"8G^caâME$G :n.'BoovCSbj4"xLFwNʳG uR2ǰɴVթ=xy\Tzmï)=45$K!,mDZANVVTEsi%?#%H\(+t9XFA'+n;5x 7bJbZ(f+6),&zq '#LC0xK lS7EUxAJ7?S6T5߁ʅ'ڐ7 ;&8iRW!8}#p*|Ј\§:*z~ {u](A2UKX#vz ʾmơ K"1 wcث)KU5^-,T\3 '2n5]2'"&%BQ5ҎlX^f )[*<9  _)z Fd+ $rXSܗ NߊK5w 49H]WٸYNsRkS^ A"/20o'+^%m׻iz#eb 9g"Ӌ~3c"~r*P%`na1A|?lkrhaV ~ٟX̡ KNg5Z (gf2ЉxiMfu֨{(;K~z&sX];y)7Ag*Qtk r-uGK&]<2arEL1ZVϸu/weJxb( SH _c))œe0WWrZz->Ld0r' - 0f\T %<6{¿CFTBTju uA#Luᎋ 9y6|oT r5ccb4U^J{n$%^UH}og UA.k^v@{ u1WbcxFDZơU_ΫXvoon/}Rn$Cw8D+'q# rqOU=< Ը gl ϗk:΃K2p) _u &jf5g y@k`ªLK1x/pIp{lY)2,u=vlTuCpQHZpH3I<$ z$.5mb^1 ٌXC~BgǴ,Dԩ%-] X1Zht3[ c_\R0?E{hԑu . $+F\1\RW%W=7 ZdIaiEwڂxS* e}HOQ @=kqSŰm'6lD4Nܛ:5]kPmoXUz{s)SrRYu._Qe "'O\~gYUXgP,Xqٓ¹Vi%`F^Z8E `hTpkczMnd8wJ?.%̌rn 2y.]KaYc{%`D$,j㋈DOP*l&`~qER\̯TŁJ[}9g^ =O再K-Dh}Y$E_i9Yi=V n J|Pc#h_*LeqU3dBrcp>iyM1@:Yns)$M$L `򫧷1D3QYn 2x7R_Qwv']Ĥ#0ÏxI烃ٙ3,9,?&ꇂJ;jVۖ8b eCg2&( ҙkr@$x&ϥ!Sk}Se(1 EmYdj<z&L3+DAeӖvl3oDD#s0+XbЩzl!&AtI ԡՉ[>YjLh|4ywlւ>hehHO"٦&|9;3#LNL#k7i nи]\\ܷvc69UL #0SH>]t96UGy7֛ ة_{R\ tK|x^O3C6AjH]ճD]zq>w)Iµ<Ӗ4hÊ wjRu=A*HM*pg#J#<ÂnvzنC혋 7>Zs> ڸߋ\"O|}yJ' A5k4c ux.9Ctpq^L JuoxqTPTx*<+%e5e2c(ˑTQ ehKY\5SĂE;QS9h06r$x63^l9h[˂0$Rm I QV!q!ޓ22!!@˽T)? tPK} 0I[m H =t ide6ipj%c\B$$0R[}jܦ関,xo.,iɽ H xWt.FTGuLWkG32%tʺ"na;iK>|];.si3 ZCJ:XzF.u54&0_ῴ y˷@+&>> p5TJÃFHܒ4.x==xǞVM-ϧ]jҁWbI}px_^<flլ=6t.ڬSޛga z/>Hc|3ev T#omoƛ0-›[d@'VĎ#22Q 2A|vt Ao9nH a .[rH* Ib߹t3&_VQrAyO-z4ZP~ tH.f{w!5@Sov[oE|HGߴh.w sHB +X}ZXW5?dp2%8ԙYNcSe#{Kc`LBgJQٲ:,FZD cLgSE Bc &E>F4.0T^;)!meD@砵sEWF' ge7͒P6yhXUB \.ץiyXBצDL6p5ݘ݀E̖:=;AB~e0Ta~f|fy6jD⭿MIDMM) 7}JTwe{$N gѶ0f+TׯC-vb7;OQpǜ| Z&4gβPmfN"PB&'NUυ*߇sK!H! m,OZuܤOwep aۧ>Ku}a5m;GIcE/7Q)v4sk*TF4p+uUHi[gmys @+vO|NSo!c2hɃ򴣵KϽȔSLkU*?[ԝ(KgoankH qg/ګ aľX{GfDEa)TC5EIlsqݸ]Jri59@Ͳሼ7,ID+;-/&= f^Ămc|am},0?v~ҌJ/#>$ܬS0 I)SO՗wTxg׵ed 8]&?YQq#-{O$gУaՅuVõlV0ǚ U##g' 7\8ӭJkV Rc]<:)2wށY!uK!K&ƾe_Q.Ė{3 10%Jx`W;g;6~$7rWZ@N]햌z KeTQ%kǟ#nDqӪ{H?&lοU$ bC/TC2ζܙqf-_]H#JA&O|ɰGP4j܅:4A(Z> y7niø$|Eȏ7T 4 ?L,*rvOr n3pC!Y>ԹVwcoʓ{.ԩvTűo=Rj֌>9-GLkHBH} Zf% yAV\d5(.28.*S a߳N$:mn} seC%s} 20:Řo5ĻJz'O)l[`;~CF3aXlJ/^X}4) LߙԽz@|mRjg0/{+rٲ|P(ʬ[J͛Ez}{v[UQ$|L# vMR8ǯɿ́tIk{~P<摢t1uףkNs0"ٕ+1+Xolµq]!AWć59)C;4?߹aOR)էsF;CRdVIC#IzU F͎M7>>~1 kbW!~ zlzoΗE~qDr0\SZgv8ذ4"8Lb3JJ;}oոoTQG"W+z(,w'z R5J "Mö8ճ;!@1 6j>{\,Z|HS!"v@~z2TӋBfAEld71-o_mvt\,y[hLK8YMۋ+\4uu^̖]B 4; hu6gSc+4(`Lwq D#D1T#F*W,W DS =<)+$*˩p҃g" Pl4N2:B0 fj(EJwoG9XlՁzh@ JfG/jmcfi+&}:d%uz`XCeoR`qTm v/z)Hheu%;pb x z}?uyF+q ^գ}0K. `bM`.x^GLASq`Kίs8H2E?zt$S8X^< ~|+#-wr B`VG-޵2P>BW=Ő/шSkziȃP`en9ɯ1=wRuun>W 65U+M_[:e6.,`ړҏڮ|؊d!n_ы=lL;s:r~yisìJ,lz aQ8>C!sS{Nes0vQ fѱk13"N\X=dgei&SMR ~Ne>$+y&޼Tf}Hw ʋr}t38\_p) {OF>YJUYξ$!_N쎂")҉8I˸Q̱$IQ{бZll*x6o!r&FI,Ӓ͊qYޢJ |rfpu7%}"kDbA6;C\"$I&7zyL pB^K|jCN lF]4$9K.CRd! %xnTГ7fɁ(AbxWK⮡[gymo_,`'aH#PݯS9':ҝWiGw85Q{ N>z |9x(] Cj}F+҃w>^ͣwdj@2`pRJ+U؈bJ]o(ژΞx@YYnŖ7ng.:L~yM}8U ι Uk]@k7ʤzAdkVd# DwƉeݵ`=#s/ mT WjO Y:ۏOq\ط. l"q22ݿ:'] -a4 j,L:f:qY19cȔl(et@ ^ة-V> lC1xy?r)<4PC@LeUQ8媌xoz YODxI:*Ӿ,~d, . ]%}`p<衿z=Nxq%ҴjQyvc>{Quad׽gxͽ_٘ZCFi, i_ѧ.mr'DEYW*UKA|L@f7#Iݹzָ:KS;)ҌG׏p"ҼBF.d=<Orie* >. x^4l sJRڀ?3%2 ,jXHƯrzr[cpUӪH}Kp:IGcyvV Mq6, wK.F?#>HLKm|y}[e(:hW^j\ŋAL4$%C_EpIR֧ H&ĵfA}4~?2>㻤6X<=t{ua*J' 6hsLS`h{nāup\ʽ.jG<Fh"LZYD$M -,w'rR3 pcTn\C%bb/bvX+nRC~KCf%\1 *kͬRi!5&g? x`f0u [e'۾>ѝSLD}&X(h8pB2Ph Ut6_\yA#PжS=q}Da{`(2ކa`(FMYХTGLUqSّȓ*<,ktLp^ TYѻ.AZ뵖0BI\tW56tA)WOf)&wXe8Т%k䍌3F@Gs qX ,\<秲M6rxW]'R=㲠檼E}Ѷ܏q(-,(oGwZDcՎ qAڠ ٛgT( ͰKQC]cBu^$! pt_ r+vf$_jl9[LJ%Юd HG=wԿڵ1U_Rئ5P,c_sC0;?Oj$rgɢ]V ^ɶ<Ď{^)DZ׉-U*0\ F p峺e/wKmr `D,cdv?Nod "I!= 09}ɲL(R9fI߂QtrтZyb5;iV w W*e^p">2r}u'l0'ډ#VTyIg+D뎄 ,]/#Z`\@c F' 6n8h,ֲP3d@#r;se^x |#W *kgbgT:I@1P;{ϽK!~/*(73eHuyY+] հ>? K!OxLkJ( S Ӭˏ+4%o&m7$k-u@%6Rp>Ԋ~[g^^]/tkna&jg$-(FJ?FMп}{:O==?S9H V-eOp!CC lLg3|%wwir6PT ][vCSCKO?Yjr@Х3;I~úK7$#=cN0YP-K*tZ9"wDUOy>,fѥ%[)wOآKauX(LЭEb`υju@f.P哂2* #$đhCV '{v#j7FG;;kwSVےݵ3ӄpIT Pt.,hlƄw-yVy2^ %{ep 7҂êÊ[> C]\mrB^pK%ړ3^>=.vx^'q=qNN?4*Mз0W\]0F2q}dnxp?bLH# (~v^ֺ+0.VBmUۛGC#ANUs*oҽ ;|lJ2m ̒}Nbs`JSg:]M*,,+>]@}Ce_AU-"W""H@:^AZmqM6߷Sg=$b{Z}'A&`jKkTyq&Rē]D,nS?.2ÈJbd!`?b$eăk"d:HT| #ΙM\.!1"L`$/4AZ0?BUgwI/ S>k *ŢnO[#K]6ˣO]ówͅA3"t"tK](U3DYm ޢ}k?Ml{׼*+ͳ\ B[ nG9󮦮p˯̤X[aЈYCX \n;#3t8NuNYtqgD83x L:G{Dr'4Hl+}n xxirOWHF%KIfgw> 2wz]!FJ=Ӆ-9G†?i"fjVZ_QI#,TM/@_O 6_ }^_b6=\&3҅xDbff놇(RTCrPfIƢ+RkPQvwQ~/^:D1OZ]WCjT="Z{_f˩*2d_vqmǀgƈ]}PORE%t ̛ƳlYhM)L06|0#ys$nY' Ck~>nֶ=46 d lvrJD6E;x~R*;4 %DX5d '$ VcŐz6 Pʀ;GK|d:! o~ȴ{BoDWJx5 ;Y4tafve޽/RxP=@N@#lX/gL$W٦=b6E^BSIjPF6N?mM:pex3冠XOidwXܐut7zmk (٢M}"hu[U.O5p3AFLQ1z; CتJx1t<ǐׅ6L8L;/0bBl@,0!Ԣ;z^Ev PUl(4Vݸgp]W)'G,呓-T6ɇQ(x ĤCwd(g T+qzjYfCSzQ~ C#'9+\]Ŏm|{eNhYL_4NAYԓs6dA/g4qo.P@7fqV5}Lq~mEtqqvD1pc qΕgs\dV{jXȜ@Q d' XAM*z<ۦ3ɜȋI(ap ]#cHL0 CtwDCu q'*;ȩt,2|uSC*T+ x,THT)̘ЯUH{K- :kcMȑr1ּܶ، Ӽ=U7ņ(IqcHƒ)XmE@?)lx<žgG4d4s<)˦ɋ_2ޭ7yc#!KH vA(=uî~$ka zbzhBCYR1x+|ox;dKn*fˁ#5މ$[|5b ]n_qq#A&+04\EYOgܟ7: @"Q6QuacbƪmСޤ=:,,r? 8%01!J8s='5|M~.B /Ԯիɜ2_ݝvQh<slA]f:,|ϞE*˸x>BBK0:rQEǧESH  0Sز~9' Qs퍩7l!z&!wYv֛J25ИWa7eQ1g#@>K^E tG-5٘?y7 dݔouA*2| Vl#{$τ zxw/949hFm8B$୧1tdj9UT/bsX},4;л=0 2<)"`/I]Ke Av7Z /ZWr =C|q%gmAV __J;υZJD/Ǜ.!ڧhy₻@묤&ۅ֝^:D"0H-F43)b|.ҹ" pcu%_(hCۇCκ#_M̑TX-+N0ِu5n`g$Dz'u"Q- :( vs' 2c>%pxUe땅<!m@oD.W"&$:/ʚ,N0"Yq? mUhۃ摌ym Rq_S|k%94cl9P> :БV?OVRy68; 3=/ Mh.X."ihELO`6jY l&yΙݯO%-\gLN+R#W}MȲ=jҋdC؜-қ53y*=R{LW)k;jasdG4 ͡N.pt=b1F ^_#Pq[;9%u5V@  f-7ar3ּOKåd8Hy؊${[wZ,՞k3AD}#!,.YT%tdR4_tA)*( =hueE[oDf;㪞 +s"5PvdY9@@C|2JIK>kiX3B$'t+H8O~'%CrH~ķ}3F!AotoV#] GqPR,u, ERcTK嵷'NN{i+<{NF-H!PI Jkr|S.ICBK0%]*t$3e%KVeƁup LtgIlz%-ɊqeMLmqfXQKj~;o \ou/ZC=*]Bɋ @{T´R>eͻf׌t&L6y{}Z*N-cT>bzfP_b=W =oGOBDiNXޟQT*sXr*i %7bҳ$vzV) rkD6{R~5+G: 6-r"98vƟG<&/mʥapRڜ"Lr,AeMBiIPȃ0?ӰẼx+3Ow!_Y~ATSo]`zқer;bo %`$- A!4 b9T>ҵ*'"NOlPcwj減h̼I SICNFXDz̃g9D3+SZ2J|kȢUbE E_%OQ3~vWoD%{YFЯ1}tm͏RxSEv|Gp8rW&.U^hKFC/*8Pb%:R7#cXo؋JeKLo1=\+;%Kd0 f _ee8b;;_!si?`T]Bcm]`ӲM[4-<E[ MMګ/kԓl 'IKp "a/>Oi{E3drh%sJ-DrXP?:0k?Lf$Dؖ[& /C w,ӰU!s^^^ѓ|rDf~=rMC h-kM3t NELcl|܅,w=a}ʐ|Q`}yIr< !cH-j$sF]"_oFl @^RKh^Z'#ŋ"_2,|ɘ{6>lbvbJE0rB23=RU$7sȯ u;y  ؚ@S\4NWpP`/KɺЇ 4U8h%-2K~ .}L ]j5~]Uȸ*},=c w_-6FW H^09'bZϸ̸9utXXY9m1􌽋ZpHpqLE,m@= |=#{d٘]JSqTb 86f~ xcAnD⴨'M*EiIJ3hhz،ÐD%.m2Ҟ8tJmKruBrN]B TB)V3Szʫ1(%L@b[L)RBPy:ϕy޹S=B.]? Y=}PIgtLJGLY{Iǃ.9_yEZW~=w&n b7 S! }4'TJ6d\!fZj(G#N+6q[7UAJL3f,dF9~ _]TOO,cQ%PPf\!T(??BS\׌G?Twۍ8mR @J6Q .zNP`)}x .aUH]_%AKļݝdz!1}'(ۨ6YiLs [.~9(+OeBx4BuUVo哵N\.j{Ba9.UW7{1N:( AvD |T|=s-MI-=O ʄG ^w>tOy/i0GPjD&7] N5[UrxqXu{9h I&9V>*iHrڪ8r-}h=Q8=`>ӏ/V-kQ, ĵK[(SHOXn1F')Nو\-I4'P {IfEp}-<UB]ʒ0,BٔM2k05':0"/Dҩ 5M L֎P]R ئQ/?|\q ڡ1|j=67 Ø&w|3 [䨻!/ +~ # [P^_.| e3uIB!R'v3N=Bз1vL L7wq'I^n!8)o=#hJ>2-xl-hoYQ}lHs._,]Ru*ῥ&xhz@D1&!T@>{7V×}.(7ed K?h܂38m1)TN'xX 0$RڤDZѩ:fg cQ%(-.unU*@CVj7iQ2]yL'}l4*\L}x8ɷ <찊ZHpf/D3b q2J24 j YNsh}=)%ύKUOb{ 9C75`D΀~MwVI4#Gd9@p~l^ .ab'ղ~fFqB= -Tq|M5\Tzi/B]Z0~CФ4ϒ1Rmg%͐]d.OT|V-Rosoo| ~NrLWj.\kզ C ^%E MXs*>oQ]PN)֞oϧ/Tp<7 zD8 #EHԈ]ɣmu+Ҩ!e#w`.}Pb9QaF S:-ײ)"^T88 oLj7fKzQ6vGiD4nŕ &gR̡<$xĚwVԹNMi6@ԣ!:ucLl @oH'ֿXb vVVhZ#&(HmJ?%4`Q4m9"9g' \T BB6I9( 7HPbp4:OD >6M\%>b~{K,?"cvKB'.qrnğB`}(V.R<˃tBE9/&6ԆufG_ loaZ (_E¿T"tB!o-9r(/iRw +b_qbqg_2$k9&#rW-'pNB*5 DY3ykZH8ϧBMkf}gOQFy>%Nٽp,MC !?i35FT,6ʥs\E&M>QlnsX&"f*s;N;j)CM̤[Q#ޕFt?F O<]{`pVK]Qlq"9@|ɀ[`; FbaӂS'xw:}ӏZ pS hk.lk*&־(2 Ym w~hL[i|= v3'*<ϤٹIg:.)h8z3 }@prNo.*Uc7rkcǒP,"l$Tb$/̗ҀYr  ǙPX@ֳ`p̎^3 ҲaK6 Z(9zxc2oTZ4->:$j?y;eDA'O}n40rj)ΒOk-D0%{+ ==42(xr#D g8VtY>[L5s2PMc()1C)""z ^c8$ Gji ˪qm[#/3ъ%JoQܜ策q>G1 iP6ߩ_?0.?'<:n'|U}7x{ xX+qVaی|xsH4؈UyxT\8)&_ !U;M-u3c"(r _$4IrH4 ¬ܑo1 BIn#h#GЙIS݃hў9wO+!wJ$Qig|&>xehh>)CcM\ʫM9Sm 'uZ-cD#Ģ̊3_tPͣ.l:tGn=M Jw$ =_LĘǓŎ_{{GrȭD"nq}\$ۖ)>Rea9KM?ŘLpk8pQQ7Q`qpr{dۇD1BCq]K)`C=s_n_VnZ0~>Px+U:_Tb\5ZW7a=1bVQp'ǦFD09$w]5FcGՋ> yz0ШB]E3K2ne5}~gN+>$ZWvJ~4F4H5 p8 EϮ%+c4WFQ/} ֔P׭-%xӝ`|'&+*vi@0flM/h1*G>:Lw+RSbZv<͸PĘsolxK0EMo=ͼWQ$] 6,M{W"J~OIeȹGcAnHñonT/8 7)ac;Q \fM>ȇ[ZPGRhe",1~1^4&jDH &? ;ضlF[|kD}w zG,ׯ8ҋ۪̠`{ADl')>l,aWJ~Q>U'N6yFiy!O_N̶S/ #(ʦ؂B雞ߌKw9{"&VhTQC'&RAՑ3䈚;#1O5+SĘ:?F řLmƻrE8Mc|BF~\mj.G8dij#S1в,Y8.1lyOH΂ѓkE!q\75gׁRȀ/|['VJ7 J(["^V ࠠjʰ3ٝV-C,_r6|B&Kd~xSyB:m9M%P2ĤO,B}#Dw}= i ~b)U[l>Cv;F_ m>7zz@- Uhk2=D. Dԭ ~.!G\o$UeL˨x,bYW3Epdx{v |m8=˅"%Ic¾ouI۫=iSWÌDދP.4dHf~W&}\LI16ͱ%B[a!u}[6,fR`+2ܷ/LG> FbV9aƉ-dQ Ý^/HS*} utیf+v{vr5!_due5h=ri>{dmp E0pBd3#&gs =(}Z]NCQۗBU!Mʢ`kj~93Qe"׏rl?\|凿œea5p߯ r2Z.k#d5o3|#24 ? X\7HG.S0t71]5OEoSD_QCTH.6 Q~ilCVρT7p3t%ޔ|9e aj~/N(c}!AC,όEX̙U)r̛/Y$ ]q h]{%[}+uQQeJ-猭sYjޅ=^FO%;.ݧddwLN*8@qN4ʕsԊL 'v<¢:Vۥ_{@)IJm"Q4L[f9|jA<P/+CoC}:ad0A@~C l(weV^{ȮcCD*7r->Om)5crl擞YNMGOhA䗷}8D݃c9;Z-_R/{qZ *1F2eFBp8@lr09:9A)~7!c~.-c _FavkgIG)+"v3,&hSF͕|$lW`vB]$ޫpUە   jM)׆Wtc)=gv@g H ]į2Cz{dd@jІ׃t dg"C!:y\!#8znگ^M0_FMmCR0+Yt~8@_ r2R$ɍhRVJ b @p B&n.[/>J-=:c҅(zk9vYvWim >ߩi+PAs_6ݷԐ+=jv VijSfЊөhf.0jAJJw>g2]‹mշK _K`pds߳TۘyYUkb]~(ٜbyHSx2T2;!4vॗ,ϐ>/h +ͱbwuΌJ.nNi9mÙR`{{ 玒WФ)f",N(y`AKy[+`[:=Q<פwSB9TZ< .ss%BDWyASeFt2d<@w>8dGg:uˎ#!g4h$8*Vomv#,@_xs8IP#cjN>)a%:6/@NkUi"VB/sҝ߆ o#A r<$LC |(>VX3ߌC(uDf(|s!ȨZɒN~x=(#ZIf%&D)|t}X# ` 0 .9heP]~G_D]T nEPgt'Mq6QCPwo53cjg\ Z?KaD0^a6YDf+DzQ/TĠY⣖u~Dޏ9IY+C=$sEbSaiϖ9#ȓO%MI%*ƫ6DžRUm1G\W LIlZPMܨ;My;5pwWJ-kz,ؼŏNsqV6 D3=- 0"ZVKS,׾fi?Is Ri+~N[>8 ûQ (tđ%C/)/2,'XkS+gB \Ac7VW"[؎7XɓD޽M` AcooG%A٣9YGG ~>IRFKPW@*'MVMXa!ؤf`9sIuxU4+u}C0D PB׮D9 [Pf 3xm v;v5i!'eK0B.h@Rf#H4"g0xm8y_\:Д&'~xG 51ABAIDd~T3jjw-gR TLa7jP&#^ߜgTt[ryc,Szg¸=ȗg闈I₍$~KJ/btkHEѼQEjq V zcCTp>S%ٹ&,XAˌf7_u?Ėn.u1Pmˤ QȂ-%i-Lװvx%H%.bS\B fjUqpKLh%Q{#wk֢ySJK.zs8FMG /@FѼj|4n>b30oPh\=r}~+혜30)9Z ?N/k,-EFB2i*3WB*y1Y3WՓ*jCV|kW귞Ky1]qbN݈DK2*@3䴫VKEiѦ^wG.W $%JQy}܂g o =h$}\kTDF$F ~A68L/m9!=:E7)iŕpGMC T2y\3Cz{l_Y,9'T9t!강Z[B,zx*vH"F"" H3w?NgWLfA'G&XX%Dq'Hʯ1IsMBbr@+9Ӕw+VCqE)Lۏ~R_@3_ukː.= U"C e%|_W |-u*BAs57$EFc* jExgU亂,;UN1ӝFLЕ2e^a-DrQ\Ipl^hU*?gVnO;\ޮNW^:9F\ x~I~O*.2:ݕP< q!c|0Mz6 ^n( v!6HCD}jH8VC`JPb#%Ӥnzt3oY)>j+{ys@< |gt+Cߗ6|n0ǁ wd{-:|AƵ\/Ar!K⩦lm%YvTD;k.Yq_e*ރt5= UR񴭠c@#.OJ†{vR QcyDLYNbv#@iAE>4?*ybĮRj&.xվ#},Jl@Ir L%:V:Z6p> +qY]$"qj(Ʃ +"7 O!4%:gƉjd1(_*LCu}c{6I4(8u'[}m-T1%kZ^ӚF26#²fN7C"'Zn)nz?*?{v99>OQf]d@Ŝ2qA5o5mHʉvrU^?Oԑh6IHMOA / 4:PՒaQ!Fy)B^Ҵ?&9JlB8IJ2T8wW<.煤x?(I-'C*.N#Ԃ$#D dJ|*/бA&o&oh})#ޖdgm/L#\%Ӓql0XRm;=y=^ۊYK|S@$$J-KIfQ c1. !=OTiɒ'stUyczT_a:@ nkA-7  I%(Lsm)[|""ҽs<$/~ LO~F ?NXJǸv AܮWdMTƻ3N)*A2ӽ4EqZ Z^]ZHD,thj GC?]s՟~FѤw"Oį?>lKpP++! ~ PՎ>>Q D؇RLWDۦp̮t;#t?G%@Ř t&ӴJE.uAnn\ dC][?-&W V ԡaH3϶ʱOq$3b]Ixa H~gŻ y2 zBH{;R&iUÇ{TeW*|l e)Coe +lD Ih8yd] [-nF Y^_T'A:G0!q,E)줘K j2.vj|+˄NI C 6orkJe*B9V[_qU"'jzPիo BwD+֧] CI*J I9];ִW\L]h_lk@>*?w'^,rĭAϡ7_nX2_8QQ7ϑ{wܥ_!X W!rh;&7*Z!Hҋ}Lߐ͇o9X8 1\kSdx?Z[r?r n[)]XŕbFCن|#\Qگl%\cyRJj_*m^ TQbCOVID?Aׂ4 6$qrN⠻ cU}k9**!-,<2,?=pJOob!"DuߐA-Eb-+ |yor ?bU_Tf9RNl O~ZZdM?KY7? "4 K͓ꎥ+!>(DLށ 0?\p n]ٶ֒o> ͆l՛]ޞf#g[͑⢓Dx>2Yu "3FҲU7{T`)[&ňSʊ[h Iƿm(>Oae>mq:){#{V㲶H`DLPFx>Pm= 4;_ % 2(l |H'`,>C2D)N}D'ҡA?X+ y SҎ]m܅=xa)%?(2Tzxr^  )c cԎDnqi[l0x6%=oEoPIX~gH&bw]Vbؠhӿ;E_tZ s m.|' )cd*~ݍ\{0#@z"{5_CoZՊEh0f^4~uBCEo/`Q P]| 3,Q(nPR8'۪F('I%V9ŌQa{vILl 5YW0|Osτ0>GZ_XҹF~o֨sӬӓw`c!-]h31C tn@M2yH:U Z. =!Zxcx<[xFQ̽1ƿ:.`.ۑ^#,ۥ,2->.CnDʶ6!rXk!-nb2µ s 4=0P۞ޒ (zUED WL+gZ`.D6SΈ]^6@S\ ڣn ct꫃MΝ{UI>[4޾:uz̊/=ۛX Cs٘}!N*:xϖk:{(?6!6!4x(t eL%`sBJ^8BDDL )7xtߞuP|Уd)MXt> zn+{*9(9Wc~Lz(bM@ StâvOGbo|gvP'W|P8!{cdS*eALhn"_Rÿ)6+ ^K ^8[V) R6 m-*[?Z6 $~n¿zFˌ$oP"Ż_S2J-ƈkE(話 {7S<1A(nM.eۃ#T?1Ǟ$tgb?NvBM%ZmXV1Y,5۔))mHjE7i/dxg\en7Z`A!?IHCK|[ X6Cuy7 2£OUEBFŁ)m)nta.TVT,jD0N3$9Չ? h$mX*~բX!skY˹T*ֆ}jΤ^ЫU)l=}azyNL̒"XmbW93yol>)mX03Gסbw֚J(oyz[^Ǐ= ɺB dC_NC/㪹H}EZ˅sHS7M;kU"ϳmK\ ck} A4\ wڙ7Z5S/ݾQn%2.ߗ$V̒IcU( 5oǠ`DӛPZoO(ù$^mQJ49u@^o,?5A:5*" 1_)ztѪi 8d .+}ʌ 9+GG{MMjB_3$>LzCX:܇W)( ' {닅:3v+E!,^`%㐉=PV _J E S&n %9cTFg uW㭻?zc'$Pݗbq'ז1,!jj$2~V+s?_3XCL!Me܋!*6}5b[cT l=.LEWw^ M]Ws'r93*)35ܺA@@.WDvaNp{tJaY ჼm3Nd c ^ܔLc9ǧ[|4OeVfBtOlvi~G% 5"0 4] iEN{W*7qÜO%ʺ!f4>mt4rmF]*N4ӵ%dKϸqMaDH'gaAC`ux|$ T3tBbD{QN\k6qLW(ɪ:郆Song' ^B{htbG)_ď,fRE7LR]MoL7[``^]2n6\h{ l.o ܸoBNCŞYdآ%WWi21캂ݥh4. qgL{W@2-.`gŏc,uP7J񤸋59n'NXopJ! F(m q<ň + P \4IL憎>ՍbIJijBYI̚BrobW ?OaH*v{6Pd\0 ߊ|?璿msZ0a7ï/= HӂͣznEٮ}Wh8߬=j~|4*J(fkNg%آ)+|o{5kLnv,Y<.!j^b| +IUX#.[%:ȸr*kJnm+-9%LIy,Ӽ>\52` "]L Nwe==(zqƯȲnn<3T|T_"a:&sc'ւ2NXZ@ֵ-U2BX Ǹ昕poK$ 7&CS{CPydr^5xȉמm]4gHe=.>%<`E7dڭj Qg֠1=jh̟k[@VݸUNxbjS>ɏ!r +؅Z *`&“PA~_r'30HjpD5$AGrO~X>$$s5eĆY@U.YTqziVRTj{H;`K.pJƋ_,#OL(PݻgBhOB0sywځ=^;~ƛkv-o ׂ";~ïʄ@0@I[d} _X6K}@a&e?fd_C|\aT(HS +=0NɈKDeU.36I h2SNGҡI tW[9Ѷ"Hcpn vnipO yW-ǤWtc;206D*M Iu7+}V+G\S9Bdxx CN[%s,YbF/͜Hzon:l8r<_Ěbknv@43$EZ!kWl Ἑ-ipƸDst lQV8}~cXS\ZGcϗUwD&Gb+hK) e{ V#MXISă~"_r(n>X$ME\0aP֐CʨD&%z2'̭,pGkܴmnw|JgZåHJBWGɑlq^zq;%%A$pnJTl ~,YOu/ h)'Z.uB53T3B}esQ)fl4ع2ۃ)ˏbj2;8&5Tε<_jyڐԙ(9h5bsqvu?LE`c O^G_JKu݁Dk[E@'01T>;V0BFd1Dm3:M!eK,>AaőMYLes5Y%|&'y{%JfWQ k=S 1($~LdHR} ŬPfE0))e V.f'~&AR)3V~1-4GՋ@CG* -0>T gxe 9 0O~UTJ_[ZuQ _L idžΔx(iq0 ٦7>':SQ_܏+y*/j*m$۪޾e0hSO i۞U+8[eP6F^@_?pm ~`o2Q ̴WY;]]ƵC R%`%=d(oYmǜ. 높{Q+H:tyPJbEy ;2mJVep2]<'j duVX@.5 %8x5l{{Lpˌg0m#Srլ| &F7 tg!j>da$ @< 'x5~:kYI0>ã"Mf| >aI"M%܂$\ewjKW DDES˗GU(R_'hPt)ffYb CMT98h?L8sXu,_a ee4+L|,}is+uo F+w{ňCFRѭA_RtX kz>hD:˼5=WK˫x>0UUqd< q ڛ C'z!xX֏ 7+KÎc"'ߙT#f'ٷ5뀁/L^ ++}7 wd?@%KwŀE'DPflu^[yBU }?#rytd,a &#"y& s.~MJ:^>X-DLϛgOW(*WL9csB;:Ij}˗1B:)m( ęjAFqSp4΃sNM%!"Ϊ'(3"F[;e'q=XTehˈ2`;\>I}3$Ef'YTXlآJ6zvz(c3[mI KUWC MB1w_5`="5&lRemX~O 4S1&R`O}'_)}eɳDmZހv2!vl&CU8q7rJ:).v.ſJ4J5Z54n6؈w `ˍ8P&kKCU5nJ_DnlgFюF8tJ`;b]D-<[Xڣ6ޝ*'d! rjw1>TEqѭ(Y;HzN@ dRMiI_Ơ V-[Q#L~K:DJ_KW(@Ǔ̀5K}M00Ǻ R6}3 AL %O9IaCt6OqY1jOD観Ǩn*R,~X $ ;ƩgoķC; T t6L)}l ϰ/L ]@ÄM"m͔Q:iF@$Z&*\);Z%'*p̫7z 1^jvo i˙vGQt ? }fa" F?2 Ѷr9yԹg MC4D*~KXi$OfpW Or"͉m5%1Ó AceHh AL9n`%崖 Y9RqO%Ag< m-J+KJ -5k AE3,B+9y?Q0U[vʸwpo ;@wq~F!sTPase V>CU**}ח +9pVrZ0pN~,$=WF3#ҿuqTwaaZޞ+@YK7JaUù4iwE dh1vab1g0q;w {,<&+J"]yBj-K02& YKINC/ƻ<)`@xPf}l >`^6M[5}9p菡rz ?mVRH?z?*ܑ;+/'@<1Kyz=༑J녖F55{L7P)䝫|L1ՌV뀣>~#t"%݊li: kCG{=qxƯGsŎr拝xKo}=#Bʐk$H700$`ъW hoV,,b/< #lr+ԯuuEN=A,Н}Aי!,YZhe mõ"+`rI Yem,(:t !\Z tYg%]\v+d6L5ݼe0r.98]LEm;Ls3[6Pڌ*}MڒcV'Ôm/n`ɃTSSVF^@4tiSs}hioB\{0xEe9g|b}i(tUR 쏭.x6<@ҵӶXǚO],D_9 ).1$}fRue'5EqcLܝ}I#]0Z"y6$WXJxX:r;LCu"^* CsrFw&qwhP1ğbq1}őrOzR%*>_>7hI秡ؤE6 _ĵ:dt* DJ0|Ubw&RUеnOOpJsxp&`3jOjwTIFQ-)Z(]BGK 6b+8R.n9 vLe,+q}?DHYS m/Rt2f@}HPO*֮BS5Žzv!ْqЅMC) <J ‘,bڝ(i@`E1l֬G9i(tq.()m*H7 Fq%64UcLKޫ6}c~aȜa1}Aj!lX=wm>p0* GD07?&MxyMTDnP>'i!jwP̑}~edJ%}x G.퍿2-AL'j26͂"z2?n2E ɯ^-AsٻMb If ;|čՋbЏU0cG\¬R+ݴw{Ә?Аѳz+]A\uǂ -ho`+G&{V200s.!/EUfK ;zJb < ݃'v$?Hxxڅ qlF6HySlYd@)fI&%2c6t6DS=}C+9Sɍt.cOO '/oZn 7HV̰($]B|js"o繐ҕ SpphʿAԢp^ͧbzI!fIW$+d1_4I+$x'r6}l2E%nkwF](LQп{ &\#/ddsfM^FI<ne-2V̰Ĺ kXxO)js:VlR\^!.Hs0;iR >A~:Mu, :7PwOҊU1NG>2"^I{mŒt|[Pb{ǍS@FL )n{5U+>^RY/<0"Y Ӄ2 u϶/@%Zײ7,qe&K$PƲosJ2tn~YIksV:ڦDH O\?´ܳ3Vq8[vLc9oJ߃Pxj‹}itryHaEX7-|ѪUXY?h{J?=VUԱMG®b@7N3zM:8G\C*Xg!vl,^ H5VJ8d1-\#&w^b\8o,TہKϢA =Hj$31r3NHl9lN٠eLw4.KN(*X ;0^?|!I#b@X$Mo@TxU~0u>s3wmC^XQoEN./ l7#~ 'SjA`N# *ΝS%]2߹?% ő[#Qpj˖l%+ݩiwĺWHn[Z0<ǐ؝߃fV+y&Ip2Kh*⩾n$ٳ S8C[8]MVܪah py+'W[RZߜ",gIѹ1u%f*|fq/Z-k!B]Y) qrD%TxBj`!xq;«;g%%UvL\yfE%BWpL25tܴzdU\)傁la "#WRVI!:T19z8f6eFݩ l"`Ie\EȈnoM<L 4w%HMokcOu$Ǭ h[ ]^$[;h!~"Ϸ2GQ>}5dVϾa@> }[WXWn4pNSA2ߗm6ݥz#ll#ndi;YD#LHWk$I+R=G 15a-fP dU[(i3vh36AR,P:&ƌ.L/q3FN(3v?&%o'}MY < ժZgX6'Y 2a#Bc)]$\",OsKEnq:aW,Q{^GW}WnOM m7A ܆G (%,6r >po*{sF mxGb'1)"#R_yj^}@ڷA]\Շ_}<F#%aԐnS@!HQrmT=C1t'=, 腾u:j#e|PziRR!2SP_?*әC uyjԵ' v<*3Vɗ.JUse2r\E␰ESȅ 1kkUYr.H U֥ M>[p"C}ʨZYqJ({Tj DE֞ԛpkj\nTtVp*eeb[TL4_e`} ?gtӪ!&}* 3Tr QS}h~P!lfE/͝랳{4 5ksF5MTM GEG5%GzW;"ϭ:㺄󉗊 ;w1 ֒uwQTثJ &'3cXU|ҫ;t /OLIC*[Fݿ \<K chQe-z(jMl+R̢ 4d|;#֮b&c|r貙' '$n*GB-?\QJޚ4ne)tim~NWd,<_a磢eu| 5aa F*C+2r`{^!>"ll2ɁNz P^ {qQgEθƀ;÷2PW-'w5k6*taJKH^(6k||gpyxa?8Ⱦ6L}Mqb;y癦#.djm X4o6+K$1Q 禍+EU.c[EVqbTf!ߏJ;B|"-B~O^Q=b"#C4Ic?E-g\ p4B ;yM%!cv]%qJ9ñuȜ!F}*{ nH)UV ?X#HtxAuxnN@3Gy | s;jJ*vxÿ"B56ܜJR4׀<;tVJT!"; Îzs}yWE=BD 9[߬Μ`pL\Sm2O-w)F܁U:`\svG,Bm#=1=^Q8]NE_vPv8[+2jvL p.Mw"e:6/[¤1/cυPC}-1`M#kE#Q'gړNHDK?2f6=k~h:%K>MWDOn`!QJהĉ$~ST@hKXJ/n G9nU7i<[>x LU@R=}k/ѱ+-´Qt3sP9;@;je}X#]˿uy%qQ?.IV,LJZc SzOf.VSNiqU&)?HY?&@ KE#_ ۽DM!&@R*Kgq-4ff8gddzk:7uʴf]ZzgNENM'V% MgwZQGd )(ӊMU60G[Q $?VZ'e=tQ=əZ:oʘ!kg5(MΡC<o9t)f4v<%2O|_Ln*cDw4t*BܤsX}[Gf30I?Zjhz,U)֝ðѽ^5G3.9>WW_zfli<#_Ie^ mܓ_hiZbj _ʤlӊBuzZ6Œfv<>f$4LlmjY xh6SºY@KJڥQĩ) 2eU 5 TN t~;sxB0 xAoxM%6SnZPXb{ŝ9kb17ֱ8|}/ 6X@ e-03O{S9e' -o".sw& `fk15CAI]ƀcDbyP'O&<ݎlXka6p+aD$^RA>)}Okj,KR;q Ɍ%Ƙ= 6y(sIHN`đ)Y,p )~rꡳKrWj5f籑ڦ0dnCB@ &b/}{ٙ[0D0g!D-d'H*Bh&?[ )ƃeΈ+.9Zb! hIQH\MrvQk[U>>- GqA*M:UGv0؀~|'Wĩlxqox,8ʯij -l39NZ1kɘx~ &z2p{\Pؒy 1|z!jU6TIsk{^nX"TݪF} K~+G"KU̽%IA8#~5OϷQ&KqёOv8vd󰹤UX\ W?1<\nbuktSpq_{0"?Óǖ9sK ,Nald@v@-VLT6-.ꔱ\O =)Bdzvaʃm] O ;|.82K̤B K\>F3ܖ/BiƅGNWؠ fa SӸfI^!pݼIz 5 1L2P&J[t -+N+û w@[R7q]^U<+3pa1 k>b5Mz,PLnS|c2$U4k8hsyVe{ ~oJ,a،I^)=`$:Mu6:h73xcik^\T)% D%o'8x֘CzX#)[_&QӥmLhesum=n4C6 յk[2Kx< ZkFVjb ɩ¢yu a"#=Sr< 4(Lhkn$ŏNndKv2{d \9];G4}t L!-P[:2Oۣ*"|E芍U}4~/NY-HB?Al>9Ĺvs`[v *(y;̷ڔcs7an]fᚘHzkh]śŪH/GiC 8Ԯ]C޳{eajJfxX&لr-N[ϲ~$)z&TB3zNH<2~9\L,;@E^-r|k6oUbIe YA6cPn#E`R a"Cώ̩܍Ց݈PwY:1V^[K.;|v!`cQ|ټVj }".N*w߯]#~T-i sOl4ϺɁOU3+#ČY ՝}ш´6k@v$՜]hɞ?+w=u:`pAF*s{硯ɂ\%MZ7>+AJ&/ͽhjL(5"z 9Fy_VePTVdͻCknF`ufj ;nO Lf*VIoo3lTaq!p,Om̻}Y" @Z%ТL&aR =DZ+g=)}Ȩܯ)1+kyl.2}@j2 ,ؠʇT(pBwh$_Vɢ\j:˔eC=$|ܞ4BÔ\9͙@X± "25Cq\/=r /G1>X$M/- KV-jgmn8&6:A;i_aDC!${6B({CU?F"7n;uk'4`<5,FeӊGv(C}\!4&#GTOD#n5je133R#u7v7_-0|Kc_P/в?BuzIYnݸU8;L4ݖ8 .,ٺ|&ƌh$6R, uITC+c2E| ٥NW6@cfxf\!jRg\I]+ K^_ڔLI2㍅LuĪackxW U'YO'K=s]H9,V>E0H5ɭqa8{ǞAbKAsEoU@WRVq>",;)x\1r~@6\:E,7ʓP<2XXe=]'c~ĹԝO5 ^g f&.E{3ߨE"ETzQS9C1Jkc{Q nAl$tE\6i*r{Ջִť~R}>L&.m ʦI%V}(2!ڌt0-'Ӟ2>RݗDRf T<((i)}Iw Bn<=4zUNgc2T%_@qwaK3CdLG VoV[)%lUW'[,JB"dx@dn3׿9n'2`.`%,.n{;  PS&6 $JW %66ѥi x[aV`7x C=ˢPǚA+4w>K;3v 7∠gc΂jI@#M[ao3s7]'ۥ5X&zÜH(YƀL-7?024v9Z#33d6t7~~wm/&,7;Nc-KXJɂ?B/VGJez=$~sKVqUԐhQk"e+qc%%h~]C>>zO)w'~ 78[,)i-Iw0_QFVF;62< ;YaD޿#s G%x<םO'|I 8Z܂#ǮPiWhY!xljVg,BCTzIP8sEk]7RR$Ҭ9Vo=m@0TrDYBj5ӻ`:~ c`F΢,-Ũml! ?vߌms7x%܃@APYÚkƫGɄ^u k^ND-L#o$4Y $%%,2VOq&$9T(v . `Y^K<1oH ¾[y/h,<'4_=?֕~; `krnb}DDz6CΉ=b@=G C3ai>fװh",}bףnh6 !ImI7CP/Kフʵ?Ki|a-MiUv4Z;kZ:tWof8Ƒ `@p> /0 `9v5'KFXSr2&>Guj=p4DT@O@J.%tN#B-L%Ѣ||porO癰ƴ<L 9-cHe4y@G1 08 Er*$B-ޔ.JZ] p؝ hڃJ$ ld6mLL ' ϱ 61c#9MT5aWB4Ҝ^[u UJcspa/ fBn Bg%b~Pnzvɖ:eVY"YHF>x}da]ۡ+O{mO枭'g O׆N%n;U*(_IL2ULe3f/´C4c 7)pZ<_?1q[l[Va<4%žBKlr7tnbY!tnvv^ٗ HƻhM4 g70?aHM:08S06[u /K(qDAy~)L ̨f%SU94ЦK`mqD V `Ձy.O 0l,hVLZJ/i"BAPʶ#R=b6)JaDntw{rKx=GnRi zJGU0qhXʍ$m`(K ӻK ZD,*ѥF9ok\Ly㏆o*G{lϬ?|ta:[lyCױ5cɱ!bhx@0T;)'k,*5]`Z44-xּ =w/]-Zu֩ZJ C6 #&,|w9Ο0i%am`?68ƋoL4l^,/v5{WVm̊ Ш*>`n)j.1 jqFT]?k"٘6Kń erOTnO6@<.硑/'Ֆ*46*x~c-;.ZĉlQlrwrt‘Ӻ>6u(d-}CP%'c o@ٸVKK*+rBg _`w )N(Ntd{Ͳ|-/*~Z@ $:,{9QapI=r]Ct} 9B+ɐhYkEiUW}esn pyy԰'` k~i"a VIAs1Q``5߻xly) :\VܜS#zVdo绕Iyq޿+4İN:#-V|q+A+!Cޚs&1$YxF VmUemwˁ˂5t)G@\# ]o\Ϥtc@)X&_b'VyTKp[G$K`8y߸тǠݭz-袂e=XYڃ5j o۪@AdVGɳ#9z3p 0ɶMZqF/Z (>I"PG_QzlXh&CǪe `1;9HJСT|s//&%ݵ}  3 e˜Y鏚@pȲQEfIOux> g#NiN{PYmc7jw(l3.vH"YZҘGvR#*v\YF31EAqo6h~هq@S.Yܧʋ-ڮ`b@4~THuc54 ƲM_;7c#'gC͟^^ h@P{\ ҹ޶-~ڝSz}bσ#U6 {'0~@MV*5Ϩ qAQg@%ΠTQ}>c/A Lk?ܰe67Ҥ$W1{ MOKav[%n<_bkp =PcKB$ZF:oOr R^̘ym;&B=΂}X0ydBkeOPy"g[X ǃ5r$ _!։:T,K QqE7%]w E:ОAS>T N-POSI0;z8v7l6+D#.L%$' LS#'# [ #7In@01h6dR̔eQTtL?.&cH`ث4K( JTc^i(|N9"Di.E<((( "qN:ןG8- Y?uYyŲF^p3pM$a ]A7=T292ta" kڣZdSBh(kbxϑ^c<^z&'ؚbvN*{(LRޜSn-h?_h7&lk2_+mJj5qz [xp bV@r|$G^D1:_C,(FJST#I&( :c+`ymIg顛v )Ѽz~|%*^TZ fPw1JDlcflKʔѱs3f(ϑٶs@8drv;Dx1<&s`2NSiRuµv;4>2""}]_Y22ҦSAZ EW:0W73Db"(o@ ut"i {޻4jDKD{T>ejfs~gZlNO$-W VcOW-[\\Ϙ BA> [-;tv7fDBhdfkh S& |pI&ևr=mݸfb C&W&ȶrmšqKHgC3H3;7_PsV@v I>^&Щma7Z? i`sHh8`ZV`@۬nJZWE1ɇoN*CҔfg"T08tЌeE}چ};>t : IIhƿ*C^ 9F6_/9XؼĚ#|cԓ^ !2r?'4n Xe#KskC ku(Ǣ $f#lYiq6kI5yeZ74[`|D }sxՒaI#jBzD sf"D7O55o -qѼ6o(0|I^m|L*@vǭ1E~9k.5޳;w,7frZVeB2ᔼT.iE_Nim`uf#)jaʆk *z^34X~t-IرO(5GjtOhdD )`G71pw`Q=jgcpŔ'Ѷp@P1Bu EϵB vanHlZ<ψ ߱itDjf^4 E\N6acFGP"i$B97PCZ[Jڽ D}Ui^NTM^J=*Ia 6:y_߉ B V7ߞErFN?k:0ocrwR5W>ˠY> @o#PhbLff#)?N|}<}3鍼Vk]{z #=]1X, y!u L .5` {d|澽9 * F11\4!s}q1'|3~tltj.](q WIY;PtDQSZ%o$Bt:$.6deGEE_7{ҮA{T˒ΐ >H@ؖT$oܬ)EG$Jzƽd/OaIJ}}Dum>-C2׋l0Zxצ5j }bJ"s,7߿Yr'UPbC4WF ԬUǫͥi^•\[D7juh;;;DJ-j 5Vh'k3Ź9iT6?t6 25U B_,s9=T:>IrDOP!0x; vR22Ԙ78(\Z-X# FW2(<#){TVJv牉nJ^rڇ'|*2lYicH/q_@XJ[X.2$LgZ`d'h5̃`oT5su*48 DR{ vxbhuVdHEs#iq~)$f=|-(3WX6B l@ Пhxhv[*km#k"/MHԻ@ZvQ {GFΉo4_x+[|e[z}2#?ZlZ+g-~О@ě$rȾR{66|VwKj!7ϗW) 8Q{@Mp/|4Ppj-:e %ڟaɁJwKfc794Oc_g 5,DaN}ȭ(ς4V_?N8R_?Ɖٟ?j5(VWh`-=/U-CP`  =o54d°u*nys7Ѻ&kP`;\:#T!-\r :oޔ(d0S⻝OH\RN69x0Ǐfl8(nh\cym~O" it蚉|Z+Fۍz< ,R{ YUǶ AL ,E|;B apI=5ɍ kkmXp">}5`BW bӌ> W v 9.%2lQ*eΎdJ߮\eg%{+y߼E ^a!zU5/DVT\onTWP؞m&'QjX1jaŽ7`Hpq11=O^ ?,uȣ͜#R5LILSO_AǺZ;ه8iFog*l6x]癮<_qk7v^wף2+~ZĶir9N-,_-Gec&^|Sa2z%*wk1r^R.`@:rJiu.cʜqmFyܜB&"hL *D5 J9|K×pb@MHJs)f*MJ' wMtSQ]0!Vr6{>Y|.@Vi˸*$nh]7nQGoB@ z*- 5 cb%J7>Z%뀕p>"*%6s}o'8GL {pd>UTpQeOn< L YYo#"Kg{o^)/#I".KGicHSZS!AEIѐkDlt7ur#?EWcg2[T"{/Ȝ%%Uf#y5yއR+L|qLşw|h\$OBR$p@Mڗ%I[ISwLUG5|7k%ʥy0{ϬtO!zNeoe"͋#NUo̬ǯȉqU1 (.4LzkGk_Пv_-["!y|]STkYՙzQ%cVʭ;4/3m7Wnrܮ?^hpw!BVywj^=W?H,)eaĦfDV10B)JGRrns(nJv&N/[Mˠ淚ˮVv\ͣa| ٍ֩ |iS+)ySL@GK !I ivG/d]Y ]XVF#kwmTv"߂h'c.^^ɦR4&.\>1QD'rV*#ZȐﵕQ1ݦnŋALYT]\m.y8$xQt=DmuPIBʣfsnNR5_r :݉~jT/{ $9 jpk'SY(rn{hF,ٙ`hcAuCB3~R8&½ƒ4@ "HgSNNԢ;^m/G̉vL{Qc=s-3zv AI(osUtnBWҸrzC,ފF?o*Ґ,xn8b;r&Ag]+2vB ڍ@ S,>rd):1As& Ka+meo!\kfA ҏ|^崬kZZJ@iNUMso.v)|iYq ώ6pz=%xP)j]'D#\z%13{B 06̝6:A#yUZ9VWY.y:;7WƏ{_XԜ|@@ 4($#YDܰvT`4V6gj9.H`,@PAs%i'a¬1rr:Do=- #u2&7 XoU3 dc_ 7].cbRht֖۟>{4Dn$l96[g u`tPL`L~lUL d+0%8Ac #BpQ*'!MeȺ)͙pܾD7? d[- i#iOjl6Hs2XSNW .! E-7!WIz.YS1 >@5LE-X @`,L=faRM^Lm*hg+kм( ]c;I[e{Se O ϞL i_@{k/-3 pdzm1+EP}?ç^㊮ 36]̑Z3\3Ϗ%RY v`Wݮ_b?APfQUMY0ZDG w0q Oq$BF ,B^?ӽ83k" I \='2&J{*W =:;}?`4"eUJOdb۔>U~6Gl#d8=V߄'#nk[?Bׂ=)MxgxnxlIQ= ?^ >YbWÝ[ !N(&XjAojEiviفPmQ23X @q@f%7^f>|uuڠAxh8('҃Cuzcy%hXB/P6N1|p9se'لk܅n BAͧZ&ռaa(i(WZpcf vGߺDoc3>*Y*d#X'u>KI7v|[Yڒj%J~`Ө0ņ7PQ̥D ~S)?`p(&׽/uy؛W6m0ycaט,bjNjYwoi(zv2\NxH1c3]LXwG}bہl ?9ڴ  ny߸R3*c5/q|*@ͺC:{;G4;E|9ڡRzD)HohA'%҄Pnv!PU1&^b}, dƙ\aͯomv`뭦>HPK-N89Qu+}UJoDz1 KiFQ_v\83c5Eqqm}bV)+dÇsU:GCxw, `fsDdgS}7t¿,g6B>zT㐇ŏ1&pTNx}o2 ҰWx nU8s9A/7HivQPDZ3h=5rbe Gä[2k8gƀݡw&K]󀝪((5ܴY 3# ":uFaR4/}cPIVG zsP{7ՎO0kYbXjႼi ~:jDw-}4܁GoVz?6$wY*@B4Su$V݇\3C{:HXZ%6$s0)S߱87Ұv9iP:F̠GS ,\NG艻ɫ/م$f3WMw O!8w)xR ^<ȓFu7Ec9#QZNwð'8v9=+"IReX3:0*2*%uA*Q݃r^Fhl6W-J-3)C;p|ྠdHS[L|2M>[2/ΜB5[zo{l[)- Lt2qYm^P[QOYC?kg- 2t|nz@ f]5Yj&xr94-m&-{lE P/ Un̮ALxL]cfigY\]V2j[T:4KӠӭq\>Hz<뵯g d&f-ZO[D̟BX_~O ^#q3MEzپKSa?=gdg/ԭB^Iu̳ #D}ΐqNOY n7$R0'Hsc'K6IAriHޣIii~kdnqE4{y^SHu9Vʏݫ&xDCYzŸ"7~kB?b*M_>ǝbNaȕŸ)kW'p;ͥv 9K)c ?\oҭJ䲦Qq3~7bs1V'H"R-kL~oaF+j(cmSJ IE(uBVKeHea]Uɏ/>ّn)9FI1]O9hQ~,XpH{JAZBg) y T(Q/Wi4Hm8 X఻Z8QU Pr>9GyL}^j5IͿ a*ўUJC4 0~d= s@XTH W'm[٫["v=uD̳BJ/eHuJ1D1$S3O(B!Fa`P|ؗ1s.GGv3[&^5EZկ#ElNE{IRA5x΋u{A\ZݫMhdo ;L/-VPERHE:HdHtհ ~&prI#md4׆Im})[%ܮKn䩻6 c^lV^id؟VLP"W oC5X'rYЫ‹}VWo%*U2"gW@ 7k*LIyGu;hH ;$Va ̳#D$p2ɢ p=M[؄MQh"R}ެ%HSX8d&p.Ry_ W(0 vGZ,((L>O`wQVer$eDR9zXHz ÿrMict !m| (?/cOk0x&డ2(^֬iG? 6UZJ<%?yZjB;ӕ҂=mɴL.zfK˴y. RRro%Qٴ05*EM;)1v[ '눮_I;^=Z_" -rkq;Ɵߎ&c]!Z|X mJ]HvBh'VV~C1:Kq_$ TjK? N6I.D\ik6%9)v!zՒ5rK6 [v0xW`ݰEj5se81݄0Q!<ֱCb:HSG|#"SȳJ{{֙z[+^~o)%l#`LYfQ 閨^I(:e8~4x:W\v||C~O{҄ԝD ; D~W"d+pL`L7Gl3~nl9ԃzh/=0t5`줃3~5& ,i jNۉ_ T3t"a$;k;h5pY#Ɖ@ut>Id˄YĴE޻jqt[PIhbmHd0FjAg*$xy|oUx#CY?(Jlj@n]9?Xٸ֗`<v=-1Ϻ"A9Yb󅪄 †!o%&\GJsU(4/;h <^H +hVpq( 1_V&DLlsDcT[j Y.d"kP#À<&0ŃNsޅ!Cz68?ժ?,&$,\ǬtkWS %e^4R$@<'TGL;\m{0pEf::ӱ( $s7/uœ=θ+(JI{aUZzGPⰳrK#Cq9KҺxWZHc5b%YF&ezSt?a`5a9AYb!~;X*Z 4K!P+7w/)-dwch|5F|s]ҩ w8IlRHf_FURv.y*o‰N0Tʏ-՗2%2{c Z.u*8pFz(~6/n: !^}ø*ǟ.C,Q.M:/ Rek1.iĥM. 80~&od6F x_4J#I3L:(~BEJ_(x~tkJzI`ٝiR_:}Gg:JFEXRuEK䦯/2u)1'ࢽG>fb{,yiٽ%< @Ig^+( D'RGJw5;2퍟&X۠XŸ! X>E]P6LQ*ۭrJǰP QGUYcz} DHd'GkR9v/ڜ尰2 Ckax ]-*6b>9w=I=;Rp~ӟ$ 슈^K>.n ͇9LsL&ȹ.cxkĢqW|8=&-EN6@h0ݢ@]t$""uϔB\+ժqkbxhVIĸE430^`lX=i s׸JKڲ\ikB/elOLzjrBn!G,kfデiYCN/9'??7&Cun תwD x1w(_rJzb`y*}ql#U\? S!=F} Ͳ?c*7Ec:v#a3Up"MY"2e fDj2!s`-ː/Wx|rpF툝`+kTMUjgc(4Ű yqC_(E >qvlZd;GZa.AeSt=kH1Ľ]MZB}LU;I pC1HSp|q!]VWIQ arٞIӲp[ v+D%f.̱) |:7߼3T:^LI41ce|,FЕo-B&m1ʪxbؖ]@AC ;nA'6p7$6F}@Ϸ]ɫg"dï8mƭSvYo9mꈉX69v(\&,/$O8 EIQ$\SZj:J1?gk-J`BԦm <'OAw8uS t! W5[zߩ˩o4~z8G[T\KîɌQY5_}u?2gkZz`= W>lifdZoǧqM3€x:a%!iN`yb8/0/1_zEvhz\q0pÈBu9U&J -Ot,dգ܄ْNHSBO:鲄ikGu<|f:٣%!McC<òuirͩ0"PK w| 6${+at{0՘V%'4k  u߱<2!D pF"VHQObxLJY@b[BCгػT_0jB((+3ݹpH>qtl92c] /Ǎ8$WZƳI74&N[Vǩ+GG̽¿<,k z؛x488kZX*J/^naUȯ,@t\3ie^4{*{}vd'\w15 wݭȵe$Ul26U0ue׉!8-m)˵G>zaNhFsIEК.`(CPְ7O&_V|5ܽ͟˲lZ&}/Pw7\+JB«N)ʏHz6n6IRIv&,"a}+X+JQ9,y $X+S$$`K2JX]Y[xΚ.s3DFϛabEV;V)>sDjpQ#֏r܉bEMm`6'r`8 9*9@[8hEL2ɷU[; a_h~MhdV'dJhujc$"W! p"*3~…-[(/2*bEbCأoZjk 42*X>2JrzrXDgkZ'|QyUd}Rd#yC\!B0 Rg/ؐ89pW Rا/wS.` 3D bUѰʐ)./p`spOvR\`UFRp&e"r. x cR߶#W*&Y ׂN/IJ1H27fWy6|*@d zElW+ٳ1rRKWav[VIq'+DJ,%IKN=QA.ػm}߀ѹq֥y+Gwdw/ '{6t?d;{&Yp rsZB'0CvJ3Ln(j1ƜU`A7tK8MJЁyRIJQ⹸#%dV&}PQ?KΤ=:E?N*nxB3mPvhݽ\yau]Vj<Jdj1 dgB}I_L0M/*?q2gʦaҗ Y /` /9CRQyMEyc$THs'7O,ƍ˭*p=XH+>:i&r1- p|ȯߠqlbvxϿ&Dv xVvU6Z؈/Qܫ[DHƩzWWaqʼn.~w+Va%*uMبO2Nw!r펺`$g~+"cYխÆ0.M6&5w5* gɜGN;1Tj4,ӪDudmN;ٿH!X1]kn-lqԭ,O:q8[1<%P4G䭶URVqs`]B_!Wꅽzs"FyRXX4~/.uj )0ځ EY'ښ2k3j܆?*F:0֎߻(&hcM̸r_Fs~oOaޕt@Sq8%86qyOm}z1m=4+/Y*/'01iۘUpFAN&s_b҇]AX/3[鍊:A>lwVZ\F术$u.#ųvʩl NԕS]Oʍ| >yY & WP.*tU.Q@ voBєhê#0C\ xYJQn%|L4a28"p?{lɽ!=6a@7 O~[1>b\"[0ǩx 4@DdەX6@̖9geE"0?F{jCglZQU8;iԄ(+X-?__3*nOXq F" 0dy)[+{1= $ub#hZ-)6 %￟g7/J&彯>恵fQ\t Nxn(y~kiOGn?0wFc Lx.o_Ĥ ?oWԠyui,GˆQ vF/*݁mV[CLRQ%E6ۤi4^$M3o|51$o(U!}n&/i(r61fx2 _=['f[&o@1 FmB5,,ZOuO5pVl>$# hw ]"QJ-۫Qrf[Jc㸍u4U4шm D--~T\ї)rVn2a%2 >)5.YQZeoԤ!xMoK^_8C9<1`. 5|l b$3?LR꼥7~t@ؑLh9v$~>}3S34>bIE#+ VvY{@Enge._qCqe9h[f"Rnv4!>ul"ޏWyr.P4T_: X[*]-b,meͱNSy~3$@NIKZCuh؈< !u('<~_,UjK6 QM,bnLșMKxC#@ɠ>iLգo!s.`IUbϤ}3khոK01Bf70z%>DjR[U^P7.*iV?QBR'2Q!sJ#F8.4Z_$Tt+[fiwϝP@z)9&0+]aC*,XjzP~|>_}oh aZ߾)d_* E yYbՂ  })T620$tS5_;rMv[{BW<'| L}$ ߶uM]qIFv_Z& 6WVcTh4] QJ_ 2Xa/eR 2PK"IxØlu7 j4͹s$v"EV`V}HZեoKʜ"قieb_ƫpf8P;IjIR*OQעIa|o}i␸Koct95MY%(MA珕UFmNz]𻇞ߚh*,U0/9@:*U'Pw']I( +-p9)>+P>`1CȫI4ȔQkhEx素ڛcnQp;nn ºY6%3jəRtFK :h? rMdΗ-b?vml 䙵 ( )#m("]ف赚F@¦6̧[+2~FMJ7As #hO ELF  mf,d5(ڋS぀"vElGA'-P8oHZӣčB@GԆh ah{ki4^mc 0Ğ3]n}+sΟ-_B-ܷ_a_NFIdbH]>X ׹ |$ﲞ?o.AC{^ ۂk?빙j=̩Ox洡3~?PMbJj"Dd!li{$23|q]x "2XFjPKi0y>YIHp!wN;=oqY-(WI;}`o4'<=}&ܕ z, G FBxe_SD& M;ZUDk'O$D0ݔ ثwڳhf{o߇w`D5Ѯ?S@%= ^^P}0kJ*% _:[e'0{UG ua}3["Q̷9KZB0'hEE^(j[}CMʶ]{t̷,c=#R 7j4ՠeF,n&8٫yr#]=#y|YTOSuc\+4Yw][c%<6rO>]F&9ߩ=k,z&\uuڬR)Bݩ#F^a!qQحG-ӃlT$i9DM,0kD VO[[}(j2Y8הuZs餲NMm-$}65"dK7k3M؅/}Ӯo8LSWd_cH\|$E۾;mJPNʉx{@]lJVo<`U $3JTV2  0!lrhNg"3>[񠫄:%$ :ڸ\y㢦A+Ѡ0MJQNIGF4c/|āiL[r0#-B# e#4ԯGDFӫ &f X55l3ȏ%j:_eRԫMN:b]aA1-)\U3P^:1k6\mW!;lmcڜ}6G^Ywj@gscHD8rPa;崚SmaVŧ5)@RQ^(x a:\{)AAUwk/Wkح_P>ʓn-_WfoJRב-}>Hy&/M_? ɛ HkF'42b 8Խq7cE »|[#k!^ o]x Қ;GEY| e;,܁T(C. "2ȟjJ|ljvj76`UPOqM 1'ƌl*g!YqܶVxE;_^Ƙ.@άw;>rKìp!Š#f /Ep##>Ͳ_Lh|[:kttX&ĐX(nUozŹǗcKskm NVxݬy'euK"310sE~,r9;gkS=,@jeִM?B%_^`R*Y珙R`x;I [iRN&Dn -rH=:?- gGiɸ~P;0+Ep[w02;3IqJa1FK%u0#AidjC_JV'8z9ڻ/SYSB"d xM !G$?L]B\ryלw8CXƽgTJg)^`FhN  SFgj#b1O}V~{Y Ő&O.$xu"dȒ\}wI>+LtZN`C|H~_EG1 #}EJu 'hq]m1i!CњC_/-d3R,/z"bL8U& rK | Ɨǩ2u>Pٮ85))|yLe`A>kaH):V|xec!NhyFħ&Ƿ`Pd5:9RZ۟ua-G":i xڌv2.4!6Rq}:_cwP@i _)n ZT5A\v(}ϗ ƨ1ٺElCDWї2j> {\^i~Z]]!ТRg8=,C2 wg%yn1Tٍ; j4d/l5g]M{d,m5t#r`|?mɖ{%vb(Ϫ?H8!U O}:(MrN]&ٕWFf1gL t)  >j<򠳒\mN]PMCcBD.03Vk+[0.{)~apg1]E<;0>?׼^|+*j]27̂]0f_}p]ܗ4KBLc%N}jkU1D{ 4(:1@KN?$YYho>|Q4pX8Ds.r0Y0*+; #imuZC&Lm@Hæ6&o,H@5}Ow鄉C@unTaЃ"xJ6GlbjǴ?oߣǕ3xԫMgg`3/%G}mҗJ2'{_f a!5C/e3a.3f i7$1ۤ %u55DT:1Sk!M0RHq8XggіSfR؞9}v/X 1zw{ 9kbZ/H09sDƶ40L951ߤd0: )CҀXl Ocj1d EzA&A,bM1.7b~a~y/w D^:glzE)mx3+b&ԫ^Z"}JZv2R)w6AƂ ]s}Dq"Hz'|%9ڀcw0}i S$RJ}㳡.CWBtAmehrY*Z[M%Ҥ>K&dJgD꧃ ^uؕrEr);_3VM`r]hQQ95VwNw |#Q7h\,oMe\FޭFM'u',lM!;uj/~6ei4C~ƺF Jw?4 B',ve?֕ud>,kzvP0aHsU%6zdgA%mDK{TYl1p,.M7RYߎ^);qs1`> fŀr̵A%֍rK3)FMvy1۽ȡ?&L2P^glQ^h# p}hsGfB̝d.=}jHK '|*RHshB߷+xvSҎ1jΓ\wH}n/ IL]5 n&rIp,0z\cO+@yӕb/=?́or/[9ۼ$qG؉%X$UŌlڝ!& FnKh4% '_!o'2- @!& u'}&^1F= n~'c8C tRoM!j0UTzU۾պ2oK]4|ǀI8smo|ҵFZw_w~D9+Ĉ]:޴/@LNRw8&tu|ȒpK on]y;1[c&2 1RGYeBtF TG'z|BՁBaZPYI9[nBQjPދ+^\"‚K~5JO^Ze]J&iGPAETZ;z3 AsyR2J෣1Y(#"J|VO݊dاx4rV㑧T fMIWRb_3a҇yc.vLYÈΛr}ZMa~bòӶ/P)wXO5 Ѡ0ZKZGo 0Ha^}| )Lݓ}iX6E3^ ( `iSg ^Rlyl%l#zί㸂Ul*9_hPpDx60^1DэR2c :Dfw ڼ&Rl;YU՘Ywczn?5J~#d ;t}v*صAy 'vUdCjBqq& *{^X.=^e{@OMBVtm`r-yɣ˟o+ˏ+p5*:7h*,^ `S#W"ַ;kW8ͧ%N:̔=|_^ *}01kQ2^@kG&t>Ηiqޕ|Wg̃deM{e{MTI,=Ņ@5;-gk=mkXy5vv`_DH t>Z6MJN3=BSde%ED2j XJgp`:`Q˪4Br IT!Urv rާ)uTXpȀس3;Hu]BC]3SLFBFbT_u,h34Gؕ;S+1@Uc~OM|p [ ֦Lev H}mڌo`]_he09=L;a e- ȥ#`Bgl])FӬ\gR̨WkdOM`A?' 5QRgJgUfmTOR9ㆈȶIav7g)զ,hX4\n/aG}sڭ\ @9+NuR[HIs6_y(q-$wm͟;2јbNϏ@pxk.'Rɱ2`=fBVQ\cejflN3/ ?~>k+vFMԑh_Jٓ/N”R|EQjEjȮIw,g^dSk!-Us[SGcmzSZulrC; _@(& P^W*Jir@:yS.ܞ8)j$(d. %q&`+a0aB+F f e,ɼ&m!U./S,w [L*iYCtzq}Vf:jm ewt=8}==67|u_`y~mEt*נWj3; ێAvxhXz 嬁5V"42u?NNOw\7|ZdŁp7iE^BVRVGc*>ZCCpbTޛlj n'`#0ISN gtƻ 5egt# h]KĕS:5FR3F#JlC[> -}K<wQvLk6(zn_#15|Mʦi !ꏖ!Mt}.BHKJJ=muwnpu%j%2 a4YG;4 |#C AyALVD  ;O-r8;S .J #_@yVjM}Yu1p'g]XUOQ*>f?L@˓cvҐ${GANDٲo-gapy*b\JIW?B)zkXհtZO$ZiM-|sE' H'8';8S,ѥe<9iӓ}c2(7o…_CjG5lA2®q(w@fCZb!e6eQ B ;{ѝ$-HNY@ Ek'q3$5}AB󭤛*^㻔 ь߇>+&e˞xgc^؟y`k '=рݹW- DFa j-32jͷD\=/ƊÆ+ i .6cߧOa1ű:ecN7 doωmd'b$YԮ!fQB/JP&ֆ#Tf8;L$k,jrDȠ7cðD wgb-\9XyriL$L~h*TH+bw7n#-{'rZ5[Oh.#T#>Y$)r40>-]=.g(^=jhh/T:Bӷq= & l,#OBA*ji,pW"Uxaۻ/TIx )mx(jr#tٳ1AG:Ӏȩ11Mک:"^[w}~m c*}8(1+7a#^}TrƋZAY.fUv;""3/iwl~?4tЎrkI _[1z`°fy!P* A fZ,]YK]̴+ 7xT2;(_Ɓw{l%yutk2bc*ǷON`܃S3 [U 䡤 _5wsLPkjXaJ>BWMѡrECr9#L'B0]ANI#"CF Nau5z#z Bp/YkHLH;sM^"#gϰ=!\R6K- wla .ֿ ,@=huɐcN.N'm^̬a-\sdUl[#3x6|AǙ>=Bz'}_slo$ˌ2ۿVb:";P0۝:"})╘6#'0we̙ }TmaN&o*FYs҃{uRԝVد6ڟZl؝b=6*{G1LϘH,@%,؝A/ϴ1C1N o>HT`_KOz8Ct Gf!Mx5xm&)Bu $@ƍx('ӟ;yho+H1OHHU&h(Q?°cʠɏoOcP9hէ=;;@WУ%n?!! ʰQ{(w.#I>bn!nk ΀FV]rF`ɷHť8!:<MkX!Bλ1NA"WER /f9D6 $k,WD ؈ قdgQy^v<5t*>1ES?K/WvOLէ֕1/$j$Asd۔= ED=GΚ Oy@b tL- Z1R'y6|Ώ[ ~pSט9JoRvRI2Qf$W)2D;GXhK]$xn;-#skI3:@J(R¹T^kU0frT2ueFͦǓϻZRa0w$?EۭWȲPb2Pd!~y+kNK9  &nBbBCt}';}\}>?2`M i7$B:G=I?Zmȇ@~s㖧7ǁ{U,G~I$]q5PAGf}s1 D$`wGߧ>C_-c.Fx'!o"C.o  Sx[E?Ff@_n%{sVoyYįe8Y*9 ^)z 1;FuoQnPQtU54q 3y7r DY/h99]Ħl(S\hYFVyI{`ozfs䉠h1%-g(xʎQ5>_`ˆ1WdM%`Ł16&Amťӑy@݂thK:kPCr~b 8"QTqA[U棕oDGiS#)Oַ2ÄDCH_0= {aXz 3~5Hզ+^;{ cސ6[Uʯ"jf5 =uҥ(׉"%#Vadt=wh~OZ}sBأYbXBݞιlsc2VVn5zkEhۮ#A皇\*sWr$p3*NKfKUȰ5Y$rp$"҈SX (~BN6TdCSt4BOrb3"qoxOF yjYHd{t嘅N `~Z!XqMv15L;h jf5$P,ҫ,:w^"V mֿA+op*1(c8ތ0q\vԟO>"٩@!)XȉVd݈Z>sc?Zr27p,/,;BrFd-"}a[U3^ӦAa[˙ ,lch䥈4Jl?|^&B4PY]ohor㊸6uU߄Y7GTOq)n1 ~'9QH͇ۧTRxd[a{gb.WkDNVR[D\d6DJ xcd8:[0h[guJ@ -=7@ɊGtqB糬,JEzԇvx,q6zwE0+TMb-Li=6Ӂ"bE3!o~rO 70O`,aF(v mMW:0ހV> 4V;txjשIܿ㺊7c6pG>4}Gv?W8}ʠxB.Q>ISE~$'qhdPQFGJXG6䋷Qŵs|kM N6EFAQ&1ǘ&OJCN`^R5(v*}ȚMQxauROEȳw,_Z[_Z/!x5޻tyE'[*5o!0 +;m~BYU+U'-qY]hoĐ럛]tXL?80 b B4: %"{m`Cvzu(OUKr\y"DGu[( S:9"s"CW\:IA`͍h]$5WV\[uKUˀbvTTwdF쥛*mZ3D%QUv]_+jFQ |s{.঩76̟oQ#rX/8"YFbΘE1C(]BqѷF?'5˟(K1Y-sԾT 2F3M'*$RմylpQ8S䅽|2x)vٿR)(w ӵxb6SծdNtފ7 F8,+[ye<M2q@7E2߈Զ}>r9 /T.KCk  %1aE@6-:Cm9g;ƕcʗJP6c~]C oFc $Q fIa1 5X{jHۚ`޲?0 mx_l4\4ڣbL#^ˀa!련nEol3W=bףD) nzّtvf{^r`"Ůk[͡F8 $|u[64P D⹋ ]횳OFvS_aMxj4Ίm"${Q0o/$%S\T[PB d0D'UlQH47#<;#cA>l O?0D ^ %],;_ܙ+\Xrp&Rո˄tUcI @foAo\֠}%)+)fY&Fx~脥%vQ S_EnzA P&$oh(;Isf ~JB&BOt !-RnO체`6OWG /]_ɟXoК" lSJn }4ɤ':QhxfzS~Yɞˀl<6Z@/Ī\Sr%?<\`KcZg&'Sj^IZɸ8Eha'"s),|6<į1rm+n{$Ź.,h#=8ЗIZF4h-LTn1Gm 6@V?/œj G)zVnqw+)})զ-[6ie}$wψMJ#lAG% !gGP(=j_p&=ZͲPRQג7qh1jހ P 0{ҏw\4j?s3o"D~D(IRG6!?| 073$1=YiB tw6_"TJ\WQPhE;:cdQd<π`؞k@B{ ӨM͟{g^|Xݑ釼3%+Mi\L˥S\j :t|nJJ5Rf"q *58 %9n)P^0>S;IPmjXe-|?|2Lj].a)q+%'ޥwi*Cok+\ &a&Zv<( xF~LVcymBn{V0(iB];+ЏoT`|9E =ht`#)r?ȢOpI/RBXӥ_La`#4p䥰ᜃ4 F2 iGaQi3Uϙ{DfTBJa7 5)('tvM\ޏc"`]ftClƧ#,'έ؞:~1X \bN٧M`+WbKzӧU涇<PݷMKGҌb(:JHY閮fpRV?u.аLDu.ćQ cJL"KOTޟXy4sOp$,I#[\`oy24Vka{B<^!kk2 WO<uh.9#ӨJ~TΖu>TzxnCXZR |K(]kpuiAJo-F0VPjhYCJJs~!կgv5'+ٞ>}+&~5 ̾Ebs`[̴IOob˷0b*37tMУRL3x5j:DeN%Cz{?ק?Ĭ gJ} \IpU }2)>xoc|ñ*|L"Ѻ^gyEj8Nc- ExejȨ?Q AӒ a1ZX vgN_{,$o]"IJS$OMIwIw)ǗV<60e$jHm(_lxmZU$֒20b^?g]2.#sudʾ_sXJ&nR~砀!1yb@E0&\(Ă{Iz=9͌3Bn͠fR5r0Nai'n$Cw;dE9+(iڋfN_I2a%ZZL493{eƀ_)Yp5AF-/,X~C|Q;LHŸ-VU}|C@Vq 5k=fS: Dm'!TQYWln?_ kDK *~dbNQ\FG3s!޲L@}4`\쿎l|X&4nڞe#Sr:d4Qc^9* .߸nUɥe19M8'42yN:d ǣptك>~CihH(`}+ *#byʤ+nf ;^x!,N/2Ā7qTCуW1omπm!rqG"'EMOTLexm|#‰#ѐ;6EPW~L9v0״HD|O|pݶFdc8.Qok#<`N]کsVu`Ε{[kfquO6+I5-kT$vZtGw  `Sz SK'{(C\5zfz~lKk/E](|b-͛]SwޙV vrӤ/g8X$Ka2uaOP7 kEN \;10<ƽ -P Tw/-Ȼ o`IF#Z˪ eQȬods\rEY/vB*_|0eKݑN26\b";ަ zғB,$7 $ 3+{LM:'Nבi5 (Bs(S1g)?Vidܶ_ȹa tCo覫uu {n} TD6:/'MXcb+gi~Eo@Ɂ8O`,q8ඵw ¬![K`}1d.{$5_Iej%Uq3s5+$+Oԅ#n[lfjk V799Gm0f8__7P8OdUKj =s/4&Mlx/!!PWA)k|zq DXn )(Z=>+bG|t b'/Rg& SjU7edU,mA٪ۑضq_z*pNxK.pD?2MQ$jjG3z gV⟎B>N?Crկ+_Nms BFĽ504e? D!}v". 9of^EfCְ9"./Ipٟ7 SB7!_^̲%7Z!61 ǀ$ykWmb'N "sew$4J 2b&8(!~dQ97` ˥lYܝ0i$r~NsZn:u}G %IB7aHd4Э9d)9ШKF4|%)@gdfp־V)Kk#]svY65IvLXZW;nX(-#'/6& (U;#+Ay@zLsuY`q[JXFDɚW.e( cu,znkmbq>OO͟vC!fe#` w/Q9C)iˁ\@(04ެI: Vk+ŖECO;\[!d k]!єIHXE2Inb}x=w'rK(^H n hRkVu1YדI_.wT+l4+X<)@K ېjtBDm[U9^D%@I/& 2ˡZ^-0;ldf+/=]mB>S/42;(V~|B&[y TZ,X~ Ugcp@ηV,Nv1]Ar I*JܡnCK.F1gs:&ۀ %b;i7&-^34ZK SB ]a[,~*<'cA{n+ N 1dqw,7D^&lg=oU ,缌 r@]æyl\iӗ7VrAL>/&39I kh;d-\4[Kc7fSCD|[OnKȅ_ٗ z eդbc7`$1 1AՎo:Go?^ V}Ք .[Kec՗"ZFx@Zu2OB9tS*>e DaW) ^؛$̈́R5i#Y 55?%ww)rrk2[+ ^@PG_MԈjo֬ fvddGƃi ‡r{O8/ִz P68Wn}OKT}0IPŸxn:})~b~-{z\\[e(x% VV `XuC (!/"m'.0evACٍ U:m&ו͵M,򅨋,6c;:Zf0ԽԚ9oeaH|]st aN@ 5r<xA{U}&&%}FANkމ&bA{@AقҠ >yeC -s[ ;N _R!N|8H#7iTa,3^m9/ʨ%h:Nk̓eN؊TE3TMm~C{$X N}'r]} %lh_ПpisRؠoŬLjWemI/F H`ҔaЩepx#Ud틅;b,L bQ ,2 3=dVRECJp^` ҳQdCu㑶<O~G/ 59;C?uF2gӛ0#LGm}.Y`I))SX[9KSc=ħs9_GQ M|kx3HG;fFE2DëoRkk+sڜ-(_ ƙcoڑ9]Km9&e L1^/ kT<$µ@m U2 ߰WQ/Mm(b)'~|*1ٚw ˃gBp@βEfd1 ;Hp H=_I#9w wƚ"9ҊNebT_ ܋|t?/u,Sӕ HTj|>+D oZ^b:ݏx㬴o)8Cq K &.j24~Vw'*>VGpD[M 2yFV6;0#JB2:ALgv.hr&;kn|8 ¼)KwĄY-[@2j$ <;jy*!ML2s-yŖǔPuE`GJ\$W 4b j2w!d\s;c7GHst?yj!-kZxH/_S ujz!gG #6^5ny0$ݚїĒS6oxѺw"On$Sr񊖢-Wdc~ѝu NpgJ9v(ue490xb+sԉ^P-ˠ'06a?! iLB= ļd_P]C$K7żɨR`toM'uh8vWeUlW|i3<6Gԃ< aC5r'$6DSS -RYйFdNB:s뷶o%֡`(8(狆jhloQ}ej *:#dFMs.rӤS:clNz9L`Pda'ٛzơЩ1Է>\VzB2τmLj?ÎdbFr=!k3!|ftzo犫@t+onuANGiUq&`Mȭ*{"Ple>n%]T>bҫS߇n{OϏ%jłx=òre[nz{_d9M*IϿb|$m+F-|N6QР YqPu?2J9hbQDn63&>yuu?vـPHҋ~FGEK.\( *j#'\0A W$}UdF},?ϖZ)r%% nXBǶ_<,L[.5 "%,r1 zY87VI6DQ8S{t nuK/_Dje4{5_}Qrr I70oc-4JMtb/!81i7 M8Ѡ{!F nK@ZCOL6p˝, v,R#}AA!|vjf { ujZw$rl!jN8 E$t'1( ~Fnx^ nϓj"ނSW{c.X7Jx,အM`9)r&>kgto#Yb}%3Fh &ZVȷKP>[ u nb\)"'~j]=A+CLAoɯʿ$fka@c폋&w& aeEtxDY:sI;5U[ \m38L},Wc{44NW!<,2 nҟ<R} 4֓6ˌG`rqӖ]RXdOHu> I1 8/KL-}dpkцʮ1zt oo٦H]ȗOviQ0Zt~yN W^[^)Ö&ݷEYj2g~Q[k'2oÖeBRNZ,dIb"?򸩲̰U2o%́8WFQB_n &_SgC5GwX`|S%ȚN-Zkx*fҎF-/HD``QMASx}:xX8nPnYcODJxK6-[hEhpl֫^wxF2) rR(>pBYA`QR1rƥO =\3h!OmTz0#.i .kQ=x}$Nj=D^׾G/P_@35ӏ[=jqcٿl2ŗ|/Dh`w[t8T@Z)W.q(L{7+X甈CIW L*kc@q)/|Qd/{jK{wOTǷ\Mw@\ *+xkSF8|ӼDWȀ4mKN~.>fg_ JRs#op!EOM#/XcOU_'7HiR Xtej1|55X^׉?L=M퓢 RkBHO"1!abgr`B N  -؊ rԲ>̌SD(|*.znQ qJ cel3J@D1PvsN(T4>zBh=\ac~f,t d" t(L ɱdǗƌ3Ud,>s'dTv5gUm:8kx.(X+v3 ;^̏VI2"KXp\Ir-HK+e:OTDn@3splO?/50 b>"arYdi }{_^Hb)!I+>fdrF* ɶÎ*!gl>ľѐ&XWdzEMg?l*?(Eh8]d4"،RZ^iI5'a |^壁.'~vj(ZeF<IgY/JPXTJ>p':ӞŠkJx(Kkѵ:S ZǘdV2~vyZSý"#w݅JoҢ]&@r2D0pKO~pS~ȍfq笢fOzrүwOTqFʫ&WlX\khl6pF`:ȟLݡ%L0  D-JkQ`ΔHhǚסV!+F(Shqqlg79wxHVU"ep%0Kw*O>gԮZӥE)}WO1BiҖ1|7{00;Nl| .oCbzѧQ/&:c쿦KvpuK|j 8S"WVF(S&D- #ҴǷ`MB kan`#Y\"c;m/Le`<\UqQ} 9(_?.qXyy] ) r$?29lh5d ROv<91مujhՏřmOڬ {ݿ&R?W@FUެ'l{ 9!̊lXw@՜4e,q~wcc5"M4{WJضH.C?ӔB"AAVHXJPXmt%ՆLtGmS}zT@ι4NZssn4W\@D0I/RVHf h/ͽUQɈZ&ܑ病.ךg f'͛KòmH{ʆO߽=Ϙf};;ʯIeM-=yAΞ=xq~W4e'?ӽ-XI};S;߇ F(~ t:޺8#8M'}LBKk@S!(i98{Y:5Q.Ү&O&hF* 9/s -t2,ϟi(-T @KMi93+&i?XDRJ&_ZvdD #7áITBC8z,~[S<=3+p;E ܚܼzF YW)>k{C0(Y`aYۡglfhܩp{ң^ii_!49BnMoLHƒátd伐ìJqnxB.;{[7G~ kbwcP\' .ؕ)s^Hfumk_8b0y-[+xϾvTkŐ>@RLgԗe|3cf+DrP k{Sρʝv.xx֙:^Oߓ\QߝvWVi-LDSK-扱jPҨ);*"r6j|j Pv9j [&6ٗL,zP(~`9GDv|r}O7 Uc{2ZҚ7ºjO{M'C鮑;o'IiE0P3tgީ6r+}`Vb9N\ݜ Ƴg%H6r=XE_.}q':a|n~gZ4KVYn {3?菊@N nMδZ5[#,n"ZHn DM$[tM*.=jNzPZt@ܫ4e*exm[M ښ#`syj<ؒ,$y$@]sUj& Eg} ~R忾Y9HEQ,ct+ :2:/IpǃKo83o(*}(@ׁ H,f˰/ _E`>"調!:&vܖ&5zzvJt M.` I MJNJduy؇'˷{G#kHnq~;D)r1ȼ$>#g(_Zٚժ$~`HC]P?_$Wg\fR'/yѹ HjSEbpEz;:`$hwɣ+~C,3nDq=k?!e,Nz+:`X`q0$N}hz0u,=I?$Nw[11c#QI@"~D1y'MRҜg$erV\SpK}m!DYVcޟVs`n8]dqBC{9)j ‘٠I}|! e/be"A aRIi`lV,_k,䆐18Bӓ :M3bZ,v{D+ 1t7mI$a]a/G<޹fcu;R-2Tit[cW UjFfІB#nU:^gRF |u''Pl0$bzi92nDrl e(UE1r񁯖7q!?ziRNLKA>FKQӁϩwY皩= L%ɣwvdp _b'԰)n1VoXHhk9ƸiCHM1MfHH;*5$dLnNI $◕D?F +ZMDY}m D75hDG=KB9.e=jP.J%39MlF&g}Ơr nGkr_9ui&Oi5#M"_KC_4 ,%}|Œ[`LFIx (Brĭydq%‚hiuc+b+I}F"M'8S/ldf$EJ2KDzBЂgHP(^7 24NwÑ(+¾ ZqZM6PqsaU'QĎosg^osMW{b}?3`,U((mVH~BܒfܴY3fkPJRS؋DMĵJk%zR=XoڶV=R㬱m;2pEF43kKKoj< [GjoV; Ut¨?%9BLtLXc{Do2gr`lW(=F_&=4͖$@n%k1鴢0Xo;2dN(ϦxDrBHM`䆓 ha-DA7t_d޴I ~6@TZ@$hQ9I,\+f7>{b$skn> V$*h*Oـ螘U2]=;o5Ye׉9r6:% ]C:1ay'vg6NX(am{9]\i1ߛ~7tLRCgLB0%wjCMYvN=/@V;g\6qUu{SzoN9\" @IRNQgZ*B}r5c$RQָJ+?MasAT(`w-&꼟=aglXYG4D(NjK&myj6x19ikN=$+8_VNS;v{|x$Ɇ/}b8ޛ/- Xc㽈foJ{<6o EZOHтSN[r$#gV/w%ڲ,HcYN*n_߽!%}XsK9p2<vs ق6j4٥`.?-Zcs\}'m43 cWK: 8?x?bn5kb@@/!6S#L7< k~vO$'~ Ⱥ+, `w*${I(3ʞ#tn¡.s'$JL Vj9\"A4 <0E$'K ~[U]`9@Da>'"ZWdmz0=t?q[or=H" =x/7%) -C-:hH&֊YhXsQ Ͷ+ZihbKs̤tW$ى'7dN%,+>s`Qt` C+[3L.d̦0igJp;tTd+*2f GLuگ0,#T+?8^H]5mS)m*]Q[Y,%&70bU. , `>ov %w=1?ȤD 2}b{<$Rs 0LjAv(gY# \]!9K9 q `?96~HBLz& ayQH/vJMkXU,ڶhVnGz1xv萣DS쎗_Y Xn\nzoqg]'a/NkZQAQ&4:)mkV`h`L_nfȕi ws/ Un0]Q8=@&00Aj~[N']1p|爫EOIk^C\K4ϠJUHdgTc ̿$[dݝAh>sB&4eN VQ"ɲG0f=({eZx?EUZk'SԮ˔S 9 ڏs1ʄI Lr*!ȺYS͏GN: =z;;w@p ɞ=\.obahrj)aO4w(ͷ Р̖PzE_.Fo5i3yG恣VFل_wg\.[Uu}pjC_>p y0S8CϛN,r&zidϞ8@':qA@Sҵ2ZqO#u0U4E{ ^F*:#/ye_We[qK䡊^J͝)$fTUvŞ >NeeKv| 3)#2qzwΦna]pv(~8F@QS 2:b1}4M!,3! CدJ^+L/ԘT0L¢J2J8!IU&t՜Vj&&mբDv7|:i ˷V7/_bQv+O> R3:Y&!}ǐxjn$LF+%LD7BBdIn4#]Ny^nA֌$H?scg'^N.&[g]YM5,{&TxkI~~*݅ޫ![HxCZ>ۻ549^GHRyœ57ك'tϡ8E\x2ApR" Qo:<@&Ֆɻ;4L$Jn9__eJyc9kwR;Y>7Dx=Qݍd ` B A,FmO wrC/ɥ.XKCy}XUヽ4;&)gLp>lt5e__nHC^lw@`OW{U3$Z1nzْ۬0AvO˻ǟSO䠬⯬G&}j`^:C#9 T®(1 .pH%* XRS{?mpٽ.N ?8m1axP9r9rlf󥭇f#F#]@S,.kukA59K 7ټ~Uwi{ Fq*B<G5\M0>qd%vy@Ѧ'c ChJhXwawҵ3u 58#w˜|ʊ}KY1AnaO< Ֆ(j^?s˸*9}`߯ :j{'cv[WD!Yw4=2s8Ai;sO'ZkCD`*HMvCd$c+Ӧ뿣7tG^"# 18DH;t#A: |Lz$GfZMxmCdGJ.J~8ڽaz^OHϲaj˕̓hmC*MG'> |RDG}NՍmw1KB:Exߡc(,ҴEɵNbJSY+8fLݏ2\95cp{dJv)q+$O-@kXDZDRoNfD_Qco_"t~_lJ z-?XUPBC 9n,vwYcie9G3N^]UMA_#?Be, =%#B=|g#1گ4o]#jTޞ3Fڗ7}D*쐦h{3uY%$jO:@ݱ@)<@khO ]"b?x)4,k9'i>`3b~rdXTqv_z:Z+"1 8rL&)4ȍ#]Nuie"H|;$.5 NQe-4w>w;Nux l5AIېduiuo :V16lܽ;jAS!3칵)pG`)yZ[ًማ0)a:РqUA8Xx?̰q*w}猪`Ѳ~;Ie0<$v8;G}EXiLtC TmO5d@ǘ; <_VTX@ | nwbV{mO++.|KKu2Ȕ~7ii,[KGmF\~}}p7( bnv_&N'Um =IP|%xPjrU;:\%w{1zz$%gsJMvŭ&`Hțq)^cLY6A^jC΁Mf,P'@&`òEΙb(m,:h)>LmHE){[f]zZ x&3]|AU=)vUWuRϱϷx1ϖȐPy櫘撗:lDF^$ZCNo*r TTQ{wF*{ !1*kƯ4J/W=s7*] XpVpy<Ըr0q,2SHD(5O8ӫ"&2vMuOd8v2ʱ~VzDpA_(iI|8LǛ&}ITZߪ#w 'wG٦']N9e-$J@&+3l8:EPn!_xQbm70x}N+\o ^L 9+)%VoΣn56^sv==}:QEۼI%y J\<7ʥ+Psܸ%L}ɑYJ; f-3@cǺK3uk~(2뼿[=WԔJmḅ<%hqNul񆈔˫X{ř⌉'to/x0 I6WO%ЪBKՇÓ}F ~Prh^Kd =rW ܵeK+*ZD' ?E$CGW˫lv]KOt ^ J6~$U?wdzvM2\jg#sXhy<taB#2HǷN)dmlJ%Hg?QcWɯR/lc3A $J+rwC|"'j8,vdDX>*ZNH1WUh'ݡBzw6*ߔ^2+-hD Jo^oj;ՒDt hO;6'GTcKgJ,plel6K x%(h=@opo1^Ē'2曍C1漍ơI)ꔭvHtnI9t@V/If[\E|4 v6>Z+31_~I>LA~Xt $֗P3T&⭸頡ʔ yE$׶+ov*S5akWIC\P1%!l V+@=zJ q x 94zd 1Bh"f;mw15$b.?;nڴҦ/^+'9;JZtNu$XO|=i, fjÓNkZ/I8T5{P{iP`_Tc\ 55(%fk(<*]KK~\"T 9 MW9c{. i_oPMXe?1B!U.("%JxBVټ  E\DCŪGGGY9.;X 7^vBԌm 1hT#օo+t2rkS.&h:`衴lA4Ns&!{Ad)&V1{4T/Z]M5#vĕ< ?7>][M@Eo(H8Ȗ(uWݗc}j,&~?/66m*Ӎ<)nLζ[(~ֆͤ,[BCF8; ?~וnȈVhJÌyڑo-V`uۘNTu|ogJ\uOO8<>t ))Dq z&wIrbhȵx쮤Mqd߶JOi.Boteg=RU0mQr\5r.[]ycqCL۝rMBH iu>=ƶWa,IhpW1RZ0Sޔ ռHG-I?UIR>BR6uLT~Ǹ)GJȐ?pKb8u ",۫ $DZ˞ MY̸FOJತ#n9{A9X[IyI.\hMxlﭑ>cn{D)O0bsr<+w:Izكe`bՋi~za΁$Wu[G3R=Py|ϲſ!špo orTDN5 ha"R_T@g4m EwW?20 &A)b(X'͛K 3IPRX^^+n%EZD*3ՑgeGj_!᪖?Ս! &^:iJV{]w)[_k1; ^XȎsvcQ;a5?8Cy^oct~rn0݉} U D>h"#fZYaB /=E0#!1ny V`FthH @}%z~a޹KT-1ag+ ຨ5=!`N dZ;u36Gr$G @q0D gqJD"䡔l ^*;\x͖ke܆BY-Ai&'߶,__^tEdA01 |eT<EpUl݌PT%,ݎGJQ[>ruL_JmFNgp}+=2@-'Z|vvB@ʡ:mx9GCX"|6k<Ο,"K-%dn"sZ T xyO5`#6qحB| ď4ǯ[\y5\Cs3v2hPՇz ;>*=>2pd34Ipr@{Ec}%w,%!J0Kܮ8iAAdYޝ5?f˙|$vdFh 72ҊNna6á$k$ nn"vAܝg$LY"~;;I{y~fޢukaKPOEOP{dD@\Q/He\%nDd{?%5b vCCàz3@VҷN$ǥ~U^_՞hcC8`k].>u=P:N9eJ#TtpvzhC'»pgXaK* PG( &Ht8v084DȮT:Ǩ"BӴfgd">TfBh8rˤQ3wo-TN)yxto#@_e2 Sot,7xH֭o'2)fYx-f  q s#w$xi,}LҎlgţYۍ*б1P_I 3>˄kq`ZX)34ᐣ-P_X+s}5\.q*,gՐ9scQ-3B tY |DːFO;8)4lQ"JH )a&<o{+cLKߤM-3m},[xU> UPT1*S13G]<ɒC<C3<>*0S}|X"52)A pI,4|jj6 ^9 ۋaƌ 8zिd̼}vðGІ'+U( :cVzt9/#*3Vᰰ9pnVe∷Sp_JWX4S"[ ^5вzu*&Ӄ8}bA?B:Z Q%f2!e{TVovk=xK e>}Z]r (IlG@ C*j6g^f,[a} mƶ&wck'LE}:"JJ _zj}+IN(Λ_IO,kOb̊\)/I:sJ?/2&- ɁubUym8eTVF9!菳r'150#ANS$P>e| ~ysxBwXR W Ô 4Uy0t,W|s?<"#fI;O(A: +BNl1֚~p;hK65DeT{.(;e3|TX abS( ;YV OxnK0"u' ϳu0GUHj XZT͙@bHWUt@K55sRfݥZUMJi Zeɩ>įSQ*WZwC;B [Қ:/ƖȵDXʦܙǬ! 1B1"Pڪ- }$UWҲB[7ӗd(Q>_Ht!.#֫\mkY-pUY[4;DyY\);ؚc[ 6$24#DCÒkmWݡJ͂ELƯ IUh EZI Cu.ߚa :v#3L.;qI]o./g$_2y`&gX['̛; 1]O LsyvZzo=f `AT0N)aCj( ٔӌ/Tfu9g|'Cd*6K|F:"'< /]= ]sӜ4H ]jJ T74V;IGS {r'(YifC3{$9Ӫz5Mp`iNܲňY!+WBM/ӈI<$B71]pA,?׫RfCVR{zVՕ!;ڛMow] "͞OlY ".'UBi寧%=@ʷM7:S٦I3#7ObrYC6gE=\ZJ/8^]-LZ6|L,!t)l3ibb)q84_M2Wl~ UgPex(jGZ{nT2NIGpætl5wG5X/ DhuK@wpvJ}:xce>Ύ8_x`^A~T.tYd]*}|Uyd*0BM$8Gb6,c93yTdQۚ$oDjb70tĉ^ʴ1$rS SIu;[v,[.gzmb#+ǥ͢qN zG6_z^7_+CfTGT; &$fXR4BjA·lȵTw~#CHeL#Ⱦ䂘U5M+W,uvv~<4pL{h3Έ>2 yWyT/*R.qf宅y"`BIҦFn]LuAY_5&8PPY>hMntMyJ7FUܛXW_G2YN zٚɕ2޳.^E2;^o#*= * @/5)&<_U)bx9#4>˰@V'! RV(!uI`[L V#)Q҇ Y])w|I $]X4)УjzLnqS!,1Q]f=H-TdِE(NK]́2ͤki Nzg,b;6]2A1WżщJf=mpD ԹbZ9n9^:1bw1hps:p9?"WeyO DZK׫WΑ ~Jtu;i#<,0|nyaVZd!9ܥdVf iGg|zlc Ra஫Xam3w+Ⱥ0; #7V ٓ[<^KO,vse.dG,%Y HHvX`a ޥ8B¨+m2/^UmkFm3a^KxKZErJ4wXy4 0< :sIq%5njg$Skʁ5ҽwMף/LQ]IH@oQcSUـOKS3ΣWW\U*砌/Ѩf5ڲD"uJH!;b] t[U'+[Exp3\^GFj -8ҭ #wv@}:ȸ´;r/IXώ3/$pTg+X 짰f0(hR`ʇۥ!IoJ}k*ޟl/dcFDO6g)B'3Ay+vo?idmu{۴k~etN ](+7|ޣZbri<]owyRu X `Bx3w2Zǀkx1pzuz0i1x&UluGtpKbOB$ 9+Bf^y^>q(|k:Udc@ )%+LхK*";Vہbv\–@&N;ﭴ4#0 G@#OZ vEyE."̬/E^K2"t6qK;sxǡ29mG2;eΌܔ m Ry(5|s?\f.ߵg[ ⟐Tp'v0ôFZCVp9F!G Snhb P75 nC.}ۊo_wHZ3kpqRzpvBP"ٱbyMIo|rm(18%9xQo u\%0FW>9us K2uDDS%A3%&M:rb \MhL@;*nSR˜^Yo#hcF/E]& [Gf`=lL`0bY5uGQCHVz+;=PYd^eLH!?D tfmmطl5`8*~^vMP#|uՐ]炰 40D$m.ߣoMlIP3*csۈ_匝 5ʻP-ç2`~tCE=߰vh8;e# v3c3q$_žŕwAul%iCC0_؜7iۡIZ VGc\dA-14 rt8Uސd:̅SAj#3v"cm>"TC$r+ZXo$ݨM]>x{$n_i@ZdSMéA8fM٣7|%-s-QvbķmJ ̃5q>xZZ}*^bC2yDq̨҆rnoۑW.Z^.B)^줿D:ZT=% 9MJK Rioභt YayX&0m#cxq;) ZC(-̞9aې\KM2.q&S|9߽rJt݁ʙWcס^jw'KNٻA#xJA<*0Aj'd MW󐒴jW~ѳzKԾ &X/">zQ21lSߊ2>ope^=(XvbH8}Y:+6Ś.z~>+XD19洰[7Uz~B\Y,)e~+OŤ%ԣXbc ΖP>JlmY6M0S!H)`p1A;Vܽ"ؙ=Ϯtբ߸?nT 843ϡ%8xZԷQp܂}HMfq+8L73)~aN= k:ggJ ޥ:L˫Ì3ݞd"zL=qwz=P9v6 l`bSڲ<Hq GJmp2¥#HpĎM4~~{6i)ZErc %_ JeYX:ny1g*HZM|%Hv)Kgt?}<"S1T_RlN>LP/\gwl*@%#(`7fmtT!BřfDꕚ5JM 7AcmxX/?&Kmc3$o~&ԾfrH WgwB<-A-JP$.lʲ'F>>15,Qq[/ת3|)XÖ$X<PPS:T_s<-6r;hKq/={[ɚ0 _Cntkzʹy]Gf{KyIt Y7倢q Pb+1i[X 5-ѥ3  [_"n{eļfhZd[k=Hhw8k`<>tjySοl?VMjfeWlQV>.6p߱bS=#;MGc2P08MC}xQjM48rl.$9LL\s1rI]^zO#dg*\_ m"8jmc&c9 c |]ɥ 0rp4wkGnU]bQgC[ͷIqSoGj.]4.-<hy"DbI`T31ry@}y<->i=BTM H|q#SEY+ 񆑣gj-Dl6t{ ߇/0*Ufwtps; neM$]%ۘܫ($c4oPBIp\;u)Sdxk6oiYs'[PV6%>S~׾\&]4TLw49~ vxn0=,F\v"vH VtFijl?aO\3(҉%jşa E=Zb.%3_7ޔf.>g\ t\,yQ0d,d %H!ra(K FzX4aG<> vM쯠fU! )9 WrNsjr(FR@gԈ !N+G_̫N Zݙ4.ڧ&A5~BSQCЄ;i.XeCw5FZ<"mAF $f6 V\` PSvwc[hX6ڿ->}UY#d`P· ^ g!|:as5ȇ ZuqFjp 椡d^M24vF _{SMl}?{s`ji T@!4[ +!K'7V+ R_rkOpWYs؃vmmw7gGw' q"@bC ek";?ՂЇ/N^{dX/Da?ޚgF<],4x/PW!K9 oK؍i8Ĺx2j͕AyqA }׺RUea,7sKT7bʍ$'nI`x ԳրzA \#;S-#H~׫٧΁hAp]XHרaw$_]OPޚaI,,&'ҟ1 %Keso}% ! Hs?Vu} :sYb(uoȥ8^B4iSer =MeC`2^W> O7zmv9-_n=l|`ק}teΰ:"˵*7b$D>7{%77lE{Isӑ˺ k?m:m% (󱝙v+D -!rI=us_J,$-otCڊnjuuVI[`NMB,͔oDŽ/P|ۜ[Ђ#ßw PsYWlc 2礫 ,vDS/A#W?e0"{' OO˒WVq{u ޷KJVB6W;OBZx!Kw$HnEuGߜ!%I.ޭrB*} f-z7Iijߡtgezǁtӿے9;fg3?FŕF/J*9JY87!o kq7b sܸЀ}%mD+1n{M= \" %½ؕ הܭ41oe=6@1݊x r]0. ^\JnBdRF(2*Ԯo7!ICoR8HtOmmhu oYo9[Sz `{Oש,mw{06O\Oy|mѥL[BDEbfU|DI̡=uR[G`(SvJ04qXj0kkUp.m$t |Xp A2y[ԣK(e,[R1܊:܅ʰG&ҷ %,_ bgM XfhEyTBo6;{qDoj2ѨҬ@?h$Yay9ߵTS(zb{b/CuSh*{0g1)Z Ŭ9ftLTBt9{ך]H h130\hqòIhդNkvn:JmZėb.K莪HmP$S곓䂡aR2ҥEs[Ԟ++{SfJpC7 4` MM3he vcly~R0tŭajp{QVW-a cnDW5XpoQӐ N;S)b 0pr8Jc!͍ 3_ldk^}/PpG5g(r=F&oS0ck3<Ȼ7j ;1r$$0fקJD!Sv1AD;t7&wr~CI T e$eh p"8T@<S /t.oLiސJ6!Bj[[&htqI`|.%C9y8k^giuOs1AE4"SXm;^} >yj]s[s'A .@^ C]vo!' ;3qiByr؇UUeGg"r %:iޭ8lEX~V?^͵-(+p8)E z*F&Hǟ7ZÚB텉ϡi٥~Z'&F6huP:yYGbQ%YGtAF6}X3hBPg~˴cauw>Yy -o6fׇA3!îʣ_g0Mt=x "Sr17K}wU^heMfxnS PG5Z1?zwd>Oϫįj|*ɀbcȶ)Hk 7wLJqfDC&[Ce̝]@1Y"VeJ" zFGc7T,t8*PpO ɎmѿwӾ2TЪO O;w9 5y"eHӟJ4 J +p8m.fB^y”q>?p! p|C[lJGRaD p6C'b6PP=o4Dc1r-6b=*#HW~;ub/-K卪ay <@?:Ft䍬)ʿs李At.xagQQA =EӿҺ}@ؽ"yQ,tRjKD = _}ɱ8ip<zke5dd.Ig›刦lLse8A}qKQHPS%wJ¿*y+$_PHM[ K8_kRE[TJ>/ϟjR+9QA8x5 ק9|Ƅ03ĖWL h1h ȗJ(=6^/j5s_-p5g>¯Q#^nhKa9ˏWʒ_LhY:%#JYHhI:n|1 )' s7!Z1-hZa}#+R/ ]s6Ơm?. ?҂#Fvby95dPx;}W rXYmg&oMcf7'z "nzT}s /(DNc~)sMPf% CT!LRW$4~02ѶP\āuƭ9_HMן.rBiG7ĿOaS-嶃 ӿ# \`ẋA}[_ʖD:O5$bD8!*- iq$Ga'g^q^h8?Rqׯ-.#hEi3۽p 71HEAH*LN5]d@3`vdQ2~9{S# |{A6rMĤ:Ǭ1낿3Ԍ^MāZK~z,Wr&Qd4x:\3al۱X+#L+R dm广egl ZQQwvΓgL{ u>t2;YʱY-.ܹq].+Յx?b 8p!sHQd'ϼV1,.#'V/etgoM:fb =W]CZqcmT`bRh#{ /S8#ӵ \*=ke37'%/WBIlWj;O4'2i|#]_G6UL B%McCIr1-hiU3]f\̃hP4^/~<@}]j0ncY@vgN"lSؿ:iNUPaJ'pIO\ssIbN~m~ЉF-( -?ұ572`fPY |Hx_\"vPr,n5Eo^ 5#B)_սMBOJA9bQKidfPW5iݓ ܻlĻLn0T 2I9?uv7s? \X!Kc"';]2=e # ƄéB t{HGҎB1!Y9d:Nkzva@UeHj"YS'W)_WVbYߍsj߁h{vdFGW:㹫;3;|ٞgv mJl(N=^'[pZ2j.IGмIF[׏3:"JނH"-qHwg;GfXdǭYJrG2Ů*BGIajXtb$y1l@ԥ3 [9qCĤL r'fgW|Wd5Af_|zyGv}W>NHiGR.ʱ)سס?U/{6XN,?=]DMLFٕBٝhadCZmJ*,A9Y4Imd"#O/="UL:7͹:0f, qRG}[w2d< 0cm&fYI|VP42Ap<ٞ&9O퍢:f@0Ӡ6!|-v}1}p?G ƪe9\Kgj,T(%༖-u+{5EbTrm=p>+gx!(VtvT?ڒ:VbC6ω| m\~?tG%[WEC݋j=t:EisEo@}j|qb:WkNݬB@k|CK^ )ߕzg\OW٤e/ {3W(73F,¿ʰzda ΄p3y˞ 0z:_D xGhq^Bl,nቱ O$3dgpjG^CyE6lނGӘ{#lr VCPG6lT|7}3:ܳG6}I*b.yP 8Ճe2A~kLi}k*vKqǯd MN旅T[~ x~ PT3jI`[6>"udQH9UQwM 4@ <gVu eOW5!7U7;"LiA6@ y6D m.>q]p&K; aӡԞ]?f|s5~r)^mIؾ^uS[VLix} ^'MK_7颅􀔻\J)_fodו]WL7t`X2P~4CеP9[as_.[ySbo4Ips' {110gxyM ;2=13Wc1銄EzZl.#<J'dXPJeӘYr!cݤAyo Omlۏ /9r W1 '!vVYHPq2<𧛐TnMjjLk8b>xD/!Wbf P{jT8 Ne2YЅȊD!xtƦu2ܪ-,pk1]~{y#^?修h!;՟&7Гs8}E+diz%kPPX7nlͬA! *KnX|ܾ!*-~H_ξh#=)dzVmNtAhb@BG㘐lrbmO*lc#RԴ/F=SC^R{sQ;=~Ƚ9{sEK .om31S5 bP_0$C u<_n S3Xp)OOT8re]֣5zv.@[UEYA~ֵ91/|"OBŁ}l‘T}fn~@#A&E7ISmBI|V8p{Zax̼ѷaQաfYV\p*ȕNg,H Mȅh!?*)2VD-l|}X^66s2,X[F{7z~KP0rk4@9mdm&SϖBPX)[ p1U5H*oNT&KioO Dk%a$ rv[],'WjCcd@塡DXd /Z.Я z8mbK.36 J7 lDQeRm3) ȐC ,031ox7ō<}izȶT>wA?8-/gp~Y]rp?5ͳP0 K $'XOSCX4jD5*A4eۦp9]郆$CblAE%j&0-FW1prD}8K?{Ah41)oawGPHQuYC,3-yĥQEo{ɷ#FT"fZ*E=h>Md'bY$i'/&Ծ?nm7pxh.geXBp=ŷ ԖD5DD%2} Q_$4<QV!6Km>z'y#M}a3,^T. r~=gs"p{g=SN;zhjJ4J֏#}#"6aLU%ZMr7D# X',[V$^% w>[jvbDTx!rHH, KV6T?K 8!ִLzv.O˵* qAՕ5O. 䣃\rR3 wZtoXab첷1/X%PYY=;~Vt֔e䢞?OusNpZCB}؇c@f 1jؠϨR}WҝpĚ+nBfUYf0RScDFY*]4n \mS?%,eP+Ǥ?`|Eka_l[=iqÎZ"3G] CGo,_D$h:r:w/'a{MJVt20#x"TpfP8UCɫG,Ǣخ[d}PŊ>D=p%gv!Р4Pk1!@ 6_ѐbBI $ u}bvGq຦癕P?b*u;Ehw,nK~@D~~ +Ý\g_q-~8ZnMzVgTm^*Q X`Pt?y 7-9/c #_C x. l8oq͢LT?P/_$/ L(4*ӤĕCfqvPAKd/tJp%t0~0,ik[=Oڏ1pP: ٛs^=YJn_r-ٵFTtyrj30LrS^+SU 3ST[[|KqRf) CF%rJ҅Ϧ)R8z@Qʾ9H(L}#.Uq&N 5OS+ &lL9cEVPqX2S[gKO%),m1R@F%=2B(`C ؎c2U`&E^v! fJ _П'ɌP9JD W^-˄@Nҫ*fsɖ'YICH/Wy 2# aкNGP`TN݂+E]3gz\`گY(ɋh~c V;GGsʎ)>M֬j.ecAhFHobFEڲ{y5f1ʤW$m=y&X/w}5[ILwV!R ZQR;PF-gkZֻl1%_1ԃvQ"9{;THrU k2}9'j;mS\ux&]0BRB@mI*R—En9J\h|+4g nf]_^l2ڜݫ<$yr jY7֪n4A-1uP&8f4ʙft•5DJ FOW]gM'o|3|bsee kY}qq&ݟ}AYg1 x] 8ڑ(,SIGF\G-"@.Ĩqqg%9C4Px"y `@:97;9Ej[>j&n6atfvv_8Q c rNJUE.[]d-&_9rW Z/A4`ė?Pq*^$ B+ 8Dn{Cޭ.Q:&fn'j#R_VDN,"9:9ꆶSPLTu#oZwMg"w7hE╸`t3/q89(~ʭq\H4:7NWȏcUw&R2ZMs3ُ |1!ROGQˮ)ŬKSV EJ-lSda~EFo"8p\K+>ȱ]y2yȉ7lT;b$<0_/0羺ɥ-Cu/sd{wEm  wQ XHYRL8y9s4^LY{5f< oH*#qm4!^``V>dOφmRfݿ;fE 1|M꒎t19w;Aimof%ܗg r;+pX-ۧ77͑JLGhIQ`==L` M(hP5ogua/AƄ"OA;&wf@e)G?LtkIhN<-9V9NQ8 &t-@^ȅhX2ѷ\[3?n/LhֶүCF$tګk'A7m՚9ʟ|ԻN3;F1!4j/pa4s&&=4%0K ’qKܠ5\\-:f[*⊺b$ZdEojwl`\ʒgI\R;-j\GXv)CXwh w ɡѿ4O 50PS>e@ jX[XNKp8Eąsa@v[T1D*Ήr%&EV:s'I Ȼ,.D.llxzڑ{3u! XiQ xI#]U@ʣ" ް_2j܌txd1K׌5< bqTO߰f]cx Z 3xs%,]^ E?I l}7BZӁpyΌӥRJ6\; X=_gF,E@> >먶/\"k$jL2}^}JYưR\'sX ߧd2f~c.ReEӄͭO.cÈ7ؐq+kktރn AxO0s=exz[tB->wu*`tf `9T|2Isx(ZsTX\ "ÛdZ_g5yM {6O#Vzej$XH{WmRnDrVnH7NO-CW| Ǩ_oYt֢u2Tƶ'2S!yA ,֛TtHw|WFu2pϪ {<3 #kfSWV2_2ּTYOv9Єu5m<5!4^Fy|>K$Լq'Yo\V^.45}PvpI(M #J ӝ+Yuea9wd͑2Qc(6&hqR5N;DDB'BOvD3'wtqVѱ󛾪'jށU-C{<ۍN:ɈBіhc_C<& \y&R|,'NbIފn{Qzݽ—bDm$t42+45*ON$~*[V)Ba)}fP4&HsxX$bvy7aYT3ɶLisv]ߏP[Zw~Ġ&.^ExlFOuJefI;߳O$uIOx3Q %s+h(5Ow\Rƨã_ǽ2BqL~(n=im/VI.R1n(Yr,1/--եd@ZF5+jv ?@WP5_ZRL{FY>iS`e![#63>֣2Ymdy|,xEFCpsBc0r`T/)n9!` Hgy3RLgsV3-YdM+ e޲:f@u \%cL=vC0"SnɽWYEuIlr߹&d'9)2^D$s9gb']%, ,u)ARtZPFfEI:5^{4=omMؤ?I&0\JVItQי{oQ<i9cf^Z1BG/q!C=e! m~W=%{fϹlfl!W t R2$da'9}]PA%cUwbV8:GL_D]DO˕EiT ]?=7-^D6UU&L==/pX:mfQ17Wb;O]YCl^Y ;B 7* y+-z9s'{t7D՚3=񁝎q xC-7ϰ+J%1ng]RV[4HVbff;xfȖ齹 % 9$ )Sx]B|`!^ЖuP kaT<$z&,`j0p,}$潞ek+'Hqr4/ߏ9dY/4 mzs܍k8:x(/Ed:k0Uᔪ_{ UpC jSQG|Z 2$/DNzP+3fO.5_CPizCw#0ޢ L=^m/y2sPۙ0I:?-O~.b3002pOޞ3H2ig%aT,^=*П;]q ; ;{b Z7RõzSq /SݸfGX^DUī{~yqHk.]=h> td&.g ԌNDW$ u{0 틤Q7AY byr߉!6o4ͼ L)D{,Xn4W>A$jJ'}|o,)Q#r|s!aT9D72IAMN)/RCҙ{T76ɺ>twD)sP~PЊpRO;6̫_*?Ց!܀թi t}uF uM?r-Ɛ+=X4 V/*a=BYLj嶢gx1U6-o80bB$eB(`kp/m hK.;d ֗ yU L|9. aQ58a@luz?G =}i AIͺ ms_뙚 zS1wyhPBjleN1TOʚB0 E^^ J i% Ijknd ^"6BHvPaUgJ[e3]EP?j&*KD&cbtJ_/kAB0s":qF:DDC ycyO;7o4) 1Sgs/"qdApS&^Cx$/ƙA$)wmi2YV@W ӽ6 ڛd\3Odw*YVF|"V]btO1H Ͷ)PË-sՉQxٖCvp&-PvTx8е rK6? {Y_)'Zk^CCyNFapSb Y mJ'v$gl`qRGďs VٛZfYI eGE UpD&7זZՖoHͳj~f:;W{EIċpM_)6f,\;MksbjFpz9%}4a-0;f^1fE6WCyΒ#jiR~ ٍ"6붐K5(4gG k \v|)Fd R:ߟO޳u)Q_-a5ycw[%!ywU .t.j7T 6뗛@~2zLؤ.1t򻺳mpX|"JPOwccB9>`^)>&[=òUC pXiBkʭɍlȢk8m>SEv6 =IkNzU^>0xh:u Lu,hXQZ0ز9~0 0˱Ns/feI Fl  ɪ ;iTOGr1^|wBLH -::#F;(?Sfj=\ {eP Ӝ>m^?jq 6O+Ǻ0+l76m8B 7fpeHx3[WKtZ0Dmjkn49~e#%#-@8 SpYʽSg%!"x}(Xdl}ﰣrtۏweumq{5N>:]Rr9&5 9m9S}C "MQ*uf&$.5W)@{}WNhQU?AoMI^{x".Q6tʾVd6BGod>UDu&IKvT.#dV-&ڵCޮ&1誡DUS?hO2kHy$#sYbk]qԜH܂k֚ C{T#nxG "6+gA?aZ&'n0'ז#ld=c¬,'?Ù8<=n粊I]*eKk{@ .mewrsq|5웥8Ȃ_:Ϥ:ﴩ$zzrp(3r2gv/$ } vkvXI}YsRD& "3_8-0dEr}LF49[ ys 0g9s'P3;Ԋ oI? dx\8 hg:HF,"@rxʙqqxH kėo5TFYP̜׼p/~ej: %C3zŝo &SVw݌E}50u[!{3vI$D35Vb:uiE͝iB8:ޓu@,dDCMP.BNYṇd؄ˤ{ Q`V`%@>)8Gr:UW]>[69f~Y*sA =o- hẒťQa4no!f6wS*,گH=d);7R*8ȉI7zA:c"_:kz o>PӡBKdHvb7(~Zm^1M>{BC-p8$[f$/nBܘdǂ :szg0dy[F~1>L],]7NB:v2 aORE"97 '— Vbw?cڗ4`9))emlRd)ot2\[34}J,ca&j|<82q7ѝщnZmhCYXepg>T|&4~08_$@`ncrY7{SP k'bp؛#g3q[<ۼi\@jj-0rm*/!WwM(`Yl1q~/q"b)` _qj> +a3ů9:uP=ڳ0F9جWg{ޢڼ,Tj<0=a޻*ۅ2J,z(x`A 5^kA[-&3*iwHVrXwtٛKW% Wѥ͂ܧ=#PMȓs}zZLȡ,JmCzY}EI櫎 a$C=Il&K *Cw:ǠylV oa1 XA>1''+D 9s4SДǭCVe̳R/؇?"4t,8 ?Mb--_&ּi}[_pXƀQ}@Ȍ^%DA|lbԇ¿kAT nK: @gk,oIo)^)^ %C3Uo.V*aekuuo9͐CG'yLYn7퀈7|w9xfW!62\C :_W+;M3s2'?>jhxUBա[•t6Y j(7RՑ\. 1+3z+#Vs0dyOU')ynv:^U~QGf񣜸J|s91Kl?d|?!RUoLe8j>5D(CiPxzg?32\>&/#{,21%ofd]Otd1)ګkzm|F;5'c~V(PXŘ%g&;P̮pSFejژ b׹PY(KD^P]DFE┦&/ttU1CȠk͏R@?J[RE ]/I%!(ZJ`:dMA<^d|QPZRёgf.MB}7Zhѧ*Pn;m)wM5]l>NprDuw݉`ϖyHsK&aWcr*B6nމ@m,T- 7ǀ!4,?ɟ3Ź諑]A6 oË{A&>ʴ CU7@ HXJ~9u!Fߢ?K:u(~%K j `7pA6>+< ρi-=`5;_Rr 85윎b"Vtfzf2h{?;uz- t`ݘO' 8ngm4zv7p8y_ *7]9)VY Erb/o\osoq*dٝT"ay*)31K,΂I6(ޱ*ّ塣`V%.TNtūKTal m5v*; چiݐ`@Emҗ8px\ V: 7W$z}&<YZTp-0d/)ĕ&wIL {Jjw[|ɟѱkRrvIBq"v[LuGffqdlÀYS | w/UY02t*Rr44pNG80)2}DGfRhbx;D=]affs[/G1'+9?|߼..;Qa^ӌ|ӆidN^?mء>l?VÉxe[4IF  xcrG#Htk>Q2)-_Ǖ%/]PVGr{WV3oV&`9F!lh&M#Q-t>> DlcPwgqBiWTEHzs+P&ZbD‹,LǤr!"irlg  JY'dy6'oU|9ӎ0)%RbkY*,."A8lV >;,E(*JO(CvtU@-BXk꟏m,\]hʎ:%Gmjȉ_Zp(&r}hIyF3;-/b~cT'ùw!ƒZ63!SzB{8-N2~X넫wЧ;jTMN>2WI5s OGUY.j3j/Yr̄v}snh1nߜUM4Vv^dԫpckϲ9 eSigmd;HX /A'+=uWqZ:FLJn+_XE: ƒ3S&/ ?՞%) )}Tz`\.z%egCP GHSUq*&M3ВFoUBè.=(R ꣨iU%wT[G}J8j{TYY{gb: eke 8Ʉ<[Kc#$%i[j$n)_t\B'FPӬjsܠ:[>qm8>L ӟ* ^AP8g]4kkFvIdS*5 nc-<7ܜ&~(bDz-o&oQKp^dox2U'ʼ*7\Ї'KK__®Ai%jnׇrZ B"Y,긍 @is*xu YDt.戹y7 D wU9_aQf ]zZje`%/Juޱ6/&z2Mpδ)YxKD*uu` +&ki%@jȁ^<:9AҦZ5XUero;?<fF ,jF ;N_JFup 㵙7Qk#Nt=zcwO%d~@IQ_{bU=@Z3N5~4ɘJԪ4}PEck78٥ uP };Eol홳1sxZ@vW {F!&!R^iƚR;ve:BӁ?cs^<.~< "߶A1νmwc~_:my80:63,s ~s$&rׯgS,/w苦 dƅ! Mp%:+̑r6FL_z[>:9T:XeT!+p-@`3*jȕB79?98gD6L8RrfîY(W+iAnq+8TOΧ-{'qCI̿)>>juBϔ0(Wt=V8c`ؕ \|uMŮcioE1tM2o1I{{eեQ_259@8? /5K0?4V'd巍xFDvʴfᩝ|ܝ*1W(E,-\* lNOSCo'bR:YPsV߬;?&oٕub~W<ѹk2M\0C08z7N^*JN'Gˀ TEB[I?Zo|T s(˼|k4mȏORo5Y><18V}hMQWj޿ )%m*PT {TeȤd[RC?0 MNvPIdv4| e8a29ӴQ'wkkh%AڷTtlgRRZ6_-V*y+N!jWdL&0(D{ t'z9I2`Uc5%D ǓbFyl H9ɋ8)&ɱDV-&B?Oz\WߖJYy8.Ln|=Ea 52Ahbl_>+ Y-g j݇D4f(0-Hv2 uaiP:KX  ͔#ۣ'j yI#J`\] 8uT0tf$?meWd=~G T0>h Eٝ[eEH^Za%xsCPE6б3yod&~ 8G,R[iHKIEqUּltjݍ^q3{oOc}ё'^ =9?To"CKMVR틱qKt֊VvZ* vOD1ŭ.l>˱]S[WGk&&Ge/vgI牑qлʹ-jAd@7xkmT A ]F#;8B%dj1,%?lNYp$Ǥ8m%=2>rzxuJi*+W`wg:@@eg^ O:C/~ ki (ܼOiP׭6.o!3ΏXcJ kzw&ߪ?"ʑJ^&FA UT?HDzq ޥKt2uFKR)o!oCuE{`QC3\3<x?Ѳ0.\`j#Qղ]>ip Gߵnj/a?֤+#Bv]z Rj0_Mg 1r30㼿PN'bsS9b@ .hZ>@nHa!vҘGӏ!hgS \WôSIgFjdsIOɪxY2J;HN]!F_gEHTx%T|gXz:ti_PI#Ű>!~lT BUV߱%;.Ξ(j˼?8PO εSn}\;m8,_]َuuC$9yֿ*(= #ޙRr']`O2(_CC (Z ~G&B+߉7 {>*Sl"'qeuX9.'H?o@Tw>2 oMB[5mqSO!C;P#X_9#m0p^Mr/tvuY5%YT arTɦnQؤOX-ـOHPѱ ĉः. H4W~CTA櫐xw]D]3KU @1AM qXoaۋA.0rW69c~zEC-0V~Q-=E+V"z4 #:7 N^"<3H¹pir>q ؋KVeۯݴ[}7L(_@P2C47ǣRLJ;dF}uq`6|hD2ӹcJ m9B()+/A(qӨH+(>٦qf=R&qK?I(qզܺѽX:=]?6 ҈ii2| T5A3h%YBo3V]F}Kkos Hg;C_)&glTt> 7PNd6:{Q^.D/`vj:.QM+L<N?6וť".-YЌ^#.ECK^?g'ނyf` ΄R{H&rXv<+Xa7X,AV2G}NRLDuBVtXx)R, GoPX&:˞ӯ6.@>`!Gana$yi7ҊTlqjD: jYvQ C}8P:R=8_Tg`$e2A0,*R^Ll:# z9I ~9Ӥ**4j6$8e?T#F.buakx 5YF:mRl^KKƷa*!D'䧳՞וO*a9`;<pT]%;44N()}BI# ˸lUe4)2SBg2' !8䑍J~Щ5B*Șz8[w|Hm-&-^}APZ~^dL}/L/ HSu#"n bk. w(dy+ e;Y qoٜ46 n`o^C`zWBjt ^"o#l-/CwjTFr$]**d tIW%14 3p-Jy۬=4JC3͝lULu'9:5\{|!x3FE:yp7X:*fPJ*a㳭 I B )IU D P֯;kae"؇(j&k/`@O@K9f@мszێnڪYUfΫX44X߸\;7yȾ33RC&r ή7Trрbr(;G*yH" NJT):F!^ֆ@) l -2 $;>Md@<^8h 3od}4QhҊGͻb4ӔGj i>Q,I1ٰR~nj`6oT!dZ\n<3% y%{Lt^Š_ˉ{ԳdyC#ټj%8Q]Aj%L p`7|[*k=!oOLo}wtBN5Ǔms,L\Ƞp&`d.\햒)A N}1k_* uQؓiϞ$U ׷dB-S~A-.UQ]%=bX赛x;(іQ-rNhQȃ\ԥ#=ТYVÒkS9Ws~"Cb@XB4Yj?0+a1*fدZy 1C`g48q<\ l=w ђqG|gX['-eXv;ߙTii6l g] h˄#b5=QaJ#49-{ St(IZ6 =A+7 yMMMAI$ cܱHErY`k.X )o N_@LN-%  6ܢCyCj8KcTNS?MV;UXăe NjPm:HQP+-(C"ģ"FTbALr"ׄ{P!~+3>mI^ߓqMK8Rckc*WH XUwJқ%>5:44l['ePߐWbvQ y>{vidK!QLJRUxə?f{Ҏ#ZL>9tC>H)Eb-t5;U_wnڵU|u2!ˏDfA:OC F[<'"I'"[uX3-lziȎ. ʷCtPkV,3헑m=o OAOVSPYs1_/0n~LSvjy·s B69YN-#陨 BTpK޵zo& {6?Hs(t2FCdK5HD~E\gZ֤9%Q:!k%ڤy|fiäM]*+%?R.^Nj'"W=1/#>Utae꒼Mތh,RFG #Op(Kr9Y*hDfiG,0m!㩈n>WD@Ґ4x+IƓ$0kS:6b~O/ߥG6yTߍS~h7 !?"Qip~f_I7]LkIgof =7k-o(yk C/k"P)I]ɯ\ rq6OhQ-Zb^Ѓ `Dvl~~bɓWcbHqRg<n6A_:zppWfk)x5t+(訖tܻP+MVMiOtM5QlHt?'cJ{}TLKС3b3t:/LÍZsY`%4AP^*4/;$|cQޞ !HqC%Sr܁IE-3(p9h2H hzgE\eTYo, 6#$̸y{floj)?$BC{;,AM%)vަo:k2]<,u04Y@kas( ԯi(~;k,29#Rv,kcs_7'i>I6 f[ RhU\abAk$v7p*Ժm&cVƎzqV:t@ݎ@6GCWk ƚqhڟ׿ꛞ"ZY4v sh"A%8܁*6/f6`m_Q+ZloL|[m`P]:]jFw'\%8_\L.U"Lc2HBiDh|Ri>#WlW4Y1={>rryBUŤP+_-;5hT6GF<7>&+$~\zD(nbX:4Ѕdށ7vm< z,ymA[ӂvk @5.UؙCE]ۏl { I>S: ן5 OU#/sdoXRnjXx-fe7<\rQ7_Ro)-i6˵oP1iU„-&Q8\^/@pU-ކ׿ʅq7x˙m$lv # 'xvNU(4MG'2R f%<|T R,qo[öO]PC|MlWZ%:!%B< C5+?Gn Qu 8KO愍3ey\GU=LS3ڝ07c>kؒCkh"z2́[Zw#zÕ@N}ׁv@i WGtjɲWUi 𵬄=`S(u\$!o0dőŚp1Lq-'J ^81GbMoDOiYA D"|݇ .D3nt#v %J*jٷs_+^ClshIi=@KҧYg{Gh.Igi 8}_쐦6_E&AOqR$ Hj0TYZ&H.'74_0|UL2 oZ{E"r"}+nu}bPTՁ'2gy84t1rO<4`T/妱vu8){.hߛ4ծCEo#FȄZ9e^ 4Jvc˗u5%LyF8&t5[F$}8byXxA:#-IK7~7 VP~3d\LCձ:B)"\`ďG^ #,ӈN5@]5ɶ?f+&G+FFs [vp(++ kK"b f0{_M:`' @Bk#0hzU< ` GX0|e,/ݩ4`+XFfPOEb{ӎ9Gpq61Ւ]DƊɂMa(ƒDD0~MW@ L< q?;Âq0c5u8|5VwEg81e-hw㽒p>we 7^~+W} ]ՂvMI)` Oڕ?@D<,\/h{ S%I6pX Bԓͤ'Z^ejaڴW?kəm C_y>~3Bծ;KS38 aFܵy I](UV{!ݡojpioP{V4,-4JC9XWDKK&BVד]8"(xX! /rʯ0Nsjr}&yT" `I_]kpJdg[Dhķy6O/̕Xsokï-ab7z\a[t`0;YD?5G?ܐZ-*Y8,9LŒ(”~N1f(K7c=Cԍֻw:tdQ4c8haô *W_POݤ5^,``gvf$vnL8m%קd꛰\#Լ[ 'L.gnHVֻ).dU}9C]b́{gnPUlXLWȻɩ2qBCaUf6/X$A0s]bQ-!B\L`'C&o1'hRxd BhmY BhcC1ktV5sЌHi2ϖ0pmV=pŅUnj@gu#q/%,ݘP& 8ff=$R#B# T2204D|ctSy0XJV̴>zmPF=-cpךf-[!ӂr P8Xo`0}^vIFL=n<9~z ({E5@/ $Ǒ5ܨVol .rj \Vc^ǴXPX(D^0^WRf&8exB6oZ<0M|6$[|T=M2ЉY~qͥC7+MCXY0dDc_;9gq<|7.Bn֩(({ʈU4YqIraٳ6W#EzWE{D9>8,"1ώdn혝(PnE4 &' F:#F(TXK63_ MHnKbLB&DCM/3ND ]3Qu&$R?d=q6 :Ծ1 r{vĥl:<AW)47>|C<̡֝s ھu"`\؝=xsh9^;Hju}:tPu#K wUB%9!@Be.YlsEʦ) ~ vOi< 5`ln Q3Ͻ> -" dH3T$t.eyfmۘ2rI9B=(!!*mm~6dP}+qJGXmqoM7]iݨ[n^dTpkzBc^C2py.)Ad.WkS @I'NjjI*XY±:8}0m6.64"{pKìXmWJ/ݛyHBvJI^6]CuF Y\B *vznb_ĩ#׋2V)l4 D jg&:E>9Vχ5 fȅs{z/e!3M7Bbr'P'F}oA4ܼGHazܚ'pWn/+{'{…Y__txog??ɰzEBY_$}%)d*zPgtlxTAd#~u}]7ܑnl!I(/SӗܹX^U . ԼG\ ɥ]btXsb1, p&lot})z- `gCX=w/ŒOU `a{_ >L / vUehk3# 速u"ũ`ReL^ڶG8A+mjwtt׸g/E[lĞe[-{LD~uyI=x!81B{(oA^=߹֕=Lٲm&Q5HT6"*!?㼃hiG)>e}^|Cp* _>:һFNE,>ߊ0~8G!߇oY!M1dߚS+.f٪IMCBCO*(ѷ쩌Ja;:}`36/"!or4&liT]"XuY ׶uD$B-$|z`HIwvWg ;}|uDԩI"iAbc6tVL,~k1p/O!K@tun9giLӥT&]M Kn' ]E$/X*h};XC6ƕ!i8]\/-``zK1h2ʖHIXJ \] :*A&j3z煠sKIܒ*o4@ Vl\Xs\:1RѧC.M L6ɉ"wMWo;{bYIqLpCa;6iIP@i/4\N5{h`.<[-y7gZlíIõaM~x[Wo P`৤ :(Yx #ux.z>EhXʖECҋA&2e.B2A*m{R]>et;9O~wSWyi;Ǧh#S!Vwa1pC.P26i|;ޫ i!ٞ#°<wxr,,`1S}/ -M^蓮{חMXHC J#=hdžS($)7rzn'z_HdL6C"`0+m7=U)tb pn(w'3H0c\O#:3 9-@nPhjge/#EWhq ս j^ZZ%-oQ mvaXțT}BXGzx,q1y͜$Vc]¹WkFLuRB?ל|Lp7b^F#EaTeL+2GY nX0J^s(y C'P:]nQcZQqdeߕB?dgà N9nZݖ8}E1[i 㿈bVT=GЄmv1ͯ2$;DK9,~VTp%h,nhWIJ;oM?Ao<d7UۯŤot8U$:F 5TML\8.FJt\BxYqnoE@32l-C*; t4^Ԇk-.GgLpA|(NTRʉЛY&SpUHB{љR#+{NVN˒'Bjz'XT3LO7^wσQi\u\?|5;[뙼`U)4ERr!tb+]nCv2 ֩3E"-XXʸ<:,1P cFdaݫ6=g6oy(1x ga|FŽ$ȁñ+%oeB ^?R/ջ5qK,g -3ZqOTG߈gyofaa0JtGɡPO)Ȯv˦/i 54mDau"g5cO9?ЈW}VXms f5 [8$ (NM?ga[Bd:r=&|Uf$$Qp.vIcDccuYȾnauM|1sfULn$@x9Lx< L^yUW]h%U_rp'"PQ3.dHD2A[ɉm#K+i(̇+9N5696g{{XH lWΒ)c#qrG.S2Be6RyF Dvv0Ū 0JMdRvx3H%8M,eX@ESCROP:hl&.GثqBI@ثRK+%kkABCŁ=^#³a4[Y> PX$pȊd52dȜy4[aO*A8J7(| ־?:xx>3IFbӢýpgo]i5QցWۂ:GYDԃ )ST9jiˤ!:4Еm-+ GN^*.4>q<}3{h) 'hpc-UŸ~(*?[tVg'o- `/y#3昃lQĵتjPo[V$N|KF6G­MΛڿk^u,/}x~b[chPTd烅&PӀ}5S'ڝ`u矽_')aOE5R)&,|)sz6![5 VZ75$JDצ'{JKTJykB*?]|_ 3ٯdĮS}Aj~[ Jkx%!_N2>6"%(Z92-w!KNbC 1/ۂ.}jPGt 'kl W2goC8+q6x w ?S,_А?ipqN{k̕Jv@"wWIU̍9eådО"!ֱ]I>k-G5Vm2C^ShGV#UKOY\(}n 5gt:MJʉczghJ3px c>$RW(9߇oJg<"_GM7gkc}Ί|o!ɈD-*k \Rvl%d"(mX=zheh VQ9VeC}] ; Jۏ2eP]irCp)\w j{\q!iiP-zx"Eb`=@ J+|]zڂ{}?JhE>oKi ab}O"_"ٰ 2 B[)  HcFXtB4z RT]Bή?ߟN#zeCڕ1oZn@ϞLAq; ΢)-tT)ܬL=v6b=қnf }ey+/k3>Ϻ<.8a']͡gc&(S̈́X T*b=Duψ uGĖvJOJsTQg1!~m5)dkzm+3 ̪>_)B" ,EBHx=%>7^_l[[Ҹ%̿]@>)$/?{VR@Y>PA|*~ WfSIO_Hbsg5@E;Nh1 $) ]C l]BZCbgyU3 VdA,%:?oaOosx#> UpfDŷIiKK ]ptpOdUvn(oĆlM)աMxBKϐΙ P=i>4=SfN{<SȂ4Ǡ6%I=E|E{~*E=,}nѪ8ӌ'd5A,Ն;b8Ч}0z$s4^;7T%ˢ!(M:i_Vj{M Tq҉vh,w1](*ƜXƅi ?DtPQpC=69~8h'~ﮭ*ӱD,4ZԃS;oQ$PhW Cƕ\)Q;S}Rl%IYIAϺc(~g /)~p;PdwC4كfw2Ene搂P 9+1̈́)"` 3`%ʄ\L#?&X4O#ۄA/i?"q`9MH$ź3>Ƽ8LDdKB4+f0ln4hRQ 'z n/(qUI9"pTBY\&]P}{JUGe!i-=m!uA l"97:g.-z/fhEE[.ͤIo4݆[鸈B䨝̧ѭY*DO>?0O_OH*O<@i'e#꽪(u;ŸqG I5ЍNNJMPzf13OeО5CR9G n[y&6eLh2[xrJ7.K)l$M1pB!8Jtla[5o$ vԴŠ B]a[xJm450qJ՞W`l,aҸ<H/Wv+{4%^pS_7+ZF>;wD^~pembybd0V>m(%9*xPX`]{BՕج шM-ŀuax!Xb+مJsJ0k?hݜosz)Y(d@\')ӚĖDrCkK+ӅY"v^j'd&B)d(Eɼ5]vzP瞒b/7}6 qJZ01>ZյPkMO+ঃ&$hu;"N*Ga1%f"mq_%iO<"D_4gc 4y [ p嵈j0ìp'rdhgAP~:"H.<`ORoIY׈jKO?rmWǫD2 sX j~{)!KCV0e@崕}N?K ߪnfAu(32γ#@Ux{@vW16*m&Wإo%~nLݤCHg=HM 8ZnPpM{ziP8HdYKMJyRU;ZmSvFS_ 40aF{Y?s$Cw 7m7:^eT|Rw*{b;͸=lz]@Y%X.SMyخвF=)'},d,+G_y !}p8.h//<ZQ jYa$@}B,h!J7Xf!p[Crˮ)ŕ蛗\-a&9FwKcg.M˛I(gP`,W@H8iuደ sK W|%)zc*;Pm 6Rh6M: zROc}UkcJYDs5횐/܈vo7IP)$xD2Ə/p14ҖO@tu"E5q U2o7 zO:8Xޏ¤2'Lwڄ䱫YZBpzpO];iP݌HAA6T\AWp'մD$G/cud`#ҕ/2.9/#AV'*6:rZ)ў5 Q.T8u|ԯٳF$%f4N=~p~XBJڃخg y)MCKE5`,_ kȯ|f,=>#xc~63~i]~: J )D^o(LL`B=q+ϛNFg˯ i(s?+G40i[{i#E)>ɏ~ y\[Y'p4Vx[Ed pTB)vHUQ N qčp"YMfs 4ZC^+GwqR.aT5s{rvlv㤞~Nqu& b=˶1Q-~o g#me c1"5qfM4^sJ>t QǵYkbd{.EG7E7,ė1kL"er9?#>:2NPaG)b*+`KѲY4Ƒ"vc'UvvZg.OJͬb VqF,(f GQ(0i*U4$Ճ\^%J>]|qg ԰sNVo0W 1Z_rbq[ kˆGCZ@s$V*kЌ4 D^0RQeGXمa$"cp.ܤyq_rN%NZMKNxL|L%58jbr0~˥|_$Jx/ÔsޒЭ}fcË\>ަ}jIWolud5[[ Xu0¥Jߏ=hpG2QƘ|,T4K|f z[gٮځ+u}N EM01heƘ1d.ҕqPo쯤1b0 zbV!wHuCzZ^PVtT1gnb O UA. @|zx痊O0h߹U6, N}Ja[oݡyS\js]*ǚ!1jϿjvh|&Z XOG{eF*3NĬԤ#ʕ vä?RoaA\zqdd&4nm (`ҩlj^ oAE|c(/IF6,զ={zuq犘:R >ǟE?qx1M%* uz:ɺQNq O sQsnF* $7tth3 *`tͼCZ0jrGƎQh7-7Ƌ#Z&x;[&[NjCW؀[HPd*ITof20s66 t׈,frd8,,.Z"8цKy)\LY`'Sd0 e0଻=śQa4$TI0%sB+^Af|uFFT%̖FrS`vNX| C,{JJ*JL}CXDWX;:/tplmbWK~ _"o!&wiT:N(C„ug&Ӑ ؏ OmepLd pPZ'*&Tךx"=-;щ?eD99%E‚N hB@ԒC'ܡ"S-h"@uTe!q>TL; ^eW) 7j? bew<X0ϽltIA]wz)?U!5c Th%n^C(Հ']/n.'[N'I0!Pt[d0P*ƺ'Cҩ\ {6M-ʡԎ*V}I_AvB 1ew œK?Q fkm^p2A/־ CLXbM@~Ŋ/ܨDADŏ/OCWxBqǶvFr HyzJ$[Ïrj̤Oi&vO0($,Ǡvۈ질5Id;+/4怗]88^K ^UPh\A q~}PuEa^?fmtE"u|uAc_+ԑk4nj+$\fctH,cFGϴ3?m2f!̗ g\aAxKxq6woտ?>f}ap{O0Lr]qޣFrJDJoQE(LGsT.f7š`4́yUfg̑H$/:s|LvF~ݗù0=J2mE>@֭o R-xrѹ5ɫZ *w֐ kȤ|K}ay՘_kwo%oF:QX;ic$νIEÐ<]ӫxZaTRDy2=]x PĂFX?oԇ߼x&oIP2ˁv E >VEdZt #dʚkUWYIȊ!@Q~#M O۔Gin_uD%-&~X7.P΂]rNh: bOk ѫ:DYMʞ&=>k~qrqъ"WY"цaG}p G !J~ՅcU?{PHXgF񖂁f2-aDwhS!QD}؊gzOp!~k3ҡZD,ҷM5zs?WyZ#O)Z)cv&߹ =tU U첐Ք:U^ e,$`FDO #{TllݤwCۗ{EtXNY8>3Ώ__+7iJ PMc~K܁߁S`G}A77|!2@ϢZ '~UNt;*5ܚɨW7G1q I%#W?B)r~ٹ*Bz V[ݞr,Dj>zĜV-A"uwlm\ݙC=w/4o ځ<#XA_7dݍ!6ǐʆJ,,Y_0L[ o<#(Pn}cMfv׬a9zVjN˗P;@jMLmtfaƒK\ux,jT2Y- :UMoHHL35βX82Wn*VA!!}u*|2M$9lVܴ'FBqF1 <ːCBx =*RA#mis< Q'+e7V@ǸEz.Gߐ#BYIt$0< Dc.ZTvoNYT߆z S2%x#1_qnV,q&C0)Ca | lGlD=B41ɯ?N,T-[4T*\r!* c;n-*DCu!;H*Ե FR!<#qcPX`F2kO]| x%qs@Hdצ2ǝQ*46,n=򁁹-md]r-aNҐ: O0vtBJ8Lx޳dQ{_Wg;"W6G[Z$DE[E:*Ȓ5w X?tމr3R<>#dS7&@)C0%"&UV_RUuUwfPoJjE_5B.Yc2jlù$1cA^nVI U~,J(s0MDQKt9zl+.ȄD96yzB"Fa`Fr{֍0N41 ѽCaҔ݇/d֔ʌxL>hHDZ#T1:󂌇]Թ(-ҚGj%aڐ|)KÕM?\!*ݴ3"f/Yk`fc,,n='PfODn5tw&9\>I,8I;=@GI~)b!*+i@Z&%FH # ze`o;iIzVHYs1))0_NGo]?{h'0;Go:i1w x /4hdnGLe70ΆC~?7ҫQy㝆_cr%S"]53TȶRAo=h%q+BV#PJ/_&؊!ʲ&*`MNU&J`%XOŒ7w5mT+U]@D k .ܤR&OZo6{ xvp5xuց?ףt)|_$v@>("HC;.vs32ƒrikJ8NdAo yL_'zdL xjC^g.`bmi)@a[X 'CB)nbHSێF$$ZMvzJoR@#/1: ;{fOj if:MdU?s?=A.-Za1|*u ~Ty2kC¼E{ p &.\D"Qºoh MT;V=Vɹn|Wu&TSUs_9JOajfx;a=7#o8 ɿ2[: S"<$& oz*E%f6a"׭!L'`&+$G[g79{o8n`Х@l ǽ'~+d%_]4.63M=%FY6KFJd!/ЮR8YJQr  u` IdU4ѝUU Bdp^1=['h*y. )?֠z9L;ܴr>p"͖=0}Y5T`{7֍[Zp* :SrY Sj[arHp}>@aw_p"a`9c0GD IV 8NTY~3wBt^c9!^A hL(:GN>q?LR(c6~Iʇu*B8iIMj&·2 PjrPQʸM٪(¦!f䧒Kbxz7G۬"beU. t V=-\ON [}N ғR7ѮSBrͰ2LD+>+\N|tQ!M(4}X/!^}sKSV9DiPh%0Q^=}{ .P5o8# 7JB?FnGP/(h!FxT`"/ $kn*μR7ѪFO+"@sˠz{̀yA Md"Q9qV~-sw#4 OIKfP`3s 3fjwQF#2^xLTZ?d?8ήrZ?(pmkpWgdq*})63X8!ČGiH#:wt?0o^W 9z mB'!b!@wg73QZofv{{˻2 ~]ǛQTYG2^{c:~!~P|?g&D}seR}?#  .婚3쭠8Ϩj,1 >":Ń z⌯R8%+|w$ƢVj4T*T0`k rp4vKhXl=PYϷj*@1Θf#|Dk?3nF;DRg!<@Z{٩p4WgE,v1˝/ܥfZ1?忤'g;^1Q;גq.e0,M`^xY%f'dΚs]5)zZxo!!n[rpN;nBO{w5 gvmċڳu86ⴍaiN|2~, n`E!Q$5(GhёȵN"t"`};i{|0*X"2YTPԍ9JHf򀟓hu.-X1^o7"}řb vb/rٮ7-j˫ͥ%R=B;O\"7nF7Kvڕ}艦D8LpN Cʹ2&(t{L&y){L}7>9%to&KKjl vː+xY4/wھ#xWL3l'v.d~ Ye BEL;kSL'&p{JD%/ɦl&elbmNTd箨!|_qwxϯD~Bg2;Wߘ-in#޹FÆָb!"bLO4^X24?Zbr˃~>a|矇è*-N6pt& y,^_.Up9`ETFHP!2ďN p9nP9XNY8 D*LˮVF+ogBxn'/Bsē3XDgb*c]қUv$k|{mG#كMrU̱i XingZ&ʪg@fO8] Xrp_CZ~3-kuvAW5_݆]p1vG xƧ 1k%,Ø \Jƴ /^GaMhZ.S8{?+HpP<` fBlPna[.x 8* {bZsam $ (ᔌ鮥 4Uŏ11Y71t@ Ž\Z:rldl2OU?}ed>T6=!ARғNCs,MO4ͨh!)l:7*&NQGº@o$ 1cÎ]WX3'8Y$] oe}W- `AQ94;ӎo,kh'FtF<)$L?gdIOvߣ H!<4$C 6[;Mk ʼn*sl>5 9L/gs4~ ZN+ket$%풵d Adt;j4o+]<爁˲:NX  FYgI\cna6\d 1`ÃVMޡh эޝxaoa {V>Drmh ѩ"{\,,E/NuV(o¹|/qK'Ok Eϧ_o-4"Gc$Wʅ /1B|B">seɬͳ5 d| 8V]cŠ!la/hJͫ m"Fmw0T;+UYF/}3KK<Qƈ7e+g6nZǃc=3E]P\g$|O\w{%V^7"=)0ǩ Ch q+2~yKe +pF ^5L[jҊ0p3%N'>BRm-,F͚e^ 75!DS!{ ,2Iads)wܦiO)iwa%b,<39` Gޙ~ܐ[v? ĕ|ALT떽N|M ($,_֊4#da+OxVB7p6vSֿ+}6*}e2-uft!=]XrҬ y&s~Bj{7VNP7"^:۩Ak}6,ޑїaXoZ*F.`j1~(ֿQ)0a/ZT lkjdĀ̓! !6O!E93W^(?êaf;#rS4R $ ܸ\&!8EOEE)'n~TDBZ2dp{FL(7pbJR h6~P NUPU8vű='\{ VJm0@{3@z՚ևc&1՛fh'f戢@"H CCfgÇ)3V܆Bm5Lەc>#No4p3\$q0m槎Tmg>:ⷫqǃi *yoߊ]ZtRz?%({*ue4o4`48ҌJ-{f V#g;<}{,FUو|jB ;(#cm+=oP_NZ O\>a. =_ո =9G / lx}Q Gڷ\(Di߇ͷO Wz5ibFŷa\/\x#'7{x|l 6!6[jɴe[4,ΏfŪ%s!HnvR>X{T'1d:- Ԍ5&5M3>-U5ӻCk39(B`*tqp4j{Y٪9vK")w2cZWE gRdl/J,IIf_C39qIļ= &#醠;οM義Ľ!ԣIȿ^$,=@1(+ZˌG'ύ\QmNC9*гwaYz!`i/d[> [*|[ ͥչ"obX$MlT)jSzNux*ԝS0/j8ରHNQ$;_ ,SID4|)L@7|M0wWd 6;DM,Y$Q>X&>V$|pE%AvL*9-嵈T'2A"xfƺL7L+Gs29 b,/Z6-Dϛ|$^[͡snU0WDA Y6Z#d*GنބX.8Ր5L0!UmfI%㚵묗VDx`24.zt{ qM+?8mV\E~a,RJ5yp3u0|] B̾،4O&MIWэIߐWp.un|mI掑NA`#Qzv(Cy=Y%'B!]+OEG'&|$2 dAG ޳\Lj@-/`kh'@*0թ bЀ8x/ߎjlF ȗ@Ayڥ@tX ܐPL5Ky+D0*l~S] mN}>~S&ip}ύ11s 8F`# >s_?%HI>֖U EᮃE>DM@D$tP`LH$u:Bv&+C#-YPLN%5ҵKG4A2{i^tsPgoN0 g:N8:H;ad@ºQp7z5FK^cSd:g?׶ ̐BWr40NjT4 xۋ- Df/[hM r럓 / GG+0@r4I-iYK>>R:Z,XS )9PB$v,uQ0w4|?q_H=ׇZ"5zL5\D >Rd%Yu5 MMi > {%Fm:a14y'4z-AW' :)Ӓ Uz'\g+q8 z {(9?tp>I Vyi$oMz/=KOY VF_}.r&+ɔJڷKxw~^㖁WQQߺ,R|(@r8} DʬM]>dԽoKFD٠8tՌM4}!EMS-Xq<~Vӿ: OG!gG.K]-Clj3HK4]o,O2=U;%Ц\JVEO.w9;?AjYȸ[HZVY3m". 5̎cv(g %a0'_; iW^KPt^w19RN,-BLuKZ3gJHb;!EY7Lf|fsӷWۖHH#['yɽ/J$_ۘ-RIL}q jgl(TvHLqիF‘+FLJ3N/wŸPʻ-H4oۤS-cU;|T'֥EBRl~4d|gk)?-'B첽(.Y+o~PJ4*ۚ#j,RƇ[z`5T%2;>u4/'œ'h3>{۴L'\;~ iGj/սEUC "c@&O`P#7 LH^9C3IdOEoJ菤UD+w4+cMg .M!Xf>L|$f9:!xɐ3G MiNxQTzuc[Qy>>hm.Bm Hr5|u(mVcjz%VBMr z`Ee؆ԏT@.fI"wAyr g@ʩcw_P~’& ûLu+{ȤbWCņ`rA/ "&mv |ޚW-=F 51 ;0 yd77,yeL0:?O}+o`HS#oPm,Sɛ\^&A*R 7 x}/3ho~NȣS0psoůyt%wj}ϰߟm=Us=ot1֠\̐ Ud|t旯Y,Ŗ2o= RrKnH9AmUHT-X@pG9~74e4Asow/~ML0%"Twʋv[r RW4,v$t:U\#(1E{l  16R;4Χr_!!nFX蔫jX58%`땣)YXa''ڜa)w{o/w"6(du}9kF{6P6-^р-T/(RMys2;Ŗlo3b1J́1\t ӡzf͕@(K%͉ *7LJjc+}xض(P^;ϖ.fvzr4T{t׼RC1'A h*n 5sZ}kZ4M ~%[3i:vX"k!b(C8q 3֭'Y Px}O6k xis6}`wpw! T#֕ j_enjmF/vW]t|;>՘ԝ9ﮕpйs/jvXsB,o_6B,r(>> dly&ȷ=}4\y@:(h(9+ʴPl͟P']>_\0ӾGh1-xVMgeNoрafcE}f"t#)?I;X<&fCPmP]4 .K" (@іsE)˥RM`1d%We\Ʈ ɣ^JT܌}(;m\ 3L3X6OS1JΨre<5YD\kPmGO%!pK -jSxLY*4J[4`24eScN.^&SjN(ioYI pY~sj.rH}}}x5/_kRg=[h`.۰$\s=px5>D z Qi}n~~yԁvf7 C NH ?54]1Xeh%2Q xJR62!(fP!h_L;  *=TRotgݗr]oV bӴ';Aח9XE^T}N|uKbJ8qSĵrUJ/7Y!"T͟Ĥ4Lи @ʎS72Fny\OkOӸ̠HEMM10dE ޢ~-,/6d@HaEȤk0 Dr*bd<>Gcl~MӐ(`;8:fs3ܜnFDx+ѻU&ŜTC;X:XA\pQ_v.|ޙMd*017fA,)_\q+SU|_j9,6{J2ZR7YZGfgXFNS$T rU&=z/-mJ <Ɔ~Я8l0=ͻ{-=pdRɑv }Jy9 qbxӄe`͋Qmp9t4VҌ!PgSU'ݝ"h#fSJ؂d*޴q kvi؜2 碪Lf gO) @SX4&1Zvu<#]Wp`hhJ'V[H_Hlru5 d؈X<4" (9(on5y9[uT֯' KnPMI 7Egլ*Z;sϺ= [SJ9|exJ,!dl؎ |/.8\vO4rրAɏ#}?_)]fiQ~lĩrX4| ê{i̵SkBkQSQ((e$6%B^uځ8*ցNtJ!RcMҦ)H ɌRtv)Lu{d\Q&L5^e gd2J`{cni<6@a JwTNg PVV&JU!]T>7KG|qb~8 i^Au?n5}_>+ %X~fwbѽ}ֹW>wZS,FF&!Aՠ0AHS=u;(9i%rA8u78îCy^^ZS:ab(_1n#R`q qVv*rSJ,sM—GhMly?ێ'@(R0hgV[Xshhq]p 0O!MqMTw讘!^z G ?W]vMv̗Pyì¿~۽)8`9գNwbJYKBc.+j3KNc=TY)c-OkkW7;[S;MloMcXyU+hrudkfԇǿsp2RAk8=u|iob5 ݄>} Mrn k,BvElӎs~@'ي&IA~^:=uF>-[۷ѫ Q*#` X8 ʷ!豭5k \%%!uY"jH^>J1p#f^j!F]7EHjVg6v|gOfVu4ޫ?hѫ*?%G]lSBz]QղZ&7~ (F7J)_tWo57[Z!:Y s➔6: Sh}5౺-R %ia ӱh+ >LhVҴ~ɿs ʟ({¯XM^VEaGfS}U|bӑo?&P P_8x(!7,`py3}s$W=^8Hr_ŕhZ?DMdi6=\ n7C8b-X[>5c.Uq3tF:E\.iqvHÐ$oVrS4='ٗ҂IU g_܏X+?w> 65(g苨 S, mycU@D&^@8Zw?a(/ɉ tTVq7נN[ SnЬy?-Z)UcIݼi?H&e:x*]>_ Ʋ(ţup^κ4m8'G˝ڟM@ @@c+0W=ZF'3faaUek_qYJ/tLSoDƒADeDnj]}&B?z B]H#$=16 ُǍz HS#C}Yf:sXgEZ=ꠁz8̳_2l_Ǩ+FKpCtZI/ɋH n/(4S*;2JN&cX^~mo4^ӌOz?:l (qC!&o̩LN. Ÿꇊ {s'UzKݍG w̓r5{ڛ߫XJ^1L- 88#/+vlŇ g kĹFpѮ 1z=dlA fB"`ɥXj? "|+MltD\EIgQdviln%be^AVK/w,6k9O?B$>:Xȷ>L!] :zv!K#D~wόُD6)@h!Aog9fAwڎUJb++"[#FBH@Սq6XnQ e5bz*\wr0Ѹc Xb74˘MY9C>g0?;eOۀAum˦ယRP &x s.IQsJ4F|9|: *dQ I{T"_lw]:H@e ٛ}襕OWiD ' wst-pT];JE=1]uSN7Ť\az-kvNʕ@TR/*E,*"0^5!AmSҜQzҷd:Zc1X&0ЃOetƳ )i)R!ϙ<猲w" D'w#&:q DsDʭHA t:r4%jB.Pq۫a)ל|ɣWbhʡ^ߊwn Y@dOg99) ZPTQ#D-(qYD-8r>@ Ɖda=#=}sxm2R>L|e%m>t4nVv؜+oΩ$n$:Nq="P_l'Ћ-1Y@jɔucG!Qbvz8Ʋ!@ ] 42; ->]r|Ghy̺7quvu 1RG:/0$:,V!UI4}t%W+ZNӟ=9Dǝkv Q'fJ7\)31t37p\I5)/jh l,(S'":^lW79JM>3}4"6>4z'lLB9Cgtʺ[ Qy&YHKB\`H7wz6TXdsx_59*[aveu:G:nR~:Xe0N 3lv%67_勶RsHSf=o^3q'X3?읩Gr/n*o-C?{;Y(T-D5K+m>zeǯhW<Ao k"BLJnʇ3uQ*4=]>U 4,P2={'D8ERhz;$nv[EU 6f AQ+ [6"-0Gd ԸIW{@}!*,ÁψwR;nYƘ<1лYĂ;~2|WAv&އ%)Vr ɋsXP,eQVspfv˛ 5<V2IfQ+A (v\gnP>j+3 ŸurFMp!#,_J?_Lqt!ۧ8{01|^i֮(wd VOmC:=ƴsȑv~Y%Cl09]xܽ[MO 4NR^#9wqFfx 7HrGJ<5BRNs5}pApg&$Ľ B~-o$Yb 8`y&%,41:>;${fl(Ƕ&Ke47` j:XW-\kD\dƊep H7 JEvLi#l 6U!k w ^>@a<`}[x4GXm0 H6gvjmRyw\HD\$ڹ | 極$F~ ,)8:Rk1D6QHP}0%#B||@Y׫trzA2IdfVOφFFST am] FB P^.x!9SH-Bll0ci5e[tx!5dRQ " M6氙p2퓫 lF,B "GpR&ls$tTik]L4Ϻ*)+{y! }‚cdYaYe#R9 AF;KIʘdMѬCv!rc}bojz`d S|"`l+hRniZ %J]|䎚- jKZ28vUbQ [Ʒ!/!_{RE s'#'[>RڏJp)r*Gרxou#k5HѮ08`pWvL Q _]^ņفz+{> A]e/rH"_DYK ,[YYLƒͩk 2#g`&Q ĈUaӺgkaVs;sQq"I[4XF/Tl|<ԆcN+mijD Av9TF6W,j73I,a;> @ v ,\7K}o@k`>9<4ʊs7DX&j&lM L\!Bʎ$~[ҥaJ'Һ7 pާ"PvVd8q pWLV#ŏPT 4c $I@I焞SQlO[=KH-*"DVgNE)Vt4AJtW"yyb|rwt_R7-3LN/CS1P꨺XVh^l&%<;Y_j.,(upb<_E@EGIhM/qXz<_"( {GX}c2!-XnqPkLp^R5gCRgΩzzwsiv'N) (`$~ 0I3X56ٓdV+_%_{chDW9֜me^ե QOmω~zgn77` XbjH]MfO'H)豰~#>I,]k7W*K$ΧK^Wad)EV`p8M3#Nb:VAm͍wvGՕBxm@NSg*Z[S"%ZE6>LdGZ<0Rn?.ȀFrFBf|F&$^  oN6JoMhjFϛ2/dkNHH_ sޜR6smE& ;Nz୒c& A9֖X^χv}e>pq*~$ U|k$_3ꢒ6WG.o9u8YА˵Y(_mUޕgC\Uo_E}qk%7$C 6N~3#[iSp F j+4Xm{АDK% 9eWiK,y}A $ *}ך>㫙QTE![H@ m =x?&gԙ!&Ē`h1&M[^XJ0SlY|HrI y]_Eb+B^gJ#T6N:JY+=Dݔlh6ped\F#j2RW5qzaēb7l`@*5 -Buc94J j?g],x)M|O] f>z/KSd X́j^V"m]ul~hAG-vY;skI3 }}(^0 Lb1J /+nq',=H|!ZzF p'RJo_uI֊[ Ⱥild9t1gٗxMlrTFQNmPvHn⦫` /u\8O ' ސvNPhk3D@mvΚokHNYzlR){-gƣ] CNCsN~WakEdFUܹ#yXG-e&߄p;W'Kv{2-jܺV`zbȴsi  Kl1Mi|/2 "hk`ާDEg<Y' zi&0Ql{m%".h[E.D")GZuYsM!<(tq& *a8f*Bxp^['Nrc(r7; {22ej O} d$~P168aCZ~*63lz Z*cR_M'Ys+~=#}5x&.<'[yAڵ+o5O!T P؝2v9O6^҉Ozd B;Վ\.Nc/m~L-I9KuFZY?F,܁# ifbd* Yi9eTih_DC䌰->(x'MYPggіorУYpbmcZܕ]3`c9 @$$44".-` Me4IK_Y 4̑`PB<00^p#$gUY;ˬyàCsoi@m2a7 Lb9;'Foc@ dZEֈk T_To&Ec'P"qtp3= g\4)F][ jt)1 {&;12<> :k׼mx`B(59ɮkO' %3qnzѤYXG_Iܜp}^c:eR+.V['XT~#f%]^#g|`aced;|k@$GU߻2#fB؎%93pW"Nh AʅXv R>Y|Y̽!dGgSsl(ʥmSiehx!5 ErG ЦÝY{zS<ޥDG.j}&ܱ鷦Uv7vR%R23{EڏXЧ#-W/fѵ7Xe%^Y} +yG]s9-71~ c)o^zrlC+)|QrUnxZH0 h6v1}\Kyaep0lAq¢8OD),S_XjED󊈝$NM>T̿17{׮8iܨϡfgGdbԆK9MY o.'G%d|<'+w(A鰨%.jL UG(Ul x漫"b'D˨=7??p yU/#8k2v-s'bBP|M_H筍~c!L }M8,w!`f$,u7k;9|LZ {;K|-nÿ!Ѯ*o ҹOmRLZ"Vz64+iovZlQ6SFrA smtܾYc2 F;N,+m%v?3 7JM8zخsIp>Ip y K'= e:sr|}L1;<9 N`QP~M=vQ^=k`+>o_,EUD Tbܻk$?xssm2 \%~HA."S2Z~k)I]”OC#TEVY*+e|oA.q0L M4~/!Yq`T:EK?I@ІdZ9K8uЂe x6YU_)*;ȪN"ԇW\" GNtRW+\qJv >^|I@A'2CsGL?%FuJ 9ڢƦomrsX_=YGTwhgyY -,+-ӄFItb2`3x02- \$/xW4?Tr֔ bI#D, OH&iӀ ?1oαEC\N:^a到sH: .$LX$ϋԶqlh |lg&3V/7E2apx6-ar EcW}64엮y bZݞ%َZ/EHSR]TẸX#0g+RF"_*.ȳ|c}j%[$vH$hJ{I)ΓY F'cUt `=d*fbߩ1497 {NPS?cR]jLB"BRiV.nNgĚ?tZTz2OkE=(KO} 1=zٳM6]'Gѹs*-/1F(#EvھH*KwOzV4Y[>MC!cP'h1{;no6LfOW ?tp?;Ps]@)(Y!T"ȞQL0m+n_8\E #I)NC4;O>]@ӷV?W56 O(,% UU~S@=meF,V%UƶdpL"3TfgOdA<,{IӃD[bt9 28[qF(vߐ16?ǾO) O+䫶2uZɩt| opa𙚮-s>R{SWʜ& $b@y'tmQ}uT` w9ܒn1%/^Lϡf(ӡd:BfYK鱀;Wkyk%_8ðTW8Xc9Qxz}mpذ^n`#;{XC/FWl H)#)[}!l凷=UYi銌{Z ,,bIAxτ]RS^g?8~q&{5U1]t?:ڨ}P\(WfUS//VXEWTG.#@g;)682`yq /s|^u?zzήTe/عix?ӗɵ9phقʢd실l3csz/l:2/& +C'|kXs&+،v笄I.Cm xK ƕ&RekU#ou t0J9 07w9% <588'G ^ԥr)T %{ɣōXZ筛1pf:Ԅ M 0 xC6tQʮGKSnOV"SՍEZet $Yن_N*;\EImGFifjEEaȌ,p.0=PU VWN$X%-$U*Yފ+RHB~7X:&)2ңf:#<{J@4Ą8R7.Pq0 6{drjVQy8\ٕ;MkY9znѵ((tہ UXke-.LDVj'J pueDSK/PN_Rē1؎峙 }*,jG`YC>i wKѣBRpEBwllJS7`ryw{7FxZ$L{`ٽiv$齍CʃDސ9L}cƀg\%_?/y(NRNԑ.qB-yqF~’yZ\ Ad1v`~-]4JOb.,Vh^Ʀ^  :Z'L`db D'eED\7Z% Iw i0pu8O|ZQ6u\4[Ey"ᾀ>TKXqvGu!m[6mOlpx~}=? 1IZPk,ЈB7kGff>H,|ӕǟKƥPt䙤6DU4^ɮl͗QБ/[cga^ޣt1ly*zH3I"b H;l2$ڈYfW%?+.K9o7rJ@>(hv4e+Zq{S?-'bLVޟ0VW&"e(b&3;@$aջ4i0gc9=+8]﹑&zB/1k?W.Xtr2*N0u: ɓd=r &̅*%P2!sD!YYl 99ݚkh%lOڪCc'"㪾>w6w7K@&)bPJr5@QoEqr,ȟ_苉!e}/(eW''T/3ւ|Y@AQUB_?uҙ?WP`<(|Wpjab3\tKmلbWT&'88~j`ۢ!$eP>/?M fbjjda Wk8^T^܇1 x叭lU|%EŔ~I!s422cZ[Ub?gw ʄB/ H7y9yqTH+ٺLNicZd c2V0U~z,ԑR F)صT5DL4^V_=][dYIpngx}|JS9QeéoQp&۝Y>CoV2710hh|B̒aL|b|#>縏rA_B5r8W種H?:-Mj鋙X\5ɜ`kf9uUhTqo.Ymm߆5:LfAdKrA ! ]@dKMu͹^ܻ-^&Y!p{5[%YŶ$"ưzw/jPk:m.> P =WG}Y Kl}dHqC\d--$Q'|eh?aQ؞x9'ӱӃ5D'* l" brqbGZa΋spHGE?ÍS$V a)pgR|ΨQ/@6ikr: 4$$6;B6gPT/hJ"@^:uh?~ D~ac5~.4{ƪ ѯct9Q'a.nmږLqn׎h3z-uopd++ WުȌoцFkvAyc~SHdE1h6*Ҥ]vM`Գ$Tp߉R*WcV jS[\6fFԚs ݖ̞*spv < QۆtkbbH6%C Cͣ2ιճt9y;L}zƠ`l@i89 rC5H~V̦ Z՞ +@j+&YWCPեO % <>^8OǑiA AhciaW޼ׇ4gvkXKnΓUhf.)+Z~2LR aT2Sy#<;v|~ ]ˡ>We0"2-/'ς >:g"[E[1Js"Ag%`$5Ry;u մ 1UHPJF{zsw??Fgڱ.FI6 N2,\`£2! oj}y>32nG'Fkθ#'[S m'ogɽ|iOy6zBZ?iQj\.{nq֗?4 2š]. $i|A0ޠ2Lަc7~:o1g:5:_pI^1'; ]p[vji !_/UM$8O9Z 9H#MG4Pvr$Qb9VK,8,>|vTy^mw*)vu 먇lƖie fg/7MBXNs^Og+cuguf^kf)sdnvg"%(@Ҭ,ԔBձ4׸zUY (X =nyMb ˜mLB,_]f|К] A'0ǻ_}`Tб;h=8Zr%&\71QUt0ya ړJ)ThUү"93g{hK2UCE*+{R Ŵ%(wA1[2B_[S/⦮. உ6h%m.aOۣ|?O5Z6́ !Vx'h[amw::@@S#|,l CAg ~ȉ(ymvHL¶UKm}3( W"VKR[SSc㹒,"JX*:X0$\>Q]W:F ƈ f`]P,4Jx G+ES :3[ n5`^`As,yw2fjbd1f_Z0Ks5'b->bOC {w,X7n0 OE?(\3-߯$VD_ηxF? s}TOB\Xz{F(/i}$O#ufGm:Y SMfv%2pZ5-c;'+ShJLmO}n}2ϟ%+R͇ꑘbi *vlm).ʊ[ů5(,;񹇇ժWtlW !0Hmu/ǝԵ?$ aiuk$mׯZE=mDDL%Z1tGk!Aw]PXCWUi}Sb-OXv#xa Kjn{~! X9_7MY/fÔH,xE88,_#5])&Gnga2?^rQ-.~aRqP7^1$"9oYxOУsIR6wO;b.~ eԾfcqB; ՗%l<-PZG*ȜqeXPJ[ K#H t.Qm 81 Θ2aIlboiET""EvL>Nsi]@s[]_q tyi@sњT"˾B@bhF"V(2kJp@5g<5zN ǫ]N2}]Iju/W" _iڷANN$Kau#r `* 0/@ Nr{|ƧE DԙEiͬ 52^('KP]N͋Q_fNW{U=vYQ䛳lMKW5X ~3 ,4 6ٞXxY5鳺b`Dfxҩ'>U;K33'/d =H̆Cן:_b z-$y&r+:^ӜrƬRfn (ɋ=:/^]'W߃r*ܡ) `+Vp71JڲsΧ]HBN|gMR=AI-Edb=9Π"f^ L4|q4>!uh2k1`x(bnRx΄rP")XVB':%BOm-Q9_@[J`/ӌέ5iB;(w)B=:,paOIcCeOp4]mEn<-ԸE^` `a;0Y}>憙ƜuTpDy>ntA,ߥ2.9Ӑ8C|g`h,r4KnF v,mK%BXId[GAifoHCT6kl ߅M_]OW s1l 'خ(+X.vxk.\ekb'A}V(}ȓָ_^D(W}d1n+]~}Mi\2uNڦeD0<XC ~nNہd@ "Y`6P5OI]ʊB""r=.={i+"/>hGb[B0R{ ySO8!K X;]}JuVr'O!"\MS,&'>п~aEgsFȹbƮa[ID):ysV|LLLcdB1Y- ښJclܿ8qrW6eʒPr̕(E7S-o4ۇ|?f"/6pavMz~N;}aoL2} =?uyh  w_g'&Bw.1w {~(xKx tÇƝχ?Zz!6IW.'O6HXuzb~}gJw,r\33 F% j I8fMh,h|4t/ t&L^U>0LTN(9I$i{86ڷQ4jߌK,xݤrSHT s3l[=, oqPݝ [K1c#`.?=ㅣUQiVX0swx8:;\"-K?םDQ'Ehdx::M̤Ez˰à_͈bsᴉDNyICșQ/)P++k{fB8*ԃu(6Sc rhrUⱉK)S3 =`UcYQ:zf44̜rR3i. Ds&4|Iep- BoU∙57ѐXy:8+snH7tnEK{ 9T(<2&++888)LW^8ޓ(Y֔8fiQ$[BDdGG tQ>6@4S8V-2,r[/2)#R>&~6 _1R1`Rp [BImRjEXmv;ȀɃDG&FftDnN05MނQ[5hs[꫊eպ*,c9? 6;G}bu獫N{` |g.30Z4c;U-r]-اWiМ?[t [s _ h+*1YHs5Soqcpxnm/~ 1RG>l% MKCa2PϪT-(ٻ94R5-@HEC<:tx3Gr(yCI]ˏ_zئJKȇtscb@mPR9ݝ Z9Alk|[Pw@ѓ (# Lt3#d?)ؽV<|w`/FXm1sNO9p~JD{ؽ*2B Mt<ZA|h4걐R6"( > ȎZ )a;"SWc,㊊~6$HUW c%뫪 K qbT);T;3(:[_yHmB,A5*P4}9_jd/=߂U56Tl$ahAAu̓&7paK(IJ}ZuK=FwB磊&B&$'|2\-:|_xpWSFVQx#e%~8\#6'j#rϡrjT[|ο?KW|Y, n9l0$ &ȹSgl1)>e;^ (؛Rc|OzIsR}&XS5: n!i]Ծ=s5Z0(2s(D|r( T)YO  Dʷ>mNNhe7|Ȭ\&C+Mv!yö3n gbIhOC"|B)l5&Z>w mغ*AxCFvG"wp E00Q )Ʉj0tӲ r˳16"/nY)2td{A,B(<[*P6GBP:}KrbsA'hIM)$ֺuϬM^Y^ i8|P䩾b!Oez2ݟXp9> s<(s<}+iB+ܖhHZŸLxW=֪l@|i w:2ør_X5F=}JMfD5s&mEoP%|:35€u?7|9W=}'!f{rnki3(XcZވLHJ ӾefٓH)6K"cшP`k~beinh-PIn$g4"^!N` (Co2aRQ5Cf|s0{ 4Q|0팅F"Βۻܓӣ =(o']L㟺1NPl_{DʐרNiH&o#/E,w2&Cd?l}.̀\CgdzM:tXMU(h/V_a߹[{ƸxORi2$=A+-K&lH~:|bѦj M`C|`~uO!ҚM 9G 5'ua?'o/d4lͥ~`b%$+.*H&tpћNM{̎Bvڹ";< <O&)JlM6*bli<%_9#Nb|X5vVSWLЯbWj\-ᛱ ǜS4504kd+4ۺZ G{P;!_? mʈ1X顩U`5Rh4?e+gMfRGjhP~Ђ+n'urRpqۤ{ `@c~nt0@&[\|2aMضbL7 "|'NZ V/;_5^ٕCAYbH E^nchUTVXh8|ѥ;\4P{ ޝ e_bǴ o'" @tT=%0tZ|H"ŊC ͑ Uuʶ4 OP231sT&LlO228Jמxn9sԚgI #,D@>G@MF8"yÌ9,^g M rW%~*Sp-FyDC}%1BrpL!][u- dh6)6j},6:= ҄k!x.X:?ljX'o(|U&^ݦ M6|ȼB03;&$X$9L5$%t[-&1Un{DnF1{QTdo| j-guo?8Ao? d؀YT9+sYo 2IsL՝}vO)d4 2jxlR@%ᓈd4 j7xL4DoˋUcsqˎɌgV@ xpJSw?=wÁd:gr{K)"`%wLJF)YaŹI|֊;.i?n$y>( ehx)k8ϞH4]Ats[uefs\"D#uiXK 9 e~) 67+sc_tO{1mun%`>;*5IjQ"p"A3=htIE0.cs^1_ŭoQ A+Gb9N95!sm"kK,ҴVzI $`W6LzIWmO:<;{SbCxYwtjU  aP<]paM?q&P,OX[v랒\9mz{cp}"m}#|Ik#߆_8ȁeٟU]?q 1<X-vw|-u޿,G3(##+@H(e= mB(ߒNF$T66 VyH({M6V7ϥ]ԁR>%麧g#oDH:;.<dYٓc#MXqf{n%c6}ba}7d:Q\ꭀc0L-,>@d>7'(mE" B=Vp?Xi5Yє n4?a>>hO]*WFpDMoܹ@?k,R=09Vb[9BhŏދJXuuAڵ2ZTИ1#u<̚k~4`Ȧu0AwA^h(i4ŻXu۾P~sٸ8zh*t,_x;'mYE+ B^ny.g+,ѵm<}+AJ$dI?YtXeנ&>T'O,~RQgʀe<YW i ٩''G':ʖ85D|әVR1˱CTVWxqt|忻lP;h'<&@eQ9GI-K0sj2` Н6 Xy;$fm'u_\TZDa z.ĩk`Zd=}a"أR3&#Y*=-oDf kb1I>'u> u՝\ T M#\c$/si鑐4-{mޤ̒5'[ki_gEu?˰ e-of [-<鈞lkCf=#BW֍ԤS L (LvpErFo 5K?4{^dӻ{O+7 <+Ԁj y#$xع*]6RP#7΄%eX11:qJ~{f b"5Y4Ӑ/lYg'isjy IU\h01y f˄M n[ٲ̊0Of7KW5$c:qZ}d!.GUT74n ݓ 5)t9Z.QAO B oj}]tEtj"I}^jz"Pb})?I5%X`||Kkhl;dVoϐ"c䧻֍mfc w B} t-hB?{ao ȹ 7H{bfgN9,3Nlڬ2k<~hKx-E0t=#^[${WnC{M@)!p:-nFD~1i~xK` :2_ŗ?a(VUZ^x$Vq z\kJ.$ ɄS(He SHXJ}髇OZ2Ljt pol(d#67% ({XW2 J5r IA*JɆkf,mJ.?o7 _xcI`塎Dnhr 豾[TVZZ7Tw9p)̠h;HJ>UT϶"HtbN%0QUC ߖ] cke [R/ϴU:|zu:0Y]XП=mEV͏hW2#-nឣ\?2clH#G7[|HJ* "H829DBYxb8׳k45 q4UR-|F& qU>|;bjE0-IAmq7zNtA#MjF[pG!z|#bq yeBJ50qJOT(Kkde/TMd+81hO(+Bkkl=~wj*&9cJ $Av`gk[wt`6v U7LJayX_Y DL"ڮyo'p3)zȩ%bw o.7 6~=Av"_Y:H7{ѭS8}:yT12QTpx#Rt(SD5mSxB9kڔ9Y>֌\8áY@1i8Eks0L?ʖ]$\h}hNyōQ[a8,'~>Oh { ČJ}:Pw=%,;`A]-? ?~&;Fi|oNybLڢTk$?+ν=Yd2WT̗Rb&L&tl!`qx^nlr/cAL4Ux[5|b_"yCc=آ#|щhH\0v U.O]ӭ;s7)hZ]D jD UO%nUKɝEeԖXN3NWh{f)m~2ڡ ?siFqRn|m[z%cMk|sKU:#ITk},==d`_ެVV]5պy CMa/z-all!C֟wF?XEt3, 3 ^|v2_]7=DBGB"?w0VV/KvoCbz\+=wFRUd.o]ͧ&.;bH;Gw(KDʦP *rV#j׾/۶Ӟ}zXMW,O1)vЈ0 3's1S%\$=aP{2%wT [d+u+ GrW^ IN!ȨLIa32E \WkP"]{-3s|XZ@|i lgy^WMG[ڦ}m(.=jgNcIw NZ4@O. g<:JDKM޷ e+A;dխ= v2xۺO1OL#Q͉=dz h1ۂTO^agA~ۺSx)]?/z.JX/Kl0H1"t)\* Vtc6 6Q>Fឺh0f-أC \gzfydÝQtpD/,Sj Tf>?r_5|#aF?B[yH)"M a -HjS v)fu,]Bخ2z.\r JWE.Bq0C>#ۛ) gt>j%IN'k/kqIEN^1FQUW_}cZ̄%Wh9@SJPK= bRuu!f~!*`Dj0iw(Qy|vZu;Dm*L8ϗfڔOL0v?44}Q Hϊ [oF =?lX7#D*|[m;&O!~nXe֙N(w=!G eD V;y,|frRv&+SR4q|q;A=\B34 C.]O#\1ٌ?(i˄ ñmR)fV !>ʢ-(X;M1ZjoN9˰Pë?/F6,{%یއx;b(r%EGI2%#'mԳ3BISyaA{{#,uHx7SQC2n+_-NVF`i#ɀd`(g0[`VN>_Q?ܭ~}ԇ8_.G>,|1YN}A1B[TVK9nR49Ϲs_(nw3Zڀ@h%Z;ocNO 1 ^;*I7*1@(E"={fW9zc7tፕnܧ_z2Gpoa[ M{t8zv7"HDlGuMRknx ONZ>zYҸή 1WP0 u=+ "|esa0/?{.cq"= j+ڕB*eusr?>$gĪ׽cka-Afm|Kfxye*D;]heWySI#o!HK5nxgD01 !lPK)ͽHTIX;DDx}V|"A4|_4Wţ'et:Mvhr<1U &Q]aH;DLZ1IWOFlef PO=m[v=(/47R1!eMx:mls)=vN0zX#;tv|E݌4x ę* ׫Hn7g865bNF=)OjU`a$G:,L+wbҿT6U ᫳&h8gױJ=a]lWߣ(#cX7v"T"KILu(7̀ht%` ?'3φ 蒦z!^O/{;-d~i%mo||[1"]D=+GD#robJl>@SYs8c+>Ʀȉ v?/$ؾd\Q4t!}@UCw9Y6TǨsRԴ(Hbo nڞou灲1k*ʉ$T 鋝=d6ʍ| cr״t" `ո_ɴx_`hsGҌ0 _{ {$L"0H٠?6`WՒQZrIV1hmlgI[)Kqt=MX}c',܀ܸ::$XC*zsYtD=$O=CnnIv ihan^߰0p@?S9}ҀH㳏!W91i[qcs9}l nKɛ,GhрG샅~ Q1ڝRdzM]=tWkPtr~ U9is{|KEVqeAWQN'}mLHtN|Kv`yo$rvD'iH8bMDaVg@ZAJX^TIRނʨġ\Khw5ť$$:uV@/4ǣPXzZlQG(i,#rf@B$r )`ն(SK*`z"*b Ǝnik omx5U4{&z'\Q $4;UYSݗ n9:uݗ$gV66dg+,$LcFbdgZh%{q>jxRPQ,pY&j}ij",n!>:9<9rގ๼Z`Uݩ0*@)c}Rz'/.6%E;ac1ygI5w2jj/JSI$F D.̫X{)'H"E<5bS/y>HtRۨp6%zV8@Ay=xRA"V(KqlV҇&t&$ʊrڧZ'\6Oj"Z$S"$Rpl0|sNB8 haeG,NB\ӎQ6Zkn6S!qp|#-:20[Ay u3v2v."E/of`xyi_lclz^@wY:q[ TšA{Yy|t\GBV!۠d4Bkɭ5ʷ @N XMlALM?Ɏrex@e"MXqP'QZb7whx۞g+[A,*jϋL4(׋o9b(`0g;.ѺBb-GE= չ^ - 20vS.U-,$!7~?F#/At%^EI u1?ޫ9-[3TƯo[=ά-]gu^qL63BbstDQY/ó~|^Rc inQ[z \8FNUHx&vD0d8p$h ۷yl|:OWH_5"}aZh5 ^4F2U][9.q]5H!z i!<jnd%E{v⺖P7,|\ 1K.?r&AcjhtE֝RZƒI ykia M-+2vQC:Ee1Ұ0۟׷>t 9q/p'x=LʨA"|_GQ`$꒗5t}.sް'-~_IF Y.Ψ3Z W@+*IEƌ87O8t]7ga3Z1.#^#ha%0!de\HUPV(itsʭg7.s!LCJ ԕЮ?|h7{V6*q6p"jD6m o1ߩ+ez7$n@^A)mBX' ͹B'׈?~uyɴ^f",cjP=߰^XTv%2r72\wQJCB?>G$:*HK}'on ڥAVi_-Gq` l)Uan geE2*%cLj.YU\,s6y2xtz.e~m?T޽eVxMcwέ ˆL0v&Lvis)[$H &'r3SyDVzRs3 HzN CƁPsySPAﭣl$]|W_'2;_X@뽏Ñ;t9$ C2s$Xt"V"*T4 -Yz `6i ) A֜0 !w:vES-dWxDqAvZCZ @AFA@;j?MR;R+uAY_<ܫ5F苎QyNv%M$hp#n(--J;R\ . pS#k@VB0*\iVLw/;@I7 v l+H$]rhZ\:mVKY-3}Xd(|;s|@!@k7uX1]Eg?m/UHtjvl ^[s1wT`fEOTXˤ2H۾p>,op?ҵ/rXc+2|fpD\͍Gex.^EEm!mρ0?&:z2 x!-ˇe7?}d1=L4[чaW.nciEYl=YXȺb}֫s4Kche^8xMMUﻦ7Ѡ@gok!L)I UB^} @:_$\OZi q⏗嶶c:)wO+9NsX#˺F8.r'dDfn |(?XF_W[ eiM|يp8٭}I[DPѤ ]RϹdж99a- JI1B ШquLVwHZFwCgF,U{b"*/rQNL)QtQDҡ/xvhlâKKqtKJ!HFe~_Z0!\|[b;nkA)&BX0VO}:;>ǘeu=iÜ0RCvUĉDvaƺ kSKLj`V-vkC-VђE n7f>ReT_ c!; ">WF9 b3p<9%.Z_} P*ը1'跬iJ.T"x*;\y - $*ݜR, R-ܑ1}Wh6XiVܔUmQW+hğG_uKqڨ\^l>T3^vGdrt)P "6X"^l,C<3dK!?.]&ArGGkLst2(*ẎNэI;EozjS/{N\d ahO),yCl1'wP&`$*Sc6K48{LF{oWǦV!;1JQa?P>::lPO +jo4glszZcLO7)L8:/ vRHuO,P(KK x$9 g^uBC%--dj7/vP%L6N!^֝V"*bL__dh+1xԄ5:R(.\H1X)Gm]ri ]Ҋ #Ck]E7x9-%..Vz]`)$4v y/C v$ ĽD/b.\hEvsC% <ei[J_d@a(V6.)=yv:wv\w\tt IQpz'jv3UQvCqtn7.PչOӅى]fV]ㅒgYJZZ$_OK"O:R+fk zdתxvp51<ܩZv2\ &(CG$` PX69tE}; r ?׸<ܩ͕PQu<-8Bu"DG-v5" w"V7q4P$y{QD }HOb#LMĕXUa3D,cQrELoxC*Sv$cA%lr͈cBK>"E̕Bl XSB^Umzf,F3n5 ]<dMvTo`[UBX$CNOXP9 񀱕{լeA:=#VI͞^>8(z>" fs><}QTˠka,eN^dqm|Oc|cbew;cdơ"܂R_-"vYYΐ}e8Tѩ럠j|=4t-yP=DO>($y:_} B*L`{~ gfȺ} "U6|FT %ay^){Z,`Kr!:Xs֔ fq k RBQ<| iQj4UN'{(0v~$ +Xpݧ869,yéyDwOobGx!aUv.>n.)ӳdpX}zR/5tGMԶ/ ܓR17]s;+L&Y #Q5/un6z-*͘ľYY y;fG:~QL4+U"GOQ8`e&޹^2>|lL]y_O*;ف&bs X$6̍ZB Nh`Бb/0V0_SvQcEU lbJ 36𴻰_Ck3#8S3qFd  g,-#?["̒?RS MRq`iJ_*(i8p jkAEa:iš٫9{I1)26rFqͣyt-]U4PiFu~n7I}:p L:ϕ2,󎟕U 6mFz+~(DM^EƶP FF\J5@D Z,42I~ۻc C#T#@șLp˲Jīf68d7!PJMOQ z EFњ_EJӝ7磁Vb{p2J-Ǵ)X;zGxĴ ll+~(QGNF83Ӫ QkD.λȴ mPclH|cC@?H<$Fԭz xגuS!N7*0I ~8R?XjoxJ+pIvOY^S5os"MyTDDw6F3VW0vfx=5"-@ݏ0 >y6 UEs ]~dth3%aUt/i kR)@ÁRQ7 <қ\`#ּ&- {wbz%vk+ US溎9qM.b&g:&|xKsp Pgr]jSيZQB?:f) ~&>ejR/wpM-Ă֞!}d'GmQrT Kze!Hg6/R 1C!I='k$F/9ޒLvܙBu71H.|nYjGgy;9MT1EQwD׺ʬiVʃ+5Unxr'!Oɿ {K[$+i:Ʊs|MB5+/chJ(m ͰZ0D-A1#ضsʄF_JWQkq 0V2#,ǚؙl9'(ycg(v7K_a(یriUJm.tt9XzɎ9|,U(孺XD·BF ҾKk@G@4NpEW` b*Czd5_Os6 Ӈ[zR"~.WUe6XrYCE}C4H/gjєsda35bi4:|\MIG侪xc+kX#HX?˝Oge5C<UGC)5 Ȕ~r1Iz܋q$)jQѬ *+6+u^\\ Hv!+0GK,ā:+׮>ƱZ Ĭu4tbDj]qW#H^S|T4K8R=%Imŋ8&QI(id|_WJt}KAK<-n0ٕI:u|zbG.dىLW q9UK2]hZbUdmӛ3H|3ײǙ R&#V>2dz^=L*fT"@Ҫ9շWW2` eYZxDIgwu`HT:bIXNV)"L-:X;^#畢LZ3#r=3$it}wreVDp9KǘWԻiEl`@mivz{.J%@w oHy]|eY)MrLq[6ThN0$ݑrWh4yĶ.("| >%%Zؠ"B{ X'ۿj$ R*h[ %:UKS  Jr0}w<sy?coн/%Db9qZل?Vd ZO0)7Z!tmde+e(B&}=4G33w ѫp rѤ7Y+ f~b2 zKLqO)TCoC-rHY/ܔ@\<+r ZM?}[ۇ5 ʏU`L`M wVGkNXFJ2 ؤ)G*;),|1$ܺ%UDx۶m>i"談@Ic Eh'dέ۝iϜ,~:_VRyK4 ˙r58H\݃Nt'W YiXw3u05AS$W̔ A:O;L^'5.76LIh}Vt,O#F߁yMۑw`IQs90VuL%>%ݿ~QAI"~67.p'&kau?߻ׅ䘚Ӝ) hZ ]iX}30'H^/%TgE_9\I a/x ;$ )QG)Xr Tm5n/~!9:3@ Q`1/"C}]#k pk,e zD4+\m|@j@ߪ% pe_ʚsPsl?kj[Ub u@v;KJ֛ͅ-# ?_| >f"B[UZkT [EY"GPt&$JY gPsVOKS$F"r4}(CocX#MYJw,{$Bgw}Tik')ONk$!6LoC1Fl Z1wUpd8ׅ5<~o{nko@ ][gJUQ FV݀oyI,-zAF~~ikylAJ.͋!% aL~]@~ohݛ\C=Mn;&A炦%2 =(c< =A&Z?#E.:Oa#Q+wLfb4/B0ᦊAn /W^{l2 r7HV# |U;oS wWRt>/ N,""ָvO'ky+7}g*yܕlʭqА-Գ|iJmĆ AN ܱE>6+2vʪtSQ s\lbipY(4:/U4®~e:yr kMMeau/D| {5$m{ȴf#gs5$Otz&W)33"p־9ID.:U]@)+1ɒ%"p&3(kBCONPW)dwA5%K>3ܟٺj;$E'5`>ڠ>NQz2{ Mc\}rax]8DXnS4ĵ14}xх4w aP%TB}F p>:Qǹaf!P a?}-40#!.ȶ݉Ns6px!>jґz"Vxt ~~h5p$<iGG,f`0ۺ Yx˃O&rBuŴZ2D5lzH6NJ0Ը (Ab>z<~f?S#:-=RkB}u U|nogQ4Ruܿ\ϧU)K'?qX1|tFX*C~1Lq$\(!=6cJ?R՜\q%{v`;MgN>{ TQd/7j|N([I UEΞqHqzo?K.a e/  w 8E$[Ԡ.te-Uɉ+>&.>'IlU]U5NQj{ GYdž35Zl۱L;ݼ̵2wExKSr=S0omUٞFcļ2eؗ"/=̑ v2Nc,yc(O:}ӳƖ'BF>,P zLߒ&*L y{eݕc$o7_á:BeMc~JKP7PX}Smfj wJŬTezx=OԎtr$;uwTWYm!@HM]hAVx \C3`#E:A ƣyMcJ8~짠 #M]B G2cExxP$֖0tת|x&gQ/mNKO9$ b߬eb_" p"1`E~>MIj?G󧼞{cg3$~H|S ՈuAd 5mC@G߰۝]zCbd ;4M7VEaٳΧ.ِ'xbeס ,,۰Ɲ?,Hsiy3k `ۄ pTn`k~ tVXFW%>i×ej(=tt4 t ~MNۍ >a΋-d8.v3U#S%1r޾*)^F 2I$1G=q9N'A<0NMBw~"^Gp,^W8EijR)5-w?xΰ{jq$7xn!ү!;M'ߊX P"\i }^. 9Wl ݧKZ2xy2[Fe yTĥ.AuZ=[q$TN?p4K&iB}a(v^VwοGdA՝&߆U\զzƛ%$N'(ml SZC+`9hj;zSR(pLk>u#nێ3V.eGpޢVl9|6Y?w_*t[]?[^ӈ1i$uR5WZ|Tn@WyC3+CH_9n,zVR4ðMBN`Yk_F0WtdxW.ҝߜ=rWѿؕp> ļpF~6DK=:7,Dy ,CNO3*3H 2zQg\hPM*MfFw:#(Bpcy k$\!_>/!{  xh;lERPhKqj}֥BF]*a1-NJ1EˏF/yU,0+-}'^*;c^R]"P b =1:?= _/C2=r,+>RodT՞cQ.VhI pH_d؍)Jj1ΎC}=ZzkKr,itX% ]X΃Qf2I~/mktFI<.VuZVg:/ZHq'aegxO,^I 3{k8Zԯwpv!+Y5W }Ϗ}|&Yq؝jM]7*6q>&s*ʐ]AdBXZOt o$*}=1ja+MRpPuC^3z*G) ԉZ @3d{xg}s1CW^ӫ܌py|^p#`pl__6:$C~XQʯk!ZPn^gaq5hC̕h͑4>p%V(^LK _ p|v k^ rN_k  8oezLnc4>JaݡG$[ä`ܤB rE#$v$OG3=E^qЭ[ab1zumDN]F.A|j%)Ut5\KԐ^%**98H0npr *@)*f(вy:n M]9yB״Kbh"Գ1aGoğE]MN&e-dl #>G{`ƒV&~Uq\GKΥw-?L}^ƃ@o }'6#MXcb/'Ei WolȎ'M0S+M*~/|1 GgLgChDi\A AITΛĔ}بy I3@QelJ$YLށ>IeZ3<(ֲ24Ǎ,Mߟ@e @dZp n}2d{lS韒uINĂL԰CwH0cDA"{?p}<{=Klv0m$نgȬHR: x%d Et༐Mh"6jĴxZ^Tw(+ cNN56mPP;ڂ6?dM:0TG~EyAjݦ `sL;3wqY ڿ3XpWeўC!.EGY\\y"RDg-otLy~2-𘈲  yOR2{8 W^0KwxtPD{CXY͖IҞІ"+J: 507Bx@_/*B U3Z|8^|F8`xЩ}WQPyyXSUW>qQ#P TnU@2a&tWN_ Z!jhJowRhA.j^dܗAo]H7DOA,j6&݈B!3_`b;KTğ!6(CzZEs΢}su=Ğ:W[#*>Gq"wlݪaҺ8z9<ԣIQ}3N?G 긒d  !< 1 Yf/3 rz:6-}i_Y:f u״ڥ1gwQU_F9jմ+0F|Q`l6h{;3S#g\Խ%(@_\ulX"XG>2r$s!ˎά??Q nzoWudо=F"0XX3ѿxkUxɫ֜N@QNhƢ[7Pgi :D&Rӣ"Y րWz_ε}ŗ zza||ys Bk\Am87Ѹ" UfOp`~( PIx{!J5Pu #5fjv &~=(N_8DrB%W~3I@hou8_㳱Y}?'"5+G FT3֦(@OT{h2ZT>/r"ر:Ik\*K*ܼjLv *Iwl& } xt: 5t_'@)ez3^ID]oִiڙ]Ae|q5NT'eWpelXBDԲ/$b+%x:O@3b^DpSI?)J4&끗$yn:­Kb7`|F5lxr EzëZ̋L.hAlx+S SƕMlM~8b?V +r;721t]sVkFe1K4JFpKhaP)A ;$m.Ă.hb{]BʠjxP0ic+xn0cKhxjrL[(OP,) uXNAuQ^r7 $1!7&Q˜"yQ?LdDЫ 8{AJBp chFkOpڞ[K*Fqp#ydhibTﳘuԅk q<'>3b;=:Yc;ڦ4M.CL~գ[u LbKnb5Ayr+YnBPKp/cKe/7uDk^{_tGű 5`@%@ !+9\ .zaJh֙7k0+Zؾ/W'_%S{l`^yy1Bٮ>ejC?lD $WVI^fx:HAQ &T&_psZ#s{}J9FNR4)pMBh^ߓdvX]/_Xko<]pA1WԫMV9s0:x{,A=v "߹D\|N ɝ[ S+Mژ51|mX4푕ĝ[Կ])oPC[|],c:00"*TM1fYꦪc(tmǼM r٥ZBv<09-k =B >B!!>NB4J]n}L^)EjWvҚZVBfCTş鴐G%HJȻ]ӄ51asz.: N'ACū?P&Tˀjc4 <#$g(P=~%'p z[VcqZl2n` k$X%(!Zp%dfzhUs+"] @qҡN|ؓŧ$T~˔D۴E1 M[m`KQ2^##Zd Ff;^Uus@/B\IޭFdMpd6dZe GH؆/ j$+OeF3[u/f%DK%O"hTu}S}Q>lmƯ:+ ~FM7)Fձe16,͙F={^qn5;:I*J:Ԧkv=Ҽ+S޵ ϨVos6Z'X9k{pK2e5% ;D^WU Qz_@6bJS_KQ&w oFiNilHn]TaDUk;|`m_ @&x_Q =WxHwY͐=Sv4;- W\</8ӬYY53=ip)Z,m•ռLlc /.>5 1jKzᴪP?~!N5b%^$L&Ql eƣIp,K_qkv_/OW[`z+<H~DRWjtw%G0hիJ%~4s~hl˕ n w@nѯsݡT6H_s}[-ݱ-i~7qh2<҄\knl ;euLQ|{AіL(41 9EڪHvѢ ߕ┣,rТ`9ԵO+lJA]a4A6ю^\S^{~-*6f[ikl˓H<?+9-HgΟ ^˘H?jNS'K:R mpW3~0.#a:æf*>ud ʚ(S|_V -/oseuT'% З.(%'~SƩB$cv[ wXUT Lܦ RO#ܗrz.sj1\&73|s1K ߕφhEU)Oӌ֧+L%`f1C,X)y9wѰ2)">B=oNXe#`嫐=ٝϖxn;(V`7y蕛 L<;cOI\G[{3z)^yzX(0<~"]E36zVE;ꘕA7ҺWWe=5=[s[`iJ']F[-yMɾa>k܍Mj_K;ַ˺l;yd:$s!f_ć")/~ VvD./!g)»oƝ̭cܺN﷮P}>w{}A_.8ƖLI;;I*‡> 3\lRb™ib$ m ov濑23_: ~-;p=7);AZXVfU#Bw{ۏ PX ֺϥ6^֏9hywƌ+RѨ1_pD] 鏔\la6QC+n6Vl SEEm9S@&kݻq߆SR=(ퟟ|WiZPpSO4CVsh v-8FxM8=bi,ع;ԧ # u8rY).J,'sk%R@Xk`$ u!+cTM71{Ȇau q \~SXaDN=u\UҾi8<Us!q=n^`D9 KL{o<JD Y{7dq1'c(;'tEui]x H1m7ODYaog(MVcD7$1PA:bۡ_ڬGB(!fN*5C)V]z7uqwZ25wxwlS߭u"u}&Mڝy~ymQFW{ ?3hxz߃71G[3 [\ýÀPǀ{&qKw~fi(q<7% D C+}Nm%Q/i7K?EOG8Gv^>/F0qVMU`  lqr԰Ei>PM!6&^Sp6c=w6CgP(*〝\ Ya\"⏑\?ҥ39Eb++F9:uY .rI%{wݲXmnf*nth#uu+4᠅D;.]~ zJwȕn_#4N*skG0H۞їbdbK}'?Ze& VbR~42&U[lϗh{ucCYX PCkO*y]CSgiIR<@7S6L: M4&D݊[ D:O0"Vy4pS|UpF 5eCk|_{^ bѱo{ٕȑM1shL&ptOeB wĮvЕF7WI}khq C,_ eܕ6Ĭzi<8aY~J%rx!ry7&!#bUD^zV.̙ Xz2B1i1gapm 0ѲsDv*4EswF4G˕&"c2S gsLb@zP)<= bj~6ԥ,E&.F]]Q|?B  VGpW5Lܑ"0}d.$[KJt*fMNuXXԕtmL?kVY ?`p@3SP,qLn2(ޯ}$uiZy.g߁aFgA%Y~ZIΝ`)ϣ[\UYߌL'x9p/ȔOo( \G{a,_ʷ8Yb6 0%PEm i,@PɆ%%n5Z/Zd';a\3ox1A=It^D4:&ș۴ Gn)襩-w:n g O)]*:jr`|4acQSeTPٱTH4[ IJo;)ߪ[PS ^n1h$섰&}=׌9ɉ4}2΍h7q5t-fbKnPj J;3|Iid?.l6dA{j?PT(`Oͧ9!q/h +rgR[lD}3O[\ {JU]E4ſ8&@ab\ BXH$2PR&VWaVB ~[~Egcٰ=(cɖ#xYj8+*S_,ڊiO;צ@&T w_ԯ'ujtJ\_Qr=Rpށ&Fw_UYzUY[n PIr +R FSޣ*"[9{\D(a93q`c<9ok?龼_&KAcVպC3\2X\p[؆ȕjk2d·jX{/Ɗ 9+!J9y쪷_pZU@Q{,-K ѽz9RM_^g~Iy#݉yэfNP5ز$mL BzFe)F>fT>R1صsG(ߺ7!IR>{3x'i7kǟBB{/6H׭+uІ@.7лf֛a0HgƳtoy Mfml[\xzlm`uڳKK)LlZ?ƧɧbԤ:)%$7ziR m[r5?W9퐥ZlKjI!k{}켩_^ŤenD'=C#tES!|o>:Ry332o'g]@&[6`0ߊ`b}hGף-nJz6E,A-?Kk60L#oƇ$ۆ`y$5þ>ݹYu\P-Mv>d1eIK F^!ԩussp,['ȧW|Ų JiȮG)YAڛHNE 揠@7{ eސɽ`"wNV~P͟KzD <&UVۉ֐9&5Y! 2z%.M,&$| y# dљ g\+ϱzbxaݩؽU"n:baZJx+c4֡ *:H$oޘX>YyDlłNE(oN8kYmrCB"lK dTM R ~e>è9'jtO䇰"w.EIk*E>.r%]"=yDb\X׿o CLxgݽil˴-ڡ> qZ"g60u~w!l0,`dxZ5RBYj8WSbGlڌ~'${ab/Ҷ/aSJ愂P4 p?uܫJ/.>YZƻj) +vc6;07k;p{mWp:h&ݨ T!'B5M :0dH{qqaj5]O〠4 ,wXV^mjl̢KcI'<}N3/6BmEqv13?7܏nlܹ7Mb辖aaԝqˇ^YraHKNp ,:i0YZ[pYxqyWx|f="AP1R =WTo|=%QL-XގU.*Iz5+X_2级[=pS͢/0s'X~aJKwywo\qS2y%OP&iGR3ÐA|_i?NFI϶ w $.[̍mQHW/LQ-|XWw&O o(1Y?_vDzǨE#4W;2)I!6uM ӷViN:*c?lG`VXMQB}C"Lᡕd.m.(-~x5*Q፩KTRPA+{Q>Ӭ{mUdK>/Y.,RC/H `֨yF]q_5`~΋vm5$#HEWM$  fex$Ж@8*(vGċW}UJO~_AQj881'n j5tПPl,7~6Yb ׈ D7&d֦L#f0晣\ΐpa9m x<'o E у ^[~[+ffsv7KV̅nUYD(]ʾQ%C~Fw=`qu.q>sGwiOIm˟K'NWJ ̭)pY4 'i =})I&p_Ad2~2!1]k5PmV92pEl)b™=ns|*yسƷeg[ 湎&bJ5QNmmƍf9f F,UԖhR;O%Z^g|ʤ!=3]eaS1𨓟{yA9$>SD<Bɕ1UxJvw.zNSeo3g% ^&NUx.ra ʈ1x$|0:- L:׬ &vsډT? ۼd\omb33QfC{D=YM=H ?0]ͫ)W T{ $xqz$ Uޞ*og6"5Sqv7{x¹c.B@_vN'2mIpSdeupɍ 5Qr|H&!.ëmUUII= }"֣yXJfI.vVx/:c4JKڗ1FqRF:~yٽ<2ADDžnS9J{̧)%ߪtb7hUx3oH5VٰIسM,qP?g uປog/j=Z~Ѹa:j U(7cY1\䆔BX|4]f-RIl4 ub-:mnTYf 8Fh$9դT\%d.+dD\rUjTbqٍ_ZuG8PEDl)|#"Ή8%'S<2!8<*{EJ,\=.szˎOؘޫjf.U\oƦ3*ȩK)"DdfM/( @*W;a-^(d33-*ƶXw9z%roMǓf 4̵gpMD x8'Ȥ<˗BmP. б W{}C:Չkڂù?q;-<([ʀ/xPkCeP tMY˩B h֫W*/x{-4QvBg!X-MJl~,f:SҮZwHf0{hZ+ uLr&I=bĊ*wj%0prkAi!xsKi洱Nvɍgi8=)oCϙ+MLeN+#_gCx1v/c8`7s;Hg jNd%}-r}'2fTMs0IoNlX2 +[wtWaf?5: $a{N-۪*L#7b+/fڥf5%wU,w xT!d=o}d~R t"Ø'?zQR͜9=C7od2R=kZk!0[ & s}y͑#Dnw?>?$X}YB"4AuM_-Wꋎ?U˫(_3vQ!`M$B(}mSI&X![ZSW d#aw|eYl4B~TvNsu/mQp%8nU5RؔVX]*hrkxAѭ

    ^ƂOoc!=i0p)<a$̓֗`Ᏼӵ[j @?ϤnrP5컞»AD埋 LZMد/pQι M7[Jn.R Fu=S'rIsҬ%5o}CʕNN+'@4Pڔhr0#Ȋ hBt(먳kBnt򫃽RT;6 ՛#dBWjdn=ج\hOӠ *M40zC=>()z6+4 GanF*\j+lj)$A#)g>iLWMr%N4:hV|#]jK'>"MQ 7'D/bkE*ۙ0NZƿ'ג_$w\0t"&KE;'~Hh|rNyk1@` sG)iR٬9 ȣ 浒5]O;|g,jUSZ_2!G(e>R20!iB9Z~FH|UUʎA} ۖ)ὄլi_,Vf2X U@@i=Y]^SSXⴙ{fH9{lɀ}\S'&| O}ǰ~&M3gzMb[VZY-$Fmɏ#]ϣ.q\}Wuhq qLua옢 UțےZ ȫ4в<~jt٤Y,A i"z߬w~i6Ab(@{[iv,eJe7BZ.; jζ^}T["vC^J:>$H7L'L 4ॠs‚@ríf)+=+7黁 oHyeQ~&ߣΉQ`wPq v6Ido~L QĦ[?"zڶFL"_gӎ2|:Tםt-kũ6Xyl¯ ;ߑ_Q{z sшBf~g{B5Ȗ E~{2ⶖFuo2Bw}we oMc^<"4x.a~BaHp[OE92>ˮJ"YjSrs 7'Do.hգR9aѫ d1nQ٤o& 8"3UU /N'`Qڠu.Tтso v, ݡve/*hOAm'iaC-0T)7ܑ?}]8 3k& }FȖĀ-YYzc- +W&8Yڃ#P7~GX%n2K4?'tTi a[e(@":Q MiH `u. pQ.I%xZ+eMI?h1)jyE4K3wfj{L.;Łu @+ji$F+RԿ qWx@ڠ{t)$bRnfZaM Idzj%Po 5/k<,nR L١T h&]$]NۑS.DlC0&X!Eܿ- p%Y!~I Bز<Ď)8;'k!=&CAK] zK`+-T%ReUGOaU0X%4K)} jl봔B]7__y_Vĸ͙RASgDFoԀDqUMq/Sz`=e?!\fvls= ֧xifc*(@E#h\KحpW_{?2SUu\OWmuL),VXOZ4gE0wT΃3Vi%@ $ ؖ ٥Rn-T;/^ Xhj X1 ej%Ml؁m9x>fH*SDI`tOboP_x5^udCAJ^*͛;4/pWܸ &y>T6i<=} qüh#ϟzx'N 6upm$J xPvkr-=W|I+ GZEvv~S1q*GaOj*w.Jէ׾S)lw@3C#R^;XHՀ:ukLJ-q+ud2X1lma0 %k`ˉXYmj0lx^eJ̈́h]]]nԻ-Q27ՙ m¬7_0N;XX>F̤HN-("mH! A =C/mp Sc*ԋ,8e)->U@SKW+v=Lq=SjR{[ZQd}V< /9clc"yt".kU$BX "<2`! %*D5\")'dr ÕBOS Ǒw)?$HNa$o= "+v9=ѤLTHu_QDUiFhFgƲ^skBg*]`9K+AYc5rX쮙![mlb.{8ϜOIm2?y_3kZ ~iaB*kj{|ϲ#b,7b=H[BTGH$dM"/|_;[Rv%J|dɪ:>E/HCkF~=[ AS~44o²x`ٲܕ=eFP>]7\SZG/ lb2F!:$ɃtlL{zZEr5̈Q)v$ć+.!+l]}L7ҋSYʟm 0p5{ Šۉ*|J`& 6G95/r.Ğd+؅t2jEC֥ 9Ӊ r!s[nh rRms*t0|w,'t\t}i. S?#{4ǩu% G_}3&b<Kk&!<-?!O%/wiEPf##SYqHԚ|5ٍ>bte>zpJȱ;Њ+â#zhۚZ8/W8OOCW#k!3+`KY@m1W`/I#8ĵ'h H4G<24`P5sj N&ζ$MrŮ;V7oGRN/iGRRb9BFHkݐqEܱ4֟ܳդB6|h!8EQN%b+G?H-:g9F/k$0vYr\! ,H!]nwF`obltsqABե%XX U9{7Pl@x>9}Z=9~U(F}@b٫@ٛy?qlx4(uOXqގ𼄼$ӜX'j،{9Cm`'foUP^< ( 1{̖SezKjQP(ߎG՟W7tV.>>J;'h͚ wűֺVp'Y#[[ kz5+ݑyK\ψ굼?HCIP2إH(^n?('{Lo/#hӔWmlZIv|.PYG\,;؉P0ta~y<1ЫCyTWj:^Gyt-rv!\RID@9jiؑP⡣hWqǪ8Wڂ8+DVG*d9M@ TDA}wC*zG7C2vޖjA85 q>gͶPzR… jH9o0Ea%s=.D"vd) Ex#}[S4OrHAK{dS+ qgD UDV`29Nd-6l?dN(yV$v_"jpdzɓU?_\,/ ΏQDuBw2o/ωRc;P "t@hðv;eJbE֗}9Ug/# nȇ @':Iʯ6; 0#f]R|Pm\Ƚ38™1\]~px;eT{/26x#fPC ɓoI<ɝCR%١03ONl>zrलo8 5x1XZJq=:%d&~gEPF] ̈'a]5*3:Fо9y:yd@XH[fo#S?)Pt խ^]K83mS]ޮuVGEAEX] X~2ű6e.w$\B)bu%xRSX~ gPr\wo̭V%5xV7@?['"+37I)lQgmM'K6R|u\5@)#Pfv!}Xҟސ5jgWCj˜8rånqȀp &}+?vVGm;FoS! ,l>۹IJEKdӕ?h5@EjkS[3.0l~^`Tm:Xbxz_X+Xa(K+t.t9J Vp( IG-E<(n2?WS3` ]#vrpYjy_|3*yz #!ac;pAV`9\ (11Kgѩ 9h</Mc+ZU0RŶ6J)WS#z2c6%? d[b6yI*_5ھ{~- k]ijA .pF&> =`e-.SÛ҄3;E8CPֶlaϠ}PjL7 aOKY-Q*i?xieK󟦆% DPK{5 ^qoe!U QkV4SHkS}-=D# R祯rc#R= 1Qcn?#Z<Ы>{ /k˴bgc'"/Le޲3,҆TZ[m'OVOpf T$p>! "@}=B#%4Rp{`AL*/nDҙCf8 XvY$GlH5 e8BmcKd!bC(PPϓ9wv4<<߂(a4sm0r1͠hx5G>a7!~jl]n! Kp/A~d[S̞\q(D7R./j9\o*z6=Ԣ0: i7qB, qsf/ŌŕP}[elD=,ůu\O-aBD|L c|йNVr Bʌ('l2Xۥ=mN`As~3B-QEh˜qON՗>uRlP,ȀVi{SZ=j7bohA yW~y֥#mP٘$l88Lo[r3e.+ cs:`̛򣴋`YH=s"C8vG,w LO7CaBuL`XY}i\-0vIWYLZ*8Xx;%}ǜm[an´/8ճsiɽ~0i:ּjY?6;ADH:A3vGJ,1 W5HzR)&\RyWnvAnMAUcS?ܶT5v՘<ջ $+i2W ىŒQ2[t.bvk@m0|ah9qȦʼ\Ňf;8 }P,'Ef)RυgV FIŖ*!.ҴN*6H;K3*VRÑPpBQa:7e*ٞ584iVۍɗRB*4}{ԠL_ dE!ݹ˥w?=BjCW=KΆ"%@[slBȝٙfQ~)T;k=G͆3L:[KZE)v5 Znȃ>pD[~F1)r@\"S帩͐uy\ a]CՎ@MJzaJ:kVhQ-o/RIeꤠx EsD{I޺1uhX74680 fw~~͗nk̻S͐[=@Vsw lDNWPAFLknLdPbV1) z8C!]SlAL:(cwR C;Hp۰Y[ʓ {ɿ>`XMl+psXwM0zX}9ͤ.=nA Ud[Bݔj`zG_UGrBS1o4e5J :ho,Y:Zov^hPNkǜ>WR 'D\;< i3H_Sprf?i֗ 0}7RQ^&͢u~jo+X*>9:|gξy˜ BRkE<(;/*Jݢ`6X ,QNzHZ|;J0N1PDXD*Qi6ILta=o[CpdlSYqߜ鶶ty =p}F׬/lQ6y" W04nd4lP\Ԭ&lNfpW]q&!63Aw6ձşE,&/~_M;aުp`C ÉC@xh =1goŐs@GUքە^5[.Jpļ?^s؏.kBpxYDrGBH2hX߈_/H`7_S?941+O<, *_=gʬKgw2C \0+ZߐtJJ`KR=e eIÃ(m*pwX…4 OLXi0 J@G#W"u\ڔ 9d-akZzt6 :M3kbAX!-ؠk]AuI>(<:5[{ 6y[tG%wB+=ZP P&&"K S9#WFHmCK[.ifx뾬[ǕWBV&=sہwQw -*qSaB+4)U?X)X L* hJM|&P!˪"=%o?麗]٬'q5p" ҽ*pɰx`aCŵ@SÉBŸ҅]xcjr#RӍvz T^ 4-:8DDȈlÉQ./h4[mfXqt$ E:nj`>!5xK\sޏo SfMѳS?C!* l|3bI=-Q3M-Yh'<_-2Vjm!Z0b0Tw ~WMK{%Ի6bqLXgcrʺ8mFѰ L>0g+W%çwO#Gt-E~3z {OX. \m_1G1OP#" ó hJ@ ]jMdLa'Y"F?Ξ1yUrZ+*;xmJܝJiDqn66B~(i=nNs*j{Sݕ˩uMS,wiNbG':-̈́ݝ1fެ: 0]ZZ%Q70OsH8Ėi|O=%}`{ R,NXFor~OU3CH ۔D9:vk‹0W&]k.ZL7皉ڵ.ya!%,BYKmZG*0CbƸcQZom>q,+ûpn;xmYvo<މ!|SzEdJN95GLd{NS(D2=quBDnGVM2ɧ]in qT03+xUc2Vݿv3m/IW_T Sgp)ʠbHP} , s#?Tוs=H*>1--o49}nRpKz ;FejC+c>-gOTDpácQܓ֌~dKݺ]W_ȭ8HvhXrB4m0=3Fdkn JZ^0Jg.?Al_v1V>ea;3웜uqk?O/I2 A=koq/fڱ߀;NUIyym!&OVuE)?]UX ^9U Q]q>- j1*/ i' )o1ٷ`bԼ<V)p$`M|HԞzcAv6n66|1(g5A0r->tfM.$ȇ-䔞UJ5OV{Ž?eGS@{bn zAHbniR>|/`nLL%iN[HFsE>UhV7Ŧ̅Jp Sl!sDٞ rhj;Ij.,iui:8ض@yz+sGJaxF 5T">Whឱ HP8ƾI敵fM Y/ sPE$t^EA 4=gNQbQ`a:%Îav&[o@ T~BP0y]q#םN3.Csٱh& xaO )̾{"+N2]g`@@EDYJs@h{*Cج5CgPd*'S٨0)2(D]אq{aI?S,<oxj=6r;Vw uX\bc1yF K<ˠLKR^.|5 1q?+alUa> |v.ty\>@ 0s[T@0qMD\|UpaP99G@lRzr"촆nhu9JhI%ySUF'Ӵqi.FmK=s|AyZScR ;MƊo=;CEެ ߲1yqkt*V-VW">. 9xd~B *za[(;x|pT&DTn_WQyrxeT[-CRHvg`( Ɋ:4OoC%[]Bo3ݭU\1 : qVojdƣr(xӣF&J oWyղ:ҞuU~SQu0)Qr96 U6xϢM%9:7F(yOC"OXU$}I!W?+qzƨo=j^8H78ҶG*ojh%m)@KӖ4M>uٲF.Pm;-ϛ UE=LIl" S@KFA8U33A_zLkUG' Vǔ~3%(m&y8/æ:`QUA@|M[A Ceuo%FXlIM~)H:UQ~l[u7@1QU@nA mܧh/gP /݌3x8ӽ/vu1cvk~iʰ;ۊ_ՓB@< &-П_D~g6 u~ہ[y5ĕl6~hf(H1!(}`?)a …"l,d{X+us~BQgB~߸o^[{F390Xt}r߇B{G0 lxbZ\I5QC Ȼk7Gz=eB&/>GY,ecۙ>>{ x>L<41"Y{bJ|(oiBV=TtK X])וQ?DFEeƖΡ0.x:Dd0!9@%T$77I)mꈳ]!|% c?N?5gMЫ8Z6JyIFcsS-Hr]O3B-%j-JBPֺ3-N䇲qo`" P땑=U^c\VbC!](9]=mtOUU|w h Q'Bb@L'7Vi\> &o叞_Ӂ6{$6: 0%`{OLDJ$飱_^YZ}La2BG+/QLK8gz'V}нer LR;^Qu% -ءDO'f*/} %>:52)JpWB2#'C1dg{*N5sZ˫8P{B.?Ap MmIIͮcD}Aq܅*i*R2ߎVC*+4GlQߨd+qV>UL. hLJnfs P313o RJ"M ~vʼrG x0Ex,/k  {!S5aPl!BmE  >:Kgh}$+*qEӋtus41f<'pNDP؎=Nd)ς57;10ytY%ښ0Ѽ\6Rß2ڒ<;9  {)ɩVҗMwzz GL\=wUĆv+sdJѬc$j_P#@> zՑܖMG >Sbskυ 4h!3YSX< KJ*`j5WW{f[)phJ5P/J>iJDooƅ7]iGOM+J{ i0HZ ci9|h5C-mtNjIuMD/,IUZP?6Y]` Ax.Č6>Oyu!-qyKwL:xaYBRA4*3ԳfkS'r _&6f˅59 B͘ !;jwFQphͬ@SMlJxmuozTRw.n7E<$cBQv|T\1;KwwCdD~EJ3m doCX_xղ_mg(;n/fM'8RґtOH u(jͼ6I + hysx{:  ].sMm\} M"\!`T0r[GdRSiR|jP[{"lGk'T4Jߠ 5\:04u~ ?w!0Y~;0hy0%.\Y 1[#PT}b2_N85e3\L8lvX(9u}A5N[‰='ڐ`Q.rr큀2aw!5ev5g]I,{@.k4$'(}'~4+ Kkl<*KfNq =W2e`+V9S#B*$kr%]XJ!_b.(tE ef![:ǤՑxC"qxlOgQ)b# 97DGG l[tr:;//4_MmwKm. ,\UCMH÷ )A|2ڸYSJS,tJ ym봐]s&wxR_;F=kP4.inOH;rIy2+%t];{GSWF9]\E[a |¬kJ4n6d_Z )g:o1~gt|zhIIMȕ`gU_3\픬j9koH>@W)|tȨxYt1@\Vzh'D[HV]RJ]+fY4;Ʀ_f\TmPmЯtXkZ.O<c+^~BS"X$=bL-g6g~xYu* BNkgp*d,#ۦvO=Qzm[MMu||Uulrp'4Sf8}0e3= C4t:yB82Aﺣee#O9Kjn@!_C_ľOQs"?/ @:;SZ0 x+WDZj6Ua19Tw=Bk? +\y Ҵm CO'dso0j$3yKp]^F.K3xap _l_>%4Moa;~ZyD:?- (ʨrU~iCV6; UㄩAhin!RM*I$G:~j~?`}B < a\Bcu:%'Kk ǦcT2pMW-al0 l?há*=׶UuqFHBHaXH ed+X4*âZT Tca_yyҜJH)Ƞ&&7z<?Y x)Rnļ4i(2R.y^gC{sGS6Ό\e12<%Pk6E5j} *8FydCp=xz{9j Ik|a"7y#^*dr%ęhuei ñc><֢cms*e]K`0bP䥰NfJ\5a]QG:Ex)^ ZͻH?>rA0jL6fP*1\.=Kc,[khvn`z('{c@ ޘx/5x[}%[&r|2K. <@f50|LU)V!VƁ܅$mUja~F_2tju({e-.J[9d##w" J;~=U X"j@XG rB{ [!A_N\7tjHIi}\VgI{j94~)KA*;, ~.hK{"H7Sܐpw-J0j\MGcúJ jެ4- Xr0k|KCQnZB*EjV|Ǜf:}*pQKfxDKksmX9@2`= @(QS OhCĢ@&]~(T,7Jw݄h'z{EOzJ'X@-,ʼ[nzf;yLӎݽLo%(w?Vt~Cd-׃'`tTh[(lS((B kTęTKn#rd#W/VV,G@\6"^F ۜd賱 X=z{P(8Q&ab"c4$吏{` ֒h|3z$Ts+@Sv}V;ȭEpk"aƱ[؏`Vt~a🩖We=$t ar- z6+ẉOYyCX H^ _5KyW͸uܗ5 .fqǠϧ]-$3 C^;*_:l">rs"؄ X2 (%?eKr~]M֫}sU}86&WQr1Z_Xe|}3>%mjFL%R+~y}&?w&F#pBRNt)_=!;M#_AܵT[~7ڢg#=! 4L:VY~]=e~f*dյD"{5dAX鳺-Vo*56Mr“, Kqbɲ_'D&.zbuqC,qB(J]l!)[! 9AofWI-X~Hԙ[^3_k~.ge!廥^[v#~acrv=kYlZDh0Ψ_/{7&_7o},KpRxF~Dk[ .O-'>8SaVD(9goT cm݌/N"dYp{HC¬wRh;l~D| +ՂrX˫ '>\}7jҋ+?l<~-U c 枼Qͽ(zg Ë,LzC/Y+0xÝOY\efeG5<؍!б)V "}u`ށG+Ƃ1$mMZyG~eh{}NA;lN힭11i<>ɩM(mʟ؎DCS}"F'#@qPh3Ւ[N/Ϝ,a!7dˎe(fH :6O2]xt-G+4zqz/%= vw~ mQ NSX8)L `YdkMF,6#p"Se f浸=ԴMBe2^DX n:lk;Vfo rQȪ2i5Vϝ4 [2S?7, }e'4"X*pzΙ3@Io zw!I<ڠ)/SE^R9߁ Xj<*7#u\DIc؋ZDz8Q6P~ιN~ƿwEsnQ- ;mb'$H3?A-#lv]ٜ*i [b|[27 {()ռ'y] zQPJyRK%~$)̐&ߎXsY}vCA&ҖT_c(]fk)1'^rWADJ2`ZS1 @޾Y~ìN R]Z.A6q$B$>'|=p|I&ש=DE|"9)o]BqͬS]dݘD>7vc3W1$S}Mslzũ﷝ 44VkYkpS@@}`Vev8+aq\ MKfV6~2._.Ōx[#.,.UBX/{l/}T7Պ㔺#u5eψ¡7'f=8<ȫճc&0y_G#x &:P=. "W %8PcDs);zu"6ݭ6{ jh_ʆ*' j28Q0*JÚ=mm?_ 5\;$'wp}B ?,aT' $d#U %n0ߨܞP#{U )$iZ-~H;kkU)4~lյn57{tX6;,#jc.1D+S˕&!} ܜUeŐبݫ #"jB͋uZ}XՉJYu./Nkļ EjyTorq32BVу:2N>ȃ1ܽ*Y")襫L\3Kq[xvO &/衲0( |tſᓮh,lM,řh*:awi~\d*Y54Rpfr ~f|Qs$!1YKVZamY#.3j0V#'z(]}X)-1 U0OGXJJotpa()o2#ӥCUX.x?³yct |9kB}Ph%u툢Xc_/WBHdHgH״] at$W(?;+LMڳ 0[ ab+6ӥ]%&H௯JNƷ S3jr3K  >n ïB}qҽ}NNT }2$LWnc%Ylh#s"WQI _(مQI-zSkE|wR`rtUwY̛9xk#^*h#x/9~)g[2}Dsz\0~̯^}.tNr$%'.+sP0hqLHO0:=Q^-Z=A<@ޯˉ(a~%1/aUC:WjN  9;IHy}U=Na/;6hi8YG6&w\1gfrݜ +PS"ZȰ0;QlRezTO j C-Mvc7H{'oY3r8!`vGUc5Հ2FV@"6EELcqڃ-.XU)>w)Y]ތz2ȓ\ȩ5SL1Iߔic#B4:1}'hF =˹W3`q)ؤ[`3)X\X.ڎ@ḃE׸0/R^c(4]&y,ڒe0w`R恏oIK{On'l>ͬ=x=6Y)an~Y s{9E47i<&MWυ=#p"XWkzzԭ.zRƬ/u~a:7 @ַՋ<] DpSsF(lB5NZLO,N`?H1iRǤP%=NCqvBGBl))جdj@uMf[uT#%YX+!y:.f캝n>Rs&V%iLݮKmV |UER#W3_Ҳ2|Isc+&dپYOT7`c*-<_zZԪu8[#+ZOzU$EjD Hm-OU14U5΀/7ZK: %f )Av= k+mbG6&') fn ڃuM-7;0zqB͢;"k8>f#*~c3C]A؏Ea4^B£`4;trjR 4PQfq<b$rcXjf#]wq],]P%o2(j2DrҥCsvNY!qlJVmsF; \Ƕv阄\:Őj0by&/b2m%桓g!wA^ Y "ƑA]CyjA1Xo[M]M$~Pt=H44; `V!aI$WX#Փ9gPK}9w%C y[MApJZjOܦ<|+.6MnghD\$}Gƹ{ӌT,?vzzS]ng3ܸR3͊% /girUWzB6HDQ~dKS#H8 U]ƏskeNDSVRAۙWW n@>Eh^%`Gk^ l*SLtw.)O>jd]mimഩ7BM*xk _m8+~ꎼ:.-m.] sR:t )kny$oM_Tۖ0kSDΏ0총ww,xrdF#̏wU6#Vy!MMCYqzѝ-2/]Lˑ9*yV 񜱳1 ڲ"\X@U䰱+>7M_+?bes:$F#\ap\/>0NqƧTGJ^xQLC'G]sBL  4{HT~MY jj}@׋> ֲEI6C@.;㦬V bBIG' 'N&f \Ã&Ej9=AJEZ-U ]:on Cbo2BE4eDL 3@U<Br2UNTL_(Ayomu{.x-4`ҟ"5z$K@%10jӧ%C%eHc76{Yt_ .a/'2WJOK vE!N]FMp )3JȄm]A9#3RȐ&=5l1vw&N 2?p$ZbB!Z]"]zO45)jfAXGB66.;uX9{?n1Qjj+&|D^<(UxϭN3iZ\28+/= &HI^\,wcLFvP)6͋yt@$\]~nn:Z w|8-'e*0;Wc.͕X jFHmBO0llj95ЩWY.>M벸XdW_~ *ۚ!`4RZW4{2,+\ר Dl7Př1RجܮwЯ, ^\,C&xhp0^#YEd"b0kG4­Th?x_#X6[@ŔOk}RF2j ҃L*_bDuujZ[0cǪ:!uQ(椣ǤGjŬiCM~rn?MR]Ro}68CUvcPJ#^6AԺߪ 2&ch}|[ţ#zR@B;SXt#@#{F !ǐ\p;6BMJbSc=0hHm/5*K'@Kx> dodqp}_"))+3534k~[ǒ=K܆=H  ]]s}]&RfA?? 6Y/hŦ8u&p#lULấT\e/jyv}&ܘqv٫jx Ɂ:l5Ah;KzKJ0cY1\#!\'DM]r0vZv_"`NjmYF)FXP'r |7R4zjjTտ|m"{* ^69Po.2rn \X35qÝˋ&P!fD,M<_: t;5ũo zrsR}=uOI_S6 !**H RՅñ۰4=@76,2>f މbt]`[OrhH%5cRN(kKtQqUtNЛoe=R߫Í30SU}l^zVA*{y}7s\Cte6Awp@-2'T|J6]x2'LKsJt=9wd`؆˞q {0F /</e}ddX|Ȣ7'5r3AL=.)v:`zϺ;}bgS"#mcNVSo"|plr?waL:{с/sKauE1NɅ3?rɋl *<(kmΠه%߬ThAP,U P^:;Hoox&ͥN#ӱC'4ՂŬN@%v9_Tj땄Q_ %Z$޹9Zf;Cp#+wTES}kqܔ%P(tۤw.$#w뇆}#8HW6WQb1U2F*36^͠e]s<8Vb(LUcW]B`dfRӝ!2Yv-iL{+pE6Vuzy X˲yn07aH<]&7mN-Tf@vjAӶ]$RUptrp%ۦ̝:(ҵ) 60R*L]=GQBUqNF 1Z9ax[9=KeW;[UuVbfÚ'b^ǯϤb :zʎs[ 6uo*뽄8VNl$LHT;Nt  y0<ʢɋWiOЂYq6ۤ]D%S7yb@2l,#KR uW4m> gtumM> rĝPWسݓ9w2-DS M )T mO:z,}Ey8gj&:W-ª^{}59ؽ([O77/Ek\t)$ɋ#;nܣXKAiQG^UnquwSgE3ؿmV f~6=1܄3c@9CJҬ%5O mc #W+p /hJd|75jI# %V8!/!hv?7ay og_y&%|/ڼ\o;Rsާ"#YZW2} zHxRlTٯֱKO|a@{u0w&ǞCTKWbtSb~*dWq^LPl F,q `WoQTvqn5UӢ'P6S^}Ϲj^)DxqS!)H;Q@_MyJ{Ԇ?d)P}N? &9tTEY !eG J~ml*1*d؅+甦GM氃,Gqm6f,NuF3\_F3*d(loZ^(~#:[_ViC~̵iZ`d.n7k `K _j" $a\"ҵ0ݶ7ȅ*1OJ^ƍ [>_F{u0bl vRMC$oo@Ce$bXGSr:'1A.^/(TSe##W -Uͬ:?^}d2A8Lih8V4|?\E"8U'Y:730/vU뵡 _X%Uo."H Oe ݑ 1ѢNSYsrnjMXb6`ͧiq<0YK gGZQP h7Y9&,`%+H#ܷc<+KY~ה:ƧDLha7u[av{ŮCMRʼrxW8/;ae! jl{SX=*evW,CnjgsFTTkRYUdg~=DqlSTz[dR@x:\|.XXen-> RrcEO^~#%rO$)RW$#u䨳B!)Y1i^ pqkJ!p5߯GXS[*\DyE(<칗 F v/{X ?i;R="߄ rc ++Ӆ}ix/ƪ`7׫ miDAPeOCc;#&!hZz *R pa;p>/c7ۛ Ѥ}z*R!g{;IDo||[7ӹ&~$ S4e{yv |͜ |` j"s۲)B&a굝g7xC ؿ`aVQ1*RφE$08c3\7&bp#;z2k6{6uL(Y =TBcB1wc(Q&tԬ K& %A[><~Pc5 odR0mvr}Aɽޯ9sG_Q&_3p4ݮhE^Č>6#D{&K({E;?-V>ߴ '2*'BNdS`~GZ&M57xrn:_@Q߾/ڇ7Y )I%fDv!lu̫y(> <:kϼ@kuB8mU4U2RiܫFݕ,/_jYPknK:aRKKQHS G` mM)6/f Ն1Qe㢅dY$4H7Jxo%qӟ'N9<-r;߷wAtĨi{oNmAiXcbĺKBH8!,aOKT}Ӷreڗ$`ΰDi"0yf;7*=51ǥIT 31HbfO0J~!"HIKXoܘ :_xV\y˪"Y;-JVJ b2 Ct;ve莘X %V0VO ~tg^oB{4GZ֭R-pmb'vQX|"襡Q0Kj!VNm}zu9 YBId=..XwȏsQ^|@?v]>eȂ4fQ V9խ]d:x֍&fkPV_Mv^jZ>8?^#4@ƫGq]S_;I0 j_y]cFHTlXz@y(ωڿr] [X!bDcXjOaL;*$/Yf!kL[hX#|?Xgb(_l\gRŭЉd ?߮N4E.\U)4MW7>&`SxcBNI6l5S'k cgD6a·L9t+/?ļM_*~+TZIG7;(]eTkga^ _nF{M+=,H9Q(G wd8uA fD_OͬXRs[!1ChruNTr!MqTg"lL5#m7 @e퍂fw 엽SN,}8eB85ZҋM̹E:էyN#!|mTP*=KU%0}CJTr1l#Bҏ2?e/w4pm߶y=Мp[ZJTi$+= EN쑕g$|[Jd26CoWduls9 2ޭT2j 8D#Ξ5~oOtNvY({hJw2 \^/(AtɎ]Xwv2JYNLCi a(aueA1>Zϙ_Շ@K7? |D4 ɾ!oαW-cIJB(1Ԧx'MwyX#Ѹ qpQo\w*[L52Ni ШO//̂5뷈RwU;l6aY|EL;STZs+(L_iՋՠ5M;oWY-% U:7bBna26/x,y(e:RdUzM*{xY^Gx4\8LB|SI?]K;D]bXEx_aJwc4$KM5cY4[OI|GYZsw|5&gP(yim)N0PӞnXO,H*zG#Ano43UMS!~ywH-Pd968]`![&3]HDWXļ}LK|n~g5V-kJfQ$ѲM]8J;)V3& Su!8fEwkЀ5usj0|9d⑉*$3vy%f<,Tb I+& dsd=]WK WUL!7v>b fL1 =<`B62-ŵ= NXTysODMJ"Vy*`Up{ʽFeA4?:m`m)Eؔ%h9ޖDFb HqvC;HP{~آB@S>CS42 H[jKgN9\z0LyoգZC.AD8}cEPY^iʪ"GAD^?\/}ƕ6Clh9s}W'=頍An+ft,fS1)h7vC4!cHL;c8wf_Cj:xhN>Jhb#]NJX&:Cro"m0ԫMʑ.yRa֥ІrnpwsΙQ_ɢcȀ3ڡP< JG!YW'38n P9EK.ÕI\-C _D_V<jacB9bIbv w̖y;~sŨx?N[Q"$_!=$G&Te, lpQėK$ 1X-i \0W%lߐ.S}qv43 `=*)ކ l_|ȩI"Acƛtн waRL%cɵTBe]6g֜l3ZNf g1X"k2w-캩˃QȕvIc KmFu㊅t[O2hRɦn|tU ->ݓâlJJb7ى-N.&ƥ_1SLj=Ny |A#ၺVM"CTRq30=ž$s5+StJVaTɼ(8˼)gOHb$%5Ep`r<&~&ݕQy>ZpP:De pyjNG#,=mmsNFE>2NrkR"p%cUmr x.ȌYۉkik\'+<5vT9t%vy{B.5\tn)MC`k>q/ _3<&byƵ"v ʕ䩁6 GdvE&`C#1oDwZ{ffs^8' +>-syfMY S1W jQ Iδd#D_l߂zEBkNȚvثK5'aaC6 A+CkG2J*CA1pԥ 6o-{b qBL?C,4/E wn8:w:. P]v,®?DeC֒E58߾ˤ&:8(|İPF 8"Wutd:a JqD"HWdž#kБ1>\n=$еo6V'{?NgbsRi1vZ%]TiBIE XZJ}r u:Pܵ_ٗm: ` [~ GeLc?  Ӻ|<tgs0aGe*H?K_h'i:gM}"6"G@ N2Ov/*E9 ױϦlñ_9;ruO Kx;Q=Qx1Ϯmf!?oN gk&wzzQr\ZSx!|B0VyrS6^sL唺ngt\@+:ejRYm9N8{?m^xJ,Yg=D!(u}>HHUq M!eeaL6&\@oun6[/iQi쬀<Od% jNT3&tM,6P R.Ar! y7rXt.#k9pW*qUݳiWmuFK?>se;( ٹTFjF*n1>Cxs&ld&~ΘA=_JQE0 U*g&pRg#u˯nϣJv-9n0^(h0~|6|ܟ*1I3=%t{knߑ@4D(ɉ2bU^0;u䩔)6NJeTEpČ a'Uo, ^GLbݴU5@ʀ(+^M?a;Ѹr߼jfV3i5C,g 0;fFd1(Yxvc:lf݌¶g/*GcAXҴn|8)xa=ՐƂ>°Ψ@S!KM*-ƭ7HǨW:nluOϾlLw;?kc`[wha;#(gƛch2JQݚRCC%P^|_I(CW)b=@gh<>wO2+4 -{hv%;&1o ^,FNiA.01 LC1{9:vT5JDΜ,̎5I~r"R/rҙ@g89uт9g_q٬ϢBHW7#37^(,_ %%f1aT)B?oģ)C~ >"cU:"78oB2_C{] ~U{y i`J.fTt@:[ 0(Hwc̩XbdiW_P3Rg]u}/\cR_XHSNW1 Rip:{I~zODǿ6 xlUcKm$k>i1or>#xFgk? QF+Rx6'D';f!,Ѹl ve(q "zЙq9:O4;ԡK:v7?n$!)l{v(H_W&iF{eVX @0-AkjfOgO | |v`JO}3::;ag'CSiةJ.W IXU|-ډ;b+7C|k, Ok.68U4V+IE2@H}ٖ8{LP-9Z$lO-E-33XvfJå_oÚByۜJhϭuH)`gdޣsS,-ZDiJq8TrBQtNYMEl9sT^]S+:q?`p!GcBL#H`"[-G6F"88LhCSIc!ʺcɳ% \ENW3cTk^])i-;pC:^fʠ b =&'Z=Yy.c ?SPp?dnZ0fImrǢK5/n7o۩@pb}sc睛 F ?bĻ#zPm4o#g9@=6FgsJb!rN+r#YF^v,_fګ z\=dsa|q XN֭|Љo>;3*V`=~֜R3>ƺe]ij5}U` STWPHngŇ ^NlU?{rN3dayXeƫQ].B݄i} 5i xªQ{:y8(hS͏ >,t%|L?]P'hC/5e誄pw,%eA6 {:?yuk?fXM7_t`_S|'naWΰjY~ Qu`_z.Hdm3r~fxyeu`*Xyl!VS<"k=%4mU[@m .LG:I2aI[V_;e.۵fG%/6[0OwE:%ٮ|o]2Ա1gc+X#%0ؽ1rvb {WpdlvUR LƲh䈻a^p(K& r "MG0jII2;Bk!{}BmJ3W^|5濏:{z*@|D<'W0, =!d-,PNVU}R4wsjx嵣l=N@|GI7,) ų-.|[,w] ]aN6LN6i}mF$f ٛq$4&E Y".H)1+k6>쫾p<%vBDU" z"X,58sU;BK~F EiS{6sp34X鑗.җV }USr&(HOcqk?Ii0clL -Q$w%ip%7Yv?<6B6^D5l3UXkw&gC%[ް!==pD&/:X;,[SMBLajۿޣg$S2Lϑq48,#Mŷv`La#UZR(<&Nϭ,Es&.rEiPS?4#6`zi ,5Ƽ"(Py}R%w T+'Nq2єonM[I֨VER8TiώkX}Qv,'j4N(x0,uGb1%L0Ɔ%U}u!GvECa5|]j4b }|mnQDiBqyV%$a\EpIc5 L[V)c揠45{@:ܘJsLv]ޡM\m{wUeA̤bo|H󻇷+/fM61g\Jܰ,Nf NNn4o%>Lg!`3sfC߈5de_~^XXLq<9.Mi5x 0eoqPw m X֨+S s@q33`*%bO;juҡeh 9 %sdLE|"$AVp41_YDm!t$qYH JI}W%YjyWSР3fizʴ-"Lb%'2}!1-tD|eЌm#dV6!|$:JRK,$q&֫lz*Od7%7F2XmF.᳾s3+v/#!}!i^oբ ;LL_&yۘfrW EaS`!yRuƯc1&ge1]si?䶯R8mf)z^1kW1\ǥ_8`|FPx<{ eQyGȲ/4d'OqnE0 ֑5n/ _xp zk953Q] м`o[X4 ±s[ 4҂J} #.W`6W[r#oA4e ER}^:Ȍ,PWֈwrNC]+:_"/oN䀳9C&Sl#RقjCYhȈUU72M_P(wKXVdr ,7mzVB@TE >LBu8,nwx{k&oUDU=0(49q\\fa巨/AU"?뷂93`{˻F[+ ŕV$\?❓mU|dV,)wL9Ŷ ۇ!38$l>uU7y7;n8 "UFFr0+L뷸|V9yӪoJTש5䎦tPZI!@R YhwZTܒmLl'kGoc̈́U2O㒩`yѣ- Xxa68D)֟=ݞHݟϼ quK*`!d Ji Q i$'ꫮrh͇a_nQbdnzPz Kِ[Nd%gE=;1yf$yHՌ,M,Mopmxc/O~QƾBTU,* ` Cp̫ی꥕QW9̛zCJH]"(Qg},Dy5^'_&7h> J|;\~0(,eϚO=BۊlX`D|O<0Ȫ AρAgbbMɸ{^@4†Gԑb[/N#Er1z_theJ1P.c'?ejK4Cǰeg :n[l_3=t$wAlh Y"56^ƭń?Xu;Sܤ KJ1wXX$SXOLyP2Iznn #kc9R%MGW>m? Os#UTqs6JL`=p&iCiH4 p P<>fӵZxc WmaL:j4Ge6M(dAf?= LAʾ'-̀4(߉P n+o {uQjhzz\ T=Amq礝UCdw22MPp̦.Ej;ĉecp^#E+4P(-(,Δεk2͓Oh{#(?܇ɧ&IMd7.CQa5\٨MUs(xbUƬ~"@ZY;{%S&XjM+:|ZAŕr!?ӏ@˛P5Ԗ3!;R~B.َv-A7QM2\f5~*x6}?}F{L`Ng ϶$H[x9ۡOot*XT^ xx6hpȰy2RPv$mJb: :~1z W)3)=nb2˛4R]D[+ DVmOlyuB91zn-k.BhAE(c[mE'`M `EOMG-sM_8{ml#)i2,s1k'FO{z ه^.1yW@yo^MO  *vdޯ\1nȊ('~'K`XE!TkT34o'xs9ydԾU.4YҊE{3]Eyr-vz_ +CՒj5@>Ϲ6"D_:Jwih6G o}]AA<,Ki?2@$Tfe[d<ģֻyfM]$ Aq {LѮl 0..#5 v"+w+d<N[p,ieHEr4#?`y@ao'/Yv|/ΫM+za rux,)̢'[#PV͍ B9uQ]UFKl[>?$R\Z?;3r gыGUE; G}B\,_pƗl! JqsG٥M)=x]S8L(Xe[Ee8䨲?` ̘h#[#2'4HkEKn 7"acK^$ ʜ/.Bw\nmQSY0+& h(txtAM_É7(YpV)3 Ob(W'`v-.Ye-f*\Cѱ;$Nqy WB1h|wZ#{2<ଅFqImikfp2Ԓ9vBM*cC,ҏ k٣03"gd&"I3:`Z )X6Ӆ+s(2i:h֭Љ9TORS֏z,q WQ8Z]F. iS61Z;;Ykҝ3o{ke,cwak$+۝/ k~b|&3g?N>{܂ ¢u134[mP U5}],-s4}el[ dg0Ib!*D5WUJ/ぎLUN3nWA Ohx%8|z5v !YOi~"nLn}4~j^n B/aU5󏦛G^6ވPf~zVi: `B_xe^:+B/7F[ ^ :DjDf]GI_K\w7֏Lֱ+lD" ހSB,w9(CanƜG1Q@ 19t57uL<*ρeVۆ}/hR](O7a:M&cJE5.{~Ir,z]N әLȱ\ A~U0VBlC{ridг?z;!9wVo74ǫ?Aϖs\̉~~;Z>o'P'IE672mpiW/XEr&v&b[cQfulArEV@5G;z(l+Mc:Ҳks7M`ٜ@K _EuHWg CnF"Ě^nъQNLnJb(͡eY>cAD! \.ǿ<݃PwS~w$_܈[W rFEcš4<2gLw~H[XT7az+NP$A7Iehc a& &/d?C^,UHMEK&*znS#_TR 淊V)/Y.rI"IN\飡9@wȺG5Ӡws3}}x\>"R8uX.7&9{I թXR_Nç},^9 sN=z*jUDb)lPŗ|K *uz!h8?i* @ҔΕ'WL4> :l1J燍mMpq%Sv tWb5e nn'2xFMR;s7DH,'= oت'&3p{Nlv.aVT|[VשP~o-#U.sm<URTsy}ۄQ8d]R'awm/>^8Β"CE)MJ%[S;ցȬTtpSXڎ6*= 2GM|R\gx•2G2iLAm+ZiIk;pՀx6u. ]Rm r3G$?/ɤ* U)HU7֨Od("z;O]5Bʇ$#.\'uC;):98 'gdH-JNxFC˂ڹ'{d@ZXݺwX4LVnj y+D&ʸyukK"-$"w% `e$ܧH=Tk u$@ .)ʷ)Lm'v_ydV " 5S {ߗ>/w3ѪBpcEi#WAXx q0-QEăI eLa^!4:~v,k! ̩BHh=.Q 2 n} 'ep"ѥRAؖE6 V3\~sB`{Y35+%ǘk1BH]Mu0Ԫ ujc<߷oBCJkwaapYqTWmbw{7yۙΆ \I56hf@.|4Vw|Uu~jqCiϝ/I;b6(\?vy=qeuА"E`tGto7հxlb7M}WJ 6<1\K.q _hQenm}fqtKGTW8~6Op~QfL5>[ju1łE=;,׎CƤ4f#P8dFpqM)8F*&5ocB'/`7rS+%U<2<4F/3}3 tU|';90Ày07^E mO;#X0A7&PP Nf+%BUKx++5sy칍& /B]4Wqtx4KNmVN6HI^3晸qR.ioknw(o2Tҕ D HK6FW`jN3 " I =GnAy~jjɭaYju% yTHeHд!7*d^6RpѲ`D 4fYc`cյ<_UUjI^ }]n49\%}&ҰJ[5L̘|#ߕhVO}*?.- )"tEIJ]ziY?`Еgh00cs/,V{NJ`/q:sΓ&P$ kykޜnQOB:ܤHI#c&D2IV-egm c˶Ŋtl sFnHj5!A@c$ >x̑]Mr%Yc{i<.+jN8<[uInj&'/8a>}4}P~E`9(WD@=)A$Z;Ɂԯ)(qtx=CM}}-I 2 #jȑ#ilew\~X D8-?]ADcx| W*3yjFـ[aLݘG"H~f#eo-pX+&}Wh]i8C [- ,YWߏdQau@|ۣF0F# &jO+Nw>dX`{:=Wv=H^ ҲNjdtEQIR8J>^ G\sq~5c}% 9XMGF\6j=9MpuHU/>pJҼh/Y&f4jVk LcH5Fj3Q$PyRkQJT:B*z,>+Lr-U|Yn$o;cS~A}kRwfR 8ںK9D=@S{/i!'uv4-b 5ʓKr,gC\x2ǩZf zkb ܤ#`,0(acݠ#~ P脀=Eᄧ:"*D}żI-\_{;BWr_|݀ޭDe/=]u'@TΏCR{ZNZWmkIAViM汑B*{\䠏޻{P+M#=98m, j1]E}/ z>@ ؠ!4~c=r\8"`ќE/eNqt#B ƫBs; YԢӥf#۵SMbAI&r!nV ;#*3ȱwȳee_ 3WbPx!Hcrɞ-K'<ʼnW[ڣTW4m̂Sp@%j/+ ywڍR U8>\j1R=xv;kj; JWL oޞ ACT͈?hZ|L͈y{2΃υ!q{LW{F)K& gӌB5F`08|51CmBϿ].B-Hp2٭d&=yt7SL6+b2j; [BruH[$2П.y=2$!M-7ٱoo$[m O< th_ZV8>uiZ>*[, ORYYbZQ섇Z# f::䴋,m'2Pq䵧ǝUm()э4h.vyPڞ )'YmfWDh5;oeXhBtPɼ_To ֪~ϛjbUٰ_F0%3 k?pǍ7(%r,m?FRˇ`:90Op!`[J:DBן'!zp1hKr[a븞 e.X6h id4})f[9xN[~A@aB^% )Ne}q.:Go`b$`m\C1 S RU¸ t=V{ґ$ JPX{z*Jj|ٯU?:fb!@3pL@@ b <wqy5S5is M=Gċ̤0Ej ŲWp90GͲ'd8yN@}l!tCrr08_195_tRN9a\ K {E-mrg $ ̠l80<{A)JIuks3I翽0;ryCr`BZ˴Hޖ .8ai.&(GR ) HF_) ڜl}4FOX UR`..^\h ׮ ߷x65󋹛W%lY#JZ:`zݑj1.vP>34G"8uߍW 䏈 Aq˘Y!ۆ:}<·eU˺g!n>,Vz/̻䶗< (-2(BIRx?j*9m)qS~/zP\L0`ů#y_ dN\yzmpps7j!$MYahF惷XOdr9?; U N}N+lÎJN0(s8tqBz-ac<׳G0@6uBƨ0ju/7_Ƨü)W%:%{4[ϕU|4ECA"LaV1QLf؞ҙq8y8F[ ڷݏ f.韦ֻJ:z7U}!I>hF[yIP?BWg5ۨп2XaX[ hOe8ܩbPvHN}23C0t/ZVct c_]jm6е7i̽/4dM(L %~;!T-'> [ J'4aq7+" %!)9+Lᔅشkb=uoOfAoU.J'_i +f;{d$Vz޵ߎ>U3OBr91 Rs0j!7RVrD9Fs@d b8dȋbԱY9C|EaG^"- Sv8T/>B"&ӻi?X[-ѩQ56w5(D _0 Z<8rÊS^ ^(#[{W9 @y\|uk65gA'7t>Ԛt[O#8yzC2M{XL%+Irlo|`6Yn Em&d>PCƥ=_3$?R-]х Lo(&7K*H[@fN|o˳Ef$_0$Q`8'W#XajP(L&<@EЪ}Gf0B`r\.XS;Jj[ `xC^mX X6a|q a&Ora"' ¯~3Kf#hͬed4R%_ӻprVda4N'5z~"Z/In"bniR(Ƿ[N[ΒҬ,N)/ sˡUPaR@FAkT.~R7?;"a8`oG {vv#ݖ%gÍiccD]T9sx1 :D\-t!j#/olK:YТ]Jv^&;:Y_=23? y%nZAc챕ym}yĠ{ӈ Vw@!oD 4UIy.ߘr"_6c YG&o SL=ӧW~kaFAUrW, ᶬ$(tz WDnjn3=48KH, 7-G޹ Q}#-20@6_7p{>>/Jx\E!ͯ낇0[-gvEhDC'x<u81κރt;iXcY{ P޳H~/S#YfB᭾^> 1Uwmer+g5]̽0&Lh /['iĨ' iA2n1NHie"bK#F+q.D /%v4tS]velx[`+3BBg}0,,5 y!=1 u+ 0uw3^P7ʐmu 6nZk̻&⸀ބ*YT&8;Y3A7=&Yg+]j@wlΈcUPN#^O栧HԴ*#=a̲潄4ܘC{bwBϓ(-@oe*̱c}p_'=ś>\WGY#nR=/XXԢ.\]zHFLodo;ZMirOU+[g佋Ep#(E|A?1 ,dux6q!1'͛l}q5wn\@uizZh5P tn(' t\dryӕ2 J{b[n,2T NP387N#%+jۤ"в2%|M(RGO L#O^pb ̷/;bR9s.C#uHp>ŃmŮ#^-&WGY4DO)%$*]k:6$ۤȰ.Rk}g-_*Sx[齱M>Fʙȯ7m,-3 RtħM\YpљHC 5Kft/:Z$Yn]s_P8a*Mo oys湇E/:yl4V"$)s»Omz8pMsi{SħbjA.s8dv* X,#~hN9KGi.I;㧝LJ{2mIN;QrNɳBr {u&dҴ6ުX$]3ZÌpۋ=STwy-R:e *7XΫbc叩fgmBJXm0Jp8ӑsSA~'rp czgTx &Z jd"UŝW?8^XBaET=\B72닾=/N^Ab}YLG O\¢lhFdS;U_Kײ+4 tBD+jkg? b6@P# FBa6xdÒS1s;pb+Zg0ԟ4X{!0ϥ$FΣ;BɉáP;:Sr]NX 0eH0kВuZBk!'1AklH}>uZl[ɑˇSy `Lp5E ?\cq6)~^W X[ __IE;Çm%?Ŀ:c@0+#`H^>l:HTKnwg7<>YJOŵ뷂qm JAp=UJ0̨֪K9kqx1ӂ~=VxJu ]Bry8.[,Uu.ZۗU Z^#Ȟ{T͖ej"Ut(bƍ,AʍYO@E=' 7Pz9l laТ+R2bf;ڰځ%0-!@Q)Bm1y[vh35رv/k?6 Mx吶blg+|rTm$xlUӦ;*Ac\'&gjyaIR_Vu >+L$uaso5FWFD|ֱA-FC40 _Hz 9,Uڼs9Ct x4s Mr#KBxV7ЃLh?Zj)[U7AɨP|bs;[ ??A7Ƿ*`$|-BƎ: L%@ 49MTR@%6f&!~vG>/'@YD9Ο';@1daPQFVtIZPl˷xkS$S9eӸh#p!GƛJx+"-"nEf`u_ׄXg=0|tKɽ| LVu|-BonΊzD]ze5Pxy8)ttX} (3ʬıHje,%i'lS,=E,9'cɯݬn[ 9nOYdo.0T\waS-U g 1h5 w4_R j5Q,)͏ڬNNRy^s ű>T-Epܟ-J)Y[PIq1R% 9as5V\%W_Td֭i'"aj:'32ߛg(rMJr|PDN pQ @@A8o1*Q鹵oARj:l'-f8|v"Ԝ-iÔSJi\ܳMJ匮y ?dH+o0el9nis9K$F(gfS7ςx6 k)(_H1kA'|pƣ.RsRyTd9_Cv}&=2c$v&lDt޲ 1 NѯF(Ñ.T`"$s+,$/;4Nw_F`hņ6i."Y-jϚH r;#u1$K2~*v,ZEQ{o:76bN";*}wD<^W{h57̡O_Pp"ڎHJYp)4-HMCݫO W- =lO2>Vc8|M*>FcLEmW3 z:>;NCFb)V$ڪ4oF ~B!0ݣv#o#p M8hdJ҈f0-w6Ype|ƮH2]#zʳͺphs;eU^hl/AX=q8^EG)ː ArQEu-oo| T=VBeח 8u:._Ɵ5}靑yLÕ^P|`RXԑiۼҋgcg1p#8ǞBe{AEeS4LCl uNYwUj22Ek7JiX2EcPmtTj$ɓ!Vg]@*>tPE>,%q.꟯d54uy6UGFŚ8ƯH.0ԟ5jf]BNuT'?o5;/ԈyxDEt/Ł^LccsY|.>H$;;;JD05E+{/ \\d"BSV4!=ĮKnMo8#%(GY]I\h|i]9jPq8l렗@Q$G3q>#%3J w{7/uaXdow v)zd՚jiڦ-Q \#d͋ se֭R=|9EzktȞhfZ .;r)8W%ceZPi$.tbEV#,jeJ[]bj]zyeմ'$ rW*7KNy#ZvB叺yyp+y*G.jැ*sq|\;Gyƿ,)t?PV ~-ވa#L1d ֿ\ $c,|vN;ij.*}P$zBuSrt̪ w]3k*1[W! K p*Qk'7>|]S~?IMf=G|ߜjs;2ьo :Nd:Ma) W{`sI> GBF@o—_NS#G\{MNYss*iՄE> ۖ%ՔĻֵb,ڑ]}HWfQ|x!}lDl)X[)r"lE)䩍o#3:8xnz"53ȴrVY| x}`Z#TqVq.]wpƳF>́LCQ؇, f&ZS曺=dfwA!Wxas6ArC/gSZ\ۈO!>3W涰NQZbb:$31B 1YJj19952p Ay!Oޝ7yqy=Q`EwRcGCWӤadPZەpAqhS&2nӐ*`MY@}]LJMje\nɋ-}@HUu@aZ%\Y=<D噙-CMA2X)@ I?(?\3d8|}=yן7Ob]NdQT˞:uPy p`MΗȼ.D51=eW5168L'N'$bf(yQn Ϯ>:aBLBl/Bjϣ&y nϗf#+sa8N>B v#zۦey B:gPxmg3"wn Tgp0\tj@h9fd8Z W6"-ͻI(Lҟkń #㗵?_kև ."CYq6r_g![4'n8,'9ᙞ V 4P5ELsÊ5V[F$][bkEjgJ0;r?eU7$ 58' :QQ 苅S+CٹN,Ӭ,"11lڟ{i8hiO8hjg?!q,tT"X󀊱a,J׾}[ۗjX(=& 9cKŁ)0ܸ=Vi}!Cvv696P4n pB8 O/[m/7T?d(HR2VTb5=Ӽ$ζl oX3ܓe\j,£V liPK䮳MTHk+-'/'{EZZ,7TnzfIA%pf%;te j͇;U@G l:+5 `i-_p?'E]>s$z&a4t<~O9ZaDcT݁ncPíkh9!ծEFMeq(朒w3t~& "Yh;Mg|3:(ޖ6 NBɡocxJ? O^"x?`7Uu@`d#3 3@6&S#I,~z BO/9J[PW*p*wGѬcJ>j0nQ-#PM sIwdSU1z*T71{8 CUqΞ9#ZQ;f+5).whR\V+-l7B.F斕G ĕ /_uBϟ!&b 2>Oody5+!nAhݯh8(׬ـ_MVִ#\״8tG M͂l8w]IèƗfj@'cv9N`\3V^)WvLJxD4?۶Ʊf΅f PXzG3@oyZ? êw]h딛À,@ 7)lqS03fg{uVT&ڙ r6TJEt@hزӧz'"dd2'vTŧC: ހpP.ds07xd%gLNpNDxJ?WD&kV)՜dghBċ*e"8nږ.Xֽ z.ɋ,dK4FNb__gYJj\S9Z mkVܮyڃ(o%p ݛ)|t6_M#rtG,zLVXNm"al vhȈmo[KG;9< i=ɥ+楅3yXƤwmpR/ܜMw snpqoD0϶hPuczPޕt:~eOHU.;pFs֑[EXG]]W 2 4w'm[*||Vd#ogR~ r59&.=I6ƕ#~[Rek[FU[-9oRoYoSh&P$6PnYDz.LKAT!gd-ӘRęA bd*H%},Sx$o oKڒz£ "u"< HЬ[!  dkR$;>d`ѿdQU]/3yv97򙳌'#دrLP.M芀.6+Wآ4>Cjg 6mڻ1D$9Ed!mE*Έm lce ~ nPh}+MR+nu^)י?&Jzavw D*ܠkaבK7%ت6kLQL|JofK 5 ض~!zڧ\K0P]yϒ5x[7ǘ2N-_٫rȫ-Ib5̅֔#7K"{`^njnQPĨ"%v] VQ9hA!rUӛi8`VێhfW|"7i3-O~̲EmVf&jk&WseM47M=ĥTY2y;h0+֪ya)~"koeE9)u gAVgpFn0v $)躨b#$ F44`] t'^MN|0#|.}*!yjR\Y= mtF:P3m;q c#'%|D] {"$吽]gس#Vmy+Ӎfw焏M {"7B46B'Eo/(cJ#֗n:&tMS J6{@Y=z5y't/d,Oe|8M:E/j{`>?#!&>"99.Sum3KREU1chJYP`D;yF:lŚ^߬xZ 4( IR 9ow;iU,^hN~` TaURu4hI ٩K_S,%z}J F +& gv'fS2h<(5ӘBƁ&&Ҟj݀Ei7ȫ3.pylr;XlCR%01,p4ܚ1pScDF:͍XTkA&{Aif%J\ϥ1[LdjMI=HQS2Ae7@|:_XUE|v |`kw,:wH?U͝0 nŢ87)Ԩv3Wn[fuz6A: .08 gL LD'9{ByTB 7q..9BIMR Gv]82ȬZSQE, Y]-ƫp W;1R ]"_Ja=(^+,no&8nD=Fn4>ɒSOZ|<ê+<;myaHTyR*z+,XQemY|M UnG@D|#B[eog`k1&k-#v˰R.9ɛkr#roH, "P噿Pc&, nF x. P&oYY[dډKXYƒ'QzUŷAXi~+~k1\ c=%$O_UB,c.jg9fk"\07j 㧢>N%]{1ص#4?xl-Rg] hj>=(t ݄ENEw3|H뚀'~)Hi$YA" ݇h1+M] i//)ƿn;: =dp"`l: h0cVb>ޟl<ʐr~:$Ɵ _Ё u$6Ùqs0)5i;[G?d1bavJ!&[mdR+}O<;g)'O2Ww3b)mVg5]B8VMd,2?I,ݽ<2ЩoeXNxձPeڜǮw#P".7X7|z|QhTyx;XǮR\d4u(c>-E:~HD\rWll( 3m!ɆJi,{_Щ䴡B?#^;K:op)Qܩ~,C4 O%3ҏ=js_7-w3ԗKܝ.c]&056զy( 0\Izm>fAc9Vt2 :aJt(Ys |X$S!m%0;dٷjxs* -Fl/XCn.c)'%sͩF/{:kYEz:E5̣o^S_ba=@&,fґ2LAĂ'!+eDJV-$K&Yj~{!ʫ?_$ZEە4F%l,LRx10 m,֩V@D3ר3ST4QJjg2GֳR Yb^_Ydd{͟Pd;(l:-VtV[p;`F֢.i[kñm>?.ixP@Θ71:r1>FQAЫPx<0&.?/- ?h 6X!rL)nU%lX~a#kC :qA᧋?"ĄRFBwwڬ:{paWpSc5 lK1 `-9ͥe${GfMųVSJխpFg4 Uc: CY #0I|(0w0d=6 Z'9シ!N.% /H|"^QXFtҒ?o ~zD>&%@01h$EWt/Y 9| RIٝJQQF%"~N=߉a.Ġc>$܏kDؔ:yp}D ;A)$aaQ c ̲GP!RUFL٪0OfSz$sIF"0ʙɥ dȮJ4!my5؈h跴l>`iG+*ۋO׭gϳdu'KsւZW% 2਀iWm$vSigfGeW<# %hppW NMX_ܚ'%őo"Yq~b^(VH=ۮ6YfcDkN[1VɿykB7v b o*t$͉dEGK/>f$@;60azE#' t0rw€%Xlz 0/l 0+ˤ E t./>r~+LD ViwbNQ*eYfUyo'Je#vB.6_)$[hH9e} ?9]׿ eL:K1V]4+P CquZŻ]C׆Y.~Ɩ<<] MIe6YQ.YSMJ#ԏz+Aٜ<&-LC}V3 -%C]J귓an5Gs't*5~l?=Yha\?ʍR`C>D]JIev :gq6Q;׃?n>-Z*[myXFhpN]Rk:Mm'7z*0^ X ]%..c߃qd]ȧ($N|gɑOE/*g#u(0ͱ6c0Ճ@BK%؞%0dY-{9k*qVp.):M"+_0fb >橪 ^k4]NZ>Q}ݍ3yѤ,|bNCK4 ]Tm ]StdJ,Ҏ_OKiz+Í2b4P31ۜ ;UhskR ISger KUR64$`c 3<ʀep8֬D Mɬ0.b )_t1qO X"C$b=䋺7gVXυJ'UqڳFº'> L\ 7|nXEuRJuxչucSώ/k+8̈L6y6-cÖk/)ݶ%K$ e{h؈] %wLMtS!g*QIXf]|*Yw jΨI% ˊG4Iv.*eɣ6:>fSɩ:wϒobRLtTv:\,W^q]ucZ@ SR29!+@6i 2D}/z";<7t7ejRc\5[e&[o2fA[Lu^Nc߳r4Ŭ"D[dP]bcCՑb&VB yK܀m_.25(:APυ&*YΜ =trΏE 9M#C oNfH! ^tėpؑ_V%('(((Fk "vkv4> 7q `0eaa 9HlDnB휙g[@'mӼf5qD6H_`QӍA[j=wu  f^,n%5}W..ޘT)W 3sl3φ# Bʀ6;!Z_e _}K jGa>{:K]bQÚte9H*'K6vk.Ie,C> cΝE?t,@B6Q{(ElT6#5Z*Q04@>m:SAyAQҪ뭈l&> :D=L "U|{sh7j7V~+&)Wj2m+uC ._=;AZtrLN ^Jp^|1!# JJ1'+[՚9WZPtbU)SD+u)pEh):.!mgMYbTM71'4tuG#lPgsT@!gr1& u݌^+c9j<*-^zZQm364=j@y zg7+6E\CDZQ-1?Vj`qU 3ށWsڢ0`2Nf_51h Tc~N>|[? Y.2YF-<~Rmx'B3IkQ4rebkjjg߻h U"w1W^n ^\J]w+4{h>:v^_݃l/t-݅(X"|Vnc6*"UX֑ 2A%eaHeHf~Dl8$'˱A&53gcV$U'P +<(9QKc3nWV.|C'c"\2?2=Fٽ6% EE&`18E7os2wʉ͸w40Dg>> qBY4+=ܥTuCnV%{d c@SX\pX5 J#UuQ& ~ 5W?(~<)VL&Sdz 1P[O.z X(r*-W>u"o K( Y\Vd)7S]`imE/܂3㺼 %3To%6rt ;r%FM,S:.m`Q ,oǭ"ac&3ߏf֨Q*Ka5썐+eYnA 6:~DL* ^rz6+钽:s϶)ɿ&`!5csUkeCgK )dۓ$*G]\< my1F4@N# w£CVFTF:ø  ^-bj1XuܛgҶSehOUKXPuҎa~EMJ]bS2,0/n U"6G҇fbDz.tܪlaDt69J4$.4g8'H)U% 90%aXi&ts6 wғh!$'7n2UܻC=Q;N3gk1KWnPY#N$y)l*BE+>&ȁ=~Otdn<w@zNɍa H8$+k`*}5j8A<7~#OkLN61>9"b#ӈ_?$BA^O(bmdzΣ]4 jfL.悔2 MZ^nF` ) zc_ G-aM/'9 }X)M镓Lឱfpv|iܪXL78BdNhL߶c=}\E+GaIע˃jX?Y6יY ڜ fdi. /kU 5CBkX5~$tAi-_#Fzdg3nTwoNeWcq(\FKS n[=LzTQ/uPP.`[8+w : X!q.x 1M3(g>/g}p=5Cc5NzqzV^ ?rUsKuƞ 2YJ=6 ѻ-]F9OnoQP.4@Յ wm?"pWIm|tsdwr %8% ,7' 0bf; TQt0+% E;39~\qHGӒH呻z䘓T_2W/cq8OGڶ6bh7zO^­RB_c]Ҍ {~9sbV>μmpRdW Cg?E3I/0dvߓ݈rK6X$V_ ݲzsKCD"Y^;3V 3ǿ>^IkhsCKÔOE@,'/ `!v8@jC+0ϓ|Zqpң"DŽ&٤J5s}Prmw~%' NI籈g.5IUS|+xM ˎCB|O+B|ȷej$Ҝ]ɔx y_ y[CMdNMs!#\9čΦMW=U|N! KHXXw  XM[ !/ի$<6!-2CO  k>"Ֆ͂-;">!{a00& J [Zf]k?-ʯl2_TF08v(P*{ v[^1O-%oS+*2 f R#SJ):wͥ{Q::]moFm y><1;aF GJxk` M/!?rŕvǹ, 91N(LLf+ {T#N=) GۑXp/@@#ڰ/0|'Zd-}PY)Aү~1pUHMdꌳS!,Gx!¹Cc/ҽwh9[U+qN;bf@Rr#I8|iZDBce%wϗK L>(MfOK/یyrKa筼d}+KwsF~(ŴO1i`Hstp=`$C9/ƭ$]+*+Df\4iUV^3:u~ /E.,e PSWcOq MOWJrm3OYQtM'zM 愸)2{ETO\Zy2#)3L y'2*|1c ηOMTGMOJQܦ\&E_9%K.EW9ʙ :w8L̼atlT*lip RZg3+lJLI,^-Tmv6@zcJYޜfW_S^O@!ka0iﲭ3tp#/AȼAl eFɳ%i2V x =P.IG/H=,}iZ-)饑M12n~P]uvsa^TfAb3o5iV 1uR;p}[QL[wU-&Zwn@Z|ʹv8Bdq2Iӕ%VRpv 21j>8n2("Oüړ fy!\o Ýe"3ݵ4rmRUDV,"ɜ;Fi+Ai&Q\j8YnoY;8_>أ?]gD@r0  boh=Bpt^ S G_66YgaKtQhL(O7>Eϯ>!>܃`\5^;eR{̮2Aػ_ͯW|M ;'2N3*[0g"Ĕ6h{_q] JAMh-cm&duQ_S=>'iG$5D25L1- iE;P,]T e[y$aiAi fN%~/`xn mEyUWaTdѬ{yMPbMݘ 뽩;PEߟVb|? eWAF wA6yמ~\4 b'L~UonOG bLR- s"=$V|Cfe jHn;aL.CEeщ>$rK=A:'oDjW~PJ+ VRt\{80 Q#$s E8RL? oBz{zDI?\)f A }0p-ɕy# !"oP|*dx5gW"ep6MAW0Y嚾 9TdjA`>s6zcM]v173S@~1zL,zӐ*IP_W#י5 'EA"&[CPب{8#'iطvKNd=́#x{(1L k}+6h%瀚f婘i:pK,u!MЉ T (&T!Fh$c^KlQgh-X6?J%_ ,Y)DtsɠYow76Qocd,M\)LS?Lfw3n_CA}R&KWXY9/+1tssgѫ MLtXE-[f7Yٞ:yKrH~]}"A6SBa]ԭߋ@OT ?? 9ZNi~:4^=WV llP'M/5QRzȌj*o}ih+ ː\s['bU6'ngN&7>>#ho3c B,rC7y:z}q$?`zp]o4a Ks5\wov7D2o4r+vFlfw<ƨiCf8fYg QmuRH+Ƶ/ڐt'NA. !UB& 9N 30}j 4L+FpC^)>R!7.bNG7/h^m܇Bpv/p^J'7Ag2/m$4łF֍!\* V*Cc5f}O\Ws~'Ƨ0P@KHg!5rh(Bqt`a6C==B`thϝ4aYVXVVűw^EN͙9;'>${v 㛝8!IRǪD>ge+ʗk*3"dkZ @3>:hR(Q$ѝ`Eh6r E]bXzBFҭHgNڛsh"*%"b f:PZ-WbN+V.387+-IrcWmxGZyۈ܆Xv2d>6*D岮Y/5J3~*N%Kms<.+(vnBX g9C[";ߧ lƆF7Tuj#u.yѓw, uRǢ\H',1Ei$s^#zI['zWkMdSh ce@)SWY*OS{j^LӥRa>־󪜤`^Hī!h ٢>e`xReͥӞީغ 'R[EކD/pdTcgE$XnE KS_ay7DžJ ,)(1Y`U>$~]ۮף&f3-*wUogM21̈́_u ZR[v.twP_Z.vmĨR~dK*)h; Y.eK^ }x95O7{_+wnRiW@|,}Ԍϔڳ1IFlFQ-e|yYGﺋuhhF)D'˾/ҟ^e`R:͋ۍ)2jtCXI"ٶG.ᯩ7aʟf+.jüS.&c3/5Vb!G4%KZ|$eIb_&]hJL#8CGrY >کq<#2+}XnףpkQ&瓴֢7}4Pމ59XS^"+:e鍿JSH<0?n>J~F1)0oJoVR*ذZ7Q< 9]ì%bBxaActޜ`>yL'\yʂ>}e% }`yQ"e*~|+dU B@IpsR{  hV?f\&r}=1sԭD-,q@O›F "3l=:fZ.[?`yA B\A}7Wey~~91V9UL~V[~e̶ﳠ5g梷!>KKDj\)vBAc۰ӐYt 㛐Acg/Q'9vֺ3^GxD2[GQ"{a㨥Ȓ^lwƒc>fڂqԻA{9(zHV%WJSzJ2C3/n_יIrXdd J]Yy^vO | +ܵ6+~!da/s冦aG'uM+gUQiWsyV<< :{O ,v2 #l5& *zm`Ap 9LM Y/H`! rglZAm>oǬs>P4/el>!9͒P1Cfı,qe"ӊߦE}}ۂmShc觔\*@:?=W5w{fC=6^^ 0PwϪsw 5otx H5a{? H ͫsݙXOO%PLYc;aA_[|')l΢)RiઅZ&VhsŴtn.l7s.MŤ!AieL3 fZ@;8T=~u{ 8PItI/H3D/2{Dv:-un2ҍ`4|UCfɴm0 z#;Oܡَ [ `NSWv'%wyat twCK, -婧@ qPkKL]Wv8x1|LKICV2V&97&!NS CN Y9FG.PYH7~Ry(V{s"G)T3}*&Er"_KLf?9B%ڐDy?SI[.f)oNiIb y_P-%rψr9n7:Wu9dz,[* N\Sr?ݧ@yz wRfGsA 9a˂qRx.AS~Z,nq{T&6T߶]go G4<[;ؿW9K|wjmNoNj{9CnB12Xf_&eÎײidWףɂ5_e#_Rs8chY N8#\*08כ[Ǘ&H(m<FK߆"ݷ%Qpq&p!QGѡ@hS%@(!E0m&!ܝ(@b[|bBpS29;lD\)T0~l= зBH`n3 ijg;aLRF PX[M^lܕ{jl[p9 =?v YhGp !+]o*C# Fj W@Lac} @cNc %̫hPLëe&.P;1p 7HkˇlaywUPΎ#T|N7 (azCyάGZj˽ ^oZ=8lA4uCq A:~DEh Ӫf~Vk[.0[A2vneF+G Yi*j2$GPD'R#g9%"4Wl"CQ u<~9f =S^\^ :n<]%65&d.#5oCi52pB'5Q!x35F~F=&=pZAH0øյXTԝ8gܛg$ZYKjs'n ls L sXqV_wMu+k7+^?}&e#`%}BTR !atX,6-.:(лwU!81ŕNtrK76&U דM'Q#]Ȟ l)u>gCfgX$UF̍o 1g E!湂&w-+P# 5NܣWTBl[ez:+%˧ n[ . /-N݈}Q^YICu3d.}jFHmMƋ5~{?# deQW5Њt>Ac.iy+3p :ICVoVX=hЋ|ߴhazOh2R<QeG2.; SZ' H]`]q iLr 5FVR5FprŒK$RWTwHL] q+3<W7mE(?2u}!}Ypg>v?6XA$ 2Uq3 &J<y73bm7X,OLOl ^IWݲ;E]7;pz(He3/"',@PP;)ƶ=!\ƺVYtlr5ަr#n_o^IR&'#\6uv*f;>JӿTAPP6Tn#Wȁ Jv1i>|߾΢m3!ŸuOQFr4qePg~ C̞"eh^AocP9@@-H'4̮/*:mpZ'lsc+?9<&1Rgda;Npr>A n͚pA1Xq⢵3ĂUk*R{HdۇWc 65 4W )5W+x磍ĭP$vmm Le6{u+5 ֭<۱:;wY-ͯM[@[+П8>k(ƄR UYkFB>LHP䀀wqNa_ۍpRo9t.ti)ݳfKzRJ   w N}ΧE)m˫4~Eh>]Bn<~vtjzYPvFME/+Iƨh6aŷ6#$zꎟ)gBzV52E%OϜc9ZMICVj FkkoCĜ nLD) X**Dܹ-h8ĀJHW6/ ?nwZ~%?b.E=p!Je>:]ۭ!&v88-0|MIV'y9G[E-=zHqTdw}HPXhűO25%A?KP!rv9$ә4\ZtF!,Tgxo5 1|4 ^ / !"y.7#l]Л|Ak)PO R?0yWy[(s ?Q y<ƃ+,3pVQo"+d7ǑNgL|Qi4 >p|(^׽J=Ӽvz%V1fpIn)L?WCy!Va!ysOw-WiHUODPriJ]zFYm-?%el³sf'k2bzÍϴZRk ,LB0Q[xqxzx+شZE4k7..cA?m?_)%d:"Il`;GuGߎ?5@AaKe][SXʟ =1GgɲWB8oUeN=i?(\.ʒR[^M:g$߫WG,^~L'd͍~#G4Hٲ=W17]`PC`ڬkI5{:,n.P@ x0@7 Zױ)t-#n$ Ob#&4r&c^v6\f`Δ#Lľʾst -pSqNT V)C;JZVMzys}^5Ȑ[TT]ۀ'\2㏪a'%!mUB@jh; \i&xk~˯B*0JYUym ybpBOJ.V}~cv>Dj"*}JE/f~rP玳㇦pf!JlMZvlbVZ:ōޭU]j_B%iD0ӘR1`bw-m€TZ6RH$;X4r5n!(;Kvu%0x!-d J(݉}'vل%ƒYa~q_nӢ.dk?C }U\b0b ł&W5܃BbtpHGͣ~575{:4@J^͏GTF5.E=J"#!t<:AJ4HqdsfYM[Խ9}`zk"^h{т)P8 "D#LDunc.<;K`6Sɔe5x,u"'qFKtXO.)M6<Ҷ88/S1pCv(GD)Y]4HsL2=q|jW@L%sl‘MCxx ?c[A@Ob"Lp=kU|V+v,)tX}kg7Fu@[\U`*)9'y 3RjG-| Z|溈 »5e.Ԗ"o8 ,RF,gģ 6 r?HKv ԑ/bά4:^wn][`+TrE$=_70KEP"U4A8 'G%.%8.wh].DQcm[Upg:>aI%U>dм/rr)_E!jS/~ M1-`e[G <3 e #1^ ٶ#ECF;s8bm..{kUG#-ʷǟq%)Ζ( 5,swTS\N=*WܧAT/ͼOph7ѿz`W~v/#}cjvc7{kܲR?g #fa g'7u2M#JάO] JR_X9) < W6nA ,vQ$W[F<"3ʰp5/vۂϙ?K77cBX8?nWD?nŽ3O`5-[F%mxe:Puީ"M}MD$Y,Oj ~bSGƝm=2o0Lb 6f:Fߨ Sc3yg1@Cv)kMaGXe_ e>-.슷5H1)0ڄYG^0VT_}fՙ,(P>+c]^ tBVE0'ˉWh߽o\\9) GLiu0["dul$eox2-19APՂJJhɄ),'nOR2x-l!aԺP*-tD1+kde@VVESM]leSB9 yw`Q,o7lRPHr9*&>A|a4Gq\ q՗Ut)韕sn`{uuU$y)OY;dFK)6IbgΨdTo 0xg|yZv颰7 [E!.:(Z^B#Wf)#"7JNBGW?vsE}z"VsH"|%K₅4kv'%YI:vc\D]ma'mϔP١,\sN8# qpU]4LջON1!V9~xÁ5hq?0s͐8_h"eqB%0>M^09ې?+￘䥸0fQʍYG!l%L?ymoWT­[:旧yo- |Iᗖbc]D8B @E;k}r?K;RΤݷR}-+l{:m#dWĭ`5p8 OR'׽Jn 5TGބ2" '^V#KD |\ugZnFFP6M=:iB0% oC ;i+ P/:[*Wd$ g }U,\\% ԥm[II2P8HYK rX 2pId29YuR\#ZmyVKqk.&\dZ}*vUh|Rn S,F.ͪ3[8 R%v-?GEKt쫯Bh pZk#i]_}tq ϧTF)yOi S!zBadRC nغ#Ԇ:#P.Z[F=;9JeZJr,l U>>l}:p6`T:c>бleoqk5iQߓL5du:xV/!A#;eH<b%/n%L2 lLWH0| k0E7IdOXrtFwwBBʘ 0b3`MN4E3ȁI^Ge%j(IObh.#,JZ̩9_7YM֓d݈GL+z0)lΟ4gFpћH1p 0;xdX^װY3'hi6%W fX,PWh5Ifz8_Ff,\uRrp_%>yAqaO"죳A%\p* 1ZWItd2U qNq^'ޡLAvy`F5v^6^HD?;Inҿrx[J_n;'ȉnUi|rԌ|/ yVqC{TPA׭LBoYuf)nmFĔ:zc_}\.G|>qhi{h Slf4cl;(CCzv`'0c71H@U*#xT0=%mmECLPh_#"h5rӬD8/@p~F|D$nI&k ]{wqNElA2[rgw L9Nѥw &$XT5J}UUfMWS.{۴ WJ%4?xBv⌛~)\-\K~ηJm-U`&޲e SDj5BȎ+rQr5eVbSSykٳo_IKiWH/rqX59wc]o;[(M{իۉ迈8 KE.Ba\F-Tk" *㰄QnK{x(Q^|` $L ǓB%!GyWcv.}sD%+9d U1ՈX|q\&Cop1RiBhM{ǝPuˠZr"]: Dm̄U9$iZtRT -2 ,7B7m%`Nӊ߆>r:X`'>6X/.4p=LEjSx^ѣ VH;献" 9N)2k 9>z,%UQ<DK>2 Exe[SI>d@%nRE i'fBy+CR涜͸So󜭹יZKƪ_$v=" lf'=2 l#"%np{54ʥf*HB%cv/r?u_+N2-{ﳿM2$+ږa%hZVݡ-CnmǨx"^sϳb_VTOPg<ݚbƦp|HNk{xJTCd&3qïuFL'5xPe[e%V/qGOkP挢8f>晰׶׫lyG뢨^&Z6(UE{qY /&ƶz5'%#&鮪۬O&& NaP[FX۸UvWKK/!ܮPfZcQСT6xq+pc/n {gŘч|TPb¬ AkԲU;OFLh-ײ]lʡ.YtVŊb;ʮX1huQ ˍuh v7}~2o-RH/)s_ETȠ~)EPȒӶpF$U?UEbE~/e1$;r_7irjM)0$Bmup+g{luW9>!XǪ+bCO#(;ky㄃0rn8@7 7i w@f ԖXU`(ʷv-Xp`y:pmZa qi3VY Qbpvyw+2h$E'T{8_(m]eGM:1g6ݍbF LBXF+[{m7b'a8‹$IMwF:EYSְoG$;{de/gMh="r1 i. R1z Jp3moiTک_yˁ\mHm U B0iw΄/s;#cul8=\a2%%BWs˳r=0#@1Fݜ%g~ ;/rj)pZXA3i>.s$,6,XJ#J7pXh J&\*SA Jj;F^%Tm76>;wk?}.f-ȑߤ+4+s4ҳ7Ű$M”w{./~)Um`[W;"Hf9Ro\Lu,@+IʿYՃCa\D $ijԞEnt%p`]LW"Gmi}?GYyY7PKj[j,7qXK}N'>- O\w ]ۣW<?Ur*zh~/ʓXkF>%*бʖ2yż=>R2L ë]i>!Nm3kQIlU N;+@k};\3z;ę\MUWGmw*˲ X lBLOj$)Kͥ % Z:SKm =+1 u!lPA% I8ZqfZBP<7]~VgJ+'kB/]lI)=5 AfU:ZBёuN0`e#L-kD'* bv(3Xj(3% w7 3fS qGњFYFWc+ o0yt,RK&qfr1[C()~ePE9 2Zp+kY([U"XHۮRM}%%橹(cի;gW~ Qͦx%7UNRƂ򻜗E w~ % 'i *"QmK i}) t*ruhx!?ľb!U>B/7J/bط(L_m8+8d%ձ"[c뛼\l@_gLJVw{ϡ<j)Y_=}Ih,˥1:ܠ@: `t/g~^H~уqrwJJI=Kɔ;z6rIʤ?kD9uNW4:81.RqASql M=U\ᜌerOu`gi+6Qܦ#-氥LsbDi*k]._j8JS/!4Cbx 2ۧX! 6p+T߻BSg|e xU`l.\dp = A.*͠71~1؀ }ȤJʴ'UJ']CM-vy6aգ3OW4G@%>.̷b}OFS.lFΌB [$!'oH^.ۚ. `W*&xi=:z0/_Kc購>6+"0Ҽ*&=Lh:]>Co1e8#Iڭ{8zX_E(Pp6d  2_:D͑'rzHlR &eX˪z-D = = ~|oeu̎=_4a89!/3A| 0qHvYZU֯! rpY9xgҠ( ;5tl_,.t̓|\'U&}X$6x_ն%@,M>4S}5 1y'q@`  K,؏-DLLܛJN%hlڎW)6,J} ?-=b}D'%AYخ){b\h0cqx @|rߪ ]9 | ۜ*7uZO΀eKOZ?e(la::ߙDDJtc4|k‘6,?6;u9,<5iA~ SnlP('rAʾ&^5]yfwvԯ#IlK)!aC COп`ݭ:?!IĭoLR,9%St֠|"1YEkH֑*йUZ6>*S^"{ɜe6( kݒhN2FA%|ZEti>'>X$Ego+ŝR]f'7Tڙ$1gWjU)R* Z,ӸzEO,xL_ )7p 4Q(y^8NrϾQBE8|ePb 6"*Tq83x[Ʈ >ĴAKj{.vu_[+Bjهܿ#w'aBaF˱NTv((b?>k<@z~uiJ5Ŋ10 ;XE@/Kg.  oZ/K#]S"[lp&?ҒtNݙ[yZi^q'޺ C'4>+H+2@tCV̪G2Rzah_>CNvQ u`A|YNu]FMpU6h^w ?m 4<1!E1Z5zd,'٪'Uf6*n(|dU##>+3Cҽ>{T >ܨG=%-]G&?NQxe]M9t8"¬c( "cV6'%Q)RJ)}7 nB@%%o7#Zyo!ؼk(z %%db_Zߑ5?l:~Ng=U>XmnuAc|qMWgoʴh|xh#ضD=QT3_$ 7x7j}m@]zC2Tnv,/+RR)zˌt}FnNJ>ux毼k(oS5Xdl]vR]m1h"vm04㦬j rv8ӭM<_͂}98N."e.Y-kG;w0i `&%ݩډqd,z ǙCڒ|I<<5Ja22gy$f[/xۣo9JG l*o:48߮!?:wUլ{j!v%C(@0iP1}^D 5I9P| b*0MBH '4Z-FPY` RXi~؜}14lAˬYn ,.l!'mk6?TD &)8wE2NrH_b[#T /c !Z94!\cb}T-.J>Av^_M*p-h"pY(rh\v?0rXH^؊XSXO1%YGP}ݗnpPH:ȱ㆚pQܷaOcpQXeY*WI$8l9^Rv.%M[H6,ݫӈQ3KUMZԦ3(h*kjy?9g`*onBwl9mx=>&@hoM^W7_n6h09N=Ѹ}ˤl90PD%jjbw!9vG~rBfJAg0!V(0 'jK#]=4wBXu%̥̋8y}?qd(Id^&Y^yռ4r0^oX 0gXO|)Owp [_y@M !+,$',Guc܈<ۈՏ3@G-1YTU D Ğp4ǙQ 1|X\i$j>.>(&u$n5?S5&w*E ["YR2!NN].8vo܎klf䂀QX)#DY{z8v\٬oҬ5|Ͳ X?=@v]BLݴU'|)Q^*$ir(8ѿ"@-%e#,'횇%-7RjTdvu=Ô<(lT+@Gh ct=-2>-|{T(1$7^Iǩ1S _&po@g|:Mv.w:rUqYm F =[!\{Zk.τiwZx.l]C\ 3u 5;#X;hp Bӌej1>t.TK4a$89-^Vm:xÊW5{Ay4Λ6/ 'Nd`][GFvJb뙬fِΧJ +TOf F_ f!~0FALLĉi:ğ_zd#pI0R:kq(ao!f✹.b\ _K&/;YuIۣG/3,+`(u{83ZwȄ/Ҿ[ͥctD3ﵤB` ~& \y =Zl7l;iәYQR;˭;r^w qMWDn&$ +)+Q1zYtj&Dp$i9[KS 6b5+^/0VSo^WYI&,OE\r{ ɽBS"g=0Uɢݱۚy@h0My,f51_n+%5Xqi۾*MNLܴ{oINqKa)s&˿ !_h]hFQ:cL/U0C'6eF@3/~9PD=+JH Y%N UC4;i>: d _EfH87V0Іr;r쬪<%e^sCE A^ORy ڙ yiY'w\qAwĀ0(;un*jVq~*z%B:)G=PFK? Ug[[=2̜>{08&*LGsd^uU$*I#SnqJ{XG$DJ[*% ԡ9 է.mvO2XgBa|IK̠ţ Q-Í;O2\z (~ᮟ6$WWBkYwl=`g n9s[zRe+UgA|9a fH҅Alib݄Pi!Cz.cOBqQF͓@ʡW/,'wֈ׉PmZ#g$T >^=t. I5}qjP>7Ӎ\AbM 0sU|V5|YT"s'_@ĭP(bZmwYny[#8%+?,E7gRqcy!4GnV8T$ܩsr_p3@l9}ӽB+H!$l4n>u.c7\ HBbCÄT1abJ$:Tx/&Bn>DyYY.S3.p W^FƏFҍu(bX$K,I%lDvxz^cҴg)kxf?LxġBDžZrfpzazv?o!y5M&ݳ|%xxJQLlƯd*j~Rv:痂767|; Bbuv1:q) zbUN_p#4. ϝ;]H}ccUxlǥ -/vIXePتşuUu+2DMGԊ cO #Gm48#7͑+igϑjK%蠱w=*Iٷk˞Q$s6R{= XoSIH{o?cqm.W# ;0!W:De(0„E 6 ୁ7صlT$#ƽ Z`I*~~kxgP7yCQSezߧhKF{/rR~ѩl$;OX6Aǧ99 oHP&U+"/Jw2W+>f.-tx^l_l8aD-րvlUoa!j4EC}OԭS;Kf;67թgK ;c>k'Qv_M"?GU2֝:嫝K?2AoV?H[ϸM1%\5R惤ʠAָ&hF&վg tw̒6Խe0C qaҰ?c֭y2cȉq4nOeCRϚ*ܾ5@ U2GD'䏤W$S; y˥/cRE > pWLPhƼUڊ9s7?U 'txGAWQ{ۋ|B^sЊ˲VO & ||yhQ*"Sq4- kOTHw]W2#Sx"H>Z:hdDǙ._juC/}3:sƃb}+T!y߼R;Y @ 2,q+U46m4"4YaJ0"sgZuHGÔlht?qDYu# T/FLl+)Xl Ԥtu̮妲C%z j:}y/XYa38!xzrdeA08Aژ`86|@UDw[6zΞQEL8DZ}]DwvwlAz 709\">T L/>jŶ1f)w\eOZ4G+{׆qogC] ^r3:j [`Lh@/r(;mԏRFEttK3xzV$ pjElVI8ekYぜ% ~)P/leڜ7*bٗAпR.^rڇg4jdhM+Ůʰ`me XQ1Ujlegj>qRu{Ǫ F#+*ٓsdjUE5ra䔅yiv!} ܉5lQ-Q9 8 ˏ[*ʨҋ0|˧yzm+ζMQIrsyxO9Ѥ'-g :rѝ #PL5ĘVc6_kjgj=VZ[MoqsEk l u>t-N>Xe҇f|FL_6IYyusCis^M!A">uɌuǿ46-󟫳Qn!t+ jHC/Wxc,:%,EsBa!讂ĹB< Bm{cNcϪn gQ猑,kYޙiG"[ls}5#luX\y>a֪c*M4v q՜>M̋;|Gō7I#[pU2SNcyz=τ[.܏3!lbF9pxhG9%3f TܵT'5Lik짿=lfrn(T0UY8'9IX/˰}2ͳjikM`APD e_ߡAA䳘I62ևvs<9ic(C6UȂUHHW<*Ek`{.]_Gd7px)vB3,ARӭBnR!n*%{CW%2BF54(rnXo𕕝+r0$S:5`+m֕,w32D; _*I\-_SK7SHZ,]$ fN Sq<~a?M}\=e⋷<V!l/x6ia5%k}nOjEYuPgԀdR|?Ok _|OAbE_>WvE5i?uR :ٔO쎂]tu<ב ύ7ŕIJ›29UL*ݰąIg>Plޢc1~ReMj#sl8iVcXL{ȭC-{r]Kv!-FQ&DŽ!@#!գ˥:ÙSo\gtZҫ8oBV]/s̋T\$X6Cc|EaS߀HM-2V&Bb|B6$B.{m6xpO}+4BЩCU*u%^FζVo iE8\?ɖn5kxs)<z꾮#>g;.JO]"u6՜yOxsXYe13J]_To(_:c'C1.#Ym\ DN)jLLbD3Wx؟q.pa}OZ&UOTfL EDJ,{Q%"V#mΊ*x`\2!2'{kVӡ2q#38q)%߰7169'e8o)>Z}\^J9ENpijGiru -mςMc2+wGk9B}x6.A^jژ2 TRYWz# 'IH20; m M_Gh3Ma[ɻg; $-V:sߩ1^P z6gBGZ)ޮq!hF<$|ںyyIۋ$5r5.҇$Ol;Ddx}TVA2,jGGk"uj3r%' .H<˓ܮLM 3G~"ɴJq[(pRHɋFk^T$G?UHbTbN`Q3 :$iK0k}">ZpBDb3S-2h%s3X^|o#5S^ ۿ?P]W%ċZw$tHc%9v\xb~DwRioe/Q*d7,. S0Ւg"fz2ke6G"6?ӛ\' 8.חS+\)ǻ"E"gȍ]A`ΕxLGcS@-I&n@LEԬ:+sPդrɥ+Zk. DD]!/@{1ċSummN=0iyvͬu2g\9 kHCbLMyO70*cpG< )[8 Ap;ka4I>\>M⚥'>5dg ]W9jײϡS=6Dz7z\n8_ǸڂQ/-]3@A8 )yX`z"/4ʂ5 ]u|N3i6c3232*cH8T J Ex@S%YRZƎlF] cG@dƏ7ASsYd;0MT][ܵ);f n dqm?E^A)[_ +-9(~ EjTzuRܦ u]5{G#Q xK '",3R(tivf?ɪye Z`fn=Uk&ŅF|zV ?܉3 ڦ ljh* Q j16M/q-OqТ"l^V&ՍK_U 9WW.īg|<oc(Y/PgĖj6ˊ{_fb'9zRt{ C"Zj?ࢂnOmמv5@0?3n077+b W7P-Y6zJ02?fZb5!{פMHӓ7;Da%èSWL aD9|u׏ϟs Bȯ!KZ G:+J7CIIfH<P) \I,D>_|܈r\(i{hBJ0ko%V0Eg}MvNQ3$ťVQI(&Τ5ScN,a[oۭb`>z0D/G(\B+A;Â~]T.'iR_2YsOh2w3ܚxն-hFҽ@O *j=Tw쬏dOoP|5Rm~J2?71O0K'=HlEs˛ɍpֺ6rqbeN\G[Pʹ.|U ̘ VOJ .P˵V_zsw\)o5aĉVM*7yVK]^}>8a6/AKĆ(7xkXcRͰڅ/ݟܱ BmM4b$JaB1z»@.mC'H\2I<4z;@h|*k˱d'jXe#SuL&k2 X.,KUJQ@-|4h<75N:DB*0DvS՜ -wڌ?(p:XDe—~P6?>bVgO=xX@ybWQ&ֲg _er/Nݠ3$AC8oUdts P1ԗQMggPˑFе^\J{uʢr$ YS2"c%+v1u<쯳27(lV*hc8Rj{Z$Ytq%[M^ z8Do%@=1Y; Q 0s((&Ђ>~P<;cE ޅo/R#/]N)^lnn🧳kLqW鼭˵ч;!6woGA& ?R7)lmcqd BC  d.A;93~vz[%tMы1JX߭C͡(q n)f5&*o4:"aV3桡D[w.8g=B~S, kD"VpJ5K5!e$7  ȭ'Ɔc9hܣ7<ۚ102h1qYp,@;D.H`Ph{R/֒1SV;{ X2F'Qn#3'kRaXХaC(Y o 23ʼ_F>P`}A>8Tڠ`6ܕ.5ZhyLVNxf(cL:&~~+0o$^`/XX;5>wJW UL.~ΏtqD:AμQlB^wr?h;=-Hc6\{\ĤBTcs@=$K*Ww<XRgtVc N+K-RtKހgc`H$x,6tVoJҨmr_oR(!v?#4rO}kR2ltJ9a5CFKTS3Ъ{mlZڐ`_NJl'O49qiK!1G}+YAgA颍O/(x9(kȴ`WQ(X8rU[+C;lGzaWN~!Uu+O\ϟ"e^_.?j|S6 `= #U!Q~@мJ^GgGK6緇OUZ%mJZ}4ϓ5lsn0UUzδ݀-nPCFm8+'Mؾ:siSa;5; BphekmSt*:-a%JEr/ M]1Og[9211_XtFsIkި#rBĪ2 O_0)i֮ |RKg .'wyndNԻtHsPu8i g7cƄBfoUm6<5qg%.  ^md=+2).ܾN,Lr"tIglU}7SRSk*`o]}f5nJ""FK 5T;5fn]TVE~o:1r22 9"Q]4e\ ¨wikXQ4F)RszhrY]ԓEބW VNJ A#ѓ?mdl5ސTK /ƅ^k'g9rrkV>hyZ9 Y'OKáSA!pCgBY R!(|z6۸fE&>JW_\lwi)DQwrjqBM/5NBEx$3m3) g<-?uC $՚8Y+ԗOF%ǐ6߲Ϟ6`as @C ]9/ RIi )F 2F?WA(v%Hu-B(:X@2PfETJT1,xk=t:,M)Un @7nB(ūgmS$Eok8gUv5~<Ӡ$qWc3gRO]՘'`ِlW6L>\Ics3KǒbYFn,;QYBL  bWbNv\ ycM1i@PF+oOv /6@hwbb!I^#mBۤ[R<_r=5Il(ɼr_e6*BrP $yf#Oe߀9W3m9wύZuxhL 2,mE@*RJb] n5{ԉ~}x$au|^^(ܟq+f(FUq-`0t-n'l]JH UgX_ ADa:AW<uEawyTdIV;3JN9;&nhpz1O#ܒPD&X.>X`XG\&QSsnL*撒 AL~T8 =D54Ä 'w^1Sz⭩{)7z$jE[[JN;(Ձ 9 Е#4O'zQ-"ܣ:SC:UN_);7*q;3 NUqэ M5W~]'ASjB~5:q uUUa[@Ք>)]y ^^5%N@ sW͌xqG + (V/d_`QYI@ltFh &ئH"}y4={\|x8# Zz"_HS&~-IC+;ک8+51Dnd+a.d+pV"9W$n,~M4_UvnTV <bu߄0&ĢGGȀl׫BxM`{1Hί $Ղ\gB9 !b+`y.y~ыIv3o[6S\Tu͒BYp!?,F7ւS&k4F1\!F" K6, &7 1H'ę^f4X^7Jb ݁ % NY`Ƿ3Ly] A]S!@AL ~WQS;wAJN ;cnsMV"wƺ4w^ԁ}qclbQ 6=+Z)DT g/Ti**x?x %&P\5q(pMvMTQ W.}S r3bٵ5%MЍJ\}jweM\<STYJUn d.!9zxG[*@7N.Ңz曾g^-/YdϬZc6UWp">ʋUyw\(*xZ*1/J fՓuq]ǞYgfF$ŏ1Z61l@XZ}x>sl}8R>}c^Lwӿ2ZrηM. <xTMk`=t݃JV/1YfL-$oiCM̫{% )/TYů[2;{O;st-W7p2t.+SZI8t2Ĭ#_QuHakT L=J:ڌ-H#T,H`| (\Dl'/-cbG+YJIM*OˍS]NqY(+*|ͥrsY n  cq(V7"F9 {EOA+l]5sXz\bhFE5?v]18گ1uW~jm yBsa]|[Ou;fy[W} u~m*ed)Vwa"ҚrB﹩<=OgvfrqMkJ=ez;Ż]KI%د\2Ȉ I×߀|V4GD*u-K}Ʉ|(Rϑr SOͯZZC'Q $O%x2FQ8ƖP'1[Z \}qث?ɛoWݺateWI }Y4*ҏ [UQ]Gn/M0dTn3˴?D_.QUKLgȟ(]d#sJ;ggf/,38vH"iP[wUhI9t3g1D#x'zW0.n+~x*^>ٕ E'^7qN&&/O>">f5x[ȅu̝bXl̿L]mW8 Pבe^eX-oc)yAN6# ?igtUXQ?zF H\+m y|O;F#ǜȪR0i#Ls*_b ¨euq@큔V2JkeuR;YN߽d2T]O =N9Br\LcϒӜǑ`v8Կi^WK-$]&(>]N6JrSћ(%71qv+d U9!aJsY+ Mykζ=J]onX]ua.{V)*2ui""#y"E> FS1NzVC`֓c;+KeNUvx,8mɓ !pEJ68@J_.Z?\LEQ]ZPI +[KdGj;UZ1>P WK`=r"x'ŋFTx ckhJ\r\`[î0+ `_;grQ6]!8*ޥ&ۂo\U:9LcN÷IgDKo¹9n,/uVGd&DjA2bKSńA)a:%NrM`PSb9ictҟ6__`B]؎ͰCL mN mL )>r rMr K( Gp`,eB{?GSh8jӆ׋)Q܂gd1V= \C<\Ovt=b1+Rv]"EbB2D !oݫ/TU ~ _2LJZE=q gL[a$~|?䏂Oi(6,vvjZ *K$zhx@5CuUb6ڡǚ[D?^ߩ-7^57q;^5)Rjtуb?$K@`FXZNdp_@fE{x] .k~-~g'fo9u|g+4ˆ𰯨.;;`kCҏOTVYg ysCH+)ZC"^+䡾KCP`|IV7 R--jɀz1 E=koJ&i^)ES'tgD#sڬ1G|!A|K"_v[*|(a WbgH>EZ)yxWQݓM.CTV+5_WjkO>x)m%^3W +x Ь7ͷ *y;Ww+zs:TV1޳&#x;Nch2eXu&UtJIHZ`\ۼUWmڡ/v0XMWW'$={ mf;-2 ʙ?*FZw, FjysWڇ6@AzñnCa(Pd}0VV=ٰl@٢}oh7ZI J3)5ʢcZ U+؎ SSD#rt͗m֝ht]S`ɐ$spPG9e}Yɛm;ҿ M̪i&e;x%ܼ_q +t=,Ϲ eRy'kv-ЀNLz)oN`v%-1‬>{PRN99%* Bt{y (ܭc,{dzmvbuQͰvJWm9_~`Z&-!#*0j'k&#;~÷ 5{D Uk'̜B!:z~uVo!؉Ǭ%@`k@\x,v`Vs<h#*;PgKo@ MY"ݴW(P\r&~v@qG@QtC  =uFmZ'KdgH G^Y EH'eto7]K2oMW7筂3^c3 FegZ ;Zp|Ԅ\u@\'0at1A`g͎%?ؽV >o P2֕PA0RwtsŒ-@gqޣnQGź~NKG"x?iFsE(ٛkZߎOJt醣j=LK,:YWfgOx}|A#G?vȒ ZNۄ^ȉQ2 UH*J%zitr}Pi>0v,bd#S٤dϾq*GD06[_uo7Ue5!wJh#w]6 3q5 Q?WBm9ͨ&J$2#u6'׏bi ,P&W 6Tw庱-u_7M}t*J$!+8B>'s!H ♪ [ ɪqY5qWņ|ٹc6P 52< ->6hP4O!_%B:!rܿn?y %5҃ f#Tbyu;L JGȣgIvPd3=Oh7}@(Pe]_ޟOr8^3o;F Bಖl 1ccDa؜/ĸ6I[78{6uI( 1#3x -P`~u-ѷGLc VQFcg;*j9bU41?ڴ芞PT0n=F𵿹,hb{V) ;7~5`{Dnmw8h\ER_)@:5|PZ +s٣ oQ3p~šbԒ)F\o?KI#Gc⡻U,$^ȤO a-| #ϧ鄑 {2)#Sδt,ppa+"$[pO7&Կ켮Ѫ{? H]g}>> MI L?@,&mOb ˷ϝifv&*9!Z pdSii1,Cu"肜P6ro\l;Fp@}& |?[UR!yua-v@J9&8'n:ft3 5*BZU{ Qo.۾OHz3>؃*wu"! O{A#E1OSW=C x)>_EV-Ti[XRMk% -a4sqNSI9{6eA@I{hb ,oF&h@]%k1ۍ˷ ?B^n4撱BV\0"̐^9 ߮ZofA.]oGzAl!&xLRV<+3G1nhB]A}l,sa܈S9a5^CFL.UP6] ʋ Hm*Iu'j(`vDFVLz*08XAQSڭ T!/6`APIk9KMHO<3Tw3XD0cG;si uilp_p$ }@6c ˹/"v}MQ|ppelH T˴o~GҠe;gͩ/`s3B4Rb盰ib!۫I#=j}#v_~kgARn`*jN/mU@|YvӛRk>Wco,X,T͟=lU1P4 &GáxHTS@t߂٢$Wwǻnw Nwц2-JMQ,Gy6x /Ol1SĝNIg9ԭDkv oS胘HMAZ1rGlޕ0f;WTT>U~9 w+'P5&KKb^8vn ;TSJY;3ڡ]e?cDWj8~rxVix:@-VV3"n|d,aaÈiZݫD& gSʄvn"w)wb@q(nWiJ05w+{f1O:i}P`u1ƙekEBU^mfFIɜWqj᜷B,*nQgT-\]`!0IS[+ ;GK, uVHMzm ^`HU^Y,B *N@J󖫲V?q[ !7'k *S-Z Ws&v'#4yƮ}jF,t kS8%*8zMkYב-'c OckDm༕7|ʇ۹rEz ]J܅"x6NG6xrq?[W-/Ll?c^nv#sv!|1$OI ;Ҍ8?i@dˏk=7ғP#$[̑7Kk_uir-]!g)NԆ,] ˯}}zeXY"r_YlS>vA=`$B ǿ%iB+$m.<-!,zPƤ FM~(uG>|T3 V.SуTIloI\?Sm<b͢mb0ZG;vv9p8x#4SJ( edMW׀ɭ_gdWjPE*0quFIQZ#[t (ulwfM唯+Ѯ1I9Z^cMZn޽F)4|]8ODb7lvx* aѱ\{)V:Q Pdk)R[*G fT֚6?mAF uG!}d:MD-3"xJTF"wPAxNYP?|vo~EH`e6+KWCkX|k|SNLUxA4\ *gX7 'nsiW޿BФ.F1O j +)O{7{3\Ѐ/4ʿM2$'_D%bj!Sf&-B&'%d*@V?0 ˅/eZ%"qD^15CVíYݥc ^--aH~a% EoGEJ,y -`O([S dyEk`9錿jГTcDEv o%z՘̔ԃ *TWT>F6AE)52 1!;c{iċ "y9ilRt4݆&kKFaKKJ8/1olEqP)-MT̤b%55t4=vˀ "qZc,o&\[̠Tj`yO]s21`xSxoM pu$\иV 4pп(F0?qJlmTPi0 Ct81EWXW:#ite0ug%pI&8rb ܒ;B ܸ_KwJ, ݔ{gnrB] -sT;'&y[oos)T]V!0eѹpe+b%vOZn]oD ]3J|fJic]#MHD3 [ m0(]0 c+r@1yjv%bl3$NKpwb)_KËoidP@x'œKuyn^PRՇјV9ձ2f(aw hs@,HƅYэSljY$wl-Tf[QbS^#̛g}5ҫŽۤu ub jQFaVL5_#gGpV6Jfy-m4W>=O$O YH;|mIq̃&p>n~0Xj)\yMPL}8%:ZukZx̭PAUAڴ3'l  $G.VʫXb C/JDLUm 7 7$Ŵ-"а(.,HPY] RzCX\2MO^LbǸJz~mvP~74j! bRF*&Q`z@@)y^1] _jOLӯ7=ZWo|אcg>n!ߥߎF6dYYV}]: w>jA7 `gxՒxE#@DT 'M9J +:gY8=SQL0H+YO*Dϴz$Y&9e=eQ;5DHCXHH5Z(`=1@IAe/5rE#s붌~|ǰ:, ]j^V' ]zRda <OݪE~`)ZZmZBUx6r"Ӎ;IVB6N|{ҷFx Ql:]֋]O%Iw)}0T$d7ܒF1q c>J#ye =|ş*}\v@KA92 2)]FB&!%0s UvLoS/̫!^?ae[h0 #oR5>׌VAMq*坣Me oz6v(Rf%<]?[Ӎn}^)z=|N,^Ѣ kD!"F0b1;,|k O] ' Eu37qu -`u4+>f9P [XI xYY&A >XeXB]7R$N\/W' 1D8Ȱ{u5s[#ciHSZqTsfo ϕ,wؠq%JK=[;$֍{7Vc,y2&dJwWϷҜmFLLE͆!\R9h*v1r(KYsj$8*$Ѽno]c"tbD*7 A֦9~RLev+p֤ c?" |COz%e r# rpVE  4-K-.qoSX+6=?N,zQ{@s'ɥ/f;)&Εˮt/2XOTa˜Q]^ ! `iRzB-sSҠu_NC.eb;Z V;d@aGx+~yۂߕ*UPR-Is_CY6(FZU3]#W?!Eu*x,[Ua#X=݄1>5ӝ<=Ayl.D_xIJ!Y'`YtBr')l4C/l;#f:DZl"ZZ qO5z~ڱsxe)zBH1o1Nb(e$sMDrp *A-aze9x!ΐ]x-^|./14W$=!@%aeRMrW/i[a#ա crY%N#/%/)B?R+MPCa``h(g^^UY-zoZR[ˀqmvz; I\=4*p֋L5vOeViSM MlV _{5!F[)Nmi(>{\[_kķU@(Bu44 c2b #%K5@C|Om3~U.#?Q`O@jh5ʁѳﴵS!!]bɏw`*=/9fmikhs"6n1p!/vH #`sLZĒqe C3@icͧF4RܘVDuo0l_Iе[djS!fʓ"SAYZo;4!.^K 3PIA/ӯV2~y-HC|M(oI !,4ˠ&U.;|(c RuR'8?3JڕY{`aֈH/Ql )iU Ŋ&^>쫈2e !e WXِޖwݓc%1bX◞j&[9<@Fk^| \ix:1EO2+$j0t},d L7o%YU[o~4TH@uve m ?B𱰚ނnЛxCcf: $U1Rhb̓1:Ds=]BybPXJm~Éτ[aȔɨ {|ļ/MCۥaS=|;5(SaH}l\L=lGb:5QoeD۳Xc,{%E0J*޺Ofv-r4_O0QZN^ҌK^@(6~w)GTۃhayEǂ^/_N׬ ).|"]W)+~\3.A1,#1%4+9f>ˌpRW=B8嵀@.FdYϽ13IE Ԝ>Oa›\vT!\W.CIi^ 6CM 3ZXdƻ[%?8S:ySw0,(km˹Ľ {yP% f4U`vEG۫-IQ]INڨ1iqdceٱK>lη^x",%OnξEZ7~LF@qa7 8K7㒴,3HI i0!=|jGj DW8FIEU= $e#I!-\x?+5w~h*mE !HƕBkVc8ͱ}_gCPBD 'ivFl-d=XD9$AdelեM:Ƙ >O9ސTp: \ZKTD}BS)L$_]&nP5~M41AH\-t8ǏH CD$0Xz?A?b٢Dxթ~~ |`>-b@$0Ũܼ!U न@a @46?.ʈ#g/&}*-;m@>&]Ço}zЕ7/Yi9m* a-p` Pmlf]߉˦Cz@-nsG yd Shkzl]VNev+HCꌓ=X康fh֡q[ ,o|GnrGLz U0Gcj֍<چ{2\~d܄";dމ^16OTJ֯ؠJ(JGwAf4UeWꢰ헩7[uZzAV~ZV|TLtm8 D&ɩacXjiݐ`[>xR<ّ'@ $G T+Ial/nj#J(yZ˗J+Y-iJ,JA+W[&-Yc}PK~d0=C]H #{\Ŗ=ZcE,׷ ǒݲ/;Q,FX́ Wy@N}6Fm`|W yH' ˒Zw@Ja(,?D1xV36𞆨 eM.ӨۋL-S"ފQVd:\r 2>Mkde%m --[9Ƥ&AcWFkr#jČ~m;ӦxIOdqD~2;8X3 !pPT+9i(Vn潓"aiGJ]&jdb$DDZX}yrmy< 'VS굓vv P48MG/X15wH}ԤwI+1+6Lɔte=lh)yӬ\.ol p|;9ǪeV.%Vff *8݊/k#GSl^_c̗3|yxNҋ Vk)O691uBB{+uFMH~ %6j12 Zμ,"ꁈ7j+쪿*G|p+ s ٯzDTpn׵L>n(~  .sżߘS {!xË`!W#d*iWD"WVbmvquf R`?!@?ƿR_k` ^t * c΀^X¡\֠fߴEw>[Z- 9BXK_ ᄕڷwHb5F|kP y, `S3:F(݇ 6Axi3:Lhw,'s(KGD/U$2,^=X@,ߎunhάr{37M=f2I^ܴOGڬEx2(dDƇ"6b,|&N>gЦ S^xF*AaB!ӇԼ mteߧmB ?V _8tޝ yM(Uax~ד1#4Di6'?"h#|H't,grp; ԝoqh6(c̑ dг_pڌc{C^Q>W-~ @X_' i-L>Ga6? W?Q #3LOY)GZ4=Vo;Er[=xN곭tʟ;%Ior9`DOyۣ9Cڌt T cڐ]<H3."pMciNJHXٿ|$Z) Mۺ.%5;vN 16O#D=)]kj74"_H&ѩ1WEKńLDC>[Z-=<،H=ٶڢ~r<]9.6sP|7>$eO [**1OD~Wp%vvﴖ-`1N,$G9]d}'9he\ո4id\.Ge;7@)<[ō g$?|!Ml--QN>B+&v sz{OHQ18At f)3_ގkA0̙4^ßDYQ>DBLZɤ5HJbBSAB$ j-|XEZ')i"kRpoa f5Z|?LЊKxP #PW U=,9vd*Y<Np]h~(3X5Gڇ 9(9lQhPմ~Ayڜ{1^ /)؇|\ /T1fUdEk-u_Н/v<"捱O!hK|I .p|r^`.~@!_VD*< YW:0c7gtϋk -dHuu'B֗z0i0`GE=POL1Dn$G*i6s'!`|`ZWEͅkڼbDQyPpBJ>u 4w4DZJ;Uq9hpVkGQƩFY.\72ZxW|SA xU\Jd~{"lzL%[  "'RsUJJ]=I@*쌟a B^6ުSޤ 3ErX+` ǐGw1lT0I?wcO UnVoN|g-Yb-cFy^ۨObmT2#DrELo|^=0]]ICb4+y~,c'FZ ҙz6aESܶdݕ 8x=ó#aQF}aX&w) 2=]<5j{ -Kq s@ZߧnI@R4GH1OgR>(=,P?f:tf(c q5b@CCYCdSjg`(1bXDvlR]T1 ʟ2|;E-mBj /E*g&iQD^~ڡ_DZ廢!nAblUֶ{!?=O:_f:[ :=`Sv@JN8#a{w1;^`FY'Klaiٷ!GXx'O7)0aqOƗE^?rM\u-~ _7xi9 QPsvq"RjFW|V\yml 8(>#|jknGL޷;Yt{\:64#Ն1z3'uuie"سyJ7^˷}RT1'$#. -m9,LҒKXee' ]c-9a/.ci.1n`)FMCd~z.Q`3r5u bk^4[,P֎vKT6ڹ49 |T]v 1v-B_ٳu>Z,9J7u1Zqԥ<^(tcVȐ$ZzsOW$38bN7=8ij>(vu[Eg(qRihr>d|R -E ӽ TcW vd$D%|+Habf,ؗJLp3ä i vw]|`Pxͱ݈uKf' >csfè1CZ$:0`}pRw7qMB1+mOHLd6(Z>I Mw`2+ N$h amlqړkNyT'Y|6/܂`pCSN+y˿[k :Ya7ɻN#mP NaWdT; wQm 1֚QR].N=hh}Yj&iPX\=m}&,OlFƎba)0|LSBb+᳗fFy261۫mU69:|9:[ΝuAOhYiB[-}^mX f gS9~_{ÑWe6ɽq`m- cǎqJt0-%f|z᯳09U}c0gOwwIN&*B,M1X0CRfqϼgh' ߰ڮi|~TU ֡Q,t:jÞ-l{rlYx3S{ք՟|JDk/*oW1/p]1#aٳ*׾c5c+ad#ꤢ%`<2.Zݨ{;4B G+8 4,;}ڸ seUbl Ff++ff6z;sc%w~|)>xhhR:yկxB1x`$qN"D]=2 ^ꀄzN#yNƶ"NX+iXvۺA@nU_rT8Qp prSכt DHZ49iFsP˯,d/.JdIyds~0 Oa(0p|(>tEr51 7ak /)@Xb=nzy3$x/:.j_$jGX!(-1P>yBEN4.SF `='H*qx60OMWƾ?;Ḁ͚(C]ou f!FiYRYS/l=inqa?*bİT=tacPz.@$`Zӗ*J@JFmԑV^폒 <8F{IJ,Qh~} ;zՅx"#Mի= pj#6= p D!`@?M$dtOh鋎s;[Vmyäb74/{SMz7Rg7jYJ Nxr݅[UX1^I,?H)9r5=;^7+xui\0*BF0 r  xT4>i4ItglT Q4ZmIdʷ$c k֌\Z ?kK8sUUv{i;{~h[}Ez/뀁E=[ .n]+4f7 P@_X%= Ir򣆩XN ~xn7q@z\^D1md!7(kK"(1Jy <:Xwb䖩}0$ 3-|M ѐ3(jGOx̀+Q#vSʈ>vwT?Cܻ'dغ>B39ŲVQ|Ë9 &mRHf:U4(  .?CCkqխ>)8VDx'4t'|Lkr@Eu\%k ҌBYYzNbN(Xn,έˮ_4a\ћ@6xQ&x51>nnQҠƐ}|(>~o@튺pynT}u6l*\1k;rE,wɆF9VOjۇj6>\}eOm'Խ-\tJ-wJnrH-]*ftvt*ڢ`jDܘI^zV`¦}s57l WPs3G~R2Dd4\*%M6Y4"ibnE>m@C\#sjX|1mBv vAqoLA疆XI{J|KuBW^ W sKĸG4s^,znTAOp*gVwëgfT*g:}ņ2CgBwA$ -։{=0Z?vn#0H(Ǽt57RHJ VB3Ëmt0n0C-5O"A~Yfe5Nj) :fɄS\,•#;kNF gN(+7 F@*Yڐ+-\8VWzi tK@ޝxZ??AagCV~e_7q_1#Uww,uR|F#w9ɝN/-ɖ_!IMN&#ZRyswT~eJgC|.]4Zw`ѧ$ѽƄ!?тPx L# ( ߳#;Tj57Ϛ) 9fȾO&! 9 ɭvh p8q;]Xm*G)Svߴ1:A8\k Y!3Fudā牏l9PDL)wVJhSkkXs5ɝgXl#{qQ.d|xrR!%c~DhQl4tlde!;:jEN=)h1xSmJ;dY-hr.4L ?g$?Yk/"0L{~ SUjq\ǧjlo^wЈ&:X,EcshBB0N+D@õUc7uli%eF۶<e+&5&e"% 9Zo% dͰ 2o@"@s = o,4EƘKV \Od[mrs8p'7D_=yroXDvnEkSS $7Εr#5Jt;[/P(=0Յ+Ԑw9P.n.p}u!{Tp&Hd `J:<银_MI9\ZW$">"zsipT@6$Q(Z17L)ufa a!`=Hah|:TdH[`UKb|lkDI%<ԏJDhR_+er~ 6%2fF>"&ǁǘT;oZ Ax`͓落FX_;itݻsb?u4V*W(-Ԕ9A@WתKNybd"S/)Rׅ5STgnoF-mG9+>Q:œX Џ-lH^33Cs5s=//T#|_xم1)z{VS M賾i #8Fmȋ̀AL}KIuyJ)D\5Z_Y_`hXy 0Nhp݂'svs_5D=)4QrЛBmh:r4$
    `nYĩ*K!|e+|*aȑVxv0Dy,K'^-N'ALgEOTE7'/6!"Wךu"]w9\EQ')'<Ȱ&Cgq/[ŏ hP-GߖoB"c6Z`v@UZkcqnxy%Be+,y'kb#ѐWmZ~`y#a9OY'vZ ]e+M-%FG^k ~h[Ȓ$\H '動.C<,Ml6H툊 } »Nrl0|3+poNn{yJQdeakC҆UOa\)~;]q12%6"Q CuA)Vԁ0% Px!RldMM7\_)`Q@|=~I ~R?xnx$X}KNN)9׵C=ʯXqV{* k`48wZ9Kڗ^%AkBTEcKߕ ʪgIT^dmgd<6MRRχ%.V=fٺ!ka ;Cx}?u'x϶A/E#aH?RݡZ% ];v ޽˄ū<& ~` ;啳/)d, "`Jf2goG),~NR҈ !ɰQd*T?v^S8_-e,tV=p|L"q&̄t1 ]YgM%y'=?ok3-_(]3-@ xcg0%0״B/T(RhvZôj ebb=O?ȡrJ RH^G'َnȯ#T(C4 nj"u+ !.0Bʮ'v>A@=FQm_dᄶs7Ö\z GafLBitܲ?00*ZY:uw '[o~TG_jn5<)&Fڅ.nA~vP*:48 2E^Csx1[0ʈHAQ, Qݑ+vwP:>{)yiAה,uQڪRDL-l> |Dj!窇/IM[9A1rLfS5Y,Rcr?*3K_H,Ú< " UvbO S w;yce5Y{}Zy;چ)@8+ܖQu*%8oo8wXZ6 a^4(6V+%g3=kK>8ǭѭ"bxBFP܈Q<DR̐P$OYڀ1:TX4+l"ӊc%jFg2̘S Ԡ 0'y@ԖbA .=``ND3Z3,tY)Е5n4Cjq˙t\N_sxFcG[?9͛_hƬk5J!}/3龙jmÇ QDecuBps6bv9{X\R6yc6WϢTeǗ] 4XSYLb u?LwWU᲌t}c-(|t!FH`GYhU#n 8t[jK(C K/Z~iBh@NL4!D2`9UM'WF1Rw%Aϙ6O`;4&2c$3S0E ΝZhη^P^UOFmOQ'&EIMmy CFK_n8S Cm:Qf>4)  w 58v=dgmUY+4=; ];D3[5)N(Xa?%+`ے_{yY9 _<yzR3DOyH;]\R#jT;IP7- ϗ9Ɨ,r{F9b}EHGT^tYՖ~^P}4od*,#DpƠP4UCO=O;M0d>>YtwUb-5G}&;6X_2#T:+mAwH(20THhOU]3 KÇMd6 e *!` A="f>z!ǷNXS'ip6A3pː%2vy@!5o#uvi&I3*¡(%_ %GL 0wS'+3zu}b.,xӴ\61_Tև+BufY+v 0adzEkŦTZܼw>m+x RK}V[Sd0w+FԠ_wd >O7g'҆8-ܡ8ۭa5$uvpl53ix{sA$3iL6N`=Lch ->gSxP0ۛ]Ŀ޾} hMG!>fqRtY7h1tBo/8"d?ԨZNyY]VIXhEB2*MIJ[; f8t1K6w2f4LGPr @-E2 Ǩuj*~j[P1i:4lTØ>Уe6 v:h`dLr`8Ք&(װj8H5s7X@V2|SӅP-Şcj@)XkS=c4p7)5FRyRY⊧9psjA$]/)^m^ :PyR'\97&l5;stNAVSZ^0t 7S͊qn_ј^Z"ks$&ϴB.d:)1n۰>pѵ䨦 _2bW$WD2)2»儇ҎhV.Td,XF̄)y]\%E>)4[%Gp;VlJFK>s0-4cy܁`cOGC7 p/J72ȗHd'm4GٍF_#X]唸[@5Kgp$VM*9UmFR!bzLّ:uocm[oi,G.xtVXVfqq75hc]0glknt<:=biG{E7VX!ұ臮-V[سe*PBƔ]7% ^f^·xY1>(!< Ie P?4MN I:+F% fo .W@;e}2_S|$\F0m^ D_%eH$-`;~}48"WD"̣EtV 44ӨH@ͼnm|^~>MYBԵ[q+^SS/Cv{E0O cWgA k`yG^t[ın eJV'?h CHO'׬R ~3':!JH}';x+1Vp>Ū೏f'4(]Dwto ̏es_&A8O-hu^7 4,a.}85eDN֑:xxf.r=Ԑ ÙI/?7^*4(.89VNuWҫ~9c  -/ߺ5Z\YM(^5On;8)F^/5<uĥ, cf{ȢfGtƔ1'䋹Ei*)q/hq`՛uS*b,&ոqJ1v2!`Z\k1哜_ "Ylw>22H]opd-{P  ohŲ=InsYb3)կ嘴ΟM/]GVLͨwb" A +ދohiQFW!GgH}shNPxi,fdj#b~g{1&z;b5\ٟKq9t7uʀTO_j aOC֙G}hrs5ϴ{ lsi~^zWdF>[Ӄn4"XnZe]! wl rO8jN|"R#lI!44Zw"JO*KVŅז?zX0|Vhb Ry!Rfs[d=$;^tҗgTL. ~ 6XL*G||/҇+N{Uq;PfBKl56F0Ffv>< cv˚8P F˕Ë:7F M(Lc]EC_ˇ=mQ#Kt]>8Kba Y&\|Oh:ď4{G&OB=Ϲ\olkҥV$:lWGuQ }n vXpq(jf5`DTWcmTVZ=ω6c-4 W@?v+ZL'gne!2~;":TPu^*$~4kI0i$:"EiW\$NۉAmCK)XyH 'Vҧ*}xҺ{v%U4An<_D`HNfH)۞ ̡VUxlt™Nq#O+:^O}H3ޞwϏYUV K'%jEB$t@[28)ؾߜQZuZ(x-ա[Tt9h"zMd~ݦ<1ȫHW!cmc(^X+ÈE|&#wm: Нr9g%!ߞ,?yc2zDOĿByk BCsA?lx# 叐ԓC0pJ#9\:kZHCXl2V,jlQ, _Zwa7a.jH&c-r8SKrnChS.#g_fMF6: J`. ~%iRI}d}c)Wl@uJX;bhE= |_^|薅$Ԛ Jž43塡iƿr);V_YLon8T_]*H׸; jA\SIGl9)Q=mK C)Y +t̗)JD FPCѫOkwZP܋("0 ^#ހ{m6δQkLIhmqrpuaǠlttay<4Dt9.~2|<%s~M -L4l=h6˶࣠}\zNxO+pd$zV59x3TU[c]v\00M@_m$)ۡS(dk'WQw$^ ƭ?3"9&4S.X)H1H8-G1Gz*cVWqt#'G Kկ*ɇ-<S4-"m+PԺ-BBmFv{PSe-QRmB> @2+m@"n]]8߷LjHx23aZIRtU%7.,E_L6 q&I'%pT|AzK4Kj| Fdڍ̌~anF/_C$9|tß=I/9}簯CҍI,ѿ=S,ť(Aѫ[͟$&aXqQ̍{dޯ?%EU8qmLi3QrH SlwmZ'J'V*XJPk FqT'ɱ'dCID$N2M>=,g"?EK%r^;]ޑmu 6TNXpXH~=Kd2+2:d(}D{V̾zTadB+ {*,Ml.͠D+/f]6Y6YEj*í&,&ʇ$sRǕͳڲ/! kJPlf4E-tM-3/`֗bj.4)@ZZ&w}zO>ޔ~e\=@'(umv EU)̝F%<6iه7aykV=E^*OMFC:+nφDPyNqgoԽe& =8U\i mNWNXoDe,Gc<㿘y7v],Tw^a֙Դ<$Fgv;%8M&x Bn"9ŔHak(,e}ƵTfƖ* N0l|‹7_~c˧, D%#fG7oB* F!eLfvCY_#b.yTgc( rDi ׭=r'f+"ؤI:W"&ϥE; QXG4g'F쌬"fCяj!A Н쾳FSeڋQyk Zu<{ׄA$Sy6@ gqCCd]pJ &9&T:>PH<+{L~澣E,xVڀ5 #jHDz4ӲAD{Fq,t_p'܊2zaȠ՞5WhܟII}G ;z(kc2wn0N*/;GWyl^Usn&6R @#:y3cc׀~k"Sx43q$IMʜDLbX;#5&TFʊ1GjeZ֖(SW ~E #ȣ.J@#˝єsigz)a,$L-amO'&+7xbﵻH+„pCŞ  W9:))uZ.!Oe*up*9pר7YP폼]_cW~]2]h7M5*H4:B?6GeO>CA#Sf [4E5_&O4%t(]3D+]S R]Ԩt_(M.ٰgx|H%i* |Mf`;-ъ>7÷Uw]߁>Q##A^W)~")J<Aݕ]C5CTtk8S}X"-EGྨ^v:́ḳGNzzrO%oYwGX'77N=\2҉ 8"Z5H?.fqGbؙ1FjӐk&5273AʳQQ}wo}&wGԦh)k{mugWMR­,WUVtNSٞ .Y}-_+l6(tHi˼fw9S'ǽ/gB50YYW0)9Kx8Fj4\oʺn%sh>Tg }Ԍb5VJN '#]JV:(_K4;\Wz-!чI..8"K?aque*w u1!حD碶*Ɖ (jL Ԫ;áIeJf\RR"{#DR)}CVRL%, 1fZAɚ砈3ẘ67]+PUj)~:ԽϜ/hO^M_an.(XHGh^IJV_G|,d,P<R=!Ϙq0Bin,{Eh!dkUbII`"% jj<^o˞NlٕA~2nAoEOADa+7J ˈqTJJc1HSɒz)9kpn_fdi4 ]C!oDNk(H*3R"D5mі"$L{{&] qA01Ld yczz!&rHsq)d8=*rqם xہS39?͌RŪ^62JEKآ6w˨1gSBRZI*l_fUbZ[?S1p;ޑ+|gdqBDLe2%޽G96ׄ1ej eԓcfiUyN"":{D.`_eDCb'O37y8v:od}".r|sSSf|Ԝ)(SvËBeQ!$2O咊7s'Xz;NpԿ%W׵{QbjJ}: QR}`3VqǺe B_![(n"Ȋ=8؟ha pD K:+QVRj6+fi 9.t%&*'[pAġSKAM%2Cun529[ppdgXz'?LzE[o8у8JѠ񋘀÷ :Ӵ$`]֏HXcu!/i^Q ~yTRWmAys@`iBc,2=xs=VSx#^vmC7J\,tͥL: tXB_(_Cy (H~sXa(_ rT:A@m @r6Z;Δ>eI@l]a7rd!Ӎ[R(oeXu) q\4OKn5M;].Fe1Yԋ')zŝAU2z_gZ*nԈIX) }]٬RwXc SUoԬ{,kkN?=؞e! sMj`K? T8 qzJ[M z)6I![~8uq=&b5}V؜_k_4o Ϋ(r7eVR_0œt_jծwuC51O^wj9 o%U*azEXו 2z/)'n,]T?gÎRX) %Q+fC\$ [&!$QKa2VIl5Yuf9>;œ,hKaA-3LxkT !}bJUןĠk|&7+Uzk0x/ᨏ:/NSxtM##|f2ޛLB*kYT}0Mi¶H#rY|Hᦂ f9Ah/CbA]}.6PFTZ,it4Ti~r5X? 3^)3 G, vw xR7m$$b4I2Ӣilw"$7m841dO  MX4BokR%c^&{a=,f'NXއl:h;#^AQ --m 0;g.oe5Hws[2w΋& '01gf3$|F4$Hnr`DBjdKPFgHxE}5]_9\|N ڢeqZm?bi`y+ih21p%eQH w'wpFU)m;"25~I[/y"7dJ%xν0oz= y2I,B۫hu~z@DNi z)BaIUn\ULI;ubֻ_Malgm. O=hs`/vQ̆MB::ܞ>g ] tbҿd =&P)2Cˢq]ʛy?@1_ A$G(*\=OɀciB>Cm@İ3"cAGlozEG{W ,,}Fiܞ~ Ot#`$K Myp Npx&YOB]%R\p̼dmb9Jv k%&W)<]TW; *F 3@捼`A{X @NjaSB8ԽP- pO `U gS;ܵڅ9љDl*r쨌G%XJeԦؽnOir$Db $)G`rv F_QO]t5!sTn|&Ƞ%\{UЋ&rQB֭CoG3X0kϘ!ڣG|pJ#i:r]16_C;+AFs٤zCd,] O>!hno؋G>bYS{֎0?oؿX.8._ ]pR:#7R&k0j+~r|ǝ] b&E?Kzp]Xj\Ota@)C)IGMVfK]4[5:weY)>7 sЛ_2av:mC]Fs47ImʘQ_lt=Y65I[}wϡF^5TtSXMk9rȝnQ9rX;Z؇1uݤ62z*з,/"f;iAKatw{YTOFD3"xH5/ޢF RitkYg~^"tpᨽ L`M`FivwZn]]ZO#͵.@i.0"ܥkZ39# nEf`d!yk;LpGL$$s\uG)B 6Rrf6#sB&;D'u!D2J厬PsGhD-&NCuUz Ţ X_c!Ē"͍J݉C?@ Sa}Ċ{ȫx_$4L3Jc79NIA3曱o.b_?(jE7)<:-C[rD!4H&5 wZoIJ^J 4IhGxg߷>RKcRekleO> -~+ <;\~LcㆹR5+_.9w0yӕ =,bp5,օaʷU__{zIqBgR)x<\u89#AģJN18?F}Q=4@@p{9bzVd;x|l$$]|iH sQs#FxgenM2vk8>eD!yhD@) Yv,Q~IP8̅ߐ&mNC}Rz\ s(ƔEfZ*qSVUCC$]d8S}10~CHҞGXlMX_"pR k_(w٥b5󛵘PqD553Fݽ(|5 ~%zՈGqDWfv)p,S<˕9V@6# :.1 ?դpTl qƛ _djyW[~7'旐5Ԉ]kv#I:B.,?g[)QF{dMD"tW"W LX]IpHWl ×Pa#IAG&L[ts LeC>MZWof W`iC"vТrzuŁϟyT}!i:c'nq$s|wJgA6Cܸns@(s4E G9[׬RwQ%pr) W䥼i4@S?C_)ǖfeix6Hd~T3$gđ֤EV BKIퟞ^<;λ iG2k!2 &>& m PuV~No? ͹ziyR Aoz)q[$vUɶ!)y20ˑior(U;2r-Aӣ6xD<@"$KDKs,&ZhFڜ{]zj0+Rg=eI~zP3?k*ZX7=OC`(ZP2憢sM:WGV./o 6_P㖰wQb+5"M4Q=y|@P Gb3ɧ㢏T >]A2luV¡° L$\ ko/]'{7KRH0^)`+EF |dc pܫf0~7\y}O5{D[oDp)ڟ*^Q7HK0e ;VJb6hPIŸ5d3 _yR(Fxdz wZ&> 1_; `2yF:H]U3[oEsO!t1꺢el6L};jvlZA>'1TtϬ s0=s,ivAýsm1}z4qgx8{q΄^by] U2N,/3c"( 9N3B]x~>?tR[4AT%T&px 0ۍWBG[ v㏿Wд=D8zWWM3b4sM:$?t~@K6UjtʮfߟJ>Z3IJ1% ]eڼ[FikR@eڛ"Z c\2*l0Bc<ѢG^Ӱ`GlXb!yc_0}aͷ *D9e }kY/6o_U;J/ia.8S/8{؋]^RߟS"Idj{8s8&U4]$Vch>?zO{[?+UݸsN af]DkYC3zsmǖnWvR%pΉ 7\9ȸHamё(#g~V1z(W4{fz6b`!\5ْ?[DKZIMrjĸJY7t{FzG~m;Z$I)_J_Iz6BApܾ[|_(! mke*'&z+ y'בuHv?[Sf!%^hё>3 C~7[fp|Qb/А0~QoʓQz8.IdFvg@/qPtVZ˨iߍ11 Lz abȟ) ̟~:M k0W$#ˮrgƊkj9Шov]Vx};e2M %P"T et۬5Wkxj]ba?}Ą 7wMxDH_Sx++w(uGuNKoKhuDJCR dxc śhtQ*, 4HetyS(#W{q=B PyBL%{c|eH_4u@,,%q;Loͦv0#JtFJbk]JBޮ el9 x΍$OL?k3li>h SOґq>~a4}5>vh;L$yͺLu$s_ WA}"Eso[+9'>bPn_Ηl{NΖNrfLDE!"YPԷ.!/"#x@EZ3m3V{;zOr}H.vGgrte3m6j5{ۈB"iCQ$u_jWK*,X]BU)q?'h 9J )r.4_CStkYeVpibϳȴ"H9bCp5l,,8,Nw*߅\x#k-h͉R{`LF-"D, Ac->`c?;t)eq w~efiW3S2duiW4xy/n]1ʿKh Ϫ_HASBh:$gDEVЋ_Ez~Y\&p ?xHmL;z0q'Lc 6TvE?4;šE>aƎ C' %QN8oN47nsxa !J'ı#dٽ 'qq|:>Ry$xP9PɏlɭW1[YF;q[!x|wI沄y0pʨA\a<<_w6h83 I-ܗTP*&?T}ռӝܰ:򵻭`n ڲQ$o ICGg>.xd]ܲSt)sئ? Cɦ/>nG~kze©Wo~Z]f$!vHP#2}{2q5 0a~vzCu-*skߒ\Ai?$G_,xQ&k7dv5߷iy)(yř#XB? ;8tJYDQ|]샧 RûW$!UN8ߨ^s:N3Rwf*F kL\._C޾`;zLfl||K}zyvVzgB#dT45f^ ^8kQk;iї'z6IAz嶜·Qc1qKt4=BwILFlfx mȧ%eC Tj6W *LRqPe{ ,o:0j:PmnaSP7뒛Z0/M%cZ֏TXj]W xܰ73-`F5ѭBe-6oTڨ(. j"R D_&`E)x?6ol\u/mO\D49dspIALY;vxBCb W Y9NOr~-v[];[^:\:_}Pt}۹rHj/ce a sg@IVTO)$4~?vT_M$hנ>fMuG,m>o Ùj6.^'EB_|EyƬ6PV1!ËCqewϐ+z1vtwҖ5|;S@9;)Tf6%p"ebhXmX2$5Fpk4:Jkݩp*@v7< WBOd<~2m'BSoa](j!5Aж Y{,dwƂ3P4֚p~/W\o =Zۙ6?u?O=j@Ǿo-9kAw ,]7kA]߅!HV]KO*=Ct~Fde}1f+ogac[$95l ıh[^fiFأ?a:c0~)?;g[]]>hdw> IC<)Cs۷\j$?*1u^S'uEH#X3]$Ǽ:Aa_3%]q'—h ñ[ n?,tp%ұ 3%_>/JL FՔmB _㒔oxjϲe?*Gs^*wfX7fVCXq!sz7'v]pO^bK Dh"Qݣ2όd"M4:Zht%7WԶa }؝3G0a6G>+T[dD`nETY8o#1@ZBmȂ-oqI$4eo}Х>C\(3Dk‚gr|ffhY s8vz^06WFIHiw)m39u(0:&ro5rA0(ZFpaR7ˁ6wBl|E DOk}RE #|&|k@Mmw{PީR=2? ZCɋ J!Y;h%z!.>|H.*m'O>;#J,H>u-!WuGO-"6;{=^io[%m2p~LxYZ(A'?t גg:+ IY8¬+߃#dQ)~(B,P ܳm)|c.ߧ"T9ED&kJ'hYsl@le F 4']A11`xkʨCBcyt.NŽTETBW\.! N!</ʙ`* l\yM"VSvԇc'/m/4j-5FB lVn[̔ BbV3BoLFf>}tmƘ% <~k%˃uMͲp)抙A X3\9'ri<+AX+$VL[O <΁]I8gzЫ1)Zzqf٘O)&IQ}6?^\RGYKoL3VMPUӃFf#q9̴O'oÒq픳I/w+U!!}*r-nAmz%]&?Q22U&(AHc%Zg+qS9mzCLz/$"LcG=v<%%_*w5DzL92`Y~p>+*sXةtVأgn{Z݉WkX2bǾ9x;8`mnrcDf4RKuxGn35 C3j D[튧ژ)%4O%)3aIY+ nlQLb@/$tǍ8iJO,0+);%t ȡ3d}'åhIݑQo4OTio.V,9p:`xy'*uıW#Ċ*9UVrP:FkkX Ի|w٬ 2S1Hs'r^$ nfUW} QK3S,nxȗ0FWA,8\oI`tD i3X Q-kRE?'&p9?+֕0vK;%˜?,7"! ,0ʴmC2Zd2n=!UL5raҭ&- ~Ļ͂puDqkP2 %sD<R74r1=";;?ڑJg9 6M>"IW"}5, a+H%C.@Cc8ײ}X~L`nc盐4!:0 %L7#= Aml)]cr?Pza)@ 9- hV+.mx4Vp\(K STuسy/kk cʈ`XLשOMgSЗ2, zZ%ܭ'%uK/C;x$,=)OKwL- ^K}J~`Dl9)y6IB6 wU(q7+c: 0_/$D*lU~DK0$w2Rf@A~gGcț/p_щ63A6\D_Nn"@-S7=4k븗 :&L.6վG/?K$`T`] uUگ`!A9+ڥ*Wo3 dR7D{nN 7\5őӫ~[?(ԗmK&_IiWx2ތP( vm,41LOxXm<뎃Y&FM|ooHȯhQ~Y](zo#>t8&wuZMrQ/I {mՂÿľiéڙ4pxb_|-v.䟴ǿ!ԝ( 05t5;.GN?C*`uM-T2 廿k ,]+mi~zLF qHbooWɧ Nx-۪SuCl Ze$PtdÑ/`SUnq qnDi,4sgo4#e`?hQa;@aql5/3dJvD8QOMLVס^[ =[-f̞tXFY? ,e jŔ#㸳`nDo'6r%}bc)(q@f>M GkU󤖏,1ڨ:m[xhųkmjPmy'Cr\]}:1Ϯ2m3a1dKnq025c=nU~5_:Ә:;O oŠy1˖:'s.!- 3V0LlDNsT [IaӝRd ς)d8J󲂤:$/7lԛf2]C@Z@84eh!@5Z_:>^; ڀJĦUw^miJ6jYe_mJr0_ʸ7I;oղi~"0Oy1*1Q=% hNPmsq,YِB"@+Eq~vGgM}f@nۂ;[\ =ɲ ]ף,;.評{mt?6'2SY~fNl53K QV9a mlp&8X.G`lt>T8\wIJ<eϤ90V< Ё(bI;eQY9X?v-A 0oc"C\krL$6{T֐'ت-2ֽ YH.mć^.¾rYWitiTbA"G/yŗl|Iqgmz4yVgd7q93ϔ3T6n7>Fğ@Yb#__^dҹw4T)@ϛN98MŌ֓: њpEDQ]gs bD:_Ay`.W n_YOx)ɍ-Kz҆ahшZtF*8bJ$尳M,y x#-kARrq`ZT ^Ӕ# u+.v?w׉|W_qҫ5cG5/}s.rFd.*OvWT /AO`0fTfHaO2S-55!*D`Bv/ 10˝&ctJ I0&?G3.},3#@mmm1`{>5 7!^Nٚ'g?7lD {xe ,E?OqmSbFB2Jd UR`f<¡dN4b% ݩFmkk311d6 J4!^1D-`wjya b^dh$"R RdOω/~c TOhMUhvp%]#9s8v̩EQOko%2S%Ig3#"_p0w;3` +k?Mq~͋xPk,55=zFti dl5m˥Te3P  oQF㲀W(&7mJL)[{C{ j{RbXE`qvoA&8i=؞_^5QӬ(GςJ{v̴'-h125tzւ \7X<J'ZǃoN[syZ(0faOډw=?N_0Huy}N{Fo@\&$ 6AvhVV) s@lezq.MO'ŝ$fOlbVQ|])|՝{ զ\GAUg`'H UG5^(42OTyW]̼,Y?%_2DsU9{"J_HQ6}Vc!0npo}zT纊[tSP ,"v>(ZQGTj 3o5:~h\^4ɱt+m)fpp-t'kW.$r4ӱk`T1Cl5OzᑝVT Rd\"vܓX-]YY֒o5nz }>_JkQDc<$BD}%#})wfXPg=x&;$DxQW/]y@N׼T:%J'b=<9:T$5ZYFS2$LA;Oed;Y"K/RS8#3|:`0o 0UJiΞKAeݲhY_x_ G\ʫ 33,dX^ys)K]43']Xg"$L9]!.<& `̗ \'Cn1]`aUr۝ͳݶ6HnxCn!ђZs2Ґ=V5%P+tqSJw%7kcx}Vbg*$T,[z{ogBs0ϽٕpdKvߋww_?|ݛ_jغ B$$eՙDd!`6E~;C~ ɔ2G1zhsw7|CjfEХؕ:q _|Ou|wQry2V4N&.fBRZlI=L納 )I'OakNm.X7=;7ť4`VӋwwmvvOa$(7$E ҿ&ӻ Wr<_&'"Mub9k%!,a*I Q'u`G=r\xG|"BwԜGFƧz7BXEnT*ɔ~3aS=yh3K[R1p=>D ܹ+PBbQ Ϻ*pExFE3~/?ʦ.o<ݗYQ0vBS4'zPK6{!$Brp&cƨ-V.~X=)3ddPQ32rnw4 j%#< Zl#CXM! :y(E.Z;s mEYGYFia,5n(Qa2FY@-[zlq$jȳT#)b6/Fp'Vr lN]7S@a 4,w5<Q%ķ,7;֠~ivPDB(K家Y8f2DŽb/Q"SO SYH[)w2 Fc^] ®>p\ 7'q/毆l`5.>VEFv{Wi Ͽj 2c;LCs9WJzEYvToyv䳷&n.uH0ڳ'\FG x@b@6%pf?1V F hG bЖ)#^ޘ'QƒÿRva(p(;<_Au(IwsBpOFJnUhrW?U1!(ғ\0-(<Hn/AGLERHMY0_ t;ezХ>T  q#qrd9`<zze{.4Ȯ٦ Yٛn$8!! ؃I.DC}9B"M#njMObtuyO9]+rOo6줒]b@-{9VU:pY跕:f`<.[#uh, òIȀ0H\Cf'Ir/BC\.5;S+ (:TطBm;B &"s@T 0oD-Cjlu,<#Bl$ݒΆϢ˧+ Xy`Zֽ{M3NR i% K>)C58sBF||YNH?u=-gm(sK9 "zu>h/f4W|6~ ][ =E +;Hf|qęH%al#!'3eG*h"*rw(Vp])*XY= U6rԌVԀNjlC,d MfiG4(e}]E$ :TJ~428BT)zqu}8#ȇnoՎkLwP v' `ӽqqw?ƸFZGtgdkڷ[M'_~xfSe/֔7bT$ZYy P(})`!Ǿ ä9j>/H:< JU`(l8OQPcB 5.-*?!NR!,Kk =zIcTI) |r~4z\ )T!GNxC rX^7瞘k즇/ W|ϻtBㆄqB$ &W"&3J&8\:i^6g~wԬ[<eUTNXXQ~z`ؔʚ˦M)n_t[!`V?6 _Nu / !}̆;AZ &@(;AECbkyZѹ$&Һl;ϰcK+MoETk4,e"*6#]T+I 67Fʩ[b7q,?ݷfJ#`R3>,8/|0)rڽE78tu7" B7¢]B25 Ht6QvH%mCkadOnZ+3.6䄀98'3GL.4䜑0(HκoAh~;( y+} ygv'AZ?LӦj8C#AjV*ZIgq%Rw%LKmsO_l9wbc) mqlʈeHb]%tY!=ntʳʎ$"c4-oɫc߮_K`V_, ƂWv\V6d}TQHk ,&iÆLi37ObNxDq_=_ 9X`m|i6Jʔl[?`#; WC2ap٘s AFTw0Y6]l}/0(U޽׈nc*s0L9vVh^w'a8y,#K}}hH BsĴQ:"UpiT0opҔAg listaUL%.ãcQ8/Μ>pH64E {ȦuYITmDSLbrU;=0wYCt5&'hP>~ݿc58L.^K]9ubPlEjHFRZSZD%zM)1\ i}l~^gXG nUjeQ_aj%Hd2R,Zᒖ_=1zG$Xv\ os k7jƣ`G qV~x% AWyp91pB f ;Z3R1xN['B|->ma^ ߘofn\=8sMyK8Iձf˭O*lj ݐoI3NV9ҵZm#DC7P 'QnqHFQ5] **0K"S*Mm`Mzt 7bnHMkVH&}W?L/T&!pBß;w2;PD q"KtdIlBNn[ pSVZwǵ)uo;ß<)tv-2A(IڨdޫszÕIJ6G#O<_Apyb<>)f^+Z kdK[`x$Wq~A"hpTVKׯÅ[pГdwMΗRrx)MKo@֜n혐Vj3!Y%p ,4JB?ʋ 뜠[5ʼnϊÁ3z"}CRUؐPq,ZKIH)i[)0dU5F4@xxtڠodK,BIe1c&p6J-΋vMyseܴԽJ7>x~BgQR+ϿHi,5ҊYn1'" - 0cRE ţ KI`ţPr&O Ig4 |uIVaKf.ix;yqPw"ʰg0,1TﲖkoQhner;kW\WъF)/x0\$i}ԃBKArk[MxwqkQk#ijyv䒭V[xEjхc!}GSA. 0O oJ9Ӏr*|w lpEjׂp>%nh!Rt:Ʀ䦏/*@|]䈗)+~sl}WGC$ѯk3nV, ϝ6ͥl9.!aAFC)tf H{3T,2 ޺s"S6]t Yt1n6٭n4`EI'M9kto(5)7(SR %\Z̘(Lo6=Π;㔼E$/d;Bl#L:rWeo9 =Ywb2 E$ͫ%cU~WKN4( p 헻yr9Hk_F\e{_5wi^m@|JS1,n`i[ *xC#x_Z}ڬtlAq;t-C%Qu>`5Ux/59{VDI[y;!SPrd (ɔE+/B[P|&0D9_MGj3{O~n2Z/$ 9 fՅRwOr[o!g-.(PY%uLh˸?Y(!F,7.k>ƵH(O t?eGU/t X&)^{|vCr`b0 R`C,_H6Zr4lGw%6љڔNSP.>c26Ar~be#LMrCw(WÑ_Sw3.{/~zǸl \uCgnjr;y, LR`}VdZ{~\T-5^W\漵Q+:5*jȪipi! H}SS;حPN*\ OB^Xm(:&@r(& nXlhUY.K Ǽ+,$2(LTat3ݑxn8(Z(ĎÜEpx94}2KPM။}z]p-JA}` KRtϤ5+sh1Pǩ=rB+X! \Ǚ3~h[VPV}Njؾ.'EcD%2aoɖ='{zE ݿ|H!|a{jK=;ҋ ¸Ԙ)1BY(F1M\4w5S5 VqbKQ,ۅ{ Ҿ괷ex=>s$ ";d^ }/:uU4è6-^1Ž;үs6QR"T6ky]\fouq)]%M^CP |UOըNH;*!.r0y\w}_`2s<B"MFCl߄A,!@7 6?w@&hJt)U|ԘZHDPg4g%Z &WP~Q\~ FC?(-{^Ht.>pU-wuG+Duڮ< ,QOn;L.yhY^U8i{8=vuE Y ml4IImsg_B9-Gɡ,e~"" 8Hr<{Q%t7`P?)#+h0e~"bB0X_MNh7\ztj:S,SRU=zupЄu WJW 1d9Ps1aF=R8,^$a$G6m(6_;U1|uHϩ((GO9ey і=,= &wYg}9"ʳaMpmavĚ|DcfϮӆOq|+nYWCbo}{^9:Z`#|7!\ćdp.WzP,X8 WߚK/ 1v6KŚ3{|S6 Qhl?KGb83at4@RW=n |6ѡmfB;8.VG gE.B_S(3x%` sS!MC!8Mz`ʋ{}KyfQ;]4.K$$ިR =HH[6g$NfNE\ g8WN ͅ<7?ݜIPl+Đ6;rGj?ގbJ@_+|O "'#ds4z:V "#S^~OFTwwXX{Eۀ 񸄤mBX-q օ۞gIo#'.g~Ȼx%ҟJiXu넨[^uʼn=v4Ӭpτ iE@[CE|)AЦe>h9OTMS9-cp&'u-GggVOvBS%$ 51,kVXA"(CH (iak-Nu{;ʞ 6`Vꥡ7WI*G9jp3"=xQeHDigw~v/;;[Yt0zЖ|Awc8 i"ZGcQ<ك+- ңLE,a7cמ|pIȝPHʟ(MC0 13 ˮAUpTdD Ȃt|32: *߶9_Թ@)Hs*d4/҂* #I:Ybz!ް.!aQ^^[)q* T";oX!t@_) gC11cJ,[(5u''euhʂoH.{YqfU|Ι\PQ]jԂ"~R o8Ench 4G}d"VigFfNV^w2.s }ޠZm?eCr @!k [i%Uv\Q+g dשY3d} ?#8ru;CL<@ bH P6{ ^tO@Iՙ{>JF>I)iw%-Yo_窴GeZAnصg`یai,'#ze5ӫ.1mKv/`u"YKVii+- 3)s=aȴI;\ t ȉΑwҺf;boj_9rZ ʥCߘƯuzezE?su[ȩ i6V4 _>wxR ;f|UA9*Nu7A0mhF T$!޽:Wto1߮];^=#͕Ɯ}F9;>`lY=^%>4HӦꋉWAkثԂ /\h.EXuPJ /nb,,y܎,{UtA  }ZGccNj\arBj|ۦ/KY G vZ6j@ 2VֽGCyH x`y,A;~a [7EŢqD}ݳa(JpE6Xh0`ʔoɡE"{=PE8Qx` ߄dbBi-ǛUvknV-,znfVqyT@syٲ*U#yTtƎ FNX`Y5 ͷ G-n%? 6= $gQEVn БG`Xʹ( I-iNK=L2W#DL5hϝDZ[#6ܿ6q^^OƄ1vK9(ObKe>.gR=X(@7K+𲰖gV1/b0&1Iu@S.R η0nXqY>Pw9I [:H5Bak5.jI#7qs5n>`ܤ}DaEܵ7+foJ?n\%Fdv8}ې_v(XxG8|M$eW9NM㡬]2~_jppo<o{T) qfH"SE;M@Xg,A֕k6F$X8|n0ϻnml(_@Z. 1O5)TL# 2h|G%c"d^ =`yTt|95<9$uI֥&;Ԡu )5SwK //҆ϒS@)RkQm#HVgkf~kJhsTͿ* >zZlƜ!dyȀ?odo$>Jagc]\xv \H1}Pu/gJm`ۢ,[*R󊌽 Z~ ݀XEn>=ᕨՐ/n}$0qe.6Qڶv_4G.dTcp~aBssrP[Eb8<%/[C@qscc/~MU \Cm_۳Yy`6UІKIBncX\*#m!Lk{u*#.hJ֤itԞN[LW bjb]b0;:e;7_=QrȅӅw++9g' ֓'U uQNE<y&\{n?*.~c]>oDd*؄%A7Q^$= 9^훭}nWAx'܄╚bWJ1$UW^QZGO%2fZ`oeR`1Lt1-MTm {}IU'E#J|"[ڏ5րPV,Ff &GHD*jݶ^b n:o-6 R$ښg.F xN"זS"@ ԝ8)nnV :>HfBmɰ2?]\;!!;I"YVʥ!hXXcր=FE!OP ٦WY'D6N'J}$,]d1xd8{-ȳt~fg:z/Q=E *W~0]i<{w1Hb(4*j@7\"Ky<4&҆JC~\@Xp8bi:l35+RE?J+gPLm+jjaW]٪FgMYk3h@`r}+Hn#_Pʭ| JtTR"(j&Eu'2:z+U[iO _V (ާU(R% # QsF:ETLG,f73'x'gѰ$v!\wB11M7떞o/5DY֭'γCAW Mc0\B(+o!@P/ȆtQR1Bc.q'"Zp/J3 ¯m=J32stB mmLX<4t+ x\ih#9U]hhK9M UN'yS.pp@'n~P:J|ʼ (77m>1G;TPuf:=\=AI۱"t6"?OSwx1L=CC_Sp3C[x?;ioaޢj^]Sr3jfUk}SDf{:+ׄ"7vu DdH?QSEj]3HiNO[p&#&GHh/6pe|Lg%/Kv~/W}D&-83t,YQh8ƿ|c;Loǿi{>DLbYe@|[RMHz\jfA<ˠEVndGc1kQ.ψS }z(.A^UaЕ,#fHrB'H] f53׃rqׅ,W \2lfAw S r `\XBԮV}7o5#S5`Brs.nCrN;*soʣB0d*1UqY>6.rt JHY.֥Cxv(#ُK0"Mȟ+oa!rZ5Ƹz,Aዌda2z0>\!}t|4H05k1|>:c6=H o0ChUٱ:aɼuFd;):j\ C^23vT0tc81S^?O/6\# 6f{' =hq"nXim&U0 P吳W؈7QVQl%CjakT됂}& f%Q}񁶯km@TyCCnn8v^Nmy=8>8:sՍkTkI@ {i0 LlBx?`f+E%1*n}Gc}j:`0<` $5:c(>DWqesg Ɖ9x-Ybssl%;aTůzпq}LFG @6Mb"럑|O w]j JJDgaf'AD4|X{p,އ+ .`$)ms~NlZsr|'<.adQƜp"(n9,ve@<Ǣ[. z̾fWX܎|(A 5G>4_;3xRjK7s. ppC)rn7 xhOy^1:Ţ#58|YВ35د2.Au{B-YJ8kgvvl.<4%jԤ$r}챘|$`䜼X.b,PpSJu EoK<y&rn7hσߋ/gFa y /e')!)oMhԝ翷V*-7PPˇWVovS|ԌN]hA':}~oZaKZT(']c@0GXC4m4a7#ylLFlyJseE5u{$ja=ѿeq:˳eڻō.rRLLoX,cU_fшu-8jndjun+;TWF1 };]IiG`?:~_ rbDY-оS]FмFM;ͣ+תGH BJ7G!i0xTAxq +%KrzAXf=SuvˬW|2}G#xY</u-6X̪;ji[+D/ϛՎڡ:.igV; ctЀB?bkv'̸mHdzLRДظ=C|bswM1bXޱW<Wp 2Pk78aD{̄W M nMn(sgf k>u+Hx) |R\G>e<23NU( DIc7B3/ܶ`ܛh\yJB];nv(ué=횲O8FIyҸkhܙC.@Zu-S3N6H 4%P}sq8Ҭ8;=|}ʵ0ZҝVxhl|S"T ђTBUGb"orڍƀϤ9i/}Cd $@0[yw")ks(.,}~\$):8E$ͻ!b;91%geM^e|6sW۽(Fc^t1zUM1!̠&(ǝd 勱yJ.۞AɠXB>QW6۔O"/fqw5{Sv/zK wH,z-mr!Α>cQЊU2r|%/liZ/Eش4nF>uտ5j'G!]ڃn'_Y|F8gil256;k!cuGnHکZ'[yu5Ʀ] 쥟(A62w>f𔐪eU d(O2@*}s)!MgbUG&DbMyty2p ZVe~ j{9_Myq| D,rbנ-{xK6'PL](X(酯P`a< n)̱.2(9PpmGif yR i>$aڄ{ a!m} g۲wȕɬ3n^u'Rowcat%Â>#oYAd1zh˿ #ViŠҷM;r68eby +z_|܉]!`Dr:'Rncٳ~1 M@+fw` ­L _[V-I!) WlhXQwp "& _lOVx9u=WL..Ol[$ئ)ZV($HM0kt)%0nT"6>>h;32f=b7iKnkžKg kDEu wsǁ2暭N ̃sE!OkB[Tx(3Vu\ZQ0+}丿Fhue~Y$0|Q;(6@K26~d%]`np$XwT~7"5g'FVUc椿NܤF6& (EB$le\9YMQ'q\ßGD2Y%mR$&'?eP\-i yNH)̂.4X9Z]Qt&KͶhR9N2U)Cѱθ֨ E#:#dۑ3i @cK X NN29!gQlG,_cy d&T:YE?p`m"؋CR.;.l Re !A߯Qi)cvKgM,5т r 5Yn:+F(εmaS92.zz&= 'eOƚX8*<<Ч@ ʎ 00y¥Oy7rvԱ|Ɨ5ޕvZ?nBQ -:XVvZCڗ'ކ3jgt,<=2^2pخ¦;<AcWzOOOIx#(W)@ͽ9 p?żAdKxhAGa1C%f nWI4(~Dė_A"0`N61RZ 8b!ktx9!rCCÚI--䗗 Ne(*srEH@&LqKV"[B+?߂ jjL& e8sFDg~HP"w8j4laBzIY-c $X;*m )M[1(YBt+ egX-&o\g%HWK=!ީ|舣Y|j$0>ӏo5W@Զhb%؈7Hzfe. lC-޲ͯ@>xgu= t8gIi_6b~C)WVLέQW-J Cݑ"[Iӥ(\vSw {&=+U#[$`WW4o]El ؄ݼrHEy/w٭vXqQ9s4nZR_\yi( ΟZ ;y*.gU6jK ͚:!L__Tk}!d2 [z1#=j`9)_UkA* uS2MSv#`]X?2WC׈L>U nİxTBͱ7ȁ=1`=L d}'[qxH爢^kvZ/W|Fa ߴgCLzr( S4ĩ|*P7Ap!Hpu6eփoԚB!hcg1le )#D: ]ΞCS. ;ޛ5"Ϋ-/>k,#95xbBuB7D.s,:mj?{M; ;T*ͧ[5\)O#uo2KPя ~ МDuN*W-IJed}Rw6@nB/B<&;8bY鎌r4$W%|,{x*H6f/ˀ'k~ iT`+@_<[9RHMmȾxG"DG|r/"Sn-Hl=!.#;34S "KAh 6 .-E3N 9*v6$X s*n5pߘCPn_z츖Q3.ˇ,Oʘ'o I֌EB6 lWx j )H\;D8xZj b"8ux"sg(Qya1 *\P$zF3TNgLLRV/!72Gڷɇ_> |9˯΁7)F2q0=<"Vu܉EMNzP)Ny*bĪ>2$$8 ő:K輦{p=S`p|_a(~N{ m Ât"7}wᭋ;Eū2[#95:sZnC~;"  !~VGt@t5FvrY 땅7at {{9Pendpj-%Kfg<<ֱm}U#6oýa?zL wu IU^J1qR%X-12QkcA}) d(%.D2qFNC լXrrQ[*jWk-Ղg TJI$YC3 =K ԯM18'2M?= =K>/Gt.0ܮ ^53?XPPhr慴T!R;>3pKw%+VSUFe;Q9Iخ4&] X12p-ʠ&kYA *R9OH7}7v*GȀk`6p ?KUȎ(&7 !&c0n TWosQ |NIiYˠsݧ]i;$kT)^Tխ~ِ fttv8Euk.g!_,'=rZ?xfBwGl)E> \mլ y^W2ڨFGRyo-_9Kj+G⦿ lj(I(R5OjΌms h}Vh46^* j򼟻C,Ti5A&@`j F$bAQl2c<36"scˬ>WGSݎQ.*mc鏮%@Qa&(*~lչ꛻+b sޱRlX1@+L}G? =Si3l?Lݭx)iTiOK}Y[LHWj T4Q1tn RZf/yVb,:jN(o1t͚(~F,kE G<|xC}8Ly,!01@m H6Z$&?1dU}U;6(rkRS; ȥH,@?m'3^C uč5K:\o7pbUp*smk<1a!oںq*@cpfӓ2S0"Q1|t^/n SSh yрX'=O(\@^ @TFuErjJ 3H OR-|ܱw41.hK7Qظ>-R B9w^F=ϫ;4~d /xLWBL;8#ݫ<:Odoyikg}P4$m&E#Q2u9 Ɲ``ܾ|,|g.`+#}$A Ꞅ#7l?k=)3}ZU~ASl~?k]+Ǵ|oY+-b!dwHw:52Cꩺ[z&UAs]%g/sdpz'%rQۏ/tث4#nآLkҴQKkfIvL $Qq AAa_E#̳ 83WwǽHq )BL^ŌV1fuq6?Ē"r4E2B.o tgco5eZCmyZJ4,u nC&Q2c"Z!!mg쭁p=@F_qٮ76I?~:h豛QS\w1~ /%9u%{ayWDGc3.,nY-@jL8ajmՔ/LrA'87ч"Nk)+ XN1`c|W1g f&Đx8/;$Rk?RR5F<2u!Xjy gVv"#W X[-1f/s9.hYoC%g'K$,uP/PD(Bǂ8tWa~[_>\`| Fc?96rK uo=Nabu!:#H{V(2aIVS, ig;+"I)"Dcl* )Fb4tYgdd}pI (dAV`lgn8}B(fCڧw鿹C6׉]`k_ ]c5!y$~,j#IĚTRUneqJ8թ:vT/nG+7;!ֶs5B '( e M kD7<u !PkwB.-uզ8SG-SZ ;U$w1=UH/;E)q+bɟv5!DΨTM8RNc^5uBcz2>v[Y0,7pF6FcV><#QZ^8)R 0zsbÂdr8* dR'Bl3\g oBRpуx #T+$Ss0y?>j|+MIOHʿB]o:77'J#ϺVэb!|3NMIi"6սRT򐖷wͬ >wѤ@M0avQRM8[6MIZGqLFzY30M; J&QZ7LlaZ'P@_J']K nNwV0tnL6lA6\ T=v{ O6s߄޿&`֍P9J}n%yR_vBAj^E/I@^!'vQ hQ^gn*VB^pɟq#b)i^)Ԧ#M/)R3c`0j~ڷqœU^bzJznuQwQ}6Gz; [Q60,ݝh.$'3'sNyxGrjdtv7QH<+ :Y4!}s:C'@_#6 6,_OJhfgwГG`枟dWC666A\MuQkIT$Bb]Ay<{Cj*(qt1-#Pr?Fsֱ-ya - 0j 7N+},nr+Tm#oImu CE=$PȅtIG 9Ŝ3^jo@QNL^b D_w=B @tplpށ\yI1{Y˗ 2IQ Bɖ`\?م1"_7vA۽ , MYMy*J@M2†F6 +U-s;7U.;%Gjms2^!wPvՐ릎=mMW* R:y26hC|Xi >3 ^2-qј,I9kp.ڝ<8ĥ9B\ ">LK'$ U)|Qov"q_Fr;Vj$qCIdi `$kjo^G2&j, #d~$$)OxĠ;\<*Ŋ-^zKY.I+xrH"%yzk%'.Ba6]6]]`VU?vUXfqM3I.E(ę`UbN2H(;ln"2\͝1Ņ`.\5&=;˂HJ r ųV!~k _x73BEMၷ=*X|td3LC VJ;!] *a>5+ѹ 򖍐>, +pX[Xt5lglԋjsŎݔ2`PȸjX@X|ڱ45uY'hD0{Q_9x$Pħ)vU~۾ZS/YB;S_~- [ZU^]Np9'we9b"ًRGwU$pĕơQ8S{CV3!HYem,>?Gtc̐,QmjpC= )+9u|cas ?V z^k?&:\2vXTF?K"@\D0BG3Um6b2=' Od]/wԚ`Hv{@ig/Jͽ B=ʵ?GL"ҝ)V Wdut[2R?QV4iDWO'ڌ6O TrEܵUϊ1k sn,pn\Ɉ+FkhfV#c559PGH9P$ v@{@eɻ\&Oq&Y dOuGR'z ^WaKlge10E1P WRi$zx4B<}.z: Uz4[Cj^im68- 3p/´2k`f]Ɯt  /"7z&8H6*ҷ1uN 1 sĚAHQh[QPr=- V[UqԁԘ,-WҏF*68AUC)8@4bjE'YO-dacTJZi@KT;UgN[{SN=Yo8.ōf"`2ROBo,1ہ:Ogen~"ZI/.Ѧ,xGtW? q7N/ɀ΍tZsD9n槶,_F6r֔CI>R9qoH7şP W3 @K/#P@G|j#CkCkQr&3X84TKg۲x̝)7 Ӯ í^2CRRw/۶)DVj}|8?fdm¬6OS>VG n cGqvSٴCUov1tR-_ 2C䊎 T]P7lE[}wv\)nF!sm'82Fd$Bl2P߶!p3lxQ~!Cё!vމ ?2iF56_Ȭx>R=~>Eݎ{55U@|[Eii}~?LF' HLugs]ʼn$gR02`㩓U5#Tҳ֮' q)d@dry$Q(W/'Xa/t⫭"O!ʼ m?6Uńi^O)q?x^K;w1,$t @f2VnZqVߒAQ%;q}(!Vq^Mtw֪nx^qsnZWLYwg1 3,U&Ϫ010CtgfA5Ypkj4QXt9.ïscC2JaYJ+r74W~(ļzFHsQ/U@4₺rr@4ީژ>wMz 0 A_53B]q1&F0p+E\/袝E1vH"b Vk-`T;m9OGPh#(Ҟ,'F 0 Cw NMssbxDϩЙ: 冐DpOQx#>(@X 1qʷF[ 7Pqfus&6 -V>m]hMO4!!3]_,MDAf&8o7Jd=6+AA .++S?dzqx,y OG &QAdwvyjcu2%H,0LR4v6%sEZSV)>,swQ??Bԕl{aaZ"wA9Sdh"+xUSdA.ʠМ̓E@ 6׾9{t;"v[,t2sZm!*8DJ:MGmY@mI>wbm3j!Վ \wKT7 uI m7iQjzߒ r}L|>Io>r;pcr,LBq7*ê]Lߡyusȶ O3"xH:+.|mw#[Uj<6e,Bc2]4 ZӁg hR|=+"ɅdB2W1́8: ?s9h02WJ$*-K<H QW/B懮[vTq_'Kxd6r?;OG̈"?P80dL:T{z>))g\ug{5ĊP˴-d!:fT)䟘pZ-gUPU ʃlLsP8ihTbT($C{|t(n68 V= :c;7%8W};!Y@Y?26.< X!:ƓL1AӚNܮU5i3:ɛo=V5-޵cAɈ .7EeWO:{rO4hH5Xjax\)'H@\mO.r;V˞ڠ"s.: NJy`/ D^"&}GXe 2gT7ƈ L|#YH8v_Xp\|*Y>y(oAd>- f|~ [0Ш4|s.tH_nrJ m#&M?;YwBTچ,)fṿa%6`~)7ƴ W׈}U^)0ΰص:7-t)jП;3>\g3{c0 "U+H*6c@00*i,-fsoG@A?d %-gkϝEB0sou!VxOy4^JF!Rnvljz;GV~VV3TMc&3gŨbhtHmVĩB!uqþĊmz PuBP,6j,u1NV2"%GpcԨ ߦ]ãH{6@cƝ@_7fanWCbLNMO>Trs@@|2d΋NqٔòpaݯBA?_ł`aNl}=X(\jBԿ%;vn ]!"Ic;v'?wǻFOE?K(&Ҍ&eu;VU&cs1i+][Kfx\}e38eTkNܩ+[GA]ˡ،c=vGeA\ P+S 9.-qW>>o&4A+^xFMڅh[uX.ڀB(|f "8>&ڸOmʖUuQr+!J]4([hWbl ~Z6Ġjk%ybk olsu\ 7:h[,V*YOmr^~/+A7/=_w7T N! clxp$BqZEmEXP:SJ $ ZluFcIsBxJlnD)̤P$673j:Ȉ8\"ércMfP4KU~% 0BG}$3$'<, 9[Ln(Z^CΜO_InX:M"~PX0 zCT0yu r5 .;$ڭzNB1 `ł\lJ kȏ2oi-"PS\\K$e1EnȕKmׁPhou(Fﮧ뮾^3Nv;iў2mCɐÌ>*V3ؔelkh%pZ^7/iQ="+w`~+YaUgr$qٶkkp73mѧ8rG>ùtbya"\!uU<=oo!Uը) 0 dh~X<.Ա*1\a_p2x=CgarqCr5)}z~ZA&LUz/.Q,:8 ^0CPvSz2%`W,^@YLKVKYt}7۸к'B^Z;I Z{,~$~00AjSL,;:F_mG-.1 xJXE&CM sN1(µf0W6ynVDX6|`HFD&nZ L8b d`!$,xZppOLڼRy#q!"Rq2 J' ƹ!fzwzul|bPh]ޙw8mwUѹotڃwf+:MOyBYpuf&Yv5~v)hsi&RdQdBf||rNy/IQx\XUEJ0Vt JmGM_Y(&kfX>Z੗B-[|3 ɾ-y;Mk,;um+<!UPB{$Yo}A%*c(1@@Xi&7,|fQH3^`KQԆ6lv1='Bb; F{'}Nws>Aq?]_st_6zE+ayS3~b0E\&wzOe894" 4`/)~fު' ]^mc;h]SJXK֔|j@hZJvNH[1v[UUD{kǡ x/C <*ǀ/6+/{BJBb$,ypn}%4HrE!sm}V"R*a4\:=9 FPa~L~_DtGZAAQQ˰ :\le Yj:9U$<U<\袇~kF R(7Tk[&*MiIStNFI؊ [p7C'S#eF}ϼ޶?.xXȹ * =&x[Od AofWZLCpB\{?NrhĖW|S>.mo'RdH:@:D@ jNrDΚz$oUD7Y/$ᏡOeP@>z ~ES)No:Q B9El14/JWI}nt;6 J 욊* Oۀ]G 2> ag|BNDZe/=lv1zrLj+~_Ea PGȁ]uڃ+&eA߽ R00s|F\3ZDLɻ: 8BMj@${|Qd\huN-?]]saDGOXi,MTW`%#hwZ!ѐ3t=_?5iꍱmJ \oC`[;!Y]_r 8GY髠ȨOwuG!i^,N_F74txav5ϰ/B^ǘiщj> cMFvE p, Ov}= ke-HLs>ƒ謡,;(Io )^vp]xBܲkV06=q aQ`-DK`Mi]f=zt![M7߫X>>p9 v^DY mh\HB-\hۨ\ת)`pi`-""8R[#vti52\FFQf괝0N*3:+fA |nV`ZI2Ƽ/l95]K Z[ sW@ܩʁȦz#MEGݯ]VG %gfozq `3bmѨޔj +Ya<|jFh|GS;X߄&V|2fh4h%TT[e(@gb:|ITKt:9T6ӽ>R : ٝ~(\pݿHCqx1>|% KA% IzkVv Z .go6)¾KRO |FyiXz; 7"X4-(vr*vL-:) +Pj5ۗͦXU9O;؃Y"a=@%N;D _X*@#7Ydj߈6f莩ķ3+ķ2=C}7Kgo zTQ) iٓ%X&ϓ)!\ʿ^١3* !\gT$ XW!&t+1l‘;S:uJ@ߐQ=@YBj/c} 19Zk TZtIK|tFwOBk'؁FxA)C$ A Z;~"P9Wd<*v#+6# x(+d 7duiN[RQA"Yus;"4Dʟ0ruuŠG4ƜS܍eqh#̯H\pڝjTA,Ϙ]~~z{B6n> > 5 +-ly9(/@,H=rG=E(P{&~!C]} Ƌ]CD~k"f AbiuPMu4ky`E[ 3 AB^NQ|i ^T1YMzxA9qshJvs`T.o~P,HH4PGrTE&J)a }cFU# wOU~#7"0$WP&.h3xt4ڢBZv W oS&t"NpvK6ӂ,#[r,rrn s4xzz8iݟ oҔ @ :=aNO΢+LJaQ#e8L$6 \*mY2??]ڏl~WrvE>;̙d zѹ#I $~)Sn&BŷIx>[ŐaʶimZ*f=#טe-rmUͿ[BAˍsQe/AχUF4Тy{^g zDLzN2ime.-,%ɾB&cwn-2- @ehK1+ f$9?Ymхn/a(6&Q癩quhU#ًGxa:דWMXCmiei!;H*\c9G[^%@ÿ@a]~)q:rHdi][IÕt46x*znBm5 ʃ0ExOP?в~t!tou:zo[™ %z>JB8LWJB:4b aYhgvZ@X"cs\)ȁa7B5^ 9WZW؉YOVƒ+iaħ7f|5Tۂ \"7r"iI{T0FwP.go%/(X{0/_c/^~6~մ6% 6 Pm);aZ,Aj#CӏGjg .{nMmvCwi0t67\! L8JXؼuaJ;w-gLj8r>}>8K̇j?kH˿гIL#lU^ 5qvهfw-ݢ`3y?w/@挚Aô||bx -.ze ۿ)ҧG6ɛ0mع$J n{wѷD-!~fɭ6;NK^A앍g0,@FCDDZ<@/j5A4 Ek;)_\gއ6Tc9C]w3%r*A+PyK%e{E*!`w8Q*/33it6 ˈ s^8~{2.B<#R=tU绉=3s:hOuw!a#x( МmN5 @-\ a8 Z|i5Wd˚,<u\eGE q`oxr)U/*LIAWrxµ)h k)1e$Ϧ`F* F>+jkY}R, ϥϨA+ѢƬN#I?eN-3,\J5*] XW/p WPO#.P60шʆҁؠ0 iW:0ۃUW8`8ec[:O>@KxN ~@,R49\ _h3ϨgٽQ"V>O0F).Z 'z̅CD>bɼa!Ă I#e+ }(G+#G܆s>,K+X'P*}MĕK;'\wj{>=+UE~C̆hJ'2x1b}CqAڳ@Uj65!ܐȶ ;3~J@O2n.!Ԧ׌aGk9m.;t-hP׹L!W؃Fz)G73{|cPVY% 9D}odsUG%/(smښABsJ GFZcʝV/yM(r 獧ETxʜ؝1ĖP$]L}$/|+d(loma j*QjMΌp&rS #"_p 5*&#xp&UVP>~x:-Euinlxxq䔦~|H*XM B<~:LSh0mxB]VS?@v[}ϧwrT|r.0R3uP!nH< h`v/GDt\6cʜx_IK_A^Pn|_I=22 DlȬ XZ-eG1p2!H)TX{-#I:e]J1@4L *aMPI%,Na([;"}6FĥTtqu"di|5e?OS@NOq|n%D)in8o8-:ɲ%I߼'uM&_MfRqi%65m`{Iarg|$zgʹu)$&5W4ر ga_аI"K-"6* >, 42yp#ztCF[&?8zh 9o-QI_.L5B=G#x sM_/wH23߁~R2wns]w-|C(Ȫr Q3yӅy7ܝ *k \ @,:s6\ f~"=@$@m6U۠]v9 ]PNxFĕֱ &~f)i, Ga8ŧ%zqIrXc&~v %]&*ۢ'*A)N$SP&WZ[gDGg(yS>_Z#[ t~"SC&ð`YDw[hEiHRL`>0 _*'Jsیu7 +q^k˕c/|Xw(v5o\" ᡔG>Z=xȭM% s$tCIgU, 7`_WT ~B,~k+*k<+s o3)#;&lYdQiHG1-խeCC;oI* ''??WCT&xL#IW$J"?h<K {\kDϽߖZ€EX-}|<#^͡-xV44xB bZb+śuo28ݩ}Xco[GUAY6MpUZJG>f cB֬;;|tC{wH'`z_$?w=+; WՅK.פZGBG!(ѓS^ ܏fn_ tϓ;9`{br\R4Ρ=&lKw e]|׵VQ(c^ūQj&UV#*~c*U VCp(RdZ4!ުL=7"^`mJں (MQrWyއu ƀ n$!hy)c5`Ix [ܤ,-̩`oZcHѬ3#μ:/n.Lo&YNqIs G=gCR=`mwȔF+)ӕ.t4unjb|>&i9҂Y rvWs,rWZ2zw7$IB%7$G3^ohfvp.Ṃ1_H-U@lGW6hR)*bl:jT!z$u8rD]*m+_ Vܨst}hց*@\դ~%Z3([֛tgqP};0nC JElԞ?PLj5^r8~YnU^_sv NМkX`R q BzhTZE[mU;npX(B ݎW"oKai'^?h_[Hcf5/aqV_AVzciK:_􌺝!`D$6M1̝[Q&淠EHgtʏ_Uu%af!;@F "z03KQ!פbgtm2lQu@K=Ζ:F> ]A,e? ~cMEʔjNM"¦t#70W< Q[ƵEk\ٟ=yT/%ڏ'" y*JŸIsDC91z[D'Y?w&N3m {.W`_ҋn22IxalQ5KvLYp RP2Pگ]/ `n;?۵ȜIzYA~.qn 9[1hX1a*NɦKixIӍX-rE,X=z6(ݯ}D-$11@ݶX_ó 皹T ʡW.O-F :+ ĥD{'zob6,1 uW#)H( J#Zo]Q̪5NsI7ySYXm#UCVv>BjĐWe%Q?tP"'֑ApיU@|_&{+U,UjHkLhthNW D偃/.C Ѣ^ Cu7D93Srz6W͉Xq#x)!INyotlxws {mF #GQTHez? n6ᎀJ\X6Y˄ޫ;\jPQ'yA}MD6起'<̑g7ɗ<2A;EK[Be"lzuE.U97N9[hZA]m֙6WUKjؠpr;֮ 4jJ#C,qz*K^/KR]^Tۛ ;@(kCjjnO.anrTGE^F {yAM_Tr O$[^>rJ^ q3hX4Xr?,AkåhĉЯbto-nIӗPxZb}}!oT|n-+xX~Z'W2][A4SƐu 8 YU͆<4FD+^eSs9;܃#Tj yWQ)+ NS&p>kO}.RP9٫t;9?2ϩay?5$v ״C{Qxyމ 5RKlG7lopTw:waIT2RhX~p<{Q%y:OU(tU;homWb3&9[3SӊF\,`h{2Rt!iL^c`訶?EZyVyP- 6F>ck?Oβ8`4hRxmztk|!&1ORT_kGrzVyD/Ts}{8gY"tF'Ht᜾h;lAO 'tx?(ބdtf1oIG,Ehh!N̯\HDElX; MwRf. vLR[sͬc+`Lbۖ14Gy `!XR_fQk~،7Cnٌ̞cZi~ukko`KCuʺ SbY-\E,m fgʿ5'Aq>mp\[ &} "3tCMv($g%M?W!H1H lvl?iϡb~/[hr\|Tk0vݘ`Svn2Ɋd,}|-I=mHSy:p5*P)#ߟ@x a6ӐS%m꫌Pbg^j]N"@A`Igu\k 5M<8 g/$ :ˌѕЗ͢d%(EjTܶ]֑+dƙoS rK(Rdor~D gΎ|J2{ZN[e<C4@*,iHgY` ;ßW3}1]yák[CK1yF6;^FnaTn|ڬU,T8S]K+>ϯQC€4Z`*rMEQUl9Q,,{"2cHaLIX  kӲKҨʾ9z!0YH^y(exU=GMMNڃhcp< Be,XY`"sBj{f5y&gȆEN~#L RF9d(Go.5K 1NJ7JvaqJ?lCtN0SA_/O)p'Y)kN@=Pz(D;J]S^~Zp{R}pXD]|U;^A_ V_6ٙF:-7c'^9QN© _mp7UdGںǜP~|BH2kTug WU"K#%hż3=F{(|a8>f6xT[N8A ͙YMfQjD &[]6ˮQu=~A^5JS5@ |Sg  ԫ1 >+MA6|"_ >\щkI,2;2]/UD?T~Х{ȱE-ܙ ,k=㏙ "6yH)D,`\ _MEٷp;~͡CtðVj"uB 49/U ]8C̰T1)%pº%L pޱah0%aFf`$rerJFfxl? =N弰ɂznFx %5f3{ ~i|Hi,^ s0r9l+mDzV:U/k&ZKd|^ yS.&H@$KWV ȮKIL|Vµ@ݩljw}Z_\Bd*wJ9hAW5DK!]ϳ (:\&Anޠ=PNDE+FQG2PEuL8,/ݱ&vPښ&bmN|\?$7.Ͼ}I\5upK%ope `{S&DNɲ0u q-(м[tɁՊ^ɍ &\k!<'q*1l`aKQ6үzwzITܲdž8$xn'RoU1p+Q<FFOxs!H?a-Uge06l[ eV87Fg^[;Q"m &x3LΧT]McߧR]soˮ*l1yL?)x"ǂT0%&w'@|qN>weY24|YX?:oDs]•gȮn~)30IP{"w-E86PCI'Bmۗkq[ gu{4gה,& My_4Ǵ#UdUAjQV(O$Tv?=b6{;d;F~?}$b:\+l̹tʹD mOS{1VP_Nyrӏa|$٬XIe+ ӞrN՗S}`z$@[Bsynr[3j 4E&4uX5N,@?ZI& Fq>mr=[]?dKSQ<,FAFK=e q@ჵsU-z*i< p̷WK!+eya!]Y<'3I"8V#w1f.AkwLF^Nríz Ziʬpq5ҽ g!f~OV A=mX:QI|EDw}}LJgRUodjKm'AR鐰ڍ2wԤ J3iLsI߁9+/&tD{1P3o/ҷ M 4ͱWFq&zfuINߺ8$t4*Sg^4$k3>t ƅ]{* #cQ,o,8UQ')xo"qtmk黸*B0WfȲj%P@ cy:=2bpgZ Cܖ &ŧ:Hb5'"-suY`k]WJav ]%jip=׺ԜQHCo2rh}Z66S߃4MΨ擬k:2H,%S077軲Mk0:D F|P1"A: /B>/sLF::;Ipq@_cW7]!7LIٰ Ey1M`쥭*b6{ qH) d.9Ziˡ.KEqwN\'$4V$KJKv {8tZC+=Fֆvdv` ĿgTzO `l39#]R z_ wAY36Oŝ~|?e3[MFBN~Iҏ Xvr7sWm|'nب/$.Ym@W/FXp2HF5XDV;-4%!GPH 8+m{%aRonGj(0.UԽY5u~DMU^Dz/v[.pmХT#<23x[ܽ{UП1D(fns7`U?x%Y9Q+V֣٪cX?׈.w\(?YFN~1A,mWw=y Ϳ5r{e?D̨h$i)l#<~1^\Y@Q#va\sa#+ ѯZ~gu%6n)y+/_XzjiN}?S,i*R,lgdޜ]X;U#4s+{o{փpkd^/xʤZa_Nhq oMq j+] X( ցׇLcdK$( e FY/2m=&8Y]-nD`”B\"'H 9sDN} kp>IlO}JrX)~ MHdA27WqF$zg}k.Jaq"ܝ,tucC(Rol\5֍!p &HCD 'εsZj*XXaE+OD:=nUۣ# (WkL5,x=T?˿{nx@- dZ=Q~3 4lm>@xxyc}idH3g ǐQpM, mœME#BEaO [S͋O@09N'Y̟!d,Μ!,!g%rqX]t&O;lHnNg3]I촃$W1$*@JhS~ mu&=8x:)Ș1wcDŊM8!hez^Md\&o9I9RQ7@@Z>Q¿Ihdz]3=*{!/ Qhσk̍pNJ7)$ϵ5d?LG@ĸVib@ZTloǏ'+ ڨq4 ^W%g[[{1 qxO0lju:]-WYkל5uަoXd-m4)5f(4\f/pZXـrPD*hhhkm+1QkfORXj06AYX،d'+"$ fٿ.V}5msH 9&S(sT ]~5T-׈`ɱr~_&js_z覶d|1P_"}7]+Jd""8 yqX1˾8b h<@emf4-(VOe`TyRmV*+1PJ,\V>*l0\3_  F~.rx_L]q?WMj3\-N:7ob? |VLLGaC4T$?S55-=-$`}w,zQ(!2~bA$o\ٰt1Y-hNjdZ4t]uwCljv W[wzGCi댛4 [ Iemd_P~TSP)󙙱tRX9gS򤀣Ǻv㻯ʌs3 b R]~sG@\;D'#lʙTؗ(ZWl[X QalֹWWr$^Qg+Jx 32{cH06XæHzϸW,_mk@^1&ŲT ®;ķT{/Lf$v,pucĀn~)Vq>wUH(j<wR3 i2kؠqX ӗ8N^‘jݣޤ24ɮ&rQ`.X+dpwM8&$M#\0J͍Vsն-Ik{EPEPW1<ɁXSMQp_VNw97V:S6WJ`Q6BA >[ u@ xPDf8OY$nx3;1-syx ѢZg"ɮ ћP̫1qܤ&Mޫ х!pᾡ̞k7Xh,rGPuю :tn-p,%;H4ϯwFҐAA-9`"jSbId5Y ~]ӎ2` = 1\2Fja<_0LuG7O:WX)b&\JUA8ũW =wobƵ،S^_^KwsSWy|%?7)G\kp2}C]_;º\:֗I E"Fhe Iǩj1=XĎ0<>h+I& yE.%  -]@&O;ŚM0CVo_zm}\-;̍)xx3G:45ϭ5hk=- O.|W& E ^:f`EmTfv5]Pj]קm롳) ]R=_SXuԏE)l'v n9XWw\]GWۖAم'g|WxGIf0ÔFxk(D' jUAbe(ՈkCF= yڤr'gjn\4O@g"R#-혍g?ܮoP>d:ch,1P8 iQL=21>ٗ@ێ=x<+xyRwRB 6|u% SED2"* #f.W(9=>Nx5¤;^n(x!Bw}\nZdL];IčOl\"1} >,Pt <P?Fc"'uAԾv*GDEO{K,;YWT|"UI:{EU\Vw_*)o>R .5=AD" b(lv `2 &wnuS*\tT+8m6w:L1rwMkc-Ac'XwY9ƵQYn 4U:Z 3=TLˤpΙkNЗ:""gEX}}'` tSnwކٯ3IO~V숡!5ꜳM;3WNٓNy>1H7Q`Rj@P&熮M6kr3Lb՚ 5ަޥ8 @ WIi-Hu1&_HTWEW)?3bWu lP'.q3CCb(vuu̥8ny#:|9#}KjY[) QQݦ;H]Lst1AhRpyerDrf0- ] cQLˀ?;.I)_Fu^6=vHz]r'ա&Z$Q9E:5ӝ4r l.:p 7SMOv'1YS }Re wt`0Z>ɮXf9VYlѧ= V$v?2Pɂon$ H&]GK 0}T,4(ꕈO ig4iֵh|cdw}/ &:k!u]kOtf",d 9W 蔇OX9%^IQ56~IA}+?aFI; :T:E}5b2E]!@nL1C [L.#FBt1fͫ il&$2d,6R}Β=p~a-E]xv_vMxSd_-#L5rHQ칮^ Y56L#16h?E-zm|Cb_a< _aYRaێr| _)/9ryߢsg;sU@;l 3҇8}ϾKBC[ \ =9 %̿KwWpڧU1#m~M@cPc׾ 8wvvgLZC[H\>?-onx$Y ZF˻>`PYYyZ4&"Nt_Y 83iU=[t%dBBjH"#^}&j$'_i=.9~\΅y)T׫$Q!ZC$DZ "=͛a*Ll|K}| Ӌoq@ȹuw<%^m?`Pݬ)7څrt4$Tujk$a~vϾz~5[CԠ-0StVn9D 1?(q ~>O oacG=N/0sfkg͖YR8'8  :4C @R=%usivSW<:(@(=D›ۻǟ4yLI;XAѶ4݅l5Bܪ'96,a¥9̯ 3)-:ц,-a$gGa~OÔr I+ż8I%1,B7P6;Xּfǽ*b4J(vR^Ԋ*+'5V90Ww-] K)(WTd4xHqOQ2 5 ͥfDbͤQ|ݯoe j\\l; D^bd.4޾ja.V^r/{r%#9/JjݦCcgz,`G(B 4sJ8|%t'Ό^NJ=dg]_5hN :ub⁎U2N =r)fz>!Q( D!R%PH=3.4$/RguQ׃HnYv[Dkii'cYZ0_PpEBb~tKЎο{͂($wڨZfV!3<[ ,r{š --!es:^IJl2j >Đ9Ϣjfu,Oo6&ۭ뻨+r@N3FwZgO4;{-bϾS;`4M/XW Rzc&.؜UOVEWʝjlqQ0b)ޚ'J뛒k~=W Q d W#?%P@LC%EO%3PQi1MsZ}Dpz5&q<οJ[oa!^.}Դ\Ius ¿Ýn0Ҝ9@$]ځ9%$-q/7D,+ׇnOSf^9XJK T^Gwp՞-_P'$t.O&kb"䵼@U$F0 f-FO9qs#9CAZۻ<{thu0+$|1:'dIC<.rT MÄ`*{eךgsak7UPr}]Gp2CU84/[he}Zho4s79yLV! @jR~>7 {bj?쵋,_l\9`A# gdF*VP]ʺOCZ7D%/r!pW6@s!-ُ7z5.j,ⷰԢUTU m[_?Mfȓ)PB)"QgzrL~ۜmj:+GE0Rӕ-0:}Bo( n!)Kr 3^T9q `RDUpo `'F}G9 =}s7ѧZdv{8l" Me7~+:L5ȧ 5e $"0S6vJBl++P*Nuʵp;r-N-$iRf1ea4(U vsuAJ'yr0ͤ.2xcE0lE { ڜ܈o)'$Xz0 FEK;[M8TjO?1|[][dX%*=T!tUuN-/\t}*jbD%}Vs0q)S1 Vb>E/Qk[Dh[Zhta!asף[L}[{y^NpXs,}wſEqrxN)0=T[;~J8͞MOZX8c1xp:(S=\`+a_]'0+כm@Of}(o?e7kTw>#Vw2 Z2a=@yֹ.Ղ31_&$;ؗs.=of]6`֚ )SV55I5. ݨJ-yuY%s> /i4wL 7m .]9lz}jdrH?2jg8YëՍey0PGU0m$O.Վa6gnGho_pmOvm:St<ݒ׊m~Dr2X%b+'Yhd$aGȞO:o.Vg̈ }tA ii- 1Hwuy$/GCqO IcސjvRӊkK+ #i Tv<(ZsunatxH揟;KO>*m(0op)8`6beJk*쉕v2 'J0r=1>)l21VG^'*&1`AFp|2'1+*?^G4Q'*TkN҅U̥Dp$bH ޖ{EeӣGAZT \4/xI?3fيcɕ7i=r#zHL|tzZĶm w~P_LV"u{N Ւmq-SKf4BC,)t*pE=w.]?HR3,ša2*4:fA&!@-d>[MbqF}COݱ%k?w^4-UW_npA1(ۂ7Req9K2SŔKx_iȐקDlwC x]_ >:?*6wCG+{oIj_bQꚼٸT$YKזw ׷1@>Xq:샫Xn~yZd HCq;fSz/رxe]g.WWdUńj S:FK\p%a ^:질Ws0=C\] nI- 2#q>_6.+xOWxGWO7#DffGf_xyfBTi{TTʑlP7"8=?F)2=er\]ZA eq0wi,0ܳ^cA+-dK3V6Zkaaaӆ^b7D@J^ U*WQ F]{tϦ1'DVxD6zZ3(M0RtHX=%Õ] 4QZy(`X bs Lck*C>Hp.<3۳ȁDժfRA͟\~54xlh#Ēj&>c\ҏW--Ն3v"EZMc$ An#yq .4f2tӾRX8wGQr mƴUeQB~Ƥ^OWo h_-| r^pP+o1sb53}ߋ"eHhZzf;@+O *t^9XҲs:sYHg.nEul˺88k# ;heWץ.xwv=UCA`90PS2k"y灦0g s127g.5u0X@8Rb~I Ȕ7|UYtFCO_l:4$2ܐraREjQhOVe_K"'v}c"@Z(k lUUuwlnSݺ̧Q` JjQF;9; ljVֶ8Pn1B,YMчT[qlK89Kkvx`]'#x V@δrPhNC e S^sV&jH2y˜[NY3 kqL&_R =c0Vt?g{MşK\ ؀(1{S L W߿W&Q~_(5Y/^B4 sz~՗MI[f ІwvA %\w$Yl?0gI]^8xi92bBgC#(7Qɹ FEsEb9w3]dM\+^x܆믈0"I÷-ZL6+vNZך .S"&r%cXjOh;E{j*]I5VL L*oyֺs< ;"v^Yvju娖͈*]4sgdLJ0斤޻ow2]grU8[C'sώ@#Ԯ|4h!DƔ~D1U_@pWVmx=QFe4R0iBȼ ˷kKr,LE7#z;15+|AEg/65DeQ"5p'.f|jwAM* T''NgZΙdl!%Qoo>(- 09x|Ѳ ]=)I0?ȃŦn)vBYƂn 4j{:ekڊ r<Bvė$ZZBӉQi5#,$M.ywT2T z),!hi PvKҘ?v6KE mƗ< B~Qmdd!GaԷ2)-ߕ&"}9{65m[Tt2tS+w&K KШJKAgy;.>0YmcqeK%ldM-fnOhil,9v3gQPZ ,qn?\pQO/1g^.&oCaCE_ HoIU4H mWuE!nd_ yDn`4nC?NX/'/RMݽ3kSHއlΥzwu':zy)]Vl^O+ZF4ASl슄#D(thPo9c ?[@`Iز2 ͈n7VS3] gl2v[V%M={7jԊYO6Du,X)+]2{+RW 0Φe7vwru?=N1(m̢c.\ᾮ.+nnpQI~s']1hl_R%O9`[Y:p]~lm:Pָy<{)j ~êY@mSZ|3a0Io䲗# דP@׮Dp:$WZ:\-wE_GNj1!괧>8ZGt-ݏS=,o A8w@~ߕ R>%4ORֲfC62#@ID6ka P}=dVC`!V9R$˔=U qC᨝mPڣb*I>qXW$)F'ߛL/]}p[%>pV5I.vwMp[7Z?n_0yrپCxA-'J ED2 P%p /ʣ\*.touXƺD FSϒ3CSЮ1V1ϟ`۞CNcfoӚ+rFD$?hRrc7ZլR`q;NF~sIɄ tSg/S,p4m=ܨR ԅGV+DS 2'jjv.]Ш2 psLFo?Qꟈܕ&׵L\F&v9H(8F\k#NvǁbndǜemӦs wwrr5>EN /PCyMsRHik^=̀Jq`Qh`8_au nr…rU bhuqBbkBa jxI=кaAao1Mn {a i_*2dΝ' ;mv7#m ʇ6 R_[*fjqWy@UNufi~?nrh#8˓%4tav|lЙUcʗD7@2]h! .KuVveg8H/czxpc5Q^ -lDgFuCDTqq$gZ2T:m@Ѝv}1-ywsϧ`蝘X0>6d)ځ.*_եuְ=h{%!F܉"l <'PvE\&},xZl#:d8{af)d\Ή,rHm%J'zg+hgK\KŞY.j ׵CBlݶiE۴(F)0"J+#* s+1ߛ3C;3򞝯2^2Bq8#L3+S9ɩaιqʖ> j}PNĉmI5Qƚ,|XM5?YEC;@;Dm8A=@ D8߱{<6M$$hX'yngz+j Sw( D_$MNKqOQJU:Foża*gWT8dM_δTK|8c'?b Ǵ\O@~, ;x@'7{i.CWˁUέ]:FW sS"/e8= rzE/ 5mBOͼA\S!_"/]mVd칗_zvȊi Ds0B. C35 |x wO<#|Oћ|{FmPYBͭ,)Yp`H5{%ЅEL6f\}X־ίI]ɞ`V&<-[:,j%*^X%]v ~fsw>dI뵅 vsBS-UBf(bg.YT⾇E}9mUJ{!0BinA@[aGFv2It.2Tr?@pK{w˃|e2ofҬH2.%UMHU6thߏN/-JebtǗZzN-2fCS<@ =cJ4nc8jpl܃Ǽ~@G|ȝ{O1:$hϓ&+|dmh!* ߝ;9 Eô5:{aUK=9[gÞM%rm"M 瞍xzdFGx-3)܋@_Erfz>F+MRfj}`TP>/}XT&~kx/ VFaZWd{%xOUw~S]B&[21qr\R`8om^* HV rϞ"cpn'7K7 PVOS\L@~a&[SxD>f|96U66I+h4_LjLQb+h L6m]y+X+pRT}ػ&Æwq8 ʏFQ}l~£o̹xj u.<96r̸hM}Fc4(_=1\&UL;xN*VXڬ]Ty>$<Ӱb\+rY>s0`&ʴEHmm^)Pک^';Ouw=zE&#'ze-є:&PEs~gj^avG} .\m45Baz iޠ(TKߖtax Ul#r_Ô ;M{;Lӱn.~́@TB~6m%hcmS0xPBi 'Vעy?E7 6bBOtMbENtȍ"0^ tq+) [%;04> % EM0ǿ;*ۉ^0PɸrK߈]KSn%NL}oLI~wu7AN(:&o*W^b_z$m4I AO|< H"CIsUk8c(#Tvna[CX2^jv,hɸ"7LŴݐ6S ưsH"T1vk22+ =a4^E * X4v͕ˍv͔8%iQpc{bϨr\B6.]gTg1kpL:}K? uhM:LKY'iZE0=fmDf#Toܸxu>%WJ?VO4]_"}\׵3$g: :YGV # ͜5鸸cuwWޕ4% ێ kBvęF'ϩPċD*նjjE)fRBwo!^vo1DCޝk@t0h*=I;sx1 epKd[@"9>I\$^:hE]Gr ]5(zce%1^}aֲG۞i.jh5*-$3UV&вXƀ[TGJ;T/8>xOr7ا$|׏cbGDFwѢbe 0ee5%r^H3`nc#5.&itlNܖȌ PpsX:֖ ŨQJ,7>bLqҹ;*?o/?-vSMy6 i6"uDi Oެt6gj0d#u3nIFO|ŚG|̊Nz,$>_ɻ~_aFr#,0|O!tZK}~!KRVbCJ헐4φ@T7O6-=6X{V3WhXMQŁnzBgVYQw&9an^LjRʦhWw@W9UȀ*e/.ٴshpeJꥲl %j'7h<{ yq8] ᪰U\W8$B|PB[S:o]Ix;[;4ܲKxfgTS-Hۏ5JJY5@}BtHV:$jF1jpK#jK`[:ML`<& W\ժ03ctzt覺N)lHHf9$xkҷǂRn7Ĕ!p\/}mC-i/žҐ}*^d4~\sICe}H<קQor3EwB;;2o.[чR@|HaBUЂ[ty}K ~Z#gp 8@(keWpscigרdlxs,.*2YR:) 7cӯ6ͺۙVLxԻLR9p73:'<4\nz9Fwe?*3TqݍA 6xhCO|% j-2&E=9 O"9N\}[=x(2wP^L]ߜJx)/PՙEpJ~X]UjuMx>Vy,rITDs2/&h>`ȯo짢p,[]= EqEJXYgN$,' uy}{mVqT GMn8f?J0~pHr8%( h, cՙpFW6yx@DЬq&_-i g^|{'h!+= $^.-,$#6BX3Й]&>Xq=ܩ|ۄJ>/a͐a63ʊ݅/mT!CuroT䀃']ߴqnxjz2ڟb/h82$V}^$>P!)JW:%Tx. rXSy9﬽1, %$8ܠ##QuѢ u~CЄ{n&2t08i pɓL-jCvt_|{5 ]QP Ĵ'o2v|y#9q_PM}V:^| D^é2)-R mC,<?i !SQ=PBP )ET R|pwBXH~-pmY>>"1T$P&\(ZhXh^(mYN҉+9V.uA^ Ή,纎DK^`Õ;Q BTi%;day3O[sBtABP4䃩f<o|lȥ>וSerK_{C[^wVrhGc ^`G3 ,$H(d-;OnVX˖e$ ]qO'yl[_/ g-H8M3 Kjct}̝ =Ttri9ꯟ\S> Kγs gTՔ.{Uh,.ĮK˴فt;Hy'&6T8Ͱ(8Dzhx3DEFnY(FBe$N 9t%Uk1Fν}WCr{ed&h/ Kh0>QQ)snVܣ|MP-UJd8vlq2L\6f  Մ\ijLs4iTQ)>C m ?, m Ox/)mc]K[o @VU(6hܘϬ!sw-Vo/Ʒ8O "NߞB^7q9rFpWIDžӼ_q+ hovs*Y|آ`}BH U:~fQ[-لfwQ'>8ĉZ])%KC 'z}eǦifג3!u̇ +YUCōexI˼}B/Kt-&2R]` @8,M:rv~x)g2ea?X#59j6YK 5{]uJ U,sx v#2=πCS +Q;ٯ/p3wd]V"[jy3Ӭkic{/A> L@ͪ(⬃zԹs얊ϡA$_cKgܩǘTy(zr~WȥM|izp(I+CkÁ,$,3p;ͱVZ.λb̭gmsa1f.z&΢CC+n8OROvZ.p{exAs zW >ĸ!2nJ{yeCnfRԙCB(<&Z_NkrKz"NlR!g0{A}'=N!ٙ:ІMzOo#4Mex ]ϊo~7Lˏf90`\41w3Uŝ \ӊ]Di2m'%Dz.5ֲ|KҍfIӺD!i VwA",x~ iԏp)<]Gsr8aպzCҟTmb2?&$ثUeqEy^1Ƒ@Hy?IG:5Wag6LZ=zxNVW{)ݘk>}ntc]D;pxZh?w-/cثR #rQy D}D%1.uLظmܷm\4Qzҭo 6WxN1Ji%< ֦NmgG-.|6qm'1~]B>ԟmv7Y-rwg~hQPScI{ԇWR ww]N9 m7Ag/q/:9ѯICveF6idijP(&ˣj&% @&3k|I ʮOJ'j>B#x[JȖygčb#-#WrmLr/,q\eF;ݾr.zH._ 26LG䲔qY,5XߍQ{Ȱ=-؋/Fp3bd6ȌҜK&OPYכ%ppYɶ$'Kb?Gң[=a̖ ; G;>re|J,ϯ.9!rŷ_kckcճ_kF83 MpI5FIZ@B<n_wz6h,<ƅI V{:Ƕ^KःV 5qrꢞ0{~A u&ϹFvbsM_V9.I@hy^"(͌&倢s6׵J v  42|]b&X<#@b9: *Bs^!8y#v'Q@ =wyZ0|D "`zأtOpkz[=m:OnsNx?e%8]7%RW ?÷B&]n\ɝnW-uwL>l̀ *af4~Mesg>fPDr >s&hhmv*q׈qC(~;yKl TFv*OSAs:G)_֯X{rj j:RL8K]DHѦI,+XB5&My{!9H)3<`ɪۇ?s1uLr"ꢛ V>d> &oHݡ%{: o_ˏຼXc8ګmkq%!+{'+fr;sxc*oަb_/ۈu;0di+=quίܾG47lyů >k\)@Op L#b= mcrEpHf#T9֭tn߼}$v.Xj>H.5 IwH_ «-Woe+3,0t7~ }BD2~wl%Yܺ>cn:Җ"$Qa`Y()kHݢ^"4R,u>0ָuX2  tO_[+36$,`Qxe0+[Ճe|-ڢ:_e6&4Cp A1ؐxtfiY zP,DJl-dN!,e2_ٜ^F83l;\]1JQpv:c,t@d>O6b%|Kr7wp# z)XD.j YcsKeyI 6_{ޝIoNĂ}N2hpR Xed+TW6gY{EZX#p Wɦ%9@޵C's ns'ih ,qMa_dA, RNF,/!Y]3 ..C;X:%QG2E [}0%9;2u |e/.c jVd{4qO?tz/hpt=<Y BڋɣKP~PA+>مzti|5nnFgSF!2H1k;Xٳ\8 P/RwLM&L@N.F:\HKր3ս~!̔i0p 'Oe혓K-ҫ J};0MIB:uPA6R-^~)<O:;$e;< GuCQqfNr tНBܼk(Bfhэ5,~Y rG^˿ύrF2+J- J.ߞ~8Ǐxl1a{8( 8Ftñx$ykV+E$ﴼ,|L#iZ{ρSܾ.C7 8@ m%ulMR3#63LʫƹD:D\-T +Q#=覰ٛ%Jbc&VXOhBEXCZ+@΃`᮫A-{YtgM?>JgUU؉ /XX^qdH}"9!xfAz|-5p 29xr8ZNEł9G2#rFwEW 2W"b[ѵ&nh>><_K\kѴUJ~jݿy~Ըt|CȆLp2nq&8ق[,{_齝a<5]9H+'NP0@_ :[\W_leOQŔ3tn0,Ma/'"X6%8 .6F}0QKfֲi3e^h WML5?Eoe}7:]a b\caʟ_2L-Kuxo?`%%)C%`#O rLgT@0VX/,>G= >*Gr_Eݠ \@~kIa,JǤz ?_(`v_ D-x|}͆d"lH N^#؛)Od[Om{իcI&$9]@$R  UXDѱhѕ&`6uAP+\c9/V^- OTPb!q=4LFmSyhMlλW$U]~{^N `eJ>]~8X?`.G:U -§oiYi24!+p֌,CC߀h!t~F&І6 @B& &;R L p+6i!4 <1LҮ9m);~NfZpLx5& |_IMGp8\M$.uYt[t)[9U[^s @L[/"ɽ ބ<`63ݚ-)ۦQ$Gˣ'; f]eSȜ&pveHl2I5'~׵k薋?I#R>qUe3q-uҘbv֎d8*ICie 5,)owɃqaWX Ʀ1%k~d+~v$S1yb kca UUfYJUS#W@w[M+Ei@sgȤ{8cN/[H鮭iG3 cnbmz.9iw\&z M6:T/SUh=cwU8{X֦fJ{QX$YDvm3&@$;`׬)`4yɐi{ʲ땉속tnsd;#O{ˬnV' ^gt6{3n,'f~ubY\ӁSIT/#G{!k܏#* hWׯ}*3ʹojJp] 쑤C 5fJ~dQ߁NTK&>ЦoΨǸgDv hu* *hn.ϊAw;:NI"xq0/2.SM/X[!y b:$~r.QZ~K_z<_zb2E-Y]f.ZF|:{ygza AG |\} <7jyC-vAJ=.QZdqYmC.D&#rVi8* ?|/ƛwhJ3Z".Avu=2@=B9c)5:B}QMu|O 6j꼐JL5&Z3F+e)r3? Pvέy .c H@Y la/H J<6軖փ {yz-oзI P2"Dr+ȋ7p ~=\4g9qLp)(8 78')`ȜIħ΢1Ë\ˎ $9`S[{8W7}pä8|ds?9xVL(JrnvwEq:yھn,Rqr^~{Ao;$8хWBLl5Y2SqȦN< s\)ciPJ*_DLa{ЃD٭ WpyCD X_['p0 ~jߟ͞tQ0''$|\T#88 Ԃ"-sUP )tt}`:&W)S. ^4 %: 4qhMiyWp$%R+Z8` ܸq&Xۖ |5ٌ.<'͟=dj=cœ5%6rRPByB_F [n:U7cXQ{n]Nʯ[ bg.N݄V<\T P~{34lJ7LvK281 66E2QsT A1 E1UWlVڬ %+[Q]~篾Ct^ESP{Ff@b |/gps+SMn]xIIc5꾼\_$F+Cd+ܕw? {YKS]05S!L@HpYVcxdH'%!޹DzxTK4[w"\yB|:l崓DVXmJ1_Duj*b#rx,@bGx 祶r2Ԏ_cTӵT/ڻ  \@2"Z? ȸΫI.CuHA:}_؎c !u& ?E,ݞ , ۄeXyAɎ$_H]rK &;$#</ t yu&T ʋ<' )5)(X4 /Mc(EO 3]Vfk@Bmus -,J^2_tE!Zsye_Tx&暘 2JُO_R\v%+b+[}꿋\2/òʚI,&~{3:hF_rXHC@h7Ќb`&R$#i܂ө;?uX^ ϐq.kԔ4F ߠ[d2u̍3hG-S ?Av-`\L-3*z RHӂRsM݋5GIF2UJVORW'L-=&\eV6*Du2臠!ח4:n"[!O9Y{[C:`R ä (9Pac]R%4 JtEH(Tȝi7K t,r>;P : H ^D`CU4u#iy0z[jZR]sL^^C|h39Ȱ/T`DQ=,z-B:n?t10lc 7Qo)mTMF<`S3!M94u3,o3|^,Q+Z@N鶆@'t]8Jm ʘ?gCSV( ev !SY(kǍi&O:m@-|/dT.;g2(qIoG.&Tf!ˢ[͒ <*4+yh MqҫX)(WMmpAЕϤ~=Ge*'tᰪ^L}W׬Ro`fgMٻm EJG* &p<1d?#qD̙?<̪Dl2=\nnqBjQ-y]{;"_kCKp")gK7Cl ~];RY:9)DxHQq<8rn+ɀ;A~ :y+I?)xœ.^c+yQ&HON.R$cQ,J4xyGLbܳ 0)Nv45bƳ:@aJf*4GJ|[ BH>λ(y~3.ֺܮty>>v*Ksso?Cs.Yn`8=?QrEXgVZ1g?}\BdQ]+`*Ue:Ʀwr=0礚`N~PkVGU}>$#ml"baOKyǶkP <#Ăn1{Z ;zEb,-*.츝%*8" 1"-g6K3s! P`I ŖA| h1}rP40M+bTqXo~{u]B`j-i)Wc`c2~Eļy1rZ*1Zbˆ6s. HfuKފOhv}JIMڍ[+>؇ Gw&Dx55 pVǣ(opX"cZ`e_ g:$q^+Mp~XW?j;ubW5*4lo*ixM u)=l,EzޡA#fП#I/Z-]e͖UJYb@笛+s&M!S*#\X]~DW9&y 9&&*\?@GRjG5^o&h2~_7xSBvp&B=H׽ =3.$ O{+QIBնx Z'2 YAlLܟ$^:@ZX w'9mCֳ|Tz )WGiYj+.;G#Y9O͇BZ rP=?=vf8gHݵQ]x5ᥲhlHr=U5OV_pՄ uܞ4&nAm S-$ƍQXqlj9= QEi0434~74>'޲=P#^SC s lwL`tJ!3 E,_bu) "W.Pa7 M`pܸjhAYULK!H#2\a]p'<~}LJ]kV:wtj4Ht'hp{Nɋ+Ο?vė*;)U(kX"1)ARĵo- s֚) [RVS^X2ݎructVYR`q#sp }=3!Ƒ ܧUD2ٗ=]G ^6_uGW>/֓b°_iR:~_Zj*vX 6Txz졼qA)ż3;R!t r0sSN@R>䓷(!P=eӒ;Y6ȣaIV`2DՂr3`CpISƗYsYTD5o3*Tšk1 xp.p\|LDXw|ci/jr+̄ʧq2I+u|̍I>w%ᘩ Q:(BNqjLl"u/3/OMaҤ:Ӗ97;11wȢbgN9"bpDd!x|G6^|+G4?(Mz4/uAr^O!^ժo8+~wX^E@v!ZLR3Л8Un8B^?I<-4}/P⩾(=#t;- $z1Ydvd@FZ8$ !Z?O^ٕ$7'T n@`ӋDej%2D1ߓ)UD'ƴF71$#BX{8f (Gn;0!TJlR1QW' <67\_G\-/2lj:-L > ' m;R/8Iɝ-R(>8vP [r5P7[o%F3-8%l1p @7c׿v3&I /Yb>~LM﫥 ט#.vOBn+`kDoH}ZB}%b9:Eh5HHJ  aҥiʮM$fhL?)0Bi( \cC+<(ۻ 2 ._Kˠ*ZF5崓6ԝx惱D:!i|bOGȩ-<.T>c3xTx+P8ğ pWb2OdB]'@$j&tvfg:`ID7> AyՆ`1š;ȔSV#qM%U@Vuu:&0i䛗[gEWʮ|=:̈fJ2kXg Zl0Kp'L|RQ 2PQ`29\bERf8bs4uCp+$:wܦޓŘكjo\'X#8543ȯe/]Yr3ǻNFkM ?/犑 )JuE[UpW*0^gSX,7UxrQ#+lko2R8k˶SSíVUԜr H&RvԳZOd{ ~z./_:bJXЇP h&Fi+8Uեc _q_Z.&VSE+H{*NJwkAe8C}ݕcal3< ["W/> $ZBk9oxf}֠q7霕8zSY$^L <7xhon-؏x:qdރ~ff;|F ćO0:AY1Rs]kx8ҥzoHӥT $dc5!2r\π'mh}v,=ۚN-"5Duv}y O3914ńEíWaâ#~MtF ;qc}k1?ZkA"wh8mÀ/ Dr}Ab |Dx6ޖ-Tc PLnG{=j/@m<[) ~~9YAY {%B\9%(QΟc 0p>Q-W il_yS A<yPᲩ|miQ嫌#Cv*9n7)OzG\V4t[뙓>L'ׅ0ZbݜV(q,{T Ȇd_Aa,#[U9 d9^5t{<7HK[/!--[]83}{U%VZjC<8;sYlRh1<&=G0ʇ}щMt$g]F^^Ώ lK `-K')x~M~%k&aJ*#ehh+^sKL:s棹UHhr/Ci)Ri<ͤf$r?BEo>jv<_{LIV|ӧ{9gJ4kF%iE }dCaw.E!$^kyNNk 4goFw&1P? Dza6AG9eik˺z 8 Ub~3M#@B`^{]OVic^U>G_/Ns1ǯȤOR/ӋmTl[k7E­0H] H#S&ϔ5@9:sxj doY%s.(LUTIW ZMGKS~tq~":ַ "+~.j:X! `8GB >'; PG&vfy⡌>WȊmi΢5tdyۻ"^͏k,#92 ?)/]s;x`uk -1۱h{ԷՋVU"1⤝WZ1rݫ@/c-Ұ6>2l낰aY`dxӍSI%z 4J0S\D@Cl4LȂh@$ L,6?|O9H"cLBlc&/3 Jj&]wu}[Wŵ?/P줺: sN[Ǖ3O~N2&-丙j_ԤD^U5=X\#gI>A$HpW\:[F Y4^hB$I^w^LW}H!,;vO9, ߿4P$ZQ٩^ifcǻ{M\ګ c.P34 E V1OKa,J~?&_b#h^,䡁&䓩YT.(+L\k8:ɶMඍ\ScG]:,,?)$ ]<5df {Fx}i&;87tyG3 J=Qh%]fp9bjjA[g^ ic{ .WFZhʱ:ʿӳ{<%`xa&#%:͵Tm>S,?S?*D"^^gVud4b"~0O$Ҝ¢?bKKC-\ WMA~ew;a4ƿR6ތxX|.wJ3yw}ׅH+Lmt隝qNLA3 t' H9dsd cFڪeW>cj74½0P1X(r &P!6䠻)PrN#V} ґUA*ٖXz[:C43Wk}DNW6 ?j+oz&L$ }۷|XnwyI3C'qy?I ;mFIHe5@2<$%q>P>6"KelڢO~yW6$fş/> X /᥄LLvohO0,yB#֌z|-&%r,+`I( ?$2Xǜj!P=Έ/%o"Z)f/ɬz75<& ΞY/UI8{ htv}@%^ajcjZepƕIL> @6 {Î7y&iA䩊%_Y6@I)O-Yh맿£8gw ꣮ PZ_9!ԆwPz7z- ظlcdŭ\:zb0ˢ'twՌ*WOyfĥ 17٣/HDFVhfd+bMdع`"s+~oc1`s#̿E5Io^*)MȄaX?1\`d<m tKޝŝ]`#fi 3[? Ȱj*=w"\}?Z!@c߾j>xU2NuQ'5_ϕ?HYEE[rdQEhP{ބ:#1lGɧo#\6u %5u8ci/߳\m>{2?QM0Z"OZk>=lxf:84L챜u̦/gNc;U6O_5fMS[Y*7C|EZwR2BM:cj d g *+o>o222??Ñһp(ewԠcLmQvK\o̮l'nJmIlj?P-ca9/jU Yx;4L"=G VyuSo HBg>Z:[Z~՟!X7o%aCbT/%ARWYNRJG*qksH!R/*e(>f*01Dކl"u(|w:Y|(;ABj]qbt4^V fK*5D< _o0,~sU ^ V!ԥ4QnClLvvfu \nB͉AiB:Uxk8X߮&?SBPf{Kk֗ )CRl \j.> R$p9 J$>^Cܢprj^ ~6K]z&ԛtRr,6ȿ4K7m1I26(~:rOp184: &TOb!z[x bJ nwlC/Bs#L;=r C4&\}I<ʚ;3k0' ;'յQubn[jI^ yBylS 3 NeFAոB,ƂzYZ-P#`M(?6iCaJ+X'[4y\j n 0}?l(GdjD27 6G?h})0D8tH(0ܺwqvJ3xtZeE&UDzJ꿍Kgqkcwd 楝梺 uZdE[nbCTGHEv 6lyVYeOZ#sq?Ҝ:Ek&A؄6F%BAbKBBV#?@z"m|lȽ^Xtf@WE)3s ?lA*.>nv@NflROjPm~7SZQʎlS"QVD T7 \<|{ϜRٖc/63p eL fxmJ˵LuZBƿ  m-c;rj"dJL~`Z H[f/Oָy0J29[tO=s :=,7]`{s!/g. e[,HZ>nRb`sssb\t_.֏42[b]UNL5:2$v;w=uVcѵ܅\Z]GFgl]|h6##NZNZ8HQQ3ŒFD<WY`}w?+x'7>Yv@.{iж'{s(~( 4̹/A4zPd & ͮ G|B?\\ɾKyGq ɚ 5Cg/ڗXi0wrR^ys!,P yB:N %bfvh&c'v8 [ܭ#ׅX^bOen ,yW<~Z}Rgi)sΦy)_Nˇ|cLj~7leO1i.'*vϨzTTe<>v~;RX{fõeĜ7q^ ZIsL*Z {#ͮmjV4Dጴb9OӖ xX/.@8׭%y&S.DCP) \gH+%҈rMgj, J)0 cy=2ӈsxi>0QX :a-u.>au3]Pqpvfuc )Zb>C^M/B׌7aTd@ǎD$֠wm8۫[LhDQ|Y(/)5g! 6Jpx8-_5GzQ:ysrΞQ!SWF0u-9Wn- KCqpTVi#~.*Q ͦO/>OZD1(Ϛ3Vh .R B)@1h B_tP${аDHe.5X͈Lðo6P#I"Uy>6$ :3䥌N䑦!ys2 ~H(עur&.o `=NumiP6}T_w‹/]`dm& ёBïK^43 SN`YmΔ"vS4 vBj(Vg$Ss7n˘sr5$ƌiq؅rxܿwd1.Kغc& КBٻf3r7^IULXs憐|$;ȶse| b⌂'ߏ(\E"⚱:cb R>ߎIX/'ь++arMc7{kXǩ-d܈%,&Z) ͟ŋ :R%([EDOR.vr,q\۞כMu,wʚX+[T$s^)8<|y jF7 ^ W8O;$Ok^ fz_`lp7LZZtyDyTfX)DJ.P?V,t:J`+ 1:֚[-2a4:tgp~i,pt,D(('΃8d X?(i&0y5dqI)ڰVKITֹ V}V._Bt/Q<9l?O$jvG1ZB3)i_JLSrL0JK2ȓgy pF #8&ƮߨeZ%Dx3Txv2Q/HPJ]gPDp=\7; 5 XfQO@ $@m5'f[B#W4i hA_+av2n!/o^ڃZF$_.E|Yi Ae7 ui'ڀq8(޶F'֜ݽA`+֢JaQh-;1x6%zjadI=t:l+M#k$3Ѱ=tO|Qk0jpIϻEː[lH獺bryHHOiQoRcH勛kjreewge~DPG#XEaA fSGD]3OuB軹M倲i6Ln@!%Ք9 Uc7N"Oez; _m)]XdkBhy:V>yT|&#yQ~ ѯ-͋&!H1}\k8E̩1mbv ̯*ńI1' eJ'k3?PYt T  C$La/&oS0C(zAb9M85nZQf Q8v NaaDn>!rz7%Ҭ( G-9\)U`;2(wac[(BG!nyqYNzN*qg؜Qp %x-\3:|/E_6R7|_iO)GnEWW'}זN" Xԋ_PDKN4ɋ &Jq<%mE8C~ۼʓV],μr%h~)dٱ:NQvbnO-Tr6Ecc#s+٤f3@^(kQ #[Mܞ(Xn(c9 W>]"RW~iY(ѓX_p~'kx= 'i:,[n@_G2_#A{z8\2b>Y\ eFe:s.x;2~#ٳ]#X`·fHj8Hpq/ 2;Ak]-0H;F)2Ў iJNE营@q-Q (@پ$%CwdN?i))#Fgk qF`;|]Bmd~ڔ_ |K1",Q1]r vE5e[Zq9W+A7 $ss0&;|Ee{e~NmxV7;h1 v%c1׫߸BY"ǭ; 2X1yq} AS8ǿe#6~A4@k(qIYTw5I%1"^1KmSr/Ez(;y?jm Г}ek&*fº LQ~W[M jK -;SӖJȰf!j,W[Tc;!\+ X9pyVػ ~32bUpX\l*qoOtZ 1Q9-&`45%[`CC>YL44u$y"}[E fɍWS# rR8rxph#xKb@ԕ!P zq7E)([裇 |;^$\YkHd,t#nm&=CnpOcrt 3Rn[*F F9qvE+ r~7,8Nk8G9aZ^t)h"KG#%W Hz42 .,"]AB]u/XZ^3ܼ;ط:, b}ugHg؈{Et66̜!j/oFᮁ9rd\Xz Qӫˊx랾('t6-HmL$ N\SṞwH6|3= HgVG䢟6]qQ픅sJJx#MGzҙ'BߓS9w3:ׇXv17jYK{O+uZ^9PN )@S4vpuD>FSbZl<')G߿XG(t6\I g([3\Q(^r%o~פlD@.IFMqg7#$%Z] 9e= >IhΆo6ſmc2WKe7uU):!SyCU޳^l*U(݌+V_'s\*䁗 .`_/ERJv &cKi,It.+!Kzy" 'Z>rò l|RIv"bTV S KC %>o;㛆#&;tT؝s܎3U0Fk݃l@FHLE\# ?sr9bڞZ!5 8P&ւ5T),x0)i!ZdX=>-%Ƅ2@1 TqZ C*C+<pNErDiI9N/0 j0 *ѓ,;,yM<5%x Hok|I"^75xܝU~; E+3L+Ae1RĢ" lNt+0Qeṛ،7]7ۇǂۋԋ7X6PÉ.i R5ėNDS0ċ<HRT[&t :ve W7TRfέ?̶5 e {H/aHW܌lH,|xK׼[ǛgaQ`>k)>?;# ~3B Vӝ4PH#) >"*,a2mD${w+>^N^CAfBm-t6ua6WJl%:*JfYW^L&MĸM>Fmr%Hx.@/U> +ԓ_`mȉ5 =lMSuT ARs^@Yh@ \TOi Pz޼/){#^a/\OKlQPJ[gUJ_hte_IDeܟZʁFO,8e/6Si"R“zv8yXm52AЬQB2Dmvǣ.4ò>bTbU uhMGk&9#!ENQ(zwT*y;,a;0OM Ullwp i3Pbw*ZmV .\haX~7tS1g,/Uo~"wL$gJA݇b#Aa25׫^A =0o::u#҃74Ku.kސdozyMl-Lt) 0W|֍qA Ys+ʓ$%Ɨ!v8L_ \N#wNPYX-/d!eԞ]4G^T5'gRO|P̵(mZQrb0~nc]ϻxb] H v[ߥyOA'`;3Vf[DZQ'zS ߫+LvoG6Qh#qb/=_~ҫb"jDvX (}٦B'>qfZϊrÈѹJ_"ھ)ampQJL<LZD.xҸVbkS2/1d(j m^jY^>:9x]?Fu^<5>.i&SZ!R%+B&. 좆`ffv e|xs#Ti$5!IiAO]^5`ѾU ‘hZ{.59H8&BLuvi%ۈ Iu=V$a' fߦBxDU-\-NݺwL u2Z>j S]:{t`2`-}LH[;<_x*0~syƭ]k8MZЅkz̨ICEgo|m0cRC"֟*3iSM(-Xi.B#g'[ԕW'qy0خ@2 tPdcy%T[[Ҿp#%n/Yv?g3G@\6o*%!koT6]1zijaa}Q_&821a죃运2N\fvfT]BO I83eOwD@/qS8Ph;ddx8R$;IEJF 'O$L9QЩM1%U 5̋;ҕg6 /!k! {FN,ѩ=P'gc<88j]́ {#-MףW]_2_YibGd`$,L4\No]a'ׁ ιNCF$S{sNsLanvAʽmɟi4lŷV2hTiyd~|Gy>w vbťzfhrԃwm͌M$mrWx-r7JEU0#ѠP9bH(opFS-1/EW(]mH [b}qwk,+f:hayK o(oږ6U=xu5~/)=@F ZʠSX'9%Hp{O_˭lnZ=q?9 61ZK ԦG:kYzYӘ,j1쏰˴#Oyx 7M{C9\XOB"H;J/aG.nqߎ)}$8a:s(z &:h HR^3-_h` >{L@;p# @SRٟ482 OYO"{\=%ם]id=i@.ͣxвtJ"O᛹lMw vPަ♬QH~Z_}@jA(AՎ`)!N} "@ -y+Vm]g5kdk؟>S- +ӣ +}=D8h<(n.Q9#hҫ^(q5DnEgs/I Q^h1eD|ԯE6[VUc3ѳQ(@;E0:f7k_|Ce?Wu:# w.$oQt0eI]B]P.Ɠh u;kl2z2)[%EǍSMS:)GB0W艆i\Dr:RͪH4$sDeEB(ٹCEDٕX܊l͚OG)s]Q䏵3AE '5 ΰ%<-9{y& 0eNǼ[jɶΖc !SI67.H {:m.^j>,M~۱#ĸtlL_戦Ct0EOUk`|s9 m-zt+&H A_ܣ_]v0mR {&ȴA8(?ݑxjCo lж n<ݾgjkַ=y@>n,К_Qg dSԅ* ɪi?O59NgYI ] t %v HsJT2_ۿVD(q׸ OI,I: _Ws6#7pϖl$_煥PG>"W nq{)xNwN-y$5r`h8CNxu΢eruNDND*8&&O0mHv}&T!V3ahհéq.  #F,>Qۖ5b{4=VMtEsx=%1 rՋT},4@oQlB$!|Goa+EuC A#ZEj{%k~ 8|>]~H gC,M$ A(pXv=0lOSPuX~yڞL{ șaLMlӁ$EQC(:C ԳZd VY#vK1eb01G[ῆu߄T*>~*8(x4m;fa⸜- 1g`w*n0*q nK{5VI17ֳu7-7_'bFa6LJ.Sn9mbN}} ̡ZxY\)h>j m&2m%aQS/XZ!0D?(ݲ棔<X*LzpGP"ll #|Z ̆shsm"zZY~&j쵪lyła@|]^,W3ka&Q(5i"FҌ/<fQ\Ul|bgR?AN34ˈS"e PQc6g$Ҫsڗ֮AdXL0Kr+ ވ'WU-+:޷¨8-7L7)AqʼnʑP”j'z=<=y. lmC3>J*pUHP_w\~݂"~p"c^l}|n˥QZ8tYXJZ@`m̒u4'TJҸacYsD58.!Iف2&A. q ċ]p|;?52Oh}p# k[vJg Բm=)A@d}j3l(컃/R`W|_jqd6~v`U* 9`1 ߚSwUC4(AsCW]l <3~G[;~둅~kgԮrՆ*U~tcr\J@g3l<ۨ`,8Hw;Z"DG𦌊9.XeE;MT%)!z*ċ߈>[.{j z7dbS:H>RÔ߰2v"^oJ)PxUW٭:n6ʣjg9 㠫MZsζ}[TVݓo[L3OjFm,DU͘%?gɘ%z@Ms ReEk|ܭS%J'vQ[Wʿ)<%O-"NB((4yM|g*$a,'a͛sقFK[OI^uRf{;뽀AbL]U<'ŷxmޠ# {!/B=" 3%Y~/m YVX#$Bw.2 {g̽[̀ɡ~ 'arOp ^%5t?}ي KdAVo`cqtiI0D B>QW.|PgY)ظl T9ATy(Gt#b`͝śS0VVݹd6dW73k?eNOp7 q4Y;nRɕa,>WXyt+#__m9a#s1oMv9 GdlS5m ԧ @WB:EL|`f9fZeA7꾠GֵOB~Xn TlD8;oSAh.8ȤLʨԋ)xhsI]01.>L|*bY5&{ zh]w﫾r8cJSa8Fݿw6:(t"M0yLXb(r:$9*+=fQR%qާf,х>~;" oQCIh'Q["l-ݫ4UzC&+hN4 lCW^6CĦDTeRAg /8r/ )ldߊhɢ߮RZg <5F3?f!>dT# .upޟMwbW!O`4&x$"dB;ܡNBnuo nCPXG%Gκ"5xEh))lx/UK\6Ζ.!:6'R3Tt7&6/.󓎞H$8_zOYU=\ym8Um|c+ntztg:qB.EKv沦L/ab9S}TO~hQYv&2:7fXѓzwxxc\|j>T;8xF%'T{[`zt@ϭ`o/ ׈C T6W;K[XO1a409 (ͱ)aKBF>xҲe'B:Y/aƺePna'^^ZVMcvcb?y|'rיH˲#DڗZerM4jV%"p `-wXAP(88o򃤼6i e*TUܢ߁Y4F"1?+41jMZǂ(hKa?CC".^22 اl}}jpr<|"1;GdR|C=>lmN*7C rAyseD֨M|D_ms}6>~I@% L"nh߂Mjq6!(dۓC+GCqb?V{2eyT $J>{F1o/b{,WGl T^w/`=: T4y%[%ѣϧ9-ʡXrcQ mJ$n4qav-7%D`7#!,ĺb{i!ee%9M&h3w@=Ffb_U'xלt!5îWy[oYS4E@@c| 3oX${20lRtPx^{4{ [T7gY)g NQ!yv1`5 Uqe,OXS}4X{@F[vpvg#>%]L4$s70(jCHeu_9DN&NBR" Zpa^ItR@܏<6K1#K{P.e9? /(H )H:@;݇<ֹԨ<f]ca+/:ʏS 'L l ni?Ši#Z*퓴& /.KoUq6S<*5ĉs!Aq ΏP$FИ/;J0 \wVn*yɀX/3TMD̓#+0r-<Ƹ\$7BOI9Gp|AqZbdV QcF?Ke#pG _w G.v*Ũ!6|=1߼+1(@M Ͱ+1ԪVz e9>78֤}y<*&^2d]G`nՔ/뒔?&,{Z$$嚺J'~rT/Oq᳘G0ܟxز8V:++K(e%>ɯ:.Q-G-sq[6.%h8DwGye$oWMDΈ(']ھ D٨E ]k1I2sWPfWN tFb\稏3uha Eql+Sao}W baD~xa?zu/j81y =VdOEyeoa<,lGhc ! PhPq\-sV9Hh{J9ٲ} K_xc\Djͧ{ti$R+W .[,jJEw7UG; lDرS?kOkszF4G\uIIʕ҄3oa 䈐׃ 9E{]++ On-tI52FWhlE0OPB5>Ry1} \ܱH\1mCc,jj& jl G5Þ`8Do Q |nlF۷?# mKN{Menɧ 9UdTScUњf~: 801uGoi徤*Q^8~Vio =-]wL{|Kx +4ۄۼ1t=D0 euӹR#Xfclܴ D{6>:0CD %1m $.?!1 ${O8+y?n#4 N+Y-QҌ3ؤJNИ tpS6s|qvٍ7IQt6%Ż `@XUʹv2owݧVx0:qD{.mhs B h=Œ^(Xv(]|?A\,~:ƈ>#e<^p6YC=D˞L Bag_.8h9 itF3m}j <\e-.=t b*mVa~3N0n c) Q6G9B5&>Uխ\uQ;7* R Llppb )Nzz[wbfǩm !L߯ 9S^N%w<`,OLӽ w.D%ؠ}̡ޡ$ktB[37ׂaf4NSWH930Q2|vm.^L()+`Ϩ)4G?O;#ehK4( *NwL]vݡ.˵GJM{43 5Fw@ ȖSYQm:p)>2 0Ds.g9 `j9}*9Ҳb[a婙<]ooZH]yԊ?lfZ;/ɗ|ivyh5.  s$++3Ca|mK]4EQ.i?CHYcmL#kv;pmC&]t@SY$:Y ;O1;HRH|ޟp mnU0{ b%2\b4$A:[_.7'jt ȍR yޥ3{Ps0;+P9 AD' }iTB1R]xǍIj_΂xDtP:Ń-&%m8ȘH/S[>,Kx`E\TVsSƤŊؿTt붝Қ@{Ju:j4#+ WP֦>`y\n h,u>m9d.Tbrr dޢH !D9\vqaQb\dj†YHa}`.Dp 2|n1d PLarS_3\,k}"Tc#d %:z[8.Z06!Bze3T;Mrԡ _*X6Q?8)=qXr:]~yvE|h~B>_&Gt[dYFH/̎g P4_k_ ع=HT8ߒ0MzSLQB8\LӑJ*#T)8:o >0[`SAHb~oH>]z{ҽH@&@&m"sYh:+Yi#^)cOҾ'#x #*Yj9 16"--HYLjTsG5W@AapJ Fv(?մuhE;sp@L,3%ʿT(FeٷCsjDmy ͇JBv :!V$ǵ+~ I>/(R0kM95V 4N'׷ ,ѸfZz$H2JJ֋mvR&B<`C};DOxoP tS%60],e>;ۓͿ/B5_`L8fM\ &BE}bUcީ6^?GH$;:ҹ_L( pIGe\hO3z RY\E"):w|p WAYz2y3Z68 ^2q&Zo#z mBN =NIPtGP>מ.FVjycϦb~oGYx ÷?ߜWSK|AZ,;gӹCEO hmWWWvѭym4;e T#98TIeUXXr4>u4)Ykp[^|H!\<bc:xM)Fj.{, t&K~X? $),|{hAcfxX;`|q"6OUpVCy +-B/yXAi:B mr\px_Gf!&#RFd'ks|Gfu]#rE=w)JOh,(JM+@4+*xY#:9i%[)\c崾00ů=~Xo߄q+;OPoފ|}\j): rA!D@툝BsBG1̯U䆑N-aMkG\NLl8TIL{xD⯂4 q(r 0;%""r[7Cɉ kB NX&SD&5eґTd9Eu(uQ|< c}YCs{ˑΈD91Y 6Z7>E:Q`7fL΢o Է3ADFyʒ)Zdp᧴8 vr:XC݆iьZZR|ߣ3`;*;8 fҰ(Ѫs}ٱ%`Fl##-Z'-1"*ό܃j߯ `*TSv@e=D 5p߂@n؈%v"MS}.iELjމ0m2҅)_`G8v=tIΖ!\7IvRWI!R+d Wg~AEMcJscsQ]NTݺL5Ѽ>EX>x%˝b %M =-cR9'n% %JǗXE~ yٸ\d6>}YLU7K]4CX9;Տ ۜO\gL. ,tOI?m(PfCXINuZ#ƉU Q=;ӣo5"SG__nړTtB^5F҉`e[gPW8ܙX[5@v}5zX j ӗ&~{m,x=ɩ$5!{R/4Jph.\XՆsm;|o)-؎扔g "H|\Duoz i0Kg1//T ̟ 3Ao_NЗJ3SC>m+=E;iT5h<7s?@).Z)Ԥߖ9E#a`B:$] /ߒNX!zsUbzf"1$YGk5+?S1qɐ`)9„G% )n$摻8n%VXuV&f. $"A؆_~Gf KM)p^Sz/Oό3xfS8Hκ1$oIlHǟDA5|AteQ=,̶'V<=3@6BtD8jHr%T4[J@OYTqqxV fw*+qABDFk#X;#AU­XY%D0yvl<ĀNC&-z,7}hS'Q n 3H+#Nox Uv5XiݠV>[ XӮm˸Ƨ ͈7۾)lcuN51'd3Bpm~/o,U?1WXq/՘FU{7ibefxbNU.`PBuwmܴOrd= 쎢؊xlAW=XqGJ@Ei \) ch %O2aW[WZu|<݆T}h=FY ThyB 6}G w 4Her{Q3b'Rfv9꺹J1tṫ\}DA'}jHŃ!ޒ D.m=(N4zyc}>k *DIp}A^SX IX< +9VO#lypwy1tSoDSt@֛ad^# V'"v=yϜI/XHFxֳCɞ)֠jVEJԖBiԸ]p|voXt$9ˁfk.zlPFU^EIsN >kg@$ogCøx<Ru?kOՠ +ECC%칍\Ê+`|o20@>MB0n}yhn $So O2p U궏 ${Bbw^g%ZN4][>OAKo`ƍ 7x˛h=iQihÊo-M8$GfWn=i N;zz%2}ܘ3:"])+f&&\څ ࣊ھJ53Mɚf/b:E:p9-Ʌlp5).ɥ&r䙌Jl :[N¨A՞`̢XmcP}pCL%;pYˆ^>p5qgQCWumpͬkuYps0T=?|"`IXDTMѡvᆘ>YU<꟬j$Hl|O:m.bC!WDRM]aﺂ2էӉ.F(=5HiZy&}VAp@ rԤ.Oޒ , ѫWx) z%n7(8=Y VKIfKb\E\D퇺>VL}ˍ ˟sn-\dye&V [b)b%c2ڛ#ˤRU10hbgV_e@[sQJy? ZkmVO ijQrOxMT³0p[X!U bڤU+R9,ҦyI-cJpG֜أU~ k1\ oW6>Z'Lv_OW>Tkhhp3# =`bG%Ps k"TLL"gu+َxT(ݩk@J{)7F{ur;K31o9]3&*j¤"__bkqí&hRZ o䉕XN!2N2;H/>5pA;jg9K5.(6E95i(phk>Flm%x- 5Js4g]>|ΡyS{ؼ{p!'ǾkǧH/7x3ZݠX::C+]'xv]Ǟ3yEc6ܕ"6*Q ~NDRS&Ѓ]y3ZY>lVs]s%]y .EWQ S4 CEdkGv|$/"n:'L퇋a`4+Fm|KxِЄh\veI C?YjߙZ/( X$9y7_':kl4D% שիVʦ}G>l;]Ay Ǎ}EF%W=C$X!Á@d'b ɴl7Եy 6F75_ZLjNRU8sY6hóBUH*h|IglE CdHB 7XUO/&f}ll1Ob4WaVf$OoӠ{߻F PO]E/fk(ȭg7J/ֶZbZ^qrfEV췹Gn9yNj" ̓T%wlEf{Wb6j*+S'jQR ~,-&n+;Vi-N U3bbqQV]{t:&_+yӔb{ځS5>JڵNes㐸!zvȒ\CGLsU(S"X=;[r;|>2J:I6K_ĠJFcnBP|MRatyɴsw]L%MFө|G SȻHB:Rg7ڔjZ(tOM܊.b󸧷~ R4eX\2jNԁ£4'%o.HN7卥e3|)}%=Hf4ӴoJʕV0.ճovN~#I 9L%1 7O;̿\p9YUg[{"ŷIܞݩ"?aJN8N .dP!=cqX ZXҖ_ȸ/'u&0^bl7,CLȉ"P@+'dWz-;$DjwDaMuذ}crMX#tXAԂ*Hw'~TlRdYjf>R4O>O)+F' $rC-ṽlI|zK%3I_͵<>UG-dv % e=ߜç{ۋIz??6@%dQq0[F h'io] Ly'/#͐;4#3%M3EClx;qNn3_.R(xtrщ}t>h:%~BZ3&w Ɔ>P'L-O#7zPc KXz_=*P-5787:._ DD/ MG2}kcl D%3tʊ2?5B;>2*GK^ޝ)b{)Pچ6co(O@ ^mAN0r9iɦ^sa2DC~bP!ns}{!Dj{dp^R`FBUCO5c" fS=#ӦvHN :k|:4%sO}KaN"wd"" ke{#ZMjkOȮɟ'其8WfJnZ Da"5ai`>=w .((s8ط0nx-qHEOE\8]eJ)uw,vFz\Wj]DR}L߂93nTgs0PW4oZ) eZ =!(qIn펓DkЦAEy (@%5Ƹ{8G(JkK΃clzzМ^Sk˜WqsJ;0_$PH\jBX(7 q*%`xCp&]{\<%/8mkīle9fdM (}F.{i 1_4Jb$Oﶃ&GwE.HoЫ*/< \Hb@6+S;A`++p'p#&SwC{k4 O;H lCv|= .W\,^j&Nmc ]1eZ49u IfÔ_ķ#O3u;;rAp Ym38՚싳{%[cҽkOJa9!`e Or&M2d/j6+֪iϦLJ]!6 e59-2 [YaM7hޙRXҺ\祲BGeqdSkc`;"d׉,sGO؅9+k{&%8J/u c dtwU02f"_Q.ۺtbt\#`ܪA))1Lw+f͈,WóQ*+_eCD(]y3N&bUGre?E$4{ n"7D.*ȸ@K1(vR EJhp Kty["~!(叕? lD~F.` nuV3[D;.p/ڑ+/{|xg[a P2?8#%syH[\`Q0Mj8Ӭer ot>m!$ fFxGSa}B7 φy^Kihu\D۩%N&>ˠo* t(\@WW]]Y_cOW Trz-1)3/\i|<]no |Ѹ=Nm3i>E߁! >59u9;Ahg42g ^-& 4CTfšeaHִmN,j>`N^wDѳ9Jde令;4环 @#|?$/ItƼ}7tzҡn+ 6uJtTaM+@h ]jݜ׹ ͇5g!;]P;W$'zGnW5㨬:sJ\E+*t"UŝLtI-$u*ylE8=nE!loE}jFޜT8>vw,l04a#`uhS{X#[tQ jL$"4OPjRPYQP$mwTAdӌ6fh]?IWr 9 Pru#]ιY6jnU$2d}1/N3M&Lt2BUp ;s=ވ 땁UЉgko6Dv%?AXÎ.?#D0U)\O{3˙kH:|NH tЩ9i_@JݰY^$hjH cHuBΓ!~ȒYQ҉3~B(7 xME)IJpa> s.+GԱR3/Nxzpo+-*o)qp#64BjFsihͿ6ZÞw% }AuѼDIO9V3]FEByVPqy0z</bf&Lu7kOd*{ieoi/QYPIzcJEF5?^{*Sfo,DJ3kA[fh1*n ~GʦVr<7Yjpns[Γ׻#9-Yp[IP(T8LI Ҙ#bso:^-?*P̉1ƕCÀό0a2}RbTv۳z!f&(ƒAZY*tn5!Na&@t#_ !NlbT^Tlٍd>Z!ͱJF:Lxe)1R!1Q>#P8M~zڌ.85P65< ovgO@fiWe/#Ө]VU.na֣_iDW x /voCo1n#@L !`l4;3pn=|3ufR}8l#i#ӈ1LQ'f1͕Y * SAs|͇:L딟tBeHȢOl;[3 R؟WjogwcRBtuJM<~;?%=g>^#2d8U"AXgߴ> n,ہ`7Jjy]pAw_2Y Фm]g*fR~йTKVK{?ztә6W 8stGRdh=8{1Nި}IڮLGV;AQ.NfB~ !a 0Ï^c|O/!|.`'k&/C\I҄:TO뒇SlrLBԡ78jn^wn\9~j(.<][MwAIj! 68W/qU˞qq<~m2+4EAL*DCg-;E_[hF8s'\dGrd)/B&kVlaø^n^Jb[#֔#ATԇIQHG {!]ᛓ[\=d(e@! W=c~F@NQps>M GlyKg 3Bi0![PD _ d›M3[K-sgvȍIU?sm!Iþo{ܼM^sX=MP!7DHxT/ʪkH0PHzaU<40z7 w;~3,?JV fqlSZ]7w;4fa3Jb~*uƢ9\IT(Πg+~ = gj˻knP%Qw9v};R g'OC#a^OŦ9}cA!Y2m^+5?4uLr0  Xa> v^IXҺxCҍi_]Q)z|M40. f.Dc y{[bDj=[H c9LbW"bCTIT ;&]`t/t27ݳ/lJtܒI?>k0Zx5eDsZp6aJ6dޭxJs$C1L@`B" y}Ωl2/("KC)$ wzM/}K(9u]V{H$RPENg/P(!Pv4r?Q5B`CwduFxK7z^o\gS6K[>HHV_eF`>k򋷒;ujQ(nʃ+j*ZˆYJ1 Y.*c]rA!N &KѝW~2]x]j0:VJpO=穖O{N!i9;4KRQ(?'bb()r+fzqt.j 7g+=c$+ m9d: Ƿ5fWҌlY~nu@" hF!y~%(!iKMtb+MܛG=菬(&FU~-灎(zjW BWe 8?]V~{%vgr5uS h,gӮѝ<9,Ux|dzq5{z gV!==ݬŊ^kE~+evÈx ū`fQmL˂+p:&ßetkTb{>&17bѫIƙw)\i0 <^%TD|H7 KƐ3ɂo9y쎄*Asi"z}6QZ8%a6$H7TfH_$邒B 5A׎:HfER2+LpF>otەF73SEuSLj娤o3$s&N@$([NpXeZK0ڤW'C_ GJK|q)\:V9MZIewoٷT+/ycR3*p]M\ 6t%y Lp7q&e͎nd~q25ND?W1 dV~dFMWx5ho)k5,E6%jrż/*5ߌ譿>ՄNP3 ivpal#(C5mmUL mP?>K<ȼz~?G9roG*` _;0M޺|ApQ&@%X l(`0lanXx )tOf#hBdl +8 Ҡ*X;@7r/+$&T0zΪJ{'9yi5I:[gp^~GtaVnO8b} +Z?XM8 [0p#ze|e%d6|-Xj{p (:`1 ?TAZUk߳h*'c/\V<@em4QL)#@':}O,g: )ܶZQKAO:X JHHQt}8Mgy]*>c)Nu_)Ji#XZ̨ޤZgMDbʒZZz.M'{޻KͲb\;߼g;;3Q;-mnģmd彊+-jt>uխZ.f)5[1km]g#tMD_Pn6(ȡW}񛻒EjWd~6¼3a ʹÔ4"(DY;2ly*CG6J,SEZMr?z4cɝBXY+Y}3ip73fxh6^Y։NWIhʻfi}aeC@GqNO$}bъX9^Osz]$0~c8@_ek߽6`raQg2[)YP-fzpP ZCw9 <*5&\sO983y5MG58+$^Y:x[tI&X$,U,0hb#o7C'i$h~,~Xk# aGxt(s ud0؝(>GU $`+*\\\xsAy"aܜeUG?fűLtML;@r.khfƄ;p-ᠨe1S8˵ i-;+PO}u 4:maQ-\r&%A Vk\ NEsEyg}NwHQx#$_ ș#uP: WI\=DDyN&)zwHqyJap"LX\uI&1Qɂ/Y$:6m}Ԉ>BA}Jcuم5n*\|GU* >'̲2wU/#6sʮ({i,X/,Z,) ::{@C=DEDr.ԭ lYvRUQ"+m}K_~BCRXrRDy#IggS_;վd0jn@Ι9Z岨Mo~ FYd&ɽB n{Ճz>F,{].ccBh ɹF߀"Üb%ʖoorcL`Br̍XJm;1wݖQDB*}Tːy7 x|:.!ӽ;ACu5 KIn$0{ȯ j%z6 WꥰKȞ:~ 0T>Vjҗ 6*3ֆԘ&XE-~0 {R ֜Qиf`#KŪo>#"1z}R]}n#>{:ڷw"2~BGt695<jy8&p80% jޫ#2h8K톘}? Å@~ *7UsL2ͲTbGXy{ ju19!)&SͭSRPDS-7ĸOrj21HuQ:8! e)atUU~/lj z(GzY-%w-"vqzm03xYwQXLm[2q*5'S%L/0"s잣@|(>?~ ⳰*Vt]8uO$·xXxAGg[6|m߂=4[H1F۠0$RpY脼ڔ tV !q@WT¼h]DQW.G .I)?禵nhQHƕ:Q\GFLɴnN;akgO``F H [JJCK?[#!A>Wnz\=А|wN\q& g5,cФg@Pč}-(mo; z LUIV-EI -ǠgJ7^vOsgㄍZ>Y%C]wDVq+V.Hr0W)H~i.)-YuwgnQbeb2;@$wEnB&CJPaY0„>+-`߿"v*zf!p~#U- dwG_yr jpqB?Mmy$yJ;&BlUǣ<,'PQjtzہى-Z:C1PgGh20ޮ ¾x㰴ګ":  UX+'/- }WX mC"҄OzLRgoiܧzQ!s$of`m̽EXf%k)=tpȁ P҈^INHp,"k8D6IR/9,+F;:u*V1 BfZ&Vw}#n~=5Y)2P:WevZgK`C2C%:zطxqUp^mվc?"6+*?3@PZ&zWbz:a'F:4bs'MK$џɛmX8݈q4qav)Mj@y/| "; $B*{/ed}%cʣ=Rc#//KrKRƱ?>/5unE*jcB=46઴;QI\t"`FDXǥ,ZG{UίLSj>D*L'c;?~utU+?R$3v咖rgZRNO^s}-~3Xu7\n>:9Ux>c{n̨+W``GOQ۾Ϸ!cGn, 25a j]Xӽ1` &m'gؑ&3P5[\^(o+혿g~VaDYQYu^?d(s0L Bn"+ps_WڌW5w8L5L. pHjc$TE8}$H&p{wv~]  6#d z'Cq6Mݓj7w30ݟe<Ϝ6@͕j;Gj0`]*#IX ]"–: rAr]:5{/vy! B}rLEВQ:5/g06S= ~F_6%HMR ĦV,~'Pi5NLT3M'{ok\>b@1_*V0ϗ_9m(: ~@AobG#b PEcf{M+^R g!L ۡcSD)X\#U(@΂W6&d7Њ&/&ː f@![E%p `^*o:ďЧDIkJ?3)LX\%vFGtsv`L:fJc$2Wr ؈{䎒v|AE紁,z%kZ9%>ӑ$ M0pHvGBK%9=9. ƆmB<)9y8_I蕂u#a_uAˏfY5UDwԣW:tpXVojWy0׫"a]7kuitYI Nt3GUTE9+BRcL6] S#Hޣ[36 oR 'y$m'zH^ݟp򲆟IF-ΌŸ\ Г%U<K+]cvmȪv.K7%-Kz5_Qp} HGG~ک5;]SZb5~Wa̍S7@f!hGZ?vGvZ6s;]y0ZmJ%Z=g3tFr$\7HV ;i\+I^QKݍJnQ6v_d0|(smbRkhC} ;q"51 Ae)Ж]nI#FfkϐLQ1?vAhKG#6Qf7b˼.+kXtYxAl:J-9J0ڠMDخ&$֑BW{H~O|Z윾^OZ55k30rw~J0)azaKz^'($<_vMX-Ilu|E‡6cipx| dhfDUI6[\ y&*Ή9QaA܉d Afı,\9EJgDX fJt?3v~DFw5>C[˜[_0% ;I{,!lA⇟ZEsl56eynh@U]SCÛ-t2y[NXb.WD4(ED$&]xqs2,vG>/$'>iM3җŁ^7zX)nv׈V~1$kc 3ى+Aj@oV:^OqwxeY%ۡ݇J-`.obZe2VQ̃͢izXXM)58h\Ձdƞi5qaMI[FU D1eRf~7n*V='lE-fU*)\F)zzIJ1EjKdGyd 睾xf&,{>>5L3vLJ}'Fk!kX\glˣ8%<*<  (K-&lv$D2 F>2LFװ0@Y tȉVقo aDsyjD"|b6ƶ %KH+:* 9S7MȦpnAŅqCL OA}3i}=J]vdZ72 vBװ8v )yb?ƒJzrI*yFrc2; +~SRwO u*e4$? ̥lvo^\=>c4\& ΞhH0ayBosZ*}m{j>f}),ט6հ=M (B5XԬhp`h)FWPnOo&XgRUm`9(yh]-^#ƲڍTӕ1nu7LZ z`,)ȇMwݩO}ON!&dj6)Guv8Z`8J@=@.3}cheӚ#N%*WaY3m$s2|XoSZ6eېM=Řj,Ukq1<+([NR}x U V/TK"B;n%[3$ Nd$)є؞0:!eW"Cױ{u0tw> >Gat}!?{R%ZxF7O.izʞݬξIISRL:AN?֡+2h?bl+e4zh@ã nخdjFz z?l[b1퐫JųGffV͙=:% ̧hq\qZ%~RY 3uuev"שaIdgҀYڑH`g{\,f|;acZQKx^ȕIJ~[I~_i%D4xHH3*0ŶH'%٢TÆj 8p{U3to[g }߬gm6SE-9_T!~ }vw)]$̘ bW;BRX(nT|BJ'N)6ɂ-b+k΃"Yg{u_Go)V/(,dVWiiy(4 ի8yhm-Ё7_4$ץx mDUX`gT[g7!'AGx%LN?Y^$^pxL!DԠWR㢱w-圓zSdYU$sN8cs"k#fZl#o!4CLљ5F ᫞l*;8vZ|::3s9p$mL% []ږٯoӒڎcM 5X-E8c\_X؄S&k+@"`S~em߻yŮr |f u`ΣuK}LѦAv&@M2 I" rQMy{-1?pT|E(r2\ ɦ۟KA"jauj r7yJof8Ae XN?ҐdH%Z7=7/3oh~M.ʰ:]:O4 X/1WAhܬpܜ#?ѐ|\q~PUR(K!H2dpJұ&!8P)%tlSHRބѽ%O\c faq`9>QINlV0lH6TvK!.7G#[氥^ .mC{ 'ͬՆT֘rS Rq!h襎N:-R ԶIh )۔/1̹dT` 4YiLқށo7WFc;Vhʌ7ʂ;WFNUdr-}2}AҁgW aoj 'éfvs$d?!<+u p^{{v6!|s ]Xbr'Kj+f./ț}bP:71z`W3q|sZ"8I.(S@."mMؓ ϸXt1:q.K 6EUuOqw WPQzWtUz eӚ |ZQ?( 3;|(= I5u3zV+;To|f.]xb*P oilڷ(AMCS No^XT,*C,{7GZ*1Zٵe^+o Fa։1A笙P yL>#zvơ` M$-FS 59%ev~W8 `IX3ud R hxntBJsVޟcq^1'(Wi?߬v-%XMP/rT4ž%,!W)p_t_2fv< ',޽Qd.^'R3FVq lT=d0acxN(I szYeǭg)CL 490K+y!-{uֱ3x| B5U`"vQ>>Ϛz O%aOqV74wv"œ7S;tPeijb[w[@-+dE/_,_?z7bTS%``av":pV_-pJUGM˱1z.8ih)/yXGBW㈺*kZ nmNG(|m;[ʼ SAA6L˧u(`Vd} SZ][M5#_ǵ.b[+1!61i-vZտbPk2Y(CVAKR#knc<3lZ{O̒V*>4O@ޔG3¨FPv}\ ֋?f/1ՄN:a"!K+)^܏޴f סHhCF3e Ḏs^xYv gz2 wJQwF4zOez|FƝ@ JNߐXYy\$O` &ՠo@,P<+ ˲`Yl̫2fSar @c?ѼeVzu~&-8 CW,H-s2)mi'ʍB&Hɱ{BkU29SByۻD@`~1>mqx ҽbmfi8w= g<^Lt^i[Vnҧ<#; BSEM8}- 7VE~ wpCjX N yr.hӏwtUK8>؝%Us(PoD~[eN,Uݒ ܅l;//z䦧u珚1<;"I@]!"vZ^܋JAwrv6TʶѠe 61]a)y,9l!mErDN` 2'9Y]b`n8pG6-4/PGv,RwB{B:|;\9` `d||jhr6 AW&`nj'[dOLiu\}Ϧ ce8)ldZԖ9< <3ℤiBv{h|^ʭʹrGն]BcOmB\Yy;Tu+>_4 1g2C52qEDiH$7=ao, e<ԛ.NM'W?BOGa7oN&(Iխ[nwV{ەaFdxA!j1Aݗ ̬yQ ߑlcrt 2=qI7{jRP**C22kٚq^'Fg312U/MF: 2|#FTfY?Q_^D!{- K\*`ʶuHNױ,?bW#}hљ)HENPGK I6N]&z[`#dϭ CpiqCHQ&e@ӼQwn+^kz4.uM#'Oyqח]{A Ov. 8>ԓe.AwK,tW>v1La@GloMMɲ"eUѲ?cʚѿz{Sf& _5?+^[8m"%t7~Zӊn ;߯4=QԽN9.ORmE>d\8/ A ܎H(7])nn!ܿ><&Nn&?%&>O:e>(D;%rsxSA/[*ߪ.yN]:[ (,&2DBɖ3OF{:pX(`!AuG>~Ik"1~ruTzv&SD$䘨tx[ڦД%_#}W SZxWE伓_ "c ɩ@G3]}6 '@ֺzE;X 5,2M@!&o,s#kYQ,`5LmRn!e\V|0jt_ذ_;{r{@TP' GCYAPl1Gcj0rfvTJႉ-+kE1s)ɏq,Q(U~3JFL:Սxx|蕰H c (fŠ#zԂ?161 ʷ@( }akB7}8]>^Us"o6 z%14n1K[z_,iFaAJ~ }T7^:jVgؽ^pwTg>h?R}2:f2(Poяb֔h/1&8^u;yqeqtf/mjoKsFj9_ȏ7a;4T]IQglFA'U3gr L{/߭-;IFm,@OXdN=aTofuĈD^_R\#z4!C|Xtz n Wq+No&ϡ`y'eF4\ßAiʥڝ.=3u #*zi|8A>+R ٳgd xALQvV!2#)49FYX; &tt$9~wws 54/Z"ke@a:oa&.+~snh@2+C_VYp'lϹuSLg$L$ }iW`\ͅ{a-!titg[;`'#CX{zy s׀3k;T@0{"'"r#7XF9L3qL9>OkaRwC}˜64ۥ*{%VF9!bu)h&8P]4Ƚ4,oI_{[V"KCt΀W)YP{w^h/|h6N Q+jNpY8+(. LjAWI6, vZ/Ya?͐Ts jg&#ʑEBNI"+ߘ1&ށ xJApŨ4| dY7SpN=*Z3}p=A0iv[lP#3+F< gykN$8҅+I(ղ_6Df |O>+W,ik|`ʦ,pyҝvqfKQsc\0ܨٷ3pYϩf<~ǫYUӳߋp{m-eV꧿S2,U8x(Gs(_Έ?Ŧ(͛ïl$L~g0i*>!PI%Kƕ{Rz.?$UoDRh_>~ޒvy隓mA8Žխ\|2RcjgkFo~Æ%(젰5S ONq1Zkz|pk?X82wAYƾ-[2;_0yR2-Z: ǗTڣYofe pxˮCfz[Cד(&Ϲ5 yz+YɆ1߶_ Ͳj?ς|I 7-DxF=Ɲe4 L:X{)LC';Gc  + +4}~R+ثK{L*GȾ/6~Rk_]mۼ!BNeS7(ZDI=dlldwlu,E&c;҈~TFv \!BSEȡ{Pwӥiq1;AhGdwna.2L(m]&]-߱(]w7c>`Tg |XLb]2pD,W3`. J=Υw3C9r.}+,)Bj٩)I7*1eҥ!iY٪ei5r7|&OVe!"ԸfdNp(._EitD@U}XFW H5f' `3a զ[ƫԼ3.IO߭cǛߎ#)H<1tkDAL]bal}o4gלk-D1db :TwGI!i߸7şEG%;ؕƖݻ5 |Fbuo57:p%˭m::^ٸXz2"ZcF+ Fk໩UAp~kٿ+a0fKFn|PPq2CrP< )D-}jl܀ß!F|YGN;%myqngQ膳?Az.!<F}pSN%)v*[ kxLYc$z@"H˗=66Mű>j8Y{f3t;VUzDL?GFr,Jp!!!> "6i"۬wЊC)`B/:VbdA^tk ^al=ISBݳsn  &c(pԼ b>C|] I)dhD! aW#GըF˕MPX|x">.7V|1hhg?Y.SMzS9~\`tuUg%K"'ϦbO11&QƺVM[P*<ݡk9  2 ݺ׏l(v*tqq,ŝ?W,aG)D?d uGEc\:AwҴN""ħn\^^9/u s  tOLG6 jt٭"Y=H [imRObB/\=\9FOW6N Ž̿Ryu$^ƜfџX'|GeY_P!pąH>")C8Ճ𵮫W(J7Hx=qn|J-oa,lg[IYԽk2:6LU`f!ZA (=1 ]|pJM3vqzz1:ezDttkk" \T(Y4/ Bjޡ; F&Dhn^P|>tcae-ڦ IA72V彩BfLzs +c"c9[$ղB9c&C-*-8%8[4c!wM_KP y.md 3dJ _ۼڳ4xd[Nxj{p6/o\e׎vҚܰaYB:h% <s!6 aAW"ǒ-)h!C OtFG+bz > V{Obڂ 'e LPw9uku6|r>`_;U/Sw+n&TI5 ŸD.j/lJͦ4O<+Y}JdӾ*?z-| d7R$ϗ|TWf]~~uՔ? @ǝH)(;w7]lg]. B+w\RlᴤCoHpS&zy9jic6 ٪E8lsJ$<%I Lnve|Yߥ4Ẍ́2;?Cld %,0[ CU9_,#yʯ.n AKߛqm.&5\n1afqw(t2~1Rrw\AI{A:arI;I /9p$#YK?'Ul>hH_oe?d ݌uXl"A!*Eȃq MVJڳZϊŬ Sq>ӂ'[e-3_V?j!<,\m}(flil-*os(о 0ʹbFqa2 -~dj8z'8$ 1Alf&Z9VN2*[c8@m2D)yxKLR]]Ye#A00e\͇>}l 2Jr_s)4T9"(J>`TSv}t;q(~9R󎒁(I9c|Evl0O]mcTXDI д[ }$oaVQ!q}-"\vW{@z^ݏ+2msn@*҇+)ϙ皹b8D^ rUKdNF"щ$gh# J(6 !Mpx=N) XGՙ_>Ng[\6&?'fxEK_~d d=Vp 6佋hD/aW2Fn5?Z{FCw<. 8B)fKX*A_qt1[*]pǔ 4uO[1Tk`k4d*"fӑUjʯ{1-8Bő J Q:zJ#7p7sa1+rj(0#   o&tϤx=3U嵻-<),s-9HC4/B$+-E}enCn0]׵pYZgSn.^[՜Ԛۘd0+azT kj'sѡP+KѶk:趰ۥIwċAn/2 dꚒMi@%[Ǹo#ru#)YˉZ &#v Δ"xqzf Mg\{0EJr ҹBh-}gUK ,+L.IW`^<^Wk!%p g9 K=)!8˷D,C(=wMOޜ\%Ѳ 6;NRp3ˌ.A݆TvsBT=ޕN׊YJ"u.a15*azMI6z.|4xs`n}'K% |RfX;вlt< o©K-Ca/<"h$V.:qac:I~VpT,s\i4|ւ|"pܸsI"fD/IQK*!/O{@}HP*OK2p`\(h ^5@cJo؞~!KZh|~ #B.NO?c+s~wx>U%N;~a-I:pud#~>"mwi0>av9 .r1}WK|6и> 㫗~Mt}F U s?TbUfi /5 ȿD`H4tV#B⭛t_/؅%BN ~xzrc(+7f*U;sl|ߣ m'8[9z|&xXUѝw Z^f#NWyX*GiCİ-t%.Md;y5!8(Ć2?>! .3U3%뽧QM~ۥYJzG f{F ƥa?y*? 㕬s-M*KRP'?]Zl_@Sh|6lvWa3WmwbUY4]w*{aXr0y`Z R[0h֣ǘ˽( OM1[!dAy[[9 s϶t*1ci  J76+ 90*P-KHz,P_UhM$%VLJgI y+Ez>H륚8:$^Ca2J8Y ΃֬O=dQbU1H5-@.왲K 4 JKl)x=-d1«+p!V%$w~Y,Z+^o" &oN&;z+c4s;t&H~dP0~=9!y]Uf2_҇g9ؘ*lUåuwnl9EX7~5ȿZYU)jd'LMcDӗp=x+p_QJ<ˮQT(V[W~n -k_q88 {qN=mBG_̙e[ <>vGs΅LL7 fFvA~Bn1Ji7eb^6Z>AzǮ8sa W+ @H)Hj*~2epm[v0__/E/<1P+YTόOpH|BYyoL:hhL/ay5^Zva/U]BhHPn9gű=' t,0@SQ_P`HjRtrMN%*4S @ȓv:yPn9Cf\j ǧ D\dϸv Uŵ(}q=9oѝ#SoisDPM#"HDXK::$^LPҥxd.pMv[PԷ9ME]g_"Wux)s4{XOB T5iCa|L(pURcyؽQ3E"K|ʆ>y^susGPҀ*v`Dg%Ap)f7;jHUfhtY6C }\O:`Zk ֫(Bu/%#z0)lDiwK(qP' #tP{l{Ђ-i%AҔt1Dm?:1 їa/}U^#+B.ڜUՁG*6Yk|;"aHH}%o-FvId0zQOy#3tD~|#fkN_tr`z8 y9_A!D(Sk jҰ*Ccuj|^y Wǃ,ebgӰ5Lvi5gq@&fw;v\6a'"!5'E[QDOv|hSJ(W{j yO%̳0-S,?B@I[@UtagMhWzh-$D.ʮ7o'<oLۅ^V+1Gbg)^5 ׮S>m͑.feVFBթR?cI`r1As .$1n }i.KKmza42uU/w Gt ^V1օ DCFS/8 V_B2xO1O]lCk^£ǁ\ W$Nh'bP;k1({xZ{FCqa`MVXKJ UFP5KyJ[7uϠ0IڒOthDQdp+e<)p@٪ ʬh/sXJ(O9?yj\e0 _x\H"n%HxjsY`fy@ g;+&i2on )Cf+zH@AN+T_w) YnHDM|/ UwZD=JSws&}!LF/$]I·ł-*RP?{URƘ'?);fKʎZ"Kw"܉Il8h}W/ph͋4nDRR5-ra%:0i(&](fx2=~_Mۃ䪤PW3i<򧾂 nuq,*Z}cj 8J 00MRmIX@Oˆ"\4Ivq%<؈@mS} {%|rk'=~fKtIT˪0HOH0Zs4/6G_KS#Ry53|<k/9gr[8ˁCm+YcdRMpu?>zM85f(dh&Htl45>È= 8CbkhQ\$vsu4X'OFQ*7}faQO]t&Cl}(o^s+f祄Ǎ}F өei+zn 7AQTaPvE_s0od. ¢ ޭj.y 9@U:y\bY[o]uʠk%%I9)FR oݫrcbs`(nӜ zN.x)# ,ċ O"΀~OqI5ޖ̰.΁']h5?LN9 xg<@ɣKRϼ3|-C%Jtcct6򆉥P,0fL^~h6WFP<EYgo (f1N,w9Fv] fBe3,7#Tsş;4`ϟoW?M;n$)-І[*Tܑu2) gJ~|ut{P!HcΚ8L[mȹ4<` :>,a=gJ_sB&1-1 9" Oc:x[׽G]dQBH ܘآ Z~>,hSg~estgV,rwnj x0'ݘBeI1kПu6JpV,A4F( L QMw7UXI7EBJ 6 >v[vrRAG_޳ZwfK¯u @`Dk-e$ibugVv"VPkj%M0Z,R# » `\%a1_.Z)í_ln3Ys1Kx.$@C .M}=JXqG}'Is݊+g޷T-gEzn %h4Q'`]u4ֈ~tSk=YA^br,,SHOL{w\.uy3-M6ذ,}-4&)vu@/n waIwbJC8ئ&K<' ߲m3%R6>LHQe> U` R(Yh0S}}Bp]ol.vi6(V ׅZ*As1@o㩨۱ ϢeLK#ȸڗ ɔtU}p2 qOtܝv8?Nd1dj5gs .Z]8~)6 ^ "acwtypaHZLQ&w>#ItW|"lTSio#PEb$e;"VECG=`2@i#|Xt$$Fs?MĢ`D#&S.\yofd .3꥞ V8`a6z(68wm 4KP, ޖhz-PmJ_RЇm9h ꟐN"`2\ Y]54(νt;H?g53*qHCZhB$']fO{]ʹ<{w~eC҈`Sؐ@b-DH{^m#ρB\Q5}D7cC^{gY= , fU*|k0Q!__qT"?N56Q8Ӌ,޻8Ky׺bl6p]7&0Y]jI PƴZRY& c/DwBQg ؊ O*nD|ڈtNHiX~Jj2$vd;Cì }SQv$~$-yhhsC,u)i1Y(VwU:UGox 0i>"08UeD"Maa&qhgyoޓW%}WJF4qTznwg{2z3O"Cs⭵l s >驺#e}9];`r^''ˠ0 n]m&û7:?Cy~C%ڏsoͿi"CZKن72<#a컓<[΅_P>+]uBBeБxcta&*[:_4b:?N`t~$}_gYm.J[?ng|(HJ$vn(wM{ NJSEY4iKƎ>sϊ_,g[}28ETCv3त2-cuL]jA2 \2O^̙A "ԢqT.,s] gP>j(r8TL5r0"!>Ip7ѓN>K鎚Z$pwbWB\[T#b=y/Ѕ.ٜ;iIr"+6Kwn]} {7Kw˥{Q&FU݉H(cZ(Hth֑m߯]X$nA(bEWhoa;i;V}#rQѽkF>ޥu1!mX-| BEsI÷؄~K[SR,dV1Q[8Ƽa2yX/ٜ ^"2Sklb+M܇LU×m 4QSҌe} Irzm> bp%n:?, utѕ$"cOkۓhl 5&gO~7-Dv05*O^ŅK{Z y'OE&+lKut˿EXj[#'<tUGK*(ӷiNԠ3M /kkZ\ v''n˗we$7P՟^='Y+ ڿҩCGXykR2q1[,*:zx/iGj1C&np# Knn@)YmZހdƼZw"u#mRE%]^NE&`qBp1ZN8rYP[c&eP;uRkeOar`Us`#8!,gǣCJs'Ji )`e kwNV*6:Y*pԺ㮰pw跾?EX\ ]v*{0V{:Ҧs->K5T3$Z ~g7JMCD=:sNۼݵ?Oi@,f4U#T]f`.F9JJ9 Q}5 g*'2mګot^^Ssݑ?o)]@Or/jέ|Izi%WC7ߙ/`;2#@b J3uxKz_t' %P _X@D:G$p*8E{vjf9. 4~> dO(ZӡnudYntv?JY̺0Z6#!apP;vp;XM-CiWt+1$Tj0^ Xŧvwjmsqܢ1,Dr7ήCU6K4Ez8bq?z*Ze!ogۉcK:7عKc |c[-z2M|fier|{F>> ]sO<4m9tbNmϨ@G,.aKɤK%ْr"dmێ \鳷&=9l *4A>mw\%MdܶGhJ2@CXRg$b't>J?qW%B"lz HN{lu+,3y0Q>Tm,dh-n3-'\,.Ot 4Sۃ]n)]C™m :8ckS$1V)ɷV U%ўb3pC\YZx'10 yd Б4=Mg1c/,0j$UIO%2'0AY$]w2]\8Zհ:ktW5Ͳd bM=hMj(<{g0X><[7Qִ 텞`KKiIeаajSV ;1E'JWX1 S52?s\O"㶵R:[tCS`. 5{(gjX=n.I %笓SU憼t8 exz@;'H삣C oˮtzv-snpvARF5>:|0:zS-7§Lg1ugT\PĊ bP 1`x}o*da4RS|,9pG{c_K_>*5.C\~"8|$A )pp) y]J|/"*msy'tOPXb<;ۃqmd]vɂ)!BFSts]!ˠ9=&oJc/3*+<Ǟ5'#;NQ NSD dDsRF+ :[#%;E ӬԼJ8v X߲o);2ۡ1ʄF!Z=EF/i;ZqX-- z (y|I$ޕ&YuBU;b1 =&&,H˧$^fYaP<*WQި6UiUk/eь]ƪ:V4eDCddž#/VX\;3DZR,8 Rb؞̺PYUDѹ27uH7k٥UO)], /  2u+%,wޡ֫\61 "UtrFٯ`̣oXu3LIO?E'1(l`բaC+H#?b?6ͫ^ljiq rspA#4ϱlh#2~ޏ" uU(Ҟ\mvZ|њr&\{C_tҼzlyfSt w}?WwZ.Α<%_ wiw*yhQ3-'Xb) !d${2[h3WyNh@bj蝞;S|G83iD1'KG!58#NA`0J4-L+wm0kxtqA6 xY òR5dVw(s$guϜν 8ѵQ:3c /CMFTW0nwI&yN\vUA!S/8xl-u'iGܫb$w&ƹ+XQ,^7/6[{4}+!]PDC/Z1.=Lz#t*,^ PتUtNPHVw/.N`Vp)OMwC*eN}%CXeSO M/)0w>S]ܫt((!Ba7~G}@||橊Z$s ozUnzXv*-L秂>irQyR&9v |qS|NyXB F2U_T^a\0}hQ{قX*/F6]ep%#F+Jeh*'Jǐ ^ Wes4Y/=p{ƝXiH$_u-Jva.1C?{k@Asl1YM6qwN[#ދD^\}vWGb#2[sQ#!aڰ.Uw7 pFyN{MLHhPjVOUDtRZgu |W6 $izlW\?Hz1>)[L"};k~(X[~je(M /5Do"iA6҆L1w'Wٟ\,Z,+!?XejsB.1K\W|(PTiwѫ=,-PuhwmRI7RNn{xV08{}hҗQa3i\soޡ;ɞ|W,5-1g sy4]ᶑ)L[J+Mt Mڴuf iZwI;i17بtÑwjL< ΍؉ω{pJ"m1w0v]s3Df$LXPn MQʠg qq)uN"ps!2#Cysg K^7J6Vn֥u!犿ډo6Uy Cmm^ r96iojAY] Dr8=raڽr^N`0A NH1Yo$g(bdǣqr  ( X 狝ףV&)NZS1"9봚ZxUP[UD9fIF.`bT{dMrpS،LyU78V@>ݳ{9{5zc!{k]/1z ƻj;j t(eݖ\qg-ly1R¡9^7A_F8j#zL.AϸIl#t]ұ stۤwкq]%sj&.c(8yeń\O]¿r;Vo友ɏ!v6Owd6Ez_Z8Vy#yeR(L!vmP:^!AMraˀ I$@1cG|wfk9|n1a~g"RE0F4 R` mwIb%T 7:yC$4ؤ|J% mĆn{DPd.;:+$vm]rȅ77%yHOFTkPxkz$pBNAON Hxr =t>q6gJל6hyF,~1[9 w@|]F|E,ȍPi#u6܃cxӴH;q ,KTk`S~l|HEzA,4yu [ln'^7/we7B>(Oc(#ZȂE}#T2ќct]:D, ꇰ,F2,(nO8pz/vil݁$eFCxKXRH^/0%JN@%q.2@@oB&߬.*WH+F6C˰DZpx"P1Nn㮥̗?_ "]"B*=*½A@yRXDl1wgl7n="qU%`Am\^90AB*,6:+h#SX{Y@Uv%fFA)|:Xn'ю4-{N2;CTr*NF<^n?IhZ9{JyL/ r$ƗK6mE},u^D)Yh#`r u 1ʌe1XG亯!' 1jEsꚠwŸ % q*{G9KkG^z(fG}[X_=.Xl<ࢼjP|u>>&Vu \)A}aUѡ -TD5;CݢhAVya%@Nɏ. B= dei?wn[n`cLqG"[w]]@,;o;^pΦi9y]#z B<^OsY];I˽QJ_~"pin !#n| ^nzQ"B@ԷaU0n@*KykЬR4i]ݜp2)}7z8j:Cy~ROx";/jmwRwXABZ_=ATM1ӅW؇ţdGcP%yOv;v@ozXظnr&Qv7B #`cN7i#~s=G u.q%^)Ra(N? hAk{@q~=A9>g g9yCv6'wߋWc@˪GT-"W6MoUQ惓= <ˎqe";IVPI2/NXЍ󛊸"(CApS\}n"cR`5A,qTugڄ+LcFt A8<#Dh9] }33"n WG]CYD ¸Jip=RT1\n)Sr]a+U6GV|hǭ#pwqJyzIb!o`RC}-/*G6|{XDZG]yք &7+.f bg=:RZK,ϥ6FGҬe1-{)cU5X;yG嫭b-0>ʠ1 Q=l)8J}M}.s~cRҥ_'3C9Sg|;5&7*˚9#BHn;dX~%RcpCuP$$v?f3Kp..$f_s˖A]HMR<5YcNmFY" n'rmz}oMMA+g2 I=T+>ģ߬AUd9 khD$ÿ *jUx3$鸢8{L%  VtʂŶ#`MFiw⸩.CuB`(l95s;DecjZ-Mtc}/u7tX .,V _@e0iaT4!P/5ϰ&4(v n)ت|>I %2H'g~f]֏y~o5Teѫ؏Cdڙs=6rwA߽6hƅ&V$he "YJ"Q<3Z]P5qnuIl·}5hx80 P>፪Si1j*lyq}7N>FSz~![X9H-FY9 0J1'.XZTNJ5zoZw^ُGtIM徱O'"j4]wN3f'{KT8@ܯWHߖܘ(Q.:>.c2!%s4( a"7&V9"́FPErZp'@B`YqdK\QYۃl1UtlżXGe~moƌ3;P+&`yjTWjY^ZQg Fz<|g!YTFњ=8T!=G$ KCJa0vZV8EQ/#2jI%>b@>Dkt/cqO^Svc %3ġqYtL*/>b(q@[t'H#*2 uoCn1 RtnMXPy|bc Mڟ KaiI@̙4{ =p 슛yq)Wڲh?*H{ILZk䎌]- +|rt4F-M -_9F^ȹP8Hzavmw^^$P[罣7 1Ź^NHQFCt=l20\jpfGGJ[bAr;]j*{ ӿ>2hO4f&Ji#;׀Kg !#ŗ$3:!`\};Vi𘹿c2"yoo.Je9x-ۍ#vR/x<}zɠ=жM *_kffz1i7q/=H 6E+oS',i*x:mIږikc%@%!JN)+g&#]pQ+clίڤ8h0zB~F d4ȱ4jQZfMsz*z!X**h1n^zp%r\osSWb* ӅN;mʳi'{JwM5RNV`.6Y9 ba%+g3>_~ qQXtw=rm vl 2>C5rh0G;YȥdѯVShIvp9-}"|;m KVrδah^h\L:-XdA ߸VY p_K( ?oGY ?׌,-hG7xBegn(p=X2_SΦ~Oɗ+LqF!#\S`teOב[mўN|B;$Nq΀ צIkd8%ڑ".8Tu1a@;O;]f"/=p/Rn[|V g"1ڃ,P!r]˩I8 $ ?x*> nJ^IlGA F4jCjső4"t7-ٷK=aSU֛DbvWꮤ1$rW3Nrmg| -w&d"jfI\x]rI˻-kԿEXߪ?F:̔0w!dt⑝zfD-&.ҢXZgFJ#^-F~>ac苄O0C%'{sR@+"pX6﮷CdkƮ6o - 劒fݯO.YhšxjĩvR 9""l~hOy6\NZ2=F,OcTمԃ|kx`՛ JE=HlOF'/} Ϡ̶Vz T&9-ܹGCͬ#ee= E.0TiX-Ml?A0oxZd{a7$hO"()L~A(SZ-mleE?~:.JP1EٔԆ s X(: d]1xH Y`j$ir9]p_f[DXNl៘N9_S]Y@:{Ϗ *h*).`8Ta V&h$K\&BݑhcJ-/( }#%ZGSVBVKx9;8F+g;\^CE^^Ks~zBxoA oJҰeA*lGNJR/$eAO&_, %WJBb>!JqLalTPөX\p 4=j<C}8]e'p%Qs,l Y<QKQ-2;󕍈4m_ah3'{!Bgő"6/ Zu=5ߡ$eVa[{)zxp$o¿!_jb#SQ5̰')Dy_Gt;Zթ UD}tya`GɟoNPV"h6R_XSo(rl*mBT^J=Wܨ Wh>݈0g 6 մ.#ճ0K҇N%]ߣ3dC%oPj3?YU!VMog\k+Jd&dhq,u%C\1 jڄVb~͠][qڊN`Gj0ezkkJ&X(tդKQC ΍ IPS<8zߵ OT?q yw}:-xHMG|Py'M$)F@<Yw#UȦ޸O/轉tɽy7͐7yْ0%W =WNqh0Zo|:lȂ;4n4N%BP+y9P&?|KA'?k ű0MvL}g+7F!PU9@[Uv*R%&} .Yg43!]ڔnuØֶ͐=h65hn8^ ,7*wƠ2%9%O, ֘a&&A"ӟ0KAFH3j64PÏUHK|/f]Ă(s]+k]|DWB i% #RA%,u #pe hrp?`aP Ǩ|9 Օ1򺢒uMg}m%~G [ɍTl4#IY^B˩˪# iSonF_0g/,.GV0.q?]cܽX(SS>SsPF \pNad*ۅ!0!5OgN]ђ~*!Q _W$ENq~gPc{o2ICYI0k,;'q^5"TsF.ഄ[7eJ`doT?f4/\(E> ; U*x2*DKV|=̪W_|pة0tO sʃ۶F;)Q Sr>uβt.W| ۴`#1=h%Cu@D4Ґ;R2S%7%*9RGtg"0  T7S5" h/T*ECJGkzFBn:F &.^IT~\rLY_-DeXH{}(mIǑ@㿈l7\_:^ɽo:9!ݧF`A{2M |qD Y)tk2.5p5A60-rM8*"Cd cM:Ax՜9F7|SEkڣ >ݚmd-#b#D&Lqe'(Z ಠH;^}/}gOn qхvUj <2RsO I@Vv@[Sɤc7e_d.+?V^Wb1TW?NS<#U'KZR)RhcgC,WNMNr"h!CDž (א~bvfֺkʨ9=^}1־UVT^V3~+BcNfSj+~K+j)Ry'B"@ӂ&zEʣ*fQnj\G*_f,LwJ*Ac%`ęA;WڿVkIb)mdfI#! $aY; u).y\*TJѶeyuDwVdžKmdjWU2+=62ч:@3GO̔5sZ"!.A&MeBfBI(I_zo IiSa[޺?Y^69(spZŦG}m,SZT PqEsNg47$OO awxΚk@R?UHz~~oRZEzwݑKf,:W'Ly~cF0V)2@# Ue:Tx0N^aFF2*Wm0w|s:i՗YnhbI ˿׺aƛu%{@QkA  .ly%4Լ=7 jTlqXڼèFB5sp$~}Ԡm$m+> $ 86|ogpB}2>$,/WŏrnxZ2#8$X5wSZwmi,pvZj:9D~IHڵwCgncTѠ#3ًa F{Tz%.-4.LAݿu5 =Ή Zp6PWi5Ҫv|xNb b>p=/ܭ'u0-`{vȕl( hū6@nJi1wx^vZYt,U &t?lsDAoOp`_^Xq0UqeFi/ ^d%J#QaYySΧ3R~nMVW68u3d(N *pɎԿw_R僜Ӱщ3Tl$B0RbEJ`UFTn(:K}Ya6{O F[ɟ78W:清yqbNs]N R"wlG:F?\ZripªjxPE+*>7ZSp^-`f1q^ZR)Y8 s^Gn]-a~wvlHн8xȰb<:'LpSX1l+2:='DcQse+ؖ+t_rɴB֬4JZ?мSa|֕pRkXztdk;\K2.UҼKCqQ*,T-Fi UG F9^՝لxnj.wZW'1nJwN neP$L{`S&^UmSJl_Jqf{ef)iuG|I, P%!1 5*v/3<2kNe|*rʆL<W b#ۣ}JsF822q"naːn;$bJ,3Ӱ)GC`XI,mEˌ;*82tSv$%of\"qrsqF/1S1+*̰KZ}.$ԮW i#(,Ǿt{菛UZ*=0lk2j 1]m[,#-xՒU f6sUlD?-툜T0qyŅn6tzv3n_lTdյ'uiE< Cb)?vdL/ߑ;@MOoY9:s?Xuu6Y2?Ł_Ev q܈Y5Mψp}p$j \R]t% ^)3񧏺oO궅5)w HL<ޏ0eG,nyR91p(}cÎ/Vt&Ga "&=H'o5 Vɤ7ՙ0~W3\"#4-pml]"CrU.OChF/VvE z,y(C^w=E9M;TSfw/`pY A  p/)`v;G T/.\?N%un=7|..ze~%cq8B: %|mT0; ذ0x|8 /7c %I^`ISk;8xl.0"}FGYo)6pŢ0mTF!.D{I>[QU JdHtf5~`cjƙz\ٽz0vV))l;Mݔ#dșzB~Jm\Poz\00ӝȈ=i 9Ą[7m)v06NctZcylVoF8oa w5 0s󐇯Xߵa0=VG7^}DEbPu #J+ͪOXH}_ݺ*! ̀p{q 0N2 EfkAѤ%} Yj^xז71SvdLS݅8KjǸ>"М,R_CbR1+H vGGv .gH a԰ i?N7nrJ)\B ."ncޔts *~!0Q`+ R |Y3՚ɠ͔!Eܽ]3Np2R5M&6վ2b*⒗Bv4[{%rP.Aa yoɅ9$Bݤѿ0Y^3CgTօ⹿L4_XRCQ&XSo|y~4Ur= @8Duhg aVB "Δj6p.G9s`GK)AM?9)9~y%`qcd n#T4iE3d%m-c F2$['sđ[4O{e6\;$ Y,wyx(+kA}σ~/@vgz~ Gm\|`"ЄtV˹J+ cw!r5jh_MI \McdJ;oSXg\\yt2wiħyO?888.lS1t/紺Vp`jԮZ2!,7ȷ&GDzY;:mո'bOe_AgH͋^&o:Hq!7 InU"ߟ#]>S^e% s߼ hu<k"YƫIx)@X'Vg-Q'h$("cII2ŻGB/=@,Vn>[°-.? " `zãle\://y܉*n]P=),޴^}|IC3&8+Z˝)C)~ *y~Tڕ8Ϩ*?М8z};՛G8JioBG8b& 5o(۝Lޅ [<ϧ`t)/e~q(k2XJy$Q\OQ< 0\G]ػ\HyVGdRaέbvϔ܉uyE*'_a! ]GGpl/'2x'+$3+(-pg:f@ǗVnJHV# ^37[ <%&w:akP&}Bl;d9[=˞J/XBR `ǀu}g.'p?PWG U} T\r׍4b 1ЈcZ?rim WD.PB,}ϓ 4W\> bFI)ԍt@o[& E4#`iRV.\LZ}WA2c+|WWWIwU4G`0K sq!6"@QZz<FsguYYB}3:HYujcu~?l2A+^ ټx'o F6e34959tx>\@[Ht6DqOۄf+n0">G!M$p[&ؼ3M;fsF2Y NwfąrC+\@ ; 鉨dv=hS+Ey9hmwroNԍdVu٥s㗌C<{8wgJvV ]2Z]l4ͣxl d/^ 5?z F KMD RhI T\_]+r' 'l3n~: [&(NUmzN{@R.K߾~FrLsӳ?bY׺0z+f֞gM44 8}4ǜgVS+X0/-p1k 'rΉhK8ֹbϩe5PkD?ueIt}z# \(&TwISEKsLDl~On^TQiX9bc%Fb;dV'cQk p7? L]ZP\wERclz9O]{ڌl9T{CZI ץY-}7MoD5CR qg"d`u? <'bEp3(@h:% ݙd 1Ε8S2<쇁X쭾A1YzϞ5h&u^sV3ܴ.63dVRM9!1QxhYn u'Y*a]UmfF"g̠m$aAP^3"L]TJxgz˧^I ̋NJcXy&WIN6WE/?sKGQQ&Owq0C Dy12p 8Q/4IM Ί;K}2kEdx?cspD?!%//[E>#6hfGIfS}4v~ Ⱦ%3xyʕ:k3\ᳮ5浕ɃiU&kCE5DU+O_`UZ~u:9;Fb~:fH:TI,Wq? x 2q恧,!UFJh9E $?r M@@lO z>}W&/8 B- Vl8kAJ⮅YKH,Mۅ{,i!OaHuzn~UHʺ7w+s7|bҀʟVL;L !l0 U$wi!Vޅ;tĉWrnKM> \~3*p _"My>ֽq;\<خDvI|htu=lYG 1;VQ/D)!%pZy"`vbm` Kxi-h N8۵|R`cuBy^8q.s<dJa?b= n`DY\3k=D{'/t"NS_c>IfϮ148$%#oԘ@Iqm0]27EJe I s㟃[:elrcT:DF!cϤ̣6^OƵ~aXSGbB9J0|G<$ONE³6" "ud~i=' lAQbQ-.X={qniy=#2Q"?D)`XRĺjJ'hX>sB02x(@ &A*to gfEh=|gs58e0 yzj'LSVQk_!ȗh.k>)0FZ,N&̘(){ Vץų* a')P0PYW^,0d=f/ ͗fmxqU++4Vuh7kbU.!J3ژMv2]inYD7Qi/Xxbڵ~6)R\(mNxƱkLpt9Hu[lhG-h]#i eYI~_&] qϣ-OZWw{llOȿQ͟&?yHh*Z&+^0ynF(؝VPb9TnL䪨7p޻ՙFӑ k?2|~a2#ǡ_h--z]6=o%ŒC2f&C}G!˰W93:6 췙P9Nzpla!D 2mD:kBW1U3ErX5=_ )WNOݖr0A3"ܐ?B T#RAŭ0 F~z"c7O[-YseB/ʰVNsî4Rӟ/=٘k׍oC&ϔ5oaי~iH0QY[fd .d2aK>mШޢeBKp 'N_DTT ;OɱTP<|WW|lid?5Wǵ$.),9Ǯ|Plr( tܸջY>&G rtAa-R{|Rq-J 7I-J[Ѕ5A J h_<{ljaz\2Ȭ̤mZA{eG=)zQokAE߾a58X@gX ٔH O߰}ήy"Yѹ"ԻkmiFV(A #p&p,x>$3l+0J~'`]Iz/,{!Uѽqae|&]Z>zp5||Rg)#]Ab!MoR^8fl%*JMQyy1d fs BW/Q K;mFFe $yqKz # d!OyB&Ƀܪ}i:$ΝIUm-\`"\-pMYim;%^JJ=kĽ!E7ңBOϮVr P+}#j!0w :QLR*: !-Me~$$ nto mJOI2RIQY74CY}Vo@ } :>hZRy9'9F^W2];1ވ l}P_V!Rн4kV&0o?o(5&8C+}n6*s>}a?WX͊}Sq |+[ WΧ*oS.טأL*qYx :G36pm.zTq?ٻ5їٙUvs⺿M@mw[FX闫Qɤ lycqrP,!{_H BuW@H;/ڳ^{69ROTv蹾J#b74( TNJD'/pV(YsnKdj]_҉Yy6$vxɫjtUsݕe|c٤foE=slsV9gJG3bZ_YIwd:a %f_. <1a*pEI8(Vۦr08G26X;~XE(maBB]*Au* JZ-7޺d^V %]NVj5I/FU(\TՊ'ov◩Q4p_N,zkVb kw+WRg_-waZ;^=̽~Y^:ǘPD޸vXPslʔgbfyoq?KdmSm*G諑TZW].xG7%3D'>4CAXf %Wiֹ11T, s]9J969)/vN$Z 眼G %nj$*E pՐ 8z`ޖ#^ICRV,Xq&3a'+6zuӍ{͂+O{1T&&sCuF6-z[3wȎ%@e1 eOl R!W۩vA5&Aem`D2fxէXA *{ .$JTK,c ~ "/ UQ+Жe b@8NCQn^ϰXC* en"Sdy6_$/`F:/1wwUȌ䛙;M1.{=+UԌ\xGkh*u'_N ˜M@%T4mSi D$7 [F6^5zx1 DgH @g*CU0g04( SzgΛиl ,V ^V8 M unUfIAi|GF*)m9-{lE)P[ ¤gw? Y]f/sc9;8A&1:$\sNÂ*x0=hi\,T0<ɜ sv#ue[q|V+Gہ:q [wb”;z)l梈\CqIE1lLE .0` *e<P9U+¨}nL^  {}A4|D0K%c`ȷYIxTx8`{$Ĥ'}6;DMdžZ99B k@ {;_|.]um`U&}QYC{[Z*Vv˟s 7>d0U߭bwG'؝-u,eQ,&1.8 H&5|H%GWo^lEi?σuk@E-cC~6% ˇ՝:b l?t2e] 'I UwNz톼lkysbѮNz.W]KM SHG{P=R.H}E9PM>G/iP5"+{zR4DȈ&,[F)S%}+=N! (㎝s5(PEʲ9)vmXŌB(RZm2ھ+X~iT%|tJ]ֲHRPxsJH?B.s'W$ d(fTqƽ0e\"clV#.d˙wLQn9P7<-v6x(KOMq-EQTG7ܤ6z3+س| yC+#ݾ( ~[G|vabbƹ,gɊr @~gN% f'| ULƒD Byʓ{,H9]oa&/؇+?Q\8mO.tO r>k1ҝEg(okվߪjXDXʂUqL0ݓ6Uyr@h a5;m&a㕘,ǙaN OE oz nƉ~*Xk9o^e#kmѻ[#2tayw T-OމŋΏw\j? E菩[5 Yǐ]@O#..f\gndh]ʬ*س`@WYWQ|k_07(AߦZv[ymf2rT1hə"A>t⢑ҿPfKZ",|MX T0Ot$|u|P3s܁`ai:mlN[Cqr :{y.XD)@>n{oǧ{Ȏۜ0hZɰ2J' .j/JlU}4.Q=iϵruEElIT}.K|<8V\n#[cSHU 59sS]h }׈Iw޿#C0pWeZٖcF6՗}t7؍s/yc сBCkIHƏ+uFjQBu81mCbԂ s}*JTq_/މǺ4lUnC!_L>ud+A-4w>Ն)59edH1`a0͆4]>dTb{LD'`\3Rm"u+$w{bztyvz{%e (kSj7[[ 1ؤ8jhϟ2aBbVsS̵"c C9VUZ'+~.¬b #q >cgAbOUoJ;1I k1F %%_k.  Oa`ӥ"qtbIY'5v7SWj<-i+FoqE_m.GYvj>)q 9ZG)ZN0?%EWgpl5ev#g6VX_TӼ>켢 's$4l!e.g 3NbgiaJ:FV=V‰jp +Z ]s.BQ՘JIIҮ0ʢ(w`"b[87}q lo $8&jv8%껚wqKsa"2iv:2.,D ]ʏZ:akMܕO}ځeW@h#]&9r955Vt5ft .B.=2άGc _/'0QVp (|k` z§?vQ_Ț҇K/qc'FiG'ԕ13Qd/ФeB=o72`I8ȮөL M(qQ?Ɨ|c l[^a_yPb^?OP]Rl&TUJAz7C6wnM0yy:tmw,i1vfaVBfaw*Tln5`QBQ-H %8AٍCV!ſnƤ1{! Wi#\8M u.{>FnXcI r)1Enۮ&9r}~5˼`~A/_B &豖)7^);'IF9 8eDtNbĈZ3)Kdpz:kf-lz'1! 8f\LXm> 3 :;enHt gcWz4 MSE4oϹ(TՄwr,&< J0,o-bPR~2n QSVO֨y8;rpǁ=tw,(YZgY'F##\O&kXc#%;eq-WB !\epKoe.cTJA̪Vஐ^ڭה4Q&2p7(&K @nx< gC՘M`E%H۠%v 3QȠ%d3eJWBCFubi7%zU8:;m]}(17jlCv%V@~ݠ$TbzɎIɼu 1di72ׇ=-c9R\ࡆ6 *!ק}ٞQ .*1hnZG%BwM, lqZyIW-g)00:E{S*ujraS9Oba݅cF/ћi], p1bj b>ЯLFgb̃T!Hg E-g匟:^TEW8L.щ۶y~l:!:OJ׊nUDŽ,ժ" ̪dԐufWhXܹ WDQ]˹R_4Oet9FlF+)"x @>:GQ?0x1rhl%}0eLZȤ-PQ>(!~F62 v3OP&I:4L[Ě@Z OC"WaAbQ~>=uՉnbM<ՙCoQO׍މ(T^P5/쬐 nӘuާN.wfWUӱ^ͬYdX[lҗdi/ ̘x=$&!{}O#/|Ҝhf;A<=(cMb(u"+I1rkbDGo&x ˜S, wȗsD-nBYt\Rz,VRq=41zޕF.J)zj.j _3%(g18h}x@G#."ʁU$6n%Ѓr=sG#foL*ҽN -F^o~O{'1b3ɄIMRf ߗ2ñw#f `=pHӣM)8ڪضAh^wN2?+v=ZV4]/ȕqЙ}ڼzB+ol:齼p'rryr'rV/##^8Er bé3ۦ.xzb%)1쮙3 Q }G2>X 3:G,0C۫ba#ܿ8υ&'FkXG6 IU`sКRwbwT/L\l =T%XyQ>a6@ݯ=FiC !g)"/V'S:MBtKіxȿ(^1W[zqoCi'xdo7B< zj8sA}8Ӗkm)+{1avk{ E|8}n%ԆYYn¼05rfi*#" Z~ -UuE7<1$m*S$ X6h8ǩ?vϤU@N2 'k} -axс5֠aDr f@w>/@}CEGsL'z.0Lk6ZK^Pn'/~A1G8rTiur}TOWյ7!̐piM/5uqG-gS=-E4Xu}#Jٻ(\!?͐Ht׶N^"Şw{?H/R:x>+N0D/EMI0 6YUOnd;W LH4mp!_(qIh5nfD3v;Օr?wp%0mo5-~*#B-lHYŻ,v1hq7=9}q3o)ȁǦx)m 핚rq(-@Vr9wu3~QFopَ۠ z[1kDƪc0B- TJiiuZV tEHvxrpEy:c1>F?:PN% 4qT }^fpd"ߧT_ʅXh()| JSKlcKU;jq(9+awm$M{~~xJ:Vd=#4m䇗l)xIfGnL`cJ%YPNCGkmgk'(0o`k<0v]?WfIg$ P8T>%WXsId  3F@Js% SV ,JTh WXЫqQ;gȅS 2q=K>";.Ԁ;5'ޟZzVɳkQ{1j\qk>{\kBI`\G5u'0!yax!7Tao{kF?g_~TO֝=B&3lM,I7ëoޘ[)\'_?<ӡn#&:k=qL @WDOX.$*\mXA;,yV Urb4"5A`J€YcU+\ß+Pp\D8 3ZqERն{YTO~cxsdMpa=Us ?Se^iI P{,}b3X<'\lg +إ5gGԹTePk SCqroIN45 ~VVP;%V/Ab^2n-.L,OSJVA8 .4k@lߢ^Thb<µuLkvZTAv7}/2<ח++ze= --}f$6ʐG[34^hBEU#Cn+vdFr^#(~GQ1,Ɓ}Wp5Q;~\$nKWRޞE dM< c|p[?\IP3Y ,3iDyM[RbrIh=A Ƿ3<ԙðBؙwO\r܋R4j>m)/ŠÆsba>@ɸrs?ljD&='*LEp44 sP-y:89\Se R\>w C+(k:[l<,y#. &JEE}`U1kOmts)0MN5Bط׆"aiSǎ0Uv=]]25_N"ַ\n+ 8 ߔǟ8V*B x#H cNp|Fz 'K[-ҞG3^/sfj}]@ g{ssۄG вkC}C kr|g^f6ei kTXlC-SvxE?njWᎴfdփ!v`'ڋa.ږ%%Iy:"Vs\kYzn+B2;'G[gIP`Pڪ@0f lK/}Aw86hPݺ)Ku @ }ciLJ< i_u9>wI9.d ?8Ԫ0$a鍹o.E5q5f7 p'ΜujꖦxoV>G^{\6"N"*M*E0Lbeb,O-mGM]BN` Ri,]|G]Q&EzzVqBM̪t)s\௏/"o[a/X'ǫ_e3%lQVnURt:&QѠD]XK՚GNE;Eu|xd"^qk%%u1lŬ&zzTF.NWѪ̱츽#cVK W" Ah6kHlƱMd:4S22E;!Zz/+2W^T w5$Z=hNQı*<.fu V RI=W`_ob8uRSkvb}`^ w5(+y2!C&E&AXzZ.R0cqc8B߈zGfoF&syIU*?)(*rFjqe"QV.) >9\jY"O"ݮ +pU+g#8 JeAɍ cԢ0{ ILiӘC޺a&At=:>.OG'.?ԝJHY_z kyǵû0 (-C 6{4R3ɀdZARM~M0B/4\S'Qeăئ.8Qp{J**`=V;n瓒'ӓ^,= i~dOChK#tK"2maEڏhKePB7Sq YX{Z$6h  ?Oef|\q yR>,FqWpC7DS\uX)pM:ô@L f`O$d`QowkQ_`F:ːmbO3QXw/;c|s&C,ɖ0R4fu1# qv*%Gy1_ci럙'' TʵT0ϡ^UӋzk"ĥ%Y>coDzpr3v=}勋-ImbCH`t< 8JF9UfjRyD A-2)a1x25A/'HL#t:SW f[+$]?@ϮZD?7pB ?%+pL<@14kT1{7U!/%ځbK[B`~Tf)r˺7%r+ abff#Oo䒽8xK;lamQuI!Q  iefۑs 1SN}&'uw2l6&VƹAk@l`q̌q$ 3BcɐtD&ϦAv0j*sAw+c~D9+ėY6r>RZQkߺqń/1f@X`!UשTcvσ#(7n[O(Er!#X`Iő=,r.hIGST~q׎9-?s2>}ύ@zw#j+o.u,otibmQ]$I7/h,ULKQao9S C-4h+Q+Vqt&zÌ(Qs\Lsj8g?d9&:bVN{f!qF1r \8)cҐZQ aH?ۿdbsI\}T#k(> `eU#I~;xm8UdA5!p EIm*zI{=MaZD0>礋|`s?HЪm<ӹ_w30qLSX˗5S7A-+H BM.8j!H/~*uͻ#>'Cp3,6\2xϵ{Y“N5 $Zsda/oq?Y\'J^ߢ%;/C20ðpܔD.9Up%X:D& GfA*:Qv3)~gu&x`p"Q"᤭F 4/3?h Te MC=zÏءF'&ÁYP,HQ 38di$bP`˙1@!"sq`]Y w=Dc4.{z>~ h,f  6u%)%YD/KZ)(OlDB'[9Eupޚ?]u82VC'uvDW#5wh4@؎搱j.=)W4 i;ږ+-@FPp[=qg"U&Q1W eP 3qco)eǑ}919HCo'd ݡ (Os+B ΰsf"@Ms}- :mNc7+}:ŴNWëcMjClgP}рc8'I岀qE#y_#)kvXK7)\&oKADP#z|,Xw>ЃmdR"Lv8#\WYQuR4ҭPye22#s 4aD#pw#fw ?̻-夓8ԼVAOB>5B7ȕ*nC|{-,Σ_6fhk}f̺!E}Pr[1#>y-@D%-ޯ%ʐ7y#Kn{lo^(<oD.vh3&u&܁p 4S6 I@d),؋P>oIwMPmɰRUBy~y &q(cdA6loJ(T-0sƬe"  j0S01Rב_& #˶XFW()>Avbn sF Ye ]], r]HF+qg\q>",UfV& Z+sF;=J7/fq>4 ~': 7X台E.Nvz ]|sM iAϐ_yJ^.OmٛNy)QrDgtBJ~ReV,ϠzSLJE ߎXk{Tv?u_gL[8v^0xpdF@v QRTb4@_pV!5 $?7$G &b97_-A 3_#6j,ھi)]$#i X][\BdLOӈe $Y$:8@I#<.UiQR]z 5EeGZ^KfNvWe34ƷjhwJ\,}6V_wi7CR* Xš [L:cM$F26K #y/!Gw$pVn >9&CZh|8 APϵ3hݯD(YU!F-ET>*^ڌ֙IsӒj̏B ˵j[0}u:3ͭ,h .sJ YۀE--hh.Aզ!s; C!~9=e.W=P1*ewO~HC+@.wݧػa$k]V;N3 <?d~9 fO>Y?]gWCS6lBC\QX۷&%sbB1xvBwEIE!u_G( Ai: F8sb9SxZ[04$fyxm=XdJH>ZB.}`rhQ ~zx>(y104SLT‘Iu)%H ҅x&C15'hgy(^|t-yUЮڃq<a:nk:NX!BQa@a({w>Ya*(OȰz@ք厚m%o fo_XMF{ݏۖ;\NK/t*R/j*sطcP+~'M Ght+I L$]bç*س'(9Bqah%RٞK|W%SQxMj/8 *y*ʆ\d"t4yo+3ϐ䅘Q|`2Hg~sk$"Uݿ*[pQ/f4V )CTvDR74 uqc5\!ɯ?\|a iA|u1D`$UŽJ|k .G_.tt6{Qeߌ/7r)fAh4 +^X="ev(տRts{$R134p9:q eu lxh+(ޮW}N(J톀-+\y΀ oatBE6tF+]dOYYզlܲ ] 6TaZw?@㧬"Re5sʼn=^.3,d*qIvUeoJ6AFEn{R|hĆg`^ @ߣ>ł3T47/ֳr _C̾LK" vI5q|cy7\17@0AXy9Ż6U{o)7s)s6:wxy< مe%!wL0qی;c/,:~/)N mTYm5 3e&! ҟ63@X>\N/)hYY߇PN㸍bg0\n sf[$ Ѳ,fH 醧^vᱤahb yRS]r5LPx@j]K?A|"=R=uhD;$INq8r>؜tG(e4u<OklFTA؜z/ R HE߄/1!TRtАF7$/**Yם/IRGN1:ydmժ$X5GNN 35qG/_|W/,yF=f>3k1M ]~bc[DڧdU}є]8mRAlt:XulVH>ݹy˺7ad:&g 34KѲ_9}zX'|QQKpT:(uvLh;O3PW7EҭIOm'YֳҰٚ (%IMۇeDQN^*iqKoy$0 M|5lUcDOncg7Lg~j?RDź4kpaR?? L뽪y<5`8o"Zf]BZ[/ )EBmgMO119|F =Sٕ4Ħ ޵bD;{,k f>AE wL!sF%xG5%%FC sML[g}^J h3}ʤ#8h@ !R2]Μek=pX'zp֢̚Z0#?^{@l5=U"r-wVKXH(lfI_'/ޚYN-ͻV,`z !vͯ'!A )/m'~ d7>eM͌<9+?$xڲ-un0kPs܉:7g,grEFh\$nC&,I=먇 XSЀjo!R Hdk9FK7u;XYnV8X  xT褌tKfeet]d"hR ϼW7+"H|ŏ -l&<2U9&LE|R[m٧4K[36}/͊Q9s+4d.M^r jõ.|'b ₪ =s&hf^hx_j5A~QoJuƎfB8bws! ,(˜}#>+c_;T9co&-)K.W+[7;U"kIUق^LrJr$yPŀWbnAUm8f!3NdU**GX"mr˟ufGHv8>~)~Z:Mn^1 ev3gՍ$4!^\?apa= $;1dC0 ds]^t\whC*,aC|F乣OmN]-LL|+3wzK<c!4lpB⺫8"u(Eщ͸v8e#".qVn8q=d @}fO0 I˲,~l{e<)" &}Kv.^Nb^u%^H`O^TB^2=VX;զG0zW g 1=@~ %OnHDz-@jEϵ@% 6FaG+7ÉQEQv'VC"/E/jn1_+G AV ! (=7%>"!͍xS(`D@ ߡP]!݉o7G-\n6%kPh2kgU~l"kؕE6N횿z SuMI2;<eay@I+۶$کšFrGS Ls`KEn|7R_/cƁ!m{+4?{kMQ*ȥ.-T^6`m-CGNC$m7C~R~Lƭp}X'AJTj"VmI87a&-Ʈ?6R/ƢZwsbzu ÀOfǀpD#[b x5_FKv&p wXs☇[P8 ;O^nʭ0=G޻,{?3PM>]J(;O)^ Ii 9ntd1ٶ{/-(.X#ջTr iyl>Q-? JD_3-a՜Q>;1r&j/"! SK%Aȁ7suũ4)gd]j>.$mQ+8Y Δ2"䚉Kе3ӼΏՃҨ7tsdh4PӴ@S>Pd;wޑ ,&!k`l\C2Uy|-:9d^pEN&dw%,ϣEPDV'= |uylQF-_ƥmop"pC-zʃiaV^+][ {nʪJ}a1ghIWE,ql`H͍8-~9+H6=!7x(L ^4M1ބbAc$*9i"T0>卂A[;i$YpL7]ϬIBcЖ+(gXᆳTF^#8 hj Z?Jޜp6j gzI!LP^[2Fz,>'Ɯ]g y%]Fbͨ#ٌp@s;S'?تW*}A.y}˞/mJR7,Y^NčȁR;TRHV(ŭwk&_T8bW4.K+;,*'Pٻ7s*يU*}2d& F?TFnDߦ~oJ^ʣ-[@ǖ2rR)I&HNMЁziO;Qpt٫H@6 E kL ѯ ;u>.$ȞyM 9kE(oxR2al410x}f nYwd|-OCas)iI8}RL/Ynʓꭍ-9F"PݳuY 7{#~kgx*Ov<hb*tJ$oHX=`3Pci^" &dՕk.&DJ|4C/l/g1w\q+t;m8G7_ɵ “̿@7\9PlHXpa( -@T,k̎L2|EY;t*|ƽ4 q'_lW9qP0TL{Elɂ(l[Ȼ:Qʎ'E+ϖj]?T0 SL6aU [_/[|u$Z|ۛv֎+R w:kb}``w) vu8R[xzC~4Ĭ̟W@k~󂖂6XxW!`aW{!ddK{h()Hur!QHC{Z΢-ŕ8k*^UD?,*ܹ}4~+ [KlI9 m8W2l9 h k GvwMrbXo(6=c kھ+UOqIRRs9_;2`:Hv;Č17=o{X1*Jmi9kKgCgf?Pcs 6,_akH{ag&S|RcMR[DS[~xddz%$ 2?pi%̵2+fpԈرؘ0FWfOxG9=tiю61X&ݓ[*JPV\2|LkcZ# K/kR*y=j o2Äq j<ӦT뱚鮰 %k+ؽ|O"i]5:qn \`Wfjƚoiçx4.u[5^^wmqR{rN%7gTr`ZK҂&!~^ \I#DO<=Uj Fv~$F|g7I?QEՌ:wRDtfa4I@R,@E`)WzC9VA'NUFʓd{C7\@n i"X e\8s623x@QN 5UǤx!"{En=ɉә[y61[?dܮ=3F"yCh6;`otIN'=SPpTT'pb%Ɏ.BwN\7=GmVݤo^Gb}@y(8ˤtUZ|N eBclD_~`/L=8c _>{-gB#rlp26Qp}袸TC ?֞ړ}=QX̋S^"4ըj0 d___n+&L'|ʩ4)SRP6G >b1Jҟacq/܍DM{&\^ԩzI jT-k.7Ny)V!;I e|9fp0Η@e맰ZH ?>ipEc ʌnzOz*$Csy‡>#mD]WfM'ـ!TV)yiV>JN+{zjXd b#jG^7_37MDϤUL~gd4]+.]l|p7 m{]Xٚ+nW/Eb@(aC9l ?qMWD[eo]Q`pp&[k+ʴ-V%[2(9M6{C\ ?Y/tӶe׀^nJ>|r{Eư<<浐dl1P- 6몙8F>Su8L ܅u䒐g@-k%k A&NTkʕ S@Gw}Vk~g7jH|2LڮY\iW6J'\M"Nj ޟIdH~DmeH.cO?v*!oə q*$?Xշ.G`Osb?i_F+lWDƠM }vwz 'FksUnOHsnF`A\ C>O)YӣХGdwx(kqN|Q4sR SG"=:%T;7/(=Y#ޔuW>Dr"R!vљS|)O:@ 솥ea3'p#/e}ݒNn4듞\CG-TF;`^yAH'?%+f3ݾɥ: $1Gn!gRx<-f4۳;# <`_+Eg t]9(ݘ_K}UY.]fA-T- eqꮶ^E!:-45ݞI \ ߱]h%K#[b2 9"ᠯg*8wQKPhg6}Wv7$̭Y6ԓ%U]01T,T/pf;hٮI{z]!ڇ*b! Wjh謔G`"We7:k&u*>z\Ɇj;D\V:2pja9o/WMGDdθ̍5grOCu~s2©Dai;J;֨9T\DRC6Ѝ`aBdbjh# S_HY[!u_OZ^lCpsJŀz&;׏?mdy7C@)2%nxb#T(,Hj!^Fx߀TH*Hōl2+8Iy~;{Ûƪ\j¤ >h(K`q |֩}Kfˮ ?GYRqPx M_^"86ǂ2|ʨc}v9=Sy89 EcBfgHFn NZ^?TU5w8IͩdrIHda%R,jಓQ[Ic?d,=u9pքo:)5-0Pinvs$A?9s,[q50JT53ن::c";h't[Oͯ"J7sX*nzW$wkm}D O~(5BcぇF}N=yUAe -geͼ8!p^Crg_Do+n15qEV韄P&IYCj93@Ґ Roݠ Jy  ׸2_U)ocWh1cteW>6jpP#],9%πd3?YrǤyd<قn:%pĦbK`'49y^"† hc뽽_'NzD?Q{$pR¾dL3/_wuj,:ׇ#kp: u@Qdַ Ԭ!W,O{;|\a&`^u@q..gjK&NVrw4psMlpћ.;[s;0 {4|"8-Y&_ЊV$sS ?"*XJѧwَc}w >H`^W"@D!;Fw~8gS0]PN,]Ϳ {6ԯ0-0 ;6^_Ҟ`4a'/T8Nkj@6,`XsI-/EPu @fާw[0!J;:>"'8鯢FO9m>5h}P!ҘÆhNNpʈ4Kq%lK ҚtIJjrjgU2𮑩'6ֽt{(?BIRHi˄ VyTEVs.B&ӂZqZr➺; @v5@1ZŭƬZN@.Q6k pA}֟>$ZI7([5@]d Y >,a鋮6,jJ-+j,8~l-wQ5,-dc VŬ}K_[Xc,͵=5a\{AIRSaX7 )rA `L[7TӋچ|~ _LЊw?'Y\+#܃1 $6{z LvЗz{#0õVfzϰ1RHhx)E}%A]2Ќ_Yq z uooFfޙkv{M@sH qͬ8)gh>rñ*UQ ku뒨s߱$$)Vw}8OpH!t)v[]cWѓnu*d\A,]4_|n52 T y.A ? /ЎGŶ\ 7ic}yjYkbo܍ܑa8V&ICPwmyآaR2%V'CcO|&8Xd* M8OM4~Vv]="bk@8ʿFsɗz6IFA6[~BM,!wWA$KI**c^ovgJlo z1bQ Y߆F.Tw (C,Do aT?j|EbP"'D zZlBo(>x=/|nKOψS)/;+\}w@ WaV_`vT}eB_nfC+nˇi֟zKun-QX,W_ƉbVLEAصKbס M] #W0LR/t[gRn-6'It,'FH!9v.ɋ2@Y s;LBglsrt3jOsSjL$;X|DRS/WC뙜X391ȉ21 a.AhJ8];@:}Ql#Qէ8lBl?@1tD[ə@lGY ߢ arPd^coS{M|m$Gp|lwRhuG\xbϘt_HPcu"M0(^M:Y8cLăBkl=4!wgƌӇueLY$;?'"8QŎtFP=bfkAA4()#߯|E޵>'*+#I͙l|_ L9cJİt l*k%} P]3dD IYx0/#ꭧN^q7AL/tfI!JUl@ߘZSXU]zоP)wFH~%Kt?i"*QЙiׅ>YȦ{{cRwd3SL?a&plQmq u"Zk'Nʢ'd]?ߒ%XːSO_kPmN4nT<5ܩ@&v'vb4B7aZU>e63XɂRl"[7:aYM*7*shp)\Tܻ7? ?HEuPJɳIm۪']VqV_L// A_u٩=eW;GMxԻF[I~ 4ihsY: BVBY`0<ЖOe !X!&16g84??jBMc"= oMu4YzG)n3wgXZ 7Sw.nWc>[[MR~obi [ S}v%Lq=W.T `xjdtޥ{J_F̞P PF4[\ZbAs-":qn;_=榟* H0gFbr ?UhzXQ,+Y;(Uv<2? gli} }r@drM7AWx(@8|o1G@81{m߿qX}%v(į2#p-<\<Дk &dgG>Jn a $k&)^`#nS01DwxG4oQpiq_2?t 1(A^jez#@oݺ"m"IkE@X8N=f.K<6k8uAe)[WiG1(1IyAOÜDNMڑa~U-ՙ-=t9 ^(wߨ~E{i̎SCppҕWhO;^ջfj5)74T!Xh10t.ȃfX4v7\^M|Qɇcx^꤃rZggyVA?eIRTJٙ70-6-X8|f\hҊ3OA v&%gA̐F]:9Fh;2JPcsؑ %*cťNbW &ږ)gܜ H#œHtK89sh/r,՗k,떴Kfor"O-Mx?]RB܃?>KV,AJ}A1D#G0'!|r*qK}ZG7$ڤ};"y 8c7].iS, gc7&UB-G9cD!̴ v^z%C.}΍掺**[Rͻn4k!?(eJΏcEټƧf7G_T0`p'ye` vɋswZ-o2octF1*z/ VQ^?G4Sv"D_D޲_묞<\;uǑT9'#믆D֕'GzNiXTh_ qtaN&[-q&1(_4ʙV[cuȫ&c omm%vy  l|CrĶ~qO\ d.!J(r85w!+T֮'wRP[r4Co7Ot+r`;Od~]vRvN Hj7F rYBRdeƆv q/vJ؝J5$Cf7asՔ-JqL*Xsz4m0mP4b_ +/mGnu*!Ä>K5{Yu_(RĆSKR;Ѡs۵:#jAyx"JvaQ G',yHha]n@9±!cCvu,;,'5C1Aj J3*KL396w_,fxfIpcHO,qT Sl<FiXrI Ҹ08DY0sz:wd ]\TߠR((ZbZ7n a{[VH͎yxr스޿w؛*ЏM]7h$) *C$)|&uؘmAZ_Fl3Tˁ!}G2k&0 ςnD!ۥ[dr8HhC8K9J+Cm+"A+;$#E9&@NkiNW[f.䄮,,Uo1xQ*b@Jy3\Bí[Tbv a=~,l<6СJz @ynNQӾl\rwƝE e~k.[PPF~n%3foGbLZ;1$vQJ<8ƿf5Z?'p61 }3biY>#0ĥ`X6C .c\ZhW0\siLcAp9xp[JI—3͍Ww@(gjTu"w{ȟd2MwÕ,-U-lڞ&] R-JĶd p)0 jbC"DT;- ~s r;IHgg84PWk}@Upr`dJP˯6Wv'l_ހ67~}Oct22\2aQY0 !_ziO0jC4@bUdhH[!LF J?C` hm@"u#T ;p*t=|hmW?Wsxށ c2} ^[:7լ[$3n5y'z&~m.z4鰆H% k)*fϖ򄀱!䀩9be@@?5mKҾW)GDZܬq:F+ʀeH^P$;MašJV\REQKR+1)*9M\><;K1i8٭)it-ҠpTz*}561Cr]x#\'׿Bf:̧:ͱOTpْӢ˯;¥&7 lq)ٞr1;p}`Q-<2H%x`lXLܘ 2;D/BGLG JU^4OQea!"7(-8jR(>ҦfW#8ȏ.(N߀sP0bU9 -=5."g`TN\5s+F8Dyue8Nb'{ɵ1]gVU8NyhKCfmΖ}LUЏ@1zA<{Nm1tyG2&#$?< O6%|G~mS]XK3_Iqo7uSce2}2i%Zh'QX%(eB/8Ve2'I !>&%biV8 ˳%g'P"XHGCn]k\m)Kj֭ AV 5#8Ԩ<ǐ<)=I)"eǼEtV?='APzx}=F:е=k/K{`-# NݖÞ19˯bڻPbe5`g*+ iUCg.  kV$ʀj2@Qoj/qWNɢv#m7iOj<ɳ IDC̮$n3Pi_mb#c ^Q- N;a}"~^Ѐ3|a> q8LkB2Ei qW;4+e@ -cg[F q~I3YVyC֛ж Gz*{~3y,8P\mI 0dc? C$D&M dLj5mLTtUW._lyHkV>?*M6<0vFiBd\\ԒwDfzgtL[Do*VgFAOoRH1y*4z]p_8< Kq[ۍjd3(SQXeI]V4WSR7-T6N_7#د\dv|m. MCb-˗j-­$O`b(e) $'Rs,AaNeW0$NCFSC\*+29^S:1R@ݺܓ>.Vq^rU.U9L" Vv]$'{s~3:\fG.dh;Tm">4ߥ[Pi{( BԲK >C49֏jn4[!WN]Z6K%⡌"g^ .Uw) ŏ"ª_:ޣdzt XO=QLN;l#U4Gd.;eLΞ.oސD uI-  7>wkSB?jߗUa~.5@ ]R6ٮn Dt&Nc*oŕKsyZLo1׊z=5/acj@ hyGa ֈA1$FJU:=Mƴs k-H}g.dBZ:&8l U1 DhA_M ku:/nu2@v/>)|F›m#cFF[-CBQ`rp&l8z[UDܩjl2^ Z'@+BVN~Jڇ?!sN8}:4Hxds뾿c$"{MPk*J)2/6#! >ps _|'`sЏH0Nd7bIO՛2-NC@tYa32",®پ"RܳE$;'s|uWaqnׯ"TC>BUr61E I2X [iDjrW2D'ې@”1wRDw^{mB TlB5pz!aOK8`Ip @\/B׮0E8/z[rAYRc&h|aqʈaʲxV)6b$g-6ŧc`PZFt݌ 4)r*C=iUTqBRwU(7eWx>oR2F,a 5ĪCd6^vM9V4QK@x#7ޜq4vpT1(awmXG8kIžL?)0`ճCF# n1B9e+FzF5*'BDL^1+l]h@;]gL蘞%%&s4GuA27.QCWqIl}D' e&;ٲD uѴ *`RH1$=`Q3ċۂ/\'|rxs,$I h/:hD %?\}DH@V)MZ7tv?iN+jD|vp@T>% *s(pTb 9vSJK%o JsDvCA bT9^GQ֡N+O(쪩k|<0J*! 2d"G=g91?QX]Du0d΀xUI9|*,lb4نqok!#8k(nKY4p S`cx^6N4.*[C#HM 6LPBp0 &Un9$SN_Sօ/ZZzAPJ!]P$e@P1[hOp`G妧 4T|3a}q R9+ 5d'L$*Ja< /cslI6+^HXKVs*6?1 HS(n1(C'拣8@9&Czdnb}6 x;~=ve6|q+Qqk;SRdpz伆ΐ쨺c` V!3d_/vyp"$FzbHL4sw[Koch R"V!p==f;i,b;0ϫFQ? 6Vagд m!ܣmZ(ޤ V()Ҽ(8Yfm˱#ssa*&VePتMп&7Gk' ]jr푸u'oFn6@nzpS d]D+Hw^oWYCf+ (tWj'gxR"ǂ7R6iIg^#!60#z=!8} к*bfI}U3,St kzeonX[ݏSݐk۷F)$AX?hxC9aJ;}395 {^·"}ܷn[QEϛ\PΊu-#=f"b1N+kMMu\cA7ݎ.OE^^ =S"9x pP΂Qf}3&evyj ՛>+,६^Ct@mνǁ׊qT|Ϊ9 ҕI:C`Nܧs-#M@ w0lL(!$ώҟy4Wr!gL@@<_P[},|JF1idɳfAM1 i49SC@S0lJ*I%ladzP%8*`8x44 {_W>qpܲ'q1ճ"&$sY?qZ'oecmo.JUvPR?q"I#|ЇT7ĐK{:kcݪ<*W;xoFMБc>]j[ckDR%hA;62 ̟H)c4Ъ0BUon{CA厛:&5d9djUQ:;W*FwٮOF- RL>a3v3f)DxIM% MNm%,8({ibl2Ghy5[4@LS"胶`61@HW]9-L+ʯ 6/\2ܰ>?Y+5uVuqrMvVxZ#AJqwaU d3eR_tOq`ч:~rA7T$Ktkʶ)2]臛).7du{8-شmI[ݰ(D1]gE4Hb5 LY c?0HR\'AwKݻ}3"tBZ$*TD2WNZ^=&lӇ*0^bxE(PU-[t@=RD+M0C\.h B|GJthpDp|~{߁AnkϞRkw a-r1HeBhjXJAw"QkupZbly> DE LL  4RpʵhTb=D5㨊8km8yP8sh2!I}*kc ϕ_KmuU%(KѵqDt~axڳ:x(a84 3Bxt(Ju D!ZHy_5FOl]} a1z90X)}|(wzdg hJ8˃B_6֚(G29eN۹oef/)Ow>@2c1ycbo (XmKguIgs 2d#塝bݿT^E+9ma,"oe+]>T=Sgpu.Ƌ2?NՉV.ӟ^@hů5E^BƭSX;Rݍ{Ofȁ A.)H hB_B)q$.3DUߎf&j20ᘂLA[4:!B6QkaJaySPwնTgf^ΦWC>v>Zp]&տe/?SQ:I$vVϗ]:h"cp> &.L (ehaQ9:lLby23Vg}vZ Io:̟ffGQվE!8 !X>S&@EQfڼa5]xȁI `Qw!\ߏ<U9jvTXzR:鎌~+x#i(j2zT AshA~?}g}U?+o7loYɆGsp^#0:1 iH?=A;B@Bip_HwN@]q?bPKjby,AUuͭ3 =زBh bCMXz)/ڤɢm͎A_k(.7 jq a#n~‰նkJ2i*Ox]e{„^o*4*9>BK"H+?0Nt ؠW Lq)KC͌KZt^NH |.sK$u|z-I,}ֈFm.3I>M@yMpk &82_든μ 12?>Abdt1ݴC u+cC/¾zS6'pYLr*$Xn's4$?==L{PltL7GQ?a},=BVK\# ܶx3VG+./Jmd\(= [Q[ɻ\aSQ:uR›Hs풦 ifxbB fE-9 $޻A۫YJ_iCˇ()1 BWVv<Ȧ:jp73$!UP}ǣ^ VNf?HRBa(Qgu$#ԱPUٔrR O֤H k6&hH JkƘ^zTwak;0Z%zخ=(7n\eNX#tȢ' q2۵iJ;k*w@0M6 V=.܀S! n(м87~L>#YoC,r#Lu3{H)8*u@fO缨谛ALSa?^,`cV;;]%ncwܠ`n\#*R##fQ2b(oPt\kmL GE}uVZzNL[M'60@xӸ5}UGUVOmcG={{TZ 4C7n:.3f͋/N)D$g<@8 N{žaC6M5?6!Y!aL?ď{=hᢆХY%3zHِbYaK@G]H.%?e1z5P=p$ wb5&+2|Iţ?x79Jǔ%ēXDAUO@vˌ0T)д@ftiUb_:9oKP['Ld0PZ&!}OuL֤~YpO&JvO8wB'AG>#7ŒL^84){ B!rQlJ^K+y_Aʏ嵙mDfUP2OUOSA}/&εǍvO˛:w'T43 W\&-02MҫAŶ߄9`)i\~Kѯp:9`.7\zX?Pp0xP ֖|zD?ԶϒP1bO]j+В%W0|9s$zjs'6->=!ˁT4‘* ~%Q w'%?-  ^"' ɿbi , sK#JěaU BP2+r RU5s^{spV8:M,AIB .q㻳W{VoʒW_ZHK)=-dUԭ,.r6Щ "_ ~ٻQ8VG?=/(H5:T!rX`GB!.Iх%(N]Վd%OrB!f)E{Q,1)}$ӳ7㑚D!gby;wm4`ok&K$qدN< O ʋ.i\J_-9T1 2登3_f|bC<͊Z-98(QVτnX"&L׃Yĝ)eVmQQoׄRUa'U'7ܢ,DO\(ree8HCi..TU k>?;K0X)k ӳ !)mm}_Bo<_c(/7 VmNP{w34KL򧴧M;'jgZ녑 T:\jh<, xȃЍ.OsSp6*K 3m>k.#t=5Muk6i,YwJ=5{:mKXAGl"Y Ҏcq6tl{f`u:"V`S7C0/eNGqUVGN^ho!6A.e20:gW{-X0#yI.6s~ :zv_dt&W鐰Xh{M6sY,WP׺ !jCgS$6: P:+"*s@lAZ4Л*wCU4e Ɨ¨~_}GJq}yNm蝯_ߗ>5O5 ߼%(7! 8bQ4z4(y=tqy(vxAp$,Pz"^ɪs* %>u6#N=u`aGVYL .> @ESDҭ!]ɵq~+$]_@^,<_PP !3Rwr>'@1(]O`JhR&޴L'Pi9%ZX~SxҎ=IF1L`]d-[9 YǸAڗ<%Rn7}*{qfp`/eidȊ]HDMcpRugTf dz+R 2~I-`rƞz7!-W =^`PX@ ޥSlEt$U'[Eѕ),"Xnkp"-(qJ8=]/2Msm]3v(  %"Qjf)w]V R]ZYZ[.?W, ;+9_0daK˩.NWSkSt!1e/.kU({JwoX-f[p% JG }c4 A2Gk{gtsΓli/ @xѶNuɺd5{jSZ3o_%{#@p ]+©;R&1[.x]u eac'6e|Q7٪HF>8OÐ@˗QAѴ.}*Mr^97'tbI"V,|\vh !yAL21;:{fF,AAUE4uZnT3YMצnP-F6, q7ЧS폿΃*a[DkWɓm;'G/E{#Yp]Xɘ7Ygᦹ||u <ƾ%S]D֩UzTЪ@MT:]½Skx@TvŇhY\!Oq TYǿ*`͸69C@ ~A? P#tJCm3N{b,3ɠƺ˖10k5 о&e_Yd4?ϧONƸIxpPO|X]".3d{ty^Q߸}KQ>zDh !#e\F?G cAg ǢJApD6"-n= a'V6lVJA'n~)\*A(tkS%Nи))Zu;n^)x7ߜ=eIvF ;<j7ZXC Fؼ;oZ1bX-yQ'2HɆJV//)G0-s&:410vIn\! Ec 8)Ln<n4bfDʋ.sF[d\Vދ 2JĐHRol5hdCS#OTh 8*Xą84K:{spYe%ZUn8+vYP,&S(f6Ch ۣ*?H >-Ґ:m1E3DZZ*5y#ĞS!?Yy0!կ"|)յ( 7sw%ZMι igEU{^i;VRH:=3b렚.fr,9+~_ ֧d GnFS\V e~P_xHuyQrM@I݂pfّoz(msW,Ƴy^2MD0isUeG,Ԥjʂ5ndbn'8Rcݯ%|Soԟa -_QUSa"AX+ʯ5p`U,A9*2X^7id0'BxbabW@f(HP6nrBZyRB?yT_ݱtqQv!pk[bjrERf+:"SXTiÒYYTUk jU Zȡq,mHdv&{`Ͻwv ؤB_3_x09*քV7I&+(}oT Tz͂U4vBany6LWmU7W,l-q 3OoB=;bt`^dQ=M\Q"Vg!K00is=?uUuʭ!$շCm5 /ԙ3Ǒ1ϊ #qDC72X7]8; `v^B4> LWﯫ ҧU6z(յV#'l޶9vKB@*y % 7|`߃a!-Ӥ-T.ж7͔03iAPo\*vikrW/|C}hE_z2-3]GY6/}ڲƷy~r:Xa!|ޡ|VPƫf.%ԧp*d{woOz87 xvQ%\%kRM/,(tOAS$zٽwlWqc*3 !YPXϤƾ/#LZ,fBU*l$ KjzIcER}weɗ0{XSsda%Ap.DE VhErhF|i̸" _FȩsSnɔaRվv+E' ikZx,9ϋ?em 8JҸBM}.Ky&&T[C{"\uTiiH+K9Gy!s|#RY"Ƞ/Ll;(+aLOOM@fƠg;ݹnY|-z`*fm&ڗrm6RL  iݽpa=B*]ld3r {/O׸GȅTpnB6F]AZ#Y*fg=Կ„0)oyyowȐ0NfZ>w˖PJh3AK>E}5o9IkElwEKz\ FJgoETŢ䠀F$]pV,P'ȗHV"ZF*k>ULdѡ`Ҽd]~kf'%d g"c?ijf,7ڐ'467K %Fc.ОYuU`bUy?%8 XS" twsT0u60Q[FjP#;fpJ܇RO;mɚ+4oHҥͽ Tq<HcʋUlfxqd_%ÎȻZoamyc`:D^¢2@æ%J,r=3 uFS$tZ xE&?&w2w}LSzD C@/X_nfKyu+!  ff]iǾ!%7x9vH (9y77 [Ĵ}|[wIai7HJ?%0j `CbVlv_/n`+Xճ;X_Q>$i>3,+#0c$?Ƨ,4G6x~1%)$I"Q;{oW`$XdBjxSx~J r bX#Hu+?NJAottO hVp[V揪RsDX. U9Ebȑh*{ ?wwct $pˈ3Q8- hDYVT.*oNO"r>'`؛:p,Aqmoˉ>[z.n騺[1k0›FDŽ@A$00hiOUk.n 6 -W59aJk20<3܀/)xPpQ1svp@C2^uaaV' F\ kF'$#~~V.Hbm7Z*>.颔gyl%3i8ܝ' ^?.k IXIsc:eMdڝ[֟z8Z~e1%yM@1 &7%p`y52A г]Wµ`lP:O _#3V[$t[\ g!OBoBs.:&Aw ;#T;w[ Օ%O`N#o,,y!ar7p.Sk qol!iW.U0 ˪BxU4.׉}>!yICf%DkO}Ū,sum^=#s PD썠M[ŋE*>kA(Tgܵ}&#c܄BI-옙z G7W׸L]1&{< vb-V~o`*4K$-pM/vdU*F\qFR¢ iju7&2/P5 {Toגoy5Q'Jurf :ͲO2WsWR ?|Eֻ''?GǵJnXy!YyD|Iu8_@nV.:}(H ^ckY>v >~3}odůrHit T'<ܟ&п>+Pv^8>"4Y6SwN 8~9loQح3EjZriм_:$xѪ$5{%/yX9޳eQ9|v+C lPޠ+p5{ ,q߲({9Ve㉻ΤkD8Fصu?9{hxCoa. `YOtG% RPb\ N:?l%dcg>,Ki']NG TU6A:X՚DGXd@|% kӄ`ϟgy:ч$zgB잃Y 1ezׇ  N-=\{D>c5?S *Д:P4\=C(4׀al>:FmS#G(s%,r{tnQx *fDTLR6.V1;A(ez%k6RpT=xpS˚;hȖFƫi?!gBr)pz+Lq,(ޓ  HցAn̴B4c.4Ṣ̌teT:YˊTV.x uM (IB~)(H[-.XGH\`dW ZzԢ;$}k 鿚xa&6g6Lve'iDAY0U!9ZGat!5Z`+-\Ja_gWsL/Ҏȡ:=9BF;K&:%bmiƾ<hɟ rqr ^@)H)*mWW\OD?T&nBzav?/V~t&2_*&m҉) ^np)4= l)6d9'm| w5ߠ3]" ۅ54AGƻQ"GЍʚ;))}ς@xH_7 J睑9neEp.LHXCO`k)0ӛz"j؊ eou^z*[/к^U@%[L~(ss1Pt@JF[N6o9xa ΢"ŦK;_9a]͋fRW40TrhLڴ3St&ErI,e&Z_zyg?;ȐRDRL]i燻>ndRxH4diLX&Ǭ qqT5Ӈ. Ռ.?l(FO7UdB9wr9`4hq %tT>C6]OHv+Q&p~ћJ(Z9ƻfjfƥ@`3f&M]өZ'z&#o臰dW hbL(8KEˀ2댉ɧbͦ/ԵQQ*[%5-=1!c9z(H8/:-BwRev)m% {zOX _5=v!\]Ug)i7_9w*1/h47aW؅-lKJgL}Zݖz9vߔ)(f< *A3ձA|GůmF?×~;OEnj} n[}]j^$/!*BṀk?k)L}U_iwr^ &.0*iPʥT-1 GV!bvhyņ<nQc]]E'?)({&X’ -M+6KLt‰h=}ޣ|8$B.R(V@oͽwF_ f+*sKV"3Plm,^Y-hͷ{(hȃt8'=VQi7Qe+o {R*P.=th"-ckTʛjve"P`Q]iskS(A~X)rlm 0[Y%ncF3_zTW6l>LBs'wY*yIza79~l4^ķ:33d>\mLp!4h'e`cNpbaJ>պ7>֥MUbYɵ0N#)0 ZRSJ(,S#AXPKj?:ДXHPO;_v\`tɞ7Ѿ],@+bv >^,V)2K* ʝաb\NL7A X%!uݗL j5Olj䂹GdGZFW>3S5^dYvޤoaL7XAW'dMJ1Q_dƱQ!Y#"yrSP3eSD ˯ bg`SG_6d )o51L<{G8;%)0n3n2LQ'-xl?_"qJ(^TBK̰gTPOW(s\BZ;u`E~ XklVђӂ T)ͷKawqH6U, 5ga &Oi cĄ]NfYq$Pqnoy!x\XWZ`ZS^9quҰW GF ] f ^Aj¿Nr ׽J`L&o~#E;^x}(eM\iu| ?fq5bx޸XkUc\k uN+]\L즛o_Dg~䕂CAѴ #j;I# ~˧{.ձL?g WuP~5SPXqL)# {'SF|#U3aGx&UU/+F15wWupRjKI[(SvKpkv4w*ϳd7hy>I`ap#I 0xQB^ TڌkNh,8*| ެOvb-uwO$&9Ir=i$3kAe( \^Ϳ!Կ;q[DQg % nȘV!s:%yBztϺݽœ)6o~a" )_:Gn$ fъ؍0Um$;OEք9wt#vj<jO!_ٮR  u"`_ʐR4Ĭ]DK[`Uorv;}(FCtZJ33ïQ RƗi60T̏{ėطPp^e=0lyNͿ@ͮ"]F5eK/&; X$8Rn)CZiu\W[X#<,8(EQZ]|GAOcwf nبaHCKVAS͸IjS%ֽ^-lϬ|F]&a|`$ucJ6 ,\eN^oa q|C8r#fǮ̙HTKOSr7 \l< tN&NlyLKz^Ggr{Yz4)Avͨlȫ_Tͯ)Vi^5u-trWO5LWUzqY5%尌;撕t7% ^V5CAz-Ey9VNc'r,$bl;}JAF|?[߂V"@̿}Q}Nc"$r)O NRQ\2 @|C! !aEj=dD41P3ɢ1ݗَԑ039QqZ}cW1,qdaeHX2Sæ'QVHblD@R N. l2I@tYлUک72c0/6UURqԩ 2*h~j#HQ1g /];b_  ”C7#֛[GY4yגb)ɟtAニ4~s{kŔJJ@w w br22N{6+~. 8Ɨ!W c]?v;`nJK QU'GJ L:>Q6^.:[ CGj㶾7J}i{a)rӱwSd DEm!J 2n<lyu ^Q!ʇSVDߊS7^o▽'/J Nx FGw$Y}.w+6*7qK/3 \8ݨƻ~4ތX0dHwsƒJzYHol"lFL|H7WrpKBt%6[ZPZlDžj8n䪀Zj'/!:9"J(3y0"߼OkV6%LˬBB~z1oGsY)\aidqq)A1TҤH?` eP@mY]y/7q g1گ`DŽ]ك&XA9.bcbm ND߉Sm_JP~53ɄvkG͈.(w+9lQ2S~^FƨAHsޝ^t Xog#޶2s8sm'kP`YgVu4`lE?P })Х?N/Xt'V,DkR@Bigp %%/>!yW-x3o%;~g%PGaܮ}~OI!5V?|-depv w⒤2.g8py!F`Vs O6P Ôg~nJgg~:HpV "[lοMY`T}\1 k8wej'̎Lx?d}<wLd^ρۃ22җ"`Y]x ,1 JtU= pTn6f 7T~޼& J3CFC C[W^a0EIwʓ3Jjӈhe=?[~8]` g bOF+م,_C WwmOm`~3k"5y~!]H6#u䔙\ޤgd9Vax!qi.Z+ IhNS>rxfшubN\ *?ɏl/ *8b5Wejb%pK+AZ6n??!һH]z,B'^ODu,zݩ@t<9!rBJh%/~3Z,2: 8@Ngͣ*{~N>Ͳ93m(1[~l9x^ SiEEj!LٞaoD C[Ab<|S* H]ӓZ}Bq1f.1d5LIY0Bv_gF&a6Xq.|8g G#fC$K/TN^IxhC7e([t8Jl4yɈZdZtMsM\69=" ={X|R'08uK*9E?nnfd6> ۬歇ߴ1UtIWq>ݞ@9HDv$0 lGCs:#w $FR fcufj5>AOl?=ub:,V|1lmk77H$:eN՝]_*6Sꢞ/2pUXCESSj\X&.s4Ɇ=JGv/>ydq2,]Ȉ"J=TǪO7[FX3Y`mtN&bm -hmP-NQH=G yZ: , NuYYb}/K:=3^4(!)G$UEC&^*G,}l}1,rG1iɢEPf ڧ-UQ#2M"N;Ÿ}Nh&o[5 ˓;gy4+ރR / EĮ+kiKt`7./\~IHKnpԲ:'up]Ё1VP5-"Cs, {j>I .7 2Yϟ>˞(3*k{=^2kj#FG5VM2".V=tw,1T!W+J'c]%/p1 ݝǐh7\ևX,@td.B+ ]\6.^ߘ#c=@,`[<@N^Nȴ&ngdTk6LZw}dE߻2Z- }gq?ofI(5\i]E9XS>NR:6ׁfR ʰ1FMЂF]qP:h cF [P@ʲxP*QCwm\՟(ڼ稑.f_g'(_ 'ʟ܁1o[TLtlo~F8_${_HQ>隶Vƺ5"$b7|vA/Ϊ'xAspA%!=XGx} onؼivQ</ٚcW|?@)k5k ÄL cb&Qh=-fh3^2 `h{S\ofZ.~+Sy諃43;e: `1R;f6rTYDp{7 3,n-* E]?2yG11&> >CA[%C䈮YID|kP F/<&J^(#hqh@!畟![x4Ŷpq8ۆ_ݫ7se,esc5+/^ZAe[*[Ҩ9%ZBH\fכDVĤwE+Q jp^4luU1fԄ̈ m\O4TM@yMU"ZC .V fޤK)~GC=H.R" i0٬YT¶Ix SlcG$]SXjcBM WVAܯk'N# &[y*0U2"TJFwꐬBKK} n ? 5ݣie7 @ɐ7׎nH:[m \ٹ,sSDIYztIVZ8?tE^t} ʓ$3q<G˛~05[RhL /%:W% ƒCdH;]@+$QЭw ^t=rtb[+:1q >T(9U/b' A}³`mrJJ=̄]܃=7 d9dƃy3SS1/?:[Qbm 3#p KE^vbl!}N+GKPt0(+J0~0gLXDO/JE%xE :Dȝ4)oPc^]%%3*֫>&xvy\ ̈́k ͍ScZy 8Y2Z)G')W;'}1m @ iFdex0*6W5 &Ā #wrzFy fA ..IB&CVhmr컶&fC[ cz-FuoN#T#0[tw,~ hE$įvtDJU5VL8f˞ FQ5?A-@I}i5r7[ḠF14FChʊp8OBJFb+!|WDoZު-]*MrOj=xĥcXma޹wNPؒ ՊPgT>]6kKd+۪lfDMXl+5`I9.2m9e5j|9hrMuGRGzЯ\ť}`ӷ*@XfJhWv'?j.&y &]bڛM2煂`|٣vL j(nڔza(;^@l}lM@2qnMG˲5١$ٷ/cB`%}9>΁4dz(|ib@_#4JYLv \F wM;Gs&0Jw8 y.B;eRV/Y5Xp)4WལLS;RDku6(ò8mgiDekqAρb١t h`[t/9k.ƁBcw" j_0 %?yX%׾ZCI@ci*/5w5=U/qvjP'&) 8)nmMe-?ҝWyԞZʸ&zYmaVbvi fƹY}#sH2d]s˄u]} R63 8>>9e$=%sBxwxvfTЕ{"'HAwߨ  \#dgPi'#q/(G:׬eA+d4~8Tp}$&.ȣ;."L(rgn_r4ao'Bc,'{d1qaz]u:S#RjJqaWVXkZrXp-{}H|&\ۊm^^T&^uvZBt>~LJU8%34|@|n67HsxZzڕlX^:Q 3mB7>u*FAM+o}1cK$ CtU[Oq_3Rt5u%ý9F$ύlgЛVb8f$ֲH|%r΁~g< U>d]FabTx@Wy%=ih16r[VMQ9% hЮV-w^ l#F4 f3;rUaoC7@vmL#SQ/qI,uB#C)A k+Кsp ?1,(S6o8֒L)Brٸ:w)0D OX+4Γ$Ե\dZuBWZC2ssZXS~zU[b̶ Fe!ܵR*X4~#_5b1wyq8䴸o࿀yJ#>26ݷF5V-/z759ڵGI$1q$1 -fv< јh2: NsKle԰߀z㚵%Kc09: 5?JFHƵ`蕶Ru칺9д@e,Zss`W{IX!bu n3ñ힍Wy{ʦӿBEhKa1UYs79,6J$&ci9q #0lDiGᘘ-"%Ddq¤A*=>jZ]/Kw,4g6ӟD6 ¬-{-G*''uE8ͫxvvV˿ aMH![rvŖ#Fp90fE_ nxgE)WŒ(𴬉|+%SI፹ONz,!Q 1#oU 0dV5ӧ\B(S :TF``~usє}~EW6 [2+6KX?næ5Si2VYHSl%d;L8&VO@CD1Euj-8Z*(t ]JIF'i0;t,e"2LJ제;Xn 4L\vfi2'RA+xN%it/ 7AYZ|??osZC";v&u}%X Wi3-Wh?ϤW`lp2 H!8rh _/Q>EM>y-SQ~zI8j o6 };y%Bs+)# (Sl@Y[$KrqmTr(P=WNe^'@bcs3y$] ˎDE'mHGw7XX ]xe$\kd~pr$ħ0oNE&*dF5/%=mglϔ{(5rihp؎Q~[V/c@ J=,e }(,,QC%H`|.d~F5_1jו]f7'Sn*جTxD=bzZ)ꍗ}"04/3iDȄ:5GH1]`Bl궧/:ނe!kJ(m$S֯w<#(EW囨w;X+/ 1i]ȳ$dM a<_F9O.hY=0 UFܐː)= 6`_CiJ)&W!˜JG'Ϙ19۩("b@7 9cJg=9Ydm80[i Vڸ&k@I 0iU(n`Q8ՇhҸE6}S+64ꀱre{|P A߸_G$ ?KDf[}Q!dcmY$¨;J]d$2A[AN YN}ޑM@IP=;B#ا8Vd QhJ;F=).Hb6Dv !pө蜸 Y: tX2-sڱhZS0t%IÙK\xet<y=T=ve fY݇kq]f7!ګ$TCNt2G GpjAOޒXaNP4hAټ: z}5/ @\U9_kA->O,*6'1Yr)ǵ #+6 *`.LQ몋UUQ(9ۋ?J Iɽ3|<?W R>$([ZHMf cuRUDFR882FvP?w# ?U[(nIjT|yan0r`|59&q_7(4>9se<:dkeZ6,J#@ Se5n-%uF+uϡh0Χ&|"v,,< :#&XCAA0ȩ b=oRުzXG>`b|< Д-ՍaVy)~bqu^̻'!8RE9ۆ!>45(ٷߡ?~)GX:)k.' sh~9}K"DP\ [=!{y8wB!|΅ >ƽ<)~iSO- m؉[vv0ܗ\^-:!Gӽdi \QMe2M?J>U4\t]^ZG`?Zl PҍV..{pW#Gn 8 p'WOR&ڕ:wejϏ#Li{85Peh[z}oQE[vS4(}2#8И6,t뼩so%J1&l*(3hPJ隍ދ%HG ^)K&n1b7k咸_LjOSk>uud|@ eȿ]dofBb\vZGkZxJrfvvj$>(Qƌd*84UCqǝG_@1r!ZcjK)ҡ}6&pQ:\ jl9}iF1L;]i“I;E]77)OC5Wf8|cm#gVlѫLJeƥD1SeyvVWOsU3$Dp6bA@MA蹍e{D/ɠs"ڈx*OL4'|^$&YB4~ *ȧ C +̃Xaͤ+p E |hMo |%)^pUc1YPV ˛[ O+1uԥCA_jz }#*_Lc+&רQj Ղx=@uUDpoAApp?[`^``'^6?0lEL ӥo]"75 =lmU,x <501>ܞqx&#D0vi!2!LH+&x\䆷6,݈g { C@W 1wB$!`C)x~G\.uwf?j+JBѠu(dq$=Q8S+E8M[:QW{@A͌;Q2U\ O97?t+`v i+@35ޏ (آN{'`?UDqgt ps%](ͫ'NXqnCI˹v@BSM!5 Xx]Ǜhq #>{~p,E}+ V뺆7"$Cؤy~(ݗj-EK(O91̵ u1{(bQ`MV)NW>r$)X*sb_w&wqhyP|%zhb)4[L[,ZfP )7mMycFyĎ[ +%_IK[ͶjCB1^gS`̣ `ƫ;І^j}q|̤G5n +1s`>3 m_*j4"}B=)<0{hUC5]٥řɬ92^#d<%.5bЈש 03')H܂yc(PD?R wˌl~Yo|e`,ڤ(+Z3yri\x٦On/vơ=]ԳAҋtč#&u(o]Q6u1׀U"~QЙ4{;惪}gnTypjDNZ{ZI[  dHЌt;Wl[py @R.wl6I~W溲 I5I넍$w@2,Gu(/kX_;^lB%عI[I& }H  Z\p쭞-,rPH 5fݡ #,oASϱWaV܂W}ƒ?e5Q(PtIgaF.F@3umf}]R6rϗ wb^a~xau9ha0Kܵ_F.7}~62l 2A"&we(.SM( DKZQ/gyܾiSbWd%~hs917S`[&3U}H)ʫW\Yj6dэ1Xk[愕k1{a!+$B R'?q5 C(FTŠXXCN@ôLoWyBkIU1 b%S#4X+h ]Z 55`zپCwU`P| 睛/`ӦiJn0D!DK3K 1Ok 9OP2hK.|4P|E #KUublVmſ qR43J\H>ɋIn}Gbۺ5(Y?3:'rNUFrl^mE~h3a`b7 gmZ~ЗD%7%v_aIyZF4tq]"GXC2OืEn*cIX1&OuAj3ۂ6HV^jմ "Ӎ|/c8$nq9V|-Շ0H?~غЃa;Eb Ry'mE:gN:Y~-;mbD-[v|ETmYr`+KplAmտ"ZfkĬkC$ IXbKqvbofyd^:^F (q!tX;~"Kr.&8K'Bm Cb*#_){kqva*ΰ 6Im/l "bkN?0㗧Glْ蛆#$zmo7.Յ#-/zOy)C5Bx:ī瑠FVQN%2{c^NMLk?|Υ5CU ʩڱmb 0|Ǜ`up*j4m ئDs3>}o~GG}PP{98C5 D#ڦu%"WOkZT^A*`[?UHWҹs *>E/yInkρzi>OQЫ?X)VT\?47;@nʨW9Evdj(tRGt|3*`B'Jy}H$j"r:UK1E7y| 96q1罬gR /?b.>^kanm72G[!uA>N3 4 >V_,D{LZAgkHX_%V ;ag ;׈Iԓ^͙cQ8w'Aٝ]7sG Ŵ s^7 ֑@Z!5XVvR xf\B{>8fV?>'a3d?=:֪QLsU6h~|NҸ0om g(+M*+18M,!J#mna h !<KAVkJd ܔ}}Qu*Vo֛vF`xdqQ@lw=$rf5%z4ML$7 AXQ:k/[y$K@QQk'tE)[_'`׶稅#3Z%>\#KZlKsfi^ ?iV{Z_}>+GL([Pnjj`IU>eU\jI-TSXe$? p˜|5\ f>qӆd]s98 5!њ[#jyKѦ$:Es )xcl` JɃDw⑒O%\'W4*=/1/Cj!Σ[\ozaqft=Uj~FN60w d Ygv· aET^V%4!5/-\U|4J4'~PH$VmaGNVm9qsLĆKuHlcƏ01gaú%C}zcL\AyB&I*WSsrFVB|\ƙ"5}:OO{<\W(( _^"#XͱC㧼@{hs}fx'vx3H80])SA]P𧃪#dm c7EtF8rqмz4,Os-ų"-blbG-1 I(G{uwxxzd5jPVM/ ܮV(31ЋXR6;cjϋet*4ׂ>ɦ(&.eV1nϾ f$ƲO(pgjuACl5^A}5z>< ے;֢,R)evf-/GDRp{3YKHMx8 %$^H ~,ـݜe:Hh!QM 82 hH|qk޴N]읠,nU8{Rpێ9/Br^Fm'cP͑ƻo,:*w_:]#;0'N hb :n@0+yc e|oVWJmAROo0nIn!;78}Ɇ6=k,OXG91z0n; Z)`%=o8SĦ)BA!aʯ>V w$ۮڮRjrQ>]ӚЉGhG[W9YF/d.$3'|{L;tJ(9EΣWa;Y&½tf{i!9,k솵Ir;(DĻl75P.vsz:pڕ5(?g餃:6p˦DZs\y GsfGMdW>L,RFD;jx6KJA1:[‰?/s1`y_m4?!=7dtJ ktB!S*ဗ<ߙpo#8?fDYzbObM0KcϻGJ5XوoT$6^Y,zxbpJK8ӯ~u|AlJgwGmNWտoВ?/~qr L[:z+q$Ν#9AxUHTA#Dmgʙv3^ͬ gVO NL]R:cbqݧ%dKm*zes#z슎D=U~/ٕ7L~,4 X8\`}za³r=|SMƘFC۸C4`o6CU_$)d-}3!ߵM'2ZC%MN+Ud/%ZKc"cah  ]qFĦLGv )CyL|)c}!>-f"5ߗO* qk./^7A~M0`cO`)$ݫ`]"ɨ钷GNW{148}i*(CL.M4%Y$Qɼo/8Fd@E~@FJG^;ԣ18n1(|ZOc#Z{,0`Gݖj첲 $R,ru_Πq>̚'[? ` 5ܻ)^ո-M$O( RT&U39,U0'Ow>~1OMmKG$QM`⣜wqf gu6|玘Zڕk?`5u%K>2"O;ն_.&(T#/@8%KMIA',.5M@+TRCʳv?/;*l$ߡ_4wak~*;|%aFLj&liqt3>IrD5V<-&(V] E¾Zbىi(q2+{ iZr{+{G wB dCLf oF.Ul ֖g~'/ZPw_Usj:Ф+Pӗ@z ]cYGFoiB5iE6r/E3w1W*{\Yx ubhWj,p`h QMyv眣09fLC,c1,yqPj/3-;531}7ZnV"ȍ*۽{b:vg6w)qAVi\06MGt6J6\0>9tWfO7@Z ݣr[.?.G2`I8X>~b'Map &S·~@xCϢpBeO31C:ۓ{J:ʏ) ;HⲑhJaQ^X߀.B !dX Ǥi2 _ܣV l &>I}xsJG4˿Z99sZQBpy5;=m5D]`= S.TO̬_⽸Zo֫$œ2_#}6&w 腦 ͞E,Cx_-õ`ḯ4(8E.a/Yws4BnTbIBWO*$riߖ4NwL)kNQ6rL|mV$=Xܗ։s9튥] +'] MNA46YjPB%hk^l_r%tLW~Yw㉬>F:&p(\o޵{JQD /Vu@ȗjd?Wr{%5za @ #AR7~ )mMg s3WWKЕ=Za_mF*!twRɏI$އmqo:_8^RU<UDmdv"zOJB#;&Ӧx=h,`.Ϝr|@EXgTGѯP8L}U f3xp$(ߧ aWF-jmEU*֘kd&c8Ǜ>~'D5^0,Vv&`_Tf60 viv!p j*hS3Іj~*}'^4tc*Ҟ(|xΡ3_byZ2$6{TV`eu 3(pc V(4Hڐao^$l;̡`[a6s'`ٵՓe7 q)a<r>l|V6Kɦ<%+Y/VKqŁ9?@.zzܟ"%*olBhfbZR^ŨdE:!ܭm'qO5d[^L+3.hVo;-p`mTťTBqKWip({_ʑOFBB/m9U 6+oyTps >%3>b*xq9[w;qW"r[z $Kfk Gy X c[2K+cSz}q3+v%]jFey&?铝GEe3H[@j̧ <N3=764'`m*78uE憫y*o춵̀MTANװҲTBplMĚHm$mXƓ/"b%U+IL6 n/[ !Ĭ ?`XgޤOH}ߩ6A0ǟbPiZ8[ڲgO(:o2,dd.+"eFsF(H5OMTjUZt?y2C[rΑ._e :p5ҞKMPӸ`j4NZKV>Avi |m(qf1L7I= G^B!uTԐ2B5C]7"殾?.K#O#,xQ\ UvPiq61XZ׼?d/|X6*_ Ҁ?< 7ui6j2I?\smh'G]zy'1W p5;Qvr4w$ |pՀ6A<DuƠh "c'GSm 3i0'{}ƗqLVM)f֘*:ȱW[y7;-mMw+w֡2kfĀ0>½8YVyxո'_Oroga GfO;]%ɛQt"dsQE ߃HPorAvWd0, Lx T< ` /(7+cU^|-\tYô7ݓ71 "[n`i aˬ݌U*#vku7$+6_Sj?-1 Z[QIAS&޽l _Q[$2@F ?lRVRf#S(.",(6",L ~ P$Z`1k@$僐{Ė@wCm,ELv_ӺMJT|"/[[:J칥 cS#ӎ6ޘPhc"9n!0bE&q]A.ҭY΋?"^x y)FF%qB,%?t< '}> +Ku'IK<%Qe|G/=ZxIQM S·Cv!V4ރKgə)nw2葜%lIӍs;A@ֱO!ndi3`i]ǾV,Gql6R>`}C^p2liO BlZQFx-hx9MhnRG'ć$fTۑ<@ލτT0dnF, 6@'88=u^`uS-_һMp5Y8=u g]_qO[^.A(A׿ӳ孩ŒϟzLeB"r*H="_|cU}w;8$Qfɲn8[i4Yo[دx;m~:+Hw*^W۵EF 7r9~χ2X>Y88j@rJ*n!nQ',HrGf2iF8ojfO|]Y_@z(ӀII>ڐ[7>LbT/ -vBSshW(m^k\s=LemzZqbhWj_t8qb Ƨ}م5$$lTܡC"ZA1@thfy;*XqCeռx:Cc &]s HB8P EuXT0f9ӌ}s0/Z&QsAq?^L5Ұb^(YUyAЫk<3/.OmBڏ%5?A;ؾ0YacUV/ZX$deIoЌėcQhP!Z bk0= S`TKDL) L8DLq%\3TA^UA_'&oWM~DGp0ٹOH!sL̰j6@_bNn0i8H6.}ӡkʵȞHD " 0Sa{s,J޼-M>F=#o5F?>%J2 6[E ye͙oevL]:);Vi\:&l^Jo7rPCiZB)9L)o]A۟!~$h.\=D-֑+^rk{4=#%`֕e߁-8%TI}Ii?9=Pt5iqtcN:aPGrڡfBVd:M6fJrY:-,q/ %E/f.CK^zU 棓v*X]FF,YO%uP榟ReNV}_^ˎF C-Cڢ!ɨGy?淺>Q5:gB"&ۍRyU'yz3 x_89 kh Mx6͡f r_R36Z\j^+-im.´u" #W(8iwE8À]ģGw ,ky1V>TeY!DEǨC^MB&,Kn>PNe}O#ԙ߄vu24R2D8V jZA5"F*RnI< &ZZ4nlL30Mό|G EV$a`Wy4H z pi+HXCK֟+5Zj+z4TQ^luߛ\7Y:c"R$ٓ!K9;Ri*Ԯ=&i- mۍT_ٽtQ%{b33 N6s.զа6w(BFw jߒQTdԆ\IHyl_uoH7k6PٲaaQbH(MSSXJ%le{/Rqgfy[SKH['~SDR_1 ڷɿ4h,N:x W},~ˤASó+" v2@%B)oPQ,Omϴ09@70J&d3vzӁĶ~8@o&C_MT iy %$+0)*wm~먇Y[PғTF?vw7J IkP/.\'mmI"TwpX1!ܽ6'8S"4܉2uf..\|&}7_DK2 7( i3!I:D!jo,ٶM=Z.XGvXA+J26VgY5:|{o$-O{1x;feKvtt{k1.sTk*-a8VtlY"&~o҆Ϧ8mvݐ`?=h'w,ew8cQ >z.H̎#oa$^@RWUӦä8FfW֧W%ú;:PD3ഏEIUwpkE7ym5b &9R%KA/z뜖RQp(uL# =9G۷pZේa)эio*^A)Oɢ˩x4{(_o2f>_Vm7!͋]\) 'NGl6%ҙ>?>{~C{EA eڷXfQjm(47S/̚zo6C[F#/U.?ePp}w~myn GotK< G`X|^pt*rFquU/F)XG:e7@!^XUHJ~!dJs0~8uE*x@WVJ$@GהyZзw8w\΃V 28^9aR@&(1_Б3Jw٠]j%RK1CG' w\&n;E}4Z>:YkY0HrPk}*Gz_Ah fK"b#cS蚙㖅u -Ł4ɲק+EXUzF}!`KHu}i%pdnX_u[,knfZ 0e-@7!zJl4uch\JqN=,zϔl#i=uRV)tL1jQ 7LP.qY7 u 1`33{ c[9QyZߵptRt6WI[xᛈoJKȰ5K ?kP۶,ֻUd_;f@叻2̳L*/4o̺+zdZ$wzl"a%BRoFޯeDDÙWFc0ޤb}+OI.XØ^쓶A͗/ 5m%1bA ; P:MJ\GzD6l2iFt/^rW/ ·_/e4 mϒ50HLp#i\=j ], +<{nH.&=-cQ({N/E _s 1kTF*> Yš<4OpI/4,l׵ֵ@)“(A4,ğt 4-q`h"ѿ2I*GoXӃUy^EgU/SBxȐy hx$R`2?ss}$^ut^~EJ+fbdfK&)vhwui "e\JFʓG*ښ@BwnjW7"'q"H <8i8lh*V92JSAk6dO|u|Q_s)QFIYucJ%$2\,ч(IQа|9$+R<꼅 `g *9Vtxgx&"-B#zw{t뾾꜕t.h mG[j1XKrٺ2fSr < a"@94Rr;0iH]P/]P͙w0.jԫ09%SRQ(i03a0[Sk-M݁,y /Έ"5f.%;DucÒ q.Yc3i|z%{[=YT酽5'1"DtY:]bUf9?XLa`bῠzRsd/e?lZƭAdoSI|pO'cHRT28w fĺ%k#zU >coP ы;-, |i36y)`b^jXȰis#7hkkq>$TWEmƸi3mE`9-z{_?aYeA<7JYA՘YU@|Mk+#)9u]N{_7_.G|?$./aj.r oEJ¤B!?I ˧u}Q}S;GD|Fj'D R 'Eد1a'@@ Pk)gM*7Nl-sTnШtē@M$*oT/XD#P FJ^;n|Vf/:fjTr1b.pڵ-R@ nU3j??Ǿ] 1{#@Gš $8#eus} M%)nmI2>X`u>f")*ʍgY)<~d]h4t=~6$84 @lKc[.simpm)4PVrŴ]jr­ Wr hs#d,Tӫ qrTfh~4 {\mv-EY543rdy Rrnn*1lIJS|o?>I ׇd@NǤJ>b:/(I DP[.EYd >H>?S>iR$eZ=:sE}a1]*/87vԠET+l19gv~PeMJ=<]0xady1&[gop`EU>c&L/K Z8EhYKj(U($B񈯦P(7etWR#_B IQSo&JASzzq$@mW g0 Md6rjTuJTa$qUwfyA $RjZ}.3OFBP >izI HU\)cc+9x,Ǻk FJhIyZE-2tRqK._DYcjH̠Wtvv7(La+9H 9TXgV3&` ?vb{kjek0"7CFYRd3iٛОK?;|Z9j3eNe\c{xY @'^NI6aܖ` ]k5F} 0sth=QWsWht3L݃Nϼw8!>ڰ[0_2u 2jMu/zθ0R ?}KM}1b$4 ta/ nLc[o\ θteRZSE+x׌S욝)LU *n[-!M;~>sKAn;!P衻9~`r?'LH]~UȚ5\څrq`+#?I_e Ne+wkzdRgbBQtv$]K y Ut,9ւ54'_>ECCq*a5>^XR08tq˳mD*Ed+}/f';Lf~rݪ d R9R^) 7 jrN⡫~xH yx9YZe{D< #A7=qH%iM$e;NdUu;v1 ٩4*ԝi%х6@?(nTRí 8O݈_)6Aؙp򠴇#k  …*iUnpp\3֜|K .KA_5j/{u VfR<{븆][!{\vn]0N:~;! b3x9z}u\Zg $^+W^/7[6j8`3>4WFw:}xZ65ueěVQ @1!m"G͢RϒK/8AE_?-LqIp93Ź %}i| _h|_%~/]!'3)|VUڻQbP_Z۳hF%cmU eY駎M/ o%]Y5d_ ds^Qkz|!qvxEFu̪&ct8eu{'UH:6Ŵ͕Jc؂Ysf* Ai0ӻ74 /GnʙgCT i$[%f ^eI;R(4@} y[F^E"}-fD``lْ `2e/3"1W\ RoZ.8:P,q1믾)#b N'E99bZN]PVmP޿/MEБ$∊$߯g[P/MT$r咡\ 16ٜԜf`;%vg:R+}?0qdrfj\~{r,+EAj XG! bb!\vB|~/B-zO_~K2'q8N`P]kpWؽW56e$w͚dG:v2pZ!b{w1crgl"Ԋ%!){Z&$s;HdVcĹ( [Da`E]|GPs>Akc4/Qqѹz';S)[KW ?1%_"[ع9ن8Z~HdUF! 56 .`H%VD5=x6}L k/mjKdnY{1jUO 2B_?_̗aE@ "z,&m+TBnoł'Q^Տ=(iL$%*Y! QwHN֧.t0~+nLOcF^녶 mg9G057t;gjݓ,;o]K%T4N`2BN%8#oL2pO@&Џ&hlT-yO%n9#m)>(gH5caS H1 CO~J3;)+0k"a@g۬P}I~DZ "}z_j\&@iD^u%XiB0[WIFr4SGgm|;3X0m.8-W/]h Ʋk|Q*N f}Q%8Cd^?W&Y(PSi>aNF`RW 9nm mJ,.vXCௐ&rN>+jm}kRWFq9Qq_.!u/Шs&302YDż.Er*J*.v&}v`_THjpO@QU0tkyXV˵Jv_Srgdyw3鶖6(O#y) -\K~P=5%L^@#Yy V@r|X<@ZV#TxF% >e߽Q8Tj@ϰG 0+]τSeWbV&4)V P䦆bmlp5ǶU ^r™.NZr.VFa(n^TX]'-4ESbߣEXg1.X#9]MJ|k3&;NS>Kro j^Q2@L+|JXfF-]\ajdxHahiރ_%'2Ϡ>lZ['^vOJ6"ANx }E;IAtǞN?-0 OzY<ꊌØ9@rYk,1 =7cQ/ش)C-%/B0K<0+KÆV.&Ž^|[93z?51ҿo\,ӑ)`E3JπenE녻/AC%Za"% "|ŔgF/&Qvz5M PSyFiNͤFONѝڗ;5jD\;fO{R"h8fw]"0 ϑA7t@A 0@yi _>1VY%ODN 4ɺm9 ?y4%+{k;p#N*OƔmibc_vuG4r?􂪀K  _e +eۚ( OTn[1M}ԨPQ<ø#ԁ9eIqCCi:MΌiu,ZRC!F;/S3#NJkD͞˞uG ݽTXAC2aM;qPǓ'g7bRf[ Jg3>_q0s3(կ&1T{!P _ C:%&n;Y:ٵ4\7: l%xGE;c{Ax&,㉹$.}B;Ӊ 6ȯN:B`=d"SҾ8lDk׋M!RCjذf(*q^X#ãwWʍ7Z#,p[D2uSmwa! \cSpCl{^Pл.|uTP[^^] Y_:Ͷ%f܂n-]-?for$pԸX&@7byԼOuZ{C1^u5ے_}CEdBr>{:ۈ'{/YIheJOƤ2]ͽ̵CNjuY5Z\gCa&yԣU_[Zr]C:ͤma;[8߽ٞY4g'g.ovVjJyJ“K')*kl?㌇Ar$ .! ]{O3F$Ylₑtb"LF+DdIT*WpU}ÄR@Эsh,ViLqBWZ騎T"⇐ڙv.GLfhR+yk-Xa/,Xy;x+A~1mf-J{"}=q-ʐtqcx?'t:tzU [x exP=}2zC'ZZ)QZ"5ےײ9-B Yo$ss RXs?f@mmK}whU[)ϠwDpmm Y)`*N|kL.5F(KY .) 0ek@z\: |2}J.L:7dI-^HO3 WpH[G<I& Gm;Ob'yC *j#[ b"N6aZSGJ^]iJV]|K/1d|.S@-<[}s܋qX\LF8#y i tcyS 2z=Ie g|Tl!YϲI0#s},̽: Q?'KV{nFk?VdFΕu lIjtrn"lU"#b見lˡfiLyv6'vQcfZf,-Rͼ¦)ppzVa6(cbsgNJtZ(YßMd! ]K}ښIʪ#Bb}nnx q0z )Ԏ40.ۼ#Jf,j34pcF HtX$9ck/314@ ~OzL9Y^z+r::˵x|3Cu3DBJrK꘍)xYCsVT{ oWk҄g)M[eDD!ĝ9^XyS˰[u~5J@WUҼ\}"l-)Y1>TW1;s4.䖕vTK.'g}nor1|x S"Γ%a GO.TN֍ȇ4"r5Fԕ `aH8 \()EpYǮ>#M^>kjh޹<{j:\r1auY'Dl5`kjv/]8wQ+ѩq3XV:/^@<>l k@ENJNtlN.s)i!J:q&]Z\;vwœ:W[S)E[~%.\CACγF=<%l֓ |Y3x`vs3NEj% _O;%p Kܒ|3۲+Iz-Qqʄ!G8,t!o hN L=2.}K^ 7%.913v2 =i睢c8;Kꢬ`W>6=TCZz%Ǩ}o<"1:_-jkXj146iYH& HmE~/9ĕ'c*l2e$OC4o[G}t4=uCt-$a%:q:3StQԠ'YoxWT8FF:`:wV^ǤGNZ?k2԰TE )_b]nd(dj#nF h+D;_,C8 zcCL).b>H0O7Fx= ^ن LL]Q(G^U-;?\ CL i.U\`ӻjQ3MG_ҳUfCiy*l c\8P(40wA¼kϹMJiX ?Ӛ&7j4g2!6|VJ0,ȓ~LRγMK 6W-$6uApQu|W敲]M]ƺXkýGE@mpuX3n6,SE]@ߒ{:1iΡ}ҪKj0 ._j8"[YYqJfܥkѬFQF@1 unTR돉{sDVc/KND#q͟jn3ĞEM =lzdKϹ.>z[/n׷ 7Gt!>3oc3Ȓ:x/-z4=Vdn.ՃYM&YZ\^Rk3fh,Q>3|V-B-UW|o5"g,dAS ]2ň[_Xc'"G#v3֡&33$FiJα3ؒ’tA0>)Տ֠Ӭ`2YHʲ MI@ͧ~rn̶̽` ]liAPv!kJUg Y(C@5mbS/Qc@ւy60\Ye [Jccʯ#I-_&>R ޷G cq4q6!YaF }1,DHp IjiO=rѲ;xrl1N4-t'݀>x!X\E?c+?Nꄠv`e< &S)O&Ʌ?Zk>ڟ&qMIa{^?/@1aVXx2nsbgt&uf`NS13c՛*{d_WRܱ |`/V9rvD'Q m EZ;*QD,bo€lcvǛ_`(U _lw #XXtXgAM#0%{=_1[l ׸)[N4P^g`VtVajmA j;#@ vs@W8o>$^XDN~ܣ6>/9-ISRg4ˢ*N=fDM p4w& Ijmv6v:4S̙9.{D_"At?W:Ai5I.G"DÁH+,'S/D^eʎ s֕W`xk"MrMh &Ia! Y;#ja HJpրK1V9N$޿ )K'fk*A gѸ[5trwmϐ=j2yBd7AS[Ǣ)Y&]!PRS~Y5ZL9o^Á>>dVǜaH#BM#ƴ-pG4zL r„B`Դ.v8 0^J۝0Ft9ּuK[rYzW:9~ U&(LN2z#3 2> eZ%"1=EOW9rBOm!S;p?>yu9bh/iV)>@՛!X_CD,ʙۙ {*a ʻ%G?cB0(8HׂU:"%u- [2Жz3ɐ<&*#c$,-j 06e+fa;@Dۛ!`=ne1{elֿhu[ޯ݉u-wSVH^ŻO7~dHPKʝ@{ͩSs5U2jWRS?o0 sL;*.3VAhB\bm\^`069p'c,C󤇊 d^$yJBmCJ)>8)RJc~g.T\#IJ7}tpMUI=DX&C~Cz[R 3(`(w$_үd2D=/q)۴Oe}ACj{ ٨u<>&IyS*Y3}2#{i(yD{ɞdb-[96[ɻHᰡ/;gȳP_6 ML|VəM;;5EeTڦxvgDTpRoÔiV u&C&C<8HC)O$fk']zz"j9K A,K>}YكfW^_GH4jL i7<&K y^ms},(Zb[Cnva#a_S#!V!<ظ9VCohF .j E2D{eъ FE;xҖdr3EVnLk}˖޶)} x<'uqK6F~>÷!!u"@nHU 9q#dbo}P]B2,̰/1ڣZk8;, L8޴iDMswf{RPޙH{^{lUI\i5䊆;O8 SvG&&[!%|'W>v ޿Dʏ5``ks; QM,d*`ɳeϪe,M >4v9nm&qrzZI;ᨹFb+8zȎL,;s&ಀ 0u RZH#mJʟ1dcmZ뫖P|pwf@!>Q[b tUbm7@Nd>koO]W`uRIZ ~;b+R纫;no&o!s;ecEuZq#Kp``ȸv i5 {24yä/\>dpP oƓrxX^U,f2 #P'W:`fҪp[ 1Hm{jYtfQ)N"1 )"(v`M~P%0v}GE>S"7JhuY(qj%EOu =WD?hXu)rXLZ&/eF[,gi헃RCSn.ţP,k{䣸Wfsϒ[wx}1soqOp{wEX$EG*QtQ2c*Lbt?z7B؛bQz%+ȅl `r]"u-6fhw7b~ō[yE3f0}օ2JQ*LMf<Beg#>1uZF~h$=yy 5(G R|D\B6g* HWz#l+ȏ?:}yqŽx]'XK$s`^ۡ`JHDL" jMrՉigO O97J&c86FXU* j")w&hعt*ۖrBDOP ݀<*n_{$XdXDDɭJH_AFYNxͽ#nZK;Ǫ[i ~!4,5grer\}SC~B\ tv;˦FZQYã,\/6Lb,jWdI$!HÄ֮%oj$]}!Ђ^3) /Ej 4?ʫ'#jn*]Ȥ@J?郅 fayW[pl+ȏDhV^%^=SȴX$i'seܰp*VޮY nt -15B.P\QTod? 7ԩ);|N @oᢐFۊ"'NIo | rs+V:i$5FB>c+wW[. ZN5fw/ f-$>ny;ӎ6QGiꆖG vL0;~'lQnUߣ[މН^f 2lNMHW\D[͔fQ6 b7zS_j>RQ>(mKRޯ7U#~+yo_Mls,NZ]cԦ W?@,%)sڿΕ/  *mQanJ~CBp{>]|Ӟظ̪ܐ#5Hն2VSԇ0剨 z`R#9bv膈(#wo}I gE p#kʱ{wkS 3'(Rgr+ANf-{J=[;L@&$Rv"h2uhY¸~;K,GN5 Z{SZ|n\ySh~(jq7ӽ!v]osIb\83 ϡ, 3A\W[k+;όD(keJHFH'3D:.UA)U}̥4W G徔K*5{Gf2À^HeW&MA\Hin6QEjG{xNޝxbՅdRs}TL]N#Ty& @t!ü h]]#8т `\2ĸ>GvI}!G1ϳ7ͳހ&? Lz|vzi%Aχʼ UX45ZJ$|wm,|RJo- "Q OcnD@BM;x&xx;0j/H6Pu1^Z6|'Vs'7mQ^,|)$XZo!ݨâ]4._v%tBtڍ@e1'z+Pҹڀ\6ZM|-"hMuEɛZܤ)Xhb>ĪAn Ҙ:=J'w)0zÖ.^ZGtӰH21vSx8R?:T]wv,Xf&QJwv<.P4"f*=Uʁ*lǡD"u $Yu_, ‹s>cR{=bWNʁ3G,,8 |qq(D?})~/On8#KK/0wM$|[ل>>&?mDs%2ޠ/LUM#)zS-u-9 3Yh % u23/{A4s|.[:6rP"C$ẆBZczub13ւ iT!|v`~qa0C2T *,{k'6⒕_snS"?>n;l%ioR;YdrϚ-!гD;1ngzv02"Ņ{3Y_0!zbCپAHnPȁl\]N'د~SL"a|Rxhgo+21}l^( ,os:d<%Zy5zt).NnA,-͒QgƷYVt s4|aTR\V+mJԒo-f##2#m˝Dd#Q)]#byD;oD4[N?%#S4#R[ օz"N7:r*\Ж uzjn*Dˡaيͧ|wڈ$`叁&x؈ޫGeLi3}'?RrlA>=W.quSS,ycz835I eƒw19$@o E >ְGx5͑By=:}Yp35m%/ ,(];:ǡytE*_; !9G1'GӠ[{H]S<4TE-8N&x]=0(.C+Fگ2 .APs=)$l}UfѣBڥY$ ׺X, e@fk\TGW<-2{UOt8"y>7)վˡ ?K <\հ-~y8Ǡ ][ l4 cFB#Ncle cEJ!VNѧd0 QުuPyW{FsN@TM[,z9RSzsN@ =$"EDiYd4) yx&ĺ9:&1w˲^8CģO{E#3P4m\NhQ* Jɉ̤JEEp ]4&'BZQߧt3f#Fn x&~]ԫ!CNUnH=+D'Wq[FBfN?݌7QP8\IN $U)_`CkA#H0fҷJl^p0b%nm?5e^/*r( cv/B ]ͬO -Lh+&dm{~kݫX2n;I*7H +H_9̿_hٟpS t,bn)IdJBH{X3VY{B&YA&k:ܕID]B+].x? .+ucA#kptflg#c,ַgclVهFSQ.k5|M׈ŕ([f,F]/:I]HPȗv H}U3*HΰAz=N# R =0Ü DY' uf(w)u6 ꝧ)H3 7KEHfӃl7H0dl\ֽ ދÙL; 3M0N [94ĞntnوP)2! ;?_+B`- A]x 贄_qGqsŚ#"T<W0'tza"S7=XdE{@XR@)k.lYhi"f,fI*a,s le޴{Py|鸠_kNv~8&u!R}I(JNOJhU)VߕdB)ѹ02F(T 7h"ɼ%"x6^q?&~m) G(⅜/7 dˁ5F^HǢV!9z2V+AI%E'*wu!W=/ W(O=\x&080rIaS;vlB3 V]D'iC#Sw K'dxl,{ι vƲwkj_'QBULÒ1ڮ# C=V:!X[qǽevQ>e9SÝ&ƪ%󔭫(oW頰B.+qBG |uՈՠۢG>;]w 6QuK)7PN~-m`64RhŊoHW6+!aY=;/ UFzJ'b v.Cф/ eVLlބ%LwO%^wE@|ΐ3@O2u "OErL1z-z @py&,cEut.Od #ʈyB/&ߤjڻ#rYCK": \A؉[z6)}{:'Ie0Wӆt/yٕS (nܟO/lytdȢw|KYa0ƢbDPjJ2!%<wEkZJmS P3K&X;AGP%Y`1`Ropy^_q Mq$^dS6QCjPq&٧!_X4`(c(m} -9$7YE`'{J}]˷ h"ݻoBM!^j>WIo :S)h(N{Uʕr}ORWAZ{=Έ,gE1QEŬ1@j,Bv:Qmz0Z;B\Ԓu5S .UhU$׮P7-2kX6`ҭ*̋YX 5J0w`49DBW]4ؖ/ JV{珵7r#̓;Z4M2y.}}m 0@Z |LoK|+[AJ]{rIpUīlGLbPqJ Z:NБn/}omX5KP=)77[7?E}_S S,%vMЕ›ī6wՏ\EEf h@+?LNAƠ F&W"z{ppkF?7Ā?;mign/9lU,W;ܳύ4o3O1¶)@ǣ`wzi+n=M)YoTiQ$]"Ej`n~iΜwNðŨ׋ѧ c`IUo(8ջC4ÆP,C6Ƶ̪e_9MF!H __f?p>0־W|hvwnk]Yp:r/JNknK5ʿ^ʃe}b=X'!wԒMF^;ӭ6&h[O 3c'IzԵ`U`UѧZpJq^5ĵ[. Eϯ<[[o4*4klz>R{|`z%s e+xs7\7SVI]cp* "V7Gǒ)q၃Z2lQY%]jJK'@MP¤rZK6 ;/(Ԕ&YEEd%d#ܒh[j^myituUD k: n< +W70/rZ(v(YzHI!xy,8k_sS՗x$zu ~JuYiy4؀"m%1F4y8 o:``V=ƍ.JFfd[;>}㹐΍RV(g.EǞƲj)R4CT_$- 4$FbfYHɦ{C~*$`p-QzU=aϡNMhqNJKe{۹GlnRc7|yM#!ee^C`a0نVB,ogɍYq^3o0qΪli^ tjBiyp*bvYH,#'0s ^2sma.Q ?u?2򷯝;ט˴ZN/h$^;KAbfRwe*J@t̀5wDnfXOM;4 }7Ni;Yc^LV.6l)K * 3ǘ^cǾWnڵ=!"ʫFh AcHȰIDө,䱤4<5j,LQ nXۿ[ *Ѷv#5p|ט8*V)Xe4v32ӕPfiL[Iy~C?.I(E+o|޼@ѝW.  >5Fg Cg\PU^js:Hz0u6磀숙|]; K3g׈-C1˜4lQ3!q [bSaGLǀD+"rR(7,;a* 0;*y'VL.gY8K/JժM]],:^5 ֭H"%qLwvi##:mE@eraPﹲD$!7$6e]fxR:؍> 8fDh)MK{]{=D; `g*C zLPpOĝȂ\XWwc>DPNKFQ8D'c.}f3"XXGf}noBmuK>ߺv7H25ה9J]#8;`LU`A _v\7ax0@* EHq&pi}EJd́NN ~6yJ|3n""ۙ.& ϙ=9.aW6Mro\O:VO:ަֈb9h?5-4ʺ+|VᱜlIXǯ(~\tU!*_~te; x5@{1ˎ: s˷L5*Zi'\2-k,@+0f*j}<[v/RC%j6+nB5D:?fJpԆ*I -社I$Mf_4KUzSI_} ~QO:6GGc{p{ħ!ͷ!~&&liH Yҝa k((ng0bsM}m]i"_`Z^pvV8_+:${9؂4 ǚ51G^2vDdV2kr~F$ 4f AhH4r?q!58ug3K'/]]m|Lk>QB%zMzRşȎ 0P]W%4؉*"Rہ vGgOٛIwMV/Y\PKS~۷)S'Q=کѪϑuTH+խ(\꿵M ƍqQRu/.uW/ީ-rp4I9ҫ?1j̉nQPRt} b{S0wk:ۓ9wMK (%lB hM.݂ڸ(,X+]h2ٛ~0J:m`GS^%nzah=ͬ_p Ӻ3?p@ߺ9(<#nՕC"i/WCTc\[(o!}j{umXsFzlPJO; VMH|3Jǚ/jQ#_YHb&` i0.(k*\ϒrg_59[=qȜZ0*k֗r,I'¯h8tބӑz'͈1ǟ5;$*~n52\f09nճ+YN0X ioKLus41CНGr5 fA8۹!zrn$0^;g;@-eϣ%X zb]Qt>Z0<6"}R1Nrsw#WL1m]agt*TOr=G`h5ypR4yȵKV$7R[S̛yB#ٺs'+ CwQE[ZD$[TM咉ىU.WtQ\Ν /L˳a*&`>I6,[~lϒ t-s-hP`9m{FJ+t A?g>`Qa@e[DtL.6/umfd}VPb+wAi@A^ٞ B p QP=$MP]휘|}(٬Ip{N^,f: dn"HMF)fPϦRq$ ˖B"RA'+c EREDNÑiɺ5[;bd&l 2ѽ29f  &Լo -<1&v# nύ@3ѳfAډ~Kak%kMS\UxԆgpzUQ!侄PTXhbݬEI.sF+$xs4L`Fӂ0WhP];9ٚ%gAy*x佻PIy;q1])Vx{]pS{F}na+0SͻLJz'aÑK/~Wu5\W"Tb,ϥ+yP`?2$xp]s,= 9)4, 0J4f T<@땖%HxɖH`ob?O H29ޝw$.I??ڪ,&*1 [Z :+9l,xY𱐛U*Puc_UY(†D!2u#EaviRq1۹y]V:C]]ELWa*B@H@`3?Q{+W5ݱvu^:h;ZnhPcs8g#? ɲy{)5нkhISم8ӚМ'il@?HsG KBp=8x4E 9&nk,ɣ$KʚX7rVJFǩHGDFNi^#үcZ9 ?Z=ܜ:\ړmglS^x!6{] ,łmw|f5D ٷʸ3Ov%N)|ӹ+LJ1Q.RT b OZLx®᫺  1OPfd4 q!OITT[=!Gp+^(ʊBJތV<.bAթ-;m58FtwM_)ʕ]#LVRp=ڼvLy=;EN+"` :V| dZWqAǐP6\so9,I )[3?&4u2;!X\{*$j*.Dnyߋ}!M;m ½3njW->?m>g| :_r\ZLJN>=@n"z{'#/U9 HtKVyB7Pd]'Ds,Хmʊdc,wQnA 7S%!N(c;02gV <~O0I4UN׺N6Ɗ/- /&2 S/`JG(:or!$gS(2|>^@$6ou<<T#!—5fۡV9?QWֺR-{LCfd&qvI D_)?/]w.WUpv%iͰoЫB{8CϮB?*ng蜼(C j/¹*8/[_eZD~gZoQPs^^к[ 'omtGo _d26 %bd_t:r[ݬ uCrg|My=z8 ίهM^r 8]lRYEcWdy_+GL8R;PXk5aPCP1z^ϻ q^՗[hQwOWA!_E(ay` j,`k'. ѓ1yp/NwiiX \ yMY{뮪QV'@,>PGZ()忭Ńxh9eAɍ;>03I{wW]ڟ0q~Zܕ% &)~kؘA zjTu3dTuڴr*y)}lS%}m+]Q]{@aLFfF(@/KV h< >0}[NCӉ 98v$7Pe'oA< 5~BYP~xA:}BiId?qJ.I2wDg0.t5{< mΙOt@+T[eZ4-M #K {m, :qPη|_mDKaBϫYM΍WGx?E0IVZH jӄR)Ѱ0aP4|PyNCgIP".~!!&QEGD2c̗,On /P7Uhޫ#~xB#|a”y?+ \}mKͩAꊾuYɵ%'·t>nɏ9 ސ>ma{i,[NgVa-A]ɡW@W2%-D; b& t>{F1A]:م2N nR$p{ry}ʼ*֡PbE^d!Ψľes‹. .-,?~]<I~~1^`d]O]63"N [uy1󯫋E$~EٶM>"J#z"dhSݲ.{4Y'ťY'F"9ZkBlKW 6A5?P:L\$b Y Z!J|+P@.}k>@‹'&G4g+ͺdpy5pM1.VEHPXPlvSc0N^NC`oePzY)&$2=-9@tQxZV, z(=p$PUfDOqq}r_!Ǥ&[QP >cѝz0n#՛=#&pX"Km, 6?& )~!z *rKQ#7v%}t H8V`-EvH4ߙxtM\/X#7;GAWֱl xA4IVO1ciش[/άoԘF& ލN +:2{ĭ♩WedBew `ztcg4&  =YL:PT5Ovjr9mfyűiO>-|0 JRq.Y갩%Dli(C<-J: +Ŀ2Z2 >7i#$^ +Z:\Zf3TF{YGէH"rRd?URcN?P(6:~=;SSy)(lTӨ @+Zo]2Z04p o CC#ٵo:=_rRgՇ^'[qTzʅrkKUN)td66v3O+A}V^>ST EI\_(ƶSSO`*Yu9>sYtreƉ=X&lWFa m"@%Z m+!_JPl\H1SgDu.&#Bɂ-cO:O0uV_ 0GvB޽G%w#yI!g.$I R擥v;T;hfi,NvB"AeOrlVnF)%KfnzPNԓ5 ୌ.Ci^&89Pt;<ӌ!OM#܁xI=B!]@zL A+*zvtI?޴/|,]=d681wDRWaIMf0 w(jlyz+VڴւA%@%FzAD6Gl˜oCE!|, `[j X~@=k4y)HL뇪W}㽶̍>pSutWQ!:ۏ h֨Ldq"ճ 46ZF)D*xFOM{eփh c&TE#T%<~F媍dF_V,Pn#rho~!%BQ{T{Po|\bhea^̞t$w XShh͆qƐMlaT'ueD@R^}–gGEuHcO`ngHˣN#|q$UMEl(S#[{Yb ^nY+v-h3?'5t :T_/9Fro(vɺ:#2!͜Upw'ݱ֎wS{ؿs sC 3Mt0RUZn'@}%;6Tufe~ 8Cє9l2  j"F㬹A#$ý~i5pT; (#/fꖇnXm4Eq>6S.;MaNvg1a#Sّi L,ְma4֥2U-1`Ӓlq:8j$DǍC}Xk'@ܩu~ `S2633ߛkaP\& : P!I LFO> 1Sx ] wT~/#˱oq^ eҐE2KM-rǾޒM:Y`n?{Vo@]B>]wh 7"]<$qJ0L1$lƯ *H&JZy=DZ>Rf4߯7dS$Ş K0ҡ( nA)sReգ:dVcꗬ'ކƾvY()A޳̈́ճֳBR8:A8ROE9#|  8|@ 2B^O;ê܊x^{=YPʸ%FOs%>4wM?X|I_;=)ObRkDW7C+a"{T&:UX8) o9;%ɧⱰ W.-"|epۦsH79捧jLcj]V#W8%yhÚ)MkeP*p4tݹ Cxw%Fd|f`xRoBH`~3D#KM1>`%"L-6zu> .«է€fDBCQ.h/‡Ur / -Gx^U{ݛK L\M)(81OAYV֏F-'rPZv/tat Ege_r !L-r }/+=0co\zj}rL2pѲьo0,';H5T|4pt"1o^%ݯ'N~S eO iK9-|o!8~Cb)/~?30|7»5Uf pWrƀA Fs}x+|a+qw>~1^G?ŕz3vLCƦsFZv= 6٘s`K0>epw*ڏ#(a XՁ&\9 ChaVS d "[n.f226zPKTe[2;wmk=mXKoHx8BfiRYX(9<ʑֳm崺e3^=Y)f V讑cG\PWS˜_jO^  h(\R'M6$e5eN*,Ak-f2@S65lFڕV<d]oĘ7֜V&v10Ȕ'ft1xc5}L’|Z mUs,[-{\8Z"D$pQV6~Ԣ8MEۡ;xZhTȚsbJr9n.][Pe?%=A˙! hеh 4hYGF/GV#"26W ccaS@CAHvoju׃xr` !gq`(ӎ9ft6`*(5G7N r4EHt x%^l)heX<*knw-O9%buQfƍ,M"{,љG^՝My>p0X y DWtm;,-T5'a^sa/l3JQ:7&f@Ip 3sgTp#JM̊7)C׼EKva=}#_`4煾@ jNl(8'nvt– q > o9Fӵ)/ĔR5~A)Z=˺_9{QaX+L\ԳɯȺ&Bi%y~r]<6;LjhmC'xV+^%|*j); |p߿%N 2CrX7Ѫ ށdq qɏZnns~N$Iy"h~d/eRH`yV6)^lxg6Ѹ.qŦ~@[: ge4ZTbƸld|Y=q[ZR0i-=gэGr18yTi[=tF>zLEBG]EJ&&$n PJ*de: ' \x3;Q;o\P SX!no6M PniϴVh̢>}+JiIf'(fJ>fch>7t&4&s|t \EqmAֹтhj*VЖfȂ4>{YRZ;0ZDuQEL[N%xhٽj< [S5{15 ` :Sؕ?5<5-W@汣_OzQr]% O ;MGU('[[Xٰ<6t^R7gq5.ge{ƈBBą\ӠkM} ;~"00v16{F|e-}2w~uٽ|Q49[`Ja~IxmKw *9&V# `ɯ*KOF6x쇢wC<93qۭ;^7 a:)ـ\2-IgȤ9"FYdb3g&PcC[Yg n;ΠҜ:s#M(|;F0zYڱL+4]{eڨ&Li8ҘcAƱV|94l|)?x>=+J}Mh+* Ⱦw(P r_PU'$I ݌rH?U)v P^N]~XUI6454ӴV2 $P @R5 |^@k҅ZwÎ;CLOd`%V.ױ?}GwBPkdOcw|1(B$q , KS1Y|6yZ.>W3E 9ǿ> w0iE 9}{y' g<(ޣĵbePk'o ABR/`i**)ɐ V 5j_T4"ӜY !c7v`RPXS#)q(@K[|Z D3~A@ãt/dc_)Od΄UQր6H9#>TDI:3D|%{u`tf 輶s[cc& ژ.ѿ>vdj؃6]'TOzcSuLsVID5{b@(H'c-N2VLC'Ј lUiy57vO tv<{ 4aSq oN;HX/DHSL2agAUJ=K'EXy;#1[mߖp"aG5-clwF+p-#3Pu1g~'  ^4Oje +MeeRO ]HiSvb2[bW5zy}w`ԧ^ p[ ^O8B=nud$3T&sZe(,/AoG UBǓޘ5=?бp_HĪ=N';Ey4euZncwgI=eT@pG S>i]tBC#MM8B$|`^IRy?D0|^@ `>[#(:JK*>O8ރ*qe0-ڎA{Z-Ʊh#% paZTV4P^7 dWB+Pi8g7|Ya_H)S4X;9[Wf1$F!(C>xl mSo[viF}C%Db1cPej,yjƩl@y8t `dׁXf"Y]G40Ī5^p(WkRMv߸ 4wmNI\"ge8ėjtvh0oC(,Zubih1', ܫ@Qs.g= pu;1vc_yo[u$5X]Z/Eր-84ek1>j)ݻȗ7zqweOKh*picpzY_aQZo9^g|&/s틺HgܗBmv"S)}̼6l& XlƪL$JE7y<ԆZ`sK,!wu2>嗐,=mthg "}L JrjX}Vba7 -*[{%OqGB XLyJ3H/f. ED+gnn`V=\"w%٦evUٝ rA>iz΋) ѽh7Pl 07~-U0˘Ef^'p뱧u+h-Zjz&qv$Go \4C+cF>*TQtȟR=yS=7x|j|RVX`*<,F,^':YQ#Ze-F0 e,ڙrGoz_rҾc]<>N^): rou/sbnJ7^ɈyyسG%(j͛odbTռIƣ8"\{r䪐Ƴ씣˓Ҧx>4)9i5`; .4 }q(c#Fȟ}cg/Kz. #Nq>z=W .~jQױMܾ@97հZ ˾R'G㷉\@gh K[j-d;!O$kPOr}PjixzߗcŒ1b;sѐ9?P[(ż\jq$V5;\z/zr/!?QEP(夢(ށiiˆEn佉 "GH}.#ThL{6bm~x]ŇR1m* yмv-+pDw78C4ixP'NᠭZIV%ƶ$]ٱ=չg–\:TrIȱI`9v[ T=V+̖LC\טedlU!n/,r|Au1 R|pjvi>M!I*yU*\ͻ&ynF?߸a\F0m]y}I~{O ,P[%˂bj%@+]&v |u`˼8zC,1M, ^dO$1>r%Kb%Oyl#iT_UZF9#I&М~rW}0| b/Ay@:W'mY"L[!>lp_sA@e@ZNZݑx=W(mJL")]~4 h| Mt6;G<]Ak}OkWeh3]_XzSFgK+a/?]pH}nGQX#ߘ&G,+_ [&5$8S"o6* lx(mK@d$ެCsA;yjcRQ]7/Is$!ƫ˼>?ϲ619u)Jp'k(%TCaSD!lDA:oO ^D$unɎ٧nI9OeR4X`|˳x*wSgDoe ޥY*UE e4q<7i~ _VDZI3UT 6\ZL˔uNR[6V}20-fw5Х]e"ffj1Ywp{!͕xהMY2dB) ^Egr1HVe+9d?nˌDgz/ݧ k?Xagޘd) QvkFP *&Jjx Iw*K#vB0|7fq %v` ҖEL ?D]{II@q"jJmCI=8 aIPe_(^hfd;bS"8-m hMv=*$fe3楘T-W9@.&A(u51s4.%zg)0n3!HƇ֫lcLz߁x( ۼA/JtPwM,At3p'd,ӟ-DmIιou:,DdPy]!r ZMg@RtFUV}1cOZVneH(7M1L/Ky)nZei\?;n%N<^YmkGk%W+!vk>U##l%iwB=/;]y22oVWУ,Eu[(]Nڃf6BE>FR)BtxgCOÏpb *s9~=z XpF>#8zQMĹ#˯)X2M'"Ƈ~/\ ~B Ƞqk؈ 2a}DiY5cHg:x Ov01k4.\FƸ~MԒ!ވ:l5<:G̔:%`]X3~8{pS7A59pnsA™w.>yaFLʮ¨kCƐYV-e*V8 bg̻z]s:݈rI #ȴXJ'[I'ەj]ӊr#]e?Tx_^6n&*BJ!lcE8{ۦ^&Vl&V)3Bw-Ncr-͸- tCYKhЈT8xk2Sf VZȣRꂵN\ iL!TL)3@=5ĥJ`.Ek:I'pEL>J#[h}5+kGHXwfĀ9e%lrrT-vhf,ҋ 73)Ub{EOoQK?u-he^/r;,S, bS"|zk-Fndfono:#zO66"Ьح;,8( Qz{˰]xa~*1ȓT a$H+ThlFoďE7WQӸPr _ROvign#9vv uZjoh@YzfNx\wz/T l6K1oP:3".j ir~ʕ.Ąp`TfQh,uP*:A9Y)C't2C,Z%%UU _F {@zl]څ3evʰ7\ef8v"So+v*OT`I"8Y.P#|uBY* 0g; 8 Aσ+cH#3)sq5KDb藳t`'>vU䝨+3ɀ, G{*X_H4}V8bt5괭򓿁`&v]<ƤI?X]g12 k`U?cg4R*SEziZ`,*.Cbk%?Ev&z0i (+"0MM%Rt3fjRGمTw1;D$ih0~6p 1`!SCM-弆H ZF*6[pa{VkR[Ibg=]|в+ZNiC+= JQVo4,m&]z>Ÿ[NB_H %~?#Y裎8 %cVǏьƀ tE7Ig"elOfjۊd#6DW)bןTf^I74,u3(+o)K3{唜X}xT>.{I[nT OF?9,x-Ab[X/Tfbmyjwc2WMl dXg0^Zo+NqQjT/8P|2] 9Cq'(Yiǹ,P^9+R\Ґ򊖉k>j>۹d 5k;<pC{쫜:͵d}׳~%'0!fPE-bӧcE-u q"(!O8cMEHݧ8 #Td*`VyL?/åȹc~g CGo|Tg-;:΢BT=\,UՀ{ꝏ[\vDRuf["]'zP⦛jzde;&bf,]Xg~"Gpփ+88rJNl·Ջw`e@Aڜqzoc]!&I'ƅl,G~gYs 穅{u ٴsDkY&XACO"J;F\+@JΡxubh3W;q;dO߲DR|hģP |Qئ jw53}N8}d"YYB,qVPfk>"@ ``H%WfŝK12Ov]Ѷ=Y._ h! u]H<+&`^X3&LRER]G$؆_h\0lUy&;HLεC_#]d,&\ÉRZJ-`&JcA)VLDvh&ucv)$TLt[ Vx-%ՄE@DbU [0r*vi8~ЅD3PvӱY!Xa@үJ *Z9nB@l/dGd~>yTa'D tC|Qm<7s=X`N`ApoW."_Z8oaU;4-INvNǼ De(Ch~{|BxN+>c(`BdN< wGƑJKR C.{XETWƈO\Hz. v䏾NR'2e5x.~Ge>ac}b+9r sb!~1ܨ+Fb厑P`z/=e2;5B/;1 *zp!'j wW8ۄw&s6E1-͏x[Cb)XiM&-r0Uz}2^Ut:08oJrEj)J˃MA@ċn=)4ttYT,V^V\=MLqKk3ZLv[ϩOgX:*?V$xl QZ"ߢ'c> ?yքImsZeKO'8'q! $DVo,Jǚ$3J9!W}?j󻥾a&-M#%g%G`-&D K')˔,թ$9À|ɩ凜1 *:@ c*-],ܹQtTCh2{ni`!}sΖovLn2$C%(_Rjl>nXlqN(EoJ=9,޶Q2i(k<[ɭ#JyA H!_j֫ )uw &ѽ֩8IBYK(~zյWCPoEO6duzWpRB=Qey؛EAf#Z~ߊk4$ɾ=7>'/mm8t̋IJ %N1@o$ ɪA)+R'fIEZ:*^ Lݔ*i,Hn U'mھ:cfOW [r_;q`.}bD4 ᦅR-y{'TK;!M ; ͐1e64qvm(&4~BfPʸkXX6h!922,0N#thִZmHzh^`۹ oBEQ2VjG` ­Kwyio`V[LS@q8KwUyʉs@u5~*aS(gݩ،Y=D )9 T3 ة>5z3zh'O=܆oI+ )&gM8r6XS- vy 6<`?Kšܨe~{e'h>(&td0^EBGhZ. $I;S{dJ# .`%Z`iE'ce٪)u۠ yiP^c,ˢ0w8}z dH5";%m 6Éc8RTdnIS{iN`-abe{eZ\1qw\JG-?c#i(5ԢBT1`Qѽ-*g2t@kCnP!̫l¯9ߝ|>& 2/@YJYXɮa8(M8/mY,ΎcDIKTPOFEW4ShBl9%ȡ .`L=TF-- #js9iu28P:Я\F`ϣNHO0i}9wT">LRDs4r<fdѤ.Z)iԥ2gD1 IA]ܸ31GBVOb)\v"loQރ}DF)82pՃYbVC7`Ft@%)~P+dTtCp5 m[6>Q3㾤:x/(œPvkpZLw2fYJOhCq}%'ld=e^4o/ 4G j+ JZdԗH)6}5r@|*:#S,]+{3v0Яk"Lz]#ySyXBkeaqzToōfR2p=uC \ŴVȚ'?*^ۃu%8r0-zzٴzWx[z9UUA!w"qM,eiFN昸V:sX6J%ڠ2cMI C?Qy ͉Iwсbc}0ј7QZ{d&NzQ͒uC:N`,7+I W0ѱ35\xwqpZX;+vX0@dѦvo&j7%;&">5dU}(c| )@,xAF\^=&4 ƚT*>;]jHT$oܶȠ|*'|e ]F=qZV>vR[0--^5L{ 'ĸe30,fPNP=yyWF/D~Cx܉U:|$_)ZEqGET͝aB'umNFaFIch# /ɛ%Oڋ=jYoDV{e,C#!WO#/eq d_@V>iüQ/⳧8vo/5T1] [ǿ9BCrŲ;:32$#t :M-}YLΏhq0]5L쭔l5z* 0o`진b*=N]Ha7,\LN(xfaXkByեZ':SҎc^0~\'<6, T}j'ւzn6 LU8e*takg?-|`[9gJ0ntmCaj(PEK pLY,Ҁ\ s֌KY_.1?5FOW~x\d dSh<Ecu޸VUjB;n%p2ĕ gUTmz%΍O:6 E2 qsӏh+ ) @btt/_">= 31Y9r/F0^L& DVCv>}qkbmD}/\8kpTQأI' oPy&K#e%bBW{-!nmR:nݧ[i1JuvBghZhw*ݤ㬑 t>aplYgtl[la#P;|`]*?(U?V1dBܐHPV9 @H|f,+(FhrVfp5u:.Qd{0O?asiO2F 7|:.mFx[QW$XB-ϓi-QWLÔEApiUOwM4޺ a??bkZ!],JjwSO4l-xv7TA>fbOCP'ڴ~_˕ܕu49--`[_Z]s 7nD':.L04yg Obh.z&]x~u#ϔPLq$ke{M=6 P6xy/4ct=lf㎜m%5}RRIv1U)@@./"&onYN9s(F2S=½E*q,O@ klmKkU;*kjߔ<$|$Q^3My!V&/^͞^XR A_$PTL㒹z ?/d=MޢA_ln ~rW%NCb_)'gRBXIauqGVӊ_q=g1KKKx p ܗ iM;.PŖD/ːLρ0ŮF-z0]n*"-W \*_{)I,xZʼwhiUm:THJ_#l"D@7 Y-nCf)$<ldbn| Rcb)PgN=椮)_ %QKa oiGԖ~g/,Yc^5`r#,lx0}y8o뫵$L|jT'6g-G"4!.[kU:־".0NPoV^!&k۪ڶt#%1X[ \%~ua"=[p5xwd[c9wWhhɿQְf*TҐdhxQec>D0YXGxD7kR穎5f~[۰FHCi$pT.\L^L?ǚ?rKeU)d&5[KQ'`i憔|K`f&dqƠ#U xÖ^_O!^}>y㐨pzXȁ}ep96"<W |hes"[T|px Q_=璏dɤ~lm,<^$`[?~_Չ:!yOG#b6>ӄv k"yGվi.m3j 2.Y.X#+gc}G!3*+ Cժ3;$e^uS*9f "Vp ǻL+TalfaB;u<xI*CBm 'G+sǣHwA~ ;R~v2o㙓/۽ZsrDgGiUL ;Ŵ49ݤ ChFp2r Cx @y5mV $E・B}\!29J6# kx!!8-x P>q񦈥`=OR5;%׻ 8Ekpauf? =H —s=g^Q'l[@#5@U@ Vǩ?#fُeڜE ¸Kە-hISps̱5xZ@$}ԹħjԠowM!(mqo"֮+fN-0 7ZAY#ae@T POs 2hv֫gw9N(aO[׶J7j)d[0jAxvF8L@)aAp2ki6t\*h}Z#~]xKqqM9Qv&珫ny lN wBa gBwh1 zNV;a%}+<^BѵԈt]d[4&(π۹`t_'2 8jra&UwKO&sz9ʻt4Q$Z<qdeUwt e< KN ֫k4#@_nKdwnm\}%^)HI7Ue o}&n qH9l<%:Ǡ^. Ĝ}2bSMC\KA&-MpF%%W{:rd$:C't!q7;t#!|QޕsCKߌp$JYP7#pͬŧfr^T.mZaY s}}5[$\pty@ey]jEijB0 %2'SKp0{)xUJK#8dkK|M?pf"x%A5 c{Cȵ rGֵͱ '2[ :i'8Pm,z3.eVk$P>JqY_0B^|c`)0Dj\4ʟR$W.6cأ}̆r[S}eMsO'eTj(HB-BlA2ϜѧmG]ЧRH * T;uqn_<4=,t$E"y%g9Wٚ_'35`#-s`;fQլkH%1zU;8SRcTreD=_OҟnEK\]kd>c\A "5x| ? &jm wx2|=@B>bҖ"7Q肴 Z˟]-*EjWVw-liǢj7|=4Cs?*gǹ4ũ7_Ok񻕖pxJO{ٳA ws " q)}Nr0KN@;klzׄ&Вܣ޸e*߇QFnZ&Y̽ Zllu 4nfY2sEN&=梜 (~$lɳic[`TӨ3x_ϞqYtC+7ή޷M`-CTtVOFWPt[(R'g0&Qz:z^%cDyp0C)Ϭg{@m-}`JtIۈF70P7e?[-*P{?П)-e],/`b_0`OHEs>vb C OĶ]=SncW"gdv/8Y R*_5D2:lu< !yN3a3\,gsFmsAžJiҿ2W _{<4 J9yPQ/ުͷE`8gĈc,k4ξ׿V^@Nm `msc E#MdTȴ3BG-t.I8H$z== Z',Jg(߁'k*9YYSFmeԈ[w pL:F,)KG&z'U<ۚOx-@]q#ΉxBU.3D_53j42{s{"SL/2)LV̲ͲHxĒk3VkhdzCNKZVʐr5jRiYf|28X;g9H^r^Sdp ,8\Tht՛͚DxWp5LO|ss塍ٶEkf,HmŜJ")]08><.F r^PuFg_2ŶȌTkgU柼{($j!XGltQy˷S$ ku 7K\4:iӸNf#+LrJ7i%o$ٚXWjZj0:7 ܱ v(LQ3 f='(쳬K \wL e4rͯ)Zb&Wvn+g{`N-} rn߳?!Q!z_M.}ǒDx.)%ӖVW48 ~p"^?lNI|U;':t@_I|)ʜR;kuqQFvbł"h72lAO1 i2гݘ4|?,߿f'L`\_/TIz!MIܮs2(`p烮S]: 9"'XMÌ]4>05îiȐ0fc O‡گS9e}'y)GyUU{|%n]M$%Z4wosjS# {.mG~G.W;? j QP|e{'(:+3 \M"v#v^2e`b`\c迍Bbxȅ~( {U0~$^8 TtT~zv)ǛqBBr;KJ0~OA{b*i1ys v @iȴ#d3%|`?Dqd+/?(͌\MsrV@rZgw\yl"= 2`3GVqHNC~40̬so|&gPr;vl2?CKgJp;i Thޠ񨠞0*,Y@cB77~b9eX8L 9œcT =%f oIP>uD]0A%j|ASJ t #LMv T dABOW \trfLIXOIiîPBޒ1rWČi b@fAR[(q*>Q?z:+a.LE921':/ bC,fɦ'7n/%i=Gt[ *c€$9sRVsD]ѥ$ȷuw)b +Z^S9TE%z\´∴aO!#T HDc}ّX6p1:y/FTBbϞZV~EON6ZK8g#4pK,hLB r/w(l t tx_:?: {r-I:FlOw>'F8e-P"ItMce7ÇJKٺ먮l/MYaXp+3k6c ylC/7s* {B .fc{5b}H,[] o }!A'gj>%OewS@҆c $s;72;vO._LDXt< ?ESe[i]fW̹e`KL/`ދvT;h:#RR=)@F/gvDZG8E sd)8yLN%D p3NesɈNqB|,&` Hh$r#}wNnU4 a`Nf54XanjNH! 9;&rrxO ^ /R4lۇ ,a-<39͛ĮQCWx6z'wҚ){C/G*`&mfN)H) d>/2A8BLbꄳP#yg翺J m; Y}S{k9шH +ɂ溾^q;~e.d\fk&>tig$]NPo?d&j|5k[u\sWXxyl7Y$8H&"oR"%[ROIԒ֒cD#{ȵNj2VM}<4]vTeÞM!+Q{<]J0 >POP! ,֖>`vZ9 ؍ƓC݊gDxY1go[2J*#J=g1CʲP) ':YTtc<ځs'yg1~7!ә CsZر&R11h֘LsP 6^A̐!W)(-g @[o H7(S@寞"$pV8 6*K-q{ ) -mur$QS,7.kZI*a=m $/X]!Yu=ڥx=k{.KtۃjM$*s>'I$k˅#Ru*fxT!-nAi/gR듂2 N u؉!cQ>Zmg[Ic9%ּE4Y,HLlLoqc1?Z͉:4Tqpn^ W&t9w8l8t!8:t 1F y= ݢ'N,F&E95BW9yoVgw`ixԩ =g_ێ?nl>YϾ#ŰA Oq}8/\_$XZơ nEk jb=FȈ֣Sg jJW$qLpF$U+3_̼m={ *c8.!(!ғ7X`[6$#.:*,& _+Mԕp*v]EeQTR )}()d ܲ zgVFi4Rq¶7 ShhY1 @U$^b{)C( [ i+&d݆}ڜcfO%m栙>DcͻXӐIA |xT5V.J0:R F̽O31I/5 1\ȽQ(gARī< ?:|{qx4l9i^c9TkxG&qw'Y[AVv 9~Մ>-BNBX(cabĻσ;m(]H R`w",v#R̳+{ ,,#EJ΁N$I(Q{n,J#r̕:A5zq|a:[m;'1Rԏ%oəi{ ]3 j+ONp,~.>tP&zp}yDIew?2fi`\hb^$dV7ڝ@njqk'kT|:"An 7:];W@n;k)$zdsMx}=5(FF QiZ~f׶MPV5;n:}[+qņg:M+_}$q;­oBx3i:[glm4tZDP, X] jk^i{r<`FJܹw *nTF/Vmm'<^\jul8XY>Zͅ0N(M2cU`*Sh k̀n&_H7Wf,J|xYo }k2s &BԆq|v/lथ>C]eDͫ{\%`u ,Hq_z+"QR%t(Z(F=P$  OkNYRY,W3fb7 !c%H|Bۛ>H* 9YG"`q{ʋLy/9"xҚ_ÜebɗLڦZ]@Y^bKJ*/YmyGkn%p+ĝWZƳ/eHDC3lfE_>HU7{Xa?]د%?TQIn$q!YἈgj*j*^i'J2!zcz^5vSmB·Anm(Ndѳ,֋G[HKZMF؏gW(60%Jw `Os>U%{]%`. *·,H,ṿ!  r|s\4U?=G郄ۼ"R@tAP@D &KUMSrP$Iב{sG Jއm|q#2?qBMWfU ]\\&všWe:EXXo4 `f$OjTd՜%1]o?|\|e-}J/`dl͑2=a/6_t?5nHn MT&!~ ştn=,TU=[5> 3_L [Wl~׸DOh(5boHWxJ,F6RD!BؕR7F/{iN/Jk2 K`jruѣ}6T?^@4Ǽʳ\(ys/n|Ԛt&LG Kj*A&whNU4GH"q4o OD/x>ˋ|'L>c=kO&ZKmҥya,a8l, :o0@mvS fp=\crE4ܪ|Tw=ZѺxǻYk2v_gv9 [7D81Ñ eGS^ n=C tfy2Tm* 9AuCU2+HxY,% v40׻)ۉgKh.%& C$dn)<CAZ kF7ʏ|1 NBW,$q)h],w{ƛgDe QYх?YC{aE(+Ŧ-|?9M@%EާRxO^Tj&Tt T|ҩQ,>PǖZ%g~*iWϤ3wp\`/;QWYzGDd%9}w=F/qRC fVoπ Hb z l~h\Wp;k0`bDE%AN~Gi II29 SvSNo>7R#0"J:h_Vh$xy=žP F"`xC~T +ޅXM$J2X:ԙ,AT*5F ss5W"Y|w^uq̲8l8xW6XCQ c߃Ci4P+-fua 1zkD316P.nm^CU ֖Ls<>߼=qqD#m,htAЖScM9)i/R[}Cq=[ 6Oxc)\GR -4i(nF, ^װݒ_к}` STl6F/!73HLI[:h:i q Q6R#AY⬪ןn˔, WQeow9C+NΨcpH={G^ӷ.Jtf9$zB׻!+}QLB;yfBA q7 $FNBpK.‹YfiЩF/@H-%d ^+$ten/|;x+yTnⰣs^ݵ8C>;'UfWCt|Nw3[ ImϬCZDҒ|e\aKPoq+c8NZqÄW;?rw ? @JRd2V%ıM80pº-$T IͿ*-Z&1OҝլPy翍X$2'pbϫkeUOEq$ Ulqc#RQ-p)[wZ!:{׋۾ҠG 6Z#pTO|S(TAr ]W㣞X@F#yԣr(*bUIB ԍt{\R[S8Bb^YjIr4 Iyz:E7{++yLrvzX~-ipv,+#1#׫Ypo_g} <.?7ڻݶJQ"ަ|Ļp5ukK-ZD >&_:LIF³iHطiR)h.sll` ל{a{(z4A &jw]>P>=`hρr ;UY|fsU'U]1;su"-\g0{A3ݜk#!x+iJCǎw+|Y9'O/Έi곦!zv~h&OT3d[-0DAһnciZS3 PZ/c$hYŽH^7A2Y n` hH\.~>֐\SVi].e84 :O囸u_X#WzX]Kz/غj8| qj*_J cC* ydLyOG/g! ^wڱ.m%א ':+}8}|c?Īda?Ƃ P  mh>;yAV)Oߦ"OՆR]P}%1YAǶP5BkO0/V;/*䗡"02g-ج.Oi);? R? yh;NØ* Cj?s/xiRo=6LΉPZVb"•jUDyBb\[GGNֽ{R[-eRA:?pɨ;fs> n3T2n<͹a0ɝ~?}+xAM \{=[SyxUoQ\Sې–` .ʓ*,$d"z_] @PYB̂Ux/A \ki!WqlN4#Iܛ{y:PaAY#DzgL5\&QdaRSy d]B:c)?V_|ĘA!ОG> hU64νf=@@ޭe.ѡ{*`'ӰWcAzDY}ͰTݜZ˝";*yv]lXd^'nT0ڋC |6++(feO,U(2aAzg9LhOOpGx4&qdzi*e}>@E! c/%‡]54LЦ;y~OL[ X‰ aC Z3JMoz8 GSs|-ReDI]%WBy-1,)5 o?%*;lܺw`_P f-C2E<(N/u 6axBI ᘷ?Lj!v PBXϋPm*ENa<F߫MS *e&/>0uWt7#ֱXI7l.Y,ʶgǙbUI,Q.y{PePaqw93U2I`8Ͼ1³ulT+a^U Ӛ)8=;GpbUgaκ-R##$fO0om5bt=*9aT M\R4!wo:. Y] fIwCZܯ.@ ae-$%gz%Ym|r x%uE#(pӲ!_hf*ff-~Kl\ sZ !"3V.Un"w̹/Wyuat8kTk$ɼ^-tz`# BVPгڹoJEgR ]ues^UHhÉ~Nvߪl=:;AqU+Sc;$NZ~M` |Z\8?W)g˗H Kd&Eط㭏'0sm:@K?ϟ1%e~mޫ"oU2_`W3SMBVK'djI9 sdfӃ X8#St`jܱ +5/h א<2`5r,ncϔ |47 A#꯯UG&: oOn`06s@ZQ_BOgo]Jw؅Q濈fE1Fq+ ټhU F(#1ް,@+vsiYV1,6Rfa"cϓM.$Ͼrw +Wpڑ ;͎j/;Cc8ҿ +:FXi'=&qH zsۨ XA4MI5e#,)OG슸NEc|8XjÉdẄ́_MRɁnB0vzIÕT@ȘUqmJV?]]mgb͟?gZ'Zx.ʝ(Av%h4Scc.Il@c mjmK~Y/CAZ%ͨ#H b r1> YUƀndSD T#}I1cqJ>.i(iEqJy{0N u3P@"T`';EoK.YVCl_bq!g 3>1ebCOg F8rU6AH=O['lH_BC8&84ɧljc2}l&]uM!EiC:k9R ;W52:uGx B۲ &.V|@QUꬑ앋|**J45bM&q[ֹmW&ȏtoɒ 0܋0cNt.iXU7Iv5z~|7S-yecI1Kcd57x[udD,IyNӝtc+Y`g0%Rrv([v?ł˹ :vɹ]ԝUd'>zU~; 轝zVr3E:Eqǒ=O.%q"TpTA{0.Rmaɩ`̍-Нhm^^)hџO{5s L`hv{9~aT#)bޭYyf@zuFSp"*;O^]]:|n Cru>fY Az'z0`,YX lBk^!bj >ՄY7s5<%qxRο]z&7xUHTuK̈́-t,g6epWcWMIxy񱵽 jj#=pLHlN; H G0i;"0b&'l,RSx]~9:YsCxifWqPӲ4_93vf/kAN7tSɗF6}i,$6|*)cjz)^; |N[PU}=/&5DAC cCĺ$&2V6OL,y$AQj;86Ul|$%)5_{Ys{LP|ΠR1QfCqDbG<6:twqDO[ feb =quȲ4V[99vo Jƚ_GJgoQI|h {,@O,p}E%v!&M}D]KniLm`~KbRzU_%bU٬I& l/;f GechvPjZg[u'gVz>J( H-!h*Ջ*,eI#G0$zۯT^@\YSMt2I#U3hO,^KYι+)v{(H7)1rضѿ,wLRxbYDBޯ19z LBse4`R.J3lR`7 ۓBq5 4e)ʣΓ?!_ ,#dXnghwϱʬ\ bFKjY|A,!KxoH,nl\&).q[T\| >OLS4|>3@/?8oᵂԲny3Fv6.ܕǸwXaь]}h2/W^<GwruW :[t1I7tQK}`ۿ+rЈӟ]1!N;ERp!wS3 r~ 8&馨or.0+]>@ɩ@OR[eYܶm䝹=Z*n|^+2IM#6F|XҢ"4d`n'ҳ#"Ŵ8LLR0k g/3 *'؞}fj]loZl1jX )ăvXnP)LѵlTuاj(һ" ʺOAHepcqѐ aksIMM /5K٨ :|7wqjw͛m+x3uL=3-sD;6Vp{wOajVkb{|X92]S!p6*,ԹOf^Iޱ3:L[ 9 #ՉG1t=!Kӆ *Mq1^J/ ރI 8PXy UTPk:yv;<L4סsѿp-CnՖM?PB3]*q!lD{``4j?:<7IM0l^%=g[Yd9]~\ $'~\yWVMjt&)7:R4Y.V}ig*ŋWkr? Hn0$jeeO?m L2B-Qq|Cݧ,ig8d0إ9ՀPke~oֱb q\3=pLDs=F'/,̌{H@A~1,2 nޤd}.Fp%0Vv?ޜ&Uwfmlfݼ{_ I-'`qau^Y|CpC_tb,TH|Anq ˖YYB{a#?RH:]z{^?Wa^`_U-5j!69#łcc7Z2vg:Sp[w0fnQ@K:g Ew K_!dpЎCjci)v]mR~9U)n]p ݊EMxK~|n垓3dn1d_h//^ T0܀>!v?]rwF"H,k)Hױ"$SQA}R; e\u[m~ N&ӥ˦ hɻu ֟tIxDy䜞W!JA#s)6q^yy5'bs3`c5cZ6.U$BnoAD ̝M1A"NOn[)ްTT X4,HEơjOT|et5QRe5JŐweat ڍޫoHۢWSNȩv2~,PnBn V; A^:{xK? ᚬ7 8|*T'B ej kL1mX\Z3$a=Ew'}‥E1s"vxmJGl䔈UO>'Sy7: ']<_)=Zj k2lL ׹S+3D) yn,HZxb&=L~V u~E$_7?Q%~޼8(*=qғd.\4Ih)b"N설PMaGꩡP/}Y}o/}qB`,HTmfe /ң*Z.zPf, E*dfp% Jr_د45YE܇jخUېi| ipRXLj)xUDp+a:M@rUwX9_IWO~~EPw"`X4r {mş/'3giTTbՁ'ufjʔ T{#*.R%~3pä0^@.sx& 5aqq\)ͣKCXх@GHmuOKq^~Jk[O*v[b|!'R}Sڨ"b۰ Ug'i) {djХve98 i;r6K]>\ϑ-۰o'{LB%M㗄IQ(@+)ꪞx]6m@7+*׵^A#)x? Ll<:tTR&5cYD/zU=0'+r}>?w1_N?.Iy$"8Msճ@`h* ՎFe h)`0*U#E%/eZvMATgfJ6a]'᫒̗&ƣ/ɯ s˻Ʌlvg;v!*ȢQzcDm QT_ h:ibm VdVqF~–?S+ f~C;{3DFSĕȌ #`}ZQf% 7>_;Dv0`^[\Cecty#$O@q6*h}Xv%ؼyP3_"u9s|1J A ,TQB\a(L9F13gENa G4Cu޴AZֺ$`c; F_DVVwW1rJj?7F.=F24?up(Oz5 9?1:ȋ29\Yw˘s#^ZVOi< ME$jH15)JܴMJhz=OrRE)` _-κKi>olM]I@|1ngE.rOL0hMXa׸H@a5J{J;()v.*Ӥbb4ХtȪK*^g&j}:=?+3;!+R2B?mT={Be3&j t5p\a4 ?ey{V}-kM+9.+`GԶDLkfG16Zp +7u@3C| q &eRL]kOFcMÛ;3&Cs\}vb!;}X:\$!!ˡ!b51 oD_,pYtPڗhNՇ!2> u 3!vܟFuʴ"lszkD+qpq h-؞y|p>S'c,JW IYЖeaCu { pME|΁͡I"UXCɪ#_Q]waqWȆ/Y"!p.B0fP*,H-X pH] 檳Ic!sE/,Sݵzt)Smn&cd!qLct,NMs F/Rbv9҆JEvL[6AF  _[jf^6P"a5l!!vG~;v鏦ްǁ߶ז#_/޽>i08u;GH[S$p Y0H Yu֏|mmm8oO] F](ڪ|S3夭(Uq%6pp)k+Y.*_ כ+>^Y_< ԑb(d,Վl|W{HS ;2q7\HΣ7~[,B1. ݷVbl0n, DȿQ%Rԋ%[]MY #Thg'^1EGHZ$G) ʯfBN?UPF{4 +F0i~g:gi:XLфJ=z(&oxuWiP>Y*6S^-&>5D^ C{xٶyX+y|@ Uj5ڪ*udk{ٙg P]H]B^i,L0o_GwJ ?^`9(GI /F3<4\L.i E n-ʩs({8 ;@T9S-&!pNEE_ք @W)Iݞ0mCQ'1@P!EOX^2V3 W7Ƨ5o2h8!È"zm<aZv;I 8FO[DQ)GGڎY.8Q X ? @A.xů%ZƓ1\pEt$]A/fI, )g[ І::sI|l6`" ԡc˜f$Mi7 ܀R)!2 $BEz4QtIa݌tco<]ඎ nEgswNaςGIP{IrBmؐ#fyQ,me̴M)_7ꈯs#`lTנFFZLr0Vq!IȒ 3Ӹ/ $}AY%5|ZE]XwG;etװ8mf[+]ka氒O+hƔU7i/wQ6qD90i=lU"X,^ISO&Rل=PM]Qy.dwC`aJӃZVnj+ؼhąT|VK隉LóZXnrn;j|6gҬl7jCƌsL yE%-p#4USFIT>0=Yoo)*ΆL(zOEu9㳕G.OWL@G@ =hs( ^;w?Qb«Pi]ug@U:',qW@gPJϧ"zI/j6&H">J(SU;FnK%𥹕C`gaqo HXLy9ޤ7,81'M-^4W)w=%X/xlN|7k:&bFb4;6ؒ̉2+Jz:EG,οR~TTOl%bWH*)0W#[bx5w,L, k]H [}c:䆙cSKFCRatT{hDUbafjp9mU`iVNSɊT8& ğ 4 6ZWCJEe(~(~;*K@:&.-䯱:/ioYp019K[uk~SQ ͧ&,bjE7:)Xtoi .gZoE$mMSс7F`g%ʶC5?Z6(`}JԬ 7a",nsj>W4z:lVXɁh+X|^/9c秉p><)G-uhtb75T&~(q.=m%ӽ¥0$6(. g K0֠uO1 Ъm:*$CԞH1jTOp7nHmFV1 %٬?(wPX <' B[Om^>B}o2 ەrZI/KOQiSZRoM N+W+:)6ϸۮD-Y@f.90R'y·3FaD9&_,y)MJi:fp쎗aS'X/V/,Lsa=I1jw׸Wl$U^~SȄqE_9A>@2D6?, I1:- JG0W|outL,5$=(]X&40( c] jYf}5jz.6m[ݢd|P/aiTt]io:y\f8[nz*Co]LՅq0N@SDty}ɶ qV}I5^ zF$0Zqu"!ar &lymSJgIγ~0薳mC2b"ģ mpdx->42= 7Z2dzq [ltHi?!Ko;> LS{i.DR^}iBq)GQ(TY zXWy#Į>Z։l訓R*KXur1^m:ʺ yW$k͸ok=;Ե %A3tG)gչ}"e- "œ+}w=p\P #/ 9ntxa\DF{Jǻu6ة;-KdR63(A;յ uT_E| ,oͬ<&x!8Rf4޶83IW7Dɧ%;#`5ՙK'KK Um臑}0c0ʤx8g9uȐlq ݮ>MdOUEϓ7,+X(V(E6m<RlKUvFQ"Be`l|xZiDlw+p(XJS0 +W!z&lj`n1H.}o YZ*r﷒#;.BTQN삮opL Ý<;6k(m`HMOPqڍ[@E)Qc nЮ뒺pik;SA *qvқ`yAM< Ʀ&{2j6MߖмGlX9i k_=rOtviyj|Ӷр_3I-|#ɞ Y!};g SFފf S+x&\~{+Y=aڃSyƕne[U 7ղĆNd 0-fYDu9ƂhL^ӳ 0ӸVVn}gUF@Bgd%u?$Xlco INQFCBX>8k:Z˰:֋nJ SxEs7@hAr1$c I)R 58yplh]Vl6{&N YpqRM ,3?tgX o/ b hjcO,."кҐm:j,Uv~gSz0]Xё=^ 33PHE}Iş`*/PaS nRF3O|uT\iB.&xdXGV~=wbMU fE!N+A-{gvSŤV7S g&f9X < v}9Qdo(,hzA!HzT9ǮpGDK|͐8At~pr\QEy-z"1 *һ`)WF8~ x98˭#~ ~8#n;NE ۝D|7+ҵZ-.J$߉] ;D1n;wo?<_Q}UC#)xȯ{oi"6QgF*cvݑm^Tk@FіS趷5K"ڑRk7Т?1>e3S6`h[b EJA+^8U!qǶ,Ga#됏t~TϠ%^SSVC)‰Mbr0Z*b!·6H*JCwbPFcNy+vriۅke: L')/kYf&lM舳l Aw}!T|K)cZ# 5–(-$(KæIS6l{;{ [Yz?؜$G50 Nh u-; :r*B3f^( ^Kz`i5qS|$!U(>j\jhĀotZQM ,b?rK)l3Dڜ}uz=ނ 8$*Y1gPxoCc"'W %s6.:Lb1(AxfZerrWjAqNtᝌe3Ixudքmf#+{b.-qՎj<"W(kZՅq"5&qU۫]S R뼼|'o9F|LobM1zh?x,م .Ѷ گ  WO/.x6/S ;B@= v6/aY)=<'M3>Ӊ y)O##(׭Itp0!ہ.ѿNrΗC3Һgsq`Y1S.«[o;`9UN*fSCx˘lBY6ЎJ4r\zz]$ z HI{ */-gAwnkC7jrT$WLQ0OW?IB;8dtcJ=Z|}v`9頰7g`s5h7hqBVaHQi_ۻPI( 1 E>xU6saV`=Ƌ'W b5Ifr-M hf&ieD~Ͱ!525sN",h2˶Z42 #,*8fJ%f=ydfs>cT(mo=vѧϗLz gu_}XnO%HP%s(v)d9f>K4Kv{SzԠq+D P[~Y5t.0׭[zӄ~-ٷ!3Wۛlh4 &_5a+]D> SZFW8kP5j5Ȣc⽝{i%LJJdu(R}bVޗ5Re=`rH)Is* #ΰ&ekt/P^{k{)~(/_(5T 06 R8tf.<`8son$ X^Q]vd&fuR9we:Q-N3({*ԕPx."Ȝg.>:WZ;AY\,;&+YGk~s(8p.vn`w"9wXPPs(y%S'v}ߐ}se=wjѳWH9JQ]xL"L٘g\Rb=f`W_4ye[#mm)d'qUŰא~jZ+/"?`T.w+' zl]WHcyTKhXˁ֬>MNko3"^(dU(ӂ^euLIDRopNSO^E=`=p Pqk-ɀ^'Gw8?^lKm%o]h]b;UeikL)ω2(q)Q!:fI%z?V=ij/΍pnnAa$ĭ_ W\fHM\(1w@z8ezt|MyᢀntMC+f";ǎk`(Ir!Ʀ깏K gg>:X+f O"|/=~"+"R.,)e[搢3<2Bā1Ӹ`MPP!nNqpc}9K T^[|N LO)X8Oh7N0FS#nZ%'A|CYӮѮW,]DDJ Ly3=QliwH\0181Q-WO9=$}u,c;A6jVbceݣZ(>G=VԄuVl[-FUDX:ħMcF3v#˝OmeS;;56.'rL4h c=p WEnvkW0]P_s,xf7q!~ =8τjNO({Zl/w3Egt& z̠qNݱOORqv̭ ÂdW@'n|Ss*vsU)"47(H]45,uvarbSILMy4,_j٪ZݤWlL6$ሿ=V07lH$$C;N [G WM}#|[rZ+e\eHE& wM_%qGS#s' CBfT^ }լAxno~0Nc8KYjT RƧ9t<^G T;M%:bmpj`Nq0rB! 냅|?l+z٪G l- \$4 VmͅCw5eSňsUh6lRe'NUTE.V#Y7u!PhI]R Mz2ͩߧ)4NӣMv)-̨݅8ˡmMjt)VHۨ8DDl*; 򺏼vmþ"Э,Z>_&,"'2W0@!ήRyseM <ĖKXBkOSA^bn ˺KǸWT7 &/0;p3QZig5_%G!]ɖZ'5}mlz3h(A /-Yp1z؄r`p_R!;x HCFBSZxG>vFk,[Ŕ7hI96cr.K/QQq8g t Ƚ14<aUSw9=J|2Cv O0BgͮM=Y!(Q\ހ NwƴaL.?f?!AD47C抰 r 0 I:WmRZPl+ rUH䈜p Lr'3j:m抉Y ݰ |Z| Vɶo 3xa'VOZ ^thy;P S Z*eRp<<)' .{GJ]oPRW47MobxiOnYڨudծ}J#>$ͲNsbYZƨdan!'lwS_ 7#Pd, (l~ʇ},)9zfk Hʦs!neP9K5[/d#"~HШDdo0}BdRs 26f@WT*wk7+Kur\ۗ@#pWs&WURv٭xhjlzRhhS䅐66$I+J@^ãOmU,Qs\3n?M*FP Ӆ,nnkWLeBNߤYЦ1ϛ舠ԩЙZ_誃Bi /uRZk[dBˡdcPG܌滶`_jG+BG l{nfdD 8~_$f^.j<[@F t'0t{Vo[#:n{y#B `)b|6U-oH.IыJ7s͝&`Eq˜9^Zd8Tč1fV y6CA)&L.t(|5}n#1DxԢ@S$X((!dw C=R3[L7C="wպuE>oE_C~bƴ]" \,= " w^ex J)d xe;4yS:EM5Q3^$xSW}ݲe GeDe$/,Č^4t /wm=ۃޏ\f$qMw4KtU%f1ڹhxch&rSɯ챟mK58j4 ?xoIΜlnYy0s&N{q`Xם$΢rr6*㺰͛a%1SփL]5GjP([u  9rkWr_K(0ĮUlUaz1loA.ߍKLF~b>تX9X~~8Inx\rt}FLny·G6}E\@|VBgdc+#&;e[$K&&Xq@RCi_ =RLJI;v!gkC~djao[%>vGmF8FlʥGTwpqƛ'l#)&.*YcPK kaNcd=3/tH݋*h\RK9 .C 8 ᭑37S|g\=aW\vhRJnQIpbոpLzSwIC?V m}?gX=3(Лq]U|榿^d'P#n=!nc.eBA1޾Ey$a,,Ū+ mtQ1A3j)K2j!Cn6u-Dh0 Ԝ6(a'tk7 s8-~@zۚ.Dj V$D h%➴>ΖUGSᨴ~ LUj>ˍcU҇c~{X|)73b84WFI5)u1ԭ0.zZj2OOtdynG?0>~F#ak4ӇQnLx†F#aH;yV32|R*YS ] $ՖOn<࿒)RJ@QOgou.?m/)L( }Z=KUܬ|S6ŷ\}i&FP_<ϤcW)i}ESp,̙:;w]nO% v <49""q#dz;+=<܆`dZG,cbJ .ј $W$abw_r]AY A&BGIܾ6³J})/*%v.JK@KͲd "4"o'F^/b[S`^[J8:h/Ҁm~iFg{Y:QYӧLl{4}$/FwaPgO[`+H5ȘD\IZfɲο\H.LJ>HRAf㩇eE+{7e=W=lfN:j'/lCd \ض낼#|3z@9U !w:hJ;=}Ḋ,⩶uz\ڨryx-3M8 + 'ogR@` j|޸{|NfSUu%<dV@9{~?q3WjaA:aS5D?[Ctugv5-K( ɺK!pSL$ڏ֏rVrUa F1tKN>dMWZPDo8$=KI#xbHwijWSp;fݯB07{ )ރ5-D<|Qmg,qCWAAga Mc#JZf,ecɨH`e>E bx6P+op^Uzeמ0GLj?V zW#SU$B$fIίS0Э'o!Xﯵg>\D/H`VnR]V,?2R .#[m-+\]ǥJXk|*eL.>s\=?5W%'-d6yEH`g>`8NǠc'RAbL'#Ⱥϴ08tY ѻW ^ʲ-E0^+9qGsJ ~JNЋ}R8wY's}CndBGs[Y;uʄߝ0Dkc1aeHɇLhNZ;;J2cn &.:Z*0w/m`M.e6Ԥ7@/SO\CHƐ35r^#;PK<%Ly/  Qy֦;1&͘xSci5VhśPrR!_IkFϸ(P$!7M#iBTsjU"$V4 1HNABT͠Jis=Zԕt"Rlt,ppx` Y3Wf^U}ݕ*,,don7̺?*$ \:8ЪM>@ܷ0-f- Ki%rd[M\e!aFhRFho;'oz$3(aDmq,]ecGW;iv7m`tk5`EB6KH/ЬՋl4hQ^',\ rL 2=磧THd5(n 9>TL?C1_dwfb Ks7Heb%{ʓpwC`bCݺ˭Guk4A5ƅuPB^: |lwXCcXzq.V%LǴE[60lnHs6zߩktSj}@B-6( V.z3*27pV '[jS4(z4d@f<A~E,O5i]&ДR/_}4iJv2VGy|O&юK}16m& Ry/Z)DF2zoä(y/jA%1yp19+sR,S'D M砈VU1(C+ܚ!U9J^U;;!  #8 !N 6px;kwK*9 btQ5)S(TJRF|]v%ߢ f%^ Dg4@kbî[>?.~س\p1BC<=^ڵZI84 ڶ鼃nY_=2A/p"h9OYR\J>!?_ps[ ]ȿ#m?MNsK.X]Rg8ށ`VwH5 0XX li ņ&ن6|4JV4lů H"^$(T5]Hq7e2sK{ -T5VQB^Uc&K?*Di^O*}R3{R7i))뛛[ H3^ui/RRzZJE#lE -8̂qq`,TOPJ^Gڶҧ n;)L ,-1z5~3 vIm D™:CnL_lf\J}TX1ay]"{N=|҆|⑩?_us.OcIfg8dll? 8cQ]F vuO-B ?4?و։c;EĊ$$OOaw:AXNX'4Cp T$l; `="=aRGՐxN>y4Hv"A@B4n eMv]XvRI$q,r3yhQmDqbO'4u.}jteQy$HY eNaywUltq' }Tm !t@) 64R)T=bTwŒ%]̆|ۍjlƀ}0$c+d/:ǩ!X)X\XZIrQ8#̤,jH %+ig6s-ͧ<,M]'.W`*Om!c7 D8O +㔱D18RJ)[ ʺ[dО@z~q~6Hc,wW*@1s8nNV]_l?:e!KeAsɺ/M cuIF?hk.# @ 5^!Y`qfD!z]=ơujɋ.4EIUCoY{Ey;9a\^*u4QPG;ZD9C&8:pAZ/߯ݧ2V6$Ix<5*dpHND1?Hw3Tq8)vԙq#Ja𪫛"`-ݸD⣮)g S2xݟRxK &Wt-DI>~ uuqm`GHi"˞tlsT-qq~#T 7J POͲ P}h%U"ߕ.A6^3- 3/舃ws&Y5hLoCз;p0֠ ըQlq- ? 8/_鈯.q;KpL佒nʼnZUp*~FV FLaDuQ-q|CGބSk~XpiNӡN+yAwE F7+mdREAl_*W#]v2bRAZ!] қ8 Â.6_d= а~ӻFgN_J6&6/*ȇ0,&vH!zWX x9C >ue%W dpr)Pk&rL+KZwEM+ Ϯ &0Ҙ ~kʬwIX^%=BPMm<]x\ي;g[.邜_R{\ć0ϗK>=pAAq1>btJ>M:#i>KvjbTs+ W 3Qvh2+}P2VoKJBw$%Zy`2t+$b޹ {{jñTF#q\R[ vk/&WB,NO5N4M+>bmiA'0z!7( N3[]t=? Q >!|qJEjX9{2њgRyӊ_̆(3 7N#ƊHRxIYF "u*mOhBg k[9"C>㥥KSx,g8ՏAI˯:-cyE,ݤb`*T1ňμ<0hs,6V᥂Vaoҝy-ܠR֎ n{a|- 6sѴ#w Or+{7yZќ:`.LJYpA$kЅ:7Kz32DlEZkB?E wG Y'O{4}PjTY{aOeir34@#yŀ\*l U?d^HtSoJLW5%0ݮ?uhԹ>vl-= >V*8L[att+D曜k?#-.ҙOꨞCzQ<]vJޏ&ohcdzEtX'B4M"E_*$y/ ,g Fs&V'ķĸp)j k C\Hk)xJUGX.Α(,AGy[Cx;_d:,"d&7|rj9a釪DMG !8bw(q~R lxFG_ӪoF $K5G <4!d]Xr?lD@ϱi _{I|[Ia~tmzCɏ~Tz39~,ȊȧjsSU..J{%0kNb `=81z&EΖUN{%-dR:&]Ԗ._,#ctBt~$qHo^3UzE*wmgD3IODWtT̠}uF{BǚD S^F^Pq1oڎ:#c+n7I0MٌS2;b'-p}[&E3˵s=R!7fm] ~ gr,X8@ ɖ ʾv|ǿ%,U.A8JWOAjcw( 15[.n$fޠŴlj 2.krTޮi5 =6FmsmIq`;hF }!h5^8)m|pnS56|"B9(;V}ɶ::~KТBoZ -($3׼x ENTRZ:Ð"aE`442x tȽeI!7J9|R^Rp//ݖS{ڏb昏Q{}L*9ᔊ$% +D{cm*dre, Yp<aIs *`i33HVGc'UhHmhW6!'kcV8|$8MWo9m7o  v إM0D * F;@#jd=&ڸ|;V[Z6o /w-K l.&Fַ#-uey 5`:㋅DcɅ" D m4DSlC`0+k3>l'ڞ'.쯋h^=$Vn&iQ~o*׺QdT!.^(sqrXS]"Z-0p>799'6 ptFACM-N8Ƃzl }*Bnm8v8ϳOOKCɅ+YN7FJDǯoBJۈ &Bi”W`M@ojƾ0vA,ή;:|'!Myy ?s1Jj=&jO+#2yaYh]V.8t0}:i#oMsqG twa<o.r7Lߌ"s@1dlzuUG_ E|o vi[H؟`c\4oS ٴna_*UwXl{D_ S6l؏~) GNU*B5޹D NgbcQ* ԅ[ [y)=ԙ650xzuy}`$8wHxϹ\.tBJuY}wh)=߷'PL":]6s-VL(+I#0sU[yP[{mkĊ Q}/p[L ݷcTދwɝ ÷J r+ FX1CXRZx#w?_HPL>K-K f*2 P^fdvKO.dZ4f!ުwch*ܳhח krp@{a&=Y4˞W fߎ5?ᡮF|xT%W4(s/IF4s tS1$MXBɮ~ӐoD6.W7:y\"Qylj9XaoO.{̸Ǹ2UJƟXmIJk2EHU_"O6Q*26q!FFP' I9[.WZ){(+r U.{u$rtX!sMkHE54KbַAN Bw&E]Փ? 2k>%?S.|qm/(_J?Sf0@:P۝hkquG;M*'Z:'f}< ̡׌okD'ˎl2bg`ҴadO'Q R7ݛU}dv!1ylb0؁A#[66K þwd>,jEpETȵI2"1DŊ+|\Vjt}&ō|lXFr[ tA}f\(h)N)Qhqch֊TKu=>8Y<-X:.+iYk}$' Ns5@<$i$鋍Yd4.[ӻI(- + ª8-<%6t5Qe,YR׮Qn3E6Uo,_!-Brˎ5ⷯDͫOR3idD~^gMj͡j"朊6rh48 Sp䪷3 ,dYϾ>;3:ң]EכflF1ƴ+++В̍a1$0s 03gf 7$D{ XRİ"æ?L\ {bO!_;P̍kl Cu⨰X+. J6|+Ua0uB0W !>Z>lu][KW@X2g }.`#|uHM3b3oE=9u@"43;WhPkv-RI;J<{d"̡ QAA24q{V3b}8v+0E uAۊ"'y N9_a;}үOp-#*#ziV]~_ pyP/F#<i,[RIJ%cvδѧM{V44)+# d5G":n?-wvU*l#8"c{num}W Cd>SJ%U(NH<NN_܎K.Ыܳu4k պȝG\%аPgnd;594R%>6P>T+𙬴1eww!|3dV2w ɷ8ghc^ܑ~ |I;`J5 TBj̩9MS6rJ"׵%])CgiKr}ޫ^e1H\&JLɳHgH|*uX ?U38"xY}oq]D',_pXIC*i_A4*ב13lX K)8276s-T:6vbWXׂ3ve"c_ j>7yQv㣈E%;,w@xk.P.ae[&E * qS;~{'QE ,{x&ϳk}̓Βfҵ8 i┃ܙa}Ld)~NUKTCĴ ='&-hu$ 0*0.щ(޻CmI!$!'-ھ)SQn@PV}?%cWS6}b.,CYkrP[CĮaӱx C@PO"fӄB$HX4&ZkEۇb^7SpF]`RJjCsSgrfH=bWk -gir`eZϹdX4׉"Qc+DQB)-Qm~X\6K119 #|׊xP m⿏:ÒNqyݬBB[8ڍH-YgsrvۋMYZc|pkǤߟF[hA2)3f`huh0GhGԯ|/^JҲ3;*JdCf9MvRmVҶ$Y\ڿLegH#}unUtِٛ12b$`<@}}SOy-Ke"^YhOH+nBHtmSRL(pނW\֧'2^ .<]k>n=_# eaڣD桧]ZUK7TTpy!ʪ!=e8`{/t.B_y;8?i|Ӟ&e O,N]G,,Qv6>mAXs[b >떌^ޛV>|ח砷K)P繵OZp-PΨ/ 49Uf0Eu`0hͅMѤFS.p }3,bA,OZOt!$*o\r<)F.8f ·HrOH Aˌea|yosP.H*N% v+H (@Ϊ[T1i6K\0Ov=0MtT#0Љu̶ΓfBC3ѹ| !!Ib}IkXcyj 6A^w?/Wt-ǥ}ho'٘Zt(}& a.?no:B;2\Y7lgC~N,5a4[I˃6L ySV|SU`υ5Ap* f!PgYLc:eC --WMұ>1Ei;8H\x,<ܗmhg̴eeβR1)A#ln:Ru9>Ɗ!c~Lv3d;3oI= }8 ӎoF^Hǭ׮6s\b B%e3*"&-3Bq2Q#5ȵ;ɉ:r1AeX͎9氡dp~"-Dp/hU/9[\(=Rbu #57 f˾Gg(Y5mjU!UJӤhB?Кt!/|=QfZő:MhӀZ)/oYqiGU"Vm7q5}m֐3|6Hhh:]7^ - !Ajg&JUQ1ơ7w]*jwAu{1n8oz;X-+\*\ݝ; BQ.PiY Y;ɜ[@4M/51P44 $ԕHq90p{LiN~whh)K2IKg_%\ {e][$#.L(%?7FW7m}. c\Y4nonJqKdA}F>+lrkůLE3<ͼzZ߇O+ ғ\unQz^.>eb#G%% 6ߔz$Î=qv=[)"Cb=v{အ(AE5p* N ag!=*Eʿ0Pp^y1TB!5 SuҮ+UAn7rC<5'+ h3V9B 5]h1d17{:rUs=WrX*# ©:AAo6uN%{bYK?bź0e%̤2)wcv70ɂJ%h _qKK~VrN!)r_DEreev3Hdyn?|ITC47J7ٸx$ 'R}KPtH(wXt\8Sb+>|P_6( 7HE?A8gXj4@o El&MMB p;)D}n sم2Ƅhz'3_I^%OU8Ÿ]t1r}0Y|w?x;k1QBfnU탴;ލ> oG:R.ދ}D9r\4kw҇Y3͘8B!rh{{<\lZ Ï2UrpamZ̰qUw{&DxՎe=1>A. y{Kbm?)]uѿ5_QX`}zWy_ ?,c}ׄXx&Səºk&i> 3ARPR S7KӌTO/v!e pe 6Pm^\;2N?o3-woZ4qb7BAmBQa";>&KdPܤg#y*E6É9 Ȫۛ ]$`y\>c~a:`DzbQ+7UHFJ߸ 3&XGh37z$*ï&JWO?19)B 0adCȘ[G^#r2D%\Fg`e!6xY GMgI{3F~ ά폗[&,?hiRTS\)|\z߯4`ww/L4E +kr++ 'gZh,n) 'K45[/( }Z\t« 1ha]U[$43g5C_6vX>2`7ڬ]u:oV8́{%BZ0U?tNhuZgXp9D$C=b9v2яzqگqiqUy. J{. ym gd;⒱ 5SşAnmrScM@$R~F7*GJ zc(\0]ׯKVu*$^q-E2×zqA*IP!{ gz@?N>$LrN5{/.MmdhL\fU{˫>L9F{.QVVQvpqfsTm9ksƴajjo-o0ܤ ?A՛9ns:ڏ6zfk y٫iy$e5'.rwnhRiӴSn0-9R*,yif$]>pobhO*!pe6)'Vp(}acm +l I DD1S'[0e4 x=N82Tb?p|3b}K'ur^(|[8 qI'YGlUs? X$X1xԇ08pH Eן3"Q's۠yxf/q=b `b{sѭQ0G#_FGL`3 C [`e3imQ`%&H_g#'4WM!; 0E%LK&1eM}DyS,A{⡱}n$ρ ,a,+YsؽS9MNBMka阸7@Eo$wW&4(8 X"Eȷ3B~ IRi@ل"N)3n'fu>?|%,WcGAJ>x;U0Uj:+@D6(e`Qzm~NTWeQ%~a7g$ % 7;+?Dm#s\|E{A>2`>q55 ]ڮ9GE8e#6/:Kڶ:)V{}MJim39 rq`5xg|CSl)#q҇DeuzWOɵ.C~tQwx%g"ߥHđ~uH=l6^YO)0\*gXus?{q]30 V ;}Zh0L^Lql iտ+}&LKa$-'T&ϋ

    ҿ[󞼑k LԠ~#Dž)7Tmw̲f5uaܘVUּ ng)4!\>Ko /-b9 Q+>q1=l5zWފkhXӍ##ܩVp"F|L3gj%B,G;=ҔXN@ ,)أT= F. x,.V Ѕ5EVJe6[foDuMjSv^恕Cġ$w U"S^5dm[~]b{մVR|j4F}fɴG2GyHT6 Ÿaj+HՌum8G[C44q,+M\%/f'P?*Ա_`#ZHӃp1͆ zPBfQ5_-0"E3 3[4?ҽP*+ڥ9(1FnoǩGQ 9 #0RgL\@erXJfֺs'C"Oӹ3zߺeG|B/A9U3 Ǘ(2#쇚\!Э'2gT{Tn:n8N:1?w>(`{IXvj6@<+"Z{x>o0CiEC-V1+ZҖJ=ݔ~6t!ƉЫ_L"7ϑa H5cSp$`*75ouwֽMP?`dM$ym&vCۓ,Q0Bxw&@i=!r)5prxCQ m : q{A'Bu/MU52LU.u?(WX2߫>+B?;2* Q[$P ~ #G-x*pw5ifPMqHJ໺]`~'CfWk(?}UbpD_T߽Toh*pn_K)iVg0&o|jK&|s):@IJarssus[Ń:w(jv`Vqτ-H[+ #ybYa;Z?KW\ `9[Zd 6i|ӰQIl4a xD2( i[`᪆tj0gU-, u 9v:j)[/~Vh"t9!/ږ=w-e`d]\I3Cԑ.jqqAKj*>c|LHZTDEW ET_-]-jJ|w_4HlM][Q (Mdλ:4pg91n2ɰ1Ge5h+.2$fV\&5$c epB=r1,$lxt"!QWj|SM?W*|0AE `&'0ɈڂiY+$/X5 JvM{ЛUKp tAe 9Ӝ; ܻT2})ֻ~ά32J Ƀmo(ys%\mr/3o2"Qgh&=N6-n=0E#|hξ9H "0V(wШ@94 ">-UEWۄĿ._ ֏fWnu63-^W6S,.)^JEf2Z("/,F Qjt9pV!YQK2s}ZZR_+wX &~ T uH ۽Σf1Ԍ Vm;(,ߦr_:tai!Dwy^rWnX@h?%S=b;CI']R@*e`܆$~?ȹAp/i !햳ZN;OE}"GCTyZV-x݇Źqr?Tx=mH{?8*,ݕ33{hvl:qIIH2EL ;-6Y\%jF(aD9J&j#rMa2\i9 4>aJQRP^Utl|:2T9 4j>U z^<|vq;r*r5y-^ /w.G(B1e 6),W2/[k`XK̩?MAr$W]G {@|~i9$@ \!`F`Rw1n3m+%δ%GnPK(Ўـ U31.RةMU=q0c%w'aL'qhjkDpH꡵,X,HPk~v uh+3-a+.w% :đLXfO*%6ekkd!5K A/ 皠/qWSn(/4M(Xh+P&P+|SRHe}@ C`PI10ZLN#)3|Sx*!]1L=nŽ7!<=9y(.mNW?/N7'̷%`Y>ŠxďTi6F ̿軅 vwAAV.qH]Q0*|ԙBL72 kpBT-7muu|#y]wfU)} )f SeXW Z* U.x_0k9vr(f7TrZm|R#:oPd+9qcPS矅ݺpײ5Kk# èPUO*9vdN>̭ JGukmߴ$FSX᳨ Y^]7j($SFjqt@WƎgE9ot;cRqPt}"^=+?,rf]Y?,Y7n6݂7,m>@Ptie:XC"KZ/( rW] kۑA*6o< (LmgW#ܛIy#7E%G~s"mXth%SRUcMalZRȤ̤lXS։K(6T Xv#OXi]c(B]'x5 I lq<>x[8`J؇r֋H2WC`udWPgl'&E 0+_qKUg["jm]#Wl~X(_VWgHy?BL[{WLG3BFa⷗1r]2qukcO3UTc_;ZbX+#J\4ㄫX=TrFkLlۙŤ$1k3rnn` % FkKA$6[| oB!F0iȆ iӯ7pk?2yS給ꮚ3FWT:JV`M~Q`Rؽ%墅__n:xRˡǏ݊&WɨOۥ}Lj ͶM*( PXaCm,GYwEOVѳYD qޖ#.`޼8 /UާC\ JuhrBX. J6fނl\f`;;s :N}T֎$(ClDtαDL p~aYYz%|ZUdp_`C%%̽R]fY";M!W/ܮFJB`sW>MzH3w 7+̙uG'~xdlJ\/$u*)qLO%x1~%lnB$ѹ@ N4(kyC*&Kş9*뤧EBrR,񤲡hg/lӕ(Bf,5fd~/w|w7K.~(}8_:qn*T_ƛat ^鴍U\(Ms kAg>u| ,9~^'kf6.H&,Ͽ8ɚ1=سG6E2#^˧%B %n_iL}_rٸS'OV_xoju!S 1d%ピˤ,K2+ ;cdc{z54ߥ[K3/m܋?$’c{Y5%%K Z9mN:!MZiܜs{8LDOGm{\n5cMo JDqog{sl J3+8nL&1ОB8 )\sؠҠll\!Og01(Exs(?Ԁ un&tМ$ rt y>\F<"SD5 -w`#',*(D( e܀r8\Hh/$,:^Q2.Hӝ#4D9¤4;eg~\Uy>ޘQhU_94`K[{EߠۅuO2F|7GIw`f9z #ׇt‹f5R~>JAєY[a+2b!)oHsU^P NFлXn l,Uk=LngQ+GSf'Z4 mQxG+S.vjZٚd[[/ʘ̺73QZ#-9o&G:wk٪7? dwO  LwR: .*on:;QxOrt+ s!ZvCXuNiϸ,x[e~R4UqLh&ո'*Ԙ1•BFKjoZyO{,H?ݏuK~ыФZ" =L1Īif$i(w%A  >Kn'.6s d]|/SPSr _A *x&ImS[0)| 1oqa1r~-aKFRGmFchDЎW_! 1l( BlOQJ{׹PԶ>t soP!3dj-`9jN#kz^'n.`H\HkH!"1Zh! m DO/T`nE\:'+b3)_X904d un_(٘AAEP%&ǜa"6L_jUVb!qΦX],!m?D2`#5lEO^0\aǕYi*fn}dV.[mf PW&e8G@6sbF%)N.z{ܧg?"2BO怬=Mي7?vP/^k&3) 1o)×cYMǛ"&m; ՛vv~fCʄ%[==(@c4dyG҉"wpRC1Nq'n]=ߛ !O~Fn(l!m Q/Mu 3U1eٺ),MvpzK'M?-u%wtlJ 娺/)E Yk y7tZo4J賆GM7tФdvJ (<8}Ԗfq/Q|7:٦_o\7{^W D lLt>$Z\/'67z1twԳ$Eò> cZgJ`IK_MB!HeaW_8=jT̀t$evqLX{H+N)xgMA [ )bk%w c7\8[/Ew[|*ClDr*>ysH6͇Y"~ʲ^iˢO\,P)k]βCT?x98.פZ^o:JfHEGF:G3.7k-duYHa>3Eբ>ٮ p"NB/ zF$m\1FI歐B.Zk4c h=GHL h(*3TX^F㋭iAb6{&zFi#A:ͪW>ޢ|{! u~ ОUApC4B]/i?Ws^oR? qwWE\FP>j8[@~e?ψP42oP0*@+ə$3y87^4@TW&Ԉ[&^!BUB?JOO˗3(%n {\P)FfQ_8.{۝&k?ޣzO䈸"bLL KtzfgsY9Eu .Xu9/ kUXcYuq X"i*b -%z:cye:^e )۸kB႐{`Fr) '1TnH5ȴx07 ;ZW}[ݨtwLMBTnno#1`Yzn3~c]n7u3otD;hj=l9uŲ:uKBq˻t9.EOF q05i|wwtV_;=x2,e AmI Zvj4  ˘:qsrQ Z~O|ʟކ ii&kRVQe&(lwU2wŃ eZب^,4όo<Ŝ7FL;zJb Ԉُ}>ǡ[f!FPBWhyKl9c^)}>SHF/4/_j[QnG'wF+֪gJY-E3?[m' i>*I'zY#ע6rvcf+rSCkYXKgw:%ĝtD7aB$܍)@0"OZWOgB[9߉P(У?Os οA ­=ӟxcwFz.L`ieWK]#⏝"HR|[K#eqS񵤜q5V;{CO>i.lvЮYH!L"Y$,'$}j yV!l'xLasX/i㵐BQsm(`A0R.(e o 0\B#caȹoYi3q}x.l̂N_t>'m U02l-VC{+D Cj4f"UA!鄱#?H6[zt^ru.-ڟ@D=͔LN{fRLZOڶeQ& dHG{Lܣe(99IS}.C@K77A_v6.$+3e >t 4tMHi=|Ŝ{RHL&%zx oAJK%fZV}8u;;۽go;)*a cp($oy!q,F~DwKfH K>jql 6e<@Ƈ[teg"RhplI>ژmǚ*-50PҠܬ!8PِO{bKs'#;x/67{ \+MrZp߷z VW\ c.0ؓq@3In7F1l@̭'3G7sGȍ,s{L0~k-$@[0ce)S 7oaB{pF&aiK$$U5 ezSJfկG@5o~Si 1KG+'Z|n%ry߯wij)5RL~5)dD~_)¦wbO4EmzV@dBV Sט],z; fGЙCزdil>H֑V5| OM.kbrdʝMRzɅ2X?ͦNV *[ ?4Cح^ Y.eġImS} UTtfѪώVqD8~B<=xr{j՘Ő8T|p?cyM]?)I` ZA6SV< tu KvQI)S6Fh2R}diϷ[J#W Sua|,-CkLkdHݭJy5}v} .1id߄Y4QQNCk^T5`f5_e`'cni/ʗZiro F|PVNȃ?KjoNь҉QQn\@Wl'zOl)Hb#j(M -0FYwCboCb JGip-Dnu + dIM`raݮla:YX%"9sPoi#.;Uee{EZNhs]O -MvXL$g껼ө^9>]aTWнK) }LDm…`.7a%8|_WdOR^`@xl2,G> Au ͳPrM 6F8CHUE.BXT׌ŸʫA| Ljj / 7^ [uT\jcS\i ))Uۓ{NZ@7IkD޴<~X;, ah9'J[?mJ샹8LE`e$ϛZvGI]aѨ4kB/P0dB)ӍR#&~g<}?|}Fȼ6l/Xqax DО% BA \F%~j\jkHx6Q<'N-I&o o3TKTbC&{cvHjоj+[(tJ4C%E\`7 QCf-.J]wv-sg Ň ~9Ôp vJ.: IM1.``)&  4-> xwQ0.N%8!}XqXb\?9.[]4jͥ⚜jE맕c$ځv_u0Fns۸܁Ѭ[·=!}2 :X+5Lΰh_-_:&*C_G".qyVܕhQEsJm5$ 2L)]sj;.BCyp;˗VEKBmŵ9} Y0a6 tjӅٌ>+^W޵ZqynĉN{ݪz[Gx3T!zCyА[96ԃ,<;$^a~/"Ȁi@ҬՈI!4v'PǞ)1i(3Tr9 ԇ7( ][zs]{;[\Ir=&+_Ԧrs i7!{-hpoWUE} >{"#.\L{c@Y[_}<CV0/7ҜE?PjBtq஝7|*>k&\olp{H@TxDKl)s0^{j0|lr2A7;/rF PNvZL\ |W)ښX%,ekܬՊ˯)ExuU&E%nQR)=@$UW.mrt%nǣ6k `ղ{MzCbQPKqG rMK:v m ɐh+|ٺD&c#n@2Ka~"l<]T>![ލv cT}Ha3?UY{VGP&q"NeL=9nK9_&KkoXְ(飑gJxѩqR*]#hDWF$5zma3ny%Y<2ܨN`Jpj.2g˄@@d*as:ejkvdT>IG ,Q"̄٦FCJ7 Q(89SjG y>ܚޅCpWKr+G/opF"D(ecFB0f[J O`&G =mhp[i59X7#TCE'Sa!ejrû7[LYl, J<5^ 6Z(H.LQ#'ZUhms߬z>i|9UW:.SN`#g[ڢE}bRa3B ǒKbI<)3uKuo6w-gtL!`'WLUL}C;qnaBg5lHl7T7 Z@ZrE^zIK2|\>DU0IRlh?̮m=R$SEQ\^O~M`#o:]&d¿[b$}ڮzctfɇ·k^YȜl~O!+HÙ '3 Dg&M7Ohj E $3JGꁗfER䥣Gl&JW ^-h,E_⿶ӧyx@>zЛ|ӉU\Ld+(Xy1F~_Y|l#sljADsЏ` Ś|- "7W4y!Vӛ Z:*Q=OdN)4.0G˫*)|{ã 6nCժ" HBAxH{&N v։]dc7dd}lbJlJu+u5MeQBm]+ 5DYF\܂"Bywq}4ba$BVEnp(34G{[bqͩi.ϏDuߙo4ŵf6y< Gلv41mNvn_QQ}y>6&ZٟTʸ6.XaxIl`OВos-k|McnQN0 4!D}gVnE^ : A,lA7u2lAKȪ0cɻc ^č$W"Ṥs~"I0%!!&K<4(0:1xU4҈bw vU2q"<&a92Gh[8/esW6bZ ,-FS ppdG"wL,o=n~>%!ǶjA1:=2 #Jdۖf /bGHR(E?hy.ֈ5="rgVٌM?brԧa*2Hl W$wbg;-xC]z7\>jj~ bI8"VnUf.e{_ݐCS Thxˀsx JH߄`g)!EH0iئr[.Z[#>A٣iOc Hk-VɶtL#Xgdv! :=]啕?{RLtOBQ%({ăw}^eJ͞QkT@N`ߺ+Ziկ=3{G789#>B< [jPZI Viw]sj>>%XqO& R"uUN\ts.&h2?[x66ab1J&NʨRscC+7j~zꝔѡtN2jⴽ54ࡵSI|4,m-v,;/ۿTUs0ھI2C 'U~׳96Fk#e&}e"d2Z_]ӁBԛjm [jC3&;RZoP#inp@HŐ?)2gF0lYӏQo޺OJUF x=N :4(fߦ/m #WɷPqz'Z@2`yo@9H/nF̷K7s`^{$oZ@i%ZH%&[Y@[Qye0D/0q{go%($/|qgcސ݈T-Z@ ڒVjbT @>$!hC| 8^(&cqec< V- e AϮ OXNs@j7 #T[іDaR>ش]Hkw 0(J64uI!#[`LÒB.;xӓmyp@>p)(ݛ[A mDBXWnm7?L`htIgUҦG@W ">d J<~CډVa=/95*Wq*]`(( pQ̠jRֆY 3@O:ݢk)7?[\z|Gt3•sZelkFZmUS%uⅥ7VuHOyaFMrÅsd#NLVVX I(Jԏϣc,UqCI!𕼿,ߢvxʗ]L^>[t +,DjҝcMPn6&}!1Ds[DMd ] H1'*%;.`arTxӏt2A Ȧo|Z~c|n9Y¸0ް='FåߤՍGϾLNQ~~F4']Ȃ]6QڝPG w[ųI-cЦpwç{yWXls-8ɹZ5(feH@NhSa(J*x\[̘KrPX|Cw 5ΐ7#PܣՎ'4L^ģK'1F k(gp@p m =ONn;!k22 K^f 1z+7vF-i cr&?]DbXP.oqMH uvL7|+D&Vn&}*c߄Qe97xtwgL5 p|ەA2aJ/H*Y2-JT0 wE<9!nbnEpOئ@ױD.y|hVM|ӢDTNIۋ<=^/ljLuQE| 5S]*ޡ`7zM##|ɝԚ=[jLOEݞx*RJ1/ߏX74idkٟv` u;:I&%L/HςwÜp}mlI5N?P]Ek,?H̛`JJ%9u'a5N%L^{9`aaHѷ9;a*uuRoP0x3uǡsS<]Fv_>&p,ѐB8QoR 8f<őUPhXڝz6J8>KT}r!f !ʋ;CW3^Ew8ӠR(X(n/HJ1#𕒹p hs6G#A3ۏҴo3A7Mu~FI{:dq|& RqQnNpMl lACTD,"״/PK0hv~6n%qU2ߍm>Ϊ _LG-c^1%{ w;ݹ\cFtp8@hXeG EF?enf;ՓZl Q |ikBha3RP 5 +C| yZz* 䃪b9҆bT%/ŝ,ăjr _EM-dm uS\` kpV=^NXseP4p[?آZNe=ntd󃢑HPiC+?KȔĤ '`,r:Q3Q<|)DJ((>QL)g@`X(pVM׊AEOy(9"vҽ-#GB2&"nR;JҾFmrϲ: %^OZJvIq7R۪u<5Y2[Lu^r"BiЦo+ǖ<8>FI p3{=FFVAT/o%.ćpS>OyWj[p]sE4 e ENW:nAb&|kvon3d`V5" xop7^ƍI!28ZՋ5 D'%z9_Hf5QH%b_ jh`i^݌]H(D]:Dxr }0Fczi͙>.<6'ESQd<#6'[:H RC<~o~/iꅅK 4yy5t D:̢/=%O{>Z^JćՅ'c#|p:eCGPU \[޼Br)kVFOzN0"DnxєhW b|G(]}ƳtRyD[0i+I1a5&KQ=_wU9]SyLkȵghJ, 6+ߌH] ӟoVdzvH En`V<)\ v:{w^2,q57}e3C1~uO%"S0fA)3~Q#TAp:Ppe]jaXMeH07m\CVe uz>"")=0مQ>.]2RSIc+T:gI|oԽUeM&72P98,H0Gps7?U2Cm,~ӂ`o/ |:ĭę4wl^Kow) :P5)VlA~S[}TjsW^&a%7E k4^g̈b]3v>ݹ"AGb&M71r#,&mXQbLJ$]G# N' .| &X)SvSn;4飳MZe.$Ji;#wI"Z@Gg*Q& ,h,FnԚ{u/=JTe`2e7lDSg=fqn]һ }U0ܵ,#2>JgNSxZfgb:Uqڿ~s;/#5~mC 4%n> gvak~ o@=1e7w۪6߅tu ~)%s7W$y|pdes%U'[4N.8^hY@^NhKtY(㤸sZK^Ѽ+J8Ek-9o7 ܖ?^>aFrhFea23_"=j#høVRX)]p1ݗϡ >F[F JEMTLYOw1:!Z-v[nE=PQ쏡M݉wF:|d; gk 6>#yЯ\ps ګ1Ysqoyj,ܜa̒KC AK,Pu,:eಥWt^ ݨcrMs[@V4-xWJDqQ?bI EGeo.2ǗXms.N'(v\Ii7s W-LX`9QF2#̒Ӏ a̦Z8 T'U}zC`K{HDӔp3),Z!BWq'Ru{ <#:t_/'N-j-QZγ~ Q=-{2(ЛۆkmX<%Z) STp61Ӏ~&Y;ּ²=6dI:f{z ƭiʏgZqfSAq t[oQզ2E=V*ĉgDb+ZeS[~Gw!C? 9\ݬ6p3<<_cݯ+]B"'F?6 rP ÿhwr͍h<}M;w'G&Yb^VPvɆ^bCd B wCI'[;hP q,8ΌVs2 I$U%努VܔT4Ps F¨= Ao@4UaR"uë*'s}0:xt">92v@q T1rxQEː(@d2>͗Acrt5#G`X~݂Wi'G*`]'}*nn5Ȏ`ڇchK(u: rȕ~ʾiq= 'mb^6VJ=`RN:L.e"0v'OIrmc^0oIE{sK4JSx]̿qIuA?eAcš5=]>-1YH#|W@![3 0UϹ7JwE"KNqA?@|_;\os-q?60bJ9%G5.H ֍FߥcK虌 {_l< |,aN\13+颮1C<3xNz`V8jnߩllqwaYrjȾ{~@cCQSXE$QH߅:l߼TJxHBO;tT ޾i)(\ R$rA]^ROܻaU+V* G!~>t6-y9\Uia/.asa@5) $i<^J05%\$W.oEG|݂m?dݿ+ް#MS :ן|bW$H^YTu-ҒƒGx-4?$H2ZʆB⽰G3cUh%z22'߻P@ݞp;ڷH UJۮ ,x(ɪs+WΣ .VE}n(S$Ã])+k.{[EVM(yH! C'xz2ĎPȎmOPBǶM4}B>'QPjPhl{w)nv%oh7EМeHwU`p#YKC4M17+KJc׮iŗVSx~73U#.X_ZvxyN VO3pBxc2v}yG(|4uC'MJ ΰll?K;)d4Ua,Q2G`)UjϾsc;"ę JߛT>Ҋv=테|JgX }>]&0='\jyPomN*[{xq v;Púx/Hr,=> "!WK^6,>hxכ+64 BnV _qiv?hB`4;\#TPh>%syd~F˲ ?R~߽ 샀A#0"v˼ar(r3"+3]k itPf{sGC#Í8X8CÙD47 -l0 ^ v +p[FnDu ]ǮBr,'3+$iU$dEy̫c\S8p̎J .[*drPwi.M bQvAulY*T)ƧKxB\7xV1kwLk fbd#5G]QN1gU BEdBy_NvƗ:Ѝ[O:5 4"`IwvOؐҰ 5 _`R4\N\'rA_: %]ȩyׇy/0՘ueh7/N}0(j; 5Ӧ$X76]8>iv|Cɡ' K>}$I^Un(9-8]/HC+9e-_}Z`]LQ26%# hp@C>@G*DrP_J߹hso=ހOรdV PHe·4R7@WPn5[A⃪;y-hmV, b:˹OW7h{?ZmcG4y2*eVr jBrD˅}ˍ7;e>LL9E4qhȻ0ڼfj F_R^0Ogpl,j ĴE 4JoSDV{,'㖪 P|}裉(~9H%D :#g@|)7Ь oV"g e-]`K:6jew>`m|X-6Gmc=q"BU ظNhL'H2wAH5x1C[I;nSORAOֽ/Ѝ/ rAȭp_)ZmcB7`< 螴ԊkzzbTe۲HU xjOP:|#:(=fkd.H]QcE<\M O7M9zN&˩: *SN Cl2,#Ec䳍j;Q,9Dca kTKrH1K>(E*68CZ6-G~AB`Mmщ52lx:{ڧ&GQBKP_lh{2Nk0;LOYz::_j#G[=XRNc]]R('>kv;p v{+HXs]X6g[:H}i1s+3w鼊QPKf(p`Zz[jaנ]31}a#?8E `a {8 `HyW 2o1bзKûI ;MmnICԦKEJq]!s4֬\QpH]>:l=B Kބ*놻S-ElA! e};Ty&2תR09RxXx 2?`9VfW9 $aKY]3E2JTe*8r0?`x]6S[`YnpmMj͖E\\ [cHFW*nvM%njReMM[O, 5;/r>KG'% #C⍾.koΐ@%GnPUYÂ/xfmO[~X] {^v¡&c1K4`l%w)ڳ$}h>-}E aPo`ٻ/s6׽|)GN뙂ىV{4~ˎ>7sy8ǗZp Z]!KDLB$|p52|4C6_{J(ԟȜ7JpaAvNZtġjW ,F&|X sJTw3͞g:{7`;-BrɸJ(g%ify* 6YsjW ~3-߆3?2$iCׁ+x#u/i\jࣜe`AʓOVGF ?&=׏^ed"@6]ƺӜݛw:#C]۽2/pBXܡ:<:ET(6FE{l 8QCK_>9%\s:_Cw2V]ĝ)(РB9k1lK`=co&){<$~?Z]SPoy@Xlf)?pC(8R)kNZbc#jnr|F›7q2<.,Cx~k{iLRv8وۛ x"}U7-pkJC{:nax?<֥$jLD\7peWۑ9d`l6ҮX `1ROmiU .Mg\1{3[=stܕ-`.V-] V8iت)}BdsoD^ۀ$C>5v')g³X6FR%hIg z-C۞VdNSF7⍌.NdEHionuh!jHqP NmU\!ܡ/aȀI%Z(o^%@"D=.!4NG&zu`1]e.r jkfqQA ӏ?W)ic+͛d іB>^*b^ktVc[rV&  mzB ,>1(aوni+e熸+fDnGG J}kǺ)?%{<% ;KF[(%@hVjuz 9f@2w3zˢXd ״xftrE͛fH3kA}Bg'kI60A`Ъ*'תȥv 2yqޗ.R]v3P^ zX)J򰙬v50 N2#RN^{C\,KU"u!P?Bwޚ}Sw/߱+0utm~LKN󁉰 kgw 0*q>'`CЎGuu"s_a2 ʉǎr $sN!)޼+@NU? Ogz mb򤼀oEoP6n) 1|#CڃzxBQ!l>)KpWn YSO N?)@zy }VErߦ`,xP̩bҠAϜ x~b4GT<+E- Ӂq=jW|ωbP2{0rc&_(e$.]R6a M;W`_fsQ`nRhAZQ27~˳hJ.u]E[f=ppb:﷙nK_cң2v ,ʓ0D^_K`N0}}br)07ȆH '밯ܫ*(YWՊ'KGm?iWү,rݳ` l!}SQt?.(̹m{Y ȟ@{S[`c<:Gxh+bwؙက; \B@arlGB t#t2B%xʕb٦% Uܨpk Î$zi@g*Szoo6L@N |5/аVD:6lEuم+Hx_8m(4ҳJiK} =v\ޓqNF0= ,i ffȈX~^E-b`{;7pgc'LDlfL>6F-Bܯ_v.a x=a)4}Xefub^'џf0ASlen<* Ge+@ Yzjy8WN6)$̍r n[J ۑ֩(}~JﬨiWg _E_SU>bJ0qʻ3~f_c[ɭC1ɌyӖ0F瑬9l=mR,HBv6R|{S|oE)PCfGjp,_kЎr7_ϐ &,ذr+^kIatɌOL7Ջ>pP nCK~?Q#mpOU. hFsjI "OglbѺ 1!V<M'&ծQ%Yy" De\493>DRjz`ߪ=XDxZQ3ZCŁeLԙV:^ՁNļlnbM aָlGѴqtHaҽAڡTvXf!WZGER-`_ :TzZ.1J]xq Eeߠu^[-nPo1tZ5\}q&bb Ĩ&n)f4?=TJUQz}'$GKi7Z⩶8QSFMɜ rlvԇx"MXu6W #:;EyX9) 5뺙ԳQ ruGj9() ,SLT+]_.=&W+QZTHҫhݢBN't*…dQS% HjD _q#v5Uo>p k mW+[o(}Qf^eDn!w jhO2޵:ͼB^1bOm.7ԌӑDFCcfF_vIIn@м =)8B-p_Q[eAa 2vא:Xv8F;EEܠl( &4qS}[^!>4䓭U)sWC)DjNRD6% #&|&iX֚Zeqz)HF.NC=>tmlcH|u*q2DDOeBm^!ƒ}]dRٳxO/MjG$ {Y2fe?-xrta: q}k$. ->C-fS/ȬV#jϵ\HPذy 0']$wrNz\?C~[%%H9N!"/$8m3{W=+6!`y4:p%2{87i܄ThjFxRO,W)̲8,qd3e~C ub(SB!݆*FAFG> "c  Vt?+@JEWѶGwg4bp NI2Wh=pw%mžgWO}سlIv]^ MYԸc/M UT>GxtǾ?9K qȹv_\z_&h3gJmIh;- eb3쳑Eb qqhԍ,4ƟF=[ʬ+Ÿ-͟6T8#V/ۏÂR;Уml??/ Jn2kμp87P]Q> Ér mJv$YE,kkm&R8eF@H׬qJ5%n6,Ja]",cV\ref> ."@4..u ?iBqi+0K#СnG +_ac ⃃rq;Qdhb'Q 4ލeY#k $m\;}ڮTiA$#RR8*XcG + zKal>B iȲ BsfS=(?%_F$ok&ҡvx_@*V5 "'&S_6-{/ޫº*zy7 /vt&o.m?CKe;t`2#J! i=Qbꁌ p)JУ|}Ȇ?<]?CŖ,m/Ŵ[2D0<\銡Q4TT=37Z 'VASO|"a}WUCK_$'*c FO( zVhm?əHDjx0gFnH~z&BuBSoxD b_-f:X'\%QY $%w NX޾GiZ-^ AіHLE8rnڽ~L3X [4m}ܝ=G}

  2. rXMr uFIt0RNE#;;#4zӆy*7m%ik EI>k)="%c7&?#f\S;-RB3̈z_od0 fVB ˋw=:RuO$xcHV|p=5'K}i6?9~|'/z72 %j*];|CU(3i)& Ve CjH,ڙ,AR̗nS"R> .nQS#i2EϼJL-wk&c$k( \<%f;.)Jn(Z53$bJnruqp J.s»S2`hIg.Gʹ_7FėxPT<iS/q,3isјѰ 6q#ӹ f ueARkM"?mY%*i%ۯ%}'-Z7_n]V͸:tʠwU^Te8zbe`NxzOatՊKzew&D )~?(Do2jnZME Ƀyj`Nxzu_rXޜެh[ R]tBՖVkHʦ7٭抜t|0۰"f#f}nZ~)7RDg~dz7D{Az*Vu|ʖJFҀ1m:.|vdR JȂacC\L@3pS}!v\*"۞]KOuڎnX{;iGtɰ ^Ù$Q敭jNC9(.xqw  nxɦ0^ *=|F1K6jt04F*dhd AD7UE+^>Vx 5 vԄ Q Hlh|xem V@cnNG|za8"q3@/*~d{v俪'e\ \jEJ?Fjf%IiN6y1.7I^ـYA jw?F~ MyƗ"8t [e^=k,Is"v}ZP(ؙk8&zzځrFI߶1&8]0n$|-=^_q!jR(4ې!R wִsX=yt2n+@rBy% +ԳxS]qp-i2P /Znj\0e)DM;gŌOfo.R?UA"Ȁև|pҸ'BKo.yd=AW燂&1S8_ 2ZsV6x-wfµ:z|>]i\]Ngʨ67kaYjx`K=EV)_Jvm}m uCY5cY<3)!ˌA˃DKa2:4hā V)<`؀Z0:vڒIPY>/|+\|/iWtN*-wx4>!hfɭ|dj`+0&!:KwŠoC_7GM6])?qاvoj^J 9}sS\bXYְ89>t͂o 9 y[mQq2s1T-W4p[T`[Lw|$'xr>ʹutu4OXe,xQשBܢNgAegʿun 2r_##N|2?}S@4Btáza9֭YOb !':)\E#ؖt hߞ_, 'X[J_nV(#oU0ā;1B:ZFsU`FIz;+Á"E&{'ԏ%7E0E1[>kE1ݡ9Uпץ?- $zGS,a!GHο[Ar g/>8J0SM o!GXɫYQ Wl[VPSlDRH|k.αW搦GoyfQ'e9?gQ0ԞsOz qnn\s|*3%'>I$Ke?F͙qL^q4 t`0ڜV,N guKA'<:jwW*_ a ]vY mw X{{1,? >$B4Hި$zY>zľ!}s ު[GE΍*2LN]:WeF4JG،a P4!@@e4[&wBB~cxSÖBKZm CڥL3`N ftjA)"iKHf{6a֪U/x8.DHj $(t64\Fg)^/DiOB V0e/UVkk&O14[:8O)N܄LK68KQG"b;]xzgԴBr7І.z7+ kF2t I:\\uOj"5ټL AĒY]E/E2eC=\-* w_ʕ|v2vO>.}V_agh߲61EoKV2e3M.I0 "Gjh9?a2!⃁JS..#g"jԤ zWGTpt$E5dޫL3SRgt "Ni{n IvL:k&OavzO.S( R, gR&7`* 2'on ]U\=l?V"Y "2 ߜh}n-54P*!L&^$=koo;j1=o4-',*:' }K/W!@aMTQM ׇ!쐪Pk];J|R;niGzo e$3Go(!)%oƌO!+|PT_sX)&KCw0zwU>ZW6rz4DTNZcu[YTlD.`Wps%\0ƹM5zppyɚNjƇ56lF+B]Wwß}?Иa8lO2v5kgD-󩣃 3 ڟ~D@7"5Xv4@=-ʼf .PσX{ڹF4)a2 1| Wؿ ر&1qtQAaV';T TmF_Sq1h߁ FvC eZDxDd^,r70.!Ǵrbs"Hl zNb{AiT1ʗzB^"e&\N)Sz&#!:23P[5Jwi9:y9jνN~kmJ)ߵ} '3Q-x>"Z0޶kQ>҂؟cɚ/4P 8>XFZs7a19 #"m +UtcJ[j%h ݒ 钶@ "/?*~S5)>)?*|p+dcrx{#l*S$g@:XVZ&c3 *QV~Ql P 6q"w)t=VHdGۢ|v]Vyh=_d%]퇚_# vC\(ݟ@FzN7$QA2Z׬T4ʅ؄`^Xz_O>7!8uO鬻$$[j7̱l6OjVU׋׷91kz|dO@|`* fğS`Yy0M_nS^6hE\nճ]r>Lo"#`D\%n?M $hT.2y*iC\ge\I`tiDĉ !?/i<&Lkw]6rhs ٜ\C nٰ}3>PPr{G,`5ҵU|kOZvUR۸hgg?p]5uX$F[Zr~s=Lv8a;k<cr]v {ϝNg4N0}n_GVZ:r3<ϣ=e0e :1X(S( !YΛb15]tQ.މ5i_ H [Buq؉GPSӎ<`4&e_/T7RZ][8 }wk%᡹@htOX ԣD#-qnzз{dV#F xs'㗏k,&/kBs@ފ lE>F‰{JUM K8vTOWN\NƖxÐS GO_i2ߺ0CJG-fdtKOФSejmMVS63匑>5Y'¿0dPj`rĚrȘ_v[w(BOqi)u04F1'(MjZcPە~?M7ٶvB;foTpPxَI^]NgCTҟݶV9LgdS_͎!p䌑:(kGeD@d 3 [hFMM_҆(Y?xZ̘<5{>R#m^*`"`2tI_Q> p3#5慵)RE9p!t kR EMv1kfGH;  @2X'`>w*~uo@Ġ H^%Tw?"\ I9Z>Qt-@OL A9ӵM׹7F:WEq2v[5k&שz 7ׯ|/K f4ھCnc\Y0_/)1I3v˃SA1ũH.+vh@1<>cxޣmPd2N !JaٿG} w݈&Άd&wpzsz!ƕV\w >]zIlӭpPI]Zp=_e_tڢ :FrO;;4 rwGyۭ @L?ۺ.o;_E1YCx#u|TgE1џE\r\AI .rR~y_x5W<7nqRr7,k!녍ӥV\2)k(Gl)Qg/B+P4l4Kkh"_o tvwiIcDwޝy@/ԄygGj*ܒ2-灣*%,Ÿ*ř:@h/f f$+}  v8Es,QY}ڊڳU^Ι(!ckR&Ǵ4We %DtGa#EĩBFP|H$W xݧ?MGX/ɥ;Ƈ0JGޒ}rUi06Z)dZy[DB7f> zr7kꌍMCM 7OlCpy͆pcޜA_f1dPXⱥoA ydy8O&93Ml@oQBMꆩhZN7.UA!I<=j6Y9*Lp)T[;7goJ^$I\԰p?n_OzЌA APq2=Sȿ=Ø;|mޢVtDSqT -,'AԻGu,Q-j /m_2c[P+ .#=T0l3ikg|mWJ68硺G+sbyL+~:ER]':ۛa*gO/$CJ$w6`98OW'#ݐi>N QTͤ0> 988`,Ec]ڣ˪'uW!5eq& P'9 5H \!u,S~N?d+rX-MxQyh2>捜SJ= SP52&,x&'{񠿤c\M|TSgE3ǐ)h:znb#Z4ڲ\Ct|zu"j/oЍì:==hĘahU"t $\vRr `@Y(&g: *Q{s0Bо{ݘ PMghlYvm=M$(=H~.Fb- 3dѵsE'>M;/zEӗ,"Xމ2qMR`x]z92Plw.[H6vj[3Ҏu |iHЗ[[I;u{z8k6^8 YOv6͡q~<*nK70Nx^wq/U@ 5k(K)Rm!7fҚTe`ĂP4URs'PƩxP`KO{ fֲӍXiC5P -zm(OҪj. =fNרX0浻6sBV~9@ ;hq3DveZ]\Xi!6~9K 1K<=DՓ*_Zjt~)^/!>&U`8F,Ngh-~fBs)AY 'br$D&G9tOdBr6;5F @s/7AO\؎.0a%S?lPBM攸29JԌ1!p[v3py*5gE_<+?哠 A o rے\Au!lȜWrqG!֮HU%%/ L%?좇4+D_D`ydv:][msTaXGy0^.I4V$Vr` ;k;Krbj?Z(0/x⿃Ⱦ#"4 Jyanh{5zE|fgQ9%i,u,1c8.0vJYT^SFi" 3 45ȳEU%g36-E-QIˈqAu{ٜBw(r:|NZEn[*$Irꔒ UkhM߯FBc7UӘ'V,Nbc+ҷ9#)W 30|!مW#%𩅮iݣbc2Urpc&u'㹣z8"X!>|ITNf]+hĸM+~$mG5-Lg㦴n+10a­a2ͤEVO1- -f#zYdO7h!{r%DstqV_F^9#^%vZOSQb6njn@#ŘN Gӎǖ7`M}98QQ]8|h$Ў\Hr-DamL(k)fx9Gsqs -{=̉rv,g [YN ṈgVò/dumx;`ڛ`[}d;٢HNJ~/:F'vBT7$_G77tT1*t/Ñ#4oUHnϋGց@ee&{|uܼm} Mo8VC|eD̸6)T1i/DS1-Cj $$ySmifv#o3KOO7 DbӦ<98H#} *`b9}יA#voMy/Azf7<ߜf2G̿"'%FKRۮE~dD-O>YgKdwA@Y@ 艪)& Z5N]u 1k5hƌ_'p c{ா~7>7 ''I69jsFÛhdij\NImޗn]C> 8! ɂqw&d売kHVCm>u+,X?`~RƗc/5Di}q8F8+g2*v:o_6j>#f?"0 mH}1zfG65BQ0UG:Z؍d;ݞ[b.; 390F0c"2d?We'+5P5BK#^45HXʏ*<`(#[c+UH*NV->D_ &WS_s,0!bfB̽j{~{W@@7IInɎf2VV 20xB.P_׌8R\l!&þӠqG񥲑-v_S 릙%&"L>GlCv\Vا^J `\>@D;Լp~R>)h0n=iR. =8$ץ@$̤?D(RIR^\`</i㊕nWkZRzhiA&np.FvVȑ!ctd +Tћn7u!a"AyJ2»y=]j:U)[kĮHT6v+ H(ֽ5W}LKȪ|A CVś(;6Kjjg{ D6^#rZZ+`Se#Wb=?1⨎@pM&v~nX :e*hF*jvÑX@; RTeM?GB3mr]᷒PGzKVCDZܣd`Gĩ6?`~C [ B0#~b89JղאE}nA]bɬP2Sn!}8:c 4/Z,8* P6tWDߨ ?V{+/Ȣ5B~̼N[4E,n zB.'NJnj$VS2D~'G v1p%nkDo#O.d Iydwb,m~2/M΄L;FF[i'D.tx $^gC2kl;Z) "v:9`=_"/w1"DZ88j( gViqqˀm;nP Y3 GAX%U1\vLw97IIdKX6R׼Yߤ܇+^gcsq}2+U__5V4 6?֕:pWp^_EGrAˊ;؛[48v@-yEuB0X@n*ɕ}*~/)d=Gu_xARyI*L+9kY&U2J;U ɼ '2 LMZ+- gh`~3%s-ФL\㮅&֩Ĥ:ijs`,%V"Cb6 9d-iZcnsiU$ÐLs}Y97@F6g!ރhW [=g몋_^PGGH.@يMߠ퓅f!eM5ѹIuؖ.MS&!\٩m!xzK˵'z!>-렑q5#iX/-5N?zoXHvx_>aDۃ=:@^Ċ I~0)'݂>[] R~ݣpjiG"C=LxT&(mכ\;F 1=LX53d t;#3䌤q )Tu{S`8[uJquD)hEc8xl1/K6l'Om,jBg!$W̔' m/VvO6BGu꿍OcM8]4nק8RiHzp$ GGqOᕈ`Am#ΰf9} ,rF[Jb( cLhsT[8IS|1AM<%T@|[fs̈K2AWzAHѢo }~V5Td+cq\{`y}oA!ڰVG0C@)K&ۈBդ6hҦI2|Q t>5q% 7RHl=P~0n=E|eTYk7ldRlJp.$+:㷣&g ;5ikMK~, ߴ~۾Nm y_1Ԩn6 Գó" OZ6F5ws(_\V$ÊFWɆ\:u^n}1Nإ`ٕRfԶ@N3\zj{Jn6*2LeGU fIA24S7[z~  =a/ <-QjfKW=P{=ptiTg_i5IƐhZs2(x\P5!(aôITX^"U:=9?x[63x`l<4pgKo'IHWZ?-K_ gs4bM>v2y $U:w${xX+8 *q!# ` b=PڈD8+$R7(ޖzf, _]O D%ڍv79@:7"*FfbleZ#gzⲿJ7NȎ`x6{(z`6]x&u0˂]?IH\$[~R ̏O^ds0_~c'f-l.AO "2D}XK9"?~lgA>-PPO装﬏rSmJ~ܡ@}X*V^82h}e*>o?N/9a$ ;QqciKj1"B xFpp^SOu)is(n|&/Qdbr5+ʜXu(㌖&9?%6G3qD[ӊt箮ܟbqH{?ojKsjf%]e_}+Lu4t ms"q_u"ُ"U8]Ϭ9ЉmEҟQ|{VoO pC@ZW2 j(KJ?6x7Ӄg{ r"\@m3ˆN]׹k4]{duJoԜ, s$E5GQZ[?7i O<&7M ưaz67>ߔ'8D E=)\!9,|S}< @}XڂWG?O;1$Sc2mV |sEoַ}qK`'B圍Ҁ (ŘvuÔg:0Hnp;Bu0Zx|0ۑ\֪Rz%DO5 őQeXσqdZrz| (W1\/Wp-j?D֚D JbR?%$3˂W ޸}py3Wv(HO =GjhDZ+[S=;} Ҟt)ySԈDPXB1l Q7bߗs$"$mEy=uNr'%ZKf:^)! `Ǿn6v+*qq 40ЏѱիF&M[! š 2ٞ5Ҳ`%'Q0q!|4bԒvnі84[9'd&ӥtqschj, (WPDdlT #+LCr+hY< ) 6'اVsdM]QJc#]ֳfy*'+!trC``~Skۛ!*B= eep+J> Y9l~5'ɀέ@1YM!lzH ~*NAjPQ(n-~JP{DnƮg9W(FiCuoJ)ɂe4 +=R#*?ˣsN5_Hp.XּB\7'.P'RNkӰ/tgfý XKl, ~ųOo\|V/tEcy XL(5qH#h'\(g[3t@QrBۓ6 !9טj7_鑌sFu.-aEk&Ia5 K ,yu81լaQ2/tA'>0w&w~7y:p$G =0ܪBЫ˹bD"-\|Oy 'AMzQ},!c Cxx!5;q0Njg#k?.[wNʌtPk8. ӥQ KƔyRf1^oʩ>ot샅:ڙ s<H/(nM fk-*m/>Wgeyls_QF N%$&%=kCeITA)I'J nMD'+yO--\K;8,}1nqZ*D)nKM˿w^ໞXxg].RuophDl{u^зNfkxw}JT۾).-SǍMpfݷEOk}ђޭh~Hc4`uY4D!\y{@[!1&dp1Y03Է-( ?_SbLPbipP==$"9ӶfD PG~ƪyKScIKI%DLau&P>U1r+C|H|rz}-IY.  *N"Ce{U6I]`6躸: !@\\G-?bTp4SPH HC#[wڕMوJ[ :͸xf^ljv$FѬhn¶0vwN]эNv~1V)aG7G.bPxM:n|(f/Q4t _  >+HC8QU_78G>=9kj9 aكt=W2mXlOl{#K:8Th`2n8Gkzg Rj1$oVG:q mqtR;V6|I:oEs99_!1TQS㣨Lkoax?Pj$sUihՍ,FosL ?\W{A&7u0Sh}R NU/%ŰVpBD?khpk|!8:ׁ!l\7"|j -W\Q$gQW  Ft8ufl/kMN5S0*:44T{PD'R|;܂Ԣ^6O>DM oMqHL4W<;u-yں;UD҆CS/F,>æ*e0qSрp#T` 2+gŮdXNYmm٬jA ]srw;3NƊIZλmC G6W8Ġmӯ~+ XgOHP6lu&e4b@rd,z7ҾiQW܀/e"Q_i^c !"ܨSP%o˘ZV;ê\b~da+B=nғ),Qi29(@k@,Mωru>s$a,?֚Q5uڭdIvGuⷁ_4;zL6!x/T QES6(w >:d6Y%߅#9L~[g(v񗰋s'_Ǹ/:WMrȚ֪h'؁Bo5q^ ;:3 FxT0YCґsUX;MeuDTZ!A(3Prk g_oy$̀Y9CWTM֑j&=io\dGY\߿$hl%X4S[8D%yl!!qtlNp-Gj&<#&I&"{q>$ 5un\C.C= #^F7TKeΒΨEݒ+| nFD)/Wq~y ٔjIX^-Xv +A_nAsM~[-W(7Zej}׋1iSqOgT': 3qqkG Ԇ=!.rChH FEsKxbepK'br/;a#CeOIw<<ƛJtW;%u]Ϥz%ZxFš-24 ҍ$xXG=)qP PK"RݕW/|NĜk> G7WRۧZI#i;BHߥwmFx{yk=Ѩlr65ي. umfe? ԁ(9IZK{3W>F6lksÚ2z WQ6H`4C~vVl>ѧw1 JO'2ʠz*9#⣣X?&tU@]{LSia&Sqcư$Y9 ^ Z j?.NKMf!<kQ&⧲mRԿf #^+؝7 &2Rl^Mw!Rn,M7&dQ8]Nsw.#n & |!0S֙* ?Jj[&%A(Y ZP V eB'LtG[W#lxゴp1q HIB1;BۿR0B:f9Z=IS[ibsű4Q~ )HMNwoJE^6zO :uUvH'g v]lm5C%ѵ+_?8S 3Mtrc, ׯH8bO EE鿘|! M[*C=- \oXa*udBm7ړ2[̉)YŮ>D'AN`LbֈgBt+}o_t07Lf_7@So˻ەHd;q6_׹zL٨tV贤 P@:{nFn[tQ9X sE~Jz4nu8MDj .}XETa7Ū6 T*GYPt0gxQ'*݀udH(GfeiǍ )bgnP)q|siԳRv}ȸFw]DcO阖M ef/sD[K8UQ9"ݐ, "h =txevTh 1uoxWQz`- ɏKwɎckds Bҹ5cD'(J}q񡼩 =X'GE 47jًQd7S܀x2bČ:< hu'IRr0jWHZ7h*ٝe21bN<'6'3^"n3MO>Zz]z4{(<Ώ?'|V56=E6` r;zOWrkVaڤ攰BFw )ON{C/92-/ԏr^"շ伖)I]ЁL,y\FuR/i$ǴI?bzs Z%CEPxVt(F (QxPPD#wfX_Spbxƹ$9)?7& ͻ]A7>Ems ٠4^yFSW#Ъ\yK?CfƲelpYԂJ@h4IKe1qޯ4LpeX'b64ָu.!DFgl fw^ߧ!3Nga}M+u[&a4=IإAR #*u$':HDuX0Qqzly#7-"FQރ8bI1:Ї_:O`6V_ؕtB4ni 0$~uàϡ0T \VTLCDB&Ljsg4Eu[~g?P2m ַETgRS*P{Grm"`bP32t@T=ͰLl_ TʿTښxƠf F B`)(l{e2E-> NDک{3H)ӯ: 4.%E-Q)!Gm$bm~iZ7D^Ջ ֜heuJFUV_k3Ǖ}\`s> S%|YRybd?^$ V{:U+۶e(>,fpJS2{Ș6ubt,XVĝ< 縹X'5q*҂l*++HD |Rm/̺k?tƸQOFr}qDAcdd5A% dp.%?,}Jqt{9?6jۑ QY~xV~\➅ȸ 1;i/x'%^)B1 l|FQ<Dc}j{Z[T"@2HQwyO8z[{ЖtYB33oEu/ x(Y*2OtKkC#OJpٱ%4 L~Bb|QiMEbYMn%n` (CIN$8Փuo > ?֐hTcx#$>BxVB|:HG~˨]_a̺ .B"w%5DZDh+Hy +b!j49?~m v㪾}0\7:2.at@"=7CVw)+y}}]\~EruA#!99l&o/:j%.?='#^cʗ7v߾ǻkf}s!䞻uc!roxJ47 *|?s%KO0?UfAɠϫ@QWn)ߠH@LA5Dz P7<?POZ,֘Oۛu)6>tA %bxԦb.Y! NӰvUv\L@)[!ţo+k{g:ޯ/ak;$l D5/ `LEq~j"1]M8AtyѾ4/ `[/_uL (ѫGԧ1'-OwH,u%xF*iHsYv `7u멥%~a'Juc0͂zJ[>>Z{Ξ~_ rb"p=G]!|;J!au!%^qyյ!XI_Qs~(XaXW$S5a±@J?ZI [9GqX3;䓏ఋAzKS;3ܨ 4:p_L][4NlKI;(ܪlLӛ~'oV*ևOa ן,sTw+}u寭k_;  `o'phNՒOy1%Hm{Yϛo8}`Zzڳ7vL: Q*Z“pɴҜ5o6!Pⷹ\ %:50˂Zl?3y7Vm 𹽵{ jl'8a*iƐ-;ip?7:|2PEm+N-lNHWvoy{q$O+IdJS\)%ISӾ[ӖXuYlJl/8 !꧅xm2V8pb>y P |QG8tR-)*=/od|\JU@VbwGȆRj63 碠.u]:|!ԗm+m^7[4~[I.U^R+s\| UEdˬǫgerL1`uR@H\~LOP%]Jwoi_œ%Nh ֹNU{-k!ʑVyk:9Y,48s/v"MDF`z 6MR5]N > ?Hh>0Oּ|,)߷~קN4đzF۟yWP3J*܊PMV@cK}.J|>a= yQmx HRUab0XMYTtQCnwNVv%~%+TнpU3WDXRP&+>.GEkjP_TE[CQ'e""OQXmxqje5 YkdǴLj\`"36lo`@҈KC0̅Oܢb[{7=_>?ţ/cf"LL07qeC`[&I<L"&*l>1x.jO,F!͉"<7LXN(*R{-'^,)r^͝٬:RFz ,r2SѢ'?y%Ѧ9O~aڅe3INP;_*?J5W0ELޙn q䘽vC),ҫcȍ1%"*ۖ(e"yP=%!g[- >T,q,n{~i.o-7TL}#gn1+;[hv[KDi,z {/-ە97EFƳ~UQ'I AYX?*ڈocྜྷ`q v4@О+фW 8;*͎`M4۪ R&[]QdܲT!'l eZGuZfbW(HBzZO~JYʘcf( !d|kJj5 ZoDG7rpٍcAx::fqUX<f,m ,4ô='`paHw)?9{Sv°022it T)>IL99}0\x݅8[gt Uua1s+BG4ڈ&!vPUwq6 ԟ^AZ=H'g6CG ihԅP2Ocd.?GMǹFb 3. xϋEX[@tJC>"ݛ?)sTo}N۪ftR*08f8\`%U4f7.t04Kqi8+c̈7&^Ͼ<`.8rxζ|\0}킸+[S@SD9/f? {N;HF!ݮ5%)qqx^@DUKZHUwų|*^k|7iNIb/5t̓pu"J]"~_RE}PG<鞾M V L Gd?eC,6{`%oCr.r[wB3: Rp6( :;M9<+8 O#jEj^!լ.}3<ѾxR F3ޝᏨrbĘ*bY Aeˤb kiScc ) W&vd8$J5Kx lD;b_hlN8a?ӖS)$Gv,nD!v=T@N0=m5S_Wa<8 ؿh({M*l,e~KxxА%33ghPt*93f/ b;DIRBމ*('*M) WEndH?,}y_sRR̨6#e4L|V*Vufv%F+[QhGn/VU[Hr?; xu`zum@R-VAi{My7xf8Βn3o mL2ԵwIUL.Tf`{xä!!xzF~@|LX>EO6_R aOfB̢~J ^um[SmˇH&]R}.W(R(``" 2 R ; ~TO*f)%0.p@E? q[8o^PTґi\f#Wf;[ ݦФzTV'AvjIbz{3%Iͧ~~pO{v/hȱ2tGk*0 wW#GS.B8k޿5`sI# jrշ1 bʪJ.1|`VuS F`=XR=ތU K4vfF;({ xtS 2}Zfp \R[ iuj/3#_|jla~Yg>c#xczS"z^+јtKيHwlѼ{'dU#x>RWʝd*wD :PHݕ}m̌VdO{,y"g[Ys {v~+b< _4} بќ9%W9Q!{hn2و;O3A ^ tJP ́/4JʿʩmyK(VXdܝd_;rؿiC֣6=Ů*$F?VEAu2-1>0 >0$wDn/{Mԇ<ÜnˊZ"7žG}eIVŘEÎ( yx Rf#Zo Ҭ+WUrV{fp̺,A n%(m'OkƝm4ZnEv1mqLd% >MhfnYIUr^Х01^="ѣBr繍/ u!E'BNIPzL,|?n{X+q*м%poڌ~oKm"I4I6ptc~ܢ Qnһgx^к4,׍7xż|8^Un|q;m9Fl@qwA@D2 4]{u/I6FC~(Tɶ ɦ >,4pOkKࢶײeNԤ|JXrת}Lt޶Ovm7EK[t! v'`fp1PE]tSd nbh@T2:Aͫ|nIwa j ϮTE&qu脰7DlTzioYyC[AJKV6Ku0V5lwB*l"C[mdwu*l}ⱚF-'^~MBe BVe +"h"a͟ڸX0V98 1i*e߿OIu8-i+s'.Ws ߴ\h"q2UP:pcӒ."th8IέC4 :`SE Z~PDlG++ 0-dnĦ gW 5buI,{@sV*X8֛SMz;9 UDs@c&1V`fXAk# FdH~$V>9'w+GQ:+BW6)T[X tͧ("s7l j'"X;p@V^oyu2*Q(E]*(KZo*z5zZU5Y@;wnwؿg'Q6 `q%I㘩 4nzF%^'QDor;:/,VuWW̺zbkk]PU\{:]$Ž3#V6_QLDZ 6:u2f 5LFr)gxLsrvTL6B7^'Hu吩sGfp@b&4hqEWʙa}UgrCв+LehidH70MzEfش닢 ?:m] N'숺.Q.]WF N.eBg0H\!qX*#doqwO w7R|‘6`L+CP^#n hh $٬$<aU|ePqByT/@q8"[LC@J7?ƖAY#v?I/.]ﵰTW(;F[f26.i젛U0Տz8}L}`s(+m4qu56K@Uї\~b,?+T^XʭD:|p-IA'XԄ9GyC_ꚜ>O+̓ j]N}& ="So-e9Ayxu47OB>DV #wted]nt\Ig6^yD:aj ??Bq<ջ(1."%HR oc"(E 9P,@[yÁ( QāCtE|Y|AlY@*!h*BA2Rujw\9C9eXdsٖ/f6 /WLj"_#M+a%CU0|Z ");NК{ |0@a1r'zY)~NMՉ]`ĨB.NB]kx޳ \c&AE`ZhAf30Y-f5u ~3>q׶;*ˮ¡xR9h6˥bv*DmQp/ǔF> 7F"T #زEgF 0u1IMɎFB(vf8/&ۭ/! |)B\B-Hml\g>2tc3:ߙt۵9@tb(J6C?{GxWM҆=V股#5BPpG!SgnT)Ab!Y+Sr2@08 i'V7{ܻIS|8k4}@q`jraQI"h Ր01_? q1!Dk )d㘽L. i Ht@R%H jQ57 q+xs]:=b MdggVFi@]|5}|/ @ߖH)p|.DXTD#9耷Y?Ee/QeWࣣ9Z4J $mf+d 쫈x Wq6p`,ͷ,ʌF2-@"jn`r. 㢞$#v/PtcO}~DU:SN,<.(%?΁O dhd#a!`b} dU#H#f!&v&}!RhR YU]F `Ŧ?$bl98 o9WQ>v5xadi/ク^+ƍ}Gm x7ho:iĻ>G@i+n֞^m[`L@Z1aBB, GA vp th̚VsˈD ژm eN׶ɿxmzB>FnET k*ǝ!jbbP%_eu]%"=K*[bR+g8ƘZcߤv>h9=Quz ڐQSK"q~摔ztQ[t % p%T1;!4K߿zW5g} > `ʸ\M\Ķ ݲn5 Q21X ,o c  .l%'7tdd?5T4{ez!NNOۡHHK/li5\N0fnh\0-.j:~?GgKqr2*q"Q )p==+]3yHQY8HZ^_4@1_1喣K. b.haz& |9B ӵ,@n$7. ؕ  0)3AӕybSh8Hw\/-JJJ+z*dքsX7#7,=c{[#~(juptL-Ҥ~=@ 9JEĿ{:gռ `MtoB-0͏ێj[_RXzk9U MH#~lY0⪨AAUhn>3b{72;;qM/ +`B\V<q1+OE9KZc쬷M!T1 m:f<S =Yҧ fR`šqzh4h)W--U 4hlE9GhaV0i}Đ/1D|p"xH>G A⒱T˸^RW|@-ԿE6s< K̙ i1JAflU@Iuf\t #nDBݝH qǾz['Q#UUUpՀ,{=:rFzĠϓg[ۚQHYnkf._eeLV Iu' c|\6yߞߩ^"H'\O<{݆ rSGL+Rsm"W|u!|RTaՖ;'Եvir2-Nn^Y䇠ےw{{ o\[qɱK:1!x.Y5/hDg%ߧ^R/95OfxQ|JfW#3`H!f4yeʹj%cJZfDp[Kjv`zͅ.u>܎g`ϥ,Dr%`_`/laW$f8#\Jۻ6@lK :D 6i*GYXu|zD⧌]e|TL$GIa&BĖwwWVM&DcԪ[c嚈c5Kag_h ,L(vt%U#wL!Z17 U%ʲ?z\e +&7ɫ V @*KMbC9`'Xnqڥ옳O[vm|v3(Rz].`aȯQX%8L:s&&k7gmi&&|?K3+ 0'C -G¶7oÙ eE-jO ]namE{R6s{0N4[PXvŢHI"Gɮ1wM3RO!`ypv,^KEKL t-dԞ@7UxZwH%̝Ż4 [̇6tB ϐ1<4H-&BMjW=G=,nBAE0 yv)>[ʐ;M&,^e&8$>TEKL:(n'զxI8AIkISг0$Bj^#YtnB+晅UN9(& ر \gPuYb##;~Mpnɞ⺓bڜw]ի@= 'b'Z;*PkNmhi2D?@-2L1 |IQ=͜0 qQ\_$)=ň,j)ͪ?*֜_<bWbw {B65Y5)D.zW',(^f'HxbU@ up0i agh0+ߓ:}fXi/M=,) e{T==3h[;o <:OR[Ñ.JV!]tl[Rx}/f.7[t@jA?i&Xg 9b>qy fZ%7vXb $u|;m:i8֘F]:; +Yb6ZQgSX.VK]kr;leqR sZ9T,HN3E,5߾mc'No/r&S#Xo Ti6U w٢f]rcQ'2 Re@҅!q53(&@JkE}i#!ZHd;l Ⱦip8EIYd-)ɛTkϓ%qXð.?[@drw/XPɶ>5Aɝn$2,z!q7v = =I%4qm#?B5 r`ciNHxڦ39"_b|@)nGέcMpl u4 mD:xvṼKYf'XWS\ BlЖ1mZ( t$#\y|á* tOB摦GԐ{K<_| >AzQ0އw3)׷N<&i wԮ-Yen'٪\R?j-!T \TU0OL@AGzx6.!GZVDJ[M'bcFFB< IϕIK<̞뜰RːȹRjϖJ}6d+\d7W~#3ZHp~ 1?Is66c3?XzE 'ԟ2q"9qdFb}v {в(/ H\|fYԏf!J"E)rG_*u9wYtnhTMgc57 6 d&K}OR$>ԍjhܧb/R>R1Nv] > F.8'-p2 ,"3ADX ϖs<⢍*/>&Ô'?#!0eVVNfqƠ@fPF"Xݼ=Yq W}:>[n_&  Wy,8W]@JP׋Qy"yU륄4 #Ç96bi}hs:8UYL@yUro1nXԷÃ*/HQ+6Rv-5CBBVt&Gi:QTIy-RA8{yp\^%>'ۇHyG%{K < ] 9ΛQHp%8lCRtnSBWE1[50Dѩ5x(:gݫ/R $7}q< kF#ƍ-tDHΡRS Y<m$=z؊O RoH~H,s"Wy(x\9?5sGUQYܟf&d$LuK`2zL0&,lzy<Z"=1D7?#,c~D2's~7p\ͥ&ӣ WcQ DZDbp[`(C&"sl&(|dp"m*нS4aOgs褱WΞ9A&LN5/&JCa%lEz^ 5NZpy zIfnK-]f>ж-(G0)3t02O}B S1F g rӂ=r<<1UɧrՈuLƒ9%~q^Zϭ`C2;yHa` xG\ ʽ j%IΈ %/!$(̑+T8^B9|nv,c>D*9Ra\Xx?a/h䢴Mw[{iB&kg: L!d ZYÊYWGsYsyMQ,/WxjV̘~&̮渭F+F>^51WS:}3T4O񡁢pJXvrqFjakaÇ Ňgkʾ&dmj, x '5TAAVF_apPoM߄6u:++|1.iPx"1j^Ź6D֪|-2UnJ{g򩝎{I(%*c6r刚Ʒ-mQ[+Ԡj 0#mS醺^)r3bpHMpUbҨd|vi}nM9@s8QKnRICȹHEk'1'([a"G#Ʊl3HVR6Zw/5 SBO_Õ&H4+uu0, UvG^ -ݜ@7^1/u.&R-!I0U_T*j3ӭcƷV[t})ʘs]tJ"K)(hpGL㚿]CQC:zd YQGOIdWS -sa2bYD?@znfrc6$ZAJ~BRn0wv5dX#t8bM[rppԜݰ\ ڼ/;L|y-`rv +S/,=,C \Կr6u]pohf1v4kt:zxuFFɑLSph9ƺ*)> (VD[O̴[fD.y C#4zl\:NxCݧW(L.]  uG#H27ݖV|- l-W@o QسJʧUf\?uFo0Jv jq).0kU4epF1ThTۡ^DBJVJUvgB(/=Vl򈛻.h_'[*h.-/܄t^3Rޫ!)kG-ШuO ȒSu\O~n}LɅcuLX-jBhe)g37!5%Vi!Vy1hX{wRF옼(Z%h]f( ACxZ(yGp"N pTl |qͧ8j|q,/P,`uQ,v>6q}H G{+pN@ګ㐳g2mvYizY}6!~)תf;z~5?-{w6P{~ o k,1<02>`o-:Dgdi蓥[%4lD#4A\a/ԢfT]+ 3NUmh3h,drAdDEUh3bPOzT*G,nFq#uBfdcRf&@ &9o({@f_ѐH?- wt^Rp=;AGa6:MjI? KmxA#{kf'?߈C@f5+kYc{= +Wea4sc!!_w@ OcOLe?u+xZ7!I8*2"e/X`JpӔ.`~SSr]pPTn*bȲ^ir4(!Xֆ:4Ϫ]wrn=w7Gh0nJųPv"{:22DviTK fsl}PBJA)I. KEDLaB[Q9Umw,^k@/&f .\̳ FƳZЋ8(!!c%Oÿezv}۳(hW7Va^$[)?3Ȼ g<]<I^z g/=-l*+n\7y{JLMūNRvHA׸f0upsY D07Pق#UivدQjU&g*:ݳ$?2C,a#x]/57΀03(z=DV¶6e۽ڲu)OYaDBT3Î1S{Suh_:oZJ?.x3J,Z{Op_(ȤPh.?q2h?Yx\57:n!V6\b?:: n@ۑNwv_"VI2ǒ?@^`;yy ȮFmԈ3$ >/6Yj]<9 'M瑂o]8z e6<|刳RC d 77]\޿MƩ5,Uy=Q<އc>acU^Մ>`R&;WhFvL f 9[.ڝ||e׀C܁P`ZbX*ry\X902 0+})7Č`a~:آ3w?oŔ@(•KU8n4uO41]eL{i3{oB+Jz4&%SFg.z0[gUUw:p&\)iUU ;`~^M ,Z<q6Ipp0\ڮt> _h:řɲ GٴYKDzZ]Lؤ8a" 1"Y33}Rb2)yTS-2^tXV;k.sR!{Dw,"l9oɻ(Q2'v¿Bn(q'`\˵`d)KE`u_s::ŘغLF$O=ˣ5`M ldĥY[5 >[nqA>Obx=-jٍ&=/ꎞs(V;l$Ƣ-.HvLH$~d<ΠO;'k lnX/*|8"(!ahUؒ++OH>z۬!yOۜ}i|uIJjp93GE^^A#/BqS#L͹m[?Mm8 0u!sWA1pWs][XH*s'8/FYq_vY_G?wSmZQZY8I|&eph>S_ڼSn W'Bkk^>2p#-E_@H +@kS4eH7kO]%bkj7^)k1I9snczsJy([&\OL B`R@H |$󩐱3݊+U™<*7;fó>NyiJ`+{[ N06 }PwTzBZF:k&[QL\qK F%c;Air(2@Va[ZK.'UFR5-.B uh+)*l ޗKVU=ԢA-ǶYsk cv'}IqvCH/e ?j/kabZ'鏳$9 tKaANUH~6j)Lű:Š- ;deAaz{Пi:vv4xH}YÃ0[YZr> ,cMoPPݷP}C& OŖPf%S^ʌVc)弱?fbdje#-K{r%Dz2RqӽkēS;u| .o Υ)l%]Ea ݫ Eh=zzQu-zdᄺ|o[0`rF]wC ,A4^,'&5̚j>{(AI4ߦc+)H0QU >9OSf~o<>Nj^0H/(yjj Xw&D1@Hea׷F *#_K%SQD"7ٷAbH`sуX#&}7FegZqh4<$speIzMY/Y K $DiB uo^d* *EH0b^ta' g*!~Z"mư+:+\bO*,x3-Oe4 ?'yӕebB NM!'\guEyA] rXw;Fj`{Z *[]DW]u cUz:!QH]hXAuʎn!j["I%6˵@RnΨ"5_1irSNa7c^ӣHR/aD|-k Җ 2^/#D,Z7m$؄BgpSwvyu$+ĝ'$SJ"9=Mg|t6׉[<3 s֋Pꘓ8+jdҘ6H@`T^7]s/VNo*$r/q )+5pP2P~&&]8uHܔ0|%'Ii+UXu3O)r֘쒻0уBɤ$u“I!!ѝ Pl\HYR QSZV-9rko#|f*mBݠnh4KMTqnyG tZ 왩aG`—2UD`iٓX>ivx*mhd#V 6k${͓a{'hC+uc1e\ Pbxbuҁϝ;ԧ6lkI<#k_K IGXszM>E$E9aA]UZיǙ{fI$n1bO=SUO y7e,* +#R*6T#[?]uL/l!˳H\iq zˀj.U{q&7r@ 1FSKJO4o3$:AsGQ=^_RVУ[9_n_(4@7uMl5vWJ1,,"?m(yBgzTED239&mUmzXO Svo!D0H0\׀4!G"W:kɩ h4 -C,\VAN{Tj<#hzvaQt?Γ/m Lƭ (Kx@͈iv4$. ">N<ԭ$(:I@xp!bZUujYL|\Bc4Qtba)qr;bRUґ_ּHZDgs9P愼S]Uކ9PQ(k8B=–弹 Oྉ)Q29c_w86 %(#5"&w}h m^;/1 gkAbe>g_)=!#jS Zs߽N؜nӋ69].\\.ͳWVŜZm,DXO6Uݨ]ѕ3\e~j} #vR%- [Sr/Ugr& Ph]-:2ZߖR m`m;1Y"Xἓ:Lz8[ )&U Q¨4qׅxBlLFoVW$5.&`Is_:ϲKM#S&λ#QEEag]JX Q6PS̛/QH}sMt |9% Bz 3QÛSѦ&p^[n6PpNZLʐNL}yj Mȃ~4f- b--azzj+= p&MixE @yúS* AE`aE/ ^{շS$̨9rOٮI XP3E GphDV[\2S 8^!كƶn%}DeWy蓁P\HA/1R(5 ?X7|\\"/q&N̫":4L<)7^W'p^Lk1H,`JEt$٩=S:)憼 0p6G<;_?=~mYG҇1ՌNK.z@\/9W#Oh) ,=&fF"ƺ7ln1?WU(d M%Bm+,]5nTŗ?c_%e%:;b9/c]z~$ԉ_(fhkpd ,P*du!*LFbq9b&'^LGM5̓A)̏]h00G7rX n6~0!/E96rvxQHigߑkOd9F>bdq81]\0ΐOĶ-  9{ 'jp L~knnA'J& 3~Ԡ ®VgŜdn"磦LY{tB sf469Y̌MKi _棛D?|Rz ^:gRپd`35{D8DP&s3Ή&)|X$~}O=iWUkB?>'{`x|bɗ:faF*D|d&ȐA*EA?6^ʙHyCH@$~IP= E?aLHN)8 ožm_U䒖 w1e!ݴ1mse6j|㦹-Q2ϔi0,k¨Ջ)Xs'yDDq.trĻO@׍ŠO|^iHX>Q.at.,_6H\ą΍i&֡٘O0tnF3"E Z g NGj!4Ь 2=+=[[Z=-TRv @acP334mSٚ;Oת,,ƒ yi`XpUr\@ 8NuDfb"Z1E9h &7㾚BC] ('nݽZM;vT[r .Sc[Q*T:3{>ڹ)ÁcsX"^kت=*n=W4>8ьc jbE~egp8> |JM.cʮ/ZWJ+Q :qtVRIv ,P#<%_K~Ә$/^zfm$F.V"o"} 74w&f3v9Nq LTeXRЀkLxY-JCQ.kx8ASa_gP;+v@ }ؽv67Eۂ]n?"ulٕT#tH&e.b qF0jƁ/ő2j_ZU kgG)SCjԱ5 "ip|xoCaH!+ħ2[hB4W]z"V<=v ,lE7T 6{\C^Y,f 4d"%9>w 7t+Gh\m>fC|YήƮ0~•_'HDfb(.-U%guɕ(iCPE3RDs#\@5w耯P{?=&NgۢBGRQ;dL$R@\z2g_" Uw'! lyZj4LH:p.ݒ!I9S-o*YH^u"w .~L EYt݌oʋ!wܽȽ̈́Ĺ|W#,3&*Ia1ߨ"4^%>F]>((q3kB34TӲ=̈+GEƝ>}u`rQQH q21M)aيGiM;vtWa*nEzܖW96YE؞TH)Ε}T<(B7oQɪFXqL 3,8\pŖ1(xܑg!d`vA-bxw_?$mdCjVn0%YDG4 8˓gv]!sϝV6MWWJa ,^9b5v<3/Vjt<l*9yj_qRAS %PCp c1h8߻b?W'v;4\-nGXi@Mnu@Hـߝ^DS`{uI_;k[a.<0m0('Nj?+u~%V[р&|1<\@_.|9DqXRûC>ktRV+t7u[[ 7 L榮U4Ǯ0˞9⳺ :/yS!UՑ/IDP;cpA cxDEy}^njIƒH/m 6кܘ8|+\=̭zV'{.ViGQ;K0f=z-IJ8QZz]E~_ ܇M4->B=Y;A͕ sEd}9li~RSkh!;2VP,N흑 A.%/Tׯu ϶mc\ыgpYwIĸ8I MWܿ+ZFv| ?ܔ:C Y#ɯ)%.L:+B'ۭhĩkmBi2źdbNw96)"!_D9 Vt6|Y8}<}rv+q|vٳZw+]|_f70ѷ?h>&퍱#/HkQ5m%aZ@ jT mUr}}'=䌅%tGdKMoŸ7 )Lm|_ 挙L|'=S) <>PC7K阈ֱb-+"FqKCGPtE/.~'ksU6@IiHЄ[ \rܛ?M)zQAvx> 4-c+r*_CA/ʾ+}/KXDjqZ~s`aζQ^N> dz]3҅!ڮ@wyĢ(i,&#!/ޑn):NW+>cr̫95rb|TN*]:Vg+>3`? rHhhM2heڽd` A+XŌx4‘sOjޕP,?5PjkFBDSR3pǚ Hw&E/9e0|'QR}΄d\0?i-k;ms7;$~[}em&,Y˒q𷃘I+cv]A.vp6Η77 :s ǖzŴ.ڣrůeSLAI O6$8돧-2Tf@3(rEYI5;&(7Lq]"m ;y]iA9/Sd,5 vӡ-e,YVa ڈߧe 1\O?BV?IR:N`.é{,0'݆$Yg*)Q|AA;niǕ=ذ"05Bd.V|Z!9lrcO&AkiD%Ā"Wlx ?ׂ%$܎c&0I]k3x aةSl衸=nB.01Ыz+`vuYu|ě]p$Gx!TEx )>8 / ^V"j3)H#2< s艃M_s#H" O^كIy#Ċq* ԧvG P"#پ=!.fwMhI5#}TY !H` DO`q}9&Iedi<Y_E28W㶦M$UL'XG:y2hFjZ麬!1czzWHDlZ#|V 9P}5@xg#ߎ O6LWb.d'K<Ϡr nd&r䁐ǧ`wzAoǨҢig^PBdAW5^|Z1rX`R:=$-7f HKuŨ<L8*Bfwh55'gr4h LA[VbSO_{];L--ǂ ~ZvWtЇ@6$VV\Eyy:o\b1dHs }J%Qb7Gd 6r ~oI-Hİ$wpb&2jVÛ|͆"ϥj{d*5NmhG!k^U`~wˎ `_@cҧCϋV 2=`\yJ=>u,/Vpo` PK+G1iƥu<Ma]e"~&s[l2 .crfT-ƭKÎ_LcKS7YhufP<]`f~ё Sj#)XS|@Vy>U8$r8kвt)x) 'N+Rv`q@Lg Mג]_Fb%4G*~_ v8qu"2`peǛKdAu"4AϢfrWRi:GS&Fa4Yg1Xw:OV=3-Ay :a9j`cAF%D|=,SQP$\OtgsW4-F.&/ UK9Ege,FҤ%R + I,=E) i>,FکUtV[Th0tf}paA>K6`8kݺH܋peeZį|6 nҋGԕ|e/d]q=~J/FUh1Wü`Z@&@K5<9618nW+HOXS9ٵ'ކ j<|ƨ9z\˫ldJ|p}r?RCAk(*or9|< 2{e"u/ĞN7>|H ,ˎKNڳUL%y^Tt̀k{"q2RH1H3sB-Dp_@1dƺZ{'OO ȱe 6)XAY3]^_6djH]{ntTl^PxJuwCZ@H+*HyhDZ&rކ7FdtQo/Պo?-ճj ysȮw[_&)m-:;&To g$q*1ГbOXӿZLCh8GokiMXiQzY:_xodhiVGW%[i.DVODXY[Ռ/0 4 /ߒ[!' QqduFd"F<8q.~aFVAMmFOsuB!v/$#Zh%vc&T 9t }}@Rn35-{|v2zQ~NQZ*l$[QzY%JhѓNeS3H^)ۈX=q9N<*AI N 2]SVx">b06Ic.9M*pf ŧ=ne!NJbonx*X, hfڛ= p{0M D.l MB[IE>o΀WJ ЏR>'ՊUdn)NJHB/YN2I1Iڂ|XYO rwvn'\د-/Ю8THRR@=b@.| zsمkzl'A =O4ٛk{\T K֒{w-0%O_ [+nG %? -DiWrux6J K\C0&z? _%ESL3ƥoU?5=R_\x@WjH4xrr!GDygMdUߥZXHe.R2שHy +Lnyb};nv{9eq,8S}՝ug8\+K"@:fKL@kl"sҘh!3~ (H29-3:PX(YadRRzBZV3TuVNì]C8=v''w+-r-x1Y6 EHcMzs|E ÀoMs %z%]NWm3,SPR: 5/""Z=Y"*q{$'fR s^H|> (8q3U mzC!CY^4 İ^rӋy(A0 ێo|:J1[ \zr ~MO^t#7 4C~":ґپDY"9Sjnqzi(heS5lþyjf:U"p.2>뇻2C#,ڦeNyBn]u~rJ"3!y ίErV1`>>#ހw6vmIs C,3(gdśxť{7hRA 87H#t 42wo%c/唃y;(UEY"t-!j.2:c\zgO&k^ 6NZԷ;=ª#! 4z- u^ᨠ{7_mHi<*, 2wГ"BR^*rv*?+bAyƺ?¤{<&8.@$Nk:8XI^d93`A7tK^Lic l2֘H? ۲4k7Ṃ ] 'o&tן)ūY¿)LeR̖^gʯ8W2ٿ6!UȁF*\[Ԯ5LUI)4r4nʛ ֋+ǤHYؙ8oO~C@veiޛ9D|L*s=}0qpQ;tG؀  Ijdn1} -]$s9 2u:\5 PYxe/\*$ ]H[,=S()Yrw΋1 ̧/e4Ѫ / q(pM/NԵfx+jtvK6eQx^(-C67$F>Kۓe?nȼ#x"4'V[QŢP*5&yGZ eG֕Bw?Ipke5;~}CoS"Ͷxۊ:T-({hAh m_7&g#?X?!jȫVJ^tEdiRra5.ї.6K|fE,E$:/w,-'j!!UOqaGW1@n/e<Phq)21e]u(@NF l,;cC?b"l='K5)&#GU37 t!Lvɝ ( BBG8ξ2/53 x؉4lkWVƹjFLi?gPo7q`p!P%X0i<:%d TΌ3cݗQ%MrSf`jj9nfܸ{@Z!RdX˧:H 5OC\+=*[n]/|rZ]ROG4Z#>lv&^R휓RTz5'`?U[?'1(60aoBz*1OMNm=>l~ۭh8TœAWYRIՈ L F^~6hGXR6)my'(-jO5ɐGq%ġ^nAZ/+ ~`!Օ;'̣8;Y}B]{MVrPb8 + BGR<}Z05Z4¸tٜ,ʧ;PVq"fF4m EʏDL0k3'…U2J^pVg6ڀ}α#]6 ۔8 y)b%NF\dT"2: +yz8X2֌ a+.S*70l+1S*k K8v,=4=x{6*\iy,Ԁ9t/ԊeӜ>(al9V@R繿${;wx"Y"=T*NoH^Su('&>э!$׬P*y[fk(45//^5EPhqݚFU,ڞT65FD hVazR5.Eq߆W̚62ULrm?Xm1)`dζho 60O]6 G;(Lck~)2Bkt(`x~3mSf)v3;''v X~EyAe>RTΧP4'|$foB m^ l g+ϬJ[P](HQA N0 fo?|WT1+[łL<٦ oX1yۖ T,Çrɿ|M*>İd l?f}+mj7|:Gѿ=h>JXJә=F8%0gpƟ,b࿢r4ks[_0cZHcDEOiG8&O9SuGA)INlǠe J==:IOZ-I T :8޹iB_}g!o٩lp˔D)n]=QBA6G]+0akd?f״|jrh%]0hUF z]A r IOؤ/jaYynMtQy1~cdB#xx0dp@4', =:tBKQ;!4yS<+Ʋ;~fJN(@SVw&? 0ج著`˰k^jtE Ў/hgZ1:W)Uj&F`Ra2sSSTi>ʱ eY/'#+Il~>TcˆHOb؁8yks Sɜ9!;i2ˣxQT"eCvc]c_{U)i' 8"S{IDINIm2-x&=)gna\tA>"a>f9W2q#i!!(0 ri#?KH'R ^aAM/ CI΂C![>,=v(ވ~wL]c sҧ-+xM*gl6 ؓ-kC!+"X{RaQh.5մ:Kߌ,,NC\P) 9QK/:C, VzfqXt*.<F?nK"|h]08|_Y]>dwEak,G龛J Zh `Ssk&ܞ@9r._qf˵:78}u=Vf*e{jT.}. wuJe$ȺܽbF0}b{+#D~F|4&^٤n&D;gZ.Ou5IL`,Hm6c3LT#Ip?pq[w{)@7Ћ*dNO]{c=.kw5se=n;՞j #2( jJ(Uq0czj3FM4:`ݏ}&Kf"0 _%lƅāe2n%"[o >:<:MżrOFf\.?XfxLJ0XcN펁 $yrM+M^V6܉"H-FE}5Qh~:z +1w|Y8?N1 딀:'BYys9=5%*kSyhE@ ( "FzIiTJ)g=.SCKR]-Q mR$+30lſTM^s?ۧ 3i9 liZxl$n|BMc0a.'Jikz%(-(>PDo) ;(N<fՖt |.5zXyt~q qh4{ (;g{Rz̋ `W.b@6z`)q^ re1{emU%H^ LCp8Wch7|M?Cc^4y.$2 4}x $аM]E-ѓxTOó]IphsR-4䊣a5"TL?;Tߎ>6 GXrIWb E&!$ȅ\ɗ49m)Zj/э9|a %ZnnH'M^tuX D|S؈ }3ڃes;li꫓ʈ+d1Бmƺ-H ZOq /mk0+E/:",LDRRtzt%E,n{X" E}cXo42qR(\^p'[AsH[J %6Q(I1Gl7w\I'\.dC3#G"ڱܯi sJtJ&cجJUF[I]Q%} ~ehXpj=Zjo%Ǒ ޺停QGQ3n/씬NE*Š5t`S"yT5՛h\iG]6O=?4hOKlE/43)$QP.x;>ďh8$tF.K1,Yzƽ3ڧd'bWxRæ5$e?.VXdfCIoz1PKUmN{[Twjo:[︳FȾl] ZLMzQcZf4ti 0܉mtEk)2jMcFC=ߌ/ 7v;J1Yo`>cehXh"T$ASR-w0*&) .J9->1v%3. ľЫ!$?)'zH#zRljzT+ղ)d%#fYWrThhkW13'n\UZQȎ}m2%<.dY'M3k"s))sODnLMgENr+5jݯ-Y":#rZ|6 mja_-6w+_D.Q26iLY$XN½Wxb, 2iel50EW ӁP eJwnS'yH_2Sf{s9f lJ1T&,.ɮi JGL7uWǵR4S6T&ljvYZ@fcFO2jH ̠VͻZؿՃ^*U'RP\y!va89H:(pEx..Fݶhd>R[Dܸ-Ei8ؕd9)2 @%%ge7̌ pR6 es1hcq-tB;䊲m4dME0 EWGyPL^GAh~Xx -^ژ+p2j=fbM/X Y\Z0vϡZq~m@dts#+x$ŐW3" @_r&ol4ٵ"@LPJFፈ%ziۏ4ߣ#>YrIc~M]3 AILLQehX _fҋkyĮ[A  ]sP|@+˅ f7_ރKh[ \ [*-IZ_mZ\dzpZ(`rg7f7oI0{&*C4ׅ2Ttx4=(vM$#8 C#Ӯ \?oɎ[daȧɤ:kbލLI)dD;cIۿC!ӦLzk6@:Y`muZo;Ăٴd }Z*O| |JxT9% fXp68 *^dT^!7(;'m,8gAJ+ȂTDDʄ:Ic \|Yf=8n 6Ay3]VlWUH,**յc`0kP65Vő89­zɻҎbu]!}ܬta (TP,NנUojXxu0q,PUwЗ^L?a%^9dk eHɝ//M=P ̧dY1~7L{EQg >-fĦ2Laթ7z1-:&^}ǙpnifV}Gb j&O"F a:N_%`ghRP 5)H5jXxbq;pwj:* |$"ٞP`FGB2vnc@98<5AyDӖT=lT w\6p2 Z>oC ;16zyW`ۡ0[qLD6cc-dL~/]Uo*$4. I*wL@?Lq ,2V\Ny%G#ωوj.xۍ&\Sd)8IaOKjڪBpYg> g2tċ)v3ɗc2sV:SeF SJ;Nr~X-i:߉d"W(:*@CzyfS"Y3gٟa0+^wRutf@_6zŶTն};@ dl[`>Lun;RlSŎ $LߺϤ|>X^xI%aƍW4`oWxwe_ЭuN Q2_ e0<@;YgxP>k2WV9TCc0jO7Nz]ݴvar&pe$]DpjåRsr)ʩI+} >"t%GDVSVSNmO{Lʝbj\6b<{@{eU:o4=7skfeƃGl[.XWiJT{01JљXj-+3M}P6gH^D㍧-Hvto)kR[5&Tsc:B11RXvV*΂|p([W@I9`LONFn/06 \6W/(LK ̛ Ǖ(\p%5 Bpl}oBм09a4Ӵ*Oi;)^S @ۏ;$ɞY).Ү S]9L'n!W|`!3fV#N?9_ OkW+4'l7DۛEi2|p3 U}`]^k>WRq≎dg2DoEO2%zlqFr֙6,fBji=tݲ [}Q7Z1.y|&?Zi) k7L>9BH@g+?miϱ"AкvܑU8VJVN~6#D5}< HqeNh%.8" oTk Zv9|{QԘk2Z= #dBoߑZϖ܉~ZǦl1 i<={3nb/q|q%qKuXscҚGk*`]smD;=_E40 k#,G]ut'HU. QM![Eƈ ,""Қ|DN-c W@QI_7h-!I)zk.]3Vtt3 {`MVs6T@nGm3P?p/;SvmDXr#XG)#!{vė.3,xyܨM4nrWimDVKWlC^;|?3MLa-MU? QRa=ar̛pθ4 ¶ xo]lxx% d0c9+jvKq/h?ל=X 0)ȔFf؅ud#ƺ!-!YQߩPOTPs5f#u $x<"NF+Os:^?kNwOO<< ]@3'BXEC7_6"+Ԇ毱o<6LɘQ:VZxCILf5)YJ03xt`oآ;2+fY,ݦg`;hU-AqYԾou/ EN`y(f%ڕN@U232PPPsڰ9n 2n:8O ֣y6OeOs$9j)0+ꑹ"*mـǦ03t\{H"sRq}S}4ߡ(ˆ`t=!.#"dӮ~M84Myf+-n` &h{{ ̡w"ɎV|hY`/vudMoD, &Md+hΧR<W Y3[ {3 ̈́Y6Iw<#ݬăew[,A}:(風n$4k}CBঝn£zۣ-Czo'pVa"3|Ie5 ]PG#$D>"^xY%`流9\@I;uIfVԠlkgyoledkցHQcC{yP FƉpoQu` ÜE[x?$!|ӝpGnضoD F1ŗh;LIYɼ?#OU%~x% ~k/샽(OڦEiZK.%Vc "Xw\& ݢ9ut,[W,\kt(4`.3Rb`W)nXt.qɨ=|>KS;HqS? "s ArT(h{ʒl}Ad^B8~ t vŸp"7e7Pq1G([be,{rk f\4wkvtM~9jcp,o%_+ϙ~$ȗݯRV baaw[+DzyH llv̏8ƊNn=ߖ&lݽ:%diJ 7<7m5pZ0_8Y"wIi\:tDD=V9F/JñGw98n,Ȗ{~yXNJt7, 7#g{׿O781r"gڷCk4۱pjE5! }BgQqwc~j(W)^##&CfWeR(,j O`sS7{i:x%Et37fzI@忛~3_jؗ-{k6BYP$ߑ%1WO)at<'SWאqcYi:Pv|fd"jYn=D3xCz? `@拶{h"C-m BLi {o{ƝƉlna iݫ1ҌRD}]/Du~4l)I*h$:JH8?Pptr'1D@dFo{UTMkh1t qH5gg?9eLA>P;m e,ю>)6 0YsqtȐ'c/FW)+C Ws7ZdVma#G4uL;rl^ǘTy},u u¼<_ k, X43BT=bVr*Ag^J":tآ=5iknx@oCﵭ1jޛs5O_Wl^T+hvQ>R#('G 16G+^P՟i'F6&wG]Iy]{L$ ɵRf8 8@+3(`O0cvο{%'WjW%.83 AR X|Ϛ xfPKnGY!&%xbM$oϼ y4L{U$ U<]Wz=k8T޶e^Yg6dɂS@+mtSzA".A$+e%&]5m4 t#oc%>HM>Uk ~AF|Ҧ "=O R Hfbrx7f!Jg|Ω~F;+w6,6]8wS9faA̹P%U\AuWNnyca]:-Oȶ&`(Ϫk0^Jy\"7ݮV0o.6v,EҊҕ$4 s[(Aw:E8+| V&0PLY*m:yULQ%\5d ѐgEk@5)L 1o-J`;}bM:yq]1@6XP]jm7AQ81 eSMCI-6ٗKЪ b /13ͮy1`x$ܺA*@Xn"R>xe}clE*1>d yʄAТuy?3)PDvp8Dy1f +0BsS es xSZߟO@gN5Gƕj H!F8px5}Bfh|vPJP1;>J\Ǽ >;+mM፨ג ~:1,1uY }9Х`Np=uR%T8cZ`UQr5XQpɥ˂m+ܔ@`VPwI%%ROAV%S E> 0=eZl5q=?]=xtX}L={؞ 0Z^)h>Ÿ)ԼVx^`*o/K̫R~8+17'dj>W~Y5p@vQ* kJeA/Z](鎣':q0=vsrΘݟwP6FW`Ķ) Ԣļ.z&Ye Hs?$j<KzqzkmP1js&D I$1滕(^G`;ġ gD32!ZܶOhq)WvDSƥt$ 0?m!jڮ&E~~{NUcSaAg{.3X -lV:[sn܊,g> 4pANGA$BۿP/>Iv$J?Jw]K78"=`VcmO-RnG}å qwc Di;d/=#%n) kS47ż?k -& ußs@q̟BͪD wA \\X{^E)wY,wEvX8J'18{Y7E"^@=Rve,HwAܗwXu6#w-B4X̛V2e1uox!fo ep OW dX/jqĢʅu;gj^d &7D]DB6z:osd$=INCN:^+Piʗfin MS8y$Wԥs˄ V%L%]A 3)Devam+AVu @TJr EJyNbv9bECjwbIi8+DR3,gC_);o)IcqCi0X8tUna o= x tO0f`ucy :b69q9YK%qy z-0`N`9@!@#,z(b6 x O|Hb.%=s[ ~ KpS\E;E+zPjT5C]]Z(.jƍ׼*C _œ?->@MbBPɿ|Dp}K=33s5 Q/jh?O04_/r`F:Urv&!N qk|eu'tg.cdȤ(S=*j0$z͟R-g&Kp)u^yOSnMi$,̩hIG2?&O-˪JB'?Oy=|F0U&i=;. ^B@; 25W5*n cGv[p_^"Fm%lDw]9N:6kg*t,,y"^\k+ޫ6oF+ANΫ}Q]wɑ J4Bt!4Oս'U-dB ~|[ )Tِ'Lxϻ?ڗTvhV k Wvn[v(2O]jz [ITQ#wnCfz4_`z+c;;_#Һw1+( .IpM+)\9H0za[vp4T1ҽc 2f[ro>%ZzHrCLX C= NLp\CAuz1z2.cs7mS39< A!6Ǜq_;[Ǎ% WݺKs]5ߥZes30qP{}aF*xQ5IvA$?3inXzeAֿ{ % LQ\@?@w: e-TyfsfUXn7,m߼;!E ->k_`K߷ۤlϓO ktMnaZ/{SLO/yQߖfMW 'sM)^Nj3K{5uÅ=EQ h9X9'`9etT̿;hnP)dr=  haʫP5uْAyʏG-.n L,\|Khxm 5_7 ex-W$/ZmI.݌Pާ{~3"]cEئ媆*DAtDk+|"bYՂFb *jP7]I (Aa0i8׮`jԊJ]MSR@K9Z68 P ^ղQ>䥄g-VMYܿepJѻܭr G ma阇gF[}Ċ|4^ fMzeBg"]> xy({qNλ&2q+ 3p"k'n=7uL&k?&kNAoLR5|G:k4R(-?܃agb_HiFXxҠ.FkDCSX;+ Ч}+QԷ8g~=qms1)rjŧ(ɭfRo&Ղ(cXhһa'8#'iA! 2]is#(ٞf\oJُP D վ%+O09@3x(˩8o& Lr[ALy/CYIcNzO-w)1V.mj^>C~ 4j՟_"X-6Zt)=c *xEރ.jy8y\j69hd*O/Nϑ8؄؊YRT*4"-O"Т?5nYNoP? ,>3];7Nf+Mnђ ifL'PĘP\#/sXRP}xv +[OxY:'/f Z +T:KC.-ˏ*d%v={bBsAoڹ:.g{znݹpX^fwWbe -rFecYwq}W0\*Am|Q#r"ax,ça͸)Ic}U9C0 2M+H̗7B;H̀)hD qMNؓ71(Z jsiA6[1AG&p1F GS4P^iAn< #`'oz 6š2al24w& k5dҏ*{LO2@}Z)<N]&Kf ~>ElFcȚƖT\jˀe[9SR$ (ӑb8ZS& :duK"'4h}r||) PsVV|iҌ&/t6uWOuRk^[׆U`KQ-&ϥԶNm>y¼ e-|#dݯu}LŻ?@ݐ>l8Rbo.GOry:_dmؼ}ixW&z{\s('bL>GL"~kDAj] = viP n,Dmm+вl _YӉB>ÚK n5.nW /V#G钂և|ZR;98'Iz{ޑ&TP!.cE/&^ޙt7r5֧fr, |v0F˽~7Mstd 9Zi_Y#8F5EHȨޅ-霶qglS]E0=*0\ZvWo׎a&?O탺 ԯay~r%8Pcw[p\ӶA-+Ov"N mcpͮ<k7+ BpG^jgwǍ&k 9oסn)3s]#ĻֻR2;ʒR`\A德 \{k1H>\d h܆TE\L1eɵ0´=vyҢy#]Y WVdҔD|Tfn4.0{mq:I/|eyP{tr4~/Fq<bIz., ;X%_eer#vU,=q[q;}Xm!"+LtU.#1Zu,ΞcJF̱U舕iOl(O%agsVpZI]ܑךn6]IH0d<ЀBZ#]XV0[A+W隖SAjub};A܁bviWkΟpW_0"@>R鬨?#㱜gbi+sCJ*&CͲw!H4K]8ؑMM'/{X#6dOO$3]Zs!Z.+uPűQ:ɒd9 B(RP)roe+N_)TCϚ1En5znAs.}Qe[h` گYW|6 /y!sX~;Ε cƇʋ~C +cΈ{ߪt`sO6?"Z]O*qX*?ARԳ:"d%ңv4[ޱ )xbwcS&LcQ g5:VD֍#SޒÝŮ1Rlƪpq =8o{\e;\"\.Y 9n?Ms\ bA|gm29e sYD1|_;Cwu5-K3b W@S})Y͜EA6-Bgbf$QYB]Zw7UqI@"C\=nb 2u'2R$+b۱n:sc@"ݶYW"u?pׯaS2#;kP2\s_?1;PZl)TAŦj[&\H+ S֏_F s#Q&AGTd ^PKC,a%G 7Tn:k=ݹryПoAFb,ۛ!^,"Bl=p"I3')V)hKML9}$ٔNh?r_QL / Hs,!+A$a (  !nFsx{GS]YX>O8G^0>0MQ hIv14ET_Z!0_2-fvu3P xΆ>+0CYPtp4|kǖ-"iȓlCQ%w(cr*ZgTcOԇOmөZm}M;gWtRdᩀoAPmmX"[s,ra9Q|\9KiGuv 8IJLe0պțxdNJ+;0$dѳ)iMQq_ZL~6\C6<OF' 0Vnmex>"&5!t&|>ݖ# ^Bif"^M̠4z6|5jľSAD.o@qqg0an9рr??G_,Q:X!NSR8 hc (x~ʮt}?{J.fAv"T'Ǫ4#YGwΛzԃy T\%TUA'6&`bw{uM٤ŷ124'ēK䳲Z](E=xϢ!X+Xq<BWj#^#Dx%.dFx+M3+P[,G$Q!E=`%H%,^qh n*h y<Џ&À%vL,Q YT%01%.%嗺֬#dc><* Kc#!tl9t 9~A^bYUQ @EDjq5zP pTXt"Lj*ݲFX7= &%Lqq)1#UJC0U"6#j@p-ZsKE+qD~/KdXY. 9a ~W E2.lt>J{\Vsy@<ҕG:R7`xg;!\5:<0_,$MTiKM_q` #akؖR\`2(l+5+ub-'6}H/Yjq|!\#9#|f+)Љ"[ 7O]#߇Wn::Df=1V%34 Pk{`:@( H%]J?n1y-mg8+H򛕊vuOBߤ*DWH']SLjqQ|R|3X[f7T+9կ3;}tƖ?h3< 86\oxVt#8`FAF4Qo޼,wtP]kQ\'^Z |ɑFac)OUlWQ cM*bؙ\6` P`&K=?D%vcAZJ}~~w/ ]7p\Ӥhuy%%@2c"p[j!',*@ K] YsղD&ȷ=UDuòR4*n VQXD/EUɅP[tQDJlBAP$qCd9fJ L}|.O@MUq4Z&yB~"WI ɗʸoy=҅߾GnVc }mros=V_#V 0+8\ 56> \L5" RQP6Բ:S̳w/diJq ^Y݋{"D4 2[™r(dB征ܲ0pswQQ"Re՞y[^*ViQ`!m|!6 w::VVeZKnab} ^>ӵMGI x ռuJ++4jjvZI'rOfڂ6k_~澗OGN K. }Vgi_;BPeNMrH]V.f$C9+$auf[yku1!GkBL nO8GOdip_F8|6QBfQ^ l89!a/*,nYwQELA 7\Y7FYN1Z9yCpf!%* z8¯M!!pC!JF덶 ̱^׸(d^y{"ǨHi`Â>ٸwm6lDK#"q@-MiX#aCa< iiٕzEp6ҹ7 2Y E. 5H9(0Q?o1I ȫ52`2ǗZ?jtz;[Ƹ=HoSk|/&/ A·(T8Zw-K_Ig9xyB Sqb2袭OZx$@Mgcʐ]V}Nhj6OvQL\Ce|h]vȤ iבOXLhwr\ٛڷͺ~A煍 ^wBNʔϿJLEUsY-:ty喩8بÙIx(,Q3t#gApMo&qRcT{CxMY<B?Ҵw7Xڵq** gpm1XW R';TJw%pRM6Օk#b!^0R~!7$J)0U~J} R1Į"o+J8.}ϲ@OPO=Lx|"H$C2k=)rk޷yy7c9Á{T+Tͣ˝5/w,x_3#X"OSWĒ;pp}0tL"BY^nD܀T\Y xo F=)>hQew(-߫i9tcLYʘܱUo౰yU?pΕyAP&CgvgMw5 B̡Oz^,L9eWpSHz`@R^39؄ExN Qى]4XcǼ&msd4ks+H\CQV./n2<}v}35ºW4B, zPni,JgOZG:b=0i8voYD2/t%v5:ͧ&ڕ&}~}T8ZA.5lt!%761X0M_`.ߩac=:ŀ'il= lOzw*` ~j*G%3`F,Tzy;~1&n\)vKB=WBGd"3c4ejU NoU3XNbe" ]m7t{ҖǡZ~EbbxAc[Oba40vAf.GJ:y V6PQS>` ԴH )D _^ӻޛUO6uɻBt 4$|3 5يHޒػHG͘:u~ t`páǩ'޶6OsU4Īb3RG~8땢m:{0c/q'k$*ɲڔ ,*ky'U{ 8e~D 閷 }?J`t ۨ%Htѧg&1tS j fK<ȫ} LlK!wuk.wSwT1a-Pd~,, j΄tܙbO\L`GXJR7@ :ɈnJۺ.LNsh^A?a\9{ ~#3d ? Cê>^ŒLpIHZ+U]uUƩ~=XMWLY?Wo9}9&֤S~eP!ٺT@A{JK N=Á(E8S>f#^jV'g찻(A{: h%0hyerȝg%!l1i e!W֊G/N«@j5X@hTݿZ_aÌ]vN[Oĝ:ku /a( &N+iȢ.Hq[-p5 n|GmԔ6gpoؔbߦh-|֏륫d?&")` >k2s>{\:3%ί/a&;0pu@_hr'R Ǹb%~vHޞ(_~e7rc9~A"ɪcW1Q )}OڻSȭp{B"EPpՂ kD'tu6&U7*P`CP 4qy"A-cڴ 6eǥ=7U-dEqZ3DKT2ZPIy<;#t(Ƙ+.60NZLaɧ{` r̀R ԗE CҜj޵agԨwnVSB7>k:ha#vb ~*Ci.~M=•`Ha[+uj?,8Z/<g$+NFcXĄ&i቟ ЬxArd~z=bM2q1527OT!ˆT(ʖyx4}B3lXݓcj{ؙXl_QZث눵 vv揟8t\&Tn:ze18yMcesM4n` v)0PNMQDG4 zfjƞȜK֑ H%3ofkp,$0 P躣9Vk΄D>"G+7`"gA1G^cۛLt9JFc'g1 3^7 DcU4 msF95+.,dJhspP@Gfy ImSSb#YsH6] D$Vc~ P7.eEp=*x?E:mITp8iS5O]nwH ZWdj/V@lB_8.5*mWۑ*RkzSeE'3JHKQ:¥Gb7c^S\ƌi3~fvʩ(}69Xt D"v8eYy=7n3Z5b%N˭ >" A Ӽ޾6Ps*Do#v>8g;%Zd;8@2 ~_#f8;;Rꄺ.sSZ*g*9;$1yY3%U[i<3cbQӅCP.)ՊiHB SY~VlU9fCijݲ Q WHJj!-ҋy~])m7Si+JaW/WVBi1^>߰//b$=t4vs"[~xɂj#ݯÎwU)LAB a@#!bGm&9;EXiY%S0"^2rdQfr3Q-J/4-d/XƩ~﷮U-^,+"dzY:y㓸,@4̜Tp׊3`8͕ف!ނ )<~0"wؗ܉,{ʔ.:u<&+=Ҋm.2W3I 7\~k(lXɜLχ[4FvFz+TXu,Cܠе6|j=ܬoIaEk/ATzl 0.-l6_ptsvȂi]zU4,}\둤!qVUY,6Gl\2`}1=^LR,)C Dh(fh($y1Şᢲ6'q` K0B~~-D "7i1Wݜ Rn Z07hvwf=@KYua,#U4"w+%vg6<R4ᢂ-7:by]3t&tU'дK*]s5^S_'t6{O-<27SMlX.ع`m*g>99_Lq&rQJғ:|c1Kkf14H&= :u8Bspe3DQb*d ZAf )'irP>[)-kVܧo#_ԞN^٪ys Q'ĠೕCv$[}6P)"%d9MvJʩ(`MF ы #Ȉߦ_a  `+T*g~!({P, t{q&DP~LCJ\L&>HbrRd: v]}ev䒧 Ls_"yB瓅XWɖ0N ~ڟc _Żmo xXdq4H(#R:irsaygXx.m>X6ξWIT}AII}K4fmOae)TQ}WO#q r%>2yq ϬcB}?`ISKIEap!.ٶcmK,9e 1k eD'$u+dtbKxХF8.-3''ht.E=e\$wڃkP/Äa5i5U -orqaJXOy!F&ޣ'IpݕL>lqv#P nXk*2E9Pv4~" ޹h^}p (W7>&0+@i~ZP@x:j7iŸ۹@l)0&8'#xPnLS66%,C#6YTGKDW899 Q=pbbT=dŖ>*qmؔnu|[9 ϑR""uQ[6X:'9&5'WQӾu52:r`R܌Gm7{cy;3~Sq_llІRV1RUq"_$FӉOD%wUOf0jEZHM")<͋#$! ϡBd*Tjtn{OTJ{'z[E2%*/cށb!'ѿInn>@LJQe!=oҽ n24)3ٹv8Eiiq1=ܚp~tPg1>͖ݖK;1b  ~UcFZBYށFj+7sVd:Z[:rKׅwv( 8&†%Ax5DI17 5t[:) v78+Xmú=b' himjЋ0|\ eӫ)ʜ(|6Xu.Ua>$r.A&Q?%9iج {4ser uEsLH|% ywL]>U;nCF) @VG%43*}J$FXev=#r#E(uPlŒެ0}9uİ(oU'Kn(D5 (FiČCi-W#cRqw(P4{ó#-DfL? 7wK?YEFKt G;>la ġۘHMn}'Xi-/vDeqGz7Ds+aZ!AiVƢ!.t*"TV%MBTG:~󿿶@Ν`vv*{[/ƐIx 'Wrn)_HE*I@ xy 4pq?(59Oz;,>0îYlLPU _`1cg_ !NU3fF Y{ZSN}ia[|Z]lYp/v} (HA^ܻ(x10BŎ @̉!OՋV/c<ތ?\ K^NmpJ=c2s'"J8ufj<>9 C b_UwsmTbliP$gA8 J a(Tf lr[F23U#98oJ?OS(EKDW*? o0wJ#)K \V,-v勐  an0:Fzzzm.ఘ\GIM8G;X\ QMoD!L~ynj#orrمR+:/?áϭR42V]'!:\Ո~\H0F9E&gw*Ts?Y7J% >=:6q6,*tnJ.!$ۄ:ߨqI(L(Vk [E7jQibLӞK1}6uFɆa96bx"yJEutskD6/ҍ:@ >x#mKƪT(3բBU+&BYk,c@)A@4qP80l"B55`QV0Jb؆רؠ4hTdw!!#dQ\j.p6lBQco[;,GƵo\C"9Q̌5H%Iv͟6tv Ie X^-IuDT]SH {i 'wv(Nj1m ʁľѬQ}ŠH9xs:aT_G+=}Ø<}@^UlГHԸE_ *g.y})Dۇv#`W ~ lX#=)pf_r>P:}836ցlY#^cgz0YFF ~18"խ(x9e W $X$%Yeh&g"TC d?zfk^IӟvvWġaʠ}dyhLC AD ԐQ)T wfv8>Ԭx#F˹xѢ-0uf[,|D" 3ʉR|-69ڜA(ƊXHxm/[+Yo1+BqSQV%˸ǜ{?i|[ѭTqId)|NŤ}:,K9ruTl ͞>{h Ku<:<KrMx@Uez)d) j5PkM3遨VGe9pLPg.m<2Ga&.dU qRgw7 y,~siٱGm2&KX,{s*NѺYN]&Xlxdžq3$f=Pkh~_!Z PVͿR[7ױA>#~.{_/0Я j]#zh 6'Ohj{&Zikv3ĸm>J_>o' iZfv$%L'n!P0ua,,od'x/7?;G9V44~#X!їW¶Hp ⳎΩf׋"qj+N)}n$Җa~6x3aZ̀{0ʥJw%Gp̑"U&޸Cl9c߰ &ƴ 0؈$CEMrdd~ ԳZ嗆d]@nM0T8"W;qgFb3?41D.FM -Iw^ `+R:|U!۹ʰ6*qGfJW\_|C%hڒ]J8џӋgxy!/QQPE[5iWiC8Wvr;b @U!A" g3oNS;eI 7E}L 38ɪ.bgj^l ~"/z}$Ad#"-HЕeSˑi"fi|Gq'IO4r3?n9D'b͔A9I Fdn]G;~tQc-6RY=/gMD%4,۟:-0'\!j/)e\Lם K렙) B劝;:tmp1qx|iַX%^J{߄ySX?y4+tPC)B g]ݓˈhAEI3wTQF8@Wn{w^I lBn; Z+gK*P![v;0Cnhۙ0L \.1em-jqIkNZ>f7HcJja/Y!F&m#;7N73]7}dH7C{hIB aKȩaEOjs߶&鬳B|; GvbBmlY)!HӉ;oi%SݠpF *}Iޤ;W{$.M5LH+mO,LGd V)>>/MT'$1`?iBŢB2[E*3)Mq,S780X||X'j|6KcUa٢xCAJq3uAl%JR]T"-le<_Lf@,Lyw巏NUӏ%ݎj 愔kOi;T&,]i1@gy9g2(5s2Ѫ))*r%gڠIMhIU.끗[K{ְS'_Կ.3 [Pqo]GNҤ m\!{B;zAjR󸎈PFS~zP9XHtCBQqֺ)^%FsKW⽜~=}@Nا# p'.kVͰVE{hS~;H=qv9ρDlz}/z XBy(<U `[ȻK26xy@tZb Me,]-Q<9T LvoIQJ=5 8g}ӈJN|PDeQn-1*EjԢld`~zI~xHMQ'.& TKݱ!z24p8=ŽQSDa}*rPw3X:@F37as/O#g" u۾ @!.nmkHyڎHqȊ;3FCHS)-\b5sf}8 i{ RkxCТխ4ʃj^>h-]gͱxu/Z<|ɡ^FD㌙kf@N×P ÒoH_βS/ 'D* &TگrPyM}쇍~mS=Mυt([uۙ rBB8s頧 AZya(@CB!*e<3ٵ9?Pd8jMfVU%=gҳU'mno!2f!G/B^D7+ONfnȤY)f^\>@,VBv %B얥#raGӶ@]([5wP4T& 5}7ĽFr!JNapD( ƽSi<=QՎ즪R !|A>0W|p>7K gv B|q10A4ώ>3\Scx {s'|Óۯf(J>4*2=PYvڜۗj7%}2hޛq+ u[DJmf[h}ddXA_cR~X7 INS|N2<SumE{4zkX\'H2.,J-DN!" F@p=ʼn5YGwkBta#OLY%K^~!%m& 6•A~&dxD,go'47 "7<>26D;r:!SY޴X:݇4gt@Y:J *byAeeC eQTTysWd6*5P/ qm9_ eZr[Kpg^> vU>G;2`tmSj..x`E:w`u^ћ*Yx2v{LI`rM3j*aeCF|ҩYds{Л'S/(-޸D_FSe[fG4? l,1-;i$Yqs4_ \umU1Ϥ\Rq`u 7Ng՚$ GG:9%,jEճOTwݢr3vF|AD[GH7fچȽP(2Y6nxC1-n@l0 agLH\ 9rMlX2$ L}hd\a+hI^1hR2l^3RB|O50e/f!"Qwvd;OSma6ʥb&eUdx?izyBfJ6V7"y"X-v{JvCQ@'_YD&]'aiffjHAz7f7YhӞ{}l@>i ?\5)hmٔȁӋImOa@sS(l3 B eJG\F?2T.ƕK_[5R&4k/m.PwYmՈxvG8ě;8X4*Vsv7쵧&x~ɳXe!ʵa9 l枣_M_äOHb/r1sD 1ω KB/ _}r9Չ0?@*4=/=X6 A#O`DlI4f#OgW}9\f +4mr@ o$2B2.8r{o.@0b0H凢dԶUX \5JuvMk+_^A/t)n1w/f/Y>#r1ܩD!LTusfD'߄Mj^3UL!%T{iR\/P+=)R|4Df''y)*3|C\[.+ݻ+uGwv_ ֋v[mʼ+{V⺭z8\Wsc Қ%v^*<?mRJU 1le9w(B"w0*鄘ѧT&9quvLth?mCL bcng4@#KoݳR%kzlvo5?هGe'>7pUjSpEPWBkE[8WVM'_kόdx2=)]}j'O>O:I,ۀ.몔ٍ[~v3 O3v]hi4O1CsO8}}Q=gݮdl$vw 8§(sz9t5E6>|hBh eJ,A$"]`56ԯqq 3R-/=lK1z7"F,X9)uHs%#Z6\(2_R㠷ul%ķ,٠B tZ2p&@+ZRN"u X12vxf@‰ʬ_,bNZu\| 韂V#:*O* x> DL629V9Kx9 |x_oOjWi>p$1K$YLhrr sV*0@»T/bSafJz~mq}ߴ ( ^#VbGl!1BkV@EA:#R.Ф# " #;w3+w6CV$W L~SZ׫uIwK,ajfEd&@ 8 nM~9ps aםMрbm,qԲqL%Rq n0/z`ebx[2ե_6)'_*> ɽ:Mm^[$}Rl(5+ڛ:_B DԺ!˱ 2Tm֛+xOu>IM0LIZbc&[P]ELE-*UFȉﷇXִ"KF ~LtBiKg٠ՠfo 32JBZALp϶d(@@~vCY'e}H}]ᤜa5}3>@E|!=8}$PHJYR+U5˞Y^ThFqpy.z|14|Z`[_L MxN9:ػf\$s)|LLZR ]J咷i匯X1Ub*M*1EJ]˨Y':-qxBmώb4Hxk'Xۙ-6oHG0HhArS߰lTUx rh*a @>XC< G->{-eXTkQiLģxۂjDш_'[}}ň)&R\VΚ4AZn=} _Mv=FE n+Hh;s"WR0ybs Ns{ eL3*,TB&RWnb8%&XyMO2ȍmmRs q؛mY&t3H=l+]\eu\~4g~K`}Ĭl-V:`aRr@nGGWC?:7#ߍh<~4_WT\M#+ǶN-ݖ0np5[J>Z ;S ŌFnYzF<C`/9wM ̤OuVs6^glFDMjpg&ZjK]ƧaN^",e/(ϼh3fO5Jяk+S6dD,5ʯQрF'ΜHpJy{U{!VBMS[{)FS&]AaQ^W:=TZX%! a@L.(b?  {-4 L<IWOao)Z1q, Uҗa.9^z9 n Ȍ #{TT'DF!sDDF \ &Ҡ-;'[ƃ1m  - |4b L@ZUԜ3afN"hzqzQs+ձ"{ҫP\CN cm[Lw,F5YIH0u> ﵲF j5y_K qݻ Uٯ c ,&k9HA4WZ ]*'w,j(=_B 85?Ck.L5IuUgl^i&~ 2^p60V˚C;'1015 YLEsNZc2X1Ix=9k~1FSDi!+߈"ːo0$vGhfJp"(HCDduf`ue@@W(#O‰=R*}Bм{iQ ^8.tb^ KEn#eYT]>Gku%"x$u3c H Z$qPC[ܜ{1~J̍'c$&]SU%>9k/A/[ Y8pG.!4KυQݾW/{a>^'6]F-MYb_-2䗦ܑ;MN( E qn<]|f1T!䜰l74IA>PHsnՂSvEȪڌI'a:AK.~9dxhC]zĸhT;6˙C65x'wMe3sX1L{ů,h u%vjGWAe( 0VV8GSwPɅlA)…T#rv]aRzP#A$q$ tFwfXq>;)եT;L+5!AQtibBojp٩ |o(]% hZ}*:M`]  (Z?}h6=>Yu %pO`,WZ3R**o0H*ƻ0^KQ棭[XTb[T|E\ŊoHU{_M3vMfg>Gd P)v9{Ձ7xۗ@i Q+Z68n h~+Vd[5Ϟ%rlw/:$ZǔqP#Ƃf Ur jxB# K?~wL|nkYcʽk[=-GY{7^,߈G~fd },eLr2 7n~I gu ^Jo|0,(_=~HEe3hIөP5z&AȔr?ٸ}iAMb ܲ|o4ZRL:i<>v3 &)H42>U_4-a=p@6^vڢr,:z<)*ek~ԝao7 !#Lz hmnwP]æ,ZKlY}4= }Č;%i8s ɍ-kpq;$SQ3ŸOpnv)SX kθ ; 0\gj܎S"|jՐ|Ule;9mXfm{ Jq*N!8I]ًƟeW:q6mPatcsLZz|59=⨍i#RЮi1Y9}XTsGsՂEKz5+pܢI#qKc8|Ֆ߈@U[`0:}B)vsI0J2Y^M JjM-tk4 GXQ Z8JJOw dT|{ẠXɝlO![L7r^ry%K51ĺrgusCH0N: O˙nnqƛJ, /m(w7yN7=|j~b[FbR8qjoR&ZtI)@lutBϝs".o$3НV>fD"+r^5e| $eBwgI1{M-Io2">}[3<)|-B1)B=WQ]Md7iˌY,1crBzOpE1/<(/CiGdiS\XH?Z M{JHIQbŰj0A åG BX_Ae+d ^HN3XzаTS8Ч}t贪ȻH[NAF)a'{f6yIq3X)}uHy~X.нop0JdZJ&{m~z4>/=A^*ώȘ̚#`Jsv& $JVD2Pr;O3؊ǽKhXDtyF;]%lj= i|f;3Y:٣!37 ŊѢ;PA 6`Q"~b?2ʊjn G'p+v ]v zOV*ȑ@#z/!Y/1g/j80ScLe{Ee_ 1Vc,Fc1 =ލATgK(5tr)n!8:"n^oh2ˠt4Z!(.Zjȉ鉧~;fF=bEeWhdhv] oc;J}44I._%Z$yz>Bgx ە =H: fw'ˏgLo .[2xˣxH??ԖFLH+mvHF,$t ux'Ťr$aq0LxhgJ oɄ{l &.g};\RduNT Q3kZđmjk@X,7OF ׬~7|2td@1[pޒ1M/ ?ӻI}Kڸs P}Tt57ݺΘs&xt֯%wyaM %"mF|Z$S@R zrO?XWopvRfMo#.#?O$͡2Y{/ؔm(NB>Q_:#{">V.9%*^?8̸{t#ߥAm.;^"q]]:IGlOujsܔo욕)Ni_/|h/Huޥi5 ;S1 Fe#7@Lŕk0K4Ԓt#l{ޫg4O.>VQL/] M٭I(hYޏث$UZm:AW@&9M|P$W9ƪ!\^ۑM|8?P1@>#\4^,96$2L] fZ]C]v@a_b)RH` @V/ ƀE(% 멆.vTu,zܹp<;R3oOa4W;D\ݞ_#C%%XRUt%r\l5-gB]ʫ.QmrW|. P{s%. ƀM{7-ݸjK p!=D7Nua/8P[7 3r3 *!xuRjK=4z&t*C3DN'm:&}wϕB=k3Uق&OE*cn}`[ی+w(YUNbcTYAO/ Q>|t,g?*hVIF7%%eZ̫o!R2Nk\9fspY čue7azs,a2!Rg&.KrY_doWLo8R^rȇ?^' 2Z@+mlٿ챪J&6 t:d!?ZsR7sn]~5 `ZV.Ez؁U`g%#e9vxHaEsd@TݑhWAŐ^%G7.Sn+{ȯW$*?/ll LkWXd=~H窕TxrG)YֵOBt55^ !$8b/( 'Q&wvCȋt4v7çZ#_3^̓W%]|b ` up-:2Sɲ;9ȶn<|$pv$8/rUҚ*o7.\DSK*Ѥ敩[mq-x]ꗽQhX I ť,.( KZ"hgp-o=0p9I=ޛQޙ.jNf):4^&8{=@h2TJOZGYv!U M27vVB2Wl9ܭ=f⦅W*LJ}GzlF"z}!o gt(ϟw&f8F *Mr|i൉"ocdp*H?8d@pĝ@Q712o:F-#T[KG AV5OmĥaW〥d ua/>%yS4u݆}hݚ;O)"nT!p$V wӠ=h4Q=>޺A;z#x(  ->w Ql8¾ܒ6JEiUgoi!^hJcK;wG}!*#_nh|`-#e)C[F+p`|W3FV/oJo+` p ^o%9Hko\F8݄8E lnt43euX%lFZ6.|2AKoׄ 3L+WUE1|0c%.& wT{\ w<iGJGB(+ !)bTr,d$ ;?\*9ױ=mo51vdBV>:m [%sx~ (_V;Y5_F oC(`5 j,=[x'l|"|]\f:&(aw#M\))cp[Jh1X>Vx{W\߿&SD Yp[ڭH^X=`, W2Q y/~ N$W:p\M~ƕ9d)ŭU3L?`2'"?ekB.lbތS uˉO͸PWA*/|z0xI}]qdB2upg~%_o~+qOgBw x,@;RT}hκUmy=W>5S,]CZ8Qw^M`>9~$hGZߧ1+x?ǫ"տm~y_؍#kC~$cw0NUdٌ0_̱ACkFujy̰^Bs٪S#.TA/m変 +mO˘GDvl%uF~fm3'xa˫eL?/8xIpjLC-/%[9T(>`1L?&AxM;BGT4-I|%bF-6t;`ze;G^PAX2vGK4O[۳=wf%J`U:&4|dj^ [O9f^Ga(?T%wqAJh{fBUFv:Aö3p}O%CueJu<ż' B9`1vR]*S7cɅ_zlgJx{c2:|`/4z!u9Ϣ%|LvuD؜`JB1=7pY} %JbHîMg t;Gw>:|Q$*|#"x KPwأŎQVS$c., M Rg4EG1pvԐ s.X:έ%Bp]QwI%O9;TW' c\S-uhdkp8\qLJ/[Pcۣd؄Us<\LÀƿ.tb7nFeM5uF0vzxsY6cG0e}1cIg:ﶧȬހCB 603潯 ^yl=GQGpLC`zx~j偨=oDpl-9PH/*Ԫo4%2&eVP|迵mi䗨~aYIߠ?25_Aȉ9X[ 3&Љk~kB8v2L/6}T"J1soHx;1/ {AЧLf;D0U%+"NOF3%a®Vykw rh#k iAqZJ@wجkHfuLVi}mѼ?3/Ȥ̉5XX:Sjm))ND},@cG"r!'d['axӑ#/ug"D(U_Oopl9V07 &Tw(+;ruT`5ƾ?FU6/ipm5@q6@vAio.#l\a\oȧOp}ygCHKH, /)J,u`2P65]y[(io1|J+7OZu5(ZHISe 6*W0yG3 Sd|KGO&i ;TcS|'M dwޖr~aM7si>y~?F%N1P7Zo/`Nv>k/.]^ :oR`XQ2697h0\`67j #1D*DžG{R&QBue!ǠXcʈ\G }DqG@.J(vJ6Zvŭ. Ru6[E;ǫm7(# XڿVFӓ +A43ok[io JAv n`U?;@fv5]7P™)]_vueͼ? ?ӵЧQd"h&xkG|~ߛlb?ԆL#GNӜQ$pO/O̱ ~ЁGFƍm8ߜq-Kbf<ӣ!0΅bfkmLǤS΍<;o<"c1K>veh^PF::3@胇io{_ yvn)֐ӡ փC5d^*hً~z)L>S F] B-Z,2btZV {i EH"IҾS[Ӹl dcAO;/s~_6~;wVGҡlr5; S8|F9=wc}}biD1 2r5PTypmZZ~CIJ2ebߐS2Ū|:~*^(˹\3oy l agX7fcv6ܰ &CUj9Dֹ4cڲڇ#o!tk t90啎X2yY&:.2'JQZa!+uVO…g:6z˴p!k!#E_**Q8U̞#5.[JOaOn(j =0y1lM[^,,[KFKkoexZɡCY20h*w +xޏGUZ,Blt`!%*z\ blqb@ԟgwS*a&5K;"Ix>\=uTe$|+j|ùh|9 j% tq"l9#C3WK"9a l +TilzNf݀#!~ruTs yJ#2 |,]w__b,s&){.|-;!/򦇾ĝ{Sp m # 86nڧ>t=5n#?ƐG2eƬ`'Ma]c;XZ3@­j@BF"Cqp7QT>`ҖBpV0Yg%-~ )$hj7 ';$M;@ ji6UB5%a̒!#]ELD1F~Yֿ3P Q/8R5VɆ^ŀS]-ɨ5/)oL8D1e']t@cЌۗ LM < "1&ػ又i T?,J$g3 -6mdfsB|uTBmmP:H#o 6e\͍a <[]b=K鴼XapP`O2 ީx<+y[6 .x7 H)J$o&R!Sr[jΙl2( jaFl'KLB|s& J,r 2@(t$pX*R,A-` Y+##q#6#/Ikc8<`ۀˤ,1AQ8$~B!u.!g &EȜkCiĝ,WvlOQaCȳo:/}} \%i4a7L\ 5|pwks&vD%5k 'բd"~%pГ|/;G*vҿP/ =7[^őA.G7 0MsFk0FWA5҆"l8jspI=oW#ɀ$c!K $P>]qߛh琥x^T8Uٗ#wX+|j^w`z<MI#C)30B?Z!8" ];6aWzxzV3 ,CW!G&&g][e3i y@Q#K7goK-.NժVhka/*3O?`\"PKLb v.h3ҾRwbHjS[d/LMF 4O{uI*Um=JҎ >1SHtp8Sm-|4a:z m04~(euߕ1܉IW ;?䖑 jM"G]`cdB_4w~ ])9SRoMfqHMóoLB#Hٳj[05*rba3_]-l\VsaxӒ~ҊWFe=[RIK[Y}F<| ~}HW+gqXuwh\b #&4 3ܟ5vh+>qy-]w@5O/ YGXHp-,CWMKMlae0|` #Sl舶I\b#cڳ hP &{Hp (AeqA^N[E+7E(D%b31n{?50:Q y)q^_T@GuY4Hr1>vG8`wh̠W&NOWe .𠠘gVEUPe&X,!< F\SH .8wbd=l]Kq۟ nl Ke+N^"OA>8%(0cZwxCOl=s5}_ƵD,5v6iS:(*@<- 1[5T?UJ^l唏n,UH5 c^SZB57zJ?L/ \9zìlKEdMfQc;xסJ:杈'%yֺ8`Iiůld^Rɻ폔k7V2(Zǥ4n6~u FU4AKE>+7mAO8E h~znl4?k-,HY#7z{ #<5tNH׿dS5@kedД[ V+ 9PyIHu 9Po 5ZVv& H';dZuB!_$Dj0TDwyǵda9'Q +"jr+ OT3Ǥg0b BZX[qLA+A'ԲgTgU"jX8Ev X;=#ƲW`6)8Ko2 [*bڔ$߶}%.Xc8ۧa:|w@`l)+FWPA tm Js!K<' aqd!$zʂgXRqMt d=jضbG~nnduʇo+}|5EWYTKQ9oKݑGDS ˵k+Q9ҝr>}\X뵒7 @( {lqSzvЏMgƉwtX\ō fE\4tEf Y8p7Oql~t^vJA%/ YCJ)3hf-дV/~k2K5{HƇ]ؕY'BDNݤVlDp %% 3q/AfO1W^Xʩiw*Xm=pu>?&;kV&9f0 yVlGC,Sn}HkddkS,l2M݃CX4|7{.#:J&0zGož=xFfǍ@AXT1$y8ykHgJi||'GF9pk_!jҵ/,xQ( F.D9Ӽ&Q*޽V۳ly?5>m$53VZ6׭V~YF^V;!,񩱠ֱ?ې?+Q+Mq'AR .Bŏ!QZZ+q_#Tcihܔ7кև*4ˈv٥4%3,^9?Ì]p_'SHYXUl&X_uCT);`cӞY8gZb؄4<}jc.]Xb/j6!.1lyثF]ĢTK3r~0eR%Ђm&HznY--5 |Xb3xS2gU1}\ZȄAL? '(@twi솋̖~\*/ qVeSL97hD Ā!¤^vmM+^` >{OTeO[PPb%hMHLY1]I xzM4|T7J q45jVmUp@*9{u(=!TG^~G.,m &*FT~ 鉠lC,KKp['k ǘ>6@"yzb>ùg[E{(zlУͯ_Em!=j/]a 0?PcXJPVyK<KaD2~*@ ΜHq+JOߍҷ E$Ypui)U^ۢHh֫@4pCL-֢VC1X Fy0~Xh'&\Ŝw`~imh*͌>eI|3̕ w(yB*~ƒKEᐕyiBEiuG70 *NQ(nziV’wXZAG='FtyZfվ:ę/*.frC%]Tag,-iW3vI5ƋC$ 7 Ppj*LoSCjFd3Ji"3JhzqM=t~A6"rt [pWxHQ-3g{YW3p\5W;cƋg%w,I,%󝯴ƍ4oULZơ2@mV|X<7@ sXG@ ߿0p|Nޟ`lI*%pۦbt6dM\D ݈SZ%9| DV~*#NԻ/zJ`{rRNC6 ׿U\muHݙ_.xYid!{izcE{;&MV @!~a|\6wNC,=I?R?Y[biP!Dm%頱aӴ0.' 18ډ2:yifhߟ0ېu2_xC\<%A wP{ 7ٸ#+NcFVC[N)Jb-Lo`Qmh(s>Q@t k鬆nq\#ߡRmj跤h3H=%ѼgJFrs'WjOTRrVvS3|دw]:0_j#Dܜ BqdG~o H{mo~u= jsv̕Ol+kEɽ k6ayesvCkSy]9[+;M@EcYU5|$b= ,(L|C)2Eп`O.d啎5nn]:n5heN^o`H5 p@v%I&tljUcٟWZ dQ1x'w[;J4X,=dfxy̙l΁O:ug9j*w[Ey7١M;BF-[Okr5ͽu974&A,:ˌ4ːTeq>)XoIZQSTg$OL|Գ^OG1D}<@'&af`ܳEㄎq&ctl,JKu{6\؏h(S&X2r-k _Rz5Ù7PqS NZ rP wQXd#56f3 +b Eꐆ/;q|9u /M6ۚE-է V%bZ?%CG_MeSs|c/a% XČQt&WЍxfA谬Ce5Gώ<99Aff½ @ oWΤm$5G@>0.pwA͂3h-S mL #e19}ܯ$YCC,n(lխGL:o@t58vnӓhwj.)N5"S<(*&60TUt 77`ВXz.)?<,RԐE׳)Rq4LhRg_RGca:0}xG}fɻ`/ 7fFYhp p"sQGcN0ec|gw5tR~DGx\C}{YC@h8Xsi_XqpI}=%Hj}0nia]yq t/d'biQ;շ2N!?Ϸ: 48!T٧a}|,"=bW1;6AiO4>c;vh]o uqFIu[.E_ 7D*Fp"TdP"bVBix4 SÊ飅hrlp]@3cWר.m55v8b 24ЕrLھM{jmRFXe)S[٩g4NӤ'c"]x=kpy2kW+8iMQT4sd we"z*)%=Zsà^Yen cq}(`Ynp#դv0wC]݀7 \>poQ?@B3R,xepgk;nKuCœ~GGB aڻ. ~%9\++KV%gC.NtBews*8lLGaSI2Mj>[溶wBjMF{Pό>lϬ6±9l(S_7,MNjy9 QR! *R`nwQ[|c5u/2HuY/#3V &DG3!&_q6BYXa #x\:]\Rr?Ϭgݲxݛ1Zl{a{˨xqK V=hV\0"$߅p~Gl]`;=h-Wbpwdrgui&@%P ~Gy`peNH^(DjՎ 04u0 6JٜN)Ctt0OY}|ل|ܗVBVCO/{O=Q}u&%ⓥ,ث}^-ۣn1[uHq1ɓGmy@Zkh>'AJa_='m nNjF s؀ClSiA;MNR\-nǽx;#t8c9sk I #lkгl3(T@0z}J /}  :.ع!sNad;'סDAprXu޵[wKW J1qE&`dgCʸ""PoX%EG'|;c?ExeV6?; ~D}L~FCt#bӾΈt;Ug+mʠ::nYj;h:ˢlok+Ž4ς`ڮU~~,eVZJ6׀RRzkS0o&L槑xGi1^c(/kC c SRjB#ݶđ8a2"!zŖNTHGěN)Q+ /?q`v*@5/]J_w {HfTeIC{7O'*C}TcƜJSĞ0`;։XB=[0y_2@aX+`y\F!Jֹ&iMICWa5ڦy£^|-%%P8c)$2לTCwd+At@H {h)AKa wUdonN;$՚tܴ0}>+2Gf@h|Ʀ ^Js1psKf }57ʹ[1 f,YrA/n4lʧ*n,QNǠ'BEZhSE'Lܦ Mވؐ{5e@s(NG7(xs~鿦mِ ;MUvb/0IE!Ȅ:Ӈ ScIC0' ȊtxGc0( bqlb^iO;UEFSBdl.+SgFV3.;,żv!{}qQ5i-Q y*5N)*J @tN>l3;' O<8"g$.r?!'q!mcNX [s?tnDA˫i(ӣz$Y5s^UF}Ӫ.Gը0bT([6z[ڑM#݆iU%!dc!춬58ڧؤQ#4K!ضut.#)_D3 -0Dmrynown[>o5_[A.Jo(IcPeҕ @ͧ#Z1 Eᘡ]s~o'A 1LE6VlQ=x&xK{Pql&D4tD@FK!vYJkJ(em ;7>yK!F$HOʪ:́ ʺo\k' 5& fFV֨j(,ΚYـ<~fjiӹ>rx(("uAn{$c!;Yv@dFyX=`?[nԯ kyk\B3`a~ ZݧT ~Y @ z+I,Bev Tmi|3cD!Rl@479kkG.bDDyBa"l ]7P->8 _az+rr[nFj"qDUz%cvuV~v,"߯jQjnܶlkة?" -zD|r:\H\,Y)Xx7aQk)}W%D T\˖ixY`-i2 )V0C!J (|]_chv}{(%r+j!O5:S8˫ m4yAnEސ;G-tB,]rnj/ Gl`#mÈLk1yŏ䐐FM{jLJ#pV$&$i ԯ':֏J9RԌ.{/(;wD9^Cb,t08TzN*Z7 LxD)>i튺Wj٘ z9OM[s>F^i+O&rgi!]s.!ZvҷQ*N[ fk{ScГIRD d#]:&򈀎+!Ĕ!$S? `A}ɈqQ^c jfqY9K0]0IM9|槰-30rrbA= h|kr]׊-a +nf%&&p~DDx8F>Ȃ~ VL߹j}Zr*&ZKyod2ap{r,Фi~G!KuAOfp꥗5r:Pr;R@> ּȉ:]h `SHH)_f)*|;V2+/d c~ f=rb=uC0Cm%wƴ82>Ǵk`m%e.7iRߵkTRr Rq&v0 t=wų1,|덭|(w3[x&1ɽ %U$b4 z#T[҇fB:(s0'gsYR.QMW{i$o 1'ZQmeP!alevK`BŨlvsIEY^$= /mBf85Qs`:(_{f_*KjEf.59f6Ь޶G\u5m?yJuʹ;2V?zpƒ%rxD[$+hi{ȱH34{,*2 }eK *]^lk'\񳤗ez^rN D#CI2}}vs^nY_RzƗV,աmDܷ,w} 2uSm7)`dlܲȌ_9X<F>8W sMnS/.Ǫ15"0H!&&!#t\1uOfXa(UrCǡ1=eo;Pt13zG6)A}=fb[~~]-CxXc'E`%}tq=3XV,"qg)`sLhbfї\#iezmA ?Wc>s:J$y߬2b\]b j, -{5؂!n*9|2w.4_.OL6­I/34#r#g̀ /\LQ(tQVzGV>>7 r\8:gM}edžJ+CϬ*z1Ȅk0 177%K#(vбe#EU05nU@3G}(Խs hwkR2,|RX@|٤ݐVi-[G!16[=|[C2uRdІU1GGz tD9NsHwWI{2BA:[ambTyP<\qb( *`kV2 Ѡ]-Xכ\m(oEU םf+w'6P%0&eUTRڤZRqCt %8`Q(Be|W N#KrlPɽmE3ĜA~&'5ۀjER r& |{Ղ!^u0{}_4ꭁ.1tNt;6h.,W0h1dk5xen72aHf ۨ < *D2M5sD)U>S;o@K%Zw 4[,miK×|ng5sgi,|?Y+|[6J]^a+J51QƟQ#^>X<}^_Vdɓv\]! ϪN|JL08`|Ds*fkDrnB̏ٷVS07|(FxfgOԇ&N?}aa$*!i{ #/.gMMĮUykKikߐƽ%W=p ĝutX2 2T%bM,$Ftvn<ԲW ;diZ olicujsFGY;Cu>|C'xF^-ˋ(lY%4T%qoљq,Iy-ѓ"9^$5SԞ ;Ef|rKPv}jkIq'+g(Nb.s …NSJ<{͛fǢٿ)j;UJT 4-'ժyUs'M[( 8z?r4H$y2aJy0I ˍ*0a!|z:3) -T,s^ػ3< Io!*p _AmAwyOډx+.CK샌Vrv,oMr [r뫊E,>خ:Nh 6-V4\p.zOY2t2 Qfk; Ln0Ή*0'q;41 OtD#p .-*Ągӣ;y,W~i<_xln0iזzZv[i`y7+2|Q Vп8 X-e+u-=+'EێFwZޛ0TS ן9Z 8RVLaí6Saa4@?@80cIrWV1~ZB>yi Z{L^Ǚ6C)V10nLMӵކ 'GS;XIv$fwV FE,q6?h\Mm윔DfoQF⁽[3ioTKim{2uQ 9m"#E3p`O75aS'Cll6FvI+喃;-,gJz yp#CI+ qmOh&_AFFK@PT Yj]ۍ;vZ$\uJeHϤNE|#/&ϺAF\I#yyZq9f=zgOX?OՏ3aDY@'T_xzpZ\ȪcNSigәl ]~]\SXt?]FGLH?6yAi!!>:.s!#FjvQӇްX TM9kU*e]\ԟ]"A?"iʹR(-d N[0Fx+2 '2#:܇PC{LQ d mmAhP{sRJ6m@V /lxotХHGj YM#0P,)::$#&pBf {t5 Ilo Be- )> la|2u~&_HIE\2yxiKŽ@^Jfkx-=whk+>GL2aCwYk e|>O):G:UqRlIi@&]'%Dw9Ւ0p0 rJ5aڄ.wR Bv`FQGeS*<CFu15C w̏&8y63l2 Ozd„o ̡1 i |^>Tߺ{gwߴpJ@mP&bY]W)V?s9BZ-kcc;DtÃ=Ѻ,\SMCMPvpC]b8Ü 8 vg|ȷICO/^ڞC#ofmCZa)3rr4I-b&7QUL:۬Y!4ʇ5` g"vBVo_ ;#[yքqlUoP_ $̥͊*WAqXl,71(Q3aBF0;NE-FZC%j?E÷R"FG_jl q F#dj>BSll}lO;Қq-)R)^k%$DXde<4@XMH+Oc&xeǤCԶ$v/r!w-Gs$d?˩Byv>գ+A,vY$5y)R("yqM/iV Xv[y!auwW|~`bTy*'}/B{>Ŏzo9^ʰ5Jrqj9a:AjӾlJD0g,@po{h yyvR3gAP~2 ',RF\h՜pX7 CS0}O, cg= WCǹ: _h]*252lLuЎ]A&T23;d:bfFJZG7A'X^J(_0b{$w*✣UYبށ;ïDp&wzBU&uBB@gzk 2h T8̐3qh& |#N`>2*\|Y6 YB(`rJL3 Zg$Cm*lt$,!HuAz6!.ђ %a~u%ۅi!cJrPOy4<H4 pX񱪲quk{(3-DZ5Zqi;}mKREhj}Kd%==dM5`m{Z8[zx֓,;{5dȹH )DIAd(!5X@^cW* 4 F? *J'N[ pʊ.1ҋA$c`JKsJ^L8j˩@.]Q@:=YUޒaƙ)I}Df)H~4KO/ -CpRڒ++>/0‰lu9uX&4_җγ5}+*tTpЀĜ?ZDML*D7162/WbPw"w8IjkMVM[Egy0Oa2 qJ-s׸Wd2$5cڊ`s2YGf|ԳX*H]-/z%a9َg0u|xtW 1Ϧ ͽ |[3j,ϗE0n6U&$f|G=jM KR[.DIU)UԳahhUcmr# 25*C y#/lFYږ"2L&) [\ a܋ﻗりDQw):wPc]#A6h$挗 e\(ŠWO{MAx4KdnYPYQf b -Y-&A Ӥnia\1J4Ӗa4:$sMjYHƂ%1R}{O 2 j4K:wܖv{ n#d3] UƀN^,V^.4[G\Ep`?z!?-\$$Y t 4 ӌҁ4M>G?au֖BZ9+ڠ>3}j91ƌv нD ѭb2hz{*#;Q%_76G'gҘw#W/pv$ my(`@/3cR3+w.jnx_2! /:WodDLoPj6Y3?9D0g1<ԓrQPi,Su%:%k6tJa:4QQ"X@:0xC |[BH՟țIOf)~?ъ N(bFsuh+CI; 0%B"FN;|!0YrЏ pqϒkR'Ė- ng8]J⼝sf~wTuAFIuӯ^q7id̀iá_@NacNfh65ESO_S {I}qaX&l8F3NbiCbo`nr=WWk%{\`OTznOF7z*&ƍ'm5߂7'#SDbmP$+E0S qpJx#·ͼY DCT(7C_fCA fNLtxlT,}a՛ b5~.7 >9\yTP=6xz >ݐ0A)fcO# 3l[Όf"Z(.ĽxXr?5@]F$ ]B CG͔3ǭFWld F]AI`UDTdQC?F&ts4HCJXC(8 "=VszH!y,1p =>P3`2\g\ h l>帅^e^{"AjϟvNq f?ɎU%Cf?uyѼMbF(P~:lNSDY!w2-G{[V~τrMɭ_u#m2A td|I4y[k6 ͛5ͿJE4O퀦 ;dm}5tPRBww4*m73#a-ߎ@ZVthXD{)*/*qf&" S0,Kx[0C{D'(wok#qb(}L$qB7]V[E3fb D ܣm4BXZ&'%G[利Ё>NZz*>8^SJ7AMƄ^9iRRSh85^ڳVm"&b#s:!ȴvD*7g UdņaD>o^af*;@m(&L (e>p2 GdW L~esyo{#bQU6/aqiddzmk2QnJvt@Տ;խtWp_ j_&3c^U1~6%ule,6%נ48T7콳& )BV*Ǒ젯()5ez:*Gm+qѮ:)?IZ/.|t&O"i?w@hڸ 2ERN*cg!Cd[7 OR}}R zn+\i_B(+5tT4P. nxށ\rR84~-\꟔ecε_S٫D]~b"̯bdׇC0 G'KfD.|T\(,|$-'4 8|qXGtW_bP3/כ;mߏJwӱ1n_tsVtb7~WLwBd~oCAJ#gSox!Ȫ:nҼ=;pČon:L%?=0-aڙvY1!(cr]x|`H+WximcK~S|CLb$>8I|\NP+ 'AG.m/4KCeK6CjGuO8\>PJgUQYM7Yd!8r!{P6D!x* (W z!fs<JD?5^ا, ;zѣT2? tCs[L\,b+6s+:ǁR ̅;[ZZl}4.CC%yeX|1% =HЭX_lgZs~ߜ9zF1j/,[PZ@i%M|FG[:7]2,T+2t>:81#ID~.6(;K PE1樚1Tzm twI.lO-/~g.$tݖ7(?5,woB%/][KR͇}( h~az c> fT/-ӾsCsTذq::{Vrp6F)#J%5O S]Y,ɑ-iWYVݩ.JȚdJ2.{c@!Qn\D2]{soέL 3*\WW(| nBC#Z߻I[p5v6.'G߅. .\qmEt^[nVqPrRiRV%%kSCcn h5>cc -D?K'9ոU¬N[^eFᑎ >%)G@GoTgUIuj|+Ҹ?2<_]øbbo72@DVG@WO^H \sc:՘( |p݆5}G۾bԒ7w/B@ǮZ5+kna4`Yl53-bc+яpK4dd):Jڌv~<'̇{EE5!XlN"L`Bnnjolv@c=+"$qKn1K,vg?f$}5\>1mLثzm&=tIX}r*`qh ]I ^rɛ}RVEK1M`v9ml@&\0L<\|:N=jR(36*"Y)sҼ](_ .19֣j@ OKy,_c9=>2jg}ݙw+} #XZ.<K=C%ifRn)'-҅8/6ZF+ {Η?j9a\[p rP'w;_م rJkI/ë+H&۠.:ݜ^3{mΘOҕI8q5um(@${hMrnbb1=ۑx$3?һ:jKlō 1X>obJ÷OPLn{Qdw1N) B=]%*mcY_ـب0o'|Bԇ|9*Z)o2[G?DiS8{Onx8 E2+qLl0v䢰9^ӿ9X@ڄ~C)“a`(Վ,fʂ6#`?L/λv=9~X zIr`#!Q)H$dKmM';N5tMF(OW<&hNhۨVLi% +E'ј|uh|f;=n@ǚvve]-aO $xE<ܵ Lg_gȊ֡KW'-*'.`U݆-.i IC}eBL dcZTt* RU*q:@]F^%%ټm.T)+ygB/)KpCҩF1z/a+b wy=h{3'8R3 Ӏ E@Jvw*#P"I5b%۰deswV91;)dU(%e ´w)ʨIJ 4|>f`2A&F*Sa]?+LNLFꫭX;#_bm ]+0G]UFɧ/B,r(k_2J\]$Q\>rr-jy Z0:*M"jv4z)]`.tr _i WQv+FcZU„˚މfeeDr,;HU"LcXlu9!y>/mK{[UqAzR}8!rI~UgZ2ºp y,^R&9yNef}>^1E&k9" LPpEk~2Q%xuq}!Iq²5bX -Q:p,J nP #ю!Ao#iZ2*xg^STP _O`C2*by:Kn|Ίl#vܹf~,E#^|7 2<~&xЏ8ѽayiZl $t;c+t5NX?q.qI' *5.{XE.wWƁL9pBuxRv՚9 TEyKHț_:O&Y&oz:Y8uW%whIkIoஜC J*q/t ΡG~c`&D:i3A,+PTpV7[1U~CV9eՂt) #qw :85ʯu!ZOtIFgy ` YrSnE A+Iq~V-DluNHK'_kk}%EO=-r^D\~~v$Eμ1ueb; %2/tLӯ8]+ M(R?H$H\ ]rTLH/H#ƚdk5PG0cU~ Ox)gψӊa*5eSE*Փȕ!> ~6 ;3F a#F'*NJ\C$\.;ITV dк;;)Ap-6Lꉥz֠:U\}e#k[*,IϑE-' zx}`k #oߖ)907Iǹ*a$JLq=)~Y5:N643*lkC.,Z/K1U]~pznHZؐ0\?s--n\KTRԿ . RWTM[b'薼w{Ɯơ={8qܩчZ6"1@XϠ]"%u$2wxc܇`}>b|gZlf[?>ϕr&4M1nEq1U2,hܜQj^PʳHu"& NTqd**IB[MѩH9d?Qbd]O̥V=re a3s#`vq6(In^IQm] |#erRr7t,{b' ,xYlЀq4`raz6=R-k,Ƚ:RUF^MJ<$MT{@Lh)6ժ9xNkB/eͫB1SAN4$@D#{"3}<W)%hYr("5<+"9c1F 錨D0jgƧaWO'TY˪bH?CpV^ŦEkȵp>p('ѹev|2} <G@4J@u@?FY8>#DhZ<ZU䊦2컏jZ?5p`MOw|![~زi!4"ɋOm(U&`EC{q+cv@ZQTklba3i%e>$TZ1vu÷d&DaJFCIy)޼Vb\ n\mU7srD&&βe}'9RIvMzԉZ#)u/P iC 0+G3Q1 uݖKGDȬ榽8`yu{i!f&t.e$~ݦ.FEN` +\0//ȶ?M=?F|d6DE ^SZ&Y%5h˞WIE=Jcō#\!D1qD\תFfe#ʌ+jPrfgj<޻_Oqz {P@}.DeGeR_bpߵ'x b.3v kCzܸZvr w5D7 NfiiU<_ayZeYԷO#|GgDZ#K k[ lU$ bs53L*ZLO"V0 NTƶq`);I7LW1Ȫ .|Io3UI!hdN9x̊ojIx#$!Q1}oGūnz?8A 4Dd,XKIn7p+@R \'' T.dYݶ|zC~pzGOWϴ%qt,f DMehu;je=աoOj9NGyڦ=JMQ5yٺ]+KHN%T-ܳKTصe6-_uaVٿ%B)%TGklF\WQt3YB+kJyf)yV^ґb5L\Q"B={JUϸx(uûJ2? uZ*`U7sb;Ys7S)p]Rd.kTGzh4Ri> EZ>XN˯qSĚM\B %,S0BrUAP$:7/ݐY7{'ݗ$cpҖEO4ete<ޘYIoL_Ncd#mwI6*J n M2q-˖l|CKZj  8>*pn>|H\%C9ɍ\( f . s-v8-I[Bn=\iOc2*O=,`&n{lt~TitZazh}Wr|uJ1˭hO3>;q)i/U=-jILzn cR"3 Ad@#ۯhGPp6PKw.45@ :s39BK_nJ1mS֦xMd< !4=Ei =Ө ̐).W|QbOd~KT_&6ìq@;Wm 68M@e}>⳰M{\ST;H\e^ s+&Iel= =-~m/q.pvP ޼8#o8[]%ƈm}A$Y!NFiS&^.v(R#=]zO vlΪ _83Ě3V3sS^C^/f{n&ZKk0Y<~;ޱܫ1E` Wtr̥Az}危3*x6vСw͇nQ\= ➤&@Y!*J|W΀N&Q^98m|X*[y;kp_Dpӄ) RO'ESu':BI%uNδVDYdihM0)*:iףnPyͰ[j.1vJ̆E镱})A  k9H:!Av[~&jR[˜z? MY+Fx/,U 9sK.{ hI+h\_[YCG>ykl&{K4X& ͉4%bec՝nGiq_&#YKD%z6omՓdi&ɑKp6NF϶ I|ZE gZUd6pe߹H +f᧭I$=\̘K[ު<aaC&N43JeJ!7k_ 38 {__0k&mt{Nżisr=,B]5SDu38Qs͐"=ZU٬XR4Itv|ʷư=cjClZ[atpĈA?$!| d+@bA¬%i|DnYycL߃to$8آ 1yH%-GvcşTJ,ڦ-[0~y a0ۯɳoEp:a U3()[p酚]B zAbb|=`K1r1<ɪ"w 0MfLl)w8{; cšo.Mla/RSk< u3PQƜR0ӏxCu .~5|}63AyER̋q[_,xn(Vwp@&L('^a5kEn=JQ qdi]=066;m}%+$Kc%|XvȾ솏[`A AgUzbT^Lgu[ 3YzZ%LO?~|j#0 Xs.9Zc7@Ot*z5%5aa[l 2ծ(Ѝ伋@مel2pBKzK}4B6hAeٰ?őCMYVa#]:Jshe!*~9SRݷDKlQG^ְG~:w|O{6Pyq&BWa{C`crʵ52ΐB \f mgщ]0/Fdg+f)D~pnS, =P<& Dc(?8]/Nk's^ =[2-H H<H4>^q{Դ<*^D =Ĵ![~ͤ \nq u_ W;8Se"s"G$r OB#юa7P(V0 6Grl/g9UR --b&SZ-T-)56>l[tsj@! eSwmzkaxW>]QȻ>U Z?4=zb`QE<1-j"j.b~$ԙj"y6?lAAS bX{`Jq$蛣CYn0$LfhFرW1 X;I$o N&@hOU$ݣ<RBp2\hM]F- [ѱ88xsC}UX\裼X MV)c"7oȂDtk N0`~fvZ>ڍ2-p$|V0_RBVÏ$SCM5Pկzy: InQuv>La:gi'vb1BI)klΠY@eN+.!CWͱ1 5Όt> `)N yX~q2|bƴg˭fϑiY[6d+b11䍯^{ϻRXŨY2\y+RV()dK(Y%x1N{N::R5CfgC<_9RgV4Pv UxHu@rZ< kwk]2=5U7P'mB.UD /}eϭ>j; >^,b`o#1JXe@TBU4yf:H@9C7.jLU"]p /kbC0.·Oc2ةMz>āޔd44rEi<-P0Q6ztiF I<$XL_?>=}ڝO Sr}V %S+tDl\=byy)|u?ݗk"h-:ȗ {whʧ&T* H94 Ak )K0Q˶F) 6{c7 2фó9N^n <)V 9ё=:{^%C7 UGDD8=VvǭWzGBC΄*7۫S߿;b=񰁶T9lcDᳰiXsЭ56K,} l|PL\Xc I`.&o~&ʬmz)N#L 4ɸ <GgS_@$MGʇGTX R*Iԯ˺!V j4x󶂛aecZ,Q(ErW#F1t3^:rSī+5o,g mOHnd/x$a174UʝQ n5VgfG[h=lH#tQ_9tn02{73Yc(+Ca\ \א `,V9dapģƨyÒR%7W4]iw8As3ax Cҷ5&T#ݭE*Jo?tHN '{I9pt&%f .!pn4ΨHhF mC ɵ,K}Y󑯡cv.K)clNsy>qVg^b0+k .* *wm ;zig;jz̜c-;͆Y/;>.,({1yi qwZvJ|u*9 >+])S~&0  }_`6ˤ%QTTU`Ohl%8%*tHXGlg[w `LtKyxYsbU +Pkʤ<$Wif^e@u@aŕK)Z^a#Q?vϢƝьL5 Wk>>@*\]î \a{#S5@!9AR T#Y`|P#arA{ruBHɹ9`(˺K*akH f׿ܥ ѭehXg >x]W ~k_@TiZ; mJYKBC&>XQN=g 7oqL~TX`MVÙ 65Y%W{6*ZWXDO~yDuc9-gX|Rkm{#(ձی☯b&i !.Lj7уgBj>UKQ>.Y)RzcњMڰYsBt(U *m/{Чc8G?r6QI/3U؞fc8@_=UȲfCLʔYweQqajziޕͩwUy`TmQ =o>MVNviwY,o yWPK^yc_fy"eA[d|F?>*JD'EdH=}j( ˦XB֫NIU_:0S>?teޯ6GBlI.֮[SD,NBőTzqMy~?Cn}NGJ]/W:Wb4-;3kt10E@rm|KlbWlk0XOl-Eiu*-n>C4ڇ:nwzt 2FYge^u N{>}KZ:@C/UI8<#bӭ@DM-E0YƮ.eb{h|Xe ӓVumT%E$v" ^,"@!c4џK Dlݽ Cdʸ)]0Xٛ1ڨ<-3U70!#:f/NowKKLNb׼dO`:$r׳P %x@FZxM@d ӑŬDI( Gq(Ued=ARHF ;|M}>n?VC܋)7١'38K̞Բ)k'Lkj@'8oO}0ctR QWuQtx MpΎ Xa("~sC7izDCFt9t6:L=4b3q_:_,%+ӏc}RdZ:::TӍ6*l/.~x<l&~([vns3ݲh,S4k3I'ҳ%HQ#XPlT#M. id2!. KI 5_ݻCI$ hWeuÞn4pTN /cN 5"mys}eQ lԕz{S2Cce^=`փiѷ!gPeĊ`f#B| tm](!CK/bGfVeFZĆ"0!%?G5.8[D&s)8i)[v&Vw~}IB>M6%V Ľ˗f& 38S,ג=dqo_/)K)2RF;s/xڀԘ2ZL2`O=u6oRs-UysN-[=+8+>&ա)P'ufM2 *Z]b0YXgMnB\(#.yeS5O^X2k\<{)"u>a9hm>ldDm: U7f׶Y.'GOӭw?x3ljʍHUu^%mG:Ȕ:pśh`=q4gՆ0';2&RUH{j]nX :T !)FH]$rE\W )z:*b9-sI=܁9J6_^Sd`tN\W]禰e7CO%l R-9N^I7E ^ty XxWj:^,iSЕ0HymC4ЪѺJ67[VQteRw(a:_UY;yضPDE mQ e G]b/L>`$^ѓ- 쵛r5#NWF;h46ǖ2%vS?؄OlltımWE F6 ՐUb!<+0\T,}ZBJSիe vRTh +$L5͖lJ\9;(2@0ʹ`ChSMVMk,""&:cMl7T 7<.< p,шqCԹrt:ai[ƷS^anlEٷH?8 #Rw1GlQJvsrђ%BL$.MwWO7:VUԑed/8Woᗄ@lerN6-<-$S+]&j6V+ T*-(5MjֵA8"93Ԛ6Ki1wEgyGp`}mu3+'&eИ&^Ǎ|PaA3WK5~qvIJRkDoF؂ʫV66/|߸jMSOk@Ν+0tnL,;4WeҴQ`}F{Z/"[psz|j3O8ӱVˢ NA&u ۓm' Mή5ajR] ➭J"=h;u%gVvL7K)!Sxb~Ge^ػo* > c{ ֏t %;ӑ)2^ 1Ys-_Zn"ʈe;gS$sPyϺ Ѩ2~w_^X6v9 S博Nk0з%4Jun/huH,_/jWv馌cI\,ثpDȲV EX1`輬lm+@R DpΟ$N\ S!᪉$c&zp,T7} ,HxX:Q)N3k:HK]FEEvN`hcz#icAm깠KR| c4H8Wf6 * M=j753LKV-H>^MI#)qsRj_x-hS, V}o>ek|#H΅d_Md@* I6a"|U>Ǡ}ն qIY,F#omYyu|+J]]RYz3F d!?"0mIĥF}!j[\WD}~I?QݯZ'SCb g7k N#o!H XƷ|F&ZqNx)$`$2k;h |*}ʪmIӱ-TwTɜYzq/"ke/Tk7yi,lJP1fe82?L `2QxqyOtS2E t\V)RYR7q3L14_BDoz53\}7{9ÖkY /Fr#%M&XO|e_P`~IH{#! \^y"B,g#d vo՛$cNlOHZ#1ْg`91{7g~w=jj~˱j 2$̺i"%  gC<_R ѿƉ==#`3o>pHGDߐ-;l%ԯҁZwd(1p⭢&=6>"(}v"/Z{ǪہҍD׋yP8uꓒGޕ B"p'& ixINoV k%F?~]P;]qV#x\GǗkfFP_[/~L8Y,@G_4HrNmpw&^Z1!kV g/+:)߭F P/F*gMDPRF+.)Eq;u{ғ|H5*73P{ i6JL'$6^ϭʘSp~p+! C#-zCɧW9uD8 bZQ6Dz* .B *D6 ..-$+ 2 BZ'eu!$Q[Qk5S|6 6ti!?&Uo Uj?9lГRkctgr2<6.j2Y@Su=䵸*= nxr]~n:z]`e>'ND;,&%lAn9L4T?ISՊj6E *|{L'*=Mpb@qG*> >(bd>{$X4Ao(F C fRLM&n5J瑀h Z8hwMVZ H?^ȚwkŁ뺇.q%Կ! =TDdQD\p @@!7t{ P`aTegӭ-N<Ƙ8gV%[dVt-$ HR) hUHyN|׳T̼$c+z^ 7.!zmig4Su`G Ma~XېaJsz~E+<8A q~~K'ٟآ`W/x G)c{6.KK.| Tp"pA.Z.H4c)>7}Gk ڪPmIn_@Ƈސ8*9kR`S6A)(뮑\w<{-l!sȫkߩ|5eًC܈160kPke xe\ʕugMq*{"pr4"1-SBESZ& R'qBEE~Aϧۧ`{zRp6ވ8WA:iZ^ahF9}vBa;ִ"E),dwlj?ȋ}p+# &36 7 %Cfb_h gq#PcI RmPF(&T9h}GJ=6tYkNQ2Gn4_5аn-q9A  Nt Q/WЛ#č5nf:t_g}6Rp-ux(RR3ΠzރІwꕠB=_9(ć`+!~NݱBe*0ot/DhRi,;tRej^RJCί'^JKwhl 8tE̪,_͉C~QU@ˠ":z.~ǀĐ{z$DnKK3%RuK|T>Y=OFFtXp2jefQ-#|TAxm: ^h\ltk2՛N&hVͩxF$r:HDNiS}6Ф|XXs˜wNPvl1I7Wϫ*XθDH+Tw3K˲ltߔP8e wG*kQV}PչqHI_ɹs=3Њ9;6r&J#+$3gR!ilm4`)ܡ|d붕Ui{dw۟A~'h9=e+#@Y-)B5}`كJB 5 C9*ɭrNKRDp(ClA#{mfLY_%'GSu!rq%J0{uȠ;FAh٫(/=<P+8kD"xâD p?1eݔ=E0Os(3X%Sl JwDCXK혰ovDyEps¹hC#a(C+hVXyK-,/1BnƠû#r"oiz+NEr!B֮rv=63)U rHyY.d>*$[xev9 Oۄ3";tE(vdk7I E9D0Ã[*khm1͂pyXsT?l|EB+ux(EI{tn;r6ݨ!EZq;XL] oe";\l݅pȋ7&>in9_\l[-g<&x=aBۄR$D 3W*:_0\l9^[%~$V#Z%ɍd Xd}3Dk]id/=0)cR[?zLOάOdKW肛ɤ̤eeժ*BI_4,Z.R]3ena}˞ii%xMG4Ba:YWT(Xi*gl纲'k.ZZٮ57ɗfFQ {C;NCsoS-KAmѬo aenr^jm`e]L.~xPr!;]p|*1D /ONȠв _j!VY*!ĀӠX#4CݒN%3I䀀N D#kT)sSK፣飜Gb Mmhz|qT3 oVjzg `Qg(>y<vt#f zm;05|j0WJ8$$*[\uCzMIA.<ѴFHXyK 4= ={wn|0*F%S0VWsUZ*Pi!锂̀>~;Ј ѯρ~$ UTAhlEpN_FDBs(5[WnSQR_”WjxjqRF1Z"lBi`!*QyG0 0yMH+\Ƥfp"mSnLl` MK_> nT;r^PܬS\ 0d kx`X'lӪC^}m{kSQ oF)6 $4$H_* zek~pˮz?\?IG%K(͙X(OLSaFS/KiBƾEo^>Ss]10WRG . wS}\2is:H~=ydxYKQ)Y*cIj0W L/>|&(i:|N^ Ѯ8se=Q+?6.Z`xFHq;}m #ۺ' o-!wI}kԯ_h5 5"4.H!B#~j!ҨI[ЄZaj}䒌Gc>FMQ׾Ođc|Vv5kU~Y`#h8)k!3CQ/SDٌ_I.S ]REfEn,BQ}W:5¯fOk[Ϫ'V:UP`_zťfd-LO{lqc2!r# -=arQ@?К/LX;z||[Ӏl'&oe@HweiuCi&FddWQ\L# G s%G6@ŧG؛[5dv"MXv, T[ydX#:QޑnA~ڇZ:Vqu[YgDplu<ڎ3S"T Qt>se_ll;bjx @&.by jnn̐[ev7H Gv&Ic*&jZv"$սw&nl[SGDŽ/cȎߵ+ ~?/d KVᄀ%X&Ld^)њ撓En:/ r+⦹fmt sD\۰h` ,UTѕ)K8[C)Z(>Jmy"0xLԂOo,0[,p{Aqƞ]zPJms3Q*H- v)rCodCtN2wJ*9gf ֛J.y: 葳Es6$a 9oR[?c$v뷅0X[JhaS.9|CYi+4Ѝl Jy54C[(+uN>PȱNNPiS[H4!etc9"3H)C\0F38M TTYdoJ@U&?[﫯W}5yZUf(.D O)1RT9TY,]n~A uMlxl*Byk+C v/Z$ Wƽ 6ƙ0w0C<5I| -w rfeicBQE()2NeOf[q1v%׊Mx| [unܔXpgn؛hmɰRsѡxpcq B^nI߆@!=2@ xT95V 5}?CvN }<~?gh(h\狼mUxV1j9xeimՕHk7TY4K@C߲:?B2uc:˰u9;.(9ə'7QHSpAH ^1N }a^yBPz2o & cE!W5qz{O_8 UY %чt(sLn0 _Bg-E͏q > f";B7jAppV=5U(' }+fMBnmףJk|\  S07Ś \WwM#m+Ꮁ4Kq\hV/1q( *4Y2y.7SL$L/k.b%X ow(Mw\]1EnTEd…V=^|s[ h7, !?:_)OI W}5!OllGJ(>Z=B/K˪kP`nA?3o(wU dCKtoO4[pGr 4M{֐וi p5T6eECbF?(Ȧ>7t3J)bͦP{\>R& %=H4OMpHjK%2 p}5J*ccx"FxaN)O{cm>TH{K˵q` ` X(SZ~ .ˌv3<4V*U~#Ϩ2'&],8MeA!.bѦF;s) qً}e0@!"Rg=%U,l΃ Z,E}MZ}YQ2Qȯ͇QL1дl C11f4 E+V"'~<0zY@Rv]Yi\~2ͧ~C7+?~F.ܯ=BVA `ߩ _JRƸ=UI&mYeR`gpU F`,7Rv_dRTY:~4nQQzKl^,%m`[3h] 3L II}kzD+p#z~I39O@ϖtPu@ ꯰Lf%?e<ۆM\qhw#":j.5-4<<sܵj4\ oe{~S :T-R^e6pIL3 :@([OV]\ u42VʫNNO- E#nzԧdJ z>g1W.a\`z?ŴԀظlIfl:5[ #c(lnRr4`EO&「#)(~JI%(E-^wF\ʸ"%Z8E"PCM9 eJǦr,)Ŕ) ||\v!ibSsZ|}{73PIq4pRNҕ XK:z' Yz* FR zP0$֒:x$&ÚqЗZ\3x^:E0r#ie#k"Zx!8Mo&8~m ;uWac/ ;v^?FwF1l{@@G@4:Hl89:?ۇnp&܊$:s$yl8%ҮΡIEepdC$S9?IWܔצCT eTu^ːa$ÒBrOqgt@Sx(,CC(BmmG  &;ǕaS3\Ytu~zE8GVY+D0*tג~I0Й XoAK]ҏ L:G4TBU=!+|˥ o]>RI9,Z ]b"jt9DdKy)U6A,yN8bLq]Oc+/:7zedqWHVH׺^RZN4CSFլ;kwow|ib0o"Hu)OkjS#_ ѧP@E\ѪlIS֞dS) %٨ h1Q< M4dwbē>[j ]űR+{H6*rdبkvQy-D!쵉4<]l} Ur(F<L ÍCS'YW0m-7d#:n.-%ZD޴in "Fb4P*pU0"Z?s5^,lօWE?^ AzA$&2n  ,/sEPȻ]m5o+5﬊GM 5 X JHc{&~徻%C _Fgev\`˳k0R;BW9n2;'st`Z`< ,wTۋ*}=i6#e{ހ$v7E;IeBT]% x"DB4мȰ!e(R:8-bM<!o.uh/~9㼵EmGo>oB$,ntz.SlR,( -{5/o %Gٰ?JMv<*,l3 ֌Z̕,g>`2kF/k wY si'<d/Ư:v+YiYq"OF?mو4U} b go7m0#+LTo~l㑹.@2";ͳbGL'qb򡆌6R;fpAn*&:7)jp0}w20~Vr~bދvp!b'W0@lӌa&@=y ηQ ʢQ fErcyvj᪻e*GA3" l&ˆ]&闁GID>wRQ a1++6OcgK~VMƦ>.r\;~}+Eyo!C&ZSKeH؁1iXO䤦%a6 ;J؀3p!f Q@vi>zﮆ]lQx?NC|Q#O[-(B%a&}V%$>~@,6b7Q wcS~B {#nfpLfD ρq=+oΥYϰ XHm#*A??>y{^VO1oA%@Յme(8s(K^V ~eU$/'!sr$1<"FB-p,pbi6{!K0#!<0=UDGL36H*1u;cӌ*{%Q! Oi*+&t r"G7cKЩq'oɖsOٙm2󒻠ގΛ{Xb}x(碕L UFu|W?Q* b-0wKtFW ;+ЯOj Ϲf/;UcS+{$#bUoyW m\uΰ ۹i\4}jFph؝}EMS^Erն&/~2ྤvQ|OSW$f:rx :S&ή73j"p&Uz?g'Q,,Q7֗ZkRgZ YGxgRHgsΊRBUWKȖj|nPZoYzPqQH484g'%O9$ r$8cI,RYVk[`î\U\ݲf̔bN%oAR@3 @K2#rz9ާt"p CJ.|y+:rʇR5*fNeItcB6q.R.y\D(QЏģVKTt{ YQ<~֪%[(qM`- kB  &Yr⃮N$BP\->{gz_~4X8Z7wk~ Ű:O׏3i; D ByFmb*/(w宙B38(=sMRk3D&2'c/7ۑXmr8&a teYf2a8${VbKڡR/<);%$TT}ۜ{硗еd ?ӎK9>ǕH:\gdp νZObj/2*t;ٺЋu? qtJ,3K>YQp*Ѫ# $N"vsbF%* s #]xCb*j@ y /ugMCHuWlׅMЗPͻc|Q검WZZi:Iw*^£06W4dTh`J,T#tMwIJ/WRnMbW2_X-vpS+W_h=|tZCfTøBiqX"?Oiy>n]0:;V.YK5[gj*O?aXvs pdIJ?uBjԌ၆Dp(^dzoN}HOȘS+ yӭo\F A,X%esor*eԡUrk/~$6yz:FS6ԝBܺ9t1(>>ʌ?Ȧ_܉m%7iiX`i1f~(#}͚PLn;A*͸݉7ct-gGfT{]xK",n+D0\屋~yP$.cɹ(S&Z޼|+N?G, Rʰ ƅ[( q_`qҹ|:`CIcf+7fezf Vcq$C0Ug$іR`Q]@ͅeG4:Mleʀt(r{gV*h-.hKR(EMQ!3\Ä2@p#M˴\^bTNONy]!xf\kTU%+A!08l.rPyF\EDRjsCw\w\9*@mוv ~&hLA`g ,t%?̹OO%UX'N l>ǯKG˺tQ XT87{p^x#ईz:z7MƵ^#N4R![יRFO@=׭AJu NdUt_D}E3MR|5ƛj f!sA-愁o݈'^pi}+hsS+\P Z z?W zt {Iv:嵩#3JG^mM1b{l؎ɰ;Sw? j_Pg 9]q*S29V\Q71O]z9]Lfa%]瞃*~5Mi gdaOs9#Q^r\ uNWޜ Nc=A\dGZJ驽]jB yͶQ9-|a L̷#C-cV'j41"jՏGC(l:=N݄isP 6~qd#_w R8Ƀ!4Qi>? "!?O'ޚhVkPJeov!"S/lOl Q&b&\Oq@i5&b@v< [6UXM-$ j2' ;K`6E {hn7+.Ys ;l?Y^ D6[{x,c^h2lRLkGF-l{sɺ/3[eJ>pLJb Nd'?˯;$<52tzaiKyv6!J7"jaC/4A!;v uaĜ+ѴxO⻿7 #slE.$]=2}R_Cj)AB`{MokpL㑯]MXSDG#%ɳ0yѦlB*1ɔ<S(ȡWȩCVcв$}ܩ X|&=pެ_ȁn% KP"83< )&N_#wB'y!iO4);$쎛 \75@#V@'ؙ'I/>X]4w؞vz2Fc|7 e9D~ނ$rE/;$ cAS@4L}` "Z@ldBq;>տ*g8 3=ԟFl"a\T=ӑ11R&j&sTڴ?MGAtOnakƞםM*mL\ b&DA8R : 8J/!>H&!u QC IZ+FOVXD4p;\(mH=o0BŏQS S0 2!z\A JZdey/JFeԞg8]Q󍨉4(#}蹒xV[3TkE#*-X>mF~:EN0-8Kg;|msѬaR¹|E!U;YwQ5vqϾ<aU*zqw2?~b!P)1'ׄ3aF# 7"Mc M)90ʭ3#F5}sVR #Ɂ"k"z_{ShyY3t`^4x3UH~&r^( 8$C158&]^G Y UL6>ZdiP\b>F;l,{ {=rtXNC$q(Lד`ei(r/a9\)V*dT,qFzW#~Ey.3 j2RiJ QQ-z /2OaS9v3=*BK4{FbQX YZYF́.`LUrs~.b ۪AYf T9+ wDl۝?Z( p?_̈DY%@â,1,0$%Z]@G[aG OdlL.r[nZRWO=1 ynZAWY᎔tD %A h%B}: 4:PafJ:n/0j +#86eLO?I!B.Ƹ57Dr*]O$޿C"2<#x00=xXsܦRpE S3'j˨~cch&gg=$GV(N"51Z5>ieD^]A^ݡDeK}k[LX֒k! Ut?`*W>O/L*iܭec8*__<$0a `UI\$:l: a4p*i9i. puN;׋3 tѯŀ]-`&: :_dvpp, AWsh8Ό?d9cuHɃUzR3Y FЬ:֊[BbJp3j/{˨G)ʿ;>^4[&wZ܇X@bCOCyz.FcҥwʌtQM5PC +Kƒ%]#f=E{0PO8G],1#\rʽTGNW`YsabăD[(/j9#L p%Y haKK`ۮߡ_-灅*<ZHĎ4zAR `tsЈe_F}΀3*HJɟJ~,Zܕl)>l]H|E;ħ: *Fl>M(1@$URܛfP#]JشAeQLr ?ß 1qUk&|F@fX,Η(r ã7EgXa؆;z +ni!vwY#=J!<$qk#­p#%;S*슡,:y8BBʾG*H ^~#1C\w^}ECs7j4 `$P81a1 vPgDe56,ۇDŽ)&!aQx{~2RMŽ8fPƶ۶T'X) gq$"6 #:-,kgoJB$Gyͯ,AӦ\bsc·(/Nlj)W,GOQq)B5^nL@ι>8,wbۖ`и `)y\[}B')(DTdx靉}'}j:پ>A!6n`53MctepVdZ,W(o&N=D e AD}zoo'tߣ˟mOs6_TP#:k)XJa#?JL D#0 RDKhv[ E ȽdD1ד&x@zO=VbL.\zUhnAVk6䈂^lEg: yZKwki}M"I(Vsع[$ߏ8nG GZB5_Tp bPO8I ǙH{}S1􁽁䯫9x),s4vt @QaL\YU¢QcUhExt[QP&O{G/xk`1tX}fMsicUx_K>VQ0_ۦ'??L`N(x_=pWO88k u[igќ^”=!(֞x7r7 KK!#duŽ0GDQyd^ˉÙ<ժݸL^-;ON`JN`3t7PLFwY/Z(r:vlQ a|(zQtŷx kvqAB˃US1 gFf#lkd#Z ni14()!ǘi^H/ov<1m9Vq|20zwtIJBZ} &k@M.7P+`WYH`>*S܍,;3x8NdR8H(y 2ol hhs> B17iN&le',w5-rH$a壌-k(rH aԃJ(yDCAٹeTvj\PK7{8Q,,U!nɶ (aDU'n`C!%CKa&gNtiP˓<7!0:q֑\m4H~91{Mdҁ4>Fu_HB)/[U#՘oY0ɬ4OUR/!IC v i[ #\`A_o(f@% u'VxB B @ ?[`CBl-;.vTtW :ڝm$u*fD"ɼ"~#Ӝiy=FmwOSR&W6ܚY8^c7H VsRCwFHBIDP jk;%. }tH..hz@t ] " Kt"3ޟ${&(o/t[Pxg-1/c:3%"z>PŠnj̼>ㅂΕe?_EDOO٘:d]i.7bn×=mQsQ l/ľ,0A>gS F[!I'p&n_o2י" +)nBL@R{UU9J0bI~4aUU,I9G%d -m7vC9&ź|B^Ͻ?}@o? 6{ڙN^ڟ%\ue6R $*8Q PƷ]$\կzr]gc?|GX%1׵GqXRiSev/\b:ݸ _l[H7'*T QkIR?DCP F!5@zPر\S>{Hpt3c^f\O$/pYݢ+j"(0Fc|I>I;c12(eT*X*Nyٌ`ͬe&j5VG $0gFACP5wF/kfeߨie 3ڞk(c.;&<-i>/9c}m2 A/֯ 9ێx 1gR9?w lE8⪕f{b*xD!B* npGaL9!+U:/*x')iƃ'k6,vB RLk&M C,@/@t3f/|qXKD)䘁xj5EΆo KeUAFd^̀?p%D& cEvCecA`1>9k~aڇLPfRz> >Ta 2{Z:]H%c Ah#IBn}(L*B9dv#8Bx0 O'D&'D{K!7epQa|  lgLӔ-eXŋw[[c릾}++8F|_۩٢ƒ xC¨WbBن*,C]?7 #8̃T/ ^:G28Σ`h4*B̋'KkxT;Xp)3P0nM!J^FR/ZUWE>ͥy TpɊ8o j5z8@~=cpXM˚:.lSq_(ޕ祊]zoQ2mR5PRŧO#IT#R@*"ΡgEe?$Q'nxG (2c|/d==pjS؝IQttwM7v]({!ۂ djlQFR<LܷB1Qߐ`J8Du_L['J>Z{pGڣ NI {Z-Tc3-/z{\JqW9-t.E#?pՙWAlvA@PkMN lra)5!O#kiF-C GHSZrj.-QS)MqZ | nseG_*HخlibN7[:0af s5:i mcVB;BÐFiITB?m4 PCo0?;7-% 6 fg˪|m`,&E>y( tlDΦ[oƼ ~|ă0FC!7-s{y "6 _ã%!2S5f_j;/ ~brBłzѢNdɘ(M2WuhMRer{%GYu"{l"O%mow *G${q>z%dP8˩e64lV`>[J΅d曓rC`̝6-Ó=H>2-bZ{g%{EaXP<#T: x^Da}/ mJ=l/ح[C:8w(͚O,ا޺Y8)|"oWWwDu534MEO0ְO=:>{.ڑ L0`i;4-k轔AhK "c )eu6Onp`J^ KY }IkY&ºv(& p-JIdlє`!?ԓ[jB<0CeWМEe|Bgv>B!hF `< ILZfiB6QυNiz:enly,%[7d!Qc&{"O)qvGYe}@'VLw?]c0KY[NdS#1$#\Cѣʄbr'([l!y֩&;!Gf6:bcD>0]} 13* r#P 1)M]F;l ;k 4Wn#W塭x~cQGW>[ֲl6:sWi8ܘ|ǻXڌVS4+l01Ĭ?Rc% ֪u;\Ξ4_Qؙ zv<@/̮)E| M*b؝RYŕr=SM2L(5E&o6+NN7NKȵn ;_˻~sze[9f[4}~̦̫yc]2K݊bj+7uѥK[/~ .W.Dv1^y} ,MfMPj4(qPpFKK7٩ 1&'tS%PMFEx s <}$1vtiZ$X2N_|v"  7="x ~b+DHa >Z5"YS7 d[{ Fd`cfRӬ<:xr5cPᴺh߀5XuFRN?sM%  >Egx92㒙U2SdVp9 AMH?ZQY78aZk_.Ve&C>~M/o>qyu賙B7F.]!:\y&zmkE, F%J߮J|**ҜW- )5w2%a_N1 kSrxPM?,nlޑx玊;F ;+ iu\XN_?q|. ]c^o|HSJʜ5EO&?w 7?Ioy%$ޟ\^^>.B=xd\m#uΘ*"- |:F7*u3jc"f⩹>kfQ\d%嫬#1|Em@:߄Ҳ!ӉLm[Z黷rɌ(uC!`zZ¶c9 yH'J૚`sE{57!o[Ro)],yH;Rxt{ d@.9\xpċ; >[wLhq/$[W18qy3 wMFuj/-}5>[;+T6OXہ+RaSP;u?M!l \ |DIOڵ@7K*A[k 3^ge#:ӭ*AhrlKˎiq$QryomkFBK5})U}ʰ2`R8By9x dyqQiaѠ8f#xItYR&$v~sq{km݈̐so1=!XtT ]-- PTj0y[Y]qȄֹfs/μdA"Io('4'y'|;horS{_r8@"Fjt脆vVB9w(GyY1n8q^(Q\z>\v BquXmE(O8X]@]^L#PԨn/N#.iYbE!ǷOsǬ1afp' HzW!@^]?.R֬p.=quO-?Σ,DylRakqdD1ѡ2#wsU閠3|{9Q P`lC\g7#/ЏV> *.oebH*S"=uX[mWH߃wȋ+dJg[l_N}M ōFOB%4^A ~7j _Dr5 C䆊nd6a(Ay>.7aLf| 1_~N[ &k , 8SF*}Wի?fhˀȑT>"9_N,Rgtm"(p&$A6q7`u&MXvɢѨ*Էn{\b+մύ#̞Rca (ns¿iGv*/Wt)@{cyե̒\:<5cI/,7JI|3r .pQLKfv2H#?4`-QAG)F>L5ČVsD{yW NЉ'vL:-p}oЬ,ͨ=S ȜRVhSD PMC A=,x}tgy\sU, =ga /ŲgPFnG[]\((-PZfm! 5 a0RhUuLGe[z&5$ @tPa`*l].m?Gx+A}C5[*"#ZJ^7Hܩ{`pw ? j~@5=8où̊^ t"ol-C~?UU,we OZ~*daeRBNd=8 !ٯUN|Fw%Y%ek謴FF%J raE8pH_ιx҂nr86;*R"J% 9GSp8t 8}'@g&h^?~7)=A!@zM\b"1]5mhHUyI\YFswZ8'y-Z[|I-&pxNRF#v;͢c.dhsM&unBW$`p/WO5 jXp鳦U.`Fάb˗FԇSD2_Y\PL]$V*[X+@l9s{rAt>;vHh7ӡrXQ ?1ޓ<= -߰/,@f̠AxEV\wWl.Ikӵm װ^c)DQ<>aw5?ve'2mht6TU+))Pwgҕ3 0rJk+`|!{d\dmc%4N  '^U$}l9O1vCE)6 P[\pWwf˖pD"*(Ҷ=eL[{*3&9pp*{=y$bfuz;Q .1ɑ,&ӹ}8ɒ8d2.‘[@C9#f&˴>%{' ÀnCe@Kw2 ci@[k~cEѭ\aJ-o j4E"h_(ȧV'Eaw4 Gs› Hn@|WjgM>+1 1M2P(F`Oɫ*Wzm//;_f)m|л (S&*X^1uVcc[תG[Uvn?{y8<)=0P-;Wn{4krk׷ȡ3r v 'vrg5(Qy Q/+Ra aS\bUGM 5="JݟaӺA+tr_]aC*GjuoZ%͏PHKr[x!E7HjNJo8m>ի6&;I[$o>Q=vXI|H %f&X0Z0X5'hTI]ᤚqRrq˅;%J:.&M5 `D4edc43ˎHi@QbjiUnG>#Sշv#-$B6iMgӛ eI0_ z7һxD*a4MRzDϬ؝)`sbcїg/}ZFUyIf-C =exuB.M,.G(WC@r8O'~t;%yߴwwݱ?d 7۲`"dBi4.{'sE߂$g O^E::%>ВKAob: p2\( Vt1>tY6Xfbs#ˇ\>NЫ2X︳yn^~E:7].4!Ĕk#r%~ ܀6Ѥ;x7[z!!3W~dyi<~+sk_/OB<ts:9\weBc髌:Mr>-T+b~j k.h0\TTFD{2#"`m|~=^n̛b{#Ձ/!zY?<ܛYpm\bֹ:20So$ hWn)mB|Jz5  .wq\ҶdOis0'(]zޜ/]YcLXRLѸhCR`At#v&b A\`?t`~-Nq4TqѪ]*nDzp, 0cqH:cN 퉥6Mĩ[4_#\J GT֯a<: Fnd:}BeE2lJ^.?GCuzG85hWTuƞ{$4EqU65QGFZ"ƃ|cN+>%{{IHb<}&}I5UCrnЖS\Cyg]>5_*|&D>$!MwX Ą_9Maϯov#QY'l`UJjh v{<^.A$C5d0TԺ'!C9c쵽{'b Qt>|»؞zU8| 9nodܻ 61;jyv*NU/퀴nI_a/oK-.|ϵ # \#1&" B}-9 L5ݹzFuJn7O!cnSo Ӛ42t҉BBy=s:T5n+] .5J5^ 5.]\  UCsEq~W q0Eg*s 7v ZY ͭ..hi85+` f$kJ EHx6 e) MˤUQ Q1+RGVXNNpo @5ޣ$6zQ~Z,P9+T1 1$}1? 0PB_tNyq8,$ :GOC7냐Z7Z@{Ul*UdgGLNd:+axi{$̷.gݢ1/Q4[inuq9 Xsۭgv=Iijޣb5bI$ެR!Qy0| ٩,ao"/ e= a{@ N 0CX>ѣ$fGR KVci ܥ:bOr􏼭'3{>K1&cOR*]Lp 4e^ dNiƈ[S4t317q,}8ADhfsGҒGр]ۙ1at\Я:OPB0?azdR`΁ӡ @@b~ɟʬ$,^vHe4oKз/Fs%j(@3GSD;SEb<\NJY)4aa6GV틯vjf_ #La1ܦJ^ EDۜx,"4Yr|eUӭ^jH×@T ^UW_j`T͇M;zD-ys 9^2:jVJw:97o~'2tNJļ9quF$~Mʔ^y !|LTLw08pt%Q[QWYD[0rŤO TkVi(%UCFx>[#Vf\=D@Y1!nIVd\S&+b{ܴU~= 0XDю;ӡzÇx!$eE1浦ٍ2AHF \nMsoaLvСh~@+'`kGu<6I 5BdNÏV2YG}_t͍o`ىU C;qf U2 mu܉7ur1Yӡ^Nކq6 \ޱ߽,ث'h(|L}|`*G颳r9F^wu([_pJxslw`QYp=;} b my/ctŃ!ߏhg8!I9r~߶`Xѭ m[v%[\Htff\pZȕscW 5͂u5"@Ķg SH-_uڐA3 =!# +>4[p* E4s҈x.˝DH;3xQmH8g(YXjfw4+03?c7A35 /%?r,uPGx#5? GńSĪ'=VpiZj+[k.>XeR;lYr~64H;Xۍfj gf.7,D$}mGqC|1-\0XޛxBz/Ydɐ.DliYf3z1,:֓鵃a8ƾ{-׾L%T^g0Y:$R7b+F[y۵H?xH*)*4$'v,(NiI6uD`5^G8wW: &eX]w޳L?LYO%-s (* lh91aY)z %=w+ $kO4ꥅIvr0Ύcvb|:J<ݔMs7VŢmP\@l7c哮(KL:TSrXn8(q\U5 +BհF,^"*t ݴQLذ?wZ X9a&=ʋ>*dJ{O(#q-Fm$-&`a$EKiK|X&$˄fPhlw.{^ WvIJ/-IVc0E iM BDU2SH4 U?Jku<~SM.^<+)'"X B˓2 jN,ꝇMps%Qv ;PmΧ6vݱ)AFHllHv2l, Fkې9Hs8Ϻzoɯfp wQ9*+yC m?5ETP $ʈ4'p]g&͖p=.CVYoX$W[xhʆX1)jUId"cXF>NilFƘ@zT֖٧9WSeMg0(*пw m帋>yA.@m[U%h2T~PwB,rW95.BꚭΧre6uՠh#_G;[nF钬/ї>I)9(KN8"beBWyPߑŷG3P#,-G E s<${kʔ}ȁLBm}>t!!N848ҒMS5ԨaQaWuL3wP+^pڎܗ`pϣ+IA45$ҪM\ 0@/SbQgAuKև„}9aS$xV@j؆ ~3&qAM~n˲sїf3*Tէ!9kw]&u ):]EaMB;VHXtzZ!]z6_XDGޅTiuI:W˩rss!*#R;GkRE-He׌ⱬL/vut|l,Np#0.( xNqK`v%AQ8!Ds䊋i>h%_ۂ0;r}H /,L?PcЁU9q*{,@EJ5SԊFu-?S#NJCG1h 3/RB@!FA.$A B6^5x HYu6y -_zzvەd2NȚ10Y+|rmĝ:&)u 8d,bS `n~l)yx{w8>d60_W~==Cׂvܦw9\q:!d}Qf1&%ԓ .ޗP*`Wn4ǻOOe*&b6#eD^?jϻwi{UFҷ^ -K&-)ԁk7syį/XSĠ՞Fćt4# J%ۓI]j`x\wg }D sO76FTL-"( QCoi)@0Vh8UCT8$Czy 1!VKQhD5l(|nr^m%l'(+:YOE3@3ZK te-qLh}xPJmde]0(K~&ћo(7J67K ڮ߸Ø| v? [#hl8qHjKohF&(h,:6%JK ThB@c.wD'-uU妗9k*p5F^kˠQ[yn$վz8o%9]1O(Av1?;.{=>(=3}V]B;N`流R=HoA'So3^h^00DJ\.)f.*k 4z=%R ɞ#@sOƊ } <dS9AH1 #vq@'l~d-d6V[k9(#n;3s֐̏6rUm<0Y/uMYy!("N݋yt$Bmt92+C#5΢6 N%IL!,[0YhBv4"zbՔ& >놣k-16iz7sRuzKV m}M\ mX=]۹% mt[b\V%[BtpusE3jAMmiHnjS];2>X*ۇgՐ)ox-$>LGR-ےF"&mM#o?ȘE}zC>hBtpod!"j  hSqQy1?l "vISUS"H`'ҷ);9XG d\\MĞ%kJl4'ٮ_S35^'?6.~^nlmP)}ͫD|>yL=aZQܑxLJ<*l+ +-‡Ih@C.8Zy[%z2Q}ū+' [GML-N t|VFwtN":Y@4pW;֩[\!IQ)X.!R4pרJ`-q \+fFfQ;+yv-;sJRTb9@LS[ ƿb%8_AcȃiM0}W``Մ} qB+* Q9aDFd/0K&ޭB';\%ۣLe u_/eOs\XVO'vH`ш|3 FӲj>k_{,oU&9,_Sf ~V!q?) yfaz,ޔ3r疒ӼgOM/F[tt S(kа7 p ? ؏EqQ$nZ fK|d򌂖X|h{]eݓmyhSi$a $o5[ֆ_vH%yWkOE]em^#GO/.(@M2fى q 7W])[YTܜFASlbuоe"W,{N]If61i˿] Too Qu=zGz`x4i[k43Q `r>EBF*o`",k6\..Iw0js}%Յք%`,εhY@D`"eb&Ji̠vR (O8ZO`Ѓu@S*$g]3U䂏S SR5RE )"`N j.PE=U4*9Ao"\gD7] {.A/hFץz)"e)?3OTсؽAvtV@{p/2&5Z' zInI35xB3iJp}+̪uz1}dVDXayUiU2…<ڨDm+}݄3IlĦ8nU옍wJ6y*jt~<8^IIPT2tM|B C,&/[NUu*dpk0O-CF8Պ|t."r9S7YDhbwzʼ1fiVƮc 8%-%{?l|:906ʰk}SY8a4_Qz$O:&kZ6@j{[u*^f=C'<%Vz72%QŤNKzjfQ^~ڛ`.}_Ll-a2=Q%a{7D&CT (FwΈáz8ĕ)#e!p`˶w[{$\"'[8l 3@GӅ\ѮGnǖ?JQ/&׫VN;5pa@0&\?h_M`@f#mגFwA?RXoG/a`C]' -j~\ _wxGZsOS^ <=A<ոpQDOȯI8"eYځ 'KG>kTu#[ʒIMs XNIGqOòr9|I"c~~{칣bؕE҄V`-z1q 6Ovȋf]MoC,,aS!5ej[Q)3J\H hn`HF2%µH(mT?΄Ȓ/qv#&P!lfϫABKW3uȰkuNY7лߦE{f^ y,j#T>.\tk6}))d>+!6+RZKKXc/ul67CI`J%Zr%U:VTƘ-Joa)'ko`N]БJ0XQY.'2UdOCev 1_hm&|$(%p{,3LC3!o>Kp$͗$%:"~ۧ08 O$&BX UIJ4,(uC0fSOD?{4E<ʹ-Eإ%D15CQp%mhZLՏ+Tܮ .B ۱~QnҼB3THzzX@p- 8wƿu@ H~L?-U;cx67WYIf5+b(&Z%On V @Vrc--gBϵ_*V5:qLہ,t= , &pyjodƚov NGE̩9ݎPU@AgKR]Fٚ)LJd"3C M=@ :ՅDNUܷbx7tȹN)(VdEI!֨zu?XD 'HZOi d~#F`В|h'  =¢*̧PP/2h}ϮR} dpX\s?jwa[}6W(6r9#]c ;Ab@랓Kݍ77;U~P@Ooޖz^=f0*V5 LЅE\˄ N]/Tp=S~g]rgY @A{:z>xk]]& ##ڊ`|-@o HSɿ<80-G-7+pI_F9vx2Pe5EZ)U~pKc.'a Z~׉-HBY7ӴW~e,Ff죝=[aJvԊ)!JL.un# 0X6Ƞ$o\a=ÑMy:P= \\Y >N1[-g[Y; ,k[ %6*_-kv",ÛoWoNi9-?aU4hy|ʊܿij׾ۯ4s$'$Df[t!q@8x[GaYzzXB!Р'nKC553LgTrr1Wj /ޣ*vbJ"p<&iƭO\&5j1){+kYM7ckZ8Js*Q4 ^j'w9l'mtVs$$$f"Oü zƶ۹fO_dˋ6%B>M I>:>2-o25ؿwXy؁7Oa82}0~)/[&BE.PeZ[1yg)Ԉf!H$@H&2:_Ȕ]e3|bmɽD ;=``,$ q6oy g_|5먏BD,x$, /r ʀ!IIcuQB(LSL0u~  GutMG[C.'{N߯as>h7J 0M!ԊŒguw\PiR`{6ڠAv>1j,t?GvV@AاjہBXQftaI#O[2w) vyf/Ed0 xvh/CRh͸Dyĩn./j e=w;;EU'T}=k6\R Z p>:;=6K#{@MRpWm!+=􍫕Kir\!  onX ,"g.Q \TBi>xQ(<~{oq Hg]TW}aMsq-e>ɿ(:{L`3mR5XnyO ҇]>DMIUy_9<5ī9eFO'4U֝ }@pj2䈹l*8*15=BgX"o{O3xј:GІ¥̫YW*6zx!gD[4VW_,Gѷ >v? c$6.zs F2{4tKgb~J hB rE[A[v4hĝe{P9BDACM مC >̱݈ D߶S:o=+ve,' m` zVAA|n{ >CDl^rحǏX!wqJ /=4$KK9DZUrMPws|%{ъcu/10.g]q=ήLApË=bNy6!1*rqگ#Rwtfm=nV$9,`Dz{{=}5ڻyYcduD6ݙ?/**FФ`B^FM7e4q {L)CP:] #|*B;Cr9_GCOYSNnҠKs@lv #K7~\ xCA4dה>BPz_pz8g)S*c>2ڈNR݈b[aN9}֘w=U, ~` u6{x6^4B4Wk_VPqBV1`Z[ϓjG14*J)ҤHSS1R^^U]-v}hKўgcdjIqO/t4#"N7 FðӝCE3?A_D{#zY٧XQ-sҟ% 4_.[ɕH%p%b:Ca`V+`(9G72s䒧!wBLo{ l ?gXE"ϸ%*ϏV/;uWG`vu%4Po0-{ʲ5syY AlP!}5mqMVoGˡ0!.kOwbLGgq5_~DD']+Q:'ehva k}^s&WU:+8w4Q]=KFc+DIZpd /];~ /oܲ2@~d?w65o d Ys[< 2αta}B&o c\_HwE!q/'Nʚau!-a>=N {!M@MmE %۳OR,CЉX EwK2]'<ޣuÈG7%Y@-1xR6X/y*[RrX~ TW }^6Nn46 j-dY̘ [_@Enffhz|=~l.9=LOşPpSe1WB2LMD|oGE/yϨ;4Gl@n/xGzca#wU6R$Q??H WkxCtq)zs:k^btZ;WA0VK#ǧ4k?sҔmz_-φUR@.O>̝>qYkVnR(8T1bzx j=nn?\]4n)Clǥ4_6h)-jYucnPɀBڹ%0< ezA̶EU)H4h?u{e|PISN@Z}8R<vb)ȵ c޾z WH1 "X!LA>7dw!>;`8lL=@>R<Wh!7O*Kƍ] 瀕k:XĢ%Žc]RBh“!2kq/Go<+K4w/]x,n$9mC"VA]N.h :7T4'[Y⪢;r- $׳~pbT ?yZ"& &x SLkg(;.կAn1?# $p? Wa"[+:1ĚqVg k?@ o!l!_>N`0S`LAndG5 :q4IvtE ƾP ~o<4)n&HxW h.f(?/7]:N9 r#Hbz,%+IıϪAfd:DK ]6}+sR_E$pZYUp2XCT ܘaD]qgC>&a/[V%f*_}U`E0ϊyb{W:DvxV!ŢH,0BG΅NH}9Pγ~;{AIdE¦&;ݩ~=9 +L`wޗUwNI@ Iٕ}:Xp((O۽ُ Tee} @o`dWRkiqٝ&Z C/!QSc/Ɔ!0`E9ݤ.E UErsW~qlR%G~Ф=hȥ7C„Լ=G+.YT4ҽr%kAzA:uNc%[jgi7 ^'5)V:Z8 k^>Jx)i,6d\~lq 4g ܅D&Ga3Az`x\irzTn:;X~ZAVb<M}o&8$>;EѭWLΈ"kmEIA;Aa]',*z1q~gy[ػ(mWzSiRBs-g22Tw;$xbiTԹ #aԿ>^J`IGE]_0GR@n} Y;ZԉA'C#x k/"W) ׈Eq#2F O.(\kTݯ>4{S1ԫq^!v2IP6@Sa94͜]s Ͻn Ut%oG}#4=En&Ж`d>Ɨ萮d "z2E(T2T.xvyʸf>k&c0-&bs~16a|6P ШMU|eʊnEu>;'TT%2{s=cFH=7ÁG|NN"&~,opެR/u ۄ?@($z-;nQn862Fz$F0oVpZ4v=XXZ"WoAv0ckR(ӸwJWZϖj<ֻ~4v|(ˊK@!Ǻ7fC5A:?uɞ1ru!>oxgޯ,Vﱼqٯ,<1%Wʒ-e=4 IofL2t1+ i~etGBiMW\ ='J |*C3C2s8 nmJ9%Lhrzn ''V%pMSs'H{_YPz>H\;Hj#QyƉl:LΏ;6ׁ8*Mʖ`>bF,!j&!.kR|}HΒȡf[eҿ)D({ Vk?F7 !pTts#~Jf (QsЇepK6 nhJ@ibQ$L+ױܞ"#3?J5H]T"NM+nNvQ~#>*=;6)|08y}trvScVgŜ'LzpE^ol-Å5VK]j΢UC5~`1X B㲧AƎ{ޣ{Aջn(n}v'Br2i^z 0bc =G oRJl#v֐wo>kE0HꞒ7N_}~_޻[ "jK &Ä]? N9ퟜ ۞->ElT!> ]s4Cŗ~{}9& WYL/2#3>%(}dQy첒lm|`.WW:I)QEO=#*.ެ%1udew7Gj;u%U Z&7T?p`˃~1~wBf@ \BXѫQ8{#8He9=zpd[sO٘qItjxy+l {\1xߐ7ŌoJ/%i3d*‘_=r~iy* Ȣ)f"`RH=7i* Ue}h -dN!@ C!MKlx#=[)b.x(k1eԛّ:H4e`#AUq/'zCKk&B=|dn 5ꛥL6\V"Ɓdc:b>&-JEIeq )k5T DՐJXvhPAC ؾY>XXvj myG5?b~8 F;2;Bl ckmmIk ^z f^}H]1lך3]1%uVq%Foqb:En0nDi ic gc~FP[y"3M||>m)}b26q~!"$R zݸ`D Wg$0J25/Zs)hS _wq2hA0mg5f5$} <ƭGptg9SSٱ+Y: kP99GB&[LM4 Vyڮ7^{ _}%)Όj`:n^=%pYe $g)_5mHFqv8aɂDQ^ `=8>WI}ղa5X}KE`y7 Y",p\5Aɑ_׈9ȖWA"keAx Zۉ16)d~khMzMb2PB *7&7o(&0,t/Ớ.[uq.gSзF@u5xIIJȷV.6Q%oM0-L]Z-*VV?bƭH%̾%5b#ט$?) jj`mI+ nOm"(>(Q~X]eݍʉY)HOndJWX?TWNaUK *kXuohڧ_<(j@19nPB\=2Sada%8z VHi !Qq[BW*r\Mܙ*[2IPeBkfJA ɪN8@Y>Lt+6ۜg}^vO0d_S!b{_4P(Kg_xiJPlBfԤ΂&[|钧A޿$513hq[QWbd+y~d󻇲M>1vOFqM fjp\Y8=`E㵌E/Y(άj{O&{X8g%p_SB;-,k$O8.NT$ڟ 1l?jJHe Ƥ?PZl ϓn<:*õ J<L>(||sڊ[IE 0X@񰖷OD;/*: $s`5[z8Snܹ\ssU0gx=> ײ*OWlNO:gwf݆% 2HrXksKn:KTnYSS$Jzt{SwVxG5Oȁ!,~{I .W%+R|gqmjm[&{Lq_4-G!t+gŷS9O'{z jE#\̻eL\L<;`6wd)vw_vjU!X<_ld-Iɞ%u=%#Gfa, \s%N&|i ucXx ILHT3`wT,+5gZVW"%xD!d6Ftv%*OAѻ3 [RǮ-ޙ P{SU^Yg0'k,m1hu4 )Ea<`}mWaOMs(}~ZUvJ:KdlDAJYw%WCpA۴ޣd[64e)\!*CPÒ+Rs0jk e:ZH1̜Gy#/q3j(d4fw+gyib;='/@E"ڄ^RX>|bVTֳNj`$0bru=^D=13y_{3?UiӹԞy>%sm8JVkc2 Ƶ9I}2@ /0_vW-A}{xg)wRK@vxo[2)<=$ߟz/*G3iC$sA iD}TYiode]=c\d,Jz 8q^(R,bx[3 \Ld1s]Fxmʔ<iY3c)jdzBdP" ϊf1v SRN*5#ع cL3`pe!2L#κhD[d̤R 39V4o+:nlzC@B ,\Z.GmX=vW{S7hnv=ӡY l׎g§J-s]:<<D@TyGv =̹L%kd_@nF}q[&YaEpozeRKqf&C7whߵScf`|zO+]9|Mhء`t#spQQh$t`Q$?p~s'/ rgJQAEjt2096y{|U}SY ӦiIbNFp/1clqFx2E4~V7W /2<{1~wfh|Xo1e*x|?ԅOG^V{&x8[K3y>p :~/j{Bx)a4,au) 2C)6+Ұՙ=d 0e5\25Ы5:u؅&c u3-?:QCwΨEڂLI-N}{TBŠh{L;sL@?d#d6`+ƾv K@%R8"U=6.iMJ00CeYQNcM5J'mS TPWT~9l./9sԣfٜG"1LM~*!2X,0ªˉ+: 6+8-RprwHSz|Im2qt o㆝-gEw1HVc>m?; &kxx .GjT| GPF KPYq6}F!%&RƔlfQS?B/f`B;Q-yF{t1X-@iO*?s)϶]nQjTC<` 3K >V*TIe=0eU>fF$pw28mۂt,:6ȳr%_a@q@;jRjM3JXak&9`.w8Mi[7 j Vr` ")WQD 2 ď~Q[mpKo#^t7/孎E-߫(/JS!m,-_+Uk5V -{(B2UE|=y):a4*#fJ<#gm¨ GĘ&f(LHLF>u} U ,?Lby3#NAI޷ϧ^=Vt Qh1d#|,LY,E^,0pe#%;^ D] cn*`QwILŏ'2 ܿHDGbmKpfcnTs]³ah&^odtk.lNvkvAMECE Ls<];4)p(i+jW>Sbٚ"84K"l:G)E}5EWr\MD%|4 FB>NGDH}Hҷ ːHa AP-j!f(=,2@eW%@萱_ iN27~8X62>G؏ ֬-y2ۚqc4^VAփ.lߑ+!UOs_۸Y fv`U7&dtCpC>gb&aԺ@6"tQ,ZD|:X$s@'1"uN/A>e9~R ZbCת[!HWޠ҈^7m {]cQ'0مAfQf\Ȱi ,k 9 (4ُX[5PEІK'*`F_+\1*tL^!Fx2N~+٫vke]޻ה!^)qt4-~@l1sn0ƨⱻ3 :I)[t{ro$ΏKtuP"w>`Ɉp:GbE([$mT|l&M! zլ3X(m374˰ #jcnGd-(R'CqZIM۰?_DqQԧ{پpƔHr5h)Z[ͶYb7鰐A޿T\pǭM{]^n?^0$V0K #*?gQ B*c}Џ[0.Xj-*ۓ8`;rZZ[p!1CH%gʘ`ZRH6"nv{lTrx%`Op$詩R=8: \[OJYV:KT þ h.V{kw[h]9"4 Xl *+Q+Oo|ԲКծDd>W0#+:V$ݗWKBVr4`\ M)8~:@~ЏAeX7j_ ao- 'ZODT_D`0`i)[N3-*1Vn^F J?v?ك<gsAЁ=nzLG:ϓ%;:i /9B΁ϐk19+ϒ 0>~+<ǻVFA8.!W]j|fG]?y#m9 R$~bI.Y̽2D!Ȱp7tQ"f:cSӬ}2t/9!P|=Dua4m&B0Қ/>.j(PP׎($;y Ӿ 魍jWRGyZ7{g`>gO +WR{J_ ݽVЄG}O1?oA0iyRt'L6?CfBzR]ؤH' ( ujd? -y% ~!tdM/U")@Fiq,д轎r?Tl/) 5a)1/ ً 4pPੇ LςUM@[;aAv]@R _pbbӫЋdq6JA{7ա'HRY,9&_ڷ'FhytƠɶ$7A_藹DS~UGҥGsHl*9J,!;U C"dL:&yYٕiWs$L;niWĆ> pzfh6Ӄz+l/&c3D>)إ|𛝶n- DDŴBx(9CuZe$c5VC1wϜ5]E/L1J"yh$`##b'0WERYVDI| ;K#+00zg~uh4ĸ=hd ZhM?~FU@"L!L^Z]'m/!K<&,cF#^l~x Z=gCL! \|v]BK+}1Vfo(1ۜ-IWBv~|]Cb<İ:B2ʢ pWXO7c0;=|TZr(;&7f<l&2Hn?wSبD:\cc"3AE';p~aϬ"RƄyE!;gnBhn6|6?.",8>/HwKV)=D[#e]DـO@lnb%/ 0gOVm 飌_(Tb''22xZE$)aT(jVH$,d1ԺGo!O퉪1y5A A ^UO)}G.= t,Kwz}/ӝCjlc+GdrnnSTShٵVt1gyx? i [Ze~3T #'<@#1K=I!^J?5_ŗ1d%]?o3+-B*cp2G&P⧭&wm !UEr}yRYZ=JQ x;$tT$\Y77d ·$_=t=8.9DkjKi ҹMDn:e(?oPMT'Lȋc;3y%X<L]3) TFCA 5iPF_uT1w!FOJ? 7˴|}OJr9[;q@VA0ʌ9 rVu`n$Us=N^ǐɇ;#tAh݉Ŷm"!] Y^mlNNKǹ+ɉs!#r*?5]*o FӬ`}7A_s)v^^0G=zwl6Ho5 ^:^hNK9+$;mN q:J:&i,8}bQ`KRx(sQu0!/u4fxwTH;& dМ˴7ū%v!hvд1`9W~]"M wWg0ݣʞ|Us ٳT"^ʁ߸|68 :M&CRb?cp} ˷۲ r?x*WOoƇM?&Y- =ے SLb}SwIJD7s'P!w|1Vpi|FHM 3j(mIQ `9B0fY blV|SX^P)O0 pJ_F39:óc50b;@[,*Ք$V4q潵7FT šȯVDaP9»HKlZċ!!׃xd"s6Dd ̘ywԁD_]9qS/fb;pH26#לLNAZt+Ii !1c޳ZI#ߘ_ jӒ<4eg{5#L^ory ʌzZ;y_ e~PTH\mRu9姯P0yΩn{: Ҥ@Y9jWv~x~qkMQˆ;>ք9yvݎ=ZZZ29yV6j&azɦLQ2B @ --ے1S.'Xwi2ɠY!կ[T8}uԟ<<]<%򠯊Aœw KMYMcmL "v6j+]:nY~QK@'Q_&$Q/yn$( a@F"n .NIe  H8{/JBcC*`W 1 z* {a`H~aXe!|^|[[ӊAb#bb5,iSqESn3 O׽$%K&آF6>P63QuF0hΡR2ϋSboʸwHtJ᧕9>˂䎮 )XF2/ TIXe+%}\+&Ɓ $k8):0M{G_MET&3֍Ozq&ef"򝬟ՀޮА\Rt)5Ĵ]4+Q7d~e;.,@ٸ;wf4uk"FZ6kq?f8Pte 0~GA-h2`;^`}\g?P؄JLj!)[Fb<s Koj=mn磚sY3%L8JZm[w-LpQbm{ . ŶV4iLX`p ^Imbn5k7%:/ GyMDYG3 !?P%{#_{6.8Kd$ 4U)a'V˟N B3{+#Y2 \&d%|-_!%sMns^D|FwzXeB5J[ OYi@ wTZba- koبIc]L`|P"kWN̛_km*Q'8щMUf}1[ }0Gx0M=*C:UXOQֽK=16[=m`\1r?*.)}׀֮Pǒ!QzED%#qW' 7Ҷ`EC޺/,ۃ2([\Ѣ#gSjhKSS ?.JE|N13ut*L:*'No?GNe D*z.sSډ818:gaS9"bɷ,Nf8E:FGE @V5P\C(fȌ * xwIF-!e"\gu5q4ZM{Tp;y>%kXf[TEdԊ%ĥ ͇`$\5fd(%X5Q$amg(/vijNSy <N\? @l꺳,&=aWquP>V_k\F*cu=-w"ЯTX1Fs؛>`l*9k`AYx"a,HYYi$?>)H32b!F @xRAb|r5Ux[5ȉ^M@5 YS!p?!7 }Z9ILLoO86%|B6N'B[A HwVג.2DXy .ho:뽌f'c8M @`*ڦp!,0YlD}Zi1 而IV\ny6Sg(\uL1\`c@D3\Ex(Ya|ȹ\>O:>5aYܪmH鑁bah653|A`lᝇ12!ZֲxMgӠ"rokDRXTJ]&Ͼ!{$':8iK/%{LkDl1;D]?vHdF"(]+ī'}z?7F+DԐlF,V@|Jx~vRqn𯙉ds~^ !ֶPʺ*3܂"lgW'Ka̖ ɭ 6B(a+u;O:kekQ[B8cl"vcÈe 0!a5}[Zz[VwFǚ|Xr%bO s.[S ^ռRb8IbS}:[ ͵-L7y_ɫHK"/g;3##O&dg?<(v Y*Dه͎tY0b%?G8VPf ' \4w} 8л*P[2'ȫD$U҄\`\.tРof(8(#oBww 6z GW5V}L$8lbθÈ :<(.TSipr6U(P׉7#39k+: &wȨ Xip[]Ȅd;kevGpͱK!۳أM#/h)*BB- 6m01I.I0WFFoՄmSg5BE'b&"cglNtX^"WR'I&Mr@U(Q,+㔜]@t|jì| < 6|gĜ"!''o(WkX>Xc4#5ԹAaGP\q0m2BJ.֨W_h'F[Ij!\pNȟet/R =je̤|.*AtAcr4hv$O,npW.حa_HCn[79 +kuYG6"hv7bX ŚC.My#~p;A{`F"e9n6n_^3P^IT!ax#>M֤iϋ޷I.VoaF 3r|}5E/ɲRy[WУ!Lw2p,b''=DGnH-e %F.5Qϛ[FlJo@@2FoWv瞞hoeٽ.`+O-i|¶jGZ1vU=ep%2r%ПP8Ƌz=`4Ⱦ:ng>Vo?*5~3(U[؎Lt xkyjjWEģ4(+J9^:iVEϗ9qzd BiSǁp]6m]ixap~>M8$`,ăK Edh'g>mN:\ 'c l'Z%YEe,]!J>x0Q:]OW\>^cXk==m ?(] dvf@/=}NQ[ դ rߥFBG TiOrt43Tg3#S'a,U*<1mMVxRܢ|Ti|椻cZ*8 :V>5+w2ɜJ"(QKG(\J^kbBR+rsD*xENk,)g@rX cfpo+}49ǎq!y5CV[uE" tt겛n*f;(#7a})A/hnH9(SԾzsiW|CtG~3euskZkJ=a_,b4PLpe$ogԧ]]hOumݩkn'ˋ1_"$F7Il+r-04HS- C tK?ѶYrzv]=Zfr|+s01orRдN쒉\IaC  ,= Js&nCnW-Y@oB_D`]Z E!#vߑrSkc79BAюE?mρwh{^" DjfNuD Ԙwe99 z!fU]J{6f/xw^g4N K-j&8ϼ% *8i, (4G?1?ZQwǏ&zkS4xwXUYS!HyR4y?w FcZ]kgRHվA?Ԛwb rI燜fTu/u#LKΨAc > cC߭KȳJ՚#Xil <|2]iDSvW Vܝ`U^ENy&;j00D:RR ]0)|u:sVS KvG)/y[dIkUsLHaw4~F:ONhgo",5"#d[#2վT{g6#I:K3nV|m07MxG'͗dxoe||BTOnK!.e/Ecł8֒̇LCGTZwX?nDF 0s+p׽܂q8UN?^/%Mlc~X~p |~^ FCpI68ɁHA*ԥ8y #1&1?c%fWxU崱@Zj2ڳ%V*-pXci yfB_IqpI/iPGdKd+,N y5)1wK2g6CNtX_{y<$L0Wt.M˃7[2e|L,׫FǼBeq&Fsese4rgpTdu,HjkQZr * 4 .N(6qclpZWN$Ӻ|_jJK @0%bZ iTֿ$ EJX{ [k!]1U;m\ɮ.Fsf[}{l7Kz#?Y',ӨZBom\#K}v텋z(%0 cZ,wD+q t#Ys( `pXoVI:%>6.#Q8~hMo+в <(_..!7xy'9ajN}`>'ڹA)"6ʦg{]>[EY)rS};-䘡*W ТvFu1||2"cM ypjKQ,fYfTn`7(Z/T ~2Y"Lo%6e@\okr"Ջ^l\c+٘Xd*I@MGɷ&m`?,c\ól7[Gt((WfLȳٖ x"$T[()Z/`?y"o)ЩtuƅeC1`0f CX݄f$oU!tOCӅ8? n{u̲R(ή&K.Bs Q4B[/FBh}ب\7\GT4M$~RTdZMQ=3ǖ1O}KuU!MA19N4k`sg:*eSA2g ঈ *%4J잴CŴ/NKEdjM-G45b]KO8Q6*''o B-wW E6l dAhɖۗ[lU- 6A%qif4Wɔ`;f:|]i #@+O |rQXu-ɢʓjSX2[;ҿ^Y2]g89{?bhCѧ&v n; eQ` `CKߨw"4>n%@ϱN_T<^S1LzNmkcuhr;]p:!eݘMt@;J$ј zڎSD}1贗"= 5|Kդ0py2Wie&-zaZY݇ yF$ZjގM+^0.69iz{5s^ 硹%7gƄoMӴ`Q]M$ K}nNسD]Q#+3:l;Nve8/&8`&X%zt"%OF%&yXpqt1go@aU60[u( e6Kqk7Xbn <8NF#Γ/[mZ8vhH zVeḦϗ w<}Ub({iOBկ&l:s*(pǾړ!0Fѣpͫ([h|+Jk2{#zX}).Hu_e.M!"q_ ޾b/ಟRt7^+6.TwW&1 ]5 rFUs|ՙ$ڭ:PF'2b:宎'H+~A! ʘT00#, F d|o/}1Ǎg LXm\ZNUTýДz\.=bKGw^I_ӵ2+ovrҗ\4}6lPrBu;)E9Kzs4`lMդуffDAq9')`WL6 'PSZ$yٴXDFY3js:fIz^4D7p 99j㞰13d`uC[ N`oBX_-.\qxW7b_Z @TZ8g,\K kM=b?`j2ds8幟 bCԜ S7&*l?NWC"N;`I]N +piYaoRcaAqz6q 5Kq/ DW|jQ)i!+/*c"^-Y l]&ޘ&Q:`M[Yj 8F ovi>t~CLz]3efj D3-BV~jŸ St"ݬH@~YrS[e H+SatՕ#*祓ǁSL|,^΀d ^ѕJmtg!46Y4wת3&hV,+q?0@4&zRк9xYNjİi lLÿZ#>.o(Ni0?-blBwsP2 #E%T(#'" M1rrnS3TVM\#O8sE6"k::_Q/.)!*=?܃l_=*|x}jP-ODKV[Zm~aUF1@6OЅq1z2yuKz3Zb\_K2Lq, (a4B.́uۜ`ٺ0hv̖?aɳ=RisܮuWlLq^jkxطM@ 1Դ4ZbC^%&e`) 8]4|3< yf.A[^g?>T޸jYXUXc+".8HE@nIgxX${I[Bi JthUpԖA6Q%0^9=rԚgTnG ؍ N0cVAfs}ӊ~zg)N9, #:ܻܝFzo gCb2pT7?açݗ݃ 43N@l8!+ uVbA:QPhYP| rfjX1eYATIe _c1 Tyl*ɫ| P[U| RCҋsrFѳ@Z~Ӷ.! (p)&( DKɞH[džx=!D9H 8QFƚ :zJ3 :S\ze4'<;w&渐CYÏ xMiѸQ;Qa>\E `  FZmQsYh4G3&Xz&Lm4YAAqp4]r-u( r>iq<X?68@uƁAm ȟ6DQ˧Cv%+!go*Pߢ촪p4kros%RݏD1ۅeR y!m­ڏ-[ :H.Il &j(x|9[gJx o|/i\L]ؤ.+B] N5!\Њ͟g']dku|W{hnnjqQh hFec"l &aڟ&x./c{ʱ"T E,3~Cܪpg\K-Tcxrv8DaR\U@O4~*hg>oJ%_e?g,|Eb82PBC3eM8۶Un/$yʹkO.G6C>N + V\.yX8dץp#Y|.i #hn kAMnwPtxHP{IzDzX;.09B7,D+뀍؃[ZutMӡhhY>`ڵMWv+1DS.?#bYjWXJ+s5i毑)C*QC Eb|\ye -ր'&29S ^نF`z#xY~E¿RΡ(oIn h'k33Dy0{#)uck$4Ux39[4!28bFfqjtWVYþ.|"0,A ۫[C!|& G]IfVF rP a$FAeqW$鮿L'l隹X!UM_YXZ}kGFf;2Y%5l"&hB/tC ve0P0ck(7+aI-}a B|bqLh0osz:eo?8+Ȭ*FnQ"%Fnm(9lJ ysjdǿٻk̯kryJWbʪ.D1b)k=vpX΢=i@D h$bD_aUIkb~ d̺12#20w/|;*Lx0u;Ȟ>o :m02A0KT?} {~@]R #ܭG*E/x~Bk,j{cyXΜ 9OBBGvRgm!=^Jk/C*LEHA+!( uL9!i^CTh Ii~4 *[5p-x:Lu[DqCl"\c~NI<=[Y (kPmS59>d&$2k|W]]%FR HQpVW.==7Rx$2]f=t0~-D70.NoqVy+Ӳ&%\:vlwlp=7@P\AGb| rV0,J?dl=ELrj)C/@i*LRN-]ZA3MIpy#yl!vRc-#yǃ;bjIJ8 ώ[ҶƬ#+ybg-7F\^ Y1گU 9]i$&3[FbVwD/[v;pOs#u{Y*C`omğj_C^SdՠI=2C9mLʓru:g8{;.D`:ͬZCBt ?v_ŎBth6^pX au{; >pE+|2\Jk6ta=;jq*y[?7z2C .%+UNrpv]:Jý0d=9b<%Z,^ D1wK>ח^NjIA9#3IAtpufYu_稌ߝf|Bm /@7Vpv >}䤪^ f |`|oz5d ~(oW3.XuP2cM#czW2'T7<ubf?}YONuipNOBSp.!iM6YL%OItNgRgfO ˉ{Ҍu%{_1e𵩼شG x V$~;Ꮗ(q"XMk'8w^58N <8<*m0&0KL 8mB 9r悹=W^jҏkf7\l4t-@~:%`Վ!'b]\w_N ~-".-Nƅ GsU^6v΂e,܃n<8ԏ҃UsBpbŁ8/]L=zxjhͳT!d^Sу"q+FFdn¸ @ lS'xu}V5螩vk^I8\ (!?_OQ gʉPշ gے0v] >nh!CaVrn9OxX@v]X7~}H!dç\lI旳=rexEi""vq*)"s.+I?1^l,+0SJV *@NjggB!V|~Cg`r)4fh՘VEcѵ9~nVXn U}bkGۯU`D/^Y冠Prft 3]93~tcը S4CT^?Nx%DBu $,8Q_v !GP띟CjWf)ID}Hfwyb$NH:89ngm`wpwN_v۱x$R*Jg`ZFᄪMߡC%ZB\?[!3̷͊`,VC}eM6,tS l]c"UR]?=dI>ēҴ4 ^ f>]{8y.:jDЩeuw>)0Tw#2X?Q<_sIA^ٕ'^{Wiڇwdns9sR\TU3r- y :t;c9#fT`Ӟ[&b]J+d-kgQ D N`)zj<~ Dc1O_YҎS+E#C^9z7f%?xRo4Ʊ:%g Mߺ=4k Bm v~VzzssX^ 2I۞>1ҿ0vw!dv$@ Y#<':V>; @vOcw٤Qsc "0%P0g*yr~x iWamm9n#nRGAwG[prF:XgׯU<$GxW.*:?d cSrr#]$0W\./ sV 1>E="G.T.FVW[ՊziFNـzhϴu$8]'²מƪaC\5p m"lR)4 MHu>#^5cs)#!_csJ}*E3vE`-0ȝO^BLrf54.͛F ϥ֙ayOX3UJ;GsCƺ v3 Ɋ6 TXy01BˀIeY -\aか8U¥L%<ǼVl3kh1waz1\vS PxOȱ kXW-or&ԿACFv(=9,A' ծ4b>Ɉ '&|fU N"h3eODRjZ`J=*ϙ~2L1ô^UQWm--N% xMDF*m(q!ÏO|*oFg39F"nKw!M3B`ǁDh]SJf!:֋rX)Xwc?>fKqTFG>p =XM co$c+ [181oq,]mrU]j )!خJHO2-U5crv]XN[f '쒶trR<I=N t^b%1rk+R kJ w#Ћ_;#4: V.`Dž$1[,yK1iDQrIꭙuI^ªXSd/I@Z6yuz;" {+=/#qC-wF4i-*R U`oLnmNƃn-2PTNs![yʕGA j b; I]bk5}%u%EP =HM.A oҍ1\0W3DrE\9C"a5>I<; i3&O%"r\Qn7wnz*Tcec"e ;OmD~)Ā4LOSo~r!;9'\38`rN),Lq. #^](~\ V+!)1B(fuLK՝f~a՞m?p>&,MVENGkK zM]wo3ri?_vbQ @"&͛{55}Z6^D22wwS[,D9 TvdR1t$Ʈ=oXWtWiXS.ݙ0(zJp6:~c#U8ΤxALe?x3tj3w-jA& 6ѴՎ~Gy%&DL]Rme]ʲպV ȃ"Bp.<y{_@Ag~8G vB(JUMU"V[ Z)v%nUbkfI Є 5L4z}ອ^YO+^Fټw >IaG((y7~ j<x9_J6|8m)jxQ34[9fy\ кegX@%JW5}Fǚ}2Sm,KL.ϟyf\-RRN3hc#JM01/[DŽ~ ɫ4&r%R^vmB\@rNpTrp5&K%'8=ٽ( m9IqïQ )z咶F?TOuPkĹw\tLQQ5\R;RĹL<&C6rL,)E`7 E ˎï33JrvRE3h˿UBlXaSf3H4|(igruL_kد Qǟʾ&m71 '[>V)ܷ<08اRɟKsX[f6{ۅ40R&_5GVܢc< _=*=_PC <@n 86Rxfkf%&ՌTi Pu0xΛH&p:@eֈw?{_[."N\_ S"3 J]ls/ME`yku $o|Ngf7XflxfsIS$o?WG~vNU4,[s( xLLV*Pʹ#׽"`, ?-auH/G 6oy$a9X 4 Qo0ywϋ72y~D/57  A1L޺,K::6("gfYԍeI|Y@Li6hoq=3$ؚ IVZP҂ 'L"7ḙ8#.>,.y !l6uR|/]Vߡ,اW/&M"k夑U+'"P&B0"PKw|,6zo^@i*Ck.,kGqG 2)IX${>kEd&[I w"a!`:ç ZxdG6eS&γ1eƵ:ejz/WaUz~ VZڊP=&x|smHLUЬ$).YȶtЌ `:5W1м12@ 5 va̦Cli8@T,N/(?m )rdfmt1AQxЯ>'Oq|&]^aJ/su*OK>3bw{Ut{8= k `g0cѭCcB`_kŦӔ"h.C^x WMWpLXh [%Ջ#4A5/\+d6(Ej8Q͎jݲyQfIAp*zO-'I}[s*qU@5`+KV ~"D Aѣ0oozlWHb3iw?fl`s PT"ih]hzO}fOTF: -Dl^F++ex/IVh)qj u{:njGtյn0;q*w@48WPyq^nul iSMSG|f Q..x};*@.hce;UM|Y #ӫYi{3nSph_Ik嚗$Uam\8#_h? ].ʿFERՄt?n;B~pLf 22iJ![ghq$iu檰0?ΐdms.4 z3ox>L3 SuN=W!;t-~ƎYJ` }YS֟#&TىDEtEX>iMZ ٓ+.ma|mxS$ apλ\(N)"/Gމ BZ}n"CɥL <IEݒuO.._>m\_E!ݲ13Ko)-cXULc<"+F*iˑċZT=Ӡy;Ȣ·tY3x!]bd3oo8 }(1I>DF2Io{p!,ʮ~X ] َq<7s}6+(>)$0˿TD .vm83cu4 qAݿ*!dS=,xm zS)=O/%i*B`WF8O_BQYb5ܬʴZfѬ ed[眩*L<ҋ7_9`$rok6o@У}-&6v=*®Af& 0kxm{Wma🱅pIFZxKDB4)o/3 e v0DUm Ȍ 12z>>~8W)t.CH`ttt^R3.T3)7\&N0J [`".w8}%CqD-8YjTeA' VNx6KHvIT]GQb>tXD~?k ; ~+Y*Z~͐wy\Wǰ]B-=Y)漆 l IxpmmHnCzHԆ8-IYJ \`JofKy/.b4-,OBs|1C.>5-OiWڦMmU$-7* 4'tW47{B2ix0W.3eQ-G0CWEt6Z-\k^t~At>u ESGf&]p+2QM D~l/ dȫؘ-]aj[sI`6DIڻ6^O>eu(LrX.JTPR g$ ȫgn q9N4~Pnc5 ם:pkn(N[Fżq^).&$ΘjLn5]!Y|l+YS7(14K5ADQ~>zt&Sl6Nw`PÎt1Z>جK% L3;[Z3+-OCl!ha6zC 9q9]-r}*x9rJ#~ػitwu d2SLJ?EtLpWRՈ>‡]d~Il=N(5nǻeZJ7$j=:_2T)t辳Õ<lTS#z+Tow5+R7wޒh;SU:m:kWk1yu\hg(-UT?K_z7hɛԤ LW/,'9SO[pS9SGx͸=6g;HL&j2OκgNH =5cڤp;Mt.G)k{V?Ze:CYWӥۯ+gx6->̀q0UײmBMt^Ƕ:!/РWh{O;n| A1)"E~am0Dp^57g@ǭm :WFu,w`ְNbGdz>Wb{.8v=tEFxNR__g{~96S )U`?w-"d\,kEd bSg^>h' Ƿe(? I_[HiK=\D!Wt"6i m0lInZUocDX)ɜdQ$@cHJTH E{U##-8FNjQsJ(oUʹTƾ-Hg<|! bԢ̓J죄o`~oAVK~^0{ Q PCU1LTSRpc'lge_f=0*lF{NR'~H ||nM1 \J=Il\T5RMeAI~KG _ޅA B ͳ>eԇ>KW؉3J笹9Cejlj.ZRhO/jb7* '_eؽl^XA\*sŬ/gɍOcO4n3h.Gx7)fDz/|ՉM\P Q*|esJ&6kpI/(wr$w`)dD"fLˆb@Zf?`\Z|O~(#.eˏ4'"TZNYKSZ*U­>mPҥ%}LPLn?KZ8ic*ঠODG/F|<41BBdž(L,Odp*c,dIx+Q,܋Wq'.NT} twk/DۇVU" ]HRY_@=q9\bs̫rrqI AM}^SفLY ٟ!G7qOw[ A;@ \]W^9&>;G%/鼶$ץݾvw /{ӱ5/ж53ܫÉl i6:p0jxGq;|<=Vš[OAR*Ղ,\vP~U]qtVQ*#~9>ơ.2 Q:{YΈ@Mfa! ap%qO"t-/(_uNU&Kڙ4XN)v=&nt) b-_ahE@1 N Vl(L&IAZ$z|;&5;1QdXFC \PU+mRD%9g{lt=qms,@gP&O"~<*SEO'Y{ӍaLaR64NVܣo87Z0'KMfC '!p맵kiɇtHFc h1Ԅ]I9kjŶ|mXh9,iHe=?a4w[ pUCzu ݿ`/4z UtBqxtzejOdfa ~ t-_ ۳Vl.Ey@{[S(JїAHy"K?`9`MF&p<ę#r-t$G]El#.tu,0(6a 6/ eLAPeV-蜿ivDj0G9 ,e(yHiK]8-GE YX8_$x JwPҸR Drcw׈3Kv6_u9ݨ1QT4e׼Pw$gA+XLEs*\ofih})VP5/ʗY@C#WM#N H e07@D*WKesOkSÎ%eM1(v ~ۗNv2D^9y_lP}$f0و$JFm=nm&@:s* 'v/&"XlXUt ?ݖ+;r] y胄=p h\~Ό䬔VPHD*<}cB+.,ؒte%~@tԨ6&x5%VMPvck٬(q,W#]Fq꧈ݬɱ;ܨ D mّq5M{>l qOI-h)ŪU-(ޞxBb>CFKrx `'}]]T{ݪb8cSKY\;DmUҲN*vZ NV4oH6::0Z泅r?o;&fO,_ e}A 4܇ L6.h˨ev;:NC H8 7FIZ.)Z^)29y=Y*v*&ʧfWDw* n\Lr XGN*(ZKebO<1$%S0[%7b٨`rG+:Z"s\a(!;xOJ=Yozk>wT'K`4F4:DR[EI\R fLN9Dm(9Wb/ͦ+6,N!S+lqCqВNZXyOA5&69sB^>Untc%TbXH |› n߬ SO#W)2Aj%iަ M*}Ufp{TguLN} sqz0ݥ[^΢7)pֹ8 nFMӕɾ"6LK=&VnG߉)=.Q);Z$R0^3iX[{ov31d@$ M^<:^)`;;yV10?Q'X?1/ZAӃxt)6t=a1J"A] -0S}h\n|\MJL_ ֜zot[gF_*"e1z $ eCfOX3̝#@HKc5=~?`a ;KfNTLT* +SPmt)}̦z.[_, QX[d-qbT3hezswtw' Ur)Jwr|6 >/OpGZGZễ섐+giӥ͹\R坩WHme{&@t;y,'@y7r׫ZГWi )pEqrи̓ hWy4Ў&w:,PoJCGdUTM`Jep"P::\qS2ɓېh6:r29UAWa1(H-d)aW2&nTP|Fůq9^$yvLD% N&W8/K]-+^`77*ɏ=P68˔s/:BO&Wl1GJ)`ZN8qڤ^T4dinL?G<0d,%[_K/*ܓqJ݋࿎RC⪲pt*ypBsFPΩx,աSb. ]mh1V&%1-7v,K̤inT0qӏ*;+̋i8iK`"Tg6斝`O<*is[8f3q BXX)e=`XrR`bpY bۇަԀ?S4E"bV}i@I`2&j%D+L)<%IHF`za̷ Xc^VO/4m׮}簂o{o>fE\@9#q*L}Uʣ?ZG~Y rKr0;iQ-}GUJZ$U ~uYk Q񯵑@-3i9.0I8m7r'4?5tFw$.`4LYStRKPz>o:,Ϻ2ĜJwl?a"s6iF*[PƋD`:~x[9\USiBfFhL% k;phI* <:ߒ;qm<(Un]~جo=Fi÷zK&}?_&{Yo|/Jd{$[|ig0{G؉ngwdz}f!.J6CCK\6S6\`ilc3W`c-(|qw!3|,΅q$?8ZBdsObAS5=$j':P Zg$xpʘH>NbOӋ^k 693Sg匞IB>Yl^=wb"(53Y^ȚNXc{AgIj5\&_jU٥Jn4Gm5 "9:vPn1jyi\d=)VfrCnw$3@{'֩>5$6&U2| 7)ЧѝzHb$3D|9!܁!=((m-^knQ))Nn|^h6(8nTBZY%FZ Z Y 5qu&E* %ŃAxZ}D8 >6RX*8Qss(UGe},6.K.{)UGKa_n} C5S_G.8׃ < CS&9 ! +[rW&ժ DU- kd-/CoktӍ?G_x:PcԼ_" aP\*R(8[3d-,ٵڪuDtJʙN^Nbh<<:Hڥ,p%tU=JZb%ڏ+Wl MH ܜlҏee?` I2-湹!u}eB>iYT1=.H/W3Q&i ݝ^LrDWV)bQ=\&zܢT |SX N[]$oCKyMPgc-hý.* ` " \c[4IJ9PFb㸞֮%TvÉ{& L"Xjr'Q'&W %_T F(@]؍P;>$t&QqM/S|C / CYpL hNaC AqR56ڙ^v8X=/VSh|h0`~ZUEV"AU(8S>xQ8vW'@m +2`9.r@Xe(a"TLX7ubAQ"j NJ+d9E~0$X$;<ɽ\/R\.^3n)^hȞL/LQ%O:Rj ,]?vb hޕ0<@ (â>;_ۨj b.Le%RnnI.zGUinm2ZQ B&A?h$2y% {Fi oo2Az^+E?Wa>,w*%_X˰=Vs%:Gz4r_2@TkUQt RG ZB.$ X0#2lӣ iYiWW,kkx.iG@>G +L[U~*a x rCETx δ [ jBxNĥ@H3 U9؆uV!`T9':q IhF[>')T[igdJ U9w[Ƨ뚲j++e23֣#t3=ٳV g昽@Ψ9q >C 0 X/MWݻ>ЯVOgr4MjU4Aȁ{p DJb?gχ[z(,8`{=råE31*Z>,^*X_ߡetZF!WؼrX%EMr|>' wojH\ J쏍1bNh< 8a[4 S7[lx&PIkBsE=`CWU%+5{7sf(b `5dZ̏Dy)S&e R<,?%d:琨/Ql 奛Lc!7-wc R(B5+~.T*'Xk,e .\LIsFD.8کߤWRZ]zO&o=pH^s_*S8[O!]&ޣkKkr mxI8Pѣ Y ;mu)VB]\&; )TȫΒrK҇ݯnm?91R^d6(TC6q腄U.)SWSx>7<- }QGeN(&`ծXbx1>b78?2}+d#DwaQcǞqT \ nZ0r;K|!Bm==YwP*! fyRw6Ә:F d&HO3!30l]M?t$Ț2nSԯpz)AM{d ч{dc<=뉚OY1ܱ(Qg#J咕`7MZ4[]-WFO=_BSS9Rx`(m"i:: I?1WwIqW`W)/Gbք`{? I0BCfa$^ ifNH 'sڻ!΍aSݨ%uu!U|,=t^,?6=V)A =Tn+%rϸ<,"3A;\* i.&- ܨ[.V,KW,_&^H&H;]< ;h?)34z@9Q ^jfiBb^ UO@UVV ]*oZFF~Ջz\te.F}J.io"84xծx ܷC)9Tۃ&$jVbg>s{$l2$Va XZ+?]JD ?"Rl1,8޻4U =XlrOE\Do^'l'Gl)@F_h\׬qBÏ}$yEM1҅)O@C'70 L]stzyQy]mе)$c }Iiz)% #=gp6k܅i,]́)o| G@΃z `C\| jƖ$< m_pˎ@Uh| d27=q2vȜLod8cbT$,ǩmzJ)0;i:2R&VK^*8Ow/G6JN^viD2VOP -tc;|tdx)^dPoqѶL%3h꽚 bL&3lO! eE9- i7p&G!5 ?,6J-T8.і<G9J*R]3h(V́ >6)ծ QfOrjw6&0 iWI0h><)`.@R %CyN) 0A^HlY97C:9<4g=s" PZUJ=>J n<{f-h]ΛCf0:o;=jA3dƒ %~N ЦE25K4ЄrmO v9M) ,ɔr~e-G k3V0w!;I:唉deigjbU~ɉ@l8"Z\@4]Qs-fA4n/?dDZ#Vu)^8xn*%#8 OZȳq>mؗ2 !WZ|Vt'ۖ g-VZA €I} EVЎ?F1@D}1yӜ$Sa>ie!,BRc0'P-iw::x=9Lb 0:!aõ68Fx3tٛҍHWI^\6sʗ- H|Wc&x9v43"cg,nXؓeHƕ_aA3Y'^XRX> 1woj f#\ߓgű Uy:K,etky mn Kg ,gQU p`LÆsXz,(_SJ6dV6iT^wehd9.ڟ3~>Cy› 82)U7!]h;F"̊ ꞥXs}=NN+#8ZVH=1z}`اhhF+̰5T%m%vB"/ l=Oq\;(yԺ`Smyݿ>$֘k 1BKs߁h`45{*Uj"~|C֖˝ӺB^ (Kѱ'o!_R\+AR=nD)Rs##̍8'Qϼuտ^gVefڲ̳Fzh=D-C$l^ʓ=IY#+;neу}o3?V?X v['gʧ>K\U})p;WA:i\pkS^S|KdՖ:ȼ0AhlSFYҀyh3u1݌!XvAS>Xg5mk'o(70\g-k{4.6߆3L,#vCVyq_T5Vck4;^x״z5]{f1fZ-%x5 Ңش %eg ?←cD W\ ~َ rVo_ p Ӝ[ gw?7UuSi(G$ou=n5wI鞬OC0mwBBHeB#:XȎk1]WJ~o7}L"XKgg6,v9-ByѳdzW*fXC'I@1櫮=p-Z'ޚi;nYPg`CUgu\U0(l6oCPgJ<%J`=]~݀%i0G`MV؟-Bomgb6 fZ1֓պܦ 7k=oX ѩQNe-U'\!7ǞԘu&; 1v&B/VôW({MOLX|~:EIŃly]\̘46b*XcR.b¢Ĺ;p<@3eRɇHUJ_n\vxd='u;hb}Ό=UM܈_̟ =RH+֦}a[$gqׄe 2!@h熇Bci14J\Jָ #N:'aB SO;r!,5 iqJ2Qo{y@&~>c.>odpЫ񘘝6<=SU?;OM?l 9!iYQ ,A(Q qBCř(c2=hvzAtJZB~;cJyp\ge !ZIK| 3 UsIxqdw[\o&#ѐP{Ô~vȔ\i/{(]C]L2`IME0'3<ɤN%!.pW /Y2ȩ.tHKӐ`nIKr8CgiM^#4pXCAFo67JPxCOH!Pc F!c̺gY=>PmG-O c|mg'cjknI=xnvXPKXaŷ' 4F4Z H8 [n jm|͵>~V3Y&2]4lX2M{ nt$O#GKge_&ϑ0j-Yr[tSY9YILYSUIfz3?&:>2 &.T9^* <{̷RDyCz5M8 g#mD," flx\^?m$|R!A1"jhM(КTNZD=pa7P!9 $1ED^yWQ;YhC" ً^zoMxJn+dKpMi|(#sYJq̾`60Wk/nr4;yuܵƚ  +f< bs:>7af`'{*7\#(g{r Cњ'α+ߌ0* VQVňBHj8?Sof"vco%_|iKZPOq{3%ş^8eܕQ}sd@W%;lRZ RNNVZ^<@r,.W_$/$yox,pefS0= bL!I(Qq$#農hkr4l! a8 R'{':z4LMԲ#gQ@*Iqu-"h{D|; gQU˖fEV_Mj (Scԁг;Leׇz0cvvlߣ?1&!>{\J  x< >IlE $ʄXA+zHmvWgB M9hwqS[`cF\iiN _x˻oDvի28t'ycw+w,z>Kwӊ }y7}žDc\vV}@(|"Ƞ ohH7=:1Psn2ck=DH2r :s AF0(lO捂,&8Թ{4?c?_;U|GL80Mr OI < LTv506V`J3/*99J`C)˄YŹ}}>:$. wc)!/MYY4p .wS xҎc܌ѿ*9S L,zWNKYw QCs_swEWI !3_ߝmЛdR5_(  :Ԇ9r'dJT ~VCƯ#Bv[˱^Pq~HZ:q.C:.inpDtTvlR%G5@pAF0RZB!l' i_4s IۅUT]@?&r #,'F\n?SB:5cyw[GYˎ\U^R"2Rs%(;CZߋSt"ĥ%>rOmf"APf۹I# GÒ{Oڅ)F?_lbwdSoo(#.K0ItߋQ./M-qpL6,$K ");齋d*w዗~7;:;LV֪MPBDrjqS}\dlWu oorA&RĨStāt~KWYG5Rn{sPn$6 S\S4$%1g\H5 ov wrw-1P(hw}\x9qw^?vvŕ|utul@ -&'n*q%׹|:Lontundst)ů}l_ZqfPc 5ttGV (17'kVK: g24LLhfĺ`H!h[5/uAK}>|0-Jj(,zQ^ xPkQyQ̣ɲ;]{3VyX?He ;䚁SҶg~ӼHTvYX?*\qo,d| #PD$=۴3q 3c W=^$61H"Ĺh[s*Gjg Z&$fsn rr6$q+8c5/ a2_n="Wf)sI*mFI!F"G O9q{O6_Zðn䟙byD};p zo;C:tI%r!H4uZ]L+Y\WG}kӃT>ɆxFɎF7XZɁW#/C"(|~,AB9"8xB%QM${;@+!;N-{ޘ5|xC||BrQEk#FdeugH:M(B <׳>J5VGVhOM^G=لt~iπ樈1si I|`͝(ف&M~2ړgG*g+%(~1VG\䎠>?9on(FğO,"uT5FNEA:=.< E۟{E` xnB)ѵ_=.BA&oiz6GM~Ũ$v4SFTcQ9lCiT>f_N7~u[! SP;\,NIL=$rA^qXu0!2`Ш='_rlRTlC괗$ =O}hUބf4Ε_p$B ?zBkRpmI$"9갮?Mws Y 𴽍@4Mt6'邵nqս_Ҍ*e Cj9 LuңmWؔ9q5 GaʕRG~g VeEp6ٔ}@lKȲAf&ċpit$CY+!>S ++q'P|dwc:8ycƽF..ej|BČTaDX67(_鐆Ebye͖釡Yiwze(mr}2>PKkxX,6lvyRVi(.=rǴl7haW]76qu!R2'_h*IjoKijS2̓Zkߕy#3۬Q<.YN + p=Ubh<- g|1LI.툊ptxQu[pkߑ8MSiD2it;2QF _lVdnRo!3J]2;I^ZB- o}V1`J &DRc-9ú^\&x~z Q9*i:+BCbV{˒vMFLx!߷aUX-bfF/5~Sjp-)òL1Ue,acc-I}uI])eyݦ&**fIwUOh |Ðz^ K^;{DͨYbԺꪌLM>S|.)US .!K lOI2{[Xr-ErS$ /= x1IAhYA@ZHMdXMb@!mG˸ȳXFr"Vڂe5 rǸͤΑ^ޞàĤ:،eύ 6]jGZ?H6?? Ba²By4l(GM5WHX/o\e02M*FZ~`^]LT hx w/)U n<˛z~XE@P'AXMk( ϥ3Z30%E67%y3bnhe<.\ O koaa`̬%U-СsEFJS;,n^$7_AW9J-w#/]e+suZ!=*?;*xѓ o؁'[`S%Y:e=qp;|,AHÉZ}[,<@IƘҚ3;`?Bsqڑ41*t>z']Fr#a~Ks حTVG&鑃`"CxښTդ1@ZK]uf PlUzݴ9WYĖ/VIѯWhs)kZ5S,Tfҧ%'=NXypdի[nQt6%X=X(tq C~4-~ED"2uJX=JdeGwn $ xAo"X4De@,Lu"9x>& \7pZ)6J ^?ʸ sc`A S^(Q[C, tn4WOno#L {K;C[3 w4-@_@{RƃC1V4R)l n` 9dDU"Ӣk$O ֥~v )YC6nDžn/3 n6LB-LguH^'iS)dJ]hxy#=AvƖXjU[;;! c }'5X Oɓ8;R*NLC/a09iГem&GQMDG%&Gh[-zH# ud%JRV+<3uc^ QyK o@c[UoNQBa=3h$mڼ6(jJGG@#((Zrc7&lC2C/p!LJ.kvPHWa {E<8ߜ_ۍ2| sip4q +ZQZO0X&dS?iP|{D!ㄿ &_?v]'a~MPVD6Hsd(R=;Q%5` lOԦ~)lݪ> r2Pxt \oV7rFnQz|pD'df$eE`sNhbCpWu"g)М躋q~ f/_|x9߶?MdX.P3=1#-#`lrJtgw WC(p\ё$`aKKgϜY ?vN o{mگ-^y.߾(MwzlV?ÜE->ͻ& j6V&DjzTE66pM^S_1,ktb2;lhTjd_Kb;*)Uѯ?Ͱ ңيnof2ko -wSg6K䃶6|A} iȡ=?ᆡeoE\NmvjX#eN|YIi d6f vCip9qd_C;!S1` eB DY!x(UDˌB`$xW# ?AH9>^ =]5dPź{jF\zB1".#`|gC4"`7ĺX0,\VPt11@5ZIq)z9|T :ضEuI8ǍlxKm.0w޿ gr.})n=@--1+Qю+N5nkp0ްd2LZd%\뤸y7R)]97&C<#Pox ]zb nixu]D%f3)$݅ KƚHĐTZeN15)¤f&֭~X1'p(tnU 8| N-ʄ¼eylRGndq`?%LO}cUN1J=;yywY׈d6XXu*¯Cb?`/ S&DrϚ+yb@ȿޣgǹ`aǸ7I}&.sz&Cjq,(1t ģV?Cx.)c0kx~H'Kn5 .^gyMܕ|jDD7/lb>U5+l;P.խӢ Be^Vq9ûscLꎝBRcF?(98 i=/()24{;;}e}o5Eրp(th+ָ8$C#Tάn{s{9k6)g6#K6 u1hgA cO. Jh`A>H*\,/i2r HFDH}W Ƞrj(714-P ЬVDtm!_lo*$ŕh 5!E YإՇ>#2*; ZWvg5c(Xm%VvXMEGV&w6k~TX#E'DVBEio+||$f6Vr/rpTYh(uZ "ӹ+,z \T .4t?\MFqZ1KqeNtFQ8KciW޸"fo`fjnm#>Pu_Mg.KgIm|v٩wѼnکE> }/UFdSTI^Y[ )B;ɩ8+Zjo=>K[ǻ3hء(Q )UieTeߌCB7 _,W3i<&Pk%0=UȎ.Z-PRrYe"#ӚOG!@eT+îO`4/\i5j J05]`Nvʽ`e0Lpc",UŃ!WuK\9"JxHA ,,Fc3nK)Z\D6n^0v+@ Yٔ5G#XcMP xqmip'%p .Xe^ 5H*i1KV*m rF _;X'CNCրqH&⓼%l*J?/KOo3%BU}M| ܉o[$?.ɤs'géꑓȅ lWTl:ҼHt[b+K60yӽL}68U#spD>L9p=Q:m5[.,F™imavLyᜋ.x #+E7 ظݠ37b>gRK g"#rďynjzyH`2Clg̼AktR.sP譅O$+qDd(I7l̯+8QY`!-}p_ `Qd+\Vz}pͱXЗD,$ܝ^Rzn:ܟ0 ,zGƇ2jEW#^s OԌԩvj(XK/Ѻ^iǬE`}TH~,I8}*줥Te\Qo3ߪ0#I oVF,"ʋa:]9~kUmY˽a+$D vz L7fŤS4v8ޒOصfkplln\5:*̼ChI@ 1 48:uHE/ )\{4mqV@;$a=o#(gK$@UVѩLa+H@af6Oݐj8vm0Lold}麎3I2+bre֬~fE7czˏ3$6$CWg̍?u>'=1{got4KM$~nS6 K[5 ;3f$9P!i(<&#>X @)Yæ,/; nt.GlZǼ򆊫J/\4FƠ B>تFc Pe ؾ_E( )oЋdUOׂ>)꺗EߕvJ^h Yq6vIl=C+(U#9XU NR~ŚXxG-dWXS"ja'e?WbMS LXj lKbi,H\XiDHЍ9}~n)>Bɽ @b.*ns$j/{9s1 ZR勉{:4,^*B!Ň6+8D+~3r=q2 T1$azA6{OnH[.?Φc7tv~8DdLao= /gu_q4 oOw#G n1GW; g._{&29#Ӗ ZoGxy0JQi^2#192B*1BX+>q#ȶ׹\`6="^_"-QMtc+#r`1|poZqt2^ a d@רܢ\= Tdy&|mDw67;}?q!e%K5S;v!SDN4ba'eZuf=4cT)|-^E"PKyD:!qq.V%W^;cdNYCVۚU8ϝϼXG8x|A6E2Yk˿6~;ߞ}$)we=1D%Yَ^$#UfѪm*S_ŬD:4,>΂*a~-eb2> '++]h>H, )¸U;/SǿmqƢ?˯ήPZ/+YUxl8k:`mb|Zxphѡ,Tbh?+ʞܭ7ԬD۪,?Vm5nH1ȅPȰALxy'qU\SiGucSGnY($QSɝM;t+kUtsEX@I;pQK9emNKKN}8hJwp^?U &VÆЊMD`[cFf˺,vkak( 0B[?;B؆rm4ȞOBL"ru4ZH74Fn3ts#u<p?{?N&Q}}isonR̤qLˋ44Ӕ !tfranQCIt_"?̪K}DX&Cz3vmEN` wT&h!( ?]o[ = iWzr@Fp\_D&pƊv/6/hqq$i>jM YV$T僶UiA7)E~0]d{-59мӫ9yY sGUDһ_Ed6U\LVE JW䠪$7a 5 ;}MJo+Al)gXy[@%AW3sefc;oObA<۫v LR&/3|1 }u|~v  Qۿ7)]#ʵeWSKTpGc6"\^5O k?gJ|>א\{63ci4mn\ 4#;PjI' =\)r4XfF[zU4,P| /C4u$[넂(]2s#UTl٬ICu9=#ag$un.gThfG%v1<;oZ pvxjo9"P@aQD-ePaWVLw2HF9n]>ge'A'ևGR =Nm݊UYKҕzpuN(ْ`Ӣym!:b1ZThaR-$?y>%;,[z}5KlݙQh0{{!ʹetsbInjFxBᮇ ;7M#ڊ 6ԤV.UzvlZՓ\9"TpwR9e.Dtr*5lg|݆(2@pE޳A}Fm+4AF~z! CaUtF` n ):ѫ4i=}M).bMk F2J7$gGin7cWA_4\^b#-6+_AXHy!{0,w6ĆK3%@KsȂXدr2iyZO?tw٣<!ktaH( ::)q3x5N)ҿ `TvGcjD @͒]c A@i }bZ̅ }(6}F\2"۹Z{QB@U}>>D ٛ9םْYt C;|c/EPeqNgq#T}>("S!!AŘU͒RFs^9fZ ͊PdtIUܲYpWM4tlS,e2ˌ紁 ;EU{0FWxbˌ_n]Vv~ 8 4tk (>=knߵ <.._$i"Cuaq]{`լZR"x{mPxHwv3G4z{)=V>Պ3W8Uj(K(Zqr =V!,|mt)6( ՍwP[e$oS3i@LnYsa;pEegv\i(6 9=0F͝&a s5rmgrMA^ )2\}ug?6/>X~8uRcv-*H"4b,P)QIKXz>Ï8L$Zdg NkA 7%,S<[RTxa$z,e4YT1ՓW+5^ΤV!-td#yV:I rh\X({1O7`5^8G]r+~??ȣ1(5hw,8G*3:ok9_f_4󓼓Wއ?(%0%+Hʙ "XSc@>Ԕ/W>tmPE 0a4D[V57p69q58> E);a RZ{t=pA҄ HĆ*Hg1C1־ߛ αSGt^]9:pԉmK,b QقU˜6]&ۥR $7>`8PgEs^ɺg5bGzսDO%KlxÜ׹GTa,O3YN/:;/ӂʦF8e)d=6jM:[\ّQ|3ыj !/6 NJ sS?5I\2얡:Pb;Qb=w|s>cf޿L!3הTfD}`@n1G. هnU!He=UKw; d iPg:| s;H)e%x88%q կH(;=/-+jTVp/}m??S|24vB~rwD*/䉼=;WQi΀T9O(jD=`XG{ӣx.~ WBi[wnU]KCD@v=6QQU->@ߏ(԰kG9p-nN١-/"rjPFȬH\ձo)7 TRT5&RlF&Qtpq>9fI#Xc4j V\9$m٠^~U{y5]!2P$WFT3,3n*嚼2ӝ<,6ȻU]T\7d#hDXA[ QO7 ܁a37b %YuWߣfM}inS/SBX?!<.XL Duzu|+*`#?u)ۦx ;/>2E-I8ᵺ'+sR*%{3nP`ϵ4RaۿXQ$2tחD*_ E΋͊O^Ć69NIlIx͎m]/T翡(EHtfKҞ~q=\_{d, ׏8'|DJf 82ԵۻF0]YU,}(iT0Kp^s(?rؿinT2p#?φ|B̆p;?8Biwhj=L5zPF *?ʖ2duᢙ $B+]C۟JTZ`$a,/u0$-D &3$ZpW+.W 6:j!C:yrF( n˪eº_\/z EBf̈́tBBq X0?[JObk^Q(RkDrI0 KUA!iQ\xi(Ta F=ƔZRQr `QPw~ tFQk ")^lB۳/葜u#R4 Ӳ*\guɴȽrm9BZke$bQ=1XEj(3+'*Lg6.x}p89f:ۈD!# Ig!,]$=^tVގXkG(da؃2kav :ٟ;WA}UX+C>QݐƷ]1hSs O˺o6/%˥;KsmP_֪ mEPly(=ǵOJLq<,g%Mب0IPStS{Bw8 s04% ٢)w ^ڂl+CM?TZ d/J\d@c} eF(پ9rĴR8V`O"{x:%lM~t V7վ|$Nc)?kdhZcY5+[>]zFɕ9DbI^?vqMt06VkHҶ$mIlr08JwD@gdU񕧘ew@N;&0m>ɤ#&8|QE$o/Jک5àg7|]Sd_9~0YoxM⳯"-aw%y@eD#J>]A㡲g/ E:rNv )*Vբxbbڠ&MjQGE5?SIt\}sHw2!y~ϞʿJ槳~q^t6tǒ򴴼nQTB=WHuk$H9RI?Z~q}L{QdmǓ^ Ҋ) @$ '+ L (m o?\O[xv:o61FM +h>{<~F$ZG4ɴn}0 Ɔ[KP(/&NnRXUHKەXJq cxsfoNpf}GqG;@h=";+l>9[!rH 2^<ϗhZ]˘hu9l(k^p |cѲ7*%Sa@;ĿXG@ǀ } Dv|_8^VXQj+]pUgW.0Pra? wU*QWnHGaM#VŌ -FnH}ͫrIOFdb 4 睃{ş}ir{z73 j"&Hz_*T+A,u Rw]}r-`$sB fh'+y/쫘{kUM(a~#|`)?#@?x%m[vizݓ,%\{9Tujl9dS5WbP]ħvBK!Xn ~Gc]\=C<Gs4(9B5y6TI}\A8abBvH̯'4m"ZȖr!W:K`6Zy"3[F(>SFMэsD .=%T`;p8 4MҎ)KʮdKĜiq6% {jʺ[4?=Љ",wSJ{eOhFd$q4;-kDk(@Dr'a$~cҍM[5ٷ v 4L>He$`&lޓC$.= Cn.uo,͏$`I2$k+ݚSf-mš4Rp.LݲAWh%;m2:Hd-C)HIBU]3$?Azy28ZZkW dȟd4/沅CR2fxg8+Z3 ;s}O*vxҶ2iyg/ .GRߩFn|]\tÁ#{;l}l>:.ASY$A =oyI ۺzmsֆZJ^&q{E=mj$n=< P"pEYIzVK3mu73iD唃K  zq#Jƣ{|O!R{Ђ6 ;[X OEe#emSzaؐ N(\ ! !ّ'хou'3 շPO&]en{ԯ񮂜U18Iӏ=ǖK6OGyɭlZXrܝ}nOℙx.g}r@̷L 5Y,gs5:cɒ^!'[+ZƪwS'seD#>O勤@&?OP@ I QZpl ]6{/uvkA$9Rm̯u&ʡ,MO""=G=OP>^I`0I)e1wU$cMY5j=߱-rnT9AFFTH YT1h/iDA&ѮR?M< kY0by߈z ĕ/+zw N,^W}0 vSAga;{'܈lQ$.Mt=^XXW-EU+V=b|Fw~X*{)Pך9X8q>C44v7"7@(᭺|jkQ)A9$zOnFnV`8#] xݛNa6"('xY .(b\HlS .+nCۀglqc6Mz-v0bֺAJ5Rx ǠY3o[Ι`4Қt{i[YMn "b\ cQm;5g)=ItD`}JT΄U)(z|OJYDR@i4gWl¾\LWeX )կ7''8%s+޷}CKI}{Ztr\f P/ǀw^/0$6&i(MU\%.ܜZ%ƒ1e+wluD[rahbg5!̫*-1}OWC騮hNv`mDwSQLrlۿ'7#tIm8&<} Ru;fK:<2WR^h qK0)!7jgk%%up1Fvv/fjHHp\&(/QsED(U5CUM744UlpBwe@D9 u>W~qfh=r%ѫ:KN,~eTu ln@q ~aZ*16߇;kQD0uqfx]ƪJJ &@rC5UR %׵IA.1w L(ɂ|*/IJ/h"A"krTz72bpw}, $_+eE|c7GpW B=޻ z-7u'["8f-2<*s@nLi#J7k||R5J'm*۽#ue ;S,1A|-7fa[WB{]9?b#-Ypϣf37NB$L.T^I,\E ۗBʓ6;nG|7|GdL)ƙFף(ʥGT*]6;#*d.Y\rt$vώZ X4(}W.St`]>ueLf:bP DhMYE3[fo$*h] CqQip/8ޞ|FVug񣕄DôC yh],R[ ɁRew%S$[kӔ+漃^G|}(3 -69 hF2S۝؇sxnTGB{&d-l!ѯ*1*Ȑgb->Ԧ\m}eND8 ('D!aQOF'ln:"q\fYb _ ~їՊذx?x&Xa$y+n-7((a#lLBܱNf!(f@ wЯf58o@"zz3Nʇ[Ϯh2/(o! 1,NҪR6;P Ϟ/XȺ$}̉p3 \`! t\ p4JuC4i+8?6X wn+ƽF z.TŢ.c]%few[dutۂPRTVgJ Qrۏ ֱxͤ(G׽-8%nP`g^ዯC8~~bU`_ ; ZܲOe~t"~OL0y$@ H闤.6c5h5 _ӔN +9Ig ߖx0UPeN2`ӛ:DU+H3E4 %tf?P@frR2:1`9^ma*-}+"8Co6ӐL..-&֡g^M 9_}FE>|?+V?8.E@kkPY|@cuU xՋkQy7,Cd}7i-nUq?!Ҳrh/kb"+Ͻ&n& ;Jē``EZ}Ja_3`ِāa  |MEg8aϰ]Ҡnڷ7 }ݧ"|ڎњPaJ]#`n7-TeL-{>B!P"#a%a~)p$AHb[, A{-Ox?Z =K   4<+>pT%[6>o+@P`2\[ |G;[qd@fJ'';kЈ=6sq$AX?ĨX1t!6Gg@ dl 5OyvhBGɂl֩+4TopP{f-R6{N\t#@{Hx +g5xL"$@iOգe$TYMWE޵ױ#(Pc=H|a=+ q!fx@Aϔ. ,'W7#awtV[;Pjݑru+RTW$"o(#q[j )OTPYۘ%Zj9;RyY2-KWi(j3n#l/dՈOMk+D\[7M8һBrg'?йLmj q$Njj'7aW={r=- CJjFWu9_!/Pğp#`44Ó/.,Yp0Ua˱hڤszHr]F#L'=K ϓ{~MPdm?{]exgz*FiRAUG8P|1O0w= SHM2ZK`>=[`U +E@@xă"#@GNU-@jv2&nS.?>78~ɘ=)Re*ѾΘ(>退J]A5^?"s֡ADBIyQ v2-Su M{7Jz+E7F2+naAB 0E=\W[~z|%fHmv.c6g m9h׼{7nHTra|. &`-%0cGp )s3dNH:%;`<9q$>^x]|+,~;]نl)˙ x ػ~eZM^S 񀼴V!'Y7J hQ()D!=a* :`Mo!̘/u]oZ99?Lv9$p柝v&#{ij^;FwlP3:-XA{gC\$s#ӛr[l]6Cۅ/6>ӵ:SY`n0ѿTz5&*3J/".Ortf-"HOU%dXLLYO$.wNJLwצVGlFs+=Bso/{Vړ-=f Q|{agZ jX`nkbdI7fe:Eu=xDAIqsߑcta9d&ق,帿ǩ c/vU!SH*CӘZ,*jqUh b 7kz  䜱'F+=6JǑ<$*? {Q xEdw}˝vmr:YjH/F # dI{ZtGS$Mb+⦜шYb7 ѵVGCt/7֙lHG-. v}gan*RSNmU.$b>bx,~l7Uq.|]OّM|(mDۯ >.+牤%X靾:˜ a5f˅A -KmP_sK@M-{%ٽ k0u`4٢4 U8%ҿt;MںMӍKn~|6xj@#"5Cm\wMb?IV3ӼE. |&z*!88Ƴ4}$C(L] d2ޘaa(BvD̛b[|0g¿U;Iy;H"'W,0@Wp'_-D#yVw\v·l8%oS3cO(ˡa$- 8gqWLqȽ-9G+#Vf< .@c$+ <dtQEpyvPup5?yraWF/q;[;-&X]T(ƅr X7D.|hmQ#|NWH2_ԫ1Sx7Sb<0W\ϰ{ t]?m8'./Ӥۢ`}kFgurF.ٲvVӄ"?` ^ƈˋ/oZ"l$ώ=yxA[3n|r'rW>=G^շo2=WnPW`zl K6\Nc1"ߪ:Bфl\~&.[G9 *oBӍ9s5iy i%:"L +Mrk?}5V8h%Wgx¶@Tmw3ge W8PJΧ ד 5!CEr:c2agݳGp'C@rnCSo->BF+?Ko'P_58_0mUϭoU00\8|]X1M?p?toLhʼn׫p6F<cSWEFKw(|B2T,d4>[ݧH)1O0jX |8 0;Ӂ[&Ȓ !bwOzbpj2t#P!>Q n7"IREH̆Fk\sЁI: N wnДۉ=*06?pyB&Og)|Dj\o[]\5}>.Bn0C 8_DCÛG 6"F4 Ȼņ)hPVI I<]m83+?)<t$ V;?*TI` n_H7(T&{`SXlj_WrBK& 3Vg{Y-dn1Vz""c&ce(xQEX:#6F[WIW붉eHG*0"M"b΂|&L0!U6܋Hfd҈6M'1X-= Ƒuxm:.hQiB47o31IQ4iP/z9{YA QeK=®V!B]HhД~M4+5LrYJhډ4Q\b&m2?i!{ig'_ Qq7\Ʈ sKC)3[M!RB,٤&[| JiMGu_w7P1RdC޶2iwJXR$ 4"Oހԏ 8U/jqUȗQJ~Ð7Q)PVDfV|h(*BHf 9怌!7G97ˆ"nC;X] ][j2.5'PZ]g>L1 {( e,=4v.rk9 xׂT)L:߉NJ0-W-䖺k%h^:_&|m]JnAdžkTH[ؑ^>c]! {'byC@pvޥ6ΆokTkJ$'Cn'z1Gwg/&*6oT0hQ7cuk>k?v ԕNt~ԸCC_Ju60L%i$kW"cQ{=hCKD!/Hs($ .mP}0j68}薤yc{㈗eǓk͒AH4D15:6["?' 3%rEP'5do yR.۩3d:J~߰=#@0-%,$E^;?-5CD!~AmAca, Ӄs={#9@'- DqqKي>3xL[tfV%O:R0V\*6BN,Y"W x?OPslv@8'ǧ8>ăJŒLe‡u^1Qgz膛Ăa,-0qi$V#8p˒Ʒ e/@u]'} qLJaMByGѴACJ 3XʞS:X#Y`Mw~jS Pp2$C赑"/%E9m"@ u{7 ``G dj J85naAӑVp n,~yTA{ :u^,ꖤwP":*2b] |&;{[ں7?YLV,gtaC,~ʮA$Hp:`,!/Ɖ-$YE=R&fk?{?{^8޳ΜENR;YM\ۦ#8z|O&dA/ IϓXǨTngU펶X4ښt;F$f2"s %X MAISQN J ܱ?X<KSOوǾ N&s老/Ӈ RLq4m7]՞wkm]U3VMȆe\jD͜,Gau!N1|r:5OKC-$l=Jt:TV`<Mau kj"yH巤KX7VÒ[P|{!uހvڍs.5ҋfUJANP+K03}b{1Zr%ktT;}N5Ƴ~AM;($Lznrbm="YRރ8Y]…I!"F|Z)o#4Cgߟc=5% 'OviauJV8wkA3nO^N&%9T_ty)LFH\JTlaBS났R*nzv[r&SsyPvEḮs*L!:'umS p訨j8qLᠼ=yÝط<$5zLkŜ_kÜE7oj唆wnp}@4y!x`XtmJ.QO:q75ى4"<fQ<'xҏf@_hDk#x#[]-U$ Qx%]Yc fE%E92 *jRƱke#֩_chSX}>|S䥳]3H4_eWN5yW "]#8(!rIq?NPA^X  N,צ^{r[h12MJckV/vejB02LacЃn͘%wcf#EdxK)|;,uj)D3 vt̖`aR]mW瓕&#ɭJAu+psc@GDďsJВ'ES9R W I} PZ3Si,zӊ97D?lc*a)}í՜Ǭ |96Je+C:,r3 ӀR`+o]pƬ߫Fqg.:.?`Jѿ)kpˢ&hT<]9wK/|Orx P-5ۏ+(zɑ؟,/UF=Пw?V[ q(UbM -2&*rn.Q X>;l}!I+$~ n9pl3/8s^5l⋁^EI}8Y8H( )l{q[h = |p[??;(sk[@B>alW8M_e|Q]ϷAx tER*Kgw)Ҋ['1ۂv*a9z Vكԉ%^$Ѽ>u/dd!1eҭ6b^05M&ujbdw}m~cx-ЈP{#܏p4EfP3C|qT 8b57.+oI2r5,j퀵6 T#<~Y6U]-$4Çq j/x2``@{\mb'k \`rW*Y6d #B5T*TXN?ee&{[:$_c\!n"#Gk VC|{S1ZDH0:14zN|mܭeM.Pa}Br )]LQ0AgzKm!Lb s'L-s_ί')xP!C;h4FZ 񀐶E2Fd(G32!Eev x! w(;#ӥ^X5I`;49U_|d/6a;u+ nY檿BG(ME? Vk!&O8ڎ̈́>(ڻtĩBWߐ{N2Ez˒FIuxS0<& ˆgl;EeH&bH-i˟LImI3Uc\}_IUiFlE|r"8|jKk9*+}f(ief&,V=K>hP_gHVmXÒe>AhAqF"%=@h%Z\zo*IXsG_*̯u 87MyOKpH_Rhv a>S3}/3ں[Ey$g 1?lK#~pJijzuFTb2ExL"mņڏk=ii Ru;oWs"^p@sg$B~;sn4De"/Kc)Y ,|UCDyr0?5: /ǫ,h]=`Ч,'NuD5|3v#[XlɆq BN?#}ڰ d6gf#)7 \TG  &eE5 ھ!WkÔR!m!mbKa(~ 9w2m k}О]LڢXd=y \Ӄ269( {ȟ~m_@Acę@$M3kA9]vޱF?Sb~jHd M{d}]E><$H¤\g ?*ϱ%GRO [dM|*oJ13؟$B.,;m=vjMܟm:&?RY x+F (פPG͡V߇>\<)Rq=WVhk온vpb2h/w[r M 7[s%!;ZSTܩOj#$;Z}(s!Jċ]X4*9w!H)]>*oH)pv Ősze> 9١h k4F]eԏYr'ApGame##ȚyQ W.i5"ΐ*&[Ql~ܮ(SKkwJ2՜6sQ^QMz fU{`F)ը(Y*oy]z#5}[n'~*%ikz5bUTIKZ̷pru@[~c E95&ab|# $*?ԃ2;<@48Z}^x I`n%jܾMb\E5'6޿αp4;ٳ][Ciܻ xa7q3D;numV2h(+ҩ-o'K\95j:\kitD6 z7/3џNt"XȌ 揲8erseo2N׃RjZ F XYkfOg\H:$:wq'dwp2K\bӴ 2BTY6 t1gR%jȀ?Os9IrَwV4r5jaosmOp&L/#v0T9+f4w`t}~9Of(3B#zcTTzT©[Au[)p%ceܹ̞Pb`VL7N1m58.x0U@#(f. }rb6YsydٓON OP91}&V]l9!܌]RF1BG:\}kThKU8OWf%i<y^1F"O~8NpAY$wISxq}Zz ,Z'leZk1`e& R6#P5*Q|/ EF^r!peP&%7h~q I5k^Z}e xy!#ξ9[B8mvjC0н02\aO<.!c9c-|sG4M;{4ʚ h9W8m0 |cpWr7'墔|=ƃX&L%-' ˶&8s25Y|dJ(J]y&"bf41w#9fLwX2O6`m^pTuH|P'?v x2'V?w|9 㻍%6f&u7P K㠽|ە[PŔ;CKNsJWxXXhB <~5b⧲Yj I*8)EP)jJjhJ&$F/8r2{% fKV]mqqH=J{`rWʺ ]G,5 NuCG@Ν5G}2ܷWB6wմ[Ҫ\a|z "D9:@X\:P יd!j0'/Bt8y2-nsLH3i+ROB2V q*!E%|okM&턧>!*vg%v1](|Cs;l8MK{wC)hpm'>T ԣ5V ^=6Ex@2˕;VY߻0T]}/c!#"7'~nȥ T޽DcɄp6B^Yt ], \cfMOLy}Oٽ 6 9jFiӎ\d3ng0V\s5EVeC-#(<L㹄?x]lR(߽]Sla[ƈO`f;mJxoA66"ANF/AvkEDFg:zJk⩆|İYjF_ݖʌM'޺˅];pAsRW4RMdr0_Kax6}~vF-`8=yhRH4[{/1K&\ܴDe OM2/07!],vj o!=<; =/]Z"]msORy˞i רhe$ke- [ǘҰp'v4**QsTlT] ǪS) i #rp@v3EBѴoO 47d7sWy0%gzfr'u"]l8ͦ( =#set>6z_e?)XS'E|Z0:Ƙj5BBE?p}nGUy3k(b!LYKc>>E/ S؛P`ukyzwpXt(A &,9}\pIȖ΃dUR g@[TW1x/5S;yߕI63Q>/3]Q.7ag@.JP${{}e ,Aۣ8BvW|~WU۱-(yEpЃNv8ٽƝϠbBeL+4UJH~V_=4Ӄ .6T^|ug ܲ7(ShE?z]<37Dm6!(s4JϾL* 1~YLk_\r)>L &`3vl￈zԻ&%@)UuYpvTAlcYaGJDļssy&|o|{fF.rBk!Z}%' -Md40IFNfyi:L:u^Υ|hYd7i/ !PZȇ#>0و< C jd{pnЫn3!H(;3*}PVvW{{ r8fs [á $5H|8zI.Ce++V/&mP6L^({\p! 38jۻ>Τz'UQw[6/`V yYʑTLGl%諎Nà ad(W9}dcijY@ಕ_K[dg{es,01eM]ܨ0IpƷ3=6쇟 ݣ▏FV7}zTgE?Ӊ ?b:ۤwBWAǴfޑZNRʎ&U^t&k65Z-l3+KJAàw`cB:$P eVmIEt 9_2"=st7Nݵ5Y:#R+X$pzs;S%~vA=1Ŷ_Tu AKjc x5/AMO ~;C ^(%qSC mnRl*4bTJ\GM8Jto~84m' @sh([3t|CZ:Ƕ鵆y\ZBvw&g+߫se'KS=Ј>Z "?;̩oFW5PW-(/2bLl$hj;(C`:X`'םhKv0V8ƅ$v߰~`EZ|,bZO?w xT| 1`8O(>똰Puـ4Mf@;1@!%Y=48yhut xbs/ʔA@H W!.=?n  Ã?Kr99.[K'W ]'e)0}|3'e>k _ *mv-Nb FD4?%_BzkMxʺ&U:"*WET@)ٌ$1;C~YLRAH[M+mlHta`[Ǔ6Z۸L\;Q[QgnY%c8aZ mq]tT[ 6n=Ұ3v,zm:;~W$lm@IW /N`/.a3J#TDRZil Ln%@(^Xm(g&v0L>dEjmӖ.~CÁ,D7z/W+) 8V5R:  U;"*mHtnk3ԨVN$Gal=u{O$;_UzD,lu04ucȋqӱ8B=jUE هi XwFtV4E5S2 sjyď"X|rvBxU_ar۲M7k*I|v]|NQf" sdF`U'5;6i {xНHltKFlm\4O9Y{[u x ;J1G/?0s4i<6 UwTws~3zjLrץzխ%y! ժmj.:0UKfiQQ>]l8Uq\ M oT:ӵ|^hm؆H d"CwW42>]<5XZwkZ:sEi19r{f>]{*?p ̫a.l!9-4Y]P͝N@x[JY"ݒ2g|RoI)SL1gؿѻVup7l\}Qݔ%^C^ܿqMWgT|}FLyO:IK 5^M2 +È=gŗ A yB7tVQ442XUp+u: $rjj]& /f/`ThL"9iGLZd !U>>lQ/{>ɫvh3m :dx%e%paNޘD@lݔMbjhk骂LݘI76̔02c-G/GMH 4ntd7(;k?nAFμc߰.F%fUI+% e |SȪ5DaAul}^ZA,$R4Fѩ`f# w$E^ې%0ʒͲ;I WzQ2ނm@S.BztjIipq72?ovɆ1%Z* Ͳ/dB{A/W=/:H&L"!/0)I)XH/{h:r-5l5vÿ,Y܄wجN P)& A%o# .`0Ggo9Y)%sG^CMˌKa?%MOocٮSq9vO)cBx3(&U F+,q97S>{aK}f/GJM߲ɨnk CtU-bW5v2k uZ;E:=p#a} % GU]T';R Q+d 4V =v|%‰oK)NEis@I!DAێ3BVo+[kFx1U[w[;B<@+x6Ӱ-7pvk]/Xj#$nͷӔn~ƝMy3{9xg KKTGP/)O<7٪?g1\KȴEŬ*Fˇ㺅) ֋6ayo0G[Z2nء|ns9<%ܕ!Нwk!ͣukH+6?Ϗ?q}(*`ǣG-lYTIA1 (-j'IDC(ӵ Cw,Iq dΐIRL4=)99s%1muY,8QpPYwy!x^qI`iyRE9ړ|ϬZz/\)NٱKK|4^hMct1=Q:1_Y/nEZ_6 =\9$QK1}ا1ok)ZȐ,!X5$M?þ0cgc mW\`Bl"Z|^O5[GK6$JȻM 4ZkJ6Ԯ `O'-/L^~wi\r}%b6u=R2vTh:QgF'!\ )E˵,'a}x2_bS[Fy&PB0S0o ㋽Bz#tkݙ2Vý22"*w2!KS"e EA?9Duɨvad{1oV8Z~,MO8, ץ5Fip80RAd0!MvD*+SRA8;Py^:ܜ: P=}Re)*(aP:LPe/K;ξu~ְYbS$B vՒ,$7T+~BާJcPs~4Se:]blVM }54jΜM#+4n?\*8RHh06nafY;ͮ24!, y>sV(֒ri PPc|`hBX-FN 7I a놲AeF7M"#/B ОW!J5Ob){zwDi%&c4>XEBpGı^BpK`@0IdAs 9HL |$mHP 'v'=7DxW}[tuiY) 99G}|{DάOl Ճ}WΞFKe{_0:_B'i] -,޹q{GKO~B0l8Y΂8mZL~CP'p@A -|ܱ Ÿp.C2?s/>n>Jnx>a-Zfd!X<:;~괊Vāl `Mfj%aǨ&L0c7P~%)0>H8uiB[8!~!Ԝ돋{.JdVe0[K})f¬԰BH/:c#KMBcRFbZ'i Luv49 _j h~ sN, ,]4Z-?O͐VtgORi=VfPp3T,]Z'@S6r?v@dB $žbȨ-ܢWb,+`Pfm5&&'D,0`/DmˊK|o.xH欪ߔ.P e(-Em,Jve؊S"'+8VSFb}X%BotM;1Xm5ѧNL*@VQw vQjPuNx;niuĮH2c > _hMxn򃷽uEjLGpPcVY6\oيM^v6,J.E6#>槊l?mjǍh2,x[x20xh؋.,HNp.֣$̢n'œd Jyӣ$)KK|Z#tڥwYkX=CA7FQҢ"O^꘧c}݌\lN97I%ʆE|L X(-va) UV'/8+kLu~[>ӸϙuR"Ň= ho  ƳwJR/gμ" hΙQ~EkM\;o4hzz057&мqRzG+mgЃai٢<>Xa;.r:tY;Bw5̥4o 跷#^N QTZE L{_.p?|( z+o3~1_]"~>mېدl$2pkUԸ.W6[B&Y"e݄<=hGaǠ>z2D.Hdύ-gYA%\*h<ޚX&RAYгaS:^t{J櫬{P+l02딂S-Q?m ,QeQeaxGY\Bʢr&Ud|䬀BQf2o39PΕƴ@:!w͜='z(/EM A0@K4)qsRs7BCՖڸK w6E~%͵|bR$~:߭`HgNȣ͒2Rt' mr)2DBv!#:Hκ^AH;'?=9`C "/UȥbbJX}]u”[[J׿6˰HH˷ڛQ @p_ڗ˭i8q4g5SX D4siռvB>v.V ;,'КZəLߓy- -EU̩oh@)kትV13 \ϟx "Yف:ݕI)܏ P|!Z#2`"EC/ֵ+ht9͌gt.Rt5&udIY>n8o4 K'l/)Ϭ'TKWIh 2O 9&\:QKtĵl-4a{Ω{>Uʈ']DJZ'F+9J΅`cQ{ ۘ;O:AUN̏%  :bn,(/#U5Kevљw_Y㸀0^ˁbr̜X(b^ c?q"w n(Hq7Ő] 7cRRg/*25wz1^6|9E 3Z3y>z4; Tjdier-hS4Px k'}ewqh@s=4g0|MRz6߄y u@Q,xN!O:6I(k KS,6HE D`DŽ_Xk}O .APHarj  QlHPoe©zeZH@u:veV5c"Dr㳹o&߄"/FN3@tOQPO *8Olmx;E;wc:N4H8nQ v#NaT0Om `s] 4V@hPIiQ͋6^~?SޢWab_m f+%Hnᄇ#J6l>;W` tydHgtQ@G~2"Xn٩v9P=_L긌[pNf"d{01G;s+& :m'$錡["-V1EQ_r@[4=^4v2" {@_!:Z҃Ŧ rz*9ÅS)Hi ]uݤE3EOL/eLR)u ¡jI*Wc?/.'i(Fx(|׌?`GIK' WβqC (6snn_NjP_J9s_L ڧ) ⤽͞l`2(u3?ʧk," (,R$1kE{X)&&TKƷ#o1@Fŕg^ ΄9o?;!>Z'P C=S>0G_Ƒ_ّ}FC.7G^@V%Ơ7u汝ސ2䄞-TLb-y+5Χ@:5m; dLTf;OVFUY8 NЯC~ Z7Dr3_1$͆:~O֗dB`٬G\ xr,"=G.T MC"%FDyqx#Cd3HM:Zڏ;Gte܈ *VqW/1؍3%x+qZ)-jO]Ld/f5[M@q)ă1Ip 4( $E]r '%"p:_@bށ|苤B3K*J\QQ=yw5Ѭ( }FjUC5~D|_6h/ _g`f#U+Izz6`6 ~ lrjvzZ4:+Q]`hT6Ճ*2Rrp?'*j|>Z5ՉEJrn@JBψR>\c-pVZHAС2 @~<1<,(/&RaX9Q>>yj[Po:Н1\]ݑ9*si1^!pﶦ՜;sh i˺eVC۪|navrp eM|;5Y5ʱghۢJ}C_`wqP4%5no$o1oOzXD'*Ʈd\KU{ f `io(*:FKS;{B/٧:[oʇy( 'W1 :gןim肢@*pYF9fcJrfjL^~R ;i{IfJs Abwn1lF:Ih&s@4ѕgOlb]۱2Zi=wLY4qL?#Vz,F:yKN ;ݏ `MHB>q]؈n$7VXU8&aSo33|qC.Վ`&Hy[ri3ݕ-#%4§gTLQb7~Z~U`̲FVCb{m}i7$~4aŐFf6cDbȄ*Y:1DwĊyII퇲:| f )]kQ'-j́nDEaޑ3v*hN mNM)f6dg(]V!^9)54 YvJFNjs!.B`bj$J4ĖI<]A>3앿!ҀOSs k0+-}TtpsVK%ހvTqA{[%9 (B\\SaeVE"2hYisW>I&El۩C/!^D.Kii`H">Q^6[s1;@k>"mb0rNۍ9mt xTh!pn8A֔̈Jqn/p;zy n.HM^g8778,s <ŚՠǞf3141 {go {MzPQC;4FjXUtM;WSםϿ7}4p7JL|0ͭl5wqp_6/,ճybcMa2ɭz sBMO8J?/qiwS ZlliVⵖM݇+#;ʻ Gjs3Z١\S>+&Ne @fMNG͔G/8)3Z2FJ^fɨ)A2ϙzn tL%@jL6O>UlN/Gii=o-5YCe:hKqNy->Kx^kBԾq܅T͎ڷڙgKώ ]xhV`U:1JX5⫝ TY5Wo'XfkFmb 'NZgǏWpm:gZZ[=up}klBr'<|Y9ֺb>MBXgM@yc|, RoZPX봁{L2RЇ!7nUV6'+Ć 6uE.iExOC-Dki+sG٫Q6;~P`,k "=ƚ/.KGHQ5kCb,( p:ȉ䒾gSrt$}pA@Ik3:o*v`DU[^g!fGJIٔ'g]NB w (f2 HgyH;c+Ҫ9g6}RۛBbI)ܞ؈lW[: zH7kJy'}a` 9x@2+' \b_q*7J298QMNy ddhHȿ\,QV'9X\y(+*Z"{)%hg= b1, J``Ր)Stj $|p2|.< t(/ElIbg,bb%:c%`xm&Le-8jt'\๣#7 ӺH鄓 [ӐWRo)MqT\^$v#p'Ҍ{$^"} C+Ǣ9k/ljH -MqJS9ߏzVks#JC+In&콋3 |gv rl8O%*DHk]C f$GC0_ŤB- 점ն-]iw=S/VL6IJL]S "=,M8gNsC.4$:Ce>7'q˖^evYβSE;FK tB]j}?#VLÂÿ-Hkw }sP?OB, `?bMLr&6iS/0`؍ ʆpa}:W$3k`G݋+r"_w*sMp5Ms]>cZIyE9\|j8^)X P ,+x]+Vd[ #3!e! 3(ok0 Y\m< h|or9+5)}e=n()E~ƸJ^6er"=,}QAS=Xĕ#?FbѮM15Jqy :v749%i6H l!+PHT)ksҐ}+\. AOkS!"ڢ%v 0t\lg0|0`Iz ސLHdIy3ٸJ[4|.ST7מs_ PWSc- 9GAԇǦ߀15yiAV旡7p_Ol}jiç&;\>{ b*Y>Zsagpz|֍t7sU3wrgh(ݪ'$r=qS؏Fg4=$IjH-j˭D%I@ǵߗ"o (ԥnRZj5o8ù[,?\+0GF@Q"k%xARQΓ_"7#]y׺ɗu'jg_%~2%YK//RFPwߗn`,R?ܗe w! ]{'5z'xS{sW!n1UZ$ ŋd)_~^0cYsXEfɞ'I)) PO#@9߲UQ2͌LjvL҇~"8Jь\ {ͷK`-" 2z.,z_ -ys) 9j1;%w*u[pv*GҎtq72vE}Ro،դqn.*,P*^wۖ׵5ZL ȸ$L[rp!}000QQŲ?sZ;c#bqkðss5a˛+d|ZB{b_!|LA^?5x$:D|KSNHP:]I*m4JId[ Tz>gh>XWg8Z6iD)p401Nqٜ] F紶JE]JT nA-+R:ًL ^4 I:^2,t_Ox<3K!mgV[';= {}15SwyoW)Y=r<9L}#H_|dMudk Oh'6i`;WrLO>B{QPg򺚩oma B,:QH3w}퀽/d !&(:S;ĝB*mGń~fYʌAZM=hfxz-Gn@Yyk AL7nWDd$PyD=Q8GfJh0M<9b2B媪p1y-Q/Mp߫S=/U%L@*ef~J"G0Eq1!a(쮗O"ű5ȻYګ hޒ/\+:"^ߔD];\wg!E' f^/c~Sm޲qSSB|+.c,ѥcd  `^_çmn bO5[)W\qoq3sÈnvi\p=fKp)1#P_D@&o &u-x- ꋗ F75_?QslfG3)e95ΫZ]GB#TG.5 QQϨ'X_Gdf#e2[.O(NrDnCSc™ɪE{EhQ[1T@MŴnds!5*L辈?cǥ> ^/xu{ );JH{$7DJ_/ v0NGGjQ?a3O_־5a߈Ɨ+MonEV0 Fg?t: ^dfK"WPamTHO#G/|}UAeZ(~,[OE՜K=h?%j2O!|TgԞ16t;)YmvN, _ls{|^upʡcbRlW%4Eĺ߹>Օ S$sI492ܑIȝ1*O@aǥK!A&u? I>IJReK^/Da#i)8szw׺ʥi{sH?S6\iG OL:is#F:ebAe0nmj/Zmp>!~ {%\=ʹv9@z3E!3*0nD9pE=ʸ]=DȤƛoi*OaިcYytkYNS 8mfNV)0JeK %! 9EFߌ+;‘ QHoaIA2 ЭA} ίe4-#$k&&q綬g V^ ?.aғ9Pk|JW<\+WQƞQR` _Q8Xb~zn=QlTB 9#dؗX~1A1y:N_+UE9X5#CN%N8x>dw!d`tAd)9o IHb>GmG-w,m;O\ {Uf&S{j0vlH&Cq^w$lVc̞X6z+Cxl=9Ջ^Hjo$\$|3,b[J©G=\Tמ|VÃS0RC^v7U~T}gXa u2Z2ӘI4|*vdϦ-.-Tݟd@*Ȓ|H!@;>3\ pi+q1tr~􎕖leAʦSi8Ӳ?qI\A3})DZp٥ s0:,*R;X 7 pџިF yv;-6k| jW_Yp> DsHkIp1YBg8_wur=e:ߣT)YLGuo#"`[?ALj3"xsޜ2IIl)',FYezrs^ iRݭuwvopf4* v ݬG{2cf}$ *ћO}_''e¿"D I9 1zwZ暧V.+2Gu @~MTM 4r޸2yzk̎uSGc<Q`Cãe.'Ӥ2c8<ԝZTMa.ȣQ`!ǬQ\@럳 ۞9z".#vЩp5V J(iCrjsHրāKO*qef sڷ8Rr('%!Ud\pT$0[Vo"=^POٵǨ𺃸 PN,L Kw,#Q[3@c6FY#:Bxt$^zX"F{8r ۚ7k n$_xWhǀDhdXoxgf'yNNcO-n@^0Uo}+9E O!)pR%g#B}~a+}:E!-.c6w78[Q2W/rK `$W΍N-wDZ0UOqTagzɻHY;1QS Aa$Y1F\jc 栳oH uH'`>ȱ%ȟX';<|#*Q ?),0ۆC!H} )SPܣ5۱q zG%.wa1(@u _^lG C!ıM$R k'˓ Zd3ta?:`p(a CAd\_j.5_ Y;Yk3˜M&;L=_?RatG!&fbO#qJ2y48,VԱ3 S:s#sɿm+gϛx[?]Kބn>RFFY[4V9so j^Z]\PqX(D+m!EZ2G=z~UTqBHH:aԄuM*m")#gB [U^,ٳ)F@t+۴%$ߴ)>E[6"}7JK/W Asw{*ܵ\,-.lfAUUo1S< %zsV"w<ħn.z]_d=׺ !]mtTg<|:YN(55ۄ iBy$WƠ02v_yČgp`r~=\E4+)i$OWzL3khAϨ̓.gp#KMZ:'% l3J4Wc&Kd4Pˣ+:;[՟##6#:1/D+\0:W .A6ky`07%x*<& iQ"_Hu` <4۵`%>cdr2AzĦÞ`VY2oD"\­eD!/yn~…g> KM(a.&h8a| v]ociBsL(LJC+gPxOيM"F/:@NKꃼabP㢣֘ p!-n'H>nTl\Sh,}a=Xκɻ[rX ӊrnߊms!sd=HM(j:T͚ͯ;c'xټyDT4}-kdLMq :(p(>~ˈ#Ɍ[a[D6 CU% +Qw1;-VhaԤ%Ŧ-‚9'r7q wώJZKs9j$ zek!T~ȏ^F-27J4{(̸g7.SҲyoqk28f 'Xv)^@s05O~7ol6~lh*}2dMJf"3̘[#"~0f|0ʀ & ģA~| yy?wT7Y""MvOgyoݿC*ᛗʫ7`] os_{6)H[:H@] i$lG N1g.gvҁ/ް#dI- dUWr^ !B: PxVN3.$c!oB2b:GwAC44 =0T:x,WJ-hB%tYnASp"m*:6 )D^Z'1~<\&Hcx1sަbDۀmB; bI irћ >ʘ702p V5Ip6O+%Ϩu^~&* r+9bankXλQ* LvMB`LJOs:ZYQc*9|k}¯TCX5/F s!Zlfn2?)$f+b?tH&ZViš=`J+z3&IDPV'|,˰Ѝ H "WWc쟬ȋD|[ȃQ2yq!Wi}֖RMÅ\II)JVTʲuC[)>qNeUf҄+u3aHW tD;yPv}\Cx ;oNȃ?kڈBZ|⭥ V3$e%p9ne W{򐁴tw/Xm:8Pcm1>voX]{d͂V!,I@خC@/0P}mP3QY]m]P԰6ݬE`CÄ+F c>L@>;R [8yd&<:(|D;n2KeۜռڀnVэBL{`-AN"ۉƢf$l C [Y^OI\qoS- LŕUNZ-Ҿ@\YQYz>gR LIs?ڶ&j4GգP/ωb@b$hxRy1ɅMYp."rl.zө+L7 7m P!򠉈L9Э4:'q2 m9Wt[`}$SU {pckrAa:? 1,V&q„<9ך)*;ib3.,: Rnb*z3(XEfoJ䫺ӿ4m>7]=VIGh~v^e+ $+^B!U,p>X8P;j$i':'6ws!`4`aA_R॓R;["~E:$׫Nc2Ԅɯ˯Et䛝΀(gܣD3m;TdP2- ^j +-=Uw{rwv?BK6em`Lzuj_Z<{ WɑWzTqhtZBQsP'-,IxhŽXRX9R)#cwVV b>2'TOVY~sHǚZKE#kd`b_}}c z.u;1 EI>bdWW&2K&}(^{֘qxnA4{>T7Tρs. U$PyyO!XR XB,@?:Xe?Ry~ $m:gdވ\`" e 5 Ap"|bN#Hm&atFHzǯfZ8Kr`w.婍J.`9R#7hx//ͺB,7y-+xkGi@B#?_B<lbQwrWbKoS39MeVHi}~ˑ2eT-s.; x?!0WEc9լH7sMj:ڨ#GcrgMQsiO6dh IVQ3+M3VL7.QWJd K8oZg -}pZ>1p ś*I9- pN,f"!mץb;RB/ZD8/^١T vml>>8ǝ h96irwSmyqFH45* Z !š1LćС)p hlm_'iԆX2>/yYZRqCJND#c>57fh:q[Dv}C, /HBNo5'%#ZtTgV'2e1Nv:fBR3,It}Z4q17^/5A_r6L/' ENx^,zژ.}(#\\v:pm*bpa@k '˼1J;`c{@y[tG bQSF<&sv9`[&uOȋ`Ge@f,YK>ѧnͳ| \7s)cvէVZ h c a;:aώ?Cq.Ƨ;!h٘ CkCm+n=a 4 S>/Q1j_ h 6veE_| #}yf z4GkφDuP6Rz,Kɯa F\ qp*@fzdjf\ QNI- iJw“aP"wS{Clje"w Mj0{ASMAòQn&8$yv4 ɕ>|!3V0G8j%{nMW8b er…$a%ی#,6 x[ SH:`^ (N֯MxO9!/ J`t݃IðR GcLNB`=j\ <7>x , YuЀ:$^ͫ7cn\BUa ǝ4KYO '9QHϾlGx_;R9¥0Ɋ׹O7Q Cʄ_*i\8#971:s?"a©4Tic-JޚnzsWܔU@EmdhWU5;i WVX6%8[ h-FQʩ?dnOeS(7_-P-{(G\ hx:5P^Auvb/Z>IT(G%I:Ap5-")@0MJahj2iCE5>xN"4T \}$"NBr魓ȨK5P>Hm_-/XuT^7HuQKxj:mN^ymOP,.6U pyZfk]b$V'2KՂ"tc]}T}D9sB$Vc&.?5_ޑ ]V^L|pܜ]t,?yƲUpaY:ACgݹ(M{AXC#>=E s b!WdU ,{E5kC%Rp&Fv&=፯=K+'!K6-$uk0gaNO̭3URwwF߸+l)qލ/gϚ8YbR+:{#mGZ MWGyxG@:ԤsDr*e%~Fƻ}LxEՏ9^.&jHMMs_y-pg嶝B*+Y!/GWDk^`lvNKٌO1hc( >gxMʿ}ZzCr㜍:~8^)~fk:4'^^* D~:n&jS4CXQFS؊&Q7gpyo ;0tw,sRta"[nK*)vH58h<:W"׍N_/j|U%O" HpKT7p@(alLê>3$J뒧&{C %&lfP\~;px=>U9_GIZJFx7ya=kVI9-hyY7{|+s~;mfSn7^33JKreE19œ=U`5g31GfT 5k_u[ ** X1L`PՓ7f s)#Qr?{s'[j)x6GYS|Wθ(֡GI~ ٫RTwԒ-% =)8qlvm4q<X l`׃=n$B@{ڜ% ( NHY ?2Di2/;^:s?031D#5EX)*ІbcCřϡwkA<:ۀcA^,WkҍRw$5xfDHg}5s/voc1%a1̺3XmHp LM L?ncPSsk)9 B?W6pC-Kt:vl>p ~!Y/jxu Kgº1x53Z&خwGF!Cnb26sGILzQ< RW^!T@6L`n -uvrA췹( }54/Ԟ ,/\F`*˚l%I>{G%T^Tə Wc̸o(PsRKChQR;CtHd`Vt8S-G Y4@dtr *ܿB5ebP$a崞-$n8ԢGPGP8B>}%MƿV:zF*?n/0-6N 9X|YXzh"?.Im& F_vH8%A(VɞJ+Yr3Iy˶\3A\&cgwt{$Rćx* QpsA?8PBz* 2NQ6V>s Zh:Ol %y._uŦz`=(tdJ`92o2 y)R,$=lb_`ؘ~ g1ʰamp &9SL'/[0yjQHUJáI?PsNfxAҴ[!JDQCQEr갇G7;DԽif=RFv˼K]'j8H׮2$z{5p-S~m^Y7Rh%+lbR}IG2冰2C^qƚh5 ƩU]PZM)b?TL'uÆz! |Ya=FA9\h@>@9(ڀbRb s\/?|7"sڶ4;a]W g͜&-0V5nHPޡqcLE{mNYE90Drxk˶m5[AΟ{K;0!P3?nف?#|oN u;gP\lZF4Zw?ko3wNrOn:Vz0펿 HP.WwD?GMh iNB蠍wpi1ZJs7L`Q~FF}G c8|>lc(f:td:^JlMk%H13¬|63(lp>qvDpqn`cY(WVyI;XJpYz 'aE׊dhr,vKF6\8/~hL./Bo5ֿո;{W?y֭i%hl.}PN?k? .{q4}&b,!G 3d&Q kOUEƦx{ !Tqؠ6dXˬo52qu/4Ck?AEFΝI@Ҩ{^9 K0TD gHY(Fu}?^m9!p\l3|'Z`z \>umАkuL02`8#M>-*n עڗqsV<³x㞫?;ڱ^K%Pט}uAue0 iyvrv]BsXx7#|eaQsK*m1bk"Cۏؾ ¾g0̩FnUV#YI B2pbPqh,z.UO".ssS?B+#GBcH2d| wfӏq[Hw*\ZܖvT!]G8џHXY<6ޔXU/SGlY #ߜ_GqN{&c4+6) px(Qddŕ-w,LM>FGcpx4O0!3CoT?O)\[(D{ W_ұnpT .X'1V$>FPó~eTSaZԯi4UIUԁ))Om偃7yb|{i;@ܞs-cCUqu5;٬zj naVU@(Mij9{l߹HؿXQN珦j*OBTV/NJ~ƜO8U!u\k4YlE|zo趏_Xc(Cӛ([MKJ@t==gFbA&q,Y}^V@ #̈ޔ!rz4ᕪ,>Fgdb$+֛,pDdz4#-][2R`NJh RTqgvU^EUaov%nȶ"zm+xk?[a-"W4y%XDwT3^~^LH-Úޮ[0mYjѮy#cĭcd&l[=2ȇxk)A0m;N ;}kY|T9۱yl}"ωI0GRQX]"[ 1tXi8S 蔫$huʅ$c:E]/rÔ0U[ vcHh,j|;|'ē69W(\@pS 0NdQ'W!E>gQLE)4o ζ3[BugEɤWeʟZ/h~:t ?1DrckIܒ_wjZ^Ur } i) ~(wÀ6eGӚI.sځ9˓ jZTIVW$7 cùpZJ%Dhxv87&;3ă–OAHHOj<Sib"p;Qqs%LՌ0 8M*wCW7oFL%ָL?$!OL&ߟ7.BT9i[ޘ -xo |_oTZqFOkES\*ڭn|_dw4mAn+:M{Dl@Ўś2X/ 6nq뱠z݊tg&|)D2  7> \ )̀<*>Ƅ6L5,SUhyj4?LDWJ/́ʘީS|暔cZmF PmT]P|Fe薻HmqvLiԲ9n'Njsma4p~+ȧ L{ӈUNmجLJcDUZ08(Ab}ZqTx]`ne]Uj[xJEW8w\_ 2o6]o\ ^NyTM23w !0c萌Mɣ u)Xo{?b8jvק1^ `9Ue'Fo$ "pZgrZD{#[BN%$šLwrń#cۙ=!s+u;PRaH{2Fuy{5.%F= IJ2hkSy8YCtH,/Y+"@V( ah" OvbxU I a)2,"9~żјo%Xf޷귤I?4N Mg1&攬oZ ˓Z~qyCT^bY7Oj֏ybjUJP$ w㓣(F <6 Ox&0] ECQd#3ޒW*ўPnh2֏qy)JR@98h/ W5kb/$R_ OߜsNN4V#,%h&+jDV]+:]?#yV#Ro_gF1`Ko'B*?RPɷ0YlÛ1#SL+}ş [$oEg'3y_Z@m~BaBQFvցCba 5ZOXGtuK󠔽4-8I8_x-h5\ZQٍiNh.b_R0N  ԮDt::1J=VSIxK'E$tsPuBTp{nh_B`.zO Lp[cTubsVxfR% ;fX*ҫ!)cqh êrzѥwEo;v3Ԛ$\HYtmټ,므0Lw#X[ܜ)B#XlyWVo]nwࣻE#!;[7ZuuDM^^\?Ӏ)XeMh?lXT΃Tڧz%8;FFŬwȪ;7+;(/AUCOgCt%B3u{ҼBPrו]]ȶO}_8Id|F/K5Af!dyng}む_y #"{PqXyH?Dڃ=>w;TBE4jbk/""S~"mE7b n8BIΎJAL"_l&"8huF3m&܌ȧ+_1c!*fpeߤq86(] FsJkO}SooJs4*޼:_ܵ?({w_/x ĬyMK_yq5@؛arۣ6JB."VeJE!v#>DMMTdiĩBYo %g!c}i 9p7o_׵*V)!|U+#?xLҸ_ ӎYc؆ձxs8 OjUyJQy1L}:Os~w{spdxy.} ,!r6(@`[jҊ/??;+u|izuH-S{tM,铬)JsՁ9IdwU4ZQ{H; %b Q8KT־# vuSَ#BQ-702LWq$ ~ e$(o͇J&\E4"uip]k;YTO|ːQ~4ݲ<_;@4,K۫2"E9S>m<ȩZ-XO5NjbeGiFM\$)R8FFlck;"~얒AJLaÓvD]?̆sc Vvyrxj& 0mzQL3U KXm)(`ϩRjnZe:GHi::dM "p)Ҿ$7h'Y[˞+j9<(vOC>RISek%q>3ӵ(-,G>POr;}c8K,VgxiU Z⃦ +1?UDq?s&x]Qc\JExx#~Dž1_ǴRrr$ ,\e@6'a^NE Eq'Qe6&}`ذU?;QJBhXL[*b:QJosVy1 :g 7;Ʉ3GZ~熄ijJ׵j1Kk[hM|ʕ[lzQiaA yxok4FOTa/0W VGed-.^S+sщ˪gB {W >1_Ӽ`Rz{nO.ނ۵ڃyDoQ`:J~up<&@!W'"ȷ /OsgP㺣ঋx j}`x?RZNyr#Z4{騗!BRƖ@#u2ȇؤ1R<[Z6 $COۉq|J~ZEfI6F4'}U5)\F8 ! _2޿t]u]! |(h2!*pg {X˯䯚@rC?}sn+uЋ,|U&$YCo#"wAU>~+ G#ٞy l|"Tg\v-F`ga=MO|FƼ^IMB [Zd6UH9ٙxgjZ_mVWJFa%@7${統 TNB>~Sisz6 CBp;_fn>g^xrB^nGۋ}!9z$\#Q p6Z޻8c72uSi|D} 6crF[ždHu2x6_=f^ֿPG{p'ttg3̩+\'9CwJ_;{FPjs*v&Eݮz8BA̒N7zm^~xmYwP^2CEz m,9΁c'4kHMK zfا.3#[kQM>IU5 ]8Vm감# &2saG"4'jJ c7vjG5.vz#0 @EstoTuAECyZj{w]_4X)bN[_D}#dw"adԊvLt)<6~?VC/,L3 lb?8a#1cTw#ǢaHkczl%࿕RhS, c|JeȂ- hyYn1s%SXK1L]շy;Iuqj< Z{rqgDS}@UYtF}w.h;g;\#59gvu!l%p'7!RK2gjǏH܆ɤ(TO/y_hb[>E2Z N6:@u&xA2;8xL=:=Bo, Y 6}ӗ DWJЛN7;Y~֊!Z`kxD'0 1_xN@҄IF`s:^8R @OXVh<7KRܭT.oxq^-K84v;VRNz~uRjAxṕx"A OG_6&JJʅX[uDYbvO-:^=GVhӈS@e _# F6H7F~S՗""yL#9X=fo"?t> 3UgJ2Ő#vwXDw;3T- kkqo$*S3'WJR)QnZUn*r81 E\'LeAZG+(,y]&yM].C1Y \x@*Y#g0Uj4#`{\q!Ӓ@&Tb lz}zM ^%LBJK悺qW dIp{@X#p$GK 1|RdN> C.l1~Ej|X٩BMv͊ӏ<lgZ_Ybl,@APs: K(ņAԘ2 2sP6ZHݙ3B|pL&*&%CaXVXPtN% eVԹPIt gJ ~`Q͌~`5^Y&3C,\r[z)*t>Ϥ ҺV Xp^#rU;HRi%8Zܞnס͸z O<낁[P'<*fGC1b/:,N_)aS~IHH7߂='{ƒ \/(0cʫ|ۿXP穌gm'Y"hCM)| I=oaQ,6`jOJ3`C0[Kl_"GIBu뉫.&g*[QBV5a*f)>\*f8Ix9`(ܛV pS4&*Sq Bj'#g൵#63Nc9H;Gَ_ WʷVN:onx;5&]k4 }b^oAXR(ȟ,"d 0I粧t&n(#@r.=Ran? Kw XiωMv+Eͽ> Q,E4 .Lf: )j)`ީFIKzK6ܖd!^q7f8K#ܹ< ul@ FuFa()ҋ{Տ6"Mqû'iϡ+U!#5$B9'7|V)_~Ln Ha%rֻ7!t<D"n:ZϮx&thz! 1~ `u qXӟ 8g9SHq?_#n+C9~\< BєR%AkeX}Kuڜ];s0%F/ gshCPc/@a*UxڏS+Nh:3shH҈^>G"V| u!zMLivA=n,jftJRY?v;e^XQdP4*vo$-EwoU"g(jzg M@>D\A*Ta">8¡.2]XyxM/'jO}CDo-Fc#PW1foƇ7H?n~%( q]WP.rQ6잎;(Ŷ^k] &tnUvɠ19ΕU& UP\ }uFFƾaC~q41޿9 WF(mͫU6s;ۗL 2ȣ *.AA֘>S9dBFB:ZMZa'42󑊾S!!;*U>Vqtݭ=p@s)NN,d ׯ5Y kz/XJS;OE]IwDdp Vyka@_ [Ydɽ7pun;NsMlyp&--v ?0q_UUR QJ_*{Cix<0q䎥eR2쎩$8V>uz_p lB1kyր%ñV֍qɺC^+fwf}I`Tb(䎱24~{z wYn(%Hprk4z)F[gyZ sBtm8Na83k V#шya.FS%g$~Eo>XMX]ʍ(GxZHוMFbG>_]@SߊԦ,4㫜8z~\/^0 J5msJdR`,77Rr⭎c"+,w.@^:QtV$ {di(8-)kl\iҗv@ij7& .9w;m%ҫɑ9kJ`o(E>Y|Ҵy*Tn?9b/O.eMhʵ{KAayHwTm4m]+ GyO:ςzf.%MA*:4N@gjrl]16ޫa}5N}<; -J.#Viui KhڰT9P/.Y G@]׋ib?&ٝHؒ?h9  jPWz3Uw>*գ7e# w\W%TG*lcKUiB@πxA! Qj1f*G5OpCm` 0vܹ N)(wslWw=ǣ6\RzZ;F6 w1sS'5f)t1c 9 {>qu2ew0R[í5>:cs(0cl9w'3\~ [NteMQ`fI)fu_0>R#aT#Z/M>fКyiG`B{jx@*dykW yU\7dEthy.:K&D)`HOza23(ϗFe"t7K@&cl2Ԗᒈ|A3ddX/'2c99Uf ճX2&՞ aj$>-c\ӅS" $NeX~~?^S4#e[gH4lsjEY>׹Ʉi=+V *K!U2pg{,;7'6jhoz&ab1.W(1ݠhe/lN^'ؗQXۑ[iK%avSH=#YCÕ`Zᮕgd+#KyԖP,a: >PkQ5Zgi͑Y <*r;"1MOFv?^X?WZ}"Q4j㙆~K7an);lYlҮ_5 *b$@]*dV}"sT$dHB?U4èIePMRÊJTmЀtm֌}%~Ux30hh&L:t E }W jf)\8Zr* nvF9GfzQq/C2W5f.QN"W4C I|olzȂȺw^ WH(%9?\+v[uj p2ll~8K!ʣTy$ 8>.imu:UWSW%]0fGupI0 WzSOs-{u4g]̥ ;I+O$D2K'lf#V@F˚w#4PO@**ތ V((NwckX#7ٟ-q!L՟1uz'PJ[coИWy(p+KwWH:Cm喙keܣkllBA'']%!O|-H"L ^5<^RSD'y%T"K~` 8LO))Է0oDc/Z+5J@K)OqfPKR%Kppok'ꂷe/6=9a3eMe. }W c$%j>y4AX;'n~3qӳ*Ёmva.1)*rD7kQÎMgg ӶcxiUF5C3jkML01nFk"6Pu$ xVc/p\gW yMNW;*`Zwee|b<{Bq(..yh/יz`M_QiMK趠YX6NAwcl.U&9kKɝ'\ҷ @z}Y`u-_C1!瑾 xg>J;mL3RrGcXŐL0U˸K/ o{;FUտ$\6C.<477a;L*8E+7ݐXh5׆Rn#ɺd!O&H`~є8cc8+}Rϸlf&o H{(7ԏd2|:$.t3;;Zp?HO]:i3REH957TZ|W6 M( LFQvLQu{;ltwKo?O F0gc "7}x[! nF ^ QE C©͞լZG% Pr8,fǡQs> gCwmo=wox3jr@<&ňwН͗JBoiXx O$`k~5Ea|?P ԅUkޘu[s!oAemq ( Ħ[nM .EmPlo$S7Doy"(&9> 4gM $p"\MF-(ɁL&9& 2 {_MvZL d+fzXn\V޲$qǤVΪuɵE2iuw!/;o[E/?R|8M0.#)nn.QD\0ZPi =^9~T7M Q1'AW# b'-]G`U48$f&E',VVM`e9e@)ճ",ppF 頸A t0nO>`S| Җf oQIp= =҇nmQ;V#rq[T'-Tg.?ګ4==b3o^3fcg uu`su͙,w^6~@%Be$DMd;; /ނ8X1aO}3ȧ<[ b=zX}"aO| V3zto(Gƒ'Zݑ Z]1ĸ;=CoB/ZQeՓ~by6_BO f{5>O8v+*e4e]gzz}ɒSC0c/Z 2''ؖZɭ]]Ybq}T"k $|]с^V+R`Ugo^ =3_Et-툲t~cÁ=C~]zKbћ*@fc?S׊׳ډ*Eܻ'Gڱ74|rsM"}cnX{#[S6 ހi *^p ΍]2[KiY+`~vWW!:uzöFjI8ډ$1nG@xƳ7gbЌtE"ȄW4aZ:I%e,@&HRq@AlnI;tL|bo"/C6!24īFuۤ$oh|a{Gxft4j|;a_NQ a^):m\$%B4aߌ3 Otv?#Y@cM'^q7 z)ѝ̾04ӊYހe׆Jź찡sOKφĜ84+Y;0Rs\`cɖN*SM@`B @ eVKO0ʖcscJu(f/98 Y$L3]o2,p:4U`Nv@OڵԈPՕОv3,ˠ$FsMu^KEUѪM&0 pc+y,59jAh:&a\sc%DmIlI&QBemhY0J8,b!Z6*1-K* {4>=a) S{ⲍڗ3 7sa+иwHŤXM8 ]q9N|0ՠ EesP@s{"VB:=NIbKÆTXyg4.Rܦ5û _njnbpLXFIPև|D:O6QVύ`AYIJdUXS6e8x૝Q$nJZz4}_t4[羏YQ4G$nBeڲST PUU&YkSU룩5:Y҇~%IviI [~D>\\t(BYzR"E'/?] Ee)*nN+|"g$28jV)g~m4=ϣ\n#{Hdl߲B#S3 {fKՠu޽b¼w pvxM('b7s`WsԆ_7S.DXɴYpn 4dEmj$ P'Q5Xl Y+9;ː! z;NbyY `kHCcdnL{ s]S_.2x㭸&y7u_/~&< ݨCpHǕ,j_uU =cKC#姹@Njt,Ξƫd̀4ґΜeuyao$:^7%aFpsqVa0va ,_u/gtw~ox`'aiy.HMgtai(܊G,"FIuk+/RUPV_ V-NyѶA@`ⶠr<&X!v H[M}2E_,6"![1LCWE5/ݔ!PZC^tLFކ<w]7VV^TIM )d63u` I;eGK+@q,f{p9l\@6^3QYFyZ$2O< +lf0A(zy|i`8iV9Ns? /Ι4R SHTњӭk&IQLMm.1誉3-7A\JrIgz a:u]vFڧl \HQ`:0Z?љmG:w>,HVt'g|Ȑ؄g)ja#ɋ;X!QVKwZ4p; j$եW}|罶Ʈ>pc2B(]2}[&TNVWp\ yIU'P'n;f#. q)b91,+^'/yӛ?&.`9Tvͫ17gdJ |ƭWYNNlE>u4Fuf˰$ D7ڃ$z(R Tڌ8+k#$Q̪ e;N2y~6T^Xwv[8tOϮ!%^iC Aū.o/h*}JK=Cw-O~>PiTlX q>}-;5~Ёq0\8[sUS3[ !&sݼ:Q\_/wn^x[ѰȣT~Jlh^?Y faD*2q ~Z|1u k 8t?#sؿ#=;_׿7Fťi(B.vf-<@rRZi6#1<RPaFJ$%0{;4/DW7f\]uU (MVS0acBV`}]\4;N'uO\oT;l^HSVCr=`oq`tHˈ\ɗNsڍz8>)ލGZ..^{Tֵՠ3 m $c~E7cֹGdttu7M7e+8OD7ϥjg* ٵo??G[\+H:>VbA@t"M?A V4Bpֻ _Xě'bF-J<`S·;qyˆS+Aa[%,[zǫuU^"D[% * $zZH(S1S(I}̫ט;AagE*_ Ex`ӕ B<€ rׁDj65 O+fđh:&䴄RW@Ht//miw苍JGh5HwefXd?=m(#[ qTflI؝k#҆.8:g`˿OVT1&V˖(LV/^-&2fζ$I.q*ՙ6@{ߜ^T8$lh^Nw7>p׽p+=KbVԨ5mѬd(O&oѹ|^qG[ő  t7>ςƋ0Bin>9V ~;V`ꮮ }$UVWaŠP$!׽z~_3ްF/W}8er>vJG;.-f#4JACReLzy7ǍÕ fZ PyK)/gi"Nِ _}v^4 Lj)uXr#a1iRlԎk}SplF_KM^rUpO.),]M9uL.$P79h ޹]U ]\7%Kc" YÏ17 40XɅ\7ճ`c/ cQs/5![k0"1'*!,1hy S2Lq(_CFd|?n('i!]j_,-1x`sku&d]h+{Io)n֌c1}]͛($b!Ndž@eV<à.p+ZUYHk}y"uDְ]iӵrp>!YB\fV[1jem2?{M6asO N ~`:h,d6LitA{"H0XP0:M-K,§j;Jt٠\.P5'Kwu'ta9RMdnyvz93^$XOe4r~\eř6FGh$^Y׿ͧs۟ Od{@M<%*T8w-2:aG]8v^wy/ ,I)ϔR.Jڐl )nM3#iZ8i /ud oRWM(NH˦/q<>o?8?FPl$x:e+rη]@jg}Nm >䰓f6Yv7r6J0ǏjڇeX c'M;V2O[F?vM|lj煺M\4pMPr_*(3XdLH>SG@Vb|HxؐabwYD*!?x pEt,v.Or-Is|ӜR̕(UBw&~^Tz#HK(6GEM,?a]qxYzEv <`KKIEfFVԲ»qiEVZȁSYlR C;|v$f7[ /*X&he D%nO6M Uv*?bDfyj?S/ARצC"}hT!gE>q:z9\6u2(PjB| esQ ~!#k(G%C[(,zXC(11fF.:u=PZx$N` QD^_mCY1t 4r:7q91Gֈkt̝RK74r/*S ~jӇRY99$쭇,o>Xơx,…ɠ'pLRPJn&;ʑܿe͕J> ;UY,QFW*S|o :X.Lk@ϓL |7/aHDvJ 5|e?'/w>R'[X)@9'Vͫ0Oe"vǻXv6 ՂO*W%ݛKخWKrGoۛX]7*TCtp&yޓ|~S>! \B% DT4y]!T֭8yA{ %Uy "p,A؞{q+`i`tV l+`QE*>cZu&vఐmxhGQk啈` =Zpς-vr ؜-JxPn)h@NVZ~vBcaMm@V-?SQԉļLeC~4P4uHj}zd[6ԉ"Ue4; &wBEx.=KH33añ1nh 7J!6E\D0t=IMj5>]-s?n5""ƐM8B:>ӡLrE^ͪGKt5ڞ+x&dJvj|؈wFp;M"/gITz#!N\*,gxbB?%<ǽ X_]zI@^nXwɮΓʜ.IXo3G6[o<9I8vm]95?>3Z:a1FoM ]ԆƴM3cK fzGm5$%6],h5ymǛ܎~(dvLo!S_H1F8N> 2Hvv é@ldL~0EAެcx :J]-k%7oLlrBs+Z]ăYM>kE,ɸ-+BW#tK _MXņNn$ɴjY KO&q 9 HD\<  u8 1=]-/Fxt ̉ G*)H/7J*$Oma~a;v(ň$.qtG=HrqX .h{0LKTh*~O"j t峒2'ȋz񉈲)Ѻ +`;$in+2U{SH)Z\~Q+H6dh`0h\ӹ ZLh .b`_^˕7ذ[/崔ЅGMDe̜>h}:XO`ɠRo6U bZ ;\N+<ɣiS"OT4(&o&VܵA\[kGSޅA3r]#dNS [3{nގr`qVk慒c߾YxTaJMŋ h7T-婤i$9`VwYJPqBbX.8/v ebBo `fjI۽a $sm&265Z0X4nf(N\]ۉLcmːEKd Iϱ~+~Dnr;zXrMqmXuPER:p9U$kЪRb<nqQ{i j 'AC-v !تG>a۴eF;jOX̑^7|W>Y.f-&r`yZil,0'/)`c KhD *v3݃:zKțp,$]ST$\Ң70,;;ۃNiYv%_*iהʽen$ 0&eru#M=%o h6ih-;&(#{ !#eV7T:!&FwΏjy 'q(B,9וZpOY#-r-I " ӄ2S Xd"r9y x(bZμ\&taAQ9+Pȩ3M8r%=[(d=V_dD!03+vӓ>ْ\V&b`N&kkC6gB K6v5ʊi6'?H/HFP]3HYMPU=Y*\ _4!cU%椇/h`"X# ~S"b$ tOI%GZhG`Ց~Vdd nQѶR N%țl|Z<8a^%Ρ=xg3@zsK6j\G^ME Ho 4P8DG'~* }?xO_1-՟Ӄ7ڮh[_~;<wS~x+T}8,~uO*BOY'G:f s ,?9 ]NI",%;Oj 洜Zsķ[XSLm?zz=bI̝C7^v^ym.23k CC#ٷ EfYXR&n>hl6$?-kBٜ=xUBYCa۩u/r >}e @i0l(ywmtbIDZSAߌOTdռ\kL:W 4vI, hK4Tw[+&nL5;kP,Ϟ@*c-^u y;wGVFLwטa¶N+qA7U Kب?V4c ;$W]j1PiRcjj @OE$'OГ7$*tGƏ)ofF^TɸH9hH~RgE8.@c;6JQp;!ca^v[fg+~,F0K;-;uLJ:3Ðs8dob ,Nmk(9O _\tyAQ9Ft\(X MgpO٢ //37c`@4{iW3ʓ1!LG?<>5U[}O*wwbO#I CH »-Y0mrAUOvؒE3[@c'n_|rO)Vykc1n2jY bnoq -:8)} kX6f+ Ɇ+pEǰ}:CM۶O}*b{*"J[@KaulCǎsg(1I7|5k KE.M! `:I\/?8ƻUq9c?JjT_,Ƚ'c?{ ѡmr6rCUE-ĸA\ _޺SM-+@*Eye$ۮ8W0/v8n0& -n$՝o\FVD4_M%[A{⍽bZ YgPqoV5PdjiHKɢ~!d!zܾ9΄&Ϙ[#+;1IWKGH+ߡ&L1ss-c^ 4 S;3lVZV feW(7mDˍb.HoFh0׶gf56׬ɏYu<б+Y?oMwN^x26\f6QQxZ( 5)rX2/\9꾣D  !#;ite4tR;&R'~3vpH 6)l(&eŘN]M9&-^=EP`*3I0'c!]J',"Z_?r Cnq* uz!C~0E B#F^ۂItTd§b|)n1Y@{g s0O^1O^q)7e⍹vO?.x;qJo+k6AQ,Uf+P$ȨRpcP􋋤&LR O;$cwD+ 0 -mB W3G-1f!=wb" bsecoU΂?h&wc0D~=d[ ekͲ9FM˝'B6ӡ ks(΀SAn~ 1ӽd,!Lm^[|dBV0_-ȼ^]pD`Lm/{p3o~]aT&FSA37[p_{P.wݾ`:_.K9_ndA6)6j48iP3Y w NgZ0!>Op&gT?IR S~Lh_;OzKMeȿFT,'1t4NY>p8~, L؛t]f?e);ia4 D428@1tyS.$ )BzF ٺ͛H(V֜I>*gA}e%Ĥt`dwץ{mKQ0,s0qj fO3~Ś-1&F5(ӕW>PTL ȍ[eJ L"UeLK+\󴂩 kX㽐 -3>U++Qwiyx?Hpnwj9p7kI0e;,@ ó>^5ZdȟeHZNVՂN W* _U|;EV2:yn> 48o hԘ./}WpI4:Ndis( ) &q*:oųZ]sO'"-gpe/H j%l Iєs@'!&oaM[Qg@y'^Na٭)cvb]85!q^<]OZ>N~}}DH ,|C+pV!8"}46z4#F.mݎ2IUk#1FpIqv_ Ieg!o+o!dNSY8[~Y7# S_̶v_˩+:T$1{%;RGar(ur1 Qn7?%l \2vWPQ _zʏNϋC! ]BVGܯ%([o_ TwF>.ڹ-.j< Sĵ$`nkځqLWE |Û5?mה7<l 8ʁB+wX VB.{5=?i[BոJP(-vti R 'v-۰+Хf4-X\\`)?{j֥4אATYiOyS',N] i*mlruxTIv}܁-FZ " 6ˎ:Y|o O<-եQ :OaumMwj1W/ H~x$PntƘ-8:|oeX^Y3lP׉RCcl\Y BgèPL<3t+]t,vq8 ^NHыǝ nv+P}\YGj2 ee N.DN7Cf:ԣ̵P TxrxX Zh e f2 I*WpSVҴbIdטHA7acҩvM\Ӑà( 4+YS? \JoFiV-CŭԝԨLuMޞ*hsJLu_F8J{ e3'g Бv' u Tz3п6TNe|=pN'f%QG s8l8ȯ`Kvx"1s1T{'que]S'cS0ed`&9-ֈ 50(muŪc0 ;>lEO-?=K6$1Di3)TGeJѢ|#͍ U5 Q[<%=m4.aذ( P52w/wzyE՟Bt"^4bU;ٗ$.-PQ]Vy7NU//XR%nkŪgި]:%lAʿ1dP?}sn M˛O.S6x盼ӶahIuFg#fB'( Ok½hg 50`y <.Qc){F ;:+cemLYqy0JdGRP6ZF]`$@86$۩Eq|"+u"f1| ڷ||_D_cU#%W_P:f_ژ=RitWP%p/+m|lK~:Q<͍ 6${$4<~\1Pɩ) 39W6/5BR̙`bJTWᘿd|#hG`[/XUOyUM/f<5b}2$Of 𩤖q{hOiov֌D;;Ds#^W 7Po1s9.ଽF`{uAPl(&d&zidrWFT*uG]ؐ{:kOm]GGboSY\Y , Vu!m{=E~+яt귯A8d^!MErꚬSs"Q0$b}F~D}+b% zĚXˉKUj|e=bˬcw/rbF.;ՕG3ĕb^^Y/,ZEtf$So]5w,  aL$ׁ<@p)FP$]dY#_ z?@6θ̌R6A^+v^4cͿZNJsZ/z" ~5+8Qļ3 @d8Vl:U,CY6{$5k J2Ɛ} ֥ŘgQAw7/]BV9Ī6T9oҗXg\yQI]Fa34t}w`Zƒn !VO2)Rh6&|Z#ڴû6+_.|yr#injRux[lgR+=65VO<ŽE֙n']k.$B0IhzGZXf5nA hAVY+8S&dHAcz3+%>e'bb1o'B8Y+QS?x~ُŞ&&K̀S`K*N|{Rmܱubt-vΦ{L[[bn6yV3gq%=UWx-U QSvRKUQ G[uOт\y.Rv^׬F7drV1fbk<6aZ e|y4r'@k2+J$;bK[լiBϬR{.s؋|m(2ꆁcc; 'ld*f;|keiO>b&peSGxXJkS?*Ѽǟ½6Gal2mȿqR QInrq\l˒ dvRpj\ɳ JZ_ s"p [roɦEpn |1+mB[%2Cw,!Рwnr}Jh3:6D'J*Tei2=,F<)qaŸ)flQ{u8!]?2k[v| $&A9)ki|`&"he4%.7E#SGTe3Y&1@~s`Zs ҜZ =(٤F_xu2ں!̾έ͑8̓\Rᩫ!J_(tq :sZAB$TMfV?]< _[t9W7P)\2fBejQzQp :TrDՊ|MP>b-KلQx}h嚨=f }i5뮖@ܶA<5]$Z4AJ9/× 5*$/`zL%(4W+v[$`8~ N 3g 4>֒}Vh9>5Oҗ.8 (grPbO fE_T&YH9?D+jO xRGbcHȈ Ձ~!?WJrD~Q]Hnto+GhLtfaX7 ~6Nx|E¤@MOin#l[ DNJ"̎b" c8!eC=Ȣ+/oI%Ȕ"gݚ3A?*~<'2ayL~`810&Њs'AZ 9N!p36 :z\%7_/a"y  ϥj N%]K@~rL̤ŀO :J2l_JXBͳC*JxMVC>RbTV:&~%p[]a ѭJD, dC27rw*G``s0(M~bg<ךv^֗oSSO{4+͍LEounJ|qgYqpÃّU1;A+ f4(9) lQAgA2 kdoU:?ΗX4Whɠ rC e{WW#cOU՚(@~NwѯP@a΅Q%/{;)srv3fKePK8;ʍpσwVVkI}ª!c"q'FM^PUVN*M^Ư!) #@=EMF8"ݮS)e b, Bm eujZTZZBސ}.{ur+V|̬!cy0!+Y}LDkw -+nnSkvr`PE/l R4زj9mPU1fDZ̮jsŒròΚ@e(p.^ Bs(7!QsnܛQ{Y=`rl*, fbؼC[Nw<۲G hKsA&&s!@]d49i!`D/vna3C˙1O:*̝x!w i $AఊtMOȐ' [#g=QFzY[>,nTB՚JJ=TB)kaY$e'~<'%DSMW:CZ>C"ǭsUDZB7xtYƈ& fCQ@@q٦9H =~G;kQ$rkxC6\h8hgq爳 H]"#nN^,5rtKs2К} &*)#2]"d/rIś*i 1Swj{f]9ҫ@QmyZj[RG7!S]a<.f/HZQu-Udt$rJ;3ՙz{_wLcq0F5Rb$P~+so S &73="VUD%yx鮧׹Wfi7Oǎrttbkh"F+ˇ*[k1e:q6UC9h% uDRi;g0> ]֤F?x(&P mu^.+-փ'ЪL~ML'SC@&ч 5AJlCg_7B|~[dLKp5uLVXg`kD}KܙmX)_;q ۖPoWD2S&*]^^Vg̑.}'/?LFo, Aӥ\n"U%֥5덇U]lB}\׶']`]3MZ){ ֭-ŚX^ ixcc, {ZMhjւoo pgӃ>k-a>fԭG;oɌ_1$YS~f͹ :_c9ei'}wJ뮵{a^fT.ֱacFzsW (%U[tID}A3Zt֙0\L/C%AxL]ޯs\ZuJ2sy`T68ܦ{[w)3KXt#4KpϚ1!{(4w|Pxӹ/vUE!Nȥ2jt\mZ56oUŒ'A63>EuoALTGTQp_Aꭍ&AG)Rݟ'zqXgղITQib _vmyQPsk٤۱'sVxoldQ|٪#&hkZ@ʄ e(y(!׼h+πX6Հ]J{=R,h04||%\<̓Bchѵ` ;eOeʭY엫6`GbL6~m50zJ#-~NJ:ϙ[|6H?YNckKI46cq˸\zQ< ;cM Ixm\;/%6-9yN2ٶ>rFxmn6I| =d%_7o$oL,Z^H)z@ej[8Kێ^.A^ ם4%e=s&ª"Ts?|/#D%;&,8Wj)$/}ٟ`Ӣu Vf獽SI,9 ]2H{V;Evcun.\uS G'͓<\Zl̗v>PI2Lؔx;DC0UEu,>(} ',F`xpEkrVbr@(T_|gktz+%Zݥoyc(Cm5ܪeI*>d1o=݄vE:*eCo:s3gBWfUs9ĦiWCfq MFX˒:*n/hBcw[{}ոJ <E o %5A$~k|n_napMm2raO׸zUev:X7Kw\C'`:> "m(gy{alfY~GP8f6)h>;1`&g;k\hg JJװW~3I Rw7d Wn 2[m\p|}Ȗh] C2wc^O5^G9Ƅ*UX9*͘4.x6g/7XHUuy,P':{RC3B e LT8>4qɧ"?,X\ ے&o5Ku&c! O궯ׁė,Ǔy$4]8D־#&;OÕ-ג9,=Ԃ?X 9g,IE nP("o)Lú1 gc;jMV ~WD"Br򕭯k-Y)~Go̤lTRpL؜s1n院_c@ԴvMTl;'ê/WIqt>LOYF;JOIcT!4nz":a(f-0\`3F"̩s7āAQ]k2Yٍ)vNV5dJj󴍕d],c?WZh@LIͷl> ~5esls*@)mF~s9Nw&EvoP)%ԗBАTIƘ=. NoqnVj_嘲P#H~_lVj Ý/zQ.q`f"PKe6PRs!#Y*ap**= -!2pwG'vn(qo8@Ǐ)#xS0~Tr0ຏ`R{FgMJm"`<,^{U6`!(;+D@A,xo5w:Hvbڱ(+FT R.H!hKu! o % ˝pB{զS᥎yWLI]d;^Ro}ll]&u@6HcƦ5ȈˎK-X(]#v0=˔G!z D}VOQ"52y2OdX* Xo6 &n9߇hjh Rin3%yԬnNCK,$5^80jٕ>K{ʔt"ӑ>݆g^a@:wk[jx\t!lh$畭QriN׭ihMނ.$+A֩zx_Б]ܥxbmgH"bqoQ1te#F2g ȣ+X918^k(?~I'M%9#Nl:N;:e/tgE/Y=C8]|YӋDQ{3?}dy>.οGI.tE,lMw#BQmXx4Dmז}M?kK'E8$:s{-wFLxdjFY=g[2 qDsRuc"ۺbµ*xە4R`cT1ǚfy#"lY`|[<(g!ZV2ΑX8iv'4Pɋ(y DjYSvY}t*eIoY&pZ1dP!5t^!m>bT,'x<{_Ihfsd,- ' :LMHYd]>N㳥bSKJ&zQ—죏ZDo@Í-;G:`Cg;#Vufu4rЀ<"gZ~OE9JI%_] E]hY*h`r1 ط}95?rV v&$;8l_]5^#N6M*Nx [Vhً$T){nT_!j.Uɒc> JE3:*#: +hS5>鱛k,$E:;?Ezv=0/@Q\Jkμ'BbSqjb&CA㯳;x4Zbgў6`f{]խ"6ךuʄbGQ5X w'aV( ot&ڗ}v]j@zK[Տe<6Pi+DcXSI>ɺFtc['5f"cv~I;yg'W(xlzC @$9BCJ(tw_{Ѽ:5'2BJo)r̟}%X,Ty5e~qxT4w ($DB7{ZzH2&ϯt{58SVvrv{v<B"AVjP(cae5+cC.&%y^8dDO-&+ɣxAl>txӈb1ktmW% /xٶ +;!c3 ~ 'v5VZE˲w٨.w4v'a'R̔YL[&$&nDžvUBdzZ02iu2Q9׆h‘b%D΋ĶHBe[It/ث)Ki3e(Δ y*9ͭg,yn_/?U%3F<>T<@zVVT#)ojLק 8 +aۈqINյ^Os̯Sj(ԀdF9L͑© ]^|Xóͽ/[2@&[}W|t)|C⭝MqDla~I~Za]zYW_1<:iB4Lsl9Y'*_HO~(˞EQ0Z:IcaTl \cQ!k`YlׄMEO:E ,d&~?LX-&❧IoiUsP,gpXk&bB[b'#4 \b50=P 3!ޞrrgcf)Z]2>uP$(1u@+0Ř㉤0~q%IaԬN3ρl0TgF4>5S ';519%3'c=Eb g7<>gfɿcܘL7R4$k PߐS5_|si dN%{E`Ez% bc;\ڲ@e۱J5KvhƿIn .Es{nBd`ay>Gf'ymX Q."ˢc]%c]QcלdbsǔhY BT~g>J`5\JM%\,cIpK>T:x~uXFC6 2HJ͐q$4Fp8&~gH[s7mqcX<g!R)Lxk D y/(RncQo" mVx iTpm44 9w9Pa&SB|w&[ G^IV Ι(Hnr؝SiݍG dm-3[((I9.έ4mТUXTpE6X p).܅z RCAPMy6q&cfн=G]F)+㗈 jgv N MMEi[_h /f&j,%#.;}B.P-xn%b)eM({GAX@uNj-#C]${Мuo~;7p})S) Ae\N𲟏eHo h"ׯDLQ^5\㧽}}, ȁr@` C{pkZU}b,YSL]:f.h9QcEl%bIh/h,;k{)-|94O/'Egk )O(x~(1xoAYP(tIuzg„+]yQgi{ gdniW캖+i@u?x`!hrxȕu?R;9+^ ϋml:+*|-x}Eg糥<%F0QywbڞyarT>KeqEz1@{AeCRe Azk,JuTbI 6yȬ|5iw"Z3")ZS-/:tF_zUJXZAjd/S%l_새UT.Q4!W;tD\UIBMTHeX6: u_NJe|{pЏm}C՝)AU~vRTS#:k c|ȏ֔ІU᷽q4 3jh9{_\2x;LqGW@I/4B4,$%ْ0WFr-yד@F)Knkk}^J>Bvw nrmcɵ=Wq;<Ύq~=Z? ʂ{fС;*kgqx<=aB,>렼(|vЉއ3Azcf|6;#u6EMbHE},48}TA]jlx TK2R-,6wsHpj*:\iL]nl~MP0" 6hv FVa[~37;C`r׋CP ܡgnz]X:Rtr/٪`i_<-MA*u"{~tl@lOB\ c77%)f=O)5EX4qoPv]а >?*2*{R 9J)!m8+Oxwnbq"Pm ^2+@Z |GKw,"! h){A(?SPV"6{ؘf1Gg|RӠ?Orag;dC_ǜ:"jb>;p驂)a1Lg^HR[o؂{WLR~dyqGy'a?1xY&|-&2i&3_)0-lN1{pwI/'Qc Cy xB~B,$3tB5Mn#Vot">VvGj=GH&h u3 EBy|Mb)> X+ ^ 3ۻ:G]kQEdHcXp ͱQuwe,ܸ Ճ_a@ɯ66Dd(mn{"0=($GO\'t۲+!i$?ZDӟ29/+eCsdE3IE@%SaLnLTЏkqpB ",n&:1d7$4Y<j\y6#Mqsn8 a@/پGfH*aM Wg_)N˖3.?B _f %B0%XEŋt>-=ȩ4بS>׺9>i\Hb xbu@J;udOQöVinˆ888;nS frV9su6])z2>ze]pjh>RQ+Zb*!CVBxbPf~sz]&_:Z׍OJsg3 .UJ?hA9>&ƾ]֢ck;W8+mrCE(*[?oҩ$]8ӸE]!q8Ńʕg2iw'dj!-X6`q[,CKG]m˛/49˕c pH|Gd)Lamp IW5yGN&7[ɌPcvq=SW? {? <0x X@d3N 9 ^ThL;qᗾ1/& -(}G!K`!IOf#>д Or%EˏBW+=zI' cNuֆX;~!DJZj/,S4QR]N;[q^`Y)"[_9ĈՍ,#ygy?44+͛( Ul̈G"v4+iO/|WIxXQ*P `ډ\DZ'g@v7eW=᱘!N;XQA7Cvy[ߥyMBnE<$5اw=poAj%^pFˬ<WdF!Ŵx $JJLof;ۋ?E@FsNęsh{1?oqƒT2z5oP >~.>8@ ͋\lMK;f_ƳcV%Y^[ $=frc*4)$E#bS;J/[2;BxbSWF\PY/\FVz|x0{Kؼ׭A*wxW>lO^ 9 Vy:j?uǕԣu-W>z|^TstaDەcz<$GXc:zJt|6:gTU/[E<лELb XC6__lVQ˧ZjuΧ%Yd.d8RWPvؑ+W?#|`LDe #qp( d!O~乡+̳QEwdٻZ5P# n8:D{;&Puh|BM ;-ß\텑fU+|L7AdZ [C@7NhV}V5C6?u]v^ @ ݲ›6&* ιfD0~lIJ?5*D.<9֣EK4fV 9Yu=A>*ꢡ7qp 8۫!g 6Qgv1nYUhWZ=dXw> y, Ax:dv%mHD n)楏@{LZ+ɸ&4hg(DC&+m5S֖⫒-ٹ5Y՛{ѝ\% ֧h[60X~um%mӰy _w72:lL>:#`('N"Bz#ӓq[3 gk-cYH_iܙE1Uq57L|a }f6cޠOAhuąK$1Ƥk+IwWoFQ}Tu4ޚ#!! #疛S:\c2Kx; _2ฉ Ɓµ~=BKCGRJw_>r,nxOeZ3I!Tw !15OgݴEwQ-)\ ˕J.^'D=h:ϩ*&w y?܌}"Kn7$lxİ}lV1{k%攏-8m>JnqlIXHspV~Cy_Q7I f[=Iށy4c5+ƀe.B3;@տT˾/ Lvc0wnl0\lu^_T)^Vҵ 9˓W+ {PI&FW 5GyT)jm5wۦuve;{L.T4m*6# $[ߠSKP>)BtPEq0PJ'Q~@2?DqXRvҜ'',O +WV7I l+OZlM4-b'>C^Udil~Sjfn=ь:_=FF~D$V&䷴%m~l|jLA@ Nr%9twݳo-@#@Da=1ǣ/j.Wis'~)a遈"ZYh4^;dsGm/hW |o~S-JEpTX'2cj3Sy;MHeE:QVØCLǀ7oGeOJ4C+"o E>1wp%PbLP!|B*ۢ@)<ؤF{8Lc'@ M\x:k39|QsyYEYm/@,?>vRR_  < 1/، }~}]-i'[1˝ ߲I'ɘP.cr&iPN9D@3 aMF-+kI:)qH`Nolc&t*r~kڴlUb&c Uh-OŮ&OnoKt:1 9M}>C9!`.<:'R%psJ% +D> .шK*@T 8U33D\!'xvӷm]򇽊3ɏ0v: r TPnCD򗦪J*~#ӛWf5LKC|)vJijsiP W:ߞ;LR{ʹ~G 7clVmG;b0?1qu+-il7FPwI>o7HxES S9n]W'$tAb}^ dCFj̇r}@+[،1a IR 0$*c6-|Wg؏PvI+$ .BI&fAd6r/yIU(ٵ02M6/GrӼ& dU癁 /duO^x2UkRn:0XTt_%Hv\a=}~l+3$9恮~-7t-BCib/.Q^Xm|j:a;Țkm0Y\?\kCڧa-穾/uvZpH9DGGm|Sd  L6z+׫9 C`i1EÆu%$!t7$=+w2lo$Ϛd'zn+C\Վ^N͹Rכgl#|Vmgd 2x-QG aTJ+JrQzTtU%R80, vh\cd}H:2긢RNb:J%Y5 9*+|E_r:, B3?ytGw CLߢJ /G7۩?o0n孹,-cz&5!0B|"~V? (ջ23g b+m:6,A"Ρ{iL 6uN?&3@Cuen,f^s*AR}{;Ϲ_z#)9?(Cl>%L7QE?<(V34EC\V-fv1%-In]+_WQQCⳝyt8[]'eief xkCvZ$VpWYg^.kF~~X]cGHϯj[]}/2;TfX&#tY{`~pz;KQC6֕H+>0ay;cR( j4cQyfg,0WAQSM302}\~;r*bQGAk$әY nkM[[蒨c$&&`J9)ʄ!!0b- r-ARbuq6r@  Kg7S*X3BT[]XƖ}JŴ)/δk&#L;92/*,ߵhi:hZ$It:l"mT34AP -_W57>&+6UՓ=B6$1Te`5ol/ N]OT~m8lFҦyζXf;\q _-UlzҲ= {vqCc͛ |gwvEBq5̉qn\lh 96g(h:%k8( n%e1YϚ|'Qe-xн/1ϋ+^` ,&;>XZh|kvE1Fk1jts u m7*Q(} 5JMKu.Mvj=e]^/~d}e;;A`iyc$2uQh'oD.Eq0쏜(}dȓԞMO! 07Oښ'qQ'P#62$Dž:n|ui%"q?yrpeT;tO/PLǙ.cC =ڧqneZ15bPON)4V/vl_Q ?&AN; !PRIwZb;tL?OGqUkZ9lbBvGQ]Rj*BuNA@Qa7ViqFO)Ew=u-˲Nd'0כ@T_}X )ӿ 5iI3vH6e}[4 jM9݌-Ss39%J,ɠ^$_eXM-6F:gvTy92ҵ,Ͱ‹Һo/y~>t5@[)H)z7-U͜6Ly;Ft)]y6~=s })7H;l*Yaې0?O:'  Q{s[c%Yc~wldB=9qNᮦUa|xyx@w]̬w-å7@F#"HNuc&ԱDu-XSdwGΠtzZtjje`$4ȬY;zV|\?s=>5K¯g?d0o믇frf/PvUUڂ'dv;za <&71+W!x 7F{5 eȠ;'("E+vUX!˓ѻ-r8}-jqx W'Y|u3Iݕ 35 R Ku]i&[A+M-'A#Vo*%>3`_%gB[=Nb[pe ڥi޺Dx䗞w ;xYDXj_Y9 9u"CB= ӗpZ{,2#I Dm;/Ԏ "#wM%Vk-cQzVg̛f0I["b-Rڸēdz/_%V%hF{RDX_@МO,c~Q_HIQ_u8!dPXRfsV%-=" R :1 ْ?ʥp|2@=Țe+ae%XĩƆQLbhBPfAiۈtzIwAYvғÉ X8<{c%>ϫ 9Gr(Z Jiqzzo4bb K9l%IniYx| u&cf< v?hu3ݪȼ ",ӅOIq姴3Y'(<6xNlXnV*9wnK~O= ._D{}eR^y-* ?ylHaN3_Nc7\٤g68jwVf֕u &+ GC uEFgp̞J' *39 ~$KL3JiH2u bH6߄u^ ]O~'AqD6ZY1Rpt2~&w_^켖(Q H,^S}H_xy-uW~)dCCguhrY#at1<;c /XfQ9I /$(6)cVۗEh#PK0 =Hx1 B7~lRMkx,Z րYi;W4'+,2Ӵ8Y<7 V6^%&Y(NNjz|ct~&vрUc"ˉOϒXt,FKn~Lzn][M(*HaӔ?BY,5-!c6 +M(_뎷Gk6]C4 E1`'%Osts0Jp;LF c\ bc댬\ND$+*4ggYp7nͭ/i~Oq"JcB 2nd qHӧe[2cogSEl D-Vr:,ѮFǢy %}܋3-#\GB-c6$*iE mQ vldi,K&y?|s%$LiŁ-.iDzM3C y(o٤[~ p=LD֊%dѝrd⊢M6bV`bjx jޫ3b]Acıa(RvΆӹ/7-=:JJ<|qVUcl(d픥͇cJ. n5;4Mj KDdsDV􁋷- "x EBUBrx\n"յ+wFw+Ѱm,,90c!U 9BBSICW6 Lu]k_3*>aqXp\4f _4J:qL-xgϻX *\_t2i0y"&Sv-*izuD B`DGT u#߶qk-|/.XKD B4q<9T]`0 nV7>D%]$hv\S"WKBKfm Ct}92=n9+Gדqu~,1F8cbk~t5֜DJ&֌_OBy.ʂՁ;–:ZФhƹIgz |5*pu˂X tm+f2)'ڼ"g>MNT7{rnG_4<џ\hckҝ MY^OKEJU#$(ɖowv <4/0R3=-sO.eIH!L'm YQգ)]L_]QRo{W]kmldhyWч7W \e`8ecR~²Ǽ$] \H /azDeU_ͨ @atXhx0l?FWA55<O $0Ї*>9r'2e%h sڅ@ /Q%y?,eu%7J%[< ZfD]̰} j8veQ+7xhi)HY.67I6M 1 JzKL$shLpՀyx<>7"Mӫ@kbIk ZpQOH$V. @ X ̸=2^Ņzymlizm[DzSW VAiNlDDvy=bwկ*%{wCfE@9`6&p42&Bq6BG1yzȎSFDۀ@Q֎۵8 ܍=LEm_y|PVRJm nA\7 EYK4?[\Dl&JU"7 ] (z`H,}f)ր?hv %z j}U %2PS 1_7>50Ȱb #ՌZ_,x<֕EcT]{GY#5lTd<{!|oLX` AݪHS|}]&^Ao.TExxsv]Gr/σSnCy_~cXG*9bX|^& /$7\`7O}9+}U5R.jù+*NLR\[.O!&sD)q RmIrG 5%A%.L/ nص!R/V}<1FlP[F9܀Q0[u2:NRse[ /dcG; ^fˬ|k,ԓzUHvz*d7a'~!kaDl#Y?kϴo.P D{lI~Z OWG2K>9ƳoA}CQVmnKk*͟]mvO(`ƭBCANc)."5d58_5qnyK5Qg1F(Ɏ;N >GEq{fgs'E..Iq"o#'"$=NR\2{vDWSc aUY6Q"7EN4=D_ȿFk<+X?N_VE3}UI[S8Jr:i%I88O}v*tPP&m{kpLDdzm2W:P[1xXRcw2գpO?誋 zѿNE_Ɩ KIJ>(&S8n7hPC9]l.jIBEu)P0pvVyƾz/ܗa0 ɪg7(*eJpE}[vQlw|AvaoDRL* ~[{Є<Qm~$x 1Psu=#^Q NP *9#L<4*!^U,?V!xGCR{ SNscum%IP|+7S?}!B7F=m@REuӛC4AذÒYnC0`DRR%A/CK;_X[vH!z4gsŵU&4ܤ>|1!6n™ ]EV 65' ͞TfM Oj/QryJꕜRh+exhޏV~b-(3E87Gpϼ4v:' #{iiaÌ:UyIY`JklsPk7Ϯ#/RRka;3VDj͍6 ø.n)M Z)G s<`"d0\"e1GLxmv.nE#?j{8w5w0 i[|g1G=diѯcʼl94iTA [I`Π/+W~;F dkr 5g6~ɑ (!*EXLJ֩)5i㫱uG{ +#t>{пVqEۉb%8hwVekE{9r*Lyl #/ }ArM;\2 ud[gJ;c: =5bٟఋX+N̂yN ^pIԤ`$!A,R,KJ6_vTi4R/(jJO+8ԅz!ܒ]}QRVȴjᦠ]jY}3kllVtCdM4dFܬ?&zjd@/-9B;`t,DA[T== |:ϯ,ssk [ח/FD4&#uEɩєFkI?b_r"h0/2fk|,?<ew˪\#Cys? bFzA^[E};V WKdn,SS$ ~y-(bjw'|I ELAR)d01ZX9Ӷ(O] .!{6s!/e6O ]X\o\A4F?YtםAH}|5u+I4K;Z!QJ<+2!; at{>~^[^U7S&l}Ce[~+W`ngm>^P; nG-)}J  cvoT?y_45gÏ37у㐓LSMUC /<闪8QU}l N»ȃk2tUWݖlE̯Qgyno+w>Mn= hBn`EfS~׏G uF32J$F [ ,P3IR{xV%q+go܈t1ibo_W6"e 2TvGMeʳSn Ҡ$CJf4GjQ7+~B9tfjW{,I  hi^+Ʋ#11ȻևPzENsjgzR t۰@]t3-擦ȉZQQV%oN=+l> "|ōs3k(^+ytR)rާ.Bpv"XJwȟbۮs'4M%(Y<4 B}?…R}]yT3B@}NsUͰcZ;]11zJ<@0uΕmxJ!v x(臏$o) @izUh|Jk_jb}-P.b؜hw юhXĞ68iɇ8ۥ୲9--*<zqY\IJT@`5j{x/T  bJ-5$N>k;a{u4`s7bI#X9 N+(J/AuDC)LinB]F2NeX@BWAQt^/x_Q7<;T4KMG׸9_& $BqQ.n͵@*_t^Mj@u.Ywe1soo|0-#) W}r.!U4*2$SOu38]iaߕЙ|5'Y$.u//ty48l؟WL&ss>*gP"C=dM⮼q xVf7j!h}ENUr_CH[ V0rgbip(ji&v?nݳ )k l 7L3f:J\<+zժæ ̊ BⰫu) x3 h"Snmׯ$"5ˊ Mjp(ӐV켢E8GZ p9+ OQJ׳nkJ:Ħo{,Y4hǐb1H|e9ZwxQ=>}LVf7~_ʭ(S͟6YhE㓞7Lq%Qp). GY$}7K.wSZ 8{B"˞sap&'Dy MkWϟu!yhXDeעң:V&f6štX=C03׃*^<+U Qeh ӝc( %Ja^GjI)] rn&Õue`_h 13p*wJV Iu 1xv1r9IO ߠ[Bo)jET&is}]`(˪\RiPTCo'd"\5>%\J^có^c$_SV7R{8j %'9`_!@tx~԰s\m^Tc"(1 M"}iw !;ސm!5~6v30 IӻKc/1+k|Z=O΅ذH`Ej#`?]aSD_ )=h"lL 3K& Trz)6yh_F>@JMLi(?Ͼ*k^pJ@s8+q/u u$moYdԯ+rѱFU,("LKG333fؿB[F:{ LOBkԃ(fotJ\aL~Xc* Uˆcx-P74oF*x*xRB%⴯N6Qݢ/}md^{>_K74^Z9 ܤfMꈻ%fA͕:vzMd^ JqV J(:e4iyG^CČg>g50ݸ XM Qt&̕6j^ a)wKZr bCDZGEdR??s.ԕt׍֦gUU6Z]V|k/G%nݡ[gV[m]aGt_nYCP[_"Ɯɿu+pp*(^"A2agM˹)E&'jh[Z$r5̆j=x}Qkͬf*7&pf)ohNs«Ǔ K 5ignF`^g<pl')g'|JEw%]CƖ/k S0x @UjVJ.k9@hBrLj|,:q~ &8{PR~50iq%E}Nu/H/s`)hX ﵾBdUʤnhoE*F PIlVsÜ&3gAOиr.N*CRQbseB$l/F[i ltVY`¡v4""\{91*n1tfFxDJ l"De;hLd>7f szg~8Gy CӻKq6 d}vp0Ek+< 9*āRNYz"@Wo0:$1PMPZ-*ޱ im/i4Z۫lDpڒd"*tedi" 'O*$&(2Mu QP^ǜ 2_;?0Qu8BOU K]ɩtX'5魠%Qxm$5pTrT]AxGkƋ^$BEמ~UOv/T![shF́s [o)=L뮭z z~ hB~ 7z´+u; νڐ,?ވ^2xھ_E`|RDi_AO(î@ك]fB5Жx sA\Q6\ӮJj}sRm$!>f0oSe꒧n {&b i@Gxmբ{Q9K™%r4&Y.iEk٢pÛ P0qfR5m;Eq:%̈ ޣ!\"2~F< ] ~Ǽ#L Anݝ!8l"Y wbNW*3.1]R- i`4Ό0*)bKSEf18:/G4yJס=ZsٻïդH&[H8B|jg<GmLLq*X -!lʲ/J]> &3)jk.G|Q/@\ ah-\e0mh^Vf8& 7T!Sy"-Twp>~GZ*6:/v .;}(* P߹1v*rPN5 ZIed>iBo;Z>0 "ׅ aZēp igō#=.119vCeTH:xo{ x`*_&#8s{Bn@a9r"8}n&/h: P6P 0{oY&e'ܽVZ=ƜsFd_r'QiK~[UPA4O5P&Brݭz҃ur xt+3M.\oΞNuGc/,qMjƍA}DW< 2|EX _T'(I0+]HNõ- Sm<@Qk/S^ѧUxLL97$'kʑKzΥL@hC *@֏Wbv݌=\p|S9XAfzh/dr1Ņ$i>`1YΡ+fOF,ʹ LwղjtY(r s w8WGƻ??PfBP$1dIi1GX˾mnj_xO/}p[~߾CpFg;%XiFR͹7`kcx/.LH4\sL/lneyC!;oz4;6 ʯe 4)x-n0"mmg{|EőatE~>%rx/[5WVݚepGuOZYRetfӦ<2 H4@Y ҉?hvۢybF 飡F)nHd1Iҋ)mDR<;z.{]2U:}|l#VZ-)譏+yU=$2t[Y׼e%zLnIS^dƨ-=6K"pAK { 0w1 X?)vfЀnyOAvwOj7ʦ fHSI mdYRXɻ7 fsɨ(r +vקN5rW|0unנ='D0 ӕo=5Va*˝.с@KܪC  cPb=onV0kA׵l-MŧO§0a?QEeIa Qhݰ_O>E!?A$S7Ƃ>$hfHZBV]q[ 5s鏴к֯PpG6tI]o#Vyڜx; ޻p0QLZR⎵b 4U{_ѝa>̂(v ib 9u aJ.{ʸdM߈P8kSELyYϐ rqz%{jhQ@5ΈuK;{xx lL$7J/&d};8ֽu(RMhCs qvp"LչCCSR ž1CxAW(8 bdU'@B2zںЋ rėsslhF fj%4֊:SAjL6 MӞL3K9>3pl>v }؊2-p}| p>y]4y@*7GۡQINAo>f_\x9{ڬ;.+b}X~0w%^8 &h~"2HDzQM;}q2pGq GN&;NNbL ֦yb;%8~zU`/^Rza}޳p6^e+3Pn$(W A1r[HB _)6 OC43ljuȮ%:Rx+"^u3fzl+Q`讖ͤ<ҩmr?PGPcv߼|5 ,}U*wV׽2xUz :>s5dS7\>udLBlZ*#'U>⠗q&muݺǀXUwڋ3H0FKF9ibId,cO.DkOr%2JAL,qfioUGB5i{1dzڑqxD b8` >ۜƴ?QG~7GtD̀ RFq;tWr mc'Fo=T9Iۇo* ÛIWVQ|è"9ihi o>df0XE~nИI/9D2SbJy*4`W\Nkq`Wzv^.溄w~偷`b0+:0H]S.L= yp |Wp%Pz~_ДQj:~vVT. xS"ހ:COȯ 7u;Mm3@K35s_䠧@W"e gbzvy+cnȚ3Х{d`S4MVX& ɻZ̩ xzB5>GocB5SAgȿϽQ$t@'<"R53$;-4S)m,\Kフ o< Ҷ*dLƒ-Ta@H2>XSِ15Gr5o ? nNdସ׹蘒4$j]jIɟ~Lck%ncνOEr $a|q -|ڄ'ak`%~oxYСk(Dx=L8&-u,^VD-}K٪Hv,k8}]M* hez?P[o Рs*bD9vX̭\cm uhah^^'bfV߬J giWy,c u.BpZNbX noP\ a+p~\IhN1Hk@9:w$2pN^x@A+L`إMnwWO[yW2% ڗ_ɛ+!%ޜ>D M /!i-dC߳rBH)QZWih==oTHbܽ|L@N-mi ]*E;\0 WGv#U I^DdO 7'0xmˋlφq@DJ#xLbQH]5jEwR*҆O>D])AŖύ,Hvm\7Z('oπ ]Ǚ>Uv&OA+wE;Rdxc;v[}ENPn3]C2%)+dss)Hs|Xy'56a '}f6rfXK'Cǭ])꯻śS!9-:̡ n3ULf 68HÌ JO-%lZo^o:Qy-ƏU|%v N:q#hC>ɫ,<tbbM.֭>[^@k !.(p>6CtGJ@.D%$C=sW;Y#lC%zǡ\pm,gCs\P |#(߳Qۣ  )${wB/䕆Q2S:9 KtCBu"wnnwc;U {B!| :1niIT7>\PƒfF7TBxxٹ*=((<xp)u%2x"kKD.%F9B*'B_w %*]=@nm\Q3kkgRb JV@9߀]!{ yzD&~ ɪesHYZ5p0 Q?᎒ٗ->eZR"{*!LnV!_t7Ѻ47m{y-}%:Bc~?_JaWUۚC+KBk Tb{:{m%BR`{پ8&UGRLX xZch9Il/ Nʦe25`xZee8f+kH7\իx_koN]9AK^y3I,)qN^cE*lY7hǠTtQ$P)XK{{8a\TY^Ō۔e}(x"3(aFK ["&I"ɷE6s/Ku(H,ؔ~GwsT]01HЍo2aВn! p1$ο96}^|<܇6<#qtFUbjbQv]o+>O*n\y6ftXguZ7;SE0:O o, ~嬕e5]'tvd%7~EFSR\QoBA:v)0fL4)lf9, =쯑,]=p t*|:rKbψ'lf_WQn`%ąOR̒JNъcC |q?c`nQ<V6Ԭ ѱ-߄%՗"eZL•]偨o~y!H@nwpX2P!l1O3Zj8{o PVq {WS߅+zoJƺj+ԭq9f4xF0`NbL{c;"?8OkHWgh؋J\f;!i+`הּp.hGVx7TRiɇ(G5&d*X,H.WʨIٹg'KA,3.A$(Xus6mO ANor)5,J9a춳,,uQqD؄vZ6g#M54Zt$(r<#1܀׶;fuc T 0vɒ.yFRHbܝmu8wcqL^ I78"[Sfx_ pMtAxL$Ds֛Y :GlUvvgieS !hhk齊 ,hm͖gVUoSiAv{\XazsBA;"63 {n 6wuxn>*dRdG"N'O7&PnSQ:ݝ W! Yu .䬧3å/ݸC>Sj3~8 j;?edXƕ|܉6joN[wrvL v"!a|{I!bnLw+$( N_BJ7J~ڕ$ XdF 3!/pZaED$8t67ta=܎eZ\ZhAM^;}j[הTdGs3Lؑ2uT5Gu,M^VAWUyTyf /0g17# ]xR;r|AUO J)A‡[k،2Tޟ@ŏ;Xyl-ƨ2Ny ?|n Q1{W _ui@F<dtv !9O%`3=T,n%z;N5 >0cpZ~JpU<H{}LȧGiP uJ}\ iRr)9&ǩILhJ?_p7B\$ _T7E_ 67A?e˖6NAP Iᾒ/cnFWJY9!@}P$Htx4mfm{1rrhC|*D4GϠ59ԩ "S `Mu=4^~8ҨQFL< Vg|}8t!·MubX cF^؂owD#n$yh&b>_ K f[;R-=kgPR; ![@{9Fb%gIu[.OuAmsOWoT}3TAc?gG~6GprpbUzCOwLt5YH#ixDzKv+Vt$D !4_R3 . $C k k]Spjq0D"gc}ǂP4z/&"Ǐ'`Q["&9z[bj !f\ϝOu\<-[ S7g>K+Lu0pmdƮlLK&ܕ2v'#S9g tfޢfkwaRLHÜ14`B%?Ih_U+|+0ޝ_}wDMcޢWg.CaLWBUD\dQfFu^iDr ę:і(=S(yӪm;&G*_{$u~雞_r"!`2RJϒNۍ }X6)@-xv˛n OWʧ5:W-7C+pOrJOޘ.ryD.Ay&?5ahlvTlOGYRuH!]͘AB[7vL(7#ܙ)uir C 'ݹnO8d%8™ϫ(*il*Ek~AK-7wǮ>5|A6P iy}NH Lfv295kGȅj>лsmS yDӣgESdqCIiMZ ib{l6%c>b -c/5& @`_>gOu-Fu*Gh=OMȏ[wbYF И5YHS6L 0&tByň̛ѾJh#>)2C^^@l8rYZH&<Ŧ_|#t K'Zɝ֢膭mܻ~yy" 7瘿)sn !KPjN1$YZGdRT$ N-wUMpH'"QQͯ_ ^7YfS@e6<(mQ]5vRHR\;(sӢ1ڕJ'YVq0٢Rb{sckPղ`:).'O%5WY GxOXtO޷U҈xnEdȒ(qWX_`[.v2u2̠e7u`Yt4lI2 yG%q.Esh1NC/jNo'1@ `6V3lwLP$FG@* Qiܣsſ:&Tko3eD٤~DQvEܾ^CT*P.i‡}KРwxPU1B k1K~gR>f"eTM%F#cX?dݥ#%_URX4Fa$ Nzoo`pϭ7IIujf0 g8|ԑ}Mu &x1up\ҞO X3VhLqoxq$YAiaYX:'T-&y@ڿK|h}KUGv>ɡ_GޘDox8 0 |xdTH!9zv vzVTMϬ%Yt DP-t ~9Lp̍m!Y/J}_}t;DIOD4$mYϫV'nR%vurr5E[N~د L]5*;z{ecHQNr07>LMy)%}nA˅bUDeB/ t<&&Dg+y;T")Ϳ6Sva N$b5b]X䛡9~!h @/]gm*r~/zSK7{ѯ҉ 4l0U|1c~lØ(E$fkB8I]N\ܭ<>̱".d\6"9K3٬L1!D'v͔/ bgG3`İ#H1;c_G:`?l31\ GCNL>;A̚и%.eׇ)lBcى%G q?CkA'z#Q_ީ7yJ[4.U2L)Dhoq<||%GWx)f+A$%R{V<:yqp[JmafJDab~mO[=%5a tyiET$ VڍX>2%g0{*~EcdWe!jE-~}C\u20K0sK\8Po{eH6Fk[ƛי +eWv.M%xO3Q!""yr %3CGpGXj[kBH<jLx\#Z%h/m/?ʦxMag͊nb5# X 1lbxO4IXf&GDddb u21z }n >kh  ^n/W;I;քgd:wƔ+ckrJE"#)S?<3 6Hi;-)-{S\|:|+^H]9nY{KH_}tyk>#loyrFMb6 Z7 Նt/N-em8x_-)'..΍9a퇐fWnt:SWVnS4MjCҤ Ac.Ч8 @{_D"m[ gȸu'< ~P8I>hS2~ H|}taܯI)U 6_[dc4A 4xf~-aY،E|M`4V׳3qUeG%Y6 8wwghcofj]|Ia1~#_q>6ShpS?WA1a2w]fNh:@ꜵH&3J{oHec%NۋT@RK='VN_Z\T{w;TV Qsx(/3c|a,!t5kA!(%L(hoi92 vԫ}]G'k-pf?wAƔsӢ9\Mb.2MZ A DEt)m po`ʡ+7@|KDLuvNحMpDL_LK R m K%n-犇0,m Q$Ғ-H0(OS)%q ="Uaw2x$Ωd[7imSWÀ7+ D؅N4zJhݎnW3|R;ȧj˅ܡ%=n$5!1=}hãRm81*)o*<tO9 ?6ċ* ^^|6QS wYa7N?ĮqK`r<M{j1 2\ǨHW,h:*|FꆳSnG9 p&\ۈ˜TodE0X"XΜzu Y5潰aNq>*qh旲$ي/}e`'RM׼.@Hm(8y6ժZoQA)vTX=L\ǽ764X3NԕMIްsoH;}Tm Bl{wuזJiyUmYck@2UylU f#Oi* hia~fʠW,)0:i!{jm9$v4zc3ZҵrP< r[pF,`u )X7֋]-+鈏<89vZH;!{':nfgTT"`?s-7C=m}k)=7u@!Fs^k0QqV]YT@&ݠgAGt_f*EwFRFs ~?aMrhg1zZB.U;:+eK5TUT+*#v7ՠlp{o+5b]dqf`Iti몿fb݅mU|hNkjwp CYglKʲ?ܤ0pdfVU$mX|N vH|ET씊=jN>bݤ̥syy00yBa^_B W,\a0dJ5ngóFv) +V {q\o"0s;`t9 {LmM$ȃ+-r" `eFNbAvm0gIǡE4+nR3 \BwNZ*ta箃Hc6Sëzɀ6wKrl6/ 7nS]f'9M`y8]k0l&"wL}n`MG0,Y< 's[r0.%B;k<;5y>z߭"aksKBη'0ĆFhsY]^0j+Qp_3`ឡuBSRzUP~@&U KYf]y6HZicC_)‘ y GZ ϊς5=kbXF(<E|?&pC霯ꦴ{eN:\nѴ|Tۣ?3HI9sUzx~H[2-k5ƻn13C/ve3.g Ћ IɈ/;ƁLӯeMyUPG^&FrotVk_#Jm lyj(kUmʜ'JL!fPV*p|l8ǁS]/9X`FG;\3"z~ii+ȱ0K `1ZhB*ɆPtJګ aɣc>0]#:c54&V:`8uw$Rᅈ1Bh^~^^x4s^(F4js~DIe2ֻ}=$r_[tPB^p#loxѤ~PXָ?!\_ߝJ{a 9Ud-3!>_R7# H)~Mw $[Hw(g-RG;I$#U v_>Hb |~=撧5N37.ڣB5oV1Պ뫦 THE@jLDAqטS$2FTёSt: 3˒>2J2W*d^Pm(p~Q`!mĊyR`J22u3/-T8˩?4:{tZ/^q˭!Ҧ Ο\az\|t= '`Ѱ~;s.g׉M:Iq!{1]_ {;l1^蹙UBnc췆!?Qxw7pgՇkq%z=a宂p4'p[|ns}.v-IޏNL^zdI8#.Qt0kTXk4~a=WjK~ŭt_a]fO"'D縻!N篼`g5i6:jT@vjŭ2mIMtKKsQt 3[C*`-CIqKfB$U{.Z5,|YX~9&k|jR=a&-2Ȫ;WAKȖ:BĒT65=ȤOuGVj ]9ݫ-`CqaxzN<DY/_W$_TNYc-Cd!`qɠDۈ| S9d0u[pv^+Qy&*\*|G>ضe1(a~yy: eY]9/4fz?*7InVmF ΖޭF[ Hʠw2.fr6LQ+h)K䘭 •5U06sQ85- RioO=]-_as#/,jy 9uէ^NlTQ6WڣΤrv9ov8\ҬF`^yO`R34oW&z @΍g|+ 撙&x (aL% e" bW*eRXNra~m2# ץȕd71\5r1poUl,4?Q 9=@K\MLOcϟ9fbFDm kfO ͕/l'AY-emk;L $6._ZiS%FߩNl-YrRP.m8,qd; LQ׿=_JqcV:>;ݢ,QTzy\x{R׃q6'?٩$kfS=A#36+D*I\ ch%ȑUơ*q.ިtz6˂N1Y b߶Y;15\*Wqvج7RƩ1tTL=.&m`vF^@0ln&q%K *'SE0L؟0=4}OIm4%zS+dθj6E9hs歺Հ}4$'%]x}h"*?{M2e"6I:\RX ^?31-g`'%q3;BT;Fuhߥ4ëzT\qc5@,s,n%wU$ ս}^ (zKe/]<* @Aۀ*Q1q!%K2Ikev SFb dq7U"dCN9s)_~%GA`93ng2OWTbgb"MH ;{A8hu;nF@-?D +D+ U;9 gcE|w/GrB>iawe1"$$yi+ 5PzfP2 )x:{vKqy--vU-Uex_Y_һՅ*_C4AOcyQOC箬ەJ*FR|:t&f1 -'X6kWkz=6W 7GT-SXX\IeQ-slxC^XظsVńUhCuDOÜڤ_QΊf%T!/LțzHO8-LZoB9mbޯX# 33׵fv'k, <>S#8e\>EC5'ԀU$a4Tq+`̙@5,cAs%v@%,lczhHWԸ)Gxc OIE3ۢ.S+gW߰ @@HeMS"XsolaBSV|lM2PYx+l p 8Xư#x2MF+mBIeWrK8:4 dq$밥)埙D_إNAPb>-!:ܚIxytNG<&#^Y5/,~oܲ:tׁ?oFXeS\I]8oiӧvVrZ-4݇SIv)BdZ&sy^!_吣fۈ8tBJ-VFJD `V\#l?@{P4g@;bu*s9~to=׾O'=^U2T',WwPu3d AVS݅1A֕T-]؊$qxoxDݏuA?T\tyȿV緬Δ9& ?Q `T&^s7wjt}KϗƌNBz $~ 3AL?nR޵QeWɫ֟Ʀ^C4 3J Bvq72Ϫ;Pw {[m(_zxw"~70&luJ+r7KM JRRt3Fb (''dE!Ia"j)J6"PDGkRIQ!|K;>9lOm#~Ҙg&LwV9-PVK Gti.]šo%"w?-3OlvRxkjC:*rѲ/Ƒ |}iy1< Sb8I51*;Xr(lS?/8֞}섁})iw+DSeEh)c~XSjjyUP_⎹t HK[,[)PqHKe$~yqO)Ջ&h}zmUqJ2 =|K[a u\+)!!1 OxQlsCD A7]_+JBAPȁJBv\LERmfEA:EmuO0$^^=oJ?}^X@:pp-F.Yi**wg߼y2,g⚹ȿ67 &+xkU Z1ׯ)l0]^65߷@ BF^Tu{0$D-/. mٷ,~%*G[Zo;I2e芏AkG?}~5Q|`O_DG=PxޞN%>9EVD9d0motSEŝ/bLtBmqs+riְ?Y&;;b`䬲SltJvq|B1}s:\Ǡ,Oծ(z_3 vcM8oG E[~^)&NZ_Kb\p™/3m_ۓ|*svˍ'/E:6mA>%j(KOG?QauA/ b"rf4R˔A~ ǜ1(T˟mTF{ƒ1׶@,{'w^CʭH(?HvK9k=Ӓ=lQYuKxjU!]Q~[D28k5ẄdHsj6b> <'<$G:&tBj.Vvr.~#YNv^SVJj xM%d!ݵ4IG}G1`Lg KIQsN>xŻ! }UVCH P~TSɨq㋟z;f\D`SQY=uizmm UVid L\b Q, bS hX 3.s߯p_?y bkHfy wBN6k@  ÅN_#I:7H@5I`sݳ]}]^zSŒЗUnL%.9Ԩ9+{t(y^OӔ6d*3k0@\ADesn&R8gӳᚋr27+nR75tfJ־fՉY%Z5`"34+9 \(56B d6,`͙ien7K֠9WC\tؙkY_T"ZA-=!c~;Z ȝizAu l鄅 6o"FGC'Q\9 |$i.+M͗DUu9(Pc% [ ޾pP7z̎~$G<1u|~AXRtu saO9Y܌M:q~KvA5$uPIѠdaky y(<t Ȳas.pR,o4oڄ dnY\s&^zAvOմ^ .(?z.>o +Eb8 s iə4w>k}n8R"\ܾ"=8)UX/>@LZ?儢sx6PV/3bʛ:||z/D_CMjiea;:}"uTugΘdHF>Xb1Sa+XrR.7ŭIGm2 F+%1BjO].!8[,?je5Nc YQ" bFƞ#૷V#3 ]1[Y[ Lq9u O79p[ ܆M>S-<J=ěOmF>9dqu3N9J.j7%^p|?YAoWw&j _H?anbm4o_?e pJ!kOJ &Q "޳܋s9c>ye@}i_<ՎgĊn0״0yH{R\fcS6Y[51DdWlU;OD+пFMABAå)ۣ1e4;iPB\䂳J'ꢁG6QxSHAʆnEş@4\JM)=2O1~D& ^9 +MAȇۨ2gVeHJaDq+g hLUk71&G\֜ z0J{ËQ&W5G͙Ӿ"˗eV6m|8<􆏳[Tʆݣj@c~Do^אE)ռӂ `СV.d,(PM,W?]=T|eZ/m0I]VU;Mwb]p}sWo!ķDKqv{_ Zͷ& ژs8q9MGuJRqM'iKERUl* ibLQ+_NS'qz0د9r&nk,R![u#塜*.D: *{L^{.ۉe6Q?熿|)(RE<\$/(yGONjwԏn ^?jU3j1j޾ 6yNBD A$,kAEO,ObU}|`CO~7z#w2Nfqf!R? [^^=yGHzxa_l9Ey҇{.wceF񩿇+pZetWic'0<7Dp)r M0uz_X2SHZ A;toNRD<$]m3R䞄cr]6hvQè{fCZ}"^˺Jd!$<\6v鴂yϊ_sሀqϛ5<wMy#lH+HuYo" r cJӪa_}3rMJs|c52:Y딨q;%\=M{^^6&EXE}K?cΝpYX05AcVL\HC嶻IOMl8apFt66)wl 0> KSnCOUG*l|ZiD kc{ڥNk̈́o?4M$"1]߭:g//&;'g]Lv̍b|ϜB@_Ld',[Kڥ*&bg~w|-.g'zqHeeaue6e!;S\yA oM|>s܄( /zZK*|5aO\;%OG1߂/*ōkHXRt%fV.Z y:Xʴpd`iNm۠[:c}J n]Hc aB JujLh\_8U oxo7 hyZuUti!r|/ݹp2AR I \ܥW$4u?[:|Mg͍ 4V%A^͙9:b}/Zɧ^[ w;-EOVZr.ʣ໷cHk|f°W-"~5gd~&GqHt>En7@6buԎu`S-y'Yoz?X?ц\ שYĎI^Gd$7-K>hfE@l-Sl\|/6(`n*[Q݆Eprw6VAX.eJERcW5@I O8n>(nTs%|!.k0_G_uӈzaj8u8֛V́Rr7(>L`~n4>f!MHdpmMi iĒf`neBْW$޲JB£&@j7o}N&s~}etl$X|!&qqI_W>6׳[ٳ$4I Xl8 _N9ecfvL׮:ke .L} kj h7 QÊK|>1|%=@x)kMK)͉`^5 CG#t v~ J-alW!P C_>jy9ӬEcG K*mH_5.EEFXVcBPUˈ8 U|+~/f`E(%1uҞ̹&AG|j3p`](g^g[\ EDhإ #6fʣ9w:}U 7e(=jx*_:j٣^fM1I>#.αZdPnCw@@𔶇†?ڤvlէ !mXh-i #qI[F=kh4)75bydWOE)a[Og}⎂(ʃ`0`*? cuy-c_LwgV&*/_ > 5e4JtH忽šRxcEÐGR`:z. w3'Rėl?S bQ0$d* ldE|>QbpWQbmmyI>C:B'sML-D-)_M;.Xf!TzH=M4@ܱ~ʯȃ\B&ʄ3)0R>6.tSyG}W +Z;5ni >_ ڥ5]zN I(ֱOX+pY~?!Axͤ3pҦ=h|$eI;~SR(ޟ:e_:Nj|EZr*ݵX|Mk8 6hwH7{νOh/hW?'~bi%R=i Pf>Am;m)՛k0S|b"]¤GjtrE2*R:юo2ՊDf V#Ւɠ$u[5æ)S3}bh3antVoFTX|?d!t•jv4N!Q@I)KbޒQ<ރE^ JQiz6P -` ŌJ3` <)}wx7JNqE+IF(Ml|$X<5%jrvC,YD 6o|T:==Dѝ]'_"%ڶo ]IL[蔬6od{|I[!B ޅn"n[HI#gYʲY'"[ءކ +T$;llʊ"҄Tj!d=[fn}D%bg}0W ]ki*:1x!tՕ+ 4TID qRN3R:*D4fց;%O)9=[?ܫo.rO+3rLEnT,T1UXʣbVlC0OB#!+`.6u.@( *myBmkxT?"C_Cd^#_fq)ZtaG)b0}QN𛁏&\QIاA;JNƟZVFBAUS#ECT=!h+V]m;u pg[kx_[)bQC?DSR~(8+nرڜ#NDd7=:dόvip)l{X / )>3wi+BQ#/x\7Am9RA{N{+ -Fq;J&s d(2%.´V$ͬKˇm ggmvђJ'(} r) s#ؤL$C*9fDRFQD޳҇X,equ)ط>/YbS߆-6Z@5&„lrۜq,⮋# Y;/vGд>Bv>)lc10.Ĥ{;lC!W4m*Z>HShT"ڄ/x \H}ϜU4z:=p}jO\3) Kzb理 F0+󖕂-=v]c8+Yk0mM5'aNCi RoUw .7Ǝ(ړn3M}8`/JIշ* KTb{ mQV$qu<:) Ċ[v 2I+wȶ o*q™%™(a]ܝuY^ίq F͎d-wp}kvX>Ch ]Y\ ~{i'eIȑ,s ,Km"nNq۬ CTY-2:z.RrdU'wwr]y:johI(f9)_R ?o/?Wc*r+ɏbW:?c-1@FWY/64O5<%B׌(A Qch 5ΔvKQ5G+Mw"s0se ,e'V1T2S]d!gGOR{ZuTwvkPIVҏj7Z#: WV(g"mEd \BG@^a^8tMknfu=$%{:u[-LTY Hop!j=foFQGRGbբkGUg$.|'aQYKZY<BA<sT2"!Hɫ̀NCvz{AS) 3\ EoOM ĪWcqo?z)*u&ݪ'>@W6LeTQ;Ih }k"f}Ҷ^}yO)eVgwyE8q tX[1"y=xɢ~GRh$q\m 9IEZZ`\{@ؠ+-j.4LV |MkOcBban ܂-IA!roԶ+čщ=C77|WޛT~҂]PC0J/.F']o{z$MN ΍A+w:Y˵[@BUZ~!_s4Eo#$G#6>%!doZ rc=:$+8߲y>vyRpp:>mq\g_smiZ LIdzqm,m$O\ؐ̾ݽN zTe"C! +Z _}]Y 5<+FPeqB>ڣqƐ jJӎ*p|b/rţp;h8ܦ]R(~VL8/(M] $ڵwu˩o6wbx<(.B ,8._Ƥ"ٷꚿk΢vP~j۳FyQ SS %ms:BcylLvguL6[[ >]/+g%WOhMM\[$>M0u!CeDv̊?^?¾#YƆY1{DGd(&zL@Tq\IdaE vD "N;D,OMĴa}٫Uq芢[ҙcz þxE͕[BnI2G/;=Gm{;<%Bto觪(Qxm=&!x(aISq;-a1QBPq,Ъ/`H43+P},gvJsG-)y})B|'V)>)%*$V2-S[/gg@3w7RCk0M3! ե;)YW1zd/[G creBSvMSC>-8j- R1m&R6jd/sqmgȵnƟqhy8:aܱq63 _.tZxN2#z8ؤxU[ֱLFp;K)#E ִ{ФÇU \ U a38u_;mnq\$Md_%Sf>^mҽDUQ *!St-l 5",}+A0*UyR,j8_ Sַ/Roi}DAΣo 醿IURt p]Nț":㎶9$ :XR"kMݻ\ 3HW̼a RA|"ĥБ8X!k j좪ɩnUTh'=)%yal>C1d;w[FI" |ah $:*buCa)Bi|QhSjF(&b2* )sXmQq:VCMp'5ҕEh@jm͙Yz-hhbulFz.#+6/^MC; I M?xjC-u(| /{nlu/ o[܂gtf?F땯zHZ?*#@UᅬۚxM w֟OBdTW7n^oynk5"aS]~I|!GD=/ͽ6Q:f=[0rd#&y̞}~~Cx_ə0M+9 G05MF yyLXMݾˮClʙ¯aT>@V|.dVh$7&6M $h_n@FLgo&z&$2T\e U`NS7qzNſ83pz>Hِ+ۢ۲ũ]gח1=Yeٙd{[/(3`FᗞCB<%d0\e*%P H+~J8wL捍 ( ir E# a!Y~%i֢MWMm,!/kb`(%]'ڗrVaBqӘU #t΁/c[)k \IMagFz`'y-^j2{xF7z^S{ii5IyvfxkU&bcj!GٿQg8HW4݃J_#dEV#b:`t(vӼLE>8IUCoQ!acf}/ytX iA/<-)}V͞ o-R)z}lMVRӕfj\|{Z 5Jy/,IF[i_ܝvh nMIQi=]A1|7XM͚G@YdZHt |giOv8 ߟZ{4o\th L|3Hi#ӥ!X-a^,̰g Ktt.膔p8O ׹EFbj.4ec'OXv dk](ƝG$Z+dl4Gۄ1%SMҰfP;6wNmoKC/Inpm{)8YRK]G-4j}Xց?#LRykVq5U٫Q&P#[+j_Y-89}:ke1]L) +Lڟù#,Vf6+Nh(j/]?j\p}^( ҟ7W0[}{1lgG5X6h!ʐbB]\-|ӄ {Q=[;5V\FJ|ttt~y;W ,z@d+;}/O \š^Lfb-7Fb V6:\ o]!S8/ 6wA!rwX{aETowSmȉt4KGfl2U8MB=-o_>F+T)p4cv7 "6`?J/\±ZC2M$IX]ÞS9>ފ"G軰0')I210v ވ;FqR)=jZG=S)铯Kn8~5sH~97x!IqWunfo`ePf˲Vp`*!h,eR-wNVLG>m#? (:.fR?ZOjU= +.h/3~Wf꽰v]m]Z+:FF#g'^b ,MTٕ̾G쉆)ڲz{UYA$v𳃊 R죀`ӠޠrRLtZ a,RB!(rz z#t4$ćb@#i=Qڵ=EQWy L¦sr&"%piwcMB[Q(M[/Y)H(f5"7 wW0]N1'R(Y,PBSޥ~ LBt%I H)bA"B(iߏL"sq!:ѣ{Ly$RO凝\$ s5:~ {=+ " 4eH2,x 0OI*ŧ-%=Iʚ̜?K;4EY+?4>,k6 μW5l E0G:^$l0z'*@d,=ܥm %%wN 99 r,F 񽳼a25ES3fDcR1Sخ ܞw\f}) K8tS`Âz̑ E^LցӡH0ɗC~?z^IC)h bJt|E'c֭s0uƣc<[Z)u̦g@=7J p81Ce 1gL^qaߩe"j6 R21|ڂQ3TgH;m"m(#ɠFXH'xVc (bYicyoc/=mͳTbvtŇnoޘmxDlDp>SdLifϭt 47\$\t^V^-aEsVU0C9;88AЬ=+~(185a&FE2+^p XmQ#µ bXLiD'S隹E*5^ W.^P 2yt -$ghJW& "37ty>[ *XZ 7Ô^R- nHB#0ըqk|X:4?Sw.sˆ O= \H2(z7$WvoU7!tNhrdV=&g= 8 2iN{ğV6#us@TSh TD2| 9%GIEM|@ -2v7pR'p!.0%㳮< c_kylt8B'PnIcHQH/4d4"iZ{ܟ5Ms{؏.9_BF6ە{`U*9B:JA ;Џ< "b ZD1SmiXV9X2lr$7yL줆Dl-.i79]Wo]xf]dpӟOJSu1 nʒ5'=|UwOr2M㤿v{V][hdj&3<2M٧˶&OLr`,8zvo'[?!h d Tfgdɲ=f{C#o o?W]VÅ4l 8_UP0˾Yo6A0@.q!7nCb9j%.^LS3W(s>d#d֓U} <~f:"%~JxNX1Bz`ixz|Ⱦ//^[.-0^*͆D{B1cՅd3[?Z_Cbom)|LRldRv}CqQ#p A)jT@K_(skcZފhz{cK.`B04Y5Ql%:Mox;~9p )8 {?.7Y%"rHvؠxkr?޳ f?m!{3aޔB tR OnձpXnj %I`8Dw`xހS[ 3N< **Gd'{d]$uF!V%~%=5I36$ytSI!'"U^ 1Y mmH([gԞcƀ&=v\ED+'P#.&)3LF|GMwR5U \=GWa~ۧ7.`U8K Bp4A)ʧm_<&,y1 +x].E!;Uju(0r -kަ Y>yƟ(]'+…Δ()_7 Tw}l߮ nnj$LBp$gZlF%2Fr^8L4N#1E@[ݽ(fjsdu~<קi9j{$9YooӪȴY0+X qm9O.ڛW ҕ@S\qn9#"h|@$.mC9S>"$U<ݘ 3DڙvȂJ&N[;.QӃ%x-zQh!43sQ;/[2Izj.J%sJ:Mv6ݛ߯>m%00`Gj_ 1`[2ԫN94SEKi9l'6諯<۷bma q\ҬwD~CN ʒz1"Έ! (#LjY?\HU:mUu&–;k aK ߟ/ϲUp0vB">C9ct@C!kGVS0=i&}Fgl aޜj58& vLǓk2߹ܶs¾ -_-(]#Y#e-wq~Tc0yKFF& |>q/S`3IO!9g[l[ &k h*1+OEQF\GU,``ѷF=+H_6uVԖ-IkXFi]u$y!sdGZ`LaP'{$ۙt"T?!PrփD}o@ ' ] ~-;nHj9FKk @{nM]ZSAYW+0BX+̨J5ĂڧiAc rǒ1Q$L ;mU8$!k3qnar|]8хt\+@E޸4 d}l~ƀ;Y=] GN uԀ'=Mt}?p`+V#;(vmӉ췕 4'9wjdmؿ(=HGZf7EJ@ߍ[ֳߵtqDI49o<@1|*JWs9 y>Gَl39]d2ůO@}&d&Y)3 2JBݾjH='\2vh{n}e˜ٕ¬'tpS,1!GRĔ~R (Tuӄ~趧p`Ka'ݪ2p}Y5JrOŢ S#,c 0\%-$[yXF턱U/5p5;$O/u (znzG5׊|̳O8OP~;YN0qo-c*r, aװz0h#7<0e+/FMCc{ I1axbuy[ wqhjł cvXm`]=ʒp14\Xv8 _L\5g.Ҏ@!"]ulaYwߗUw5v \rYLk!VZmNH.'4cW,ϕd9oe: -REOgBw A%AÉA䒋Yb y9[N 7Ed9q^AYνSBW7\ *Vro $` p]"7ȯV-/z+%r)7@͛S^$\f^wۃ&''z '!Q^$NFaQ0 fj垔W=yhSK.ա/be=b~en"tXeY42ȈGZkqLH. Z^N}хl`Ȉǚk*oi %`9PXwӲlm`+LL|XX$"U~-m78'dGpY70s:k2?%yHz'z1/H:;8w؝1gq6H\4qC]Ybj]65i"i==5NNz˄ys6HRUqjY u$yuV^OZѭXuw2dV<$ 4ᙳ Sr%i_0p\UrvαLJOc̷9;L&GA?- x>̌jnۖ4NTu kLQǶJoGg8˄J@M㸀_Tr &ng9V8t}_{Qm@a+̚'T~bOy5C -6ipFtxxhZJqJ@Q(7LJּ)$pS沯,'kVMwT|![o^1}{iUV~>~5aU@x\|ox0 ?b:8*H[wi㫬 ]O ջ{cҢQ̜Q˲Qs] ;6TBmd=^01v%|Օ`8ڱ0{r2,ww fM[)wfޭg.BH :bO?aIDK5BĽ;Q|IS`YuL!xH۴zCRZ.s%[B먻T `G=#뎊c8:ܽL8kM,/Y@܆/&dp;T;/Ձ5)!-Wı&#t_]1UTƯOO\x! x&ZuZ?Dl9w6 b&ϋ"q?9֟bcJaL<PL߳* oQD+1<2,k^A2]R澘7e$3OCq0@R$x1cmD8TksjZh@%m_%DY>m,LR54r&̪mv<\w|ʘ=y{MuC.k 4 {6m SDV!/ODK<:hU G㑿ދU3cĭgZmyD/*=v$6?a)@9ic/r < SVo(%jД(y WKH@p["';klN7j}U3 wxbW>Faw'Dk}1J(GfKx Q~Vh|ďrtS7!+Qs`;=_?0 A: gUugϘ4J4sb=0"]g`mkhzW_ؖzH]a+?uN,`-lw?f2)T8yߎ$S]U{c")uD1׭/硬$s#!>$^E,߻IHR˗Mܬu?.~+ZYp?@Nӛ1ȵ'Tr SK4s:wS,S1%l ed]CTi~uߞ3gv%AY@5bO(Mi yXؑd4N+]|?鉥65a9{Iĝ |&\גh¶ĵҧ9/O#g|Wl\Qg>PK=/ƻݖL#MZR!(uw,bkYl֮OaOIsBgي[ R>0<>ˊ7{9;*BD#@̸$x\g7t^ F7ESeB`E(b1TPeKp{Tl@pgHnFHW+POS iA5yV:wD py! ;jme6H;dq*cN8wouW@Xg/ks>;@B F|!xY|^Ssn޾%xT>Sr)<Ҹ kG4(jFc#ͬ@sWEg҉\g=\T\FAqB;K[D59H:$\9_noXGfu:7%n|4d^cD=y:ݟPeG GmUVSn(zk @l_JXî:s~  ofȘZւ'N{&Ԉ&l_` `u٨b43hE}_>o(1O:Z F2kY~~0ԏ{ua%YU,\b}fpPmYf/5P-!tYfZ89 S84q&$42:e)k&(}NRG& 7ti\Jj(WCQY=p \ 2pLø~EkȎrq0bv`>GDI n1PDyc Kh=hAHsBEv_cwz¦!$wB\LJ/Bf ͽ4t,, ;~z8DRe?ǵJ=iqDNb+oLLE[Ls2K# 86sfm,`ow)Q'ѧƽ4@8VP.ɦCpd g$Mrl9𾨭-jšoϼqhH4uN) 䘬Yk^>ؿ4*b`=l6PfԲ#M ۻhlm$q"j\JJm'R-8ӟjP/!op|槝ngz~ 㭜su~U@3_<.Pms$xD^GNSlsVI]2EqY8F"e.qP/cqn9Ҩ.˖go4!Vp73c(]08$;6J6"L!^~SBCͰ6w"Z5|:<|GjQ؛k?=bP-?DxG/%:$*WXdI=9~sc,B7Ft7yl@$=l sʀӗ+P`xc^Ku5O 34Ӳۯ'΄̓ ÉM7"k50d5"Л-scT<\ e{ X5gC2@#W5Bo瞪SY>Wsl \ Z.nR׵$љYЃf-'\!O H,1Z#7^Qs},A*fٙ5$MX!DB\$'T+u=\cƎ_ |3.G/ 2ՍA}/;.>7.n 01#ZӑXfVe$2ۏmyDƌ06iU鳨7XL|zRЗjGjhC? 7  eXҫK6Jt_h~~L6Rٟ|x|&¢%f|nM2ҾqA+% vLt&;2ƎSK?抇"~$2,V%ugɪrÁ qAjh٥P&yD ߆\W+8vmAQ! UQ cn"#)B]\4zpLMY9fbS 8v5*N~6Y]29Aΐj:v3vyQzG`æyFI o. }ɰ)K=],JGf$3җf`.@~1~Ԗφ(eZJG|I4Dҹ̭tCWNMt1òi!v6n-QRneCQ{tei(!E*cæJflu)k:Qd;Ϣ˿T$ 5N鬍,<)0ՌNh!s y:R"b+B]KG׿}k@| {%$V{K%א]ߴ7Avl=P~>6wnijTt ~nQ -8Q@Aq-X 7Y?Do{X?.Dv]c)SbmWd9A*0'Ӭn[?B{Λ(Dy,CaQ{/N}CTD%Q VY:M|BldVz*ߏ+١n,WyS򍀝=ҙۡ[:J9TMMvifPLѪGJکEC&ag3lmG_=Dݮ//.Ra~loqw\U×g&oODYC8hmL\Ug֛Ј7E^n {gǧD`jȞ)6(Xl(|f/ŢS a>gpkhjz!@[89,B#Ƅ&Xh%bލ.M|'rk77}Hs@v^X 8.T-{?p{P)a!/p[e39pH>s,ìa3Eۇj ל,>_ZY~3ǗJ\dzj3Z_ c?u쒿`pŷqݥskDrpy:XxzDxc @!sqnƊ'Ayu/<̡gMi o<$Y/y'MȊWqU=!<dGΰFRn??NM"\k}4Ë' u+4o6;GJdиN n e!| Z ۱^#rM"-ޓ‘4h9"?,8&h ĉm cC/>ޡ%"\=bh =A7o4n%7^dҰ2$Ӭ3_hKGN&/qA1X,+}"Ve@j tf/AOݢ jsL%czR| jk.BUU{av-gbq0vڀEx0tQ7!Anm4V>{cD/E<ہ1-!ů_[9K5;A;.IѼZ:dd4H\7.›*@"r~dXa/PDec}K iu a\]xBXi ĂeLyl@ƷT*7bN`Ŝ=lћʱv:|SI/ ;vz 9Uߝ{|>1ٓleqsHi6MуJ*eP/C1ukV_\`EQX$%9@(1#^<J9û1u$ Gt\~)/wN)9Ca[iHMB|m, үȵHV9=BuQMǎ}Kߌɀ#mkz\6&cY2@hƕ 41tʟ(Tu2m8oj!.8u)5^,2հiK #|ōI~q#^oRxmKo[8Y)a⤤سQ<0 K m6E4&7&glqX2-eOpC/ʪMʐ :eJK>_Oh^{Ps@9.㍥6 g񾓴~8 '<;fy!s/jC{\Tߘ-nHa!v[*7mgn[A9'T:Ŝ)8eg1fEQy%y#|=66X,$f\:&{5/ CGn|l, j}/ZX %;5jo\F^ir1%Pq3Lr@ŤԒltHFH\# d\Lh7; qB YamIC+QAJ3-0 %KFy-K%cVn@0uepXDTr T ~x3~|@6pT_UZ-Bs9qdvZrcP&y@ם$ї/q!T ( [}eo|_UBΠe 2Tb9:] U=9uTH|vL-. Em3Hu^.|] 8HO sҪ53bv!˰%de6yDkX: z^ gI䪪\}w7p~€ 2/!K'Ap.|+tx~삸./3$\^}YsؿT"",rb,B׀J0%jQ7x5m>$)(7BOR )u>ƺN^.?$sk)"@g0雥rUgʐ`S՘v@;i'Ldq͵1M3[:{P=qL%vs&Ǘ?MbY;7 ۠Z.ٓXw 1xI{"8 (<" Gt +'K'_s7kwoxx<_`+,o]3ӝ|7OUeGٛg &W*;F|$sbĦ Vud9cV:>xv%\,]9Gwv!)J( ǟR?]r[ G͂3[h& TgWHs TXj3^xy㏗F 2-p]C3r:k' ?L63E0Vn[W"ɻn0VR3,ቁ%mU8ei 9"gE3"ekd?HL2*W'e&rO'\?Uebfg4#9قYSXf\Q#'DOl-30/tmȻ?e&vBb-T)NI yD~)o!;eBGWv2i #W>/>MqL)dP6?~` XR^+Anv{%Uvo`Y\t=.,H1$k2L˔?[H9Q[~oCxy X4j:5A4Jz84B'=:eji MGK~۲"? )tI T́*7¢& aR)4dŀ((oEmͧ{۵G:4m+ߣ\F1M,5`o;J@ ԿDlf|4Ư?3W OQud1ۖwBL,~0mH6q} /Up1p"*SD BaC|RohVB钽ĻZF$ tJXc)a+CVh+2I=NUCɍXE>ۺᵱ= 눭&AS}t^b. sc~dH)1gc!z>`0Lh﬈؁l0_s I/|UțG[Z2c9&|%~UI0Jd 6Uը͆j֪Čuop~qFA'ū@PȽAYwg%>TxQFphpڰeT[#';|Fz2 gx>gV* 0Lo+s]춍}8z9' vHxgߐ_q"JVə 7/m9Px7;k!}4P+d&:`5(P`2v]~)bpN,`dA >r2Y= s f+لƪ*5d&H0Evr1u)7,N#䠝G~8v+id qf=uo[Fw^XA1-yNvŏIvՅíf kpJ1YhPL3q.mX ^{-_=◴_kSV~۴*K2ͻ45 Φ#{G&2ɆYA8)"D膃w|bUPxQx(y+.lj<c`eVԭ!Dsj2D,}+1 vLvq뷈m%c׸ǽ:N'Mgx_,c3bH?eitY{BcŽvt!3ܙ.vϏݎqfqW>@*P<ѭR{#vd'VlۤR(¾ⴳS̻,l1G g/@)̿3MKGZ9F^g:;׊ø;:t+}$(TUZ{j[ԃs g5*a2vRQų̿N-OTZzB[B ;1`TMŚZ_TḤMɎ5'eZTD+L4ۚJ ]9aqEB@[o"HWFوyd.HcklhoQ^Ixڣ!39ӤA6zR#MV'i bcЀ]Ǣ}"fO&r|Hp.m6jFZˉs B1W |;u%JΨvz'|fd ES~ҥ E rT$ElRIH.?oNY=k\sW4,mdC15G=,̆jo#> ^}IS8@r=R=HmyBs.խ\bFZY萤y/õ}t~V'̌2I9`?|9(Gh;zhuخy u=n&i[KJڂ/LJX6^%5O e9N oGӤ6Wz"nF~AϕCC]e\MZD*H٢OL3~Ey8<; do*s>{u8FBR3+^ Aa. zK{L.Et{ _^ZU_]-vMզRQ\Dǣ͟<Zv*}-FkhKw/#k?IAHAsPu+D3l /P\,df"@"_Xp_yQNBfq=1Hkm/Ʈ/Ք %+|ny7v8 9sg v± z=|r'*u9E܏-4ZXc |?`7G 4xۻrЩ}7J.&l:!_L|̪V4Ɋ:zIY_F. 3^H*J+ǹ,.X/Gd|""P?#R(>~DY.kOŬWzsO2CAfɜy,M?vW,%WjAD]Ss9 (]섙:upٜXwjSYIH`],%Y+hl>Nu{TP[+Jxn? '"!bg,!,(Nn "ikS<&o_}ΕAԃJKiQ|f:}YQ<mqg :}̃Xmړ1Et,o|<}x1/yif`q֪X$=XxFS&F(-,Bc8V685ô6@tj$_Ȱ:0ooܮAt[Oeα@5o8ڸL}70lXj #ՐT6b@o}LrKk&CDq.m=Dqx7(wZ@:[ P= e as=P ^ג0*k^Xļ@9y8OTۿۜbRH&t97)џ|1_M?7<`X^fG,j}k fлOO %oG;L"UFqjWE\$IDc>Af44y<~@8ܳ`36k6)ZCBwl@X94#&H"UM>g&Zk¯ь/SJ5WWToܝ9]}<G4(G)VhJswu{`PcXjH8j(T#q[/-y@a qx;u-Պ,G# ..8?'!Oh 'JAa r"h֨M3i&a~nBO DA)*4pi3(".vj=4r;Ā^]"$9(ȣg<&0 >/I5o‰}sE[7,WBb4Gsz:I Oe_9U>b#蚾1-|Ggy\q (ޯ|0y?pVw♓Z"Bk29L,n~&u14#]mlD#j/'m^q7l>O-: tٽ }o~D?$'<| 3WJ7r4Dwl {&b|\v9:7,bqކAJPN7Xo>M~$KG&Yz$R^y&_c7AEuT„ `qzz触4:|2 ;*QDF,xqg,ư.\ba}, Jt[t<.1T"]5~+BM)} Ly߶(K*#0ZAp3K8^3QWGhGBI|´DE욛}T׍*/sn$G]Zۍ?͌qGz^^zFr 7 KHzP?AB+ï qЛOih_Es<|Fl P n<60dwpv*Q;|dK_u:9ipp˗bK4Zh?"(Dc(W5Ikjh^m1:PȔ[J"kk|C ,CrS?*}WI8^^E<OAm*&:=i2CrLObM nZ"Vo Ca9X >!pNyJ^~]c|A:̪@fLeCeA G#S)jeZLm6:D3%z̓ggiGLS,Uٵ`"]a>Fl vuJCsxN͂+@*1oEFc85*_c=z4F !mH|q-cb50jjc'\C{= .aFd 7I9x&g;ƉuDŽp7!h!7{R~_&A'GFvVEC61[[8s3>@Ў[y+t!#eDꈆ>M#0hJuٕ W*'/"`0&J@ D$\fn u%FycWtr!oT1s4[JpWE0zG{C,=k(9O h2JZxS}`\fh(V{\fX5.Ų2INdžd _WSxʌ.jDPoELO n9;Pa(d:ʹ2$Ջf^tve NP[4V.[Ϻv:6*j TD əEE)4E$d>ke8>1Ó?o sw,>vHs;PY6ۮY5s6|/#o@2-[EIn79N/*RܠGw\#ՍмnGY(zӋA-ώE>{;2~Q+(bR׀p8cjJ mpYqӊCEaXšNz+a?϶cI]>\\-LڐZe)NpHa"!6#O6. [ $g4P+p+Wיʄ9+U{yFO1$mY2f,&114K v7<Zu&3_ඥ`}WJ( >gS4gN =8xN=~7쟕 hиkMLL&lȡY?qսKiҖ<[峠?Q?>;K,ߴ9 Ihf7RPCi0TY:-T|%C0hݢ=coP[0'14M !£oF^x')gGD4mk>N#}&aH*DtɾknB{^.DBvllL˝a*{MiTs FOa[&JfNR@dg>[HE`Wxӯ:hUKi2c~dJ jԦ{"a1 vi'0q"^#47/]X:a;)i0Tb,XiLGV"GN!i+s !Ni5es;2\G7: rJ`5"2g*p ȯ\?]uwv 6%X7^>3/E1jO}#%e^G,Ly:V={Ob2A{@,?DWVi;rY 3ts׏m$gu Ŗ}8Sȴ,&nWي< [LRnQhIϕj7LꀦHIߋXVsF!0u1˲O{1_7{##AM_㗆EVʋ9[0/ڝ|pI#mYf%hsS/f{~fz}cbW^d6ډFd[G0_MTf%NS3|p?Hr6)ׄZvI# ƻ%_2u1Q*~SN-K~;{%wB~크?: XeriSـQE/hf# Sb8ޙ{\ͥPʩ+!Vs 汇I I/1á9VFMdjg^DR~h8\, eжMfsLVO'WU>f7㭦ed)͐Dog5 2GG}paSpPv6. OX\M 7鮶zH|QMi꠭.m+ImuROM)tKj4ԍN Tg~0IJJ L:q0p7 V\ ׈Iu(?9%3͕2m"2]Ӕ͌l 9"ЙVޥ)pW\7ܑYDTCs3fpO,H xDN2|U3 -]D1;F ('bʚ,mgfU梣F}"s䨅GH: %\D+>cU=K+" KZw>ޗp+3RhPwƆMLJa˦6*'.XDI;vĂ) 1b;bӇ9ڥv> 9'ѩ/mTpԷYˑ/0bV*զ؟J92b6WtC/BN}?q®0ÐKǾCeḚPxv\djU~O~=xJbLRkrucBu;^#n뤛7p B8 QGb:%#˲[,ĴCn|fsp|s%w׿;mTCKarYGs\b &ԝUes Gl#ۙi;>2N#9v'U,|}ӷXfR΅Tl=l<XL| W11̥A-LKY<-iӫ}PSjJ]=X"޹5ZDp^`NZ}KcXQ(`^կ:Q)Pn29)اWΗ_;]@+Aġ%%2Nݓ[9 oJ Oel%_^7K3S{ocwG)n}ІfWa٫zy_כ4^υq?T\BLTSX&UB;y>Ѯ~:aCf3)cA!93BWL&̣6' 0{K#BS,3pO %qڣOȆе\mmSՃ*V+\g:/@w2E/6dG%$6 !r]ҁ˛غ ͓^8]VE-N=d[m^{J$\1cS^+#t˟8_=\+8.8/_/7xiA{BOF;+~loo>v[ !GIܭhJQڲb3o .^"& ~7؂Bc\cA]?6쌮4Hͱ@i'75`0ŐbP JR'7yQ37 O筍.j!OO]Kw%py g^p!R7:l0?yE%]xt\[ٯ_vYD Jԫ^6y`ߤ`25QMb$QMm0oߍKyD"u68qi޳y. 6,P}72%s^`v'Ϥ|Y{6g1h>eU3NU, m{<9 zCh8m%s{8 hQؠ#x+-Pb`N!B"f~݊D`N ih3Oi|!sB'6P\b=GrZ"SUy@Z?l&JGz:_7'O1~4RCrY%(H/KCӕ ~>fӷƳ$ȱۜLPH.|Xe3p7*6; 2nS\7lL h2,%3ڡ^6sU)kY;~jQh7+Ao;^\1"VJ94G} p˫Nk0/>3Ke~7|K0]KbpqK~:z ib~~ =F#T_K Os TT{ n1u3 F!W3z#.`N"1*ǭ!x1u3w `T35:a⤟2^{,^0۫[u<乚_ǽmV;К?개j~sA1Y⺊]ù_K[e7T,r);e;g88; 7"Sli~ BQD ž{jA@VR+dvgz\J5u-i^tDٮuP#.Ff 4]Syc`4+u%b̰d>BfӌQ$xW>dBǢe*&%ջ;NcEz+ߙ0z=۳Ny,:N8WWVq%}-9tc_erpA.b|#9w,m߈V,@RMu'գ2"E: 0aRS'_09_Sj9n6yFvԟؗWhl8j8 ˳=ypUvpWl Dqv$C K{y5qc=`Fu>XN> 4% X= b6j.KgWIJc<ܑ;}n.ljT8bDNmQ<:{(Jbc7X@GI үLa}πuT|='50gǸZ_a䑳Ê l1݄3',4oSNspf򡹑aN&I^/j隚r Kha?ՠߵb36tvi+_b8E~Oήpϲ>G:Y*o?Qmw~^tT6[Rg9&s`k[, N _YhC0Y4 J^!y#/|aBD(w‹ M[̊$UYJ<9Ѣ~r <}uE;{a` pE8.k̽hU;ʙ˓LEk0_fF!|9N]u,G.h4SV^3нKqѮ^@%Zjht<64X_ᆟ pb5kTͦN񨩐?f6i,j"g(~Y2hd.,%G*%=ߑM '{'KMR4_I_mcԧECaY!6'"Slwĥ_8l9v$(D$UDknSIQлBeXrR=%sFQZ-0uZ;p[j&E=z{!Aw%c=g_tHzM\jN6^QED>4+A#?85aX!э(`.QXC\ZvM ;Ñ8b2Da&a?Lja\mצ2Bs7R[xAk. r@*o~6ܿ1fc .4dY|58M(fKbJdmHVm*_謰KT't63L1RtZ@f`6QB7^Y6B4\!3 $3H F Wfu+{Z e>~ny)lwυOv ֢^0aXT)ZtQ{ܫu~ *[7l`tH?;BKSeͺbǺ!ǔ[ NG#!{XCJ9M0د`)coYieڛ6I6L5zq(dMe"rc(1oh Qrf₷$14:EÛbfmm%Uo]#Qp)j)'3Q .Šu3&MƗp))3Q928Y6էftfQmbұ)nY$Qz>k4f23ѿWV`="(o=|'q2]OBT1j'ً#i<$8|P(>u&a6 ~ 7ӶnLuh&3 YYȜs $04ߓW _oG֗VCO7V@ Z. HKu-gM1KJLQ4n5}__*p<.]TO靿NF[X+0'L~s[0 yQ=Lw4<>EN_SKi;d΅nۘn Ll_SK*d. MO={CLd= /3§sPl&ԣYH ^&Bt*C2I>y^0= SHywoZ/- >W7_چkgE BY, 73/e/nʘgg>_c!]$57k~x0w+m34@#=AFaXq"wO A85 TJ[OZB%,dUv3(WEFM.\͹ 9Qbƭ\y1mO4Z GtM>J{o$3-q5u;|ք!Q*jpZg~^#&xJ?O>rQ=55``{ <}x&WCXZLpxȢxavEbH,^NP($~V=ęI1<=d+LO?@vV`>91_:E1 KK!Z_] NՒS,4V~n˜`aK?QBQל朷k=H$k^?}S$A3TfPS0>.Ee E/6*m`_] g['9GMw~hlMhB8fۆmC<|N7+8?5.d%5?׬Kկc.3bieKڥt ݸ֡ahAZcGMՖčU|i7͹B”ׅ 2lǯ9S^YkN~mt;WOcqx6喕o38e[ztۜ _3o"Z{?a<:pY7Dŵx{f>A&(h~NE^檇]@ퟆB!YqCM[a%`#YݛU-st/{Wz h53IZ%Zb`? @:Dfznl#˳'/eq :vAov&$2̮M%8zݢ~N]yv)3!C2ih٨Ajx%Ӏ`yuDEv+J)뼽m%;o#n TS,񊕟DSܒ|c8y w`"Sy9k,9PL`4|O. $V&M{>@)uPzִ:Ƭ$%-t]Wd/hg2wM8b̌7>OYkn~X)% Yn/ q6Zڄ8)-j.2:\Z^Zh%n@EBTi)ǃn^2kʊ^FB}^C&!ǵULƐAgmDk<1ցRUn*0%>Ng(4 p( 6-ԷH4܆UAkYB#1Y[(uV>+1:E}9h@1_nz$伃a]bKp Z4Z̲4;~1 1GeAɳѐh\BjsJ{p3pCfyy7{X)B!~5˵'YzKlpfT(P=!Ufƕ; ͂ 6XƸQ'6rу4Jp"!UKzrg!L`ə2s 8YCVwPKq;R+W{2c/譭Qha)7%w8GJ֒ϕ9Cp:豩b-0<ǗȬLE,燰C1@ȍ&, {ZtU!nT<U野'.ؤ/4C?d:Dž&F,X]`uMųP}{D& >p7p[T;{֥d}I~oB?'/ ؚ4Əj6f|B́ج[ J]GU|mV#O`&I>eLZiw? *\.%J=> m~Z/*~:uYCjeƸp8,N+2RT*mDd܈PlN~QguBE!yЇJ[0d?Uz Hdf6!}X\Z¼")LO.L// (IO9o4/›S℆WI~|\ԇSdnʚYVF47 5,bRt(I {i <{1B/KXj-,"_#׬.VaC[G$Ƙw.xokV"3^YFTq 6Kd¦?IFFv|j]M6!H6d{YQLGӵЉ~snF!Cѥ)ouS;=R̈́b -nQr݋?QD ߶xОcB Ԭ߇9F͜8n\7ꉐO˿ɪhgbdnp#68.{KKo[}C%Dz77K:ݭ01T~ie.NX-v,r) 7_(bQQmڭ:BUϊoGC-_UjX6\#(' 7L gexUv(شYdr @$Ir5g:`\zgH¶I_|[ ,rg#*#|H6=MwNˌ"3"l*T=hS#6:JM1iusC.Us-^w ͫE=pY Ž^첺KAgʼnJ1dÿx7y{6k owjyH?t97?HzO?}sN;sWHa~QxHz$>J ֚̉lD1]iG2@X"Bӌb $++y3_&MUMiXRYm9Bbc`(^2Z\;XׇrھNۻoc+QXWȕӺ'YR!Ǖ0GGx E8SS:G;:aC+6u-AٮGPk\:^#[<~~NI졖36;3oU0${z($#C_@* sӥz ا[ OP3rykNBׯ2bn#)*vD<~F|cI `?jg  X8z~p cITlS~Sq 7T1ϰH%ixCsr9φWsF ]naGj sGivaޘE@`=v!D7a=MǧdWR-)st{FWTφDP܈L7/CV]"T!Z$Ns*- ׁM̔b?{{̓d@%FXۖ(#^$`8X]:~܊y L7(ejO>,fd8 )ԖDThR!g8n;$uw46 CB:'Kɝ(j7WWЦ+#pק)}Fdpah " ۠s >MK8M@k!U^TXu$6 Gbhx~PgX=:7q=)0 s @(%MtJg_(JBtq"-\\_: qy|zvK oM+ݹsC5uʉ4g[w{"*;o-"&jۮ#i8 3)l`9gbCw% E P ̝tLkHJ]4[T9S{%R.;OMc<6Al),0^҆̈hR:K;-??26FʌߚZ eՁ& £|&>UYVeɅAϼE;G_A=&*{6u6W|a骇z4A)C%KX8 MQ1kWq"/DqY/}@ #6*CQL{Sȋ| oiܘ&u5 YDbd*-6wWt DDDQ@ՈdcHQbF(H 6*D (BFdvO_z Z͉ ܺdR@ɶ`;W wS/G,p6 7e-Nb$eJjY.&@ÞYevfiQ؂pZY1V% Y$}A}D[Ou7^XQP_9W3`)(@e)woyÄu]rba`=@ 3jP:; /aRκ~isjr7 c̬BcmOXra~@"Oh$ZۗFx0Izh|C*KEK6-<~U^npalʧrU./Aȕ 8GRdu(KDEa9tzK*Ȃ1d\'%EκFHd`K,Af]jDÚL3)ȸD>{he|g%h">̈f8kYQڪ,IwL2 'eT1{ [k[;}cuvXāf)2YB޷|2txTs=] ZfY߲kGi`d,ia-waaž M+y݅ w[UJTcMw *WSa 6g/ֲ*C޳eԲ2L )w6yЧ.ɦ>]Ec 6;a>#X= kq15X'|?)GҴάr)-K$ޘr k+&eؤ ?6:u3*M$'ĵ0p&ңHA} ,Ybʙ(x)}~o G+{Mj<4T 16dɵ|xϹf eD&aG2Cy>Iq*\HhQT:P lxY.zI::`#wE3aT'kV}1|EV`F|]]o,|x+خsfs&W$A[!F!#q]#q gs)\!h1j~I"ϛao { 'D H_ @0vlyПX>$se|t}>{? |YYq5PR{]Ygb;OK\ BNn\:gG4itT>JׅA^d* +F̗ lׄKʮA|@o.MAt*:RjHGoAB.=.*UMZ /v6n& 6Bk);@+P"@q~|P&'wgYL"he\־ sbӠI5GөY_X $n ZjIr|0i{.X[, p!3v ; ͟*E ,,Vn jo>Yվ#c;Ia(G} sۡg3*?wi1Ȧ]^d+&Ը0_E.I?T aC ̖|K  'h 혜eBCJ "I ;̻AKڋPSf`Tdd7@Э0ʸ`l^N yF{ *!pM=L$%)X,~E\ڮk%)zr{Oʖ4; hb;%uF *1t&k9oW)p ]4 S0 MTHnSEE1hNQLTPʵ]V,:|TGp=ŸGGn,Ɗk%G s QL|֏I[B5 )?KΪ|4O|gV#f03%rSsgk=Qe@~J6eŠ,#P6%pM6zDy@\۪pQNKs#ffKkV8i+@fث߇9BxAM$*Xn04Og\,pVAܗG:{e9DS(1Fم~gHw@-.[D㭑7›Ф1 < =F5,a9u9F#i<1AZ EtNo~Qmr>B+o aj|: x?D!*_5{!y]%JJ#x-eУ6'vG*됑'n*f"ڝY9w3I%(dhj]MXc'Yl1U{# z@R/lEV2pٱ*qޚ(nAG[ g5+aQHԺ8ڤz~b]=`;@Qt?үt˞>;ϭH3d+Ӎ_SW;>Zy,wuU~F$͔_% "qL\ S|sٲo7?G/jTLE3<@Tv+"3nGbJ+p.?^$$ZZdu9{҉^o{A![^l0Np}A\EO]4Q[hѪ͜Ъ!0MX3 g Ot!ӠHmڟ+oiy7GC\2)#*-oYA®HU+]@fAÓgxW(lcQPkCX9Yjrpm2e;ay,J>WDbIyPAVo5z]AқnZv&Vq@v׿8M5?7f ӑwmB ,tC02^Y)#^E6:OOD"dcؖ)c'>XCK5:"*P! :Ѐ ~oQǨ*J3C:aN#J\gaԽ$l}8x]gFD"a|i_Vd8j+ᕸ-wr ޻aN'g;^mL t:C`c5~`#Lz KDF^Xwe`AaPۿxUŘ@_$y,|F@s%\ E 1LyǟpMWlDEuA Y7*<@Z:ǨA=+]*2Wz11FIWP*‚ wRY Ou0$C||V Jt:\r- ^@r߱ІKyxGr6E.9p2Jmfi?YCnfy6zNiǨ΁wȰnjJߡSvM<_tQC`E3[^fF; <OpwꐺZibը#pL Log;7lbsft(Ee ix8HJ{[5bbt'ZzcfdJ7l8mf0~UTl\gl_=+J?4:Լi 46$~۶Tmψ ^79 ܝSx;4eS6;6q:\ naW _CC=B cCv'SzM]dC#|ҳ8 ]Փcu9i=UteX%̽CMbt OmQ575| :p όO[RH ~!({, \_&s5w;leG]iLH }en]vyp5DS>%q{?#q4rM{,ix?Yӿ @A{:!UYCjm/%UӶ,D䣢W'a2Z"#,y9ʸ]1SFiBGj =V[0;|:y]kz xIS\)cbC5RI="CǯL>]7%~'h X16^L ۉvNjz0(A5- P&%!E2TT^Ce-2UWx.47&6A.) U><ܠr&G*HZE^^o ,YD먨 IoUJrL\/s0_n/r9fTAE5>+(J56Ϥ i>{˂g`FqjM)PkN`-y>U\aw&L9x$2%B"Akm[$m,%[RH2lU^wh4+}`%~63ݍ:lt(ks#Qy>"v`h~{]APM- 9Y]Qg⬢Y:YxV /R-C! '[ϧKk}axyI$yC&(iUܵKڋA*r͉4jUl 9X1CetIr&ϏvRZ,Y?iպOEd2(푢/]њS0gw=e4a6 /2q+ t&LDa.r^r_!d2| CJ ]rRxDRymγXtRB"w?B,R  恱#ZK2&}y>G) C·n@1E &5Jv۷0TF2;a瞔xwinS9X:^AfCZz.23sP*њScQþK:=bNxyƠ[fڟP+l-S(WM LsM8=}UeDH \ySc#2IՀ`AF_9NA.}g,–H#E{/_-[<8 z!R͘=$N<)q7]t5~?J9[loߊ̓\lbQCB /¡@1[֘~֑ [l*) Ɂw %_RIDX ! G‑v*65W_'QTE箛Neߵ[eKshxNπn853i%ʭXa'/Gƾp IKYK9XH jqXo4" MIX 8[l +fIqY - oG"F "+sO(FܵSԣ{E}H6BR>!Uh%KPHLَ=X`4LRhmK{Mb_RH3`Z0<1(gqܿPIUIϻ̡PxgGPp [,(}}L8ZUI7:[,AA9]n~\ײ菄T2ӫ Dȫ昶`tU2uKnwö(kG[<h,9*!;<5T4,34XQ`RG_<;>=j3SCWT2)޼|B M6aSpF@<)n2 8j2ɘbWn*"~Ɠz)G9joL3]MUD4tX91"/Xç˜PP& ~(!Bd 3-)6JX媴QܶΔ-M(=w\yZ7+0c@DNAE"`(H _Q֛<ׯRz\-B`/qI{ϢG_/&$S(AFQq^yd?ˆ>X(ѣVL!NM'+ 7Ÿag9urzY6{уX$U4&M[n('̌nY;iS44_}vdM}2\ HNJ"wmbMY@Y3'n ̏@ub/?'@mꑫZ P*/0:>(S\)d8OI=ku(3)nf>p%bf ʟP44Pǃ ˏ'ia OfgsOzt$ "na!ܼUu ˿lj"VFv;)(SwEفg j`.fvOBKJak-iF/06*wJ:JthPmّf{hv;ͭF|j.B·R6ͺ T;t z-zJFF3r<,XO&Y/ |kY](0q>Ƥb2gK>|`H1׋ J`%lݴ41M < Hob< ­e+qYJZLJ:;I&xfL"L690n]`:%+\7t&bv p-Ɩ*G6 E/D5*ui[GڭF{^Ro&w\Xa3[SPr~ b7[Ο|# aQf`ZQKs_3\坛6E{ D!2xcZ?Y ;]4m\s?43|@/md4xR2IVE1lkX$g 1K^=W ε!g{Qj?eTB`ĪM3B EBߛ 7zp@|Er. '/PsAʲ:Ih _~'PA) ˞IXdIouT7 #jV L)=u[nIBFWץ͹`٤̽S o>Uh4Vb5!s0R^xPB |']C LDdlGyGj='y`%4nχNNͫ<̙6x3ηsi>KSq a)zaE I?!E(X(=.$4K/QIU.5n4Fs#Fjm}ϫ6]Di (ݯ#9]+=bhrsaϩvݧ ~)݌^*R$Qn<7Ib@a VG?ZnB%>8sz4nՁmP2xe&HR? "SbLX;%BM(BFuƘMGaoDE|k=L/d/$4'1a}⟌J׭uy`)_&悉Zwc W @zK|g,E`k3J޶u` J -wInW94$E#6XP*~z+i8hE Nr /p CKUM+]>H(,y4MrWڍYlEBVȗ >@KbH(|yfkwKUؓэ8[;GІ|=/][ -I w?[5gX;PfB4®c @};k|Z Ge5w}l!p \/\Ipev[D EHl"; Y96L?y׿& } S&oFx$^yudnޯ #n(@%2-^v崞8}˯xGtU(M_XIӀ O/kD\M=NMMo0Xriy*"죛NШp! Le Xc) (k;_M"*bb)/uVaзF%4S ERS39W0.:/ҟ+N_fdGc K{Dmu;,`٘3?[34vp27orJNw=ٲ$BvhkU:Ի[D:VI,6##!(&NO9oKVcd4s^wZ*n@Y_͑xi VN]ӴQD\Ih&d0!Y_zywt&?ksޱJ=Y>RGx^N'=;ʋ;> ݟsV-fo8\iHtKi ?p ܁>φ5\'fC} |ː2Hȝ((1!/r d_ isUzM m,T4(? D&*/A2C JƸc^eepwWFrw#Jj"jWB0DjDHΥ oܿ{ũ0}YLeɴYg-"\z$*', sc!nl`)`3悑щF!|p(/-v`͞3uTOlZO2U/K4"-= ݀\IĚ, -X 5]dYNXv]i, | KNk%̛;qsֆvM2L/7<1% kMB!WGBʓ ^նGSplFE*wqlf93le'c:E) xU]>6o2fM |3уCf~ b{s%!_T)!WM炵 YfqnZD OȞE=!*q{M,mp >|ltV$aD`R´]]c+:ϋ,sS&$׆7񾂰_B1~%WFVSJ'yD {eY8Q-z@ᛄ90ڞ|FѨj9=e݌Q+28+qHl5ڐWm7= $Xt{[WGl_?dOǡ' eէLYuqaoAKed8{cwnں-J֒YF0Bf_U o?DҦ-! 8HҵОͥrN3qnãWF$%POuP;r )%˵|ȃuK@|y좃{?fcGTm +bmJ\PL8Dg~w %12@>7VJ*9Đ谻Ak"\8|?u5bR숉_SHn' aٲ&by,*秧P푂F)% gXyiYY.8W9.itޓ&w4!?J&TcslD}P|F[~̆OҩeCRV'z\ˀAj Ddc5?|e~r'4Lh8ͲJ%~ { D~1L!fKEX%Enj »\&Q}pzw\(ШS^h'xw'OED3-ܭlop>AґB`z\UIeTDz4x7j2funxJ^*k iW) Qo'8DN4WPQLV<%NqE*צ,˃W(l_OBUSjcX]oyvI/6(!ރTBF'*ŤiMacOC&B[7_pt) 6+dCȃ|HzRO7,%+PVfKˬsL&m ߉`+uy1MZP(<%W=/ t);6>Ӭʈ2wd~i"/Jf|'؊KB_`~!j>aÜiz]Z.ʲa#T웘Ӱ\0L i+1h)j6 Wtp@ctm6#%RBO{D;Ƙ(6WR0̅NB,)z)6~HÝN 04XO]CHik&14q_,RL0*I~ NMprv6mgs)!FW؎(sK:b.hG* u<Д_KWD9Fro-dA/~7K=LcL\1Erhx p`n~Z4JN,]:MњzlEO"}wb.y~ԕ緢.) @"[}؄1˱q̉s'pww@(#m|+n{suy"KfM>#Hz 5yD>.Q;U)5`;R Řm7ݞpq("yI!c4.8 ܖt?xq̢\м^j4iiuLBuqM,GH\\>L boA*|}Sꔂm$XK֤ibAЈv]|.N"DkmҥU((~n\O }:U|w.oE9I .Z #N]jd^ VA+IM̥^M sS>Їˀ8}oϰ rv]*ˢJ@vⶻNdħaL?:0FicC7a2/wNX)‚Ti-{qso eZހ v!9&22h<8W@=zQj+ڒJn0q,ɝjύʗ>a@oE^uX5lo/_B=!Ol/+՞j}^͈NGRplIإj/Eʝg4bnbjEW<%c+]XIn!"]5'r^\;[{G6! ч#"v`\*ő80AiG@G!3bt:\$yb߄i;\{ `̆Ma m:b`TI(v Kd~JNPЎ2B SkkXQ*37HR'?VM#:OzgXK's[U;w&_ %5WB ]n[r} 7۶iK2}!^j2s>Uޭhlٴ"hWkkO 1LMd{a8t)S.Cvm*?Srr,StBV[b/Crw#B -i}0Yo:鹞:2L ʄ·i'e_7 QK3{L^_5bN9=z..&Nkfיx:Z2cYĹF: KsoT6\[_d$*Z״:c$gMkӪ:5mph{ reڼ<aܪ/N@AӃ樫uZ3Ϭ-I=:'V!'OB~9 ob&H&)0SYt)s1dgO C_C`q@ep«!Q1 n3D~=MXَDᗤul쁫R}8F.{߈|5W)vuR.sr>G[ד3{[^(U5ʉod{dSF`ŚxB (A8:;Cy]{` ν"C.ZQ|{)ϚÔF^=i cfYD^2n/yE"<&)mLj3Vu3`u/XC?U[ڦhl7턏.N|H0-ogIf3X [WOYҭ 'C7U_鉧%:'5y|[ܺL:W2P{seq3?(*yzg .vnΚOf4gq_V'{]Fﭱf2BVުiXr0|j?#(,o#jjYXƍ1&4;ovcL4-;%FV(!4~M&V4 MO[42|mnV0h z0?zX(3 \b!VR,.TQJ+ZfHf<5.MGIʳl(53`NTVatA6'uw/ ƉK18/9 B0qι8Bv O 將5TX;>+zgp>UausfJ趃ډp {4&*xSDJXE 2*TͰv!mK.V\_ܯە{'(-"551c+>(?0X..UQWY1n(ھ u|I|Ǒa;{v@EIsFWQ-&gv N*8'@aA^Ji]b)L3JXsf,GsSά5^Gw#N`X8VdMr \IJ}~t vdM,́@f9?l&;`Acgehz}FCc֓ E?yqP59h].ؘ@dfui sv=R$sĿ1f7@DLgdvp-V|u_WYס e݁KE}f(10 Vg;!\8>3N ;,ɰo^ .N*e`VޭdUSNAW~}h{EbJ gIo rQ|Z,' HxOd;YpvEq$&U0)(w kh(Q8kӷ Rjpjca힢2bWJ;{r(9`u*|@85Ct.vw߂q @'Gп492o/+t3`\>ъS9gos>W~9Upѩ{f*!pnQM1EY7d(s( zx.OഡzX5Ӽq{.M8#YɦXysD^%EyA@}l*UJq%`x<桮P\gR_N=LhcD5'<덨B(H/,. \c5U+D`G #ڸX9X_ի ){QV(O%7ͯiwBF"S̭V.9s U,*G1r.a[BAv@% "['oҺrlh)ͱs0UJ%a.'ĭL^! 4p8 0 Y- @y fzB<}4^S$sJW n:"֥[6ޖ$$p7K^>d|V}6Ѹ!)LPgOP8uxyMglקw3O_ !JftNh9+?^QzCrMnJ1铧;S㝑Ѕژ`ù!F)4PO-ig1EףpG Ļ>S/f-gQW5DdՉOH#~%R>!0B=? {hzNe ܞhOQP}Y$ Pf@XIG^wEqD Җmyn!`F'f@5J_JLo2+krd&CܠR1+ܮ4.46e"CNj#F4R8{8)~og.(OmpԠNZ4iﰨ=uϯlhkh Cz Ϫpu텔!z2Ҏ#sZT6 QLߚJ֫n2)RWItE)Ե4 YЧTMDdVTdQ:R[&UѿR6K;MIr*߾uO9M$AATKkh=6*co >ŪT\8I?pkº-rvXW$GÜ8fF cGgAO*[VV>UU*XX; mS}铨GSbz:,Qghm7wq3io+pB(7>!¾A oUr D3PNu9#Ʀ妅"@qif=X=SG=:J?a.FwKv R1 JPt;ĕT jm CWJ4jiZa_V](;:2=| cN=J@M%ܿzx;Ծ׼hvTZO ;<(x#T$}3B> Եi^ 5, ޺>CǴ kID9_,FUޔ٩u#H)UE/K>MXS.\ZI Ήz765 JM'?˄O7%\*;BXr)itd"_!1q<,tM(^xޢgXx=?^qsz>j79)t᳟xJd}5*Ea`!'X̻' w3 \)=Q2QF=lj6uvT!BTb˘CN+R4": dFnS-EDy ݦg#F{ @Y EYHГؽ+rnM9%DSYԞ. EZW =^.cޟ.sJ@hUn0ﴇ{yDV:M_AgSfVH=31,Y51@F5{p*7q E<0o j*{QXK[%QDdmЯXsёTa Y"RHxJBs=HR]xJr)Qrun'>ݦwm^D(2~C0 +WLBVoe K7>jƈ` $c0iK2$\fmuYWk :/|6r{"ɻ!+(!)K-+Rs_QlXaͻ匮sN#rBS|ͤ#vJ2s4XLمo`'3䱩xIږA9dE6ylkY H՝Y|_,yajL<7f %|TjFi+3ݑG"e hH_~ܒTOn|I *nUsG}ScbMyIۺ z"_u^WnQ]7a~ezrRmN } $44yBC%>b/m0l3}9ʚ{v#N#sӬμUCr>5~L7? [g"\edNVDZZt(%,쐵ºۘZRȞ *!@ɉALvbMU`g.[Km0!9n-H.gI= 'kYɪpx[lSgberbhg=NX>Y%Yx;:Sƺa3f?®1%4|•ci{X\ = ΁8:ˬqKMM1-VhfѥdʠRGGaы%ҔϋN "nshQ_77 YrZyaH{Sqx]xC ߣO $2E]D^b/G{9ƮN1Ot;*>Fk`Ԏ_@ʊE,.=uFz E nq=ܖ431Ɋc5ϧU^B Ie$dgP_FTӦg~qԥ\/h*[ eҼ{U`8u#*in}YRP0[j<4( V  =7Wb8\~Ϫoᱭ*P;+,Pz\)n/Z: qu$06 PXSɳx#ZAڼͥnVFnXHVk,jWx;ُ$ GQ,[Z*@޳ ISZ?[o>.DPejKTEzK@PR Ȍ?6[ԲK?N U݁%at#x\x"'wC/g;=[G r5u"FFY i 8gBL͊5|s`;]%Z;XBc# Zt.!Jj!&}k54#P^v+WzQyZAxY菅&WˇԚϦUorȎxgq^Kt·*Ʉ ?l";R`+R!;$XGEXǩt*vXWŦҵ;qǣ@׉ T tOCBj^y!p&(IP7w?,:)EgZզ[lNd td>b=s h.Wl>h(]R+?яEKGGfwmN QQCQ*cIl:Co./8sn䘪WY*z2 Onpk~,/:ћWmA" um.9f>Lk ;x\Xg0&b +6u{:G!}0\d2qam(|ixurrXWAfEXԇ gqrqcuW\u%c $ _WoY8FrFdG̭{A8k\8F ڝ [t5,sC`szpnFT}+E=$I6}_ˉ%L/cS$D}JWFG#G6!7&.iְT.p P?SM!|K_6$Bmh fq /}'*vԼE'ä2m ^e٪7~c9<*iۈJ} /?U>ZWIs_z#,'7| jR{ߌh/g!3bnE߫l][qS# ٍ9m19cBN{t'xk #Ywg;H;T5cgya,eS{ppJGlݏoPƧH-Ұ9۱[y3d/:RGw˚7pJyQ2pdQ<d).>XAH\]n ٘;zr| rχ4TSd 1<)4ڕ|>ajl!noHKYG\Te6ku|γIzaze&vj$ !("vˍeQw}v@o2?ǗAJ/g{H08`mst١ֻߧK6]ѵY_\(2c Eͯ;%HU^䜂!&?~lm>zg".*IXS "2OG(F TwQcu12Fz 3kN~eE4>U1nvXEa*._Jǹ8ihC#NB׻W1C}:M Xֳ*2 B?&xl oԈdTx%eߋs{P >àIHx?B~/hJ4Hՠ,{coMϹ#0x(j0䴇I-=iwţ +y'_."LpaGDpG%/n*GPFT2IqėbWش^IT.>dD܊F%RxĝLh+[V;(gmC9\w|0ր?P_4=6͝MTjB^cqB0(߷JЪdXoB5ɢ6}zr.q,MHTi8ӳ6EjYf\=m$*::?m{1[ IhRv@|ZZ!7]tnqMciNc$3|g9s0lN +2*b@ t1ezP5vo wk5$g`>Ai  %S0gckEn Z$\KcD p#آMFGWcyt=9qy˰  #C%XT) .{8u4*"^O58[Q)޷OCs\tv=)&z\4M?l&1d45wӅ8s /߹ |тX< =Qe Wggr<}0:pU;!|z+Y\>pXMļ3)  ymǞiGϼZbo%c8j)O?:_y"%g [E}0h1.w09E`u`^ţu懆9Ҥ݋6gH?! ]"%VI}-=;oyzg۲A FI(m[E\!?h4adN9}m]QzAȌ1B H߈rNO w6&hQkI6xYt &Zl'H@X%4^ }y+q`IVİpr>l6qgpדt8Z:%K7CSY7 p|rخmEiq)2ɨ!K'] _$ ǎ:!QwݴoYYPE:i.@J>0dZLH f{ٌ7$'9'h1) nPl/o#OM)rcM¡/T#~~TLZ9ՑuCb246+!44k1Q&Lg$Ǽl %e%AA Oh1',$U4Q\ p}c2IP Ĝ5FGs$8l09d%%h=B:YoO^܃ҏ*\|?JΎJc.0_Cљ 4}} ƿ/-H:HlU1<{d# ~[-%iD)e=yO\8ٓpVAY]Er/vR|PgOd G?=zV YVr_>張;/-5.df JnN*vna%Ey܇ Mȁ}8@F Mlb{? K ,ҟVm{8 9P$&15-D nNzk?n-FS\Em)&Q p?xIVLzkA#=`dpqb-6ya}M i n{/ibx|6g!Zuma@jQqƐexs4g?8t; چ1;o[ݶ)oj BsBS`UT Yz/yb~c7]>5:%%ĵz}dଘs#*WQ_POADo/YOiW̵]·#W)0{+:3D26> [fn ͘8PuOTZi,&(4Pgܥ x=P ɢBA\JZ5zb¸z5"ښA;9| \‡cϾ$427i3KVi""# 2}al#?FMU ;/h65u039s¶s((Nmaz 8W*FP$$ST17Qs4 4tI[/r!{&`+4F$Wp#AnNZG&O|m%]MfEL NH΅%H",l㱿v ^5>GGa;s$ܓzHJ"8%zLnaA-k@pHžqq\Ȑh<¾sWnRx/,# JA;lxmY|*7*ARWvk lsYH+퓺h j6[ph[[ {w̷ df}>S"-j5 Ra:f&*\~S 7Sdķv˯?hF4X:R -`ƭP;@lW' %0i YJh<5;GNa4LH5ˬsk˸~5bD`C4Sȱ3ێ6 ~TCQ]Ayʼn#T {l2e7X.Kq M%O6'RuFޮn@׮(lf̀Ǯ(o ao=!P+yk iKEF.jkp5r@ P+xӷ#mq _G9O#Yu@.qv7[E$knk'R  +`$R)ًGrI\0s8h=Y!0Z2^~MhDGQnҿ>VY5K=Ť] $9dP^ bCPd'rLꬲi wݖ_yayYcl@L*oU.aI#n/9Ѳnh>OSUo yI͡)qQ! dFϸz%q~xMAY?zĨ0X<ʩ ^&;ggn {Q>5d0Yێrt݋[NHkP ~ N&lB~# UYbK-D;TRg"yN} J6%a+Ia t,Vy`NJ<u %HZXv}U+R'F*M$ -R˿M^<Q ;nMfQ[E8x֘R NI)$i-d+}Yܓ:(bow}4Ĵ(z$qyWeGu7c9*P[u 86aIPD J̞^vC`MP}#I* +wsUx=a,i.f5Z9;&73F:@%}D_>/-GuOpxn 0P3l ;SЖW_msT'J+ag婞od9h`t:(PZt('X 6Tdh8ޤg=gZApn<7 ^i{\>v=we4!Yфs?*6&)@sq9 n*cg)|[c p,,g~GQ{1pZCo6ÉjlPꋦg"t}_Liʻ˖FNrD7Q.M XKi+wӱ!Š^J`{ļXCL(I2cD)2cC^($04.'`SWgb5R_}!֭-$ы)sL sR+ 0دaOR qMZK¡mg#&J\LuQM j8md  9jrmE"Wih]Zc,C^;`߾ń9o09(#"M@_txX.VmeF! +,ǩ>c(df;,jxeڨ׌EDk[ʌLם~k 2)r_\v ~Z9xrdy"N_gs6IsvgšDnbt`d;{筭C`\!|sSowCOsx׷f/XB)PuZyo< *~=ĞR ^3DΩ6rc ưw]jI>;XЦX/Ob]F&5fc9z֏k5' "ʺ1X"ބOovL~y2˒'8WܖoMlp8%K3x"b]Dey#v%{ ';C[BO.ፕO ts=4RHte3J*6 i`*>](F9R5ޛvhC?k? =U +>[i%ydxX`0և}֘ j[oBt4Y<"c܁SM2؛P 0l6jbt!$s/NΦ"G۴ -Y + fO( 7$^:"]6`[lk}3cw:Y$Rm+ FlxɎᲛg@2qeo>xeQTq'g:5w,q9 {1m658̞l5wġpFҹԋkdxrȯP}\R/iԲo+W-..jU%޵ҹ̪m /r:W@(*B>"8.ݚDZzH^-NrHpڗW{t?a@Kk >T6r<9g~Gv&F{yG=ɕ}=_uJs5[E:#/xҘa%]?f;,҂_  t*~~G'T·s*g Kh IV}MvC`E\7'9E6Y a~USؿMs=6ytܙ ,q"9GAPh=!y!ֈ_T[/VXR@usgpWq I2'Qd?@bvl\qP7" ">q_גfZSʜD-'1wDj\Gc x"6:=b7oVK?60Ը M+~n/-#;j Eb2 \ES*̻mĦ,"#CZ|B(c;eǒz,/%vݣWB^w ]U:e`鮂q:ow@E)yPBid/M.&3(/(;&9Ru)B8O=fg,~ nƋXN##ϸ^WrA,|D&ѮSY-XñT6Fm_\&da=͟Sg?#x<hBv~[&ӫBN ) F16i=&JbBW]8.}o%nJ~]6ڱf롨iLlc8?Xbg}fꑳs# ݦ(imωr`!&nbV9& t3AkᑨY@N6?Vmđ:l,aP$}F"bıt Zx~8s,(n}X';'Q-52ӝQOo$0 upQXN'vU Hz?3sVFkcQuʺ%ǘkL36}-rfx۝&<:wDJlTF9x|O֥~C益Eg``Vs\*ahe։M@-`pjwֲknv֬8VQF}wAS [#]ړ-ARdUzaxpO:dhȜU8^P7.,Y?@ D60P*U =.~0 ]2MŶT38 ;3蜧Zk,r2Ozk~CrPv%BEMZbd 1Ck;>Hs)YBʚ&A i$@CRj>+D~t:&s˳Iuoe:~;(^֥M9bR<9ۅ`e]EyMgB|gM D.Z2alfsV& @3w{^@;|puh6#*֣۫Q_q;R}Fs&Oqivm0 Zjy=qycD3uEAo6KOni3wYʊkJpqZFMGq0"mBacĵҕW~VEj'(X.!h /raK%@+E_D$-ngm vݓLb_f @>^¼gOsC":Mѿ'3ӫ;(GlsTHBDg:ߊe ! <ԶUY?3dЙ/3X3-Q.>Z谶F+0\YͶBWUd_Xc+FO)K8}X@\'MWY5+~rl\:U$&̔3QUA5c5~/zeDr!Q{$Y q|+1z@QƽX Lg:`?R&/S@z^tBUk%Sl)d@^2_E #yE`PR6hAI[aѫvp`+ 3Lrh1unϿ0$;.t2Pۀ>z&&[/00D!1xwK{5x^Pg󲆶VH>fʒͬ-5>,QU+Y>(ҭ([|bn*m'Q0ա.3R#6D/>bBHij7CT^H mR"X!昢v;1c0T˸G~WVmۚGm"=90ߛ$TtYg:Ab8q+n5/VvoSڃ灘1#2h%LQNӘ?PL&\7)τuFR|2Qaj7Hz C+V+ߊvBN If7,DI'e=/1N~@B:2N˷ޡgfg(4T $C~zXhXa̤m穅6v <4!ꑋ1THtբSy;~:e+}ݿ*4!x9&:qvK0¡á, n2eME u2> 9HC#qՄr 3 A6.%kuX!0DI_ 0 LdִI>8غcuT) `<P,BJiŭ-֧Yb<ˡk^Bs 5[؈fCO017syԆ;x!':">k`k(v3 $rknҞ1Qs#+7ko]QLhN*HۑŖ dK5ñu⢱U*p ~u{>*LSh QJӑneM㜹mtn{-_[ї_aQ3b-?niyԸZK-+)b$E͒ljao$% o;2rȣa2`N+e}?l=]4Il]]՜ߡѭ>4SpÕsaZ!]t ܉OX:QX:3o;O|q+pLv𹈛7aFaW߾@dV)W$ٿrkjP,]?) 62E}~zIe-YjInbt֤l'؆FU&G E+â6Ezv&s9 )D^,w>%=AyBJhi GC3n{[`|Y0sN*mRxd-@MQ9}i{ʩ:jkhbb<2{M3eI/N#A*JUCA$|5&Zc?%} Lű,p㰂)x "ꍑZpk'+[Hi蒼JSWo(4B A/]:v[Iu k}Á{ vWG,a0$>Ґ y˱SL|` cnR3%.)Qr;( >k+קG JV_LmB2۱ ܪkqߟ}WKLܔX8D̄2ReF݂nSi1#r>7;j|y$N.<HEUK#b 7Q7),JÊ|\QXIPK$Wáy=(j62䑓ua!]ȉ]Dj 'ۯL_D>[ڢ85QiKFؤ߼ Z@'҇PBNOO?κBog ]()Æob 02,M!}2\..\x6a]#nriRũl]/~9ꗎ?.> I[BџQMAvЍ})3~HGl`6Z8`HClHmMj&4Խ[xj)eS?Epͽ-E 8~F~ACuyA{5ʮ{q-#F[* Ll{x1e5I3)ϝӁ˦X!?r%CD^^gim}kˠ;>h5cI./eMhfL)_:+[[kW>90bsn 0SW\l>ݝ$Lɟ aRh=Ufbk >!/& ޶/ժ:0[Y)j:]w7, ^ Aь(`Qs !e_ X`N د_pF)m %!LhCfL|"`9gz)Ú ;=#>Wt:"r|kon)Ҩa(s)hZi42Mgm )LXКơl4od4 5]Ҟ8i(ZZ dˇ*kG7/(ORꑫeCTsbaD\~cC7I`*lw P4`5uY(ܴ3o/ m\a%xp%ӞrMڛ}ؒ3M`6#q_WWZ*T2ب %lAe5 ͞}?@㳇C}Ҹ3^9Q"ǚt4$]Ɯg&L}7p½ lRm*Q* / ΢3vTi;dTqor S_&PGWp@kRW B#h ցeڙh7{{򁉁v 1)4{ƄOOjAqF(woP|]!(|k+ e?7%-Vɚ("0O"f qja&ѠO,"6qNka*#|-:E,. (+<,qygmod:]~X]*0V`sԕ2IDÝ6匇׬~5itCJZV3,i ?mqz r&\6+ Ox6겷BЊeö+ 0WIb!(.+M+ Z2>ݼ Dz3+dg69_L{cZI\Lfv۬x[ ]PtMƥJ']ɮm8n:ק4aqn7N8>2o yF?\l&J3djVl&u6Cm(AH0lÁ]רEv6>ZO:lC뚶X|=|Ȇ>_-j;%1hl DNw-e)fAdMyGwM.v&N(4v(]8?,]ЀIw*Ҫc:1Ŵ*#{S83W5Tx[\WޒH9\˪rGlfFoQ>3pmnXAaQ:SIM Bh:7w>/Aʥ[>ЬY‰ϭ'IG3&j'86sc/5*а y??C7j/Ǩ= m?thI}7 5MJ|I^cU3_9 C0P2D_nE0n'k} $jEY·`iXV+;Y~Cr9젃 ^!\3yXؕtܒ7Ӥ˩x!Π=7('XfB˙# n@tXyc4ġh J B_tu{5Ю1(aaârmeA q$!> ̓Ex{5\u+Ω>stqʏޤ.ni!r L精D,Űѿw.v% hK[Շb GC -opC!qƋCE/s\Buxc_zgl+Xyܣ66baAV~%1(ʊׄ oH(VQoA/7 yIOڵ !h_`|6+.}U Wy"h+x*D,D:d.C5E dҍOcEI!D蟟>1*1aG`,a?G;ME 4B EɟDKr$xryW:WOG:KT>]\بsWëU"7V{Ҫ ZJ_b[\F'|+Qb2vM_G2q<9VTusgb!-塗HK!d6]1ٰ-_^IgṕU[ k+e:~`kOLUAc^*riS3b g]1I*GF%i OBC'QO 4Rc:\kiBM|*Uki"݂:y7W+ۣN c@K,x:GPd)wTk{ -'_2)=UiNN1I4Ĕ–9)֖݃d~Ck' ]$QDZC==,2z\䮚ɺW\ 3tcW7JWڳڇL,V&է.Z[4^ ts;T[&tT}5)4yN>g" u5&wU4}gdvf"tF>نp169-ɹ3%w[X\ Lnܦ;t=-3Z_b!qe*1yHoe4p,Lٙ~^niCoN-_(ܓ.U%WY<- 5-B~8aN´NPV- vv-n_G%.uNxWli zS}2:hx@[IC  ;.YatWprQneB;-<PRB)'8_\ut>q >+|{/<aeSoF3r:ZYM\dC!WZv~<%_ 8wEm5E!dfޚFA 6x{t 0#rq6F]sݍ_G$8aSMuhR'a[u@mXPWjvW7ג> gQd+t:-&";D&~i %`EPx#y "u ~23WH}j6p#vRX(̥=VMtxG͆VxқsUɛ#~"AS3C,r.̑@efeOD߲_+,v<6~_I'O_U1) bs‡xObɑjCAư|%J cPu7idY'|ë6!G{K8 %X[|qbgmZ,5Dög}076PCr 3 S 񠘖Ѡ/jb*vζ)\Ox|g[")nTMXiV2VcSG[%DQd%`0WL97߶O-92ht0 `'L/]F:+`ّ1ʣ5_J)PgYѦcUQ3x. Aѭ{*[ߏ^xMƺWO*hYGr$XnK_ŞV|D4e])h~?/vЭnG!ĉ+BP깗`U1]V6}!wN?ې~i:di/"+ԅrΧpb6b^یBsYgfF8$QAȯ\;"hr?KZâ`?xrZ {As4R3%ة燯,z+9F p8Y[ϴmﰙ7腟 1f+I' ^рfW#*KG!ms37iL- VxyZx4o2#dJ{G{`<2FZgѩ4LsmK =q [)<,TAL_%*3Q`+w 46OWS9zj4R3}ʋb(S0{D"+& ԓ)FŲb{ܓd3(y7@/#Tx@F2JveC z TPq`bܧ"+ei|$Y[) Hע%ԍ 'T)i*Ր@+eVr&\"b J(AZݶyPAau盶a/?ޢʒ'7;6ӟmȅA+xJď*Y"$\ݥyx7(mFTn#EV/+z^n -]q)9[KU9M, \Mh$w8w0%Rh< n]STPJF"2/ds;n*Te>cMC`]]qDCN L[TDD7>e ~c83{"z ӹ29s Ḽģ̜}il!Eԥol#T gwνk,4WO1\Jdeq$ rƲ^nQoHw7+x2}Eh}b{=wj5oGxVPF.+ u,346<:F6:xat9ǒ|}F?HJ|Be´'L~;j!k} voW~g V?,РhZqBFB#, ]Rw :ȸQߍbdZx:?82%8x?>.sIܭX|DL0"l}&eY4aݦ +"$oVpDV"+WS0X=I<>H_]wyk}F)qds~`o2ݦh*ghZ2;`cQ5\^؊Ia[& V-ֹIsR5اxfwyL}UʱC:E$=$g7$n kK[l##E z7ܪUm=a~EuEJƉϔ"[ N̾KS12'@ cA0P( A,쭕Nн_<T\i0*Ky d9 1 0\Z1BR& VBn.xCjxu  k (;AǙ &3"vp@iŅ 4%[%5&,X+ oMdM 2ɟCR-u=wpL`>Oͫg'Ng+sΚ}<&Փ١ i sUejz&Y\s ?d+9!roܦ[Z1\T/,d%4.%2=me> K8пwayW&GBcbF1'# 65Ƞ6UW7%]P J/48";_*caz^ H0٠O3+_X8ox )tz/`n $8a/-Jzu+OÆ}uVK`0=1Jl&36)Vd{ay~*ǁva- friwUb6v7ʳK#l~JէffYtg-uZi΍IXq6%({y] `r}&Ʒ81 ́[Ʒ \e!<2G!݁B8fwpĺQKoܧlv[}@֌/(AADg2Ev8S)SRɔv ?xc&3f`Eiݸ@!; .s戤@kx\ LvqL=3I.oZ]j0+g dR*JRSØ O!'SBqFn%^g$yߏJY.KdSߊ'A5x;FyZ,b6f~ $+aාh=ƹ&ĔG(P/\ORBM^yF94]IGݺr.0BW9-so e\*4jI)@?S@b&dK&#UBRʨ$Y0@:4q ձR Yq6%pkV.!r e2w7oXAiqz1[ CaX L^zUu6/C=e$fG׵8 gM)P*'6 R +To꫁>j*@S e/dѵR-Zp_:j]p <U}u\pkm0o5Q*ɹ4S?u@*("s:5mr;4V_(݀X4d?޳r--LV6[E6\I'm2{sw봛¬́NK^N%._|箽Wpktʀ"J3tho=S l &vD.`q`4H9H6)X/t`ܽN>Џ>Vm^3ڧN1,ik<DխJP!RTfL D,՝>qfL-Z걫$мEK'? .ݢUC+ˠB+,m\&o5h8YMUЖ,Fj qH #ɊVe1dz!CH(E22Ut<[GnSu* e:1K0wg)P1O EՋt#'MGNF%x#G)Qu =4UB=L"fT}#1([g6lֽͫ$L#QG~5@[K< :D"Po6x ` 0ePraxAM5NFAF, }$Skgθ]cq~j2eK9BP+~%&q8"%1 8&*{X`a6F ҭʕ9n~uRT9,[Rw`ztDE`@LE'wQGӜaWù䓉rR,k- CS4(Df $mNW}&'ۍa _.@]Q^DqDY!h/irϹ0s՛#jR8xZGɼij&M/S'ge%z 4f~7 Gd{eG*D0e,EvX~RNccW`o"ք`xuv%Ι~j JaGΕgJsu'vFhش~i<]:cZghqzm4)M~SZ,ePs|vZhPя.+{*yb 0ּ(qƂG"Mo޸"!O>SwE*QddPxC&Pq|\/rIDۯ#]g?|Ri1'k'e_$t{{%X+F+rqd Ad_۲S|?_QR9 @ ߞ* V-e$!C4D/'P%=&'@/nyeG]9I+jk_5 NLmA<Cw&"l @.] `b3W7:.9m+օ^vѷ ťiu3S Ijp7[$h{m}nJ1+F s,wR~ܹhl؇xuve^F5 XU bZ@w "&YVlpUmo &L.Xǭ)j^NbVHEBhnPz3@+Y̥J1AT*Nl0srR/O~'QDp @{HxX1W08%33@YrPE3SF@h&lQ? ﻛJvĈ}*~PbcijLj޹җ+37,^kej/( 7xdtYgeVIfG4 `ݝޫf??waa\TphZbQjSR*-9k1fJe !|tGx?1Z1ɷpO }Vۮ fXvto+k`m!߉S$Q[{ 6!G!ٺBwj cvm\'4p↘MȌ?p Ino&Iص OmG ' ;=}^ac76 t~dhܜg_> p,QD{~G5` ̽ ԻUJ^g8z^υp& b0T |c`c"Mwt5;R N٘bx8 R9g#:ҰϡǑ*fGI':rP|R.Lc3) 7Wa_o*nd_-;),#*mp{3 環Y\ D)2f"nOnAJEgݠ60ZJ!>nw-i5} / )8[9 c:r{>(Q:|#A##,M|J5:MhEDbțPshf@c҃}5), XLÓhwW2*{DOPm"CJĮ2[V.6'9t|̠QT#&5kwvd X?ܓYp{d(ؖ8 ӱ;pey~ -_:tOz'4.ytegw{િTwɍB̴&(7hki}*<Tpoy!ZNlv9zdcKd)kkpY߶`I{|lѶϝ LEVɐV-ѢAo8]T-ZX[uo€A>]M'1*eF&3]2yx޸)ٍ[Y#zöգlJI[Mat*X^W?owL'_cW)B7:~ 17CQ,x#m3$4[m/7˔%\X! ciH]IZާN`nbwwd~ނl`s3?.L-%P͛o&aTs p R@k28Æ?&S!{xǛ'Uf|lI<jhϝIL~cjǁk#O/CfsGSxR-]F E@ gi'ڬ[!!Z~)x -zY/vV |'ndN/s_@| BbHtЧ2#o8lHsKS]ldC?q\\K,7xZ{r X v5 _s(gdhD&N%`.YY].:wPTPӕΔՆq8=QcWAZ!1 $ὮH1%!Lƪ.<)qe4CV+#"*P5)SJ6y ҝħsRW2SH |^q0 b?]USa^ߐaU# agL?õ 7M}s$F_\&)k}4PQaW;R˝ 8Q+jO1hka+{VYOsZ+4H˄ԑm[;1 cRn&-,9ͰDwFn9E`6(> ^-$j6O?2i~yj>TqNm Vi ΒcQP7l׏jk h9C,9BUAv1X@$S c1twBzU=;f1?I@եHכcϴ> s"0+G8tM:]+%؉)[ VCib*Пf>!7.Dͨ3f7*DVsǗV'b#Ҩ.Ojч:qmq"j0eh'@.ٷP 3sm(or#d %<~Q4BIb3Gf VG9we@y,C:n 9/rmHQ:f9`r$Z P5b6-J̔agWjD%itn3m[|ſ:8a3bof(Oc=O"3mڈH 24w96ahN*/}Q&L쥃! 1 Q!hYiJG1jڕU'8)uu16 a|DmD]ɶXˣ/i7ApNJΏDNo$nyݰiaZI aOwù&cg M2n1?HoRDI{&0qӁH:aɋ:Qi6mCW_ q# M̼ZOEa0@=n#f=IyÆ]v`i Ί<fUbRŜDj~WSfq&="CI{׉;+wLҮ-įci*&NyQi$$]36j׃&|k,uQ l+&9/jbK${ =wtV/,+AjBEpOs{ -'4<{V-cH(DgM" L[VP47;MU 92][lk3rC~b0*fc-3].ĺˏ^¬QAl+iYvUJ#a z dix႔M(j40Ihi,G06cka~y-A$J:n5]-R=$U*"qrB3&ǜj247%UV*c\ԽBYN4!5{nO~81D#l&v.DI{d~| ( '++ZFUΫ<מ)^b5{ȻOfVT羱ࢼxHEl7:[7V?pA' L T)-50?P bF?ά@%~"$DnCSMnϑs.dQq,v@D\]rԞp6w?ؙf!)v@kA4т]䰄; q8_h\ך ~=罙ٞ*XPm#+LNnݴX8B 0ǙUۙ 6^l7OmZduܶr)= 9tf@tVVzrە!gﯾsq⯽S4"1#7 ^~ mK2M! uz@OJ[ |3:cuFX&ZVAMCa_+,}k/J0QBu`zFcn X]8^7Q.#`;~7x9qnsn"sMnLN_kl:,7b?[M ZAp ?EO Ѽ/~h kq0L {-ڝˀwϳ}(_[!fLbu'}؎q @FV^?aE;/WE`eePs]Ƶ}ru-mTpv [%f k`i8?Ua肋Nzw8 Gz.|NWqrDe`iG.~̓WW=lI-aT\ˏt&=:$H-t6V edFwóħT Ot/]t" ~ۀ<‘/Ϭ$;np^8JS\LL|wC~xn*h 1_YK(Ud~' E!A2Z4ubcCB*1o&z0dZ99+9mP%ܚ+[ľxCDČg\W|n:-iWfzU=RF3Vf0*Iה8܎?С9HG}E|Ix$!؉>հ%Hek}cx tS^15N!K sḐmmO3H=^tg ,ncֵhENR,qsRB_q⹬zlT6haRTV޹F  ɧݒXnOyHŜ=$o-)-QO`6)_:~&,dҎTu6We'8T@0*靣/șQ{n# ft>xxszo+CQ H85![6*teUwK :n7 2pe J9m<|mڬhDYf;G(]NTr#pުO83|-/>8Sq3XTw)AZdJG=\Nom.272 CO YmI(6jӚuF=0CmW*% \F)N^౬l=h/.yl κ0*^[nrMLmx t'{CcZoL2jPNF>>5sot'4 bse?X2/g?G5&;L7*!0y.#+_N ';`nՁh0'_[fA 9jv 2/O43v2DҽMI<172b 68Di_b3.zL$(J{+\pKn r#Z4i.%O*g~uKc*Q@iq4iA(İ[rS,pLݝbb$MhCUgI򎍢J*D֊D}S9*8hwE.R=OΤ_AYm;ɠ h`W& ?~ފ5 KkT=wwo@,>\OŤD-;:QpxGDeF&)KG{6:(qbS˹ؕx R#^"tfb! '^<7=IS Z{B'!LėK! /jILEC `ѫ pQ$*K\6fY?QBu}[=8(+aU"oD }gP 0ܮ4JC1NvX͗3Vhۿ۱ܔ%.)vql Ӂ7{u~";9%tS٘Wl Rn_Y%@qL**2bC*H(*UȋI#䘛j\J>MZCy檀 wNםkgՃqT]s]`Hc iXO.M(vcS SԠ\ $V8ɃIeiw`b7{yMrc KMFNCPAwqM\6Yhă4YqV\F\I҆x2av`0:h7,FQс+7'oGX`DjCHZјC6Y+ Z9 kVJOlpǺC_OوqKG&qj9(쇺eh'1B~)hd7wC# o9ǕxClϊX26Ry bCL sW0p0 t;Ap裗X 5yik 04$~j'/{?V`P/·G%HQ=M[l׫+/gL87hKq! !݀>_ʴH:8&֖v^˅x3I/#Z!P@Ց #nW%A'J,K"[GUu'3{.{&ZG.I!aM$ .id_s<9UV ;41.Q#qY&/Q"bX8K!WdfԽI9Ya~7f [3@"8_XZn*;Tze~f*5bI }m9,,'nmHET+}BM+HEZFiB ?ڿf9 9GZE5 OLk'mJ[Ghu &fsWWZvi'8SK Ѧ$]_K;}L skid~Fo~@#lҒf.0H[aۙ B̅#)&3{=pByPDJb;hQLv.H0'[vYE9_D9R݈^j(4OU> BAUI(ٶL =?66%!>^]TKoN`nUǧ'N kH{4"3t؇ZBփ.3cCVB3<'RhmH9B/kE+gPxn{*cQ9"BohLGZDc# Od}H2K0 /"rBUxbHFNP7̨ǒk]*uӾ.<,2$'W(ڈ+M> o-6)l,rբ ֽ>b)jZ$\8^uwdݸwASNsDS5~*.9)NC~#r,gx}ExZb"$E)̣wpФ2W>7~ju,ך7twi^4kjmBT9P)CVE!5㱋8m):bTAYad^kIP9Y-8Q#}~TW[KRM^D#bHPC;@E\?3C/ۄW巌2#ϫ;ΐ^C0MLa99[h[h] B5\|֟Je#3l*dyj4$m(%[{U5; (߾)兹7q|}MؒXh(l{(Y*o_kS;y[_:,l2gBj(]<k.%!}~刿3j; gT޿;^N2M5D[L̑V {o|n^Ul! j `B[4 J ؒn@R$$Ey/,ٞ}J55 -(-`'* bKDoB8X*PtתyB R;\釨Qy~)r"n341rX5˩M0&;Ibnjju$Yo9feUesJۆr[͵a=;>O%#DW_(4G?/i$-<+2?'UN![JC`m=PJ" p$s(_<9e9\ټGΧưgX,sCnH¼+}."t|S{J0JDx('S|:!V *$IBAM1еSpȄ0:CdWBAFcZXy9G̳Ѽ+mZ!w'1;QB R+ 酱Ѡ#;[s! !,4]nۃ'AˇUuR\ɹ?@UbZ ?!0Hu-| *; HͰT| PAp1G#֫.H`_~oײ3^#۴e-62s H)E?2JxwuIj^s]'c i،kq/u}QuY`8XL% =hrTU}Umȱ"DlP\U  M 窭k]A>,C_[ڜUѵtЏbM5 Zv?Vp+9Gk亇Y.Gse:7?b7SdbC@x},~ y"F qΘ':G (PR +/͹<ր;z軂/RXOF Bɋ"7(\yZ9T> o`w CgE9 mʹ=-\Q[l=@Ku8^";Iy%VNUF%Ǎk6!IHA/Izg;:ݞ{D*8= ?NѿAnm(V0࿿̳2#Ee? jO69͈c4{/ ~@1' aU3{}%4|KIQu%4IgOlH.}IH=@wvn {4Q(i<Ͳ۲ ~ I f$xnSHZ] Wӥ D }AM%CݓaGWicâic~aT_ e,G[y_[mq0o$XHvC14exBcfIYaXjGm()$Ծ6I.|V$w#Jpne4e@&%ڮ4tq#O_c_[ #/j,.]kk?xS;Y ΎBgi@rppH% lO+\D#znSx U"R=*Y]x430"`)+ %1z Bn@ZaUxcC|l{exvGPN #Z7$̽.<X\3)Ȋ6u⬼;@ T.> (Usȝ;cHAnP/%OXy lmB@h=zhӔ$1~3 xE.5vPps6` FcF;,qzV5{.=k-I߹7jԓΝlCJ/Car2RN m =P2BEFRe11lCuUU ʷ ˌŦX5!0\ ;ں9p6WꍦPDvu)֐#nOW3dӆpwɰa$d$$#R{ P4ǐ߃.7[U%I߫rE5OT5(/CJ-a{0p-e;Y}ϐ3ftuHĜpƳYmhymы*LԷB5(yj?!9B 1nx Whm( [H,Uv%|~)ФFa5bzKm6A)ʃ}?iS \r?wj3{m&5>t=5 7rM LXH:!CPLkMW˷ۤ&~nNB5D-7Ɏi!9B< 0=ڸu ,!A 5"; RMs%:ǃ$C.F՝{R3 5= #FیTPF/Vh.VZTvj6{N>b$Տpeo.8=(M{5c'FaEje&I>%O1 qrȖ/F C3ӋRXҫL~)Pf\Z p%UZ&}?O-a,[o!@*ԟ@#H2Ԛ9fTj0r%՗.5(u(*bʥPJz0WiPUoI=~Gy%D'2F~+`p5z[̎ k7ggs9fhקzêB~? ɆFZJB9, ]DA6,9G[Wҏ5P W=y ܠJrCFw*mPw;Pc9Yoe W"NZ6^v@0r\^f?:Njj%wg?X`; I6*r9-5`L_e&9?ʳ33P}$MM Dl| 8j {2p>'hLGǃ-o pU4{!sn"~6V>Uy}0]IiR?hK$rԁ^e1HЧ@2u2% r'8`7"?H odB ٞHY *k=1 T}y^ec̶XXEVo{o萚һ)7>Gq4fzK2Mhf""+0ϳ#a9fCnj};}S5P\D*|JMu'Ut # Y5AWXm~l@%^xy ގPY ]A` {޾k 6ڜke;_2-0ʹm-E$^8n%' @l$?F^u._[{D{STʿ%6ܾ 8HzH&#s?VcC9K fB1H.9鮤{&x@67.!v;| 0OQH\ڌA\! [s+!Vr 9EE#dnwQ粶mk7s WPJRsk;,*gj$ޯQ*&r5陬--ku(#놹ub6|xS5V=/dڀqtYWy՟PqkM~a-ݰ+Om.-nm5S~;gyT.h&ځJIt~v5QkXuP;LtT_u{L$qa/I77 Jm=SxBrMlWR\66idlAO8'B Q؝@W89Dw9ؿSYƜ@p* n8b4SM1IMji.Hл%gŸF;{PU&2#'0KI5O%ʼقuc9Tq:栗 XP赱4Cׁ! Ua;cc~X˸"3UPl~UH!}Y&&ڶan@܋ : @l:_ #U?juvo KQZdɒ{Stte<5 ֔52Ȫ:٤)5=q518䡺ioeГ79|4yq2Cse\nώٖ $kܮcę Qcs pΫ:ԜUVq]6G'qOI t5gE{pZ>z)3q3ҫhxƂ4w{ w\ahf`ʛ\<ῂ/'mGO^;uS,锒 ;{H/CA Q3K0X==)a5>8̅4[f(ЀʛoZ".է७8w5!p} A1.!lp%Yp!Q%Z<hݑ)NP& ?Zu;ᚋ u8;3S^8Aoo~gB`<0H+iv[최}Qؙ)E$B2eKӒ9E̷7+u~D6?uGpCt,|H",vi{vryADdG-n({>T/mo)˹iQ~}qDX7k7&[D ~Nso.ze)~o{L@7`Ji@8Sׂ]b)8 2LGXh^$5Ɲ^4 A#[`I~wh_ޕA&;ޣǓ08 8[''yTw!&IG3#4͒~[p[V8<̡d%p[9bDU;HY yHvM4P2TlmZPnH2퉛 蹉Ș> @D7$!GB*A< YR8\gw{+D1T(f0)C4ɘbU'X4a "R?SmᠺosUʰ9>Kg²MBJ̜PB/{}|qxĶ:uazk{n`=WwjKseo`JñnC*9)b+sR 4t QS?[Ϡ ;OjmeL3A1dqĺ$)yL#ޏ"Qş@nՎ-X rf-q{0DDa?,U?~c0rK3_ xljq@=Atɨ=a-Zf% ^#`uHB|D2< [umfvG*gà/w&XZHato3:q( 3vjr|gn{S+Q@@ab7}Bz4{fh Tm? DjPGp@)J[ xN ›)eK}uvD[.%waوp ;PZBYE̕uDBUUч2içҠH=Ir^3-(9Qh D /ЛEh𶋎q( =AlQ/.$s=G5p+dWv-aq2D_A[y0BD5Ƥf=q.? Bs/(5ސve6+q&Y3Kxup4>Z2`rh cCbov77OvJaNV=Mairݎ~YFBgl.Tx%@1(AgHIEY?J @{Zuy]=l! 0(-ύPL^zwe 6nxqt1#@T9)bd=Na~JE=4Бaa !#` "diԒHs\T'{,<}Zz{lbOtҗC΢읈dnA36̯&UK6c'ݽv2OP'PF8;>ٻZΏNE)8fEgߖu﯉?1(1[G+Ef ,1li5$iA;6H;H Qm{L{܆ H.VCAlP).w=sڰ]،B8a1˩y_H 9'1[sǃƨeZm=sғ"L\κ̇ם~Go]d(3yIt(H)A}A6cTܮ]磑B2vhq4@;HJaz2YlHy#I%fk[|70gu%Dr11ć![o(qV]!3Y#hMH~xxW1mx^IżX{1Rc%E)<!Ƶ;;d gt@H#y4*Č8^ ;'!uhpk5ν#(* 7\:H8Ϳ<%}m-U4 P։"Բ*rV?P7ca:u$䊰U4ꍏH+U^(:㺄U)_0%C,'2J$STf1߹[?4N_h5́ S]\-gY w"(7jcm!POƗkBvC{ ᘫ B+w,Q$AJ8L!(rY'fsab`_ jm!5Uy*e ;Sp7hϿ.-(|i*W?o?p?,sSi}EKe'<& jq55EL_;q*b$F* 8ЬK4Db'bd'Z\l]o'gLGMm-p} NRàO;OYז'w>h7ˎAƓ-On6!y AEQ}XŪŨz vI^3WJys4VJP3b "zh9V0]JW2M}r.Qd뱿:humbۯft ¢P۱uմHnP=]ZU:,^=!]kUt_)+-\8\#b] L=UU+V0 qc\K"tqbV%8]\+MX?j6 h;U~&c|ٗOٽ*QeS?i4o!-JJ O7)w$ĸ xٱ#Ebjnv4hYĭd4XPˢ)6`w7ߨl:;n'IFy,-nrTr#oV]Z5=3ɡDt_id)g/ }v,Z3N]EYjM-C|zjҝfHHYJyQգ:{6ӡʖ t#?gxƘzhg< x$? [sAEaƄoa>T@:$ô ܵybMǯ |y 'Q{H; 1߷ChY5yBEZP6תG \NYX . ~34jsKǮ2'dBa/5l8׼%bYM]4{Ϥ} hw8-Y7òOMDU3!a֪°(4AXn-h$Dp&1<]n~g/N똴58hSiնL؅14F0U ĕ03ugޮ05!'b2M#K1~~el DjK24Sp% ^6Gy 1c׈Dž`'\{y,q#h5 Ld'r{T'"4 L:W9D#Um׍Qp{a V'\Bdz];o9u >]gO.a_5ܡI#nl˚SZ$bI[e}]y-^M(]My*N|dŐq\g+J!YQ#K1ČC잼Y [+F7Q4ֲG%>Ll:~B؇a+1CC6acjuo5=lbJ}j <%tYFRtZ,x(d=i_uF: ŖV+)h3%˛d Q=ӏ2j?B)0Y!B_ 5<Eg4dWi=o=t!j=M(LIc e[Wܜ \Ð1DoXT1ۂ=(ݳ$ @nv.f"7W0Sq-yJJUCz-$/'zG(ǶUև;bFcR&p[߾% Kۮ FI}5Ts4Ԧ}^uq|&PGUA 6  dsC%r8'o F'arc"[]cTv_(G@M#:͵օW 3ڄkX+ :c3MC n_'bh%o@⃳/xT}<8a3N~sySS,oަdָ;G)%6;Xa.;឴m!%֦Dv|IXI@M,JGWElWkzg8.9u2XF 8dgvLhƭ*WkF[&o\΅WMb*ڇ8ed6h}uc+!_ltd xY:a}z!M"Hwg].a50|}65Op=]I@TaC(핺w>?3F$dy|w7 -㋰Yο[Sn՟k])@BV뗑9azF^'F]!vu/QRPd$b,QE@uY8\FX╸ ~ )FӘ=!U'އ01ZV=L/K 1 zFJ LcWAClB%p7@v I5IĔ=$N'Dw*LL^ BܰC[JIy<shŰ'{y1 "[p-*.\MY[\q<!\$!Щ,i Q글E`jLdOQ(8+JSŹ:Bh:7MSWp@JGca~T/};}AQz&l\l~/=5X$E|ƫ6DjWT5+ʨY5uk/V>)/fIS])xwhCEb-1P}ϴt=(M7K[n 11\U8~SFj[ivLDR`E-1tƠ 2IIX&UV'`0Vz|kexp.SzZsҷ݄׏rNZ׽\+ R!|S-x׍>'i lxJ*' . M:ˠVwYU'xqͣCɉ 8#:"G0cZ^Ezc ]dx (5h+ᖐdEg?=3찎mбxX@3Dv/)6r2*7rI͚ӎUVIZ+Y |3]*^>OYI2a0)^>m0G,Aѓ9EȋAJp!6XY4:#Dž{Y[yZsw^~.´dbw0DM(hD_ v4'+ABXztcrheQ}*\}yuVqjS/f6L{0.%ؤaw nT[̚Hv5 p{l|J6ߗ">(ˬΧ|PZ|W dR r>e3͉Sj*9ֵr2ٜ Vw\HQYe wOA*racNƣUZ{Ϩ !v` H!RiL_4nTJh*ƐNjsPA9Jźqvv w|Ͷ ⇂]l^PSG]\:P쫢\hV_"೹s"23^tuՓq7P"[[bD ?Qa1&VEY?X_M񣩂 DUS(wHJp۔ )Vxzg|6L$C Nh:X!~w5ve:)VC!^tK3H89fxYI!BOAf20L4XB,(b\](YUM݋wXAP hou9THd;GW(H%!0Њ6a,4"ԭ8>r'9)7ogfLp34oRJ '_vQG Ũ e7x.qC*JoQ/]|ZAu?rCw)Jo;by<\-2}MR,:D[,]tgN* 0 $o^!o0e4]/-uJ+1)f" c1Gj5ؔ=D}ХoqSUy6Ԕ\gxw?h϶nFNz%lpx{Ojy_NÓ:ߑv;*%_27F됞Zb|6 2F机;!5@".Y2Z'u7yF7*Dg~ 'NL'vpw#|V#`>:ktB#>Q"d ;Dxv'ܞ6jJVuST_x(ĊVL?ۼsRyz|l`R05A P^6{ݲN!Ѻ>e3hfz_]8g1oƲ=9*{ 7 u.A{U) !ϥV*B..X fZ2ћ&͸cܭCGkPͩ3uK˻2;&/X8g}MRYaM] duɈ-^rw/MguknBiaXaPse'd*~*GzĂkb 5aEqQw=*@ sNU{ŃA72Ll@sei-%R$_0,vWW$BrriUstᤍS_]xE g&fÄ" kaTcZ  q>6H(`_t1q5\u-* ޻tOza̾N+DY{(-ωԊסt_.-bNZ^Iv@yk2Iې G#~Q;L[^B>ˤ5%˄=5)0D98;>K:NQ(ڰ@wƲG`ʶ̮}x1+/TܿO1]z{ݶJ8l1 ?OX8*KJ-1 To ,/cJO,و2cdTXFp\߲!nv4ZH<9^˷sO`#9~_SYl&q+V *VfJǺK#c.Gkc^asژ@עق \Y㢙2X貨ۼ WZE'GցxxecaCےQ9YCxW%qSR+syD2"T%/x|+7?;\#B|"}4͑>OwlJ{1Dg:a=c6n!sH~DQD]:Vٞ:)ه zi.!)]&;]¼vHq; Rhx/78}*/Cq*ƃ XQP0qɣ]0wUmוc"xI0?8tnkV*; E_n;4D[jNgr,wi4̻ :M<#MTUAx@' eʈV~ 5H%A&[1$6$^?y[ֿJT^tE`= Ҙ\^5=CYG<3k;;VSF5&{O%ir/oGOOGs- ^NWf\B*moc̰Tlc嵸>L-M0 =(OOn Ȼ*r$+mR",D,Lr8+Kw G9O$p#Բ5BP .$Rc|%OƜ9\AߜAq 1kp+`1"YJSL.ewT2db1((ɦ r53-O+hcm:lo[I 3؏FP.%S8ZFwd ԊdN&=ޤ~:dzk̀6SqToV2\P.NlEjp-} _)c;OYiuD^.3NJ~,u'J~6?նTߢxLN'IOIkZKoSm]r=h82׳Û4B/HPp7Q}8 "L8 oHxMLeւX$ 14Nj0p}R:̏Hq 3]:*H)u%ݡQl|U?PviabOgu25kA؉؍ #cʝy|uP/vZ3-mOѡߊH+غ 'ၔE'Uf?wΝ6<Mdcع0&q> cZ@A8L+؂û5Pot 0slINq:rxUҡH*cء;ȭGk1 5ʕhD5[HR-Ymez[Aįk. g!)ߗAc ۬1 ?yUK>N3D{eOt?yMNhelfPå+@哭 W >ȶj=Zܠs$-]s*۪Eav(xS3?/!mSjt#fϏ/8HP=%•M5"ުJ$FyMqwQtk]:'5F2T/H46ڹpy־irת\U )+>3a/?QF#Z]ZqE7c +c|vmws̷+1s-nI>L 7kX]<:ؒ7<Һv\xno} ~P i#joPQ{tƮf:Mi*=Ջ 5tA'ާ@ϯ}FozEc6Ze15E#w6_wL>r@(y]\2M†caݴ; Bu7@KwIEx-*0ζ'foDG!Yx( 71-R6ע&H C3Y32?~jaM(_JbUYx-[eZ*Nc+-ڠ)%GGu؟H|pt](1_eMň6<] F*\mN>*[CVHkŬ&m HJ~yT%^X;ЗV76cJ-O&LB4_YvB&a tuu nQ,0fQ73-^n;-[ÇDlRVF-&FDGQUcBUܣ.iSeL1U,سT -IC:5FL!nta~?EVbxjT. vZN]pDu hIw_9qqs(D.|H^37ܲ5&6;yࠣej*rZ]62a0-JhWzФdu\o{GȰ"ؓg;թ^cMY6}4G9@JxxIǾS ve-N :sm}:ݎ"}.,RoG^` b6.ToV,G6+UNt{*j\:g~: Z9i"߂;)cY3ʤu r&IRS?%1w$m'cwXREhD"RJלK%̌-C IȎbLx$͸1L;cif+͠??QIT:qmnS3oVM?H>Rzu(׼g5`HP8cC XP@ܯPhg AxV1.Gr˕BhɎ;MA6Opx-p ͑I rf3j2;Gf!X6ly(c\ƄmIFSFqCŀ|Žb+]` l̥nst[Ϣ(rRgP=|[VR%P;ln6ڞRq't6wN\3*?wZ(]/Ko[0HhVQQ{Hċo513ԮU%:l)r_1\xx Nwڿb @ŨɞZuσSr[ZX:̙-O5ͅ*C=`=SW tPd'˧6`TS47iadDU(-53'mz m96db pW2y$zB2[;jP6P=ߴ':"b^U {h!}0F.¹Hrl(Q|F߂x? 6DNMG(&d !Gc.f'Gp1rWBꚋ̇?-W3Kv5caz[6&{œ?4ZzW/ݨ@6 Ѝ*4@P菹L{ "X`Jx}} Xv{rX;$#=Nϕ"C0$LfAGN 0>qA\f(#3zbn6;_M i5O@x `Cx7<4] b[=^WdK%kk{V ȬQJ no.fPbuԴRT*r}\&ߌffd+ iђ}D>:Y{hrzh{#Utʃda{'YUKRUP<# 8i(ۮ EEeY$D(SC+2SH rnF$s{`T\(;2koDhkb^eړ#So7 V4Ũ/^[le_xlȮc.ӌtLfw n! ۨ ^֢l9@8GRr+| hGSD' '<Ft".H`\8X OC\25+#=Rb}*Y 9B SX"qWC3RDivgS91/Z쌽GZ}A0xOvYLa'ac678|8Q3/ÿ+8aR)Ҋ<ӉLRFJV?"TM(/rABog,$*B@;>*wZ#ZHm2CWgT!`^z\ӻ^#ڔfTWvzJ_bTn\Wj\WA[aDi2NsU :#Y8β?=ЩBymI2t"ӧ`1=W:6wKkM|2a0(hX%eq}<\a/zDr ]9}x 6%f\x%X$?hܓoYg_L'WƤĀHa'\ID9}u[\m%y3cqcp7,}R\(l-DybKϮ|y$ k$ޒҒ/ ש]*1Q6pTa3دt * [k儱,02:xAE$ Wr_PJRɲS3_$FЄⰈVAcP8`)wE`G`Db8d"Oܤ汨F6q'Ũp{^dGhuB:P͌j<ɹܔ!FF}t7ȵM G' ^E4ljA9N _G^Xѻ϶K61KFFJ99m&4GsޑOU>3(hd?R$_جt!Kh9ĶpV(vXCo5; CY2C g0ݕ[b<;)s)J;]]""SQQ l&L*[7Qs2ݭRdQbmL υƃzcH  6?$#GBL!gaECPwa5= ڰ4!xÕ|>o t-x)7FrZwH}.\!`<-[h]/Sb4|;)f4h_5y /T6!: ߲LwetڊFyr~ΥU=d6́x+3όխ 6Hom9L}[kMĸ1>5< TTKDn_ʗc8WՌ^W0@iR#$P8#g#*5N߯ cloЃoۉPOT /GiFIa<=\$d6!,90*BpH9BV&S>-4q"(?;gw5FfWt+ɋr`ۍz1 m\&\4:~ި%䃅1+&|p>Z8r?ԭ m7aZU?xa7rltEXyn JyDjԘ y)U$mB"Gf&[(~ kbӎx[.D`D4>KCݶŜ9QP~3 w6Bt` FǼ8'ǵ*\ O9as+aGBbގQW%b>8qLH_CmF.1'.*A^R-9#8W@yRl˴? |mvšZjp3#E7A*zq*[o}pѠ| 3zDnYs2|`NimѶ׳$^0Chg5+ZV('kܟ1п*Vy%ΆfQU6` ZBC҅2+Y=NƦDDgk+KWm@Qvhk-YmBflL˘`sn6]iP+SUV6 Hf$K* F&-r4.oD%DbpZ訸2qYӵhybcҥ%2xs{^gWM.*&D55${G ę޻r(PrM:7iF"xdD{zFX^_Qą mZB]oi~%*rAG;Ӯ-s/8Op^vĘ-}QA>D ldЄKԛ)>_ Em Id@KLۉ^;\\`P 4 Gzt֠+YeZ異i^wůio #' {8;!#}to>0e\ rh` fɗ_0o+gK!cf228>tSb $"?ϪyŌNk w]LySK q.rx;Tm%-jL(3ZJ;*ˤ6_Rbr V 4-i P}j\ɪ" riib*ώ?ؘ^(6,& >/gJ.6p4buj>4UFl=ck9 Jt4!W?맀@Nuҹ SGn }N𥒰 hݡUff\ q>!tPʧL%WjC?& Hk.8>e5gMU`r X9okݿsq7E~VDFav@*93gP5ٗgKB8[ ;c׺ ߭sww5ʊ7!~/TuxA*j('Sҥ+:dS@]qiOǸ@ )jtuV]N0~/',#R^&9 CFz Wt^؂{w:tnK1KԵ5(R\?_}wpONz|\~a썦 UZ pckCkT2{s鬑1kMM ]beD%:b }KBT!7::}VUl\fDE)_&Jy>)nʞR9}"6`g( -d~FBCuN~(omYIOIcgyB%`$oeM_PX"~C@9+wW[.)kIS+E LV'F˪*mN7;#蕡oU 1 3B.Hj3Pti6_ !eeU˷nݝȦuZ ʌ?!h'c\c"2ٞ ^-6x>7AǤ"QO"ZhRkSvQF/ Wnrvwa1AU}35'hxFϑA`U@'.}%`oXmu[[]3~\iSp3Ԧ塙B)q֢ OPeE 0:(vNx"QnVkf#'&Z >\ZWW㗡:nvPXNf 18{lNȋyXu&!9W!*+ ĸ(WNU=BI ;*55#}kFxJlNyȑsA:io~xq8XAqFoRikhݓjVM: 3+sh0 ܣ=1O?@lAH02a'WfƮ~JEi^".{ `-x'ǜ}R1w[A8atx^y(KBAZ[o Y+! d'vgq 1  WU0xkzLI:QH$C[mej.lQjH=Ɓyo1'd 't w<5f9'N2Ukp%*/Ꙇκ z J:,0cgvowl^8zapYv-xr5GcE J^>R3cGQ%͛%^8` DnMrŪȮ6tV"-q@UT޶~5D'>sĦo#K!&ʱ{+fI! X0lTuOmh88Cø)}4>H.2O7&?V=%TM֮ntjቀXro:5ʆ4~/RV\wj3b>d3q#Cf]1RqYgGׂM 2xf\']3-.5A!AX]i*Bbp3ߒ> Zܙc@.G!]p(]ao,o衤TL-S ]Y: gqd#c"(6ܮ#z*C'"*_QC1ބB- .5dZ82>@{ Fa o7{A2hHlGi6&[r*f[쥕{AyIRK 1}EZLTm8MWI07,Ҷ=HFҠ"T,MSdf]Lő%#͈p{ C y[#8E)LqJanף8@'C#H|εfAcge QfCOu[ᧂ|F9Dvv}z"p|r0hPiS>f^ˁ'~iV>]_Te>KLUR `'u+^X0ANM* =ETi ;LozqҝDWv8C</$0ڀ<qjGG}_+nk>?@\ 0O , i̚2obIJc3~9`Fq2(L?c)OG-n"_8ǷZ9YKXG]]?Li{7*ATa~zGq 8cR!~ZC+-y͍6ӝt?*$4=iR'Zب UvOe飼*TnESk: r(񣛗:ug~BkTjk4 Jn7Qlr`@{N۰1ms߸Aa\S0*!kuoTOo,;h Oc$~!ŊlP2ՠf[L~6u/NI޾QNUck81`7 8 02+$dzB\ A]N!o2rf}J&]i謝o| 5:Bx}#9& `48+MEJAC{WnhSޫ$ AIu.. Xb/=qSxLUJ*Cb].=[ &s2)5ʋL >K\S~F;U]'=yULbrHW xK = F#j/$pX|mDJf|8a׀sUZ^Y3;V2JL"0D:-7=2#odn1axͽpNt"tD ) ~$m=:vLD 2L('ʥ,ͯ;X*LA:TQ~ SP3, ۬~H.5Pn[\CbQ}`&)s1b-{cǑWz)3T>AoXZ!S|O`MSę]UKYɲ1:D bQ{ikD1϶Sy`k MȺ]gœ[rL>5QrU \J{T U¬vԋ/!zʾC 1i X`r29"RKhY&D{ޒCA$oJt^z"$By8/&7vq'\9 `7*1\!|))(S5gg5raP3cVF쬧ӂm]%y*߂׻Ux]U5r|q)ѣ f=ne\,fz~ Gl霨>~cT^3ӟݱ9[\P+f+ETؑ*`\to[graNc?G!+b؎ZvMz`ʹb4xt&!# &6Pn J\(!*^D];%WJ$=>:HRׁZ<`TP ҋ; Jgiޯ]N|9R5(d!Yt8^#(zBOdT}c4zH'G hn^Mg=%]17Az8-Қ3 x*>ا}J#%*}Jy]w0hTVvǢY@][  v$v%juAS}_!2cV0UBk)s*M|:P]"C%,ȼmΑ0@!L 0_($0l[3WVyXm9Id+ZKp0㚃XiѦ>ʊ^6s_ج؁5(K&'W)h.$^y4 S!~] D(T$_([(•xqx4YN]R\ٷ3Ē{!;wdLG0yTILt}LuZ:P36)hwz1\o2iM*&_vH:5ex?ʡ:zHIA9o`vGB:qS E2w Z"zDjd{ĤEC7.מFC9VTQSRYٔωa6 E⼡ *]Iۯ0Fyi|*A G@5a~8GsQ-(Ha@XAϼDRB+:oQ<^Q,A*f_vx iz %ZVjWr#WC4V'=P)ilO>%i|,/ 3%1u[nn Myd^[J432tWGęn(S_af:2;H?NMd&ՉĉBZDYEnwUVyhŠNwzN$ħo71qu 7p~x=!0A0GG GY "`/6W-EdRף:D;BqW̬x՞1&Uo;b?L-ϤKmߙW~,>ںojhu)^CNM{.b  x\@3;S$v7ð;<uмa:)ȼ`[ Xajq%O4԰E*>>6wC>]ȲHGٻb>5T Av~j/?Q+yC@E *wq9N C^퇯>h#Cē:Kt܌uڑ\1$a %e먋˟X{v 'Y^A*ީa>ir%{ ;-aj^%l'½~B Mnyq٭tn Pe{L܉BDn$JInk:}GX|8vcK(iofZAOH-aS[5M7P&vQeC;Nr-Yi6vcɜĎk]-EER~CǨ'@"jEȱN0Mqkxiy8-1 ;4c M #p~{$PߊwtWWae "uGU~#?U,~Hċ:ח= M74<Iu.iXv?̾?iDULNE=/Y3bywVp/d$13Y3#{^G>>0+ j #@##O\5л/տ" ‘ǐ wÉ-g9Ͱ8,[7U#Dڕ`Rѐ'BKZܣ!R]Z{#[JpVp7mx8iS(s8|.)c|yԥONr>y%ӯ4KnS+zy:QyCoafw[ eWްٖdt'y8$A35<ȉyř`dߙMeg\| #޸G̡8nr/?|]"ZNqxhH(B`5~R[GK: 7ZwRf(Y bmW^ Dy=d-7Od1y?xfYnU<9*xTٽO<@LVXJ C={zՆ[#q&RO,dF;^veB gL?`c'I~,0o,aeeXpRxB|>ȪX[AJgSlخtGF )!"P#@sbquGsL0J ۤ"Ax@w%/+lz `AwԨ ʶ+fZ,:;$jjA?cA]V Z 8j/"&rOg>),j4{jt7K]+ʳqfW)fP%%!ÛfPun!΂ J`N?9!f)-Z6oP/czZN?<)8DK[|s0-| _4QsGuKyG{Hz>i?pbBAn%|-;ԄN@s0'y rjdiXJofGY4a(J)vJe Ṽ`( s.jmOWDL"Dz>T'ϰShT8c.N{4H Wjo$}Փpz^@Q/c%w$;nT3򣝬H2qHƽ>^~Rp U>g ޏ=w;2ϯD]ϱC?aM΋|,}M89|yO߭'XROV.Y ? d;8}߅X =vL'9>WWڱYxw]E|Uig}j7D)Oגp l>9+\f Y[+|byz8I$.Wໄ(X}x|0[9w Eq#ʎ4/H+o.Nes,(6 oej BZ-@7;|QHAt{AV2(Nf.Hm6QB!t0&fJ 4P4݉88d5Ÿ.Z\v<Ӗ ק12 :57gCyCs 5yhRbH给0ipe(h/)ZZ.옔]~3d?,{a撈XZ[ͨ+Z&S/;veU^k|P@|#VKPY] 0ʞ3YpB<3NnNo B9&`fZy"V󾶏9ַ/9B3upgH+]. IGߌc ϳJ\9|Y3d'܁{7H HصcE=fЋcӱ|π9;c2[ReN )sdMrlPT}mmSVrXEyqYK :]yW1 /哜;xw22H;-;&(uȡ5$=[턥-l* i!iw@Se&-fyX&vK+oϙ] ͭQ>ܿDv$gV7ZG\o+3sV+:BJ7V<V#OwdU1D /ut%f#|xE+kx)50hCTZo./CK͑"\.ӿs4@ai9GoT!=xh_ &I(Ӳ+-F 'VzݰpWY* YB 'B7z*^ ˔ }wk!Jw\KIW) J|mu˧3p]xk=22s)` b#kT@c©5Q]%V/afa2>ŕjJ_QITӳV:.M]AyVYxMQKSt?J +;ڇW]NX}Qfښ}NnceH'|m(VnD-pe†~pꢢomz pk5„m Tx7Ya :\vn&\l>u# 3ν8-AEPaCۀErzce-7? g. 0M*&$ʫD* yUt2N:.M,VDۡzaخGRN19>V)lU[ 5|k2N_GUK'[a 0Mzd<3m[(Ƣ}f M65K:G`Ì/Ȏ#w[:&EmXmg7_s <&iR8*hF}Nɸ"Gti;súF[z,>k1;qgp\aw\+ nhOTf0{ c->BdIP]Ƀ E+5=T߳ gzYEJ[t2Q&:Xo l? /ȪMϲ]}D6Y1eJ 7Н "'(Kf"rQ]fF(H,AM·n-n8M z=Z*' Ų;g3 Qj=<24F3[ 6aNքbύvCf**vbJ H!&>D-d .>Ҫ] zh*-Sy:s+[!B=;a1R˯Ml_9Y{*+@6ZCMƣ>v&pXeJ]?jiZ-Xt AqJ `̗*!F˝>$p&KDAem5߈r"gQ?jcׅT[$ؙ&]_\:E0Ep=) P *RMCp1%.δDÅ W`Sʆ;&,Rrʏ*SJ窯[ČsCuo‹_wv5ynkg xkr5YD 6N#>_r]ʘ8|Q.; JyƱ-#z=1L5}5<-n"}:Ԓւc G}+ ~@T7$rLu]%=d՚K;΢MR Z<m>&T(0cvfY  m }{7S.v tqiX&<GL3 6 0O ԮDtf\rY:!i~VJ}KұBlKn =q-)9Vjq%ucgn0ȶؚzG5.|#/'^>76i \BRN$enP1=B&s 6at3Xz 7Z()a0;^x+j3;e,ޚ9GBbnoJ3 CH/ckh=[)Y=dt г)Tzl,zE.6y&,:L>^!׶䬓"uN*H,Fȑ%=o4×{+l55*ӱ63QYI3IЛك Tg޽?@\xNikDݓ^l@N1LjE )wUTz;@C|\pK =iliz{8`(*^Z33pxSQ:& PuG*Co܁O7\}1,1:V%j^шM;+oiqꒀd$`+E7rz#,ƪ "{%H嚸 J:>V2S%d Fx5suJ[K)bMXZL1*L?p[*T'a=%mcFJb{Ic4z|cQTu4VjU'kg BYtwǤ9~*"K?5]c5W>~(Ukua9zfsi\dU`ƙls҈ ho2Bɼh8qo_bfUtp_c|U9r.odQ0兝| !A 8bE3,doZ`2iJYaElsRl eBGk|=zWS˿.Vt y񀄹} |F;8jZoa_Hկh؁wJ&g`?7VݕfA!яơL/G, n*N8d*]ؙh{&wRg@"#Psd=ѭL08oѴl(ʱ ZKȡ;.~cxx,12e8=0%[h-iF)[iI6>mn4 >e-hjtO7ںIֽ;0^3@$!-x /5*9܄`LS4(7Ds W׃7zni(L{['D *)08P2O]mj$#8䊀Ks8s5$jY8B졝**frrn*=vH?C70GIUcE+u? :]vEy/9@ܢO0]Wifΐ6X 3C [H4Gg_XAjYw>0lBܲꫭ*/@Th5S/U}%/ñT= >X%A9r(Vl2?Jֶ9+ÙDvO׮:m.Z8oЎNT&~{PthM>t)r{C^ VSpt NwKQ!{Xyݐ1 XȽH`+7β԰!p22p5-i8Y(5oFa,$ƒjI54bqZVypKёЉR+36(pRxn"l bSy!]qo|4ZfMmRG 5(ү944#4mFyQR:SBB~̷@!0R@yY*$$9:Fx-ѫJl&nEPi2:QhvϝMCz#Gp`9:Av·}N81෫VPL bH76+jc!b:w&(n涇 s`mMS$pU+|sy_@c2SG YvAJ#{V{{+g _` Z ^D^ښwхA|j Q6)Rȴ#q Eh; HD1{kV&u1~(&dwuso KE4m%fs x&( 3-Ng _wM"sv,!a miBfq}1ﯸٚ%34іAq1~!B' =u8no$,TQt(aEH 1>}I0aX4*U9>.򷵳"~1uum@ʄC=GbQX۸>@"#X 9phE .:56PCsp!#Y5#$_ -Ct`G4Vue*ju< gⅱ!ރJr,5j\bY.{Y\i+NXz%wׂoNɗXޖ.=~d[?$qu5Shnvg|OR8MijowCRr~a;EM@n>҃k) 16ۺs9̒Z]xng0IaWi߇/$?gAIʥEyo J'z~@5=isND3hZ[`e<>n% |:$=W&yiV, F?dV#p8(y6p `qR;'{ٮ!l#}_3HB]x̱5!GFGr35{WL2P 35~ڮDݚquJn`.¸ɣY8+V *|㱬*Uv@^kBkRJA2kĪ0GCl1?ȫPiW[hn/C ?-v{DcokwMv\BKtrJ఍p{GN 6&#uC7$Ӓq=G|:Z2p4F-n *3o dD&ā 7ޤ"k!^ ^Wa gxrޮ[?| g@TAP6zn픰 tN)@ [7|Xo1Bb*^rr}!r g;Il}2hSpٻQT0IruSOOgiHi^.9=Y(>ߛd7L! _d}_VmOj&*JvJ׸<|$ՙ=@v5_2wCV\ :$lqy4EkɎXx;ךbj}~'F% ԒÛ6DE#GFHVqCI.#T?>VLتNk[4ȔeWqNG5 Fͷκ0?. y+ :^2ZrGhdX" =|֧a?㳠ozJ"'^O'8ƧqGA]I[|0R0+t>Ƨwzݣ#NFy 9'\_WoeAeQl(zH޶njKnF6E`̯ 3N,[Jkn`miՖ8ݠ9i "8)gM3x3o)=%I:ߗz4Dm KQ4JR. ^, 1ppZ!=J d:6D][l H (xF*>۷8+'5Ҳʔ HViDnMZYW=?.%e7ɯX%6)m} C2 ALA@3/ЁKN r촛80>8t7/@YLS;nuΡ2MjH$Z-4"/>u~hT+%VN-t# G!׿@aj5;%i/7'$`;*+#mL*b3n]c64Kߞ%ylMW *vB3ch ")BXɯwM:=;:w-+kNŲsG;tjhg4VB0Vp}Ǚ%Fl&%te:jY"^1iດwm\GrsTА4&}L1='ܣl@:[\/2DIWx#NF / "szw@BKɲYx|N*p_BYD$@| >ӜgZgmFxf>mr`x U;_bKB1Dqjc$[Hٰr\ݍv {/80^ P9 6KK ZQ.A鲂^j'|QLeruzpuvangE<M̜#!wp^qבB+CV":vOWCK1A %ru(ڂsxIgD:Xz*! DG]~U*rVGf!k!hVm8"izi9ceg’j T剹lcJRv6&>)\g(!w7fQ);t,c^2+k(]Gj* :B\<Ù Lf[?>.`nf ȉQ7d'vSVZ}5c̎cRa~>[MZ"hMs|V<=EDoR '&H]tJxCw%Vsd~1~%;cT,wv nl.B#f {e6 ]ĥ^R>o~BҾw,u EJ!s:t8= đuk]g}3jCG̢X./%O.e;GCFGM&;HGU*e1;8-%l'$ 1Ѐ{st L3zTyڐw=(4.Hd %7( 3\<.p99e7}6ļFȹJVYSaffґOqG LWdxuGuBO~BD; rRM̹F0P,{4%g]kB<\Ar,=C?<8{cLk Ozm*_k9.6 3L%ԦNzc´Yw߸$pGJ8MYPEQ!;`O#ఞL 릧mw* zjR]-ܦ|0/HvQ*H^3v4AX.M[V".QK)mO=(E|I<vb+Oê|g" cfc%+ F@wT)q˻~Ds"F3Q3`~uIuC<}js%e|!1(#ԛM^|Ǿo]vXA\T'K@u]TT,8X',<}D ~g 16ҲV8% ܅:ΨH{C)8/O~V*F̹lD+d9vz魙Af”Ċ> wЦVfN29ĺm>vik5Q ͑ #@ֹ!w1NGMI|'6*[@*.zЉ魺Y-"^2!z.K+ݺ*$gdjK mjo;!1X dRji6OdeMM. P?oEꟵ˨pdޠ Czr6 Y j?4e)/E(5KGfy{ mNOnQZ%|AO6.|KISV!lחag!ن'>sk PV).9x@Ih;LF{t73 FR4`ٻ&Q$=O$e:CNk蹅' SCuBg٣ZǍ;^8G0\fcL.FT ֣Jfh^N~p= -RL=Z~ .7Jyg֤]w=9e(WE.kEHŴgߐٝ,sD|TDaq. (ydU#݁t a1!K /J D 6/vNqp<cu=祫e 78k1Ixh3 }]XMbb=8!3zdCDXl1qI'5]: XDԃ%%~) ([ESfT=m}Kj!a5MXIKs+qfcN;-^AK2O%dlz4s|@h~5\vwMAd5wB?3]2ˆקj&~cDeh3XC#1spŬOy@6| 6Az]ȥ*Y6*ߨD͊QNN{^nQ"Wc9|T 'SZfbv iw'i'}bO5/~1i &u-Be")' y!0ʃd[w]1.cg?H^,-(T0L vqT@QHS(T'Z;ny Kk-ds8:K;;^az1wQʣ֗HRG 0NF K$(СQD+"ŷ ? \6v"808FaكxX /3W6}PjJ߳ {9C2*5+:q vY( 8ub/sjDTN?C~N&EMIq߉il,'[ƌ:B1UH Tה⦋s7:b45>'Y9=Ž˶IO48=ֵNJ+ߋރ(Rkfdʼn]Y:㑳ͣ]T͏:2>NH(nfA=N^  6Z ߃Ϛԟiz7y̙mI!dbDG֐Y2ry: k!;« NBVh铀Ӂ圀)$KСcVX*M!du3K0.9啟&f!yBodN6E1%05Ua!ڵoA̐ yr};dL ׉ÿ#ppZu)Jy)aDU7\nmzՄ7~h^kHcǐfazz ՗*%L`ȫPXa%7Aٺjp@'Mi,֩Iv$C6.>dn\Kp!b+iYKksˡoI ~`28%}jefX n׿i1\rq{Ȩ}FRjI Q}Y_!JAVi/C+.o)1mm0tRH4G:z vMԗb*&`=]Qi)DA{^ pw%ڰ, e1[[RCޣ85.Ԓ!*F:uӔ+;P2_g+ إTOhw",DTTjVPkiep-EtaxtkX^[-5ث휳ιڇ[E S&da9ڽ.T97{>mQ5B7I,jmE"!ƭwN<ya FZ:O?+is?f]޷}|S[z%be3!nW^ղa;5* N W'=0BM7{9T#>B⣦|8-셮|!zlz$YLQAװT(ꊎmZ&$._|*,˜8[0BAPhm3G:?g˖x5.yG֯` 6<05Ot5bj"(OgxwZ&w)_ֶ" [six멈YaT^c"\K%%sY YDkbPDl#h},n VEj%~Ǽ5}JǾjKJ(N(evpY-}T֜Rө @2A۰6nJCb<\%jB,~='d!z.LR6~)2zCWy:Emͳen҅sN DHغIS{[X9&7RQ~ Jnu@fġ?"PZd1&ٸFg AtFNY[\`9D1fX9 Y-Ac|:%b<`THU=ŲIng3"?5`.oe6IC7zdV^0E~ }1}'הPcݵZZ\xA»y=U*oe7pi~KbΔǒTVKXJ¢R1eGWtZH uZ? >9Ƙ+\b䓏2^]ʮQ"x :h/mF~( s}K[ح+{ qqa2(i\j)@;uYO e1F᚟rPE)Ԗʇn[d3nʅx86,csv䀖b&SFOa GPYw/[ Yuq^(Lk .KfA0ڬF.A/x}uj_啀P"E^` /mu(`}Ѿ7x.VIݨ)t r+e*l`0J^翯3zo`xdg9Zv;AZS"moY`_ʂ u{u\uMƔv9fP1"cHW} l$o:1f;V$WJu VB𚝞D՗$l̂ZNL\MAxDa]nk擹AG9HxOX^LoSIYJc\rQՕ9 9yWXCLK6o1vR ? WiO忪p܇dп[^β3J#yQKC52X7r46-%Hޣզp7 G+..l aB7p׶'&(^UԔ❽+7hcwXXmcn V#oF!V2ne'En ÕYIg{pZLad^8Ij먵ҏcvȺyn k* hXz|s,u3b%tqj}AHgM0R﷢c _Ny)̺,šɷw9S$*`<~@k<ڛlϥVz9h`@FvV 'v.𿬯RL9v.1lM?+8&Nq$ˬ(3\;dJۢ<%>weU=YvN8Yq2 }esA MZ.1}C6f[ o)B0?8I9mhft*r_Hz9UIPA8D/exfP5 S3o/5Y :FxxQ&ٝ%ne1!pwX1j( :%ANym>A g 02&+E/Y.$i `f +(P#ZxϜ{g}.JBQOǻqb-r#hPW08t P}W>`jUb Q%p,Awi^gu ۫,-٦/U4"fV;\=gvߑv/v$NB6>ep*.%J0;y^Ꙝ1v˪6"VdJ on/zDwF1G|ί<B^+5J;͘E }>^ B)-ꃧt!.A2 =#'۱7fmXӉIx gh-*/Qhy*O,}}ˡ# T3u<:AkBS-\O62gk*,U8u7#nѲ:;|bb!"IWtf6>M[m@GɼLLqaڷu+3R&FcZGs,!1Xwҝ$:xח H8O2+hz5̻/)#59kQ^L. FY61My!=ݛ#ϞD,qbע/]@5 '|[sڥ%B%4² pMFuHnd5DɨEn_6??HQ&0!]:;|ta}n6_Ԟe] \ 3R' 84)oqgɔ@T $Ɂ#Vh{$ I q,'H[?Q.?fpȢwqpj׍>ƕ ~ -ի+zF-^DhU(ZemoL,?zgɢZX!A^խ R;E#g nwIޮ $=y8Hל[2Pp'&pPDTg?^V$N#܋=/)o?#%>s[R'Vx5!L!œAFus,R{k)-64P`_۸ƁQ nC[dwѤ@Qqq׎-7 \Ee=Ip[tsKĶ`,lw!O@DҘNKy 2KĂr ĥvCє9]:۵j0R*zBv,=,"fwC<, a7NLXQ7_7*%uFaT#֢|S^#3`JUC(K6XP)]MTUb7Ԟ&W9 gN/2!XQӢR?UK>< *7~B+/n2([=w*8WtfU3 B,uuةm݅ljnb |wU*f3Wb5mbPׅQsuW1Hȿ7ΠBj"nN#tq ?T`h!'熬ƬiPޯ!ˊyW ~WAܹNb * N0-&1w(0p(򝌓 Ow)Gw"e/K?ISQTϢj4M ntc[4RĚm7"O˳,OCDۈ+.1IHoSBJ.m]m3i.qxD3"nϺwo-cb)1yP߃P< cL"+u*Zjcp')΢k Th Z<ʪHoD&ge7W T <`󵕵R?xo&AJ*w!ozu*fTw=ہ]o:)d;z%1I| 1_hUh}DÂ=}텛PƼegL&ƞNYoLWf2DH[-p{Ԥ}`csWWRüLշrhmmµ9y)#qjn/m/dc#;U85fη!cgiTS3>U:N# v8yiPI٪cJl>r\. {Ӯa b.#>Ko|#uo^А7͸jArsv"bbD吘;^L,žNЊ`'/Z 91:Iݹ$L"m4[a۸}׹iD>mTFc,0)(z|\cL޸2MqA(C܁W@TsDMwVJ*Z}طD@kbΘF tDXֳ"$,ZmN=o/;3WV-so!ufeVH 4%V/g ҏj8Te#Kx:UR|l+Cs|xifg6rς&HӦ*L#?&J8 k83a6It*8+% yyoWtP!Y"MfZx1ĕ~% 5*Q\j)+1j3ŋyvFH/p=Lu$ XzwH.Lm=a[} э@;%nufU=VߙI[UZ2J49RnVp};s g )v]A?Kp.}fW[׭/E4kte8b+Ugr;5֢IrU nZ|f[8IO1ipWjVtX'ӿ&ț7#Ȳ&8FhL]RG@ &V̳ 7+j[&ϡ%IaȢcb82.ĵ"Tv7PMti Ȉ)bRa`WC >w:*u*?kѫRL>:tML:Ɓy򣻕"uo4ۼ% P?q^Cp~Ϳ{]v]za_eE=4B2k@ d'߉h,LԢ`"蕸rfDP/ /{g4$zeWvL!cEqS8LጠIFP,r,=PLX Vȷ-= WR!'M\M$wwucvVf42&pnaafu,`As8:M󇉯Dt$R:3P8¤@yMw3zdjNnߦ)Л:cfdJ*1MX^c|FG. I KB1N;K?EҸ5pnqLLA&c32'cLWϞ4$tA}ll$UBpF anEd*T-H٣AJ cON]/$Vu 'sS 2*@J~0iwmV`{d^bSJc[XhDՕ2ѾAOc*^=Dm k塼[@U`~}=J#/g yC\M V o\ /4мE+Y.NT[KI򠷽x#wN!}w`Q *vD"۝)890W5]FK ѦڋԄ1ґik/5G,]ȒSfͻL.B7@ PL2YU'oS|1T*9BJI7GgJ?ZâʍFs>hQ]&>RģVwQcV)!)5FI`>m'[%1ܒ?%?UeX2"[@0 Q0P4lJv:.q%g@rS;Jtt~D5MH.%NM4PϩVurMzweSP K[@ ŊULq@jZ*QR v#buF֬eתǼ8wr\d?UZ)Mb9yTܽ0zI$~w(؀:6\u*|  #M(N pwttx"Z8ye-|WR@2rL4r[_zvL~B)#PfVx;Om d3H,=/O!8,$Л#0eՠ,)MG\Wh]:~\?Z} $r| e&jk=u | IT0zF{%YC4&!+H }X6!.Ø VaaAh&D;*Ww0JiZf^uEy89u|tTp.;Z¥ܗt{0YI/`<*_+%SI; fND~yeV#YB2Is ifU)JwDwms4zGI67s҄7ovp7ѥ E4׉|e~+x<uT$BQ"60![ٽ hkniuX0Mu.m*pWRq7Q~ W؏96_' ;D!W8js"5ZsY TmomoY9_1*co@X.-9f)Ufv:eZދfY1tȐN D) YJ:UlzwZ1}\4γf)c]=g3G»!0N++ʡt  yJdJ|ȯP0?eT#e?V {CdyWMy] aC* }ےiu͢rg,dO5e`:=yFu؎id(1WC2qW:YOD:`)iGnOzz-3<[RgB!?nD^4PF['7R #p[-&ntZ] lorց2Lk\:3ORu/;#H0«оY&h_'$-N`̥o #VSUE|jũW nҕ,HukI.744Av+)j?z)9(3"o5n *ކ0D.7͇ `x*~yf4~`:Bl4CQ9/ČHú$N;J 4]GȞ}ziqKEak/Y]&:Ák̘,(5ƓW F)[,"ng.&0Y0mܽmu u\hxhp 7ye&СEm~+zBʼn))fIR<ǻ"lzrWmcya5 bkJiUΉT "Fa Lk%ѽރ'5V=)e]jEl߇;'c75w6[)7}*Us*rlvbDt1P1R9Q0՛1]fM೓ؗƩH>Gͯ^&e:UC]N*5q .RW_ ,F4ZkFx/胄YgL"r[F+ P,Uϐ`B2dq<\ufN}9|;\Ź4FKdy*#%Nj<66XA&Oo`f0Xl8XZZ᱀CF^xVað ] 䙻Qy8 V /j`NkW ~je;i{QYSw>& ܠ#elcTCCȲK 69J~uᯫѕBanLZG^L4ӹhB U`O:+!|C~,}ƿȱC) O,e28e:tݠaeQώ?.:?1+!uz689ɕb- w!4-%? `R' ѮMI0ˠY*7QIIUH @ɘAk>S<Jg H'=#&97+Uov&V8!boeLFwq?|zLQ* XXH=!U\zV]#i=xg6HfQn!1}cWXeQ`!5&O]ҤJ3q.ɍ> k]U܎8"@ p꥾RQwƳdEf!as=8b_dkbi>B2H`7~ IQFhkIgܹ`"\ˠ4\+cigK X; tՄhB"ۋ #I->aU#F[B-}N a Yxӓ!,̼d]N %tkq)5T$N`#ğApMLF6)[y Y>%//ݿo=Hܣ qfb}Ni x-?B Lꌨ'N&]YlXR݉`Tx{N e͠ u<&?QFu?OV!|NRhvwYQ26TFZƹkQ81dz;ʺ>1efƒzn7 {d8ק|OG%8 )۵`H!zך"b  j@,V̅D#yUثfUyҼ "6s Z:!#Ocmy^Vx{U<@yFGA0(YATRmCO%6֑wVX= 2u3<ul-_O F!rXM6dV^煿zIlԣZ 笎]$_J<%_ Y VQo-mCa;VCw)ԠXHa mCT{]H$g؆0zDpE"%pָ-jR|oN1# chޖ"^WHEO%IOkG+#c6*,_-p]nr!n[ZN4/.ebύ$44MZTyTf:0q-xfMvdCva(2GJeD-ѥn }101l { [{]ƥ7|A-[yW s,}g?6Wf Y(I놾o7 q۩XQR|i̚/%ujܰ)ꪗ,E#[4 ܴ۬ݦ[CN}uVN"h[S3"J6#sRU*XNu1XtG DeK<rMc%|y"UWʠOA՝ԨjWVL/C3 |%b^L\R #sy\V,lBJr&g.CJ^Ҡ$;'eoafY ,sdˠe)97.nKc?ﵲ>2{^Gj4c?:?I(Yp7&Ыɦm尸q<8oϋ^ VIr>"W~∱b؆&Ӷ3i3X?:ъV7GI4k+Ұu}Rת4JE[&l6}U]^c׎"l bVw?#v̹R5o  \l4QW|ۮk4eߨڀ'ua8J]~MP2k|%i ~|D KN}RvTr5(P7a ьKS&Y.Z5 )3OӲ.vG^Y d鈺0!,xx(0&VT4pEش>F;|MGL|ozbXfR.~T^[.k]HLܳdBpoQ^+TI^ vZ+Ra:d "R&#)iQёj?B*X\\prMpaNIBܳf~Pe=NrdH%Aq#k#T x>F6{1:pռ aヰ ޭkƲrgbFTTa=i\?-$x~X=;0"K<r)˟i)H%:L`v[ޠqsK6VCŋMpC]Pմ`63TMa߾7[E@cr3\_{ JB9OsھoXxRg}N{g5۰3or()i?JP wR=pnSg"U}B┑ob ܥepκզatɓ| Q%iȟRǂ\sBKE]JCף>7L[j.|A1 An{KfgJ (1!&1/>/wa5n5 N`(*HqJ(o_B\:J);;OYyk>Wҭ*HChO3k+k*@II &^RسGrverf=sf1o n`HmGn(NwK}so_]`!@&[ssˊ\?2~}Fd1[2K>[Og[642^=v{NUN փn2PZdAAC0E@cS폃0߬AD\/23|W>=9!{3'K369+EIS^5ڎ+&->`TCiwҰ4q(BW\WmeRSo;D`Yt@ljP84 pFtAz8o(v1z/xTZk# d ~uj|z@pa4 qD!?k(+dQbfQŨ7",K^\y$n8% c>LtR`o{=iG!U&Z]RD_ v;X!ht,[` HfCQXӥ%1j^4'|7-3S+Kw4"E'!]tf$SldԽH5PC P\QbGrd6!ː818;=,'J7?~Tl8 4h#\ϱ&X, 3>nU)fՍvȬ^cbվܞ|ւ2uO>0:(c\'dV k *ɞ  bvM7f_2}m*ߢX>p()lUBeO{X0ZP-psWRġ{`5'ś3|CkJGOEX7j,_bWȥĮ~eV;@pʣkU hoG%׷84"B["s7TmSE΁w~WXZvެ+tlp;$fk3{J$R +i7K'qz>>-[-{=#MvPگ%sՀdЌYj;{J0_+Mt,>B\*\Ǥ@4Hav˻> Ӕed%4viOksAZӱX`() OSܘҔ']:$tVܫM(x $pǧc1$6xF9.U/GJG|ͬxZB'£`?|2<a㘰S?yAasN+m3Y?&"_Nih n:Uۦ=OK?d+QZ6X$aob Ҁ5QƬ8@_ ?_a %˼ĖOz[/Bz(pĬ̴$MM2rM#BTez|#X& Y.Ȩf&aꁍ@LNLE>2׵OPꊊ[sBkBk˥:stE  2n2bF&wea'1oj'N_/H`C0*8L8>ML M":UMnb"ӻ!&@% l^M,A&I w1+O%wQ[qes? و/b3zъd n i"B#3H!1:Q(ka E?EplTK#*.t{ViΎupJB%Qp2;*`y~SV;҆֍Ki hۀԈUx]0XlvsWsy,cԐWTErn0(ʷ3mx=@S<ʟ%qx)wqey;VoMG5W:[fbf h iEX5NB-IWF]9oAqqٿ`ѸZ*g1uBSTBRx",ICH&Z o+)ysP-.KnF{Nۏ8Qu,.iAIj@5z {?M`E:r#nq);&!׹R(>|s=覹w c8ZlՈuxׅ_r6I'C~[r`& a^ &([Aa(Ɩ@(ȕVafDk$ '%P4IHfO_\6*.qUx dJ-M19v+3`b6ĝۏ$shoj*sZ0{iuo~#3iajHql;.oƞهy?yn6E ؊"&pkKZ@i8WiB܎hsnc\3mĕ8;}^QΩuoiR$@MP*B:~:pxyﹱ-^RPɡ{)'> ;a7Bot4)nC4{c;P91QvYoXGaL/j+F)> 1X}b7^yF O_XE53rU".WrLƶrby`̙T9:j%^׆ '6pcz6 _>f^Qpɐr[zQĎ0Vrw ;xf_t'UJ'tsXrX @aKX,O\ uġSÿA콏s`v EDD⣼Iϭ g>`0x *Y~kG٩R)<[mP k+RCoY殔Ga"iDMIC>*S + eS#[2:; ."lUy\tƇN2aI!?r k_lG'[bՆl3w9·N! .&<1*u(8aC~!k-PTQ8츀ldHZ$31o*(U"eWmk7 ̆]$5,S'~7Dn!f3O1 #3@1%Aw**pT߳K 3iWT?麢Q8)Nk2MTfSӃA:qGac\@@8-gl_*^ =72\ߓo]'՜U?vT;'y>iy k>K~0%Al=;̪(wב}+ }HF\PKp7LpR< 6a⃎4yJk$HH!rys=b[*Tb᫝% W丘t\ޜYLόEF0`R}d?(H-3d,hB: A|NVX$upNG K`m4:nbB/)gkvSH^;1D~&SEF(` &2"H4h:;Mo-քի=U< 'C@3,#oWg3Gz@C++w< B[cdRK-s !b,u2iA7o^rPCUh}4q,/9Ȳ|gcϘpjx_=sz;* ?-s/b'G3Zӡڞ')f&]+~ـ(s7VcVJbNO15M-ُ ek9"F9*5珒Ue{1b@EBr;d„P llOY"u;''Oj/j. jы$/@wNx>@LU¥==o=`E7tI.ZRR2&Wn/cv *\;"'dGv^eܠ6ch.@uϜ^3߫gS9sK[Ƥeع%7Pkh]LmHw)c)C;Ǚ+!Ŏ!'%;D9CG9n͢R$0\TVXwuuJ92 -alWtȵgNsRL1`R|TJ._qn)=Ϲ6hn4 GsˋɎ@U۟p¹18YjIQ1x]/#xOX.%8ЛS ɄÄ89iiPa-~nߕeYzszZeڜ%49˫=,)az )o-tLZ*x @d=TX t"Rg왮HK%I%0#ϿlM- |9z:@ <6}('NdƴA*օ ~)vlZl vpŃq=>{+dLX& k(z˴^!/'9~VdzͱQN&G8; ϸOg䒩^\z]fsG&Ф;^ya㜗/,h'!6gh<ˏ=/ x&xD zABmbQfOMΨ;{׼uzU= e{cC}0o]DM(GC@ )5qhOKXa=8V>#HW=:Ԕ_ .n {j#)  MdVj_I=1?܊V.peFrHs)*1@UO\ tE]/H,<02טa榔z)ND+mHv, x+[EkN K^gFj(Z,h6"벩 @(<Թ^7Õ. `/fhqxf3Wm`eThzg3h^V e^!5Yp! ;kf n^}lkuv1NDt[E[rdIbąfB5Y}*k;Bo6jANEL\eƵ*L G4wfA;J A\$/yf6N}z)Yn>V.5E T=MѺ__e^h(|z,sF<Γv>)3~Zr8gL]E+Q 8×(ef")̸r`A: ^!C$<n.N /$nP7Ybƅxg7˭eFF~wgap>b`ن>_(FXs$ӣ5-ŦBΚA*zhmFsBZ}:&A\~Bpmy%![zrw'ihiۏP+ c7hQ , Vrx1E~B;L:') 5ԧŁh%y}!:jxl=& ך'L[u A? ÂFogD^0#Х <-ѳ~A>&Æ SRgp,=.()[旖KJJvE-ZUnZX"=\;z{|h7U)*EHeG4(۬MH1TQtqi0]w{pcuerWv㖃Tׯ;gJ=9/|9fgy#A֏(A赫E"#mTD Ɗ?2Șa,jl! P W1~p*<@'NHXEifSg23iRFm&<$O=+,O4T=@A+? }qa{B>'hDe0eJ?)p PM}l:=$ >g1O!`Pr9+]=,f8s$gW铁| MHP"EχY C]o "YAiROda#EU.LI3:C(9j{t*j䃤BBi ^)!Ó9̺JUqCD/"ھKrWg|k4*5zUK tRT1X?L, T'&#aCD|nk=Ea?aKVHb}Jқ#ms.ІómSai؞ L-"N͙'qkdBg1Qx#4! Q$O p$d?γМLD31Z+S Mlnяn9bb@h+e)Iy^1>ae0dS$ b&i7}[籐z8vЙNݭ)m}њhm`jC['`z"!:MneJhMUNeQf1 ۋ\` Djxu=(,%LuJF>^ 1mi4шrΪ_x|%qBDI͛z`[ 뢬)"%h a8Fȍ1PZ1(D*[bP=Qr5ZaBEy`j^YSa۪2׫Xhܴ n 5L=cI)> I/A"d J(uqz90J٠2 ) M!p K+6N H'VX:eH͔^@lR붫} Pl,07ʞN$Mjtqp[q<8r&B{8)bM@jCM<3 ڸtFT[VMNXolqE%˽?o"Km>l=ҩ[PؾKq|X5F\p`KĐMxu{[T=4R;$ ϋ0Go@+jlzh]5IIֿS۪yZQxW )iޗv,/ySc#G%FqqӤȎъ6;ڱD t2,ERa^(8+ĺJ;R"> Md/i 4㥽Ƒ~ڗP"_PB{V&\VCpd]MyͮXe lwJ wEKH+_*-&WZ~BБB[#¢m߷i'zF4:^ZLPw`=tNG;iؐe,i@U jVR*/ʩg0kbLuC b@ƈIC3%5- ^ 58s$ mXF+(f`#Gj؅iڱZMz,yIk/΃PAwk\\FFq.壏2FPLEe~ZT8dU\x[M3&9_ #kc@g/ KK;}C)C Wu ;VP޻^98/i\XHֈ1W7o:rFE9~q(c4B.fhy,dԌExQhm+8#ݬ,Ǩ($H6hM D,^v8GfJ,'5w2]}OfԾ4/Nhc;d4{aDw~[4lr'UϏ"$R"T^Ԭzt}_Fs&eheFҖ'DvwEQemEL+f6x<2@50C_K~].cOPT#h AHem.ۘkA`il8.=y"Uی4ĒG<xqrŒn7 67IO._R)W5\ ]xx2#!91&ƺ8=p`bޫ)A^\c z/x5>mW2E;:J/: Su]AS]*'dk^ޞ_)׿h>ن 5H W3\ߢDVAY}RtBb6ഌM)LFq俓(V]ů%[8hWxgGp;a$tcꉋ&/#.)\*v'՘s HlP<#bV@W6 nm] [^$ JolbXVg⻣b>@s*8$D;g:DxyzB-qم#+C d?/e򝛬8-mrT*"Ag!|/*rîG eͳCo+ܳYzWo/ @wQVMww֑DI. 3[ҽAJii O "D^]P2C0]1!`)լP?Y >~uޮt; O55pRpo,Tn%(a1 tc[⢭U:pS0EOƝ5f|gy?8=%/ͥ eph~LJAݿ(rO{%D|QUHT.V 1 ;nS^nYo)QsҰTuøUojё -RA6f1BkxY̰7a&Ҫ߇.w Zش)]@Roޏ!k8?nĿz;خMQF_K̨hSg7kB |Im*V%kw6$U *5O9Ґ϶.mڵG7HiC7*y!s&PgBޭ%CuFs+3 4[&EOXUS ZToy]`;. ┱Fk#2:<5V/Oa-D##7|oQH׫,@ @gzg9vlX-U׋?i @/"6Ǵ}q'ԟspdH]]=j 9&W_@4bZRC, }d%5JW Nf X`hZB>5YI#`$_RG TgsZʫK(CzO? ~F'VGܢYUDmQo(+VL>ӆ ^ HHAaYKڏaHZk>P)>[pڧM :S/ȝ#S³ϭtY9qUE:IUPFo{EhH6G.ߖ]@*Ž;rz'`ž!AvQ`9m?5qрB3 Q'(/lȀ9=%oqK_lqEbco1y:*,za0&4uj/hÿ0 Sg׷Oy_QXZgvTGTM2w㍰R hD}iqIA * !hU4Ш'Hf b6g(FT1;0ĺcca+eP`KT2xS-$D&7ө;;3 <&kRA6#7T^[,۰eb ?bϾU3~.GO ~ӃqOG Mv 9-Kɖ)2&F`  MߡuxDMxb-1++լ69I, EOXa^ZVǐܷXr/ܧg_gf:71\l*YPM_l"Ȯ3mt#ss轫|c.g$2J EPAJ]G#˘drv$Cڷ ͔4ց>)ut?\'t5㮁ꔶA5 -E_{] ~ j<;}@On-Yаv󰏨w\4oYv?Xlk"+eiUٳՉxZ%%Nsq$Or|"D8q"BCYӢZ b{oHL<{i^CQ9^gE6 œ:B"O_9'Ye@J>.BХJF^% yQ0QfYNUzS_ 8'd Lb vR` [%HWA3 '9BT9$vy0`2Yg#s XlkCý""=0^\:sfn)XQ6s6{  &'=^)J !q ͟}= ru')f~'#e>P9=@8n} $ylef<ΝKC]z滥Nؔ&(z ]8_ɭm\J'fm몭+smt"0"3jq0}_U4 ux),Ỷ/eh2hӔ-^ɜJ3*9s&v{FfFjHj ty"Or'f `3AGY&Q9" E>Y%α>b -'" =dH|5%lӅ=+Ns]vul6Y풩qU N|{rW4{AƢ^- 5 lEK5s.Y=4{I Jȏ%kE'*Faq̳.@X xE|"7"jb.%ʑçz ~5_m˰Yӡ`9 uhsPqieHuI+WDW?V@aʿeחT)t2rg!ĮrQx ^P~ .] ?>ݣۿҙOLunbm ?lǁAT]k)~ q_P' ЈN:`@V+ WY0&nO7l_J>0'8-4FOS+I3 ^k`ly(a" \ ]>h?[v'7!=gr8IaVlo.5WG^&% =<"sk⓼r~3Nh!t'뵘X *&sP~{vI2rF<|݄y OM>Yk3D2ս)ҢH,488\?j1KXzbNB};z3[/^H  Z;=aJfLd? ȯV|赙]=VDۀ)R }S6-;0hJwLnpn'Hq [NF4m&%Z)dUKvD1Nxuގf"s9U4ȉ5W]v(CeJ8JzOY >6;P "\En89ễ.U2e5Ube ٜ1;ˍdT9 !_XsTC$,$^bBo>AC'|ߡv4[A2iU$7DZRxdQ7Ju mB R  n97\^pK‘/$lumc(QUS\+)5c wh7yy*aE<tEBź_bf$"@{V,;3פj^vTNV8U3jtOk Zas YƅpkRTzPcD鱡܎СfsƯϵ40SXWv'?K+Jcf H@!'V b퍁󤐉/v1Y> *J@hǝt&VJLLRkBBwaA$cb؇ٍ 2ԋhoJ9g I3d;{4o9PcPac;ѭ-X5^%V]r1ck{5$ 9s_VȣZΙo dbg_nb.:e-#͂o}cv\Ǖ3u5=> s m-!p-x`Vs֍[+A`3oR-'kgzxhYjzU]Z_(WX aNgzbn&O"2.5pF\AؖnQ  ]{>M G`2bNjQ"}VD)gnWCz9/{iz]a1zp5fWXW4l t().B\N5˝J;#JUu'mZWyD8|~WSt3 :UQwMVЋ]s$>?3sSRB^"d7:I>=RqݕIۭSRk }d/_E>2Dk/UAoEXR >믃 %N,k6HدnTE;4O-^N'l.R^>`;xA8 ub,<!QWX?=^2x4} /! ٚEMvMaB/OQ ;Nm8Ϸ+0 Z ;ta <*ѠJ>mY}nL0&Jf?V1 ,H@^nKZ& Po&&.*R8%͙{Z\]|Ubk}ټ`^䱩 H U[oM%RyAq ; sYCd;߈egൖaUOhϸ^t8zQ/в.mA(&/zXRw/2?%u_^~z4'HnGd.&Hf$$-pVWd[gd^'Ӱ"`*Q !c⍥ϓ:}%i#3n<ƎC2K,x&_,CfI[ #}?8ǀ?3 L?Mr2ILE!AGјUs.5nߞ0+)sSv%݃s.&:są  4 #1xm-V.&+%f'Bݗ/!nD[_ aQi&qTAc6W5 = u™RKtxi j>{cX Fܹb(fmRl'n,zd8C92Ԩnml[UUoJQ!N4XC35D'F:'&/utD,| ~"bڌ]\%MT?Ծ9AyDh,=19` BFNk#T#ƶV΄l;O=J^42QƗUPi 6> ޟqpV%[wTwaSZ,u z[GS ז_OJ32 kiO? +)׃|,hvwQBY|`%DeRY+D)cYYϓe=P~m.7m&<2u뗋H߭3m&"9eQk Wݦ,\bJrv^()j$Iͪ&B7hS}AEqTϱ?u(sĬld?rn4gqs?([Mn yȸQ(@#D0+n ^Z;K( “b3k*2 .~`'KRW'w/B\;&|@E@y#o))"LHECGå'eq?\j dUXaCkR--J$SޤֱCH[.g9YZCrҁlũ؆Idx7|L d0ܯR[uyp.r娂kcaѰGm⃧;FJF#uAu#O}E׽5 ovSz%[cܼ3샐zU}lqiH%'a"KQ[%c&q]xD.n8{=j㳱zphg|= 9{^*F76Bݟ+v% }XEF'Їx'99J{3ghިnF*'|c eQ:_( vY$(<<]ė[3 +,+'bWB 2]%*`|r Jn*z=(GUjޅ}>8-۠D6$*DlMiIf]l--7F]pcupۼBk䧓f (Z>A5O'@q\r 2ǦmϖJQ_twg7R 0 :Bh<2RMC(>ߍB^ ĸ 1G0@ Vo2o ']lJxThz X]6'_2@-Z8a+I+< }XD'n9MAq(Lުhm _#LJj(iUL/-U6]xKP,.qragc4’UQ`_gVBl݈oV.C],(YP Y,>.Qz%x1 KZ돻:"ZȨ1 Uc~U,1췖U(zJN\s9;p[)1of,T;4#GR-B.j[3JZcqh\^^ϓJ!R-M}M‹ϝ/~:!`0VRߘg4G3K `-aրv6r۱{!lO˥CmXHcp*[G SZȺW}|\aPTL"wt|qxy綐 M6PF*ff/T(?>cCWN:e{hö^V%z\z*WxUμy-[p .bbTB_j>/܅=g?_GT> J Os0pA$Kڎy W9PkPȢN؍u@B&لO6|c漏p3ɧ-$Ąs#@}1.Z%*;oVV)8VW#PGϩ{,xJQb´_V|%qIRwi 0nI5bPd([2IjʊnQjSC\lSKn0 &NHVYWuDp';_l*4Vt.$әFNRr W5 ;\C)H^e$ݵ_ }L?*B@e q 9EN4ҟ-BR׊; M'An#xa8|SaCeT6t8L>Xh؀W"LUIw1(#xEq z$O8=] [,/mJ@P z~ea:GDL nD3fg95=L^B^5J)|cgA.8$6ܠoOFt[wNR>ǎ=:(|:w7:˷kO ğK ߏ1l A(YĎQ=w5ӎd,φ.UvKơWpD[p )L#u#Znj!kU~1+pF0-BjY*!. ]Iur5ckzSm 1GLuf3/ zр&;YQwR Xl+]9A`ZکE[ g7_)R AJjJkXn2 ̧VcϑtY$y>ӵ &6z1˴Iz^9 MZ>yļ iҐv>uU"3CaȞP?YY/i)v?$e u<r+eGxP zQjB-&.&YgeB]+05`C 4>'!ECv72O¢an􎍕YxZk`qt̊JZ'QH:FTϏLX R|,A#Q7䠿lT̈YNM4V4lS5d8nuS5lų{Eˤi /lbsOo$,x}2 vQp}s,0 <7Ts_:Ǚ\?WC潽fZbP+3@fn*񌥀#I9-ӥ<32z{j??k5 {9XA1L0h=Df^sJt4A3Mw&&_ܜS %nv򾃱nj"83CQDDW=i6D K\̚yh]O +cq)aV&Q:6fVS3 +u9|s 9de>w쀮8M6B\$7&~;cRPԌ*O!/bnXࡡ@~B`Ċmhx9:/^vƴD'?3[=%^iF0-_()SkA/CN] c=\icnz5t+?ޗpmqbq%E5vk{KT3grtQ9DE{,>Ŵz…6dlaP)` JQjeYx/R\(J"m=Hw^*M5a :G1*#hiObȖu/ N~Dxx[i؋68a|D4Bir2A`/{rfw i}KI@^H?V-YN(ixYEHj,%1RI{'at=g Hvȑi;& T|[pzaרf;}As xJuvntm'$/G)9prdUh&5۔a"%UUf[YNAUc) p`B~~}_տTlwKiZ-܌2" b+AEHKL]Ϊi1(‡K57pi)[s6~g v#/Tts͏p)p]X⟿&&vvOpnB5Bg=ȱ@33[G7~?  ޅZЀq~6p<-В)dH4硭0igZ Nw (1PSejBsVFq@'FNϾB#r~|~D>:bޤa5,Οhq N"uW9bh#a'5L1YB0SM}^\v^V Cn5B63diɇ|>S4(@ ɤo.ܝ*K23lLqIAc=u4M,nDÔ\b2j夛Pe:=&Bk_4Cz0h8(Y+ ݋ua2Sۂ/|#qsVlCBu`j$(s;*t]Gcj9sR[*~QZRqn6ዕ-|jpƒ-Jn'$ȇ$<Osǻ|:#2j?Ðz, ZB"WwY: H ;)/h  yxaAݘ 5$MhTOB5I +*puDJ mJY-b _PjNʩxj%nՁ-b" nMDu95zC7$ o8a2&%y9ZOSBp":z%MωTqsA F}1{ٓ7ju)T)^x }%2B?ًHW`ث~m藹 dY09fW.Z/R3V}Ĉ 1Zb{#؎)^Cͯ| 6N~57ljT88#]wLD<|yr*ny!NrpW L(pǘA]t~_oiy'C\v=Ha|!ILS=Sgtj?T耳vFu6=PoۋH;*ٸS-Iy~v^*,rX"H`f ;%5}q*;g9}wG!&K95[2}G}%\[| R8l5g}M;պ۲/ `G^odJpt|aVD;8PrEl;_2QB }94H6Pͨ1ى<&H`$xcIQL<{_$;[ﮬ=Qn^0⻳W@m*3Fmnz#ٛс]#7,pʠU\38}X\4Y#/O5[iGO MRj">݃`+"c,h@AH-:[LrFH>&m\ @_q-hp&1i0@Am5֊gE^_4 낋 |}ޭl(Jt#M]hUNjA{N(pIYs3<=kUYA㣰ohfS*;[^c6b"w_" /js;gYx[.@9Pri&zlG"6ւF.Q ĔԒYkjJGK3,.͉hTPK"Hxe!el  CUW7+n Ts6 Yӫr4v@&u:9o\?SSM YHK+^.L[xrzgIg4TKwΕU:҃)WɘG5ܝ^$ ,Q ,B}[L T%_s9|6c @ _~?oGheMMxpn^E6޳4Ϧ41 TNͯnJ /C^f8?*H nzA[&\e f\A2@rS0K`T~w1EܓV<^5У2xh+&Je۝|P 7W8}p !\xs?j _s &2rG%7Uȟ5= 5oYNk ʺrd -95N}fgv7g1PGVQG" a]zlNlBoY?-l? GZ p?BdZj/yK7Ml}E 3sNRȞz#>D~+i,Y>I&@鰽k]o,-DXgD<_Z京Jovv4|Wr+D윊;QaW+鼫!X*6s/#GUq۬8r6v"@=K{ 3:惍FeH48}b6w؀ٽǮ΅B>_M͡D5d>2X`lacI% } ~7bKuPxkǚ\y X}IEn}}.Klg- ӚƸSPK *|F*"zs4.*YËUHh{)w2og"\6fej~ȡ&1B `ȵ@3~1$E]~6GD;:#v-P*j_R-ңx+k]Ka:<: {nS +0zbiھjGO1`S &tn rEZ܃fU놃EBWi` T{߇Qľruh+2G^ k(!: Vl JbKt:$kN)VdM  B|3“~A5 m ,{["[zKPL}0 UwH%y%zOVuIHnSR?B(,f\DH+Zrv_ P0JbSOrUM,}|B-܁N?쇞OC XwsHK:#H\bq]tZ3DWv}QVǨzǗ6IpN(@aIedpG63{enJ^ֺ)R"wwl%ꋽi ,#to C }f&]MoK}Fr_q`\򏙠5.[^@dIJ#Ýb|{"XiCo b\&v֊Py0~.NRhfd_1k[J MOJm! 1M`?]W!}{Kqkvm^R\jq\% ⋼5#$< t)kvIpLbAÁ]qtp_; h {Әu]kEuN׮2Wn̄m$fq gFQ jXrwˡqULO&5MtnkxJjH#q,b=̙Lҭ6%!E45QKdU'mgw; PF9#`To5HtH\C ~=z10_$Xs #I:LyjG iu )0YjNT/CrIғ}EMrh,uOfU8ق񎻻TU"mg-1zsލe#e#@ҵGMp*e)3mɢ[XvFbFP;6}Dj Oz\D ox$eqK[NL?cgbmmgy1' b{1smihHd\qt_8fyKY5/a͙!G^igT57D7TDo'括[BkZ9esѵ 'v #)[&F~b qN4^sRubHN7Y$#&l?߂_dO@/5-o@Hܻq{t1nO n" S2ʆ\:t HRI;(ww0cS"JuY۞^h};V?}S܄t>=5u/.Ag}GpHXzHmhd'WBɷ@ӯ—hjںA9Nl " `&1GYwaߍoKo<LN.,'W!N# >e&} .,O ^ 3:*q~_  p#J%~`*VrɱL:G,zHusӭl xW{47Į9jyB@QRoĐ3đJ>ʅ=<}aQ$up*@GNjŎC'4:U|Veп$:j41-gPbfJ%DOSj8B}eP !!x] f*tXOPW/y Qt>5G_9_)loplkEqSP樅䟣lGjfN]`Ȧh<va¾2¾ 3S.JN.%OƐzvFp-t+&uݣDSuޙex Z ^WYu7 C@jC{〟9Z?4:BlvyIٸ aS}qfڏY-|m 4_I>O᫸ !IjAܚTkbl4iF{$yaDQ=O}oU;slɰS/uw>EތJȁSHDFF:ecvlg,LRwR:ܢ{ݖ}&b3h)1m@E L c|y#e WzA oB1rǻZI'']/iӖDCs#yajvp]Bm++ǟEmB };=TZR. 4o7n^LWjE'wpSk펕)14lA/}{X$l]"8R*-3:5WznB֏1 ԍ:-Y ӭ%faӟBXK T 64 (ӽǡ(A{8º ?*[(K:=ḿ fNCޥSoXg0"|RRzϫu83UZOvFVo1C .Z. ǃ X+wR?dxGAak(B:5{nsǘ}?1ዠ8Rg}c+|ߙ8~>zȄ'FبeI+ 0|'א"a ڦ6pwH RxY ^5aY0lܡD'NuZAIdѽ07Xv Xmnm| juro :#@ $)w980wu~ _u\vBԱihǜ!8x{Ԟ] >XL |b;Qn6hrkL%ߏ5>׉MZ|EM? 3"19=}+j9*ڷ,̡ D?NZB{npal{^ny(!'7N+[z6b׉)28ϛͷ)hNH0}\̡cbU*z|'BMG\kJxȝscK*OUwU9jn=[ !'ݧfLu"Ol.׭? .Bކ#܌?{eT)Nd{ %WRɄ3a(;Z4H,$B)2jOYmϒFOH-ʅ&'(S@2h/ }Fso)$c$۪G5` X3N!K|0v' (89CBF$Kz+gKc3eoiDG}* s}D/C7Frpӏk=u@e_?y7v.ajL3nFFƪ@L󱄭t1=] ȿkhb.LPD3-^ܟjVJHăR3V51-L[5\1HD/"?^UlxPO϶R]dDw}waᎽshpB$ *EgNnzClFK7p j ɘ7}%Y"A p&>Ĩ, 6fⲬҥi$!P=[B%/|+{ ^saCCb] Bq!ĞKcrQvIJ}Rl!br*K9hZ%p\{9s`alz/VJm)`V l ~w&˟!QՁ :'Q%z:#Aghc?k@s.b[#uOKg\ඁsۂh>a[0PdZµSKNyS}מ4}22HA$o_m8-{b&VDFx=5Lh*϶PiJhD)kHq)zIym%+ ll04(vqH]ZH4~}b-JȣԝJL[1]lSH[)0dE[8_PА@\{y0a;Lq4vZ4Im"\GҖLҭAH~%K>@߭{fٹ(>3W*!C\ܥev#=Q"hd6dڧ [I+jsMzH*8`5oCEN$V}e% &I=h۠0gZS|WƁm+>ӣrMG \&q5ăZk!oW׭ )Gč n=]={8Y\g=4 EhSZ0 Vj3uM>k-c}-YF<%'`$E!~[ Zx$1v/&lFiY f, pKvn:"ъXY| n)ӦZnP!Jsqж1pC\NZ"OƳ?S{4mJb|iȰLnۊrW4OzRP{B! >i4g;[R{Q!5!is}iY_EɎ:+hD6Yw[Xj6F [Ϧ漓%VAnƠ, @SڙnGՇAAs_`LHSQf_b<$n :b성51PXoy0Þ1u*FIQjdq(_T:cAA>Ql~[9g\a~Uf' ;2EP,D ((/" |g峷kn}A+J}Oe{t鰟v1Iv}SLl/]F }.pꄹpYC9mv g7CppAmr Hkv;bzʠ tR^,"3~O#qH!c* TcpeGBB/l=9|Q5wΕ[84X!>@ gxI]^Z@YWBE trͼF>[G \@ɤ< ).g~/ʅDևfMpzI؀UΌ`vƅKVg]ѢU!P.j$ry&'8{-u7WИ.<ѿD+tsU8t/dU2|{̃!dؽ^ThҚ͛ޟ´p,k~ia`>M !dx P jB*m>iؕ9{Sf>TUWiT$I#QD[.jcD;sAs}BŽpYRr~Ti;QPmeX?y~V ~X].kƴ3|5ڦAnn%嗤0 &=-ȱk&% W,LYh2zڰDo?cѻW|ITǀ"Ox<-wi ,uDFl0OO PcE|Йs6 mvboV)Rn ҇22m111NitMmf zù?UP0tE29] 5xFXEr Ԗ5Ak&6fWKepJ(ax*r0K hᑻW?o@[R~wRn|>xb>s#mbiZK5Lj*FN^2.ʻYvA;8(_!0^- A?bEQ.Y0FZZ"' i>j$UQKa6YV ^i~哱h+[$*MMJ$ױxems͉ǙQ}b4&FׇϥÒ{A<ܟ⁝2bad}(o>6sư[}EjXYlߋڽ G6LŅ'[эR$+(-kDS?zؘ#am]g3r?gCNUY&<;qׇ j$'eՖG; =&񍒔~bEPNV8ε[WJGAANp\Uϭyt tG2=S5Ԉ}[`ʪk>=eGVPap^k|\6]BY؂@*;xo&=2ݹ|MF}7wvNJ:_I^ %RQAH7US7N)o{_:}[d9*A$t@Zl鮷C//Bc#KZ0JMxsUx6 Z9nim ̾_\%G"T}Q%_d]|XZv c|GWƸ+l7a.kL ;YE>0x&G(յf),Bel_aqPX§L\HQ<:.cq{L;+rQW;Yh40'M7<8h RZxЉ\n[C)n5="4Gjȟ۲Ocmg6M"(YZ7OoݡcT՞2Phf6D` .eU6A_޽_lmP.9Ʋ7`4z`e$z;8ÝɌ>0 T˅JMKi[ zFU ZWk_yAd5FWa)}0C(#[qCL8'ׯ5J@x#dOl7I<ǼCzyqfD̹ɸU{xWI_rHf؏J..8.HvZ$MkT+KC^Fhݥ#X[@8a3sX5)PΪmdXX~c'G0X<^2n1YN_ZH |:r׍Xww+>VfW- b0Gx麞׵dkj O|S;/ Kf/'̕eb}:l$Ruں8'n5 ~yBPeRY>)H%Cx4ѫC~Fu> ˠ&WEvХk)/"#X08bs7i#;& '@XAN:7M|ET2gir53hIjۙ[&ce4 Q8>8tv_uQOOiLEʮ1!'>"_뒶 L sQLw@\VPE0RNGyAu@ y}&D8uڻZRy{`{ كchV ).BmXngu0YD+q!.s?9x{hSexS,SYRjU jL5hxk)~)r zFWEipY`*bͲÐն/ Z0>îP<Y]ܔN$ڱDӀ(QRɏ5! At!ℍ3t5qN.]S{,aH@.Gów`G*D,10Hf-5o;&$/YOuo` PSX3>ܹV:E*41V` !iFR84|5lxd`Og!Vb~BV 8}ć>9, XDoYui`NĜkka׍)υV~ 7.%9K^\_m0 AV RU_ BЅ@T^U ;'pIfs@Z\@Ym PEuXa1~}I*] aPl 2A4HG+#p/†%+c Z2+]#ܬIV@G)|(^ _Ęgh;6 ϹM%i^a2OxxO*/C]?]D1-$P|1EJ5.Olp"ѽs2ih%(*M4\V[hx{}8\bxkl.Kq ~>D*7$'FoOm@5uxi'O9Yq@m֌#-V`{CWݟGʩTۊ!9x+9K&UJÍ iI&8WF:0 sYNѕA!A2W,e7-ɇ@A;o6{"2M0'2P﷩Ԍ7\B34|P=Ow'-\+.! nkB !)9@_@9{l(7#Б6%@X6D^HCu>mK6NMCfm -+9(Tb'|ȳ!cwXHsG<햯>z71pݥ~9,]ZxI?VfF8r'rLم?.cͺ =ǩ .+e)tm@tO% v91B$c_]**B>֮9<4Te,LBD#_iϯC@ EYʥ*e0u̅Wld"c ɶ^/$[ E_ӽz]Y >$`T!Ƞh@ cѬϭH{&߉wVrR)n҄pHn#bƴ]sq<:`Aw./>-ucևX{,Y?TԄlnn5/(mLnuQ#]UT@ɜaSKaaaeW'O'o`b)VϦu^eߧfw@yP}:yr9F7zʑqqo#z,s]-Uc'Q"Sn5Č]1q 5*tA"i:FzіNAn1CcTrb׷RY;Ne}Pݥ1EWVQfKF#G.JDE:<@;O,J?jMxYuDC{A /ᱚ<7虜q4nqĭ`r+5t q6fkHjּK#[6t{am'*nQ~>޻;/$i>Tg` Qm}T1;?7,q kJ,^bye0 {ZQ6Yb z{iKO6="X7P6 dǩkM{;cfMw9Ů{ڴ^ġl@ڭMbg&g_:"2S%-ߓ}X&mbkR|Zw1LuP NN8Zzu7]Z+0'ԭI l ZK$5R4o8 2RY mP~ fӋF27vдtч !b)e19y4e$t$w^"Kcڠi$D_gJֳ0 jц!« Չ`(JH,"%6M6!6wn6LAıx3_QJ1إTʹ>g5|x'r6 \ZSIdOhz`\)џ"fn<PZE6*7]yIqfn,iD%bT8R/]( "յӺbL_{`Qpu@Z cs:AdQt:"iYf=K~kn|{t6ԛ "|e a>"D_8ptarq">  Q$4$'2zȜҤy^v0ʷw~S<Jٿ% z8Ьd5SG/Jh5psHs^%@TzLj&oWZ AJ,ZDD#΀$*#s3c?"{9ON0*L"[nzђ.ϸmu~HפwՏ>/nFޚf_ROnGCO_c+ElViXN~Gzo?^n\[! n:)Bډm EM-&nI0{߹\}mBYpwA]7|b4;*IR){ϑZ9$FS1(sm0o5Y<8~Z ,6K:Zy2Z9p19/kN&V[4=x$m6jHe|߿Z'`Yb–z:ڍAR!o7;4apNiv]jYMV>ay+;ϥND q S,ޫ;L";D:CT1O }eZ`/r ˠ Rg8D)HܤeCF8>|]8/3oT-cLv|~PJ l@Ї>2|5#~Z ad)<"5HN$b@}̫ق<hfcG_HM8W ((1RugFa_WOb^}eq%_5@ (=/a[ix( /KŌU,4bD(0ϠkgZ0PrK94E7ԆG0k8ALgq2n֞t-8_@k5<ɉVNޒi0Phۋlh f\pvit E>t)/eK}v(x)1K#2Ѕ`BZRZۜI_yڜ:_T4\Juc*w,hnsJOiy&j]يۡhH/HN^Dq}SlH3}*GɹCѼ@,fv[=g #i?A_j_S1S icV8 22Hd Hj6Gh՜D]W\knI?7TTLa]́"[:WV+&4\I)YUZ©ޣ1ðHuh[K\Sa%i,'gTTJ7bVҥu5M"(𒅎p~J|*yf-mϗAf:#In K Y $)!3n2x@Nqm8 #uGMwu_Z+eBYˉfHu1Ӑt *z2/24Xğ!J|&t,@ B\dMne<ҿ~D_̹%t=o\Њ+^[M7B0ѵ7q#XPwucQ,їe=*h4_S>o}F@jگ[Ã/z*\*_׫9ST!lەrV2 'Y1 rT'8} *Q9d7^T̃OƯ^;>ZK)3?ɏ`.@,9D5Z큱vuǐXP^>moaHirE+k2Ė`'G?_ܱ^9xX4&`i$X$i<Rԕs%IooloJ}q*^3t&`|ϧ->8 rbUn4ӚJ%};Jn*izt~3iAB, jW_kS:j9_zg^%w7]\ԍsvltn&9zˤΒqba4Bg>H;?iN^|GMv~Û(ck.|uP6G5 .?* snεȬW!:'Am-%ZGZyGE_g`>  GTb$wPEڵd8/>eGUrF=!(f#PNA6WnU پQJTF[y}E`Q׮/+3y^u=U;t˩7otXH7eqn(Ic^?Gxl U[A,!hk!%x7LEvԤXpq'l6hz'(dyiNk5'/4dw% x5h"*El1ų!冫(0ǛF GZq~V*O +b&5|@t|6Qx?qܮFe*3#=QNZ, ƍD=kȐA sa)"PqcӫI--'Q2Z!X|ګ#<볱1B縀\ѪljJO Ծ&&hB!'h`˛>2#q{뙺ZWi ʙ*дn+ӑLY pdr_UJDcI&_ѕjs9i^LN=רԱ%z#9Bhfk?]sըjmӷu_ϔU\n ="P˾=&'cbؖA}1}66;5u.),9eYѱP*\9GuqeFW [PA+Ar:`0ؚSSt& T+%'#{j6܂|d6hv׏^  Ջ69$Y1bPu @rKs245պ헛ZǪ)?raM.džpAe' Աl|IQN8ӵ)XcS10V`B7`NE/gdEJ|ݽx,YIā@SE/al@R.̇h`m*;(ՒwB`䎋JDiukd r#O)z}-GV[ɺ> )OIpY Jo{t_ Uk.~cP a869 ~v뮂m1h=VҨsn,:[?p5DO )cE\JezuSu 1#RرYf@]uB{TG*Uvfw7hؾT·*V(n;^y7^t~({3,ŶP|]9jI)!زXE+e]>OL `(S=ƫ [hyg"` WXt) PTeG "CA_fT쫰= 7]Uyؼ71Egu1sz1&U Hd H1Cfe %QjӘ_zc/h8f5 {IG͍H*P)"E ٝ8%y2\),G &(061`+u>tm=uIۂm7~(x=3 O8ѝI^i0_1=&a%%Fu˙}4 .R0T+zܮ팳oBkTP%9G~rZh~m,bGwnK2^\70z1^QK|g m4 \Pd;"&l 30._[[顥j{5f}™+ۥnr AWRt#F(;ć \z`P1sf#)9˰To=tČgRfV㋃/wݠ]'@jC?I*iC6HN=imUJYV9qNu2fm{"VZXȢ]L!BYPDPxĞ"]7=Vp:7Ii͋婤(!Cwf m4^UѶ}cS#4oD.YHEL$y !4K,run<-9F! ~JV@׹4ik;avB}&ࣺ#th_}f&0}nS| Jphy')D(-#@pdzV\s#g2inܱk5bޏLϳ~u{|XK'k'4rakYܗ3~;+ \ua[^w9L)C&/x.`vOEJ@^Coacf-]M*TCbKyt"Ggm'E2RV mne9  tMx/Hފ G{Hki'_1(6PAUe /Jتg!-qN[>-D7Wz&"ȸثM, H8\dg e1%fMuyn%`[%(<^PUk:4y޲}BܲSFR nF.Ec(F\9[&B)$ Q{jVz3 tQ!^oeox.GRgn={/s,eA2+Ċ܀:D4rJFw1?c:]|elA0I6^vc' rёѪ!Pm0Dew)/d,ǙI`8)LYd0*\?/f$CHI,9U!WbZB*JIBM_'Bv^_I9s*}"Ir܉Payץ+Al](@t,3gG6\$F&UG6;7ADZ)7ы*8K0~oj9C3MA=[DJS(j G!D}m^J]h#Y)6)Hp&X  9SYne7'ȎT0#`χ'RC>#'isݕ _fDsO-=AuYH >7H(~psM{Tlnfy:0/0U(2V q,sz\&Ͱ玑c5[zٻf&N Yсg/Ϣ`8Ȏ0`ı.Y~{s<3 GLp/P %ϥ9졇KEdzTWt1.C-{!Brb3vgͩ:01q[$ zmBU qڏ -6CXU z6@k.3%'v4ז O.1q4px"M^uȇdneI,'R,H9gpDftƯ6v@Yb9nk˪{ێIY2SuWU$ 8IYNh(}[_C7IP6"0B"֌sNAKǿ!iʎ+>mq<ɏxk-/qAv '?ls5a4:I)_9ItCSDOC<ͽ6)>WK3z%v4$ו  ;C|%m HS=`#~֔?5އ˓%-@T@5ŸlV%L*  _pyOoAkfC#msbcgBU%'Qag&dk\vFS;ye07bV (,% ]2 DoԼGjA,Z c}"\O-JX&|azvZH꽬SpoPFS4BEEX|eI}vwa6_[1| $6ס>C@m6槐զ*7@7 HD֏;raEdT(mqţ8|4j!q((Q\ /vktm=%bN:n0UnԹjQv] 71<;>o$z 0h{2}sev}XGf&% 6 \5vI6k BNdG'08ڽ  x3r5qkEN1YYib\6H$}F?rԭ| ]bbkI2GVȵ YGbX+;~6^}/Zi yzΧt/03v}וO@g߫n_Lir{p}*/H;Zئ_! g iD *(V5B7h&% \-OJ[9Fs{)~>+ubN2MɭLGtfB:(dwFQi[IV?kE4Zv˩pyV JGˉd ~_Xt+NDT5+1!QɪdEjXR"5VQ )%Egn4 )r<'ѝ0gLIhfp[fu.ց5JU)~w#/q͞ ;е)izZ;k>Z8{4Xik5/TR]+VX$i6V]֢+zqT%'cOIr!v[C `ɻb EZlűr@| i˹q/üEHIg(>P?5IhDS;h5^f[zC>cE2 ՠ_WX+H/1{#>n[W\5B#C D4WX>PT-Uٴ,^yz,wgD/Q::xDK" T+KMe3[լi ;wQ(aCæ[M} y=3MЬ(!k k+@E9lDJf׬(^[ o.&1[ N- 0yTE6nUZڞ&=5`7eC[i5(m~Gq3SI~v՟EsUQKKws,#iĻ`,zp% 4N~sCR䩹WAPԦk]q2 PȐzDc>ܾqT?9I4`Hh5;^6dE݋up2:Q3l(-Ͼ7a EC WJ+,/φq4@x 4b+* \ 7'Mx[}Ԓ)X?Y"~ZVgYP>mgܰ~LkW򿻂l:mG3R4(cWC<@IO;[ΖI O)pƤ\ַa~7xj5q`3<|p g|'U" Ϭ=,M_'+?bj?kQ\x+ v~ $P]JrjKYK6 fj-ZJ1?$&_:%+gbb'"U+IRfwd)p2T4^i>}A@gG ƁKl,|m@]1WlS0u~F)bdK8cTBZ Ilv Q,lC G{sGhuv|R D+=6U}: 饋XUK'SV~OdRͥJ]CKQ7%CN)pAҢ#uE(hzP/no%F?* aLF+Rn+ݶ[,ȆlIR$=>CGu#9o"*ό~ı~/ #ZBH$u󦫂@6NG"`Ln čclƁr:K@0vÏ6BB䑟kb9]{SͰ} ,ԝ98XQk/;M71HK^3ՠ] ̯)J/a.PZa['#G_)9.B߱++87S'*h) f۶9Jz{T˴Hap܋v ]~x…Eʮ(waElz^fX//JNm/ZaLGO۽XXuG2QARsg96gӃRSoH+ԗ~Gj(mݦ) Nq&W}Jlt$!ɭ"z-7w7mҌ"e#\HDT10M'W2ٴ[,OfF ʡ:׾=-ջwN˖@B1oh#f>%iczCegG8UHh(Gİ\l $g8Q?6/6>/U.[~ÐIOܷCTUo!O˛JrXwX~|:׵i1t%MJ=N#6rahT\0WTuF}HsŻ| dr[mc_%F^(35Q!? P+w͉&&ܻlj8nIciڦBh K9 B0?lpޥtg0Mfp i$mAӱ=[s/ǻߊFoq^1ƙW -K`T .3/'hc"=4̗(K>rarp^h}_{nDCl.__[@w;߮zyEmP|_{! YmɳƒL7)7;0Ve4&CEN+ӏmPK'R;+D̥v3N"_RsO,5;&Bz Se&B9l NΩ,]Wqy?V+M 2=(,$aW%2ISB kk/ԬƟ:Q/@>#c|Q͗-GÍ8yx* _9=<? IRo nw A,, /#q|)=7d{‘ũNJ$cce|&+h8Jg*Xd]m !n%1TUl_kX7g`2.C%5LV#z.a?/YsyUo.TlbԵfũ&t;xlB@TXn٩nɿ#XgsU^zT``U9qLqp6 D)bv2l̢ҍˡ^+i#a+x&X"^m>#Vkl_i `W=Htjܿ/3(ǠD $:HG"Հn dEԍM8SO8Ljބݳ!b7SP~Hb1Bo- KHfs{m F6|FwY RЮ+vj8II fkW^WmeYFl:&֠x+|3pNW=@I%Sx+H ]&6֊msTu3 q8.YAg d]U&~O>t8 @LU(;Qu{ 0r1VFXJ*5:7L.}醷~/_*$ XFގ'2(XlS!8 )L1̖6Ƕl7:.Oޒ4T0k+]t׸ Ȉd-v {rOKVtًЏCUg=-.4`oI5B=?$}7.`jewCkT=Cv6D-[I~K!/d }4kɽT1S˞Z9RP"wmnചzwlLe?lpPF%@r$1mr,IxyN_?#aY#[~Hb4tW#HzL*biEه-E"10ЎSYNkоUD2aV",7c!v1?pAnYdFp/.w8i'HDDJ22:n) Ski#/nCuݕ)'ʎ12H%];c h%qgcƠxyUݾHo;oŏ0f6R] -? uPvx Xjٓ>Q`ceH,0͞s4wV/_BupL{ea6fS[zQ zLTEf}m ăS= }x4T1N3ip' ph㶭~`rF(sKy{逍ZSs4זAQ"080[7R% +ӧހ\+R`WHq& AOÆTvƉHK Z{52x 8OT;zyV<(dx Ъxo@Ł0LtExF\xEr ⻧ygTCE&A[J(*(\8 k /]#/1E"~X-D%]@6d9F@s/װi돐?i:(<7;%NʟjPUWh_xzG\.{'7fE)m4% d;Whgm> 6D6hKR6T:(mV@5&|f"B!!xg(."6Չn&'l C,(/O+%HGxE߹@_;yuH[Q9N"J&vv[*$_6Ob$7F"˳L4]m?Ez^f:̉:h9kI{uh^\q!ZA2VIqC]ƹzj.thp‹FYv- \dԴQzK|+Ph⭮g`36C<Flq˛~k{L|F=8qm>+ƃVfWp pw)wN+ x 7Ad7  :o3v@1J(Aя8%/Wm=T4~:] |˥L0Ψ K%"%%HԸKcTjQ /MT-{ϿR!aM v7 "5̓[ G978~{*AG7ӡ֓leQpUU‹kgTg.~.uߥq65F.Ha᳑&B/J;>(=HZa߆f@4S'(wwmXs҃)-ǯ4)$@8 {CW^Y{,.Qj:by~/:w[Opn%D)_fNj#edM M+vr(֐n͋q}>zlaP*ڢyCW)qXA7G8 ˠpyg?Y?IRn?(̺I`=4@cW?VL1X*gOJThxC}.W {I0A|縿jۼ{aQcXΪȆqԷfBvT3Rɼ0lY^\&Ş$?"TzǪ~ultIoq})xݟevJj"cgיhV[ڹ#GB@LJnL/qdNo˱)]>L0ԮuҞ{akp붛%-,&4[js>t *!^'et_vU6| E!S-}[ MmjJKЊLnHPs`=99MLEu{l8S8Ap sIv.??'$GY*d-3xpB˲,jD]`w"No3:ӓǟPALM.w/IOk@$**:I <>s46c*?}8aX8M4}l .i3.$-6<Rq,%v/~o_R%F#7T;OW5a{w[&urc.w(ԏE߿Sj|>}h<V+xIK_b?d1DJ+uCL(/Z/胾+R S؀r ac[dQ*aIw)]l~n=Td:grL Kc;(}l)΂8fZ-lIC<ԺD, ␐K ~ 9CŞ/68ʱJ/PRdL-|\Kqe (FPhX-Nl Ĩܡh@G݄ȱ-[EZZ}2SՄ 7"zA6(ٗZ.\dXs8WaDrķl8ZYLӻ.Sfg0A[R: %%Ĥ3e?q B%;TlL>O"ǣ^72y8Ý{CN5YrT~/QL)# [%l'`ppat%URj)Yfw A;0QVAaV>g? 챷ZTA/ 萳\2^mqK'Q汓6ut曟W(ӈ`Ҏ7ԸRek[{/4ڗ5y>M#O1|Y8du[Kc~Pو_=Sڎ}hCWaY=̦@Zt$ rPUqA0~ޝCl"M8;҆ly!54+DyCnC0IcַY-el-b uCT8hH@ =( 1mɣ+K3Phܾ7-x8ⷹ//z)I ,{]ǫ+3٬i_7oeq骢\E51t=?tj<C| h DƑaPs'J@3uoZI4FwC4SԤ|4dbYM@hgSn"]""TPf%w]:/\ SFϗ-??;v r2%>b eRPVIU-#\s(h\grJo*8`""dN t.-b.&]U#縠y}Qћ#A}zw `; ޳ɩ{sEðt";$!{r vhz|8-R\*1;7PgQIȊk;)ƮQ_jyw/gޝE."{ޥ-RD0afn kʒ00T[P6qxU7{~>ҿb+`OPWnWTd̓0Nh_Q`!cl4.1h 6Z.Uc{mVnѲbn4i2LkOi&ӣ}H Њ@Չ.agM2ryɷ.|eqɻ;ɡ/_r@L}[YBorDZiްHf69ۘ[˚љ #>P&0*ݩBHjMᗧPgbEr,:-ͫE(r5`EKOm96=w; <"@E>vCskf% xm]jkK'!_\В8j,Ժ> ?׍g =~.ggw}/7Ko\XOe(lbD9wɁyC~}9mu}G|4a8+{ @[I!!)*HZ[?^@(Th#жBh!&L:`O,G( Yp̾kvKX,ZAcH6C`+ *ҡ+?ީX z;bAe9A"g4Uv/ n-৘'asY*-{R3(կ.BSLLfoRw}k0 t{Aw `$ m"YZyfHR,q9Ӳl2N#}4cR'blcAq<>IEh.KVp me:LyUP]#?ʋo5l:hwl\-,Y"@úk~meZ%GCJ٢1O$f72)*YM3/4(IaC ~UҪ1"OivZ`môcyQ࢓Bƾ0eb#E`JI-ԙRkb %Z&lYqmTýG~Jϋ* L,\LPg3l9wZEXҥ'qUܦ5dZsg <yw+yc%vm"OC[5c}mBM[)ы/WLe&M+}9%ck26f%lh}ob8VNf՜̖A{Z7>4 <^wͻg 'M#2+7R3~/ RjwhiEH &.z/ĪG!8Q<[8Aa52Ll&R<>r-ۥ29#(rX>kHS b5N| ubo%;rX隄,8#S3W|J ^~ss?ҹ#&?V8K)jTp,3|K=DF H (ό\6_&W߶nn4H p}e|4 %Xd oFzL6r6,Vjx=C;YJQa2|5:p:/{t܃֐p 4&oõ 3B.ˢߡ{A:b"O_?[Kviǒ),%TF=yawzM Yt`Ԫ/aVN_z`8KHZ#`H'r_΢xmV)-ohpu[cHo[J M_Zq{(VsժnX$ɀ5|r>&tƿORFT*f£nQZ+K=SƗZeBLnN?^swQ_67;"Њ)&KnL 8 $kA5lhNeN;N#JĚ+e[= 4JLf^  +\$٬Ȋt \4 yn#9oDF/#Fۓ.[T8[:l*$=? 0)3P:m5aQqU>{_\q1 dW{|OmCC L~礛F{`b?3`"S2*o@tGE~wZ 3ǒmXSFкcbΤmئ*HUOp:B w9e)$Q GoS~Rv_N[HN %Oѱұ+Qk?U] MYՇ_rtLylq %Q;+. vok(u\p.@+ 9 $e,kph駊WHnmӁvaN_d2Y|m6x*E)$D`M1 sZڥ0DE먓:Q6b"3zC\E o'T;6"Qlj?6=~5=o87X;c{CJ%Z#g64VDx :4 $w|u)شMjiJVĝ}`jf0Yy+s[ GEJ.Wl檦=+O*P`E]a. T(F sJzّ?oh_^VSL!EEM^E*}tG'qϮYGv(<;34d E7X?<ǝ5ot,9a6(@O.Ryc/w'u=;S{&R_VvX]yNm,9cYW'9V*}|ۣ@2vZ6U&(Y3~v^X}iMdcsU}Ũs{m c;G6L_%sotn>GwU>`AyyXКf)6tAT-iT G^8$%0z&2"Gn:Pb++?Nh支'[[̧hm٫#.A-?.k.0,MoOR8KE )yEyYzZt`cHp}E%C{r TSE14=KĆ7~Fx%"&R?X+ >Vm˖\KYHk75R+ z;cYx6J7߾+l61Wr/5CGVK90Xܨ0f.^gHJUƉF+T وRBPg,١JQZ9] )6z "u$W&U V~l! P^w@4O,j`#gAx#E:OE厨5_0V'^HOmL1Kz_M-#5D^YgD@_t/Sd[T>=f(.2B+FjSsc|i8mI3JК&Фd1󋽐V{B 6a"0U _kcuS*ɺTj<@* !̏w6ҠSg`_CkC,ag3slA3GX=3xikC(e<2@DdqLgߍn$r'm]-g(⚏hKYzj)8X}/sŽp}DNDGOSNWq^tUYw{LV`b!cR#Ű* A:Ӥ 24݉!hMT^1W@ y{6K<.:YXwz2>mbOh{zbڈm '׭CѤt%cJ~CS'f)4bd J ݟiQ)XuC ?x7ժ J=T䖔{wX\Q[& v*^YnHddK/ߔ ^x90|BV &ϤOL7q;ss[]d#*]wpW1PjyW??d<\mW UC[pCRϹiCΔ4k8' H(o܉cIk9.j0oqd[cL 'mR;^-ۼWN×5i8e,ޱRxJaFwYm`R4I%xwoYLSB"9-YWf |8FM+O`2=.Z_6)co{&(e1e/DOQaLw L>PD aTWqrf%1[kŇou AC)dw,85xcͲkUbڻUg|Mhf$)ypE7MTGVzMϢT}≷5#Eh.KK7Ǟ+I|JNQ#]@"匘bls @pPn2d-`@S)rvCE" 3 kgBtǖt~W0YppVp@ͤ`$<%-*6dTD9DT:)3ZwE*-Md&MSu2RWnCQBfMi17+=ˠ'3F.s!8sZ1G#sMçO !}߰X64^P ?"0mdQlmBJQ($ ua|gXq*yҰ2}i'CGۙ "uTEy6QZ_q?^goq=#qoS,vή1'g?,|e-b.bA`挥{j(8[Hj:clɝeR7!aB= {c0aqYZb3H6m_:$zLyl֜8mE@I7L !l# i[_ͳ=U@ )$65%vUG{,<in]@E޻pўob\&N]0wG)71LR{ ȖU:.۫Kr,!"=kuy0"|;%E)7BR`>{GARZXίG^p{E3ox˨}|M|I[]ViϜ+< \1|aP"]9Hr}Izd/'hv oQ>^M?S,eFO^|ѡ1Q0ՙ<8 c4&4d9-Ǽp6MTtf$qtQh8TѲW@7FYtwآ IuP9H1+,+/x7y&~;ݍLjcńD2=ӒqnѬʗT+[Rk@,bL2ǏsF?J̰ͳ&J#.MK2V ,#l;,hCr]9#1,wob-$,[h-r%Ϸ R⚎k}yd6@,UUYi6txljO]GLC(|Cݳ}􊉥h+>ϽG~Lw5]iYG0XX{;TVWҌ !5#+GovV7>혢YBV 8O)"lٷhGn$`ilGA5 >3m鷔rcXZ ghgL#EpG;{S3ʘI2b H#|pzWq[\I7 3^;g̤4?H%ܤ/f:`Vg"2z!jU#tV_s3k !90A[ANNTE8}l9~ӱV`:-Qg2*#Zr pusԼJs84MG(C;AW::02۶됋8V9Q> &CHMl' jTp~d'^hQM>/;"{e(%;c:}mfaCr=7$TpF 0k|c~f%r.͒#oս0nN< &oj%}vd6My\SBMFQ&`)Y}wy<ya<#w:*v(B he`lO:;I˪ Ar<*ٖ'0*%$Urr~i(-LmӯƆpTZ 9p9XрNy!t|baTy`!A0\ 򚏟qkhǔ NAc(*"9j v =c;CV ,=EfRPT U߃R~`,ہ俭i|֏PyQM(Em M.9!-~+"ugJA+Ldfo %hKs`ԀzD"C@B& TZLtfiz1%0VJk!yg= 0L (f-ۣ1= ڡ TEqK qƴGNսV븺VvQbs0X `?M}pKrj];zN L\"@]ؽ XR9Fͬ9@Z#}-h:ߪEn ["%\ŲLs^w..7è8(7!Q#{&"Zbg1ZGHB>}utJ(=Vck u=BNCgGF S~ZCEsWSUl 總Eq~;;"N k">ST+*<.|yVu;& .]LM⋠`-k6zӂU*;v[J3%IQ ᗐ-rְ7':N;ogI:e&o؀UB[O+F_Ua4oON0]'OܙJ&)mRUiØ eo恾g HΟŦ@?ɟ(Q= 4&1C Q]Sl`.-60 6ňй9YܜƇeLy\Ko}F)Gbu6ҼYV@6b>3QXHqrRCZ|.tRNC#fp Wg_UBzf/y44 yQv0;U7u/8LX.236&qIm;" /ܬcm׽wCږn H3s@ChrvEwiF6J[-Rk+=mA:Q܈*[oi\>8oE?W1)BUw] zI:Lkwe$h>+V3W,O>Ư^LK Hހ8JHFف [1ɅyȀ0"9vwCtֈ8-@\!q<>Rm͵U@Rj*N+ DGrc 92CD9V^fqq|1tԺIvϥdpZaL=BR NE˷9~~q {cF, '>;aiXa{T~R?;+@Ծ7Ň}C(~0 3< B1D@k\GDz7o$$FpaQ18,zq~7F,:B 8%}` lSs[ `EaYB΍5 S]U͍h_T9=! 2 rj]IA/5-b$!]?̵d">Kи3}ZxFq#_`V~Zo鋵tZaL tzV7>B7}WIbW8҇)tts(ӪɔA}*s8f"QBZ,N:IJO*F[]YH~E.[ &َ@!#{>ʋK9O- &Fv j֝.p[v+%ɺ͙o{qKK1hΜF^ZRu/ oa&] 25x6EZEF\j_]  -ϛvdZϽnj J"~|z z‡ c^ t2oc bʛ\5#l}vf6rh sz xGo(pu 'kpº%t+1  21;(@4~Iidy++8Bxj:)QbL֑G4T Rb#B'7=>Toa^7VEӎ$PL| ?lr:5 @Єdt):vk> xNwk/{N2D =Yz^(g͏x*dl$_FKs'#zƍFa5n"$\@=]*H\pZ-3@5Ӹ=)@ 6;pغ,QB^sN>Yr'i.cvv(2aQH`@нoShԳt׉?/ 4_v! ϥ}b7tzm.FH zNtL |#|D\[KX+ {(#p4M$bFݺTS5,S Kյ2_EP8v$@ y(&UK)_3tvE Tb{vSh~1'A0r rڢ ˭Q'i Y89/걕6H2<u+63K='}sKoG7scHO+hTѵSg@X6:5WJ;M$(d/{; WNFH/7m o&Yyz XFsmOzLV@BG .5QF>Kx}WL4/.I8l» r_`AԚht!]O›؟gZT0 <1G)E(:*`*gAzu7Fu9yVbm+קЈ.1#TWXidt`S.vW!i˭gnJ2m9 hgNs,"*pzU"PV3spCVP).0i@ KsOE:PEN )U0cuK$#!'3:"|i^Kzg0*_~ۣmxy0}, ׅG+jr= K8Q֔x &_P6n$!BfBGVeϙHoG]tײِ.zNHڽhyфRws{^* Mܗ>a|b">фon$k[ y1Cqt9 BgҲjXfzoŷ%+@é tC.9 4z|ÌR}ZC#1q27n? oJޗQ3./)` 0^Q7h~'r½{7ro՟GTD*{x *kʖI80騾 >Z髪`P ${aYe&?Þ\1IPSNSYyYG[|swz@a_е.K$z:C_Ɖ)&d(urY$e΅Y&z˝B9/#jc.:2(Mߡ3jBBtYuIL"HJevPfl15+q!F58\Ia)"{#&U3WFԼ,2 SƔ/QPШn9S/,j `UbH5q\g}BFLķ zP" hRh?mI@jI7lN< FFVv[p'wcRdg4 '|U"DT9ȘK;Yc"~Î ¦ޓ߻7jbF+LWML׉q+u\ɆVEH!1`{~8դpqӇJ uoHԢEk `'+uJlU3 e(.pONz :u"&afOU>P2-dM(f@zÖ'g\16ƗMPۖB`gޜM<3%LyX~K~ %\q (|r (Mr5Yᾷw1#6|l ew._6 L< \>)AFcFB?Nc rS@( !T:sЉiUǪ% gHŸoy8|FʃOQ$R#{ ȓj+iUCQZl!? <`܇" ;>9fS>9r gL/3$/52lrG{/#Z}=u F:&)TٶЁ8jQh,IIфN{-C2ONcpWoSgX+' Emn^ýrPx 먪 XR =KS R¨P@a tmݷ,G} nT9 S[JASl!{s~RjLGs|Ϙ,ϳXۡSq`ԓ\j`T:X/5qQ7L3gISמФ٘4<'iv!^$pJ_ylqT\cڮx5zbOQE/0=E` & ʦF`ПC1mj"d̓a$VaQuns6e^^ȭ>/40;1OVrNZ6|exƽ{aQ d\ ^0B%,g֓G6ҥ쯼sEBd?>)?,s;`c(-գu;SWM+Z#V @r}|&}?.{F(uT1(#zyZvVyץ׸\8ܽFT,f,^Od`Xѕ$+Xw^oŦ_5K{U|?-?ln>Ua+lr8<xWE <-߫I0&ll#zVܵ?duj#蓅煵3MW֑d44NگcyܢXK u O 71Gß1RN 12W_Yf6fR Y Y*,hV6O(?YWuN18Qz_Ť=\sՕkD>G=X'ȴDqķ_怰<;a6TXmK1C^b|/LC=$cLMQz,s~ 4[:58ALt]Wf [1NisEбy>SXf ig2Kz˗.'k1Ws8zaE>Xp< m(Ù 2je3WJCO>wb yjt<2|zwN>C |3 uiJe|X6x8MB"Xxȟ7+Ɓ=΁H3X<#Ua9Dfӓ6;M{㰍ƪ$Ŋr :bϐ. #79g6})7*f7:d;~Nt5,69Ǐ,~1#P_6n6|"d+ La=6ղg]mWтq*H5%es'wo-܈KE-߫] YLU͐su֣2*NjhMGK*YFD#.xCs^60D[$J 1.L637O#+36͊;!%ϔ̭YϾqĮcVɤDPAA'm;xRJT>PzÐu9 (إLR u eNΝْuA F}c%3Fq]*VGט*Cl>P կ["F&قd-1 5En&*N=a7 G}ǹLw:st]6[^;3S@cjmo@X/\pcEH2Āצ=' #y#;XaF^&qxl v`^gE~t\K27?A: 9OkrG6VuOŽKR5_x;ovkimM\a;UxC ?D]@BM:nۯ6J+.x#HdK%֣H ir~m~[ 9K$`}1i-Kjh4/NsOh"1V:a-_(]fw? p?29=hԴcB6)Y|Z*`'@~U9#pIО3>zOa^nl)(Ok9lA 4#6W`0w:Ku60gkhb28\]PhUB9׋˞EBen|mSlÎ}Sh}<HiF7LSd}31R뗎9cth$+Ow8r4qnDUW֣ΫDejdk6|k-ؓtjXw0FigȔ 3'^D7#.sKX'lBd(yK/(rsReKF1H/=9$?j(%!_SyyU@0k;[ǹn'sE ҽVt&w:2dm*L b(CP~$z(#Th}D$Dms!-j!K4 )DP,[3I+! S@5*0:i6JA~[U{ (At]uXMQ_@Pne\ǡ`~ %/X* nO EG3[F:%A^ "Ź1sEZCZᏫHLCL";h&S0*/F j!@%MM :v~T 5d)-Ň4Xb]>?^gr)$}I8> *XS7ZLA^@Y/bJp̲5{jD?A@Ŭ;=1џ_+A v+}$y2`Z ʌGAsvO'@)p˷iE+v{5:XpceL%p0W5+M<"-d=|}*Sd)(n|Ƈu*}Qon<M{W g{bx_\u I2 #6߂b^KGʩh HQRESerBǟеvH!#I6W2Mv`+\V0:z;ʣA)vf3cY;tϷ%"9ın\VvA'Q]omJѾm峇f,EsM$?{&=}4 *2Kapˮu-N;~"Ĵ:{#ѫww,Ln00Q ]*tF į#; Yx^ĥu;EecZ#wz3~QrKQvHox/jqN_)祡mR j]9ɲ\'/p˸"<:vSn!Bo 8tɫ } > !yP UDR¾P5wג% ̛ ޑ68:>⻶$Ɨz/t0Sq7LzS}g z2"\')Yg2[U8:9'sApDur~M T?Ԟ?0\R\4UA-ףB`9ng}-m+{fgb#-вA2@lQq1yu;etP )7)ox(9au^zZæ[Vhu^6Gť󃱾dHFYE*QBlo"2gk>mjqg\&27C>h?}P{rC$h 6c5smM[̓ ĘtzRv3MBZgEpo2}=5fAKU''lץS*;Mܹ>Z8FŃ.Ǩx 0L$vzh.t\ } FP]e3HkN,VQڳy>&V3灀2Y]r_igM̝P]q.>94tq&WQQ7'%3B_g%QߩCLOlY`Hq{??^˒нW23D^ΉH(#'k0@<\S1H#bF2j~'z"Oр8-50vj,l)#.Sۢ)Rg@;,Gw|k;?)%\q =?}hsn7UBZK;bZ^]M+\)$Z=Yn~G^N#i S1(ќ˨#2zvlyr=wd6mɑ{[]j%^]$ o8gN8 e^;u:"89S@(eizC'Uw..DFx 4/zkflj)BcdHS1>u' 9h)grDJ f vq)TҧTcT1qCטU=ZQmIXS݇ [%Aޯ kYT+`*K9Y69phb>YRE/uz}OW\`2%nK=CFW狽b͸дnCYD}Nx+XؾԂtG YFz90/1 B:lYf kJ/fzڇ!$Ln2g_W_H18FJ!D^_/; \d\id7N!ۤ+IK#B+P 슶Ѫ S~y3|\W1NlDfN}ڲV} U!ђM;/PN)>Y6tH~}7⣢쒃S=䳡è ڤ;Re dPp`z Sg݊#YbM;]f Sp֓ɭy=x\O3#l  ,YqDêLZ[%J7XCr++r8X\<^^Ҁonl>VgV;)z LQԻ_ `DmOc&HH3UGrHGBȑR BV!$6tIwQ͹ }@/jyW1UzفYdxg"0Jtn߲LEsЬ&)Dq/K{DyL|3?atnkF$FtrX0|$!,Fx{COz8@}Iʷ,I^ F .ML ʒa&=d-)\_>C: {D1.o?-ؔeQ0feKV ܣX(\JQ,Nȃ!{Ms&/P}}e͠|jԽ0S')j_b'y&u>0JWyZtR!~2 B w F /H%j z.|u2n)@iX{)G yRM1!Fi5;}y !|<m"&٩vӤ-Z {H7-\ƻ{:ΑX(bhFo'b11/ No"9lwQMeÊ/~ R$h=(gտ5yT>qgph pI0z&S\'[:ڳn &Z0ɩ.yV=y$+T\?2F mEYK'ﰱAW՞ct^0U4 ϒ$gA#?j9!WpG/=HLd\TqUq,ʉ^3߁ =pE4m! 1?d>Y!rf68}@Dtq2Ѓ'a>V YFL"FSTH^l> k? IDc"!W}ˬ:SpH̢LSA Cl^uH9K:q-\]]|FLFWK\/YYfp~*B~p5 ?=m؋x*xDcgfm2暈 PF59(gډ黽 zʦ/U8K==L_O2@2ɂ`'bqSδv oQo/'/*xJ9o&AQǝw{5:|XUT;4@]P7\6%^ ZKI[3O=WGGN?Fy4-:<Px|Rj QĢH APJ.TQc+ZUR#D`.Kn"uФcpJ5T)KSWxm-1s ;6;Ifaucq/o6s)f&:N/)إ"}7(V+;1rA;.Xj]6(Kү⽼d 92(N.ZY=Zp 87r~^d`{4Ӯ '{J'm_+ ]/9q=oI>V]/ ;"{-y%J$SʸiOI|N3U".3Q\D:˾ɶmp&(˶ANlh Q'L!MdL ɓM_z%C IӸ&ZM+4+kHK}!Q"¹5c~3&\)ـFܠISwPW9N Be=cKګ9 3¸T~tS`.B5&L"7oKzam?jL.2xRXW|I/+ϫPюoVLYH5jE~1hiX{jHaz ZB5鉕:8.(W!CD'zhF 9Pj&piJč`jqUobO1FkV'h>Іٸ(b}Fp>Y6!gC3sCUW?wc+Fҕk$I,Oo dH֯?mC9;޿*\Ԫp:.VI@vg:\ŖCey|zh $6ymf#dI3FV?}$ckS߸nQH(ԶKӺ>W10 (Wj-4C pb5zZdgַ 0AҖ'PB;8{r> :%no bV@^q7F˾"YMJ$Z 5ĥYdZAZh~"m]n$<ځ!"MG߮RkjYV@ՈBhMyf8j=]Kx<]H:I %6|RI@whW IԲtCb4Wյ;2=p~`RZ&ګZ$5?{xL1Ay€'z]Yc|_",**DҰIZQu4y$,6K.=%uu*@*Ȗlߩ+n[hύA!@$!=Y _u-OE_Ci8ɑd~[xaG^_A9 tH3Wi"MYLDvGl6B\gכOπCgni= Nk "Va#OMղ,ixE+CYAqfڰ·2eZͺnhoNPkpNr Qs&U@P]ۛdc洘5ȴǛR>y8nf9L*4=0aA%p+_}PhCuڃHW)lh(Y},9i .وuk@~zl\_˽Aw\3eQIi?bi]mߪMm^}ԖJ&ƘQFP0TMɤOQ0uCLTDZ@繆_\I D Cͦu*(0,I5$Ӕ|iDFESٻ¤-P_/Um2JFmz|u,C[{(N;*f?IY*jـg֢ ǓYb+< .=qݍu_4©mILD'U_,<QmPcū#ԭ*gsq-Nx)WcXS*̛Q8x}ycEc?Pt2AF?yr _m :,>]4v%+FgDWjTd ,*NO͓ wKLjA* lDԪ_h{fP[ ͢]toiAhH߼ ]X)Dxmi'x[W=&r41fxω k5L` {Q] fo/+yb=/:)IMR9-5l?#bH3q/5uY>y\kaG3%RFǟ O,]`=ȹc-+ =N&!EOIbghOzcx"y hx7n?'݇yBkX<0KàT(mluE.5Av/E H&]u(CK 9i36.¦Yq&_w'ƝDMM{o֝擊'K6;.tiJ c+Eff9oc~Ү,AG͘z&MYdrŻL ̇!~.|x ʵ G#є0R'Gc$g7^S kk g`ѻvZh?z"ԅZlQi\aKrAfFlhoT? CTjS < _r{?";yC dznֽ̦0W-}<e {ƶ fꐻH~jOg,?b3DPL ZcuG\[:Vc1"0i bdM > ~-ϛFe!{S& eB^4r3L}F.ܜlvPQHL/>m.{"r[xm[0ZJ&|^+RFH=w4(H[e%C:: c$#$|-GgeiL(kn^.YDDT̰/TYqSʫ8~y*ZȽqsd]Qz o8\DbA1ig!G 7Ђ>cQħHGhy 쉯GRe\.#i`cD>Xi)ՠ%jeз瘥"y"Iz*|QK(}1<5!}id$gpގL&4ūaND.Ҫo*(NI`iQ&PH w$Qh=Opi1}5.B̼̞~ͷzhZʋV>vD7J^MZlY+v_J((ܱIiqT&Kۧ1S1kjr+ݪfCS\⼝qsK/ a" E-Eݳ=aBļAW*Yt' -DO;yܶO_ c?RIE9`3tϵ"d[MeU4&ԍbՂ{ܫޗoB(Vd)l; )bazVDgqmNRV7Z34XoKhh8^ި@`yE\vKG| Wt-Xl&?h )=J߇)'9}80}94CGm^k76r^3Bdi*Gz:dnL0!8S^a.~ئ+BWo$|IƾnΕf4Zhʁ|&$ʭhȒjt t?.J0ԝԪwqM^->,kr8R~em]eEG/'`6XyV!NvLʡݢT*rS1GF&񗞂lwU%Q3Ibg&AWV=n?=l~'.fYP2$fMWgPJzP!0L@ ˨lF%h8!T6f0ѥK~̀ޭl;f;̨\][Ӥz!d> ?HYl+oN[Ƒ@éC}SUܬ\W ^I+NK$m{5ti3^PnTcdG 㷏&;`@+Pee4JB?Z? MGw-3\S@YEޒ,\!ZYl0ap}&lQ_LDMW-cwR oՔU7d* N;39¶'p,<ZMa'~AUM.q]: *O/WՄ]on~Q߱bd[y]:b*՟=yKG~e7%#:7JЮL7rWJ>5L™Khx¦@Gt훱2'"&ReG]78F,ɧ $X& k+AJx+M?9It\iO04y)Rz_[>nKFl\;f92@8ͤPg^'{ !!ܰ3"(:pGphz⟎jD؟2SYO4Z&Yԡᇍ~lܻG9˧[V(̪wEjt8CEMdۦl~N0Q7P`]再Vg43"Lƫ48lX'(6wB u!K'6ػgpDœqJ'יh}ż󈨖1&,cߜm3֥"~4y%=AW`C^p.2_aS!!atHnp{o-鞃QLw43DUY qnW0#i>zu!f)-^OM"p>6PS+(;ʑ A!ͼU)iH7.a\[y>Y%h $bIYJ+bHiY4u%M|;aqtotZI)ӣ3Qi{w1X?YomMh0HXF /HO$S%vqQӃyS6l򙷣d89MDM"X1:n7K,NlSL1Zes" h98L}3LqGid3-b6n_,ܭ2n[a=4ȱ\V@=i.]*cu<2:x㷰B|\v]`ʍ&ޣJ5" LzY~#bF0dR;CܐnovyIdVȐL;ZbrrWMtVTx8k4B+MKm8m!4jD\&c 0I>żT@_ͮa,~Հ|nI>1aTN:r}+uEF^YImY)rzخSҠ[1%51k/]dmS TÆ6guz!"+A!5ŴTYH0Jq,rX] P,t=5\٩kkU/읭m@p` ! +Eg݀0ZL93gBo>לi~n$*Fʒq[H5hNm-H'jH7:lCL0\yI47T zyviGڹVFYè>I<0-PRLH$h) ԈME.@M@W]A{2a~y3[Uװ c?wFd=35Uv6;jyř䒁㣤%@a4iSܱ`/`i"NfԜ)L@L #R5 2z!8􃗙neݯ TOdL ycl7:ǐ @MЉ'gM-ƳdlCn@CN_\+%Mi Q43ĄDMBC8nGZZrnoEwLHig&e 7vnt؄[bRdjUbp̗`L6۩ևOLR8Of0x.㸽F\T7%auV$ Hd^UnjE[m4ߛ'(ݐrkA!?Vfݘwخ?|F& t9Y Is d>k lqBU3nVn{w+tY܏򃊄#w,t{Z#t@s8Kwv *5ʱN/W?M w7 ftzs" ö*i1Gֶ z,,\a%:)RW3=ã#5+_? ^$Aly׽CGsy%bnf;xt!x8LA(^Zh_O,M ZVQwZէ x?'ץf\yxq+c)۽v֧,/FqX5.嫮`^ǂoIIW-2tq'^@, 5$=6%P*Y3:c,^uA} 99$Vl>u(~dceR pfrg#V$[ HB?,7}N*u|OryC2O1䇽`Q~U[Tɸ?`@=%yvӥ*54n2t}^($= d6Heϡwd4@|4'ϟf8;D.XQY[Jlz uyѨl,GaTv>bM+cDS +2`dB6e҂lz\u|7|܌vR>rn說)7Fdzzq/onE  ʰ/x&틀t Ɩ5 ϊl@(7X/$ ,KTDN Ėt U0sʢP__IdtsmVrN3sѤR0XjA~fx=BVʪ[?qzaU;WWy"bH _ĉ(L`<1= J*:-C|* R]I˿('j9>f?hL.s{nF,B (5T*!Q%eUƚKtzYo"j:^Ώ4g_^NP%0.2ş&= l4G9n~` !r 0"Rl7IM͛sBJsgM}b=.Q0hS%,9!$LF\- gx=OΕ' iVW~y?SZ1TD>>;Kz~?"Y I˺}j:[خi1ǒޮLߡ_ECjQ~O.iǨǙ4=L5 (rw}yLT[ >?Z&t*9 |nSo^ ً~]&i}[\0uK,:Pĭſ^{/06k #\ϖ{ٓ:%>mQ/(o]hXÀ'74_tgXE}I%_G}Zv˟O:fX>=Ѧ-ݽ.bqF. eu:[c2vŞęH :ަKިVNwy /s4VICjUo_dˎՃy ACHb = ~LA~X*-8Ø8gR\*ci$yi) e ?"Zշ=<µW=Xis#6ڮ*o [/lL>qr& Ta3hr1R ؎Gu/|צNJmě~~UruTqDEÌJUɞ;GkhLsu-{O^Gٚ>!"<ƖFTDӻT<"s gT";OxQ0bAw W":GTrMSZeKC埰y} AU?lFhJE~vq(`vMd*W/>4p-mdp8'|Z{Znٌwӕ,RN8 ~c+ ָ|7[ab\+אY m%n%C{VΝj96p_ P"ޢ!B^ˍyMI $怴ṱ/8$@`ܩA*E"X̺0 "ER`צ-}ߙ BZ.QIr+Ԃ6`dL؅?x JezuS3 [s?%_!ha^%`!n 10>窜m'ShW>iHӸ& =FߩYЁ?gb;3/_,fؚoG+* @ Dm9r&:pAh`j/.{'sibWsz!iK\Jw4-pkOoH]ܰ처Df?tn :qqOcdMw&$l,Юث~b9WnN/+a]b^[z/K Kȓ+z7r b(n!]fZ%/r)x< 0xu i T8qA=WG`]XW~ ?)Hwҟfd{ p9G6קs9=HI@)=SƒӭI؎+zӮl6oh,JͶgnoSt8!FaL Ð0[z>.\I{+C ԲHqPćqz7IUz,%wl<+x9^',І`\"qj@Yed%Kq\|EY $("RH8NTWJ8Xgo⛒jX3<8 a:OF^)wvĪTX`zt5!R-OƢ a&r +f'@p$95j3Lh]z{㥎m? ʎk3.UVp Dጴt^4EThiǼ@)s60rwXLzj@b! /P%o𕹾[=n3ݣX.O[s)z+ dnIE4Y ^6dِ.6Cv_ *Le~͊2.<h hѨq5Q #ZG8n_To~.6{Higz?t._իaf~a[3fq{:Qwe<AJm>deTvۭ,XzTryUtK@*<$1UWViHM+$U>ֿJI-zsaS٫Fh\XZڊRsK}cO;q68 rBTqB=yn i3P&1w-*E:׾ܺ |Ϧ2tpV'QqR&t@*GXv n7IEWl,,?q=@DtgkR_&Y+ iȊ[H\=>edUW0'BzkutM/LA6J=7$*\O#'2$DDwOX2v1R$_]ԪEY_q#J$,'vJhGPr$WV8vBLwg:/ט.+"f`1tv\EW cOl2z+`䌃[6R54 LTJs!E`Ȉ Te7j=k:·⹤ Y69jA/޾[ZRgKLs}J.5bׇ*+GviT4J/E8W>5pB*,MJKs!+h-jZj@ b~ZS?\ܤoé%5hǧBɐ)zfiD_ߏ&بPtoAn |ܺb ɛ#}]1៝lh`4⒣gn[ي9l\MvTNx{h1*—:~EO51 LxoL=dg=zB3ߣz *ӛL b"Kz&ryA`SڔY(],ߎnR uK=1^_~ c*M+/ϔF&cʺ50V[nC@[ھhc>Cl@30dŕ,0X31:` R%,#8N~nYBEQ|~ AEub$x<SZRZNkSU%Fwq !vĥ 9Z4`I진Ӗu8CG[1k ӽw=>Qm160^h<^1}I KVosU 3f|= i%ԩzocvnʞEX08ֿG]fq&7+,U7PP ?7Ju@\ g@1D)E9~[@!kTqBj;͔D_ڇy4pd2=T|Cs|O #P1̚c Lt{ ~ /ma_ָdikEQIU 39Q+[Pao+%DK = P˵2(}l ZL3v"$ $^5|:Wt \c\ X&%NC+n%*_VL9gH^f4fb$PhF|dG|q6M'qAۋrE#w4ug9|@&խ>1%Țc8F "Fp.@ZA⎫g4l8My_TM*wW$aZ,ܦ=ez&;o8:t.ؑfC}0l:&y0`@^=jH9l%j q>tWR%;@ 4nbaN+@õ"˴gĂͳ`+1ѐ"6{- ~-kn;TG_hoLKY:Bf)zIw:o ";)n 3}v$r@m =%xĻXh Ü,{Մ7aaTXWZ}/2})aVŽztv\Xh.SYys[kz s8plf\bSFd%\Hp~"bN`vJ'C (Ԟ9BޮL))d7 S xe˃SZ:^W@[o;z't=quJٍt'0_蒹$\Kp_gjY>+LkH۠?[Щq~<\ٸ&@P@4TD ov̌ $T,`Eh];8bErd݈ 8|MB[#Hc$Xfϓ^KI2DP4XSkF(m ڜQNvqz+ڠPSb hej: cJTn/'Aƀ[0-<oG ?r!%:CZ2uw,&T+&u S8:fbp ShI6Xh)_5tF|>( roK22j|&xWy='!"{9"8&{l:S3\Hb$}襋NfKM޲*qi%W.Pv4;UGsԅ{$R7"yXljM:;n׽qVp("{AT*Ki ,89V8L+B !"͝9Msݹk[f{ kW0 GIZ%;BYKP#a%5K0HWL:z+]Ϧޘ핲$ 7I|e  } |G) DIiHkɢpDO{GuVv2hV͉ Wf+2]1X%u8IJκvJ3 ; nY W5eB}N[n#C^bf5sԮ}pBxCܭrx7W3WLt;Dcm5mjǸv؈!_AiWsr)Gtt@{Nd+S |Ǯ"V@8B,3v#srKտA [uu9íГNy&6R$a^zywݸ78AuE /]Q2ʬUN\*,e,,_@̏3XXj0YWW]MWF“Hh-\]%Uc(t=GYrfD i21|>ׯZ=O]sR2277SBsrPIVsDP8C]M%G;^\ NW )Ҧ؛đ|ԺBS#1Z5/_p }x%[,Jp̀oXmTDWVS,C~e%Z XZ@`[G@Ϟ/≖gKc*wCieV0QR9W<욹/) 2ˌ.P@\]oCdJMRo;Q˞3N rBzh@v%!?Û`G)໪ (VޤyͶBmYȔ9x@W/c&z$ݏRyk*p]ZOjvO>vǾh.N|9NavtN\_q}EPPA?/3J<5{f>{_JDr7s蹫npGNԁhwNb `?Xq \p2EϽi>Fax,Z3rT+8CD 1)6/U,r}9"P.93vJ?AzZ R*Ӕ[mwoԕ/'f dpX+C B6.͔T4L;:cZ/HH ѯFDD).1́{ܟe爛Cs7D2ͭQzOCz49p$&ș/ T=|~r,El>Tʲld(WB$ 8k6}m `xhJO:ɩmIL%AšLQO\!"cx$8dui,u~I'䡽GH娐#:Z? z > .. 75KwABZIXŲ3i_/ !O_ L!iWс0J]ػ/|Ⱦ45ɿl|wPno>9[Y SLI^ 3)HdC'I(h.<=.x5qNдzZLע<]AWGKvѨ@H7'V3yR]B1;=l)V0,M4#V|4 afra4,Ѩ6h쬃F:+-hU΢FQ=ny}8~a4}ˌ\]H:r4Ca.PF4"=w:7E,Q}7!J_|)$u9! 4>C`M46L2nRcOщC۱]sY.& \4A²`QH*>ѻx8YއBBq~1Vǝ4"/}6w)A}@YlT$(1QfPBb:邚$-L)F1?C^_6DZK;<šlDF憪_ɰ g.54e&·0ZL?hM\ lvMf[LP՚\f(H Hk26҈ 2[fɟ6j>'4h4K ԟ' huh w3ИR}'y4d*ٍ@ ߞYK jfrMXCѕ 2w_YB*Ig1_ɀc}( bML,@T#!ElCd = m8Q94j -yaȔ3>ItP.TNb;!x O`])ٷ$,G~Z̫.<1QqfGb[gT}Q/D]e#2xMBi ACl=Fiň"[Pdoy u>˕ t{]Õ!(7R89_s_xCM?*ˏ΄߾5xw7fw2&*cy}g$o.2-NԙJp+§i=S[炘hGA?h6(/rܒL[Gۆ_]^jf"J{St l5Ym vt`JH@+YewhvԡVEaXȳ|-TԌ&]m<GRg *=#lHH~ѫ= B/ 6U0KI41vJxLl2RkxZ#޹4O"PxK<>& 2Ã__.W+f|k6C-\IkO[{M$KzbyM93b;/LNB4y-AYQ]ၵ6tQdd!Q~oP IwX'u6dJac ,$6!4}m6cN͆r:W_љktwI%*S- v/ Li]2}rh7%:=`Ltl032WBU+\א!/س?G2lS{ѻ4ešF2/p>M;H dv( ߤɼlթݤ󩮻bZNxX׆nMA=Y(C*5xrypgWȠQпП͔x~57KT%_"̳@FC~+fYjTs m"8T-<f\B| Y{!2FiNy d?@;0 q5)D|Ivi|[m FIQARd0Z2^L'\HoeXA塍F9 -a6U :ѩx/'?ڊA|{SskvG99 o9 s2ا:?\CO}v$L6R:hXse-@du; } t* /bgyɷ`W ֓DAg&fI>cW+xᨼ"f'[9]z`/z9%]s) 78ˌw*tz 1E.\S+ruQfNbK ѕ&MVr?kDXG~~jކE> L>RԩܝW['(IδU&B@>z=6d6NzI#t]Qb_!a>pHHsGԷd̂GSWJ5^]\!HM:YOb879pM.=sPRYlZSpܜ[{EPče7-I~ }~]C~<6x"- _gU#1?:0&Ky:0A8|^X7zӻ}H2 a&J_VDkhw}m:;yYp3>23j WyTpzoZ,bp_h:W̆=b"):p5EgZw\E.:,{ U=εLޫn.NE= &TaBr ]tZ3*g\b_:2RMR,VUapyۘ\'iX2z8( *>1{_<>{;a䒙,~_d+/9yjҊ=^U紹P^2>#M%F@xk V?~0i1GyZ UKx9{q֤5ꊯnН_(0~TZ Ze +M?L}Pc&R-MRW)1"54'Lz,Ĉu1rC,MZ6LR;H;a3w1[ƒȸuECERfN+ Uű}n,-Λ|`Z=^.jQ*̵|nWs% LH .ގ/J\ʙ>S`7LN [tW i\9|ߦ<ɲѓ]C՘Vtܬe PRX=Wć5,@ۂQԜ짬])$ L.6: sYTF ۱QC1Wf>t~uU/P%HIk f_@FEjLA6 q 2kD1G@=k͇#d,hFtV`֜pR@Im Q2y >}jøxbQHYg|mfĜÖo&Pn@ y:jl0!]3_jcJhc&Pvzgl3Am5V_vxh') /sJC,3@ZN7+(὚3,_ag)Gp~>ѓq]CӁLnk~Ľ,~վB|*MƵvrf7(amo F}4joQzNU\\P3+uV>A6Anpq]0g'=J$)O.pQMx-)н@)o-JhsEx@EPOY_E5xAK|r2G^e|8 8Ggnj8|$ ]9jhV>pxKA=FKz Xa4*Yy94S`Zl$ڭB}Ee#؝ƕ:&s0_uZҵh:pd]F -%D=_dH:d>q{XaВS``؏>ŚdQnTc"e)3<3\N~^NhjKl;XOS3|)}3ٝR>ru!3#A6bLM X:F fe5Π!a!NcU5[xC0 !5^5?L$ަF~ۖ o _ʩS0>Tٙl&k\`6*5~{ W4Z?uY}}>!{SHA~ŝ<9OJi-~ :04 ђD4 *KȻ $:a]V %m)GgguSSz`$Ȧc@&aHD&=Լz9_4@P&TPEncM_dyt0e$ؤ$Xʘa+^6YְٌߏL <oݺm sssUn,eu j`n]Л=vS eqB?upǙ&?v5}%0qPLތ?X".) *%a4t7&n눒 @CY>;X7l.Ɨ i!@>+q9w tT5Y;xAzb 3Y 03x˓XͺAuL I)5bTP#o 9aK%+Cҟ֢h7w5W|_FOS,$<9o.?S/ YlMo8$$^ͽCY .#I^tRQ`A`ylt%D*cu+cYs?\o\ڄ+iVȯ3VES2-DfOrGcJfd\J5+VǤ>E1 RZ,ꑻ8eZ[E"wGv*TWu~D q)WS>f-1yM%Ƽ]"]ҋFrJEkqdnU<+|T: ڑ Gc5qW~mzߚ7Sܣ뗬tdYDIJ}=w2%El~lS?0B:ެ;BhƫYKhB# 9 I`|}CjZՖ0#)ËS6*C2V7ӷ!אxU/4Ohr|iטb~|iVn!PvYLp?q>JE.w)eY ٧(W* ZҳQ=՛S&*% k?EaJߥKjsVM`U}>G>$+N˨Dn ;|,1LWY$Ru#QY}fQx,lU\=QQU"vEv֜n( bw29aKYh<`:w L:bW>2WJux"kf<0$]r)+jȯYkSF.֊瑣V@T?ύj wӔ&!tZ,0'0廞b*;x 8QߟVN&F m~ٔMbO#?o52#{opNPͣoi– PMdBh![czr\Q>+jZš\Bqh,m`jMyqMaJf. ,Z(oJ9׏4v-RyO3&ŠW J~)Z=PCZuµN2!kJ*N,l*Sѣ|ɺOKOwȁH{07:odߕqadi9z&~մwH|A}NU7D_̗bҕgKFeUt<CMQeswvvP")B`R}mPpv>٤eQUeq}쾦H ]c/L6iY[渖M7DېڧAM+oդBiqD2Ӹv[X"5acwsI86~](wP>p3N̟-%6ӹrz(7Cmj=ϡG`%y!4!6dzFw+x'#a)\;…e 9?uI[$"DiuO9Qל*dnJ&E#y*l'%V\=J3'(-4[wL `O}<ߴhƤ^W. 7"!nlARṐ<cKcɱtLչc+\?Yk:WǂSZ Һ=<NyZ'OKOw~3Ӻߎpo}8T@آϋteC䊑BFlg șj1RL6UX3)C486_6NLg-ܐ/|fIaR` >z%fad|4GG,_eqo*a9=`A]Fg5vΜ@{#>2V*ئߡ(||}oCA Q7KXLO'q )#7PJ_O?Y {}b2H}rBDļR*nHU"ebF #Ӽp$.7a@>kkilN/\An^pZw 2R?{Z<C-DD1dAg0"}݇#6H2KSrH r}ȚURA*E1?xTO-1) P-{.Hxi%\uIK3йTiu'od0T6T(qzU6I|Ar hĩQM-/[dO$iozu󆸹?}7Pe}2Glf9Xppaa%לTfvhMJ?rAif5ݭQ os͜WsBah]FfML1qLqo 곖jXÚPY_LsZk*i 'rrW0`"PSu ̍>c*IXխWZJҠkTL>p-S 22燺bB xlGU~jbv*w]D*dAѓdKFED"Nv$0K땗닖I1;ޫ;k5k?U0ʼ rsOg${ Ŀs'sX5p8PiBefs=sFι5Өl&~E#ľC iUrSQGB͡Sϊ$( pY}O1\b-b$ L*4R"Yؑ},HB _:`&DOOH$bH)8[8o Łhf~P0lh G$z^i7qҎ0d 3h\9`J ])6|cDuP$vAU ëі;:e"GC!aa6ΣՓf56Q[mPj"u+kWYZЏLР. ZG]e 1PQ>4vzsֆxDFc-v#"`DBv1+#NjPENiZᖍL-Εyxp*Syp_́2mqqAuzyں= +L1% s/{9\Dy/ǽjs߼Hn0x _x|[l_.,Z(9^$ *=u 2xLJJtD& pl9V",J%pfӚ{7*N{x sHcG*_ɍWTʓP?JUna~K&&:f;$;wj$EfH]DۂgrCfr=m{Nf~,u7s@P<^zSV%Ԓw+?|FF1IA8e<@Y ~4~,ӻҽޚcHơOBP!DoĪn F&+A*?ߖ2X0y+b4Uh"p~-YATئH7j=/nǶV>/0X-CmF5&B@4~:3 jV?C(Hbd3k,';מ RE1y#y#>y&Ud}O94ے䰵}Mbv}o"'[kS2Xr492x r)o bظL€*2[j+Ԣ/f;cRB-XiPk’L9=ht==`I؅r{(cXtJOUuʝnX OGҕn(EcdS5 1`Yzٲ@Y .DE8owB&-DR JnA ">:8iU(4ߪUczIS<6/gЏС粰dTJ hIang!r!p('"+.P$W.9}Y&_` jZ3nfO$<,+*fVr~^NR\w'D'}5@Vhi9R>D,{|d:Ţr8e`?ФuV!htd|$ E,_\y{.<F%]4?F@7Vi0ύrJaK, ̬Gk-g% ;lG#j'(p1kۆG$s=ָpJyvӄKܼHwq|hJ ]`$I6=z/5鋘D41J\QP͏M ZHӨ/ J#_(NI XǔNL"## q -dw& sd/ v`X IoUl.^pE4%uS0=}@BKI~bN/y?:= wvJӥNtspȽ۽iš;ˉ-F=2z+v|#<&uaUהiT푯-޵tI[#j E痘0>Hf3  se q8F&W+OS7º#CСI$tِ1>UҺ$sTa|C Sv$kVwYHGM[c/4]`W"0lKjJW%P;a9ɣ>yP쳦Sk3Kx7[bZCP4bP6+>*E,zGOI˜ _.gO0$n {GK yb|!u8\:mW>M?A9ef<Y,E2a=QFcsE Wx6`Z.'&28:9+ʹ*ʕC|KPXͱ5 D_ف/֬*+Ql"ҷ6cGU;2R+_`7Q#ԥ" {Wׅ5$V=5p~߃ Uj|y 1 Ծ}\ p bwPAAc:H"s4YdLbB*W2c^w瀎O'לR6 CV/~: vqp q$|tBmNG+f=rH*Qd#L91ŌgcL_:HZNvqSz 'a]b:Xbh2DGhv8eH 9 RK1tb' 3P`]<&ċl]B=Ӆd~WFd)_w6{#SS,>xQ\ G=Y CSw8v)%TZA;q{v:F V͚ŧߘ4qP5,ڧ dhƽ9M.'}QooYe+NEzN}wۻx!5D|i@wxH/5S/p;L͟$/ߨ,Gq_[eS؅J@"`D,{/b~ý9]@;7x +9Jߊ 5$9sCšRZM0tN !@gT,Á/4UIESS@c9 #Fъ[jsa MȪdOр-)T#xһ2`N,*]QH/4*YުigQ8Ԙ~cs3/+877a/DﮤjqQe3 l+ۨdy0.)r$n @8_ fhڄ1&nRMobd7켲ReP5`D;CU"k^ yJ>?u}lRY սmœ 3E*KV )7.Е~Zc8 ͟Q"G,@R\#Yt}E4Rh.ZϬyˌ!L4NF¬~K*0'lCʃKGDeB6b R VD4uQS Yo{Ŵl$HlPs?[!GN^um,cA S;yyʍ\G.fC4k Eq$GJ-( ԘMP؟S(F(5GA|ʥ,}|$mlMRVTZgzA]A@Ju v>X$LJ!:*I|AaSSpOGw?O+xh*|{id; 1fѭcc9 5fz0<mt9PRhvi@rShGe) d@m81ƽϩ9= YWj˕ by,n :4ɡejU)Xa`Sy:El *ˆgfWFFGA=m2¡٭3MKIǁGH29$~!jRKj!Lo ?$x^xG/>#wX A+[M(!"-XJH@@5dQػ_3(ȣCsBީat,g+bQNHJ]Q 굛)Е<_^vr^aIKn*uMHfD ,~Ǡ4lLNކC2\L-1)TYtv7GR5gc1DE ' y $KʗZ*6K+D8@;Q?vYCx}S<rGvVm;/bʃptr0qS#rz^q )z>$Ҕ)3FB^ֈVoܜluD0#px0kWmƷ㴎H);u~nBu'WLlIJaVy⵫ِoSIr-P@]H;x}&U$%wf^!mZM>g Ӿ]|_Tۿ?$pIcȆzd10Bh]}y]<'SG, 7 NN=#5tR:+= ^١5b;[mvAɪRHZ@{8(ŰeGzFd/5ƣ!끝KM*ђiNNգmX ~(^,,K !TJ9;ɑSp &U "B]!YU;9(&D_Ѝ$r!ZU,վhR񏧞7@?+ZiQ%(ߔxɿ:ux ~JK 5X\?WMX=nAIv]WhsGM-Ae#R6K!e%K]ڐw,^8Z+ڡ%g/WQO,i-dY`i5,wao#DIvk(v4qI'3NmlfL4Yۛ %-ZIYľ=`7[z &a@H֜ڒѡ~u`z+.O$/cM_TZocwu3^͓D FeWQoo:Ȗݿ.Yb&r=oX40 ~_|ӶB'LʳT37ݯjJX,VNc4㲯{쮩Dڽ Jb7ۯ{E274¨m.ًѠylGi\&| 0-N`Y\4K>[-`7-7 6R'}*if[w9(+x Ia,P˓!)6E[g ¨`Oʝ}F׾gYתf;n]KI0) Ԓˬ? `݋;Md/ YnNB5U_1j )3>%hՅɋjf5/I$ a%{c bdЅ;Qw4~Lf vD_[l$2߾(.,t [n0.uH kB)֖:Y+gS@RlWP>A"H%pRۯ;-]3D~L?c$<ߵYo˔$'G8qsFwMf6T5ٵC Yұ  En4p)ZƵ`c7ªi6+q, 73TmhͶ+ - ؎w^ :VFt6$c|YyWp5{o8%T8h&'?gf0JDV>ջU~{GUG" Ȕ{AoANZETu.8 ٚ%7TJ Y' ʅ>q}8lU5Ӫnr-%FFZS_M]]aeِ1zC<.#Q,GX |޶|h'yohyA%n;ܝ3qm}&:Uudc}*uX˛2 Y; ű.bB#0nwutlzO0a_rd 42 1Li"%\^ u_Ly^(8T˕t\]V\rS Gm+fB(WflsBR@TxEԗ/=kZ.tQ& !W˜l7y:|a(.&Og~p).(<n_ )i/@%8O]JV2E))i>)%JZd@ nBؤJ Cj8-ghޱޚmRAE[՜[gO<$g '8~lc7+4^h~tt`oU*hiz{(X+/b53WNn84z埈b!c2Pt-Jϖb>Du-d_V5%2]ǖl&UsIydSqiv(=;'I.W-_!}\ !/ {#AW*b@(%_2o_Y#8|n=y ܥ~8JN[Tc[Mt@ +4v4R2&粔äQ-:,IMB1 ^';rohBW([v{ /  jHN挟ے߾j5Ae+BKŧxVіIp@D=VvOlU~L"1-%eOl߶ȍ>yv>HxdkO _=>*Fxꉂ Sֵt<0L^n3=Xl: DaF=ZN__`0:9Cξ9&W{bs=}fZ/vMm5šDr"JMSJdq[s`ћp%=Q[}L?D DZ $4EZڑ7@Ѓ4NpCZ80ĝHgBY~L9wAI[&j{Zr)IАZφ0cBO̚W$S+$/dj׎0X( zF ?Pk,?H]Iq~3qs&TenlmҎo3:Oc.4; ۶ `L$Nyz/K1#bvsÜ?C!.U0az+#U&}h4vK\;ܲTɸ^VhC>1qAsXKЀurj娓om8Ŷ<G}c|, c84gH:2,=VÀhM WD1St`ڶ݌ZVI +~Z3/U5'1Ԇ t@T 秀dU!҂Vw.<ғ"_`I;>B]@ɫkW+h6lpeWVGEɞ[:ل!+Bȓ=ٰi:Otƾ&#.hWC_Ƈr2Exxc,$ALhޓ@!:7XZHKXxe%QQ8XhMe* CRD4 0z{8H&w3ȿ:!T J1z'`WD`%c blyΫyB8$=w)"ЫtZ}zyXS_;F/ ҝCdDۖ$A #DEjw Q?v+ZN.ܙT cCքƘm44J ShrKEO;u-\sW#DtaB\Й’m\T߫N#|cts+:ԫT0Be#ACT73'޼[F:B-3>@gB䈓"d>hIϩ/=ؼ !^&ܽ $VNK]_t7. 0]5Eטk98p ;^%ukZzob)LG-)mLĦF9"/XC3QB\i ѐu 8Jg4B#G|amPØp-F12]SG? M)):LgbEvVGh=h+E`9hIm[z}~2Vݡ8*@I*h}f[] m93<·]ru%Nz`6iP^s,L]bϭY]PyCZPb/Ry^N0 ש(n?O,삊3=[#UmY:1p# ӿ8GٓM)1ggb,mOɠZh%lw25T;saԣ@lcYdMS B/vX *5};z)k(ݻv^s۞$T׺#81r,$7ȝ_#s6J+㴴8S6cS"\w.SP' C2+7X.ĨSk1fo@EL-H!V |{>!eBNGLe1I헄:}O.Ҵ3g9H,7#K|;vp8b9&_"o*X7x)r&9)e] >pk@Fݐw%m+`$6VcJ2fp9az#UXdV\6UOl@AQeY˃`J c |a/`FŃCy)HPA-oU,9 soso0w  Bvy)I7MY@ B%~Ț\߲Jao,=WiI^dKآδCx"*GՕyrBY_G;]SSO_/w xvs8 ]s*&Ҡgfzx;@no{wG:AWYvO«ʞj%8eH- N[m>%P9~ 1cB*Q/サ /W\&)<( 4Ԃ꥞6ɾwNasNT O#[R.:R${&YO 5X(]Y$!RiF$^>浸Q9>[joh&=E͛e"Y7d!bai9u#XzӰʖE{idݞ8 cҜxR0a.#uda(Fv7gu0!a1bѥ9ɘM(ֹd|WMu@uGH;;1 ]6m d2bz=뉆u0G&Xwb=78rփ/C]/ N )28(,Ap?uzh٣0+j QEt_:}bݓ/$'3zɤŷ8%([՜mx 0Nj"3u6+QRuE1@j7pݷp9"Ԗ`ДvYԙyYLs Cv,hʮjȿ֓Mf!`<}FV*w`A =IE,sp! ؿ!݁L +K$ sW:*cM1VxJdr?iraRhQum-ܿHZ"R2BG<1i;$=n{@@S*!EwuI6;&PGREs{gϢx Qr8oM+,FKpXݎBd(+z3ZW|zl1S $klCܾAMuL:WS,' (NŲM"CdlH.ak9*UQcV6`/!ޒp\ $5';>\.OhCbXuu5HOWHf!Qm >Pst% `D xcI+~M97+zN=|6eO}Ҽ9ғ[(~6:}v]Q[,WYH_rBt-gd 81bCp(iBʜ@g_k*5$ȴ=`zt⪯AN"Uٓ5TMX aec=ᆥlF:)̩Inr)"V!ڨcO$.>(O,Jӌ6Ո!( ߫ rJk(* .h8/8ARtVzEshK5 v?s HGVS4'IUm# Gx%VϾ܋ՎWۤh9SpN&%6Oh^ TL$_'tmp5O2_++\vv; uU`"Q2b‰\ԡۅpB&e=QYaR&(Ώ13Qʃ˩ IBvژ٪`;f9W_nN'-ۏjH7eM=;CCb@txd{IWeݒ?nid_?y=ZyB**iƀ4Ksc|P\7jX ͍Dج(I8޹RN3"/MIiHijHc u:op lv|TZ۽ ~[zy^vD }u2` g`_ƭ I;^=u)ƭc%Z[Pm4מ)]ҥ /IrP}!vJcٙi@ wU,̸ܑ2lA&%B;ryn%VHT)co7TF|F ĺG} 3h+}$}q0`YEOcz1ĭ=@T݄-~¼ UB;t)E8GMbI5rQ\lkrЙ_hYUs`r00==#@lբY7 ÉXJ1ב>ab?7p"%RnLgeɽX\d8\=,>a *Iz.,O m8-qO $/KNy6c?R"b+t: SF=DTz5YYa1g7vi;z:QVƝͿB/a^`kt4 5*rvqGFjt(|>c0$(1ǹe$GgF.Ks5v'>Çi]do臀qqՀq]^ƑCn&J}:w\ WlF@2F22)QruB83"ǶǎtogWξ5)[?hpy>!B zĐk! $EVAsm )spl_("i8>\8" 7*u{^MYX]]Rےv&Ƙ[~)j+tWhɰ.܈WߔprJK2Ft&|0n%_Y+r+d- >~JK4yW+u՞,ch3DS"kBƣڡD<ʜ\h]ƳwN&$XR^߂{/=Rǯk_xbVF)CRhI~^oώ,ܝbB>Ow.2} NN|ҭf *z0'G\1>wA!5\Õ{au%:۬^q۶mr3Hu#;|nMpҘ'3gS{kNʐ!cӳ*V/llvD1}TƜ\w z}sf 0qNP:C}~OP1ZGŁ&u"K<㟞\!Z*buG_;U癸:T=dH"Qb9;s~Hx/Vg4l8bgjObhNGThx UN´;@OkO_ D*͵?CՒKfr@ ,cobH $TF{^ӡrh>ZU-"?"¿ӅeR5Dx9U*ly79igI 1& r6"fkԌZJfpo8]I)-#$LKZzi4~#yWn5Vq*L@Cֻ)!w'INT׾~~#ON;LZF[0b gdA-+hʢ2HDv6DgQt`x#N~y养 'k˺&=}zb32;if`#4t @tZFKUn!6kPtJE)ڮ#-JZYI[^gVGaRA1gOJbj{Jv FfjBJL\qux5VkϪN_473c꒖oU\ RڞEڇE 0l_[JU/]j|b. x0y>,aM #oQbV;$0՞RhkhR|Ѵu'^ yN8.r((uIJj0@ek:Z(AipCErO?5⽀W~;;jkR{(ml]le멁L25`HŅ![/)D*oЀ[}_`;r\-Av@y`#*@EggX4sKk.utQ*SV) *̮?4l 0N#/`M`̌j+(vLuN9QdEa8/>؋eL1E?҆{Y=w7/L?!۫y3R➷{ǁO < TX EF"ݣ6[ *gYTVu xҐy:ם0))Cxm . [(@u2k|1 3IJtR m9Vak/+v Pnq:-oM]^tK_}['oOgw!gTO^5IUl>Moh$zx'!5ΰ/裕;Dj |l勜QT^sy6 Zb2Ю7p](D8l#œ{p-"A=!P\晄OL쿾MG??{,ת70S=a֐QFOZm7 ҒNf |R x(%6TKM ~V )‚[fm:A(ϗ;(_ 'cJ- ~՟̽9"Wݝs> r*qs{걛m$J ?$P7Q"vVaT\i~΋XS^RŤX͔F˻x]"PeJN\hmE0#\$.U^/8݀[܄tՠ*&Da,:]VEmdQ/JMP/Ƹ~vԋ]|?CĸVA‘YC$1HhVͽ˝gTp5b;qr9k;>_XQS`-5Ʊs6HImH`sOLo^.ZDg[Px`jGtU:B@Uj 1Łfzhܽ̓;}-@$} &䛉-*(B޷{dd'A$D2&OuSg5AY/\lsQi& bX.2 VZ܋Xnؙ11#ըfK*v2Ԗ!Q~dw %e]Q,4toAg/T14FUl9+GI/ؼxWpc%Ke*fD\9ҡns )q>v;߾~mЍu'n cXH{XoSXP]=dUrVi\bh }כol#ۧ3za[8(E ][Ee{k裢!M HogJ#`zCL 1i>%\PfJ/%ڿ['P\Mm {Ч/WՙرL_2H-m'豐WGt+ hrjA71ĉƈfrcE]9JUj3yPGzB1'*&Ym{A-VfvV=!y" ڦJl! 7 <}no@f.C8o;_4[vvq=;: (-ĥwCJנHf[Q8=% ;Nn$rl۸ƇhF:QiCdΑl' ETcj(^g(? ,UgcRAKqw1n~ֳ|]EEyUNpŭ`\!6H+>@{n<ն 䟥@ɻ@>n0;IGxv˚ۀ|ee*,ݻ%Eq0鶐Ʃ2޲JN`C.k.Ѡ&^&}oEVYwlsB]%U8ph+ISOgEKMnT,ϋOR1J> lf4oEBWf'}QڍgK3P6}3W7KX].!{St^ D3W+k 1uc\w[)qEmP?<xdXikh7T&y1%e@ Jxl**2RiPp1`6%6?GݗR,|2c,$`lF543{(GU]r`" :vɱ éDq|Cջ.tDסxԂC!yRۋ>kæ{;;pAE! NbL:Нu]y(~ i`@q4ٲ~`3_{TU %n﹏]԰ eiv.Bt;$g+J"(ʗY4[3?;cu*Aogw3r7{Ex B'^i!@V|J=1#31V<83\؛~M76ȸW糢V?_w:Vk+Gz+5c@ծ!ЎB]?)Wi\Ds^\ e XCHD>y8)h d~qv!}uѫo08k~Xzk(?pB45h qFOk[.?:Dܣ8ʾl:JhzΫ;Fz=#P%T6unCWvyŕ T牸$~d-Hd絊ЯáPs_vfnyuhjBI%F##"Veơwa'zm ɈJ,fj DgJ{4ǖIm{EB.ZkS۽u2dqN,|/АcJ:hR: xkOR6Ah@fXmȟ6/FpGDWTδ\FU~R#K9=]uf[klgx5DlB)|r(6,ttCvx&2Fhz&>8f|r(Ex=TIGbU]H',wLf̽6Vu[dm7!4tkx Zq`c%WU -Cp1i~ '|"wgkR[7%K=bC\'P<M4*r Xq0})]Na'D۰OND]r["Pqkt<#3^~MyE!oc\NOo }S'QMfAk;!(׏wFmqGwL>EpBR+M䯪b#d,XիVj`AD ҆\BY%a}/nO#uk(V']RC574=U`ȁ`3-,Wo!"O4p<"Rsdک.Z+zYBу@ω ԡ2f%/,9gKBH\>00QI<#6yESs{`V`~#-4}}:GCcCf멮{B`eԻ~?~JxD`b߅֞6O;ʔ@Oi^R '2V.a `D.)/s4_Sr%)gIf;N݅m/QnB\;P 'LkOm*3Bigu[lH`T1}|bQV3>$TΏq~w/b.vO$M,T% C(ڲy fD WݡAb)?վKX?*r3wsLSowo®lڡulzɵ|\d ÛM\',2/fY$з8SȧFP! ЂǷ"o"gLJJ!$f>80#f|Y QZDhbU y-emҾ9]d[\}2@vHc-ޱ+c(ȋX>~j=&4\uZCǍifX28Zwp  rXmZg 4q_|gIQ(%ɫn<uMᵲ4<ؚ  SKɯ6(`Bm}n) Y!-x䗟-Zg6$0-,!uO[\" SdQŏ?0YeJk$ⵇ3ys^dH bq\io]9oLdsϵ<5?9o eOkepջm缒~kͼbBuRGn\yӌqׯQD_dǨm<5fӢ`^l& G8r3Nsꜳ~I: B-4pw؀1#1r;τkhGe7Z]ɩŪ%bej+SΟTYQJCfHՊw5ڀzHTa1Qϭ],yyV"J:#/) -}@ـڂ8Q1e˞b'̸/Q˃gKL^QI&?L<$䩡tq+sJ) Z#q|\- %RhL,3 6.O3kI.f˱! o`Z/JQnqSRQR4z[CN(4K7,8Yf9^US>]ٚ\\,M[du _7ET|tNWekrW8"T /Xn&e[5pkC3?Vu"Iبzȩ}R,Rk=/Q&({ȞFuDbkP#!90, aaI jA%+/,i/LUe\q$&6a Ja}ݩTc3=4`\Xqϟ]qmU&K}H϶qUA99@J@]ﵝo}E"ဟ( *|`Kl29ْ1 >\{|k 2JS2Wv}Lዹwf8}3E=4VƸ_ŗwwO֓Fg bbYY1$ByTP6"byR= R)gqthLr:_Ƕcp/PĎ/-PX(J"F}0¥]"5 {x*j`lX,.QL}Ɲ|ЉkAyPv 'x;R#PCrSdhY|Ƹl1Ne0"\׽Q,DpjYzg?W"W2(f sa~6_Vv:<4pTٺiDp4̃0xQMiLU|3T u>BhvPv2ʙkP0c\")i<2 :iɤ;١M{ 1‹~Zoo ` hTz.h~{ْ }qQ Z>TCd3?KP(W߲+S= m/h"@ByeЉ-^ַM|?x?W`bq^<.fV9~jYipBfcHp -D-8%̯Νz&S'H"`m*xپ+3`P~BW߷h# z3(>h*}~"$ɠx0,1Sp9XeW~[(' ~sž1-WʞL * f44<$OdšUGڧXr/IBVuqO]7E׬[fbi%:a =ȣ[PQsv^E)Joz˗V9{i S[/o C^g\8WbQ _6t>dc0D!(# KE2hU}֋HHEr-nB_~sUW)_'F7j܂QJ&Kߔ  I8z &˜Ju,_{Β872XpuCp:baF59&Ȑb :m%TKCnjmT8vW{sT7rVas :T-2 iOvMzD_S0 F!@fZl1uNpG:(MΩ7fJlH ԓYs !faB5,xDK̶َ#&'~@|Es Mt}4b"eb:t"᷏MY^0_oa 9P6Šjg` %XC$CBct$crV~ LKլ;~G:͘}rKa֢8&ocd"_C9) ^FTc 4WUutԼMJYn$\#5bI^GZJ=썴@/kBs!e{3׽ bh W̌.d2yAT<haVc5jmsP/]&}M5lCӢVՕ{_#>2@Cl0! ث2h=am +@1/"\!ɁlXRzҴy&>/YNޚ3Kˍ+baŶۻ_#e3ل-7 1XӚL@&'nuƥ2rU$Rf}8R>#;]:xDH%5iK[HO4h%zꄡ/R/bK!p :HN_ރ>mckUUd8>84C[|Vϛnuϧ4un1+x &EJ}4a4VG:ʥGm ǢDښHW|еxXIzYr8@taAaB貀&&uB h {vW%Z6Eo8>&O4|x3_}BYgR+1,*r&—z*ƶ/owEԘDAFɱdl͕5݋dcnAM/ag~ 6@ET0S7X\>-UOpMPXSH^鴊TokuAi8@`xbWnSS%;qq+q^S %g| RHJynS*URyeLQaAkz5~+'}DCIa`O#93GBM'9}BWaj"`=d1 bo8X@~#Ԅ(\,z Q 츅OF\Igb6CFdq<ŏ=~ T՚C+^lfbX.j}%Cd߻:M D[cơhoD!n3, #% s/Zg5Q1"vITmg??|]1A+(lր G{`NLXp/ŻY ByqBF"1,Ak'UOңc#ƙpEO_B &qT_Ɏة FTrW#H)9]4[G!R8P{ eG:f`{E7 ShVO(I9_O_,MJ]%u+FRBn{vw#kt3|>2=b<_&n6?r60eoU8}#$;AB#QQj}%^Ͻ ϹV_H576rE+lH2nTUDav8Ӄ:*rU[ Oο@w 7UPLkv &(qQU4c?!e?!X LD2  ;'6J"ag yS/}m"]j>`%HiȡT@ f:=1׬æTkKیjϋfcQ)xEtּcŌJYc,ȃƯp>+$%v[4!mB:]<7vO;im,KmӁ{I U?6'B.{4Vj&$JDX:"G:؇i@wTW@iPIb%KadJr=``\8caƴ F=:IAӅވ&vUƨ\ _)l *,oK0cAj,Lq0tEj?. @mBkDH 0H hc<ÿA: `60VjS0q4{%zI&-W}=P|dr"?)$}|b`yN?D+!1wٯͯ8`6IpujF/R.\h&ɫ+t7 (9|Fwv27x6Iqd3͕ dVz~ڠgv,oQJX£Y<ECm$+ C^Z!V`OMn8t-ʩN5_c%GW$+tnsCE u}kػ\y}RDŽ2,gv>T*MK^C+ Cm~3ߔs۴_eڇ(d?F\q;E7\VRŅB[UO^)O rJ}vpwY91)@v+ #{Twv)lWu8 4pO*QbB%6eg/b-O\8(Ɠ.ϰ}ʶ-)򬁧EV~r齠*AUoBӜǯH9<&MlKmg_/Q"CW!s6|4?bWF'_v$w2yєcW0߆r#‚R9<ɤk-(\m%΂!p:»c&M@aeYOg wJ< &[Pלba(cU5gvL=k{XZPR3/鈻D|2Z9*@Y6JЏĸor|NTS>,X7š6CVc$ J 0hՔd=~jQT}49!׉7r C {48-QKCwm$N,6=\C]Cylπ!XA#Tx ԏ`hnOVak%S핚AaK5Sm*uN4%b1K%M&Ic ERڹgMbm ӹ&{^9 Y47V#ګ+YٕQDZBWO _㹎iM$!CɴX)D}nJg_LvDJ<#1l@Yɽ/|Dt[<4AH:A$v tdwâq˜ia;w g[TY j9_ $ӊLX|vr_|fN}~ȬgbOSTe\UzI ~k1UJ@45"2t3Q3,N'trqKܬH'6>x.aFIP|!ZDG^mI vc,%NbSn e0]ʫd Q4=Iڠdؕ@F)mvLKW]Lt3_^ϾD_'{WŌ$^68@oIM6su8r?/D){ʙCu hQ`&W78+ O[ 0ї2b!'H4wיa‡d+$bje};kTG'*uABաW/>=66LPNޠٰuI /R,@KZԭKYk{v'KS_%91/+zll9Nn4͘=QF,u`DD"#cJFdPe^P9^} +捰2BXW`5t骐6)=}<#;dw(?6? RҢŰ! V]>j,a5q7E?MD mxNȨگK MӡpO5Dbp)C>: H0RjRg4p97p ]r`"D]8WOlѵUd'i"zڍqz?b]d,y2\%<,):$vVeJMؼ\gh~jcTB&qP ђrVq׎jRCyYtF% gT n흔 j x.u(8,@!Lr.jo&͞x$Ѹ |g9uKvj}2}/~XF7!y;HA\c.hbh6VN{XBZ4ek "b6+ rE .{QJ~5z!옫gڪv @E(&(_:,~w\ǎ['㎃9]dz=|!] (%ktFրQ_"l?ɪO}ap=4>F )jaI~Y^0Qʟ̩\tݓH6z8Ϟvca+s춬J|~1Vr֓Dqc;8ڳfH(_rϟXx{9O5CnGXѷ~Ȑ&NCoHɅClfLʫlkg1{ /\qǩC;[~TT6!3dw ?_AA Q䱞Dna3y K/G,J݂37) hY]j?eoAVpo;6CNeDћU*Z< WwG907tYFL3!dnet~f? NKoP GS6:)rum-qX^tQ>qgne۟zA>b7p@k3YGF2#??ZypD*2j0#ڛ&BpɀnhzX̔n;se\ݧTǙ?k_!ӆ8m'F zx(LmcԚ:z] ]߈#gt*X|Tq..쑸&l`U 7=_|00]eFB{H!z 'u)fڋIjmhfJ U8a:NoGyYn`"c5Yu͟)t熚ԧ,?c|jq7U=?ebC;D5 S) 7/ER;^Wi4>Qn)YVz蠣;- lqk|}21VEEy'㴁 ߺj-hJz_QM~1_/_4)>ͥ~44mwfG ȦNYԥ$\'#x`D1Kj ȦJRv;q#jiJ3ꖨv-߄ϰKR4/H 1<,5;%7ʮ t6UuY@aăz3 U#m_k&{-bVbN7XdY~^]i[4<FFevtwu5$'D nan^&$bM;ھb[?vtۼrf$cjJBI$R@OGf{̜%n!mpL4lu&܄ @ۅUlm DiqϜeXKRnv{-.Yyo@DI \}ˮ]D`*7|3:Ә zJN!A"Q\Цa_쾩J:$~*dBʞ(!:h;݁OwBo2bW a $c-#|Q{#׆+Lg*'vfʼnSmzq 6%h–:Z4*HEC3dϡJ|q6Ƅ(1BYhM񃅦~ F9yqO+5h;+-◹j˚Q<@FM ?dHKG䍎j?Ÿ9PPxl!tpl޷,T6DdfTwY{1&L!\WЮj $A/qȇ ͬG TUܳj#qȈ5"F%4#r Шf`ץ:~"Ux⚓\Z)e]:qxv ;ޛ@}kSCW(GbDE(ŏhщ:+*R8vXgdmTD8oҋ0fZaLcx*qХg ݯYD抐l3JEax؁`6_U-1K-:d34H[)kzΗ0 Z]F`^vu3HQɡв 'DY-}o9{M)ujpɵ laEB1$2D}^.[1 Hk!2b{]/_+);.ܶ U1C3Pd90qAM V²#Ab^iL-]G'ov:pLGBH$Iljb^i?p) Xѹ존Qu.U97%- RkLYUt9?54 OJ_Hiu+* ̅XjF}Ӿ*۞|5?].JE8mTR|y!ozH:ct̞ [,])yrg9%kD]9 nY49d>ws/?9(_àE|hj-N?eF=lÝH8.u _Y4 T}%@g<:(!._xvꡋdm#۫Go}Gzңe؆cBɾ>;$7 ǞG w\ ќNJI'ql `7gy3;]n&Ep5v3m8^n-tI77-.p ӉakPDށvåWI1􎞌y K7 m2Ƌƈc\qe\trPxjO;dӿ{ t/PСثEgue&Քmrj>g~B՝~;2[ez1]skz "ߥi؂|Zx]l*G1ეW/B p:";` ^9q]#QR[:ܔ 񞞺,*̡Ajpf¹t$ l>`B̛:Tю$̣87yD?G#f(Mɶ6'0}Bt[mkhqo ,whuBZ@M]נ ?Ԯ{K O5,۰x8Ӕ(=0W}~ J-ͭHW1اd}Nu>P$Ё%:z?4-wy_qua?HXC?ܥ0)M 0CyG  ,70cߐGx۴qr J!i"AR&Jd7lUU@Iiʸ,v&_F&tJ;-#91K Y= ݌U~>pb=Xw*1x~2%E$da(;S-l9܉qb {34=\f.&KAͥz˻Nj-'$Dezl}S. r6'<4]9ny(;y$ )u+H%6yMQm+[ބN31?;,}ws5ş27GUgȢ&^@>94_WRk3i!=ws~$\O嚡BHHSfwJ-i0$$&Ժ2 }\?PZSőԗ;U((VKY}旀E'NXL ZNRTa:iۀ>Wc= 1[_¤wq` i]ig9FWh'w٫&`M4K"," Lo954KԤfz}R*Ց -ޒ zHZz&GBts/5QM1d#]>\Fd@IO_U!V/8y^~tvPv"nV߬1?2ħ57Ħ&XZԢI=:mZKNA'[ hb"S#!#hZORs]$Wnn㿭ʮiJ3yJuHt`s%jS^FMljc\QwÍڭڪD8{_4tgpstYO'oǧ 8 *,$b{5bTCQKAvJ4Px'߲fȹ\֣iKG =V!GipU5R1Ƌs _N)e6 F6+osFe^8>;JqWSs/&77& k}M% nWBO0549ػӴNb}&!CbW<)< C#Tp@^fӾfO`ZT?ue̓`)Pk8ǜbϽr݃gLg4'pʊMm.qUQ\98(xYULB=IR<{ ]߅0|^8d5]&1Y%:)Y?cɯꂼ5\_F5Hƃ>=,ycp2y[QDiID%Jk$wc`a^K Ƀ\C'r0nzTdxQ w'Rq\cG64?uLnqfB]j2V ɈP!- 8$3vO Hi¤]Co\5!UEn:̨~|͒uIc@bGHG.ik w]o,0"E|U;;O.mx|-tN X0n ONKfS]vOF=:!m>ѵ*ub~ gn/Veh~d4'+%Z4[#4LDFk(Mk^ymAvv,1kY֠ؿ+"* .SEK٩{B5TŪ1tenQ g!8e0@ZZїVU· gjd\Dd+`;Z2^WK!չ#a&nz/T;!1ysC,~$&@y66aRe>BvaQ@SWd|GYA,tOj_.Pb"+) Ȓ!HW~'\m/QDwsJ}Hz"7";}]{`g}]l +xVB?a $Xג] j9^U6t?H,Uw,>i=mf|hYܓnҋМyB0,=*Q{) jc%6ȝ kQ1SfZ 7{(_k 'aa)izxiTh½AIȤQ7+ au* qH< d-V4슗RF:Un.u)|u25/rM?}^fMt4PR'  uHC57$5Bܝ/+s{ 4=_/#͋"]Em/0>0^Ϟg CVX6CYĔ';gkQ/ Vt\Gْ^ȍ]7/F͊$ѰK*=1ORbNB7k&.t^i32+IQW \xz#+/Gu-R-y_DڛF9֠+QqP57e`Emc<;i ɱK9Ӑ60π|u =9~10;)I8c1 >?E'BBtB-}y 8~9L0"TgՏ9(M Xe ٛlϡA-`gJQ9s&!kQNf)kr}ASImV~SEmDr1o'C\W?3^YEL# *X! (}"v8) 5E 6 Κ< ֑V0l"udP[%6xMΣPpK<_ dއښEW*eLULA]"Gwcmx ͮQ$u,Ohv>wUsAOA^Wj)N/ bжgW*M7 {g`N Ff,"I6mXlgbgJPv`U_2 {L)ƞg#c Ѵ}zM GlëX@õ^XVz^j2D.I GzJ$ 6TA&n',iULt4;z<~U 9A,S-?|ak?ϻ\k6/@ fDfYgKw;5Ȣ28(UX}^ȇui`]]A@3* "~Y4ZIBh fs"2N6(ռl>k# wR ޮӋF \G6`"e5ͩ*|>5r,K''p}Ԡ2ks6J,LؤϵhE8dX3y_ؐpO&.׉#/ }&K6)/ls&R Qu iY5p7Pol5$h2o"wpfr[zJ3S황9t 2['lKe!px, >b_()8s^ Q\Mcj Ov F؆xtM *u+\Kwu r4Z٘f:{%Ify9~<~{TyJL4YF'X^E'`M7K r8Ae}L޻xO5oiQ $M"j Q[$u|OCq7/s+b7OfI@ި(X[3>sWm$!]a~|^tSm FΌy%:E?cd/PKg 0):)KGeRkN$A3bu L*+/țWRS?>[w-v]Lݰb ޶Cj*O[@u٨~?( B_!+n}h䌝/8$cg "@TVQ:K :x_*H>>Njarzi&do!&3ZW 8ң^{X׎Ѭ?CD/%ZyRLc'9@MF &4TG~.BւB_'Tlަ)m32b_Z^J[ٸ`F~9@$= ߑT0[촂 IV&Z,k0נ8g.ƀ*}tc, hBxeД⨧CNPjXÛJ_]]%bgp @8Zdbu| U> 2PHjɺ哚I'vJe6 }5Dw 7PγW׵VnH "WVo_{ktv7)-Mq*zOZsx(V?ƺd972J@l,_Zݍ%`YdK/bE[y+7P.~,7'A@=m[Q2| fLu]qBoF(LNn,qj~ohpaD QI~- 82[h1L,*ߨ-&}p!}('-vOc p!a_Smlʵ0u\:.ȝU>}b›/M3m@NT y11r79`8> C&?M{\69iWN,]/#*KG)\x>]icJn Y+BeҸ2&F` ~ORԑָi\BnaztR6cʣH̶KKyhf68cbF $z6K02:ܓ3z:Qf› KV0n_z)o)%7V!#"+sLUaIcܛ'0b AIy4)n 6F2C辬tF@c^:}Da&N{ʦ ɺtO Tb%,}m*s̠pH*=!1.'`ȍ`l5=\N34V~oC25fōVov oD,-{-J{!ˎa8?dAm<(N?!lk('B>WkS T>iS,v. ڧ]~-q¡ έQtvN 7u7~8Ƶc*^+EZ&DdD4Ť&uvhRNܿ! %Oc>1&=„L8}g{9P9_R+!}f4NK]A\Nn9UJ3P=&C wp%;$]_Q JxWo"Xor 47ɳIZە ôGpCŰ݃ a\ۀfYqӴ֗V2? e;=#*z_qSTuΞWַ_C&8l+4UEMV|< 'MZLyrQi,Ǭdc\/ckބU^a,m: (bj#ß X~ؔ|{s._b"n:ĸw~{M <@A4E 3l**6[ ^![ʠ wR9* Ԡ p# J71n@4q/B{ACjrO+.c 6n &J>VF_hV~j).Iq&o<) z'me]Ms37Y@gpɴRۂBAN-fѷ w^̥al_ mLPbWfyOL<U0@D#PiHy'5iqlFP >w MT(}/V&ؔ]+7i7u0 {BU%1Xf7Tݳ^Tu=eOlQHBΔ6LV)Sxq/<`Jp$Ȫ^lfHeYd?~|}nߏ0 _ 젆"ힴ"Fz\lq TLL &/{R.ߞe'5i'WM\kDZR|ip7az24 R Nw2T*W,ˋl+)DWQ֑O=P MX!ĪawNRW7[wrep-~tD-PjyP`Hmm]mMrsbW(Y_Ji=#.DZԌ}=%Wt;Ϸs8-Mӡ_GBֽ.X)h4ocl/xQ7-xqcX/g/Ƒb] \eY/ *(Vj8 K*T*\E?L:jgF :X`Z\s֔^ND80"KĊWr;E8zuzsXuj5"Pk8"AmbnHv{=ދٴ a_#s%nB+E)p ɽP tz~@ԇÏ8C--MUDWiVo6BZ_ :o8k")KT,͈!(yjf|\CN&xpInV{++)RM5ى$ҋwaӜ}C_9kEAy }ͤ ɉ%%]Erf6]{hq.7zf #QR|X:Խ ]ϸJw*h[)S5m@wqxwu/GVxZpatD(K].p' kZ0u{! OJqs҇[rR/U,3_40|xFzЍ5jN4ͷ G=pi=&8L5o6莆WĢ?N beA񙃓MRLrY]_iln(E:wRkFCHzU mF/Ժ2 q{H@VWܫRrGȏ{Qҁfi…ߚ>? I5MLag9 s{޾#!D?kl3s(r̀D^Ѷ/+QAE-(no_2@` wKJ|v.d@FOl}6.tTsc)<|,UO=YDDh7.+x؀&vH8n ٬8Pf H(|w8X өE^%7m!'Jh4y0zMp(1?:[ .#UVY!s/ XB, oJ'RU|DYvw9협 @-#y@DbeRMϼ ngb Ro}7㈴/8.@uqdqGP*Y^!XW/oaG%L3E+wuwngpjaia|HaA@N֔PODleMQU>*T^`XxU눽~A_xT[N&G|70PrZ\TXXonh)E!7>b é{wAoRʓp,8UTl@-@ڽ=̃W?qj>saN?=c_9!| lJR룂vLZ[آ2W,a#c[8t`zq[.V>Hw@L׀no,Աdb'WO|c[kw}C,Me\g )9LVܺI 0rUIZq#8_^}\O]Oi*𯱐;PfXXi W)9ly:`ُp MH_6[svWBmVh*#T<"-m3&yh {Jي& Bф=yItV$G#R*mP' ~bP?"vZnGԍS.9'f@ݘڠq7$J}{z(Ҁhfa,"dǹw"֣fquY1!Fz3%Vt' 4R~ee` \1Y4&ezʸE+ 1}\̷ݦ-V6U/&NP -G Ug_0 Ցb {ZбQM:{I`qx '.@}ғ,GZObƽͥhު=Iob{rD/.izC4 MGlH/_o+X(ۀ@gSh['$p\[[Xa%xw{!J$}'[zƿSq]ɃMv(L5@J?t Sk2E?ڮ c@-?k3 uvGXՎaξ2ReFa?%wS2sȤw?yf^uhX5:L#cǿ uyjɯ.&OHǨW@Oi)ej K6Ig(Ƈ{)醼/F >0(s_yHgZWXmXWcu]4B ^ oWHV.F.ZyT$MR *,A3Hw7V1m DѻąB Mԡr .y-)`Qw0E/1@꠲Y[z=1%W:{5ZHc P l$q+) U *S8M̦w"$gdB;webUK([eBjI78:#i/*9 zS98PKe+] ChtKun˙YoV7p0U3UBάwpթvIjdLr())=7/ ^z$&`dN bf8rn(唍1'%HF31ÜC)mA'JYH඄/&n(]8VK{wb,?M`e"E{?>ߨWv svS޾06ަz i01ӒqYaQ6&N{ CyHب߮[Ū%z#W=HF "=#WX1@~c =b9,zڍ,&'TJhbK*MF~pκ+4p}hf܎޸άE7{H" [!B"xL[@sNsrx gV<2 qE[co~SQMzޣm;'= [wЛ`}rڃ  ! ^<ۗnԖ+l6P Uv1MK;)* w=+{+ʁ\xTsKSVt5VB8c.ڼV}p}#)M^2Lxhn)T7E^MQb႖! c᨜j q}-E%yr|`r c -?!ݙ8-]fqib|`'fWFיc>.f=mԟ˹ĞO{[k3&kUDx}H3 \mz8=cYKGzU]cMz=&OK.@ߌ-SxW5=G(1ʯ:j!̝}q m\Pk _E (}@A|MA8c6 / ::w.d5 r%l^qvl_f5K22p "udkU;{<:X BplN4C߯*ui Y, (e.,>TaKt V)$~DM>c*"I׷v6o7VV 3vNISyq*!_@=SGʏI֜ y[Ih'2# ď#QZBT{߅%KMScM5B=w`}e~J SCb`E#dIBF^f;G81s,~?7.{}eZ  H0SKMM~ Zc [(T>d{6t b=)<` 1>aͻZbSS^e9f"h9bBTU;^q2yIָ8/`}BFZm<1ac2OÜ`[bo`?mꀺsa BSY?0+ <1 z)ͭZtJ̙bעRYm$]3G"< VX.{p7n qV4aܟeݓYУWm|.sV&h :ǣ;6 7_b<1|7 ,2db-}:ˋ"ڭ1WdJTQ2Jb\AGRM(OMWi3R3΀ QBVSfc1s5DtL-_*~xWQb ?@dBfgh90;N!R ߵ TMPFQy[W0> T#psӨ돭8;E,?]ݯV|J8ݒn[^,j兤}Y_׎?(mGF8\As0 Mټ2zRo>=򽶘 86^+^ǀ/SSo@FfMl]agqnSzDV7?G]),2Zkof}"D%8TNcuw7Yv-`6k[ YԹªs?oFOgdqQcbpv6`㥮P D))MOMBYèۄ\8588ltkZ-ERlˑ=]]1yn5zm% `7;;DYݵ܈4fBN$5b~mUR/ltc]nw&Jojd [R, qI<2ӥ?WL[Fؒ\3L}M/dƲ}ױwZt\eC?5X L1<@,R*u LSwqdVSW|}w &[!"cیI3Nc.s_ uM[QM<8կě^Y&vJ^Bޘ=x//"͓qg~!"h6$Oig##]Y-}.:lFxΓld0_^D 87sg\Uf\H*1-H @W_5Ug5? ̜1yǛgQrK3׀ )$ێ3j|`nkqÎL/rJ[nЛlQA&v8&Vyy'tqİR. bˀpPm~ ^,Abl^ǣ-WV;Ew;#'QI^Kb뷑o®!ȋ[eE\>! ܬaPa dtN*L3Sʋmc2+&U*m-{6 M pjd*-VKXszk9/[q^:/3d2|Ҷ8֕VLǍ]2 *tY j7Yzꋦܒy2 %w=`mcG2 4CcL[ NNXR 德[r ƫfjc ѵJ9T%Ho@}DYU B BYU6iBȹj4mb<? ʒs1uBy|~z8/[9/Lk-^2dOvv2ܿa`+.u^cz4'$1묁A#(/+IKj Ž[0 _9lT'C N-g-ֺ(T `0QfK+Jغ+:+y͗!e` 6=pUͩI7 dxdV-I @_- V8gEBuͳ,곑=])XOhD%a+)S-LM>]PLPE)FA"\h\[Z]VU6ꬽL;JGQle}.r1$Zhm7gFh ޿{BPO/dm8/_8jWU>7֙?`;hjx#ĕl%v:yhXs0@gEe'ϒ5K};5쭶\ON5*r/JEo -gJ8FY)J)lƔ̙KwLTr/ ѯBHr 0vПÐ*nuΏzl,|jIvUњN !R|pe2'wF%4@'|LzD-IaHBZ5DY\t0zσ]uOь}Vq`L?jm8ߺEHȨTD6׌2jqC}ZMdS(%&9(ET#8A3g!9X^E5#|%ُKgHX FvGToq;bd8G5ixgaMl(hO3os:L"AԐq)E!Pp2R2ڂ[tlcpӉE5?5J{7)2M^[bXed!Ym566ZrǨϜ*C5!_Fear/ښ~LRG u0kkvj&[B =FCYJ%O(`-]QW/& 6[v_Om'8z![˄>a~yE~P'ˡ5h:ӕjXXO}# xے:T*|кY?2ǺfQh7pۍf>!Ws9Ҋs\;L3b6[wC3:ObvG;:[h_rDIo)v605BM[j6w\K]E=A5mn݅ Yjub=\{ؔ/`Ic$x/L1! I J$Ԣ*^v b$ysmʿMO,}ʨfi4r[ap!K9miRͳ;w>{vnr}4,zNO4X68 m M+bE pv*nr$)' 3\ d'^$; _vA DEԇa8{ɋbxZ;{A|\XxdPzn;FxrLh x)Ig>jYhNGa:5B~"u8pL=~ް8#ݟnN!PpB=W>+6ϯ|3Z"5&E]AX$E߹d׊b}CLg;ennP煮ѣJy(G O4 "Kn`-7Guqٍs߯C6i30ESs+Y; Jf>`]|_wy:;hA C1O7'u5#P%]@ U\Pđ[zG,;g$$4N6oѓ)+!^|i:|MYJȏvtFmI@dLs6~F5auʜKrk.[5[\w`a!ʣ8RSXesܘ*.+Mum&ϖI;-9Cx p`VyPsZa9|%T͢0͘Պ]يrmt ;,e>\KɐS؎}C+|MFK>dG/MNÆ^%TJ]˝K:--*@$7tw64P*ȗ$ ůa橜5sjnL mu4&!Wq ۟oRfIc^ ^ CgX7]).ONKJ9t+KN fpFfۼsue qoiK҉lW#ُl>4 o|5J%%X'n%6r( M(16*)]Q(I{~kDTEfu!P m٨[ lz,3jЊ9{EK!c4Fr` ?kw UӐRT( t.g<9 hvfњHIOhjM3J"W\UzDi l8'SۗUQpd`Ytz C(p>)BkQ^eGGDCϗ3|vB^T % unA4pbWTb ٠~g{<>BE^8 r4+JWe\G.jSU;6VeiTX⢊I0\^s%XM =Ӹ* !_Cռ!D(-4u‘Ge vl\[l4|6[Nt|{\pr؊J:zş%Ȳm:&їy⟦ީV|JdzLCs]42UPKbJEpeb¯%aBϫ?7Œn!#3 yhUZuP9,[xWAxCJJ_2)S#8:S&ה7.T+kyT}d.HQ H"vaDt>sH~X'Khe|ЫZF6qs>qOC)8xy(tAhl%<׺@62Htqe%vÜ_l.]N*m~KD{o<%9>=ZTl4AV-5>j![7!C xߟhQΡ4u;&] v..mE4ۻG}i佷£OMv$$}{) MeFe`:)8>E؉׭|6!aкesMWF¸ h;o rfpX{"ۯ?{$,鏅OT^ш:M{8ҮVl@W^Y;n 90qd32Cvvi\]JHx]֋h(Rob;CVɉPs?o:W3Kߒ/PfK $k kzaAM9aO͆'p5-nyIM*t,]XSyWy@`Yƕ* :+V$֎{$- !+O٢S!M*+%9t/T7^:{'rZ,0,7@rKli`X2{+ns Tz;VF."|hlΖ hE52͡vR[ ?)-Y3&~$|$izݟ T߯W)L@{Zv}T%eRЩ* rfq2;\LEDDۙqI_nQ;3{@mϘNfrR76%bx=q 0~Mϕm@) Qx۠7D?Pp<0()y@V=Dw($F_)hw",% ɛ+I @~u|{n&%(`,&g!!5=xf"Slo%cZ+rU"q;# T~ma$mi; -0o5 =AC@^EG.̅*,rC{%Jwu4>z=8:}{ h^]։狗̧:H2v-8VKko*,M_#Ӧ[,^ 0ڐC|:tM!:&Ъ ynVN8MF|ʨ%7)p !Eo;@tbJ9y )f ~;ȐṦ4cnδ47OÝk˓lK YCt1z[^H|'.z9k3ʐ^`fnR9p!RbAM}p_Q2 g`LĢj<݇P2HN \aѠcn8v)OEz7qSw|ffw"1) 78CUEje׈9:,ݽ=Ϲ}K7a_5%<jcnSt8r/|4=[&n7T'Ws5h/ 1,xR*bxgIx+zxS`"h9*wZvkd?@ 5 zmv91?5=sN2ִWS;isGOqxNR3;!҆n} yQ; WyOa {𶞕Z:MwP\bi}ׯ/o@DtŮovPP\ \rLY(EBs(ڟ's9W7FJ Gpʴ1H+D[wVy-=3io(ѭܙ98h+2ۃ:Z5_\۶_M"A4bAgK%"zDIɾJU2r\=İzO0*^校4ֳ pt+NHR#A-݅xLV/#C=ǁ.]Ft:Z{U/ WДɷIGPӄS]s:Ovw8g/2C:ұ%:ݭ&ZgKDz׵tŗV?AK]_ݮ/k"h^` . r (|Z7=/ Nk9e@6 ht(b%1*D*!Mzw^9&fޚh H.\BfTGXz;WV {}kSY+$5[ՕsnM>; ,S=PiC 2XKN7p9^/}$_{~Q;\gcɉ@P0;vHU\9ꔁ5#nRqش{qiqe K_M /¿pU owՁ6-QzSh&py.}쒋&W$|W#H.ŒxVzS&N]#`KEF.]IJh}qvĜW}h#r#ЕHW|H88]yKe^=!tX78Sdz ?ɦَ@LQAx.mCgQC/f!+E3k|Á?GBPPǝ^no+ocاmFnEuThߦVA $LŨu`\YVr^e^/&37;U\,U! }V9-pжAz+C(N8yk4E3@tláIAiwFOj  ̃ &>7cGA(( uI;NJϧ.Z;mlz1WzOx߸BX9ol~~ر9l=}JmgǖLeПW)}Zj+cCK='m 4Q^>CL%9iwN 4,WqƳ 6'L}^ًP8i"a:2Ph8߆'mT.jW<0 [#wKݴ[|qi gUduŒ% v p9^?GuMU{4_=AY 4DfV=o x+Lh_W7+Zk%C1JDhɚ|!ޔq'`o\RA+0!Ds>lK^uq6*s.ПG]E~MbS=|G*+M@؛-+aڋJnD6X噣Em.>Ν@Kn埥|lxYzI)(b[Q oR_ScL̚|=_?`o`TWcܶ.Cr0Qtig*cky0sXpd˱bqa߈m6c76 GuJCV/RܨܭT|ub1XvyMB?f;o9tB{H[2ЦD(9$~Bu<1*yf`]ؖ' }#sLu|Dó.4pvc~z7mšIM 7Ysgm+ h{H?<71o!u C3B6ٳOɶrЭJF xntA%0!(f T0Nj$hp^ek:DLFCZ :=ك)Y=43w"bAh-TH{r ;V#6B^KʓQ t[N̄?}u5AN0 #61$ט|-,r|\_,xpc iH6yaISW%o 2qhy,S ⥒r62`g(%6J$S88V*giMzwMuRˡl s 2O#4aY,,4)CVϚEniK ρQIwFO (mV}m*2mT G+Sz+)qGdn߄()ῃ5.OG5BX$St$`4>~) ˋd*Z1Z/geb TTLxz)"hza Z'̰W 8L_got U+T 5/j덺;/ylQOVewWκp?l[" fCq)>n,#`mn}{I)Dqd0h=fULD>%@* ,lgT~֪[k_z m]$JQ$\@tVAP\SFrmpb>>Բeܪhr1z S^j<- י[d/8B<qpP?|bTV ׬._SΏzn_8m!y pۉ} 8IJEBz!m+pke%)23_{ J$f⇍n!h)jJIky.F6Y7TPh _n0z0j-bAdX*EP HH-9ΐOZwj2LO'3E$Y¿v-TXTt "W; ^1Yƒփ.Oѳ~6XI7GKSZi *(6T(.q}&b>b ۽ KE"&LuݳMYJ4RB9,|/X-.#yOL7U )V`ub6.{=j*[4&#@&nX^b&YL yk~G3 S@Z’" OG6˘`Sm3p.b>2OGK:w Z`mhtbѦ_X"ڤoFڳCΎ[WE UJH4Kb.)a]$aI+lvj/]y熽t? }6p~\k(9k+@ߨج1in-OVIN^HS]eer@ "R ZHsHIN4+,b:PJ_j^I聕DLQ"3)}Gm1)Tl LS@fAOZۘ% ȊǤ.g'Sf 9R";$-6`uu͙ua|IQ r1r.괅!+L/|<_Ri-c͚aY9У˝]#CC]7adyCͦw@<1Ws)d~XݵryXcVS!Eb#@'Q ̋jԬ`Nnǀv>3<0 yQ X5v2\4%| hTJsq.ѨGrnf\bsʑ4@߫l߿W;Gdbv>.;q9"}C@c`tqܾmhꂗ Z1i2NLa9QYj s$*A Yl~d}4,{{$sw˘@ן}[g&ɍLn'duae@mnSZb|#S<6ePp `i3œ_5a]Esh::F:N* fuPpUYg)A &ZjJRV]Ҭ ?a䑕7^4? >;D#U҃ST!"}W_7[,'О7g L$Oڔr zVA5\\fg@vDf~"(&>~V.?ȿu@L{s&8OR ޿nwID9p2~Smߙ!L}角- (`WnָMfDuXլB.ݮL[}uyueı5rK| ȀN+pG:JE,nɜom!pNerZb/{)W(~U<"Q-4.OllPlTxKw]v>촱zwYumRŕzG[%LIBT塳a@92x^_|=K"h%D`#T} %5-?@=5* :B诘+Tv݌RnWè?}l1 U60IG`qل.OyRBe[Pj>7&H \Z11 _R:oO푥!9 =im.E=U@I38EqZT$sSxv""cvYeQp&)]_z\媩*a?LBę4R*k8TBL6f9nkQ;5W Z~\5^db.auݯ`dkN'Q֗vsنHS 7.e`ͮ wݚ^%+X|Isj\%2:VΏ7_K# {aBY8(pIbߕ4D7*Lj^1礘[e_%F5XYv-W$esSmI2/{3#ԯ7O:[s5 pW3m>o#>5sZˊ&mFY@3Q}Cٺ @Z"xTlOQKH< I0z#Z 88"[[[º BK9R0n^T'Y;էmijԮNraA_ ;9X[ݬdiG:zu 8꽈4Sڌe}mU&=`޳Z|hDb{D*ZW j9yf=ӫMY* J/װ#w-4Vx-& Qkk׍=Sm'?B@ q-`6jv|mBE`ڡ7<<G>xBK7~pP}#~yb`ďL@"]c0m,4C\oң060uEMahU{xb)O> b’N`ɷ]͈)#7c_ɶ~\ Q1wfΌ~bWm0Qd{ Q &XPx/nNk)- {1e Ou+Da %jUȷ 1@x '# 1QKP[ 5uB 3*)PU RhJ8BǹޠN_?+֢l_O]zV buz}훏0MjdYэCߏA[MEL:.S2Ql~7VIķ נiD=Au>L_ KCp2p`z{wJ@39KN6o\P-q 7V[r'%^'ّ+@4d˒YA*$<|TQahLQvT\$7[~d)m7Wy*O>+8QBȳjynrn[BQ޸)m7]-Ԁ񖔟@ 9-Kæ?v[ƥ`C0H-Y;)āh#o?6簄rt1/&Kf#ϪmT}Ž y!7Fӕr\Xӛ3ql >y)0<Qr8fں=wMZ '7#F'GQ]O \j,hԐM0s^s^٤' 彡c*xߓŸc C-z,Q3Ϡ1P(fr?6 M,b&͸vnY5wMӨuCEځ|h Ź4we|)~<j tΐ J~bU zP~y/w9#=dx.~1l/N&zSB ^ϿZxCGݕH..<_K{+ߪ4^φkLpesO2<l̝ lT/lPMom:ܵ>& spph1冻 #l^̺͑oz0:?p\TI1,P-XS 愭ΛKl?(m 5Dz<24\'v+ 6bP#Ē{w۩'3d6cFQ9=݊s MV8.W޵^v( )UmhD TT&Jܜt1ƋŎ{S d~ڃvҼlL/i Bזȴ8RƜd"e/pLE?EE 3vL(@!JWvAgX]f(VZyvt,*yON3@AO@DD[cO5C?3\ agƽ* ^TZ[B0Twp`ޠEÇ dk`6F8doq!y/%Ź3. QJ#0:B= aHk *D♃^_M=ڼa=Zv۬=5lVJYyv?g_&ׅl ~oᎶY]mA߭f|-tp-[o+9څmƶX!.~9FXI֖Yvkn<2436nmǛ(wncPQ;RMd㬀s|= F2&83\Ee(# W!za$r)C 鶰[{MNEK}@d诜Č(l"A&jk@bP[ԫ?ySJD@te'7 ל7ͧ0rz~&E[JtĝN;W"7N$fjnoɅNxO5W<˅.Ab@Zzr-`z" -[GE ڀuFW&e5ndoR1X.1Bxf5=Eq?\Xٰ4՝n9H1BZ Yf#Q;as:DJ|b̉4oyh7K;ns$@~s Xtc7g^ǓmXB'&]o[6VBW2Wn jۙYyBPNȕ˒48)AzҥƗS9;^'י! wE DlͰ^T˛- 3UK3?~팈䘒ʶ, WWb4Pv4CDTj[q" 9ɺiqI5cwe+< 39.2s1!{A B߈VXX7CddR.Ю֜,̋ROc1cuJdo,M7mbKN5~kZ. 7w4g4\= ^lFGXim 1a|7AB4O*ӏ|}E+9>Lr'ŭfuiNYHMYdoU>k@lZ=qL(oġUzJ$Xqӧݏ◫_쓻1)CqUtLqF@ICmu֘q< &6*Y(_趍~M?iaZLۏPO$& _{-WRC-*-ǬrI]sD~a C8V1 lp{byW_wS `VVgp]1E|UӍaNL_nД:*jǢ`'1V9 f1R/pW+FNq ` F&ʅ|d'YAG[, RE+BS.q!D~ *a6FXLxNlZBcW!.gi`h@*]#V<6(aq{,cͲG6ԃ5ӢVMy(׽m.c52p;p3M #hgX>Xd[5znK>h}X9FGO֩Ǒq;/3:_ l+E:<Ej)y`rKD5ԇ#{49&! lS;`Yk.V)zsVYuܴl]] `TIFF}[M2Edy-q;l .VV,'}v&y˰Z k$vcˣCQX.{z {+:'~/ZqSkMl97UCwfU "U.tzš,3;(gwW:2hUKv3[fUe(M@9zr\v?) ]q@gEiT*.`T&6*mh@AA">A޳4ߚ`eJJo ?<2%^"Ucle9m5篊ö6OXtvSAt@{p20DTCP'x谥Om°hIgH+4Kwdv7CD܈FM6?{@@,xIZB!v6fQ|1!b6ɚ"d@ĎNMQ%S?lCKR)p]ͳD;q|_5jOB)>j5]xSܺ<9b䄲\?-jD¾Z4v7H\yc|v]Ǩ֟6tq$<{/6ނb d]-qmc#Z;TL%,5/'b$ nQp9hDhgg]8IWjq5=*iN K֣U, N $|p. >amԔt?lb1ɟݗ,yWr]Fn:@U{AqᣵZO XGveDI3$SA/*PB/ݽ(?2υawT:zKO46t'4=5TxvR?62q%2u)(萋ksw>LdQ/4 t/#Y?5 k P-u QN]t+ꝭ):ɣpRYi*5/Q`gµ YG1T!Y{}c0?YJm[ↆFKz܆ɉt:bkb/2DLzfӸA Z_]}H\L~`>6%RiʽOX~{uZCeN\ ;%σNӲ@NNiaņ`R~ސW1X3\Va衰hSH!ߣ::Ut]qJ\ ? L1)sqzJ6pd;46qTܻ3.Bndzq&іAWYnMPM"`z8}+Xt>*oj{BX?p}r7֛΅(GCz4:E{+xH&Iid ٣ԈM~2&P)=ns/jfךms3[NSqH ;xpXk+,j:Im$&ux> 믂D{0e7jޝ>cSH2:)i7_NZ3`}]J-09y. fLe_R a6V 7gntG;ܸ#0{W]WNɃ!-M7b+wV({i&a r!5QD>q%uN0܋:"=’E1fƕec#H «mWJ=hCIf$xJv>C0ܪ!s@&<8irB$BDUY er>Q?Fd ۛ۫frc6_yw"W98:˥чaeVkЛ gpG2[~r@lؒ(u ϣk^I=km^-Ahf$mP9SrnoY1,^ zéF-KZFZ42wRp*r:g<ᤒ!xy h$z 728i>Vô[. n)s_{_a%#4TVCRt' M&IPWw .&QaF?(;qF&KOi,̏wRhD輀i`k??<15 ƙ>ePڮvLxW:=F``СZيre'9D-冀. JlnR+3E8eS_NqY'<Zc?|'` J?e}_>NqPaGt*kP9moI# DOJιR?-P՟hi5|uOeLE_Θp?,gfcZ' i4OD¼L,ß&B}$j{Z D& O4lxxx"ɮ2F+]=%-NwnPh٨%nw*>:evQj5pVaIF2stLkxZ܎v-(Pl5uC?,Ѓ]"]Pـ!_1@G2[c`G~zdž܁xч:CYr[SpPI F,AR[m"c'Q ՠ߀^dk.'˔@ОLUKz:J:}u" ˬp|p.G"cvx{.&8ģٲs?^3 G٘rZ\\u}kTV7E,%vU>?ABWYmW4l q|Wc|ijkW^rjqjqG5 dyB>?J j,n3|LtIz܁4?*6J ] ?'Q1V7!1G:L{ZxpgOHq72Y71ڣ`Tru;Σ&+. նu0̝Fۀ` n"?~IXW2J P~lC1U:!@ 6$"n ˰2B0~<d>1@8'QSm* JI&`T4#63LV#FR"`]ZYʿ!c>gfz&JaR,44aFNOnΚ Dƶ"/6|A(o&R-l1o:# xy˂}Pj$Ӓ5$Z@ԨBPc8G'K@E{E}iPML1:87&?ʹ\(e=,؛ava.øU3 :}:] |̽NFxs#;Wu.VJl 'n ,F8K wEbsNVcۺ t+PEI_!D8m5sU߷r#A<{ /=R&"?oXΉ:]h~S)ymPW-*#qrzٸ dP7sہFrYQ,x*,,9)bc^ALqY>Rʷ&%[ޚgmUvV"{QZ_)J]~u ZK ;&2L)#ܯ]H(0d/e.x"ljmMo" x8_DP=m=q9O-Y?jg 6f#*lz@ eG! ]09d/WK)5 g$?IiT >+U9Y}.⥔>!*'Z+)Ä7Ln **:琡1 _)^ lTQ{ֹm0Deg=V x^X4$2[TbaR}?Km&]Y\uaK'LǻgCb܂?& NIJ5\n#ҵB+$[+X>Qlfi423+$`>߸S>)#-l#x~]nü!M8?Gheޠ>k(¤w},2+ܾ\ @yG<@ۧ aǫucuZg^q?0" +f$2қsF&q58#;s1gj>Bx1[o/,|ycH] ˥iC7ֈ# Nspn:Ƈi5ٶYv Ϡos5X?ܟ@9mar#o 'i4ٿV;]me[ ֨hll@GpF|!B 2H g Zy|d$*Pٗ@sn;4uA+{04t;_ĵ:3''Jx0I/C[:\D=4PBoQ!6FG6`SOrȉȾi0OOOh 0O>&d,rlQ4Qr,ŸZ/nL}^ssyLvfG]5pZ`fלM :E ۑͦET-o&`3{;R־"Lv ~U}f%R'ziU!kRNO? Qj&z-Y8Ǯ1%ɚB[M9NDB 3"9jTtd܏r@rWL<՟ohmk-??BՌYR6|#? ]Ips{)jxrpyi׽m)BݾICo3/׷ ?TX=u?y!Q%:h[6yO"u;*IH Ɖȝ;K N!{sg&{4hJ=i}Enq̗6_]5X^OTJ"dmIQ,0IOd H7F{g&Qi{߫^ە)--WXIHHk"yoH{#eqowQ?"`axG\Ux2Cr.»q fI q̀ZAJUcH 'Vg_{Ce7MmF%gIbyHbnv NuRrZGnPC@7b'[gVH͓bub]*)> p:7R1jږӁ~O^ g?MZ!ІRgÑ J/dCo3o!WZ#c"lWjkf T٥wI&8Wt5҅W@~ԡgD(|*j6I+v6­V#U %! \p/PಪxsS1:[(Q<4^U[G8d-b~'= rO2A.,v9᧛mvZ8!$p1]hs%*"t-9(ǜf2gϧޖRG 'u!~47ɋZtF lс Y\w]95Fmͩ5VDU܅RLuq#S։o.eW k}<(5HMҰPґ8J2E< ?h\%/*%29L[~^xnzd8m%L5hv]hTւQAF]mKs܏p7R VRR󓒝^z2hjV?FoJzZG9_z0)s >,|@* F]Cw-cU6Rڠz$d?a>gb1T{Ä"kW1f(dNL?5nZݧ-^D4>0 f 5@JxG`aτ u/bjď3|k[|TtFUP&1i%Z`k~GO=CZb=;*+L` N2.yr·W\h%TrUE"1@(M_+:vBϋ4T(9wFv ܔA+ Tgj vL&~?3.#4Z*H@x_z( 4Pʴ6̿-(z2Wqv,Vߠ)-85ڛd(Xs78Ĵ+<N}y) þ<Qp6ѩ,/,#YflsƵNΘ J E^ٙZ~'TQ;ӥ"!u) E|Yc rw8hus*Tk:1 ޑ>(\)b]d޲}H--K5 }Sr<v,T_n%D==1R[$,AQW=ӵCV/pD 72U]HР)2g$?7eu wKToɇ3Z:WMH^m.w%xnTK4zx63 t% źRIAc ٢`tx7o)vsA\3t J&ZG5; m GlZ_3r.,umj.+ l^4 *!>ϋ)BCGSpG%us u#`^KzO蘍IH7۴y&Y*z+ʺrnqw$HHJviP 鰟o %7>k`dK.83"8*@Keu:ћ gʹ{ NV]͖"0,w2eGMq`5՗x\,.o:~a-8gB2MY:ǹPA2i_*;q)%ř'?H"w3oڜ(cs@G߰ U,ݟHP8NHŁYV#)ʩRӅ9 X~]Y LZn\} ǁr^M3LDfɩEHƑ5|ULZSWp6Pa< zƴpC u_uZߛmc[s (b0÷ :d8='X녥TkLG+kf7V7D>8sSl.=SY^ֻmNū^T{ˮ)~q|! 0mYn=CdXv +EqL'pLXBS]/Ф&#}HFO8D*-{9rIZ3j o: sI%IN 2+&]ǭv6[OO9Ώ$as5f͙q_ꂅA.eJ$o𙎫xG.9UvʃD 7[RK .K0+Q h9㹄%G%j`Eɂ8S#goVaD˛FOUr#ʎ*t`imum1V+4N~`*3?5ԧ /bhUq6\]2DŠ-e$)G8l;{_8[\Յ?ȉegUEsbiҭ#C zPŌhAJ DK\|Gm.<؈Aٟ`ժ8hY<# Kmvb:CH,[~(s.֒_'J%_O*æ$Yך5;SDun=\x)=8LoƍjNoGЎD?}SGJh@|& zDDI3}r a3mozMT \#\]̺FlB( Lǐ7䐴?evkMJ]tE\xÑZ8`S5^M3NY>},2^gq8GcAԲk1$,'}6bK} bW !Yqel|auH]TOR} :n<#7N6WDM}d|z-"r&&>|i1~CwOC>3gTEBv}x,Jѭk-:LGv2ŃKBg}J$ z{Dzt,(9ie | "%x 7MljW 9?L+VeMHf|4cF*X݀62V.m #E;#ei_@4o:EmpÃYD<"<5<#@ߗFkgnU}@pE^Ѻn] OW&?}DLjJh*ΐC:=z1m/nΈl5Fxˣnuh+;0_"]WZf Q&IڍMIu:.. Ҹe(sU- 9jFa!`}xY9^n6#S*Ӯ10 սV]-ӌO$T XǥG+q˕k !)1P΢UDE iعh&{ 3/aPS"p[Li㻪#i=)[Ⱦ C3"%dî|~ @'y1ұ~Qvc zj5?U?Tk؀5js_Wn5^~W⭢:b{ocT,OOaTEh XΛLe1EoXzrqymRrGgA*~YoYUpU A+xQF3o?>¹\]xp4Kbc溹15g5)mء9p[ "G"*T6'NA Bh2权SgQ`-1OD)\? tAڔk^ N0=n\d ^Cwj>Ƨ}ѥyɟтDs*5lnX')CDޭxg572 ~2TGm#SJ؎Ts讦Ҕsg>csP0PD52la$"f+F=Βm{=}HRIOT+gŨam0sjKA;6qo)Ǝ QC兯q<[욠%3ǷZ)ܷۜ򴲹+)K2J9O^[`QfOz*K橳dR_-[GcCM3b چvwFKTo$j3gMW/_T*|h妊ո/ҫd`0'#Z5, ptx=o0ѭ)Ә_ @<8Ha+FΛ8G[[GyA gKIܜ ~cU (\D .w @Jѝ42[lfϒǶ5 Gʆ!ח&W͕+ YqK@igkp$ Z|옅 Ii^kkmz~6Q5FFa U0Ƣ2{`)(Vt) ,j!M;D\ m\+t[.%~x|.t&;?fP 8ίdPi\zM9JC=ѓ&\tߚ%q/O_A7[n*zYh+VBMi(JL9»ݿH$EcGEjnamLF qOaDKULO"{Lb9#) L]2mqq4:H٬y)|@op񛲟|BPRs6i]e9R>{r2zC_A{V bRX66ov* ju/nxŢ^P: . N}*/zՍ:Y֫ϱlxNauO/㔛 !6cYx(vtVfTtz0Ge:!.?#u|ΗP[`򦴔UT2U0ފ;J %OZ`e}iQ=;_y:[9|ѩst} |Gf|ݮA[E.S*|yn'];lr6=3㴂BY Vy`o׋%} UK( .y}m%dƤ3`mf*gz&w{DgK;.xF^X޽2xݱOb^^f.iBsϽƈn!4jg|u$a^> HvwGj` )̯eaC7+Mԛ !8i~kj JQH6H&ޯ7֞,aW\>wtcΊEݣWMŅRnblX.ewJLȈ? d\ "-Yl~m^v0"m_V<] @@VUn3 JiaQU;Q"ʌ̚뙅(j~x³w1r6UWszR΀%}͒VOٯlwj mtJy7ev >˓Cã@ z5 :?T#WXvW1s&/T_ AtWzE&j "iZPFpTR:߯{UK\vhUEYx$ 1<z@XfS[,:׶GϮKcowƃ ׎'v\dÉI)j 픍]7}|dnX@c!sr08T?M0j =%N!k^.H,1+B!<CZCʁ뺻j1 ` ܁8oF(;)uB3 .Z[sÇ;M9ã) -|b^[o(V LȾ%p/Z DU^ѾXTw$\eG8Slt!R)Gw"8sM8#1 љX8:ؠ#B`T,EޏymVD#IZYRw_mKb<1/#nnaWђk ٗ6 7DX6]9u`MET6q@g(clWKV)zW/ёqwTx?>(: .sÌ#t%'hۓr 1MXĭp,LO)84ˠg4![S}00 |厝᣶N2Db ;wL![:"=3FWb,+W(J8/ɡӵTZ-[.uS)e- YK7<V"pJfYfCs~b6tQ:yk5 ؚk1o!kx_a~;+ynڸh)1rhTtGRr61]JE)3DijO:!UU4:>17]Pa\J@*oFĖ:]q*-2qכ%`GJmԐMb<"DI65:jeDEK5"{Zd~'e-"(_$~Gl7mLcs5Ñ+;* 6J2GG!ϛpq|8 P>H: xWÇt}SH(/%v¸(AfrY2wpNiH-^1$>?T~EM/6%Gtʁe1.9XE0o!zJZ]ПxRiutїޡ k_bY-?rՆA ;gEY_7ۗ+oK*Ti(GkEtb7"0nդ b Pwb2^h,- :0ǁzb=S}]_o.>|"; 5O9ˀgKTHN_LI{#K+afZC{Qe>UaB\q}Ce:"%f @T_y㎀&=QMODjPt".^W+ɯ1dK9?Wde{ߎ`><MϨ͛^$ω-muTH&"HDmI3) t kN۩a-V'}6RZ#f0 ^9M8׸6{|68!A(2ʠe`g.1= "+NT 7ӊ>}h>~JHyh(8FDU=/ܑO6/O:҂Yt@ճ^gڇ~Rl++Qz%gܱ*]mM:0/*mJOHWPc.T!O}!Sl2X ߆b(xrӼ~IzWcfKoj.J!gZ{HF 1fd*lO+Mdc2hDjtdCQ5z'6weZWSw.ۀzP,":P},U3"Jvdp]c+z.̮̗ӕeNwޥ~G-!k^P}wB?RnpԞ#g~hPoC5&o3I-˜,p)#ű-6/٦$wr7f:L\ -o{P\ٜMv[M5H=D654 h$;ԇMLczyӃhb%I@4dZ#/yuDv'ffJ [J"dɣD :x >Ng R[ysW{n>CCX>:fhj1kǰw/"lpe7j.[!!R2NX82_JUcܠo䀙UHFe94Q$'>vxW|#>k+`)x Xld<Э *H#@7Ot ݢ0َbͼ#I<ZMyH$~UlP5s2ݖ:j(;-9-Oԏ){2"׀YLIbO#x0(U1h6>d5!ӭ4Pk}XQ%Bw:@i5Hū؊A*o Y?=č7_ "6Jz] Dg(W۸&misH:IOd3{gB[GQ3~GEb 5.5iьR7}=oMAȍaǂMĞ8"AƱ.aYNv^ӤP+:բegtO?ZG RlRF.PKsh^{D7JZhԸt^PyY{}p r`hhrovi"`-eDoW 2ˠ:Cs{9٫ B|ZdǺK`o>j~.\~Cj-s[`5|C?=P%?j~:"|Y2퉸h!=!u71 m$c?d =>`jD53Aޅf˙:1fc ɉD6qmb #d2tCv%YPNf2 Y ):ǿϸ|՗Ή8Nkf|T+ۢ6G%ܕ\176)R<3xj[͌sz1A|;zW^b`K9}Ͼf HZ::ۗtҸ|z^Cв%=y5vg@4[r{cgd ,G=ŪowBcR!`/Mvga+SBi V oNw%5q`kW HLFo|%ZgW@Zb&5r6[9C6 0Zt8Je82=Nӟ}SD#rFyHC@Nu1@XXҺ#Ty &<5%jP~36/2DDžڜŰg~kS<*|h&kL=/cfلɧ`jǵml? m*pj1SE%> N [)3wBBvm<àKJȭ`r@dɰٵ9n(Ltv|^pn9!$>2__8sRE2 @ZTw|xvR:"'b1$NF_oz? 4v|Kj#}N\9U.+ZC4`^A@.q.7EǼ-m@r[0W.TI>l%ZzvC%&r,=Sx|r?.;l˞#a)Njw_Fպn3mydz]a(Q&\Ǖ=tmL_y[NTi @`og%]h{-1.۠I"9,Qur/pYʼnt/%x;dK8OS$ٷVC\m_yE ^IL7?Yi*\K]7N15.+>TQgZ>z#= @y]NG.-+9SB#lҰʸOh(*b U슋~$"s|vrJ%IMt6Ӻ6rT;i?QR.ѯ&+j(o7;e6 0%/7w0QwʭDnORH[*˞qD'ii K hQ>K5\*7WuB ˣxA7 \[铴BܮEknGyV}ɀZ˓d` I(E%oyHgϷn7wUpQ@Z'6xI/S%[ e Iyg>/A1lhv:z'>f͐gqG.oG5BD6R ب3T:9Z3)̇v?^_h;jd5绺i!~R׌l^m*pT.wj2/FTV?`X篊%ŵJ16v!˕ca-RأZ=qPSS7;6 vyS@?to@ʬ;2;y*Q ]ྍpQp)1~nJfgJj: {jK0gmbs{̜d/d< , '6P6oDa Gm-:d2n?^oP4i{2s/ǵDՔ M=;~dMCp?9l.R4M:{7Ig6˙_ *TMjyE5i26]E1PvvGmdO|ofHyi}V^:\t4׾|@z_o;  nI^<`*ۈTFNv'}8ҩ=i%M0LO|[]uP=E=ŝ^9wJgP9^)R(8\yn͉/_ Nc~y}ZEΠNR)x~& Vx~Ĕn9=~tU%AAFЀnڙNQ*8@4>$kq:W׵px,;F, J}ڄذGqAG; <㑝  geڸ8UFF5.tyCQªtBBxMnhHʫGB{6v}ቧX 94:!CI<JDf ?/340~5:m{Q[XTHS'~o]!ۢ1@N+!b3SQܷ [l&g#yCEGY!=x%%KQh>p&:>≧f2,3Lƙ`h#u>QRNP+E3Z|`kwBϡy%߂<>*"11e&шxPO ! $iηu={Oqﮩ:uv)ʮUfn y:$:=A%HHdMVЖfgwP띒M9cYREnL%#Z_V- B`evt+̶(<<4cƿFqISé;,a : C!|<+lZ?@pᡘZKpLM;i _iBc&l)O)~,j1Slm~gPnC$ًݼ(-.p,}M3P2m9jFm#Û.:?:!4iT:::+}" AO4ƻQf//e>{GH;0Ý.f{Iu2IyKqEc)_\- 81GaFLڗ-Imu5ҕ;&`_g׵H[<\\*iÍ*VbI60+C4=TGqclυ[22xzƯX>AT`onhGA iyG}7 MM GĂx4(1Wj @S3W⋌i+gu+hxerXDZ7S|+&6$_|X|R6eH]D|:7"~3ɰkLoIRSWs{[ C,m aj!O~Y&6[Ӏ J|=|}8G߃-HdOx}aͅ ]j D-KrӭM)/X"N84qmQ+8qb]lF" P,1fP޼шGax[ _("9Iy *^jrׄ#JhGb6ZQO" &[vU |lnV߱[b?"q&z`iL㸤CݢjmXhWEq +5n#-4E7zX% >,6kڳ=9+j_k ˫rn{bs_Y5{o<`y28rhh/>msdF25 PQͨ +i AvӦKijÀ[~il.cEa'qL3j|\,,?<Ek,2k-d#ԊT_6>3,48+s[ޣ*>qnOh6@[ 7 LvI۸_ a{,,b3n.gtɅ&-3 Eo-j!E߲ 2wIU1Cir,G%Az%yU=}׊=Ɔwl C̘ dn?/.ڪZk/pq t3U9}4:vmUIJΝfi/t\sJZ$A>bb# 4-:)V~QL\^IFi0 W c*>$ YEM^0Ĝ 'ۼYMU+~{OIv:bQY6ƘCO%7x(SLҜ7>OYeΧysq'= _z HXgrVA}}qetikftEPcL"+}wIs`w%sߔ6X>]ri ͠TSQ'b1w , ADHxY~vc$mDb5hx!+.M>zlL1~ϡ%pan'$Wb7`>zK.1ZӅc$k6' oa͛xP}&IMak~`Ci~4u$1V6):t^+qوNmqc[CSY,pܨva}1GMm*S܄+DRR eǟff(~kNs oPC/p#Z;>We($$L7$0)R2X`7$lZ'V`g@baԥSq2:{#n,5]E-?5u> r (;K6vly㚜[Cipj⺩oS`b$B(\RD/t}#hl#K 8ŪY mld&"$ʑ(ks j-N"jLXњiiLj(w"%ݡn 0 Ʈ#A)48}=&Rqb&:AS,IYl!.knƴUvEY URfF/vB{<ٖb<<3LܡTf![7_$-b9{'`(@H24@6o((s! TuN6mNl##p+;Oۼl0T!\4 ׺qW@8&{zzUl#;X"Oo57lr{t[5k[ NzuB}Q 4=َjN$$CX8R2BLthl : ݨ'*b>rdޱM"F8[& ДGۮA9R߹SuE6S]",^ W/c3g3#Q&j+/ͬ4"xPd ='kUMCzD8:@ eqDxAT@oNޒnƮ-Oxէ 2H  A*vF$T b9+׳9a:UI &T5?T*Okʻ.T/3qUXysE:搚R\zm2J7󄮙/˶#ޢЦJsiB 4&U.>K"N"ycK!/DCV߁lQ6 'y{Xgt{<cl;M`X `vvsN+84"gLǶdM܆ɱlx%MfP5$pX(yM^Iae{6}~׶ eTAI YܞTt*pf&X~eXfvZ:Q8Nm?;?0[ӣECr e W  $l-&$(_c\J&p;::>aD^g[ Z˫ h)} )h8{/v4 N\y6*Eȥe83ߪm5{&e}e>)IU~lFyxb+GIeo*z9]{aw襱aD82px=:c(!ƿ6 E1! VyB)`l/( ]@qb? _ٹޭ:\@APzwH:jƌ=(De|wߔ'Q(W+0TErri9m3~N؍p"*\ae[j,j_Ԕ5Y޴ 9͇$kMk$2pT\7|4"XuMqAΔo_nPkg,o5tFLK9YA @P*1E %Ir& 1B SVk@0 {=%!u9߃$LapIdE5֙#;!_f!~v5d4MwoY -eaVY244ƠX,L6י2}0fT7t#ϺE!(BrbsFFIs3zzԣC'*E4NCTbR 9Qկ^ֆ zڪp}M C:#΋v_vYk$irÛڠjZQ8 1օfp+O^';#›&,Ϲ@)&߱]友#j]Ǯ9YQ8p_MeJ!AglnaK1=|b.YŬ~sܡ#aθlEqE>?KH<8ƶRÂ'eli5G"ۑ= G5Ji&C%44+͙Q.<:`X)F&p݀Q"ݩ]2j tEm־S 77z l "ۓ814,$j`n`3obk!֬w5Wg*1n_hZPStQ`[5O6&wp/aUf6U; `OT.G/5Pg^~F*tA  gh5iZ?=#iX^aKXrdDeN`qMl5&Վ!,d'.. \(+ 8w^f8;YgL{Vnޛ4K/d%8U쪨H, a2X@~F{QŘC{Xl3B}` MjqB1ƚl4uD(JP|ඕqQ**cS/FpՍVEyͩ3YS f'M`8Жv5FJ: W;0obg?%H1:!I l1DQxr?0bZ_W'Ei%I!Vuv1Gm=;OsΤPt Sd̳9O #D~g!VAoaS&zaR [0 L)nIU:'V8U%1>T]d?e WK7)ej,3Gw8~M&[Y"fW$-Xe_ʌymH9$<(|h;KbRA+ɕc[4׹ 7qt芺2 ptġˍ.dȯ.}n} ד%[3lA\c07[m'Owt}7 xo噬18c9q讔 Bp&ojqܗyD.X:= RRyP2\R>WrΣws 윕wsĤ2MxN|U<񆍀zI:_>S 7Mi?RqPX|ӭT:ojKɆC>BF'gRW4,Hv{Æ\sWyJcHN"U%v>+-:2 rѫV>%߷Nz@uCΊ,n(}ᡜ^slibgdErC7t|\c_R ӁP)@Qnb؟ P>AA fiVF6 ~h$;# N Xu@K̳#"nZyʢwj sdU$)*-Ԭ#SAwLpg$^HA&L ~Ȋ_"olRQ 4SQ@n'pԜ33|JZ XXm t"4-:[yB$I;m&^U="8*+K9Q1 {-sb7\~e @a0~NAA)t6i0e43[$uTs.-_dcOm1:j;^f蟹`m}ͩG] KPAfxD ؑltv9E E& ^xj;I++?:`Y9PxTtp0bgM3&|au 8R&igΠEOL\-lA;# |؄5*I8zڈ/4?-kA=@W #IҡŗaκȱW Rxp6T 83wm?eGCޓ[/+hx68RCh/ShVpuwCBH,?M7m`M n&I_;14MZ[d%Xxb%\=j$3q<K$6Q7UYJKدEN7hVX B#^O8v&V)/.CBc:~o/QIZh_ k]<,te?knK$6Ym+m³ZFkgj8Iv^="jaUR F-Ei{*2FeTIWp0/qroVw蝒n 0Rg5 vhF&&"ߣu/0y.c:ȭ'(Sr=@1:u wgIDŽ58!tB(POwډT{\^kS\6NXΘ,`)H-&`@@#0͕aӱ퓘8R+E3ȞӪ}o}@܄}(!j|6 H8D h,@q)N1JoJҺ#4Nfƥc#Yx}<S6% zS ;yY QWQ$aʂFy *zS:%T%uIy 0znGP>}ߣ1xإ@ۙk<}"@$ft5| 0 4^\Qon9:g%2(s~&[HneXrY^O$b2e#֖k4bmֻ|}n;UgA_v5=d/œ@CR{ff1a{$jlqѣfvb_ {[<>|p2=i`=vGIٿ wr"6֚凐Cu I8aX G :M3Q" PǮF[LHbS6G'4uO|..J0}|miN#r 0!؀Yp:s |dA> A`w;VV8 }W OW,[בq|AO^)YhV20)8XV 4+L9T*s*ps蠖ѾF@P_ua2 TI[.2X|WqA@;DܓEV0QaJ1EgXS$FLY= ڙk6usMpWM%ꥧ Y?4`"8c }&w A-kt;|5{et! RA-/D;1#[IH.Jr7ƵȤh&80-W\Yx8GwxjYw: #<{zqS"[?"Od|_RةݧE|%</xsVx};F^xXGf{ 4yq偰_q8.u{7-{wR;5EҞu{2tD\Ic (=KNq A?k6lt{:~AOo(!]5nnM|;&#SP,Din?>}pXdGp7M$ye-f6לgA$㥚ZpRJMC;3>2_kЄ mY1D'K8XYuYGX~6:Go%T &'_PjE2A􍁍i 8cZWT֯n9ͳ7>Zӧs ;~p51 ۽ofP!d;Qyuhz*It:>+7R߁ۙ؆Hri5T5/kjxqs<; OHGfKK+Is ,h/˟Q[ϡ_+c>Myk}MB}5/tH ZR'`I|P|"F|kQr[\>bk0ؘ@ʬ ܇ hh [|vPdž@QSQE "&<\ UNmӆix ڞ9hՉ,#1,T=WE¹\R4lJnc#dE}qQ4W3 PƟ >f hyqir纁(^WƇ.nێ9:'6u~%=9Q:QY`8 Ftj!N @R&JX))?Ct8oֽd 5S}ovG-ށ6?i} XPиC~ ʈ0EH3,^(vVödC}sl%i3Dq#>Wvh3IFmGliQ;ۘ[DD\Q_; ̣acF̳E]F(/F I%7Dh}SF\Izf#t[Yf %c! 3؅{j4́ 1=F8B!Zc8;(r|ۑ(9;mAc5olA6qHU\$}8B$E`gAS_tE2 p+^Ҥ*t]Y}KhvȆ=2&kǝ &*b>5{ \{Ee6rrh7cD :$96Yb"*b~?ne[|7mRf [ yPk((|tR%!ی>,ω &ix\rIP}4cE;ݴ~%llM6_3*"/Ѥcg ϶-‡#豳hczỦ~ PS"ZBeXQǷTJmFC8 an[ e#+@ EG˛uWLq5U}]&K:ժIJJv ^6F]@&i\Z:{Q)#uaqaQpDBM1V,mvMQA9 vQ{1:19^pgHy+kSC 9I{:3ݜJ6w1 ,w8E& 致BI` :bwK]\a_U\TƇ}>x}_.,1ŷ5*H[e յ6+B9ҌV` ǒAGyhtD!LwHmr5gU@..K~7'Z (ٍQq@6[a25 / Y ܹHuGiobAca>V{;J &V(<u!;˧-6>ʞEH y;H,9U&_ mjzFw ^2 alTXuh c]K5Gȩh5Qp)0_J=vmH!@,Y$29J$oTu;o9$bH )ȋUT@ {ټ 'e9K&8F!hV9Q8 W8#faq茤m=y]خٌ~ ~J+<4]xPPO* )BJ-& \&?brʂY8,OW Aĉ&Љ}yB_ 8B Gu7/𱟜~JAĢ %K!C \pPjem)1MM aEazྒྷ–BDkpW}Õv}>cndwRNI>fɕ4D(&Dױ0a>}fC HӧMP+잁#jl K7.f#=2<2v(><~Fb.Rv7!^ n47:U5 V; TҴ.Twke߽B!a4}{ޕ%]ީ PC-ݟkr-gY0c EpVȢe4b3tOUxDBq}!A 5/k*( Pb%ah1Eșϕnd+]nI3ŸX"Kn6.B=`蜏11CD)A}/WhXq5|ؒl˼SqR~nJtl[&=\ũ@<"qtڏ'o^)<9r6.X Tq8K\pmT3;]+:)YG֌>ITcNjus7cEw{ZM1yn"u6ʪ㞹"ʩ J[ Z P4rqX MFM[ kͺֽ@Sy,y`LVP͈W]1[5!wd.v5$lD}bMŲRjODzi#7 .%1J)+NoXm E4bgeQqĵ `k3 Wꦻ^L\"0II>]m@qvWj7Y PkRe-4pmwm}5< ħX++'.dW^~s xا)=ySrH2?\g^=z,d:^qcۣ$HX mQ c.c@^;_^_\as亁]F:փaۆ-Fl!Fն:P,s"-ܨ}6ChKWTdPrȺZ&l XxD+fSgB<@?DZ=f#}\rr .@QO[ cB4b}*y-VM rfD]WxeJUzCxJu!GaTx)h1wenϗ ZEֶ%Co,aq#%{p^0XLgC3jT]+AcZ_M ֭&;"AxUc9C߫p͢6(ORr Rw˸BAxAJ{G{`C{Oh@(<lnAk 5: o4%xW $i]lҗ{2kda93a1/:1<,LsؾM)3c1qdj苶4툿J$o20wtzPT3h&\K/1ۖ)6/f|Qsԟt87?z=Յq`486nA#'=:7TK{aYKo)a*UhNj優qK?,H!ßO)c&E@Ȕɶ%b0&A @uazgHv+"q1z*;6՟4hm6A䤬ϘjĴs*&+ܘ~ 0{Zc',?M ]Z+ō=J[" ]`ɻ)4`еXyK*pYmPJ!<;4/!CN"cV* (#C#xheJSϕ!W:Z r3͊*UyʌUqb24lo lAZ}k$:!:JFr,+[}K P)]:qݵ,`km9FrHtO:a-ёvǫֆ*;1\xOOZ_>M|b矩Eך:q!C$,&@L޺pgN.. ȜJ\f# s%!DžR,&bjw2.(,QqvTt,<ԮXpa dO#[^<M* Maтv* :6 q 4q oH6,BobV; ҹR{^E֎)YCi4`[fzΰnH n`X`BuO&g6*@6$# &'#ߓ&D̄>5(*,mFtLvw$a5θ@߹ï Va a|e9J@ERS`ʛ/ 3=8hix!1xL=2.{+m/r`8j>0hv;~K^F)L^=a0u.T_|e5|k 0Aevԝ i?t~}c{?X2]SY-DouZۻg=~mQlW\Zդ %Ę#8#_꧴D!&RN um&CVqs-kj僋ӍH!/ts8 Ax*>tp%nr5ǰ"0NKFvv_YV3DtPpFG0U{Em=jcQa[Irs6Iƿs]]ɝ A>4\;\zSx%) zi"h#`HBv3(DOƻSnt fϹf{z|DZ9JQq|*vu2(&_ɘXɸ`W&8#n>%^[+ɕKi%R5G9.;?ZF+wͣ+ \8?Poq>~ѸQ]7vӕJX/¬Gtb}  SarbUɸ4Wb*h Hx}Ά3Ry^/'W"Fj5ᎿLVWwʧݕքZ*@Q ܿ<5bnQ^j5sxhs6;o!.k~goR={NFƕD'_ZxMiy?j ΍[iaTh;x[xUҸݪD 3=sWea&Px_TFGE,\$UW!)Co-9ù?.PWZbI5Q% Eltn g(Ƨk-z1;H6w 1>Gj*@'hL&58i^'ţ4kgw 1Z))xi}#O-~;[#ٲ?pGOU,` Iv?\>޳S w /*dRgP1 @ rJ(uL5T lAvwn<%fEK@zrG:|СNFo",aN8Ԏ7:ןR`d.E1D%Hgbg 4?+P;p^k`>%6 s7if_@""k\qEY#mk`Lh"&% ӚǎX𰘭O'kܭj?m ޺]< tA"<4 ێ03 %E%u߆8_ Y95VGj[?f1{?8KaQ@ 9>n&ÊR=8Ñ3VPxQHPW?uT DW#Hϱ?[*E'phR)0x-ַ퐀kHeeXcgg zݣ1Ԣ :%ÿz%< RP\!$*%F:jM墛1ɴhWP-ͩI-|hϼa[YCb~(̑XռUk{Ɲ^~ X_5ju6fSQlE P6H9zP-fUj qIuA{ghN͒oW3y D (0ɦ1BxPt[:D NeFJ`@l"8PwaC{׋uuLT% I}hO7_w8$|۴eaFspzywy#Ï7_5SG[Ǖ OY1pjF(,2n&iP[u(~/[,4+l&s>pTrHV@*fV砏s(M^=tDhHpo]k *WT)Ӹ->·xlx XkRͻIIۯ}|D1ˉ=CSPܶw2kQR=<{XNQE9JvANT %j a Tr:+lIW~W3bn̉k0Ĵ=߶B\C!VaFmIOS"#~}Y%|>`K=6MRӆMoj!$ZY aκІĚfJy^^g|6wfvnTYptFkUZּmLl)0R L\ߡR ?mcFe&TFAXDqok'*d<;u3Mgx헅йl4A{Q[}9Io*Hˏ䘝[IoT^4рf<5&\z i3,:|TkߌQ-l`XS [Qe5ba#@NA'=Jyo_$Ĥآo!e" aøW',KXj|u ,|Ap}z ?tNTUJ˦5OQB^ *YljWA-|ZL+u=&:֤{ɑrZ֚ dZfR\l2 d֥MޠٺK)ֳ0P <uakkqu&qtvv7fɪhֳSwm#MCvP 84:XdZ0ʙR{ id1`]u+ŅؒsAr9Gj+5gʲ+Lgћ͝; IplQPQ|v kQҋ֠ u%Ö/RTe],fGbr8^p˺cwYsW~Ѽ'Ku^u!nYrE@"nr5#AgiY~kfY-_ΫqgwyBES<NnR4,(\3Iy̶[?ݓs+3>ND0k@/: mu[wi]Nc6,c̶|Q4Ru$ I/XȆunJ2R4'<&2`_hR_d1.9κ-9&ЁTe7U g 2Bdˀ#EPN]f%,_[#X5Gu??=?ׇyn0` ½o9 AkrOKӕl`k;dWgX]i)ibSK-Er=Nc7·h&3c1gd͛-{W'O`TV"m8yw %h:[% WnctH|]x` %^iɾYZm8qqڵ}1(`2\W>r.;r!VfJItU7c?:'A,FFL# [iϹÎR6 Q CNՊrEgq$ËFUŪU`%rB}* |}^0ڠ>9QK2#ױvݶ؄ 7݉g4&Sؾ)UJȚrt8Q234-Uyr۱5So7C[As3epeP6ΙdïqxϟmgxhV%(iF6x&2(anEQΝ}fkDz( MAxBJ31} 0b(vTrJS^*̲HU*oaǰmWZ3]AS*TQTz""%tsvd:ב|h^VGzd?>,cD:-{cߞ=IvQ֞D;'6)GQh?)mW![9K YJ&7BG.#+%ڱNfGj/ǖC1 Hfh,jv; Y>"G F '*2; E['dsTû;5#b.T `Oc]0?1l`radk >"d ?ɑĨNuj4]C.g I➄9S$a +G^Q44ӄd$ka)@x' 7%e*&.mS^h9)E##o]Eש - 83ɻfr_풇)4`CS^ɥq=Rkώ zZqLy߯[#AR#![<E_*[+pH*$wXayGmmT<ӧxe}~{VaF$zE:kLsi5qaLܾV")xD3sPRX}=xq"T[ѥv>s\=#/}d'јudp(j3;mOő_dD絧un **H'x.g[>EQ2#H!l1XYH+w ;@];k b=*j%:U3|gP)w  n@6aD&66f؆t i  kӛy6Z-䨊I(LymY55 ٔ R?A@jLB {?(`8X)ezIE@Y*2"ύ}.i˷l qeRBzjN-8ŏf2 \"cZѤtЮoOyb'TNа&uW2,}W ЫJϺG&W09˺ s0_7h&xml)%fWrW`ۅ/Vj'{2\vԹJyIgy=Nd?vsО+=nv4ucctV\h-}eWz>>.pUT=fG;➸Ȩؖ/C'-s2ͻ嗩Ka#-6CסC7DZ<ttvHpUݽžcvG"+ )2PŨJ: kJO7xsh-0Y Tdٴ64A?+(U kPw4%S;NCQ[lg9sb]rb2tUVPxtpƪl"bs$r{nRT!=Dd\ r[Š! dv-p9/ճԞNm٨B]`IShǝYd_:^{+)sD=FJR(&KD)-Gv-?0'O]+0`6)+I]$,cgR>6pa"+N\xN Xu^goߖ)ipm),b*Kwk3|fe ~LSu+A kV7*Lsݱo_;v/=STtq0&&{^brJ8QPTzDH{m<w2+5+_P4xҢ2%;j5V @9bH0fLJ!n8E>4P0y1Y۲<^L,LTe\PQ2)a!*Iw2_k_N%6.6EpHFY d)yal@V̜ÑXuxu 9$Ldab !Z+7.Zas kYբW| m)hxB^G" K5u8nڐ?T)4#Kj@f%ilQ){/J>יe3&JL5[NVۚ y#[3£ N{S \nEbz_>%D #Hh(aJdWZ;$}h3DvA)GmaUs&$LmF`d: rX݉Ґ`zI|~cn/!h4@{pXANvOfG Zt<GBH6p6WF~c_T97/yXHD/?iKQzn: 1l y 4tױ\T{:G}H]VeE4D.:M@ьQ9sa""lcL =DpXr>N.a]/tr񀣇"Ƃ)}N{*Mem&Zߎ'kqNSNs~kD`;LaB7?*}{T nKDz2u-sf@'^k΄~?}j~Gje6fMO`MV|nYeuMM yg?o܅nxi'@hsQjWxg/rL@e{l蓏Fn yQWg2RWy]/Ol]% ^z&DFEIڤ# oXvF5iډD%ѭJf8 ?zs;>x `b[怲MP .?Th$$YQEs_*̜a.,rv(j67GJ=ꝏP.B H W3Vl!jw7v83(xl,xeX.dbW$nȯx)ՃV)Ч< "鵀jwz&\֨L[Ŭ!JS?ܑQ q,8$ W\j3sxE;Բƨ{sƲڌ0bBՅ%9Gy~!VsjYVyEW5 ڒ~[ed˒JChyןCz>,B#9d#17li/=;l4mӤ9Ʃy\Y`S63JeY=sDF:|;IR$Sf!z*ЌDbd V0hX_oGs|%܎[Vg mH=ź}:8G֫.|*Д/\;Ę$bof5_nۄO /FAzvT) ; R%e/jq>?YQQvI6 qµ &6Loolݪak|B3hu+ QD5~@Hdx(ueMKLpߏ%V~ݱ㑋x5P@J1HsGwuC9:FɥR"=(( i7:AklDWD0@ m>_~=+Wz(r[\t}EF29{p~G އRe9W먹/ۀrك{,[3/FFly)e~cu $%m;Z#ƪ^GJDU'\RWypfVB Pr;N߲0M].j>zK., ?6HERBTf,lf0SiGh7{cޕIZ#0:`-'MmL80 i"퐼k#?!#1vclہ$pd_nmQ6xq;֋ar ;iWià5, &Jf,Lِܼx%LF@Wc\L0"9Ȏ&z\<\Az<1dĩ_p)]mC񼟿:+jxrZQׯVH f!q`(*G^r:|i83!r5D~ʘ A~zA5Č)Q2yjIt8`c_N:X=K;lt@l|M<0z)Ԡfz!ѫBQ镂KgGU=*231Ĝѥb#O*u Q÷ x%\PK7Pg#2PM2v$]Um"6 )R ;sGM;^{>M~4Ta@HI#Q{aHʸotN !p2JU'Xߚ6K,/fȬi Yz-]Zrb|]=K"0-E#J\Oh7q|3Т+8QghO,>B0'>2RrVpp2Se`O@vRk_b:rVJc<΂`cwIթ!SǃUPgd2zFNԮ#eRnќ7궪|; A3q{5[OA={nvqŵYBC^%ĿX -'\Н1eUծC8k(W\GzmwV:hJD*?1/8Bo͖e\\`pGBZvjIhq6wvΓ2t?|u\.oM~ %˯k ә`X1۝ʜ8mtJL`+G!`Հvb g ֿٗ} 54~#B̈)v2IhૐޛpȦ[{k>%52~3{sfejha365"r z1/U|ŞCi; pάQEDx"xq [LQ-p'Ug#G'ۖN&&lzѷz-ZK~RNIs=oNZwxywB#.Sw?Jb6ZERL}#9ׅRdE0E"Hغ®J;2n dOFoDj D5Faز Ћ(Wh [kݤthv W4xass "bc}hO;;ӱ6eUYtr?a3"e5JKQ֮+a<]-2.i8eI=+sWJڽH5ԇBr$`l@I*xtcoxy45g>NaD=D}3;z-~M5l _#)ݦ- qcilWFgUHC#lS%&&D| ^0s*hN52NebZD2m/ē0Ƚ]g#D $:3iP26.%f$;`Ř `&Z X@'MC˻I( Z StJブOǎJGU v2lQp0yoO}(2sn\{SY)>|+`^\8zWj]XhN'e'd>NFTn[i ekD7~s5׊V =OǁQ_ ^x?uo#$Na}+k,߁M$Ti{ܘmt46Da~i{(γ!)[[/2?{=v%@2~Q5ny.=zU8΂c|1j2xh&D|Mh?:Mw؛ piCZ6M=F Pfy)$g[}.2[%|w7|ږ>p~䉇΢gLV"i#|nSzŬT j7N ~qY,xiQ[YDw-?xҎ#K?[c>:caǂH9.nwn pޒ*Hnd:Rr] 0Fzg`7Tx\[ UQI H/@GQIzåe(NTH`"2]iU4_&^mL7z+#1 P3Ő`2֩n]F(K5ҚPi/ ػD'cEFa{ě\NodvΨo7 |.tG 1SEibPAy OY6`6σ am #~ X HGz>ۺxyËG":D @n*uTp,hNvDmZsVqK+J]}}[=ݱs  72r:l6hbEZix?%/g>m Hŷz %BCOwR+ L{+ˠu Q1xxp (i4r;.EH·5W*xWս٥[HEᑁ)S}9{@d ѹˤTA+J}&Ћb9'-aìM a"-vFyj}\g5’KْcK>3"$G5CU5I(w*0!\c v1]n>Y/f$F^cyrzx8aX絙в>轔Dӌ'˯l}&J`@{pFFmZA ~ks(6UӁn5 =y<:Y ŠY߷ي%Dߏ6Mgx 7/0ՠD̈́<:pW\92Q18Ł mPxcG @pr^y $MF;^ Ӡٖݏ\BE'};4hw[FxS$.Kmoy7c[ Xy5uKAc -I׆Rbk+'E ,mΘa^ujQWQ & 519nN> [wC `QNuEX*PyWe5SKW_ULZymm1;r+,YZOhl^v1AJh&5SG% ?d~^3kKd-n` &sw^&X8O Fmt]%LH̤l 1bp'5>N^,T01nCKc^MnʯbyК>nyqBÛiEadD 4ͼJ&$>2RNk (5ZcdJ!8- 1@n0ݴ'yK~>V~ܐA=o%<<+lh ;>L 9.;⿟ogÿ<\`x Fv 秸@K#U`@i 2fR']W+X齽#iˬ,AT2} 4oiiߛA'IYKA2`4FOۊQ7oF7g6 /3`t쳴pݞPj!; Lbv .(nWc9dqk"ˮEF`# ]LUvX;*,p3ĦDZߡ)lGY Bfkg"`75@ QY,^}sHq5pG7Ez31tF5XW_q{L*PE祚fkK1zQO><[~샒(5V)caisb6qlؙ{:\{ćrgq@qN0J,)qζ.NoBW֏Yr  eiE"Q50V[!;1Nwr~'C |WК ĭF);T?qűuyWK_Þ<_ߟ_ BH&QoI%h/$:CB4z1 'P* F#@eO|z*1/8gsr:hE+LuMU`l.F rf32RK&B0ӢGzFMpU<%_lcd=g*/?=QSG1^?AhZX 2ǟ!eApɩ)̾g#V1tDROfדͩ2! Gb&uBXn;٠"`9!+#wfU( G!:(k[ EYHKԡ's L| /6ӒϯEw(#lkt6PV0f~͗NJ3,q_ t71p(&we,7$1&e0X~UH;}旔iqC$[)]6Z[ؽxzǙ`ɗIک*_t2yg:/3}'4 fHfrk9Gc,D[!69nnez,*HH5DLQ3uZYWW̢9H >ąj’,s`W:+-0IH"AW[dy v#xy{iHϋFcAjaugI<.7`e^\>e)b%(M WxG)ݪr#HN,8ik+|)e#?v:&1|:?T\ '"a0he޾*kYf/Y~Zbt}zMf ND+cfLNUdDۏAJ ҽTk0X U4 \=gr)yx25v,tsI^D~n)d,t0&rv AL$ j+Gtnl"qNR޳jQXxOሢx)~ΨkKkE# 1`ׄfRNbF{Y hU(rLG=yqx{i#:eZH] i b{eYV 3sҲcsž̈́h.e͜ _?ɠanaՁ XWJj3y o e-p̽! #f2Űp oN2(g#P;$^@I %A Yux8.^B>Wz L+uuJ<>탅ˢcGVILow<k5y(e|*Փ,PHj+Ma(n zCXLdB'bTw)TdFmꖸ |I`^$#x`znbVO@2JE:7 B:bZqyhe[鵘ɋ lZ&o3"A2mFK!_$N.6s2QҒ.|~Ck3@wٿU$e^=v2;/it-_6P+h3I'~DBk{$,gwƪF`egAb YL _%Nې#?]N` ENZhuz_2&!c An{sk[4TP4;)c,If>ehT 5mke gfa4< "?%pq8=u'dQEy}ginE2(.{ra{-zֱ *Vg<5ǣ Ń[tݻ%oYsꞲMضV2.رf-W֘Σܡ{6/V4 @pY1NE^AaN- <.ųۿ%x2/,Sӊw,恜!x錷&oAhgL؛Օ=mH;9Au5ģ$mEJ[p\?XS)@9[gFr'](xqgO 5G5&Om=lW/;f4QBh\PPMG6i{ڈ6hMbsnMVۼ4\n}љ*O8YQl =Mٮ 9(IŖFnԭ#]y2 X_K6N9eB)C K=#:G'rFr֏KS/ +L4ƠҲ;YgBm@`_gKl }I#]1k 1n|+<":"(,~Y4X=WKlCZo6,*3tt~ '8)Aܖ)\p~,k+K;F.1SFm ׳,t;=ATfNmfB# fI 7T;g/z3ڜF\z?eF^v´á[^uh Cؠ^S,:{mmtakt5R#x]j,P9uЈ0Dzvx[ϢgT%Hw;v-< 3CB;mQ`o]QqCZ sX_ H> ;u7fY><^O@pOcXޚ&ρ)g25}Ŏnt噦lrv Šq`H#k!OIFsWCA=SNpsf%Ŀ ZpZ+Hpd=+" JX۔S?0'LS@{>i{?1M `4 zh!h;M56HT:qf8.;3[ෞ9o?6$x$1DiiBѱI^ C,5<D}B}bKZ&5u!%:83n{5aIg(L6pO#[_f< QMo42zsj02T<YUmc'2]l@PBWN :!hB͋i4 +bwpEAaj]Tb^mogV8/2=xͫEn腛уdxZ4 _`諐ZYNH ܿP]-ΜXmKs!9'k oXA _z]!smanq-$#N"=k'h߫A'x`tJ:fR"LldL>ǐ\ghcu<$4%}m˓Kx+73 l_gY{LdƂ.2ϧC=z RNF!&m@Xk䟠=`dC ݨ+lkO`op*v? lu5N?>/s|v+JYx h𢋬 tm<4C]mڨzG8z%x[:#33Q*vD |)gr{Zw M~^M|.0{߉ /9Uv뿰L/K;Tn!A0эDrQkZ$aӦzcdh;3UQ& b\vi0hkl+ri"L;%s_<;S;uVNj悭Go)T+ID 'j6:}~2_a8$ybkp]br>H_*+K6;~JGwKG6k<#l݂y؎Ս%?RadqB?39vc݄w!0M#sha@N@m;ۑc\'vS*)02-s$-;3- SpcB\_OQ%1DN'rTĀöJXTgL||~Xh^!͇}~/ʿ'^r^F0ǧ(^c_Kuq SOR :P=Oc#k* T+ynRasHê*Ym65pMVV󳩣;ar"\8Ci>B"/R7332~1s@;MK[-lu"Gb.-0̵V<vJ,&/'"[~NuK+ o2z`2$ "gڝ)Q4k@C RٝW[C?fbGƈ\j*vv8B[`rbic- 'v@Љб#j"[C3^r+A;"OnyYkF G'G[ٹ]X_d#%V^u7ݹ|(ЀˌIeۯyf\M*rrPs@,6Kuھ (Jc|h,5uE E359RmR1[q(-c@b^ Eoq'E 1IE x$%sd"W.^<2WFJhY9us>te{Ms3u ( C&XÞLaHn5 ]qmT٭g{2Ӫ*9g 3;=);Ѥ_9rđ,GKZ\-Qy?{T!#%?H7jMvf?lO<;ƩP`>aHbPFA cػ6.睶J&03HqI70C$/8%ȕ*41_-OT I*n⣝vgFnz_w.ݝT,jQ>9yޅaԑ'}E~g̫$2t45A呲,oXA*H #YmQb=!_7[+%_9_u R v#N̋4ߌsZK^{Ŝ_^>OF GecTokd{m_0^ 2Kcش.ʕzJ8.y8:vgރ\3(*ՖB{(}VѩƥߏBď@tJǮD6/:B8`II"<\ij+Z^`!00%; m# k/hW-Sd|2I,[ktr\y_\&MPj ]иV8\M1hU߷W~$&BofpT۝X%p lA& h}wN(x9XL&mP-h^fASl:Ͳ5bj%6R$zzCLw Ĥ[.2Rܺꉇ`ውW0+@Ŭ[tN,6#K ,%;TF6w^MoE=q4"s{G$cK n vb$NjqR,OhaFMUQ>ȓsaIJ>BVοOX\'M]+}c3VG2IqmQ}VqV'J:Ij[jwPlP_I8ѫUsk;ޚiOZe~#oph PajpK@BIy8Ua[䯤 ʧ+A9F Mx]T *ݸz .Jj9vxa$M,S#$UE >T5IIKR-!1aU2~!*2҃鮣фOfy+VۭjUy 2T޴yD >S* %js#v6uwh`f}Wj(( һVHPK_Gq|lϓ-;$$yL] =ʕx>/J=H}Xx[~  aӹO.\PZg/Xh&B>nqYC{]"DDgyڊǝ+vS>aajG4V FUo%![LGAo/.,nWGYvZsfZp\\jr]]B;++g8HWb$b$R:3}=P93vv ^,T\ u6bo0܇ I2bFn*YuLi&GuVS(`r]nĵщkߐB}f?y*k!(aBl P0k^Nm94`3Ȫ{uB'>%4CŎNj!7!? zaqU}H3sR; +${ >x8Ah‚ZA^]T>zXT:h' |4Lt4uŸ{ث>CmP5$ߨ~_(+|$7 Yu|9 %HmFJ}N cSɝ yЀ@8^%wǍWf6ktq )6pנ|09As$trfmzjxFXL)FthD B\X@=)1I ;ndՆLclH5uW-òUaDȣG u^o)N A '#cꃶ揙1TC4o|ՙ%$ T&2܍|+EYͭj뼠{8F|(z ʁ~ꁁ7~V*tl} OBGew Us1)T^ ֵ^}&sLl*7BiN?DV J~!VX3 ٴ8|lh7UÍ + >WxF0-^S뼧 3t%i=6t}}yy #epwбCCp'4zzA{rt PcF/>r[~8/#U^vJCZ,TaQuѥ$ycNnReo3'oXK)\AfJZ[M_[,>˖ECShI6:.+a6Q6ڿD̤% qOTZXf`@+Sק$eI1i/,bE < R.RжCbLP+i(k~ꛬg[j/6A!eAsL˨H|dq G@aA'eŝ@%P.DsR$ckn7(]^L#8h 1On,$bRq^)=GQ ,YX'ql}lp݋=h_ &.~~< {qվ:t@Y!l{~aR2`?щ`\=fZޝB-p?1oKQu焜s1nj^ :oaTS**f /8 ^R8u0N~V4=."+ l:Uޓb\3 TwA#Y}8t;{0֍W >Ŵ(uN$]_E^Z6}#&bB_#f|rG >RY޸!CLY]\芦-Tީoka7lƨ)%4kA^ɑv6$gASPY8öIX~dG n˒#MǏ\0?rHϘgI Ho If5{ [5dP\Edu¨0jՖoLV tM_U?Նd 8<"_-9Fu[^5LT~U ϋµ_-4ZAY]_ѼLKJҜP!pCѹa~`zxH^w 0Ǒ⑯JDoĈo)ئX.aF Ec"N~ S/iD=#[;^ eYoKU2PW3P` >_ZC8ҥ㒫i$II#;!?TQ pHQ ΈZ~%g 5#Yg>+v uf1lcX=NR_yr;@ё4.T} o~Ovt4ܺNPㆈ8e]6ِL魥 ,@D w-%\[Zu k̿ e2{Q:ŗ@4 0Ee.-q*^zД 1`~ݥ@c+\KmYdqF Fn/ ߚC<.9@JJq/\ ̨'>ӛrAt M :5^qTE,`i^?&,<_q-XO3i5ħ!* 07U>J-cXD\PVIus4_FXS-s/R{!&ʖ"Bg6in%zBC+)/(lHA{鍫hh-jou.S& p\L?>Y(ڇ>W#j,ls>kr.bpq5"I1`dLݡ'p=wعb9r??hW;ԝdrBpȟ/k-c0_-v}m,}|(e2:Wpm/dy\=L tp0) =Գ`Q>w*C-s :B!]v+NO j~['{EwSA층{ UziCh)g$-$v/|'3  &d%B砀96|USS9'dQMtn,QR~YWxWO)o%^JP]hlKӋ.1;&m(UsJd>8vW딵;'+"a򪻎 ensJqʒK *~hWJk./yr '/6r<((Է 8lފo N[IΘPXMH" Р?!@_vbVpM|>SY8C,iE%@b!)hأ\:NNf*a olLό:w|7A@L"J"^ De fJ|}uZsăX~yQu&3`%b1O237a7b#NZU92ЮKD5x 許yTvزϮ)=iN/ܲU*64P54 mwq!WVR(,;@//* QPgGS^?A| 5u7=ywfk2D+]/a|V-0:t%yZjKV(Jx~eS4EiK@"IjW45vZ`WR>c>@P7})D5P~i\;N%"єPb61}Ls)^+81FʜgMQ$i`t^eTLrCwn">%kQR ;wK,NW@7՘x@LIP8r!*D?֖;f8.=-2aeCcS a~ Fqs"t۴`z:t!?Ѹ}P; y2*XnCFT u~XS(u%-_ߪ\َ˒b,6elU(A2]ĶmƔ>to` %xCW3$FQIe:8?̻5 a-LD-wUl" f6Isѳ)4/ |}LL)q&}WH%W\UT{ڷ(ͩein8, C({^9U"V8Ц#]:_`ELojwz9##&1X[ֿeP:܇)u¦ἈwʲCS7 Ah`ڲO_[G"*Vx»fc}S@nH!G縨|Ei=qUd`K'uG~K6݉.9gQaX}ОMH0 U*`vԔT {7l;H8F4=33h?yRaI8&gL.0$ ;5ؓ^Kv 5zR^d#q*()VN4S|#楯ƂDMqfQx%Sy/H d"MP]Tp3pw:ݫYjS`|Xe)UO;:[dq@P0fj;NΦ[YW4{# jY ȓہ尕NvK Oй35Od/ }Ai"i>\nΫP$*.C" ŋW_ބ}e%юvhc8cGNuۻSA'GimBL%ϐ3 ˅Dw60`{+TXJWVWrKe5?:E̵PFTC$>w*#eMF>5TU_-G'x"yu?={wvѦ!2i!PyXO q Iӫ츹‡AlHμDUnN’NZI!(Es f(𘤙4j{ǰSmĿr[lKaiH`?[zO ο./DpSۀmal h4x=es*xi\ٝ0߅ ;Ĺ.Ȩ"aB%tt 8udH49u!c (µ3n~3Ƶ<)?Z1z7XqhdZ1DVodf-ϯk';j1e:JI8:Ӓ! E(M.dUZjQ&QO8$\L}]9;ߦ7tߘćǶyUXJM9Zxxg;RG^,_S}Ui!3i 1  hf#N+F|&{uOzXWD]t04-G?CUL&@QG0i w $U))ou3hW;|pRf4љ* 3chܘlօBM"n#Rr`ÐNp]j@@5YI~2Uf1]]nۊQ :7t򭖠Z]S 3@S ·IY_&ja~ ѭސ^6v}E;wú!­]4J&xۦ`kbE[v|jR0Ybb!!:i5z+k5|R/ljhQ0y `] o \CC2d^mIKM('4ўm jB ؝CEaûZZ}F\k-MU, JLĜPst9`9$'3_OUv]U.cܳ#ԅL;ғؙ}9Oַ9Ptl#q( @2kxbK.;#kӿX2׮э oDZZoߜ q9pD;M/UhhY?w??w<$8[0i,ݸ֡U]Q(QsQ_`dToZK"D.`M4˛`Dr3` (Q;Q7lK&aF8k7r9[|J;UfwfM1C`"~dx1hL-uB8šS@6>6R*rdkdb( 0h837\ox ,p9P:{}"N7.=e|t>!Byx,:GQlp| :"6T4}SX5E+Nzr g\T1ZA)(V4m_bf׿h:M2}.y p!9]tJYeK.&{̼i;~ץЁM%%Uw%:#FfS@ϝ zgj(]ZR$dʀFQ K ZhB sU% _Fk#tlSO:_Vhܒ8DYUEImɤXMb+gy f s z |:nQLW(*]se h Zx~7-QR%3rLɫr3UfP! ӈ執h 2NϩVoy_5Ո82 XwkE0HR=k瞹4^֮pzxUI5[ ]RCbLdE3Vv‚ZV/0M-(rœ}jr!֞A`n*oF]ur :eHq#=rr`oh>ywdt-U6 9,;9SدK_Ϸ̟8W媲~ ܈ g4W_1c~Cx.|ukEEoao gӴGMpRʰJ5gL9U%/@Zb뺤30_Zk7L# ۗQB"t 꽣2*yUy KIxw[#7},^1yvnnd[+WNgxROő Q AS$q4DEC3賕|jlnf7}nđ T44 BRߪ*fۈtZ}V)ܦ$::y:&#v[cJ+ 6ߠcQUA;k(0+F1_ךE&5u Qr+)׹d3Spvokxɯ}a MRDn6ysؖuUA,k`7NÍљ6C?5JP#g Y%z303Rsc_K:ܭR}z+BswG[p3 5{(*"|ЖWnI:1=~XٶiK+m{CTRx9oL6wN>Ϡcr)+3K < ~ABj)_帮c"lQ_LX4v[,U 2 !Pn+%tX7:xK8#\PZ>7J{y7}z1Wr +[)kHz起 Uƹe#}]hhM[ T?(t7Ye^e\zm-O+z{ ]+# <z9X3-OH>EbGDʞ5ч'ƾ'{L\t(u(O~05&IЃ^7 - iL lAmU◳X'܇$q>UEM-ۮVRD9|=2Vck*h/WyaV0Do~wojh<%oRY2x5ffJ:ѡ;0L`;N_4qi Bs^Ur*)$abt> l-]q9űc(31lҪ2'FN{chu8ےSQ͔% 7KWoաΣazg s5qkrO)k'D1jΓ>A`9?*F_ lp*k~hy${5/k;c@NXb%PQC~/D߲ X3AXZ{}AKc`T"&:{ kzHbHwE , ul)QH*`K^'獩VXW`/GC1>z"]}[MrhPTe/Cyc}i_D`Tu54'FaNКT0ex)$'|Si!*6!Tz@om=k47E9&NFW]6RF%ΜtZw@!"d`h a1=+K|lZj߅lw;Js<kg툍DEH,@2 TgM@ī%Q3򻂘.N]>>Ϛ 1`mْXKf)k^D>4{> };LۄHiWžtwk" y\4؜e+}ΜVV|:ĭ)5$-& #N>Avd蹬&0QUh[PXFDžHLwn/.w0vZ>GQhn.arIm;@eq2EiObAvH nRP ؃4#'+3lXL=giacƬO71r ~Od EUÕu:5$r?KTl \xgfď c< G, Hii7,±3X{iDR!4&f/HC/?c'-A 8JA,!GU3/ҍjà5y:'a/JRސvh+X/AN("KO1aݷ4!9ko2'j2VoݡirQ 5+-YP]?HC@f 3n[jR6|+<(%K(o,3[R6а_eёpTz(C4mgNv4=>Ik@OZAǼS~gپ~_Rt?q?Y/+6,o&_ăs>Rwh "CeNjMr_GKOuSj5yUl\cg7'STPqt+FIoqUmxԪ_aV𘱾}'Õbg*BФ!"&9ڋW]PK}B.#T$ܬ}02PZ ?=I=T8*3-Kv]z:2xnV+r8Tt&xdɧ-(s~OX)vz{O_%iȃ?4;{uJO~|L z`IPrd 3h+l67iGs)Cx;zTJg=.gA]',IIgnL@{Z; H*sP"y b2Q D/ OLɃzcuȫ;Q"wp+[Y^Vz2mS٣C-AR[O&L˜Qo0> HIlSs{ڰ$kؖ#r9 Ul/Qbmڛm5Jn?xFMʒ~o6Azpު{5!U(6J,!9gC>c ~(2H H4CtG[N=ii4Vb 5Y[GPb^=YDT z96l41z"v#b,]x4QW LTIYnޒH o м$Aɇ<]rߩCJWojr܃2uȠw`+9OEMMVk[$QT_^ms4 zaoٻ\eUs~)wңڶ[F g ϱ~d&;zB%$w9CߧXD4 ]ut{SuƹFxXx U3š B2"3(&c#/hTmQhN`|ؔ-gI@б*X2 >`+cjAL ܘdHŜ6a'}AxDX4?84mv2;ӷ<伋F`!9\I}^kJդ_gcI&߰%|AÑ@A9721ɔ #DuYɴX7*P k +!4E -ۡ ޢQ-,sC#fj6$vc|3 f Õ[`PD緄 /ͭԕ/ZG>9q"׊C=EP4*0Gn^Eђ3">$^ =6Cm yMU-D/LkneDjӡHdkoRc7!*.$\; oG`\2L}vƅ#RiizryA:+ՀAZTقabQt/q1:aH#+I@o=(m(" H5.Չgs䕩\8*\ZTu0q7tYtˆ3ΈW>z.訁M,`iAZ74<Ѥuz?b$=_tv{O};-[+Lbez4O犦ʋkO>+NqfkoPe3r̩xqclrZyKl 45:FN$628 @9m9Dl{o\0w\ jVn%1a{_; ؗeCݑu"옸ֲ翷[ԑ>0W\k!@l܇kSJʺCtփZk_Mm['ɝwE?,LaX2Yz᭲cA;(2h%M#b`\ǝ=F|[V5Lc-EҀx<wx#o T480s*/-Gpc`ٻ:.n03M7P2UT8H@ cjc+A&Ҋ;n܈}NV+K;JZ 8u_Lٳ+(D^#k\Fy@'8!cY?sE}] >Q(W;\j rU) έ#:RN1jp5n9XA൞Ɍ<|HSvlsFM_y+hSU׻E3e64'|rF qnV^ inD0F$dq!9jN~"婘Ub}^O](DuMtI5V_3yJ@s],E3~a 9 t0G `bjZ` z7Y;E%z̝p:4_]A8G#eD7O_S?iF]ENX6։Fo^-O1EǬr10w {kF \6&(v+\lm軱-#giZ z--#yNuv6 }&ze//C[nETq<MX7h8@ax6`R@ջx& ~9_9K{pЍvgfeq* j7+Y _2 I㋓<e5O92o٣¢.os(4%GX\hDD>- ˊI}5Jnua/]#FSTwΐzPQek|/! BKY*H}ɑ$]k{UACtC?y{3n-^} sȌ~0(Q2-.]Ab&tYC%e/cek}wΫmȻ& sێi 3P|0)W= PZqk&7,$y^ڇ5+_'@˂e3*td-kmP_MN+Rv/[Q||[-bmyKV{Pqqѓ)le4M粬k4?q>yTv GbNNX; sKlNFi~?mJψ ۂh6O\ #OBZl߭Ol[bn!qNBL`F)'^o5 ތOY_<&o\C`e6p°:Nr\hRZOoއJHJ [yF \NUlDLG2P;m;(+8Ԃ=_'/UR,Ѹ Bʌ U*u78R^^{GJ:a_oWCCmnўϺrr#@/x~dFweH<֍1Sx9߼}z WgigW4{Ɇ Cqg @ŏY!6ƹ­K-:F+BOm0$lW_phݍL!7 3LX}*~ÿ58j .UH֫B1Q2y+\HEUF%P'X]3E)ҩF=`yLEX 4uh^! ɳYn6ţ4>>(z50g+sj*哇0>'Ex9/'A9Uo♅rZwASClNNL㟜t1ŚF0+&ۑeG@)7t<= +via<%ݵLւ;V>_T7mxhcz,Q!$b/vڈ9qG pbtar̒~GQj7;1;C2~MK2&os6ؾp/՚ ]m/Sj D{f6G^/XOiD o(M62})2{3n l981^40nTrRH,t=λ'ǬyUK4X입&3T ҠomIatPDQ}g`ޢxח~"aoa1Nr P}\v[&)&glͮ\  o0v+N eY,r=#Ģƒ֊fk7E0TS=yȋsClzMYhytkͪ)mEFXI $̎hXrșzb3`<A$фƀ:5Ҏ.Qa^|_/aYUyp$1l0^[ <[ ]6 `ͣhQcc'3C_g ~׶C,_j2E+ ~@nrwrV\Ñ )Ibv;aa ؅:hӮ* ,S%*R\6f  AdS>!VVXY3QKGؙ\ϻk di; Un)"_LfQ * "aKbfP:m=w`nXXqTc3;햻Qtm "u$tAx rBs :x3YETX2A6:e^[UC @8E¾*j C^FH|B-&0{K>'[.surP*M8tbt+#4BY_spJIçsyXBw)K+N*[6ZlL`+<6(ym8;%C(X蒜2Dw[(dR{A>F!]E0bF4[Mvޅ!P;y ‚8( 2S20΋:bI80R0Ќڒ(X\m3EwVKZaM GhLC`o-N*${o97c`$oo>J%0ΒKwaV n-+č޶ԨCj|GRE2Ȉ2uzrdk&5Y3' ִ8n{LCǀ&E/IWH'pm)===R{/%<O✶Rkn SH? BAusjc;Zf-uiY kpR}I+HX|f8 q ?ϡBebd@ctDzOnZ ݀θ!j`U\7=B$65*e@סeT&q{I79FZhh t67m4+GC/S)=[μPW](Hh z|1@?uNl8uNWP57:IpΫ [4;YĦ^jr鋒75-:`rO\Z}q)s>̾Vþ@0: ~f(|^#Q(t/lrmc_C9޼b`aO^!cc>'o %7FO0eU;b~oًkMm"xF$1N(1>ЖO;Ddզ$pe #i vcK+Ta}r%"XSڰ9w{NT-uTVLWit,i;{ !/G%Ld.ҝaO]̉r![~[X=I}2hhz̮~rB6IZ|]~_gy͑_)7If0g.Ku8Y| q`:*G\>[Nu7.tn>:땸$-{{h_"1s e!%Y.Z3tfO\=3ohb&iߚO ݯW'5J#͐OQ)9!_Ұ[?IMLܔն[ WnvҡQT%ãFÜ~ >e>A:[6 !Gutfh3?Rwmw[c܈⇩ wv>gUcA;jEie/>ڜ?I*FnUXbܻz~|vJE vPf2İib#iFɊaHj3w#?G+ɚLX  Yؠ')1[[L]fzUM``7)QJVcjstPI߷{~EK&Ԋ܋~ڞ;Kh`(s{^: Gcp9<$9.Qc<?Vi^뵄HS'*9{xHq~LZ_ǝچvI(17)O2 VB`=l޺]tx?G?qVjABocԊLT;<=A׶C$uJMb٠!ʉ3;ȳ߁AG62,dE+ bǿ.hN{)e gߧ!T%W83[|[slc=MQ/q '}B؎5r\ &_;v2ktǑ>7~m9UX؍H|w\=J鞕glZ6X7tYlZ@yN(H ogߧH"}1 MBߋJE^d4#Iwë=J{)(4c=ojuG_ֺr~d'4T#=|~\^h:\tIa>&(},'ீ꺙||P37ZXAAlkLѭaWay0:B"A84>w]*s4 `?B<̓cfeɁ1J#2$QXg`vajJ 4`_ED0HUaOGw\]@'x45|]GaEQ;sz`^bL U&q_?)1TlpLSq2 gHz6 y`MZ忐T恬*cV+Զ*q>&ã:p H#ҰeCܰ ]LvX-7 *^q(=_>OQJdc|eP6۽!t؛% }'G2{tLH$iДǜO}m$|)>HI}{J|FҚ}湾$_|/BӧE5d2M n[P<( TjIiT}j!Bh*ͫܫ+;o[ǒޥSYi 3 $'pv1S ] :n7)01!MmS>?'x}e,bȹGk|:jFDکH/&I<09na~]W4Nv]nZʓt+ @Aq9q/īSzn)4E-GLed WN _2 KY/~/d Jgā:EN/2p8AYDiP3TuJ+OVǻq$9k9TNx>}0tO<8fj;aíc 9:q1c7b9om~h\nnϙcCH_RՁ-m=2JQs/y%TVD45iZ7@JLզSFէLIjAp)vHIkM+%@5%c/*ĵ:J)PGYTwfIVOD?)_C(ŵ(=Lp[K 1>H l iޥ z2WUe%K0ŷBerJAV5S`2pDcuJ-E.4XҤ5\ZVw\ݑ5?[ZWvy#Ù' Xk-,lo[2N9ѩe`VB}>;| |f~9Do V]}dw{"XB}?9yMj 1&\HEz&yvܱ?iGl\C=?H=~ 5[ _$ͽ7ǹm'牍ܥ 2bLO }}h:ZI#*fӒ|+Uc/A7ND 6iP =jVnƞF("܋ݝN^G5O5W{6f JoJ D- +ḚCOES?Q}JhF}/ DabB[犖1F{Z/|~ٛi IZp#4sTv6K@  h/͝xeF]tQV%IR0${{%ITcF+OpɁjTnLŶXV!A_c=՞ ; vNM?pՁ,21tf EKOG Ǽm S8Y|Wk% w8N_O!!Zp^ W15ÉQHXdf.UQIZ/DPCQVg U#wG(U Hv`*~Wkm4v 2+C2`٠ <'ƹi]BD36ouNH*TuL47_p#~ԣ.ӤUxJ>R:: w1[\tSO3XY]G?4.2͆g-|s٦8Z RwSZn!p3&^HHi:<,'~+˗ k5Uј#:  /0_"2FE!-Z![fd>7=7/ŠEv mhyv[/*=kEg|ML=W(jJ~K*,o!˜8%- ^ٶeñ:x!Cr;A%e0{E/Km G\@p/+zfGMI]BJEl3Jo&],=`[VziA$ncA&as5KW!(NՅ6@#G,uY3BkC寋=!hwij t4H}B=&q^h qnT,ǕO= }l8j)r7轃AǣRqmgЩ4skʯ^t,CUY]P(Zk_߇y9~׶^W1)QC(G┾ [3TPBOv_C!94+劅9z9pǹh]K^[r%`OfEexSP!n޵)-!"||QǏ*%]nj&L7'c_@Y]!qSvPb4-h8K8"/ лk a%V\HØ+əMP mlw>΄XÝ>C}CM/)W KYftс[]J6Sɹ4 W7m4)ۃ9s" ~k?k8w L 8R+ {":31N6 ܆!Ԩˢd01SvA@@G eŧ+d5+`!KrHOJ㗑{fЏOem.`CP#Y=եXQ /fGH?°Eނ;RLo8NQ2^kP>PfQgb Gn2oh}9bv+ PaC-labXGzoMIt=J_F鮋2'.`jm4\"`ͻ=wNxݿ&7Gr~|Uҭ{#;! " aN SAC1)BGe'Q$9TPdf#Wrz >/%4^45ʬR$>NNOsqf:˙Mw;c r_`@.{+] 7s }Id j|QW&@\`vѺ鷝$JHXo*Od,jM @It'pN?T:]^}I+&*5f2^&3:p'ц){4$Wq* 4D|ف!fyk7JTF'SH]8NANG-${7pzPJ JE(jZ]).o^#崱=E'rgI$MS<9ӳvuQ3!Tf9ܱETCzʒa%: ,-v1TfcS{2c3bJ)*1<a+?FHL]8n7|f̔*}!(T45SҨ|c(x 3w˓xaU<\g1u?jA Kӈ,*["um!%x8muWN_9|YE(<TW|xgtk7 9x-=o`+uIKMK`\W$Cz6~"A7jz2VqkR7;LcZ]َ1aL6` DP@ %2F0.\0Ö[xsg ?Gp~42cyA xO$H:UPיs䙨=+@^{gzY55uGw8=C@Sf{@?zL" $5iBL; `upwdZQiz2sףN_bR"RhhʊLveޡYQ%?8Z]i-:c LĤX7+U2*Q87ԩchnufWƶU OQ4 ,F*L_̻kd,[ $/05 Cf3W(vZD@oxUJt{E]z6;?R%CY)-*lN*}És+C/t 7xt[JO󏆕?@c6XK#dIKxkQŖd3tpSՊuDǷg8j@bkZ 7yW:oeRǢVpߝaje@A_Q.8OM*B~sb}*Tcrl,]\OXS0%$Y1ZJ%c=k *6L]brx1~?tq8Gxi,˷a`FNaSkVGlnDB5b`oH9dzO+mĶ"zgԁȲG(5, KrYGkKA]L6Ƌ9&Tec\ ΪO:ke!e5XXuǫTGXw ˣ %V%Cu`/Fߴ& jul.S~YxgĎ Sm1upCܼyRuQ{Kvߕ w  y%D2)g n~TchE PNIu#Z=!2[,c]}qv1Kt,i xh&7`7s #|"GSηH\C:kX@g#[gv; ֜X8w 69ݸM"J{-re,C`lef#y6]P^Me.i&H0W4vOUcF<?Ys0qMH`fd*:h!Uxm4:E?vzt-w` w%>‡h ?dfv3AKn Y8>/{v^*$<Xpԗ ST,bR FPX|A_$?nܴ%:cg=lNk;ӟe'?2(|t5`pc C mI]z=!Vmnm􉄥ֵ6p0N]gW^NVYL$mj4a+hǧmoޣKߎku]*!igJ 2ahyEZB~{ uiFe!6/Y× 2W;\ n]$)EY=Ol~.N08I+]}g8BLE`6^e37X{ݤb8]Z21];͟R]< {kMIv_MA~/= ZҵXIE/RL@#a--M;vsXg^ƈfDԒC0{k]yXv ~3b4Leqf5~ S#Z,Vv.R*&45heHִ`߼+%*eTsy|vRYU ' <8%V xp4 nWWW͂0"KZ:4{~KV6D-Bjϟ$P u Bh)mé#niqՉq ER#Bf,4=2x"g>㧐N(_ 7Ei1JN7J%lQ?ŝrG"9ur/!$N*˼+0@$qFׁ%v5_*>!/D]r,bY@f4[I.|XXAf@cZr] >p*iIE~zqE`'%"9I*KleԚs M#FG>Vck1G y0M`cKvl2t1]u8Po >]1,xpv(@mb"[NEislr%3 d8LT8EN*6tSU| *iB˦_U4.y'﬘LU ̆O5 ςf|* _ĦuQs#ei3&u5D! 4};"<?/hy#kJc#l|2\*xEUϭ |KZ3KHʕD$dx4b*"eWZw"-:#2O=m|v[TbU rO$kzcg{&?\%ك:bE|!@0]aYMLǣkP(+ ,Mm>~E` J 4=3򝾀8RBV$cΆq ralxN n_7c_^+N^c1l(~'V$]v {쁻\hR}g)YH;&5Am! ismh à𼅨EӴe!>Iw6EeGtQrQƥ&>Ӎq):m 'ОսQCs[ `*_@DY6-:ɅaV0so;~ !weVr"LT;- d>/3kꅏyFQXi4yO> ;ꢨ!6vWs4=|&~6ʙ0s֩8ܞ4AhlM?'ʶ:?f pU4m?0L MK˫ SV2ӳ0:u.9|(7ldFN33vI*3|f{{&&\-_d !R:!] ߖ|a?8fgtUמ>:Ml@fx;69VfX ;2nr{&k ? ' M[Y@9!ƂSE6ȉn 1>3moaY>@L_ZO`[fʙo:u|| NX@n H$70:.`,E3=sV(_}D<&l3 -7DM-WFq5ux>}=Y^ z,*Z 6zl 3E >\j>Y=f#e/8 Y~MVi2%웃/&/PЁ9.Ѳ-9'eqcW1їWT3Eӏa܈)r_ jHGBf;C  J(:7 *_JCT󣛘 G u>瓟0BpJLVWQ\^yTH.c~42ft,пүظZ֮@.\ (0-R#+ 5,~h1t|!Nଢ%= GHqL-Uk(4(JY`iz Y`4E\r u,N*NYtHpq+,j4Z8uEJ; p3HgVüz,B,Gޒ>wU 7bG {G%8c n[YG3.@= ^a_cԨ$r!U9u)%ӽ0*hU[)eY jנ-j|+/$5Vxݻ;mH_Z䉄 Wih~[R~V%E3CIa3v& JP19>LތX?Ś;J:C|!ǥ41kF"hgXBj[x5)vܕj 5?,Ӟ-ǽctb֡~ުWhqџܡX}Cf9!)nP7­r=FInT [3ǶCQm[E|o~Z ]9 2[S?BOIPϢf nK?8 ʂ*xf $LsQ`b"0pݩ: : -;Prf}K?rl.mZ+7~q?F,ҳ/M^6ޠ{LO\k k2SG#%r[d?__HfUq`NOI;Mtu&SfM9ڿN[ɩWK ,U c`H{kC}eaQ!"6*?7ݦVj;w:_u-m5QcR`%>oZD]4犙!P"\U˱Vb/@ٿM"f JVuiX0I~qܕL7YT_컹HTFa2Ы;|ZإLcԠp P>5WAY `J:TX۵ʦguu3'˭MFA¤Pz9'`SkDC^efd&g* g=ӥHy畼a{5?VSWؓpFTKu#L(8\ ֳ*„m[ R~> Lf-Z_q<@.y[##;v4K `j6ќV,ih8. 3~SPvj-`+$">#ЭpTH'#IP5F1+r14U/7dQ>ElNV̰4xrҁb "T()(Ə[M($g1AeY}U EП:Sl3A'yV2-~vhڴO6%ހ^$8;Y;R&&,qctWߡ2I1H̖=C](XzǦ߲{KJg9DWFEA?: jre}.;>z; "d.}1ǥyȪ" r:fl/Oۄ>#4S$njW4kOr+R:cG{l u{b ܨݰc0w*z^fkSTj;Bͮ-Y%OUҐKs$c_"_cDscx׸uU`fZ5 5 } 8Bx4A#hҡ;P.cWWEw:p7*tTxm @ ؟giHf+9 4oWAe*ySo DHW5h5,jeg)h5 ȯb')>nNnHrխ-N@42)PsN#(]2dxa\Pֽ~Հf "ZR>=n|MGW al֯l+ ȶD ȐC{w 2J2ġ[ьmܵh=W:j, N㹸ML<9 aJO4C?dL G1 B؍ӏ3n҈,љkRτ/\ 3$ե-i+==`Zdp,; ѥEzu|3-KJj^kD{>WU, ]'Bq-=2XՀ~L_S9ip?<" 叱bԜ0~% K;ReZ2^DZz*O5p>/C( =% X'||`FG'=lɑw KmڑSɉ|3_fNi>1B8}=qVV;R&WQL*|&~iUCsԿi,tL( UWop{C\nM?0j'uh2~Η\(tnTɡNY4Gvor<;v%q(X(f'cr) yg|MK>'oY%_#eTV[rNo+7"^{l5ڮ⯹7BJܛmFCOLQhMyOM5U)XtnQ V2+= 60w}{|n&sRڝҥ`s;= B=IIѻKzf>裘Ѹ*3d#8s Qk5ﺚ.e0J'H4Z66L1]Qw~EHLiC-@"w!6_X9 dXч!4X'㪦v w {E\#!b" :S/mh dr.&&;u4$$ӡR gM׾+Ơ~ڙ tc5D*1Bxzp((l4HW~ÈjhGxG(oL#v/U]v :#!®suNSr )v~CV.C-҆}C3 .'S'lt s]$5>/$zD7 mUo130fUxoS2SDBՕ:&m le@1)>S7W?JZ_{_۠mߠ %'%H5F#̓ 8?.Dxky'0!G:t JGƏmY5TlSN5*x? 4svE(AI CHc'I?}!Ӓ֨ty6)ah 9b4}6e7!SJ?.b5X!4A:N ,uT9z[D9OuRȉyC ЂWēj62> |iJ9@/AF'*̅};A#+Z*sQ?xn.~qErQ=Ww7|e?Dp9H+`e;R_r@AJ `h@ůڒR:%9*od:h"L PsO[ݘ86i e d))xׇˬЛG+w".l(%#aE~:])^cJe8o\b O~kCk y^pu"UdqlcR!:>kS$WswbҼĢA9ItJ)FEz[䡐5G rQQ Yiɽ?)ZPN{oEX4jfNþ!/]Nyb 0 PuQgOpHM_;Brڍr5^A[(xw @#.1 Dx3 ~h^g;BclF|:muPwgwTFun=~:7C1.<;cݠ)_ڣ -E|=6:xvfycP<2sbćl~lBbZ-.E4 G.EP \Sо`ir3&3d[͖]QyԳ=<*DtV\jo6oo曼r\ DqPβNobhfJ!g,%u4$2dy: 7pIŷGB,6;S\~g5~F3w6*#wg&Djٛ^7kVAʤC E[&O:9y  CLntBReYBNi3C@lf{ct|#=+4gYYEGzӕ;D|4(<*qDfg6X[LJO.cN.k- @Ta`}}_:hēzEm_[ 舶}UWqChmvټ>P=))Ũ~uTq +FfS7Rcd\UivYC|ϐa wnS+)"}O(ݥNE*fۥ5L^g}3-(+V2h  O(yE`ksK0 rW̥m$Ω8Q'v3*h+6Vi[PMijt0'JDޮqu5lB|0>%++29h:}ս+DO]=ܚ9tÓCd*ˊ]>y5(A"Fټt>PXy@ ct]}mnPlmJC+T `GĬc 6P_XY{n(3}Qi_OoftOaA]8h I8'z0؂c*!K:@V$46c$"v`vIKaUFU`sZ(oNz_d,r:dvM?F.?S ]$?2j2$| Pt#G^3 7u7*5~b ՚ԣ{L6ēƏB۲\޲pZ1uARao2! PO8kEˎS}/+&|]\[P yyFmNf8F޽PuHX27S toVO@\PI3݋g}3{0CI8@ƇW r}cP;P֑<2PrۈHL=+yt > qREan^'Qs 8Rĉl,p7 Hbo4gH/o-S4VXfgŐf&׫cA<@S4ǐ ׬x\&UkDGeyxn-cfnw檊)ѡN$=FbP[vIgp v؟΅R^>jZqTYo4Q+&4,k.j}Tl#!ֶsNicd VIa~zx^;ċyW@1U}wq,(ɅJσ$b̆26~<'Cgxi}R9ZUyv]zh0dZ>3|ya=3OIBvlfGe:n^V~D^`,~0%/2CZ ,eNshA9>`a5fHfE"a ɸRѡ"pGܘ|ϸ1%v|{w#:JX U܊Eոbڈo2H #tmҙ |X', 33_qH,GN.M}- UuԤlXg??4dHmX2@u4k#)|{`SW^C ʟ3[ì&8 *M EpK:<ԧ Ͻ:t b,j+U[&EO # tyfɍ.h6ܟ$$*?.Rs~0<_ &В1hѥ1GAspq47?0tvuRC62ꪥSlvw%Fj~& L\#wW<}*SՎ]:I! \` z`@'WVGe l?0깣U@(3fAeܚonXYՔλ~%)1γ4=)hڱR+!{XKlBuu ,I&ygthWfҠ]y^}N曻-MyVWIWRv.K_ꮠ=?TTb=$- i baTʁ7jpO 7 8]cտ-YC3zq0ǝHOJ8RRS.?%G̏ޤ9an,ڊqL{4)iBnՐk WwS_2y+OJHk0ȚX̮]" GVg٫X$6ps+N҆~ӽTMYt*do!>wwH%s|j34b広j8gkXxiL*B x8E)fI$I&k XR22WJBa#8WY5 R_T9v/`qЈu6_+1TNd߃<8z`Td|D /@3گ:8m>GTd&"X?n 4: E;*麡P%87xy1t>qn Wޱ;ی.n@}S' E{/q1MEü,\3o+[l)m>uQnf,/W iZf7̊dum%֯;7[E? BC.cz-9+KU. NP!^0d30;̤h'\&)'[t[hzb! u Kg^-][K9IIs%h;=cF8Yz=wዘzeeĠ-5ZGzX0e#̹γX!=bPg>N<Du +O@(kXM?h "w egYPxOV_ޤ~]*7t2k\}| 1!Be( m(%vNE^@íj +Hz0vo[O% >vۙXL{vQZ)ܫM ZW#pG^jcRTcQ1l;׹TJW f{y6S6?oq>u,eΰn>[uWw348Z||5J+^2*D91 W`e Qpg穢#_ĨAf ٝ1 yw\%WlE1-'J.h v!JI7g\XO\M`>8oI 6u3Kn#-Mxf?E$27:;gfWv+2`m޾qәu]IFq0GVAq^q5u;HŽ~jA>?KDKL \1 5Vfq&5H k/81|J872\v?0ei-AT/V_g3}]b-a\{#Т{U~]jQ[%/{3vkRȹ{ROݾT190V΄P}H;$pQHj7xDh im%V,T6&'`}":/kri=Ez~)i6H*@[¹RI -Eق g\IwU6bٽ^pX&U/zbzߪܬa^:R)+kqO՝X%R"A3T~"]]utle\JV( Nů[$N*F]ww5@۹Țe?Xn@@,ExC5H !nzGFd|N'O9  6u_o=Cր`ƏMuwFe<}ORJꚇaK7-ڰgǰ ?鴘BM_jx C7%4 n5rj(N2ݻ( &MLU};~7V/0[2w@+/ECV[(gu6?90~~izWI"-3TXꞨi2ĭ1UۣqLUa[ r)Ȃƨ Wcx[7$)AzwDSTZnłSmqUn04v@&ߺ\P29z?HR%`[*h7\5q?+rA8>73dq5*RpJ!͔7;  u({{C<%NH 3ES .27@%~i {: t5?*F9AzMX?'xW~K0/8oYϏ@` Z.B~ 9̫|W,[P_&3`7 ƳK!֫1f.I6(\(;#Ѵ诜Y3"_vܳ$M_>6uttd11V79tv *YVd{!A3ޒre+GA~韕N [J;V)ycRUtkD[BԆ[Cxk$~AJ )]:S"O)'*5<.3 :(7z-^"IR]n$Lq_>V| `E Yy#B%K;f#w2|֪~eq,b'A] |zA굯h&NzsoFcML&f>Ք%ԗuoz>Q-i hbq *Tc)qǎ4tǫVԞK#p}nYtVaO 5f?QTCL0ewkN0o6@Ɨ<"+鿲,| ~AUO`7۵ܦZfCo),3so wuYX`O/"$ęq*˚1r7xu+FĤ&gh&ڑ2ˁg%\zpU:w^C+Ɩ.tM,{7%_0%bu3o`[!hC8&W,_D< dy\| cO?S6b}AIٔ \zI$&jb  $\h_ V݄+CMyCy[hh+wryy&+&;Pba׳P@0 07'pDN_ԥFâgwQoAt!ΪF0"*g"},NZT.O[!KU%D8ٮH%B}̋=1(CGVMx.W*Ivt"Y!CZQ'4DBsk.m$D:0XgSta3嚁,@hc:_!3*ewchJGu\}mn#4E7o:L#t/w^Y L.EF esڿB- sF7X"IԹJi3/)0Ɗ]+=ӗCI$4zڏ&CIޙPƸR^ ,-[69?{/4kڌ$e[lGf+)U0XD(ẗ́CD6{"qJ%%jߨyO\- 7@v<5@>>,\{'ps4LlStˮnB PA-#1 SAOPrs 9ZovWveo) o, ot#E5xxl{ěbBYE3$=&@,JJvVvwm{:_FKuv~#*9|HJdIv(q{ݦYݚ_¡1`t C(Q̐apظr2D@lSCn,euêqƞ/cE5k}߃&bVjw8h\fT fm)kGw JÊgd)JJah`͗y`{(-Na>*c k|Pu:$p;Wf7tr ancbhsqn$s@m8Gb(91|hY:mZΜ WbUGi;@ @_(,5&ITUh4y,j<4 Q(*. /k5ު8aatr'r&A  6k$}Ti jG}m.}?ގlJJpPJqie!:0eH``$9|*:.rt9* GX|!^~Ͻϔy`!W5fZgZi B8^_8sls =% xRyM2۱+vP".C[) ёr&}9pYN} ҂9Iea20Ny[ :BÎ38[HQ-KFO 6VIyG͙r}PqUR].`'ɰkn ղ2BlFG+sHM,']Ձ?|ĊK̮{P{/.Hꊴophыسkiy& qEF~חZ 9FEU:〈|) Dnh^`1M~pDqD 0Fv5Q2'Tmra*\?}LWSjiq(BۛdL`ٕqs/`ej<HB`ބ*oNm +mF3ﰨWoЂ-3Oa?֢ݤnq[I=3pm.8q)"V+x9oev!nܶߔM6 :A D2ÂDw7 :6`䧱`JyDɆۛQi >33vNz|:H$NF[׫T4/eP|GHj}ӒHSA8xnA~ VVHL.kD{"S)X"E)Ga^)/֦ց3V*5K!jᖌ1#z䨭ن"6Sca\^DRl [qsmgętHw#,:" ZЕS:KPkΰv Jpqt;Y~WB-K[6:hW5+9l-> ac* ZG){,x=OVZ)*|Ȱ"Jt#"WRkpY!bS7aEA Fh]#/Tm> ɤ6erj"L؋>}W&sŋlGmbQisET_Ά֡O~]d2en2 D/`J<̔RdVd9k WB YWsvE+U.eK{}.} 8xw6-~| )[bԤ΁} =wKSEp>BOx.h7=z'@s=qIba#qO4/}&XH)aX\[Y7CxxWyWd94o3'SoH+<֙s\Ӌ4z*S6YE,O^esW#15wyS8ԁ^s7o-j3ėh QYns)u"] nERkun ΐv.gDKZAS`dݣߝ?sOH5-V(#4(ȖD9z7AިB!]N)WkOK9|&W|<kU-{^w[ #L|+g!|4Ni䕓o|32f449S3Om GNnm85$mvx즳%>- wP N-%ׂLv'VèֽM z ~k̿B B|P;Kr>ȿgetEo2IoӍnrvc-92bPM?oaa0l"~Q0>?ҥJ"l+򛳊p'H5n4=Fd5a6FńB}" ] ;#!\5זe+&UmiQkYx [끄p4#1rF#`OYιaS&1Vfy[ȼo6ij(XO7ͧ҉6G]ݸ?O⓾t@btj*.M/s7l6u>^aE ֲF݉ L=c fw2*j#ːrx %A[N9[a4Iz~|T5-}TI}6FσEHפe0May ezaaj(+иéoik䊥ƌ@&KW^QzMkXX, nI[N̺G*T 6xUGz ]ل({yR yNt{gY<zaP ^z^A{dR&y,[i|hӔ֋\\_KN}&ٹ+{F1/RMgX63QW\󱨵]AW̩^oI/zIVO0d} Ӹdȩ|[rݻUgYa# $$`)zG;0(ǀ%Ԣ-~s"(7P / ҹSE04I9j[/" V27nyYUkءt G$BVEsj0>.YЭJ 5d3 wGod]AxpߑB_ypJ>=K%x5PHjzt,{u=X/Jpɼ;('B3Ғ1۰DTl[ˆ.nڜqgxW$@lnb n#H<ڞu8RbX*^Xh~V-Sp=O)gP6dCb_/ە~'lڏ;hw;mRkÀW +ֶ?@jP |8 v,y &ͱsyH4~tˍsG9f^jϸdsa\[Zx㪛 Ȝ%( Co@@.4%D1POڴb ;BLUW8O)Voa0WKB`7@EspDpx 1YDP5cX7ҹ Iˢ]88&g8yX@ʻ-o9F\s;#-֠F2Cbψ*PinhwBL# _{G7Zl6#Bғ̃:qJ c&"y%OcG]-ԯvֻ.50![?9;,ȺTGZ&+4lJȞua)\9}o4݈|9QIsTΉU]a:M MDt/ >E!81pµ%M&#=5[Q3$0.]VB;xA=Yy$kX"VN3 4dD+. Ӷ'Ɣr5슃?J4! J|L2 i\VEH8:kJۛmIד6qG'("gzh4j{t9ȴWb5z&j2g슅}iBKsT8.hp B X<)DSm c~_S1I<{sKwgeF!|5enlF! vUk_bJq9«kVLB| S`VnI&*K&8=i؁^?%$ri0UfՄvי9$%HHP/Y׵Wf8@}giRi ؊vKEҊ|w0G ecW&j=@'a||WwE}7}6I*hb܎fؿP4 tF߅hFC%sdJyq1,K3ւz,8(13t'X6YY[fQdx I:L*/3iFz{"2CcwEͧ\:+ˠ.=fA sKѥgh;Ėߞ DfUM=ȩcQķd]3fkq a;hT[p.,kS>(<ߑ[q#EzCDʷ,(@zݺǎ 5q/8{kzZ([uReRqd1>iӪ.]a͖+x=Cf1.BX%ڭQoY'!*f*LNT`o! ``cMp1~&IGeѤ8]>&G8.֒\6[]m3_ef:]peT5Ll '+yW~`3G"v6t{P"HAFP͙˫S tUm}̭Ҝ C7Z#ph$kg۱? FʒO.CH/X*I=oMY$Qӿwpؕk/͸(([. :rPiQҺ|9Dt WrS'u15HAg؂A_?H/U Ar 1{ )e%2ƪwUQ>-]8RZѤ϶+{"Pw=dq?OeźJ`q1b0r5wh ]ظjB j2GW[n):9[gCf,Z(&;qNth?P_ Ad4/e./TWI7yT'y&X{ ƮNSҹKWTDI8*\|D-0oڜU>2.e1qm/<61鷄r Q@\-7yc],Bvi44vU D}αhF=dn;wyktC̕J`x#mo{HwvZT" EU=3$?k`qh<&-̠VhņS&{g"L#όbr>-9O7Vd9\/LRAwZưBySa֩Z= =b?='=/]]╮p=;d9iЋu, }]KvZˆe@z ۹lV`kb}VZb/m7vLB|wp+~㕆>olcA] !DCMx[@'kTR<qIj-PK~TFmANyy]t ٥Q~}[/j @p.w<[̈́KKo Au_#_zRq*GI\YVi^e їsA-%Fn7I/N;Ʒg/obAgZzT"$ʯ!SOAB"A/eKnX.Gd_v ȼV-dfb)ΤsGx*_ $H7 S EPG+}; dÖUE SYX>VYW Y<ƎP ^6d"i->ǎB/ @^V_5ߜêsef<=a压Gb),Nux KZW;5PuM6N6zzr0r}dSB=\.el>c?e?Pܸ+YB|'#٩â'̬"̗ӔOFzDKZ;f$ ՜`O+[% 9l1UlSz>-ޖD"mzFQ917EQf~>+D]j=$YyʦǑ`SDӏ1%G%Ê=BKڑùJu(UPݛ 46GKfV 2jPI-)%tF$ƾZ=KO{f=+eñ;с"T5p&r$ CWXyq!&fy5OM!28'4Q.b>n~<&2({ JZ&\< ׃sMM*$H ' [[*aޛc4Fʏ?ty ݖ7Bxy/lrBНȹ}8Lw3W-봤Lc@M ދR]N ; gx#w܄(Qd9sc9_h.꣠vWCJi?989 Ñ:@:1'/2\Jnq.ī>/%&xm.V-R87Ζ3אD1fw(rbmPf&jMvFa>E/N'OqާSg7_Jz)h-RU^K.yXD@)½ pBvBn5O/*isl '(rZ 7ti{-gT5O^d >4W}dN 'M9OS9a<[YprKԃmE1IdS%BdZKɥҲ0C`j@@3?~ 38yWS͖͠+p$ jt"T"|N, gҙj zkAnh{5>BC /aĴRgk]Of!aϳ@SϨiZݚ@Cdu.4o-z0ԂMD)"S[PrucgQs|3rni0_?e:4WH+7 =.5*Kj3DaI9ǏW=PmDŽ)|CZRg-,wj4;Y0ArsmN: Z\0 TRaxhfZm쑲l"jyqtp8,uG}HSz{>yY5]Nwkxf~bZظ T.8u+O,M|+)a=!cK[ 6noL sPLpJ%ս4ޥW KUg})r(q<`XY5HEr<[V~\ƥ΅e^Es<1Gsbe 3林# Os~d'M UXŖ]x=F69+Iw2$R0T#T 3f㨘 P'mi';\Wۛު7~G'NН}{E"sm5K.u͢uH<d'E0h[Bnf_6(eoC3xPBs~H.I6N| 5|mD湆mWf䂡/#Mu1!$X[ъB(Ϝ8}12MqF]46Oo<)m|VK_IͿK maI tggM8*!>4)F^GK2#rKFD#ײC]td$KL"dn:j%A=J:S[gG,$&ڋ/9J{2I_hnz'/8u 5l޽Fʹ௦ԗ+nm-"&C8yNѽ@8Zv; u8]iWPaᘦ"DZ$]gK}`f"*!o f)$rX_t+gn=x]P_ŕE.͹*U~Po54)"D}kPn$nbP'u'o$x̧ܾ4%-Q]xz\ ؒeEB>@*M36 qaXoe`*WxܘuˆVsj/EcvJ0x= V'XN5j~P)5=/#}lq+T (d!Nbiocp|YM#Hr GjUƫIYvh >\fHpsU!jE"ڨm1~PhT,v='FjZMZo zpbta eMnV} WհXTſẹ!7 kqa;D_cSZ= P`G}K4vپ[iCKm'󑗃Д_\1pJh^HKrhPUv 9l*Ft\{(Q34p E<UaZH G,"sʾAGhD!F~ya0Kb+cC| J'l tZ5hgU{OƠl+qdzbv}T,#|16i9*iʹQin+$۵01d.=3sFcY#Fg%.N9BxY9bֶQ& %IğY֍qmį %5|`\gJuf(h|$;K{$^kunc;Gn}Zk/x\yy:6KmuNao !p鮝rL=&Ԗ>BkC؝SYl/w]-p$#(T,?⽘Ii "̼K O\|*B]ҽq4#+\v 0Sm1|p&Ư(nWE~ry>^2Uv[pQ e4zF7JoWs'{ȆwUM @o Ig?ƥ)fwbzSw[ _Zd 'f1(@eu*=-|=pXp"#@q/?ƾxIYȺ6Ypc RxOdSt1h$ut^M sl*5>Wv+*h,jvaymV |1?V2=7J977 ޷V?ד]9s^چίU;)/bI 9{#%r% f^ykο +gJPP #1RQ\]6ZVIίpe{SY$ UX(wPȹ `o9%TCx=8[CEܿ4T9:j {흔ޅy6N-Ŀ?3\z9{Vϸ"q[!PF@!D୆AiS_4/ϔϠ_-5JC-lHIe3:OD/RϊP=Tz 4S&mSc-bCt PE#C(̷w>#3]IhAy%x$D85eP!VҲ'$*21%w‰%p0e 9uB{k{پvxQ[n)ЌX5pqG 9ACEM)7tދŤ~ ^P)睬Ɓ;c7* 'luحpE!0&Ώ#%+bd&F\nZM]mhTbh[5mZS=Fe6,f'na2,^b|ÍNbZ& $U^.p9m!BOyM~LIۊՎt̿'x#-ԍW+X}\d# ,9`Y(w`~6iYƴ*]h yC. 5%"4YP%|͡?L|ղ dc Dm #DҕI]&z)uU?PoPjZM5<#(ycr,9;U>lKHsMq8tslo M RzJ?ql~]c$SOr4&JD~< $([w&9sP .xç?$kmt2&.@G1q4֜ HH|Y&>Ȼj7G3UF~xN6dN+;w:|Q?έc)Vg{V~ROYm@;.Sd9q9P?Z݅鯡n I+c`VlsGܯeX<%Fva?zPȊW0J!=톥 VՊX9"r:rH~Qg?Kxf7#Ι>ƒ:1Rّ̝q15YK(V2iR/ QZV'*gr)a RD܋u e?|"b+_WYŚCϼF4l* ) Oo<PM~6\ASU_3!dXɪ2$7+/+S鼣qq킙uch\kw^ߴ=g|va4C%$, *&s4]mot 'RxsT8s`?jNp@!E(!b+skBƀk+p"`Cj }tQJ )\0h=͒ɧE9t /~%Hm"RVYBV#Y_ʦVNNze,+VYi"?) `eU}7 {-B_&Mhi fZTfcj9~ t6¾ 'Ex$?ef<~r4*7Zg"%os0Ag)VP˺L[d:B_;BƄr4-*Opuw_МҶs) ]*>Q@+sMb;-)++0hf3':YFEԔD-Bo Bv B~Jc.K8 V˳%ɟr1Dw}W@qb($OuVItpN}Y6@] de¼}I@Xt 78^Gv Xti$PP:)G3 5]m-f͠.1.Ĵ,\T=דeM?ڝZAx\/Ɖ?̈́W>xik>lb5!PrJņVzAYP]z.QDkAӇtڶ L4x\KӆGLn5Iv$W !jؙgBM9T GE/QhB+]g섛$wm%r]ow|FHSb V2r]橉"N|Ch4/HfVB-9`εOMM8.~k8,];h`1!mӸPExd:9ȐFkhhw0Ғ~}Tq3 D]tb4\A,A Bt3G&5WfH>d^ɰ8j5Jkq*m ⯚x'iǮf8Y8Eb4i;ut"TlYd߯[}T_dnb._(bCŻ࠿޼!4bZhv!Ol`o э3Nhuf ݍޘ1 ]T{^Oo'IDG|ˀ)qnU91F:9fY=" WnsX>6&oaS ŧս6 uyfNpꤩG/:hrp{}:85*sH,6_x)mH=RMKJ@n0QP/0*`o{n^skPh*iҋX9j-Vlg0;uDU(RJ#C7M QR+6A!/c;=3 Eڊ(ԃVI%|&M^xU?HO&)w[%ĸ\qK45_ M/۾fUGH"Nm8RFyt*wѯ6e'·`'OՃAm}őDGz VRJ7稶đػ1RQ^j`C . 6#b׷´ GyjmrB¨D Y`_uKj'cj(N +F h&$gZ20D4HqTIШ{Ao R Cֶ4og-m o@?v{@E7vŴOgaxb|HkB1`#J{y7-:Z(""pLz5jL5êhzNo A|/Ñ͎3{uc\<&sKf`*&q A" #Z\4uy*_rp-:61G#A(oy$`%?\Qo痝fWe;[o>7R/zS^=^%.P}|hAO}޸\Iof@UNvd$5KNR z&`^nXTK=Bqȸo p?ȣ~1,~$i),E! Xw^&?O֎j4qqŠ=0c#J,笊\P  =2JYa8ӛv'> }A :N^6?'N!Y*g,Z=DŽ,od kt t#E"ΕuNL ]}uz0fRY} {&ۈ?]"LToP<ۨt~-^yW[ $%9O }!diG(Yz8;"=kj4! Xxw^2t{] 5p>&c@77͢Kn%Jē_<&fQ(HM|GN=L㮑"/ȶ52Ü[ h֦%jCg{F3綟u\0B(K~ݹ`8\ya9efȵ:n.-k8ͻu,XK![l<Vf 8jcbrHH&HCi5*4ڛZ âJUZMRl%ЪJ3e7U_PvA1dW92d$D2N'i928J*hOO 7}LPcI@^ ϪT#Sh6d: ? ɠli+em.\]CDlIv7_eF\Y[4hPf[LR;E/ӮZ[ =򒘉1}kJaXvK^u:J0OLSRYk=|w#0[dm' (Ty=fKM#+68shѳe;&j]^0l7 `9BȼSE:شK+PJ4f|{z1[TJ,= $;,± qcVCu:S.ubŮo:)-j=Pv5S`jN-kS]lg,)v+yOo2qwB/,dگ_u-EJ=5 #ҁs]@64uG3qlo%';ͪ;xRͳL@^ aʢ ˆIsȰR= o?Rŏ:U1&JLx*ڀtgY:6B H ։wp3sij5R'Iuԩo8)>6W*ܑ݈~;Z|dvFFCfρiqg,EjJbxb9Ӊ7ZڄS`Qʲ.ҏf}&0xa%Wn'GjDfǒ죟'kwIZn5 ]B}ȿTPt0E5|E .5{Rz(|()_`Jp2Z f_rp! fY\H/.Xr͸Ӑgh c,c}=.+|WvgAʪVwAZc"?$G*>k͈ L]ou?)oEYhV擂R|☦RGi$+ WS\}$[f,왙:U!Uw1Ř}2v Eúsdi*|qj#bLpBA[uF4V3 EO@E4}Y%!+,, Ne+[ [ w@aILka zW)D;$<P]ܷ>mxo3?>W 7m PqؒXgF b˫OZ =hsB̷WA&qRej`گ؄R_Qa\xB3}BJ?Yׁ9GB5;Q5x”ǟXcԹ8 AsRv~plY5! YG8i^!v7}HCԐd0xoef~y2!!Urkb8t)/fJh||B**k97k`#x'+W$:Hؗ;k!/ v$j@cda2{ÁK_m@aNxE*`.pNfEJ̡ZZ [n{c^q K̸I9:HH!E8R) k)Ubsjyk$nQ :b~Y:$D(ܼߙT4f >bC> ÀDTɆדOhmn'Fђq>ٖ~y$r:.mqQtzDuJ[]?[^8l1M2Puɔn&oG@l6ՑM62TVH7LiEbλsh Q*w] K?? y*|vU'L+&"zD:OQJUӿf6 tŋ첉U* m0Mw>\Qehp\.ĄUgp]huJ >l)Up좙ٙC'>9|f ^eݐU7iܝ[2)Z3*~n,(wvT0Cql͵Muޑ8Ж /fۥ=YNnTU=VoĉUo[8ַ<3QNwaү]|߽,[ħ_i@McN@]A$=pxntI]_+O@oGdF MQݰz.`~o?.J;3(8Yy 0ބ$s<:`; \k'VbY Z>.~ z2PQd 3RR!ݑMuqK n7!=j⮯o.׸3bB*EXR2Aq׵.$e`~IG2cZ(V\n4"؉=:K˨ꮹQ4ƈݾiN dRy<3'XqKR{.pЯI&Zhߩ%Dy;TODeb]CB+3 %awכD@F5:Tb2WpY~YفĊ9y:1<0sPഖyOh[j: k g (`\ajYg!d`1LW[X>^;E4'OZR,*oe'!;3nt <ބ!XȰ6AI9&>%_։_nGƒ~ 5d2)wO c46-yd0mdۗObX&|P6h(ǥf|bU,Cw:sD2z%;R0XgAM=Q9;ɬWNR.͢#:vFzZBͿF?[*a"U%3藋+[c]>SMBnPc`iҶ(<%2L 4s_ 0qBk5#;&-2x'L'G3*!eӕwA>UaNAa^ Pfo죨:=Xj( n*2`nζf-(n|:AP f ]q@gr"N6Xb7{jX9Bq'y^ZoH4Ԅ#x.)m4k =eq ,Q0z3;#$vAFҔ3'&ՄeǏok5`zKX Ur.QMS_}>'QCgFґjjBF#Ȕ6&ft^$yVwf>_k`@|~11'ME%mw`>Km)D\;Ɵa Gl|xn?{e8ܾ~F.TR_;B}lRx;}&NaPaץiQZ8N)2KAěp-&1#]"h٩]HZ-OڎܐRNΊ(Ĺ" Бl|H=7ϣ%KK!rOU~ ݘXm◛e: !jy7 h %ڣ ¿H`u>~|r7J k"Ѻ`&>7<̹!cRV%Ue!Fܱb@|Zn-]ӣar[#1z%xK!\A%O $\}?wٹ@\ "]jra5A%eRX㪥86k#kn!:aL } .H;O'0ڂjd&ݨ_S1M[7~.3'2O( vYjYβ9]Gm6掓$_A urqcZElɂyF<#H|&K-n` BKr:shrQԳmzPP #$^7itw%U:dm1xѬÝi3K{-Ϡ dΐ^n]O;jR]VGӬbFOuZm仮IS$YGb¼0!whr [{W1j EY=x:Kfٓ]F,mlG,ƼԸtDJs-L4!VF"i1O ioY*[Um{31l?hy> 鹮+AK"(D%: 1s#"x:1Gd(yj 8z7UE@;{ǹץŹwq:? iC_/MCv:yl5J.]ڳ~R&s1ͥjEŧ%-V_h&r- hhz5k׿$D>?"# G?=GGWqV6ŝ_ʏƦ'ǵ7W]]FMZ] '$ \/`^B^ySOAZ 3W~l`)/5ƍ 'f BR'x߫W{KJr>CϗnOoqJ/A=#QwY>t~BtpG?ZXOO.fpͳ:}v[Gj#vjcBbRz u;d貸18JAPv4ފ>;1<PUB)VS` ?pN#B$)Z4!d*Ea]Y?La?uS d=Q@+4=o,5bjQ*Ԍޒ#@{%N'tlPQ"WHM*CEdp/+8s's2xDMa褽ݹ\{A~dn!!<ެ{s@k3;6qnp U] RFlgl\x]?Xٮ6ʇ6셋fw 8rќڅ/Bd^⺵h} j s'wq?+'!,*Xgd\/c['s7{X%M<>Mv|쾙dHEa6~FZc3J5q?YٜUtƏ°^-"Xct\UWo B DU ]Ho4Rl`N0a*ּtۗr9AHߘb>3S[>_Wu l ZS;Y$pXz+%O[Q]!49DLwTֱ iF]މ4xOa#8,PlT&: Y Q/zbjD Jo#D/GfU7Ka¶#[n:I^);l{>$wnwV(U ch0DJRHHtO6~Bη2Gi)HQ *Pƪ::n68-kߟّA"kdZ`u?b7so% pD\66"tL,oRԑvvVQUMk}$b)`/ʕOXv&e9fȐ(`$24 />Zr^ O4tjxȃ3-TC0%(6,} KOJITʙr -A+}Q8ܖL^ƕ!m[\ W*B'56qvޣeݡ%T9ms"|Yc*sԎA_ - @ U&m"c;^ut3w $"Z{BLϫ\)$DrT&qD< )Iۺ$cptb{8*";JYby|I.ô0/$6 ucҟ1A+f~QvZb}nsn;0 P=(óäA\[Dx}}sj8S;md1= MC.c^ dv{-:]W%͞ދGC0Nn.%piO^"L6:^ik΄ڈʟ*e=fd7:h48|;)` O%ȯŶI3aBIX2-~z-MrQUI<# tx݅Y` dcĻsܡ`|^WNBcš"Rh"H][_J_q^=%-VGޘ)L]1Ajb@0Sgѝ4J0a㶨;]+wD#{،瑧.ziA!t洈2+LQTWdK9Az RLoy5͛*>~;t!#(ϺQrJk;Ng &=9"hGڷ mўuZLrNJ@rn"Le SmD(3XKBh9k BO"#Zz(g?AP[!NI~BvpUWV$1~},P("ņ]mgFĻmrAUjwjY19H>%wE+R0UpF[ymIw;d֒| Ankno7PhZkA]'ĺM,!@v{)tP53cDXeœ_ .T$/Lc&=,eވ֋e3#SrA p"B} KL5]QFn 9ڴ &kdZHS}eJ]m {A`$8QgsP=kXPP:⌭161%%ecε\Gz)*ޛ=en>9 dkp1:]- '>62 WF` ɨ:'M^'Zm` `ag]6 8.r4<6d;OVD< ?@zR@IHɞ-'K{O,6[~ %g)^ ".>~πa Öt2Xˊ^NS(p$+> Gf"d;LyBs@dpu9]ɛsoD >vSvg+co+oمE`(5~;yZTԤxJh~=^́26<؀ ֗Aǃx؞"#Jmgdg]EQHr-^?k u]UARMRj_OTt,ΞT߽m5U :As&L~wA0I4N '` D}tQ5K^Kke\Q(wAaw'&qgܴUw3JUG6 $x9 %\z򷖋0tcl"oeU 0"EdF9HBgs?-b>?-4Gj6;)}S i~Bb"^[M|3߅_bؤPn4,)g=y?:6:XpfC~ H)Mv⟵gľzYʂ0 kVabd ty kQ.d# -&Vq ෳ^Qb_Bl)jw8lE_#sCfivv-}}^=5$= Pܱ<6 awē0]]X`6fW>ٰ tZ\f7B%ٵx9@eFXŋs3Ϸ~a\3wkcn<:$>}1E[ %ݍb 7&/T*g~ViS&,+^0 My Xbvs֨)V<:|ӊwG kk"!d7|=)hъ%#쵺ATҭ=4žg5vnnBbCqY{~V/[ G\j"9[(OG͎0VĺV}?SӍW$@)iڳ_qoקȖ˹mFB˕6 Y*cGћ#:CP佚%DҀZZ#FUy x.7++ؙQ  N U+ۭ`DřB2,UqB*@#07s<`'v\ݑj|UWz>M?*aExq;zؾs|POw/[tfA!E_σ5ȓgAJ'sWNҸ_ڐ0{չuo<}o_Ua"*e*1N-SB- /vq6-HqԒ 1'p9-\mwadzv3; p< BU2 b t#8)@"ڤ,e01WUzLSzV.ѯ5(I?R%֞i^̿@XnpPO=0&$L:5(fRڣz홽Y2]a ޿R:\|؝>'{,@{89"&aA`T\uQ4p&0xxtFd=ݞے J_ z1&*DKUPǰ&1na}mϐGf ccLxT0>M{}% -QyT,ExVe[ dN㍰:Eէ%Wgx꾶k244-_wOVmY7+O͆3tf3dٓ@]J0 [\?Ф7XS{/>v>@k㧪/G:l&wt*bIc)qw?}yt"p,v};t\&Km DK= ./VzS n`TNPdm~MGsnu\_-&1Fvw%Wj7y Wҟ@m!e֢G97%t~ts`_!n &M Sc̺?%|9=iLkŎ9PO(OQSd4cYpÇVl [_CZicFA4)w]jh}T"EgV~% 4u*8`_"F1O=%"wWE` r&z\_mX P*3! u؈+Pޭ]sp˒_|~l%S{M)^Y:N '`zh^_S!QqF-t4AMڬј 9KTÃo'H go%P<&[t:SI0dHSYh0 X+9qnҸ\;Z^f85YŠm\ĘL,_`яRض;~h~S1(|ZEci'I셹0EOZR}zre0Lork:L Lߢ.Dw&>gYO%܏5DCs̝wcj˶.-VܨH͑]k,mB9O⍡gt;56Emk\H8lf܁g#P:CWu&o%N\oW~_R.?9=BovXהO۟f$u*\V6.cg-H4#l%%%Gu7;|Tؐ`k1ѽa/UY:Xf9i hlΟv,;E1pn9 [M܍H邤C/xNzw*z#}gmd") VLmюqLO"0Y hKDD,KqeB\Bf8BԒ=Zr$ vB3 jWǚ S LR}ܠ}`;bIJs &"b覼oJ\'29&3-;٭]٬ Ad"8.i0U;tL !j$ʹ90{}߄,M[`F"kՒ7j bG#v6,hR1#)(jٴ^7?u[:"CNqE1woz:9K|x^-VNS1BMU,sv% V*Z DܼED0.`ؗ_t |FO(K+7O+L7Adc'v:i-dkH:%U{iu;y}[ueɝ+3o?IܨՀB&Rk*K¤U +Hf@Od058k8>.z.)yLu*FZ a̤D2 ~W2&~-hǷ[k -$ugcB37Zzw֖qݡ}?f#*6̬3E) xp/Nftsw/]`BKArON Vp؜Z(J XխIߴG,Fx;'4U8wѡ| 63 Ushz e.fw8Lp|_r/ g_c^J&݈ϸrH8pao 'eO~M VZmyqLSOvgBQм ~$妩yu-l94[RoP9 9 ]_lA@q: =kXBg+7fKń$_Snһ_$OS3uhŌL:g"BM0AdicĜ\3c4|Q togć"VyBT f Zdt,~|nVqi=kpYpY *T2cJ"Qb]80G>pV*Re ]PeJ\!*~R*ۊ<@d WFr\ p,4GN{~Z huHv&3nl%EJdr3vCHy$K_ \ q*n)-cB?/n(kC+VKX,i^Jtv``P\!尕kh)˴rįKLQWF r襔0B#t5kS}`ZeGhf*I)VvӃ}[JU8Qa#.(1ɻ{\k6Sr`}p͹UI!;Qq iZ N ITkΩL>X.&j9TVrtW9 E?ߨ@VO{9ڣ,ogd,\#I9mA>vA\uAV 悘7 Жemձ^QslJjZepyf 9q3h"9 QP,V3izڐ=:^^YqMֶc 46v)!q\ފF &=K >b2+"E*rV"L<{Ů3-•Z)_ J򐧡@eI'܅Җ #&qB-|9w0t1]D&N5Y# rXͧO4uv=i>ky2e-NE-CPthN8˓USQw7l.scha't:0imݵ<0uk`< 00^<֣à;[&V0c$ofdEwV `DnV&~m~,l7H',Q -LLٴѶQhM۞7BiQ}Hj` wE8&u-qj(4g/P_: B5bgd_SM=G&;#u7KzG ԍIZ}fuD̢=4A 0Շ(+9W Pc#:' ]ViH5}.~#ogl'Y*w1IDK ,sFۺ4[ >7_Q;}v,s_v4x[x&)Uj+煹0LkGDc&Kފ3TqfS幕J8(3bApx%®"Sٸ[C4S$F64Ӡ\2Lu -A͵(i6G+e7kR\GqĜJ; ~ X1$Ƅ^2W=ad._([ \-~кTLj൘{5_9pe@Y捾}4L/^](fGqpxZѯͻY=\3Я9`kĐemƳWզy'jT^珹7xeWnX^J+K3<ikQ. 2Jt GK;I 5x*u}]+S{WHmU>T*Tmxt9nܝg-5=z7`VRL9{#,&9R f'C씢!_s֛`cT2I8&08"I5JKkƤkd=+r4AX1uƷuZceܿ) \3Mzߪm|hNRL֎^t;Ǯm@\ /E3ö'b|SeEN{ 7RA4".'쒲p="20ؗxt*L>Uՠ J=DVi5k;m(-&F)7)},)nXSŒ{ _҄\o٪7R%6+h >y=fcC_[h Fo[vq q$bKFt%2!ϟ:C+FdkθFOs(8l1pkۦr0ÏD~P! wA{[HK:+"lN=)Hos.V ㄍ >ȝعTl$6"h)1ɳo#vC'04y? RQ>kݨ p:ߖ " NFz\bzf%h 7y.)E9ˏdʜ @*T옉[j^G} &OD~dPCSY6H2ܐwHVDBȆ|K_1Z c#u2ຘCVs5\$e8_\qmhGmjtS,uI4"g>,&Lb拈W&E1q8MaB_ad6S~bG֚Vj]3?}``K% )L!7/F!:>Z P!_$8L>H7j"gt@y18 #Q'3ƻ#RVYۋw|3 "ޥq_jHrP*ͥn(aTH>BsMu87nZСi.44Ci)G̜Xh_OhFf5Õ1[GH.{6_m${p ).b~1͐=BKxy>Z6#@VK-|&wɡ5䟄w`oq \j"F'XѱQg@=!:ON/AU<-GM *BGh|q Ot h%R~s\QKE0; e7` )#4W#KX'w ̫$^RWqޙny@m MiQDmS 0'LOSvH&tlT"?BoN~dQp^5a&; mk"(< @sE*8nՈ?NfMףyGIt߮FBnV2#xF!hfA76ճGxb{fE_L W>ϩ^O;~=Mwb Z^XY>#w6̙nvߦ\~{Mo>锴f\]>%}ՐJׁpkX!UTݴNη\ odǔĎ'}UM檘^XǷ\O#4mƚ;| !>uK ܻ,졿2T=FұvyPYGƜOoFmtK2j^Ρ=jT۫i 'Uݑ>Qٺ)0|w#rKyD4[mZXS(<9jf;RS(Խ ā)Kd|D%@53EfzhT kZ0_顿d1jGlgtAq4Xfu2< W?Z.M@29 $k1 絸4J! S8l$BUF{]pkaMla;/kQ[PxDEUO4#^qS:y۽M3ig:EK`VSKٵ;> {N6(=-Ke-TOhmV]|D&VqILmW7oca-._=gGݺ&RHvhj:ҭU{`PAW@4^%h֚|]1H-Ӓ[<@topҐfd֥YX[1YI#υnuhm.di ̺&\nG_ $X39޼[@6EWZҏO fP}dL 1\n#auaQ&6mnZ$e)cKGzIh79VZ+4=}@%YpBޘ[g=wp8|z.WjN:+@VCa$;_| W! [r4bA&e Vƞq7*Tհ2!ї_`-\p@9%ntŮUW$sP^("t,C l2q,[i?d"u1KZɩ ^)JP(vPͅC P8C~Rl+5T/xɣd:y(0ǒ.WŇзZ9Bc{"\bگ Rrsp@ϱtg{k˝v1ketK:Q`T8䩟G ud\٬N4SCtǃػ N >Q7|{t8g@O4?V+65ҋaH7YڃEBz}qJv &K=tG@V*K_MG)hlPforKlͨ{خYK+"cBӊ."K3A:k ] @՘ _bǠӉcNoχ:ag*OГt;S3Cd')St<\!{SFҐ9xA0Leݞvp `XskzEefTي irWg"GoVڜ_5Nksar_d1VZb~w:C>Z"b 9abSpԨe:aPm9CSir Ũz a3){bKɠS^=(*bTenM` 4%P+7@Ee)I}U.< FWbw[=>9efP|IJ[[﯂3Ea -ط:bL;=D]ư n?E2I[Uɛ3y*JBCMW D7Ӓ?+GL@Yw~0W:Dǫ!1Tav}k@BiH9i`˜gRXGBy?)B]fOrn!Gվ5)І JWLln@0c} }}YS̵j];q 2LtK!״f]׭;D7pXzgҰ /{$j) t_q"m/ cF(ԾtIng06 Pc#1Ү8s)9Z˒o Fnns8m~,Bs l·fE0U;7$%h7зBfkd#ό6>" ഈ f1 -6K׉5_jҝ+oBR4"FjukoFJ~] 4"f%q{qq}-VI0ۨr ҁu.R#N Uz^D_:j]N~ [5Tx\^D~oG~F@ WU.W">a}kw1~\F ]i\5i҇iPMԸO/0qC] ^/+rQe=EϢ\BT|-YVYI?)'z<ӔRbCȧqPsSl%Ot/:l] QqC4~84AUn2RgUnwJӂ&#..ܵ=s IGp/LW,sX9*jVi[ : PP :rUX!o 8"E㗖q|o-/.Wx"sɴv +CщQQ}&7b+Q~ŬfT~Uס<2^Zf): ',fbě)i|?د(JzvK c`C;Rbg/螹R zϼOAsAys~4~sK> `sts𫬨Oc|ksZOh7hw.VOBי52&ELt}P;]Zf9eUE7ei#NpɱE'~Z"(C"y{N/ІVdIUqI_FC7m9E.FW|b-f@׳ %ʦ>@Z+F^ 4L0|Hiݔf{Ǝ=f2 !oR+Q>۠\ND![K˺kWdЇr ْpWQ\ mxJ?2 TVrur2j S#z Ln\a{NnIA_2t9]7A`y/0V׵ 0m;1JXaQkv;Țxӆƺ1t%b0 n^: F ˳>UH1gZÅv;wLZ˘l+P1^o™v}\[bqSJ k!N7?cHMVwr۬n]Mrՙׯv JmK0i <?yT>ϨzCN^kc Y^q:5[mi(A*ֹp3D ڹ+ KSw~ơ^ٮ S¤,pQUrzrQ}scY=S'PչԈuV0JO8#O&[oX/cA`ڲIs][\#,ԥ9 kg}$9 !_W1V@|(ˤ9ĄА{>ea{jn30%ʳA"8H΄:Dн3uq)*}pNj$˜͞}5ioeI`DEB_A6&q 8#^*7kG8)~^wO;tY+Y\7_GСŬ$D$WC;,D]"-$^cAXED $@.}QBMv%~R94Ep)'}~FX#L8e)e .Kw8QW"<8?U 0dmE4.J r\,je `"QW<,]p?vtҪH n)"57~M ?]ݭd3~1CN<06ј"Y5P4`x$\9 ȉE Eї[^'WrbCn_ӊdw(!Pz"H?&i[Qf(zD⭵b!/fk9u'n}ͯ ifI =n=T@zK8GTUܖqnkwŗnxa]HtfB~ax4T-0ª0o|1f>`l 4!9Y0+B40ЬXQ4~5ޡo)i$$Np!q T߯S^Rݠ Z~8>BrhꭲhW+$fZjgqDI,ld7.o w  $7/2/f v:T a,w#:#I(Wx}b drLF8;[۟p<MCp$| (Uto6N}߯whTBsƵY|rȦHQc $A`k !XM6*-K>=PEZweQ潲 (|!ڧ䪽y*j&3J- 8Ob> \4Jǵhn8m|^,nY/-.C`RS I'(,*P'.WIqY vC"7d0beUBnY[B8=F3V̦X"U8bᝯ,dk},rqܓJਖ਼Y&K@K /8ɼʇMrbNcd] lQ؏C7z .XV]o6F}F@[e+*Ѡ WN4h"9bԐFмC0ZmV\FyI_|?Q FǤ;:P)# B[XÄ{QNl BKm+ah0 '">\"hZ0W ֞itEuSNI 4"\;]whuK?k_= Cw,G,^KSbs"!^m&<Q!7THQ5X-DIǥ bE=b:K 7*CO[(}+wN+7K۶+dϨwo"l`mC h3hr)<(S>WS?1F2;)kCaϰ)]Ui0^-,J9hЙnhQ ē|Z>X*K;WhiSf569֢ zE:F_s oog3YFh`,|miyDwWjh%s堒)ณ7d"41\>ObK JR.kskti8Y< N}] RIڅLδJYqs6SIV*߼UI<`~Qs)YG q58*ɭXGWtuoy:6diq1t.Q0-(f'_t5tfl:t䥌jb=cCrcyr| #z>ˉ=\iT6f4}ȞF4s1뵉d(k4Nr/>DN'{cT%ɡVx=(ưY_Y]F]lεVu)/RзMH׊RZHӭ??ƚƐss'}d"|)"-&:+4.ŽX9J~ iu[-T*9 ~GD%g*I{?]og"Zyz6OKmH|<`z_wubT(u q$Stw^Tf<"LfRVeCR:E"sNFqn)~X~O;߀. {D]ŋwHeӑ0k?hTu'o"VdBn9nPRgشcek6\fP&ڪb|e8ʣ1'T%cq$VG% E}#y-w?)AL$!-xͿ6({Jki~6mR!q;S6Q|<η\s4B3n;13$ƮrbPMĮwǑf$Z8WGE4[>#q-ԉ{5JI޾ 03'!2+_` P>"X6-}jyG_hl<x|"[UHPf(>A ?qf4"招= ¼{,o('tdlC eAJ6۶ٗP3ւC"K1m;YƠ:5AZP!'WdÐ8vaK3Sk'w kR¾̚ӣ0yq+0#xA/bcM]<45Y[ cM(G^Lyl껒ȡ"3eNRۑ]h Tc˾\E< -C|Wpnt?|N`IfZzx_5oŌm\ G'WӏTD>o\\xʊSxVB'~,^ ?xl+ٓޛ8+ˍw["nbcgFĔn)oRYEEiTb@~AY2QLk}+7zK"CY&mN,yֽpN Ή5)w3=Sםz?2 Ҿuߜ)Ս.g$X)U*C9=δ<Fրq08EpCh̐x~D@2GyGԏ]@Mk'MӬpvwֵ:L |dvq"#lk(#]O^k;w]ٚfW*'P#QofóGZQ)`#U꫟v+ \εܥZZ)T:6z&gtC~VY T-k@MDldx*rp;d9mk6XFU{Vy!(oܩDNn0iUǀ;žu].X6w,8cc Ǐ ܮ6$iwȩ3âEgMGZ}QVT?T=*o;sVin4exe!u^윟+2h>'K@bSC 8Z{[=]k9~;cɞͷ <R 04P(_՝&PLU>vZYwiJȆV-DhIJo1"ư]d@B=Q'(R<2V ԒO 2A  W\葓נ;ZGgj v>euϻ.->h7М‚#YO; C ~s+&q^rלO;M\?B{s4XoaN1A)pQ1"2B@^yӆFT7Y};l(_k.zM|m mu 1:˨ILklmק?-Gr +ks N| $X77bȼhdv!n=^s5`B\EHKlE?E?0o*ȫ)wx pt2); >NNsK_jH %68}j-N.Oz<=M;Yao 3͟2T&|g D}W Jkt@:oٴ5>: ;ŌuBFz3dlh\HL+w V3`f*!}vw${^jJ,@4!԰?E$~sqRjL-"Q7m]WT5rXXQV()2ok# 3-ӕb{a1Hv"V4LU8aXc"S斐18# I|+R,$x'Fg5G2P&#ǧ:"I@ڧ]!a^#rde@յ+Yx29Ƞ$X,A!%a+=e}PH4e+"{`V(E GX˓赩f'$i<`XXZH{"(&\Lmu_wKe-S-)?R3f,s~^]y݈9 *抻D{7e3i90瞮K7`OoCm3҇Ѫ}%)VE$I|(L\4 L@)oF*!AN/9Uܧ$kh<-r7z|%̔>?ʟ HՓ@;COv~4hBu7{c 8VÜpQ媞tL]oxo+ݧγ땂曊dN:6cnafFd.BkN*!*5+:뢀H{F% +tW 0cޫ:bD2Ds$t#' j=@\=/tsGslgmS>xH>oO׋/WX=BAk "$η7Uxs}Zţ^K}0:$7.B>5άSxDw[κzi'쓸(wD}6zt'o5S:8' Xe}>fտʺx &'v>,d$hJ'I#ݵbo0ع1, ]XKjav F{G{69S R~'Ok緫/v'=Le)<2Ep,ypAae-xYko-C=eEM"@5T[r"{BXy8MMus8c`l1)X"5N;3^ ^^ np~GB_d'RV6-E]F2>A

    AL S\ yچKߖ0(AYzZ,f0~OrOk>7fz\W9@<.=Cd~:Uz{BwVѩvzM5wܒN#ށ8VJl N2 ?ɳgK<q/ bWЭ3"hZMqfP[D-g\bMc.*lZ I픪tO>ѲXP5~2>Ss݋,1{'X0%3W/q}V=qD vk%^3Tq``d(3[*~+0R3hC=5 z"%uRCfQ48a8M9Qě _qn4F͞P )5|epO/2mZ Dcsdbq:qJwæ;4m3MhEJ1\|y@F0^]44WO&b# i \09#nV+b|00-7gҼ `0aK4HP"7Qܼ5j^x#Y>^Vq}x)xF78nfuNqpU+ Hs{‹M(ݏf̥IL7nXT zujpxx"TyC$~I]"u-ZCJ C4G?sO'{1*@_0N";3(O/9PY8{@h]8x;XݮDnIh!G#*F\OH`F]RI!?]F;O2`ZrmBkE!ҳ;Z?m ~50X}rJz`9͛IR ъb_W;ZP0<=V RPf[`w).\W- dٺWfU>+U6D$?cL x M,(; z,`0<>K3Xz ~̕OaES>n'K}S?} .q.3;;uh=ɖ e,W Z&264YoPDw- ӻ YU1Ot͜*v!iü6{Q'fKH^y,ɋ>+OFb"=:' /V_{N`:8 i&ZF}a Y:le+;Ͷ!ba eJ *'> j˟Lg/7q?5 ŷx & ʄ/u.;8N? T:|qq-\V׺YI\<%?? m|8ۀ=s}!;*-]xȹY`[s=l٭Sb8F*%,>0u! X vosNi)hω!fUmdw?Y/ |ƚج8Nle2> w@ᄿuLB(] ( mǜQgIu@bxZڞN_"^ذUzdšJL8 iK2yCy#w3IҮo|:=\0 /t]zT1ʑI/í ,| ͒2"YiZDFv`ў^jQqܤN~ {KZBbVuG_t[^o`mPPes<۞/eʺ"hz_*ya:7ǖZ4;Wlпn{?!?Pm1+*" חO+S>NEJ = ڷa Knq#JaɬI=`M&ONʼn'DG:'c m/!Z!su]BS8ǛK|m :%TإflqNKgĤ1Ulp@.ܼE]Mʅ72*_h9B@ƻ9jˏR džq)~Z1.,s/߳OcBtƉmr~L-k!Qp Y&4 !|6jy } wyK` 7GJ׫C %,n g$i6&AhґC8U+8cd>(s)"2 ˏ5=rڗ/F`K^Q`p=Jl/ :=ȅ=om-mj,o:*O`i/(/rP@f"5H(KOМ ֤խ,<}AX]gFqTdrWX!//4Oѭ@ω^U h-Zv㭇 |<'$A|g:L`,xV3Ja3I:!mR̪N ftERj4/3StV jC9aN; *Tn8x-rO:ՓrS-v.a:khg=f,%c h:mgTI+,j,% OW!,U2YHևM#`dz$cZ 5X (޸~R5N0x1I՟Գ_e6' ! ȃt)'?A_B3Co}ɌLbϨ2wH1ׯ5o^Id˲`Ee*Xf*ZޝDw,<2%ǣ֫ 5R-=Q棩k$ Ci:GuHfG oǀ&߇ۍtfAu2!4"yš@JŨj{+Y>]p>mAeC! P2?lZΛ)P1IW x:vdpT.u<, AP1ƌEjf 4r,;t;,4gmi TԩX?@QE$Cʴj HHNpq UC;hNȈb1۶#ퟄbF|[w݌ wAHw{`th&o'eFTN:Lzhr2i*#"m̈:#gM4[U 7A);ȝNx62Kۢ*S@3}'g/8x ʢ~}m6uz++t']G3,йz@0\GP^tn/m.Tm" WvUVy}XӔ_' Gwhڥ!- 1)(j|d+A2qwPN;ђlbnqgMEy (5 Tǎװ!pHEd|]w2s+ [#bblD-޼r3}b퍤P߽+.3J,ɍ!߶ڝH4 :T8wemJa-)?~.bgio5yr7r7x7x1 `֓Za♅1ְnTz`QE%Ot&]`b+׀̰%-v[5 誈"V :i05`wEYk!uVSA`Lt5 T^+GvT"ǜ#W5SIzqjU HzQa%ᆓȨ TLD^}@4b, ]q?+:RUEV<||(|\:uf5]xj9/J4MS-iSQ3Str˚up!ITC%ySw6=!(ƫTYus8wލEMh|Wf7][/x ,)cHy~ Rܻ#ob ;W(`a߳IK$Bk({`)1E4Y'U;ldZfKuaQ8./z^YGOɺ߉S{vBǪeQu^yN#$HR42 ae$Ut R*(|γ`.'zL{^tfo ̿Lt*wѫ(zE(O`w6% \CjDO˗ͻ[Bč)mL1IQ anH''XJӄ\bx<i3Kȫwx(9$~pba)#{(FvB[ ~~ܗv;dž9NC%ެcL[{-Mt[4W Paf+4m1hٛǭ$udSG'.@aT⦶OP2*K;UD2(TPǎOqwKYo0*Csu8|$l%8ڃ1܎l7 N2; dDjC![3ͅ.(M W)UqPn;᭭6Ild ao|,>ٳ/_(؉Ô#AFb7i ~ .WPtN]Ӣ*)H"] g')GYz"YLB!lPaBNvG}_n_h VQj͚h4YG$+/GA:ӷDi>wW;,Ȟ Ků,X,]p(P)Xu "J%ePKgi$vnL+P^Ec) `&ՋzXoyu#ӝW7mfb H ̆|c$UDb^x`-Oꄪqs;uwF)jA|dⰳ&@xޑg-7en%x ~۪-.[.bF,%m'GbPJRVo"O4ҍj{p}x[PؓJ#LX,)tՔ̍mSx"4^dc}L9йۚMR?_'mhS.n"vb!ZU{)LmdhE,&r3!+,oxv̶-5+wmv0~c@fٻ[wd2':a.S}6;'@-SMPbxN?Ћi*<.2CpiǾk"rrn8uI~2J)hK%.xVpAצ`oHAAi:.m|)  q+52(t: t҅+Ov7GE" ]<2/R\Agzxq2~ |_DzkU#[[Pg;hv*ByͳqRѲ$LzdoM4Tl> &>&٤ B~cx,%~ۿ_aZ+}>|p0g8Kd3-*ThLɑ(sJݵFŝ?ޯ[GD6;_p*$ b|R8;V8^DX%\Ft lw1$1N_Iجm}! M>K ܈gE;e @蚄$ x >_)溩F/aWb59YgmvMahٓ=6$E>R'V'zEḻvNʲmcB\9 2J9ބW^f:my]=wUR2&L)ћc@b2EYi,|.o//̮o1@Сq Y0+ 6,;Rbl&>i@tKkeYFD OIaSkQъ}XƘ;;o-Tca <.o{ u.B5O9-vN]\r0j~=} ȩ׼u` &pN|;f(dnY>;):RGau:QDnwl#3OVkxy&D1BY"2at-FLSlͬaQXא%;|93Zx hdZ1+>+&7= y0:DsI8@uz-?, }\03S?!zJo,p|ܠ}Z 6$e¡C+"2LgӎPΔ ļ,XH{He4+\PR k]]m6i _/z@J肫ՅX#~`Ǐ={GP*$!?=`n.o+t sJ@;|+[X sL!Gcz!#H+OH_qrjTQ _wY}gʹ֚% H  "W\ŀW֫# EYdkDBbjmIέ6>V̞ d>|rLrVkO{YAV Cĭ3DQzk\t}{X\ݘhؘ4}TFkꇴM?h$rGXi~vjχϔ-9 L՟:ȹGA:)^ OZuUvgpP1h=|d,w؍s\ U+ !6Ob 4IXu%MPW;DQl߇:V$hX~x jqPKnc@hFk^ԍ)JS4{L+]۔1hZ&*9rl0} ^t$[&;2gSuV, XK&]EL>@g̤QqeaTns{w(Vhrw''MaH e6]lwtP}f H,$k8iľZ%ا~ jjϔZf +}VK^E]$"*nX''+]\b1Ҽoatc=}7BGxP׹'[0r1ã#“&܀.Ny[:6ɪ!iYߔVF!axdpJOBxmِ2f,8C*=O2+dE&JۯRدXW4/V"Q%&,\{Fj8jsbЍZϯ&­M1cȹ9ח`u^t:4z[6b$XԎQ4rt*dDQ•T%!{/.K+%$ՠxq4 Ҧ赬 wrpTT$fL|~̹^r[;5q!7(3bSkgLe)jħaDurO+Ȅ+Åp nt/1iqo]]jx؅e*vhI"6c"jY\$4Bp#mskzGTx dpi'*Yʹ.oäF ^~ptgPL)|e5^6x:**Ă+d:!$1XR9I,d '3iXCq=EBFEhV/9s~YB|W[᭺g *c8.V``&/mtbQ#e{A;!=8gԂ#AV9~i Ӟ +!iMbTF 9 #RQ*Y]&M uW}ST#9F'q9G\O?r+?u/ 2Lv(XoIN|, `;B )W8w <K e}1g@"(O^y߃~4|64v Z@T0do@R ld4.6Fa yۥjU>0P0zW}iݨV/[t|QKHA*'>>HBgilID"-PGc^4S]Ut[γ/gQ@Rmjs<㉺cs%KuVL>DؿZ??$<"6G{vO n{iR .»>R %u@~"7f@Qν ŵފȝn2ipjU|)2&а~}\dE1Uf2zY@O7:7I"iH6w֎8h+얽⸏UJ9H *vê&v9l+pkc.ƌ )@sa~>8J;/|(S*v )[pD?P$iw=&*(%a$"?jd9HXgg}Z w $Ga( iێv1 JĨ:>6ˁ-v9L7_1.n6.#fu+W_aÏG13uaS\um'.?z]$tE:PXL\;oq33$a5{V GUےo2Ɋ׃P /AR{RьoVX{rҀ*L쉢#njy oL)'yT2 tT$zhm*6$gv9={dÇ/_$b<\rPڄ^_턌,W07+<^GQ~sc)BGEHE.eQ(+F:Efpf a727?`E$gtai]:_*U)rDŽ:Sj87z{ )흶Cǂ1?Upzc}!ϩ%IqytOCnXA3|MqUINteNo'L&Hws5:gXKJn@؅QmdSB ~q%.~V#HB6C_8#xY4SE_6bDm2/Zף[q}]V@ȌLG>SZ[! ;tm$8Ĺkh2X3H5 G l=P>5wMYfr%r%:Yp,%[%PL bE!gܖ[v<["cbqKO&SU5;j7J7ɂtZY`؃.|Hh:v$v5&O~4„6$1ahu9Y Ԥ(&Ggk/eNe[2(Y^"IA6ύ?c3zppLH_;fMtq~xYB~7 @[y/劕=u'P2 :7 [u~ȯhodekj&m\jȧ̏B$o]X 7W/e4˙h꡼vc om]TF_>d353l#A2| D($*z_=Z(N Se7.i7xG8H͋eq#s+.,i#Ke N֍k/.粇,^pcHc^!Ed!1&Cik iFf8(ȹ)Ur{VuK`Y\!iﲦfߧUv<jۼ8u~R(Yux{(Pl<#Z۝C}mY}C}j-pw!rY_Dc>#ndŻa}Uu]5~el&Gv`JO%EY R^( 8ckn.A~1I,z,{XOVӞ9 F9b#;Im׎JnZ` Yl;^x 0Up)ّ ,,2|H9$U9ĽȗwVI)d!.c̼L8ǎI"[cWS>mu:6e.s´kGk+h>5\KY1f9bx]Ptg׽J~up!,8اzDgLٍ'nAi'=H+)9\9v"-@ 6>涗za<,! lC%50&YE`xpC'.͌5{2q?ZEv]־QmOd/_HQD` YsCs*AO+@\)NxkSXwD(bǝ}QK$m+%,0,2&?RuD6{R6n؛h82Qiv;<ҭ-yp}Ю H cn`NYE#nA 7)w $yȝrWxEax_SXAG A@;3™G5f_UkyGBo3Zqu4ΚPشt=ɷd&e6#I\C$sw[J@- %ȵ Q+ڌ%-H]`+ݰL!9/|k@ kΡ\`9rݗxsϔ\/`@zgދEV7R-exA2:jtgú/:)F"_h-͗ }^2wmbBM4WD6$@8gAbZ2IRD2uMW?N.IbD-RKoJ@HG$EZr 5s~U&O3Y>s+n8cvi!"NӺy(ye5I݂`J~ 8@?F;=S}^1 ؑRX|}_% d_Af5ޢ(<4E[2#$ڧ=֍5 C%<* 9j(ܤ hu* 8fcKEuh =B[ ԛh+hwò7"[ _śW_s~m'30 ׊y j *#x `Q!U":U-).)7z~CEBKIË|~u#\D"Gf5;b)!kkȬ ѦH]grb 诂V7:Y~Ax]90{rL.epX/Ͽ7|STG_3Oփ9F ˓9 =z FE^hqt@|fb}oQ>~K~FQQŶpK+EpQC6Q:oƧ;|TvٶC7!(Mk)%#n;3hļ~w70~p#4}ZX2F).OC'HYsףPVᅹ;n O@njdm]2o8GTtt_lNp' Řd|vux}8mj0Q ֬Qͻ'I~ U~LSR2Ih74+FλY( x%[Ϊ+3cCxcb[VƢ_B?oڲN#u"j#Ϻ3FhWlTþ!!A4]涭#laq5-rU(_Kƹ4菸N]t%w^TL@:R)RԋPy06X1=z Z= @X 1c#udd0\rPqQ&TV O7NrRflOkV)E$zv8P$^lG֡z`YEFDDdhD}Ҥĉ&է:/ɳ)vT}lDՑJ` U랆=';2arAf]}_t±GJa`C]?CBs=έ",}=cj X6~g8Ճ*AJL 0}<1a,~ thKm$AI0r5 F$UJM峭hhȽm .ad|ЯV=?jb={^q! u;iqѶ3fiVdU 1E9z8ݼQ. F,JpAbqiym' ܭX{$Q~%IUM%f n.pS1w_ᙈ/5N',Ӓ[ )4^pv/V8Rw!;]$&J9ʤX`EũHSwI&e]IV7 Ȕ!)7EAU],!7@Ta x9,|a%_$HZݐW<TC̩H EY%\ iwyV'2xݹɶy~ AQ?RFcz3C`#i?w^ v +7 TOR3Nvwrr{iY1ѳV|ZGR.)^fT捍,{#MT7 Ž˓)4HqTd(˙"ۤm[+hb=JF3xA5 r0ڄIȨWþٷהr=v&ž3 7.z?X5Ntwx9gcw^rd_K\;u9Ь V6 "؜8H5b͹^ҟ4R',q y&RX}qQn&VxFU-Au&Q եȻ[wCP"mV䚮6l"gpXI!K %D%^|%q [) L̊%88ajᾙ 8R,Gh y 4Oz\q6adbŵJ ,5Y!Wywg^OyIg: 0zo% 51'P-{,Y-Nh85Xi)z&ܸƏU^mfM7S;>SCl'{n] s;O\\#x-655Y4g nŵ/-W#Ν^1l/%0]ZPD8 خ*AԐVW6D }\cl 9T>) u]`"M6KP_` :n" cr\m XPLhO2Gt*Y.w]9NF# M0kmeCJ`e`RW3)\KB+JL/ah(7N]r߯]G!OdaFX 2y6&zNkhjG YSn_R{k.B?LP+a<>Nh=),$%qq w)Js^gkωWMYy5yB@.k]5d8Xoy'TˍaBo\pLq:Y陴'1NOy[)l]x\hN"B]+堿JZ Vd1{:BԿUKo{B?%:[Еn<}0x_~:+z9 PH ~^$&HAQzŽGMsc>v&sCc猀O웑\{2}urg[8Q e=8HNކav3ͽ2:(D*@;xe3۶diOI{3fE1k{ M=l~8<&;rkdmpcj%?^yz᥹8WQ~lZ{s/& `Q*륉$f,b@tkWӚ[<&rGūR{y?,i ɏM[r3lN'u]*l,ְ{V64]A&Hꍙb øT*LlelB=}>`7y*}Mp0t NB.c7uEDn :eCE0g Q8(BQiJgGCٜ+cnXT[{+pbcfZA.]K⨘ea?ֶ|kS;mzeH\IA (HQ &%  ^XsC'|k&ҥGcx| hyJP 0 b[0'^niVĺybh9X=isDjMq= EƧJC!cn`?fcD̯fNYO/OGFEI?Sgz8LzmdS ˞ڢ YgRe)Uq9\ ٨m .*.G7;8<&nK]kɜ!%tܱ~ep,q'+7.=Xf,. AXӡ%νor[-Ⱑ3fn̻4o!&| p6J{J4?tDi:aBz +m5[;j( %ш]ѹڂhߓl1%T(yo2}Yǡ kb9Nx=LAXWI<'Wx/ldFL5~ QicHTz&KQak8pPz5QDPL2h'*N}>qhb崔 43oqV=PzH4J4F'؜t3ᝪK]T5tO,=~$G Ü@""S!\zEq< @SRaU[ H(&CUz. jr)דO! BJWVi;z'"kjZ$@`4E땺u"IqH> '~>UOO g7iK(U*S} d{ѵ[_Kó(D0Ah Ijs|{Ws=R1C` dvyU:uY3snzuLu_Zt+9;;P BP50nYPtUvr7glfZڹt(Aӭ ia S.syѸe-Su2]N8r}jy#*LIZ>ٞ!b$d ^A-uhX7b}ڭ&NM[<קUIcɛ4Ҵ"@sJKdLyr{N` WݢfL%uTBBGkVsAWeϊls';̛e C`/"@;^R"Lxq3`}Rv;oqRŇΣpA#ʝF&VZ=3g XYR>*ϝ~n= ݋v5H[4glD7 $꒸N߮,:"*#v_YpAz_m370 ͝s*6T${&wq/=Og N˽^;]scnTI nsYJ1q>pAdlI: ؓp32sTԥ@n\%ދd.pIXgṪ<5.4&--B#V)Shh%'F[gep4?%%l?_1rGRNo_[Z1zݮDmۍ+;',[NԄzQBM@s?9c8#dYtG@\NA%y5;QeM;-nwU-]Q6_XY޿)*z\ bFg:>2Zfm`v̦Ǝ{)zЫ|w V1%k_\): i/ap`^r%XyȅՒϳ:*UB.c#`b .}5Fõj0nI{;z- LԌ|Y@JH#S*jbo@0hqhTR<}(u=Ӷq^bTb^ʺK\Hh8 Llݏ`K9Bf0MDrЙjzohq5-f[/!pȿ@<"Ntv[A,\;8P"3<_hŜ`aci\z <>AϮazC_4RhK=L,C16؜le]d?k=M@-ř"vi=魲b_-,ęmLC?{*`ѕ"|`>vp7WB~op.FM0ĎH-y <k|+ҡkKBOoS}ZUN{%3oҘCg-žgɂXH"4]0td~cf}lB<1WWڑH[LWavVG'R+gpgT#*Q- IqҼE D*d<±Q uĹQ[J)ԗ35醼Xv4TKxqv5%9a3ƶ:oGp~l7BLRtvS@i.`XVo_2?tL"̣2qyQ>J䋂G%bX4.6CFKqk#Sb!rBb82:!PO+/P^5laЂ`hWCgE CN67ypCEBYN;ۓp OlBFG \0~'UD$f^orY̝Ճj!h[k<yq4RWiT>*-:u@=]P?d}Vx'=N&' I{nCxG۩:e &,(z¢?bHİL0FrHH|@Fa;8Qτk3]_ZcFI틤De믔Xݫ7\`}7#^߳[e@ ؖꟍmBĮ\%7B4W%1)2Z3L '$NMϘq%;xkF9!u)LqRrgؗ"Co>@Rs|jP8NAb5M? ]M:.\ @x@S+WDGNn1| )D:\K@%aQ~;yE`+vo]x 4k*n_{]1bMv-9L'SkJA%qzo z]`RG TUJѣ‘D38Ӱߞ-!8)A:R;/NQy p)NuYc/IاjE+ש\ceӒ6dGQri^6v^$0l3Haf><:Gm#~R%ܿó;H7mG ;YWfW=Ɨ]H#y T ף/GB ="7RPKjaJ%5J-b7>w6{6pmMٺI'=:'Ѥ!/4opeϷ.ѫ۝[Qa=*c.t?=CĀ@n7XuĦ<"3PhlGJ 6QLe5:$6k+FNNH-,oM*M]BKBoPC9Nppݤ $=|<mwGs^PD\ pCKZ-,&׻{-{aq QEmu?-vkNXR8?_nq:&[;(* E)_Ֆ味3y5`jw aدf:e=04 vrGcOM7@ gd #7 寖A%\On#n d2Ѣœ37\T\w.v  DQ.Ǖg2>V7O l}W{d!DY^crd_yŊ\R=i?c -[0(J\{ީYN+_xv[tXu(%SR& 3^3e%|܈lL||;K{u4$k79 ' IG:&EB.8cE;w׫/:Ck*%"YC<?z;nHW_Z#3zԣte L3. )C |DLS3"wPG<vIƖm.}WӐNZsOivRR_MdO`3ꙁ#od\3eMR)"ܟ)R<%uU `;z}QSiw.eؗ*L#&7EndPB70A05QjO;)ZЕɍa5o\օ\3h\5[#Cj9t)7pvPufTU b"_EҺfFrrNE~peC){s COx=\KVwH |6؎ǘ:=qA۷&pm؍G"|Q/Nc#)6(zk[XW/J&dgKU1o'ނ&ކ E krhv 9sWpo@ʗ-.9|h(nrڠP3r;J&p] K5b(nY1c5L&YHJ7ˊZ˜8EGcXO1#)Y*=)l?P?0TNsLw&Nl2 ;]G"Kv!y0c4Iks=dۘ4or t2{lyuGo+7!}+L?/T/ ׁO1|[ dTg?٤ãwjwbȾ7*%h0oQi^ጨoދ)tꓝcW'2uԇ!+N4⒪a඘{#s+R^7~$WkB!a|[L}çl|A_[afUCV.G_{!%QO~/:J>>6"a+W6j@-"J3;M w B/ ){o7z-ϧ0Eըkpϡ|36SA'QnW#.Zŏjjc]\H=z"Ðe+yG1G.k2$ iz1* cBCﻎr#ƶ5O1RT3:4w[ufʠ!F5w& Ko6ai=ͦL!5>I 6yq#{EG׻IcJ/hn q-_)OC夔R!ꬓj{7XyH(}IY/$zbL!K:adm`C˒&,/ңB_8':q!/|"HP<}"a舞nn2pR%,O0Vl"6Eԙ4 HC? 占ͨMަ xEYW䵯/&JM!h6yN}&,:@gR-m,tov`'m)nsblk-ȝo:)埄@#{"0b,8lhvx._g~lx) U3xBqx!T"Cȅ~v9 ;r}sM,$5R6Tq%^t4BM肆cu4EWu]s`030 B+Cۋ9jsc D/+"m$>]3LdsLl[XSB˟ &.Ey_\_+rjLMl۹fz6"+]e[ Ǡ˵nW>!JFtYD;\x5Kڿul+ ҊYX?RZּD9} <;0qJ5"@Kmh G. \~^ DO>L6x9nsDZ#W8)%NeOC[$;foCBF!Lo]b'JS/5Qk;TRb˩%0~}Phx.wH|iɭαnb8RQUx(BPD\Ӕ`Wqvrel^wJy3>F<>7Zv_em/qZz觟IkK]eeOKS[`?~+(HuNj=dhIKNK},-#dXxբN#IpzҲՀk{ޫtϹ$= on}Vݢ#JhT+,OhBDCpg/ C^aͿHR3ۿ]֍Htp- 'VKi?yPі *_E0m`,LB6/z 3{?vܕeYkwTMU$v_}z ҃k9` "ʚ:^GZ nRmp[bk'QJ +5Ӊ6$ J7PLo lwI4 '_LLLj퇾 `VmH'df!]kOI[tW5\JTc/z~I;⟼Jy]͡{hRx/]i+[ uf8)J/khaX;N^/~17PO0Jĭgdaϵ%> ]ڭNvF)3+^##"S.Ksxg\ɦxK}nOs~߰bJta޴I)pCGX͊UE~ r-)njy&%VJ^mߚEڻ\b,<1?mHnzR`(;R;Xqܒ(] '5JL1܈U3^Ջkf"b7x/Bzp^gaHoQai"gzYAicR\,E*Y`쁞cNLz',}[y)zT:VHwsZCG(|Yz"~WmR(^Q+l4]S ߷^*`n[锷ےY;Ԭ&쀴G:TVH.Mwa±UO,qS8=:I[^W&HgZAz{.,yJL^EIcNY/M_3G 4S p^պ^~JC ڈ \SHBbe^ۏ&R-8[m&U&C`3<5ygD k9V}jhwK~L]_v\ɽ9:B8>ΧEovq]>$(Ȅ߰D)[LR!3 ]T ķYi`f|uE4V"j(C8bbs|۞01qS6FGsirmJ\uhŏ &I(G^@ Sh¸[CirZUB I U Z+Yrxx%nSr"})gڞΒ-|Ti7 Ky%*~,[}y28 <pѤ4™7 CwD溭e|oS%0U|!DuK! `uzV8~ +^0?-un`hSbd|454 2x^UWCbbbW; 0v]#Ჳ#%׫u2+^m̻Ҁ/r]^&!K]f,U<rch{@;mSkB$"B"TcXh8DLg4 qo8èfMq.@vm񋓩D13:g#Wy'׵1ШĉhAӵV\jrrbDuuh&t61S/͙LEG 0odi.\C·.Mٟ1%ԥRHG5^N dZ&S$reocj)7uy/:`>'c9,Іͫ&t%&p$՛bkh j)[,[ݭlbm$sP]&&7%/.UHE1?Ł< $!FݍTnqkh:PB@ඪY9Ycs~Sf4.f,hZfT&d cYR1;6Ih;=)DP@W9a׾t}ޤS?SK? dƎ~9w !:w' e@+-,JI^new0>IؖY(}'MRCҠqDTtۛxb^!FEE`_,jn`V=Kw=.(.z~|[ r|737+$֟ M53Wz 9V "^&zFKm2Xr:,iF|Z0e@y{-6z'0Q:˝,{S+-fx3|Nj(Ei-޺S6dMrwJ w` .8s A=c|e&zې$4:q% ăW.)@q$T]N7sC \X{ژKŇ {n^uULi˚ w6qVas(qeּSg&b޷u1Ow=l{ tj$"3%frչQ7sˡMJmrIkmNc |73X̟eU0WW+'"#@ 5#;{ϥ Ng;I8Sw NE/0mW׬@?t=(jxNȦ6̎Bޖq&:6{l1b`tY9z[z] >ð?&*o߿çYȌawxF}|E?*^ Ry2J\ýxFYs7UNBx&A<욛o,ZBM7~?q8򇯠<6Pyɱ e͏Wm>l^(JnHMV`ߵ|΋v@jjlU_qf`śoKfݙ"qȇ[y5+\)sKޝ {-b~PO~"hr–껰2"e/i4iv $UmYjWy9&Q.Xk1!l+i@ 04ÐT?,AַL spǪm Ε PA =yb`Yx%HКeqt/;J[A!ս0U /w֣XlzҁZvmѱUZ˗e~lNy"")owQ?dnID{Օ:\)@a]8+ S;z{Meg6I4xOs?4l Qa[Ե!OB:pJ] .r6~p1* wB.ZI+p6ݽ! Q;vW?L['$k+&)E򎡇{Ьy:yWAʇNЏ#RdVW9/ح-w]#΄zjז/S}`GC.:1`%> rH};o[MY' |V hwg[ E^G>ل[oQU$ #=8&Da_kT|b,C7oc%UQN{PNj j/VndZ-qV{p0UxI D\Fy,a'aMήoьXJjQ06+4QZH3_]l#"OgCg srD790>~%w> lrtأj]% 9buZ i$f+§ۡ9CɆ[ܑ<):IxJ^_YǓ@ #n| ;/{J>9OuaF'j4^ J$Aݲ(>OR;s1$0@PDƫ@$L믓Bo 1;z*`{)E]oDʚts=$⣧BJb"]+Ȣ(D0""#h P}vuZk$T᝔m HL@kfّBg"qG;߂'EQOu;`W{U8=e= |M[u ά e:'"IYYAX9s['S1yM;Aܮ<$PWnh*03: 4LI!Ii "^ūHVDZ% }۹j*4HPa2`46κ?J&QLHOt/Fo& ޣ="U=9?/Qޥw|ve͜yN.urJPQO4~#/J 8O3zx>~|"[fw|P%HPS%ΰrx0Cuuu0U/O;F@2j!dT?SL BN>Mm06Bxv>( AΆ!GL~? N5Eݜ&!Q5쫽g*KLF< x(EqV-D {wtKDU}N_.U%bṳH9սQp|SNW:`{iUUNl,T|M)%_]Lm[шX8{wW÷whlqi<nXX5fb]rvJM՞s^9HѣGT葌%`n{[&_掞zjW$P e~V,hF m̋,g]u@NmpdE}?t#{J*O"8E5Z{Cn@ƔS1O]Y&Qkw`97mk0DOo `[E*>WWbI nftl ޭ%P#$ruh\.+g<:{_(\DK8_$dͻWi&ԦV<MaC,IzX;|,~a7ϤU+88ےz i2lj|^{ ){P!_Ld7}Q(2ׂpJD<ϾtA>6ϾR^qr*x%6ظ;Ѕe1ۘZ DP_bzjM{C~"=%>[RF,L F)9ӆ04 Qp[r1؇;JYUn|I-p76'GX$={ i R23Qmd,z5]d2iA zbaJKN9 S9}Xte N=o@Ja[-TAkW]Y%m[b,e=zܐ*o=z)TsU(Rv=5@hNzy }O~d86( ovD([+ k&-t_Lp նyۥm/){ zp.+43vpF*7c髩Tx1nʴZ إK2Ec=>egG`j4*jcW#/e$ݖծ57s07F4n«Q]@u4F) fs0$@Z%DK@/*;H -v9*F1> #[$80I^)qfϴ}^O8uq={.~H-= 9fn5܇Bj7f[7E`]Fu4Caė dCkGfqBgڴ v^QWtRF\!b; ,; wfU1#tbիOP1-"Ͱ'>C{|]ŏ kZ[q´Ćm_Oe=pűK3rp]YEa=Pq'70A(GE5P ~삸Om$-Űz7@WT$CBSBҜ1<2O}G{M.ٗNKt f Ph]E)p’)h)' :ɲh Bf6:Ip(C)jo@wУ t~Sftͽ?Mp|o-b(_]4A/>Mff-9@Yz %Nʫ|$x|˞kpbq2CyJ>mziHsf#TNּ+m9Җ{֜aNeMiꩤG56AékK(A+%_!y=uŹqඏUB:1= gcط$AdȀ}Cŗh5Ԛ *R ӽE+i@$ZJnF X.$bfBpGk;UWdj1)B"<`1ihTȝ+m|'X QNcIq0 y,^.NBa&U VRsSF|4yvDsŸcV}4Vkit1+ j/YV*zI;nN90#i9o<[x899:#J)%&'^CW}ȫDK4U+BMgD@~%2Q &578$ӄMwoqmBv9 }1l?IG{ņO 0FqrP%L/q]$E (T#0)f2oD֢ z1d70T"vfZNyԫeisLPxu9^j N`<n-oYXVH܁T%K.QR̪`0$!C)<-q% 5e>Pz_&#Dr6ndt; 6U0kI[g~aO:k;s^ EM=Q4ԩolT`o\N-[d [WC}r>90* Fw-]jVBШ.P^_Fc~y]/beo kێTt\2Cv a8;pmJba͘~d22)t:A@PhHG ,nԭJ/**olaG#Ud?}]~(X.[6bW.=-Jq rܲ}HE3ds˫c!{JrL%j,B^p? ]#T߈|0=vpP?K`sdLપJ9 KIyOE_i[#B.cÍ$D1C g6+,+G#0P34iP\Q/8&S͂x>b(ihCb$ݵ->t&(Er Fgyhg|= "8/+` 2²17RZvQEfƵSE3ߤʸVhAGΰ W{dfwH_e'~&(⌘+ \+Ѭ@]5inDm~<~+ؽB%0ۇ}r# |w WQpk94%*r/Ss(n{Oh 25>if;<F"TJ.Ų_$`o@來ʚK @ygUCTM3Y mKϵUv?YhJ, ` tY|JN kӁoO|4hkItfz^y 3-ȔFO@6E[>eFl3Ps 5*8l@pJ=xvt3L\$U_,:.wҐ'%ZdW|8mfV¦5 Eb&nYtggQfq`QADW*Z_sr¡/ U@G )}?aW^[Yb{0`Av >kBaⶦ'1P2yiо~ubfa>-x'"͐K"NR Vh06 $0b]>,.HkWcSM0>W\0YMW?R=]l0 _ ~@{͍#;MY=|}ރƨo:j,ڝbKGYǂXЦD$u9.p4M+0S`΍9On:nɐ4J*ēy̋!U. = [8R_§t_.&)8Lo֤{!ISpr١UgI;h_HvDYߧE$BĊ8fc᪑OI:[AH a<tkbd)T(KVWbmbtl ,3Rl]0Osvs]LAP_{@ZB[aADXHK:_Da^QOx]<~"݁.]ɗ Gk<riL5 Q(+߱Aå۔_fAH`)NjB}BXDLTv[Ñ3`m4wxY:$QrFٔ/Q/t$;[FR'f,W#׿lMd؍iۚef ؏O;01#S?iSSܒ9X vv,aʓEHVԕݐ: =ՁCq۞Ǟ7D cR9Ȑd A3/ֵO@BPV&ULa@ɡ԰OP8@m].yGT4OD 5 1vǖ2wuxu&oNȐ7C'%Y3' *N"M | >6!y{ ѽ1cBaTT^Wĉpc6>=ЪKaf"S7d_$!'xCԯr(BiG^6=RĖ1 kН"#s+2abRpt@2Ap2ԐBZ_r=ҧFeq]}Mb6P0T2q5q_{-X/$Qx*JүKl5cb6MmS%l9厹c 0FK>am`t?jA^Wue\3ݽڞ^wQ>bg!d;h`z;Ve/oHu}B/٬y(YY𷼈upc4/Ajfs ˘p_x{(AT^/09ȸGwÎB ]'UU{gH_3SLvG8e#rkj:E1:!e~4k=28B~D g瘵һQw`o{ZX$0\jF6͏LM̓ Z*en צc >Ũ0ϱ $$ˎ%QRN) a @RZ/DsзkP:9Nymb|`8T*6, =7Y=%q,N1(Fv18 /hm%4@y??YVnS {:B ~Je-x4VdL%s:Z$C y!-.gw(3 ee?{rҫL>ib{n(w.qޕ9(0>Mg[ %n]t'n޳iV5&genLH\2 :%pp Y}ԢT%@EAf!,hW&6dDpo Nvb\0Eƙ\[֛dC8f 8(@'Mnu`BPL:4hOx{[DMzzayk[ ڟJ,~ zaUQeK ! '@ۡx?tMGC$,-H@l4%mꋧy2!iW(!rOs~* [%V8jF\);b8}5=Vp{xj{f9ٯn/[ |bfX⡌q}hK& =9/qU8xRb(U ƟT$P_'-)G?Y@οHPhXf8ŌBS8 CaVw#V^yCҥsyqhSj;?h_x>%F-~1ҍ봇~'1{W"</OhʵōX-kSu@NlvIV*{%Nrs9L3-?EN)dy2-sHʣ6]_hL]<#E R1` F VdV,h(4QaEw/[X`'"=RuyjY>xnqXުLͪwFQ0nM'e})!2k.UUZ ݐkIg4iNz"1E{ V$NQmeD=эX_mĻqf<ʼn3Ieya՘}]ޓV% e d\yŎ_+#rFoBLz(b#p%eYcyP D|oG 9T ENjx>>/JoxXzOyy~^\%(K?N@v=rR/.p[^½eOi `"Ǎs;eFKg*KfbU\'4 btNs,&T1×J!WvO#g!BuB.Ȓk7P@<6%`,L-9/!sS˱aGXL&Bf3P~CZx\;٢5%#K`д># (70ixuKŐ 02%=gKyGF/(;9T};73bNJ8;CLre#$QܰHcM D0D'2OMU*x|K/^ 1I{-O:$(P"Rj'}sR@$uW'{`nCс~=}X9]s:6a,2jG'֬nCW~{WSm`̂w$r;82ABl]ؗ$|+V$#Ń熈ַ*sakΎRH722R/rDTS))^!0s#4V u_ TwrmzqŚC(;K5a6z @uIl߀"z}> 9(Gnf|ˤHL^.8irqY( %rei1I͸9 &VD?Gd3̴ x\ @i+B_*r.X {b\kǑUwvڲN5sg;]S!k`2zS|)9;vȒt!JK sN4f && ݱ 8tI햱Z^v }HɫrQ?ږ, D6WnfYPoʣN6Q7ǘ _EYX7 C>kyX_tK {ZKdcGG'2aO?-z&|@Bc.]-qj_3YuP-o.O^EcUإ?t ̛gO,OQ旮,J[X5J[= 86Db CjVVQrq"h J$O[W2 NM'z{ w,dQ܃$}-A8OXόnk4/3((ί.;:0u9;o;  AvgJꑅE@(Ho41 ku]럅w6S"֧^"L; Ѝ#4ps8RԖtAË;:A@g)P3]M[ᾼP[.B3uts.{f.ba? G7P`:*VϹz<* T>DlkUCbIn?&XikomPGi Eϊ,d82X(ўۙ<(㕵0k$<]2yo' &gq~7r:r]P)io'^\ޗC̹zu֟P;v&ag3o7*u\&"u"T⯮ q;<.H;5M4=8݂!HӨ;PM{`A'M_ƨ?᠟/ZR ^3mCxAi pWVup V8+SM_Y܎{]0d%󭳎_t Х/|=I5Љy(8i| VaMĸ 4s`$G)T$e^S3'{ߒ\Sqv-1&.f\Lb1]Hg=;{T/ԩaq[ ^0F)Vi&d/I /E~b#8s(yIci ;iBU:D -@2@S;;|i>kF96z?M(g5hsʽ3{ӢkVn#ewQ@ޖkdE1G=|&#Wߐ ́xaJ.]íYib *$Ru-rP@Ɩre^N9&coWtU{YT99*%Z^\y"G=7iPMϝ`Ĩ٣{R=s@J_9Mᅜ@73\ǝ'GGnOeIX(ĵ/36a*,O S#NGo_/r!W<q'd(:E*[ :asaeP;5#q&p4j7,.5S#v7k=*lzFه0u~58 [vE?.7<柚j%%a(]`ɓ}(ty7H==PS˫v)fv$SRy7_K36*`ϙ"17}O?G5ۄw- _I`gІh<>6ɀrr$H޷ug6#"%V7t̥Q+Y Q:">35iGFPes#h8u2=^NTaaϽ ,ZSsF\4k,TK8̒RS6C#I+zV8T@˕s‚(7ivB PfUS{xm܀pQO8KЭEg?_QfR&FX.<_{M)? ?hڗz~i/Xb:|K@]Hc9(vW)dt7aBf w&!H*w®#K߃ ;ݟޒ" |{y^3;-r G6 L%@7_+]Ҋak,p3&QK3#~['vcO`|T)I lUA]0KU>ЀM.y ZQz9ւ+NRHDŽ3&P(a)5)c=F 9Hsl 櫺Ƚ^X'A{\'p"R8|7):2ٸG^Jt zijMǮ ||,rxɎty6zUJ^҉+:s՛u\6ry,r~] XU&5hۑJri`JˡIDߥKҤÞ:*6ƁTנ"}wf_R&9.=H4L;f8j6&#'& AsbX:(= =po {hGqޝ#DӐ3P:3Pꖫ|v'|t&Y+uVqb. 4ND>ְK3Au'j11+ɅxO-igNF/$m<|3켽B!CJGBR3;=Vc|8'k3sk'Z,dEȠcFQ;B\/dJ :Euܶ#w9ZvYm-1Qch[(\ GL>RZ H0 j~:/We* 6hi w(&oI݆W%HM.x60=ᗿId7 sRR OL^EIM@x27_hkӌp6!.?20C9?W$5>f43ᬄ[=R'@hao_̗耫Įaàjֈ^i"&ߓCH$8=8F/0\H)8J`xa[t.gr@o,d%O229>0φVia \`]9h\GyscZue31bH[y<&b)?PcѕI2:?myȥkC5>*^U8z;ߕ3X^5'`8h;CxIP^tw1O,#i74-fR=Zy &U0 >E~p7Xgo: =:GٝtVk‘ݽ':PaG\Mi1z9'w$aɍ (3%=e{:*HX-3u[!uo681eYܥW/E5A}!8+f}&Kҗr@{lnn1d mAa\\ׄ&'>^> +'}Af,Qpw7C@m6:ànFX_ImTڟJP\߂vNBHYlц4AWLu'/|o߁0 .f@BTͨ*3l&`z(+d2Ȑtj=f >qI;}ҦpxO$:Lj[zk.X?TR7/YEѭ=äot t Srj 1b--C=J9f~*1_Mryn=tYMTikY]^0b{,'D=$kpLěliZ 'K HiÂj5kv67ǛH7^owk25 S'ÉZgwt6VR0ɯnle^8庈2X)!gضng0Gl$>9:Ku_̑/~vYSi8Beu8v,ȴZ?fF;<֦kv_;uNX[!e䄪#l_1*VϤsIoA>8PoĥQG!^,j%z>r%FsX&߂7XvṙÃMzkMv8Rcy(:pnTSv :1e(k&ƤN}k,*c@zLLDuʨ=ĪGF;[ vOft .M "yJ(e01#?㐡~/G45ZaAɞF\w{P/;s\#Fꊌ"J#uZYn R7ϕ5k&tZqxso5ƽb2Yj4\5 ϳj2SME= %T˥;1ɑo ;}p  Ps)q7؉"Y!ѽ?qۖf}0rW*@a (pVYȵ, R2q4x7t.Q'"E˻~CDwS-+r"o;zJʷoQP:,N}AG/y@lZB WKbo䩆!˟?}{<GrpqQo ~ƭvj~8#J%/rS_qU|D~[IKœsp ~Ђ>AۃSĉ6#[{gވzS] j 8LBvq<k :OG Cw :5 7̌=B]`PDUsMjXST0/?Ǐ-22u`ۡ!4EHMA];y.4H}Ēe-- )5xJO@ xH'c}V* Bv7On@&h{^mgd~G:wĨR&^S 5(Xe2ʭНTto1`Y~n[mk}~_ aθe))NcTr&Ly ؅wU K>%t.!i `_)9zo1HHxȁS(G"Z75cwH}K2Mwpd%Jpɕj ##n)I:gmLcE86~ՂTҲ$uէ?'XlӐ_0QhCLi([ebI *F u+E1M $#.lşgJk6KGE"Vjìzc8f15L]%ƑPhp5|DD~g{LKK2IH)]yc5?8.k/"I8Ԥߎ&ϓ$$]=1 H;*[K@I I0eW?m+}UT\,}v~ft0uH[ "?ۊQbl1uMѫ _7kV)^ Vo q}}p~%w o(HCNBG{~jE9(u?ED?oȐz S\psNDf#@8;и*~6-9kyo176%WNU,|<ޛ@/?S)1ChŒ-zH(Ms/Fbj%6l8\ M%X##k 1z~&LcMR!Uh9FRdmٶWKcD^5(usʠk[#w kc/{.R 7 a.N"woEBZJ2UwGiu,9pVOᢂqˌusns3 N_%Xckh -M;P73NZ6wu=P/k,8HٚWeHftnξ1/Wb5b@*hdr{|懝kkd.A~T2P(bu!D6^>؊`b-ʃn O2ONNi&x5Ѹ>MIn֋Өخߛc֯ߛMf liOYNz8l_xjȾh d|3:q8fljldq4%;I_U0"i?L~ @ƢlmԱrI~慼QBP=Cbug c$no֩w~O QAۥB8S4g*/RU]f&dnBNš@bs5Pueߒh#3lLy| Zf.ND<A?ς3f^E_>,>X'+_$Ғ|x~³4MZbap3X:MwPB]Ụ=s8Oh%*5h3B@hM("EI%cQ7 ce T%y Y*gPDkIeA n I`\k-TARD`ǘ<@X"TQs("!Џ G,%lKLeE JKIztJf@x9|#Ȋ'|X dUS.ЉLc GI)n\# WDBWUH[*v{@=[sD{ϬI |5υ@, n]12VvړT%l\J 4*X-|I;篦bʶ8;gm2^5?G1yF]AK̳H^H%| 9$Ðe.%) _i|/*r:õ ^:0pZ)' yFWw<庙щI5W:~Z%e+sJ!\ *?i8Ykĥ1ij`\nTEF;Kq. ڜgRK}OCBz3@Ljc%MOKY6Ra b!$yʟ1g9"s{.Cvq)4X>{g{ZO-p%Bb6=DWфIcC^Nĵn@")UԨ}VD;A ajMOW"O}z.m,j1(a1{ *J IZW HqP[}┆z4DO]?eRK Eȗ`0'mߌ32VH`f ?򺠤 d%XW]aZai8:S,&f=>|W6/Y3V>45Y@+CDXEgqCK]IY]ArRމٺtkD5>fACn-J(|UCb[`޺y$%5c1QE.Tt9ߥz)qIz*vb1tu k.n&AI?7AYUE+M!8bZzeB!L2fx-NYiT|D+a1O>#ĦP1)`s;E&7Ye4`0[ }2/Ws)GBs~{-E%.+ `=2{BK,dy}p\k: d6C1xCj0闸B𱐝5l)x01~3Sm:n%UQD, Z NR{f_.4yKTt@%*_>{.ߓApS+ yHp| zm<)a*ڈc{m߭ʯo,xj?'N,ߧȁMvÈXhZbxXdϋgHyR6B'+;+*AtS]qQ<-t)di('˯ dva;ԾikV|T `$!*v8 nŹ9>~(Ű\W W.?DVܟSƌG?U-vص1TAivMZA<ެ>pj84@z:GV+ Á$k9( 9o$O N"웉RLc3t@7j:BZz&Â00Tէ <:zO% `͐C)aQOH"|9L فK-of(qɃ+|ŇrV0de1YGXMm+}Jr8N.[>X5p k\=oݐ/:F¡(ԧ.츼t1:UD3G`"#S2@lX8{C'˱_*_=&}m$,3  V/E\Ѵf0T0FNL+4n-x2u?R6RWz? "R-FzՍN)sI^#=mp` сF+"#mh#fl^k|= 1Z6"WGB6‚7bm+yzr{>l z"g|J'x%ڹWCOWTk\{ 별efּ:pUӎI67y*ϲݗ0UEǪiaKqjtBY~HsOh(+´'q|mr"boE=Gv^.&)o0hNT/s앩ϨANhU Np:Q^fy:Qez$# ٘Ԥa.0j2qṼιڮ8Dp/?y 榆PV=Rza-(h"d~,:?.H]XOg $;f=}փj4HecO}vPdQh"0I-ސϨ-޹yUIߞ³*:b//TKjRqxtF$<'ީ4(4zi:D3ͨ0RCS0@^kU%gɔBW#KfA/f[lf/qEptx p5#.(WvGff]sE8jK7 + G,lڬC\pt|.iZV=m  {1GKPM,Q:W-7LߪR#p .f68n-}>1Hl,,ͅw+ ^MŢ^""gqUl 5h)5pˏj_y2*' ~\6`Rh'Goy<8#gÄ7ǵT0]^ʟ2lsfi~KkBCeh¹0z/jbًPuxH558r'5^m*7-N?:#$bdx/0rrea[Þ/]W?^~X*p؟@᫬f: iZHP2"I_߃ּ#Y*x[$$SEYy6ޖP`&mBBjYtp.=Av 2nQ=\Kڣ7֖0gXJ}tsktOpBZO?\e/X ߺdrn:JawgRV ؊][LI fΩ7bfn+ BIq΀ y:dPb`Sn]_3Mgmī_28 yZ }Bx淾l齟K vZ&sUY6t5PYGW"pPDJ1ͤf:L5@Pa/:jKpXI a}ZJuڜFiġ jLj+džd z{&&&2\[~l!XuIPBH雱-e;{mqujőj*_I?2v[ӪR1GPjLfPP4[b$ ~zl'6򺛫L[3D;h &&v"_5^Q,f;*iT;G}#6 ,;XQwmEsqEA1Q:#ү&L2apō~nRcoW[҃\TrGďscLkg`nࡃ u7pP {\ |e DAh}nuH;5KZjn(x}<,zxMa#'MtoDi~ǀP!,5BZ h?} M7T겣w j1*'v1%3sF?"Y5?yF,o%g,gD~# 'ר@7 ɹshSC b'm1Îg@Vh` ViG5d eWJ2;T恳-A_Gt<\s Jg&o*oϭ4x)<-H[Su~GܐhB0kCFOBJDȲS_}\ ׭үKj8+ee:ڈ tŐoji&3%IleHgʆXRզYY7)pRT NWtWn!WJfDBg6>F9K9W\fdԜ?Iu<0Jte&H/':?pFʵds5*N _~E6$aYk|))-0%  C޵Sݛv_D+ld j d68ߝ%'4r`rkX͚ Pg2a,<@d t>.3F٬,ϔuv<EOܟ47`յAݙ-Fku_,*Md܍5g1`zl -bJ~-X}D쌻cD?B m[#˛Jws8X`93FYuo5;,*akPv$GNN@"eAEʮM` H$KÇW!GTu-yw7_pLI^*t|59YR%+syµt:)h&,3% x;f瀜f29YN^?)#!:)/%k-z+>E<cdK=4Qz( cIEv]0+*\RUJD)vw㐣UQ]s(d!1hnR_į"7?bf=(n'BX ^b+ig3<:)*r>gy| d>_++MrZ+S-2gms-N!&RWMz?kK>I^~[9<~'/qM}I:} ŢW|(L+~mD|χY\57fn?#Ӌ'΁F=%#멿TOv-=bl-gg۟z5]NJnxQXo-&٢hݏWF"}U 9D)O*G=vD)/W:@gaq1n asE- ֆFt%@QcZb@ࡀ}cp /uIT:Y*CrbHX0t eq\Fl%@Uc̠a: )~M={:2ܱġ"ْbf3NZ0mHTmuX BNc4{s 8|S={VJ2]9Q +n:jJrsKZgt,C$"#n S(U+juɯdτ̕_'; ֠}+y(ءK1Z >d̜{d+y# ̸|2 udv`8iV 5Fj{?jjʳҢXP%~ 7n8SQscc~QJ6ߜRaGA2h[, ;Nr5D\d3.v,J{ϢD ,id%yM޿+)6AgqO@ebfV9LFRtL}p:{+2I.dt`lsX?yuIͧi g ]Iz^{np7G`0gLÐ,A GP#ĵa9|vINU$!g5F؇$#ʴ”Vu /\ԝ!ރ3RA.H}PA1͔&-l\88eUdb3wr0%,>m \ngv5+@Nw B (VBqMl*5t1(f(qc81+;a՛:ڰbPtr.=+SPEDZ?.5sImb)_Lk v1wRC*ւ i=.rԑ$E{/{kω,u7"|B+) XGY'/]񽌜F |SQڻHQ"#S0DPX4D-,?VLh;'+/__+Ab?9ڸ^T]Tۿ=w,;YRoFwOW &5@Axs]3vX%V0%_%Ը%q%L50ʙ=nq +voBBcvu8VDL9|z:CŽzM Nݝp++x{TFJqVZUuR\[֪g='vɦ>2BvPm0i@ Ysq-_xhm7BRPZ(lR2"K{YAQԓձ* x@eVӄ/vYgRy"?kmIo_dAUc+3.4b**'yS _@xأ QQ(JEbXl9W3J@]N?WX/ I6~OZS%s?E1s睠brE R:; jھ//BSAb;7dReHD䮼Z}.]ګaQ(9]^\DZɬpsk]`:i''[&, GẽàDTz| 5aa*@pL:pDҲI'mrV 'uT%lDNid]-XDΗ(dϱ8%Ӵa|RPVښBy24ieאd81 6\l<N;;Nm[ZJ(FaSG3=)R8bGI@5S\{FЊY(XH?BXq\|cru ;/-&2cmXQc-f9اA¯ iRKʥ^W LB6ӱl׵h̸RK 9zZ.|ϥw{[P@c7g'|c_z LȞ/{S؇po^,k:>nls PUhkX{O ,b!nVTQp[vτ Pq[?el˽HOA#] =cce{S䧻"g_bbB˽|sGLibCEQLE:*Fy=R,>1 ?]ȱtTs hz膛HYub<>l53rB%`I&t^44J $y FTN6 R\NP^đ||TkAktQ6Ёzz?wsmydabQ?ʟ^lz{ <& " B7[܇lpGHC6X2#]=K2#ş3-%);u{ IrϷO!_oGvl<%_!.?CT"obj|:a;&b&jNF"sЙW( ?- a>m 3+,+Bz!:h/Ra۪Mpȁ23W*T#% @~(.lQHn WpONVE@(b@|'+ `&:;}JŘv+2$. DCF 9m8[WF3~VZ&A2VM5pciP5KPp&jBZY3]&8l;R _cM7;\ 섨0LIԋQSzE1`'%t bR[;SBhQz |<*5IV~s8ga;3OS iƺzooj04>>2RO2dfTA?֐F}HS7LD~ipUe|UйEUޱŃ$I뭾EV"soj{5I.籊?iWCQ1qbs#O]|l!g5Ldz=2\)E*\gYs7׏7ceI;K hIrW`>8no!AgGg4OP«5ؠ|An&b4``jŸ2_Iܼg<{8ϔ{A_OMbEJ5íp{i8) 336'or,nQ\%FN*1Y -lT*T x5\@̰+jBAp,dp4Y{?.ReY*E ,'~dȲ}eXv&8U} 1ɂ=~leg0,Xe4" ÖApq0$}1G{zcA%k۞kXđs%@nӓ[V=}W9X}G#dꁒtzf3!o3kBNktKDA`o:`9>^ٿn㫟eӞZ QZt 2Ze7+UR424nOWJ.[$13nbY&J]y09́ehi2Cl@ !̮7@iɬ%-E:89 sÄ\ ^C<[Ru;ƅpnXFT*A-yaL[ 83El`*dYqi[rAd5%W0`P\9̑>9WsCkSC_ xgvc)R@ER \?\\:mjg{hJE.˾< I>ik<ڰ~w$2RV_¨90h0KwpV#`*Z},{9s!/TuP"RJmS$IF]/9VuLmr^qyxz'KTsub[b͎N B,=0 |NZx2l8!{d=\d?b]s2km#z|&ߗyp-HFkOG$m4мmX~s˴7CUjd mFc Xb,pFnxFOr /뭓\Y1wS#4`LbG8B*%4Vr4El(ePJt g~cZ~_Ցf>)N;/P:.S4.%70K ;za>Q*G&cŜZйmJ Q3(BOGn`(R6N-|bIQ)f̶b8 H+IҢg1ap$&Z%8WΘ4LXD%כ`;9?J4枍%ժ?_͙c|Y?1Fe#NtE'&8/iu?X<త`]q'L:ĭlQ cL"ٖg ˪q{L@kz|?N'߹sRwD(2 \1M_.I >ѧ$-&\FHaZ~5=2_?m 4R˟G\o8@pdTGq/=30bXġs}3ҁRI1\a07Iur._HP*p@PŠR*t]Dp$] u<o[X&glۗyTh5V w(cD#5tJ$v~fSiĦ|d~dOe]f%[ -&?Sx(j'樱h8QjAr1kotKD:4j3oP:s>EmڵjkrR,nyC=ǁ9ӧ{^aq#1mf yn9P/E o>V%x'dOU#f;A,vt"YԎ)ex0(Hs'0@~0.tNຬގ.u6\&z|pI<V5YBK^?,=-:! w%\QσT%RhZ!1F̱S^C|"Քtg86 +qbtJ{MȻm1LE]J9 {3ɹTiG(#,\"Ur*?koP}Q̮ڱo- jfpT kܼ`}s0dj54P@ϖmpIpQ\#%@a3!jOփw=< |swFuL'L -xk'Cp!o 5Cp$W4Jl/_Rs+ 4[БCm8W -G 9x *zujPwyR%]p14`uX1MRURƯ@ɸ{Y׉mB-?F= ?; :*+hId?˚K#AgP_'_dO<3TUTrơ:40 ݇!J;̠w썾 JAucF;=:KlEtܰҌĴè&Ra%d8֭UOb`ٝ"J܇4IÞy%/9'x?*RǔV\W!eiNiݠ}~D%3 dLLEl@{"z@?s;ԗړ1mV)t0y#UifikDY:Aul3#?@et$D7Kk-:gWez6XVp0~Ƒ`g0 $U8 `ߊ4)a %@|ՙe~\NQAQљ=ke)ᲈikh?vB+J_Bw߈ɥ8}ba ,C!K*a\Qas53C>jΒI҇qzk׷4#%6N6gox1,=2?S-`}H5衕 ( s 4֓( @(WtSJRab"=@/C'IcƲ"<.:,AY_AC=y@Lۤh?f4wFD1oxQ u>䤲b7L26b1MIWUl>cI3SO>ϪOALTUlԸŕ^Fԋ<xmGǴa`}Y ( ^ S䲯;yNN4åjlsiHQ B~,":wx-;L)mP22Oo,msɺibw_7f_X$ dG3O6 ;KA@7誦I\j1N/ZKc98{KJ<K0Mayq$&ܵnI;$B-mފfL`R5Td$uQ[$Ig-1 %%dY*SH:-sj-}޻r->yc©%AJvM^LF3ī 1F6{P޾wYq٪pOH"{in5q]K,V_콮i!@GSH DUNS^sT8Qmm940fYQltvZF䕣jyr}ˮf9> C{v4N${4zȶI=y:KY49pYJ]3E͓a~?Z8} a"ڝƔ|p2,DQAb}L'!`.2PcHd_ 7_'M 2{XnOQ&1dc,֒|V9fvS/ɶ8q#3EDl-\L,gD6W'ѨVp26Qv[pNBDZGOޜ`ep؜/ $&R'w`w0P #V;s]jF;_#]+IyCSB(؄kd \#azdf_%ox ķYLtRD+qrjTh4u<7q]-6g>Fnc/ e /cM̩w{V@viڛcʉ)H 3[}b, I"?>uv#xU.D*[ 2%Z>ND>H>reh!EUHPPʬT!U!Zn'iSop+3v)*x(:_KH%R+0Pųv!ޣg~JA:׍| vMbRq0ü@ I U.9N0fJcH"&zOL =|%RDL[w=#Ttj4^6x ^ͱ&?DFe4CTmт$)D5PH.U^FsǨM³^rbz}u̒n sy/t@20}RTݪW|e]]#H Yp}GrUXf^TUi[c0v\'3/`piِ '+ޮ bw%;~.\[FrT4C>vI$6A?Yu,6;e^pæs:@((;-'/ d|F":}@}Ծv?m?8Zk7zصTqcaGLOBEXV<䨠'NDTϼ~r ]q3`cSUz uq)o>QUV8^EE=qGHvȺVM5 DvP>AhacǏ?wi= @ oVC] Gݮ(ە@iKFL[1~zمGIO)R0p8Kg n9`a/:H Vr ֘nl%zY+GѿN[mvn%eLfxUP wEGskxT~/P}e,1 )!!kd{i]pv++ʐE +%뇿{{ah9 3źi"[KL}^u>>o TєWIIU3mS:D,[4Xܷk.'9:l _ _lv#Al5 A d蠬{`x!; !]}R!yTX螈\S$.֫ ,`e%+ ~9'iЖhɂx*R-fR}o3y4JŘl;Cޞ M7hɛ/M$R7 %b̾uF]9L,,O(bJmh AoӼߴ jri`C⾲Wu&lqead+% ~Iϗ`avi,j& mߨ Ҥ>Vn6)$ BͦsӎϜn묣X)Q JRϐԓ NMSA-DN wI׉>Bɳ>0yä&2o;WwCts+Zc:K@wG ;7=7aU^BKW'pCMI $EGBO#" qLEji7/o5YUOhAE>Aws4-#Hׁʿ6/-ps`AY6?,ڞő>@F_5inSFZ%Iف$ ,n,txn@8kƊxMhS]V&-pK6`OMa\0[~k`M > C sW_i 9y*-)0`dh|:iiclۄ3{h]fL ya$ckFYlj}~QWO61[M:FaM%8Ⴥk𚬠Uo [nr5lOG?BRR1Z ^NW &v;ۍ/u41O) e8[E ,&Niwv.$v!} GlyY1Ni6:03<) -lbC#mshuKEB?a"Fӛ6%C`>\5_OFe0~?ŕƗTP#>4'[編DߔJh@w/}LwX#soQqzLop!ϒh=x܅NJW o29Z~=c Bmik2*lZ9#|V2 nMb؍Of'(br"Y$A 4- AYY]s<ި.sm*Go=Xg2TKo{FJm J(PPO[s裛 iYHtԟ41p=O! @ #MOgXGAIRp|6ƅ ΝAdaeC\p|wOlXCJr (~!R@ W=$=PGr/UӘ"DIت$wN-նhҔdG'34f'ȵh3Ҽ@FuUj1ovxyKO*CwwG_rz jmz X$}nlxd{];ۧ?1Ȩemx| "`|Мn[b}Σ9C_/MhP1k4%k !}ׄ=xS BPZp?Loc 许PܹeN%ov%qF%m_5Q8aZ8`Ar%cR4:aռzuBܮ8DEcf&MrmrA~LhPyt=ŧa8A?P6(< )`T??F 8&] XoSR0 4׋ѝe+4\GyShpxFK2)m{DpAGMDZ+͉MJ.W :M$>=5(Tn7fZ^+"Sl-5|O3 Ps:uq\Uև32? ٟ3>CN !ct]v|VT@WޙC׮~f]u\Sexxr{ްׇP|mB'UѹY0;yRf"h<#i3OU# d"IfU *B-GˉR68>I| PVMP*I0ךkcg}U|xM&I #W8@0@sshZ+@ wŧS5()A}wd{%ހ[yaO&&4+{;giCSU_x2d M8~$4A:?BߨKPlRR5o~FѲ>B ^&9(1ׂ1DBkKnJNjyrkĔu?|3}ƥ)TRX %U- JB4 פˢ Wٷ}xOКv$j+ʟ~9҆ iR4+b[ˉ̥\шt#85bၖ /ǫȝa@%ci82<̥p~wC5E~cW*H7bz؏ .0*rkHhh&&~TgTœz:[_v\u%}gpd/G鸳6Scf{OH髜?¼}[.HZ8ϣNE-vjtZo'4~ LlPjѸ蜖hAJF0(H,ŗlOR^b[44Lf[sGs~'P~ ` &VP|Z@4v=kD+I+x0r͝]C߹d^0HҔ"Xќnn ڿ8 Žоcm cj!zڐRTPTwǨY6Ѱ+ݾBh4k;X"MS+O{І"1j)㌥RiAPTea5={5p1X$^tb5dhGhpJЭ. Lq}IdV.M[WX_KyrD(2FǰG 6k^'5~HI{R-MFVAma#I{&=My)6`m "<)gv9)̖/KSj.vVX߫- mNRbn[!M~WD'.ml5 x/72 4뉯W3Z)@,#f V#rz'"q`n0e .5Unjmvu>^CR oȰ@4I0ot0O9@bݥǮ^< 9 |lşZ;Msq' n0vOA6IiԫЪWF:=}EzlM쥋7K2mC7W(uDLh!g$Qc'ƳK6W!c0d^n]B vrGpiۤGbcrAi[m(\Lc*k#5#>Vmʅ(~gPb`"gwaZ5]\-!h4#sw#\2-*+Y8Kݾ|R䟳^j7}2Y)oA/ tPXԷyiNBb^ VҕzImҼ#R;\6e^z[F FZnRa0J8XerP_kZ+Ur$CT7z>|Ӻ/P'-RwF)'=:,)N%+ %gmGG@?$S^44H-#hui<{`l!=@N}$EA5yVX VrjEW;/i\ikH 24Ɓn_ c&}R& !MQx!΁9@OlVSPKt= $Jŭ:c%cN>kix V8fO%Xы*IQs.1[wIqP37v1R7ϫ+d3 *%6RX/k7:G8{)Y3A'ַDԘm( G_u(cxDGW Z; ՚r:_xlTTU?_Qp܄Z=-X'ʴ"UviVgϛ|647Lnm7[-WݥA5㷴Aߙ&+n)vcpvOK9盜3%'NDC*>UOZ|g|F{cut( 4Dvo%rdM^m[侹Ν r&l/B$k/+q6"Ch4>QYD`Xggv$f}{R24çǑ @IYZ#>&7^Sb[g]Xu+P?+'N"BEsbY}T2\Qb :EOň W']%˴v/-_c'8fsBsVOuVoF`z^*}=#zj>`q+ O1ѓU||K#ӹyi . 8SsA8#ۅEA)+yCR U `@ҬS2^Z m`aJ%i APoK" n fqó&r_bT QFM^|4WCpBǰ9LFwfycìڊ➙1f%N^.T?QD[C ,ݜDѱw.6" i1 NJB3X8˪̊ਮ}$ҁYȖ4h9g1uv 'k|scI҅U͚diMAbٛ北1qѻUk4Y 8nmTK"E~L%t~,W8*/r&}+upb?:L~0mu)-],fFq)b!Zu᎖悝U%m#})0aՠV ]"K+lkyT{*y2d.4!0QJDW@Y|-wzK 6gX-m;rQ_c,ѻ 6CIqDtRbOm۶=X:~{T@MN;X )ࣥ&,ANmEA()f9s{e7"3`*X:ꎀ =X<(/b*'s t6k"f2UCφYy.ޫWICp1WXeN<2/ +MaiP¨r!y3Ө) xը3FĊYԶ =4/ (LG"#,Mg>P+1I0ZEC hJQ}Nq%|_Kw,yM B%S×q_(L~cwIBB[=B⪵Iab(Tk\l]2LkEMSοMفDVס+3wA{#pF GYf[ra.2|5CV6i6iH' DCl`Z*VF{9J\H3Nx0G8z\IDtX_m~:ɶ Óe>=WGbHφB.E3qn#ԛ]lRYIq+83i9ʚ~X$_ܚǷATQDpm5$D$ tW& U O }@֨Vb5i#e.>?4H{Pm<=U'. $.<'>Ɂ t/>ȿLj>|!1Wy z <s^* p EGʸjx܅DLPB(B[" Ds ԱY*@tqb^{Ԧy2Fm3a^0+x T =d]ASI#L&4/#t :QT><#c5*Fh!ns-"H؅@kAΘV!VV3Tt%a(} 0pmhA:p;Kcመ&,<͘Rm$t*uVï[M}ڈyCFp4>ڰ枈r/"K+y XJUb& 6@(u4nwrRYf/ o(;eR< g|cNU{BsN>)~ҟ0”:ܑì 99.+:s0r T=6:||(E%JVc>_ ")" a6W/yn6&T9?ky$UPn Be' W\'Ft2@5WܮbUvTþK4e&*Xioެd@C{PkJΦPӝS7z~ʏj(4f7-W9+hb;:ck$"@MAyт# 8Ke_V鼄&^9}DX)iOؠRi\d wiۼ0!HRh|Hqog99p{7Ct1"] Cug;%oL/ ۠*< ϭߺyI!Cĭ_HR|y"*p5j1Ulz0X.60fk8UX^-H# ;.7Ƣ~6s%T 6 a nyAgHMƼPuѦӳ~2 U]CR9QkO)mwĺ@X-a-yztnȦϧ/pRcKOI!nqCUyWb.,oG7*lel c)C܊c:=kF#p` p)"~/4zr^oen HSR)<и95=Hp)6( fP2n`V9PYǻsCj(&=Xk3;}1[V}"E(3e+A.RђTt#pD%הsK6u=D# ́ӒE 1c !'QhM R&t=:w +d.fy46 ynZ 2)~AW}rT^o:SE WCʾf$F~xJڗ$%~f9ν=~܄告;!lP? aXNZzTs]4b}m J+!(&a UK]zk?7+ (2\!&5E]#҈* 2Ү%.|DV%I5:wM!&3?Pyo=uaӀ1k\:Տlf} f *5cLJVs5b'$ӲkQDCq:qb}/hKˀ.fK}*O'kz 71ϩeh^w{ԛR@q}aV& {cyu`o65\'BO-2uC2_A'e,qaTiumjJGg̍Kڳө85YʪѼe%Flp4TtoFQ5EdU &L* 4L SyJ;X6^S/P\˪7ƨ,h;y9~ [a.Z,`U΅.F|:Qlf }kޠ?L8K )RTc8 cՓ ^`!cq!\W. ⨳a{Ji1pB\A}x̥xFPiINӯAyKDr;&yke3kͱRyaqڨ^hm-s_&n@%RR#^ Ϋt4 `Kf H*kǟe^$ #]UH FxK +yT /F k1> 󒇷"C$ͻ0f%L]BDlCJ]RyI3Lwe ۔ Rǭi#ϻ- b2% IeHϣ-Ru8?*g6j -Ӫ{M05p FSiO%ě4p{y=&&.|f$7ɆR9$ˆŽ r(mdlӰIRs)d& Nl%dTnXC@J`$OC!RoD6jcVVDK2)'_r {=Dž"%zfSZuBaeCl>)-$cyYptP;HX67rqǎ) qؙO}ӂjt.㒂L/* wh^žў|XϺy$#! -9-}1 !K'R]N: 8B!pp(ivZT jd;C$5ei02Th"`$Aٰmub*5kz>4Di$=xXs ⳯CoGp 9 1NoK@_3˶R ee(sQ!@ek)cPq_OX/;JNZ̍-WRv >G /R<l[z9MzX5Gt@(($I b[HAsRU$yx2aFf߇Lޞ!o#xGZi:@br!֚Q eR`#ma+VS@@ bh<ggm<( +ʋ5w&Hڪ.BSɓѷ-4/+b'] Qʫei\4cby bs;Fw CƮkK1 :{t>M' V,-^2iL \vG!p 3~b&Qu%ֶw_fAٗ9)QUM.+깋Ҩ "ITjJH>Pi+AGi~Vxd.E6QeƉra@L}h<7z_|G8C8STImAq 'ȃ)]H}a<=EBSgf (*eGveiV]_X1k7/sHB DqTVW}K>qdU=%9ehel! L kJ8! R~^aR|։uR`;﹌m:DCN+ޖGeil>r&e,ۘtN'Ssv=j|vg*9‡6i&{JoΈAMF߹}RQ[XkFU|U4,W.%3r*Jy6a]A_=s=GNt?^9Ѐ 10HfLPXD!\4 {*hjqu4;;qL,MZ Sk oT)@/XgRgYWUe8tc>n29Z6̸},gɍK,[׻JRGqr^(kvVv]@BˆӸ؆l,2VS|9ƮE$2uq 1U k.T  ݆\0 ؏7aTʭ{wQ[Ɩ-Yמ"ؿ$IX\ϊ'ײ=Nj(|0D/[K,M3)]U#r~!<(xп1bbǪa,\/pLw6 Oy{J` 6$(<нyBYZsbi6*fV^չE{u,Xes,isn%z=Kz}Lvb䄩]fsx1={ F3"l{aN)=\{!q"ʐz+'!x ^\\ RqbP3iȩ$ۆ~ 6h 4X?#6u?y#M܄ uD&N`Z?4=i{&R-%TcV(,աY))S1}YdQ5n3 ~q&$0 CNUrmlD,̗"$KE0 `{s@t/mW-)EOW?Z@ip^WVXD}kCzl/JTJu7?HF~f-G)&O|*4dʆ{`y41l⮣OSl}Au.$Ṕxfi$mەEĦ#6p0Kђp]Z旱;Y;[᪠~AЮ }C TP Z}T`T QS_7ъxf5lDʌ!mC6Z<#u%/ĨiobN}n9Zpj_BkVI$WKI+M>V7mYq\ 5s75gwꀬGj:aN돉mR73\h]?( Gز`G re07~6O?\V,XoxA%Ko&D-e S &|H rRB:I.hVo0B}瘢h/ Բ9L3upGkJ.ٯ^n1δ5b좧*TwUϵ1A٬{h"-*>5d% [?đU5Uhq%p1>lԁ2 Oё m'/̀D`4$ &y- g:^\U_%?vSۛ :ݫ<#rrH (P(HmEe8&D}EWCtt 7WG:z"g*0ہi:zGY@nM(#bwwhrɮNBR]K[5-jƽ- iE;]-4i).rg1wԕ V0SմD\fAB GS&s_*)J(-D܇Ұޯ7k9L,;WaM yAA@LbxfG:͎yM,GGcÐX9gP q $nY3i+{t-e7 %RqκsmμbpRWd6ܩ"8] ZUO~=jA7ANByE\P~"ޣ ֢мo9R.;1>N| )hl7ᾢdAHd7(;On#X+ h؆h82J"FȤ S2PޥZ阇q̵:k $tL{M[ɦ_%>tٺ`Jv/J+Gd>B%{]_ ~jn/EOB!$;Qp/ g -滸+ p2vuN'$uR̓qGFE'?^l(ߞ -H1 H%H7 rs?Hh;.2CWMJE]r?yJ@"C_m CWDUk-kh6^٬[|m1խڀ,EŪ+@r25 gNn8._hQ#JM5Z(~l +vziWf~.!W)Ȼ@,cy?l,v ݃cB*Bu0>[EVPB컝]oFr m.Y8vAiNqiyIG6ױp ḙ_ jtSE<*.rW8rKJV:] /PHM tan9I8Þ;(Cʁ309؅Hi^wP)Wli6I?>8/E΂ = 2q j$JɐqMרMu,5 čg-죰+>_|H~fJ4faݢ:_ sd>VRؗ`*lqӈ[1|{jFZ_QTF.BY '70y[L3u:Kӕi3\ PYE*!] ڧ`r\5=cv|=di އ{~hs1AEw]MdpPx|*͠^(2R}E/;.%1mCcl{C (] ]R>TXt=OPpkG4o|c?S -xfp0R$MrKA>r2nx|?\+uǎ݄}nOwp:1EuOfuxLT!nq U0s- jIP#NWKu -.|ܘ ).go.VuIqQ/<#ή\ryMSݙKo dq^y 4i wbX -]!󧽊PBċ֤eC)H$Lc#|a;%Xn9u|$mW*~z8&̛ x u* AnnÉڶiȌyV֑Fn-T͚;Ӵrj_)'znśnSX>~nP9y&߸ 15-4 |K}4,vPO~ifv5a}Q`~rO\7g6cH}ZN8>OҎVApszVlq)y_Fd48u8-1x:Ho⁂&ie襈3[B"HPȁ"e#9FtǮ;@yo*Wȏ .L0~[eҧ]^7-,*:t3wQ@ "gʸDR'%(FB*Vc_zYVI5^2a,)׷> v6gϳw{)+=$U`8 $xXY2JD*ų[rtuVhbZuWf,?c RpbuuUOWU; ' lw/'_š/@ibMߗ&3N IZMM"]Lj, Ԥ\jo{b d[aHbP}Zݘ񌸙a /8q}P{fT'BqP YX]DureQ zw&5ЗfBzUu3} =%\))n;O{?IiM]v+WHѴ 5^e^2?tQό@<Yt/2h7:50")˛BAC qK#6jigM=">WT/pe'%b7\yx:ƆSƨQqNmIfm~F Χy)-̚E{b% mޗ-= v*Bx,2@6qkARïM> cGE1כ'> ۷wc *0H^Ό7wA5pӔKul/~eL{s ~&np?y/9H\kX\TAɡ' ]S?tkgԅT&Z7UnKHt)Y hqħ5oOV69OЕ)%eA٫"j( pē\KY~vUܯƎv'36N=m{vXrpLvd`瑀oqChQ"ǕQ^pC#=eg5SO3*r|p0>E9O Y)bIHR$E}(u<~ϋ)]x{ʽ >,P_(43@&0=X{7jI^kaqn\HuyTJ-S# |VvŅWS5%S}fao̘]HFhTIYvsw4 6?̺tz6#ַPF ]6v#YI #ȃm辙~3}:KX[~Ge-7%b =/P%uҵEl\J4׃ZMtg{neGʍaX&!N cϪǙ (RK{5ZSӲ1auM0'3(p|rfdB+AQrc{לSkDZKw*ޯ qo^}e_$85 ;Lu;?.%Y8$2.Ab7lxN9[?gG,+aVmRpܗIor5"'JM:,Tw &9f #R>˔( Ԃr&~w֤cWQN?R9e##~t~@~ }J )ڋtTUq׃8̦6`k`M4= Zځs AGdY71 Q44?dˬwa?7)0]TX7}֫YhQ,b9ɊkL%6}sA9@@bγ쐽#q(b0 Ie`"ijEvͷ>O n+~9=< I7Ɓ{|I_ۈƝd2~4$KnސQn(q@)guJQSS5ȻoF7 |$aѩmǻ1#ř >l`B")ت; ?"6&8 Zqp *2K 9'a=Y!6[ͣސi)臷Έ-4.U2dki|W-`|tUvE(DGREeUx濭R@InG!4,֔wZc@cYEC66Gv P'Ss*Q bE,׿J5ʓr7We KqhǗ6 Vx __Wz՚Ek@#ِ:#7+fݸc{)fTdi9ZJ]꣛n<~m  4NJ1I~ .;쐬r۟uPy=ڮBPڋi˾=OK":}]S3~ `V1^.XsٗZ5@3)̫cIӮ}2 Z_0~Yl89zlY($^ T~-?GXooe=Q8V׍s)`JcY"Z"x0~S EJe<]Jg }ڲiVVVA\F~j.J8հ6Ѿ-S[WjÔρ)XZL)J:5[k!GV>E MwLyNPGPM z i^,=MGV D@_$]cVWT<-rͤF+YQO+%FaG=4vK`8 }eS n)X9p&2ɍkPc*Q6@iR~"FG > uol$$g{ؽ%Zڸ}  ؒsr)vjH"H!2D/@5+]q{IF~Dmӂ"IKyyf}GgM)̦ܟ5 '&Hi= fG?k$ J ,e^OUn΂{F( X @pLK̎U >3Zm"3= 79e{AyNW\a `cTfuQ-@vC2lU!mu a"؁ 臷H pY}T.Yșy9Xqx}uR;YgY.ظJO.\x>deru+} OE/I^n+'ɲbjz~ySΊj~&"ܘ520|N}*"b'=6 QeWAaEɤc"*\tuif &o!P/B5^(4:op}D.R[/+ 8 ,@Fɱf ~9Qż.7fH$%ޟGo.-B:Xzsyhgц9 BY wa*O瓪.ƯyfٗDGu}J# D'~RM w6S i ̓`=5 Io\@2 TK v EC3.h7^ݝ|g}Hxb|Ö6|xqCL:(SyJsw$ 2ߗaU] St? zŹ!CxuQ9I_]E="=܋#*8eO:31mȁa2I++XgJ-wk?9̦)$Kf"U}"'&uG[YSk83BZKW6-TfvcZJO.Dpvr.|Iڏ x%+Bga2m"+ 㹵'r3E2Xsi[Z&vwGl)c\h %jT Aƚ!Zd-$җ>?4@iy<:ڿ6M1ANT؊PnQL)!-I9f=sJ kR[]} ]}xH I,]CmC9RSz )\Hէ8̟dđޜET 0lF?I=Lp_ p'W+4C'?68mG2kr`"NGRB|Q'lIvrrNp"tKLՋgBUQŽJ?|~- d;6"M}[\^D\8ے+0]lD j= ةӑG@wZn+* Ԉ7F h$5@|l7ciMRGZwjQFb wܘ7*o= kLj*Id6fw}V;ô/P J *88aol84#GhMD=R1 !샦.hQ"AS<ȂnfcyIDV<#FOuglBc2"2rGue\EG,*"áht+ uB59.2pNI z|rW,v[R_SXRUHvÇGq ȷDX3i暓qpk䔝a~޺ܝ71 \~G~'/Pu& I3r(udP GnѤq-&^rȲh0v~k/gG6T=A縞D-Tv*W0@p cӎF{QJi+ nt5 6-\n 4Dr0;8˶AU;R"}6bY|̄ڦ0Nb%d+xj>O@[0x ıl2l- 0~[@q@}oN(Vѽare-Q'lXX3bvI"Zj6ʤ]LR| ILہTM5pgA_ 0g>tTl;n!$a-\{ēkqeg]]G[ aP CS*9>..P< c}Fld>J73~[&* 5,9_3>3ןqDsRl1ɚú3K'`;wT iZHk"1Lcsw]]Ysӎ-=͎S T۲ r(ֈ%zc,ⷉxQ3\dD=M՟ξ،K HB0g.J6 8顩 L2W6rTo+edH#٨6%}!<Q]f aC@=px)AY;`Y!m(㚗%-^&䑉s`;㋺6cF嬹|GPpamJ]{:فB?xg)Htkv%Vd{/u$DXPJ6E8#Yv?C*VP{X3f. JMg6v@?WXt%?gDuWvL( c-Ȳ,(7<\t3S%G͵ŗ0l˱d? 63䤯@5}߮M+~d5><1)Ҝs!yohNY"g ~xɹh{o2YA\2UN-L5T@]Q(k=߁u/LY7L(0n0Mr*EuaJyJ & eJTbz8&,ksd@{3bص9"0E"N֛/PgF0vad`lj-t0ߛ1~"E sݧ*m0(:M\T%2"-zm'MXfڀɨnP^88iK{`N1t=YT\HL~J,ןjB3\y-&it'UFEhj?lē b_x- ...[jk}!uq$*onX.#Ks+Y?J)NE>n2RtGk[DkHNe5=,\sٽe\^Z?ڂ0rH EE4ˤyho0PY)g2'&N7#Fv6˟ψ7Ϭ@?Ca,D#\e iM|{x4Y,;ܸݧ^apEV=e s7oxvT^im]`塟\Z0EUltKEdp3S$Q_GbXAog;/zw_vK|fk`pO8}L Rw9/ߥI(v/_*֨Uw2`e},eg!mBQ°DZEya\p@(m^ʇpU);}bW%d(G{x!O`9|Dd ePQq#/kH\Z1#uqeS`*xLM Ű~)mpTD>-@OQ3:u ^C`]o&0$5*^xs~i.b/ |MPzлz .MzH`C7!Gv Wcxl% Mm-p]6OӃ Sפ=\j7{$`c*Ms2A>N.^ʣ7κ¢BlxfD+hv[Z\6EE+*UfaMjw>ɘo}I+K2?Azsjr4|\PU|@ʳ VkJ Fpv4!7uL]ɭt%jN3ӊZvBtzs9Ƿ )MVLW1D{[J^Ү؈|OQt,+%jlS|NE0@d`>׋Ľ9+?`1@j8kQ*X-|ѕ'Qx8g/gyIC6,f)*2*Q\&h>彄m޷Ȧ͠dyQkznY>Js:t}+ $`=B[_.@B4kyrK1U{\&ߔ"Ț։ blY-9~@2g5TqJb3YP  n|. OʃA MwlЇkڤ!{!SqY+H`T#Pl!߉'0J4Sr (^sͽ-`vk!.,*=59טFYGw~) A?kRK h4aN"Ye† ^8N텭d6S4X:rnvp u:0_J)]B1$N} C 4eaMٶӘe. ^o'9y|5-C**+9{Ƹ-4O;/Ըzd=KB_u1W5RVt(ovMHdBC[J~F9[6 ;O &hyPg3_% )32yE2E+;l_}=VFb2L! JF 1Ox;44jJ`+E lKTMbɉON4rzC5vg] q}~5)"畂\w %'59?-JG)&onsy$Io\E*p.@a `g[[I}!y! Fwv\$U=!|I0y-RS^n@fOJUA5QLFA}PO!/x[V"+|堓&!,S|?#ö,РcuTG1XɢYT)ߟj] Qң;3m~cŦƵnA1F|aTΰU#.c˳ v I lh! R{ȡKCkPu q`fBemgCj*ϕaԴR2迟o~D 93Xy1ܶ{mP?X@3-ƧDχmSB&2P1d?"q 9B DHL" #{,X:q@vpy`|0֫Td7'Bdg=흢1],u-4oJNi6r1eo<{TYꗬBwv"a^Yǃ f4veUFRG[gNc,x5C|}Aq'÷ p9̡+,!xv>.+{01AeZ|\{I44N;)rfSZՕeӢNw8g:?N*/քk@ڰ[p+fn:W޵8rN`!(Od`g49. Al8{j^#aZdI]!j aQ ρy̞$ 4W_>LxD\m;ꤷinFy:KQU;+ sc2NVˇ@xV75S!2F(mlɖ5,ba`/?ñ]y[шgz_2TO(cm} _*Hj;-y̚4mi6zfxI^D d8LDξ2wUcIgC'/kEF!nlj{>hy_5 XI)&4* :mY9qݓ:n.v\'f4ҷ ˦s,ʠ -R/ќMCҲHd[Zr2dguT{+\"mWф<| w703.V/Sq#ZrkP|;R]*- o&%)>`[+*[OL7k19ߤRz)}KivJpl-<7m";CΆdww! IZG8p +X|W:#RdLp$&A ~kvVk AݖIyw#3(sx$^zWm%91m{4_;CD,WקLin,NfNHHSRJzהSV2Y&j1B< KroVtbMx ʘ`jtzx\`iw hڌhD[.wpHBSfa5_51DgTO;o}XpE\[7 W |cR@akbLs,dL?彴OB[Z _+i|uLǩwՒ;<&v]/ 4Y o@vdH< N!r|=Wګ8IcL|B\i]c]BcS̱iwDN!#K?^DE5Hd0=?x:2r2IfEPLQ( c6⫙xE(X/VDg _J#;~<ň 70Ჩ)5{GDj*1V}esH#j Lq :MHKj<˔vwpeč.ޮkϙ"ODoUJ=hE, B|@z0  göR\tZZ-+ 7Wz3U<|,7{8fd6onO`6UhcJ3HExG4 (iY U+6s͍]Abt';cmv]P\DYo c+%%j8˻3)Tpbpd(neR)ErKTy `Dc>l`*T.eyx&?ak X`І[x29Vdpdg\׈f`bL$( cZDúlgOlf>UvQZv|*1B,~L/ G N}v+ibc#t_r@&,"CMbD/cM{bü6 @K,)8 _p7 ((hUD2K/<߫)2)gX˘Ɛ.yRE5 #wLXoJA#T9Q!|KE$0D}Φ@QζV-w Ÿ&f'# +0BC|qE*56.<(U|_ iaPSh癃,)W}& C4`:^L* RFt%a U2 7R 4 +##ٓη+{!/ eQY4 տ NDu-w::Y2rc<},箻z>2< :0Q eVjqP 0y:[* Wum8sFcn7j; 7vP| :PAu9`hf@F8#饙@u wH zԦ+wtw#`i(hzj93oP\8'*^}[gPl0(F2S/λb%eD Úx tAeY4n\K|5 8#ʎs0CIj #I4Xxь=(#Ek誴,U ЛTEŠ:9,]OFc>C|8%Kiڃ:qϢ UʢD5=Xy4o'_Xt39r% sP *AZ!B,>X_nE(›~p8Hx']Y}_[ӏW-Bne,1:w @j rTP{qNNn#OyD`EP4҄S{4A$ͮ%qq~Y C(y/NME2P璉j9њTZ3m5_E)CG>HbOn..* lJ$%\d g:alvA7&F(Ю=GJ(Nar^?LM@hA0.volE+lucaн YDD,'"!B SgD~stC32 u!" 88d`2bZcSJ1 oT6\pi &Y:Bin7墰ɵvӷd!vRy+D0Q&n8VfVP^no,vGQČ TI`Yuh/ӿhnH=X2frǤP}n0tWq2W{8C z:X|Q8鯡Ȃ O g!M%QVa&)Wr Iu yutr*KG<u(-G6hI \k ̌1LĴaid`$ f~=z%OSBP&RLk h-Dr؛M_k|k[ Ϯ`mp:!=I{!2nxsZa[H3L8 AX"SHKCZ9zb'# HQҖcD Oae_Y햠EtEsyw;νB-Qy{e5Οft$n\$}m, ߡ8A>'ֈ9FL:?bfo 1]غd?iPpɋIGP+Ow[\J Ȑс<_ӂjE85:B;a{E`9-vWd);c'ކM|W"׏{$[S@P@ӁE ޓ/ҝ6NȢ% 踰Iz3pv,{L8JYZJGB 34@j盺I c&.6/gA|kQL)K;bCz:~!b^a*SC&OEh}+k2ͅ ]S?+Rj I1߇yk J=,yMFi㻺c74 ǩ7qL.7^:9|d"#;DwK$eP~.Ie KiԸ.=NSH͑Ji%`b yARH@(t~/[e\/d7{nijZ c#(.x#w ux[B[-0LŠKرw,74/4Ďh ˖\ 1Xp2SC|'3#kkrZ؜}@vG!ֶ* @ $žmrݸ_ D<ܧ1 HNcк~4n|Cvo 'VJ"A>ݩxqBBVZP'?O lhp 7YLWAeI~UN"_'A]CʎS ~A ŶBɬwS5>ZW 3UW~䛤ͩG8#5xɊJC`\2m-Zdi# ~ D:b.L7YNz`p9F(U:WӇnou$`A]Wb{VZXr;\cŰ@?m/2>퉲T2z`oT.QgHނ>p5T'Z"߶M۵ G^U=NxGh*'J`y-ԭʨ?.r@=lW R,nh<&E###{1y/KE`hsn.c1uѝ1b qICDo@StZ'psP8}S)c Fn}xO7Z/W\; /> y |4P#ФQY{lLC lp^= :N+^Mcي`|7?cvlaEr&ym=V>&w>Ê]D 8u2G։9eWTyS fP?Fw@')kKpTVmPt#|6L?4BV;WiVoj _ )WjXg!O:9IUFLu0E|ӓ1 )'\%.5^ K2ҮQŽS GC,E\U!yfX|cU) ފ`.r&i&5LZr_؛Xz: 1u6gtcr hQgVaI%5Z| ]Q3@hX0r/#մHkg Xb&SbD!56҃>3zm( E6~c]2xbRH%㳮zx澲b/-nvP „4 ͑c {''_#{ovH\RIol#wX-`؈}nb!"O,-XR 8R\¥ >#)hǁPUB>GrIRzn݌颫c(FA=8ʙ|g`%I* E1@ O3W)ϟu;iM#O M|3"O-B^8R@Yn6`8\HUw}#̥=``ڃ˭¹3"4uGYl xoXd?_:*ߵ@xqJko|f3WoO:;.8 1[pKn콼Q^:f1P⾓K4YWVCHqFQ%4JcHT;u1vh B(Z J{}_7B%DD Рueْ&!OÒ8ÄQJB˾]iV+! !Y۬0 Xī}̍$ 㨲gck7}y7\qks^m!cW ɳ {d:8;6o4xƬF YurpmSĦgOBIF1W.[Do0 9)IH,`u_d(c I|06Ϻ\-hk.ʷSAu>7bO\8yQ){pH$cݭk!A6t^ϲ1m!Yb0)YPx A˪XHDA,Ϝq*ijf@Wua*נ 䥒I 2pdTjv}(p؏f8>jWn9ݢ!p$2J͘E!N(<E}L˾ *)yR]=T݄7$}*7 ,XL.Tˎ`Q!KtK8u/3 v-]74 h`†GYݍc9KsrAa&fDh_SV_w[MbzG ?w3 q5Qa󁢻x4*b Yq4(f (#/;\h0St6ᐢxI29o`TZ@@V3+ ^ &"\@+f8ڟ1ugχv0g}HPW_lɮ'z7ӭ]VZ6ܚ<"FG@bָF{MD{^!R6-2t[rJT/tW!9c:Lt)a9Z9f+R8*yMO)BEf/cǾ LݕaJ|g~8h+cW]UiNT(9h:cHPCK@M.îZbO: J{ ȁ´._E=p5/ " Igˮ? m-v^BԘה:lBfө& 2&倶n $Sʃa0%^YXJgE8/Yu=5:\ !hvw:_dBramhފߨ a5ClF9?s`$y)N#2AB?4nY6Yl n ̑@vRHUqЙwbUS0C@&5Y );[7/>++wIq/П%qfa^Qnsj>q^wwv^ԾWa56`TC^8/{N'c.*S5p){`<'Pi U|w#POO_m+2@xJhH a]Bo ߠ|vTzA2폹]Ե:Yު;j}C7Ԩ:}>H7>j!}>}{oòMYjqW!ou +N}=l*iC7\R Fˁpoi()՟e@UQAA-{]oƞ؇.'Q&q#7qUZ`AikO%`xyIOJf}ʄ|6r$&?}|P:i %ͮ.ĵB򚣇#4"}ڂ'ɉtc&Xk(R-!U"7rH>tuJʂbp0=͆Ѩnc"]'ؔdgh W}Q=RC\.א(qp&M@kh_ADʢY @׋n;ZɘnUdؐwkRci9?Mj_TJ4F;GN-풅^doO;@ڷ-#>ŜVTak?\= 3ۈpw)M֏6$z&}JT5'bes{y "-=M/*ȧzO 3+u uA{yA|E ӷ$^c张()+q} d7֞nֿe| z $ :8t|OQ_D&863L{l߻Us8Cxt%o(EeL ܕ`~ 0žn Zȋ8")xϋk+~7ӑQ{qZ@|P 8٦-lsd<ܰ).,^k5ɡX )}9YY#74=Hol6ׅ-1#7Xc# Fv?>%(l|}?ķB@͵ JV}侫S ]T5f (Bq5 1؅#8([ ;6TUCj*z\Kf G`ϫ̅%N_F.6.b&re {syֈ;B/ bWmA'a"p ܊?Uy Ru:kDl. șNl `'FfFW ߚ(PkRKaj^-./scT4Hzqr` ѸWl;+5ONӣ oYvUҤd82O8㷌;}E=,87U> VGӀ4XЁ2LnfnXegHM&BFⅰ?E:°IB;S artka$bbLusd9lbj/4Mq&tS!`F_yr&i@obuިU㱼 ռ2cP+֔D.5^`&>%,,qUg͕ɷ>Zò}YOE}O6'n CϢPp`jCbCG5XӮ9ʟDz7]%ʤKDwZIVdq)&p<9I߀5}}e+(/OBb 9,IkT+v-,T~OّDow;VrIJν[?NFc^ >ӮЈ[Þ&w)F@m/=B~A&2۫Ų[V#03 FG(XI9$50ʽW6AoJ-Qi4Rh-)9BCfSrVAY=S7)Rс^_ ~RTLcsW_ J>Yr;Dܢ- aJRA'oxk02)2!,M*Ց뽜E9={й4p%{(qM=,CȬpb5 +Iwu4M񴌈zNA!AvWiOqNʈd Yҳs m212Sh k2\b[)BUʊkF|C`u Y-L_\|>L!8dǎ?v?Z(,%;RIRxz6< ߯9fkqW]օ:9}UaE!z80-dXVƢ Vi^AUmt:-TE#Cux~Qvwzg01JgyPCq,vxd6r7XөKmv{ދO4fQЁ<u*!\!g9=(0 fUIF < q)Gl .<gBEHFr x {&-tA|3.~ZZ:H-Fm2cv!h5NjI_l_9*|9t8|~ 4ge.MaQ,V9|čN?.CŴ=gT\XC 80!m$=ƯwїZTRo(KHf$(6;}Ka 4rxqٮ^R'd\ j2@i9Le'@ۣŝzm]Һ}Ow.Y 2BN̑GXJų\B2#Q5nq(RE43o#1/Z/;8#Ei:?J4CH>OoqV?wwGEcOOBI H\@%SG0n[ Vݜ]8I@GGLz<&{RwH> r@IL8oʿv2: 2U#nH9g1^}_m],7&/έ.z hA***Zn$I/.Ƙ؂-H~f[nੑ417_j@FOwsF]XU:N_ y*")-܋ ./>re[n6Fe.[x]blC^܆oRnHbsttY(Uܽb(Ϧm ,3נ2Gd-G۪ug ? 6'sH(!_sQ8VNG(HZޔd:d3zeJ(Y %Rx?2A=w8\lk.hmUv ڷm*ƜA j-6,!rֲE2$Ԃ*5r p$ ZĢx ™ $ƽ0]=oG^,'_B7L ̣͸O1Rz{E~<{} z(f`9~a')4m1mܮJwQ>" ,ǡ2T]=Yzx55CYR&_g;r'TVhDŽjJ4kOL5V_VhTFEAa3kWhEXJ 2|zÛ4 0巯ؑ4%Zz3R"w5 Bƫ՗Y?ÔW݄95$_vCo!?/B=YY'\O-"7à^PZ@k G< FUHw`Ȗh,EH}aKɡF^ΫI`kӐD#3z<5Ş/'aY9žHvrw7; +>t`za9͇@lߚkGd T7@#ڔ!6=dψ4OZPSSzJ|qbTv?WaPY e14p?=w :t`q5<!a7%5Ԣ9oFtYJWf1ꪭ=qҗ0HqM&䷎ vS5~*nd5Mt_l;Pcv* .wթX 翬ףp%*on[ fuM'#IefQb>@[dshX x-btFZ>ŭ0Ќnj!E1 zKUd /,i$j-]Ma?|*OYE-_έlD6Pi^[ )(Iq։x%՝3uЖఐX0}80avC\8[ׅ=Oƶoc6L,[ʺA~[0>Gnu9|x]5d=И`rGb~Dܔ}_:v\4P*xl{27J۔CN9goQ~f&^tY1Wþp̅CĮDlk%VU+--MO R*b簰RsS \v 9n@@b&qOCtYw\sFԑfh':e? :;!!6?xjNMU%l¬D԰Bxϵ$˺*4#* NVYuǹ[dYd0&o5! 6= fy}1mnhx2zǜ<m*~|FFtrI4 S{15<Ƕ(^ .J޿%E[bJ(̱^ xxبIcjyN%=u*f$;*d!LLG:L9MzrZ9Dqr2? -';l-L"F*7[>*PZc h Yn*M`Htmgz5|=D)f"꤅1" 1U>gD }g<3E+0Uфg/:S/b U`)BOØI~t*f`$yoUM*H>x7do-{ ZI]בDj=^ˊXwָ{I˨~TyЌVe~(aˠ%#?$&xP})pxl +<L]vvuU"nWL!u( N1ϕ6w /v `7Jr[;\ c9p+V<3|fr5“n<~faG/u8/oawЭG&wRm2h6`G}{ЛK+~00_U>x>{SQ KeF 3½DxwMnWRE<-wVا%ۏszAy:{ ѶPZ0k\+w$`[sKul])jj1$2d&g+rD ]I'!FO.-in?a`1yOuKS kysKi^݀?W(7 HLEIMATήdۋ)1-,c`=as$,t*"7#4аi|y8Ky1:f3T3 yR2Ǭ2 { wdQ!md$Nxt*ˈ7 gѺm5oBDGbK<^NfF4B a@ 06UoݙJŭ`Hށ)ORghzU/ ^е)י} CtlQH-^n]wp0}_`${#x{sҔC*xsF䲔2uod)v3G֤Rm]Rb%'q&UW$C$ƣn^ ?}}| Zj賤ı %%⎛}x$wθBš'g(Y]̄j nk'u_{ GeWeU`G `WFL+${f=|4̯$jj|s}E:jgͫΜڶ\ң# q—U /EQQ}GsgxQtKi!g*^9e>>t8ue 7fJhھM B0ʬ.2L?hIRo3 tY[N( n~-f57 LYK`.t>pP1x 4?Da 6dʄ)ya̗x, _Kl ?73jK * LjSNΖ="pu@]DQQMy|K͇/J3Kr7x)WŞ ̼o8le+N$}\ؗ1RqoX@;D1@LFRhTEn3{G>>ލZ Qu뉀P0r|iγϛ]17SM 5 9F]Td=vwD1ܝ 1UߚڐV-਄E!!ݻ$RRQ@y_Z| TmZ}@KI³X*=8 ۇ:WszdJS2tXK4:$_շ^N9@N ē8q :cnDQճ-TWI'y$S(O:ڛ~zWO(lP|#,~ 2Հ;E v1MlVq'.Ye φ8YSտFTfN$!䡱ƭ TR0Z*$HD !‘.Xh-m|8Tg䄶xmmYO#UA#"qXn{_M| -bVf늁z+j;&qNY]A}F]-tlkhE#ɭ٠,zt NWPna@} QiQx!TJ[EA]~#Æ7.\A!b:Ea<؃AkC5N Uz{ Y tqCSgk K` @R[S:@G#]NUl?E7̗g>]-ӴdM&$G3BD#0.]%b)=Z# %'Z 3xr%z?E$VGK,J(w#V%-(E~i6[ uX"Ƌ}7G w_1Oja6>RֺٗZ}uRngiPPhs'ض^y#Cr/5T;M1)<Lڌ|>6c̃Vzef6l=.uA2bU]j:ةU?N/0bIU@fB[6L_6&! "P^DרURi,C`32cQy:b-~$dXUݡꗇ T6k:HCi-T$0B̌Dc6\i懎`K fi-I` >ØtoY`d ֦@ ȫ_d JAoU+`ihȋx7Ê ?//^{Mf‘=HKM Oy9 5%rȇ2Y*/<[mZNyk9porG(.ƠF+~*Iݒ##`Ӑ^}a1(Cl"=Pw;BZ&i;Π5jS9n'gbG4 HrͮTG\|xW_pDA/$!Kc`&}Jxq)歡<96LU}蝫.bHl(OA])00CRƲb6 1ao.8XK̴ͥ c;!lQVeKH /\LIAm /ޒ:9Y)#FIIE.-}ʗEeѼ$mp`:;)M} g1\G9uT Ah۱צcF'q! "k ?dÐ }.GƎ*,eGIF{ٰ(+%&[e$@NEBz?5A}Wl}&3Ҡ.k缅@[h盰OJWqtOl85z% VI uMA_`#5X >gՃ'܏"Zסnp5z?s".@|2z -aym Hl9C䊻^bW iK'CĪ` }t0y4ZoZjZ2pAWfA?;Z]AI(OcNpDzC씥/#oԽT9*&k(h{/ȡõfp⢈SZPLɁ\[?-@ K+;BKa'j7(Ti2X㠟0sJ8"8MpZc/>w 8/M58zNn6Ekz,ԋƲ,FmF%~Ж>M CˏI7V)R@ Rz"W&AȺx}m{H Ð~ lby?57~]W'c[nFTAsG@==NNZkbI>{D={ U;c1L/V8~dvo0|ȱ-h)i86z^ \b#3%c8&LGlH]*%æp/hgYaNh T6'DK{(;1r6äqyN\7EUQR %cu)t5:Y'=hz 蜓VZF%ubr]Q̶fZtkJ RC8tAQuW 5j iy?BƺCH3\/pβT)Yޥ6$YwjWEe80`'ݛҵO8T 1]w몢 DcD|OC$(gZt| 7bh .Z UXq( {gK+E*D[։'r֪|No]ɤN(ZNsf)Uon!U{)=!,;\*ܖSx2H@I{1)X c]J̏|<0%HǬ*ҭzJ{ -J@'LMKӱ{af9  V8LfxuDDݨbC* VCʓ"l\#>Z3r%"ɹwiOP7o)[3E4:Q"o283(g,X>Q[A=7#w EvXf(OYe$-Îǖjͨ\4t2 <6ozAwcIfᾴPxLH>t|<:\(Ds1R3B DCyP06S-y IF.#,IUTZgٚo(T;m섘/Qt0 ;cg:ގN4X2CJ/"X M7J! A(xW,RT&[K}x|Lفj8ҸKUYg.lmZwRQ6-Yh 5 !ĄrklM0a_-ڤ1Q#4~0s˰ڣy&η#Ph^Ao5"ll:,$?a)@SW@vPG~+f`& AJ3]ۧ{7QQ7M5@ ɓBWN%c+LUVL.Ay8;z\0anL1 #,=[}(`4QC'AjW dVxL^; HyF.V6z ?knN}˚RSN1.Ntwwy֜]Us\`d,e7}?x k5wzz*!dNI־],.Y5KHN* LfZOݯ_ٳyۡ$%*w^ 5l=uO`1xvOgznF+ȃڐ )v:Q-%wv+xF!ƶL^oMB#Lwy{D1'=iHQdDwmk+yMDL[pwXVgaүMAwouzF\>ОS P nR7OIOх07Y U:̇gv {$ty2Nv[ #h0jF+P/x>9.6([y y~ +6!*J3X~XtY _{jw޾~ <M?x]p'~߆2A;wr$̓!2]iW;C@WUϾ8IOzq?/'B!VeU-UF0~S5Edʒչ `"[ߡ 0* r6yqZMcu6A&g[m"凋=_PjOѴ-s+#Fl@=B-s;i1Xo}kӓRy<)D"m{?iO߳]JL7p8W*EĪG\ßQڌ$;Ԓ ]غ%҂%x CLhU=NQW Q0|Q yCgr]t:MvY͜iNqv%jӽQYwpt:m`6KuXd׽__6H= r`AQ2 7JYjWK‡ o$?߅"#(/dސ1+%H%|9%&&\ޭmg wZW z_ k]O3FC (4A!g26ocb &oԝ\֡ @,~$mVUʟ%d$Ḳ"w(ܻS"PXi5E QB6{WVyE{ޔ4SnW;kO:)џ^pn+؟N $JBZf8MgRpWb)αhK"h<4"2f#r#/!QBL_\ѣV\+Fg s!kܣ9}✽A~ю:]zH-8^ kǰJ}(Ds)t/ ܯ]1gg|"2s*&9&Ұz&_6_J<_ n|CO4mD)J#QuSÜg~^zIRC Xnߦ>xzE|6$nGynrțv/i"D}]N ,,w ^ Y ."c&׉O ӌ_1| (k3|3g$ S+eǽЎKÞ6G.[?zĐ[Hc|5-–=9^FaZhny 0X/R~+/}oEJQSݰtHRsOӃt%f r&Sd~nmɵTuFfV`fSU\;nSAdE1*zg61T!>Vp6ã5_`,X?Pg49Xsf2R[>Wq~d}I+]EAA,9 U]a L JAFC0S_b*^ [Jc-r?I@@Jȸa}[ cYBDG+q-Ap" HѺgD=F_©nz;Wl0JqJGIy[֧G&)B,;ݿ; -!&sA?)uZRU ΢U*J{5DEvXdOa=h؃c\#@n⥈i>wB OZ|`9@R7 AZ7"U`+\&P82.#]R::u%^DTdiN|3`{8,}l6ASyĝ&W%di7j|$qžy@;ǂd/-mԪ߹\=fXrusڞlbL#e&!3jBio_rd/I{ԂXKӍ+4%7 Z4WXYtJI[(c}Ѭk,E!PuPXSk8->:>SW!%(ƨL Zyu2̨~v&%{De6wp$=7xަ*pj ҈eJDKEGSCUT6?݋TRE m=N=9A w"]N@p\2 zt*K#s9 Bbil8$Q@0 ^zPbNlx_}R!J1/e@*=tchK/yZlb\jdpgIB͢= f(W{ r)6$*"nwU\S`!mCY"MJDS i`MQ68*؄uW hI7:{,WUW"p%r5ė{=DoЮhi +nx@F CqpcwzSkzT~;A7L; UeV}}VH!,SLpQ|wK\Veɓ&ϥƽc3~=Tuztg2 Εf1w]4Pbs)`UD8!<s lsU"ܑXz.R8̤>bV |OL(~ a$u/.&5.޶ F+y>_ҿN g!x7IV`$˟~(-=t3D`S!C= iFGORB5$0oCm3gf+/0u%-N|> cQ T'{)h ōr+eNn[qpG)sh2 PkdkK=XZrz‹ ~[528o]:%hWMWMǘ&XGv#M4+|ٜu9ø+1M?AS~3ECE2)f(h: cDAnam1SS, K\y?br{3 Qj`Jb,%Ȭ]ۄ cӾ!1uC KЍZyha bVmu={Ks7`c]c]MZfZ,N=Fxj|8}kU.i s~yn+0vF MΫl-gq"'Maح~:R{-pãTj<}PݬYﱅNХCuoճG R#Z_R$k6eXӑ  _Az4/{]u-w L"t#/!Y|1cN3wUp5I;"Ƴ-c"6lGe+2iċФ qrJSJ_RsDjUrÍXk@ec[eد0/&j $:k6ϛK ,X(G6 /8==ĦaRī.)?xVleNFzc%Hi$ްRiumU4FkOEQIt@,Ke9,{(εhb mPĨͬZx-moGs招ntꟹlgV 8@z5;D^6BxnWLFoݢCmRBx`LYtu*!]KPFeπw brGɇɸS$=! *eCdsEh|Kay(O0J9 HѽK3HYjZwHEUZ2N!c[]󿖃D1W9%ob N3OBKL?'c/oeLw2^h"\evaXU1#{O{g P+mؤ#zw_ƶ|]KUȌ#|Zxjgd)+t8yd 20]==!BEYvjs\^r؉j^b/RhUÛFX>F7tjXiQs %%*XȁO~]҉jCϚ}R{ժ]%|54 BB^ JǂV\Gv|@8!q`Ÿ<ʮi\#LK:aJ/MS˼k >[|N; fuC+c; iE<)5?V^6= >g;8yluQi5AtYYB)]DHZMP0I,25td[G)2$3 r E|DS+ăj60DLuA2f$myueryX]R M}it$ B7U*48<2 !{~x{@fYGEu1:•6K:U5}3X[W?P,};T8SFam&֣f97Q^] Xz:3ҽ^.MN ܻ0쮙W#|sxt+$`IJSaZ0";EGGaiQ#WVWL'4+P)\\ ŬPg"m(Z ~? ^i +_;S uccIf1NQғߋ3ړdd>WЦ2yHS-H8wleJP|ѫ+pO`3(Q'ΗO}9H9zN8Mbz{C@@4γ!Y*L7`Dw W-;QPMP򸱂,\L8y쪭;ϯY:x8iVWT1>Loh:ے5e?0j'̦@M7-{`ZhΜu)8 wS;ǀ穥jD:p= Z*)ܞ^?'vGDn\d]].~ i 4$o49uh(9+k!NTsM9:͙þiu/z<ΡA et8^bOŌ=B5y;U)` fVd.Fm}?3?렒ΤN$_S器hQ1qG Wy6 k< oGl]*(U`B9ijy'uV$ޥ@Z0nrt4FWA{:db㶁C\;6+{WoW OׯkC?|--:a'9$חa")B!,T^YFq9lVD+Q ǷyGBYfoW0/.S`$ S5r{IJ ,xw^wߌH9Z?v*LK0^݂`M[/,k yԈY5[.8A<.QfGIB,}c'}'?ZeAGcW۶ 6aܣ.Qɯ:ݰmok콬v{'xE䉄wUo ,Z+|ws6:$6_!mXt&P3mqn|Tkk=^1pGC Ve!pS*,AǷi9Y8o묰CpbtIVyA0V0=ԨBE1΃\Y߁6A-BrO5<@bSف%&O%Jϊ5{ی}O=͈$_T[FAˢ8[f1?2'iE*\SfrAÑ#qdb*Te{{] L_4J#du#O b9ʔ0~jkPux4)W(t^WtJVH5f/vUav}F1?W "Nq&%G|p}D~ˆD2u$a†FRE:1 $e['$IZ .h,3[$Dզ4b?X3PwMzB}b,JYݎ>Ts{FЏOoҍ m5>R%E^=-HBqO9/o1^`Q!#_ *`ZJG}Z_WOT93WS]Y0\K"'CK8\xq0Ec v/N|Kz]}Gu)}UHOe1Fe-=-&rˬ q+56AH $>=xT/g.]&0OtDv(T*dm%b)i;$l}ﷻ2ꖐltUѶۼgǞXmr0v)q^w8*ez7*n$%A%kl[ҦN_,|[ b7{&Gmmq:Ub[^`yH]4$XgT=^ '!'p XS`W`Ju+HsgK4Y][LN8PbW{H[ZrgrryYΌ([OөhO)nX ظmP=-#׷9C:WBjCizDi'BzqPkdCUа"W bY4!^:IH9#h5D?t{~ӟݱC'qz^v. Z(p>J4%TpgTwQT$Qr^ax/ jz/FHt?k,gm;j%WT/'Xב =׸m\96GI @ ނkwZ'o A:iy Ru륂T40.6`ve,E8 R,>XasQi2Z@n,_98|P9 $l;'q =CV(/p*H ondFb 7 @4qRrIoзjeH @6[U4Q){U^XPU(tCw-oclPs^ޞr|`?M {+O{~8WP! >z|v;Q",OFg]}N0~诊NqZ.||UƔtȭK*u>[x@^^m/J q-Q.]2(Y84?Kih03Ser`좿^Ò*T_zQ&*rڮK%oSݞrVQXly!&T.>蘮¤D>N8bu-Px NlfFU,oi;;bHʓ?3Z·b9Mp$ B ! ,l^*]7UbC ǼQ3l2ʭF#"BP#5EiMM63uV9 :=ԲW$gN2Af6zP^c>b7z^{a $Fv>+>-J$4Ig1 jꍂD P~@S|jQ6#p}KZ ,%+ +hT](_I 7M[yx`KkiCnv%l5o-l]L0[3gxdZA郿}nC?%l8*%j-ޱy{RgW2/f=>PX ft&)惢n a'МӅ!"vqk}\y;oPѼ4L 43Ԕ+}=j-6rZ!xtXЇP)n јS!7 &˗{y S dK<Q}-=a?W}wܶ`,߷hdTdlnJ0Oଙc@G=_کK.('q=19$yAN 5P-pQڧ06\tV;;CXALj11xC3(34@1b9`]i,\guTԈ޹Ukixͺ]d'V@~G+lh>ޡO8-S0!qՈL%VcK;>V}K۫BbR(2#X " Td$bZ^X7h=I:O%`~jV[ ֩LM~u)IJMGdys^|,H\\e< h L)[-WxjEUqOiAJYVh˳OvgHy0j,y(eyjAORh(So {j񆭺^6AF-tc`pfQ. &*ɻ\5~GjN%Oa&z:'̖ڗ'gT k`b.ʸ5gaԄ4@Z<MS3Ț|ig~^$"$pNZW#.\c;q}K|Nq{q/ֲd&D&[Td#-yi{h/pzRVbWBPj<8^P<~o=<]ar%*3}&=@Cc Xt05ʆ1'KNi:OP}NQ$P%F G4jՏ%uwU~Xr^M1Ze”kyQ2oknL[fl<%bqȷ{!O;ʃ 0'jջ. \5& ymƇR [lL$Ԣ[0l+)3IbcDh# 7:im|O)AHIpHG\T*Oyr\_SWK9OC UO`-UԇGH9 BIX ]h.y"RҳbR 3T] t8%56?H<C`Odo= ŷ%.~3ÿd&-+ޓt>n#"@=fY/|V2xL3_ޮ˜} (ۼ+'prwk0hKj46nP[+>=]ktE-(/:$<3n@NHu$"V^# s j[\b M?E$@_X5CYBw۲yIͳ'QuAB/&йp4po'WL8r2>ԱzC'hP]1n>WyYY xzh:#ސ4 R(3/'V[Ν/)Yd# qKPYPc>߸ Ic{+e*L0}=:e$ ZS Sm EH|S: ;r\8#̉|Ĺ"|P阌rrЪA#O./bva%Wˆ-Do_UYQAޮ]~ AgԬ*0 _nRv gsà)):}GE#5޼vslh?K;H`}8 8$!/5a.wlCV~T}20ix͞ Y g3w0xP8GD<[;K &{:X = ) aHWWNIHN{PgG};@) o=@#"Q,7%}$\!(mU>881[ہa}W65PbI:{ >egcC-ˮkjvlj=Q " Gt:\-xxUU%C*n3XhQV ,Ȥ| 0洵eQ(͊eK@qm+ fgn2RADF!Vy AP@Gm}6COcg))M[9sh :#'LXd ̦Ie*y%C*xRJn6TB Kǔwѵ XO(xN# 6cST'(k=X^Z:~K4fŏuJFP,Vq|`KO8MOv IV#JX*Wp; ^O[p{K 靠nhcټ׺7gw=XL}NqkT9,`-)[z./5ó3`Izk9Վ>e{A؊u櫟 tqC03hk5ŝ95g&V^r0 š{14UhF‡P4̴_<{!-KBr,p,`A. 4& yg]sh`raf'֩ˢw$q\R5dDJ29$<.th؂r]膜S1(q!AH1}~;2 bs*VY*|]qDyxW+VI@]7kVu~;`u ?ڏHxYgh[86$x^^miwuKL敶q&.?BM.Fk= v:} ˥HVEy^ek'(;xE$r8O0('HO{ܠ]o4a$kꛥ}fR00ܡaE᜶!jtg(1:*C,&PG] 79YR / LgZH-4L]!Ë蜎λbբtbEχZ>_]Q$:#R{ҳt NAwMm[6<122z|pW4[9,/Faڰ$3j)T4eڶE{hl⟦ȿX֮mxoah.Y9:$].''LRˢQr>pa[FSlKi@s,U6̳B*ʴ jnR?X*@j"n5~143+y]N ڶ#u1A iyTegп$ '{%a>Z~ GDDODIV![]LIWqn#pAe^wm!qGSn֪hLAol }[Zpr,+2*9fe?7|/Z{Vը|x\ttmXDQvI<&TQ J?Ik wq gd!#nHNn$xI;m枑|R59 rUřcC$%۶Ib _4 řg EpNm C7 '6"J\wK#[BPv;I.܈j9jVKЦL%޳FtFrRܕZkOtu/< +8j.*W)Ne6TƱrO6 :];^^yKb4FA]>%gIrqKC_TI!zDϝdIhxN v~8hdh$v򏣀;0jՄ>Z{[;'i$VtM&6M.]0 Sq?53E𜱽JmHU,nlT;<nd8+@ a_o Ac/1/ZsmK FNϙ M\vlNpU_qҕ=X"R?C& ."v7q96 ɺ9)<ViщΩz]T*y$q|ZxBnoU*^W_2&aQOCS/߆N:UE~҅MVQ烗ԽRREGa@('Y-ÒKid8g\6$6Zӽ]/wy=\ۦp ֻ!4_k*LDx."ch=q-QQ$k18@1]{>͌Uf~4|^ܘ>YnavUkK Az!?\ )Q=ŋ4i({tq[WI"kM~\eY+b.sbkͺw ! #龫kw2M'B q(SWj6DZT_a4[" UY e2ءG +ʽÿ0_W"F_*GwMY]QiYtxxLZ`\4Yq/jl"%z"C4:~eϘ} NH&!Ԕ{4󄵪5$RMip3[ϓe1frOݩ3iRaHWOz7/v= ujPY5{җxRCXk]h^"+KX9T3+'u[vBoP;4)}wdKh957ҝUBs"d;s?$V7vQJ Sd`PC^sԴF\AvYDt BJ zB/B>%lly&=+uy3-UTJmYʗ]E_P2_8.5+Ylbc4=̇hύWqȾ-3d ,^!n!V 6$9^&C\\EQٚI~!aHڳ-QȳokwPڷ=8X"7LJ `MIمFTTFJC8{}{յ?MO@($V6A/cǖ3AP2 qJ&4JGV˭gQ8`L.XrS,q?a]oZwMU1˷(uHL -۶k+ _xs2MkO%jl )OU=;a:24C!K_eLoEtHR;g,UcO{Zn}w43( 15vW Wg ri]bSP{{T@}0%(-ӢjЏD࿈At ,HRH[A4sbr1vAk"ɻ~Տ5 %!Z֯Wf侣 Zi6jX|fr<[D-7cNR*OS4lu]MO1b!޳qH)v+8E~HSkgͯGFm0y1eλ_#̳Ĩ^r@R!X=?ƙ]DW`H ^i;GDLZLp'y_uuOQe"*GI{Q{nZnՒgppWQF>v`Ve f:qo*n8z;OJ c8R? >ԴՔ6 t/LGZNJ3~ajCUmrFٵ c&h#52D-Ӥ-.WКGSwZ!]Cܶ;ZlZy^aoDziۥ_f0 J&xNmFxG fmbE IfQ0Ct?Ø1Zep0XyW@+"*r ;]d @!NxQH&6fXi(Uy\զ xiVK$vLڃG堦qBVI=Jß>,Z& cUˆ伩՛ڒ&58 9=$XYTE spd^ӀzL]8ܺOü@f p^|ro7cxwf5adt߀P;.jX&3S )B}ub=hdy.' ܹu#zU_7ݩḴKJL~X+-GH 0DE7'4͛ah Pf ci|.V+䗈|{P|`"F{ Cja.FolNJd %^ GźݬVOEZ"g[9;RzB][cQy)qNs TSW~Lx.{vzIK)W=u vϧƝB魺P h0d >Eh;6GH_C;DB_`A[U:Tg D)šJ{͔th/K&SppZ ͩ8u'ύ5ܠx}U"h_9_AwALDPx_-&E`q Ǹ0\_wvPGC6-ݶmY{7nݨ's*I*<ηA%̡F&ؑ1?k_s#&gR~KZ!e3mbIUky JgArǏj.|RìARndž 2{8?&q$ VDfW-YnDW:~ǧ릺U;ҚR.~HrpOUPp;xQÞԢoqieb$BCb o'et5k#2FgOJk$ O]Oʶ*lU>1sv19]A<}#~T~35h73׍%pk!Mlp* *+BmYi mt=dʶT)E[}ƄAWW#/~'c!r4?<  HցWK@,\[OqF]3ƕ&&O29)bbEpXPJ>D}'ƣ9<NF&%;>n;gdž%fD Rm]g4y9q{V61u{r[Dvn?)U<璸rzMIWT5Y/<MI,5Ry^&(4 b,CcM]6'5sR碘iǑhu}8_ɸUK*N5*d%hhKH ̢8o QRCȌ!<>bi/JZo:Imͥ['Ù#Q0TA\U`#Fݙza/FV'ݭ^7_Ui*iK) 5sR] 䑐@?,04);r2g_7KɛU OHut6nz6XG<$K|S4e.NXv 6.F~Y H`k/=B*?/sFq퀍_p烂>VU ꐭ>sE<υ 'HUƿYU+g[Br wy ڳ0NUMwE .z w H4L+qO,`RNU0m񸾋 ^QGz}䴼V&k L|9uVBO|tvͺAb< iYX.EyMI&B/YDFw$JlLGGӨRIOWA63-jY! fTob"_0]͔WqnGu1Rr3IPd䈓7^`;u>VvXuo"G)p'#D ^c x;@h=bhݧQ.I+xDxE{BRss5MhYkoćĶ¨UaCmdNqH ԪCoy"x~m脈.;J ߼sLmJm=tÙ6uh NוVHbD>Ǫ AyXVYbW;a~,ήHTZ݆/ljOfA` wgTk/ҽqvNœmʙ,K1b=H}2P@T_o In8R$NvKK5)^ߞ*TA jLEkm{QMrIVRg <~HRˤt};C)\kd ~GYyLh ṼgTIx8649v6_Y gYM6}.Vf^tCY@ R"F8;M&j#W(Ka;mhEƩM} @rd]#9vr8DmP6ifʄ'jE^&T 貋c9^-BUy\߀?fYK6BVWI_s (&> 32kH7q>{A~ jRȢ.F?`9ү|&fHYI( tOOhrWt+}Gx쫤7y h\NhӮaCK 0 韽.XG< @jymA<+5@!ICW8muqVXr93-ԣeٰ=%2&&"7,lV\,ނqw+yr46B6tCH(K^@tlOH`] "E  :wA^ _w/ "?Ol(Ym1 jԀhqǤUlkPĿ}e2W]I u"Ձv)Wi#U{)tּЬ,e,3@>Xi5]k<1^U# QkJ$u>SeY8+X_B2֋4yMk.ú[VÙ.1ZxnHl5~m’!C{EO"^4=poN ŝ/& 8hScPMOdm?C5̗Ily)ښcSqs/'(='#-YFoS +ZT*sZ0אҝbr(KF6]^CS^x:56?97n 0HB8?ckחf ϰ+_I^ F>MSv0ְzpYuOSG ԧO)4`erYg !2 u p \3BlL::SךqPzwA)"֞m(!S0F߷by}"\X>{|͙l`MX=)`Ce \y)  Nb''(wq3OHNM#D-oI{?̠AʹR;?ɒ7clÃI@;Oӵݐ y4o*ەD@PY:%DjQkO!]Mǥq?\Eo=smӖH~]5-Aa'<O~㆓Pn=6jMg/e@\3$H$B `ᡋ,X:o3wgJm+$Rf:?ΪR)ı̽s;pxr\pπ` =Yɋ;n/$ԶZ{ܮU@NI1gҦj¢&2QED0{aTāa1q$r*Z~Df2-_N)@=uv{D`h`ҁ7`^*r5.[TO lo UeE𫬈PXl |]sM_MJ?'*ege2*Pm;0:(zQRłd eka6y;)w} @% p4D@z95#s,7E M;fAu&҆'iz@̮,W< QT0:%394!a+N ÿ}31 IEQ0};&O^zG@/.9rpӒ|Kzέ8XxX3{lrB' Z,B۷Z7Q3X;w#2洱5$MFObܘYB*'8)nWa IQH.piO*>4,mLGh:$=TZ]',U$$ DȂZC0fuCD;NHÃɯcRβ,W7)-Ѕ?l7 x )1܈ xX&ޥ.͉`N:@>M PPӨ͘>"xS;2J5ygdث⿳Lۉ5WHH#qr6 "p3@6xp gsQDX/lY uq=qH9[|//IM:%& joyk"\ǾgK- 6R.RD1 =GP0"&6l̩;D!5`]Y-T_OHn㎖0C9 WGݜA/xvU y󠒣)DwMƒRl QJdߖ(]G׿C 3u\WD')勉}Mc]HI=kf p&;p ~૮dHC^pQM4[m`:ҿcTTw=,ܘ!6@`{ uxoyK"!-ϝEr̠K*0:g (6v 37);[f{:jd^~R<Nձњ+W_" kӹۆٹ16k@R$̢dǒ!l{/3-aF[a򮐁 1 Pӯר$u"^:kůG-ǐ {e۞RVXI}kDFbbX u4Msșr2'OpC]~I_,Ѧn"I 8 x\~7mMwY'O[S(:il>e8NͣcYv2rUMԿI/:boWUv }=C(oM뽳Lj?M-I\RucG5>*Q[]xPHAdv+..df&˵d5/ !i4Y@?4sEf[MO j-U3q=L SIY9gi&Z) *ʥN@MFN2(Uu,vfx'޸ᎀ|uT4!}Vʟ{hR'8T=g&QWZDZ9}'tPg}A7/O؀"<m.3_g7{0cR?bV .V =hU *@޹,"u'{^HU7gZIccc0xD1\YGtJ>dtHУ >v?^,++9f@>uKds[<-~ZfYWIx`.sbtn/+{ &>"e zPo|`{zP,D1+D^c'T8!Yk[%fz5iˇl bU/=gQP|[ L7f-AhE/gond2%IXBdDɆ,J b-w.dRǀSjuYE -j3ʍsf!MY0$ruybq[;zQ:VXf_TѸqQUMI=(y40Af2sCyڌٜd0@&}Vm4u:!7I{=$ LP7fel'snw=7n8DaC ,K݁JZ8q\3)—VEwGQn7+c ;iXM36٭uqOjձcfHrH+tkZL'QHz!/: XAuuGj 4ukjX@ Pl°' P9az 8*FWēL.uP|2Uҳ#'Pե$Ck* ^g3{¯@uR F CMvFjK+&" 8U}8[oRB{i{6L.Ažg~@r nCRr 8R)< l@F_w!q /żxی]t+H2S4n %M1w  lXCMϢ}3N-w@՝|#ڣF*Q`? w4zf=g$=p>kE橽[ 7XRGe/f7'۝_ʇg!;r:{|$" 885K9Rkڸ)C\9"<5^:BXD`&=1z߄J):Sn;g|2o~sJu0cmѰ~mDz:1 il $?ԾJ{-OF*9oCA+iyμݟMdNpGV;5x3<Vfw#_ O3rY+#aPqViJbܿhϷ/WU^K(BHU|3P.C.z䰚7 ]00^E[9H:ig% ? GfD#n^(aOTCg7 ѳ/a|Ġsw!Hň&:7:4S-[Vf8rJ[^ N\0Ae~8C * w,ӓ@Xݟt;<5.fW>sͲZĦZV rݶ( /VE(\+ ^M'OTưDaN@vd_E_Ӻl!R# x-)>q~s芻Ƣia/B:xl6CYE&ԯ# Jm@2OK*9ڲz4Ɵ=1^e><:?U;9{4["e Se 5_K3`J,o(xNud ̦nN"v.#@?WgZd@( ʸU_h,́^QK܏+dU@vES-GR:/PxwڧXEζx݇8ŢRE6MobȾv'Yb.w3Bnh!$ E*#Z{-zrPU70r=LJKHVS*nѠX';?gk,$ZˉG~&5'@n8rSjjyȠ=IVhK;])&DxEv}dY UYz+?μz7KH%̺>TACʮ6Dåui{}6פEBNfa*Y% ؟إ?´-@'j ;!>E׋(3=rX>U\~DHXDGkhyOG.zuщ,k Ere·k1dipgQZQ× j+oV,E5 BLTuy6 4&jr#n)vq|E!7Fv՜dv-[a%ڼއ N OKʶVhԮ{=Agp&nqqnW /s 7\Uqɰ=(ύCȭ0t)@H~ k0BM3ҶP#cɁ>g q^5'ԪDd"ع"?qԐ CE*ul`OLY)n? W u޿@D'>}@ urӺ~Vpڂ:lnXΘ\68:/RwITc$Ȏen^0_cI=Rff\q>ɜ'Rfᙿ0^Ok_Uނ4X%9ϤMyuut!4=35xw53t)9S|e'4'ǣcc*okѪSG҈d{ bA; /VBf"$֏0㭢$ƓGC]S]o%#[怔 CO\ ifpfnj,dW4;4@ ӥmH\j?}V'K|Y$8`b̜X*4mlj/#aߛj6p1 ]^ p0>1qt&%eSXصW/taY ˱WcCw+8[ՆE_c'a%n/2䒊)g]uuH-U{uU-ҵ ⬡ڬR-[GLvW>jATx+!(`!m*z~m3Lg 1) H\-5ΩrvB^r(,E]yyH!c޸+J& : [l _ / ?&"(X XS7> l֧>yFLŷTn㝣J"}p^jR6Xh(} "My8~a]fedB"O-D^꯹o0;GTʧ},`?s) L0N ^+_}Mڗ;Rv=ciXexfFwAmyHڢOgbnr!DvB6ZY6jΞA}.ylؗ Bӹv|T 7<(hb~wCPwtp(iJ KRqaQht>A@Z ؃}tY+/0UP oE}%}٤l¶+{Y~*Idw;+a0hֵI`BLZK1 'M)9IZrxI,PDakx#|36/{D?U"Mo,ƄE~.ò&JDAJ\ƫ;&? O*{vEfFpkwd5%WOM0{c 1xěQ`,.!qQsD$DbsM+NʳH˂fJّWS M`uG ¡xWj7pXn, 0≮!B6o,Ds` aD&RqGp^l" u%rT1͸:K9Gc~yD!AjUH56Q:,̩v p C{퀨 A}ppl,/<Ǝ)L9}} #I ͏A]gB^!_(}|נJ<%m' Ã4M`,S0d== Ň?QTq3&ҝhV[ sH4M8+XOTDS.|[2IPDhD_u/ lfIU8'ڷ1/TCmuHlNh:PU7#_]-ґ˟E$9 lSTJ89'2^ÁLGA6~T{;RYb"E- 8} F0p2~"S1Ul}(eZ@6{.[4G#_;{u 󤇁{ZMcP=+'G ǂEFB5KfXا@v9|\8ۧ0}#גڶV}&ۘ۠iw0<]} `'S%Iu f-dJe ^"eLouwƬ!L~ ' Avm-3d_V Qy^᭗Aq) aͥĦOáQl@([gY{mB9.]0ӏ"QK *GG 2уPa%Ijg1';9֞{nnYD`8kќ ^F;5* ]=2d*I#oߩ@ dr(H!S[&n$ey?IOHnjLJt8fq|yÃp~MS K7r/ϗ \ԯƤq): _:򖏧ԃg#mDLDܠRBPJ#/{#JBq#== b :[G c P GT~nV9$HȆ Pw ~rb@F)on6ICj,f0m aR7/7aϏ=i<+=* &gI4it8 ] !J@Lo@zsvecW0%pڠzb:r7- 1alc]_7@b, C$|w}9P0 [{׵+\&D0B͎!f2@LlbHV? >ծ 򱺿R2X䏸d UGL%ġq~:BhzΆ>B *k,'ą(%-~e-$<muKp0pF V'iY0|"N\\QS>:߆ޢ uy9}jʕetK"=uuuT3|>zW_.J7&4WB 0F`V:pє%5J_@Śzi@DE{b6'g šv\2L9!J$Er1!|W"obO: g]'H¶: j$O"ÖHPsr7w:CToX?|l2ɦ:F4i|92AATQNtJ: !hHmj`ōs#?ZA+L&xxd ϻuW]v]vdp[rdY3!s (Wo ?cGmVq3 lۊ^ 8;i.CWy.k麆 ;P{ĂaQUUV6OZ#V8/W#S+r[sƑ4rX(a,vhYG5F}*.qu)6"$Z6}~/C4Mk-Qcb 5_|N+PTVPeXMm@D]8 tMy-]9(K[OOa5]6lSRr}L[* BǠ (]d( QK;$J aD\qA([cTzX)bS-qLwlEZhl>JcTT)O3 @6&k=]"ޡ" NUxGJF$(쑄-@5[ȹ- ?r/FJw8u\ɯP$.;T>%I$Cy\cBcs= xCEvXgiɺԛS| w= @ 뛎]j 7 K<[A31 M <spKfJsH({FD}2>O׀mWg= DZi4XA8 YM.,PҔ;?Jea=$m&dԿknoL-}}*q,Îez /w:ɞis^aec5xmίݰ6H1.~ɮ@D%d!" 2Us 2/Q\"iT,1 6kԲK7nQmϦ8',cDJlőOGfDyԌ#P%)zٲ3)o% L)q3Q؞ Zy^ia%ǚxLjc5׻6HNRnl#\<d^ dt"1-UԧfENai6 Iuv۔pnM۝u3.S/~;03=Za( A0r7̓)0 Qa!u@}@?jFZv=_wi2~ؓW8-NdThIRvS\_kQ~c rJ$[w:?{8wP5,AXh>d<~F0UlP7!vC%7kj!M}yN .P!Tʉ$J3JO:ngf޺#ըW. fiK.VzC$ Wն8,j &H_X聶0yW$r 7IXwU{/ oQ>r;?ڂ:ʿz?,އiZl(o娗ہs&A3~6eTēspZ Fbd)>>&*KJzml}fol%6ڨߟ;>8-yG>υu@^[4vs-J&BRAojA|xȻ|K\come$e <}vK÷~аòFUaa,AQg[YGB/!Q)m4C!/Ɛ*OT?Vd1^7>dz,nħ,>x$! [ AH .db;U0*redA)A- 'F *S]~UҘ I-RVfX}]lP=N};(^?Ć`\jѼ?cNug!, ̑ٴ cL3){i @-,Z"_H 0>yHȝW g_-)G 4^^Mد>(Et7W8BpFP!W.aNRTua򴉆uh ˪o,LߡZBI&qSF1F<8 gN eP` q9qmyLOϴ˦8oo,^ߥ ›!; |x 3$k5%FͫDz#砨D|wP,pIf0Li?#~O9 O`WCVVLRr~ˢ HzVm">kVџ=ř9nK~:maGÓ F&L3+bŵ;}1Ma!G A4%'B̅7( N=PP8 \*]s],_YtJGpD#\u`dޔLQG N;?&H ۿ.YX؈VJ쉹ɭλ!l |kx9$stQHlN, +s>*dgNˇP%,;yYq3O2K+Rv幰 )\sfED5bB+ͣbdv6 ֥J[oSx5q1]>-zac0A Eί`R] A9JA"R솱[eZF 0t/!?OI߯Q~ҎId& C#$,xG#@mk]fGw9\9A}["w`se3(.Rܿ%=gu8JE8=)+f;qr/p{=Fw fݾ*[!wUT%Ҙ0CV^ dZM#xu?ZtPpT  j"7V(jHR Q-Eڻf0jiOPp]'s $bS/1^ %{ דu{/vCLGڂ>k͹tїG*V;l)B?d#lɲdyf;Aʃ˖ fG{IGY?ǭb.oP(c0stt[IđsEZr@W2^}R,Ԗt#3hp'6|>邤kxC; gp9Q,CRیce5Vpy%P O{z]% m`Ɠ-[[ zdXDŽZT]S |}UZԋMk(Ifb t<=r,ɟ#W%ErM_I ! !#W].GSe ToBᷙw+kk"xS[ ݵj.1TXM) jeYe' V$#f2 4ţ 7ѩ:Vt ĆVb ;mɗanCiwl:hh&gBSǧK@G(fŬ׹.[8 ỳ0YNqL[)%']?aW}sOp@X{p7zz.or䴖GQHU9&D.CVCTB gO؂jޅk!?OWsz2(#J ͹7rFէ34jʡVvVZZՒ!a`vC,l!G"}ou=]27_+=4E1J CO~ @S23Xx_6qݰXH(UV͡CUuɑ2̞ҔVRvG)`]d$JsE7,B Wd/ rLA©|JD& QDWPgvSS 09$q",nn|3)/#6Ϸ<+p?WbdBJI̽wYP۶'i!OoΜq.o=J/ݢ }W֢cB H[\EjL74i4Lrf(?l3"u=z@<514ʊ(s,e2<άQFa(\CyLȘ!|wQ}vo&fJ!v'%.փguIv>SB#_%EВ9y]-_Ge_=TYu&|εR&P~*q2݇@散Z : #c0&7/ṱY!r\t76C.џg%*  N YS(kg!wdމjsRLe%rY ~RDe7kr[e}-$:/M1*qF_B=тONx1Ғ6JQ:kDZBgRВr|羳_ WcڴAYO-y5^Jk-Ԓ8 Ej&H$nM0Jtu#ͧ`9Y`dʩi AFQ-@A+f͕ؗ.i+9FB|]]TdD4mz O"Dr\  m96bd9z7Xq3tlksc^<7{` HybbMuU7?ƣ=O'rMuFr%gϡ61O~ucUwѓ&voJ)G/+Eo #kՖxGāҏMuEaUd ց@# Z;#N¿6|\ֹ#>9|xm.,,] zwRN2v5h@'ap jGB2B6p oP!({(JowyOؠ3m箩!U&.ϑmVǔ<<,)nvwB#?L HpzA_3?7j9 H )\f/Es#Lp:*AOS6M7e,$dP(f:eB@{"&7$ ]{FfKdڜ]&S\vw̯\ǭ2<212F5>|(\P3&4ĒRzX+Y3m >dt8ZAkW>O{ 65Q\EExoiSvժԮssUoZonͯZdPu[G;*,LLU7sӌ';6Z,wāHQ:z/f]%wQ_^V}LzQQ9υUMJ-}>&ah^7fZeǶqj*Tt}co-<Ρߙ}'i\K8_Ngv|2mv~n:qJ=;z?Tz7i_|_ܷ;ִz0J&:&:G^KqU=P+b⦶/ҲI+;?-=Z# 7>vؽI$]yZ-揦xuo\fgG(KhT7ɷ*w> TY|I39\?`?`eO/ lFpHu"Vr#~=W7\ODk5.'8QW.~Nk||nd8/!|:weRE`!>S3ʣ͓5sty[}RIzeؗ]n=uS ùdQ=ϼ˗EB́*.9!tMLUY`J`*K~jy/XgؕCVL4/L11 7̕ĹuN>M_״E+gȑ _F ) ?-ܱ3A~߮Dq`vf(ݸ\ 1F~V`du^ˎA~Jhffýt˺3Kg[X-O82 w( ~oҞ קiEqz?snT6-&[z>13pR촢t#pjFVi=wnKZ \DmWQf)N&o\ccܑLMJvkn]qBp&iI_uMsr? fa׍UTf Ą$iضBXHȵ&% ˈ؞088xݟRR8|ţ]yDiʢR?d41h<`6Wp +H;0 e|,H&z(Db׉WuMȄVIШ5=Ǵ iX>X:ESc 3Z!xR./^lTGŽdQ,cG]䭀L9.+qTHRz/85pjϴG֩MqUtϒ5"~(9VNTnzp滟~qNLG_ ,RɡG F]8"]Er:BJM4b^'iԩ2|xС|$(PHjYNtrItSKH+vO-@2z3 m_W܍IͿцͶqGES Rf šOa۹f HY[PEh7;.y!R@\ A_T?Rz$NBw&nQndpg !CY{&v$3.<]I$u4# CǮLH_IyTCpnJpP=xB2 ə Z⩳,0W]Z&BB6Mi\o-?v㔸>5bIR0 X.ҁ >8MM<7Du3^C.M‘]Ifdϴ_LsVE@l`<A\Y瀷>OV'O:\NtN&3]b X.,W OeokP 2UvqݿcO.TD=Y&G7×X*Yr5T^J{r -@ 0𼷍ydww̐X[02Q^xmc*Em.㾕<\s.ccna:6xns[ X@1ȩn=G|?t_|>u4}D_v v1?0rt,kx5[`#o*1͑slh4A,wcc&lc>(Wļ$cIyD a4 _ղE^I?:!f6!)-bk|2`pH<&K23L"t5l1֑v_?P!D0?*”U WU!k0#MSHʙy"]Ǫ2uɁWSo [) @]1 pf1RsE.Nt:X $j7]6O3B 5>urwj[7qq&A67zm2y-RǨ.Q6".vb_iC;+4HXAZg(\uE 3ٍfrj6Mg =3KZʸ&h-7YqZASW&)>:e}&D6V+vA+U>΂.;I5Zwև2rK\7N|&#õD18Ueeto$ԍ#@(.x scr UW6NVٔB)3W&cGU>wl|k">D|y<Φݔ $8fR 9AKӝ+߬b YG#oŚTsDڍ[C&(?\5u4LОص/ABʹ5x9U$^ 0F-yc0QQ+6R4eo^ s@Mi6z;vc|\ODKL(-u*|~ ~g%!RbK-[`t{[՚pEڶCBGR*GkWj~lJMb!b-=oem!戲| ,h7OIDq&)~n.Wp&8'۟{t)r%CKZlEK!x_5Sǥ 4w\5=s2|8'w&CcIϸJwҼI!ct\|WiU&~ H\r%u }ig৲g}Iu_5K[t{lNG$L 2 ҾAܤwAXqE]6̖ɏ˾ [vjY˜vbUY q\W;1b7-bJb<|G:P! dwȇ/?RӤ~:s+7f)XMұ\\2={U! % fMP| ~:ZP}B <] i}'EDu8:a*pM Wյ\?Q Jɔ뗻q1OBbAV0:kpC>3eΤ}O--)tsJ; #[Vz 7UXFO}@cȈg~Y'EWlc`OŁ$k26ɑ30uf^1.x6\qemiT1wԷ#{B7H+ V1h `hzRGl%'@4f ~[Y8"]TWrFYc`ҤڴI? DDO3-Y&v}O a>B`@|%\P} ꀙItYg^8x6:>Z eT7SAd2tǕ97eZď/Bq$eaXn`z4 Py&?2z+hv`M?7&20jr}Ga%h BUs uk?ˈk&@ PqH%nsxTe2INy{ >%3TJŠ-Śyy,ʌ3Z[1-Fΰ5oìola#ͭaՄVOf)dAH$*Vwϛ|=d!IV]iS@F|*xNcb_̘T%-P%mꠇ%i: Kg1=S6ɩ%t˓^K'*X4{9 >cl`ܪ+WnQ ϖ<ۑOWN $J&y[ݳ ݬd4m. ̹>&CFX:YN$6b,p7tpMCap)};جEY{$bW54ڴ|d.tY8} qZc%eIfTrd΍yBx8RXT41Ao-#z|y/4YѰ$,f5>cx50uq#ٮ~-^ Nh-#:I]J]L! oLY};1Dq,eSg5 ~kjh%G`3)W<\۬y;h*]id~nZU,aX UZxŞ>[ U{$WOU~Bl OӤ|lg| ?\c~\vN`ۄ_zL%Jc] 5Pѽ ':|QEK55:21F'&F(ԖA[.#>hɳ+loIN+9I_9)%EK;*tzlgX\IF,X~\I2KjʧWl}vZ@=;-!%jiÔj O 1Zly 7\Ux> ,Zr w7mBݒyb_Nt <\tpY4\uSy@zs`gsJiGGmӝǶ#{Gl-D_f\^ۉj>STVv3&q(NG0^5i+!0<{Rz_r|iU7X,_FS7Qz~3k@ Кca툀]+ߏDoOо+LgLd,UaDMY9:Q2Vݧ$ z/ "f̜#͔Y9sʿ/NV"h>. F*|"xE\k?swvH87QT#5GS6j90h, Xg3 BPt7Ũ8Ź~^nD"b\Q"ɪ{K^iv!Dƫpt( \EhL^i:ȩ׵DJV_P >B `5=x<\fK81^B%x9oĺf[jDI8ia7ʽ1YAE>lo)% `dpRȢv}Hl(ćԛd[΁qm ւ0F;(4\KL_V(& ;.u߸ m[v?Ibjs]۷} K$@+л̤0O{7.r?# SX#HNJ5-pqn܃m(Mǝ*mw%h['MY-<9CEN#EKKed*2Rg\ͰO}'hL覦DFc;Q%u[B1 :_kmˍ_ qo!DF(Db5ƌgf1,Yj_F^ΎorK P/85dqS-պ+-#3LFĉ=KQi7-u:&@_LR1#YК)ye#%|YN'3(2ܗS1g*}m0{=G{ 'Txu+s 3YL{¥CzT%^Z ƾTi]RU(gJ0[.'%OoeE,`*uaTWRi8CRxNLp鬚) foIH=Q)X+lB"C.Qn1[l>Q|ufG+ lf8PRVD|֊2 !rPγU.HR5H'{,͚C*{4EA3,䒎ؙ1`P%Jq.\HÏ6|oj).ê_GY倧dIXʀ#Rz:}6Q)^([wW1EV&] Ӌة4kIKN$F+ί-do10RIVtC\,i = fFrI0+t_9S2ؐ33cE~/_ɵZwPMHּ {h|%oTE2iTh9y8/jC$-z@ _¡KaLLDpzLca'eӎՐkཨE9^Av @>Mii N6vntRRrJIorA::Ɯ&KEei7눞oix^# G&U;q$+(0}*%jBVJ曽,}.DcJ})ƐweSi~D'mW&R Gm udvFl+ΏcY{Q@SUKʳjF.:V+$B&NV^&4,xЪ$~haUNI76Mڣ1[?$6bA/MtC_-һm=6;ke7x <ԫP!3ƾ%^²Bd.*"@pD[|AxuгFڬ=Y@.N5k}Jp<NS/M$Tp bmfz",;Q+)^ =GiQx4/˛xUG@h,u0YŗHkf!r,*N/wJ})o֟ F\g)K̓1xͪLAk^-'Y4qm *fK$j_|Q`^Za`9PCz 8*+rt.kLJ9K )h7XR_bRWɐv~OkA|,;^7D=>wVp"*zJ͚a$SNotH nQ-l+xvYyENd(N ~A˨DR2fH_sBd5m- B&([S!j:E1(@LRbp;q`6 &܋(^=ϭR$ E=T XP N)tST F'h)V8"塭վ댲8 7 -'x"A{!f~):2754"Ɣ%rşIO#*8J=ojjZHW}OCJ%ZHj9wwJ_pz uo_||9Jߨ9w`h[Xdd1YSjq/gA @⺍AL3`z|)!\P]tT qHF4 ~1BJy 6' ge5ƪ['|PPKn)C&]*;)ǒ8#G4з?[ND+SSɉ^ܮSΚ D|Zn4|+`oµtD&ϥ ,gǣ~UQ .HW ssuw f+=-K8{ ߌ.pi a@3գ"VΊe0Zy^ENN%0xjhC"`a22 U '(`K2"}he='J*{f g aMuoK=@tWRREZ<&Va73gfbG?2&f\HĵS]ᄂ۔jt)_ClܪmX$:g Kr6LS~qIJ~_jvcg`7W38/ܛa9uoZEy5 -:7KaI$r4ô03fqBwg%>/gϹces$\@ r6Y1u40[jR%mr?ΑVmVQ_ݭ_M~ca"KX(H2͏[IQ5-glO+g ]SQ}m{ofK.PnBrR`DX/ F\kI^ 6^M3suübUtNd3(6-JvS pCDĪ/40K4b'z< !r%ӆ bq-M&p% {N+&B4䣘fX*i,[r[yB$:M hۄmP 6}h]9!%}H>ygn3W%4HLT/TlffDwiY%[=P_&Q ozρ3}@>}zȰ_SVhܻ"M}l[yk@Nh qe،ўe{;#=3GWiͿ8-=P~p_UK lx3o50=c1EMsO>:]w>ݮ['ATeވ1?'x !B&''/YQrww-f2k'FE3e+ۥ ,`e6i&ʞK'@'VⷣW! K=LqT ߩ4.Γ67ekl|{E+"4~Mf߾HB#_ +ǀ_!ҘmzHx7E(YKB2$ͦlB?&ܹo*=rɀ-!{Ѵ$.Fj }Os8qvb f:?Grľ-sbt+ c/6~S<.=2mILg_w\vc"'l!6GΜ$S" unvb>B:p&$+s-xI][Zm)!WLOW6UYft刖-oxEYdV%wT 4Zr*S:JƊ4#kHv4cevki 1=k~aQ%e~f420V|rD,̭$!TKUe|p:@n6 uqr˾rKQҺʶR%)-yەb*ZwM M%e7#<;4Tx|1rXNO/l۴CjMQOgWUmt2L<{V֠^`4>9Vjx)]ozDvk5/qWٳ䉀oj V6I2@OO8bS4'YOw6]ѽ3hy}۽$#:(1fyMA#4{W[`xy6:I2fp ͎bW8\&%Ar1Kt6wkvN` 4}U]qϣ_=zJ`,!dW,jYX5! GmҰ{VIq=T#K8):0 ~ _ ql8u#Cfyi[p){:SF]oЭ|[R5 ^8 ZX<n)|;Fțy]}#_"TWtoLXszAM:%NVM]SŠJjrZׂd^75hKtA.+7zQ n=h}g:5B`gdJkqq¸M3.|vdAI,tD{I?X.#dA'm"&@Gx 7[ ];@Ӿ;Vmrjی9`J+$Y?ʽߗmn&u[0 ׈s<~t%~1Z%!]J[ 3tj~.o!B Ӂ]FԐS&Ň/ОQ|G4hKKfW׳C9-Mطw.EYL-K5VJ*JX#W`)ڈvZܼk)f3E9^yzcKB0rzMoh a *}4ri\bL}'k!44n z;#^k0ənrגwy%1>|0FՠV 8wl?pVB+!҅P2K{|ւܲx/\N ~:!rx. UN aCDk¿Xڿ-nSp7h\/<.3J9_@n{?2p-XETJ3+|QY j{ٻ> 12oENN!Ѥ>/{+W%HTǵՌ9[10EaE)}T5+ծ뎴;݌a1"R ~a['˅5PG\ajYǺX JQlFMa:>yݲt# V#DI綎%"` >!XDϊ8zXn$&od0ԔƊlᱍ5XȢGR|*$mCocp< @َ6Ul7r1Yi ΁\N^/M)BɝŦ5GbMؙ{H +t4˳덾2{A&%:Ccƥ.Mk;qkil䞦>p9Z-=~J~iBxe_ǂp9 g Ip$  6?(Q5[R)>s{'5r=zuP0$Zom . @K*k|TD$" zȅ)&eM|3.:9{FOi@XxxJ~oyed% iڧ Fu̱k-ud^M3S̻#LPTNkoygSF"fz i|: ((`~pC(0n@0N^NHl 2f?q+MU?A<6+m:u7CqM5\s7Dr/_,q/i2=O4bb2P$?`h)f?c&t>ZʕSElqG/Ңڬ 109`u:KY%]g{CQg.>-_,,C@=vqɟ *xucʕ(qAnV}5}lWq,9E^6i3i_w^};G$FRh_tCQCdYJ A6“&k,HHYb7̉HhILΌB]O` H{mig,.cݫhg @sBSJj^B4wߊr擩@3XgUajM'l"_\td<b{^R̟!S*P&87(ErY_tlG|fBw<(Q6%R1".JbYU-U!M%W^/N __Q;3#On s 9B#HS@_e&] epdDT6čp,Nŋ#eulOBL^r%ʔKfٲXZ!(\a[JeٌQ)iL'`10~DLOo .m4 a}ZUW8b\ [D iQ.g-0,,]ԷoU_ᆮOq*'9< uBuRllo}j ,s`?~ÐCԿ_YGɶ,^bH W[ijV]QSg\Z)#K~#̸KdqE0>ͩ{c<2fNpeQE@7ԒXjk(b Fl/,|1>;W|sxSO|v^.ln>-bOr`{17qn?So(,Y~%1DU+Sʳ.!Oc_.OP Ket1_rn V/g.f6)vseĤ 2R@tuS@ ɩ,y?dэfk65;g h xJ̽sg |VˇaJfvG$7ջ;#KTq B[Q{reJGxz2-H^*-!;D24M|*}Vs6M.= !*]b:Bӷ={A,0/GO\].BYײš}Zʙ*jf$̖0 `CɊL2HjL+ZSwC_6x9ҙ's 28],8@~i^8+^b DCL+~, ] w^wJ)%fXw'eS*޼AəC_ }ل\.u"G9d23+B`31)EC(fndo.0DuFjftsm]1ޭ 'Py~,Q 1]m/|nv#(j8( aʑ haSu|Mv^qwŲs@3a3Y'[;>;EBh\pXf58#G1%jmDxAvTuN- i}M/淼rehG״_bsws|¡%;e0~O ,ioQJٳ~HY dCycl9XH&t3V{bAq]*T1X<ń=<Iu&+®;̳apWSor!Y %d|_ǯ&s i&ExP1h b&>LV[?k- BZPd|Rp+r }Ĵp3<AbxdJEK؉h@w|iD҂`mI0d5yp,uj'})2|Qtw#DZ]uU;b*%&{e۳=c'c+3b>ĎkcMEciZOg OǮ(j&Ɠ C׋& d|_IRsHh6[+Xd:Un> 8N ߲kf#7!^zs*'jӔvʭ=ʷy2e1 qf@Dƙ{&Tؔ,\2gx`ͤ+gTϷrQ}3p"7_ة«Xzj".\F{oIY0D^x^m" O 7qh(R.F\(EZ 'Vmf,-XIʼ@FMƚ{+]R5s2=y iabJDМiC-CB#;~4Čpje}XV@^:ޥʳW3"21|˚&h@ I޼ ׮Y[Yy2nxLb%܆'x5p\19eRj)¸:`ńzY轾Ƨgp;b}K.daQЃ M7=da|8Q'$F/VkE r3qL&? iCGN?ӌ1Vf~W.%;t;߄>'x( ,cZph Zxg)]QUSBLv+8H>uAY+ޙrd~_WuTm3'y7a[>QogWhLxRQ aqş_a7)1ō2nl9"j d5/FagMo&Za--B3r\ +uBZVE}?aDFF<LQ=/QGbfZ-76 /4*fP}!@#Y]Le'Tm_s]פ_T =VZF3{iȕJNw w ->~ [їu?_k.v[>vD/0m9|4ڝOԳS(?f-QQ@P8U8B^l@em<?VoㄐAT~jE!N~>j1Ĵ5HAXuRL:++6ugDড়w%փoT7?v(W$C[V;3B{O9dQc%k. lH630DPŨZhR2Oj]d"7UzO5Қٵauz_3Qpñc1t ECn Hr *Eڭ$֋?nX^s0CI bEށ1MR[~"1?znyS,J{Hc K?69p{j/ Bc`|42BIdp- aVjJ +ڹB(}k`L1f;j fw9DeK`\ V :*Pj̐9\3>U~f%)b؇g|GH d8qe$[6Pp@ɌިN k[;*Ȋf "0]^ojh̓IG𑟇ƶ&]Ipxa:Hr٦WjnvC#p n(s:=}uu$ZKQS4 NVJ ]2kŝKi 䲂on$^""x0eИtn3/D2yxˣ=LdM&|8e> +x3MxL72@g6Y-<mn %ę'2]h`e3D 8C5``+y62f&,p0Pg_;񒵛c_£ v&yʍ[$º{+o-y'w2wtR vAV~|c3^+&`V~> yQY!!_3mm١ h:j%Ɲ ջ w8<=QTʟÓ$Lr7Y?]Қ^TIMGCM{G^1heHagUJiDz]"a&ݡ 5F24$S-0&?Z[4kg_>N@58/S1ݨʺj;ѹ%|$un鮷 7,T=tI~ҼxQ]tijT_[-Wt ʬ~b 5Ǎh4bƮ.4U D~~1 |7O^?ox1Ѕ pHIb3zzUD|<~Q*Zf<+&Ʃ|`4< /~//@H1|kKE^G@AA֧N逜"%2`Gh_ YY4 -RJ9aɃ3 cxeϔTDbY,mC(Ɩy Ε/!DHtI:xǯT>4A8| q *Q.>*pV$Beg$_z!x¶/RN?R'QJ̰'u&CYz21" {pD]CD**ۣ+ݼ~1=p9^*s4Iġe}x#o@ݾb r*.[&^,suٞn-[ lE Pé 50?wrP:49ߺGR*.ɞ+[ S{>VsHҌ|(X0_SAN$g|\flD2Y}N9! ^ɾX.+k)S Z?/"d3> ,_/`CNYbm)g@G̀|>fxlvlwP$Kz~iY7FxWzK%I -`3C.o nh1A|Nх`go-%?" ̀Ljǁ=ո:PXNELN,Ӈ{0sv*zmm\8\}v4=U$OÉ+m*EgHHCNg$w$d|4q[V w>xhK0K5h!TwM65К:27h744+;8U+c}3[-!"%'}܀aZ&.e0M'qp(s7en)Q2M0u2{$*OX'+L^yvId*~;Ti2> o&KQE w2t2 =C]aVM9bBVB-c0#l'$+4>Ex:J')dMDMxƐ|U׈972̆3KJYWi%ObrLk4|&)1d͈!nGm9){7fLm<5 3.9Xa)X?qDViV< 0}QDWFyu=]>qQʹb m},4T_G)QY޺8C3Zf ?CILKМ<8#[lEdTf U`47?߲q]f<(թVV,m LP"!u1baq!G¯69Pܒ/}) sR=Deh)|ďpGI *:LRS-/DN\˃0("$\ˢ֔B}:30؀\(o9f K56Y6j a ~N9O89q Q[fKKhsY|ɦ%T398 mwd8>r鷡|*laJS8]?P<@NX68XK:T,m /+(G(z^*ea=']+qےxߥ7%'&`T}TݟkE/tS4{Tf8M i;䦗kL0Y7VQJX%F힠)c7#(HÅ>ZBGEA ˬ] Q1k &ft[xU͂=! _ɲmv Ef$6{kl<=p=뛤>YUliڮ_iKg4>|"T|3}/GE8FRCfbMv_pbv{)a=ӽw-aq -FG=@`a`rMϑKaTkGLWMDZK/,=y{ NgݻrEj ոЫ&D\-I8j߯f;)42qLF 䳑5NHu*}fw}#’ 2a׏<*E繁un ٶo((8I*wɇCK_Ϯe Ȯ r\kqud-oW F84tj([vSJ͟s0<5 0{#, dzώ8/Ԣ@!6z~Øw4쩨!,FY ӵ5"(Gv?,d˷ z\g9 acArMDh/H|ܶ?f9 })[vbE=E3/RO$ \OZVoUnbH*zWm­$cihq-&7_MSv>>Rz0<⢊yZ Ϸy\a]t[SLÂρP{7m$(aGMJ^wP A^@Vgz-ґ/=D5K5d- ˶hdkc|v,6ш4ز Y3Bߗę.zeڒ F(4GHvD1C&IE0kae]V e&z[ d"1vFGKIEfy7TtRP,bѺfׇPϼ=kuE3pI(Q1=ENWn*:Rk@ @x} q᣻nLk3 S?Q V=MVC#/ڀe#KCTyF2GJzk!qÛmL17@QU}8L 3ӳɢVzN vvt|#nUE[CqkA04-y؏ݾ Br^i+V(nityQvt pj=os\ŧ{P$u6~G!uBts5@!,LZץK>aĭ6yod恴>t<'n.0|* gEdɳ՗Al Gxp>tR;vQg@| -F^ {Lt{ dtvrHI JHܢp;Y4 !|VwVl&GNK  @AâЈ#ڴ6Z2wr < qfbm <^ns˒J)TYإ͚1ZJ V^)ys7V\K PbG? `VNgo٘PDgt>#dscIf `gĶ+q7 (ۚ)g]Qqo髆{ash>%T:"Ko>st1>mw߿af٨[fJ:*[9[kKSD6)&TZǁkf4n_8H#Kjk:莟kMV0B]a4$gOғCAXk?J݈)@53'CC]+59XsĔEKagRp@IoZͯv&# zG(썪ۈl u2-GXO2"?y# `0x::VvgpAqхH;8 bhZVl)ϥBJɦwY nd1f.F:ρe\ބ dS#E&OL=ރ ^`XxOA;iN g]*"ؕ>.*sack& 9ϱ^T1 [ֱ8im͜M&~54PVvaef$xEgr]!4HJ%f3 VM*W.2#̚AMᘲZvb,m'm\Jc3N@Twxh}@#LJC:.TA܄X@lF6Is/#XAu4* X팽ep-)Q<Ujt\*E$"DQ,Ty>'"F`Us㢔DS:i{hBF?Ĕ+-\hܐ%&Dm}aIїG-*"RD 8:2sT9Ez&bɗħ8>^/L)Pjys7Pӡ%-dr&d '=Fff]06?bBÂOQn.hHFH\E HtsfrjZU\wğ=U55톮7*^„%mXmْSwFOeJ{}\Kn23y5rP!h*\E.?!װ;F(2ocyT  7'д@MeW񧕾Z[OBaHE:Qm7DsqUdTHb*B#fN?]10hھNM8]Zu G%FzO%yOPQ7аop1gr sʚ@}Be)q;$<B(_Pa]?k{Q@>p)JN!GWe퓸_VM{~]OBAL,i'bHu6;ه/r%K>PjJ(gJYo^ޜG%!Z>ķ>=)JZsut[ E>40hTZ0Z݊4ٗ 9iyk!H ѱ7zl-珤8o]m|Ȱ?} M^$ p&7B h}O_ GC5c#\nE}xzesm c)_G"YF6s)"aV7SMiQm,IUu}Ѹ.aa7㦹r8` =,W \Rx)0xZ[ʐ?iĔjx i8nMAMJƞh0Mi_"/F mLe,ۇJ@.@QP@U8 #ٳnAAMYpB_4w9.S-s8qߊXT#S e8r:1FWuRo߶vN jV+nbFץp)׼|+KpM9G!fS1`ܲ&9ܪ6ך%) "W%A AT񉉽ăd 簓sK?/Ҳs! #0T:Wz|[~'b<}nXx­}ݧV zt+p9{r@ îj&zbɞ8 Dl-CCe9|=,iq'[/X5 yNZtTal ,XF٥-6gt㋟Fl'rЦ[L;/|Q&6#H`&:4@L\Az!k_q#qo47)T` 1eRy:E8{իr2ZƸR5 rĕ75CCNa_۔ rPV1W1N;R+wY~~Dbk{vTÐ QyyQ}7zcz\ZeIe4k@|E! }ObXOLh[PTd:&rFi/f,,1ׂ:y4B1Qߩܳÿ I3_;O|'38D=*N z oe/ CüD.;Fkp]M011uO\)pHmA i3ǓrOvݏ j9+XhA3L(#e,:q텝hcy `/GJ-0;9y^ ;*COy Jf7 bBJ.+[f^S DAV]9sՙkm]EJW/op{?N7Ns [3&j@sT(dvOt]ThSQsH{mz$E56R#3ϝ{I eJ̈́c1=kqSBID1hN6t63{إQ}I lT4 t iS#MsjF'9ٛj绥4zRaEf1, ֵ4Y2Lkt4(r+LD }YUQ"t{$ Q/c_ 1 MJKWcxl]>Nj0tMnrKإn,Zwҡ̷{~8K jd@qcLFkb; =ΦJ8;mE'X6U9UFasMu(wNR1CB(,xP;?sC,]ړ¡HTf)<# tE`J;\mߡ+S޶W>zK'Z8^ %0X@e$¢A |2Du/3)7IaÜߪUFq[_e8t}a5_eDP,_ÂTN ]RO#d  ;.^hЖbORa|3n \d<5 |h( UΦΤËmO.DWAàα OFH5Ij.Fo#rGU"Ra<l]/66Ν% \Ze=5b.ƎAC)Xomѡ.\,;ԯP*oBmf1H(Xj)8X]I:q.^.\h;4]xFޥϹ/vES(:ĺ9ecOg/ "e-I^Ґf >;7z F x>K닐VAQD^5~-kpªC.)@nָjtތ(}3ǟ0g!4o.d-΋l,=W.:ߙ4N-f4,1-yS>TEFM2-8ؾx"u*mVҬKț]76(< ?扱ziN0I 8E*dy <(U5.3 2rG|=b+HGN鸓$X ?kIW.bG <ЫejcC2gyw apP$,/J|Df\ Z5iM*3L.A#}k<@Fo#w!oLӖL9zi{gSkgk1;u]̭,`afAY͋(۶|D4T+IB>U;x,J 'Ç!r@"D&_&pԸ4U!tV̀  >1{GΝ)/ꆚWTk\+/u>Ȍ`XHu0WqjaO:56)m US첛u0$y* d^G+I. "XrjuɝˆݯNj3M.\[`7F4H@,^Ѯvʰq ,b ت>FMv/_6_ NF; fHVJ@) ~]lQ`YaR|LzC7Ʀk=w}bȌo=z."LMCfR/8s hݕTc_7(7]mL}M{WN5]`&yir<9c&}7GͯcbSNH1HLcB!3(mDIm Q|FBlɱv<7Y RpQW6pDӳؐ5l_)k{$1k\b@s :JM# * Vj/i*c]ìީ[[M|V͜*~V= GӸA5jdg仝0[uݪynsqMܐJd.-t`\yhQ`Nhw71Q燙y.ML-uG]G=4Z09 p.W)nNb±u i &+խ0y_|63fٱ$} c+p46f "/$GX d KJz, i<ڴs4.X8햁v~<ó?J<~PM!L.'y̮L̂|g`>vnf ދa#g J(Yd-O6'5㉵d3B\7֝mgS{$+&'DYj\ޯ;Hg)xpUf\TA}crQF嚠Zl Y g~{p1$*Q>mzT\GXFw*uZ-qUu4ga(rG J}] }QxS\[<2Jm3UR&u%s):{e[jLUtz֩+{lb\7DRb4 V+*r[(gYxd@F[9իrT%=H"'4Ę^2}9;SdϪCk=nkçÍ[mVb ¦|ԳcDwQqӪanIPS7J]>!Ga 2"[1.m?8,zpM# Q0\e]ܭE> b,$6{C2q %1fp4abY@a%/w?E,}҈sMn n.5j9KA`Ô§!}l\lLjף1v _ZlPұݕת5~(Htk?$`$# 6yXԜp,*V7hLҚ^~PW*&Vܓ pm#~Q \&ԨXaf C#~²ɞعBv:홝1fͭ}+BWdUʀD-[vMuJ<6>`;npv.˩t>[o?'Q2l6CeDTLf]sX؈X;FٷOۗ $8UIk!|Mc'ʣOG3?SUbLz0"dHw8Z\+x m90(oC@e_,ÄPHB•IdMIIT}1.9rzqahʍ,겹Z !w5Kgd*](-B#m#ZV7" ~_I8,F.7$D*q[W] 0ga(9 C9WX+2}кӆ5e7fDXwء`@=rky[$Q Jz)2n W8cT 7Ӽ|&~ncc/ٍ[_䀥Nge[H`_'P &.[[H'NhJ]3P?M*)V׮KS뎆@&c [gךּWg4c"p,>q0ipz %^ח3m {EK*7Ǩu҃Y:][(Z&ݬboR*GWR Gs. >'ӵX8l Ww۠ Mww"HsO1ӎ1P 's.VCQczV'eR|SKSc 8[B4+"Dը ;A}MmtNka6F[ :Tr=9U>`umi᳭A2%B"V"fVPۚ8%u?_H~I'KW)_y61ץ2Ic:Ou(7(S"NB Dsy>LCXdüWpi $Y#R6eܬE&L33ސ 8l4Rc {eoɘ$ ڱS` TeH 6_44d;d, ia*lgόg=WHohl`tIL%Vw,9ai*ݣX/k8;ue0Wt Ĕ$tտ;𴈧#e$KsՅPDy52"e\ϦTGRףHJ.ws@6Poƭw ý+WWz0]p~Oj{YCJc)$*G40F[' C̽ʊ}YE[ɘxg\hn׮whOX/uL)UA$GUjI=%, MlS x gm{kM0/U$]j `,?׋!*k7M/U)!_mF$qf,Qj͔mOG/ՓgKt\AmMfE*"6M& as^>S/d9ץ -᝛flxD^#RV3";73hBK~k.F3=Is  tH0Rr^Pȿ>)w4{J7'Cvk U{B}| |<:c0n$I/o)uY8َ׎~Y% :cn yB%?<֍+>yqgnWiI&%P5] yS`'ĜwR9|΢]\-qɰp}{ P5y |^Y E!6;jQ-egx ,2O o5UxQ\kҧWL㿴g:V^'3Q[)?5@+@LC*F)+' &̌7cm&d^hٯ_IP `Qvm!IP͛o:]}!.KL~tِZ`'[=# C9K:e[b~.nM3,P5zٻxl1Oe8ކ &MsRig ]ykwu\;K3 ⱵǮDIq鐸Vb8V47uљjcqEwLo@.Ro:d .R#F?;W _y,P$]q,EEۇzʐHs0 CS&hMмm̥ ,ss+r,7JVBa'FhǑW|LnF~m# Yb5e 1gMdCf@K50`%Ox5 $(7=P*q!ERzQٌ%Ҏe2 y}fDucgƳ"eG`2A5T)b{$lm2+Oeyn0z¡ɠ㌳sMj|4?R?TY`r !]H.ı)xTB۪2PK)%gqiՐz,_UX8&3I)"'Gar7?o(r͕]luu;= 9v:^KXq %HuYy?x&XM,Hx)#5WҩNƕ@Urvp\Eg\Y2/‹)Ξl6͡h\T)6;M:" 1;^5lpֱtU1Y#ZFC2> a0KI/hΖyjj&Y]_VI3t9:F o̤ԜJM f83 y7cpKzO- c#`r@{xߞ3aT[ino꘣Ҋ@1)" _)3M11Qo2nU:BF"JO.hyu}X@X:瓟}RdzPŝsU!ݬ)k 8lpc+ׁ(Y7Bܫ Ne !ْ|/ %xX:b<؊*ސ~,,BBNQ_Hp9CK^K1s)7^ 38K(,8^4V;)mid(°F[+ bbNjV:Y5lwA6wNa೒S QG!)8ܭG陊-~;`KT8(|vhQq+tݢtZb5f;3Um)Ů f੉pLDFZˮl yWy(n4KLx9聇G޵Kv;qrPxW5V]AiyOaw/w*IhmgN%2PW?"&.DNBy0ebj8(ʁ䔜UW$L^6\řh2KyY;VPX8֕F<{Cъ}DAFD,tn \eg: ШcM1CahiT6>HV PJ- ѾJM8Ĥy h a^3:s G6J7 @qARJe5 <3Ӿf̠@@q\̔ xSRP ?ѿ皙eԟv(^ZÞ;=IJaf `P^~W VRgE. g!hͮs %^s\hseYmX8ADS[tesif8pU8E-1]Ycȥ+ܪIW<3H5+lʡ*c>8&`l@$VN\vÛn-+"-^Zҿ[IyJ'nم.2W#?K6XQ5I~WzM`c}\eA{ YS.FLY焤cQ|-ڥLz6\8~,O#:(ڰhq}4U9`է88~0KNWn'tvL\1글0H6hi2 (0E#Ewjͼ_l{e,Йsbo\,3a3?*Y̨K/u0mpz)~1)2~g~%[nŋ\E[%:=7k} Y-KKBȎ%1dLfȺÚ%OK^$֨a@JU "V^aObO<=qS Dr@e&5 f|OǿK$-n6֚mbmA 4[]WZ[Pv%gȒɝ D׋ pa^dm}]/*#>re(_)@FX-p-HV-e$-<1TZ;AW;nj˛rjVnA!09U*Z^CDTF N7ܢuhЃ#A>(h2"Ů-ڛ;*21S PFM%`Y=|52˜ !3@);ܣjHɕ{,Ϟ~A CuS굳$Uôan ;v1b4/5m?k ;{.)4eii+ࠤI7!, Ĝ%.&l,SagݒW cڠ {ֱ!_|/>,ISz_pܡFbLf>$F mtqrP<fa T՘o97!y:l@ PzGDb1щ|iY3ubOaʖz&|W ghǂ(WY!LhQ`~,9|㩖8FPpa}9ţVɂޣGY]b\ $B}#-=Z?3Rj_5%[MlkxPB*n ,|y"]AY/.>mjK7 )Z3kj{ 5j89-LJ0,t9j=%E)(b.*`! T!gl~8w8sHLG@BS9wǙeTY bI>4@Mx_?IXx)1uܚܠtXK~Ј)mh뵎ٛU* limntմaHuސb#"N}qVey3cQd7Gq*cd]+z5հtZ 4+Ϝtܡ.p65) ( -K)*ISֆtUPFntW"3*WܶuORs}WCm&~.,8NW&m^njTњ2WJ=lg1_ַljBHL`<: JX/fv e2"7e*Qs>Y«( Nqq̥#&Cӕn,Zh2m\#Iz3cC~͹ĢC$Y$#SbF:%#c@vgsP*B܍o@)VgKxD .ì}|, Jg WsZx6`siy_`206ded 9ea[>:QÔYۢ&0˨ .moMw ǨokH,c:6Ac>(&-|crL?ރьV7|Ag8gCjbx #|*3~O;4W2Nd*hV)*>z.?s|2izpf8@/c__0Wv+?7A)OTk#hGA?KbU%ǖn\9SIUZm} t3.Hs{dbPnӃJ  )ۂ AD`'!S3~60Hm],QTD>!D4 \䠊Pd)1L'$9B۵h;QE%~ɍϯxA 40u}VLF`oG?N((ڟ`qT,ir( /4]֨lx$R,T'l/Zk͌J&4AEkOؙ6L7,>eMmXvX~IE4d"|^EgDz z}=bK = g:rl1 T&'S< ZKıu\%=lBjOB.*x z, xWd d޴Zu*7tZrBcLI`S26It:}, ϠQ 0Y~<5@~bW d1v_4?"iaRFwq?#0*џh,Y)8I O)yHrPX$ѽf\U(/]=?DžZ,#Â`9ђPAҫP21 w?DGHtI߼JtTn,[U3e++j[ BpZ%4uکP_X 4@2|+~uVdƵq>}a};q|y&6wokT0pΝeaڛ5-C m<]& 妦&25$:4T&X W`5AW+tBkFϺF bHf:,T3. 5mlŢw\k"<:Ѽ_d  -Ҩll{<*Y'M!0b}?$ar e9RhILSZ4;n@B/aLܪXy(39—κI潟^PKW{%ǁiv{2͠w W =OÉ1 $\ƏA\P uM3Z$HU J-`Ojusn'#^<w8AQǨu-6wڏn]`X1No/C郬 .lxqôb*&t?jihGYƉi2rY?PV /gM&8{jeI6SSbDŽżU%"/TQ*LD9vx6.S%a %^̬dQطLm5ڗ9؇ٔZ7njZ\vMQV+e5+!qK!FoeG*^sLbP.(/ȁ_ni;=;4 ~I+PHCp 9!+ U9 N05Jϒδ#D.Ε*b9/ {%%)g!f?+XèExCYzH #qO\#&\|gs)4~j,ʖLB@ni,=u 0o/|K_nHH&ᄚć %Mlgv= Q|jt"Kc/J)5h&ɡjFeBEܖ~ZK`PD;ŇI$IByKS@dj}O}~Cyy=B1 [.5_Ғ ?-3$iF n7&DKf(|}vŞkj2?ןe-D !E ;0KJVm-h%\ڞs8cGcp*t֚j&tdfS(ģiN ]9e6}a'j4])hW)ϐC :AuP#3 Ʃ,j8vsb  ?;XB4"lC?0i*B"WTفoR煝N[jO9_+i;ʿ届o=wɍK@*f;G]T>o ]) ~YP]ݛiwδv`}@g-҄+>Gdt{K٧?u8d,ߍw| L;vv@;nnaMcT uZ^&G9qYLWV#dqO)ߛa/hH1vb Jd2`|I> zY#LJ*2[2MKܞ η~;JlSBr/썾hv1~@N]": lF 55xVg-eؚ?~:c:yUn0jĐ;\| A}`ad?ﰏ`bJ%+^pHxJwɠCøEhC Y!_yh@R OaO 1eCŽQ-4eo*sٝ0`;KL(ރkt,oW=$<.)9q =&e i $bx] ʑW1"+de>^-PE%$FRw(8?.Ұl}h%l{2bUt` _J?.{;}-9W{##@u7iQwWqo!Ew%܅ R\h яFv0 pngRo 1x_okI3:L,| ߄sOG r0,0eLFn]F928RĩGh䡞n"(k=J_Uwo NKHr-F,X`e8;((zSY6/,m0 \d J|+Umʎzc'KKdƬwyfMQҋWЎ حZ}2"3b|&=[Hr~ ]U-'~evW 32.+RY 75L߃!|++չb0$Z?k`ew" _SҺz!哮?T7P|$OogUE1e[E9"6ӥp0b)жihR HI _^78ju'ա8!+N0"GIOgz}Z ؊$VpU L\bTSRz0EgGA ˾`:[C9+@U;p٤#b& eL[_ S $`§HT7N?hy^v5=\;ֶE{oϣܳPAǼ] `p ͔hͮ/l5? p[\(UUq$WnaQxlslV"_dnt7pr僵q#m6s>tOE9:eh!?utH~ LxL-!(Z/ V /OŨ*Lh{+O'sd|"t/ڭF̸j!~jVdSEAr]x"JG:L:l? `:@Dl.AݴD?e95X"ݟ| W5LOyEXY1614L<)/|D${kӕ2M>񖼭:l!<p=5"܁Izzx( 5 Pe c7zѷda!tfŔsi7Q@A o}jϿXho Tԇn( ohBE"-t96Ę-a3 Y3ܵ_d[8@d-} [?=TFP?aQ oz7MJDmG {pUi[CW^/!z+doH>B߿=i{q1hbZoh5 ak{߫ֈ駍ii!XӖYf|}prKG@[~;4l2`Yzt6 6b3STM7pJX [)͸719?G5Y謑C=TY%2id5*z݊~A,B>20XzUrATlrUWWž'Y|~Żڹ``KkE='T@!NT"N&PrG: ι$gї;boZ5UFx[UbYzpM>dI-&5={29ԹY 2j U0iL܏5rZu%;L> ԓ &,hk^/yzH\%nk}CW]0ʳ|1 ;~E T$d,nP<*KoW ?Anwa :INwBJR֏,9]Ԇu=5Fw'YSI"*ZBM뽘x|Gհl"+ 2!h_p ]m8fǞj[EٙՊO5hZ ,6PtrNVϡ(ëmKJ[O w~6!2AL0TW*[Đ'sL`Y a-BW_c}*̮Q`7_g G䐧an7hٔ HVw[+9l{lO0h"ʥns(p̂&IX%M-HQ>ap9ּ*!ϡN\ [9v(hSRD?0zRGB.Y1ݑ'Jq'_U I~_׷&֧:a``KxusM3d9Jh0Ô-bE@Ԙ=;8Ѻo=@>g4A3+b5 ?n&zAٺZ|TG94瑸q>˯B}PtGd1L4T[v޽좮MjeHaW#0乄\EK53jۗwl {})j! Elĝ]ImY4{BX E9ܯ+K Ϋ!88mJa eMV!7hQ!^*ԈPr-]pU$œy[ zA><4TfdMIaqЬ{V驣9'ډXs̆E qa{vxJ_W] 89z(YE`얺屽>f!b(i*v}JU"9n|x *<ٹsEF.%P_^lY{HQnM!󊨞:(P5-6D5&?;B"ҍ<ұ,SF-vim q2f`0@gngE4J@COc^IF"SɊUhϊmsܳCh_a8r/\Ýg. *5;sId/TкGG/|,1{(՟75&cx /BV,QGܴN M^vl}tMkEP/_HɫWC>N)6s#TEJs l}+6՜0fPKǁ n$걵lO:.dwk)`w XD9qa\]mEN.ՆO qeػV>KLg,IZ\`r&htHWT~rWFznov@'bBȤvGsUke!lS,2$*N{?N Wm,pɚZ'z3L;P'Ar1JNϏqbJVO^X G^¸H ЉGд%: e>2*:pXFoXV7D:"uOB$/MimFEey.F4J,tFl1A ujǞOn^OZe|IjDpw%Ep'nيӑk 򙺯Qbkez)]t?2OZuwhV>$ @Q->%pݐ{xaTA`d;Ǐf S[~2T Nxk`RM<0'[E0Wix(.?(Dۼx@a[2 w,bq"ʊ21)4}ˎ37'0. 2Q7BͲ*PM0mp}!o6TiDޑ̊B?O۬GEZ{ $v? !lԖ[`~Tׄ!{c!6Y{3~?oBwIh2i2$&FG' +YM $QŅi*L܊Y?ր{,4y=L>Y< ljV"e wGQ~魾y =HLR!s=U9x'6`2H;*˓-0 6_GZo[h ߏQBElaxh]wC[ Vu{$J[WL% }EN3iPP2vΰXH1 $\PNR,ŵtMa}_E2\Lټ iƲ]i3MO&f(>ւ*>YEnK  񒃄Us9 rݓ?`hӖ}kt\>ݞ"W7*># )-k%;hy( W{#[{mq G{pptEcZ7 ><`cY8tN]!4wA3a~v1`1;e9n^IۉQLWw@F/0W'ٱDF4\mgpEm*\Mj%G"VGAj$W ($0m1'@nZ͟{M\m+T\`$FF)~I^8g>7#s]{TDXuⵖ헢S]4WQrܨS_g`iJaʷj"s .LN6.YTeb!8akߗ8A]UT[vՠJpS)j=.&v{ua's\q0>"B_e v Q'Q^긺U^s… '(}t8r1{;i }WӉIKZv FLJv]'܈uHV0 kڔV,h'67e e{)ZJX6 ?e &IP҇:Ǒ#^r GX0ČrAaoԝ"3Cuɇ6`LX$rs^x{5>ĽVI$$lckUt\ ^<_8M"lKik#O4k]Ptߥ79TDS _v0Bbf IMEc4IXe pRA Y-mVRHF X( BenԶ!EE;Uyb9^^:<5񰴿6?'Dۂ*K}*Y+цO݁2񂅫[x1f|4<6S;*s4Nk)&OhSdPj7$.}~w뉎)-OZ٨#' V*j*%*`S.Clh-޸gt9 * z۝=eܛ&{hpz2Ԟim. jFW+ߚ@iJ{LqfCь􊉤FS t9:&$[\ BNh92Tz+:>5R;t#wCLMwjD|ֵ8h_>f5!Eƚc`Id` SwXH7PPT2fV9߉:h&2=`J T1B}B{ylz@zM AOJ[Do[898H^&BOW۲h$dth҆ kB5sm )*@P '䀙%?uc&>ߩЈ(]8zeUzM1I3גQ#%n.vKx96%,ZU-XB \)Ckܭ]iXG7[=Am 38tּ:;9:8bØ/k-2J-!V*pEkP~e>4^ijIY\R垘_ĕ؛<:b X_8$nfJ1r>^°Fwxc:B"~YR%~ N,*yͱj,~[ Xy~)9`Y ??I0%^_% cR꼁ok}7ߕ\C `)\%ؠh 9'-voiFS&kB `i:*ԝL/K NQ-ClL3jOgxN xAX K_Lt )3<QLCk_sN' GuL7DrG($T { tdܐe)RQ_IZ8L*vV BC)k11Y8 79G~;cafۥ,o ~ g'䖖HN.pv"U+S`;09is`\Po SB3YUoxD eKN6; =%7 1y,0!P6Lf/` Ƶd $GǙMVSk&0Q41kS8ݦ0Z@uTu?9&CLUT,ZJ5xVE9cGx?pv |GtR^Wӹ'><<(jD$'W UYe*£*zUţ,?2vЕD;m)/Wt|n%9i`X`XCq2ԎXIHWF^Zw%,;_3}p7]_H˟ W5iI7/} k rAW-12Sv?.˛HQGBR8[tqK|?%,N)-~1ۻLґ'ZnP$ K7sօQYӞr-۶`k҂nLLn#_d!P=h2ZJq5m `kI82_h‰G|jKSv:'tTx. &5͡`rfg93%혬3_?e`r@ol Z8Qk6@~c3fmf̅lk8,\i*ADŽnꁤv`,L.|zHr @NB ]wCt2iT;WvP6CKE؏2?RljnwE䇸L{64^=oO&+ kX Vo#9YrWB g[!A4 "٤]x GY,P! Z5k; ƞςv1겒WCF/=%8жOC/RtYӀe? 'ԥB;Tt~§韙Q5N=#pPv>8Kjʲk3zc玽ryzr:ro Ř5ix~ aj"x?ٖ l׸HD F3D Fp9BVA9MzDY?bC`vp-"`qK7RC "*S9質Sz.cn\4–/ 0^u 7r\nLP_X[0oȷԶ{ES׌+M̤hfڭ发{[;Ugə~ob| ~\qPIwuThjcKzLyR6פdZGb~X*AVX@:6kM PI-gB$~OR hH)֫En7L5%LM[?7Y w,(XK@C xetÈulyY]Wn O{i%MxVoY -[p"'"&.5Eī"(*xRz ]2)z/k4V1ssLXF{Z5H"?SXL-b~=A}kmYnsfߓ7b`>RIW7s#\ekuGdԳ!ی7xW\I/h06 |u) ek0Qt]ETP :1ٛϥ-M+$!ZqPI0LD~dzlsymg_0$aݤ]S7to_rbT`y .dރ$ 2yRA5wjb-g1kbWA3sgC';4G9s4;(tBc_\_}a%UcWI ;d޲|ЎT&2PiLkya¸w,ʥcK3h#s=f+"mBT8x<:7-("4$LIIY fk}k? >bhMb08_+v q/ӈe~qQr[QVGR wb'WGǑ\J1O!!.zPOB'G'vcREyNI@<:- sxka1.tC^\S4_OUڥS-᳆Z{ % <+RaC'uw~\>:1S!`i%ו )hH*/Q*@_ ؝d>)+fr=,`L`EDM)-_PE#TQ SXAaC`3È6@>]{(CD3+t_q!i8̂O뻧}!ڷP2=0tm[c*pښj"袓Q͈'%;&gz?Eǣi]5D)$'[!U6wc=5 a\27}{8`Y3bAWvPʀk!ttNANҡWV,f[ p#=QX0.Ћ e`wdOI6B[rM5!TFE#&u[`џwWs+{w쮎(HWQf'e5q=] gJH<890$Nfm;G'1>E]>T14Pi8&Mm< URCj7+LZQ'-~۬1zQk2,H D})qñWLgF N)8Ifhu-acsтԱjumb8&bsFf0V}p!n' T >]tR 8@#'faa*Q8xL@Ԇ}6=&rҿ-/7"ԏ)X8-荩!{[knWn~+UU+? As %aUndtݕz/nceԡ鿄9_+ml6ȵ/*e`"JF;.ObښW-hIW0'*d+'0/m\mPLÿsײ_ĹtN5Y}K_G,%Ɗ$.B>OnD`8fw7X!Ն :6B5oP}ۛ\躃MH gISn=VaMXUbiR&ʳFQaZQ)+XSng_w/l·xJos>)Ӻ4Z^}&/q9Yj9q_ 8wl"i\*?o {C_Dg4-1,i-&<~0e)tnc=乶 ŻMGh{<-!Mf}]SU*&Q8V":HucF,f?j:/*Qwl_gߐJJ ޷1c)kra*ճXKP@N8-0OW?!+[ܬ ݀IɈCgh vPǰ3;"qEkzI*0>bՀj!1 s+{V9]}f^.9!g'gTVS#W>4s|BY͑aqmƩ!* sP5 $=$]K_DgGu'6'ShXAXǔnS]Y`'bik_2#M}J[lc.u od&Rf"UEq#kD\᛼LDl/A^a׺#e;)[M`ze5<4&@9c/ե#;(Bt-*}?u/Pp. 51MS=ۯP"3 *s1-=8 sR BY}{tf`ر0SW 8E Fi)!ҋѡbrlv{uf8v9N'2UUҾ0>gDDO ךJ=mv^AE'w>=H !q?4B英]8Z{|;1%.P ڛK)9t$K2UJ(D)0|%/Ju"g>,:vE~r2>I㴧i!(uZb eD䲨9'$8˻bMstV׊`=JĢTWߠ`; , t ;ꀟ-?[eOI9g36]sB|lP?~J"I]CO=nvsƠ TF'OЃL+L(e$AAv"t[RD.ڭMب%M OgR{=Ÿf"}Ȃ+kHhnA^߃%1D{Y[k[3l`bjQcdVI hu[ xH W̡:P!05(B' c7h[6`S"YՎJu";H@| H@53͇ 70n6LۈkaBFIG,]-A}>#B6$͆CwD$.~9 BH8qI2CNĥi\4/JEJ2q Ⱥw6aЂXOT*1b*\yn =kGb7-ύXe13| PVU8t󎝳kk>'ڂ|seE~Nq{WwVі.a:#|͈:=C,t >6(΂Z1ʹ5@rnVxȘRh2>BjgۂA$R\gZ~YSr(z0\BŝGl*b'a$π(a&`?)٭vwjSe/&  HרvO}zj%~{$(x1rҩږ.YIXrER1^H'Æ*fhhΔ謡aujE| ^x3gc̤#K+Cu@ZWkl㎵)qwҟ5*5?{0H֭F ȆBlRPy?-%@dޚh5ţו"IJuLK ̟g nwo?,):+ȬF:~)"ID->j;%f;lVpaWC1 `Q$?3y!xкy[C;,ӝR=; yQOv3ךungwϊM}riJ1V&# :=R:,#u;kփ`O`[-Ah)폓ʞ%m_#W1o7R\ 9WΊ *톏_1~'醸vo'L>䦳5fIX1g>A+9!P4}Ek?ΘJ'$I?h+0~*o| S\ʱe<'Yڝ8ӧp5?:4y>tQlR/2BxMu{*4p& B:YIj.kd3Qp,X]5h>b@>M=UR$8I X7|<塙\U1|/qH-2$t #eG'˱av0 ܙ$ҿ]STk0}f۱l?t%So剒T b3衶@;/{o0p uV}-l]ni~'lFt9S3JYAUV d|ޙdEĞ0R{^0/pUE¼zyLS7|'.;S)\)RIp\X"-w7rㅯw q|CI(83'0*KuS+ڏ+U3VS>}{+[To՛:~od qg׉2_ 3њyhVaз_׭^"80ՀJso\-&F&lk!1Wq}CX/<9 :~6,3{zm0G"ɛj*$֛31Ȃ}'[Sc"zEnnP7>u%i\Hhⱍ \-ø_Eb˾zxK@=DR-[&sWGyYt dn/Y#HHO{eAw4r#O҇]ws O!?z^3vki[l{~ \YIxgܕpPf\NK?x-%܅~N) JqjQt:>yfn;\6Yx%50Cu)!F2·-n'|K"ca?aȨ}e h1h' )28Hؼ%WH74b"~0avmd}V,Su Ft z(˫b#$y P𝲈 rœSsTz$aLLz26b FBtXdC;ce]Vn6C j!hC퇡ɛB )ԔQ{hOo}#Ccɇ[ yG-&NGbM~(6x Fȝ~kβD*>Y#F]8t1Oo1P_ #7W Tv( /Efuʼn!BbPR`u,)yh؀sRV1*_ I > މWr'Vuu kVyp0]}?{*C+!WA%rqZjթ!T7(D?Ӻ#u"ӖK=GbL]OKN4 \^~A "yό *NFDᶬW}  lu} \wX~Zq872"&zOB(c4a䥷-l#}C.~&HJKc' qlJX.JT8FcΝ*u9ܗ+mBm!%wVRpm[9.t>tRSqYc+T؝"h !퓃σ~ txE-Sc}w~|H`LC db+tWy.lEz6a=uLwx9:ej샃w h1oL09(^϶t)<Ʌ0VJbmOzP9_${A;(HDs0( t13U#l)oz 8{k;>2笹D`k,4l*/8f+fZՆvh`hc}Fhlբ7z(:YZdyo"+X+x22 Rge ! nFˤ*6ȋBrMl .iSu Ecfjh*g@hm/YZr]04bҁ bXnj&UZa&\x%Q./JB!|cC~B^3(\?eУ٣9(⑦;d…Oσ cޗj۔LJWnB ˚/q6:Ŵ&H/ @|5^rު:z#pHGHl1l>Q k"Zh"kx2g ίOǽT.ewz9߀ren |& V"h=$=udii䎱vE햐Ԧ3rF--6M4f}Orr (M Dl\al60; }X ws"SUz?6n[d"]9"0ȼnd'^dO.hRX@}]?cU|p:7TW[dr1?ZWRZFszɞ g{y@AH[/ {3(Y,C\aPrgVgzAe֓H[yV{Bo$'\T΍U|Gd&([W3_9k .wL]8uWȶq>7JJ!2x# NHG4Nr8%VtV&I`4 a5ׁU¬LuX\TS 2ʾ~w[Z9KNΫoCv52\Ð@f m{)_g-4J،dEIl,D_a)TPp;EۿOT> A\悿 *K6rF\Ԍ T(Ž]N@vӧ=\I`8fFJ XKH5%񍠩/amYx:P#c7ijs*-jE]!=<[  o_Pƅ:DoEF0o$d~,Q3SPYr:D 7LJ6XG΀2"# OY\Iץ2D :|ɚ"&XNytc(9MCG ބ<[pk(7}36ZxSǭM^9N/ᢕz4TޘΖ0y;5 /xby hx"`$;'7͖uGRt׍~r~__ !Vđnl1FȐ! wa_#o=Z\WEiܞ%̋od a]Y&D{} ahcx>GuZh/&` Z:#5JRsXb R;gڮeoFɌm eŧ9;=.:O^6uCjq+zqɚK, \R?L"OOҖ OcHQȝdgz _== $)d%=Q\HX-Fϡ+nG]:O+Z]1ma=ߞ*f09:^8N#{/it 3ܚ??Ufɬ̷oؿn/t-锰 ̎2qSLQS-Zja42tD(JbDɆҡ3?#'B"6,$ +WXp}RڗvG'fwHVB}V%L4VH(K9 /4홑*`Y:h _F;` aΓ$98@9=8z\|.̌[~~}8hdS<9B Tl7C$_ֱ s `W:ӪJ/K$7j/8 e7|sNf7UEЯUX"+3[EvwE<7pEէs 3_H[M`pQi#ݗa8G!>?J5lsϹi,&u1Tr-`X hၐ{s]&~c9P|UӓDT*yOyxЄ5ڝo4DFm12D`kCM(}\N߈\^k Bc`#Eo~%{^>Y YP[159j^Ufg ljmIv-q|~ۤfh%y1&!P<UЊqG/#NHd@(C_#(L8\Ց[`]Nj˅ U2 UَaG d+sаb)j@Ӯ,L(\?>ECl;yG.9&"ݢ;si`Vp(͈ޥ::ǵs"ٓpFBRNIG`+*c>]Q8Ȼ޾(:-.`^ȧIɼ.ּɁpS| ,6V3BK1:2e1 ~VIQcqh+pGVq)խz֭gQk;Gn¯G,xpG Dr(p.ajD(7q;CD˙`FVW2wˇ4R3c,>*$dVk/onATܩ[Dz0"2@ʚuK?K҃"\!{7%A. uʽ;QZYwu8tINJi\эBe!Tga V-ZZW*yL{7q $b!Yk2OܫɝGZFu))5(*J4 6د}:8g32*|ME)HߤM֟eG +%$6dQvM#@t./rxejދX*]!zY}a yq4sq渧LX⵺ }+L}܊qƈh%2 -ƽWkT-e\]_<*i!5 vmѦ>W,t&Vߡ w%]> l>H4a#.gi"LiY2\7QL"`]p?{sFdVZz٨mׄlN` @aCF@ڭXtOSZp|:8sz"3siAq>/o=I(oJ^vB$/䯋A15.Dr`Y#M~aAbVUazˑYM]n+<-u(ܭ)!n(M(ߦ4LBv9QYJJg՟Xc\AС~^I,pDa0} Kt{)w^NV 옙A]1UgOUOۉs$qf)8"= tUKU 忙w3|mo ҝB[H1Yqu8 pO;cc9)uQ`\mv;B{{ Dm!*>Kl!Bi~/.OrAT>7KwpCmLY_’1hW0&&5o 9 UxLϡl S`i۔#UthP12 "9[w ]L\ oIm.-;O Dnh+D-xlHݰ}v $(/Y@PgxT& sL~pVs ObϫMؕMSªAIKj.[sk',ƝV-Կ\xzyFjؤ_2i7b#!ecbv}Ls>\GעQuЈ;[ڮ6:_o;aH0aF3h/mMo\*͚s%D/Ҁ,':\ A @_p-$2CGvl^ϚV||>BBNFuc?fdnC xRQ :[AC0>eP2$+IPKYG8c#L -^suv җ2w|`DUC]_؉RPdj)ќ:ഽ-A]d(d[B!G&dPZ&H? ` 1Mؽ{/kK8DrQLU_b6/Hx;[U- Idwo7b.6ޮN$7]佺 rʡ5P̱m'w@[V D5 $=3WtIvu;1ls܄'v bZBćMG|v:v<=5gaOJ`L\hCvc8/<>aM^3bMdLjף9Lb )ٲ+ِ=8B2JHu;+4L.+* zƿiG=z61M-A,s ]J %CB6Qcx#Ekm42aIN_ [ݸp_;<) 3`}p4H-)h[TbO!:DX*Ct$/hՎ * 1[Dj dvc_R};\uDx3iM&NO"d6ʱ&7|󐵃dlpj c֓􈫹'a.ba%ccc%L Afт0Z_?uV,"Ď>sJUtջ7[ٳ9G6e(ki=%T~\ARV8؏m=Ebcu",n끫l^݆l3%9Dӭuʞ.]TWy܈)< '`SPV+/q/09LgzX>;VY&25cr&aXμ+Im=&m+^N Cυ/dǮi)*k1KLΚ'T/ɃpE8{Jԝp iGBҩF6.)|E"=DbݝhS?ڸ=fkg 8"m%bC9L̐C~#-䗵ʩQu'RFi _XLIl]β`H#WMŢܘy#˕q8B}K8}=wAjJ{*M?%+_W&g^ :{Nb^V$Xkb8'*(H:U&g8fgb*)6W]S`iG As+^5lf5X-bK&,\^}Uw9+z,BUCu}ѩW=:!!=ᾘ)5eke .1ݡr˸&ɲn]LmWf D|恙yUwʺ\ vw,q*  B}LÚ UĬMTtU'=uUvN5? T=`w87qBV9, k PIo@r)8h\xN~1@68_` ?AQ gF[_,;(l\.VMyܢtM,47|B=܅<;ܖh8)ɫ0nֻ'KKa;T*-N+jq¯QyauF6~Zʆ:d_Bn mL-'ŰǓω-FZQ[pSm=&!Xe;4 &#''?l $Ff#~f,9.@6u[ *$uO ʪכFSDhH~NDk1DEFRɋEn0*WF;4U3=hn`?e։O}WILquXC)i}5w;mxSvHӨ 5`ͣRر|Ѹ 2LCM%΢jqɉ=]^%ҙ?$Czrm$J:5I'u EmP)<,B5?[9lv[184x[1+B&p:"@8y괎FCf#zCzpcğ/hضXN77 OLpʝa7P%/b j狶^X-)"2-t>8݊kI)~%*֜[sYkrRW̳_݅w(vg1g"cj~>QZ(dʉRd}}9 1yCz>r$`õo==wbqeD~,\_g%1+W$^q=& Y]2K*^3(ݷzKnT~giy";=AH( H׌6oاv(Dc]:Q"/_iFl?b^ "2N7X*{:`ƞtw8f诰`3.~(sbJO"Ԉ z:i.d2Hǂ7{z˂"cj,a` xr󪦞SM]dV.&zԇ@ |$z{D\X:Sx&}Ɂ#\t7l_+!XU3UH(d. /!iS w?JXTOUw^ #[T 7Bd|` ¶n%7MØ)Y\Kl ߺDj UxĢ6VdHwuI%@,`yi\io&doI_^cܞc $Ƌ_| E aR'PT[>z'ĻvF+!;eozKgBjI2xD1 >~'`!YcSՀuhʴ5 x*k9 TPn'nEY$ago9*-Yr1_׼PBk JŴ/}xzRĻ$Ni;fP YG4w'yF)MF d@0,bE$z Vҕgs>Z2uH2g[W)g +h(:j?k3``.IceuN`ֽW9FVgp|BJ AOUrȡPBO8} H2f}:բMʐ- 5{@t PX[ѭ(s^  x:(̗ C1܌R8V~_#Ó#)qz<.K깖Q.:bb*S2>V)Λ&wivjtæAЏ^Pv;΀wާԢr̖[a4#Cc S__҉Ѿfބ-`c*"R4Qzm< DzB )8)¿9ZZnB/QKg)j/ZKV lR NɊtwW/\J'T-@:ùtD!"+Zs`*2iDgtYC)oqntCFgZ_xkz%7tr\נuNVĦ/ uJ݌J"VC!;pI>"5@eOYޚm|\Uol ȸrR & egHS_.o V}D6)Szd<9jc@]_YXϸ `&1[qD-N<SchtEU4Mº$e5h~k@ogUȁ}Y?c`0h_)-ŶG+䟝+aY?Tq7WQzI0\I$Gv9I譃N9fdw'١hGJ/̃_.H[ wųbR 3aFL:j;Z5iL|]ioCdZݡ-#Ejt3؄|õF;w:uil 7+۵Jۑ@ cӞ;Eg{>%ܸr=@񱶂P(yV7٤>{7f!{.QE\[2=b eʋ O;hf#ƒph0]N|:BL Oe}EXZ&EBGi'+%Y0Tf8ؙn [[3os1uh9/vlرXֳ4 >L:J.v,(p6^Ύt Κ˖R&.Śv uPe*&:F*$hᾡl,;t1*Ԣ8ܫZ[i<5 ͌gTM%/E޾m*\_)'Hezp?Yg қl_J RSc p)vjw)G*}t vؿ@İIExQQs?QcCiyQi/^8 `ūj92dD _xuOj(`11wT>bܝ4D:ARfAFaZZ*ĕލ\AYR `V-O%TSy]cl Kd@6B'B"z9oCrqv9Xi>:2e^}gސe\_+/W4MPrS zT s:Caj x$&3yXr5LGU]B}F$Pʋ HLؘz4٩VBb[|dPyGֶiw*;.]sX5~_{Oݞk*bfOSoYϪd1 G7[ۛK9$bCZ[Ǿ@ܣVV>F Ш+f"9e2v(`8 tQr< (/{#A9NtYqjsE9F "9;Ox$`hLS@mKN'\D];ƀУgXCb5:VuSTjAvinQ0ԎLy?aOZE׻[:%ɫDjn ~;OH/\U3\ h轆FV \Hj azwx;""֢ZTmRa.d8[ۆ5B9VC\BYgKp#%v;jy#ƽsaXr☃B0.P 3x9HeBFT01 }m ͈@l!y7n#!8hO:O;^=̥CUaN.ZݍFRz k%\bt䊊rA/SBcq&oT e |_@Hiߐo/{)#f믶f/G ա[J48*#4(fh:}pRU|Ѣᬩ? tDnj4٧~G9ϓz܈{hjɜ)N& EAe{F&ߥv |B2,̨"uA\ܶR:/Fg=w0 ЍBX7(_ `گ.>wu G^rleW,Ql@!*NRLWbsb7o#bx>., µTެ̘ #v\{)d.Heim TI'!rBQіya+ȁ69 =; CoxD~/!s8wWk?Re>"ɠQ#^b|e7#$کk# ݢЦ-cvoVqp]T }JdNiH=1RV-R_ 2k#m^|k|)Sa|7Jhn*W{TQ!GSeuץYM&ytͽ2]!lMYI Z6_EFmfwt0ߛ"̾qP%TQ(Et P3[0_M(Mos&sfvXB%gf / IaW6^LF)_'BJbHBп~qrSu{mswkԫ8OQls^I2ش y竮uƧ ͕,{1gQf#[>i3L6gShL勴#*3 ``8d[?wkcbHpW6Z;H4Hk_!Z{leaDJ֑_= ض= LDJ-HnXר5\ Z$G:gd[/wM_@nB0'R5'2nEVQ~)ȋ\7GDgR ?j$@jvuRQpC;G|[<|lQHtUK5sZرyC;0d#y.{ZLx#|G:s+?ioxΫv>:eC݈k]BqXG^ 1Sd>ʱRWz2/ʃtA]RCP+%E%O'Zv%Ѓ4^{5Y9K͇M\ 1u\*}p򐵁_A!I+a K)KNc@,)\H.}]6ڜGr;rEM&M0:ry[,ҧ'T+X=p~2ons u e;sk !+gBoG~Woֳ:RοeEv(IFQ!.9P-^VMnO̓?IW< &)f-8l!2xX{b3sJ3+pF"jOT.itMD>$ Lcs'݄dU!z瘎=hn!e<8\Z΂+ϙX =Q!#x(%`um b܀'œS󠰣 .'"󦲲AWp&]-՟+ˀ6˕r+}jK0lUW=q`.Tyc{a ~(??!i inw@G[0T_]QD^MFk] 6ѱ1="]C( 7Gܪ<#ǀw_1] 2 -}Yؗ]séI#|kO`G㝭hV!8&'3{N1O=`B M DQ[C/cELFMv] ~H0$h2suhd P% B\̿&ힼG>9#j?~\:ұIÖ+$2yJ.gjb" eVrOK]x mԌ?ޘήNEòA&_b?kr􅕯WG;l꒢%Dv Sh [Xb\oZ-+)wh9lg0Μ4$k5DϯN1N_*VJGU;P +( d =%:3F7GѲYT^L]@3bxX.c{BB>XODϷ*Lԙ2P»$å^a%V׉\VRleM䁶LLl}m & XCrP$\U2yP0p}l-BljFy%)g@h@|-]& K `nU!3`Մf%+%Ъ[ec8SxHvW_ ʰTnV"FZ5~1cFQ̹=ʟgG5;/59f_ $G#15 qnǞO_K&9sΟ3O|xG/(%Er_^An]+TH$= X5wyUg Zm%R[mxx=y;Ҿ\t-y8Ԝqa߫qѽMN9}'dPs ];$rvu@I:\DND)c_i0GC}*2.3p@DOX@<a:ęiG{dTG*4]\>)r?13hqyx0 a} wrn +j1W('й!;V[!@?M{xKYTq72 4!X@٤Nң3;?2id~?TeoۭxsD/%lŮ))~x3~* 5bI 떪~w+gmÈC!);\@ vںѿ`l|M;Q`[3߰;JC-7tڮeOU m%LGY( v0M0g.oE>a^"))BNtD^̰=hn:.X,&5]os}4o1~E}΢y}yb؉0gz`Yhhv(Πy\;NE$Հt` ֘gƓ{.Z>O?*ՌvnHbp,jaUkuc'"h-WS+(Y}ϕ¬_F N_ ms AЧ@5K뛭Xe~ ւL{zuPDv"v~TQM|#" NrlnSzE3KTm1]J~v lptC ys.fl{%NJʼx^ ^;I7+$ôP.{d83V)a)'AWb dA%uf\“fWFVkO0˜iOPf_lOs!;aXM7?U.8;LѼ"KV/ "oZB@Mt3JkM>/uFp%mA &\X 78K+NGSBs?ѱS!CSxO!Njc?Eeڬf"HLrTRb1}>v;# Fl{P1$8/[7: Yڭe%_= A<3%Q$@1!`S ԓu*?b~RS9 )g^9K !@+C}0nDXgvֳxSi!O08DX*)%H Y_EP(PToSH(UԜ fɂ]|>4ʽеR)ÚM a%oNEHc!i|gUaRtZMПԼ=[ssy}޿sFARa@SPRe˩zxOJ@EB~`Ϩ>jx7? ݁c5[CۗXWAaZiYDZzZC և`k+e/Rgi YנPtT&]lr9Z4iL"ijz%3nQ] ڹOs S7I9 ]AUK&Qxiz)W\>]" .%NrTҷB,M'[$zبʡȳ4wO\jZ"u'o~eD(]#5&J0tvT\SOנMR(n鲌3h[IAZ1n(B/sds\ À ꋄ=IKQUWDrsN*)6%q]eVxpqj% h::m<^!l{tﭘe'q5>mP6f6nV29dTpGJXK&$=lhzuN 0oyƘpgW.)iI]Z.A k2WEZ.oS$%RU/>zw.5P;C+>*mgB ٌrF1kMYƾQbY@{00>0wD&vD&γM[g;ZjSA"k>Θ|AKwdVԎZkM )=>+L?yeȍ~W_ cLȯA= ~j v]61s2ḓJfN ?D=pオi`x3VRl1j(V.)t;h8;dG ѐޣia81uvUQC* ` >ǰ8fhC{~yzu9;Rˁmz8vq]jA/Su_%)4GѫV%1'vU0Ri1 6lɊHO.PfFw5Ø˭y|%ƋWyVoX" W3=.2kè|PfsZ׎vn^utht8K)] MJ5xѢ{x[{F=V aTQJK96PO.’@[,)G=~2OtgE2'JȖ8io0׾L6[;Qpb-D22`ě ("UaR4tڪ( 0 yk!n)kmaO<@葠R|kO1 % 9q"?6[EC \FcQu>^ "E Gf(ڹu/mS_D Mf NZ: P T&m:!Tp|\E }L=ZRiId~7/x#{GqFE4:P&0臺ڻ  ;3omڟVPFW "lKBI;| a!$q,鯡b_(ux1]-FQ8P}`o`XU4:ܥ0P,.{W

ra!{L~~0Hc'9G T3|i6R3C>WI y8] m J"m aF߭"2lDnw|8f*Rs#J&GE"oHPefhq'CDG ^DF8{S>dz[ '-4,YTf4-z3a.`Wf+NH11\֏8@RhuL?αWhИ3 ^-%2Ra;ǘk嫀^5);u|2VK%KRÛz`7[ݓ) ՒiK>%f jA7!SAM9;M5fSs0oBϏ%zQ=C$`n5ZXE}2epWUDgGgHZߨ๢MwőW lu^O;e=~m^*8K.P`l;V2(W¾hJVoma{\ͼ(bp@u }rL@zkBmRu"y~uc9W>DE^/fe}ˣBڳ*[!+ ^sBc/;gyr8%9T4j׀N@ġ`[8ڳm*)?՛l՗xϜaA;*z3qo)C~-3tT78rsUc9ضǮTk<:Mf35gƃპ,m) JX:dEr#3si%(leX?<a 2ؒ6E`OvdƄn&"&#udR:U"SҤWsݴ`y.Ij_;j`/^TFbٮ\u$./nOmKF2L=3򙮲^TCjtf^ 2__vgiFC}x_1T*<:} a˼'p[1!P=s.6`V" u^ݿg^xMX6$?Xً\o[MqQ49spfZ8k] =X\>IJKr}*T9ū+iuHZi4HSkFe!72QHhoyg;4͋jd]0cVJ4.̸ꯦ7\Ot8`4th42XB@w"M @vTf o7Gheycڌ`hvceeӟid].MyLCh? d,kwV=vNSD T\]}QsXBTT Y*H~?ۺGٻ^FڰtR{UXY!T~pkEO9a^i˕Z^'PBm6(pQ=tT#Kޢ#c б_BCL%'tMi^fP^SkshǗ +n|- /ds Qd=ǡi$BP_&myPׁ758u]n=1,*")ma>WO#b7C@)$dykc| Çzq̣ş %/f91ɗY7HP'߆(jK٤+QVJGBֈWɝ09TVduq5",PƕJoQ0s|-N,rIϥʃY>xğ0OϨ9xGǂWZ ;ݤtʨ #@6?>zz}h' QD `X U) rov#{bt!ڼxBaԃޟjaA԰tX@G.ȗ09b Tą|I󗘽w2[L5UחI&BG<1?rY%\2,JUgP60DwA@G0260AT{YRPAkb'}w %SoGb?}S܄dUBOTg؊rC Aq").s H9NuTUҮJ J- hBRkzMKƅq/ZUl/ ɍ+Y=Nl30)relX A,QW']j2֏KXb$t*7ȧ'}՘Zp3~r|1j~:噇6C9z|Kxl{Np]jӭ66-#*'CTϪhGB$]=F⬇Ux7MNkya/]QO@1MUA VZѤQfH(+؊$(XcWcF+{-Pcj`'l89a^\;}wYS¶QLh**|Lro?,퐯& k~ZƵA࠮"iRkRU `=#X*쇰,U0 ^r*~Lɘ|nV7j{n< κ{3Ɨc "C P_Ր'e*  lН37٤MݣT =byXTR ȩp\gU:*cj-t ?1;y%lo5R/$m):=޽SN\;Qԟ eEH5X7[լ}Ժ(eW& Ps[tPW5Kev" V> {)r"ULms7D]p5{U@3^]?g,6Qy5VCw_!;*Ê4|E~UʨtЭjZĖ~.7p8AP%L-}/t,AYsweR ZpJ ch詪K_sE&!QK+{ ^ D|I;zU.dض`0& y_inr1 ת(dTSuq.)!%r-qؙr'~Afm/VkίTx|P.>(jB)ft^;omkcz4k]ojcFaxhKnqNI8(,-UW:cXvK7yY,:M Jn{1ey_Ja>oNO> |]${0io#s]O5jIZ3Ro-HշdA&-ƠڙfiLWK:&`JXZh<&,88 $̑_J3g|4+8!08T}Ϫ#ȉt|UK `AM'z'cy)帙u2fi0Ө픈S_jjȴ v WnuE&HeYSn,׺u3wh}lll?X2Tgvo^u b^x]Xq׷~SejCCQY(K׌6)hX[&NьyS;I_-v|&RߏR@;ShW0(KmGz#*hVs\⎤4Wc]HU2ъc\h9Jb|٤$xXFD=nF#kYav v_L8G;ɮvrO_b?{ 98|,q) ҿSj0_Ʉmʫ;]:yx}>tqzzs݆kݎ|ߒ'](k2MksRTL5f2R{\Dr)ǹ[>vil9Yvx8nV{+Noθ] , d`g`$%f袧F\oM}5Dk`"?j_7r oZ(ؤXr [-V?ka ȩRXIsχw4][8獶pN@q5L꼗 wT^13)GC8JIokUy'HKh aIp`)D,܆KY̷ Lbǎ3 .{ L/ Ypt0gX.|a q֩kH'/߮& e8,JPJ^0/$O} ,$@6#/ s ]WJR-;`$\prq~ }ݶZq?4k:@[$dt?HޚQ1++xDb̟M OFjbߺ֧[޽S?5$>rp뽢-,w 9+q^GUO E?%6ҲMkŔKHbyRE8Ʊt ȕgc9@A2Q4,fqLߟgW8u(&|f~[_5]kRg Bwf1]#:E:lJ/Ӗ`}d _z]QPp1-~1/\zbhǾw-!CQ!"» !U6?;\Б.ڜ%4~I D>蹤6sw_]M[V,ė[^|_`/ӢmPǸ[YAP ? GwkTiŬ&EUuyQ8yXbTmp[45fjq2-7/3n>G:toa6Uo 5H )>$ڊ5UϿj/Ge.mC+;v<?lDQLy k$%X4{%(/lNFķ<'MԵ&YC=?ڝFܩS=R$mm,㯽mkdKDo0H~yQ"0c̖ :[&|x%R!Ą gQj*)DbCY@r$N &?T]=ë5LDCgH1}orz=%sBɋsW*o_vjM `ђYNfb2FZmfs j] Ks>/3ME1(»HxzY|ѡrm#iimCh &J̕VCHL{LbtC܆{dv#Z%4m| pwq?L7>alx:wrx_ &6!wQ2E<ۭHQsS^&H_1}^P>vi?E:FSm_`B|i sr0J%^ZT ,*SPu2?p-&r!*R$b C?OVcBjGǔ-7n_C0 &-( -n 3N.tKx) c~3M-f;qZ.;_U0Ê"32ꆓ#cĊ6|!tD{b?ϐΖ`k@.|0+JQ38A43F_#tbi?VC+è<Iti Cu C$~ v爈L5^~zSh} k,nV \ę LD^{i y%yv-X9lWAtsBi~zQ]Q 2e53qZ32aȬ:,tH,4 cwzEt nqtLyM)bt24C*ҷa߶4aRݘ`g8ΆhM} hp,+=qGzؤSTe UEhUԵ<$@/AXrs'N=?)/o w'fADlpnWNbhUhiU42`xAڭ0E`2߷ s]30ںB)XS*" /] `L(x^\[r8.ba<9P ķhծR*+Sm-KHk[Uc娭Mb\MR8kv跲:_C\ܣ>p4akM0JrGҳG pra /aɧ |l9W*)[\ۙԇۛIfhW='8'+9ܯ4g>鲺v.8d#L W-&9|p$#apmťs'(!:=A`!?-netN(¢cZֹҝ]G|6B!{-j۽@'lissbN_6-VЏN"n%[iuK*>eavw֌Mo ȸ_&gs04jY\;c薖P)LqC&hY䛤Gmq\Ec/ uy-%rRyFoe*6yd.]zˇ2#n\7t$yF掯D 6&^OX5IQ\u΍F}O:iE6cwC)N;g僘P6'h8c]5PIM@tV[Z$zhg̨LtY\薄vWD+ .XT+7B9;g}@4}<@ٰ>\%ʉ._=h:PcSV Jg*lBGr緁9!]Tc + 8Rf1y.38>88}2`T}nn= Dv7vom;6Ԇp{JX,hlXG 4as{E8,^e=Pl&38V1ԸXHEh̲0$OV0QylVT~Flp-P 1ȜkV'Fh}N8W3k4 |Z(n+%`AtԻ ^6(&fH+d-L;W;3J"$dJGx<]vZ O'Q@H0˫0P!ob.Y52&yӔ?B8oWDe*絸f+~ue,n댗qc\:@Bh7J^x5ye$晢w?-V y6O>o᪭q_J@BB+hly|ͣBOFU@H=b/5$_YɊ=.4=WɑB(|X;%طN (pkqgrUߤ # kh/"r[h);bAY]hek_ڬQ.!<;54R{ ByYa嶵0N{ꆠYOoT^DS2C?]ǔs&]\_{v]@G)!4^\"{e?Dt٬.DfVh]EbÏf<7bR)C`.i\B ڿOߙ랋Zt| B'žsQ̧x񁣔a,!I+' x9  .s^:VhO {}ܑdF V#\ЭeNpo[c[e' 2fuJ]K_66(#lA,wF0P?`+@_Ǖ e=:lBlW@?Cd[kGZ@H I+'soeUF ,%XOVb :_*]W]GbaɖZfaY9p e vˑwv]@5AmcG044#^yT HJl`lA٦(Ylwټ >K6N݇L΍l@F>zE_eu  G#g,u@µM$V2pxo~)A`3f"kd`ľB/1,۫6x]nӨ]};n2ij m&qX+ _U ?DJ;utĠԮ cR6ן rG#%No{PRӵF5ۤE}Ɵ2qEG{EV(`"T3_Ux<[޹yNVߩcTXW ~Q g%7Ne}*@NGN(Ĩ&Rj8s8o\L["q lbFj[ΕNP~)T':ON&/H\s TݑAo |H@E0 HU# /( g]c39<̈$~[v(ML(D3ݮwTzlj=KdOLN7ʀlc'}жb@^0ƀ>Qۇg֮ -4(l&3 Z[=}S2lgW;) 8锃'ZDڌjnB&<(V蝬jgIRfO|BQ l"T #U%!e!\^$x.MCS? @D^ R^ZRU*a(B?bRKm=sx}'Ou3e=ZvHtx/#B5~ {ښp L͛SHJ23Ι eslGCG ݁}Rs9kioB\Bz޳[i6%AYUjO9ӳsԇ7Q{}ƕ:zLg1Nv8;[95A;4kV>/"WPnm\n([0[`aRY؅õDaTh9@)?djۏ(4?;pHMuA;47/|~9vԔ1 ,nN2k)t$R@~,WNeN~p=h{m4WPa<[=yZl-1*R:,ѳdaUZ1B!*.ZFmj@*;?7`̜QP{%Yq8jżxM69G1"Js*NE)C1gXPUƢ:X2JZM:? ~j]fmC :+zȓ9LJ+H2ތ ,Tv-B 4۴+}ӸCg4ovF -rp,4 (#K 0IwI"FClu"}Q10]Og L҉_LjmGE0ZxӡS qU[ҫN5}A?ډKʉ-cA"nP*`̐g#VC{P 7jPfFuPC *9J~ & B3g*^i 50A#'os(S tJ.@Oqod+q&G U4<1kIdm^5.SҿXk)F?`Z޳o^ye28MROFe-ߍ>%{` Z_ AK#Ŷf*4w B\TՆc.E,? ץG{Du'R3x}jbOVz9wp0GF#P tx3du!hrn@!հrrwuu/`(g"@y|J[j,N ^JQOD;Na+}(”>C(VDV/*HR YM[I;=V- ||v7#3٭0}CױӤc^g8،%O+7mi=8&7W%<4}84gSKT膖%q/ݎ$^S1/Dq>!pEIoAR|R(XYTs/͕0c.P4ս@O;xa\.B),=fi1y0heO X(@yf:v ^5ƾgS ;֯0U %%r䬋x" @B&MInއʗӿEGM`%ey+Xer)c$'c}|4e)?w4dpcpԪ]؃JYX&G+"mI 5Qr;u'>ZNJ*j+fU'ֺk3ʸ%e5ՕB0%`xPo2š_Ď# ܰ:p^on[avBR>]rrDj%TZբVPD*(/l_՘18f'ypA0w?!=~ Hz 9k+߿ Bu9{(Q 9u儕-Nkypgtٞ9//W 3fEq(3qk]jzzd*Eg?kdg[dk^UouQFvxg[Oy*8F 8< a=2I͠LJq?ڽדmПS<[9ti&|E0TZkxx BMI-C.x3W|+81msP2#ESu`b u=!ؔgBs-`\nMogAD@۠[, 'LGrX9J6\2[W:J"TZw v'C [3:XP4z| j6ZnΏCa^0y pp8^AZ$%@*?eHTV3o*i*c闿8.?fRyc_õGiH@2 ` @f35]pL|!(Y@'cX@7 cjn[1#d6loܚ̯B&dwt_"C6ѵ6^+Gxz#D1n۽p0]:xvzwd>y)e'WZ|^r2O\-A#سBOǐI=4OAO#n?О7GqnCp~fqR#:|ZTmxfYI;d u]ߩ{v!WͨeD ]YqyW@ȨJUޝ h[b6!%&BrX1M',-O5w Tƛ)'_[ac $8AgniКv.2a3;t'xX~3yPԐekɷ[u#ht P>H͒&ęy{3%׺H}p%򟨑:簫  &~MOe9*~8 ̘9>G%!-y BݘH=*_ /G\ ,U@(,cL@׌'~NKa_8XJ? 4`|EcIySW^ґb%:dq(< > >4ǔ)Vy_:fAX(iGI$Ƃ%RwuT2V]]rToEcp?YmPݏV`X1VLmh4 YsoRY'[?Rj)t`D aݶ2Vuêf U(mΞm %4$N~aF }ǪWJr%Fى)QDKl.陂O BF;Ke ی  " qKX1 D[7,OR]u0BT/ kXm[un+ C#Q?#%OWnBJHyK)}i?{V˱ i]ѴWJ~9;Qdft i#ARp|z3/2gP>OxB X l*-" it}RB"u]d}KCD@IM 0!v%76v_,b-wIL򣙵]`÷&/rzG4 Y,3zE:?kF9jJBj4nd:'#5rkĬX )Dݱ$s/Jv (̥s=Y9?|8y60Bq9]%a1i >ǷkfNg!(%1.ƫMYI UP#CQ7jky0kd;-;衶e"MRƌñy&:F_V#uQ@\\ R6n.8eˆJ)(#G/Bud%'2dr+δ2P*݋ɢˣ7H캑`{>Jt] $M`#8}wR5򪐜$~0^̉uazO> :51Xll|~WR1\VҞ0Ԧ"^yc,.6bC.[O[B60~btt<=Htt kSQ|+G(]T>n7G5%o)~m)?(v,N$C2$~Id,ZoUHҖ6@8^1]V؈Y @xV * j_A N @s.fMs4*^8<^iMqOu+?x KOLBub^]u a`x,/Ř$%K0(60PWz \E;c)%a50 ߱6ʣU:e0NJFI~m-rsEIc&ULL ~*$ўA.f+5`5ucyopeRֹb=ρHP +BQ xb!-DFϝЋE(e ;GOtDܹ \$;*Qu}?ēr,C@[M{Hj!yIQf󪺍|$ώ-/a:[T$tD 4k ˁz׬dt" vM[.QϣS`D+?^+3D:ʐ4stJ NzxVP3y復})dqye@wz U-(_naR1fĮ*:4+ ?qyȰ8XHZ+o8 Фt94΋)64(d&ɮf{9a6žIGcylm9,C~^VDBSͺm'Jbu"%揬̵Q6ͦr$[|À8TJbԧ;M7kazp^B:ڎ& i2KˉNK;WZg<JfB2 )e`#%d<ÁXMHYSgGzD"#8)}Bs:N]fu1R9Ԃ5M= S+=V8'Ӆ,*TMkg rs;28RbjHRǟ`l9((P3{ſg*VԬ^Y_Zѥw\  *.AE;|E u56!]QZ v {>#:s0{(6e!|ȗ YFм[j}K,>YYl%O+kEFNt/LCs^N~HQ=|uQ*Oy>~E$P ٹg,ȕ{}+0DBn@ТMjTŊ*T/>D0 n=z=dQKD./$J|eӒnG_) zҒ+"$熞~<>7 ~E_=*qyR 4Tҫz_AE3]al MtTV۸jrTP77 Gs "~u'<:֥`sggؠyh᎛^Ȩބ%N+!@0. V::_ޣ+Nh#%}=% ѓ8a;AX 녓6SeLe#bv 8n9X9mBoN1oDrχݺKS0U4TWAN7 LXC%Te#驋]l:lV벤VB6S+d FciO!.o.CoZ+ɿ+[mғ֡C8Ky@Ԁ ށ2b89]<ەy&FRI?W'7 GyCGТՓϾm:5W_e[:rle?_̋VS{4WTqg \ǵVfvӕ:6ELSTH ,Wr0\%^Nد'm+5Q_>X:#vDN~`dk8Ra(Tsi- e |obyZqD_r!D:jbu? U}?[ ;x|m[ATxqh0k'pp1[FQ޷s~-l= nsY30`k/%8?=Z,޸T})'-욤Hxk7uo)Y"E]Z)@DMN֐RH8E͑8Qľ&a&Il~xCɲvp63S~Œd?LF()o H;&F2DWl96foWSr0] d_z~&vBoV7da`lm]F}v[=.ˉxÞ&@7T|W>%.,|+Ͷk8 Xz;s3g@ɘLrqwƕ,v!4!UUHnO e.*e'ȃvw {։., su, 'AXV`J=0*J#<هV0tHM_TVE"<sgsIU(Yd>WtVakp¯3)6NWXQ DfGmoLRGkd|G(].5?:D{Fn"lBidmkB9}c¸GߢƟ&̷p8H= -C ;R 7x`^<6z /<|b q:0Y%`?W!Rqs6[n" :TY0Z#rM"/e=' 6N:Lh]{fd=~(RoHqGU%hΩm4ƪsN Or0^#W iͪv(~!MO_rӱ]gtoth%uM-Սus=px#8&`PE i CK']]z"PPgԗR5?y0#1/z{R;D.iS9& 8sw<N% D ]|ŷ/Q+K0=߹ w|zOE1] a͇`)~^pգW1R d͗N4&@};+j;rzRC%'爼iĻn SG)zÒHzs掑 32 0h/ʤ _:ڣX7`z( 0B@g!5 [6s t;_9@(4e{ߚ*|BeQϔi.lNg-ʧsO|Ŭa7 ,bh lhMr5Ou闽Gl&dvkF{ѐ|ZZQI;n ؘ&?6pW=航Ėu'x "RaaQ8^'"]3T^?]"6|$k,; srӳoP I&$ru,ɟrRCqTh iRnũHAkxjҦ kdP!#7yԖqԂ:/* xsu)Mq0H +.ERoCGa/{'6S*w0{ W|_ٻtJ&u>sH{( :SJZ2^/ \cs-PެCHByE[=>GliQ<էN砵+vۄ䓨G̶|1Bܟ[!rbia 6Yk'fLGN)a.x+Yаn5q(IO&hrcO6"\LDkȕ[0g{44nҿ>`~^5n?m07`,aϩ~}v!D%VvZN}-jP ]gPo2`X-JNԛ0݁DdH@P~4j{,}/Z= 䅒 MQU#A'x \-(dCxj0lt-izo+.OTȖ|Õb)D>`>bcJڔpnS.akb) l0bs^bQdu)=4k=Cu廫;fQ9ɟfzve Uhyf4à2%Z%^E|:YPt* wgcrXj. M+M*2[ dͺ VX^abh.^״Gs2u7_bL]qPH=N qS|p A5\g PcQi[=f r{C2 1y~K 2)LsbL^,}tV2tLެ*FfF 6ӶLY N^(ϥddj?,ĕM Z޾h꿡MlPt/ԟ^"nY&sdV^x92]^J=2 Ie'7WuQG7).=TG:8|} vqתj o6,G犙X  +Q;a(7J/ K3rvwR DP"礒;pY}1Ǫw6R}x-RfB 7e 5 Yu> &l3/ $n(k3 Uռ2EN/ʌ,«cOVUA*ړQe4uT}YqQ뺄"P*('9( Q"x؁dJ.W[֎k*)b (\7*r!G^,!{I1ܳ7њVDtA5,o~jZ8^"b tgR9`k uc X{OR"3bXFGϾoWp` 4E^ 5TO&P}^ 〽qe|+4 bPPK< ~-{gUMqx#GɨEYULѱbόOc=<b0YﴍJP_ =>7%Oj퍌NCZ+푙-NB xϪ1ybs"o3G*V2ld.Ӆ&2nH/Ǘ0Uow"8Cwvd92֩B*(;٬B` 8sr]c9:G%4J6:v,dDU*҈琦Jsfxo*);醑GBR @>lZ)N`ѸSyag2]cQZWѴAvXL( l}1#dZrhJ9Ɂ.è&͎n6VTrVˋ.cr0lia?Z_ #Kg#hRر=8$[Hm䑺zYg`=K7@ficW0 y+=4B#H{/ GLa#/-Y&aڼ2Φ{{jԀux۹3+R2`wIJCX/333+2BOVz%`:xS;WW+|^(-JQ[!\<;cX<8Y ϮO7U_ZR>sT%XjVڽ^cat49746u+Ne|$>e}b|wߗ9gʸ_{Pb !3McT`aάGJ<^A^܊5Yˮ f~k">#Ǫm$;ԩ;]PA9n &JQNBJɕVQVFd) 3#HV.`Y>iUwB9ދ^1҆V: J:bp-Fym/]"7:-Z(G+<* pZmR ph |]v֘hlb슎@_d?:=^G^JD*1=m*%y@?=Ɍ M`G0#kkpi^K$X$(<ѣ917NL)Y|evH]͜wFk$ھAW0[.GEUGMسXz t =2 熁 "\b/a `f%-<ZZ(l;K\T0J#-ƣjGٗtŠK+1ww/lK>t2euL8{15pPfӨM@FߣNeIO q6ԈF{UV.:l';,~O.0zp,N\w;w)IR4 3#Vo<{;ծ>o)ssǪ:ʦ- FӦXPȔncjTRɎ;lUfF .c-O!d}MZv><֡:ڀ~+1@ s>^$)+k^T$НT%KP= nȷzҙqj'si#(I=fg˗АexH7m( "'sk@TI߿G|1jfYj AH:z uxuGвzQhQYXUk ݇*(l*5>[ SDḞMͅR(TS\9j-/9-,\2`qx~506`SLBn~vd^=TnbUueT8ǘ6 ՜5![r8c#PKź*,.BO NݮlϻW=l+IU4L`~;EkFD/sUQ٥ك y`qbJ"$W?A_`tuCP,O_gM6{VKT:#]j.%ff,Uڦ3#2_.8Bۮ$Ww% KP;;U0G7ntn$P[wNC~H]R?-<<;\k+MFmQm%wf% ,=ʸPgMܞC,uRϔJxC1s]j{?\ \S쐧^ N=cMC>Zxz 9\[8eKEeV1،>͉.?AlA+{9p%dFlԭN;[aT^ =n a3WNC DE^ma5!RMHT܆:fRy/7}3Ml455UUk9k3evU+7JwXjR9n!l$&UۖVl_vެxҽm1hc'qDݞ3WX=w'i9}[dkh6;X[b@iOt2=擩2ŁU: ZO? qo|,p;!tZ.11i˹s)5Mx4`"^Oe.Cv_%xh&֔bOsg LEt[,&5^ X $۶O̲J%y3x}{#_SJt٭Ժ^ksy 1|yn8#rH/zs^" L}Ko9.v$13$2Ml@jBb$|/#)fV%s~K*.eZ8&NI0gà\P3^$gԮDʙɞY뮓*b?2F#z˿1#@qߟL4yks ?ߢ<S*ކ˱I qP?Q <1|@O[/;N6u5M=2#+$MS`?qH\ncm&ε %{*߼r'vxt qׅ`^i6 ȶ_{ x ˋ$Nzl"jȭA;AF?#58+dqWًkcC+p2$e L d*J<QUHk-35W0yf$hJPrߔSazh:MS))IGiKۼ<ܐĀ Zbח|⬘ G<4I^7%n^CqݮAJł({oĀixU^kGƑR|8g!F` @7PnCM9uTjKBӈ 9hS$ ;.ī;MxyW@RIs=xKT;`a,.,hZTDz_aM+*R7a\:6ͭteJԍDe,NGςzHݣu"Hs ȏ|'۠v?!VfӰF# rU« /!N3/` \Gl fDI 'Nj4MBzL BTS$A/flkgc]G2~BQADhS0֎r=ה#bODeV8jF麗? wIT0(㰺_l?MěZy)q{oE3n5pcE.;%^{Ē@ +|~x\*nnm299j]/ܪhېw>TB_yI`JOo|KcTtNvOKI#/h6t)8 7/F:7`n(Cc)*ķZԒ~h<++;xf>FNah Y]z![6v0ի3K&{ |7m`oR<tyHP*ܹQ&9,̰,ADC!%؉f6l|zu\ēV%zN~.V\PŐgm9UA>zD ]c^w|܏fauovtB82y#ivmznx ݉_p{CѳCU_֕E:;M8)ԍPZ 貄G8t 3?yG ٭ǜn{+&ȋC&bT7;P,ix `ĩ9xq oS}O_#,IV@l":\evT2}k^fCZ$`G[1m{W{[~^$?RAPPB }O]5Qz^V EK?rlrN;:v"=Tk]ߛ/@I*XLGm⩵%' c꼼-}ջ`[ Q97-&3N%݃ߞG…/(zsR% ;t~=?vaBv; DDDY5)R O(X*P4{;,/:H=/9쮡~ zUXx>XWOvܖ V\5qGfԩ6j7Uv[weM>R tC,7ʔ&ёrYDz簘"t fe){B _7Hy6 (o@"KϰCy^kF0IIpX|-$s~}%H gl,Fqn~?+_J\y窈* J` Q31 XzP)<n5=3nC7=B^ɀ7~ƯOfWR- 6zӫT 8:c쉷YQy{#8"-x`0tu(԰i= ^_l,qicdt/m# 'lY:X5ghn[9hI&9.ңFMѩ.6bՊ KoO$  ٔ2 h RtF1K O6>:Y/!y фT֪*Do9;*Z$&U]FBKߑ0>@4ޛP%Llus/xd ،3th-za 3At5P^,P:9s,#0|-^p~5)kyhuƎ+fcđv(,vߢ-EVmhܗ䅰ըKV!PZ(vD\f&[4ޞ,ɱ{XL.)Nڢ7yEJz)>љ(ٹ6k/`S fДC&VǽF*(%C@&FYWÀe$()tlO(%R5 dvm$N{}\o*GydUUWɇObB fyL^4ƞz4`ꉠUs+ kVB,3Et*P7>JiNXͭN4<lF o"f pef^=Ɛƪ vnsd -7喤5.[AlQ#]ʚ6O`R 0*nn WRN} ]`-qݞ[ÏHGxP+U9zci컒]r@4N֚\roQ/wĸB}VtRMODOmQbbԞ \=侬4K߼S5!;jk a{k Sk4C3kUgq;Adl:ZxPi t3dϏ(aeP||/d0wP"o`sD.h[1\y-%'hI]cM\ҧbǙҜv:KE6/.jۺ~,zځvlQXy9b?SeSϠ} "Cn͊hTA~c+5 ӫ,ׅ§[`t4~qՉM6;`T'"c3z݈.f'MC`?"u"D؀Nn;$$pxs0XгG k"c P O'FF #]P"D>[mS^Y͛G PH9'.Z\ 2GQo J;j DZJukArʑO$ۀ0ZZAPM3B17KJOx1(+5&PsZQ6c @jkŸ50=4U^{6|$B$͡@wI N;*4JS{( ,z Oʙ ):TsRl,C NѠUDE!杆oJAI2>7~Aa#[/D3o!F%Cuwfdz?KL  b=+2b +I"1~T y +)̼,<-И/ " :Of Vy.yX2=G$1pfu6Zםg1/13.Pswh[dA~(R4K%{s4:;SYwʞ%ߩS\Ny$Q_H#_kzʫN!>Y˟o8-B_Rqsk<β.r- 9Ĥ0a `dZbt֘I2*U:4o$Wob#hMj/5n H `*eC=(r~mЗK`i|57NjBij݄n7>D)?B9alł$ ȠbO#01ٜY}Nl~ĺ"y{`lelmyִ'ۿ#xw@(] )`$yn&ۻK?PGm&D0`$ v9S?3QUGzֳՌ^!a\5E;C{%%b2]?)q%([=2_wG5dd;Ldԣn@9 QͤRMְ2C yft4G6l$a+ Q޾lMm`]>}9(>VVjpOL=7$-o qF4)mEj/5L]&v)ayUmщxx|1`- NTѰ5qG>3^Ljb+hD^:;3W RGI+I+'/-x3֪2)rU*]蒖JdR; B}oH 80.xZOc6m^I/쯨X3O} 31e?@ڼ]CG'}*GXg=.nm''Kf fA>cJv s;\=$ _GL8W̔ʮs⍁dFrRNn%U-ny-} iN3/F,qߌAl[6zz"ZO'Цa|Y][]1H#ZSf-4g6QJx'73儍#Gr6 Tc4+h`DwoE:&PU)g/&"tc 'Y"73zvL@3qA[}gKaljc=*gV5Z6#O_7rj rXkwbw֧BD6E^t?)$>X! nS *pbbEVob_w3|WJ:ăJW%vF) OT'2NjpZ8QӦ40 {RaA)A m V˒2le(<d[',%+r7}&VǠ]u Hd e 3 kIλa3hxUp<\f;Oj'0e(}y UulL\b2HV_*[Av;b׏[.'aV5m?lQ{&9]km7.2BvGq MƎd NL /'q?F¹b?4! tfI-k%hdň6$,e/|s, [J1=>#pmdW#:E=)8J2N) -[fZ,|Ϣ")}v,ät 975@WKɳKy4iAfφ:HFNM镲GT 9 <VsZɝ3$AYjet̪$Kx̄f$о1X@K?FƘVҬJ(&C ?%xB3Cuͣ'ۮBq{I>uljW Φ<$c|G۾Ml!Q4/|T[,{ dZ݄WlZ_,]xx@Zi=a4:He,*׳f-!lF}ah?7oQA}?Yq@@^!1DGW}&I N6:*?3z䄁ُmIhQX6`)4֍:;Mt1l!/[E@Π8,5I= b\X%ѹEl⒱(siAXV L`V& CdUHp6qHX1sMnE`7qJ>|6X= siwiC}T8م]B)J&&ߤ\ 9ơo E#(FXVe$YnÔjV6,αu:jޙp5%4] ƻ8ygO Yb{HKcP ƑVmTHM$ʤ:˾TY^]C EG/;2/m#NNc9 jX5M}C1)9-a۰J3(jP[`84U=!ѿND(-*T[qH޶dSÝ7`a+B!M|v[XLݫ[jp Prf r>8Wome4T*]Yך+J!]Um W(~ojLdrLvqXg1αע]B1иFyW i8φ \#wRagYqUWj놌I|#u kU#];Qj 31iX j 2SG]]>u#op>l*v?D%c$| aɇ r=?έD=-[@)gR!%nh|>!\VSI ]{i #*uxj֤IxŖdZ8ߊBf/7 #xYK a\΄or7TIel AʚRma ~)8o; /nj  {ܯ=0]z-c=a{ 7quňU1Fr c;O%J @80$։.I^^8lꁱ:Ji}L?,4;>ʘa.2 ;ow@(TmAcߒ-scy?5fu=þ%ĥAɃ%q(pLTJ}Gizi& ̆B&IHY^/ϟNY{)Bc?Dnhs ~?y6g iF|8 >X Wg$,HիЌ\ǔȳi!r AJX[$r?Jk*HݙrR&  o^\"HF;pIJ7K(oQ1k[<C[is^eݏreou6;Oa\yBa wjȔ\bj!pV 0RvѢL 84sVX-0&g@&*7`Mfd udUH40|H? VmpcgeKNT\@fuܝ* 5n'.r.~@E T!bP k)=7($ABaȿ1dacGVzO4(L(3T Dld-ѦytAǘ[]cUf X2D/dL0'8@<02{嘶յmDS0틚_.3Np3 ~O$YBJS=d&a ]i|^'t!ZjZ@K@*:fr"`<)9+qgb^RꎩU " gӹplN2cDNHO'Mb\zBb@؇}ileb)k_Rʎ{hѕC5"jBr/Ӈ+zv:)WEi>ռh8b&A޴2ZO3ggh[\ [/W}~3TÅ(Uo倀?1r|GYFlbp3i| U~/#AXQ?8tUF؁[&?ijs~ҫROD:,#[q6 ƞdyaTG=y^,nDr\6Ɛǯ W[I84yJak34{k{h 妤Ocw9P:R h$ll#yjf>~qd!san&?elE&{G㺺SIBC=Ab?l`V|ҿ|ԋYnsk~PdݴXLܽ AzghS\s F:M6푃0HҺf #&~hC΢S%}1X= Fr9 ;#c02 KvT7B}T&QT) >~3Or("e<%J~l2V |PS؋]/N2s,nH]dqS<}[ˮᜠt1s?~.lRJz}:w_)R6NM vD6CTz3×]pdq@UkD VnOC-Z'FPkJHa@!i 9 }Jǫ>ڦ aCȉ6tI"W;s-ָ " ͦvnt(ϴ[ydϰ߃a|wSR‡hT*|Jc3,کmy͵ZKޑ:e#q=Xj )@m N5s8V )G_:p"hT7rz֡ `K KNX`FoFJAMqa@N$Ukc+K qԀl3Y QrsH[xh.鑷0|`W D؍ r -=3"U4w}܋b!yߘ^{Fr%p,&<'rw{}V1B#-<)n_.:`FI&"7z LB=RfR\lNlF$o[ttjaK8̬2A)X ~ ޣ|OPdۋv;J|9ˆ7U!.1>__D8V-V u$iz[|rĘ9c`Q[Bujrf@C uN\`(oܘQ5ҝN*Jd6&κz9’WQ3*V6iԭYx5Fwʓ1~~Ex!\Kc0Uvz=h;i4*GTƔM@1V{Mp}h­/tP̛+#\~=DXhS%il2WoSüO+9O4NFcuը^!V֩kircW$RF}Ě0:"E u _q`;PzJ"9pcωܔ;ذTwmLZ(Mm·ݍA,R_f:nLٻpjc$3 b󨓤_.` P? kvCu2q.OU;1s㚩%գ$kPېx4]|Vu zibDei G.\$l|ce:~^fuU ZA`|u8dE 8[\ȼ.f[*_ #$ Ӿ{1/DŽ94m -Zz<5;:FRU17i )XoM9FCZ)0{J6"dF]Y%<(I&Ϲӄ܄#SOŲyvJDڬ_./EGB5,@$_E/,2xMB;5#jlҦYE&]k•s)Vk{=h*ۑN9s wJ־1 Y~.F!e`FG PٌպԐ(Hw ѫʝ,s. Q2+ 203Gq Y— k7k, TfPGwUyOk ށhdv{2oT㦫u9qT޾ZkԡLTOѠzbʜ F!-M%#-CrVdkҳko3ڥ:n_jA[ctv DlGjС2SQ]:YIYX:Dʅ7AE$)<9T9]`o"aD1TT%޾ODBݝf/;N_ a%4PꙌ$! PBd:r&;HAjf)GDDB+*BԺ!8R'o8M|+HGTqPkt#g1.Y=݊<$1鹄gg(uz㐠=W:=PB*/*0a|$ ԫ;B ֭C+"'xU9@.}}&!@J;z!]rq@; F }ӕTBGS#en\1/ +?c1Cj1TvUcKD!F{jJ&#==!Z)7g8!%1XT驢[A $l=xnJkbJ+49#yXPڷmU3u\]N,WAD C aRqZb{1ٝ '^mCyb<їerXS&هL#m >DRp4f8(Qan k?-A&w1eT=ym_`1Y^yg/_[Z<&=j^Grʰa pw ;M!?NR$6^#Pf?1 Xfq]ڦ?Yy'*d U n#a`՘@ڀ.*`b7"i7>h-л~qcCSD;qFJs0 l(QJzlx ! W /] O۝j%䠪DTA_~;1B*5_9~u`o~@6 ~mew;HM2FX7i&*hwIpTSnS%H mv~T gΖCfHr&#澮WvPvsbLsFؔϛaf refyK];Zg<.*5p` 1?y35#¯EDRI'C > )xxﵝȶN 8KS- tig9ayB\\qhI ݼq]hj*Cԫ)!z߿v4eTkeVTs6>J bW sh5dyh'2 k'8?)q>/y<6_W|y?0l+< :hͰw+;^o;ڤ ΆtXĦrކL!"yIG!wt5qY)68~_A` "[IKGe)6K zVUmR?LZKt~w|D$;}v|:<)ɐ?QDxD;%AjDhKr=3Gy`v d7Vz$W=\k:D`B!@ִWU[þF``?@ *K Ceߕu)~4tV U ݀`mXD5otJ\zKJhK''BW(+\WhcrDi-!<.yfYC-U4P6klⶃi _:9nm/5ק<8gܬ'ƜeEuÒmn} Nrۄ^J9qޗXdP$;hh꾉Ϗ~^AՏCtt-GMB@}z'nЭAW=^K-gi^IЁ7;`1yb59J=)"0̸ "L{(3sq[ ~ ir'*G! H/YV:/1%Gqѭ+Y8_`%>CS,iLU~2hBGE![I[w4  M@dY47jI$s7gáЉLlV%@/piRyT#Ok3g+(S)V-rbÝ`'Y-,r_hQTi>߾/iXhZ/SfȿD_ *)ߝa73r}cn)hipꟂ4=*͠IU)c?ٓ }8ZAo:FS s .7J*75B2!`9.,=d@G]f~v2+_9>ߗQx˗^Ql$W Px:E40~1bLjB^!#K%A4{7*YvD =H{AU|ސǕwc״24N|Sww/9mZ68r:R~;>.'KlsT+r;T&etэs0>=۫'B@.uc@rU;P11)]:ucd#:~߳0u{%VU2=lUk4ңg-gWY',!?|d*ؕnl*7r?am.Mk=i8`GVf%^f%v+C |@B S~:wߘNM1% F3cw T4lB+Y?b@M%3?8Пw#dZ3!݊ܛ,D'-ac$@*I޸zc[OVS6.3" c `vQ*ZP1i{š?цkÍsܾj:sL zҿy??:բ̾e"@i@߹|/0a-[&Hhb _|61{w9DK%TgE[D8rT <2h46qIw)QqVxݓ.͌M raEU8ˁ-KJ:$O.sJ 򁯦X>aX!Kg0"m!NgǘÀ. mIX79iH-r (0fzIkҎ O7ԜӛE=l3o+aDnj23ti>8ej}eH  6nD#Gnpl%A:|6bRXKSh[!eoJi5%;SܤH%th(<~`^ͼrޑbշv7tWUVKT@S|^6&aW'~+`cW<[:@ S{eguKM8eҜŠa>k5sV?-NL"֠aab*Z?&{/W%eB(Y#g|#KF_Q",Tl?m.V(:6}GuO(#wV6p%G jG3kWzp5  ,9:"lǿ?vM-$DeX=0}ܗ`?ͫVWǑpD;9:ph-.t8 '}"Y~K D8*"+_ G/{l( v DGD q^{ >_l* bbJJB溿PzCdpb5irpb9Lfwٵt"ވxF&X&J* PdFnd⛇{aMV7 >@GlaKKiS]|d`ӯւ2NV&R_E7mbC:mCX I[skSIc)hJ-PKY%d&dfR;"UJy 1W dLh1|J4(N: l{HgsWZ\D6 SDlJW81z*dI&] cvEriC%.ϸ7P蒇=zH.g^ZȌ||>_;W`tu[Oq1KAʅ0V)ΛT`J1`HlRq_rUmz6bW#q@4-`Л3Zzbڏ߮u+81-@& X$NHN"scifNꏀ%|,%JWӟ,BȆf a58{S-_7qɇ x43B~KES1ch}dA\r|/11IBbnlX( p }ct~wNydزq |d]0:@T51!̩C:[wt]FO 8e?^t' `JtD7؈65 ( o]__?9K:pDдZ SB-o& $JL`XAe+fµ}V8I'%/-/6?.!Yh @= rw$}//RZ[eafTdD[GKx[" ͸iCZ9VFx좸,!NRX~w>PQ t_))n:Q'䊈Yw_XXobr@zXG0o۴<#3ٍh [27ֹ7g7Rced7qMHU .T ѻ!Z͊/G-Rw aNyC?nBaYv;go+^frn[00}9@*|?ф iq8 y7䒹gX^ ^ݫCG * ;n)5})-)8.Z` q~NKJũ,c.I*¤vЊe.![-2,UKT^ˈU}E0U')K'Bv5@:.>i5gq17VRAtʛ9 Ucb3o(@aAVlw8M:pM Dd9=5Ke0#tUQ ڦԗ߱|"!lcM5fTjG-q̀hbeoly'wJ$V 4+ /5s SXV X#oW5tG 1k>k;a4d>fSJ4EPܨlUDMqnyAp!W4p ЎMm,Vg <=+ZyUNZU1~8 y?HYŮm jxX*Q؂-כp7;ߔ!>eP7M}s|G](:xpYf8= 6lAkҗa9O7qu2ឦ7 M_߫ih5<$B^*u?w @<8Oq|zسBTXm2E 7"x\| Aq=xNFŶZ@-2*>&j'7 05p)gC*37t9WJ*$9;}Bw=TX ܑS,PCL&Ck/T`\P/xܑv^ ]6>[PHv&9m.7Y^󰰚IXkVxqAn*>Jmo<Dh[ݑ@{⟸iD.N7x1 [V,sE=i`. 6 GfJK^O@[7}A4vFa k)CYwySd5=='VGkKN]O;ӭ;eN~so'8-r b>4BVxOR! :CtW@xǃ3o_xn?]>#C(v{M^Y|tQټYq͸%*۳(#|Q @W[Co6_7DkH^љ^t\"QΎgS zw )jʀ83ިedyxMi`Y&|߸ .'LaSz45БOEt#8@F#!h$GDWm˥rrASxTD%w2-^hgu* ׳_by]؞t'ƾ>h 0j*w7&̃ S.7 `H[Amh> =AXBZ|y,=qq#ܓxwA\9$`0M2ſ zmq Yx0Ҫ`3q Ur"珛!HAebW}){%K54Y}ّҬCP;LRXq؃۩<j;VY<+6Tu4,:!3`q{oNxC[grVf4A%# lUl:n@WByjw[7xsyC큏וDpAT;NNJ~Ltv6_!˰ ΌrFe(TF.PAs{o௧ ]~EyN0}Peg "r!tw)┩ķS\d9fA8?ͼ "LPC$(DLɺŅCX2uBQERЦZYĻP[lQ)3{=!;#[AKuﻐrLUo`g-VHKg^ % 4/ g%p (سd{tUBUzrAjAuoB72z1aBX Q.le?5to qR:N'*SeZ[<^3|jA 7YEC :_ZW!(:*2D)k:N,_GNQ gƛAbOrnb:H/9TDAZo@=`?:^qAZ UMՓ_m惺ض1핈R IJHV!.Rk !d m|x*(xei>87ԆNu=Wr}-7 &u ;-RhZ}%۲wiTh/V:Apx/O#5Kx+N@!om:N[и-vZ%OQgi>ke(%%y~*'䮞-M)R@{% Bw7TΛ)<'a I(?&?ۑDi i@i'eQҷ3坷r U|%{32+kJGMoby8ӺY^l($RVc;kàwQ>WƻږOQy+/j?LrUeK+(6{uh҅|VGpcj,ܾ+[LgU\$70,;χUEY)e^J蓕Rve`eihOY~~ y7g VG\ EV`JxG`J dQaݜTf"teIS]㽩^O6}'}{@Ae*U J׆?w,>Œ?L GbX^:I7iӂCE$ ̷L­c|TO/p0z jUtXtVמ4 lKa.QpN$Gsz_c8162* 'w lG/7OA' Q`Iv(NE#ʘĭFGgGjw!I+tbk*~}|2+ꫦ~xytT:2Lyzq7uI%^!aWV0@1|K=ϳ)KkMbeFKFwISh@} UklL诨v9ʚܦjBq6\=.uٗJh"L9A;% 9VW0$6IA G O {@U< 4{tƏ|ņ#UNJO`:4QF!/إحx癦R;IĒbr\)LpE 0tEu)s5rgt[wBsq-m*؍,xtŲS(:ПQ*{1 as{x魕+V PN| dT?JQłdGry'jmc򆉦`K(aإG&Jz- ߏ/Βޫ+(lffs3bN#7P! @3FŗUNS IJY,b 97>je ;<.r1ZKlڵr|AUBo|۷GR"3`bڮqRb \PzMճ Em'PYOJk4?1`º)@@)1tuQNuޚ2WLbFҿʙ+wzjfln2#8xع~En "]0ޢ$,FHఋОAk4frzVriE^eʐh{i}BD:mR!7/HD ZB@Q|%n{G9|])IA҉ "} <)}ƫ>>8ZW6:ړVnƛgλd{藪 &MYكYc4J(yQH$ŞCk]:`p$v3-r,@~s#W pp<^pi6L"BlPMt;Wb}SZCt-yRw$VVqZWDι^~T묥#w\14DzϐRELU[2h9W/"G} 1>V /} 12?22 пTo4&?u+[J(`mkv8jsү7뽨꜖4a5 9BSE5@Sx"(n"0[$: O"02=inD`i^HXwlYjUtO\zd E_wTu7(Bp61-v61(ڍ̝Hqhb #)j'OI9<84 _:j$ Ҽ , d8LFLXM y߃y$MFqò!odx?wdf}AKGƋ*&,t2]h,,)DF0SEhPb> &XCLIHO}0$SW/Z#Kn*ҘhCԂ &ъS8m{dr-;-i9]ì׼ӆEq>l-Wr?BG9_/s|;fb !dui(3ŜpyJ 5}L;F5 6(@ڰBsW$D/T`Lm(Fif:Z%PaRGhAVv9E/T(u2La+s\OMܾI.gД,gz v kuNskR>K6:H#Ņ T*(T>L$,*w=\gJ`k7~lz 60M3IonьZώLY K~ޞv&V 2Px`4ͩ> I_ZeˠWҌnPe)KYTdk橫󋂦.|+>p+< @09bjw,m-(O{w-'8ٰV1sS%4ŃңbႡ\p Qw-ӣW S u_(B:UE}azanZJ6>$V4ZBµHHz_ΊD~KNU?<[GvlWHgG`;7Dpkt@a0HHbC>dN(-u7Iaڬ}8S{(%T0+ sZ ɪIwhc4;Cej56@C9=:HB^eR/#<>]'wO7<\%.4$^%I^<-z Yr}nЇb:pp9.ͬHCcv!-koa_̈́drcq)) U@aXQI4[nj:NK7ĸ'yfO}7 >sO̚⬽i ZH)eJq:NA&WaV&#g<%q-Tjs}DT05TVsm2Gт:ݑRr9 b3C %"[K14*uvJoZ%n`l>{@9zPfKg|{)IMb#<4Yv$ںu|%ˌRL 6і%%5:o#QlNsj﹟aYW᫐ήj~S)Y[gߋҥ~^#ta Y\0G/A|&uv ~O!EJ5#5yR]Tl;3h)B͞[q d'!̈+bx/+pq<"v\c?CFN晤xCe=kk'?5aQ8k=,{ZzQs `RWL#BpM@a c!=~@'^TPO;Cix$T0C9U:~Mzub<5/ >EHOp:mSކ;, Ltvx㝰1q$Fl#6f*Ò-3ힵj)wh[`i\s*'(xX 5RM:b eW?2Bg_:(YHPXkb;r85"v=8w&*_=ULW,i+?s੎'VAq/O[.%kWir)ؕ0菨.VeeUBu ,t,֮@_m$dJRYFOGA~_KvlL~`qj`6^_ y9mȂa/DH: |/p$_XБƛ\/JBɶV>'hzf>FztHn_y,=NFkR + ֩ߔ='bBz #E6ĆYj%*tiILM]%8873ܪw3||@ޮ8+w( CfqLDԝYp,MRIŊF9RjC.}-krrLvRLra%TPyqUCe|3BZôFWĐޮDz#< #UJ7TAO}`wcb)4Ӹ7HS0rAAfYG=KvOe<37d q$KR,[r ]<'uw8Q}{3 t;r&5Kעx|Ċ8GO=Zf=?/e b1`Ϫ{ oO b ѻ2ߋ>o}NƄ@j3;:$K| fO>1i;q*gӇ 1H3ky9g P4hPG1cvDYbaT$ 3BjJ4 O<~:c^JiJg5 d0VcntѽN({a,+0&`ɔ|5{s%YԫU^]Nt;f/yʅN' },X:}ry g_XYhfqG:O d5̜8l.Cidx.^zz2on~rμ~B'HӜަ R|򨙬xS NܜC=ed̃PILixarw 砭o4kPݦdiD`ET~~֟L]9K$IB*>$Q"~m?z5xb+ J4S^V~+33t I~s} j-pfFqmtp<޺D +FR=|"=ì_MWglesI/WK|%Դ~ ,HzؚAQIb|Rv \g}1 \N %]Ghjo.&`N|'cUK>_H[SǠ:) oa޺jz^Ga(Պ<4Ge/^-+KZl] ._0k2Po>c~ҟpʵOI;!V:W_g&ߢƽ-ljq7t kY* Iۂv,~LRDN k/eξu_ Xv5ͬلez] Xs\2AhU)LT|lYA"O^XXa=D#Ρ)"͟j$wOxֆ$#E{յGNf;O)G|ywWe6~D?ʥs ?,bƆ_ ikwx#:, RA:0+rt 5%#cb. 2;<`|uxrf{Idтc<&a<q+$5܄YC#6 8?klGhH?QR36&Tdf1<)NFJB|,8:~˶j[iR gfBma[jp2yZ|a|u̻eQBS!)ZnQmĦ _܏gw.V3\0=RwHp1p'H`&w;\X[luȷ4qWo?<#0"M 7z@Ek%9{Q #.CTѯ;idOM)%drQi8qTsd) aU,V3ŌR'OZ2ϒeA03\JgnnX!pQ)&.s,FDԈ @l)'hIٽ !bo`ٯ<@QkUGm * O06٢ ̯ oMBW+TD>Gn BF4~# OYD Q^ֲ U31#Si&vZqY#k"V\S rRɤn?핇Xaj)\z[,uțe(܁&xDo ~z}jaiZ-eo8nMOo%6C׸+JAO:%\9]U2wBΛۭ(*cF:Ovކtm8F4.d.ky/u*:Ȕ@)QIf<]9)DOk8UX54}'6഍W&Lxm8:ٹ|oRȲQYFgqL=}D\+#R CPUF>PؕkG/V|ׇEzH,ësnP7c )C n n,PSф/)rH ? +@qZ7+ Xj΅ kڇ\5s"oYbeۺ)w}zSWHxAr*ᚢ]+~sR2uY4 MC,xP>E_BèTŵ!zU˰~KRyM]p?UwE(b٤__cxæ7$TSIycɱ])ه~F4۱4BP?G(O !xc[3a$Àds 3/!ɹcXa8P,̨KYqJ+nF̎Mn^1A=},4}=h']J8Ҩ\pXN ~h 5 Wp1A9ugy*p:F"Cz<>:YT. pudnOcYaF|oo|u &61d9+0iârgXf*(|5i:cH>a6hMBȌqs9)!f Φ~ƚ#W"! ҵ)^}̺Y{Z fw)" 5,nQ'lc[_Hܶ}m7HkqE2w7gd8v֠:- ZخEYecO+TU`bi"Z;c"Ga%,fir\B٤pi[/7b'@zk8JIg]K)]{8R;s 3#<>_qJ;'qa8 vR5e#i>SrwFm[f[>6*f[9Go,[ \p <] t ?Ɗ+)賟0A Jtt@g  |΂=,MQ9ALhWJ3וykQ&m8 E:{^tfF 7nP9 +f@^ *ߤTxt_~]2t_^4oecE N!!xLu3h E)~ &( h雹%(?UkfA&0 ^9 a^cᅐLr-.kŐY -J{ M=SλN'm~mlM%#jF~]]~a"Ṇ$uy U5TN68[qkZDWVƙnѰ*g؝PմlYv=yehqxkɒ1.xo[oBψɍCsm&OIǑ8$SDZvk j(4H*Dz!\ i71&u"M|7nMZpRecUurY[!cɟۄYj"?D݁&DOSY+ø蓖S0  f&apޮ # p[p  fgʜwN"E.zʞbL!:h6I?zH[0li|#t.Ρ:^Dxk>\/rPx-28Ά4 c{LV*[:J?m"F 跩&6o%)cjr`:p0ȋ)\oүXE–B/t1>Po:D"'%_t@G*=D15~1Dtu73u˅5] -}OOM$d`+ A_)3 Y+8 3k@{؋9U@:[١U*"7L[v#p%yAϬvd@J8~6mI4HrU0'BoTذ?4藽JM qKp02OD? tY>=Lҁ %)Nû*9R|͉Q 2,hY~-'iOI8*sm t=f]-0/$nGE# 2ЪAoAPpE"s/9GTj%"-4`qw#RNN?CݪDyY!qYLK,~ɂa9f~45Q L>4<1A ɃH[ȏHڨMIm>mEІE \ӍJ(5 O ܥW/:<1R2hˤ-fIz8S (>RcF]eN3cfo)E^Pq:E끥vIQkJ'yEu߻VF HG }%! 0s$,~1Fm@/mgXE 5ind9ZJUF1WN۞om/fzDuL`}17~Քa"lFZjE"mMN2aúp遐ӚE` ޹ve >ЌKK8"$ДZg>?} kahkr;b]+M~j=x Xmkaxz>fQl |],1@$'?(*"G9l}V.E'N$!$(s.'goL2~~ߖ6O5,ϻͯ؏ʶW`vKI,f:$ M.:"wVPH%jv{@FQĥG@*zcMTFilί$Q&6>~ڃ[bL'He)8{ j) pC}EQ/|% y 1u6`g}e=}3V: 3 =,ZI I5rn:H[t탤E<+oC g҆ ե9g  csxsu =&zS}\xExYBcn%Ԛ%Q$CC,"Dwc|sq8˪/I[)D{FpE34<9Wg7N7lӐѢ) ?=OKKOֻ<;(@@EqR~,DcMj 鱢rIWK`3n SD(PX K]01+Wb=udJE(#X;ի#u/8o7mx)H@(d\&J%Ru;vT(8 ;qt7Ĕ?U@B'ʶHN$>A6 \1Z si(E|ȱ^fiFWPO@CU*Sw|Pg?;f?7ɜP4*r?pNbyZuEB 4~;D{p HKMEz*|Ү |LOSuؿ-:)D[VwfҩIY nPdc!lR&d?OlfEX-/:(8 }rYzb%TO(@!T QQ쇉^j?1AL7[DFʥmX35=e B; KdaÎh r&25eHE2w"جױ3AemrM4/]t Ř?,,ƈswbþJz5Gngg6k%-\Ik쀟&٧Zܨ':BbD0әטσՠJ"_^٪I_ȩjh.M8IyAGY@mZl`s?F()O#|j SO4{Q*bլ3W@P??)C"RtF|LV&VdԴG=8_)Sz*DtR;}|@mw䆪,[ºaUhzbT a6IJaELð7๻ㅐ5Ҏ 4oS @IEv5=ud,ąN8!Ɂn] m /6-ʹB"Vl_o%O$DK &51t/UbvXj! RdWc(=$|u YƊF.hXýcBncs`<s9ߒ!E0%3!J|l6k.N]pP#t PsQEyQ㯡bqƪǿW2mre/& |Ff:d0&?q^Wk+(ĞgnR 0p2tD oe6U(^WM.$s"0inߟ1o-^OA5`]WmUTgu-,Pd *ބ](4BVY\,om! -0 k,2 * dJr|E-i4vOE >j tLWi[@ҜՎ uHq1_\}D6ѳPCa \hk %yQMChK[*.8:ۀ'Av2g5Xqٟ57zZ9^j |݀Tݺ0CPtT\6 iiQ!p'pL6 39/ hˊ@c8UP糡UO"zu % țuD =ec3YHG |PTq|XQA8k+9t(q, Ȣ6썈Iv=^t7cpըDCoz&7<6-ant? רx>iPP$8+~Ukr-3#cRR ,{X[MX,MyEe6_I#oRƍ6΋~ȁ%N팃6pG^_s,wL)ȟL(q q֍IcڽVܥ-\|C }5k`H:'1#1uzpraj~*:^(|cK`Pjk2<9bFRRjA]e"x]UvAtPX+-J>[;)(.KVmFF6^t֏-A&R5^wK#߄V}sby!;i<]CSn !QONzĚW*:sht K)3y Q+˟wuy*jqQ(?2J;yQm At3{坬Zy#a y9^j< -P!ǟAR׆?{c ܬK2xx6F8=/S'*tZMҰWD@N+mVwbطvʼ-u{'u)nޘj/R9H%*-zh) b0 `1+DA0D7ͷu)R- q <$hbXţoOMb.3dv7p+(lڨ&4\ĵsn0YGn D@5T0ԝduh* 2cp*QMz1~eMG~CoKa7]Z9 ݟ 7SLi+ sJF"S8$ft"[P噲]q])qG-R,$r2@JӼ^Ũ!#0~2Bۏ"2.Cs{.@ b.\h2SG ڃק*m22B%16im%!yz6W qUWu|Ŷ- R/N1># Јi $ugG=U $RƤHwţ*8H$nrF;NTf2hԅ]LL28x&5n7b @u0OFI7t눇YҲܟ`]I&݀9ӛyg(P4%j+tpڙVP84ӫ:XG#k2-j=(,e! ZÁ>/Bf&˪:M +஼oSZ ΠW _Ou623c%FUviɥDEY9 .(0a N 9P,W8`Y _&m:؎?NKǛZm:n[x060mk_ʣ?4?|nZA,K7[dFWKs= /*GH*ckivft/f5b\'Sy^=|p\xT"!#.}Ya aj1 :[,Q_>0p|DjD2P>k}Bj;]"9н>:ߩ`ɼ0Iѕ:l$wNR&(~`8'S])D(zIc_;ZK|gew15ÞS8V 75]Z%j&[yJ%^$jӻsZ\X~!F/<0kG&Adm >SNnwB'+!$iH'58եy)Zä&~%wN1$:{{%"@DyD~UjNQՁӢKQ'ӌΉ=OL)a~~YyŒՎ ΂ w&82Y3qV(;뤱8FŚhc$!hDTͥ%+ۺQ nƧ[˿ D"="rH}}+/u- |?R>ѫȵ1dJ#WD 1䨙"x}p}~' +]"5V>Kjtա흫F 4yc~ء 0j10MOz :j@1[ڐtHiSHDo"ce|# aMwf`wtW`v6ި *g&`XHDfڟK[Xzf԰ h(n_t暘Ά >qVb@.owg@AICU3/LmL}/ ̙18(' O_䒹t9 ʥ0O>f5=Rؔaz HRW‘ZH 4L [S F]LF7a.+2en# &G(D| "zľb=,b)#1*ᷡWVX(UN2xD=kSS#2 Ը}.G 3JD%jD ɞEML#ϮAϻhiwi({Ց5jz XUytB2l)nf#^Y0 xU/=tl1Q%[.;{ݛ$KRK*"_vD2>*Lʙxb(5.%SȩrGBLNLj0@8rp0$҇R&&XR=9nvj &Q0r[ wKB]U8&f6:9[ 3V%~K (]J!;S . ^hgx!sx6X|bbt-sV@Ƕd5Bry4=`PI[,Of`/AK \:tJ9h5d.Eq~mRۼۑ%;}6=5po;As~ˣŀB|'߄sbBE)'C^R^X8OhJ:N='ȑ Q o s?<݉ugk@!SlӆCWׄxdh]W5` s1@g|[ðdJseՂbdG 94/^C~u O!b؏Tơ{6)[0Ÿԇ2,ьb-@QiHQ@趕>p%` ! e<裰bms9pKb<~oh ӆۺá#cfǁ<;w0C1#/բˋESc0B9UQQ?'Í66~C >B(Sv<ڃBT 9 G72힬$8%]u05V{f YT|^33Sh ?ҍRs ާ0PljǼ=XD$ ):Ev^IiX H:Snu+8;Qvb= Iޮ8/:}:٤$Gm!'lԙ̩}FkB9M&meQJT1.@t4N\Il 9Z0ӅPZd-PZ!)B\ UdK/ k,amzׇ5@;=MG9#,ڻgkY^-oaL?R[eȸ^jwԀwjG]iFeWVbߓ.~s4Z;e~x=MG\Qي L '>t3D>V_RVO)ɤhJqO.ީ@ؤS^d?sb9 7[љNIr-wԵN дȎVe|M q$qe,w\{buSUJ33XVC?߈@6dV8I]ί'Rq "&"DM"*`GPQBE- ADW@KG`VW f?8G[:l@-sA"<m,sxd2ʹ'41(7f0U\ $}GYCBdz2v'7pݪchbq)bp#C"kU]Rti%ϰ2Ixte|Y9Lqyie]).Թ5ZMw@8M8W4uXPh' M|DAXd?rlj']!8b}̻vVU."[s^Vzo烃n*QЦFOIb^H$FP7@d% [hOZ/vaCDNsST/>yuWb!AxJa?oV T;=X4 8I]=L_`n2ZH^rKƲ-i#:r/ Exx`J:^p1!ןRdlp2I'40ߜ 37!9LCݔo`b!&BUsşNMFhg־f9m Qu"O FJ|hc̰[yc&‰ ?#koTWDM=$8sDKvj'!L |UO*Ϳ0FbkA$ .JZFg<}:+ NTWcoe>lVF)1{mH7NnN!A_S۟p[n3k,z[ZT^UBD{ 8 kKV'7" i0 E[ "' _նsC@UҌ9om;}{m0 P}ƍ./+kURnݜ4t1݈?F~NǠL(֎T y3XA,QzcqsKȍ3I9<׫"ì_<&4>HL>\pW_i֯%GFAYa*ThC/ hI6#e[E'<+ReLr]5|܄%Ws5%5l"aesnxzq=eU_]CvjqXT4R1P0ߜ{eQPԁRwqY4e2w_שFeDo{[b`̱Y_Wǿ!%{FȻl-cyc-[Up匝IxhAEd# erc=ڬ9HbFM5BG_?wgm5)A7ڻ}u]8F|kl:Cd/0|>6rFB&'$i\Ҽ#!Ӌ&MW[3x^}T ڹ;yi `?@}; ]4ocȡKB d!kmsr€cLh`h҇?W9nд۰LH#Jb^+j9xkd*>ccܷv93N뿗[|a9suF6F,tz'r} Y,Kyz\fj$ҪK+Āͅ\4e0'54<"a"g]v[!1+>Q*Hc=yP^uEO&(D8; FE=+b6*Ǧ \l f糾Tzsw2RX(b Z)֫* 6 \*͆eܜ\@g./5Y9|~]GFr_ "yir3")XUᶿE~o1ʌ)*` Ġ^kޫ')n 6`4Lb\|HCaS5Zq]O )a`Dl26`T bJU&lKͽ(SU?! %^|!1?V](* 5 48|&8%]D}>DoCD0AT3QrQ7m3)P.wsA]7vs:-iaEwQW}Q{jzKZ!¼K?}WT4] v`٫?ca~8oi^h )} \(K| nE ( kWyKEXTgSDzIvkfIν=Ut !uw=CTM=Yr: l9L'Tss5V1KR|S7Z8ՎZK%*2*LqD :YyhYsiDQIMC:V&pyPĽ}cvs.ܔ4*^aE *77CE7``#siX? ŠNo;cMRw=51<Ěώx~Sc ,f%,o@Ob6Aۿo-1[ݿY8Tii4񰭍v]PN_IqzŨ151 wg/ $Q`' $÷Dtzt͵G#dl1?~Hȋ3 W*W]m`i| a Q$ZV-q=TfY+Qh=PM~X)Ѡ}bti3΅`hhf-NX:(mM mka- F=9OaA 9,(-循'u)bS 5Jo6cAN/.KTn؎j+r̎ |ҝw'/45PRÖP6F]6G&K{[R !u7Qκ3H@ĩxSu 6#t!x.&w 8 褂(W3% X0l|w8*6Z-o..U _H-4wGAv2E4%.i}wBVȁX`I `%BWgƱR[ܥI552'-&EGvv?{<'gU85QЃ{&n *-}*ptUW($q̳ KcτQ Y1?wcgf2ZK$12bk##BRIT=+v$M"OL|j9`pװRu(Rz&`PP^-$FU((X9<~YfDe0db62"LPPɞ|^6ū>%'` 3RZuA{:^TT3erNJGoX]*4Rc W[&= ?#*As# ߵjXZ[> T`b7,\1W}r+~S!OtM!?x6a!7Lu Fv* 4_\J Z;^>C'5 솦v^8.ۛcyEi"Lr%uRōt , I CZ^RQ!QL!޳!4"^k!R~jE5Ϫ2wEcш2ר!sۑg: cbJoR]ǧ :'ٶ8zE.Q,nw I]ǦLux-pdb蕟˺FG-wr}I^eInO.+g^؀%훛'< OʬwhcWN*֕徂{ ? +[F.c-+z m%ߍ /ĕʓa #?{Δe6K1*KB?@nOlBl) ISY׺n&Vx.1Ƽdam;}W]ky_ D~GC _%z1 9dU5@tFQ3 sGޛrUE2>oqut;@!͝3&J).e /lPNr.Pz1i?j*$w&qnArɀ""ӭ[[ [i[KL!/(~iC_wUѸ#oAD<d7"hJ[S挵iEw"Y^qdj~Yq0nҳ>ާ3&~9C4ǾwlcCV .Rmu&46,.bEvv`>Uˇ(& oADq#Vx' 00fPe\uX dj(PV,y[kC0|rB)8 ͧi*7w)*R+J"+L %dsu_~0R몄1>-sUiF1˒Pr9C,>}.' ߣRrDoyӎVv!&AP/?,:iv]MEzS+%V8%օpU J@TErh3UsĂ I/o%eavw~8aVݩk(+(jR7tKxHFUf^:\ap4x?xuΒT""<껄?S3O99Åi{tMäqO<۟F 9|.F9ʸOy1{/=L-{6/.'=nvScL4Xm,Ԝk_297U, UB⹂`2FDG堦Ib[3zRʲ`{}#j3ʬ./Jp/K rK62'Vkis]V)^jxcjA]rߠ;mRC3PMؾm1g f7;_\KrHN)2 ժ+Y!)9(ţgROT3/_+]ܭP:m|)sρm*D3VI"wmZ|om2z/ sـZ $vah(L=AHk3},W֬"?<@xXM.h5:L Q_Eq٧bd?}97qM:{;DLTmus6bDJtAk旬*@Df ,q@IמYk)BsLT_O,;%(`/~g'9,}`>ZiOð0$҇ ̄E~$hv !̹f?u{B㖡cy.ʲ|&scÉO|o C`Y1w brU'ռ.e1078a xaǬAelzy3coƧ$--;px/-h|lK$Un?C}O꫼U%_Rd\aW i7;JZcda>!n~9>m:y5Z .A>'nPOhrx|\ANAXbި9y۲զ#N ;@C-qđUA7%t}./j$TɈ;?&3қkl"^ D7ń=LV.g[~&ܔ+Û 0>kڳ0.Vz*iuw5zxVT[Hwj*7ubZa"蟅:᠑ԩ_Qĕݤ ` q 뼔 /DHRSB͵Fȱmhղ3@V!Kّ3=ȰtH.|#2# JPϱDQV- 5,fapsBvbv֜uڔ%lɴ.=_2H/2\e*.>pe|D~,TDs%nr~)5Fȟh !/)l6۠!]VƎ*GM#w)%]NPgko DFМWFVzAHx-.s#kG6v0GIV.sL_{":H^0(iΕ䩢,tCAoxnfR+<&U;`1C8~썚ϻ;r/ 6USFChP+{0oxݹC}Yɿ=^uϷƜD;\d6'=>x<7Cٝy ;o_ٜm}jGeZ?rXF"R9(>'V {SNYiK?IN A,z?UViM ~aOTNQZwu'TF:vZwu5\>S,!n)K_g 9x+2b%U!|(N&2rL}u3%.Q,҉e&W+xYKAv|7KQhxgwN)&/jX[oCm&̰ Ьͮ3OQ0'+L^Z d]LhG؁o9acxCKY/eg'nFj)t +Yu91ND>^rHx;_rtC0kz٬y;˕+xk،}ۉ"6R/كn9iB +(tQ>ɠ2 .'Bxlp[ø#+Qg)MT$mL` :(bTK{afT]؎BRʲ43^/ȺNH2s*a_{7i‡91PJԇGaK+2$K@]%n*eTxzԏk]Ş~tr7fw=ZP7YGYKjGҊA£z1L>^kj,:B*ypx:7J/~"-i &8=_4 b?dwΜ@a aVp tє.p-/TlXfF8Š|\#UfEu mISk6PKpO"!b ~KGV"@s%l5R=[ҁҟΆ S4iFe /b!XbS"2Z첲XKP5k(bEQIgiy&2<[:‹] 6~ "d)1] k%ilP/he"kŗWSKd?".`&0AlI8>Ч~Hv2^ڝ2kItK;wn0a_|v^KCj2/AAREl636--IV38ۭ6ß"'h*_*I_gK7GʌDpJKDhjlI)( Td%U*5l;SV ~~V~ċͤIǝ4glKIBq-j<0d5Ck Aa  &$zL`fuk%2AqCVW3W<adR~ \OjW] BA<@Ups~: yIh8z{-/\hE]a7Rlmޣ L%6:+!tӨ*6svCG9#HdX_f ozj:pB78̴۟-5tPId:J# C|ÐHQH\GRQZח- h"J.]#1:F+}cK{E4Sꤰ2`aY B>/g.a_ ChaKzMt˷E1$=ˡpA6L@Qbr?Y&-.(>kqWEB ݹg-j!]T*YL)yUH+4c}`de_8e@UNaDa4ޟh\OTuz!z<l߬[vM =bV̭= >ԧ*\hqPX>,@r$*gDAޘ~gސ84@:&5$LGYR؅Z:Aog,+ FC nAaωz&]OWOξpVdZ|*5 L6 W`[vnMϞ#GY~#r;ob;Xk_5Z=l:R?OjƇ֖PG("'E5ZzQ#bWc;HNb[zp[45-nuG)Ybm4.%/iZWl֔w(;_~Zq^]dgzð+p33ّ^JlŅkEa57f%6<͔@Ӄ鑩 ջx6aLRL`zvc>Yʴ-Ӧt~UAG~ lXQ%PLZ*|jEהX* Ws#!H1%njs AF0Dov|xr-wx(  EQՇ$æ+q{7Gi0Tw*W28WO<xA& 8E+:VDEWbfOB\V"<|lʯ:Uk"ajhCߚ?Cq N7! Es0Gא>{[>Tam/t p& | kGBW˦5]0STBnXH)15/I `t0Ons @^_4"ʖZQ3 f\ld 5?;uP~4W%dspS;1PzmOhr8j!Sg CLHwM< /#eG4G&(,?P`=oĄ$oz\p쩐+5p-=C,oTZ^(p!Y#9afl)*3ǚf}^yDjRUnͥlN.=SƝi]ZG\AkD7'&Z~%U֦AtuS/>(/;fh|( GT0 *}ZXaZ@:a2K%42$O;luy+{:(]C4AP|FuFHwPIljL|0wXOx\Yn<֗׬,Fړn"}ҕ]"*k[|ހ~}z#=AВ Okއz"\\P]*Y͔"yP%χTf#utEj ʹg̜>ce?oP辗+IIƺ֥ab!(`iJҳ% E*9b= JuvXf=UCBj=$s,uIcjwB"Ekꔪ5'JG=!tϟ??ċj_TV"bvk,iY0s}`HeIA1P#g&>TU.\猹ʣ|(T YY^⼶C-ڄ;>K>.$ %'Y}ѯCb̻y8"jۙ7PQ 22ʬNa截Ð0&Ei!5 lP/ܗ($W]5)X؉agOdzj_k3v״a. b)+ZaaWv`x#jr y?axK_3܅P{;x&3_ȅfEB}<^$X"AHhpz^tF2>=21\z+L+kEpsu}[!+~ߟ7a.oBK>Բ0H,W@G<7.(Vrt-'ƬNhXo{~aS!&I)yn5RX:)u:pJ]O;Aoyy8WFQg|B CO?k?ր{NzE&sYYUfS˪bj,[Su|Mޗ? eb,\'6:>$gzk$rHM\S]]h7 ݕ=QI1^{%KP3Kkaƛ:x_JTA$|HA ݭG ?ݱ 3:m Mdha]BujM{EhU^XOzL;0(1^WVP-?su TحJ/A{ZW3-{FKaJj]ʭ,̌iyr M](|+ס Yz8LD(To]/x'if1ˑJe\uP>e&Y*գ1q@a2iL؛r^ߡU%i}=T*5h^W+?j۝̦eJߴv@VVq~r0Lt%ytw+7JZ;&Em p NKzE,&c¶Su| 1st{ȷ)R$tayuHLS i[+P:Yu:H~#Nbsxb{&oŭO;[yq" sbR]lJѪ&vY=Ä_k#wVR,ȁ} QO29e"އްj0Mg]?GJ8tq*PBXֺa3Gy+xfRs?.Kxm# #sV]y+jUp}++O|--Ebg[GD$6BL\{0P'!,AJjVA/;8]Sꈞ9Gqvb,Y/9M Ty1a]NVg^fK%X8FNgi=k(Q5 r ps?JpVg bd\21>/86'/KXX]kظH2-=ΖѧSӱ)m!ڽ _jJ׸eֺD5)#)_GO!Iㄾ\QMm-Y4U,`;}qxB뱞bƓ$r=ƺ>JLmoBlfZa %rD#7Չ;:yA@NU3]9cO/&!\B!FiO3ݨ݁mRwHe^n05ۉ2@kr6hD>)~9 fcgqk7:W ;ni?ʍH$WqpňgG"Ņ?=rfېݵyŮ^ygni0LvVN$*2 /%׏Qn:Qiq" 2Oz nju?),,ǘ˯W68EXNܣްڛ;;t47~^Tk~f-}GYo ]QcI#~W5νWYfU7&>9ϰ0Wswڒ>5 R/djuTIT|+m3 йdAݡL.cN4p!YAVj%O9m?Wrơ2yg U.V$F&Fm5HќX7c6EЫsICtĽ/P2W- 򝍱%~ OjBH~ Lԙ}f @p r/ռFh10v*+=~;:qsjq+\ j4|)J/ŕMB8)q:uTC K > 7< =Tzun|,)#;EKbR)! Eϣ~w5̋!41EE.Ñ#𼀏+$s5@蠈ۛ%JZɌ:8->Y J{ѢPInf*B kFH3B 0)gPr 9Ny1oU^^>iZYj*?maPPTļoSʾk8=k߻\)d4U=bh((jܗB1!œލMW+3s e6e$=5"Mx<8wYunѯZr.~(¼NZӘxqsme4"F7(e 8f ͛%0: 9sfA\)_W<6x%N}w.ya!T@24uө'pɌ HiqZ̕ ^ѮE[c=€BW oX@y I_z?zt:ix }R*{AO ?+L%Ra9zN7?b/(Lr%tc*2l'#ߺbxJ0 )㻥|g?Sx<}ԏ~Gux9'E6<^S{qq\ {ìQ'ӄzi(gxYb[ٻE8y 3|!/ MYקk]y&e LA91C nƑa|Ê3lr{hsh.9)p8w%:'q/'BH q~l:/~M9q뚈/7h vaُ$|lr.߻ík ` UKUPtZ@"gP 19띍q Tʛ; :U(8rȧyh4D ص[qtha\ ==.ѩm%Giosg>F<-#G}gIC&9 bzNk+`:-Ɋ|].bt}kv2$5mJ'G ,gk!q`, >0~ȵHoŘ-n-Dm⇿x ^4N]$Irs K"GS쐗uTdK]|gbjǵB2EB1NډU{:sS]I:Yczs?,6 }?h Dž;qLQ20,TP/&B`JZÃ(,D@I6{hi(hfzz4)(#٣WWVInM$ݬuCY(;hcfqIa) 4F]WU1qO<(X0]b:c턊C,~%HEc;@Iȣ%hs )=|M-M UzYRY` ;U+6RoLc:yA'/ >$3")h9?-י)*Gv~ J7բQP)PsQ3 mFDESXU:m:9ҼqOiZUpԣxEOE;FUCQ4!zA(A>%@wc |<zLEyK2<1@*?QQÑqՃzfӂQق9Jf .y3)}{Q$zz%q)Fff,N n 6JR܁eX{ q2w޽uTk@IJ_!o;OX?yv-gyRdB&hD*׼Uj se9gtTH (@OR2`1NhD΍"$<,#_{& q oYb@]UӛdfBnvw7B,¿q"$)&&j{Sç6VY j%ɾXIM.WQ{u͂:܄&ipZQONl F'EMX4/޵̳&n _Uy,Ku x.07ؚs"RK佥x{hf@XV{Dng[q Ϟɴu6XO#eT(`llwE翗lH?1H@1-O+S;\m45ΰ0;}):n*8^pP[M`M@ozWJ)EUɅiK!zy 6UJKlȀkS?3=g5{x']h3HY\U0WbIFӲԨ%W2WU/n6S01C B^5?EZoJ&/8%1miAc`f,dCpQ3*S $~NJ0y8;nFE]1R̘v(CH*YWfijGtv`uxQ/fr\)3=H+w Ih,< A c 3:le |O~F“`Մc_X|רo VvӁ!b^{OKS;D7^L-! %|>r&o}4/ :_V~1:~^ 6@8Bٷj*#һЯXN >Ě;Rq%j*.bKZ2kr%1u}:ㅽ+cOosHptOb' Q<\3~% $f-ri^F 9 pr5cqW;%aQ&\b:\Cjy+[L>GdzQP%ozoğfԗ1Oe R YybJz!d?'Wo@RO8mõX-Jr4jhø3!˹mt؅q~ &c6 j7,=ueZ?R9^t$5y}w*t^ XzLB9A$2V >>Fz/VDD$s3D#&m:njxew^_/6E#̄'NVn)7b2\"AH&0nSȒLmE% JRȖATߝ BS# OUGB^[x40"-G߂p \4twJ2 8(P E:r1F<-_a3Bc5TUoC*|ΒG:8s*#4&1y8&O&Y]S"#1}{ ɀp?@jv6Yu,y7\Ǜ6 =` 88$WQ]_Bژ4__ U)h=*0pHؖs۫3ǃ۾^wX^f"gRrP:땚7;_~IkœnHf鋇%:t ĬyPr=OqJ]GH/SA}JSà_ 4)\, AH[DXgce@ҏxnGSAZaKv, Dފ&u(ϭbĞgvG! Ƿ}*GtVI%&9:jsk%j<ũ([2Tbz͕2c{R L1  =o[ox5f)W¥c^<5еC/D ~L:"ܾܹo# ukl,&H:ڲwR ((r&dEU&5-,D>\'vOyU ܤmʃUSH4Esص#m*)[Q{@IS%P醊l(w؇;Fz'WXUMN1c%q@g!Ec ;`#Jqjֵ~ #̈́D(;rjpZaXG4B#A.})@dhM 3ǝ]z]u\C6`bY*FXSE~K JP-$ڎW3/4>.AZu|YemN>#OST 5b6ȉiFP"H5(ól[H8`5l|LVp%h!#a_V!k@ bYG9aɣTq*/%;R;Iv ! l^2E.,vqHymv C6?|&+a7EwAT^j(@*H:I߲>b,^Ivx"p j@ '\P\hR'M )[2! op6FMaAgwa 0[a"]ѻ߿43X½ =+|F :דh3Ӵ@qL73q /rGئe|td~u _^f'Wa T(@W4m;(]a᥆FA06nT bsQ)aXMV3IŒ';/nP@Ư_=\m\3r)Pd 78\}o;J#4S‚`nm8s i/Kf)pl1z_!߂ %Ẋd76[ =8%{˰cD{ dijȷH=^(-$*))ZK}Pza#(SP`)=vw8b' _F Q%0,@2t=Np!: ( _I<ͳ`K$;Qڭt,N}*3flBw^Ԃ%~{mt[A܅ s?O4! d{"\^̦>RDuS??Gya#)s8˳h^w)[iP'8>{ܴ֒_ %Lbcq -t3kPLfFcn2pj꿭$: |!"ټa<|Nv( '" íi!eumHrn cN~ʿAڸ[(L}43`'0V+(`^Q ?Yly&Xo8`E֐t\y~!)c$+2 S6}Y#\XV[޺pK$_洀o(f0`ğ|wj]b'O,|Oi bWjFPs`@og e;L$35Wor;I~orWGW1.g<ԝ[_`,j7"Ŭ` T'Ml^͞&lCGB3 E&qb羽f/27-`~E\54V, xw&X٧HB: )*_&#(ݔҾXL, ^X #9ߠ iʼn: Py\>.ДU 5VQ&{k?_ k7깏EKwL9+sp-.ph0Usyҫ,Mgh=GAtƾ,숡#B:c=h_`Q ^|jKX)R4s79Qq;z^i>-q X2z;Dw K!w*)x3CMO_<., N,}y'k4b[^b}3|!ah;Йv|)у{7[g+$bIN?OO1ɨ ɱy(x$gH40a싘j UlVbM_Tڄ,Vcb*S(q;vň# Rtb_#|/&-2ORK,m?v?O z4AbcJQwcSw ՘#cV-J>cIЎsԮ9̿D>cq%߲L?}v ;r]*Zcq!wJ4%l֠{#&?ֽao c$x ūhh5un%ą< FOVkUA2*/{a3qdi!U~ g]DURd(m\;\&+6yPUlQKv9n[ۮۡ8 & (ʝ$~txu-"п?HׅZޏQrCi;lyC~VnυܪO!tdjњmѱN!$B5/|DƲ42ġ#cؗgJ4wu*9 MVǑMt F6o':>kM` U NZugM-$N1.Ǡ4>y}}»369֑npyWbs2_YfYrȿ7WCGʽ*s>O{R~^e;hýTX:YX^jDB^J:~OTpww%#U*`̸x|Au~k@]ؖR3Z*%ۼesǞ%AZyh>qTceOA]YHQR8uvήC'~_e 202^e3 dhi5J{Y,iI\Vg@y'FLfǐ_˹~Mp:0)],AIF]X#kk @ZPIFaikMXO[YTd%B,5e>J7T>̜&`_4@R_~e~9&]F}8Wɹ:m()8 `Gx2P[ Y2+;Z{4~1V26 ?I ib6lٲ?[QAt-ͪuD&#-]HSIJc's*Sy3;\<~i44p1}wԁ YM:0Ӆ6Dc-B6AﷻOEd"~{PUdb^W'a?mulhIPA[kB8;݂գcF#DL1f"cȵ˪\Sm̨ 4R8];gfq`Al/53#˜(b:O2jON 7U}/<Z Qg !z&%OhOºEا)n9Y]\oN= h;٭sA#`)aQO ^\4\pv |bq]ECEFiQ}VP!J'.x(v+4M=t{Q^s*Ӹ4?ɭZ6 EK4G.SB0gp06Fu;X{lu7PqvW,8f;֏ !kye~y)Hء1̂lq'tD2?^,6$VD<:Q熛of D;e*J!Y0>zoPvZ@wXTvך,x6W{,ٗ :F»Xl:~qǓ _D" .Z%o(wEA8Y?x_/sGۗ߫48| 2"jZ~0έT?(o$PPh'|T<85'4&/ְ0Bbђ칠!fV_.^EҚ9Sgo6v  0.ռXKo>tridaCva1D5^N⢠T_52!ZΈ>Edcs҂>%ـg@ 2o(b8]qs*++irF`Ŝ\n M$PZq o-F oiܔ֟u:Ec4ni8T틞RB{\E@B~ 9ELدaE3Xꗠ_afV(q=,6` $x \! X/xX.]>v&3 Q2CQ5Wfٻ+?FK"b{0Q;IL6" ,ϧڻrD46 9DozHgfdi88˛@E{XX[KG%8Z` yʨ]Y Ap ~\iu"ᣚ60;,TOnj vB],KT v~YK_R׽+@"<[a\̂.ցC)tieWI)cǹ p9\"*,vw[|2h}gsnmu^mfۆk-g \i+\o9 y pMO@T5j; A*)(;].%̬mo,GC #`QIN_cӜo?{.4(]JlVݘ*_!XF}rY/Ad;z6· 2OkʩUш&6ʬݖfmsS=Bj%ujbO9r 2nOGlg;i @}=ȱx:msJa!sPC94]DuF=|сZҟȷ)Cj5wUM7֘\1LR8IOp}ca+ٜwe)lTk3dU:*Рп0cinIa/@:>@ͨ"ςK: `7Fmwh& "h}aB!ab x_s62`~5F*eW8n"/`ʟژ(4†%UԋKk86kV?̇%_; trfRDZ|61P6tVxYH}Җ[}?߫ )d\gbsBۄeQ6yzM (\ f܊Lp'p%6rWXZMՉOrLg#,MSd?/%j|;C?N%i0 ra+'<)1Ы7dk6$[*~4<~G)3 !sKNiluMU&u.se9>qլ{F/8{HpN!6R{fS¦M\Vk.[E{.:2g@۳d3o~k 8Ԕ$Mye*O׮D bT,~ oCzK_L_L"IG @PHqz+0-r#&xF4Zm?Wr'fa QÒssH"'9R. #Ӊy@S+iC2#MIаa̘VlJWvGEyS"f݀w1e,ō""-l(w f0Y mUԭS9Ҹ~/5Vu@Cn&Eg܃~[.LG{ۤenNAnEɞ!\a">9sևXnu:ԼFݸh\NI_"Pˊl>Py՗! ~IEC,^ZjC'똬MUcDK~ڬ1nI**}:SkZZzhw =džV_ÓҘ.6>~0]OEwR./L쎥ah[.*B~oB耭4; s 8 ]yVk|6^t;tŭQF57MHt?!VZP#eL#gR%Jݠ3 骹  aDrG|FvVz{Dw;qbor5ZȀM <_&Z!b3k`gAGc|f[:`prC> ,!H 7}VIO\1wg_N'{#=Y⫺"B9HkU(р y@`ٽ?lT6 r)OCC3Y;`sY03xc! GwݣbqX]M>(~"ӻGjp)oBAi4YHĖrj@x[=%Ң9O$ AʧΗcfNٺ̧T1.dLIh ax[8ۜ2dxbM OTDQo'$8D<9CC 4mx0?:YbEUU-y6OٹmcƔ}g@CA=sHX+p͡s94U#q2Os. Ts& QؚZi܉dN̡3fÃ{ӓ#Ǻ1 sxpz]v]<|3DDRweݺ7e[{`Ј-'wipxFSiukV7$Ȝ{>PƲF 8vzτ _px3Էld h 8d6`N5X+B䓇!\HO G@%q(/&ǣe?;߾ѝw!ʣ` Mm$|=n}}z.et't+فh^13((1ʻ:L#EsHgh0T~JĞha0^;lRtS.^ur<[0O6q]cG~!3*D?q ;ٌУX> zYin@dK#RxҔ. $ NBz.SK+A%B[Z#ϩfH084 P偑rZSkV\)z}>(-7=+K n];5NߵՅ,y FIֻw,8{z&jg.ެӬ[MV'{j%]is3+ƒ&6Zth]e/H+6|;Xݻ]CpIW%1AYc#tGDpfUP\һ .]'3'9LIjWmwiKN1Fe<+Q~RȐX = f\ v z:i`|>"ɡ]B5m2 h}uG)?>Ak"ЎHImRǞ|L*X6UvrMErȦ Q< _ͤwnLpؘt%(.-tpF^f['7!h`9rXygA>ڐI5fjBnE5.?g00b#Hճ\_|%[f,.Ń-^>(/8iIõg'HhJۤC^~v%kO|vҹ(Z4c7(\4\ma^w@O%ٮ%heyue,0mLMdѳ{AvK1!x̘&,+xriɦ7Nzou +jKz&^zoC ZwBUSiba s咉e׏Z++X'棔XpwbLVɨ6}bǠ` e&*aT~jlqI+u42!-ӻ$@WI{ֳnkF 5j*g kOB+2%lw4|lVB7x" U1toFv.J0ˊSJ/ :EVC+,5$7wt2n]i? I ѽйV'm<:弃= }OC1:uS]3}fc>*'.Wpm5:D\C7Ja&(` #5M>DG)XH p !5G: M b(h`s*/̇zA2dG)IH}؎.) lT_О>k2{1\XٰSqgz JN >ˇ3iTņC ddw(`.63lLhaR7Fw˷:GYSkd(6];_k`X:"IꪹpmB5VEh_. کNDCpdxïn?7933 %eBR̀#/%idM#iLzBbFGa2n?Ǟ0;*NY1oȂ1" \CP^>yr`o_dl=w[. |ie$};s,5VzgiѠ}U>q]*>XD K s-'Ɠ+dΚ`v~hvƇBdve.ղV ﱉH܊hZt I КxYD-YYi55Y&|E748BBH'sGK3h 4˖Mcu:jkm]I(T>mULnzACV/='7n\S1#S۟K7N"UH Vl^rZqSKM*vg,ɸ uپ@&wl8ff&w'0h;c2sI@P)GQҠtĚJ=w++V#z: u,Β'.D?*=2? רx6?8XV\ZO!c5?i;&Z ZD%X*r瀉Z X"\x~@RL^I=& βgHt}po_#[+d to Pw)pcQy:,hllJN n„ozƾ=h*|ruw<5P?j5޿'4?fe\ XR<59(Zݖ{ƯS-Kl*A}E*d>ՄQr83/K x+z̡)|!|*Q9if>qz B/*Ab,Ϊ }ljY%e1ouz緱DXн-8Ĩp:] e٤Hn7辒A_mEe .70hYՖ}.3Н*TqACWU6 Y;yn I|7¹Ui~3.!ۀQ"xl5wkJ}Gku V(MV!䄿5lws+mEnnjP(YDuk:(dyL!6Qo-Y#;DsE$vy1ũ28̭xÆQ&? rsV⳥%XM3 .̞/*u"߅lSe0)O̤n5ОPNUZ>=1FwIDS6̚9kT ,E7U*7t7)`J:qVD/$y:'-|U^Xyľ|0JVK1 ɱ(%UwD5lɓÑ*@Sy&%&&[g̠P5G)L_wܗ3\A((%s{DY D7R|+4&sj -xC"_wV:4+yEt+VA_}-X!׊߾zc)8. Ɖ=άǺy4W>ՋGY"fxD$dv V=3rP S|&\]P֐ $I!VBM_5 .5^P;nwt$!ehEUا+E;P 3"I=o$Qw`2yx{1Q;F\.ZoĤ:y?$ Ć\S 3|#ƯA>&j=bI߷p< za2'HJG\tVf.i}=XXL"6b$KZD܂O:Bu(in-g2|^s0'\udh+C(n%ٗI*j5CgW@s)C !BI}nݵ8'TELonz H K9>t] j|MaF ԶWcbijP4M:.@h* ҝ[h l?bYl6)k3-jVY6Ϩ@Qͳ"윶@שQ/<,ؑY1#ߊy'Ԓ7[W3Z@<)x&CۉOq v"SVC FXaRlT\)L3]:!f dpelD_)q Y^ֺ͗;BЭc DvO\mpV`*cT-Ê)ผNr{ΑEx$ iC Zwu]I;_єK>>3R 7d4w A9jďL^k%T˦l hgjF<գ%Nlkp8U-fzYAle3Fj͜t5Sj6n$| ' Yev zie6!lL6{?LcH\ HZca|Z>]n+d:K/@%¸vfϔe<=Ūk2! "aK3y4?ܭ4Od;K?)'0N*̉wx3\fnd(`6K1Gkb. *^E$ӎQ @$(F ݸg ooCR|.NMgf{`6J~)РPO/fԇ[] K?VE4$tu V/vws| ߣTURB)1rGO羚@Cε4a=s%lJlE wXYyP1օ;$\"IƠ-;')or*ޘ)N ̡vUj4or#5F;K6,j|@U {˲eJXP@c[uv?ҟGN%3=-ƃ:=44{pZ?Єr$Շ6` jda % 4cS,UOQuf+̪U62*FʘR% lW}?O=(‚Q#3w@=^Ń`~`:Cc|rz~0!6,QM:HK>_k 5,HYYH( BjK^cW3!/ZnБE%yY6?nfFLS(`$X8 @GTMOpqX6ȍ;C tx ̃}4blV1K; W>swpK^*|DXtUS1JD,WÚ}MU'Rp~"@SQ\S{0_J/"`ԑ?~N@AT uC^`0ڣ/3g5H 5L]I՗&~'rĤP~t˥ØG ŷ`HL\<lHE8 Ra5qO8XK 8Y27n냌l\Nbu^%2"EFl\4 r>&#Lo{` NFWA_Q$6,2܄>,I0mOWdvaU-zlcIKΈu>SHJY %r]Qik}&wط{C,>ȫ.5>Ӭ"Ȩh^& H $D5PB .fbŞ!uJt; ۋx,KLݠ t+j+tx Yɾ+ZP!ҧi鱯L,ʝoB3 +GB s@9&\$Ac]ulzk w'pJ4fkNt}$FMsX>?/_^mIxな7rQL9Ek QНqc*4Kr[mi3Q=u?gr*2g\V?dՒJ.;CoYvv$pzH5rMA~[Qm\_8N$ Ɉ{jN1uz$J 85kmP(ZU ) G'(˿gzzЗ%0,ȩЀW:sЌ4oXi@n5bߖνQuΔ!i8^y!u%)M R_SlqR ;[=DzЇ83 ;f.IRc^}|ѝ)_Z0ǹ!.}:lv}&G@W>. {7V#֨[ᬁ45)8X'ܹA"Z"A <?YNL! t!~T?( YRJfz 1"kqԶeLyźOa QSճqTM{>h){gpGo^(2!vؐ\hZ qG}@2+)$74[5[c93AtKKShͳjQMm* sYfU7k9ncyNwX/_1^XLي~hPׂG؏oͶag?Ynn(Z`I=Dt=^-YI(=4Iv`ak-wC'$Pfva?[@V~[~ðZDY8i|E)Ε'ޏ2?e$T҅jxZaJWcN}`נUջ{ J;aJ*:O\s eJRI"Wn $ 2&{1ɃXJKsc̦ HBbm#M3A@'; 6TTPf2,i?-[ydd`NB.57gYRۉL=|,{S AQÝV7.F@w6E,~X3I(8LtDX&ukIꢸ~5tjᎂe צZGsnj (:FaPjrtO.-dFGN-p I)[m$40ZF変H W$H-:%=n1k m/{՟ vO*aĦ6ֿ0/euG{@u(CEӠkTq7|"6 zeH41H/³%s}$<@ȅgjDD*F}=BT9@-I27ȑp` PTV|ېkX3=#ixJc㩯> Ͱ3ld4fͦ/:9ޏ (7u?}cs;#xƿP>L~"lL ZY8q&?)?ф bпEgʫC(QRh2Ҁ Q 0ЛfhG(spu*4߮o,Cwj L.O7%^IR~l3c]H $?~UGh:qyw ۯ!HW*Y('H2i'ݱ]N ndWa$68Vw_)i4Da0( 1}S^a]  XI-lKMN1{W "y?Jb=+d7C*WL%^r[9m'x}CTF ZK^&ݙ~Ƒ9*/3{75/1`d%&#U~ɵ`H5cnXLS[ONF*kq0 0V}izmچc }/kڢ[FV)-?6R?\6cѬv""<ןs_ܽOZ!SP THaAD9[J"Jpi _aS U&b 4AoLɘ6P4{'Wi@}sv'g 5ƪ)X Sx*IP܃fUPU{@?[aY϶5My\E{woyh@N(OY8y b@StWWL5Vp3u}7>BGa5㭳v۴_`@^*(8sT,jav%ȳcp#_Ѫ&g 2w?1 ΈywBrMn#g'ڃcFwj/5cC}5GYq%8NVxKA dաךر+_7 kD. ī`92}v&w>tun(yq{Ҳ۹ >yJ Om?'I2;/zZP//jٚ\Y]Cn)6GªLč5a9T:> 6u/M durVOPXS]1 G*CCup-qjZ_\; n%]{NdH0nnpgk>o-tRR7`CQI\#F;tKwy;́liPˆ[Mxx̺Mpd͠gL7iS~U .X|ۄȘ*aYZg^{VO39(D464N/˄]Mh'7Q_Mh.c^<}Fx޹ff+:k ebq8Fnm%yp)u"8'Yy==``&Qzĺq7߼@A1S#R+*f$VPUzZ^OT7ӂ~7t2lLj[Tlq"iB 8qymsDafigPi\~7\ϊ~~[,q#:hHnIqO QVKP qݟT m2<[D2'oZqL%(\|E>51 TBCCJ!>;rEg.Wy؃K+wY$TQ1aKûH"i \hr%y}.'޴g{ f/[/5Ʃ:sf~zÈul.#g5JrU2mt= Ux*ԝR9T;*LL23^阭ob5wcbn^ܨ"S!^X>ziL{[̓ZNTPjgu9y<7\(}kAn~OkȐ <%Ϩ)-2*ڳG(4x`Wե!W;z *-n?Qw. (S ;:zwcv$tC~,X0+CQӼS9KfIM%g{'e)f9i>> jҸ;w$Y UBd}I<=AT΂Ʀ-A{DGLߊvq4 % o,~A\XTiCVmQLQ:N'C4<+}LVJjJa-D O~&D(i4FKq++駍JgUV}7w9AZ0{oߢ'hC!tmJf]n/Tɽ;paQ;8@F98o֡R]^AI鮋}M1%I~!o2b&&"%I^"MlrKyV q^$4/& ~ŇAz8e1oKr8r%:Sk+@u{IX͛1Nd0TZm챻; 1kkR/(#~g~z'"oT/ E6s[,O'‹'ep܅#׆vD8{e ,w{$Q7\tgM6"-ҫ qcwe#uNLy#`dj[ &9{Z'ޅJLU6撦[ e] im5LCs >/HG&khZMt dftj QQ߉ڸ~(TNN?X&B+sVxIﮫn;r=lt3A`@;kUU{"h {(Ğ[8^ྫg4I]sB詡l|;'p#?؝֟!?NRM]9;2TP߮t)$s˥(r34'"Eix9Dh`~ 6۔I11T~ޔG $WK+_|u%3߲)%g .[.梸8]3Am J*b`S1L _'Cٴei'# Y9𴍰tAS@dNPmas:g?sឦ+P3'sR=SME­̆56s !r*Z~,PW-Ҭ]&5׽Զ6'Pǚ 2 Ur!^USfN=o}39W(avحFLXje"e#݈_4;s91pY#M%N)WB)a_c2ZL{k3᳆@7v\?> ]t` зsFaB۽@g;U.-)5M %BQJ+6m^Ʃi]e9q,Fj<,h i3e( VgvdU |dj<@)Im)  (NX`/ +NuA/;43ȥq~/V.Ȅ Hj HfJxP0QM7exFNUNC|&Drh ??x.}$y sE%Z<`HJ=v]x14Sfo&p$kHW^tRvŻ#*%6F?ܠ1. )}%IVF&tzVpsGc HTybFAOZF/m.f4)Q\9w2W䧆؜$SPO+KoNiȝs2Ӧ$-0o*`u,##̊f'XSXC(NP{_dcB:@<y.4geu u̎_TPA*fs֚xzF*y|~0D z~7q|.(m څzG@C881Hر#J8~Ï@dj ܡȱK4eF4wIaNֶD ?*m0|nJaj#sBˍ:M6'sGgI: ,3J{}.&Aw<}ZCȜpvjDR;7xL\إ|?& a'ٯU->NKqw`|4'ogB 0XOV2 D.'{US|ZZM,O(,0%TύF_?E'*jr^tQv"1J?7mӃb  e.'$T"O~2' \տQv~-k!]b]4'q(Au̘燆_+qo/z]mtn R}k̬ƫvuh!#r G{C|mtVK˙aT$6f (%q@j{f SlD=h2ۏ1GP h2_)fu斓Jc(H(=Q7HDV:, ƦdBMٜ[ze-=õlީh0z.b0WMWjaBY?^J=]VF;A(uK,qR !gc*:Rzoqnmڮ[d| /B'}iZ QƋ<;#⧃4ߩ٣3Q}D:m`3mGtVE,5] ,>]֌G쳻bI)4R<Ty*|6)P4f>J",)F`IBt^1ŋ%h|8( 7Kt6tK)[9 ~JWC-ajMr}_SU؇v>@fc&mOW!R@ό®<)@REt7=y ,qnFl F e.Z-G2̷Յys .":#Ļ^?6*R.m#PzAs2.j {b[>Cm8UMF8&Ϭ/f3}w6:y-R(BM)1ev&A@kK0b'N:Ōז+T[8ы}^V&|o~ZG࿎L )hހBJIs2 &[:]_;Klu)Zm$dfrHk\ı3Iq\Ils,?4zX+e MOLJ܍B 8CTCn >x9DNF'3N64.7\\to\8H?jɅy،DW?^euvIX>HHE&Wj'1(fbi y,oYM*:jD W!'$v]:])׿XGa]9[dL,`N?.R0ŷVj./H"_|PB#XMԲ \l0bfw?{p^r-.7>(X9Xk pebKGٶHƀ?-¯)HR+[FPuEK>'7$8Cy^P׶R9?,.6~Nom8I&:=&`vd 8-qzLk.V/*1 BW蚟C@)rBmAMhkZ;'/H~gyN w;$-/{ N>@᡼w8F k{lGGQc[%GnUY6xAtli`!R,_eg)).뵼hF7.HÜcW ĺ//ve}g#}x9( ;ωwpPdB*3AsVK#9bf OoNNũ*Q.3ىacB#\}+f9mޔfВ.-Whs.hZcRgPJ;n1fA ѱarh J'?m ad}M"hsܨظC¶;N~,N/<$nŃJ@hFpF.j5?bqhtX# }owGIO#)_! *b[$GR/s.L1u /{BQ)t5En`F#FjMr]54 Bv%/8ດ_-1?vp]"w'.rw00LEy `Tضz3|òZܔxƙ1zٖRAoeK(55Z*aaِ!v*]i w!'TWĂuHzb}ĭ"$GE.f%AȌ ?KENЖ u ״s.Ƶ7~b<{3N=E~`t8Ӂ)/qg=$paA Kik$ZmAm&ߓtW%!,VÅ6:ߏ:%A,2=Tٺd|Q筫&[[R]u)^VTw@CP[&a3W4r7F4j4MJ]n>:hj[ 'ra O OXhgY̍cv(44 ?E3=wpTQOQ [76UQ }(/1?&|A0Ji'!*~6ko Mfs^GoQXĕ P[PJ5aZc0}C$ٙu//b蘚!1c9xyg#?2һQ3ҷ|)6gdTvDR(^`rswϬSbЯV>UI"E"Dk$+6԰sV=ْu6[i(?(~ZZӯݛJƙM%Ek\Қ$pz{7ÑgZRHb;*:=G^hz\9&Ll..֟Y"G0t)DSMp1('m%?s oj?IM7d>^fqQc3>Dy.d5j_Cd5:aJ+R$(AȦ)ArwoI82QbѲmLqj*:҉j)?& P;NF+S%kuBQY=V:nLҊXq6bSQx/a֩^ i 3{ܦKI,U Mi%+Ż$Au{]/~/ GDdEn?łY {[k:ŬH;廿)fk>M&$-9XufqwF/Q!_Iлxzҙ1g؊Czfؘc_\7 h=y#hf(//M%jdFe'ڪ*s&gkmN?UU̯#[:mkR  P?g>=,O38/0L#KzmQr~XPTQ-~\ME; SCmQXΧ]ne8Rne+U'aď;YtiT#a}smJa~Ho j\L@{ #s+uݶ;9$ &&(: rp3\a{@J[.+'4z~A()/߾o:Isޙ3mk9+twm{pmO"س7QCdf*p pe+rZM`S3._%GA縥[8Huוxzv91ha?c v};`NcHE>6zi|@v쑶nMTJRű&ng r \övCtI#^r&dl&rjT9X51sUz1B~y[N ~`~:HIDDox4f+eqEFD^#KG+j<-vϔZl *PnSQT7Nq 7ŷu5>gG_*!n[Q /vفLiJtN*ܿxVnR0n;Ӷ '{u =\cxǼQZ(G ;NL= ] op;}V(m2LXqc~SjGb%ck}WG} sH @j.Vmy( O  cFJAŴR0bVh?Y(=[ndC`7̚-]m?ϝ (tRN !؅~)\G@S2IBH*1Q2pk+!V`NgDhMK=]z[; ,7R;N7"[cxh/V2z͡XDS^5a3S"LwL\{Q)蟲!-T6iYsH7:FPYf!q)*֕J+2Z#s E/l)H,jkj8׼NjV`<6h>"sSs,iс5|72@*%Hy|ezy~ /\gCNDe`srܷ$s2?\Z؉`30/Pk፶qn'EѠZ.ڲqաޡ:uDQ6] ΅:b`|Ay,s=K}lnݜO2|L]Q@H&FMEt˚!/&m\q?>A?X[Ayj MznF4<xlu*W('#Pn fكcؖ@L7&D9U?Sfmk(l ͺs1%'jbgn(hP*"j  %ٙ1ߣ]*e1ak\aytƉtRxCmnda 6[&:s3v̪H XF/IA=}_=ux@ ܤsL&&* ns4NMm{]<޴Xp!;yN!Ak^\wz[BDs0'Ur MW +cչەsD8DZt?izId;ElR]Ьq҉FEA٨`oS"U]*4YA[rf[%TSxxnZo7c+M֭LR~[$F n|?U!bnATsq\^+a -M=äUk[G_#7"i/_%ױyL{w>D?Ih}g,pe3z .x( T_ nh RU]C?:k@6= k̐_k(SCn XL< Fh#L 5ǤkQ`> =Ы]#B:z.){^%=V4kLF*&=#,"lnjT y q)CeMu qWw,6i<*ˑ!qDIr 3B{D:JXjcufq?m26%h %pO^=GK›d0U#W?acNVs?MY#MZ#OA ! xӓ̼iXY\ݖ2Y] ê}NM.8ޜOhuFGkY,G"Vf1g$튺/ݶ oWK*CΛDwؕ{k{{XK逍pN۲@]5k㥸^MZzgOJ.dKVpAT"GTլV>cxj{|BJgsv8F~d"}SjӇIٸxa[@9VU8E\HhxB`m S'ENjD~, u E: S#6`tm!2S#2Na^}8M=5]{i7mtEwWI>YHiJwT@s^<ƇzՏX0yC{ wTH\=b lg>2A!ܳծ ,G?H#N`zQYYjkmNYV$QVX $dn5nLviD=7eT˯v\uvlhF+0.*WfN;NbzO6jVC0F.qVf|N*hy bR080ڥWQ֍KЖ|v@o U؁҉b7DAg H[XMgaV7ʾ{@ZJ| ϶iO O%xr:EI| +!FY -k-zSY\jbq_BxxV9wƁdzA+7q5xFX4gji\l/`rźN.F K?3ȒJ> l$fۉy%k JȰtHWr#_ξ)~jfX 2P&s3.>:l/m|4~Usm `?Bo R/8^(v'.jRq3*]l鱝-y?'aYMܿ^N PtC|@()nLTb| H?5d$jixuw']l}P+KʒuGFUFE9u WqrH&MkMUl0wO5RR הX ' OZh2_nmѽۘ ca}K߿?P\E6>HϚs*s>Sm5p&Hsuz^LV8#Ih>ձQ Wՙy8J>ٳ;{ :ןy6ڥ OS.UA(JY DJ[$"LsOv;2PhFXeЮW4\*Gg&d :. CB a21F9@q]&W1NL&a!QoGôBxiG`+uXl"%Ak*nށ@dnEL,hNYzȤVJ]NzFV7P9?'_dqC]Ő!IEZnZJy(/Tq9Q&vȕ&yCG3֌zrlq:Q]}FWc ^e^'NJg4[U_dR1iz+4$9w1yPMRA_P-0V* ѵ!Z.<;{'O2LJ<̤avrqTɓtn,K)冨\5:{m#1䚎{G4>ąmZ{1sS=1r2)wbDkc`C!B {uЇSvo1beSF׭ufװ:%Kb^3)f]PT7o>OO_Ca"l_ U0|sZ֞'{C8óY]unGI ϖF9\E #p J{I7 D{OX(X?=TO 6gUU/?|s=SwG}㍭-+ #J m3W|dUFI2a^cIB/_ v\ֲSMVAGV {mJze̝w<}$R~]0ĥvDL8tDcP_-Azj};D!r 8oSmn\Ձҡrܨ)c.QdP>C+:dl$++Xn/Dm1 ˺ڮ*%'j=Ghc 3 %*+n$eR9Uj%Ҩћ`<myr/r`1 _*է1Oޏ'7Z=.:MTT"r߰8FUB^sx\^.-Julnon6f3_V'T5%\okJ@H<BU<&6!̻= gf3x0@)FLX4d76ҟUE_NhU*A6ˆ +O8Z(([} +~F"\}2/6HTNFWOGhRdz-sz;o=%J(W1bmϣlA?dZ(g"w`. z?L' b*5Z[*1ӗol$|A1t/5!@뽩?&`"AhU|*Hw$KRLK:[rkScI RBt L|P>cJ*@wIV_ 4B!:VTf;lM'bHABj²i)"33/+/'j,֖n؞A_!JǴf7;Ǿ;H'87>UC9)rχڝy 8`dN~ȐxP6Wn俯=b2 {521f7dΟ`+%y]%MZ#ZT`xuh{Sn-^.S[>sP)B* yzIfW7|l/ZK#Gk$@F`,RH%K>f bQpi$M\4hᇦYZZh8TĬ8s5-M/NE[&$caElIg4צUHO2q7"u0F;#,+-гr aqŀct &ԡ1LC,A) Ѷ7̎fs>eգU2 G%T@\؛lur̢BlϮj ԬD8c0F|^gROq" ACBO|xxHrf˅u&p(0$ϡp.I2Nބ-T]YuI 'A7A f: y' M"\F)Z,.@:ږ-0ЪnBq/%~.ޡޅV1 :{O@ՓMWik 7-gssgT\Z1 KrveJ2#zE ($1 G<ׁ(%Ewy(Y/}f=`|H/=mn+٬JIJ1C)m3(a1y&ȭD :pOk,1y@mc֐b'C%FlH*|Շ.g+H@U[Ŀ^?%> H#s >rě1ӹg#f`v-,>c1)wk3.4Y8^#l֚ C3(P tkih(`>Eu+'Ds M/lřW}ݵu +ѪCYtP{'݁\rZ|L"B6WL#3x+dd&$lmcU)HLힵn?7e\L Bb4C\%~>qvn{\T8ύ)6m([N_(5jOJ`x3^VS7;vn脇wf︶-'wz0)(!v+ p _G?LY rȆY*{$D%eJZ#jN3NWOCuD44P~T,K+NDު8=?ӢSL@ kݿ:/+nXFN N r+Z0Vs5:ܣ Sм27{ ~x)n"yY1 1ĩF;BA?Bpfm󸃲@ЖL-IJ:oQU4иY<ģoSC%QѺ ?ƛ0(JSI(/\ߌ0ȁg,>{I^QU^d<M ~Đv oC֌@L›s9A ikJUh*7GChmU7w1 vq\y/iosB46M˻;@h5śƖm ^Dq|~TC8RHu+-Hqu AP@O!:ʆ7(NݎRorcOVcK1 Ť D K 6Ty`M4bywG,k4-Xr2 'x풋xv;Nil:_EӮePPC'jpX9{9;/=-A`[)fJ GKX꣹4RU5NXN"z 4482Id2y #ȄNF"$(ʼ_9e "NgFZ"H2$etx$б`]m!>.pGJDlrFcQ'$"ҵN!JlaSP|eEE{`Ax [zǺgaqu R0~$O0!s:d#p6 Oz~V:OHyhQ)a-0:xλb_@(wh`[ľ#2e0_k,-*V: bU* o R~ \*Rzi;LɄ79X$(^e]S}B -%(AT1 -xV1ɪ$(~?pꢡ)2Mÿ4|Ы)6rooe#ig]q@CG'^݋˜-Mh~Z v`۰Ѵ`) 5Ee@r^8m,#kۥox.6j_ݵ-G>|7,}{5gzJx 1m%ߓ j P;EG}PZ!&פ$@uGDw,H7 @m0QyÞAɆllBZx{PȈ<#|l \M *P_> #b_ @-pv,MSQd2+a˩`JT@/!S?GERYP/omigz_CNzU# Mx$H;*UCY$t `Kb$|r؞[L~<?s]s_axc}!r%Jq$pT =T+@ Yï6JNfZ:'㳹k7ܭW/0g"һ&:N^̈́X"[Z\ betH/f#c'oǨų3DCX9 1:nl)Q!ϖuj4?|s0-8_ꘟdgtc;Xݰs(4Rυ%6y|!kVMC C6Paq/߅F@>?T 4_YU䍪򢟝<<83&^gCxlѝա63w C$fRgQwElu&_J_ p\#5_j؇GU%)M0DSJUpl kӔYohnﺧ> E+B$[O6X ΃,mqx԰I݊iv૑#~$Еw5ʗ@]=Gx50{4lI!X@<'@Purl9B<{LR >.3J75Dl: [Od^TU-ȥ\xk:e\_Jo7ć|zA[DVvRzo_b ɣ0MIczW:=UV~Rf,i$^dt=>U^VVMՏ-gHe\mг7uLh(k?`n@Ь+8Ng ?ponyoBԨ.9ـ$/"[yu=b$ 9S[eKY wcN n"fF'gO}a㜡ݛ߹IzVqsKqBֿ^Y}Ff8|%P+]`t̆%g>>7RL473tH1рKY}?T0Ơ` G$ED_>U!(#ʊŬ>yz&9i۝"u& BEA saX3˷,W< ]S8>;ݫ ܼ p djjt+i'^7VXnbr?4₨ c.L؝~y۱gHR7qnK:.uvଥ&Ղ BT} *uz*"k0s!TJi*CxKhե'Klg3W4 F'l 7h cJ{)w[t{_6;+h{7(p 6.I9Gq:J;ߖWm7emY,~T,?*ZfK ~u-+ 6F)$Q6}r!.<|Yu16z,N&o#_p7"׮z=Ӡ:V`2ȁguE$ ?7{N>Qi[7g*5#dSonw+`rgURU~y'(4L(ޗit̡wM{XB^M'iˆ%7Pܺ5ǴqU$θQKJޟLA@`.7/ɆvS7Q wv/9WIu[v'6c8-v$QEw~%2X`Z5ӯdhTACژ;G2=ۋprufuA[׺;jL:e$ssp$/tws윿.Be_'˙h Pß%|m9PKW(%WnS?/RNޥj0FyEc`d_%\e-B.%b kUˬEEbjsVSnxh˄ohY)T}\Fk])ohtf3 b%u]sHGWe5qg\Cq61-ԶfGtBTKFbZV5]G9d_CC7r8xK ]%h>Xجꩦݵmx7.!W]XkyEҼ0cߞ- c{eE@GV,'@ H# <.9_Hnq"u3 .`NOcQ.yEFH|eS8~:ʵi"w;um.?,Pq}E)M.z5Bĉ~+ a}[2]f,kfJD%uTC`ް _$ ئ Ӿ$kbNoXOm3!]Pm:iV+łj0|j6SU =.w9wI%{4|yyތ8?,D΋Z{J}J͇'u&%iV"SҐn~ȎT/53@"ݢY2gHxL؝ ]E d&)WhɡJ'>6v/naEV>=T\VUNl!I,j: 8-OhleWA`jG8OH@X`PRU6 DE>#^w|VHtMX"X_)rZ(^UvRxs9h;0D̼5iD"4*G#l EWD_Hщf]E%\RB5IkQ at+]#[$'яllo-RjQ;v+\z&aЄЭ3ΜZ.nQ /1ߑouEnb1|{RS8FJm r/t׀ҹ-cl]m1c{WO8=\SJꕑʹYDZ^q|24lz R B}X4Թ]R]HilI=̉ ` Oy[zfV \oBP#: *\{RVh1?/U"N_-jm5wEi%_ MMВ_z *AJ {f䷉O=Q:a㿅v);xmCQ9#aFwcA$~ì[9_/6C]-}08Y}<#7Tzvuf&g$~:§#壓m"ksBi]GM+tA$W*_98 U,fų;F3CMS:w `pT= #)ӝOy0He unDOQWJZT:CW4o;.ApmPeqy<Ir?2%s "xS}GkQ9{h`SDgor|Ӧ0H y=}+lJe]-Ռ@$IH+)$QxvdSH5}|5炤^vZ[RƐ*ִr_xdXC0wIa M6%z dQ9|ÛqY˙hwiOvӱљvQ[qIS@bD A~.\SFzs`JGxj9<"&xYm[_Qm҇M 24.}REGԯԽ<*pY$8w[u}xLڢr=S!L QI!(ۭ,?~ZA7x7/ [& |뱶hS ջ#j e Cq{tm"p Zv<|L5Nf~tHҜk#]t(q&Xe˚Nv_:3:c:w %^4h2kxy ٺtJ?#' n?{MGc󫐲UcfF^ѭ5ɮ'\[PD߲-kj(̳k`Dʺ3g{J@1HS=Ƒ#tYOqAģݓ:åbsB'|Fϓ\appMnn /d'ݐrqVVy*M&7Xg3 ;hV8!EDWh N ט!cDuI"QB'cn MO&H^uJDupyZa?[Ҡ3 ф9~~mJXY{ĂΡ0>@ɿEIyy(quׅn ˷xAS =d3BD uEOlYۀ4G>XUn038 wm@XcԥTJ2rsR6Ffr6@U'hht26㍇I 5wQ}N<-/MN٩םfL*4^L˞l/ z}t$wϏxrbOUK E̫8Y!V)7N ~IzRG\2ucZaMEiveIi<:tV8ڟ`]9z Gztg 7Z8ygJ~$ɟa>[l]k_GNd*~c3fHfo4J'8HZG0eZ<2md5Iſt&Cp<1Zjt¦r0jMiQǽ~62~Ayaఠ E>P{Tis?_ մF3 T% CA*DO2{o^&_׃~9n2v q(|#m=tt\ѸsZ]mY%5&C7>._6ixS8k̇P ze I&!+,wzhJ*:E)UIWmP;_x=𜍋k1[꜂ԧdicF.8(eI*v\_}3+nsEV*S}4 xn ^&$liRo'Gvc?Asdj2>[]g;9v5Ġq2Z| f>I5өg8~8ʬN4s;((T%(, ,G ՠWn@м<^y;11ԋn2-{Gbڇ )N 3~^D 9xeAE@ -I jslQI$)Pnv;z ;~_HzrN <15 Qg4]pAk8\7f)3z@j^E!vmz9@󢞙T"j{i.S8KmJ\jO\^0/dHЯNT*X_ToKomHFe0` y5+]bP#`-yݮ2G@ 7N,gL[yd_M,Hj5i3 6qEq*ǰ[Nز`7!B,٨NmmxC-I*eTej]>Fc}Wu-S \,GO3'ZTX{MM௫ǭkptxIl|Gs1K=FJK秒v,[3T8Oq}]bS؟gDU[LUU byxõw)*v㳶xuN:]649wk>AipLE![0K>z\j [0K`J*\dɧgh"dLAΈw pPw("L%i. ڋ˛|UTW]6Al߀U?R+O 8Ê82MhkGv)MfSr,c9 rtur!L~V^=)70_Sq;FTEoUq⟧fIz}'% WS̒qmҸ*VnSl`02\zeHK(y xyj"DV>:ܶsSq7()YN PB`€ڏKw?g}=„T5GrMhlhgpUgL3e!?NjOLܴKˤhlEv5ݴV?GHEʐk?L)YiqQŕLb4:blWQ M>DW\6W˻KX~yz="msix&q iaJPяj.8//MD@ {V-ucIN%'շ0XnH,L{1hVaTKgeT5QxSo'ir}6I֤ %Rla`ձ|y%_T,E0ςnEC5!~r,w=w TXu \5n]Kf˂_3&D *kymCgRp[_sc6^ď :yڈ(/]`1BWf}._gEWbioF9[[z~(Ckw-صJ/dQ 9!Yfj"b8dŘqM#&̰w5,v- =4_|d}X&bN #\Q@=hMuFHӖw:ժUھ@9yruާbx8T2S<_c 6't|xQ2?xs€2/b1|R3b}rQBZ.zx1=Z)KqHݧpJ/q@ #&m)s<3h ?saоJNٹ,;&<\|z} }JyydeSnDbeEҷS?PO?`J=M.Ăg㬼ҠI0CR W7.E ]551f;PvZbuy2,^\vڴ[ZMdtF"'Bf R[ o7Ars ̤\,̱q&e=.Hw^L5#"T+)9Z-yTS h5:(vq'((]DP}}U=)! fӦE+;2Q{ڞuovX9jYO`i`mzF`+st `dA"kBAhG!"sh8]_T ~ر g܇}:,1l S!ħ8G$L(( %ly>t_Q3FM:2^,pREEp 5k/O" jGSXjG% &!4=;)~o!>OI|=gZ/یW8!$?_ST7#|{@qIt:C8_E~BȖ_ctG-| |"<$m|B{I;4huTG5%:5m{y ^;(cK̊ĂJ <F*ŷQ\Tя"˷p%&!0_yEWa ԍ#7u!L"^QףqJw{/o갣.ݞ8Ă3v)rnWYT:ՀBH][1Uv͈0 KHjK7W q;3Trr1ho@_;o @0s?:7ӠIֹ/ue[ǭH+U~lziPn d4;YQ: 23H'qr,J(HW/f[vןFS3< 5={EFn惇GpS2 cW9W18\;n>$R2Xp`\e&ׯ01P c$.1ꚱEse l%Nd,:~xPxד 9I?&NJ?h!!b jdKK/Fc|C~͓}^%+ZC_aoQm -=/@67=LW9]P; n&01E;am5ǙoJUwVe,=fŝ=L^ҝHM kMux]Пs^QѩG>e]w `8=$Zt,>l66_a5pCH|eR%3L 3+,Y҄Uk5U7ie8*6s,.QT9j8k" m & hQ1)leMI;9 jn-ѾR*WFI Z }]t{D67, B'C^^#[ܽwu-.6*}^^h@kɖَ*#$T4XoKR"7p1^Xx$:q^:{a1VX&t"jTufS;3BoSu Yb0bյ 9Pǖd\P[(T}1Chpzݯut܏z=$^֕H7< Gr-WmԩbbڲiQ8з=B2 kd@J',z)m{WwV#Ƀ5nSRD-+]N TfpЧ۬D{fPMW^TJУTctCQ~ZňqG#uF""]_A*Glz1|~9Z/ ?$z* eC7 ԴxHX6CR|]?6cL;b=eXPn4 c_g(e;F66"}bvZ\)SWc Jnh yԟ,!yY \++OP!|ݏCh,qʢ<]>o)uEQX vf9|K!'/Y|c$tMBl|[u:6 rX$ pTJfq/W VOu7H҄?/Bt=.lWΖ^]>;Hm U 8uqo|)l_14ܩuv˖ZMюL[?띌, N:ݴ: GhBYZc TtWuehS b_ڱR{;`]ت{wvVў`W[eJ A. {*5Q> b#] ݏIǽڢg3;.+?z1/w *ߍrI bRWH3ZKk.1kx3.@i]!!)ԣONlJC{'t[K*aIjF1*%j5zHA8R?0xt_ :tf)ؒzM&H~(F*'6!^^keTJz'T*ȓiM]?dw+0, dv/f'Hbۺ.0K$XŢj ހ. x ^`j) OE.̅\pRbNI]~  )1F8v h_F,LٞjUc9ңבL @]Pp|n;iƐ%mV=b$^̫ೊ<*.>Yf;ѻ9>p^{Nrhjnuq }BPh8SţCG[jnesRǦ[Z1)(4#Ay|]&`g4bJZAV *kAޗ"-s}=3/`b3s7EҖumCU9Ыb.XL^9 CV:NL+@Lx݂&Lf%ZT`5NL#Jwgu҆puSsz5+N'd3(5T K4 "wO:‘!%`? -Q:MheTFJ TO׈bKGCv\BvtׄK@*Q"Di#P~&Qn"}Ⱥ=s?(QAxz3{ˋD$sT.:b Pfp X#Yt~~Qʣ0-V|^dmttןt]yzg*.zo񃋟G.#:t/#q;CߪX+Aj[k|g!֐ʶ"<\bZh5>ZwaiKAv8|?v4Դ4- 80{26eWEQd6ř. }y@Gn5h/ѧ>Pt&P>G2Y)WE~+⼊'=caو0\Fmx jsƿ` 98햿EBa覆\3H4ntY\q"Ɔy֐v`_e̅oE:qWc`5'=>,u 7| Exg늉a8u"A3b.(rR<{GСl;ˬrfePt@R 5ͮT\޴ YW\%E|% e4`4uNgR,,-|gsˈL^zt쳌>9pE9IҡIECYiם6_npii;9hHM]#IrF4xou;xmie#@wAvL$7sKcaĂSpLZڏ-b1 䖭0."0NoIweL; U>6"(aspbFL >^7q'C4 .?Ӱ}=޿:y#f%_a&{ BªNTYdc?T,pdx\ (0'* 7+*Yq Vp|CTT2xXh;JzұO`nwBYjB34!rA?{&G/ۯb>hEG21ȗM4~})K+ 7;s0q-Jhc;=$R! ̝b0H{ _me>vGc]!o |O#'K|޿}ҊHMҼeTʠ!q*$Q2?A'FS0dvO2(Ze3 f`hU"uoZNeX-қ# cAڐ7Y7;GG7?kkx{tg E6_gmԯǘ qq{++Jג6e bM." dɧ/=,,*ˇ$XL3g1/4/OB>ӺY(gN;Q<_'΀@ (%{bi2X&V":?yz،GEd4̨6QD! +0 WŰ2 =` -Z9벩eyF ttћ^p){Xw&.h~*zԮjon'άYnۡ[|⇺y(w ͍%y͆COLЄ_l|Jkaf/_1֪p.\!TJvQs);,_8K ω˯}Q8M7Xj| m;e6~όKKDLB@;ku,\ R 쁥 Om`¿pu{mJX DT4D'Z,m%vB*%^ZٳmVb&ONxOR[%H=$k-p%(*g%?`lC.g:5̍38^`oOntjObkp0 a4gs\ESK W^(Q"|hW]XeeGhFqAkPf'B2@ZFeڄ*VQ( 84~@Nъ`s%\qb5NBB'[h.y >DYK^k|+6&D;f䦌{~s]™5cڤ1˾gKJ蹨Ue\{4F_Ev58-97Q/5^esRk &?ma! /@F/O6 nc>!k'sl! ؗ5yea}t6 K"d 7&V gⲌgQ(/Lxw@Qqj3 DݕUeIQ9; O،`bK F4*l\Ejr!U,exol/ot~>|,(;UAcH0ZgTͷ;wNa {Fvd{9IJ.~dD6{ʁ㮘YaКU/dvu"vy2()Lܲ5?8,]b?I>)U|g`C3i==̭ _ǽۉ5mЫsUMH79̻"|sPz%Uq#%dѱ&+?4M .^4CabI4stvv%%NXlj8"xf@|9!]+T}=Ozja10[kġV'ѭtgX ~ԍe^?.DwYb|NY6dNY&X@[)ec=_OgB;Lu}y!yjMlmh.O XMYvyl)l`?:+s+EG.;~\^ ]:#EAiNql^]6\^!_PJٚ(ajXIy)$P9Cwy ԭK#l_۬WdL$!h9qFZ hR$%m=PfC' H%\#"-tb)@C}qaA'4Q;,NlA#ܽ97R7>Gow@ l42\Wl|)@CȖ! 74N,mھb(W;uf ׿<:So֛f ޝmd剗<@˦)/^|*bZM䖶UC^ScUݐ@=x]IV,55+MRnH=WvZg㭄QӒr7EblG zd[Jr ʠ~q|˩b 9?B5f'l2q+"B^8lγx,8!! ۡ!3Y(z. }aal/ave $i9q['ڭ:q>iQ{R3jRxE]7yy_ #.88xW\$BBgsؑO es*Wr:A`$[O]N'{e)!Ib[DTϟ0HxlXtFFOO(}D B^ "RiZ%JEӪR @ -&_Ҭ5u@4r7|qļu<ǜ~q*'6{_;9al[u:D3bc > "~n^S?hdw&hlEktПmRmMA8<L ֢o zbHe9z.C|CBu^{=2}e$'VV+_ʂb8V&h/ hAj-A+ئc<$m=1Ä W;!AվxifÅQOצih&˪T7Xf9X͑u!'#Y_x?d90 J}P8QuP*qAL R_yR8 + Ч{񿣬07OMÊRMh`l 2FCCNN FT!PR : Yج&VHT9́O Gг>u&Oz5@-x̊x'~ *dMZW,81fDĨf B{2 >a mE__ 5I=X'`1?q[ͬLapI2>RNK?&D?tqe}@BfE{混9?NioLڀ%;ٹgXԊ )gxO*8dQ77iD]ʪμ 0$sl^9e2^6UU.gVk}T/C!{7EruW XޒŁmF @I9ƚ %`_5#!Y_@#7O K;@iDז^ }Hݵ~tIʉ^(?w99ڎ'jfFy:nL\BoL{NUɼROqcwB++?|4> yq -#" XR؎/YN 1 7)zr?pvԖBp ܽhx}ʬAo1_1+5qT<7>>4:/EV/Ƀ6{-a8rB#7h)H&?$q)yl m\0LlEcfxuu|!}&}#,kV>>v\~'a< I hjwZT@{J핾 F? @1uIq"%<kmz5H h.ڹ דk slCV~:Fuh$3+ }|A/:j?ݳ9iGd!Cq2AFxDCl45qyggHgY7t|g`&]S#vL!GG< Ϫ ;Kt!'sۼ#^xIDdxըAS/P]|OoEuُ hiLYˬU Qʹ$\B@I8Uj'HCd^*A3i?l,(*Fjq14@=黭 \3IҊ#I}൑X1?8X졊kMpd 7L5 ;Zh?mjzZh^ٵS 딵Api(XQۋ'/`)ͭ(pjo/Du=F,]'(>զOݢ9 3'/)_w\ W! %Mm]}HU4!լ2TȜ ]7IaDZ.ޓƧP{?C(_|q}DQGEᑯKڼ:=1sR -n:6nL܁fIJ[ {獵W Ӻ~RվV)u Zk8}7*%25e!Xzt )_R*;CeM[{ZsdP4>wTlE3>w7pNɤI|&kW\^I/ %-k6e B;RNz`n\TߌYѩ)ؼENbK&J&l 27h3Ȯ \_`z wnپ~Tէ#^ORLeۭe fBiذW(FEY'V(U\m?[/l—Fk꠳ΒgVBCKٱy~K*/# }p%bu$/_+Bu֗xR*4R} } &*MfȔpQx!<_D o+[$B[?rJ܉rWl1&^7kՌ9, )#:U&1>@&w+I׌$cL$f8$j7Ca 91S<갯{ܮt)1x8j|`QALi| 0jԖHη+q@>m+r(LUz0>=oJ1\I)7JsϠ196/D;ϠSߚjVD]LB eD Qn+%SVR(aԠDXdY/ٿwtas$(?G\q02]|`?=spu%fW =n5ˆ5OI82v`iD:"e,DYmVs/s/]kLPh29 mX("(?e5vKu)X$˂4';4<2N>.b?cc%ðlU1AUV̰E(?mH"ӥ3 e \KY9$tK0&hzOw,l8i"(i. 2 WI}!&X -nOl{72!sdN&꼱f=BJ_Ì\'&uώ v?޲1Ao/R)(qWe6&D"pxkNâI=[U6;2$GW5G/QcDaUm\E ̓˰/ %geT ӫv 4?l 4PcVm1bl(&_wa}QzcmWsMi>yx݋>L;yB{.X@N?Q 0a| r!TxO\dDŽlNM4+WHD SHT~TӲԓ"Z}jf)H@ ?E?ZpX Hٮi3dkSvYqzXk#!u><3[Nj&UQd!ۘQ+%rpL[nExSq2]ƭ5@ZCxis3 4!asLl&D6l6FN.Pqbqe2Q>$l!h攝B-b?ۤt9yC,+-0H%-hicB Ȝ?0I5 *P${\e9'{@%~˦6԰~}C o淚ݴV3o< }=@b82OM?1f5JCG#o$twݭeDPO/xFO=܌gEAA\%Ur{fi~ݎ[ZW/XhȝeB{Ըh´GrveP蚝s.BHԯQ.@ŇA1x ӈTOo@G~Lm<7_vέn^O،?= bp*[ʮo|Hu%.v5u̕y%gkOIy-234'iUV,rfmd*aڽiQecy~;dnjF1.ڭ<0n=ȉtENrkK&5$aB.|*tI`s1ݣ0&uٷmKGwC@=cuX>rx!)[-.an%%칱t&?NiqN!Vw5~,.5<8αA#>ޓ4?reWMih.]oN$FmNcvR1ipJ\RSǨJbdn+f1BnJ1~{ԩ%dTFÛietqS5GRE96B{{bxϥc1Nl)8^K,T'V_n XcTurjVa H,PaԸnz65r뀏菿l 4s̉/kcx56ز!,Illર PM <@=Y0ŗJQeWy8 ŕ3wu3C/[ʩ51WjZmD*N1[C3 ^>2%F6/T#x5ZBrQ?`CɊF{'kaPA5r+`BS"ˁ.#b>LBve>b D5=C&Q{[L.@7 4ޱOYVt~7aM#M.IKZ1iR`3,]Xr{CFbiGeh3RA!s"k Mxsqל $>ӭr:?۸(b̧xv7"ug#|]rקHsa2*ďB!7dYeSGԺ|X%U+*!Kn*|QsrLIMA *k*}(iH'k@# cچBӪY{oVd,;4U|PFg E~=(["Fh@ɴ/gݘЬ!m Тc U#R1 bˑsAdL'R#쮩C:ȀPƋI{.S'k}^J‘XI7߇LJ,L^8@"#ܻ,O^=s"**Il\C3Кq=Le;{ :}@訕)Ոw6n~v [ʔWB89v,цl$)+3w_#fL"XϯC{xdۯz"D|ЪSi{]N<>[T,4Oh@}"㦪%nj[DxC{.hg;} W:v#ھgLh9u>2d-q[ D:<rOn}'a^=*< g?!}^,"kMKgZZ)JN-a ⟟eQiM__CY}NUP`"hV;fFnzm"n&Yn1.~gxI Ar_0cħ* E !{3Wl͞ z0mv aPU%\Ei1@t1 Yb2 NL{uܔk>c/641H귶Hy:_.FRB;!JL.3 Hك[1qБd+VdB%af>m,d-\٢Sz V߿Z%/l f38zwAq08G+ncdtk&I"[\L]f@H%ҶF̩BLfpqZ3ң]iPn OPbkt5. w>CPql8Oko9[s70)F%!1GU`/dGQuvm D=+?'Dž.Hi6P@'pDgzwH_0RaǀP?"- ZJi"NgExʲgTz]^J۝+]%ul,yTꓦ"a>/5 ~UBt&T)Fb(TW;,ey$N :z*|]V=/][:ۀU>IðvjґN~<}@UA>^Qcm죮͖f00&ݘn/ɥ= AlQ/hG0ϑ &Tnx훳ʼ?:KKNDۯq5LK|f4HITޠQAC޵-BkШI#(2S3%LncWGp>"t𗏓: y{<6ig}2s/>"TEVzesAo&2Praaڿ^[ R66װ91r H3h6\հro7[rW&i+o ]nD dyER^<)YV>9HFca -?uҴ}=E/eT9y1yƯ|Dr;Z L҂y1qEq?1CV%Vꅧż v]|b's'\":: 4nWfe 'Iw'g潿mjnx9mSwBoVS$b=oٖʥb1.t|E L˓@ q{T?Z޸svs:Q_?_#tD/},[ZP 4<}Ĺ_У$9jy⺚%K_fPz(X㆕o֋9#i*qB8W${~094^$QRأfb:_U9vZ[ G z5;@ )}5?2Kz^O0s j~-d~F~YSy.T)lرg,E\Uo8 ̻ nAu$RdSV豗i.8ظ>]o˙fC9ٷWR&h\}XId@4ЁRq? .ˡXURIvCE?"VyްdEEi qDklp̰H DT<(,w4iYǫ)Tp- ~,Mԗ뮡y 鼮-Hj lU(WP UxB$ 'nYZISN\,.|>5ʁ(c9(|ģ$o77B]AM(ɕ,rTdh0w Q;6N?MTyOL+'M ?>Y~۹J_AW5y˚WϕHRKϰwv_F> <F,ň:Q+ZTo rnH_kN/Nwn7˻n@hD Z3;aʯřl`B0"Ll<e;<=g[,MpZ+b;Dʨ :vCgw?@!10ϯhD\M*~6% Z?98bR{M$&PYv$@.7n ~bg)gl> |sF]9|U|B>FOvH[ l a8Rѿ Wtŗh.@)BїPKu|W@$oG*7(c*bUݲQD'* ;>HI)*ms -ĘW9~ske~4D)Ūmn%WL]"ߜ߆rI|kWVIC~(]䆼s27BK(SU:ޅ XWS h1{')|?ԔѮi㮁xQ.ئ &eG 5b.d<4BH( *Rk I"(r24IrNCKu{p%J*1kPqqд>ͭR8Ϣ'|pY->`b,bm7DCfHt^ {p%\J&^X j"b-Jb}2K9R\, Fi1>B]/h}<ڸ\ 'Hupy Hכn)2 MSؗg0&&5UOd'X/x?W,jq7ͣDy] su Lo,/c3><4]4+낔W]@ ȎYˁdEҡHVw2fjx^ gq<e@v;|u+8 p`h#frɤp\cĹ.BP0Q+cn. /%2bUqvĄFd$]C  Ϻd% >"cT|ZA1pD|~|>o(jLDaqz5ڭ.$ZxDT PzN^1X}_!てOضtK  9UEƐi_. V1{y",aM|G #T Y@f3]R? _Iiim9.վ@bFYa!B7z(h_}V:FN,@>#Wk~VL5Yk̐-,Ʌ0D<"!bz yu8(bC ^"2Gjc[{HZ^HÂ8L|LC_9и z[ ƕ : wC'c k$*3e!8x/װ}ɾ-7h&{Glt{u&VmC4a1D콌0u= ތAv2a`(R J&sw EZw%L'@g:hzf.)ҾH!V7duBN pT ؜ԗuFQ뗐 WYksZ1Sc0GJX)7-ޭb /YRW$Luz x)/ 85-tnŧ, eC_Ѭ ni-BkւD1f- }IJ‡ a&݂AloakA6LŞ`K<'݋ڛfL뇮-&W!駦VD'p/"' 9s,\n#5<= jAI -U~w5-Ie6Y[>iѾKJ&$̅|h, p<4pUea($Y :ܴRR{Z/^ ڕ7~J`̓UD8͆ģbj~]9+gcu wH_}Xsθxh[RqrNHb2 N.TM~=ϗyG,a 5tcqkLa3&#J h-M&W/|Ǵ!fэ24 uő_8VKK?S85 .גߗ}wT]x퀰Ū`o4$]Mp!bz>Co&U^-~:ʫ`nm$-4x[M."0:ω8 F iZM+/>IwwY)?BL*ǤC+ 89h?SZf+@ +e4 )HEa{plʒjU|'5eid(5X )W?ϱb:gߐKJxC耫D:uuwa?"yR[kb B˒7 /W\KY\ip }'w7߄~r!=,Pdt[;8vuSW6_ c-'J*S ۃ4/rI.E pi "IߙyZ%4`(Q.tVaJ0|欠ؐI^XCC6Y%_^8Zx61aa!+EѮ/-K8en%Wa;h\ٚ60(J;d0 ]9L.k q`3dpP0`w] o*8U8n4My9Yn_L( U:Jk؏@Dl[".|:ZuQ.y 3UZhJ,QW>Ew#/=Zo92bJB.rwAd=`y(Mٹ`W-[W'`jmșMб=1ohI5w+.;@6vˑO;?.@p던=9Hyc2'ްBRc'!H߲*Mz]w[H) .,!bS=hT-}_g24>r}𨚘Xgz8Z :L ß*a,VD2^d:c4l*tml4 wXم.Ft\cXeZ`*E-[QE|^5pݒEkQٝk>y3\ ?]&1AU'A%1E07?L͂G+g`&/ 7vǺeDq>^jutIOCH(†u$%?fQG+=x!\ G#Z9'جK5Hm[HN4[# _AX&wt4(QF3RbDXZruC/bQTQ,T3\bI:c5zQƬ-năS]2A5b\=l/ik x'+'Sy} O0s=+% Cں'ƌk^ 6BB&]wړ_hoYYP)0~ +O r<$7Jխ?XrMpdy@;ڸ/#/ۉDq$$~xs.ر̕TI4N O$ 잴ҫ /d^XhP iYX&a:|b[AP٠t9wph/X,3oM #.RkL,~'Pl_ِ.5%n ˳SДwN{*w3$trϠMZu u}b4鐚99xyRNx61ś 7>ǮZ h|pg|BIOL[@p΂9wb{ ~쬨NY2x%{yD !ׇnTh.qe[+A"'Pㅦ.7ZMP/ \,z^TLX1X;^^.3(s$e;5 Ƨ1yz* yAvwZ[u9(L xku6٨ZKm 5I-gb|,t4+_ *A} 3jUK-v|pO$+Ʈc)0~ֵmYq sʧյ%`=q. U>QUM/v&!F@a]u^>,|6A*ׁNylj(A`DwL'ucyz[D6&vpohyb?jIMӢF|bg -6DTA9^]1 .y҈ ˛(*0 /,/ b.ЅDFHuevf2ra&H=LpO"6fa!{rh 3C4TMkK .aߦg욹6ʃ%(vM?SD+LXyI;}ܽp3vx.nFD$Is ƙ%5U B7zzMn{CZZ]4R 01+"ӌL,C+$jeFG>hAsBn0/2oujYT!apIo4R=/@'s+67[ك5U:1cdRhY0)qxށòȻ@CQ_aq\;T .fJ cBKRg-Ҕ Y G&-c}p nAvr f̛ٶ~$NKI];(G| {KD#(3zcj7LזjJH^MIRХqw`ЖySHg &lޖ%#?׭X J r܉;eE&r7]$۟,N$0|Q]k|kR%vM`gQeUN,;hw( Cm72S˻8;L9P抬qclSKKn'縙˯6v_p6~oJcJaO9 dB/y4 .6@tHb GRnHʗX,RV4!]P0lSnٮS 32{ k0Z QQóyR@Pm[80sֹrl ?)upB_bl[\&cDps?<dx= w cu9WZwgi?8R1LDd\Z$S0xj3S^(Ư^\zv5y&Ǒlˎ`ك*˓xCEգ2zA3GUjCbT5 w$z([pj_j%2w/ɧ?ZaE-KؽV%paDzX~ffr]]iMi#ܾwV]mӝaWxa!Ky% Lz%Xh8ZQDsHx Bt$soe+:ܣ%:z[u%Ap`ڵ`KVoJ֯u{0ְ2mj.os/ 0 w*+ks5Hn?E5^t`(z4f=ld 042E)((1tJgò+٢U7.njZrߺ]a6,uL.9dD4j@3aBU\ *㭲nZJ68JBo>7mS41'|Q/fM.cD盘2Ȝ CC0e Rb5Rc3""zJq#YGuZg2p2J˾b[!ҼÂ(?%( `΅C_q`tws'Іi?%/;:\bHFK>O2Eӥ듿lߓG{'ܭ=㵅 _gȺK6?(sҥP`ۛćؖ[! 01~Hꅽ+?X# x'nQ;ʷHCIrP{|ܹ P9M|U!6h qBR=^G^&G+nmC5pZ0Find48ٝk\7Wdm S`:͸NvO!ϵsVuf`݃@b0fLu7W̊WC )? ʭ/]&FµlA/v:V\v;x~rvmowL_DYT'|uRI!ROCN;=<|0́B(zS3\U~4fǗ_g:hQRI<3oGȎf/~EeD:4iw@]S?$nz.R1~]o:Czq8UC0"Mw @8*Q_ʈSgاQ8#I7$hH6&9#2U-곷t#cRw~i)HAg4PAdg׿ۢeTU(RhF지'==UʫC3Ry fz3ʹ}Ͳ (gٮ=>^D6fqB`Talz=(H5$p!XfzqHJ"ZGhh~%nAy 4VoC7Ezo1ٶ89"tmLfy 0#Ax6,^Js,uqmOjD|sJ1O'r+ܩ(Z*IJ" $QQ,G*@oNə1h9RiPHW2Fp= 99!#GQAPȮY6DJfr J)FkHI ܪM)S>YU=VX֤N6G,~xTf6yPQ =?_g }gCT&>M@.i H5/=z ®XS"Ma}>5'ߎ~>2#?2x̞z>B%PtQ[ R;9&pIL zEB Σ~﹎¾TTy=Oљ x0'{tKmdc*&wyx DV쓺u&wZPٔ] 7t/[ֺx4hd> ;L6ܱ`-bVt~msJh-qx]nk<:X^ ~"RimXyP%%YC^қ*(G2yxX3d<7=lZ02]T@UX͹NH`?EGp߿TٳUO9S!d~wUد^d˸'2X+G\논W>$7hT?x0Rk[ !G' 컕rWuNiEK^@}_G_.ǃݯHl(j龫I!CLhJ[vrD-_F8BcC ١^t=jORo~D0.;&Ji!ZKZfLjӥlKTMկ=ӥJL9ޣ+[>m߸DzB#[~U@QLNF⠝6^QSCJ*ؤ=Nګ"ъo'0oJJ0T((΀"dfQķCP+}iFJ4'¥R؄Uv1>#f7xAmaXr`z"ӊXg| !,,ngDžs%ۉYwGD˰t>abӇUM!Jf]W$\Y Yrz+߈RI*Պ)2 "4cE֛_d5U,oY79#|-)TVeyz1䔈X=ޛnlK~Ɠ/n{ߋU3p~,lSn cDuC4l%'/`8A[z/]Ox(_1>-" e8ΐɝ28;a}+ܹͯ1R47n'uL)M+k!P_s|m 5>;r襝~nʞ/>)D]:nSKaC=Ԟ"~tBy E\ri28#DF,|pd{" ]#Ɏd;ubkùxfdZ f2y$f;2'CXL_t(\X6~f gP"9JRL$?x/逧*LKT47f7 鷢:٢-R,7`E RQZ.'5ϤoYzp _FZE6Zw):?CE48zm (3D+lfcv6,o"ՋI)yoոUY<-ˠX5̬/S(LR_ғJ8FhM,-ҫwI7==a*C|Ds݌on=\AK'GK jפ΋ݴ$TmyjlYO[ ~2WoDI6'jc:~ xaBHU*}[qDj^ a (+2I\jx--ۻVDh b'~Ft w^ viK++TҌ'S,l3kAg iVY;&.Ϭ"݈򓈷I}Jc@_kbPFck4pDWWQAب‡<()d28NK R-IoX* tDZ:_=Cx1(eA5rټzOj]\%w&لK簪C/r$uOHÓwN !(L2`)L3݉xx/tcxŗ1'hRk+<"Ѭ`oӘ:(_2lFŖti^/]D9Oi ͺ"yq<x~8~p>8^6ˢ?3Gl"_YrUnkC=,}VmW3`R1p_jml."rV`0;JUs0Zޏցdc8k[/6>|-) wP~^TG5!Amle+d20K>lr*(zyDRMDc[h"w(mhFSN#48bbU [`ٮj1$1TD.hL2}\pח?'ЦPYJ+k^JLTχǚibmӒM?iA¨71 ;soZ՟Ek׎^Ko`',R3W vYuSh2S !H9S1̫8LR|Ɵ͇%)GNQg23E۲Ϳ[19Fш?28}Wz$OsN;-s*#/fY"VP`tu3.k;f8uoe~(gyS@Z}^ʊ¸n"Z w`w/.J[" cCXmkljW׆6ejKA Q-V9 $SNO;X! >Ѣ ,Lx=*ऄ '0f1w1a9ӿ 2% ۲Kpn+:Xmbt\1NBjq, HlȒ0cNV2kd">sAc;淴c4uHʍ >JRuM1S`~6kJ{PGk*362!zlN.6e/'ԧNSͯ hcE#'wAug*@&MM U3m2J?$)pb"+IH#.Cʩ xv] n=&ԘWch;2͗etޑg UsZW*HR./Ճ6pQ79M~gOJacidžN9(ю&?_2 Ö79P2|MqڮbŻuY +#e{6}mV 004Ty3̥p1^| t¿Vf >0Ԍ2 J) !>+NsS-@D総?\$sH7Aޣ!?[}վ`IJ8wڒ 7!UEM B=V6u1XJFl3rzx'Ppf,A lr-!CJS8BO@H{,Yu# ,̻gɼƭܕ̨2tqye>*^D:;瑤08d- 63`E-iR ]l 3-xb q6Ӂ<b6 OӠAj\HV U٘{U{} ?ߊgNcHvTC7GBG<Kf$bV[OS̸NHzy/`b2wʐQsބ~nfֹ7pH*<:, Oỳ_csD) کcճKGA&Vk]X$Fnbf eLqƳ&:٣$S_QYЛB@㐟nz Imˇs9܋e,?>LL7<Șcu|_A+O"s1 /{Ta|_vӶw$tGOCYJW+y[ʒ.n엤;gf3n%v2?%\$63qRWڎ7sl"2{zё)#ݷEtsjo4hj8MW]}FU/ڣSZ&lŘKQhH\wϲ-..Ŭ8Kg-ߢ֚P׏fSnk(ErUcVI^0 #T1$8 3{A1DhdfmF 4("tb3 }92^Pl32-gʹH'ʙM;Zq#dUh?ٝ/l㪥!Jzox8^udv >LudGHL87Øsˆ}вv>!z=5BcB7NjL %<~_d=BFWə\Y'ۅe*3=2Yqz^H(y J%L{mGB\v Lߪ20$R#MT)a!\s[RwoKhd niT4RmH)GQ=H e7eo)kC)l3ruUtP =I\⒕v- ~@m$ZVM14&>,UA}r#h1녚q)͓@4$- ]GןǛզ[OJӎ:b9y[;Gl'hB1RXϲw]1Rݸ!ʒܰ|>{E=sv}`ymP$#G:c0b'wvպ'/6tD}vH.Qf.G0$ifHm,0vQI{V uk"CJj/K򈝹%{P fEa{N"EW0LCۛ Oɂm0iC]\w\'DaވҔgK0YM׶O۵+IPi:E36歽P>)kf(X{6\pakT1)%!c9HY[&+W\أ8u0~jxz.6/ 8mf1 3w1C[H_mia=7&^[|lfC<S XU VPZ!laPDO^uwڜ^ŷثm'1L .V˔xA;'zn>:S#>R/05OyH=CXv .TtٳIO*4 zκs-'󷹪0NLDLdw/>nK ̍jAf]b& ՘"ldq9dZ()j WB=)F,@Z@BN>_#̈wȻH+G}EaP9"] Epu{ l[HqK^\J jPM{PFӰBA Yq%9d]nnjxE+ N|+}q[bW7K2ekzcS[GihтNwuM"3HQZ%❝2FyyJR;J1xt;j+D$PB`SIWѪ؇k\>T}yfb5KLTUf|l|`߸ MxL9NQO W$-.Ȩپ_xB_ɁYi_{Cfu?d&{%խ1Khہ}ƅp[zt h+\B̯ڕ2,Z[ww8*,Wx" Qw%""IHAՙAòO`@mR0~\!OIؐ R|KY+11DE s$&@LҶfqt*4W#)`Xj*x Bzv P'ց&;1 'eJ:%Uo'=0p`4oUvN L]xH3.3 ȦDG;\r#'f`cRd5ɾ繟r5JQe!.җ^6ed{/= da]XqsJP ,cW12%zseNV$xɖt ٝdVٚ)i=qKS@Ìϖ'#^A+C/Q|y ^Fw!NЖ-c]LHIgfr[]Q}$,+醦t}COc{ns}wZ[u(kLXIgu5Nig`St3LK O:+R6Ver%݂S)Dۄ68\"C'י 52nk0ˈϠ福ddI3D<) KjZmƝLzba$ԥEÚMy5'/e+*aV' 0 MZ?ĠZ5 ,5bSMQAө5* ]d#nٛW 40 ҙ}>iW>3B0:C0aEBAI#\!O?%%P(P(>)7B &P39JF(G6u:v_BY=ަ']C0wFoyB"yV3*@i(Y'cC~%r[3r7~L鰧Fd5G[3>ԗNY:3L6Z[P1=rZv^EV  jLL#L\O}7W볭c# sMlJX;bN}**Q,@)zӏc^|.*Qѝ>NfjmP*0"ӡSJpbYҺ$12C4؁EͅǓyc,BHB^xxR+hjD4̙/c(vr^m7sbfOBo )|&  bJԛE!e T gϲyv|J}~g#?N@2m$[ ceu2PYv2>WKA58U?t!e<8<0XKmkmӥDFWWUmhr[|y_ ާ~$ݚT= tzp,WT"]D^AS 0M 谛 k|EM<̈́P> (z٥OipmWٟ^M%#K\t⥟b[f]7F};A=cC'2!sG7=WZZn}S@CHu7B/fYkCW ~`h Nb/%ʠ>YnHſ7חoҹvg=D-[64@wH{Ջ,;׈`޶H"9FwJO-AtnzAOP{jD.0i~"5jJsɈw-=C3lp"fGE{KӵqޢpV=k?3r"49~8[ye*EG(̠_` {\Q9 h /C_XJ ` F݋VStU#S?'bcw)-g| |f ]d,j1$[&ѻMZgksz}D#3r~pgp3CU;%}PM_U}=T 1U9>)[Ϥ,nĥH1FͲ+ÝH":S%[CtVK XkV+Le@]4 BGi0udzB3iw lQ;@:IVgrVqә*N#s& )NpY͎_sEHoN4U` '<)7UȶCa2i9 \C:<0fb/ɆI?]Ʊ+Ǩo'f~71ʫ|KmA'N-I q,V#?a3|ľeV$# ݴFΊ<nniș4\ܗD?&;0J7Vխډ)vgFRr=D4# 1h멊IImg>ۛ7vY?-4?Vp(g'[4ܗ 0+tJVe [}L(շ~m!SCmCl-!+ae*~DoPp;j|뚩+!hP j=HR20l4/m2|K> !f-nR+*KwqALy*MeLȍ(gJ|w$7>[qc.0#`tQ)R d>. :7gd;nݙv>Jt96$z.5KIK ,)Q,Fm:J@" &(%)x <*Xϟ@NCeaߣ? RL>Ceڰ8~vQ @ bJQvsWx Ww#7l_6βg@R).+nN)OYC]F,/g:GP WK3Ѕ&K/~ؚT=ߙe?5TK>Y˜n/OGPZ8T+4ϵTYANnJ`!~<+Dž>I(?Lr§#T7 G}* A>Wz ZV;Hh=9@ByvЕs{_u_ 0' rm%p<6_v(r"Ph ԗ -LM(*4B0'XgI~쑦<1,b8=X]"юGR4Rz@V?]?/nE%$x+#^؉;ES iw&ّC>0 2SmdZ2.W\J)1)1,LW߱53 S}1=&;?O Z.9;34om<"AFRs,P{`zMo"r ϷS,Q$Zw<~o^:%lV$@`i2n) ? + N~,[K#1VjV|+.A?Qn{%9sEI^@U0^Xz)VCa$0Ih>hzRwVA*,phh_>F'~c˸{.GܾD#iC$y;oMӒY0g _DjbSIC|c#1 딯n?΢ضНw"`__De9ql,1oKݨ WBspsJjS0K{P̚yކB4i>T/UNuGl3QC糹B[#J(TXZWq|,.F]UùޟWR?Ofn޲՘BՇLG(Erg y}B']"|˅A$ [|PAxۧ`HCp77c4&.E-fA 5Ӽl5{7w 5SNj4OY`"Q҈'z(|H]RY:Ǝ[+mU 9kP"L{BH>|ef Ibb c4Oa+W^GN8kwnU( O'& #H^BD]iY| r4f*8o -8| 3IO?\+֊rT>sPX\I3*4#]Phۇ4aX{R8A}#߼Q<>s1ɫ׵pJ=$k &SLa,Kc`vYnfzD-R|+.M]Ъn]8иȏdxe *a*,L0Z3[!^>i?N䱰g`' ntmL1MKWL|A=p]y)m<gƄ Б&zI%UZyo:] PJlsV7<\'\6tM̾J_[v#ߖ~fPh ;X0mE"/-iHEy{f߃SDUh=ڦd)ٚu /\U嫱06F4Uko϶ ܝ7tmYPU%g2*4/N7ΰc̝NY4Ss3ڴeB#׌/xpaFPpzN,鉻]Ǚ|.ɬeG@|ʹWGm묋o/\`/h,K)i"62?Y@l;lCC?, .L~(cthǭm5tS|%-|'pF4bZAT/S" (nǑ}Z} ~:E=͚Y|UI0"EqKm Uz]P1pd,xs[1H*+X*1^v0z%9]:xٟ)SxWQ .+civֻ*bV3ĀyxK.hI|VCy~S9{H܈6Z0waGؖ2)6IGLs*&E VLdt)c֖pjv!85O^A[wAgygb]*VɥH>ZpځӑψӁn8V D|pKrzT 1tBz2N?=eX_GnV~@0ih$|w رq8Yd ')tYNE-Ω3p@+3)a uI>mCF*{|R/?u9Eԛlk^[t'y-"E!;-٭ňR :]hB&Dv/ګ֟t鏦m>NCY gE}Z$gz c nͫi.:KҘݍ["8&0Îh3*q}N['.]Zo#诟 L ˙;o ѥ}ET@THA5 =J%7^N:(A"]Z#Tpx$jif|#^ ɢ>6䶇);߶wwD[֐zUHcb~a,Ηە/?9P:5 * kA[>i^R7ʅˣ7/mJJop!ߪnH:ܚk?nOj}|}a#߆ 9i".@Ύ_!t\K(ILGe^:sVxlp ẑw<!G%5Vق)̽I~ a7c$hDGSG߆r&^)JeZ8,R0b/9oVMY\jlp; I$ b,sP3ls;o=%=!xԹ$4 9ceδ{!GcNO^Hg +K)QEkOG_C1P\C>'ǁҝZDa_3V.w aY/ Zkb_،Pt^o:JGCpx?(Z G{P)< o7ЮlʭqDn/N"m JX&$$<kV\е_tʣ.=P֕0R% @5.q<{QyJUq4&KY(ur>rKm2[27_#jbk)767^Y"ȔEl55{uӴ#V\Mf,8WLcg]:qvsY%tE` nC}CyX-|ݬujE.xPG/C[Au<!eS`<7mmg2&!N X)*\g~o+]EK2Ž$OQvEUblU2D};vP#>3Uݩjx:d>L/\Nj`i'2,B,"{m5m"lL̻l.p|u;|2؀i4H=pd^QؚgQqκYu`s?hAh?*jYStj;쉌jv pg%%|sgݨr9Z]͙de>:jEɫ do\b PN*Ŭ|j1,+ aHL,.[.R;obb?[;U_[7!mq`TpBM|۠ mIṁ.DRVea;>BW올}~}s( @k*mMXP~+&rT`7n@b?VtMw ^f8骶iH 3.^y$ʰq-Ks`0DX;hrDPNR\LC@ꂘQi{+0$fݭm*g3H̬4CcˏŔrZ<)MTd.Vg57@3B|/Kmⵄ&oe'T޿ Ięz~gqy0#W W.f@? ;)f(_>D!\@Z0){iA9OWxn0٪̓Fpg )9a$eufԋ\Nn6uaZ˱MZc *X+\!b3$tj< j"9 8vAk1bq|3xc\C K@%s8VM8SY#kNi n1zMN)#HY+)"%2Y5ʹ\sp3 e&T9RJ=K r8 |1;{m9yUkP諢X\~o5Q9SBEf,c~ۇ({IIy[&tNݷdi~O") PvL^<\[a鹾9pYjEqg>TX"+1S"q8W >*k*b9RAy<8дIpݺAh<[̊ `)O1 DQAS)X8*,n%& ~d- ok`pWBT9.ueZѻ7"X?p^SUխ\YH 2%uȑ7֖ hÎv<K׋gsUyyFm8$҉$3*-:۬ذS9 \폳;{*c.g1-\Le d,f 5No(aꎽ'su/9O_'u(.tnnJ_ ׄt.pXKRى #L*eN'iKӤ3} q_\m8 ]T3TL./ĸ5D:I3ڥN*z<(ޤ8;@NtÏ]b[ؑnhS]S?Ƅi9.g+)[OGN2s*{wI\Dʹ:^/ܑ,'-67gxumƸQ\2Y.19?ٻW%JU:8BZfb%Rz$%u7UPBCuR5ki0 ԡCR2vFRɱR` [P\Ob󉾀9׫bENbia4Q琔(~boL$NeF?had=ۅQMUsXzW 2HkIFrR՟G#,OchƁ j1Z[YrJA9(H{}IӪbTx XV$mbQ;Iv̠Ai2k@s1۲#6Zq OWڭt%+GnUJxm͚ dD15XlA_.Hy{dw;Vd?QC`8>x^] k㇁ְ|L~Nüv8̌}fΕ1Xk`T$䧻n jлHcgaN>rr46h9 )碩Lr֤BnV5V3 j\Tꋏ?R[QT.qlܣnQǣ$FhT^#R_[ee*l+#j )a LCtFQNHBt,fuԁ?4K#:||B\MWE PFngV#RpAY$zFq gzjsr@#ML,vt_hHiz uq:G ׎7LEU ҭ8rS8X8ٵ 3AAj?`qw#w9_rV]MteӅL|!+$kIX"U/a+a-`'Ս:4,]@uhyYb/DA_*k0_.?=*Š/T+آ`:kC[0Ez<}n!l,EseXAWoMp:d?x4Ii0ވag cJ໡:9mКA<ð 긯փƓ NVa3;PzI[7/ʿP;HQ*A@=2Y(|F#3pKkƾ?Okj6|lmj q5lZ;MԔ lP>m]oS( d!9vGvVXӕ"%$N3fG\*1>N\r7;V-pqndaC}q\=FCWd[3P;MXglsywbK &j0.ײ!.k{}`ݧ) [*PYj%Mˊ&T콃Q2ꄱog=Q0嬳Y`w]6rg(qLZ(nCDbd}n. 6Qsk.FZ.)r>AӍ#^`oa>qRSS꒏>Țˎrg ?{Ձ K:w.X'ڐJ+iҖ`ѽ=D$kP\ ,/f'KJ z*CUВ5sV5x2+u"g\&EYݯ% 0[}EBL;W"j&Rkj}+b *3k΄ oQ.MhqX4@#Iwѥ/8HJi)EʨM3½$aVrNk7qno$DCs!$D|hic$aPdmU<6zֲK@UbsO;PmI`b0v_]Z{=Iw*\p0hlD4m&K)X˱V=:.VWևæj\1oz5Deն<@1_ _l"$DQMTz'@D5wҜ6L<uHû.7ttebr--{mm@tfRN<}Ex*"fP sHޓ8dx<4XTʫ? . 1SmPĵ$A?X-" tbV6tGm+|g0 p?qi$oN*zoa tux8h%,VH:5 D SD%$)P\Yng%w^pY<ݮ?0!}f+PbGvE/5wsVj8U RGږTQw{h"Nӥ, .BubLYl7DY 0Ќ:@BB 6lbG1Ic&<<ڦ'G5*;Pԕ0Ha $WXoBA#p @P_vhn|46ծ)Q݊XIH;]8``mjU־6R \6W[ghVAe'rgsiDFzc6;6;ӌ!iOÝEA9Ҏ/vKahwyL5ZuHBIqP,>yc c f w?VgA۔?)r4P1p=?adҫoIVVyU \4\'YmC&K& $B_&9$bhBkͯ4&{hBl˲r!$dvEijz#l`/ѷOWRwgMU*Q:7 }UZ'ǃCu \IjLr҃?oČsA $K_+Ca,Ȉ=Լݞ6]lH\&^Us!?T0i*MEOO*Dj);.ΐ] ݽ[x%d&n=>GqŘb_}N*'%+ "UJݏAZ<,7&&vӬw&ZsV/w$5XՂOl>A ǔlxT Vl2ET<+wJf/BI}3b1zPFj3#!:3|/`$M(+tw!2 .|kA` )hթQ D_]Yx.鈏5Y(%UgkJdb{|bk䪟ᅤئ-Q@ 0v7s-tkL0SkGQjQ 㶹⡎RL>"zq{Gu0?z.h(6"\&ٻh(N@UJB~x8I7t ScD^3I>8 ;/e?U~{W~6ǖVCT֚/Sz" ^5R!T{L_ٞmZy쐷7g*(M{ 6Wh桌o}EAx `/z= ݱLG] ?}>[~E5b{1vovЭ3<,]KndLga.Ë&4d^ƴyͰKJ+u.Ǫ kzdMo8gN屜E)6X]J+87RK55PHe)^`}~0+In1n/7 $/Хl,q?B?x[pބx}k -eEbu}Ot//e/.;'nU,C-<,g+@՜=L3bn-߿^q <E <_lQ] ~?L߆q :̯Kb]Ij!G=^)jt0T8Tq͞],aQD44vA?M Н@ 3оnB \|OqJtt$#(=l^R: Ҟ[%0,hoƺiK`K; :N_W*r|튥ejk԰(s (#<4!{_x>Cfj͏ygyr%diW@IyéA% nL^>NM4V"9`\f.z*uMg$E~{$2cdGqss0S xoJ'u{tE ˫Iqwl|Mq9xp˫ GnVt7|빡d}k51_u"ڱ~Ӆ11@t2r$ݮhy(Χ VͷX5^:oP<F Q%ڒeh ]Mw9 sxp>k'5"\_ն\@ O1Kif,## eJЮ0^q=o5{Ht!0'Sw(҅R̿On0VkbƃuRhToP!C3X!\&yfJP(BxpJ};/.N5?LOJܩXk*#Ks >M@}#ͬ*4wA s11X%07@ݯc}}Қ*4"RUlNPNҺ(3,.X($f~>bN>?u?Xlsz&Z5e,^.$R+SsownUV]kӐ60Z_M6&!jOqɗwiH0mZN bċDL<zF (ldtm*_2if#nл8ϻKS͗.qT0x.eͼLw6|-o9Z^4n;^8~cʒ>YqVQ7&[56nҍ7(qn D,~xY﹨v4 U&U5TsEz-.O봘D3f&lv~wqO턋OFHcPVo$MY(S #ﭬю'EXR|IcYsR7u)G k; Y `未#%OY?=Q|qگŀc86['XUA_892u-u뎑b;([W K(bjk5c,-!3-ADrcB$n>˱sO|Kym`D>;F90Pkt4ΐ\uIL+Ð&n=<Mm3Ԗf$ Rڻx֖o:܁#^|]p2^Go;|nmE[=̣  f[kfMd8j_xY4|{E`I (9.c$y"c|0d2a`?xdk"![2K DIAceO4u~ufVK/HlH`IʍQTjZ O.o-S }sRpG^V}l$v xpLݱբ0oF]`l.>kl`&vگށ0ciSlD BpsDrV?xۻhY3b 1p,x`9BBX:kYߣulB6_'Q|T6`2yD|`Ck?]c~_!&U( W }x? f@S[u`7 UbpGx!IŸ%w딨 pϽx O1PDt!)Pb"\ÙƂO;}np-aJZ{nb o&d׽ʔn$0T{"I HͩdE,ڬsN0;QSڧUd`9}YPWa/7ғV1 7#DmT T)s)[I(NU@W\h1fGeA6+sR,|9pZ,HtXhdm#ыM"WA;-wPWΏU[,{vMT }uY\'-nbxhqQKqM~ϫn3b4ᷢ+!N6HWQNʱ/>cP@fŠf t4^2UD%`[FƑہoWU 89-:A܎@昤L9F%29m -Ұ2P"K{vqNxtd `2pQ N3Q=wHj-KOٸImi tP:ERb;}PL7db=7V<kƩ.+ L02D >拏Z$vٙ>f96{rB}S^y0 ~bk\]QkUcLFعIKgaFdjSbzY~4nZ1dlzt$3*Zq6ޘ'rpvʋSK>Js${{Bs=>92X5,>EE"` k٣pNVwP,D^7bbұ j8!fL˫T`a顤dhN6C3+i[ ҎӁZIۆYކDpJ4Mq uqE=n6PԹ0ZÈA*vu}-b X94R͜*zy6ߤ+$.ߚCxRF41R;B hQV Au~s :j{z,ISk0mK侅K +Fr֯{ŪjRTE6B 3D6Z cNyTQ1i?$Q3 } //ݝ@ъ8Q(,{%|G);%r'& xwr,wB}_ kKj C\djgM]?Z̆J~6cP>*tc^VI묃댶UK^gsnOo)Gt϶mjd[1bn؇8|Dfv=9-2bPOҶڪPF}5pFBUG$ X\D9j⤠4g3|PwuRz'C8o)Gk)18#\<֠ 59'v N9'j"cv-Di"Ą# #{IF3I$nZĒ=RFc eو^) N L{O"aL?~=ǃO$oS/Dv) ӷqxJ;3sZ^xJG:~?őOm*_R\FP+Jmn"|qң%_8s:RSCW `޺\ |v A k^G:ml:VUͯ OI %wrG/yQ'Db^v+`Ի-]µZrA?;Ҳ:GzUlsS!-g^,kT=f9*П cFx 'ϔ" XʑAO0 jŒLqǗAo-5'+0ldv2@NW( k){>_X(3u֞бB+%dV<qa@"@V~At=D@CYsJ'sTyvrmlTuv88Ģor'GT$0k!-i½򣜔*GP>m& &)J3}]/_alM*~> -|Oʐ=^^l;ľ-Wo\ƚr2t2AtpEPq(>͜> qe>IFIMWB6N(p9OY=3mH(p'cn'`N[fM wpJ hjƷ8C6 Yu8$%W$pNZo ;EWwSu1l"u35N&c_5_C$p)biÞc^1ovЅqFգS/ߞ xs_;Q(IDTok'qOY,I R~;DW 4I> (ya!dMֺ7;L$[~#X^kixr!XgӽmF y|^˦yy.YVF($ ~pVH_AP"1n`-)jR6#kM1yt@(„]&?圾0];jO2MQj{FlbJws}"P*J.\rm}Fzn? Oey}mp]IU`<-};(]9X? 6+%`AHu'4 c`sFI.V|2`.nOo ɵJI]Ӎ啀︔lD+\?G;gQ`iFI0,VyҊ>[7Op!pTsZSnVHfG i8DO}.$Cm7C2^ef O>=Z 6 ?`Łƺh{IĴY1tb`Cҡ̛_ s9P";#J=/wtjsJX҃ <UJQxQ3EÚVs$ֵ >AE.Ww<nje %".xj.Zt_Z/›R ټ jX4 $u]9w0G}J_=P#_RA\5hi#%}65qN5*fFȨN-T5eE0/ r3@.@~qoMĊ-u1?T\93DIxg-dBcw.Q $ <23JDJ4 ymQݰ'^{|s+R}?t)[F;O葶<\ gZi G'GiU!%PӮtȵ2]tǃYVq^զ-T샼8! 0YJxD9e͇VNOc9+"SNmfvS\OǏ^g8\IVxe;n&=a 3Y*Wg%֐zvPH_al|LnΒpĚCmbg 1{l1)#wv˥"!NYҜ:12X'0͡r^ȏ+b]v[& -MȯAx> j.pᯜݟPii*|m}; lqt `FQ >f"hA*q+O# ͣ eI*4~^k.@N1JUH<%ݳ]FBR恷H="|Fee~`v J5>3_YB@ x8x֏hTj5e}6`ޠJ}7lcE@9ċ&AX923СR,,[ЬGj[ ?}&m豄K=GhbmXSx6GvgfN]kݢvh̫O:h$Pm7o7(lWUՈ 0؃ɂ:MpLqVJ*Mq ٘Bg)ȝ%ϕArZƭ3nX"hgbyHwJ#Y[(Tf2wM}vŕy %xXЮnw:n0б  %$KzT2hZmobR˖Ϣ]:YSg$1~#f'Zc`NJ rD)1Jtq)kBѾYB@[wvWQW/To".T py+_=;tʦ~{Pؿ `4pU:Yz0C U|O3S!:ˈe@wmD3_[78*Pkg?$ /OڸI:ި7ؘVxVª`[oxhX O9bO7`m6fe; 7lFGãvn9x._QTIUTz9zr.Y.~h;iŒ+ᤢ"&{ևN"hoz>jo23ǁcR" @CkSJ}Qzx Mk.!zMw012,0* nl !K{t܉+N|IJqDIR;75H2>rO+n( #:;>jH)4nmeLkZz#PzB0/ܹD ^t7z5ȫvJEi eh8)Gk\9(wd`uENBh g^G(eNlи_Ut)>x58|N_rig#%v*b9F.X~kN!%3Ç`~L pyzT?[ٌmef3&hK$gCSj8`.TwyIjc´:#;3n**=I@! 囉~b d0l틒NMt^*gRaL.`%TX)C<)‹˅ɖ.褂ؕ̕]MiEcW5xkiTX>k~v'gRvf6DkO-=Fw*36ՍP_H=FsL M|P >PiX.5KM,Sx|%0\=%xW-'Ce FkuDV{w5哩cr,p]IVI̾ fjC%]4=b1)ghke4)/RjXDR!e5|`;0rDrL5TU<5!߂ w2Yܤ[SgʮsJ MB GiZH¼Hmxo<9[::8# c ׌J`X1EI8V\:/ grZbU7:&}˥-&:Ӣ\)^>5Of 0!$A:F$Fm.rFzVgא,FVL*9|S.XUS^(kE9Տ8?x32Kᑍt{7HEJ"4!D:@@#%[?]K^5!$ 5+Mh>v1bpm" 4[T~3` ʪy]ԗDwzH|fB+M,ܘbxZSvcy U_AdCB[i|a6yOU~ WɨZiu#;sI$@U)TWsjb,[{\ IWˉcHXꜟXr8δqri86S<A@5T=Y傯Mvȣ%r٥q7:ZJBUNm83F B,5rsg~(SA>p#X+4`f +j\S"޽2WҜo4lU%.=7{\Rw}}dEd2Qc1?{P(/QܾnȪ-yF5 _d5i?ڥw<7h2 ~ bި CHH\н47ZIbF c5@GC Tdq_ ;]$NVע3md6#`htzfE2Օ'̹_&]0U1x`~jq磍\1[TDDc98qB3 /`2(^8-o詺EIŮ&/'v3負I'w7 e*$Ҝb#ݗ Fd-tGXAIn!LC$F#,騍7m}yP< ^V;Txd:]u5ww7@8x%8IjڀN5YV -p*ӂynmnn=Bu|x[e F- UUKz@e.H` 8օ]¼@ LB-  eGÅ" M_`)V[a \q4}vEi#Z|u;z]Ljgp!Ҧ.Y@]o*y$SH}Rqע0ntayEEmsTfSo7IQKޛN18o3/C@aS (14-JBR&-ު&;NOsrJ$/FA*O". /؇b.rߣz2=Q2s&.=k 'wo sW=6#$*HuƧ˾' ))V!j*Yt;P ׽iPfOT3P:+7J~-cr]ѦwK{d@!(浼tִ+DUmA;s,cA׏+t9 ˶;ڜ%lkr:0I>ZxoQi? ,)c:%jg۱֧> @0KȊ6~KMbߋ>3ݞBȲ73(2^xkQPͶ"%WZm@;5i&OW"^B!lFSN37x Y};ĂRu۠;CP.F'n4n.'o5hm΀)朞4 XuyR͗7Kiܠlj%I.a$BfIF$7|󭾭4B>9)]}w|a #+UK$ 6=]=^7{.o/~FXBb6&#iOW>68s6"F +z%b/]Z[?w. #4S6nDC vEC/A^.h㽋Wg eq8,GL.T/ w`@6$w8WDefT]UmǩpCm-" o䝗P A/o;*:2y58*7煳sͱ$c.3xpr} ;$F;iZnL.qb+o1f݌u46h(PM,PN  2yh/w|}}_fJjMK%#1\-#|.v]m8]/_I/p X-_BvO! pKe(^RO-h 0.eNlK7ePJЏҰUtr& Jg/l t*w9A$ h3M ) w|v%YnTs\&|?r2R`$n-I !x86MT}F4pu18+6s8c%IbR#% 37ivfκeKlU)2B'ENe ZHL).z:w5mmq c1qx֖,׎ OBHLLQJCLE3  r=)JC)Y"<}CjZQp_ 2Kt~o~c.A MWQËTmհ˔ɛu?x8eik|(1j_)+J\]Е!p\26݌^ ZN"Ceіf>ox*'%@i]R)_MXΑ蒭;h~XZc;R2 T)^W;-Xt3K*.A?*HTf46#5뺱cGgg%uoQъ0P XQZ}ʩ Z]utP\"Fe~^B,doAD7? i^ض0T(Bu4Y>J"ۡ@hCpd[T~ ;0 -YI}-%ZoǦF vzà " [<-XU $uzd![br~eӆc7byqClz!0>AA]sz+p)tmr'J:ND&4Jf- }BJ3$UKTPbc+[ꆅш)o:D(cz}詜;EDЉV[uj*>Gz9;K@2xA}Чq҄K[Uo]O'BCS֦-1(c<ѫ6Yh$!c|4uxHEG΀j={x9B蘑Lyax}bnӜXFXD7\`gsA?vcmBQ[:wcC#CRfjU&~{=낦(ln ٨c{ '`8>[{ՂOY)E^ (/\Zo Gm:Щc ^F9bŗY24"=ɤm;44n z7z.DZ1&ऎ2b,?F ['L|idNWԊ=3E:\影SE[~ }\PrfW~-2tO!x,nG?&ca_X/2GT$ٝT!17!i_d뽩A0璝ЈmZm,( h ׂ??VS[%g HʔU4/ {u`޺\ߪUQZr-E_Ai4o9>^S/#zO<@d+~dp6x9N+@uq42+uqR"ZoHz^f b~(pF] sܢV) e8脛6UAtV2ro~nmRo ȚlQZ pj\\x){uzQ䝛܍KӜk;%pP\y#]48#;/6bŽd׮5d(_MFݛtd_}o. Lw,: /ٳ8QԠT!`_ cQR XH;ΜW u= [c6Nb7e{k#a ɉtbƉ]B~_;&InǒJ6(@awJ0r#ݔM r75Fp/n~\,;]0Z6h'ey)mK>m߷lag*M<"&5~{Ԡ,M}&f%C8ͤvD~'cٴV^V5&(XS.^ZϷcMc: ~P$wsA4ҫ̫B;lCR@oy} +TGÜ3vԜ5U@.G3(t l$".f܆EmoLjT[7 qFS[KYdq2~:SN.HEy o8%eNnbuN?~"d,z(ݞ_*uv8X؏EZw(o˻'v&#eȯƹ"h_fnAW *K)FrC0`x`L,,!.豠I]@*OHOJKD`#`-D2!1Fqq=*=XS<]$HpuW;"08ݓFY.vZJbjEjWn*}S4Gcݩzy`lhV߽ zR2rN]&AT}|KM~"!gjddx~\:zl'T PGRzci`ut~wq\><5.eUJa`6ë^whyrq%)3,P>4mk#`Crk=\݄M^As30{tl3rv2."K;Gp契؇+F?y$ЊQh{0NaEɰ#ʏs<[p-ou!S3 NF?̽ .7oirޝHyD#o9 62-nϿ6i7tMDW=Cit)B%#ĸ;<b;v>hm,e$H(cv Pɭ%J㈬?"dTOyOkHY]a}SN)M_}?ZY\FDb^- Y`@c˱scEX!W$> :2UpF5vF"y"ȶ)=adA#-bD6j6O-gWylp9ڑh&fXLƒ!b s=RaXN#e[EqЁ h0:mk \ #4`GapAD }Ė6p3%4PC-#Σ+ XDtNDFc> J|5cv"KNӃo`5MI<3~^pB HNҖd dԜXK|.lě95EZ}0[M"]%& ]-Z{CG ~pTgR%"'$  C 5v^ j ׹UWD+|Il%nPh F:!moZNjJRiDMCu\5V8;-4qmSYX#GTS8 ݗQOC)UCҲ=%>^y#U%"xC!{HU\ԯڔ_!ō™\#"WpA 4ybphIL`=i[ݬT'ayVch>3|`y0uj$K#갛+l7JMARJ(!H5.`4U\j7jGh vb\.\*WؘI)}M {&<ϓF$<l//֏5dhj{>7So= Jz--~쾣^T' A6<, I&:@%k6V^z:,ItJ5EKR,!E2 qZN]B=o fPPMibp}Kl cTjq3bdqGR;XmCsɱuޚ3q'qPj50Lq…9/ɩQ+*FsCa} 'E9C8ܒypxr˘ f_"hR7jZezjс|r]*Z LOL0cBI'* ͌fexGKe? ޳Q'RCOPIx8 6Zrxv\4D|a[3 AW9I4RXQc)$ nTm!;ϷZo7HK׼21GyZKR2 欞IU&A_ Q9fgAl^v;mml%SKc3 _I'gY")kJxKg%_ $k|MQ&7eA(Ja%:JzyyiP"1l)X`E䏄@w$apwBuh V5`bTEڦN`4z6p,|KjYΊ4#I4M9__!kS3A4"AqVň%)FOΓ5LWZ*]P1~!&hzy =L |ミf{XK8f$Vw9%Ǿ D9T6+!rVv)vLv.}䲒ԚJ_}]Vuwҽux\FԂ 1 A#muiCψ>d>{(M?@ό@~#dV@B5Ja[~momIAbVin(&|a Ǜ:^MFOFG3ղۮąYLmiJaD]w[&~ p8<Լm 1D CׂdjH , @>t- {MFk g?I!Y34aIEKwQOҐTԹE蕈J0<_˵1}Huc嬨Z$ xd [֜Jes<oح3`P N,OSTqNbwMY۪T* FƤDh`[nu&9ƵmQdoV דrjRd{ֆXzU{Y!FFb{a] Ć8H]BG N4u(sN&^OoY9+nG.SjwEk s[zD- )Ik7~ǯ=rm␱Đ>SS0I?+FzuLYA WJt$q6DO(,!*;LWAeb|G'뻤s@BqW Fgۑ{Y\gHYb#ŜдX(:0hѕz<稫Vj6_ӚL3nwHo5< ~mѣCnvOBH#Ȯ-00Iƀ$⴯^K-z3qLr=!|6yT=~ ^6)vCw_.j͐6͇)UCeϝ$ T3w*S I3$iby/,!!"" l}i^Vf詶n~`M{a(Wд߮ Xл3Ie>(bL} 'rm?.| i jdp1+hdV6Q,B  n?zJ~9mr1]LV.Nto<ʚ'ZB zebbd肭g(TN*ع?VðyW wjdjiZB>Iu!͂P{LBo~f-r.úXQ3'bK/;t-׽6W%xwְC?`j*]” O&D鷂SQ)R"苀@4|K5_l]`3K/T!pg~#7Sl\]DJHVRU8NlN5 <ŹN]!svzdra1œsṷ Wѵy. kH &Q#]E",̽&IpșURI#UB.TL}:ä,4G@ ]}ɿ/zq:| eD^NǷp} sz@ <)95_x[Mޠ]|+/k2O_g>*$x_ʟ' |C0(qh@ѐ . TVըi۝XOKĉlc{M"RbC% .GR\x5HS헃C刧 ~UdB#ni,ybX['_eʹ|ӥS 6EGeNx}kл`7eL%2kc83Sidd\ s~m7)iFSʶZ4 +%'KȪvyU^ - RṈ1 @K9騘1| 4sM,5cI{FHA ɚYv~̿4FclDwםL^ɍ73f0 N+W8^p\S^lڇmF@qܒAf/@JEaU-y B!ytbk{Z!owa )2/ 0'RxV2b&r'/+(`Z\i2Gܔw{%:F[/Vm:5îDvhWM!p.m6[T$(g@O4ޠZ$(![^g ܺe&&$`pя5<"0;/bEa/NZEsV>@y!}CrYc`qӾ(BD X4oܓ^據^iSc% z-o':Ϻh88G/)rG|l c_nԳCh*PT]l%[swo1!'NKWf։'u)V/" Ka\6v*^7^6x+Vʭ/@mb*4L:7.Wx.Tl<3G]^ovSڟ#{o!V[4Y ? dNE3|2)zQq7XSg9_D*nK?nA:()v]oU6σ*y5(kcx4W5T*V˙"U/7*4;z͈ZRdڜLgCϐ8hVߵӯ ;9$6{E銌A#Q~%48Ɖ@r}.|WG2I0 Ch\T{nA!( p@$$.g Q,UẐf*TQ[E yBc"gv=n ê{fK 9Χ rlOTYi u39{Thu Y\`=1n{cw{HaA HL#.QN(Ds]T~)VI9CFe-U"zʈ#4q7BӦfN],wP6[:4&qZ EryuL轝)(}-#7`ʀ5e3F<}F 6sŶ:&(W-{=sJ/$[1۟N"yH/*^q:HCUm5,xΉ!NQ J{cn%|Mù9E1?rS\I!Sk cV1~ƌ3v;9mqbRP0Fyui )9x!{OVjˮ wh'=~iVL, D>ms_ۙ3et͈=G`듴$.fT>ypT)q@/^$)#Exޚut?ήt*Tun__C >9b@z( ~\'BXdJ<;KU;dfڔh9#ODVxZ.(5r{3:e|N3#_CpDo>u=$IՒp~!"Xo-C/y`#*85z{Ld}QKxMFd\,v2 rXNHr}R'-adO<7\x;i2B)*+sw --Bgnbix =y~8Ө^=kObΥ i󡅾 =7 5ߚmsBU 7Zp\SL '&tAŐVeU5Z(*}y xvmY]AZF@o*^G"3Fπ9w%7TB@}yאG{fyI2xUqnk|(Dx)#٣2gVA 3׻`&* ) a.xI-~_&WnCQIoMaAtt5 YhJ{|$ iy\XZbU:6NEo"pӏnjrS:g8𐝣k- ֎ۻ[VK ,'\9f| ̶|$Cev .|w8Le. LKYT O65\UC ZJ~WE@Z,CeHf3 U1X UyƗdmy-ߕ 7WNbukYc ɤq&<6>8^׈/i~"g|?%~:ǰt>jN\%Ψ֎/JưbN9nePfI~m#\,κԒM0ȅQmDtZd$Tj]󮪹%&D#̢wj6?` *@_{' <_m]!Rul*,b>Yz0_ 6 &ȴd?9莛 lVgH)kW9 J 6lΏ5'Զ2v@ +5\1>R%2gy'}$sT0~^ " م1TES}r;{gFRK$Ma:,4`MI| Cr~Pּ%(gWeV+)~6^qګ< jGlEOZFWN.W獫2ft5:3f4L ]"uWvQÙhq--htLz_j Y|7u6nE_Wqm˲SC8QSt{8ߡ6iB]X.{duhDʴS`v")%pB$qˆ.oʗDl,`?vrۦ*ic8cOGlXy-s aΥc*ŀ% tag-MBL)IwRD5գ(2_ hr[Fniilҹ &9ۘ bn#taC29ubC rWQyrW{FɼW MAu3UpV$ekqHcaibnc ~lXԁ>,n.0M!>xjп[bnW nzt竇`'Y1,lAYOy }#>[;J{Jy;D$x#$> Z#l =>CX+3tϾ>Lb5 2 ͯBꡛ{2 oK1o&` zFJWJ*A'(L4 n`i"|PvTgKk 3V9=@bb`!) p&婄 )w Mʁp.enk%^Meٱ{2LB-/X6Ka)k$t\,na aZo4\Jua Ld7ѮMVvniP#$z'("(4Rs*CoVь@IH=>(/%xBX w({o'7*H^U6 } $w<)_$K7VsoVи #.Y" =z Ixf1R1 &3:Tۂec!B;0@T)C=~oSC[J|[XGHJ2PR98%'=.x0f ҬV k #db_̓Yu]?Hl)_mC -! _ceE-tg%R|WoCa~i͕zЫ , i Nȳoz{6tPD0BXs: ɉ'vT3a-R~5JX=:7ua (b Hajb_Ů Jub7+jd<'<7-*,3Z\= z:ڈȦHQA?<&To=SȞE> a]pשkc9iPw4a=rqAL8"e|A`oDmFHPyH?'r y a)oL}6"!CD ~[Kh"H.7B` ^yy?vGQ}e${ 19pot{]2vL&M|(7S!-~U4 蔎5cW 1N IUYvH隹CsN\Ѳ̹āJDapֈo69x2O)sY< ̚sճ42)X _|Dc$cuhFgVlq,CM9K0 [i;l!3w&Mǟ w76}Z"Hү D4b 3ԭn^z<yAwRA,VOD5Τ.:R/"it~g,i/jW7o®ztA?H)A6t#L|ϖITj+j+T?o>8> 4̬ uohU6^R&B>XIڟη9U kΐmSԷAn&/Ⱟ. VMƛbv8zQIC|r1$kGw-2i 82g)W :~x%Ӣiϖ e0=;J%=8>ybZ2=t rJO^JFrL {\l3 %h[FoQ녗A-=TX$=ՠ6ljURPz\I\?VD~0D,eas.bO=BHm9DZh oF3w /Z57k-p{2 E -'qS+lMp#Ϳ)BQ+ +eLz2Lw ri:EEյCr>.3TCP⎥lBn{3ŴERWzTL,KG )ÝԚzlc!;ۍ\lPMMfRaar.tcuR_ Inp>%Q7!^G߰V[w58 B#_yVBMm]-Xt32Kzg!#mPd8OK K`[@y(eq}pu9.1F,l6nH-褂Wp E4`9A+UY |]+Hͫmp+ϨP0|&~Tb=;p-k.fdA} [ -RUO pTT{pNy$*@ÒVr#8q0уOCqTP mX#(Cx)ny_J,Bq+OB|N>r}=Xv!"P {7MNq3V _L! )P3C.f 7)3n@s꠆{ԩ7dnE־q(|CLJcNmTUN%rz_~؅8g_p,LrF4vzV~a%nF:T)\QM*M2\ۿi'@6kQ3m/S*ŦD1j\$I"KLEܡӨ( bO_q?.k݀Ld,ll]^J}e-ף:BG_u(n$gLܦd.i$$/LldaPnGP` 1$4rVnyKx/畊apN?L¹ (\Ww"8l{4IYa=+9l+J+s6,S )kAD-MŮ~[([.S7v\W fo _yn5BIBx6 hS4}C#@E!L{Ō4_ű>&|o Lq50 RE2]\޲yξ}ԍoFkU1`̀A q(H t#°~2YP2yX7.%bu^]?0IC&e>QFK%Cx0GO-BN pu='P0+ѪwRM򋣥n3yR6 n ؗIw8Bkאi&sQ 0P-֖2dz})'#ےad)'"cȍ/0OPмJX$0٠-hu WTܮ0[: hū0t"?sGqa*m`" *zAn6XBwRݍ+}!Pl@ K •%%Et4\FQFJ:a#a)3Ɏm1 5 ."dРTp`AS&59:vE{h@\糧EF;CrS&1^rN0 'OG(?LthOgKJƏk|된\Ԙ_#-(`|;|ΰ%Y`9@|2/Q@<BE{}Q;Szch$s0/n-=uc ؏6Ye4:rn66C2EvXSvzcRܨWk8{;j3 ZtC q*A :&̽D焹Eh7e; ~`a!k67Σ;l6?S.8΁ڬFE-Uvwތ"LX2ɭ)Ǻ;CC<%ю[.$[>d~_P;)e.^k4c$Cʹ0 !& p~^Yk9l _=|dDU}Ŏ:7M+,c5'9kk(vD`,r+Cғ! %-r M\F'rc2GU::vJ{%aҏt]KZyNb5TLCP^*Cu]?̖HFN @" ;m:{GR.z BkYA`kT2~hC˅TJL|0D ]E7-O %`%%R(R|ndx]u!ox2ګ.[[:U;'~)';UAL(w#_m/J:GvnAxej1eٔ |0kq7;W@WNaH:`#iKdcZXX=g !ydake݁,wU^lMd5Te3Gƚ$};au,7SA*n36tx֌мp[Wwx\]ߎtGCM[Tؠ,~h/o&^WayϴƣmfB( Z6dp"֐=zzu J$ Be}vR I!uݏ2’$!,fo<롵!J?@^Y󬥧N>JH-M,㕺92CQL{hqmׂ? h,n ϰ % oʹ5ۘgZpRTs B.lUt-=?䏎wX.rj压+e@C۷ % .pӵNߎk6h3+ouoG=3G~mNH]c( vpn$EY[%PsnskwH;*7; lFغ@R9% 3sR^DίI4 $0\PW@W+)`,~sy$dR:rG:*uUVW,ZH,Ǵ62RD vcu~,Il&<7)ibTI+JK?4[{R3MY(k)X>3Ds)O^*]ȌeJ-v^m33>cP/w"oU 'ISMv?ŇtxQ16c%':(Ϭ>/)a~+ nRiQ=Pw@V 0:Ss@t&=a͋wTm2ɁZ붐[pU1`mm0ĸb El5^]r ,alE@ڈ~JDrz'|7t [ l7 #QCٌ}506#UnΎ[䬍*Mque۳΋w_qqM&>\._9ix=^:(eSp Hhv!sj}8u4ЌBNKci?Fv}A?yI#,n֯(?gH'OI -qjd&qjC/;H4D_uݯt\_hcPkPK=/8I5`fd蠚 # pzАd*;AF/REW/@Im"gJ7J"0/5mmBV;jӱ쁾eB!$ǫj2)s|6ɬNێ֕jlQZ e A5'60b{?l\ pY3/`?BU7&`ơ#2$ R(Za5ϕ:+P ?F2zzu!H*6{34R`U"N݀PQ*DMpD۪.vXh.za<=swo{rC ̨L /,eܒ\GDWrv n1m;U4zP@DQ}XE/ݗZ ~CíȤ7a[#P㺙v1kKlMP<݅5t*d-K'luHWSd<"nS:i8xJuVA*VX#aBĦi iVbd 反{Z?-k +$(?f&\6R4'3 ɸvӵ@W5T2E 톅;&VwT*ڳ7"fpVRI$:ZΙaK6ퟥ7ݐ/0wBiM% 4˹/OZ!Bw ߀Ca<]ӐƬ̏9t u|#dnk$G3(J6kuWUҬ;C , 3XGlNRYO ʃ$PGo Dj7-Z0֟9BmA뵦kf&00UЧop 0~NQcpu'UU̙'3׽|&}SS/%Yw}|.[揟gmisVUcEodLu#E?ie]aWBoL40.k'wBU|f<( я<vSͫyUB ~eOunȺ]d!{L\< KLUקGFex|\WF]6Y$KDpBJF`21 j1d0}K n`y2k*LZ0 @Ӡ@2•*wMҶ浳Oo>B^S ö`KDSy%vkG^n!FL\Y{?z-߯]UqѷR/d1.jx1i9sEWȪ6kTPi">?PY+S+ Cэ:'W ^Qr>s^ixMh7}bȩAJ@12{4{OZ 3Fo;DfiVBE+cJc'] 4 yu%**Yw_UtA P`6ɚ,uMA&vzWλTk?2}b*di C&=J\ YcXcs{}ႢsFH)aZE߀ 8F:A3 vj!S(KwN\ onyNH5*0Wk[t7{G`U~"sA'/)Py7Tu7ynkY ɛ_3PblxN?/5Gy7ajKZդ G]1|%g{(j0e9'Pk6'퉋UB7Y#$C 2 qs TFb`Cb,iuX=łMzĥm}on;J":\UCPc߹3ݫσ8p3'\h"{T@ Wa1L&pKЫEOqR - QRjp~=:q3>l?'"rjܾYΛz" zϳ#.8/4giPb +;[S;N=~&Z_;Ŷ(-i{s3Qw3h&L19|5D&Ck DWȉ u\Ա}|sI{%8%77NMC:!"ں Hڨ[WH}u ḱ2Zʉ)NaF?fx >9>')Ƞh5GfDU"U,֯'ENfC^urM+I᭟bJ֫B&}yA?2zETì`z84yY:J,9. أMLbHH5MwA(Ќ9|#F3` | slbSgJ.00C >+|TP}hwR[pfE*', çN\îhuz" ΁.\y3ysfiŷu_l,IIFZ}i_!ȳazP$YN=)arYޭ9ĺN^qFňGH"/_c૭yyzVm`SԆdƓnԲ\pxpRP7ۜJz-%[TDw>\tp)/c]˰gw'mEQ}E*&4F q; Yo,c5zoUgmO8Tޜ^>@9Xޖ=64ѳ&Pk xq4h? 21.酽nMoN޼[.+,4-J;ε\8ʼnؼ~Vxu]괚3[%߫gCYҧ'SNP-09r1 `gr$d޳B&?G >6Q!\XxsWO=P?s̖oOuLJh:`j/چ znۂVq i#@>ofԧN(ֲE@:>yǛH+Pf9* T^B8PJG}A"?rɦLRR?D+w^SצfmB@4yiȠioDzDCӉh$I}Mb\B{]A(!`wJSϓBFo_k?ZGhF K9(=y'e|cUECWդHEŭ&f=>5~%4y.˙lTX.`:ΤV=X9~u$D}2vcW< "~Fc|mwI9ٔ^C>:?,m0m lO'~]LѠV@'$HZ~wW$*,G1t^ʍλa.d4sN%d.LM T+kk֬%. wݩ93<ǚqX ,JW(I*޼'Dg=zLqX}q Pf+KshGƀo6]a@u#j3iQ˃9R׿K?[> vc*eڗ*Px 7@MheDp+ѥQNߋwғxߖLpkÙ3ͤ~o[aumz@`#="!`9$9B̪r_ᅝAsWۀ故EG6:@:,q:qc׎vtެⴣÙ&ךRW1OQGHMԿPIx}tlyYcjIdMT,:{TOZZ("jQĵj^y5~Tu>DAt3ߊe{f/g0fd8f^śoFS5wӆ*2iW ea3 ;#L93tT >: }B PJi`Yx~gMc1f1`eDy 9\D:82Cû~"\I'4N1]#4 o՞MB.ǿ}>jJW4FǪa՛TS='=ԁ{cp,AQ},B4-Y;KiN{[h۔o9{elOF~Rl!exb5עYً0em,蚀6@Ɨ?!,`]n'+e1Bwa=.O+A߄/a@eBz\!M9ë M^ 6o~58vD/c /IsA}0#꩕=}Cy|'^A,.T|w0NtC=Kb7tMyVu!D%5+;hs  :Ek7LLG+Jw PyDhܙ>K$2y; OIYؤ 9gHrFo ֮1G锍G28>mHyFSg6ɛ'c6C  ]@ŽƃoV_Rz+C1 .%ܡAmh=ozbn3l~y<,u EXP,6$BU> IP*;xDMܮ:,-X$F X쩌$CWGFEIGʶ}"!|Y=q;#[/d "267cc̡MbzMnS #bPG0>P$*Vf;maȷj!zOַ-kS!ԧ^@.ga/ h6S-)In%h!_cۥ0]m&ޔRWW~e|}nȼeܯмRNQ`Sy ՅBèm ^0P^N>u ! x;]yhe '&E; [*-ϥEm `27 K\-CNz"4jyёyUR W`82I[+ҐNh^fՉm O5>*tDɧ!-\0ǒ'xh$ZL=Gavd ,tņk Ke苩nF?#2혩H3L#1r#o$L'[i ^]==AH`ք| zoLlIo`:GOڼ-7_'j&T)dZdaQӹ!Q5c8$Uܮwe{n\IѝO-Z)aC/to YRc4WGcLÓ搀.DmxM/)h ћPcayEG 3HgaLVwv{Ʋ<@J.>C9sBu'P3̊SJ S=LOciOsz!פXoC=J󙂥2& C]d{-)%oevw6`'@(!clOܡT޵i2NgVU >TZjyBq`75w1o+7+@%;˲}J UCВr Y@G-Ifc ]0Hs\$_?#>:83j|eV>ҕ؊g;HZ=vMqx3%$=[u EHtmQ]@SݠB]Ju*Z, {8:G;Aۭ@HSmؙ ȣ/Vt[ Q!=ӯ(H0[-q/1Y"P]umH$ 4IV?#"x`;unD3~o/}Z}2,N/I+_7_N* TÎfI‰]ү#5f26y,40kァPb%|:g\YR#0,vpi$lD,",u ''_ J62CO^Msl}RFER'Y `c/G؛Y2>OVVcME7q|kN j"-a˛agAŦK7~`wiMҊҭ0 8){7qI~qWDݪf,(LiF Hhsk(7* ڦ߃OJY$1D\?%#m5l%(TԃTGAyND_y>pٛsN^Yr cuw׬fF3Ǽ3) FLKɦf[&ʎN>&;mPpQ zs@ q"8q_h\)lūÆN-h6.k2 qYf <+kytn}?:7MiI" DH*oG?ޢg)z)Qj68rS8 O& (RFr 9;a7?XV?oAr_ HlxF*bMX.C@#ffDM !J3YוR =wEZ]{<\4OR)@PYz7G'0ː7N@~ @0ὯT e)G`ŪJ9b Sd>e%1%zsF oSrDsms8nj@LX'mĵَ>5S>kJ)"gr=h?p@9d_q~nEA 5NlW Nx;.3de,@% MIU=v]GzYq(]'2/@s zeޞ9jҍP=4^OUq5zsĖ}(ƣ4 >E 1Dܒ`&758&_HT`aզt"!"> /Em#[< u5N(=$h6akÉCIkJ͝zS2˺![LkB̚-1ʩg\쨍{VE!f~΂휅6$yWB6xEab_}`HM?uQ}[34]* ӳ\kPc6Aw72Gc3sK >zi͆ЫApED>rYܮk ZȌD!Z{䬏޼.£ܺ -Å|7r),f&=7:uѝ("iz͘1#p`E1 ICh(gȎn@3F FDB4f`6Toڜ'6 WvR+P4_gĿ?2{]V=n22b&MPӦ.sClThlJVI#PMpvfmgP~gAﺒM#•f P!iK[bfJbt7If {Yص~k`|h7W :R4ך[>l f*|iV\=l*x_/fZF?G^ D U%"N*39I gn,\r@ʹ)e m]]s@A}30.`ಠ l_E IvI/1;Lߠg0:,S3JZ>>ǔ})nAsj@T骬}yh@Ksd@B_itCFG=Y /1͟xp MqSjqJ[\۱`瘋Rl7bNcgvlEIPOc=H~mf旽z, >ٻ&I#A,7`ʃ#)@[l{ERԘi:a5S"#TVCL|[;,lk??$~zKTvR̳y=`A9I"@uGJ<ׄmML(,(o/)qog8CzQ F8%(~蔼g1d.A랬Iٽ^2u@p6@/Vbk$L2ځ7q],MJILqSА!=*T,Tttƥġ{ R:6 L><x]]!ivƴͩG`;hbҖсָlnI<5c={ A [N\vaUwgD4j+7P|X @6xi}9PӿGvN|vyT^hvY÷u +4tEk,/yXE efeA"D HH՝Tߣ[v n8UiDS . 7X/)o[~L G˜9>Tx'C W< XB(Keܷ}߉pBk&K׬ϗ(Z -^8i?|f}|YHV;@Dpjq-ZQ3jhW1QZ ^a-]O+rT?l }Z,Z]:0W`&~=TWy]yӀSˑ[;5,1w֨-L.qV98P7ގY%59K,Or"`0 6Kj H]S%GsYEmҞ2SKD_`{f"9*sim _lѣ,بT23F-}]]x \AI!+O2( ufƑL}/ -XLxJ Q!I <$MxD޴pokmi^vtwʨLM{vDB]BP'nS3[g7j)>IJk/:?KnYGC] O?57{5WLᆓ/~S^%qF»SXj.;6ںfD$W6`3zjKV WvpsQ[PA}fi XwsZ><["Q1φ$r|NlI=;Su"%sn hGu s\ &ؑD T6+Zh <j>hMo]z$E5t ʹG =X\K@_d93tZo;?V65ʜ]n褁"˓e_,%-3"%vj3 |/Zm:8 go<+^"ݝBiURLھ@UAd>\p݇nxlkCR6XgۏC%%!UM:c:d^<^2Sqsku$@P-8/={pAX Oz0#7LV4:uIδ*aW,Zץ#YСL޹ KqpÖrC9NnBg+"9d|,3%}e2o)x}dbNMxNvyeMљemóT x@?@KOdApG(:iU٢`փO|m*=OsoM?/տי+tK߲ٙ{`c*%{`oqJ'bBA %DoPD%ŇO1MZ֭|G0wy )Y1LS8Ibq|P^Q$ 'ÿR1Ԁ{+ Q!in$pPyA`nU4p  sL_o)afBui PΝ5_HO)֗iH1=z xL,w gLen#Z#E5*= !oH"` v5]tY{@\!'!P;VU0 gI1QYMZ_0ǯ+hhBbQ}% 7Ka@*l-]n3^l'.Hė0Y8>ޱ5403 Ö~?PU쁴L#4 3YTzǷS;\E)byb{RzW_l+2JE_^E٥ cVw-㊈wOepN]n}H&sx Vg  ^oRv4;b'"H4>j{Dj"~wEm&5%ﲭJUnT .^LsVLjcZ+ȗl up=f:Zoۧײ~Op-L{%Ki?ph s:f25[o-c/`voFQ2=f ,r Nro}O,yu g O0%HAswl=Q4.[iD^a'uZ^lw.l;z}~7g΃)jv`AH 'E IB0|l8^@ښWe#~Fk- UqpD{V7g}>(R|%wȷVB̌|jEѱx΁VvKfuS_WiR}|DJ) K#l%[ָs5f){yp{md#@[Rjf^,0)ϕ;('o!xƳՄ' ^ &M^QMz~.bO~ޭ9Ozc}[GvabrSd}sV*:u~c/ ,4 X0hY v3IS: UYVrK!K;,N>U(D2SM(q&L/A (7lA}åAk.ە`Nl498?=bzIyt4[ YG&u \a]̫gms[Pi%}ų)d`QE:VMnFx>|hm vŸB7ТéԹnj!e<AR,$!};XGx-^ ,Co7^^^x.  P^vڲ)L^?D--P mmmS F,,h$b5j/JUݥƿcy,ntKգ@+8CR)b0J z,B'P}~9$ۃkr .խ:աE1(OW@TS$ Dt||`d?keH޸+1˨xϔ2iB% ,=זGpU6)6 ^Solw }e^&Rg,xrim3RD0q%:rɵ9ĭbVJDeMLCr)KB/(,VG'xg]td!cVi*(IYނBH>NĦ fPY^HlpM-t?&(,j)lʊ3 [cݺC>u@tю1aEypW{ʇ[|%z R2;nKd#DK|-aG"Dii{dO;XlDqzZ]$r̟Z. R\^UhfGKgB xQ}ٿ+O5.,Yiq29es Gz,\_qXl3`O'Xw;y}ΝpOZQLQ}\_V<$k2߳X&.S`óZ $8kĿ*KLZЖ%y"xUܯ+=o1YJ[=C67YSr~%95yPzGY#t܇A-;` מ#Sg7k0TdwsSG:U{ #q(:"G֗xGAR]ҀK?$K ^(@K1~[e2[3~o$k#KKZۏ(QFѝu%_CV4R,ɳ]\Y)JT=o %rJ.z Y>Q4`!M4*A`[C\!fIÖ% O@oјDN[W67[>\fO$rYE邲 %X9x9>uT1e?ha\ڒpiA1OH@-2E=p6Cvq:}ԑÏ/5 "<5!a<= # X%` 5Xb_>mq4DP]7#xbTϱxC{0!iӍbKcwp֩ X)G`n_x+āNi/dQufy6,#?j,̖KDziKt2=p9P Q%:'+"8@ԤUt')wP^*}(ªKtbPkAi,}YVwXJ cp2{ARX^[bĒ_PيH<μPLJ'Rhj@?{x%hۄ<7f@xe"̨|&Ѱ݄sNV*%nگNSbЛ4u}f G'O TAco^!fRV}ᶫ2Rsj}t2Z%Dk:<_%}ApIj( 4N[nMs/C2ӀH%vmST*^>cnc.قiR~C- 9r[kؗsYJz#`L(B[Hk<$xFIbRe>!S4>L1<#TF&%m[G`A5Y$*W\w[!|yKWha?Q~QuRw-^gk8sW*[[(䳛0?ёf>+qK-ς.DK_dѩo58j+6/RO"cVϕp)z9/aո)@4<{ VFM0%݆I,?3RIaeDBvCMfw:Ç -m7!g]s3$I@TLhϬ2,\s;&eRo~B5OhԡD*ghE!r0[y0HϢ.7m hclLQ) UtcԎ֦ix !DdS+C$E znry;+Bg92 豘"HI3&D b{h r7$vE+GǥɹMy艞@@ ?]dMTè$0+([j"YNd$Hh#/8}d(ŌU>. "ߒ4"c=X.eC +_kD]M&zFEߴZ1$\8vNH$3_{JU)=E;p٧<9H-@O*nA < G I rE7zҀ"Z-!4!1k]!Vn1(y>a"4>H#{N:x SrӀ}2%:ѧOqQ6kInXKMpzzZc:SDɝ6ݴMມ|ybAQ'_-}9H䵯O<}OF43gg KJ f/Yz^zޮ؞%e$uLPXX8nIǮ6 \ty>WLEN$")!,#u3 ȏv6Բ}I}^=8ha\;4*C}U0"yGAUWƫ-aĞHcJEhcI7py*00/#o͟PsS :V%Aaz:,j_Rl.JA^8r|cZC_Z%k(=Ɨ :܈ \Kg|6G4dOn@u%ﰅM(3 񳠤ğ vDYՎmOgȱWw#+*el '01Xqr٥`_ˆW}˨&[O-U&h]v Kν$9¡BSzӗ 9"*r4؊ }p;xe1J4F=?5 e7MfWha SXDt.fT(A꺘ק$;Dr8 j5WVFY6N rvC#҄ߴÍ3½:s 7`8Q~K5N;@5H%rSV|p :Tκf"Lj췔/4hG,}&9+4  -*Iˆ^(v/aW>Fahg(ەȆjW]KXY:ϺY$E:2؝.`Q@W'niNNd{F\NߙrˑN3TfO16)rAsX}=$Lm,@ނ͢LN}´4GQ|\$B81܁Ukf9rbanoƼi.~l'!-,0ID추/Wzsw6 ! Ēτy6ZO\hFRb"܎YB, (XӔ$銃R+[_DhƗm;tZ۷e`+H ؂en1mЈa</,&q{Γ*"Y!I.OFPUސ{(&]ټytYV EQkcÞд3+dZ*# ֕ d/HY6'eS)6,`70W PH{ tKM4h:!={tNEMsͰ%?AÙP_dn#ijhD⦩Nx2I{.͏}*W4z#C@ͺ}o2{Tq4LZ>ã2L=uW[DLI;:wycMZbF[g.Ҵ25rXGG@4dUTq~5s hmJ Cyh&[A9~ǔ}Zs6M.de[8O:fF#UzO٥Tdӫvo. 2qfPlYZds( !:- 10Oɩ,T5X`jt_ZN `J*fS줄Ք֟-:"sW{(smݹJ L=' #IJhi_=߼Y(n{?% +zsEbItTRzD[:_<υVИ~CB(+Sv3Iai5YN.q/sΙ4ӉڈJ-:T/Xsq\y۱2J:+RƃN4vJǥl`%]h=GP ڦ-P]$KL tb 0=5f,'$C$avxHk!Np-*Wf8û:{)>W6 Z" W+$,75f/ u ͵ ñ4;śx!VoRtu0&IŭOj2K8Ql;sJ|Bm[k2w; rG`g\l%pT$H#3PDI['E>Cw "?O\ ._k?nM$FIK^NP,22 utyjܤaJ*C01<#Q c *\< Xο8丫.= igV#㥴HU1DHO3r6@Z/2c穦y_[!PCT NE o&5 1$GbE6^cf Gҥ e᭓Ntlflem(P2I`E>OT9cH|.̼GGz9cS2F!!߲$oG#3e%@8HZNZ9Xj{M\j+97'PK`{q'7wRۑxsAC"~ q6 y9A })Xw3G[eF6<+0mo8 `uA WB* gn6RH GAw9 H6}[q>Pr惍 }BE-(TPvx]_*wRt~4O 94' 2wgԤRܝO]bH@PV.D/^B,2Ϊڏ'"񸲢dw4gx0{oZ4"gmcʓGѨIqL0j*|fKD!0kQ\Y SEODTؓۅ)1K% U%縧 lg 9ۜ<ʦR-2l-Qa*, gEy鏔)JkwBP%P[rIAA:83O|ZYc6P'-M0 2(B4z/3‚[=t5n)Nl ׭OgZ z~mfj|c̝xhyu> `./aELr g sgs~g0ts =Yi38=.+~QK}iJ=%iI]dWtkYcEKZXkɰ27 eSƵɗj oo1pͪKX~(|A&0=0Oեq'ս-oBzPDtKݬ[VVnn9#Kp љ];{D0 P㑈+|L^؃cCWw*g32ܗ2! %yr7:!m˘-'Wŵ9T? r0=bp,U \Ȏʴ:o3m7wH )@9;}2H:*AUn:@M5DyɶW{xY3h/{]r->yX\7}ƿd}Ů.EҺrV1gplM|x",SraZJD]J"[W.=oJ'2rxfƓO-ԙc'H n*g (NO^pLTU}Ufs-\1L; U2ujiUVgԭ#q,Z  /6]n^sƐ 2o42DZhxY=͖ hm}&Kt3a˦$joUr{v߀ÓB*mSB+A(0-(18̞+!pxmOE? ;B;@t'4|=N@=2fZ'vwiԈYܸկ&v#KSH(l^RNMs>+h q܍\{ߜ7= M_2o- WV$LC_54UumAm NR6`$iOajq}Nʏ>J52ճI󪭖)g*ٽ> JY7q7 Q8QDQ}O$jk!|gL#;>=tmCDE$Ybpae9{D)ZW5i@X`x]@,FnIX;򨣂f!'ܾ*iH-g}a\X̎JLj#oU&KYkXBIH.e{(3ivAVyxlr_k!Bn:_ juw< w`˭HE2d &!MwV8QWPr1z\9S$ ecbo&z O|0t,M4^`GB|sJШ63ci߭Qb֔(:5\T0fCNݞWQ6#Bv]w.c>V79M Y#=ٚHP.DŽ0 2s)4W3E2~ue٢ǷsWʠ U>_"}?kt(5A]Pfۡ71;;uxyƉ;nwL'E>y~@eXW؄# ]"_6? f ~z*V`S ~\PeˇPva/^|" QzcµJ'_x°Ʉ{hx;̳xa8Qf S9|!C^+< bT-:ON0I%jH^FNnHC]SGOj/yml]~]:ҩAKXHS~#$C*AwOϏUhIw~iLE:oA$\y8>lK)+X~yet+뜐3._JZTҦn9^.1${VCPJE}'iƪcԙ#a4 Y/3s'eLkRTD7J2HM2`T?X`=(ooEGKGO&cP >l8N:+a O MτgPd(n )Jo{7XW5 FoI(4Yk}׈l/T-oqoؾN#-2_/0Rxȣ^J<}H%fs8H)eiދؠr;Pf39,I圶dkxÍN&1~ԂDp$&ׄY- 0gjӝrɢop\ZJr jcwq!DKyRh<;,"h=i?vso/h!Zgduezu߅!fgwd&sSYR8i,b ٳiS&CEZ/F"U Izo pVCU隚 ī'xt$nXG o?c0;Y' GC͏yf9׃`p8Hu=ų22[ׄ=Q2XRA$0 οa*t Nn>,)2>׳HGJf:5mgm5QgD<\9a8+&qî鯒0D\h'KPO7~!hhQ@H(yքH]I=\Ƅiގ>c&-y ஆY!PBGR=,Hd"-++1}-;C)( "mfOTμEGN" җ <$ߑR6rM饝-e:j60_=вWrs]+jk׶F[pI[8o؋?=݁Q?뾷"DI8w4C*\rk%Hf$x !nfY@r#S> c&ұՉ&8kW'؛wqX@a%vvzί9?.r?6n?a:%lMw#bRNS#wS~\nqc( }rGhi `f2)Q+? .;{4Jsg)d[/\IZ!}}7#p36&Q^!3ȤSe-lrvyDf:?$LL zڄW>~`{>$PL4 ?5*f&4[]\k1`:8y:}ĉ}`+ޙS9BSQ(B"+ #^&"ϯMqr7b]hJo \?շ!<ސl\s)gNԙdZ 5|㪂@!KKSa$;{⳯!"`~fac#smd<x0+&u4y0+~rA9H??ϡcLp#rNaG;m59aprx@~j$+Lk3)lùH~Sٕ{mRkd*iQ]8cvj:|,2>=nܘ]%, K6oF{V{S~dc|Vs<DgaP2 B`3hko yB6YLg>(X~Uv6Y2$J$_ў2 DFʺq9ibf.Zuuªr1?CH7>LYH>$#&a)_luJǧ 0Zi:#s= :kky@6p0.D%c:ܮ+ 6d̟T>Heq'4 2#QU7X+tL:'XdWbP5%6C_[G4Rz4*DĄͬ轎9Fncw¬"zplӧ&cU"v iД\uXiZFUSSd(6Goy-]qbHaȅH z5|)~h7zuYBl;S,H5&LKsgmbCgJrlSԽ޸;Vrzӏ`6NʦPkUBvFcsH'WFjY`ͫID /95{U7 fNms|K<їkWJ?O=̆Q_ٗi}JA0E+\<(1u% fN&}U[`ރ)Zv\ W/0TnzuW/*vZvMExyP7vf\{)%ȣ+)~ J',z㔁tgٛYr(4c+`&ݶQv6A@3=C&? ;Ÿ-)NgGg9ڝśT%vF_vztZ2fwE5׈)a%Pr oT}[Dg.4uQQ\ .NߓOIʛC1B՜|V{s} J]`vNXD[61{ a)Ns9JS)aT;DiŜǗ@bō+VU<6oZ,ĩnГ*{uDQҌiemƬq 9 NhͶ"T7{Ez2S=z 'Z4 7Tj?}@f5tcGfU?>AD}5pTSS"p(-qp !Ρ-DS~i?|+h uwNc' &Pe bͮL@{sG jmN;OrJx 3*c> i .ŰwYaqp4sۭ$WjA'-.wm1D#{*B{,'\1PM %]BT3pXi?J5WzG`av0m!I`䄞©D_ ;cJ"`X>V L0ąf_7MN~Ex g&7d  4f7"fO?E*nu mE0IY*#6ޠ[AO,Dq4֬x-ʓsj.vI!@}I !O3 LPxU^H3pN_ydEQtǢX%L  hq3h[o& Be麺ӯ@(WN%2Z1HQSYmj"Lp|Pn3p@0{# *T*w0f 4k8qOVۉ[i;fsh)6:y]|B2 M?UPe !}(.vwlc$c"e˰R  bt+[ovF\rA}p_BNI<3<8+9~d OΥV+s$_U`EwŚ_yp-sK( Z\86>+׋{Jw XDA7ܫsި<#YpJvzIEZtSo)XqzryQg^•QU!:"zjk.na#d. =26T N(l8Wh0{YovC \"`-v5!ZkϹx_M@A-_Jˑ(z-,S i\l$jSݗ\NȢZ3ǢG{ j?Irq`Fq8:o1VSS#NW&i#jW]P oߡQz:wU a/eMlO T{}X! KyY+JTRCEp b⥝evWX6p[f5G |5G++ECcoՆ_iX$6D3jmv:]E5vg;L5XN\:Cb!KjE=Z1)1`O Z)撿׃5d;r?q IB1T/1>mX^&KTY:?ۡU_g2ˠm-&"7׷[Ȏ<[s#}jY_䤎}[$~<#Hg!2Ff#e+q|gt+E$G| ^*a > _3#: *57[ęqHxٛ?FW3[,Hv4%ԍ4MTIj) fZ3}گ-߸'7Ug%_B@ZGJB]H 8s4gNw;`ꅟMG T}ڱ-Le}ySaQp99!Bq9hCZ4, e:+ IYNh@[DgSP#GSW #8(6[5uD6!wžc5Rk#pR,bo#Fcxcb ܸD9Cڅ-6&XN¸hpWeNjx}DLʧsGb4(fVn^EDv!.p %+Tz,qZF4@lxg cϲTyhͧIWuɍ hOocMq:Ƴ_j|2zC3Y؆j̘c${9ӌe᠆]W2K`\^=feNSgC $VɏdC^ VzE)J>L ^##j 3$QR,Q)ḚFڛS.jԂ#mr"2FМAHqF!̴5)QS!tJ\!aXa18Qt5kw{azХjXni/ObB>2SDO\gOLbv1,i]$GAfa0̞NZqUT?'v e,(bXM<"g.P%a-0i< }|$kbd̡,+tO3FYI㍢-<Wf\ #yOWC|%*Ś7(9LJPOTAΉ/Ƶѩ‰^(k9fQMҦ0r f{ ~ 7R߁% 7+zh\OLx{;6;s/Kq4H:4[ȮPʡ-WgFD`C Qx ڂ ]FrA.C?s}cװ-3_P-yfL7x;ߺDjS3Z&;fI{ΧVqH~ 朮ߒ_zu1107+ud hOɌg2`>h؉:,7v7Yy)tgl,'$%NUD vցGHQpguP4%$p %˞WfdZ!x FqI#(Zjx/RXf"`) aN7bXI4T{vDZTFwFl;0 r* &. Yo珈|\h(x?bw\vsM}]!$: EO'OwbSƷDn*Z.x". /n~Y ſIއodt]PkF:<6ٯ5ݾh.ѷB ~Xc-%IC*Vd=P1Syt)LZ:p i-WFn0Ā Mv8`o3 \YX~w3Lh%Em]˟͢??a]xc5{w\F|oZS>\5~=([KD+&gs,wމvvJ2 BtE]C2>:Yc ;;2e b(^ξ-:ܔVj v}g\oac]'c5 *ϼ@<{gֵAjΘnZykɄbcsd$ќte½}/'ՐBǡ XiYzȦvDϔ `V:eg-b!S;IO@Z&]htK̢/Xd L۸&! dRF)Xj//& :J_7]TN SgєRz%pw/n6UlXѭ+=H29k /+mI Elye,)q*#wtqm#MjC7W\+_r_`nfF;ڷFz>=dSBW_B\ElRL"˾MKLѫ$6& q+twcJ݉r9K#h/hI}!42ܫ.vuoc#;+{9iB{ON'/]#b>xu.7k8St=y>;Μ<MHn='Ukk)`p*l}&\nkw+6CreSbm䴲1ʾ(ȵ72pOY f`inӐ N6r;+/,-֟Hm(VU$n"f]#xЩ #Nȿ=l5@hl½΅suݣ}Rَ^@*fP׶-{G-k xͳsX|?Ce|mˢIX7ʛ5PK7:$wis-fػ(tQU6W$5!aAi4uj ļGn0CzH399IKuW/8juZzHn]d {|k "CΡ5`2E=o_9ropOIOָhe+0ӌXI8j?l%XoA%G85^4B,/{Azǂ>~tV%'qAi#$o|X8K]CQV2 efhb[&!R[""|+ؼ"s(}Rri5FN}տ_;,SgiANTa/*|OӶDf9NY~Kex>yQGZq#m؊'S6HjPTY£t۬߈&akeHZ" 6Q#[x7O`$GIn9:pèDfkwwY׻YJhB>+cz3?}%x~>N\; Vy(9~v?b55ks.4.+n>~KC Żk R, 3-,ۿ\K O{(( ?/B #iNp\ΥwODm`p⃑H0򈬅o"Px%V]*v6C+^l~R0ygVei{:t_̒)b#:&f}pVRWbGg@iWomMhzs٦qAXUhkI5:>2_'Z_cP\(nLD?{a|5xU:`3sA*{ sG 1 ĔVHR8L'Cq?@까ۆ3?]Q[ɯzŢ_#v! @YKt[_[ ޥ 򭏭`m1^qpKL~MXh!ҞHJ!rj8ߵϿC'bbwYaF. e(om൹c/M6,D;O}b'|l[[iD(k=nM,\kǒ!Qx =FqJ3ώqr+':D4y` ^:kȑ.V@}ʭ,e;&㸭0XCy=O#phY@\-vrc;:ka`2g~H{(="V_M"IY~l;fJ]D(ߏ_S-_PΤȽΊjr 6N7(p k?jxf )"";9Wrdz{//s^}oINɼtTyoe!2^,xދ{>$y[L:CvQC'l=9&u-ijV8cTǜF\ Mf#]}r-$'pl|R Mڳ;}wץ-v/TPz#پ$1ߑ)U Wdň ; I685R7בvFm!9o {mh(c`ɍT1LUYtμЅR^0/\¡G/<fn~wJ6 O/)`[QlS"AKL4P28`euߗhh}]xas2_/acv!weAcㆪEG dz#oCp̪3e30R(BX&6ǯv|Zr%iCd|Y*KT5\:%`_} 5G@z1^YsncgkùGߨ@HT"A  -zMn' K/+ZK \$TwR{J7`fZ b^O=Y>z`53hqA&.dqXTAw8/ȣ淂WmQK]umrK%(8r:6Z|&4Fە-m'5h|LؾmL\EyZP?oJCl&VK*yZ#Ovf,~/۟'<Ú|62,,ÛJ6f=hvMV(aȖhd9}kK#ê ӵoTB݈>ʏ,BVN 91_ T`ɡʊ|V;D>ȎONXH#gi,c kF۸ԓoC|-{LipZd,՜<|ĥ]L[~Anj?bdlV vV4J~{#f&* 1 U,N?$@yMcl{|e8h<](Gk !E0]$;:3*d[_@"pf@dcq*;Bmir3EޥHٔ*Q7OF [Z'mO !k^\“EZxVZt)&Rz _|X{KroGu]<79l\T,UݘU|sSwt<5{z35DZ㡃DwNdmQHRy`p^]~G&@/I~8=Px&ւ?D >B/h bOn3+t(Οi;GZe=I[yVrs|0qQobZ>QԹ,B R_-p胵|GZK QYhV 3Pef(CY'On ?73Hj؜ދ?JzBn.tDj\bE}+ܹ~^xw^!2j% ɒd(-"ބR)F-7Xj. #%@/*$w26Ҁ"& 夦-F$@GB + 92yr 2{<6@/54[s2Ɛ+9#=Kc3ZIň~ҊPV]_LȀ/XM~HNN$. :}ͅk;C(83vGpUc7z&Iib!Xj2cA*V9Ɠ[]g̈+4I5)p?F Ǻf߫@`p=y"`i=$0#WcWtDr5nҔZ׆t ?sݛA*8 JFдIw4*xy$.='F $צɞpg,rpLPzhږ^S:wԬu"mG"T#sMb^W,IҙۭpN9ד@΁-D3&2Vqu,?=6Vxnѩ}{%T]%Bwɔ]CwMQ/"?OMZBب3NCQt?e-e!b禗4nȌDGSr4d&4J[ V$EpƈRv4ak[|OLe)Bc~ IӔ'ۗ-NSM^0EUŧfO{>wdέ?c[{:Gδa>liEg%qjm* C?D)P.Fz(Q뵍Lw̢>W1Ejjd>3$[ae$Ձrэ}T>0cl,E: "_,e[IC߂W) I*퉦co8y;@APyDy$+CQN:N5ԯHǾXcזJ[ITT#^ee~-ǒ]n;^U12kHӊhPsdeRxv/r-)64PnEEڽSM?Eb%BgTG/J%X|P8fU^ K&W։!(jyлE<&4}SОgAȪͦb1JgWn59R|$z":;cJIX_>B/yn "8)n}ͬ)w|8ByU4WE.+*ꓠ4eb%vW(ҭ:]Ok2|4Gg}6Ŵ0 úYzĈ SorlFE2qV3l[U 55拂-)+&?)h^G9tJEͶW73 l -6Zl׸X(7cÁ(aWՎ-ZdW(a0/$6r-eb:R.zNh(`Pܸ @A[[ߖv"Sla7 C+T췍(͟/TħN _}3";|{EΛ\؞HphWW.2#|W+.8t@L!33.ckU^+[]mQLJo#XJtyf)@+=~&Bh{U.3ה֜ )mL*z^ 4o{6ѷnoGIp'!TG [y oKs#s>&eBe8!]HtѤ M L1}v騨&vt+gqUrl)zG,-zC_.~=ww~m90 NLMbפ k>*FLm>Lj>xcQ(8s}TYdn[]"Cz9KvҬw8aBGFZrdSpm!f&)SLOu{eM\]vs>ip S+|B'ƬTU;]1#hYh6J":]~""IK~Bk @ SHX]z \&(DH#ϥ4CO s]6P}@5#zH};? <C~7Fq'Z6q0w+T-xaZ-ݶtolɮ5y!~A L_I}Fؔ/Q;sUw& )0ۀXs_U&б\ɅV[+گ[ :μ Y$B-ׁ xE>@-?Y< dފMyd O!tuGg4Nd?3Rk+Tm;#p#ĽrˢolrZ6cy\ pҔkOJ$fjĎK*!1IπV-СbzfsݣVg0,%{БF_$dZHD _p,"Skfc2]8 ɁIc[CUx6a-$VˊΞ0(EH}i֤ek.+=X04E]ccQGʹEǥ1`[sEbrކ#2?RsߐN[/ȈrÈ:,?N0*C[|7m7vլy NVIeƑΞ7~ #+95TPW4?$wu ;45[-[ a9 Ï\"hcʓ.2 EL=JQ+Ai9HX`ɑ߈Iqi[ +PTkGZ+?p<}زGV"{7i<x7qM]艫ԄE_u;p'0?`iM}O8}%H0H]"7ǥսUB^aX_tj;"k([2἞T:܉\F;>%C>D#G\z7͞}PsKu|XTB,h ^&X24}tn9?u#. )Tj%?-B͡!Ġ$D8v$ձN5\9e+s,#Sh5?Zu@WiQ/gW*/3\IV"EkߨyN}T6j:^M.&*PCȋS@NaC.K.hr06SLstUe/ŗR?Kɐ\-aq!% se׎-ch#q2ONg5/7ܰ降lS  #xeum*R4M5i ak,˴:IUB$\Ϛk=VB)g6䨻34uG8Z"Cl\Us1!aI5#>Z&"G՚Jv()vwL ܧVS ۆ0O9#g¢BẒA6ׂukfW~R՜{ f=WÂ9^ZLܻ7u}elnvښqr52Sж'G]8:?QnU7^^?#Z6nԙ0!E 3TW^ *Jsv^m}@h?o3.hd׹wo>~,Eu{梂U)ZNy);r:Mb٦6<^<ۃ|$7pfn{z +9.+;y9YP {,5_,._ZD& K$R9EAr/C6f3aS#,,cR"hf~=dY&qWs>-juɶq퇟MHŃK@௓Q0hnXr2Lc>8"O]BRf(b\@rr H7:iu,%كDKw } b-Co㟋_w0+=%ַ m"r4ri tU"NKKkd!}kݿ8c/;B"B2(j)%hDV(&07z!\-Y/p4/5VHۭЖXw'i5HcB4!8IPm#'f]TY``6GT#0L~eQsTf< yt?8Y.hȃJyRsDʲЫqSC&l`Ĵv@zN1=R~PFVRjy`a(/Z'3n2V]ևmuw?ve$uG\Hp'&g[Z:I'ϬϲC.Piw 舏v<˭c>m_PǚhRC)K&Ne jErU'bB,\(cB?n=eu߅Jv<"S}x z*ỵ+>ֱ)fvw88@+j}!rnu7s㭓F>~ 2Z2gz㦥),C ʀ3w>BapP{za=iwf.]jt>$C>1`?pJ'7j^;"Waj\=)wzn"maOuЪn;o9"SֱTBq< m\sD(Ài< -̚a| uVPӧS%}#G_'C7k_2SH:OGxYuP#&/l,ި[taN^^/h-2Yf33oS.;U$%;ALS?pG -ic$5:z1Ft]rFye}nF !au232pBe/2wjq'D)}k98&qCjU2-S틓6CeE]5+Kmب'-Ci4W ъhrAc i6-DL&'d=bFA]to汼uZVN6jÊІ,qbW\dE+ϲHixhNhIt)O#SZ5m2=E((䒯{qlo2*an[rjsDtkj&;?N^[pAX$ \&])^INь5MlGZ5MZ\hܢa+g%mij{⹧E*>LGK 1&s84&8i HUvnZ Y45g,op.q7!QbKڇNm.F[ (F) J+h؆ ySP?D V[Pqu<]8ghc$i=0N'1v5k#l?ZIRe2 !A4^XO+\_UNdCֽ9\lԤA8yuH[8U9h4ߖ6z{0aQXXb/Z0$ihNc} ^4ðnSfLx VѲAb/ҍv t}V#kFúF5q&lڴ!m=c$fZ X:Q rc-ET~D" XEP rXX*tYŶ]tL.`zDTl?F6?" lFʀh DAfII[+2oHhɓ0 cye*}~X MA2k ㅹ1YoQ|_߄+_rx}tGp$~T$^\ç$6@+|[*.;,1i?<-6@̣-];]n/F[WZ:zl9ސވOkił;@!kc2ԋ%:XI#i4f^/n :PkM @9,CXvYз~5`ӨaޅԥF'$m@/% ?jBPnOTwD2`'tgg_ؑAHgJR+E;-bdCt-A! =1@T"ލVq\a@>)h(79oIi3CJŠ<]S.ZH2ݼ1 > t,[!DJiTR1g0gf$긢ׯ'S&xVʑQ:6)CC?.H!2w~lܛu6!;F,ďh Dhmף4XlUxmٚ%@Hv=Cμ%GtUEh65*\uҖb0%[ DQF-Z$mW@A6%Kj[nK@G5bVLD]x%5!#A r䎇)3نoJq#nI|#tF"6%F?(j~JS3"T0Cu6PEX̏Ghc;<9hϬqOJOZX޲^MJ>vRRcp撃?/F5;@ /wd&XyHfkAe5U#/'+ۅ2/a OA8Q z GYl!m," H`s0V,甉-so"¨wH;m\yIuXh q3c G$w/bSPY;gc)S@<(t*ĨNa<#MwtށPķ͑!ۚn'Z}íi9e>ݱ1{CC@:[ ┍} ^ Z EK`ﳜ UV^HxOooD y\c;>eRxhJ9Ö@R.=@0z$ǹxS8+C,VվirX3ܕ^+6_0Q|s!a~ta}?X>X" Ptmo"7˜F?kCU.bxtI-6-^c\݃K/d!h= .%]E_ 9:Ih$R\tHt%BN1z?k}s+OR]0NzX!% &AM NODL輶a?v"괭G{ y>*BeG gz'fb$o`b:xrBi4*%6'76h0:=fCgWzcPyjv|66DOp+FHO m>coa얇BY &/_o4:y)LT+2{=`Xx|P%A6杤k0QT(,&\S1qM\}3j:ʓvp (f)oo!_ɛ[F4KWiw xo)ͣつlVX&ͫB X1x# $"u[^n(t"ܷj##-(v7#ܣWdž] LDtK# vFk?i(ݜIb3e qn~g?U4߬3{QUL7&9ɞ =/X6kmb jF|8e7A豵jiXTȞZ59~r 2~@)ڹx/:z-ߤL%pР s:mȃLNT ,-VIoUDEP 6K!<GC,S %B/.#IaVA⺇蘫jWS( SS/*l'A|ݺn\Q4 Fk$%pTRa+ڙkx+]]Yv`\x CɢNc‘ %zUYh/}^[\>t4aF8po3[yg@Ѩǃ/ǜ)bύ;#FXGւxm+`}),szt*HO&# hE1s5kǩwa|'r:% HSa S0Y^a(3tC%kU~wPX}do)!>!\q7+y%WVb,;>{=[O+?d&{5O k;\)K#T憸w;^ڻ,j(43Z cE͌FчSSM:kW~]gyD [0( OP|[/g K=:-.[b_y(O'-{8 %T|~N]H - @jEΪV vox%/v& mSL ,UOzׁ0prą _4DzK41&l rK lZc]/AsoJz~d BsAr/aɇ9OƐȎdi&A-ha$f\>Jv)v2}RF7%Jx}miAp/3"5qO¾2*,: Uj<7xzdFm./F,xv)#PϦp<ˡ0@ۓ(PSpCyưr0z[L9sY+(ďFhGҲ'>l)%{טs7e SW8doejcsd''hײWͼ^1[)y vp;#±Mwbz%TuGp1['X\'ٺ /}zt= \, i~m,몑ٯߗz ipxq"0`&)-S66&@ Cx]T3kmZ+W2f!zyZ`7_ټܼ㐵KMCT /\W~\g;TV;tɏJ</%KVHr!$8-;_,8r#ݺJgCAS ,l8dy4Vr\ +wm'" w2^X-hYc!@;b>ԖD?>UE|D䖒?Y҃838Sӽ=>Dӄ2~:Ѩ&㌲|Is" `Z&a]!6daN;$j+qb:[5`(Tb"RLUI\Ħ q&74e[)iT9js}H4~n2A]v0tgcEsptKiVW c| n@f쀡x%&shqB'_*^ ] KܦnO'm~^#!w=>q $Ű@M^z`cLm&.ز[G5F {@.@ JsxIR|om pzΤ[a9 $>[!<[gxCq kժ\1-A7V ^-l3oMYAJ^-99N4; X֋=޲ H:[[Ii;!#}g6oԤ :(Q$|s i$ʩJmHsLopmZr.\@ƫ{75|gZ6 S҉nbqZ>ӈM@ c_)Gt5 J*Ãz]% kc>>-(DuO6Ff}VN٬[i nݡp^V)G"vr6 !?hJ*!$y*_k'x-Vn &Iya;2J& hVPB7!8^jp:=ybMuh@n:~uFVVԜ^-:Rp*)[ U/0Q9/ u%.h,_I'y;-c+dTyV̴7^SU4JDJ(Ǵt!sot83gC} ltצHCGrhZA-s` =vY>Xt{Jߍf+6^3ޢGQwS*G= Z*A1a05ex#'f:>؋N!$$ /H'qnxC]x.}і<[n13".Yt^Qpx:?j)=4Ҟ|H58gY4+V[*lv>qļߝ%/B׊vKx%1OEʷ|4&"Jy=8۳J ^#9NB6PNK8@hJJP %,gyuOBM3F­#`;C?jbVtӡ*G%MWY/Whd{M{`TAQ4!]>fC7Sڨ=k wMed>$ǀڦw&wM!#;kuer7F.Qv?!=x_ v]*4/@zJ>d7#82wNA> %/H1<@:KaE C[@9oٷ[}-K A _MT=-f  TGH?uK" 6 IF\D)ޛəqy/t~d:xg/ @J V1a\`{dMq]uɄϊI5ֻY_ X7 B .yp; Q2T~ȮKfoWṆ\0QE: g iݩժq3|=P%PO md$M r+oqԩ/JHI Vvj/[JPZL% .y{j)#:1bM FX9F$!UΪv%Qȁ7Hmxv-XPDhŊ`+ 32)Ze?aWn@r}2M#XnV3+QºUUtxA-2Y6%"HjG\/`xm;`(<4OdH9*/@oLy,6jlPh q},T)ڽ%}V#hd ɍ8p89ѵBzلB˨LLw2qM{ok,ns"{tI&̃H` ԉQ#Dp$l֜ܯOh{?uW/ \\G5T{f\;l0'ڀnT`l!3f) MUHaqfEʬÓ!h`m0܀g`9CVچ ;t3u*xg۲QCsub 0w '/-s`z VEbnlǵOee`dT p@>jC0Qes[cmeAw̨t}2p#U~sH\dpJ'16Htޗ9f+SP+eu%Մ2(Y 4єRcbQUУJ9ᶅӮ9 Ψ^ExPD`>z Ƞ֭(nbQ9ڍަ7h r㓭?*s[0"a'dVwp LAT`miM5e] TT`QW vp]91A'Z'.[7R?߸I֠%V!J(#=^Vsߛ&ozZlvA ;*)x%Q7cq>b%?Kl>8E'%6W̔0IH-ȼ MhVi DXP_ώ8 ik}Ww\tұDr^=btu`F سwmͺ+o`MYK#,vQe1μ xax&)od7[镽s*e!ϸ(ZܥE~[n-԰݃iPz$z˧ cn(>wᑱ0%^dr> Y+`PQv' ^=B "Pt?wV7 n(Qnk0Hz^v71UGU\ò:=Q7">`-PN Mx=b12owK00Mi+R U9^r7"pjSU٦7&RqxJɚ[m>6-=/yI킻=[~Z(ĹgtMHD^ *sFA:n'F3>I(O櫅ti@OH(@1;n>=w j_aIܢL ՓO:H:Aqszq;w^M7)01KnZo@{gY74-Qih)vpw'G2Pk8-_v$ |veo 7&t{ JxSxOOk|p@xeҙÙՑ2P S&E*jלS c'¤*ٻYzơFc Lq`L@ \"@pb.#d7]`4[+P37"N;}8`YNoe1ywI7}ѓ-e4f5L.i ؐCWJVW@#r~@lh`wZ98kX.-戚T1/ FOiKD1;%†.s٣>)C9iVZK'tĔ9DdH48ƈZԿμ`GJ޵[xz_g4O ~7E3ϨjM;KGM3 yAjk* D_R?V}-[dm/y0ɤQR" Uz-A!d5Bij8g34/ijKB 6#z<Ҩ-P')j%teU$Ru;\4Ƃb6,Mݵ#r,xq hNl;R|Y8".smnN( [˝N%~P)q$!3vF,0 K)G~bϮFr`Lg" a c~QzK y)MA\N ݡ%-fE6b3Pk8,5uߟ~R;0qKQԼq~Ly,{v-)#J\R_2AHSa9UNЅ?z`ɥ_'sH{ ` 4"EОؾaW\w [},+gFa- MTDE^ASdž9W"K8BSIH,WX4 z$98[<`0ѤEV=1h(y.ęX ~#D J5sۮ+}"Bܿ? Nu^ї+E_Vg`nq#:q.4h)_ ?m&Ғ.WO‰k4 :„-olbo0t;TWMR+=AgZZirT T}]OՍx{GvW>UZN`@@v}h3ܞ/PS`IӪY hni]z7!5:{,[s7}&NZM2|r8sLM Gn I#sK2Yi>WYra} 8@7Ɛ8T\y;%!BayE - 6~!wkHq6#r`?;&P܃`]b|r2˪QP1jd{ס6q-;%!+ҹ d@_z? 0!gW5 |U2Fg"V/ŰA ؒ{wL-0GvG8Ҷ Xj32-FJo4F>X+T |KhzTb"Ɖz+Զn9)TC}iHK dgk(lX#0ur7ڢWO)F8Ƒe8á1E椏i8YIs.D- {J{|Ě钂l)&*EW2+(*?fbCK,ڭW+T!+k0ǒӥoOn9ϯ".#`w#\V䰳.[fCy7] aBܚu5jxeյK:{R{P>xNW mUH9$'LGhȖr7|?])-o/TWD̽lw 2{BPc楇5V]3=C̘!*ŝZ dP9\VP3Z.Q8߬_KgRc`ᴩdQ-{x(쯉=4-UW@,:tnjrJ˘30&hyJ=LG |u벝y a{IN;C9Y |,$(Ɖ.{ƳJ_bƤj؀~<8V?UКIoEw 9rՉUdRp.^ @_<=!䉴!`b^,km⢆!Z=5x^:KR76]_e]>5Q)H"6v`g8\GDze(P0[G2WbYE,o1hQyKAk'|@SʹE5{&d]ՍVA3qOV q\o܌[k*a^@@Ӕ"xJz&[&3,3;Wdѧ<,R|JIvas 9zI=ڣ3:C&)Qi㤟! zx& a0{TLQ3SbiHc!)#{XvD`z GÌj8Jͥ!-9_ COГQ8mn+I_`RƉϺU ]Eh/JN/:r1f ~tۻĈ_ s,Qe8/PzC՟t{Gsj˴rE04(z? jT+b12dX̖Vad͔4G*!:.{StjRW]J0&gd|Vr·D}Os=z%ǠOW71:p:gu4CGɰ*}E.[+ A8DVyp򠛶ӂ^;Bl=BǬ RK) @_4NVpg{R\^k pDkP[ќ0sFMPMCm`7X&Ea4!ݻ8.po>'xIB΁^@ͭ߉s%c 6Qxg(Lsbx{GL5)OQi#314a).v}v?+ǰI9rt 5C#SfqæB|́P ,($X3ә )xϰ|h"oڧ4$>k#ok/1=8s6)63Kl@qU /3ˀxـL6?oILI#ܣ88@'TZQ1fJ"?`9 sK<\9`YżՆ?{ ORev='U ]RrUIbWs6  /ξ0^\q` ^;wSE0<'?ZB$ҋh>%yFgI0b̂N8T–=&IC/xq}6?*b2&8G⸒69aYƒ4r)YX Tε^i'RF4V,* L Wг xPf :HJ3\sKjgg\6ezgP1,ycfQ__V 'v{@V^{ !؏ p~b zF^s\m@ZTRoHcTYkpvi~h^jϏ˦X=KIeg$-g 9/P|t^x-栏v15*dͱwloZD ny#Bnqdtŝ.xJKBKH hyX%DG_ܡ- 3RlH&mg;َNu@A$|d36j-An0#Z,VpʫTH(uyxX;B[DMo6ǠU5ŧQ10YeYI"nL'[3tǤUp"Tq֡^JE=|h^op\gPFk?_^ */GCa7]9 T聅mw+:|%8sg Tc3i1A8{Xf`̘ѽ ŕ7܈u*rу#65N'fa I1& f xg'"N]V]Q2ځ͋%[-(ǥ?U/*=se]Ҙ2%Q5x==ҭ{M, XRXHyZYe͗&W"BL"k C6JQQٖr ay8NUϛ'p⚬KXMV#Z탻| n ,!dOn̎O,` TF*CYSNB?(zd/qژ(06̾gLUcrQbk cavIzXL1L͓җ- RF5sPXǧ*~'pO00=P pga)(`B#šbPCQ6Lf-(m ON]lYIlrQ_%}V\oPIz΀s}TKQ3U>G,1}t_|(lYi9wq.W!T7z,a!}/%zEՅ0S`(u=7Wl^g@_-#MY)}kʹjذIer4 +e|^<#Y4 'b,CviĽX7P[vZA_GlVV.q_HF= MU]Lՠ3' )>d Uا&;K1S6'+@շQP{i? {krqMb̭ÿ<[+tPUpu:jZ.bFkᖸugG[nS k΄f+DYuei,/pX|ux kl; ?%`7:+ˤ4rYqIw HRz[!l\F]6k?=BYԅT$fNKߋ@]XGH5PG`M׼\rbpAFBv()s B\JO GcVS^ hKb8[T{3 P%dEST#}ƗDշD8`OU]𭬋?=$ݿפla谅!= GndSc%<6pd+]K=&疳MŦl~]ykȹ Qm0kD0*4 Ch gV$jhF~㔕KR{^^QLk |U,n␓ #Br&ϺqSްBl+tc5@'LeWk"ͅ8nL&cq+Pzru|o}楋9b%@h?ڠv}-4{ƣƕ*2ޞcK$q?}sJ=9MG{f@v] `%m1rtZx"΃nfaBc0ڊߙH"(d(rlZW2e*E^llnAXTgCO(;tHW33;buӁիiw,1b),jA=J~hKkעAQݖ!˜,;}#[ԦpuC<=͇ʳ Ovx痶љ~FJA]Pc6^Z@;Sr0(SKh-pCFЉC`{.FHPxd:u4cxRlZOKbpUOTr"[uj@/C=`7P.h+ÛF ~r% rE1݃`r,Q.Ik ){7[HxvZ HH{ \gNFp:0s7ŽҺт  ;S$OM <&#> ݑW2ڌ#܌+*r}d) EkfF6}D9|fdCHZU5幅o>=Y~)K8XYs\p8ۅi"(!QY ZCs>DUN:&20VcC1Ur8 "Q#VVjF.ŸKӸ?@`ʳtT+ë{Nb+!qI)2kqa-1 qU7 :1͗}1%e翕 Ag+a0?CH]cLISϊx)JE61mOk__m 2̵b MiBҤ6" ^~}8{-F&'YASR8?1\36ZPtbmcTO Mc;ncU{ky3#&G)TBJQH#]` IuSqǬ8p .5J!Ma##2@K aUoT+A "lڞ8Wvccyb8@2M-0PXD w#'%}$!|z/f0N whdQBY~L 9-[=vggA,ʶ4xDRn1k"j_j?8;^O ysG (^^=g8q0-ۣ +9ݹgLތOg,(*A>l|r)mタ?f)wub֬XJ6@@sܤ>; h$Lčs݆~c ӈ1jpPFH]~csFL XBGdYm5Ęm77F!jPNﹾ-?(rWG׏v =..Hwt姀 DPsN9y :lASA\T!); R[{1`=MSgM?.7cq1wq3ļ9Gt ʀjMsw\Sěi0-f<-7+Xԇl;5c}^|fJ]M?/8DPGn'PV_|3>X)2 ӦQl!hX'9O\ S!Iɝv6B꩐XZ%^M6z4Cg7X۵_AE۵njfX  hg;枈o<վSYݏl>Xd_S>9f]J (_+ȇd_]a3|+mE-V%z^{ϸ48ɷ<-Plp3ֹ6&:0֫  Ok+5> KJƆ,-O2F:0n~}ڟA^RijP+áK>!M^ 5ڔ:;-x~eEO>{k?7Qo=RͮW兖#ahD'{j⏏B)GdBXK(#;=ӿ΁D޵Zw,@c@o6k98XAd|6y;`-6k%Jm}wA)H&8L>oGaDbK:_vG7jAa}<嶜njxt`%3?Bv1>MS͞)֙F T0%(6Z#cYdXhyd¤rXW{O6f&rięKwEKZ{$dr-kX!}r KU0(H?(YU/سؾ.rS|)&4M )$knU1C(a po . ;{ Q=qTGg wY k &-=zж)I|V7۠ӸQs`I<>Ը߭_1<یwfWV)ePШ':vz6HYawCuZ>A ll,Nbh.~.XB s fbpac1)ۍ?}yeν ¯:0&PH]R ŕ|yiYe1l6DATPafw}` Y[h:TE[DE"ZdȻ8b3U;lQW۬%#nDn;wOE\L[#NfJ,kb@k_U˜ydM2d mzĖoh Eq=ySqA6$T"9@> yTqJU tݕZE^1`u*.4n4/GHP1dNse ĕ(|6wg=6s,#4ƺpv%4zWZ"w8g"YNSh׹XN(% Lvy= g7r6sWTvyNζ5ԫv1 K^/uzD)_8,5&2̵J|mOk[Y<|&W6C//]t!ckA/kIvyG^[-YGbEM(p_8>zr)*fbݖxFRՓV;V@-,9^|榒A6aj3D4LI(0 -YBa 6Ŕl=1;awhRXۤ>% UIQqX㽕Xj]WW0H €gЧq"oOUĹ?>8XӒ!c$';i$e Qb'9'aۊvjKϸi|BC"-R`L^ [AScPt Htn]ywXs3EXrsrz Yo⏌UE<J+S8*JF&(@bEO)?!(!C=Ry6Z,l/Pjwf ܅ DY?;v!ӹӼPMzL-玣=(& vڟ!(Ax{(>(T`ގ4>(qSȱ6F6E%w0HǻbCvIۆ%mJhh>m2?ĕMI;|`qa؁kmct:{R|})Y 8@͖.|Y[~8Ȭn +NMa=4V8 iXi?^ƚE@2.R7Ȕ+x>CN3ؿL>Sׄg-:<#㶮yΑ?hx8idg(Q!B.  '75dN-F+;mm.Vs<)\mi^>u"jaH- y\]/% b)ݨj>8k/ Eq4#nw\9S\s pyՈ8#!㴽LQS}M&~"g96IK\}s!k-Q&F_R<͕g.5cu+A#8Ɣ\a_/V6 9_ _qc9th J N*]VN[&^4fEjEM߯T2 .ǪMYbOUBJx Eu M?V8qg6(-nZc(+4<렘ƸK˵d7ָOtYTl^,(wݬCv>-:4>vO}j$>xsՉJ]#9C&BQ}ނTd,D|c'mpH41ꔧ^CX[)=I;GP$_jZoRr Y teH2T}bizMDAXX:.R#V*%5YS9W37`vo mps^tMsJ=DL*;W}ƥ0-JUuD̹65e1aZaHVsa7PALgU)6;W=)ĥ?D.%dXpKK ֵ"WN5rZNH1@'@dH&:oU3h DrhAKV΃b}Y>_b (@dlqArine,O,澹/}R8ZXV%tX+7gNnJ&c@>gS%;jSxeftZoTi%m4+ɉp󟔒8v'Qe*dWocWH^^StS!5ੑx AWW`S<9og, ?jN[^ z ob0EfΉrcuĝN mW SaĹ4M)pC,& Ӑ5jsA˓3(,sv8X!W f 7ſ,2|>Yg1Wj'rEUW`3]9yAYhoɠ)c棴oU:\ B~h]I_ kM1)b@7zӖL6nT22,wT2z,V/:ȟg``75fH0P#B,F]\#Ǯm].nPe=Wa&-gqb'r7T±B\TɫzPv5/LڋJ|Cvw+gX.sYrIxL6.c=Q7. ZCI)JJP~=Kj%mKBvz[ UD8jaRۮrӹĈ#qTv5# yl0$oݴ%Yl]YCOuӻS ŽSJ&K(; [*zԜ]_shSAr{ 364Ü]5 Nfcy!,,?)yٰ3^sAOw'{f袮ATe@W,<G@8FJd7/zE S-GqbgID~.13N 4$clbmtp>^@FANDΖbVV\4/\ԁ0>0#-??#ӰgOA?̗8:6aO7jx^o:^ZCvB&5P{D1H^kE"RܦAnik܀QNm )n/VhӍ>,w4hVY]ݑW d JXy\S%6WHLaz^kCq̴EP BC8ew〼:v, vaH_d7wb{hJc,a䩧YW|JAK8%G6*Z J!2O^).o8n `Dp@/r  / A2g,pV W qv&ߏwaX;ˁbtPq֠݋i>XfoM|~9n:@hMѽv,;Yb#KniEsٲF5VNzoVD(90=md@ U/nA~J&hݓ* ;R7^L ɒ]KXyCxvM_UO)uPP\ 6ΰfUKM[YYICΪ!Di_{د+^|(zP,Rfg%;C3b_ GCNoOU|\Œ՟#tll 8mruu7EgP1\]LYvH !4%FslҸSI`sj#bLMv@n"u.ǟ>îiǺ"mBPz -vy֧8wЉ;f:ǰ-?l<d|}`1`3=|Mk+ae^~l9;GAXhk+*fģ`䛣,~2Ĩ !gb@rԗ~2d%Rx-_؊5ÕhP gD!0RU0o^ wy,섵xSÆ/ٯyvnP;`~p .^8M,ӏ:FgVhZ!_yNhǼ=XgtR XLM=tz@a&h t+_+VbɁ#;v 3% u8Gʪ`oګ,`]"LĂQ(QL-߫zݦؗ+9tly:|ORb1<澲^5EeWfѝfIܷ I5D¬DK\nc m /q=Hc(xZqZ> d_Sd< |*[WjHWk:q3ښޝL W +}:AmXcY"R̀iJU#YL8CdOwCQ-}La0b℅I\L;|ѥ6vnAkO#k55"sHޞۿ;WgZF:aW8UnB]{<B5H`ZK)Qsf")YǾ$^Y=ӣ{NDCv`NMl} `t2٣<Ag`Ƭ1[,^c z:y_ F+l6Klѓ= 0泟`=m9>gW2 =/O\BӶY>o@j/La: rH+I@F &r_`~qe9Y"\8!Il8_rNܵ.Drt ~qy`,DݲR k D-5<{Mpo(DbrGz^u"ShPNJ adlUѤ%d- Ù}3琶^JΟӗ{,J48ʜ:?@ߪx/\wZ OKx bp 7/v6^mG3 U(K!ˤHas" u9˪9 n\xt]&X>ƁShgĐC ŁցL]S1|b*: Er{ǛW6 u 7L]l*u=j+z49DŵxSo\2L2?6Af҄l A>7~13 WQ3T Iu9}?;$C%|lpTQAG5 r 3kOUAk'W.nLYț^~3,徎܊߁QEb|G8S1+! pc?U%Ta0ÂNjv7??7\sMb(8L>v-Wv:6/)8* .bBz8M呪Y'qX,h lSOW35DH =ʨvjGR6lNoK !XͥvҼ _ mHor ^i CF%Tph{?f8gfQ'_!$`5c#{u\])%͵1T+N8rvj, 0ArD"=XS `5ZZ[]a[A8ev4iĽ!YF=$[mDs 㦌Ipev|$!ȇRGA֒iT!Ow-Sg<GשrVzň_,ۖZdqI'`ڦ;?t#ofmDbP+@!o@kd+rF<8 Db/m˜p.,bϫEFhQz`ނr7F*<"@Q,pnZW2,L=߫Ey}Xc 2Or &Muxh ,@&L]5lYH:(~eUv!&̹dqfk!09v:LԈ{%.bE?,?i%_oѐ{dWi7샦װud.i$s 2:0$pn*WljC_VfUMT[Su<{:N dA_CXT?I\rCU11IK:+ rd_Zf^ǿ({~)HSap7eTlzG__$M`NlvC^Eg z _L1W6b(0.DRk6v%m(A* I'=yh1*Ͷ򸫞=`[S>x-7dV׳"Ij6!"B.#Wi𫡨Oq j6gCZ|26_/1# W&btHhjVM5^YLVMMrƥ9:6D 0j>X<4-DV{k ?g:hjFH(:>Y-%jhƤj<" ¸d50 o>UB7l>[ –aC"9qN˿{y(J2hA]ʼr"neC+,)/r-.?߮{W_xqWfrd5RC5nIa4𿚩[&)݉mcw:ɜq 2{R1XēêV4$94=7PcɭTg UIp Dx4WCM1P01U 0uf^^i 56~edvzi H+ *Rh)$m탫@G9ϭ2 *[rcZ=϶ ONLr}P1s+SCSlģB6`+ffi.)>VQB!4k kMSWФԍ:-R4 _G=Ǧi75H Nq}XM sU߻Awe[h[Y/bY3RElԑ 1sՏngx5WZgT̻upD- C6g;3.rmNfmR.A}i?mt^fKo~7_B .Bf`>3x5EI7(i8"7͗d2]}Qj?N5`,^MmX.6G#x;y`İkqMT 1ap?PXQa'd(oG@l_(]*^g!?JƮbj\ieDUFa7u\÷ 鋧r(bS/.:u"!)N03e@OwϙMSBOWV.,gHf6[@:$쓽 ZuV"ctʺ󧹖u(Murl#۲R5Dlye,B%1 ` kq>}FME5/7sd3s-6.({J*CfM!¦o&LZ!M#+F|%FZޚ(K/m7 -E#!_WM?A:yi9vI>ϗ5q(Ҝ3&n_w F{V Eirdw.\sEt[~qPS+YG/ixeJB(+:˱h;<1͐a0Zu&o%{X}ڲ5]m\/y8\VZξ oÜxfщ3oi6BxEì@9XO_2IoR][;)A9䧾 ڃoE7UYڿ $)mQ@;^~?3*EVc> 51tGsmMWUb8w;(2:M /8҃Yݖ}[ᙄqq^s:HHw}.eH!7ѺZ$PaaY_BZ`oبK bFC> =5T]"=̟&~w}kMrsaZrԠYG] p?t#\$Б(*>>R4JmqJy($pV9BWwxc} Fp!*M8ev8kvǍxg%G ;Xu9'q"@1jɈKjĈ&Vjlo=GJ8Fk_A_(TOOl^c }P-,(wc}aAMIX+LRoC? կ.߁ q/nD>X% d{g7B.*ޣ^}7&¹J}ϡd$YϹ[Xɼ JAFG,ڷeq2ѓ7PP=0%Mʊҍ̙˔ׁЗ 9^Aq֩"z4ɑ{Du+a5p$jTaѢosfU?RysRg4;6QA wkyoFPU:)udo?^g1St4#w: ɰo{M^Kݤ? V(NOnW^V֜3y!pse܉QoIa3.^NŖ s WckkN"ıY'h 12 u8Fl pAokcM–;pU*s h^izURtؙ81fcU켤R-7 {A/6 6sccק@Z(c0A~PtFA_E1"nKNB"&Aנ%`To'?k}7[ă0Ppὒ:ZoԺe N K7A4ſm9]ȟ|+[]'1) Y"B D9dgs *uTj;(Vj2F ~Fsfťf1'k@$Bp~{(is6ٳ(yS.TghrM8|e|{}?1fN洯;חxxQhl ~كTN:񙅎@*lN#+aWX5Sz:n\h_] a>E.>)B0U;х/@mj-duad;CvM89cXV5d>Ƥkr/Rf=*lpd-ʹ9+2FE> ;Z_܀L ] uk=O=U0hx>@n*!(C!W6?E%CDFǸPr4ryrJ|沃SHw9"-@ ()A1I/5}-mmuQt+S'x4q=%ބҏlE~VFphr'&T:$zrl8)t# u嗊&,`;Z;$PIo!ɀK0 KӜ6+rA ɈɖbEg~`,Uwđ~.0:w=jvtQT'>J,Ee'Mu*N ScP= aiB>}xx])ˠK4-q鷜+$AjՠqV 'm.+ʿE1k>XqB]ptx/SZ,(sb܎:Z|txĚ6Zy_E 7}ܕY;[uB'3)88RnE):F—8[®NFCLFQD7n؝%k|+ { eb3K_xT"9h&.yH i0;zh(Z[ؑ?q&cĤ.}@# UEO }Qц' ,W+ʷ3ZD~6=tŸ'ć1 g X";p-:Uiy= YR{;= {zH$d@XQ'TʂD享l[Xjݻa~l2Բ7/s!LٙpAriWqu"[y۝P4Ɔy#H# tyA&z_"Ԣ4GŶ9X&ڿ4W˸ܼ[[`v6ӮARp㐸7d9v@bш}* |޳~>qcNe4KsHwjX;+i6ی'Ԧo² Eٟz s@j^'.J:h*X9P\>U*mYsYHYZ䉔 J=3c&>!Īm-pf}%8Lh4u9h?KX`յ+YW )cꆃA0gZLu PLs_ٛq`n.[WHf/Wqb{/1y?Mic U1srVZp! s~ :LS`cy5}n1?!uŒ3'-6{7t6 ܳ.,a 3ax{$Vڿo'bzFdX D{Rcd[3=wP۷%m~5Bn?) @ms&RYͶfQef_g3 -B).B1N V#וӍژy6 &ev<vj*AHj}`ɘ=\@z8t 7q{ʃH gb^Ž; 7̶@3۪D[QŮ7{zejG24QC>ՁՌQ{@mK|AD\w4p&yI ~62!+:wfZZXV-m-z|2WefYq(Õu Rm,!A= o^ DXWZ0'QМW(ںxaLyyff;(^4l)Ġ'UpcWnko|[77t2>$NG0 , ^8rNэ1Wء)YݶcT mwLh-Bۋ#P緀J XxI BX齮.kmT1[ERxC0N?Oҗ:Of q .x֓6(-XBc߭ oWt#B6Ԇv5Poq+\XuPq<]GxCb{0hICVRv:&1-4Yqɤ/4l2eR$laDmzGg9Iɟeb>99~]TK{/aY pnwQKY9ݼ܀WNO{t&sJE,/̂:僡wYbr"$7Z{>8M|in7+Bq8UgRLBx g.a`<}Yߨ|wa&V@SJd^hI.2ʒ$,meZ{ơc`!KBo~nXK˻ww4*(3w%O"w8}zsp,qv#\S$㚚.!DLC\Cd{z׋\Mhn>wqNr]<5y}g8YzcI~Mv'\/4LcLrocn`jFyAdy)MҊ9ڶS$H\Tȿ%dd7m3|pu hc*V0<ICV |o*ocosM:C> vFgl?hMX#_[hjh|UT Mt(Li//h/kWpoyd+SRj;<qTG nƚPA]Ϲ~[<H~ԅ<.[6vs()q Eτw%T$DrR5>y:hSKCaǚ.Uݵ "T~IaQjS%- @70jtdY!1,{rUz{eh4`S"CJC4}Y<̌U]4LTJUFse+Fr =Q&%&_;wƽZԹ2UN෵*%bPÌ Ͷ3ބPэl9s=. T2jB<P[sfJBê9'Le,Nj\= !~%*'zD0I0t&!Ô*Py6ODjɦQ݂6}ݬ`Ώ-YAr[Q ,7Zf{>C ƈ: D7{qrK -7 I sɾ!D>) FkLe =UqU|;xzvA\.viKPc2~žmohisBHG20ғ].qBG?a?=G?F%'xܐݟLFׅk* w_jqj|gfJ|GCkUf L.%om;=Eh9V"_sC6ǔ;P++`|;?ĵ=\.^8%~h_[)zNH{b\Iգ$Qw~ȅ:_>K`es91gNVuSqպ5C_A$A+,CP~ FyI?]QuibyVxmj J7%}ZuG(~.Hs(3؛QkAj=۪n0<<8R1H 2EgN#g+qE7Q0ƈYnaz4,wp|mԻ0Xpa.q:^.e66L7}T|=R=[iwH-PH2 M]^r/2K30 H~W*R1Z7cVvaoNE %xA/U{5xUL:6[}Y# FCeƒ{:k?BFf.#NgجD]wс8pǥ"uWUٌ0`_: [|QJ&U«luXc[U?Ua܉@Ҙk i>%W7o:,*v2Tii~3Vm V9d54H.bF>YH_ޣ~}x~V"F32Z)9V*KRb48jL酘.Э/Y vze}(ݤ׍*&\De@V` ^G_ݔW-n4 +APҝutQo+P~%jJҳ{0E9+ KPW^LMu6C'#T 1o3i~R=G#Pbk=Akh}cWØ2]pTע\'ӮCJSk) T X4q|KXiq1cb! |`tHҰ{ܿifs(jLusE}vm+nY͂vw6y9.ހ)#L@3zJ.sl-z+XD6p.c@메!)^0_V[A7O3ZfwjDŽeÓv[H13*Pk/ {@TK L{ʔ([[ 0rt_M&??g^NmT}*=,?li^VKD,d9#]vFTIUJ L ./G?J5蘛 QL]l:F"S_-G;GT/5%ȗjfLÀ~)!TyL*?|PDF&T۽ݸrg cEv%iC uk2 ]Z %*Yzѥ-ŗ)j6 $ouu~ kѾ#V;=c,6j)ADEokd:@2J? 3)rZcAͿ:~ݑxeXvnc4It8 PbkM"n'ykV 8v{>Prg0+CIuW|c绖)wI &J¥LziqEgyOm$A8beN;>_Cwg"MayrqhukaPs7ճnTfa<ܙu~5Nb:L;wUUs\#A͕_q[W< MWbyOd=.T6I RoN|^,FKa'/lsW8ƑNJ_L)>4Kx9r}\9{Z `ר~vW*7,YJiD4H0e&Q%r;^&;BY5%+}DU&/),O''S PV@mT(WNnj: rlcCWsJqk<:6JfV̚?z C܀Ur,;iB;rnOU'u_rjp-Iv%(1uM5\K9iL+LQXqȿl-bdJߘGN_V?g9WdqDd'GO~Bo^K3n' 8.p`i"p=CpSi8wZ?aYVUK]kE9ږ'}L@/9|P\<*YlBndե_oLw6'Zbr ΁q'*jWq4$\n_OOm"?cbt&H 0Y}ۍv *)SjEHJ`Il^ -J6\c7Gy0XT_a*Xsbz$c0xdkLhe~3Э mqtX޼kq6 j|U0g9w?ogeғo$$[` Ä7`hNyjlsNQX YljpJ :߾$2aFߺLX.1U *N6J"|^KywX("N%i_W0];tjA4o Db_6a<_x~k].gaIgxoFK4p}» } #O]Gr'wM2Q0ΰW[*BmWZ%;{/gZ˓8xЎ]ߢ;’ =hkD[hQqƤom+!5qjMu ws½Z 8 WkvvMZH(&y4f7JzupH5 I!6J rB)/K7uHs/"`!YWv8)&}% g}1Z,>֨5Ua1z?W^Zd (HivCzG}|_z\AdWc3ts 7,vVAYpaÝ=vK!X? ݭ9Bޥݝ#Mq~Ky ׹Iñ.&mPu{?EwgPF)m#Fl^Ne/3vdU2^v+٤!p Qxŭ ˥Yuc+&*ndt}>X:ϼt<(J""|0$R vc納cDuV:,ul.I|N +䌛d#$+5Cfgz82ڡFy١MJM@q"Gso9?{h(>}a V2 l4(2DFNF.v>Yn͌.lڂubH|*h;*G~dt+<>O*29 op۠'H 0#C VxIus'aYҪ{oӻR E.,t7Q&X1|PM=w}÷KvY~!LpҜȨ1=WbE_›TQ(  oUmqqA^i.pf rc4܆-Ϳ(sw ;Ip|KXhc{_ [uK e[YӿTZ_]ҡ8r;a 6UwF{FixbҍT,Q%ힵ`8O]Ֆ=<s3u7hdz+|O4}Ka嫒0h OC{zV;O5kTT7JhlZ0Q/cx|) tmk(AHD 7"GHo8/nZUg@\q Z6:#n rC>0 )*\k"+z"fdE:?JSJ2jE'qz/WolK@OW0`ZXw8FSž1KzS;$o ֺ)y(ӗzm(]9lOt-ܪi] wR#=kEmjaIQTI]sǀnH_Hz*;n0Kޫw@>x #n%>:^DcXgGN=ds{ cd䣟ܹS%8L,Af> 13X D e{ԗ@e2=wi Hkd< n2_ SS<$t@|n1!6Wvnyq|mն\M^q+ՠZz[|t#0Ek_ l+Z.^u.O<X24ݖJsVt!ltAbD7j0c׫6e3:0Lcs8 ien6\RX3TVÀg,MC↦%AG\OcbU"ۯ!1 󥰩G#v&J" x!K; +\EIU K5kmI@L4|C x ܴDn0`I)Dkx>2[A! il?88l|lpt4Nx8H_3xZ%1p  L\M 8e^[:%_p6\җ4r̮2p3x4v11 `E,Iۼ62q7g^ (zkn]h6xƲ:S]] wO44{*Ѝ{䅙nn,\D&B(&z6'5n.HN3iS$cEc X O>9.;H;߱Wl/a$' Ynϋ) D#ψl[$ƭN&^3< ijY&A hĈb0:aN7-:-W3ir9PYV{ C{n VT&35Ye)t\BQ_HQb>·h.ɳ]ݸxeCy.%}Z5朶,wTh"OV,j gq)q'G.(]u|odk-`8z"5_N ^=/ڢ}>$Bᮔ_P|0+izPo|Sг"r IMlyqn|=WTWb|=-^P]^F'mؖp2jB|~H~鍑"IR3\35dGpשk p ?˒yDW}&}nQ}W‘&w<Ғ|{;~9%_1y<ϕ4j\[z:-2ZA:d[$xzKWXn ~?'p9ct~DDTW4\P.8Y)yMӎXDI2Xtk =<,ŨdhI'vo51$AVqޮpF #9y."%!1D<-$МtC"K:_-^1zC@}u +pomH%Νeml2^;w ]@g`y\.~хf=W^ͻH.Py]J`NN9c<|Lg▾‘8Ng);,HLݤQr\YYOҋ2ƒVb’jk퍉C<}-)ԎNm0MadwZ 3V[wFf!Z!6>F;eJ.6']o4[)8xL\e/~9 =j#nJB qO/i)b0_1ȐZ =lXPac1W7d!z5Z ,Z!Y}vEUU >qyW g̚▙՝c{G=*mpziă̎&P BX;l^(FƔ֧Z67H5iף-2h-j3`C}!+?S%+f@9)uz}Y6~-u7+*@'D^+EF [%ZKI``uQEGg9hM R r԰BӁP(&Zc𬡖tƠ8v|CQ>(2Pu,JdQ0D^¯iZjvW:t ˁ40VߜRsfZIwH&dd/Nf|RdIvaŰ6/xBy&@mN}KIZBO thCo{*u-5Mi&p<\ں59!'3(=u2?$\ws2^13* 4Nyꌣ@` d s>6!7H>b?/C#Ճ() qD=Ht,ْmp=EX)S:E 9z6(ee E2Wxr\um[G5 Ą3y0ސbƉprL(wx)Q#C)}dtFcbiIx̐6El/ 5yr0_O 'o1P)# mu@Uۤ e4ǁ|.X3@nȈahayJ3֡WpKH zt0v}!J'20@Y~mBQhU<aIz*a!_\ RvvJ)jd55R"HU M\AoyY\d5 <Y/m^Gz$ pmWׇ>Hi՗h.c;?I5ֻ'ou)gJ>K1i&H?uۃ=ڠ式 礚Pu OT9d%=Ӵgmos Hk 9/!ϏhO`^l Xϛ ЂYϟ֢PQ!fI1a@%HU _`*nUy |UySUGSKrH dRrSeZZ yõ[ މ&ȰT؝,'pilH-j0R3OF0^E{/cam&꛵BkRdA:Uv.7Tcw4JB^Yŕ7RU_NW4]>z8U蹭%t84^ú@dFΉԥtH]s](0O.>W(e pKg.;JG.Dd4pԿbųOQ R9$hgYC16Dp$c0} w]̥CW' e3Ҍ\F:vj_Bp D^OBvU9BIC^};z#)s?6h>3{bz /f<=2Uڧ}k=TV~6j8FfD?4XO=oBW*'}i7tf|f+PJ-ڎ+m\ӝgP LKJ'&$WfH=" ?)}7=0|ה5nNT  $ SSHJu+2&*7˝$?b+w=?0𢠟[sFNOmFMI?yx Y칺hh e, УϜz%ލi/ؤ$Wt9^砂]?Jy::GM> tmzaGo oN\he H|i`oaF)Rk/m%i) .DSy0]` "_8 x}rxW챈 f}t~A;*3G$fLGUL=یɇVׅǺ@$*Yh 6.X8I EGOC .G'#ic/ &Ў&Zlp\݂azNBxF)֏KGI] =M*E!\<_{$aNA׫]8)@ğ_H!s ?Vs#ƴ.ėWՔ)}S1H x|x5xiAe6J$Cuꭀnb}B~ fs6{E|G,F j+YM}j(% "E0b|ᅟ{_\GNvȺ b~;Mx!%J dZ̋c!{pO2!r3F ڵ_vtv^G-O6 u'H]ar iNV H_i -dNn,@GH.~(qLۈGy ʳ=!g-,&(X4O ~o⚶UήiJW $۶}yxXC՚PcّA{7\]{#DqnM &\6{D=>#Е9[Y&L)8w@zRPN8SەYb3 Eu x mLuv_Wv'1vjZJrbM-cM9Bi4XP_p$9ю[UQ=Oc{< ˀN-6}˯!_Q,WBV«7/l`ib+nMZwֽ,z XEY*?JEPR:<kfhEMIM]Ǹ~%jG*ܳ;Rf~//a49hѰ>W7. W9E}bz&ۄ܀D YƁ ox)UR2pD9\;8Q# ۽6Ys=mpm-O ٤yװQoPJN&aڼڃ`5]c#a9@5;#ÖdF@UنDƖ6z:<^_@|M#+vVU `nAHùt$bL,vzeoR ~z fYtdg Q6hr7=9[HϽ qT0a媃Plm- Ϭe}UZk {):Oߏe"'F(oO3ZcFSPrP LjėE;#]?8(+ZPQaׅrȞSk&1BӉQ=ݣ\hcY0e^Gn41lgQiͭPĽ+$edžC^lmwR^.pט b~8>Tu6^[¹9 ˝ȮK·kWm:T'*OM$ $9+W| !1 8Gr` vلZp2驡 e 渍G>t"lx䜇#?fBnq$N[̶UȥCKTQPJ!*89ÆM\ A6LHox>?)rv-~gt} A!{sb<=h^\,iNQ4F}kWD8iw:wA2֝Q`}$;2̨v-r};da1\ݲoFC ͋kpDUNx[G&hm:}+o=TOG(d,p*.7N&)1C)\3ה#  E&@%[yjyݙeg iCSYZ " 6<&ZEFc[ n.q6,!jk;D+yv`qVu=A1tu ^M\{X~V#(-\(%Rb{zD-5\)hf?S) yUgCvMrkͥ>Kt>v V 4QćMX\FN4URޮ[/C9`A`w}27;-nFWG8]Q꾯ZbY<6yHq?j5ˇIMjJ.pYzS34WóKU$Ĝ#ձ4eBݓ3 hv_$28Yqj( %A`56i+$PkɄW<2'+RaC<ȸX+6Ev[~/^lVǺ)襝P؏ރ6"3qMqcc4r+dL=ZnzeKϵk#/#$?+ueN;@U2PA i;@G"8$mEkr׳A˦7h83brr2^ | aW_%6?JeY@7ΟBܒ\LG7Wi ( 28ƔsRG>=UR$Ii!{5H971Ao X1?XTD;$znt0^k_ζj ֽ<^YGji:,TQ7A'vħ0FŸ !DeNU3R ûNj8w`3Ps)_1N,dԺx~metJ-hߗ@;,zѢ j! !<M@#Zdq rQۦ%=U=lΕ%Bfpڐ6q>UU+*ܝwAt*#-m+59ZŤ*\˅tۺ%q39gj.MQ)M{Ϩ0Yi9^o}Zxyjʯ\G^Z@%$qySg\8Fo1vo1Ikld+bee~ kqvy۴^>wITQG^/ii9R]I{6l%_T#]ɀVW?Ջ j:Հf11a.85-A;F͙@gi }#ѸhAg̅2T߽jƅ 3rGP/(Ȭ@Q9L9frTpǨ3.`I\9$غM-`WMXp#q%9}"Ue<-Yf9Bcކh &{SlMhG{W!a˩/'_lKx4I^A÷Ƶ]ڟK1zSºgvZD(ˁf7xs|dq ;[n8ݨ-.}'<uԮ<~Rm3|S@"0בC|0\ID5{&;]A LV6`Ir%(/{^-ڭ>'(Q1Gnιf!3,GV;a.*j+zI EQtRɨwG(I]'6Қ9;v+s &0?]\Xh0N 9Ry(^\89I<62ANZ_# F[*_pΣD-zH>T 8Oy/\Kt2we $I܃2 n|뿐{6.e_QIڤS2*X8uVyD&ԨɁ\#i9q}!{--:qPwcc~ф鶟RɄPϮI'?K gy3_&egɺHY6k_:(!\D$?`t.;Q)Fs6%ea*gTۘ+h 9[Cmfh13}K#4s ӀC.j5_xBE+!i@t Q,葙#DU$>ٺzm" 4eVΥ ` 3;r(HR_3\*QڶFo'?L5qJJ'd_rm\\~ļkq]4$:DֺZn:S_H$(N_rr%\橇@5TwJ^ZZ&Oo]i.\Kh2tfWRY5Z{_{XmAi}GaDƭ^PC[ky:+"0R^ˣ`+.juzP ^\k}'uwLa)]4iQy X/C#J윩IanEzzҝ|uGgYGsM#Kf$xު&CDihh44L+]OK8+ZPNL:AojǖF>P@y,yUBNUo(RD]"5 +YW*Ia-_uJXG nr9FP!Ʌt B-Gt^U1JĠffٞ%v=QlTU򉰉Wx =/szuo\JŴrN0}3*Fd&U)ynifB.^HX%qTu_95GZYGBrEp͎< 7d)a}H ? ѓ6u[ o-`  sZRܬ-(a"2FDžh{' O^O$7Q*#oNY@?O o:+3 =RK0 4v]S[/{]4;5'X,}(柝ud*euDe}ۄt"$zo6XFdxtB/s3!I,ʚ3?l!Fq|(=lȅxԷ[JQ>}<վAX<'LNT"z-5X1їmȁjS~HޚЦ`~;A(y'׺ѷD*8$ߚ_7P#k^o_Q|E-b5Kee8I\%?Xd~L+8IpYk=CuHU,NT%v0S m_ JE̳$3G.-#`[جJl<ѡNէ+nw=?ܓ3!H "nzNk^9f)aa1lԎZ6# 2hjǑl6LhDUf[z#{De)h%`C+.}Uӥ^ZX_,1ɳr% S׈J]Ua\?x qzc헏6.k I'%rڊ`/Bjy4#ޣ؆[cgg9UxOIB9hۘ|Zh~РDT}~3J*f+ԛRϠEzI ޸OA AXi\/Fݮd#-: &&^t4arƿ&8y AʹV_H[j[nRQ3dE\OEXc/ҝ :s //E AD͌B^C$'ڴ6aK~NdmȬA#| L a gLI$X"]e;p'ґkxU݀C6H s,kT)k"}nK> / >}6yy Ѓz[\~ .v wskϚ@b= lh81=X eb=8Nu7ӹe:QRr,KJQ/d*q|-q&Z(7.$y!⪴=uOꓟx !JSHgA:m~}6鐐-}՛Jɣ~.qB'S_OKvO*9H./]؝wO 'q~r3Enc[Chٱہq먶r@P/%chg,Ov ij|3 `G4]Ng~,"g9 F~ΰeKǓR8.h@; !qUB3^:RY~ÉjD)}=`Wr"aFo }LЋx*=zbZ|ӱ!|˝*̍: {\VFZoc ͺ. ~gN,tb̩'d^(*j;)vL E2H̾ob@s<5`r'ͫ$;2K&!6QQI+uc /hv2x aY>-zU-⫅۾ubn-G49\$׌1m̊(8зEs㿼}gN:|+;Xe^Ziou wz[g'! SM6ߤ-;mK1<USI\$ŭ - , fIq;O"4~d1Da7<<1{ҁH(dR&&pzbFQ;;HAWP *#\:d 4_ hb|_^+г6R`ZR_0n>N;x`l 'z"&}{o67g(NA \Ƣ[ʸ`ivTx<->I:P]v[ )CL}Z [AWZ_|d! XڿDtvMH7H?}n?dȱм$4vSuՏ:;Y&BCUBoNkbk|]AH_2Yy$^S3Qo{1-F{R2Vo;7iP1u,'$8vxh\{ZT6`&Inl%/bo`Ǫ"͢w#LOs5b3~~Mk9)wӃ;Դ3 sU{PDu]%\~D;hL閭9ˑtL8y,'i\LL08ou 3Xˊc^@\Ce9B@}0̾J#A*zŶ×V1j>@tu S3w"M/6*~;a|jE%(V%q4uo?Iig5}; h !5~# m^ F1K.]n #pw3U11/7l+7'g o/ "% ٲ)9zKhBEm-N\|7#~=a3*>02W.vˑ)YS -|lMm*=>#ctU91^{UJ&u;km"2C/sF4RDs0`??E?P@[>ÌFZS~0 6 WC>!ՇMKN;t;(iӝ<;s<8?faB]ϕ&X1x4jPe߫OA)©*1K˫tq]\sNoL]/RքJâ!&ٳM35NߧB$ W>8K}G縟.tEȂD~7/I+~חp0c]VZ(q [(ʤO!% 'ozVXB1OYmAs:5C?e,|@M mH#tp|.5G f`7{RWA{zin*a^V{6oyM|?ۗpmЛԭ{kn}nx$0h}G8ȞQ-:(ݗO$X|ۮ(,?8iH +\7b-"(4 4/:DI% 7%}(bz냿]O@ MOu=z>RC4YxKۗ/ٵď˘ڮDWL>7H#b6)%]F3ZR2h zx*̘\3z9{.6,[p"X+s#)7(ȱQ)gy p̦z+Q7h$XEp؈A[Qx^WSHih{K.$q/K?gIS ^)›J[n1\IVȔثlސ__ jprCV|@vag B2a sG oKm޾oO!-0훠%/[BL)cIr<8X~6h_Hi:L!jk!܂$#ljw!EDTn^əS3T.g(e</Y}*gwb3s=v$XYL@|1Nu& b ,sPIeLHaD,Cc3{-nvN+⍾ÇEð=|g?W`Y],~M%?3i+;LXв^6tlfk&Ӵ\ ˵.9XT4_}a|?\1~tX:Q վQ5T,aˊBj}LGH T嵫/^ʥ\!҇3/5EKV/],Ӌ3 91^lz`_A$u6PSEMo|9iym-KjD"ԋN$7d^9O]YgudҰ?Ǣ^i]O1?9<#hܷ8Ar` i;,2) 604k Ƚp,/;/ :wn RO%׏w\U59ock?{?Lخv<S`q"Xf !7"aQQ6u5&?FVw#CCH %i860IiZP2E,P*ylCQjhK;mdB%R4#CX4U{,aiySs^1d='cVJeJlwƽ-Y'̕*-€dGlE܌laQ5S'c*Mˌ]@ѫ9ދp>KAk8ZAT0GZbvhY摨9>=$@"ys}yrvKaK3̩3AfJ_۪"/|83ȩ iI 7&5Br%TxzҍQ{ XdLgDɛdKz=x4`yduR~wmF9nEyuAT(jn﹍I]&@e5t&+[dOv ZgqHyunhpm>RV͚RY2]NF'`2ಋXA;RA3Ob[7]n"c23o#|$Z'2 Be2NF0K7m}b &{>M~c5ZjLzc0u})-`.Z6UτJCQyо}X k昶gEwd4 7 BۅKY358g"AXYĚ7Qs!VC=-AQ;EEsͻ?2`(SXpʟL-T{Đ0#g;OcEPFW{jXȥ}S,-^(70:pWxjVLhd^;o~]>u uZ5&~i)z. A>SzW< JGOelpm9:ځO'1ȥ ~.%elb5!PT7] B; Lg#7DZE|+ÚJxvw0߬s7J2҈M@“v6WSAȳ_EKxs:{_b7Y<69:" .I1bXoyᣍJ`?JH= W)m) {Y@wZB׼M?ks̀ zK{>qeBjPJ !Z*t<%`v,ӿqȖPh#@dtqh җ/B1v"?AK @ paDl?C-L2PQSƀГ8$+EBbY+auW}rQQʼ.MʋXTYy/8]P:P#_=ijLPo;KY-_‹KRWhj{ބx%}m(PSDL̥@ɴ\o`W=}ZÃPxtlPۃ>#RTӜoP`@> V;^vãX8:ZxuCi(:L\]V/2.^TSr_ܾ-f#(Dj[D/r2iRDROUڒ趥.8I@9>r3-Lú5vAQZp/gXc1j9* |C (Z-ر(58^mGTdQEڢמH /mA&>PN D JWg#eݻ0Ņwj ٭d2G}_,?$2|>jVj~sEt]at&uy4(XmѡI*;t|ϝ<ص3"AVf%-Nԇk^?BDۧe_\plL5|#{2TE<ׯ*ǴVT%oo@zmdEb}ueEcUhZy:?RA`)$&n(# .-yd6D8_;OR]=I噎PT2e5<\pp@x#}lZb^\Smqgc>{Çò`ZwSRKB2ID8t!6pk¨r=q%Aڨ\ ۬&$`oNV[E-}}  U2ճ2cOG!?69&EVJzz0wz(5v*,OKC Wx߂%½ ?5d8im}j&4l: e )FLXԓ[ 0J |d /AYq#u{if4‰ٗŤ{~Zފ~*K[sT]QMfe8Bp5ۛ6~¹f#)Ю]!] $Nvf#v,/Q8Y,hײ$殌a$EXDKdx*-5œ#7]OvA5/KV-rr.swz Vڜ'tWȽ,;俹UcL> ˃-kєȐzk kO S 'tt^~zpatDe7[eQ:-U{@,SH ={r!xo3yCRNz&l`G=my\fɼ6mSpb,AqXD@T/ﳟ` \B-LK8:(XS@İfH|%?#ulU{VG#4mFXxP+|!n[hj9l3KvaMLSC(ZY֑9 xb1i;CReJECqΐRZ"U }{cLx`+a$f(53(qfvN.Nxss[sL¹ .ea:э!mݼAWÊ`xc[ qnE)I˺#60F +.Fe3rm̧2)[h. v{uP&Y 1Fc:1X7钢;m7MEhR̨5/1H:X#@6dzΏwGA-+MҸ# vIZEa>뽋 ')7f2 (YN9A9M $ჰJW1E?v[d1a'ڲ'9Ea@h a&I(Mk%V&0S<7ivȼc3IWI3=`(Y͞$A.J)>ҡDDl?<#W@FBtkp?'8#`'H B(>vD4b}>F~5Td7>ma+oNKR#"'A!o#HO^[/ù;<Sb-R#T=¨X!YfH\NVX:ݖw& l[RvFmpYLav2U[jݙY+WShC;}?EW` T~7= &99wM DK1E+ҩF[yj 1|A<Uos)*I.;;C.]E 'NvC Q䣐:3Y*|,4^qc&|U)D]ܚçLzªJ0[ |(W}.@($?2Pn&sky藬]Bgbܖgy˛تFLɺ(HJ ωܧ)p*D1U_V HZ&kq/bShKA!G\BLFe/Qė{ !R+xeL&{ka͓t'M$ҟ[CI ?n]Zy|QRft5lL] unGMd2u ᵤoc-KΡ!k$`ڎTmJ\I>K"ۂgj̮fo8p?T!וi̩TZ)Yvi*R'83savPu$ JsT׻ -芝ڟ'h=)u^`zU&-܀4/Cv\;l%bE\WJQ ;`LØKv`}PcRtņxUH5t;v\?H 8%w3B2{},kAv*t5̙4HdǣO6(M"c N 콡(lSpHa*H !Ke"u[# E{Qr,3IdBfO2e*y\b8{\(9| IlnΕoI4?]"By}hA -TY̅+2/;ԞG)] 2(y|ضZkc +̘]ZC +} !CZKo]{v2*Km`Iu,Z_BrJ n) NC d a0dAr9ز.zjHX?Q ſ*-{Tyu5=vn!Y|I7D.UuG39uIdu5.`H9јcGn2 CH/HuMOX{EuVqv# /}i$WDCpa>Osa܁p ֻA*rLV  7 H8QV /-c22U7j0 ܅ t緸G1)u )]0iv3մE'pO0EPIf{ of2#&{ Z&6n&-5iĵ#"39NP)MF^Q63̩Q܋ӔfR +/4缆ܟ 0 NZ fY VgX{L}X!TIl(<qN\*ڬ͠,ʕ.}/6MDq').6We5,Cj~sA~PS7w A_wEOf$r$t_N^T,m\𜕮<&'ݠ0c[$ ;UTAE&"e6:7>VT@nGV>`oNx(+$i! Zύɖzy kPjrZ;2Id& c~AD"^Vg?k+oNHLşʛ!m%Qbc˒W.~k' V%V,|͙KI/J5@;'z)m0nQ_U~ =lZfN˨o&Kt`Ln˹Қz` 2*Xhv6(1ȥy_*̍*6 qȆA,ViWìW r&JJQd~,?'f^M ߎzi.y S'D5d;Èڨ6f^)a;֖O(QoU=$u&$cealJu]X# Xٯ >G0Qʹ6kϿ.zŨVk9[Ԇٹ$N/Rajl/fiCmg8q4Nr+Zeo.psS @'9ǎ3@ XC5~]pZc.#OZl=6pH,h)nO_0'DDHZYB%db#164Q,>5Ӑ@9cBzZh `d2rNIT5.ih14oM~L܅ A޽PmiG\w5dSp,XI$ASE|y/xͳMx[k)jrUZL .X. ӻ΀dhUMQt&b 2)`cU/E_WDxؿB;$(kGLqjb)}Cj!}yZC7 c3Us,V.+:V zUVj`tKyɎF1YŶ-a:2Rĥ^;&b|IU г:.죻| n!Bֆe uGW ljC:ϛϪ6Kg9_U%)g UZ^x!_9개aqT 8ܼ g"Z. }ncƒf&V Lj}Ol07)+I&:N'RI%QG1ES<ݣyrVngO#@stN *%|vnRsр{# :龦1X uxO0[s9q$+!)Qz+)VY ~rx:}Mvi8 R屭K?% [6`tVtr Q@-ɗ[; 'r'qRKluY@iawRԤ(jTzI32T>9:/oqZة i#xo& 7 %񤇮qj7;&iқofK1Jn4@QweYp5pvAJxZ,EnB1CS> Bm sjY:jS'q[\aDIvZƑ鶿Y^qcoj\E Bո"UwLq@M^nt4 EpCY) ?dIs `,$XlLկ2d`:4e0;ZqBԫ\b|~V#O]%3Vu߀`"00tbYap 둞~{aG:˸]8d{AfWC|V ^(Qrn fu )^83ƻw<RvkhT4?+p R b >v&:ׁ*ɜ 7 0]KeBd&B;'M;Bl[0!8bCg;YU^Wٶ.˫߰,BX4;ݻ$Ҵ#4D+cO?!l Փ`TE- HI\:@0mr< =Ua,St>"X8G|Fq<ʴ|3Ⱥ`]V`ymk-ڳh^»̇0FreB^O'S%ENS[~B1ixjꋔ}Qɢ&d ɁmQt̜\9+_ks}'` /¶%z;ԷϼǛeT⮡cQJv"7#A`Yx) xez&9㤿ruD(G)Ƅkqfè]9"pB)QuE^Ύ˲=cejkx_olA`<4a4ΫYm0l;+Э<$)7;ؠX$ n)ql怮 mѝ4 8łI׺C4%9 Ϲb@MP=wVsAKeVa3d6_dQfM>VOhĖ 79 O^z=C,/G1S +|y{hBG:'zh;"o84{X&xijP8R}YiJ3^B;TY~" OqSh|YCWrRLXX#/yFZbh˟AuhI=buTN0j WY"B,Pάg*TrtYs,JB(pNM13wCcVՎr ֖!Ro Ni$2J5ǍXfL\b.qH/15$X)-衸_se#f!]F [ֹN6`$ajyt͊aA:uֺ?oKg0=CH40t|mRA uן訲 }M_X\MI>VoV˹|tV}<~ *A ɺlj:xT%Zj=T_OpyvιTXIȇ6!u3/=@s|un1h,50@Y]VK!7\z<Ԏ.=uD>P(.YM6dJиKlkwְ bWk l6"0Q2r%V.%@>95Rbζ;Ӹ:*Y[eA$-H޻P3tN?xtNu:VlCv?!PrB\_=vw^4 +pI &1ke%3MBD,|`Y00}x8rܲ ]1%$(]yH+$Br?h8m?\VV8e.5cucɫ_T^d^nf q gCp8@'UmT1#9+jӔ PF@}-_"X"gFVM<2ƙ, d1$r/ү;@TW"Al (r8BgwSь$rRb.IϚ4W )捩E/Gc9i\a/qJ$,0U.&'p,n#|Z30Ӛ77Ƕsz-%h#/~3(zqr4L] )w=iYAJoU@U ՝ {ʨ-QZ jnMT3V"lߖDx$/ݴ[o@ KV&6IWuu,yl0c6ӥ^F@fNc;j@ 82'l@s]ޫ_v K1'ԻY$ol=5Ԓ?ч8n\\UX%e%l)7T*lp\4 !݋I.&PRa50Z"m{>Bk`a "e:Ky~q49S)c?M/ ){MmbTD] & HB]ެY1U_$łK:DfuA%gxMEE3 rg+0~Jlk̾4;;ƗnҴ>\ $HUgjx\U4 >E~AN)|N9+{eU"S*sݵ==,زS1)\Keb0&Q#fuI%W&Y \E6̋R\tJnH*bAȔ-$ٰd$bJBCR'F]3ktP% 8dh\Y&~ Qu\]ο;H7yl"CЛ+n%IH VY2ᲐUO$٤i'R?-2<|6S`E,%;VTٱ!Ro<av:;|$mJ7rj@X3ΚAV ^*s˙]cdזU ~EHt8rm9B{j"x5 `a-u.j:,S^D3_ OtW4-%WkꃠjvMZ8kSC;uyE-1w١"8Md9@T2uˢ㲊-Oo>B vV^hQ,[ߙƶ K1ffqX3HW0Lji:)Q|T:˝'d(JV7-3;1תw/| 5oζC= r K_Ђ^I(GRa@.?2@[$d1x_pb "*2as=߅(򨪟rߗU\\`gfҽFػY RxUoDrP[<4IA2Ndi__^G_ge򛳴"`{rH|J\}.!)E=t]r)m~oޕ0fS)nPlֿo+Z\'-E|vB"ƗgFO?_pN#BQR>s |-6o9%%uXh/ple &T EMäPMbuY蕓 ]= 0+WGGΨI9' ?\ݳ<l#$~Iɤlγ(iCjULLωfJpͨc"&Wm~!Z mlk='g{XQ0.&aߧXbWф=˪4NbBeZ{ 2%b|Yhb,Sw=hZ^Z|#fLnۥNcٰ/Dh6p٢T $?a|M'vs&-I>_յĊDP"6bk.ri^NҗjV,5QcFo{A!9iZuʂ!p=c޵x((Ex!(Χ(Qjyq#JR3&%^;,ɬ](#gv#ִ1ֿE$cЩǙPy/6  ,6܅#$!V!wmC,>,0n"P(Ё+>KP)V4yY-A04x7ڱIzP3_(27RUڱVGYA"1քB4SeKL$tnZ6͸~ڥ(fLUazw9UI>0d'e] mE - $[2ן|өm;d ֶGv7:nQs; t[m6TVi ZR7%Y+yiE*>@t"}% >>b¤3跑qk_: p/ژvq@v 6M\|LH^' "wUW:-Lfan}OAmDŽEyI,ސN.6^kS.s; Ysqw3qҒJp5uczo,O&J.,gmn4ftǖ(w u`U#c'cv O~;V扄ބ^/ 34)AɝBVp== s{xXʈxXG?`dr):B4~16Kp=VIqnt#[:,|FyM6Z/!iͻ`Z6S4/#b^i (h촽k{|z(\6}W&Y9jz4'׌%o'1o$@"1x`?*/;Q=;!wm}"B'G/]VЀl t"ɷ.BuWb&R}Ëќ,nپ\X&L}3N([owJq~jUTkU^ʪ YV4}D̋i|!I%8;q1\\u!XypbAX"`M,ND>LqY_ }()(U•a+l7ƭ5ru4~Ϳs]ai}$MM]bj}4mh(Y8j^Jc8 +sYybȵXoPVg'\KR4G TI7/aX8ŗ\A)6/׃Hv5ka]CuU^ap r[/WE~#B\ 4he"ֳI[jd ZXB-EQ_RrW鮋 u]_2/I*4ƁA_۟H_x[}4Om'ej`$HZ3"eo78E2U%k͓c%Kv~O!ʘ ɅO[JR'=_HbDԩru`4%o}!@Fe ӽ*naNe@C?[W%zdL2 xS#E CT19ReLPRh崯udMɃ&kqr,#3n2$Mo,r: ؛>ʕƇLFV.(uL/6ѩ0+$!MYC͍FwhLXg?B2|1(a" جwL~e!j#{XzkA*v%ƄTX侔]"MyY*u1DlVa )6{hhc!K:6K !Y理։>12 /O ϱ8@di3Dr#d'暅jpou Iq|V>gF}CZ EXDX*WΪ:LQ2I:bU:;yˠ^sL) {2]z|ĻɻUYi~C^EL cX3J`,$+|NV~4<_-6&Y}vV_M(qȽ* `Kp3m-UZ~0C;tm6vщBZWT^35uY7B(&kCH 0U.81;dcAzrxxz܌!.(E7QLohTk yNC]WZpc* (Ƿ*w) T43CX`¬PJr>6Y\l>0:\2G>/y%Gʰe5UZD^1~&8}aR Uc7~EZmyiu ܂|qai;7;4.Uk(+Ht2h>*M| TH&&UZ ={€ZmI] F"o91=^B3~<8oDsR5#ZҀ!WZxv#L%a ĩdzF" CXh" !>D{Io~!WφA'5ObՉ`qr'aPI'8v)^#1")5:`R PP.<2cnBEq^TW2#oA*/}1*.YYIj@E/WXRd?~Ǩ0;/⺪N{K lg}g h">γʖ%ԡ,!-NjDr$0j̝)~T7StŸdhqr:,tylAp2:tw%(Fl[5/L>w4]wD~0E5$CE#⳨sa CdWXPC΍ܮ~%R|œR8TxUb&_1FBh3qKq)^8B0~8ppE7/mJR_1 |I2* K\yrcYvDSIy=}v[NIq b6EeX iI CZ{29O%vw6_zF^[|QKrZ"_n%W.+<}Y6m '}|U5e*a7{ Oo:T)nD?WKx+s~k;P#ߡ p9Nv{t17镅WާMŊ&[Y+ N`*Uǻe[e{2<8f i05RwlϪ?Y0(ifRp7^7bT0pH8 ӒD? ^O'j=x)Z~c;P*"(3srvs|aS r * eQ"A:~N[ipu5İT7hf}d4C>+]sNi'@mKs#`H_}ha=Qly6>L6AH !H0iA i.JDؓ 9άktvuh9R$Q -f$L';0o4q=  \zWy2:A]1lǘGy<6LS16ξ5$hgeaHQ Wz5avC!aGfJti=<C T֑c D̔.:݂}֓eN< ۨ t.N`T<]1@Lwy'8qP}"^…]UuLf0 3OY2Vz+4+\$nY` S!A~yuaˏΰehqĶjwyJǦjkvIz*b'G{.9hS[ @ ׺e9#Bdyr/2I m4.Op{~G6ңʴ@|5PT}<BW 51+κ25)#Itk! |!?멾SX6iԻu}'y ^٢ᒸ:0 Iұhda Lp9-<4/X u?\Z#.di{,.RH4#Ŵ.Y/qDxA[;o.m 5nkJ=`pح&O<yr^OS#@RJwsf4k"E/$u:.Z Z)co?.N)l6j iM1 z Ov(3;{Kj' g,To{ֈC25FJ|&k2q=D=5Jm8öy{Wa.j"t6%$t6f0_HGMM7µh#kJ <oڮ܍} F2>oj*ۼ3zmd/ ļc3#< *x^=q+Gf1ƣ(f' m^aAi  >9(%[#?+83I?1%:,@nLJyFèד*_khW$j1 &b@vdUFy~C=ËRasYuLx2BF)>3uϞS`{֨L!yxڶ8A1آD+QY "kI%Yb4]9l4YGf+NpV̕ýż,С_;K"8n9:b C!`i8cp>I*TaA`eݝi2vDYO<ѣq(}!̛HDdOR[EsՊ-v/ [W Jvr= 1'-p0|3B95 ?ݲx߲r` {NE'WWH-O&,/U[{m@usD5nɟu]JFf./֋cԖ]dćq-x$0~|PԺ,gQDuo \("hdzqs`[cÝsT~ї J u *Ԁ yhy:Q4wQNעt3v, Y1*>`CE6SCUسƅKSEy{߸,Vq "n0mWP,jQmH<ΣwG* mA䙐ю^2j4yR_EÁ7ob2фB h snĹ ,s͘SY4SM68|O=t4xиS:ա F.wۆY)dzww GIPyd'T+Yٹ.dk v?zs'Qc»4\(tzlDchO}W8oFm2GQt8=>ڭջN;Rm0ۥS=wܔc"Xl-LcИ%+}%a`f_X)_'C@A{V˝@MQ+]tR9Hiz1Y;wfuۄǑ Q \] `Z,.Lvu?2e@"Pq^:M`aF QO}a<ȓÊJ#,R &?Y]{`, ށSsZ1JG<ǻe83U/3AE;]&U4dTiy0"7#\f{QKveRQ)aOK 2[ Sd%g7s6V[ſ3-dO5"YȉP}w<u!x@ѳmSea2džꊈH!#$òњ_SOT *Zl Ǭh_$n9c_6}Lue0\S:-{t~ܦFG1~(|oV+/HכJwBՒ5G>$oQBogo %}]=RN ǯ2ʖ9Ŭ4#Z>n璘Xkؓƌt=UXAyZssb , tZARn;O6, Bm.K@ _)_sW[G%l(FGPă03h!LҼ;,Y#N=7yY6gS@l>]0:grUٞ%Lm@zަDeY=.nt M'.t =g9m8A ХZUHњyD-rVCk!7q+t̹n<VTVQU{k'3(]P^yEvkpx:Kbɗ6⦆rݹt,nǼAjji妮~ O6cd#ї;azݖu4r7>F9*-صmΎʞx^@rIy˕@[%e8 +4r+uƨ#MMP3u(]`+J!MlWI/##@7 y\ґ JV61r˷j;!"5' $d5 jpm8 ʦ ==AZS8D#wZt,L[D wC)O -Էt\e1~ǑeC`o &j:uCm 7YOT;5эM::<9i+܈Y?ˊ5< |+{ <|rK߹aq&^]XF<8p 5Y;1gxsu|C9ѺPHpKn $̹B.x&Uvw\(y2tB)̬s/>Ѧݩ7^-RfȆ`Eva0OawiI߇k`b & |&Ϣ9 0t?'$Jꌘ}ٸ@ð?jXv$(9>[D!ȫoܙ՗15m{ՒWdM\)ӣ#d4DB/ʦfCv,AC0 /l ]r$ 2Lpq˷/kv{[GF1MDbbdmKf2=;?*ج!+2L9UoӓΊX"~6UE/#61^[Ay3wR\,6Gpd1!W XP~qgux:<‘MCf*5;]G)0"χ]_Aq3F>d;W񼼙sO~M=(Gi/Ź{:8u¤qYD%C-Y`sOTDZ"&}`d` U\]>?`G7-\zxaVP'(6m-*:Q:€6Ck73 *BotS Z-J[,gR[1![q 밡^ṋLQrpvouXs,`r#9FrNњ|~Un./_,O<q:m )~Z .k8ʫf4ULy<#8ixit(< }>ay]6己og j㋃ihFDf)GVVa̺b|G9 \kTUlX렋C֬+":/=~Ȉ-*N9w@+ l(I;E EQj}mtZi|_N-i9"_sê )+oq2SHˎ:O%̷qGd!w[ݵҕT8]k{WE"Mw :,Е>4zz܍yS@ քkwaS=M"OW(7l`4a<ߟW.em `\HV7EFУ!oIEz57GU1EZA KD2g>{9_$Tې^.}>`.t?"|bdՋÝ&\w+, WX_ttVL!2BWk] .WoT|-YmHCƌ ,NTZUVacBl;OMgغP&8q,)t "d)BUL;U#Q5UX^F6\Vcfoּt3ҪyADLѢ^j`}Iѕi GB]_.BET&9L5ԭA/pmZ3#ZKCC4( -1I$ C3Kx*]? 6yUM{{*j߷ɢ™:R۪gOhaO< ~ G["ݢZkQj~` JB@>I0M L\<-BעPtUFjEx4c4QFLy3+ vRx(R_x_yWz={V秿gdNEt6K8檨F#B?a`vO3V6~ 吃<͕c,R1i믊P?o=½l*z F/arv'g "*`ڔ)? Fywjڏcx8rsͦG~;0*:v_Rޣ/H5mFI~P\(zx󒃚bodٿB}TC kq_8uТ,bLW֏\¨;\Vƃ))m!2nulq7{wʴ;p%DqAzВ܆le'N:v1wѤA5GIR|^mi[gUcB)Dn6â*FR?BC23|قkǎҪCTRπksNaD2!%6-)7m"*_&MuN2mRWnt\5t6dwHUќW g6P!vq}Ku(Hd5fڻH\ &+$K-Fw]LU>k?ќ}nqdF1'Xn!iF9Fbś2如A;.z 5\՛uI#!w/pIczoTW\1S6%xm;jvpZV;y/I`])!sQ$*DS-u+h/ .g}d;jHIǿ:b\0[6s-+xgW@#gˌꢝ&LqmBJgbV\YՁQo\ 3Ui!Hك鞎{ݏ 0b"jkk:Yjgg-'EIZЂ8j/!g80a Uu0j#S'h}6㧌M ^ ;+"QaӘ(ub@PBn ') 4qRriɱmt4=ddS WӮCړ3pXa˛JBp EL (Z}ܐ$uDP~n9Ei; -V Xw:%)j)+<6>d(*QFg#L4KfZS|s]/P<H .jil:N+aߛO(捜;[!A:^l@ >ϐ1!\4#F }8Կog֜kqomOۅ~,RKh49b i0NoU$"VĴ08 a|Km#Y;O5q]bl!/žVƖ^]ˊh UرuЗ{c jOXw1=DƂse,yEp RԋVֆ ` =(n]j[65nP> @P O.nEl|'I9:ߠ|R@'ya 2!/%U],/L_ !9SwUkjEL WDzA['/&s4\p6F'-,!U@U`gY(IR֬w<*_MׇU~ōOH4h;ʅٛX˩CF ʯ֖5:hvq)٤--8ҙ&%[1H#oubF%0~Z)1,+=b67DZY,0͵Q܈-C7\s3R̶ed b$B6`=^/B3I~!-'KXAR?KPy0w_7>lkk[ b=Y?ywVwu*6專A"VnB6qFguz !U{F{+wtvϐ+^ _M ZG-愌ue/!l[kr`+մ 4?m'e< p\~ܦ.u|#Ѽ2dҬX`D89F7 j jKbϐ0gv$ EcV>a KRC,k vV"i;Хi^[ӷ, eBQs#n-=i+7Vӕ/uK9Ւ Mxm*r+-@Z,7 DUiz{@>YTSYs yC0pǞ{S9PH:RWD`Hi,ZŒ$vޱ okזxA"ɡ .gG*m{pFٞk} UZ2he5 5RN+J/y 6pbdvkTMLܷ9ϾιC0!rߤ+[ܸuS,|U~+,\R<*o,U8En=?(6mE͗tZCĸrzyc kym|l eb"Y$?N Ŧ)1?d/>/nF)v'Q'Њ|v* gڣ7`xhv'=lHb3s# 1C)cLld!{|>_}y힆m6ۑĶ<":^L/r-V%B|yE'sF%Z/yg|PNgH|~ lnq{28eXvCW+W Ͱ#mn"7}=zP< SRG\+4K<_,-W+±#Wau 8x1ٖyfB`a%4̔F3 Hrj z6WkePidZ^y'}D6ϲi\"ş&y;)IQXvKa q=McSJ So9صCsxX C__6[38E:z$]H w߼!Sj]GP_T+ 8&By\ m#ٓmf[+$$;Pe̗S7T~ɒH+YuSQ$hICc3絿T57H|gppW w{S}b8ugA HW`,+ΘUɷմ!w'hRyase|2 vZO7[Ƽ:Q{*3j0 W5]}4fݮx[Z)S\+ONߟ#Bx޿Y>q=֑6Sz_}aĴK4t3UPu}z̞&ఔd0;c]fQ21~wV0h˵hwݿ>2^* 0b&^*ahċ67$@!rsר[{ޅ`hH"c7oQqX~kkWKP^D)ʗU԰!7&@e!' LFo+h&)حW8SA.V /8W,q Q͸v&K6 O8"O)Afv\ZȾ/۾M)PI3 ~1 =-]2V^]'#zup% v6qc֘ߜf?OX74{rYl6Y-Csh3= 9W DLء- nT?yN#ASLzi C=@& *,U۸FDrS1KrFkQCGа~zI`!h.Q35aanxTy.H|MA0:ơd b~wSݹ{1!$W䏿ݘN2:=_.lX.o5oh$pm4ԫeiS2]҄O0˘wNi*ȝ wYpyϣ/t븛:#k @哔1J{s<4^&.rE| "L 43>F?j2uA˚935`|dzᕍȠ$ =Э=>G6UPR+xgT.Hf CI0Edw݆A1is?Z ;t0¡ D%60&!KFwnJ(hY㸐,'=j럐ES|wV|@^׶! h/gHY +- !GLlMSy37f}u½r-T ,Zkkc]ഐ49Q> ?{RHC1PꭈFv4p :,yi}LeybtzKg*4^4m ldzYKƵc;;ٸId=ŐC;A8w0HC0[BnqLkf<ĭ` X+ NB$RPVE(?M&c7}Xx/5&%= RUNs |qvJy ^j)EG^V`؎ݞW+2 껛@&!H-F{33D٩{`K6V!3wr`/\-uB'7+guь4֥T Bmn07zߟ2"C[Lρ1K)t v0THH)_-jRǶ,,xǍƓӿ5lLĶp< 8n7_'9&1 @j7@>=G|yiW\DVy =4y;x[$ꙥsxآʋyH"=A؊3 NjQiVEXe̕U){z3;i.ԥ IÚ1L.˩gų.mO7C9q\lNr_j$,K i؃1iymiZFVe9Ro5G$KF6TLv1b4`*)խUކ_!*V6FCi(\v4# O `]'*dC4U xhj̞HeƵI"N[?`+ -IlӉƆĔYV[|KR -6`o=ʖC&@Hz՝;Nj }v棊i{kQ P * N+pu, Kjh6:m&RnV})Zn d6DNE`+vy1f\(8a k 6 XG?GV;2auqZਖ6@%/?( ?`"hV Ar,Ϟ@9+9cկD7DCbh,҃@Ȥ`Gal#! [z4fF;! :pe"aJ>T 9v2Iu嘰~Ӵn&!O3yprtY!R 1uxXI2@#ti0Bq\ٵ/x~)фߜy- A,+f%ad=֦h/yۘvyjKޱGǬ~ kluL/W;gpӍpZ4s +M[@:n iCH"*l sV:ۣBJlW8) ={`=*bF!@3 {3r0DBfjA~$)T:?jVIW{ :˂X#xU$:|]PY3!cń~;ԋ3տpDh;[O4(TXZ* ]3̒64aP* «l4gVڭ~阠e&> 6jDbgeqH@seob1HQi o/P&6'b6.@X [J: mpA*| P Mǰq'^.H%uR@ea^Mt2[e5Nǃfۢr^*r5oCؒۆ=6r:h6Vx%M e_"*JJqD,+(+D"淗C9G[0| [5Y;yYR*TAI F+]AB}n9Ԁ㝅oFfgd$la&[*ҹ!WYfURFC$rx^~8DP \~ښ,oYNu6<ɊR@|j"!O!z9By4UZIpfQt[x,=TEP&*"`/*]Ӳܻd ]TWBN@a<_*НAhȰΥ sF'}K&@esj!mpo ]OSpdu{B c#sM,"8W%@\,c> p,ȆI_FWw%Nr9 сZ !3UunUM@gE{}Diؕ/Xl7mb7m?2fTaK(tM!e[iRsM q!5\ Gɼ&RҔH ؊W1z aW=rll@` KV#Hs̥ؼCk 1̐RtZEжxp1VC^z ejn))CGA _sMe;`(/:˟"~m/}:Ъ:"dgVqy~:yRTi$_Mw2`od_~޴Kޠ7dMܯ !L5v%%X"Ѿܦ ML*K+c D]3lLԣh}j]>BN^\ᩝv,<"vT؎v`yWhE<0oZ.nXlcJ+hUƴoFPC(lg:539-YկoyA ZcLˆ*o˯},,-| x=@IZs[9}ʼn;%r45#C6Up(/+>Lӈ)y߲lN!Lz2SEwf`6UrhY^a7T) ~f`MIMdk.] ^@iТQ̍#qW7ܡ k!B!-6{&reWd SlBOU NvʼPpP߾&bEy>W;oFNĀ? E>hN{[\#kǼ58lq:ՏlDcliZxO[adtXhLMՉ22:W%=F'%}ɪ cń aǩ>?>V?Kլ}T!F%* jƘR*+ccJ%wN,+53F@!)նHey7aH ey2s?rX aXC(λu4>Z3-E7 u7b l 7o0[,omk^FzifLy !ߞTwW}m!c%8{wyG3]e\sb&&Gl +O Y ocp Sت<|Xן}- !I5XGBH.gVv6y]ɕASEu)L`jp=%]l|%8ybV^+Xc$WC "W!C ڌ7ڕ*0.+#IZQÅ>0,o^t =ki<&sd9&a$zJ~vE ((! ϥ*Z+ހA#Lo-fv O踕.7ALE|BHlU+;q )Uvj)=0S[ZuJoXT3޽+R8>֛m^i`J,kgQ6"oV4!ЈkճDmsШ#]VN0&L_W A8!/)hr,tw!xQ){[@S-Lj[E49p%AtϜv@"qdyZKe ]O*nBaHI~Lz} XkTV -P &@aJ!az!ӂYhRS~8)InqwFҝt[-V8+M#Gs؉):f. JsԬ &yC!h>S5@A@*}h%mޝD\Cg s=Cm{OO9€|/ 2u2!N q:h=+he!ܥFυXkkD);7h#ўD:mte{XU3,ϣ0zoB iS/XNȴ-$ 🂉[Nh1mV eHc8G޿6BK24BS2j'kq%QO &QybK\5y+ŀQ. Dh ܰ ;rpgT/9ghUWIs{Xz2'=ώ}f.\*01_ 6tS(_W~} oUM`#+&nK/q?8;oe p)?mwMMIn6§^J9(t=N#MSS N: (kz/qq@_o|qVd?tS܉\Vi& 4q_OIvR(#[\-$MG]HC$7!)=F{[ yaҮRxAug'B0J;ӥ`t5P]IKzcD𰅙%欼]!žw'tߟ4GY ^5$ #2Bd$ kуK߀iiYs$) zx e5LEsO\f/ϥjOM>F[ɘL\ Ґ; 9mwoJ{u>1VJD7ia?%a?GSnݵ>Ke'hH%qVetॕs7E|lo* wBk38tP`NTJa@j;@6*IW P!/̾!P[43$@*R-VSbZt+dN6^ ".4yW Sr_@ Z-GN?N'O fB%5}+"[6浻I7heʫ*s jeB#lMdmD$Z].h..ٱ' cnϒ]h*v뱠$6:x=qc=Xf0?g sar?0)zj].v.h:Cf)aGڎ:9tXeQ<Xx naRyHsrFia I -U۽%떌hT1NbQkbnच7CT DZkSsjbt'EoMdT>@zgj.ôp{p6"P PQyyH_ Qz "MՇeZۛ/U ߭!UBf]'|%1e*9aϟ(SdZ9IhDljDL nP*L-8↙%Bei/srv56dZ R w7&|diPP-uZhFJ+0Ad9\BIVoR;~,*!\wP'Aۧ;0<› !x$F"<?#эa'c^!VV7T9 rkP킨,ō4kL~mgf{ry&0%r(oq !mc==YZՄ[#X:O;o6i#ӹvV܌[hAxTf&eb]lxʫN)^RwD_S**e@՗ێFϢaŽ>")/-E,AXhFx~2>x 6Ư4' Şv,o ( 6-[De-oNⷆ03<S?'K 5>'8ש>^GvjxY`oJ ^ !6eJ:b߄_1ÝNa]" #&eTT$=F5$D*2?M5 mzj# `$ oikBjD?nL7Eyd`~;;/"Bp$P[e%POy¶n&WCctR +v5Rhe+|f\lqbd_)$ez mq!5Ro+|t.JX|;E5*AY_X~goxLTKS|<VK(>9 #!>~EDyK~Q50VHd (A ہ>śl^bi+ϊLN|+[䂯1᨝:'E!Ŕ9i; zY;n[Vk&[&yBQFr8Ҽ9S!CBC>t(s)̀X7CqRSHkl--:6E<!Dr*{r^`=#~sˋARҎ{MBaJuYJ%V4Un0jf>.ዼ >_uɮtDjw8nqb)H~ebZjY?_ O$KIʈBl 152sĖgbXoܣ~Hҧ63{+qpYHV8e)uƵ 쮤''uV^a&y1%@vӱĎ,XU(Y'PAAbTב 4)m6]XWLFXJZX9]#>rsL~gIڸv~x4b0ZMWAMO8p$Xq^m&Å xelc;Nb}d˄"M +35SoG-0j*S}(7z\>_ӮJy#lw^?"y!cq;|IjFJtTS#%(hC4j)W,q[Sپ*rNAf.*KX^Oȁ(y6?W_%\]dtK.=Fަf8֤eޮiG2 !WL:t[$eS.DCЇqq?zcnI?]ߕ+ vŊo(_[/?Qc&=1bh\0s|4R,,3aq.ס;b$)=Q,17JA_rZj;-SZݑ6vBC}?}6$R Ƽr\Wj;ʹKt',Rt÷ibOGl_zbY5PR-B&}Fd YyuE3מ-'<Uu~XKk'2\jRwM w%m   j4X%jPXn ʖ.zDoyMy!0RY]x@^˖q2fAf[}D^2eqޓV?y+m,(6ʹr\;;.Br:V_f'4g;8Wh(4HDD3TP)}ūIԏR:U,Q|czٔtf lLGƞ1xYI} ЫJZMI ʿ.m{_.GQ3f daE—j?|) Kc); tN]erܶt}EN Tz$Ek a80Ւq@'6H MSąwB7I5r(dI8lEDȒhjHŭ-$_^f cJ~P ɵq8cZIw__mtC#ԶI4zt*9}$;xb{a+{Wə"lx%=:P<A^G8i!59^x#Ov8fJn–T^NF$, oeJmB{f ]ܾ툞`[I5XMGg#DNfDjOCQܣ+7X.dWrAu7ꚷ^=b[uhVu,epkQ\/ֆSZ7Ri%™7<~ c~$MTF VRI dWQ"}(G yRVx(&Q CYoZ%vZ/CͮIBβ 6nZ{C"GY D 0A x Ϯ@2uYָ.xB?7 8"l|e!5_iFgE9m}!:dVɬ+@b4z2tU)jn#97Z^5ɚy9~K]Xv~ d0'O9N2^Rp" 4$.OvLi64aDIp$ŻFwydDM|4FVY&#zp? 5wΠL:{&0n'ʹS ]Ef= ٗMsRH% Bm8U8WTCI7 E޿?Pfr7Jo"͛whJY]Ӕ{t'۬x1D@YkgS=!&Gմ+8OGu=EHpAiR[@pJHeQ Q} 5|5=nП GN3Ue+p@G1 !V[-ae5 egN/(H7By=NtH.[!+,55>? @Z2{+}H@w(ʫrlq*i~o { cxU%[C55F4rq&<сT6~6sYh2cu~e(+Sc0Vuki$R{Qp3R\@| ZX$҅\EQ'dQ"@4BoZkŒ+`ViW>o"ƞ,m%{Ѥ gE9%ɉcC":c G^{~`¸C@me1׉v*n@R1/o,0ie6F:NpV@d :1 m@ӕ|O(pB;Xb|qKPstiv}D֛Tt "v)b}s y Ѩol,iD_zu?dB^#hH!_D/u֫ɑFJp.gt95 yU{(@Ы⵻[ x[DlָP̊}8ԖQRp XTͫ2kM_ j3&&nA",(/.Wqzv>)qtZY؀LOnd@kR:ruT)SA Ǔ ZehB\b kcGD `8I>ߘW^1= J+cSv̋,9\ʮ(dJ @I|tyrI<28z/CYT*J=!NW&>AabDh602;P>иm&Ǵߡ #v+hS={ vv|>Btĸ"8F4\.=߲L0rZPX  FB";27G}J')!ҞEsU!xgP4 C\~Ɯ dУ7%ȞS6bﲾcr|z4 PjL^NYѫB)PրK T= )XK<' ԮAuCYp}kJkܾ+4/g߫r804.g Mܡ[Z 5ՙÊs< KDkSfdGpXAU[Vdo \:% a{*M_MKV: ͪ}+B \htsvq#@IjvFꊬi|L%ѥRkO*z4nD6FXDv'EN߂6ⷯN+~Wn i - _sSVb#&e8kë&QcD0BMn.&ft: v dJҁ:>[ljBI&,XCfuy򋊘΄HѠ(J ?54C.4 ?bwN}ÀxF8 HP+Uj I7ic2ECA2!{HlYSdɻu ew?ыjYh~F6[g)DcdFxЦKa#3i+9tQB2Y^8 V̿&C9)+|r4@Ti" 0X%]=MylKA 9McPC`Lck+߈QE#o "Wg"_R!c1(F%*jPقI1BwDZJ[0VW+Yj8.F+)rхT!kڼp^,fBgJ9|qᜍV [-d,rors6{6O1?v@UnӃ:l+dmwOE1+jh4, =GNRYRsykPgmu2S@pK C?SO|) 9ϟh8^%KX]W'+ܛU>Aw۝YWq:IL%\:a%7t,`IxAL7QhЬ2b3EcnQ`N\AƲ JWW/ Z ?q"8:"Nq=Tث,C0WިC{ -jRDpel;CF+`ҎK1/}샭X=NNQ0T.nGRrFE1$vP,Gi>hm'"A\車Tjp XB]nh&*~v(rr^?;jhGglPhWog/.G>0Ne_A< UHæ-Bn&Yc[EWof҃9izuNTY!Hs o TO =L#\1Q%4c-}ɉig_1,qX_N uk<DIu֩M  U4 CBN|bkjo{A6 {3X&ɞ @+][}o Ywܗ L?CXS͡ZK_2Dr̉hw172Q' eFޝO$ Z?.9EgoIB!ls1I=(BkYL5\좪·bS ֩K%rp60?DYE,FM$.Z❪V3.#SPlㄏZ;ktja\d2P0-=[YH &CdƎ⯫UJ3P&vV!Vyj1J}QP&fum#klaUaRI!f~.Eo.K3[ǐL(P*{Nz="TE@U, #AaBU&,vr6 |4T HHItnHHAwJ]Xwl+?MGzNsQoTiYl-U4!$h5 mK$://hwy֤K͆+5)cp,!nj,a~[%3e)٪ dJ-#ϣsEVM ۍᝧSzvh}+akE;b D! 4 NnE2/셴U *^'6ۘg[8bp¾ u0]\}9 LO^/12I(|ݲ=݋yFRC71qmbrQ/>2 Ka&9)eOuPH}[N '9J9%(a 7GO9C1'KվmM#/<8CAWt˥C9z$xC 9k@yYo[${p rOF7+mW8t(z;)vA-$ p$@&1_?1ODl+XbURdދm<_*ˉ~'[O!FҠG58X7 ԝR;vLSAGT{$Y8N|{1qRC5ҝOs3y+o!mKQ"v4D#Y9]xX"feReִ),Ǡa#靄L6Geiʌ-2EXa/;ps^U3W4Klb'O1fM7 1ޓ/\k$k=l֘BcADXPlJ7?Of╸iS1~D{0\ ؎n0M˛A,5Ҹ=x! ٍP4.r<2Uw+n~To&2+{C+&D aPɣ"Px^/kuS*9*cJRtR1TX_?y_lb!$У&wpMx+D׻Tc%\uՅ/xl[~MMklڟ-, cA}d*uם2!ط[W8m޵jr[?L'-iY>A!։V`40UE"'!YAqWPgoF(TvME՚ b6OscPHBx݂oҸy"U(>-=9 b&׶eYKw1+~IRKe)wIHi0 ׺)t}2gG8ste9zq~0F#HN-)-a Mh` ?KzfM.? mGU.O,$9y{AUsK&3]a2Nʸz'}ҁ;}7a~ZC]4D=V\[_sF!2κ(IJ L5k V h:L 'kF;ȱ}I7Iy>$ ꎕ_&\O/\"L:PZ=h!ӿO}=GcHE(z5j^D7^JO& 3TgGK: XLH/r\T9Fb${{B)<6IB ~=~fMisMts/&mb~MI`'p o9= \n=G;QQL>Hcpd5~چB\xnG]դk*4=SKLe{64X"sNq2s:z}| ~,Yhu2-B#eH2bwOp)1xR,+y,9vvY>W0 Ba` b!h,ؿ ɂ雾3s0UAorؼٍT϶Qݠ4ZT;ڢSXFSva=V,S][ p#N+"Sc"|>e1>!J=V"|si_'[$E*z^)9KoDMϖ6yeXzan|[&roY0 8N;a|KJRkJI o=I/U Ku?Xzy,g6ޡWH%4 njߌGL ]IPmM8iGΤ]A2%ax([!{Y J+> HInaZpV+e 慀2f9c'ؒ8sU3Cc?-;VNH\J:5Ӟ.<j~VOTюJG(G0)\p6F%;I vRqhR]4s<;}k0j\%|k i>~Jk`+te`TjSU ryJVuSS%ϗ7.GbB1ኙ]{x]ГValF|/mR)ҍ$|.{9`oX 2H<-Ԟ{vw!(,4V1.҆fym̌HXRÑ;Y=**O Ӿ<8E^Wmwic_kZ-U\%xbWߺu{PBIz`st/L{2ɪi"=k}u?PՓ)됵eptJ-O6$9 fQj\[X`,?&4? iw#DPyAyDES>=>tްQ=z>+GZ2,Oq1>+̞;h0܋99cbK\*vg_?4ipACHKT\Ikx:bhpNT&# C߁r^BzN;Uxo[gv6ƅwBV<&ǭXᱨFYFr9]ۚG1еU7C:/x .88@U~g|e-v+v07KdjELg!}`ʜ&J 07諾{o6"t$0QfmJYqĭ֋]Q T)[͒| #n04KAŰ UR Ahrksg.cB?*zHIOP.^(nDkMLU6=' < qf;K8!ԥXRWXbO-$>5"^cqKoQ*בrTC9=QtA:=%((*9Ϸc=2 %6֌2X5h!ljXZUooC s"R1awx[f>M 0~Aǘ&M|9B0a$62(IԽɁ^ sG]; X3/;mJ+f,ENb5@ *R rL'X΂{aASK]|}lC U(NХFj;>.t; 7h^,gd,BE Ul,ѥQ=bc\%r(WQ۔ei' Hj&kzc\Q>h{7Fҩs5l :N#`DW;gE[0,d|"`pT/Pqwk8dG>މRꤥBg#,xGjA1b/s~q,xm8ptq K> 3iKb 2Ƌ!5!?&.ئR&':[2`q0/! :r'JXX `m'NLoJgY& -}U-0q~c,j<6#R]r % VPx뵻7=KMQ{KƌAJ@;Xm5mF-w%1R?X,2\y7\4am=Öcv\C Ӆ\&RnV2i` L{N^ߚ LGdJ:JvC͝&erh;x6A6ۚe'a-~^4ͽhDsY,]9@15i6زXFԗ }-=*쎡ipP^k|Dgn4UiSX.ڷFh:#T ݒS]肮 Iѭ'|lCG A>g:)OalM^bs_d4_Ʋ0bh T.CrxQq&`'ٓd|Gj7+81Uo#Y= MerӐ*ԛ L>38"m7 zVF۪\Љ n>N#ߥ3S0gL[J2.wĖ?U$oHyN!v E43.IQ vumvsF1[PzTe4i@޳\Th-[jag<2q*t`n3G)ΰwKY,$Mˎ%`62?j;JCjMnƝ]"k Npe_ZwgUՙ5"Z@)㏟`3jgzah^$f!?3`zs&zT'CتT[.E>2wbȻ.f5{qOrJ]Vʧ !ӣʿ4]Jewqp` ٬_4nMUPJwH +췲뙼u-\!m(,-bsxH;)"yNs#cBi[{\̓OiukNA6[$h|b(.o9dKkBxkLCRdSЪ;iW "~4dCe9lZZxg_`߂PR׹`SO;a55iPpO>rgliN[8ND-iwl]->v.:A- @ ˃'Qev6dX%|HSgp:l/ށ>d& Dh өƏE/ώ/\m/rLAעChOxjO8:E,In`i5uE2GPL>l@! 2E'ȌKJT %orO iid k)A]tAo_ޚ:Q/+T϶:k͙X[jkMR3fGTw4 丗YN[fx5 hBU/dHvx#ѓ47qii8(.Iq[-*Rl 6ߕ?0igS*$ ضoĺu+.ϲՇG2prcѳ )#SFBՕ2KA0i t̏AӖu.)ۗn2nq={I-:Z(k}8už!xɣ?Vq/B$O>ʵid8N̄*5#wXHCFj/Wpc2 ^kZ}4>,|o*K->G3@xkm/ISlZ{: ɬYD~LQRN8W8~,j~:wD"լJ` yOo&BysvrXu %-Y%(Co-fWƿ\p%4FKu=яq71v Jc?.J x/{p#OJޱo k`0^ U qƋ  WE {Abm_~Ju dZ\%g,)vnV?=.8ic}XQ%Xur˝Zc:SBt& ɉ{?uo/T08YHnbqTq2/\F2-QlhqCy[CAюNt8BABOt=\]9OY*wVXHJ\!KFᬔu F/u>-m 'Z4:nsٳ SaL"$4$7jZH2, vS,'}6)l\17s\  ~OD5Jn3F/ |'Ϲ>>AdU₆HM '>pg +׍gdB VQ$1k)>2L]*XVZO"[kU b + v.aVnDكދ_p4<}y䤘,(5z'^ҩ_?sk@S7z"vyi3mЃ"~0؏%hH2}Pg& 3Gw^=5@M0|Ʀt {rb&($i6@x SxbN+A<,L\vuLWe鲱st4: ;6y:S #9ænyZ!AX<'> ǜw:Ѳg,A\L CY1TMz8Y{u[0-4R;C52ʹZ%_E#d7kK8TkWƊK?.saF(S6<0h].ח`` )mHMno`yrEo"zXg6הp^}7T#v=J=T=Vo~fC#:%5!& pҬ0Xt*E v= iuݞ.$}ْ wGvAjɵ)9` V{vCOvAoȘ؀-V\oD=RML;qjKh/ȧ-`%5* EkbF 0 XEdh&DѡbC}ٕ|d׿y9пb|ےԄ5V;@ 0o mxF@BQӀܻ7$SG`г;bf_M EMp}S@73҂|͙J#1ޝF]==%&̔ksRs! &qJՄ,|҄Ӓ -FE@7I^˾QV6@DISbE`⛢K.|dyFiDTEBctOgcu_mhw)r|4._sU ̉x.0@<-ͽ!W|n%F]PVs݄($%LUM Z[^F6,F )͆_s 5؆<+**Vo֌*ajo-v;`Xt@tndGҰ[/A۴{~i)e;E- [k`zyR詶^4qh)/7pAW!$4GyQsEY *gzA,B}P۞ʣd^l54  ui $`LI#>+^)(7S61eMt1R͒k8McC/;ZI~vD9]Ge$Х:S\~݈L49Iϕ$PdG-p=SM|#a¢w4dz uWM<] ]# >-iE q+U~ItS ?أEH:K[JZW9_? zWnyTw\-r*|h{PKS.iKE5rϢp-NG J`aamBݖ<\3U+C?urW4,5%I?AAN3*_/yd Q68dNgK +[N@WU w9/R ?x8jc8'kIi! fn=hT,bGT^J)'dS4 fi<t .F{(K *W,1G>2޴4!/4Yhd8ޕj-2"pE k$6KсeoyomjdEP#E09@ū+FXfmqoH?#V֦wj*4T 4bX:+{YEd 'ܟ˜ 2]4At!I;~ B` H#ϰ*lt$|#|-=q`z|F|grfOl[ex6uMQ#JߦPI=j/ 9/zzYׅG,dJ1Ioڶf%m %IX-ol-WjO(?;`z *se +";U+^!s \Q}u4=9No(i/>@pqa M*enLw4~{~,xJo')K!uWSq&%_db{U@xœpndyM(s-Y܉q9ܰQvdj =/0xhvtf`RR9tPQy.jW]/(5'MNܣ3< iv:Fvht 92by:u3Uۛ-,&_~V3)٤zJ6ߤVk3zNjn1"mIXw HshB((:++'>0 ¯Nڌ7Nͬ\Ŏ@rgjml('^} ɱ/M<`/?Ag!D9{ⳁ5>B}PjA* jJNBĽa9:?3Z\4 M&%ӧrw,DԖq+'g54GBJdAžBjdVV`{7Ϟ轫5<eVКٝNY#c*Mh*B9f6B_ڟRxd(C't)f%OSʍ`[dn3a`~YIx~}kneG!J[bN>|(zIU-|V)MR8*&>QPR!] .AFSJ5oU>iti<흆MgK@f?4. P#7a$XAh-^a[EF]rwQz`,* _AR2N,oic+Q,w2X3j `<-[ITЌ!"tLZB_|^Ǧ"fڲd*4RE믅yƇ+5,>#κR*[G [vs_^Ļqbc#nxaM:u::zʧr=jcAMCNehûpZhs.^#h*cV.iok20dt4lE/vL|^q;τ7cA2IU F=Tڗ wL9fC+{ YuL8;}*9LfMs02{9n׷}LKdlӬeoaaq VM$w[Ds}ncXAh:^X`lWD򯺳dddǪ GUԌ<2睨Ts^p"8?޲-h8oƎ#6@ʣDRἁq1i_!mO>E({kѾ R잁E5[:*Hvbj+"$"ZTAM4&c/9e6[dT+jL[)cq%fc׿1ݶҐ,o@c(c63^ Ĕe1ӴpUDR壻Q‘`X}^|:rX;Z+\n(T2%w8T-[ϐ`|#:Oq2=>9Ж麎;RxlN7r 0\CZic )͙m'4k/5uQy-v=wL;4 ݎV^,W:أ"X!Ace1RB:JI_;(iZ47K sFpS7'z<v> $LĴǎrìm bz_n!(c=˭/לdBS s.F^>-w!g]bss1,b2>>|cW?;hFyjcL+{nNL@~dB0*&$ߥ+}&%f4 hWHB}E^P2lfD8KfK*!ưGΪIF1tt ~$¸&vĖ?2à3al { xNt \8\IJIkc\[Sw}~vOjoYR9 گ hX ;Z`uM/12mup2:Q(QArߒ,U \'I}LEg3dƋ}]3 BbqiR{R/$SH$>)?swΈwՅ̀7iUpCKTWM-K$mxO P|(9ZI~]2kz#$eP+{;oOK O[{*6]2=\^{-M#hs㨟?=kʮ~J@iD{yl&K3q d|FDz  *=+_ #"Twո,Tŀsv 'p^ B%kp )4uDM}Nӝ~s!z!2IuHI-%TݒC?c,xFq5n lXESPYg[LD ֙^w? y?0͹`{ u3gy\mC\M^6l]x>R\Qju3[`}}W jˊtU pTDb!2iu!Dy!5'g@!Q S{@<{tAeQ"Y ^G nI" h}9t(L#BzNa6(\-Ϟ)ρϒ[X:V}k""}'{Wғ`y Ѽ@&7%5;ՕIc`.gڭY89nqg84+rN뺲CƓ@D@ޏaY$q)m/ւ%vnVH5567jR8ZŚ 罇4g n/, ldOlK=EqBפWVZr=cܪ :oo {7.!G2O)-‚\v=luyg'RPYYϳpU.m]> {U3;2Z$ex{泻Bx$,) Xݙ ipLQX!dQcgOPu@F66g8rMį ¿̨h_֠]NpNzet%@o8|'#Cܨ$*$2ng+UX09#AncZ0Z>fpӻ'?v6frN^-(Oب¶=6a c]O5*y4QG*H$CTpF S/Zpi%^QS >N1~ uyA,M8[)aG1#)=h9M_1?݄H7!lg+#iWCHF62 nH?WvD%!58NV#Ӥ>"0@Us[XyA,|}cXe`4H~  2/kӐ F֔msG7 qRC h;_ɢiMFF>`9 ?`%%o=g5)ۂY+~{eҧ7o?s,nStTlVg\WJg|ZZArBD͖j5Mql[6~h?:i43<{Mk%üd?J G1 A獝)#^Y#h7ҝ)Q|{&Bm9oT=}KeykT3Ko6GCtDoʕpJ<1\u(oO\JVi;\|vC'bZ^ˉEv>0bNc=U l !a=j^7cdX7h9i@[ԢGZqfvb?J`x+0Tex笸=暫NXɥ"p۟S*ApMբn/ĕg##;YF]q]9t`8Ey ֙=hIi<J›O@{%U7,u[;,@ +8Vr >6TH~tei nX峋򵠛({Q3wd̸$t=`>%bg?2, eBJ$y\zVH,s#~^vԲn5oNt G2زEl]\|9=oQU3P$ѫI!jmߩRv=i[T¦}[Rճ1=R9k~˛ n βI/h]crW#/뀞&N8&ߤp/mo(GV}E; ߮nId e!X?BbS\Qm>HGv7%GʻOńyrDO<̕rt[һw IJ[?`^r)_LQW<ChtT?\ŋ,OZL"YiA%e$݀bJSҠK-&PAAs $Gv|xTB؏bqFD2_n+}}v sMIc"޾}Y-aUSUc?J.bڴD/ 1xnlUIo9e@\,m2n]Dͦa f%_l8s e 6]E*xr`t~4?Z5k̅O*Q."oF6QD̎ARsڏt1|9Ž<-7Roy|;>.a72K@%mֲϮ ;ADPIJЀE@h؀c>#yGG_d%zmptդGr43ڗ%ך$rp!vڝ BH>ܪg[N=J_džnhc1ƦPF~\o?a$j_w!h_8K0"6lF/$բẐZB%Szԣ\Χ7KAp-Y k,VRJj| HEm rhܚ1;xdW5!jnl7 dZxlwl[G5ufs`d{p|#v <[N2&B{|CiFRwe!wEĢugԉz^t v0 %qc'Ƅ #^}r3"$tT5ch\bjt٥SGn"!/ǷZt T q-wq j3LQ(ᦙރ7IsHXe{:: ljj5|A!C}Ȗo,ݱf!;+#`cJL80~Zl{Wt;&H u\%Sg%bJV {.4ͽN[].%\έ{18$4qCm橅uX !Av9ѭR1^6,KO5s$*-, G߅`sԘuRtZZY@\%B}cv]uSu6 J,V=YYȚFiu%DdS1O%EcC˧U@%o!X\}6ٗ[X~ i;]!A7X Cفk)ÆKJ{lM|P{k,zB_N L\ ʲտ~./J}jN8>;MRϕhO"T6e_InrtNЄv."@x JHWRؙw[I#%?XY Qt9_J]xceg3p7njPp|I:,U5;9ֵV [3xHv `ĩs3nkQ=CK%M+nL8w' [><^i$PRuJaHB%߳7[m~e. #MᦿkAnx4l>V%7"w}|'g[pG__$fc'g^%.DRGNE{`4vdWS:EنhaB%ns;) 6<1R-aCUVDZ48PLTܨL$X5Xk\>^l5"HZ>3b4PM)>BhN4^G lQP\7)UI}2VD5}$ݐ6# _haK,5Xk84:$odҴGbK0qX)k4Gx"xGRD9D15Zځ\kiXERz ?r%^Ql#w&#۳jUŌ9Hdmn-Q'e =:n9C8kCWvT,N2_*^!G(rd>KQ>wkr;1-8/;v}(|GV2&+1#P|eb)rzUQw Vyu.Qd6gǫ;;…Ε D -qEkiFy?;6T= O6_}M,ҙKEv'lxORy|݇;HiնϸȉHR(gw5Vb9PX,Cbt;vǀ /旣WSC_Y)QefQ(Zu 7sgN;ll;EJ򧍭fȍULXxh`űQ$6)J6gj&cb|-Jj7!jYO2#hʉwq1[݋ S8@~rzHzv`ZzQ[\%6V{`zAAT[-`-Bt(#s~{A1'$'FyGЙ|8JzwT+2*0+n\(&E]t(M3Pa_-i%;%b+Yr(&u0h$ʻk{/ԉġPv\t 7]*D\M&ޝe`ƣ/>Žu5e׹YbS+ztB?ICZpR 7t_%HV4nΐ{5yV@Wݮ,y9q0g{YT%XEDxK$nGZ[FK?˭[ng9"jɸh(L|4 K'q<۶.@lR͒rX5k2hOfPcnKKSHgp`) bsPMiqwl*9#ϰ5đR[̱ۏxcsRH`hď$l/?Hg7blmgāz]gg@>{Ph:eM=fMXNoB'*9ZX+KhVyD3s+1ۓ*J@48|:?Hy Ԃ^)ʃqw8r%:bDV瀮pÔ8G%r%}ۗ=p5ŭ=}UP'\DԜ݇k*x4Z9cn/ Aᩔm?.nY֮vS/t;Ϻ8?8әXX3mWc1UHoQ܇]hD D/vj˞4sУf|qT&u} 3ċ'Wr_Q&sᔯz<ˣ^O8Nhٷ e K`Itz95d 1諼-"NKBD֠|9wxN$BtžQW7ɇlkMSֲ>e )ԇ惶(O@8R} )p?|8&Άv '>k(hhׁNYzi|&ʿ}i:eM \U2ج䨷w>K炾rP+C^DZZ0[.=w"q@uBr/ <LŞJՌ>*p!D<%>x%cWˈv)*AhɢanК2brAG3EqBݛ[S5OLL,oŗ B?Ys huw74AQfT{tζ8hj8jOC:Kr!M!C-:ҽxmz݂yEamwç"A ACQ?_=Jcqq0!̾(暊+0Lp ʝf! p ȇ!%yTA0驨80- <ò^aղ-ڹk= F`/ W;OɣW >"I|IoŽH{G@dSI\.NJ tQ;qGK)Y7TM`$w<0`u ﯢd̚mjvV{g1+L(Kp`hgؖmİ/(}׍A "*ou ?i@tP[3Ix7jWMhʂ pԆ e{RR k}4P JoZQ#X(eDE<(EZBj}e },Z?]kE rRde吣Q:OuE^)fȖYPKl*+6F9sQX8] k뽄Se2.1 0'1Kwj&ZcsMkq>eƏ[XxDP׶9WknS;5#fiv`'hB1fvsW/pHd(YkH FnbҰ,4d/tstm0i8Sg_2GW) 3 $J641$cvǐgJ7,2I#xb@ 03vfb``XIUG˅:fy}8 xcɶ,˗ H>)'.]=ǯ]K(:cm{sCh<" )Z `Pϟ;#}T~«+eJ~Ѭ1 &E玛V<ѕi $)C$ťx(r3\so$cF؁6^Ce}%ѯ +05K\VrHr:krҸ6wnpyr mo/ܿ/*;ct-` &tKA]|uz-!ϛ5# fк g@i2Ȉ CL4 RmYrk*/[qj*ZB."'ѣ7(lR`Y",`͡~v4ա-Їrǔ@H%iH]M#kœȿiv &,񻼞}&&wHG7x#e}4~y{ 0 v(!FhX[q#wd$_ !6[!4N ꊳ]䯂rUF۞-&k9a5*am+UX YRdͷ$ Y=M&x͌o/KO}6kҋ3]AZ?;mOfS e80Grl ͙8&LV&o:xཪa({+19 *KΊ (YG͗ (XBb$ć)'&< _0F\=x0s8z%\ƿ8aKcQkr cL@SκПmo#45½„]U]X% hr'Zu8u7Be{tYh }{db[FERcח;]S1!i+[R0RPK^Dn Vګh U[(&6=SKpL kLfTT,M.0C-:}Awk݈̿P&jߢ Q\4 55Dߴ3ЮAkX0@" gTE0;(ʜY.v+dPdm2pplNi6<|u nu{ 8\38DU9fz1#kL!6s͗˚}$"sr[ yCU9gkB"vf>~0${~*pdKiK8Cvq__4+>Ms"{gPfMAxGDX~foi'MӖ A !D逨 F,Zo74޿äO*W_xoVuXs*iO4-Ӝl/焵F[&; ~J&vy' hH:QPnu'_РZ:!w!DRv gy(ڢ>ڍPVA|i0<]Igym)Y9(VX4e t 94Us֕\>=΄j @$~Jxqipdy2*sNkwQ'`-ڮ3c~9%&7Zӟ; @*Y M Z e9Wfo*$|4oð08 ϫ p5 gLAya8ޙ9>-k֔UHFFOs׀FXv{y灯J "sd>㈡qפEnj"ÑXХGnֲ!7:b:5q*BeRm)^(\]FJ\>P0/ ].c)tvbdЭCȁ?B+RuR$j4w`7uѩ8^&13:1lWk7uB!:80֢èeS(gӿ Ճ}^/SfeUprΓP-Y h+]CQ&ȵ1bEo3L4eŎBC=q Og,1ySU*7$dj k}9@YpE&ݗE3kiflDY"XA~;%eGl8- Tie6b/ l>TXY,XnFDRBvW#qWWx.d1f}YlE9uyg~H)lk&4 ۃ3^-5rgSo74gg{Yzթ@k|[MI+F/Pp}bV~*mmK+j.޴6MɋDt;EI(`sr,xkť9l WTӣ~bF vQ's` !V0h4i#n_֏2Sl*s.1~P]w0rLɤ؄o{ PWdG1Y喆LUWt6JY+ziB&d:l8HuM)z,tY0@),W:6#"dm7|Z8_Cw9O5j-6|hq:: 1)uWGAri+KϜ& ճ˝) p"~$v,W }~UrDg9:ũCF="GoJWټu\QjвIK '<եP0=8 u=$D%!N0W|`hΝH2tʹ?Rxf S]#U/n1"ٹ^9zNiQ 9q>\+=q5us.D{3x,i=_ )lklUoM)%I|&ܩ}bA`722U6o"*3UbFy{qw,UbAyq4,Bi7p8lN cOЫayGas;Oy%MI?p8,3̱.!eĩ>&bwBE\ZHH%5}@zǵHFRɁw4WqG9NާKCGL0ў@ɟBϬ 1lU콡"}o "iwd ɶоb\qz.Z.7FΙQ;`Jea/}NM͜+ Lїs__ǿ|iuSs #00r6D3eZIf>;t&2ԆǧN.b^M, ?􍫥gﴫ i{7PH Z"|\NYᯋIJ}PY\ٚ(;}4:ڨ {V<.0 )`@A?~FfsFmtX)^ɤ툥 ϥm<[s[Lζu70!h6&Κ`Kh'垿2 ,ش',0u$9ƽ+ve,_!^;J/MN7 2⌝7?HX-A}Z}605UQJ"yCi?T˅}Upc2\mej?iN&(ySA\PXdo iarglOJPD_QZןpF6=_9sLf|(0g;HT^N=sb1.WT/0#>`_}q{!v[wv *hcCZOi ֚lF K?VEjY? 9`}c01]vFufP뤦mAӡ /ũ<]qI4mbrO'Ťdg["6n益e(((S9,:Do )"" ʵ%d#Ywb`Buyl$fwI<58XDE*$_%H~5r3ȕADq%vY>-ҙEZZ;Q 6!b4o1%COUVhس˨zDV`2dL ]aֆ@ %C\4̌4ῦ("hT;“(cS͛]wJu^[DFW U zѧn/J-Fi+!/ϰہqmWU_Gd]% O^a*?|裰ƥ;IEEgI5Fu/;x@^_ d*kےz⁲!e1\Su ^ͤQDNQ=+g |uiʄQ5fAPKZbA@:74&0b,T Sz)~=u*#lIhS5NtMf]i{lh$K`ql*'kNuP<^T"^׹Ug ޿[7иfyaKNxsG(զҀ_*CE'2I";uID՗H< 5x!` %W3~OMy. ([Vc-0ðrcRN] T̀y ;͈F~p@{d3^J /Q"ΌuOұ\gĚ0ԛLDc?fuֹK%EƻV(eolV 2q7؟%lywO_F<1 'bmg0 ӦYGC+vucW P""_ gp 5[FCAPOy^zz/x'  #~m3XaVZ s+9_V%wF퇊j'=R^T`ur:S{3@{O}hԉd ;(~H)PȤtJcp>!]VǕ "e% i#c);)Q_nd"4mZɳAwE*|.]`n+l1!8a96 'ljQpvi@@V_SO2b~4 yy0\*fS; ~ vO`j.=LFN5 B/ND`$S3s XN_{vWh*KE>χuA>=ýV W>7GٳL#KU\c=.ݛw5GFa:MI:bX0Ic ?P0d؛ӑӺ&hrlYݟIhRɜJej,^#񾝥< d趞Zݠze`[C餝'mּ6H;[?zT"=S{&-AJv9”n7oH'#i#pm*l53hQ5 gyq<_j[S{QT Uc2#Oi;.5n}GdIu~DӢwmڶtYlTyN7D ً[<^g)gSH|! c}`;^FL'۹FT=Sh4gwtPtp͠q|ی* Z+͘n,K{ De,2Sp/dLwc@=ѱr~d eo4XGNL!ₒ<k,P!#o |]F|pڡN;6FןB`ZJ%$ E n ^\ )bc&HjB" 1BÆL?20Rkz]p~3 ̽UZZC&:414LPk;$\K2M/ ' .Y$>ƈƇPd˾VRO=`1nn<=e4_Z4KmNXu:f!X'F"5]qhP R}.HVwdŌWgb8毿ۯa//sLDB%?/HRà>D~+ dQ$fbEnti~ co? ;4ITfTp'6Nޥ[cN*D#OWjU|/hnG\fЁ<^<3i[.OG.KL,[*jE%'d&NSI>ʐu41QyߘSXOv 2N S/"5ʯ|Ii|M֝6P[SF>9¨hr8\^܄GhذY4khtGRb?ؑ&GL`.+C kK@ao9%M9jgywpPxA@=JqtCwR1Y5ͩ T|JNY~K7ۏ@ =!30 b]ޑw=+cw0S،l#7P-ho,Fb|53jWk%jÐq2%' I}5h}v.~vИWV3C&&qTsC0;>(_|[=< Qɯ[?ϹcHsjMQKDeUȸ>Ǜ{ BMMDny+X._DxR~m>QV GcV F 4.3#ֽ" 4o"7DF)0}hK ~hFqzj!іX4=ե&0H36'K !LB]`Q"5.T ưf&v-Jm5' yb+%|\-j6} ~+X>&G668jXj0a^sk1ܽžY*?p׀ f?&2ctBۈgTwhΆ0{Q q;$K~ P]13dtE#h/ 4S~qt%$;Tʡofq{U`Ѩ8_Jm8üW6qC7\ 4J(MW.b5[;5[>ߕ/u3[7j݇ ;&E_QU>6ɶע2<$x׋wOn!wʈ"8Vi6CU\Ye0Z!bQǝqDܜj,?jF;Șu~ΰ=O!R^x8|n> LCzA)#lIu]UU"˝<%N[)p,FMt5m 'an7WYj3MBׁN]Nd$|cE+@;[ BK<Y\X*6zG[()dVP R:dzx\kMYZ  G_( 0T ?w=49= S $n|&^X)te+bgc;xXܺCYEX'ïAOT+$6-!`CM|_ChgRK[,wK 8 UM&.gWf…-)W9]zBY#CS:]W #B2K> !oXqY4ćT*;M$ '4-}-\ K.d?#Q)պZ:r su"DAZtv~H3;))V@@b7 Ԍ1VqSqPҽ2{՚ׁ{PJ<؜_uuDM!ଓpVzlc]:NBb̏J4<_Cd7 &]xt}xG'v߱O|Y8\Dyt!#':,#B'hrXd8Stmb[=Ű\&S\B[Q[6DhDs'0&/ OzUA€zcG %*w4a=3ǩ56۹,0~Cx<|㑼tSC<&/Xy6qmгt8׋G Mdv+wqL 2B5Vej`gq_"^*4Tl S8>"p-O3f)Nj c-Dzoo3ȎDg ֽd֩al :]<1/M]^+?~r ;[ܺ`"/ bBAmG*2;g4m\qXME4A0)i|g~'!J^N܃bY&rr!9ozEDhϻX7k9 G~Y][|Jʚ|P9J:@.P*Q{5I&vXs$G0S?};LeokG̮C54c:lZQibʥL\gUФ&X-;-AՃM"tT,qY-^FJM>2?93iryc6[)[0涒rLfL՟/ORm]ͺS;[EL[2q }^?v.t#Vq ڤ6@.J}v50uC)fT"3%ij <Dafm$V4yLJsM}źbF5-;#۟E1ڷ^G>ؕeJ٭գ:τ';<~56H]͊m(` jsHW8qFz!>nс;v wZԓsz)3cen"0 ,e?Ս]*, pv '2;FX%C6,[BK ZGdɺY-/yW$GJN!#!#H2!s%`&!'Wl8]ksOM'aAv[k@ϤEٶoKduT'n(~ Ÿ߉ȼ\[(q$.7^#9 *|{<DX+ElٻHuIB֮;]'u"HLv?š5' D̳>-R%u(gsӇ0),#{_uPd!@rvIBu'kmf|afnW'՚}4uHyզQ1+r-t< whmȬe +p275]g7~ #-A췓3WP7Z)v;׶^8>羊YyA4gz^,*oi70ѕ 6ʌX?$MIa0B%3P 2Z(,Q)9֚W6 ie.CEWJ+k|3%s𳘛6kuS~Gt_?eR.[,wqEYKG-gw|NM-vuMl\W t&-ڊ^x}{ p|^f; a9l!4P1N6ۢ;N!A?9״Sž9( s#BWnv+0w?L\6[ n9o$w4&4Ap{A! !X*[Gg'Y! x2oҕ.zFago|&s>8#i*$f}u ="o|^+L&Z@.e ()zq}()< CuÐkok‰lLHUX nu^ ~2,v)u2(ȞMXybC6H/΅:t]((^>>SUariֆ( B_ʣ-)bis6s\jՇŒ'>s$$7RWZDyl7X@wJ%'ƭz3h!So.=7p-Y(i<ʙB{NK蔏mHȥ\ %\`j׻aez 9 q!"X:& ̏.ȸƲt8քc@Sr<n>R 3 7D9e/`kf:JHYr ᪤`|<[gt-ĕJN8< vQg%7nӬzy1Y/_L!n[S7bK. '1@|kp5?ȬvUCUD68Ȗ#89ش$[(zK?]4g <صǙ1ɩnL ެ֪D'_k 9ŮD}fh$֣ ,btVcq"qk38Ą.>Y=@Z ]GDGAN&p$,BcDN'ٙ%v/;Ru)E<ӭCHX zQb0{:AkATű<*t [iI7iap\oZDbƟ끶VpD-sćeV^z3b Z(+5NSvf.z?g EQbk ;(5oR [5q CKn%.b{nG[.Ct#fΎGߤ8˃@PxJTC$9o yd/~f20nՕ]Vz1E!4x v!$8m%5GDO|`AF{+*Z<];*t@a[D`)/N{DlnӹgKNd8qְZӻQwW'AHZTe+p/̀Va{1,wW[8}4|>_r)Dg]{Q+ SlYM"3!έ9&_oo n\g`O;Y泯 53=wH FC~"u.D<1ڂ9nkcŖb!IO7 :T&P/MP 'b_K%#\s1HlC;Wߺ^Ru!@mA">847jÅ+Ы'g "TkUmy;(gO뼉KOas㲀Š)D,/XЬK#)2m uFCEo' M^!7BM@wv'+#)$r\an?nC,7aNڻ~ϛ{yEMaƇ#+zw_f tvD Xϩ]m*:+smI5t5MS,ҫSv!o+l,$W}}|}S̆2LrGhgR'-Gǝs/|; fl7vވccaR%4 tв 10-l=`]^Gbk*kwd 9 [vuoslF4O$MzX5ּ.] OUUFyD|6.Vl0[@W-rگT<Db;3Iň#g8+&OǜLG4} M "d)C?C)g$z'0#`zuWPӶHex%yW|?,&`(QjV2&,9Yԝ]ly*:]#f-μFTLOg^ P{{Ƣ+mb=yB6LT>]8IP.#sQʬin &ي7˹&6Zzj@+JfsYV'6yStҨ.96XADů] }8@1x1;<(\ ș e`=0mVUNa̐nd*H98.T(Tg@41M>T'd؂1 Ynn* X]7$#he/z},6HVg-+59Ѱ306oAV`qsهeۤ(1:ݏmT` K"['VQtuI7aF uHujW ;ҟWu- !8)tru|%9 vܞ8j1ȳ}C8L8:F!F|$jXKy>EXT PBzXc.&[G"i# R#VToރ>JЎn p'f#K~1yn &A?*ʳ?r^gu'v[38CKPkA'Q&NubSȒ؇wI-a Mc[o,A 1>d#DTByJ13jЋCꚓ<0ՌFjѨ` K0)c`bNbckѠP6;tYR72$OH3Y7d7ou|^4k&]P.ehk;0Jc^B+do^ǍQ J\ڝPC9>٬W2X^& 3,vN6@ CT +e3^O!IVOie~ER>п#B'} NZ;. ~jb6m/XBB"@O!=RKRsٝ~M"`ޱ 8Dj۽˝2 T"Є <ťI#)O`;%!o~M|P `q+Vݷ_$SI ){71*Y;w{I/QF(osu?4[cMu CӤtG\Ҵ_m8+M>FNũvn])AHġ.sxzPHhьvh3[ܮMu$B^m>VO 9p(vXҗW3/UALw:S-ގD*MC`F'ũsՊ0P}_% *AğG[F,֯J my)ߣe1`[D/ g]o2{>SrZiCM+hl+*z+-ˆI4VmGty;= 6ܵ'οu9y1-씭̾( 8)CZ 34Y $܎~ڎ)kB5đذy-tө:aˆŋM'U1F:)ŽS뼭0rS\3mu0 !^Cen +Qur l3|"y{XZ3q Q~WC3=ʔDl4hʟ.X;.ٝI{ g岲MTYՙN$<7P;/PD3Ŕ>Izk£M?k@/:_*!KK`U{qri?GCbʜl'ӇHn4NAtsK~B\="d*{OɚͬvJM.+MsgD;8|>SD`^`^}-d"LoW3dBK#5U``t (V3^(toT|0'$X>\)?Tt_ s&{#hb{rLj8nl++3 0.:h9ZT7,-/DKs9'Bjh3Eހ#' c"]߀uz%~,z|iC0=XqX_ڤ5(8Sq4׫ioX*=eLw-bw`TKj1XO؊>p -_ej)%v,;#"wlz3& EzܠB0rhD"hݘ:D }Jʅ`0U Jמ-_=u|oQ6CPC AjM̧UU+o@¶ hChiQvE_ ]D`9iwӣ/ȫKD,`Q'2.Jv"'NlTߎa4O Q>4QeN/I|#UYuj&E"[q!QhBfnv_ ]F[p'֪LN.X$# Z b?Ɉ| ] xJTYg_ T~5Eu$ս[׉n .;sFs´YC{7o~9tCwpure$U9zOim)x:ǹ|߃fQx u;dK&\w5m}sLćQC=z6WLV/yZmoo9L5ٿ9l-?7a |7 {O-LlFQ1 #uUC96,\sEX@.5я._! {g/X"\"֥-^@hE !C<ߋ97B"o\lV/MY xu.Beӌҝ+8;}pꁹ2@t< ؚu(9/˳?9njnI4E蛞"\eؖWzd&M<^J/5cK'skakî?zlnpD'^S }]Qi5hJJ|`Z'RK穥Q_{󟆬3^j~祚&sҳ$ՂŲKf``o(>ܱ\XRpi1b%RgP=8ٻWy) t:Bv#=u7x - n h//onv /_\ noqS0홨GwLMkDa283HW/xe:1P#Ys'MSS:B`@<4:|Uw/mnw,~yư$$ β 1} /[3hU H.TwZ3TLS>?fM ۻ*[D,$V鐐Ēf R:zGA/Rf@+ Q5 9-:91:@U}t=sYD_~g}ڀQQ%g{~nٴSzXjEPu}VF$jwlٍ"O/?0-;|j=81r.Su㣜%j Л 2Kiu)^Fuc]|rMш#9/bQP=Lݼ**{=})ROn FgOc|'"=#b ([JK)[X 4+=TyR(c<]$JV 2{6|J}@GnC,u9!9r@r5@0ڵk?i'pk[/OE94/{61Jt$g S2d),J\)k) YaEf%am#)ҰzT %שy]!ek%K-$ܛ\Kw?m?FXvʾ}g ^ ,!Vjv;&diDm=9No^rעh!c4k]/0e0K".YUَh*f/9ԹłaQ@N n].%Ǎ |q(|*<橝)׿K^$ }"|FBĕܞvH&oxzmX\y(+Â=S")9ߴ"%*P׵h Xvw#p)p+ 5oW`ŅW>?RAV¾:˺B1jo{[ ƧNgȪXbnf}?#R][SU%׾smK5tLP_cEdJϺn)4Ǚ_~ۮ(> iPHo ˖H}ɻCl[G&3La o5E2Bt6?_UE\8t \6Y'&n?rYɲ\)xIE}|E#9&Ō!mHy 2} a ~O/U%50\2I QkXsATtYJpF~Y*/r<_ s k LE*װO/YPUPWbkBrpUX@̑Nۂ ~4˲ⴙs;yc(2m{lt9^R(!s1Ӓb+Y7 h!ѩe*BL (xLC=wLH7[T8 n8Y-[(gjAwjZRWkiaDGQi*0/Dh-q=J! 229̸e- 1݁tk[[CvGkdPBҜQ(F`Y?.Kߚ fwh)96`w  %w+GY} (٣Lh aP˹sr@T0ֶ'.ppTz|/y49f>u\ Qa0^׉9 척Q :GϜ^Z V-&\ㇿ'͌z^bCL9F[Rt(nsq`HJAQ@]6&R^ ?}DZi% ^G Ys<@D:)\Ŭ{ lE!B6%N‡n#:S ^:{Ϝ#+#7urw O̮;RQnM/+ԫY!k,d`LLДLHMi Aoの~\Aِn{ֈt}VzSu^@ GDY#stGU)v [2'ԏ8y76r6sRuYJϢ]ix(#Vl8t0d843Xѵۿ>"es\|NgEn3uñ[Q'dFW%n|mϧvVM5zO vw7X]:<^Wzf5KqF+ ּzr P"ң e/Rf5[ DgӷMH5gw x\qq~X*엯0 YE$ZDHH;z)(BM9DS0N&Xǖ0Qx܏ޔ|#M#g;kDS=gPouLՅgH4/l!9^b^׻DFI.rj }oPQYs"%2mxH ʖz- 3Iuy'V1.Ѹ:mYTEoN\@V rk7Qsey&Eӱ2WL=l6?.N  R&Љм+l7.V; =9C-Ł8Llp jU.]|4~f[;+B: ?e; >6e u T$o-g G/VY7/ Pɬ˹Y.Xփg%lvH$%3[ӑs񭇥ngpLlHƲ[B#IA$qK6/ڞn+]?j:$BQ1ugkEsuP)\ut%lsê{tdǚ %s hFAI۲0 /y8}_?]u2w<8zWpYF>0;?lbF}8yxNBzx s  /j >lET;)]~n1^s_.ci{w{kWp[]/2bfd_#U@N+z} @тwԳ1Kxh '"સӓB#<'Ez+Hhj$aCa~Q  -3Y -, PK ~IV&bIKv:Gُe{,sw#wT94/8EQ5R w 0dE'_G% HR_VrO.fđ${^Q$+Pla&G虽S$ MK9~\]y8i44/JKe-OطAh쑵F6d*` `,wBy3EFa_i y( z֗B[b}oEhugPm~+'Y_bǺPoPSP䃏.ϺC gclz-B#" &G)Z|}m0am7# H>C~[ מ;wh 4%YcBSz~#nU>l 3JtS w!.t[KelYzm=lίiy4^Q׎̤i d۹Z9@Rˀ;*L:s>` 7.'#LdIAm`V`RUm fӡ(IOŊUH4qQUTƨ |~!Vȝ`yI1\(ʟ-^`N`N~}I δ5<{g;HO(29x:bTqZۿ A% e'^j)$)u+xA0SO3 KBB[IΖfwN$i1bh','2 9 9ەBX cy"1cY ~`R%{'sΈ=CA kkLAI6Myt.)ݪiLkTEs4;WcmQL Y?wE sP E a8 1~d^X`q" `8TF(#%J엄bEi.n F=+5☆6^`l &gdaw8Y^n?tՓ{.`Jy2yM_;*+Ac߳3;qw N#zjl6X{2t勘V>~fdKw>ʮ̑IͰu|ܷXBJ#R7H;$o!̸SC1" 8h砈A JefeZve_!,9򛨶,Z _qw1"XWLАUrjQFSNq y.t.='Xb6_/A!+],HE8s"l0bSza'p臭G,6P&ՂQl0uM(ClbֱH?=km[n߸("ʛ+LeFfk.IKQ-cx_2:;V@5GUw&JZpT:lUf3̣NS˾}bCRBiZR /hj$>.J[%3F-T=p!fflFw%17=^m=jQQډ>; cTY4+\$Crj݀v kˁ8*E࠺!(hj$2-8X}``"1O@5CMV_4KSeE3o#nZhKaY+l̫U*6.+Y\Lu>IEҷcmEN.!m\_0w 3&s}?Kz;N6^m cӛz oMX $)ᵲsUŊ+&Ci'i -mǜdTEBM6[qb!OT /Z0Ncu7%s hci% C|}b([mhbZ.t}i(bɐPHutO7cjk2L/FY۵E^Ⱥ:lw1A7kOvc}c~7 eX9\`gQe&~H9Pz0G؞/.c:sx͙ݪ%< cA~inT6tоh$(zE잘+hfb1"O*,ie,QDi%?ϵ RT 7e$?l&P,wCHtFODžxq y l:_[!Pje}2]k"!ǡms ɬ~ԌY?Z4]@VΨ n#sA+aU's#5Y` VIZtK6xK+Ѿsb}^UNxOF$~z[ oEl*Z##f>3-g{|rʬ}>zwnJ2[xq"d" _rzZu"BmZ 랯6Ey8/=Yф`,s.8t%NjRWʀѽa9m/RNd;hJ{˥$!+ꈶ#QMV|w刁ODݠOuAKʍYM207B#~oHLTJx>m! \H$b _噥Ռ,oN+v!*gϬpNd͠V>{Ikʥ 5ei`/oh~}=rPl)b58 jls ,80:C' ̲\ o":u;,YY8[,Z-ǎ(CBFr?Ի-eOp(uȖnOxE܁fsgc+8c΄ѽTLk)0E/9i^%P=@l>N &I/xϭ[g`n kgY!; XX?.A@ȫP˄dxVeS<-'Mm{_uf=@!:> >|1aT<DII]~vx rJՀB -DP)Dj/@_HRl/jN7(k#G|]zI!+b-٢6/mcx K[;^!BnE/"o2 2v[pyVn12NBP3)KSO ֘`%\2ȠGQ6Tн`9?dkA FQ W1gpڮLٺ<%$'GhϝoN1G ^uY{2Y#eK XMzX x)U rzy[G419 DTu@Z0X#>e= +n.1J@dL<{ضg6un|-z_qeӞGP: U,~f+d5[R@ E4t[OVܔk("Š:Yyܸ>\I6-+9P>J+0=J&ة _5q섭5ح&f;)b7/Y&Y(hu}dJWfC"R"'n-KAsJxeaQ13 P|ursq 3z@HI{nho{ U7fQGSO`TCQX=4|򆊃ʩ7Rx4ΰ=M.bx L=2lA`r*7he|ص#/iZ{Sy S_*xP1~ tp^8Kf|A|tLH"H;sQM˙)6h(6QE*1'9M"%pI\[lk5#pљ”L|Uq#s6$&k6܍Hm]!=GBWT ;?⁉fҪ*XPc6;翳e.=T[;ㄆ4ѭ؄Y)/SoDz" YS_ȳ?rמּ%,#צҶc nP5xØ}( }~la*jâIWNk\{20 LJ-O ѥi. 6ұg¨qt q`r"TZGa7J6ˀ~8=DdajX5 o+Nf2@Z7&c7^ #uMp8Vw7 8ZI8)OzюPx"?'{l燦\/D1hqra:(]M-R=XĎ&ߎ:g)0ȗ=2ƌ٫_TJW}>\_;6qiz PצXq_}3ĆAPC+ i!HL^f {+|hFJHK.-ȅm>ΐqFҩ_DK1J>xj+W$ۇy^k+pf"IYǟ,G p&t[EnݵjE8-PZ`kƊW4HC<Գ, Ӎ_Yʟ'o4{L͟ߏq}| ]ҿK3zSsݯ%K`wD?\Wfx’@TmS{hx99"~j-r19QCtW w]?E]y!CdӮmvq?&S9O$yOOo?9#y(`_l_xp6g5.0ѲKBm &epk!r_( npXt+woac*pr?5D=YwK5c it+좄5>!, <\HSc)#^3dÀӠ2 ;w!YS,N$ܺ  s KĶZQ5چ;t߽ 5@\ BL^vab[.p ^sKv6긗?6nڤΫYWFmt{qIULJ<̍gJDJRL*t$UgBPc R L8 ŝ[) MsNR527 s.,٠-[dԐ^&tB L!4bεZ@bb]$4n Va"n-85VŐ[qxTòy%4ݼ 31]ڛ2Rv,6}ъ\H͆.jRn$x8b$GGvS>Vͫth@^En{B\a0u<^.jܤI_|:_]|dpl>Tw[c2%KDLu\`Xst+jƶ ["'}<JB {tPRu\1*5F8EJ3q,LJRT9־|:oy=R@{݋Tjn.g@uЈa8J $P };#\k;`r Cۄg|ER6qAx$#} u/򫍦)ZԵF5U2W4`$"7w}շrNNmܸ$r m_:Cmd9@vA^g,Ben#AFbr1jy3+:o_4ЏMh6稻3`##\1Y4>]H4jA&+Ž>QTuu#M#3av$pwJ⃥F\o)E.L ]['PÁU%/F )yCk` O6B_*=̳|#,-bz +.{fZ68md^& F&jE>_6 ,[ʊܵ] AQNlt-(?RٙkNy=XK|/ 9%/I%iXVD3W܏:·+We/`u.+Zư}t,f X~dciEo*O>Gmփ+lҟ`( I.7o/\| 3DhQ58m'A; 9EH#,5ƣqi]IGRxSQ*d"$P/j"H,"!,d !C6ӞKs줾uu݌`.pfY1:U^,xR*b:5r\LѢ wؼb,oVvN6t-?/h.rr /f/O<@=]F=~;)@- 'p%ݺU)visG|e."c0gl '~h /-2GY!H1@"fԛg|v$#i<)byP¬cEMRlߞT YPqMuI UR9#Bnt`!,nuҚ<՚n8,*h3pB/@؈'?d[ǝ1lyjxȈ1w¼3䭘BIw|跘OA&[N&,1="x \X,uL}|s@<5M-d('33@o0qw֙2=ho=q`8 lS&8 V<)8r%^yB~[v ګ}PSA${EX#&xUԚ3Ħ泿OyR5[ }WZXCo+~첮e継̯$K| B ۦQip5R_boBðER5hh 'i6j^UK§ +oB[e XV~A|o/ Ȥ3N %ߪ6%5 ~O ( > (Lhb?"N\*=4EiSd{4' Hi %h[ \>MD.фܜ{[ ƖрbrP(Ϧ%ht e>Q_/ `'&R#6;eݦgtH3e{K%JE@y=XM}AcmY=U)7:u.Ǔ)Ixi:\o?V 59+s 2>L{35VXV̈́M'/|}J̛ mlj9| EP&n?OFX<90A$)'"0:׹?3%2ɉ@pI.-; Z >ae qA1 'zOJVbYxaL 0?:C+XUg:v31%>R`~!r[R: oQYa:  7:Ͱ@tQZd4xn6SYzo9ۇ&r?}C2~; : O0$gS$ W&j-cϺt !?;";vFD{C5 ]chӼ,†4pw8] ;hu0+ v@Ֆё2yKSSnZ.s*G7ʧT(ͣȃZ|P PaYf]=ݣ_DP1ԔDة{C~jΘ%fQ}lAԐVm` r*-햴jÐnmJ0*z9!6y#Hdž;P"ON:Sץګx)4nU郌)V_w]N%NsA|E{D]fUBTy$ ⓧѾVaY=vC$zKd4Wy`G4/VW6Ku{~:5#^j9wU>Bk9!&߰YBfk?Zؕ+>]\swL]bW&D[#j;lͬVzOB F4k3 f9Oe +| P@:Hb_t$4+AGC#.OVh$$!]~*1ICC  M q2&`iמ$Y;.}q&`تR/abBI[NJ}0H^؅Rǰ٦-#?oU94{ercKY87Tw6ܖAl~Ӳ3E^jH}r8sF݆k*$AH+[X@  *+6y`Vc-2 Ki役P !Me8o&~ry7,a*el-,<0ћPz|! ` ٧꼜-t3"bvY-3W M*bgªu/ ^e&ִqnd{f/x E2daS|AT`CnŕӮCN[H' >Oٴ3XjPQ7 2]8 ׊jH8k.(W}xU[A{b@9};c}xt@{;̎r)rMvyKLoV) f }e.gҴ 2fgf=;?F]v+*PPk³|Sޘ﶑4y:rn B!c. *J? e)=0oLg}-iJYx$ɚ oࣹ#ݿ@" k_dؑ%Q7РӺͥ[7{%No ANa>m*-V є{;`".lDvfοԠ8_}z9t @l&Mt1Yv\B!umP a0wfuW eb GBuCjZbo$&%:+2ĀT,HvƤVKf8zLqv?B}( \t_%n>:Qs7n#5{{--b47'$JwA(E8\ bDCb¨AҍT{gNڛ͒")jd7z(41/=i`}ъΟiǨ I~@Ԍ~v wl$ܱFE{l0m(6,jg&ҫ#Sܐ/Eɘ8%jpP7Q;I"ό^kpqj%)SIy 6VKb5:4Eks}is7ɂKJX_hRy 5i =^ǀ3Z9##D̛M5^}ޑ=wJgNSRƊT FrdA OR2^il+!>^L48Z^;uxؐhBS8#(*U) riPׁNI kiL.h$8Kc Mr2 "x,-BgLH{lJ|4A%pKb$o}F 8̀ { ٤i3ζ0e i$Ei Uz`sv`$- ʷ]q{nh29$[в'̽iv<م`6alR z'RѱI5#w@J˞U9RGҶ|Ww::׏-/@5gĚ΍Gһj'tv%7 ƥQ`1?J$5`L(Fdԗ:N4֝ 2 @ЎoJ50"~Maqm(fMP8M.jM*8v7 ?*_ÿT>Ʋ{g?&4/Ga_`5weCoRd{O/R= )}K6qr[$"7c=37ຯ0gy"ifO ӚPlRr ǑTD=JKDQJ 2AZRtz L|ǕFd/5 I]8:0{m׻[78s1۝"=!&+PNцHtr\X"X; > mВvBt6eIʏ&JqZsr՟tF!n Z$m^4p+{-!O<4;D}eB3i(<}umWq龜(bwwXeEj#kboP#Q@ G*kl,d5WV"q}APɘiߢc@[ɛ_sXxT}a=Iy]PCKhpB/8k°Hu9̗#/~(!m*WV)f ܛj Ĭ[0qH0WE`Ol=Wx5/d9eξÝxT_G F4E>>Ʈ9OBSRLgiO`lN'%pgHTkP8|Z$ڌ0HUii.ZY{km5cWX4KF7$8CV ϝK +~K_J lܾ9&> XVPf]:^,B q`=Xk-, tA5v\>Z9\Ԛ(sݎiG+6FR$ T,쟒> cp4]/8QUgJ)b-:啓<FZj33&@궼RPJC^&6\XPSr8gF *;__CK>xg&W=_Ўw\E*7} lV ^v.ΡgRu RJz4~tBg򦢠,) K?:_lvN#<:Ԧ^ʣiV8Ǟ_h7n3@LRϧӴpo_řH^7xZs,ׇڿ:~MAEdy(t=?6ڋݨboгDh: Ps^e^Sl{sNMV X$D .9}{3Woy&ދo[#͖'7';gs /pJtyh{/QՐSWG.^fEn_>v}i&:VEQIZh_ D: bLɚ/H/w?ekӯ]^h=chI`4IT?~܈BͽgIFLay%JLVC wXp Y^1ˍM A<F[0)1'Kz2Ė]6|PwMicL%v#<֪wﭷJ>&^Cv'{J޹HB͈% %ﶔHLB+4,uL&-BϵnOF>ێ-ء=ƃ CH=TFY6v&գ{ZFa=EF̴go&qUW6gX1ЅȨkOsX'o0YһwܦҒ.V[\h OZK kTXQLC`?vh&[W dֱ69 7ʟg^,}$1 3TD)] D׽<_Eڵ8;W#Rņ C.}mZЧ/JQB\pKIyV-/ O,:&Zۮ.fиb\3W;9{hz&:Ntobl!UH@!}&FJ:aoʴS6V®l,ⲷںRT(q^XGG!/vquwd) y#u\RYdž֫(N timZ]ǪOĺ_e {#*I&tJJ3[-2j_CgaV] ț^CڳabTjcCp1[oӢ1: / ؀6hSk0c}kS-ôG ȟW9#I%\\us gahb*ؚآpD9>] gi,ٯ8*Etpw~VsWcO2M6pZrmzucu OG# w&#An)WіL}$X9~N48#|rwd  O&'&2b72ǺuMTU?X_6]ƴVQ5١2W>gޢ^ zpW~+D]b/׫Otp8APǸЄȺߕ(`f v$OmĽK߰ae‰"tQF>Bqә.OLv8c3œޛH5 'aR_Ym; 7W`D_ uD q{pʛKK78?r3YvsO|< al__H9~V0`|r%8}#xC"@؉r+fk}+3GvKM#YBE^PxG~Q9U_'*_+6zYɵl+6[ 4w{znWC^y^F(U%~Ob[v,[q<8yn2;C]R9m`օ[d!i#Vԃ2z\!@_O6Pg$/Ĩ^ [qz~UBިr7 Dc |.InAdW>?ȊI+IeI 8b",f 5$ fR\bćuۡDrqHJr +ěw@kG~4/|yQ~[ТS^bVˑ[!ee v>z=+KFtES*K{w_DӸ~ƹc$;2_5Gy/Fֵ_xͦC8_U$nS5EΖKtHeBSΜ3o'Gcj;3m{PMff>`AƄ#i{1ƿq Hx*pM?3bN5)Ҹ٣Y :,޷uٳq%U7~F*@mAgg +Б$lYm ΙXlj qC>U`cx&xs' o{^œd:u:$Mj;j4e (2}n%joE99r)GʚcH FxWo~ڝ<]+s mXZ+(!1\ܰة^ ?O|X4B!ArD̏:2 =b%}BD=F #<`KNu__':?hSe?ؕ=U(H ",,[c",IReCT aNwjIM|{idB䎭K|n, ` X"qghJEaif?ADvh"Y؈bg2@wSE- = +@xu?7܋-sR#TgA})͇[ Nl)}z&R3ZL[rzm~kk#o!K͋Yy}2( V'G:M}uE,vq! rcRShW?2aӠDQH4[ԬEJP?P|GzdQje7CHHʼvjhP#Wt>>ޚ`2sc{Wn%@=E@ۻ- P o:شό2u 9rUO0`TK;ߖVU#K WG7"av!ȕNAx>/z k< -56#3I|ӓu NKk:B4X-J>}m&Dw9f)esW.9֥ ס͹.Ap7⨭Då\|ZTP\:n=4-񡛰~g7r9۪bЯp3"+׊yY'c`N?MĉYYLu:*l 6-6 KݻpkayR&^ ZJEv'$f|E'rcc}gdpƞ7qh)~/(: u<2'_ĘШ}rF5?퇝$u#m=YuPPTssM2>: _!rK ).4;"#d9_/OV;;ټz~bӘIw%=ۻS"A^/Of&z݊t2yˮi=@^tNK,N}4__n&j2vzޱEoqV]ܽwPH Tbwl7섅IƻV_Y3rqWqLLoaoAPeMpO _##wJFpl^H^#T4CBʪmeqh=}65zZQ'yiPv@Ew' !G΋WY$orЦ/ԳʾC~ x=3ymr9L<%ཬ(UdiP _+?o"xLo/eC~Rސ(d-@}Zvei/|{ l^T⡶NX+$W -Qz(yxئҰ߷цdxq6)=-]dzeB^ t%c%ſG@Њ1/G+4Ŗ#Q992Јݼ-Do~w ٙJ3o'\,H 8]OЭg9{dĞOGT2)á ~8#$rvp1(tbC wwxқNt p[5\ W\4C=]K3DiU 6zU6{ xí|Od2V|pԦ3'dsGE5 ?`!aҖyI«E*UYm`r gs%[~8goױdzv?EGa&nKbjY 7,zqBW*>f1,rCͷ>m<>Dnx$*܊T<1` o{Vv{݀{65W'"!1˲hv@Xi>yɡ+oUv rPםGrIBW[^C2qy${DۿkoUQb ' MKDn1BE͍O{z6,'>fGz`SP5c`Q?ֲ e_v+U|'92NX-P^ʣ-4tE %[N Fa>s?3<(K"|>n  ]&S {Ltڬ`̮Xk~ "9Y"QW~} mu2h D, +Qh6B!JPh-|<րb#&No]q FbivQwLm`'!.v)ԃ o$gd~|`Fp-Ma.r? >\6iAMZiPz3÷,6Iɣ,p2ٶ œG@#Q?*"?!9r"^c2p %H+BrEȱ%,̺~{f*T6Н^eihi&r=mlNU\)}HiXDFHbiʥMXH'qD[15Hᏼ&v0/D N2` auThTDF~ H(H7?}ˁ֒C[,+HՖHV%"‸Z[\պTJ0{Ԓ[e` 3UƋzYX;[8 >Wb}xE eI.o13}h)<>#uԌ%,(7Cd/@+?#':^9L˿|Zj?m^}z~GrV5qkNKP B`Ka7=|e:}Ve4 nmqV2~פ <EȹnDUd1~GѝuJJlzA6~Pmaq{x[OZL&OXx$WiDeV$-@ٷƭCf[! %Ok:SۻJ>pnkmbz1d$Di؉C?5miMci2l o.,T^ gnƤltbnEbl[\wUeӠsJP̧&QINVDiNݖ KalϼzH,Z6 [$G4ئM r*ѨCnlAZ Las^B7y+p SbP .3}@W^rz8P˫ \\r|ak j0;4E'MGN(.o!Z39KnUH};7 {*d]Qe1mݢw3cq7 3h^N:QȉEɨ^~D2&[_GhVvԪ4p~!/wG7ϖZȃ7"}l >AZғW&F(PGy"6vrgRkdo( 9+bNѽ{ol!|EĐTjŧօA+gu*KAʓr-UY+o;DbaofeSc>mȾ0Qy$6mJ↓jZ:5SgMJ&d66i'a= bh b9>堠#S u~\$O:kM qL-_ Pq-"}]&>E%ᐕU\-$20Ĭ)RG|d_4 xꅦ\P(AM.V\x[~"1ͤ-Mo}qhԶ >F`"cjb0i ]AkQzʎ3 0KZ7[{[aB` hkKq˅gaؙ!Z%x-YV2"vCϗ`*4,W.bd5喃&%0 AɈKA5 /\~7-1imL5 t\ n:/嗱]Ŷ_NRGjǛyGW#4v짅]Cg0X8[mHA?lb}×ƄXhEIcHo. bW[3mFc3ƻ}G9qXp٘f8\A3*|+'p5< =lWoD/qހ?IaI2ӡ 6U,#:SQo 84o )6iۋ+TI ujLó+EPZQ:* %Od7!Tvw'}WPp!ALݿ4?Op.Z9n<  g\Y/)!p:R2"ur4-{o6I~ |?40ck}o9!Mr;ڙU@._% -hup*4,kTF}k( C?+6(5=f='0g+fiW- f΂\}ߨ8+.9cKh͒P  7_뉾9sM ƅ=7C`k bq܏0.]|>33;N{@ 659l?뫗Le))xYA1f0pg Δ7y\ s}:@R1<>)k$s mP-DE:tW44}*&goO)o>Vg#.ԉ2R y-b/<4ZfERhYK9xľX +F߅eWSr\YTyA. Zլql:b 9^ȍ@Pt" 5DˑiW1W^Ġ(tTT>ӣplڦhjc[Xބ|ozvg}M3d~LM^U9T gIw2Aҹ[w {PZmvZ(ݔc,~T6Ҳ8c `7(&[Rؾ?.Q6B:/?:A0Cv%1 5Qqmm4^PmP+9}吏 t޲mCp [T79xlOY_J2J.wz@S"~yoേEx !kĞof~N's*XRŌk]|Hd~SL˹l&,QR 4,yٰJo6 TtWHs+x?դEU.̊kPS۷*JSbiYcg17ߞKjTգ-Nx/gFEc<r v`iCWM-/eDBzjWC~=N GH*0YhkmTn҄V_}*E u Pځz㽸 dy'K3 ]#B8/Ņ!E6: 0oL#HD GQB_"v33Lj-ZP$sNQgfol/m^tx.Kx2sHpΫ%ӘC=̵l8 t:0X# ū4 fg>pHӋ-qSGw&BCp-QC䄝x~]G ؁}}SPgt(zi`%')p[TcRSF%E=ҫeeSi6$J˩ f~ M 32_NZi 06Ƀ1%fRfTE|^Tspc;]-I`!\)țZ.pM1:Wsenh 'T,8cLA:G`\r{c߿-\HWYF#MQ$MG.R @3J6?>h6Y3Ӷ-`Z>D7FaGgk?k:؍K\sSPDzW=לfS^ms5\"{IEgJӅ|նEο;?p }#oSd76y,^A8X2~e8mb9a%Gu*D #(;PqO~@Bw+:^UnWZ b#cbFo R=;;1yՀ2~ak 6DAVO+L5 %fnB̆u A? ~KX4RP^7|Niȅ>EU@vS *xr0^@-r[>(U]Cᅭ p|nڐ@ș ;rSDƈrlFv`U O2XOyۥ$3 ˬ \G9dK_tapE0@[$MPX&;PiqL`qb:)z .iUyӨ%,KxJujFή-8\tw59ϓ:pJc.JMmZ1heh3߇ɯrdumdmM[MJFSC·nC'zp~R3gG z!7:|V0dى~+K[d͓]0 :yd2do@M`F 'NGeGJF*H:z)x8r$ٯ(vm*݌՟ŀ2m/uwL0c7,|Ĉ`09,Z ayN3t@Zfz!>A re"ľbEVlX븯x6.6uJ%BHANeD}e7zD44g}ax752dh3K-~4y4 Sux!no C; /vY^^c)1:L#stms'{xsVkzu!>gy̲Dk c5PWi!{'n;H|BK{%e=iJXz4_8Ytv:Q'$'&ÌƇ8zQ"d-;|U+IeOӸOO/D8=#ME8 Y),xzt u֑:A@{Խ_ӡڪKiuJsim,KaV3Zmq߶?NuzE=mhHQh6@/E0ytyh.֮o8)}2HtW_Z2 t_.NǗ{:)B7c a'>uDS\ ڐ~姬cŦPlQ@NrF9V.6(HZStF\&euS/n""لyHnt%d Au4f!x'I@H++&tH? ;*2sv wKP=dE֋#br6Q{CF׽ȖZgYZ7Ds`/N6\v~3^e6nu{'tfT6(p iy_hl/υ5Njg@,@Ao4v,7W6@yRZasNOҬ[AF׽,4Vt*U*ssZ^$,{JmfH\#Wcvqf0mQ85F1l!-24ֹqJNsonV xl[|c $(B(NSHY-I `pK}E}>V[UJ9 C:B~M&WF}~cM̏ȭ eO*osG&^o(yyvP&˙_rg/I\47A,[7aqSG.G iWw)% Ddi|0*18W oIΰWB18'ѯDRyܙ~OAwk79W͹;j@fz}ڟs+:6Zw1*fwxޚƖ4!bwpt^\McF,/Rbo1eY&F+8z$C+G;k zxRPt^abvʥ Vhھ9Oߠqǩud|o;Y*ǗA?z5߈QeXpEzx‰|nsgH}i/wJ?lv4iOccpZ>j }R3`@T3. IvGOR]퟊&%nX*S@/2Ò |*b#8NDH'w-C?aFu0w_Oہ 8(\GD^0`R|_J+l;Q:M1?Z/Ti)LNгWR_D9r S΢ǿ P 0-@ ð)6Z}r՞ )b1VgH yD}'vGOTԶߧxJm!ѕ6?etDg]A dqRvǘ0n&U/^͙(^d0?`"]|y/4 T|^j!kSƤi7f7 #8MF(U!XQ?F |fgt̵eRLF&mHf: sqs"X|%NwOHEv߄^9F0usIX6Gf!( *:!VC+e'-Kx|~ -:ryP:/Eҍ|<OMcxB)a;u (](&E.klK _N>6c6j ҕkWW֙l7Ga,v#wԌel䖜w,93g}_^l1*MUc6W'>w횘e+d ,Yvbal>=J}GA OAba[7qTj3MPvEoqKY 6VH51kg8i4U GLK~ʆckW=F>1ֈc/u*=}K=nƄ;~LZ^f^h:@ng}au1{__H~N ?V=16d(pS I24tE jpIvv(]W5ʥ~:Lү;Or4vbjeK3aF80@9OV-. hFa[iTAC^[}r$sNVT0ioٱ#7gZUz,ab~5x/*ZuhbKsY[u6y_6 2$ԻKF i _5̎G0qG!ZM x<}9C[:RCQOJ~9ګ$$ #GܡqE8 `8ml:6$@F<D!-]% >idΓdcY˴~mA5,D4DtZS`2R M14e }xY~3=~q/t~yiAV{Nob&ㆭ?B)m$! Um˝Mxau+VIS"qBLͰ2뀛#(=[P (r+_YMUJ*b4ecxUr/$G\4TW1@R* B HМYv`1H(O4[1[Jݼ>T$UE+Su1$ mU4ٺ{KM8%OÆ;p&d9|O@⬝, R J!KĢ qH m#XhB/x/P8Q#QٔToZ N;/&s/nRZ[}@S.bƍg9$ELڕ{q]R ;AfܺɅ`NɢO!1)nbHSB)-|~cvcƭ>.y&ii]C7YUCm`C)yDX:;:TJV-tEcvS;wn*IQ(3f28_%ӌ 1˿ވ/Cq/QbԐ3a~:9sJ7 NR3؊R~YAg3.Fp 7i,(0ɓ:x9򂭱q?=I NH$@067RīnG;5tyQy X.A,@SH &wa*wKG:I[zr#@{@{90SX֜NJjZ.WE( '9=feKgs+FM@ -xW胠NY>4+ld yL*'T`fǐ0I\X#l^br+޽E( Nɭ _`Hk| ˃V/Zbӝ٥.eNoer-'L OX +SykEc,]%ƿ.Eζjc:WUqt!έVJ=<a?VuGrnjl^eЌ9R>)qDI=^\EM";r3:[-\EejJ2(&9/t b W]kU͜o-t2;%\ ZH sH5 1vd3gQبG D?AЊ^)F9㨍NK,o^ EӅ'6(%1#̆x\嶢 j RgZdvsW ?K|ֱ+[̞ї]lG9vRtR 4ݔxZhE5uR8aԕǪ "Ni7cޑ#ˢ01hrÖqqBt-M-#G#$ɻ?Et[@qP̲3wCL_SH8Qe޶Kr$KoY&))ms$U*?0*]?sjǰ*Ȥ)El~RO&C[l*6 0-f+䁾{GoaqoWZӃo0 Zs.4bخrL&q#"aBm"BRTw9e$fl{8Lq4*$`8xᡭSHtuE7I)-wtЇ!?zTn^9Gf .yFYbߔ\EzhW.0ŒVyJߨXpZ3ޕ| ѭQbmL!=98S|_7k_/Զ۱)p]8b)*yĻG\rՉ)((sT. 8 MN8P~iV1v;"h k=QQ%rNJ~Z;Jpk!kD;@gV_Ca7 7A(d "fN*_Evp.7ԧ?:{̏ό^dh`:LjṬA@x=QkٹsfkwȌ'L|Y EUEz]K̆w?PC=sL_2:D0lUk-sR"eRevFS> E؝گ /pCDD M{7I J67+#gva%gDx*CXi^L=QI2q,o#ybVPJ5f$HRn KޘʺƄk\f[ng1hutڞ&H+5}.YOspQ? [gOFv?sߍ2(Zs'gXck @5#ɲ#\rwmN5":-<)-9C?oI3!;UdT:I:a%Wa/5 Qfe.DKJ CA]g%Z9kz!\A**Ag~fp(A .s8~?@FKikޯ,?'33{p ֦ h|B;ƵdFKXc:WYǛ%Q M{!Uag!uڛ Mz(/V/Ĩ6w!Sz^OYjڤ{sSun|)_0CBXKH}j>ASbA^B]9Wxvo\ g:q#\g̸q?}EЋ1xiahd-BBHFIεW\i u{$qPkQ?ήq3]8dƃ6u>0ֻӬ;X^kՉݜn84gT8xV(^}>jHN?ܥoH"eN7 霛n'Kp ua:4;]]"-+S,/Ι#xN8U`Jde{^ @vEz0bP§ P%*PK1XǠrjؽf{{b«)ꒄ,S=ڿ.ě),.׉O& y z,~` m|Vi Rl;@8GIct[KezFm_5 ʓ㓁%JnϢ\, +ސy(HxW^! }]9λc7[C]5:gXвHPS  I0aT5c,>5g.6. $!Aph=N'`X%/bZr o:ԉCҹX-T4{ڲ Y/OJ"2)os_ FuA}qւm)&2rnSDzJCȾ4{^6p-{?iD^;9k.b]UdZIR`for@>viX$4'S]V&ʶ0IǗ:;,ENHz}K'@YnWb Z8[reȴjd H4'7]Ƀ}Wq?\ģv>舾 t !^,nxu/A ; ZY_͖wYT/r..|(vc&Rؐ7c_KTuUW2)fq;N ,ʋh#_Ap ֎eF#lR]på~MKpy؀Cdjk˶9 I Uia5YcKL T}Bqig*a;45[Au0bb֟ =ob*6YG]%#۔伳NӼ_ޓ)PB.;n6~Fi k6~+m%q n]i:Wz,|>u׏)Ys/g# W~J.9 ߸Ai ?}W*,PLJ:HqK,baQBF4*նQ]u\Σ OgϧLw ȗ{~[QR2~cJK`ƌ`b˲BؑGB+Cğ#'AIp@,6 )_/⧗aRX_#7?:Eu3y]@J,FLÚ#L[1?Z>PfǼh7wG\8Nɗ1PP^ @GV#'#mh0\Uh&pgcQb,תo hP!;v`ɦsࠋ8/ciWʜ I${WE lƛo-׽ JV3+eaA[L}"_0>/{j{~WK3n1k7s?=(D!~ZuKwKL>?3ik9_׾7|;$4D}#9[N'ƛU4HSt9dH* Y{"^RF7I{Qi-c̲BAp& HUe\=J#ru+FTrĐ|QO] x\pY%C`@g[Ui% 6ѓmB~5^ ɒ5[zw/#=iz J< H|ᦫGRu֤Į82WVMͭ{2+\Ҫŀ{LpxGa(0BeNh-(˖Jޡ.E]]&;{/Sc^m{S]3,>bn?3TrˀFma+y8LHתd-ؤw;&@8_;W|A 9jein>YB}f%}êl,u] b`tga,"ṋQ"I9~9uE'o~h:ӫmBq_ʯFWD)In&)~~dS07}뇜ؘ4g!)I`D&6H- 5ژ#8ܲua$mEw]/@j,sRI*_$# Vʂ*U9jm.a>C*` tVڜ:x+՞`m^fՉ`1fmKΐk%i#l+GARGV['s-k^PC^+MɈBw_0;(*oWXTY o#!k]ОLT/>z Ƨ8__7ᤥPs03[o55e)Io7DgtDHIwϮBݏZJvNfy#w_&u \ [ I*6ڰY|2I_a9RdI)E&"({[Ąi/;ӈmd>i]:eǕ~>4}ZfyS<ǥ.{ , j(Gvezj]2-5wMUA;b=E+ j5ty6a @R9)+)$1#YҎsly% ؼt ^BP y8spkJ:?Lib7`;%ȠEQ2YǴ%R'42r-0!|Jծ-oC]N/?YH)|ioS `5ixO]P7jy (ӌM:o`ytDayu6*.8?P~;ZH ٟnnif5x`d#h>*/"dKv(dIſoS5َ0UMv)mz ȋ)-u0X{q2D68(3vS)?Y3^; 2﬍;s|mVu;G'&GIoj.LSԓpC,"=HttW~[d_Y[ûNJ]8 Eqsxm*ZrЈk/DOEpc jƒJ/^?-ll⃆)./i|Qv cU@k񂛶T&~[ohZ6:xܟ9Z@HTG2*dՎzyT:uH X> L3?z oD)ӛN%^!Y$f+mNЌ\[VY~̩W~^>zr,N;X7Xe=Q|U'Dȝ).K qk T:dn6Qe;DȵL?jJ"U0Dk>D})h~]Ltաdg_o.е_̙S3J22Qqt00bWҧgDu:Uz5 [Uh(4JtGM# 9^0 nkHAҮHOӀ'N"* l[ut7\Ʌ`?gA tU cOCN+ -|:߇[N G4t y,~tf$IYX bKmG ٛ,:c#,e[)ilC`?rYƅ%!nI]x&[S4VDpV4+`vT6+-vsDF3زX{Ɨ†KR%("XncFh,Ƀ #c`)3qnC3?iv2²w"2F0.v- 0tvtU8PSk5o$<M0IgPazDY m}Va"wn}Oi/dpC"WH~vfp.aԠUY 鏶KQ Uo+~4u"-%P<0>'}I2V^thm̀y )\6"Pe}q:Ik[&*%*yR;tSSU?NZ2g'_kE9iT%)ٛYAHRnA|ne \pɪ_'(v` MOïB2HJ#qۙZ> x]u;tH60.q JYD-]M9J^Җ pd6h}T"JSm“ʁwgԸ#T&l1']ɤD. > pX\{>CQv\?#i "AY`/5 Y&E+p&0ή;~_58֛[VSm$bU$^vGerQpLrEE8Tc Q)I99=j Ұ{%aYk~}BGw(wTSâ=+3E|(>sRY#zLwiނB~ ]1ʠa-`]0O8 dZCj F >ם!x >n8JŎQf~b Ώ<%K-6x5}z4䴺sQCdXY4T'̘oC3~iz3}& p3ЙhT,T 847n₋&]J\2)@ӳ&Ji}6рX/0Ӝ8sď﮸-V7rMVY*io +d 5`j֘ .Bwi]g &Tj(Pe wkpdFbR7y 7:|_pLq[!ylpLQP9lmi٨lIG’aPJ3^M 2t xa\ n.6>fjseslӣ'}X}ǜc2E'!hǼ=ɻV1f}/PV}[ZZ<{^|%h\ۃ[26{lul& XI,%; P&ŁR@X_ϓ!Vr-X3 snqXx41!MW0}y6sE/yy'"[]AW5#Gio}4LR,|b &qzS98my1Cq{~e% G~ \/7}yN@ SE,6OPfԘ8 !)`ħO p}Κdn2?LA( 9Lsh ܬ oG+r>CV5wJ`vpKaFKnQ'oR:v)IN?r/hlpHCUAQZ,Z=U1abqd5׊ f \EQBTF>:#ȳwP'`>R'T1#Ź7Ϙՠ:N}Nɏt~j#gPj:Kpذ*L_ / ,D>%1m!-+T jkD9 "$n ?0q[*kptփ̶%ONKYD17QŨFvPY|_l[(L箮wn T)::Dtdv,/A +|ң[U6X5@h iѱeIr/1Ӎ/j#&m;@Rb؈_ErjeY,S9n}4yޫe/y]ﲣ`xL^j+cCJ`ڳ~җfmJ6K/?h&C޾CZXApk~Xфe4L+3sE#T{r%$$% 6GeV%=D-̬OJ/G><*?7D}>T*z<$: u0+hJe9n(lw0,_y48_sI|+_=nicBUkH`Lw#8I_(Q̈́s{*uikHtOھwϸcu?1g>q/MٯؐopnF=?#G8*2s4)2x x}Y& 02 ^zppyNIݫ\s>SU}Y/hwKGPJ~~@Fm%#\ґvE{]M)}>*!/0G ,91lYTz6j3,n$,H鲬?'-ZOj Ju;҈>ptGȮɆ{511{W&iFd#Y|{~Y^hS|"|0G"}\U֍vR}&*hx#>3ΟhZ pHvx%Mg W*F'@tqͼ$nog@#Dʉ\V氇$/YNIFYZn(A5KyX-ԷvOVsi9 !?eӇ0_fE$MzAnz31&{A1[ǵQw+}͛Sʒ}VY!PeL'*ê,񟜩0k Vd(>;?:F4Ay^.rN6qfARL`rq=dڷc80GYZaVW;jGbfa9bЀD>z>Ks'Н =5]нԱaTL{X%ފ٣!qQE&M {l ~Jy"Vg](o6vH:j*"vƴ,5q PؼqVB5\\uS;Op ccL`QR9ibcI{O?s,5Ɲ`8z^\=iDH-y,, - ɺ-'7]`yUqɄNǜ{xE}D3s2cl8xnݼX֎k{ N2Ef̐*W"F3 {\d(:];Ț+L.n@ 9 z0i,tdӚirI3 XRbcPpxGIhod')(2$tUE\TˮdzCz{QlDpjc&U%{B7 \~?-P {EA66J(p[96A4 %{IH+j6[5WWO[ګ퀔1Gh]dyٗ@z*P7r(hXz+8_[v!/+%$Dהc?6[ &B@=7OQy9Qfmm>2 he2_LK& "aBjˆu )7py0&).G[T=촶bDup_$Pm+uvh\j~byZPO4D3Z_w1 RpSeGŗ4Qc]:UO釻9t(LA\qNǼTgJ Q!_W;K,CIhU kRoR fx|p6:7,Y̦QN7%306fY_4U*"s%:˭>1l QI';wZ< x@sE A2QZt)pl$"ԌƉ/#h cJaC|xMЀUP4_}DFieDEN|@Q@;8@묧c Wc.4c8S/c(#UT.BXY^['N\`B@įO+!i=$X463 g1)rRtC!Q*M7qEmAYľM|NaPʹVͱ./4N q{+W}jn걁oc#% 'ι_JEEΗsAY]pWx[rH&Q$Uf<,w¡gP` -"6tMN~}/W ,2Stهu/$S ޮ@RFyu~:W4' _,^tOqd8nđwPaQ?pOr2ZF#SbJ>]m'qםt jj~Lֳ{~[.|޴/- ^N+=5yk}兕[m.>mӬԪպq7(QFhDz G#K'-Y V= s0PdI60rrq,)Rhމ q*efIiR~j*i1t}k)X #$?qͥc_چF䌼 m~]L KaP7G e[*$ƪccCwceZ*h}=2J %oDEb蔀  1w$M@AvrIE)<߽" A"8Vhuh@Cx}:yje.i݃ZgEX1Ź6+b.} L"<-/iJy dǗA a*X.L14rHAp/]5neqv-4^f2'uco㒛ŶD NH/:-"Iڃ4f.TK#92EOc?]l3GR`a̼@5&l ];#lA$/hNhR75L, /:_hlZwʰ LL/q{c+3FjlA#!|' o5#t(BÍg#扽u5| j84zr #Q.wG K0]pW")h4!AƤ:3SÎ&<`RN|uZѴ^7-+:=sZg/&'H>Ei8?p/ u3{UEnj_g@CEYGoVra%oiAZ.%k5V9715lk '\I06UWl2:2N4#mVԡGߩ}~q܀"شuFzXOxE: vԳO*xJD h XĈ3Rv$tP3ީQ{jfo F2*ꛘ G0JDF-h_1bU1P?ޕS;Yw0Qí@dp >ݫnbR,NN\ pVBu =jV ~>$r^ p3m\HDyqz ,Ro+lD(,Z+YDPdsꅰ%ݠ@X+f |Տ/"ۿleOI7T6ѣ `gyT =+B0+KJKFdq Х0jEj`G,`P!dfT x nȉ>3~;>'.})8vsb >y7]u AvN zN%:avQHߍZ_iD;PzLfwɼ7yԿv@۳hk x4FnGJ#eF۟ D9y^+苌Cs I3/9$ c;B Oo?رى/HDs9U[?z;YF ;fl:`$)^ vXka4-w-7LAGF5-0}M:zr8D"!P\NJi} oqb}Qr8t:B^;%`#lj)jJ\ۢC,3a kDDFlp2𷔩qy|*WY5*3~e ғXtʼtX wdCr~2_k_q8=k7L|Pj06pXB|,Kx#D(8KQr=WoeRiU.g_QpI+Kgj@$|: ;(}B(WvOb]Β$Lw_A:ZIuvcn+wY\SjEW׀QR&tLPJ%+^\Ч#h"xX]D. \BUaى tH;@ISFʙ?,^w"]_qo3kL$Fϕ113DKs?e[Խg Pq~;8 G0r֟h`19Rq͊%aE6[sQcUyyg5Cg+ h+}YZ.ӧ-p r-tFXTSc w`PFA$X~`C?w; H wgF8>֏u++(|>iۉ.Q3F4WwC=WL?2յ;&f/v]47= ڲ!l(U!y͉4=!~z,K.AY.kNhZ_p<4Y/dfCB#h?(Бq]==R-K[BʌWInD D960~Y:DGz+̺)]ނN2q槩nTrr X;簭=Z D/8!\<AmHID;("^Lp_ jkI,- r؇.ThXJљItq⽞yugr*;g !* ў/i*.uw*{5iBw|@v~wmDb'ڑq0.:vMWee8,KӧȆ0%J&J|==Xfx{[#KТzݼ\؂xEX1ۓw&B_$ l6pTh#aƇ58L;\QʥV zgxsn$''|U|2e2/թ}>.BEWӯ֙P2o)j=p 4e.ڍ!0+hYP1ֺ|ii<__1"Ƭ+_ߧLI9#8ڠs4pO}) de I;%]:` %:M~QC ִ,yz1xp?$1,ibȾy|il$ @`ߴ21#1e1K,G_r3D,N|$A)9 +؅W] ê !`[Dh\C f|)f{č. K}Z=؋eެO2^;x3j40 mXyLCv!@(FЧh8Wm!t=%|L(ᐇr*ApBms8BzW*}ղ6c3?O4((E  SK\3YY]iNK`hykx0C\1fS|EaqC{ %xStY4vB?Ko6d9-bP벺`&N2yЎJIxILQoTj]ө{p%r[_8zc>An.5wYgJ |꦳n`j)p8!>$ 2ޟbI/ ޥaK9ѓs̴wN[$8u!YVPZ{%沖ܘRALd;i:sa:%f]^иpbaRL ?K S`,P im^.~Y\\cf+n {(DIpMsAH]S{pEmUa; ~qÈ9>ANx^NY4x{to7 O⎹Ҿܣߗm`ŸWVH]7>}YeC.@Ķ0 [%Tt7ewh7֞¾&r.&F rLձRI84-$ hyT%l<`rTFN~wWłvW=GaF{LF]Ic=v#0nQy&8ʞY}}@څ|>:q;CGʢ,DK::re|kx'\2rfÏeguZP-,$ )ztmA [50pRu2u_9AZz屵l2ǀFWi[䊋,SNԓ肅 "gNTў`1O+YBrW̟2 G7&&`ve~Y#b'B@/KRQNVL(̽tk,e:?DҌXycze/0RWŊmϤOq&xR%f Ԡ~1~5ܯaz1E(G߆\4EvW¡TS뫤n&Ղt@y^p3Zo@6 }^>+^ɣ6KaavA>Ds++4A\.3SSYqeg_J1l/YO{/wR>No4׭wՁRZ(phr>@1~4sIL&jEoX~vNa5dC}?;(yrıLa#X>[c{)ۍR=w]#MjI4C7mVRignv 0hX?&|QC9fV)z厵P]o$1gW(g%Tqd˶n@"y}F3 Y'.Exҋt v&%<9PC!N5CͲM9QJ>4Is&L}.e];f(f?U4\5["e$ cJ*fwg+{HFӚHM(BWY'>]yFR \*>O/qb3\{\)"s{psd1~)h{vr7,Y"c[E˸/ '%^}(vjBΙzZȓ,xl{g&#a乲WDڐV+uk<@Hb6ݍKԲݨI ;5Yyn(mFHX@coV;tɸ[aGhy_CĆѿ݃)|/N+pkhӐ{:]_.5p`r.{M:>/G\ 1`SQpg )E+Mi]5rG&a}&Wٺ֊2jqEp( |`wSb @ ]) WaHWre1 ž{Z(W:F(o!M'-U93GCԄ=~;-rM Qh.T̠PP˦yC>ޕ_ i"_l6; n RwIcy8D)~dZ +ЩoժlkƲNXIZUtO*c1U\3[8>$66?ќ-IM]Za zC@œv{b餃Y@휞kʼ&[8EiA!jvIZcY@_$- 7s:÷p0{;=M$ ")}'b#rl\L$[I n\/qknNbee|_.TWNL_[l>^ Vo3=Ityj0@D H,ؕJ3dO|p GD\x[!# K UC0H! ClDd!-T tb@4d~W!ۓa6H);#8PR24Zbh,/B|086d=OBP}g&Mp(~!\azyoT/~tR'pc:ܘ׮? 96o$Zk]x`U#>dui 7^G]͟IkA % Z"/j4xd~ vlj"¯.Fg'4|_5TȷEI ¯ȯR`hd̎;ƛXxrh] ɢqk <3tIaJB!Lŏcˤ<$8GNJ9+K j}!|%m1)VR. S#_uxGw̚Mr#tI#pA8%D~eb .cG[J+V4B|N9{,0 'P5$t3캱n 7oTͤal爛S;ֳph|B^T+CYesͨYЫK^=Q^JUw߈A+pGEb:F3߶ڴ^1}MKz U* 7cۙ$W(+f24 A sb Lb5fv5>cQy¢3IN8dC "1g]0U?)`a #n%(9CJXN2B `p O4w۲KfN\qef W~ĸ,^ShCJDZ@jҕtf*Gw62wT#S"W^@u[(.ށ@4$Sqv:OsNFc0ge ٌ9{Kg#9sMOh2] fV5f(b3}mD)Ax`:]'b[ޚڇs`ʪ`C2'T-#ഖ!F ]@ !)_~>ڴzz_sZxu[q4Ge~ 6 OTM&de}Χ(io-Q2AI !\0:TAm+l&H^ RSeY{=Gf =u|kzisȩ.86McnhbV( Š!AOK=K D1FʉEoa~^vGiV;߫Aoz!XI^#✞㍵TV;2lw9H}]|ȩﶋ d+dx A14wH2f4BR%At7|fUwfݽkEò|fF~)NV(`ReC4MH35诓Yj)Egt}}(Z*F]v֣`+(pmahD0zq)gU8h^K_P,=X 0QĞe$Ff6`\UfPBgf֢qodGsIC H{]F&{}Wu )j" w01ìJ5=>h 9"Qk߰߰#6fY6kO4JxJ1Me_C݀ ꓔ+wB!UϪwqF.1iں<ಫmp'dm;̃U*K YH 4iVWeFpnDtö?<,!}9vE)Q{1lzx.irY(!|ŵiJm#xc1ਇ:>Nm-"L-[9갎w[F=KAѣ0 7oH$Kdn+`n8e=D?w@=m=WV=d4]{?CYX*57Pg"U6\ <4PnWD a ɕK6q;L@0b"0; k-%PAƮ>DR(삹xklmt\?E W"ʻœD}p~?{PxJ4Gu860hd:"H% U"ܠa@bTQ+3\ ,G7*G 5 .: V, OaN<5-#>EBC4}D,8>%5kF8}UAUO(] B7~W֖nSP)Et ޻eW.Xw}VLjy+Co"7 A ŵdۊAC1Ov(ƚU@k&VTS}CqӅ, ) me\=!9$a^|1OR fvsJARR'i2v`R}r͵2ZV|=1 Kӳ#.*~x51B/o%)ϼCarq@(=jb+bj!{qj[Y<һmizD&o?*+<ߝX$EYynj Q*-˛ءNs;fe pC@"U>*Cs@p"{` OŖ`/S<ߴ4(S\ hTTe_e,hd MyA5gZ\%$j^'aw> ] ?1Y L zT->?oq+f2=MYϠVzԒq_ݧl tJEE)&-dgaՉA9j A$+M{n(;X@C/ԐRLh}И5лzlBV9[}0du Mob'|#|<XmG"ewU}WS"DXE1u8OLPgc;_}T8SG+FoD4P :k1lj,!=\a_BRW 'VqvM#c:y'adxieA_ Y^V͈5ҏAf+zʜ6шTp``{ďًƱsd^F ϵoX0j5׷kVRɦʋ%Q8Qg=)(f ?*x\ ɟJ~ܞxZ7!&ŕX.DS23ܖu#[kb)bزϵ̋MW7(+T7y!#p4[ǝ?M,; ]Q౴RJiX_Hj_`-u@>#]^XĜ@Zpnқ}4mMndvx$OZ"'93Cٖߥj{?dτ#G ~] CH8 jZr. 4kiۋ1U'*7h?aܖar:HO`5$e"{=+?\[gmH@cAGqw0Œ#DCyo3z5D< xQ Aw[ws ra-6#$ī0F z4cteZ D(lA!qÊ+䘋V:3ꆜ褩bHuJ<71wD0+6V+[;& { 8/v{dŎ}ΰ o> F%*#ڸW&՘琣iZ&#g?0`a>ś"sTq$&BzW; [d!UiR1UfYxR#J5?\Hw ,.Rߔ!p_2Q͕aC6(=xq^ (Xp]'ݴc]9 XȔz\^ƻ*TV1B c{;)#3GZQu|j2|CE,U\$~7õruI텿rLC|;_%)@HD Ұ#t)gې=_tƽ-`]ti+=- ?M1zc*({h4wj3Wr-8`:@ B)\HHō4Ssϭ, zOru-VT;$j"Uf,ΐ[BWIxD>U'Aӹ!Hڊj/r}Y5P(IFL-%p!lVs(v.YHO֦) >uQNcaRREs=9ߘ0Ms~vhrܪ6?i\nTeszOv˭8ƿ^,`k=0#Y`1&ԒzwQ &H riZ3 TOڧ.,7;<_p]Zk AtLPʗT7x]fN,bHlIlRu^l?DKG]7_ XAMl ` Xc$l)k>KN#ߐc ܄H~  o96m'͂jqT~CV{w~M؝WiaDr]QCPJTܣ*֡%.PY ?LӤmXvd$j][9؆42h8EUn"p H̯w2e/_[t(Әcގa;C1i3:tx@dRM vߓπ-'8,Ljh'S2#] Nu BGoCM_ ،ˇ~qzrig, 1yü$W3 JAmg%ڛߞqf0ćLq.2s=}r$Sa#EB ,Q)1/ {W;Se 527rヘ/46SO B^>^xaNNUTPij8͇!06/6ws@ָXʆN@mlc_0Zn*b|XُpH'nQZvG&gU3Uyr#?H6(cБ&:,: YR[eWl-}\\ۧrV JNꑈ@~ 34$ _T暞"F (Ca85-d 4p|xv4d<u6 kfh?*f/Glۘ[CVOtI$C Bw= " HsC3DJIFr^Llz )@)|8F *> orH}ZBf=ehEm\V8)nRĒ33N1gހetJEΜϣF5shb]pi] |9JXU6^[C{T'rH-#4I"z i,)AcH}fF͞ =/I&\c:}WEHY.BgK8?E=^{t͏))l<((j6K6N;Z>n(9xn[Pw1w~_ۼ==cFMBsz5Fq8b3?{, 1֥tXJU,mqsƏ΍Yg`owE̹8Z?:lVԕԒc1{vh| _YU:Y4PeȈԎ;za؈H> _ӆVqe[S- qnTfph"c@넫4VevκׇBH,dh<߸2'0c *oZ ɢ4Kw'`B4,x)&I1'֔@zWR@ŏgaEYrfu K;q|,co bDګk? @(43)-]CECp#?2nᅘFB53ES?ҖtDm59{e6 F`ثmca r%ͥWʮQݙޚ=7ZJ%!wv=:E׸|&q9!/+_[lKeo{cSТ 럐\h $1(~`^d\Э'*1pT۩A;椠X#Qb$71Q~ S]MU}J޴*"Dڇ;,`Pz$w?h gkjw筒xե[WxćSp+ @Հ ݹ7p`]V{w`k4Ь>kfu1/1Gє}Q+ |J,ltq0qPv|qVL,z#{ l|*L(ʩ/OaUF^QiBa6ŕb~s\W~FEu~'~-Aĕ̓*0Inrj'2WmI'f̄7[{9a[:ze4jy?T,HN * WjU ?3P0oyv~pO%Oj󅝄$^nvy8]샖tJmB#h5ǓH$f?P*˜qNP bHR\κGNa0>Ҡ|5rAU@Xs `kK"/5kw`*:BXK΢@!' B%(::z]K>y4.^\c\ ݯ %Ӎ-Ε;duOsi(}h5Tٞq1sU#S~z &jv`k F >|AlhһHqzу-60.{.ɒFDbUJo5P+jp[jڏT/S?#"zNٳW?h _{aaˋAu(%)k^B*Ozge˟[F4jv.ga%bɫG4C!ϲF|DΆ^&c~`@87&]:{;sMG2TAU YI+jͪ{~rf/sK!ߥn(N:@KIri)l(*&F7 j:}̨% 2:}o!С־g^q[y7DoZZ tgzx3R ʜLr}q !+;‹-߼X?L;ӱne#f _y6f@W*@#d{!KU7,gt tَG{VNS|,jiٕ4 I;۳ v[e޷T]c$ 9C߻m:*?/ $O޴fv1A C'̺@HyAVHh'L+5 DQӱDCly])*J7BJ 8kE! 'ꊧ4yTӀ0}: e1qMi&ⱕ@jL LUᏐ '#?3ǐ p2X _|f & f؈ s&PxzmwOCC{sH v9:wp"+?'O#biv`ʖw3U YejV4z)/TK";A y i%ÅB)bY<' 5);lu/P.PL*ۙ_:] )=A+4G _ɚ's%0NM|]yamm:=- h6cr*u* TDZ!nU%{[lIvw?jGw~@#yN=N~qiykR0 %9pZ6)Pa_P.7Ac{6T17ZX1ڵ>ko^^ W?:ϙ@ӗ\} |WT-8I OJ&zpLdo§uTq4 님[ʗ';O)_J*zpA.%yNޅu&th$V,㏑mD2e1#aPh򾣩ݍX-<>su9Yl.)!.>av!H&CEĊQ}NR̯sp0N̏8dzn[QUnKG̕&~Ԫ ('+@XɹX gU iN P~5Ҕ=K[h~v48> ^ee ~ <e l t1speeA6_Ǭ4NfWL1gq5-%Q!OmgqP/[1/ zgNNN|p؊ N?Yh<7$*l"wwtj[kYur&<`][ U)or3ΐZ^ X?pb)k0ՀX(KJxo\l,ˠ3"-:plt~IfD>@Xf;h*y2`|WKPO+lSݳLnasTV39. bJϯiQx,6B) joS2`ԁc4ViٲL&b.~z4< `g5|XC[iRt~V:B&1Q'cvqH}w7~BBn:f&e mJYnp{mXAWlqvb` Eu6 Br>z]Bu0% .Uu|M,aF)f@d$]R'  CqEn !\,]6]*F(aKҾ)D#HN Jp-WbF7 M5rxRZ‚Ϫ]RNE}rĵ H\H-}-EN&}ּ 2+xCH!H,M.V{hSw ·RҪ -_Y()xjnZA0Ob1uT-%"8RUVdo.?zZ! QgQ+!~q|AA [|m뾪fuoG8.s/3 (FWYCc1z?%=Q !3j|QTm a`*XU)lG Wrܥ/3F]z5IHlJc>!ԐsъDpřn{pi^jAy<F9kz!XA1v>PwY'|b Vyދ"B(Cm[|~xĦvT_v)Y#,4{w]bq.N2&n3r‘EQQḁ ܭtfMC#Rt,w#CţF/۞FpT -])m;Bl_>S^ ALr!ut޸Bp [K )X4KNS4t _7)ENAS)q~z߽_jL2oWX&bb\ \>1#%isy}٭瑧 @/믍> naEx*% J;H\s5Q&:=RV*q,@r3ZZV#*0Ι Klg\Mn,&\~o ng Uo+q"eJYw)ޕgփ&Y;:XB^1" gPm%5?N~><*vjWai̓cg6aZUT U]uy;k}V>2c\ An3lHæ8$eW,li6jpDhTn8gˌ*4sLQ"Dw$Lcϗ5p0r孪ojcBB}D|^PM&Ժ1yc=+䕎:MR͸p6]O >x$sۓ@=o:jvde)k3 ,F]N<OӘ 9%vBv0Xe~]qT* IB]`,.i~TaZo?@}Hh>3T.iCxg5:cqF 6/K)6XH[`>CQ/hKlR!jNGpq*B&ĉ9Ufo4l25uޜ`["%j@ӖX?HPC:pK.W0R'LJtiUN/j#?p.E9PN<"rX+ AQ1u&9HMc> gN=z&Ȇ'3QI1 =HLVճOt͎طc+]LiW;xtԷlbe]ZR%^ׇBU_ ƝYd|}9@^=8)mDG?:HhWLBux*K"׍;Qrι: ˨a#KbUKxXHN-Ɋ٭;9X*]k,Xˍ$wkiv@E1vH7}U c€ss!L53L8G1`M?*h 1GSE?,NX2pz ~%~oao=J\줔nꂶїi/WKc`ycSR]徛XF,$8ͬAa.!d`P  IIpSɿ'&zi  e)D DGa/nNggm vmGtm uH;ŏxOŸ17ӂ3pT:׏j*QÅ`NPt E0Re0. uR1$xR'r1:*5AA/2uvF^Ĵ#ԕ<%_$C?uO d]S/&渘9.Q6"άRc30z LPd]5.噉&!77gt^C7: &q}P7yd05.a$&FoO^u;:W7nMvRZ|0øCVsR]Ic>7"+C*)N0rp%0G!?1ds O%]Jȣ'.pdn/p;cBr+zdsD CU$_j~X7'ktlZTD:AjNyT~-sy7[aWE0S&$ džOȂgZ`*k8SgNܰK~IQ %:M|DU_1irwcx@Na~o<G p.D\nVN\ID+43k%` n@)֖t ީEKۅ5 3$񶈇;,%Q2MNzݾGKIK"Q t>j(do&2 8S'u0z =I+*Ӵe;]-YD'U^=wY6h.JM \ |YxzʡЀ{*#l)avX‚D `⼟BNRKaPlx("0\xXzZ A75Ci k,ܵhIRDYC?yg輡I p>) >Wẃd]-1d\OO3Y#sPl":w% vYhkzV7_>Fd"D zxÅ Li4h`Re1J[q6lW%!B`+]"5:DsŻ2A9X=a=MBIHǥ7_3xjüǶ SeSʼnzXM'I |jVt߯qn9eA:Η]U؟3MUD=wzdTP+AdA둑OlxY\Be 7&Qk!~=~a6f(g퐳b(Y#4diےy^%sUIKoW/ř(NpαX{ =6U G׀ɢpX+м4yM* u .O"2af|jsȋmD60Qe&y1z6ʅSӶ̉[_ `xP~ 5Fk(IboZq!/gjdO;N.ul7/ R7]TVE ϭפ$crD>r9pP.[nuGq D ΪK*N)soYsė4's ԰,ʼ ktMfyc' ߱眉 d Ciwsy~1[>*cO@>Yjq`$Q@AӅ+=(^wG9 sz3 bW/}k(Ev8}X\B,윭ʰ%N8*,LOeh`!;Z*#@>vSQB=3j{=6ʰx$7ZjmB żǿa0; IQKz(N=u^<dqdN"Lq&<% s jD, kh%Wjht 'n+x"dGаxU\/q-g:Mt'^LpYH󸴇RR<k )7Sdk(@fRj|YV ʤjheȫ(ޞ@dQ.rW:TF?_3P&8iý^ W[|VZ ?Qk'-Қ{9iߜu09vAOsq)FQ Gx=͕~-at&ۛc yޛg9k8Z ͻ*CI,)5 y9\4N y9𦘐 nADkg/JaT=3 ZW@WxVQ^uD(p+^D{ ƣW&A AdߧuFI\rm#o2$tefgli79+" ^0Zpö=Y C> mfFkbj yq-+Q8@S NV,MqެU[mps6ߏc#\}Me(ȬyăpL`ظ@_@2teHvL^W_7wS<o6` !`̽u!yi-HH05U])m P*t@AO'hJӽe:)=;;3_&9 \@El[I”&(f#t~u#?l[D(ƹ"qMdqo}_5ՓD.P*06>E3\i۹XONC\BJECBiezGԀ8Ý)^Y)6UxZNڙήbB#Lzt =Jw;sb2a{=Ϯ8~Eg B6HLv),2Vl=#9S@x+gIfv3phmp:چeD"n֝+ q.Wg.܄㱁 69?&iNd ֺWYa?p'0`և$Et꺰"7%Rvl%&2j`ctPҗD"6-ш+\A$^T/n>ɼ09H[J&?uWu{/XD8lJ+ ȼ'A^̇S3NJ$q>*'$)->(X\_~otR6Qg8WMB|!\1hq>s-jβ<q'Cq]U-ƬvY[$"!f64S,~xOE*_8t -c5 [:эNfY&G-@-lwx% !>N)ʐZE]]獦ׅ@3ԉ܊Ui[EA oRȈ9v9Byڄh,dM^3Yq)ᏔiZ Hy|`@ 6q O6Lٞ[=EB!YP}dn)뗦xNFQЫX,?ō1? R$8U 1c7HLß^+tCQ/r #ūJy s#:ސGBV& N Mo"MV)tFVԕrSHi5 |N8RJ}jCrMr8IoFՏrp7&[۽qG;^}Q>5Vbu鯅PT8Z6&hoܬN3]5;z$\<' dTgXL(mAޤhI.Ajg\78# eNxijK:%zh2?U,% ˫tf*Rif3 -istQ~G!``į|>G]hTϛU{eю ;Ly'EmBR+<&|mw-H_^9LY8z\qf`1 )nCMǰ8%c/n )Gmo/d"9o,~_,>dRjG^jk4>~Ж(fO,V/xGwW=/=6N͏sC3%hZ(Hș_e&]4`Y3\ 0?`׉V#2`n{5t/Ȑ]M0 0-QbN)$3 M,UI9MG/YCo t ,'/捫PnhR,Hm&G}>?޴큉dy`Z'0[@am̉z<*Psؐ1{L#BۨxQ1؁޲U X{kgU>!SCB)r9(Yt́0Ҁr@a%9L]bn)UӟSGr+ !V =d]fҵo'eD#-}l1i$d ̍i=zG;(! {:"%Ϩz7MTm h) W6t94 hw:UJX=l>Qd =>E>bm3gXm,i/)3“Ci۠΁5{ŰK(oyScrB=B< u*pP4W.΃ˋcRcU</if߇.qXKautݛ-)H&2d~$ɕ(Յg$@E֙'[a䶳־zn~ 9A=MtLWQC^t#@Y_u> @Gyډ ؂d5{T8MND}WUҴcE _E9@Qώ@R/{xV~k3wEFTxU5W 6AP_%uxj3S~!dk[[`-B15/f*67jm5z G?Zf*yH؊sV4F+޹ 6_X"wf9jo [j2+n5N 0H"?i@*^$ ./ɛP*!=/b˪,#1쿔2"ܴ Uj-+4k) {"jl.~*6xz̵-reg zG2::x- KNUsSɎC Ճ86;a?S/>k6 IlI(>Z3RuG[Ccz"}:pcy.]Yb]l~K939-5ŏ3T`f?쎥:? 49 ΄ f+jmM d2gy 4[mX9nĠܑ6Qt!4tVG'z*D:X;L+B x1IoѝM|cz5?65y?h'i鰫#.IـJ . :hRo:M)*u|~~ VboWg|g$YV1a1ԀwVM&ބoGѡfȯ?Tk3jzy %tr>yL'")f$lJZr;n4)M^I;9b72r2vS8%-^A3H5^) 43b>}_}(CNpj{ Ft}> -)!t+Tv~"6aAt#)GbPDUkHg6n2Sx=Oti&pk"Y[ƁveN5 .=I%ƧqKffctg@2g=Wۘyh {_{ɸ#B3u^#ѻ=25ZøLê.2ctԱF 6B ?K/?"ʉ9۵sȀJIɁ'n-Cބ,_86o1=B~R#% \ !DUg- # b|0ԣ{oTp2k]-R L?)U:ߴmB@QR{]눗dCb,.EZ/0)NKOkz$a` _aIvG%4NQ{mWuMQpV52,jᐹ51ixm$Z QH)˽ep` ʧ]M_>o{>xe>FkqC Fm/b./8p&H$&Nί,1Ѫ}9+[JWD[]$Ց}ޤ[>c>,`3Ɂ)Q,fC =x'Ck!mX UWg6E0@y# j{<ɹqF.dк/D  13lF W!g.NBNaٖlgq7zJ4:@o ,P2k/D/Wm BÙtx8c.Oig]΁pـ~M$}J/8x=F\$eF,ts@Onh)QQzb.D/6==6`;q1N2kS+J7nJb״l\;ux 9?D7+~cv;s޸Bﱏ &EB 28"9W"!Lv7,pg:I#Rz a6ƪ#Q+H_7 |Ft|߹C8`ٕ2n𶮏~ )i|U(u Gܿ9c9XZ1_!@~ >984<\6hd`R,wtәHYwd9I݁'A!FyͤM\m_9kH,)G0&?)"ѳ5|`ӵ뫷R4KY~xai94Ԧ$ ~rEՃ< Q_Sia_<#kv<O/ aU~?g8h.zaqH!,4-wZ XN|Dn^U݆}xb掾Wd"zhXs OäıA+AZQt*Ёc<& w \GuQ0L (g)3YK-pc0X!W\?.e-vîi'<&I$Btl<0Uf6a+*/1g6AߙY1Ϩ KBK56OnEV6UoPzR%.a^MhАH$q!(%NݷFbPohu8Eo8.W ?@G;Km5X*ef+oeۇӷ>m `N2Э9约w +f]p¾,+[_>n]= ?`Z) /Q/sRQ83JI22\yzh|xicĂnaiٔS**"j3>X$kA3eoQ66IzAx*H6]Tı#v7 ; |0kxIߥ!Z)F˸eb ;[',*[wT`'&lQɵB8B G^cPD? ^X%/1eݔV#9<+8H PXh)6׭:?67OR*EXÁ:(Y& 3uqVoDl26GuLRHK c4Q;:cx9X1+Mܷo\NEHtĊTܿ/$`UY*[#9 3;mlH&@ BM= uwނ^UA *'ZpgUƤ! G(V\Yz 'q]'s:t K[ȚFjv]3d1NjD̾.ƍbwQobC3l6"#?IZ_#L𣃤~R?ِJO*l{xnx6>Gc$acsnT<ʎs}Yz:]AsoIe0Z#9d?v aR2k;JRx+.9n:E,6~] "7z yͽ \ W y"L;2WEKGOw͟zKa/6_uӆbezfW+~/iqQt2vJt K& \@;/5ͯ+0ǒZX-b93곞[ j!%n}?HD&ݪzZz^C7 X6PPgT}?+5"&StL/:ت#I- X9&%feiE^;ףAuGk:J`>?1 csF1h*CD[#<Z}IOy)@f׍ob9 {l@d-*_Uanڤh67E k-yqMR/qLnka&JO cGTfApľM w"t2ilS)ߜ1w~ ޛ6e[oyd$6F3N"L%QNk)9al9`r5 rr\C;_i:jxfH0:AMH#..C9Wzڡ@iDZp/RnsT p _% =GxtA"pf4H Ě˓Jc;j4^Un_;a}Z @cV!u_]Sz[ r*7Y0AkNEeW3v} +s,\Awzv\ƾw>స"d}u";ar׎__|>M@%;BAa 2M7Ki;? z ^N7akAZjW#9lj>!6XKe) W}t)|V]4_+NpFڲ3o><IsZ]ߪydx) 5B(ZgwŪ Mk9n* >kwzR9뛅oсO48nojuo4&X }=fk{,mEL6StL$|X yEw At=Ư#(Su튳[&=/";BB2zռ<H rfOjYReAfǏ@.uvU[Vf"̛xj~ɏޒXNѓҼ-J ݐ͒70f2LOm)A]܄gk[k_B+3[>R7UBlFjo7Ni~.Ύ;4SY?' u7V9nqRuLHa} eke**Yx5v8GgƐ?MvCܴR$4k␒3f?ea #e>-A$GָS1kk+(#Pr B ʈC%I_q;E{^ӫvxi{4 >c)(sᮧޤMKW谡h;8 TcgZ@qeIuSSud^o~!pܨ2p_Â[-&t- 紭#i\֏RbUY?7CK}a!0"L<ɭIx]"ja{N!'LJS,RtˇG6AZd6 T3+*AQtˏo>У3;ggynhץ a|X%hS@J4ߖÛǚ u J/ Q (v=FRbEtKɓNIZkES^!Ԗ_>IR$١GF# Ɏ8wS:Xq;pc]旑IAsSճ>D XYn/cK5hL,b=%/RjbƟ@w:~+d,V;si2C6/+ydW3OR"H?Q]e?48$ $h|ٶ&%mkTj}w6W)S\4uePʇ37`!$GPi#s탈Y;޶m?e:Asyh6rqf=!Vl>huH%0.c7r A\E:Gb+-©$ˡ资ǺR' . |$$I[߃!<6. yo4b+iKNL5Z2g$,% xX(Zrz[jg,4K8EX7ͲB檸SuSD(ShW9NkLb7Gpas2< s><-iPЛ(h*Ԓ8,*oMtl΅ap=&Fbf#Xpa1,F{K\ ?+D[F.k3/p ƪɐ`ʃ<9.BwbZ#7߾`h j/QcxѹH> 1:]UR!ZM+!urm($kղv^B:Z,L@x;goUɮ)KUn|Ҧ CDv2G &sIc%3B¿0>,)vjk<ՆIo:?ܨ\il@ $+\i6]1tǮ]\t"&lĭ[hJ(JUm:U-!kZ*b{kՒ[՘D>׬9Ӂ}@=  4rn;gmS:gypnG) ^jRRD=pdMR] 1&D<2{º-9)(Zذ; xS$͚ Ve]ݦ v˧'>XpQHc`RTX3$)O37/ˇ0 &T~qj{N+PPjdCxf~w_=/~'ᇤ"I?u %=fufGO؛yݒڶѵqdBdnYmZ CΊ,h҂W\`ϐad( Ot:&_i5C xJLt4{$@t#etiM@6SiX~N 5@afI=N:rM Jn~Ng&`2G6n0{܈7沸8/rT7~Xz|gLXuZg hd@~bzp>bA+3ԚT nGс"u3JbqcIF]9FRi]ޘ^%ʾ$OI(".^զxY";V>􎛬j%:`k*S#qJ( V,V# @&G6Z`ش mķWJW{,_$;vj):!{t8T/+22W1r v,-xRJ&lNborH߇J3.,}һr>7 CζFg7eҜ u/8uܛ,m ]M8#1TgN[fzQB3ѸouRkV,.՛M@DZ8 `W+wt5*>ƞ;f;^ &+P$6=!ay]wLGIw_8:z-{Lװw#蓘S) Ԝ] v]o  uj):9mr4 Բu~yTdֆ4 oYY [U 3N]Y dr|(uf3@*yضz$6C|[:WuG5,1Iv[n  ./ܦHT-ay]L R{r~F5rI+-eymc30,T4ȽޭسD((xdc_FN`7$ 刪W[PVpɽ ђ=#7iT"ۅTb ݉tVr9}HfԎB(hA]aG0/֑ț%Lf#c;; tv$G$TDOx!>;U[-BĿD`p5*{LAww1FY4 ~$EW7϶FpKXcUNP 66$ڪ.ӆRoE&Ŀǎvq >8 7>;tG~6tqkx.͙/5F$k} 25 1e C#6爺^]Iew=E!/Ж$i8.1OD1ju]\ej}?o"P,]'Oz'\E;&=g' [dOLnq{ASh~wRd;jx˼z⽋Qj#%ia'b11&m5sb`/rAL'J @-Y'^hY2L$1tp%~"^g>[/ؓXun"m^c\K^tA-wxzy)K}+B]}imPW[~e0*(͏2ynuAA^Vu֌K24Y9humx|^ҍB%Y֗ren˾w"#Ve1' 7IpV*]9 U{6{GP{oy\ZOWRnd`{7w~9Cӂ}6&բUawEg}2jsm +M;,l A&*!'Q v sE]1΁ k~p]tK=H']sAEk c@yX3J}Ɲ=܌k^As O擢rP- ~LDUc[!Mr~AOx@Kϙ/\餺VD+ˈfpkbZE Iζ)*\Hnz"ps솭o2H]ڃ |˅e .˧+>xQ (8Dzj,##Tm͠_>E͙|bSY>Ob SYK)1h@8kS`ItUY<>۪L`VNZ;M)B\ S/Xi9ar˴Oq=[:=PeIiRolxqRhŊ\ $Va-JiĽ ;;i[XEɝxJwze^J^[D9g%0F}>=}&:(Ұ+; &/5g+Rq9<=iOu1 ORJLz7SkQ\emxE 5%̓_C=ltLbuomL/8D @8;U:'BIHUАn|D=$l!MOErf];5]V\$9H,Ͱ6Em,\vPn{ d}̳!EUM" zNL^Ar:y[cI&*+}zZABwfq"Uf7F;b 1`uIfg-S* 1EK!>'YMH׮6<b^4IʢGrZS T|d7 Q\ xWQ(R>+s3=a1&,ae$>`ˎBN zpPOg4Si6ggw_G++݄J sW2Qt.$mFPL~[c.C㭠ƫMFEUc+4se./Y/V`58Mt}MβV [5@o >kov_,f8e*P!YPpWqhːF8D@j{I˱5s)!wťj *[ Dbx{FvW&2 늼}xT7㳝[QDi&H+^ tP˜zNثRBρEk(t@j tpO7?WvG=cōmMB m"߻[BOicD%T ?#(($&拢WW*\薐mGug&]I- H_u៴r֜ē)I[g&lx<@{FacIX󀥞G襇=¼1Alʚgt|O(3C iNB 7X\m\֙I FR"jօIkL!*~XlI s\unڜf遳v#[R$P~CְOYՀ8opNT 2{NUtBsdg;RifPA%hm1ngb8 Wa\G]KǦaٙ  'VD׭\=Ut@ 3@Mע8x@@]W¼|ԤvQ[\k2tz`>JnE[Ncƨf)`(YQsbT^vu=chrG5_F vQlbD{_| 1z(D HJ PlL9I&fENB]NO2eS1Q)2b!HmAK_ُ$KcZ)򥫯4y lh:2^Rn|{X\Qƺ#n @o7OlDr(8{^NGNe|1R4נkdLp3ʺwYԳb]f]"OSVBxt2 <峒d6ɭ>ƑB@bjq h̬Gp} lTZ9ę75d26o\$1k:wU7L-EmM.R{(-^?{f /ϒz1ũ%KDှ翚o˦l6ț%D`zÛU #`6S9;9wʮߠ1`>̬xt%d&`H~D;D_GbQÌSXgŜI&cQW]@Ƣ}Q$W'o4z AE_PMaQq~m(b$ߟ:tZ/3(rz F(/D#,~ֶ}L=+^:WOO Ԇ`d}$W?w>VX[4+$e~a:F~IןO_Oa̱hx|Kpsf b'8Ju.tC%ەE+%qTAm)ۖӲ~ FGcdpLz-PPXÖRxӬzw1jO"r@qsM l]BVw-V.o6{!]-\?g1OoH?&]1^t,+z;Ex80aJ@Xk?K<{t@qw-L+x/-1m.nչ=b\nHPq/ =^λCUay2m c;yXw57>lawh$FDe R# 4%v4"VPh }dJ˗㱗nmSR4Bd#?ByWYcƚN0Ups,g,Q|Fri:jMR#{R7g,&b1GZS)t*F[|A3]"$tx Qvo}<ӃΊ\ bTA؇$3(b+a3c'1KYU\f 0V{=:|zt 2>3$uouڮ&cgu3x5VE 8] Pb4ў\sߢLܖwI7"5|i@6F7F􂿻+=(h%%-ģ碼i0vUyݲP藫TF Ӄ=:wk׮/4Ao[bg9%'ښj0|2.WN*%]^J؄L9YZXT=l8T?_L2:k9ZN{ &!5? v0fm[i`b֝㿁w>5JbU> {8v܊WΏ@`IJdnYtxq`U SxG-/qqQT`6/G`Ãٝ@/aҭthu|YɾnHe<;(,?AwS>LV]H8LqP6Xe bR, -R("o ;$KwlxR |T8Jiܕs2&,7@$0Oz_ ],)DÒw|BbVSv sC6iwi*"Cp:TԐVAe\y-l4c{⭨eLLbINl9xVU*v%qy}ҷeOtu~Z+eƬQW:AMQC:^Ml/s @=`,+`V1C>L63E }- N,hу#UXT!pc tK;,(7膟gKi ^ ʎY-+Lvs'XjÛ/ HF3, _j/9?{'eƯ5toQ o|N^Bvy3=nHQϪ8sr;,oM凉kGP?{,xBJ}FnBd^ ^C9$i-Q&)4&5m]W,g#7mQJoB &/*r s҉|ֵ ^]h*l~a/`dLO\PS:1zнlqJ _8A&%6Z UڎM3JTJN02zɿDxJ(w兌Ϙ#5]H *n,O /KVw:E\ǁO9]o 8Ka%c漒^DE*UϿú8 ߽Dxڝ9RpU߿U^٩/=GWøX&5B2j[Xn5ROW}""L1-<7G#,Z 4EV.WlI^fA9}":ghiZy0}A}dW}Eq_>g]3NZR?^c3ε`2NW±m1:T[(nRk.r4Dz)b8t@N a`mbkkuu%󟤃ʹ8 $CH]ZGrQ7R+ų֬"A!BGxT_9Т ;1UO})j&1 ye5 Dn5=_[X"a6roޢzk c@4S%> ͛[Qc+1b] ݀uBĈ>AJD*1 at/+Vp=y,!ë[̗ Hь>^6/OڎUfYb/z"ڦXNITƃbdӭEHxZ yh8nj˹tlc # g MhsMF8;;Ζ(vUq_L9PCp;1HA`4n퉼M3b]'Cx\ui'<׻fwFE1RɉʙMASW0`#ߊ&-Mn^Ȏ,"mUG(ƣXBy VI r^T@fwap(r[wݻpq>GL'tc99D%*3C<%k3.֒S}ks{KxWJN`5"~Z'߆\l[FY.fuz'6 7gT}~/28" --&qIbqį%vFзơqMDVzߠVZV.Q ZgW 8>h|x, 4S -xo$$5_%EO„6z%/: /ž iӮ-1< @E"ˉL eiu>˽pG( ԌOcG0@5c?BcNE(3aSq\M5JĤ r9Tr(<P!^ d fj=+7d&UN3휿ԝtr2M_fvCګ~N8 %`4h" V, ׎*+ݼRT]|5U)!]* `*J[m]Jw{/H͈lvm\Z ,5-"5h-쪉¶C߉|{SSK"6!һBDzC z |(ʫ%ҵ%o~׆A3;p58,~7ڬYdcH^dfWWXv=b%G4}8z]ܴ;aҳpdŔe:MȤ+?RFoyVrRݦvЪm6VP{ pJ#a9.:&,u6!ݪ(5:mGuH%@a#U%d8$uY 6d4:siֱekgTƍД}0ili苙?Uxl*<DZ';q;Jeƪ^T-Vm6_E.ьMYMIR  4C5bȎjF6ЕGGW_5#?ba7n͍gZXf<*#wyt#XO%[ɲc #?F)\E߇~zuBtA CS4&S'w%q%IUp2;-QBQdp7ԙ)(q*_.||;GsRCdtX4eO=CqD?SilЪ Ng8fõe[ =D/xi`q8g[VG(lJ05Sϯ_vI^_V&?s (SnBbs(/5çT0zڪ5m&.LEta 40v':rL?IolN{lsL[L[/^GڸML=.0zfҼG=OA_NJ$sw AHT+vYq̭ʇ3+ z!2{OFGmK"5s= 04&N}h_f݋0˜%kQR):\cCc44}mA6bǠ;&x2S̾rS*\gr!dl% Co'JAMHQ)USNYWpj0Dm2/bA|w*,)8Ȕ/ۜ4^OȗW$/Dőg^FM˚#9T0Q5rN>;4.TM^4&oH0rm09]}nxkJrc9bB//v=e,v30uOD~FW[&u=rxr^&MuLuzFHbʆH8W*;|-lcc!y(1unHH۱V~1YP#`qh5vsc8f~ad0nt&N:Л8Fj %q,yDkrˠ8Y(Iچ@ ['e!\?'mTL-u}fDQ=T\i7yp%jaiEE:ZԐZҨjj8aOT|I":p|# >X{!XobI^@+`ӍJR>v&zGIu^Ո-vƠ (P'!P+:1oy3D7ح܏vMe ʣr2!{G-|_"[:&OJ=PW\;2 厂ž`C[ǒjVU5 L U4~)H'S \LHp?T͞8^Hg #hY;/%[q*HQŀ^Y7qYV16eMj\l+4 i'̎^$Y69Wa ^||am+{ >ݢ<ώ{TnT$@Sv̪m>x13<+TXvZپSEAۧ<3ǟm:SSz ܫfHkx~\@ ڦ\qݪ$OEf-x.뺘!mmSTXREH7Mc\/EjAGC\"hiy;R]_a}=ݸɽg bY]:B?<-H$8:7jh8/2Q|XBKI=\a<4O$q˨h@לszM E%&Bw[`u> {(ŀPh7P2M#6.Ri Vp47-8vڧSUb12i4ڗƊ`ؾwMP*i`'j<^wO\k&)SՓ⇆La| rP" `鎮S$#Fo?D ~Կ)U%> [%fn40*@/sN&nq I8!|eݏ~m8T,i [ڒV'-1D!dH~sfVQyvFa6gF5!9P1/:^B- x&G([әyj*lWao|U18/ 5nGU/%u&aN>5Bõ*Y(,w #&}n2-ٟP=疞.B_SL^(1~A: +.:n59:.JDZ4 CiOc}h[X.s3P#r=-`gq'm+&Oemefyb9/~f֑{)LUɈi L0SfG4;D),jF"YU IhpY6U"|rVaf f:_Vn_`AZV2F$W O 0VWtĭzO)w:o,!Lt?vEY; C"GzUWGk(A]V(必ZJ&ág:rRBP!\#6" ItbAII ^݂L-ĕ[Q~ne Z/ְt[K'c\;F(m!M=+5-|Vts؎6}j[||m C]6i\d.iNy~*|*LQQ6F G9OpƑ15)3)u 7im|T-]6 / ;&eὲQ.swlUV$"M8z=;hqr[$^ [3٦a7YV5?\Al;['P748ul֫ڬNƉσG+ dL49#:3NESӬnF,;"h~ti蓭 VJx,4bM aU p*yIP Ҝ_Ҧ$92t?g:iy^C6!zݼLܲc4D^}ey@W; :̦J`fwcG[2mcJ&9jC:3ߦS7߀p<1CRЉN؆lGrYϫoMGr+%i4C`'㖂JJX(hdvZlRk` a"c]'sXsL[>e*iyqnT>L2NpcçF*?x[Ii X h+76U3flQ8=Cȼ!@"F[;8IBhl_!897RF$9Qsm,ċNs׍ӱ/.?FDΨo Yb9E~4bZ>‚$DM6S!<N\pmc%Ƞ#gl fX1MV,%`S!%l37p]-J9% sJNg@&WI9SjAq \^ X~'+LU&֍!FW Svw* =aUIx%1~ItV2=uR7pΛE߇.7 0皐B=+u]T|_¬s//%:EQ kh덊{wJVNQ[l!Wӏ=F{k>7rZk=ݪJLVVKM 4H/dVWKToZ8ºܲ4i1Y&Tt' l,)Z[-VC?{O"e. HގT|C_q-5Eĭ 4zL-?~! 1Z/''P]])kYA^*Z)sG!5ޣIsygQ&51֨ q}~@<~>Ոӟ9mKϕS anO$'_fH̽>NIEwwDɡ4r5 v%1c?sEiM#g[셎+6_ns"Af?iq\ bY.A-yd|}J/2oło "ٸve2dmihm~6C0Z_cM2wZ1z[da$PuLAVS0kSwNDRT$,.SO\T:_6mw1Jul2dj7-lR;XW^ 5 7Hӧ$<9H ymf#3?{0X+Lf'2C$ 3 /Oug"_ڢq[$ ;RIv)~s%]YpQpS+B˺*,aɠSSؐ[UR{b,Ov(c3NF{Q9׌%[H =R?).'"^Sʏ5 glIuc{*n,Lu=/D-:-WR ]~Y~iƭbxvVT)àH(Q| -aZk  /*ώj֕n48ȲQS,A> iRH+ϐ #.|$v. g\pNjfC o wZ, \.mZi-jXR-UP7#l`o#cHpunշT2۝kLYՔWE r. |Vxb&x(. aD%9XfԾYͤ_hEW=A Ѩ_5|] *M:>խ0JBKpHQo;8 6GMrVxӮk QxXzo{ G"ض+~g/͞*ݫ{JAɑȎ4J[,맀y y:\l*;e c}&=aljL=QZ]z؋-EްmcWGh73[m;(4גdxʪ̛t2Uu1]kG f5h+^p+ry5{"c 7a Q+=~D#tdE0  A2cQ ǙҞ0H~S2&>JqF#2_'0f̽T!5y+m0懷GD"Z3+ 6-M]:KUF%%)Ì>J.{f$;y((JKDZw@Uvb. BC- zHfന W6:Qi%QHlO+PY%wDH[GiBݴ,y5.]:y0B\[H"/%.!A Qᑥ62ɺPh+F"M5*qNx}Qg5S&UӚO8 p(cJ;%{R }T*-WYoSewv,jV_Y5|hP%|S1.iiw^:cp i "!W@:0emkH䒕&܊9+mfDqG~_y3F}$4{+JﯶW^z0nد_aT>6=¨ryύ( ^-ЀȇU s$_1Egv}J8H SQ`6u 7wv;-Yb%mzp9*T W\ZMFE3 @&*OɶqAs)>kXLGh[j8 .W^w*u4p&<\r~*-i`.o*({uJm:c*hr%IJ@*$#q5f' 7\<nj[fn0Ad~Sjl"POԗ_|HxWI3xauo|v.!˩B͢j>uכGW?7ny6\pG~F4(S!ɒ݄g~ⳀjaIx,.3j2$\<6pEZw+c^6Y4SpD [Ȇ^:D(xDّYk9p&趏  iIRavzB~Qv2.zau8,Dh&%rT|GKۘy Դ2g\|H5u=bz7rRK^ݔͼK;ȹ3|tӨ,=`YlÀ8GvLq<>䲪`*>g^cV4|\Em@}FY!]l.pCc~L/F7{-'T F~ǝ"W8!1?gp29|oK~MN/89آ ֖}ᑃ/ P  KB=<_ T#^&A:l0%$~{3p :uClt0@IsJ #R) l, Y T-Ho/숖+tCKU_JvH AmX. \溈~*Mv x| B>6`OoG_أzyR-Q_W001Fp$n½o0[n/ڡ} 9#RɠwmC y%ݾ"6!"A?ԥ .4j{6,=s`7cWHfqpZ= V@gWCD!pY[> Uk)_х'I&<|ʋࡲؠ3>S X9mه5$KlxpeMsGjSEX`/7&(( C.vY`@С)ԉO\ V..A T@_1@efJ<<bzks1Ԯ_,LO=QđfH?x?d/0s沓]S}!}V7;VoP$da 1J/yhtkG]_u%F$Bh×]t1 YkF*c-Kr3&(j.g5ChfI Pcsf-@xZ=hL<7T6y,côT9[joYn4$, Ub+RkiP_q8~wh SlKtSpS׍I,W`l:s H9: >掓բa$$*ו{RPʯ_?@Q^)rY ^ug!Ӻp^hC=}R8$\4N9*֒S:&G++:ތcb9kR7 Qb'X˭q2*92*Q> H!(kuMH,Z:Xz1LX.l8.oF\h }F4NT6 3.n#ݹ||_21uQZ5Fq5IٕB%TZ'V φRG2c}9clt1ld΢̆)-cL;Y˴&*F{O~[l@fF٬3ܜ|}h=L &#:C]TT MH*杋t.Ɯ7DjRW;َ &1Õ+1߅+~bVN1)bAίU_ۆZ̺!nBrwTUB5n&,y鎣htYw,ce0zܔCooxjuڨ_фu5H eDSV}Dw`jMf'Up"oZn{BzLxrfBP4R. n?FmL1 7 ңL9O[~SwgfE?H-A/jUWYy? қ{r]ș^9ʢ cD 7"1q}9eR[oX4F\ER.d)ih52Be3mP븰|ʨ:m€l ( iJlP v\7Fcb6=%%=PnK!AQWCns!=h˖\:{][!81'_^nhM/rA,}4mzNt# TJ]ޯ.Z +'L*zZH,j#]REML\S\bn;)V8d9{+Em $ЛV7P<5_ҎSEv<Soc00h\>/6A yuO\o|e>! zL^ b d\¸ M*3̂|_4WʎQXk |_e\@ήyL,$mKܜϟDk}[?6`X^2iA/ZX (w;1i~GM|%#+}}l#~l$@^lAf<6=V"X]C}Ky$Ϻ퉼jDL~^D_Z`DAeF2Iq#Skv:f*{;o찵W2{S-xtqWw¿;w6 ]+] N}LL-k F p]+kv mUҥ q%Rk.5&NDt)*a|cxvwm+@GH#Ge53~;@Ѓ" K58"E+lEȶ F`מ8BO$,ȵ{ö2vN,yA GMK,ОA% kߗ=5l~ͪ!3Ecj4J[Tz-P! N p/:ih)8; }{*tڤ^ucoI4,C+u(Q\ ݅L=^*}M3܌n19y^c礍Q/cM?w__e[fws {zDTQeo R13f[,J% ¨P!|h}]Zw5jC[#w qwfz,>)r3! zZR%4ru#8@AhBl|lFAΪ"_sWy)spk68_!|ǽJc`lmE`:"cUp9S3 t$  m!O@so29߫.IirnWs(_ vϑ{0F؟+) Jf%v&G W3LXмRKgЀh)Rˉ*'u4w``1UR6>rײv}I)zTȱ )-*re$o{<;ZU[kt-+Ѹ9 &K ^ QXGʨZOPI= _άҔ?qdOp4jޗD.=<:{2Sl_|[5pK6ݼA|Rj9 =_{*>b0>K-G}أoq ,@i dc,{?ydd|G3Hj(8Px*4-6nJYќq+vdͺI:md[+ lE OctMy7B/R uF6Trb2 g=R##%C֖X<^Kk{dz @:OF}vFpeCd^a;2q8=őOVV,3O{;v>pL fmMōs](7Ц>re5^~[Yhok[sGƒVPӴ>%L:56pC )ݥû?4q^h vQqa8}G]@>5$V- NHm[HUb|cӠa_MШ Z<&6(Ww¼wMA27]Q.֘OauonT2P(ՎWRX%@1u3u,Crb*1|Ϙ83d.=[!4rbGkFK$/UEgYpYI M{<*xx7jc֑=j9c-<:RT"B38,e4%"oXk٪9}&o]xFM*vnhذʇE%e}Yxk{iT:y`@U##`}he! f$&qa"nwFjBU4{p,Gdpq"Kp^Dq\q|ѥ/>R#dCiu_sr)7j, A/L~)!3uXƯPuF1t4QXW3co:ͼxГFC3 T_u,ubPQש:5-yb8S;%-'s-e`5rn; @V#NJغ讛wD!ڤ;lU i5& *n g˹գ8E: v3&X(:GIh]錜svS4M:{L]Aҋϲc-b?l%p\QE2k~oH(זX[K1K\L{QÓviB"H҇v49`97i|dxvtȬMC*G6O4|֒ ve!pyyEmA>Id^H5₴pb͢>;ĽFY#Ŝ=aIGDڌ6]`W{ `3e<dP[o\398}>"ј<@_RǸ>zG)f@x f8D9Kji%Bٷ=d#TZ~3' `݇GV NU jdr XA\6}ZUzT~/ւZL0oQwIYOuB+WČVLQxT 5qbfԬ?6ߓT&@ ϓl~M VL8].I(3cZ4=—O͛v6ZڥV/Ɠ[bo!nFϠ|=XVŤzɀړKa7SU2:~/[bf$B>Kc"|ceP|Eb-s@?͌ _&ztr׃Nu{6m&yz1׳7DC-} fѻ[ln;^hR-`bztK?r5^]y" +q`8{%FEhGG/r]EТ Nßq!(j;.u Gր}64a6mh4()tm9f/|h9pXF=8Jgٜ*iNP LCQT̲ rC(aB$!MCOh$mmYEo g}oGd3=Z[!ϣMR$'؜%zCNAalo^Io,# UhI6j* c+Ic ۈ3Ѱ m; xq۪@7-wN‧sL"5֎k5QE(jvR?."[uc`[w3rXF* .BhK%vh'IjDVi~Shtxt+S_!ѐS ]wq5Apǩ=OmT ?8jTR`n(_<Jcј;vu=?m_ĴTs#i<@(Dqnu֗UTE?HϤ 8BA>+w\we%Yܿ$hN&w&x?>[A<i^z$7tUq@3SWbrG}'t[ d1TQ͉6(;Jjf02P/IZW /IwcxZ gjw%;OQuƒ! P f@YAQX]͏7o^}‮IZf3F@*Ӑ *ኤ)+ j)^)USY p؅X9mދی(4~т`Xإ'8k=&i^v*TH:S=?IL DCpN/tse GR"N\FiŬ-Y߶Xbq?'zVm(@.Z&u,6eC"wQHeqyz!g0fJuw ݁tW=/%穣 :]n&ۢEͼ'KY]I~t%2Rꪇ4\Kn"2K;"x\bZo"fC zPet9v=e.ҭ<,yr{AqREۓSlxg厦M]z fA}e%[k!9|Sՙ>Cy^n"}|HJMY5'y7ωƑ@SR4IiTg߲*p;(+{5fH<=Hgaꀆ9MV5hE ^~Տ@Ho|R&MeHfQ 3 ߩM1<4%Dfٍ<4.vGs5\PMwM# k2P#d_;9h%o-ދ&(Á-˴tv?<Ѣ~}rl::*<|} v>qbXgL4(H7+lOPBZX(iV28 ANɽRqr,ܘg 2eoV3i;_O"xQTf}W$}g }R$JهX!8g:7|R,ː`7ѹ qTRJy29 RrY3IV"G3mmo/t7^Κe+/;mc X9 &~qce3ʴ*PnAEUD+)-k"ߑ;3]A߭}1&W>9$[ҝ駇LUt:dIYPtާy0պ3zZ>L(y;dQNiH.cB f@g\(yJUC\N-k5? so5 :՝ND>15TU4 R2cZyw*(9BᙥhG$AH5S ox28'8nyiSF8 L\"$ >4u~١蓓k%nvʭi0iFgW.r:Їx!¹m ׵ 2P g.+Yrv=@a& g#Bbj&%R?=,>!1ǒLa+-k:TiL61e>E er^NǟHCaSwˡԏꩪ|.)~d7.0T2]^Lՠyy$Y )DFy NIZr׻ZgdU[OL0)$+_JI]X_EǷ2t v>˘R"ob`ī K &e.X틊o^ErW ! *_Z ]#$HC0bȭޘŦm[081^ciaIqfWhw_Mm:SrDoZU\AM@UNJFh vrE!yCȨ/R(K' Fvsr2Ol+zq 2v4LRR)Q\Z(G¤ +t6>^ }ħ+>rzCBg;vtzZkB^˚H80Nީ5zLZ4-lCn!^7HzZV` K@>AZ+% u΋7)s>VRW lkTy]жؘu\͋eOZ&*}V<B 6Y`\F u$H9U۸K=ʄ!±Qjg^ۼ6bC~!`hI[W۾rJ}n,uxho{ܻj41JQ@dqt>zM7t:&LmV @֛Rz%3R9VNiߚܔP:8pRڮ3bk%Sgv8QNCv v+chp^j=\8MTO]Ӧ0ǥ'd-+3 |ر@׋wbh0.fo-@6 a3}ٶCI2Q>8p‚i;٥@E&k&LJ/Vʴ$IX6 UΘ}!U(6cUϮdLU*< N=} 0@jt56ӞC[<9Cbe,*^ pۘꎻ3jF^߉ dڨ\B,L-4 /+N7*@ 2M 森b O .Zq ;bgUa',r8ȓX?;JV$rCM}/Ox"myC txlB[ Ĵ]}[ :vZ'IcSϖl!S+S|B%7M*l!.Lrd?ie>qů0s)f`/2_% F'ꊄk빼zfl" TwEߢ$iGz$ڄu"NwRd/ڝӳUN?V(b27Kv{f6$>h% z%qM§eCӲ<+?y1fQf- .c{fu^nh.mI\,|ߙ󭧣=qÃ՝V=242}Ηb'* 4pi4|6 Ȥ܊,PH >(t='9a@ uB-q'dyd yqHq$:P3. ;AϕlGҴুPf n(z{PH[7wx YT9&TB}I]-G8 Q%q'L"5u*39=?^FlRn*zL"=xxc6cw^^HL(/!˺NUo x@*b$0'l`|[VfDᠹ}KN~%U%yQXisRш>|g/%D7 PAmÿQ<‚mߒfƦYpP*kx]< pЅ2Mi+Ck|ie}+[o0y遺LJ`#?] Ɨ@Р|o(D"_'= @U1=w)F:5u݄T(E{V5no?2VGyё7*`JP FdCS`ڳE$$1vys#*?}1uq|%d@`@JfPz˛W7a UN{Dvy͌7h#;@s3sM=P 8XLLtoS!_;&1m32Ot[̨R^OlϿLW&{[Ǿ ?YW9w'h D=kZ낖r; *5jՏdξ _Y.;NxڲRy*źcyzi#,a4'c>6 ާ{w{m;g~ϥ2byx{bckڬn| Fu"4)NogCF_me#DfAǍ@v?􄎅3,te͆W~sbbNC2vDL>_y726B3*jtTCXZ={ji<|Φ{6y3a>#Nc0R٢09ʦM fE0)=38NIBRh햨=X]6+.ȝ¾&V@ SdT`@U!I;<(Sb㒜$9i}]3>4(9Ǥ| p&Y}|,Uw .Vº,-=olijW+uyLzGi'ɁV1+ii y$464>'[mZgZCEFَCGCeB-t#?wNkJHd)7̫t}1]h&v'G$yŻ)K Z׫v?`3B&qϯoxW3bsU dx/O~ďjm>E)%@|7"O,ʵiE*o Ȝy^k7qzll&_р ̻/mg`puϠl ;848=45=!h{JqO5 CD-uQoJtCn. `Uo=N[fepzRS /Bh`v5_nE <ށaO ~E?hBoĴgƎ$3SbNL{IʝEiڣAtl+ñaQ;?X'ˇ\#52(5OeܬA2W%쓿#uo[*̣%sR IHTC1{j\,*tWcL<(D a|V5-S Zɀ|I/MBjߓ1-KPPVbh}wK}e|}ɣj@D^YDbyi<QtQp#TE@Wp/.h_~'\"76K$5M>luHzf} ۳YcLRяuS`)uYVP&!T' 5)bYt ]_Ns@`zsD%^[EsG_4i/XYD nvamJup6WErML*s=:& śίxfCnby 9R]S<`57֏Փ^r]Ls/{ƒ hi_>Gw)_o0.?,ٜjbQO"[]MJ,tйQ,1Nt7^oӜ=]؛lϵdTpUQ+}Y -B(+1rK5])*2jd_y]='9'zrވJPb\,?hxOy8 K3|(_K+ ;H+:K?%H. \3<rG/%kAN"OVA@bNcg:]Lzzlυ;ɯdKZ|ψL˟⦘j%'HCkYl-fM.u,F&Ǝg bcɄm_z9ty9|$:zmwό͉ ]ôJO(\>,^u&p׏$=Cب.Y!0Nh/t[@SphL"]q씥'íDžBE W!*c\R1iLC֐\]Eye 7i]/N@l|lN_ I&bU/Ş"5⺸wy+7?eM[XҮbkE{BC4)@\ qGn92+T}34[Zw85I_\cvFHc:"<Վ)|ˑ4ủxZt=J䪬~S2\smƋJ .A0ƶ aU? HMTPEƦHPdXFe]sS!e C^%{WSv0r Նv#%aKhf4" ~&F.Ts. 6gn=MW73>v;}E$S*~`<´^C@:ICTI|:ne.&kd>{gltvTEKNH?_q5`dzAC}/{u嬕}Jz*ey7Al_[ODVP鼒B©Gtv;YqMYc(acK+/]@Pk$4RV,ZO}ҽ]j]U{hP\|yH<  nU!W>aZ( dǁ[RSvg`'JZa{s_ vjx 0o'"/e:&bByMp%_]r#.fl 2? 9U1h78s0hiˢ/1àHw6['G5e~*}o7^|#d;4O ށ!+̑U;Wrk(q&W>p| ᎗M3ߤFGYe7$xȥz }BI [67 %3D<0v;fեj06kjt>43d%nA9* 0u;d?KND𮊱YΟmayckΣƬ0z6" ;d)jmPlkZQ`*r NcJLĪw_2Nfmn"Ib,| "{ty3;P=e6ضdyJXik`<ɄonKviA,(>â'+w VL`aj qN,hUҽNM3f=K;wɹ}c#VM`KyFZo:%ެq\Qv@x^i":Gs=޷QDet;D%|1TL:(Oks4j$wdmHKh`4R"Kke mt=shz.lxƷ4tjӜ)0 7q?۹Ƹ ͖PW&]#y:pnқt?;Py-qO  [ٜ0F.="~RMby7ylR7*D^nwj %D}ڕ e `yAIKJUlD9HD?ӈ= AA4E>SBȌg!gOW J̫~V&Sh8k#x2>I-USo.Lvt9w!1,N +_Ympr`k[Uh^_]#㲳=*p.To[Y\۷, 1βiRd&̓j3ۘ|T4x ܩ|X?$={ؤ$#!#A:!Ϸ2 29$)UkϙZz )ì, S,7&嫚ṫt\-h2;5 4^'$H&7N~"@4LQishy&)6/1c Ü&|}߉e(=y=#YC1}fH|@ݴTmɬ;`XDĶ{ %73NIs3CY=8 ϫx]J߃TthmޓcU CL1f6)ӡ 5||Q'Z e,mr@EZKΩ+>sC`cϻlL_gJ zk%܅%^ &4dL auE 8;)FiUTŭ~)\ۈ¡$UƸ}'_۲SiC4TVFgDL ^'iэG֎-`R4vD y,2N2CBjX70yElWYvM)s(zAk)[b۾(wRB ` b4sZ7UM%YOûc-ÃrEI)HlC<3gxSNHQ66X!6NybDw)h =Z1nT9Fr )NcDuZ$Vƃ}p G"eC(!-Wң"ȸDh2<!eR`E~׶(JSD8-Lp֒E@c9־4v-K+T2}cQ?{T1Bde+X`øSO+fa;Ol KR% $ rx_"C$GRh!Gƅ,@^ %X0/rw#HM2KI\61@1L~>s~d"GȔyCuRz[հ@-W5.ȨfqFn#"ߊR@0:>D(}Sj?/$?{ S'nORƀ ᴅ *Q2N8;!l$0km ~<Vq&KKX*˵w3(Ţkl1 z h "ߘwer8 uJˮ<;f+%rN>r Hvqhs"b;XVmQn2D&(-K|@&&OǙ_z"y*_$Eiy~ú҆bhz:gSI] jYJF-2em {o_(Ft1y5 hm 5YZy땰khŘ ,&\}F/*3P #E,V~E|M >x/9a,R[o(X9HApLBw{r_%Њ[O1BA[xx UrVtwFbH3=dž :Uwu%QȂ:_<R7E~9L=p`hAW G"6ǥ% ϔq O&iUNU}0! fmcIz /՝ȃҒ瓏V.HD@}iX_qw}moj+S7G`uVP\}X}p17T9XE&qZ78CJ2TR)Scml~|M(d{Ql˚/eNy_ 0m9 9O0hc~]!E'A \dPBnPs‡W/íDN\Fs' ︎P zHO[MOc_ˡΡH)xQcB39hm{Dcq#6엕T>`ƿOb/;-RpmMF荲.RDГ\Jq|$\JkOisyLOt^Oq!f(}7q>b}āoO*8R>Zi;,OpNvGdF:"t0n3S74Y4FW~nF-&h'(4҇6%F42I y)I[_:I`k^[qԥT5ݍp;@I{<9)nDBiѦE:vYT ҏeC}H6~_[miRb#+9A8=Ɂ\k2 x+1DA4N bn3Rڟʣ|YQm chp:I Sޖwm7e@i$AleP|ČX踥}[r[&ecKFT%ۃ I`_Ԯ3sdC4oly3|L/[rXUʶT$=>*rro.󓑴VC,9ҿ* ݫضo?,!ж2 p;u9q2҅HVR㯆K|KO/76U/m>0<8F<,O{$~ M8Wz?bk*QWb*$E8 o/pV'rzm|r9 e^hW- #L9Q-z}`h_csl+?PvM85НRCLM>ٔ)GPS<lԸ6\>7ޒ+$7 9Pҡc2\**vljW:Դ:vtۻ_ EgWǙg 1 ջŏ3 - >( lEƩRkTC_uZCT jFV”Zs/~5Ro|XpApE%-~d*6MS/\ ^}D@p& {,e"*^7z&ڂh;0tp}6QnֹR Lxb={[6ǫ]")ۀLAe> O|Q'V)r&޲ *v>Z~1WG#'er~g: )zou!lf&&Tԟەjt|UNQ '[Y 1N1/OcӰjс]KueDeakHdDxk-(\i9-:"eu6cE 郜ytXe!`A7{dOSl[1H^f;ho7*bW۸w;zz5{j]or:r$q D`гjVn(?^ml}}¼1>+G-I @-|A2\CޅЛJʫlc kuWa!ڸ2+D&d:V)ݽIøcV.rhaӵ]葯p:lMl((8R{ܢt| &t/ ?RH)*/VߋUk߄W\CC2;h0@޳;+Kb|ɛE$ɜ`k-e/ *k0zU @}D+W4L[xeG[!˾qwИ5l,coF/a(J#B.ktzI ? sbL rSZPHĉ'fgVG?GcMA`]t.%*=)yM ʹl*W\͋]]G(aTMR@+IM%=Yj$|FMe`uQ[-HjwKR~>D҉&NBb` oV'p{u5HM1D9 M8Jm%Luu-~,5^ ?`Dia" Wy,nw\"0gN8aY6o4դv_ԹS8;#Izw52 DK^ 1H8c:n%DorX#lDUXлH|L>Ib-Rreb6fNmHh̶Tޔl$pz Cmf{*}Bj2?sY&8eD_%]|a4 JZP,%,U*C6q2Sta.l$x(Z 5Q? KHݒܴm7]g(I넂oF.#(#X*g)G{ lÈjoAGP>Vxk> `5*x0'7F`j'5|;<:\%Мžj:}.eEtze'.&*Nww4ljsW3 -"K餠&Jx%<q""ۺ 6|n|u z}J_|34B?bJeU=/zTTMb/(Z8gôF,)IFOEFN_c:f>5Kc؉[n[$%]`!!㛊ɗ| FE N:1erxyb{>,|YkՇ~:T 7[^Du Ǭ꾓(fW(krme;0_J>oR~y^\NB)|d?Ʊ(+cec~-TYnq<ϯU\@rJ#9ulv,⋺܉aҩJ־Ӣ`7fӌSw- ftX~/mRR0"]\b jyP_!kЙ@{W(-^p\\}rŬ|and5imL/D-> ڛ<EF ce~r:n:8i% ,!L^Lǥ)HO[Az|>rQ4>`+~D"ko-  ΤIɍw]u|寂d[@Q {Vdg:-S:,$"{V"08i$23Btb}]V1;dj J! /#YBˆ>̣w3|>Xf ',gxNPb+գNBͼ4VٛgV}#ړ^N>8 u\BJ@j{v ;$m^yǮKO(#@w.2r`vDêʆFsEf[dž4vXd"dFqE#IT\1e3s;9T &!zbJ(V1C~]4?0$~Ǽ4 Q+s\zKhY*Tf8G ~,zXaV!L Δ \aY:P EP9Ȭ‰@H%igG<071Hպ(]a{F`5kJzONjCLb &Ŵ*3Z-Z-Ҕ,'ki7w/i,#\*!$l ?b `), /۞zT;Y,XbsXsDqد_Q79]W-&ϛ'ڿqVO? A@`>;Ewq'Pwt|Q.rP᫈Vd ',˚95xvVUCN- V!3A0Sn6 „. p.3Qw{VYR]}-YŁz:k]r`t&^]= #$li )(+V* 8Zb$)=;~nԆz(Db3fE&:Y.YnQk84zZן#c^U_C턻 *`v(PxH{ğԠmzd-_OӁhvluU,VBH!Ͻ[E1sԶ9 APsMD~&j':Xhai"ȵzP+So Y!Zu&k45bMWa=,3 Yq ( }'ى+טsXϨ)NxFմSjdh}\VbPf!ʠ4%|rx% ߣwQf iӇ=?i I_h5&Sm#$;>b?MNGylNkaD~C|%f]AXJSAeZOr\Lnu۫*d>fWgQ3?r(rVA FbZqX0mƐݝ0=)]=KI/ق|Tl~d;n$/zoh,|4j>C"ya b/Z *E{Jk/|HS׭cg/QT:ácqmj}I6SNb{,l@鼰rh d-oR:H^~ {a]kva}&߁\U4bj/<[ ͡R_JI<@+TNS`hï*[x[3Iie%+·] 8lwhPY8O#e2n!4~C.F$)ф"y4<On;7',T v0[(jUrL3|Ըh5|96yWoz;rRBRBKP%Eܹcr^^kLuGz6QX9S'9qţM+IbczPԹ WC2w'GnN~a&]TbxNr5QhvKy564'jK$" )|?˶Uc+Mj mI#[OXOhEm2A6<;GVqXR_yKЌU~BdNR& DiSXr||0c'>kY+^:r2fȓ220StRk ,dk l G')C*>"rXXБ=u_mG,8%\CbA 7Q "A !K>Cˇ[z4ʫb:tC@vc>jXYotv7bfмӆN1M|ς`$޿2Um/Yk'OT[-@oZ0 `3bk,c[*W/\=Hpz :* VpF5o:,*TGwU\Sq?JNo\JCřF8YNH!ۘ8‚A!(Y*^OFSi:6U2fecҰS=xEH $Yûя4]ӊF:~_YӇ Ȧ.^pO0rHCd'8}-]owWDU.>%c]",jbYL^8A|jث\( 1h6_[/=.Pc_in9[ cǝ bUY5r?Mt**HLҸ1T:4(sZښ>7. "`i|g /2Zv$BᄿV Ϩq<;u?bfR .&2W_Qk}V<LQ:i4{4x:Vz2߃FuC7ԝ5HjN2`i&Kob9J$QPVɂF[ؿG,gri^ZxutP'%F[l<%RƇ\^e([Kwє6܇F4ˊ:DNVr=6s6q~O E䏓VW h?!%v Cr8^6N'B!zg\P ejWVV^'͟k/ AT[kVs]yza ە3|=J[pUxj >P3vv/zԺ9h뒈2d u {II^ՓWbيtyuۻ/IHg@J*eԹPVy-,kne PJ:j]l>jV8Q)&NPK6l (vi<K19m1]o)|}kd4ڽF#1lصl8I 㹱8wnVlr2_a@H(ξ[֡Qf4{HYVS3mϔvӹ_H-BxD]&m 1}8u R/(w<۰ Z'bN ?Hdv?[m-]2rmoe@K?i۪UgRvP8xnM(JY63t[Uɏ,!msY >!C\@cgLF!!xC4"X23M$Ž9)YIW鉶1Gu) 3`3lIڜ29W`+"PPJj2x?tu=wJ%_x-} ma./V?Q|#u=D1SiB"Jԑ7QK!5/Cha'&z3+yLǔȣV=RYv^Ӊ 3v_&ѠK˃/d"H'MAU Zc((ᗒ85E?+~5}|OK]z#SsvF轥b@N6ɌM m #_6ja~NU~X@[jnnکX3~7c+q iWai n:K0n8kީM姷Y#? ~`YA%*Q "}.Wţ1`7E S? ۚ`ZzK5]\ޓׅ"3-Y(Xɐ(KǪBT^#x΢vd Vo9J"!YԞ8_ZVEF6lq:*^'2"d$swF{5\=@U'%{+cxԻ8xīK8W;G%^b 2]x*Hj#igoY*V0kiRgHjH]+4'F3YHpzL/]򼵹Z֍<"^c,~"$ cɩSVxJ'o? P( `7Z;Pe6I<2ϝ6][uȠ`ߍA[pL 0_Y1Q cZеPЩn Z]CM I{%'1ӔgPM(m#>QFON7S^p}H[IU|BvhКڱ&?F|צgbqv2-WqVO-5рml@t2ypDL*aW2U~3,Zi큆@|b=NCZa3v|\}@pn"H7{zGk{t.Vq0?!wvMnbOZӊuP9HLuv';ѥ;ImX٫&~ު‡BJ8ݬXsv;H *"U7󟫒{z LU[CRj~M7*hٚ=~0%:3Ł''5q:GZbzÚ%I݂{OQ,P ^ZPӛ/;k& JΔ:ucU9 7f+.,'] 9i=Jxlak_ l(ebozW^SG%yv?$9~] w4sh6r/Ǹ$|e:z]+d B\)4|ǡfQo'Q:w->oDӑ+wVI*@ ()w X9]42hߩԑTCDgu0Y%?&l//%lVe`䚍VU4l]:_@|AHB Utc_xAsX )VF^]wn:S3R9.Yc;G(O}н}8c*,bRFv&?h__NJ2Ʋ\vGJ#$Z7:{M^+I7_V&yN 8;`Y%>⢷uы |?f&7VϦXUcQKBE+Lo4G!^5삍A4_v_'iIaTvdžV1JD,gўxaq`UNhc//-6~, 󿓮ߍ^|*u]m&%Rpgy/HR'Yy|9X ,ܰqJ <9.\o @tP%ZT.96fHφؽƜSdb-#=>$!#jJ&jNҎ;ڏKEw|VYzQ68}Ia7clL\"EQH߮U0Fj HS^Ɋϱ:Iɍ_@ʌb[[!7$xQ2AXv>!\:EwyDp#ߚgSJhԋ8iдm~~¾rQТeTBCj+aセ#NKs<ݨ)HS2xU8g2yOKp**(-! 3?Qh q܀&;%"dF& 5V/ DrsS'Ly0L!pjŒz81A%29" $޻(}Cs]9 u9ؿΑ f%7 5fSZU%mt $']ߜjiB|1 \($'*WB-m6T g`|2>d5ԡ!2 킢9= z WLQNnʓf ĖfdSM%1W'M>|fCng¿.dJZ]T~+M G<2'ZDZJ,[ L CuÏ͌Mvҏ3]vo0bon.0d=%fiy\EbSaC>]}K5p#! kE%ělS)&"@9Lф-#vהp?9SN/xq;Dbzy(T!C1 IGZb5mH"%$A̷>Zyy}o(-Nr(tӥd<iO.M5Cg 8)*P.|/e?,vXj9JqFfg7}~-։oc50 [۵|gk捘;\ g uI/<0$K{mql{2-U%TM dT<O ʧ﯒Rp>BNz88blDQ+3uK|hOpVޢ(FjTOXX6򦛱~;6 P(o;7REdE<$F#2F|>'&O-$2TBb9`X_ĥ9VFZ)ܓ^0`IGzmމ2k-m c hMf)35;I%jv<;JSҵ$TΓ8'xYG"PV}p2MtגU%R:8^t|jy+);,ކ]EqB%6ǹ+w= j8eߋ HٹcBFx֝xLNP]|]U0US[-#W*qUgz,~1KF+Xaw(ȉyTSqL7A_h{=?%=C*`-CHƁSIj+S'IǪ/!%vf6ptr(5+^iFRu0K¥Qxtz+w:O"Pt-@uP6^ QWZei2O{_mHNC,Q;qҪI}akj5ɚ PROUc[ )g˘q8xx$[믊Wٵmd"nwD;5SL|o:NmzvQ?,49YV7J9\ {P܇rܐk 7g7|(r5 xɕ΄UKXJ5\鬘 ,M336K_jUoX,Z%0g>WQ7-vpԖ<ɦ|Dxm b\N@NLtQ~cPFNΑ08&$ !%o|xıkŽ7Bۊ{T?/}'s/"X$|xΆ&_^Ya1k$wpaQ */U޸Xk cn?Ygr8c"~0  jj+@A9=Aem@EGgUz `aQsYQqE)Aַ;KKB[/kG~Ci2ka{tY"(7)aqbtCC?)ܨ F-V0Fxb`FIm>e}ֈ$nȚ3-8Sf4Fb@ԕPlGht( E,N!rtV׌h_oz]~0EBw t@El^vb[ TtK5= O+l-ZzpCxM5`BYyp!a[4kIs r7Ntb;LN* ?Dج29z3r m7PZO\Z6F1{V^f6бU-ηkRzv{coBbIo"]QH},ݲwRli{@ *UeG;%kDX{ NzsN,F6u%vCa->>īI[1wi015%EtF ~]e'p/\ T98GLi0᥌> ٭Ada7#(kgI>%Q,tP<_ceGD${,>䊳fiO[,ݡthB%FVҸjhx2W:?R}ԏB$.8wwt.jJ{i-9x v b+.9Qb0~+wrF5 J?J)P3f8"Gߙe[g^C*w79;fӟUIUGtԕ0:U5k`-'\!A,Dz\urΥtY0f[_ ^CqiYm 'q<+ S9""s&i)jRrU!Xq4ESn8^~ |ij}6o_5nlC&^W7)cXR#$|/}QLQז0Z*3Uje#wT&fRN=[zt>VT)ɶV+Bb֋uo GiN?Hƃæڍ ]?@yekmg3=N$ b|q?(Sգl.;Ɂ/F\Lb/k].h# ѯlv Hq2 ]KRLY _г|o2l u_<y( 1h^ ͙$Rz 4a.cѹ2kKc[}ykGk2F8S{a5P{I,KЮ|@\ ׾N2rdS?.qz֮$l:+C] O3ÂKiWLhBh PbXw|Mɠ9zASUw33yOB9!]]`iTt{ElrlW)$3҇Ա\hp7=a*Cu'up\l5ḙvAݨ~r"ܔ'3M+;Q])/I33r/gӈ@?b9&9-&1RC57z~_WmlܯCqifg脊-hA7wAphjj/Z9](& ,M"ZƩSFN1inZv6U:=c>v}5Ē{YSJ\&Bw&"ԕmUTcyҞpKH8$(wJ幖adH Sx" [݋-شu:Qz! & ˲ 9?S~$7@̢:!dBJϛHZܟI$]4 W eR%sFP`I5X`&liХ-nc ùNΐ,"K\w=`Y48xLn;&y<}F!ʲ:ˮY 1lfn;S`xLf(j*'zk9R} @ K*Zd}L~Aȡ,nkZ"ԵOWQNާngIekk}-U,vz0#K?cL5x.\va .B xYuӑSK1$ d#鑞VJUP*1B"CBTM1q,\٨;ˣ&R iWZL gBINoaAsUMNBıu[ JW B[ԨD5 r$DiovE̱G.ULMJ6.g,lQ<߷`ÅmmuSvrhENk۹02-Lj=Q^:.p%DPq@zn,ĀI?k07Tawv0wbs5oh!d7NJ4XXeEf|e)ͯ+QT(w{!c {49a'B؏-B[膄ԡl{ :f#KN, 9r IF-ENv/"r^{r[$ˬX:j9RNEu )OczS,þk~D-;jzCv,P bʸ֪mo{ d\_ބw'n{Eb0ݑJd?J V> "N2m[|Sjf7$p~~֟@xoEgKE}ٽ9e]Z 2!G#m!ۗɊ&=lnObaܦnRoKEbC F͂qLk~nvK9R2hsk Pxj\!A\`# (B>kx줭I+ϰa4BNNOF,!¢_4OMS=t[bc!r@%GȊviŎg5.qWxT8mOvwϐ@|݊ם佻|"1#ם=Fz_ a@:\k=\;h;0 KiN"f9eܛj.>JCAf4V8;GRB nZ>,'~lʣ}O#q#LD&}L f[$$-RD){l`VT-(Y=6'Q"ZҋMwE}3!jZ Tc,\u7 @eivd_2Yy6mafE"7:W*B׭gy?g#P7EBܓ( Lif+*e ,DtOAĘ:9Nr,?tVĆ^'mQ1(pΠ(ƿcٷU:Nr ă}C4id|=塙kd:l`e c`$7X"@mΓ]cH Df]hd1w{sPKuR A#]!9Q֮&WQ}ZR 8ƚ^^7~m[yE\W;>.qHĸKF$\t%ŮC֐*l>,#Dgu_&C2\{Z]d pL92gfP9hj}=m-|h.&3f;T{&u75>r1=4Dme'g;ظxSI 1x4p_ZPߧ6G'}TXw &1C]-"YW0!u|:j}1uM2L>F}eu?]"@U|zIej;~!&/]V3WZCdu4oQ [N*hhwu.fBЌQm:P|~MPč>^T:\-Nޕgq,O {{DlUq8-'=D`rpF8G-4bUsԊm+%W-Ow|HNW VY'Ͽ7C%οM^Q tDaFxue\ Y/uIK\z2 Ey^h~PtUQkSؘF$- `F"~ȚbtD=!ig8 ]b4 P+Z_H gԂniZ‚&H ;ޝz( }ЮX| z3_( Ȫbc{Y*+Sg+Hw߳>xUgK6Fi/h4N0[˃Ukw2+&{h@D)z B+ߞ@$76g-8|nR0VKlu b$X͗oBn63r[C"rOǔT[$Ny6޼}S A-Uk3E ~, d~;&#W~5&x 0ulFlL{@JZA~3lD[[%^yRֈ1,Bc*{ĺ3hmht0\|9g4c]`V!s9W=J ʢ ݔQ@jV2:}8ը'y>3JWacNgrVû/]j ĮREne'LA`7m[<9?ϖZ# Z!EXB^9rJWyk;{/umcR^_1) eB  ɽo*waDrt=i7%:< ؙ?苡C Hjaw +;PunCU8$/Èwù/l`^/:LHBlP-Z- (8CZ ! _.Q D^Z;Pz2Xhes nc>z= ^^/VN"?up?dDJg|gXvfG/u", 8^mnkl@M4%,Q% "WBf~ LLe㶃Z߂mXN6!)ӐO7+c#dZ62"^&\hm65D)!6(N\ޛ07X]y9 TeMO' T3Ȋw:"SJvpfmx7k}XO=]n̗:> rqm2Ѯq2wm-d7(u(9hI8z?$صWyU5 /p[)'܊~k @(f !MLGP,-bkYnoprӮ%6-O`ΊпtL߸X*|hj|Azs!]xq2N-֜yY9EMҢ/7TEV95jMf?V$ Sea!z|#oCG& zIL<݆eLgD_ؕuc3/RR;&vV!40)aUY[ ȟzwd)֏'\PY4%ӒF'بb*!AC'|meA7ugf׮ɠ }MO%8n98>iٜT j+,s䣋ސh*F Eb 7?;AqUKS wkCDz6[gu01B(G+ϼ;ShJ {=.:IsOtw$OF*iɭ0Z^YL<4<.,{M;z95*'8T#X&$[#Q yC i/ x~{2_j;I % @EZ;U;;a^|suoӈWƨ袿Т7YDsj.1a<nq;Dͥ*6rڔO\h@& KAbt%]mA%(X{5‘IνI8Jy0n&]ٲ0UpôKB1egh3F nUM x0:&r*Ե %h)!t= vC(4 ]Mexlimacty˚ ;!a/XLϐ*Hw@TB^8'm 74KSonk T8)聉`56PTVC#g^Ưy_BʈPX\oVïRmF~x162j/Xdhđg"I0Zd1n{Vْ,ّ\0}ÆoS#CvD^.zxg"JOyfZ Fb6 hgj 8(Uy6;=̭)@.eR &0zb.nvMZɮ7K}gA"w;!)iaTg9ƋN .tgwf!s$0il۩-=sRR ( ZCO`-'RHl g .r^bXޔ,/'m$<8  Sk..TlL:ؕ&Z,_x*n@i0q|ܗ$:Sswk5I.X|V۬:F$ĩP4Y7Zz387u# 1U޷[Zu7f Gp/ ?%8:deaHR@5Cп&$xZ6sKȯ=HRa{6ɵ? jߗP(0:ɇ2*/OI.@GTYmW&\\-8S  CB`PH}G%eh+Zo}Ws8LE$ ݁"cHfqTz>%heB4ƞ8Ăg.?@sG0ȏȭETM)VdZPUgF+ UyUd@Tbib&Os+$J!=|%vE9R0d+MwY  q%lHF15Q]ٛ[w@^_+D$%IUt$c`pTo/UG:?8^|o9"8sD L6=#Lқ;3L\`1ZK_CVݑ^L_D~92.Z&P^N 15pw3:g1 Vn\|կ+0C h^egM{_@$N$޽ d|_0NY)˭:q((4 6,Lm}t|Goˋ=麞eӚq k|( Dv}( Oc+|4-ik/t a6ZѡNķ ffF+\; 'ISZD v jF߅(_(V7Qxx63a2lf"+i enĚ2I?y:w7)߸d$Sr2/eJ%C=$~څjFSS ~_r Hitٻ v5%~j- UN9&O!Eع9`AL}AS0 IrBSW(梓m fk]G`}kk^d̚A)/gNTr- ߫>AP#) }8Km' e酸n;=)w&d {fmJ WeBHTuǎ%@pnaٌrP]̐˥E*ӳ_(un|"EPQowvߕכr226* h:A8ȀF>o hJDAxoѴ'>&D32M=-7:|G gcx3y C 0d/JpbyD";H ն>&CJ +79TGzT~u(l}<5s絹 kĬHj舠 \'xZq}ѳ+BciAd'QR.'@pU/uCZ(8TteDLίny柠SY꿞1ڌ*F6M%.UVWe!F%]<"S+:|@!ysQUgo_vbӕ~u%㽓e58P{4$# 4NWȡN_( %`|ђ $1Y2(͗3qI wPjnLƀȀEMSRXML?~Vc xh@ݧ<,%)OԦENNUb T 0$'?$ފ(} uTGΉF v ^?{@k&n /goaIU+"ZCG:`篒RMwaO  ]ogMǔJоo wͳ12q^럏Qz#1!.H^p_XBG=;Ѫ3h AiUIQ`cȒ6:AP_vi__rjAwS֓?yRW6 .`U*Ey"Bz$. 2RΕ1eo7|}v+nOQz{̔e|NX}a%sd XQ>. o٢ZXZͣ ??HNRP~W$ cL!r.5CRO0x+bÞv~=<%T]n-@1C؊Plmif‡B($?')N ~IF52&m]vAGhSuo2\A1>-btܡ,Sjτ!+,vIŻyh+Oteod̥|8J)1C{d<[T9t>+G-D.IF5؜wIbgZ`5"%mN~4͗c8wxkf(j{" WɲEV~8izw=GZ'K)XVBo, ^#ŋY{`ܾ\ 5Yo/8ݕ4o 2*ˬIi7}^R"{h) ˃tH%H*C섒ok傇C>ü潫A?,7'phf" _w#ˆO ׏NΓ8{/mmtS[Oxʞ[3OSŮb1~v%ty2 iͳ8q wjm'ݬqOwmfBI=dY jJ9Xt}iljD.͋mC-7^'\ LjF]n7g ųV;Wg{y0d74X[ƒ@\ΞaǺpH7o}) хDjC;k( 1((oeYh7 4 =% 2dIZ<*'i H k#}|FC"88]S5rǂ0ZQ-QEgɭL\9$38uZN[B6o݊zg}]pZ5]IeH _1#tN_>ދ@N' `!xVQ 򶜊N_77t E,^wöshĹt7N 6[yB]ȇcJF_18شiV] ֎T=k,Q &'7?-&Wii'L;(]LҔ>1:d]w y;^q-[AOgl;u[x|v^7~8ٲ'dpOLY١ff6\$D)ʰj|ycz 78e`L>ݜSjɜXה+Iċ6"[k?$=++0 {UJ-Lj#aN  XwW69OgF%;b2pjt-X[9'PTYQ:UKtG0$@'.lRn3T mD5%]&zagv&_"|Dx~^E"hCx?wjҎ  %nuDqHKH!BM/~Sync`OruG 505M5òe?4eA9rGh{Z<ͳ)=poL]N!1sNpH:Vq>3>螿lbġ <8K6,C%m~JI:ԢU\Z<'*{˔ll+X{Z"4HX޹N*+ `"5e J~!k.M8an.󟸰g _^y`UӇҟOA.}. $Bqu6 zf'hQ$}.`Ey@, uAPo&;ЁLs2\2,qa2g\Gū\jaWU8CLfͧ.~gJiDķ|&S(+Gf%h}f{S(TW-|A*rgH|ZOH5i@*9ml}W~l9 Lc]A()|{%Fh6$MQmZe2, U#UOuw7P-_yI<@<ka{UkjEmɊk` KGwP5#vJ᧫L^x3_yEa40)#F}`נY7ۧ0V<^C]*"1;'=GUYƇ?D TIt19š[}2n+r$`Bas{8̏yHf #7Fl^,uNJDzz'P+̈')-HuQx:qvʘA*J0馔p$aj8~V58(xɪzd"=Fqʵ@M.¾}?gVEF/SH%r4)2z͘DžޓsD\:V*K#he\9tlņrOI3漋N!ʛdžꁄa-w ^$Svʵd}.x[w;P7=C $ &(X#ĴMw(* ]RdҴ)&+yJ)R'*;Um=s7*uM/o6TC-j* /ԒYȚ8Q %mV^%"P^jEa^)Q9E41 tL lTl#B{ Г)*_qt3 k('X_grkҬGJB~Ltr 3MIx 0 '\>cע[oNFXP HKN@d=~N&^gUFV&;_kh^V Jrf){%M^ œ|\P#g?^딾`15H;-TxA3cvR#3 N]78!}TyTxVzY=oL#:p.rHukSJȢˌO'?_wC&Y5vZO&Iē,~ha:;%HW82-:ؽ/̧un $HJdkoC}-?[f LdOE< XI'%HGӫ&L_M1>NQ0) jGPZ1ւtݫ &ooE!";o(' 75GO-TӺu,EzB0Ъ9Xo HtPGR 8]b6Xx%@b̒Ygegca+ʽ%!n܉Zs H9RLj>m$#˃ze6Z=>KyB<($b|שBBVAph"kX)]kΖbl NϺ% cQiΗH28,cŹV?= LR=C!CHA[C(Lęd`h ~3Ea9#R{M8y78a)ؑRA6 (^B"MSM:YUu-E*b4N=4$ ?) xAM_7D:Y]mV$&"ūr4B/H*Tُ0{*?^fpqu ʼ6s8k6eY ƸxchDyCYa57(# iH?릗ڲv,}i'96)皒r+Ek1t~U;j/Z}|{f t_JҟV;?opMK4ݜȅ=َ$dLaFHyCʎ4Q"]F_\[Y(  _euv{ C&J{&?!{ڨ^zOn{tU9,aCk8+Yd,n:p r d$b[9&SF8֏uƦNCBrӲ&p&33%Aۭ͏һ8Xˆu>ذBYR3~X[oݒF08beT`Äە9hiO4ILrbː.r_Y'<"9knj^f?^ Q@'ߢl%Ks\%IJZ4/\ s;^]-*%Np[7G#MZ$zjf \$c$IQj Vn'BWZф-7h4k85Vv!?(ظwz\4u>eߩx=p])$ܱ.ǧS蒎T wڒ1R|GElj+Yߦ|tM7( h(nn,<ɟSϺH358 ! duԕNc 8x#+oP}?RzK@˰;"ⰿ{k5BAjG'^lmO'CUn+H̔s۰< +(wmj\S!uә^8߶HZRVL²-}AɄfMNvf{*Uނd퍘C< Hy`=^5RrӬGa^ i45U 6K$9ykk[=W y?J|xMbϵ=/,< f`T8 <ω$ {䴼ԫ;v~3x-/T*C<f}礼%Q{8gJ&@-橿efj],F+7pUc7ԑmnFo#w.;}ţq6X|y)Nţ0|]r[4|WTD>7Sv+zTq'fQ of724\b!X1ing|߻S5s٥k*WD,8ÜsivyV[Bpֿ ^r Xֲ_ڻbKQ& Lk`Qz(ISP_G?9(:'*́|q' _ݔ?6ӄjcWJm48 蟙m!熓7|n($iƧz%=vnG}v8!o4c ׊nV~ &W>ljrݐwHNЫO?^#Y| Pea *5㴟o\gΦS2qn+{LLnj(]T~ '‹zb(Yֿ ;x{-p$+ӟHs˭/Zobw,p3h;䅦aq>jݮINlt?/vg^,QD%/I;W(͌G(w+TÎﱂαdz"ULo+s=󣈩f^AC%z*zu-rx3Iȁ\/~κ'u2b@Gb, G'RLZV[?dse۱̰7[Ob oH&Rzmf=6? G!2y"oJ,g;$ *ܸ^濶3Xs ^9oEיzhƉ+{v |v{7/rO#rBwxvz\tثKưweoP=DeiZ}E>Ip5(@~ףQ.mVX蕜?a ?}7x put6ճE i#C%Ңv$ l܍^YK y`V|w;3r CL5r iЄɹyAz-}fR$nt9V G_6=w U+{ jb j3侾c8݀!N\+r]u%#j%qS%{N M@ޙKWWMV5 #>*o :,ăƜ;)PKTfL.폧,7焳|ȦA"M3:&jqj7A$WɝԳ '78Z|.9iIbmK_WںЫKQ{i޶adn߷9QNUFiJ,st;āc**tJvqo؛,UB`!,4ISyFJ4e_i~EpMOM I1t.ҫuy$Ӄ{橨Y^V^W3AdW9uY}7dm٢gac5~5`[X8|1//z-OA史։2 t uQc;5bwV_]jr]jɃF"\;O^OP-`5f|vBlkяPFhexJ qHVZyKD2ιT z'An/ӳwq՝4-C3͒hIguI;WE3Uפ:Y뻟qZc_ [6gU<F#Kt;ggwV.YVZyJ( m_4^~o'lۺr:v ӷp 9)BAmDL(RI+N1y'KQd6mMئmMu-qSɾQP`^{uѐG93qbn㝆O$ sdrE AxSxюzIz4IBiZ{:0d@X3xLbmzzWbok`X8 ,!O"ގT{yQ# ;6Yj;9v5'ttەyIrbxRQS]u \Kn?G1\O RqNMkгZԋ XҦ#m>W|9HφEo׭dkʄ(6IR+t v~bZG)F/;"+[Qr|A.%:C?#;!gDN?AԊõ[o>юۀP9ê6 6'#1,Bj7'!}IGh֩ ơܢVm$b3̨ࣝ S5E&//<*!~$$Sz 1Q71(M|}%=ZY֢t"hnu^*f^(xyuQ;Ref=#mvزOMA60Zo*Ś%DŰ4cuRQ7:>-WqYy9*[=s0B&(Q|ogaTiVɟĺM/f8 ||@|LXF42ư2%i37d }{=JS((Y`sf .E~S2d=dB 9BV TIG[GY:t| bJA~2}Ca(ٲe1@u]ƀـN jw]MUfQ;cBCtEWT5U0O'ʞy2[;7ӎwyQqTaЙ @ %Q8 >#>#5E".~QlD\ȝ!Jfg셿|p MTA JLηl+k/}LNm ΰĚZo!{"u{>vfڻ )5pN&ŵjS"2CX -3?<(VTR,9a24[ɣ.Rx'MB6lD Rw+3ϩKAyI9LI1#,(&=hnme1lNPžqo@BI^G>s4xwIu(e_߇{ܫ)h@ ͚u%Ra蜜4=A]>d.O9le2 udޛXdoTqA>3Y~%F]%jXbN_x&:wnhΙ@g42D$Dx]eM@ۚaޕ 'rvGs[_tWFFsEƻã?VtRw“`PeӮNX'(33^NMO{R9`1j\ƾXC̫^/F@ۍNB&,ع٬VYȩe{2ol ʀ ~she(:swƕ7F^{4zI@,u)0{zS\\GoUAp'.yIFT՟c-լ9]|B]R$jeo9L9_S:4/I_tR2li9K <,Q`nhA~\.De9u[2~{&J?-RQ \ԃc zV1EpX7dߚ·˯H2_!zN8Q~\` դ;,;eUb*U3B-swdg :^@QGv1W<Jwz3J'O^ JPI7}VX jU9W? \vJjˍT[Q@*$Ί%SIv[>/Ii3Lw #f"Ӊ"q ,?3riG vK(AV[f4s ͡{]eLQ8Ǿ[ы0-u[K8@N* NqF ``1g;%E1umot%Pq)$PTJ!t_JQ%D¥lb\!K:%xdyP,{n)Y/=>yr=OmP(.Uri&p2\>2 CpEŚOV޾*•I7ֲ_L>*9N_xoT[ hz{0_-6kxKMvuͶכ>{K?9[Waԙhg:ht n]`{Rkx pn5h{f>~~pf9q8h!~N1ߢ8jĔhÉ^n24,lp-mb*R7ޞ̓eԞ2jP\~6h%O3zT؟y 'ǖ]tJfmZk)D$fc@PnHB.^KI*Tl$Wvkّө*̚ozE RADffR 2[y2G0+.S< ƛkK77%Fn Y 0;A$7qQaKLm@DUN9G_+v(qX P)euynGl^ N/X#tbyhiOy wDP!ͯvxǓό~lLm)|^ {4s—ul44y;pqQKu)@-_2?OX(i|)[u (/ʎR.$VԘx*ϑ꒜GH QհN?(.>.181heWbf?Ih_~,)ը"c?Ac =e DD}[PC(1o%77UGCnIz UZ]ÝJㆰ'ys4 g^A5LI9LLYثD6:⏡a7Hv*?)S~"`Ep(q\"2rZA}壨g mP³A0%I4t)ּ',CfK&ô6uHvmʤ6p51&4AHg:2+~UPgcEi q o=Y,YZh#T56#'WM bZpw+(vcDo6o0.a?@,fx< amyPX+NJK4;]&a é)z_\XG\Qo^5e:uL;Zd `.vL>oMnhNoM|}kpawf&#g DPlNw>_+!:j|,.^y bJd2|x$e'ɋFj/F<D{ %~#s(zVO#oi 2= E[ 뻯%j xco>i iu !܌3lc%#baUvXf(eQA-^[|.@I ` XtimZ@/Wz258 N&FljZB5ĩ KrE%UhDԱb`aR=V7QU45x@W.y$5ЖV3A 7k7ಫ]ڔԴ&S6? {4Tt0Qp3?CԶ '{Pq$3aۦgªW>o\)5ߛ+4WO *0x &V=?P1@ IvT΂MGbBW_ƴ@EgWUtuo1Uj4I0oy/[ .?He>cWO]Pȣ1h>t"˼@0\J1iNz+Ve/v]%z"o ^$*Nk*m!e8UM'o] bM_>F5Fq:%Pi'IG۠|FK2ғ/GKڻ_ 77v!hrIlL,:^ +ع&,75}9 }:`Ѥ{y6H/r zIqH`OighGݨ#ܥw=YkOI{Z{]$) qR~AjDNW|/v ."(dQZJ7zVP@5w\ЍnpCNOɔkڸA ^ionUl\L[hfZrΒ6kE8İda+8`zS72)93gA|sP&e{,,"2Vj%ft#a5_;]##p4+?2Wc]L݄ `OX+Yc(ԯ+~cͯ1'¿z&^6 s(]<P8"P}IeC=jל`AcֹdGB oNt)dC<:CE[>z(XU֛ .  L;@vytPo# F^J X*b^^[PHh&' ;êJH,,mQN5#6o˺M ZxE(oaoF<蝷G6a܄ՆG r{vE2 (@~f'iZcuXP䮥) 2_,T 7kcLP"OK`j $5PСG ݷK^px}KHޫ@ˋn_Ըϓ9!-xf?4-2W.~fpy%$:"E&)M RO)59&ڑЁ#h 2m;q:O^Zn&1.L}>PT 1{Hѐh!$?DA$ΐ# M@1Z&jvϑ~HД_}ߣŕԂb KoΏū"a77KGM9.\bt++ u̦i!dm_=%1$QI{SUIu YlKc50.ݦ] v0! c'Oma_8Ny3$[jiFiho\Ցܟ& -+o\K3H0LA25m&jGT5ZS:Əo I>&/ QҦ tY^T\Fɱm`Rlm(ґyAY`x~:c]!8+ rH:6UGbĕ:c" f Cۯ57N)GHOE3d tGSl }RES]ກ2ť,#.h~?t#b#тϻlDɥ>6+9(Ok8vEt$pӐPS6VL(l'o}.6~b]ۿ˱6#ƺd7/[||/bMZ M&m`9225~HWLUBì*8L=!nX[#{A" Š9h>5rUMh0ּʶuМJk FzO] ȸE~-ך[l_L]%@WY 0,š<;H,Ce)W^: z?yUL36i$ѩx1 '>mPO0HYkl1F},]. ciZEdZbD ~J'Pr !5בI=)Кw_3.bL,݂?E682@Yds`8TshDY&PpD#QW8tp`UyKD| WDabrhx½p e"C-§^ѡ(֋7Ffl"m #g ۴+8 Ɏ'-D=qE;cEwC.ufUC;Thח.+6 :II0jx`?V4[FގB /L*E7v_u'@>Xu@0cqTm"A2MذmFJ #'Xڇ[`Z.:z_ּf{&m]q歸Eb 곊zV4ә#uC]Yj&KvKm7O"{C]/tcfUfM7h)%~O@~]ժH-o`/M!*S9r)˓OD>Ƿd*{) +siU}_!5ϜrT>va9Fw&mRU;F:E+pئ 8v3G,ldjԒ(KͺaYIKN|7 Y!n;gz1tY@S\lbk9yޚUB }~Յr'|q9B72PNr/}0_Wvjp cxT4~"[y)YX푣b6%b^rScUG3E{ŲO9n C ;THt,_ne+uޯ{,ކgP8σs5$QSg:7-ݭ܌+5$ )4;hiH| Qwv:׭dcޭ ;AncP56JUM<8(yTUe)h ]j}[}#a/=LWXҖYZYvit1;gE̡Uڄ'n}{r?u42ÿ[틝\XMc6o#6iqu 63`bxl9ۅ; wynu7v"} E6D:2luv x)y5f׽)w0=(nK}JC!4FBLŧu}v+azU؉κ}q̫UQQJ xclɚd.EIb;$׋:f%\.2:(̺Lwmkj'J~i-}+- &Λ4ǵ9+[^5^]+_yF<Ҍ fꝿޤ_rqRCX sz:Xy/  Ka%o'&5DY~I +g׷tMwűgj"PWT!1 9uM!, K +5xh0 6qcml5wbsjdq'ၻEĔ< sЧ9ڡ4Xx%U<_ѫn aA%+iwN<|F5&@;VG)%iryo Ǘ7B~"078deJ_ID(nXY~QyR87rWARA+Rky7=6Qk2wJUeM@J~%BR<. [&E63cQ';_졽o ˩+18o@Nw3f]CVڴ=H"3`q,,`(x$zps14W'lM7^Sl`Z~S!MgQBNL^{~vvUAߺAus4*S#E8l9P-4ZwfSsgq{ ,TȯLn7MHE(")}^ sk>}s3 C`y e@3 "܃K_"&Y7%08yh9,/ê;+ɤ٦^~bf8d^ޏ5yCKdDsbU+ Ҵ4.5Zo^̤_''s]3 I1PekXkú3tV g&4ΘAU8O3&YHʾ4ؚ[z6Hњ}Y:B*jaـ`-V2G7y:^7\ TNh7^7(Z{ܑ':&R0Do̲%UKy+&DJ Dr|iA8oyU 1'w@͢#4Rma Z1(9>g{k n.3O5)>7cBL}qԙ- >KV2²^1/+-+Cwc.* _ N1 ٰs  LW(>~i/,/A$oCؗPT2mYjrZWºu|jr+)#ù,++O56·̒.뢗^gOyEqV,LНz@\xѼI&XxZiSS6,vGƵR"5aQ15Y,h^9 ] 5-t;tf_D$D`-!N= (NxGTM73 D%0KɆN+PMطK !+^O~{5U`Y`{{$6!"-p||W@*d })D]#+-Kh mD]g]ʡтyf]: ڏϓ_ܸh4B̤:>'SZN3-Z}*@U>1yQンc%Np%@ 9ˑUHe~/>1O l #I˛{◳--.gC #G^9m$;"_CS= ,$8Yw_4m#qmx!ӮU V+K+*qɮZ"d<}_!`5I2$8QUqЕ})5LAtdc2ݶ:VQ]cs=NC%!IVLO(a[t{ǵlF]j62CqLx %֔_Ry 9 O)$PZFLDp]v%yQDyjoA%QFه Ju* a+⼧&v$9&OY1οaY-< )ћHrW-?K-.\6\#!hBGe?7ЧF Ñm1K9~LjRh` ޛW֞t\H4 V%=zZlCu H:JQhN[x;MX̢͍j` 5~cǎXuTNGOaZd"'&g} v-8;*qSXe},THxAK6ʘ$) ps=n@g/-waM e'a]'N5XHMzꑙ}s^3$ǒUX{ gOtRkH@ɧ}Z{FT#|LJ)g6hNixYM bXH[|Uq5UPFV|1s*h1H[/ ieF_1f>zc\<fD@a]l`5[+f .["gXیQCAp I .' ;ƸgY}b>J=/gW þL,Nnb9ץVHv+^<|Q)dAQn <<|EK}-Vקd-!U*y>°̯;'s!^ t};8gyxCɺDy*&>-ںd?ulTx!w0^]Ůo7!@ktN}4=F\8Crkݧ:UMfD!b'b4ea_>?6iDz=k9s\2Cy2qCr1ZL޻8|Ӑ9Cf*Eք3ߤNoXQZYGʌ.ԚC_{#yd7BRR9mDh;4$H϶irlۺ,2§'"fo,']uHocAH/^١_ uMF0!WvT3 K'^xN),[]K }9Ⱦ4, Ψֻ2A"9gZ&om50K4S1^F%ØYc_vӡ.uh f.Y1ZH986;_|NB0*ef4n)qla߲'U;\Y%E E'(o<2"TĐQI$o؄_!dfIG· fw]Zq@P_SZ/ T]a9ԙL6'E1%@ReHM~#)#c nČWaƽJk' 0zAziJ9˻B~|qJӢ Wfqwkv.0$w 2zg,r 7x5geYĀѰiCvҨnL[x%Li=t q6C08*~&;ƢSZR XƑ٥%r*BxNYt-ѕFc2yk@\ыV:ؤHY2@`=.6eF͆ Z@fxvO,&q&;QMyiIZ el(wIJ`#ښU/,H])N=㎘/M%2*@am,;((?ꟕ=vܶ6p yq:  ځ1gQՂ#HּY"\_+rqt 7rEdu1Q==TuhTI5-=7Rye""`АX#.h @j䱙*?8zZoϧYwECHW^폺–oLq/{"ׁ=lf,#J !&~%Zal$;ߜ+4ׇ jZe:u㪱UJuծB'U҇> 8ވb-Pp#\j\wkkOiZaBYqlz$H G϶G"W=H+([E΀mJ6:y ]].3ýڂLs+̍ 89;{:Ֆg1('0X g%p+NA[umjN&(B;ý f8 ld`*F~V2`#Ciۛ,ЋUD4c%M[;$p$`Fk }ZC\GFty=+2M輔UکGCn0S ɒ /;%nPT,Gh:zV9碟PiJCRE7./4m GVt,w^-V M9jƎj_MbL [ sy7;23s3tLFpGQ\@&^xϘbK<2tI+1d*:ZeˁFm,/DADҤiWaFyHM^An {Yx`)HU.J7ݔgn:L/Nr;b244MFQʋx ­IQK3߱1݊.c:ޓuY?qxXEfqt  wpOJGh"]z\cA(`_  6܈-rz 4jwtбRc$0f+vle;,P 1ćRMez0zJAՄDz,a ; k5^BO7'V>hqI.a}xu55Ƙ5'~vJ.,aO! KqRڝ]4 ij9b2U$+k@tLꖾ5vLHW&JCkϗ7t-<;,_x(ȷeMz2*֎⍪@HD\'V>zld --U5I$wק۟d5sN2inRHqv*H^wu/}hwCEE@Bt3IۛCѻH y0~:+^J8}Y1ֈdgk4!v,p!boӄOGC."d~ʫ@`ɾ^G~;0m22jNe>+5k+{[[abgq+NI))*w$^'Rt'Qt[l96zYMQfC2ʠׅ\'O6hw>h+oվg&-Nyjy Ob\/|i:9P d\5j1y^`6.X-697eh{u,-2'IFa)&ض dr*G2u- K%IbWa}-|F:iwlJZMwϼj LHc&Dq0$^>ل4k㞘yßȈf|.AZ./ I:4V%ҫ!!Ovd#4sLӰS½=wnƋ*4|W"y!hk r)a]M"I_w}։ÕmĔ$#7B__Ua%_>rR5ßԌLOr"Ȃ9n`bkCCBffƃW#W7# Z\KhVI4 {+^]~7SupJ׉;T3{JEyBC$Pz2*ߌ2-A;{u!c{<"J14VD;x t2)t肻5 ^U$ЁAFQ=7$c)93uلfm"/J;gݼ+VCʘUy8}(2nRre[hPvOUa̤$;\UJ=L_6iv&w j|3C4TCCNfӏ2ٌH[b../AqbyKӧ˻uQ]>s|P|$4 Qruº8DRh\Ac pib8%"z"_ Vs{=$Ũҙ<"0X=ʿ]A"o IuO])҅լr@b|0d͘HeuCOsBt]U<S%;-lͨe?HS{IZY:W +往4!K`݁v (}4Bպ9;A25M;cAUp ͭmݰyyLAnXjАlDrY/N(`r=SC«ۥY;QAڙD"bZC׌a8,G6hQ4ȼKWߖ& wÑb52Td46?/]  Wj0k0 PطM^I :=e#TfdXå!Y ]ų(p2A pZ4%yǭM،-eD o"?>#] oL Lqb踮Q'A>s!k0оDT õx҄'x?xud=&c!eWI}v-]:c bd38z61Z' 1>ͯpet=UNRƖA/w6aO' ,WOָ͞MftԢaSiL Q#0 (}GNb1.M4iZIK&rr_/Ku=r'6* 7BNm:lnhm6kA|ԝ~}?o1l~|J4[-G.sszzle^Ëkj3XA^m`~c<#ITe' \`MrD aosÒnMK3"FɐRj40m%;xV0ҁ(N}N}^ם`vL&.Tөrk9TT$?b49Y3&>1lh Q<1sRviǷ2=.4x #} )!&`+VO|9"0a\wΗf/OU0?hB* ^5=CuU2>pυ*@]:?OdC0(/K.τ8[lFK]!_6}\7M;0l]5MzMТ0'YOl1#: )P(ъvꘖw^n סK`d_dWg@V+x{lʺNr[_?.mgwc8tkW1vm]Y8V XT0g"eWY2¦-}@>8O*YEӃhнkD5t6'yP.[\N5kn OHSmF#]iwd(ǪSՑIK'?gȕN ,Xw\ M Y'T|*r/ZƌSByh܍U؛&r[Ÿ́y7F 2Bio,.Wu]w4j"5$ )AeeO8 ۴g  L},JMyP'%fVw9R^&/Y*o?;`LW!–+_-/?tLaί G*Yfavpyz-cm\{,o >>zp{KinZN#9]+C7){X$,oȄ4 7pz,2T#'=DG̼GH6Ԃ"P]}Wp2Vf%NӛECz/ae7IP6=v|oQ%`=v8[q\`pE6dVG.Z1nj+oR@G &(j*ɒug7\PoeOreI1`\[AW_M.Av,%K!NHT/^PYsOWa`f::ţ96GO6;p X;#CT>4: ?OU6CHoYgǧY2 -&5fGtk͕> buVRBݰf`NBV7o3J*-@UB2q)pۥ>,^1K@hΦ )zqRd.17RqE.܀TߣN'yNinӉ`ߨQ! r /_:?dU.rv'uBu$-H7CxR΃>Te6-2YWPQecwF!؈0?ڪ {L9V۪н7VAX):˙eDP.VE{:t}JhH|fQo+2. fH*0ǿΪd-FNa|k$JI==0KJV:U ;L?xDZٯU7mhՋ4)Д\ՏHXK-Yn@&0* ǍD:`^)Cიujܗ`)`gK A1q;o)Br_͐[ VnKxXXTA6 h!"'.6Z{+C]炴nu 6غ:smȡT9rXB!UtY~YTեm{XPAG3y;!B#%bqJ`VC v^*H҃Iފ*|cOvB5-d-J@ء>Ug;3Ȥue_-H,j]Cv윿p>j HY`˸jSvm&+hDyߵ*bg󠪑"0l~~z $ kU)#4Ei2M!*% lď^kv=E;žc ;ςzOuR}Ìzy8OɛCC3=BkX rqtQ6<'ѮJ<b.3r t+na"7uVs8Z:ڒye.>hd'V]v%m'4ƩPGaKMU^=`~@ fVNeiѹ9M%;+j6Vp|u䎜SwL LNg/y~vN.rB8G  "ggj0ϓPC8M4WCl<!# iT6^J>o顖1k~;/UlNCTRDE%)#oG. ;rn7cxALU:qZ>)n1FK&ʤBQpN; y@aIY(bIK }7MIƘͅM7!| :2>vg;?EPŘϨSt$>?葤E}iUq;jo-Mq։EsĀmD f>Z]8Sz9a?OVPxjSVn;xղMR^{FY=?v9a`,Vo&إH2R*~[ȁs)V%@pFJlvc6Xr7߿ 9^@joBUʒ )(o"5]`w.b%E2 gc7' 9ێ&h]gk;0M4\^wٴ.]Wqؾ$2rV(&mSJ6w_;oA칺"?K0H5I/~TL!I4,7>Rv[솮8c3w(Rm;?/A48"q&uL4_y?+:27Y2J|.-QabH;G%PFsITfbp.UEipWhfG $!6YpO"5bdu XDiW=/}cXO+")UgsF߳6y&X:-o$UJ$V>\:fl:dJ$*3&߬q`"=ZCr$&t/*4l(av GՈjnc}%ͅwbTC") SͶ H?ηU#&hhoRi kr?<-2|x.2bAv$+a0nٰv?p*"x2invk)mc苪m% C E8;T$p?Xj7[^lW@z`hjwԚ! &ϕӸ4;(hʪ7`X9 "09yޙeC z6 ڷ~gjs8R*Lڸ+w~wCVՖCYlӌ{4nȹцb8y61WxY'BONzmq\#"fPbթO4jCa!8v*YdO}NE5nfPEme՟vg-oYgyp,^k?͏8glZ]n{ex^e |!U7W_NIxQk{N1vrRe"9ٟI6hCw)@QhHm/ziRT,=\3SI6^% O tul)+VnaZ *{k7uT=)kt'69v (^P}8<NC2A\INtحv*,MG/'Q﬒Ao T'OҜN8!wדPcR!^1trs{{@CNe<$F*ӴVq"/xm+2. PpF{#>2sU9䱩FO^ E{BwΌׂ'-ITxւ 4,j32Aƞ&[ H027lS8L W.՟;"8ħ&:1"t@063/7aԾJ&H_YX9h-@r\ߵJ !DPLt0~jŌt n܄6V0>8<: 9B5_r}0䜏6arʹKTxI^_6Ogi!"1!qO?b7 ޟ>fQթ&njV_ {*,ř BIRV pBQПr/(O@ /Y9Ty Ҕ 6)4gHm.>ݎhh aJG@f u"Bpg bg<ԹBXu6-6R#!jm5 Eσ:9CJD&ZP3=`1))Xp ER[}:k Pm QRx.doTι1ET]oi=aNp Y^~@t4d>R]QKb+kk/K~vvE@.3(#~"ek/F;(K 4U-97퇥`WOL `|zЭE= lW 063zUФ5*F|TೌxGEX⥇2ˆ~2TQ xj @OA}gF0'`*x5+̋l DO^+KøG t]t,ŰTbSI98jQ@VEgj8̳ 7Lo椷Ne- Ad<[x7Q'^s,85 }jEDЖ.3mtg uaumc3v;,{Y II7leyo9W?*kCE|J36|g ?&$$Jڱ̭Sb}M+ne*0 C8zbdEaDU>aHq0Ĝ"W 3o@ ?dPYÁݸ̓4hoG&|UHq}S]nvv{UPc;C1mq9̹x-ep.ƮU6\f-VnF󏑻-Lj>Zf{r2xvI YVCQܢ%ԑW>ЖlGF|!A86iW+RD$KO|`fm : 6P ̦g+n[>dgf'᭎&ٴ8b7M "Y/(ӳV6m9r.P)u z hN2~:rߩG,TOӀW7Sy$ `&MnP,]y?e:9D^ύ6*ټ aTYh_&t0a7YUv`?bE2.@6sЕ-&#rˊW( <77xap=_P=2Xrޖ'J _Qhj1g ;u Gk40$$5suptxA4n^48gz%~@5Y6nXι' " pdbfZvR7 ׋ʜ!A >G%&qQvHl5ק4i E* f%hUwUSrS՘uf߮O51C:4XQqVM1pœ=Jsye32TJK!yJ=l w}o %\8Fx4ѰpiuXIK!4dX'T,ŕG8qr,I*;[mc4v^1N΍d[& ɩۚg\@eāq |"Z:c֦I$5* 9Wa*Һ g. < 懜…U( asH W[u 3X;YCH<ﱱ9I2n44 #p%A,RNLLcEH ,4[jNec"A dn8VVT5%]jBY -y`uކ^;XICrǐCizd:FRB,k m6-yntxZ9f7[wag~|0G,ڽ:AliҪ=v/M0]q7+x]4ZH2e7q0@YL]4^nNsYUO2gۀh,0<>h63`CFjҘ(^SH#DӤd?IYq?ˍ' 9d$dz_Zoq93yj_]6olFŠ|.hp,豑roJ7ﭒHZ53sFPg:jZ4As@&xڿ Mal4SI3<:Do/ONj>&tH6&u#ظHs(Kw[&zKBtv7Of23|(nTGQY3%y ܵ8U Kx[T:]-qʤ˨(m{Reo;@$,W{@޽6aRM8b~Yx ) Na3"\KO\]IZJ /JuUtM!\@AX XK%26@KP:1Vcc$qӬm`|t9 3*Mnq`:wFv7MH<}?x.2 wx,ə.O_'Q8ko'd&L[9Z@fVwUw/'}i;3٦t)CJtcߖ):TAMWV*đ%.λŵwT=#n1vqH W VتHL$NUFLW3ja΢z|B>t:C^(+k%e!342% fZ{OR7 Ȝ˃ .W(At~7\:3,: 􍚼qs؄7a8/2])V]ED \jnҟmąt;v ;֫]*@Ͽg|m;,yGѝe0BlY og7Ex>/z;kM$!@5F13fzQ`n'M<{ em^1yc8'f,NJtTv*6cDQ,,hW\]cHtiբ"n9!#b)Ip:[Xh YtE$n(.k@7O :GWY{3lUFkIa,錈l؏kU?&d<ܶl>t3X=F\™Z9?c ǐ9-.d K:xRT^_e2܆ ۲QK*ix! t .ַP5Tԛi[3_ɗ^'iu&nU"Zic\bkw#dv6$UC<5=\˜l$$HXܐ^L(<ں;uoD  oD\J|V"6W^f"'Agt|=Z\z Bx]8RD$.ъai./[Gv4ϐ*=ex88uQT#fKt;vKaf`jjp'}LZR "xu-$(~l+U=\O˔<'E}wȊ"zǐm|_2qPlvˢVjnJTɷ^AlFP -XɲކiNRJN UN~JOWI"Fb;.;ӊgrTQʐ*CgFn)?9¥E񖃰 .0$yk9a sǺbVnP1.Т Og冀sR7jOzVr+ +#`XQH11$~]3A3cQue  vE`7%JP_CsZ>H^K** }>mE6qZ!O}DY FS{I-Jq&iς9&WU j!ZsF/QsI+[*geL]^P[p?ar;s4޿JPV +*up0NJ=(ue^XIܭ^\k蔮lОɻ>v* o2sOGrE Gg)”9d?я8t'L|̘t.,CL}BT@X-N $R%m|Iv|`RG'$bq3m& }2RVk|Bv%A1!62Jzs] nwG\V*y5]Ml]W8$M#&CsQkC}(6GS@'_Jac+m;Pt8sn @aQ$A 3ϒhQ&QIW[@no v/@PGqAɷ8%%fAc0ᇎe0FlIs,Tg!1NТ!輟Z5R2W[#C} 6( JOXd7/F.Ӎe ݄̈҆[%*6j;m/ µHyZayܖaa/ĶxTirs v ^\ z>cH%Vo wԨq|4RL-r0a4E2e_,Sw3&"#v]l$.jJgl`JvY`/";iuۄQ ~2PP7l]QjzbjD PTifdzLiN>C^1T+ATfMB35b-.ᐼ6T@Y7cmM~Gm2lypg^6>oQA.#^L><0Zs;ԎѤ9!ǽ$ ryH(%f )g@M(O^*2 jhkroK#ֵ +,Ç2"ypŚWۺI,WvH&Z$T&Y PWqŪ sI3^:=)3EMv{K=v)N|b1uGKW,9KԵnCG \%Z* 䞠1䘓o.Th D"U&n.*poO xkìZ3qh uMupAnTRctwe^Q#ЫI9-EESxshHJ2yqU!3be O diS<_hjXVJRNJ6V˵*1씐+pE(T)>V(o{tw[4[v/c[>o<, ta~o;m>'7ms#?˲Agbiͷ`FR8h.Qq&zJQLA_ACxicCԄ"ƕ"6 `}(>CavrϨ\﨨Q/wF_7PJ*0e h+N4G;2) *'S U݊T[}<rxCl-5]Njr9Z!`6ZS:h ; ؤ +"x!߹FMi̺ 9ʢbyTK[3w;֚s.x8Yy[Tۻ7.P7VؿnL :ʪ.s^[y*ט`o[-B%WqAՃVe[@]1b1VTןGfbT߂&]8{|x }IBolel2Ae:l$AcP@Ҏ 4&aA] (oˢ1[EDYMmcyj+~ '[$g%@=OPfAHB2& n"gcrx^gqY ^mĽ+q#Ʉ_X5kSA{_$<)a_A6_.tqy'l]_ #o%l,ߖTUO6y޳+0HIBx㏢gj;K73pe"_>!y3z}avH1siT;#:EO4gcNoh.:Os5dq@/ϨCǦ4ѭ`0ᮓ=3^{ԶDŹLeUVK"ZGJ ?Z_f{^nURMdo0oP@JqVa\28azb=xߖ-:¥2x"^fI'-L~*Nׇb^Xyށ,:N|ma dx tMRe,S ]vܥk)~䩕љ5b$7&k%oʋ' P#†yNR̼ΙeIqtmɜQr%a&l;r}aBCQ{ jW 1s*G !k(fTR>G$"rr`v.>y $bB4?+5NM.VJnJIjy@2$QX# F4SއpMHB߯jpG~ACh=V1mM[zk} c&J^SWpT?3 -HI{Ռg>y NOKL5y,8{jGybK8')=Q(vs] Ǐ|5cBQE*X?D b  5W_0<5Q<6 {^]eBV69 Dx-$*$Sڣ:%"p:5< u!>;q0b{{]Ve27F~+#UrPaZ5 2ou+CkbT1_O#ۣtё|O=}:5,ђݎnpώwd 5YX_ƭ@t mIOQvrJDwW|մPi ^`#)'; ƴO#OLXbFumۛ)(I%KQ T0oR_Hk~Kqp}i)zr޲ 0J9O'rvIN(!!4`Z4 XlN`VO玔QT?204 Jř{ćBKBϔ蠴>[pY;BDnn6dVԇ~r"ē"D Y>2Nsic!WRPz`Š8q 1*%4Z)(䁞QZFg>g0 )-UЄ><݋#4d N=0j#u*zיcF)?Jr7e'y`7bvt{/gf?_v5W &řhn&,վvch_J1DRC[{|:ʮE; =-JZr0A\4J,+1'}Ï͈ /Ւ nJ{Xjk(Mt9I%Yr?ʏ%:jmz)7GwQ-<˺+n\擰h t× -wWA(x (x JAEP|}s_nj R$T'ܸ|)7GA{br\ #oC (=4}vȵ޲ٻ[d V9|]A) hQ!0U#ZC_jʳYR) ;%ݥ1,v+\{e'[75>YB9Ok +P.m`w[ۖ{ e謲34lW bkR3ᅘX5Jeр@xfC=+MXZŭOǷMcLCPĶ8Ƕ=9)U78]=aaKH?, ޞU4lVЊrRSގQZ~M.vVN^¿Eaך-<y41},00+K%Yq<ݭdT\`Su9zz|Z:2vN%9ʠlJ?B_fKMʩ76\^Rt<}}  wB>%R5ywҼ~ۓ]GHZ(z_gyn r/R ͰtɣC^#t1|l޺ k-uMmf`Mkaے܍}^i9R/e=: HɝUZTϜJ蛱"KWEnGNѓ 5͊hc35H[Ɓf [j5.Ҹ~ pTJ$#9^0V~H F((A.nQ<\\#gRD_S.;ALcTZ)C=tQ_yU.=l|` Ƈ YV> _z "/0-X5{\iŁ*d Fb;|mF_;A!ݘ^n?8/|6ℜZcGHK_$=58Ku3ȩ;X{!lVX.O,5>kτ$2 7MD)VVNVclȤ܀SCO:\i5I.hgVW} s'+V3?ev˄Hǝj[tI2B@oD$b@^X~p/iT"c3rq`{+Xq_$VzkAm~/#Y J~ًzN5m\&w/I?m_1f$[_ֺO3,HCd9Ge"ugGDǨ5Ӵ'নlf .qM rF$=La "Rw J+omb ]ڷV,uP &zS07H1˅;iE!=B4uc`?x`m-&$u QV\skRÈbn_-8Ni+ vjҎ@ɔLװ߬Bi1Kiw` 0=.O/7_;BӒˣx w:LCisл5qV≱'݂Sh& \drGјy.-bd@͖,rqLhۆԯsskF@E^jLcy<'ژLO[Xd*@kPfP(<? σM?1 . 8fy[]HEϠ8ю(&` <;?יш$4X*5E%ɸT:5Cɧ$>Dl9mp5)9anFR=_]U_7BZսE3yP&Yznu 5__ /q*^=Ԁ-R͚byۅ@OdQ O!Ǧ1rũ΍isgc.r uHCѪ{(!?vO7 dbvx7 D4'w^RCdgFڦ&ZAI]U2,xNv{= M'jVrqjw8LG5} )S!d>D {Rł l@93QXHغ\s;wu}z0Q]wxaclj_{0UgnϧcΑ P^vr q Qm' {2GZ9cA[{=PqlHCn7UDZ1JB9ʿ \ \lrP(UmLܳi jOoz(_l'ehE.RxݦzXv~-BB1oﺉj@.,ه{MaC`h,|5_]6 K:?WtWП98oi$zVXR-#%%)ٮٲqH)QiڜWoMMvu]e+=5׌޿:f"Gah"nWmq7Nv2Ej>y(2j8MyP^H$ OS؟WFXldÇs1o\$X護bjW(<᛺-V ULv˛~za}~&M,́C'ot(`K^"~Q`SWϨݟI_>op AG[5Rx"b 1VF5"Ah,o[W #Z6}.( *k\mthHb,oyr͵:1Ґ_*.m-`mr,(ŊIyщ0^>Qv"!Hw"k2?v-w =of#鋤47r,Yn{B°17 f8"7[P=-ex--2ھ(X}f>w[ Ez.HVI'e(ZRh-9AU{"U3d-HGd _b Qq,>E*S,V?dC`Ҥ2\ǎPP1-}59 6_,V?!#ńP(1n[qINjǯ9'wu< X-_!7QsIݱq/ ),<ôBrV9i3-X'@_XXQ F/4ogı6Aښ?8|0/,57߀khp}|Ih\ʗ8=tO e =kv>5dp7rXGnԈ$<1MA}ulTܶ{_͓%iE!/\~a-Q=]_7ϲ<W/+^Εnȳ?-SOYITX{''8G@`O_C f͌c>f}CH J [Hy~8$h9z94JDR=z/rP ex h+PpX-N񢋸7Jnܓ|/`(퉥tE%q|{t}ov屼oIX1|.|X/ MN2,F9G:ˡv e(A0YN!,a)ϾB◣彼dAI ɋ!q {`tYb)ғK4*4\_VK"&sr򙲪c%L镘uA1Zk8Dav#?ZVHfC'ξ/D/u,9H?ga rg$ NmpҬB|:u]>7LKzlLB zF2{rd\Vybӂp@o2lDa]hD@}/Uj2v"yf0x4u9OUrg 6Z-11.iO_zS%YY`5sp4F4nAjQ2Z~N9IIҫBrjyJ #>F+ Xk"*{g-|Ll ͛_\Rj6tgP."T<'[qѸt#AQ_r 9S,e+o-bҨ[XiPr0JmFfY:ՓTL |"퐔^ ] Y$JN躘Ji~Ku~}D!+So!wշsGUL3-- J(JɢE+5+>Z]a`ZK&l1k?P\:iA1sD m83`˰H&иŽnaWøv{rqpnNVBŨP+~q+R8#{TC!,"˗i6줧UFKND Î3 vqi/#9~:ꥋ& c1*G;Ͼ ( &3AˢakYɏԔ\dUyMqOUWUiSR_9< DـqDw#RedgGa*x,"qSN2F)tLBu#t'(zzS"#hw+oz QnF_a!S k>i31x3[tK\!I_u 05JμE{5d&NCI]_rαX'[ ݾ\Y&+O,MK{Cu"OT2zMm]GXQM\eY9dy !`^m5 !9Q>aEhb$փ|zJ93b;\nD%peӓj5sh xT7kxb4>Fm}i( D1ͥDP‡H^UR٭g1 pV\-{I浼~qSݩ878.-|R&<"y$5d7X}y8|5GYn먵TnO6tΟz (yJqLW&Ԅ~sZMSVX|u9Fi#=woOTƚ\ء(^0CǷ2xG/; "ʜmiݤhJ6#H"I= P W\u-dN|+l.gWz$Ąck6XSKyBn (c :3$l,{ ˬrgS?ռ^gÈ6&x# d r&Q(&P qK3ܿ9YF=LF-P~'_2+TNeۡ8 jr7܇G;ĥ>]{] eX }Јg %N7ϖX6xw#QM )L<5wx+UͶ6Z\3 D N79tҪRz)sG@xOB&nkw p>C"SSU6ߵpTzldM 0y%ZBGb$L$M֬n=m3ϥ=J %8ߣl?RY? iFWx4]*c9C>~lВ2}]bLR c>3xO6t6ٞlBNy STU5WOhǣq&幻kUʅ<&_1`: jO=P@p-uy/vKj)`yMؔx ?5>kX>0-EcaUۜjF! = >#{OoV S_x@+5vvcMOG"JᡱO:(>N ]UP쓀NMod5[у&D&y>9I4ܱbIQ5_eeNM4i5ņ| :D/n \ag?4A}JK:33B`dO3iwQ^aֆ;Jhؚ٭DD,ߎUR5қAƴ ?Wg 1aab=8^:-Pⴎc>lfYSh6=YYB rڣ؏liYhRWER(コ^QIzFӘ4HA*1ZKNL*Bǡ=hvQ4U\\+ ㏬)28dݹ̞^fw2ypu_=hZqͥR&Su&^q5ҥ6g BA@k!g6<3P+( V3t7q.^iOS1C*"RՄou`)֧s#ARJ'{^o<;:,cI;w,|3G p|m7Qz=¼;\q\m-8)7>b3xPϰ!c:%,#ˑexc :E쒠:PO5A}s))[O$7|54M]zxv-giZ\!=-m!]LeT-9[*ZL)FZAjp ?R@=u;p3U9r18;nң~5rihpO aɖǸĦfb[f=qA%tLn3;K\r(>6-7/=3LA& d[CQɡ=5Z8SD"h rp9y`I <HUǴf]_UebT+QdGo@l\Rrak}-:_saB`}:!<ܣj 7EHG%lilcl[-+_‚ UӯVpqHtSg}3~𷼝lgONԌҩD1B^vAY^/ }h0|!coi!௹h'zUD{0x0LO"_cfC/YK З~(ONγ~8P99h{deWSy?A?Lsm&>Hz1b;C{me?U}vn>#2I5/Dy"F8ܗYYN0)41;$d9ferk?|HUE* 7ƥb|̀MQqf϶IvYHI*Y@pLw&_rg"m?̬rL,;i\Td1(Uk,NS-$ 1? <זT 2K:)3ݰJ) c[ W@"<1w1,{.P3CmYJ$q*?Xtۧҭ0DIZ"Mj:7>k?(oYf#$U[0ٝf,VecGGK;ԁ,$,|-޺˕f.v͸Feo "Lv |W"B͸6we:H6#':c.C7X l9pɥ xy* 6*Ц< mb^!J?4q 5/q0Rb>S>`?:b`ٱ KeR5 ̩Q01(/D#1t.PtΈbg0pS ,ZF.XIsDGꭱhU5B|ǒ6<~߈14rϲ*D"DsLzHGqVC,h8Q]|NY>Z~"h gUQK4TJed!v.ЇE'"&0UY3Wb9I$5/3'>/IL+-Fh=KsƧ1xHCF]*-U-O) ݕI^%p>)i!n8, oΑkJry:&P1={g-# kpeR)%׽iI2iJ))z;clu,UqPK5uP2wB i-9{BI' ŝ^=⋸H]8X)hX'Un jQex!xVeҾg Z)|<A@M3~蟵}OozۜJP]ku^򒨅AľC94eԭ͝,Lbx^Lc]]WTJ=}m*8:)P!sKne@eEl*sso#cjtų_*@ Lm2Ԃx@Ѓi8e>5|rLDڤNHlqn+ΩM):Vo /hKf!c![_|&$uRnc/".ހPDڑ3O]W&I2Wue(uR*Ҕx'߫$u&EY0\Va[ҿ2}v u)NnxUdLv*$7pdIXCwzܦ@gvzU"\|tG QfsFC6%;Res>DhCht#]QY&.fv0[1m;1[ I:ݤױ9è۞ꁍ\6ݔÉN{tUZ$n$͸wS< <|mWזw)b1;SV:uscv+_+7o2ɖӾ3 0Bڇ{ưu6NݱM]Әt cb>$b1ɻ-m]wh;}?`TGC:>? ^.OQ+U׋6ccՓ@{:c]Y>[G`RێUu>z7 , %o-2%"u¯jR3H U5+^;z q#a0F$@01o:'C{)Ug^FHK4e8|=֣Jv"7eG5Vn4'̿i(F Nd`i s}ߐTWFb̑Hz n;.qʯ!Ll_l9D/tIS!^&!,#uwVWvؑ@"I4|@⤁H!!~/,F* zW%?Ƨ?[M 3WDC}H/xAUv>L QY!- vȒvJ=irp#L˜R0X~4sV{y$݄1wSjy9ǸA0ְ7;QsԵsi&.ovP(Jg"sPy}+[b&}[#鬹 |C=D`9D@im%% 5Z WήAfVƕ9'&*wx9\0Q>)!0#ɸF>I;ZLpJCp#z*~iD0u,t9ѭ2JF]92oGl%r-ꮥ5D|Z>n̘R$H{=p*isn#=5&ZF%V &@1WQP #'xne~$ZM9x :B[]EeU[hgi쵐sK\M^>N)Tjua7Cd9vLyb^ d)nՅtī1+RgwlM2hBayF]#|׍Ҕ} G3Rlz8nvn?@6`QDuyeL@;q/ߑn5~>]p'|Y^u;4ƥ}cf;4 { %)g'`K" WyƒJOH(84'@.rawWއ({ v)m x_XJaFXG ^~q7hK~fuKes9z~h\l40>jj9 z:{1vwr kb>: pjQ}QAjlҞ [+*^5*6FC[aI5K'(!,n\HT `OУ댹2- rGM?u< u%ѝaV "fh 1%fYH!f dV|:YץfC,$R_KcKG$Kܦ9i[B\D$^n~؇N(V\녑Hm$k  ً?O~͆8҅4` `ؠ}_~E%]'-U]ɊsIs_އXK "jMH]xqJl= `m r 7gVL?f-޼U2η?--k^ʚqG.jI@YQQ`*%dקJ69ѵ[0 [ѩ6c4٥PpP 2b{Oڌ#Y` I#ʉ*RfX LVZؼ?@,p{F+}$<6?kgnJpp}G(іV@h3Sh {^8de2EF!u P$wJm ՝:{Q*V,{H0\4t|#(-*Ȼ{nߦG7v|pCoxӞBo0?qkwakjgNЙڱtIg~m"PmܴNml$}\@e8;3(ZtDS2[ -S ez?6@ C 1tY[;yx8B6 Js3cze~9[rBQ'X>ZYTnNHR+qޚ)Y@%5c2$6-vyUo'|;4 >up`{58~tAi&F]~KH$=] 0^t'9C*dU)0_σD-hŲ-vs5IŤu.l@~VNp]~98|=ʰ;G\y 7w\"zG4# Xp*aOP)zB"b7?TrdVOP]; *b5t()ͮ3J&ZzN䄘 }5̈>F}&+ˎJ6#T1w9:0舀nNkIXX*P5~hߨ)/\94i;i>l=qfz )1B| ycWcˮ׸.*4lmˈ%)K٧Q\*C(^z}gwZ N+ªNF%@mE/] ݦ Bgvc &<5xQ Z@u-M3pDʉp8cyPjO"\KHR| {Jz7-hp'fԯ4E@os #'Htv-.+ Mcwtd+].nd(pӂp>Ed U`pQO|c?!zfmO "_,,3:>U ʄY5PJ;] 'Xuo.T٠Bv=LA=-ͽ6ᱸZzdQP B&#5#QOs`ǚnc=lX@֙1S- 2tCҿ{:;"kI:Ƅ9"fvT ET9f$QZ\N$d:[ɻfQšǒyy $m K*eEĉlF8=B"K>h`Y!-/ e:meOh'Nr2 J#霂[ 4U8CG :|7*}:OR*$NE-;9)-cє!~[}pkT;G £<`En(O{> y1Xp R~!G ڕv'85SPgAa^X+qL,=XRȈqҗ|k)5YMbMi&εZZw.D75lr9 1ǰrҲ֏TD&9ˋ-~odͷDNx吏\ׂv)1RJ|4iW[yu:a;)Do]U8dL/qNP MZNBw(5 `#fGD;蜁Н5 Ƹ`a_*۰05PIdyVj$giao)/o@& ovQZu~@p=h/jK~ O;nF٧ALd^.'';Rh-6_&#cR DEEDgWCs_:FJ=1Y+ÅMO:M6s@~R3R^6 ڲzfwjVN8-/ u΀{$+eh֧v )@{jtц@#0K]%Ù1܏f^j8 ThD#صsUʆaM(6*$3t\mE]zР7"3"dp7 Ckd7펎j^r;mrG&kj1 ;ߍ;R@ε xTGY2I%~dܒQH2T% =>ﺁ+SB8q>hIKb˲pcraew/JQpeToeOOLRs'`!Ľ,n0IK .,ǤxI$%[9!9Q~W:C!7r^巺"rwxRDj‚}<:O_/.j1Ox&CxЋ'~sω) uo2US)($iVz# }M”DzV{Y<#v^eK8ۺycyycYg =Wɬ/_\.s /;t~9z2XwKҥCmKbUֆ\īue<~H%:8ZˁjHF>,rqLlܤC5RaXǪLьiI\)!#nFo2x*:m*. -H"#ɚJ,(?ň@Y 0LJ`sVNX%>^Ɵ||Itp%yz-ڋHFLX$ss“L00R-{پM7;!^^T y6#8_Ŷm.i6F&`U#vj–dkg08 BoH3f`ŹȲgH#`*s\_͢o'hs8 mi< v7ӎav; |w*JMv+QdY4yW($2%|* ,|Q=h'uilX>)9}~b 4&SR|ɳ81GmטF+1)1'*tPHjU&FrĞa0TG]$X&xYf抸Z\ZGiDHykZ430_.q}`zHZq"P[G&&6]"N9mȧ=eOlʃ2IJja؃+툣P_ZX9 ҩ,Fh IgN?b=+4Q}R*M6h 2Ě}.T|(3;.+w{IOeY[Z[{>ObZp|6܂NF駲y0S6+;{yTZ>{>DB`q7+J6%M.XL[;SdPw>5NvN% tIpx "vj9Zf=ǩfT@>Q4A \hu͸ћȫzQ;]fXc(#N],EKo5, 6md[0.`XO6qX@HBK(S콘HҠsvD84v@J] ag/m2=!;pVnehN#>!{;%h70Ve#(aS H^T }[ ywSZ4<7sUdcÃ+VUQCɼߑ)8nKEM:0.vQ.~9 K}6Ȱ*q*ywSZUu>g0RcoSAG{ۅzZ)QGopBjOS'"AP|͛}<PD1Q94<Lh |b6H0ހCXj YTԉ(F}KԼ"IG@pxy1;DD?V=88tdJ qvJB:j(XP#ք6NQ*`!JxL_[P`YwsqGxXNޘ <0{b\!ARz{ZV&{y\z ?TMYLo%-ʵ/&$*%)@yg]`2`>KPzt*0!\ 0{ygQے0Rгs|S|S} ^FRmRy'I}\3XyEm#*>oH4-j+h*-ApOЇ阕$?j!KBDA##: ^g-o@y8'!m$T3TQk\$aɈUR7I% O<,* 5PVˆS,{[ƝaV<Ђ4)b"46BvBn>mQAȢӾU$ Ԕæ_mkUJ̰FhXPdPUpO[c4Ob߱,4rUgdr[x_i"m6(A[ ztH=zc^0ƦGa:k[j]3E5ljrlY1&üӷPHn8}wp̩b8yq:&eom{AE57<:2yFϴfvV Ly14޳^knBB.N |ޘK0c>=EOcw-w,'_` |z_HRd.FbF\WIyDP<҉GFu\PTBqv'dl'NC\(*vEC@T:hDI ԋNJ=k' f-RxpMm%|M[sR e Yq3ā'` w> DBwͪJF ."(Hyƚ 5+zjf!iM[H+@l7N%,w!7K '"ָ9{D e}d}3LpĬrt1SU^(IrdV u :7KӇX QLlDg"pPo<ЃM/1e4V.{DcOtqV&&ޘG4](?zr%DDڣFAȃrřEPԣE륊266 !FQHZ3 ^] ~50ݤڝVyvM2̃ VNfC i>b!"\d9de0\[lF^U~z !݌n[bORc6<5%w[]ۛttΆp܇8 +oB=CfÞ%i B? U5|, 2x6 _ETS9ܽz8Yla>˝{~@WYm+ucnv'U#e`>|.:D,S&pLmt $>3%$y& 5HX$ӵbB嫼 6$:{CJFjn^Nj~eHx 氋TGP.cVVj7aX+U@`[U >Tf._ģgԣ@S q'xEp~ass@V= tyV'1dPC҄su Rpi~z@xْ4҆;pl&ND% >g5BPVbF$:3q(`kfYz:0"$g#pcppqTX(Ӌ׍GP1&aJR[*w:V3EG^kMqC|- ]f*n>iݍe..^FjVv\۸"{Zt.K5WŽ pf;U o t9TGq^9^"/QTuVe^0 X,lf3@ۨ(i{cq^scFEh`9N# /%2M@>!l}O)ZEXOI0>(jqb;z h#aF HL4cYzΪ5f}&ܺ}ghʍ#Tm7M- r{T2:0i#8$<]-yc6> NJ-9$Dms+ŏ.#Eߴ'HFJ~6~\b77^]% xx1 HѿnHB*fg7zDyJ^{Eଭ0QR`T(Dp W5WbmV@C^_q\tCe둃Z#%? N/O_~1BFmj\.>ӟLɤ2Zu}Խq2E_(h-bK8|!K?92YL.RH@j#fQ"H|?֠fT{EDzên/*ԼM܇*¥${ϵR]Q&{m&6(/EnG6I6rTuP+j2Xx.u-7 m[ ~i r-EWPH`A%; lZF!i [~lfӁ9_@Wl&#my"<cQؿf[BeM̴.1|X::V"I#^\)Vfiw](&8 paoLd.1-մԳrIgC l'-w ő6^_kay<"B,sLI"Tf/T0*޾bt0S cs^n 5?^y1}rVᤂKv[i@KB2%)Ja(]HrI] QYfޢcAݚ, gTbd 9?ʁo' bNw3MlV9Jp1׋rmI(& a2u8sJT25C =7}Y6udmM7=݄eLOj}`A~ATq8(A3H JPَt̰- bvJTRTe 4\&tHg]nG{zϕ@%RZrK(՛Rf7S*We(jQͭLz;q-J)tE=h|6[6$ήM.j}=zҪk!^2 =ڝ^[EiUPm'&VUz5fc뛗l2dWbUT8K1I'9%:EVNCZd>03?[wiaL|h w bcLӼ2t 9%XT{1QQ6咂ӻq srG*mvX+s>bT&M&m(x"!thu|^4v*GF)UIi#j26,\y C"X@B|)V&hN/E9Ef_[9?1H[Zb;޶0#QR*IV_Z/T~W&µ &mNq{LI\V{l&K6 a&J++Nje㭽@ssSݯEoym`}L_DyWXr&;Vv҉EmCL:TlgJ`B9acxU"D֒ į$F2 tas]Ze,p!4"nhv##=L%p [+L(D9@ Rg5"ֻj ,4OE A"Er L%N*x:ZA&^' n pl*gvZpo`vKc&qEY4tmgwJŸ[ĦeoBNۦ+q xSB2T3F5NJۇ -gAR? =ϊ<7_N,}ӓu`KrNFN$ Ť)1AtљPȩ\5bL5SÛa>K+ OP>a+m6Rk̦ޣJ{%:nfpDI7×i,bfXIbg뚷`x1eƓ;B Hd͵8ؽ!U&DnpAJYAJ/-TVF&l%~X]RDUFD\_u&P' U|a<7nNz3[|)k3IT%wvpo†M9l)a/TPvb4&2X.!)$|vKBag ! P(܇ H31d00_ 2kQhr_zs*z1Y_#Fu@ɗHNg(%?;4Xa76>/̢?Bv3ٳX"n pbb2>$0IxH$k@bN1"srv epMCPc1%!"_Б҅^(|?q285*Y@K|$iF.]kB*pɭ{uQVOţQm,T@{{eg0ₖ7$;ʨ's!3~EV +JP&b=_'kԽ͐aÇE7]"%QA\NaA}d˲´|bxK拟FϾ=VGc:/ӂ_t+OGzrp8bB]4`iD 'K.(WTk_H C ]=Dbh?3Ѹg46W糖Q+K}9ij]OƇ3]~nPý΃ 8) HⷀB{p;Yt– d"dn$JpR2k"6GK!Z, 19CuPVe`l0#Jh|¸{# "]1g_ w#?" AXj?sX4x8>{ӷI /N̬(OVNGNo$Ő(9lņ/hhEzjvZ&j[^BeB|;^q|4=brd,ԣ tW'.&"]|GW?FkNtL  lfdtUE /ViDY:>ҡb֪_q."l7QR϶ItLQDB́3qz R̵$ b)\~F=:䬫 !Ow\ `Ä/A"핅M .SֆU_`N#gmՏw uC`Wn ADzj2eFs XJ+HꨋY1f;P lᇼCCN,1/ V&v ޏ?>)08:jrf?CNB/3Ep~}ٿ|7.zcV]ߢA>fV.eR_舖Idt& 0Վ\W Vj\Ta:mzQ2B5D>8Y;vQ795B|}DŽ:S,jო gޢk˧ץßhWmlwzNre0'ς83SѨr CE3M;"$"#>rj+!{GxLr!kn A\]r絋ߪ2vdzW62'$4쇦 YѾpE|Y'q_JDxBqnk9IW!+{T-"(}فvYzb)KS!:edDK;p{A  Qh>KP\C"bDU=AB8|;BI 0c$V n,ݶܕΘ,"(m`x?O &61僧Ddg\*̑f$,l5omԇ P 3ׇͫZ΢+. .ASkb!VU%?HI]áyQi)C@zÃ)'ΪO/@mdVA{&4,d9QiV77g2)l Jp~vꘞqΣdPQ $R#od牔[Ry|oM 5L:tI3(V2kRù6gIᚉ'[FD2,F?ʳkcpO8oҊ "՞ +ebv  {vyEaسG f)lk@C1|%>41G;(Di1Sdjjf-UT  \A;4V"V2}yFg0@ #RrǖYxwҎ^_n9ph}=,hV͉DGJo)'FyNJή\+p-#@jMY1CA7iikӠKSac oמjRU\r:&_@_Lu- ٕVdǕ`w&܃Fh]Cn~ n~g#L-;'O`?سNs9۽~q\ƧjT*5ICHA[S.۽DG6boGt.1ql̨?e5ӣaR76%eW;-jσvN<;B a rvuq 9 >OK*I?V*Kˇh kʗ"J9*yU ㇔  iêYG(|%T\=:P3c {uï$A]ظLK&<1; ݱ)flOywvCNWw:z'wC}hz/zM Rm bqv~Zhʖ]Vt,[cLu_.ᙊn/z($i~n%:y'21GMq.A@p1#3.t O3aiaT_SŘbYR&_Z,\-0~*#zE˪uX ZN`{Ԅ!P=3Tн yܕi&IW z BotGE3aUfbMu9F=5ODym?4?2.8*a^PKG>841ShH<M\VYEHBcu Z1_86t!lUn()>O 5lDa쾭tƔIm+n;-~f"*弨31Y9g |ţ>E[2bZ>cs#tl_K6SzL'#f4pw݁Wpz %`CWiq7A?[k=IxS]-ZqF;tj)H c~\o߄_yh ;+*?xp̢vCI $:`zs. 7..5Aבuc8e#oR@x`]&&`^twM.BJK m t=i+ĔeW^"Y<~).r"gXl<;NO)bILDjDq+~,A|] 쾰!IcewF2yp9qh-\i@_9GPwL?.ؽ+ʬIA%Ws'4OـQ)Q5bR YhS/E;o⵶Sl2vS,%fLxmi>W/i(] ='A- B9K`Fv[7+-ZL$(n?/x= \=^4_VزZz$৊i%"0ws;kX3**3O~o ƞE&t.J@v0wHYվ+h*D2rKᆝXH#_҄aƼd }n,NET.t*rh8,s.R:]+x[XX@О#@XO;GMe /N-jjXmޟ .2̈́rW2KĦ0s\m6k#|C/|T09EB<,\Y4A_*CF0p !UN/ͦC#Dn+tf'fhYxuSA^vvMCVb%%J[GȐE r=@g|ڑ_-f`9NvRŭb@^*):lM}wK7՛ H^Nd~}rBg ҩn?H .tgAq}Cip)OaLߴ"i9 ׂmV3 |kgEm7UwT'/, Kz\8iT .lj+dеu$O +P䝝->f>]x۵x`3wb"̘4W[ha%6+\=`8cx/Du7j=nK)†!s.T@p‡* wYƨ((}oaEJfWgO}|-g1zN122!:/J evmljcAu&) (粸TOFh%!~څ&,i_)1cʪ`:͒hAbO {|Ct-ACWQZ7;c`YVIoD:[?ޒGgN ЛJdUy=s!U-GSz5lKcGllptʀd~cK:RU g{/&փlN.)e6evԆ;;*c{t۲[_ݢlRQ}(ܱ 2/h{DG@=]"9%I- )M?"16?!Wrw(D e1Aidg8 C{/AH4(ɤ0tQXʚ8aeCg:Z1%G*a MP]uԙk&Ȅ Js=f]`fIİܲ [qҦh]*zjDSF/h&L„:ĝ_mqTȂ[RDlwJ#BP>Hzbrf26w~geNxkwl>Oo i L%H .B1ձ{UC/I[j9;$NB_O!}#Syˊ.lZї; d9LC50i?ϖ_V1Աn9UELzMkHM$P 9P_(68=aps@ 73КoR&EMGلyD(D?`.gޗp6Dհxd]{DIA@ch 2^9z$a22DeMJ)@UDµO%d97اn"EeRj_qѨQE̤P oǶ˃̶J\0 òFQaXkRd4b+fD;$sldB7E4]v]WL1/2t|9  6oB[:LSnND,.[]!k%8u G.cVC 9xympx6Nj_LȣU1C\< uX4 m> 6xp'TfqB@;hG=8VLPQW/3x[G(,\J3o1V2v %5d|0 +kukywJwt\V&fdCe Fy"¨HAݍNu7 6MN't,oE>etB~U3yy]N>`{?"P) %ό#LD? 5u+;HB`DUoDK\~9)Z0`72ޤ8S+E.噀Y]r2gJאv]%#v_4, p82璶Kkmvt uEOHkW0Fl$S&0<*NS+v nʖiǗc@*b (##}2$AKpS=eD+q>*0kKeʽ|sʬ}iZ,y׏ >Ky`mhBa`H; *F oXSd0y#Dy>Ǔz ҒSbvpHwQk2p|2Oq3$_|V0,F+g"1OOՄ<[rي]B_ fm3_vnykƦ._cB0/Q>R%;6Bt9C9N_!5ZtDSIXɗڶ'䌜3S,O¯-\) :> PXcg^˧nK~\HKrOCr)wݬFXQzgl+k*{xX1+^}dKR%dBd3Ii%o&u}_Ԧk`\䦯GU.Z8VD%׸@aݩᛨP- ~BCeŽ˗t6zyVrߛ`p /(<`+d"#k>a]|!k̑'[{hQ.s |'hm2nyWf2)]f%"7=&qc 8x>byeLd9a,u+`7v'+0Dg_xO9hXpFNl-Uۃ.TȫEےU$͙/>ZGH~OxkUܧ [ &ݚ]h]w8[>)(Kd-J b=7ù ؛8QǼ {-2Wgk|dN [ 6O%M0fnzqH(E B"ɨ|.$ ݽY? R'EJ}Q#vÈ޳r NSjeсY'j~e:f'9Ћ)$#NXOv RV&:!6PU3 vdoΫH9L 8ayjA>Y},%"׶d+1PVBg:Zp7QS:jmom_G=-䂃a .*F!|,ƘjW2M«0)1h2\y _rdG@sC&O +Z,.v57.,:_hDm[Rj';Rj7ZX8inF^vtZU蠰vԶa`>L1$@}M,F#3-ZЋ¾(r8I {ǣ`NcOޏ2"@T̉-v3dIv&n:oN2VCsY=ͧQIWV!N#r)*}{-l1+ '3(ey7YHeOҘdAY>TE"qee# "tmOQ>#9 NȽj0O>֢, \I!9]|5n9sX؅7"n`!^|5zm/KiuK>nhb\r3~6)^yI@Y^c@kC#&~~yG^dnW/;{]s?fL. 7d֧~3 ~>t.pWx؏Ab] o\l934٦慠vd0Oxk} , a1Y(4LRc8Q7hs>]l_IJV4ɤb^ ,`(rq3Higre4@:s5Rڼ5mۙ|~|MGf&\Z%ChwŻ׸ ^JOW{L{A-jMX2W ,[o=6 I* "lT'?H°Ya9<.8g_t"[Eђp?kIa*pg)5B+59hc{{AB+VE$-3 ?%+ó3^Ϊ.EhNj !0* J (54vy{A7 3MR; ty-|5APYd0eNnar$f|C?<;iUcsO@[)R1W9`9b<)I$kV:ym— RI V V QK{b74u:LeQQQ ތ *Jм B 4\:dM6`m,Lf[w зUrз uuj!Ży]Y9F]5Ry_i#Mw )4XԘ@'`)*ŕ#UyaS{`iIVV)?GZΖ[CIiIE=cݗl;>`myOm4GJ:Ɛ,9'0"ohVD::9PDnNnZd=@:eVm3{\|v }g#츔 8_ }ko ].@tm2#>:%/i+Ӎ/n [4pǝMMp D,0B^R\ȁzğqM:Y<4.;+W6)dK.P)r~Vi>xZ4QM|M$P{x5|sl30r)^:N`tJFJޏ ^"jՀrqz\WtC_֧ 04o6؁,zT*rjjv: @@z7 RQe WAH3>ЍE-#˕-)'fiưM/}ahEȭKi ,( 6cT-(M5y7HPm`u؞?jl2;3B}tdlVW[W|J#Axx*mɛ^-/Ɲ\KaAJG!;kGRI-ikY!cqo_Ó 2=GcH05@@9ic/!L~.ÿe>IpFZ]ZO4'.6dЎݗ\4RFF0tB;ߤjQE 6DDyX#vk3Vxn ׭pa&1[okn:ID·z0h^zKF@o{GG&S K 2KWWdjoAP<!CbxҔ.{「 Yߜ8&skd"ĀϨ=`xT|:{˵קlt5w,pZaSEK->;_:K~)zQ2< GbpOUhX:kK[X=~*C惈d)fw Fǁ$$~j.w,%b:LOFQ-]TTomj\&+G y8 =qE *uqD$6a!C(@$q" 3,Vg<*ɲſZ:j2nO_nxv_':=|(9/W.ܑ|O?""[{:2Tප yNJhX޿U+6&l 9^*<LZ9e-04̽ )SJVHb*iUIUm+0籿9]Ye_W&-\!~Ye=SGW)i4:(1 !dn|u{NJxCzu+:Ä35Fz¤x:v9!y1b |_FU\|Rfyw87ĸ&8_ Jh.[^B- ѮP8oQ]2#/'XуK!T J9舼Ǯǯ3W 9BjKm@Zc:Q͕E%qMK>\ 078[&0Og(ڽeD)NEo+ΊeF{w04{a1y֊Z+˩xmTzTVBX22 K$՘K}v0ݏnG>`L4]# øDwpKIJQ0T51>V!r<>J8@ z3#k=F²qW ]8N0Z'NX̿ɠ|'G7K?2[H"e&+:g+GLwсِ>[9u s- $Ȯ ty4i];Cf<`R!-2c8NPY0!E O0"Л(Q>Ħ L_hCڑjΩ)-R:7X;u<:.,@'M I#ydžԮFMq%!w-bS*ߏ+-&R;NikrZxR6IQãLIE6Ky?͆)q' HW7Vo %;+ÇHI4!t3KZoZwJrr2t @ؕ q?zLSw1#8"Lwt}g?`E'l"On:[] @C(nRj7Sc.o^31.ɭ]ZB ?3IEA=E"S <}z.]y0 O-xҪN=Ȋ10!C0rS?e_J_*^)\2,g?G^߁_[1B[v@ZN8zRmRZV;mEp9\,+LSPā^ ''a Ϫ<*ikHŏZ.?ZyϩNc{9߼C&}뚮6A,PM9ű{PSieueBWK뤟\W("dLj;S# 1D;I[c0xr9.vj+*,c,SY; CՓڨ{6{޼UT8eGiC܉7(ETV! Kԑh yW~ڐXtvBf9᳢Krk<iHnLAeY4J.0*5W`kσ.nmc8g tJ=YvG6IxYqiݶH{wEm8%Nh‰VE@,S!-!!󿜉Ӄ@"ۗ '+p E;.F*~%;PU$9ދp|VG;M~ejf28s{`fQB;tIUϣ8o] ȥh mDV$'^x,oѕ/T(T$FŪݩ`m~$Ue*!Іz^};z W"yIN''%J?%F0ˁI~m]WJ m Ng0ɢQMYLܢ$Ey>N|lSsBrC输*W73FɔY 5_NZ@Ab޽vU֝4Z߉\0weɲ/s9w7L{tx~X}߃LM1S8OZ\a .~d_uBU6m䗄۫Z؋+_h. !!`1fo'ȑ-\/|:}, ,t‰M,w#{yl l}^^DRAV")wY 6RvI z0]m4WtZ'eS`Tg։Dw0Iߛ# @c4:ܬW:4nyW*@J$ȑS2woCd09E%gƾ~Cty+&JO䄕pMdc'U[ hyZ2WCݹF U㗏hj VkvNAK褕89Da.zP-Չ*OTUd2Aݧʻ9j1p܂Dwq;- Eft;.1wJ>~5-yOhK` (N1kIv~{YnVMCw^V>&*ή'yٚO4`vcLfģ^:^F*ؚQzg輔a[ ^1gqcza(շBf[UU+=3Y J_qVj`%#*^RXSm|*n|y1꼈,Eg׭edsuau^ƺ(|?BDO(].[h>єE4qFi)7 ݌`Lmˢ^y $\s؀`y|gȹm4`̶/]&|rzmce[R5 Ͱ6r]A' ߣf\yR D  :U1昢tvu#;yvBt%9lM']FF[z)5vt'R7uPnFqBgb@ڧk$Q[!=T.oH'sNbE,s!gl{#x%0•6ID-YA,Fmi%e(q_ѻm+2;~gs%P-f5)4BYrzӚ/%CD[#-,+`mmhݰ)Ŕ8` /nyT?8ϸ*J.VKȝT:RB؝x}+Z\.=y\ќ.a}q L4>(9wZ5o *KBrrR_: .L߉=:9m3卞Ъ$ Z_?--H X0ҵBçGPW̠9G wDT ^ÖM5q_hLL.wQ[m3l K# Wvd;fXxz^'Uưij+sfJa v+բ]UFW$  f#6Nd2Wh$,re. 1+G~bW2FUb~VƿXEF$17ep4yY}R&i2C:s*P#V )YcaO"mFŊ4B*z)S?wyi1_j-.VѼ5Hb4SWcN܊]&/ΚjO_/ں],PHr8A`9)}HXB8zLàG2*"dlFtAkN -Bz,2)FL@|IEczYCs9 _N{ .jg/k؞D^s][Vh]wxS/mhwI׀S_R48_.T{mx*NSh4?LjjBۈ)vS^r %\'C k?L 1X:e1*"ޓ毽1,eZ 8EИVܪK:F4^k4odv e|M_y@AJ\ƒ TxF8g%ҩ˪V\vLODC50cax#Q甩*I"&1DօTv36t)d}ҵa\ PaӋtSV_{AHV\#.5x1"*\Ďjέ{F[W-[^!:LfE[^*o8J|NɑiL7} S,%+tc;[ga OYva "jxA]װt!@-L 2JVc%-N*W|r\0aQ:.tR/s"z6O"88p`99 i!g˽<ܰ\3A^xm,~D\T.-Y>}_n鞕ZioŶdCc! $U20etJ+wVAC(4X J W7xsw %)e%IGvuݚxяrֶ7rj;p!g"+M/_x2\DPNl 3s` ίnqiGٽ-mV*WTߒzI"t+8ǿrnD(ݧAB /`*HB;Zho,ŨVAm#_mc. y>jiFjmE {aR/[6epLm*ޥ!W0w CvOd+Gj4%ldqflיLU'fKIUj^y6cz%"2wxWN,#5za%๊̽(.!55P.5-c̣qh2V9,|pR|0 Nj%Ҙ &B=d:ec8m´hr;JnbRVh:M͍_?] 8ҦH;OuSsff S\r=T7u"K>(Ȋ1QQA^vT smOac}P6O7sMKu:RYc꾍QnEڵdSb{>3 r{h_G9 4SLj;ޤ *"|_/l -i:T XҷݲWa|9vÔJҥikr/e s]-e}=lN&Li!>%C}O)0y167H ovIf ,Kn^vw*i S./ƃ`oEu5=gF kyi'F KOܨ塩$`ae+wڑ`u*ۺc bPF7M?хZB0 ,wtn;U_Dw>d$)cMCxw16nt#mţ<{vC0Ƨn6IA$[ѷ i; HbNT#Š Go踝$9ku6Ry锍e{&B?AguD_Vxx `}xo8x "[Fjqg)g>܇WV(ږrq,-X7HQ*7j8kvwӁb?9>N6S"`?if0ޜ{g./Z$8ay!9C'zeO˩90F2Wor 3ͥ%4rDغ>nbqu\F)٨hgShab~ u۬.zU5|`]zdpm1.MI}mիdxux| c$++z|:xy!$Bubʐ;pB1L,/O8Jrq%דaр2z=PW~k'qQ7f5,S :MljK h[LoňLE帩볃DŒ|1d/^Ӷ4ȧll/>\P^h uXp|+FU@h╰ JbfQY83)S^j~Oz8Q)KZ Qv7 i0V/W=`\0CMo`~(|KS-d?mY=Rsڑ)o.GRS&]:l|>,Yr=Cq#+&Bh5 |QH-204I'uXfMIQ!ϥbi-4' ]cVG `wyM5c3+1#\CvlmAWsF$=d7ӾTm khgR@9FhR9ȱ^q(IV߁( *zZ C=Q8^R"Ja=wN!fF|#~Q^nu2{|%jfpabj6! ď_H0.3Y =l^Q+V6&Y'r4-vxBΝ+~㘘~MN *J3G9.0/og}7E9ľ:tnw|#JlDY!P WWEa ԮGծy|]?+sg\,F9oKT}yPP}yJL̟az]<,EX8|.*Gi˧r֊͜*sV=c0tzezyO?ѦK#Ifv\tG T<,2mg͛qQyDH+_Xh fo.(!AoWYRLF4H:Iޢ=3p%;I^[BzsRkd yt1(@73_,E O&zʕ6Icw"&ӰxPRPdt0 ‘3Q#حCU˦pGQyWcwnDѩ>^7wH_&iO{qS hy$-B[w,5"~p/)g6IGd]qYѠ8 x*Q^HN5${j ؟75)twF&QMZE 9dXVyAY*!y>F@m<ݐ{#PG;6xA6RuۈIu)y "dUљsR 'XW`ed_v1FItmr.ȷA*@ee8K/Y>SFdYo-ͻ ;V[SX ߃3^R#ZJp$FK\[9C=7'[^jZ!yz$1fq>{̮$VV_GF߰ˑUh`aj!c4NYBE .mevH6}(oxWPJD< DI7}x C{)iKfkV]ZewKJ Gܟ7 rnF^U 8yM KI"Z1}Jl\S*`籑+ FZ` LnGv5Wt8RNkf=@HX/oaA I_&Adc1J҇o%ӊ[oN^+GS.AB>[@S&+ > wd\2l 9I14!N/:>G7NɗOH$KE<}VD5uV+'gy "o".?wtrV0c/Ч4z*JY7+G}(V$򜾰 E |mS#yЃz1.msA%c5׾1#;jsEљ!#QHj0g)BdyoW!TAL¡ԦHC}<1"PC ߜ sgGd1N:j S2n *BR'I&I5siFѩqӊsCDDZz٫;Ge|ˉ?[^ԕb~نׯΣkj&Sy/F)_o_` c+3|PSa|=@-ͥ0IRjUI$A&d@ȯvwvg8D"#o5pCs#䏣A,P9)R&Џ}!c=IbI*q?G`SruZ/i=@QKD8hmAk)hfФ[Wv4m ƨJr?ɭC赨PA;j2+x}Qׇo4Nә!(ڵAzV6 |o(l|hp$k_ι\t߇7˔@AS_nz8V@}ZlSd OLfk{Tjhcvޔ$+2Hfx7!2Nq^ם|.&:U2,l~qݳ-oylkHNz HF N{(9l]R)QtI>O$/U'D Q)lnIRyMq^Ég 8O" U]:EXan?N\[ǖ{2 dww.o-(2>6_nD^;uTXTYQwtn|RBS6W"W՚Dl .X JCjb-FW.dXbeK|FC*48t4 (HIX5i3/dfw@=wkof igY S/VXHO HSAGB#Xy $7[$H"+ی!smϝ,j=(S%ǕኪڎB<0П6sޫiן1g@Giav*9WED8-:t{L6/$f qL5(]WѤKj݃F]9eZnKK2+dD#Lc ^wtjaJŤc(w{m{ R"XQ!aỹpdRƖ'Q uN3 ) Ɓug-$r1v>SFnFzLiOL;ؘ KlSOu/E̩ЊeD>5Eo&[#E<2h~c;tQz^Ӡ@4r{CJCJ}>}$C+r:dboJ=_6>UP{m4f9Vņ&2Ry\7jR<Ei1Hn:) X# 4";HtJ,PgO;9 j0: xcJT R#FY OGJZKgRΈ~e 5~P .tA3jF:HvJ+}_b7m=Ka"4%A-h/k^M|T_t*7 KTF2n??M"BzXT7ߨD47CoxfMd/T1X F^]ELnpH ]?!3_ױ #3K?T.}Yts:Wk3v\g 9S3C?8[!{ `EGs'h"0&II * r\}ϟ@B*m$Znaޫ{EϖͯF67 dWB1]p*!0ͱ 9ϑ$FճoI_O',l Z*Gۖޘbet#5_9LU=1H֜~{jm-im"R_8-*sC#VYxTT˰.lt,ug4Eظĵ$|A k3q^m  :Gf9m" q)JTj!4 _KNk>gXc=l F[*Tzm{QYw!3:>|nPu/-^O+ vw W ?_! Zzl}">*V4UD>"u 4t ,OF_D<ӈ)z3+mŲ^@&6߃Ίl[LūUͮ3-Zqf%nMf Ę/ %yffQ闖ðq+h!ss`/"ȩ/ iP^\eP]ޝ/6AD8(j٧n=$xKcҷްDD嚏E?v1CHe]V4:'*=/1=KH87)4ꋭAYK@URXQvkNn1R:,YDO,ݚMz9As]pnmޅ;W&RY[TF094v&]d[3r.vL+=pJPGݾtlر">C.6gq1 K C:Mx[Z|ar%"x`L z.z)ԕRi+9(!!nGLмCB2e=ǀKYqĽ%G 3G 䁧FSޡ}I1 $ehF!XŽ"cӻ5[Q~LcŇFf@7.$2kv%07^{&u8u~J!sI +sf=cMΤcoԱ~HBI4L UŴ1S \]jb,c;cX4soǹVedGl1P:|^Һd۴}aLsc×ݕǬp%"@aGXO3] EZdU֎ OtmeGP&3;~\S{ #f$b9/JC kPB̏Hgi붆 ްQYl.xr>kF'9 w)X{r :oجbаuV*jRMck(({,v%}^nM0-Drn M_ktjuA]TenPr$d%-F9 썴o(0֙{#ICt ZL\V_Z+5Ce#;br3VH?z٫R,edqnīE6٩j#=b|4/n֜Z" eqº.#īPaۗ*a`h5 ͩp M]euT6Eb`2N@zu݅e5gBa:+̬w!y<8+ESD(9 5N&sb UcA!h4O"Vm$RXM>JΙs227rᵙsR 6SU!"J3*YJ)IӤvv^ @ NNEUsyE;JEZoIsk*I^;J){oF$Ab*+_:a aϑ;lXya: nᖄEG ňRr]zb,[=P\EGO/QXx1$@$ ?@k6.bD! 8x:@@v%ᎧxMk_QfEYضXKkƬ Wl #+ Uӊ3f?Pnq0TTJ]%s$r`ix߾"81IXfCbkq]/SpÂ՞Ge@2^!$hVzjL i#/G{"<`IGOja> ZKrw87$4 fHMCTӟ:?7.Jyݲ* $+sjh$m큞̀} ' Jvq.R%wgczN±K}ćхH~"+:f}_g=F@ ;|Z tG/1M@kpUE;J:ҧgwFzy[8*R`sQ[N86 wpdžAj1'Q nPlQBsF"z _[|}"V'mg6~x,Ѽ w@8p5mTLE]VJ) N0.uJpP-]vSD=O9@$ UXƤW^4Vf3Ra;L-9D0Av _R.}!*OJӀ4[*:Sݥ$c7hI歙=V6s&k5jǑ]?k<5{dg&[m^Rױ̷PVqn9 sU``QI}7 6%l+9dނ|z8;"D(tBtPVO3/$%;j8u_ WuƤ_Ci| 11J M5`R"7JH}kJ$sƨҁ) *$д arp:o^ʜ]Fk|-:' AVNS/RѠrUW`萵C`9`W:-30[nY9׶1V.~~Iʚoay 2}y:S43LUh*5'>1p o OTǟ7¢=h5sHz``Vk8qvK!ɖqTU-վg@!"fNX8o,]ܝw#A3 h\ 0jߟN#Z=MPEtw*\<+O2p-!8eq[I0?{2L4aÁh!C VxM~oM]?P\kKh\CڶM ZR8bwB /11Hү\E \\Q޽vW5]#rc&Sjҕc)6u"CԋlZRD֍4zqy&ЋFNH#,^@W`gzj^?$ӓl9Wҁ):˼o[Xշ G{W@w m^wtxVވ%Q3 QS3h0p7&%[qH8L=;„!4z_l+jVw;eGگr!JASIȖփnɤRqctv{C4JD}-+ysuns,޶<)s`G<"LuOEPYl5I6WZ4X2ڍ#g>Rk n+bezse}Ht1#PyF)H)*mi=?2*嗅jK2Fm` jBx5Zyjݑ!|Ɨ&L!/?x 6<1x(^H(w>l2R^G i] ˶KlfG^a%:!]%=RDuA `1κ /uO񽰞#hCa%s]]#;EY=c053oשW ra/34rp`?>1etG Ru@Q;Z{0D7L=fXV=QDNΉC;{ ekYX=2U\A렐LX~B1"oZyIoRZ`uQ"3VyBxs["Taa^/WgX)sΫZ(zM4E G;>ql ~QUԷujWJ(fiYnVCb25[O|l3:/k_b%%dDlΔ\8F"%2auaxlPٜ:ϮIkf ɏp\j>v]DGG43 a-=YDp`?c%vZvj-?7ЁQ<C^zveStI"szt2("?wCu}p?0P3 V&=qg0N]?9q~lGYOtL5ݟ(Ʀ̭D=dXe[[~`t̡$cи_ζCQ6,GMN:Q`yFF7Wc># XvA>XO^_=L-$ ~ڵEU Ov)oX z!PCUKܤNрYY)S bּCC;:+yA?so yVHLCAM$s'Q?\o y7 Ov+9ЯFڵ wAjYSZKX HC=*'^_h憧2|Vxb |e6 >ڤ+B\rt(F8sX"e5sx1 *. PN&Qx!xFOf?"k ٭ɞb b+eANJkg m xjuŸ(%UK'J6;0"#Է|M+ J)hډ@A5Q45+2ܼ*$A%xVgVT Wl_[퀈- b)gR^s9:iYz v[ha2maS[bamRKe(DM){ڷƒ"`w">ȝ>vkJ,e2\p?tVMx /a _…k0wN3 84+d5,%? I3^fҮǎA hbEkYĖfe>$(O&2| : ̱vLkA1ڗ1IVK(m8]E}$r'pw^暹 (ًG$~E^z֝N/lz?ob.d< ",h8Keu!܉U~ʼNo0B-g%9*18I@B1 lCM{<=A S|bށpE? J'ْ7ks%ZHd`rT)ZT_=@m&;Jl%iPM% nb/1߲3#·>ٿ:7u5T.nGy,+5|48 "\*Ri=@1ȏ"N3~LkrU3Mt6`,#L6ǰq&7o(huHܖhu;N$Q\i2mvy1stkZe&;+ŦbN6M,iB`l#b%O4%'> OD*Z6ݼ ZJ?~b"kPP!h'o[eYאfLU7MYĕlȶV0_⫕YzeX`P ?\.>~a\@4)!Tһt1T"e}YE"B saDYvwc]n.Yy\ISk5D!r։oKSd.ybѴƄ}E~4G'P @ӫĆ/䑆v+mfl{sbmd(ѽ&FErg.+X1w'Y#hRUD<+A앩lqZP+/X4ƟԁVA9;4e(I{ {/{?WX$.m9{קx t1,tXxݟH!z'[7__=Üط`hI+m&K ؙ l5^gJ2Q3GH4n\=Ȁ yadYی{>'311xbljMB1r1Й4 D%֤B@|a|µcME84ٶ@EѼ@tgμ5 48M`j<܉Jr4^}I ݋IPmH{$D79Ʀ0ν G1Yʻܰ@!jI%@!S :&)>ʈ{}>Yeo(U_-!KD[<zx& Ԃb\1Wt`*~U'CRnƶEO2{P\e(#hWqԖk?0dT֛bK+brڹuwL9\le_6}<5.XIX5K{d~kf;mK2o?0#(Ǡ4,R,Ï>hh9OJHM!ɕ(%`T47Cx@QKYdhNm탂B$@v,X>?܊@Fk03)J퓷oNxvc;RyR“7y^.Fe^tJ7y,"%ϡw\pXVU\Z ( 4'Е?l07bGoū~PM=_|3RnF?Id366|4|Bz(2>n#bs`=U kRRق ɍjw:/,4t9߫˶4)oI\(M,w\dT#O EHf3oLiXqf[oqmIWSve֡!&WPQ]+GXx7C_]h}Yuk hUI H˄U{%L|uE3l]c&C o0#4#+w`_C8jJUsAûtl; "d yd8FMqG> @<!r9ľAd6<% o6G (E!LxjԪ9>3p7Kj4PWʭې%Kࢷqdř*FdyRH#|f}xhsၐs<4)(kiHFHStsɃސc-.s]CVW\֔A0cAeG9q^K4,ɶ h.\+xwļUgP=2Z`8,08Q`V&Xs-UzիoGx >ji &k궈 , bݗo2Wb =Y#)Id̬JG -:vW}l`ByUOGJm Se nt( LD!#YE_Kz@9^?$swENzz}ρJ_`A_4Lw`ǧ7h MFfB428V;r?*U9ݷHH<N$hcҮŽV[K]eȨB7"Se7r>y"ϗk8h秜99cOÄL/C: }Əs ?Mpx.쑗+ $fQyDdmWݫJHȹM6rGS>=_\r#|i`[#E#nM[z\5͙OfȺp:yJ@PL{jή.\>b\=;(6h23KP9 +-\V:og#8׋0Ҽ1s#6&]Ke . 7VPJݗ$)G8NFƨcV*?AiSp% 5ݻd[(Տ4t&@D)fuVs~!iqNLrL# &n2 R dAHjc[`QJW*$o`D^ft_4/= :hPu4n}b4țָnGn7Q2}K6S_qⲼ18CkqEy$lSB8.L(Ŕ~7ڇl{MdkI]YNr/0j+\<˓n9n&QyP|ZkV =(헁z+.@kEZf[2*łÅsW+XpP-8C\*Gj 7|ׯHß5ifx*pb*ߥ.>GJK4i_[CV8hW+zBVmys;.)(*+m?(^B?&w*[lʆ@Tki1wPɢF6qaEZO1Gouԃ1 i5NvSQ)3ǦP+?UsM>83MƤ& !vB. VBzQp 31ַ!*F}l;䲃/;a~V'?jp}hMlڢqeR(ʓ ?3b cߪ%Ѫ%O*j"^XB#6סQIL?q D $mEԕߝI>_rGFƕOZ+8t{p[#ʍ7M| zQ}z<>~*xQ lYHBtizawD 2~ 1EztuV0 imHI+*/W2la`:4^IA_⹵ў[Lmk{вtbb[ӷd>dhʧD-| Z7 I"0H4b:v MӒ+V>?wIR'Nexĭ&ZMa~4 [M}a}8VlL=4,YGF&$1sl DVy)Оw_+:"yvUs5TqddAZ-̓ >z4b:Y P^gK8bkV$}<ȴ >I3P_}@ 9߮|mAuw SҶ^俊vkkɳh+11;*[Iu(@jݎ'{S0HZ>`Z 8y_2\& YWzBnμ?mG{8!d˩ @`nxmꝿO=iVV{804:v艝_Yש?r4 _-Rb)XqE~E ưW0`((5%U9OF^l՞smXYyS纪 @Ñ2C%/|̡7ҽm ԍi0ڭjE '2Tۓ,;)(c$B!%j!"^ktpzFp`"7r]ɒLV O]fECUMX9དMTEBQhA]0aƨkqA4(\HxƌDAX(j="J0or,a8o*a0[IoD s'hy8y#oHcOGZG~l?*9ސɦ1綨U5׻eԻ{QGEer! PWz(XbsDz$xd/ m,)Igk[3:lTN l){.p3,Qp5t_ Cx܃ D0uV)'(ӇPn带_ *H1 f=u/[9Z0ȅ`j7q;3d]࠲C2xHOuP%ԯ'X-H9s_P+բ<|9Z:U/ZF5 +b-q5# 2ݢTdID׬?OZ_; g\qE38<+o^YxJW˫IOb#C;wu+lGk]z .l֘[|^xfķR 5HWK~Sr E5T*M"9rME]/ev/:wԻ=a^q'gy '#HRuMW=t`-4{sˠ1 @5]o ̴$VH s+qi jt+Mi(LZ⼞( `ɗJ3ZfbKe3>S(P˶$7: sFy0Rb9)*TzRBZ0aSuK@$!ʲnx+f)-~_Rt}U(5pF'8N?sv (4|HfTUeigZ5q&!BA y6#ԓ"Pdh> Q,E1zt* $ȕ&ɃF٬}w]UE{b+^֔~%sO rxjA`g֢.P>MrxA~=ڴD#c8Xʃ IUx*2 KYedd=< pR=_]޲gp` DZbusxZCNrʗט:\@\YN2ftϪՖD;o?`*Us\e}qq0F8KMϒ68?8Y&t'm ͢gx96"Ь !lQJSY6mIk ]+ '.̃!cC@>(đ4P߉92Ì(x%)tqBzMC0j xN[U<k,GVC_Uf37x*\O޷0b!1|D`(C@ȉr:nevC9]WdZON&# WgH+ZѶNm`ܕe mFz"OƆ 1[z 6݉] m-'Op$V0Zυ38]8?ۺf׀\zlM D19p3cF-8VSk AMĂhOvA; SP6 Tύ O"3cSUڬC u.f?6FP1N3˪RbYcY` EMF_TNN0> մȯWy"zXUl>i^@G\(fޛ82L)+46eO`xP'stNRՒIMeZx=8+>bzNqƁ,Vo7SdPXEL.F!fC .F&MN=ar&wLdKQS.ڼ;2q-h+[s\"+H2Z w(x"c;(.$n})1KYfϢ "B.HOT-2I-I;cUʝ d8[msޢIn'?c$UzTNhQUĥ$k1a^2&pN_FEdW9<_Qg2yɠ.= &_e+j7'fAC25(\CZ=A DkXA&a{kwS3krlFj 8eg?)AĨrp0e'0XnF"( 5 S(..?I?4Bwe]KKAur>kyv}IZ:ʜ1 -`nN̐UD>'V^TIGߩV-V/zR\a5!?ӓ\FDu '>gE ؝rTx]Cw!z=c70Y3 =e!5qrd[(F[h= \rbεl{,;=ǜwY)5CݣiBrAr諻NJJYTw_S#.n*s {TΕ-ft3ntHgcP=8OLj^QsUs{Jbe 9);֨ k~Xqo mW=V7.-E:" kX&soXct:vټtw7}xah69]+L72'7m\pi6K#vR8uT4AڬʇiTXk:4`尠ײ'.p;R3qu\Sw.bdk[c)В}U3lux4BiUΜ:و6jiȡLVg*lc/܁GiǀcbuYs߅WL(!}@[ G#lKEܖչ_> {zk3ۼ9m7X,)_Ax RN౻*3v"b{LBIpZUd"03JTb]LM>'9C˗,2qnS$DB-"= NkQG͂A'sMH` ]`a|+Oݚꬭv8d* 4Zkx{v[<+D ˌCҬ[‘U >Vx᥆̗3eY2eXIcev x0nu밣50t$8"LRꃰ梍v+jYhoR/'TȐYVy-?WhŽ!>IA\V٢`!6dmY//0r]x$dca\":D= 'Ѱ1ڸ-XA;3C@m 5J yI̬ RС}ҼvB GJ]fT\rV食dTdPaCW&þ~Ʒ|Be"IdJ!6fI<([ܴ#(lmGeHu<˄qo\:|s:[sV%o;EYG#fv|'Z['y^'r) {vwFtEKڈX|b6}iU%qܷUB88KmJIO-$(cz% 9WɔGH}#@ia[aŠEwcorh}4QTuw09ElX{*?eGi@3Ht(J,MF?`i `(CD:Gy. #=&qb$LzʓXo "'fO#=5:8x&]_4C `cz^F:5eJArUS<( *߲AŻO 0T9zx#ݪޅO> ‡N.;Ж6GZTc ^*wF~d5W1Aղ~]Pw|m)PEACmT9$'qSw5Ίk'<̍H3bFʻ`  6:㊩Ө0DZ?|@v7/X>dEOa8,08֟=JMj1 oZq/Yg ]( #u6@dr'$1#O;OoKDlKeu^7W-&3 T% 04wN'|ضn_4ybGd/.>'+G'T˷J_RP䐪x;?&ֹ%Ugyw(`e+L=:aF.l:9^{E)%|9 ]wpv@k_]+-ME!d>_BnWtAлGqj b>)\Ni[˭iC"*KIow3.t`'U^WHh'Z Aj f p8Ȁ 6^3ۇy'4Aoc@axGUK50Vq?rPX5W۲U)i"y/$Pqi$v &Jԩ-ީv=MfCDzubp)Z{_5*HL ,fiv=Y>7̥bqUA]orMoEg(Ox RLY~ca)m6)J^!Lk#GVQRMXCތ 1?Gu5m" #$dٟg1bU տCPn-7k^N(B&'͏RĈs13%#%,{U_JGoWv9K9Vv 4ër]} #o,RNE/SC->{-I:(/N a9wzU"oA-1DR gMV3v *(y^-t7zIF ր!8n^l.f`~`y86S.삢EqI)w " Ⱥ9~{"0ggw]ymEM:T 8Ǹ7a6RWI&S姗Ɓw49aߙAI-Ewܦ0Eij!;"N„No{kuU$U3-^6(Jnbp\&B3tb>z1Mr2o㳪hpjևׅWNʞ1;qhy:bUfO21=,˷I\sK'c3"C:lvJ]U$#;!)N*خ'#a,°Q [8t^OZ{bܰHVm QO>E?2>٨FR/Yȫ!6]p &s 8A~Կڼp5 tIb҃:4RTlT\%\g*!5L*` ;՟Rb*vPqΛҍÎk]?ѩh \gW#"̏;&?6S9<`P˅p('8!ɒUx7D+WBdQ&j<$1^ ;Dܼ]nHqR%ƎZd -[!5_Tߒ6 ypn˃Wo~2qhDH5gH)W/Vsw. LSr\园԰)͟d͡t>Ɨmucq ]Т-ɈY1onm5JvIf.H `۫&Lm@)*ĭKvZPA ~)pЯB9(Y@"}5t2ApF$c!,p󃐹dy+Š yc\b48Fkf{엹9ޝaP0^8wjDox*Fpl)XA<}oLce<"L|={}7XHyJaa[Jo=HDsP;D̥p:UVSDvwő c}'"GWK1̷ aEuiNJ? R0%9oI{$Y.;3P,[\iiDtʆ=`XMx.?tTjT<}b'\+-,g:V%9kB'^|)zuҿS)0cwf+wxA53&78Bٞ$s?zpI 0; #bN.O"ۯ4~O]‹cvl'eE  DO(}=diFB%B;q[@VFӲԥ&N!@|Кxm)WkeCybgz htM;$3K2MQ]_I)yT?PB9ClbWy/_H6^v˨wӖb+: ґUMJ-P䎚X]^. xя/rfbʼgzre`.5@w0d}Yqk!>(Bx![ }clG)fuLc"|N ZÂgh"Z4*9 `ܝ~`ۀs=+ %\R_FzN$bJ4n,:$dffG{o"a!4޼=,%!Ry7"^0"Sqr2iszJs(9HUv `l-bT:_U)P^)Py LT'gY$?j5% B .2gM)6fe'm)1ZȅN,): i1)Q-wG&OBD?[C9Fq]H1#%؇:Vʲ77W:\ GUM3_"^ W@fdQ[@oH(_ r Kjw":zW*<nޖn2P3ն{m3+z0O۝9!O 6քL>H2DYG'_*bn^+B-}=4)xO2#e [tVb)?sn?[䌪N7z|3."{գ W59Hّw7ɰZ\Qު 6gPVcgmE1Yۃ0$1Z%)t?i2!Xy8,G@Y7l?crhG_[mZ^D򟄶9MP'@3,w2 ɫ |sXGMxr \ ]z@qdW;[q h[hQka*JFh#P"\>- (bp)} <SP=Ypc%H0{{[h+ =!y<!RdT/-cax"[w@nkef1 Iba^l/G+w|ˮbqS)<1z "uIecxdD]t1P잯07DqhRi p;*7p,L0 =Љ>^@$udW&Jv:\?\W*PWɝ{TZWŎ ;8rla"rOZ="|Ԥ 7]On3¢*[nZN9n  o%/SKfw 1C^ms6D}F3 [1o,zpg4EZvr|#""ۨ]k3 > HfCЧ椼2k#Kdײ1$LDsEfhL];3h _~u]%+H'ֺ2bzA)z[JtsP!/ tb7#rG:LgXX "Ͱ]] N%^ر-uԗ ?ƠwY/6W6[*Np@~<89tKd\%x5x<:td#a@Vuf.mepūpe|}\f[JeιpCŕԙճ4״>dzkJ[hЗLrd¤S/0%(lA5Xܸi:0/tOXc%~y*m0F]j W/7mw>B;sDZ#Ғ"pxGSB-h3~L}{k&gqϼ{*rgrwZh\7dT*^X ڇs`'Q(Q;,71B Zp /54VP?%oĄ2+WH_™;/!iRʻ51p!6,9SRь!ޅʶ od< YZOʻ+l^ d//;ld,VmdƮmߏHP߇;9*]zKd+Ex p bb؃ݶi 82 -yieY]+2AīKEn0.2;T@EKIUGa)Ȳ^>yi@HN_~ݵUHk^k]=YΠYطl@p:%*Fʹ9WR牮r5hw:>*{w"SpLWhn%Ͽp{pRǟ>y5T FXcf^w_9&fC0%EIR91h+$daS?R:=Lݎ>0z6\{mW%}!2%{z.Z!i 3:t)١/#=ZPYE$}^)Ks9T8m'>e4UTLp(fIoCzpQI OQ[6-gl Vo3Ңo s5D]u\xf“bCa*F׊ւREڠ=ΘIP#Th_iZcj':di> ! )>%,N7K>e/]V&w 6[[`HHƞ <\R,!yjNS'dv 9&1Eab+/.^q `t9UӐܔ1b΃*X!!':l]pzVޛLjQMV0ؾr+6J7Rm5_<4o( St7EP+h>k-|iB0W@ kNHԪ7ڪ6Z 2̿.^' Ef,I-LϘkR:4a|$R}uբ=fHp;󋺱{6.tq-"=dO$jBDŽnzs/]P1_W&.d:?󯑔}ؼ,'eVU]-KhpT1Ѣ Z$Mf]G|g,;AG핐%^ S?PKTSP6G}\?ql*u,ۗ1ٟ԰ݏ}h []}SHǟ=wOy`Q"u?-^!9ewR~&BЀ 8k6 6!~i]^ P^2#l2R΅[?bv)B^r742Do;4p}0?} j!VdyU#U'.7ďBa)18 x ,kw=$FEۍ $8o>K|xք3&q%5~DGq_ K 7\ZGeG$yf'arݢA 9Ri1DEZNV7nA Q.ڊ`X_H+W8.OĦZi_ -QIinl m'TwbJVYmcsJQ48eIeծ zہvT5j+~zo{Z]CH#5GvZ+ьu<Ȧ߻O.КcrbN)k{TkF.ɸMcoy$\i%]$ISa\ j_ A rCew;1fqnqDJhg7ɸܫQhjxs%𥉉|`&lL;5X:7SfZ軡8 I.pPkm]3'|{^H4 =|2KWYaמ/Nt2toD.^i3nc,-^(魜>8CΎ?NdTc ${3[Ý|d ̣{&&<Ѷ`{#Ҍy%HHJpY(el<U*ifE7UHEIJ07 Yl_ >+8badl5Dq~P⋠XOH 㰙{KքxD"Ϟ. S=ڲY;S&E: tv@m{t` H3lcHx*o By^|[oQ^L4y΁nf9~HMM eUEXF(D}]t“/dJ *4߈^&kj1G֝$=P5etQ -b]PY@w ==Uլ.,:e 㳞rѤLhf`E"4PFoa=b86,ٜg}E8L9ߡ[pI`!xCma4潚/'F 5 gDOnܒzL'%8o.XYn\T+CBl /K;:%IS {l!zQ# rLKpzj{ɆFSru&;kŨumoZE AϹwMڏ%T_lt:a8tkzSy%BYř | r>T? *yhR5N@F"%vY$c/V\<62fli1HL.fV\?F{KpO-F  1a, ׷ZWg [~}CoШWgy{w@¥&DCd2 =$~Ky.7";{8Iq^y_{躢Lԥ`ia%`euIj&Ұf nNe?頥aa#ym;zӡA#Y'j,` #GPx {҈|qLKA/vӀql(9G!<X9\/|(qq< 2nFn0[<^9 7}"B~=^YꚂ:D;x ЧZu}OSݒ8 q2Ϝu/X8a_] hÚkMb//0~]:yc=NڝƥԮ⪲U1]r[ZP|t,4Wu=Al9ytmk⟖CҎ Y˫H| fM 8hh6Y`{yV$* 5ۏP TƭǜBɟJ@;J0z/^ީ\";RX=ޱ_1UםOh<4K 40tǽ2,FkX7H8xjb 89S|  9ސ@$5 mV9x^yi$hRY] :uǾSfaD!>WhU_ [Y4f'aF$gݠSaF<4}l[J `^Erpbf8/=kԠyK#ʷqt_h]Qgw Of|j6x<ôB!ӟ:쀿XT0v ~$x{2mh"=q1_@Ejy®b^\VL[=^-Ďzփq8n%7 X(dO!Y<چ𩢺v ^wXmփď t-3%dR:Wu?&ekXݫ+ E:Gˢ+|lW5ea3@HJjӵ*mQe0q@)Fxu~?K Ǝ@xgdW QØBb8G<.p1C4ʐO j?p[2 /mQP-|a:B"\(f,$Uh JJ_M|DgOsn$hEFfM?Ve%߷' i3YEC*} L5%l [:xm-oC%$LKL}exn*.1UM6ϝVN bWiZaTǟ&߱+,Z+w7$Z>ujidFGڲH^풦[ b%h;6|ILGmSF[|r"ނ3 0ܘɴiݱjAľcLX9n˼O|o2IgK8MP,M챬53TFY./NB6$eÉIKrnllijg9nj wv& tNRx秊@)9L 8٪ 4Fty [$V̈́bC!dSzaJ I$mqe}GKsY 'a"4n *Xɳ&: %A|#?E[ !a!E8AFbձq*E zW;7FVu7+GG˨Y* LInAOgD_oBa߃!<.b(#$}ePrr:O6"iGl3n3*m׌P.Ϭ`w;h7$=YP pLq|ү69.nfo_[|q Es/ҪԈZ5*\$lC-HMQ\cK4q`DzD;"KmbB(cbTp'>viB/pޅCL>"j&pE܂mEv*?EX|빵mt烨EWc~VmDn 'NA{>s3*Ќĥ׌_=AfUUfڧjf(<У À d ZxW9nm;-D kQ؛_Y9 ,c g72LB!337 ݵ ( k }F:c^z0ɧFΈӠf)v3k #\HA\Y҇%q^@Ret58m*;㚰t_Of="Ŧ@qOn<$48 AO$xIу?#Wxz 3 葐n?+5Nm1U;WXxW8 B`ELGHU_朒eUH@cg1.6K׋P֧ l6=D wЩh -nlR`qIJa(6 ,g vM"(tWZ݉p&0.p75#Rtъ"$/ue*xm()?A!eK$H;hhIwonR\Z@FUb%+ iieU|w|T]ȏc 17-ԏ[$r;! x+1%kyX;.r>̓ S3>Ӽs4SBe!r 'X%+bA~%]$-bA>VJ,b9hLlA1yO@K?Gj|׫$WcaȬXw02hϙ")BI)XH߹2 ejZ3YJ O=Q-ډ3)$m5j0CX&FpV95Hۛ@,D3] \Ɲ̢JrI]eg lN[kXfuj|9YCj$),ۏԼ["EK<k]:hQ生h%z yvMm[rLS+^Lx [64Vgfx1Cwdfxs?Х"#ʄ5Kߚ#Vh/MeRQǎ!> mh8d(iy.[{hۓbk!GSAͫ!prz'F蘳hk^ qH CɘSh_( S]ΚہSz{֡%m"N!4=_lM4aPRa KYC7 r'BڊHiY?:m_š ^"l %K@m!8؛U=Ovf{>VhF# tm2R w0ʄ(Ǽb[.s+.sט Ble. O( /C`e&gXvqںMtņ0CĖ9̽#}!Q'A/cɌ$i12N8TꂎɡN*nڥ4|dYj* dQ7e׭uvD?"Nq9߂JCtRz%E ~C"ajnX{lo=gƆ(.F$5,^+'pyal\LKA;LU1s!-1U|r'U'%v\.u٤.&g_ d$ !5@{!)kk T5F`' )IY)L|3{!]RR/vo+F<>,~?EXq<Y'+OWQAM@tF6ZMGFAsH SˍP'J!eV:W$߁QWח̂ ^$HvmmHNΓKlbB(0]{8=7-N-64)X:gLI3G6T{㪼[ ]?#䯺xEi>c-DQ~؉OBLV>Mn'}wq2&'4Z2'.Α FUВ7lwA)Ezwwc^ֽU߻DO>XԏiHJGCA#RGLq1}w_#Ql,0…%MV5Ȏ S%{+:.EP#wsذfMި*'F:KGAζ8uGY1 )PE-7sTR"dSA}dbŘZ^6"([ E;Z{(N<5}YƓ~j]-^ypTMK]#Hi!1]#iҎ|(w^hN BNYcoZ!Х-͠ h`R>eDW7_9r`jr*Б>Ƴl!89N)>nJ |z_ AӦ;gېJAr74اvO%ҍꯗp 7₥mB:DZJM|S #˱6`o'kszє˜-LʥDl-K(~}~ޭӡΆʫL"My߸JJ}gn_CUsur*%U٨#Ɓ8`5}WYB)mlx^yRޖ4fh7=tX먙Ɔ S<(Z7aް薍0DuuPL޶t޵'7a,%j0*x'>ɫэAO-<{%Flċgn(JBCd<,PMʴe8VjbCC㬴4:VzNȀzЍ3tbkh։/V46g)o G+FQ@NQ'$? n i}\RmlQMtCm;ƒըf¤/9pZ"_~;1Fd[G_>H!Ah spܾ@ᗒ%Q6&ٵXYXof6@fU[ڔU7i;'R0[7 4w#tW >1awʁtil>Pw+1lrʋz{ H;/>ٳ!"o@^Z~=O@'`#yKM;WY"{Y(e7S/ž G p|b0J=f 9 Μ"_åG6S&N>ȕ6a |ׄ/m7eAHEU!7etpaK,* c"jfO t^җ/HDYqd `9;ȟMmfRMX˗m޽D 4BB:rťa;{1m-Bߵ7kaZe~DaĬΟo6hTlH UxZcS]c*)VZ( Mhw(W1 3/ G?lO?kqu_v";y1%(P|8*!88w.ꊁ L'Wn颖cxCO'ןu qLWI_m9/5RM2`;"]Nҹۡ&[{qA0Cx$'3U$R#;}-" (N$8s"č+]6PԠ3nD$:4GttM)[ Jі;<(͘ p~/; kU67JAx X+y9~Epy:>ݲ{A",5bTͽPNn'EpKnظ}FrٿپgHUusQsg ~Hؕ@qt76X8-2V%GGWS7ju>->J0&%IIu[ޝ'|C;T@ :K:BhlXqM}%dWKEWlKYj5"HNqIqS{aJD7/?Fl8Ň8AP&R Fe"qdq^PCfC)2F%f8ϏD.ЊA6#R-%y\=YΡ6*VUB!cO}^m(NIt2RB$7v1+p8vO+VJmpOE.% u6vib'/8U 39%&HNŷ²+kt7 @V@P2.'ͬ*FAwM<:O7a i/rJ靱%9H.PKcgm)`!}M銈<(my3im!pmG @J了jL?e{ Ã\k _et!CXj諅LŭPXQ]C/5` Z8Y#,BHwbV@kM,JT[ Z|2j ~ $808]Qijo0Rx-"1ƑN-l1$Jɓ9w$[^0%4RIkkرOsEo^nF_ I< ӬLfhsɔl>rh)LBQx.%9Ȫ͍CDǻ|;9\\W_RD^5&PhN8iXey+6=.*}2E۵bMJ4$|}>[VєuT*UnD :Ge3euL2 [ T@ҭqZ< \]jc3tir;i7?@`OOeB%1RTjcƄ*Plƌ&Ps媂X%m&zt*4 G'Eձ ) qّTۜ@ |jú\J[2ul[GUJq# suK"G!`ro(.ēr4یh9.v aBwa$?!quc܊5Ep"=RcI%Bl^PUU%Ji2ZɷKV)Rr0%L.3xnIo"O@].\u@v}>“+bc~xLܰ73_+P[)kB"w-07O 1TSg8vIt(5^hDnaoC[SAb )b2;LȢMh`;j&o/AL4LH!NHXy8fC OKh/3RUA33! n3\:ϩ4 )֛e>CZeDI.oŁ#f.ii19\_K456.K<Ż\.5I'l -gM=*oMwɐ[򝠥d 8$jXv75%UUIIr8ʮW~%_Up"'}W<Иǫao[FSJEuL%YbJp@."BVȂ˜> QتArol-IWp#Sw/g ޗb Ēx%{#IOC|XOgUyh(靯(uA#h8%eV*L ܣv/%0?N)t{] zy{ Np38oO\6me|7wb&' "QpwB@,>iC*h;Ȼ1: P TؖQHeaq-}:?D}t-U-lJEn b$ۋb!6Қ"Y!CNyq-~uܵb|MqNs8F} lZ421p  s'wԱBp5Jܛ/EUAj4LV$:V$5O(K7dFO:7Df.<o`@BH BH 't/1$6]]U #.ngz>N_FrO+XϢ x0l~LCK.łEb 6u13cM|S ǮЭ±\p8]SPp|dAx:#afe7}a9SiOhRKGxT!1\'P|ކ[D@M]u=c6B?w.?]J`$?dӿFlYKf~BZ"iֽa!դUH'fV}Fa4Td"z!@*'cz[!XrViWE@ Uǽ⾌ UX2p40֤#QsBp</% #HH\I4*Ћ|MHi=<ټpnldaLݑ 7\"_WnR'qEUVVTrW" 0wZb`#8b)2q fEsغߜWMO8cOlE̟bH Y5'?9FdAMV N#²Xs[9i$աpޒ{`jZ`ң6+Da,Smb%t6#ʔ!)A̎Է H`TTcD .OfC'x`cv-UӪP>E٭rHb 9'X7-i-xpd$32;>_ֹ7_>>b`Yn1UX:3, 5qY2e0j@H8.Gq$Gyͨv&T{ȔlO2yѢBDm[ҧ3>)R#@oD2܀zt8P*yo֒xq|PL3+]'Uɡ*vC(7O_Y!j,}C'gQ:p0tܝJmoV>LqC^@/#]մ;̸4Ų|,#[ |#x7rJ^B5\G[/] YA L -6̤k(%uS ߼Ϫ~5C GWlYS` Xq͸ˊ&1jH@m+T3}րU%uQV>^E^ǕOepM2ּ wCaFIx• jUkyg|z^X°ǂ x"j^K:8/k{z66/.o^ nBE^`TYcL%KQl^z\ʆ@EGF΃$`ae>[=HwJb|1<2P$$sq +3 7=JH-yV#xňˢ]v7h-b;y\-n3+~4yR?}%5XÖDv*25a^y9`%OEʓ1^kqw;fzϵ a|vytC nsOkE,6jm.u8Fؗ]G.-w wlRqoT0x0<!9 a;0aE: w[WQLTz5G:>5K_Ч嬌HiMGMzڈKf# 4O]~—uZkp6CwTb3uw&zP1_b.S<{`yg&(~opnnO y6\ˇ\Mfa%Y#3! }&@KN.%8Fiʁm:'}Qe/9ʹxteV/ P(2 b%>Z&_2 S*~}&vxco ($K `!SruRءs9!wR3="{dۣ{EO}7A ű @$ƙo(P͛/8Tl^ i0(= 2IR=E`1xnePbCK !6N<H^8Q`W{'DnuN#4D⤐,&"]isjVM. 2L3ʶD,[A4îS`T.lvg\}_'λf Kg$1Pqz:^tc KD!@9WUYxf2 z! l}:bZU59:vSM*d\`m7#f$/"0_8 6_[œ[X1wrV켲ogVZ,NY9kndHET?AA3dʽV\^P"7zPļ FqA[j]xVPtʐliyHwYjDlDt4f{dJ݊{BPm]>!%cvcx KߏWVI%T}<៉d+5h2QԛR@ ;{,&"մsQUVv)eԽcGqVuXO$]rdOo]+%1LU}Hml>pK9߬S@M[!g3|'oT\}^v1v~$@{U9V2 UV̗.~B n=ĝqgO,<2>]$2>Ryz<ضƭ%R 8jp&dv&!̻`v hh-J>+)/P49T I>k8OpĢ躳/b"&ѡc}VZ|dKtZ5Rק{f $Q10.z(1 FA'CTw^Ţa2]V  z_ΘWFCK^|(OV+̽o+ Z #s#j܁7e(޳ͯ C3n6ʇ#yz*%7r$6g2F<) =uW9!$K7KߖxR~3]Fqܔ'^~~6ap +=, Qꑉܒ⠗$PaPGt\CzDGhF'tH&xA.HjTr:P8qv=eT]>|%\ꄢUUcU DASPL~O6^EŽ*}JhmvWo]vGw`8>" j46k}@ӭ 븊9Tv~u6Ű]TOs "AXDZyXF)N _ߖ83⫟SdST0h|)~96xݳ%( QXd@c eX_liMz>3KsPDžΕ/M\DH FH+$X{m?BP\Gi[<ߣC %~xT.-go:q9'+=C7SJk 6뫁k1KcO>f!˚ S,GBg-hm>U@'vuzW}/zk1\4rN\h[V/8泆b<԰w{CGJ !nu;Q6r& l5pV]}\8֫qΪnk2dn 9DwG]svPH\'uIpgsJ "tiq/-܎C*7qJma8#J4zU=Aj1ٱ+DSe>u֋ЊUi&Vje9ㅣ!of<.xnN: tOH vEZ )&^EN4Cf4vJw$ގ{zw!+:%Blܛs)2s ^?<3E-#S%E*U'{+NؓKPIV [r#gX^¶ 3xm<$#V)LwFhϹz'V;o[RP)4'?YF1BHA?߳[6] 4?)t9= i|٪Oھ15ʫCF-AהI}"9Z.C %egvV  dB?a)hM4LlÆhVR۷06s67sp<"Nbok46ƒ\? Ն{ h>1^È^:eT`e,4[\#Qr%}< EmcLPЖ\>Zy\eBu]u>$?nNFa\`ibo ޛ퍽1޵rm+cBXkT˻}CgWk:x( TH\qM13sqn%1 8-wpp 0o7W oQu!Nߺa:h.AG~<̉ s,8>"]f3S2>r~n)]~y(`RM.=7&Vo>6l* ?t12oB$,o1tRǃ>*iHBRBITDoScl1z`7< כ 6P,-]AQn816+5?fy>>v ޥ;JZӱx eb]ш'ZU!`)Wmcd`:4T3ceFUXЌv(ΌMjìVڡv Ma9g QH)i=8; E?_l1uݯE#].S]׵7#.!t=Ƞܻ*[Ŏ"5%1+~$1~ScqSWLqM|S^@@`xo~w;L1c=<,Stj/cg/n zXAfa9XL+iyzz±WA,w|Z4k9_qg4[WHׅwvN8Tii~j oK"V Fmjp):Hk 9pqpQk9^ >+L~F <5^,k:(c]D)Sf]GP 'xdP@ x}g\ADZL- yZ=Rq=ʖD}A@w4:! (Jʥ-b׳M::-(>2m>zŊ]BcrM`X{&t)"$%"T8Ƽ-.OwigW>]g}&g#(m]aP.-H9a9uFEp<NgQI<6[, ;:J>]R0_=d~#j\v\r,\n#ǩ %= ^`kxHBbY#@#Rq$TZk~PI(:DY荗0૊$gǹ8\\Eʲ`moCXdM@5̈́_D(ZR:ɶȸc/?"Ƅ@HTuHF?Ĭw,1?7X\ 4wvڡHGԤ.X4{|?~B)Y@D;DrsAU[-V= 8TJs'wUHyfFܔ2 ~`SjM[(te yl?毇c?ĕvY#sF= .`GNh}Eh'Rjd P{3sm s;UPM&bZҏ%Qb ?xzRpm<]N"f}l-[o("{y#n/r&ml LSf|n{l|BaO%YVˆ吪XtqEth0sSgh*&rNDLݛsz벉p'8M`{RFfF`H=gK5y9605G*L٣@#/G |h'p+6,O}/8ݽ%! wTF P.qGi+QVe1wI.MQ ؋h 3ᩏo/zP0E1*PTrul0FN&EePv3~ЮZa'#ePPpvYBA.x-@"9Lo wo!kݷ^g3/ wC;uJtTX䓷%FOjN͇]"g~66`B]'(HIg.@)v- w*h2^!IɈq;`iHK)%!\{ zi5$.s _( H|9@PHk̉~39>w'gu!88&V.~5B ךcC|2ڮ s=ճh/ pXkO~D,"`I~ojף |Ŝ<Vw$eIo!}7 8k|=MyRھDZPx6VnlOmg0lJ$[d /uGdi2?,~[[VشBWD^n}4^SS;!]gˋyGX𱀗FYƷ!k7/ٍi )KDe`c lYwj C_N&عFh6c:%Ne#RN̕ d+=$qcEI-HSui4)4ձ3ҕu^猻a 6-X|KFU(K\tuaD($Jjupf3)#`n4Q(qXɜ!8?OSa7K4:9}M/#XrY4.,ʦھ'v'(UPkY#P$]8Pu:;  p.:+ 9fLJH/NpۡpenbLL%8HO#ºD`>j>CZC \vvH$G ]XlчS:tee?|?ۗ$ ?"p/[Xex tg Whfhbq.# 3=287IV-;ίlBsiu`n5IDTMp/1?b ˠJ&C㴭 zoz|SR/[:铩^jDWBK-X鑱ɫiZFq}_6/^ث,gC$IŁ@e_./‡]:dm8B HuQNuޘUF=[.§f&_!Y^Მol gC% KȐ&hG ~ JN4igKryU$HQӫIrִ3 XO-r\97C  d= VgR>0 iqq$]l j֌s=J*hO9t73rMw܃̥Et4 Ko"ȀuM?9&,uW \**msķcG6U@t9K|p03vBEUx""ɤۚר?reyR__ ١XU 'ao8yz&,A|BT,q, NG*QԙG'Y9aJDe-;sFtͶд'iH%r-I**mbHPt 9fmp!.~& 9V ?Qik2"&6.1Crݏm~HEPe6ϼOp+B0G-ƊݮXh@il.6a[N p^H8Tl;/?87x=51.Q>1F(Ør@"j=3{G1"3=4 IZO&67S[޸xȲ }wsƾn%Y"J M*0 j~ex~`7~>`&m #J];uqrL0 Ľۋ389EbB,l1R7U.>!EP)dBA>.=OU9X|Lkoԗ}\p+rQU7q ,JR_AKȻ⤺t Ix-AR!2jxa xA0y^l{ &Pi)l,Ф &ƈ8نBkjnׇ y$ht5IVb$Hʼ V)Ci.O$ҋkm[$7G1gT#蘯ܴvw) 0>V(]TMWv8T,rGfQ3o^-ϐb |e*bjWr-q`J˨fX=Kx˱Ha 8CHjZ|}i]K%e/;戧͡l|v1rpHC8"$Drӯ9̙F8jW-fZg?(̿7Lэ9"a5 r5\Y hW}v~+ nB;HEA Wn @&\~L*spj#ffXYZ6 e˓$U"6h6XF,VXEzϔ |fk+#/hi--38K'ߦ w-gyb*᳓Zy* *hF؂R/ONRq%BIL. A*r1kKJ-Sh_"rsc` YjJ؈(?[)"USSOfW_mXI#qQ~3E0oѮodHd"ǖblp!<|i0JO:cwN/ 4GIk$Q<|(NM{ N};D+*lIФp2aSv8j>}Z䟀ö׏5@d\< tA'*[s{XxBV[o y1SYSuy^Nri *3ޔx%&n_{a@ x[R0ڛ1%pgqmԤ7"-oϏY@fKV/}TI~W#`6gQ,[V&}|Ax ?}t*u/3׹څCa=sE_r keQTk$vɑ)Rj`Ao}aĒ~ݰ˿I'`(@2$yPbăHI(}#!"=@]BBhFT$uJ:zߏĸG4a4t4?qr8H f(j=VObv]بLoϖDL}L 2H8$f#1^ЌcuXP"A.!~.Şa@Yo1MOt'=Ah/b/_Z2+TܠQs`s%g~/B y͟L~Pzp:QgZg,X辣g.N6ܙ۽;ƾz.Kfx#nnnI]b 2=aZ( fQ++vX1G^5wd@ㆮuUZOz3"Jsɯ \kyXJ^{PTZN G>[DQ_mp2vxstءD!.?h Bpgb>+$e>SGS\}uߴ mcY "ۇ;.? cYԝN K[6aٺ'M0pp0+qCdsмmplAB M X}u;tcDܓ\zO}`dl܊>P{ M'NJBsEqr1i9;O"BFkC?L}Yl@&6;Pqh`:; j뿬ja:FP*bed2Dl{`M!J|J𬂂 ^ךG8IO "Ԫ@- .g]tBWxP fH<™ =Ckx; CZvI!i5_FcR41:sJꭓ)d4^E9YFgT%Dl "iRԇF%.#>FnRn[IA9C(i?j`$ 8MS 9n%00(W v0ޗ;n %B[+On¨lv8% Oo⊮U毢"9j"54+X#C*/Ņ,p׶׮pL(\آ봌).n逋.vdIRC9f!'Vi`( d>|vL^t~e~CXsIÜ2\w9G[)}Tǡy1ˇ 8طDZeޣDS]rUMٰH O( >h;I@,1KMO0$~6m/ЯlU4#<LoTyJW @˒$by=Kë?㛛ѦD2И9dc6"Y jH :P. ir?7n +p^P:ÅwK,%H9_{ȂfLrLL:zD3JYBrc(|R ?ܣbڧ>~n{ f{mgc CjijMwA%}`/LsƤҹKQ s/S7,x_S#G1ίVěHAk.[/6߶NLЬ`1W&OZ/In3yQX)=NpM:)6Zk ˗\I|x5Hbv'MΪK|DrZ+ڷn&6euCnDA3/AZfV1s50% #lVy2;E45B^Œdž[UgOHbOuLH.SipK L~CIUu7݊ڔ/#yҿ,P 9»!WG3QDofV[5%8T.1::~hh&#f+&A ZϯfjOX6ذ'S7fkV]tuYGa8(AȾG&SYXT-&ߕ[m&ڍnzr4=OrV0 Ƴ ]xѺj?zI6Z)D֕}mjAҏ T6f!x=GJZ,'sy¯ _RelVxϫ36O:L: 윢Cu92\{LP )'<(Ioȋ!ώC̛ &%T)f{u52-82J]AtxUc#к/b Iv6zW7l;'F!Ҵrph0nY{p'ހTCx9%-rU6@/}}u =KI\ূz0r͡XfW2~:Ouo7H0.}qcF(tQ!@_Ģ/m ~MB*)=]d&BxM= ,9q3%R C0ߟLǘ/ӊ5uGѨW2,k |((ͯ̈$Fi& gޛe=R d)-تrg3~Ovo'"&  dfiI(0:ytF pRwr(k_cx5e"+;0WqB ;ĮL7}+'Jfnqb QxI*z*ߥN4klTz#⥯dVU)VizRX~tY ajhXp'yT}z3(>o(o5;7`AÑ?jX;}&SΓ Tv%E.]!{ >>GV ei,^A qU-:?6igZIvb$'0Y>!(TJM<kOv}r8/{eiu_RtjȫSRNm29F`cwDa):/xsF4'HퟐCm`W=Fe]UXrq En&G#xs(:%|8w,KNn ZitIcęcbC'>LŠzT4"-qmmnn'CߛMWƣ7/؃AunM>*̹̉:-۫E\za1en r\F?a>($Ȉe Ƕ. Vr[UۆPcnlS9dxzqXzXw8]JBGDs@@cErѤ^-fE('X_ r?.L/ s+G$EXV)G>c׀w B }g`Aê+ \ Be&G9I-ϨLwxVIۙ"bCxޚJfllYkSƖ9G58_hKX4܏oM dp F'ÒJ:|7H&܆.J:K kË$w=:DTw 8?؟>ԠMֶ=0"y:ߴ2s@`̳fFRoSuHa8c͙0Q.m%S@ F$SFs$<1mVj}q5.r:ՈۇL[h;p6CAC*aJ+!\v%b8!p11&w `=6:նK:D-$ÌHB5wҲ#BZ/'i+v P#uo]?+H AIL`B8Bm+ODpU/eeQmJ?/*r [D ċ0*]=~{~(GnÚ\#?;ȿpSy&SAd4nAS/krd]+H5mn-7\!h  멞8zaӉ `j(mk~ϸcV֣Tʻxss%ΙY]?-^?Ry!?XnGniGZ ku=ILAΆEH>7J-(t vbnY!]#;.ir"cjTȦ*!:o.,$Y5pQFY8C$_^Q#-R'ޣ44/a8!.-+gXAR~<{Z. 6XW`#ҲoVa瓺3g{,4XU*׉CA\R k|(d/0;I ]? -U`d/ 8)9dί_ l\?+v\1^Qs:;klo_qhr% I[J/b}2igI`!;Ѧ=(2H[sf!+!1r^`+i\ ̔؂.vpAzOT kN ~KOLy@o]`)KOW+趦`GL}1mM>A3;)kP G{cDuCD )XJ]3hXJbYx)-%ZyThgx[11;h:,k8$ [H'4hs~yS< {KxQ1y]؂ybA 9Q,vq2 g1xmЧT]%ex[h][DPJSr_ЁԳf 9 +HZQq:=|zi:Tyӡ{"",w͆& E=~9ѳ㱱Ki{Hxx:п.J$o]awPLePh!|k RTg3ae;o_D{*37®t$? fD|bwa'T 4~MprN$Aȋ#V ^?- =MVCoS~)98\A0#ZFEb|1Q;Dz @O! Ҧ3` BUb ";;ɜ/8GgF$E2 }1d} >K=U[KK;7>t.}ȖXinS d@O0zd^ҿJgmA=DE^k*囩}%H#ȎE߯m[Dhe]!h@ŗMÿZ^p@Ⱥճ(/n&EH#Ig;lGnFR79w Qm?TDL0վ[ͱ#]UE|7᝾܈U lʠ]_r7MZ[t̷^[BB 0A5CKKhgsyZK٫ *CCvd] ZvBfzEK:q K|1ǜr6vHpcM-M=3t< (A|{ DWNmO^AƓoLcsʧJ>Uv]ut1 (˽aF7yvEQ.Ii|+7OH`i[<B+Hf'wF- ')NL_E)[@,Z҆tmƬz]<d-[n eD- )?ƳV(Gm$G^+]<]$I<n@:)䒪؋ /j/9kP|j2TCJ ܐ1"3YmW.K($R3-.7K)Pe2%Eւq1i**9%O$B_>Dr̦0K= ՍH ܀9/f4{`ϵ5lkht.7JZQf4gk B4h[~ip+hɮM.tMN&IVᏓ b9 ,L4lzތ%-n lcQh[TTmydh됧Н> ybki?R䭯BX%clN,ͅYm߲̞@)ՀIdg&*>PQ?N1uĔ(N ;k:vsXB#^h Y {4FB7*o j $tGwov#"֊!ooᱴks[UYd ?<Iuߙ",c@ݳ *<'@  ޲5}޹@DvҌnzٱy>_')-JdzrsӾm[.c[C7ZبY}xؖ@=1eEtX۠'T[(*H/m[|V†Ze rQh㭦.Ch`={5?VS5I,aӐ`aGƩT &<Y5!-h N'uy?`_m?6<[x˛?}]r=kfз7&Ge61mǹ3;[5@n?'Yβ'4,7aX<IcЏѺaEQ6jdPj<>q+k{hZfočgqEOۏ7l5U~xȟ츑BQ4svq9mv}FfI A9. Jn0D0wڗw~^~>P9g!bAzGCFm>cS*-GQ Y'Ǻ S|Uؔ>)楹eM5Kx-MxNg~T]_7[>\WHTb'K܋؉Ґܸ;rзE AG=\s gM>1O˲K?4"nPc Eh.x [t@0bkߘoYa>fΑO1LV96wM ϮŅUfJa*kV.Aͬk&)F9ۈ*Cj,S/\\OXu|Ze+#q~I%[etL\a?q:cCO)qCn&(׉吖IQhdf[%| ?G3&IsPfp 1wLnYz %<:r* %@}CGIJŞ hݲvaז`48N۟+17.[ bf+J:1XKNpY('/)A)69bR?5>= = -EVFw-rC*6WYqld)P+,S3Ӝ۶"lR\Ԋ 5A+)%'"$h@͵5y>CX  nݵ@3oQ-y,bBP9bqT]Q>wԛ]@܀1o{do[cJu, (`U*m4S6Yon, a} ROIp}f Ò08'[# =ؼ%G؁]q)BOZ*Tm* g'̴g+c-Cظ"2@I!wX_U[yfQIc/I*8DgC=֡ǁ/[Y #H溭5i{!0`MmD8-ci§]gjsFgh azD>.5b JܶxGQƙ`[^F#]D̈O ~~-Q~g*۩ճbP+1'vZÏASKI3ԂRnv뷀nUNzJGR皶Z+lq&@ 3@V:G789mWPP@l)_x! n\G74WCLeg`:bmMﳴ~\8.#fiBJ= %ͨ&nY}Jie7 QmsT}f˖Bot*38|f[D\N'}? 8!q8d-Fk -Nk!C_fn|XTӗ!=4[تIBhĄآ5'$-hņͣKYgy?Vi: v9e8LG;ʼnWkRK27/m.99 QN§FٌX*< Q9![TbT} \; )DlD\'7X(FLf"QQ ]L{^qWmd&D$I]ڰ/+}Af'"Ѡy|y\AyBgO_ 3Q;iiLR3x&ߖzUt]B 2׺'C!'ܹ 3~}o%IBTE/O F3 ~xyxc {ie;쥪x1APbc!u t(t]a| N\Ȟb_ڝ -ݓF\=)gs&'wiwמS{tېL h!'S9M5wGb"HTͣV@.m@#%(>U0<|$K讟pzsIxy+)ڡFt4Mc\ -VCzYz2?Dt<:Ԫ^:$Awo-B [sk%룺^cTT|⫚݇O?pOQ|#rU5P.C:.C-%T (ߖÌԃ5 R+q~Q 5ԝJ-}51?8)ү#<|r5!mWv zplk,+Ҫ,8˖;Qޟ[?n vJ; !/46|\;E-׃v|PCN?̘' u+Su[=l%Z YēIZ-Ot/_ܫ!^65s 7kԝU9&Hft g>Vڼ8uЈIkӥ q,ؖ׃ f?\x|U^F3הmQu￟b1f(b)F}f" *((y%\Tǯ B;#& DӗfqRr"٥ْdH "2xZjXJ#5;Y6EY1cI4"q"v"sp2 m"D͜~0']izhh^dž]Ie Υq2k,!2Z7 $#~2蟣%344RWKrDH0ՓDl<6;piQ\⋂ u)ڿs5u5/Wu&aQdBoi 6vsSWb[tdw5x,1/E^+r~hkS+bVo#N4BKB'-ַ|Ps%T9_`G{T>䎜Xt y;bJ%PxH~9]"mˤq#|Y6u+'S<]ޞ3*}ɇКUǓ|,x1#~5gw48 0g I XvHdZ([|1\]﬈()wHnYBS7|d,V툜un ǎ=sE@2TńgR 7ӻepPom ֿb}h_t;pJV>9 ե)#4SL8Sp'L얡>)OnϽF릤u0Uj~l~t?j-mo*+nB,NAm zf1~"WM&nԦ1&3]B2x7dԬz %RZmVtߥ_FÄޥ.9z R;^ JiHlכOED#|#FCz'HHlN BhIΨҔK&qW%J‰[+IIQaݠbm:۞t7Eo^76ë({始[Hhr;%2CŽv$236MdKK(p%CyVui_^t,s65"@Mp#m)dy>3oSSPN~J֏\uh`u9Tt_\aQZ; 'h@+`Ho::tֹ?cS2Dyǁ#*R5ՖdhY莲,!O@`|w#9rJ63?M}u9ץO"x+]Cw'ﵵ,AO nH"QA)rA>Ur"d6+W3Ux{xz&eۨTiՖ`aΠ lb3@j6N [KصwQf28xe~W.mA\6C7ڢ}|Mԝ2v(f +s* ="-BA+K:tPk"=p38O,ا->VG#~έ?2SnHj!3m7ѩ ܪJ5&h+LjMA&%0:=DGa4BR4O6~2频6a"Hu$z"Γie)fQbW&(W\akA~kxl(=XY32Ц`7.ނ_Wv=H܂B3%\UaZ:ya o8$tDB?!faŕ³AɆy1_n1u `Ila2ClC]V7I?.h`" (˯}hTвg//)s8]wL6C.?S6 =#fف`Nn5f.Us:z[XϮgarcݰ1Ga}FPq }% CT5H 8EoVR4i?;FrNJAndq3S%9 G~/(ZJCQ;3^.>.갩=Q %fCz 5CIm/_$4L~Bs f vhRM0ը@#Uvq.ZZUh0lf6\5 8dZˣ~Sm)" G8-A07loTxWG+H)ثCúN[ VNFqՂŰ9j u"밆E~Ls!{D0IYTaH|)IgQ>EUV!FSsǜ)&T$-m[>cr9ufj+NݣEV}RbS."ԯ8k}'"E;ݺ.ద&93lܻ pHiG$j(X԰`C'=?eCDXY3`BE(DFKvP ^gbnBB Ĉ8uwf,[eDQ;^Cwx㎿-66#/h9*Y{7xy$!ؽmvP0D1ki̯t&L5.%?ƹD@5R%;4,,`Ǫõ tOfFw5oPVN{Я <wFo38Y_`M:M*^#%KA_+DVSr]L›@\.A+i5lON^WmȱAHQs6ݨa8Ie(k.DpWװǞT} a$[BcB#ѹ,rM;k{eƚ-̼l=+սo_{b*:cpv ʡmWU]ڦR#2wqd`:ֆ&Ըf,TikA.=FX뀫,@Kp 'gfaWK*<u)JxN[ Bհ5w4AO9_1-o]t 2Pr'OmF[w2!JskQŴ_R}o]fL6m@;ӊHitx߲114INP}j)wV1̌TrT!SSJnOVIIJF?+j@BIA/$H*GI;G-}1 yAo\׻S ]~ ~*+0T7ߜDF@_'`uo)  K%]KC-}7 8,FNNtb7i:0 '.A_)Ҙ G/o~⾍fXhPVs~pBEz2㍤5hN[=W& gD/B@q4BgJ-:A8xX> ıB(IC+y# ͍KۗZCi$\6HC҃D#3X.u#ڋX<Kh٨w{6{VK kM]ս"ځsE1OV*6Pډ)@!Fjo,+0"Z {^3ǮdX~B.|T-zF$dʂ' J51Tß`zӯX:U`\~":dz`>*=x('KZWPD (y&DmCFwjG)G>٪NqJTݯ6X9)V4!!ӿX9qG_OUئBSG!I3 Fa}։ݵ(;R.75`9w С~$6 ӔK7jۮY,Zp]fxy,%4@TbHC^ sg+g;߸t̐?*y>! =K$DTnjY1o=dJuN?*9[2,l f2̟KL9hrKU++'s1Nîu~n/-,=YsS|*ga >pC<rG&UE? ^j}uk OGN7fwC~f)dbܕW*{..dzݱW޽jbS/*Sm? Z$T?֛Y HL+tC, Д%ZVpPhx[ni =WynvE$mZO{u=4*T Z"SzgfG. =^&~ʙ ^ H,-"j cKD=90-%(JN@uTHN=>}jYOp{2ܤ4)HMϩnHd0>F:0)sny;MATTAd)44Iv(qnrxQ7N1]p5KLiG%'K+]0a5LMlbZ4 vtm޹\k˿˿|9z[{YQiW5uwUtj'N*a:PLgD Bf`>EnDEsyE5HElL)M+t;eU<Z&y;cw[ 4'R˩æ{{imx<|e+ R{f#ݓg\O=]lrhFl~`)`4Wl\2mpA_~;۟c# t.e(D'=%Uj 5s 1Nɦ20Wuɀ,FvZՉ8ue p%IB?JSd7霔a}a_omU &QB v1v0pPY'8.Z1c%$h21h5$@SȮ<ņ1:bd|qat*ˡ1E_#N[@.\Ye`\}L/sNսzJ}Ē+ \`q )! F^M .PuԶRus)SA)$ Ȅ♯@,?lp( ,]23-w QRj1 {%Y"G (,䪸OU, V T<|'e% ́z5*˷܂2F&8`l/_aoy%}wBT@XN4^f㡍ZvH7?-pvʿXX}Ls٩k7 .<.>e"l|K^ F纑).HZ~ڱtGVTDu xʐUqq5/c)MGpR[P<|x*űT-lj[2f]9Q?7lmqR7g2w[}%e ?jҳ@:e{ '-pQf8; љb 6e4Z6լYe5sgVQC&6S0943}$rOБUYv5ClG~A_Y" +~4=vD%E/AGfM"qyj $M~K^ո}g.e0+L0G' si|%Ia  SJFHy;FA\3Y\ ]G) |fA#$vszKv {۴[\1'd;>v>S+XdFe2j=eA S5w)c#WgLWfb0q}]JFŞLrjz49!?GD$'ӰV`0GORH/zܐQO|?.:9V&c2J~:ap_шaܖAǼL`)V"絕dZJx-i[Od'VsrɰOr 3/ǖ"4DJ. CpPg 3 ʸKVv'Nitpt1҅i*bnѸ}e6tj+^i`Xmj < 4t\Y{TYm{2.O WA > |ƿj. $bU%@v m7{2 xǀdp/ͦ&)Y:z{ [ݡLfaJUT#Hs| #Ǣ8CmtدAҗl̲OTB6r8lbm޺+[!KZ'rKAa\ޤ욀4Snk.d䭸=p5I1 aK3!qe`HȜ`qSϣXA"`ԐdUZŵ8/šbs[eQG 6}Y [_8]Q+)ױ ` >!|.2ev]?ƴ=TqH I;J5B*<_M܊1mb ->~ڐnIyiׁ>=^2BՓg*r׏s/'8nrZQQ&ؔ D=HU%!&E9LM֞O)rd eN&8>qб迦0.3N/ AdE-7Sy T戮'PN=`LFhm Q{{T@(BW EY MqxMSn<:Z{Av&=VZraY.bMATR&O^@}! tv^_3b]tW4s ɦш+x,ZEol#hY@A^ X:ϕZPy8wM:AXebAX=)~&Zw ȋQ| t(CV.:ދ9P)Gk߻1R2 '8WL/54䌂 =[c A_ou~-iXK F{δȠiQTO|Lflb>ye"o%!KqaTBCUu-OeZ197G~F1^gj^iR3- +c/Y |K6m-0JPrjo=˰9͟W)V|yo7a[]&˻}z_^PQd r=S1AkbjC(N&oZ^M$%hK"v;*= (كrN)h$RudN%@9hgp3*!Q>eg, 4FeOhJEk-1dEZJ҃wC? HzxKKXm%62Y,Q~\sL$0k)'m6Zr{=|cĨQuJ}Q<9Кޡ#.B -ɣr+Lwp]PM NO6<{uv,<]+Nq$_qʞl W;b$#W0VC$^ ը>k[@3rJ}c߅q\E8fNq N9D& e ۽/+hn@\ om{I,Ypjm9Z1)D2SF,ƚظ.n"UWRu}fiPtX]!NL=C{Č<~k03WÐC6AaH]ͯj&' T~=〱9LORD0h'ui4Ԝ2 ;ogtГj#8 3} !#3H}9>=Tv 4luxvOQQafJ'Jʂ?A&V4灀cCSk^Xs= jz@*#99`Vv +WhI5Q)FyEPD! ;/w D(6umlKϒc9o:#?O T sA@hWL`jkmv@I\õِ=SMMʆ~置L'^Iƨ$msǼuܛbˊ!Ru٠f{mLeS+NI:=[g|nI@sP+BM'SSZ|-&:d\Z1*H~9YX"NJZM>*' =7o9ùz?| 4!t6$̾9:rbΘ@kjW" Ҥ4eeY}.y>}ѺY_/wFs!{ 0x!j"Bol7! 匰',sӊuY4=hqZ`,STV<ÖVF&N%d8 )ĖP=GmBL 7_Z|#`dp Mzecq)3nCR BB8FƖ-X(`~g"?iٍp͏dU{TÕbIT\*/c"h^6D\;(mI!`/x.+e J C   bt{q2ZRlIόyz7,V'߿OH}xGKk*/ g?rԀ\NKumkɻZpg緦1|tJ& ۷W/XoOz/ȶ.D# !~ i?AVWkH<,޶ЏҺ%Ce؀ì/o0y||&4:/=1iF83PRp\!uqB؋JGi;Tb5M2)+Yf/*]}N4-9f]r 6Lۘ3\Un`zeRRp t^dכddh.e0NbT;P'tf7;aI׵zTlPYU{]]i%~e܎L\弝Efq9k9Qс~4PqNbHI鋣H+}HkjՆfr edhf~F,2oWLJ(1 e!͟:ϛOIKovRN^O4uWP~E]-үa@'.?@+-ȲU?ܺ·RaTs;T̾GoJ#-P2j{sr`._kE_$8rؙIuTN7|τ>g7Aғ HܒH#_TT@x$D-#9 ;z+6*ɝ;j9JGȽC&x/;i!:ozϔNFh45)ժx;i9Cvs_e;-P{Bajd7ɔnBpB17ȊGªTrXp6Eg*G')`%EfLl\됶mn`Ơ#DIƈsk,\HN~zò4O%~MOOPɤhhF:0xq4jTk(M5xc7Ih| .'ܤ- >ZICa1xV~O7U Rt$U%<[F1>LJw}& MfT @nbS3@C%źۣ̉06GhxT-RZȮm֜\F+.IRYxVͅ]"F(/H:7zU*q4&sOȾ" GYGص[?=g6a!%'Gs'&NߔAh& xgAߑ2u--\:ւooX5:s#9-RnC@;o?i⎤$R _y~ @QѤEJ`B smiɏ曧Ra}_̕o*Rm\HFG6"+#NB ![4+fѐgD5 l 8؊&_X782C$+L̽ AsϦmebNI}GV w ^ ]3`BUp1m-EB%G?p%$P3ʾ}H1bAm\xSvcnE_qKz)GDlQz^J;a,{ƍ:;݅u ;/%rG Tc7%Aϸ@cV ?~~\f5V;{]~njZ= nV8{r;6.\Gy|}-O؜ts|Wۑ 3L雛 죆l;Q3M/?fgyyqx_o2($"qTވWs,)L*!ꖠ\A4`C0qхLXO!D9`+P|ċ%%pAa`Nxpei^3ຩ3;ͫAIN%X|^PWMDzǜ"O}ӟ6VJ?.d t#,޺pt~2~{6Dٽa7PkBn"5W$|e4}*è3έvOoGZ͌0;o\ڐCh\7ʗsA*? P) yEB,: b|ܟ؟wgXN ЀճQ*W+QмȐpϢW-'z.8,Bm/~|C_wċ9`I}XFInmX5ۉ!g?O?6 _'}hml!]?[<},7<ә1DJĵaZL/+U58WUaldbG0ӆD͕xȬ kf/pTʼnH £&J[>r o.yR;H-G=ޭ'2vh]eļ~<޽)D-E lHxAu~%o(Yo^VO"΀> ,^hK2h.++d. wVs>_CrAjG=9Pn] a꿸mPƛ"ղUNA5WA^̱778z tD eޙ# 1-->=Θ]L" !%;ne<#KQJ|D|dHR"?VIcDa?eN;esτ(4ҧNi܇ZgdlegQ*/CVTU_Jjܾ9άOIr{Pcba̫>)%>-Aƍ.%ŭJQDJ CR:(`˱d~~|ZZa92Z0["H&O1QHk?ād3ۗ&7p;`g5uWkzwi!AG%@# JWT*$@ Qt+ĸ5,vqUHw ɟÞ*oU7 7 ChsԘ A{E>]s,jvj ="ƘB v!U 'z+<ƒ9oM`07_I]%5ڗd 캧m ު{F[ $5 ,0a; Ci <孟r6_Gh~#7Uc _[3?wTa^Ĵ6sS!ڨ*q;Y~EoV"iQEwM4J<}Sf% rfYI(4"|B>d>gu-Jƫ'e BچO{?NȺ )Y~爴 v *r WfY Jչ`wu;5"Zdr{wE:脅).GܬhV)Jä#drQ +Mк"ywUZ\Yڮ&ԥvjn)O,#f=p߫>v<Dޕ;R5*[g$`cí嵥(k1\gzPW캆){HkL@ٱD_Gq_#_\wҍ)Y$~U{A[4'sFp‡L}b ^!4AҪ7 Ηَ.aL>S_9SorjwK|"9sLB32uǬ-j*v9F+fc:SXĘK.ŵ) QśqC?-)Or,P&|l"̂%F=`0jƣeRʅūڏJ㓺v/ͽ ys F xЈ:4`Z>䟗 ftYpA골*\ B>Gzhs#Ĭ/Yٙw_?o7T}4fR%lxSsAp*ԫ7ɛ2#hIWp'ֺ<^0"uo3DDN(÷A#e+"a" I8=:aNMKia+6#uy NIث <'aS+Nia;g:;}.EH y{w5u|ʢdv!ESi[xeɧ'~ekӖو2>?GAhR<ԫƛ'L l3A ԝحLIv(K4CeKI {.j!4 дv%|p(oj69P!3.eg^%ޕ O IAEᣊc>,ǶFr"Htz1+)m?p֐7XP@V `Z~qvK#:s$][h}ij.R(E?yQ*'p>]@ O:29۶1L@w\ nzJGEA0hByQjx{*`<'Fn1#UyiZ vÅyDZO+ Rmь-ʹGJŚNS#0s/)Qm!Β{ oƽЄ_NtG[PG|E])>vo-kN=Rt/U6ӔAũ5Ԑ8>Dԝ-bgD]5Vl*syPE'&h`R6lV{Mc:zCmvxXfٜ (^80QU$Kr&k"fyD_Aa٢0DȽ*w 3׾Ùr2VN-XT&GO9-`7Ng7V]YS ɭ/i pd_x?9Lz9%5`N^ PaV;󉌃` U/j@q.A,-4d%иHBbuћ²9TP|EP`s|'fȨXrq\ {)\NVPUIw:?etN6÷'o~Cdhb6CkYc#piOLNM@&S|HE 8l1.4\}n7>{t;U +*_>pDfr)n|첁Z,fHw6.SdFw>S.Nϟ4y*Qeu i 30:z. 3$:Xƫw+B4_d dz&q{ғJY܂S/spgRaqY-ƷxmNS;# Ws&'d+cS/B/話^uMd&)6T*depܟ~Boi2ޚ7,2YVOJ:`>5 v\},:>VeF,8,,046Js{6ޖ/M3+NqAG21\ۢ=& Rѿ ԗ`',Lˎ_ujsEv: 0ѱ2\ ꓦF.E6Y:FιWovha>"0z*pz\ʣoS9rOX3p=43s/EK̬҄/P O&/O0U!ѿR%5h?NrTY H|U-yOZo+`; ΤB XͿQ`/bRus]A[m@<D&VfZ(~^T֧M$Pe|cv6VЫ]lї3k7bZۏS=p ۯ @ʭ٧~2+?Mkmc8Iܜ7v6!G]:#N|K|[+}w-:,v \q2;8a!fSHa[)KaXG L8bQ`I+ !K!lʹ:U1Kf2' `;>GYMI>%cz\xUG kQKqPE!'F(+X,AY5vՌ#lF1D}9DT8mϾ #XµːdTsȤ,smጟPGˀjT^4h#)S$68A^EMyه二(i;[.Y+8R/娜}sCP"ǐ@6'?Z J{,$iFs?Z%%XW1D,@a+%6HhK2ȭ?V2Bwk5_돸;ꈩ>ɲÊ˙ꔡ+5U;]r"CPCiG<F{7\PQ[b2gA#;;23Xȡt~ UVwMu'icO}k:'>or~fBf4OyJQ M &C.6<#= vX# T{j#0Jy\AY_+j"jTr!rI`m*HZA܀j9#6sy&Tt'; nZa$خnQaCe^V8=?K5aEWkIhXl ka(~&c>6 p%  5kЕKg]oS$=kHKc5MԳ,݉omIYns^HFv_AjK}S|<7{7Gep|OaWۿI_/(=`@8l1X6n[QMiw;;ћ9n}I>yqҏCMYe !4\LrQ~}՗DD'tߕ/ =I#U9CSBQ)o F5.lf=vi>2_Ef.Z7DTT(=̬=Ā|F$򛳒ʏF4fmdAARO524l*s7N`ZVEJ44a(}zߜ@ RJ4kJ\G+qZKڨ;ok dr9k: n/;s[k䩩$-QB\wA|K@]H3v (!|(_Jހֺvm:'G +Zh } ٙz>(^&!R[ 1;†Uo\$p)2R8NZʞ9kLAI34&Ϟ$Y> b'儦W ]0HC*FK *3UFYIVJKh1ڎo'ǽs]&Sʓ"fI;bXhJBIԢeLBCc-Lh!¡k]z ŝu:8V&-:U4+$ 9iY`>Ń$>7aJф;<ٶ;}ot:& վ qPҩxӜJ:nUֻ lkXLv5i+sL!HQ}BXL D&[!amBOk+EAmx}7v1Q5s[ʞfE$(L!8M*D U?͑|N"3!LǃRJ 5]5{:PAᩯ!2$Q!$"{/PT_uLXG;tJM w$˸" Bk*JGV A?MmT# Rpk:<ϑZa,M%l`fQ/i`㭆WGqi{HIfZY[;qCW# ғwiMbC&*^^͡ <#Lnn~WF zf1b7w4;sX~8Ē]=Y3I o!ho"kqqST: lh07vw6ΙH{aa9v;>1geD[;PSd1nrR{tF Md9`bplRì 2K2& 2&"ʄQ1y^ds1%5Ud7!] ,H îBvߜˠtjKAMrEu+3 "T`o!SgY7%ݕphFXa[D)ׇiBV=$wؑ^h/ '\nTՕ [BX3XLІlFUX؍oIn"m@l!Ðnh 8NKo#7v1 c. e/+#d6#,K<%4ڝ6!Жm2Ul _lP h%o;Fq _ʉC^tEBlq婢 &^B UcBP$JTǔ1͘Wza*6ۼמ+d W90G7ϪbIq+ò|\ȝeɲ󄕵AJy8'X1./tRlEۆ^n~+].שGn6a|nJAC&(S` H]sA?lc5o͚0UN^`oSٛs+:VeDV.i32Ƒg![]@|!6B H^c4  }%JRa#N$쌵D*^Q^V-Ѻfe]OM{O 5s88ȰPxg/Hk[[mb{b*6~ u! T-q\&^}S (9Ȇ?qSɊ;jIOiSpQn@)^e.{c{IPޓ }'p0"q B@E+&6g9H~!(CP0MlV]%JGPf ṫj[fd5dOL׉qTyZfQ*r:HBwZN-U~3<|? ^&r&kD뉵!$>S-7]Q6I!S}h:I 5^ŵuLm <|)榰) ںw#0)IJd#6 ۣW?IxjV=(zJPic +TM]H5An*DmNk"MkC㹝10b>WM,@^!zQm2#*  ѝ5k 5ׁ"U0)EXx~*Mn`N=l4;:!CAم U4SPߕy^fK cp\s}, tFh-z15PU{B uOTN#`|LP,#Ďꉕ߶X{sM26XBK؝ ߹h|+Y=5fe?m~Owěþ̒Жu7Sͷc}G'U7>iU'< FN4AȪseCkݭyؒu9$hZ[_*DZ~O.SXZ :Euf/awBLέi>\ $}hvqt1c|[!H~jY42) tf: pִNz5S^j㬤}1B>G@#rb9Tϩ*5;VhKR]X9|)P3Q"5jG;~dVsC41!$5Օg>Ҫ3ިg]D 'z:lkl'c]f؏*3eWڈSkcZ0wsj lڀ|#hW=xvu %L+<`&(m \g[ѵ|0ͶY8SʉhDz'=h aIuE1ͧptmL.z #"!LB{>&94S(U(':U?}pFU,4gE+SYm=c.b=%o#:ee"Dh_HWIݖͯdE47ӨDti I5ľ}+C0/ ҷ%FT'ay4~OEqOV<Zqv r8|a,vpR2*Pϼ_ZoNb70 tX}La'hng@6"sچI8:;ݢĶd{+ÏxN+y6[yǹ\^, woKP b Vf|?J #d>۷ S7stx~z[~/pBNa&>-ra(ODA>:Wˇ؇E0&Q~Cp');~/ G/l HZ!>?۸0(79*u3^dIs#y>3$]n\-=qEd!2\{E]cgs=XZNȖ@ !з[ۮ["^%N](pxhw_CM4\`#m,8lvyeqt/c7$)#n-˼hvK}0D,E/ ~zlY%+#T(㦊&t"0dDLAqә#bwJiOq㢎? &k-jVW#*fTG]tElxtIV XFX6" mvUx:$jJ4!:&ǒ3_>$ߺ@8jɤ ^)CE=RNxmVjICO#o}wucjzt/PF RQv$2ܝ{se 6P ȶX3$"A2 v+nO 1I%W/r u \XhI2-.7mg΄&Sesx\lvϕ qϷ\[2Mb{+iynhBzFy,6ݞy*kA>u~$؟) ԤU: ѮRX;uCL:$|m0֭XR|b$4qHmSI%AiF@cmHz| w"O p.ɛzM꓈&X7@7ʤHZ&W#5ѷp(I *arD~NoG-F]?#!S~ R$1X>{r5Q=KH0XьGPqWw[Ua5D7C:}R#u8Y=Z0ح'0L%/V>u $N.LR-#oeҲy,"=MK*%_$K?(lriKcԐ\BNw`cBUCm"A]`ZUe]Ϻ7m"ܨQkqi}LiJ(x#@q|50#1Eߐ*O[$@WN/7\U] r~#]ŁnJLB_mGpO>Y?ܻ&.M]L>\rO\q %xm {_܃~ߞvG[Q.H*o9jRL<4Lʳ69C3ɤrkL4eYVDf$fWU&A*MO{hF&g_/.yM ]m' \C]xj.j68Z'QD+ZNC5 pYʵ^zk^=KMT,.W-@%&^sgJ'jU~y]~TmHk,ӈ+&1.>^(@W2](H׼ZhwkƢ\u`njk2a*a~ g 5C Z ԯ%pogޢRe>ݟE+Su9!|o 0" /GcQW RMD§e-"IDR;)26q:\IGZ,^^9@r\XiY>xA\!c+ a<72@!~ə5QWV{&8Bf?' 6 ǬFv<Hjny#o׻J|x%bq \yXuop8/x,C9`]Z%liTEZ"'Sqnpc/Op2Yf 6ox>}ɼuf* g o[@o"]ZcanP"ѺKՖ~yFPB$t((Y w2Sl]1F(Xp;UspU"2vp?9~QKA Z`W/(VrLxS(pp\oɿx93sA %Wdm1X|䩇/egZhi#,엃q;f~Fg}{%*`pFDG4@t5=`~ʇ@5r|:v A!9 ]˟<* hDsu9xE!sA-ۋQ/ీ۵%@û C*w&%P%epf=#~^H8NUT?" ,̱Fmѫ Z/y?5L*Oŀnf{uz;mf@KECRgixTxXT|%C'qwk~GdQ;7Dds" &hk%yԒ!(@B9-\YV>)[U5km Hr1(w.ABQW[/W:3bD9O`fk5yI#&;D8W9ރx0T"E55>:N^G$gx(|lxTc0:E`e'ޏ4$gM9J5{\h\!] L`h:~mX+|3ꏂlbx_,ю}7b6;3OrnB!ay5ӵ1oR(u }y̕qvO:UY<( pDU_n@D=v4~ڙ6SKnDw< xmw#9DVxZ o9ZƞUv7үzlP kܑs,NUuSx%STkO<O}d2(GboTx̺Wk$/_KHh6ȃ$%e?2)ҍWz|3G9((M[ ޵[{|-q[8`\f'~wn"8uV^]DT(2sz>G+kOOȾ޼Yq(U.[.#u0]$0M@,T5+tmITT1 JMZL~?[,|zʦLۼǜ}51jʇ H#, MbTUpv븷a:}c} =vx7JMb ȵ8v*I ;x.#[g(KvI9m0ݣ8qMOqͫ[;dYÁxU?k6`kP*߸4F}KLS=M$Ǧjp$;}1d>d? e+*oT(2]q;BĸYseO- -d1~ebECoypXB"Y=n "m8\(FmŪ Y4 !H  aFyxNt+ѷ1q[+v\Gop"CCjԓ  XQed)݋|< 9Ihc RM"_I|blo)հD fA@nn_}ڜ|eZTnSFy ÄcS͐;ި')yτ$ɜaFs)* <Qc+Wdڡ"z{~j}AaU+36G\١GA F 릔D`ARIz[zc(ИpdňiXd& fZҟvWc 8 ˿F_5Vxx*[Xԫus$񂞑 dncz+6WRc$㤣TˬچBMl3Eۑ9oBbLAQmfouɍw?ijmK,D13qE=[WK=|5+q H8|Bewm4*𘳕+XAƋ0DQԸq{UVa.f"q8G 0:Ao$nFB|4][,Q ]'vr2I%ލYR|p [_,{c0ӨA =~Z[d}߸ZXіCfZQ& )A=p.@Q^72󾊱MN@D^jVE ?8OA]Q<ݺ@)Q>lCv,и-B;PBߥUr\#j;$2?oۨ ()0ȱhmo€cӰgZts}6Da6 ixl7:w4ujꗻcOש4.*OaІ?>".qTUkPU{Q taU@-hVmb[jao)\/c KU@'$:*J.h7 螎+|{GYs[=C|9+R;'uAID}j3\ck~AB ;Z-eaj2N"Aa T* lX% ]X/q!ur.WF똋ä)qŅ1cZvQSIƮo iC"KH'h Tr8 ybOtc12ա7:2)(?fœdj>jv+w!&rbmHfLXī1tHipϾn7#JV6L72^nr)E0nz.tɴ`F'Gi.l$6hl3h4g#E#.#ER-8<,[Uz'Z7LG}&.EN"'r5S"FnWqWTBF*&c_w@睕koz3*~>6Hwh@?,q8[N>bqţ @2ԷpRR -vd;zR?Z'IeXrqTަ.lû h,XޑcܬL|FB 3Ŀ,t_~ _*JQ:r9>`de/p?,.j`Ar~HBn곳[j^{l_zm6Z-)m~ FȲ[=x`=Ҍѝ!GN#]V# yM|)&I;EfeTc͊/Lg|n:eEUBªSvYPz_#ǓkU ]EQq%"Kڰrߧ |)2Map"8ŷ_G#"zr"of)KH=heް_q4-;*Sp?`B 2"6->n)[Cu~l$[( J.2(l PѸ"x`uM@չS `(͈->K!mhz GOq*q(,Zo@[u#tgPZi؊gm}:t&^E%M؆dzڹXAo9^jkky0W?^%/oxV8h!n2sz&UY5HsEE4l\$wTg3~^!0ϿkV <`F&brT,%`i2:^_)_ t,Xضd]@a?DG'.!}(rR)0/%32;I8w9i_Q!xj Μ }m(0mൔ6m:up. !dTCX ? Gƻ?Rri iJ6A{8}VP6iC2Űa`ϒ ^= {$yZrV]^9uL?cp"_Ivǔ1,ہ"hֶC2'Zv`^+ >U*3W-$ #6Xshvp c]9[Zz'\@nZnP{͔VATqt2#$fL PD)unr3dG N3-Of_vA>x*J^Wc{N !Z(b/sTC9:~k3D,a W1!0qORŷvO&wliYyDh=j8x|٬qdOyl .h=> IڣIl#)DL699 NG@KF2HU< eOMdWKA+j+|6NQ4Cן*@n3E9|~F|SuB2q]cJK09y{I@kgk9Lƒjb"YB I!I詞L^!@%L,8p~,? 6afCguRB+;tw}TBWFH'O/ޔ(Ǻ!\.(` ŻvyjҖ>F7k3/+:O%Ż R7SkwCAk%*N TI#OS<ٳ\O(3 |l j1ᴍBj8r?'c^CC҅)8$iA‰?YrK,D\BMݥrWyz)(ov0wwWqG ໧ԇFcM[_Zn_T݋ C [0>`pBlvTOaڻ~GwUND-J,~Vš.Of^Jo _tdIFrS-X~ _1(S`ySˀ4`. |BѢ;J+?GU;kxLNNͱZ_~ ϸ' ŷ b}ݗZ.3Í# R3WTLrw|QVRX5.ړ cBqehnnkݧ˭dG 2Nq6 țK2vx%߫Wm;Q]AʭW$f0HV_ uݑٳG-cTW[9Ҭ\uU3eV!^A[\h~A`$j˲<5üTqrJPň [92~ܛ.MDqFs.Ӏ> Zd*o 9(U9E)sx1F}m[!aMAG!.rth:,Ȝn.vnKt.}{Uj.yV5{2%'P5T|pmt+// ~CVK0RK/є: #byk)IJ臩*w?_\>]Xluq%JI,y,i讕]ɷ>\ޏ& RI2 CuGϣ:\8 )1Iր{ 20 3+-W^p_*YDm5U Ʈ4UUѮEt2k_='7$JSs.^-cI]צpXP0#mwtCt 8ؕa jSh"%4p-T )~ HTE9DMגQƥ(3P—,ȵxtg<b[֬R6a+v<& l?t5v"`G?6߬@|o-stuKB.`6!plYe|\ojGnbXiR֑OidGr08>/(t*x}Yalk QΞHr!Th=ʣ_ CXu+68Sb: Qi<[hK?;)[<X"7Z? .*ݯ RB(u-/TyJQrAoW@t\&-m&0\)&ROB`pE}oir.H63U2^4 zM,nF[{dE,lzlG !G*8;P5CoLԋ/XNZDFubIloJ2& 7uY=X$ gc$ 7JFM K= 1q1;1+iAӟe\48psfnYs1<s%"*էM8Nua[sPH_5d}wczD2<+Ȏ2Nن1oь͙܁J*9As /,EN",V͟)ۦaM*P)1̀Kk; E賀oFxjs7@O LsNnM, 㵏ox\|S{0վc}Si #ā1$ܴoV|r$<î;Ta$V3Ja0՛N^2-9:3@ir. 'N *UJByڍև/o5٬#@?\eC׹do~QX41Oț/tdkο8:Em[r|D*hb+Bliןs5ɓUxK1qWndӢ.bȻF\oj|I[2v0mD(u9١@=5`Gg&^sĂI/hC/h>ר@@Q[o cc\ZdC-2u(dgzdN#&?P}Z wV4")g?B]7TvÌAasAL^En5D; Ƴ7o6.3[NgWR3dR5x5V,j<`f0B"Wg @LA(Htđ{{⧿([J+Vlr7g=XF?قl|^"A&zP4bԣk qeA^o/.լ¼:6R6m)֞ƑP[%}.o *+j>M?M q)~\FG T!th4< QV|`W.RfiD֗(AAJd,]ͿDYQ_nQ$Rfn].:NX'_\!◶;z'M*K#dJ=[&Pl5yP9Be2).UGYu_ZDJ+eOA,(,׸@}jX'VzG~  u: Ρ:"")+V)מ-Ye|6XwCݒ=|xQV/qU!sxpM>L` <§O0Y#ʯdHbR6\E>ߪ-$Ε>Ğ OOV[ʁ6_ƒ{S7Xo]Ǣvzwl{ĹUyi0LV ^ zLsFlpۨLttMd̪BUT-*@ũ?|`\|1W,Ё;Rm-pxl}/b0Kџ?r@߆]9nLNvl&Z?P$By{ 'dS^rWaҗ-W{m fO&! 8ܒ2ϱɲj_64~%{b8Qh}$GY,t%co"e·tn6)ՎnO^{e r g #gHq7^a[:xz'Ur+OA6&mk (Dt(Q谫xǜ@v'uǓooJ "/۞~Y2iˇL\wNZH̒ޯ>pk-9¸gpӱ\YHh-r ꤱő$I<:ax<1ЫWu:*q{'<'RJK]uz}OTATooh!y_dF"Uihb=En|rX;i@hRv*lY&q¨%rY7I6d.gD3duBzw$ DS|o2Z&(zv%[J-ӡ w?j|cc5mmeAdmMy+O{M%㤷ybg bم3Ix"UTF.M .RI _|.TCk]p8@u(!ӏ>#HqFz/0kr&כN֞\ zqfTNS&1U1JG+>I}͵J}}bG-q&Y*-hM`\hPA%}#:1\H]ꌸN?hz֦TH%M=X1?O0}/ H;1{d5{޳|hH@_Mrpk-D'"bwK@ё,AL:a΂ mI5d؊1PJZbezzl8oizuG7I9rb[Dh] ?hT-عӈ+M IEf0X(PL6<\yţxX˸'VLP <䂳=~yixk2dn1nI\#<:] yM\E)-f ńpqR};p'V\qhYR.zڕ5 MՔbbg&㷯+*lD=|2HCEB])z \cem*6v\18H8ŢzL6# zZ&P=b6IzN]5-L.yLrջghk9b`.j3J l;sUH\ZfECV.шJC.BO-@7Ie]0_]w]Jc,%[*p24!_ז +bבn0N9 *?w& @.Iޏ 0x괬V6U4yO/n}軮czMU\I"XIm9Y%VCC)\=w_nzC\Bz@4?=ϬE/ӆ|ڎc@/ŝ-kU 6Zi362X;kY饙>="$ '}-[+`?^i˨6xҮM]6/t|X˯G=&䜅ia#kǬv5 eR*y(R :!E> ig^%OKJ/^ 1,IpQS1vjj.qkDCm`rI r'2?_\F;";=*j~Zȿ'ɢa!|6q,_nBԧ-Ah`B,7,\uEj8&\ NJV 48UN+Â԰Mխ(_0lk' 3]gevP +2DTvy<)pZ%x0玀 Vr04 &%, $*pz-Ni pbN*BA5 RJEO5!p1s`ysLsI;q[ͧ)$yO} #B2G -:= Co BZF }щbG6ɪ@t걒;|}2ՑG`uQL4Zoբ |9}pVKn5HCjSL~kN+|J"Usx_ G"K#{2Uݒ};MؓJ\čcM>ˊɡKw2rPsy 8jw-&Ѽn4Y۩̵09Tӈ O?u5n0=ܿ92 wM J ɡPjOy KU[A:}pK S]\{0\hʸxDt5{q͕D;[ب9l1N֛'Lb+`o߫)Ep Yܵzx`*nq?PraF^0d}*Pyt=XfZgȶwl3ݗg Ḧ28˿ hWX  s&t}ml1_ 4X#>( CaEua;IK(@B_Kp@Yo딈"b =@CkiAzlf:bcĮO<\ I2Nva2ƎnW+q="R~̛tQ#JL(/`5q7gYީ .p=?5{iR?/ m̌ =”t ,ntڤ nx8 sy^k?N+;,|%#V+LtU]AU.,EY1¥*Z WrR\tgbS'C|L',Eyu8h1J vX[ts54n7}JI"g=}ҷ{IC <o-6, $Aq%wM[qN뗞~o3 h!&3 EڶI'6덫t>z6(#Ӻ54FTIߗ@Q[u| >NUοC^;rupĸ}(|jt+O@`}~BL%z*hg7!_-!%X%kF#s#XGl?e\9cœZ9Iym'r ϡnkQ8ZMB# c3/}Y*gҞ¦edOr=KަFjCe faZ8]!bI7Yb![H_GmBՉ/.⪧ԟ 8+ҌsN"Nf~\~*ԕm;n(虴';戔:-}pd:\7{I= 5mNpf_egҥB͌W!?PꆍR}MƵogm9;]"^%zhMݜRd#.|/DXdK-!hn=}TU̔<,z 4#<s(떣Kp7pg)s:߁<9zXa8Ż$RVW ;P9]~lJTsf? J66`n"wT0ʸӮ $LMlO lI@͢G\b0:l#2% p#vuA{ z*wEnя UL!vB؞OE !+7M{FfnJ$-:hRq3ɍxUb 1Jl˼^b,÷hO=$VxmMXG> l AD`=FPl֭< J=;]KD%IuYM %{`M[xp E\}Ub?w0ܚ !Kd՛z>\v%gL_"~N7)Ox [`$%yTS S腣է}ɰE?(=m~e>%pZ@D:! /T 3vezdCqf\%E7{KWE]@lD޹VqB[՛ Scr?˖)}|6ȩnxw~'JSWW)K%:b`m~G?VYS|@獌0k`9}я?:Z_mKȾg'آf~M І1ѝ\s3 ez2 %-kaULbqҐQT; A,f5n,+|Vɐ侢#G{pw*- z4,g. yGq(F4/9xczؒ艛skfU>$$.ct8(%+;7`t|7EU(sZE 4G!.Oi]ԩ+ny$@u9+^F3BӇOFz.:}%U՛R`VTN=(fⰃ%OD@*qk_nEIzC0~nghğ˛bT^g#3K/ )QlB)%'< 4k+~\ed5}rZz':Z ZqL1uXD${h(.eӴŸu%plmF(t筽IשLSOKP(5J//5^̈́*V*S*y ܂ޯ[Gdl ]$2\2NoYGtsZt*:4؅2h3[L\=pljYK(V[ym=5/-l(j eT3le}Yvɰ8;Ɣ.K>e=^`)n_@||ϒ}o |eO5*=n76ٺ.޴vxo6Ѫ)DlXaJiJ[HsȦ-5tݶvN˂=ϠC==YTUf8h^!RDD JAC3ݓQ+džҩ29P%Woɶⱷ_Ou yV[ixM4yVn;˞UR,Ԝ ,!:@vn({UEƊQ$Bm|*n5,߼. Z&bv@Tu >% 9#'[f_{_@5˩Tw0d['ϩa5:xV+~D.Do-nZD-cӪWB xB>HTl$pdOb[gSeT^ $Jp^qER5>Smq 'A*0ha:r(^? u*]8u}=rv ^^W!p5@/Rխ&9 o0oD˂?=0^M7:z(Kh}󘊗8giH.;H\I^55ρN2_vv>+ Hj_/D @NK*J db׫HQ@KԀ2;^ Uגt5֙NC.}"W?*KΥjf8ȁhq ƕmޢ]- ^w`ˌcda7OHTm/}pSA<}!TZDJۖaٴךb!4k4Mq ]jYxms)v~$N1*0@mW2 [ LR:o Cg$is 0lΓWaKB]WͳsoE5U(`}2&3^lxP(uc#{Xf7FVRWAh(f鵗gʮ24N,s7(K^[qMԹ 2?tYkw*Un3O8+C*xHFs@J7L'")N;':* O.3+]`~ 6 F44 o."z E'kUX7 )=4(0t COc*itEP;&OV"W+IjשWγuan|?:2ְDK!='z޶!j)d*%;e/qG'|a kj>']Gz-;9CQF^v Mq51c[RR 0xq*[՛s9ݓ·:vs쩴jCE-LѨUљVRMZfgfbKH$&nzd$?h!b9^|$?A 3Eѓd-,W@ 7E0Ng^ dxo$[lgL_oRF"ԸHB*$SweO"*TҔGi16OCaQFș7Bl9XZY g<~pˀ)Z3=IXiNWqp~ 0wpQ**B޼~썙c7;Q}ь4]⧍is0 =Q\5Klf Q8(2v~0נv@pY]/f8.zaԔĎj[r3Y=jp[e #~%KEKk }_P0DQLyvXG!}<uٿcqbJ2Ϳy#H2qϘ(Jukơt.!z̎W7d-d0UcHt݊;7K]7%RZ˸q7%i?X +Foh5\Q:jxR}wԉ->z?8,sY@ zt "c)ЛSv8Zv,aȵr77M>`LwywY#{r8`gh*9A\*Sg` '7%$B5'[dSzMQ"7P5QF l[G0rvH^phx {X!l"IOSWDn{t_ iw]/1@M{ ^g>KIK.Hb9e#c (ߛa:(6f lI Up8*gЯ)>,-gL}_UPc]]-@RtnX~o}'*2^ lՕp| 1=ot.r$t+*zbPV󊍟}4[u(GRReC/~7{,N MFJ2̌t q_,U kI~mAl{|˅j"+v>0;! #5 vy+ -QLfkFីpيxsKDGOwї&5Ύ'ssx'<ȚCX}IwV.E]1p\}RT1ZR T^i$р7oŝNX=W*= y;2WS=Jir ` u32הa`L_2E i<D:U0j xR:dBbG'd2LNղkp6<|#[pBI{,:`^#TߤDumcjS6Kַ]Nq/_;ߏU7ܚg u4y/=( (Q#lOI6QaϢ_ʶ*P5kyK5A"r.4;`[Y Vd]m\Nf\iRO9[9k6v~ G&>l2R=BFʟ!7˖Ur%Cމb2JLʼnXF k8_xg}Y*k5rpO_3BC(.U'jz?8>D6=<{SYk@Y VY^0G&++ ~1QpAmciEc}#AYM39ĖO*2:t 9H9!-$k}MS0+Yy~8:G;!)r$25 t:"?]WPj31)l.kD(X- BYI3Mb.36rX:)^1FOg\1"GN"#$GyO[Z?Ka* , c&bAwH xա-HԎQ< mF>{!S!&-卬O--(lCf;{59ef?z+|?h,.V"dZ(9fl@gӀ{0CWCZP{: +3R!1v9abxEy>gvлT$!2O^m4A!Ozm18ov[ҿe+O,O^^ygJf[Fz݋gbq:{k$/F`[OtK̗:saڸyLyq/[;NkaXvAxbq޳ýz~-Fs?~L`2DN/M+r߯H4Nv2`/̐԰&{~$A*ƒcMh⿡̳K?ႉ ZzIiFg\\I`- EVQu#//%_{/V?A@7t%hX?BЍ3>VxZ/di YlP= :pܻ 8{2ʜ8o*zLWT/ hgS 黁ULo$5 YqHUr6[eCMؐדEhyk}旝mir]P[so;Q*UTq.)zaCj;jE11+a Q5%O RE/}ãŠ(E(yUxCW]~1ܗ*Ιĺ`,S> +-9$7*j}Ӥa_o) wxL;?mj6wX 6TߙԕT@AZ@u+gPX"47ϊQL5\nޕ5IXOo7pmrFa2Z:X*(|6^*/-oC I#[Ɩ ˻.gEsHz҄S )ϒkvdMZ3AoSu@D> A\j:o/C usAZ@`[Lvݕ(H??r5eѡuEg3ކ 0s]s2Ù31) ؜#?g"ھ*ڎ|*bK}YR;>4O g zyl~4 qWdJAHbmTspi'-ѦM}EmgN?Ra }&yڣ7,(,^8Qz[0`[.F "R巎0%A84c=JYi6SjcJoSRpG?{ mly6?/w+11;kB~ð4Wk~Л_∫I5r@,kӑɢ >K9Mh2sza_uwd lIbس ^$ic˗Qbw֨.R>w~O%R\M6qc52є ^Fl/ش Z(pDB_7}QMnsg`(40?̢r[oD<ÅVԲ P`XP'T.o o?V,M̉e2埤Zrv:s7尫Ys`Yݑ6m?pM? `0SEiU.H:4Vbc)og, 6]&v;dz_zCI#"?|Yr_-ނLEWvz^_hm6o 8DLǐtӊʙ%O/CScUA7HW[b7 ѫQzAݬLWeemmI\l+F<g&9"?d~`[E&3z K ̐$␤ v^d.~:g:A7 7*F|ÿ!WP4b/@?7"HMhZ~c ٣U^ä:}_}J vAYrwZDVTw/%jgEBs/4>C(7"1~g{>QH ML}RHw;kQmN[ WPPqQS}8ȭA x^+`!~F/mZ:3> ܝkE$̤G,ynBRE+D}&[hhĺ~&V +)gK.䁕L V _RU|@zc,6#gsIkv(rG!9!h^[ j1BLjqRH֝p.쥃z'zK:w1FXh09Gw+7e/9%XhC^ݸįL~c~錭>*0$$n] ~nj1)+jZ@KZ^BhT~$L]9XM;eAu`cgew&Љa[oojĂۊ %95V nYm؅R\6 (VH8&Խ (F!^s`XT;\Rp[)W]oӮPBe:d |ˁVȖ񒓏2ћ/dpצkߏH37D p]Op"ia^ >˘.qwfKNxhB"9Y É=T5MI/rd{Y4dD.K.Bbe/=~ B{\(:1?{]igeRB";m612$ U_:2Ng_۩ g5a<9 !sA+~3\,`kʘ?tP7O$we%ܵdFܖc8qihvAY~ӏ@*ܦ\e3Wuߗ0#Jf~3xÄʶK ?ju9G`y鏵E?Mck$W(xN$jsQ3/MAQYlμ+KM٪z3>[56 /}̴ޯp׏ٷ zCc3i5*PRN0ȉ "l%ҏ\|ܭ%Ʃoۡ\h _I eD@՜cwr!wpK(πu䗗q?^Cj҇ 4?2Q. <P'9 avR\0I4r9ȳjg"2$If 39--?T`c2?xzcQCK}CC>$ػBPJFe 9>3B\}z=z-ai:1N,/ ?*R9IKPJ]Ac 5BAɲ9[JF.ld &f/ Em]s{o/˓6a/ !7m)h]r?啅 |atQ2ڡbn^ [܄4jy2,D*"5 !ht!lGM FIaHÃ^^ 0[Whoj$)ۋ(.)Љrtz=FjQD)X׹aC<3>McYS>oݩ#[2jzU.%L鰔u7GoZ_U#5>r 2T),# 'R# ܼ[Sf0NLc-_*/A`~V ;U}SS :&OJ:W6o5ҾU#wPTs'>n hBUg<V#D6,נAbP dW^v,<7W&1Ohkߝ]5:'eDȫP,O'O1<} [W1Q9g `kb6˲5։ae@, Eĝ| iKMݸxV셨'?ո?ʾΝSGx+gHL٥ҳ&OVi՝N?lzJK@(iUǞ+ڄ! 31j@a*4\X2iQw?O3?zҎ?P5i74U !6hΐ'Iϥ@~xWO XC"%|b i>3t$?je9j;0ޝ92m"0Iؔe &V^Yxl\a"ԡs%>_2ϟ5#icCge #:ǰ]GcX"g.2ҥ(bЭch)P4 b}Y$ x-2&g}po>3ejҼ(N140zWW+TfY Ph1&Ck:o9CĪ4-m`1E&(\&f›PhR_"tEP:bzyzn忛ELg=mblZk!_F4!VU>DdbeاMd2sN'ڲC>s_('4#O!̟-,Q[QO=Z3, ڏ_ MSꍉp%*S!8;5]SOL>H$И3iq1?(t֑Xq 9HDλyKGA͑D]ra7_5c6Xgg e+$jIw`O1U*#(K"c`b#^UVYƜ69ԾPf&Q/a.+>WL3<K.FcdC+\!{4NαbC9.f n_eb'Xuzte/ͷCu,"LIcG'j\e I]LRa0}b077GPzTrvվsh]Zm5N+i4 .%WUy,/jl/ʽ9ddPPli&JyyOID>}ΊCʌalk 酎H2 g6+dB*󽵆yHUQ$)roks(̛/F+d'kN *ɪ3Sr>P K?^OjORYBb=aRuS0':5n’(Znȼ;>"yYZI6P N"]^'V9^:7'DlˮrdXe y {8VSjyfAx4[uMDݍHJ&RȻOΈʪVA#7_ItW!LicaZ\SB\oEts^1!+ ^Z/ϵt6VE MUaOOc;Dz^uNĘy\MrƜSq3Y-{in8qCY vǿR;anAQvL.1ƣDo4:_v36ʪ"ir\-$0.hTI/>6'e<ϭ&=.͊ȻJbN`x7H#{Yrʝ#H~a py7&6|ܨlc\Bg+rKP:>6^b5*%Z/&{m "4jwL҃Wn% GcHS8Ͱs-~ Ii^;˒ϵX7kʍ{>zj#.ӯ)f-n-e$Ox^'iRiׄ9%ӂ ~ "$S3W<  %FBݽ7sL6wT~f\Dr-QCePדPkwMZir$*" H V(~ژZ-qmjߵX (u^ץi|?֊ zi675{UJxWqe$W+TfjX U g^ilv˓M\dAc?N5Ukm FSUE{Sz+ /[iA"]"- jcYq_S6S֝ss7r99df8t4lh'02s1CʬvӇa<LÛ,!4 @} 5 ɑ"Mq*Ooe L"]ֵLN| pgHPvOV+N(Gd/hOSRB.˘,EK#g5ãfOW#2ɓ: uM-,FWVOHrV=@}L_&h쁄 ҿ̤lQWjZ{՘glJToΠ05mbILG425 au^z* _1& r 6!|^Kƪx$z[yzEh;MC*m^r<~cwfI}y}/9:؍E,bcV_&z\MM>hr@1b;Ie[ՠJ rA.cːۤ8 cUD0RjUx$8<˔#ow FpB'2ROTGVQ! D+MfokUF̿asu:@4{*C)v{6f5QO)OZut[>=1lԧU`[2+5n `Ksm gM$^eT_!]r5A$YD'9 rI'jqH~A/v`G53SnPC}?hZtH >ΪEe!G" dUFg߀MoӐ+Wn1s - Ž?=%yF1 1j !0[q\+ ,ˊI^):dP𗤎"㟥F߂P5`#xu=QJ~W]c;z] 4<-'#vxS*570HڳO3SF |>?yj^LµIt[9>9sN8HQ9u#XH=tTQ$ƶܟj/1RQU_Gȯ&+Œ .yRum2ހ,떠>e$ֳ_V߱WL2%c(dKH=N/C3X7Go7_ )Gy i.K6W£XO7VR(^dD txSw9elQ-NcV HZcW|_رmHa,"'sh#,O}@ޢw n 2GeBR!Ε٩Ehn-K6џ:$ב:;=TXүCT F O{jᗊgy骐6>/ŸOuCŸQqsphsIEvs,-T,+~M.79-k-ƶWCהhzn1cY<=*rqqQ I_RN aj}]f*c,Aָ(ܮqC8<0;on xMj B~+^mn\Ğ{BX+'BG(aeۃw(l;gܲ!.>6kyfk40@&RF|ADuk_*% Wz7Q"wu̚AR75"iU5$G`Q 'R6̪Zn 8誡V^@w< ( M1T7j 3GHwq@D q#MԒDֺku{Icb5䁾S~H# 4_*`sai[=>.L> )`#UQ1k5鯑䇮qeڿ%/ 4f l#V%P -^szehdmhuVO3Mza[pٳ,>]sw*Ph/Kz`5mPѠҦnI逕Z3PyE.l2g}[GS,@e:=?Ռ ]!Bg0>4lr>7PR5z}?*R?prJ!a[Aԓyhx5G^%V'n z=JÙc(Pg6E$g'%R_qW<[.قMqϘ 1:80z*۲A&Knȵlw;K^T`_=D'5T( /hs$X>,XmqxܼqMD;HU@qhM0 R Ѓ O_ F'6LC:+K*+YA*ڟN#dpwyΦpZ}}s(TeWbFynZlYyֻO#-_:3Z Pj ޗZ C1z]ƠpvJ:H;jXVI҂0[WRi5 Z$kIY QKCk@*vke95F$<&)" d 88=fI_uSW_";Ƶlss5KE!Hn߈*̙Bz3bLcÐ(bf#<5+NQgsfp@A8W5:? vrDpsvG"mu:['(#Zk] KqkBb^&gMn 9<TUIWnSP7iVxxЭmYsNhdG4.AJ7oq鄽4Ro#1X^:Q oФYr2aSShnۍ][R(!T)a_RFx_B, >:T8$nՀ ɺ7ל NC^uL^J}AT 69.ʆ>*=#9GY1"b4Ψ٦f. #'=<@jqA?,<_qƋSXZ1rp KkeT^6_w]P]'VvzK!7l4Ϧa  #6JiDbHS?}E{xg]HGs9 Mʓ@g+NXU:.̐xM9Yyӧ@;O' WOcѾI`N1Wǫm]v:gv5ђk>|-цSԢBUg+$_7bLiBbsm pXޤ<t!nks\SaK0N Y8EQK vǷ(idr_GoN|O^TC]f?a~KC@Tա N2Ϡ.R*)IP*苛bБus%;S6jbf|d UEh#ޢܛ1  >rzWM:0UT%9Apk IQэE=B,>ޚ#v i]FRu?we9~-ڬj_(c Hi$hsiQT:WƇ-VHS%]]LƦ5C!9L<;:_Ra' H4vwM{t wn#L|V<$]Grrp?d;^u`ld_pcM3B9R3Ӡ hAglj1Y rW̷st)EMD t(1F'ax#8O,hSU7Nl\Y^o{:m>Xbv!B=?n-[w's;|i쳉/7Ii沓?6s9VC\N_Е)|ϻ2Փ~d8|93!a)zkMƶ|߷{.%)zb, "?´=i֍ s+:i'^΁6ͺf2E)j u{ iM#pEo2&{1fchF[z=Kt@85#:c-~T M?D(x{=88Ni=">vvcu-Ӈ@y*+0/FچTΏ]u|}Z}UxK bY,`4ב٠` !!$*qb'ϮSw51CU11};n `.Ilޘ%I!2M/~ؑ ?䊊;>(0:v²Y`:yj@JU';!_ +*e%@"W%8˭dF[+e6 *%(}]C^=. өoBN{f% 6qb(?h#MH?;@p_b,J|GxKiߘCt.k R"~+b*34f1 uKyU ;$BmB93˝I3P+[wo#du,~D!~ap:ϱ4D8T[2]956<^g蝡pO9AZ჎m`561&#QeI]rnX]KĊ'EGf Iڞ F1d}C)8~RZY1Xu ChNhG"7Aw#&.xZ&1?Q X[]{md"i@!l<" #7V4u]<}0\+c*cj!q/ޏ\VN"wA6_בXЊW6N\V >!QwDAy~`dmQ6o؂Ħm+DH"ظatB~  xg rvĩ g@ 1S:\|]'B]Eɠc8L{¸kgsOj֧_ :-&jψ3Pi]lPn{D6xTPhKDQ-|T^ʘLlxm̜Ȩnt&N%FFP^LH%UDu=u򃄑K6J> d$vcم3QO60B{$;2} 4Z4`EWҺHOum_Lj9Y#u/' uʵW jƝ_uPߔGFi-kϝzE7`g^?nQ5řRK0*M j2l6K><:OU '"J+.x˽¾dG,7M=?YFr:*I,a4IHoCK8K0QBrj'hY|:+L?n՚x} <ڕΗY0Y*s%+D޷.+CZO8^Bd{A|i>{n~}9C& G*p@;*07*j B>4ԯ=HWHD"^߸'q8,z1 w3(VC/<=ՑNf$tIFK)W6hFC;e1naw7Hy~mUlj%n82JޢDA"VU=7z\:;@ܵ)@ud|}zţn M}vQ3oeB%Mx5vSZ4ggPD/dpF@ >4syixU%I؆F:1ժDS҄L7oNL܎ܻYQ>Qoa? _u}%{`nN!i>5By~M%w\d/9nвܟ $L0WH³ j6,ƪ9}fjnW n XJdbU@.L w Y|kI6u#D'&5XZ FZe}32 $A;:lh' r%'Qe-C1tcZ_@T=/QW4Ƹ}C#"!2YV" \37ЮfnqsFJ"e5*4fBq{JʍC`~dF!H ;뽦G/Rg>k֌;bqiNyKl9!.Ecoې2-%O]>Yr m}sZRdXEϖ?2o l6h?~7!qMW/l TAUEI_g]IKz? d;A~I7mg&?^> 8A{eFZ%?w8D$z Lʶvn<ڼ֍"ioF/11z2W;Ӗ\hJܲ BlёgB+^wsT(*?~k^+6l<5[@B77+ J',z7ƟܻdtXsiQ. "Hms9Fq_̏~y*,g (A+ cpRED#);`1&M9#`wPy¾yQ+~5ovH*PgSsrĐ9-DDI]AAPSݵew }5'$Ѽ 3; M/vnX( pprfI(?Q9U<6[*#eCnw0 =.8iU$ncg]+]?^ϴ5"d;imk^x|,P?Xm|0$p9w:,gŵm4˘v[{ӺP;r{<$) /PpmI]?ukJjzB$RI'.IџQA/2x[x6:v/hU.Ay?1eQHLe%S\#A?-gYADf/p!_4ncpqu{HFtNj@{hGB% bT&1Q XpG`YEkV o Gs1E?.a;"g3޳R8h;=皯"Ormk{Hg]([r ~M,|WWO\תH6UA\>]7g8a_ֶP=5o@nb?y^ZXGyE?mOP,K:<5߲[zP0۬(m .ʅdD?i DN54`i_2{]v1nq@>?xaQ_1M4lE#gH) J&Ѐ"UWZx1bd|5Yۖ|H+eGM!9 5wh~|MQm 97q7cAA`R])Dp2a`ۤkkM޲CxQ[I!#SϹtqm8`"s"p8nu|ѻ,XKn;2ʍCP6 d u 3zkR#2{&Hs(MɎt%Q3̬k/Aܢ:V;Eu|l>vd@}sOneQ t,AH s}N CҷH~4J꽃Gj6HRcYCZ z+ݤ6K,#Ȉz|:G&$`Ԍj%cZc)B;X#LF6AԦCo3z z+/E{e6vmu)%Hg%9]ߟ>x͕YN 'cPb{THe=#ozѸ` Ω|X?M۾#MW!N@nQwrg] -mywp^Mo']]I,{H &H}ꛧ! O: p:CJBTt=(,zƸE8ٖpd&g Op}70P<Z,@zoPSsȨ) 4=WfSpgF&\VN_zK#87Ndt c&Kif,9&KyPʅ|` tiTrga0 &o-<&㤵Y'JliCwc <}xQ3vQ-5Qxߡ& [5{MB\ؠYg)U217yh穖oHGn'ѩH/Hs=)]Ӧ܇ wի%!sxciδaJH"BG6f-@!.=I+uǻʽ=b0KmK0Ǧy{#H(sƯEw+O:P4? [r -o2#P>ҫ0nQ]!$SN&dX)ikk6oGmddC zBcr@󘳒.eRw$<hHgCX }'f8xQ-Jwu50CB\oP= coRP(GpRGEKdOC=AۏT8j`{/Rs7!QNEp i1BS8 ~w󆲶O|5iXyB̼FdzQy7T8KNU#4?oɃj΂R#jFHɀ, Dvr(7ߗY۸hQs^%W\|ZJ{Ql3 `qfODfX?ZϮw#Hooev\kߏBV wѝbuRZHY-2 ㇨w %KENT9ՂگpK`NyvSތ]'m5l{(Q їu;(' #ZpfgK*V* >FiY|ᤇ%vn`$T Dl[D]ʒ0E,#I鎽| -*m2@q`)r }Ord$P] !}x@rZ|Ӌe@rι5nܒYnG#,Z/l78pf;Qg*gEgf\UZg} \XUX:LTN7#ER ^ge f\Ta)^xuuxDO nMd]U;n*r\Et9eS .xi)g B\zgEN6(WyIu5/\kZc8[09>O\aq_} 7k\dКtI}xক|GĩT6]{G ZrKsWF9L_ }yXȏ 47ڱYk✅֊s=m݋N4{끯-MWCZ ! vG qZXQNq˜3DS|mrRN׋/b|=?j{TDN <LsXKZ)qၫ3vm#-lXxWB:EY=a NEDGVf3V9^#{bcL?ǭ!蕪.ygSWTEGv~R|oWy kxn+ƪz_5(=D7%Up +Q+3RK$_cKU~͒vi|x&!Wk2E d^>΢r{sOZ$ꒂjD|U$ܟP ԉ6Ur3= *?BNrv  ),_g1HA+Y{ƙVۙbǛgkfe.``N8$+B ෠ m$b;5 ')&iTFCk ESr쇠`@-2a o͞WvMdC\?\9Ʉdk+?C1qmժX(7Mv׭,ȧSm0:m!PT6ÙH<g5Rmy4Xyd.YG 8#I7.\#)*};Q.y`MóF[~|K_-Oj% ;sʂ|C:J4,#~#~(*;|P1Hc\9sup,uKDP"[bQ<@͞IpǠWɽp= S^pM 'F辱]%ŷ `OMONgUwM_{G?%'/^9nZ`Z;XxA{|kDZ,;yH6<版@He89.D=ԡmkgQ&YeD~ا/;;msCPbq%ٯT򔥸yAx{G>2=k⛕pM6嶞ü5DyVT3%A|OT-#)7W łNigDŽRs%-8Qk6Z9@5nN2510I}Z&ir\&.bRַZ8t;(e vHE#,.sG| "xC78N*Ew`,⼟ ߆T/`%rp R}E&$8^%uN|BMW Ӛvc3ZfrۼgȢ!ぎ8$p@VfH߉llF;@\[!A ş؉Ƀ+pp&=<1d9r/e'Ԯ!jQ+x.,lxtKb=?9Wf0Y8!Zv^8P#})PrWd@'3 \ 3Mz!L W 3Q'0Tenܐ E`o[ZBe4y=`O$qq4U(X{4p;iMP-x v߹=}iجw>2T[ di#{Ab–JyBK~t6 $>>&vAh#fǔ;Sn*p;7_9KwQ3a݄FvD⏪lߢ7VARjd"Eq^= u-RIZP`M "41@$+Hv!;czkIf+^Nt~m4Č{/vFw!ROhU /?m.9e{kH(r~ap {!.0鶪6^~ uMNUc#} 8@oXX DyUH)8{( :}s!.;Z8q͓]n|k R.X{rei J ec酛I8CvD1/'Rv]Sa͛m ^݂"T(>;hl3I0@{]gQrB.;FFzbCJ}9!QIqRF6:ftבňrb~lJoTA?WZX*=⇉GP`W ;b$*ʕ%|,ч@F'ۗl) uD<ů+)|_Ui&[ soC%h w 42fG0%*JIǍ"ǭ|ʰ'$NO8~-Gx`%*0P؄ErM|,, 9U0VՈa !qL4^*U%-T[;>&oG}o0,w + 8|] Wm Zz*`TLe7?i\ECڷsfIFk/lRϩ1kT֩$u$Yd2ġ lM=r(`3ʏ},my'SB>|RUq X9[و{J훫֤3I_I!؞_DKave`y] T@%>s\%wdF*l =zZ&xD= ^GX=FL{(ǒHW@Ht#i43ZK}z9S(itg.45 T$['IiUs!jN,MaJq l)c|&u^j7f`ځַu^3٠[|?2 YuJ%Qo ƴo6nԬûa>9V튂 Նz#y\gY}*=QC*:$C Ҝa5aWRS=p3f[GڹTզK$4gPa]'u)ը ?wdu).A%$Ud#c+z!f25Ga{,sȧU$aPE}iQkwg3K}ΰ NB< ylv>瞣R=_7-UY_'`^ \d P=5>$7><"RRng~v :VǼ:KOZ79sǯ$s;BWR A;%8h@ޭy Te. g܍1jς 32Hpa~L'"}'-'vj$` [iKY'Z5R*& } ϙ%[y*8Rԍr,,4s]/XIu&}1nj_0^Ҕ[.tywkdV Ijܢf7\3ۇ-^ PW`R2:^Db./5غ͉I>N]R{~7`NPnKY#$}f/2,jBPkx!*Ϭz83U _ oAiב մ>Q5|%?hȇ?0 LPjXr=Zx|je4+s={} ۢF8n쎮ڗX@uQKD7s3˪mIMv@  p5c؝WNQWf4Cg}F4͌]ӣ%jM-It3?ԥj61ۛ Ybh Mr)}B`0N՝2b/o:Lf`hZ>}Y,B4Y&{A*Au o-\d(cCc+tV ceĒ8`y,MU< [.V;NVtٷP:#Qs(iA is]3'6|q9gPI5zfo&O5,aϪb H d"Ljjlw[^$u@Y/'Ar^$bhAƒ$?Od y\F=p%K ;RVF2?fb>u1{ULo Yn@^)A|B_>*uMhR#ܭvBnX0ad^WGbgiH*zhO80\ 6h@!fbkö9/X*ve$5H!@zV8lQ"WǷ@Kp|>`$2IƅSEF*z6R)˥-]$'5Uؘ!ce:3UKԩuXǂ0FjgfKރ'E(5QȘ#urYq7\-"$N:٠xpѿ䤏 ȃjV%iI*bK]/(ÝI !>4+q@wqfEП[o^JOUA_v^h5V,o#^f*Eۄ; 7V9{<">Ae.\FikZěS'7: 7&abHajrA踵2 8Af3>Lf1At e1GoЏ&o38D}ʢyM,!^+2b̩RUO 0vS~v0L.5hxfv3l?(ܴUj=q] 2O |RHN!j(HF Фͣ.ŭW:y >AA/\ܠ{@g\,y ۀ՜mQ\usknV"W]F!F!˯.&ť+3VSͻo4a g|;,ьZHw`Jdl3[~`Od'?E꨾V?+ȡ;"Ѝ )b`o6տՌX뮳NPf.bB w޳*OP RCֲA3IAӊQas>/l))]=r"Pz;a!" $͍8:EAhSF rT|{g~~2OUI&|ےE$kO8b ԨHD>[\C<&y- zw_ oj)SYե~OdzqgM[h.׭";B-B뭕DyXd>Aia{rݛrSZ:΋uۨVn?[6Xh˾f 2w0^Za[N"$]O˫3cw;[IiM镴]c7GDl|Gbp4"0 jx/mr႓X M?Q5 MC$Q nM\5L?S5V6שQ3"cNKz8GQtt9Kǖ.GPb&R@.y@.l=/!ce+f b6wi@ZD#/Y5`{Sk$,Gs[ v'6T&(L~^*+Y~̈T8sĢ>2K/qBm~!c_(">D0j[kK+ @WQj ?0wsp޿L3LE`sh@(/#8´ɊO1dt82,T%hrA5*>mjl=pݢ@o Bap]ZAG:_*Hܐ4F1u,&NemUvɘ_  xd[DOyݫ+b-9?#,N!M.1T>̱JNa [Al~UDy_0YS֯ \r?[%]|nPq>pR W2ps𢓟de(tQtE}?[di w b Q&M^tcN[Ôn#+8tV?Py۷PLx{ `7n5ւ0l,R "aiz{Hv޻setX'lId &ƷPfͷ13Nwv`t'/CZOeרV{er H! 4yV׏%YowBG5!nKsTEh8~(w3"-b@yԬGf Jox9/sWަR8{$|+MԞM*%5_#28›֐\B\U;Xv#H"0ά|tR /_Ev(dl9eW} O57IpÝp!T,#;ѦM\72w'^_dqS-봯]$'h굖6C@Bx]׬GIM6 )*ͦV*6q %)̏r7Yǖ  6җ́sx@ FXh?fIfH;Y)Yhq7~ҿS _u,mej&w̓0%Oj-d 48(`xTy(ŢlkZ|m&&tHL˯¯9F`3VS?70gsK]s0gK#g3bib|K.Udws[?>'T2ͬHی<^dI#BZb%fjs̸Η80 &ζǮNw${2ͽƕdSGkq): )2,F횄8zETuYYՈpa{NԘϩ ΄s8 T s Tͣ`G/t*lH֫Ѵ=OR A.c{{KfUY%c+YٮJoֲUs$S=56RO.!Y_`4VF|R.Eo| ȭWU 1na0ŏLLx|tzWaQĜH3 EGgUeJU#9Z*TE25%s@ΑTvܯhiҺL.tNg K;SlKquoD<-w8}pgfIu7QMзT4VC~;Ԏq1_h]{N-ʔF]LyDd5f6&}ԉ|]ɤbk`lMB1r_NB:Od1SwmeKv} /=\grTds*p]赨F#Yn6p.?[ YX vy0Izz'j)N Y^.39=ZIC,\axag_k@Ұ'=xT\L-L=ReЫ*;m(pS3cÁX=zn>mRSJoY @t/ eXL0Ry?K[)PactzMIRNJ._ӹA+DQ ~:#&4 .i>26a{w"QT+xNWzX Kb(Y*Z NE}Β'"pe0B%=1FXȄU{L) nOwU T;] m) ^84a;۬ht!)_F$F_T2n˗~_нc];oƆple1i mOghPN2xeiOtx$ CYm۶Rb֘y7E!OɮKJ@]Q+~0w2tȁLHg !7- ̬=QKQ,hGkĿEF-ZMK{cѽ+ʵ*sT‚[% L9|V)"s;5θJ:k!9]8q0%,g!4=DQm30ߦ&{v`N<[tg=`pB4CB n V娃ŝ15dIJ]D^`on@}d2"p]tL).]o1+~V` VqK<&=PҪmSva9CmMPL]FVX8g=1z]޳%׷%Z|ukԹ7Z(~Y~rM[S-57S2Ta/X 7żSģjry9tEֲk>PiK55 y !gEjM?Q@b4dr_JáC 9ɺ#~O(\-[kO-RMysr=9\Pl?=-`MfCpMlX4Ԭakt^%{VhE\o+Ţ4:GTā&D)O} ^#3xPa3!1ڤ'͠frD?` uC(O^#һܔg5nF { xw26[cyÒ$)굉?H_KpVSbʀշWS"< rc[Bhy u@~Dkf-#r:4x9WJG(y_S[*Wޚs6b}"SS+iL`WijG7VA -)T"0cH1R>]#:Â͟+&-h \,00CםX{oksٿ|Oꢜ q`xl^uxGr!G5*0ܫN<<>>匟4v FcN2OnH.H!H<-a9 Ub 4LQԊ 64A";5:P3 PVP?r8!)Hud-wѳ =v8Y5Q"EJy_lN ^!1J!}ʵS ِIۓ8a@vyW){RFՑa7'\X29c)z]zH' g6g͛r;C[[e@Lr>Y V]Jfkou5=K4i%(楥SMeAA5Ή*-ozw+NLׅ =i(E#ksjˊD17:lo[;$zF乜nvj8f_]Swi7S6q~N'}_*@s˸GUù(i`iTV)k2MIϕѿɗG2_+vZ. 3NP{X1p)j#&le)휂 "\Q<>Fq& qa*>#LLUBYe:+&UrqĉL`ҲE#@`ytx;2^؍ L4Tglq5֦%n_Pm@/rnyG䕴n}Ƭ> f@â:ơ` sU‚U;Į#Kh-na<]kڏm8B:#~ Gx0՘BS FHL#H29xn%/P2k/,?~lX{-h+ȼ1_=Z9/T ]ԂEPaԇ3B-X2Ρތf,ăoOSqO* TA;^jmJ qL&+m&Nwj~mەwR^os=0À\ĭ `&}ٌ3Vڰ=] ^&䜖$ BZO"hNz٭irMatEdqIh9E.HZ]!:Ġ+:'\wX Cd- r'p>_*[.d4gF5$8qwڸFTn^YWu6LFLS.v&@DSd usDa"W~UwƸ2s- AFg&(c݅e(-\Vcrj"mWw`TIaٵ~R,&S>U;f$6'i53Cp2p'9iϫ7<,Up^}?}+瓍̸MEv8j ٚNoѯ@IkEǗh,9z)Vi;:@`X"6 VY6Bo&&REW >Ix[r0LdyJ 0ƔkT:n/\8sҷj>/iM` Ip*q,n7J|a/y6+8Qk2펙NO\InlG$7HܻY^{}iq--HX-a~5.r dj~KcU1׌C3Q [> 0O1&kQ7&^BQtdjQmAXp/6 K3Ȣ'PV lh:$!d[PPN$j9Wё̫w =Gv6drIq7:" *i!{x 끹qO/CU n+m^ΡqFYKSLoYeT԰x,(Bl]Xx7xSOئ{/m-eGJ p{<ξqԲ?KByWӹRq-dv&vd-KvajU\,:!cGV-6m #J/[ G~ =bs;cD-yU[5,e16IpBت:p*! Y)9(`2v6cNBi.t d&WDqs5edfa=<Ht|nu۱$XZJ:vC-F_5_TM-N_ $Ș1gʅ`g ]ťV+ 銿'ĢqʔaJdkO閵-,?A":NI7.Uxvן? {x yX&5 Dn9'|ѩmaf(vys pAC$=Qskt12AA.lZrU kݕ;;t/*fkZXQU GIUWCYS햗Gpf|;@2{M.X[r^;$R3Sfӑ!$1yI{cAmRȔ',(D7g G_F #)BKfn9@[ ]MKhP` ]i`";23ëLؔ [5C&\3p]@冮FVS!ٶ¨tp*+0p;2[Ѕ&OI"lw! hjM.pK19 I콧qZ̜k<B>-(y1c7[C fR e:G .|!:k9@0|CN!Z񍖩~k$iƁ5\֥ &:#mɞvyVztyG Kho )lpprRTEfk!>): Ѣ]^ԝGFXH*; #+[qh O/*`J85ӃЕ+ف@% ȑ)M ~|~6\ΐq^)>\C@]I}#ᨡH #rر;u9Y}M/\.jTnt 1g/4ySCXǿ}ã9Z3<oWz|fDmUԋ)ղ4yba 7۔zڤ3Y_qZGՆ z0r [EABZfF8¯)sɣGv`BQ;Ҹq{߀Qp "ql<Rڻ$Q4sM޲{HXaGOuȒE?t"i6"EbYf?d4zQnei.;o7{JՈQB 6t+zIô/'B_E>zY w:zwO ;fO͹D8pçm@jnJ7Q #8\=#,ʃEe6/]QMHh;SA'DBwg碄8<պ/C'խlbS k R{34♛Wyz+Vez4f]o 5'_]O4P$++T!!M%OUtZ|.e=iXXIP4>$'4j~9X,Ş m7Hͼ~3%  g M߯,-C!#"*t !q-x0(09ML mmOv5ZgƯ}⩂ݴMWV8/+yՊt4տИj9,_xku-Wۥ T@@ӋgA? qĨ.1BQRI 7@}lKwQ8P^ A jE>G޼85A>s'X])۪sT>(lx ^=8h3*KNOF~@c,=|Rp|Y]<˲dGVAX{!prѵl5^47 \NL@^و,LEGH'w-n%j?.uDbm֘rM1(fF+Q/ |IIZ:͵"1t0M^bɲnQm'ݯ|˹|Dxc$SqZoa7d7L)96Hy%ۥSӝv;`1ۤU=:G`k۾ Wؚ8&ޫ$3@s"}TF^Diݮ95a-/F\3 Ћ!̼&N;j 6n=:nX4kym*!tars zwL_=IRe%]lU>_$Iƪ"G\&Ux*f7{/7%8_A'y󝦷zt(ױ~͵^O|&){A̍A}?egZT\힁NZF yvr< r-k t þ5M[8?鈩D8Anf(N cSz :/uت f8+q^zYkxȽwBKrGlqxݫ=;ΎHcx)p͝<.RcwgQKꨬ-s/0gWw7>ntp;|=W(Rg8 ovۆ\Xnxe \i22Oy v1:1/.`x2fD? EVDJRcMbI]k_D|tXp>{LLq4 zG&I`|nTQ,g'r&vhFl}_X̦a*i)h]HT}mo3lY|#sp i˨jTryřQ$iyT)4918)*DawFLV^A!ZۖRI tÀVM#Y{-G,"Ki;ZO$yඕ7'_#LǤIJaAY =0ՠf [2b ]y.SKR6Ӏ{1Wq(k[8<@g?m^a. 9( d>[k܈;Ņo5{\`!:ꑌO8&)y(ON3}SܶCTuV><#2Ma݋iZ$ŸsE^O(Lށؑ*Ӡ κ>ީhlZUBJP|*?č:i#: g:E0lڲy&1q cBnQ{ٍUJR42Q!8k j֐#H]*6Ħ;STHb9\n/ka i1U@&@ў݈WbVi_hz{=Mвdٽ')Dc+ǒFm &H^-yH(GHe*-Bb2#۫7gzR뾆CTgR@f?v tly_v"@Uh\m:^=*@Q^SgyJG1 Xs3|\ ʅ~":t Mo( 1+6_'*j^(lB}= 8T5$]3}\Iik!@g/ƭwbyS02G lчpHQLҤX1 ;Q.Լ2ɦ|q"-GԢZ%1|%Ov:ut^.NqSاbԑ8;  /ABINn(ƁGTlDK͐@d||lh++LJCNE Fw?@F{f>K` NA (NJ= ?8WJ-iOOzr <*Ǻ[ %zeaAVj0n+ \:w};0-ax١^W6,IydǮ<_^ /]A ,UF.M޴F(hA>KꞝzHTG=͖ׄ4N jFB /`"%A" (Zj(J5.M'ګ  5 %v d s@4g>_p ³\")jmLNC`&r.k!'I -6RAG͓k:#&e^zP1B, zFK6}v]W| Y&#]' Rޱ?,Tʿ U#^&[A!2LD9_7-I1MܥKgwɧb Yʴl[K1cYYj}讂=F쵣~QN5X j6|Ks`d{u%"unWU9sۢŷK8x)[vH E%gĈqʶ䥎Xiy%oz^]s/X56J*$ 6.-X7~n:v]J duwXͅǦF^m"f8xn*_k$׷0ǰXO4;?"5#D7UɮrۿvSf=bωĀ*&)lm2c#4AXk%ZdB2Q,Kە|ڼKRWLMh>#{TD\bg*ppH¬Ft*k}㪼8@OCJ ̉7Udoxp0# }EUAnpjUoBrdno2W?|V1<3"H+Ijv.s;@L /9 9`C`Ƒyϗ7~ki^F,sր3WBM|L;nXYlھ'ʿZ 22[`A:3+0쏃,P@nO%*0,8%dF]UeiCj#@V()WPjojX'wѾVR2Yhs'9I\nI 7]J }6F3F!7Ϥ<wsA"{sq*Cʷb\.*NOm ;^ GyCk;7)Ce/<ճG5MqokKWBCa'uyK{EdR5 p3nݴwAs[GHD8Eu7#{?G#ٷNwt+Ԛl,@=[`z-B%>pp6˲#^ݏy%[h78#aȭvI,w-1nkm& eMx8;^<=4,5)EKd5d@qD h=XZ@M 1Kz=QNy~ō./f:9>t`LYet2=d(l|j|Wipݮ\5@TOzKrR,ԠL[g xzEG /I2z)1G$OWN: +;C۔{Є*FYWZ+B s+:8hx"OtG1ˈ3/-$["pQPat,W`*Žx9Yi [g`塡QηT$<~$65^7Xff %QuT J & #\+s0̓H=(`GoL#9z FJ)\s4\EiXTYU]e6-|͟k9bRw?&JsTأ#MǛs-(_-r<#=ˡW`}ܱ兇ʀ{+w?ҏ'9oPΥ.wONXy{>x\&T+|}7i/.k*yepK4QOZ|Z11 ZZzCKFMj?4Φs-!lJT50D$Tj{9ԕN{p ?<&]`yW]/8C9h`J}Pu4 mbEWv,09.oB3(cI7ubT޵%ThY^ DHKb?~+ rHWtT뤀?7d;?\s^֐kkEg*'U:M^h 4T#lnXz FS%F.#5m;=}a=U?XYa>%|DlP @vfL$/" YHW͓h뾬y6y \9nqn9BObh3s=~4F}0y~<Ԭ \" LvͳX+8DgMtە(fg޴\ä>x ?CQR]Lp3&! ḋ{j\p N=_Mrb5:-|;nG6)+ E74D#@sݜЛ3YhBʬBo-* x?#ۇ]kBPP۱R}B9 쫓}z Q^d-iyGYےC|@vllLD/?bZE;/<&Slj\mC ~ pIw L$0+~"lh@Vyvo{\E 4P]Ȃ܀}]c(|iuz9ܶ9IRnLAyQieR\JwU}c̉׎P؈R*ε웣>jPqZ_CU[ {R/拆oKh1<'d%rSony#u2>y$5:VT٬ci M~Su_yOHKh}+ r\V")Ui R%(FO[}k6 ͺ%;gǫ>0ސ3oSN=-6<$ `"1&\E<dBc]G5>,b9g3?Y"#NFy{x^{oVGI 'e-$U=jL_=W:'M|~ ԧ0oWk}&;Y ݜMFfot&GKSt*)gF?XՁ6仒ҶE-y^* :D>NSj'̽9@UqXn@O]q-~KնvߛPY;~(`P>Qq"fV=SYNyv"A;uEc2}ZYLcU0:L`/wւbg /0ÍFKۇگ:p]Y4+y? 9w)IűsNr&9U㤦ysqnQ8ؘY>g5l siQo ɂNTHM1wwNxpT~5_Ak?b/On6cGoYwb Is}nս O䙱[)A [/6{<w۫4Z3fS40s2Yc/IAryn@yT֦d>/AW`ЫdA4=kbl56Wc=9h'{؝`x=#ީ#a@H~zk ^2do6d:{nۤO)`s1 ge$՜8(V[WF(,W|4v&:Lp c_QW_ؘ9mjMaG/Tp5zŴ4Iٯɻ9RmߖUb>IU֬J'+j]nFo `]!Sɢxcتf4'wMklأ>hZQ5FGT'σ?z #unÌC H0 x߄O-{ #=膙{?!6hxb¯^` [.DX)9 ZW9f8cVY͉c6iO \K^+'3ݖPrzYӃ-TE86bz&mi 8M ATװ+cAXدfG gxu[O->B uX-e0 Ia@wE$F4ZBB%B(iX$"K :WUH)[n7?$eŗZՑUGi,WV/;W93Eʕ0Te˻])ȟu>OBux|hIG9MQG1>Z|A73b FolԳ$hCziOu{dh`|/eZ eE!1j*caT3{*;sd4)#Jw58(6ꓵ5bI S oq;Y''\;84f*➱v" +ݳFaA2^yw2k^2 8ӭz-ueY⮶]bPmx-z" qV.+ pYjmvzyZXCQpuqOW OuM!vɃ+WX/`ޟ^{rR i@;&1|[DSnIJ)r ~ɼFY[J`7qU}buX*oƅsVTY`ɢuv&%D $:~ܲomTkڵ~73iD#EŖ&kBAc0*mhE ִ\2 v բy[14n*_ny >.m82&R tA rjPcA//PT j ?b$=*iԊv=k Ј07<*!D` OHZsJ)z4f)LJQ(@g&kKSTl,܇sDNIEINGFvh.Pgn{^I@|Xl}Vזzck#[_3j዇O̧R7+/B$I߲yqA!ޫSoZsb[FYjk +zgd^I4'-Mf&#urZ&g`{"[؁\"y!;*BL_`Jt&LӐ(85uo;G7wKȟ ͺڝtz OOqe 0 XeO''Huv30M؎j")}Z?2[ )})Crw_E?rHʸϛ/;Ɵ+<:BVnEdx֍7*7wl܀=~C=hQ!YXGk8r[&+af@kǐ,{nښAt5 ݜ{Y1YϘS[g)@[9f Kd޶0_(c{V ̸' :1"%ɪ*N%>p!@ ,(]75Џӊb t`3sa% Sj=&?O$Kp]RY8jNpαsKF"8ngh7b1nLaq= *usUx 0cngNeQEt[~FY\3pOO3%,Қa::Y?((u71-eE"utnn~BqzcUҡhLb^{LP٭XprRgz#:i]. yLJ[JrnQAHsbsiL(|OS &{w GqC ܢr=)>3d B8/b26>=ᮬY#2lgbGXTpW1609Z+(1rh9_98ʶk? -9a/ \s ؃:UsS^Rp*nNOZ.%(EAP TM:):: DxOt'CA5tqdpl0JnWƹ3W`Mt}d-#̴Wnqelt Mg*]_pR8i( -=囐ĵ%fnHá!ٓ>On=Q)W b­cugSRS)o/xnG>bw]N]6uj&?yGvПYְ7DSv[`™zU9U:=fQϯJ׹5g_#BCU"hH%_59 bѝ,tMf2<ߴڀ;C3=ß2SP8 Eջ:e`f qf>tF ?ը2Wtz%hF靘c/SA3:;ɎSk.-9'wr8u`CI8.;[hh6bWqJ(&R뼖?'mױTYYxc%zykvFpMBH'孹sₓe8Xpfil4{j)I;e&w@b B~nJw/^x V +YՊ b䕰!U}-D0F63HN^Y 5,PNnp%m+x=c$X zkX7v,ЫҚgl73:tIX=jrLv5sjV]!tm7 YE:W6w1[ p(2E9`( Mi_1(f># SjI* #kd2j&&Oȉ5^,ÂP/~ cu(Y?z40=v&>arXr u$3Ӏ@uA_߿Kʇ˫]]S"Yӎ4;{#-h9ˆk%\鷠ǺDUgF4jL/7L.wFkJK{Cy OPY9ۚJOvXJrʰQ&YXQn~VHӞK]Z;fl:.Uu=dI%f $tZ f~OLhGR:SS4%jAd"*BҪJa;}TyrLBh]Yͺ.$VCsAXmY\QUO_#KG_1Nssށ`Y> LgJaqCUVIghsL }~/;t$ |庖>aP?NL`bUGk7 m< m-Ѩ-C̮iM]{"c-p? $S+ݻ鵃r7_`p}fV] 4v!6RY?!֪Vasvf:q#Ygrפ7բ& N)O^}W*ȫP֋m_^i'CGDz&^90 VeN'`+d$C󕽊11yE0]^_ቜp=2W%h8G~.].Zѽ >}K0s8#_iڄCZtgldxnm2^85#뉗`}7YSk u83_2:D߲~/hNvܐ .&a![p O-h/jM(6$f4{r ̱]XMC2*3hVD%j?{5:^~vB/kb˃|αko]CTAe#7KqXj`:]FmmJB)yP ~c8G)3^t*2PfFҡzAbS͹`X3!@TGfRd wEόeY1M 2$Sm <%yY>2;ݩ)ms[[k[{CKG  o &=UkŒ!c6 чFfO^m:ںqRw{,&s-w"* z rET q8@%1)-8c_Q_ >WsT@tTud_#>R-zDEb_uj@wyFcsmi*ʄ%rm!̌+8a^V$z,H" RX#|MZ(lVVMtx@?0.1"cJ-I])`ڮO'NsICћ+^VYS PȯYr_ҧ]G{n۫0٨B~j;>#Uy8M-^ׂ*#r 5Np9凉? Q"4D [P4dC`-9y8 Z7}EγˆbdFy(uWׁ<4>;IZojpm7i=AU#N[jA<[ pτ~-*Ђ ҈=W0ڭy@t3;#MLb~^οz= )t*@23;RM L~bW0Z<λ_+27)19 AC i"C^TRܰ1ES@Ջ85?p0p13Bj+Xo iYl(W)%'(sL/C`Np|I AuDqB`7JccSq*Ou $@ UIj QW5^RU8@/isNob/lS#|#JlO KOfCWq|o}N),(%N 當A0f8p}vWmQObiRe,(}i3DSP@u1Q|!83ڊV^ຒߜ`*=?QAUuNBOp80 y5o9Ɵn8,tD3C`G4:s5HNXq1hfsr[o:rWBc\E=2OBhQ%P]V~ Iwabc9# b^H 0=x>*c]/f=B bc,3T`anXii>@XcyرdQ֜&K2Y'}^Ʊlb2(b||ˁ.9*P_-QK5(^Kl< , ?L#̳$J>=优ȗK Ra-V]_ X7Jo ~vcyrH$!5h6y]˿Q 0ſ.@y*4g!yA\W 5q:ONӵ-!dyn/X ҇;,5Aaor?k3}#臦9hPЎ{[#6CN ǥ!?xm^O*LFGkD]ntז ӕ^؆:$5Rq Zަ`s _l,W122c#+M_(@Wp+vg)| IgVa1;zM.̠oӰj (N+U qJ2sbB]@ad\# ҥv`Vš_3 xw/|eDB%tOYf!s E|D՝q[ gzOfj/Uv)g3u&Pq'Ge3d"}}۰5'Δ#P ev ,4#-b负݋ }`,-ɠݽm/a8opĹ]2K.40^v!@N[łcY:k- ZR.dX#TT3t@P>䁘:6,)_,b^90'9mV8[l9/mAI]_޷ gLE8oTbdسq0t%ivb3|\Yi0lm(dvEoZ %H˰mw0( HJO_Bi=Mn3#ӹi,LKU2mw`5Xa?^o#4R-NYL=%#¦Ffy]-s4*ʤ"M>L~R p=τ eFi#LJ ٛw)Q67}>.ؿ&ҸA@,codUiSoJٟUC/SQ^4!U0 )T(=fL.#%XԢ}IEjZ9{G2zX:2E-7Sg8ڏ0ɾK.kNI_aK'Y/ =Rv U#<Ɯ"%.k Ci 9%,-LgR5:]zr8e:2U.+ foF]~,Vg&T(T;Uz[ )J3ÒAzFJ, յI&lFO+'&%ɂcr [yaV0^Vg\پn) νn mӐ#ffaID~Gb`*e聸txة&PU9l/{*], %B(*kj*ɿ }#O7ב LzT_/0B&3%F"bI9ABz!i 6Gf%+$y=EԀH[ѓ9Cb@HVʱN!aI 򳦱^k<b"( j B~U.jgyV},ᄡ)~:Ym<d*i #R>H?f }=Ap%̤RG̾^+Mٙ9=lzr iQ$?V7uK)q@L)<$D4爏s^ȼ=cDl 5SIHX> 3!_! vav6M맰ڍ}*^L.{l oT:uQu}ؖIlFRڔ&qIJnŊ4&حe;  7GY(?+Eh4|0#FKh F ceIQU¾-?AP6R é2n>F0EO7cIqQ||3'OHG3F {)`Ogz\8F0-I{.54`fCD}] xBM3TUj)6Fa!@ރj:B)& OhG5P@͛Գ_S{*&¯X x/Nȴf|- 'Y|@m&PE [0$b I;kٞ!XS܃U޼|}Vj ?疡iؼpNc(˂,&dI츑;dSΓ4a #״(!'6`h[f]-?\E#0>$`oڂ @ h@~{D߽cGw}XFy?=2nzrT)][oq{܄X :cmLUX0:nyYXr8U9|IFI-IqߦZ35}LబūpmujƴjA_̇}r'^g4. ~ᣴLr>NU3L7gArK!OB%Sv?8\FN8WD6?R6ק|R8f 1̵NFGDH~ m~ .(ueMTrtI&u<]z")Ч&Zt-˫*1$2φ'uC|V7k|o63͌y_{@Q=:2lnIֈ-?} IyѪXi.MY9J(6Nd?!!ŊnL9#sۺUnf޲O`d̓r0kdZEXxnΑ< J'n|q4_TX(ܾ!]O_%!2V q';[cNeq7Y%e#ұ)?d!jvCEqhץЈLLcp ~ Q?+n[Wj ׶b(.3-$C[Iݝ<3Qy[<+OO1SWR"+Zm[:h".w)1vΡqK  ŭqibՁ{e@+ :"iPV*sa;!R{QԞ(;L83;MM&5,@Q7|3l/Nwyɟ{qC$1}`ԫʐm,XDN{2`=J2P$dm;9JZZw&z 3Įy#kt\_s+[fNx|: .MGZ*'kagH觃*F*-UBq$)M;99 N#]Y3YE{gS/mqYKrRPUB:jE<؅W{Zy߃ V.>mXEJ,#9VmR}XHXZ˰JH)04obYHo͔6HμcYj֪#=l9Лu}i'ֱk=v~B*$q9#_ξ2NgUǻs'hM0A=tUڗ<&|#4!]L@G}LM.G- .8(3Atq:`:!}B H՟ږ7hl*,ŨػB}., um_u,+i/EД3`'%'A5;k=o47X(`<8Z\܄pt+d? ۜhJ8d*/o+&QIU92H3ia=^SHXSWpz~4Y1,0R]n _ ϴ"K ̶۬;y\4Aq"ercznL&SD*#CMʔdBja.LvwNA_SSrScU;oq ShDw}Fا,ĜfWHWagD ^}&o/E% }?zavHNn>DWk)w:g/IWJO؏>Q/7l!/l։I=y3uHv](cR~pKrYwI JqZ/:9!"vc*tFLPޣ+]y k,Y(gl/@H/p,lܾ 6q-w 5kn쳆 K E|@5rr}NnX%#noGBu3yd%$Zr]c&Vy9@:3=m XW@l{[%mѥPO X߽&. +Y,?Z4U_kgEҘƻ+g]-fmx/0<𖪶nݙn{P1vg6ġs`&|J@Q({ DLR5nRGP̮3q) E4dx#1p31F]/| {A}}!5/ ;vھx> ͗lqd2kDz-FYlLOgޓxmaƹ|l:\3´U|tozZ{_L<죭V3=+WMm˰% "qT\d-aW,Djb|Ⴌ=Na]Z]T,uqO{mqLOl|J~Jވr1|%tr@^qBٻկL+ "P82y门y?I:|cV "{F/x F@0"&tI8\1xtE=M̙$$"o/#U_*$}دIpnBJ ,Xië)7;mZi^Jh*SF'"r&Z ]? .SW}Y 9$b%Y9;kKizXP~m1c'r%((yU})bH~P'd|y)ڠ MX5=Q -C]pr%Wﭴ!@ ߄X1M5He6APnd~,{@5 `(KB%VK7wG+>_ˡ3 .H rhgRCd` %*ۛ45քQ]́ۘ1V>IG*9}ܻm۳!cp)6 uXyx$jާ61&B9Vz&Rן sPRa)[g,S@ Ig4YN(9ƻ+v $Ux/I~̱Ƹ}64كAې6 Yg c>煇هO߫|r$`p Bqv11"IVк3O1c6eOZlWmz}M1t({BǐQ\&'W~E[AP(鄆lc"JI9XJn kY8zVm9iHC \X!h>9-˨(5V*aqR[6/r+O;'(A%WEǑ:vI0EM4sc \eo?" yQSd#q jL1Eg5Pq0?2|dVi9p2CT귗 #oVZK<(tml΍q9a $p]?IۉkDw{)g"'2HOK>~&c)>F`drCC.xNKFQ՗:Z:^[ VpV׈5Ӆ)`F e΢Ӕ $3c^^,H ኑ d#ƟKާW;U7i3lNU& I:uI$j\)µuk8 o(])sGfߴq\LJKD^j|6~!1sgC -'>,f *1SC nMd\HӔK䳈=-, ǪZ.h/ex_Ou  ^%=pR]jDLX~9+Ҽe|9FDs3Oi 4 J%l>]n";ט׽# dw(+&-d/vO,A\ebKDѕsjM Ra:4q \gјo&mҢ (i.?EnVv(cuN?#mGcodԈ{VX+Uty$W\W#H^X| .}z+._}F; $ˆE]_e,l:mc BblI6hú?*>i}+5nI c/ fQHt&8, KUNwo"tzA5 V6" ɦbzwP-j!5Rې5}zӎ;%&Ai Wm7AZe≣$q sy}X+J%{|^VKmT2 :T/'32{ݒ-U'5uK:!Fޭ-ڧ3ob'U ?N{ 'dg[t\|EΛ<`O[Ȅ| : Ȑ> (i/%Q+-Qr&GZ)>oȖ_';N,ƌ J֍^;HR+dս+MF2[&5>LZ{m'R@ e,ŬrW}"ϲzNcʡaXL0I`숦cZhVz# d6p]yy)9ߤ|c0t~2nS*T!"+-"&m u_1b91` m 7h\^l,8Fds$I=?\5P{ґzV "S&6莭]q? p]:;jK!ME3LxOh#P("}I@e&-yL2IDU Ct{Bv9?7FKcIek{QcGyt<>=W;csoX|۱?0_N|/e@HVלvjEl/!EiQ_Q&[: s6>At, ֹuyrNIjY!6Hn議1EA^XZ܅H1zwܞc>5&!:/jlpaxh!uV@tF:y%hn^L4<C.frdf׏ w܌d~ U+ባ $tjTn߯FȊىT-.(&Pv "B7֎NNh*-kQ E7p Q'(OւRP&{\Vid~xͭg(` mf)w>6M٨x0xcT420TkUGZs M@t0%Z৳Q pG1y$s+00XdTJsT&@Z]T"[^bKr!XXvO|4'#{EZ^d]aɅ\mo;Uq]q}ڱj.'4t9 -1aA}i"5&Jxk֚S&{rnfnEiW:6?Fn  -rEkuqb˅0PxTAT~DERAF~4|yۈim#YSYそ̉?MN3,Gǭ4ܲlB'v z >8 hr+44s[Ra_&ؙ 9MfKgsZGbfrD^4۬R| }զB Y9dhl7]hEx)ZuR\z؟M|8`|k%V)Wݸ{g=mA을u0~kB#fzԍ {.- 4++'84$E3 lB Ŀ)'@~t*S,( v/񽦑lhw #,y} XקS7 GOGA)k fA^[5zR[ϦBGeI3[?SHӟd?%0lUvk6/ ]i8OT(@(᎖?H3u9yZ6@n"}.`&g|^57YL PvG#on!w;92CfSVհȶ|Ⱥ<6M^0j5GQpB/\A~p0aG /όYF9$1, jPPT 5|؟)Ɇp؀'cv;&¸_EXiI=:WKCbRkOS t8kp^k :w y0 % V%PxC2^ Zl]E]%Da5i)%"%+;ؽYҚٳP9뛑5@ 2qHvvMCo;|WevMDH^B =: ֐) qw3~l3}ѼYUɼH̚2.wr䉈|ڱ*pMq(N^H!vr~ĸ;17Ѝbsiř V3aZ51\VJ^O"\~:tANB2hpgו f!HKapiTl\ ldÉ5Npbcd]p:HS|f>&feLV.D< ųv$9>נIʧ̊ȠpǺac A%U`?'45dhޒLMӁ92 da*%1hdk(Nx %>m@G+.0Ӂsp3؅paܘwÃMm??ֵw|pMz!krK[AC( U]h[ҁP{OjAJPzJwxL`aWԔITʨU6D~P2h}-149r@gc 1D@OAsFNBm,hs!~j޿GƇfI˩85_QX1)N\ [6hՍHKLK ޾;t&Xq>(\)\ I9 6tpPCZc28q`|}|2swd0#.2TlOCQr`2-(;;xwmUG1@N':d=4 cx5n8Y4ocmbZ!0^ՍбѕCo54C޸MExe=u,0ꛎ'H]'IΦbǏ~;cNŏ9NC)ʗZ>nc|FXbi8J)D*t/*΋wлTйYHKNQ*ȘrjV2,%ƶ1xOK]fJTB$y_y@3]fX|qKnzHCf~6|/5!"; t)vT9\|V5aO9. aqȬ(/s&>2h E/I+cx4}RN7ѫ95-+9yM@e.s*{#*J+/zS r_ܹ"q]ZHkn99< U="A^9kd l\EYٰ%oObtjnAWr^UDV+):1 /{i+Vt/Bek׽ٶyM^D+֛UM`?h*ӏ@IK!pI<&fP+&o7Vö`£ kQW~2N] 6B?[`d,4k]+ʏVR7>@,\:#ui7lHɫO8M˧߽F)΋^X,J-״s0_ }GYupc?@w $kxΛ/de>8iWƒ,BMK/pUQmmЗh8eYA#<ۯӒ T d Be-F:(U^cc? np0$4m5C~a,Ĭ$?LH9<_ }0$R,̺u1ZE[Ao$&6T?jcm5/ fG0{]+O1T2r9k@[)UK.nIg9yS|MYn- :.QPpYr >RЗNoߓGȔ k^]ʴ70 fzgM fZj69@-,NcL;e2uɜgNkV:i$@a4^)p<\'+>Zܸ):g@lb Z+2D!ώ!؆cpjG.^L cv|[*B~{@7#Ĝ ^:xX'"?R.D%q^{"4=8 U 2AgeynC& 7Jq8c,^E n@XL 5yJkA$#6K&_4p*[w֮g~"w ׶]lD\< |C>?[af1jnӤw?*@DM$R\%jS['pF%Ep*0M`*q.T'ћBcSlu=+3bYK9,d6>fԪDNhҋ&OAݢp(S;u]]ITðk]o<Kwp0Ws9f- E϶Cem»*'bD>xVgT\0,Q!#_t(VjlyNxcB|?/t.͹翡T#EGEͽ-]uNVM b2,JU/5<y4DP^^c߸vE-xN{eGZe[~"Îv¦m|pʒOKYp3rll>S"@)" 4[,y݇QjhspemKMT JRQl\x]VB{~dPW~s[yAluhn4 #8ϖl.ChZEvSD0&I$,bXP55SNzfe˂ɒb&Z|6|WfBdfmGŽ.3H,Ƃ{&#, kw G}] g$5F1˵Ƽ|x#mh=LMFf.`B/OTI/OmVe:,~Hne6z ,.= GjKҤ\s~x 3Vh_Ӥa wâT1̧̭}W,wMhPIUrc{Ɯ$s-j{XK1P;C[fLi_`p* ZC lTv,%355˂jxC 9tM9|U%XQ: u 6=V-:p+:oli9&?V!Pث& ' ]\#vBV^DS݀g/vi) < T'rAn\&/C"DgVg_h!,d㗌F=~ow~obXʑRڅ%?0nySs)ǴPLrغ=sM qOniӕ Y<6 Dn eƗ[6[8`Ot$ X&kkF) I/u@Ir2ɣqtYtEpljzyH\% ;+}| (a< pѣ$PCKAat@BbG!k.۫,>Nc*  T/=Qh']_E#kiOd=j]Tq7u1y 3u޶SCC?B* eU~8T!ꦟf\oˏ-bCn\,"WP{ |c(hSM;ɸdž oClT`=mۏ,[JCP-rGm,Yr^ʭ齡g./厭,+t[4[[ll6lnjUpG.8#+)r&x$B;&ho3}3(B*mqկ!mY+k|^˩q% &x8;_)rPZb1K X/U\dY)N|u0.6u ~]`.7 q> K\擸}2ؔ4ЕI(<|6<*#eݡog(y>)3Epńst_7H߫ôΝpt0f]dV>V.*o}1~1$M=CC?nhgrO{-Nt'}}}͏aSQz/SDdKOL#׍&oÜJb#kBB ǷKne|[%:֣)YذH-CBv_I~Pu/51\8 d۩'s&nf I2܏>QQ店a %-27=MP W(PpZ/Sfp>62" 9L(~D12pAV*v >Tl})ڪq9o~0ߠ-|妡>2b &*ɓpUO _HQ!`u;ɱNp<. ?<׎s ?G<3+K1&@M tǩ16 $J>ʤ;&RnJVǿlX7 Ǝ˛t\#7s/ԧ[0*`C/x6YVμ6CxҭɅ[R [um\dV<ȱ+Af%qh7s.C=*6t ?D"x)eZ3 \Wp5nA8NTq>(#6>Ԣ声ңbrkBaq oiO468?w]*2|eM~9Ʌe+wɩ \ښgYNXMĈhLU%9Z`~Ylh|?jJS2.u.xf W BsGjŇBZi2c% 5{n!CS+LfAëAi M fEZs􂫩K'WYZg8eL~+\kmvX:ˀۊL_A~Zmۃ[CH*T93e\Fߊ~4#35:Pwۦl$~y0BL˵Ipw8(iCY2R,=8CJI)nW4<?zDQ,P92pOR1BI1/ZﶉҪ)fHKDTyvCȃW6?Nz ~b/<`찾ףӅC?՚ Bgw ( /!k5m߂OBHߐ]LF[ꃅfM";„E'`S}?(}al6^YKQ =Ldk6DV3vIcMho |VҵY n> 4ݡ ?_h_gN`14RuEb,4d z7 I7{F̏)tr5?ۡ฾:e.=oD%`"7V(Nˏ7z2bEmQ7ɞٶy E 38$}2]tW6TSV2*'J~VNSa`>FeP#K  ڥ[L$と"]̬~~_ Y!١SWi=({JCaNBtzM2Ҕfs ǨP|ҟ6cXG4H._P3퇕Bfsz9ܥ)Z6׽πEQ}x-"nl-9 SJr"8 G&'bCe+sa߆F"a)'/0׷{'f;{ͷw-ҩ4Ǽ ԛSW=zc Z)/8qf>k9_A'VTw Njq\xשpoTP|K~?_o-;F1y\ڂʎ۰ ?3^Z+ؚm8-cO/c1 > _O]Yl5C`!:>-e{7!_OP]kN4#<x!)qyKvH{*h뱛Z=LspM-AϘ *LFV$8̦+5"}[PTo` 4AԲ[ޠhEkr&.?h',e40H28"5?䣤=AT[$ܗȎe陀(6- >l1H8àeFu΋}{'*^Ffw^mʵcHz'|ڌl)yo9xh(< RŘ,1ndZZ-UIC~21kI,ZFn9ݔ,?V<:jn`HT!Ef*.[tFWGyz_B3>6\q<Sb*%G ORyD>Essh ]-z*=M+*lO ^-W0VLJ/m*ZE$lx\ps5#ո1p6 wG r!uJU/h.f ״Qq5NkkrO͋pl;?dF`7/#:d qM[llmqu1S~@ iSyf]N'/ljbʡf7AF26Wuq6.s,"? oMI:?PH| .g[|H&<<&*f5 04&uZh+dܸ`mǟ|r~$[noj3/I\|\pH/{HYx}luT8 ,"YB8m>+}9pq@M,G|G<#T! L]<! R\!¬*G!ͺ\ D-RTɂZ'B'[Ih|ץd S_ |ߜ)9|+Hs+V긌 < D ]ΖN2h#\u&OWeWtE!MlusU{,x s9rte&F?з:t[wLEH|c 岟ahA-~'iUBR:h ZU` $OQE4R ߻`iK&BY_65j"OfY9I4#iv4,K͋R/] 2UrKO )5\&Ndcn bÀ2IZOS0LJw7|{$X#tDpi/Z}^Ym3'qsŃ;=6#kL^! 0J:71Vf`e)yɂ}c474m >-2SWhF+j%`/@W3v0bsnng3r][I" 0 XQ&?~ٚ*PvA:1Kf! l!?$wD{醲Я.9|W;HjXY;$*V~=A[Qb \4/.|fB/ H#DDS6TLilM]6K?@DJ*U~ õm9S(i^),\<9^UJh}T$cAw)ň8͛1S*3˷L:T zydqx6bR]ە?ET&(D5Bz;"E]W [TJ6ԫYs2hJr^1_ޭ H-=~F(|13_=NW5sܪT ˢpmruŠ]r4C/NE {?O1Nl:mqn^nEPa*C*.t m8Y| h< g%vP`>kiѶPmKf!tm)S{YYP8GH(fޡ~s s* sh~2"l[wA9{z8+Be<Ĵl%"5 z nՔ(_I>; g/ZqZ!lO/IBx9NvNP4𗋯V,:>)^Jdy1h[R )Ө1Z}$BXE'6!=`&jcw OY#-,Ji1̚xf{DFed͉HqqrȜI;FDHR-M@i|~a8d ABEUW.҅5PUTA^%JI1e9j+*'ixD/5FfdM6\aw4`X1Zծak܍u&( 7(<(7$QU!h–ͭeV1kI'EȾAYȽ|c<  f'wlP&3%+@K6U mN0%eP\އձ!,8U S 3RLߡ!R= CIpBːkt\┰CJ`dGMwN俉҃-sa=Ԓyƀ QszL2etU8ЫQqq8g/лTOƹ/K5; Xْ&Z28?Kk"-=6*ATɆ|s ~65J^cqkWG zA&$ĺ ;F2+ih81T eƇ$?5Eq:H. ϶%CSҙKZ;uZ5ǁ, Y28NxDo>M }l cSc=]nuc]֤(3Z)e%g|$8{VaLD;N'h|G;u簔6|&G$6Ǧ꩖DP#_Y_M\WT`0 ȻYf2T`!o=GkaxXMG Cz/[|g?CgR0"s$඿7`NGvt{ӰaRڑM/k&FWHb'ǚ֋(ȆHkwFj.34OW%( B1`eet;&/.0!F'1S2,prlAM*x('bZHaԃ|#@ĉ;?sSTp#LAk_Y bcdmbE@{k:@lO܁UI.]@Wn`]8 {[D@^hxvZ,BgSw_6j~΂Azy iZ08((Myҝa=ɬgwOdhJ8ΑH;ߑL6I fmHn= JENWw *X~2ŭ[!58B/r? !gNJ>|zCg8g$^ֹ0,qdm~l8}V? <I8k$ Z$De;Ͼ"~)'/Q7?aՐl:-F+/pbNj$v݂nX0 m2W13)ķ-4X.=›|qe8x2yȲrhL)Dғ C_/Wtq= iFI>lJ9w7Qw#c"~M}Ms #@k~2Ntg(&blo1f\ a,nDIKK~%Glnc q^_㡛} * <%_.\iq!ڇy@SIk&uւxV|TdБ=֗ްx\1<咼g)OU࣫'Os>9u-*6+$g/tK1`RJW@+}/-HQ& ؁lY.0lob˷|渷k6g6UiĶžj!AB9џ1Z"/YaK0p&ˡ9HNlrp8^RBgIS=ϲED7{\Fu:F UA'Zq?e)a]SD@,+ \]F#xhJ~W/㐴E I@ۀL^YˣGD }4z7u&;rh=_'_bIUpV0;xܭմiuB3f+KmA .<WYjJ<ՋO6 naV7"#A\` iL,zpKz `QG;ldFJޮüW9i? ( ʪQqf[SOh-羊`|R ]l5ك %Ľ6>Cm'I|$D*j&;<d=S@ogxZ5<XV\&&9F,C9~ Rq܆<=k]6Ʒ)Sf8&Hbz D5K]ÁӥNw&lN)B2t{E '/!Aږ N([Lֻ!z61Eo7K/j%Mh%FkӜd`l%Jͮ{4r@VJVrFn[Ab7;"L9wziswJڛU=1f!QWfO}5L|QšngG&Yzݢg}kQ {6_~3a~\1a6|Hp Uy'te*s~.д;[?Z%BfNr\Ԗ`~1כkʰ[{aN\`RIʻyKT"Q ?on7jȫgGz^IE|v2 Oq[wyVAImS?֛=ٖO@7%~xGi4?2rJ`*hW'{54qOcN"0)1 $ڛ "(g 2үr̲;@!?S[#F-$m<B<\#lh\[G}m30Q5 QBSQ&y^tįs ~HmP/m*y58ƭNo;~=X)#"I*/c&2U z5K#">-a&Z8Bo?s8&(^"ha{‫TQ_yϕό݊r$е_WY-5,۬ZWNBаrj]Ɩ*w ٙEm R{+tDG8/"+E~8gtIǛz=,_fSs"k#n6i.3Fj&?Yt^ES*fgIudaWϱu/qiiC{Ѳޚ[}$B'jJ?W"EΏ iy`߃T36:"#PzΛ}#[5U /% R6AA:pp0")Tleef%*Tfw vޯQE]v7qEoVt^O*wÎCQ= [0HfзKy7"8G.Y$b:Q_ݒp;ÚZNv #_V\IkIy c~aBFA\R$܎)#1]fʗ ̪D GEL1,@9h̐Aw]M} +W";-GCN:ml_oT #mĀ<ѿ%)hWJ1fЄh+19 6-iQQT4`֏`?޼<"P4fg!j;$er2#c Η)ZKewR#xb c!l9 '^tgj١-e(|_['- wNJ&Fi@@ {ʅdƎ$4-s+ ֘s)W xb5:՗u P 71r |b07isהZğ ibfLO Ҿ.I54 ( 3Gqts^|Jw@荕W?7 $²N1W%n8*.w-@5Z"Ed8rI*C0Pz)7˿3_}51<2P xW&Bwfm0tkeKA4FUCkx ^jS X˲QiObJvlV'BC|c#|{LD:Wj1pBDDߒBz*n&>} N;`Ml6@ڕ 6u_}HZY!VI kz)+ ե {$TD:1:].H/=ژOՇb*{ضUFӈQ:N^aLiP5Gi؜8yB|nR>Q+?WPrU;QB}վF(q`> %xqamԴ*=Sc"u_\-}tC}$S x 0i"0.epn`{e .f٪MҠK>G/LPQG̢ ߚNq 3 agpz'$sypB#RL֚șXIuVFBH";l%dZ-J8תےj -)cR@^K2atАup ze4i4Cxv/ߨ2ys+|sA3l^>@H)_l,МUʴ-yϐ²l&4o \˭/2-e'!@Z;)N\8Yo]H?auV*_%QwtmFJ/-}K\Cc]ɫWDl7 ˗d(vgm>Wd)קc0@eY?`-wm 9TPsk!cUf`~T;6\}T17g4"9+s^Uݖ"DY1.)yX{UQI zHݼƄu~<ŮfRR]*2RGMBc3+@w!u* 8dzH[ voaFfp\P8-^JWx@ ׄrxOu;lzsמCY:wiT*O^cg[$A+Rg/^܉g=O;!(W;4x~JU\SgnNʁo}W$-XI2@[U%eKm;8|+կNSvXlZ,g&*LȠ *C-+\P,?b7K.쾳gCc @M:hj];acF, m)E:&qĿ f"t53sK4d˕5OΦ7,ÉDž2؂[y bd֚w̷B2Q܂k̀X(o $:57iId6w%#BV$X뀐;FƑXC> j!QC$V EnHurFo8%@@TEX$ZV4ZahyxN@ 7DW SEˎxc+XsbiՉa#ו#0т74Ea “RE"Fr-v"|?D3}u,4+S"TRh ;|\sꌸYz陵,]ZejseaHed+{ d|xM` DϤš8bcf>h?Oszaԙ.j-ު[(I>Nj.bHcOa vpy_8Ul_o5礙W8fd+>K.u}7$8- 3b6B'Rnb&+ÇEzoj%ȱOa{?PÊndH.e U ٸ4AҮmNd@ˋۻ]M5I)0d^/ 3^<ȣ%dBם6 MpU"a&'ЮWˣ`&#W yȦ\m¶Hg{جeP`!D{T *r(ڗi*)2IqEu Kys`@j7)v%G:N/X-4#ɀ4Ni(u 4$[a玿Hl_$CA~ću=iD7D jpZ~$ Au2r.Z\buEH$c2W L{ЀTs+DɞXD^ȫ_jQ fnLRc5CY P k1lx2DPai-٥Sۊ0k\IJ:ͬN#|mGj&ǖaui|UYuBoL~tH)0A~l?􌞔7ڶ ed@Ў߳W@!qNPCm^)1~:pRO` F -|DS^ UkQr;!od\Lkݭ庸z  w'tQ }:OTk$= i lkyW`XOgP1++-'֔^BɠN),4)ʱ߯ @%FI=dp3TQ[|T^s-'yȕnzĂ'7Y9{P֩ƹ6lEqj)ȕK)Ӵ~N\4A_@=OVH1$<n\AU\m?Zy~w'|Se~ݐ+z0$ԘVJ8~!GeO\ r:֣٣(J_3']qJlR 뿭 WVҎ3+4:3["6|Oۑi xg 4L%{?ɏ1xǖ:BcIgq`bKqʼn xelK.+ap+UR[v8́ Dp֨ؑҞRjg4"Q_W35F!׊jl޵[H@tLKet4T_4Fsq)IڽđXo%7U@6ҡ<5zr C7RPbG޶a4I 7U(d'o+Fk>IQF_ftG~cf k0ٽ+f5\?Bu='a*ŶQ6 )?!ܷ%X\1*Pyb&ԶNO&[C6kp_50'QYi/H˯ !S <N8_?['ts`>B}oCi g3 sgr:fXTK\Ƣ%-^5d]\3yNu@$-BNB >G͹M7OʻiP_MXwlGrI5~r aT:L64 Tt_MU914/ty5p@/6uF"ӭ+>+|xiXx.dEbkSZ#GW7-kLZ8VB+1L ([qZ=|} ū 6q{E5%5uYT@C{ bkyޱ< n(eM\IICVbD;S  Re2V!oUDda8H׈ Gɐ> !Zܑ J mq,K<ّ,qŐ|G`,!ވWaq/]mLf+?邮<q&#Qh>y^<%(n0+.D %3khrdh. = Cv`ȴӟM$Hg])%9bM d(x|2̬LЯ#ɺ~5I.cz;QqB!1Q2a9G`XވMXU4Ϫ$^Ԛ0eE4y)#jGIpA W+ ϑ նiH=0üZT/qkWⴻߐT~MiZg*:BTd8ra\/ E\4/GDe\N6$;+.otaǀ1J4t)Y{0{r,"[}2Av kt"4}LB "롰/!ÈY-@VdBnv?$&]xoG[ `ɫC tpZk93ނ=yJ;=QwReo h+ 4U+D.Y B~hsd'Hi~$붰ÌyQ:DˮE_9Q$ S :}yB2Q= )0=U^D& TE5h-KW=*+v緍^#PϞRZIo抹 !B/97QN@i2QX{lSݫWU?9o:Yo?4b^Yd2.G_R.A&l2g0ugDE fkMpyD~'F"eƸ+bXMMB@cv+hޒ*0L;ٙtNĤX Dy23׍M` |،߰JUU*MC5JX⹦ (oaɳ@ bh51< l_jk6nFh-T?\:|m5 +7 4m^\2Ӈ#E~9@Brv!ՍvT7 -#:l"j.q)onj<0{6j#=c-y:O]l5.O-[x:&?xesL 5yK:wGqd&QY#YpGe/kWXhd<)j)dPxa*Mѽ>(B-zOcމKNEE6UFЬ]4wB$]Ź URv-Pau]():-ek#f dP@ c ӓajoldiN9XNS mSU(JPo@=&drlTE+A{,^Mv.e!{k~A8g{ 9zy:+\8XꟖF^}Z㜇YiAhts Ϧ5rClR9DIF.tTzEcT ⿾ߚ#Cip 8P'|g]hvGب 1jj.;]K gOe00c`ԋ=਩W\O"aDzvp&z"*[FvW86]YMyy,\a5}$IRw~n!Zq֐7‹[-ʋ (U$jFrϾ]ZR>HjGjq|4K/扊aQHşjP@ (d;&tT HbCY?ckyC +-vt#at]X̅6OJL6Gx\$qSGq ╅m u5IT 4ߔ&6DyF|3uFzi)b-ߏr$C\&ȭg̑iJ<$"$`5xE[?kI]09Zr⾻SgGlm4, bS%&\t x|uϩQ(.r@gZs_m8v9z>2xXE|;2 |>~o-ȧu`+GhHޞӅ{MZJ{&(Cz-^dCMĆ`:2H|.n02̕&O,pbSp@sQ0V/[.Hn+ S,b7R?sU(騁΅ذ҃|EQ@rA 柁>IbP91k>5I3=A QpoƄrIOdV< 6ӔBPk)]‚|l#{QOMelZ?SI+8o1yxp^+ꆍaЄ'q:ӑY2̗JD5ʉlVV*v~h fj/iQ1'(:|^"3c]# b20Q ";!wl/Ux>$4|Dpq5UDR|e٨|4k\BP&`L?C8|WcSm@ ϜLXGش,ؾD'U>Z c̯-As71B2_4(l78GQ mR,bE?io((}⬦k0C`X%{T,pwi X! I‚f; 69:Bgv݆ʏJ>/S/x5kG(5zCz\)բ $k|<._ 'Y/Xd`8O_X=G#UlU7C(XMVw/<k Tq%V x}]{؝phAԆ!'/ 3v;ePAR}Di%@/ꖍQ)Aa(|2LN=7H.IXj;Ƈ,1ZEߨ)yk%9HKsFԹC/C(. C;»κ+|u@h] FŲ:`[9V:WQsJ^Ofus6`VChSGr8F xe \6Kɑ̬~IpL|Vn_qcׁ0Kϝ8 @ 8t 59g`wsaf#})G,>X8^2vd -n D)vGYUXݿɅg,OVF_ڦMXk <ϭ߀ wW?/8?4h9#bIV2tŹrA1mۼل-+LXI>5%?ϊ-Tu#2A_q\+ "L zydك}עO /#P˩ro>H >c~},kaQSTTqEl;D!>3RUNب> Yuu1WtqGKɠ/COux7[[iʚV(E)ϖ }~380SבF*^BiH`)RbC̡8D{^8WQ`4CIo^!+N>Pt5I6XPQAnn`?lGR An[dm}oŔݱk3 ʈv}Ag)Q)'7sI0E;-؛FEƛ TTsdS%=>OnBD{7gU!T<~(FF٧+7lf8P65lHeW!iLLRО/I#eJīcn PLv_lUtM"?,Hw+yz"-B3]~42_RܵHy&[NJ<z&&ȱ?A#>caA~ MWD M؜h1@͐K#68_}!?Kk8 1>| GxD*d= U[\=kZt7rE+H` ~!؋ݾςca5樸q6bd}cg^S6(N\95EH&d~78 mAhm <`w sVc'o y(wH/-;m1= zm{ѹeW::nq1i}3 g\t&6]-љH2U؃.UŎ3=6j>{i;_} c(H]ϡ%맟ܫ{q5ud{ou\$wvzlt F͘){cQ0vQ 8N H)ܨS7l#Y9wC+{@|f~Ƽ,⒥*l3ɞxhtfZQ*E x`d2n[|HR qK# '=PHz7鉙]j8rmy|$I}M,SRuD>;CesZHj1&9cjtEݧ!kÄ9:hG^:=l1 dkR}_!n8ElXJؓ0A4mJ;̏nD^_3Z[Nuο.EjǤJ沣*l޼=HY6;ݙҙl9QXNRb^Yʄ|kXj&"_PÎ>.vӐ@8]TCA,m ^8=_,Xl ̩Hw,$u) Xqwhj<)eCs{V OyxMVq F{cd:gn% x3I8H/i}KUƪu7 a|f̆>n[uG?O=q{(m< eJ{|:yvstjٜbV`rtt^˃H\ůtX?nm5OG+Ɔ0R9rt")wf6yXDm~tbJ?\!2ށНՈb=VJF^*Np*?XY%%& bz}<aLpl 7'35ŋU뒣rat(( X?n"{%m73:-dɍ2K&l:rRѝ;$>U4.9`cҜJae#mJ ?֘]'U\%Kk= d2eє}8výSM@*9 I4Rfg]lgJ#T{zOuN.ц%§ tXDDW ?A qu+$C{31:+T3 {&'݀(cWE5ь=5pu]pyGUۤ"D/I_H&Hފ{oǀJBDq:"ܔ㬜 drG|>1Li>=]XrnGWM̳T'd:VB@'S_}'R}q[IryDJ, >HV(+rתB@vU4s6,#!*[\CĶ׫I+B=B' ;N8["؄pP,X.=|`Z7idLΰK5wgBo/1dO SCf2{{OK&(ɈӪQjW$p,`!)bF7Pm$bZl &V R5FF ([f TRc%ߜ*fpwmc)1^o?>h^>w>=Y'r;  &gguJ)sD<( BەgN90X]!lLYp_7Ӆ9sn2Wr @rAQ'ؒ]ၛZޕSܠ+iS3SJE25',q3.zR6QDv87\9zv@$'O暽'DoU,maW3KؗnS1aETt|"hFW@@"hꁢz殒AMZlx|?6?޲$] )[u7jfo,R$,WJM]!=V#@Da}8ޔ@!ߩޱ*1ax4a˱@%+LtmWA 5{wlÜfeځp>ǯX+ 4aG7\K4E>}DzQ1Se; a&QuҔǁi̸GJxWR}m8ZtY^3wWa8e͝]s0,Z 1%2} xcoc9la[m(Ӆ̙9DodҤփ S0 $eH4?IH@V 0V_ BW{%v`Tkaͺ\)sqJۏbኞ 6Gin8Wud;Ca|yʩ\.8-mJ'6:1blJD5pkVq-v.|aX=I.%'rfTrT ZB4-4͓?8 ? zA)h}$]Ϋ3 7̈c`392r1ҔU lS ĬN>Йcd;K͒^nt `mf䒢mʊ;q 45A'Z r0f\ 3F+A@fq#s8mSZ`*D:VTcm?$0ۗu7#"/5cDvSv "Ȗ=7D΃$t٤?6~uty[ʷfjB=e]*fS#iR8ο:t\CpuϭEcU7RhUGC?0>1?+"mxp~c٫-׽*k[ CnKLjHq5dGЌ}#{CrrbU#XTv2OrD1W,5ݏԥd9rIDI5,F6ۚL̕9 c3Hr_J^s>p<>n]ޱOLv`:q@ *]|IP %,޿mPLrmd2!dFАkqM3G$-iiYB(gSp /asy]&1+LGޖr3 -jAڮ'UF(Z߾ ļ質V&'_QטJM ,mWI@Eo&}İ|L˥JM"8qWش6n˸SFu'!B1=$L>/v#nϺb2.pTܼ0ORǚsQ=j( 0„avjgrq1ԉ ǘmy| x*ppxNXd]ur c a \] `CiĥPh-ȉ}?}ZCb?]Iwռ@43q I 3'R{:&$A-VIm ^\ ML#~CjuVARvxVu\d4iٵ3.G% u0#C&_?SD/DxYM̷I0_D4ImV|K x򱎐U9|r k|iU+DFZ-Gx>YS<$!)X۵* IpcD 5ZBo'9U$1<|䃙VΟ瀖,~}Tpޠx; tei['HnBeGGK(bՓ!KIs´Ϻ3:/ @,7,[/xZ4bVa_֩z ̒$>aXQ"bc.ZlT\15!daJծXq*~N[!i2HN7Q~mZfqF=~cw$xmgՕ8j0@FS]﴿\pvJM[EVȎ!'ܬgעIva%N1Ta5-z3  : i",DY!{ ܊_[OiVvs jcPIM2v7dcQ̖?]XfWQ`` Re4U-7+w3)2s 8b'GWI3h j8^z-W^1\nO)Epi JHf"ŷ! ae]7\@ߟQs֒ Jv.D&, ;c%ۻZI-$urTřEXIZ){ݽZİ^=Fp!l`2;"VUp 5_{ְ> ]HkF"5 3JU24tDq^)焱#/"BxƿZF|QKa` mU$t;ЦI7-7 9*f#p}ZZzK!MǏ1U&ͷVbIK4Q&b@eAg$JP#;Oא#31sD$ZDbɳP_M uh#ܙf2|Ʈ=)WyPO ~| ,9V*k4"#}) $A+Y[ C`vUv5Ed`vAxK ,ḱjۊUۚPX~'~]ݷyC^<ϬFs3$D-OM+1ɖ:T^3^ġgez APҧu<j$ Ზ%SU;w,߼3 2t|Ki2L A/Äg{+NA79N9ڢhdWj qI`|vKk'$aU<uqXg̃?c8 sPVU= :(E ޽to٭a;f7hyvЩ)kAL6+9P | ",F Fӑb7=+VO*nF-/AEm;%Gڬ ']hhסܜ WE%%8;g}/K>VJV)FC7RH CYG*v5G@sT,HH.H"9lZ"Dm؝WVd8 q<5&&ֱYwk6@8 m:7.~c|/NH?uJȚy A.8$[M .gx$dOӶ"nB\? ӱP3tJVnס\.f王:>fˁ(M;/":QJ6Or2f'#[8Mt qȻv .OUV"+/A0wZvz&hȃ|*g\Жi籍bV17ԇZҮ}$J#ArYXbH~@T&ΠJ}IIC1yd#B%^~Y,Ģ;iGFX9H}_-*7\0`GHA*}J* lyRb{ȳn lh1c8ߖNms#QEK$%"v.B/-*Z9Kq$ IJ u,9%8#u:pxځb:ImQyq:L ,ʂ*E_d P6htdPy" FD9nmH4?Bei~f:{Ƒ.fLz\RMF.$+L'6(xEǺR̞@k|`[u~x rcSт kQv-HZǁM I~޵"Ep "v$+]JN/J`C;?|Fl Nb` ጅMı{Hk,af@.dc (.Hπϗz/>VMidՖሖxGC 8ɂψn,(LÏa]Q|(u._xtS3(w|x>ոw&JڐpjZ o1%Zr[Z`<Tb`M )עM)w%R\S;$!@5F+]풼H+[ SdQP "Am&ΛA} TriJ% VW!I7fxX=l;t7Co4quU}M nъ6*X°^\U8yS[+NsXؑ3ȫyNOڐ 2< 9Ңm"`{"f+wzmA3jMqW܊m$x4n\[HLXNC T5Sg+W{ ?A%U=F1xa[yz#jޖށ{?q=TfD~DÉ7uȴ~mK2w@a4B`Ӭ@{ 3ϣ[ ȁ؋<Ȏ WJ=)BEߜ"sՀ*Uge˱̎Ѿ_+=e9mE' cv[ΡVSƂ#c.+S-,]Hgup3p#QӾ6?,b@tMw |z) O`4lajT`w 3=Aw"O 1>Hs`0;I:SvȂH M.k="C2nQ#`բOfU}l"6.O0X6aVX|pEʺawB@pǚ%ýA+`4.~n mzY75 Zӳ_ĥ![bU4vCUx|6i4@IO:$!]Em5ÅY͚`wXDS#!6b >K AԱbQ'#:Y9(~F])Iw OьP Rڴ #~4M7EdLR9*v6Lkv*~j(*Wy!)xS~9zt*u+{Hs7Gn_i7F*@/͎1,ke?Pb aJpx^}y6ch >Hnޣ^0x~̷6L"lS ױmI>ol?h9-7kpoUS cQjJBmx6G>VB/ǕN9 4 F30VeuMsUUqHa]-ƷlċM%_ӳ;W[?ISkLeE(ٙPT̓& aŗk FcDk47/U[߹Dڛ#}*ė%p)-y>6HM)BgbZe,.!eMם~{Ty iߪtaW<E9`ޑDV bvt# LSA,WJxLO|9NKdtmVR1"ӝ@p!X[`,~ljE&/IGO{P-=zJ$rMtPM7vL5yvs"F8JބzK'IJ)kĻX3F=ۏd! Vw jR`a̟"x( S0c-=! oXݬ1M,3dƬ !7NH*rgBU:? ( y''\A忎;4D+\i䵬p{t$iI(iࢤRցTa*'fx:˒b5fkTzB{b6>=g&D=(ܫ!} #&vS2LR͚f߾B0^+xj9g_8D#'z6encDZ| z?QN濦ބ:ژ 6Q% 1Gi$wlj/ת-BI@- ^VǐyCg]AԯB/H.'52t`EUHb@Gkj\$o$BUt$a$a:!Ú1<;_ uiw>bT>&G;}ʤX";ϚmE` 9>KBL9il=[;էBt(1 )x[0$ch7WIqXu^|"GRmmTƤ??&/)}H -I5]TnҾS{]3f2ZB*w8d<K%*G?FE.gQǑi= W%58 &Q D2@Z }c}g[ ͟뻧.8\۲o- C{Qn;_FU,-(hbj'^350Qℰ(1QL}z1?]k-K#Va+XJe赨dn}kSt3]x^0?&+c. 濬ރ#*ަ^I@Tf f{4/AǣFƪOmVQѷOHMR: T% MG x4JH tkk!:5k$Ճ>`*JNE!wUYD_M56]$^@kC_$u~{#Β@I|X4RE徃Nk~Td)1{K%zo&~eX4N?smD%?ZPSr[)&$%1hEf^`fJ'9_4Ι3-sА&yb1x$`Xit,SwZt𨸻% jUv/|]ҧ5Nplٜy>gL|.G_ F$d#EY׋ܱ|i(a8{ʊǯ|ej'W3d)S /]]2}lTdr 29UaH dʐ^0.m.Vh± Ӟ.|__^6w.XSҌΎ 뿊'{ƌöy}" NJY-*l_ٿMb@xc]_=pA{XH}'1qa`owc!1f_ɾ|p)<։k~%U{̸,ŘK~]ۄj `8d7s\/_XHf>fߣayu]~_x[ TԸ8F#z;VSc+}j 4[V70.窣;w\*AEZʖ:F ǟ6;3=u|hc0}3v`šLN] :i·03:DbA~ b)*$(Pf}ON^q13iMC;ӳ![aOE2lJ7nH4eK 2P} "q)5 dns1 gǿ?gPEWL] ];0rd:>kа|ErnU߼SP[YĐܓu7Ss@5dAQ"`C/v |&O0Op ĜXXGҺ%w7ھCR<恸3m *$Rh 'ee4YZ+oVN{ "AO`۷j6%\(nOe5֜cL4wKwy7022ᅑRK2K]irqR{d5ټ|Zw7B޲YgI~ ͼTnqPk$5eJMG iXV&/,Bj~.k5#x{R_{m o./&#6;Ű ! `MݩF%|iŎJ]r|@n2ZZutY(E%&swGUA$lP7 }{C͝4L'2Bt?آ1][My*uhY:ʼnZ0)^{ {Nx I nϗś Yƾ6/;jȾYd$L'K1Q4F};W ٱp mܶ|P:>ԣ͠Z7r̐~TGj^B.(eTIq(h}f׸u9MJdWaR;dedSV %=o욺^~EQ8X;ݵy (O@&&oF4 )qqZO*A^>%KJ-%vr>uK:3ui9z6~Uj+۬hyLRcLW;G$o44ltX*ĹwDK<|[2K:.;8];CY5pZ | o Zl"ѭ?#M֌C9(>D8'kbws&ַ4WyL{E?#e.g(_~!`imJ`φ|jw-lb$9L Z{^sy 6PW6q5|j l$֯(P\?/G Uws.Ux_|K:C1" ɱ (/~[" G$58ŀl BusZCQ+U#۬4O; %$X]2=Ƀ* -\: )]ZK}<3q7$FL (Ow%3yȏY`ƂݜL=ʶ-^b_3|9 ?DWQVc4}[U*\[v[~ݽ%]V\YK qiW0tMlV0AoxsI(y]`u|ĂMZ¥ѥ^8D.0N6kxv_< `ENIM\KZ mRꆐz&d/"OApӞt:NKqg$|H !ePU;C2D>_9 Dه9p\\8DgHrh0C2=+%x1+)T'Jq梍Ȫ|{Mu7S s7u/L%:)h,0I ρyd-nظMKcSvUիad LYg(Ua:f΅ݻM Gd 7;>tQJDaCH #`+Iiw6+bMRn=DRW8x{J*=8a7X+̅Iϲ1mȢH/~!&)-ɖ?}˘_\s WUH;n^$qna ,hL=GϼcSλb7qԂ/Z  \Lea(W.R`ڙR<'5G4\#ep2'Ė8 Z+Bqt,-7k3|Uf6<кWD CHK'G<[-q(}jD:M^a$$Np36gB˜,7_:"ʯ/jM%Xݚ!ѪHWw~pd sR#j6 ,Tq_9nyTfT /Jlȑ)G W΅`c=ly5bIbc*8,vH0:= wQ BRiK,"'tz)ىl6+aDB%ZjPuʶZށg_Q>7eH"BmfXQñ|"\#=$J8w}~(W~@>rDEM"5Ux+kDbY.Du| nHABbY,d nW0m:TQh 0Iͣewk|8HRrN[pvr Q@7$sbVMgɴCeR"5|Jk*KDdMO6%5@'HA!*i:RHԭ)x&fE32Kp59A-V)HV$LJɴOy9ʲmgHR+ߎ0}q2>oJ t" $=G|[ m^J8j]Bdz&S!u{wf^}lA1-\o3\/~ѧbҕ&Cɜ18>劧+z+B[q=I#۟|TE{*ʺF ..`)#LFynvx lCE߇tNciݦ#5_Qcla`J,J|za8KR$uz1~hN^ù[ fjCC!Xh{3Me[|(To$E+UPvR MNuykҷ # FWaM:ՊO %(3'F#2MffAYm& mG~(J3 E>TNp}k(bJꡰDud r䴃p9P鲌o6gJBО|d8A‚wB&$7‘i^2]m#[pfM|Xҡ3'9 C K6m|%Co-ޗ|Dz%()A5gl gz8c oH k핳ZXq]ח}NƎij"X]lG)s&X$i{7S,e"QcvNJy]-J!<\3!BR!ڢbx#|Wz}=ry+CM_'dF16nnIBߧMkl.≠#`+Rz,6Z.9}dδ94ahk{ %6?Kj"EG5Dbڲn-mQbsN; win .g۞gIXr[hkJHLQew ig5x66K]+f/OcH. %hO2|xiʑ U%(AU׶lET#GYM ;U=8P`¨~¥%'2X/=^p3m1Eqx2\HY0CKṳX*5JUƅlE-%Ǚ \rU{ p*-_-hBW[Q:ڇvh*w>f21{Q75eq  ! s!v,=:YF= ӹL顉D"aU@ G}7{3`r qD 8֕!h7O._5k2f T;X]gRW~r@ ]`(NKlS[ t0rpTEZDL f#˘Oe55:kpnOէdrKl=mK0k&9ޤ~eO~2[C)kè2HorȞ)`0^袦+ӀK8)Î_lTr@ uS RaBۺ% jF":,3^;IG׶%n<AX<7L)96 4YCB~oWl\;uo:Znm,Ag :X"z@WJynm$&7ZɺA-[K+-ǀ3|;i!GkrK~2?Ÿpݩ)4MWIM+bT6X>@NL2'oˢn 3Ru`0ԏ.sИ$A4:mcw[ǺL.o6pZ}> ޣulcI]wB;OTS9l1("~*-*pf31l1UM~][Ni;8Z0`\m 6LPBs ~%.DS s6|%k:G4N./7S1DΈinnю'룈A-FBmqL2bZrn5?$-vѫ8Eܝκ8 b"FԇI9/`C_4&L;$%ZCV#gX9DEvNcb4(_6skʡPB?1=TϗA%(=)hw\I_l[*#Hp6em}tkoW94 H. vC"N0(6VP[g5|ot񴋫NEِjx**OcVU/V M" G7QK$)z]|8YHxbuSQ rUlN[Ě{IS^,% >0z,􂜢i% &Ը˶y|͝ٿ|̎K6 7A'!PU `P]wβZSyfhy"ĝ4: Bھm^>V!Ňp_w rm5rƏӋX;k[0E9#I6jYj郩6i 2d5"kC#6LqLZ C'8r|Pec>{]Q qgɶOj,K=Q:SĮ.)EGTJ^)癱o:Ta߇[[VA'B^4XEuO1@ ᯃE>bRן#Ũ᢮W_ݞtfOh9!D}S_CîÅōJuqF M_ᥜTR'lNigMY$AuA`JACRa I5o蹽 _DuLCxg&4\LJ%64-Q\Bl9~<`y)mЁjTmwֱoPNffB[C h X.i TPX[+^,4ḿ;ByE)f"@g֘4-o|gGw —=+z×/Qv6X5TΞkժUуk.O{ 0b9mZ m^:`WpPD1B3.R<'l6_ހO8oTxwSujا(X5S,H8@sNytH؃GfPс5ٟu*BNu?  ;W`ok@[Nw? Qk*oibEaam21H7:TYMڌ lٰPZO xҎ&V?ik(虝Ժ_I͸6βDg"l_dP?+ITm<.4ՄVCh(Vߚ% Ԭq,D|f@+ ٠М^T l9 F6QJ==i\b'tK v,:c>NxzX9&U:aj B`P7|jmPBXĥ}me.fj!޼/Xf!r6UC"y^FQo% [BAq`t1/ 'b<ѤI;:kfMZ4OzҕpKe]bP=޽PtsMHցUl;z^Ň Q}e),fyGߓoL"&ypSu!>H̎*o[]銨7տF{'(q~ß>j!@J}bF)vJSӖ"8 &H/hͯDԨ{XJj%3 |ZC?GDt~6{TTςngȠi&MNQkpEo8<@^%_*P{JuKo;,\gj;EA2qCSiwծ'7&偠mllq$^h(5wzXdfLJ|`G_FA-Z "NIΒAaV%/uŘj4|Q v:Qb{a5juX}A@.ed.hG:Y}"V@oWoU"q\hfvZc;~}U o ~s\iFWvjуNQU$H5=.)kKVɌPp{V$ۧJ4S hyfFTZ9t3BvwKן@陑ݯ)^tn{ Z!vу+ISm= [5Hfn\SShs^r˅"JVG}w{5e&(<4}=yUvBysz{A;; v;. ?y6;!tףcmI{wfζ?u/-p@r]Y"V Ly3̨Q&vLLb!_ y-O#2mjd,Rm{)(pQo? Q(2 ~Dܙ|d.f4FjkŰ»q&Wth3\HZ3sE dE͊꓃B BOL# P7\OGM&Ut\EIVIz÷Jz?ƵȜd5áitGr4E`^Ĕ/*|"UhWϗZvh~oDVlh1u*AJq Zi &Nqrt'8R5H6\/'M%h[s ̀Σ`NFipӖfipH,"R rDw _y*܅#ƚ'Džߢ|wsHI*qKQ 23A/,;aYBQ"%ҏ䤫JNźxaOƗ"N;4R7-hTB?Cu{DMYNJ$[:GUT$֦1"ߛfAPuzvStHTrcL5e00,kR5K1Vɑ52}4>~cmq%[]m)/6D^i5iD5u>Stsͦ!xϺnYڅAX6l;b&L1(\RFs*rA&ScP㞔LN@\0,KhP/Na&I*RՌ03Rܢ?c_j\kݍP2m+A:(5 cƗ[KnV-Jimz]׹SJ4kҎ4AZr{,75F@kSm1'o!ǭa̬h OdJ^|[w_pu̢Ho @n(թ}b= ; 6pxdڋq-V7@A벀#JpZŝzSNTe/}ώ7X9gY*%~a|m pGI*g<x>[iFKVZ+T=;]'S[OZ Qd6U^cBw Y@i*nlgoZ>:l O:Ǝti/F3b,u+fbr՛Y9C$\g}Q_;$y=&!^ݕwG?|[̓ԩAD!pS?v0S863- G {zQp${bC?QHF$,3tXv{ Y͋f0)1:JWM4VӎEjz&lGN';yrRvNniI߉NW%G)3`NcjqSaQ?j`wAWC>(c Czčޱe{#<"%bqh**iDo ΰpYE]))2e5@Z S$4X%d[ K8\mlj? f )rqs+mfUbWKi}݉gOg2}݁\u cM3xswfim`;yl'kL`J3Z¦~e.㑾$/D ,1vz9lv'O.xjO.砡Pt q5]R[hRU=BnC@wBWQqd"*mXFPQGh%HrPn:=;vHut0EO))ITEiT۽~8iVB{*h!R`tvkUgԯ$9Y_Y uAIp1) &%@J m3[P#p:F ڻnV#E}3)0Df3tH,6oc!#B yQ&K`an!B [" Q-uy&u5QoiVXM 2%@3m c =NHͼUᩈwz^+!M$ C 20@8[6]3G'7Z` ۧDDy4lww'C;n "fV5sdrЭ)>r`--chtBBC>f aCЦPm񀆤5fi@$4z7NWVg_]̥DZ"Q<5è|IJ17>jk rP&VIA"O^n8tv#B5- &yLOHesXVzbn6;^%O_Ϝ~ wB=݄EjDBD`R}R Q3*FPeL&>zEJ>m > @hkP~Lo"xn~_>+~2j 6[ U艀AƶP.;?3U- )hԽʨ#ϰ/$~jpݭftiH9ɻ>Nue>6J j)G:$RzUъ__mdg[jlt pm }ˡj&}#!7V(6N@w0۽{gz`Ŝ% b_׀scߌX_<3p9,a" *# :"J%|pT֮F7}3Rr9zsA/.J؎IraA sd6,װ/C90z jpp*j>ܹ>ReE ;d@!"4U1a΄/EAw5?yַuۄh)B, ͯ2vIK@z+Ȉ @ZHo $d5nݻJdr$a/`Flv _xn6 'm e^Gh[ {JZp;^UVgC/ioyW-ssvpa<Ź|m9I#뮿oAW3Z%;c DBO/qxA ~'(H6xy冩{ '޼wM}԰A`կ 4Пd~۸*NԹ9<#r&Ụ@{PTyi(?} i|P cŭ5YmR5Ħ/dFs&5er69$Q o|xƦca0;>wd/f)uaE<ͷ 7ds9*Quיq]c”Q Z[pBzϕ%fB*GohmϛfSq2j̛' h \8m":89(ۡ Bj+nRO@hZ*֝yj1ǯB 6Ȉ){o%b+{*78|}b6dVA0חUYV3&FY[-Bx:ɷ և0LnC݃Lx"d|!pԟ!]Z_*'[kcnKfc^ĺ:U4*YPCGN<80{մA[Q%%2 k`|p^?炠[-fM ,rQ[mʪ2C?gK)5*“J}FdrΧZL#G?lPz)v>Tv:^?Jb~lF՗%4w.\}HF2aJя**zs۪گic]Nxޕxk;"nU=^qe!H1}>F ~ SLyyo17k!)፲O&gZ[:dUAG(4a",0/]#p)eAeD<`V'j^J``'TS1q ҄ `i'5U;XfjRodE}Pb.cX9tKƖiw/t|+,R1%`I. UbjKp0;oNr6)WL zlf… GEc0M5pOYX NȺ% ӳ3uI%݌PٰXt[X%P@[")3v 0LvIpt|X$;EHLMgyz&"Ů.R4f&R*烎!l`A>@}#ˢݳh&GGn-tczOZL6 M1̥{=e@<64}2,>Ώzm)!x;oW@K ΗD-VEBHiAE;?b( a0ۃUԻHyCe<>5lyRR %ZgW$ab⿅rX1?&R80FTD(膱(+7^ҔgLӖ<ɳߡ] ZE,Av f%_L.H3NBz`&]iE~zI$DǗkAdKmĉS Xk:3NO,dix04F+;qOWz\$z6P% lWQ&bWj\Y[Fxci6qJt0 !V^v b&˵2a :aȩ.C4'Os᡺WC:(UUz s}Т w%Ov ӄ?4-21XU:(Refbۆ@Q*r~`ՅI]ҬlZo}tZ yL}톌-L"tEV߅G[=y/ZW5/ Q9ӻ$x9{܍W Q(f;141/o,mJv|f N^"3߲Z"s{QN3 cK} )cIT=+U-DH[^JlPaqZ*FA<6+㊇F=F3iwũRt5ͥ@52Տxl l̾S- 'Y׳9v9f;jrFW?;thOE aamw 6sN1&: _BDޛ-^0I!-n+)7@<:r{< 9yBM#zPY -Bvux9bVM>"X /pdX843 A.gsQtoT_RP}j^O/6W-bcf^ڦnrkqxEF> \<̠2|"Ա_ZeC V[ pEȪi5.k}t ٧l6Բ_܋FTHzF>+K K$4;4~r`~s\|׈{tV !@*0Q"纞'?T9Uuz77EM(t* M\pN:{Ol;ANj¾j:fE"3;4⬁6UOhk#=Wxqؿtw4vb,Rf\/Djaޑ ͕8?*:2L1}K1¿Jlk\{o HJJ Yo:9Bpa%3)OZ[$ZrP΄-*t>_& cX8N3]!?#2s\W6ӵaD O:#=684{pw'Q|ZY=~xG>םvL-`,\* H"?_޹ N{(M_@O MϪMN00? nBRW5c_P^`1ujĥv~m,hR<>c1,n>BMn,|Aq5J܉׊= kO\@dy'aVnxf%{(_'"5pې@@0܅㞻h=0hr9kriAKW56EYF՝Ƹ> xS_IE`DE΂[J,&H1f& ]Mn ~x˱ZJc$ZhH8(퓴"FO?$yB栠+[#5e4 @8OѨMZv.{z)f٪fpsܛd|eZ Z:) *r?X?rSɑ;4# 8Ơ}DQR]aCQ} fXfH+'6ca@FշhD~R4qvYj9kzpsJpu, $rYd^ 56EI\u/F`~bwԖM ~ׄMآ.:)p*q sC jOg[N{Zv+&~xT8XG~$6)FQݰq,8Vn\ęm⎇ם.N9"γ-esfu\ 33\_  KaEyb6J+s挞3td/'4wߑ{E%eq}{UyPiDc\˾OcqNދiUlnS-`] h!ء+t(8札;Wq0'ZJFp5KȢr6"k΍tI9kL;JҝJ&6`c$E0[SEvל`N &^s3f*i1#E@Q-:{Vp@ />tYiP3~5#gGKʻ68pU+O=%!@#wr]]Ek#3z&JkGRu^,L5gBo+{҉P٬@zTE_\iU ꞧLąKqc Y ۊf눳nUhٽCxϠTY7R#5<=Fl]`mԇr6XLjĠ2 DzJƷݰ'O^ap紊a煬.=/u?͝?rѸݾhfIpNM$ͨ 0e֙ \?Pq>شo1˂@֘ ij=qvq9 G_d|I̬FrA #O!$DpyosЊBypeX~]NnD(M'1? [َ9<,if-2jkt#@)&;x{캪4P{SuAxK.]gW'}'uqXcdc)Cnw䃜iLH?- %*y gȱP}b:6A`> q"&~oHӎjzxO=E1h k%gȟϑOXO~r)"뭼3)Ż(VWSȲpYˬZo,,uu-aI=4s47,wvF16;gcM8-"ك?E~,x& ~)B>7~ʠIjUñw3u),-՘9%9!t]511ӛ۞=nFW+ZH(M'^wf^CŸl>PWiO!بp:4yJFG]8kuzb?7pCQ51 xi\#icS3P-b2ٮqzl ӂ"Nƹ?1gEZ}!1aJYol}MVo'OA |̹9;*#\2vv$xl `Шi e4MH~[s mVv u\XIЙ_% U6' 7LE%nlw/8v-t Skg\sɝ7Da <K0xBc ŋc3!=W9Wc׮5k>msC۶!qN0V'Gqd >|}~-P-8Ne;Gy0٘!{*LhH,E Fj~Vcg-(O&l]>?!yy,DI-8fgXBq2\%ɅK~ϓ6eH$BB^Ӫ0syR݁}hԥ q̤}cLyI 6PjD9/|(2wa0 ??fWUSuOr̮ ,QV&$yGCfZʚc]l5­lSu:PiSZLMnbtb (PX @o5??8Ht )a/P!kA(rHUs4D2I)C*Zv  ^`JwհгN~f\H] %W»Y`#D?s3:#  _ZCz>f <<]HJ6ue*l妝),zT3C&]Aj}ߔڽk?|r#3 '#1{0t"p:4?joU.֩"DPٖW6xc[RX,\ۋ#-JP{ThNEx Zj׍ Ϯ0VfmK 4Η.n4pjnמo4&1uO5Z^c)ԝ«7VWG<KREPpp I n4y]]]t$ŃLmrvKx;` Cᄁ>f x\YRe'D@Q(?&A/m_)c/(hQ!}jcgX`;9.標Hu|4V6o"4yts1쩸ne+T5ȗ>uƋyQ\ $2eX4w^%dʈ#ih?Wrix z_t vbf=31w͛eD܍vriFGsrfʽN $f⃭ʵqu9N=``S7xRaZd"O^ULI@[c/Q~da:R2wG:2t́\O4 gq"n&3,,&SHb{sy) P֤"FrP#78*c.Y*8Y>L (9'du2CB2RD}qA)w:|},e.F* q߆B @Ii,0 nq2ށSΜsr0.jo+zz4~}V~ڬnx1m2I$:efwe dM8JfJǠĶ&0w s]pӰp6{S҂3[bqeDalM Gl :m%uѐ|'3;TSP(r܇H_X&K(j*GY&S T0tn=Oˣg?d13H{$N# {E"[ћ G1zqP@(e )+IxjFAw<6^ؤet3,Yy~`{ 6aJZޤ5%]lz9v*{>1D| 1xłA!.ς@jY3|l ĿF бFbwq~M:D躤wWq~y."y  ,S{fB^*=Fn&{%32PJ⁇JU¬d]h ޲={Yb ~ţS8UX{]>vXKyZY6ꅔY/(>a V/+]ub~VR'$jJ29rmY*kO᜷lުd.l(3L9K`hчgH$n& x#kxR| U[t&ZxR%zD0F3ί™Ȥ]Z:U'W*Rs~j1c@Q9zj|i3> _MM-6u,)HV{LZSh&y[p|@a:ƚ7,TNq)\йf7VI^.c0vIP64d &Om*nHl6kx8=? t{ԻSǒ40{fSJKl*emo5r8šC_Gi@`O!.5 `@^rqߘt$B*lf S:R EIAt7^F}'ji7}`7qA՟FXn@]U\+l5beɚzloVMcJ! /HDh*\$y0u \!FE;M΁3!Hq>F4F YF9RcAQH/#w DHn[+ 韾c>CHV>= t9xqa~ ;>=\G(9"5d0ʔI" ٟ p CCNsbnn| MF}m)5\LH)W8v{0+NL-<: w.%=J:.Oį5,+ǼL!0 3@< SC^s*,(e8OH3. ,/_?眫  ,3"z/pJޫqդeQWT狑*)y Mr~t]K"];[1 & D nc)]! 1ĖIT9Jc|[݊slFPtELR2 T )eivoQ4Uϻ۷BQ^-35s hp*g>ɪ#.-k]JjdLGAs-ڊ1ua5zS4̼Lf⿐ נ())J2N>MUa_ 87kY]<|>:&WKdO=/ N! _sjCCr|$HSPc6IoFy#jQ:s%tP#wn/޵ c 莊g[AS OȨgrig@S94q!0"cNǓۧ!Ť*[\1W{_T({ί̠'V ʚ5r (rAtgsW(NDɝZt^cE)؞H/˞bD;8iU~fHF="2Dغ:KS&',X"zq7W@ Tv;-Bu)k+DN; {_'Z ~NΈI/Τ+"(&,%Yرa7J68 Gd%&dxeΕܶ!,jY;&Gr`sv#+Qn@89.@}ElB3i 4ߵ<&g؝Xᇣp,MHVr'0kZyC}^T;c@4$y8@nHob%ȱ ?H Tξ܎ !L;,1YwP  vN[\D/0+łMw&Xr߂zS -K6e(;6 1JT UMTGg55x`W,,գei/xN(Oڅ>* ^O a8`!Ka鐻ǻEZ&۔=0&L֤D `RCO./NIȲ)nj )XdW`GMWު&Dx{Ҡ.(~Ǟ6xxl$ՁOV¥C\ci9tYVpd|X"`Jj!<*ǁ^P3xxsP\кy=aߢeqI^UP,&=?iu@N30$5mZ6B jѓU#YrۧB>I}1~[B mD&LijcknS6?A!|8Z+L֬>}$0vr"<*Ufې) cMqǩ͘" N)w"5صn&Gʹ3'Xn"~w̄5mSKt#JIk@Jə 8&]m"{sr&,ωZ4>EL_S .^ ]bEˬOY!!=o_ك |`P+B&fuJeC0$zG=n s\N\*bM_  |)WXKĞ ѫ8=nwQ=Z'M0T eMe+\ w(H:6WY zX̥[ 9k({#*L]rT͂KW0 ɟF*戙ҿ/Xv/+Z>0WZks_-l<^\1!ߠ{j%@:i]HpZ|$!h/+\sFUgwhl+qՒ &NbV i68~Z';Pv/>PLJ ,Ol!@=o`)(Nlf&ෘsXӁ4 fo& -e5x+} ]2#*5R|K?(cb(@; %+T㩵uy'MQn,ig$Hs~<=Ԣށ; Ǯxj~ج$-^hhfPr Е8Ӎ߅jSULo|8蕢1_ܞTnbKerdX ZxA@v&ah<ҒQNxӨّ WK& 485?t77K> 9mtn$;SNa7@00\˛Ml;u-iY*"XR8M vIatAC@H2n;^+TTMrӚH&H+'y8 B $L;}LJjer{d0n_:dd (iE9#,"X*3V]&~`cLɛ@V=}<"FwcUI* ܫɠ8Ce2=p8pa.{e oM3$Y9vh?D@6+!/*޴CbtTV5pz:cE6fMMQY}~XSEw|l~mW75!Yv.cZTڄZ(ʀ_P\)/W_j5' #_'3P ;?}NWrp8NZh:eHy]xb9rMhwEHwݻD׊q j`lSՊ:O=!34f"?>GO4*ZK}<}(?i+vv')Ҩ;ʱO[nDݘ?/u'm6۷z}Lq"Ŭ J_0!p6{&%%{6'y>8+TH_Tߓ˯7٠ 5zG{GGe'FgaA[FQw|v sѮq3zQԏ˱јuvxϭO[fE:Ψ9`)qO`QtzZ`ǭG7QE` :,ƇVkI<~qS#QT8K~J>p(V ܋2yoUYsЀ'>YV<ٛ,SVE2R79# ᄟCM:VL.!߬ҤxIvjRh=`5KM,Cڶ@n~TVޙ$FEGԢSV2_+\!c "^iMwcU.05!Ov}3sHIy1MjU Gbfȁl\Dv=ER)nK]t)`lJd+ >.dZZa1lj0 k)Yb{."KeCiHN[>$4S) eZ [?d$Ģ!v{vrǮt׿㬞gڨTVTE=}{>[j{o[qg_ß&J#Js`YSK>kHH үVNLzF - @_{o*`ղMffCy٪,Z4\&sDz;gcG>~j~LZ31}0;Qx4t4VMc T~kzTU}[`+C:ek2܏')%6A we&\x .Q0aPbXSSV]b'^E0q$L۹]*CdIKϺax~7>іpε[.%u#ҌD|/@?;~=CMjnˌ=!fY'&pΊQ増!NDDU(Z]#wMQbޢRw)Ү_!—vmf}_Lt/|d8xrv_Za6h}}=C砯8tcSPe:x<+ˣf'O)^ )~!;C:M'ZHz'򽢙&<-Nj}fx.m1`.b}TܢozLh-*V48[S.x630#۰+SMB Vn_@ڤ?:4iʠ[t'mkkNUMPf PX9̥9&^˹8.KG_P_yf [m=^dlPSgӹ޽l'%浕}W$'n܈_¬MӡJBeImott&_Hx PIZg$,09‚GeyjkDVӗg7BrZefS yZEj&'c+/4}+ |u*!3Rz@#[$8=RI Ty6Wb`-^/K =lp_gO5^X _ZבWq0h^_qJb[=\H&VUz7͜0YgmD``h+%L#7Ĭ)?H *3dh/yޠe 80j`|#n;rHЩ͠c?'/!~:DFCrTkG;@Jz HΜv Q6KI\#2b5mRB9O;_=?+'1%Ei>3o2e00^l ףVǒA:Gw}K&\ dXHy;% :ڣ.80t9Z{}'.oZ 'ܭ?,9U28%^[o}/Sjr%)=^C+X~tLTᦱke#۔1:W6sxeԡr?buyGiPWLM˕¤(@$/+x$˿\=so{Er-/O0@z[('30CvuHRTWqt>EdO}YoM!3>S/#0[b,B߫iobُ憢@n\8=#U^-~JMߵ29J p㎦hgr#HM%o"# Ghl-6/BtH%i/.|cB&ʶYx pާqW-po^,/A%)yS]8ef&c ə,7k4*!U> dmf!/w{?&+;,҇/.qgFv&)5=ְm nIƊnʸ,|&g(gxkD6;q2- ˜x(U2$R1!&D6ق*RH>ԤHQed'㥥 } 3hl49 7C. @s{xj-Uc[t;5ײ9^?}65 z**B xх6&,pݷɪdqu[q½>#8T]4+.Q†t(^C 7-  lV+%sMMj@j*D>Y<7\.ʕwuZ$5 mDmk J1kRզ_/KR!UBh'{bCraI>itJx!cc m#9'6Y^\GiI˿F|AJJZʮ]8K: qLT4>TqDRWP?^ltNl-kˇ ɰh`L>20Oe HhOϟHl\9 sGi]z:)i#e1a(d&RnA>b;puAK)7Vr`1KSk~52+Nعk;k]rQn_JU2nkՏPpW_sk-HE<RRN^/k w&Q}2,>R}"HQx8Mّ>{-/OGAqO0 @oܕJ\ֹ[0篔LY|[$vwp5 geӃG+lXJݭ9 &qghۍD@]T:#<_A`T?AakZGiR;(0R1X}01-#"X2 :Zz<5Ef2a=lkKIT$(@ Gj$,"bcw\_,4uM_|f]+KXr]~ @^Iv+x[w:z#Է}rz Hn9h[Beΐ]$/2,ۤA klx1\\nZSk{Š){c!|`5n :ZҸl,t-ߔ0u8W?t+]H~KCIٰ}eɇY7y8RMhaw,y~[` !KfwRl?d hЗǞ䂘whbVZ"/=?$3;30^ҁ/+t9]нPȂ-\)BT jSDfk'AIPl 8ޙeX WC_dX O)Onƚ1O &d] xx:q6DY@;z6ẜs pv=ʼ..nA&EN#HI2J&-m>2{zo9Ijsg1rw# PW%/93wiǔqN<;7(@6voLSE A~70n{n181uI؃BťvD+I-y}RK:y]gk_X:uVJxFH#&?"{n%j,`u`1 ')y=݁YhGg(ё+y_.,F|ied;;rUY%(]7tjPWH^ ݓ? h޴fzFV>/ٓO?EsID@J1Oi /[q5P+i9S]pKҒ\BCP,vUMRMڑ4u6>BtD8M z]gdN|5`e_)Zff;Ꮦ7[HbR=y&]Ԛc6f}lo'Q"0_5e+z|ύ1PI3+W |ϒ9wS[]2>Rt9tGUdjUttӚ*nV}ݑ6{ͤ m`a}vVҩU 7F}~Ug2+ &]lݪsG"| #q(įBeʇ[n(Z͚m|-9@7Vo|S 0dCL^WrR3cn^͍_CE8؁WЋYgeqg:7.=֮ ֿW$OlBI6:$3GubM k3´'NAMV#bűԸ xry]a?CI{HBLt(;= LK+v0G:Nji WjcdBHˬ9Q|_9tgK#vqyON`ܙ=Ӫtj@^j)5ٚA4q<&CBU+4s_줤"*ƩL"ck vri4嚉RW)O|ro hACEFyl%yt)* ƣhy͹&܆HI\z3p~H%xi/'A=1ag$yvs p<wNgyJAg.qL]@-=rBť1;QAE*tkN\d3#*OJ ?֛K@Xړ ΞafE*)iS R0 A[WR0|}ǴHL'̭}cQJA=i 9cpbk\es_uT|Mj2ru*C Da wSi&s;MoXP?T{, 7/aMt֝'F@ϼn{.ɗx_IpoԪ2Hv7:CzE;?؞6O+*F˔`bz[<}z^W۵godqncnY͗ass|`-YOŵ_7'kQ_Dn%   ^Βg<2+Ր0D_n/&lgz(,n \EWAYTPJ|q[g>Q傸A{!MO۷zrV}Lj"*s`Ns0pHG)he2L`>zش QxCжsu uVqqo>\AJ*֭r"٨׎gw\RsM}%áC5Q>z\HRl+L),%zes^h5f,qd޲1Ǻ\xH"]Ew_xw҂V /rtW4be^(q Æe`PAߥGyxd|lj `]XU;K;wdHw? 8'Fm8zzP @Ip7ŪC6eijm8Wty- ȉp3+{ɁzWU;3zMl@`kSI[KaR|n=S3gLƣ-7RH"sf !|9(iฦ7T:ڒv&D WNuPkSO꼰U?)] K\"ll'[Gycg窄_%Ѧn͸Vqt0g< %N"9AyBߨy&DULm4ff1-fr/;ʕQ%^$TfSQXenz>UO\$b_NUq<=#qhJVl3qBۚ^q9ŤSK#wn~r'tebZ응i=bg۹7,]Y3}M4=cH:k=~UUܹ9HjU^-$3!L3vթP&f@gŌpB&cZiMoݦ1 EJL U6¯- ٸ68Cbs.wd֌FSLx4xcyƊ"m٘D3S6 ɗ w"Pf"ns$:hj&Zړq3=P978PObLv)u{ vQFx3Q,G>8'R9rEeBX8BYa#fSehp\K@ӯ9̸).k< H^(6#~z$ݔ5gjG 6rfx[9XlrtUڹ{iޝv^[$.sPBͅ[_댍&܈S~ P:~N~A@^Di;)w# ˏ!GaZD!%'Q`5h^_ |3\O?]c@$>Mڬe,m[c×D8>lg"TapC;-Iq uPhuL#NWh}zNzoChql0h[yE_5+Xe ry+(4ӊdE)ВKQ1Y] {|;E`xNƮD2(mTK (ub=٤[S^GXlA4+,3,54 ~*OSdАHt^;0>x+*m6m%9;dk"':ri 0"f_^l="gB(j454LrA<%LhTZ#ý[`Yދ=WcU:F8 ~U!TifYeM ›CHmQo[~xK]ۃ瑨R{4>m1s ԓDEנjjx<1B>~~Uf7JrwER[o_x U_Lnh ՙNc?$s^ A(]Lt`V~C˱&yiIDߌLNFfP#K2~LH̺\$hMƐ9v.A7 $˹.42JwsR}Q590,#اǑPI5-%K$]ԧS9IԦ(qRyL˞*y9)n}\ Vƒg& /V[:=b`>jmE)$ܯ7``9;*)̵!R -zEFK-8\R>{-ɔx\ʧ\1 Z䗥Bb,|T!J 1DX˘꣣kKm}զLm?Ѽ0t EW>N%UTo6b}j]Moسg9##[8ĻĶŅ9?9Isr:pONqzڟ=À>)F \@>8CQ z*\NF7I mJc GW uiŦ`l9E"؂¥ `fA= .aHZA${s;~+hW &8eNHEmDgm^cQLC86An?';3N9FIy BBt VWwǮ1'b%錚 S @iw2"XDUr5L} #9?MDװ%jV-uJy$2Yg R`O2& N/ WV[@73@U`ѷ;\2/lr5w+)Ű^)ac>J*ҟ@y'czBգکo&j[ q0t"n:HQ^y(_߻O- )4OwMF~H9^e3*愯};7wěw(̳K  ,=} RsdzJ'kT [;1O_a$ AkC|TvU7C><-WaAYsy_]3җ.9E?p*(6hsrSRj=H66|nyF]=zmOfߔLܴzƷ=Z"1?&愈%~h -ũ+o쨤P:PoD3s+>x ׯMP&n聄$ ] &T|㻾R dJέ#DݎcW^3w} QI {c/ gJmEe,oPXz~ jHҭn ?HQ)2۰Iўj}6) y!!7j_J*ث}xpg?Zk%>uYXcE<~@RqHP[SMm5*l-R(VYF0z i,Z.C~1Aۺ駝w ]&=cQ~@}"[ z;O{u\VIysa^ڱ?A@Ȳ`\l&X9Ϛ e_ndӉu!YzTr(S'I?y1Q)CXHiْ '\VqCJ>6ve|-G+sm~oW e7z->*QtH/,h4¢.Ax|owUU\7u5[!*L?u`Md=@@x.x>lV8&?2=GOilVNIa:4N,ׄGRMzeo1]`J }%AUD%(R,&{^-ĺ"qs.}uLX}OXZr1ѐ>U>fk GEVj.ЊiӁI1 ]`y"8xۼ1 Z r ;ȝ~i-.;&uC5 eGStb˰V&C?z 0[-Qi}+M!+6|Ո|Cp'0[Uc7YSSOyP|%DC_ythuݚVZn b3F-%Ou. Kd MǼO6F",ʽ&/X(*\Q͸:AGBSmwG^dD(蚈5 ro)!_G}Q0S2ki\>]~wYHm!i L҈Cь$\q{K3,޶+H,MJPfRl?H!bz0 1AuΞj!yQ֪S-oeC;OI88_C"s(+hef*1J.h O9&}S Gk=u(G+K,Տ=pyN6LcC>2,"D3-)3mZd!kl$-&ZOdCk;R#[Vz<♧hq>Ht~ xD3ƃqt:6~%#Ѕ4N| "F+}mia~U vQLd<OE' eΨ?_ʄ򗼱K}f! GOJLb55WTxq[}^TEt>yA[oX1{| H=p~?">muϧ&JWgWֈA7. P*yK q"3J䞿˥S RGDb[ffjʙ<3]7pa`"M1G$q]Bīp\lmiar*d|g.F1KZQtd~.@9~(wIu}5QvIrXzEW/7{]EMdTG <q%u6"&dn;#Y얎/!ޚz)+'%~I{ ցe^&$UqWn7TƼFф'{D֯):V1. I>%7,mȓXhw0Vtz.Hgo3kix6sѕVpGM]]œ3۰Ej,q!DҶֲ_+LjT 7-͌ d$>`ɂ8UBV[y{,xXgoQܴ>h5 OCIfsSUv !͢T4 ,pb*nKgEt&hF]35UY[W䇙nKk3oR)wi~"5~wvX(%!FXrțmpоQ{&p6 ev_x*>5&\h7Xʣ S}=?b3#~Yj='cV)ئfBF# ꬶgv<NvI?4*_8܈_rZ;Rjo\-r1׋H22lq}\=H!n0e$Ncٰ&Rs׵o~-sSq {N![QK;)#J56s~: , 'a[15Ƀ: ?jV] y wX?*C./FH@X*s0kݠZ 2a|`ʘ}WKI:h^ΒΦ</·[3$%bP42B"}L+Ԭ,co' hb\I76sX|)<:n+X2@bգ2)L$w{Q_"zjU"D4h/װ+]ۓқ;59↶ ӛM]5̕f`H( Dg|б$%4bD59H.) w)1m )~4D j*ʩlm)OZTf.q_z:| Ћh#GUWD%oຂBxFrp'5)|^AG+)ҍT3kϧQC04Ar 덪 gqh# QHҖV}&C1"j-L$x"SݨQ\ W )C{|W0'8@좝im\z{7VMn\cþGM.ZMn[orA2"(]p22фɃ`3fOE[yסMTE1^]G1vg#<`n`MGhQ J\.yj1 J-iڐ,: 2l8T@^LDTA7tMխZ: wpLmriLUG(X|~e:C20\ p̛=%Ա~($ K 9_AQAk|%BҸ!aD1o'$Sv뵾E6U{wvYu)em] ۞8TᏽF7nRT$[/\ hޕu_Л㶛+: r: …hBHsSM%S82Mw|? 4N9 yFIvQv,ypVŏ;zw%/LzxɄtB@}x2T\)|mZ-}QJe 6k 㴩uj4^d*$&X"9/(Fz&Ca0trD#lj7S 6g:=& hNBg% T(%:W QpR L]n]oU=/ʏi,cBiY,7&͍Xm 4oK^W5_;- )u(TG X7T,?m߯*;@t" c.êaql "SmF z(_6lN^.I-u80T\cXID'r Wi[}=Ȇ yԿp> @D7Dp{{;OC>8E/[ "*o1x/s<p4Ioyy9{] N%ޑџg^)vlijzUWgExM[ НDqdKZ{D:OPBZu}VuqJhʋI X)ާMwg^,k3.,FX]8Fi,[y 7IHZܧ$AY!TnOvd_cVEd4#m^)`λiݬ[Aa0^x/uɋ9Tx+[N0uu>ۓ4FQ#6.$T ÂO m,t <A&+Я6 Tv1pRZmUA;%긟63 NB@EMkBi@J&U7eܳQ s?Nϸ&MDo|*}d։l| Xf#Tt|i/ ٜ&; D:1O*@R`4ˌſ7IVyB]^S2|-I>;,ϟzu@e'?-bLN2H_[S/lnqx) xW(AkU=XC7>.~m9&&EA\]=e" H\d/A5(f]z$u6 UE?Ǯu釿DbpaU}(#&J gѳbGq/ifl ̚27 4O4~H)ϕCF؎VTNlvyw1Y1[! Ztӝ68[PrIa*Ջt`2zT5wF" :Yo U!pt H]ymDtN5?^ 9P74ӴN}^*22terJa Ky8xtjLs5U%2x#ڛv\!^=W^TƊ[DeGu\!'޺3Ua]>ۆYbaBK`o贐?(FGwێ\scSЋ654JB'+afa3ҁ|r': ?_^s7e@7,W1X<kvbZAcؐ." bP ޗj1ەir5mA &ܱ K3 i, E*E3BAjo/A~t*s#FIB^`3l.aTYG>17 _5p=('K%s\#{ZĭfKp Q 3G^+RL;ĝ?M`!#G9rS*J%Hd2ڦwz[ԁf{E(.P?/h <Ɩ̦"W9ˢzmhHiZSFj4PJI1"书5}:yu .ƥ!~ֆHL/*DvQ#?fgeKx+_xbg]ĕf }~^Ig $}7uuBtI%c%eaT(RhPTU<3X"W8~e*[fi<,DT)xB~_?dr]QZUr?%^AA0c5 >^:̔T{ nLokgvGaEKB$YZk>HXpnEע$۸=5名m li4psJ K$+q__[i ۘ _PCtӜLf?;%Tərow?pa8dGD48V^r:I(]=lMTaaY1zn1AhJm]'hJFq@C9 D,U8Y4P!Q2Xlȁ {2\wWwj~[dyohe^|Xk ɡ7lia)6_DuZ (~!,m+Fgq C#`ܶ|MCG]~GT^!N6R3&žlQ!FY$ BO͛Pg{y׼qavG[2!&Lp[ 3))ă @ 6;c_YZعcbfu3;At*ҶVc 2j>N4#-#i/e5۫W7LlBK^ wzk' ~07NLJ z] kgEːnA*LJD{ Uwm;p$ Ob a8uY)c}/̢*DJ'I%^%;69cWȻˮ [֑YcwLn9^}}`^yH 3)ʠi.-tO |v(Oz54 7u[k7T;-}mI3>ZghmqI Ǥ./vQ` 4+]%HJ/0OC4UR٤fH՞khwEp()d֐e@+0ᄛ_]#|9'$aBt%˼Zzdl`|JHƋ^e[FeV*@'r{w}EWgNA4c{mE82Bt ްEۿ42p*4YbT9A̠y'KKwEM:ܘQUֆ7i e8xr UC qq-ዐXTGݗ%4;Fymx3+9ϥ+\w%ZTTrՇ˵أ MxLl$efIA<0yٚ&&C|+(N v_=Pb?*oO{%x6V\M; Dq3 tA- +H֨ Y#K]pfs^;@Nz GZ #A# nj1Aĺ8ʶX3=!cLS "Q}l!1z?a`1ֽ\ZX[kS$iul-N!ɓ X9mr:DSP-cp|kp6ApxtWY`?U7t"t`6.FCu@cqVAP0'8S#Ԅc捂։|::C8A 6#_:vW,d]AR2c"e %fOGdG&=F.ό9*+dBz(c m8ԱO[~sOWTaF #}3 O~5k[:P*.m-;: X]$߁ōn{{ASR~AέHct@mf稾y29g-7<0bK8,=^lU%G+VE>S/6&,e7RE2.b*;&jhZ(FfWlR3kD)/Om6 n5ouvT owajX=4u2z 1E xO@+ˆz'K>;ԵU|gm#29ŜŠHdPbFOot% *Vh-#AEQ,xUsD uZKP!"j\"~RR{/X5(:Y#w݃tp`lXy0]cQ{ٳIHMA7" ĕT&ApU8nu÷(:9ڪ`\ž0t(>U;.EE6jL qlyg+8Z46H.s2[PNM\ܔJ9juuW:%t0_dRbc ؕeBf%t _G5hvY[5di[3cJJgcwXJ~֧ddhH+{SXO Z#\mnN+⡭V^gُEp)gGf@p;B_d!XL>ofKOB~F~[6L*q-2Cb`| =44"Ser*^wL%PdŭfmD)r>9{ɥi;O=c+? ި?/2^ԹD@vh/~9!eocYCIIe,sn$RC8%]9-VneH ac)MN~V.A_ڛ0ekGt2)F=XxuR {-yXJezڳn%e[X}}q~( 9@--PZc>ɕP>HbX&"nya0D$B,-q{ {"Nv Uy\&ɏWG)!ѵ%qտ.xc88sCRPt#KMFpVo(T/b(m'U$I_w*ɀ>E:|Y t;<0XmY_vGaUgxY<# l&F}Ͳ[}`JK-qY1N fr:S EsT-H?G/5HGÌQŠ-/WIRN#k䁧&ω4|_7Iw:Sj5/ #]{f܌G=XM}4-ftكt< ꔓ^GntETS*(k8i<Ӯ?mH/HCqBs2b(S%q99l8ս=Fšc啓njl-EI5,yoދaR^C ^5;h`Giu6Č|(.8X\HEYoX0o %KZ͟>Cތ4_H)rhhMt"~*ƓmE ]`D0' Ma@S]ѩ$Ctղ8q~`qYX9ZsRb q7 ɑ wWXbSCbyb詩QHcϮ$|׫] _|HOTivr9k`(obݮLT:2gO L+9?!.Pc9ETj3fz1a n vI%uR~픝?'%-0؝.>HIfĖ$!V |l#]{k,~#X\"dб1Z궐VN%PB dJ~+e) ;%օw*XoIM֖Z+D6{se=G;I=1D5 Z=?_CÈ B3}t)kߪK4S:^*CUL'%kp/ .~SΪ3~(N`]L*EQsf2@0'sD\ΒE) [n|i9i݈Iư\5o_X퓥~%/Hos 2Ces/u^i b&a+hzm-7كg)NtC o+9u<\LȎZB~a-G܈#~,0n}{? N,]#zfTK wmvn4NQ^N`=LO1ꥆN} r5p ?MTYq+~ ?͒a<6-e_ '5UxRbHI忴?ergl-pk്5hi;' ̆c<ݺ Rg^|LېJ”2wAFBJp f%H[ +Hj'md>~D:XGmў -AmHl](1銔 d)WMUB\EXFD*^ SٯdwM^b)Llb n=n/ yf(P/Ё`3Edx 屁I* Zu[nd)Ļ/2kYB>VOt?vttVȠo8."ʇyI=0[~FHIw/&;eli0Kye9cc \C0|<^35 cO]]:_VaSe\kuJ^Ei")8 ,% 0Nyu]*oYȸ.&!ś65+yن]ϋSKY{ %`{ږ1Q8[yPM>ձp|^T1i'!c,{J yl'*[\نu[%f <.Tؠq:%1 =yfi--^]ݗrden*l%௎omû(/5+gQb)+H i%f:@WΟ̊B'327NAgfP,ÞeHpA) r:MA.WY`l ej@)خL3ȕE}5bK7oB+;BV~R$znۯD=$& -b|랳h"'>oCXIaJT%%A꫙ ڗm~:'Zjާ٫EoE*U*S+wqlߞ`"iǁX҃}N ;ɂ琒Q6V/ZɀEh!IľpmMۙ5ΰz]2zyX502zH8ZCMGȸ흷j,] S6'ŝ[(pP.fnP jΫ⏸& {CҲ5tD4 IOƴg=׃8yWXɊ>шM&Rγ RhAo"h_2}>ikX!1O!#uArK**g flOZD2yih*vWf9>jrϽ5EAsuEd0 TŃ &#EAWW:yD¤?ɨ'![͹SlP9ijb;/~6Zq :Z>ʠqj􁞻X<֚VhsfjE~XN{(^R- wMA7$3fgu±0AC3,OùAĄt62RCKI'O=ItQ #Sx\۹õ`nxq5.'sxSхAwwzȒ=޳d Ѽ WUX L't{+>q F^ JV}9*Mf5Î7U+ Q C9gW{@ٿLJˏ >2*ZrɭhCag+[_؂ƶ24!AUI!y`u&4xk+eak} ecɸ Y kQ=\hJ0ڔӚA;aɷ\_V0C=/Oג"@Ë/ Rjyň(]~?˽Ec@{azXa@|ro9ũ|_g$Pg0[2迋y蔎@A˕ibSV5MN1^ /zS_ȜF>`@6iAjWg=gIFĻ{]5`GzmuHr*>bnK O>Q\r5A\| ^(@Il,_#79T<hϮ^ǩߠN;ա͉WF*Tk]U`G01dJQg~ֆ|ypl9 v9 S};Ǔsn[*] ac}b>ѮѻUCP ,UBNbrɞLH  N-1:{H> U܆M,ݚؽs/Im#5ɄJF<1RJ^dLG~'7o/]]T|e5I$U/!%%N:o8_-GH"M@?J.dܠ ݑEI[/_ LQLihck'a:RkԱ91q.䞇/<=P+oQ}OY6hIKaJS}q+K ȧECq X )|uƒhduw=^`)ǠpoGm`z.WI2(g6$##3!븟4-`;K۟Ƴ.@$drrsb  U=βBW%a|]QagfBA¼؊D(&}#Jl4JB ƙvX:i?)PZ_pz?JJ`zt OeeP@I1{ y4I$_ԢSQk^}kI%磏I96ghRTx`3ͥ`.Q)e7ޒ5you pK:uAlJwΚu8k-=)+(V|!ŕ\qW@T $mYݯ'蘼c +ot'K> ߔsBM4Nic ^͕ҺOcB{6PeLK;8R~C.9\R BҢS0,GRɺ~'I~3"Qv_)SďExUlդb/$_Y0=ޫ*u8.-1 {Z;J1Qf,D)h XSGpʥ׋Oh/W#BhݨR;T0KK ۀ%SԹw)exPM>EEҔcL tTTXǑ.G߁L4aBh7?E9Z;2d8rMw[4ODVjhwtFRґJ߹8% jۻ{geܜ-ZAG@jzB.^OƋ`ğGU ;HG q8|I(AJ^3l76Deအy, V>1*a$:1\u0{PLYdikkt,MNvJ4QhUJI>iQoddsr/z'Y^0!2ʤevPZ!ɍ[^Ltq@2%^}卄8T\[]0t!Z8^Xq ~6kH~'3[s<$QS,\0؃((Zdsh#')-fZ8*oˡBq 4;s;|'JgyMtY]2 }1PKNI-׼)MbriUe\IYB-zk36ld05PĚs `n ,@"HH;q&kµL8ыľlit-|@$oI3'.י٫ºXE|}oWoSwboK7l `y 5Np݃k<΢JoCqZ]wP'i >Hr}M~bo}@~GXj⯞̯sv6dw.;6Os"^W`6á(x3Df!^!Ow>؛ Hf6tZPG3[62W.Od 6o]KjClӶلu &$=C4v-]Fz]hگN1h#y_6t* 4jsG"y- aFhOOЃQ}58}^@p`}V̺pUu]~4W#Ԃ9D5e~HA,D2~4v_ST8 kUqpy.S4?A5 vmE4qvk,ZO示 wИpAfr) 4Yx{';^'I$5KĘ-גa,1+'%1?Q )R؜\:ƭ>tzJ  ^ F]d+>xOuP"$]>^UP]zVSo~gztLj}OH-԰8~ C#v :A}~LБep=w`A(-7>x&5`([j7@55,Zz(BB%~=)XJQmPdN3` Nz}HRoֆR)9ͻP]Wn\c4 bݗ)A3="w } 8p$MݘT }IQnhy8oPTC/0!ۤ"T#mS9d ECrU>n.̡L Z˘@*Q#Ʌzc9~ۂxZDITXns9G`-`xN e *f W f%YjEo'Pp`Rb5 \ÊhCq!V!`ٱt5T3~#.-G4@Аm"εŔRՎ廨aH^TLVNEm(I󴊝 l^>*>Eđ'wb) r^]T#7Վ8zt[M@y9zQ^[ $D 3+qqդEżX-_6#ڂxOq:٘/؍`A%+rF$FZɍ ^9 ENPS82ʭP|ۧAI?dº@I l3^ǂà ᚋތ a{^1{#`Hᄼm7Jb>"A{bk/hn 6sofA_ė3 I0+ <6aӿ0%Y>T 7 )ӌB bs 7 K+7]`[?rWR5n7zSs35$!~QcZ.01ED!:@9v[4+(Bhnj~&뮧GQ@)!ޟ<;!^fUseP<b7ΦC(7 svNQ9v`#Oo_A.庝"JpRY`ҽH8 Ts(˱E yVv5P\&c"syZ`{.jlw}θ @4HMn.:Y"͈_*M?PE+q4w2+W+v\pOMZʊQ]Q]fGpS"o@1*#73LXGg|yXN怨Iq`¹t5}Ev ^:@#眧I9x.e㗴e)^ V/ DǗ16cJ-LIػ^Ƨ)@dOF@|r;gHt@ӗ_k u 80\l=ܽ0/I'd^z6 2#Y"[9:.MqdL(c Orcx:)0v}7K] fԼ0**1Kˡ~Pq`nlw'dQA -,v.#. ?_~\sDf_#gxS+ Gߢͯ7ic.xjff#U-+VSVTbB:Ͳ3=жFA#g Q:t$j7.exvnbjJ@n}>"#w!Z7K^M~Cg>!`f`trпH;b߷" J^2{%nˁo=!3veE&yy6~xk3`u]b*6jy!V>G}>Tz{pؐM^1 9`bd_"u(\z~5ukڊ҆y@=ns?S}ԦgO f}{&Ƒ2ֲΏueSklz %gxknϷy]ȥ&}q21(ӈ8Ɯ߃D7[Zސ9E|IjK&?@crR߯K>! WiȒٴ>S{G7w5i+\΄}:fr ^Uv<(|]46iVNͿm⺂Fd阠i8Mk}n[>6=^ ڤRLCCf3qIހv+f w`;2X jy f0h: A~r/>}P+dz7<}hUE3W$pmZ~n~vc)|/:}aÀx ;:|d>ภ_ w26{SK儒Ljr/qϛ$HZw^X&N(:,Rؐ#͏Y d&ZB$OqIŋHU#],Aw{_uEfۑk|1*lϴ+=K-ӈ%4N𚟸EĆףӲrʁ=Z\ x2oY۟O3Sy9?~d}7m2x׳ Zvk;+@E)E&&KT.3/_oXIH11'׮f !ףm2 6:@Z1JV[7МH|aro&a ko7oB捧L -oԣF#+y&z5jR78x_o@(6͛w_.[Kᯬ`)8٣XǛ@겹%l!7i j-Br Mj#e" -eEZ[0IvN_~=g W6*UeR6si"L*]P*.aWw^yw8aw$D i)v0EMUZF{~ɱH{+Uˌ94AV피Ωd")4o6C#H)Y@ ސR=hY%Ȭ[w[>mA<\5sG/f#^6k gPxk WHޯ~F{M5` a) $_ZtgLs4pyaS3W޾o5Ǯ3 +cxK?̲:RZgPPR\AZ˳6Rdh(GX c/^I)>Eb1#Mh5>*ߙO$c.k66: ڎZ~D~g沪D 3}9E2ۥC! B SgMMAr'i:"bfd8~/ 72Eu\1#6x_GX0شOmtlD4 "]iK!(.>tX1P1R\Ҿ`{^dr+ܢ3b=n2?7g')&)y‘";PuW30Y8͏H" 66 %0Ĕ vXgwH~߇ow0Ee(lE'U\@ "!|.J;>/ȅ=xF]뇞Ӹt-G\GFVem >>$,G[%uuEV.֝_zdJ3DyyXi|‹ꡛfHN|\;3=ifҶa#F.1xM;@+Q%LĄ -MYbgTjYڤB5z.X p(//,!opP'\#b? p3rM|gvżH3urXqg+bL}4 (lB ]rhB7>qM@Pi݄ECٹR~%QX 73ä_Cx{?SJڦtWeX2N9 pp6a ip. HZ붣/[`O$OY!/g aNKɀ~jI|*,9?!Kd ӖI|ng5yI "C~,~bU51Z&cZ! gXXu0ђW6~R#]ՕtT0;V y z^p0AxǏ*1CU$604[ ¡kEs/0p$bߒkj, ܂^J,G[ ^YH׉J@BI MJV B+뉓K$;)e&"@Rp&;+.鈑Q \Uƫ#c6O=~)v τA~ZiY c F%&ECɲfHťi-Ҥ@~9> iyqЅ>8b>vh]$$ T;6 wl$AV JE! {xIGN?j I:QR0o߆б_B_NF47[Ot,25΍1S5kڰ4lЎF;1} xY )bZVPz@/s&!ۿ댌$9^Bthva?Vis:`ð:bky-7j8*>xMǖe)DM_rua;Z0jz$q UkSzI 8aHs4r+ k߿" /^UY&2a)z?{_]]BO#P%G>|K<0c٧Sa0<Ю-*9 O5ٛS( F{͘x 9mxV'긝5%-uUQ#g!̵Xo]v*`1 Eˈlȁj8yQ]4IH h% m(v~|mFt O]nR0%t[O{45گ P}Z@؛P36їuj/ѿh`MFybYRmT` F‡~_#f hMIr5kc)NE|VHyةrJo0Vm~Ԉt # {F9$B(?0#CDN@hk\fk`J* ?8 슏 0Y>hV=83C\ 6e~lQV]a2lR7$ެo@;l[x8=|1c *wn(= ۾)I'Ʒr& u3vuk^h"}HW~^yNmWUqNw$Fe?,o\ ]^;k!Y |@yh:+,YI'C cvbr۪S<';S+)J)儮+* 9Dn|[U@ -:Ee|_:WwDO$S{'`%އ-tu]Tk# dMtSjXۉ\gpd$^CgR $eL^_l6@9w '5,K7‘0Nڰnx EXZa,c~o|)hѫeg頞] XZ CʪE݃h3#R,!wu7=Albtt Eaj3N+Dc?)hhpp.}XH"!sAAE <\- ]=nHz_<(. IȽۊu95 Sɩ2?p\?XGi l6' _1J/j'쯾e,1~]x>e_G5%m_jù:ogUctsj"KrsG!iQRjDs\$JǦWӞNN4˭(Mwu߶̓ͱ;6`ӄW.JkX>-0C iQ146v(`yU50,Zy$:pW7^^zl!uc6U ~q6ky8ԟ~izǖwڃ1.zuzKiybQzKL׃l޶=8,YXUێ8x2CL |փhV"39l;7K+NaEva [2n kҕXF'0oEhTs^`rF0}b!7_X/ FI9{<44Mw؄IO418Qs*0a:gķLGN/Fjho!Ќ-VFC1K㔠impQ(zsοI$vP".I#IpK vBoBy;x//x^j+ 0͖ خQL@}dBVg(fy 'b@TEsfE$ɷl>OϞ9rٻb7bI~Ր&ҵ?e*G7zïHJ8,@1&f`y(&YLrtc|C(nT_~h'0 ND40DxŎEzTof E2W2TGC_sdB,{BcH47ЫlU `uYޤ64RQSjIg %&o\xa :݁/=-t08 ` ]ǸJ11?qz˩Ѫqgg+ :d !]/L|CGjI_V|7u[,`҆ D0rD69H0IZJ$DoƑ1 e=!Jho"A:I;8mȚ{'hxv ܤr&UÔ3*seǛz0*"F&U(Xs; PmHu{}},s%@݇:kٕx x,\({%!'!V@vfcHgdW0ퟵ(0 'S~=s\r9x^A%>­YXrڶDA~'B3Y|:eOC\Ʋ30)]n$_F=Gt^ MSE eN|/ZÛ=dK{\`9'R(%:+-u/XO^\8lm0Iu=i8Z8nuS&|1q%6Bqb9˅<~,>i'%=a=5"́_zEtN q[8L8K&)B6~CI%!xɭl#v/KxR82`UFY^b .i4Dr-/19"bP7CR-D=izzAEBEq7m^5 wpg |u{"IFpnۨP1O~ۭUً{5(VS#ԂU9UQ9Շi̚Gczri(hb<;3`SYC,''H-NWKʯECj*"гgL寯0:ѝ6 Y8zqի-\ s>/&>m~:N"Ⱥ I]} ytf@DbA[mCcCc.08LQ+uuaw2hKE33$!̆+4t<4a#'mƈ*!%H ˊZLցd,dv/GF3pBhAѢl=y\p5 2sh,>f5;qd` t4lk%F>~4Ytd{,t?N%lő,1F}$ѻ(|[3=KI;A}jO'N3Ĩ.H1q;3_chVԶoQ̌Jɝ)ZNn_AinΧ@,eraм usApX巸Ǵdap^ B3LL\SȳA-fDqJm1iE{-%[KwEpV5bT", z1yŏE63~fc Zw8 ]ۍ!w(/D-WHقtzqN i_F?amo5U n㻣*Xp~]8,wxs SYd/ *^EMʚ qAC0C/=8$o)kiYsM/}ՙDC}3k#4lQzYdSk n4)4 {AZ~k_d_C:V7C: )}LٌBr!e #eO6מdtXbR Mk׶bVUM pV6+bk¾s@Uq%t[dVfY?4D&OM nH`K߽M)ΜkyE'_u&~bEȗ0Κ50bAn] F#S SS4I/  * / i[dNy'" ~Z i|ɝ8$$oN.2Mjy 'Uu yJ|TsRb㖝{Y W}7{ʽ.:T$[5vA|KOYDvm{`H$b&zcf+_`*l݃6-i І.agй.wȫ 'omZO~U60a׸뷠XGZɓcFO2 ; W,O-1Wˆn@fFJ^שϺx3뷲_Lzr{V9r87n(ꬒ2+V/P!"Cuw")+i[օ4*C~i_g2kD^5)xh}zΖ9;e'l>JFU(s._5|9t9Ha[MwT#7?\$>/Q3h^,(#^ [o`= H>Us\[bDXzNw Jސ*d0@nlrD粍SEx|{"E6Z` x+! [F\ JN_%[)zaau 8[Jj"fxŵ$}8Y<5^KxSv~A`5N %0* o3E'򵬭,_rB8H:!]"42V(:t`EgJ  YqލZtiN:C{_A1'!FIz M7'8׼pƅ uv0ISoa%MA|`-z0`cPŮa(T-` }f?Wh-ۘixG|4Ӌ>?ȓm#v<: ZK!nANͅRc:6{] s^w"r6 g?/՜Q L/Fc' SNԔ@8@U6t:kEn%BBH)wʱBBÎ&z 8.H:"I摠Kz#Aϐ|t]k9$֝ V)Ee֮y@u&~m\LXW/B^T#Ki9& GR*x/9\y*lxh;BXZ:_WrP5'#17hΧ؇1FtjL7AV}_ϙE8> *52iv:36QQ`I?h59~Yu@eTɛ(mLM'2GhF*/USX̽{JhAf-Vlu8Oqd3{q tYRmн!53pu8\h l:ڏ;˼Gނ}XlЃB{'r,G9MQ?1~1=|,e2y F.f',QfKFVrBŮnt.qъ7=`2EBzo߸z}6 {Jl~>zul j"H>f EF ӡ)Y"wUgF0IJ(Tstf'5Ar@w[~]Fײ {I=8ǒC~eJOfT ,6n [X/}Z\>hS-eK}"óМNJ1y=jac҇;EtZYbLe5C;d 5s?e%u$ B}(jBr j4|G8`AI!?9̬];97QVP"Dbj#/&p"|˔ `7m+F٨ (2ֆѾ!Ε$:ӄ\[Sq?e3|RXÍ+JjX@ʦ(T -թEp@y@QϏ%W\y1߾^>B 1_zW$ur _l,A:UʾYKJ?7iD.b$!8MBV:kMW%Q3vtD)OChz:?Uohe[ؼ G(.xid[h!~4R٪ޑ)rٹ0+L;K3q[/SucY>thӸ:<%k %spy׻TG#狪V?{JE7bHdk@#q lNYFrYES#}ʧK[JWk2(Y1fR• \gP\(hcaU5㮼۽~)B 4>1ߔ~Bh0X%мS|N}s[˸~/+-פbx>[;:DdP"Vru--PzgF~e](5)N! >a;؎`um kܫe~URu;Z˺T=8|",nᄨj9{-Ȫis5h/=e0D۩fH^ 7< tHȼ5 ݪɲ(mSz1{1JF](˴i~NXA-sc{ kt9wF54Z8Eo[k{A4beU1èlg'ZCUx>CfN!]wner[R{Q;,|uKw2+G!~cjʸ^6JPqM,9cbLkIZ֬ n (c / 4^QBB s1u.*N A6>)ݤs @~sL1SﵱWΓXKiCÜXqL [%$߃  ![hM1F}ZiYR/Cs̼Z68wBc6$#~м>~ 㗼H5:fdM.,lڰ?T޼4CTkȔ5"!JMF{tP9q>\ZQh!i@-\.ӫ709 #"!#po^zzWsR\&-w?ڬp0Oq#v8:jV1pW`܍1ۘvY<IR,d^J] gt+ 'bE Vny e]U<"s߮Ż,pGuFD'h ]Ge*H/y/x}iK\< n*EOQ#_ Zff^83 ;ߏ c6!%1kĬQ&})m#]#~Kjjsw?ǒPG,; Np<m8DosGt$>_<7 Qqatb(鮁ge&M0R6Ȓ?}B-dZsnnlo&2E_+Sl@^tP2"}mhUjepNF}\p&`Q!Jӵs5 2/[H^zBǑ_ՠAM^N6$إ:$LJXFvyӗ)/ԹiV=$JK⽵33-'nB' Jd:^xr篷$?h>}joo+$]ꎯ\?Q;!lǪ- W3H%bKm5IH|a&c!dN W"msy7XGgnXa+2`0AdL.)LoT<}?N"F4 IBr =S=%X pU:pXU?u (3tv p%vYC7hl |I%=eaevC.K=l}(qsW4.S&α2? W l>u'֊qpyGY yL ]ٚV-@ +0(3ioL܂I.{"2 yǴ.8?uI䝲Ɛhk&^)!.D0~'AEɓk j7;TIPVd:?:[nޖjtd6% *再ԊfJ|UѐXycΰG T[%HgG>^H+buzy3#4q,6oM?W66LIDA.NLO^cr}Rj`ItQN"c1膭h *g%ejqUo6|+)ͭA<ʫ'z*. > ˎnD)fU[9 CuzB4\ O&XypnaVOjVY?-C&Hcaܤӳ}`tۂ iEIdneq57 mZ *A(yz56h1-u |$uX2.a@){C=B@!aYŪt eu4Ǥ(Gm/ɛQKj ۈZ·0߈7I`(1J^4ow;!^(6DD9%ޱ2j)㭆v5יv)CFo\^cHO E6aoilNN$7ypC e : [[VU%[+cf. >6O0'_>9Dap]y#_,f0^ BBZ'4t 8=gݨ1Cȇ @+ꖣF4i^5U&@~+Ȳg"Hdv8/AGʧg@%]<:42Ijz,ọ6rV,wոJd w3Iҡ: 3z[c8[vNxϰo$(S&AVRbٽ"H)w$t@)$y>2=Rb1z37y dƫ20{ !XN)no3: oXm’OFz.7^k5: "P_[yV2Sr1 ymc |gP\Xy/tǼ́h5qqgeڞ!}0D(Oe2FAV*.kC05 =,9ˌ'w[uB;$9#V2\A޾nˌc(Z`de@ГRw#EgFWVC_j-IDq^I5M-c"fLsw}&iN4=Ȣ&mU(xXtZv>mMd0[9뜩ʼ!J}$+ <1"Q3؅Ԁ(ګW#ַھ$(ɦJL` w^٬Ӵ.>иG`#ZNM9hzrN×tF'$_o4h[oK x Z;n{v-NQA%[;^PGp.>]t:Ul.WoRaV.L0Dx;"YH"=Ӹj'zHp\ 3"wo;g܉@l'u쏥eþ!92I!u-Og#*$91rʪ3ekDG}U7ʛ\:HZr%°=6QUQO6xhUkש?!)J_'5e؃1٩ e 3bRW9D@^|(_x 4TU"*F1~/Hk]=s0VatN{7F@XۊrZuYFCi>*&\rc9@XmR􎷧3ឧ{aײn [#&Q}#W %x;h>&q&!< HJ`nGZ4Cuo wN8_"Օ5)bn;V0*Vv4_m!W*PQAWxe&g PD!6>5GVOeZcen^=?4Aid)zӍj˹EO[}P AD|o,ܨ#byOTѽO*DP Mm"њ!/8=-fǒ}V%Iws0ǠL8b,^gSjV@˽2 NN-PSww(ш_^;;y G3۶B];Sc$qI3&x)?oI "Kmڅ{NX-%X|q(dD栘j:('BQd-E\2e mq Ji@2tY (j|!ō AnH $ YݖW#LJtDZR](Η/ܒC+fo toT[&Ȣǻ ²=u989B í<jb$sPÝ{56+-0 *,^36?Y*큉/;Wδ\<.%1a!gT[bPlf [# /E%Ws[X%ޜ$}`vA*:!O!ߵ};<>}ǡM2dD@`ӈIg=s'}pHbәb;O_nG"6<δt_r~O\\L)Qx/#.r_.~W"Ѕ6CeG<\Fsk5: c^d,+y 3R F] Qw-vMc.$PR[56U_$斩s u]Q ĽAaqFkuꘜSsHo?%9uĚ_E?:X.׶YXm{ɧk˴#~x{yq]@oƵl5݋/~y1n/ fHw P]ρAå]؞.-}1/Ha6gKsIm*#t;q/Egb>ٝ@&X߆k dc\ǒXTmj┕lvF^3Yn~&[m[\\'_fdXdꊉ_O>9mff@XH %oܶ.p<2f1nl՛E0c_5L pӜ<*bDs'̉,Xӱ iׯzw?bl l%}pEz:@}Ynra'K5Io4̩_1;Gd+f!u[ t6c'&~xvkb73 e8ۛM cŠކIBׅd" < .ObLH> j{:%^tk#6ci|o #Pma:%,o'(n]78Ue0ѾoLGKt}ւ-#o # anWc@Ƽ[ٶrk*쓽WYm$OƵ^S!#v86o=S2'/mXځC(H[74:?(䢣r>'+bA1|`HL(D|4yPR+-Y2 =㵴"kBjN!wS"+i@3(9 rn׀Er\m.p0Ft9O[* x{:cbxF䎮m5D5"!)|܎bjtޓ;2Z6jl'%Px^u6X3idY)eS Z6_FqKt5\|شBVxQO]WV}@f<{uTQ \nm:Of #hgήilA?c;,M / ÜkxG$Zph޴1D)U<Ӱ4:ZHra {3uLk\ގLV+)1Z2Eg|]=PIZ`eWDPKd1+KۧۦYl6rKBfS y3<ȇӑA&:ԈZ(e&V <#{1mdfہQԍ~Xe{Z]X4L`jɨ{?ɓ5{m?[*y_RNY&)z_te-4;R_>9R$8%8XB, w1nOɴi#DKAv t{w&VUz{_/(yD>mku) Oᶑws4û([iHXضG=cERh bЛAj,=Ws;Ԓ*q i36޾Une Nwͷ/ $8tX̶LEe\r(BUhHUpB݁k ~KĒCTߠh3bSRD 9:>rr:x ϖlm_t$3mb Γ_!FkV'^c8&0BL ,mlg!"3W~Wv'k5Q-˂b{!IC#/(bCrF͆A@:kPm{ 3}`vhZ ꊧ wE9Ls󂺬}r_` *2]S6&߲! @8z3䧾nϙmӷQŞEj\(cu[R5# '%!n& 6G]WloDl,wUa;.&yml.HHF\ֹƄ,wiNQi}kū2ĎtT42s*x4N+^<8bZ@01M8.䂃 ERC޿ÂKZ?[jT~:r,WJ6$O֮h{J_}k*p ySX?RYqJt79w `/M, 4,qS Wx1$%+[%|(Lῡb*$qQs @0C.Ubƣ ID"k{bx܁56`눓uNH}0)&ͻ./c/Y ^K lT%q[e6 FgJb =pj8o"LT˃D)\dzŶё%' SZ5)r <&ziT′३}{6cq qަwYVgZ*/jaT9cMTOO: P^|/UFE؊;lj&.2(L<[YhaUlѤn1]Z ۾\%\˻a:3)D&h6u5ORʀ2}& 2S qD:p(=M}W@R -8^VB[_&KEܺʩ= @@p[lg(FTS_p6XG( '֛|H4cc0 '7FY @S]?ߥ@:KNE?Iia# L o_^D7FҨe؞-x^`V.(n7< ʱDN;Mhv UX>FZ1SōHFo#Sxna^+iwJ/w'YᡎxՁ^Bm"=mA9#G{@%\] ڮsLzq1 TTnNgțKcofb \".GtCC\S^dIۙ9S"UY)MWž.@%p|(qXkSUNZM|+;:xɲU{͵*إ'hr=6Ѕ:OTi& G׆1*m-[wcȆ%[P+'4VgkmS7Kvk W/u$j j!KRT/%PQ$mdPSE;Eh <"A0fgO4o.Чm߽1<p Z9. 1Am`Ʋ[ZZ*?a`W>HxdᒍDtO{S$2agh ҉HջgXLo'dEtCcrzR¼nAM28: $]Y^C%54=#6j!IQ=L_m3ꓐ2ރ %OUW'hYr\3Ex ]qQWvfw4Z[&IE5~}[r }+6"zJ6OY\@u{BoBG{`ֈNQW'Y< ͭ\dw'(wcsK6k|.8qAKcڃg&&U¥WW%赘,t]b}fc };nQ.Xg$q]faw$iV_"P︅/N++C/.bj^ >Llܭyz}/LaVsV73l $iȿ)Ϡ3 \Dp8)6@+__N5F bݰ7Vdcti 0>HVwn{wqYcͱ$v_p#rg9JꈪHk j1H06YWg6Z|tq?BTDT4)Pm%JOQiƀ)o;@ iHt?EPW+A?,byɫK隯*]= ]M _7K^֦l|d(ԯ%zQe쵁9UA5]~Dת`I*ΪՈ97$ _^TEl!_V?*k7Kwr'X^D+:(0õTHeؐdAPT[lơN%&ak@D#ň_&%1xu<=C!^vEgb3璿yn["H5\O]?ZAwxۤ3 žp#j(lj\ywa+I3BKҚyrսQ|RSJb2ז>g4ݒGjrR1bP'c/AMa3 aXrzʔ2YZetXDT=:t2zTۚD5f#P{n0 L^*c^>qlT ]F蟯Ao(S6̼%hQdϬ9v>Ё>2'זW|. \/fƝ}y*RqYxvBG  I8W2XM2oyHF:栠[-JD8_F[ɫ} K !y6ö(N 8߿E2MO';# WYh8,ZkFT U];Pde#oH.=vu|NhgeE3x 1 KZ"k;JNJS$`Lև!\BF"e??cXD Ѐs7*,sX]!CeE}t6!G=q_\wYn#Y:;8ݙ> ƍJWNb [T 6_1%//TMCQC(R4_ke$x ZpÓ !CZM!3.36h?O֐mWQMJЦR-u8^yVlUgF!:YIEmC @p>u<AkR)Dkz9Ӽ8/c(FzE[(A<՞F`9vԇV4Nuu!|{ 9;8CҽlV7!X7C2gL*_p պ2BhZ\+ܑr}~$mtgR- [. g2# Ù9+ҷwgI0-7A "0 Z먪*?M2y^G;/|w!N[G0NQY_`(gV7I!ƍFʏ rusB23LP31I~t.B"xB*,Ivv*WFמKC8hi.h}saa} vKJX|Cco|T:it_A ~M+%?Dgs 䴰Kp[ʲi c^ N´cs_eJɀp$ٸ3#X H;;V_0LWb Sk%LuA@섧9M!@l&wnUL9i:@ſ߄T"xB:_)El o>F#F*OAS8#sum4є;wTk rvտ%vy8~~Sm혀m:I,ڳ>Q-+C*}jjFjzP>nCy_C/b:LZ` h-0hmBRlK`N' q pb*X\?S~ LMu0&~EnHKrelj +:D}mq!)[Z {uwzԠ-d抾Ns3eV|M^  !`J/S|$c'Qt骾eԱÀ )qn{xUphiQ!=v% ܁ycoy;Z@4kt[&p@&0[NX eOb{n+h{@=ֶ=xpU\H!ّƤ^G͝S Q*Yi+kw^ !#^lP&pߛ_RM-:Y$^ؑ[.Y?o9V3f١D::rGهl&`xAÂA~U263Y&'LUP=6S ei|~8~Z[!c$C \ w VvE({>sl| |{^ēPPu)1B$a=bⵚ*oU AhANN|FbFYGpcB:u3- &e= XP.ÚfE-7VۏamL[m|rpIAKb1j:?5P"rO~@fڠz_N~tz k>QU8=Qס>}pW RcP4߆6QZg3'RU6%{~ۦPق=& w"Ο-Ԙe#M=Z7Wa,T%Hflp߹7QG_v;Zmte(qVbwIxcU14ta2;}{~кinuBwR8$(Zg=LSG +W0Azzd|ý[@v)c7lD:| P/ }"@Qu_ds*s@e C7+Ix~*yXYϔܴȺypYSПiJY6&8hWwmҰ>;>u0e!SWE_D~=J2Odx exϊAJ͆r$..X'i2U;䖞N͍0Y[9(޼[ "Ъzs0.ַxZw_ ^7>FU†irOLмl;MCtXDOpT4/5D-uO0 CL,b)]lsZe2&"vIjcVr!~~ML )-J~)x`;'ᏓWYOI)b'm {dg; BlW&(ȞaX $д|oSS ,c\3г? Aܽa1QrkTn2)~~ gYx+ Z'#{XHyOު k{8!iJ<)؉M5w(Zkvn+eMS5WP<zC;Y& R}g9Q!(LI+)8njT۱E%0Dҩ ȷJ JPaѿ\{qazl*Kv' |N3vQ)A]~{ !@~ xXK'O`IU%&} {Wɷ:c}z+/(v=O=Ǖ-<-\(&O.$:Gsjl,TT !ت]6.wB&q!]{9HpyQx.𶙾*vQ10V[8HD 𝒵誇| ' ?ڱPGo][5#X HHD?AɷM4Ut K|'m;|%F$`X%S~Hϟڤ3BݹT"J5G=1"<siq@ao"GD/}>} Y@%@(rj8m Yy8J %ZW} q/fl)&O_߅n(\͇X+L@D>aL$5O$][`ʲKDAZ>d/y p˿v%e{dW3#YgGw\,c޶X i *?pvL]nuUp0V{R%f"KYlVxcWf*@VpŬZ<~k%oQÁ!8rqbV\Ѱ GfՎC I= )hπtS\ }PeÜT V*j,ۦ)<[Vw;$)U^^dcؑù[f=p`CGqA'J9Y0ⷰfqY\Oc~n켺*זt@(u MKN@,AW h$!ɸ G*ȟ-xZѱ$qB _G$C~ino%jK~oҌ|ZlP/DlWx6e6~Vpj˴@-Iʎp(aj|M| "תJD6a~,1nUxkGae=- {aհ?ܫ>(n^&5EIN*jAvCr"wj+u,Yy'5j(eBN{4\.%UnU\&ھhluH[\FSq'{ w8U~3j)EH./EM+: _|Q:ow}Z'i81E %u kMdEpGF^x#ng%kn?C VcAg aʹ¨4Wfk0!G\:f &ka' X*@W C_1YITdIbٕLcV\<ޘmlLjS{!I35 DϠ,dfMB{aLl߰}6p-ΫkrJDbF @Fo&la8vdwuA}W&}{Eu(0 1w%s. k 7qJ)Qݢѥ?/ Sέ8j* ]ީ{_&>c<5=,tQw^oZ6˜\܄ٰ-̉Kjs\֊&"*]%zx55ypFvw3x _g@w@%9 SS= ֲZ:%vB?X6t@yUb! T un'Q-|́zNb8ϑc41`>m FJ6>UBV"3)v yaopM[60,61|Yfb)Mm)Ļ:Ax= 4In+MejuJSo*>F Z}{sg1sLƪL4ҏ±>TSNc -:+ xZ3U<%y=Rȷ_*4> 54`lSNl+ .(&bUB<tXfzH,@Ƣl[yoO n{opx*GUGe=dg\FIKP-C4Aw<+gdCXm.FɬA`CLahS)Eh Z؛5/g1asݴdѫ|@E8E0=PZl2t1bNDXՙ^q }Q`X!j =l؜@BS{x y!T:pIm/;F%sGЉW!u۫?F6J.l5UoeJ5e(|`*boVǀu,ōG^5FA5 F%m^ԛý\7#z>_uE(5cԅv)t' +AߎaIȬS> M;MBZI 4ИG^=Cz4ll]+ZnVY6\BYjY}ެ`V6xV)g&]^=B#_80LY'#X}ҝm[,M`Xƌ!!6O׃txLz٩^h)͋u͕CLn/M{NIRV裕}&fؿO2 }\Ϋ8 y*JϭA&.lS\bk,ۋV}">\>_`pvL7󜢲YCr%r:_Lz&';&Ag5K0\ s scʎ%ӕ|M~3p v H1cS_'Y)1>1RF$t)U[cN1HvgX_a=p8@ڔ \9i>.owIlo)[#u;ϳ3$K%ޓi"#ūVSp`hZ3KIc )B9LzhK}`LO^'3(f횄L\Ʒr5pѳRz3!G}f!'A>v~8%`r`4IU=H$_@9av;|MS1̊v*H8ѭ ҳҺmIF8a[aq/ k49rLRB$Zڱ<{l^Yc̼~95 hF=@űNR UUVw3` )7p FRu$J`Vj3d) y)d @ V hod/{\]j_|&O#D sUW Z轻}V^܏w/o+^YWqw?|tSn/=s?h($`+wt)<IT 9egڃzi.i|Ͼ_ۧYTϐ&6r(mu| bjK5U2V P _@ZssMtepKR1ͷTizÇ B' .2&Kj 铪N1/ҕ n!^x9uu:z79^ީUlGՓnwrgr<^T}ilOYҩNT~tpgc7lyM.]HAљ}zIF.kh{DN(m^=v~ۥ"˾Y62z;g'AkC"Ur*eNC0/AN:ћPd~ᯚ "uK(Bן}݆m2&x2Np}wxei0?GL.ELq4Y*Mr䬣:F*4 R)& t(2lfZuMmבmE+(ə]xzi(3htk_67}\MO100*JC,bSBdeMWM_85jBO=]]U]՛%̒~g䍶S"3];C0h@"3h+UJmkԂ8G{p9C&fjO5(d#ňn=G /M#fjc-:on/*8N w_U/Nr*B|BiSdϺ`5d&3o ?/ߵ&/0'm]@Ft ة9?7N-`ۯY6Q"Vh|+Ȳy Uq_M{?AD($tC &lJÍo~LluzKn F|q'"o8畅sa@˕+D L91<ŨA0J5Ԁ~zv5!{d'%p45jrW'z‘U28M5҅6]v)=7mw S5yI8̭P(ۣPcYIP< ,-IywqJqh:UܝfQO{bu^4}3B*zX˳Qp c%ͶF%=ߨ5]]|W)èol7+t=p3D}{ ^ i|X&drh)ezϳ-|ǻ4$nEY~ P['w;k"[& tdt] CAlFc 7x2Di&ɛ/XQ90M!6JI?|n#WyFfP7iV+=%/Ace)?KQ^̀#nm߶10z- %FqA3B& Pd{Q:ͯZ[ j0]ԕo4^QvTN8W>BW5h _Y7.XHg~Ӓ<$]/ SL:N Lϥ|h\@YuJ/OP|\֓B۔ H!^;O0в1}x6UrlIfBM1'c.pP Cs:?45Q2voᐧ1d7c.Sl_:Z|k!r8ҁɶfipoo~U$\kSkwJpoP<btJrx1lNyC&}O8$3 !ߩH1<)U9ޗ M4=GlOv#D2)r&g]*ea^7j>$ ^2.fw#eFU5ۨl) <߽__O6tڄnS_ OBj5\٨V{EKuNa:Bpٹ:Qʊ7gw$Qn_0G͓IJ/E݆4d<شM4=@)O1?eDEN qBcYeJ5 wBMYס)X.Fi*+ȟh w}<s%jt:F qCɇ%(su.eWߺPN s.bO(IglHy&9Bhx"9%" B*~tԝ'XG,^G1i1ΐMrMSt?xس`:/sr y; oBhE%} X>Kܮ)doOTIyy2x6¨`lWSL>~ MڻC ٹRݜ=e*yB3*GWh! \rY*kE6‘ %&V\]_tdɽ5M, ./ڠ&F jSN8YWWq3/}+/qIL}LX/2}~jV3vޒXSnsS&ֲsDN'gziKˎD>}۟z|n(d H0灋+Jr޹6: R t}.۞VG0tWEnpg<-6X%jy~櫮*y⮑?= X7<:m눳%Br7.RlQɭ@lfsx?~ ^/x:EUKH1nv@33FZWykzi?5F+KjG+ 7/Z,< _U5 sVq jUYI=-[JtdX1HI/8E7$Qtz\s~PPeixm P#ɻ wRЈd}e7NÝ`>Hio∈2B%U~pyYO[(thp C!#6U-&;E\*95Q2|y)`oRi0#I:E~j䙴-q1H~j_=3**|aC',Au}{=v3VhЅ#X^eE񾑁tM]%%0d` r^U3;7BGTbNC_!fyOq*!% m܂Mkhǻ1S^Gse\R'uK ˺̙}: cGG9]\/@HtCsXk5 8׉X^KsS@=W,,oSe,{z=e.P>($øe] =K$VJݴ?fA 6aQ\K.g:06?ⲽu:QĐW!25NQD\vԆ#UiIȅc }9"Z;܄G|_&H 5#}9>E^~S3}lw QrP캆,YB rE\g_$Sk: r0MM:'ٷ>d #re%y"Hvwu2 |GHN׺x5'& 0ёHǹ]F);| Ϥ$nptB1Ay/Pu'~#V_cr5V/|CSR qNru241)4.iESa.XFЦF^y]{;]IL'fo2alߤN26Q1 ^I[e/ 6M]\*͈lwUȪD*Afqs[dCCdM IجI,5. yv//I9 &Ű&>]W]OaLVf%5>΋OM:>uH[J_f8/o(KWT$y9 :>N r bX! C]ok@_\a)4NOG_,V=..rĪ` O8˙Bmgߍ-حa=8.jqY-ͺYp-a/-@v_Xa.;6AP2eE/`JJ5(Aܫtd$Wy r(<*\{4V"bk!y^\ؕ$!<.•7~pVecq(jogb<: W[di'yTX*m  }c͇ ^9UeJ<60^i>pc` O5le|p"Igs%WX`e` ,&d iTq=w,|MH-)+󰊮Jxon9Jֶnm_ەFVFZKj!8ChΧ,3%jX%g)k3iS~To]p2jB?M]'/)a_Ôl3w1Ini#^" )]Fo,޷Jw'ݻ*I6h ;PEXz 2dGg$ukǑQ`^Y|/vwHbznW':~Ȟ'W+:F cvnclxs^Ni2_T0YR7Խbm!5NXz L^eDbᇩb1^`Z l W\BY;:YpA"C&ʀm5̚enJnR)2G}UZTL@Y sI4jo93eAEi'WGH >uGy4 tTYu4 ʂĈcC@gEVSicٔ8 ,u&tVo+5Q$@3C9~e NjMB8JVkJ,߯s/:5ɏ4\qA]uCH7_{aМj6מP(ոtQ3f9L~Z*iXr`K`l9S*Xn^ݨoS3G|xB:lP~DmD A $S7+'Fl/:c5&+I5D~̫i ):~tofq<>ӻbINǶXL@n׵l8!\o"Xa7_7XxOZ*z 0# { {b2(E1t-wN,;GfcՏ/N-J uN)?6^u6pW^b_ME+oC'q#KN ^+ Esnc";s'M5pdp*(g}G-[2Wy*sN*VFg*Y1B_+h#> p",.ilp%m˛-s3f siv쓋wkH)īPӻz^'v#[ 0XAz9Z*QDl:\ehlÌ &z 4z6jBܬ>H&@ȑAsY-CـX+|! @ppj/dK~BYb, ؜6Zm { [DN7lկBע]ˆ7ii(z:]5m]fP؉8|HI߽@L E:[mg7yݎ(g61=ޒe.-= ( % }6Zz1Zy$@7G+!bзl_S*O\(n=O\˚Fpn)xrCZw Rj33P d`tJYSѴ 9gA~`F_ݡep5c+u$q;>Qzk;/bKgfF:`); 4f9dIV(ϻ>sKr;L3T}E@7Pc[yz|i: iB; +1Õ݄EkP:c)?KTi9>6̮Uψm04Uԋ!ht79)ig&tW ;I4K*^LYh:!ejH j{m\ɢs* 2" ˿N:z|WI P?:G#*VZZ/˥z{tvShTKFl%yh.#Ul"v8kNå4優@ nя9/ ȵtܧ4*Yu\tPaA"60S#f$ǂ)&(wC3ܛ[jHhGᢞ'y\ؔWTƿfE@ft.c(cT?3LfEckmJ x>@KLQu YӉ*Rhנ̙Ujqv+H"lⅲڕuouIfݵl6+Z'5F\[g_hxjNk-ƫ'Zz׬r\:o4Vːʩ@6|92)ᖹ^{_L is]) >NYjF:κ2&]v*~j}%N9Ԓ+j2P!ip]ܩSsPZݤ:5BdVl@e*nāG ny=Q~]|Y-c)4!`UVm[3&FqF jx){ f4:+6ΝσQ[FpLLLYgYMq9&\D-8VْluK"o/G(5-pti.zeKK`D,<=9x=ar% *vAڒKfm)J.\ V}@s.&6l,Fc?df69_sR 3ޚƢ}0[z!|ܪS:XJ!V9UrrEq$x2xo 챽BYt88jVz4]͂QbPdmۿ^{3Ze4#KE7E/ٞg,Tuqmt7t>K5Uc6!p͟o3*w{,g֪ 7;z;e~g3O0||9 R}o [G΄ތ g^A{YƔS)V_Gvk`2%O\teTq3";/DDp {~(wk+"8vS.j*a>6f#,Z4e8WA(2PtG7v(vn81D^DܯyiNF|J .V!f4`=OeڛMlHӝT>DRMDf:e~q(ytI@4LiCdLK46lrGx&Qcϼ¥g !c5rF]^n֚!œL;K>ZEbq&}i~](K>Zm2fRq갴Q]:ڻvi,kB|*IJL 퇳{dGEcջ8PWIPfou{toP$KZp 4MԆ݇Wx+Xr*_`hr7^6ATܴ8; &̫޼ :u}kcV#أ&D:"ꚼ/ 5ך/6z\R[ئA4A:])!im`'i^?M!xR$ ‡3 "F-/ 4Z UQ?,n;'7 J-?۶? `O0>ܒ)Y┮}/ 3 zCbܷ@x71`5H­4߉~NsB^C%h=Y\ **폊VY`zvR$kH5P- mJ* STH?GK{vRQ23a:00avcIyR0`5N)f7w/nM閌v&@5(=7xKߦفmɰ<$ T":SC;dlW|^J3/\),pЎ9!EG62!9:4eJjp¶*]TUM)Q7f _IuU)WNNr76zŦt$A97'Mm`8hP!AVڎ@&7ʩVWظWY\d7eluT.>7qT:Ph{FS"J¸BwF*U`L$yHěপi:x\9tMe Myd,0r%Mk0#vB]:wc໩q06H52c1=ڽmܷVlӱtO}AN[᩷%|jk4$5q8uV_Η_r~uh({6|3[:zE$pKXNkiGUz SJGRD{qbڑH^ϮhQ&m)L誘#[3\ @vXq#-)Q("~Sw~d2#2t6%_\Z\) ĽXH# $-K?mfba6a[.rY;V[;a#5P?H9շԂh^΅"ܓL#fSl=!7 8DR{&jdh\[9gS)!r_:M% @iV{5^EqOW}i T? w˸yD"S(e0NRD6BXZP?,bŒW޹?dGu9)W@liI']͉h 62'e<ޅ&jEݵsXSSFqE}nh w|8w;zN˓ =jZr<'J%L;ljLtH2rh?KR~v]4> J^_sڿT/Ipb08X6.]82LKk7>/:H5<CRhm;N䢉Q(20p遷T<moߴ:Oc6}8'ͮ~mjvVҸî( kKk%:B/ C0]u=~u7 ㍮Nkq_ rjHNT\,3vMtm[iWc`8* ٢8!*~a'| m?,%peH̗TDn)cJR,lgl(Ko2gM1Ő>`{ȩ Ĵ$އ8gR%j|VEU x3-QyS`>aeT-L]<| h|G~}fU?f,x[JECv`vt~gWt@Xh$I6!Fdb[q޿bz B#V>MI J5I4J"4E]q1ubqӄv#i9pJPM_t䦧-|\嵂Y䠉@*<߰Ѥabe;\ޕ`qThĕB&tSռDm,6ZcDRh[Nt?~z"vȌ 7S{ﺓ& G'] uϷ-(Qj0I2ٞby#d\b-GLBX„|Z)roJT.o-ݺϕ 6J;W _}xX%*z!!"o9in>vEZIQi4Q9L_Aꢗ.7Cf!ϲ2wI-WKc)n6G  rSRO:lF7s.1ORigg!J9%ACn05I&}DlH#] OKgO"y她Mp?~nTj웂F6 񜚧{d{C>&`"Dvr-<~tt{Wxzh}%iF%AOa/ _CUa[Vm&>csKYfkEJʰ"84bXﵦDڙi, C ۢ )[}~Ԑۅr@눘lLEg?w  nnOZR4w<൫.eԍP܆zbX)~MM$ji6苾y-\gw*? m:`vIbgDRA4!޵f K6 ؉셔sOv_ '\Ñ̎Ym8!?IHzkw*tDΣ,U2JI/E4W%/G:*3G,n!LB)۽ܰL#t)%Te;aMW&qTmqz5 =MA&lM,y&O;^"Upt$2NyYV + xp;Bb?x5-t[)|>Pga]Zfȩ1[Ⱥ-7wΧYcK:s^ '=m/?ַ򈴛DR KMDR<@G0 aBSrP]&^Y.|$)@.g %#>&_p@\cD:=кEyrTk9=+'60 !C; =c:MB0H[Rሴ],9#E-e_%l S+u - <[om Ou3RZ5sS?v X< )&׬x"U Y`S>fڻDñZZBg֮:=E(_Q#ݟ е;4@!^PkBB -')-~7 f듽5>ƿf` j#|Ӆ '" '^b:y!\y1;g/]V=Z)Z$!` [Wm؇Xi-|!y!Q݋sX;.zZJݾ6Fie~i ُUcU <{kh!w񕋀T6NU@anGt?U57PZ0 ||2תIy1ݳDjڔ*}|V؆sz-4:Mr"EҲcD6#,Bz+lЄٗfL&ݏEe`(KشGLA_ ǙԚ-{z:pmvnH@r)Y]eY >ͧwέ!ps2w-vDb/,| H9o|TncM/9*鶢~ ^?Pgƣ E"OPx:0 ~Gi&\&5Z2o'UYFՓe B%| [>HqV(,=aIY=ĩ@)$bnV0 i$ BX$v[~"2b=n@8P@_ިJ xƉjهj!qtdQi}oҟuQ|HNQo2kw RL@7 %l%w>lO#;xKy`IUp\z-! `!ί KyWx[%70Q$| (MZZ8NoÀer6rOJv|V1Bv"A>%u5@$p􆷋)EwbJ[O=w kF#4y5V ):lкژ 0܍o֍*SnvBG<3ws!\[HB+}-3&{Ef:5~kۥ0)En=N19 5ψn(bt\Z{Dђ l5MA늍0QT޻lg : C8nkCwM<~JVu/QʳIL{s0' ,t/J"T)lS.ltDi?Dܞ2BaӁ9N{F<;g ^ Fa:Q7`) _OBA*v t,kPG;Wri׳Ge]QJag_6UF@4:}IG}m6T_k_203dkC?J?9tɫ.v'2$d L'z2O,q04 r8NcBqOotX]&k1pj2r2Jss #Dk&l=b "$kXD%9pdH:AoVN*\R<{B2aAjt; 6S^O T8e:}g/ɔ~ "Vʔ8kB "Չ}mLk KP5am0;id򋎊]1G R?.Zက\0!L)&{rhGf1f'`bJe?h:>1^f3^~|^9^yV4P Tk\H&sf, 4)  ܸ7DidIjQ/|@* ;GLCi@H)q_&dTA?vO)Ok2ߴnېa{ᱧI$R 2 LbUD!j 7mA.Lc^13}#iuh #;+dmhUv}'qla %m)ӹ08q_VK"YX7ls|q1x} ɍ:4U簍u\\ƥ4klfc |nWH:/"^})WՐ) * 5mKb2p,[ƣj:n)%0^!+ !YIl!MT7 `#'6o T< g9fpBX! D`&Q"T<ќ_8iQS#_݊M46k;[Fb@W[5ϮOv[Ym v쯞|vP@9$5LRj)n6&Q@4pz7m̸x+謦J#ZqqaCLC@Yӹϡ7=%7Ξ]o ˠƓ5gM^ĖQ .F ]_BEQ"0-_ *VO7mTW|',s |X?2.tc5o@ uagʾW{2Pޢ׶L]tDΓLFY~|QnN`M&vǶwOES_UY$A Ogۨ#1(f ȁB {u`d wˤ6/YaLn;aے d1; bU~ZO/V?xO:\ȌQ!P ݹPYDp2WGpdq猁҃GTU4%v;r@m߻hr9ϑ9=bpcjQRC&4#uǭͻ" G 9S ;G{/ͿUKs ZT`׹"dySNJl։niSYݷ}$vmɷPE"IALVB(.}I):cCsڱc}܆G3wfTԾm@Ϲd(6:\[Wmvw)*(yD)]Y#|_%G{kz3zl1 %c//y.ޡxRO`=Dز P"tV=Fϖ# - 9d tRQqѼG] j'$DlH\X){!øB޷2/Vc%QKeGҖ[6\N= Yc ؝?W9ݗb/sKe>H]U)Ȕ؃Jb( W"/p\ qVAML!ZDVok"?oZ7&}L^am` ,f]ks @ClojErSd)_rs).(sa)ioP- h ]b N}dw|T:sbePe<~O~5b ΥŪ4yC-cv&S%j!3qxcGs&P= I>d$n֛~G Eo_ Ho|;w!:jnBuO9zctPQmeXYiDFZ&Sgf! hzLMf6# U۔*7͓D *YH>&K3$N.5_;6a 1X%C⸮#P^Spé1"{p뺠Ä!<曻hm0)iZTڮl vPV5!f':pӶ_%5!ʴXdu)3d`̾0H@xbV^cLU /*9ݿki?^fzکN>Ʒn OwxM0C;,m݁˜YC{׺*I ݥ?bIR|v7$+vmtŌ2A. 7hhS#­#fZu*Rd+a7$y/}_؛ႎ4ub2Ş*Nn0'`+BsXvI 2cr)e0rݮ2ՄiC7ǿRT)#IJ{s #5X9ߜ7-iU4,G`( {V#d 㩽·sN<ےI s3+s@̭wLg\¤#)ao*غhր> Q/g0Uۗ5NJcjEZd׏Ed^%.w‹SǵH_H&6dm'tj] ސ켈bmE7m]/#\v[N`di\Usښ?^%kQ7sc12,Vwf *%Pܓg4l663A,.FH]X9~TJ"0H,B_xq{&1',v|!֋V}EP؃ﶕG+})3*lq-Ӥ'1~n!MFYs#>( (g}䋬*`Ã=@U?Z$ں$9o&E۷}z9@Kzؑo*bC&ngzXv1k֞>b-?Μr>C"xnŒ@R@[Ǡd?AN#@†O{ۅy}7aLy0Ay,̩Ά;|>O;b?F]!ɬy!H"RCeX_^ך#ḳo=iG v'25C%ɳk~CN%tT=բd SȢ{LJN.3{t8Baj&%kL׆4H#%TnWD3sBbd4| +-TksNE MīTЯa]O (ڽx@K\}"ymI7:>;*r(R'eqT,ե޾l;"if3a˱kB&9`i(<7 |'&Plmνe?h5RG_Fh;$:$ T$'ňsx "+;JIe2 07!{Cɧ!!fJhI{k+4?4xt-`c_>;'.+tϫED q,[8%^v*L .C6?nA +؝T(sm6(D6VMsАvO% >\ZP፽2l{UBwLjQy64IIhKP#eY#P %MfGA|dDWȾ6TS>0Vg潜F]x/w` cl7/H9!8^,`\>j@Zhf&! ^2?8:+fh"k"etf·rgg!pYƠuam-LKyҠ8*JQEz\ v -5e$\B>xwQCsė'MУ(I]o6;3]G9HU $4HQ}7n-4 3+C4fd̛۪׶(lsU:{HD|/f߫UY(3'4LM<&Pg_1 }g1X0z]XG-r3Oˀ1g]r5tZ-Ib@.vlll. /Vr@njHH\a4Ko] վLT!I0Pl@!(cT2qůƿ^*eNI:kX zX%a< I~OJC kos O-T~?K gxKn8FѸQg+Wt.D a~̍^/~ɖ&q(#CLԁO.pnN 9۫9. [qiD$(w >Ke/"(;5(efo8)s?Ao,;2W;1Bige3ot>[d)vmz%~Jg Flǝ8TURS׎cЂO|.I$Տ4`m8k\ٛ%S3éuXĐF9@\HShBKeHC4qfɣLO0eT96Tab-4NXLt$ ڕ̻V .h9.4"o+Yb)m 1H4),Z剎1^}Ե4l,FH FRa#6'wNLwqV̳ɀ1d} 1 0DPRYzHL$U1Gx./ |Œ3/ O5hdbr qc ?,5f)T/)i-a0ibHOPͷdev4((MI7 2ʊ>~z͹ahK} ! Jt.kIh[PU-8cA'4Ohc@$~Ӽ+Bs3F(oqԓ<5s'?_c>H. 6"BN'QZ-Ϋeo[:HJjhk})>yg|j' llIqidB4LC[8 FFX/b[ gWi\3(,\ z郦!l0}gфDW{]oC2ak1tKww}Uvʯ2|%v .ƈ-%= ,Q8lQ=$Bu Q%j;U c*D,_g=9%fˣrjCY8Z5vI058I? teҶ^d:6Gv^LKY0׻f3$W^4kɍt NMe>>c˳0thuG#8~GL=8G{9Oݺ!Sk%'ζ])Eg Vnƞ"qiñ%qgP_Tqv\^plgyRn_R Nfd@)Pg2bD(,YUT8(vWFUq4w U#)R۞m77Vs].S`d; x /!t18fUU] hV$.e$j \ b4d$ׄ0l&P*j$WSnB\d`tLiNYճ?yMhNR@@$'*W/꤃qT&j VGezԙh .!Hn=լ ;QX9%SM.cq:<SY&];f,.N/г1V_ 74u{uc"R_^brHBP[*QOYO5/&4LGk;<*ˀZمeNM W9*Q.o1t)8nF"gd)5l)RUPEΞ׶HîbX6y-Lg%H [L!nuOL.X"IE4qb0Ni}\V)bϬ4_8?qO#\ΙvܯiJX55O%: oG] qvq{"-p_G>6֏@7*|Fa'A>(͌WwQ~BWVﺺpgF뉑|%Uy`x/>މ.waڼ5;nAA5q,l" y%,%N4a֡1,:k>ڢ=|7†$&TD&vth2?QUOw@Or ;1&A6_, '_%qԹnB7ReR[!isPh\}%"͈^^),O_sk:nQ7988!4H!ScJ𓺓DcNgHB1!>{"@WCqY2rR5[3#=f ׳+c)=XHvWni𑻑Pi5^щ'%Avb3hz[dӕ)EmN4EP/~҉9^Rf@xGe أЛˁ 鴱NZLLyK7~g$0[7E-й/Y qhI|q82ul1cֹd}YL'hhH&޶3+I 'F:SƱ S}J_gإ }\w dqyúhwBhNs +]xgU1w/Zkܸc oxww+D,/qSHe}`$F`\ Z42-Lϕ}AIңh%3:Xs +8Q@8msG3몛3 bϤVd6{=-8Z`8Rhæ_Aw=z?S1ecMv|!u:U tWz9ZY:vH:OMPQdH+y4n.x *!ɭ+ՒL8'{(ŋ@M<"fhG*Rv<|[^X/E|u}y$N?\TM?l~m!T2 B%?~+DɯX 41ĜptQ*]PTGrjunF/|;+cG-T+5u9wO];W͂ɤ[q;/u0.dK@gR^.Jpk~30yn)HT`گ&ס ,t͛E1m<[lӝ=Jh &],#St2M#,Zlʸڭcq'8"6l|1 è*O,ǝjJ/tJZ@IB"[ǑEPEU" {1iaZNXHrvnly^|\݀X0 Da5iRBert48\q; `ucT,%ڑB_ Ө+lC J6u4+3mVt௼h(F; d%jwx7481ۓ'X(@Z54kw۰jg ́HExř;6K{H;@.'s'G5B;\ QLwi,ea <#{ĩ'^#/C[ɶp?3*"Ճ dU ,W:Bl{Byv!~VJ,珩IZok? Od&uZM4&D,Y>0LL{mpS0FUm4 7J7ki2Teh߬WyvzZ %f1/| Ĉ,w*99B$Wf jԷ_$ZEDA#W.ULMXY66)W&:l BS*[[5KmTu/^.lFSd|ES:Az8&(%hduhL t1GDMB`q2)XkcܡEi~Frr 3@iLM^ bjga)If8}tsX1eZ7k? ҭ+" N1ja¸ei;7"˪@pZf$ NŠBPcPڻK;dZ)p :aަVo>XVCN+ 1@VB lL 훸&w[!W nP&1_dAj|zssfZf*mWuJC+L(Y _{k%%.Q8u]Ba}/uT\e. o, 'e躁|[[;2ޯT7J2&|-o7N #qЯIN=~O4Z` JM lI5kv~G<)88捸 ~_7CUe"&0@EL3 [BXN yhj WW'z%IkvCa<"lKM z!ޟ>OhDWNAyHWR`8'lX|y~^>{OrnF=ͷ?GF䴈1\aR;_-t..0n:FH׸ȦJ>{'ۊј`$c&@&\epBR}ݢEUA_5ko7yB)"OS;@M'ZRn#]=5fk 'zQaB$hB0<TYBnC擻Pݭ]m*Yobb7!vf49$SN'@cY7=mlN3ִmɭDDw'tg4cE]Hy v뭔-U#8NuprflD[˾̃py/5WZZ++V`$.p 6&,g)r3%C5SQ3rtBœ#iaҡ6$2,wBRqV$/*Ԁv 3V^cɻ dXS[d.t6w1+8ђB,B#*d 6ڶfTп!`>U6QE*I=*#" 5[\8콅ζ3l^$I%Bxǧ6 MX.jnq2:YK#' fVjar <+v^ kEN31%wz*@nMb?;W"o ?NAH:Ѹ>ǢL V Dis'/JKaA9fHG[iż%k y'5F;P\CO& +C*>OvԬq$I"{6Ev9 vH÷qH GZ#ɹ"TMĮ{01)aeb'H=2QFP"f1< r {]n>_s /4n2e[PWZLYۻt -UKeȽEN\9mI{vi6a% 3i8$R=L™SeԌ|zlWX'98U)Ϣ]1@ۅ7)4NG@fC::Dq71tX*UOX?gOnV.JrM|utPgZ{(י!|7lΦͳtIva>OHC2t &e)YPNYL 3ubj344dN?tm6 wdWȍXjVL<<{-Kp! )FU_jKdV"T2aE:f?sٰR~e%LW^kp.$:W\$U-[fqe.j% CS!sfj8gh(q$+?;S~ߏvJjvR.~5 CMB{,ȡ!G7oATHXΧ,yp 5 a|VE ATyccpIĩl]heX$j#0ARp؇2#(3܂^O6Syu`\M]0d 6O*uoQs^)39~!jr0¡ݔ)ɴ7 2;{EhWIxYCEΎ 7#"罅v(!q_1TG?W#,wG;̒#+nr=YGhx$VÔ .D/N p0ܲDݎv "MkOhPk-Bh^j]jD /D ވx9B5aI@M^EzρKv|(%"o4 [XʭKgD?Sm/OT ~P_!W*Cjq*{BAw#P[|+b|/6{O0w'1mH7A1= :Q$5-Y]0O_F ݶVK(g%hiԃ/¬8@ezbb+4 Se:̓5]-hHdžxGtx cxY2BlHvL.&r&'۩ޣnވwnaf6,)a=#cV;cucbϏ;_NGd8nd:N:_V16|2dF*8\} P '5ml +䟇n$n$Byj_bsMn^4#5 ( -?3V`Y&7 o{[5[ tc\>#eU~ @dj!gwt\~z$m%t2z8\~`P!ԫ$2[[WiO3r5vd_zч~NF'RHc\/^D{Kr96q(Hۯ4kW=v8Eg.2: >B?;!g)$(.@Ǎ\Jg+µl$ZD@:kl -|3@0q^T$ZSQ"?S$O>|H8P}t7վJ _0)p/Sf%KUn#z`:fkchRMWs7]5N#S,&A JcmhK,ح\ziCb .!0w˄G#;s +=O7"FO>H]Aoq׸k97p/{8?H?w ~\Dj{lj"1LOmGIF{Ek7KUǜרT}T?%(܃SK[w3VX9!%_*aϑ7/^=:WbmZCZ20_@iݔ@ۦH S[ɖh)KFj_| <!V pCRO gU]: ~+i`+]TE\f/T9UWC;hhw{hxP'i ~|hGCkFBI/HXXwt⬘Aǜlm!]׎ưjz7 6$5Z.X|0n8i?re5[- 8SeY+<%ڀjFJ|RCą4?X;mzx /So:5j@a4-g),g]a̖5Zū9sjA䛞DWVB Z:OuZe ˢ C:<\߉7]ɘVہ"Aj OzW2/O~p[_L~5T|.N3?`⏫JEql8ekl}e; SĶb^%љElĹbcU;Di-D!)RҔ]X$|LڲehPs֧L kX|þ"LO[w J Zр{BB3)rgxPł >1|NL|8]6ڔnȘ|)a?'($A\6y6Աu0W-Nl[Ćhhk)DH}lVYo|V\ e}]feT/))d}| /u@SBC `=6&4[g3ZЪfR 4` Tb{1h ylѐʗQu b,C `I) WY{D&\2۹S%GnhߨflR-?Ji\*wF JgJnHe$+c 8 @ {Oߌ]qx:LC3A-:L ~h@ 8fqbLnji %2#*r<8=n`zx]SnTi)~|Wtkf @oxcMFKXV>SEwT(oNgb ė#zt_01?^V *El؅1,_/k=W\.RV&(.h(V |`z$m}zqA [Vns*VbC۽ vPrmNc P'/v =ZteҬGT,8cS..<~ob$tzǛkXe\ÛMtN:Px [5^{*guJ*F;LkTh萣{ȮE7}q9zoy@!4J; n% 1gGEF374n,_ վ\ 6&>-|yN׈׹9FW^Ow5D޳]A2'5Au$I|]=^5e޲Y~L\O9NF*AjxG.#I-=ھ͂ZHָ8W#]ESĻ܈0cbCX)m}sc‚]SWjaB<2ޣ* ?$%/I]/1tS7`XB3 (xk8I #-Ѧ*[ ѧ[&Kɶzwu>Ip2o`FK%WhzYׇXRiӅc w 컏sƉw>5ƿAK*EwhY6_Q:m:[cN{w@@FL@d j)Sa}I`HM!)|,oZRdRR]#Aё4-k4A-'K4^kq-Lh[fby3w}?Ҵ k"Нw&^2;t^T)q-b $@;>+T׿T%wK*Q; Mc(#=׵WQY7[LY"J3"L(Z%?޷\6V`?= [} pў1mA)*CgG`%Gҍg]v9[de0+q)j^D=?tpL]`@ǃod<-oA,ZąJzNkl@?\p-@}oMԗGW%(dlq\g;Pxt΋vPtטJEwwţ+<*,}9Y>EpU#2h^X@c~c6+ 87[boԐ88'Vf"V'Ya+MP'lEv*Q6(Gģ!%]se{`B{_)6ż2{*(˧ԬjH]~U:֜ ƞ$3oq<1/MM"^oc Q;%C,-j#nw 6)@Up#sgsPdtb3NC,E0O餎EA1S0|X:$Kѳ+ Hh>/Dټ-1<4ӽt N͌ThycbwUk#d"BYW@( 51HlI.,7h̊7T_ļ)B ø?fZw X.]~QF=_GH q{UR|ԍ/Ss1fH}`PX U"l$S]CF&+2AF\Uf-m+Sd;G?͗^P ZSlx(GD+?Y=0Tͼa$bi]6%P4^B5}d*XW6DyStix7-))it;T|eqxoPQ7шP4鯦X+]>k"Tu#Ͳ_f%?[*:~]#ұ"Fiw9)ab~Y3P'V:^cNeSz,>A!Y6y|#&{ʸ|%M캷< }_IaNs>$ɃJC2RXv'b֙r>] T݄`FஅF/P.0 ^mZbP["r#enWoD.V>37lu$(ϣA( uQ j% e󢽿hPiUIsc@ PVIK`~OZt4oA ,;*Ȋew^͌lkP1}'^/y?E4@il" qh|GaWB0'%=D <U~lxFy!>b_qD-YGf=4j cZ*uKʷr*1\SE.͌xS;f^+18%FJ΄WM XP^j3JOPs[Y٪^ylan!s5p&˃oڽ׶ЙZ*- ()%Fx<_ `'ہmp~Ǻ";1q9 h_h%`oA-ޤ֞ |ˈ Ư D[,aY;;`[iOZtq"7)E4o*Z;Sh1?ҡnH0ntj29;7[k}m}th9SlJAM!R/jA#Xs&X×k/θyH,y/_$'|9֩Z$d+r G@Ri:@m ="<9 pjQ MM,s%ˤ,w2ZB(1\4Yn)#eai Mu;̵dy"\%D88M7yf1avn g. IϝC"s rw8abgSlB;}3nO 9=B8b}G}Tfғ,fu)\,"4ق+ ue%[&mN.pXw{Y3 myM!P}U߂zt%Jt$&9,# +;]i=:;Ym/opKe,cGx^ѹe[苅f$2@/OEy2 0 FM Te$a","j-d9^O\7UgfVe--7]WQh;H56WA$UQi}#zEm Bt_V2*b7|2A\}.ɍjCwn«9g2mgXK:께'qiokt~mZX * UPu? 2:e%QD$q7]ՊipZ-iнAE% Q! vQQ*$GO'( jv!ؤ-?Mv[Ԙ3PMƑY쵧E 5JLEo3nIΡzd|)>?`D*c㋅`̷27YT}4& ffw STp)G218r%PjkUr`[z( |-( xyl -h@CާO*!,u yQ4joGխF8|HcB!ųWL@@|3uAAV[ZbPy`4äu[Fq 9K4@^όweD4GV,V2?YAYf^ϋJwKc/+3 hhP6lbo )jI- >/3x P(ޅax Ts×0A)"ZN!a#(Z 7 {J4k g^ၻNH8 qVX[\M\~wEjD 6;'\O34>]TZTFP3R1͠ţasV5|E NҼ5Pip>g**=9vQ)nNw C O;s3;c~ 2B'EP?t.Z ;̇ԊMr't:qv ^ !0@rѷlX5F) kxO*3>6@N,'Ɓ,t*gbP0^!Ħ ܾO/un<#1>3"I=?)l-0]ltꅰ;|o)a\07cT[{$^L t@W[iZ3X%A(A0ſu q[σX-Z"+ yu;WƝsJlrQ)J:4׷ pxZ>E#@+L5pdp}8v<jE1禿XP4xwY(ܧꍥ0jCOɭ=z mM 0TC{mVA?~%s@Aoaר>u @~n/sIr Z1PmYZrѾ?q4LN|- Ѡ** )u~)^I%Sλ)?b%b'q)fв]ؿ)X[B x}=nQ`GݾcH8 D]+h͝GX5B:OMK6ۯ7 c釸a # ?T2rڭz{p.4HAz1Re,hm#ڦ<#wĩPH¢R#4 ̔<%H&7%7/Mu!JI 2^ql'Ϙ &5uLFEgEeYjɳc C]3 r=ۂd`uTŻ|#)%M.z$5.K'T'ҙ /=!&׵j\HWوO{c:SP5?xMQ 3\`^0!pa1d!X^b ߟZE#gX ᅸSD8ZGI32 4]عYTA2J ~qh9.Dy[cG׬*=REz).7J%ʯYD)ѵM- rӺMCw41iXwI}ps<٠ylRu]㡭?*ŭЅB~ *˒@SA0ҭmtJ&D1-n2juOTF6X8"$3q j ")V#AcK"tA,MMF gѯkݚjdŭ릈߉ `p77sԣ|+5tPMm&pr/LYEL)%.gihpgBt2q4ۍL3ݭL(pz|]DBQx݃] jrTNZy=y'ʈ7Z {xDЕQ<晣=wH ГMht 5>$9NGw[riJj* yE_DŽ!&jE J̱>#`ﰻaAʼn.y}xd:\>򦨱xy\|PN T#&tZ#P*w^_gzA<3E8d-ߤj L,h ږ~Hk)ȕؑ~Wpk;.>y} {*W> #ߒ !ŗF,* CWAk2i(d"%4\&">Λz,f[ԥfaKK&hME Acׁ}㚙q95rs.9 96c 2ԁ8^߱L£ O+r}HU{E؛eny8ϸqҫ'Y:1OvԒ4V`b% W@{ZȓBt~turzYơzt& eΙHĢXC?U=#ei8x]N?6@FDޠ}yO%$ 4+xwT9>UqZY/ߞuK*AQn)[zP-=r]n^Ct#iNz̖ F\Qc̣-rr݁3b`G)&GtKAH%O3ڡ ] Y9r8O20T'+Z{SO">eZ pNivNj$R2gNJN ' [jk+;jM:L;QZ+7Д=ITfWb$^OEW=yJUr 3Ud $uvِ3U <X D80J+CljL8EH[S|um)Ar.=]s0{tM2?pn6D,u-Iw&I4vѾx [?{wZ/ S0arN>n6ξ}tI2q(B_78KB-^W ߨ0G+#4o@?MX';YZP@;3&IPC<g)eu n<(DS.zN._ gBUp?0dl@8ԔvMH+;nj4_'ATxb-{ɜ{-ub0D0K/ΆeQsT ƌz2eeuɜQHJ_yR,޹ D"³TplCK]y=y#Vg8EHM57 +( Lu3{TR.oXdu`isHyloFlrAiHV\rٻ!b.7ڮU͑[8 ,ljtH:$6 5)$]Y!CtiV&P 0(?<%}HWvm6ULf!U &G1?2a>,ADݥ \v'w.\ ^D"Day 6b &N!޲C|j\裔@`/Sg6h4ROWB]O \=, x)}t[ZqA~ag6QPZږ#ܓ`ݮu0<2wb PZ]nY]S?QX2MqdnTaMkW\v!  &ǂ&U+h' X#K94G-g0xdBW1^}V*#M AKͺZ`u;Ft ܗ1CzMV?Pjhʵ%@c1Qm'BjyVUŃt7wqVZɖ|gt k mflA,ŵBxJW HLW}0WtQqz[HvΝؒ4uݪZh;--L/):&<σYێȳ:}. ~?OÝ- F]k#ur],S6DGFE&Mryrۏ5YiF 1ǃ&ql"T[&P[Y">l_)ޟ~K0 󛏙IPUH{i 2 *mGjU a:pyZ=s#[d?n9r{ǂUe?Np *2V1?udu5vvHO&Rpu \J}P=ѳYV=gGTEj&0@FQE )THt*!Gy1 bMӀ$nIyrV/z&慿5d`}W0~͵'99%HSҮʽWCY2lNrM׵8[J ?d} '}>*  H>T+{% _0  6ݘ'N/3(ڱQfA>LFO(6Gq\tju9]}t<@ه3i9捎V5gD\!/_(;&}n읏V; m,?ҔK] m0A?,,<)Wuܚ;R~MBgdVF3U$ &{8w9Dc) F`s_f!G+q֍@]/lD…s838ڜDى]5=ʻgl֍GկCWc*;~%+ZO\0R6Mef͢ +dCoԖ9"7WfUi>f ZLn2Yq'[G =S´Y!BebٷbPnYa/A޵%wH'YI=v/L$j[N'"[ 4*6Jl8[`"T`Kֽ-b#5x|2^K.}dw]_(lH Z8G3U-aHRSL1I`i{Mp``(>y%NFZbSCկ}R{Nm\kVSng-fw+d[:գ-]7p*!jS~?EPɌH(+% XoGE sr~wbp;&sn?kwbkRk^jǃr=qX{Xڄjx#sL{ږJC"]=ʯ?"L0V!- q, rCޘ 2QR'QiOA`L24 ]wϊ@x%\MB?8vCq;/XNЛ8?.J06IhN.rt5*6%mܧ$O)7Hh!-r(4T)c0E1<(Xjpk1S ,ih7Ya7pܜ|?C{zDg?-^$ lhu$|ȧe/~}3Av5Y8_vuN“[)d'l@Їnzx!C ttS!|f3垟x !ğnʨ%,Q;I6{&]jihKm P/VZXq%oVűA=gw݆nn {wy?X||]z-I/I-c^dF |V%TODI$MHvmYb:SRb $Ir7( qzMLJ0B-F\w`}-?sj?M ЗGi[o:$;z(ViFk}Bf-"lZaGTB=% (*t@^|gQ1PTÒ4<2LrI "wG#˓mP_*ϗ()lüZ68% 7 kW"yF{) 0X(AnPٵdd>sބ9$5#G[DfB`@0]X66QaEzP-u@D\]ס{Iyr"VjA<G&"D`l.[eMC6Z~mF\xd5FUs:.nlڹ7ZdIɍ)"§S tw[[Y-xAGc;l76, ^vp}y>QL'AgCS-MU uoa_O&{DҴ#}:g' $n乶ԲIR-ޗ^?<T(o\4.TUq/|JH-ēc=o:K(F wz`̉]OHo0$Udψ9BESVÎkafl5(97zELIfhB }:8J-v7Bibv|LV+b/ ‰0}ADʼnzXυR(M ^l~ U:"w塗1^D SKAGjfM n$:Ic~I~~*.dU5$F5Y7gYQQy g}#vb GB:&Ϣ-Zwlb3 c'"ׂ0#l0Yhod>ЭVHef ltN0wɸZ$U.)ɞRYAtDfm]) Ts52 gCֵ[zv5r ц+rЫga2q킁WHo}8Qk*g! %a7P c@$UnZ{z{FhD^uLRC 2 Csx3-˽O}/eUnf1%VBtMu~]h" n\BhߺDߩ~#د#2rZ<{ao9M05TLZ g:a)7#T\1;Yu^ᓢ؊<Ǹ$7hwp=$0zZJt5'*a,;fzE S [ 3ӡckI-+j[+;"v16NƟ)jnz kFFLj "Js'\!\oM|Jģ.54Bd@Cl~(juҊ]3까%/qXYiIqԓ H^BRz6`oӚK4~+%ԤJRXI1'VZ{2wNޅQrxJ뙟>Dŀb{Yyn#E뻡T|^Zxďo=IcyRlwWY^Y;5TrxA{]FG>:+^?\\k[[0ںJ͘(XE$KCYirr|& y:H"~_j3\4٩SIR7eܘOOvOVyӓ=jY&~zӍqVpB4RT9z~3׸7t)0XC8h> #c%K ;YHV3r%"f_vl?:B$ekmK\\ou: / %(<ǝ VD95QsWQOzP6 Xy s pCko(KQ?v? ZgRSk% #gU ًj: hGwiX}‡6CFWn/IwIyØ 5jg(c.i~‰MB 'yB MKQISw1={Ь>_÷IK(,&zjm jAТ|2Cƾҋ"PL@e-unD!$x,=# Ԇt@7C| .[pЁmuse0nc ɣ:ҖځPKp)QU9^>9F"`]1@=k]i !#DlnBɕt8eD4~)ѡ R[&x}x씴Z8~o3.%q{m:[zAMoP`횙fjl;>hhka KCCiF7QB&4ZcZtC"k q;C'ŵyW- p$FHGҬrVn@ӉǦZ})2I|TJ_bIK_CI߆NH6N4p 爫2`eP\x-ZSKqiaUtd0S$06m+tn 4fA aT/U5BP-~i81'D*-4m8g9el-Hi^LS}8StI5;RT13RCƑpy+E*^n}M*:R+s/ǰFz?ۇtp2Y h^O8/ H6ؼpqTg acMTy(\J0-6\@\3iK'voFZ3o`WSmJBJxjtR/8[>d;>|;ҿiMXg y<{0$)d[5n%vK+¶(N@^GǸZ+ǃ1:SźҕSI͟qQ":t&X9l"%zάIm]C z{N17P0v"?2k}S;x#Ӊj-PnC؃|6r@9gGXNkUk˭3!#L91G4OfKq z➲x R?g)\ZDžg{UלՎ!qe_[r߸BT(WHY71!1E}w7Ъ!x ??vG:oi%l4߯⹻ zE3W4ۑB Gz["Ax`Mt [ӈYIt1JV*n*:ؕ]^awK -ojvKi ,9)bA=MQ0| hR,@%hސXĪRZC 'Nue=[䔺vU///Nu,$sL¾OPn% a|AD\f֮ΠrD7uWHY.ӫ3oCCqƁ/f7 8 ĜyKAvuh63ҙЪg ROIw*!qvn[]}N:0hTա ie墻KQ@~O!ۋ/Yпw:]Zw,>f6s`AJ#rg YjnqI fXRb͋䮞'Bujyݲ'HFϰo~1EO&%Jխk|AZ' [xھ9̉H@ݐP}Os8峈L.1f5to˚.fC(Nf0h# h-/Il)L$ٺq\gATz-ʱ7[_|o4gLmV|_Jf򙶋*lѫPaؠe$ l!v=s!oM+!qyXxo(y*a%B37uoGQ 1}F'҃To[=RO!0WKttdZ@ 2lR(!8vRJ~׵:/S>LjwBn/H+jQiQUb,*{5A4)djT-#GN%@MJ>}SR;¸νR>>]AP]wy;_>N͎x$ͩrL='x܍` ܬ1jnCu~!8k Û`yv$7C?ݑ\\o~3 ]b<^hDA)nS-ysRJ!ڪ̎=nR5x3;,8fɵ,;WbȪG ϞqW dM캱"B0׳R Y[䎎\3gYrsRibd8.HXJj쑥怏9xU%ry{L{ruWO1b=h73ٮ*ja$^Z'))"Lѱ2|$Y>M)O\Bk ю=$E]7us,OqΧKsOxg#wHT:2&}o"LDW/ϴsd~H(U)@HwY[P⢘5J,Uay?g%9:bwVopa)z7LgB |& r_z+uP%Y_.h#Qqd5ٻz; oA_Qr˅j=|&Lcmjg(ZɃRt@ۊ)Ͱ3<Ci1+Sb`Ǽ$Ɔd_ =ǹ08|UX:ST\,&~ CK`1a0v<%:R&xcD:ժ ϟN>qٝ6ݝ`f5fp jݠ6!K? 7Z\yȤj&tBAՒd~W}مn@{:@OX338u5ؾRVs.#?13t3;;|2Pvv05I Ku/m!~eUH"?tR\Aiil"3GgkAoN+8DVR6_>EߐF9؈. 9zڋLl{QqC>VYp8B(I OY/g(3\LayyUGW%RQC ׽ǣj'\T`iiȕ٪%̥`NMfq,@Zj$Ε A{gʢ\.Cq>花\\$"u`#=1m8+Qѱ@(9Eo$Ioj5(^X@Ooe1 ^Z G 0zg.M g 07*pח%cex?쑵fvX(DHR`Y=CǶ\m>s%3tc>әB^)kFY& j1s̥g+'aU%gKIP(!pfD:`UUG, cs9.8%6x)CdQي&W{#nf$ܯKL]th>l:uzԘw;r}d-U}xf=꾋DsnG__R@ ÷KgɏȤ@BMTO-xF:SoyX(|͋TB@36]l\9P CM.)ʪR $Fyed N^SOzD‚]|&Bň7ޞx]Vo Xf{ rB MD˨϶gֲխ(~ !q$FfVXiBr\QhS}rPeh"VRaEx@j_d-jMiScsȯ%bAcw;5Xcp ##1@`(r:U R1*bhʕ]-VgWTWvҿLj0F3'84 xK}rά4GyL]'i&@ IDj1z>Gto] qfwώ kGEHa;x-T[ &M#GS9s ԋfSTmu[ /tGL:L<_zL|}~gl'ڰSo`z=v<&-<3wKJ6zxOzQKzV$e7$r' _֍pM}a!K[%D1&cE}Z>aL2YxR ]lGƀu[Y,u\gDhWiq|T9M쌝y1&%"F^BRg3j;T aa<2|02lB+? ML;|\0'VG([e2v&E5:' %Yk76Lf!o dw_og˫9טQ3}P$/7meLF*0.zR]H;ϛet_W<ڑ,I<ӳ) *L#"*zrf@MS=UWC]Mh36<*S0S@*I1TR]NڶG*)HYW5DrJ^%tjA&wUN/HgX Ǘsf1]zz`^9! Ơf_B ?Hɱb9~]gsR#͠5P'~Wq4DXBSo>e5IL }T!7*QӇ◙?]sO 79aB'FvN׭j )&Y*p\$k'42+E&fj)A4nKϰ 8ZrS%zuᾠ#809yE84PsuO)gxs2?8Q'J^!/`ۘnu .+I'sfhl O" b#C0'ElDs4-;z%;5 .{C,CH$W]& \HՓ3J.rࠡ}`#xNKggq+ѥdkK &at`7'ao S"3h`\Y~c7*TB4uuݺ.)Qr6"85%Գ.>r nSlwNQ a*8BBp~LPLuaK#9kUsN8PD'1шEƜyZ(W9 ?WؐyӟIVbZ `o Y$w P邾5bk5w,="hbu҇9j:Evh4t [YTg]E:&.hj pUPpnhLGp0 cnvBk~YPB).}Q,I3yHȩ UC\,Zz)Mnq#ʭ3+6"3@ Yq)^@ԋ(L&!IM7L[ xɣU.^gTRw?m慄r-y·CeہJPY}:x9y-,'(w3na?`nDlj<ɯ|v]IcB.G;!NXuKY`_Lˤ-MYFFkGNoœlUEũ:uhN1뚼KzP= 2psOz9']U'JIHXy_:/*yT((9.\p*Ynr36Lj{0Fၛ MLȩEX7 N+M1zm~xLfHțѸabz^zSC ϡ/ Fg7a÷ i?Bl G%MgxgYGedV=/ߺjk|3hsSiRčh4W'Hjyx#eͨ% CesY\OLI|˖]~b]cpiٛ&-h{ h-^qDCГ.`<f !*yu@SH )zwKzABIPH<;Z?ѻ虼D)Cb ZM Uu{1p;(%EJxvWR+o*i?Φ;n}V5h_/Di2 ewׂp!y@vtيIWu2 !_x:ۯO38F V Juh,kqW jƽNAnd)mt|:>Sf۔̹Қ]W㼩6*iw(o-vѳ0ٗ($:yj?^2r~)o2B"CaC|645 s7XR[첏yF.SxB ̔ EuaБiK0-zKͶD,.xW3(('AؚcJSaf0&wu<;B]o7;N(Rzo/Np7JTLG a_ϛJuI[*Tv紙'ٟh:< >\O %G *91#(կA6hx K*K6 s6MACcȞ0*B:._be:˃ϗCL-,[K[n'5 ~0;.kd#fvՓ\jJՒ(a]@>C +Ľav:U :S[' }boǂ8oCaOhސz'.mڡ43=UMaeşxa}POl4 yo RndiA}Xcp|-T 4T%֢ZG ([|]__ێAX-b6=@B`3  E H: W7 l.esvdэҍ y0> æa5Ug4wOu$jC ζA4edH"I`.lϖruF1ɭ;3eME 2F*7l5DRK5rIw~Vq"rmO'b?ƉOiSܛkP;Uv]>߱q/aԆQ Ya<7sIm=x93̣V.t:㞯ϓexU/^rЎ˧VRxsP*!iqlʇ6(O*KRĬ0lw\X6sӍC \d\Lݨi.}\L)د~1:P`vmj6k^9İ@OҔΑ%4JȟWZcպ)y <"qȚ~՞"?(g5epY\PdǏuN\o=yrK/F/`yjbF``픗Ϩ(=1I炾|'=B\t?D=eP(λoV%`w%U2Ȭ e)Pf:3bc}!me5ju! /l U#9P]7I0T'Yz`5t1,'}xi`&Dy[Y v0ǹc5ru/Q0<L['A7 v{"7 voTppS,*/exu>-#'4.LՔkcwnD}TpL G}@(Lk#v,\+T@쉹5ưR^V~v5٣lR̉(  TxFO]8ˮ0 ,hfB*Tt=2Vii#@J}ט;5,olG,Ms@wx$ bN-^gB:US_WPZKt5NI'Ÿ @(^fzijJ ;S%֛2sl"|?@q2 2e62"/ZŔN&XK.f&}%R@h۲D!MυX<,\P74zWa݄ze>:u$xA{eeޘVֆq'-7=R4}lpT3JG K-l"CL!1T=ֵ3)!JIՎ矽_jҙށ6X9pQ:;+ &Knq3_M|ga2־C1]߲ byCg4 8FoҨZ 0h519;]{$=Aٗv5 .K#աh뎔EC plb1{>ڙRM^h7V=_h 勓R=k2pS n"Ehq+}/9RugKљ)wS<dz:3 Ah> y8`܂Pw9Y3l&sRXkaf voếE|ULqP|DUO_#Y5YAla;NC-ʲx.ՙ+j*<y:` [} l}&wcp`; qtcS~;gFnW \m W!u0U2l-$Z4γNUL~ZйY<͢\;GmZ>#wr)TCGcxkyD~n,ř`p\qV%EhRw. YlK(X ڋ,rV /Jn.]2S7Wŋq5JǑ+[` Mg;t'Nd5h² 6P!pp/%ç"D克 "ڬ@ތêG*ҟ&nׅ&90ِ"4ӺVY3\B> ďPk\D\pG{zd͐?#\Vy2Nsmx{:˹G=1N"u"S ُF\"8yN+VN3SV!1)faKHnn4c2F돛@qgtN_Ԥ_^k$1M61U=QOJ#Aɋ?>@](/TusP\UC(0&m2/~LZW"ĥ-yyb\߼ ni*3[E%T]?ibI1NysqSc("N^j;0} BݜyM뗑T\a)$mGdž|L?V+D5Lsh?:Tv,<ݕQmeHK(? С R!r*HFV5!4V{V+7D-*H4xɼW!ަ1tݥkC7h3$~5g20e2*e3;Y A19ߤe\$8\3%B=(j u"+ζ1MS^6TR8b F%c^t`plCogVz͇x&Vț6=~>ƆGSf' }t}u6+$4n`BY+T`U' IN( HK3V`> wjH|XBz1<#$4<Wu}\{qP1+:Ber^g‚ISU%TԿD`j LarjAe)l*oGzɨ?Q<8,Vx"<>U"Z70ԼO54ӫJQ*C.'Fy$ ~\-S2x/~vU4u ۨdΏV;*W9$e)@G"e&KI~f 6Q4?ޟͩI}&W7w3V*S._\.G @ĺwȩK6SѿIqj XC];<4 2ں뚭G`.jGQgyvh/Nf>ܑ.4tܹj1ĤKHNopND-$^CQ4.RX`I 5 4)p w]|݉&nG6OAz6M Ze= <NɬJ Wp綠SkN1w{[,xE!-ޤC͞?8-ܞM3fB?*ͯ˂*qBMf*R9.SgpPU+2 eTld N rFx/J6Gl&K8 1FbTKP;Ig 5k>"T ۰Y}US,a8ETx**s]a'N#X~:}ߝA]/ ZKC7u>aǃkT Nit$DV_n4R\q< ;=З.88ۊ Dw#!)٤=#I­ $j _Wp\|l/ 0*KT8DA֦}3"Vu’ މѦenގq$>mb\VT$ aASPJћx+S/^.ݿv2"peM_*ivUR`׼rVeՌyB!0bKt频hCلر+s :vi~Zѩ&GqA곁}9-Yhъ\jWXӳE'WB|g2wP:FN,GZ?WYQ {)kf$na+mi'1pziߨo0!74Q<`1ΤVRrRGy1A$.s$ \ F{V-+צKK)Mo9d5ѰxR#lX⾰uϣ$c諀-+}#q?  gy| 240LsM0Z8 9_%l1=W:bQaĞ:Ђw DMQH:q z@# jI 0sE$BL'F^~T$N#м{ݪ~&FTAju~gMăuYId6_3‘TLks՘ꠇJ`FJ\)$L8Le]ȖZ{dw{mr1$r7Ni `ܝOuB6 Qd=BKe]W @J:&/G}SiU!=|*vћet%6yЧхENsčUVMno~T3܍'>ň(NaM)@N$5*}t2b{SBԃ H !ok+ J$Vi Wsa>Oɝ(W@F.2:dW-?b?9veX[yhqޙ< ΰgI,Т%u R;Ѵ%vaH8v]AkGP0i«0b4> ~5pUds/??,o^=|bF9mzCaҧ|뼆 Fs#"Do@SR=_fz—q.6GXhdsEk|D532pGF'ҝ ɘwZ1oBpl^CA k *xw^[~ªnjhkLHjZgP~]%'YC4:EqGDFjO\P} ߓ!I9JRH;5|KRD#i۱EWUqq vMwTI36T ,tw$0.h0*䃶yDٛ YoͥouG!?\b,Q{ H@KE4qgJ8wt=(LyX`Ş 1w`tBZcN0A\F|%A|BGֿ49*llWWI۸&Daɖs,/;o joNc*ҜokMoh%v* Q+LrZ]t>k|eEP~6W~هh+myH.DzB)s`Usl~#e/$Z2u:om$ΞCQfv˜37f.Ѵ?,t bO11ڭ5I?++X[ fBiX:&x HN̴gDy mB0v'\[)*kEP==$}{ڨi10u3 NNSno}YZ1żt-FC?qȨvl) gÁ=lU#ğ4iz`Y'n% iZit)v4{WҒGFj r/&י)Q^chS]߼>6s?./f64Wg M0=IM6a61NE<( 7rt#9Uf wZ'5nF TN IHZV@P)vɻߢ!dYi#ua&Q@W *f5)`~CQS=AC+j* `G3#FA<"BpJj, ܃gtfzԗRm]Fťqf]{DhPK"@ISaʈDn)QJp6|  `TV=;qjT@/-j" JܻCPj[dpX)>X߾;ثVVbT<\уx[&7ԧ,c[ #}{T}8jtNxp6K|Gey 2ed(UԻl:s/Zv;-v #AM](n4D=.:|͏YU0:~ΎR ހ$E+=G+Z&UVpp: {uh]'ہ@*T|,kPZ0.#:/X@֏P3gd$4ƿMZ0HM֝ W7/Y>4֯X>/-@|a %=܌&7/|ӓc!) }Qr¥捈8m(E(^oKdʌU#xC#HAis#PuoA |DLy=mlU~{#a͔f`)+'o(#~<Dz+rQ/YhXn{8T;\[گiݜZTcrá[ ŋԂuѽ,PQֽ"ޕ~8TN:u0~3lo5|/ _r{oocS7Dg37SUn4mhm1ֵ*ܲ0&rߐ@㯜u#C@w,f/w"Fc}d`OE|7 HEkKvҫ QJ Db1[7˾! RhFAPuO'v%^/43϶ԮLiAy\6"A:%2 -B4ȺRON:@%SwgRZ`k3⑔rbUuQNe{ v[j!P~JG^ FN @y]"%UrJ ur!UK?L49-iv_ 8逤W>Cmˀí;ꌳrB$Mt>МR?lbOUJ$<&QYXY.cmm%qgrY8@+ߟDϾYwfιc ۗݼWUm=Mn}ݱ_*vqPM%A}0h]ZwxBM'p #[ݕMxCcf+Û:b9q-csB)͓̍nT؛_<:%`9OOc:4/@YnRCqiM2ļH'r%ALZ y,^aߢ8!8uY-Wly ֱq GE!+]s'T+[2C )&M)OiC>9Թ%.VS9W8kٽ9Ё9v*(%0Qs`N!0.IPᕣ0qpbji.tu8?hG΢1<'Gɏy߹[B:i2jBU3Z.z Gfzr&("Ωq :4RsNlR 8lH4'uq2&p?duJnIſv:B ߋ;71&=<&mYX3@gbe vaRLU?F@$8ESꮫE)ngҸl4یL2fC&PG*(^*< :=o*餯6edUrl7[J;: z LR9h='qi\ק$BJmGWW]Q@7W_'Iys`oʣPʮW=ΐ޿މ϶I;"(HmꙬ.Ys^fcs61&h;菢p5[9Zg֜AhWmvy0h'=P=5ؓaMG =]#8QxZͷ 44@#OCTt7EGu޸+KUy&g҉{s_;`>v I67[_^ L/kLֹ1L;Z9!wyQSylU [nڈ<#\o!k{kvXާ(vwYS+^,[ʫ >_Y*V,4Erg`x̗a?pͺWz!&Xʾv0Xz5\V*ogta&q[gIr!b!"}Nsi*P{fkp%_&a`R?4yt3eCӫ -T;)-ss1X]2bĨf׵GC;DRPO#p hW]i_{8t=tS?R3/$ȥ>zfB!y?kGE|r1-8Nr=)㗉]af?lZpvnje-GBos5 ):.QM |,;:{x{YPkUd.6Ӓ{+V{ۡe7\?Pw\lN%j="y㛮$O,sVVKLJKArK uv_Wvym fwXH1(nI'q‚-& { 1aЂ35pcAXk5^3qRrlj_#=S0 c#,.X88΃<15P,^h"(7W'٪Ke)2"RODaTql5iV/qi<^ۍ4A!33,)(6}ŵhSjqBjoaŸA\w K|^;1NO=+r y'X ;D^},kXp)(&vǷn׺#g ^G\r*%"*9-o/ԶS:r_U=hBM|? px$8Iƿ+k %U'+kxn)/Nu@?o k0o!xo x Q+k4acխ4"+S?{Lkcv #ug+Rb#٥::=;߿@nF&= ܼºXl0O;:P-jUBR,1:r^AC!R> Zab^a-}dd?ݎ?VX x}W6jiaifNa|)-(fvǠ~r/YG `Tv1x^S&Bl;k]ڕ ,hqs,bc}pQ!YOp$R G3vAGjOۀyuuFxkمvq~luGnc^Ő2Jq5b }ʯ?=Q]1A涜u|% C&"uٵjVԣմ>ײWU(=@כm'g /iqI49nLă\m`]Zm=,ѕic$ ;wzqYPAwӼӸJKzhN׻9PH8D 'x,֛G:L eR5 L+I#bk;jEKl|RE-zL_ tty-sF㚌,7P6ͤ "6~~oD֐;-: P01^>P,4`Wn0J,[v3n9RGc;{iqgHTD(Mxɣx$1|- >;IDD=2X'kr(C?x=16ၢaǭ:l3 ym+ºl[ƕ(f EƐieJp#:] ?`'q&vfĦ.Lo0+ ! sWl.2Bbb" ~wi9oo_Pj=mɃ3l%P@o_=9Ȳ2$ ƻU_&KNG}SRd̮yl=b|Ҽ$ԧ{%q7}{eQcͲn1fSZk/>$F3q8|i"D8-Br C?h!Yϧbl 3J(E65Q+pK$3!R6{/eIynU"7) u|#f̭3E_=iNwю^3 YOcOPl[=JG'=Ss UYLӂRХ?Lk Ev5W {Eߗ/ f7; {;L B?Kٽs=]MۊI&SN4Me[E!leZ-GfPD\ *. :egӡO^zXIC|4<7Bd~OWog=CZPwe`H_%t@{y`/RH)ޱwImqn?c"G:jЏY*IƋy \@],|m!qHwVW_0WQ9$lD[c|dl2 yVVCIǤ!A}iwD#|XEVR@IfF0FY/yy?y,Ѝh3PuxrucJ/hYٚ =WRa\p7ǰPw>=_F*oJZ{eKzoUKb-K=2˱i$< 7AqbNBʝgU CɆ09PwcШ_r3хpac?'Ի *R=eWE)Q29 ]Fcq==inǡ1)pyVf)},jQϖD!.o*{@r%(`Dn H*ASn]Fd 6|NҿrGXYM~nrJVN6}S[E "5^vE)f /@ 'ϖ!|&QcղvO¿ Ӱ5% V၍tZ06DOK+e)ҳl9򽕌&f'*w5gʄgafhb}Pirm`e4DbRTyM((:"ڕc[lRqpK,Y!..F'R+ݻ7MU22LFPC.b8k;IT='ч-Yѓ%iww ;];[KKCBS\vj]Z]ā=2@v4UC+gNP#Y$‰w~3!F88Γop$rɈ}D}ե]M^I:5G{4HӔ+5= s+ ْ /L:z<%wh͝Akp܉eg'O waNpNAs(v<&ݴ x:ey9 ns?9Y|IS!#Hg|t %SYN, \: HK2}ZKAEli\ 2'IUQZY&rZMyX(C‰]}Iz3Axsc SdS@ Mx7G_7E,,DF"[e:Kl$ w? -S'DZE҂ -pM z($Iikg32|25*7NvT+@fi3:+foOW\sx4XS^kߍGe!:z-0 @4"JjmsJt}GȡxJP80x;#g.Qrhp8̋V)$ȏ f\?lϴN<κP%GpuCd[Wsl#'s"Y{kOe}wvn5]XW-/.NPur~/-isdby`=m(oٜ."1.ŐZX}-fƁ0/mE"pѻz &AFTc')DMaˈ2<͕.ꉫŀ#^[,3{)%c0,c]_W}_Mg]*F8 Bӝ#Yt Vl"/ |"՗4sha7ֲ zRG"RaCsQ^bڦr;mz[s{5:Ո|Ȅ-h# CPWYIGKaHֲz8)ʞAk&mVW nkAPf*e(?O~:гv;s u!mͯE uDKǚPY]X9L˜.{~e1GBxrQ#FK[C P/ѵۗv] }~}35% O5yD$WD9жǾ3IνBۄӹ0 ;`\N};ʁvΗW`ƗÈ90isj߽̉v5Z"wH:ݺG0$bsGuZ{QXe1(LSI魡 > tGѐ؅iy$$k; G*%#E(&nitDԢ2S?.8U EDۉϵGesI4[Ң8h bEDxnf mu(9ڥ-=ukC|Vw&_GޕRx+ˤ\Ys+fEP5zZhMy/O<1q hGj VN#Rf,z4Tć 1/]z¾!Vk~iT(t d6,QVK\%.}]SU >E3&\]z\Wb@pSHҵ0HtZAy0VęC!|%P(k(Bt%O2̵}Aau*%ȇ]ԻP&<jtW0pUvn+Qt`]劶b l# "!̍ @yG?' %QQv-,aKCx0itMuFM[_˼ׂ Zeɿ51D;D$ɧwttt퐫$FD7- CJ]*gtbޢu>ug<$~85t^0%Fu{CmVzp杄)S}-wODe+jv(i7; pU wMoW=zڅYGB{H#XS,a,ޡT3ar-RT/|\ykZ+[jq@m)މw/tAK8Q )DJ;8oqcI4_0K:m3 ~,ϔ|YPzD]Ow_&J[+%ej[3[ۯp- 4lF fPw R΃C J "2+=x>Kz;gtȢGk'_C}={T SZ^jCAOJs05c#Z;pCNGo,LlԊ0,2xip5 UEՆwz!`ӉEH̟ ͕G8Jڈ_\prH3ҧp<41!#،붖V^ZOX 54 32Vo?m=JQX(:2 /gFF ub0ʥy1fNT^ HF*ҏZ-JXP *$axJGV;nO?"04.qMV~#E1P7ˣV&Y,B@A}$߉{ZDJ {%&Ъe6Ok͚ŴV%F t|1>㜭dtknLagJĊnϗƝ%f`!H< *^H}3#()hb7m`M_wАˎ5Ö ~I8pz3rZ/s}r?ɹ5`]BvׂǓL?gipG@iݐ6Md3~;,G?]qu/3 VʦƳ Vnޭ^LCI F?PJ8=X3Ҧ~іSQHEx#j`dbu-U[S~37v| ڵ"4ʚXN0v UjMgl\йB- "ڰ: =817\78n4rTͱ"* *Q=$X*5͉&ɫ+ʪ$WLʇ!E3!:Q}HZtY +"uv_s,To<M")4NbɻacLP>Ki,]Dg(Ng@(r7#t[Z{q*_O9ia^І$ʁ]s3Hl^ԿARvsnmdY/ 2-1غow<&:A6{(I@Z;yf)Ze4jHskLJU#MH'r X庱M % .|@m?RDq@|,)D7Z6*JAy_l/É3GA0B-\Dz:ǧ&4L 8 wm,Tݛ8 m[n4ꓹ ,Tkk|Zq|*s}ǎfXOR!{)Ock-/?h"??㫈 X>@DԏI UB5-`,&jîBħ眏;-"Rf^=30D!O9r04)BB(Rq1 s=4qW~¼)9W &i6 ݎ[[_R-CVu:O" f ڇ; tVaBᶥh25&C!]cyć)oͅqMVLJ~ź#3"QbRPTJ? t<BevZ8Efl+c9C=7pok:9/H5 XwF?ݔic#=jy(N̦ G NwKhf((0SÞ-Z-ƟY4Zv.t[J ^qo9k<Lj!Y77@Z/}' 6a쾌uk ;&! vq3q"?&_-+KeR71(4T@N:0^SJ< fģY(GFakN{M%]S^a.kɑH%_ nm=L|QLX0 ŒP-}~!IBYB؁+v~;1&{3J1PFlGC4J ^_Bs 3,ãO] oy\&P|?x,[W?/08׸rHm#@Ѩ )mZN%VFjW# T(?dpLsT!#[I vhk`b=S6jXu6-s_$;)L$ b*D؉No`'8\rrG]idY,gp3sj5 5Vf,?#őMpJpgxsaE+:D\?YvyMU~4xXI d|0UH`L,UfS%BfdE9zg#ޞJdg_hi&T?ɽyS$Fľ*RkN><{֣,[SzN-kFQjy#΃MX{`Sşл=J[3>~Q;xbn3 :Ddm+0ݕINp|5i7yxs x*KR]쌪ro/V?|@2V1.LP6r+KqGV(Y:͍̽D^;@ I)2v&1k|Bbv`'-C JpJmg<[~+iR߃ 7jכC7O(auڼw0K_|yuGHɊ*d/gN㠈Jwdtºnm ;1}h*oV uT+`eQj`"Q a5̍mvA##xxBq\V:2nΤͤ))e r}G_nT1OC:b_ ˃D xǥkm?S¨F-gU+l9jҗShoJc<-&X[3НCߐe߬! R+:P#[>WEclϭh ᛇ2ũWl(SƩU ڇY7Y9kCS'^=^͇ Kncco3ẂE=trhV@I#m͇!? ==֐ K  xmD+Ç1wl,PK7aJ|HQ_z%K9G62m5+p_;קEQ\\@\bq+E94&azq 8E'בCpnB_ fE6@b*r^PUN#,1df=6czpB2st5ys]:i03]MC*|cB7Dt½P@.M|@j쉨K RR!-Sf<M5:b~ ;Uo9!X4(?UwNeNDf bvRqIDQ@]ނC}km7 Hc@$dR_Dd۝u$QQל(cy\O ^FH:>1K%o6pEQp*Vki$eԤl 90wUt# fkb%n]$yMP5jo*Gv)ƒvbk\d,ÒClFb55^<vo\rzSq7+1Cfn]'{NpN*6YPw~$zW(xE8Û&= mGi 0 /z\gr) !h(ywrRd[ph`Xbs DÑn ̨x>$v.k] @7[2M&P/" ?},]KnZFЀ?!ff F/GHt_D/' X`n bɕۚVQq҅]66tdӏ#YZ_INV{# N`*}j&:.K18>] JIYb2laM߅iBX}D"-F :%COq=fO$w)&lb-O0=27qAh )7KݧS0OWJƱ7l(|ԁ?|)ֵ= e?Пu}!'2UZZ>)Ej8;H0j/C9b1"= w і?]ZI8T{X` -k)9 F@10W-oRwV$7k fUji -F Lh2GLxgU4T?58rIޒ^_Q4-C]E;0f{<"T{ɭ-0ʦq*tL!{--[!dBBuS H$Vx둋VDx)٦7B&1tOXnjXOށNDjlyճh yK8 ,+yllBiRT|'^+KRcvonyV[*,egAZPI,wcX68`қ#+y]@^1Lx, @G)5ܷXW}%(kԎ޹jpFe"nylj?gQu=5V߳RG'K;'[$ 'C!HR[b-H_EzLkt|`4ζMv0~ -,97e|)\r+9-n 8KF(m65jD@sWC;w30 |Y9QdbjXQ.^1Pts>@ߒ׃O@+V>;NUjHcG}H#Vy[@\E+ i_MCCQO7z`M^M)ph#}ZRUMFKp+Tܡw i ɢ8?LB1c4ZO T- ,щC2SYYRN;mT@4$m5Bܽ%eP@&zkbyH!c۵;(" Pbj}RHkÊjWfHX\=*AMPR.yvg5N;k4$|S}X1aˡ rD‘\inS q>1iݾ|Be'C~Y)_sΫV8 =8bΌnqEJׁ?χ0jRU t0qՆ j(D\ r5#RUS ̡ݾ MwZ`'N'D[5OfӜj]w$ʑ<%nUJ 4 #MSShcGs(`y~^*=EKn|]y3!Y͑g-#,+iH Bfwg-7_sMQ9P}2u>GT_e^bx^84wa ;g֪j崵ԩbPh O̦Z@P ڐ)Ė;QF٣]gŋ$g<ٵD0iodSñLWg'KI &z,9<}芰鹝U>(Ov"iUVXƌ6[V?cv6X\P=Q$DJ9h`${|>d4哷Kn$:7;1o$ рǸ7\ƽp'fMKI 9@]]דkCդ-vj0_[+O 8FMҢHl>jύx_-YPZ'0ǠeX|R>胄*ˬus7+E!WHe:UMX{j,0~ gx~L8Zڕ۪_GUyC9 DtJu{)/ WGdE5m;y輕U`7}m) Ne ,1L+>jɶֻcfA]vU] DaPÇKG .-)upȄ0sw2|uAOdXA,NA屽 :t"S߮H܅=| م/O ܿZ8o&'"&x(Q^:ʥAMoyQu%>bp":l'N.0H%|!Olv#>֒ԪwL+x&?ۛs]ajH၆VلI]4*+5v[bx_!+V5F96~X%R j~!cL@Xk g r94[}2]?Mp J?xjS2_)E}E7wR!bЀVPR)hF2izɑʻ+;sugt[H4YcQ8vNȲ<֯E:KesÅ7߅jg.| $8< a*Zfy5d<+_Hpڝ0O}%~4m:"|݄UbU,ПKyU=mUEуT-~CIeu|A32J'3\@$$D&S8]*4̏%QyfCLNM@ `NV +k:}:63,zGAr.r43N!{^gtYCH~psǞN;ͿTg61a;)=ݐKDJݑ8+b rV]O'xclܛl,^e:tےNf Ev7.4.;}h<8 IcG an87Pb_F߄X~ήaP\i_,~pYsbӭA!8·{K;0((.B X-9_2Bv{_N@ˌtn4=5 3DlYSMId/JBC1#[Л6f"ٽD|D_إ4ș5nQ/|"~IۇugV1B_ErvdƸiS1'_Q41p ê Sqp]]ԪMwb&\rYg$3?h&? ~83ƅu_dtS۬ȼgߊI (&~)%䠲mіn@6MX}%jo]`S z9Y rc618sШGAi0{PWvY5c[)(9E|WN2.b{ '{ ‹5'@( @5d"ldZl;W2Ј. i| NZX(^u=O4zj=}h%]֛2Pc. ZRk*Z|Jh.,B񂞞|+hEZ+f}䷫c.6oK=e(bhϤ:]-2i7TY||f5wm"gϥ3MOrdJ^?,۽tXfș Y6P`Kqx,-B~>C{u 0hs >]vXJ/lO aa_M*ɴm{y:y$@7x>O_2H2.3Nb/^$B&4-gic&7ßz2QH 2N0x8r8J4uU*c8l~*\"T*Ǭ*ohSF7_ )Qi@nx✕.Fv<!Y_4 O 3ZͺCIq~sS| Tރ2.ld>jCX jd6aweguS&Nv=`E Q|qPF*N ΪV[j=" JrI_RvSs#SGZ@SY!]UMv5~$!ˆ)-y1Ig"](h dS"d'J~&S k8%⡒^Z˸ԩ>؎ EX!L<8ۭb~֯/'Ӷ tp}98VuS Pp $x"-F+" ^X]Bª˗ \AO=J"npI3+qLA3?yg'a{?1翐!"Z;>U/rÇ، +ߣgv&;Y/ (vz$<@|:_وM'iFE5q: g.rmUkv-1 +Y,Q3VP̱2;NߘD_5M|ZZ343`>~컟n=]QURX>n55W?+yF7ʦO9y^OLbUe~|dkH0 #Mڈz,˞1UE: C ).@6^x&2"epZl·mdw S2yk-ybwq>1 $r˸:TP;#YVhDژm:3 a$|_ZD[wfUL߾"ca;MFNØzP4yۘi?r y>6} U&rl3 D(c[?">)g?N 5%uhAYG[BamaO:b&fU|nע \Iݱ$CAmhDFǫ BUA?$<tL*|WCh!+f}HƁDhjC*D#%]O8knJ݈0Qt+٧nar-e!P;;( xm7tX?@p8g.:l;iQ_nf>4CՙJhfķvhf#b8dMLsO#Ī t]xJey!1>ڮj-8cp~k7Œ,yzO!%gܴ$`R¼| dRq+flI*68HdHy.3Ι9R gf!!۶D8]K:X=d>Vm{C)"qg q# ѝb}U?x L?Ƭ54c__*·*aL,e>zJ OK;H'%5qҔaHS/9qCܲ vсh[뎫g.xƈFPbsWez8qSlJvK|M;Ex< gGpԨѪa!qGÍ3D1gZsE_h\bs9pMLaoc>YLLk_Uע RMqC 'ǀ=+Unshpt/ZzdT ߭=Oznjm'Ȏ^EY8لTFtl>HP Pa=8-x/|h^L뚡YZG8dYXVUw#_>OK{9hBYp&/0<2]&T}Be;YRXM{|8h_w镅)M@y\\LSTBoHkUޜXs&>\+#?f ax`U1M)}PkR7N;ATXLLy4-Ќ-9ּ@HS|-!;J9n{t Cّ=ڬLd]g]v.\MN\,̎tFN1TI!Wީb:_ˬt#N0Jo ှ JW+z"З**WL2z☀=fKWn@Nbi9l dL]+}^X՜s3S\0lRhڠsV(o nILCpgJڦ|OKj8mAz?6ɋx}(IxO q{U?Yy|eUТ&Y_~?]M 0&>?aXٮJzht"ۯ?>A b:IH o5 7x\4Fwe0"W YtՌ^m+_vC訷1o%59Ko͐(=sM^>sD^/f~+}iR KGȷT}j J nfRDL14ȭW؆ΑӢKKsܤ}v,~kg42y~ =8k1pR֥#+z D0a+c jr޸7uEmǢS9驪q(w/5yY&T _,'~OV$塋HCʖq^J?_il״hE)LE\Qֹ̬r{P=( bYաYšMHq =Qb`LR<8Ht`~ؤa<2Cb?@e79-,J܍>\SO8n>MFDőC{lwK-r5XZ戆rs7L]";hrl }DjؚCkyRJ0>nFt.ď4`^?L67cS"@ & kXfZ3e_ ѬUHV"Ōu0&Ca9qMj3Ц4Ѿ3G(6dDbuLɴqZ62`arSu8Z"0rެ~}רeΉݯ`e;Nä]%xy!G^!ב?A9Ynև̖Ja1/x DXFKAJy`x]4=pd}[aPȵ\.\--ɗ_qбr';v DSlU fv\9u%KQi:ԽF^oۆ+4ru#^}% `7 #aDMD&Ž:Hq"W8&) VBUz/'Jۏ74Ta,אګ>O=.vA̝ ]BRopE>أ6ѓhy ZWHz 䝮̒Q3Ҽ* $bFnܪ5P=[۠|uCg͛p6U6=\[/fYkYvO^钗bb{.<5B$Mȯ|7TOσ< . 'sE"fc ]52@r iP'8 %X$JB9Cjyr&ŦErh[J}vK.,Y ~$ {dͧ*/l[w1,RLrMtb^J7hm=;(AuݫO0͆aV}U/<+_/{hL6tHd,]7C䤕]4kŪUHk 3sX9߅?b㸼[RtyRᦁHV$ið*zvw3zn#}I`4 _{G F VD>d953 v9#DL8v*=w96g\[ҁ-H7QIݔj^ի'NSha!60" =E(D/nJ=)rFtd(Y츫6=zy՛q1*U؍l;6U}?b`.*+jYm Jl3H!t]FJ5rzZOQiRr"[1{ɤ7VMx̺E@+gYeo AkM`& 5A+֩GocO{Κթ՗18hk¢CpTjp6iQMsSSEKfq-j6Wf Mdo[Jb6f\W t ]Lu19O6x'h5eљd?8F D3͜C+jbî!deF`0Ƭnx:~.)mV7 7æ[5wˆ#ͫlÖ!J'y:Y, @ת^҃deA˂ЕkinbVO7+QQuv0M{@r򔵦whYoﵖT ޤڨ@/ TAoRRlWڏ0L k9o Lx ئYoog`D4mkDvAw`%z]5bu|VA °Q.t}41~I4h! ,1]Lyf&KL>*>c)Rn>nL^D l7)[HՋ݄1tdp&1U<=᙮]twb>/*o/ˀڊ1UٿAhf*q&b]Zp04>~|^ RKGN'6u 2GjI}脉b&e+6MZP0$_,y4>LWPVm}ॲQP@U`_u#vˏ`;Qj"y5Cè o`z?[o .XF䂉ߝq6ÞKAǘi1@c% q$jh~Dz–0l΋,'-mc1} :Ҏ{lR2&Fm ŲAq5lGK[$GOq7v)]~2R)9͟7ք,,K6nUJɻ$$ S2rÄ3r.yNb)c|lIn7 T"aScm =KZ0#)]PXM|DQK 'l%Bh;\X}z ޭl)-X]e>h.J%yRz߰YoJd%0lm4DZ: ).Vw*E_ ~LŦ%^a. >cI|%aϒcN"͸Lt_ i]Z{ | e*K͊2\U*<f{Sv6%ʗ7eW c:zea J%7+zOY]9;ƛӂz h<x ҈װ3k{M=OD%/?'ϫ^WiClٳlJI#+Cϕ{S_̜Ѻ@hKe7hME>~\yi[Ox,1s;cl˟Nl7,"̽u5(+!ILR^쭘n[]Vr|APҀ/?ɫMQ2e@2L&BS%~iE֫FV`2<&{y?R`T!Y~jsguwEHoWЊJ[&0 cJSH]J*]ǿ-]4Oo(_8∜u$ҷ*W1-&IR.ӬI1ƺ͍˼9ڢpkMkaAd.s3ql-}6l"s O VXijuwp8wȜD'Uv4yr*ȽXj;<(37#4 ^ sxW$%)HgX!Ѥ>vsL do[gdP?P?7dpX+O%;y4 U*L1h^U^%x36H޳0Y| *j :ʍcrM”^RȑߤK%Y=6&S~YU{ |-+uWM2/X˓?A/mm{c!U9;&%(JGaݸz o혬W(OkY梆-IK (8?Z`:~X\gf%ܽVe!UC( ^H5m|?/n* #Voǒz܏7+[-*\_{ Uĭ20b41:.ݐ¢6R9* Fz\ bpNH#~GcJYĨ|Yzb`EC`>ׂ:JcyU[sUS\Jkzo !,;[cbS_ ']&VUǘz ^RFeq&F;+ UaYDx_5>8OOB Z9!k=qFXNG(6bt 3VIP %тvW؎ gt?0y&nhDZ'HlSX([ ygeQ)6?:[z7A }[`@KF67ڵOA +o/D}fN_$%`E"/$ M{6gݒ5_z)zQ<B-_^iAHdq gRxǻ}in#.{݉upBR#7,swAkmX:DYyx7%o&첵*-pf2-5n{VG3r7T3"7RbmAŔMYviAXLugo[H.JTHDx0ԕ'Yϻ'`GnMhvj]QیJ983lM..ahonb:-:*1%'OdF؇ ݈jLҢ<zf_פz6#Pl[ 'ـtC9:c,8+)YCǑ7H2ՇХxph`'Hv٬JWsQ""WZJ0bU}LN} `]Ԅ[((7նwm',L}~s"%}Botln#j:X\[{anۭLCQ 7Xf%ل#RTxF{u;PQy{#o4H45_B$V#\ wgϵCZȶlrpP~KYlYm'/%s%7_W@i[ivGH724q۬8Jp=MN[ݯ=rBOȓ"™&0ӐV (LV^Kߒ->5$TEdW>?~4`d+7dznhkVn -ʴ'Gu1% *^g.Uq}7_E,C3=>euJ]Dp&0YPº7';듚$wi}F""-{2sajlտ:  9uq_EXp<qVR#żI4+#ae(I ]׼i4KgCTL t.B מ8JPI0C|>+`{ GGA<^Si 6d}[KM Rה]+žV쮋oˡ=Ϲl4(Oc p YXs9&+<.7#h+,vہP~PU" r}bB= yz۾zՍ\FȄj^aNqPhCZsod["Ã#񧐸^)>K̋&Ik\Cτ-A:QC07aQbEdQ3zi )0W=5q:p?mF HfQ  I,2 NQe=z p;96("d)A" 坍bG7FB/S..:Y'u?cG#\@7" :SvGGD1j{0xA6j-؅I מ8 2J)C315{;+uC6D7R |[m㇁'Ac&=RqWq`h.3j8޴(}j:ST}JӺe&eTF3G 6\[ _8U16`3U( ٿO:^.5L+n8uTџ'h=:X]oOݏ@z.t"z\2$^Utv[s6Sn/Nqt_V:Gv :ɑ[W[ۊjˀc(#ZxJ()݀DSс`S8:-yߓ.t V$^FEW{j{A6F$~To']NCJoXesC; yg;d.vz "&z@GL!TXW-}rT3juw&7!ZJJw g}JޭwZ,&Rt꾎I_T b5}DRY)V5f{,n, )eб%F-vV(#liZ}le 8 +œq@ښF¾ 4̎,2ߦ y^4#Q 9"M{a*w 1<4c/ X/I_1|NԻ:!p(ɯO(c#UYC'Xa>(˘=:wcv6P/QL=$IA5=`'TmKвg~bbө ,-b un'^72Զ1I`T0FurZD]N>{1:.ꚒRʸR  %U `0tՈv;<%u.R"fܪDzFKú,*GgÝ(ɄBZΐxO'4}/k:nGjL.Z.w&R@߬cx{ 8wK ,9 Fn^&5I5^aPwQUu3UUA͘VN"4k<.W+}" XTYᬂd/9䷯},;A,U-@u6Ml⢸7·G NDz=yAygAO+ [fjƒyI"?'jwaj|hm^galH*^unx"N%HӺ>l 9Uf\0Ta낽O2eGf {K =~ˠzz@poREfuR-Wc{L` R?]f<1ZM;~(<= 0$ܝ՜v1gs=cњ^tzOOQO{`=$ps2- kExPA5Jo*^rv(j75k~fӰ6Ǜ#-[͙z'Gh7@A:}?9Lcnc/*QnA玍0x^Dv}^Ly-5n\ XhêY 6_ YtHAFxG ̈9 E\,܄JB}T`IYND3<"8eDQT؉,ב-L$sbġp3k|E.2#J1%Oهon~c#d3T^Ɛ,ԭ4?[!u90  EilިO Lt !(E'TҢpin 7@cB኱<˄T0r$0yeхs(SsdF7pR^@BD/Ʉu0csSk g3TM~Mw9shE]LnuE!vrg 6 FkUث=[i3,:h+8>>[j}O#)McU[iU<$A#>ed ?i:-_G袺CwˢCHZ3;F̳#zYԽs.QIsUd"vvmY 2M-Wm٨d´:$q@uՋV<5^1P3%X(擦6|t5i8zfhĊ0ݦ`\k}A"LloyV>YEy762" xhy4cy1 ɲsmN'IcZ3tO>qL^d3qԄ!(Z_u/Ĕbuoy> N㻸&HMصL0#ųVZΜ{u_-1t,G;#v?;Cܦ\ϏrHk,ɫflfcvk+[Q|kg1TwPFp$"+S;Uv Nj3vOwco̯* N $s}#{|.Z$qHawSsာ)l^qtÿ1W~y%`Lٜ[9 /Y^A aƦZӶIvhTv&滿{{yˆ,;P-uu8eM;j@kܘ 70㍂?hG9mD \9%&ZeMޓk0KzJ. ˆq yD%,Oe5[W1)ͬkR&Jt8. R xO?2\r{ZZgkg>YSR:Dv@6INĠniތл`,H4NBA%Oxg%vF$JlW[^be/\kLbߨ\uHϺV&ibaϧ(J;~ St@}ֻAfUc8o35zVNPEsyZGԬ;ٝ%DkE4ͫJ=D򴁣v Ab'#=[Vl)CXJ.^vt& G \mX-![_4tPCvc)`Z8FMQ7DžV[6LgZWKT+p_IWEɰr$H^4|VwT^vLgZ@~|$jMJƅZ@"JO;rv-#8Hug[@qv[3NV0u{DBwx?.7E$ .ˋS2׺YGB :qA6uREJvcɵ(̈{YSV\ݦZl:n`|Ѧn1&!f7=<`0'zj]JOw2jJS&C^xu40f+5˴Jbu|?~y 6REIj>{W a6ǴG;2;]_!ȍp` m w恬c ]#>lzj9_#]nBN?+eanÿH6$wre}{^0QaP KieoSY&́%!l5 3'qG4FSBS&ݳ}c΋i8F ^{=0d n(&ש\p!sYT]\j[ Yd*P/(%f_ :bCEWpnGkQg{`TXJ]fe$d"]A_$,Cft_sIu ;ɏq +7Ģ1{~jC6 oDQ1Sv R]JVAUbCS\'sL=ވ'I*?j OUVykQH=D}9x>BJuNܻZJ1hnޝ|<Ӫl}^Տ|hȻ_Jj"1uGzclSApɽ9~ᗗN51X\"RkGt,e]UԊHri4 ӯRf&IqWS**u78:z;e~[Ig2rrEITX۫h02`6ye[*)ŵA~P)bAX~qa0 X[K,eU/g"A"HL#}  -8[B82 ahA 1I7Ԝ.x ^ӖȳxǩG eYی@BnnZw]>;%,ljhV$AP{6V)Y x/e`軲^ASwнqEwɺnʔN\_z_ܮ j?#DwԹmpS?@VU_i陋@AѡUS&BYy}5GNi֡e70#TEP8ACL;*G|GO^$ܷb"pR-33HU&9k!%ٴ0(MH@ddН2ʚ|̲Ww/O\+#+jҵSD+%4yE\%&&k'{Wpݾ2KhB)JJ79NpD\ȝl W [|T}zV+ #$2&FLRDž fC0;sgrq&'ڤyپuJE)YMPi@uWt[jUecH =L)R+gEN+);sVTqgS40<< GGz~/&EHĂ7ѲɗY7UDBf;ђ~}ƾ@S) K !}KeskW{/q]@ .[MB.0ݶ8"'3Ak(` M075fgDD5jܞx99 y4=Eo-(Ncg3BUOgNǃBf?>}ZLzznCATs]e}?$J7h2j,' ԝh` ,DA٬9|Vgs(Ohp#AJ{+r'u. <_ e̤ɞC)}Bxhh(eGO Rwj޳!un>~ izzC3FA#=*T3`xna25sӳ(Dl=3 _ 8Ox|+lg Z!,L޷޳7žҔEem_K>>{EEF~:ΐs3``8aΧmM84)M#i'Ceʢ\p kKh gU띨s_yUmA.TVFE4- vY{o"nRHzvǁt,Z5pOoAҭ>6'gt{Dh/6{'1+S;ػ^O{5j!gߠ ǠM!j%~nGwjv/x02?U)J 4xAywEjBogԋ #K?wf̟ wi퓝315Ne&m,*rC6?Y-wiĬߡ}Fc`oht$QD<>6Oq Dyp[5*NF4M$fС~7&C?s:g2j͈iC%3xZԕ*vşzpmM##8b/3jۢF+U5J\?cec%wQҍB)Q.ZR/?bd ^qx?5+)1lJiA#W_$ b˄ {掙;~ 熵EH]}m4t}|r'ڭwX|3, ]TGeaOB e+DIXToᝎStQ&f[|D0g^b nӌvb7?6%{qLjt6ʹvE_V=[TW3~}5_$f3RECSOfKR5v;@+{~aY7Bl ~zP"cF1Bǵw ;YZSQ6|3굳dLFF$sڒhw{bЩ};T&tN`œDjGTN^mf,ISHIuitLd+ ~)U{}U-aA23;&P'vߤ QD<WV.)] ~<! ŔxRTb&nFWōCz+ۍ_MVcdƖYP؆U5otߎ m-蹹efJ^qCZ^ay~Fz/U֫RlAml!Q8g!vGIڹ7$HDj1?FT8յ)4Ӛ՟cNUχ4,aw ˏ}Up0s;Z݈zdꃘ(< ϗc0)33SEp!-y@v }uɀD]e~69xu+r(ޱ\/oob^Ĺbs^.%ElsK8xY~7 1qQﮫ)<;nGWnj,Y`[괯yý8`F̬`SHrx=j r;9Ḛ[Iumz u41^0o|o2~QGUh,0*@“6i*eŜgo(@ۙrcs[U -ud10Pr!btb{IVGےڄm#ۘQJwlDhRp\6Zo ->[jED`i<[)4[k'W옾:L xvb%{D7 !mLM~gc. h Ë鐤4¡HD`Bt}Q#3[c_ad;68;{v&ERs&r euÿ!tgɅ?.'RNUUF&6Y9s4l5[ ޶vB6~ի*11V`'EfN2^rx%.[&:q{bOmOZEJ-駺q`ʹ<1y/ss)S2=XUw__YPHSEp2L )! +vu^[O%v$-ŷ ];A4"rIC;fu)D5@vWWI,_r)v!ekR|jzU{!YH tdFJƧ>qy ydxdzt곓63%+.R}GmzgZ6ƞZ\ H&\Etb[Tw->>G8 q`R}0<&] ČX'Lt2}?%гOrt;5 Ñk00%6@| N4J fJ"g5`t{ bGz@Ҳ$ 3V[}ҷ1>KeĨEln)qp=iŅ'Qę*0Id'6 /i1)pS0IwɸwmaSS3`V<-4=t.`\O ƺ34fVd"W׽{ #d+q~QӅs|fO}S[4"d2u"S"{ zo'I-c}'bMk; hgBi sG+Xu|a1TgSwM=45fմ&DŽa ]4iF;1*#MpFR'[TzBl{K%:?lC`% aJB I1rA꓋ 醸|'k{V5H2Q(ާ/qR!ϧY<.s|iV%dv"So psF&&@g,Wޢf-2WE@.&PַlD/| EC:`q!~OI<~$ᬪpӎJ͊~:39a|*cF끕@@O,Íh~ \b3ȁr[Y0 qK`/g8U55zނ XQd٠3y jWa2U k˜;TX6Ι$SOR/@hŵ!Ѝau]0ˊ.4@tq?"'/6n*~{p x=cRO00LЙpPxU-sЄwCse6,#l%>ZBO}Fxsqjby\-RILY8晻Ji\ԾյdG~(/8c`ejV.eAr ;bg`Q!T]eXjT{p vZ6@hg94,SJ>rprm%UNAHt-?.-.W2{t>s?/HN>bDwy]pi sjQ3u4hWUF)<@5)XuGծܱI, jC;zOߨ dq HIzU##\2^ך:u(f v?[[qM2ϯ~c^xƽd̒"?F%FЩ-!{V8IU_LZPV^-|MߟQi䁜\J;8zGI<ǮUK8 -@v)!p3z#8Y4y#t|l[P׀!>)n!bA]o |>ԅjI ~6l R=xIҙ+\bP*8zhv}!K'/7fN TN/w$͇Q{HK^?tXx/NO q?8: H$i&嚅EM25 ѹ9r\ۃ*D^gz: "{,Nر>E9 Xzx) TgqEķǺZ y=t5(gL4֏6+Y-%FݖoQ5vENfS:U/~jHF_h)u-w K'JsSg&," e@Ø"t+։6o@kyJ!+JK}ssrdV7JW7'Md+Kl-G*z;q]4C{ ˫6h?mnCbNBJ51h{'+xO 䵢Yv9"pePєA3Z&P]-/bZˮq;KHgfU\4@DUIo9Vh&I M!WsILsOW7E.O^eI3gޓG 0`3\P;8G*fO8u5-M+]eվ$1ҷ>Ibį66PTm׊B3k~`+1\n* @LfߥIƮ^A}#7)cWCR?;쁆67iGCo>Zpup*$$~7O> c=^y1{0]”2-gidw3nK1iKx4juYA^'}`gr7DӺ#3]p<d/vˍ Uc#eE QV&Wvtd釧m{0@P''B89rlW}KC!^R 6 d+ vV~~i#]SZǹ)ޣr]X"5$$MRc%r3,6`Y" ]O_0tS/op@1 ([!mQ D׺ }"K9S2S xi#LϩC }z%Yt8(Q868ɳ1ΗjFQlZnc.NB*Jvv$> -"^oU/ӧNLt)@C}RAuP j@|5p2xe{W3@|O:31k-| vSF~L>F4ǯ)۪#r,/)̳+aw†G 4n`T-,I}!O/ vg E 45e8(~ḙ$N?Bكzos>y}؊[>D*ࣳ0c4|~9jBl+HjHz&-pz)T'Lb1 gBc]O#qj>*[O-o; -QD B0}Zpf~M=a2"U.G :›w*HZE=·MR2~ȩܾŘTqXJ1B uq͉fF"c`rJ*'b^L؂<6r**M5=,LZu#\lG{ևxn'[7 )ٞ XÐQi=:n( Q ‰cx]9bjUd_YR>c]DCRÎk`Ţ']XMT0[)61@{}T"gl-ۅ`ƫmY(M)C9-oR M|T#8;yd/cuv`9#Iʜ iܦx57$l{=]LsgAqPNoːY6"m "n$g 3eq '1XW1wIԗ7/P=%Iap`pxt8΍֭kZh8/9?z~ _^5.pJ6I l&̏"xҏzEMrz=ݧ2x e'5+?&9ORRrpv^QWCP[j!M(|qEXEICBK$R TC_nj5' %=N/ kE/Z!Vvɦ!2JLV7^(V#MP9F7g60)'.K5Drx뭇PIvkaSA?_\ ,RJrYTUXtrC#?uS1mjqj;\69qA'r*!ŤymKmS+'a:٤jEw675n aAئ ]x% |א4G/5$Ae?ZRikg0)~U #膧KbS1,]AN ՅgRVCK}Po"@Ύ`l>йWDGޚD$WMG&M,[Hv,٘͸<P)؊Ny:&Yl*FgݳSّ>QXDus|^g{3."6W>^Vi,[k5<,:ƥd( b^}n:U5&1u튊)?t,S`phptA}=Ho,$>ZpZ`^N!b rEE}}' -it$ TiRn ro'Y.cDP?~=0QIYz$Jr9d jd թFz,AN=լaz H9x-gC5gm xLX]OԥMׂM*|ϙXgbCͱ`g cA|G6?1 He~ضRUFԕw7f6鈜(T# T}<āpճHGĽt t@pN"vQn' }M UD:^pjFd P* =0&\o w>76+3RA߆Ag/?^lJB R )+ *W̯8!/L&D<,bc;!%x]cZpˡ] )pÈŧlop{ID|D&\\ 8Rʁ` gz" Wo(:lHLl漇DƎV/< [Ih Zrj$*^Vi?4PYޤźM[B|hɠ, =mjA>K1gG8\+%diNLt֛yz4LQ!oTJTJx {iQV?P։{$#\fWTA4-q}Nb@rJG%3m }їN ΐžnL|g=_, UH -3QT6P0xGBo+#  H~dx0yYU?$@#&Ρb[2 f=!^zSgǚ6)z&m$ 37T]nݷw0ׯ`Sjwٽmf 'eKoN_D7N=_I9+9 ƓB@Ics_spPQڅd2Ů z"9L[V%WkFLTxӮN~ع'# PJ`#O=&mz#KI}7K9Y&>EN Wr*Q2T'PYHoRu-4ď iiLf3v19} bxCZ;]s˂(`o{뤘|yrVDj S~PƂi?k{#ʄJPl$䰹1u-?-iˢ(ozy_\0Rc?5v_@X C ^!7bx]xY\5γln;K B06/Qfoi w[jlZMEsGF>w5 d,a,;pO!| EkB'8jU>/b^(A-O}iz{"8!Z-=_VNyQ(,^iu5\ST)mwlF.nǏ׸&ly+/G{ 놭B XG[qaWd*iRjU?^U\qK?? "HKEoʍǤ`y'MXTLZE50wɷ ] Pan4dCN? iʯ}(=|6y[ U )ѣweDV?B'w#Q.D7: y@>-)QÛ"auQ|?_ PϭJ&uv$@>t#*MLZB466i)-=5ӹq'|+YJf4oHE.Lښ]*xh26 }λ.SE Pr [7]kNMyW5trx=& s`kg,fJ@`KѩQ.ڙ+1("sQYS f]T]qX"t=7YB6?RO;;hn?,*Ȉ=gy*#̙ *.${4²?s]K,΂9?Y\Ú*س(|&f#doD!H ј!8Ggi&^eBoأ=fL~^On;a x%dHW'] {%Ys²G&90.]/ C)d1;/{e<Id*T] M#K:sم{JqPT*fԽz7>0`qA3Ck mȽz242Rnv;5*$ШIR^Y|}E[jDrKD^MK-#U~i-[q4xի0 ΏO`#\,ązpҀy20'$cZ`r_Љ8TAW6b[Pkp„^ U?x<ٷFB1I8rHqry#ҦEFmfic#%Ko ML>-NtFGˉ֣ 5Q›')Y*յ!'RD|geRK.YUx5sU[փS`YJo kpuϽE0OpuDD7|4*юVyBq ܙ=ۨH!yΉ經_?[!n!WP?Z-ޖjSnрQmxT4 X^PHv1"EnGVWjڀWF* 1b3hF5&HF?jBbjJm[ QضPh׶wR͈H ϟH}w3槏̵swE!B?3Z5^U+.0fYtU<+̕^O̥un&%%& ^ N0[r!ņ͇~4s&$uE۰aiϰ߷v)m׃uU X'J\:C1)`o6༥{t_.Lxxʆ  Sl FBg䣣Ÿ ){4Uk^G$15VU|f"m5[&W_7V3sz i >@PkQO1QCV_ VsY9Z)S1}ĀyѰ +VTbkI[jXBg EnJ4"{" ^Mp!=pU]Z,_*?[L=c[H.Kpeޞv/]00\r7dl\u>\2/aH;)ԫ@ cj+`C_$9 WK(Zh,I1z+ؘgeS d`^y(cx\i|Ƅ[o6n_҉AK}t_X7|R;[_d#[bLAJ*]6mGȊ1ruZdCf&l řt]6M;R&TeJDPMV"Bsh]ZoҵbŚoc{ԧ,@9ŖFɢ8 -V&^暪xزvn6h(Ktp/ 1F6`'ZoGGV?2땔a&e.n,JgMr>%>!,W [f@d™l4rC#s; q\|ӚE$v#=B@oyiL8Xͯ~^ ^Nb+mU Z m|<@}.*IWBu*)q|@ے_A %ST.㴍eX׽o9b4 (S/k̠Q]NsEgD YTS ~q#{dMŤxJz_̏Y1O Ŷ8z/z7} iP[;.Tb^;@޸ZT!`i}DZ=P' L"Iӵ&O]^fBbc*(!E;wI"*T1@jRbᢞH sIO/ yRh㷭9b785%Q^'Y@\/78nPVXb\OGr@\`xd4 ھ:z.VI~8)vyx:G,EX.ϤQ%Ab FxiUWǼ"=lq¤#AAWqbO?{G҄U,mx f{viM*Xެv|3</$Lٍ z%A>53Y\ׂ-B-7t cpN=#/@_|wc„X1⽄oABc™9.h3m@•$% @$_<␡I 9GjM@7a 翲5Np(0]YĄ ,#EbP#A҈C $ObJ$Bhafgg7rL&x߹W}e̫.2 &3NEg- W? ʖ2nRK0ep6K]f1ܦI:#nF:P,9N7ц[/"bF"Ox#ێ{/"DFX,!(5#Ce( !NؼC| KE=TZY5GppF,?'j$:ƭ*'99ƒllT|h  `)7ΰԲ f;:b.w:CK:2SyLx[@bg9MpޭV]:=@IKY&lQ=$됝 ?5)g^dI>]"p!T2r^r B\D3vޒ6g;xsȁ7=:ھrc i5zlhrD0jӉϚ+Q! !ڽ[GMM *ۥ+ hN|P,У7O;Ya8#z2w01QA&5SvaMJsI'8Wmp8PD!]0|wrMZ}h?~eGDWZ#÷>is_CEM+f n#2 "T^6#YWDZ9|GB$/ORPo#:_;@c-q{dffU&\xc~@W>n0 8$_rH7nt>dmVn0Y+Tu@/)Br^++agx-m^w=Fk[f;2\3䓸zz":[r9i^ {j/oww+^E6n~tᚼ{^tK*|J8XrVm niH۠l$.O@i?_L*YUnGEB97O-?_ Ц6h^]uvF5O-mIe}Vڀv8&%Re8str`Nw[ S 1M' m(UvTĤDp~t=PV>$p)||}~ݠ^!(Quf참?%F{0EVFCah-E-ݓNM&$.Z^,ٶ)[6EJe|(OF>D~94>p=0)-5U@TFRemʡ$=74%:s;%)jUCCS jW^m5vW(-7PGpp$ [kK-k"} v(:̨>UцZJIe(I1ȨzV`Hs:AA奅5Qƛb, H,J(\0?Z:u+}ʐf.m5Occ3}T ?[-&dDؼdSbUA vce>;^hnS82vtuR9Cz}81RC@Ps/wԊRzϟI`.AA幵B s5VIї`_o[)(㄂m*b 1}:>I~1IP$^4Yk<  Xewgn)(.\NXrfA_x8 2l,>ˏ Ir$uO:,)V:!8i.\b0}Zbv3aui0|2 }UxjܕFrIJ K:|&Be:,f(/:=1aKǫZK6 k7TE>V,l؄[vjUw % suJ0A𯶛(j\Dh#1bXG֥cR̨yge)'4?m +;Qgۖ)HQNSR̓%&|*CME ,QG,xlL ޽jy!:\V^ƹW{پ@&R9D;Onuop=̦5j[J[+T^zyfb\eW;]+GI?T܋Ƚѱh"c-6wY{4i1GL+ !Xaw ;0cSV00R5i9tx{?rٌoתnP63mjk6~%-2J ٜ^%%ZJ4aNZ>~#7%;^kT*F݄th /o(E11u- u!׎B.yeN"h.@Xc|f#~4jTA!s&DgTX.};q/?if.)U! f I;]ʔNЂg_hyq?Gj|aB*X*~` 95m6z/IkXDq,8ɻw|*/61РG=U#م\67O+l#u ɇ5f(6NY;? ;҃˭L,.n˼={">+:k2%kBzxzzՔZQh`c. Ƌmk}z]ѭ,۷nSAgU)BF&8N]07+fZl$'[ᦆ-\趞ХQ/SxoK34\Q;MB(<n̨TW+,r?{IM'1_o:T"56&eV&DQ;?m {#k4`,#N9ȼ q/6\3`qG}q=Bİ>YhFqY!_QI$EZZ'gsTO7NcA#Y[;n jqav<_ΊerbPz>V^0qr5i>ת&5.p#ela\`u7 3r!Jq(Rw9A,S5&:G(]%RUm3KɰFLnEH*^|& NwM_u1`7'睦vbX;)pue=U<<|T{mcBՠMYFƚ+R[dm޳gd_*JI_70ļ  <ٴQ*`VmWHcsu^J4+8 &Dm̵ggKŘ!z lo5tv=y$^7DUP;3ۻ@(pz-J'P#XCF bPcu6ܞh^Α!Q%^聕9X@AIceNj޹xE%!{WӘS1| bp9}8+Ɲ\*>Rwƫ$NEk?^ U8<2_]2{ɭFWr|R_yRNһn:͜ _8쉆 ůlMiऱN" e(*f˂:K2HlNId6;>`S~r[lv-hYigd1 gYq~ϧW&3Y#]hE7bK(%a箺{1a#}7 6Zwf-&sQO^C4b2_~۔ pyI*r(}bؖ.hc_t}^U֙e a5㫭 wGQ O?FqK*drF-#fA۠T)a}i"s~X'qPX/5H@r`; ֚!%1.)IlNh^2;;&G{'fh'%rI]}zuզU)~G/N-aBPs_eE"T- /*W5+ia XRNY T$t))᠘YvBwXU0Ρ#`2Rq]v#+ R|),kBc*iJ}ՔjE^]q֋\'|Dn(Kkv#fQ<l0o}p2QPGu=&6Ma>_#7QbF吮iTY nV(jbmFu\- #pk//5 ] "Ƹ'Yk:; %o? מ+tfBw:-֑탷VKWlzU ovL(~v8v3lopfC6^yp`tk˜>@ ;mK9lɂ<MQ)$ i[r>hQ&Lƻ2qi}Q霙=o-hZۺMwٻ&OK (] '?ES2WpM9=Çc\&6DûNQKԑtI,\ۧWh < \Ϧ'ߝ8kWi0YtE2|zSsH' iV@/12(!8RJ"ՀD9 cLZ!OŸu/rP yBcM@aҸu# 8qq+iF}rN5ق8Zs$:IQ QbttGxBJR?/A wc,/r#Ӛ+Tڳ\>3+}֠)@ GnFXfi{t[>=PP1 BG$pkAX Z47`9Z]2i*ODֶs 45+"Ɩ@H˜#i8˼ ѵ^1xLHa1PV7C\rrl9\1)4ef08-QHgQr ֮gڒo.VqŅ#@bnDC-fu%2?gHҊ(l!ϯ礳Ozb ߙt+T f ܵ ̱NÜl|9}X*8}+0(iᯢ.5jƤ23 tZ^1 Na'#> ʏz8$p[3 *R?1npE_~ɎT'V qcz~$'; A&7 =D}um:şU;ӳ+M~@&X@trqm䅇ߚEEո4Ũ0W@iWZ SueEAO,"h*Sl3M_&)gnш/~ OE|'1A0:\BhbeVPa3Jyc}>i|xؼqq'J"OoEyYaP)8&CD+l&`A=T:w;Rh9kk^tTjF m U8/[/USpbT5KK-m&Nh6\bVެ 0^?O(Wi\xկ /݊O Z]P^ B=Pu8;?)b#cgGI,>., bfl`< y uY!z.k`"E_Xl_MNm,V}SlէaqGC~l}ǖHAX1sq R'T![\|3ɩST`;B)yn=PۙP*j%X 4jKggJHf ,_*^ys[ Pn78Ju28|ϕ 贲c1lIU H׾o,5RzF9|ʃ"[%KY39 kFU"dV(272'-ôKqǛPj}AX@kV@9~gAJv)l/G:G:ZFh͹R#5 lXx~>pz lc¯F ,-ߴ ~ѷ!\JGτWL;@KTQ7,(Bt9z]zpOeoMӔm" H\< dWoWc H #Sǝ#?WHj<8 zlԿޞT93nB/MT4 g0Di שO"81#cYJI.*.~]Z8(If7ʳUm|,@7wb] 8~3_"T{# zh /ؚߗ;thʹ?XfuPגY&⨼z iCMMV^,y;elk}${WȎ,Diai̼ANghmD%(EMGTeU M-Ȇx@3-}LU:_IBj0G`k&6uINP"6Ț^`MN!B&ܝe=Z\xA̼͓$(|wk5IBuwG AUzVNnjZJ[.Rcr<$Ң cMNj3Eo54'Pad!#DP!T2a[4 c0KxJ+H8h'!+K_N[х{ß}ndI$,]R;8:>3˖2#lm-6ڈ[i ؁Pisk@h~Wټ&+XDf$XGSmɩX3Fn?nmL~\Ooj~CFo0fKHϟ\quM1 x)G6݂6cissRG8QU_DJcUt!>=f3 J t0qeqj-Kb7S݊H'&Tl&Zݔ"S< qqj[!]1&>= #Nth+IѰWdzC̽.=\{GմzHQ…z=ߎ_|Q?|Vx3\{?@eRtΏK8-腲KTrGVfsy`+7ߛO5cBt9>iV殾ɛ-R_1? 4o`DoC!qgQ5}^+ գ|`6L [ruΰRӂ߷>JxcWq)Iķ/Ў,;hϘ7˃fW5+~w $- .`]9ߺYUR*hц5I%a\RL-c|='T*i`-nAmt\:6ٲ5DrCro wͽ,O g'(y'&@*P1幑_Qs2г+\TxeS'o&PÀO֛26ۧ}>p9|KnMh@H 3y!HԀ5e"ǣ69dCSsE0(wxvFc?3ʄ;" ]iYLxϗ*dͯ'kT]3Mo"0H jOfAblo/BF}|_p2y'FIhΔmʝ.j ;",[^ǧ1* iN0lڀr3}FTDxS1i~ca`DP!Ո)ld5c<_4 (eT,۩5ԫսb J!D"B`]Q^Uu?W3+$ɉޯECyFrgR.coVHGD!= ̿׿\lɍU#JZ*hw)G.,:YmxU#Ct`kh"zSCMMҢ2ވ'd3Ad|CQк-=š[."*G&3ggfEp;XPmp3J_z2P8{9(9K8bXH5|0**QYHM*//4@TxYG%c.vȯR _Ҝ8OW'96`%GI#'e2KM2- v: Ov}j<gz8ScZRgq!j6C.=v{JFW#7A052_;Kxdkm>v=d%`767е:TTXe:(,>)j^ lBU B+R^` 8*q.j"\6GʗT]& C3?(^DQgVÕ;FҌyTpLz;~IhhQ ^*sP:)_n%IO/L"]Ƥy- /&FuÔ՘.ٖ1\p@;9o\x鷄Mxuh OZ%fq(뿝7t3sbƦ~ ӻgp[uG4$Vo#ɮ`vm#N0qP'_x)2tKRc=0g?i Kxo^-m+Ai :ϢN\ax .% g| n4Dn^-םANhie9b^ua I/YaYk!KN&#FGy; EjY 8٦IJ\4^xi<)_L @)k )ޱUZn7 h^RwRM sѓDԚ]Mhq1}˵D:&*: eEYFL9' es"j;V4€^c1mmI6E,;L2p/ܵdЇl }pzf[K|ZiFa3Ngߖպ8'oiMV.%ބ|ׁ4ϖzZ` \*^r hs vIլs%[20o\wKIae@iCwn*h𒹦]PN6ƃ@}OLq7c1ٌ4Iv =qCF!+-XL;5h^  QNwrTX;VhVy (̉Ԥky\ q 0dңN&žKJYչm͝9%$A+2}:fV7ABxc>$&P cUXNpNr9-t'C͙9\gz|-"z( H'%8OD{1pUL=VQM+BN{fpxEK etX>7Yh>" F9i *jDs>fQE&MQ`Y1TuBAwER["r6/wt+ wb;~'Y!!nё?|[G+Yc2k㇙QZV oiv;ۗt`R8]4NX(V' ;dT9l2*`'VAnHOgs2s`pJBjP)ezR:Ļ %sU"&-;xc@;ٸg*=P>b[I! Ӥ/zR2xkFxvA=T`JIW#EփA3+8EX%ALPƕ~e)!ށG543>g/ Gw\-}\vYkHKe¬Ċ!G[&dh+#{倛K!j =U}GyFHsV:e(Q&MY2>߫p[*4I^eMZ;#]gxܛMflIpc |K?^ȉ+ԅ#ʺ0٤.W>@RS}͌ēBLI$򊲞-Z뼶UumϊDxmʞTGY'C)Hy6qhpk^>6C诣Ϟ NQdb!c7 p˾CHOyжD)tk 2@(ΙoHݐnYOcTOZܥ32@>oCx1#l#29p^тdmӭ{:LloYuJʢNB{eSX^эe-<҂.q.Osr_B-|Hg p}9KqbɑbĖ(4aw߾o.#F2@ =o8owH@=*\m*u 62q%m:dyy5?Tln2{fyxJR@rBzydW9!&CIJ_Ҍ`':QL@I]W{'-c/f \KKz@Km~k9TW$R#za1wOIcЍuZ@0KFWm[B[  l͈M,+UF TQFc3r85[pŁ\1QHÆd(.]gr0pRwRP&U:\\uzx_ (ddbBOW*7cגa&s]^ٿt2v3.I&g4e}9# 9CUg1gAqǒT M_B^† I=).-D(KDž aYlb@f'i40&lsaX9k k |OTNf;%1$YĽQ0-ZjV:5", iFΑl 1t3bP4v\+E"ĹRb)Bc"uZۭ;"mlн|RӴmrw r0 vS=-4P;J EH{/o]*sP}S>xZqS떻xn I)Ĝ/iQ<;)Ipu!zԢ3ݏSLkN,9Q*:tZkBiS*6S7r`B=}#9\bOwM%f,"ugt%zzq~\O=}3[OJɐ9 iu lʴ̇4>P^%sķ*JO^hR,Y8wHdplݲRWyU50I_V_mI2xM>*VDeHPkY~U Joʉ0F\ yÖ<`L lxZL\qHb'fcqSez2> JG.Bd`=rG1 3y.1QSۈ}Ȧ%>OJFNV!{9s\7g0׍"e\ިeggr_~s0S ( p7^΅:s#)# Uq1d )@.fP{"{P @y{t|vWv @_Fa7`$efk3z+R^`BN.'*gSι' C_7/K) }s 1۬g) I2 9j|Lk8 gø-Dpթ{^шHց~+/\:;2 NB}ZVgi0H5Of 9vq\E]$H{/9gҖ;A߽?2SlGXpdjTk*3y lf.gQ>m刜`v5.XŇЉ#m;n.Vý`;a6V]DEWi4 20PLkH˴j~! BX$&s} ZL `==Y`?SN=.ICsh-l VzN(ޠn5RD iFG0R]VDBE]g ڄ.u wI瓤'u_>+&6_oBԢ0oC.h5 Wi փ%ǔ m+ZyZȖLͭGbBX$ aQ WwWٮYv7>\{EŒMyJ+40y2"JƜckAَi@TeّZ+e.| /a7g`fS0QH OfvvB^*Ē ΔuuFɑ =2B.aEE+^Nu.qeI]I@b[lZfp] Oq?^؋EuAڂ\xӲMIș'J4*OɊ.{U!qb ]WnT45Q([UmYlvy]P0XGWdOr8rU=cW;#;GC8P 1?4ƷuBJej)Č]ϭF@'8;]kw kG8?!wqj]͜.W0&k.jsy6YT8hr6ٷN=U,ϼxcp"ի_>)ZݏKR4 'ӑ׍㿆{j!o9g|ѯԁ|#Ίw.mYnAo K۵o[ֻ̟B֝Ruw[Pfa{;iuN҇IJPR0伉{% 25*Gli UdeuBPj#l!_aY?">ΏQ ,@T*hgE6I,nm[KM/Y{N&;缞" 돒LSήoP/zEDLW[f= a.NE2_2Mq:'*3$," 3S#F [e]Tj(ǼS-^TsS瑞QĻ<5Q7(mi쿝(NUU|4(bPQM>+2"sqK;A1Wz*@O.h=#üZiDx5uBLtѹe$(%ꭹ^k"zj|0iث]5h UcYtlQj /z}HX+83:nGN̝HYF$ar]?f\sW So$%tuw9dJ L{2TfK2w^5k=^oדXꑡ֪7HrSJGk]bfrU6ٲէKw*"c6 M5KbNKȴSd3y@H υALYھhoF n{r$5͡p?0rB$v?2[˼2ɩR⻮SR2'؆u/ΒU䘲J/; S"þSK2f+QXS\fgU@*IjL+ B3j?/EKm;򹫞)3:vhf$(~'F/aƨbk+בrn2q=֨`r g^tLL:\oi {  n*b)۰ hY!ꔿh#d"gJ!wn",cAi&uxӪҡ8/bty$Pc*gm?Nrt& -k.}l}ԓ 0*uԷݖwC#C޽np EaVu; X}y-eRWzVf&3ETUDE ZS;!I3?BPk[SR7H3FCy~acY՟.R"mkKT|Bx#34#o> 4_s &Z6tRSuc&hq \lK#ʚ9kFS ňѲ"0ܪ-teY\ϴ~Yw{d& 8 x+v9Fy (8\sYhiebJ uyEl9Lz]uZњMv{ I"j7ke((۠vȌ#U#v+GcS1I߅ i>,W Up2 FO9˝6=9Sw ~dpoTd< 8% xލo^~5 7Ku0}׫\BiH1ScDde@p ׫%fBA݅vma: rnfRyEfBqg<=rc6cnS,qU P ͠},s< c,'K8`Y*E; <[b"&)|o1[Cw<`aRk.VN-,Qcz^rw' P`]r5p4>X3POt%yA'BR=3{t׬~-DơѧȁzT>r~pt9+ j#=^ɱj#KYadc@oʤi8rzᔢ;N#ܯp| V4F{޻gpY Io>(?ރ\r% I8ACz5SH[RL h7B=~w)$ҢNtT/&;&Hn$o2iW PZ)lسI%y>,J'qf *w+-Frdqz /Ӿ"yt]>ܮʼz5-1{J̨]aM- 4H]S}6\W8D%?~U{ا=MF^'i:;qfJؔI3L۪̀f-WM-T J BIU-ۥ֚ 0`ħrl֢X)>q:+LNTiHK)I/L2q|1|`dF:KM'ߘ/ |&릸S?6Hg~?ȐGY4)qwnQX88/N*ŗ8AB.SHUVc6^Ժ hݧ@ձ-߈&mwܮ۶5Bՠ|?uKrd, *9*#s|lh _M xxIt-U)ٓIv NІztXj,n^མp՘r^ @ya)v cU*XIUq_  ,xO¤a ԇW 9oP'-\٠.Gw 3C4C9]©'0e; @KGb0Z_O}b̅6k*1lZ{&^P9}d?zT/FĪ]iJvV7u|[UtY7=6u CgK sn#a/)] F/+o֕a_<2.֬pAeso+Kz¢uPlm!Wt1銤EM=E[pq֮`U/c{fg_V#1d<` &\A @l/PʟOӯm<]l nd7iȐ,j$ {spFZ rN.SjƳ97Sn]O}fxD цy&3/Oؓ}_+XFs j@`y2{VUGffYjZL96>;[xR?_FBTH8ΎA ;y%Yi,%214Vh4ǣ|r{BƟW1\+k./1b<>*ƥ9s~/*E֡j%ašGnqsnwbrE~2ks%c10db@A&riH%"s1sWLIuJ" $1.0Cr9Qƅ>>>*Ͻ [BoK(v[_wҨGYwho,/`˪PƳٗ0zrX7t-䷗eg[ XV#݀YQqwH[3O?aBZqa]U[5n{`a(e9K!x3|Ws|pB$MwKf2Oie`=C}yA~Mu˥Nx$B!3KznᕝR\\U$12KI!jQܫ27s58h*e ^h%&Om&ufc# T^Jtjۿ]'yN"?>*BOկBsb`%?Y4#|sӵI4Ys("}ptx~ RNz@ ] c)tjt~Ӈچq2P, P9If]0@p TahѰ j/+s@^si-`G}+:гE+>r|)&f8rғd0n/R_#@j=u 0P1c O8%&tZW!}i:8CA{v&[+U@)yTL~ _kW)g ﴨ\͵S:Ę_\v4Ӽ$]GG תTDqBRFՌۡCKo 2`e>C>Ue7 =DVc5t+1-vDilz$fZ<#EȲ^ |bd5;h4Vl{rB/  9RfJ' =k}᥄yd}Z+Z)@"?R+bĻ/) 2O7oZp )Xfo=]|`cIhd$Gk~%"~hZ#j~j]({Mɛ Z(]_0M I"Us;ڕZbkt `ܖ{6Fq`- dKsIUV;PB׈ƬOj/+oCޜNJe"g'쎎’lB<`E:bRQagd`F] 3 ')")Px(vQhC3|t!w9Upme::oJ0`*x8f"id4R'5D fxo+Ha-s+ C)ͪ!CGjIXƑ̄5M^c3͋&N)K D:3z8c&- :?&!;,~g& uoCz(,fpWtE5u:)s*OGStq{=߰x AԥB SFԓ !j5VUJ2tndCuzK؍Q@ݠ,STf 5>/y}*(sbθU?яjUNa; #V1 :6Sr+38:kyP K~{.`H9s&u,rR0g |D7*<ɶJEКL 3ܿJtU*"|bSj:-mɱ,0+a4& 24Vƙ]*&UU1[o4_lȱҖyVa8(~Ȗ_ykب[ ػ|pBx\Eb_5߆ȮGgFɬMDy\uSI! %7Rxќ!th tbzA_E9FG`gI~(V.ųM}]`GJO%A4@QQBkg; `yݑI 46U>ЌVڌ]ÓY]PVcAfZ߇VOup? ۿnBm'̳ mC8h?ߡ'*C}ޠ:8Nl#Mo϶x|L^DCuS={1ef^W\}oq扠lYn>FENAmRbK*~[' }na_tu/>@UzcQo2 d"%6ɨ ~&6ѿ/t=-lI Mgm]s1QO# &X I%a[$Wzg15OBYrn*A-@ҟTr>!0Q\lV)HVGOXm}G٘-\Kʿ 攛M#!,zbűETn䂵ʨb7DKƭ['"Y!nqR@9!2H'&O3uy?[I1L 8 ^ݝgS3vX>vFXzZf xs7jj;X|H*]fQc4:b(0>h{>qL/8s+Neq!-/ݫI$l5*nE HwѤjcSۥoA!0u؝A43(:O{BA]>zN%ȉs;R_UMCrj=݉hh9IxzNkA@V=.p~H[I=,o)WA^ފPO\ƌu,5@"=Wd_;^zЏWʿ"h@P6Ӧ3cc-*[]G;sLl%43CAiٽYdЎ.2a6sOVSa!^k m*8~LTXt1 9$E t+$_a!bd!PQr9y;Bz4F!ꦇB(VvOK3D zusi!Qb4f={]\`LwG)cvPe{:u͜ ["'| p S ]MsBۀFL:e7z!Ba1˭J^=cvs͙<~b,L0rcn?a/g.Y<,|TWRCx^-;`v7^%@ˮwtFq ((aW[TT57*sLNw9Nbg]YP8Q*y?:R5t; i9fwhZSoڠ*2$IS2 Z(F 7lSKőH%.\"A2f!/?sPҭ6-pJuoʝaX1v{ŕHN5$ ~Kh-1ލjLfFK2^'L`uX%g'C.xף5~ r(l79Z6V[v|_Rl]pǣ0j{%ZV U14RO+çՃ!IU:9a">0Lj]l+ ~W>\W1927)Am#x{"oKX,^ *8)Tr `q SzKTl`;fͺ[DsE3)Bͪ^l-p շ0s4=(K˚ w)qwx MG5[3a3FvJQo&aakm-`",5n ,hU'BَF6⇮# ;ߟ*v w %CtK&+=]Vm xW1J!ݤ1J8:{ _[s  ?[^͇}=PxHW=a 76@!6\ jF4Q[hٙGq-JŲBwP>Рԑ" (ghyPE18,x{ KĬX|zi{=a8d56eAmb%ڳ_oquI~rQ6,?~M /@MҥÜJ=E8clQ+lD*4 5u8IG]-t r,|,ʀd-T5̂&q;H+749ZE!2eۘ_"{EFǫsK#+pٽK[u0LMy{:pt`$ELIr9lw:):4m` Jug}ޝۀ┧l[ h$g93e-XyZي)s?a7(sŰYj, ,tZ2y:|/G]DtX21PU3~A7Q3xt9Yp3Q!9'L/;Z+S7__9W &OJ&Q6ݖ ye9~I3ù訮u<as*Ĉ0^k"2k6 L)"1Ea M ҵ.b(ol+3VWd{sIH:ej.Ǐ{-"Xgv.;[:~CtՖ|R-TPap"ALuˑ4VbXSܛDvoZw[+{i 쥉 б5#lR(/ԉ/ rZ>v憜@N4Խ3DZ4 N{ ޑ+n3.'$ Ujd<@],H_4k|gV%>}Wi- YGs: l$ɿ[]ohkǏrM+9ш;$tվ= 'ezrܝ.yBZ8/ }-xq͂0hQѹio#)Y/KO4+d{sqT.H&`g02;&.&˼`yWMJDhDk+ "@/;J b8Õwt2&pA-'B_9hBw8l3%3KWC]wkjUz&er1p yB{ϰqTUP"Xg8N Os ܍ȣ^3O}R*3$KA,|^vMɶ#&v}(?-vc|{Fڵ33 @ nOIW}`M4 < US E1Q0 1wȬHt CO0FCv466{ČRAMY<eZ-iGL)I.q~m`q^N17i/Gqu#N )Ұ#Ur מq̮0@YHF}Ijx:r[|Uz'QW؟o4ޔӽxY1Gx=3S4W/yh$0':HۭHVE$h HA/"RɪT~^޼s9 tL %Y\@rn+QӋE-W\^P$ء'cdnԮc}QŘK=2s,:̂96;Bci _ft˄PTvzEp25093(}ޠ-3K-{.[",詨 ĻܶnAT|,ޱ?u$c2@LO̡Yوvu@(q TS8iM]9 }Y#ǵ?PIJ^ mRD>DկoPp8@cS{A3!ӢtL+Ymκsҡkz)~޵|l!B0M#-DJ-)pjsX69 ifh E1wQ6;M:"t@$I*b ϚY1R%D+`N (Ͱw™03D`TX9CJ ]au|=EÀ*$wn2)׶T!C'MԬri5ސ)-^хK!GEXnc,jڸ srr&'D2O+:0Ef{Gox4Y8ӅR֢`pNPJ/}\d51sZsժtU0 ~_.A J8rW_Uߙӻ"K=ǟyrQ:q?&|P M؄X?jQI=Jݾ)B&z I M4H=I 'f~z9 g ex=?=?/pcp;т}.%yV^ȊwMekԝG`~>-֔k}g)rAA8N~+-c^[/E+0k45))r+L OpgtcT_t*ZV(3:tiEҔ NPN%đ A"41 '8' AL^G JǤ01 %Ar1< >Æ65X 4tk<0)>a;jj%%:ƝDGDìo vYV֢;.pLOKsvݚ[8Ku6H´X{CnyAsW-Abb)jb{cu FʼPOs0D3|i_Xd!`"EXi ∄uW$j#?(6.DG7HY: +ؼPx6){:7+?g`5v&%cѸOw[Ix#ȴ 3bOkBK廪h+sxb~imMm Y-s~cJ pZۻn@a3Yƞ7KM4u]R34U;dxlX~? "D$Lީ7}JW)Hl[?X-lmj!&eR P=p,F#W}n(?L^gهP\'Mf,d܊͉[ә$+GP>ɍ<"צz"#KSCL&\93*R<| -`OR9;D$2>94Sk)Z^J[Cja5u%׻L'R@6eTmMz_9a_M*>: 97ͫB{ܔ9;k+NęN)x5MZX7\3d47놟6*m6N0٥`qKl8AFPށЁзAPos\ܢ 0~ ȟ:)k}~\vb!PhwӲۤhgl 4^#eEUfh{HYE4 ʶ 7~ Te@<5 !r;*~d6f0#1OKV譋aj}W+ r\8a e}dE,'+ThuD/Ģͥp&ش1g"7={I;gY%ؽ*ȷAJ@Ja.Ȓ)-9 r{r)`/>'K1yydzCtk& 4S5ˍeum(`^ģw7dc}2.F?/n/ڛ룙E] ˅s AGQq*r]Ra?xhțx%(b> m&~+^mi68A0Θ%v4\m %5q*s@Vi;e_bȵɚtH9dF j"'*cr{*rK%GΎ#'IꭇPTJRT?wEbanĦIc;YB]BJ5K=_j@5S{@Lp=<~CO+0!f[4po G%^U 9扆#A/E"/'ս͉]HҎtޱ|È;;ҤiX|]8p%Ym |;n%aZPq^/Lbz/\FǺiA eGM9XΣ~|&~'%r¯0^-j,-*;&:Z5H(ees򲟂ʈپR2RaB}xd /_:/;g-nW Tv&Hd2lf]1~873OE*Tt ux_]t\ sJ6&c`!h;<4(@=fĶSa.iް!k5½ŒQ b͉rg >ӟĤOeNpgx{-Qqme ._wmB??N.z Z[zR> $2AD+yE܅q!F ٴ0܆K }#\DwD^FQ MW4>j) gT]^=Έ`#zqDqWuO8i]¬F>,6O#AXPW?DABu̘*Y%qNv~elFi*4g %MlCS8Ryہv726yr E v6RXwQ{}c'gC8pM&C;Uw7HS MI(EE tT4<׎^HG߉d|Q@c`EʀޤHK3*3B+V;^G#3kt Fol;3|X+kU"}շ!ȧ|"~aB&<BbHҘia|i3DLh5Ixg-@rȟP-=rz|ggؔ/Kڷ WgE'}^ Ghe=8gAp\ BYK>kr+Jʘ-lymV沆w9PELi\Ǣ^^ʹE4klyL )~z9?@KL0<%Adڷoc]N05`v t1~mKMl^rBh[F!.^p )dfJ 'ЇkQ-[~*"{{CL=f~bDC>gy'Im+eiyȥsWp-8Ac=oXlMg&'~^]A?lHͱ0ޫ,c,!b 6`Bڭ:T\C>L20&ۈWh4ύ )֌;G?"no}bc\ 7zL][Q9Ve2!raЪֹ1sb6QT,w eSH+,MfJn[yQqtN@K昗 uE_L,Ep/Z֡u:11l\EފՖ㌂TZ pT>.Uz%B#s"JРʄeYpUBGi|+HU_үx;N̙+"| $}ڛY(ERSrQ!9[ }7 ڐ&i\ɾh%j60m Z`d-j~|kg7 ,#ȧBV `}f;f)I:jīEFvcH5-=> :όdq뻩i/Z4Bl%dК QuְQ":c!u<Q3<0 "onxq_.qx։*)D EУZJ"UJ҅pp*s]czk(pMIuE\em㱕~ۡ6uSU剏$gC8^2j+?i:܄0Χj` k*1U5&8> H >Wmܳosߟ惞Ԩ, Tc6 4=,)ODLUF‡Kgw7_h.S,MU^k8k^X[ZwC!W Wzx nc*%&?܎y1%]$ JFcU,3YlYZ KPs=io'Q^pLnhW7[SP`gL- +MCU jÑW;#X6;wYe̦3V1ާJЃ('gD@$2μ Ϳ1~QR6e%R'QhmKV@!Y"V%_|nzHDCx-Jn$6od [G8"fSM.=~ Cd0 d,0GT`,*-ߒj0f=|نZ5ѸVͮgO`$dc7]y+7q}a,*Hi#EuvE&$T64?+[4 '-{La)*b Br8|b 1`%Xb?%aj:svhYX c dI|o6\R[Eߔ? [穞83We?x=f&^=m&!M b煃\_vq~IhClwLx-/Cd+ŷ /A!\QjX:鳎 (TɣG/b!6>HnK"s ƃ^`Fe!_Vij]V?zX6;.2HL=2MgOsYs9>Mm֣I*tN{,p1#s` &MNBtTyKWVk4ޣC٠0j W!Dٗ{[&u+w&fU%6N4~K|rv=ȗ : ='\U ݃z p R"s)>WA[ dl]eB6Rɲ4՛Ks㰵MQl"㱧6O5@'?t8̱8æt&ڟv]sr"PD ?qu:F zHipi96וMnJB0D2PجrKy]&7E!i2miW Ξ)5ك\7B&Wv:J-JckPq} 86k=ފ8U!Cu[fxtT&AFhaF{4xdfrXow1g8E2;@BWXnpblʨ`ٱ C?*v 0jyL:G]i _ Kz*rg&PĒFjZ4hۍ~Fс-?DRF;9RT<9t?+߿w3 [M"7uM]'B76Ho$YoL_ΌQCHpKvqo8"u0Y-LD~2 Q[V,<G1PE?矤2Te4B[ځS}qJ}wF BP FqVǔHwߨ01W@`9-0hMi{&-,8>W9w<=~f}.jfw§Xo9ðHC_~ ;NnTŴ, [q+I?#0wȂg'rk$Zx~ro cNd_fϊ>KCU, dN&3lJ3Ay:Rs)k>cѼ;R/i\2.{jY&wTZlfJQ7FH;=hB?mDG<-I1GWʘu&%d+?~qw 9zWε5L)}8#}üZZn㺹4#n? j>37D$C3S꣡0!2o'),]9 W024ܨRxA|qfk,sek2*精}u,atֶ. KwZ lz~y& &1G˼_1bRLOhʈL~P pS땳) Gw|zbv͛-'/(1o]fG-$:|oۇɈ5UgY󻹇Sg7Q*L؉p5OJwϛY1Ǯ^aZ8X4 W{r?~ 44MrC(Y IN\ 4:nsMYOVB5icbN#dYL `e~Vg8CcDxx-ew5hkdjܣyܚiB6|qrCVu㨓^ڙCs9p4K40:wsٺ#ty̤6\q\p2(Ȏ/{[/ɐ]Y_8^QYUSJIVxG)'G p O?[˸<ޚ<1al"M; #Ո\S3?>Ty=`bD,Ş0VE#&={aN K7`\w9D `2AH?і9`888Zj(.jKe${ƅd.ef3 kR5no9Sm] dzRi$- )SR킂#tKa/x Bjk=kfuڳh Ń2̲QuCy{6 0Fړ0wUuȞ`]9]4{DeE.^i-0MG,B.V3{K:,WuN>G&ݓ/X7X ΃Ur`'f%} SnE8W˼s΂. 7rj'S>ÖEp9L 5L^,,y VXQǞ58ޛ@Hfhr.@,ظ/̳ S4tQAI~ $YB\XWI:QK/0k;1/d3d,ѢI La[EIVNAUV% A*q莍,z2&xOplB$iC[DH6EZ2QtIeX7FO:005_< =? rg{hC,88eU^;)M9t2.]HoH7|'#Җ3^M\w d {ֵ Eouj1D&Pۼ<jJ 4 η֤/&y+S\Sϙk<>SQٴs'faR@\-{uQ`)i EE7),g6$D|L A{sG T)O!\%)(CISC޲@JZz0}[s4$'v]|rH3E 9?k ei+Mպ2B8*) Lp1!G9 {* %%9fqص| h0JP )j綦Πܵ:S &hs:@вuLmNjnY8P9!(4 ##/jhX*ew@Qj8`1 ý}h~͟ME' a:[OCx@HK[i=ƭ=YAUFQ4K/' !7VEp`:JizNrRo_F*?$@@{ĒvH1ѣ5p@LdO8*ykYwǓR*KrJj#Jn)Sp sQ;Im"T}֑$SSA%jO(sX5 U3 w]3T4!]2C|X?Thd1|9vVC3 `q'2q t(i?ö@࡜'E5fEO_Tq(g\2;uvm, [1q:cx/ҹkQ?JЯQ(X͟Ņ s{"~麼[0~\ lE͚,t5*' WH#gX滛2 Ń)B}B〠hpJBfPM]!xn`w['tk+hd:YSsڎ~*9G{ 9;;;[x8g 3@yE 1 -jdL6u[}"C”E!Z%+sdB:HM#Ek^'T0͡ə>z@SNó+.չ{iz;$#`E7ACՀ^a9M&*wm3g/#FC-,Ǿma'  &ΆDPW"cڱ6{Ž)U?@pdتRày'#O+Ydhn<1i|-ܹʸVaSÛx-ILDʷ'MmVJo[16䗗P,{] <8agxU}jau*3|b}NhNVB7ԁde@k*[uJX](tXWWJ֬~xzS7[!(W?O;hy8l3!:Gӿ;Aj9'2t{pGl?^G6SF۝*^#wV'X]e[ -7yW[ӆ_nt:1~c%%G 7 &WtK'ڍ.$YY ָ?[jzc) ȇjzGt1' k:SpEIIRT_^P!Xj|]52W"z GlgT! {<}. {nˆ/ʥH2ح["=,ْ:-OH(ی-iP nَ"?'ȑYeҐRԎ+7T1w#Mi-[lLcEkQ^3џj'$OO*MRPHHFTjÕ }к^RFq4SYz9oR|jt}r)y<2c'qT[ONysjanvAxν vJ33-WW֜,ڔ}!p+.RW)Neu6dJqwF.x h]~yu2QjZ\g.a$m^۲ʌn3(()i.&a{N$Dr+C 1kze3 1ZPK|lGݴq$PQdپeL/TF ,&$u f)HRJa a7}#,I?92| ;_XͿ "g3- lp e'ڠYzWwsЂ֐+k}CAs 3mGOh$fH8?Z]ɘZ1ۺdTo"z6$h3EZYH-ϕU.\N>/3( 3Nz,8/b}? d+9Ⱦz[m3! ]"'*62e[wt]hd(1dM.GFD@e'5Ґ$0u悶jx*\6;qMos,Y(~m~|YTo"zrh5#2^V_um0 FxW.zMok"kos9 wwW/(pBrCܕes,zmݣ7O8nDftykmFR&ﰲ#G7Ot憃 Ԍ$*Ϯۿ0n;'vpN H0y'Km1 Nw_]Њ =D/L% "0`FޗpiׯI)ÈT)U]Vn9y3^wgu+C}8o P8 [~cqH~ZΥ)2HjH+=k6f2e&fURGC.t'9C j2_ʟ1v^;5đJ+ٵ\$Zk{cT|sY<.?>L|S#gə/KK: Ǒ5&b-Qn5D77w$UVe$~4Nf7Itj4:DѪuy\ܮ*ByYя$Z@&}Dăh=V7U"A jy7zdWxUnZj,%+崋a9=&6fH]89)U!<<'@aK{퓃e-ܳř&xE^tME}gP*3̻Z@\Zצa. %#*՛AkZ,[P8Xo-:$ z09 m uWcZh [!ئroe> "HZKۭi}r=S<QرJP &RFVxF}=5<*&#G ) 5Dru$Ap:'2o_~-Уk6!lkJJh*}FcڐMΝpcˠ Mw+cACRc*VOz(Z݈{B 3Ç5ۥcN\ck#*P: (u%!! iqdyLtىzDƞ*#ZSX "%૆lju\.A^e 1;hu=%0JG|Ep?N}ʲLkR*ƆCAj%zzhcyJe.f ^a)YYwatm jNhqj8 Kze@5ߕ̌4g+غ\YzuڗȮ0Ifbt2HB/_Cf̤Sz 'lԮ{U56 yK_#cч*?XWlBFkke"hs[ae`ǽxYZmV]Du|%Cdj %*~=&0aCaS9 ׇL~#@<699&L!>_äR[7莲S^\ɬ .moUqޭ3(a|?7Q-og]Hӛ73g?i]v?8\2KU…iU$Q<7f"v"KErJp>+pH櫔b/ÈUkNx!oyW-X!b32tU c^6,)Ѷ!M|:M;Eρ_4 D1"&+3eypoGHH*KP~vIJ6ܑCI[uÆ#-$:ܱ6Bu#:CbǠf鏓Ϣ)m>P0Iö"ϧO0;nZq}X~qy(bWu<0ӦD)M˂{+LZR v){$Q>ȉqY[ϓ1D+"{k eRtPkr8rխ]s}.mc|tw 3;.ABݣg+NmR֑QAQ,POLY~.Wb,Rwmy=>O7ۡ!H34~fHԈ34+pňҶxo% - ^g[WnM{&~MnkT N֓J̷eNRVZҶ @,"³;Be AN ~{ zq i }`Sk2]"ym:9D%/@|0"OڊlP2PރL)fu]_,F? i|Bfv ;~I{*p`i=#N'Ρ*|hJ]b C#SMCVVeS껐Q>$YE] Q%r JvA}GM)蘒 ,<#i1|{`"NAғn4e9VFq ֏~$h 3/Ԭ>PEA$͈)AYy֋Ӿ@_t io MD#[ۑǽU ƫARXqs<+͗[:CA|"0sn7> P?n%oJ"!f[eŦMYƳa$l0:TSfȟ1z 6@{="izՕ:lQUQ{${ݤP^}woAlME^>>>JPH?D0ۜz4j<#ԫ¼A[wAU| *B,= Sg CČY2 2Eh 5`9Rc2uc\^%'*F~Z+F4"uXN?Jq@h s_LGCLlb8e?K1sIe:#=ycjW\lP Fm;fn17{H\q8{T_-mb!Z쁌ƹbTibX#(a(BfV$BĘB(T_Eyvi~l n"؈! Mo&&_LGDA/ъ8iJ"LiyBzC-FRS_) |hl|1-],gU|" ~P(5Rp 3u,V:6輢$k,d+NEBK.F 6vFmނE? vvQ/R}`Jԡ+%=]EQ5xgSN8G\.P &I1lж)b$v$nqXH+Sk4`c+Oi4f Jl^zE֦07 =fM#mq~@=ajjq@KFi]x抇Ovs;=\6Ё*0r6Wq"~Dqmeo]^@#6h~%$;WnFy#Ge;`tvʿeJD9ǃjm*i m:HlJUNI2?hؑ~J[ϼv`${9yy;{;\wXSBDDZ~fJc{y`XѴGz6)D*jY^l0{%f?\P%=R!;\#`Bf`CKt@%r;w-@Ml.Xz9M % Rz' yQb$꧇pyYZOi< Ԍ1oԑy#])I11"ߵ{; ohK٩]QEkhs!WmZf *v`¥tYw|?j{KM q%q&m ;k5=\Eflx~O%zuvk^ +*%fi(,ͬ'M.GB}7h׌ ПBWD趝$yMk~8-,+MZƿ}*2Rp"Qb7.:KcdtT߽$7]u2f{ ]A֕+ i t\|-=l6#M)zj >HB$Rg+hѵ(-T?$e#J+oPvb5;Ld,JیΖ|DYYS&1Wvc2K1 7/bjJC*;"QPh$&В@Šx=un̶/mlC?^/ByVh d1%,F=`Jyo*^RTղ7&ziW*SᅬՏ7o;:Dj6Dbsu,M<xɰU@+?w#i˙AfA0~Ga_J[ݵL.^̼u>FjP e{|#x0ԧ?ʏ5t]_n3CKNWSn9f*H7P$qi3XrU^)hsi % }RyI/ ĬJ޲9Xl#,It#py**3Uz3lᴺ[ RAaL$F#`O79 Ndxrvhh3j||!Rxl^@sp P&BbB@É|i="@):p>sugqwGP)9`0kbJ,/*K_[tdv+A EYpT#!>!&φF_&/f[QFE)t@ W,=N˸ʜ,"~U$0 uA! ziHoTo~yphxy A!{sN^<=G_7zb'i&﫮XUFfJȌHgr$5X Xy*m8뎙"6<iE=/Vka6EL% #ͧW~N -PE_:|Ij,f>uHD~$^'%-5(w ݸ DaLl$^9l)av"*mBM˭oFj9L=G)7 Bztspˍ;So,1u\:ݝ4Ƞ1$ {N!Q`߇ Z޿w-}ĠVT_J$hZ9uh3MP5E{VQ+vPYJ/6AQ|뚺(è8g! }s3@(ws.A޹޸<„:SS 4 c3YʾX-k\ <`;$|vx\,vz,UiBiph0cJui*wQ$s:Mx mhcb`5N}R^9G4>f5sF+G;!=jP&B.>"Y1f4b02U#GȒ5NM)1?XyRhdn;f]Th<-oP^R l ‡FVK S"xd-CJjtg^UW :?r*iSŧ.i_G=vɀ{|=/^1=X᎘I3N`uEPG _M(Wg|'ApP䐈l@"^58YW1J>8pU#GՑ@eDނNb}*u#ؠd13T:ruG(If!QSm(?v_# /1a}{!:1 x `j=mʰ"(֙İosObSOȞD+ԑ;r B ĿE BzEݕVԹ[ɀ3Cg_KC`;Nl,q8R`lk{ҫ@?oW?)-U ^m| bH2L9KRhI>z~ȆhL~"E0TRSBU442+e}8_앤i唉~sE{̤7}BMZ&cvU rLs}λHPBsFvk2!eg1ȶ[ZhVő!CH\s%sq- `4fQT/ڗ׼}YJy `/O/h߂!dB!M؟x e-"kv͓4 yS&@Օ<_yJ M4~ OZH5t UpSĄZUBՉk-L)|b?*WQn2"q_Fo2Ch5lsQY`5-FA,Cڱö=VdG|-V2s󍬱> j>m0fpTq+rw2a~t^^JWo1.)0F`lVǟz4=6!vnRo 5z 1Y2]} oH׫!^?H$8zO>.*H  0mB57.ܾ,>?㥉"s,e y#(Ç0:ov4 wn o?vQU,Ii~=Sy]Sy\,yDwW@.z_AG=y ipan&RYH?vN%A^Z=XwWݶ jt/b0 aK^RnBQM̓hApfشWS*ҋkΞqɛY41jO!Bqy4 ',"6}@ r\?[mGmo:G};?dL 8vN>o`YQl= |-QBwQʝd07Q9 fDyG6Y{g&J_Ti]玢no JM n1|X PoSKރjɳ[7BETH.Kwם;!̩R2?R֩1}bi| \~6~W´uhXu-i7h挳?"}+Džq.=Oz`eJx15-S(H쉢KO4{|1 Ʋ|rGUyɔչP޵ nC,*;.i9r`ڔBLL&]̉рFx H+D:ߞ(eFkYōX5QJ8+c()%F]> W?.^-b'$q:]F- i4d%(gCS_6BKRީfPhi2DI{"%0bY)%z /}8(2<VcNCژ-osjvw.Ǘ{싿W_*ǮB.ILT..nh ゚g栦x7ԩ-Gn !w3 5¯clmƗ2tE[v#cJ ]蔽ޝu ϸ|r _u}['_. Bh?"uzSpF1J`DDNF9/> זnfԥ&s\k9'BnaPQJ p׭>ga1\i«[OC{ ` K 7H ϾaoFh^SV&~3ĸ5GQ5ñI}-|E;v\Y"s 7/taT ܊!I}]1Nó5:93wTHBP">b,KjbЧ5D_&XAUjx Վ_}Xxky8u*+ {nN,e%n2Vέa$%K=9rc~ 27PKRET +k+$:<K c/UcJs qwörL/6y<@ZY510^S΀jXXԚC_nmn0=n98w@QWooTӆ<}DcbKevcP4gM񃔲qδ7`G[6=˖SE?bv(vd؀V ۩2&wX=.~BU̺n|4ٖ\zӐ884 DOxS۝ut5PE}yI}E殺L۾6[L=4]cz\QH鳚ׄ<*scyRA,C)ĩ1C!g/SW4b7Ѧaeu sga {e`H&8I<\/0 o,h(ޞ8\{d NxRHI2/$#CdTcGj X-un>圮"P> [uW$DYΏk Ꞔl;t,T0"~M1cn[3r($ Xa4}A؅FzNZ-}q&!> mM LKyed9k35~YQW Z";&qoQ>88Q#pr JװJ6~=ϙ, g2ljAQW/&Y|\>!$?$ḳ/*-]Y5+ƽN~ kr5H4(YSHrg.ن4QI]уs~K}qJ_t̂ub^=x@>p.KPqX p۩u(@f#urrLNy{e:RB3Jek ưVh-+GbG11EM 247mJDΊA8ש+)NY8;MǦnXhˇF*U*E8mzі8Ñ=o5V-500slkP-wPt~5YqƥϯeI_k&gxĺcʝ;PnC|@,af0wo<7HhZg2--1{Ħ@Ԫ.ܽ? tilv)ᥗeOd"o˪ *'u\_f6^O1H1&@5 #Sor;¤;9{%7VX|Q-&XLniJϐm#6 )g S]S!:VVqpJ!HQi ]Ykb,x( 1>W$|\6 %pΰy]ƗlP6ƪ9EB 4rқm3{).&%JÎ/0[Ƿd`α(f:XbJ7wz딭M!`3]F7WFn  γt6/$Ě=łXQ̤,h"WOI P\Z.HҕO,mʡy3„Tqf *~͓ꣲ/'Rۏ c_I+/Ⱦ ;I6{54B-෇Pө_>2 yNUWHUHHQ.oG4TF@@뺐j&/]֍3PM wVLb#OF vןX:$/b4!fw s>dGa 0-W4Cu5㻜&F20w?WkD6MT`&D@J Cı7^w~k&C/ޔD6w!4ImY-ϹH)#ޱxO`uFCHHOe =x;kkx=~}qNͭ2҃|L![9w'0jZ9xli:AʟA Rz' w08L,wWHD3iGDŪvTc{d9,ؗs*fQkc2Ԝȝ/2Q&ĭ0gj!6&ZAAV5~^CJ\D^ r p~|`{VP]Yz^u]ŗ,*ޭ.7\ŝtsuIU.yңɖzJ+8y"Vbr?Vht MY$QD^ Qґ6v,GAq;v." IvÏk-SxBE Gz7OLq-sʢO=x0*x5_W,M ǀs 2M aE$.>XtGiL|L*>  K\.BڲOiiS)z9S] ³Qfc&8s#}nT6ga]@K5਻fm4=i>/xjz@6S=c})Wej+ƟOh\t4Q'0'W]Qbi賃*F5JbJ}gou ZF>ȵPb1Y ]',fN_pe` sBF5ⱻNOa/~ [ 0X,Ŏz{ubQйx~oɞb- gUHjj~jx=y(Pil2op !}_-L@-FjfkbI!Vx.>*YD4m)_n_Gix"Kp7b x9Ɲ3s6fMJsq{BeWx[[/W]L[Vh U=Y+\ÛQu)6 ڔRS)_>.4MJ3|c}7Y+ ,N8};: r-.͗Tny Pos:֋<V?Sx78UH"sKfH6a0(3e!n'ܣ*NLM _Tí3nlB@!$m[HQ[WwJj#{8 cT#δW<Ұ; +HU $irO8Di͑@+XqlnTQp̮LTJi6/*R4HWc3iRd[^`gѸz [1ҏ~8m%r!u/6[sI&N=o+h}!e\jO+򁐳ЄCzF WrݶlZ ":.y?A2ēwtbӈFELiRI5kUpnSăf9XDK9:*YH3MDD?;|SS!x]U~)vDrjH,M]_[* cy%|MOI@:r -vC(P6P\Yu.fI?~:$mPO\r.O[[]o2]^Ḋ ΂IZ^Jg?9p%x-JTڌt]wvG,AW\oV a++CNb S'(XzY1Wٲca/SM!_(g&.LJIQv߬ u9ycU=.^7]OQp2~b-FO胄[ TҢ#P.b!k:7!1#NoJCt|\c)SH{^;fBp}[^*s:NF訐`"b9ԇ5Wϗώsq1,R#;<׳2.[ L@w>!]gykm5rgg%#cVYѺPP|F$(voRh& $1@wBD~#%FJGbڛsMPE4."y3r`lZÞL䡗y`mHӺ)i0BOVɲkzE`^;H?ol$WJ(EHcv{nd2#l6>i/+ <8s(7G@_ n=@k5 Iӭԉgra^{ddk4# V?EѠ2wBN4 ӑ@$/p07Y8^iǴK- a }$rB&Ov@ۥTPr m ZQΧ3-r2Kn)@A*T/9"١O‘ I!ekC{g\j6O|29c, VZKT\;xö1IАCPRLS\ MS6q_r4'M2u1$aWWQʧ}/ !1O"a箥2*yJ&9`֏[:̎~{x^;9qIz ?z !iͤ9&N@ۺ!Kek&@V#\A=!鰍9*ϐF=M΃,zL2 XP\4p0RS|wGq a0u HԼ ڑPY;Y3՟CTYG0Sӧ)ڜ F} V3+"_:lyw_B>il&ߞBmVG䎏hrB8Wƍ8^D#M2`l;ǟ{q"\CPL%wzy[Κ_ CѰ{*ٝf粕#ʯe0cc Pr}L^׮0/#UռP+04W-=ucW$Cwis,̛6hy]2FYQXiZ!'gP^2M<bݍh@ iD>$Ռ#Q.t!>qYڣUqL]|>Jk;JќO8;+fCd96,rM}o=j)k 9gP]q9/q<a[?R̃ }Jg} f`gi%m-ٖLv (o#Mѕ^1+^Wc"@#’eOϪTN1.NVP A".mt(y̹M~ɭ[xIszyЊ'ik0nMQwkD4@}>9+Z#_/5fUN;e#l#:a-Ѥ&oAngc@_κR(|:Cr;un,nP"v`VF?H7rR)~iԲͱ}]J ("fIU坰\W1{ܕxQޚq"ۣ2nʷAl T8n3Kmk)5 R G\P b Dĉ( 5YKB/7̨?6R#)˙}*m쭧Yh&OkB{DOW|G ( D{ݘ< {m&/к .N9WHn&sVMA`EЇo_( ''ЎWq9$ZzY @o(MDRѓگ נ׀3;? (?n8} k ܼjⷝ(,:{D˿g}h٨[a |L / y-&ۓ{dfB*!({Ph|ٻ$_axr~nB𕒸 * ;ٚ]0D֐4!A=qqYm &C7Rԧ7Iہ^M Q/iexRӾP|gn8 T7.ESz$ō@R]\^65TpOʟW\ی=O U<]m ʑ +Mvw9m7, BG%3tUׅZe-SxNA;HDzg`̹$LLq~hiޕ9m r"3UuK}K )kWANut~3N? wTY/9ơ+j`W3K(=߹z%h4t]P9I(q İ}{C[?s ӕ)یV''o{:/ߖXC tf/(, ϵ}}g'Ң\7DP|GŶSqg>vi nE*k2u[x!>j)"@7oG ~c1-M/Ob}ˑۉz(!l_&ba]*YnS3N@9K>[ʄs v^W?MqRmMjIZigUxU5b:j:4+f!}-LnFcm,A.@0S߁:Uu/U4aMڛ״6P3 fVfe·H;:fI2U *Abk[-IQ% p40-o Ԩkxy60cO)$8B:aM|[f*PG1 d> McEkyt*C1>ۈ?"m+=껽D|38hKxfxrGtƲ8čɍ}m{ bq=@hSkEHT1PotBFJK f>yh`NoO7)W,Oo.[OA!ianŬ/Q#OnxI\ {s(Q?W<%~dή/{t+bֿMHn!^m=Q4:|Od֌=ցL ^C8Nf;҂y:Wߣvaijၴ=7m'!vNV-M PtqlJ>փg8lkB=I,4 ;,kg;& TaS\^;۲ B$8Xi_LV)u im꼜lO4hpaKK"ϽѪ2Tv4[cte "KU ԯ+ Dr HX;m#WP~ړO(PŎFa rmL֒3/vu(@!jC`xM3X]B\Ry#_guwP$+Iq {DW5-Bȣp2YE4@;l^gi@[=?zwPѕV1**Ӌ T5]| ~9 @F!i>3yUPm)D#0r 毇:,tAyi0Et%]&ftZ>-0eqە<9(9g9~g-9əb9bC4h1Fr/ڭ:TVaU*}@|Y8Wg8(yiݷ-Y#!槲l‰zeaeϺvb3yW~H]ő8(+"oQ7G-Lm`?{OjBhX8ff`$6W"U3=8Y2~B1\k(جP͗!owr˹Nf}aƜ3{10@?̅3$[OxT`U~u$@qfH9=JG3Qɓ`MPЉyML&YG~ px~y# ioT<;yF-47B}GxDk; Ty7MLg hi|5_@Pg&~)y$Єŝ _I  ! #? B<޲tR'ƹc-172}sE(EƋr4S$]eZlyLJF\ILnw(Ⲗ=12`8J푏C 0ɥۈ^\ZD`Hs\zrHeU#,^s:툹ZʱiBk]DwX ›< 06l+~{ZC?vZw07tT8˳zb`Y`dh 2tT<'i+kCo+P翹U~ a$0S+9rx]mĠ7Y<ضI*`qd#O[}F@6ܙ:wֽGo|sh{VB0+* %̧y~3!9 Dnul7/7ly?8$&IGVhD:cuˡk[%P֙zz9mjr]3V]Eh|Ay󼳥H%+jrUN*-<".{?5ޓ=b$UvwM4]u[\RVH7w|"i<~NK [+CuG ;Ѩ6ֳf{ o7|'{lqP_g8 Us4 8]#D`khGXW=j =Jd9tzTY n{Q1Õ@Խ)τlx3#W_z;J='OH&(;; s@^'؍) ̓N/4}5ǂ?Kxɝ3|]cl |tUȰBKޛ 8w[+y1ף3)p})7U2~ט$ARaA[v[Wgc]~:Ӹ Ku~62:sa>T ^( p< bJ;>UlǁXRx=GgzZ}z~ECZ>BrRnJEY`>=rAއ AzE Jf`wq.eEJ>¾H|ۆ~}JcwfnηtB4/Dvjn }f.swuwgdRu4$VpgOdӾ6*=ʟN{)6JKTǀ7=Јy&*_i%~qt*[]v:f[.9X%g,[.KF$@jz@:%e&;(;&b 9bv8f(uPIGAQ,׍9 M %.rpxXyqcʧɦV*icjWJ Y ŀ2*1(N(9u~JE\lzoP@J oP?U֎ѮONx#2`zQgn7?TH.vEB ;NоK\M6zK6LDfԵDTKdD"08`;wvM 6ٻfMjhmCqã']P.Ms93̰-Hw6}BPZ.ޜ(U? |u*rh" XJ&$3VYņ;I ;D#WW1냖ptw &FZ$̩/U2c !ҩ8y j [4>:#q,Vx" *R^BbŞ=cVe~$qdUZ%2CY^DO}Uߍ?j!=IljӠmsoD;y4B'Ў4g_pZtmI #F> )@pDZZ7vL:K~Zėí侖 HSE89D[0%e-?O~EfeVD$B1HbCu[E힥}1KfDxNǗ_A~'Mz'z{~o#{ D(L"x}(ءև5s1p=z,]d`SpύЌ2ɏԓ!d3#;ۮJPֆǴ. 3>YfiA!.m8z2Ei#M'x 0vF|UW(=xt:DY? FJKqi! 83.H WDA1J@z" UeCyB LՄdN0A+ԃ{̑%XO?E,<-~<⵼a0Y/OsI#n΄BkDjfg3:$׮G֩XR;ב'EH,v/d7ףC*vW v],ensq,P~c@1`+c=͋>\i?H72;A%W~5V\,sѥf45 {e_Gp&o@c ]PZHN WN6GXyɸ˥c?Z޷/ǝ49L FW3ACjO:5^=s65Z-i%֖UE<3GCSI~J72B kbYrk>V(tsr~P,u 7%Lp4yY}},!̚u4vul"$t VwJE*W+(}v|I˾ (&g0|,wPv0fMcQ5'KgF.2E/gsОD^VK&mh~Z9 vԜ .lB-tWp\'gU&7VD4_\kSeTi G,ϠqSYlC^*涱5{nK2YpJFm6zX6M:\9l!Y8yhKuX8?Ϻ{Zs.WĐq'XH`IH(lO76colO' 7]?Z.T`at G-q!,W;(ЁRHNEwIB莡ݜ]@aÆс2xP0NKsQ1' l\*O+Ƅt;$@c/+J6~AC+,GAMi` Mhlik$撄qB b}'I3OpeCEBw|km,-³^I]0ɹ9Ņ_?zL*lAR;PFL6Hti` LM]kDI >KԅFIQ1W]~a~/2LC%c<5$I0<7a3yq5̺V gdO$+:^%RWllD+7}Xer`faI DnY7MOL8NT0]E#b{Iؚ ]7jU¥7<=s{(:OG^mb(_K^9ԡPEC@ۯuCRH)t^`1v,XYp] W5{mp{˭rywґJw_-X HBJ:ۜfiA40> v^K?o;wۀHsXf_m`ŐC۬ ֖YyM U0t #tK8E #0O"B+O M(9YowO7ჲhm/;1m(M(^,ETWXDBҞ>ydEYUBag|/3o=[R]z H7C=rT1rwO:LupS,&i_wg;amR oͣ $;_Ao4)n׸$Z[>\B" &ү;p+ksu?,XoZfYHfBS^sTJK3Vn@~.> 0P!^Aiys p%d}}0[r!8e;Ƥhǃr"+b;R|[O*Ǎ}3?JMrMl9x-K|P\m>X]Ȏ@Q1I{18KUh8i?#JT& {(!Mඤjwcw uY?mEiKH(-h}fM "YEXڼd_PqIOH:qGv $k|Im?n>DPD.,-z EoI,(yj=^2uM z RHNK^9^6ۥpw|c P??khۏp>e=¢Par*=AS-xpc4h c$9Emd|xT edp%v+B8;/J3S Ƭ|sW'C#>}f2w{zX R1xS-N;GyLc$AsIOAaRoF ;8-/_k5#>@azMsw%0<mM(ez"GSXZ =ʛ+t4r&} EsA</LvX{@cOXfIjaT7/S=Ӻc4Aȱx\:&kӲ. qH 0 T 4=!0#iѹ/7}w'E#Ӡ8U>%vyo"hbwh Q8M|F^TA:7ϯ*]Mm; Ij7Uy՛M)Ne-}VQ= 47:`ԏ_42n<:z@ZhsZ!`ΏLJgwN|{o1`)TZCDskćYdD9 1cj1|h['>Z+ ˊ@5Asaܛ3ާksEJ`g~#0Pā0c]zkwn8z+JWAs;TPY4#-g?)'< ~7m'x\Uw,4 S,VqO&iG/KҎf&E]QBD܅oBI!k2akP*`h7=)38D'bӕ9}>YɈi[Uf3@ &]t_6'QC$Xw:S&[b):xWd*}R<|"~f\650ц_.\w ڡ0&gLBtRJD >|BLs@U’W\-r#! j{Pՠ|x ^ڢ7X;q/EĹ&)v҈ *rũ~'r%Zk)bԲUs7VXuF0R OSM/dUt)7 +?vv9IBҐftˋA58nq`_:?tʗas{HA1 趸*gS%Us F@-T[#m:T#tw-rwYr~!? EtV>O:k"ʬ2`pt"z\YwIPz3%\X~CMYC0ӓ-%VtCQ4y0R׋BtMa1P/<tY-MKdn,o3Y(p+ګU+Pv %u#VC H[c3,b"_^^P0 .l56hS8C:[ܲYNh9 .y2ef 23X((e.޼0JdFQ Z/ZdGA'2MzES2"ҴpY/ÛT|]]$7y7].'_a,\] =́џi'nsێrǂׇR ʺO-?gߢQteþexpl789+'L^jQ!RKv7}ϭ[$--*7>kLu' kMPdB*)5+ ל`7a/L6jd,fM|zy%(JD  QcqB]FB@Sk C``B/M|06#;`w.STp˽X4\rc4Þ ̻ imKK 펅vZ 2Bx,B 5fD]k"zKh,4z v3(K׸+飒]QfE=FpJpۼ_KI}Im )ѵfrrexO|g/ȁ;<1tMơK""+!DQ+.JL edA}½ljߡB %?,!\lz7AG-9ϛgqOoo6Cg7UV^d#KG/Jw`tѨ:q]Bh. u?Qp3&N;Xd$0)Ǟ|2ANx^9o.iLMJ?2f)kZR0eA {OY_]A3&xO^V͖VJ;0O[֓V X"DV/oL4#dOg~K5?ILY˂Pkenk/W.f]/܀u7o<DQ_u+Y!! nHַ)\p J`&~ ߾4ǚ|`gITi/c7;5e]y'4*R'?#b\R9S3!Yn2KOTt W{3;xkiwIL,G U.ԞğLWCXA(d|KΕZ8 /5/vA6eIA/pz#]^9[F]cH-Hr~ˆ'[;#n"Ý+KIQe,ǧ81s`u c<<\g8T[73Wב_4Wܓ;V Qi2*8_;F3؂SXwϿSl54y@.qz~WzJRPkFj)r[L\Da3I)dA_CP@;zizPS<ޏ`0C1`9n0k&{X@I+z=^kEM jU:=R"mlvt6G2͔{81ܾ2;mU'ҙYRTc;ةL$$oTJ:0 AYrh }jp?wYzt-E$p"AFwőȋȕ߉ Pޢ O%[^ BRcv~D`z fcFG]ԏE8Ce0.^}bQwCgi7Y0r3Bܙk^@عfk#[g3Z lL4W{bi "|X_ϱijm8 u a]8^\cAd|ռ}"){?G#v]9d䅋+{g6{XF ,-p3A<5$aQ/SZg>d58NZ] A;Ȩ4T;7P 0=ϪUХ,(1߻)пLTa6̙)&E 0;3!4=Fŀ$)J|?o_w[] U9/N9da>jR[uC(_ SQ֥76'W`mFt5zJH`8 lI&4]p4{hGާOcyŪ b %yp6=,\{5:*yUI`s-3'{Zy9n|m1;7 fޠHy|TyިAq"@@wMa0]-*fQMQA >^/uO Ԥ)p\Y'}JYjOtoq_i2\Krxp;Ti'r{<-wG] Zpr4ƩJ%W\CДG7^1{&aq@=g:W>mnq*' j-0 aEBSO3p}k/{ 6}WO$[<.+X "]x.b<@G!>/WOWFR /!^FW@ݦ[>.6KJ؜U~峂RgpةyPp;aSS€dI}Xzଈp[EΩ;Č!9\L/XS^Ǔ-̡ 1᭣SxW䈜d_=6T\dHxwOȣdMVMovvƬnLX!|#Y(= OǼ ʾR7P2'sz ֓).CXVk=]n$M E0>l~:`,7kwQ qɮv_-F|w4nXd`JEL*q)dNB)kwc4.˥Xs,5`e/O&Dw,0+:|Ώφ $:t}u௣ r<ƛɲ sх./fjBSA}x—VY6#Eήݾ~஼4%"e axGz[j0ZVvN&uT#s~7Q6=ނ"uR7!z_P@<1ԃxi,H*D3[@/L싺}aOfH<{N9!%F` !ЪW+n^Pw\Ot.׈Rb˚LL )yJ b'$ZQ+l\QUP&dIpsFBQ/RSCA馮Y3RN/|܊E4i)c nJ&rN5@^GI-=znS9#ݱ@~@qs%m qn:zi'̙[Eq]-2i3\l,,k SBbIߙ;SU46!*B)~ QCAċ)cpVZ\و>IL?৬m8{u%{G"EE_^F$bf54o9T5ٟqMR RqȂ6nܗ{>J} ҴTbjjrq(.<{OF+D9M&Ù,F˺8l(sgYDg%ech2Mq ˥}KyƇϼ1{omĪ7Qh/{J #jx·I}9ڋ7d=uX1SGمoew|z 8hr9 W.p$5!, (lh +J4rR~YPլ4U`lע`-0 *,l*kCڒ vne_b>Fѣw9x%.F1lD(BUU .Ϻ@:˫,|l¾"q͗* W vpWIC/H'/S=ruLݒIx$`ȰYPoeqh@mD/3ݙT~]XR0EVsBo*p~^T YZPSSiZŏO=2$t|Ƿ)oO1(% K!FB+Z#4}JQvg d ha gCK[al=k%Rqf?QjW/^_j&dk52\kc';ah,ZeV4eݢ̕,2Rd֬/[lQz \7(~^^ЊȈ9k6'@|S:Xtko@@"e/BV@'; h}ZBa ``̷SM tR~SD<쩣 Y׉,POJ(:"sRa\P9]ŕ֝;LzJs|4hi#E*/(Ӭ%IU4nR`Wgü=&pPEVa~rp{+ ݡL0i(hKʔIT\U!C ^n9U\#Fܠo|M#*E/\= 봂3ٔo{ 8),9,Fjus6@'ΔgZ`d`(:q^bnd1jSeZjP;}xF "lMv|feFq?ͻh/ނT4. *WETXGx4\4H@}܇0}?qO@Y#-(\rX2PY ͒T\s!ZCmf:%Mu*_*Bg&I.LtZy:fX2[}&]P6}- y F29v4L2|NS\jH6\Ӗ쁧YcHEbv aNVKuY =% pAW98 -rM)Bm@"1ː&6|u@R@סFjγHW S}koyCw֢9Ӎiq:$bA3[ ҁHN %д689~?b;QiGM°2(_7<iyl'K.eE͔cA"ջr,WԾXW~htli=9c[XEyz="K܅.޷laMSDZH({2Yq$}褿頣˷U_^=plrv8uQ0Կ`p>%C/2NY(ȣ;vU "^b@7`ԿKx+AmAoXϝ#}_4*TWGϟx-6}FH6]gת q^8s"Lupbq@KkvyN?v9ڿUώNZjCsZS "I*s%Ny=$ L4jU+g@\Yq)ZAwEﰆȭu\C=VvMI( Y G IOB0/> .;\{ ݸtͷ;f՜ϟ\_ADb/l|pi{?C箌ҦlRnx|Z?$:l%)8#'Vl0^'ͽfS1J|d$ԇZ,Xg${i-5%vSHJ?~raiJmp0.0@Kc)f"<.tDeNWn@',oV-&Vu:2 Ai:^p>&0|򌀑p]qrE6Lߐ+/83,D&sm&#Jʌ?\ils RQݲ-I;i]yhZY-wBdOtnt&yW e|mR2?_5"cK˶b@\2',b#0SF6V{v:dY GB gT!=ý ha_#͓h1BJP(`'¢,V66LHqO(iɁ.`x~~BxXo»;WbFb*%aC/Ҿ :XֈVFb*+HN. M910J~lJјjTu2 ;WgĠηEE^!)X^B!2>gl“)˴BgƟ1_eW4E/#T| ݯx f3L 7b8.⋙s5ao[0W. 4M3Xx& < `vRg¦1375dv0l-rKddK9ؽ91%cSwKVC{~8)?Kw1?f73 OLW!8rYh`&3,YˋOL;ڀ5W3&b`4ovHjn,qȵuIrFN0Ѐ~KqF~j)j1 hdkD?ŭ,0n䠘-+t Py(m$+SCc<1\K[tSÕZ[0t|%|6Uj[NR%)")PHkÛ,{>Cq? bQNBV=:JD\%{jX Z|=፽eyaImu`ՓuD@^9x3vTdDԷ{ 18%o+a7f UrQ*5  63wsXP'E$f3i"d5R?sŸB^qHaܟG!Baf78w˘bgܵT\^>+{c\DY*2lsu2EuiТmK^5@uQӽAg@l4쬁<I!Uvi PjE3S6c*Bd5|樂a:"{gx:*l߿DFaE+Y$pl)カ1{ Ug{AA:t @Y?6 ;]9 $uE2Xi\~ yosUK !:[@4TҮ\ n$4$Bsl 6z͑J?'F4tT]ħq6e$]MlR(D&De,'ہx7_TZ8+?I9{V[wc̨oaB`d( ϡ;asLՐ~`c5Kܣr>Q5E⧶7WsTxN9pYTKÚ4$ ˼ O^„o)}j3aWrX>908G>K-t CFΗ z8-0&APmNӴ蓞+,Hhq(T=orGK<5˩j&/+e9gjVl%;ESZal0rVتhߖ_TP{l ts^[lx:1g!Ӧb֧JD堣CZ"'7f@Hb)N ڭ2) xs;=!#jT\z `5@Eցt |#a?}0>fKT^ 3y^۱==&K3$\0jhPH{!|+5$^y!96iv#I?Gկu.(5"%}"ԋa?\Z/bꍷj2qdi-Mdmxَ0,M2-Ol;`fI2 bRںֶ*j +̺ГŴca1OvwZ2*6gY^P0Q)|~"q֍xeu<+&KfJN9!iUJ_h*uyt!yo߄8Y)Vj݄fwAa*!W$vXh3ZzvP+ Mјe!?S'$NFr3@.I̪7hCr9| 6<_T"k}֚ݛڌR¦S ΈqVɚi㥇ָ[;̇s(PI5i}1L?]Bg3O^aW{?XNFUn!P[ (28sǵV}HmCs" `hx 2pg䏕}YIIqQXvw{&X uܸ"q@A!ݙ}U(#i3!4Y2mKBo_I覜nܻ"5q2؂甍c2'Zpdbk+ 7pbxq8a-_4x/\Wuz ĸwAojURjl ]æ<% d1?Ee!n@sڀ&{dMpI%Jk}c,ԍJ:Iܰ·t.+W(:2p]BmbM*ܼ,-W 30Τ{L8Zc<p Y)-=LwkS{amp)wW˕wog_]s?״8.0O0|V0M]fJ`#˹X1vt2B?vܚT7nE#YOK>ݙG,^!Y&{`hS~~(JèLm1`E,X£E<31q 5Ȟ 3 (= $}Rԙb&6l T3 2' olK~U 1{a7۰ =PC8o*_p< Y-D$V ̱Ok^40*٦+ GPylvIK]<+W5.@ ӕĤ^lBRT`'z (ml6({ZlC0(b *U; 2Xw8?Sn'+k_s춛VSw`j?Ba#І6Ș_8PlKNmԶ-bֆs'DdI= EqJ1扅Xa/v@y6 D5YT 9RJ&ۊGl.<D6pT7^ VY7=|$1J |A/ IaWtFA2P(䴖e*-O'Ed?L:3FYnꚮ2ӕ &XZ6=Vkw4gL(,RsUIm` f/պMԿl.wp6͋ l ;Yw \r:P)^Vvc@rW컺P22~/*`@pBl瘥'τ92pGΰqYtrY?@qjiTJhuPە F+Rľ qۆۛ ?gVEV7:s)#xLұD t>Eo͕iPc,?wt~HxWqtIlfIk<71DN@<$z0>[>2 xpVVQ}/dt({#)Uұf[l 5GDÏNJ̟w?xIhgS9fzk)'@ ͷ(ޖjxZ%; qFu興޻9d^kjfe|ql* ɒ߬Q<#1SSٳO9Iմ)[K{Iklq[$}؁$MDCBMrf1ݔmОF)ehn[ $u>p]*Ӈ2_Ѣfu-'يCļpFthKۗ0/R^)ܶS|cďduЯ_ﶔJF ևfN1d0U I<+ͬ{ ]9#F@~_6$ x]O]"SZ7j'bj]_> "93e]Vi@GqP?IϓyЉhx˞"3db,J`Ac[hJFڃk5lkDxy21g:"i̍pX&V(=[Z».?9ܖU-o\fE.\AS2ʳ^vy>ɼE4`m~]EzE4`}gܨbd'F4,qdN OLNQ@$SD .ݔUt狫{\mZYP`^lM^[HpܴSyqN[aayLJg]Q _c,&U&b(".ݣܼQ]UcÔyYaQbGaaM7NX>$i(RpE(yn%kn5sp Ȃ v/Q Ц[VBil33Z֡rj ȹ{0BUcXa w3o9`.q~ues`7wz[f/P|3+~f"ݤ(Z_YٕtrOav|B uG=^\(]tɽUdžU8vgɝ_na0mf) -7榭ۍ\g27!.u8j8y;n7~fT4yxH):R`6& FIApFK`{٬BC3$P<К Ay#~\Dvmnbm{?Y;2%YZUAO%He1/,4(z4DuT?\]=ҡq%pˤO\ Ds1N)K=;ROג5hu+EQ#1a8 nCQlqBҐ;ZSUp~P+骀#ΡxUifD z ָ܍-Ԙ.gp0 ԛZZJ}# ^1p O(UՖӨO$FC}<#5U2ִܼ/˕R+(oHS`;j7+ ,u׭s4ɭM5;3<0]]S_W% ?#Z򎀜4L5ڱ HF%ݢuƊFOk3UiG8:{jB|8yf^HEmH43y"s X@Bq&)ouN, <53G??kLJVV@\q}:Ya5u]Ȼ'Q}1P'q:EDwմa7ezFZyKgkֳzz}3^Q&gJB*,Q؟T5љ/lAmVd+G?ֶxO1Ҟ=K?S(l>  L&ikmjb3-ϑWO¾ƒ@eF"`:<=EOPVcRІG4;a0 VռyEsD)Ю,Ttd^S׺ۼ; :O9٢fIf:/Vf*7~Bu>dNKA/ q\D>}ǁ>sM7V?7/#z(I >0 J/xu%jI @CuШSM?U?'yiRC(Ei͑6ɫOuy:Zv\XO+%)Dcl2ߚӷ/C6$jMroTN\1Rg71\ WW[6&Cbetbڈ|ǻzǵG c;f!y~Dp?֙F[fKSN&F,ԢJ \Zܽ ҧ sB8_>n?oQ4 ~gzKs2'* M%ԕ2>O@vI`/nWbkBJ Nmor˙@/!xTL? NVG ,+V#?BJu*'-@HۊrIRI F6hK$XGW`:q7Ү@Xf:֛d(xkù-fڗ?];E2 pN98OcotGj$\ڊq6EI1 hmn?ZO Uj> B*(k%M<Ff&FR|) B??ʨk)"{p*Wq"Rd2,EZy @=FUR~s>zw#Wf;|>uŗuFﻙS>N{P!TC_(eKZnAB/ "V!֦c{|NX)׹uo>CEޘKI{h㼇H&J؜m%u1D='F[T_Xد߇wmCJ'yrӰh؊- e>ЂIW0kC5ѡ=KV),~B}zWN@-zE"G ƟU,"ާlQѮKv\}>sncN]Tχ;>G>3Y.o4h$hr1n9q[wE'ph'e2aCѥȻ:tHާ+@I)9!U% cSWkKZ'&!VfXI?teӯFK19AD?C*oxil>Gx #Id~9Z=Kn65*^?=w)vۣ E:%Ml fVpX">۬ Ϙ~C<|h tޠGL`?$#+Kq7D}wm9ZڈoK@.~^a/NDa#5ĵ`U{2Dʢ~Pt UB%{㆚.'%tH1GsKa@O'2È:'F,A1uĂtIX(7/Z`̈DSڛH8NmC爒2WdGTbCm؏#*bugMr(&)A|X4xAņFXh8 8@yy,  Nq $۟pNē0+Hi&=0ZO|s)EOm7~qaʊHjZ7@韼6@c w\R q"xcT/J-FF2>*1*̓+u vV:<'XipIO;9-)v}3MSx厛E1 pzzGk;A7·YڽKAzzW?o >^9ŗzզh}:^&KOZTճU >,cXOG>HP>zeŨgwN]G5[)iG+q>J\g>v}sknL)O|:e\FSWF{w$| k#JK}n1|4\)1 j :[qk՘jض In¿Od7xyԄʭ Tk- |yO2h׮*,k ,AsRHP?A;mV3nMnt lpڈP4$ic6xJvK1XC3?Za`K7ܟm5ٗ%G7iNЎ _:<ǽz=V%CPi*Cmu8 =dhpBb<(W9Q-\~v=:CK:Uunva[ HAjWy.vlUT]^=Lhlevl{v}Ћ ?v""&}xά\,?7[-DTwjĀF.v"˄HL8ˑXuA<>z;X elJI֗8#U!w57}l." 7 l`NFz0C3l B_T_9_1jdDS}!$!ŗBaAru ߝs-Y̗gY!6PmjSSe%hav{1⮘#iuTG;TcRʤU9s|UՉ2Hx#jv:eR; ݀LJx9l\V C; ^›t8"zY{ps'Q1my e$2PU*I H=YONEd6u.nbه4YN; ;촂kkջ,O'H۰1[qDf`$}--av"u$2$So% #J Fwԏ;&\˾ FR9NkVx?6uN(N%/#M5)J) j ] 00 d".ԍz@K%"A}i $&ԑO +.ְ?˾}yb2AԳh<}XWwO9O:UQ YjV F̀ܐlZ\Q"-OA-Z?{ُF㣍kNW:P˾ 6aP$ 篃^>k^t_~vcy߂lijd^s 1Y)Pq?1;" x[A֌2pE#>2ʚ?U}a-VzWDVVkɖs,e*[^vԢ(f}X&^ $.9ZrHh Ɂ~_czW (>^(Ia|$F ovx_HcL@y/:Ns5Ny,-q2%/H{Uힹ5FkU y(3o[n 1N<厜2}< !')7 |RtEp+Nj&ˊ~"U!c:4>fK^r)IJMp'|^rpN$rjl#όYNJ}hO•u\n"3T_/jyQ26hmq[>髍ɾNrMA&]4 `P-^DmwM?ѱS̶v]c`/*7gX#Wu+Bnh#gP PxNn8&h zFiU44,Tؕ,oҌ}~pF{~[,5JNg䔯<~ddnw=eVɴ%al'XiSȖ j\Pl:pMv, k8ԔQQN N" @&b~>YElj>}ʜAwΆւe9td{Rd bFN(=d*گ BcT|aRl%Ax9J ՠl6f>\>>cJ::~Jp *u\7H$E ;|6= {55PRgs6C;-LP+DzCƒJ#R$ YG~* G^!VQ;[׮J9oe5DVxsE7A䥝~#fH!ֺuJIQCl]pH!a57=d3ݖi ɬ ‰~RLr]iEмdav?^ TM hqe>L BaQU2[^ؖl,pNmKGxh)ϷCQZ>9I"i/zwķ: +LZ(TWP==gdK@Klƿ(D%hJnV`gU|eFnCsbP߸-kłdXN-8<+PmQ%)Q-Kr͐&7 ߨD4'rYtOͦRIs2Ch@!5`w"?E{J Wb鏇ϚGQX0A=UOUCNX61a, B._=zAWbځ:5,]f!Mm#[Nl G^;0#,>cԫM4f,;7ϑZޭ ?r6|FNbۘF\kz6.fQCY 8gw(2Md1(bxҞF┆AԞKne Wk* duɍ{8 wMy,?Cz[,he?QNij,gD.YYe>THf Io%UUVp2oEL۷oTV\.c'{#uJ8|n!k7h*ˑh_j>,wa''azkV v'QC(*`"5ۭUn {|'gK/(\Ca:Gփ̙fm8^qsI5neR +40l;WvJv1ƿ?OK_N!I*tc90|.mjWyV `p֎;ƂXաk@,Ns}ӾG{h^3CT8 jzC`xmDM {[29[V6a7<|dbL|FW;?0踜+\i̾K4vy6wPuܰVՙM3һ2y5d9Hd^58op H U~t?F5>ۧ-͊ݏʺG8PZ48 XJ@e߁_PpȂ#3D&ϵ hl&P+*;᭦$KRP ]@3wM "#T*|4!ɡ醨;zZ]R)NS \gNr)PY|tt-U$MVs ViZч̣3OV y"3(L$.(O3J.f/exE`{9Y2ϭrp7<ݳZ7\4xץ=VyjrR9ޓ*á =Pe*9=Ic? ULJvH%Bv?U6| uD#gu-U>#1NOa6I %:w*P5|iG0,u[G=Vk4wWjjR/>|#NŦi .P_=`ZWh@ ³dmpqp'Em]z +q-|apǗzi)1#5Cߓ Üòrur,O jRI*dvT /@ b٨U9~0f(#r)@(8yk3k"?@zح) ,yְB` 9@YޓuitfMPzރ̙&b KH3* %Vtͳ.=l f.KN-cNBa/BY9:_g-ZM>A5?aӳyOZү>zUSY?Ht?x*λK^ߦnFuJU/IidSHwiJIWi;FXX]*B( .+}adx T#azrlz˒;@&FA1<[ݎ}Y8j;o #t$!{AgjSy(dUEQ{0|_rW6@Lȧ"NVDEǦ@rL#Gg$s̿Us yAUYQ{Z~23_'Qx~'oY׳ UHXbpwl.8-&ae0qv^s|],IxX H0a<@ͤEŒ[28]: uDq|g5 ԚўQ5eE:r1BVcZT̗|]_ +o&RBest'am_~{@ }}VBDu q.sF7WH0VxdL*qi/`4ǹr&h ̻hs iπ-SzHE2ζs&﨡MHaV$Vh0׳d*{Zͣ.jLN{R|IWiLD5EwF7 kSxR .'+s`K"-8QPT:o1I9 a6F/pnGlR3_3+cwuѯ@_RD;_S_6453 ]w@W](gڜ,Y6Ny 7b=xE OVhn;Mnb=Se%Hac0D&УN3lڼ[r[[M7Ոnqϳi೪m " #eal<m?zU?kak.7Xyk,iWn\yD6[RNӝ\5r6[u_6;n^K=8%o$biF-RkFI,މ_v_۰hJ DImBZFwc2QqjKG9QW@ ܦNPb5RF/PțJɞbl%Z$zZF.4#\ e"gC!rbQ DW`G;' /0Xڒ_s]ۈdOTk7Hrd]! >_tH8u7y#p J>?e3gu{uJ)+Vj0z'{; o.Nhv(,ZY< 9FpmcR2BP 0x}VP>Mm# Im ?fr)S2~OEdd8$|ZFd{KDRQV/=ip;ؑ>(6 5, dlg wB.;zʢ[ d V *[8A\*3gݢ-`qt:#܁!/fj"0 o%e+sO15$BJKcB-cf \)ݟfOPz-SRr1H4S |3~ =m)^zOHw0"v1):t#mK=| q,)<`5~.0I3^ /OGH6 ߿x±R$>>`}a _F#YcYkf\0gZw#߆T+G: odUYKiG|bOE-I]\KT^V6뒭 AE;Flr'w\87iYB|#8vU"|C5Ɣ(_dJʊLq/P٦q%]lV t6'=x8U-sU~0GO6V9I^fI2㎈Px.Osw88+e\^`gQ6vHhURiPL )f hz}s6 Ta`ԁLhPfĜ 9? jIk&#i,x8BbȚ↹&RLB9XZcI3~\ )'l+Dw"J*eFzumsqy=iL}Ej [5=wM5]LE(q^6a{ޜ”kR] 78VRif\jYв Q(/)U|_ ZHJ~WNT_@@/ӍpH~N?0U$̓kP=l,潰ta?avqN dVh=GhUiG|5 %֎&7_4\6(' H Ԁo2V\0lFW=:# [7Mc]M*X=\ɓP_ir=V,ςVwl_xlZ0/S Gety_ ب{caJ;`Nap'mdo2wӆzl^j1p֜Y%n_*q7H+tU@d@_""(*c'js~}# 7LG#z@[=0MR"˓ŠT0Np[e3g[D+T#г`&J]|k. }02>?NO[P& 0Y#SXq wFyB:|d|R p:%`)Ul$JXLUVPMs|Vh^0jNG:%j߅c=/-,1eD\FoZb[qkF%c }'#*yq 霋=?F,Wʚx!=5N੃.Kƻg&翢?@a@NIr { `.USS.POwsbbLaCGAX\MYi $@~JC_AU$hycuR 5vHnNy iJ}lmg;֡LLG3\zF Ё2 m|i,/6~D~V%\N }jBBb V'AP&w '@jz/Ƌõϥ/O;wm`? s(S&Y)VZ'_Շzc'mh8T+g\J_XTߙ`0&c!okaTEQZ_L+MtX /+VZshuwI}|SZIBt\O=(c=$N;o<Ӭ.m$"}lDIKo3AK2ehUsZkە';fj>`JSOR:kl\!wC04ͳD3};/0,1%[ _#W`r`WLe7ur%{$KZ I`M^MdݝENbXWxs֌>yĮ"|:c Da>M*-I~W,"wuƄp{)Ƚ PRFq{ /Ҙq eB7sgBdV'Ǯ3e"c(w'e@CO>Æ4dZ?SY Oc$9ҵ#h?9j޷%tZrwZ;„oOϲ=Crh*%I*~TP ~|UϪ#P6іo"'J*ٟR{!Lh\Np§Zxm)iv([ |^MCHfw|Nܓ"f)֐R|jb癱 mKLQ}Ls4(Y̗s((Iyf5皻YInj5'YKSmJ6]ʀZp1绕#vAϋÀjJ) tOQә؏ k}(Rnwݜ$fm+vBFpےYmo^6r3m׈>9Y*n-y%b'^qVy\|J(OP4ɰc="V{^qC]+?< ~@L)(a)-nǭ7w=#~ggYIhDgXVd5ao*rWRK_vecW(|yge13/GB.B,T>*p| 'k &xLPاoQ8NgYms8gQ|g:kTi"iqrey9(\29o #]P #@+S/4&l;ĄɃS ߯]da8_:n/؇_8A5]a?1KkU43k gapQ]|4Pvvs7՞R1VVS;Ԩg' ԏ%a8E]+7SQtmĆ4%#'AKXas!3KH_l<`:&qaf9c!{Iԑi΂[0l큒&$&-a[4;ky#8^ ſ[5/K\Q>͚`Eς/I{h*۷,V@[ي \@g`ʰH2F $Ræ.N8NIW3vryO;cDv3]Сxʈ>~c"98x ,S~Nc01/ծ_fI#!- UQxuk]d=v[+K!SV:x&ZL_#8GCUA:-yPVV#שjT=rrl[wT ~lW=@ {4]1GzCCLoT;*3?x5M-7+~,/:GEam;_y eb(B/M[^>$b)|[=NSfyq^Xa$oCKt{-.LP”oWۥ$ 4A*qxO|'=o!xcϼ ۓXLd1tG߸smx"ܧȪ GS=S7y%$uAr(x9I:Q ?jҥJ{]SY6ӄ r+Si5 Em6.o \|'zYE 2 L>Vzh!C Jʧ8@]~>Ӓ2[# & F o<٣K7]k#J L&e;vIEp G s,,!]Q2FV ԣ58{4$d_t+50`'/kC{c#D3*BFc4a00 =DwPL* A`Y&'>qtjY(9E:_ȣ,H1ߔ%EvsyV?Ė$b{S=ʱl3 \*D|ctC7PBSץ%R쏥y#:?Yf9)A7x9CECW16H'N&#=Ns/~4ıI&V36JW*EIࠌα( 2 V,{v<"35iJDQY5(\=φ[rBoW3j> EE!y|х\;F7c5ڭ-EM՟)nxA#"YDZޥxfz6x<8Gֹ7[)!cw,1Jk I| W$Pv ErQ`W}h[Zӄ>7_/P'5CDŽ@g_&k#;;# Qm]'G6MŮ$B0yrnDngY Zwzs"邎ਣM+:z(lK˜)20]6JeŸHM+-KdZu>{{RJL"/Q )$qDr`Rq0ps#~oB q(8ۧ):1 S"v/aBcjZȑ$Z 6o(cJ% 1"̫K{y.CQ!Rx=LTEvB[k0f$emup?n0]iQ99(si"9 ΁[L'GE%*A@.196՟*{QtCS>rO .q+c`Z)咐.6D{M in@(wN /ᄵZ6Vtq=p&^ڰ-O\Aݿ|D~aBO6TbE]ȶ7Þ`pg Iy^E3,o%#øvVtȳQ-#Ct*J #|QSLз9L!LS޾9P!%B^MXq:ʲLE  ,)Y+'[4E~i19骰z<`%-%~T]dԠt yҍ!߯;A_1yH% %;6j7@C@A[_f`g$?zFJ]`JXᪿv lcD$lWi(McH,QMZ&˰Ê_.-SL O<|߈>P.84W݅斑x ğ~a)y:exVE\ORڊ*DiϫyA 5D?#D ݶt$ŭXƿS$.dvԪ'} dvD*-7ʑQ̽-'b<EtlGnР5ܤ$ߘ'Ia88i7vVora,oFqu%e/+U˃*4ٹ6D@`Ze5GM]7}4bL%WE WP%^r{xwLVeV咡\Tud'\-3&xG xuP>cx}>Ju2pzKdHh#s1I:P06b=dk@'6\=ź#;[U+y:hbL8+&\=P^v7EHGO*|yE <4Q{gƒ^l6z_n"Fɠ'01U-tDR[7qlzow]~JM1!H.U߄oNk`ݴ߁S"'VFi1_cE`B8`/AyUf B`-¶ [JH,)8InXYCsd{ʝ|n3EZT&Iu*~]p ~3jRE䳒fs5 pbԖfqy `+Ye Q`Mد~>R-y NPB#&(o eVyevF۞ڗ{$ IDTCAa\ɱ };u3}V; NNөkQnMgfiЋ!yzXs^Ki`0+"Ig.;BBGM-(T\Jb~?wdͮO#+ќ!6#ө$ۚ^ ^tVce@!߉%7?P+uLNrlV2jנ=9`gv7Qp\2Ng1 UJS/{?;Y9WrLQ8&KG.;6H^Ta~{c4.'"6;678_fFܢҚ[OI:Z^gy?7t٨(8|WR]χu@^VENXTH`l@<"g}%!w»r_oQ=-Iӽ=)E:njR73>6²5AKӝߘ0rxجFqQ}8m4nɍ4Hu`#i B~/=;IUXލ4hfÔɤ$>(}fkOnaKg^1 :جswjPL|^`Mw [Ȅ[1XZdOnQqtpY9ծv_9P1K'7XGj/jNڪ{>GiMB s Abz@Q) T U@SyO+ R~$qR)3KT|j =#ڑ 8Ua CMa'55^+GwFOݕL{di=SxQ0N1u;lz7zC㵰ȍ8JVR2 |^EI9oZbwQTt2ɝ=Eó0=Z+QE]0ϯ˼șC)Hg3ŒLa³jwsiyC0' KUǩnhOZ% וɧϕN?q,׈lBWA*>&R1Rw6LP jJRόj-0<$&7l2XZ=L?Jϟ-iA?~0F@H?@;I/z.dg/<B.Rbu8*+''#etA钨ï a˾:PҠvt&;QAA\W#[.ӌjQ71"K5`P(:ۡc&^]D%F Cg:f`XFTyav@2@kqQweqEƀsvB\%~1 tUߤ M4‹ B6T]/jdJ1oPRPt@jT$߽pFpF#eFB_x!:H 1d/vtigr>-2э|u4g'^\zҬcuWe)]PPP!2|;٦R%Ss"løj8B"Q)uy!•'95Q֐J寽&kj8\+H UiE̜ٓL~d5))VD7~+H an uXq~!ׇwjہAS $8,AK埥EG+i62x:Z"L˞o=_ߴ8.eO6BTQ5lP/4];( ۴Fej[X%hҀsˣT/!Ħ(N@w%ţ:+,H)UI8TjufYG5Uk 8 ] >5k5c+[2EFKYgɒ8q2/ q_LzeLNJv6sɠז  @ ] #oLƲ׎OL[:7i| ȡYN 'qpYmoT Q`z6C%\em5g@.\8>x8@?\vS;`hڌ4i6MI4WHV@-U8+jCX/D}[1zd^*z 4a[g4y}wn#[*Q`@82I[7 WnH s Q ɰ1ݾ{D惝Yjh#=tjeWa${Uu/b>?B:DNQEq&X"ב;r̫RV~F+1Sp}6h9ű'(a$?F+į[""qDnCP ?&!e1{Fڑ" k=(߇C[yY_QEq`?LLek2NJ8ydp{6Şxiw7&~: sPǾw֪ Vug0hy^Rqgbq? L -ͱ/{1 AM HD)ЌԔމa5s5f% -9{q^SrX ӜiP~_ė0[S |_@èbNzk JB으%am&14{n\Bx)x *enWT5TA5OA`6, GAP%,_:;?Mdge'{bltᷱk Y?-8)eV> z+ rSᷡA}@!jt}pT~CG<5y]bz>U__8͌NL^OPm? Ə]olV!Tz,JxvLZLx8s}48,cMmni8Py5 ;ʐμj0nPi8= oΨM';ZV l6+4~7-Hiq<EM}A\RX}3:e{ 68)(:eΜө:癿!qikolX@JFsȅtg(vlTg-ÎB"^j"tә84Fs7kexߚ ͛{Z2c]Q8wklRߚQMۓ}G|^nJ._sNnX\Q=Q6QԜKs/q<dx.;xI9v*:-7C-tj$ *&ߦD "o!"G<]@ Ix =1K:+ovi[oe\b %L-% &GŬjޞ}||nꔻ%pW rpxdj6caWZ"pM;Dp[SeX Lj]w h1K֚I;͏w"VuZ)Q6c{ʂp;k*/%C\> zlO˱Q7Kp#xoEpE M]z(8UM"!3s1n)rV[ƷeA! z@JS wWIG 0V]22fdS m%A",30͈hq4қC~r _+ x#Q!/}zKɷcB#Dvd Sb\o+iCpsU8J= 38@3:W?_RkbisL#)BB%RI3 ] r}L_:@nYl?eL -&^쭋f19 v_s gFNnq Tm޸ 1_H983Y&ZkZCz#ٺCT9VoXJ s'ywŌd=f8T$*#&8AIM iF wX:mOʟ__?3Α;h'71RsZҷ,^(5R@iT/[ R pgm$+o!Yv\Xq5i{bi+Q[>z7\ʑ*A:C{?T{yy;nb5HF"3>C7s"vv5X )X˫=-Āt VIQ94G 10dש/aw1xr@EQ&S|s)Gni끇@:HjmiT s5|ow3jqF^B _jqM 0cmeɆ .}Hg?69!Y}UsFӸ؈RJA7>Q!4Cɳ$B23 ˜xˍvYʁ>G*傖߃ſg+$U~yP͊k~S3{l->s4hk;> j'׵x;- <U_X9Y$$>63Y~?I_Y#PQ0W ׬tC}+Se 9:RduK-ķVrj2(A˳՗ `5E#R(2jqa{2c4HvDحC畻 ԵOxxgx4{!>dt)tL{p:5rU>Y%-t"lА遅ʱofv056ޑ')v 0 ]z`Fݮ!K9zg4&Û=(̹CCON K:pZ!_})ҌGa8L 0D%}XVz'is\Vca.l~vڡUVIAvz+:4zV/JE5v+TM5=ӁVm)*4?և˧]a->A^{H}pLϸ0JA#`:7\ JQε??;5HMZiFJ(r;?&z{}V nv} s:Vھ}5bWͼGlbYnwsff*7=ؤ_f!RV{1~@]w*c WƟSJ){vC\_ #ly^єNbW jE=#`-(g!NF>gY!̀aZ~Ir)hvɝ17YZe0N~\ȟ=U=Lzjt]pi0fEqm"v;JC5ip*G FhH{qؙr,ؓoG@5:QR դ+⊧RLIXUW=N{*DGLx>y^P0"_$7 pQN  #vXky۝E K19t $]P] cD[J”RH Y ft^_L;1"4ŤW(h(9 祦|w!Sť_S8h~8.Kkh= ]4HEIjZGW9: WO"*DAkz;hP^YJo^99㟸s_j!:t#wκgʋ%6c5l5NN.ُEH"3bJz+Aw騎HIؑr֥{^"1P_醷%Z~^%6cA{/4rˬc ;v$Y徫!^#2Pv:62H:|%Vo|F1Z$JsAtp%h#Am?H7@xPѪhq;Թ@3;beEJQP4Z9MO!C}'.ID楏e CahhbN6ZqN&f-cD _̺p&mԎ_O]z/X@Dj(&E W8DQCZahTM/+3G)WTgx!۪o':stIe-Ǻ*lf&-U.9M`.zmns $M@:s J~eӛkaE~aS5MX9_+A͘F ׋6EW"*i[g5΋o<Ϣrb ?"n͊trݕM*.۱ќY{d)\ 8x9H?.9]\j>8ItoGƳ‚Fݻ*̿N+bokI- 8#7z}9!ej]hu+UÖQ"?.ͥ {Tǽ5+!Y.9nm *v8Yց#bbwW_-~.1{ܷXLC'bHz)2 *+Hi+@aKR[Tp_%iSpKɁz/x45Ւr-Aj)˗0jcҮG !8rHC-2 ٵ+wx PO1M1=fV5 ƲʢhNdSKCV >˥[#'04Me ˤ ni:`3mz+0M 﩯abcK:,"Utfj2& &F{#ۦpieשb2%1+s̥rq9Cޭ쬳&^΂iJt2BChքhS>iv,qb4k v6d PVg-7PZ"g*IWtt*uR:##b f 1ȸ~+<G yB;P3J t`M{㣼Q I@z\mڎl\in^Yg>\F 4uQwV$ݓ9u; SK ݽX+[hީfӭK&죧mg[:!/3xRof=B2X 6*|oU{:;avoq@.ٱ>ɤv/u@?*fM >ML-ٟmz"w[PdXgE1Ԃ~L[s'ޗrv^J\F n{XJW=j@;okn,H%ۣlc~nX.z!KCLwn!=٩V7-F B~[ÀBrZᾞ@od/BmWJG>}( Ptq[CimDd &|gF\{1!YrWEYd %Bj\ #Gy< F`_شL8_–Iqӛ+ؿ,>%M6w[{u\}g<{@g}\sO/e&\o򲇽bpsp:] ܿfn ykPH:M{z4+p"z2E_hpqƑݠ;?Hf[m7T: %]6z3fO#З}VM,Z|'@<R<H!fK>/ۂpD$Au3܀_=}m5WǭR1ثI+-G`sƤ#9C׻L[{[Cm$OUڍ4=*sBȷ o n_Nin\9LXf*h9,Zs# $ܳV3;q8~C- ʄ> 35t _;@-f-B7~VD,-X V~@o6e-}Y`OܐSD@#N]m...Fn:82W@蟝ksCo8$ fr=Sֽui^iBtMgHKֱ^ ,I1`wTp0/.=UQ hz!P%[>{)ό9Ĭ*X5)}V'+* <:%5}?N0vH쬹x֯ ȆT`&sC{hfD[δ3ņ~Hs&W1'Fϊ#!xNJ4z5QUI,w+RN#7_5kJ#k^1?"= C?|?2iwz&LtwOߠSt,XUqkv(x6mýd UHp3 ]P} Ћ|sFʸϜQz 6~^Q_j^ U`XrwB*B4=`\υ$ $Y2. ]5XDO^'IwQ`,wm Կܮ70$GR]urm3.$ V!qEmƏ3 zjZBY[=zGͱˠg$ "FU09CH1,cBq.³k"Ҡz:+d mPe١4 /(؇{aU3.si}S8~H(gʶQ HJ6!G&F,.=s7^!U^XZgc@qZaA6nwtoXs"/݊tCT lL[ }]lPFlLh8+ۿqaaQý>aQB_\ntaU^RǧrS] 4[p;ٚ&Z(D?K6!dX"{ۿ2_8 Gkr׃ÛwVA{ [uYTQZiN7xEB6-9lW"BWZZuɎ%2믑WU̦y\RXU.9`阅{76$ths}Lۇ2X*qy㦿,.Kc}pH`W9rjS2<؀N&X5*@-_U420ob,qZ0{Ĕ]\G&/ ;C/Y;y.[A` USN+©EֹYI&5Z+LzDϝA0\CA-ŖR$EVvQZ0U,\v7PކPJ]iDٰ4Ag0 f }y6y _"nw+ 1y֗ :ڊ9e\*jZnZ7)߄S1: M0`TzBQ˻60$ƭ*Ԃ|UX5dXmG -UAGXy l&ҋny(Esm7@[^q(]Wg 9A"qD:c~?k?쏍.l Mٲ'QV?뼿0êMc+^6 pH2(Td΃ua׾ɣliӪ22 {VcD* -~<V+_;0D |qchGP\-^ZMwH kgDU*1۷ޮ{Rt-"1]L˖; P 0KavĺypWc5Mw3p4NzB8]*<5i֌w/5EC&0 htWwx\LTZYH&a?OѫWust vkD O޼vtBDy%Z׫_4b=vF6/$,,$ B: r I7UG]{HG;-Jym%DPsQg G^,^Z)o!C9.9zX+ɇp.x)'zf K;NbmCx|d\O3inΟDjIG\E*@sZ"ҨNaO"-p~,r10MvX-xbWwb b׈n`Mh!)*FwZʯ!Ht ~\|lZ,*~CwevYEH+6Wy,yN ឣES{ ATA+A$Bd>KҒxu5):W$޹y ò.Λݮ`,fa4ӌcY]O'^W8=xnb -R63SFXݰhvk~d7+h&Al+Aa;F$ mle,93]`o{`ML$ i7#,b3[7.,Ļc޼>lAQMPꎀ}ǝB69w=X6-6)hcЩ:%ڊ JGo>HOZxFE60ř$8@rC*9b$P<`ɀ1;8%/ NmBȁbwk/?W0gqL1 Y|#wh+B9* sOWW)J88jοWW٦6huWRX$}@r^{;D0& &E:E^. …>{,Stx&JN`0c@%m=D{o7=C8$7c>H#/L"8b&5 Una.FhK{GpYP_&|_7sUla:Qq0umF&+xRWmTKVZdb"Fex`jpj'][a=?G ӳ#m |%_F:4E%6W'/Dm|lq X(0#25q϶)mLDHMwT<~A/6aD i  ( + O!O.j(36x1G`< o>'@BdHz6W}r KR#h`rV?wn9TrYw}vQ r7JP%dޱtqtoZ g7GH]]@= nFܦ^\$:3'UpiN}V2WiV9Ld^ r %)`̔.n.N (nD ( [ T&&Hƽ:x%=~AwM3a2KNSX{N,~Wdjhj983TAh@Jiٷj $́v6gL<?kSe ź W2Dg*nPS=5%0aH+g0R[GkUX^^КTL뎠a翗U*XC`uTff";sԬ>[7F]XXpf^NpYʘt9 䃰 UAYLzOq)5E­sHGdNvFژ(~Sٽ >>a2 q9zzm _}#6[+>J6 :.h⣷D=roċߺv"\&E^4g>ʶ<E#51bʷϥG;nn$(8֔d3͓V&S6QmX6xK7X#iiXJYVr.9|ǩ W/n0 Yq]yGަG×K& ]B\H4yru7GU d0#$Gg . 1D5_F+M<~,^Յw_Dn)##N,p19`z8>0VlofRT`ok$dDb"y-cHuy21]uS֘vޓ(~!S{Eڂo?Y@DVg(Z¨&R=3 El4(Sta)1gZR93w|{*\{ـ[S$D[iNG/i>YGMQMXy;z KL5Y`Mk/n\xnB; JRqͫeLRvQϯ0Ӛ||SOа̺xUnb6Jay={p۷&ftG >84TLV*J[_S!0殪 u,G2Ӭ@rW;6\BCM=9:h/bj>:u“Dۙ] }NR+Idfe;|ݶP-s"qȾ0Is7Lj~5xZTI]eOT:=! D9suN`׷[U!7ϊ =vd%&Yѡ/e:F-Ch9XPCfK8-ZzߦT6ڶ{.!s*a5*O( Vc{we퇹\HLE&\٘Be=* zҨp)؝t^ 6ۡXEXX)c  XOl tzG G8k&! t-+Tkq٩D}{ M3\Z? g57Ob@ҧ10B Y"Thl ܷBM (xA/2;^2~M-b|`jHQ {dy1킔?;7۷"l/M>fE7z.ńCkMC??k- .Q%L<-Mjw#o]ԝ"Ã4f]BWJ]V։O՜n3 O)J=#} Mf+ߌQ4²%=9ph(ݼ ^>r3Ͳey|LU oC#{\ V)`I" Od(rٍ9{knIWpWwlRA\:X]&a&vI8K&J}k5.|؍c-N2%QQN4$}ҕ/d*<=r2uxb\̄Y G/o͉15*Q/nA ;TCCw;: ;7c!3qOHV-u,,[ Kp0]pJs Ē'xϚlVDr0a/Kkzd+.8{Y.(f]~!| 2 36O׃C:W.KMr,S`<ҽ_Vƺ&!"jB!Cn滿CQjkc)b!֘"CQ |r( 'y{8c}F ytD6y6Di8y4m @497 ~NR3t e|r+@oG U@o'/R0&pyk@9f*yWz> s6#2N_jZSg+zm!`Ú+ۄ2d>ƩXs-(SAEoxoGaDLQضH!Ay=ez<<`1Jh;˄d<;*1 Q9Utx#AbXX> ]f#a tZ@|y# mWa746;>GA-ޓ"WZM~nԸ;Gs:_7w;ʝw~:HymT1q2%J,CXr<^LPp rYޙ^[poRWaIIږo>a|pS ).aϫqT.OUvP̞ܳ VEvV8kn~F˔ 5 m\\U˓R'=T锆,zcR]z|]XPvfjoJj 9oLZV:=ә6TYU/ȲA0TfK՞}W,jݶB-UiۉJ)sAࢿh:$-aDz] ivZG6EVzѝrWs10QBK4[]{jW4 1AJuoK_Pٌ~ޘ3Il(@{fhեy> v{5]$tC,iJ[(~R `l-ZqJ?DTլJ/UF:T "SlƇJyg (zWb&ZSQ%g=B֘'>xv׶ 3+zgfz1>7Zg e:R^X/v3~_}i.=ZGsdN{VۇMHYs<qZ"æg]mọ+dˏ]ӪcU y}?zUb Vɑ3u/\1]Xo;(}%* 9| iV;"%p:kƉT@#3` ]1{jtmDZ֩[,54a|0j+6hfi`իpbB!pwmłſX`g~]sߵYe>娷(7:} G$i{hW%Ucz0cn-]/-a! 5<&)cSyPv!(Wɬ _AЍ* @XD?=g$c<>$Qh1kp% A It&R)1Gmwĥ %n )4ú"P&![ۛI+\)ylԎPL8}J4F4$I0̓` 60[;Q]BlP'Wz}P1j8 sͳ )?:}m5ԞO{]I-C:x= +V=ȾfYWiu(#J/X1#[qo`fbmSF[^MLc1ƐM,8oh+Xoɜvm@ {! )O{}8weW$D. :L}C̙/V#d9^ U Y:ܾFw<]N8#I 7ZkU2!_ psmOr}!I$/ p8 +|<&Pr@[.uաmʾ~񌟁 .7Yꀖڵ5S+=ƵR-"UqKgo<Јg(&D/ڽa/8s$qtTP$,O|B+׏ijI>`G[mڛZfe] ,>nPt9|0 $ٖO0G@1{5CYO" ٺf+v" X-t):@E)-a/ ZXf3}α.N0{TRD&,K\IKt䟌 ``HPAӂ$vi 7ҪbBA݈?];p~Xͤ&{"mЄ)? ތ7E2&AG:-\Xxʽ&bv04?`Ln^a#wGk P_0_Oe4`SHS@D`)3nBcUEԭ# RUna8 l`zMFrۇ68NUZc8{/ S0!&.@R}t3Kpﳸ$A[&83xJÿktc(LƜkQ n`q95@N/gaol?WTAD)riQ2\Z-yHlF$R8)q&G'3WJIi7?tx5M^24IX\lNfiźCIg>lLgL,o!VmPժ݁uJ24_ȴG'6-:Įnwi3*NmJH}, keWB>SIz}S=̇]]Tl^-+c?>LN)Ri~!c =-f푟SVm[I!}?\B,ߨ+0A4qҒ؊fpʰ[=:#ˀ( ZԪv,_-Bܰᡜ+[}aoVrH5uVr~!YeM':…>GOdSaϕA?5x-*IFyIo kے-4p/ >4ǚ/K&>$()TXC80s؋DsA~i.Dgt}[.Rخ`W{6Rn:T9E L!|՝c39KOoydm25@6ypKrV&ra ay$C nnGTq v(qhg>,864&{g|х# p`by!XE!H %SSa>(:^ἑ?W?>HVWiy^E%6:P;2J0`[2:;6c=TaEzx3  }aJſ[ex Po%_(KR劼{S\o cHw5޻x[1*HV1X2.ժ]Dg?׷zEPe2rM>ӞyP5|)i|?~/= R入 LJrB [&)Y>[d ~oͳO\˱Qqa|<[߫+=cHj5 'C*1Omq,+$Aơ} oc5')p4T’[ϜuCB.fu\+B͌DpOߔ=.{@4%+#I9+:zOe< k&4J/]`_+)ʚKl3>d`o}B: Z&'>< KGmmѽkSԋJTwmUTҀd@TƖfy)<[Ȅn_dqOV~1bW6MKcq2 y-UgwA318'Z({NjS4_y HnE;>65HS4ϬN~LE1 9;lOуXGBf4jv=FYy&j-N43EeT`rKM ÂONfLNU sFXDZy1v$5TPN?_49x(LP┗A!-}h0GBz/d4JjϴS7DSFu䶂IX'TE {:u #wWaEU i`WioP;&ILS}Zs͆ݎf*;e LhBp"fk9"*{M}];(;vwL{lTK^ 30 6r X1RQX(ܟޟ(Lg#Q#g ;~QW/ר $2l׹BWl cJDW]k/۔a c#xLKd,F:5,ӳq_:D(2k~Ih~(I8L2)mO#&H3,#C|4gۭU%,D >+Hj8Z٠%#s! zTEaZY[Ҏ3:9%F KCAYDۢQϦg$Fe˛6R% OSlOH8;tg΍(]*$cnHj5 K6G<bPGvͿV񋧣3"G:c KnxNLn?0cJ0Ci?:8wK7< D- !|ꂲyGiشe{tuU!?~׌qMbvZ+* U\3o 6SӨ]Dimlu7)a.i뼌9O|@gzʟxF 9b;x%fxY3C 㡐vf\K&m lv^8OS8.i֦G wa̹.慿0%#*[XT>9){6n~ BSPfZbBQܡv'JO`mFHgXT#*ZoKzkv@:fnb@pZx.\ ؁Pڕ Ăqm[]}zVFi뎮o#ԯ2@0MuCw]q85lyzb s~PP!4]oGmDOONb/l5~rk6zU' h |.Wdr$FA>8Q> 6^=k6n:laDY^=]0LKXv2F DEMnM_Z?TC|TKYR!,p a+` mxJ`ad_24Rep ~2: PKM,#2<zJEplOGls$,ՎMQOVvz`eIZ.gxV#v1c}ûO'я@~ ?`L,d%>D_0HsDY{B zsnQ@h!_,wutn31g n[g]-pO u"ø; H(ǝ4n9Scϴ /MB]X mM$|"i@<YR &(, vؒsw2Un>[X7G_9cJD9fQp)NeI (!Opg5y+z͗|E\SDYԧr>2܋"`q^]m}9U|TL0:g2Qe)\7Dka `2 vyạe F \KzZ>l$} L٠Bթj8ݧӐX r!G~ a>xҙj7ǯzadUHV"ec" qQ--B,)F-`P OsY7fvpVYtl כeY r0|tN>6o!,}υ2]gxW-"o3`˶FŻg+X=% u2C^7x%ɁzPY,> tN 7'<]f#Ljhbd{"u_a]Y99xijA:,:J:] \C8duܙSHwA=6EPM9MrD #eu8zn#8YiPTTZ)'J:xh)p h?(n[}I5ړ挀/P4}i/#uEyꢩmW$ĩHgaWf랹/^"`HΎ 9 L pgrQBK71YK_M_ #yñܫϊcߍN _0fcA^PS>MBc&VCwCfVoo{~[| N0"- n(?rqH u'죜Q`.^* ,51Kx\ɕ$4UWq0KvԂ$DېN8<po_4Ҽ2+{B+nȧT+?at4Qq(iؓӫ}vz&*\EI"a@(J7#CDx-)2ҳa]mA mT(Ǚ$hÖd2If+889.G$2ҋmb57۹@4b"~aCo5/G4 Čceޯ\Iؿ22 FPUQĔ& ^ 37S!A uUb[̻|lI2EcW+Ps=isjVVr{7 :]݅;!\k͂8F.^@?L&aJ& k{4._$*ʇ44A×=N^l,ŷ%an+êLK OUDPBl*EVI\F{)- r9ɹQ X6gP_ct.7!% Đ6Tg3nX, ϠER9Gt9)- SA Yc4`#NortNjB#{FFS^e',,y-MBNd_T] p\Bj/"ZKP BjΑsǢ|@.ewȍyl(CgR?!朩d@t~E2ǩ(B_;~.*pB1fڶpgRvHfyup 9-Ysj.s+DeF!Q6P9f ̛#S̒zLER֭_OZqS"F򺣿\Wkgv+]烧fgڋxbzYX8A 6f2 '2,"} Uweo"N_C߼A}qL/Rp/ :wFvGT```wxub95A>? 3 lT=愳Q1x{;J=G7/W O, >duoqy"ur.y=ӝ-7W$V0F'lX'wc~y)OSKrn5} ~hveР7Cm1 $Q{셽!{p? VG.L[҆D4n&vn¶rNA9 z0A-ݞHr}8emRB=_cd!}]$Π5D&[4?W ˲t"V=ЏG`©kY~!`D  Dl2ZMQ<=R DGm=Ki1&BvG}%8MsEXϮn>{ fߋJ~'#Jc0\L]pi:dZr蟉ivޜQzOl'SQn=1?{5;SS}4GXeOv լ!⁩Â0`z !p/lED9%hzjP.{E b!NRIvɑִR^8-Ƅ 6k%bO}bm}au[O(e LĴҏ {4ӠN}2I4[O*`mq7LL84b]s#Bʀ fX^+1"\ lz#.&i[ȹZj "?`'"|=9],^gq6VK5 vP~]/orAۖ#Dsۈ9!'VTHǰLf#~o- PGy &0(8Gffڥ?*muПE7[EEAҶ^ܹFITrQ;EB6J;W=D0:>Y:w'j)A8~zb`Zd}[xq޳%pӂΩЎiMH%KWk륐힯#Ml*Aw>R鱄;A;Q34ݨo[׵J(D;X^tq4.%M ViOay8>on;[(lbAik*GpAu mz6.lSX{2CbSmD>IK|c 67<$0Ւ]YaqAjY¦W3EC1F4_UvZm5Kߵ,Ԓ- kҡ-Ak Z&`\w)yAԳaac׌4ԧWbz4*6XׅlrH >䷉?2.i]AvT6jV(Z0>{ErJthEٱaJn:ֻރ`6B ɟoB, bht$-lN:݆ G%/jFdn2EeLT::544}qZ7%ु ßtȽcNX{K|<$W :ffZ+]RUVc}a{ADp$j=D/nbm=' cB0<>-E[ *&4 +DÞY,WANi.ahw']YZ-XIn6BP[bo6V4pIq]CkL4.d2Uߑ%AYdY TBuT4ZzI؉^uAehEMy([kImVTP XSa_BOD92e-69ٓmC"Ⱦ[=]dp\Ifb݅›<"Ip{o_vE^)\z5J|?:O+^aIT4 N] }t_P#oҒI7 Xӌy۹T6i)k{(H53}iG$ק=שtVeWelj4˚ZhnPRɧ=OȕU l}! K0-wƇgUdW8I9 }+065lnBl\d LTi.RǗF6%taIs6ύ]3ibNWލ5^vLjnά%'}ͻ_fw8PJb!聠W6%bٲy'53uZ4eꈊX~Z- 4bI]OhMq+3GܹeZtEs8 6V{VWSEjhЉy[95a T.:*1E8b $oy9yC֧1>i>1:>x菊}25 yGҡg{#&8@[c0 p˻JB 7$LJuG݀Bp3)?3TMxbWl5:i- mjYcEIXs?qSN)Y]! <~ ] gH[:ix)қYşGF:Дr{ 欌Fd&,Q%Һ @3U+C#}0(m"9yis (`[K4/lD[|]_l,1{%qkeL~.uhpǎ^9̴)sƫ/4,xJ \1El^S^^cM؀E{ڀ(˕(j^I Q)EOr5Yc3";"=FF\ewTiqPJU1f%U>Nٓ덧9$hnNrvcvl=8nҜWWT0ijrE~UƘEM2CmLvaҍ4ŧ OfY🅈 aGf1d$3C^s;56hk1ETm~DMtI5K/4^ Q?V #нQ@C% ˀ<\ Z#H\bHE7hQ^K%\?;'}xFfl`D"V08sW IipťLvQ" ^҃CLu+Wav\5 Ȗ"AyDf(-s ToyEiщX:Kl½N5 [.bkl#G_IgvZ Xp +L ӲV<’22b1NuhYz*t1T&|NXgtE,pQNM[bzpIhk;u$C{]D6uux Ag4G0!ΎsB'Zo rJ{ۀdzhE Fkx&Y;IAZ^>$V9X޷hw q=UŔy rN^(7 ~O_PFM&ҍI\ fݚ-`SS>)W$S >B2_6 (Cck9d;`r=c7b-5###$. jZ҃OӮg ㊗>}yG1,yw4l *Rĥ^22lP"B1FG.CѸVh7G ~t/ z+QUƧb>O- ˩)nWM-;Ƃ~t}o0G@(fŔS[f !;͆ꋟ#|'dí)G,AmbBx$M ij W3Mkˍ+Fd*w3ޜyٍOjĬt *YM3үa:J@>Ҍ**KbQ,/ Ӹ8C6iH"uD $QulEJ;DڰS-wSǢ;I=Aُ6*:ׇ}W%V@U$SB7qEm5l[WZ:qx‰ӟB{&Jfo}*~v0IcJɥ 2ۅ63`J) uab&+Jocp rU4~+?ap ReцYUkYBvSzW&MD.P;jpX0XvuݧV`߭9P*&|hP&bAbn4ޭȞX !SY9p0խKKۃ=Ñ&oΘS9Ḧ́iU%vV RigiZv)}q/6V],DF@p. iQ.jչ,:*%^lv6G@B!nx_MN|24l=HCsy,-8/ę%S uzMN0k&J?Zb}G=LF`ssFB>FZ5xﱦd9:sVi(rp*c6# =1sL"iR,Q`zQC=ȍ`eA-2s<(Jªxx2;o*u_:{\fȉ}{$oU@wyp՝NlZT3L0Ftt^y Lԏh.θopJUwbXzɸwbH+2BcDY1¥\'v$dWHZ:olމ\z.(#HuAZv&ؚٔ9'd?t;deŷ/65/LjEd](~Tб>)0ϙF1==9^R]Z[Eo=0 <#fI9ZUg-=%+K¶4 `]D_p#p#HkoS@;?t:$YHG_[VvT&/!kyX^ LL΁faR " .rm^{6l?i$"!ȵo|4k~#~BoZ ʦv# Xx${xvP,VD8ɑdP9np (k R}J8R0/{(q@#Ju!MμVMüOL$8vNvf&ZNasf_`"l b(yN#qee w&72vTt+VEFgKQ+4ͪAjt<`-ͭhkuqi|&EoFB=X @;ѤiDiaԤ\WK$]+&ȊtKs\S/0iV{K|<[ 43@y%lk!  4..fB2wzEar.8Z+6aƱڌ@&'&g*h#SLMk4cPg}xaӲeK[:3G1W@|gi<~&:muvpaʑB7SPs@҉a P_r)ޏY7+\-:\yow Cg#&4(Uʔfs O-צ{ :4,%js|뷤reHq$-(ѓsmCrH/UF)>c^#Medx E^Xg^n S^lpt*-4R6$5X +I[ؤ (zάV'? ^GsmZlrMa~s xt)~'ynj\:L vr\uː/%ZTZ~I3sta6ioجn.1-UEw:аL-h7n>2٠EC!]ӁH5`( g_GyW}0e]X LD$@pHUB|cڵH9+CKҞ/Bw9x+9 .Aa;*@y†:(}riFe`TKp$}GU΢Ǜl /-$j;і ZQys|;ÌY'&aQsaDXܳWpa[U.sf,JUqy/Nh=j3X 1G#AyJOхm['Lz ]]`ԢdFν~)C *e]e0lޡː܈]pB;H}6qh s(ѐd9Z ڛ<寯ɛ4k`ڹ#i%iM1GQ[hĮFzi㖩7HBD+gQ"8 k59gn9,n}jB, ;[#`POHu0<4[rĄgez؟Q2ܕɚ ZF S煰&BB7CPgYf;-~ =-H Qs88q F}$tx\t8ks Uȅ ÜkL;=4QT* 7B:@cIHZ#:'Z7f 'Chp WesQyj}ESGG0TϤ$8/o7VWIy/NHM$x ]B *DWBM8d{w@Yq]izY:E%__5g?Aj7Oe>51>RmLįQF8;"1%E فvp}Fyިȱ8{?>,1]]_+|;T|ܟsR$ 4 RM3mrrToHEi##ozVhl@EH8m4^x0rJ&x/" )ޔذo 뒵+q⊨ۡO*~[#5v}TU]@D;A{rl Pg$LUGm~Zf7jXVgF;ڽb5aZ3vhFx$n]ӏS%B{K\>7Y ̠@Y.ꉅǗDD Ȇ ୚$ʴL~Z/4"-X Lg637$8 Iԕ B=3AǑ w|% [ֳI %47xp$BDcj<¥Aeeo,.ڏ>v~%Ţ, Kqm L7̔HsTwס7`oWc}U05Xͥ {[Q96A~'AH}&Unؙ*/ 2t|Ya`̫vWJz? AzwuĪ_9IzȘ!p(;_ |ZSeuk7HO ^WB6u˱^c&H:]Z3+ X~1<( H"=P)Wں<5"z']?}$Jk2;8G[rJSzj?3Ğ p>mÃvs ߌ6x_j.1D76llp< ]3؝3z?oc戰[(㥮F_Sb/8ĵ6e}y 9Mrn"޻%?-Qs>_e!J*dRpoYF(C/Wb]Jv%tW"zǾ)d$e6xymxYO܁o*:z3;1‚Qf6+iDbSSxN rf !%,$V*_P 3]zB`g4TW6"+\TDmPHW,+[9 (^ hQ\ TP/̀Jx>[(4jy,~JlObD>?02@ K]Kfr@4dR_8&]}hU4[MDz6Ό;;!1 Qޘg=!<+ݩAzĬJ xv:)^ Z-\]hT="_[~y]MKѠl9hqA!Bwq?Ϊ_fě,vCP)ufPrH.+FzyAx -*4|i÷ܥć3#).%OZKmq<<8W'>WŸ+c>TH.VUC4qφ8%rܠu5Ꟊ8j¾<:kn&գT{m?Vhm1yi*F|@bm9s"_U<Q P?$}u܆_*rm'|+^?*j>D1}rbd,%LHK*!~l 1{*豋T1%ܑ"hWXRu.-;R( fjffO׸9,Ʀ B9O^t_ۂaj.G41碳.Ylz|KС 5HM@|ڲn4җ̺׍}! ȚΏ5\EkU'Ŀ`lʕwy<Ѧ%:L|Ey֝܉;4J~OY!\Xc}:%p o> }˕a@Գw '?QJ<Ϟ r13v oUVAMylP^xϋQ嚸vu"O O(Oo_X`֭ mpiqX?9z*=O QZCi%c5VS7pqB;Mu$E Jc༕[6!OĤ/%JSr̛)G(EX5zMV%D5mF!PrO>N#no}g?I1gc?D4>6դhzʆݳ~ҏ[֠Rȳ/׾Rbhos?f295*x_,ng$rY$@Idd5"@ph,yl2#՘Z֊@vNVO5'C6߿.TͩD sLK,rudЋ:puObh v+-emSWD\wkʯƤB&b2l8xkIJ,o<$2iaWded]C={#.IdVOTvS_FpGoeT>¦bGU0 fc'|Z666o=1"~',uF_.aqW&K;CP2 )j^` ly%MbH$MYYy rCIeHö6ȻY41mE=F.>6 X+sZPG]ep^#.+:iS (MlN{'g RA޳A6Λt4^Km7$A1KNٌf΄]5ȍ{u)I¢hX4Xtka~m‘q~v_qΰ4[I}>p/YN]|Tڼ]X 7t' -?#])Td1/?n|C/vMbq O KDٜ}P\4}"63c':"!X9ֲ{#KTە+}Vq,/)Is'{8' C@ɣ"֟X֦u %U a+ipjq?q(' 1Mb:/ =`LX*%PmЇcPxd)PsT&s'NZ1pVX9Ǫ Hu0!wi;^D|OR}RXd1[@?+؈Kxq/yʴ+'Eo ̯fN @!]\`4_+5XcιL"׈Fg<߯ht ච AsP-_˳VrbrMĐz.fF ."l ]>!!# p;eTy8|+^~FL\9@&LyʓC3Qc7n)/ 3©wG Z5:~` =xo‰4Fpa[GW#BPE5y@蛉Hj &p1<>F5Pҕ ^r`aSmpEv 4b-l._'K/Y%<7e?qB=Ґ-Hb5-Uڏo EmF'2Vcr覦#I`cM@(6= )OJi-(VŜ$ğ'.ֿ]yTKqO@ Dϔ&a7kɌthr#CLx]ppZ@UiҤ\6WqoA-)nQζ9I_79`FtΒ^j*UW[B;/W)̮(W$YCSVsc/N.p A8Jm?l5uWMtMACX(&P:MDjЖyK$'YٖB 釘gˡ6_QoKr<`vLbWNΟBܜ.?%MSBdAA Vu!ps@(%?8V b(ֽ{c) a=udRV5Nl~⇭:-R?:] x WuYlZ $;XOʞ=cHiAHBR-uՌ~2 `o52غ ʔ7,斌*y~Ej,0>egE>"(y%sL ]lygݢ ލQ''z}(AZ/#i8XmwmK9xs[WR|UؿײYDAo5Xt-1t+hǤP8gY,R\073:ܒ\.d 3!uPk?R-ڮ腠ó1mt!Ol3i=sFHڗeuL% ZS 4.rB4rV?!\- Yaz4ru+ϧKVO8efDht~/_-uXjiJ,2"b}+ ֠~Y@ɚkD6oIM ڳ@;?o* % n$- !'BF~}7Y.M@|> ~S2uWKڻOkwSqC\him d7Ei0>ujN.ž`Г>,֩biXyySQ DF,_12g=E}׺Z^f~ǂۖC2,OVrSbfcK]mw%Έ߯oX%VTd̙;S2ۖ)HhsA8.]+USզEۄng@ǒO5'!ǗÂ|{ J<$cf\yaUkE!|j,T 9.dzOp]vьVț\%6bRh7B9m*zGkPC$`QKٹ:6Eun8ڠRPŗ"zT[:So8Mlղ ,.5'G*xM@Ӝk|WE }ڷ_֡tY  XޛP)/ Kv·!O*F !8xOiz,uN(6xkXܪp{Gk! Д䖭Œg2aa'ْ.t+XqV`bQA,kJت[ֲqBb;1StM,`+2 LZL ϡCWЦ/TCH5 % Od 55J C 8WÃBc ˡ,K}»Y,RBd =a8/َƣiBq-qHRQ &)o܅7~%:!몵m:~%ʩo,mF,pzpG2H&֨A@_ü?T y9tq6yUL>pd& YP ^ F X ::[ҟ8Iᐹ*@QkPӌP%&?9Ce[j@#ߨj]\/X#5j3䯧PtOWzsy}~dqcQ8ȹ[nW󁾏hևSZga .N! kDJ Yjv@Fq&S҄s!w켼1)M` !ióW;3 V}L:zy\ٙg Nݓ`JMy )0/Iw7 a ?us-k YE09/iS.s'dC4st&d?X:|~Ϗ %(1Ki j nIx\ݞy3,t|йY*V)wg*M,GGDt,Ȯ[XA֫:ڡ5&׸(MSVƗV2A,d,܇F/LPJiZ+ʲ}B8 \R}I̶N.QcDﶎ%&Eb Nkk ػ2\il13K58zMJh "SO7*6' {C2_p19eZ 'pTX]*urWݴ$]2!mPТ C v@ۓQ +n.&ER41"Dhєvq2?U"-ֺxBThz|<):FpDa2նoVqbq+P=ոZ/xH{ "glsbH׶V}tJʁgW+e+f% ajU2x弙)5VџPtdcCdR9af3'c~l4`MRU5;W ;]Ƚ0}Cϔ#햏kde+Mt&q+x5?j 0Ol³2[GA]ŀQ=De h6c'":/ E|>FLڤCzmH[eؽ_EFtguתG0C~((pFHw/:Nb=ϜR]`6[^Z4x!#aO$i4'O#cIxX,Rm8](dz̛vtBѭj{ţ(<У֝7fxneWB` su8Ni3[j9 G ,f%HyP1ǏDßO_U~:  ,ћx!c$Tp|r-wLGRV:M$ӭdH[ |L8'@v~܈~w\8<D=[[(2B3Jxh&ءcQjsPI J|ypGKS Tl}:ܺTpk4IvΘip3KrIXj<.?BK ەv)h? 7EG&ػ6Cf>[[wfםUb>€q8-,QEUoD x"P@)= _r]h8IM|͒tC4݀~̂ֆ OnUG *XjDIpu=/\ac2'\6ќ;/8[}`XunnAvMcWj?YG1+D|a*pؾP?ApuK,QVdI9oDR@\%P#ϧ XEb%+CfM=ܗ R`s*QC<] )E Ӌ+vUc4# %G9;?|^!#88Hk!hB_$|L%LpyYsVG|qx4gE 3 7_#km5%Ja|2K0! n1+(7l&۳  ޒZ]$ZJ 2K2wԟ+T^vIQaymcyTa7ĩ8kk1`HO&Tn radUu&ݘПg-8r :d4%Tz|u|q.;4r';Ķru.h6 -~+|^ AY<XQ=Ev񱹅Vv;Έzt>67FDԩz}͇UR-xa+!kZ( w".߾6]Ь0J*!|ebuv ^Q k~N۬cmF FCR3'G"BIgbC[U})Zr [$A$nMdlҚ1{fX{$ ?v}ω^v}A[0 &l.투lf^ /wNRsg/ʹ*: |Ue"kE)/(oAScEXhDrשc"z:E0۲t%rS#LUte&&ѧ' Ge;% ^7!iOvCztSyj١Y5 zf[ qvbDXǩT#qSbۅ˗v+窈TȀ\! "t*Q'r0SsM1?*\g];®ətyg?sj9#[ϜkwO" lh)mF ,ۢ J1<"6O] *bu*"Nя"5O~ɖiLL ISvf"4 #4 9ÆM6E .#hG\W6U(`]١s\D,yy2#e{趞U{u"L| j*^agFS|1bD,hfNCb@tvE41kIaqm$fU=h(mr8gYϥrZBY pls֏[vM 2~d> (h$=s<*Uu";"ܽFtr;~ [󒵆||ԗ%Lі,zϥYYU7 0UnR׭z' z8Nc?+\Er?I7aefodS 4QЯ23U/1s;8mFA_]tc)׻f{aogƀKbTN&_65E`/V|r\m/0紽lAn 䆬EJXR,6][i+mH37l_ M(A'UqǪzjw\kc  \E$lp6he U!oª"7Ȗ 9Y,MܲWX9mlNʿUnlc8);>47Yhda897PEu(+ߠCg"NZݧaa~0%Vj+ԃ5H*L1t^;O=nuq]F&LbO>b}OP&VѓU H5 x+~Z!Ta(~@8=̺JWrKjt:x^%"5aNTO8IA3'!9AfSdpXcvS?i6/yҡ k`7FC@q6qNHi]PA嗔o^et{:V"j*W/&)wO$ *H cիe( fzt5 ~unѹ.: VyLG B#,\FvdA%XdܼITGlQO$376؊$gӴ=5Kjj7%lI e,YC~`D@#kjRq&-Y^ ^510Kg/.)1Tz 'UJT)>'8o|h @$C$b]t~?Ux/+FΞCy۱ h}- [߭Awދ=˖寏/bX{#ppҾc+e}S_dx_r& c'1bԆ#_;v}'5'!^y7'E %'dH_r ݛrۙGjcHi2ת蛌:aZs$ #9NZ&Ւ9U悥wTz.9T +i:;#w| 0;vfy*͵w$Es:V$]ZɃQm1c{yGc׋q&\`^{#+.I~ABV'iϵnƖH}TJr-(uy@!Y*,AɪtmYyz74ȓZ%Ωw&h{--/'h"M^)f)݂;ɱtR ϦRoJ5u d'Ab m ) @M"Z.A.5\3ij Eɒ?@|Rh~p%> 2 X8vMϾH˵+!2 "FDR _0I.khbvKȪ㊲+]XU3W>w02M߿M{`nmsg3[@ɋ/w}ܑ[ON-ǥ:JW9wl/tcZj&} . ,- }!ȵ Vk⫘/2\ YBxJN)grT,s/ ۯ+v~ҹxHuu AM^Wɡ.2P|̈ K>ۂY R rnŏ>I{ sOG ʅ8/0Z̷4P7rm^_]e&){=\ so h2 8XȀ_(B[vbmzCSk#Eq&;MMR=y"46 Yf1{n "0RJvY*ܫ&Id&A;[ W}t΋Q,nB1%h 8b[D ǗZTA!5fk##Qe{FϠT3>^͇g\Ȭ׸";feVuwUdStRY`O'pS\tU9bDՎ g4\~WUy[Y٭əs茜wSH5(˙z)^o’+N$c2췹tDl(kH %bM:7c&b!n!L('Q' rq؄+6hl׬bN j$9$yKxa+,*N: ml여[`#HT&/;7K 3۴L5uGVm%~'abNJQqRUx|y!7NӽbRl`FۨJ64MgKr2tN2|L´(2P!]!Rs{NZ0'ͥ& Org/a{qrACZj_ <#4kz[n~l`@= (6냾ޒ1n*0oM_,bc1n|b2F̞Tpc&TԯĶ_N{7a<YwD_KNoZ'w󢓌o#.+{E(5: wKDŽ)H`:~[\\UkWu*v;-hI--Mgwhچ-MK8Lh,1Py)>aRsN 7Cr_#S3b @i2+36H/{ v-fC.)Mt-<;> UnڹA R'h籢Q?]y,e'+h8M4~3 V(č3i]ާ-{F7}VGlQiGT9p跎昘ū*mUS? y/*/Ze}'] fat>IKaFkR]nY4*b[:*[٭~uXwykOTwegF!<Ր ֪Vi\CT7X{_|;y3̶duD%Lr&[}y\5Y?k;A14- -*aimC~/I;gY2xC*elWQ^6bD0jC. }c*H|c}bǠ :<9-lcbQ0XQ^,qUaw, 7v^NBJCî^`}TAy.?c⁌ڈP (cHq7 &bh_)sxP @w' f 3y]\k@Pv㟧le5o&G4p<ң/ FA!j{:0Dn mHեJ؟_Z<҆,Z0Ր354 ߏD^(N"&E|rzi|>\pu+-BK0c,J.G5;qo1^U8ndRӕ5L:Fm|?y2;~}U;%|,ƮWA<zSq 'f'15ՈB#?p%*< 5eW}x{,UWe!i>>}nx,rM4\a*Ybm'H>EOoS;uNi3PÇ kU工;+dۧ5rZo}Վ0>^eO[)w>5T|K* P9%Rm*u]4eXsly XTxwkM0jt>H#z~5Cf?wD#֠ŕ @>m7lܙɉ#΅J4`;1pUo`KC)yʴ&—= dr) tѻ%i #Aj5JQ^~}uV_ tU۳A(V{tnު%a=sH)8T|r#+Rݪq򺏴$Ƶ'd1Q˷=š77@$7I܋BXxF,J([z-JG%;Ep?w%1*}lkEyl; ~skqZp'33Tg_eL#;)NICG5-IhcڞIPc|A͚㻥+SaJ-ϦM=)^v<_mRV oYzTD(h|^y 8pU_ U0tiCDaem#1&Rme7Y:ЭPeh(m$ 8qr}}(9GF{nsq"B5e^yg3!0sX:U,Q%3LW8|QBZyTd Փ Pe М8wMQ]⍢\ `gnݰ4W%7ezZ"/~w"@Ď44 \K#=%& GDg Գ\_'GƸqVwn^v'h"vi E4 $5,uoÇ[PHyc7t _M#ֵ9&Qi6$iUYiPXT%wXB6yW.=gYSQUhtR𖟈` Y[:7LX ui#L@H _aȅ?S[ p/#M-䌭1 ,G^%<,n{4[9, Їsoۚ6WG#hَjt{=Ct_oT"Qqw5Yʆ݄wwUY΂% kdir0+C+|\|EJ2>~Na:1ھǔeұm!!4~(wGTz qzT*LLU_N?Lrms-0\F׾+`DԿKH96Af{dۜ几˔ЊieUwt85TF qɯh&>;ࢰDn A'W팸3tԩDHl;z@χ>,dzT$AAos5}ذԁb [ʚGcEMܙeiRT'h¨B t7mfG4'Xݛ-_Ȝ }":KȄ7 NT9%wiCh?={鴌Waq+ܪjLfZ:hkٕ:/PeXahQ9<-罵XIļJ.0r͒hylxZ+u[=nN%Qo۴Y?[{#]t2d G)IW`P!^@aBMxv0u f\ˮVr/7J/^DZ#rرVH+s|IvoU1#wSYBNYiyrSjC1)v2]A4Ԛ\VmMټ8C B)Auy-D֝ sOĜ7r#Jd+p[0w!o$TBe.1K =n* W9C9*Fe}ǔ o{cn'Xgi?ch/i&4TP\` @،aס⸥C ௲jZmO{8o*PH%mx=ܧ So7j+QSԈruCHv>}ʰ5'[NGS{zB:v,9j`Y C e cbIz\ 8]A*Y" BDⲦ_yl2V~7G4I\jb@,Ջ7/7#Y/"9Ң {Q~EH Jd($]LNǫ^'73C`e}6Bͬ=ƍ-g˘( SNXMlW-F]s}Qwۣ*yGc)  EYi 8R»k >(#!ϢK-+?m2.!=vgGAB5붣v%sCR(ę 'sKVR]`ϔJǥ&J8hp!&h3ۢv&o4mvՀqݭ ©BF-G'c͉GI:!q4Ez2׉%:c+>ɹdi #نl1@hq)ӂxHY G)p#wC;IiDEkwiέw=[dtK5#2~|wn+4{rlbh" 6$>AZp$ KH?-t][B|V}I_Bhp mT.`_PTiJ:տ]-$e~e{3m]%ʑF2\f -bZQ#d@UyX=*zD,7ֹ<4,_*i75KCA?Uz) ț% y؃)~ g<,;e{\Tl!ᬟ UʼC^(x6$&szAʜĩ#4fZi][5PbV w'i8Cx1xXHG'mh+2|#g"wr'mj-Xwtv2L9̂= j s )MiltRFNN: oL׬_v+&: d#$o,:SPÑ}mc(>i_j]*rWZ\C%(j$`\-~(u%k+̞ZreC?Yng@|E-GfM`W46[11tjܗ.)e Gˢ~Dc5#^L].3;wf\^&yγ6/yu.DQTu`h”O7zO- Rj)ed".zgTlhv!sixJA_1Gd D-~Mt9A؇3#eуW+C4So^7lȍWEQ3;N[&F[$^O5Ms~d#<6<]瓴Wq9, Rss qQ`Snq2wCI\{gM\F. LjWp߼=,w6sC8!GO* kld8ލ|8j: L*S"SP'OG'\y!@9+ MwvmtIhUٰӇqzaAQbn&BtT= kRW)!97^uh$vK^-z{SH b )C$}oۖG2 \ӵtb/S+谀c TIy<|\X&9:c=~NT>6Z7kWrQb*3$o8헜8I(/vžWkp*U c戵8ƅ\U݆Ug2H}15|~ =/6\]MpBXQ MVC#!d6oOWG.bD7lov< ^ n'σ!K֟׉^EREq:@x;H40e2yJC[^܁U/ S6I;NHyɐpZVWjNV3PiR2`U=0aquE{bsp~ļR99$iOu>{"ogj= u{kR:kl4Db縠 cuA%T8%zͿ%A›~S]Z? E&eV o8:Ƨ1{?=`<+O`zkJK Vx8i$p+5ċP;j4?ux:|, oSx:u4S vIdB n38+<$َPZ;`P<3jUeƩԃqn3J}vIYc @3UsVl`M} a8v]GC׫Iw 5YY0N 0Sᧃ)bC5E6w)8bj5pDs-)z@#L"}yKBj(ޟ^s.83I;>[M;xd6k&sa!W/ v;O+C"f+kؘXSk`GpI2"O]$Ӕ+FV1ךS=p !8)v~_m84x}۪H@l'}d |&06bo:0rb#5q SdSܴU|@-XOKj+Xs1R9p~, kC*gEPh7AYIPVs+:>(mh0~;ü&v: |yw ^"b𜮇`1\ʱgXmu.I0H$Kwͻ}]U-&g-~Pа=!C1P(ӜF rWĖL*Z⎫y q禑bnOXВ[}[gq_ 3/#}dhpZ=jU®lYb}v G g. Y~tIT^}×SNzbfvI#5uJPZ<>JLsLJ\-3¢1ѹLuH?&DӒKdUFd"LbVClC21Qd/n+i5/n8*,\Q+p;=Ҿnpu|R'Q渨Pz3wWg'Bi{b?>pBɂt _{,`ŝmˌO4f=AB`H/IbVRGm-^$L.Я +l2<Ŝ=f^-6Idml-h66!fI0ʔF IX#g3( ҫ`%"H @KWeh4x" {LGq 2\.v_$/z$H*4ٻ71 WἼH!!wLO % Yx4 'K̚UA%WF؂e{ÙEcfg(ݷ+ug9* E$,5b$\g:sLŝ*8he Vo:OZx!>W#O636n1}Q;_$mžUuYIDt߂wQݷ9 8 3tެ-9Ym˳FtjIF c[z ?C|E=%AUΫ4( Ǵe'Ӿ((ȵߓB(MÊ$UiU$L#ZeӋ0JOíנO Dçj/C&̒3 I}O3Qm.OY/`h9Yl.RƱP. #K5tÒ~i PPx]-Ў֢m/Jv.GG%@*X E?u[TUQ?e=z`}oFVXUkUBzaRGT$}T\TF;͋M$EҭG2GdyQ²~YGn8fa˲⤩ڣ .Oǧrݮ_@)TP+0º򰳸ΐ>|3cq쒧@^-|<(GA`xق{w(;f,] I[l3k[|0HePԃowPn[pOT nE$<4oC9ܽ]5~ dx_"mX%Yg#2.XH6񛚭P6*5M^e|۴zVOGݻUEJlyUBN;NN#jQ'en{Ƭ<"牾Q8&f=TZt 4)R,o|ϊlmaૡ Tpi㛻_qo죍IVLCIJT'bd6T(04YI^B -Oamvcü2!yC(Dh~vsb;Xa0:8Cz-t#,ct0nB=înE8ATzn̚tK:[ļw{ʯUβKļćQn؜g)"heh>:0{t7UrS eZ)c h nqI]HTt%5VGA.Sne9Thp91K6|rWJƆn lN}^Py.>R#ӆhQ?LiHFÒŬV6G11l)@4C ʔMxZ!kѨz,N 1"2=^ lP75] Ճ&TiDLoG:N% ucM{6!0tt HcXTN8bUfR5bab8 q/hޛ)]T1ܲ 0EmQHC.+hze76.-]Uvn-!S挂6Ҡi O|2憭TAO<Üψ[cX S| o3&d\YzfA!Z,8)|s%vM__w^N@GE7{=i?qc&w \L76NA58(Iq[},vX%M"=Qψh}sp[΄k`'N+